-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathrollup.config.js
48 lines (44 loc) · 1.04 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
import babel from 'rollup-plugin-babel'
import filesize from 'rollup-plugin-filesize'
import resolve from 'rollup-plugin-node-resolve'
import packageJson from './package.json'
const extensions = ['.ts']
const babelOpts = {
babelrc: false,
extensions,
include: ['src/**/*'],
presets: [
[
'@babel/preset-env',
{
exclude: ['transform-regenerator'],
loose: true
}
],
'@babel/preset-typescript'
],
plugins: [
['@babel/plugin-transform-for-of', { assumeArray: true }],
'@babel/plugin-transform-object-assign'
]
}
const resolveOpts = { extensions }
const external = [
'fs',
'path',
'react-native',
...Object.keys(packageJson.dependencies),
...Object.keys(packageJson.devDependencies)
]
export default [
// Normal build:
{
external,
input: 'src/index.ts',
output: [
{ file: packageJson.main, format: 'cjs', sourcemap: true },
{ file: packageJson.module, format: 'es', sourcemap: true }
],
plugins: [resolve(resolveOpts), babel(babelOpts), filesize()]
}
]