diff --git a/packages/babel-compat-data/data/plugins.json b/packages/babel-compat-data/data/plugins.json index bbc8eb991390..691587999eeb 100644 --- a/packages/babel-compat-data/data/plugins.json +++ b/packages/babel-compat-data/data/plugins.json @@ -1,4 +1,7 @@ { + "proposal-class-static-block": { + "chrome": "91" + }, "proposal-class-properties": { "chrome": "74", "opera": "62", @@ -28,6 +31,7 @@ }, "proposal-logical-assignment-operators": { "chrome": "85", + "opera": "71", "edge": "85", "firefox": "79", "safari": "14", diff --git a/packages/babel-compat-data/scripts/data/plugin-features.js b/packages/babel-compat-data/scripts/data/plugin-features.js index 3c4a0298c075..ca3deb5b2345 100644 --- a/packages/babel-compat-data/scripts/data/plugin-features.js +++ b/packages/babel-compat-data/scripts/data/plugin-features.js @@ -135,6 +135,7 @@ const es2021 = { }; const shippedProposal = { + "proposal-class-static-block": "Class static initialization blocks", "proposal-class-properties": { features: [ "static class fields", diff --git a/packages/babel-compat-data/scripts/download-compat-table.sh b/packages/babel-compat-data/scripts/download-compat-table.sh index b1e3030691cb..53793a1fe9bf 100755 --- a/packages/babel-compat-data/scripts/download-compat-table.sh +++ b/packages/babel-compat-data/scripts/download-compat-table.sh @@ -1,7 +1,7 @@ #!/bin/bash set -e -COMPAT_TABLE_COMMIT=ab73608bddb6895f6f3296c03dba057b47ba8aea +COMPAT_TABLE_COMMIT=ca2d70e305bc3295ade6b06a1c33a929db1ccacf GIT_HEAD=build/compat-table/.git/HEAD if [ -d "build/compat-table" ]; then diff --git a/packages/babel-preset-env/data/shipped-proposals.js b/packages/babel-preset-env/data/shipped-proposals.js index 95ca9b119225..96f531b55b68 100644 --- a/packages/babel-preset-env/data/shipped-proposals.js +++ b/packages/babel-preset-env/data/shipped-proposals.js @@ -4,13 +4,15 @@ const proposalPlugins = new Set([ "proposal-class-properties", - "proposal-private-methods" + "proposal-private-methods", + "proposal-class-static-block", ]); // use intermediary object to enforce alphabetical key order const pluginSyntaxObject = { "proposal-async-generator-functions": "syntax-async-generators", "proposal-class-properties": "syntax-class-properties", + "proposal-class-static-block": "syntax-class-static-block", "proposal-json-strings": "syntax-json-strings", "proposal-nullish-coalescing-operator": "syntax-nullish-coalescing-operator", "proposal-numeric-separator": "syntax-numeric-separator", diff --git a/packages/babel-preset-env/package.json b/packages/babel-preset-env/package.json index ebf977fe1af2..8714f22560e0 100644 --- a/packages/babel-preset-env/package.json +++ b/packages/babel-preset-env/package.json @@ -23,6 +23,7 @@ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "workspace:^7.13.12", "@babel/plugin-proposal-async-generator-functions": "workspace:^7.13.15", "@babel/plugin-proposal-class-properties": "workspace:^7.13.0", + "@babel/plugin-proposal-class-static-block": "workspace:^7.13.11", "@babel/plugin-proposal-dynamic-import": "workspace:^7.13.8", "@babel/plugin-proposal-export-namespace-from": "workspace:^7.12.13", "@babel/plugin-proposal-json-strings": "workspace:^7.13.8", @@ -36,6 +37,7 @@ "@babel/plugin-proposal-unicode-property-regex": "workspace:^7.12.13", "@babel/plugin-syntax-async-generators": "^7.8.4", "@babel/plugin-syntax-class-properties": "workspace:^7.12.13", + "@babel/plugin-syntax-class-static-block": "workspace:^7.12.13", "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-syntax-export-namespace-from": "^7.8.3", "@babel/plugin-syntax-json-strings": "^7.8.3", diff --git a/packages/babel-preset-env/src/available-plugins.js b/packages/babel-preset-env/src/available-plugins.js index cd28ffe48314..e55cc27debcc 100644 --- a/packages/babel-preset-env/src/available-plugins.js +++ b/packages/babel-preset-env/src/available-plugins.js @@ -3,6 +3,7 @@ import syntaxAsyncGenerators from "@babel/plugin-syntax-async-generators"; import syntaxClassProperties from "@babel/plugin-syntax-class-properties"; +import syntaxClassStaticBlock from "@babel/plugin-syntax-class-static-block"; import syntaxDynamicImport from "@babel/plugin-syntax-dynamic-import"; import syntaxExportNamespaceFrom from "@babel/plugin-syntax-export-namespace-from"; import syntaxJsonStrings from "@babel/plugin-syntax-json-strings"; @@ -15,6 +16,7 @@ import syntaxOptionalChaining from "@babel/plugin-syntax-optional-chaining"; import syntaxTopLevelAwait from "@babel/plugin-syntax-top-level-await"; import proposalAsyncGeneratorFunctions from "@babel/plugin-proposal-async-generator-functions"; import proposalClassProperties from "@babel/plugin-proposal-class-properties"; +import proposalClassStaticBlock from "@babel/plugin-proposal-class-static-block"; import proposalDynamicImport from "@babel/plugin-proposal-dynamic-import"; import proposalExportNamespaceFrom from "@babel/plugin-proposal-export-namespace-from"; import proposalJsonStrings from "@babel/plugin-proposal-json-strings"; @@ -78,6 +80,7 @@ export default { bugfixV8SpreadParametersInOptionalChaining, "proposal-async-generator-functions": () => proposalAsyncGeneratorFunctions, "proposal-class-properties": () => proposalClassProperties, + "proposal-class-static-block": () => proposalClassStaticBlock, "proposal-dynamic-import": () => proposalDynamicImport, "proposal-export-namespace-from": () => proposalExportNamespaceFrom, "proposal-json-strings": () => proposalJsonStrings, @@ -93,6 +96,7 @@ export default { "proposal-unicode-property-regex": () => proposalUnicodePropertyRegex, "syntax-async-generators": () => syntaxAsyncGenerators, "syntax-class-properties": () => syntaxClassProperties, + "syntax-class-static-block": () => syntaxClassStaticBlock, "syntax-dynamic-import": () => syntaxDynamicImport, "syntax-export-namespace-from": () => syntaxExportNamespaceFrom, "syntax-json-strings": () => syntaxJsonStrings, @@ -138,3 +142,7 @@ export default { "transform-unicode-escapes": () => transformUnicodeEscapes, "transform-unicode-regex": () => transformUnicodeRegex, }; + +export const minVersions = { + "proposal-class-static-block": "7.12.0", +}; diff --git a/packages/babel-preset-env/src/filter-items.js b/packages/babel-preset-env/src/filter-items.js index dacc2b25da9b..704d72e92c37 100644 --- a/packages/babel-preset-env/src/filter-items.js +++ b/packages/babel-preset-env/src/filter-items.js @@ -1,5 +1,11 @@ // @flow +import { lt } from "semver"; +import { minVersions } from "./available-plugins"; + +// $FlowIgnore +const has = Function.call.bind(Object.hasOwnProperty); + export function removeUnnecessaryItems( items: Set, overlapping: { [name: string]: string[] }, @@ -8,3 +14,13 @@ export function removeUnnecessaryItems( overlapping[item]?.forEach(name => items.delete(name)); }); } +export function removeUnsupportedItems( + items: Set, + babelVersion: string, +) { + items.forEach(item => { + if (has(minVersions, item) && lt(babelVersion, minVersions[item])) { + items.delete(item); + } + }); +} diff --git a/packages/babel-preset-env/src/index.js b/packages/babel-preset-env/src/index.js index b53dc5bbfd02..e6c083a03e5b 100644 --- a/packages/babel-preset-env/src/index.js +++ b/packages/babel-preset-env/src/index.js @@ -3,7 +3,7 @@ import { SemVer, lt } from "semver"; import { logPlugin } from "./debug"; import getOptionSpecificExcludesFor from "./get-option-specific-excludes"; -import { removeUnnecessaryItems } from "./filter-items"; +import { removeUnnecessaryItems, removeUnsupportedItems } from "./filter-items"; import moduleTransformations from "./module-transformations"; import normalizeOptions from "./normalize-options"; import { proposalPlugins, pluginSyntaxMap } from "../data/shipped-proposals"; @@ -374,6 +374,7 @@ option \`forceAllTransforms: true\` instead. pluginSyntaxMap, ); removeUnnecessaryItems(pluginNames, overlappingPlugins); + removeUnsupportedItems(pluginNames, api.version); const polyfillPlugins = getPolyfillPlugins({ useBuiltIns, diff --git a/packages/babel-preset-env/test/fixtures/bugfixes/_esmodules-no-bugfixes/stdout.txt b/packages/babel-preset-env/test/fixtures/bugfixes/_esmodules-no-bugfixes/stdout.txt index 42f73221bf37..0c37e0e95c1d 100644 --- a/packages/babel-preset-env/test/fixtures/bugfixes/_esmodules-no-bugfixes/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/bugfixes/_esmodules-no-bugfixes/stdout.txt @@ -17,7 +17,7 @@ Using modules transform: auto Using plugins: proposal-numeric-separator { android, chrome < 75, edge < 79, firefox < 70, ios < 13, opera < 62, safari < 13, samsung < 11 } - proposal-logical-assignment-operators { android, chrome < 85, edge < 85, firefox < 79, ios < 14, node < 15, opera, safari < 14, samsung } + proposal-logical-assignment-operators { android, chrome < 85, edge < 85, firefox < 79, ios < 14, node < 15, opera < 71, safari < 14, samsung } proposal-nullish-coalescing-operator { android, chrome < 80, edge < 80, firefox < 72, ios < 13.4, node < 14, opera < 67, safari < 13.1, samsung < 13 } proposal-optional-chaining { android, chrome, edge, firefox < 74, ios < 13.4, node, opera, safari < 13.1, samsung } proposal-json-strings { android, chrome < 66, edge < 79, firefox < 62, ios < 12, opera < 53, safari < 12, samsung < 9 } diff --git a/packages/babel-preset-env/test/fixtures/bugfixes/_esmodules/stdout.txt b/packages/babel-preset-env/test/fixtures/bugfixes/_esmodules/stdout.txt index 15e5dee9e627..0fd09ce95346 100644 --- a/packages/babel-preset-env/test/fixtures/bugfixes/_esmodules/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/bugfixes/_esmodules/stdout.txt @@ -17,7 +17,7 @@ Using modules transform: auto Using plugins: proposal-numeric-separator { android, chrome < 75, edge < 79, firefox < 70, ios < 13, opera < 62, safari < 13, samsung < 11 } - proposal-logical-assignment-operators { android, chrome < 85, edge < 85, firefox < 79, ios < 14, node < 15, opera, safari < 14, samsung } + proposal-logical-assignment-operators { android, chrome < 85, edge < 85, firefox < 79, ios < 14, node < 15, opera < 71, safari < 14, samsung } proposal-nullish-coalescing-operator { android, chrome < 80, edge < 80, firefox < 72, ios < 13.4, node < 14, opera < 67, safari < 13.1, samsung < 13 } proposal-optional-chaining { android, chrome < 80, edge < 80, firefox < 74, ios < 13.4, node < 14, opera < 67, safari < 13.1, samsung < 13 } proposal-json-strings { android, chrome < 66, edge < 79, firefox < 62, ios < 12, opera < 53, safari < 12, samsung < 9 } diff --git a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/stdout.txt b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/stdout.txt index 631b7f0721d0..7cdd1efc05ea 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/corejs2-babel-7/usage-browserslist-config-ignore/stdout.txt @@ -17,7 +17,7 @@ Using modules transform: false Using plugins: proposal-numeric-separator { android, chrome < 75, edge < 79, firefox < 70, ios < 13, opera < 62, safari < 13, samsung < 11 } - proposal-logical-assignment-operators { android, chrome < 85, edge < 85, firefox < 79, ios < 14, node < 15, opera, safari < 14, samsung } + proposal-logical-assignment-operators { android, chrome < 85, edge < 85, firefox < 79, ios < 14, node < 15, opera < 71, safari < 14, samsung } proposal-nullish-coalescing-operator { android, chrome < 80, edge < 80, firefox < 72, ios < 13.4, node < 14, opera < 67, safari < 13.1, samsung < 13 } proposal-optional-chaining { android, chrome, edge, firefox < 74, ios < 13.4, node, opera, safari < 13.1, samsung } proposal-json-strings { android, chrome < 66, edge < 79, firefox < 62, ios < 12, opera < 53, safari < 12, samsung < 9 } diff --git a/packages/babel-preset-env/test/fixtures/corejs2/usage-browserslist-config-ignore/stdout.txt b/packages/babel-preset-env/test/fixtures/corejs2/usage-browserslist-config-ignore/stdout.txt index 79357dc5d9a2..0bd98cef0e64 100644 --- a/packages/babel-preset-env/test/fixtures/corejs2/usage-browserslist-config-ignore/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/corejs2/usage-browserslist-config-ignore/stdout.txt @@ -17,7 +17,7 @@ Using modules transform: false Using plugins: proposal-numeric-separator { android, chrome < 75, edge < 79, firefox < 70, ios < 13, opera < 62, safari < 13, samsung < 11 } - proposal-logical-assignment-operators { android, chrome < 85, edge < 85, firefox < 79, ios < 14, node < 15, opera, safari < 14, samsung } + proposal-logical-assignment-operators { android, chrome < 85, edge < 85, firefox < 79, ios < 14, node < 15, opera < 71, safari < 14, samsung } proposal-nullish-coalescing-operator { android, chrome < 80, edge < 80, firefox < 72, ios < 13.4, node < 14, opera < 67, safari < 13.1, samsung < 13 } proposal-optional-chaining { android, chrome, edge, firefox < 74, ios < 13.4, node, opera, safari < 13.1, samsung } proposal-json-strings { android, chrome < 66, edge < 79, firefox < 62, ios < 12, opera < 53, safari < 12, samsung < 9 } diff --git a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/stdout.txt b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/stdout.txt index a7748e300869..9eab7e152d34 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/corejs3-babel-7/usage-browserslist-config-ignore/stdout.txt @@ -17,7 +17,7 @@ Using modules transform: false Using plugins: proposal-numeric-separator { android, chrome < 75, edge < 79, firefox < 70, ios < 13, opera < 62, safari < 13, samsung < 11 } - proposal-logical-assignment-operators { android, chrome < 85, edge < 85, firefox < 79, ios < 14, node < 15, opera, safari < 14, samsung } + proposal-logical-assignment-operators { android, chrome < 85, edge < 85, firefox < 79, ios < 14, node < 15, opera < 71, safari < 14, samsung } proposal-nullish-coalescing-operator { android, chrome < 80, edge < 80, firefox < 72, ios < 13.4, node < 14, opera < 67, safari < 13.1, samsung < 13 } proposal-optional-chaining { android, chrome, edge, firefox < 74, ios < 13.4, node, opera, safari < 13.1, samsung } proposal-json-strings { android, chrome < 66, edge < 79, firefox < 62, ios < 12, opera < 53, safari < 12, samsung < 9 } diff --git a/packages/babel-preset-env/test/fixtures/corejs3/usage-browserslist-config-ignore/stdout.txt b/packages/babel-preset-env/test/fixtures/corejs3/usage-browserslist-config-ignore/stdout.txt index e5d89c89b21f..cd7d64d4332a 100644 --- a/packages/babel-preset-env/test/fixtures/corejs3/usage-browserslist-config-ignore/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/corejs3/usage-browserslist-config-ignore/stdout.txt @@ -17,7 +17,7 @@ Using modules transform: false Using plugins: proposal-numeric-separator { android, chrome < 75, edge < 79, firefox < 70, ios < 13, opera < 62, safari < 13, samsung < 11 } - proposal-logical-assignment-operators { android, chrome < 85, edge < 85, firefox < 79, ios < 14, node < 15, opera, safari < 14, samsung } + proposal-logical-assignment-operators { android, chrome < 85, edge < 85, firefox < 79, ios < 14, node < 15, opera < 71, safari < 14, samsung } proposal-nullish-coalescing-operator { android, chrome < 80, edge < 80, firefox < 72, ios < 13.4, node < 14, opera < 67, safari < 13.1, samsung < 13 } proposal-optional-chaining { android, chrome, edge, firefox < 74, ios < 13.4, node, opera, safari < 13.1, samsung } proposal-json-strings { android, chrome < 66, edge < 79, firefox < 62, ios < 12, opera < 53, safari < 12, samsung < 9 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/stdout.txt index 4fdc05b00037..a8e9715c568e 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults-not-ie/stdout.txt @@ -16,7 +16,7 @@ Using modules transform: auto Using plugins: syntax-numeric-separator - proposal-logical-assignment-operators { firefox < 79, ios < 14, opera, safari < 14, samsung } + proposal-logical-assignment-operators { firefox < 79, ios < 14, safari < 14, samsung } proposal-nullish-coalescing-operator { samsung < 13 } proposal-optional-chaining { android, chrome, edge, opera, samsung } syntax-json-strings diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/stdout.txt index 23f2d20f3da7..197bc2316804 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-defaults/stdout.txt @@ -17,7 +17,7 @@ Using modules transform: auto Using plugins: proposal-numeric-separator { ie } - proposal-logical-assignment-operators { firefox < 79, ie, ios < 14, opera, safari < 14, samsung } + proposal-logical-assignment-operators { firefox < 79, ie, ios < 14, safari < 14, samsung } proposal-nullish-coalescing-operator { ie, samsung < 13 } proposal-optional-chaining { android, chrome, edge, ie, opera, samsung } proposal-json-strings { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/stdout.txt index 6d440cf6252c..9331710f11a1 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/browserslists-last-2-versions-not-ie/stdout.txt @@ -16,7 +16,7 @@ Using modules transform: auto Using plugins: syntax-numeric-separator - proposal-logical-assignment-operators { ios < 14, opera, safari < 14, samsung } + proposal-logical-assignment-operators { ios < 14, safari < 14, samsung } proposal-nullish-coalescing-operator { samsung < 13 } proposal-optional-chaining { android, chrome, edge, opera, samsung } syntax-json-strings diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/stdout.txt index 46d278445170..3a09cdfdf06a 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/stdout.txt index f4f6641ac0c5..d501bfc1feb4 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs2-shippedProposals/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/stdout.txt index dc86bbed9fe9..77289e9ab95b 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/stdout.txt index 8d7b4d3389aa..318d328c72cd 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-all/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/stdout.txt index eaffa745518f..5dd03a627f41 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-babel-polyfill/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/stdout.txt index c454431453a6..f96c3848b18f 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/stdout.txt index b7e01aa69a08..e7ba66cd362f 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/stdout.txt index d0fb08cf9467..1328e0db79c7 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es-proposals/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/stdout.txt index 5f068d904f24..aed2fa1fab54 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-es/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/stdout.txt index 9f7362b4e2b8..07769ffcb462 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/stdout.txt index 11cf90645ef4..0cd29b4f92bd 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-runtime-only/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/stdout.txt index f93cc3e10773..a6fd6d2963c3 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/stdout.txt index 366773ae7a2f..ba80ac716ddc 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-specific-entries/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/stdout.txt index 5bc404e9b678..21fc079d1b03 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/stdout.txt index 0e23886b3493..f8314e71a34d 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable-samsung-8.2/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { samsung } proposal-class-properties { samsung } proposal-private-methods { samsung } proposal-numeric-separator { samsung < 11 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/stdout.txt index 28ff2a66617c..57fed1f3eec8 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stable/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/stdout.txt index de365b9dee78..2875f456852a 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/stdout.txt index e0c4c918c161..5bc6800eaa49 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-stage/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/stdout.txt index 62fe20a66c2b..6075ed91436c 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/stdout.txt index 953e6a33baa0..a20e766fc632 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-corejs3-web/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/stdout.txt index 81c096b9f776..05b0129fa696 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/entry-no-corejs-shippedProposals/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/stdout.txt index 0acb58f0b130..d4d9db78cf16 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-80/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } syntax-numeric-separator diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/stdout.txt index 0e54afff9d06..dcdf235ab581 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/shippedProposals-chrome-84/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } syntax-class-properties syntax-numeric-separator proposal-logical-assignment-operators { chrome < 85 } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/stdout.txt index e407f9152d6b..4b1e5d5190da 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-1/stdout.txt @@ -10,6 +10,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91, firefox, ie } proposal-class-properties { chrome < 84, firefox, ie } proposal-private-methods { chrome < 84, firefox, ie } proposal-numeric-separator { chrome < 75, firefox < 70, ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/stdout.txt index e26f60286dd4..f8c122d3110a 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs2-shippedProposals-2/stdout.txt @@ -10,6 +10,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91, firefox, ie } proposal-class-properties { chrome < 84, firefox, ie } proposal-private-methods { chrome < 84, firefox, ie } proposal-numeric-separator { chrome < 75, firefox < 70, ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/stdout.txt index fbece58d8846..6382df362efd 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-1/stdout.txt @@ -10,6 +10,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91, firefox, ie } proposal-class-properties { chrome < 84, firefox, ie } proposal-private-methods { chrome < 84, firefox, ie } proposal-numeric-separator { chrome < 75, firefox < 70, ie } diff --git a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/stdout.txt index 48b38c9508ea..392519960df5 100644 --- a/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug-babel-7/usage-corejs3-shippedProposals-2/stdout.txt @@ -10,6 +10,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91, firefox, ie } proposal-class-properties { chrome < 84, firefox, ie } proposal-private-methods { chrome < 84, firefox, ie } proposal-numeric-separator { chrome < 75, firefox < 70, ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/browserslists-defaults-not-ie/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/browserslists-defaults-not-ie/stdout.txt index 4fdc05b00037..a8e9715c568e 100644 --- a/packages/babel-preset-env/test/fixtures/debug/browserslists-defaults-not-ie/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/browserslists-defaults-not-ie/stdout.txt @@ -16,7 +16,7 @@ Using modules transform: auto Using plugins: syntax-numeric-separator - proposal-logical-assignment-operators { firefox < 79, ios < 14, opera, safari < 14, samsung } + proposal-logical-assignment-operators { firefox < 79, ios < 14, safari < 14, samsung } proposal-nullish-coalescing-operator { samsung < 13 } proposal-optional-chaining { android, chrome, edge, opera, samsung } syntax-json-strings diff --git a/packages/babel-preset-env/test/fixtures/debug/browserslists-defaults/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/browserslists-defaults/stdout.txt index 23f2d20f3da7..197bc2316804 100644 --- a/packages/babel-preset-env/test/fixtures/debug/browserslists-defaults/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/browserslists-defaults/stdout.txt @@ -17,7 +17,7 @@ Using modules transform: auto Using plugins: proposal-numeric-separator { ie } - proposal-logical-assignment-operators { firefox < 79, ie, ios < 14, opera, safari < 14, samsung } + proposal-logical-assignment-operators { firefox < 79, ie, ios < 14, safari < 14, samsung } proposal-nullish-coalescing-operator { ie, samsung < 13 } proposal-optional-chaining { android, chrome, edge, ie, opera, samsung } proposal-json-strings { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/browserslists-last-2-versions-not-ie/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/browserslists-last-2-versions-not-ie/stdout.txt index 6d440cf6252c..9331710f11a1 100644 --- a/packages/babel-preset-env/test/fixtures/debug/browserslists-last-2-versions-not-ie/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/browserslists-last-2-versions-not-ie/stdout.txt @@ -16,7 +16,7 @@ Using modules transform: auto Using plugins: syntax-numeric-separator - proposal-logical-assignment-operators { ios < 14, opera, safari < 14, samsung } + proposal-logical-assignment-operators { ios < 14, safari < 14, samsung } proposal-nullish-coalescing-operator { samsung < 13 } proposal-optional-chaining { android, chrome, edge, opera, samsung } syntax-json-strings diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs2-shippedProposals-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs2-shippedProposals-chrome-71/stdout.txt index ee891b2ae609..b1a3ffb9057e 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs2-shippedProposals-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs2-shippedProposals-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs2-shippedProposals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs2-shippedProposals/stdout.txt index f31aa492b778..99be3a5df38e 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs2-shippedProposals/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs2-shippedProposals/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-all-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-all-chrome-71/stdout.txt index f3c25c754396..d1b82e2ad6df 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-all-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-all-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-all/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-all/stdout.txt index 18e8258a13d2..7901694de254 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-all/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-all/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-babel-polyfill/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-babel-polyfill/stdout.txt index 909d4cd88472..18dd722656c3 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-babel-polyfill/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-babel-polyfill/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es-chrome-71/stdout.txt index 68a32f4c6a3c..a2ceded6251c 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es-proposals-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es-proposals-chrome-71/stdout.txt index 2a469ad89469..5bdede8137a3 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es-proposals-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es-proposals-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es-proposals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es-proposals/stdout.txt index 33337ea5bb5d..03ef9fd230a5 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es-proposals/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es-proposals/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es/stdout.txt index 6ef8ba5ec098..0b482ee835d1 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-es/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-runtime-only-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-runtime-only-chrome-71/stdout.txt index 7a6747781b84..db8e43d642e9 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-runtime-only-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-runtime-only-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-runtime-only/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-runtime-only/stdout.txt index d9fdb85e583a..50a939baec4a 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-runtime-only/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-runtime-only/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-specific-entries-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-specific-entries-chrome-71/stdout.txt index 19da573692c5..42f6b7b4cca7 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-specific-entries-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-specific-entries-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-specific-entries/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-specific-entries/stdout.txt index 5944617c5103..d167c4dc2408 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-specific-entries/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-specific-entries/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stable-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stable-chrome-71/stdout.txt index f6dcf15d4edd..900f91a824e4 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stable-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stable-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stable-samsung-8.2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stable-samsung-8.2/stdout.txt index 1d6901575edd..95c730254e59 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stable-samsung-8.2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stable-samsung-8.2/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { samsung } proposal-class-properties { samsung } proposal-private-methods { samsung } proposal-numeric-separator { samsung < 11 } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stable/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stable/stdout.txt index fadcc3f1cc61..cbc58e06d152 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stable/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stable/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stage-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stage-chrome-71/stdout.txt index acc2ffc801f6..87fab870f1a0 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stage-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stage-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stage/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stage/stdout.txt index 81672aa19147..1daa69cfc3aa 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stage/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-stage/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-web-chrome-71/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-web-chrome-71/stdout.txt index b30d53e37a11..bed42c549da2 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-web-chrome-71/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-web-chrome-71/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } proposal-numeric-separator { chrome < 75 } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-web/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-web/stdout.txt index afdc9e133522..a2c948e73ce5 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-web/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-corejs3-web/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/entry-no-corejs-shippedProposals/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/entry-no-corejs-shippedProposals/stdout.txt index 3ed2b9947ab5..6bd31f22f5ca 100644 --- a/packages/babel-preset-env/test/fixtures/debug/entry-no-corejs-shippedProposals/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/entry-no-corejs-shippedProposals/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { ie } proposal-class-properties { ie } proposal-private-methods { ie } proposal-numeric-separator { ie } 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 0acb58f0b130..d4d9db78cf16 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 @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } proposal-class-properties { chrome < 84 } proposal-private-methods { chrome < 84 } syntax-numeric-separator diff --git a/packages/babel-preset-env/test/fixtures/debug/shippedProposals-chrome-84/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/shippedProposals-chrome-84/stdout.txt index 0e54afff9d06..dcdf235ab581 100644 --- a/packages/babel-preset-env/test/fixtures/debug/shippedProposals-chrome-84/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/shippedProposals-chrome-84/stdout.txt @@ -8,6 +8,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91 } syntax-class-properties syntax-numeric-separator proposal-logical-assignment-operators { chrome < 85 } diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-1/stdout.txt index 7c1dcb341166..5776ff9d0bd1 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-1/stdout.txt @@ -10,6 +10,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91, firefox, ie } proposal-class-properties { chrome < 84, firefox, ie } proposal-private-methods { chrome < 84, firefox, ie } proposal-numeric-separator { chrome < 75, firefox < 70, ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-2/stdout.txt index 1d2742434199..03be5fbb6f67 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs2-shippedProposals-2/stdout.txt @@ -10,6 +10,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91, firefox, ie } proposal-class-properties { chrome < 84, firefox, ie } proposal-private-methods { chrome < 84, firefox, ie } proposal-numeric-separator { chrome < 75, firefox < 70, ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-1/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-1/stdout.txt index 6493a1e743c1..7521b8ae98d9 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-1/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-1/stdout.txt @@ -10,6 +10,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91, firefox, ie } proposal-class-properties { chrome < 84, firefox, ie } proposal-private-methods { chrome < 84, firefox, ie } proposal-numeric-separator { chrome < 75, firefox < 70, ie } diff --git a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-2/stdout.txt b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-2/stdout.txt index b01795a91b64..d2290f9e64f5 100644 --- a/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-2/stdout.txt +++ b/packages/babel-preset-env/test/fixtures/debug/usage-corejs3-shippedProposals-2/stdout.txt @@ -10,6 +10,7 @@ Using targets: Using modules transform: auto Using plugins: + proposal-class-static-block { chrome < 91, firefox, ie } proposal-class-properties { chrome < 84, firefox, ie } proposal-private-methods { chrome < 84, firefox, ie } proposal-numeric-separator { chrome < 75, firefox < 70, ie } diff --git a/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-90/input.js b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-90/input.js new file mode 100644 index 000000000000..11f7d7c96d79 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-90/input.js @@ -0,0 +1,5 @@ +class A { + static { + register(A); + } +} diff --git a/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-90/options.json b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-90/options.json new file mode 100644 index 000000000000..ad2c3895655f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-90/options.json @@ -0,0 +1,4 @@ +{ + "targets": { "chrome": 90 }, + "presets": [["env", { "shippedProposals": true }]] +} diff --git a/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-90/output.js b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-90/output.js new file mode 100644 index 000000000000..53afe864cd8f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-90/output.js @@ -0,0 +1,5 @@ +class A { + static #_ = (() => { + register(A); + })(); +} diff --git a/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-91/input.js b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-91/input.js new file mode 100644 index 000000000000..11f7d7c96d79 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-91/input.js @@ -0,0 +1,5 @@ +class A { + static { + register(A); + } +} diff --git a/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-91/options.json b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-91/options.json new file mode 100644 index 000000000000..7b274ea47f8f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-91/options.json @@ -0,0 +1,4 @@ +{ + "targets": { "chrome": 91 }, + "presets": [["env", { "shippedProposals": true }]] +} diff --git a/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-91/output.js b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-91/output.js new file mode 100644 index 000000000000..11f7d7c96d79 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-chrome-91/output.js @@ -0,0 +1,5 @@ +class A { + static { + register(A); + } +} diff --git a/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-firefox-70/input.js b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-firefox-70/input.js new file mode 100644 index 000000000000..11f7d7c96d79 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-firefox-70/input.js @@ -0,0 +1,5 @@ +class A { + static { + register(A); + } +} diff --git a/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-firefox-70/options.json b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-firefox-70/options.json new file mode 100644 index 000000000000..8087baf63a86 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-firefox-70/options.json @@ -0,0 +1,4 @@ +{ + "targets": { "firefox": 70 }, + "presets": [["env", { "shippedProposals": true }]] +} diff --git a/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-firefox-70/output.js b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-firefox-70/output.js new file mode 100644 index 000000000000..6e4f4f2bcc2f --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/shipped-proposals/class-static-block-firefox-70/output.js @@ -0,0 +1,8 @@ +class A {} + +var _ = { + writable: true, + value: (() => { + register(A); + })() +}; diff --git a/yarn.lock b/yarn.lock index 139275394e94..7c5e6ec329b1 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1065,7 +1065,7 @@ __metadata: languageName: unknown linkType: soft -"@babel/plugin-proposal-class-static-block@workspace:*, @babel/plugin-proposal-class-static-block@workspace:packages/babel-plugin-proposal-class-static-block": +"@babel/plugin-proposal-class-static-block@workspace:*, @babel/plugin-proposal-class-static-block@workspace:^7.13.11, @babel/plugin-proposal-class-static-block@workspace:packages/babel-plugin-proposal-class-static-block": version: 0.0.0-use.local resolution: "@babel/plugin-proposal-class-static-block@workspace:packages/babel-plugin-proposal-class-static-block" dependencies: @@ -3076,6 +3076,7 @@ __metadata: "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "workspace:^7.13.12" "@babel/plugin-proposal-async-generator-functions": "workspace:^7.13.15" "@babel/plugin-proposal-class-properties": "workspace:^7.13.0" + "@babel/plugin-proposal-class-static-block": "workspace:^7.13.11" "@babel/plugin-proposal-dynamic-import": "workspace:^7.13.8" "@babel/plugin-proposal-export-namespace-from": "workspace:^7.12.13" "@babel/plugin-proposal-json-strings": "workspace:^7.13.8" @@ -3089,6 +3090,7 @@ __metadata: "@babel/plugin-proposal-unicode-property-regex": "workspace:^7.12.13" "@babel/plugin-syntax-async-generators": ^7.8.4 "@babel/plugin-syntax-class-properties": "workspace:^7.12.13" + "@babel/plugin-syntax-class-static-block": "workspace:^7.12.13" "@babel/plugin-syntax-dynamic-import": ^7.8.3 "@babel/plugin-syntax-export-namespace-from": ^7.8.3 "@babel/plugin-syntax-json-strings": ^7.8.3