[preset-env] Include / exclude module plugins properly (#10218)
* Include / exclude module plugins properly * Use filter-items to excl / incl module plugins * Move transform selection to getModulesPluginNames * Remove unnecessary spread operator Co-Authored-By: Nicolò Ribaudo <nicolo.ribaudo@gmail.com> * Adjust tests to changes in #10218
This commit is contained in:
parent
d05bd9edc8
commit
fcb77de901
@ -1,5 +1,6 @@
|
|||||||
//@flow
|
//@flow
|
||||||
|
|
||||||
|
import { SemVer } from "semver";
|
||||||
import { logPluginOrPolyfill } from "./debug";
|
import { logPluginOrPolyfill } from "./debug";
|
||||||
import getOptionSpecificExcludesFor from "./get-option-specific-excludes";
|
import getOptionSpecificExcludesFor from "./get-option-specific-excludes";
|
||||||
import filterItems from "./filter-items";
|
import filterItems from "./filter-items";
|
||||||
@ -20,6 +21,9 @@ import availablePlugins from "./available-plugins";
|
|||||||
import { filterStageFromList, prettifyTargets } from "./utils";
|
import { filterStageFromList, prettifyTargets } from "./utils";
|
||||||
import { declare } from "@babel/helper-plugin-utils";
|
import { declare } from "@babel/helper-plugin-utils";
|
||||||
|
|
||||||
|
import typeof ModuleTransformationsType from "./module-transformations";
|
||||||
|
import type { BuiltInsOption, Targets, ModuleOption } from "./types";
|
||||||
|
|
||||||
export { isPluginRequired } from "./filter-items";
|
export { isPluginRequired } from "./filter-items";
|
||||||
|
|
||||||
const pluginListWithoutProposals = filterStageFromList(
|
const pluginListWithoutProposals = filterStageFromList(
|
||||||
@ -56,6 +60,103 @@ export const transformIncludesAndExcludes = (opts: Array<string>): Object => {
|
|||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
export const getModulesPluginNames = ({
|
||||||
|
modules,
|
||||||
|
transformations,
|
||||||
|
shouldTransformESM,
|
||||||
|
shouldTransformDynamicImport,
|
||||||
|
}: {
|
||||||
|
modules: ModuleOption,
|
||||||
|
transformations: ModuleTransformationsType,
|
||||||
|
shouldTransformESM: boolean,
|
||||||
|
shouldTransformDynamicImport: boolean,
|
||||||
|
}) => {
|
||||||
|
const modulesPluginNames = [];
|
||||||
|
if (modules !== false && transformations[modules]) {
|
||||||
|
if (shouldTransformESM) {
|
||||||
|
modulesPluginNames.push(transformations[modules]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (
|
||||||
|
shouldTransformDynamicImport &&
|
||||||
|
shouldTransformESM &&
|
||||||
|
modules !== "umd"
|
||||||
|
) {
|
||||||
|
modulesPluginNames.push("proposal-dynamic-import");
|
||||||
|
} else {
|
||||||
|
if (shouldTransformDynamicImport) {
|
||||||
|
console.warn(
|
||||||
|
"Dynamic import can only be supported when transforming ES modules" +
|
||||||
|
" to AMD, CommonJS or SystemJS. Only the parser plugin will be enabled.",
|
||||||
|
);
|
||||||
|
}
|
||||||
|
modulesPluginNames.push("syntax-dynamic-import");
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
modulesPluginNames.push("syntax-dynamic-import");
|
||||||
|
}
|
||||||
|
return modulesPluginNames;
|
||||||
|
};
|
||||||
|
|
||||||
|
export const getPolyfillPlugins = ({
|
||||||
|
useBuiltIns,
|
||||||
|
corejs,
|
||||||
|
polyfillTargets,
|
||||||
|
include,
|
||||||
|
exclude,
|
||||||
|
proposals,
|
||||||
|
shippedProposals,
|
||||||
|
regenerator,
|
||||||
|
debug,
|
||||||
|
}: {
|
||||||
|
useBuiltIns: BuiltInsOption,
|
||||||
|
corejs: typeof SemVer | null | false,
|
||||||
|
polyfillTargets: Targets,
|
||||||
|
include: Set<string>,
|
||||||
|
exclude: Set<string>,
|
||||||
|
proposals: boolean,
|
||||||
|
shippedProposals: boolean,
|
||||||
|
regenerator: boolean,
|
||||||
|
debug: boolean,
|
||||||
|
}) => {
|
||||||
|
const polyfillPlugins = [];
|
||||||
|
if (useBuiltIns === "usage" || useBuiltIns === "entry") {
|
||||||
|
const pluginOptions = {
|
||||||
|
corejs,
|
||||||
|
polyfillTargets,
|
||||||
|
include,
|
||||||
|
exclude,
|
||||||
|
proposals,
|
||||||
|
shippedProposals,
|
||||||
|
regenerator,
|
||||||
|
debug,
|
||||||
|
};
|
||||||
|
|
||||||
|
if (corejs) {
|
||||||
|
if (useBuiltIns === "usage") {
|
||||||
|
if (corejs.major === 2) {
|
||||||
|
polyfillPlugins.push([addCoreJS2UsagePlugin, pluginOptions]);
|
||||||
|
} else {
|
||||||
|
polyfillPlugins.push([addCoreJS3UsagePlugin, pluginOptions]);
|
||||||
|
}
|
||||||
|
if (regenerator) {
|
||||||
|
polyfillPlugins.push([addRegeneratorUsagePlugin, pluginOptions]);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (corejs.major === 2) {
|
||||||
|
polyfillPlugins.push([replaceCoreJS2EntryPlugin, pluginOptions]);
|
||||||
|
} else {
|
||||||
|
polyfillPlugins.push([replaceCoreJS3EntryPlugin, pluginOptions]);
|
||||||
|
if (!regenerator) {
|
||||||
|
polyfillPlugins.push([removeRegeneratorEntryPlugin, pluginOptions]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return polyfillPlugins;
|
||||||
|
};
|
||||||
|
|
||||||
function supportsStaticESM(caller) {
|
function supportsStaticESM(caller) {
|
||||||
return !!(caller && caller.supportsStaticESM);
|
return !!(caller && caller.supportsStaticESM);
|
||||||
}
|
}
|
||||||
@ -115,58 +216,46 @@ export default declare((api, opts) => {
|
|||||||
|
|
||||||
const transformTargets = forceAllTransforms || hasUglifyTarget ? {} : targets;
|
const transformTargets = forceAllTransforms || hasUglifyTarget ? {} : targets;
|
||||||
|
|
||||||
const transformations = filterItems(
|
const modulesPluginNames = getModulesPluginNames({
|
||||||
|
modules,
|
||||||
|
transformations: moduleTransformations,
|
||||||
|
// TODO: Remove the 'api.caller' check eventually. Just here to prevent
|
||||||
|
// unnecessary breakage in the short term for users on older betas/RCs.
|
||||||
|
shouldTransformESM:
|
||||||
|
modules !== "auto" || !api.caller || !api.caller(supportsStaticESM),
|
||||||
|
shouldTransformDynamicImport:
|
||||||
|
modules !== "auto" || !api.caller || !api.caller(supportsDynamicImport),
|
||||||
|
});
|
||||||
|
|
||||||
|
const pluginNames = filterItems(
|
||||||
shippedProposals ? pluginList : pluginListWithoutProposals,
|
shippedProposals ? pluginList : pluginListWithoutProposals,
|
||||||
include.plugins,
|
include.plugins,
|
||||||
exclude.plugins,
|
exclude.plugins,
|
||||||
transformTargets,
|
transformTargets,
|
||||||
null,
|
modulesPluginNames,
|
||||||
getOptionSpecificExcludesFor({ loose }),
|
getOptionSpecificExcludesFor({ loose }),
|
||||||
pluginSyntaxMap,
|
pluginSyntaxMap,
|
||||||
);
|
);
|
||||||
|
|
||||||
const plugins = [];
|
const polyfillPlugins = getPolyfillPlugins({
|
||||||
|
useBuiltIns,
|
||||||
|
corejs,
|
||||||
|
polyfillTargets: targets,
|
||||||
|
include: include.builtIns,
|
||||||
|
exclude: exclude.builtIns,
|
||||||
|
proposals,
|
||||||
|
shippedProposals,
|
||||||
|
regenerator: pluginNames.has("transform-regenerator"),
|
||||||
|
debug,
|
||||||
|
});
|
||||||
|
|
||||||
const pluginUseBuiltIns = useBuiltIns !== false;
|
const pluginUseBuiltIns = useBuiltIns !== false;
|
||||||
|
const plugins = Array.from(pluginNames)
|
||||||
if (modules !== false && moduleTransformations[modules]) {
|
.map(pluginName => [
|
||||||
// TODO: Remove the 'api.caller' check eventually. Just here to prevent
|
|
||||||
// unnecessary breakage in the short term for users on older betas/RCs.
|
|
||||||
const shouldTransformESM =
|
|
||||||
modules !== "auto" || !api.caller || !api.caller(supportsStaticESM);
|
|
||||||
const shouldTransformDynamicImport =
|
|
||||||
modules !== "auto" || !api.caller || !api.caller(supportsDynamicImport);
|
|
||||||
|
|
||||||
if (shouldTransformESM) {
|
|
||||||
// NOTE: not giving spec here yet to avoid compatibility issues when
|
|
||||||
// transform-modules-commonjs gets its spec mode
|
|
||||||
plugins.push([getPlugin(moduleTransformations[modules]), { loose }]);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (
|
|
||||||
shouldTransformDynamicImport &&
|
|
||||||
shouldTransformESM &&
|
|
||||||
modules !== "umd"
|
|
||||||
) {
|
|
||||||
plugins.push([getPlugin("proposal-dynamic-import"), { loose }]);
|
|
||||||
} else {
|
|
||||||
if (shouldTransformDynamicImport) {
|
|
||||||
console.warn(
|
|
||||||
"Dynamic import can only be supported when transforming ES modules" +
|
|
||||||
" to AMD, CommonJS or SystemJS. Only the parser plugin will be enabled.",
|
|
||||||
);
|
|
||||||
}
|
|
||||||
plugins.push(getPlugin("syntax-dynamic-import"));
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
plugins.push(getPlugin("syntax-dynamic-import"));
|
|
||||||
}
|
|
||||||
|
|
||||||
transformations.forEach(pluginName =>
|
|
||||||
plugins.push([
|
|
||||||
getPlugin(pluginName),
|
getPlugin(pluginName),
|
||||||
{ spec, loose, useBuiltIns: pluginUseBuiltIns },
|
{ spec, loose, useBuiltIns: pluginUseBuiltIns },
|
||||||
]),
|
])
|
||||||
);
|
.concat(polyfillPlugins);
|
||||||
|
|
||||||
if (debug) {
|
if (debug) {
|
||||||
console.log("@babel/preset-env: `DEBUG` option");
|
console.log("@babel/preset-env: `DEBUG` option");
|
||||||
@ -174,8 +263,8 @@ export default declare((api, opts) => {
|
|||||||
console.log(JSON.stringify(prettifyTargets(targets), null, 2));
|
console.log(JSON.stringify(prettifyTargets(targets), null, 2));
|
||||||
console.log(`\nUsing modules transform: ${modules.toString()}`);
|
console.log(`\nUsing modules transform: ${modules.toString()}`);
|
||||||
console.log("\nUsing plugins:");
|
console.log("\nUsing plugins:");
|
||||||
transformations.forEach(transform => {
|
pluginNames.forEach(pluginName => {
|
||||||
logPluginOrPolyfill(transform, targets, pluginList);
|
logPluginOrPolyfill(pluginName, targets, pluginList);
|
||||||
});
|
});
|
||||||
|
|
||||||
if (!useBuiltIns) {
|
if (!useBuiltIns) {
|
||||||
@ -183,46 +272,10 @@ export default declare((api, opts) => {
|
|||||||
"\nUsing polyfills: No polyfills were added, since the `useBuiltIns` option was not set.",
|
"\nUsing polyfills: No polyfills were added, since the `useBuiltIns` option was not set.",
|
||||||
);
|
);
|
||||||
} else {
|
} else {
|
||||||
|
// NOTE: Polyfill plugins are outputting debug info internally
|
||||||
console.log(`\nUsing polyfills with \`${useBuiltIns}\` option:`);
|
console.log(`\nUsing polyfills with \`${useBuiltIns}\` option:`);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (useBuiltIns === "usage" || useBuiltIns === "entry") {
|
|
||||||
const regenerator = transformations.has("transform-regenerator");
|
|
||||||
|
|
||||||
const pluginOptions = {
|
|
||||||
corejs,
|
|
||||||
polyfillTargets: targets,
|
|
||||||
include: include.builtIns,
|
|
||||||
exclude: exclude.builtIns,
|
|
||||||
proposals,
|
|
||||||
shippedProposals,
|
|
||||||
regenerator,
|
|
||||||
debug,
|
|
||||||
};
|
|
||||||
|
|
||||||
if (corejs) {
|
|
||||||
if (useBuiltIns === "usage") {
|
|
||||||
if (corejs.major === 2) {
|
|
||||||
plugins.push([addCoreJS2UsagePlugin, pluginOptions]);
|
|
||||||
} else {
|
|
||||||
plugins.push([addCoreJS3UsagePlugin, pluginOptions]);
|
|
||||||
}
|
|
||||||
if (regenerator) {
|
|
||||||
plugins.push([addRegeneratorUsagePlugin, pluginOptions]);
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
if (corejs.major === 2) {
|
|
||||||
plugins.push([replaceCoreJS2EntryPlugin, pluginOptions]);
|
|
||||||
} else {
|
|
||||||
plugins.push([replaceCoreJS3EntryPlugin, pluginOptions]);
|
|
||||||
if (!regenerator) {
|
|
||||||
plugins.push([removeRegeneratorEntryPlugin, pluginOptions]);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return { plugins };
|
return { plugins };
|
||||||
});
|
});
|
||||||
|
|||||||
@ -32,23 +32,29 @@ const validateTopLevelOptions = (options: Options) => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const allPluginsList = [
|
const allPluginsList = Object.keys(pluginsList);
|
||||||
...Object.keys(pluginsList),
|
|
||||||
|
// NOTE: Since module plugins are handled seperatly compared to other plugins (via the "modules" option) it
|
||||||
|
// should only be possible to exclude and not include module plugins, otherwise it's possible that preset-env
|
||||||
|
// will add a module plugin twice.
|
||||||
|
const modulePlugins = [
|
||||||
|
"proposal-dynamic-import",
|
||||||
...Object.keys(moduleTransformations).map(m => moduleTransformations[m]),
|
...Object.keys(moduleTransformations).map(m => moduleTransformations[m]),
|
||||||
];
|
];
|
||||||
|
|
||||||
const validIncludesAndExcludesWithoutCoreJS = new Set(allPluginsList);
|
const getValidIncludesAndExcludes = (
|
||||||
|
type: "include" | "exclude",
|
||||||
const validIncludesAndExcludesWithCoreJS2 = new Set([
|
corejs: number | false,
|
||||||
...allPluginsList,
|
) =>
|
||||||
...Object.keys(corejs2Polyfills),
|
new Set([
|
||||||
...defaultWebIncludes,
|
...allPluginsList,
|
||||||
]);
|
...(type === "exclude" ? modulePlugins : []),
|
||||||
|
...(corejs
|
||||||
const validIncludesAndExcludesWithCoreJS3 = new Set([
|
? corejs == 2
|
||||||
...allPluginsList,
|
? [...Object.keys(corejs2Polyfills), ...defaultWebIncludes]
|
||||||
...Object.keys(corejs3Polyfills),
|
: Object.keys(corejs3Polyfills)
|
||||||
]);
|
: []),
|
||||||
|
]);
|
||||||
|
|
||||||
const pluginToRegExp = (plugin: PluginListItem) => {
|
const pluginToRegExp = (plugin: PluginListItem) => {
|
||||||
if (plugin instanceof RegExp) return plugin;
|
if (plugin instanceof RegExp) return plugin;
|
||||||
@ -59,14 +65,14 @@ const pluginToRegExp = (plugin: PluginListItem) => {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
const selectPlugins = (regexp: RegExp | null, corejs: number | false) =>
|
const selectPlugins = (
|
||||||
Array.from(
|
regexp: RegExp | null,
|
||||||
corejs
|
type: "include" | "exclude",
|
||||||
? corejs == 2
|
corejs: number | false,
|
||||||
? validIncludesAndExcludesWithCoreJS2
|
) =>
|
||||||
: validIncludesAndExcludesWithCoreJS3
|
Array.from(getValidIncludesAndExcludes(type, corejs)).filter(
|
||||||
: validIncludesAndExcludesWithoutCoreJS,
|
item => regexp instanceof RegExp && regexp.test(item),
|
||||||
).filter(item => regexp instanceof RegExp && regexp.test(item));
|
);
|
||||||
|
|
||||||
const flatten = <T>(array: Array<Array<T>>): Array<T> => [].concat(...array);
|
const flatten = <T>(array: Array<Array<T>>): Array<T> => [].concat(...array);
|
||||||
|
|
||||||
@ -78,7 +84,7 @@ const expandIncludesAndExcludes = (
|
|||||||
if (plugins.length === 0) return [];
|
if (plugins.length === 0) return [];
|
||||||
|
|
||||||
const selectedPlugins = plugins.map(plugin =>
|
const selectedPlugins = plugins.map(plugin =>
|
||||||
selectPlugins(pluginToRegExp(plugin), corejs),
|
selectPlugins(pluginToRegExp(plugin), type, corejs),
|
||||||
);
|
);
|
||||||
const invalidRegExpList = plugins.filter(
|
const invalidRegExpList = plugins.filter(
|
||||||
(p, i) => selectedPlugins[i].length === 0,
|
(p, i) => selectedPlugins[i].length === 0,
|
||||||
|
|||||||
@ -40,6 +40,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set.
|
Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set.
|
||||||
Successfully compiled 1 file with Babel.
|
Successfully compiled 1 file with Babel.
|
||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-optional-catch-binding { "android":"4" }
|
proposal-optional-catch-binding { "android":"4" }
|
||||||
transform-named-capturing-groups-regex { "android":"4" }
|
transform-named-capturing-groups-regex { "android":"4" }
|
||||||
transform-reserved-words { "android":"4" }
|
transform-reserved-words { "android":"4" }
|
||||||
|
transform-modules-commonjs { "android":"4" }
|
||||||
|
proposal-dynamic-import { "android":"4" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -34,6 +34,8 @@ Using plugins:
|
|||||||
transform-named-capturing-groups-regex { "electron":"0.36" }
|
transform-named-capturing-groups-regex { "electron":"0.36" }
|
||||||
transform-member-expression-literals { "electron":"0.36" }
|
transform-member-expression-literals { "electron":"0.36" }
|
||||||
transform-property-literals { "electron":"0.36" }
|
transform-property-literals { "electron":"0.36" }
|
||||||
|
transform-modules-commonjs { "electron":"0.36" }
|
||||||
|
proposal-dynamic-import { "electron":"0.36" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -40,6 +40,7 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
syntax-dynamic-import { "chrome":"55" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -20,6 +20,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "node":"6" }
|
proposal-json-strings { "node":"6" }
|
||||||
proposal-optional-catch-binding { "node":"6" }
|
proposal-optional-catch-binding { "node":"6" }
|
||||||
transform-named-capturing-groups-regex { "node":"6" }
|
transform-named-capturing-groups-regex { "node":"6" }
|
||||||
|
transform-modules-commonjs { "node":"6" }
|
||||||
|
proposal-dynamic-import { "node":"6" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -42,6 +42,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
proposal-json-strings { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
||||||
proposal-optional-catch-binding { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
proposal-optional-catch-binding { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
transform-named-capturing-groups-regex { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
||||||
|
transform-modules-commonjs { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
||||||
|
proposal-dynamic-import { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -50,6 +50,8 @@ Using plugins:
|
|||||||
transform-named-capturing-groups-regex { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" }
|
transform-named-capturing-groups-regex { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" }
|
||||||
transform-member-expression-literals { "electron":"0.36" }
|
transform-member-expression-literals { "electron":"0.36" }
|
||||||
transform-property-literals { "electron":"0.36" }
|
transform-property-literals { "electron":"0.36" }
|
||||||
|
transform-modules-commonjs { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" }
|
||||||
|
proposal-dynamic-import { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -39,6 +39,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6.10" }
|
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6.10" }
|
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6.10" }
|
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
|
transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
|
proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -39,6 +39,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6" }
|
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6" }
|
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6" }
|
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
|
transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
|
proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-optional-catch-binding { "android":"4" }
|
proposal-optional-catch-binding { "android":"4" }
|
||||||
transform-named-capturing-groups-regex { "android":"4" }
|
transform-named-capturing-groups-regex { "android":"4" }
|
||||||
transform-reserved-words { "android":"4" }
|
transform-reserved-words { "android":"4" }
|
||||||
|
transform-modules-commonjs { "android":"4" }
|
||||||
|
proposal-dynamic-import { "android":"4" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -34,6 +34,8 @@ Using plugins:
|
|||||||
transform-named-capturing-groups-regex { "electron":"0.36" }
|
transform-named-capturing-groups-regex { "electron":"0.36" }
|
||||||
transform-member-expression-literals { "electron":"0.36" }
|
transform-member-expression-literals { "electron":"0.36" }
|
||||||
transform-property-literals { "electron":"0.36" }
|
transform-property-literals { "electron":"0.36" }
|
||||||
|
transform-modules-commonjs { "electron":"0.36" }
|
||||||
|
proposal-dynamic-import { "electron":"0.36" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -40,6 +40,7 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
syntax-dynamic-import { "chrome":"55" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -20,6 +20,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "node":"6" }
|
proposal-json-strings { "node":"6" }
|
||||||
proposal-optional-catch-binding { "node":"6" }
|
proposal-optional-catch-binding { "node":"6" }
|
||||||
transform-named-capturing-groups-regex { "node":"6" }
|
transform-named-capturing-groups-regex { "node":"6" }
|
||||||
|
transform-modules-commonjs { "node":"6" }
|
||||||
|
proposal-dynamic-import { "node":"6" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -42,6 +42,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
proposal-json-strings { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
||||||
proposal-optional-catch-binding { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
proposal-optional-catch-binding { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
transform-named-capturing-groups-regex { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
||||||
|
transform-modules-commonjs { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
||||||
|
proposal-dynamic-import { "chrome":"54", "edge":"13", "firefox":"49", "ie":"10", "ios":"9", "safari":"7" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -14,6 +14,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "samsung":"8.2" }
|
proposal-json-strings { "samsung":"8.2" }
|
||||||
proposal-optional-catch-binding { "samsung":"8.2" }
|
proposal-optional-catch-binding { "samsung":"8.2" }
|
||||||
transform-named-capturing-groups-regex { "samsung":"8.2" }
|
transform-named-capturing-groups-regex { "samsung":"8.2" }
|
||||||
|
transform-modules-commonjs { "samsung":"8.2" }
|
||||||
|
proposal-dynamic-import { "samsung":"8.2" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -50,6 +50,8 @@ Using plugins:
|
|||||||
transform-named-capturing-groups-regex { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" }
|
transform-named-capturing-groups-regex { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" }
|
||||||
transform-member-expression-literals { "electron":"0.36" }
|
transform-member-expression-literals { "electron":"0.36" }
|
||||||
transform-property-literals { "electron":"0.36" }
|
transform-property-literals { "electron":"0.36" }
|
||||||
|
transform-modules-commonjs { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" }
|
||||||
|
proposal-dynamic-import { "chrome":"54", "electron":"0.36", "ie":"10", "node":"6.1" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -39,6 +39,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6.10" }
|
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6.10" }
|
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6.10" }
|
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
|
transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
|
proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -39,6 +39,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6.10" }
|
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6.10" }
|
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6.10" }
|
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
|
transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
|
proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -39,6 +39,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6.10" }
|
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6.10" }
|
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6.10" }
|
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
|
transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
|
proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6.10" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -39,6 +39,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6" }
|
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6" }
|
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6" }
|
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
|
transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
|
proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -20,6 +20,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "node":"6" }
|
proposal-json-strings { "node":"6" }
|
||||||
proposal-optional-catch-binding { "node":"6" }
|
proposal-optional-catch-binding { "node":"6" }
|
||||||
transform-named-capturing-groups-regex { "node":"6" }
|
transform-named-capturing-groups-regex { "node":"6" }
|
||||||
|
transform-modules-commonjs { "node":"6" }
|
||||||
|
proposal-dynamic-import { "node":"6" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
transform-modules-commonjs {}
|
||||||
|
proposal-dynamic-import {}
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -43,6 +43,7 @@ Using plugins:
|
|||||||
transform-member-expression-literals {}
|
transform-member-expression-literals {}
|
||||||
transform-property-literals {}
|
transform-property-literals {}
|
||||||
transform-reserved-words {}
|
transform-reserved-words {}
|
||||||
|
syntax-dynamic-import { "chrome":"55" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -39,6 +39,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6" }
|
proposal-json-strings { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6" }
|
proposal-optional-catch-binding { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6" }
|
transform-named-capturing-groups-regex { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
|
transform-modules-commonjs { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
|
proposal-dynamic-import { "chrome":"54", "ie":"10", "node":"6" }
|
||||||
|
|
||||||
Using polyfills with `entry` option:
|
Using polyfills with `entry` option:
|
||||||
|
|
||||||
|
|||||||
@ -27,6 +27,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "firefox":"52", "node":"7.4" }
|
proposal-json-strings { "firefox":"52", "node":"7.4" }
|
||||||
proposal-optional-catch-binding { "firefox":"52", "node":"7.4" }
|
proposal-optional-catch-binding { "firefox":"52", "node":"7.4" }
|
||||||
transform-named-capturing-groups-regex { "firefox":"52", "node":"7.4" }
|
transform-named-capturing-groups-regex { "firefox":"52", "node":"7.4" }
|
||||||
|
transform-modules-commonjs { "firefox":"52", "node":"7.4" }
|
||||||
|
proposal-dynamic-import { "firefox":"52", "node":"7.4" }
|
||||||
|
|
||||||
Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set.
|
Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set.
|
||||||
Successfully compiled 1 file with Babel.
|
Successfully compiled 1 file with Babel.
|
||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -15,6 +15,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"55" }
|
proposal-json-strings { "chrome":"55" }
|
||||||
proposal-optional-catch-binding { "chrome":"55" }
|
proposal-optional-catch-binding { "chrome":"55" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"55" }
|
transform-named-capturing-groups-regex { "chrome":"55" }
|
||||||
|
transform-modules-commonjs { "chrome":"55" }
|
||||||
|
proposal-dynamic-import { "chrome":"55" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -12,6 +12,8 @@ Using plugins:
|
|||||||
syntax-object-rest-spread { "chrome":"71" }
|
syntax-object-rest-spread { "chrome":"71" }
|
||||||
syntax-json-strings { "chrome":"71" }
|
syntax-json-strings { "chrome":"71" }
|
||||||
syntax-optional-catch-binding { "chrome":"71" }
|
syntax-optional-catch-binding { "chrome":"71" }
|
||||||
|
transform-modules-commonjs { "chrome":"71" }
|
||||||
|
proposal-dynamic-import { "chrome":"71" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -15,6 +15,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"55" }
|
proposal-json-strings { "chrome":"55" }
|
||||||
proposal-optional-catch-binding { "chrome":"55" }
|
proposal-optional-catch-binding { "chrome":"55" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"55" }
|
transform-named-capturing-groups-regex { "chrome":"55" }
|
||||||
|
transform-modules-commonjs { "chrome":"55" }
|
||||||
|
proposal-dynamic-import { "chrome":"55" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -38,6 +38,8 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-json-strings { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
proposal-optional-catch-binding { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
transform-named-capturing-groups-regex { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
transform-modules-commonjs { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
proposal-dynamic-import { "chrome":"52", "firefox":"50", "ie":"11" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -26,6 +26,7 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
proposal-json-strings { "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
||||||
proposal-optional-catch-binding { "chrome":"61", "edge":"16", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
proposal-optional-catch-binding { "chrome":"61", "edge":"16", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
transform-named-capturing-groups-regex { "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
||||||
|
syntax-dynamic-import { "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -26,6 +26,7 @@ Using plugins:
|
|||||||
proposal-json-strings { "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
proposal-json-strings { "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
||||||
proposal-optional-catch-binding { "chrome":"61", "edge":"16", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
proposal-optional-catch-binding { "chrome":"61", "edge":"16", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
||||||
transform-named-capturing-groups-regex { "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
transform-named-capturing-groups-regex { "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
||||||
|
syntax-dynamic-import { "chrome":"61", "edge":"16", "firefox":"60", "ios":"10.3", "opera":"48", "safari":"10.1" }
|
||||||
|
|
||||||
Using polyfills with `usage` option:
|
Using polyfills with `usage` option:
|
||||||
|
|
||||||
|
|||||||
@ -20,5 +20,7 @@ Using plugins:
|
|||||||
proposal-json-strings { "safari":"10" }
|
proposal-json-strings { "safari":"10" }
|
||||||
proposal-optional-catch-binding { "safari":"10" }
|
proposal-optional-catch-binding { "safari":"10" }
|
||||||
transform-named-capturing-groups-regex { "safari":"10" }
|
transform-named-capturing-groups-regex { "safari":"10" }
|
||||||
|
transform-modules-commonjs { "safari":"10" }
|
||||||
|
proposal-dynamic-import { "safari":"10" }
|
||||||
|
|
||||||
Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set.
|
Using polyfills: No polyfills were added, since the `useBuiltIns` option was not set.
|
||||||
|
|||||||
@ -1,6 +1,19 @@
|
|||||||
"use strict";
|
"use strict";
|
||||||
|
|
||||||
const babelPresetEnv = require("../lib/index");
|
const babelPresetEnv = require("../lib/index");
|
||||||
|
const addCoreJS2UsagePlugin = require("../lib/polyfills/corejs2/usage-plugin")
|
||||||
|
.default;
|
||||||
|
const addCoreJS3UsagePlugin = require("../lib/polyfills/corejs3/usage-plugin")
|
||||||
|
.default;
|
||||||
|
const addRegeneratorUsagePlugin = require("../lib/polyfills/regenerator/usage-plugin")
|
||||||
|
.default;
|
||||||
|
const replaceCoreJS2EntryPlugin = require("../lib/polyfills/corejs2/entry-plugin")
|
||||||
|
.default;
|
||||||
|
const replaceCoreJS3EntryPlugin = require("../lib/polyfills/corejs3/entry-plugin")
|
||||||
|
.default;
|
||||||
|
const removeRegeneratorEntryPlugin = require("../lib/polyfills/regenerator/entry-plugin")
|
||||||
|
.default;
|
||||||
|
const transformations = require("../lib/module-transformations").default;
|
||||||
|
|
||||||
describe("babel-preset-env", () => {
|
describe("babel-preset-env", () => {
|
||||||
describe("transformIncludesAndExcludes", () => {
|
describe("transformIncludesAndExcludes", () => {
|
||||||
@ -24,4 +37,215 @@ describe("babel-preset-env", () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
describe("getModulesPluginNames", () => {
|
||||||
|
describe("modules is set to false", () => {
|
||||||
|
it("returns only syntax-dynamic-import", () => {
|
||||||
|
expect(
|
||||||
|
babelPresetEnv.getModulesPluginNames({
|
||||||
|
modules: false,
|
||||||
|
transformations,
|
||||||
|
shouldTransformESM: false,
|
||||||
|
shouldTransformDynamicImport: false,
|
||||||
|
}),
|
||||||
|
).toEqual(["syntax-dynamic-import"]);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
describe("modules is not set to false", () => {
|
||||||
|
describe("ESMs should not be transformed", () => {
|
||||||
|
it("returns syntax-dynamic-import", () => {
|
||||||
|
expect(
|
||||||
|
babelPresetEnv.getModulesPluginNames({
|
||||||
|
modules: "commonjs",
|
||||||
|
transformations,
|
||||||
|
shouldTransformESM: false,
|
||||||
|
shouldTransformDynamicImport: false,
|
||||||
|
}),
|
||||||
|
).toEqual(["syntax-dynamic-import"]);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
describe("ESMs should be transformed", () => {
|
||||||
|
describe("dynamic imports should not be transformed", () => {
|
||||||
|
it("returns specified modules transform and syntax-dynamic-import", () => {
|
||||||
|
expect(
|
||||||
|
babelPresetEnv.getModulesPluginNames({
|
||||||
|
modules: "commonjs",
|
||||||
|
transformations,
|
||||||
|
shouldTransformESM: true,
|
||||||
|
shouldTransformDynamicImport: false,
|
||||||
|
}),
|
||||||
|
).toEqual(["transform-modules-commonjs", "syntax-dynamic-import"]);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
describe("dynamic imports should be transformed", () => {
|
||||||
|
it("returns specified modules transform and proposal-dynamic-import", () => {
|
||||||
|
expect(
|
||||||
|
babelPresetEnv.getModulesPluginNames({
|
||||||
|
modules: "systemjs",
|
||||||
|
transformations,
|
||||||
|
shouldTransformESM: true,
|
||||||
|
shouldTransformDynamicImport: true,
|
||||||
|
}),
|
||||||
|
).toEqual([
|
||||||
|
"transform-modules-systemjs",
|
||||||
|
"proposal-dynamic-import",
|
||||||
|
]);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
describe("getPolyfillPlugins", () => {
|
||||||
|
const staticProps = {
|
||||||
|
polyfillTargets: [],
|
||||||
|
include: new Set(),
|
||||||
|
exclude: new Set(),
|
||||||
|
proposals: false,
|
||||||
|
shippedProposals: false,
|
||||||
|
debug: false,
|
||||||
|
};
|
||||||
|
describe("useBuiltIns is false", () => {
|
||||||
|
it("returns no polyfill plugins", () => {
|
||||||
|
expect(
|
||||||
|
babelPresetEnv.getPolyfillPlugins(
|
||||||
|
Object.assign(
|
||||||
|
{
|
||||||
|
useBuiltIns: false,
|
||||||
|
corejs: false,
|
||||||
|
regenerator: false,
|
||||||
|
},
|
||||||
|
staticProps,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
).toEqual([]);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
describe("useBuiltIns is not false", () => {
|
||||||
|
describe("corejs is not given", () => {
|
||||||
|
it("returns no polyfill plugins", () => {
|
||||||
|
expect(
|
||||||
|
babelPresetEnv.getPolyfillPlugins(
|
||||||
|
Object.assign(
|
||||||
|
{
|
||||||
|
useBuiltIns: "usage",
|
||||||
|
corejs: false,
|
||||||
|
regenerator: false,
|
||||||
|
},
|
||||||
|
staticProps,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
).toEqual([]);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
describe("useBuiltIns is set to usage", () => {
|
||||||
|
describe("using corejs 2", () => {
|
||||||
|
it("returns an array with core js 2 usage plugin", () => {
|
||||||
|
const polyfillPlugins = babelPresetEnv.getPolyfillPlugins(
|
||||||
|
Object.assign(
|
||||||
|
{
|
||||||
|
useBuiltIns: "usage",
|
||||||
|
corejs: { major: 2 },
|
||||||
|
regenerator: false,
|
||||||
|
},
|
||||||
|
staticProps,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
expect(polyfillPlugins.length).toBe(1);
|
||||||
|
expect(polyfillPlugins[0][0]).toEqual(addCoreJS2UsagePlugin);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
describe("using corejs 3", () => {
|
||||||
|
describe("regenerator is set to false", () => {
|
||||||
|
it("returns an array with core js 3 usage plugin", () => {
|
||||||
|
const polyfillPlugins = babelPresetEnv.getPolyfillPlugins(
|
||||||
|
Object.assign(
|
||||||
|
{
|
||||||
|
useBuiltIns: "usage",
|
||||||
|
corejs: { major: 3 },
|
||||||
|
regenerator: false,
|
||||||
|
},
|
||||||
|
staticProps,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
expect(polyfillPlugins.length).toBe(1);
|
||||||
|
expect(polyfillPlugins[0][0]).toEqual(addCoreJS3UsagePlugin);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("regenerator is set to true", () => {
|
||||||
|
it("returns an array with core js 3 usage plugin and add regenerator usage plugin", () => {
|
||||||
|
const polyfillPlugins = babelPresetEnv.getPolyfillPlugins(
|
||||||
|
Object.assign(
|
||||||
|
{
|
||||||
|
useBuiltIns: "usage",
|
||||||
|
corejs: { major: 3 },
|
||||||
|
regenerator: true,
|
||||||
|
},
|
||||||
|
staticProps,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
expect(polyfillPlugins.length).toBe(2);
|
||||||
|
expect(polyfillPlugins[0][0]).toEqual(addCoreJS3UsagePlugin);
|
||||||
|
expect(polyfillPlugins[1][0]).toEqual(addRegeneratorUsagePlugin);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
describe("useBuiltIns is set to entry", () => {
|
||||||
|
describe("using corejs 2", () => {
|
||||||
|
it("returns an array with core js 2 entry plugin", () => {
|
||||||
|
const polyfillPlugins = babelPresetEnv.getPolyfillPlugins(
|
||||||
|
Object.assign(
|
||||||
|
{
|
||||||
|
useBuiltIns: "entry",
|
||||||
|
corejs: { major: 2 },
|
||||||
|
regenerator: true,
|
||||||
|
},
|
||||||
|
staticProps,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
expect(polyfillPlugins.length).toBe(1);
|
||||||
|
expect(polyfillPlugins[0][0]).toEqual(replaceCoreJS2EntryPlugin);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
describe("using corejs 3", () => {
|
||||||
|
describe("regenerator is set to true", () => {
|
||||||
|
it("returns an array with core js 3 entry plugin", () => {
|
||||||
|
const polyfillPlugins = babelPresetEnv.getPolyfillPlugins(
|
||||||
|
Object.assign(
|
||||||
|
{
|
||||||
|
useBuiltIns: "entry",
|
||||||
|
corejs: { major: 3 },
|
||||||
|
regenerator: true,
|
||||||
|
},
|
||||||
|
staticProps,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
expect(polyfillPlugins.length).toBe(1);
|
||||||
|
expect(polyfillPlugins[0][0]).toEqual(replaceCoreJS3EntryPlugin);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
describe("regenerator is set to false", () => {
|
||||||
|
it("returns an array with core js 3 entry plugin and remove regenerator entry plugin", () => {
|
||||||
|
const polyfillPlugins = babelPresetEnv.getPolyfillPlugins(
|
||||||
|
Object.assign(
|
||||||
|
{
|
||||||
|
useBuiltIns: "entry",
|
||||||
|
corejs: { major: 3 },
|
||||||
|
regenerator: false,
|
||||||
|
},
|
||||||
|
staticProps,
|
||||||
|
),
|
||||||
|
);
|
||||||
|
expect(polyfillPlugins.length).toBe(2);
|
||||||
|
expect(polyfillPlugins[0][0]).toEqual(replaceCoreJS3EntryPlugin);
|
||||||
|
expect(polyfillPlugins[1][0]).toEqual(
|
||||||
|
removeRegeneratorEntryPlugin,
|
||||||
|
);
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@ -84,6 +84,24 @@ describe("normalize-options", () => {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
it("throws when including module plugins", () => {
|
||||||
|
expect(() =>
|
||||||
|
normalizeOptions.default({ include: ["proposal-dynamic-import"] }),
|
||||||
|
).toThrow();
|
||||||
|
expect(() =>
|
||||||
|
normalizeOptions.default({ include: ["transform-modules-amd"] }),
|
||||||
|
).toThrow();
|
||||||
|
});
|
||||||
|
|
||||||
|
it("allows exclusion of module plugins ", () => {
|
||||||
|
expect(() =>
|
||||||
|
normalizeOptions.default({ exclude: ["proposal-dynamic-import"] }),
|
||||||
|
).not.toThrow();
|
||||||
|
expect(() =>
|
||||||
|
normalizeOptions.default({ exclude: ["transform-modules-commonjs"] }),
|
||||||
|
).not.toThrow();
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
describe("Config format validation", () => {
|
describe("Config format validation", () => {
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user