in src/Worker.js [54:100]
function setup(tr, babel) {
if (babel === 'babel') {
const presets = [];
if (presetEnv) {
presets.push([
presetEnv.default,
{targets: {node: true}},
]);
}
presets.push(
/\.tsx?$/.test(tr) ?
require('@babel/preset-typescript').default :
require('@babel/preset-flow').default
);
require('@babel/register')({
babelrc: false,
presets,
plugins: [
require('@babel/plugin-proposal-class-properties').default,
require('@babel/plugin-proposal-nullish-coalescing-operator').default,
require('@babel/plugin-proposal-optional-chaining').default,
require('@babel/plugin-transform-modules-commonjs').default,
],
extensions: [...DEFAULT_EXTENSIONS, '.ts', '.tsx'],
// By default, babel register only compiles things inside the current working directory.
// https://github.com/babel/babel/blob/2a4f16236656178e84b05b8915aab9261c55782c/packages/babel-register/src/node.js#L140-L157
ignore: [
// Ignore parser related files
/@babel\/parser/,
/\/flow-parser\//,
/\/recast\//,
/\/ast-types\//,
],
});
}
const module = require(tr);
transform = typeof module.default === 'function' ?
module.default :
module;
if (module.parser) {
parserFromTransform = typeof module.parser === 'string' ?
getParser(module.parser) :
module.parser;
}
}