Socket
Socket
Sign inDemoInstall

@babel/preset-env

Package Overview
Dependencies
Maintainers
4
Versions
175
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@babel/preset-env - npm Package Compare versions

Comparing version 7.0.0-beta.32 to 7.0.0-beta.33

data/unreleased-labels.js

6

CHANGELOG.md

@@ -265,3 +265,3 @@ # Changelog

Since we've (mostly @yavorsky) have fixed a number of bugs recently with the `debug` option output, we added the ability to assert stdout matches what we expect. Read the updated [CONTRIBUTING.md](https://github.com/babel/babel-preset-env/blob/master/CONTRIBUTING.md#testing-the-debug-option) for more info.
Since we've (mostly @yavorsky) have fixed a number of bugs recently with the `debug` option output, we added the ability to assert stdout matches what we expect. Read the updated [CONTRIBUTING.md](https://github.com/babel/experimental/babel-preset-env/blob/master/CONTRIBUTING.md#testing-the-debug-option) for more info.

@@ -446,3 +446,3 @@ - Fixes #143. Log correct targets. ([#155](https://github.com/babel/babel-preset-env/pull/155)) (@yavorsky)

If you pass a wrong plugin it will error: valid options for `include/exclude` are in [/data/plugin-features.js](https://github.com/babel/babel-preset-env/blob/master/data/plugin-features.js) and [/data/built-in-features.js](https://github.com/babel/babel-preset-env/blob/master/data/built-in-features.js) (without the `es6.`)
If you pass a wrong plugin it will error: valid options for `include/exclude` are in [/data/plugin-features.js](https://github.com/babel/experimental/babel-preset-env/blob/master/data/plugin-features.js) and [/data/built-in-features.js](https://github.com/babel/experimental/babel-preset-env/blob/master/data/built-in-features.js) (without the `es6.`)

@@ -560,3 +560,3 @@ ### :house: Internal

> Currently we are manually updating the data in [/data/electron-to-chromium.js](https://github.com/babel/babel-preset-env/blob/master/data/electron-to-chromium.js), but [@kevinsawicki](https://github.com/kevinsawicki) says we could generate the data from [atom-shell/dist/index.json](https://gh-contractor-zcbenz.s3.amazonaws.com/atom-shell/dist/index.json) as well! (Someone should make a PR :smile:)
> Currently we are manually updating the data in [/data/electron-to-chromium.js](https://github.com/babel/experimental/babel-preset-env/blob/master/data/electron-to-chromium.js), but [@kevinsawicki](https://github.com/kevinsawicki) says we could generate the data from [atom-shell/dist/index.json](https://gh-contractor-zcbenz.s3.amazonaws.com/atom-shell/dist/index.json) as well! (Someone should make a PR :smile:)

@@ -563,0 +563,0 @@

@@ -5,3 +5,3 @@ # Contributing

### Update [`plugin-features.js`](https://github.com/babel/babel-preset-env/blob/master/data/plugin-features.js)
### Update [`plugin-features.js`](https://github.com/babel/babel/blob/master/packages/babel-preset-env/data/plugin-features.js)

@@ -18,3 +18,3 @@ *Example:*

`transform-exponentiation-operator`
`@babel/plugin-transform-exponentiation-operator`

@@ -25,3 +25,3 @@ And add them in this structure:

// es2016
"@babel/transform-exponentiation-operator": {
"@babel/plugin-transform-exponentiation-operator": {
features: [

@@ -33,3 +33,3 @@ "exponentiation (**) operator",

### Update [`built-in-features.js`](https://github.com/babel/babel-preset-env/blob/master/data/built-in-features.js)
### Update [`built-in-features.js`](https://github.com/babel/babel/blob/master/packages/babel-preset-env/data/built-in-features.js)

@@ -49,3 +49,3 @@ *Example:*

Find required ES version in [`built-in-features.js`](https://github.com/babel/babel-preset-env/blob/master/data/built-in-features.js) and add the new feature:
Find required ES version in [`built-in-features.js`](https://github.com/babel/babel/blob/master/packages/babel-preset-env/data/built-in-features.js) and add the new feature:

@@ -59,3 +59,3 @@ ```js

### Update [`plugins.json`](https://github.com/babel/babel-preset-env/blob/master/data/plugins.json)
### Update [`plugins.json`](https://github.com/babel/babel/blob/master/packages/babel-preset-env/data/plugins.json)

@@ -86,3 +86,3 @@ Until `compat-table` is a standalone npm module for data we are using the git url

All the tests for `babel-preset-env` exist in the `test/fixtures` folder. The
All the tests for `@babel/preset-env` exist in the `test/fixtures` folder. The
test setup and conventions are exactly the same as testing a Babel plugin, so

@@ -89,0 +89,0 @@ please read our [documentation on writing tests](https://github.com/babel/babel/blob/master/CONTRIBUTING.md#babel-plugin-x).

@@ -951,4 +951,6 @@ {

"chrome": "63",
"firefox": "58",
"safari": "tp",
"opera": "50"
}
}

@@ -234,2 +234,3 @@ {

"firefox": "57",
"safari": "tp",
"opera": "50"

@@ -240,7 +241,13 @@ },

"firefox": "55",
"safari": "tp",
"node": "8.3",
"opera": "47"
},
"proposal-optional-catch-binding": {},
"proposal-unicode-property-regex": {}
"proposal-optional-catch-binding": {
"firefox": "58",
"safari": "tp"
},
"proposal-unicode-property-regex": {
"safari": "tp"
}
}

@@ -63,2 +63,8 @@ "use strict";

if ((0, _utils.isUnreleasedVersion)(lowestTargetedVersion, environment)) {
return false;
} else if ((0, _utils.isUnreleasedVersion)(lowestImplementedVersion, environment)) {
return true;
}
if (!_semver.default.valid(lowestTargetedVersion)) {

@@ -109,17 +115,24 @@ throw new Error("Invalid version passed for target \"" + environment + "\": \"" + lowestTargetedVersion + "\". Versions must be in semver format (major.minor.patch)");

var filterItems = function filterItems(list, includes, excludes, targets, defaultItems) {
var getOptionSpecificExcludesFor = function getOptionSpecificExcludesFor(_ref) {
var loose = _ref.loose;
var defaultExcludes = [];
if (loose) {
defaultExcludes.push("transform-typeof-symbol");
}
return defaultExcludes;
};
var filterItems = function filterItems(list, includes, excludes, targets, defaultIncludes, defaultExcludes) {
var result = new Set();
for (var item in list) {
var excluded = excludes.has(item);
if (!excludes.has(item) && (isPluginRequired(targets, list[item]) || includes.has(item))) {
result.add(item);
} else {
var shippedProposalsSyntax = _shippedProposals.pluginSyntaxMap.get(item);
if (!excluded) {
if (isPluginRequired(targets, list[item])) {
result.add(item);
} else {
var shippedProposalsSyntax = _shippedProposals.pluginSyntaxMap.get(item);
if (shippedProposalsSyntax) {
result.add(shippedProposalsSyntax);
}
if (shippedProposalsSyntax) {
result.add(shippedProposalsSyntax);
}

@@ -129,4 +142,4 @@ }

if (defaultItems) {
defaultItems.forEach(function (item) {
if (defaultIncludes) {
defaultIncludes.forEach(function (item) {
return !excludes.has(item) && result.add(item);

@@ -136,5 +149,8 @@ });

includes.forEach(function (item) {
return result.add(item);
});
if (defaultExcludes) {
defaultExcludes.forEach(function (item) {
return !includes.has(item) && result.delete(item);
});
}
return result;

@@ -180,3 +196,5 @@ };

var transformTargets = forceAllTransforms || hasUglifyTarget ? {} : targets;
var transformations = filterItems(shippedProposals ? _plugins.default : pluginListWithoutProposals, include.plugins, exclude.plugins, transformTargets);
var transformations = filterItems(shippedProposals ? _plugins.default : pluginListWithoutProposals, include.plugins, exclude.plugins, transformTargets, null, getOptionSpecificExcludesFor({
loose: loose
}));
var polyfills;

@@ -183,0 +201,0 @@ var polyfillTargets;

"use strict";
exports.__esModule = true;
exports.default = void 0;
exports.default = exports.semverMin = void 0;

@@ -35,2 +35,4 @@ var _browserslist = _interopRequireDefault(require("browserslist"));

exports.semverMin = semverMin;
var mergeBrowsers = function mergeBrowsers(fromQuery, fromTarget) {

@@ -59,3 +61,8 @@ return Object.keys(fromTarget).reduce(function (queryObj, targKey) {

try {
var splitVersion = browserVersion.split("-")[0];
var splitVersion = browserVersion.split("-")[0].toLowerCase();
if ((0, _utils.isUnreleasedVersion)(splitVersion, browserName)) {
all[normalizedBrowserName] = (0, _utils.getLowestUnreleased)(all[normalizedBrowserName], splitVersion, browserName);
}
var parsedBrowserVersion = (0, _utils.semverify)(splitVersion);

@@ -89,3 +96,4 @@ all[normalizedBrowserName] = semverMin(all[normalizedBrowserName], parsedBrowserVersion);

__default: function __default(target, value) {
return [target, (0, _utils.semverify)(value)];
var version = (0, _utils.isUnreleasedVersion)(value, target) ? value.toLowerCase() : (0, _utils.semverify)(value);
return [target, version];
},

@@ -92,0 +100,0 @@ node: function node(target, value) {

@@ -178,7 +178,6 @@ "use strict";

if (!t.isObjectPattern(node.id)) return;
var props = node.id.properties;
if (!t.isReferenced(obj, node)) return;
if (path.scope.getBindingIdentifier(obj.name)) return;
if (obj && path.scope.getBindingIdentifier(obj.name)) return;
for (var _iterator2 = props, _isArray2 = Array.isArray(_iterator2), _i3 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) {
for (var _iterator2 = node.id.properties, _isArray2 = Array.isArray(_iterator2), _i3 = 0, _iterator2 = _isArray2 ? _iterator2 : _iterator2[Symbol.iterator]();;) {
var _ref3;

@@ -185,0 +184,0 @@

"use strict";
exports.__esModule = true;
exports.createImport = exports.getModulePath = exports.isRequire = exports.isPolyfillSource = exports.filterStageFromList = exports.prettifyTargets = exports.prettifyVersion = exports.semverify = void 0;
exports.createImport = exports.getModulePath = exports.isRequire = exports.isPolyfillSource = exports.filterStageFromList = exports.getLowestUnreleased = exports.isUnreleasedVersion = exports.prettifyTargets = exports.prettifyVersion = exports.semverify = void 0;
var _semver = _interopRequireDefault(require("semver"));
var _unreleasedLabels = _interopRequireDefault(require("../data/unreleased-labels"));
var _targetsParser = require("./targets-parser");
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

@@ -53,4 +57,5 @@

var value = targets[target];
var unreleasedLabel = _unreleasedLabels.default[target];
if (typeof value === "string") {
if (typeof value === "string" && unreleasedLabel !== value) {
value = prettifyVersion(value);

@@ -66,2 +71,24 @@ }

var isUnreleasedVersion = function isUnreleasedVersion(version, env) {
var unreleasedLabel = _unreleasedLabels.default[env];
return unreleasedLabel && unreleasedLabel === version.toString().toLowerCase();
};
exports.isUnreleasedVersion = isUnreleasedVersion;
var getLowestUnreleased = function getLowestUnreleased(a, b, env) {
var unreleasedLabel = _unreleasedLabels.default[env];
var hasUnreleased = [a, b].some(function (item) {
return item === unreleasedLabel;
});
if (hasUnreleased) {
return a === hasUnreleased ? b : a || b;
}
return (0, _targetsParser.semverMin)(a, b);
};
exports.getLowestUnreleased = getLowestUnreleased;
var filterStageFromList = function filterStageFromList(list, stageList) {

@@ -68,0 +95,0 @@ return Object.keys(list).reduce(function (result, item) {

{
"name": "@babel/preset-env",
"version": "7.0.0-beta.32",
"version": "7.0.0-beta.33",
"description": "A Babel preset for each environment.",

@@ -8,3 +8,3 @@ "author": "Henry Zhu <hi@henryzoo.com>",

"license": "MIT",
"repository": "https://github.com/babel/babel/tree/master/experimental/babel-preset-env",
"repository": "https://github.com/babel/babel/tree/master/packages/babel-preset-env",
"main": "lib/index.js",

@@ -15,36 +15,36 @@ "scripts": {

"dependencies": {
"@babel/plugin-check-constants": "7.0.0-beta.32",
"@babel/plugin-proposal-async-generator-functions": "7.0.0-beta.32",
"@babel/plugin-proposal-object-rest-spread": "7.0.0-beta.32",
"@babel/plugin-proposal-optional-catch-binding": "7.0.0-beta.32",
"@babel/plugin-proposal-unicode-property-regex": "7.0.0-beta.32",
"@babel/plugin-syntax-async-generators": "7.0.0-beta.32",
"@babel/plugin-syntax-object-rest-spread": "7.0.0-beta.32",
"@babel/plugin-syntax-optional-catch-binding": "7.0.0-beta.32",
"@babel/plugin-transform-arrow-functions": "7.0.0-beta.32",
"@babel/plugin-transform-async-to-generator": "7.0.0-beta.32",
"@babel/plugin-transform-block-scoped-functions": "7.0.0-beta.32",
"@babel/plugin-transform-block-scoping": "7.0.0-beta.32",
"@babel/plugin-transform-classes": "7.0.0-beta.32",
"@babel/plugin-transform-computed-properties": "7.0.0-beta.32",
"@babel/plugin-transform-destructuring": "7.0.0-beta.32",
"@babel/plugin-transform-duplicate-keys": "7.0.0-beta.32",
"@babel/plugin-transform-exponentiation-operator": "7.0.0-beta.32",
"@babel/plugin-transform-for-of": "7.0.0-beta.32",
"@babel/plugin-transform-function-name": "7.0.0-beta.32",
"@babel/plugin-transform-literals": "7.0.0-beta.32",
"@babel/plugin-transform-modules-amd": "7.0.0-beta.32",
"@babel/plugin-transform-modules-commonjs": "7.0.0-beta.32",
"@babel/plugin-transform-modules-systemjs": "7.0.0-beta.32",
"@babel/plugin-transform-modules-umd": "7.0.0-beta.32",
"@babel/plugin-transform-new-target": "7.0.0-beta.32",
"@babel/plugin-transform-object-super": "7.0.0-beta.32",
"@babel/plugin-transform-parameters": "7.0.0-beta.32",
"@babel/plugin-transform-regenerator": "7.0.0-beta.32",
"@babel/plugin-transform-shorthand-properties": "7.0.0-beta.32",
"@babel/plugin-transform-spread": "7.0.0-beta.32",
"@babel/plugin-transform-sticky-regex": "7.0.0-beta.32",
"@babel/plugin-transform-template-literals": "7.0.0-beta.32",
"@babel/plugin-transform-typeof-symbol": "7.0.0-beta.32",
"@babel/plugin-transform-unicode-regex": "7.0.0-beta.32",
"@babel/plugin-check-constants": "7.0.0-beta.33",
"@babel/plugin-proposal-async-generator-functions": "7.0.0-beta.33",
"@babel/plugin-proposal-object-rest-spread": "7.0.0-beta.33",
"@babel/plugin-proposal-optional-catch-binding": "7.0.0-beta.33",
"@babel/plugin-proposal-unicode-property-regex": "7.0.0-beta.33",
"@babel/plugin-syntax-async-generators": "7.0.0-beta.33",
"@babel/plugin-syntax-object-rest-spread": "7.0.0-beta.33",
"@babel/plugin-syntax-optional-catch-binding": "7.0.0-beta.33",
"@babel/plugin-transform-arrow-functions": "7.0.0-beta.33",
"@babel/plugin-transform-async-to-generator": "7.0.0-beta.33",
"@babel/plugin-transform-block-scoped-functions": "7.0.0-beta.33",
"@babel/plugin-transform-block-scoping": "7.0.0-beta.33",
"@babel/plugin-transform-classes": "7.0.0-beta.33",
"@babel/plugin-transform-computed-properties": "7.0.0-beta.33",
"@babel/plugin-transform-destructuring": "7.0.0-beta.33",
"@babel/plugin-transform-duplicate-keys": "7.0.0-beta.33",
"@babel/plugin-transform-exponentiation-operator": "7.0.0-beta.33",
"@babel/plugin-transform-for-of": "7.0.0-beta.33",
"@babel/plugin-transform-function-name": "7.0.0-beta.33",
"@babel/plugin-transform-literals": "7.0.0-beta.33",
"@babel/plugin-transform-modules-amd": "7.0.0-beta.33",
"@babel/plugin-transform-modules-commonjs": "7.0.0-beta.33",
"@babel/plugin-transform-modules-systemjs": "7.0.0-beta.33",
"@babel/plugin-transform-modules-umd": "7.0.0-beta.33",
"@babel/plugin-transform-new-target": "7.0.0-beta.33",
"@babel/plugin-transform-object-super": "7.0.0-beta.33",
"@babel/plugin-transform-parameters": "7.0.0-beta.33",
"@babel/plugin-transform-regenerator": "7.0.0-beta.33",
"@babel/plugin-transform-shorthand-properties": "7.0.0-beta.33",
"@babel/plugin-transform-spread": "7.0.0-beta.33",
"@babel/plugin-transform-sticky-regex": "7.0.0-beta.33",
"@babel/plugin-transform-template-literals": "7.0.0-beta.33",
"@babel/plugin-transform-typeof-symbol": "7.0.0-beta.33",
"@babel/plugin-transform-unicode-regex": "7.0.0-beta.33",
"browserslist": "^2.4.0",

@@ -55,12 +55,12 @@ "invariant": "^2.2.2",

"peerDependencies": {
"@babel/core": "7.0.0-beta.32"
"@babel/core": "7.0.0-beta.33"
},
"devDependencies": {
"@babel/cli": "7.0.0-beta.32",
"@babel/core": "7.0.0-beta.32",
"@babel/helper-fixtures": "7.0.0-beta.32",
"@babel/helper-plugin-test-runner": "7.0.0-beta.32",
"compat-table": "kangax/compat-table#957f1ff15972e8fb2892a172f985e9af27bf1c75",
"@babel/cli": "7.0.0-beta.33",
"@babel/core": "7.0.0-beta.33",
"@babel/helper-fixtures": "7.0.0-beta.33",
"@babel/helper-plugin-test-runner": "7.0.0-beta.33",
"compat-table": "kangax/compat-table#baed064b31147eda2fb268ea708013d6208b8615",
"electron-to-chromium": "^1.3.27"
}
}

@@ -13,3 +13,3 @@ # @babel/preset-env [![npm](https://img.shields.io/npm/v/babel-preset-env.svg)](https://www.npmjs.com/package/babel-preset-env) [![travis](https://img.shields.io/travis/babel/babel-preset-env/master.svg)](https://travis-ci.org/babel/babel-preset-env) [![npm-downloads](https://img.shields.io/npm/dm/babel-preset-env.svg)](https://www.npmjs.com/package/babel-preset-env) [![codecov](https://img.shields.io/codecov/c/github/babel/babel-preset-env/master.svg?maxAge=43200)](https://codecov.io/github/babel/babel-preset-env)

{
"presets": ["@babel/env"]
"presets": ["@babel/preset-env"]
}

@@ -25,3 +25,3 @@ ```

"presets": [
["@babel/env", {
["@babel/preset-env", {
"targets": {

@@ -35,3 +35,3 @@ "browsers": ["last 2 versions", "safari >= 7"]

Similarly, if you're targeting Node.js instead of the browser, you can configure babel-preset-env to only include the polyfills and transforms necessary for a particular version:
Similarly, if you're targeting Node.js instead of the browser, you can configure @babel/preset-env to only include the polyfills and transforms necessary for a particular version:

@@ -41,3 +41,3 @@ ```json

"presets": [
["@babel/env", {
["@babel/preset-env", {
"targets": {

@@ -56,3 +56,3 @@ "node": "6.10"

"presets": [
["@babel/env", {
["@babel/preset-env", {
"targets": {

@@ -81,3 +81,3 @@ "node": "current"

We can periodically run [build-data.js](https://github.com/babel/babel-preset-env/blob/master/scripts/build-data.js) which generates [plugins.json](https://github.com/babel/babel-preset-env/blob/master/data/plugins.json).
We can periodically run [build-data.js](https://github.com/babel/packages/babel-preset-env/blob/master/scripts/build-data.js) which generates [plugins.json](https://github.com/babel/packages/babel-preset-env/blob/master/data/plugins.json).

@@ -88,3 +88,3 @@ Ref: [#7](https://github.com/babel/babel-preset-env/issues/7)

> Currently located at [plugin-features.js](https://github.com/babel/babel-preset-env/blob/master/data/plugin-features.js).
> Currently located at [plugin-features.js](https://github.com/babel/packages/babel-preset-env/blob/master/data/plugin-features.js).

@@ -127,3 +127,3 @@ This should be straightforward to do in most cases. There might be cases where plugins should be split up more or certain plugins aren't standalone enough (or impossible to do).

"presets": [
["@babel/env", {
["@babel/preset-env", {
"useBuiltIns": "entry"

@@ -178,3 +178,3 @@ }]

{
"presets": ["@babel/env"]
"presets": ["@babel/preset-env"]
}

@@ -193,7 +193,7 @@ ```

Each target environment takes a number or a string (we recommend using a string when specifying minor versions like `node: "6.10"`).
Each target environment takes a number or a string (we recommend using a string when specifying minor versions like `node: "6.10"`). You can also specify `tp` (technology preview) version for Safari.
Example environments: `chrome`, `opera`, `edge`, `firefox`, `safari`, `ie`, `ios`, `android`, `node`, `electron`.
The [data](https://github.com/babel/babel-preset-env/blob/master/data/plugins.json) for this is generated by running the [build-data script](https://github.com/babel/babel-preset-env/blob/master/scripts/build-data.js) which pulls in data from [compat-table](https://kangax.github.io/compat-table).
The [data](https://github.com/babel/packages/babel-preset-env/blob/master/data/plugins.json) for this is generated by running the [build-data script](https://github.com/babel/packages/babel-preset-env/blob/master/scripts/build-data.js) which pulls in data from [compat-table](https://kangax.github.io/compat-table).

@@ -210,3 +210,3 @@ ### `targets.node`

A query to select browsers (ex: last 2 versions, > 5%) using [browserslist](https://github.com/ai/browserslist).
A query to select browsers (ex: last 2 versions, > 5%, safari tp) using [browserslist](https://github.com/ai/browserslist).

@@ -239,3 +239,3 @@ Note, browsers' results are overridden by explicit items from `targets`.

Outputs the targets/plugins used and the version specified in [plugin data version](https://github.com/babel/babel-preset-env/blob/master/data/plugins.json) to `console.log`.
Outputs the targets/plugins used and the version specified in [plugin data version](https://github.com/babel/packages/babel-preset-env/blob/master/data/plugins.json) to `console.log`.

@@ -250,11 +250,11 @@ ### `include`

- [Babel plugins](https://github.com/babel/babel-preset-env/blob/master/data/plugin-features.js) - both with (`@babel/plugin-transform-spread`) and without prefix (`transform-spread`) are supported.
- [Babel plugins](https://github.com/babel/packages/babel-preset-env/blob/master/data/plugin-features.js) - both with (`@babel/plugin-transform-spread`) and without prefix (`plugin-transform-spread`) are supported.
- [Built-ins](https://github.com/babel/babel-preset-env/blob/master/data/built-in-features.js), such as `map`, `set`, or `object.assign`.
- [Built-ins](https://github.com/babel/packages/babel-preset-env/blob/master/data/built-in-features.js), such as `map`, `set`, or `object.assign`.
This option is useful if there is a bug in a native implementation, or a combination of a non-supported feature + a supported one doesn't work.
For example, Node 4 supports native classes but not spread. If `super` is used with a spread argument, then the `transform-classes` transform needs to be `include`d, as it is not possible to transpile a spread with `super` otherwise.
For example, Node 4 supports native classes but not spread. If `super` is used with a spread argument, then the `@babel/plugin-transform-classes` transform needs to be `include`d, as it is not possible to transpile a spread with `super` otherwise.
> NOTE: The `include` and `exclude` options _only_ work with the [plugins included with this preset](https://github.com/babel/babel-preset-env/blob/master/data/plugin-features.js); so, for example, including `proposal-do-expressions` or excluding `proposal-function-bind` will throw errors. To use a plugin _not_ included with this preset, add them to your [config](https://babeljs.io/docs/usage/babelrc/) directly.
> NOTE: The `include` and `exclude` options _only_ work with the [plugins included with this preset](https://github.com/babel/packages/babel-preset-env/blob/master/data/plugin-features.js); so, for example, including `@babel/plugin-proposal-do-expressions` or excluding `@babel/plugin-proposal-function-bind` will throw errors. To use a plugin _not_ included with this preset, add them to your [config](https://babeljs.io/docs/usage/babelrc/) directly.

@@ -269,3 +269,3 @@ ### `exclude`

This option is useful for "blacklisting" a transform like `transform-regenerator` if you don't use generators and don't want to include `regeneratorRuntime` (when using `useBuiltIns`) or for using another plugin like [fast-async](https://github.com/MatAtBread/fast-async) instead of [Babel's async-to-gen](http://babeljs.io/docs/plugins/proposal-async-generator-functions/).
This option is useful for "blacklisting" a transform like `@babel/plugin-transform-regenerator` if you don't use generators and don't want to include `regeneratorRuntime` (when using `useBuiltIns`) or for using another plugin like [fast-async](https://github.com/MatAtBread/fast-async) instead of [Babel's async-to-gen](http://babeljs.io/docs/plugins/proposal-async-generator-functions/).

@@ -359,3 +359,3 @@ ### `useBuiltIns`

presets: [
["@babel/env", {
["@babel/preset-env", {
targets: {

@@ -437,3 +437,3 @@ chrome: 59,

"presets": [
["@babel/env", {
["@babel/preset-env", {
"targets": {

@@ -461,3 +461,3 @@ "chrome": 52

"presets": [
["@babel/env", {
["@babel/preset-env", {
"targets": {

@@ -486,3 +486,3 @@ "chrome": 52

"presets": [
["@babel/env", {
["@babel/preset-env", {
"targets": {

@@ -512,3 +512,3 @@ "chrome": 52,

"presets": [
["@babel/env", {
["@babel/preset-env", {
"targets": {

@@ -536,3 +536,3 @@ "node": "current"

"presets": [
["@babel/env", {
["@babel/preset-env", {
"targets": {

@@ -560,4 +560,4 @@ "safari": 10

Using plugins:
transform-exponentiation-operator {}
transform-async-to-generator {}
@babel/plugin-transform-exponentiation-operator {}
@babel/plugin-transform-async-to-generator {}

@@ -580,8 +580,8 @@ Using polyfills:

"presets": [
["@babel/env", {
["@babel/preset-env", {
"targets": {
"browsers": ["last 2 versions", "safari >= 7"]
},
"include": ["@babel/transform-arrow-functions", "es6.map"],
"exclude": ["@babel/transform-regenerator", "es6.set"]
"include": ["@babel/plugin-transform-arrow-functions", "es6.map"],
"exclude": ["@babel/plugin-transform-regenerator", "es6.set"]
}]

@@ -588,0 +588,0 @@ ]

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc