Innovenergy_trunk/frontend/node_modules/testcafe/lib/compiler/babel/load-libs.js

69 lines
9.0 KiB
JavaScript
Raw Permalink Normal View History

"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
const get_exportable_lib_path_1 = __importDefault(require("../test-file/get-exportable-lib-path"));
function getPresetEnvForTestCodeOpts(dontUseModules) {
const opts = {
targets: { node: 'current' },
loose: true,
exclude: ['transform-regenerator'],
};
if (dontUseModules)
opts.modules = false;
return opts;
}
function getPresetEnvForClientFunctionOpts() {
return {
loose: true,
exclude: ['transform-typeof-symbol', 'transform-for-of'],
};
}
function getModuleResolverOpts(experimentalEsm) {
return {
resolvePath(source) {
//NOTE: Prevent module caching to import 'fixture' and 'test' in ESM mode.
if (source === 'testcafe')
return (0, get_exportable_lib_path_1.default)(experimentalEsm);
return source;
},
};
}
function getTransformForOfOptions() {
// NOTE: allowArrayLike is required to allow iterating non-iterable objects (e.g. NodeList)
// to preserve compatibility with older TestCafe code
return { loose: true, allowArrayLike: true };
}
function getTransformRuntimeOpts() {
// NOTE: We are forced to import helpers to each compiled file
// because of '@babel/plugin-transform-runtime' plugin cannot correctly resolve path
// to the helpers from the '@babel/runtime' module.
return {
'helpers': false,
};
}
function getPresetReact() {
const presetReact = require('@babel/preset-react');
presetReact.presets = []; // disables flow so it doesn't confict w/ presetFlow
return presetReact;
}
// NOTE: lazy load heavy dependencies
function loadLibs({ isCompilerServiceMode, experimentalEsm } = {}) {
return {
babel: require('@babel/core'),
presetStage2: require('./preset-stage-2'),
presetFlow: require('@babel/preset-flow'),
transformRuntime: [require('@babel/plugin-transform-runtime'), getTransformRuntimeOpts()],
transformForOfAsArray: [require('@babel/plugin-transform-for-of'), getTransformForOfOptions()],
presetEnvForClientFunction: [require('@babel/preset-env'), getPresetEnvForClientFunctionOpts()],
presetEnvForTestCode: [require('@babel/preset-env'), getPresetEnvForTestCodeOpts(isCompilerServiceMode || experimentalEsm)],
moduleResolver: [require('babel-plugin-module-resolver'), getModuleResolverOpts(experimentalEsm)],
presetReact: getPresetReact(),
proposalPrivateMethods: [require('@babel/plugin-proposal-private-methods'), { loose: true }],
proposalClassProperties: [require('@babel/plugin-proposal-class-properties'), { loose: true }],
};
}
exports.default = loadLibs;
module.exports = exports.default;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9hZC1saWJzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBpbGVyL2JhYmVsL2xvYWQtbGlicy5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBLG1HQUF3RTtBQUV4RSxTQUFTLDJCQUEyQixDQUFFLGNBQWM7SUFDaEQsTUFBTSxJQUFJLEdBQUc7UUFDVCxPQUFPLEVBQUUsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFO1FBQzVCLEtBQUssRUFBSSxJQUFJO1FBQ2IsT0FBTyxFQUFFLENBQUMsdUJBQXVCLENBQUM7S0FDckMsQ0FBQztJQUVGLElBQUksY0FBYztRQUNkLElBQUksQ0FBQyxPQUFPLEdBQUcsS0FBSyxDQUFDO0lBRXpCLE9BQU8sSUFBSSxDQUFDO0FBQ2hCLENBQUM7QUFFRCxTQUFTLGlDQUFpQztJQUN0QyxPQUFPO1FBQ0gsS0FBSyxFQUFJLElBQUk7UUFDYixPQUFPLEVBQUUsQ0FBQyx5QkFBeUIsRUFBRSxrQkFBa0IsQ0FBQztLQUMzRCxDQUFDO0FBQ04sQ0FBQztBQUVELFNBQVMscUJBQXFCLENBQUUsZUFBZTtJQUMzQyxPQUFPO1FBQ0gsV0FBVyxDQUFFLE1BQU07WUFDZiwwRUFBMEU7WUFDMUUsSUFBSSxNQUFNLEtBQUssVUFBVTtnQkFDckIsT0FBTyxJQUFBLGlDQUFvQixFQUFDLGVBQWUsQ0FBQyxDQUFDO1lBRWpELE9BQU8sTUFBTSxDQUFDO1FBQ2xCLENBQUM7S0FDSixDQUFDO0FBQ04sQ0FBQztBQUVELFNBQVMsd0JBQXdCO0lBQzdCLDJGQUEyRjtJQUMzRixxREFBcUQ7SUFDckQsT0FBTyxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsY0FBYyxFQUFFLElBQUksRUFBRSxDQUFDO0FBQ2pELENBQUM7QUFFRCxTQUFTLHVCQUF1QjtJQUM1Qiw4REFBOEQ7SUFDOUQsb0ZBQW9GO0lBQ3BGLG1EQUFtRDtJQUNuRCxPQUFPO1FBQ0gsU0FBUyxFQUFFLEtBQUs7S0FDbkIsQ0FBQztBQUNOLENBQUM7QUFFRCxTQUFTLGNBQWM7SUFDbkIsTUFBTSxXQUFXLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixDQUFDLENBQUM7SUFFbkQsV0FBVyxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUMsQ0FBQyxvREFBb0Q7SUFFOUUsT0FBTyxXQUFXLENBQUM7QUFDdkIsQ0FBQztBQUVELHFDQUFxQztBQUNyQyxTQUF3QixRQUFRLENBQUUsRUFBRSxxQkFBcUIsRUFBRSxlQUFlLEVBQUUsR0FBRyxFQUFFO0lBQzdFLE9BQU87UUFDSCxLQUFLLEVBQXVCLE9BQU8sQ0FBQyxhQUFhLENBQUM7UUFDbEQsWUFBWSxFQUFnQixPQUFPLENBQUMsa0JBQWtCLENBQUM7UUFDdkQsVUFBVSxFQUFrQixPQUFPLENBQUMsb0JBQW9CLENBQUM7UUFDekQsZ0JBQWdCLEVBQVksQ0FBQyxPQUFPLENBQUMsaUNBQWlDLENBQUMsRUFBRSx1QkFBdUIsRUFBRSxDQUFDO1FBQ25HLHFCQUFxQixFQUFPLENBQUMsT0FBTyxDQUFDLGdDQUFnQyxDQUFDLEVBQUUsd0JBQXdCLEVBQUUsQ0FBQztRQUNuRywwQkFBMEIsRUFBRSxDQUFDLE9BQU8sQ0FBQyxtQkFBbUIsQ0FBQyxFQUFFLGlDQUFpQyxFQUFFLENBQUM7UUFDL0Ysb0JBQW9CLEVBQVEsQ0FBQyxPQUFPLENBQUMsbUJBQW1CLENBQUMsRUFBRSwyQkFBMkIsQ0FBQyxxQkFBcUIsSUFBSSxlQUFlLENBQUMsQ0FBQztRQUNqSSxjQUFjLEVBQWMsQ0FBQyxPQUFPLENBQUMsOEJBQThCLENBQUMsRUFBRSxxQkFBcUIsQ0FBQyxlQUFlLENBQUMsQ0FBQztRQUM3RyxXQUFXLEVBQWlCLGNBQWMsRUFBRTtRQUM1QyxzQkFBc0IsRUFBTSxDQUFDLE9BQU8sQ0FBQyx3Q0FBd0MsQ0FBQyxFQUFFLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDO1FBQ2hHLHVCQUF1QixFQUFLLENBQUMsT0FBTyxDQUFDLHlDQUF5QyxDQUFDLEVBQUUsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7S0FDcEcsQ0FBQztBQUNOLENBQUM7QUFkRCwyQkFjQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBnZXRFeHBvcnRhYmxlTGliUGF0aCBmcm9tICcuLi90ZXN0LWZpbGUvZ2V0LWV4cG9ydGFibGUtbGliLXBhdGgnO1xuXG5mdW5jdGlvbiBnZXRQcmVzZXRFbnZGb3JUZXN0Q29kZU9wdHMgKGRvbnRVc2VNb2R1bGVzKSB7XG4gICAgY29uc3Qgb3B0cyA9IHtcbiAgICAgICAgdGFyZ2V0czogeyBub2RlOiAnY3VycmVudCcgfSxcbiAgICAgICAgbG9vc2U6ICAgdHJ1ZSxcbiAgICAgICAgZXhjbHVkZTogWyd0cmFuc2Zvcm0tcmVnZW5lcmF0b3InXSxcbiAgICB9O1xuXG4gICAgaWYgKGRvbnRVc2VNb2R1bGVzKVxuICAgICAgICBvcHRzLm1vZHVsZXMgPSBmYWxzZTtcblxuICAgIHJldHVybiBvcHRzO1xufVxuXG5mdW5jdGlvbiBnZXRQcmVzZXRFbnZGb3JDbGllbnRGdW5jdGlvbk9wdHMgKCkge1xuICAgIHJldHVybiB7XG4gICAgICAgIGxvb3NlOiAgIHRydWUsXG4gICAgICAgIGV4Y2x1ZGU6IFsndHJhbnNmb3JtLXR5cGVvZi1zeW1ib2wnLCAndHJhbnNmb3JtLWZvci1vZiddLFxuICAgIH07XG59XG5cbmZ1bmN0aW9uIGdldE1vZHVsZVJlc29sdmVyT3B0cyAoZXhwZXJpbWVudGFsRXNtKSB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgcmVzb2x2ZVBhdGggKHNvdXJjZSkge1xuICAgICAgICAgICAgLy9OT1RFOiBQcmV2ZW50IG1vZHVsZSBjYWNoaW5nIHRvIGltcG9ydCAnZml4dHVyZScgYW5kICd0ZXN0JyBpbiBFU00gbW9kZS5cbiAgICAgICAgICAgIGlmIChzb3VyY2UgPT09ICd0ZXN0Y2FmZScpXG4gICAgICAgICAgICAgICAgcmV0dXJuIGdldEV4cG9ydGFibGVMaWJQYXRoKGV4cGVyaW1lbnRhbEVzbSk7XG5cbiAgICAgICAgICAgIHJldHVybiBzb3VyY2U7XG4gICAgICAgIH0sXG4gICAgfTtcbn1cblxuZnVuY3Rpb24gZ2V0VHJhbnNmb3JtRm9yT2ZPcHRpb25zICgpIHtcbiAgICAvLyBOT1RFOiBhbGxvd0FycmF5TGlrZSBpcyByZXF1aXJlZCB0byBhbGxvdyBpdGVyYXRpbmcgbm9uLWl0ZXJhYmxlIG9iamVjdHMgKGUuZy4gTm9kZUxpc3QpXG4gICAgLy8gdG8gcHJlc2VydmUgY29tcGF0aWJpbGl0eSB3aXRoIG9sZGVyIFRlc3RDYWZlIGNvZGVcbiAgICByZXR1cm4geyBsb29zZTogdHJ1ZSwgYWxsb3dBcnJheUxpa2U6IHRydWUgfTtcbn1cblxuZnVuY3Rpb24gZ2V0VHJhbnNmb3JtUnVudGltZU9wdHMgKCkge1xuICAgIC8vIE5PVEU6IFdlIGFyZSBmb3JjZWQgd