diff --git a/packages/babel-cli/src/babel/options.js b/packages/babel-cli/src/babel/options.js index fe23788dd001..3e6cd45c466e 100644 --- a/packages/babel-cli/src/babel/options.js +++ b/packages/babel-cli/src/babel/options.js @@ -98,17 +98,19 @@ commander.option( "The root from which all sources are relative.", ); -// Config params for certain module output formats. -commander.option( - "--module-root [filename]", - // eslint-disable-next-line max-len - "Optional prefix for the AMD module formatter that will be prepended to the filename on module definitions.", -); -commander.option("-M, --module-ids", "Insert an explicit id for modules."); -commander.option( - "--module-id [string]", - "Specify a custom name for module ids.", -); +if (!process.env.BABEL_8_BREAKING) { + // Config params for certain module output formats. + commander.option( + "--module-root [filename]", + // eslint-disable-next-line max-len + "Optional prefix for the AMD module formatter that will be prepended to the filename on module definitions.", + ); + commander.option("-M, --module-ids", "Insert an explicit id for modules."); + commander.option( + "--module-id [string]", + "Specify a custom name for module ids.", + ); +} // "babel" command specific arguments that are not passed to @babel/core. commander.option( @@ -277,9 +279,6 @@ export default function parseArgv(args: Array): CmdOptions | null { sourceMaps: opts.sourceMaps, sourceFileName: opts.sourceFileName, sourceRoot: opts.sourceRoot, - moduleRoot: opts.moduleRoot, - moduleIds: opts.moduleIds, - moduleId: opts.moduleId, // Commander will default the "--no-" arguments to true, but we want to // leave them undefined so that @babel/core can handle the @@ -289,6 +288,15 @@ export default function parseArgv(args: Array): CmdOptions | null { comments: opts.comments === true ? undefined : opts.comments, }; + if (!process.env.BABEL_8_BREAKING) { + // $FlowIgnore + Object.assign(babelOptions, { + moduleRoot: opts.moduleRoot, + moduleIds: opts.moduleIds, + moduleId: opts.moduleId, + }); + } + // If the @babel/cli version is newer than the @babel/core version, and we have added // new options for @babel/core, we'll potentially get option validation errors from // @babel/core. To avoid that, we delete undefined options, so @babel/core will only diff --git a/packages/babel-core/package.json b/packages/babel-core/package.json index bb64a78fbc52..09a82a725210 100644 --- a/packages/babel-core/package.json +++ b/packages/babel-core/package.json @@ -50,7 +50,7 @@ "@babel/code-frame": "workspace:^7.12.13", "@babel/generator": "workspace:^7.13.9", "@babel/helper-compilation-targets": "workspace:^7.13.13", - "@babel/helper-module-transforms": "workspace:^7.13.12", + "@babel/helper-module-transforms": "condition:BABEL_8_BREAKING ? : workspace:^7.13.12", "@babel/helpers": "workspace:^7.13.10", "@babel/parser": "workspace:^7.13.13", "@babel/template": "workspace:^7.12.13", diff --git a/packages/babel-core/src/config/validation/options.js b/packages/babel-core/src/config/validation/options.js index 6289286e8ed5..bf9cafcecda0 100644 --- a/packages/babel-core/src/config/validation/options.js +++ b/packages/babel-core/src/config/validation/options.js @@ -173,18 +173,6 @@ const COMMON_VALIDATORS: ValidatorSet = { sourceRoot: (assertString: Validator< $PropertyType, >), - getModuleId: (assertFunction: Validator< - $PropertyType, - >), - moduleRoot: (assertString: Validator< - $PropertyType, - >), - moduleIds: (assertBoolean: Validator< - $PropertyType, - >), - moduleId: (assertString: Validator< - $PropertyType, - >), parserOpts: (assertObject: Validator< $PropertyType, >), @@ -192,6 +180,15 @@ const COMMON_VALIDATORS: ValidatorSet = { $PropertyType, >), }; +if (!process.env.BABEL_8_BREAKING) { + Object.assign(COMMON_VALIDATORS, { + getModuleId: assertFunction, + moduleRoot: assertString, + moduleIds: assertBoolean, + moduleId: assertString, + }); +} + export type InputOptions = ValidatedOptions; export type ValidatedOptions = { @@ -253,12 +250,6 @@ export type ValidatedOptions = { sourceFileName?: string, sourceRoot?: string, - // AMD/UMD/SystemJS module naming options. - getModuleId?: Function, - moduleRoot?: string, - moduleIds?: boolean, - moduleId?: string, - // Deprecate top level parserOpts parserOpts?: {}, // Deprecate top level generatorOpts diff --git a/packages/babel-core/src/transformation/normalize-opts.js b/packages/babel-core/src/transformation/normalize-opts.js index 4c53b7aa3517..41108888177d 100644 --- a/packages/babel-core/src/transformation/normalize-opts.js +++ b/packages/babel-core/src/transformation/normalize-opts.js @@ -13,9 +13,9 @@ export default function normalizeOptions(config: ResolvedConfig): {} { sourceType = "module", inputSourceMap, sourceMaps = !!inputSourceMap, - - moduleRoot, - sourceRoot = moduleRoot, + sourceRoot = process.env.BABEL_8_BREAKING + ? undefined + : config.options.moduleRoot, sourceFileName = path.basename(filenameRelative), diff --git a/packages/babel-core/src/transformation/plugin-pass.js b/packages/babel-core/src/transformation/plugin-pass.js index e11f97804745..7f5f8a992b3a 100644 --- a/packages/babel-core/src/transformation/plugin-pass.js +++ b/packages/babel-core/src/transformation/plugin-pass.js @@ -44,11 +44,14 @@ export default class PluginPass { return this.file.addImport(); } - getModuleName(): ?string { - return this.file.getModuleName(); - } - buildCodeFrameError(node: ?NodeLocation, msg: string, Error?: typeof Error) { return this.file.buildCodeFrameError(node, msg, Error); } } + +if (!process.env.BABEL_8_BREAKING) { + // $FlowIgnore + PluginPass.prototype.getModuleName = function getModuleName(): ?string { + return this.file.getModuleName(); + }; +} diff --git a/packages/babel-helper-module-transforms/src/get-module-name.ts b/packages/babel-helper-module-transforms/src/get-module-name.ts index 428da27d168f..0df7ae602255 100644 --- a/packages/babel-helper-module-transforms/src/get-module-name.ts +++ b/packages/babel-helper-module-transforms/src/get-module-name.ts @@ -1,21 +1,51 @@ +type RootOptions = { + filename?: string; + filenameRelative?: string; + sourceRoot?: string; +}; + +type PluginOptions = { + moduleId?: string; + moduleIds?: boolean; + getModuleId?: (moduleName: string) => string | null | undefined; + moduleRoot?: string; +}; + +if (!process.env.BABEL_8_BREAKING) { + const originalGetModuleName = getModuleName; + + // @ts-expect-error TS doesn't like reassigning a function. + // eslint-disable-next-line no-func-assign + getModuleName = function getModuleName( + rootOpts: RootOptions & PluginOptions, + pluginOpts: PluginOptions, + ): string | null { + return originalGetModuleName(rootOpts, { + moduleId: pluginOpts.moduleId ?? rootOpts.moduleId, + moduleIds: pluginOpts.moduleIds ?? rootOpts.moduleIds, + getModuleId: pluginOpts.getModuleId ?? rootOpts.getModuleId, + moduleRoot: pluginOpts.moduleRoot ?? rootOpts.moduleRoot, + }); + }; +} + export default function getModuleName( - rootOpts: any, - pluginOpts: any, -): string | undefined | null { + rootOpts: RootOptions, + pluginOpts: PluginOptions, +): string | null { const { filename, filenameRelative = filename, - - sourceRoot = pluginOpts.moduleRoot ?? rootOpts.moduleRoot, + sourceRoot = pluginOpts.moduleRoot, } = rootOpts; const { - moduleId = rootOpts.moduleId, - moduleIds = rootOpts.moduleIds ?? !!moduleId, + moduleId, + moduleIds = !!moduleId, - getModuleId = rootOpts.getModuleId, + getModuleId, - moduleRoot = rootOpts.moduleRoot ?? sourceRoot, + moduleRoot = sourceRoot, } = pluginOpts; if (!moduleIds) return null; diff --git a/packages/babel-plugin-transform-modules-amd/test/fixtures/amd/get-module-name-option-compat/options.json b/packages/babel-plugin-transform-modules-amd/test/fixtures/amd/get-module-name-option-compat/options.json index ef11b00e2ba2..4186b28ad9da 100644 --- a/packages/babel-plugin-transform-modules-amd/test/fixtures/amd/get-module-name-option-compat/options.json +++ b/packages/babel-plugin-transform-modules-amd/test/fixtures/amd/get-module-name-option-compat/options.json @@ -1,4 +1,5 @@ { + "BABEL_8_BREAKING": false, "sourceType": "module", "moduleIds": true, "moduleId": "my custom module name" diff --git a/packages/babel-plugin-transform-modules-amd/test/fixtures/amd/module-name-compat/options.json b/packages/babel-plugin-transform-modules-amd/test/fixtures/amd/module-name-compat/options.json index 5b0398abbe6f..cd5a5f781d46 100644 --- a/packages/babel-plugin-transform-modules-amd/test/fixtures/amd/module-name-compat/options.json +++ b/packages/babel-plugin-transform-modules-amd/test/fixtures/amd/module-name-compat/options.json @@ -1,4 +1,5 @@ { + "BABEL_8_BREAKING": false, "sourceType": "module", "moduleIds": true } diff --git a/packages/babel-plugin-transform-modules-amd/test/fixtures/loose/get-module-name-option-compat/options.json b/packages/babel-plugin-transform-modules-amd/test/fixtures/loose/get-module-name-option-compat/options.json index 332d2dedc25a..ab6b7a504a3d 100644 --- a/packages/babel-plugin-transform-modules-amd/test/fixtures/loose/get-module-name-option-compat/options.json +++ b/packages/babel-plugin-transform-modules-amd/test/fixtures/loose/get-module-name-option-compat/options.json @@ -1,4 +1,5 @@ { + "BABEL_8_BREAKING": false, "sourceType": "module", "moduleIds": true, "moduleId": "my custom module name", diff --git a/packages/babel-plugin-transform-modules-amd/test/fixtures/loose/module-name-compat/options.json b/packages/babel-plugin-transform-modules-amd/test/fixtures/loose/module-name-compat/options.json index 9a4555b58e5d..39e3b15d114d 100644 --- a/packages/babel-plugin-transform-modules-amd/test/fixtures/loose/module-name-compat/options.json +++ b/packages/babel-plugin-transform-modules-amd/test/fixtures/loose/module-name-compat/options.json @@ -1,4 +1,5 @@ { + "BABEL_8_BREAKING": false, "sourceType": "module", "moduleIds": true, "plugins": [["transform-modules-amd", { "loose": true }]] diff --git a/packages/babel-plugin-transform-modules-systemjs/test/fixtures/systemjs/get-module-name-option-compat/options.json b/packages/babel-plugin-transform-modules-systemjs/test/fixtures/systemjs/get-module-name-option-compat/options.json index 6d0cdb5a6f0c..e883871e09a5 100644 --- a/packages/babel-plugin-transform-modules-systemjs/test/fixtures/systemjs/get-module-name-option-compat/options.json +++ b/packages/babel-plugin-transform-modules-systemjs/test/fixtures/systemjs/get-module-name-option-compat/options.json @@ -1,4 +1,5 @@ { + "BABEL_8_BREAKING": false, "moduleIds": true, "moduleId": "my custom module name" } diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/get-module-name-option-compat/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/get-module-name-option-compat/options.json index 86d81871c952..99980d07fa40 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/get-module-name-option-compat/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/get-module-name-option-compat/options.json @@ -1,4 +1,5 @@ { + "BABEL_8_BREAKING": false, "sourceType": "module", "moduleIds": true, "moduleId": "my custom module name", diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id-with-overridden-global-in-namespace/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id-with-overridden-global-in-namespace/options.json index f215ae29b26e..6a959fbeb91b 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id-with-overridden-global-in-namespace/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id-with-overridden-global-in-namespace/options.json @@ -7,9 +7,9 @@ "my custom module name": "foo.bar" }, "exactGlobals": true, - "loose": true + "loose": true, + "moduleId": "my custom module name" } ] - ], - "moduleId": "my custom module name" + ] } diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id-with-overridden-global-in-very-nested-namespace/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id-with-overridden-global-in-very-nested-namespace/options.json index 9a9b96b77561..ec2cf0c0829f 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id-with-overridden-global-in-very-nested-namespace/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id-with-overridden-global-in-very-nested-namespace/options.json @@ -7,9 +7,9 @@ "my custom module name": "foo.bar.baz.qux" }, "exactGlobals": true, - "loose": true + "loose": true, + "moduleId": "my custom module name" } ] - ], - "moduleId": "my custom module name" + ] } diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id-with-overridden-global/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id-with-overridden-global/options.json index 9ab14716cd9f..3cdd7402ebc6 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id-with-overridden-global/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id-with-overridden-global/options.json @@ -7,9 +7,9 @@ "my custom module name": "baz" }, "exactGlobals": true, - "loose": true + "loose": true, + "moduleId": "my custom module name" } ] - ], - "moduleId": "my custom module name" + ] } diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id/options.json index 139f6fa57557..de8bc30912fa 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-id/options.json @@ -1,5 +1,4 @@ { "sourceType": "module", - "moduleId": "MyLib", - "plugins": [["transform-modules-umd", { "loose": true }]] + "plugins": [["transform-modules-umd", { "loose": true, "moduleId": "MyLib" }]] } diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-name-compat/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-name-compat/options.json index fe390b670242..3c053b0f7a6c 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-name-compat/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-name-compat/options.json @@ -1,4 +1,5 @@ { + "BABEL_8_BREAKING": false, "sourceType": "module", "moduleIds": true, "plugins": [["transform-modules-umd", { "loose": true }]] diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-name-with-overridden-global-compat/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-name-with-overridden-global-compat/options.json index 73a20d6ed203..a6fd00cb321e 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-name-with-overridden-global-compat/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/loose/module-name-with-overridden-global-compat/options.json @@ -1,4 +1,5 @@ { + "BABEL_8_BREAKING": false, "plugins": [ [ "transform-modules-umd", diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/get-module-name-option-compat/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/get-module-name-option-compat/options.json index ef11b00e2ba2..4186b28ad9da 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/get-module-name-option-compat/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/get-module-name-option-compat/options.json @@ -1,4 +1,5 @@ { + "BABEL_8_BREAKING": false, "sourceType": "module", "moduleIds": true, "moduleId": "my custom module name" diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id-with-overridden-global-in-namespace/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id-with-overridden-global-in-namespace/options.json index 4eb7e2a9a623..d6eaa6a3886d 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id-with-overridden-global-in-namespace/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id-with-overridden-global-in-namespace/options.json @@ -6,9 +6,9 @@ "globals": { "my custom module name": "foo.bar" }, - "exactGlobals": true + "exactGlobals": true, + "moduleId": "my custom module name" } ] - ], - "moduleId": "my custom module name" + ] } diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id-with-overridden-global-in-very-nested-namespace/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id-with-overridden-global-in-very-nested-namespace/options.json index cae072c6ac14..2a0f7f1d8447 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id-with-overridden-global-in-very-nested-namespace/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id-with-overridden-global-in-very-nested-namespace/options.json @@ -6,9 +6,9 @@ "globals": { "my custom module name": "foo.bar.baz.qux" }, - "exactGlobals": true + "exactGlobals": true, + "moduleId": "my custom module name" } ] - ], - "moduleId": "my custom module name" + ] } diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id-with-overridden-global/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id-with-overridden-global/options.json index b7f3e10ae3b7..774b694f0edb 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id-with-overridden-global/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id-with-overridden-global/options.json @@ -6,9 +6,9 @@ "globals": { "my custom module name": "baz" }, - "exactGlobals": true + "exactGlobals": true, + "moduleId": "my custom module name" } ] - ], - "moduleId": "my custom module name" + ] } diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id/options.json index 48a14ad305b9..ac290b4ae1e0 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-id/options.json @@ -1,4 +1,4 @@ { "sourceType": "module", - "moduleId": "MyLib" + "plugins": [["transform-modules-umd", { "moduleId": "MyLib" }]] } diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-name-compat/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-name-compat/options.json index 5b0398abbe6f..cd5a5f781d46 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-name-compat/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-name-compat/options.json @@ -1,4 +1,5 @@ { + "BABEL_8_BREAKING": false, "sourceType": "module", "moduleIds": true } diff --git a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-name-with-overridden-global-compat/options.json b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-name-with-overridden-global-compat/options.json index 38d9d7039b2c..0e07b0b66dd9 100644 --- a/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-name-with-overridden-global-compat/options.json +++ b/packages/babel-plugin-transform-modules-umd/test/fixtures/umd/module-name-with-overridden-global-compat/options.json @@ -1,4 +1,5 @@ { + "BABEL_8_BREAKING": false, "plugins": [ [ "transform-modules-umd", diff --git a/yarn.lock b/yarn.lock index e293dde69d71..259619492fc5 100644 --- a/yarn.lock +++ b/yarn.lock @@ -204,7 +204,7 @@ __metadata: "@babel/code-frame": "workspace:^7.12.13" "@babel/generator": "workspace:^7.13.9" "@babel/helper-compilation-targets": "workspace:^7.13.13" - "@babel/helper-module-transforms": "workspace:^7.13.12" + "@babel/helper-module-transforms": "condition:BABEL_8_BREAKING ? : workspace:^7.13.12" "@babel/helper-transform-fixture-test-runner": "workspace:*" "@babel/helpers": "workspace:^7.13.10" "@babel/parser": "workspace:^7.13.13" @@ -639,6 +639,30 @@ __metadata: languageName: unknown linkType: soft +"@babel/helper-module-transforms-BABEL_8_BREAKING-false@npm:@babel/helper-module-transforms@workspace:^7.13.12, @babel/helper-module-transforms@workspace:^7.13.0, @babel/helper-module-transforms@workspace:packages/babel-helper-module-transforms": + version: 0.0.0-use.local + resolution: "@babel/helper-module-transforms@workspace:packages/babel-helper-module-transforms" + dependencies: + "@babel/helper-module-imports": "workspace:^7.13.12" + "@babel/helper-replace-supers": "workspace:^7.13.12" + "@babel/helper-simple-access": "workspace:^7.13.12" + "@babel/helper-split-export-declaration": "workspace:^7.12.13" + "@babel/helper-validator-identifier": "workspace:^7.12.11" + "@babel/template": "workspace:^7.12.13" + "@babel/traverse": "workspace:^7.13.0" + "@babel/types": "workspace:^7.13.12" + languageName: unknown + linkType: soft + +"@babel/helper-module-transforms@condition:BABEL_8_BREAKING ? : workspace:^7.13.12": + version: 0.0.0-condition-130862 + resolution: "@babel/helper-module-transforms@condition:BABEL_8_BREAKING?:workspace:^7.13.12#130862" + dependencies: + "@babel/helper-module-transforms-BABEL_8_BREAKING-false": "npm:@babel/helper-module-transforms@workspace:^7.13.12" + checksum: 099f985d9558228aa29430a51630015ea02a47f2714cc392f0105921e768c4998a70686942c51defe174cd5ed9f221ab0e4505a611f40e7a68158748c4bbfb8e + languageName: node + linkType: hard + "@babel/helper-module-transforms@npm:^7.12.1, @babel/helper-module-transforms@npm:^7.12.13, @babel/helper-module-transforms@npm:^7.13.0": version: 7.13.0 resolution: "@babel/helper-module-transforms@npm:7.13.0" @@ -656,21 +680,6 @@ __metadata: languageName: node linkType: hard -"@babel/helper-module-transforms@workspace:^7.13.0, @babel/helper-module-transforms@workspace:^7.13.12, @babel/helper-module-transforms@workspace:packages/babel-helper-module-transforms": - version: 0.0.0-use.local - resolution: "@babel/helper-module-transforms@workspace:packages/babel-helper-module-transforms" - dependencies: - "@babel/helper-module-imports": "workspace:^7.13.12" - "@babel/helper-replace-supers": "workspace:^7.13.12" - "@babel/helper-simple-access": "workspace:^7.13.12" - "@babel/helper-split-export-declaration": "workspace:^7.12.13" - "@babel/helper-validator-identifier": "workspace:^7.12.11" - "@babel/template": "workspace:^7.12.13" - "@babel/traverse": "workspace:^7.13.0" - "@babel/types": "workspace:^7.13.12" - languageName: unknown - linkType: soft - "@babel/helper-optimise-call-expression@npm:^7.12.13": version: 7.12.13 resolution: "@babel/helper-optimise-call-expression@npm:7.12.13"