From eae7a333166eb76ed7e66f50efb7902fda4b247b Mon Sep 17 00:00:00 2001 From: Sebastian Silbermann Date: Fri, 3 May 2019 23:35:28 +0200 Subject: [PATCH] Fix destructuring assignments being transpiled for edge 15 (#9902) * Current behavior for preset-env destructuring and edge * fix(preset-env): destructuring transpiled in edge 15 --- packages/babel-preset-env/data/plugin-features.js | 1 - packages/babel-preset-env/data/plugins.json | 2 +- .../preset-options/destructuring-edge/input.js | 3 +++ .../preset-options/destructuring-edge/options.json | 13 +++++++++++++ .../preset-options/destructuring-edge/output.js | 9 +++++++++ 5 files changed, 26 insertions(+), 2 deletions(-) create mode 100644 packages/babel-preset-env/test/fixtures/preset-options/destructuring-edge/input.js create mode 100644 packages/babel-preset-env/test/fixtures/preset-options/destructuring-edge/options.json create mode 100644 packages/babel-preset-env/test/fixtures/preset-options/destructuring-edge/output.js diff --git a/packages/babel-preset-env/data/plugin-features.js b/packages/babel-preset-env/data/plugin-features.js index 121b4bc582..3a84be3816 100644 --- a/packages/babel-preset-env/data/plugin-features.js +++ b/packages/babel-preset-env/data/plugin-features.js @@ -68,7 +68,6 @@ const es = { features: [ "destructuring, assignment", "destructuring, declarations", - "destructuring, parameters", ], }, "transform-block-scoping": { diff --git a/packages/babel-preset-env/data/plugins.json b/packages/babel-preset-env/data/plugins.json index 68c40f63b5..c175d039e9 100644 --- a/packages/babel-preset-env/data/plugins.json +++ b/packages/babel-preset-env/data/plugins.json @@ -173,7 +173,7 @@ }, "transform-destructuring": { "chrome": "51", - "edge": "18", + "edge": "15", "firefox": "53", "safari": "10", "node": "6.5", diff --git a/packages/babel-preset-env/test/fixtures/preset-options/destructuring-edge/input.js b/packages/babel-preset-env/test/fixtures/preset-options/destructuring-edge/input.js new file mode 100644 index 0000000000..e09b4ffd23 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options/destructuring-edge/input.js @@ -0,0 +1,3 @@ +((a, { b = 0, c = 3 }) => { + return a === 1 && b === 2 && c === 3; +})(1, { b: 2 }); diff --git a/packages/babel-preset-env/test/fixtures/preset-options/destructuring-edge/options.json b/packages/babel-preset-env/test/fixtures/preset-options/destructuring-edge/options.json new file mode 100644 index 0000000000..d14a50fd6c --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options/destructuring-edge/options.json @@ -0,0 +1,13 @@ +{ + "presets": [ + [ + "../../../../lib", + { + "targets": { + "browsers": ["edge >= 15"] + }, + "modules": false + } + ] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/preset-options/destructuring-edge/output.js b/packages/babel-preset-env/test/fixtures/preset-options/destructuring-edge/output.js new file mode 100644 index 0000000000..dfec033c1b --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/preset-options/destructuring-edge/output.js @@ -0,0 +1,9 @@ +((a, _ref) => { + let { + b = 0, + c = 3 + } = _ref; + return a === 1 && b === 2 && c === 3; +})(1, { + b: 2 +});