UNPKG

@web/dev-server-legacy

Version:
58 lines 2.3 kB
"use strict"; var _a; Object.defineProperty(exports, "__esModule", { value: true }); exports.babelTransform = exports.systemJsConfig = exports.es5Config = void 0; const core_1 = require("@babel/core"); exports.es5Config = { caller: { name: '@web/dev-server-legacy', supportsStaticESM: true, }, sourceType: 'module', babelrc: false, configFile: false, presets: [ [ require.resolve('@babel/preset-env'), { targets: ['defaults', 'ie 10'], useBuiltIns: false, shippedProposals: true, modules: false, bugfixes: true, }, ], ], /** * Enable syntax plugins for stage 3 features. This does **not** transform them, * it only ensures that babel does not crash when you're using them. */ plugins: [ require.resolve('@babel/plugin-syntax-import-meta'), require.resolve('@babel/plugin-syntax-class-properties'), require.resolve('@babel/plugin-syntax-numeric-separator'), require.resolve('@babel/plugin-syntax-dynamic-import'), ], }; exports.systemJsConfig = Object.assign(Object.assign({}, exports.es5Config), { plugins: [ ...((_a = exports.es5Config.plugins) !== null && _a !== void 0 ? _a : []), require.resolve('@babel/plugin-proposal-dynamic-import'), require.resolve('@babel/plugin-transform-modules-systemjs'), // systemjs adds template literals, we do systemjs after (potential) // es5 compilation so we need to ensure it stays es5 require.resolve('@babel/plugin-transform-template-literals'), ] }); async function babelTransform(filename, source, config) { const largeFile = source.length > 100000; const result = await (0, core_1.transformAsync)(source, Object.assign({ filename, // prevent generating pretty output for large files compact: largeFile, // babel runs out of memory when processing source maps andfor large files sourceMaps: !largeFile }, config)); if (!result || typeof result.code !== 'string') { throw new Error('Failed to transform'); } return result.code; } exports.babelTransform = babelTransform; //# sourceMappingURL=babelTransform.js.map