UNPKG

@moxy/babel-preset

Version:
33 lines (29 loc) 1.39 kB
'use strict'; const addReactSupport = (config, env) => { // Add base support config.plugins.unshift( require.resolve('@babel/plugin-syntax-jsx'), [require.resolve('@babel/plugin-transform-react-jsx'), { useBuiltIns: true }], require.resolve('@babel/plugin-transform-react-display-name') ); // Enable optimizations on production if (env === 'production') { config.plugins.push( [require.resolve('babel-plugin-transform-react-remove-prop-types'), { removeImport: true }] ); // The following two plugins are currently necessary to make React warnings include more valuable information // They are included here because they are currently not enabled in babel-preset-react // See the below threads for more info: // https://github.com/babel/babel/issues/4702 // https://github.com/babel/babel/pull/3540#issuecomment-228673661 // https://github.com/facebookincubator/create-react-app/issues/989 } else if (env === 'development') { config.plugins.push( // Adds component stack to warning messages require.resolve('@babel/plugin-transform-react-jsx-source'), // Adds __self attribute to JSX which React will use for some warnings require.resolve('@babel/plugin-transform-react-jsx-self') ); } }; module.exports = addReactSupport;