-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrollup.config.js
75 lines (68 loc) · 1.52 KB
/
rollup.config.js
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
import typescript from '@rollup/plugin-typescript';
import commonjs from '@rollup/plugin-commonjs';
import nodeResolve from '@rollup/plugin-node-resolve';
import { terser } from 'rollup-plugin-terser';
import tweakDefault from './build/rollup-plugin.js';
let production = (process.env.target || 'min') === 'min';
function getConfig(target = 'min') {
let config = {
min: {
output: {
file: 'dist/pcit.min.js',
name: 'PCIT',
format: 'umd',
exports: 'named',
},
},
umd: {
output: {
file: 'dist/pcit.js',
name: 'PCIT',
format: 'umd',
exports: 'named',
// sourcemap: 'inline',
},
},
cjs: {
output: {
file: 'dist/pcit.common.js',
format: 'cjs',
exports: 'named',
// sourcemap: 'inline',
},
},
esm: {
output: {
file: 'dist/pcit.esm.js',
format: 'esm',
// sourcemap: 'inline',
},
},
};
return config[target];
}
let config = {
input: 'src/index.ts',
output: {
file: 'dist/pcit.min.js',
name: 'PCIT',
format: 'iife', // amd, cjs, esm, iife, umd
},
plugins: [
tweakDefault(),
typescript({
tsconfig: false,
lib: ["esnext", "dom"], target: "es6"
}),
production && terser(),
nodeResolve({
mainFields: ['module', 'main'],
}),
commonjs({
include: 'node_modules/**',
}),
],
};
let { output } = getConfig(process.env.target);
config.output = output;
export default config;