diff --git a/packages/babel-preset-env/src/plugins-compat-data.js b/packages/babel-preset-env/src/plugins-compat-data.js index 132cabc562eb..b437c1fe7831 100644 --- a/packages/babel-preset-env/src/plugins-compat-data.js +++ b/packages/babel-preset-env/src/plugins-compat-data.js @@ -19,4 +19,7 @@ for (const plugin of Object.keys(bugfixPlugins)) { } } +pluginsFiltered["proposal-class-properties"] = + pluginsFiltered["proposal-private-methods"]; + export { pluginsFiltered as plugins, bugfixPluginsFiltered as pluginsBugfixes }; diff --git a/packages/babel-preset-env/test/fixtures/debug/shippedProposals-chrome-80/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/shippedProposals-chrome-80/stdout.txt index 21c98a96cd9e..4589851ccb4e 100644 --- a/packages/babel-preset-env/test/fixtures/debug/shippedProposals-chrome-80/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/shippedProposals-chrome-80/stdout.txt @@ -9,7 +9,7 @@ Using modules transform: auto Using plugins: syntax-numeric-separator { "chrome":"80" } - syntax-class-properties { "chrome":"80" } + proposal-class-properties { "chrome":"80" } proposal-private-methods { "chrome":"80" } syntax-nullish-coalescing-operator { "chrome":"80" } syntax-optional-chaining { "chrome":"80" } diff --git a/packages/babel-preset-env/test/fixtures/shipped-proposals/node-12/input.js b/packages/babel-preset-env/test/fixtures/shipped-proposals/node-12/input.js new file mode 100644 index 000000000000..eebf5c5c33db --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/shipped-proposals/node-12/input.js @@ -0,0 +1,3 @@ +class A { + x; +} diff --git a/packages/babel-preset-env/test/fixtures/shipped-proposals/node-12/options.json b/packages/babel-preset-env/test/fixtures/shipped-proposals/node-12/options.json new file mode 100644 index 000000000000..db6fa3201cc5 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/shipped-proposals/node-12/options.json @@ -0,0 +1,8 @@ +{ + "presets": [ + ["env", { + "targets": { "node": 12 }, + "shippedProposals": true + }] + ] +} diff --git a/packages/babel-preset-env/test/fixtures/shipped-proposals/node-12/output.js b/packages/babel-preset-env/test/fixtures/shipped-proposals/node-12/output.js new file mode 100644 index 000000000000..9fc360134b36 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/shipped-proposals/node-12/output.js @@ -0,0 +1,8 @@ +function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } + +class A { + constructor() { + _defineProperty(this, "x", void 0); + } + +}