mirror of
https://github.com/gregberge/loadable-components.git
synced 2025-12-08 19:46:26 +00:00
29 lines
700 B
JavaScript
29 lines
700 B
JavaScript
function isWebTarget(caller) {
|
|
return Boolean(caller && caller.target === 'web')
|
|
}
|
|
|
|
function isWebpack(caller) {
|
|
return Boolean(caller && caller.name === 'babel-loader')
|
|
}
|
|
|
|
module.exports = api => {
|
|
const web = api.caller(isWebTarget)
|
|
const webpack = api.caller(isWebpack)
|
|
|
|
return {
|
|
presets: [
|
|
'@babel/preset-react',
|
|
[
|
|
'@babel/preset-env',
|
|
{
|
|
useBuiltIns: web ? 'entry' : undefined,
|
|
corejs: web ? 'core-js@3' : false,
|
|
targets: !web ? { node: 'current' } : undefined,
|
|
modules: webpack ? false : 'commonjs',
|
|
},
|
|
],
|
|
],
|
|
plugins: ['@babel/plugin-syntax-dynamic-import', '@loadable/babel-plugin'],
|
|
}
|
|
}
|