-
Notifications
You must be signed in to change notification settings - Fork 314
/
babel.config.js
40 lines (33 loc) · 937 Bytes
/
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
const buildConfig = require('./config/build.config');
const fs = require('fs');
const packageJson = JSON.parse(fs.readFileSync('./package.json', 'utf8'));
const version = packageJson.version;
module.exports = function(api) {
api.cache(true);
const presets = [
"@babel/preset-env",
"@babel/typescript"
];
const plugins = [];
if (process.env.NODE_ENV === 'development') {
plugins.push('istanbul');
}
// Add the define plugin
plugins.push([
'babel-plugin-transform-define',
{
__USE_AXIOS__: buildConfig.useAxios,
__USE_EVENTSOURCE__: buildConfig.useEventSource,
__PACKAGE_VERSION__: version,
}
]);
const config = {
comments: process.env.NODE_ENV !== 'production',
presets,
plugins,
targets: process.env.NODE_ENV === 'production'
? { node: 18, browsers: ["> 2%", "ie 11", "not op_mini all"] }
: { browsers: ["> 2%"] }
};
return config;
};