@babel/plugin-transform-runtime
Advanced tools
Comparing version 7.21.4 to 7.22.0
@@ -12,9 +12,3 @@ "use strict"; | ||
var _getRuntimePath = require("./get-runtime-path"); | ||
var _babelPluginPolyfillCorejs = require("babel-plugin-polyfill-corejs2"); | ||
var _babelPluginPolyfillCorejs2 = require("babel-plugin-polyfill-corejs3"); | ||
var _babelPluginPolyfillRegenerator = require("babel-plugin-polyfill-regenerator"); | ||
const pluginCorejs2 = _babelPluginPolyfillCorejs.default || _babelPluginPolyfillCorejs; | ||
const pluginCorejs3 = _babelPluginPolyfillCorejs2.default || _babelPluginPolyfillCorejs2; | ||
const pluginRegenerator = _babelPluginPolyfillRegenerator.default || _babelPluginPolyfillRegenerator; | ||
const pluginsCompat = "#__secret_key__@babel/runtime__compatibility"; | ||
var _polyfills = require("./polyfills"); | ||
function supportsStaticESM(caller) { | ||
@@ -26,5 +20,3 @@ return !!(caller != null && caller.supportsStaticESM); | ||
const { | ||
corejs, | ||
helpers: useRuntimeHelpers = true, | ||
regenerator: useRuntimeRegenerator = true, | ||
useESModules = false, | ||
@@ -34,20 +26,2 @@ version: runtimeVersion = "7.0.0-beta.0", | ||
} = options; | ||
let proposals = false; | ||
let rawVersion; | ||
if (typeof corejs === "object" && corejs !== null) { | ||
rawVersion = corejs.version; | ||
proposals = Boolean(corejs.proposals); | ||
} else { | ||
rawVersion = corejs; | ||
} | ||
const corejsVersion = rawVersion ? Number(rawVersion) : false; | ||
if (![false, 2, 3].includes(corejsVersion)) { | ||
throw new Error(`The \`core-js\` version must be false, 2 or 3, but got ${JSON.stringify(rawVersion)}.`); | ||
} | ||
if (proposals && (!corejsVersion || corejsVersion < 3)) { | ||
throw new Error("The 'proposals' option is only supported when using 'corejs: 3'"); | ||
} | ||
if (typeof useRuntimeRegenerator !== "boolean") { | ||
throw new Error("The 'regenerator' option must be undefined, or a boolean."); | ||
} | ||
if (typeof useRuntimeHelpers !== "boolean") { | ||
@@ -90,61 +64,12 @@ throw new Error("The 'helpers' option must be undefined, or a boolean."); | ||
const esModules = useESModules === "auto" ? api.caller(supportsStaticESM) : useESModules; | ||
const injectCoreJS2 = corejsVersion === 2; | ||
const injectCoreJS3 = corejsVersion === 3; | ||
const moduleName = injectCoreJS3 ? "@babel/runtime-corejs3" : injectCoreJS2 ? "@babel/runtime-corejs2" : "@babel/runtime"; | ||
const HEADER_HELPERS = ["interopRequireWildcard", "interopRequireDefault"]; | ||
const modulePath = (0, _getRuntimePath.default)(moduleName, dirname, absoluteRuntime); | ||
function createCorejsPlugin(plugin, options, regeneratorPlugin) { | ||
return (api, _, filename) => { | ||
return Object.assign({}, plugin(api, options, filename), { | ||
inherits: regeneratorPlugin | ||
}); | ||
}; | ||
} | ||
function createRegeneratorPlugin(options) { | ||
if (!useRuntimeRegenerator) return undefined; | ||
return (api, _, filename) => { | ||
return pluginRegenerator(api, options, filename); | ||
}; | ||
} | ||
return { | ||
name: "transform-runtime", | ||
inherits: injectCoreJS2 ? createCorejsPlugin(pluginCorejs2, { | ||
method: "usage-pure", | ||
absoluteImports: absoluteRuntime ? modulePath : false, | ||
[pluginsCompat]: { | ||
runtimeVersion, | ||
useBabelRuntime: modulePath, | ||
ext: "" | ||
} | ||
}, createRegeneratorPlugin({ | ||
method: "usage-pure", | ||
absoluteImports: absoluteRuntime ? modulePath : false, | ||
[pluginsCompat]: { | ||
useBabelRuntime: modulePath | ||
} | ||
})) : injectCoreJS3 ? createCorejsPlugin(pluginCorejs3, { | ||
method: "usage-pure", | ||
version: 3, | ||
proposals, | ||
absoluteImports: absoluteRuntime ? modulePath : false, | ||
[pluginsCompat]: { | ||
useBabelRuntime: modulePath, | ||
ext: "" | ||
} | ||
}, createRegeneratorPlugin({ | ||
method: "usage-pure", | ||
absoluteImports: absoluteRuntime ? modulePath : false, | ||
[pluginsCompat]: { | ||
useBabelRuntime: modulePath | ||
} | ||
})) : createRegeneratorPlugin({ | ||
method: "usage-pure", | ||
absoluteImports: absoluteRuntime ? modulePath : false, | ||
[pluginsCompat]: { | ||
useBabelRuntime: modulePath | ||
} | ||
}), | ||
inherits: (0, _polyfills.createBasePolyfillsPlugin)(options, runtimeVersion, absoluteRuntime), | ||
pre(file) { | ||
if (!useRuntimeHelpers) return; | ||
let modulePath; | ||
file.set("helperGenerator", name => { | ||
var _modulePath, _file$get; | ||
(_modulePath = modulePath) != null ? _modulePath : modulePath = (0, _getRuntimePath.default)((_file$get = file.get("runtimeHelpersModuleName")) != null ? _file$get : "@babel/runtime", dirname, absoluteRuntime); | ||
{ | ||
@@ -151,0 +76,0 @@ if (!(file.availableHelper != null && file.availableHelper(name, runtimeVersion))) { |
{ | ||
"name": "@babel/plugin-transform-runtime", | ||
"version": "7.21.4", | ||
"version": "7.22.0", | ||
"description": "Externalise references to helpers and builtins, automatically polyfilling your code without polluting globals", | ||
@@ -24,6 +24,6 @@ "repository": { | ||
"@babel/helper-module-imports": "^7.21.4", | ||
"@babel/helper-plugin-utils": "^7.20.2", | ||
"babel-plugin-polyfill-corejs2": "^0.3.3", | ||
"babel-plugin-polyfill-corejs3": "^0.6.0", | ||
"babel-plugin-polyfill-regenerator": "^0.4.1", | ||
"@babel/helper-plugin-utils": "^7.21.5", | ||
"babel-plugin-polyfill-corejs2": "^0.4.1", | ||
"babel-plugin-polyfill-corejs3": "^0.8.1", | ||
"babel-plugin-polyfill-regenerator": "^0.5.0", | ||
"semver": "^6.3.0" | ||
@@ -35,10 +35,10 @@ }, | ||
"devDependencies": { | ||
"@babel/core": "^7.21.4", | ||
"@babel/core": "^7.22.0", | ||
"@babel/helper-plugin-test-runner": "^7.18.6", | ||
"@babel/helpers": "^7.21.0", | ||
"@babel/preset-env": "^7.21.4", | ||
"@babel/runtime": "^7.21.0", | ||
"@babel/runtime-corejs3": "^7.21.0", | ||
"@babel/template": "^7.20.7", | ||
"@babel/types": "^7.21.4", | ||
"@babel/helpers": "^7.22.0", | ||
"@babel/preset-env": "^7.22.0", | ||
"@babel/runtime": "^7.22.0", | ||
"@babel/runtime-corejs3": "^7.22.0", | ||
"@babel/template": "^7.21.9", | ||
"@babel/types": "^7.22.0", | ||
"make-dir": "^2.1.0" | ||
@@ -45,0 +45,0 @@ }, |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
16
38614
281
+ Added@babel/helper-define-polyfill-provider@0.4.40.5.00.6.2(transitive)
+ Addedbabel-plugin-polyfill-corejs2@0.4.11(transitive)
+ Addedbabel-plugin-polyfill-corejs3@0.8.7(transitive)
+ Addedbabel-plugin-polyfill-regenerator@0.5.5(transitive)
- Removed@babel/helper-define-polyfill-provider@0.3.3(transitive)
- Removedbabel-plugin-polyfill-corejs2@0.3.3(transitive)
- Removedbabel-plugin-polyfill-corejs3@0.6.0(transitive)
- Removedbabel-plugin-polyfill-regenerator@0.4.1(transitive)