core-js 3.22.7 → 3.22.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/actual/typed-array/at.js +1 -1
  2. package/full/typed-array/at.js +1 -1
  3. package/internals/a-callable.js +2 -3
  4. package/internals/a-constructor.js +2 -3
  5. package/internals/a-possible-prototype.js +3 -4
  6. package/internals/an-instance.js +2 -3
  7. package/internals/an-object.js +3 -4
  8. package/internals/array-copy-within.js +2 -1
  9. package/internals/array-from.js +3 -4
  10. package/internals/array-group-by.js +2 -3
  11. package/internals/array-reduce.js +2 -3
  12. package/internals/array-slice-simple.js +2 -3
  13. package/internals/array-species-constructor.js +3 -4
  14. package/internals/array-to-spliced.js +2 -4
  15. package/internals/array-with.js +2 -3
  16. package/internals/async-iterator-iteration.js +2 -7
  17. package/internals/classof.js +2 -3
  18. package/internals/composite-key.js +3 -4
  19. package/internals/date-to-iso-string.js +2 -3
  20. package/internals/date-to-primitive.js +2 -3
  21. package/internals/delete-property-or-throw.js +8 -0
  22. package/internals/does-not-exceed-safe-integer.js +7 -0
  23. package/internals/flatten-into-array.js +2 -4
  24. package/internals/function-bind.js +3 -4
  25. package/internals/get-iterator.js +2 -3
  26. package/internals/ieee754.js +2 -4
  27. package/internals/indexed-object.js +4 -5
  28. package/internals/is-iterable.js +2 -3
  29. package/internals/is-symbol.js +2 -3
  30. package/internals/iterate.js +2 -3
  31. package/internals/map-upsert.js +2 -3
  32. package/internals/not-a-regexp.js +2 -3
  33. package/internals/numeric-range-iterator.js +7 -8
  34. package/internals/object-define-property.js +2 -3
  35. package/internals/object-get-prototype-of.js +5 -5
  36. package/internals/ordinary-to-primitive.js +2 -3
  37. package/internals/regexp-exec-abstract.js +2 -3
  38. package/internals/require-object-coercible.js +2 -4
  39. package/internals/shared.js +2 -2
  40. package/internals/string-punycode-to-ascii.js +3 -4
  41. package/internals/string-repeat.js +2 -3
  42. package/internals/to-big-int.js +12 -0
  43. package/internals/to-index.js +2 -3
  44. package/internals/to-object.js +2 -3
  45. package/internals/to-offset.js +2 -3
  46. package/internals/to-positive-integer.js +2 -3
  47. package/internals/to-primitive.js +2 -3
  48. package/internals/to-string.js +2 -3
  49. package/internals/try-to-string.js +2 -4
  50. package/internals/validate-arguments-length.js +2 -4
  51. package/modules/es.aggregate-error.constructor.js +5 -6
  52. package/modules/es.array.concat.js +3 -6
  53. package/modules/es.array.of.js +4 -4
  54. package/modules/es.array.slice.js +4 -5
  55. package/modules/es.array.sort.js +2 -1
  56. package/modules/es.array.splice.js +7 -11
  57. package/modules/es.date.now.js +3 -4
  58. package/modules/es.number.to-exponential.js +7 -8
  59. package/modules/es.number.to-fixed.js +5 -6
  60. package/modules/es.regexp.dot-all.js +2 -3
  61. package/modules/es.regexp.sticky.js +2 -3
  62. package/modules/es.regexp.test.js +2 -3
  63. package/modules/es.string.from-code-point.js +2 -3
  64. package/modules/es.string.match-all.js +2 -3
  65. package/modules/es.string.replace-all.js +2 -3
  66. package/modules/es.typed-array.fill.js +18 -9
  67. package/modules/esnext.array.to-reversed.js +2 -3
  68. package/modules/esnext.array.to-sorted.js +2 -3
  69. package/modules/esnext.array.to-spliced.js +2 -3
  70. package/modules/esnext.array.with.js +2 -3
  71. package/modules/esnext.async-iterator.reduce.js +2 -3
  72. package/modules/esnext.composite-key.js +2 -3
  73. package/modules/esnext.iterator.flat-map.js +2 -3
  74. package/modules/esnext.iterator.reduce.js +2 -3
  75. package/modules/esnext.map.reduce.js +2 -3
  76. package/modules/esnext.map.update.js +2 -3
  77. package/modules/esnext.math.seeded-prng.js +2 -3
  78. package/modules/esnext.number.from-string.js +8 -9
  79. package/modules/esnext.set.reduce.js +2 -3
  80. package/modules/esnext.string.cooked.js +2 -3
  81. package/modules/esnext.typed-array.with.js +9 -0
  82. package/package.json +1 -1
@@ -1,5 +1,4 @@
1
1
  'use strict';
2
- var global = require('../internals/global');
3
2
  var InternalStateModule = require('../internals/internal-state');
4
3
  var createIteratorConstructor = require('../internals/create-iterator-constructor');
5
4
  var isObject = require('../internals/is-object');
@@ -12,15 +11,15 @@ var NUMERIC_RANGE_ITERATOR = 'NumericRangeIterator';
12
11
  var setInternalState = InternalStateModule.set;
13
12
  var getInternalState = InternalStateModule.getterFor(NUMERIC_RANGE_ITERATOR);
14
13
 
15
- var RangeError = global.RangeError;
16
- var TypeError = global.TypeError;
14
+ var $RangeError = RangeError;
15
+ var $TypeError = TypeError;
17
16
 
18
17
  var $RangeIterator = createIteratorConstructor(function NumericRangeIterator(start, end, option, type, zero, one) {
19
18
  if (typeof start != type || (end !== Infinity && end !== -Infinity && typeof end != type)) {
20
- throw new TypeError(INCORRECT_RANGE);
19
+ throw new $TypeError(INCORRECT_RANGE);
21
20
  }
22
21
  if (start === Infinity || start === -Infinity) {
23
- throw new RangeError(INCORRECT_RANGE);
22
+ throw new $RangeError(INCORRECT_RANGE);
24
23
  }
25
24
  var ifIncrease = end > start;
26
25
  var inclusiveEnd = false;
@@ -33,16 +32,16 @@ var $RangeIterator = createIteratorConstructor(function NumericRangeIterator(sta
33
32
  } else if (typeof option == type) {
34
33
  step = option;
35
34
  } else {
36
- throw new TypeError(INCORRECT_RANGE);
35
+ throw new $TypeError(INCORRECT_RANGE);
37
36
  }
38
37
  if (step == null) {
39
38
  step = ifIncrease ? one : -one;
40
39
  }
41
40
  if (typeof step != type) {
42
- throw new TypeError(INCORRECT_RANGE);
41
+ throw new $TypeError(INCORRECT_RANGE);
43
42
  }
44
43
  if (step === Infinity || step === -Infinity || (step === zero && start !== end)) {
45
- throw new RangeError(INCORRECT_RANGE);
44
+ throw new $RangeError(INCORRECT_RANGE);
46
45
  }
47
46
  // eslint-disable-next-line no-self-compare -- NaN check
48
47
  var hitsEnd = start != start || end != end || step != step || (end > start) !== (step > zero);
@@ -1,11 +1,10 @@
1
- var global = require('../internals/global');
2
1
  var DESCRIPTORS = require('../internals/descriptors');
3
2
  var IE8_DOM_DEFINE = require('../internals/ie8-dom-define');
4
3
  var V8_PROTOTYPE_DEFINE_BUG = require('../internals/v8-prototype-define-bug');
5
4
  var anObject = require('../internals/an-object');
6
5
  var toPropertyKey = require('../internals/to-property-key');
7
6
 
8
- var TypeError = global.TypeError;
7
+ var $TypeError = TypeError;
9
8
  // eslint-disable-next-line es-x/no-object-defineproperty -- safe
10
9
  var $defineProperty = Object.defineProperty;
11
10
  // eslint-disable-next-line es-x/no-object-getownpropertydescriptor -- safe
@@ -38,7 +37,7 @@ exports.f = DESCRIPTORS ? V8_PROTOTYPE_DEFINE_BUG ? function defineProperty(O, P
38
37
  if (IE8_DOM_DEFINE) try {
39
38
  return $defineProperty(O, P, Attributes);
40
39
  } catch (error) { /* empty */ }
41
- if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');
40
+ if ('get' in Attributes || 'set' in Attributes) throw $TypeError('Accessors not supported');
42
41
  if ('value' in Attributes) O[P] = Attributes.value;
43
42
  return O;
44
43
  };
@@ -1,4 +1,3 @@
1
- var global = require('../internals/global');
2
1
  var hasOwn = require('../internals/has-own-property');
3
2
  var isCallable = require('../internals/is-callable');
4
3
  var toObject = require('../internals/to-object');
@@ -6,16 +5,17 @@ var sharedKey = require('../internals/shared-key');
6
5
  var CORRECT_PROTOTYPE_GETTER = require('../internals/correct-prototype-getter');
7
6
 
8
7
  var IE_PROTO = sharedKey('IE_PROTO');
9
- var Object = global.Object;
10
- var ObjectPrototype = Object.prototype;
8
+ var $Object = Object;
9
+ var ObjectPrototype = $Object.prototype;
11
10
 
12
11
  // `Object.getPrototypeOf` method
13
12
  // https://tc39.es/ecma262/#sec-object.getprototypeof
14
- module.exports = CORRECT_PROTOTYPE_GETTER ? Object.getPrototypeOf : function (O) {
13
+ // eslint-disable-next-line es-x/no-object-getprototypeof -- safe
14
+ module.exports = CORRECT_PROTOTYPE_GETTER ? $Object.getPrototypeOf : function (O) {
15
15
  var object = toObject(O);
16
16
  if (hasOwn(object, IE_PROTO)) return object[IE_PROTO];
17
17
  var constructor = object.constructor;
18
18
  if (isCallable(constructor) && object instanceof constructor) {
19
19
  return constructor.prototype;
20
- } return object instanceof Object ? ObjectPrototype : null;
20
+ } return object instanceof $Object ? ObjectPrototype : null;
21
21
  };
@@ -1,9 +1,8 @@
1
- var global = require('../internals/global');
2
1
  var call = require('../internals/function-call');
3
2
  var isCallable = require('../internals/is-callable');
4
3
  var isObject = require('../internals/is-object');
5
4
 
6
- var TypeError = global.TypeError;
5
+ var $TypeError = TypeError;
7
6
 
8
7
  // `OrdinaryToPrimitive` abstract operation
9
8
  // https://tc39.es/ecma262/#sec-ordinarytoprimitive
@@ -12,5 +11,5 @@ module.exports = function (input, pref) {
12
11
  if (pref === 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
13
12
  if (isCallable(fn = input.valueOf) && !isObject(val = call(fn, input))) return val;
14
13
  if (pref !== 'string' && isCallable(fn = input.toString) && !isObject(val = call(fn, input))) return val;
15
- throw TypeError("Can't convert object to primitive value");
14
+ throw $TypeError("Can't convert object to primitive value");
16
15
  };
@@ -1,11 +1,10 @@
1
- var global = require('../internals/global');
2
1
  var call = require('../internals/function-call');
3
2
  var anObject = require('../internals/an-object');
4
3
  var isCallable = require('../internals/is-callable');
5
4
  var classof = require('../internals/classof-raw');
6
5
  var regexpExec = require('../internals/regexp-exec');
7
6
 
8
- var TypeError = global.TypeError;
7
+ var $TypeError = TypeError;
9
8
 
10
9
  // `RegExpExec` abstract operation
11
10
  // https://tc39.es/ecma262/#sec-regexpexec
@@ -17,5 +16,5 @@ module.exports = function (R, S) {
17
16
  return result;
18
17
  }
19
18
  if (classof(R) === 'RegExp') return call(regexpExec, R, S);
20
- throw TypeError('RegExp#exec called on incompatible receiver');
19
+ throw $TypeError('RegExp#exec called on incompatible receiver');
21
20
  };
@@ -1,10 +1,8 @@
1
- var global = require('../internals/global');
2
-
3
- var TypeError = global.TypeError;
1
+ var $TypeError = TypeError;
4
2
 
5
3
  // `RequireObjectCoercible` abstract operation
6
4
  // https://tc39.es/ecma262/#sec-requireobjectcoercible
7
5
  module.exports = function (it) {
8
- if (it == undefined) throw TypeError("Can't call method on " + it);
6
+ if (it == undefined) throw $TypeError("Can't call method on " + it);
9
7
  return it;
10
8
  };
@@ -4,9 +4,9 @@ var store = require('../internals/shared-store');
4
4
  (module.exports = function (key, value) {
5
5
  return store[key] || (store[key] = value !== undefined ? value : {});
6
6
  })('versions', []).push({
7
- version: '3.22.7',
7
+ version: '3.22.8',
8
8
  mode: IS_PURE ? 'pure' : 'global',
9
9
  copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',
10
- license: 'https://github.com/zloirock/core-js/blob/v3.22.7/LICENSE',
10
+ license: 'https://github.com/zloirock/core-js/blob/v3.22.8/LICENSE',
11
11
  source: 'https://github.com/zloirock/core-js'
12
12
  });
@@ -1,6 +1,5 @@
1
1
  'use strict';
2
2
  // based on https://github.com/bestiejs/punycode.js/blob/master/punycode.js
3
- var global = require('../internals/global');
4
3
  var uncurryThis = require('../internals/function-uncurry-this');
5
4
 
6
5
  var maxInt = 2147483647; // aka. 0x7FFFFFFF or 2^31-1
@@ -17,7 +16,7 @@ var regexSeparators = /[.\u3002\uFF0E\uFF61]/g; // RFC 3490 separators
17
16
  var OVERFLOW_ERROR = 'Overflow: input needs wider integers to process';
18
17
  var baseMinusTMin = base - tMin;
19
18
 
20
- var RangeError = global.RangeError;
19
+ var $RangeError = RangeError;
21
20
  var exec = uncurryThis(regexSeparators.exec);
22
21
  var floor = Math.floor;
23
22
  var fromCharCode = String.fromCharCode;
@@ -132,7 +131,7 @@ var encode = function (input) {
132
131
  // Increase `delta` enough to advance the decoder's <n,i> state to <m,0>, but guard against overflow.
133
132
  var handledCPCountPlusOne = handledCPCount + 1;
134
133
  if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) {
135
- throw RangeError(OVERFLOW_ERROR);
134
+ throw $RangeError(OVERFLOW_ERROR);
136
135
  }
137
136
 
138
137
  delta += (m - n) * handledCPCountPlusOne;
@@ -141,7 +140,7 @@ var encode = function (input) {
141
140
  for (i = 0; i < input.length; i++) {
142
141
  currentValue = input[i];
143
142
  if (currentValue < n && ++delta > maxInt) {
144
- throw RangeError(OVERFLOW_ERROR);
143
+ throw $RangeError(OVERFLOW_ERROR);
145
144
  }
146
145
  if (currentValue == n) {
147
146
  // Represent delta as a generalized variable-length integer.
@@ -1,10 +1,9 @@
1
1
  'use strict';
2
- var global = require('../internals/global');
3
2
  var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');
4
3
  var toString = require('../internals/to-string');
5
4
  var requireObjectCoercible = require('../internals/require-object-coercible');
6
5
 
7
- var RangeError = global.RangeError;
6
+ var $RangeError = RangeError;
8
7
 
9
8
  // `String.prototype.repeat` method implementation
10
9
  // https://tc39.es/ecma262/#sec-string.prototype.repeat
@@ -12,7 +11,7 @@ module.exports = function repeat(count) {
12
11
  var str = toString(requireObjectCoercible(this));
13
12
  var result = '';
14
13
  var n = toIntegerOrInfinity(count);
15
- if (n < 0 || n == Infinity) throw RangeError('Wrong number of repetitions');
14
+ if (n < 0 || n == Infinity) throw $RangeError('Wrong number of repetitions');
16
15
  for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) result += str;
17
16
  return result;
18
17
  };
@@ -0,0 +1,12 @@
1
+ var toPrimitive = require('../internals/to-primitive');
2
+
3
+ var $TypeError = TypeError;
4
+
5
+ // `ToBigInt` abstract operation
6
+ // https://tc39.es/ecma262/#sec-tobigint
7
+ module.exports = function (argument) {
8
+ var prim = toPrimitive(argument, 'number');
9
+ if (typeof prim == 'number') throw $TypeError("Can't convert number to bigint");
10
+ // eslint-disable-next-line es-x/no-bigint -- safe
11
+ return BigInt(prim);
12
+ };
@@ -1,8 +1,7 @@
1
- var global = require('../internals/global');
2
1
  var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');
3
2
  var toLength = require('../internals/to-length');
4
3
 
5
- var RangeError = global.RangeError;
4
+ var $RangeError = RangeError;
6
5
 
7
6
  // `ToIndex` abstract operation
8
7
  // https://tc39.es/ecma262/#sec-toindex
@@ -10,6 +9,6 @@ module.exports = function (it) {
10
9
  if (it === undefined) return 0;
11
10
  var number = toIntegerOrInfinity(it);
12
11
  var length = toLength(number);
13
- if (number !== length) throw RangeError('Wrong length or index');
12
+ if (number !== length) throw $RangeError('Wrong length or index');
14
13
  return length;
15
14
  };
@@ -1,10 +1,9 @@
1
- var global = require('../internals/global');
2
1
  var requireObjectCoercible = require('../internals/require-object-coercible');
3
2
 
4
- var Object = global.Object;
3
+ var $Object = Object;
5
4
 
6
5
  // `ToObject` abstract operation
7
6
  // https://tc39.es/ecma262/#sec-toobject
8
7
  module.exports = function (argument) {
9
- return Object(requireObjectCoercible(argument));
8
+ return $Object(requireObjectCoercible(argument));
10
9
  };
@@ -1,10 +1,9 @@
1
- var global = require('../internals/global');
2
1
  var toPositiveInteger = require('../internals/to-positive-integer');
3
2
 
4
- var RangeError = global.RangeError;
3
+ var $RangeError = RangeError;
5
4
 
6
5
  module.exports = function (it, BYTES) {
7
6
  var offset = toPositiveInteger(it);
8
- if (offset % BYTES) throw RangeError('Wrong offset');
7
+ if (offset % BYTES) throw $RangeError('Wrong offset');
9
8
  return offset;
10
9
  };
@@ -1,10 +1,9 @@
1
- var global = require('../internals/global');
2
1
  var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');
3
2
 
4
- var RangeError = global.RangeError;
3
+ var $RangeError = RangeError;
5
4
 
6
5
  module.exports = function (it) {
7
6
  var result = toIntegerOrInfinity(it);
8
- if (result < 0) throw RangeError("The argument can't be less than 0");
7
+ if (result < 0) throw $RangeError("The argument can't be less than 0");
9
8
  return result;
10
9
  };
@@ -1,4 +1,3 @@
1
- var global = require('../internals/global');
2
1
  var call = require('../internals/function-call');
3
2
  var isObject = require('../internals/is-object');
4
3
  var isSymbol = require('../internals/is-symbol');
@@ -6,7 +5,7 @@ var getMethod = require('../internals/get-method');
6
5
  var ordinaryToPrimitive = require('../internals/ordinary-to-primitive');
7
6
  var wellKnownSymbol = require('../internals/well-known-symbol');
8
7
 
9
- var TypeError = global.TypeError;
8
+ var $TypeError = TypeError;
10
9
  var TO_PRIMITIVE = wellKnownSymbol('toPrimitive');
11
10
 
12
11
  // `ToPrimitive` abstract operation
@@ -19,7 +18,7 @@ module.exports = function (input, pref) {
19
18
  if (pref === undefined) pref = 'default';
20
19
  result = call(exoticToPrim, input, pref);
21
20
  if (!isObject(result) || isSymbol(result)) return result;
22
- throw TypeError("Can't convert object to primitive value");
21
+ throw $TypeError("Can't convert object to primitive value");
23
22
  }
24
23
  if (pref === undefined) pref = 'number';
25
24
  return ordinaryToPrimitive(input, pref);
@@ -1,9 +1,8 @@
1
- var global = require('../internals/global');
2
1
  var classof = require('../internals/classof');
3
2
 
4
- var String = global.String;
3
+ var $String = String;
5
4
 
6
5
  module.exports = function (argument) {
7
6
  if (classof(argument) === 'Symbol') throw TypeError('Cannot convert a Symbol value to a string');
8
- return String(argument);
7
+ return $String(argument);
9
8
  };
@@ -1,10 +1,8 @@
1
- var global = require('../internals/global');
2
-
3
- var String = global.String;
1
+ var $String = String;
4
2
 
5
3
  module.exports = function (argument) {
6
4
  try {
7
- return String(argument);
5
+ return $String(argument);
8
6
  } catch (error) {
9
7
  return 'Object';
10
8
  }
@@ -1,8 +1,6 @@
1
- var global = require('../internals/global');
2
-
3
- var TypeError = global.TypeError;
1
+ var $TypeError = TypeError;
4
2
 
5
3
  module.exports = function (passed, required) {
6
- if (passed < required) throw TypeError('Not enough arguments');
4
+ if (passed < required) throw $TypeError('Not enough arguments');
7
5
  return passed;
8
6
  };
@@ -1,6 +1,5 @@
1
1
  'use strict';
2
2
  var $ = require('../internals/export');
3
- var global = require('../internals/global');
4
3
  var isPrototypeOf = require('../internals/object-is-prototype-of');
5
4
  var getPrototypeOf = require('../internals/object-get-prototype-of');
6
5
  var setPrototypeOf = require('../internals/object-set-prototype-of');
@@ -16,7 +15,7 @@ var wellKnownSymbol = require('../internals/well-known-symbol');
16
15
  var ERROR_STACK_INSTALLABLE = require('../internals/error-stack-installable');
17
16
 
18
17
  var TO_STRING_TAG = wellKnownSymbol('toStringTag');
19
- var Error = global.Error;
18
+ var $Error = Error;
20
19
  var push = [].push;
21
20
 
22
21
  var $AggregateError = function AggregateError(errors, message /* , options */) {
@@ -24,7 +23,7 @@ var $AggregateError = function AggregateError(errors, message /* , options */) {
24
23
  var isInstance = isPrototypeOf(AggregateErrorPrototype, this);
25
24
  var that;
26
25
  if (setPrototypeOf) {
27
- that = setPrototypeOf(new Error(), isInstance ? getPrototypeOf(this) : AggregateErrorPrototype);
26
+ that = setPrototypeOf(new $Error(), isInstance ? getPrototypeOf(this) : AggregateErrorPrototype);
28
27
  } else {
29
28
  that = isInstance ? this : create(AggregateErrorPrototype);
30
29
  createNonEnumerableProperty(that, TO_STRING_TAG, 'Error');
@@ -38,10 +37,10 @@ var $AggregateError = function AggregateError(errors, message /* , options */) {
38
37
  return that;
39
38
  };
40
39
 
41
- if (setPrototypeOf) setPrototypeOf($AggregateError, Error);
42
- else copyConstructorProperties($AggregateError, Error, { name: true });
40
+ if (setPrototypeOf) setPrototypeOf($AggregateError, $Error);
41
+ else copyConstructorProperties($AggregateError, $Error, { name: true });
43
42
 
44
- var AggregateErrorPrototype = $AggregateError.prototype = create(Error.prototype, {
43
+ var AggregateErrorPrototype = $AggregateError.prototype = create($Error.prototype, {
45
44
  constructor: createPropertyDescriptor(1, $AggregateError),
46
45
  message: createPropertyDescriptor(1, ''),
47
46
  name: createPropertyDescriptor(1, 'AggregateError')
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
  var $ = require('../internals/export');
3
- var global = require('../internals/global');
4
3
  var fails = require('../internals/fails');
5
4
  var isArray = require('../internals/is-array');
6
5
  var isObject = require('../internals/is-object');
7
6
  var toObject = require('../internals/to-object');
8
7
  var lengthOfArrayLike = require('../internals/length-of-array-like');
8
+ var doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');
9
9
  var createProperty = require('../internals/create-property');
10
10
  var arraySpeciesCreate = require('../internals/array-species-create');
11
11
  var arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');
@@ -13,9 +13,6 @@ var wellKnownSymbol = require('../internals/well-known-symbol');
13
13
  var V8_VERSION = require('../internals/engine-v8-version');
14
14
 
15
15
  var IS_CONCAT_SPREADABLE = wellKnownSymbol('isConcatSpreadable');
16
- var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
17
- var MAXIMUM_ALLOWED_INDEX_EXCEEDED = 'Maximum allowed index exceeded';
18
- var TypeError = global.TypeError;
19
16
 
20
17
  // We can't use this feature detection in V8 since it causes
21
18
  // deoptimization and serious performance degradation
@@ -50,10 +47,10 @@ $({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {
50
47
  E = i === -1 ? O : arguments[i];
51
48
  if (isConcatSpreadable(E)) {
52
49
  len = lengthOfArrayLike(E);
53
- if (n + len > MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
50
+ doesNotExceedSafeInteger(n + len);
54
51
  for (k = 0; k < len; k++, n++) if (k in E) createProperty(A, n, E[k]);
55
52
  } else {
56
- if (n >= MAX_SAFE_INTEGER) throw TypeError(MAXIMUM_ALLOWED_INDEX_EXCEEDED);
53
+ doesNotExceedSafeInteger(n + 1);
57
54
  createProperty(A, n++, E);
58
55
  }
59
56
  }
@@ -1,15 +1,15 @@
1
1
  'use strict';
2
2
  var $ = require('../internals/export');
3
- var global = require('../internals/global');
4
3
  var fails = require('../internals/fails');
5
4
  var isConstructor = require('../internals/is-constructor');
6
5
  var createProperty = require('../internals/create-property');
7
6
 
8
- var Array = global.Array;
7
+ var $Array = Array;
9
8
 
10
9
  var ISNT_GENERIC = fails(function () {
11
10
  function F() { /* empty */ }
12
- return !(Array.of.call(F) instanceof F);
11
+ // eslint-disable-next-line es-x/no-array-of -- safe
12
+ return !($Array.of.call(F) instanceof F);
13
13
  });
14
14
 
15
15
  // `Array.of` method
@@ -19,7 +19,7 @@ $({ target: 'Array', stat: true, forced: ISNT_GENERIC }, {
19
19
  of: function of(/* ...args */) {
20
20
  var index = 0;
21
21
  var argumentsLength = arguments.length;
22
- var result = new (isConstructor(this) ? this : Array)(argumentsLength);
22
+ var result = new (isConstructor(this) ? this : $Array)(argumentsLength);
23
23
  while (argumentsLength > index) createProperty(result, index, arguments[index++]);
24
24
  result.length = argumentsLength;
25
25
  return result;
@@ -1,6 +1,5 @@
1
1
  'use strict';
2
2
  var $ = require('../internals/export');
3
- var global = require('../internals/global');
4
3
  var isArray = require('../internals/is-array');
5
4
  var isConstructor = require('../internals/is-constructor');
6
5
  var isObject = require('../internals/is-object');
@@ -15,7 +14,7 @@ var un$Slice = require('../internals/array-slice');
15
14
  var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('slice');
16
15
 
17
16
  var SPECIES = wellKnownSymbol('species');
18
- var Array = global.Array;
17
+ var $Array = Array;
19
18
  var max = Math.max;
20
19
 
21
20
  // `Array.prototype.slice` method
@@ -32,17 +31,17 @@ $({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
32
31
  if (isArray(O)) {
33
32
  Constructor = O.constructor;
34
33
  // cross-realm fallback
35
- if (isConstructor(Constructor) && (Constructor === Array || isArray(Constructor.prototype))) {
34
+ if (isConstructor(Constructor) && (Constructor === $Array || isArray(Constructor.prototype))) {
36
35
  Constructor = undefined;
37
36
  } else if (isObject(Constructor)) {
38
37
  Constructor = Constructor[SPECIES];
39
38
  if (Constructor === null) Constructor = undefined;
40
39
  }
41
- if (Constructor === Array || Constructor === undefined) {
40
+ if (Constructor === $Array || Constructor === undefined) {
42
41
  return un$Slice(O, k, fin);
43
42
  }
44
43
  }
45
- result = new (Constructor === undefined ? Array : Constructor)(max(fin - k, 0));
44
+ result = new (Constructor === undefined ? $Array : Constructor)(max(fin - k, 0));
46
45
  for (n = 0; k < fin; k++, n++) if (k in O) createProperty(result, n, O[k]);
47
46
  result.length = n;
48
47
  return result;
@@ -4,6 +4,7 @@ var uncurryThis = require('../internals/function-uncurry-this');
4
4
  var aCallable = require('../internals/a-callable');
5
5
  var toObject = require('../internals/to-object');
6
6
  var lengthOfArrayLike = require('../internals/length-of-array-like');
7
+ var deletePropertyOrThrow = require('../internals/delete-property-or-throw');
7
8
  var toString = require('../internals/to-string');
8
9
  var fails = require('../internals/fails');
9
10
  var internalSort = require('../internals/array-sort');
@@ -98,7 +99,7 @@ $({ target: 'Array', proto: true, forced: FORCED }, {
98
99
  index = 0;
99
100
 
100
101
  while (index < itemsLength) array[index] = items[index++];
101
- while (index < arrayLength) delete array[index++];
102
+ while (index < arrayLength) deletePropertyOrThrow(array, index++);
102
103
 
103
104
  return array;
104
105
  }
@@ -1,21 +1,19 @@
1
1
  'use strict';
2
2
  var $ = require('../internals/export');
3
- var global = require('../internals/global');
3
+ var toObject = require('../internals/to-object');
4
4
  var toAbsoluteIndex = require('../internals/to-absolute-index');
5
5
  var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');
6
6
  var lengthOfArrayLike = require('../internals/length-of-array-like');
7
- var toObject = require('../internals/to-object');
7
+ var doesNotExceedSafeInteger = require('../internals/does-not-exceed-safe-integer');
8
8
  var arraySpeciesCreate = require('../internals/array-species-create');
9
9
  var createProperty = require('../internals/create-property');
10
+ var deletePropertyOrThrow = require('../internals/delete-property-or-throw');
10
11
  var arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');
11
12
 
12
13
  var HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');
13
14
 
14
- var TypeError = global.TypeError;
15
15
  var max = Math.max;
16
16
  var min = Math.min;
17
- var MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;
18
- var MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded';
19
17
 
20
18
  // `Array.prototype.splice` method
21
19
  // https://tc39.es/ecma262/#sec-array.prototype.splice
@@ -36,9 +34,7 @@ $({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
36
34
  insertCount = argumentsLength - 2;
37
35
  actualDeleteCount = min(max(toIntegerOrInfinity(deleteCount), 0), len - actualStart);
38
36
  }
39
- if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) {
40
- throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED);
41
- }
37
+ doesNotExceedSafeInteger(len + insertCount - actualDeleteCount);
42
38
  A = arraySpeciesCreate(O, actualDeleteCount);
43
39
  for (k = 0; k < actualDeleteCount; k++) {
44
40
  from = actualStart + k;
@@ -50,15 +46,15 @@ $({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {
50
46
  from = k + actualDeleteCount;
51
47
  to = k + insertCount;
52
48
  if (from in O) O[to] = O[from];
53
- else delete O[to];
49
+ else deletePropertyOrThrow(O, to);
54
50
  }
55
- for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1];
51
+ for (k = len; k > len - actualDeleteCount + insertCount; k--) deletePropertyOrThrow(O, k - 1);
56
52
  } else if (insertCount > actualDeleteCount) {
57
53
  for (k = len - actualDeleteCount; k > actualStart; k--) {
58
54
  from = k + actualDeleteCount - 1;
59
55
  to = k + insertCount - 1;
60
56
  if (from in O) O[to] = O[from];
61
- else delete O[to];
57
+ else deletePropertyOrThrow(O, to);
62
58
  }
63
59
  }
64
60
  for (k = 0; k < insertCount; k++) {
@@ -1,15 +1,14 @@
1
1
  // TODO: Remove from `core-js@4`
2
2
  var $ = require('../internals/export');
3
- var global = require('../internals/global');
4
3
  var uncurryThis = require('../internals/function-uncurry-this');
5
4
 
6
- var Date = global.Date;
7
- var getTime = uncurryThis(Date.prototype.getTime);
5
+ var $Date = Date;
6
+ var getTime = uncurryThis($Date.prototype.getTime);
8
7
 
9
8
  // `Date.now` method
10
9
  // https://tc39.es/ecma262/#sec-date.now
11
10
  $({ target: 'Date', stat: true }, {
12
11
  now: function now() {
13
- return getTime(new Date());
12
+ return getTime(new $Date());
14
13
  }
15
14
  });
@@ -1,6 +1,5 @@
1
1
  'use strict';
2
2
  var $ = require('../internals/export');
3
- var global = require('../internals/global');
4
3
  var uncurryThis = require('../internals/function-uncurry-this');
5
4
  var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');
6
5
  var thisNumberValue = require('../internals/this-number-value');
@@ -8,9 +7,9 @@ var $repeat = require('../internals/string-repeat');
8
7
  var log10 = require('../internals/math-log10');
9
8
  var fails = require('../internals/fails');
10
9
 
11
- var RangeError = global.RangeError;
12
- var String = global.String;
13
- var isFinite = global.isFinite;
10
+ var $RangeError = RangeError;
11
+ var $String = String;
12
+ var $isFinite = isFinite;
14
13
  var abs = Math.abs;
15
14
  var floor = Math.floor;
16
15
  var pow = Math.pow;
@@ -51,9 +50,9 @@ $({ target: 'Number', proto: true, forced: FORCED }, {
51
50
  var x = thisNumberValue(this);
52
51
  if (fractionDigits === undefined) return un$ToExponential(x);
53
52
  var f = toIntegerOrInfinity(fractionDigits);
54
- if (!isFinite(x)) return String(x);
53
+ if (!$isFinite(x)) return String(x);
55
54
  // TODO: ES2018 increased the maximum number of fraction digits to 100, need to improve the implementation
56
- if (f < 0 || f > 20) throw RangeError('Incorrect fraction digits');
55
+ if (f < 0 || f > 20) throw $RangeError('Incorrect fraction digits');
57
56
  if (ROUNDS_PROPERLY) return un$ToExponential(x, f);
58
57
  var s = '';
59
58
  var m = '';
@@ -82,7 +81,7 @@ $({ target: 'Number', proto: true, forced: FORCED }, {
82
81
  n /= 10;
83
82
  e += 1;
84
83
  }
85
- m = String(n);
84
+ m = $String(n);
86
85
  }
87
86
  if (f !== 0) {
88
87
  m = stringSlice(m, 0, 1) + '.' + stringSlice(m, 1);
@@ -92,7 +91,7 @@ $({ target: 'Number', proto: true, forced: FORCED }, {
92
91
  d = '0';
93
92
  } else {
94
93
  c = e > 0 ? '+' : '-';
95
- d = String(abs(e));
94
+ d = $String(abs(e));
96
95
  }
97
96
  m += 'e' + c + d;
98
97
  return s + m;