Don't polyfill if evaluation is not confident (#10397)
This commit is contained in:
parent
2e7bea4a6a
commit
5c859b1117
@ -107,7 +107,7 @@ export default function(
|
|||||||
if (isNamespaced(path.get("object"))) return;
|
if (isNamespaced(path.get("object"))) return;
|
||||||
|
|
||||||
let evaluatedPropType = object.name;
|
let evaluatedPropType = object.name;
|
||||||
let propertyName = property.name;
|
let propertyName = "";
|
||||||
let instanceType = "";
|
let instanceType = "";
|
||||||
|
|
||||||
if (node.computed) {
|
if (node.computed) {
|
||||||
@ -119,6 +119,8 @@ export default function(
|
|||||||
propertyName = result.value;
|
propertyName = result.value;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
propertyName = property.name;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (path.scope.getBindingIdentifier(object.name)) {
|
if (path.scope.getBindingIdentifier(object.name)) {
|
||||||
|
|||||||
5
packages/babel-preset-env/test/fixtures/corejs2/usage-evaluated-not-confident/input.mjs
vendored
Normal file
5
packages/babel-preset-env/test/fixtures/corejs2/usage-evaluated-not-confident/input.mjs
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
Object['values'](); // include
|
||||||
|
[]['map'](); // include
|
||||||
|
|
||||||
|
Object[keys](); // don't include
|
||||||
|
[][filter](); // don't include
|
||||||
12
packages/babel-preset-env/test/fixtures/corejs2/usage-evaluated-not-confident/options.json
vendored
Normal file
12
packages/babel-preset-env/test/fixtures/corejs2/usage-evaluated-not-confident/options.json
vendored
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
{
|
||||||
|
"presets": [
|
||||||
|
[
|
||||||
|
"../../../../lib",
|
||||||
|
{
|
||||||
|
"useBuiltIns": "usage",
|
||||||
|
"corejs": 2,
|
||||||
|
"modules": false
|
||||||
|
}
|
||||||
|
]
|
||||||
|
]
|
||||||
|
}
|
||||||
13
packages/babel-preset-env/test/fixtures/corejs2/usage-evaluated-not-confident/output.mjs
vendored
Normal file
13
packages/babel-preset-env/test/fixtures/corejs2/usage-evaluated-not-confident/output.mjs
vendored
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
import "core-js/modules/es6.array.map";
|
||||||
|
import "core-js/modules/web.dom.iterable";
|
||||||
|
import "core-js/modules/es6.array.iterator";
|
||||||
|
import "core-js/modules/es6.object.to-string";
|
||||||
|
import "core-js/modules/es7.object.values";
|
||||||
|
Object['values'](); // include
|
||||||
|
|
||||||
|
[]['map'](); // include
|
||||||
|
|
||||||
|
Object[keys](); // don't include
|
||||||
|
|
||||||
|
[][filter](); // don't include
|
||||||
|
|
||||||
Loading…
x
Reference in New Issue
Block a user