### `@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.
77 lines
3.2 KiB
JSON
77 lines
3.2 KiB
JSON
{
|
|
"name": "@babel/preset-env",
|
|
"version": "7.3.4",
|
|
"description": "A Babel preset for each environment.",
|
|
"author": "Henry Zhu <hi@henryzoo.com>",
|
|
"homepage": "https://babeljs.io/",
|
|
"license": "MIT",
|
|
"publishConfig": {
|
|
"access": "public"
|
|
},
|
|
"repository": "https://github.com/babel/babel/tree/master/packages/babel-preset-env",
|
|
"main": "lib/index.js",
|
|
"scripts": {
|
|
"build-data": "node ./scripts/build-data.js; node ./scripts/build-modules-support.js"
|
|
},
|
|
"dependencies": {
|
|
"@babel/helper-module-imports": "^7.0.0",
|
|
"@babel/helper-plugin-utils": "^7.0.0",
|
|
"@babel/plugin-proposal-async-generator-functions": "^7.2.0",
|
|
"@babel/plugin-proposal-json-strings": "^7.2.0",
|
|
"@babel/plugin-proposal-object-rest-spread": "^7.3.4",
|
|
"@babel/plugin-proposal-optional-catch-binding": "^7.2.0",
|
|
"@babel/plugin-proposal-unicode-property-regex": "^7.2.0",
|
|
"@babel/plugin-syntax-async-generators": "^7.2.0",
|
|
"@babel/plugin-syntax-json-strings": "^7.2.0",
|
|
"@babel/plugin-syntax-object-rest-spread": "^7.2.0",
|
|
"@babel/plugin-syntax-optional-catch-binding": "^7.2.0",
|
|
"@babel/plugin-transform-arrow-functions": "^7.2.0",
|
|
"@babel/plugin-transform-async-to-generator": "^7.3.4",
|
|
"@babel/plugin-transform-block-scoped-functions": "^7.2.0",
|
|
"@babel/plugin-transform-block-scoping": "^7.3.4",
|
|
"@babel/plugin-transform-classes": "^7.3.4",
|
|
"@babel/plugin-transform-computed-properties": "^7.2.0",
|
|
"@babel/plugin-transform-destructuring": "^7.2.0",
|
|
"@babel/plugin-transform-dotall-regex": "^7.2.0",
|
|
"@babel/plugin-transform-duplicate-keys": "^7.2.0",
|
|
"@babel/plugin-transform-exponentiation-operator": "^7.2.0",
|
|
"@babel/plugin-transform-for-of": "^7.2.0",
|
|
"@babel/plugin-transform-function-name": "^7.2.0",
|
|
"@babel/plugin-transform-literals": "^7.2.0",
|
|
"@babel/plugin-transform-modules-amd": "^7.2.0",
|
|
"@babel/plugin-transform-modules-commonjs": "^7.2.0",
|
|
"@babel/plugin-transform-modules-systemjs": "^7.3.4",
|
|
"@babel/plugin-transform-modules-umd": "^7.2.0",
|
|
"@babel/plugin-transform-named-capturing-groups-regex": "^7.3.0",
|
|
"@babel/plugin-transform-new-target": "^7.0.0",
|
|
"@babel/plugin-transform-object-super": "^7.2.0",
|
|
"@babel/plugin-transform-parameters": "^7.2.0",
|
|
"@babel/plugin-transform-regenerator": "^7.3.4",
|
|
"@babel/plugin-transform-shorthand-properties": "^7.2.0",
|
|
"@babel/plugin-transform-spread": "^7.2.0",
|
|
"@babel/plugin-transform-sticky-regex": "^7.2.0",
|
|
"@babel/plugin-transform-template-literals": "^7.2.0",
|
|
"@babel/plugin-transform-typeof-symbol": "^7.2.0",
|
|
"@babel/plugin-transform-unicode-regex": "^7.2.0",
|
|
"@babel/types": "^7.3.4",
|
|
"browserslist": "^4.4.2",
|
|
"core-js-compat": "^3.0.0",
|
|
"invariant": "^2.2.2",
|
|
"js-levenshtein": "^1.1.3",
|
|
"semver": "^5.3.0"
|
|
},
|
|
"peerDependencies": {
|
|
"@babel/core": "^7.0.0-0"
|
|
},
|
|
"devDependencies": {
|
|
"@babel/cli": "^7.2.3",
|
|
"@babel/core": "^7.3.4",
|
|
"@babel/helper-fixtures": "^7.2.0",
|
|
"@babel/helper-plugin-test-runner": "^7.0.0",
|
|
"@babel/plugin-syntax-dynamic-import": "^7.2.0",
|
|
"caniuse-db": "1.0.30000938",
|
|
"compat-table": "kangax/compat-table#6d012ba020fa7415e8a2d29e87924bab79b128a3",
|
|
"electron-to-chromium": "1.3.113"
|
|
}
|
|
}
|