diff --git a/packages/babel-plugin-transform-runtime/src/index.js b/packages/babel-plugin-transform-runtime/src/index.js index 0d1f88571041..3b7ff68e9c2f 100644 --- a/packages/babel-plugin-transform-runtime/src/index.js +++ b/packages/babel-plugin-transform-runtime/src/index.js @@ -432,6 +432,7 @@ export default declare((api, options, dirname) => { exit(path) { if (!injectCoreJS) return; if (!path.isReferenced()) return; + if (path.node.computed) return; const { node } = path; const { object } = node; @@ -447,7 +448,6 @@ export default declare((api, options, dirname) => { name, ), node.property, - node.computed, ), ); }, diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/instance-computed/input.js b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/instance-computed/input.js new file mode 100644 index 000000000000..87ed431301c8 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/instance-computed/input.js @@ -0,0 +1 @@ +bar[filter]() \ No newline at end of file diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/instance-computed/options.json b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/instance-computed/options.json new file mode 100644 index 000000000000..5c04c7763001 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/instance-computed/options.json @@ -0,0 +1,3 @@ +{ + "plugins": [["transform-runtime", { "corejs": 2 }], "transform-regenerator"] +} diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/instance-computed/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/instance-computed/output.js new file mode 100644 index 000000000000..fcaaf3063d97 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs2/instance-computed/output.js @@ -0,0 +1 @@ +bar[filter](); diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/instance-computed/input.js b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/instance-computed/input.js new file mode 100644 index 000000000000..87ed431301c8 --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/instance-computed/input.js @@ -0,0 +1 @@ +bar[filter]() \ No newline at end of file diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/instance-computed/options.json b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/instance-computed/options.json new file mode 100644 index 000000000000..e41c386f01ea --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/instance-computed/options.json @@ -0,0 +1,3 @@ +{ + "plugins": [["transform-runtime", { "corejs": 3 }], "transform-regenerator"] +} diff --git a/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/instance-computed/output.js b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/instance-computed/output.js new file mode 100644 index 000000000000..983b263388cf --- /dev/null +++ b/packages/babel-plugin-transform-runtime/test/fixtures/runtime-corejs3/instance-computed/output.js @@ -0,0 +1,3 @@ +var _filterInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/filter"); + +_filterInstanceProperty(bar).call(bar);