-
Notifications
You must be signed in to change notification settings - Fork 0
/
babel.config.js
48 lines (48 loc) · 1.07 KB
/
babel.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
const fs = require('fs');
const merge = require('babel-merge');
const ext = `${__dirname}/babel.ext.json`;
module.exports = merge({
only: [
'src',
'styleguide',
],
comments: false,
presets: [
[
'@babel/preset-env',
{
modules: false,
},
],
'@babel/preset-react',
],
plugins: [
'babel-plugin-array-includes',
'@babel/plugin-transform-runtime',
'@babel/plugin-transform-async-to-generator',
'@babel/plugin-proposal-class-properties',
'@babel/plugin-syntax-dynamic-import',
'@babel/plugin-syntax-import-meta',
'@babel/plugin-proposal-json-strings',
[
'@babel/plugin-proposal-decorators',
{
legacy: true,
},
],
],
env: {
production: {
plugins: [
'babel-plugin-add-module-exports',
'@babel/plugin-transform-modules-commonjs',
],
},
test: {
plugins: [
'@babel/plugin-transform-modules-commonjs',
'babel-plugin-dynamic-import-node',
],
},
},
}, fs.existsSync(ext) && require(ext)); // eslint-disable-line