forked from preactjs/preact-compat
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathrollup.config.js
52 lines (49 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
39
40
41
42
43
44
45
46
47
48
49
50
51
52
import path from 'path';
import fs from 'fs';
import memory from 'rollup-plugin-memory';
import babel from 'rollup-plugin-babel';
import nodeResolve from 'rollup-plugin-node-resolve';
import commonjs from 'rollup-plugin-commonjs';
let pkg = JSON.parse(fs.readFileSync('./package.json'));
let external = Object.keys(pkg.peerDependencies || {}).concat(Object.keys(pkg.dependencies || {}));
export default {
entry: 'src/index.js',
dest: pkg.main,
sourceMap: path.resolve(pkg.main),
moduleName: pkg.amdName,
format: 'umd',
exports: 'default',
useStrict: false,
external,
globals: {
'preact-svg': 'preactSvg'
},
plugins: [
memory({
path: 'src/index.js',
contents: "export { default } from './index';"
}),
babel({
babelrc: false,
comments: false,
exclude: 'node_modules/**',
presets: [
'es2015-minimal-rollup',
'stage-0'
],
plugins: [
'transform-class-properties',
['transform-react-jsx', {pragma:'h'}]
]
}),
nodeResolve({
jsnext: true,
main: true,
skip: external
}),
commonjs({
include: 'node_modules/**',
exclude: '**/*.css'
})
]
};