core-js 3.27.1 → 3.28.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 (231) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +55 -32
  3. package/actual/array/index.js +4 -3
  4. package/actual/array/to-reversed.js +3 -2
  5. package/actual/array/to-sorted.js +3 -3
  6. package/actual/array/to-spliced.js +3 -2
  7. package/actual/array/virtual/index.js +3 -2
  8. package/actual/array/virtual/to-reversed.js +3 -2
  9. package/actual/array/virtual/to-sorted.js +3 -3
  10. package/actual/array/virtual/to-spliced.js +3 -2
  11. package/actual/array/virtual/with.js +3 -2
  12. package/actual/array/with.js +3 -2
  13. package/actual/array-buffer/constructor.js +3 -0
  14. package/actual/array-buffer/detached.js +2 -0
  15. package/actual/array-buffer/index.js +3 -0
  16. package/actual/array-buffer/transfer-to-fixed-length.js +2 -0
  17. package/actual/array-buffer/transfer.js +2 -0
  18. package/actual/json/index.js +6 -0
  19. package/actual/json/is-raw-json.js +4 -0
  20. package/actual/json/parse.js +5 -0
  21. package/actual/json/raw-json.js +6 -0
  22. package/actual/typed-array/index.js +1 -1
  23. package/actual/typed-array/methods.js +1 -1
  24. package/actual/typed-array/to-reversed.js +4 -0
  25. package/actual/typed-array/to-sorted.js +4 -1
  26. package/actual/typed-array/with.js +4 -0
  27. package/es/array/index.js +4 -0
  28. package/es/array/to-reversed.js +4 -0
  29. package/es/array/to-sorted.js +5 -0
  30. package/es/array/to-spliced.js +4 -0
  31. package/es/array/virtual/index.js +4 -0
  32. package/es/array/virtual/to-reversed.js +4 -0
  33. package/es/array/virtual/to-sorted.js +5 -0
  34. package/es/array/virtual/to-spliced.js +4 -0
  35. package/es/array/virtual/with.js +4 -0
  36. package/es/array/with.js +4 -0
  37. package/es/index.js +7 -0
  38. package/es/instance/to-reversed.js +9 -0
  39. package/es/instance/to-sorted.js +9 -0
  40. package/es/instance/to-spliced.js +9 -0
  41. package/es/instance/with.js +9 -0
  42. package/es/typed-array/methods.js +3 -0
  43. package/es/typed-array/to-reversed.js +1 -0
  44. package/es/typed-array/to-sorted.js +2 -0
  45. package/es/typed-array/with.js +1 -0
  46. package/features/array-buffer/detached.js +1 -0
  47. package/features/array-buffer/transfer-to-fixed-length.js +1 -0
  48. package/features/array-buffer/transfer.js +1 -0
  49. package/features/function/demethodize.js +1 -0
  50. package/features/function/virtual/demethodize.js +1 -0
  51. package/features/instance/demethodize.js +1 -0
  52. package/features/iterator/range.js +1 -0
  53. package/features/json/is-raw-json.js +1 -0
  54. package/features/json/parse.js +1 -0
  55. package/features/json/raw-json.js +1 -0
  56. package/features/symbol/is-registered.js +1 -0
  57. package/features/symbol/is-well-known.js +1 -0
  58. package/full/array-buffer/detached.js +3 -0
  59. package/full/array-buffer/transfer-to-fixed-length.js +3 -0
  60. package/full/array-buffer/transfer.js +3 -0
  61. package/full/function/demethodize.js +4 -0
  62. package/full/function/index.js +2 -0
  63. package/full/function/virtual/demethodize.js +4 -0
  64. package/full/function/virtual/index.js +2 -0
  65. package/full/index.js +17 -0
  66. package/full/instance/demethodize.js +9 -0
  67. package/full/iterator/index.js +1 -0
  68. package/full/iterator/range.js +6 -0
  69. package/full/json/is-raw-json.js +3 -0
  70. package/full/json/parse.js +3 -0
  71. package/full/json/raw-json.js +3 -0
  72. package/full/symbol/index.js +2 -0
  73. package/full/symbol/is-registered.js +5 -0
  74. package/full/symbol/is-well-known.js +5 -0
  75. package/internals/{disposable-stack-helpers.js → add-disposable-resource.js} +5 -6
  76. package/internals/array-buffer-byte-length.js +12 -0
  77. package/internals/array-buffer-is-detached.js +14 -0
  78. package/internals/array-buffer-transfer.js +35 -0
  79. package/internals/array-buffer-view-core.js +7 -4
  80. package/internals/array-buffer.js +29 -16
  81. package/internals/async-iterator-create-proxy.js +37 -68
  82. package/internals/collection-strong.js +3 -2
  83. package/internals/collection-weak.js +2 -2
  84. package/internals/engine-is-ios-pebble.js +1 -2
  85. package/internals/engine-is-ios.js +1 -0
  86. package/internals/engine-is-node.js +1 -2
  87. package/internals/engine-user-agent.js +1 -3
  88. package/internals/error-stack-clear.js +1 -0
  89. package/internals/error-stack-install.js +13 -0
  90. package/internals/function-bind.js +1 -0
  91. package/internals/function-demethodize.js +7 -0
  92. package/internals/function-uncurry-this-accessor.js +9 -0
  93. package/internals/get-json-replacer-function.js +29 -0
  94. package/internals/get-set-record.js +2 -1
  95. package/internals/get-substitution.js +1 -0
  96. package/internals/host-report-errors.js +3 -5
  97. package/internals/is-big-int-array.js +2 -4
  98. package/internals/is-raw-json.js +8 -0
  99. package/internals/iterator-create-proxy.js +9 -18
  100. package/internals/make-built-in.js +8 -3
  101. package/internals/microtask.js +20 -25
  102. package/internals/native-raw-json.js +8 -0
  103. package/internals/numeric-range-iterator.js +2 -1
  104. package/internals/object-set-prototype-of.js +2 -3
  105. package/internals/parse-json-string.js +55 -0
  106. package/internals/queue.js +4 -3
  107. package/internals/set-is-disjoint-from.js +8 -8
  108. package/internals/set-is-superset-of.js +4 -2
  109. package/internals/set-size.js +2 -4
  110. package/internals/set-species.js +2 -3
  111. package/internals/shared.js +3 -3
  112. package/internals/string-cooked.js +3 -0
  113. package/internals/string-punycode-to-ascii.js +0 -1
  114. package/internals/string-trim.js +3 -4
  115. package/internals/structured-clone-proper-transfer.js +17 -0
  116. package/internals/task.js +8 -8
  117. package/internals/typed-array-constructor.js +8 -4
  118. package/internals/well-known-symbol.js +6 -12
  119. package/internals/wrap-error-constructor-with-cause.js +2 -3
  120. package/modules/es.aggregate-error.constructor.js +3 -5
  121. package/modules/es.array.concat.js +1 -3
  122. package/modules/es.array.includes.js +1 -0
  123. package/modules/es.array.index-of.js +2 -2
  124. package/modules/es.array.join.js +2 -2
  125. package/modules/es.array.push.js +5 -3
  126. package/modules/es.array.reduce-right.js +2 -2
  127. package/modules/es.array.reduce.js +2 -2
  128. package/modules/es.array.to-reversed.js +17 -0
  129. package/modules/es.array.to-sorted.js +24 -0
  130. package/modules/es.array.to-spliced.js +44 -0
  131. package/modules/es.array.unshift.js +5 -3
  132. package/modules/es.array.with.js +14 -0
  133. package/modules/es.date.get-year.js +2 -0
  134. package/modules/es.error.cause.js +1 -0
  135. package/modules/es.function.bind.js +1 -0
  136. package/modules/es.function.name.js +2 -2
  137. package/modules/es.json.stringify.js +7 -7
  138. package/modules/es.math.asinh.js +3 -1
  139. package/modules/es.math.atanh.js +3 -1
  140. package/modules/es.math.cosh.js +3 -1
  141. package/modules/es.math.hypot.js +2 -2
  142. package/modules/es.number.to-exponential.js +14 -11
  143. package/modules/es.object.get-own-property-descriptor.js +1 -2
  144. package/modules/es.object.is-frozen.js +3 -2
  145. package/modules/es.object.is-sealed.js +3 -2
  146. package/modules/es.promise.all-settled.js +2 -1
  147. package/modules/es.promise.any.js +2 -1
  148. package/modules/es.regexp.sticky.js +1 -1
  149. package/modules/es.string.raw.js +2 -1
  150. package/modules/es.string.substr.js +1 -1
  151. package/modules/es.symbol.constructor.js +2 -1
  152. package/modules/es.symbol.description.js +2 -2
  153. package/modules/es.typed-array.to-reversed.js +13 -0
  154. package/modules/es.typed-array.to-sorted.js +19 -0
  155. package/modules/es.typed-array.with.js +30 -0
  156. package/modules/esnext.array-buffer.detached.js +15 -0
  157. package/modules/esnext.array-buffer.transfer-to-fixed-length.js +11 -0
  158. package/modules/esnext.array-buffer.transfer.js +11 -0
  159. package/modules/esnext.array.to-reversed.js +2 -17
  160. package/modules/esnext.array.to-sorted.js +2 -24
  161. package/modules/esnext.array.to-spliced.js +2 -44
  162. package/modules/esnext.array.with.js +2 -14
  163. package/modules/esnext.async-disposable-stack.constructor.js +3 -11
  164. package/modules/esnext.async-iterator.constructor.js +1 -1
  165. package/modules/esnext.async-iterator.drop.js +1 -1
  166. package/modules/esnext.async-iterator.every.js +1 -1
  167. package/modules/esnext.async-iterator.filter.js +1 -1
  168. package/modules/esnext.async-iterator.find.js +1 -1
  169. package/modules/esnext.async-iterator.flat-map.js +1 -1
  170. package/modules/esnext.async-iterator.for-each.js +1 -1
  171. package/modules/esnext.async-iterator.from.js +1 -1
  172. package/modules/esnext.async-iterator.map.js +1 -1
  173. package/modules/esnext.async-iterator.reduce.js +1 -1
  174. package/modules/esnext.async-iterator.some.js +1 -1
  175. package/modules/esnext.async-iterator.take.js +1 -1
  176. package/modules/esnext.async-iterator.to-array.js +1 -1
  177. package/modules/esnext.bigint.range.js +1 -0
  178. package/modules/esnext.disposable-stack.constructor.js +3 -11
  179. package/modules/esnext.function.demethodize.js +8 -0
  180. package/modules/esnext.function.un-this.js +5 -7
  181. package/modules/esnext.iterator.range.js +16 -0
  182. package/modules/esnext.iterator.to-async.js +1 -1
  183. package/modules/esnext.json.is-raw-json.js +10 -0
  184. package/modules/esnext.json.parse.js +261 -0
  185. package/modules/esnext.json.raw-json.js +84 -0
  186. package/modules/esnext.number.range.js +1 -0
  187. package/modules/esnext.string.to-well-formed.js +10 -1
  188. package/modules/esnext.suppressed-error.constructor.js +3 -7
  189. package/modules/esnext.symbol.is-registered.js +19 -0
  190. package/modules/esnext.symbol.is-well-known.js +36 -0
  191. package/modules/esnext.typed-array.to-reversed.js +2 -13
  192. package/modules/esnext.typed-array.to-sorted.js +2 -19
  193. package/modules/esnext.typed-array.with.js +2 -30
  194. package/modules/web.atob.js +6 -3
  195. package/modules/web.btoa.js +5 -2
  196. package/modules/web.dom-exception.constructor.js +4 -0
  197. package/modules/web.dom-exception.to-string-tag.js +1 -0
  198. package/modules/web.structured-clone.js +4 -13
  199. package/modules/web.url.constructor.js +4 -2
  200. package/package.json +1 -1
  201. package/postinstall.js +2 -2
  202. package/proposals/array-buffer-transfer.js +3 -0
  203. package/proposals/async-iterator-helpers.js +15 -0
  204. package/proposals/change-array-by-copy-stage-4.js +8 -0
  205. package/proposals/function-demethodize.js +2 -0
  206. package/proposals/function-un-this.js +1 -0
  207. package/proposals/iterator-helpers-stage-3-2.js +14 -0
  208. package/proposals/iterator-range.js +3 -0
  209. package/proposals/json-parse-with-source.js +4 -0
  210. package/proposals/symbol-predicates.js +3 -0
  211. package/stable/array/to-reversed.js +3 -0
  212. package/stable/array/to-sorted.js +3 -0
  213. package/stable/array/to-spliced.js +3 -0
  214. package/stable/array/virtual/to-reversed.js +3 -0
  215. package/stable/array/virtual/to-sorted.js +3 -0
  216. package/stable/array/virtual/to-spliced.js +3 -0
  217. package/stable/array/virtual/with.js +3 -0
  218. package/stable/array/with.js +3 -0
  219. package/stable/index.js +7 -0
  220. package/stable/instance/to-reversed.js +3 -0
  221. package/stable/instance/to-sorted.js +3 -0
  222. package/stable/instance/to-spliced.js +3 -0
  223. package/stable/instance/with.js +3 -0
  224. package/stable/typed-array/to-reversed.js +3 -0
  225. package/stable/typed-array/to-sorted.js +3 -0
  226. package/stable/typed-array/with.js +3 -0
  227. package/stage/0.js +2 -1
  228. package/stage/1.js +2 -1
  229. package/stage/2.js +2 -0
  230. package/stage/3.js +5 -2
  231. package/stage/4.js +1 -0
package/full/index.js CHANGED
@@ -48,9 +48,13 @@ require('../modules/es.array.some');
48
48
  require('../modules/es.array.sort');
49
49
  require('../modules/es.array.species');
50
50
  require('../modules/es.array.splice');
51
+ require('../modules/es.array.to-reversed');
52
+ require('../modules/es.array.to-sorted');
53
+ require('../modules/es.array.to-spliced');
51
54
  require('../modules/es.array.unscopables.flat');
52
55
  require('../modules/es.array.unscopables.flat-map');
53
56
  require('../modules/es.array.unshift');
57
+ require('../modules/es.array.with');
54
58
  require('../modules/es.array-buffer.constructor');
55
59
  require('../modules/es.array-buffer.is-view');
56
60
  require('../modules/es.array-buffer.slice');
@@ -227,7 +231,10 @@ require('../modules/es.typed-array.some');
227
231
  require('../modules/es.typed-array.sort');
228
232
  require('../modules/es.typed-array.subarray');
229
233
  require('../modules/es.typed-array.to-locale-string');
234
+ require('../modules/es.typed-array.to-reversed');
235
+ require('../modules/es.typed-array.to-sorted');
230
236
  require('../modules/es.typed-array.to-string');
237
+ require('../modules/es.typed-array.with');
231
238
  require('../modules/es.unescape');
232
239
  require('../modules/es.weak-map');
233
240
  require('../modules/es.weak-set');
@@ -251,6 +258,9 @@ require('../modules/esnext.array.to-sorted');
251
258
  require('../modules/esnext.array.to-spliced');
252
259
  require('../modules/esnext.array.unique-by');
253
260
  require('../modules/esnext.array.with');
261
+ require('../modules/esnext.array-buffer.detached');
262
+ require('../modules/esnext.array-buffer.transfer');
263
+ require('../modules/esnext.array-buffer.transfer-to-fixed-length');
254
264
  require('../modules/esnext.async-disposable-stack.constructor');
255
265
  require('../modules/esnext.async-iterator.constructor');
256
266
  require('../modules/esnext.async-iterator.as-indexed-pairs');
@@ -272,6 +282,7 @@ require('../modules/esnext.bigint.range');
272
282
  require('../modules/esnext.composite-key');
273
283
  require('../modules/esnext.composite-symbol');
274
284
  require('../modules/esnext.disposable-stack.constructor');
285
+ require('../modules/esnext.function.demethodize');
275
286
  require('../modules/esnext.function.is-callable');
276
287
  require('../modules/esnext.function.is-constructor');
277
288
  require('../modules/esnext.function.un-this');
@@ -288,11 +299,15 @@ require('../modules/esnext.iterator.for-each');
288
299
  require('../modules/esnext.iterator.from');
289
300
  require('../modules/esnext.iterator.indexed');
290
301
  require('../modules/esnext.iterator.map');
302
+ require('../modules/esnext.iterator.range');
291
303
  require('../modules/esnext.iterator.reduce');
292
304
  require('../modules/esnext.iterator.some');
293
305
  require('../modules/esnext.iterator.take');
294
306
  require('../modules/esnext.iterator.to-array');
295
307
  require('../modules/esnext.iterator.to-async');
308
+ require('../modules/esnext.json.is-raw-json');
309
+ require('../modules/esnext.json.parse');
310
+ require('../modules/esnext.json.raw-json');
296
311
  require('../modules/esnext.map.delete-all');
297
312
  require('../modules/esnext.map.emplace');
298
313
  require('../modules/esnext.map.every');
@@ -380,6 +395,8 @@ require('../modules/esnext.string.replace-all');
380
395
  require('../modules/esnext.string.to-well-formed');
381
396
  require('../modules/esnext.symbol.async-dispose');
382
397
  require('../modules/esnext.symbol.dispose');
398
+ require('../modules/esnext.symbol.is-registered');
399
+ require('../modules/esnext.symbol.is-well-known');
383
400
  require('../modules/esnext.symbol.matcher');
384
401
  require('../modules/esnext.symbol.metadata');
385
402
  require('../modules/esnext.symbol.metadata-key');
@@ -0,0 +1,9 @@
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../function/virtual/demethodize');
3
+
4
+ var FunctionPrototype = Function.prototype;
5
+
6
+ module.exports = function (it) {
7
+ var own = it.demethodize;
8
+ return it === FunctionPrototype || (isPrototypeOf(FunctionPrototype, it) && own === FunctionPrototype.demethodize) ? method : own;
9
+ };
@@ -1,4 +1,5 @@
1
1
  var parent = require('../../actual/iterator');
2
+ require('../../modules/esnext.iterator.range');
2
3
  // TODO: Remove from `core-js@4`
3
4
  require('../../modules/esnext.iterator.as-indexed-pairs');
4
5
  require('../../modules/esnext.iterator.indexed');
@@ -0,0 +1,6 @@
1
+ require('../../modules/es.object.to-string');
2
+ require('../../modules/esnext.iterator.constructor');
3
+ require('../../modules/esnext.iterator.range');
4
+ var path = require('../../internals/path');
5
+
6
+ module.exports = path.Iterator.range;
@@ -0,0 +1,3 @@
1
+ var parent = require('../../actual/json/is-raw-json');
2
+
3
+ module.exports = parent;
@@ -0,0 +1,3 @@
1
+ var parent = require('../../actual/json/parse');
2
+
3
+ module.exports = parent;
@@ -0,0 +1,3 @@
1
+ var parent = require('../../actual/json/raw-json');
2
+
3
+ module.exports = parent;
@@ -1,5 +1,7 @@
1
1
  var parent = require('../../actual/symbol');
2
2
  require('../../modules/esnext.symbol.async-dispose');
3
+ require('../../modules/esnext.symbol.is-registered');
4
+ require('../../modules/esnext.symbol.is-well-known');
3
5
  require('../../modules/esnext.symbol.matcher');
4
6
  require('../../modules/esnext.symbol.metadata-key');
5
7
  require('../../modules/esnext.symbol.observable');
@@ -0,0 +1,5 @@
1
+ require('../../modules/es.symbol');
2
+ require('../../modules/esnext.symbol.is-registered');
3
+ var path = require('../../internals/path');
4
+
5
+ module.exports = path.Symbol.isRegistered;
@@ -0,0 +1,5 @@
1
+ require('../../modules/es.symbol');
2
+ require('../../modules/esnext.symbol.is-well-known');
3
+ var path = require('../../internals/path');
4
+
5
+ module.exports = path.Symbol.isWellKnown;
@@ -16,11 +16,15 @@ var getDisposeMethod = function (V, hint) {
16
16
  } return getMethod(V, DISPOSE);
17
17
  };
18
18
 
19
+ // `CreateDisposableResource` abstract operation
20
+ // https://tc39.es/proposal-explicit-resource-management/#sec-createdisposableresource
19
21
  var createDisposableResource = function (V, hint, method) {
20
22
  return bind(method || getDisposeMethod(V, hint), V);
21
23
  };
22
24
 
23
- var addDisposableResource = function (disposable, V, hint, method) {
25
+ // `AddDisposableResource` abstract operation
26
+ // https://tc39.es/proposal-explicit-resource-management/#sec-adddisposableresource-disposable-v-hint-disposemethod
27
+ module.exports = function (disposable, V, hint, method) {
24
28
  var resource;
25
29
  if (!method) {
26
30
  if (isNullOrUndefined(V)) return;
@@ -33,8 +37,3 @@ var addDisposableResource = function (disposable, V, hint, method) {
33
37
 
34
38
  push(disposable.stack, resource);
35
39
  };
36
-
37
- module.exports = {
38
- getDisposeMethod: getDisposeMethod,
39
- addDisposableResource: addDisposableResource
40
- };
@@ -0,0 +1,12 @@
1
+ var uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');
2
+ var classof = require('../internals/classof-raw');
3
+
4
+ var $TypeError = TypeError;
5
+
6
+ // Includes
7
+ // - Perform ? RequireInternalSlot(O, [[ArrayBufferData]]).
8
+ // - If IsSharedArrayBuffer(O) is true, throw a TypeError exception.
9
+ module.exports = uncurryThisAccessor(ArrayBuffer.prototype, 'byteLength', 'get') || function (O) {
10
+ if (classof(O) != 'ArrayBuffer') throw $TypeError('ArrayBuffer expected');
11
+ return O.byteLength;
12
+ };
@@ -0,0 +1,14 @@
1
+ var uncurryThis = require('../internals/function-uncurry-this');
2
+ var arrayBufferByteLength = require('../internals/array-buffer-byte-length');
3
+
4
+ var slice = uncurryThis(ArrayBuffer.prototype.slice);
5
+
6
+ module.exports = function (O) {
7
+ if (arrayBufferByteLength(O) !== 0) return false;
8
+ try {
9
+ slice(O, 0, 0);
10
+ return false;
11
+ } catch (error) {
12
+ return true;
13
+ }
14
+ };
@@ -0,0 +1,35 @@
1
+ var global = require('../internals/global');
2
+ var uncurryThis = require('../internals/function-uncurry-this');
3
+ var uncurryThisAccessor = require('../internals/function-uncurry-this-accessor');
4
+ var toIndex = require('../internals/to-index');
5
+ var isDetached = require('../internals/array-buffer-is-detached');
6
+ var arrayBufferByteLength = require('../internals/array-buffer-byte-length');
7
+ var PROPER_TRANSFER = require('../internals/structured-clone-proper-transfer');
8
+
9
+ var TypeError = global.TypeError;
10
+ var structuredClone = global.structuredClone;
11
+ var ArrayBuffer = global.ArrayBuffer;
12
+ var DataView = global.DataView;
13
+ var min = Math.min;
14
+ var ArrayBufferPrototype = ArrayBuffer.prototype;
15
+ var DataViewPrototype = DataView.prototype;
16
+ var slice = uncurryThis(ArrayBufferPrototype.slice);
17
+ var isResizable = uncurryThisAccessor(ArrayBufferPrototype, 'resizable', 'get');
18
+ var maxByteLength = uncurryThisAccessor(ArrayBufferPrototype, 'maxByteLength', 'get');
19
+ var getInt8 = uncurryThis(DataViewPrototype.getInt8);
20
+ var setInt8 = uncurryThis(DataViewPrototype.setInt8);
21
+
22
+ module.exports = PROPER_TRANSFER && function (arrayBuffer, newLength, preserveResizability) {
23
+ var byteLength = arrayBufferByteLength(arrayBuffer);
24
+ var newByteLength = newLength === undefined ? byteLength : min(toIndex(newLength), byteLength);
25
+ var fixedLength = !isResizable || !isResizable(arrayBuffer);
26
+ if (isDetached(arrayBuffer)) throw TypeError('ArrayBuffer is detached');
27
+ var newBuffer = structuredClone(arrayBuffer, { transfer: [arrayBuffer] });
28
+ if (byteLength == newByteLength && (preserveResizability || fixedLength)) return newBuffer;
29
+ if (!preserveResizability || fixedLength) return slice(newBuffer, 0, newByteLength);
30
+ var newNewBuffer = new ArrayBuffer(newByteLength, maxByteLength && { maxByteLength: maxByteLength(newBuffer) });
31
+ var a = new DataView(newBuffer);
32
+ var b = new DataView(newNewBuffer);
33
+ for (var i = 0; i < newByteLength; i++) setInt8(b, i, getInt8(a, i));
34
+ return newNewBuffer;
35
+ };
@@ -9,7 +9,7 @@ var classof = require('../internals/classof');
9
9
  var tryToString = require('../internals/try-to-string');
10
10
  var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
11
11
  var defineBuiltIn = require('../internals/define-built-in');
12
- var defineProperty = require('../internals/object-define-property').f;
12
+ var defineBuiltInAccessor = require('../internals/define-built-in-accessor');
13
13
  var isPrototypeOf = require('../internals/object-is-prototype-of');
14
14
  var getPrototypeOf = require('../internals/object-get-prototype-of');
15
15
  var setPrototypeOf = require('../internals/object-set-prototype-of');
@@ -167,9 +167,12 @@ if (NATIVE_ARRAY_BUFFER_VIEWS && getPrototypeOf(Uint8ClampedArrayPrototype) !==
167
167
 
168
168
  if (DESCRIPTORS && !hasOwn(TypedArrayPrototype, TO_STRING_TAG)) {
169
169
  TYPED_ARRAY_TAG_REQUIRED = true;
170
- defineProperty(TypedArrayPrototype, TO_STRING_TAG, { get: function () {
171
- return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined;
172
- } });
170
+ defineBuiltInAccessor(TypedArrayPrototype, TO_STRING_TAG, {
171
+ configurable: true,
172
+ get: function () {
173
+ return isObject(this) ? this[TYPED_ARRAY_TAG] : undefined;
174
+ }
175
+ });
173
176
  for (NAME in TypedArrayConstructorsList) if (global[NAME]) {
174
177
  createNonEnumerableProperty(global[NAME], TYPED_ARRAY_TAG, NAME);
175
178
  }
@@ -5,6 +5,7 @@ var DESCRIPTORS = require('../internals/descriptors');
5
5
  var NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-basic-detection');
6
6
  var FunctionName = require('../internals/function-name');
7
7
  var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
8
+ var defineBuiltInAccessor = require('../internals/define-built-in-accessor');
8
9
  var defineBuiltIns = require('../internals/define-built-ins');
9
10
  var fails = require('../internals/fails');
10
11
  var anInstance = require('../internals/an-instance');
@@ -15,7 +16,6 @@ var IEEE754 = require('../internals/ieee754');
15
16
  var getPrototypeOf = require('../internals/object-get-prototype-of');
16
17
  var setPrototypeOf = require('../internals/object-set-prototype-of');
17
18
  var getOwnPropertyNames = require('../internals/object-get-own-property-names').f;
18
- var defineProperty = require('../internals/object-define-property').f;
19
19
  var arrayFill = require('../internals/array-fill');
20
20
  var arraySlice = require('../internals/array-slice-simple');
21
21
  var setToStringTag = require('../internals/set-to-string-tag');
@@ -23,13 +23,14 @@ var InternalStateModule = require('../internals/internal-state');
23
23
 
24
24
  var PROPER_FUNCTION_NAME = FunctionName.PROPER;
25
25
  var CONFIGURABLE_FUNCTION_NAME = FunctionName.CONFIGURABLE;
26
- var getInternalState = InternalStateModule.get;
27
- var setInternalState = InternalStateModule.set;
28
26
  var ARRAY_BUFFER = 'ArrayBuffer';
29
27
  var DATA_VIEW = 'DataView';
30
28
  var PROTOTYPE = 'prototype';
31
29
  var WRONG_LENGTH = 'Wrong length';
32
30
  var WRONG_INDEX = 'Wrong index';
31
+ var getInternalArrayBufferState = InternalStateModule.getterFor(ARRAY_BUFFER);
32
+ var getInternalDataViewState = InternalStateModule.getterFor(DATA_VIEW);
33
+ var setInternalState = InternalStateModule.set;
33
34
  var NativeArrayBuffer = global[ARRAY_BUFFER];
34
35
  var $ArrayBuffer = NativeArrayBuffer;
35
36
  var ArrayBufferPrototype = $ArrayBuffer && $ArrayBuffer[PROTOTYPE];
@@ -68,15 +69,20 @@ var packFloat64 = function (number) {
68
69
  return packIEEE754(number, 52, 8);
69
70
  };
70
71
 
71
- var addGetter = function (Constructor, key) {
72
- defineProperty(Constructor[PROTOTYPE], key, { get: function () { return getInternalState(this)[key]; } });
72
+ var addGetter = function (Constructor, key, getInternalState) {
73
+ defineBuiltInAccessor(Constructor[PROTOTYPE], key, {
74
+ configurable: true,
75
+ get: function () {
76
+ return getInternalState(this)[key];
77
+ }
78
+ });
73
79
  };
74
80
 
75
81
  var get = function (view, count, index, isLittleEndian) {
76
82
  var intIndex = toIndex(index);
77
- var store = getInternalState(view);
83
+ var store = getInternalDataViewState(view);
78
84
  if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX);
79
- var bytes = getInternalState(store.buffer).bytes;
85
+ var bytes = store.bytes;
80
86
  var start = intIndex + store.byteOffset;
81
87
  var pack = arraySlice(bytes, start, start + count);
82
88
  return isLittleEndian ? pack : reverse(pack);
@@ -84,9 +90,9 @@ var get = function (view, count, index, isLittleEndian) {
84
90
 
85
91
  var set = function (view, count, index, conversion, value, isLittleEndian) {
86
92
  var intIndex = toIndex(index);
87
- var store = getInternalState(view);
93
+ var store = getInternalDataViewState(view);
88
94
  if (intIndex + count > store.byteLength) throw RangeError(WRONG_INDEX);
89
- var bytes = getInternalState(store.buffer).bytes;
95
+ var bytes = store.bytes;
90
96
  var start = intIndex + store.byteOffset;
91
97
  var pack = conversion(+value);
92
98
  for (var i = 0; i < count; i++) bytes[start + i] = pack[isLittleEndian ? i : count - i - 1];
@@ -97,10 +103,14 @@ if (!NATIVE_ARRAY_BUFFER) {
97
103
  anInstance(this, ArrayBufferPrototype);
98
104
  var byteLength = toIndex(length);
99
105
  setInternalState(this, {
106
+ type: ARRAY_BUFFER,
100
107
  bytes: fill(Array(byteLength), 0),
101
108
  byteLength: byteLength
102
109
  });
103
- if (!DESCRIPTORS) this.byteLength = byteLength;
110
+ if (!DESCRIPTORS) {
111
+ this.byteLength = byteLength;
112
+ this.detached = false;
113
+ }
104
114
  };
105
115
 
106
116
  ArrayBufferPrototype = $ArrayBuffer[PROTOTYPE];
@@ -108,15 +118,18 @@ if (!NATIVE_ARRAY_BUFFER) {
108
118
  $DataView = function DataView(buffer, byteOffset, byteLength) {
109
119
  anInstance(this, DataViewPrototype);
110
120
  anInstance(buffer, ArrayBufferPrototype);
111
- var bufferLength = getInternalState(buffer).byteLength;
121
+ var bufferState = getInternalArrayBufferState(buffer);
122
+ var bufferLength = bufferState.byteLength;
112
123
  var offset = toIntegerOrInfinity(byteOffset);
113
124
  if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset');
114
125
  byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);
115
126
  if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);
116
127
  setInternalState(this, {
128
+ type: DATA_VIEW,
117
129
  buffer: buffer,
118
130
  byteLength: byteLength,
119
- byteOffset: offset
131
+ byteOffset: offset,
132
+ bytes: bufferState.bytes
120
133
  });
121
134
  if (!DESCRIPTORS) {
122
135
  this.buffer = buffer;
@@ -128,10 +141,10 @@ if (!NATIVE_ARRAY_BUFFER) {
128
141
  DataViewPrototype = $DataView[PROTOTYPE];
129
142
 
130
143
  if (DESCRIPTORS) {
131
- addGetter($ArrayBuffer, 'byteLength');
132
- addGetter($DataView, 'buffer');
133
- addGetter($DataView, 'byteLength');
134
- addGetter($DataView, 'byteOffset');
144
+ addGetter($ArrayBuffer, 'byteLength', getInternalArrayBufferState);
145
+ addGetter($DataView, 'buffer', getInternalDataViewState);
146
+ addGetter($DataView, 'byteLength', getInternalDataViewState);
147
+ addGetter($DataView, 'byteOffset', getInternalDataViewState);
135
148
  }
136
149
 
137
150
  defineBuiltIns(DataViewPrototype, {
@@ -15,17 +15,14 @@ var iteratorClose = require('../internals/iterator-close');
15
15
 
16
16
  var Promise = getBuiltIn('Promise');
17
17
 
18
+ var TO_STRING_TAG = wellKnownSymbol('toStringTag');
18
19
  var ASYNC_ITERATOR_HELPER = 'AsyncIteratorHelper';
19
20
  var WRAP_FOR_VALID_ASYNC_ITERATOR = 'WrapForValidAsyncIterator';
20
21
  var setInternalState = InternalStateModule.set;
21
22
 
22
- var TO_STRING_TAG = wellKnownSymbol('toStringTag');
23
-
24
23
  var createAsyncIteratorProxyPrototype = function (IS_ITERATOR) {
25
24
  var IS_GENERATOR = !IS_ITERATOR;
26
- var ASYNC_ITERATOR_PROXY = IS_ITERATOR ? WRAP_FOR_VALID_ASYNC_ITERATOR : ASYNC_ITERATOR_HELPER;
27
-
28
- var getInternalState = InternalStateModule.getterFor(ASYNC_ITERATOR_PROXY);
25
+ var getInternalState = InternalStateModule.getterFor(IS_ITERATOR ? WRAP_FOR_VALID_ASYNC_ITERATOR : ASYNC_ITERATOR_HELPER);
29
26
 
30
27
  var getStateOrEarlyExit = function (that) {
31
28
  var stateCompletion = perform(function () {
@@ -40,93 +37,65 @@ var createAsyncIteratorProxyPrototype = function (IS_ITERATOR) {
40
37
  } return { exit: false, value: state };
41
38
  };
42
39
 
43
- var enqueue = function (state, handler) {
44
- var task = function () {
45
- var promise = handler();
46
- if (IS_GENERATOR) {
47
- state.awaiting = promise;
48
- var clean = function () {
49
- if (state.awaiting === promise) state.awaiting = null;
50
- };
51
- promise.then(clean, clean);
52
- } return promise;
53
- };
54
-
55
- return state.awaiting ? state.awaiting = state.awaiting.then(task, task) : task();
56
- };
57
-
58
- var AsyncIteratorProxyPrototype = defineBuiltIns(create(AsyncIteratorPrototype), {
40
+ return defineBuiltIns(create(AsyncIteratorPrototype), {
59
41
  next: function next() {
60
42
  var stateCompletion = getStateOrEarlyExit(this);
61
- var exit = stateCompletion.exit;
62
43
  var state = stateCompletion.value;
63
-
64
- return exit ? state : enqueue(state, function () {
65
- var handlerCompletion = perform(function () {
66
- return anObject(state.nextHandler(Promise));
67
- });
68
- var handlerError = handlerCompletion.error;
69
- var value = handlerCompletion.value;
70
- if (handlerError) state.done = true;
71
- return handlerError ? Promise.reject(value) : Promise.resolve(value);
44
+ if (stateCompletion.exit) return state;
45
+ var handlerCompletion = perform(function () {
46
+ return anObject(state.nextHandler(Promise));
72
47
  });
48
+ var handlerError = handlerCompletion.error;
49
+ var value = handlerCompletion.value;
50
+ if (handlerError) state.done = true;
51
+ return handlerError ? Promise.reject(value) : Promise.resolve(value);
73
52
  },
74
53
  'return': function () {
75
54
  var stateCompletion = getStateOrEarlyExit(this);
76
- var exit = stateCompletion.exit;
77
55
  var state = stateCompletion.value;
78
-
79
- return exit ? state : enqueue(state, function () {
80
- state.done = true;
81
- var iterator = state.iterator;
82
- var returnMethod, result;
83
- var completion = perform(function () {
84
- if (state.inner) try {
85
- iteratorClose(state.inner.iterator, 'return');
86
- } catch (error) {
87
- return iteratorClose(iterator, 'throw', error);
88
- }
89
- return getMethod(iterator, 'return');
90
- });
91
- returnMethod = result = completion.value;
92
- if (completion.error) return Promise.reject(result);
93
- if (returnMethod === undefined) return Promise.resolve(createIterResultObject(undefined, true));
94
- completion = perform(function () {
95
- return call(returnMethod, iterator);
96
- });
97
- result = completion.value;
98
- if (completion.error) return Promise.reject(result);
99
- return IS_ITERATOR ? Promise.resolve(result) : Promise.resolve(result).then(function (resolved) {
100
- anObject(resolved);
101
- return createIterResultObject(undefined, true);
102
- });
56
+ if (stateCompletion.exit) return state;
57
+ state.done = true;
58
+ var iterator = state.iterator;
59
+ var returnMethod, result;
60
+ var completion = perform(function () {
61
+ if (state.inner) try {
62
+ iteratorClose(state.inner.iterator, 'normal');
63
+ } catch (error) {
64
+ return iteratorClose(iterator, 'throw', error);
65
+ }
66
+ return getMethod(iterator, 'return');
67
+ });
68
+ returnMethod = result = completion.value;
69
+ if (completion.error) return Promise.reject(result);
70
+ if (returnMethod === undefined) return Promise.resolve(createIterResultObject(undefined, true));
71
+ completion = perform(function () {
72
+ return call(returnMethod, iterator);
73
+ });
74
+ result = completion.value;
75
+ if (completion.error) return Promise.reject(result);
76
+ return IS_ITERATOR ? Promise.resolve(result) : Promise.resolve(result).then(function (resolved) {
77
+ anObject(resolved);
78
+ return createIterResultObject(undefined, true);
103
79
  });
104
80
  }
105
81
  });
106
-
107
- if (IS_GENERATOR) {
108
- createNonEnumerableProperty(AsyncIteratorProxyPrototype, TO_STRING_TAG, 'Async Iterator Helper');
109
- }
110
-
111
- return AsyncIteratorProxyPrototype;
112
82
  };
113
83
 
114
- var AsyncIteratorHelperPrototype = createAsyncIteratorProxyPrototype(false);
115
84
  var WrapForValidAsyncIteratorPrototype = createAsyncIteratorProxyPrototype(true);
85
+ var AsyncIteratorHelperPrototype = createAsyncIteratorProxyPrototype(false);
116
86
 
117
- module.exports = function (nextHandler, IS_ITERATOR) {
118
- var ASYNC_ITERATOR_PROXY = IS_ITERATOR ? WRAP_FOR_VALID_ASYNC_ITERATOR : ASYNC_ITERATOR_HELPER;
87
+ createNonEnumerableProperty(AsyncIteratorHelperPrototype, TO_STRING_TAG, 'Async Iterator Helper');
119
88
 
89
+ module.exports = function (nextHandler, IS_ITERATOR) {
120
90
  var AsyncIteratorProxy = function AsyncIterator(record, state) {
121
91
  if (state) {
122
92
  state.iterator = record.iterator;
123
93
  state.next = record.next;
124
94
  } else state = record;
125
- state.type = ASYNC_ITERATOR_PROXY;
95
+ state.type = IS_ITERATOR ? WRAP_FOR_VALID_ASYNC_ITERATOR : ASYNC_ITERATOR_HELPER;
126
96
  state.nextHandler = nextHandler;
127
97
  state.counter = 0;
128
98
  state.done = false;
129
- state.awaiting = null;
130
99
  setInternalState(this, state);
131
100
  };
132
101
 
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
- var defineProperty = require('../internals/object-define-property').f;
3
2
  var create = require('../internals/object-create');
3
+ var defineBuiltInAccessor = require('../internals/define-built-in-accessor');
4
4
  var defineBuiltIns = require('../internals/define-built-ins');
5
5
  var bind = require('../internals/function-bind-context');
6
6
  var anInstance = require('../internals/an-instance');
@@ -152,7 +152,8 @@ module.exports = {
152
152
  return define(this, value = value === 0 ? 0 : value, value);
153
153
  }
154
154
  });
155
- if (DESCRIPTORS) defineProperty(Prototype, 'size', {
155
+ if (DESCRIPTORS) defineBuiltInAccessor(Prototype, 'size', {
156
+ configurable: true,
156
157
  get: function () {
157
158
  return getInternalState(this).size;
158
159
  }
@@ -19,8 +19,8 @@ var splice = uncurryThis([].splice);
19
19
  var id = 0;
20
20
 
21
21
  // fallback for uncaught frozen keys
22
- var uncaughtFrozenStore = function (store) {
23
- return store.frozen || (store.frozen = new UncaughtFrozenStore());
22
+ var uncaughtFrozenStore = function (state) {
23
+ return state.frozen || (state.frozen = new UncaughtFrozenStore());
24
24
  };
25
25
 
26
26
  var UncaughtFrozenStore = function () {
@@ -1,4 +1,3 @@
1
1
  var userAgent = require('../internals/engine-user-agent');
2
- var global = require('../internals/global');
3
2
 
4
- module.exports = /ipad|iphone|ipod/i.test(userAgent) && global.Pebble !== undefined;
3
+ module.exports = /ipad|iphone|ipod/i.test(userAgent) && typeof Pebble != 'undefined';
@@ -1,3 +1,4 @@
1
1
  var userAgent = require('../internals/engine-user-agent');
2
2
 
3
+ // eslint-disable-next-line redos/no-vulnerable -- safe
3
4
  module.exports = /(?:ipad|iphone|ipod).*applewebkit/i.test(userAgent);
@@ -1,4 +1,3 @@
1
1
  var classof = require('../internals/classof-raw');
2
- var global = require('../internals/global');
3
2
 
4
- module.exports = classof(global.process) == 'process';
3
+ module.exports = typeof process != 'undefined' && classof(process) == 'process';
@@ -1,3 +1 @@
1
- var getBuiltIn = require('../internals/get-built-in');
2
-
3
- module.exports = getBuiltIn('navigator', 'userAgent') || '';
1
+ module.exports = typeof navigator != 'undefined' && String(navigator.userAgent) || '';
@@ -4,6 +4,7 @@ var $Error = Error;
4
4
  var replace = uncurryThis(''.replace);
5
5
 
6
6
  var TEST = (function (arg) { return String($Error(arg).stack); })('zxcasd');
7
+ // eslint-disable-next-line redos/no-vulnerable -- safe
7
8
  var V8_OR_CHAKRA_STACK_ENTRY = /\n\s*at [^:]*:[^\n]*/;
8
9
  var IS_V8_OR_CHAKRA_STACK = V8_OR_CHAKRA_STACK_ENTRY.test(TEST);
9
10
 
@@ -0,0 +1,13 @@
1
+ var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
2
+ var clearErrorStack = require('../internals/error-stack-clear');
3
+ var ERROR_STACK_INSTALLABLE = require('../internals/error-stack-installable');
4
+
5
+ // non-standard V8
6
+ var captureStackTrace = Error.captureStackTrace;
7
+
8
+ module.exports = function (error, C, stack, dropEntries) {
9
+ if (ERROR_STACK_INSTALLABLE) {
10
+ if (captureStackTrace) captureStackTrace(error, C);
11
+ else createNonEnumerableProperty(error, 'stack', clearErrorStack(stack, dropEntries));
12
+ }
13
+ };
@@ -20,6 +20,7 @@ var construct = function (C, argsLength, args) {
20
20
 
21
21
  // `Function.prototype.bind` method implementation
22
22
  // https://tc39.es/ecma262/#sec-function.prototype.bind
23
+ // eslint-disable-next-line es/no-function-prototype-bind -- detection
23
24
  module.exports = NATIVE_BIND ? $Function.bind : function bind(that /* , ...args */) {
24
25
  var F = aCallable(this);
25
26
  var Prototype = F.prototype;
@@ -0,0 +1,7 @@
1
+ 'use strict';
2
+ var uncurryThis = require('../internals/function-uncurry-this');
3
+ var aCallable = require('../internals/a-callable');
4
+
5
+ module.exports = function demethodize() {
6
+ return uncurryThis(aCallable(this));
7
+ };
@@ -0,0 +1,9 @@
1
+ var uncurryThis = require('../internals/function-uncurry-this');
2
+ var aCallable = require('../internals/a-callable');
3
+
4
+ module.exports = function (object, key, method) {
5
+ try {
6
+ // eslint-disable-next-line es/no-object-getownpropertydescriptor -- safe
7
+ return uncurryThis(aCallable(Object.getOwnPropertyDescriptor(object, key)[method]));
8
+ } catch (error) { /* empty */ }
9
+ };