core-js 3.20.2 → 3.21.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 (151) hide show
  1. package/actual/atob.js +3 -0
  2. package/actual/btoa.js +3 -0
  3. package/features/atob.js +3 -0
  4. package/features/btoa.js +3 -0
  5. package/features/index.js +2 -0
  6. package/internals/base64-map.js +9 -0
  7. package/internals/function-apply.js +3 -2
  8. package/internals/function-bind-context.js +2 -1
  9. package/internals/function-bind-native.js +7 -0
  10. package/internals/function-bind.js +2 -1
  11. package/internals/function-call.js +3 -1
  12. package/internals/function-uncurry-this.js +4 -2
  13. package/internals/ie8-dom-define.js +1 -1
  14. package/internals/shared.js +4 -2
  15. package/internals/task.js +5 -2
  16. package/internals/validate-arguments-length.js +8 -0
  17. package/modules/es.function.bind.js +1 -1
  18. package/modules/esnext.array.filter-out.js +1 -1
  19. package/modules/esnext.array.filter-reject.js +1 -1
  20. package/modules/esnext.array.from-async.js +1 -1
  21. package/modules/esnext.array.is-template-object.js +1 -1
  22. package/modules/esnext.array.last-index.js +1 -1
  23. package/modules/esnext.array.last-item.js +1 -1
  24. package/modules/esnext.array.to-reversed.js +1 -1
  25. package/modules/esnext.array.to-sorted.js +1 -1
  26. package/modules/esnext.array.to-spliced.js +1 -1
  27. package/modules/esnext.array.unique-by.js +1 -1
  28. package/modules/esnext.array.with.js +1 -1
  29. package/modules/esnext.async-iterator.as-indexed-pairs.js +1 -1
  30. package/modules/esnext.async-iterator.drop.js +1 -1
  31. package/modules/esnext.async-iterator.every.js +1 -1
  32. package/modules/esnext.async-iterator.filter.js +1 -1
  33. package/modules/esnext.async-iterator.find.js +1 -1
  34. package/modules/esnext.async-iterator.flat-map.js +1 -1
  35. package/modules/esnext.async-iterator.for-each.js +1 -1
  36. package/modules/esnext.async-iterator.from.js +1 -1
  37. package/modules/esnext.async-iterator.map.js +1 -1
  38. package/modules/esnext.async-iterator.reduce.js +1 -1
  39. package/modules/esnext.async-iterator.some.js +1 -1
  40. package/modules/esnext.async-iterator.take.js +1 -1
  41. package/modules/esnext.async-iterator.to-array.js +1 -1
  42. package/modules/esnext.bigint.range.js +1 -1
  43. package/modules/esnext.composite-key.js +1 -1
  44. package/modules/esnext.composite-symbol.js +1 -1
  45. package/modules/esnext.function.is-callable.js +1 -1
  46. package/modules/esnext.function.is-constructor.js +1 -1
  47. package/modules/esnext.function.un-this.js +1 -1
  48. package/modules/esnext.iterator.as-indexed-pairs.js +1 -1
  49. package/modules/esnext.iterator.drop.js +1 -1
  50. package/modules/esnext.iterator.every.js +1 -1
  51. package/modules/esnext.iterator.filter.js +1 -1
  52. package/modules/esnext.iterator.find.js +1 -1
  53. package/modules/esnext.iterator.flat-map.js +1 -1
  54. package/modules/esnext.iterator.for-each.js +1 -1
  55. package/modules/esnext.iterator.from.js +1 -1
  56. package/modules/esnext.iterator.map.js +1 -1
  57. package/modules/esnext.iterator.reduce.js +1 -1
  58. package/modules/esnext.iterator.some.js +1 -1
  59. package/modules/esnext.iterator.take.js +1 -1
  60. package/modules/esnext.iterator.to-array.js +1 -1
  61. package/modules/esnext.iterator.to-async.js +1 -1
  62. package/modules/esnext.map.delete-all.js +1 -2
  63. package/modules/esnext.map.emplace.js +1 -2
  64. package/modules/esnext.map.every.js +1 -2
  65. package/modules/esnext.map.filter.js +1 -2
  66. package/modules/esnext.map.find-key.js +1 -2
  67. package/modules/esnext.map.find.js +1 -2
  68. package/modules/esnext.map.from.js +1 -1
  69. package/modules/esnext.map.group-by.js +1 -1
  70. package/modules/esnext.map.includes.js +1 -2
  71. package/modules/esnext.map.key-by.js +1 -1
  72. package/modules/esnext.map.key-of.js +1 -2
  73. package/modules/esnext.map.map-keys.js +1 -2
  74. package/modules/esnext.map.map-values.js +1 -2
  75. package/modules/esnext.map.merge.js +1 -2
  76. package/modules/esnext.map.of.js +1 -1
  77. package/modules/esnext.map.reduce.js +1 -2
  78. package/modules/esnext.map.some.js +1 -2
  79. package/modules/esnext.map.update-or-insert.js +1 -2
  80. package/modules/esnext.map.update.js +1 -2
  81. package/modules/esnext.map.upsert.js +1 -2
  82. package/modules/esnext.math.clamp.js +1 -1
  83. package/modules/esnext.math.deg-per-rad.js +1 -1
  84. package/modules/esnext.math.degrees.js +1 -1
  85. package/modules/esnext.math.fscale.js +1 -1
  86. package/modules/esnext.math.iaddh.js +1 -1
  87. package/modules/esnext.math.imulh.js +1 -1
  88. package/modules/esnext.math.isubh.js +1 -1
  89. package/modules/esnext.math.rad-per-deg.js +1 -1
  90. package/modules/esnext.math.radians.js +1 -1
  91. package/modules/esnext.math.scale.js +1 -1
  92. package/modules/esnext.math.signbit.js +1 -1
  93. package/modules/esnext.math.umulh.js +1 -1
  94. package/modules/esnext.number.from-string.js +1 -1
  95. package/modules/esnext.number.range.js +1 -1
  96. package/modules/esnext.object.iterate-entries.js +1 -1
  97. package/modules/esnext.object.iterate-keys.js +1 -1
  98. package/modules/esnext.object.iterate-values.js +1 -1
  99. package/modules/esnext.observable.js +9 -1
  100. package/modules/esnext.promise.try.js +1 -1
  101. package/modules/esnext.set.add-all.js +1 -2
  102. package/modules/esnext.set.delete-all.js +1 -2
  103. package/modules/esnext.set.difference.js +1 -2
  104. package/modules/esnext.set.every.js +1 -2
  105. package/modules/esnext.set.filter.js +1 -2
  106. package/modules/esnext.set.find.js +1 -2
  107. package/modules/esnext.set.from.js +1 -1
  108. package/modules/esnext.set.intersection.js +1 -2
  109. package/modules/esnext.set.is-disjoint-from.js +1 -2
  110. package/modules/esnext.set.is-subset-of.js +1 -2
  111. package/modules/esnext.set.is-superset-of.js +1 -2
  112. package/modules/esnext.set.join.js +1 -2
  113. package/modules/esnext.set.map.js +1 -2
  114. package/modules/esnext.set.of.js +1 -1
  115. package/modules/esnext.set.reduce.js +1 -2
  116. package/modules/esnext.set.some.js +1 -2
  117. package/modules/esnext.set.symmetric-difference.js +1 -2
  118. package/modules/esnext.set.union.js +1 -2
  119. package/modules/esnext.string.at.js +1 -6
  120. package/modules/esnext.string.code-points.js +1 -1
  121. package/modules/esnext.string.cooked.js +1 -1
  122. package/modules/esnext.typed-array.filter-out.js +1 -1
  123. package/modules/esnext.typed-array.filter-reject.js +1 -1
  124. package/modules/esnext.typed-array.from-async.js +1 -2
  125. package/modules/esnext.typed-array.group-by.js +1 -1
  126. package/modules/esnext.typed-array.to-reversed.js +1 -1
  127. package/modules/esnext.typed-array.to-sorted.js +1 -1
  128. package/modules/esnext.typed-array.to-spliced.js +1 -1
  129. package/modules/esnext.typed-array.unique-by.js +1 -1
  130. package/modules/esnext.typed-array.with.js +1 -1
  131. package/modules/esnext.weak-map.delete-all.js +1 -2
  132. package/modules/esnext.weak-map.emplace.js +1 -2
  133. package/modules/esnext.weak-map.from.js +1 -1
  134. package/modules/esnext.weak-map.of.js +1 -1
  135. package/modules/esnext.weak-map.upsert.js +1 -2
  136. package/modules/esnext.weak-set.add-all.js +1 -2
  137. package/modules/esnext.weak-set.delete-all.js +1 -2
  138. package/modules/esnext.weak-set.from.js +1 -1
  139. package/modules/esnext.weak-set.of.js +1 -1
  140. package/modules/web.atob.js +52 -0
  141. package/modules/web.btoa.js +37 -0
  142. package/modules/web.queue-microtask.js +4 -0
  143. package/modules/web.structured-clone.js +2 -1
  144. package/modules/web.timers.js +5 -3
  145. package/modules/web.url-search-params.js +1 -4
  146. package/modules/web.url.js +2 -1
  147. package/package.json +2 -2
  148. package/stable/atob.js +9 -0
  149. package/stable/btoa.js +9 -0
  150. package/stable/index.js +2 -0
  151. package/web/index.js +2 -0
package/actual/atob.js ADDED
@@ -0,0 +1,3 @@
1
+ var parent = require('../stable/atob');
2
+
3
+ module.exports = parent;
package/actual/btoa.js ADDED
@@ -0,0 +1,3 @@
1
+ var parent = require('../stable/btoa');
2
+
3
+ module.exports = parent;
@@ -0,0 +1,3 @@
1
+ var parent = require('../actual/atob');
2
+
3
+ module.exports = parent;
@@ -0,0 +1,3 @@
1
+ var parent = require('../actual/btoa');
2
+
3
+ module.exports = parent;
package/features/index.js CHANGED
@@ -380,6 +380,8 @@ require('../modules/esnext.weak-set.add-all');
380
380
  require('../modules/esnext.weak-set.delete-all');
381
381
  require('../modules/esnext.weak-set.from');
382
382
  require('../modules/esnext.weak-set.of');
383
+ require('../modules/web.atob');
384
+ require('../modules/web.btoa');
383
385
  require('../modules/web.dom-collections.for-each');
384
386
  require('../modules/web.dom-collections.iterator');
385
387
  require('../modules/web.dom-exception.constructor');
@@ -0,0 +1,9 @@
1
+ var itoc = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=';
2
+ var ctoi = {};
3
+
4
+ for (var index = 0; index < 66; index++) ctoi[itoc.charAt(index)] = index;
5
+
6
+ module.exports = {
7
+ itoc: itoc,
8
+ ctoi: ctoi
9
+ };
@@ -1,9 +1,10 @@
1
+ var NATIVE_BIND = require('../internals/function-bind-native');
2
+
1
3
  var FunctionPrototype = Function.prototype;
2
4
  var apply = FunctionPrototype.apply;
3
- var bind = FunctionPrototype.bind;
4
5
  var call = FunctionPrototype.call;
5
6
 
6
7
  // eslint-disable-next-line es/no-reflect -- safe
7
- module.exports = typeof Reflect == 'object' && Reflect.apply || (bind ? call.bind(apply) : function () {
8
+ module.exports = typeof Reflect == 'object' && Reflect.apply || (NATIVE_BIND ? call.bind(apply) : function () {
8
9
  return call.apply(apply, arguments);
9
10
  });
@@ -1,12 +1,13 @@
1
1
  var uncurryThis = require('../internals/function-uncurry-this');
2
2
  var aCallable = require('../internals/a-callable');
3
+ var NATIVE_BIND = require('../internals/function-bind-native');
3
4
 
4
5
  var bind = uncurryThis(uncurryThis.bind);
5
6
 
6
7
  // optional / simple context binding
7
8
  module.exports = function (fn, that) {
8
9
  aCallable(fn);
9
- return that === undefined ? fn : bind ? bind(fn, that) : function (/* ...args */) {
10
+ return that === undefined ? fn : NATIVE_BIND ? bind(fn, that) : function (/* ...args */) {
10
11
  return fn.apply(that, arguments);
11
12
  };
12
13
  };
@@ -0,0 +1,7 @@
1
+ var fails = require('../internals/fails');
2
+
3
+ module.exports = !fails(function () {
4
+ var test = (function () { /* empty */ }).bind();
5
+ // eslint-disable-next-line no-prototype-builtins -- safe
6
+ return typeof test != 'function' || test.hasOwnProperty('prototype');
7
+ });
@@ -5,6 +5,7 @@ var aCallable = require('../internals/a-callable');
5
5
  var isObject = require('../internals/is-object');
6
6
  var hasOwn = require('../internals/has-own-property');
7
7
  var arraySlice = require('../internals/array-slice');
8
+ var NATIVE_BIND = require('../internals/function-bind-native');
8
9
 
9
10
  var Function = global.Function;
10
11
  var concat = uncurryThis([].concat);
@@ -20,7 +21,7 @@ var construct = function (C, argsLength, args) {
20
21
 
21
22
  // `Function.prototype.bind` method implementation
22
23
  // https://tc39.es/ecma262/#sec-function.prototype.bind
23
- module.exports = Function.bind || function bind(that /* , ...args */) {
24
+ module.exports = NATIVE_BIND ? Function.bind : function bind(that /* , ...args */) {
24
25
  var F = aCallable(this);
25
26
  var Prototype = F.prototype;
26
27
  var partArgs = arraySlice(arguments, 1);
@@ -1,5 +1,7 @@
1
+ var NATIVE_BIND = require('../internals/function-bind-native');
2
+
1
3
  var call = Function.prototype.call;
2
4
 
3
- module.exports = call.bind ? call.bind(call) : function () {
5
+ module.exports = NATIVE_BIND ? call.bind(call) : function () {
4
6
  return call.apply(call, arguments);
5
7
  };
@@ -1,9 +1,11 @@
1
+ var NATIVE_BIND = require('../internals/function-bind-native');
2
+
1
3
  var FunctionPrototype = Function.prototype;
2
4
  var bind = FunctionPrototype.bind;
3
5
  var call = FunctionPrototype.call;
4
- var uncurryThis = bind && bind.bind(call, call);
6
+ var uncurryThis = NATIVE_BIND && bind.bind(call, call);
5
7
 
6
- module.exports = bind ? function (fn) {
8
+ module.exports = NATIVE_BIND ? function (fn) {
7
9
  return fn && uncurryThis(fn);
8
10
  } : function (fn) {
9
11
  return fn && function () {
@@ -2,7 +2,7 @@ var DESCRIPTORS = require('../internals/descriptors');
2
2
  var fails = require('../internals/fails');
3
3
  var createElement = require('../internals/document-create-element');
4
4
 
5
- // Thank's IE8 for his funny defineProperty
5
+ // Thanks to IE8 for its funny defineProperty
6
6
  module.exports = !DESCRIPTORS && !fails(function () {
7
7
  // eslint-disable-next-line es/no-object-defineproperty -- required for testing
8
8
  return Object.defineProperty(createElement('div'), 'a', {
@@ -4,7 +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.20.2',
7
+ version: '3.21.0',
8
8
  mode: IS_PURE ? 'pure' : 'global',
9
- copyright: '© 2022 Denis Pushkarev (zloirock.ru)'
9
+ copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',
10
+ license: 'https://github.com/zloirock/core-js/blob/v3.21.0/LICENSE',
11
+ source: 'https://github.com/zloirock/core-js'
10
12
  });
package/internals/task.js CHANGED
@@ -7,6 +7,7 @@ var fails = require('../internals/fails');
7
7
  var html = require('../internals/html');
8
8
  var arraySlice = require('../internals/array-slice');
9
9
  var createElement = require('../internals/document-create-element');
10
+ var validateArgumentsLength = require('../internals/validate-arguments-length');
10
11
  var IS_IOS = require('../internals/engine-is-ios');
11
12
  var IS_NODE = require('../internals/engine-is-node');
12
13
 
@@ -52,10 +53,12 @@ var post = function (id) {
52
53
 
53
54
  // Node.js 0.9+ & IE10+ has setImmediate, otherwise:
54
55
  if (!set || !clear) {
55
- set = function setImmediate(fn) {
56
+ set = function setImmediate(handler) {
57
+ validateArgumentsLength(arguments.length, 1);
58
+ var fn = isCallable(handler) ? handler : Function(handler);
56
59
  var args = arraySlice(arguments, 1);
57
60
  queue[++counter] = function () {
58
- apply(isCallable(fn) ? fn : Function(fn), undefined, args);
61
+ apply(fn, undefined, args);
59
62
  };
60
63
  defer(counter);
61
64
  return counter;
@@ -0,0 +1,8 @@
1
+ var global = require('../internals/global');
2
+
3
+ var TypeError = global.TypeError;
4
+
5
+ module.exports = function (passed, required) {
6
+ if (passed < required) throw TypeError('Not enough arguments');
7
+ return passed;
8
+ };
@@ -3,6 +3,6 @@ var bind = require('../internals/function-bind');
3
3
 
4
4
  // `Function.prototype.bind` method
5
5
  // https://tc39.es/ecma262/#sec-function.prototype.bind
6
- $({ target: 'Function', proto: true }, {
6
+ $({ target: 'Function', proto: true, forced: Function.bind !== bind }, {
7
7
  bind: bind
8
8
  });
@@ -6,7 +6,7 @@ var addToUnscopables = require('../internals/add-to-unscopables');
6
6
 
7
7
  // `Array.prototype.filterOut` method
8
8
  // https://github.com/tc39/proposal-array-filtering
9
- $({ target: 'Array', proto: true }, {
9
+ $({ target: 'Array', proto: true, forced: true }, {
10
10
  filterOut: function filterOut(callbackfn /* , thisArg */) {
11
11
  return $filterReject(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
12
12
  }
@@ -5,7 +5,7 @@ var addToUnscopables = require('../internals/add-to-unscopables');
5
5
 
6
6
  // `Array.prototype.filterReject` method
7
7
  // https://github.com/tc39/proposal-array-filtering
8
- $({ target: 'Array', proto: true }, {
8
+ $({ target: 'Array', proto: true, forced: true }, {
9
9
  filterReject: function filterReject(callbackfn /* , thisArg */) {
10
10
  return $filterReject(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
11
11
  }
@@ -3,6 +3,6 @@ var fromAsync = require('../internals/array-from-async');
3
3
 
4
4
  // `Array.fromAsync` method
5
5
  // https://github.com/tc39/proposal-array-from-async
6
- $({ target: 'Array', stat: true }, {
6
+ $({ target: 'Array', stat: true, forced: true }, {
7
7
  fromAsync: fromAsync
8
8
  });
@@ -19,7 +19,7 @@ var isFrozenStringArray = function (array, allowUndefined) {
19
19
 
20
20
  // `Array.isTemplateObject` method
21
21
  // https://github.com/tc39/proposal-array-is-template-object
22
- $({ target: 'Array', stat: true }, {
22
+ $({ target: 'Array', stat: true, sham: true, forced: true }, {
23
23
  isTemplateObject: function isTemplateObject(value) {
24
24
  if (!isFrozenStringArray(value, true)) return false;
25
25
  var raw = value.raw;
@@ -7,7 +7,7 @@ var defineProperty = require('../internals/object-define-property').f;
7
7
 
8
8
  // `Array.prototype.lastIndex` getter
9
9
  // https://github.com/keithamus/proposal-array-last
10
- if (DESCRIPTORS && !('lastIndex' in [])) {
10
+ if (DESCRIPTORS) {
11
11
  defineProperty(Array.prototype, 'lastIndex', {
12
12
  configurable: true,
13
13
  get: function lastIndex() {
@@ -7,7 +7,7 @@ var defineProperty = require('../internals/object-define-property').f;
7
7
 
8
8
  // `Array.prototype.lastIndex` accessor
9
9
  // https://github.com/keithamus/proposal-array-last
10
- if (DESCRIPTORS && !('lastItem' in [])) {
10
+ if (DESCRIPTORS) {
11
11
  defineProperty(Array.prototype, 'lastItem', {
12
12
  configurable: true,
13
13
  get: function lastItem() {
@@ -9,7 +9,7 @@ var Array = global.Array;
9
9
 
10
10
  // `Array.prototype.toReversed` method
11
11
  // https://tc39.es/proposal-change-array-by-copy/#sec-array.prototype.toReversed
12
- $({ target: 'Array', proto: true }, {
12
+ $({ target: 'Array', proto: true, forced: true }, {
13
13
  toReversed: function toReversed() {
14
14
  return arrayToReversed(toIndexedObject(this), Array);
15
15
  }
@@ -13,7 +13,7 @@ var sort = uncurryThis(getVirtual('Array').sort);
13
13
 
14
14
  // `Array.prototype.toSorted` method
15
15
  // https://tc39.es/proposal-change-array-by-copy/#sec-array.prototype.toSorted
16
- $({ target: 'Array', proto: true }, {
16
+ $({ target: 'Array', proto: true, forced: true }, {
17
17
  toSorted: function toSorted(compareFn) {
18
18
  if (compareFn !== undefined) aCallable(compareFn);
19
19
  var O = toIndexedObject(this);
@@ -10,7 +10,7 @@ var Array = global.Array;
10
10
 
11
11
  // `Array.prototype.toSpliced` method
12
12
  // https://tc39.es/proposal-change-array-by-copy/#sec-array.prototype.toSpliced
13
- $({ target: 'Array', proto: true }, {
13
+ $({ target: 'Array', proto: true, forced: true }, {
14
14
  // eslint-disable-next-line no-unused-vars -- required for .length
15
15
  toSpliced: function toSpliced(start, deleteCount /* , ...items */) {
16
16
  return arrayToSpliced(toIndexedObject(this), Array, arraySlice(arguments));
@@ -5,7 +5,7 @@ var uniqueBy = require('../internals/array-unique-by');
5
5
 
6
6
  // `Array.prototype.uniqueBy` method
7
7
  // https://github.com/tc39/proposal-array-unique
8
- $({ target: 'Array', proto: true }, {
8
+ $({ target: 'Array', proto: true, forced: true }, {
9
9
  uniqueBy: uniqueBy
10
10
  });
11
11
 
@@ -8,7 +8,7 @@ var Array = global.Array;
8
8
 
9
9
  // `Array.prototype.with` method
10
10
  // https://tc39.es/proposal-change-array-by-copy/#sec-array.prototype.with
11
- $({ target: 'Array', proto: true }, {
11
+ $({ target: 'Array', proto: true, forced: true }, {
12
12
  'with': function (index, value) {
13
13
  return arrayWith(toIndexedObject(this), Array, index, value);
14
14
  }
@@ -18,7 +18,7 @@ var AsyncIteratorProxy = createAsyncIteratorProxy(function (Promise, args) {
18
18
  });
19
19
  });
20
20
 
21
- $({ target: 'AsyncIterator', proto: true, real: true }, {
21
+ $({ target: 'AsyncIterator', proto: true, real: true, forced: true }, {
22
22
  asIndexedPairs: function asIndexedPairs() {
23
23
  return new AsyncIteratorProxy({
24
24
  iterator: anObject(this),
@@ -32,7 +32,7 @@ var AsyncIteratorProxy = createAsyncIteratorProxy(function (Promise, args) {
32
32
  });
33
33
  });
34
34
 
35
- $({ target: 'AsyncIterator', proto: true, real: true }, {
35
+ $({ target: 'AsyncIterator', proto: true, real: true, forced: true }, {
36
36
  drop: function drop(limit) {
37
37
  return new AsyncIteratorProxy({
38
38
  iterator: anObject(this),
@@ -3,7 +3,7 @@
3
3
  var $ = require('../internals/export');
4
4
  var $every = require('../internals/async-iterator-iteration').every;
5
5
 
6
- $({ target: 'AsyncIterator', proto: true, real: true }, {
6
+ $({ target: 'AsyncIterator', proto: true, real: true, forced: true }, {
7
7
  every: function every(fn) {
8
8
  return $every(this, fn);
9
9
  }
@@ -33,7 +33,7 @@ var AsyncIteratorProxy = createAsyncIteratorProxy(function (Promise, args) {
33
33
  });
34
34
  });
35
35
 
36
- $({ target: 'AsyncIterator', proto: true, real: true }, {
36
+ $({ target: 'AsyncIterator', proto: true, real: true, forced: true }, {
37
37
  filter: function filter(filterer) {
38
38
  return new AsyncIteratorProxy({
39
39
  iterator: anObject(this),
@@ -3,7 +3,7 @@
3
3
  var $ = require('../internals/export');
4
4
  var $find = require('../internals/async-iterator-iteration').find;
5
5
 
6
- $({ target: 'AsyncIterator', proto: true, real: true }, {
6
+ $({ target: 'AsyncIterator', proto: true, real: true, forced: true }, {
7
7
  find: function find(fn) {
8
8
  return $find(this, fn);
9
9
  }
@@ -53,7 +53,7 @@ var AsyncIteratorProxy = createAsyncIteratorProxy(function (Promise) {
53
53
  });
54
54
  });
55
55
 
56
- $({ target: 'AsyncIterator', proto: true, real: true }, {
56
+ $({ target: 'AsyncIterator', proto: true, real: true, forced: true }, {
57
57
  flatMap: function flatMap(mapper) {
58
58
  return new AsyncIteratorProxy({
59
59
  iterator: anObject(this),
@@ -3,7 +3,7 @@
3
3
  var $ = require('../internals/export');
4
4
  var $forEach = require('../internals/async-iterator-iteration').forEach;
5
5
 
6
- $({ target: 'AsyncIterator', proto: true, real: true }, {
6
+ $({ target: 'AsyncIterator', proto: true, real: true, forced: true }, {
7
7
  forEach: function forEach(fn) {
8
8
  return $forEach(this, fn);
9
9
  }
@@ -19,7 +19,7 @@ var AsyncIteratorProxy = createAsyncIteratorProxy(function (Promise, args) {
19
19
  return anObject(apply(this.next, this.iterator, args));
20
20
  }, true);
21
21
 
22
- $({ target: 'AsyncIterator', stat: true }, {
22
+ $({ target: 'AsyncIterator', stat: true, forced: true }, {
23
23
  from: function from(O) {
24
24
  var object = toObject(O);
25
25
  var usingIterator = getMethod(object, ASYNC_ITERATOR);
@@ -21,7 +21,7 @@ var AsyncIteratorProxy = createAsyncIteratorProxy(function (Promise, args) {
21
21
  });
22
22
  });
23
23
 
24
- $({ target: 'AsyncIterator', proto: true, real: true }, {
24
+ $({ target: 'AsyncIterator', proto: true, real: true, forced: true }, {
25
25
  map: function map(mapper) {
26
26
  return new AsyncIteratorProxy({
27
27
  iterator: anObject(this),
@@ -10,7 +10,7 @@ var getBuiltIn = require('../internals/get-built-in');
10
10
  var Promise = getBuiltIn('Promise');
11
11
  var TypeError = global.TypeError;
12
12
 
13
- $({ target: 'AsyncIterator', proto: true, real: true }, {
13
+ $({ target: 'AsyncIterator', proto: true, real: true, forced: true }, {
14
14
  reduce: function reduce(reducer /* , initialValue */) {
15
15
  var iterator = anObject(this);
16
16
  var next = aCallable(iterator.next);
@@ -3,7 +3,7 @@
3
3
  var $ = require('../internals/export');
4
4
  var $some = require('../internals/async-iterator-iteration').some;
5
5
 
6
- $({ target: 'AsyncIterator', proto: true, real: true }, {
6
+ $({ target: 'AsyncIterator', proto: true, real: true, forced: true }, {
7
7
  some: function some(fn) {
8
8
  return $some(this, fn);
9
9
  }
@@ -23,7 +23,7 @@ var AsyncIteratorProxy = createAsyncIteratorProxy(function (Promise, args) {
23
23
  } return apply(this.next, iterator, args);
24
24
  });
25
25
 
26
- $({ target: 'AsyncIterator', proto: true, real: true }, {
26
+ $({ target: 'AsyncIterator', proto: true, real: true, forced: true }, {
27
27
  take: function take(limit) {
28
28
  return new AsyncIteratorProxy({
29
29
  iterator: anObject(this),
@@ -3,7 +3,7 @@
3
3
  var $ = require('../internals/export');
4
4
  var $toArray = require('../internals/async-iterator-iteration').toArray;
5
5
 
6
- $({ target: 'AsyncIterator', proto: true, real: true }, {
6
+ $({ target: 'AsyncIterator', proto: true, real: true, forced: true }, {
7
7
  toArray: function toArray() {
8
8
  return $toArray(this, undefined, []);
9
9
  }
@@ -6,7 +6,7 @@ var NumericRangeIterator = require('../internals/numeric-range-iterator');
6
6
  // `BigInt.range` method
7
7
  // https://github.com/tc39/proposal-Number.range
8
8
  if (typeof BigInt == 'function') {
9
- $({ target: 'BigInt', stat: true }, {
9
+ $({ target: 'BigInt', stat: true, forced: true }, {
10
10
  range: function range(start, end, option) {
11
11
  return new NumericRangeIterator(start, end, option, 'bigint', BigInt(0), BigInt(1));
12
12
  }
@@ -13,7 +13,7 @@ var initializer = function () {
13
13
  };
14
14
 
15
15
  // https://github.com/tc39/proposal-richer-keys/tree/master/compositeKey
16
- $({ global: true }, {
16
+ $({ global: true, forced: true }, {
17
17
  compositeKey: function compositeKey() {
18
18
  return apply(getCompositeKeyNode, Object, arguments).get('object', initializer);
19
19
  }
@@ -4,7 +4,7 @@ var getBuiltIn = require('../internals/get-built-in');
4
4
  var apply = require('../internals/function-apply');
5
5
 
6
6
  // https://github.com/tc39/proposal-richer-keys/tree/master/compositeKey
7
- $({ global: true }, {
7
+ $({ global: true, forced: true }, {
8
8
  compositeSymbol: function compositeSymbol() {
9
9
  if (arguments.length == 1 && typeof arguments[0] == 'string') return getBuiltIn('Symbol')['for'](arguments[0]);
10
10
  return apply(getCompositeKeyNode, null, arguments).get('symbol', getBuiltIn('Symbol'));
@@ -22,7 +22,7 @@ var isClassConstructor = function (argument) {
22
22
 
23
23
  // `Function.isCallable` method
24
24
  // https://github.com/caitp/TC39-Proposals/blob/trunk/tc39-reflect-isconstructor-iscallable.md
25
- $({ target: 'Function', stat: true, sham: true }, {
25
+ $({ target: 'Function', stat: true, sham: true, forced: true }, {
26
26
  isCallable: function isCallable(argument) {
27
27
  return $isCallable(argument) && !isClassConstructor(argument);
28
28
  }
@@ -3,6 +3,6 @@ var isConstructor = require('../internals/is-constructor');
3
3
 
4
4
  // `Function.isConstructor` method
5
5
  // https://github.com/caitp/TC39-Proposals/blob/trunk/tc39-reflect-isconstructor-iscallable.md
6
- $({ target: 'Function', stat: true }, {
6
+ $({ target: 'Function', stat: true, forced: true }, {
7
7
  isConstructor: isConstructor
8
8
  });
@@ -4,7 +4,7 @@ var aCallable = require('../internals/a-callable');
4
4
 
5
5
  // `Function.prototype.unThis` method
6
6
  // https://github.com/js-choi/proposal-function-un-this
7
- $({ target: 'Function', proto: true }, {
7
+ $({ target: 'Function', proto: true, forced: true }, {
8
8
  unThis: function unThis() {
9
9
  return uncurryThis(aCallable(this));
10
10
  }
@@ -11,7 +11,7 @@ var IteratorProxy = createIteratorProxy(function (args) {
11
11
  if (!done) return [this.index++, result.value];
12
12
  });
13
13
 
14
- $({ target: 'Iterator', proto: true, real: true }, {
14
+ $({ target: 'Iterator', proto: true, real: true, forced: true }, {
15
15
  asIndexedPairs: function asIndexedPairs() {
16
16
  return new IteratorProxy({
17
17
  iterator: anObject(this),
@@ -22,7 +22,7 @@ var IteratorProxy = createIteratorProxy(function (args) {
22
22
  if (!done) return result.value;
23
23
  });
24
24
 
25
- $({ target: 'Iterator', proto: true, real: true }, {
25
+ $({ target: 'Iterator', proto: true, real: true, forced: true }, {
26
26
  drop: function drop(limit) {
27
27
  return new IteratorProxy({
28
28
  iterator: anObject(this),
@@ -5,7 +5,7 @@ var iterate = require('../internals/iterate');
5
5
  var aCallable = require('../internals/a-callable');
6
6
  var anObject = require('../internals/an-object');
7
7
 
8
- $({ target: 'Iterator', proto: true, real: true }, {
8
+ $({ target: 'Iterator', proto: true, real: true, forced: true }, {
9
9
  every: function every(fn) {
10
10
  anObject(this);
11
11
  aCallable(fn);
@@ -21,7 +21,7 @@ var IteratorProxy = createIteratorProxy(function (args) {
21
21
  }
22
22
  });
23
23
 
24
- $({ target: 'Iterator', proto: true, real: true }, {
24
+ $({ target: 'Iterator', proto: true, real: true, forced: true }, {
25
25
  filter: function filter(filterer) {
26
26
  return new IteratorProxy({
27
27
  iterator: anObject(this),
@@ -5,7 +5,7 @@ var iterate = require('../internals/iterate');
5
5
  var aCallable = require('../internals/a-callable');
6
6
  var anObject = require('../internals/an-object');
7
7
 
8
- $({ target: 'Iterator', proto: true, real: true }, {
8
+ $({ target: 'Iterator', proto: true, real: true, forced: true }, {
9
9
  find: function find(fn) {
10
10
  anObject(this);
11
11
  aCallable(fn);
@@ -43,7 +43,7 @@ var IteratorProxy = createIteratorProxy(function () {
43
43
  }
44
44
  });
45
45
 
46
- $({ target: 'Iterator', proto: true, real: true }, {
46
+ $({ target: 'Iterator', proto: true, real: true, forced: true }, {
47
47
  flatMap: function flatMap(mapper) {
48
48
  return new IteratorProxy({
49
49
  iterator: anObject(this),
@@ -4,7 +4,7 @@ var $ = require('../internals/export');
4
4
  var iterate = require('../internals/iterate');
5
5
  var anObject = require('../internals/an-object');
6
6
 
7
- $({ target: 'Iterator', proto: true, real: true }, {
7
+ $({ target: 'Iterator', proto: true, real: true, forced: true }, {
8
8
  forEach: function forEach(fn) {
9
9
  iterate(anObject(this), fn, { IS_ITERATOR: true });
10
10
  }
@@ -15,7 +15,7 @@ var IteratorProxy = createIteratorProxy(function (args) {
15
15
  if (!done) return result.value;
16
16
  }, true);
17
17
 
18
- $({ target: 'Iterator', stat: true }, {
18
+ $({ target: 'Iterator', stat: true, forced: true }, {
19
19
  from: function from(O) {
20
20
  var object = toObject(O);
21
21
  var usingIterator = getIteratorMethod(object);
@@ -14,7 +14,7 @@ var IteratorProxy = createIteratorProxy(function (args) {
14
14
  if (!done) return callWithSafeIterationClosing(iterator, this.mapper, result.value);
15
15
  });
16
16
 
17
- $({ target: 'Iterator', proto: true, real: true }, {
17
+ $({ target: 'Iterator', proto: true, real: true, forced: true }, {
18
18
  map: function map(mapper) {
19
19
  return new IteratorProxy({
20
20
  iterator: anObject(this),
@@ -8,7 +8,7 @@ var anObject = require('../internals/an-object');
8
8
 
9
9
  var TypeError = global.TypeError;
10
10
 
11
- $({ target: 'Iterator', proto: true, real: true }, {
11
+ $({ target: 'Iterator', proto: true, real: true, forced: true }, {
12
12
  reduce: function reduce(reducer /* , initialValue */) {
13
13
  anObject(this);
14
14
  aCallable(reducer);
@@ -5,7 +5,7 @@ var iterate = require('../internals/iterate');
5
5
  var aCallable = require('../internals/a-callable');
6
6
  var anObject = require('../internals/an-object');
7
7
 
8
- $({ target: 'Iterator', proto: true, real: true }, {
8
+ $({ target: 'Iterator', proto: true, real: true, forced: true }, {
9
9
  some: function some(fn) {
10
10
  anObject(this);
11
11
  aCallable(fn);
@@ -18,7 +18,7 @@ var IteratorProxy = createIteratorProxy(function (args) {
18
18
  if (!done) return result.value;
19
19
  });
20
20
 
21
- $({ target: 'Iterator', proto: true, real: true }, {
21
+ $({ target: 'Iterator', proto: true, real: true, forced: true }, {
22
22
  take: function take(limit) {
23
23
  return new IteratorProxy({
24
24
  iterator: anObject(this),