8889841cREADME.md000066600000000762150545024510006035 0ustar00# babel-plugin-polyfill-corejs3 ## Install Using npm: ```sh npm install --save-dev babel-plugin-polyfill-corejs3 ``` or using yarn: ```sh yarn add babel-plugin-polyfill-corejs3 --dev ``` ## Usage Add this plugin to your Babel configuration: ```json { "plugins": [["polyfill-corejs3", { "method": "usage-global", "version": "3.20" }]] } ``` This package supports the `usage-pure`, `usage-global`, and `entry-global` methods. When `entry-global` is used, it replaces imports to `core-js`. core-js-compat/README.md000066600000000301150545024510010645 0ustar00`core-js-compat` exposes some files as JSON, and they cannot be imported by Node.js ESM files. This folder proxies `core-js-compat` to ensure that every entry is CJS and can be safely imported.core-js-compat/entries.js000066600000000064150545024510011403 0ustar00module.exports = require("core-js-compat/entries"); core-js-compat/get-modules-list-for-target-version.js000066600000000120150545024510016654 0ustar00module.exports = require("core-js-compat/get-modules-list-for-target-version"); core-js-compat/data.js000066600000000061150545024510010640 0ustar00module.exports = require("core-js-compat/data"); esm/index.mjs000066600000112115150545024510007160 0ustar00import corejs3Polyfills from '../core-js-compat/data.js'; import getModulesListForTargetVersion from '../core-js-compat/get-modules-list-for-target-version.js'; import * as _babel from '@babel/core'; import corejsEntries from '../core-js-compat/entries.js'; import defineProvider from '@babel/helper-define-polyfill-provider'; // This file is automatically generated by scripts/build-corejs3-shipped-proposals.mjs var corejs3ShippedProposalsList = new Set(["esnext.array.group", "esnext.array.group-to-map", "esnext.array.to-reversed", "esnext.array.to-sorted", "esnext.array.to-spliced", "esnext.array.with", "esnext.typed-array.to-reversed", "esnext.typed-array.to-sorted", "esnext.typed-array.with"]); const polyfillsOrder = {}; Object.keys(corejs3Polyfills).forEach((name, index) => { polyfillsOrder[name] = index; }); const define = (pure, global, name = global[0], exclude) => { return { name, pure, global: global.sort((a, b) => polyfillsOrder[a] - polyfillsOrder[b]), exclude }; }; const typed = name => define(null, [name, ...TypedArrayDependencies]); const ArrayNatureIterators = ["es.array.iterator", "web.dom-collections.iterator"]; const CommonIterators = ["es.string.iterator", ...ArrayNatureIterators]; const ArrayNatureIteratorsWithTag = ["es.object.to-string", ...ArrayNatureIterators]; const CommonIteratorsWithTag = ["es.object.to-string", ...CommonIterators]; const ErrorDependencies = ["es.error.cause", "es.error.to-string"]; const TypedArrayDependencies = ["es.typed-array.at", "es.typed-array.copy-within", "es.typed-array.every", "es.typed-array.fill", "es.typed-array.filter", "es.typed-array.find", "es.typed-array.find-index", "es.typed-array.find-last", "es.typed-array.find-last-index", "es.typed-array.for-each", "es.typed-array.includes", "es.typed-array.index-of", "es.typed-array.iterator", "es.typed-array.join", "es.typed-array.last-index-of", "es.typed-array.map", "es.typed-array.reduce", "es.typed-array.reduce-right", "es.typed-array.reverse", "es.typed-array.set", "es.typed-array.slice", "es.typed-array.some", "es.typed-array.sort", "es.typed-array.subarray", "es.typed-array.to-locale-string", "es.typed-array.to-string", "es.object.to-string", "es.array.iterator", "es.array-buffer.slice", "esnext.typed-array.filter-reject", "esnext.typed-array.group-by", "esnext.typed-array.to-reversed", "esnext.typed-array.to-sorted", "esnext.typed-array.to-spliced", "esnext.typed-array.unique-by", "esnext.typed-array.with"]; const PromiseDependencies = ["es.promise", "es.object.to-string"]; const PromiseDependenciesWithIterators = [...PromiseDependencies, ...CommonIterators]; const SymbolDependencies = ["es.symbol", "es.symbol.description", "es.object.to-string"]; const MapDependencies = ["es.map", "esnext.map.delete-all", "esnext.map.emplace", "esnext.map.every", "esnext.map.filter", "esnext.map.find", "esnext.map.find-key", "esnext.map.includes", "esnext.map.key-of", "esnext.map.map-keys", "esnext.map.map-values", "esnext.map.merge", "esnext.map.reduce", "esnext.map.some", "esnext.map.update", ...CommonIteratorsWithTag]; const SetDependencies = ["es.set", "esnext.set.add-all", "esnext.set.delete-all", "esnext.set.difference", "esnext.set.every", "esnext.set.filter", "esnext.set.find", "esnext.set.intersection", "esnext.set.is-disjoint-from", "esnext.set.is-subset-of", "esnext.set.is-superset-of", "esnext.set.join", "esnext.set.map", "esnext.set.reduce", "esnext.set.some", "esnext.set.symmetric-difference", "esnext.set.union", ...CommonIteratorsWithTag]; const WeakMapDependencies = ["es.weak-map", "esnext.weak-map.delete-all", "esnext.weak-map.emplace", ...CommonIteratorsWithTag]; const WeakSetDependencies = ["es.weak-set", "esnext.weak-set.add-all", "esnext.weak-set.delete-all", ...CommonIteratorsWithTag]; const DOMExceptionDependencies = ["web.dom-exception.constructor", "web.dom-exception.stack", "web.dom-exception.to-string-tag", "es.error.to-string"]; const URLSearchParamsDependencies = ["web.url-search-params", ...CommonIteratorsWithTag]; const AsyncIteratorDependencies = ["esnext.async-iterator.constructor", ...PromiseDependencies]; const AsyncIteratorProblemMethods = ["esnext.async-iterator.every", "esnext.async-iterator.filter", "esnext.async-iterator.find", "esnext.async-iterator.flat-map", "esnext.async-iterator.for-each", "esnext.async-iterator.map", "esnext.async-iterator.reduce", "esnext.async-iterator.some"]; const IteratorDependencies = ["esnext.iterator.constructor", "es.object.to-string"]; const TypedArrayStaticMethods = { from: define(null, ["es.typed-array.from"]), fromAsync: define(null, ["esnext.typed-array.from-async", ...PromiseDependenciesWithIterators]), of: define(null, ["es.typed-array.of"]) }; const BuiltIns = { AsyncIterator: define("async-iterator/index", AsyncIteratorDependencies), AggregateError: define("aggregate-error", ["es.aggregate-error", ...ErrorDependencies, ...CommonIteratorsWithTag, "es.aggregate-error.cause"]), ArrayBuffer: define(null, ["es.array-buffer.constructor", "es.array-buffer.slice", "es.object.to-string"]), DataView: define(null, ["es.data-view", "es.array-buffer.slice", "es.object.to-string"]), Date: define(null, ["es.date.to-string"]), DOMException: define("dom-exception", DOMExceptionDependencies), Error: define(null, ErrorDependencies), EvalError: define(null, ErrorDependencies), Float32Array: typed("es.typed-array.float32-array"), Float64Array: typed("es.typed-array.float64-array"), Int8Array: typed("es.typed-array.int8-array"), Int16Array: typed("es.typed-array.int16-array"), Int32Array: typed("es.typed-array.int32-array"), Iterator: define("iterator/index", IteratorDependencies), Uint8Array: typed("es.typed-array.uint8-array"), Uint8ClampedArray: typed("es.typed-array.uint8-clamped-array"), Uint16Array: typed("es.typed-array.uint16-array"), Uint32Array: typed("es.typed-array.uint32-array"), Map: define("map/index", MapDependencies), Number: define(null, ["es.number.constructor"]), Observable: define("observable/index", ["esnext.observable", "esnext.symbol.observable", "es.object.to-string", ...CommonIteratorsWithTag]), Promise: define("promise/index", PromiseDependencies), RangeError: define(null, ErrorDependencies), ReferenceError: define(null, ErrorDependencies), Reflect: define(null, ["es.reflect.to-string-tag", "es.object.to-string"]), RegExp: define(null, ["es.regexp.constructor", "es.regexp.dot-all", "es.regexp.exec", "es.regexp.sticky", "es.regexp.to-string"]), Set: define("set/index", SetDependencies), Symbol: define("symbol/index", SymbolDependencies), SyntaxError: define(null, ErrorDependencies), TypeError: define(null, ErrorDependencies), URIError: define(null, ErrorDependencies), URL: define("url/index", ["web.url", ...URLSearchParamsDependencies]), URLSearchParams: define("url-search-params/index", URLSearchParamsDependencies), WeakMap: define("weak-map/index", WeakMapDependencies), WeakSet: define("weak-set/index", WeakSetDependencies), atob: define("atob", ["web.atob", ...DOMExceptionDependencies]), btoa: define("btoa", ["web.btoa", ...DOMExceptionDependencies]), clearImmediate: define("clear-immediate", ["web.immediate"]), compositeKey: define("composite-key", ["esnext.composite-key"]), compositeSymbol: define("composite-symbol", ["esnext.composite-symbol"]), escape: define("escape", ["es.escape"]), fetch: define(null, PromiseDependencies), globalThis: define("global-this", ["es.global-this"]), parseFloat: define("parse-float", ["es.parse-float"]), parseInt: define("parse-int", ["es.parse-int"]), queueMicrotask: define("queue-microtask", ["web.queue-microtask"]), setImmediate: define("set-immediate", ["web.immediate"]), setInterval: define("set-interval", ["web.timers"]), setTimeout: define("set-timeout", ["web.timers"]), structuredClone: define("structured-clone", ["web.structured-clone", ...DOMExceptionDependencies, "es.array.iterator", "es.object.keys", "es.object.to-string", "es.map", "es.set"]), unescape: define("unescape", ["es.unescape"]) }; const StaticProperties = { AsyncIterator: { from: define("async-iterator/from", ["esnext.async-iterator.from", ...AsyncIteratorDependencies, ...AsyncIteratorProblemMethods, ...CommonIterators]) }, Array: { from: define("array/from", ["es.array.from", "es.string.iterator"]), fromAsync: define("array/from-async", ["esnext.array.from-async", ...PromiseDependenciesWithIterators]), isArray: define("array/is-array", ["es.array.is-array"]), isTemplateObject: define("array/is-template-object", ["esnext.array.is-template-object"]), of: define("array/of", ["es.array.of"]) }, ArrayBuffer: { isView: define(null, ["es.array-buffer.is-view"]) }, BigInt: { range: define("bigint/range", ["esnext.bigint.range", "es.object.to-string"]) }, Date: { now: define("date/now", ["es.date.now"]) }, Function: { isCallable: define("function/is-callable", ["esnext.function.is-callable"]), isConstructor: define("function/is-constructor", ["esnext.function.is-constructor"]) }, Iterator: { from: define("iterator/from", ["esnext.iterator.from", ...IteratorDependencies, ...CommonIterators]) }, JSON: { stringify: define("json/stringify", ["es.json.stringify"], "es.symbol") }, Math: { DEG_PER_RAD: define("math/deg-per-rad", ["esnext.math.deg-per-rad"]), RAD_PER_DEG: define("math/rad-per-deg", ["esnext.math.rad-per-deg"]), acosh: define("math/acosh", ["es.math.acosh"]), asinh: define("math/asinh", ["es.math.asinh"]), atanh: define("math/atanh", ["es.math.atanh"]), cbrt: define("math/cbrt", ["es.math.cbrt"]), clamp: define("math/clamp", ["esnext.math.clamp"]), clz32: define("math/clz32", ["es.math.clz32"]), cosh: define("math/cosh", ["es.math.cosh"]), degrees: define("math/degrees", ["esnext.math.degrees"]), expm1: define("math/expm1", ["es.math.expm1"]), fround: define("math/fround", ["es.math.fround"]), fscale: define("math/fscale", ["esnext.math.fscale"]), hypot: define("math/hypot", ["es.math.hypot"]), iaddh: define("math/iaddh", ["esnext.math.iaddh"]), imul: define("math/imul", ["es.math.imul"]), imulh: define("math/imulh", ["esnext.math.imulh"]), isubh: define("math/isubh", ["esnext.math.isubh"]), log10: define("math/log10", ["es.math.log10"]), log1p: define("math/log1p", ["es.math.log1p"]), log2: define("math/log2", ["es.math.log2"]), radians: define("math/radians", ["esnext.math.radians"]), scale: define("math/scale", ["esnext.math.scale"]), seededPRNG: define("math/seeded-prng", ["esnext.math.seeded-prng"]), sign: define("math/sign", ["es.math.sign"]), signbit: define("math/signbit", ["esnext.math.signbit"]), sinh: define("math/sinh", ["es.math.sinh"]), tanh: define("math/tanh", ["es.math.tanh"]), trunc: define("math/trunc", ["es.math.trunc"]), umulh: define("math/umulh", ["esnext.math.umulh"]) }, Map: { from: define(null, ["esnext.map.from", ...MapDependencies]), groupBy: define(null, ["esnext.map.group-by", ...MapDependencies]), keyBy: define(null, ["esnext.map.key-by", ...MapDependencies]), of: define(null, ["esnext.map.of", ...MapDependencies]) }, Number: { EPSILON: define("number/epsilon", ["es.number.epsilon"]), MAX_SAFE_INTEGER: define("number/max-safe-integer", ["es.number.max-safe-integer"]), MIN_SAFE_INTEGER: define("number/min-safe-integer", ["es.number.min-safe-integer"]), fromString: define("number/from-string", ["esnext.number.from-string"]), isFinite: define("number/is-finite", ["es.number.is-finite"]), isInteger: define("number/is-integer", ["es.number.is-integer"]), isNaN: define("number/is-nan", ["es.number.is-nan"]), isSafeInteger: define("number/is-safe-integer", ["es.number.is-safe-integer"]), parseFloat: define("number/parse-float", ["es.number.parse-float"]), parseInt: define("number/parse-int", ["es.number.parse-int"]), range: define("number/range", ["esnext.number.range", "es.object.to-string"]) }, Object: { assign: define("object/assign", ["es.object.assign"]), create: define("object/create", ["es.object.create"]), defineProperties: define("object/define-properties", ["es.object.define-properties"]), defineProperty: define("object/define-property", ["es.object.define-property"]), entries: define("object/entries", ["es.object.entries"]), freeze: define("object/freeze", ["es.object.freeze"]), fromEntries: define("object/from-entries", ["es.object.from-entries", "es.array.iterator"]), getOwnPropertyDescriptor: define("object/get-own-property-descriptor", ["es.object.get-own-property-descriptor"]), getOwnPropertyDescriptors: define("object/get-own-property-descriptors", ["es.object.get-own-property-descriptors"]), getOwnPropertyNames: define("object/get-own-property-names", ["es.object.get-own-property-names"]), getOwnPropertySymbols: define("object/get-own-property-symbols", ["es.symbol"]), getPrototypeOf: define("object/get-prototype-of", ["es.object.get-prototype-of"]), hasOwn: define("object/has-own", ["es.object.has-own"]), is: define("object/is", ["es.object.is"]), isExtensible: define("object/is-extensible", ["es.object.is-extensible"]), isFrozen: define("object/is-frozen", ["es.object.is-frozen"]), isSealed: define("object/is-sealed", ["es.object.is-sealed"]), keys: define("object/keys", ["es.object.keys"]), preventExtensions: define("object/prevent-extensions", ["es.object.prevent-extensions"]), seal: define("object/seal", ["es.object.seal"]), setPrototypeOf: define("object/set-prototype-of", ["es.object.set-prototype-of"]), values: define("object/values", ["es.object.values"]) }, Promise: { all: define(null, PromiseDependenciesWithIterators), allSettled: define(null, ["es.promise.all-settled", ...PromiseDependenciesWithIterators]), any: define(null, ["es.promise.any", "es.aggregate-error", ...PromiseDependenciesWithIterators]), race: define(null, PromiseDependenciesWithIterators), try: define(null, ["esnext.promise.try", ...PromiseDependenciesWithIterators]) }, Reflect: { apply: define("reflect/apply", ["es.reflect.apply"]), construct: define("reflect/construct", ["es.reflect.construct"]), defineMetadata: define("reflect/define-metadata", ["esnext.reflect.define-metadata"]), defineProperty: define("reflect/define-property", ["es.reflect.define-property"]), deleteMetadata: define("reflect/delete-metadata", ["esnext.reflect.delete-metadata"]), deleteProperty: define("reflect/delete-property", ["es.reflect.delete-property"]), get: define("reflect/get", ["es.reflect.get"]), getMetadata: define("reflect/get-metadata", ["esnext.reflect.get-metadata"]), getMetadataKeys: define("reflect/get-metadata-keys", ["esnext.reflect.get-metadata-keys"]), getOwnMetadata: define("reflect/get-own-metadata", ["esnext.reflect.get-own-metadata"]), getOwnMetadataKeys: define("reflect/get-own-metadata-keys", ["esnext.reflect.get-own-metadata-keys"]), getOwnPropertyDescriptor: define("reflect/get-own-property-descriptor", ["es.reflect.get-own-property-descriptor"]), getPrototypeOf: define("reflect/get-prototype-of", ["es.reflect.get-prototype-of"]), has: define("reflect/has", ["es.reflect.has"]), hasMetadata: define("reflect/has-metadata", ["esnext.reflect.has-metadata"]), hasOwnMetadata: define("reflect/has-own-metadata", ["esnext.reflect.has-own-metadata"]), isExtensible: define("reflect/is-extensible", ["es.reflect.is-extensible"]), metadata: define("reflect/metadata", ["esnext.reflect.metadata"]), ownKeys: define("reflect/own-keys", ["es.reflect.own-keys"]), preventExtensions: define("reflect/prevent-extensions", ["es.reflect.prevent-extensions"]), set: define("reflect/set", ["es.reflect.set"]), setPrototypeOf: define("reflect/set-prototype-of", ["es.reflect.set-prototype-of"]) }, Set: { from: define(null, ["esnext.set.from", ...SetDependencies]), of: define(null, ["esnext.set.of", ...SetDependencies]) }, String: { cooked: define("string/cooked", ["esnext.string.cooked"]), fromCodePoint: define("string/from-code-point", ["es.string.from-code-point"]), raw: define("string/raw", ["es.string.raw"]) }, Symbol: { asyncDispose: define("symbol/async-dispose", ["esnext.symbol.async-dispose"]), asyncIterator: define("symbol/async-iterator", ["es.symbol.async-iterator"]), dispose: define("symbol/dispose", ["esnext.symbol.dispose"]), for: define("symbol/for", [], "es.symbol"), hasInstance: define("symbol/has-instance", ["es.symbol.has-instance", "es.function.has-instance"]), isConcatSpreadable: define("symbol/is-concat-spreadable", ["es.symbol.is-concat-spreadable", "es.array.concat"]), iterator: define("symbol/iterator", ["es.symbol.iterator", ...CommonIteratorsWithTag]), keyFor: define("symbol/key-for", [], "es.symbol"), match: define("symbol/match", ["es.symbol.match", "es.string.match"]), matcher: define("symbol/matcher", ["esnext.symbol.matcher"]), matchAll: define("symbol/match-all", ["es.symbol.match-all", "es.string.match-all"]), metadata: define("symbol/metadata", ["esnext.symbol.metadata"]), metadataKey: define("symbol/metadata-key", ["esnext.symbol.metadata-key"]), observable: define("symbol/observable", ["esnext.symbol.observable"]), patternMatch: define("symbol/pattern-match", ["esnext.symbol.pattern-match"]), replace: define("symbol/replace", ["es.symbol.replace", "es.string.replace"]), search: define("symbol/search", ["es.symbol.search", "es.string.search"]), species: define("symbol/species", ["es.symbol.species", "es.array.species"]), split: define("symbol/split", ["es.symbol.split", "es.string.split"]), toPrimitive: define("symbol/to-primitive", ["es.symbol.to-primitive", "es.date.to-primitive"]), toStringTag: define("symbol/to-string-tag", ["es.symbol.to-string-tag", "es.object.to-string", "es.math.to-string-tag", "es.json.to-string-tag"]), unscopables: define("symbol/unscopables", ["es.symbol.unscopables"]) }, WeakMap: { from: define(null, ["esnext.weak-map.from", ...WeakMapDependencies]), of: define(null, ["esnext.weak-map.of", ...WeakMapDependencies]) }, WeakSet: { from: define(null, ["esnext.weak-set.from", ...WeakSetDependencies]), of: define(null, ["esnext.weak-set.of", ...WeakSetDependencies]) }, Int8Array: TypedArrayStaticMethods, Uint8Array: TypedArrayStaticMethods, Uint8ClampedArray: TypedArrayStaticMethods, Int16Array: TypedArrayStaticMethods, Uint16Array: TypedArrayStaticMethods, Int32Array: TypedArrayStaticMethods, Uint32Array: TypedArrayStaticMethods, Float32Array: TypedArrayStaticMethods, Float64Array: TypedArrayStaticMethods, WebAssembly: { CompileError: define(null, ErrorDependencies), LinkError: define(null, ErrorDependencies), RuntimeError: define(null, ErrorDependencies) } }; const InstanceProperties = { asIndexedPairs: define("instance/asIndexedPairs", ["esnext.async-iterator.as-indexed-pairs", ...AsyncIteratorDependencies, "esnext.iterator.as-indexed-pairs", ...IteratorDependencies]), at: define("instance/at", [// TODO: We should introduce overloaded instance methods definition // Before that is implemented, the `esnext.string.at` must be the first // In pure mode, the provider resolves the descriptor as a "pure" `esnext.string.at` // and treats the compat-data of `esnext.string.at` as the compat-data of // pure import `instance/at`. The first polyfill here should have the lowest corejs // supported versions. "esnext.string.at", "es.string.at-alternative", "es.array.at"]), anchor: define(null, ["es.string.anchor"]), big: define(null, ["es.string.big"]), bind: define("instance/bind", ["es.function.bind"]), blink: define(null, ["es.string.blink"]), bold: define(null, ["es.string.bold"]), codePointAt: define("instance/code-point-at", ["es.string.code-point-at"]), codePoints: define("instance/code-points", ["esnext.string.code-points"]), concat: define("instance/concat", ["es.array.concat"], undefined, ["String"]), copyWithin: define("instance/copy-within", ["es.array.copy-within"]), description: define(null, ["es.symbol", "es.symbol.description"]), dotAll: define("instance/dot-all", ["es.regexp.dot-all"]), drop: define("instance/drop", ["esnext.async-iterator.drop", ...AsyncIteratorDependencies, "esnext.iterator.drop", ...IteratorDependencies]), emplace: define("instance/emplace", ["esnext.map.emplace", "esnext.weak-map.emplace"]), endsWith: define("instance/ends-with", ["es.string.ends-with"]), entries: define("instance/entries", ArrayNatureIteratorsWithTag), every: define("instance/every", ["es.array.every", "esnext.async-iterator.every", // TODO: add async iterator dependencies when we support sub-dependencies // esnext.async-iterator.every depends on es.promise // but we don't want to pull es.promise when esnext.async-iterator is disabled // // ...AsyncIteratorDependencies "esnext.iterator.every", ...IteratorDependencies]), exec: define(null, ["es.regexp.exec"]), fill: define("instance/fill", ["es.array.fill"]), filter: define("instance/filter", ["es.array.filter", "esnext.async-iterator.filter", "esnext.iterator.filter", ...IteratorDependencies]), filterReject: define("instance/filterReject", ["esnext.array.filter-reject"]), finally: define(null, ["es.promise.finally", ...PromiseDependencies]), find: define("instance/find", ["es.array.find", "esnext.async-iterator.find", "esnext.iterator.find", ...IteratorDependencies]), findIndex: define("instance/find-index", ["es.array.find-index"]), findLast: define("instance/find-last", ["es.array.find-last"]), findLastIndex: define("instance/find-last-index", ["es.array.find-last-index"]), fixed: define(null, ["es.string.fixed"]), flags: define("instance/flags", ["es.regexp.flags"]), flatMap: define("instance/flat-map", ["es.array.flat-map", "es.array.unscopables.flat-map", "esnext.async-iterator.flat-map", "esnext.iterator.flat-map", ...IteratorDependencies]), flat: define("instance/flat", ["es.array.flat", "es.array.unscopables.flat"]), getYear: define(null, ["es.date.get-year"]), group: define("instance/group", ["esnext.array.group"]), groupBy: define("instance/group-by", ["esnext.array.group-by"]), groupByToMap: define("instance/group-by-to-map", ["esnext.array.group-by-to-map", "es.map", "es.object.to-string"]), groupToMap: define("instance/group-to-map", ["esnext.array.group-to-map", "es.map", "es.object.to-string"]), fontcolor: define(null, ["es.string.fontcolor"]), fontsize: define(null, ["es.string.fontsize"]), forEach: define("instance/for-each", ["es.array.for-each", "esnext.async-iterator.for-each", "esnext.iterator.for-each", ...IteratorDependencies, "web.dom-collections.for-each"]), includes: define("instance/includes", ["es.array.includes", "es.string.includes"]), indexed: define("instance/indexed", ["esnext.async-iterator.indexed", ...AsyncIteratorDependencies, "esnext.iterator.indexed", ...IteratorDependencies]), indexOf: define("instance/index-of", ["es.array.index-of"]), italic: define(null, ["es.string.italics"]), join: define(null, ["es.array.join"]), keys: define("instance/keys", ArrayNatureIteratorsWithTag), lastIndex: define(null, ["esnext.array.last-index"]), lastIndexOf: define("instance/last-index-of", ["es.array.last-index-of"]), lastItem: define(null, ["esnext.array.last-item"]), link: define(null, ["es.string.link"]), map: define("instance/map", ["es.array.map", "esnext.async-iterator.map", "esnext.iterator.map"]), match: define(null, ["es.string.match", "es.regexp.exec"]), matchAll: define("instance/match-all", ["es.string.match-all", "es.regexp.exec"]), name: define(null, ["es.function.name"]), padEnd: define("instance/pad-end", ["es.string.pad-end"]), padStart: define("instance/pad-start", ["es.string.pad-start"]), push: define("instance/push", ["es.array.push"]), reduce: define("instance/reduce", ["es.array.reduce", "esnext.async-iterator.reduce", "esnext.iterator.reduce", ...IteratorDependencies]), reduceRight: define("instance/reduce-right", ["es.array.reduce-right"]), repeat: define("instance/repeat", ["es.string.repeat"]), replace: define(null, ["es.string.replace", "es.regexp.exec"]), replaceAll: define("instance/replace-all", ["es.string.replace-all", "es.string.replace", "es.regexp.exec"]), reverse: define("instance/reverse", ["es.array.reverse"]), search: define(null, ["es.string.search", "es.regexp.exec"]), setYear: define(null, ["es.date.set-year"]), slice: define("instance/slice", ["es.array.slice"]), small: define(null, ["es.string.small"]), some: define("instance/some", ["es.array.some", "esnext.async-iterator.some", "esnext.iterator.some", ...IteratorDependencies]), sort: define("instance/sort", ["es.array.sort"]), splice: define("instance/splice", ["es.array.splice"]), split: define(null, ["es.string.split", "es.regexp.exec"]), startsWith: define("instance/starts-with", ["es.string.starts-with"]), sticky: define("instance/sticky", ["es.regexp.sticky"]), strike: define(null, ["es.string.strike"]), sub: define(null, ["es.string.sub"]), substr: define(null, ["es.string.substr"]), sup: define(null, ["es.string.sup"]), take: define("instance/take", ["esnext.async-iterator.take", ...AsyncIteratorDependencies, "esnext.iterator.take", ...IteratorDependencies]), test: define(null, ["es.regexp.test", "es.regexp.exec"]), toArray: define("instance/to-array", ["esnext.async-iterator.to-array", ...AsyncIteratorDependencies, "esnext.iterator.to-array", ...IteratorDependencies]), toAsync: define(null, ["esnext.iterator.to-async", ...IteratorDependencies, ...AsyncIteratorDependencies, ...AsyncIteratorProblemMethods]), toExponential: define(null, ["es.number.to-exponential"]), toFixed: define(null, ["es.number.to-fixed"]), toGMTString: define(null, ["es.date.to-gmt-string"]), toISOString: define(null, ["es.date.to-iso-string"]), toJSON: define(null, ["es.date.to-json", "web.url.to-json"]), toPrecision: define(null, ["es.number.to-precision"]), toReversed: define("instance/to-reversed", ["esnext.array.to-reversed"]), toSorted: define("instance/to-sorted", ["esnext.array.to-sorted", "es.array.sort"]), toSpliced: define("instance/to-spliced", ["esnext.array.to-spliced"]), toString: define(null, ["es.object.to-string", "es.error.to-string", "es.date.to-string", "es.regexp.to-string"]), trim: define("instance/trim", ["es.string.trim"]), trimEnd: define("instance/trim-end", ["es.string.trim-end"]), trimLeft: define("instance/trim-left", ["es.string.trim-start"]), trimRight: define("instance/trim-right", ["es.string.trim-end"]), trimStart: define("instance/trim-start", ["es.string.trim-start"]), uniqueBy: define("instance/unique-by", ["esnext.array.unique-by", "es.map"]), unshift: define("instance/unshift", ["es.array.unshift"]), unThis: define("instance/un-this", ["esnext.function.un-this"]), values: define("instance/values", ArrayNatureIteratorsWithTag), with: define("instance/with", ["esnext.array.with"]), __defineGetter__: define(null, ["es.object.define-getter"]), __defineSetter__: define(null, ["es.object.define-setter"]), __lookupGetter__: define(null, ["es.object.lookup-getter"]), __lookupSetter__: define(null, ["es.object.lookup-setter"]), ["__proto__"]: define(null, ["es.object.proto"]) }; const CommonInstanceDependencies = new Set(["es.object.to-string", "es.object.define-getter", "es.object.define-setter", "es.object.lookup-getter", "es.object.lookup-setter", "es.regexp.exec"]); const { types: t$2 } = _babel.default || _babel; function canSkipPolyfill(desc, path) { const { node, parent } = path; switch (desc.name) { case "es.string.split": { if (!t$2.isCallExpression(parent, { callee: node })) return false; if (parent.arguments.length < 1) return true; const splitter = parent.arguments[0]; return t$2.isStringLiteral(splitter) || t$2.isTemplateLiteral(splitter); } } } const { types: t$1 } = _babel.default || _babel; function callMethod(path, id) { const { object } = path.node; let context1, context2; if (t$1.isIdentifier(object)) { context1 = object; context2 = t$1.cloneNode(object); } else { context1 = path.scope.generateDeclaredUidIdentifier("context"); context2 = t$1.assignmentExpression("=", t$1.cloneNode(context1), object); } path.replaceWith(t$1.memberExpression(t$1.callExpression(id, [context2]), t$1.identifier("call"))); path.parentPath.unshiftContainer("arguments", context1); } function isCoreJSSource(source) { if (typeof source === "string") { source = source.replace(/\\/g, "/").replace(/(\/(index)?)?(\.js)?$/i, "").toLowerCase(); } return Object.prototype.hasOwnProperty.call(corejsEntries, source) && corejsEntries[source]; } function coreJSModule(name) { return `core-js/modules/${name}.js`; } function coreJSPureHelper(name, useBabelRuntime, ext) { return useBabelRuntime ? `${useBabelRuntime}/core-js/${name}${ext}` : `core-js-pure/features/${name}.js`; } const { types: t } = _babel.default || _babel; const runtimeCompat = "#__secret_key__@babel/runtime__compatibility"; const esnextFallback = (name, cb) => { if (cb(name)) return true; if (!name.startsWith("es.")) return false; const fallback = `esnext.${name.slice(3)}`; if (!corejs3Polyfills[fallback]) return false; return cb(fallback); }; var index = defineProvider(function ({ getUtils, method, shouldInjectPolyfill, createMetaResolver, debug, babel }, { version = 3, proposals, shippedProposals, [runtimeCompat]: { useBabelRuntime, ext = ".js" } = { useBabelRuntime: "" } }) { const isWebpack = babel.caller(caller => (caller == null ? void 0 : caller.name) === "babel-loader"); const resolve = createMetaResolver({ global: BuiltIns, static: StaticProperties, instance: InstanceProperties }); const available = new Set(getModulesListForTargetVersion(version)); function getCoreJSPureBase(useProposalBase) { return useBabelRuntime ? useProposalBase ? `${useBabelRuntime}/core-js` : `${useBabelRuntime}/core-js-stable` : useProposalBase ? "core-js-pure/features" : "core-js-pure/stable"; } function maybeInjectGlobalImpl(name, utils) { if (shouldInjectPolyfill(name)) { debug(name); utils.injectGlobalImport(coreJSModule(name)); return true; } return false; } function maybeInjectGlobal(names, utils, fallback = true) { for (const name of names) { if (fallback) { esnextFallback(name, name => maybeInjectGlobalImpl(name, utils)); } else { maybeInjectGlobalImpl(name, utils); } } } function maybeInjectPure(desc, hint, utils, object) { if (desc.pure && !(object && desc.exclude && desc.exclude.includes(object)) && esnextFallback(desc.name, shouldInjectPolyfill)) { const { name } = desc; let useProposalBase = false; if (proposals || shippedProposals && name.startsWith("esnext.")) { useProposalBase = true; } else if (name.startsWith("es.") && !available.has(name)) { useProposalBase = true; } const coreJSPureBase = getCoreJSPureBase(useProposalBase); return utils.injectDefaultImport(`${coreJSPureBase}/${desc.pure}${ext}`, hint); } } function isFeatureStable(name) { if (name.startsWith("esnext.")) { const esName = `es.${name.slice(7)}`; // If its imaginative esName is not in latest compat data, it means // the proposal is not stage 4 return esName in corejs3Polyfills; } return true; } return { name: "corejs3", polyfills: corejs3Polyfills, filterPolyfills(name) { if (!available.has(name)) return false; if (proposals || method === "entry-global") return true; if (shippedProposals && corejs3ShippedProposalsList.has(name)) { return true; } return isFeatureStable(name); }, entryGlobal(meta, utils, path) { if (meta.kind !== "import") return; const modules = isCoreJSSource(meta.source); if (!modules) return; if (modules.length === 1 && meta.source === coreJSModule(modules[0]) && shouldInjectPolyfill(modules[0])) { // Avoid infinite loop: do not replace imports with a new copy of // themselves. debug(null); return; } const modulesSet = new Set(modules); const filteredModules = modules.filter(module => { if (!module.startsWith("esnext.")) return true; const stable = module.replace("esnext.", "es."); if (modulesSet.has(stable) && shouldInjectPolyfill(stable)) { return false; } return true; }); maybeInjectGlobal(filteredModules, utils, false); path.remove(); }, usageGlobal(meta, utils, path) { const resolved = resolve(meta); if (!resolved) return; if (canSkipPolyfill(resolved.desc, path)) return; let deps = resolved.desc.global; if (resolved.kind !== "global" && "object" in meta && meta.object && meta.placement === "prototype") { const low = meta.object.toLowerCase(); deps = deps.filter(m => m.includes(low) || CommonInstanceDependencies.has(m)); } maybeInjectGlobal(deps, utils); }, usagePure(meta, utils, path) { if (meta.kind === "in") { if (meta.key === "Symbol.iterator") { path.replaceWith(t.callExpression(utils.injectDefaultImport(coreJSPureHelper("is-iterable", useBabelRuntime, ext), "isIterable"), [path.node.right] // meta.kind === "in" narrows this )); } return; } if (path.parentPath.isUnaryExpression({ operator: "delete" })) return; if (meta.kind === "property") { // We can't compile destructuring and updateExpression. if (!path.isMemberExpression()) return; if (!path.isReferenced()) return; if (path.parentPath.isUpdateExpression()) return; if (t.isSuper(path.node.object)) { return; } if (meta.key === "Symbol.iterator") { if (!shouldInjectPolyfill("es.symbol.iterator")) return; const { parent, node } = path; if (t.isCallExpression(parent, { callee: node })) { if (parent.arguments.length === 0) { path.parentPath.replaceWith(t.callExpression(utils.injectDefaultImport(coreJSPureHelper("get-iterator", useBabelRuntime, ext), "getIterator"), [node.object])); path.skip(); } else { callMethod(path, utils.injectDefaultImport(coreJSPureHelper("get-iterator-method", useBabelRuntime, ext), "getIteratorMethod")); } } else { path.replaceWith(t.callExpression(utils.injectDefaultImport(coreJSPureHelper("get-iterator-method", useBabelRuntime, ext), "getIteratorMethod"), [path.node.object])); } return; } } let resolved = resolve(meta); if (!resolved) return; if (canSkipPolyfill(resolved.desc, path)) return; if (useBabelRuntime && resolved.desc.pure && resolved.desc.pure.slice(-6) === "/index") { // Remove /index, since it doesn't exist in @babel/runtime-corejs3s resolved = { ...resolved, desc: { ...resolved.desc, pure: resolved.desc.pure.slice(0, -6) } }; } if (resolved.kind === "global") { const id = maybeInjectPure(resolved.desc, resolved.name, utils); if (id) path.replaceWith(id); } else if (resolved.kind === "static") { const id = maybeInjectPure(resolved.desc, resolved.name, utils, // @ts-expect-error meta.object); if (id) path.replaceWith(id); } else if (resolved.kind === "instance") { const id = maybeInjectPure(resolved.desc, `${resolved.name}InstanceProperty`, utils, // @ts-expect-error meta.object); if (!id) return; const { node } = path; if (t.isCallExpression(path.parent, { callee: node })) { callMethod(path, id); } else { path.replaceWith(t.callExpression(id, [node.object])); } } }, visitor: method === "usage-global" && { // import("foo") CallExpression(path) { if (path.get("callee").isImport()) { const utils = getUtils(path); if (isWebpack) { // Webpack uses Promise.all to handle dynamic import. maybeInjectGlobal(PromiseDependenciesWithIterators, utils); } else { maybeInjectGlobal(PromiseDependencies, utils); } } }, // (async function () { }).finally(...) Function(path) { if (path.node.async) { maybeInjectGlobal(PromiseDependencies, getUtils(path)); } }, // for-of, [a, b] = c "ForOfStatement|ArrayPattern"(path) { maybeInjectGlobal(CommonIterators, getUtils(path)); }, // [...spread] SpreadElement(path) { if (!path.parentPath.isObjectExpression()) { maybeInjectGlobal(CommonIterators, getUtils(path)); } }, // yield* YieldExpression(path) { if (path.node.delegate) { maybeInjectGlobal(CommonIterators, getUtils(path)); } } } }; }); export default index; //# sourceMappingURL=index.mjs.map esm/index.mjs.map000066600000245415150545024510007746 0ustar00{"version":3,"file":"index.mjs","sources":["../src/shipped-proposals.ts","../src/built-in-definitions.ts","../src/usage-filters.ts","../src/utils.ts","../src/index.ts"],"sourcesContent":["// This file is automatically generated by scripts/build-corejs3-shipped-proposals.mjs\n\nexport default new Set([\n \"esnext.array.group\",\n \"esnext.array.group-to-map\",\n \"esnext.array.to-reversed\",\n \"esnext.array.to-sorted\",\n \"esnext.array.to-spliced\",\n \"esnext.array.with\",\n \"esnext.typed-array.to-reversed\",\n \"esnext.typed-array.to-sorted\",\n \"esnext.typed-array.with\",\n]);\n","import corejs3Polyfills from \"../core-js-compat/data.js\";\n\ntype ObjectMap = { [name: string]: V };\ntype ObjectMap2 = ObjectMap>;\n\nexport type CoreJSPolyfillDescriptor = {\n name: string;\n pure: string | null;\n global: string[];\n exclude: string[] | null;\n};\n\nconst polyfillsOrder = {};\nObject.keys(corejs3Polyfills).forEach((name, index) => {\n polyfillsOrder[name] = index;\n});\n\nconst define = (\n pure,\n global,\n name = global[0],\n exclude?,\n): CoreJSPolyfillDescriptor => {\n return {\n name,\n pure,\n global: global.sort((a, b) => polyfillsOrder[a] - polyfillsOrder[b]),\n exclude,\n };\n};\n\nconst typed = (name: string) => define(null, [name, ...TypedArrayDependencies]);\n\nconst ArrayNatureIterators = [\n \"es.array.iterator\",\n \"web.dom-collections.iterator\",\n];\n\nexport const CommonIterators = [\"es.string.iterator\", ...ArrayNatureIterators];\n\nconst ArrayNatureIteratorsWithTag = [\n \"es.object.to-string\",\n ...ArrayNatureIterators,\n];\n\nconst CommonIteratorsWithTag = [\"es.object.to-string\", ...CommonIterators];\n\nconst ErrorDependencies = [\"es.error.cause\", \"es.error.to-string\"];\n\nconst TypedArrayDependencies = [\n \"es.typed-array.at\",\n \"es.typed-array.copy-within\",\n \"es.typed-array.every\",\n \"es.typed-array.fill\",\n \"es.typed-array.filter\",\n \"es.typed-array.find\",\n \"es.typed-array.find-index\",\n \"es.typed-array.find-last\",\n \"es.typed-array.find-last-index\",\n \"es.typed-array.for-each\",\n \"es.typed-array.includes\",\n \"es.typed-array.index-of\",\n \"es.typed-array.iterator\",\n \"es.typed-array.join\",\n \"es.typed-array.last-index-of\",\n \"es.typed-array.map\",\n \"es.typed-array.reduce\",\n \"es.typed-array.reduce-right\",\n \"es.typed-array.reverse\",\n \"es.typed-array.set\",\n \"es.typed-array.slice\",\n \"es.typed-array.some\",\n \"es.typed-array.sort\",\n \"es.typed-array.subarray\",\n \"es.typed-array.to-locale-string\",\n \"es.typed-array.to-string\",\n \"es.object.to-string\",\n \"es.array.iterator\",\n \"es.array-buffer.slice\",\n \"esnext.typed-array.filter-reject\",\n \"esnext.typed-array.group-by\",\n \"esnext.typed-array.to-reversed\",\n \"esnext.typed-array.to-sorted\",\n \"esnext.typed-array.to-spliced\",\n \"esnext.typed-array.unique-by\",\n \"esnext.typed-array.with\",\n];\n\nexport const PromiseDependencies = [\"es.promise\", \"es.object.to-string\"];\n\nexport const PromiseDependenciesWithIterators = [\n ...PromiseDependencies,\n ...CommonIterators,\n];\n\nconst SymbolDependencies = [\n \"es.symbol\",\n \"es.symbol.description\",\n \"es.object.to-string\",\n];\n\nconst MapDependencies = [\n \"es.map\",\n \"esnext.map.delete-all\",\n \"esnext.map.emplace\",\n \"esnext.map.every\",\n \"esnext.map.filter\",\n \"esnext.map.find\",\n \"esnext.map.find-key\",\n \"esnext.map.includes\",\n \"esnext.map.key-of\",\n \"esnext.map.map-keys\",\n \"esnext.map.map-values\",\n \"esnext.map.merge\",\n \"esnext.map.reduce\",\n \"esnext.map.some\",\n \"esnext.map.update\",\n ...CommonIteratorsWithTag,\n];\n\nconst SetDependencies = [\n \"es.set\",\n \"esnext.set.add-all\",\n \"esnext.set.delete-all\",\n \"esnext.set.difference\",\n \"esnext.set.every\",\n \"esnext.set.filter\",\n \"esnext.set.find\",\n \"esnext.set.intersection\",\n \"esnext.set.is-disjoint-from\",\n \"esnext.set.is-subset-of\",\n \"esnext.set.is-superset-of\",\n \"esnext.set.join\",\n \"esnext.set.map\",\n \"esnext.set.reduce\",\n \"esnext.set.some\",\n \"esnext.set.symmetric-difference\",\n \"esnext.set.union\",\n ...CommonIteratorsWithTag,\n];\n\nconst WeakMapDependencies = [\n \"es.weak-map\",\n \"esnext.weak-map.delete-all\",\n \"esnext.weak-map.emplace\",\n ...CommonIteratorsWithTag,\n];\n\nconst WeakSetDependencies = [\n \"es.weak-set\",\n \"esnext.weak-set.add-all\",\n \"esnext.weak-set.delete-all\",\n ...CommonIteratorsWithTag,\n];\n\nconst DOMExceptionDependencies = [\n \"web.dom-exception.constructor\",\n \"web.dom-exception.stack\",\n \"web.dom-exception.to-string-tag\",\n \"es.error.to-string\",\n];\n\nconst URLSearchParamsDependencies = [\n \"web.url-search-params\",\n ...CommonIteratorsWithTag,\n];\n\nconst AsyncIteratorDependencies = [\n \"esnext.async-iterator.constructor\",\n ...PromiseDependencies,\n];\n\nconst AsyncIteratorProblemMethods = [\n \"esnext.async-iterator.every\",\n \"esnext.async-iterator.filter\",\n \"esnext.async-iterator.find\",\n \"esnext.async-iterator.flat-map\",\n \"esnext.async-iterator.for-each\",\n \"esnext.async-iterator.map\",\n \"esnext.async-iterator.reduce\",\n \"esnext.async-iterator.some\",\n];\n\nconst IteratorDependencies = [\n \"esnext.iterator.constructor\",\n \"es.object.to-string\",\n];\n\nconst TypedArrayStaticMethods = {\n from: define(null, [\"es.typed-array.from\"]),\n fromAsync: define(null, [\n \"esnext.typed-array.from-async\",\n ...PromiseDependenciesWithIterators,\n ]),\n of: define(null, [\"es.typed-array.of\"]),\n};\n\nexport const BuiltIns: ObjectMap = {\n AsyncIterator: define(\"async-iterator/index\", AsyncIteratorDependencies),\n AggregateError: define(\"aggregate-error\", [\n \"es.aggregate-error\",\n ...ErrorDependencies,\n ...CommonIteratorsWithTag,\n \"es.aggregate-error.cause\",\n ]),\n ArrayBuffer: define(null, [\n \"es.array-buffer.constructor\",\n \"es.array-buffer.slice\",\n \"es.object.to-string\",\n ]),\n DataView: define(null, [\n \"es.data-view\",\n \"es.array-buffer.slice\",\n \"es.object.to-string\",\n ]),\n Date: define(null, [\"es.date.to-string\"]),\n DOMException: define(\"dom-exception\", DOMExceptionDependencies),\n Error: define(null, ErrorDependencies),\n EvalError: define(null, ErrorDependencies),\n Float32Array: typed(\"es.typed-array.float32-array\"),\n Float64Array: typed(\"es.typed-array.float64-array\"),\n Int8Array: typed(\"es.typed-array.int8-array\"),\n Int16Array: typed(\"es.typed-array.int16-array\"),\n Int32Array: typed(\"es.typed-array.int32-array\"),\n Iterator: define(\"iterator/index\", IteratorDependencies),\n Uint8Array: typed(\"es.typed-array.uint8-array\"),\n Uint8ClampedArray: typed(\"es.typed-array.uint8-clamped-array\"),\n Uint16Array: typed(\"es.typed-array.uint16-array\"),\n Uint32Array: typed(\"es.typed-array.uint32-array\"),\n Map: define(\"map/index\", MapDependencies),\n Number: define(null, [\"es.number.constructor\"]),\n Observable: define(\"observable/index\", [\n \"esnext.observable\",\n \"esnext.symbol.observable\",\n \"es.object.to-string\",\n ...CommonIteratorsWithTag,\n ]),\n Promise: define(\"promise/index\", PromiseDependencies),\n RangeError: define(null, ErrorDependencies),\n ReferenceError: define(null, ErrorDependencies),\n Reflect: define(null, [\"es.reflect.to-string-tag\", \"es.object.to-string\"]),\n RegExp: define(null, [\n \"es.regexp.constructor\",\n \"es.regexp.dot-all\",\n \"es.regexp.exec\",\n \"es.regexp.sticky\",\n \"es.regexp.to-string\",\n ]),\n Set: define(\"set/index\", SetDependencies),\n Symbol: define(\"symbol/index\", SymbolDependencies),\n SyntaxError: define(null, ErrorDependencies),\n TypeError: define(null, ErrorDependencies),\n URIError: define(null, ErrorDependencies),\n URL: define(\"url/index\", [\"web.url\", ...URLSearchParamsDependencies]),\n URLSearchParams: define(\n \"url-search-params/index\",\n URLSearchParamsDependencies,\n ),\n WeakMap: define(\"weak-map/index\", WeakMapDependencies),\n WeakSet: define(\"weak-set/index\", WeakSetDependencies),\n\n atob: define(\"atob\", [\"web.atob\", ...DOMExceptionDependencies]),\n btoa: define(\"btoa\", [\"web.btoa\", ...DOMExceptionDependencies]),\n clearImmediate: define(\"clear-immediate\", [\"web.immediate\"]),\n compositeKey: define(\"composite-key\", [\"esnext.composite-key\"]),\n compositeSymbol: define(\"composite-symbol\", [\"esnext.composite-symbol\"]),\n escape: define(\"escape\", [\"es.escape\"]),\n fetch: define(null, PromiseDependencies),\n globalThis: define(\"global-this\", [\"es.global-this\"]),\n parseFloat: define(\"parse-float\", [\"es.parse-float\"]),\n parseInt: define(\"parse-int\", [\"es.parse-int\"]),\n queueMicrotask: define(\"queue-microtask\", [\"web.queue-microtask\"]),\n setImmediate: define(\"set-immediate\", [\"web.immediate\"]),\n setInterval: define(\"set-interval\", [\"web.timers\"]),\n setTimeout: define(\"set-timeout\", [\"web.timers\"]),\n structuredClone: define(\"structured-clone\", [\n \"web.structured-clone\",\n ...DOMExceptionDependencies,\n \"es.array.iterator\",\n \"es.object.keys\",\n \"es.object.to-string\",\n \"es.map\",\n \"es.set\",\n ]),\n unescape: define(\"unescape\", [\"es.unescape\"]),\n};\n\nexport const StaticProperties: ObjectMap2 = {\n AsyncIterator: {\n from: define(\"async-iterator/from\", [\n \"esnext.async-iterator.from\",\n ...AsyncIteratorDependencies,\n ...AsyncIteratorProblemMethods,\n ...CommonIterators,\n ]),\n },\n Array: {\n from: define(\"array/from\", [\"es.array.from\", \"es.string.iterator\"]),\n fromAsync: define(\"array/from-async\", [\n \"esnext.array.from-async\",\n ...PromiseDependenciesWithIterators,\n ]),\n isArray: define(\"array/is-array\", [\"es.array.is-array\"]),\n isTemplateObject: define(\"array/is-template-object\", [\n \"esnext.array.is-template-object\",\n ]),\n of: define(\"array/of\", [\"es.array.of\"]),\n },\n\n ArrayBuffer: {\n isView: define(null, [\"es.array-buffer.is-view\"]),\n },\n\n BigInt: {\n range: define(\"bigint/range\", [\n \"esnext.bigint.range\",\n \"es.object.to-string\",\n ]),\n },\n\n Date: {\n now: define(\"date/now\", [\"es.date.now\"]),\n },\n\n Function: {\n isCallable: define(\"function/is-callable\", [\"esnext.function.is-callable\"]),\n isConstructor: define(\"function/is-constructor\", [\n \"esnext.function.is-constructor\",\n ]),\n },\n\n Iterator: {\n from: define(\"iterator/from\", [\n \"esnext.iterator.from\",\n ...IteratorDependencies,\n ...CommonIterators,\n ]),\n },\n\n JSON: {\n stringify: define(\"json/stringify\", [\"es.json.stringify\"], \"es.symbol\"),\n },\n\n Math: {\n DEG_PER_RAD: define(\"math/deg-per-rad\", [\"esnext.math.deg-per-rad\"]),\n RAD_PER_DEG: define(\"math/rad-per-deg\", [\"esnext.math.rad-per-deg\"]),\n acosh: define(\"math/acosh\", [\"es.math.acosh\"]),\n asinh: define(\"math/asinh\", [\"es.math.asinh\"]),\n atanh: define(\"math/atanh\", [\"es.math.atanh\"]),\n cbrt: define(\"math/cbrt\", [\"es.math.cbrt\"]),\n clamp: define(\"math/clamp\", [\"esnext.math.clamp\"]),\n clz32: define(\"math/clz32\", [\"es.math.clz32\"]),\n cosh: define(\"math/cosh\", [\"es.math.cosh\"]),\n degrees: define(\"math/degrees\", [\"esnext.math.degrees\"]),\n expm1: define(\"math/expm1\", [\"es.math.expm1\"]),\n fround: define(\"math/fround\", [\"es.math.fround\"]),\n fscale: define(\"math/fscale\", [\"esnext.math.fscale\"]),\n hypot: define(\"math/hypot\", [\"es.math.hypot\"]),\n iaddh: define(\"math/iaddh\", [\"esnext.math.iaddh\"]),\n imul: define(\"math/imul\", [\"es.math.imul\"]),\n imulh: define(\"math/imulh\", [\"esnext.math.imulh\"]),\n isubh: define(\"math/isubh\", [\"esnext.math.isubh\"]),\n log10: define(\"math/log10\", [\"es.math.log10\"]),\n log1p: define(\"math/log1p\", [\"es.math.log1p\"]),\n log2: define(\"math/log2\", [\"es.math.log2\"]),\n radians: define(\"math/radians\", [\"esnext.math.radians\"]),\n scale: define(\"math/scale\", [\"esnext.math.scale\"]),\n seededPRNG: define(\"math/seeded-prng\", [\"esnext.math.seeded-prng\"]),\n sign: define(\"math/sign\", [\"es.math.sign\"]),\n signbit: define(\"math/signbit\", [\"esnext.math.signbit\"]),\n sinh: define(\"math/sinh\", [\"es.math.sinh\"]),\n tanh: define(\"math/tanh\", [\"es.math.tanh\"]),\n trunc: define(\"math/trunc\", [\"es.math.trunc\"]),\n umulh: define(\"math/umulh\", [\"esnext.math.umulh\"]),\n },\n\n Map: {\n from: define(null, [\"esnext.map.from\", ...MapDependencies]),\n groupBy: define(null, [\"esnext.map.group-by\", ...MapDependencies]),\n keyBy: define(null, [\"esnext.map.key-by\", ...MapDependencies]),\n of: define(null, [\"esnext.map.of\", ...MapDependencies]),\n },\n\n Number: {\n EPSILON: define(\"number/epsilon\", [\"es.number.epsilon\"]),\n MAX_SAFE_INTEGER: define(\"number/max-safe-integer\", [\n \"es.number.max-safe-integer\",\n ]),\n MIN_SAFE_INTEGER: define(\"number/min-safe-integer\", [\n \"es.number.min-safe-integer\",\n ]),\n fromString: define(\"number/from-string\", [\"esnext.number.from-string\"]),\n isFinite: define(\"number/is-finite\", [\"es.number.is-finite\"]),\n isInteger: define(\"number/is-integer\", [\"es.number.is-integer\"]),\n isNaN: define(\"number/is-nan\", [\"es.number.is-nan\"]),\n isSafeInteger: define(\"number/is-safe-integer\", [\n \"es.number.is-safe-integer\",\n ]),\n parseFloat: define(\"number/parse-float\", [\"es.number.parse-float\"]),\n parseInt: define(\"number/parse-int\", [\"es.number.parse-int\"]),\n range: define(\"number/range\", [\n \"esnext.number.range\",\n \"es.object.to-string\",\n ]),\n },\n\n Object: {\n assign: define(\"object/assign\", [\"es.object.assign\"]),\n create: define(\"object/create\", [\"es.object.create\"]),\n defineProperties: define(\"object/define-properties\", [\n \"es.object.define-properties\",\n ]),\n defineProperty: define(\"object/define-property\", [\n \"es.object.define-property\",\n ]),\n entries: define(\"object/entries\", [\"es.object.entries\"]),\n freeze: define(\"object/freeze\", [\"es.object.freeze\"]),\n fromEntries: define(\"object/from-entries\", [\n \"es.object.from-entries\",\n \"es.array.iterator\",\n ]),\n getOwnPropertyDescriptor: define(\"object/get-own-property-descriptor\", [\n \"es.object.get-own-property-descriptor\",\n ]),\n getOwnPropertyDescriptors: define(\"object/get-own-property-descriptors\", [\n \"es.object.get-own-property-descriptors\",\n ]),\n getOwnPropertyNames: define(\"object/get-own-property-names\", [\n \"es.object.get-own-property-names\",\n ]),\n getOwnPropertySymbols: define(\"object/get-own-property-symbols\", [\n \"es.symbol\",\n ]),\n getPrototypeOf: define(\"object/get-prototype-of\", [\n \"es.object.get-prototype-of\",\n ]),\n hasOwn: define(\"object/has-own\", [\"es.object.has-own\"]),\n is: define(\"object/is\", [\"es.object.is\"]),\n isExtensible: define(\"object/is-extensible\", [\"es.object.is-extensible\"]),\n isFrozen: define(\"object/is-frozen\", [\"es.object.is-frozen\"]),\n isSealed: define(\"object/is-sealed\", [\"es.object.is-sealed\"]),\n keys: define(\"object/keys\", [\"es.object.keys\"]),\n preventExtensions: define(\"object/prevent-extensions\", [\n \"es.object.prevent-extensions\",\n ]),\n seal: define(\"object/seal\", [\"es.object.seal\"]),\n setPrototypeOf: define(\"object/set-prototype-of\", [\n \"es.object.set-prototype-of\",\n ]),\n values: define(\"object/values\", [\"es.object.values\"]),\n },\n\n Promise: {\n all: define(null, PromiseDependenciesWithIterators),\n allSettled: define(null, [\n \"es.promise.all-settled\",\n ...PromiseDependenciesWithIterators,\n ]),\n any: define(null, [\n \"es.promise.any\",\n \"es.aggregate-error\",\n ...PromiseDependenciesWithIterators,\n ]),\n race: define(null, PromiseDependenciesWithIterators),\n try: define(null, [\n \"esnext.promise.try\",\n ...PromiseDependenciesWithIterators,\n ]),\n },\n\n Reflect: {\n apply: define(\"reflect/apply\", [\"es.reflect.apply\"]),\n construct: define(\"reflect/construct\", [\"es.reflect.construct\"]),\n defineMetadata: define(\"reflect/define-metadata\", [\n \"esnext.reflect.define-metadata\",\n ]),\n defineProperty: define(\"reflect/define-property\", [\n \"es.reflect.define-property\",\n ]),\n deleteMetadata: define(\"reflect/delete-metadata\", [\n \"esnext.reflect.delete-metadata\",\n ]),\n deleteProperty: define(\"reflect/delete-property\", [\n \"es.reflect.delete-property\",\n ]),\n get: define(\"reflect/get\", [\"es.reflect.get\"]),\n getMetadata: define(\"reflect/get-metadata\", [\n \"esnext.reflect.get-metadata\",\n ]),\n getMetadataKeys: define(\"reflect/get-metadata-keys\", [\n \"esnext.reflect.get-metadata-keys\",\n ]),\n getOwnMetadata: define(\"reflect/get-own-metadata\", [\n \"esnext.reflect.get-own-metadata\",\n ]),\n getOwnMetadataKeys: define(\"reflect/get-own-metadata-keys\", [\n \"esnext.reflect.get-own-metadata-keys\",\n ]),\n getOwnPropertyDescriptor: define(\"reflect/get-own-property-descriptor\", [\n \"es.reflect.get-own-property-descriptor\",\n ]),\n getPrototypeOf: define(\"reflect/get-prototype-of\", [\n \"es.reflect.get-prototype-of\",\n ]),\n has: define(\"reflect/has\", [\"es.reflect.has\"]),\n hasMetadata: define(\"reflect/has-metadata\", [\n \"esnext.reflect.has-metadata\",\n ]),\n hasOwnMetadata: define(\"reflect/has-own-metadata\", [\n \"esnext.reflect.has-own-metadata\",\n ]),\n isExtensible: define(\"reflect/is-extensible\", [\"es.reflect.is-extensible\"]),\n metadata: define(\"reflect/metadata\", [\"esnext.reflect.metadata\"]),\n ownKeys: define(\"reflect/own-keys\", [\"es.reflect.own-keys\"]),\n preventExtensions: define(\"reflect/prevent-extensions\", [\n \"es.reflect.prevent-extensions\",\n ]),\n set: define(\"reflect/set\", [\"es.reflect.set\"]),\n setPrototypeOf: define(\"reflect/set-prototype-of\", [\n \"es.reflect.set-prototype-of\",\n ]),\n },\n\n Set: {\n from: define(null, [\"esnext.set.from\", ...SetDependencies]),\n of: define(null, [\"esnext.set.of\", ...SetDependencies]),\n },\n\n String: {\n cooked: define(\"string/cooked\", [\"esnext.string.cooked\"]),\n fromCodePoint: define(\"string/from-code-point\", [\n \"es.string.from-code-point\",\n ]),\n raw: define(\"string/raw\", [\"es.string.raw\"]),\n },\n\n Symbol: {\n asyncDispose: define(\"symbol/async-dispose\", [\n \"esnext.symbol.async-dispose\",\n ]),\n asyncIterator: define(\"symbol/async-iterator\", [\n \"es.symbol.async-iterator\",\n ]),\n dispose: define(\"symbol/dispose\", [\"esnext.symbol.dispose\"]),\n for: define(\"symbol/for\", [], \"es.symbol\"),\n hasInstance: define(\"symbol/has-instance\", [\n \"es.symbol.has-instance\",\n \"es.function.has-instance\",\n ]),\n isConcatSpreadable: define(\"symbol/is-concat-spreadable\", [\n \"es.symbol.is-concat-spreadable\",\n \"es.array.concat\",\n ]),\n iterator: define(\"symbol/iterator\", [\n \"es.symbol.iterator\",\n ...CommonIteratorsWithTag,\n ]),\n keyFor: define(\"symbol/key-for\", [], \"es.symbol\"),\n match: define(\"symbol/match\", [\"es.symbol.match\", \"es.string.match\"]),\n matcher: define(\"symbol/matcher\", [\"esnext.symbol.matcher\"]),\n matchAll: define(\"symbol/match-all\", [\n \"es.symbol.match-all\",\n \"es.string.match-all\",\n ]),\n metadata: define(\"symbol/metadata\", [\"esnext.symbol.metadata\"]),\n metadataKey: define(\"symbol/metadata-key\", [\"esnext.symbol.metadata-key\"]),\n observable: define(\"symbol/observable\", [\"esnext.symbol.observable\"]),\n patternMatch: define(\"symbol/pattern-match\", [\n \"esnext.symbol.pattern-match\",\n ]),\n replace: define(\"symbol/replace\", [\n \"es.symbol.replace\",\n \"es.string.replace\",\n ]),\n search: define(\"symbol/search\", [\"es.symbol.search\", \"es.string.search\"]),\n species: define(\"symbol/species\", [\n \"es.symbol.species\",\n \"es.array.species\",\n ]),\n split: define(\"symbol/split\", [\"es.symbol.split\", \"es.string.split\"]),\n toPrimitive: define(\"symbol/to-primitive\", [\n \"es.symbol.to-primitive\",\n \"es.date.to-primitive\",\n ]),\n toStringTag: define(\"symbol/to-string-tag\", [\n \"es.symbol.to-string-tag\",\n \"es.object.to-string\",\n \"es.math.to-string-tag\",\n \"es.json.to-string-tag\",\n ]),\n unscopables: define(\"symbol/unscopables\", [\"es.symbol.unscopables\"]),\n },\n\n WeakMap: {\n from: define(null, [\"esnext.weak-map.from\", ...WeakMapDependencies]),\n of: define(null, [\"esnext.weak-map.of\", ...WeakMapDependencies]),\n },\n\n WeakSet: {\n from: define(null, [\"esnext.weak-set.from\", ...WeakSetDependencies]),\n of: define(null, [\"esnext.weak-set.of\", ...WeakSetDependencies]),\n },\n\n Int8Array: TypedArrayStaticMethods,\n Uint8Array: TypedArrayStaticMethods,\n Uint8ClampedArray: TypedArrayStaticMethods,\n Int16Array: TypedArrayStaticMethods,\n Uint16Array: TypedArrayStaticMethods,\n Int32Array: TypedArrayStaticMethods,\n Uint32Array: TypedArrayStaticMethods,\n Float32Array: TypedArrayStaticMethods,\n Float64Array: TypedArrayStaticMethods,\n\n WebAssembly: {\n CompileError: define(null, ErrorDependencies),\n LinkError: define(null, ErrorDependencies),\n RuntimeError: define(null, ErrorDependencies),\n },\n};\n\nexport const InstanceProperties = {\n asIndexedPairs: define(\"instance/asIndexedPairs\", [\n \"esnext.async-iterator.as-indexed-pairs\",\n ...AsyncIteratorDependencies,\n \"esnext.iterator.as-indexed-pairs\",\n ...IteratorDependencies,\n ]),\n at: define(\"instance/at\", [\n // TODO: We should introduce overloaded instance methods definition\n // Before that is implemented, the `esnext.string.at` must be the first\n // In pure mode, the provider resolves the descriptor as a \"pure\" `esnext.string.at`\n // and treats the compat-data of `esnext.string.at` as the compat-data of\n // pure import `instance/at`. The first polyfill here should have the lowest corejs\n // supported versions.\n \"esnext.string.at\",\n \"es.string.at-alternative\",\n \"es.array.at\",\n ]),\n anchor: define(null, [\"es.string.anchor\"]),\n big: define(null, [\"es.string.big\"]),\n bind: define(\"instance/bind\", [\"es.function.bind\"]),\n blink: define(null, [\"es.string.blink\"]),\n bold: define(null, [\"es.string.bold\"]),\n codePointAt: define(\"instance/code-point-at\", [\"es.string.code-point-at\"]),\n codePoints: define(\"instance/code-points\", [\"esnext.string.code-points\"]),\n concat: define(\"instance/concat\", [\"es.array.concat\"], undefined, [\"String\"]),\n copyWithin: define(\"instance/copy-within\", [\"es.array.copy-within\"]),\n description: define(null, [\"es.symbol\", \"es.symbol.description\"]),\n dotAll: define(\"instance/dot-all\", [\"es.regexp.dot-all\"]),\n drop: define(\"instance/drop\", [\n \"esnext.async-iterator.drop\",\n ...AsyncIteratorDependencies,\n \"esnext.iterator.drop\",\n ...IteratorDependencies,\n ]),\n emplace: define(\"instance/emplace\", [\n \"esnext.map.emplace\",\n \"esnext.weak-map.emplace\",\n ]),\n endsWith: define(\"instance/ends-with\", [\"es.string.ends-with\"]),\n entries: define(\"instance/entries\", ArrayNatureIteratorsWithTag),\n every: define(\"instance/every\", [\n \"es.array.every\",\n \"esnext.async-iterator.every\",\n // TODO: add async iterator dependencies when we support sub-dependencies\n // esnext.async-iterator.every depends on es.promise\n // but we don't want to pull es.promise when esnext.async-iterator is disabled\n //\n // ...AsyncIteratorDependencies\n \"esnext.iterator.every\",\n ...IteratorDependencies,\n ]),\n exec: define(null, [\"es.regexp.exec\"]),\n fill: define(\"instance/fill\", [\"es.array.fill\"]),\n filter: define(\"instance/filter\", [\n \"es.array.filter\",\n \"esnext.async-iterator.filter\",\n \"esnext.iterator.filter\",\n ...IteratorDependencies,\n ]),\n filterReject: define(\"instance/filterReject\", [\"esnext.array.filter-reject\"]),\n finally: define(null, [\"es.promise.finally\", ...PromiseDependencies]),\n find: define(\"instance/find\", [\n \"es.array.find\",\n \"esnext.async-iterator.find\",\n \"esnext.iterator.find\",\n ...IteratorDependencies,\n ]),\n findIndex: define(\"instance/find-index\", [\"es.array.find-index\"]),\n findLast: define(\"instance/find-last\", [\"es.array.find-last\"]),\n findLastIndex: define(\"instance/find-last-index\", [\n \"es.array.find-last-index\",\n ]),\n fixed: define(null, [\"es.string.fixed\"]),\n flags: define(\"instance/flags\", [\"es.regexp.flags\"]),\n flatMap: define(\"instance/flat-map\", [\n \"es.array.flat-map\",\n \"es.array.unscopables.flat-map\",\n \"esnext.async-iterator.flat-map\",\n \"esnext.iterator.flat-map\",\n ...IteratorDependencies,\n ]),\n flat: define(\"instance/flat\", [\"es.array.flat\", \"es.array.unscopables.flat\"]),\n getYear: define(null, [\"es.date.get-year\"]),\n group: define(\"instance/group\", [\"esnext.array.group\"]),\n groupBy: define(\"instance/group-by\", [\"esnext.array.group-by\"]),\n groupByToMap: define(\"instance/group-by-to-map\", [\n \"esnext.array.group-by-to-map\",\n \"es.map\",\n \"es.object.to-string\",\n ]),\n groupToMap: define(\"instance/group-to-map\", [\n \"esnext.array.group-to-map\",\n \"es.map\",\n \"es.object.to-string\",\n ]),\n fontcolor: define(null, [\"es.string.fontcolor\"]),\n fontsize: define(null, [\"es.string.fontsize\"]),\n forEach: define(\"instance/for-each\", [\n \"es.array.for-each\",\n \"esnext.async-iterator.for-each\",\n \"esnext.iterator.for-each\",\n ...IteratorDependencies,\n \"web.dom-collections.for-each\",\n ]),\n includes: define(\"instance/includes\", [\n \"es.array.includes\",\n \"es.string.includes\",\n ]),\n indexed: define(\"instance/indexed\", [\n \"esnext.async-iterator.indexed\",\n ...AsyncIteratorDependencies,\n \"esnext.iterator.indexed\",\n ...IteratorDependencies,\n ]),\n indexOf: define(\"instance/index-of\", [\"es.array.index-of\"]),\n italic: define(null, [\"es.string.italics\"]),\n join: define(null, [\"es.array.join\"]),\n keys: define(\"instance/keys\", ArrayNatureIteratorsWithTag),\n lastIndex: define(null, [\"esnext.array.last-index\"]),\n lastIndexOf: define(\"instance/last-index-of\", [\"es.array.last-index-of\"]),\n lastItem: define(null, [\"esnext.array.last-item\"]),\n link: define(null, [\"es.string.link\"]),\n map: define(\"instance/map\", [\n \"es.array.map\",\n \"esnext.async-iterator.map\",\n \"esnext.iterator.map\",\n ]),\n match: define(null, [\"es.string.match\", \"es.regexp.exec\"]),\n matchAll: define(\"instance/match-all\", [\n \"es.string.match-all\",\n \"es.regexp.exec\",\n ]),\n name: define(null, [\"es.function.name\"]),\n padEnd: define(\"instance/pad-end\", [\"es.string.pad-end\"]),\n padStart: define(\"instance/pad-start\", [\"es.string.pad-start\"]),\n push: define(\"instance/push\", [\"es.array.push\"]),\n reduce: define(\"instance/reduce\", [\n \"es.array.reduce\",\n \"esnext.async-iterator.reduce\",\n \"esnext.iterator.reduce\",\n ...IteratorDependencies,\n ]),\n reduceRight: define(\"instance/reduce-right\", [\"es.array.reduce-right\"]),\n repeat: define(\"instance/repeat\", [\"es.string.repeat\"]),\n replace: define(null, [\"es.string.replace\", \"es.regexp.exec\"]),\n replaceAll: define(\"instance/replace-all\", [\n \"es.string.replace-all\",\n \"es.string.replace\",\n \"es.regexp.exec\",\n ]),\n reverse: define(\"instance/reverse\", [\"es.array.reverse\"]),\n search: define(null, [\"es.string.search\", \"es.regexp.exec\"]),\n setYear: define(null, [\"es.date.set-year\"]),\n slice: define(\"instance/slice\", [\"es.array.slice\"]),\n small: define(null, [\"es.string.small\"]),\n some: define(\"instance/some\", [\n \"es.array.some\",\n \"esnext.async-iterator.some\",\n \"esnext.iterator.some\",\n ...IteratorDependencies,\n ]),\n sort: define(\"instance/sort\", [\"es.array.sort\"]),\n splice: define(\"instance/splice\", [\"es.array.splice\"]),\n split: define(null, [\"es.string.split\", \"es.regexp.exec\"]),\n startsWith: define(\"instance/starts-with\", [\"es.string.starts-with\"]),\n sticky: define(\"instance/sticky\", [\"es.regexp.sticky\"]),\n strike: define(null, [\"es.string.strike\"]),\n sub: define(null, [\"es.string.sub\"]),\n substr: define(null, [\"es.string.substr\"]),\n sup: define(null, [\"es.string.sup\"]),\n take: define(\"instance/take\", [\n \"esnext.async-iterator.take\",\n ...AsyncIteratorDependencies,\n \"esnext.iterator.take\",\n ...IteratorDependencies,\n ]),\n test: define(null, [\"es.regexp.test\", \"es.regexp.exec\"]),\n toArray: define(\"instance/to-array\", [\n \"esnext.async-iterator.to-array\",\n ...AsyncIteratorDependencies,\n \"esnext.iterator.to-array\",\n ...IteratorDependencies,\n ]),\n toAsync: define(null, [\n \"esnext.iterator.to-async\",\n ...IteratorDependencies,\n ...AsyncIteratorDependencies,\n ...AsyncIteratorProblemMethods,\n ]),\n toExponential: define(null, [\"es.number.to-exponential\"]),\n toFixed: define(null, [\"es.number.to-fixed\"]),\n toGMTString: define(null, [\"es.date.to-gmt-string\"]),\n toISOString: define(null, [\"es.date.to-iso-string\"]),\n toJSON: define(null, [\"es.date.to-json\", \"web.url.to-json\"]),\n toPrecision: define(null, [\"es.number.to-precision\"]),\n toReversed: define(\"instance/to-reversed\", [\"esnext.array.to-reversed\"]),\n toSorted: define(\"instance/to-sorted\", [\n \"esnext.array.to-sorted\",\n \"es.array.sort\",\n ]),\n toSpliced: define(\"instance/to-spliced\", [\"esnext.array.to-spliced\"]),\n toString: define(null, [\n \"es.object.to-string\",\n \"es.error.to-string\",\n \"es.date.to-string\",\n \"es.regexp.to-string\",\n ]),\n trim: define(\"instance/trim\", [\"es.string.trim\"]),\n trimEnd: define(\"instance/trim-end\", [\"es.string.trim-end\"]),\n trimLeft: define(\"instance/trim-left\", [\"es.string.trim-start\"]),\n trimRight: define(\"instance/trim-right\", [\"es.string.trim-end\"]),\n trimStart: define(\"instance/trim-start\", [\"es.string.trim-start\"]),\n uniqueBy: define(\"instance/unique-by\", [\"esnext.array.unique-by\", \"es.map\"]),\n unshift: define(\"instance/unshift\", [\"es.array.unshift\"]),\n unThis: define(\"instance/un-this\", [\"esnext.function.un-this\"]),\n values: define(\"instance/values\", ArrayNatureIteratorsWithTag),\n with: define(\"instance/with\", [\"esnext.array.with\"]),\n __defineGetter__: define(null, [\"es.object.define-getter\"]),\n __defineSetter__: define(null, [\"es.object.define-setter\"]),\n __lookupGetter__: define(null, [\"es.object.lookup-getter\"]),\n __lookupSetter__: define(null, [\"es.object.lookup-setter\"]),\n [\"__proto__\"]: define(null, [\"es.object.proto\"]),\n};\n\nexport const CommonInstanceDependencies = new Set([\n \"es.object.to-string\",\n \"es.object.define-getter\",\n \"es.object.define-setter\",\n \"es.object.lookup-getter\",\n \"es.object.lookup-setter\",\n \"es.regexp.exec\",\n]);\n","import type { CoreJSPolyfillDescriptor } from \"./built-in-definitions\";\nimport { types as t, type NodePath } from \"@babel/core\";\n\nexport default function canSkipPolyfill(\n desc: CoreJSPolyfillDescriptor,\n path: NodePath,\n) {\n const { node, parent } = path;\n switch (desc.name) {\n case \"es.string.split\": {\n if (!t.isCallExpression(parent, { callee: node })) return false;\n if (parent.arguments.length < 1) return true;\n const splitter = parent.arguments[0];\n return t.isStringLiteral(splitter) || t.isTemplateLiteral(splitter);\n }\n }\n}\n","import { types as t } from \"@babel/core\";\nimport corejsEntries from \"../core-js-compat/entries.js\";\n\nexport function callMethod(path: any, id: t.Identifier) {\n const { object } = path.node;\n\n let context1, context2;\n if (t.isIdentifier(object)) {\n context1 = object;\n context2 = t.cloneNode(object);\n } else {\n context1 = path.scope.generateDeclaredUidIdentifier(\"context\");\n context2 = t.assignmentExpression(\"=\", t.cloneNode(context1), object);\n }\n\n path.replaceWith(\n t.memberExpression(t.callExpression(id, [context2]), t.identifier(\"call\")),\n );\n\n path.parentPath.unshiftContainer(\"arguments\", context1);\n}\n\nexport function isCoreJSSource(source: string) {\n if (typeof source === \"string\") {\n source = source\n .replace(/\\\\/g, \"/\")\n .replace(/(\\/(index)?)?(\\.js)?$/i, \"\")\n .toLowerCase();\n }\n\n return (\n Object.prototype.hasOwnProperty.call(corejsEntries, source) &&\n corejsEntries[source]\n );\n}\n\nexport function coreJSModule(name: string) {\n return `core-js/modules/${name}.js`;\n}\n\nexport function coreJSPureHelper(\n name: string,\n useBabelRuntime: string,\n ext: string,\n) {\n return useBabelRuntime\n ? `${useBabelRuntime}/core-js/${name}${ext}`\n : `core-js-pure/features/${name}.js`;\n}\n","import corejs3Polyfills from \"../core-js-compat/data.js\";\nimport corejs3ShippedProposalsList from \"./shipped-proposals\";\nimport getModulesListForTargetVersion from \"../core-js-compat/get-modules-list-for-target-version.js\";\nimport {\n BuiltIns,\n CommonIterators,\n CommonInstanceDependencies,\n PromiseDependencies,\n PromiseDependenciesWithIterators,\n StaticProperties,\n InstanceProperties,\n type CoreJSPolyfillDescriptor,\n} from \"./built-in-definitions\";\nimport canSkipPolyfill from \"./usage-filters\";\n\nimport type { NodePath } from \"@babel/traverse\";\nimport { types as t } from \"@babel/core\";\nimport {\n callMethod,\n coreJSModule,\n isCoreJSSource,\n coreJSPureHelper,\n} from \"./utils\";\n\nimport defineProvider from \"@babel/helper-define-polyfill-provider\";\n\nconst runtimeCompat = \"#__secret_key__@babel/runtime__compatibility\";\n\ntype Options = {\n version?: number | string;\n proposals?: boolean;\n shippedProposals?: boolean;\n \"#__secret_key__@babel/runtime__compatibility\": void | {\n useBabelRuntime: string;\n ext: string;\n };\n};\n\nconst esnextFallback = (\n name: string,\n cb: (name: string) => boolean,\n): boolean => {\n if (cb(name)) return true;\n if (!name.startsWith(\"es.\")) return false;\n const fallback = `esnext.${name.slice(3)}`;\n if (!corejs3Polyfills[fallback]) return false;\n return cb(fallback);\n};\n\nexport default defineProvider(function (\n { getUtils, method, shouldInjectPolyfill, createMetaResolver, debug, babel },\n {\n version = 3,\n proposals,\n shippedProposals,\n [runtimeCompat]: { useBabelRuntime, ext = \".js\" } = { useBabelRuntime: \"\" },\n },\n) {\n const isWebpack = babel.caller(caller => caller?.name === \"babel-loader\");\n\n const resolve = createMetaResolver({\n global: BuiltIns,\n static: StaticProperties,\n instance: InstanceProperties,\n });\n\n const available = new Set(getModulesListForTargetVersion(version));\n\n function getCoreJSPureBase(useProposalBase) {\n return useBabelRuntime\n ? useProposalBase\n ? `${useBabelRuntime}/core-js`\n : `${useBabelRuntime}/core-js-stable`\n : useProposalBase\n ? \"core-js-pure/features\"\n : \"core-js-pure/stable\";\n }\n\n function maybeInjectGlobalImpl(name: string, utils) {\n if (shouldInjectPolyfill(name)) {\n debug(name);\n utils.injectGlobalImport(coreJSModule(name));\n return true;\n }\n return false;\n }\n\n function maybeInjectGlobal(names: string[], utils, fallback = true) {\n for (const name of names) {\n if (fallback) {\n esnextFallback(name, name => maybeInjectGlobalImpl(name, utils));\n } else {\n maybeInjectGlobalImpl(name, utils);\n }\n }\n }\n\n function maybeInjectPure(\n desc: CoreJSPolyfillDescriptor,\n hint,\n utils,\n object?,\n ) {\n if (\n desc.pure &&\n !(object && desc.exclude && desc.exclude.includes(object)) &&\n esnextFallback(desc.name, shouldInjectPolyfill)\n ) {\n const { name } = desc;\n let useProposalBase = false;\n if (proposals || (shippedProposals && name.startsWith(\"esnext.\"))) {\n useProposalBase = true;\n } else if (name.startsWith(\"es.\") && !available.has(name)) {\n useProposalBase = true;\n }\n const coreJSPureBase = getCoreJSPureBase(useProposalBase);\n return utils.injectDefaultImport(\n `${coreJSPureBase}/${desc.pure}${ext}`,\n hint,\n );\n }\n }\n\n function isFeatureStable(name) {\n if (name.startsWith(\"esnext.\")) {\n const esName = `es.${name.slice(7)}`;\n // If its imaginative esName is not in latest compat data, it means\n // the proposal is not stage 4\n return esName in corejs3Polyfills;\n }\n return true;\n }\n\n return {\n name: \"corejs3\",\n\n polyfills: corejs3Polyfills,\n\n filterPolyfills(name) {\n if (!available.has(name)) return false;\n if (proposals || method === \"entry-global\") return true;\n if (shippedProposals && corejs3ShippedProposalsList.has(name)) {\n return true;\n }\n return isFeatureStable(name);\n },\n\n entryGlobal(meta, utils, path) {\n if (meta.kind !== \"import\") return;\n\n const modules = isCoreJSSource(meta.source);\n if (!modules) return;\n\n if (\n modules.length === 1 &&\n meta.source === coreJSModule(modules[0]) &&\n shouldInjectPolyfill(modules[0])\n ) {\n // Avoid infinite loop: do not replace imports with a new copy of\n // themselves.\n debug(null);\n return;\n }\n\n const modulesSet = new Set(modules);\n const filteredModules = modules.filter(module => {\n if (!module.startsWith(\"esnext.\")) return true;\n const stable = module.replace(\"esnext.\", \"es.\");\n if (modulesSet.has(stable) && shouldInjectPolyfill(stable)) {\n return false;\n }\n return true;\n });\n\n maybeInjectGlobal(filteredModules, utils, false);\n path.remove();\n },\n\n usageGlobal(meta, utils, path) {\n const resolved = resolve(meta);\n if (!resolved) return;\n\n if (canSkipPolyfill(resolved.desc, path)) return;\n\n let deps = resolved.desc.global;\n\n if (\n resolved.kind !== \"global\" &&\n \"object\" in meta &&\n meta.object &&\n meta.placement === \"prototype\"\n ) {\n const low = meta.object.toLowerCase();\n deps = deps.filter(\n m => m.includes(low) || CommonInstanceDependencies.has(m),\n );\n }\n\n maybeInjectGlobal(deps, utils);\n },\n\n usagePure(meta, utils, path) {\n if (meta.kind === \"in\") {\n if (meta.key === \"Symbol.iterator\") {\n path.replaceWith(\n t.callExpression(\n utils.injectDefaultImport(\n coreJSPureHelper(\"is-iterable\", useBabelRuntime, ext),\n \"isIterable\",\n ),\n [(path.node as t.BinaryExpression).right], // meta.kind === \"in\" narrows this\n ),\n );\n }\n return;\n }\n\n if (path.parentPath.isUnaryExpression({ operator: \"delete\" })) return;\n\n if (meta.kind === \"property\") {\n // We can't compile destructuring and updateExpression.\n if (!path.isMemberExpression()) return;\n if (!path.isReferenced()) return;\n if (path.parentPath.isUpdateExpression()) return;\n if (t.isSuper(path.node.object)) {\n return;\n }\n\n if (meta.key === \"Symbol.iterator\") {\n if (!shouldInjectPolyfill(\"es.symbol.iterator\")) return;\n\n const { parent, node } = path;\n if (t.isCallExpression(parent, { callee: node })) {\n if (parent.arguments.length === 0) {\n path.parentPath.replaceWith(\n t.callExpression(\n utils.injectDefaultImport(\n coreJSPureHelper(\"get-iterator\", useBabelRuntime, ext),\n \"getIterator\",\n ),\n [node.object],\n ),\n );\n path.skip();\n } else {\n callMethod(\n path,\n utils.injectDefaultImport(\n coreJSPureHelper(\"get-iterator-method\", useBabelRuntime, ext),\n \"getIteratorMethod\",\n ),\n );\n }\n } else {\n path.replaceWith(\n t.callExpression(\n utils.injectDefaultImport(\n coreJSPureHelper(\"get-iterator-method\", useBabelRuntime, ext),\n \"getIteratorMethod\",\n ),\n [path.node.object],\n ),\n );\n }\n\n return;\n }\n }\n\n let resolved = resolve(meta);\n if (!resolved) return;\n\n if (canSkipPolyfill(resolved.desc, path)) return;\n\n if (\n useBabelRuntime &&\n resolved.desc.pure &&\n resolved.desc.pure.slice(-6) === \"/index\"\n ) {\n // Remove /index, since it doesn't exist in @babel/runtime-corejs3s\n resolved = {\n ...resolved,\n desc: {\n ...resolved.desc,\n pure: resolved.desc.pure.slice(0, -6),\n },\n };\n }\n\n if (resolved.kind === \"global\") {\n const id = maybeInjectPure(resolved.desc, resolved.name, utils);\n if (id) path.replaceWith(id);\n } else if (resolved.kind === \"static\") {\n const id = maybeInjectPure(\n resolved.desc,\n resolved.name,\n utils,\n // @ts-expect-error\n meta.object,\n );\n if (id) path.replaceWith(id);\n } else if (resolved.kind === \"instance\") {\n const id = maybeInjectPure(\n resolved.desc,\n `${resolved.name}InstanceProperty`,\n utils,\n // @ts-expect-error\n meta.object,\n );\n if (!id) return;\n\n const { node } = path as NodePath;\n if (t.isCallExpression(path.parent, { callee: node })) {\n callMethod(path, id);\n } else {\n path.replaceWith(t.callExpression(id, [node.object]));\n }\n }\n },\n\n visitor: method === \"usage-global\" && {\n // import(\"foo\")\n CallExpression(path: NodePath) {\n if (path.get(\"callee\").isImport()) {\n const utils = getUtils(path);\n\n if (isWebpack) {\n // Webpack uses Promise.all to handle dynamic import.\n maybeInjectGlobal(PromiseDependenciesWithIterators, utils);\n } else {\n maybeInjectGlobal(PromiseDependencies, utils);\n }\n }\n },\n\n // (async function () { }).finally(...)\n Function(path: NodePath) {\n if (path.node.async) {\n maybeInjectGlobal(PromiseDependencies, getUtils(path));\n }\n },\n\n // for-of, [a, b] = c\n \"ForOfStatement|ArrayPattern\"(\n path: NodePath,\n ) {\n maybeInjectGlobal(CommonIterators, getUtils(path));\n },\n\n // [...spread]\n SpreadElement(path: NodePath) {\n if (!path.parentPath.isObjectExpression()) {\n maybeInjectGlobal(CommonIterators, getUtils(path));\n }\n },\n\n // yield*\n YieldExpression(path: NodePath) {\n if (path.node.delegate) {\n maybeInjectGlobal(CommonIterators, getUtils(path));\n }\n },\n },\n };\n});\n"],"names":["Set","polyfillsOrder","Object","keys","corejs3Polyfills","forEach","name","index","define","pure","global","exclude","sort","a","b","typed","TypedArrayDependencies","ArrayNatureIterators","CommonIterators","ArrayNatureIteratorsWithTag","CommonIteratorsWithTag","ErrorDependencies","PromiseDependencies","PromiseDependenciesWithIterators","SymbolDependencies","MapDependencies","SetDependencies","WeakMapDependencies","WeakSetDependencies","DOMExceptionDependencies","URLSearchParamsDependencies","AsyncIteratorDependencies","AsyncIteratorProblemMethods","IteratorDependencies","TypedArrayStaticMethods","from","fromAsync","of","BuiltIns","AsyncIterator","AggregateError","ArrayBuffer","DataView","Date","DOMException","Error","EvalError","Float32Array","Float64Array","Int8Array","Int16Array","Int32Array","Iterator","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","Map","Number","Observable","Promise","RangeError","ReferenceError","Reflect","RegExp","Symbol","SyntaxError","TypeError","URIError","URL","URLSearchParams","WeakMap","WeakSet","atob","btoa","clearImmediate","compositeKey","compositeSymbol","escape","fetch","globalThis","parseFloat","parseInt","queueMicrotask","setImmediate","setInterval","setTimeout","structuredClone","unescape","StaticProperties","Array","isArray","isTemplateObject","isView","BigInt","range","now","Function","isCallable","isConstructor","JSON","stringify","Math","DEG_PER_RAD","RAD_PER_DEG","acosh","asinh","atanh","cbrt","clamp","clz32","cosh","degrees","expm1","fround","fscale","hypot","iaddh","imul","imulh","isubh","log10","log1p","log2","radians","scale","seededPRNG","sign","signbit","sinh","tanh","trunc","umulh","groupBy","keyBy","EPSILON","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","fromString","isFinite","isInteger","isNaN","isSafeInteger","assign","create","defineProperties","defineProperty","entries","freeze","fromEntries","getOwnPropertyDescriptor","getOwnPropertyDescriptors","getOwnPropertyNames","getOwnPropertySymbols","getPrototypeOf","hasOwn","is","isExtensible","isFrozen","isSealed","preventExtensions","seal","setPrototypeOf","values","all","allSettled","any","race","try","apply","construct","defineMetadata","deleteMetadata","deleteProperty","get","getMetadata","getMetadataKeys","getOwnMetadata","getOwnMetadataKeys","has","hasMetadata","hasOwnMetadata","metadata","ownKeys","set","String","cooked","fromCodePoint","raw","asyncDispose","asyncIterator","dispose","for","hasInstance","isConcatSpreadable","iterator","keyFor","match","matcher","matchAll","metadataKey","observable","patternMatch","replace","search","species","split","toPrimitive","toStringTag","unscopables","WebAssembly","CompileError","LinkError","RuntimeError","InstanceProperties","asIndexedPairs","at","anchor","big","bind","blink","bold","codePointAt","codePoints","concat","undefined","copyWithin","description","dotAll","drop","emplace","endsWith","every","exec","fill","filter","filterReject","finally","find","findIndex","findLast","findLastIndex","fixed","flags","flatMap","flat","getYear","group","groupByToMap","groupToMap","fontcolor","fontsize","includes","indexed","indexOf","italic","join","lastIndex","lastIndexOf","lastItem","link","map","padEnd","padStart","push","reduce","reduceRight","repeat","replaceAll","reverse","setYear","slice","small","some","splice","startsWith","sticky","strike","sub","substr","sup","take","test","toArray","toAsync","toExponential","toFixed","toGMTString","toISOString","toJSON","toPrecision","toReversed","toSorted","toSpliced","toString","trim","trimEnd","trimLeft","trimRight","trimStart","uniqueBy","unshift","unThis","with","__defineGetter__","__defineSetter__","__lookupGetter__","__lookupSetter__","CommonInstanceDependencies","types","t","canSkipPolyfill","desc","path","node","parent","isCallExpression","callee","arguments","length","splitter","isStringLiteral","isTemplateLiteral","callMethod","id","object","context1","context2","isIdentifier","cloneNode","scope","generateDeclaredUidIdentifier","assignmentExpression","replaceWith","memberExpression","callExpression","identifier","parentPath","unshiftContainer","isCoreJSSource","source","toLowerCase","prototype","hasOwnProperty","call","corejsEntries","coreJSModule","coreJSPureHelper","useBabelRuntime","ext","runtimeCompat","esnextFallback","cb","fallback","defineProvider","getUtils","method","shouldInjectPolyfill","createMetaResolver","debug","babel","version","proposals","shippedProposals","isWebpack","caller","resolve","static","instance","available","getModulesListForTargetVersion","getCoreJSPureBase","useProposalBase","maybeInjectGlobalImpl","utils","injectGlobalImport","maybeInjectGlobal","names","maybeInjectPure","hint","coreJSPureBase","injectDefaultImport","isFeatureStable","esName","polyfills","filterPolyfills","corejs3ShippedProposalsList","entryGlobal","meta","kind","modules","modulesSet","filteredModules","module","stable","remove","usageGlobal","resolved","deps","placement","low","m","usagePure","key","right","isUnaryExpression","operator","isMemberExpression","isReferenced","isUpdateExpression","isSuper","skip","visitor","CallExpression","isImport","async","SpreadElement","isObjectExpression","YieldExpression","delegate"],"mappings":"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"}lib/index.js000066600000025530150545024510006771 0ustar00"use strict"; exports.__esModule = true; exports.default = void 0; var _data = _interopRequireDefault(require("../core-js-compat/data.js")); var _shippedProposals = _interopRequireDefault(require("./shipped-proposals")); var _getModulesListForTargetVersion = _interopRequireDefault(require("../core-js-compat/get-modules-list-for-target-version.js")); var _builtInDefinitions = require("./built-in-definitions"); var _usageFilters = _interopRequireDefault(require("./usage-filters")); var _babel = _interopRequireWildcard(require("@babel/core")); var _utils = require("./utils"); var _helperDefinePolyfillProvider = _interopRequireDefault(require("@babel/helper-define-polyfill-provider")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); } const { types: t } = _babel.default || _babel; const runtimeCompat = "#__secret_key__@babel/runtime__compatibility"; const esnextFallback = (name, cb) => { if (cb(name)) return true; if (!name.startsWith("es.")) return false; const fallback = `esnext.${name.slice(3)}`; if (!_data.default[fallback]) return false; return cb(fallback); }; var _default = (0, _helperDefinePolyfillProvider.default)(function ({ getUtils, method, shouldInjectPolyfill, createMetaResolver, debug, babel }, { version = 3, proposals, shippedProposals, [runtimeCompat]: { useBabelRuntime, ext = ".js" } = { useBabelRuntime: "" } }) { const isWebpack = babel.caller(caller => (caller == null ? void 0 : caller.name) === "babel-loader"); const resolve = createMetaResolver({ global: _builtInDefinitions.BuiltIns, static: _builtInDefinitions.StaticProperties, instance: _builtInDefinitions.InstanceProperties }); const available = new Set((0, _getModulesListForTargetVersion.default)(version)); function getCoreJSPureBase(useProposalBase) { return useBabelRuntime ? useProposalBase ? `${useBabelRuntime}/core-js` : `${useBabelRuntime}/core-js-stable` : useProposalBase ? "core-js-pure/features" : "core-js-pure/stable"; } function maybeInjectGlobalImpl(name, utils) { if (shouldInjectPolyfill(name)) { debug(name); utils.injectGlobalImport((0, _utils.coreJSModule)(name)); return true; } return false; } function maybeInjectGlobal(names, utils, fallback = true) { for (const name of names) { if (fallback) { esnextFallback(name, name => maybeInjectGlobalImpl(name, utils)); } else { maybeInjectGlobalImpl(name, utils); } } } function maybeInjectPure(desc, hint, utils, object) { if (desc.pure && !(object && desc.exclude && desc.exclude.includes(object)) && esnextFallback(desc.name, shouldInjectPolyfill)) { const { name } = desc; let useProposalBase = false; if (proposals || shippedProposals && name.startsWith("esnext.")) { useProposalBase = true; } else if (name.startsWith("es.") && !available.has(name)) { useProposalBase = true; } const coreJSPureBase = getCoreJSPureBase(useProposalBase); return utils.injectDefaultImport(`${coreJSPureBase}/${desc.pure}${ext}`, hint); } } function isFeatureStable(name) { if (name.startsWith("esnext.")) { const esName = `es.${name.slice(7)}`; // If its imaginative esName is not in latest compat data, it means // the proposal is not stage 4 return esName in _data.default; } return true; } return { name: "corejs3", polyfills: _data.default, filterPolyfills(name) { if (!available.has(name)) return false; if (proposals || method === "entry-global") return true; if (shippedProposals && _shippedProposals.default.has(name)) { return true; } return isFeatureStable(name); }, entryGlobal(meta, utils, path) { if (meta.kind !== "import") return; const modules = (0, _utils.isCoreJSSource)(meta.source); if (!modules) return; if (modules.length === 1 && meta.source === (0, _utils.coreJSModule)(modules[0]) && shouldInjectPolyfill(modules[0])) { // Avoid infinite loop: do not replace imports with a new copy of // themselves. debug(null); return; } const modulesSet = new Set(modules); const filteredModules = modules.filter(module => { if (!module.startsWith("esnext.")) return true; const stable = module.replace("esnext.", "es."); if (modulesSet.has(stable) && shouldInjectPolyfill(stable)) { return false; } return true; }); maybeInjectGlobal(filteredModules, utils, false); path.remove(); }, usageGlobal(meta, utils, path) { const resolved = resolve(meta); if (!resolved) return; if ((0, _usageFilters.default)(resolved.desc, path)) return; let deps = resolved.desc.global; if (resolved.kind !== "global" && "object" in meta && meta.object && meta.placement === "prototype") { const low = meta.object.toLowerCase(); deps = deps.filter(m => m.includes(low) || _builtInDefinitions.CommonInstanceDependencies.has(m)); } maybeInjectGlobal(deps, utils); }, usagePure(meta, utils, path) { if (meta.kind === "in") { if (meta.key === "Symbol.iterator") { path.replaceWith(t.callExpression(utils.injectDefaultImport((0, _utils.coreJSPureHelper)("is-iterable", useBabelRuntime, ext), "isIterable"), [path.node.right] // meta.kind === "in" narrows this )); } return; } if (path.parentPath.isUnaryExpression({ operator: "delete" })) return; if (meta.kind === "property") { // We can't compile destructuring and updateExpression. if (!path.isMemberExpression()) return; if (!path.isReferenced()) return; if (path.parentPath.isUpdateExpression()) return; if (t.isSuper(path.node.object)) { return; } if (meta.key === "Symbol.iterator") { if (!shouldInjectPolyfill("es.symbol.iterator")) return; const { parent, node } = path; if (t.isCallExpression(parent, { callee: node })) { if (parent.arguments.length === 0) { path.parentPath.replaceWith(t.callExpression(utils.injectDefaultImport((0, _utils.coreJSPureHelper)("get-iterator", useBabelRuntime, ext), "getIterator"), [node.object])); path.skip(); } else { (0, _utils.callMethod)(path, utils.injectDefaultImport((0, _utils.coreJSPureHelper)("get-iterator-method", useBabelRuntime, ext), "getIteratorMethod")); } } else { path.replaceWith(t.callExpression(utils.injectDefaultImport((0, _utils.coreJSPureHelper)("get-iterator-method", useBabelRuntime, ext), "getIteratorMethod"), [path.node.object])); } return; } } let resolved = resolve(meta); if (!resolved) return; if ((0, _usageFilters.default)(resolved.desc, path)) return; if (useBabelRuntime && resolved.desc.pure && resolved.desc.pure.slice(-6) === "/index") { // Remove /index, since it doesn't exist in @babel/runtime-corejs3s resolved = _extends({}, resolved, { desc: _extends({}, resolved.desc, { pure: resolved.desc.pure.slice(0, -6) }) }); } if (resolved.kind === "global") { const id = maybeInjectPure(resolved.desc, resolved.name, utils); if (id) path.replaceWith(id); } else if (resolved.kind === "static") { const id = maybeInjectPure(resolved.desc, resolved.name, utils, // @ts-expect-error meta.object); if (id) path.replaceWith(id); } else if (resolved.kind === "instance") { const id = maybeInjectPure(resolved.desc, `${resolved.name}InstanceProperty`, utils, // @ts-expect-error meta.object); if (!id) return; const { node } = path; if (t.isCallExpression(path.parent, { callee: node })) { (0, _utils.callMethod)(path, id); } else { path.replaceWith(t.callExpression(id, [node.object])); } } }, visitor: method === "usage-global" && { // import("foo") CallExpression(path) { if (path.get("callee").isImport()) { const utils = getUtils(path); if (isWebpack) { // Webpack uses Promise.all to handle dynamic import. maybeInjectGlobal(_builtInDefinitions.PromiseDependenciesWithIterators, utils); } else { maybeInjectGlobal(_builtInDefinitions.PromiseDependencies, utils); } } }, // (async function () { }).finally(...) Function(path) { if (path.node.async) { maybeInjectGlobal(_builtInDefinitions.PromiseDependencies, getUtils(path)); } }, // for-of, [a, b] = c "ForOfStatement|ArrayPattern"(path) { maybeInjectGlobal(_builtInDefinitions.CommonIterators, getUtils(path)); }, // [...spread] SpreadElement(path) { if (!path.parentPath.isObjectExpression()) { maybeInjectGlobal(_builtInDefinitions.CommonIterators, getUtils(path)); } }, // yield* YieldExpression(path) { if (path.node.delegate) { maybeInjectGlobal(_builtInDefinitions.CommonIterators, getUtils(path)); } } } }; }); exports.default = _default;lib/shipped-proposals.js000066600000000710150545024510011327 0ustar00"use strict"; exports.__esModule = true; exports.default = void 0; // This file is automatically generated by scripts/build-corejs3-shipped-proposals.mjs var _default = new Set(["esnext.array.group", "esnext.array.group-to-map", "esnext.array.to-reversed", "esnext.array.to-sorted", "esnext.array.to-spliced", "esnext.array.with", "esnext.typed-array.to-reversed", "esnext.typed-array.to-sorted", "esnext.typed-array.with"]); exports.default = _default;lib/built-in-definitions.js000066600000066552150545024510011727 0ustar00"use strict"; exports.__esModule = true; exports.StaticProperties = exports.PromiseDependenciesWithIterators = exports.PromiseDependencies = exports.InstanceProperties = exports.CommonIterators = exports.CommonInstanceDependencies = exports.BuiltIns = void 0; var _data = _interopRequireDefault(require("../core-js-compat/data.js")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } const polyfillsOrder = {}; Object.keys(_data.default).forEach((name, index) => { polyfillsOrder[name] = index; }); const define = (pure, global, name = global[0], exclude) => { return { name, pure, global: global.sort((a, b) => polyfillsOrder[a] - polyfillsOrder[b]), exclude }; }; const typed = name => define(null, [name, ...TypedArrayDependencies]); const ArrayNatureIterators = ["es.array.iterator", "web.dom-collections.iterator"]; const CommonIterators = ["es.string.iterator", ...ArrayNatureIterators]; exports.CommonIterators = CommonIterators; const ArrayNatureIteratorsWithTag = ["es.object.to-string", ...ArrayNatureIterators]; const CommonIteratorsWithTag = ["es.object.to-string", ...CommonIterators]; const ErrorDependencies = ["es.error.cause", "es.error.to-string"]; const TypedArrayDependencies = ["es.typed-array.at", "es.typed-array.copy-within", "es.typed-array.every", "es.typed-array.fill", "es.typed-array.filter", "es.typed-array.find", "es.typed-array.find-index", "es.typed-array.find-last", "es.typed-array.find-last-index", "es.typed-array.for-each", "es.typed-array.includes", "es.typed-array.index-of", "es.typed-array.iterator", "es.typed-array.join", "es.typed-array.last-index-of", "es.typed-array.map", "es.typed-array.reduce", "es.typed-array.reduce-right", "es.typed-array.reverse", "es.typed-array.set", "es.typed-array.slice", "es.typed-array.some", "es.typed-array.sort", "es.typed-array.subarray", "es.typed-array.to-locale-string", "es.typed-array.to-string", "es.object.to-string", "es.array.iterator", "es.array-buffer.slice", "esnext.typed-array.filter-reject", "esnext.typed-array.group-by", "esnext.typed-array.to-reversed", "esnext.typed-array.to-sorted", "esnext.typed-array.to-spliced", "esnext.typed-array.unique-by", "esnext.typed-array.with"]; const PromiseDependencies = ["es.promise", "es.object.to-string"]; exports.PromiseDependencies = PromiseDependencies; const PromiseDependenciesWithIterators = [...PromiseDependencies, ...CommonIterators]; exports.PromiseDependenciesWithIterators = PromiseDependenciesWithIterators; const SymbolDependencies = ["es.symbol", "es.symbol.description", "es.object.to-string"]; const MapDependencies = ["es.map", "esnext.map.delete-all", "esnext.map.emplace", "esnext.map.every", "esnext.map.filter", "esnext.map.find", "esnext.map.find-key", "esnext.map.includes", "esnext.map.key-of", "esnext.map.map-keys", "esnext.map.map-values", "esnext.map.merge", "esnext.map.reduce", "esnext.map.some", "esnext.map.update", ...CommonIteratorsWithTag]; const SetDependencies = ["es.set", "esnext.set.add-all", "esnext.set.delete-all", "esnext.set.difference", "esnext.set.every", "esnext.set.filter", "esnext.set.find", "esnext.set.intersection", "esnext.set.is-disjoint-from", "esnext.set.is-subset-of", "esnext.set.is-superset-of", "esnext.set.join", "esnext.set.map", "esnext.set.reduce", "esnext.set.some", "esnext.set.symmetric-difference", "esnext.set.union", ...CommonIteratorsWithTag]; const WeakMapDependencies = ["es.weak-map", "esnext.weak-map.delete-all", "esnext.weak-map.emplace", ...CommonIteratorsWithTag]; const WeakSetDependencies = ["es.weak-set", "esnext.weak-set.add-all", "esnext.weak-set.delete-all", ...CommonIteratorsWithTag]; const DOMExceptionDependencies = ["web.dom-exception.constructor", "web.dom-exception.stack", "web.dom-exception.to-string-tag", "es.error.to-string"]; const URLSearchParamsDependencies = ["web.url-search-params", ...CommonIteratorsWithTag]; const AsyncIteratorDependencies = ["esnext.async-iterator.constructor", ...PromiseDependencies]; const AsyncIteratorProblemMethods = ["esnext.async-iterator.every", "esnext.async-iterator.filter", "esnext.async-iterator.find", "esnext.async-iterator.flat-map", "esnext.async-iterator.for-each", "esnext.async-iterator.map", "esnext.async-iterator.reduce", "esnext.async-iterator.some"]; const IteratorDependencies = ["esnext.iterator.constructor", "es.object.to-string"]; const TypedArrayStaticMethods = { from: define(null, ["es.typed-array.from"]), fromAsync: define(null, ["esnext.typed-array.from-async", ...PromiseDependenciesWithIterators]), of: define(null, ["es.typed-array.of"]) }; const BuiltIns = { AsyncIterator: define("async-iterator/index", AsyncIteratorDependencies), AggregateError: define("aggregate-error", ["es.aggregate-error", ...ErrorDependencies, ...CommonIteratorsWithTag, "es.aggregate-error.cause"]), ArrayBuffer: define(null, ["es.array-buffer.constructor", "es.array-buffer.slice", "es.object.to-string"]), DataView: define(null, ["es.data-view", "es.array-buffer.slice", "es.object.to-string"]), Date: define(null, ["es.date.to-string"]), DOMException: define("dom-exception", DOMExceptionDependencies), Error: define(null, ErrorDependencies), EvalError: define(null, ErrorDependencies), Float32Array: typed("es.typed-array.float32-array"), Float64Array: typed("es.typed-array.float64-array"), Int8Array: typed("es.typed-array.int8-array"), Int16Array: typed("es.typed-array.int16-array"), Int32Array: typed("es.typed-array.int32-array"), Iterator: define("iterator/index", IteratorDependencies), Uint8Array: typed("es.typed-array.uint8-array"), Uint8ClampedArray: typed("es.typed-array.uint8-clamped-array"), Uint16Array: typed("es.typed-array.uint16-array"), Uint32Array: typed("es.typed-array.uint32-array"), Map: define("map/index", MapDependencies), Number: define(null, ["es.number.constructor"]), Observable: define("observable/index", ["esnext.observable", "esnext.symbol.observable", "es.object.to-string", ...CommonIteratorsWithTag]), Promise: define("promise/index", PromiseDependencies), RangeError: define(null, ErrorDependencies), ReferenceError: define(null, ErrorDependencies), Reflect: define(null, ["es.reflect.to-string-tag", "es.object.to-string"]), RegExp: define(null, ["es.regexp.constructor", "es.regexp.dot-all", "es.regexp.exec", "es.regexp.sticky", "es.regexp.to-string"]), Set: define("set/index", SetDependencies), Symbol: define("symbol/index", SymbolDependencies), SyntaxError: define(null, ErrorDependencies), TypeError: define(null, ErrorDependencies), URIError: define(null, ErrorDependencies), URL: define("url/index", ["web.url", ...URLSearchParamsDependencies]), URLSearchParams: define("url-search-params/index", URLSearchParamsDependencies), WeakMap: define("weak-map/index", WeakMapDependencies), WeakSet: define("weak-set/index", WeakSetDependencies), atob: define("atob", ["web.atob", ...DOMExceptionDependencies]), btoa: define("btoa", ["web.btoa", ...DOMExceptionDependencies]), clearImmediate: define("clear-immediate", ["web.immediate"]), compositeKey: define("composite-key", ["esnext.composite-key"]), compositeSymbol: define("composite-symbol", ["esnext.composite-symbol"]), escape: define("escape", ["es.escape"]), fetch: define(null, PromiseDependencies), globalThis: define("global-this", ["es.global-this"]), parseFloat: define("parse-float", ["es.parse-float"]), parseInt: define("parse-int", ["es.parse-int"]), queueMicrotask: define("queue-microtask", ["web.queue-microtask"]), setImmediate: define("set-immediate", ["web.immediate"]), setInterval: define("set-interval", ["web.timers"]), setTimeout: define("set-timeout", ["web.timers"]), structuredClone: define("structured-clone", ["web.structured-clone", ...DOMExceptionDependencies, "es.array.iterator", "es.object.keys", "es.object.to-string", "es.map", "es.set"]), unescape: define("unescape", ["es.unescape"]) }; exports.BuiltIns = BuiltIns; const StaticProperties = { AsyncIterator: { from: define("async-iterator/from", ["esnext.async-iterator.from", ...AsyncIteratorDependencies, ...AsyncIteratorProblemMethods, ...CommonIterators]) }, Array: { from: define("array/from", ["es.array.from", "es.string.iterator"]), fromAsync: define("array/from-async", ["esnext.array.from-async", ...PromiseDependenciesWithIterators]), isArray: define("array/is-array", ["es.array.is-array"]), isTemplateObject: define("array/is-template-object", ["esnext.array.is-template-object"]), of: define("array/of", ["es.array.of"]) }, ArrayBuffer: { isView: define(null, ["es.array-buffer.is-view"]) }, BigInt: { range: define("bigint/range", ["esnext.bigint.range", "es.object.to-string"]) }, Date: { now: define("date/now", ["es.date.now"]) }, Function: { isCallable: define("function/is-callable", ["esnext.function.is-callable"]), isConstructor: define("function/is-constructor", ["esnext.function.is-constructor"]) }, Iterator: { from: define("iterator/from", ["esnext.iterator.from", ...IteratorDependencies, ...CommonIterators]) }, JSON: { stringify: define("json/stringify", ["es.json.stringify"], "es.symbol") }, Math: { DEG_PER_RAD: define("math/deg-per-rad", ["esnext.math.deg-per-rad"]), RAD_PER_DEG: define("math/rad-per-deg", ["esnext.math.rad-per-deg"]), acosh: define("math/acosh", ["es.math.acosh"]), asinh: define("math/asinh", ["es.math.asinh"]), atanh: define("math/atanh", ["es.math.atanh"]), cbrt: define("math/cbrt", ["es.math.cbrt"]), clamp: define("math/clamp", ["esnext.math.clamp"]), clz32: define("math/clz32", ["es.math.clz32"]), cosh: define("math/cosh", ["es.math.cosh"]), degrees: define("math/degrees", ["esnext.math.degrees"]), expm1: define("math/expm1", ["es.math.expm1"]), fround: define("math/fround", ["es.math.fround"]), fscale: define("math/fscale", ["esnext.math.fscale"]), hypot: define("math/hypot", ["es.math.hypot"]), iaddh: define("math/iaddh", ["esnext.math.iaddh"]), imul: define("math/imul", ["es.math.imul"]), imulh: define("math/imulh", ["esnext.math.imulh"]), isubh: define("math/isubh", ["esnext.math.isubh"]), log10: define("math/log10", ["es.math.log10"]), log1p: define("math/log1p", ["es.math.log1p"]), log2: define("math/log2", ["es.math.log2"]), radians: define("math/radians", ["esnext.math.radians"]), scale: define("math/scale", ["esnext.math.scale"]), seededPRNG: define("math/seeded-prng", ["esnext.math.seeded-prng"]), sign: define("math/sign", ["es.math.sign"]), signbit: define("math/signbit", ["esnext.math.signbit"]), sinh: define("math/sinh", ["es.math.sinh"]), tanh: define("math/tanh", ["es.math.tanh"]), trunc: define("math/trunc", ["es.math.trunc"]), umulh: define("math/umulh", ["esnext.math.umulh"]) }, Map: { from: define(null, ["esnext.map.from", ...MapDependencies]), groupBy: define(null, ["esnext.map.group-by", ...MapDependencies]), keyBy: define(null, ["esnext.map.key-by", ...MapDependencies]), of: define(null, ["esnext.map.of", ...MapDependencies]) }, Number: { EPSILON: define("number/epsilon", ["es.number.epsilon"]), MAX_SAFE_INTEGER: define("number/max-safe-integer", ["es.number.max-safe-integer"]), MIN_SAFE_INTEGER: define("number/min-safe-integer", ["es.number.min-safe-integer"]), fromString: define("number/from-string", ["esnext.number.from-string"]), isFinite: define("number/is-finite", ["es.number.is-finite"]), isInteger: define("number/is-integer", ["es.number.is-integer"]), isNaN: define("number/is-nan", ["es.number.is-nan"]), isSafeInteger: define("number/is-safe-integer", ["es.number.is-safe-integer"]), parseFloat: define("number/parse-float", ["es.number.parse-float"]), parseInt: define("number/parse-int", ["es.number.parse-int"]), range: define("number/range", ["esnext.number.range", "es.object.to-string"]) }, Object: { assign: define("object/assign", ["es.object.assign"]), create: define("object/create", ["es.object.create"]), defineProperties: define("object/define-properties", ["es.object.define-properties"]), defineProperty: define("object/define-property", ["es.object.define-property"]), entries: define("object/entries", ["es.object.entries"]), freeze: define("object/freeze", ["es.object.freeze"]), fromEntries: define("object/from-entries", ["es.object.from-entries", "es.array.iterator"]), getOwnPropertyDescriptor: define("object/get-own-property-descriptor", ["es.object.get-own-property-descriptor"]), getOwnPropertyDescriptors: define("object/get-own-property-descriptors", ["es.object.get-own-property-descriptors"]), getOwnPropertyNames: define("object/get-own-property-names", ["es.object.get-own-property-names"]), getOwnPropertySymbols: define("object/get-own-property-symbols", ["es.symbol"]), getPrototypeOf: define("object/get-prototype-of", ["es.object.get-prototype-of"]), hasOwn: define("object/has-own", ["es.object.has-own"]), is: define("object/is", ["es.object.is"]), isExtensible: define("object/is-extensible", ["es.object.is-extensible"]), isFrozen: define("object/is-frozen", ["es.object.is-frozen"]), isSealed: define("object/is-sealed", ["es.object.is-sealed"]), keys: define("object/keys", ["es.object.keys"]), preventExtensions: define("object/prevent-extensions", ["es.object.prevent-extensions"]), seal: define("object/seal", ["es.object.seal"]), setPrototypeOf: define("object/set-prototype-of", ["es.object.set-prototype-of"]), values: define("object/values", ["es.object.values"]) }, Promise: { all: define(null, PromiseDependenciesWithIterators), allSettled: define(null, ["es.promise.all-settled", ...PromiseDependenciesWithIterators]), any: define(null, ["es.promise.any", "es.aggregate-error", ...PromiseDependenciesWithIterators]), race: define(null, PromiseDependenciesWithIterators), try: define(null, ["esnext.promise.try", ...PromiseDependenciesWithIterators]) }, Reflect: { apply: define("reflect/apply", ["es.reflect.apply"]), construct: define("reflect/construct", ["es.reflect.construct"]), defineMetadata: define("reflect/define-metadata", ["esnext.reflect.define-metadata"]), defineProperty: define("reflect/define-property", ["es.reflect.define-property"]), deleteMetadata: define("reflect/delete-metadata", ["esnext.reflect.delete-metadata"]), deleteProperty: define("reflect/delete-property", ["es.reflect.delete-property"]), get: define("reflect/get", ["es.reflect.get"]), getMetadata: define("reflect/get-metadata", ["esnext.reflect.get-metadata"]), getMetadataKeys: define("reflect/get-metadata-keys", ["esnext.reflect.get-metadata-keys"]), getOwnMetadata: define("reflect/get-own-metadata", ["esnext.reflect.get-own-metadata"]), getOwnMetadataKeys: define("reflect/get-own-metadata-keys", ["esnext.reflect.get-own-metadata-keys"]), getOwnPropertyDescriptor: define("reflect/get-own-property-descriptor", ["es.reflect.get-own-property-descriptor"]), getPrototypeOf: define("reflect/get-prototype-of", ["es.reflect.get-prototype-of"]), has: define("reflect/has", ["es.reflect.has"]), hasMetadata: define("reflect/has-metadata", ["esnext.reflect.has-metadata"]), hasOwnMetadata: define("reflect/has-own-metadata", ["esnext.reflect.has-own-metadata"]), isExtensible: define("reflect/is-extensible", ["es.reflect.is-extensible"]), metadata: define("reflect/metadata", ["esnext.reflect.metadata"]), ownKeys: define("reflect/own-keys", ["es.reflect.own-keys"]), preventExtensions: define("reflect/prevent-extensions", ["es.reflect.prevent-extensions"]), set: define("reflect/set", ["es.reflect.set"]), setPrototypeOf: define("reflect/set-prototype-of", ["es.reflect.set-prototype-of"]) }, Set: { from: define(null, ["esnext.set.from", ...SetDependencies]), of: define(null, ["esnext.set.of", ...SetDependencies]) }, String: { cooked: define("string/cooked", ["esnext.string.cooked"]), fromCodePoint: define("string/from-code-point", ["es.string.from-code-point"]), raw: define("string/raw", ["es.string.raw"]) }, Symbol: { asyncDispose: define("symbol/async-dispose", ["esnext.symbol.async-dispose"]), asyncIterator: define("symbol/async-iterator", ["es.symbol.async-iterator"]), dispose: define("symbol/dispose", ["esnext.symbol.dispose"]), for: define("symbol/for", [], "es.symbol"), hasInstance: define("symbol/has-instance", ["es.symbol.has-instance", "es.function.has-instance"]), isConcatSpreadable: define("symbol/is-concat-spreadable", ["es.symbol.is-concat-spreadable", "es.array.concat"]), iterator: define("symbol/iterator", ["es.symbol.iterator", ...CommonIteratorsWithTag]), keyFor: define("symbol/key-for", [], "es.symbol"), match: define("symbol/match", ["es.symbol.match", "es.string.match"]), matcher: define("symbol/matcher", ["esnext.symbol.matcher"]), matchAll: define("symbol/match-all", ["es.symbol.match-all", "es.string.match-all"]), metadata: define("symbol/metadata", ["esnext.symbol.metadata"]), metadataKey: define("symbol/metadata-key", ["esnext.symbol.metadata-key"]), observable: define("symbol/observable", ["esnext.symbol.observable"]), patternMatch: define("symbol/pattern-match", ["esnext.symbol.pattern-match"]), replace: define("symbol/replace", ["es.symbol.replace", "es.string.replace"]), search: define("symbol/search", ["es.symbol.search", "es.string.search"]), species: define("symbol/species", ["es.symbol.species", "es.array.species"]), split: define("symbol/split", ["es.symbol.split", "es.string.split"]), toPrimitive: define("symbol/to-primitive", ["es.symbol.to-primitive", "es.date.to-primitive"]), toStringTag: define("symbol/to-string-tag", ["es.symbol.to-string-tag", "es.object.to-string", "es.math.to-string-tag", "es.json.to-string-tag"]), unscopables: define("symbol/unscopables", ["es.symbol.unscopables"]) }, WeakMap: { from: define(null, ["esnext.weak-map.from", ...WeakMapDependencies]), of: define(null, ["esnext.weak-map.of", ...WeakMapDependencies]) }, WeakSet: { from: define(null, ["esnext.weak-set.from", ...WeakSetDependencies]), of: define(null, ["esnext.weak-set.of", ...WeakSetDependencies]) }, Int8Array: TypedArrayStaticMethods, Uint8Array: TypedArrayStaticMethods, Uint8ClampedArray: TypedArrayStaticMethods, Int16Array: TypedArrayStaticMethods, Uint16Array: TypedArrayStaticMethods, Int32Array: TypedArrayStaticMethods, Uint32Array: TypedArrayStaticMethods, Float32Array: TypedArrayStaticMethods, Float64Array: TypedArrayStaticMethods, WebAssembly: { CompileError: define(null, ErrorDependencies), LinkError: define(null, ErrorDependencies), RuntimeError: define(null, ErrorDependencies) } }; exports.StaticProperties = StaticProperties; const InstanceProperties = { asIndexedPairs: define("instance/asIndexedPairs", ["esnext.async-iterator.as-indexed-pairs", ...AsyncIteratorDependencies, "esnext.iterator.as-indexed-pairs", ...IteratorDependencies]), at: define("instance/at", [// TODO: We should introduce overloaded instance methods definition // Before that is implemented, the `esnext.string.at` must be the first // In pure mode, the provider resolves the descriptor as a "pure" `esnext.string.at` // and treats the compat-data of `esnext.string.at` as the compat-data of // pure import `instance/at`. The first polyfill here should have the lowest corejs // supported versions. "esnext.string.at", "es.string.at-alternative", "es.array.at"]), anchor: define(null, ["es.string.anchor"]), big: define(null, ["es.string.big"]), bind: define("instance/bind", ["es.function.bind"]), blink: define(null, ["es.string.blink"]), bold: define(null, ["es.string.bold"]), codePointAt: define("instance/code-point-at", ["es.string.code-point-at"]), codePoints: define("instance/code-points", ["esnext.string.code-points"]), concat: define("instance/concat", ["es.array.concat"], undefined, ["String"]), copyWithin: define("instance/copy-within", ["es.array.copy-within"]), description: define(null, ["es.symbol", "es.symbol.description"]), dotAll: define("instance/dot-all", ["es.regexp.dot-all"]), drop: define("instance/drop", ["esnext.async-iterator.drop", ...AsyncIteratorDependencies, "esnext.iterator.drop", ...IteratorDependencies]), emplace: define("instance/emplace", ["esnext.map.emplace", "esnext.weak-map.emplace"]), endsWith: define("instance/ends-with", ["es.string.ends-with"]), entries: define("instance/entries", ArrayNatureIteratorsWithTag), every: define("instance/every", ["es.array.every", "esnext.async-iterator.every", // TODO: add async iterator dependencies when we support sub-dependencies // esnext.async-iterator.every depends on es.promise // but we don't want to pull es.promise when esnext.async-iterator is disabled // // ...AsyncIteratorDependencies "esnext.iterator.every", ...IteratorDependencies]), exec: define(null, ["es.regexp.exec"]), fill: define("instance/fill", ["es.array.fill"]), filter: define("instance/filter", ["es.array.filter", "esnext.async-iterator.filter", "esnext.iterator.filter", ...IteratorDependencies]), filterReject: define("instance/filterReject", ["esnext.array.filter-reject"]), finally: define(null, ["es.promise.finally", ...PromiseDependencies]), find: define("instance/find", ["es.array.find", "esnext.async-iterator.find", "esnext.iterator.find", ...IteratorDependencies]), findIndex: define("instance/find-index", ["es.array.find-index"]), findLast: define("instance/find-last", ["es.array.find-last"]), findLastIndex: define("instance/find-last-index", ["es.array.find-last-index"]), fixed: define(null, ["es.string.fixed"]), flags: define("instance/flags", ["es.regexp.flags"]), flatMap: define("instance/flat-map", ["es.array.flat-map", "es.array.unscopables.flat-map", "esnext.async-iterator.flat-map", "esnext.iterator.flat-map", ...IteratorDependencies]), flat: define("instance/flat", ["es.array.flat", "es.array.unscopables.flat"]), getYear: define(null, ["es.date.get-year"]), group: define("instance/group", ["esnext.array.group"]), groupBy: define("instance/group-by", ["esnext.array.group-by"]), groupByToMap: define("instance/group-by-to-map", ["esnext.array.group-by-to-map", "es.map", "es.object.to-string"]), groupToMap: define("instance/group-to-map", ["esnext.array.group-to-map", "es.map", "es.object.to-string"]), fontcolor: define(null, ["es.string.fontcolor"]), fontsize: define(null, ["es.string.fontsize"]), forEach: define("instance/for-each", ["es.array.for-each", "esnext.async-iterator.for-each", "esnext.iterator.for-each", ...IteratorDependencies, "web.dom-collections.for-each"]), includes: define("instance/includes", ["es.array.includes", "es.string.includes"]), indexed: define("instance/indexed", ["esnext.async-iterator.indexed", ...AsyncIteratorDependencies, "esnext.iterator.indexed", ...IteratorDependencies]), indexOf: define("instance/index-of", ["es.array.index-of"]), italic: define(null, ["es.string.italics"]), join: define(null, ["es.array.join"]), keys: define("instance/keys", ArrayNatureIteratorsWithTag), lastIndex: define(null, ["esnext.array.last-index"]), lastIndexOf: define("instance/last-index-of", ["es.array.last-index-of"]), lastItem: define(null, ["esnext.array.last-item"]), link: define(null, ["es.string.link"]), map: define("instance/map", ["es.array.map", "esnext.async-iterator.map", "esnext.iterator.map"]), match: define(null, ["es.string.match", "es.regexp.exec"]), matchAll: define("instance/match-all", ["es.string.match-all", "es.regexp.exec"]), name: define(null, ["es.function.name"]), padEnd: define("instance/pad-end", ["es.string.pad-end"]), padStart: define("instance/pad-start", ["es.string.pad-start"]), push: define("instance/push", ["es.array.push"]), reduce: define("instance/reduce", ["es.array.reduce", "esnext.async-iterator.reduce", "esnext.iterator.reduce", ...IteratorDependencies]), reduceRight: define("instance/reduce-right", ["es.array.reduce-right"]), repeat: define("instance/repeat", ["es.string.repeat"]), replace: define(null, ["es.string.replace", "es.regexp.exec"]), replaceAll: define("instance/replace-all", ["es.string.replace-all", "es.string.replace", "es.regexp.exec"]), reverse: define("instance/reverse", ["es.array.reverse"]), search: define(null, ["es.string.search", "es.regexp.exec"]), setYear: define(null, ["es.date.set-year"]), slice: define("instance/slice", ["es.array.slice"]), small: define(null, ["es.string.small"]), some: define("instance/some", ["es.array.some", "esnext.async-iterator.some", "esnext.iterator.some", ...IteratorDependencies]), sort: define("instance/sort", ["es.array.sort"]), splice: define("instance/splice", ["es.array.splice"]), split: define(null, ["es.string.split", "es.regexp.exec"]), startsWith: define("instance/starts-with", ["es.string.starts-with"]), sticky: define("instance/sticky", ["es.regexp.sticky"]), strike: define(null, ["es.string.strike"]), sub: define(null, ["es.string.sub"]), substr: define(null, ["es.string.substr"]), sup: define(null, ["es.string.sup"]), take: define("instance/take", ["esnext.async-iterator.take", ...AsyncIteratorDependencies, "esnext.iterator.take", ...IteratorDependencies]), test: define(null, ["es.regexp.test", "es.regexp.exec"]), toArray: define("instance/to-array", ["esnext.async-iterator.to-array", ...AsyncIteratorDependencies, "esnext.iterator.to-array", ...IteratorDependencies]), toAsync: define(null, ["esnext.iterator.to-async", ...IteratorDependencies, ...AsyncIteratorDependencies, ...AsyncIteratorProblemMethods]), toExponential: define(null, ["es.number.to-exponential"]), toFixed: define(null, ["es.number.to-fixed"]), toGMTString: define(null, ["es.date.to-gmt-string"]), toISOString: define(null, ["es.date.to-iso-string"]), toJSON: define(null, ["es.date.to-json", "web.url.to-json"]), toPrecision: define(null, ["es.number.to-precision"]), toReversed: define("instance/to-reversed", ["esnext.array.to-reversed"]), toSorted: define("instance/to-sorted", ["esnext.array.to-sorted", "es.array.sort"]), toSpliced: define("instance/to-spliced", ["esnext.array.to-spliced"]), toString: define(null, ["es.object.to-string", "es.error.to-string", "es.date.to-string", "es.regexp.to-string"]), trim: define("instance/trim", ["es.string.trim"]), trimEnd: define("instance/trim-end", ["es.string.trim-end"]), trimLeft: define("instance/trim-left", ["es.string.trim-start"]), trimRight: define("instance/trim-right", ["es.string.trim-end"]), trimStart: define("instance/trim-start", ["es.string.trim-start"]), uniqueBy: define("instance/unique-by", ["esnext.array.unique-by", "es.map"]), unshift: define("instance/unshift", ["es.array.unshift"]), unThis: define("instance/un-this", ["esnext.function.un-this"]), values: define("instance/values", ArrayNatureIteratorsWithTag), with: define("instance/with", ["esnext.array.with"]), __defineGetter__: define(null, ["es.object.define-getter"]), __defineSetter__: define(null, ["es.object.define-setter"]), __lookupGetter__: define(null, ["es.object.lookup-getter"]), __lookupSetter__: define(null, ["es.object.lookup-setter"]), ["__proto__"]: define(null, ["es.object.proto"]) }; exports.InstanceProperties = InstanceProperties; const CommonInstanceDependencies = new Set(["es.object.to-string", "es.object.define-getter", "es.object.define-setter", "es.object.lookup-getter", "es.object.lookup-setter", "es.regexp.exec"]); exports.CommonInstanceDependencies = CommonInstanceDependencies;lib/usage-filters.js000066600000003305150545024510010430 0ustar00"use strict"; exports.__esModule = true; exports.default = canSkipPolyfill; var _babel = _interopRequireWildcard(require("@babel/core")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } const { types: t } = _babel.default || _babel; function canSkipPolyfill(desc, path) { const { node, parent } = path; switch (desc.name) { case "es.string.split": { if (!t.isCallExpression(parent, { callee: node })) return false; if (parent.arguments.length < 1) return true; const splitter = parent.arguments[0]; return t.isStringLiteral(splitter) || t.isTemplateLiteral(splitter); } } }lib/utils.js000066600000005077150545024520007027 0ustar00"use strict"; exports.__esModule = true; exports.callMethod = callMethod; exports.coreJSModule = coreJSModule; exports.coreJSPureHelper = coreJSPureHelper; exports.isCoreJSSource = isCoreJSSource; var _babel = _interopRequireWildcard(require("@babel/core")); var _entries = _interopRequireDefault(require("../core-js-compat/entries.js")); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } const { types: t } = _babel.default || _babel; function callMethod(path, id) { const { object } = path.node; let context1, context2; if (t.isIdentifier(object)) { context1 = object; context2 = t.cloneNode(object); } else { context1 = path.scope.generateDeclaredUidIdentifier("context"); context2 = t.assignmentExpression("=", t.cloneNode(context1), object); } path.replaceWith(t.memberExpression(t.callExpression(id, [context2]), t.identifier("call"))); path.parentPath.unshiftContainer("arguments", context1); } function isCoreJSSource(source) { if (typeof source === "string") { source = source.replace(/\\/g, "/").replace(/(\/(index)?)?(\.js)?$/i, "").toLowerCase(); } return Object.prototype.hasOwnProperty.call(_entries.default, source) && _entries.default[source]; } function coreJSModule(name) { return `core-js/modules/${name}.js`; } function coreJSPureHelper(name, useBabelRuntime, ext) { return useBabelRuntime ? `${useBabelRuntime}/core-js/${name}${ext}` : `core-js-pure/features/${name}.js`; }LICENSE000066600000002117150545024520005560 0ustar00MIT License Copyright (c) 2014-present Nicolò Ribaudo and other contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. package.json000066600000002401150545024520007035 0ustar00{ "name": "babel-plugin-polyfill-corejs3", "version": "0.6.0", "description": "A Babel plugin to inject imports to core-js@3 polyfills", "repository": { "type": "git", "url": "https://github.com/babel/babel-polyfills.git", "directory": "packages/babel-plugin-polyfill-corejs3" }, "license": "MIT", "publishConfig": { "access": "public" }, "main": "lib/index.js", "exports": { ".": [ { "import": "./esm/index.mjs", "default": "./lib/index.js" }, "./lib/index.js" ], "./package.json": "./package.json" }, "keywords": [ "babel-plugin" ], "dependencies": { "@babel/helper-define-polyfill-provider": "^0.3.3", "core-js-compat": "^3.25.1" }, "devDependencies": { "@babel/core": "^7.17.8", "@babel/helper-plugin-test-runner": "^7.16.7", "@babel/plugin-syntax-dynamic-import": "^7.8.3", "@babel/plugin-transform-classes": "^7.16.7", "@babel/plugin-transform-for-of": "^7.16.7", "@babel/plugin-transform-modules-commonjs": "^7.17.7", "@babel/plugin-transform-spread": "^7.16.7", "core-js": "^3.25.1", "core-js-pure": "^3.25.1" }, "peerDependencies": { "@babel/core": "^7.0.0-0" }, "gitHead": "42b9477c199c0c5420b45cfa8c9bb892d94a64af" }