core-js 3.33.3 → 3.35.0

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 (98) hide show
  1. package/actual/map/group-by.js +2 -10
  2. package/actual/object/group-by.js +2 -4
  3. package/actual/promise/with-resolvers.js +3 -10
  4. package/es/index.js +3 -0
  5. package/es/map/group-by.js +13 -0
  6. package/es/map/index.js +1 -0
  7. package/es/object/group-by.js +7 -0
  8. package/es/object/index.js +1 -0
  9. package/es/promise/index.js +1 -0
  10. package/es/promise/with-resolvers.js +13 -0
  11. package/features/typed-array/from-base64.js +2 -0
  12. package/features/typed-array/from-hex.js +2 -0
  13. package/features/typed-array/to-base64.js +2 -0
  14. package/features/typed-array/to-hex.js +2 -0
  15. package/full/index.js +7 -0
  16. package/full/typed-array/from-base64.js +2 -0
  17. package/full/typed-array/from-hex.js +2 -0
  18. package/full/typed-array/index.js +4 -0
  19. package/full/typed-array/methods.js +4 -0
  20. package/full/typed-array/to-base64.js +2 -0
  21. package/full/typed-array/to-hex.js +2 -0
  22. package/internals/a-data-view.js +9 -0
  23. package/internals/a-possible-prototype.js +2 -2
  24. package/internals/a-string.js +7 -0
  25. package/internals/an-object-or-undefined.js +10 -0
  26. package/internals/an-uint8-array.js +11 -0
  27. package/internals/array-buffer.js +6 -9
  28. package/internals/array-from-constructor-and-list.js +2 -2
  29. package/internals/array-iteration-from-last.js +1 -1
  30. package/internals/array-iteration.js +1 -1
  31. package/internals/array-reduce.js +1 -1
  32. package/internals/array-sort.js +30 -33
  33. package/internals/base64-map.js +14 -5
  34. package/internals/collection-from.js +17 -24
  35. package/internals/collection-of.js +11 -3
  36. package/internals/collection-strong.js +1 -2
  37. package/internals/get-alphabet-option.js +8 -0
  38. package/internals/get-set-record.js +5 -10
  39. package/internals/is-callable.js +4 -4
  40. package/internals/is-object.js +1 -6
  41. package/internals/is-possible-prototype.js +6 -0
  42. package/internals/microtask.js +2 -4
  43. package/internals/object-get-own-property-names-external.js +1 -1
  44. package/internals/safe-get-built-in.js +13 -0
  45. package/internals/shared.js +2 -2
  46. package/internals/typed-array-constructor.js +3 -12
  47. package/modules/es.array.push.js +1 -1
  48. package/modules/es.function.has-instance.js +2 -5
  49. package/modules/es.map.group-by.js +31 -0
  50. package/modules/es.object.group-by.js +30 -0
  51. package/modules/es.object.proto.js +4 -2
  52. package/modules/es.promise.reject.js +2 -2
  53. package/modules/es.promise.with-resolvers.js +16 -0
  54. package/modules/es.regexp.constructor.js +2 -1
  55. package/modules/es.regexp.dot-all.js +1 -1
  56. package/modules/es.regexp.to-string.js +1 -1
  57. package/modules/es.string.ends-with.js +1 -5
  58. package/modules/es.string.split.js +1 -1
  59. package/modules/es.string.starts-with.js +1 -5
  60. package/modules/es.symbol.constructor.js +1 -1
  61. package/modules/es.weak-map.constructor.js +3 -6
  62. package/modules/esnext.data-view.set-float16.js +2 -3
  63. package/modules/esnext.data-view.set-uint8-clamped.js +2 -3
  64. package/modules/esnext.iterator.constructor.js +27 -7
  65. package/modules/esnext.map.from.js +3 -2
  66. package/modules/esnext.map.group-by.js +2 -30
  67. package/modules/esnext.map.of.js +3 -2
  68. package/modules/esnext.number.from-string.js +1 -1
  69. package/modules/esnext.object.group-by.js +2 -29
  70. package/modules/esnext.promise.with-resolvers.js +2 -15
  71. package/modules/esnext.set.from.js +3 -2
  72. package/modules/esnext.set.of.js +3 -2
  73. package/modules/esnext.string.dedent.js +1 -1
  74. package/modules/esnext.uint8-array.from-base64.js +75 -0
  75. package/modules/esnext.uint8-array.from-hex.js +28 -0
  76. package/modules/esnext.uint8-array.to-base64.js +47 -0
  77. package/modules/esnext.uint8-array.to-hex.js +22 -0
  78. package/modules/esnext.weak-map.from.js +3 -2
  79. package/modules/esnext.weak-map.of.js +3 -2
  80. package/modules/esnext.weak-set.from.js +3 -2
  81. package/modules/esnext.weak-set.of.js +3 -2
  82. package/modules/web.atob.js +20 -15
  83. package/modules/web.btoa.js +11 -7
  84. package/modules/web.dom-collections.iterator.js +2 -4
  85. package/modules/web.queue-microtask.js +1 -7
  86. package/modules/web.url-search-params.constructor.js +1 -9
  87. package/modules/web.url.constructor.js +1 -1
  88. package/package.json +1 -1
  89. package/proposals/array-buffer-base64.js +6 -0
  90. package/stable/index.js +3 -0
  91. package/stable/map/group-by.js +4 -0
  92. package/stable/object/group-by.js +4 -0
  93. package/stable/promise/with-resolvers.js +4 -0
  94. package/stage/2.js +1 -0
  95. package/stage/3.js +0 -2
  96. package/stage/4.js +2 -0
  97. package/internals/array-slice-simple.js +0 -18
  98. package/internals/document-all.js +0 -11
@@ -9,7 +9,7 @@ var toObject = require('../internals/to-object');
9
9
  var isCallable = require('../internals/is-callable');
10
10
  var lengthOfArrayLike = require('../internals/length-of-array-like');
11
11
  var defineProperty = require('../internals/object-define-property').f;
12
- var createArrayFromList = require('../internals/array-slice-simple');
12
+ var createArrayFromList = require('../internals/array-slice');
13
13
  var WeakMapHelpers = require('../internals/weak-map-helpers');
14
14
  var cooked = require('../internals/string-cooked');
15
15
  var parse = require('../internals/string-parse');
@@ -0,0 +1,75 @@
1
+ 'use strict';
2
+ var $ = require('../internals/export');
3
+ var global = require('../internals/global');
4
+ var uncurryThis = require('../internals/function-uncurry-this');
5
+ var anObjectOrUndefined = require('../internals/an-object-or-undefined');
6
+ var aString = require('../internals/a-string');
7
+ var hasOwn = require('../internals/has-own-property');
8
+ var arrayFromConstructorAndList = require('../internals/array-from-constructor-and-list');
9
+ var base64Map = require('../internals/base64-map');
10
+ var getAlphabetOption = require('../internals/get-alphabet-option');
11
+
12
+ var base64Alphabet = base64Map.c2i;
13
+ var base64UrlAlphabet = base64Map.c2iUrl;
14
+
15
+ var Uint8Array = global.Uint8Array;
16
+ var SyntaxError = global.SyntaxError;
17
+ var charAt = uncurryThis(''.charAt);
18
+ var replace = uncurryThis(''.replace);
19
+ var stringSlice = uncurryThis(''.slice);
20
+ var push = uncurryThis([].push);
21
+ var SPACES = /[\t\n\f\r ]/g;
22
+ var EXTRA_BITS = 'Extra bits';
23
+
24
+ // `Uint8Array.fromBase64` method
25
+ // https://github.com/tc39/proposal-arraybuffer-base64
26
+ if (Uint8Array) $({ target: 'Uint8Array', stat: true, forced: true }, {
27
+ fromBase64: function fromBase64(string /* , options */) {
28
+ aString(string);
29
+ var options = arguments.length > 1 ? anObjectOrUndefined(arguments[1]) : undefined;
30
+ var alphabet = getAlphabetOption(options) === 'base64' ? base64Alphabet : base64UrlAlphabet;
31
+ var strict = options ? !!options.strict : false;
32
+
33
+ var input = strict ? string : replace(string, SPACES, '');
34
+
35
+ if (input.length % 4 === 0) {
36
+ if (stringSlice(input, -2) === '==') input = stringSlice(input, 0, -2);
37
+ else if (stringSlice(input, -1) === '=') input = stringSlice(input, 0, -1);
38
+ } else if (strict) throw new SyntaxError('Input is not correctly padded');
39
+
40
+ var lastChunkSize = input.length % 4;
41
+
42
+ switch (lastChunkSize) {
43
+ case 1: throw new SyntaxError('Bad input length');
44
+ case 2: input += 'AA'; break;
45
+ case 3: input += 'A';
46
+ }
47
+
48
+ var bytes = [];
49
+ var i = 0;
50
+ var inputLength = input.length;
51
+
52
+ var at = function (shift) {
53
+ var chr = charAt(input, i + shift);
54
+ if (!hasOwn(alphabet, chr)) throw new SyntaxError('Bad char in input: "' + chr + '"');
55
+ return alphabet[chr] << (18 - 6 * shift);
56
+ };
57
+
58
+ for (; i < inputLength; i += 4) {
59
+ var triplet = at(0) + at(1) + at(2) + at(3);
60
+ push(bytes, (triplet >> 16) & 255, (triplet >> 8) & 255, triplet & 255);
61
+ }
62
+
63
+ var byteLength = bytes.length;
64
+
65
+ if (lastChunkSize === 2) {
66
+ if (strict && bytes[byteLength - 2] !== 0) throw new SyntaxError(EXTRA_BITS);
67
+ byteLength -= 2;
68
+ } else if (lastChunkSize === 3) {
69
+ if (strict && bytes[byteLength - 1] !== 0) throw new SyntaxError(EXTRA_BITS);
70
+ byteLength--;
71
+ }
72
+
73
+ return arrayFromConstructorAndList(Uint8Array, bytes, byteLength);
74
+ }
75
+ });
@@ -0,0 +1,28 @@
1
+ 'use strict';
2
+ var $ = require('../internals/export');
3
+ var global = require('../internals/global');
4
+ var uncurryThis = require('../internals/function-uncurry-this');
5
+ var aString = require('../internals/a-string');
6
+
7
+ var Uint8Array = global.Uint8Array;
8
+ var SyntaxError = global.SyntaxError;
9
+ var parseInt = global.parseInt;
10
+ var NOT_HEX = /[^\da-f]/i;
11
+ var exec = uncurryThis(NOT_HEX.exec);
12
+ var stringSlice = uncurryThis(''.slice);
13
+
14
+ // `Uint8Array.fromHex` method
15
+ // https://github.com/tc39/proposal-arraybuffer-base64
16
+ if (Uint8Array) $({ target: 'Uint8Array', stat: true, forced: true }, {
17
+ fromHex: function fromHex(string) {
18
+ aString(string);
19
+ var stringLength = string.length;
20
+ if (stringLength % 2) throw new SyntaxError('String should have an even number of characters');
21
+ if (exec(NOT_HEX, string)) throw new SyntaxError('String should only contain hex characters');
22
+ var result = new Uint8Array(stringLength / 2);
23
+ for (var i = 0; i < stringLength; i += 2) {
24
+ result[i / 2] = parseInt(stringSlice(string, i, i + 2), 16);
25
+ }
26
+ return result;
27
+ }
28
+ });
@@ -0,0 +1,47 @@
1
+ 'use strict';
2
+ var $ = require('../internals/export');
3
+ var global = require('../internals/global');
4
+ var uncurryThis = require('../internals/function-uncurry-this');
5
+ var anObjectOrUndefined = require('../internals/an-object-or-undefined');
6
+ var anUint8Array = require('../internals/an-uint8-array');
7
+ var base64Map = require('../internals/base64-map');
8
+ var getAlphabetOption = require('../internals/get-alphabet-option');
9
+
10
+ var base64Alphabet = base64Map.i2c;
11
+ var base64UrlAlphabet = base64Map.i2cUrl;
12
+
13
+ var Uint8Array = global.Uint8Array;
14
+ var charAt = uncurryThis(''.charAt);
15
+
16
+ // `Uint8Array.prototype.toBase64` method
17
+ // https://github.com/tc39/proposal-arraybuffer-base64
18
+ if (Uint8Array) $({ target: 'Uint8Array', proto: true, forced: true }, {
19
+ toBase64: function toBase64(/* options */) {
20
+ var array = anUint8Array(this);
21
+ var options = arguments.length ? anObjectOrUndefined(arguments[0]) : undefined;
22
+ var alphabet = getAlphabetOption(options) === 'base64' ? base64Alphabet : base64UrlAlphabet;
23
+
24
+ var result = '';
25
+ var i = 0;
26
+ var length = array.length;
27
+ var triplet;
28
+
29
+ var at = function (shift) {
30
+ return charAt(alphabet, (triplet >> (6 * shift)) & 63);
31
+ };
32
+
33
+ for (; i + 2 < length; i += 3) {
34
+ triplet = (array[i] << 16) + (array[i + 1] << 8) + array[i + 2];
35
+ result += at(3) + at(2) + at(1) + at(0);
36
+ }
37
+ if (i + 2 === length) {
38
+ triplet = (array[i] << 16) + (array[i + 1] << 8);
39
+ result += at(3) + at(2) + at(1) + '=';
40
+ } else if (i + 1 === length) {
41
+ triplet = array[i] << 16;
42
+ result += at(3) + at(2) + '==';
43
+ }
44
+
45
+ return result;
46
+ }
47
+ });
@@ -0,0 +1,22 @@
1
+ 'use strict';
2
+ var $ = require('../internals/export');
3
+ var global = require('../internals/global');
4
+ var uncurryThis = require('../internals/function-uncurry-this');
5
+ var anUint8Array = require('../internals/an-uint8-array');
6
+
7
+ var Uint8Array = global.Uint8Array;
8
+ var numberToString = uncurryThis(1.0.toString);
9
+
10
+ // `Uint8Array.prototype.toHex` method
11
+ // https://github.com/tc39/proposal-arraybuffer-base64
12
+ if (Uint8Array) $({ target: 'Uint8Array', proto: true, forced: true }, {
13
+ toHex: function toHex() {
14
+ anUint8Array(this);
15
+ var result = '';
16
+ for (var i = 0, length = this.length; i < length; i++) {
17
+ var hex = numberToString(this[i], 16);
18
+ result += hex.length === 1 ? '0' + hex : hex;
19
+ }
20
+ return result;
21
+ }
22
+ });
@@ -1,9 +1,10 @@
1
1
  'use strict';
2
2
  var $ = require('../internals/export');
3
- var from = require('../internals/collection-from');
3
+ var WeakMapHelpers = require('../internals/weak-map-helpers');
4
+ var createCollectionFrom = require('../internals/collection-from');
4
5
 
5
6
  // `WeakMap.from` method
6
7
  // https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.from
7
8
  $({ target: 'WeakMap', stat: true, forced: true }, {
8
- from: from
9
+ from: createCollectionFrom(WeakMapHelpers.WeakMap, WeakMapHelpers.set, true)
9
10
  });
@@ -1,9 +1,10 @@
1
1
  'use strict';
2
2
  var $ = require('../internals/export');
3
- var of = require('../internals/collection-of');
3
+ var WeakMapHelpers = require('../internals/weak-map-helpers');
4
+ var createCollectionOf = require('../internals/collection-of');
4
5
 
5
6
  // `WeakMap.of` method
6
7
  // https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of
7
8
  $({ target: 'WeakMap', stat: true, forced: true }, {
8
- of: of
9
+ of: createCollectionOf(WeakMapHelpers.WeakMap, WeakMapHelpers.set, true)
9
10
  });
@@ -1,9 +1,10 @@
1
1
  'use strict';
2
2
  var $ = require('../internals/export');
3
- var from = require('../internals/collection-from');
3
+ var WeakSetHelpers = require('../internals/weak-set-helpers');
4
+ var createCollectionFrom = require('../internals/collection-from');
4
5
 
5
6
  // `WeakSet.from` method
6
7
  // https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.from
7
8
  $({ target: 'WeakSet', stat: true, forced: true }, {
8
- from: from
9
+ from: createCollectionFrom(WeakSetHelpers.WeakSet, WeakSetHelpers.add, false)
9
10
  });
@@ -1,9 +1,10 @@
1
1
  'use strict';
2
2
  var $ = require('../internals/export');
3
- var of = require('../internals/collection-of');
3
+ var WeakSetHelpers = require('../internals/weak-set-helpers');
4
+ var createCollectionOf = require('../internals/collection-of');
4
5
 
5
6
  // `WeakSet.of` method
6
7
  // https://tc39.github.io/proposal-setmap-offrom/#sec-weakset.of
7
8
  $({ target: 'WeakSet', stat: true, forced: true }, {
8
- of: of
9
+ of: createCollectionOf(WeakSetHelpers.WeakSet, WeakSetHelpers.add, false)
9
10
  });
@@ -6,9 +6,8 @@ var uncurryThis = require('../internals/function-uncurry-this');
6
6
  var call = require('../internals/function-call');
7
7
  var fails = require('../internals/fails');
8
8
  var toString = require('../internals/to-string');
9
- var hasOwn = require('../internals/has-own-property');
10
9
  var validateArgumentsLength = require('../internals/validate-arguments-length');
11
- var ctoi = require('../internals/base64-map').ctoi;
10
+ var c2i = require('../internals/base64-map').c2i;
12
11
 
13
12
  var disallowed = /[^\d+/a-z]/i;
14
13
  var whitespaces = /[\t\n\f\r ]+/g;
@@ -20,43 +19,49 @@ var charAt = uncurryThis(''.charAt);
20
19
  var replace = uncurryThis(''.replace);
21
20
  var exec = uncurryThis(disallowed.exec);
22
21
 
23
- var NO_SPACES_IGNORE = fails(function () {
22
+ var BASIC = !!$atob && !fails(function () {
23
+ return $atob('aGk=') !== 'hi';
24
+ });
25
+
26
+ var NO_SPACES_IGNORE = BASIC && fails(function () {
24
27
  return $atob(' ') !== '';
25
28
  });
26
29
 
27
- var NO_ENCODING_CHECK = !fails(function () {
30
+ var NO_ENCODING_CHECK = BASIC && !fails(function () {
28
31
  $atob('a');
29
32
  });
30
33
 
31
- var NO_ARG_RECEIVING_CHECK = !NO_SPACES_IGNORE && !NO_ENCODING_CHECK && !fails(function () {
34
+ var NO_ARG_RECEIVING_CHECK = BASIC && !fails(function () {
32
35
  $atob();
33
36
  });
34
37
 
35
- var WRONG_ARITY = !NO_SPACES_IGNORE && !NO_ENCODING_CHECK && $atob.length !== 1;
38
+ var WRONG_ARITY = BASIC && $atob.length !== 1;
39
+
40
+ var FORCED = !BASIC || NO_SPACES_IGNORE || NO_ENCODING_CHECK || NO_ARG_RECEIVING_CHECK || WRONG_ARITY;
36
41
 
37
42
  // `atob` method
38
43
  // https://html.spec.whatwg.org/multipage/webappapis.html#dom-atob
39
- $({ global: true, bind: true, enumerable: true, forced: NO_SPACES_IGNORE || NO_ENCODING_CHECK || NO_ARG_RECEIVING_CHECK || WRONG_ARITY }, {
44
+ $({ global: true, bind: true, enumerable: true, forced: FORCED }, {
40
45
  atob: function atob(data) {
41
46
  validateArgumentsLength(arguments.length, 1);
42
47
  // `webpack` dev server bug on IE global methods - use call(fn, global, ...)
43
- if (NO_ARG_RECEIVING_CHECK || WRONG_ARITY) return call($atob, global, data);
48
+ if (BASIC && !NO_SPACES_IGNORE && !NO_ENCODING_CHECK) return call($atob, global, data);
44
49
  var string = replace(toString(data), whitespaces, '');
45
50
  var output = '';
46
51
  var position = 0;
47
52
  var bc = 0;
48
- var chr, bs;
53
+ var length, chr, bs;
49
54
  if (string.length % 4 === 0) {
50
55
  string = replace(string, finalEq, '');
51
56
  }
52
- if (string.length % 4 === 1 || exec(disallowed, string)) {
57
+ length = string.length;
58
+ if (length % 4 === 1 || exec(disallowed, string)) {
53
59
  throw new (getBuiltIn('DOMException'))('The string is not correctly encoded', 'InvalidCharacterError');
54
60
  }
55
- while (chr = charAt(string, position++)) {
56
- if (hasOwn(ctoi, chr)) {
57
- bs = bc % 4 ? bs * 64 + ctoi[chr] : ctoi[chr];
58
- if (bc++ % 4) output += fromCharCode(255 & bs >> (-2 * bc & 6));
59
- }
61
+ while (position < length) {
62
+ chr = charAt(string, position++);
63
+ bs = bc % 4 ? bs * 64 + c2i[chr] : c2i[chr];
64
+ if (bc++ % 4) output += fromCharCode(255 & bs >> (-2 * bc & 6));
60
65
  } return output;
61
66
  }
62
67
  });
@@ -7,33 +7,37 @@ var call = require('../internals/function-call');
7
7
  var fails = require('../internals/fails');
8
8
  var toString = require('../internals/to-string');
9
9
  var validateArgumentsLength = require('../internals/validate-arguments-length');
10
- var itoc = require('../internals/base64-map').itoc;
10
+ var i2c = require('../internals/base64-map').i2c;
11
11
 
12
12
  var $btoa = getBuiltIn('btoa');
13
13
  var charAt = uncurryThis(''.charAt);
14
14
  var charCodeAt = uncurryThis(''.charCodeAt);
15
15
 
16
- var NO_ARG_RECEIVING_CHECK = !!$btoa && !fails(function () {
16
+ var BASIC = !!$btoa && !fails(function () {
17
+ return $btoa('hi') !== 'aGk=';
18
+ });
19
+
20
+ var NO_ARG_RECEIVING_CHECK = BASIC && !fails(function () {
17
21
  $btoa();
18
22
  });
19
23
 
20
- var WRONG_ARG_CONVERSION = !!$btoa && fails(function () {
24
+ var WRONG_ARG_CONVERSION = BASIC && fails(function () {
21
25
  return $btoa(null) !== 'bnVsbA==';
22
26
  });
23
27
 
24
- var WRONG_ARITY = !!$btoa && $btoa.length !== 1;
28
+ var WRONG_ARITY = BASIC && $btoa.length !== 1;
25
29
 
26
30
  // `btoa` method
27
31
  // https://html.spec.whatwg.org/multipage/webappapis.html#dom-btoa
28
- $({ global: true, bind: true, enumerable: true, forced: NO_ARG_RECEIVING_CHECK || WRONG_ARG_CONVERSION || WRONG_ARITY }, {
32
+ $({ global: true, bind: true, enumerable: true, forced: !BASIC || NO_ARG_RECEIVING_CHECK || WRONG_ARG_CONVERSION || WRONG_ARITY }, {
29
33
  btoa: function btoa(data) {
30
34
  validateArgumentsLength(arguments.length, 1);
31
35
  // `webpack` dev server bug on IE global methods - use call(fn, global, ...)
32
- if (NO_ARG_RECEIVING_CHECK || WRONG_ARG_CONVERSION || WRONG_ARITY) return call($btoa, global, toString(data));
36
+ if (BASIC) return call($btoa, global, toString(data));
33
37
  var string = toString(data);
34
38
  var output = '';
35
39
  var position = 0;
36
- var map = itoc;
40
+ var map = i2c;
37
41
  var block, charCode;
38
42
  while (charAt(string, position) || (map = '=', position % 1)) {
39
43
  charCode = charCodeAt(string, position += 3 / 4);
@@ -4,10 +4,10 @@ var DOMIterables = require('../internals/dom-iterables');
4
4
  var DOMTokenListPrototype = require('../internals/dom-token-list-prototype');
5
5
  var ArrayIteratorMethods = require('../modules/es.array.iterator');
6
6
  var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
7
+ var setToStringTag = require('../internals/set-to-string-tag');
7
8
  var wellKnownSymbol = require('../internals/well-known-symbol');
8
9
 
9
10
  var ITERATOR = wellKnownSymbol('iterator');
10
- var TO_STRING_TAG = wellKnownSymbol('toStringTag');
11
11
  var ArrayValues = ArrayIteratorMethods.values;
12
12
 
13
13
  var handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {
@@ -18,9 +18,7 @@ var handlePrototype = function (CollectionPrototype, COLLECTION_NAME) {
18
18
  } catch (error) {
19
19
  CollectionPrototype[ITERATOR] = ArrayValues;
20
20
  }
21
- if (!CollectionPrototype[TO_STRING_TAG]) {
22
- createNonEnumerableProperty(CollectionPrototype, TO_STRING_TAG, COLLECTION_NAME);
23
- }
21
+ setToStringTag(CollectionPrototype, COLLECTION_NAME, true);
24
22
  if (DOMIterables[COLLECTION_NAME]) for (var METHOD_NAME in ArrayIteratorMethods) {
25
23
  // some Chrome versions have non-configurable methods on DOMTokenList
26
24
  if (CollectionPrototype[METHOD_NAME] !== ArrayIteratorMethods[METHOD_NAME]) try {
@@ -1,20 +1,14 @@
1
1
  'use strict';
2
2
  var $ = require('../internals/export');
3
- var global = require('../internals/global');
4
3
  var microtask = require('../internals/microtask');
5
4
  var aCallable = require('../internals/a-callable');
6
5
  var validateArgumentsLength = require('../internals/validate-arguments-length');
7
- var IS_NODE = require('../internals/engine-is-node');
8
-
9
- var process = global.process;
10
6
 
11
7
  // `queueMicrotask` method
12
8
  // https://html.spec.whatwg.org/multipage/timers-and-user-prompts.html#dom-queuemicrotask
13
9
  $({ global: true, enumerable: true, dontCallGetSet: true }, {
14
10
  queueMicrotask: function queueMicrotask(fn) {
15
11
  validateArgumentsLength(arguments.length, 1);
16
- aCallable(fn);
17
- var domain = IS_NODE && process.domain;
18
- microtask(domain ? domain.bind(fn) : fn);
12
+ microtask(aCallable(fn));
19
13
  }
20
14
  });
@@ -3,6 +3,7 @@
3
3
  require('../modules/es.array.iterator');
4
4
  var $ = require('../internals/export');
5
5
  var global = require('../internals/global');
6
+ var safeGetBuiltIn = require('../internals/safe-get-built-in');
6
7
  var call = require('../internals/function-call');
7
8
  var uncurryThis = require('../internals/function-uncurry-this');
8
9
  var DESCRIPTORS = require('../internals/descriptors');
@@ -36,15 +37,6 @@ var URL_SEARCH_PARAMS_ITERATOR = URL_SEARCH_PARAMS + 'Iterator';
36
37
  var setInternalState = InternalStateModule.set;
37
38
  var getInternalParamsState = InternalStateModule.getterFor(URL_SEARCH_PARAMS);
38
39
  var getInternalIteratorState = InternalStateModule.getterFor(URL_SEARCH_PARAMS_ITERATOR);
39
- // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
40
- var getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
41
-
42
- // Avoid NodeJS experimental warning
43
- var safeGetBuiltIn = function (name) {
44
- if (!DESCRIPTORS) return global[name];
45
- var descriptor = getOwnPropertyDescriptor(global, name);
46
- return descriptor && descriptor.value;
47
- };
48
40
 
49
41
  var nativeFetch = safeGetBuiltIn('fetch');
50
42
  var NativeRequest = safeGetBuiltIn('Request');
@@ -13,7 +13,7 @@ var anInstance = require('../internals/an-instance');
13
13
  var hasOwn = require('../internals/has-own-property');
14
14
  var assign = require('../internals/object-assign');
15
15
  var arrayFrom = require('../internals/array-from');
16
- var arraySlice = require('../internals/array-slice-simple');
16
+ var arraySlice = require('../internals/array-slice');
17
17
  var codeAt = require('../internals/string-multibyte').codeAt;
18
18
  var toASCII = require('../internals/string-punycode-to-ascii');
19
19
  var $toString = require('../internals/to-string');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "core-js",
3
- "version": "3.33.3",
3
+ "version": "3.35.0",
4
4
  "type": "commonjs",
5
5
  "description": "Standard library",
6
6
  "keywords": [
@@ -0,0 +1,6 @@
1
+ 'use strict';
2
+ // https://github.com/tc39/proposal-arraybuffer-base64
3
+ require('../modules/esnext.uint8-array.from-base64');
4
+ require('../modules/esnext.uint8-array.from-hex');
5
+ require('../modules/esnext.uint8-array.to-base64');
6
+ require('../modules/esnext.uint8-array.to-hex');
package/stable/index.js CHANGED
@@ -76,6 +76,7 @@ require('../modules/es.global-this');
76
76
  require('../modules/es.json.stringify');
77
77
  require('../modules/es.json.to-string-tag');
78
78
  require('../modules/es.map');
79
+ require('../modules/es.map.group-by');
79
80
  require('../modules/es.math.acosh');
80
81
  require('../modules/es.math.asinh');
81
82
  require('../modules/es.math.atanh');
@@ -120,6 +121,7 @@ require('../modules/es.object.get-own-property-descriptor');
120
121
  require('../modules/es.object.get-own-property-descriptors');
121
122
  require('../modules/es.object.get-own-property-names');
122
123
  require('../modules/es.object.get-prototype-of');
124
+ require('../modules/es.object.group-by');
123
125
  require('../modules/es.object.has-own');
124
126
  require('../modules/es.object.is');
125
127
  require('../modules/es.object.is-extensible');
@@ -140,6 +142,7 @@ require('../modules/es.promise');
140
142
  require('../modules/es.promise.all-settled');
141
143
  require('../modules/es.promise.any');
142
144
  require('../modules/es.promise.finally');
145
+ require('../modules/es.promise.with-resolvers');
143
146
  require('../modules/es.reflect.apply');
144
147
  require('../modules/es.reflect.construct');
145
148
  require('../modules/es.reflect.define-property');
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+ var parent = require('../../es/map/group-by');
3
+
4
+ module.exports = parent;
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+ var parent = require('../../es/object/group-by');
3
+
4
+ module.exports = parent;
@@ -0,0 +1,4 @@
1
+ 'use strict';
2
+ var parent = require('../../es/promise/with-resolvers');
3
+
4
+ module.exports = parent;
package/stage/2.js CHANGED
@@ -1,6 +1,7 @@
1
1
  'use strict';
2
2
  var parent = require('./3');
3
3
 
4
+ require('../proposals/array-buffer-base64');
4
5
  require('../proposals/array-is-template-object');
5
6
  require('../proposals/async-iterator-helpers');
6
7
  require('../proposals/iterator-range');
package/stage/3.js CHANGED
@@ -3,13 +3,11 @@ var parent = require('./4');
3
3
 
4
4
  require('../proposals/array-buffer-transfer');
5
5
  require('../proposals/array-from-async-stage-2');
6
- require('../proposals/array-grouping-v2');
7
6
  require('../proposals/decorator-metadata-v2');
8
7
  require('../proposals/explicit-resource-management');
9
8
  require('../proposals/float16');
10
9
  require('../proposals/iterator-helpers-stage-3-2');
11
10
  require('../proposals/json-parse-with-source');
12
- require('../proposals/promise-with-resolvers');
13
11
  require('../proposals/set-methods-v2');
14
12
  // TODO: Obsolete versions, remove from `core-js@4`
15
13
  require('../proposals/array-grouping-stage-3');
package/stage/4.js CHANGED
@@ -2,11 +2,13 @@
2
2
  // TODO: Remove this entry from `core-js@4`
3
3
  require('../proposals/accessible-object-hasownproperty');
4
4
  require('../proposals/array-find-from-last');
5
+ require('../proposals/array-grouping-v2');
5
6
  require('../proposals/change-array-by-copy-stage-4');
6
7
  // require('../proposals/error-cause');
7
8
  require('../proposals/global-this');
8
9
  require('../proposals/promise-all-settled');
9
10
  require('../proposals/promise-any');
11
+ require('../proposals/promise-with-resolvers');
10
12
  require('../proposals/relative-indexing-method');
11
13
  require('../proposals/string-match-all');
12
14
  require('../proposals/string-replace-all-stage-4');
@@ -1,18 +0,0 @@
1
- 'use strict';
2
- var toAbsoluteIndex = require('../internals/to-absolute-index');
3
- var lengthOfArrayLike = require('../internals/length-of-array-like');
4
- var createProperty = require('../internals/create-property');
5
-
6
- var $Array = Array;
7
- var max = Math.max;
8
-
9
- module.exports = function (O, start, end) {
10
- var length = lengthOfArrayLike(O);
11
- var k = toAbsoluteIndex(start, length);
12
- var fin = toAbsoluteIndex(end === undefined ? length : end, length);
13
- var result = $Array(max(fin - k, 0));
14
- var n = 0;
15
- for (; k < fin; k++, n++) createProperty(result, n, O[k]);
16
- result.length = n;
17
- return result;
18
- };
@@ -1,11 +0,0 @@
1
- 'use strict';
2
- var documentAll = typeof document == 'object' && document.all;
3
-
4
- // https://tc39.es/ecma262/#sec-IsHTMLDDA-internal-slot
5
- // eslint-disable-next-line unicorn/no-typeof-undefined -- required for testing
6
- var IS_HTMLDDA = typeof documentAll == 'undefined' && documentAll !== undefined;
7
-
8
- module.exports = {
9
- all: documentAll,
10
- IS_HTMLDDA: IS_HTMLDDA
11
- };