diff --git a/packages/babel-preset-env/data/built-in-modules.json b/packages/babel-preset-env/data/built-in-modules.json index e1b1e8a6dc..5bada5f51b 100644 --- a/packages/babel-preset-env/data/built-in-modules.json +++ b/packages/babel-preset-env/data/built-in-modules.json @@ -6,6 +6,7 @@ "safari": "10.1", "opera": "48", "ios_saf": "10.3", + "and_chr": "71", "and_ff": "64" } } diff --git a/packages/babel-preset-env/package.json b/packages/babel-preset-env/package.json index 3765c14f25..b5c6eb8fc5 100644 --- a/packages/babel-preset-env/package.json +++ b/packages/babel-preset-env/package.json @@ -57,7 +57,7 @@ "@babel/plugin-transform-typeof-symbol": "^7.2.0", "@babel/plugin-transform-unicode-regex": "^7.4.4", "@babel/types": "^7.4.4", - "browserslist": "^4.5.2", + "browserslist": "^4.6.0", "core-js-compat": "^3.0.0", "invariant": "^2.2.2", "js-levenshtein": "^1.1.3", diff --git a/packages/babel-preset-env/scripts/build-modules-support.js b/packages/babel-preset-env/scripts/build-modules-support.js index 24528bb0ec..40add39e0c 100644 --- a/packages/babel-preset-env/scripts/build-modules-support.js +++ b/packages/babel-preset-env/scripts/build-modules-support.js @@ -3,7 +3,7 @@ const fs = require("fs"); const moduleSupport = require("caniuse-db/features-json/es6-module.json"); -const skipList = new Set(["and_chr", "android", "samsung"]); +const skipList = new Set(["android", "samsung"]); const acceptedWithCaveats = new Set(["safari", "ios_saf"]); const { stats } = moduleSupport; diff --git a/packages/babel-preset-env/src/targets-parser.js b/packages/babel-preset-env/src/targets-parser.js index 66d59bb02c..30cff53431 100644 --- a/packages/babel-preset-env/src/targets-parser.js +++ b/packages/babel-preset-env/src/targets-parser.js @@ -44,13 +44,16 @@ const validateTargetNames = (targets: Targets): void => { const browserNameMap = { and_chr: "chrome", + and_ff: "firefox", android: "android", chrome: "chrome", edge: "edge", firefox: "firefox", ie: "ie", + ie_mob: "ie", ios_saf: "ios", node: "node", + op_mob: "opera", opera: "opera", safari: "safari", samsung: "samsung", @@ -200,6 +203,7 @@ const getTargets = (targets: Object = {}, options: Object = {}): Targets => { const browsers = browserslist(browsersquery, { path: options.configPath, + mobileToDesktop: true, }); const queryBrowsers = getLowestVersions(browsers); diff --git a/packages/babel-preset-env/test/fixtures/corejs2/.entry-chromeandroid/README b/packages/babel-preset-env/test/fixtures/corejs2/.entry-chromeandroid/README deleted file mode 100644 index fc43051932..0000000000 --- a/packages/babel-preset-env/test/fixtures/corejs2/.entry-chromeandroid/README +++ /dev/null @@ -1,4 +0,0 @@ -Browserslist and CanIUse don't support mobile browsers versions. - -https://github.com/browserslist/browserslist/issues/367 -https://github.com/Fyrd/caniuse/issues/3518 \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/corejs2/.entry-chromeandroid/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/.entry-chromeandroid/output.mjs deleted file mode 100644 index 1fda3d0a13..0000000000 --- a/packages/babel-preset-env/test/fixtures/corejs2/.entry-chromeandroid/output.mjs +++ /dev/null @@ -1,4 +0,0 @@ -import "core-js/modules/web.timers"; -import "core-js/modules/web.immediate"; -import "core-js/modules/web.dom.iterable"; -1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs2/.entry-chromeandroid/input.mjs b/packages/babel-preset-env/test/fixtures/corejs2/entry-chromeandroid/input.mjs similarity index 100% rename from packages/babel-preset-env/test/fixtures/corejs2/.entry-chromeandroid/input.mjs rename to packages/babel-preset-env/test/fixtures/corejs2/entry-chromeandroid/input.mjs diff --git a/packages/babel-preset-env/test/fixtures/corejs2/.entry-chromeandroid/options.json b/packages/babel-preset-env/test/fixtures/corejs2/entry-chromeandroid/options.json similarity index 100% rename from packages/babel-preset-env/test/fixtures/corejs2/.entry-chromeandroid/options.json rename to packages/babel-preset-env/test/fixtures/corejs2/entry-chromeandroid/options.json diff --git a/packages/babel-preset-env/test/fixtures/corejs2/entry-chromeandroid/output.mjs b/packages/babel-preset-env/test/fixtures/corejs2/entry-chromeandroid/output.mjs new file mode 100644 index 0000000000..50912e84ee --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs2/entry-chromeandroid/output.mjs @@ -0,0 +1,14 @@ +import "core-js/modules/es7.array.flat-map"; +import "core-js/modules/es6.array.sort"; +import "core-js/modules/es7.object.define-getter"; +import "core-js/modules/es7.object.define-setter"; +import "core-js/modules/es7.object.lookup-getter"; +import "core-js/modules/es7.object.lookup-setter"; +import "core-js/modules/es7.promise.finally"; +import "core-js/modules/es7.symbol.async-iterator"; +import "core-js/modules/es7.string.trim-left"; +import "core-js/modules/es7.string.trim-right"; +import "core-js/modules/web.timers"; +import "core-js/modules/web.immediate"; +import "core-js/modules/web.dom.iterable"; +1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/.entry-chromeandroid/README b/packages/babel-preset-env/test/fixtures/corejs3/.entry-chromeandroid/README deleted file mode 100644 index fc43051932..0000000000 --- a/packages/babel-preset-env/test/fixtures/corejs3/.entry-chromeandroid/README +++ /dev/null @@ -1,4 +0,0 @@ -Browserslist and CanIUse don't support mobile browsers versions. - -https://github.com/browserslist/browserslist/issues/367 -https://github.com/Fyrd/caniuse/issues/3518 \ No newline at end of file diff --git a/packages/babel-preset-env/test/fixtures/corejs3/.entry-chromeandroid/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/.entry-chromeandroid/output.mjs deleted file mode 100644 index 1adcc28248..0000000000 --- a/packages/babel-preset-env/test/fixtures/corejs3/.entry-chromeandroid/output.mjs +++ /dev/null @@ -1,5 +0,0 @@ -import "core-js/modules/es.array.unscopables.flat"; -import "core-js/modules/es.array.unscopables.flat-map"; -import "core-js/modules/es.object.from-entries"; -import "core-js/modules/web.immediate"; -1 ** 2; diff --git a/packages/babel-preset-env/test/fixtures/corejs3/.entry-chromeandroid/input.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-chromeandroid/input.mjs similarity index 100% rename from packages/babel-preset-env/test/fixtures/corejs3/.entry-chromeandroid/input.mjs rename to packages/babel-preset-env/test/fixtures/corejs3/entry-chromeandroid/input.mjs diff --git a/packages/babel-preset-env/test/fixtures/corejs3/.entry-chromeandroid/options.json b/packages/babel-preset-env/test/fixtures/corejs3/entry-chromeandroid/options.json similarity index 100% rename from packages/babel-preset-env/test/fixtures/corejs3/.entry-chromeandroid/options.json rename to packages/babel-preset-env/test/fixtures/corejs3/entry-chromeandroid/options.json diff --git a/packages/babel-preset-env/test/fixtures/corejs3/entry-chromeandroid/output.mjs b/packages/babel-preset-env/test/fixtures/corejs3/entry-chromeandroid/output.mjs new file mode 100644 index 0000000000..e3be757cb2 --- /dev/null +++ b/packages/babel-preset-env/test/fixtures/corejs3/entry-chromeandroid/output.mjs @@ -0,0 +1,25 @@ +import "core-js/modules/es.symbol.description"; +import "core-js/modules/es.symbol.async-iterator"; +import "core-js/modules/es.array.flat"; +import "core-js/modules/es.array.flat-map"; +import "core-js/modules/es.array.iterator"; +import "core-js/modules/es.array.sort"; +import "core-js/modules/es.array.unscopables.flat"; +import "core-js/modules/es.array.unscopables.flat-map"; +import "core-js/modules/es.object.define-getter"; +import "core-js/modules/es.object.define-setter"; +import "core-js/modules/es.object.from-entries"; +import "core-js/modules/es.object.lookup-getter"; +import "core-js/modules/es.object.lookup-setter"; +import "core-js/modules/es.promise"; +import "core-js/modules/es.promise.finally"; +import "core-js/modules/es.string.replace"; +import "core-js/modules/es.string.trim-end"; +import "core-js/modules/es.string.trim-start"; +import "core-js/modules/web.dom-collections.iterator"; +import "core-js/modules/web.immediate"; +import "core-js/modules/web.queue-microtask"; +import "core-js/modules/web.url"; +import "core-js/modules/web.url.to-json"; +import "core-js/modules/web.url-search-params"; +1 ** 2;