-
-
Notifications
You must be signed in to change notification settings - Fork 1
/
rollup.config.mjs
52 lines (49 loc) · 1 KB
/
rollup.config.mjs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import pkg from "./package.json" assert {type: "json"};
import ts from "rollup-plugin-ts";
import {builtinModules} from "module";
const SHARED_OPTIONS = {
plugins: [
ts({
tsconfig: "tsconfig.build.json"
})
],
external: [...builtinModules, ...Object.keys(pkg.dependencies ?? {}), ...Object.keys(pkg.devDependencies ?? {}), ...Object.keys(pkg.peerDependencies ?? {})]
};
const SHARED_OUTPUT_OPTIONS = {
sourcemap: true,
hoistTransitiveImports: false,
generatedCode: "es2015",
compact: false,
minifyInternalExports: false
};
export default [
{
input: "src/index.ts",
preserveEntrySignatures: true,
output: [
{
file: pkg.exports.require,
format: "cjs",
...SHARED_OUTPUT_OPTIONS
},
{
file: pkg.exports.import,
format: "esm",
...SHARED_OUTPUT_OPTIONS
}
],
...SHARED_OPTIONS
},
{
input: "src/cli/index.ts",
preserveEntrySignatures: true,
output: [
{
dir: "./dist/cli",
format: "esm",
...SHARED_OUTPUT_OPTIONS
}
],
...SHARED_OPTIONS
}
];