]> cat aescling's git repositories - mastodon.git/blob - babel.config.js
Bump css-loader from 5.0.2 to 5.1.0 (#15802)
[mastodon.git] / babel.config.js
1 module.exports = (api) => {
2 const env = api.env();
3
4 const reactOptions = {
5 development: false,
6 };
7
8 const envOptions = {
9 loose: true,
10 modules: false,
11 debug: false,
12 };
13
14 const config = {
15 presets: [
16 ['@babel/react', reactOptions],
17 ['@babel/env', envOptions],
18 ],
19 plugins: [
20 ['@babel/proposal-decorators', { legacy: true }],
21 '@babel/proposal-class-properties',
22 ['react-intl', { messagesDir: './build/messages' }],
23 'preval',
24 ],
25 overrides: [
26 {
27 test: /tesseract\.js/,
28 presets: [
29 ['@babel/env', { ...envOptions, modules: 'commonjs' }],
30 ],
31 },
32 ],
33 };
34
35 switch (env) {
36 case 'production':
37 config.plugins.push(...[
38 'lodash',
39 [
40 'transform-react-remove-prop-types',
41 {
42 mode: 'remove',
43 removeImport: true,
44 additionalLibraries: [
45 'react-immutable-proptypes',
46 ],
47 },
48 ],
49 '@babel/transform-react-inline-elements',
50 [
51 '@babel/transform-runtime',
52 {
53 helpers: true,
54 regenerator: false,
55 useESModules: true,
56 },
57 ],
58 ]);
59 break;
60 case 'development':
61 reactOptions.development = true;
62 envOptions.debug = true;
63 break;
64 case 'test':
65 envOptions.modules = 'commonjs';
66 break;
67 }
68
69 return config;
70 };
71
This page took 0.101596 seconds and 5 git commands to generate.