-
Notifications
You must be signed in to change notification settings - Fork 33
/
Copy pathrollup.main.config.js
41 lines (37 loc) · 981 Bytes
/
rollup.main.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
import babel from '@rollup/plugin-babel';
import nodeResolve from '@rollup/plugin-node-resolve';
import replace from '@rollup/plugin-replace';
import Visualizer from 'rollup-plugin-visualizer';
const entries = {
min: 'lib/index.js',
umd: 'lib/index.js',
};
const dests = {
min: 'dist/diffhtml.min.js',
umd: 'dist/diffhtml.js',
};
const { NODE_ENV = 'umd' } = process.env;
export default {
input: entries[NODE_ENV],
context: 'this',
output: [{
file: dests[NODE_ENV],
format: 'umd',
exports: 'named',
name: 'diff',
sourcemap: false,
}],
plugins: [
NODE_ENV === 'min' && replace({
'internalProcess.env.NODE_ENV': JSON.stringify('production'),
preventAssignment: true,
}),
babel({
comments: false,
babelHelpers: 'runtime',
skipPreflightCheck: true,
}),
nodeResolve({ mainFields: ['module'] }),
NODE_ENV === 'min' && Visualizer.default({ filename: './dist/main-build-size.html' }),
],
};