UNPKG

873 BJavaScriptView Raw
1const sharedPlugins = require('../sharedPlugins');
2const { isDevelopment } = require('../utils');
3
4module.exports = function autoGuruWebPreset(api, options = {}) {
5 const {
6 modules = false,
7 debug = false,
8 corejs = 3,
9 loose = false,
10 browsers,
11 } = options;
12
13 return {
14 presets: [
15 [
16 require.resolve('@babel/preset-env'),
17 {
18 corejs,
19 debug,
20 loose,
21 modules,
22 spec: false,
23 shippedProposals: true,
24 useBuiltIns: 'usage',
25 targets: browsers,
26 },
27 ],
28 ],
29 plugins: [
30 ...sharedPlugins({
31 isDevelopment: isDevelopment(api),
32 modules,
33 debug,
34 corejs,
35 loose,
36 }),
37 require.resolve('babel-plugin-macros'),
38 [
39 require.resolve('@babel/plugin-transform-runtime'),
40 {
41 useESModules: modules === false ? false : 'auto',
42 corejs: options.corejs,
43 },
44 ],
45 ].filter(Boolean),
46 };
47};