### `@babel/runtime` - Added `@babel/runtime-corejs3` package and `corejs: 3` options to `@babel/plugin-transform-runtime`. - Added support of instance methods, fixes #8928. - Added flag `proposals` (in `corejs: { version: 3, proposals: true }` format) for support all proposals polyfills from `core-js`. - Used separate directories in runtime for `core-js` entry points with proposals and without. - Used `get-iterator-method` helper for getting iterators, fixes #2500. - As a cheap bonus, added support of IE8- (except some cases of `regenerator`). ### `@babel/polyfill` - Should be deprecated in favor of separate usage required features from `core-js` and `regenerator-runtime` with an informative message. ### `@babel/preset-env` - Uses for built-ins data from [`core-js-compat`](https://github.com/zloirock/core-js/tree/master/packages/core-js-compat) instead of `compat-table` since information from `compat-table` [is not enough](https://github.com/zloirock/core-js/tree/master/packages/core-js-compat). - `useBuilIns` now requires direct setting of `corejs` version option, without it will be used `2` by default and shown deprecation warning. - Added support of minor `core-js` versions for simplify updating in the future. - For preventing some order-related problems, polyfills in the both `core-js@3` plugins added on `post` stage in the order of `core-js-compat` data. - Divided plugins and polyfills parts of `preset-env`, instead of 2 internal plugins for adding polyfills, we have 6: usage and entry versions of plugins for `core-js@2`, ### Current state: `core-js@3`, `regenerator-runtime`. - Added support `samsung` target (for Samsung Internet) since `core-js-compat` and `compat-table` now contains mapping for this, fixes #6602. #### `useBuilIns: entry` with `corejs: 3` - No longer transforms `@babel/polyfill`. - Transforms **all possible** `core-js` entry points to import of related modules (based on data from [`core-js-compat`](https://unpkg.com/core-js-compat@3.0.0-beta.15/entries.json)). - Since of this, we no longer need `shippedProposals` / `proposals` flags with `useBuilIns: entry`. - Removes `regenerator-runtime/runtime` import where it's not required. #### `useBuilIns: usage` with `corejs: 3` - In addition to `shippedProposals`, added flag `proposals` (in `corejs: { version: 3, proposals: true }` format) for polyfill all proposals from `core-js`. - Fixed list of dependencies in built-in definitions. - Improved the way of determination method / built-in name and source of this method. - Adds import of required polyfills on `MemberExpression`, `ObjectPattern`, `in` operator. - Adds import of required polyfills on access to global object properties. - Adds import of all required common iterators on all syntax features which use iterators protocol (`for-of`, destructuring, spread, `yield` delegation, etc.). - Adds import of promises on syntax features which use promises (async functions/generators, dynamic import, etc.), fixes #9250, #7402, etc. ### `core-js@2` stuff I didn't want to tough `core-js@2`-related stuff, however - Fixed some serious errors in definitions which breaks `Object.getOwnPropertySymbols`, `Symbol.toStringTag` logic, `Promise#finally`, `Array#forEach`, etc. - `Array#flatMap` and trim methods moved to stable features as a part of ES2019 and loaded by deprecated `@babel/polyfill` and `@babel/preset-env` with `corejs: 2` option.
306 lines
5.8 KiB
JSON
306 lines
5.8 KiB
JSON
{
|
|
"transform-template-literals": {
|
|
"chrome": "41",
|
|
"edge": "13",
|
|
"firefox": "34",
|
|
"node": "4",
|
|
"samsung": "3.4",
|
|
"opera": "28",
|
|
"electron": "0.24"
|
|
},
|
|
"transform-literals": {
|
|
"chrome": "44",
|
|
"edge": "12",
|
|
"firefox": "53",
|
|
"safari": "9",
|
|
"node": "4",
|
|
"ios": "9",
|
|
"samsung": "4",
|
|
"opera": "31",
|
|
"electron": "0.31"
|
|
},
|
|
"transform-function-name": {
|
|
"chrome": "51",
|
|
"firefox": "53",
|
|
"safari": "10",
|
|
"node": "6.5",
|
|
"ios": "10",
|
|
"samsung": "5",
|
|
"opera": "38",
|
|
"electron": "1.2"
|
|
},
|
|
"transform-arrow-functions": {
|
|
"chrome": "47",
|
|
"edge": "13",
|
|
"firefox": "45",
|
|
"safari": "10",
|
|
"node": "6",
|
|
"ios": "10",
|
|
"samsung": "5",
|
|
"opera": "34",
|
|
"electron": "0.36"
|
|
},
|
|
"transform-block-scoped-functions": {
|
|
"chrome": "41",
|
|
"edge": "12",
|
|
"firefox": "46",
|
|
"safari": "10",
|
|
"node": "4",
|
|
"ie": "11",
|
|
"ios": "10",
|
|
"samsung": "3.4",
|
|
"opera": "28",
|
|
"electron": "0.24"
|
|
},
|
|
"transform-classes": {
|
|
"chrome": "46",
|
|
"edge": "13",
|
|
"firefox": "45",
|
|
"safari": "10",
|
|
"node": "5",
|
|
"ios": "10",
|
|
"samsung": "5",
|
|
"opera": "33",
|
|
"electron": "0.36"
|
|
},
|
|
"transform-object-super": {
|
|
"chrome": "46",
|
|
"edge": "13",
|
|
"firefox": "45",
|
|
"safari": "10",
|
|
"node": "5",
|
|
"ios": "10",
|
|
"samsung": "5",
|
|
"opera": "33",
|
|
"electron": "0.36"
|
|
},
|
|
"transform-shorthand-properties": {
|
|
"chrome": "43",
|
|
"edge": "12",
|
|
"firefox": "33",
|
|
"safari": "9",
|
|
"node": "4",
|
|
"ios": "9",
|
|
"samsung": "4",
|
|
"opera": "30",
|
|
"electron": "0.29"
|
|
},
|
|
"transform-duplicate-keys": {
|
|
"chrome": "42",
|
|
"edge": "12",
|
|
"firefox": "34",
|
|
"safari": "9",
|
|
"node": "4",
|
|
"ios": "9",
|
|
"samsung": "3.4",
|
|
"opera": "29",
|
|
"electron": "0.27"
|
|
},
|
|
"transform-computed-properties": {
|
|
"chrome": "44",
|
|
"edge": "12",
|
|
"firefox": "34",
|
|
"safari": "7.1",
|
|
"node": "4",
|
|
"ios": "8",
|
|
"samsung": "4",
|
|
"opera": "31",
|
|
"electron": "0.31"
|
|
},
|
|
"transform-for-of": {
|
|
"chrome": "51",
|
|
"edge": "15",
|
|
"firefox": "53",
|
|
"safari": "10",
|
|
"node": "6.5",
|
|
"ios": "10",
|
|
"samsung": "5",
|
|
"opera": "38",
|
|
"electron": "1.2"
|
|
},
|
|
"transform-sticky-regex": {
|
|
"chrome": "49",
|
|
"edge": "13",
|
|
"firefox": "3",
|
|
"safari": "10",
|
|
"node": "6",
|
|
"ios": "10",
|
|
"samsung": "5",
|
|
"opera": "36",
|
|
"electron": "1"
|
|
},
|
|
"transform-dotall-regex": {
|
|
"chrome": "62",
|
|
"safari": "11.1",
|
|
"node": "8.10",
|
|
"ios": "11.3",
|
|
"samsung": "8.2",
|
|
"opera": "49",
|
|
"electron": "3.1"
|
|
},
|
|
"transform-unicode-regex": {
|
|
"chrome": "50",
|
|
"edge": "13",
|
|
"firefox": "46",
|
|
"safari": "12",
|
|
"node": "6",
|
|
"ios": "12",
|
|
"samsung": "5",
|
|
"opera": "37",
|
|
"electron": "1.1"
|
|
},
|
|
"transform-spread": {
|
|
"chrome": "46",
|
|
"edge": "13",
|
|
"firefox": "36",
|
|
"safari": "10",
|
|
"node": "5",
|
|
"ios": "10",
|
|
"samsung": "5",
|
|
"opera": "33",
|
|
"electron": "0.36"
|
|
},
|
|
"transform-parameters": {
|
|
"chrome": "49",
|
|
"edge": "18",
|
|
"firefox": "53",
|
|
"safari": "10",
|
|
"node": "6",
|
|
"ios": "10",
|
|
"samsung": "5",
|
|
"opera": "36",
|
|
"electron": "1"
|
|
},
|
|
"transform-destructuring": {
|
|
"chrome": "51",
|
|
"edge": "18",
|
|
"firefox": "53",
|
|
"safari": "10",
|
|
"node": "6.5",
|
|
"ios": "10",
|
|
"samsung": "5",
|
|
"opera": "38",
|
|
"electron": "1.2"
|
|
},
|
|
"transform-block-scoping": {
|
|
"chrome": "49",
|
|
"edge": "14",
|
|
"firefox": "51",
|
|
"safari": "10.1",
|
|
"node": "6",
|
|
"ios": "10.3",
|
|
"samsung": "5",
|
|
"opera": "36",
|
|
"electron": "1"
|
|
},
|
|
"transform-typeof-symbol": {
|
|
"chrome": "38",
|
|
"edge": "12",
|
|
"firefox": "36",
|
|
"safari": "9",
|
|
"node": "0.12",
|
|
"ios": "9",
|
|
"samsung": "3",
|
|
"opera": "25",
|
|
"electron": "0.2"
|
|
},
|
|
"transform-new-target": {
|
|
"chrome": "46",
|
|
"edge": "14",
|
|
"firefox": "41",
|
|
"safari": "10",
|
|
"node": "5",
|
|
"ios": "10",
|
|
"samsung": "5",
|
|
"opera": "33",
|
|
"electron": "0.36"
|
|
},
|
|
"transform-regenerator": {
|
|
"chrome": "50",
|
|
"edge": "13",
|
|
"firefox": "53",
|
|
"safari": "10",
|
|
"node": "6",
|
|
"ios": "10",
|
|
"samsung": "5",
|
|
"opera": "37",
|
|
"electron": "1.1"
|
|
},
|
|
"transform-exponentiation-operator": {
|
|
"chrome": "52",
|
|
"edge": "14",
|
|
"firefox": "52",
|
|
"safari": "10.1",
|
|
"node": "7",
|
|
"ios": "10.3",
|
|
"samsung": "6.2",
|
|
"opera": "39",
|
|
"electron": "1.3"
|
|
},
|
|
"transform-async-to-generator": {
|
|
"chrome": "55",
|
|
"edge": "15",
|
|
"firefox": "52",
|
|
"safari": "11",
|
|
"node": "7.6",
|
|
"ios": "11",
|
|
"samsung": "6.2",
|
|
"opera": "42",
|
|
"electron": "1.6"
|
|
},
|
|
"proposal-async-generator-functions": {
|
|
"chrome": "63",
|
|
"firefox": "57",
|
|
"safari": "12",
|
|
"node": "10",
|
|
"ios": "12",
|
|
"samsung": "8.2",
|
|
"opera": "50",
|
|
"electron": "3.1"
|
|
},
|
|
"proposal-object-rest-spread": {
|
|
"chrome": "60",
|
|
"firefox": "55",
|
|
"safari": "11.1",
|
|
"node": "8.3",
|
|
"ios": "11.3",
|
|
"samsung": "8.2",
|
|
"opera": "47",
|
|
"electron": "2.1"
|
|
},
|
|
"proposal-unicode-property-regex": {
|
|
"chrome": "64",
|
|
"safari": "11.1",
|
|
"node": "10",
|
|
"ios": "11.3",
|
|
"opera": "51",
|
|
"electron": "3.1"
|
|
},
|
|
"proposal-json-strings": {
|
|
"chrome": "66",
|
|
"firefox": "62",
|
|
"safari": "12",
|
|
"node": "10",
|
|
"ios": "12",
|
|
"opera": "53",
|
|
"electron": "3.1"
|
|
},
|
|
"proposal-optional-catch-binding": {
|
|
"chrome": "66",
|
|
"firefox": "58",
|
|
"safari": "11.1",
|
|
"node": "10",
|
|
"ios": "11.3",
|
|
"opera": "53",
|
|
"electron": "3.1"
|
|
},
|
|
"transform-named-capturing-groups-regex": {
|
|
"chrome": "64",
|
|
"safari": "11.1",
|
|
"node": "10",
|
|
"ios": "11.3",
|
|
"opera": "51",
|
|
"electron": "3.1"
|
|
}
|
|
}
|