-
Notifications
You must be signed in to change notification settings - Fork 0
/
rollup.config.js
38 lines (36 loc) · 1.09 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
// rollup.config.js
import terser from '@rollup/plugin-terser'
const inputs = ['index']
const formats = ['esm', 'cjs']
export default inputs.reduce((acc, input) => {
acc.push(
...formats.map((format) => ({
input: `src/${input}.js`,
output: {
name: 'store',
file: `dist/${input !== 'index' ? `${input}/index` : input}${
format === 'umd' ? '' : `.${format === 'esm' ? 'js' : `${format}`}`
}`,
format,
},
external: ['@marcm/shallow-equal', 'react'],
plugins: [
terser({
module: true,
compress: {
defaults: false,
module: true,
join_vars: true,
},
mangle: true,
output: {
beautify: false
},
parse: {},
rename: {}
})
],
}))
)
return acc
}, [])