core-js 3.19.1 → 3.20.1

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 (961) hide show
  1. package/README.md +27 -17
  2. package/actual/README.md +1 -0
  3. package/actual/aggregate-error.js +3 -0
  4. package/actual/array/at.js +3 -0
  5. package/actual/array/concat.js +3 -0
  6. package/actual/array/copy-within.js +3 -0
  7. package/actual/array/entries.js +3 -0
  8. package/actual/array/every.js +3 -0
  9. package/actual/array/fill.js +3 -0
  10. package/actual/array/filter.js +3 -0
  11. package/actual/array/find-index.js +3 -0
  12. package/actual/array/find-last-index.js +4 -0
  13. package/actual/array/find-last.js +4 -0
  14. package/actual/array/find.js +3 -0
  15. package/actual/array/flat-map.js +3 -0
  16. package/actual/array/flat.js +3 -0
  17. package/actual/array/for-each.js +3 -0
  18. package/actual/array/from.js +3 -0
  19. package/actual/array/group-by-to-map.js +6 -0
  20. package/actual/array/group-by.js +4 -0
  21. package/actual/array/includes.js +3 -0
  22. package/actual/array/index-of.js +3 -0
  23. package/actual/array/index.js +9 -0
  24. package/actual/array/is-array.js +3 -0
  25. package/actual/array/iterator.js +3 -0
  26. package/actual/array/join.js +3 -0
  27. package/actual/array/keys.js +3 -0
  28. package/actual/array/last-index-of.js +3 -0
  29. package/actual/array/map.js +3 -0
  30. package/actual/array/of.js +3 -0
  31. package/actual/array/reduce-right.js +3 -0
  32. package/actual/array/reduce.js +3 -0
  33. package/actual/array/reverse.js +3 -0
  34. package/actual/array/slice.js +3 -0
  35. package/actual/array/some.js +3 -0
  36. package/actual/array/sort.js +3 -0
  37. package/actual/array/splice.js +3 -0
  38. package/actual/array/values.js +3 -0
  39. package/actual/array/virtual/at.js +3 -0
  40. package/actual/array/virtual/concat.js +3 -0
  41. package/actual/array/virtual/copy-within.js +3 -0
  42. package/actual/array/virtual/entries.js +3 -0
  43. package/actual/array/virtual/every.js +3 -0
  44. package/actual/array/virtual/fill.js +3 -0
  45. package/actual/array/virtual/filter.js +3 -0
  46. package/actual/array/virtual/find-index.js +3 -0
  47. package/actual/array/virtual/find-last-index.js +4 -0
  48. package/actual/array/virtual/find-last.js +4 -0
  49. package/actual/array/virtual/find.js +3 -0
  50. package/actual/array/virtual/flat-map.js +3 -0
  51. package/actual/array/virtual/flat.js +3 -0
  52. package/actual/array/virtual/for-each.js +3 -0
  53. package/actual/array/virtual/group-by-to-map.js +6 -0
  54. package/actual/array/virtual/group-by.js +4 -0
  55. package/actual/array/virtual/includes.js +3 -0
  56. package/actual/array/virtual/index-of.js +3 -0
  57. package/actual/array/virtual/index.js +9 -0
  58. package/actual/array/virtual/iterator.js +3 -0
  59. package/actual/array/virtual/join.js +3 -0
  60. package/actual/array/virtual/keys.js +3 -0
  61. package/actual/array/virtual/last-index-of.js +3 -0
  62. package/actual/array/virtual/map.js +3 -0
  63. package/actual/array/virtual/reduce-right.js +3 -0
  64. package/actual/array/virtual/reduce.js +3 -0
  65. package/actual/array/virtual/reverse.js +3 -0
  66. package/actual/array/virtual/slice.js +3 -0
  67. package/actual/array/virtual/some.js +3 -0
  68. package/actual/array/virtual/sort.js +3 -0
  69. package/actual/array/virtual/splice.js +3 -0
  70. package/actual/array/virtual/values.js +3 -0
  71. package/actual/array-buffer/constructor.js +3 -0
  72. package/actual/array-buffer/index.js +3 -0
  73. package/actual/array-buffer/is-view.js +3 -0
  74. package/actual/array-buffer/slice.js +3 -0
  75. package/actual/clear-immediate.js +3 -0
  76. package/actual/data-view/index.js +3 -0
  77. package/actual/date/get-year.js +3 -0
  78. package/actual/date/index.js +3 -0
  79. package/actual/date/now.js +3 -0
  80. package/actual/date/set-year.js +3 -0
  81. package/actual/date/to-gmt-string.js +3 -0
  82. package/actual/date/to-iso-string.js +3 -0
  83. package/actual/date/to-json.js +3 -0
  84. package/actual/date/to-primitive.js +3 -0
  85. package/actual/date/to-string.js +3 -0
  86. package/actual/dom-collections/for-each.js +3 -0
  87. package/actual/dom-collections/index.js +3 -0
  88. package/actual/dom-collections/iterator.js +3 -0
  89. package/actual/dom-exception/constructor.js +3 -0
  90. package/actual/dom-exception/index.js +3 -0
  91. package/actual/dom-exception/to-string-tag.js +3 -0
  92. package/actual/error/constructor.js +3 -0
  93. package/actual/error/index.js +3 -0
  94. package/actual/error/to-string.js +3 -0
  95. package/actual/escape.js +3 -0
  96. package/actual/function/bind.js +3 -0
  97. package/actual/function/has-instance.js +3 -0
  98. package/actual/function/index.js +3 -0
  99. package/actual/function/name.js +3 -0
  100. package/actual/function/virtual/bind.js +3 -0
  101. package/actual/function/virtual/index.js +3 -0
  102. package/actual/get-iterator-method.js +3 -0
  103. package/actual/get-iterator.js +3 -0
  104. package/actual/global-this.js +3 -0
  105. package/actual/index.js +4 -0
  106. package/actual/instance/at.js +3 -0
  107. package/actual/instance/bind.js +3 -0
  108. package/actual/instance/code-point-at.js +3 -0
  109. package/actual/instance/concat.js +3 -0
  110. package/actual/instance/copy-within.js +3 -0
  111. package/actual/instance/ends-with.js +3 -0
  112. package/actual/instance/entries.js +3 -0
  113. package/actual/instance/every.js +3 -0
  114. package/actual/instance/fill.js +3 -0
  115. package/actual/instance/filter.js +3 -0
  116. package/actual/instance/find-index.js +3 -0
  117. package/actual/instance/find-last-index.js +9 -0
  118. package/actual/instance/find-last.js +9 -0
  119. package/actual/instance/find.js +3 -0
  120. package/actual/instance/flags.js +3 -0
  121. package/actual/instance/flat-map.js +3 -0
  122. package/actual/instance/flat.js +3 -0
  123. package/actual/instance/for-each.js +3 -0
  124. package/actual/instance/group-by-to-map.js +9 -0
  125. package/actual/instance/group-by.js +9 -0
  126. package/actual/instance/includes.js +3 -0
  127. package/actual/instance/index-of.js +3 -0
  128. package/actual/instance/keys.js +3 -0
  129. package/actual/instance/last-index-of.js +3 -0
  130. package/actual/instance/map.js +3 -0
  131. package/actual/instance/match-all.js +3 -0
  132. package/actual/instance/pad-end.js +3 -0
  133. package/actual/instance/pad-start.js +3 -0
  134. package/actual/instance/reduce-right.js +3 -0
  135. package/actual/instance/reduce.js +3 -0
  136. package/actual/instance/repeat.js +3 -0
  137. package/actual/instance/replace-all.js +3 -0
  138. package/actual/instance/reverse.js +3 -0
  139. package/actual/instance/slice.js +3 -0
  140. package/actual/instance/some.js +3 -0
  141. package/actual/instance/sort.js +3 -0
  142. package/actual/instance/splice.js +3 -0
  143. package/actual/instance/starts-with.js +3 -0
  144. package/actual/instance/trim-end.js +3 -0
  145. package/actual/instance/trim-left.js +3 -0
  146. package/actual/instance/trim-right.js +3 -0
  147. package/actual/instance/trim-start.js +3 -0
  148. package/actual/instance/trim.js +3 -0
  149. package/actual/instance/values.js +3 -0
  150. package/actual/is-iterable.js +3 -0
  151. package/actual/json/index.js +3 -0
  152. package/actual/json/stringify.js +3 -0
  153. package/actual/json/to-string-tag.js +3 -0
  154. package/actual/map/index.js +3 -0
  155. package/actual/math/acosh.js +3 -0
  156. package/actual/math/asinh.js +3 -0
  157. package/actual/math/atanh.js +3 -0
  158. package/actual/math/cbrt.js +3 -0
  159. package/actual/math/clz32.js +3 -0
  160. package/actual/math/cosh.js +3 -0
  161. package/actual/math/expm1.js +3 -0
  162. package/actual/math/fround.js +3 -0
  163. package/actual/math/hypot.js +3 -0
  164. package/actual/math/imul.js +3 -0
  165. package/actual/math/index.js +3 -0
  166. package/actual/math/log10.js +3 -0
  167. package/actual/math/log1p.js +3 -0
  168. package/actual/math/log2.js +3 -0
  169. package/actual/math/sign.js +3 -0
  170. package/actual/math/sinh.js +3 -0
  171. package/actual/math/tanh.js +3 -0
  172. package/actual/math/to-string-tag.js +3 -0
  173. package/actual/math/trunc.js +3 -0
  174. package/actual/number/constructor.js +3 -0
  175. package/actual/number/epsilon.js +3 -0
  176. package/actual/number/index.js +3 -0
  177. package/actual/number/is-finite.js +3 -0
  178. package/actual/number/is-integer.js +3 -0
  179. package/actual/number/is-nan.js +3 -0
  180. package/actual/number/is-safe-integer.js +3 -0
  181. package/actual/number/max-safe-integer.js +3 -0
  182. package/actual/number/min-safe-integer.js +3 -0
  183. package/actual/number/parse-float.js +3 -0
  184. package/actual/number/parse-int.js +3 -0
  185. package/actual/number/to-exponential.js +3 -0
  186. package/actual/number/to-fixed.js +3 -0
  187. package/actual/number/to-precision.js +3 -0
  188. package/actual/number/virtual/index.js +3 -0
  189. package/actual/number/virtual/to-exponential.js +3 -0
  190. package/actual/number/virtual/to-fixed.js +3 -0
  191. package/actual/number/virtual/to-precision.js +3 -0
  192. package/actual/object/assign.js +3 -0
  193. package/actual/object/create.js +3 -0
  194. package/actual/object/define-getter.js +3 -0
  195. package/actual/object/define-properties.js +3 -0
  196. package/actual/object/define-property.js +3 -0
  197. package/actual/object/define-setter.js +3 -0
  198. package/actual/object/entries.js +3 -0
  199. package/actual/object/freeze.js +3 -0
  200. package/actual/object/from-entries.js +3 -0
  201. package/actual/object/get-own-property-descriptor.js +3 -0
  202. package/actual/object/get-own-property-descriptors.js +3 -0
  203. package/actual/object/get-own-property-names.js +3 -0
  204. package/actual/object/get-own-property-symbols.js +3 -0
  205. package/actual/object/get-prototype-of.js +3 -0
  206. package/actual/object/has-own.js +3 -0
  207. package/actual/object/index.js +3 -0
  208. package/actual/object/is-extensible.js +3 -0
  209. package/actual/object/is-frozen.js +3 -0
  210. package/actual/object/is-sealed.js +3 -0
  211. package/actual/object/is.js +3 -0
  212. package/actual/object/keys.js +3 -0
  213. package/actual/object/lookup-getter.js +3 -0
  214. package/actual/object/lookup-setter.js +3 -0
  215. package/actual/object/prevent-extensions.js +3 -0
  216. package/actual/object/seal.js +3 -0
  217. package/actual/object/set-prototype-of.js +3 -0
  218. package/actual/object/to-string.js +3 -0
  219. package/actual/object/values.js +3 -0
  220. package/actual/parse-float.js +3 -0
  221. package/actual/parse-int.js +3 -0
  222. package/actual/promise/all-settled.js +3 -0
  223. package/actual/promise/any.js +3 -0
  224. package/actual/promise/finally.js +3 -0
  225. package/actual/promise/index.js +3 -0
  226. package/actual/queue-microtask.js +3 -0
  227. package/actual/reflect/apply.js +3 -0
  228. package/actual/reflect/construct.js +3 -0
  229. package/actual/reflect/define-property.js +3 -0
  230. package/actual/reflect/delete-property.js +3 -0
  231. package/actual/reflect/get-own-property-descriptor.js +3 -0
  232. package/actual/reflect/get-prototype-of.js +3 -0
  233. package/actual/reflect/get.js +3 -0
  234. package/actual/reflect/has.js +3 -0
  235. package/actual/reflect/index.js +3 -0
  236. package/actual/reflect/is-extensible.js +3 -0
  237. package/actual/reflect/own-keys.js +3 -0
  238. package/actual/reflect/prevent-extensions.js +3 -0
  239. package/actual/reflect/set-prototype-of.js +3 -0
  240. package/actual/reflect/set.js +3 -0
  241. package/actual/reflect/to-string-tag.js +3 -0
  242. package/actual/regexp/constructor.js +3 -0
  243. package/actual/regexp/dot-all.js +3 -0
  244. package/actual/regexp/flags.js +3 -0
  245. package/actual/regexp/index.js +3 -0
  246. package/actual/regexp/match.js +3 -0
  247. package/actual/regexp/replace.js +3 -0
  248. package/actual/regexp/search.js +3 -0
  249. package/actual/regexp/split.js +3 -0
  250. package/actual/regexp/sticky.js +3 -0
  251. package/actual/regexp/test.js +3 -0
  252. package/actual/regexp/to-string.js +3 -0
  253. package/actual/set/index.js +3 -0
  254. package/actual/set-immediate.js +3 -0
  255. package/actual/set-interval.js +3 -0
  256. package/actual/set-timeout.js +3 -0
  257. package/actual/string/anchor.js +3 -0
  258. package/actual/string/at.js +3 -0
  259. package/actual/string/big.js +3 -0
  260. package/actual/string/blink.js +3 -0
  261. package/actual/string/bold.js +3 -0
  262. package/actual/string/code-point-at.js +3 -0
  263. package/actual/string/ends-with.js +3 -0
  264. package/actual/string/fixed.js +3 -0
  265. package/actual/string/fontcolor.js +3 -0
  266. package/actual/string/fontsize.js +3 -0
  267. package/actual/string/from-code-point.js +3 -0
  268. package/actual/string/includes.js +3 -0
  269. package/actual/string/index.js +3 -0
  270. package/actual/string/italics.js +3 -0
  271. package/actual/string/iterator.js +3 -0
  272. package/actual/string/link.js +3 -0
  273. package/actual/string/match-all.js +3 -0
  274. package/actual/string/match.js +3 -0
  275. package/actual/string/pad-end.js +3 -0
  276. package/actual/string/pad-start.js +3 -0
  277. package/actual/string/raw.js +3 -0
  278. package/actual/string/repeat.js +3 -0
  279. package/actual/string/replace-all.js +3 -0
  280. package/actual/string/replace.js +3 -0
  281. package/actual/string/search.js +3 -0
  282. package/actual/string/small.js +3 -0
  283. package/actual/string/split.js +3 -0
  284. package/actual/string/starts-with.js +3 -0
  285. package/actual/string/strike.js +3 -0
  286. package/actual/string/sub.js +3 -0
  287. package/actual/string/substr.js +3 -0
  288. package/actual/string/sup.js +3 -0
  289. package/actual/string/trim-end.js +3 -0
  290. package/actual/string/trim-left.js +3 -0
  291. package/actual/string/trim-right.js +3 -0
  292. package/actual/string/trim-start.js +3 -0
  293. package/actual/string/trim.js +3 -0
  294. package/actual/string/virtual/anchor.js +3 -0
  295. package/actual/string/virtual/at.js +3 -0
  296. package/actual/string/virtual/big.js +3 -0
  297. package/actual/string/virtual/blink.js +3 -0
  298. package/actual/string/virtual/bold.js +3 -0
  299. package/actual/string/virtual/code-point-at.js +3 -0
  300. package/actual/string/virtual/ends-with.js +3 -0
  301. package/actual/string/virtual/fixed.js +3 -0
  302. package/actual/string/virtual/fontcolor.js +3 -0
  303. package/actual/string/virtual/fontsize.js +3 -0
  304. package/actual/string/virtual/includes.js +3 -0
  305. package/actual/string/virtual/index.js +3 -0
  306. package/actual/string/virtual/italics.js +3 -0
  307. package/actual/string/virtual/iterator.js +3 -0
  308. package/actual/string/virtual/link.js +3 -0
  309. package/actual/string/virtual/match-all.js +3 -0
  310. package/actual/string/virtual/pad-end.js +3 -0
  311. package/actual/string/virtual/pad-start.js +3 -0
  312. package/actual/string/virtual/repeat.js +3 -0
  313. package/actual/string/virtual/replace-all.js +3 -0
  314. package/actual/string/virtual/small.js +3 -0
  315. package/actual/string/virtual/starts-with.js +3 -0
  316. package/actual/string/virtual/strike.js +3 -0
  317. package/actual/string/virtual/sub.js +3 -0
  318. package/actual/string/virtual/substr.js +3 -0
  319. package/actual/string/virtual/sup.js +3 -0
  320. package/actual/string/virtual/trim-end.js +3 -0
  321. package/actual/string/virtual/trim-left.js +3 -0
  322. package/actual/string/virtual/trim-right.js +3 -0
  323. package/actual/string/virtual/trim-start.js +3 -0
  324. package/actual/string/virtual/trim.js +3 -0
  325. package/actual/structured-clone.js +3 -0
  326. package/actual/symbol/async-iterator.js +3 -0
  327. package/actual/symbol/description.js +3 -0
  328. package/actual/symbol/for.js +3 -0
  329. package/actual/symbol/has-instance.js +3 -0
  330. package/actual/symbol/index.js +3 -0
  331. package/actual/symbol/is-concat-spreadable.js +3 -0
  332. package/actual/symbol/iterator.js +3 -0
  333. package/actual/symbol/key-for.js +3 -0
  334. package/actual/symbol/match-all.js +3 -0
  335. package/actual/symbol/match.js +3 -0
  336. package/actual/symbol/replace.js +3 -0
  337. package/actual/symbol/search.js +3 -0
  338. package/actual/symbol/species.js +3 -0
  339. package/actual/symbol/split.js +3 -0
  340. package/actual/symbol/to-primitive.js +3 -0
  341. package/actual/symbol/to-string-tag.js +3 -0
  342. package/actual/symbol/unscopables.js +3 -0
  343. package/actual/typed-array/at.js +3 -0
  344. package/actual/typed-array/copy-within.js +3 -0
  345. package/actual/typed-array/entries.js +3 -0
  346. package/actual/typed-array/every.js +3 -0
  347. package/actual/typed-array/fill.js +3 -0
  348. package/actual/typed-array/filter.js +3 -0
  349. package/actual/typed-array/find-index.js +3 -0
  350. package/actual/typed-array/find-last-index.js +1 -0
  351. package/actual/typed-array/find-last.js +1 -0
  352. package/actual/typed-array/find.js +3 -0
  353. package/actual/typed-array/float32-array.js +4 -0
  354. package/actual/typed-array/float64-array.js +4 -0
  355. package/actual/typed-array/for-each.js +3 -0
  356. package/actual/typed-array/from.js +3 -0
  357. package/actual/typed-array/includes.js +3 -0
  358. package/actual/typed-array/index-of.js +3 -0
  359. package/actual/typed-array/index.js +5 -0
  360. package/actual/typed-array/int16-array.js +4 -0
  361. package/actual/typed-array/int32-array.js +4 -0
  362. package/actual/typed-array/int8-array.js +4 -0
  363. package/actual/typed-array/iterator.js +3 -0
  364. package/actual/typed-array/join.js +3 -0
  365. package/actual/typed-array/keys.js +3 -0
  366. package/actual/typed-array/last-index-of.js +3 -0
  367. package/actual/typed-array/map.js +3 -0
  368. package/actual/typed-array/methods.js +5 -0
  369. package/actual/typed-array/of.js +3 -0
  370. package/actual/typed-array/reduce-right.js +3 -0
  371. package/actual/typed-array/reduce.js +3 -0
  372. package/actual/typed-array/reverse.js +3 -0
  373. package/actual/typed-array/set.js +3 -0
  374. package/actual/typed-array/slice.js +3 -0
  375. package/actual/typed-array/some.js +3 -0
  376. package/actual/typed-array/sort.js +3 -0
  377. package/actual/typed-array/subarray.js +3 -0
  378. package/actual/typed-array/to-locale-string.js +3 -0
  379. package/actual/typed-array/to-string.js +3 -0
  380. package/actual/typed-array/uint16-array.js +4 -0
  381. package/actual/typed-array/uint32-array.js +4 -0
  382. package/actual/typed-array/uint8-array.js +4 -0
  383. package/actual/typed-array/uint8-clamped-array.js +4 -0
  384. package/actual/typed-array/values.js +3 -0
  385. package/actual/unescape.js +3 -0
  386. package/actual/url/index.js +3 -0
  387. package/actual/url/to-json.js +3 -0
  388. package/actual/url-search-params/index.js +3 -0
  389. package/actual/weak-map/index.js +3 -0
  390. package/actual/weak-set/index.js +3 -0
  391. package/es/aggregate-error.js +2 -0
  392. package/es/array-buffer/constructor.js +1 -0
  393. package/es/data-view/index.js +2 -0
  394. package/es/error/constructor.js +4 -0
  395. package/es/error/index.js +5 -0
  396. package/es/error/to-string.js +4 -0
  397. package/es/index.js +4 -0
  398. package/es/number/index.js +1 -0
  399. package/es/number/to-exponential.js +4 -0
  400. package/es/number/virtual/index.js +1 -0
  401. package/es/number/virtual/to-exponential.js +4 -0
  402. package/es/typed-array/float32-array.js +2 -0
  403. package/es/typed-array/float64-array.js +2 -0
  404. package/es/typed-array/int16-array.js +2 -0
  405. package/es/typed-array/int32-array.js +2 -0
  406. package/es/typed-array/int8-array.js +2 -0
  407. package/es/typed-array/uint16-array.js +2 -0
  408. package/es/typed-array/uint32-array.js +2 -0
  409. package/es/typed-array/uint8-array.js +2 -0
  410. package/es/typed-array/uint8-clamped-array.js +2 -0
  411. package/features/aggregate-error.js +1 -1
  412. package/features/array/at.js +1 -1
  413. package/features/array/concat.js +1 -1
  414. package/features/array/copy-within.js +1 -1
  415. package/features/array/entries.js +1 -1
  416. package/features/array/every.js +1 -1
  417. package/features/array/fill.js +1 -1
  418. package/features/array/filter.js +1 -1
  419. package/features/array/find-index.js +1 -1
  420. package/features/array/find-last-index.js +2 -3
  421. package/features/array/find-last.js +2 -3
  422. package/features/array/find.js +1 -1
  423. package/features/array/flat-map.js +1 -1
  424. package/features/array/flat.js +1 -1
  425. package/features/array/for-each.js +1 -1
  426. package/features/array/from.js +1 -1
  427. package/features/array/group-by-to-map.js +3 -0
  428. package/features/array/group-by.js +2 -3
  429. package/features/array/includes.js +1 -1
  430. package/features/array/index-of.js +1 -1
  431. package/features/array/index.js +5 -5
  432. package/features/array/is-array.js +1 -1
  433. package/features/array/iterator.js +1 -1
  434. package/features/array/join.js +1 -1
  435. package/features/array/keys.js +1 -1
  436. package/features/array/last-index-of.js +1 -1
  437. package/features/array/map.js +1 -1
  438. package/features/array/of.js +1 -1
  439. package/features/array/reduce-right.js +1 -1
  440. package/features/array/reduce.js +1 -1
  441. package/features/array/reverse.js +1 -1
  442. package/features/array/slice.js +1 -1
  443. package/features/array/some.js +1 -1
  444. package/features/array/sort.js +1 -1
  445. package/features/array/splice.js +1 -1
  446. package/features/array/to-reversed.js +4 -0
  447. package/features/array/to-sorted.js +5 -0
  448. package/features/array/to-spliced.js +4 -0
  449. package/features/array/values.js +1 -1
  450. package/features/array/virtual/at.js +1 -1
  451. package/features/array/virtual/concat.js +1 -1
  452. package/features/array/virtual/copy-within.js +1 -1
  453. package/features/array/virtual/entries.js +1 -1
  454. package/features/array/virtual/every.js +1 -1
  455. package/features/array/virtual/fill.js +1 -1
  456. package/features/array/virtual/filter.js +1 -1
  457. package/features/array/virtual/find-index.js +1 -1
  458. package/features/array/virtual/find-last-index.js +2 -3
  459. package/features/array/virtual/find-last.js +2 -3
  460. package/features/array/virtual/find.js +1 -1
  461. package/features/array/virtual/flat-map.js +1 -1
  462. package/features/array/virtual/flat.js +1 -1
  463. package/features/array/virtual/for-each.js +1 -1
  464. package/features/array/virtual/group-by-to-map.js +3 -0
  465. package/features/array/virtual/group-by.js +2 -3
  466. package/features/array/virtual/includes.js +1 -1
  467. package/features/array/virtual/index-of.js +1 -1
  468. package/features/array/virtual/index.js +5 -5
  469. package/features/array/virtual/iterator.js +1 -1
  470. package/features/array/virtual/join.js +1 -1
  471. package/features/array/virtual/keys.js +1 -1
  472. package/features/array/virtual/last-index-of.js +1 -1
  473. package/features/array/virtual/map.js +1 -1
  474. package/features/array/virtual/reduce-right.js +1 -1
  475. package/features/array/virtual/reduce.js +1 -1
  476. package/features/array/virtual/reverse.js +1 -1
  477. package/features/array/virtual/slice.js +1 -1
  478. package/features/array/virtual/some.js +1 -1
  479. package/features/array/virtual/sort.js +1 -1
  480. package/features/array/virtual/splice.js +1 -1
  481. package/features/array/virtual/to-reversed.js +4 -0
  482. package/features/array/virtual/to-sorted.js +5 -0
  483. package/features/array/virtual/to-spliced.js +4 -0
  484. package/features/array/virtual/values.js +1 -1
  485. package/features/array/virtual/with.js +4 -0
  486. package/features/array/with.js +4 -0
  487. package/features/array-buffer/constructor.js +1 -1
  488. package/features/array-buffer/index.js +1 -1
  489. package/features/array-buffer/is-view.js +1 -1
  490. package/features/array-buffer/slice.js +1 -1
  491. package/features/clear-immediate.js +1 -1
  492. package/features/data-view/index.js +1 -1
  493. package/features/date/get-year.js +1 -1
  494. package/features/date/index.js +1 -1
  495. package/features/date/now.js +1 -1
  496. package/features/date/set-year.js +1 -1
  497. package/features/date/to-gmt-string.js +1 -1
  498. package/features/date/to-iso-string.js +1 -1
  499. package/features/date/to-json.js +1 -1
  500. package/features/date/to-primitive.js +1 -1
  501. package/features/date/to-string.js +1 -1
  502. package/features/dom-collections/for-each.js +1 -1
  503. package/features/dom-collections/index.js +1 -1
  504. package/features/dom-collections/iterator.js +1 -1
  505. package/features/dom-exception/constructor.js +3 -0
  506. package/features/dom-exception/index.js +3 -0
  507. package/features/dom-exception/to-string-tag.js +3 -0
  508. package/features/error/constructor.js +3 -0
  509. package/features/error/index.js +3 -0
  510. package/features/error/to-string.js +3 -0
  511. package/features/escape.js +1 -1
  512. package/features/function/bind.js +1 -1
  513. package/features/function/has-instance.js +1 -1
  514. package/features/function/index.js +4 -1
  515. package/features/function/is-callable.js +4 -0
  516. package/features/function/is-constructor.js +4 -0
  517. package/features/function/name.js +1 -1
  518. package/features/function/un-this.js +4 -0
  519. package/features/function/virtual/bind.js +1 -1
  520. package/features/function/virtual/index.js +2 -1
  521. package/features/function/virtual/un-this.js +4 -0
  522. package/features/get-iterator-method.js +1 -1
  523. package/features/get-iterator.js +1 -1
  524. package/features/global-this.js +1 -1
  525. package/features/index.js +22 -0
  526. package/features/instance/bind.js +1 -1
  527. package/features/instance/code-point-at.js +1 -1
  528. package/features/instance/concat.js +1 -1
  529. package/features/instance/copy-within.js +1 -1
  530. package/features/instance/ends-with.js +1 -1
  531. package/features/instance/entries.js +1 -1
  532. package/features/instance/every.js +1 -1
  533. package/features/instance/fill.js +1 -1
  534. package/features/instance/filter.js +1 -1
  535. package/features/instance/find-index.js +1 -1
  536. package/features/instance/find-last-index.js +2 -8
  537. package/features/instance/find-last.js +2 -8
  538. package/features/instance/find.js +1 -1
  539. package/features/instance/flags.js +1 -1
  540. package/features/instance/flat-map.js +1 -1
  541. package/features/instance/flat.js +1 -1
  542. package/features/instance/for-each.js +1 -1
  543. package/features/instance/group-by-to-map.js +3 -0
  544. package/features/instance/group-by.js +2 -8
  545. package/features/instance/includes.js +1 -1
  546. package/features/instance/index-of.js +1 -1
  547. package/features/instance/keys.js +1 -1
  548. package/features/instance/last-index-of.js +1 -1
  549. package/features/instance/map.js +1 -1
  550. package/features/instance/match-all.js +1 -1
  551. package/features/instance/pad-end.js +1 -1
  552. package/features/instance/pad-start.js +1 -1
  553. package/features/instance/reduce-right.js +1 -1
  554. package/features/instance/reduce.js +1 -1
  555. package/features/instance/repeat.js +1 -1
  556. package/features/instance/replace-all.js +1 -1
  557. package/features/instance/reverse.js +1 -1
  558. package/features/instance/slice.js +1 -1
  559. package/features/instance/some.js +1 -1
  560. package/features/instance/sort.js +1 -1
  561. package/features/instance/splice.js +1 -1
  562. package/features/instance/starts-with.js +1 -1
  563. package/features/instance/to-reversed.js +9 -0
  564. package/features/instance/to-sorted.js +9 -0
  565. package/features/instance/to-spliced.js +9 -0
  566. package/features/instance/trim-end.js +1 -1
  567. package/features/instance/trim-left.js +1 -1
  568. package/features/instance/trim-right.js +1 -1
  569. package/features/instance/trim-start.js +1 -1
  570. package/features/instance/trim.js +1 -1
  571. package/features/instance/un-this.js +9 -0
  572. package/features/instance/values.js +1 -1
  573. package/features/instance/with.js +9 -0
  574. package/features/is-iterable.js +1 -1
  575. package/features/iterator/index.js +2 -0
  576. package/features/iterator/to-async.js +8 -0
  577. package/features/json/index.js +1 -1
  578. package/features/json/stringify.js +1 -1
  579. package/features/json/to-string-tag.js +1 -1
  580. package/features/map/index.js +1 -1
  581. package/features/math/acosh.js +1 -1
  582. package/features/math/asinh.js +1 -1
  583. package/features/math/atanh.js +1 -1
  584. package/features/math/cbrt.js +1 -1
  585. package/features/math/clz32.js +1 -1
  586. package/features/math/cosh.js +1 -1
  587. package/features/math/expm1.js +1 -1
  588. package/features/math/fround.js +1 -1
  589. package/features/math/hypot.js +1 -1
  590. package/features/math/imul.js +1 -1
  591. package/features/math/index.js +1 -1
  592. package/features/math/log10.js +1 -1
  593. package/features/math/log1p.js +1 -1
  594. package/features/math/log2.js +1 -1
  595. package/features/math/sign.js +1 -1
  596. package/features/math/sinh.js +1 -1
  597. package/features/math/tanh.js +1 -1
  598. package/features/math/to-string-tag.js +1 -1
  599. package/features/math/trunc.js +1 -1
  600. package/features/number/constructor.js +1 -1
  601. package/features/number/epsilon.js +1 -1
  602. package/features/number/index.js +1 -1
  603. package/features/number/is-finite.js +1 -1
  604. package/features/number/is-integer.js +1 -1
  605. package/features/number/is-nan.js +1 -1
  606. package/features/number/is-safe-integer.js +1 -1
  607. package/features/number/max-safe-integer.js +1 -1
  608. package/features/number/min-safe-integer.js +1 -1
  609. package/features/number/parse-float.js +1 -1
  610. package/features/number/parse-int.js +1 -1
  611. package/features/number/to-exponential.js +3 -0
  612. package/features/number/to-fixed.js +1 -1
  613. package/features/number/to-precision.js +1 -1
  614. package/features/number/virtual/index.js +1 -1
  615. package/features/number/virtual/to-exponential.js +3 -0
  616. package/features/number/virtual/to-fixed.js +1 -1
  617. package/features/number/virtual/to-precision.js +1 -1
  618. package/features/object/assign.js +1 -1
  619. package/features/object/create.js +1 -1
  620. package/features/object/define-getter.js +1 -1
  621. package/features/object/define-properties.js +1 -1
  622. package/features/object/define-property.js +1 -1
  623. package/features/object/define-setter.js +1 -1
  624. package/features/object/entries.js +1 -1
  625. package/features/object/freeze.js +1 -1
  626. package/features/object/from-entries.js +1 -1
  627. package/features/object/get-own-property-descriptor.js +1 -1
  628. package/features/object/get-own-property-descriptors.js +1 -1
  629. package/features/object/get-own-property-names.js +1 -1
  630. package/features/object/get-own-property-symbols.js +1 -1
  631. package/features/object/get-prototype-of.js +1 -1
  632. package/features/object/has-own.js +1 -1
  633. package/features/object/index.js +1 -1
  634. package/features/object/is-extensible.js +1 -1
  635. package/features/object/is-frozen.js +1 -1
  636. package/features/object/is-sealed.js +1 -1
  637. package/features/object/is.js +1 -1
  638. package/features/object/keys.js +1 -1
  639. package/features/object/lookup-getter.js +1 -1
  640. package/features/object/lookup-setter.js +1 -1
  641. package/features/object/prevent-extensions.js +1 -1
  642. package/features/object/seal.js +1 -1
  643. package/features/object/set-prototype-of.js +1 -1
  644. package/features/object/to-string.js +1 -1
  645. package/features/object/values.js +1 -1
  646. package/features/parse-float.js +1 -1
  647. package/features/parse-int.js +1 -1
  648. package/features/promise/all-settled.js +1 -1
  649. package/features/promise/any.js +1 -1
  650. package/features/promise/finally.js +1 -1
  651. package/features/promise/index.js +1 -1
  652. package/features/queue-microtask.js +1 -1
  653. package/features/reflect/apply.js +1 -1
  654. package/features/reflect/construct.js +1 -1
  655. package/features/reflect/define-property.js +1 -1
  656. package/features/reflect/delete-property.js +1 -1
  657. package/features/reflect/get-own-property-descriptor.js +1 -1
  658. package/features/reflect/get-prototype-of.js +1 -1
  659. package/features/reflect/get.js +1 -1
  660. package/features/reflect/has.js +1 -1
  661. package/features/reflect/index.js +1 -1
  662. package/features/reflect/is-extensible.js +1 -1
  663. package/features/reflect/own-keys.js +1 -1
  664. package/features/reflect/prevent-extensions.js +1 -1
  665. package/features/reflect/set-prototype-of.js +1 -1
  666. package/features/reflect/set.js +1 -1
  667. package/features/regexp/constructor.js +1 -1
  668. package/features/regexp/dot-all.js +1 -1
  669. package/features/regexp/flags.js +1 -1
  670. package/features/regexp/index.js +1 -1
  671. package/features/regexp/match.js +1 -1
  672. package/features/regexp/replace.js +1 -1
  673. package/features/regexp/search.js +1 -1
  674. package/features/regexp/split.js +1 -1
  675. package/features/regexp/sticky.js +1 -1
  676. package/features/regexp/test.js +1 -1
  677. package/features/regexp/to-string.js +1 -1
  678. package/features/set/index.js +1 -1
  679. package/features/set-immediate.js +1 -1
  680. package/features/set-interval.js +1 -1
  681. package/features/set-timeout.js +1 -1
  682. package/features/string/anchor.js +1 -1
  683. package/features/string/at.js +1 -1
  684. package/features/string/big.js +1 -1
  685. package/features/string/blink.js +1 -1
  686. package/features/string/bold.js +1 -1
  687. package/features/string/code-point-at.js +1 -1
  688. package/features/string/cooked.js +4 -0
  689. package/features/string/ends-with.js +1 -1
  690. package/features/string/fixed.js +1 -1
  691. package/features/string/fontcolor.js +1 -1
  692. package/features/string/fontsize.js +1 -1
  693. package/features/string/from-code-point.js +1 -1
  694. package/features/string/includes.js +1 -1
  695. package/features/string/index.js +3 -3
  696. package/features/string/italics.js +1 -1
  697. package/features/string/iterator.js +1 -1
  698. package/features/string/link.js +1 -1
  699. package/features/string/match-all.js +1 -1
  700. package/features/string/match.js +1 -1
  701. package/features/string/pad-end.js +1 -1
  702. package/features/string/pad-start.js +1 -1
  703. package/features/string/raw.js +1 -1
  704. package/features/string/repeat.js +1 -1
  705. package/features/string/replace-all.js +1 -1
  706. package/features/string/replace.js +1 -1
  707. package/features/string/search.js +1 -1
  708. package/features/string/small.js +1 -1
  709. package/features/string/split.js +1 -1
  710. package/features/string/starts-with.js +1 -1
  711. package/features/string/strike.js +1 -1
  712. package/features/string/sub.js +1 -1
  713. package/features/string/substr.js +1 -1
  714. package/features/string/sup.js +1 -1
  715. package/features/string/trim-end.js +1 -1
  716. package/features/string/trim-left.js +1 -1
  717. package/features/string/trim-right.js +1 -1
  718. package/features/string/trim-start.js +1 -1
  719. package/features/string/trim.js +1 -1
  720. package/features/string/virtual/anchor.js +1 -1
  721. package/features/string/virtual/at.js +1 -1
  722. package/features/string/virtual/big.js +1 -1
  723. package/features/string/virtual/blink.js +1 -1
  724. package/features/string/virtual/bold.js +1 -1
  725. package/features/string/virtual/code-point-at.js +1 -1
  726. package/features/string/virtual/ends-with.js +1 -1
  727. package/features/string/virtual/fixed.js +1 -1
  728. package/features/string/virtual/fontcolor.js +1 -1
  729. package/features/string/virtual/fontsize.js +1 -1
  730. package/features/string/virtual/includes.js +1 -1
  731. package/features/string/virtual/index.js +1 -1
  732. package/features/string/virtual/italics.js +1 -1
  733. package/features/string/virtual/iterator.js +1 -1
  734. package/features/string/virtual/link.js +1 -1
  735. package/features/string/virtual/match-all.js +1 -1
  736. package/features/string/virtual/pad-end.js +1 -1
  737. package/features/string/virtual/pad-start.js +1 -1
  738. package/features/string/virtual/repeat.js +1 -1
  739. package/features/string/virtual/replace-all.js +1 -1
  740. package/features/string/virtual/small.js +1 -1
  741. package/features/string/virtual/starts-with.js +1 -1
  742. package/features/string/virtual/strike.js +1 -1
  743. package/features/string/virtual/sub.js +1 -1
  744. package/features/string/virtual/substr.js +1 -1
  745. package/features/string/virtual/sup.js +1 -1
  746. package/features/string/virtual/trim-end.js +1 -1
  747. package/features/string/virtual/trim-left.js +1 -1
  748. package/features/string/virtual/trim-right.js +1 -1
  749. package/features/string/virtual/trim-start.js +1 -1
  750. package/features/string/virtual/trim.js +1 -1
  751. package/features/structured-clone.js +3 -0
  752. package/features/symbol/async-iterator.js +1 -1
  753. package/features/symbol/for.js +1 -1
  754. package/features/symbol/has-instance.js +1 -1
  755. package/features/symbol/index.js +1 -1
  756. package/features/symbol/is-concat-spreadable.js +1 -1
  757. package/features/symbol/iterator.js +1 -1
  758. package/features/symbol/key-for.js +1 -1
  759. package/features/symbol/match-all.js +1 -1
  760. package/features/symbol/match.js +1 -1
  761. package/features/symbol/replace.js +1 -1
  762. package/features/symbol/search.js +1 -1
  763. package/features/symbol/species.js +1 -1
  764. package/features/symbol/split.js +1 -1
  765. package/features/symbol/to-primitive.js +1 -1
  766. package/features/symbol/to-string-tag.js +1 -1
  767. package/features/symbol/unscopables.js +1 -1
  768. package/features/typed-array/at.js +1 -1
  769. package/features/typed-array/copy-within.js +1 -1
  770. package/features/typed-array/entries.js +1 -1
  771. package/features/typed-array/every.js +1 -1
  772. package/features/typed-array/fill.js +1 -1
  773. package/features/typed-array/filter.js +1 -1
  774. package/features/typed-array/find-index.js +1 -1
  775. package/features/typed-array/find-last-index.js +3 -1
  776. package/features/typed-array/find-last.js +3 -1
  777. package/features/typed-array/find.js +1 -1
  778. package/features/typed-array/float32-array.js +1 -1
  779. package/features/typed-array/float64-array.js +1 -1
  780. package/features/typed-array/for-each.js +1 -1
  781. package/features/typed-array/from.js +1 -1
  782. package/features/typed-array/includes.js +1 -1
  783. package/features/typed-array/index-of.js +1 -1
  784. package/features/typed-array/index.js +5 -3
  785. package/features/typed-array/int16-array.js +1 -1
  786. package/features/typed-array/int32-array.js +1 -1
  787. package/features/typed-array/int8-array.js +1 -1
  788. package/features/typed-array/iterator.js +1 -1
  789. package/features/typed-array/join.js +1 -1
  790. package/features/typed-array/keys.js +1 -1
  791. package/features/typed-array/last-index-of.js +1 -1
  792. package/features/typed-array/map.js +1 -1
  793. package/features/typed-array/methods.js +5 -3
  794. package/features/typed-array/of.js +1 -1
  795. package/features/typed-array/reduce-right.js +1 -1
  796. package/features/typed-array/reduce.js +1 -1
  797. package/features/typed-array/reverse.js +1 -1
  798. package/features/typed-array/set.js +1 -1
  799. package/features/typed-array/slice.js +1 -1
  800. package/features/typed-array/some.js +1 -1
  801. package/features/typed-array/sort.js +1 -1
  802. package/features/typed-array/subarray.js +1 -1
  803. package/features/typed-array/to-locale-string.js +1 -1
  804. package/features/typed-array/to-reversed.js +1 -0
  805. package/features/typed-array/to-sorted.js +2 -0
  806. package/features/typed-array/to-spliced.js +1 -0
  807. package/features/typed-array/to-string.js +1 -1
  808. package/features/typed-array/uint16-array.js +1 -1
  809. package/features/typed-array/uint32-array.js +1 -1
  810. package/features/typed-array/uint8-array.js +1 -1
  811. package/features/typed-array/uint8-clamped-array.js +1 -1
  812. package/features/typed-array/values.js +1 -1
  813. package/features/typed-array/with.js +1 -0
  814. package/features/unescape.js +1 -1
  815. package/features/url/index.js +1 -1
  816. package/features/url/to-json.js +1 -1
  817. package/features/url-search-params/index.js +1 -1
  818. package/features/weak-map/index.js +1 -1
  819. package/features/weak-set/index.js +1 -1
  820. package/internals/array-buffer-view-core.js +5 -5
  821. package/internals/array-buffer.js +1 -1
  822. package/internals/array-from-constructor-and-list.js +3 -1
  823. package/internals/array-group-by.js +1 -0
  824. package/internals/array-slice-simple.js +17 -0
  825. package/internals/array-sort.js +1 -1
  826. package/internals/array-to-reversed.js +11 -0
  827. package/internals/array-to-spliced.js +35 -0
  828. package/internals/array-with.js +18 -0
  829. package/internals/async-from-sync-iterator.js +3 -1
  830. package/internals/async-iterator-create-proxy.js +3 -1
  831. package/internals/clear-error-stack.js +1 -8
  832. package/internals/copy-constructor-properties.js +4 -2
  833. package/internals/create-iterator-constructor.js +2 -2
  834. package/internals/dom-exception-constants.js +27 -0
  835. package/internals/error-to-string.js +30 -0
  836. package/internals/ie8-dom-define.js +1 -1
  837. package/internals/ieee754.js +20 -5
  838. package/internals/is-constructor.js +12 -3
  839. package/internals/iterator-create-proxy.js +3 -1
  840. package/internals/math-log10.js +7 -0
  841. package/internals/object-get-own-property-names-external.js +1 -1
  842. package/internals/queue.js +23 -0
  843. package/internals/regexp-exec.js +1 -2
  844. package/internals/regexp-sticky-helpers.js +14 -2
  845. package/internals/set-to-string-tag.js +4 -3
  846. package/internals/shared.js +1 -1
  847. package/internals/string-punycode-to-ascii.js +8 -6
  848. package/internals/try-node-require.js +8 -0
  849. package/internals/wrap-error-constructor-with-cause.js +60 -0
  850. package/modules/es.aggregate-error.cause.js +21 -0
  851. package/modules/es.aggregate-error.js +3 -3
  852. package/modules/es.array.iterator.js +9 -1
  853. package/modules/es.error.cause.js +56 -0
  854. package/modules/es.error.to-string.js +10 -0
  855. package/modules/es.function.name.js +1 -1
  856. package/modules/es.math.log10.js +2 -6
  857. package/modules/es.number.to-exponential.js +100 -0
  858. package/modules/es.number.to-fixed.js +1 -0
  859. package/modules/es.object.define-property.js +2 -2
  860. package/modules/es.promise.js +47 -44
  861. package/modules/es.regexp.constructor.js +4 -3
  862. package/modules/es.regexp.sticky.js +2 -2
  863. package/modules/es.string.at-alternative.js +1 -1
  864. package/modules/es.string.split.js +1 -1
  865. package/modules/es.typed-array.iterator.js +14 -7
  866. package/modules/es.weak-map.js +5 -5
  867. package/modules/esnext.array.group-by-to-map.js +38 -0
  868. package/modules/esnext.array.group-by.js +1 -2
  869. package/modules/esnext.array.to-reversed.js +18 -0
  870. package/modules/esnext.array.to-sorted.js +25 -0
  871. package/modules/esnext.array.to-spliced.js +20 -0
  872. package/modules/esnext.array.with.js +15 -0
  873. package/modules/esnext.function.is-callable.js +29 -0
  874. package/modules/esnext.function.is-constructor.js +8 -0
  875. package/modules/esnext.function.un-this.js +11 -0
  876. package/modules/esnext.iterator.to-async.js +10 -0
  877. package/modules/esnext.map.merge.js +1 -1
  878. package/modules/esnext.observable.js +69 -54
  879. package/modules/esnext.string.at.js +10 -3
  880. package/modules/esnext.string.cooked.js +30 -0
  881. package/modules/esnext.typed-array.from-async.js +1 -0
  882. package/modules/esnext.typed-array.group-by.js +1 -0
  883. package/modules/esnext.typed-array.to-reversed.js +13 -0
  884. package/modules/esnext.typed-array.to-sorted.js +19 -0
  885. package/modules/esnext.typed-array.to-spliced.js +15 -0
  886. package/modules/esnext.typed-array.with.js +13 -0
  887. package/modules/web.dom-exception.constructor.js +141 -0
  888. package/modules/web.dom-exception.stack.js +58 -0
  889. package/modules/web.dom-exception.to-string-tag.js +6 -0
  890. package/modules/web.structured-clone.js +461 -0
  891. package/modules/web.url-search-params.js +76 -67
  892. package/modules/web.url.js +612 -590
  893. package/package.json +2 -2
  894. package/proposals/accessible-object-hasownproperty.js +0 -1
  895. package/proposals/array-flat-map.js +5 -0
  896. package/proposals/array-from-async.js +1 -0
  897. package/proposals/array-grouping.js +2 -0
  898. package/proposals/array-includes.js +3 -0
  899. package/proposals/array-is-template-object.js +1 -0
  900. package/proposals/array-last.js +1 -0
  901. package/proposals/async-iteration.js +2 -0
  902. package/proposals/change-array-by-copy.js +9 -0
  903. package/proposals/collection-methods.js +1 -0
  904. package/proposals/collection-of-from.js +1 -0
  905. package/proposals/efficient-64-bit-arithmetic.js +1 -0
  906. package/proposals/error-cause.js +3 -0
  907. package/proposals/function-is-callable-is-constructor.js +3 -0
  908. package/proposals/function-un-this.js +2 -0
  909. package/proposals/global-this.js +1 -0
  910. package/proposals/index.js +1 -0
  911. package/proposals/iterator-helpers.js +2 -0
  912. package/proposals/keys-composition.js +1 -0
  913. package/proposals/map-update-or-insert.js +1 -0
  914. package/proposals/map-upsert.js +1 -1
  915. package/proposals/math-extensions.js +1 -0
  916. package/proposals/math-signbit.js +1 -0
  917. package/proposals/number-from-string.js +1 -0
  918. package/proposals/object-from-entries.js +2 -0
  919. package/proposals/object-getownpropertydescriptors.js +2 -0
  920. package/proposals/object-iteration.js +1 -0
  921. package/proposals/object-values-entries.js +3 -0
  922. package/proposals/observable.js +1 -0
  923. package/proposals/promise-all-settled.js +1 -1
  924. package/proposals/promise-any.js +1 -0
  925. package/proposals/promise-finally.js +2 -0
  926. package/proposals/promise-try.js +1 -0
  927. package/proposals/reflect-metadata.js +1 -0
  928. package/proposals/regexp-dotall-flag.js +5 -0
  929. package/proposals/regexp-named-groups.js +4 -0
  930. package/proposals/relative-indexing-method.js +0 -1
  931. package/proposals/seeded-random.js +1 -0
  932. package/proposals/set-methods.js +1 -0
  933. package/proposals/string-at.js +1 -0
  934. package/proposals/string-code-points.js +1 -0
  935. package/proposals/string-cooked.js +2 -0
  936. package/proposals/string-left-right-trim.js +3 -0
  937. package/proposals/string-match-all.js +1 -1
  938. package/proposals/string-padding.js +3 -0
  939. package/proposals/string-replace-all.js +1 -0
  940. package/proposals/symbol-description.js +2 -0
  941. package/proposals/url.js +1 -0
  942. package/proposals/well-formed-stringify.js +2 -0
  943. package/stable/dom-exception/constructor.js +6 -0
  944. package/stable/dom-exception/index.js +7 -0
  945. package/stable/dom-exception/to-string-tag.js +3 -0
  946. package/stable/error/constructor.js +3 -0
  947. package/stable/error/index.js +3 -0
  948. package/stable/error/to-string.js +3 -0
  949. package/stable/index.js +8 -0
  950. package/stable/number/to-exponential.js +3 -0
  951. package/stable/number/virtual/to-exponential.js +3 -0
  952. package/stable/structured-clone.js +13 -0
  953. package/stable/symbol/description.js +3 -1
  954. package/stage/0.js +2 -0
  955. package/stage/1.js +1 -2
  956. package/stage/2.js +2 -0
  957. package/stage/3.js +1 -0
  958. package/stage/4.js +2 -0
  959. package/web/dom-exception.js +7 -0
  960. package/web/index.js +4 -0
  961. package/web/structured-clone.js +8 -0
@@ -21,42 +21,51 @@ var hostReportErrors = require('../internals/host-report-errors');
21
21
  var wellKnownSymbol = require('../internals/well-known-symbol');
22
22
  var InternalStateModule = require('../internals/internal-state');
23
23
 
24
- var OBSERVABLE = wellKnownSymbol('observable');
25
- var getInternalState = InternalStateModule.get;
24
+ var $$OBSERVABLE = wellKnownSymbol('observable');
25
+ var OBSERVABLE = 'Observable';
26
+ var SUBSCRIPTION = 'Subscription';
27
+ var SUBSCRIPTION_OBSERVER = 'SubscriptionObserver';
28
+ var getterFor = InternalStateModule.getterFor;
26
29
  var setInternalState = InternalStateModule.set;
30
+ var getObservableInternalState = getterFor(OBSERVABLE);
31
+ var getSubscriptionInternalState = getterFor(SUBSCRIPTION);
32
+ var getSubscriptionObserverInternalState = getterFor(SUBSCRIPTION_OBSERVER);
27
33
  var Array = global.Array;
28
34
 
29
- var cleanupSubscription = function (subscriptionState) {
30
- var cleanup = subscriptionState.cleanup;
31
- if (cleanup) {
32
- subscriptionState.cleanup = undefined;
33
- try {
34
- cleanup();
35
- } catch (error) {
36
- hostReportErrors(error);
37
- }
38
- }
39
- };
40
-
41
- var subscriptionClosed = function (subscriptionState) {
42
- return subscriptionState.observer === undefined;
35
+ var SubscriptionState = function (observer) {
36
+ this.observer = anObject(observer);
37
+ this.cleanup = undefined;
38
+ this.subscriptionObserver = undefined;
43
39
  };
44
40
 
45
- var close = function (subscriptionState) {
46
- var subscription = subscriptionState.facade;
47
- if (!DESCRIPTORS) {
48
- subscription.closed = true;
49
- var subscriptionObserver = subscriptionState.subscriptionObserver;
50
- if (subscriptionObserver) subscriptionObserver.closed = true;
51
- } subscriptionState.observer = undefined;
41
+ SubscriptionState.prototype = {
42
+ type: SUBSCRIPTION,
43
+ clean: function () {
44
+ var cleanup = this.cleanup;
45
+ if (cleanup) {
46
+ this.cleanup = undefined;
47
+ try {
48
+ cleanup();
49
+ } catch (error) {
50
+ hostReportErrors(error);
51
+ }
52
+ }
53
+ },
54
+ close: function () {
55
+ if (!DESCRIPTORS) {
56
+ var subscription = this.facade;
57
+ var subscriptionObserver = this.subscriptionObserver;
58
+ subscription.closed = true;
59
+ if (subscriptionObserver) subscriptionObserver.closed = true;
60
+ } this.observer = undefined;
61
+ },
62
+ isClosed: function () {
63
+ return this.observer === undefined;
64
+ }
52
65
  };
53
66
 
54
67
  var Subscription = function (observer, subscriber) {
55
- var subscriptionState = setInternalState(this, {
56
- cleanup: undefined,
57
- observer: anObject(observer),
58
- subscriptionObserver: undefined
59
- });
68
+ var subscriptionState = setInternalState(this, new SubscriptionState(observer));
60
69
  var start;
61
70
  if (!DESCRIPTORS) this.closed = false;
62
71
  try {
@@ -64,8 +73,8 @@ var Subscription = function (observer, subscriber) {
64
73
  } catch (error) {
65
74
  hostReportErrors(error);
66
75
  }
67
- if (subscriptionClosed(subscriptionState)) return;
68
- var subscriptionObserver = subscriptionState.subscriptionObserver = new SubscriptionObserver(this);
76
+ if (subscriptionState.isClosed()) return;
77
+ var subscriptionObserver = subscriptionState.subscriptionObserver = new SubscriptionObserver(subscriptionState);
69
78
  try {
70
79
  var cleanup = subscriber(subscriptionObserver);
71
80
  var subscription = cleanup;
@@ -75,15 +84,15 @@ var Subscription = function (observer, subscriber) {
75
84
  } catch (error) {
76
85
  subscriptionObserver.error(error);
77
86
  return;
78
- } if (subscriptionClosed(subscriptionState)) cleanupSubscription(subscriptionState);
87
+ } if (subscriptionState.isClosed()) subscriptionState.clean();
79
88
  };
80
89
 
81
90
  Subscription.prototype = redefineAll({}, {
82
91
  unsubscribe: function unsubscribe() {
83
- var subscriptionState = getInternalState(this);
84
- if (!subscriptionClosed(subscriptionState)) {
85
- close(subscriptionState);
86
- cleanupSubscription(subscriptionState);
92
+ var subscriptionState = getSubscriptionInternalState(this);
93
+ if (!subscriptionState.isClosed()) {
94
+ subscriptionState.close();
95
+ subscriptionState.clean();
87
96
  }
88
97
  }
89
98
  });
@@ -91,19 +100,22 @@ Subscription.prototype = redefineAll({}, {
91
100
  if (DESCRIPTORS) defineProperty(Subscription.prototype, 'closed', {
92
101
  configurable: true,
93
102
  get: function () {
94
- return subscriptionClosed(getInternalState(this));
103
+ return getSubscriptionInternalState(this).isClosed();
95
104
  }
96
105
  });
97
106
 
98
- var SubscriptionObserver = function (subscription) {
99
- setInternalState(this, { subscription: subscription });
107
+ var SubscriptionObserver = function (subscriptionState) {
108
+ setInternalState(this, {
109
+ type: SUBSCRIPTION_OBSERVER,
110
+ subscriptionState: subscriptionState
111
+ });
100
112
  if (!DESCRIPTORS) this.closed = false;
101
113
  };
102
114
 
103
115
  SubscriptionObserver.prototype = redefineAll({}, {
104
116
  next: function next(value) {
105
- var subscriptionState = getInternalState(getInternalState(this).subscription);
106
- if (!subscriptionClosed(subscriptionState)) {
117
+ var subscriptionState = getSubscriptionObserverInternalState(this).subscriptionState;
118
+ if (!subscriptionState.isClosed()) {
107
119
  var observer = subscriptionState.observer;
108
120
  try {
109
121
  var nextMethod = getMethod(observer, 'next');
@@ -114,30 +126,30 @@ SubscriptionObserver.prototype = redefineAll({}, {
114
126
  }
115
127
  },
116
128
  error: function error(value) {
117
- var subscriptionState = getInternalState(getInternalState(this).subscription);
118
- if (!subscriptionClosed(subscriptionState)) {
129
+ var subscriptionState = getSubscriptionObserverInternalState(this).subscriptionState;
130
+ if (!subscriptionState.isClosed()) {
119
131
  var observer = subscriptionState.observer;
120
- close(subscriptionState);
132
+ subscriptionState.close();
121
133
  try {
122
134
  var errorMethod = getMethod(observer, 'error');
123
135
  if (errorMethod) call(errorMethod, observer, value);
124
136
  else hostReportErrors(value);
125
137
  } catch (err) {
126
138
  hostReportErrors(err);
127
- } cleanupSubscription(subscriptionState);
139
+ } subscriptionState.clean();
128
140
  }
129
141
  },
130
142
  complete: function complete() {
131
- var subscriptionState = getInternalState(getInternalState(this).subscription);
132
- if (!subscriptionClosed(subscriptionState)) {
143
+ var subscriptionState = getSubscriptionObserverInternalState(this).subscriptionState;
144
+ if (!subscriptionState.isClosed()) {
133
145
  var observer = subscriptionState.observer;
134
- close(subscriptionState);
146
+ subscriptionState.close();
135
147
  try {
136
148
  var completeMethod = getMethod(observer, 'complete');
137
149
  if (completeMethod) call(completeMethod, observer);
138
150
  } catch (error) {
139
151
  hostReportErrors(error);
140
- } cleanupSubscription(subscriptionState);
152
+ } subscriptionState.clean();
141
153
  }
142
154
  }
143
155
  });
@@ -145,13 +157,16 @@ SubscriptionObserver.prototype = redefineAll({}, {
145
157
  if (DESCRIPTORS) defineProperty(SubscriptionObserver.prototype, 'closed', {
146
158
  configurable: true,
147
159
  get: function () {
148
- return subscriptionClosed(getInternalState(getInternalState(this).subscription));
160
+ return getSubscriptionObserverInternalState(this).subscriptionState.isClosed();
149
161
  }
150
162
  });
151
163
 
152
164
  var $Observable = function Observable(subscriber) {
153
165
  anInstance(this, ObservablePrototype);
154
- setInternalState(this, { subscriber: aCallable(subscriber) });
166
+ setInternalState(this, {
167
+ type: OBSERVABLE,
168
+ subscriber: aCallable(subscriber)
169
+ });
155
170
  };
156
171
 
157
172
  var ObservablePrototype = $Observable.prototype;
@@ -163,14 +178,14 @@ redefineAll(ObservablePrototype, {
163
178
  next: observer,
164
179
  error: length > 1 ? arguments[1] : undefined,
165
180
  complete: length > 2 ? arguments[2] : undefined
166
- } : isObject(observer) ? observer : {}, getInternalState(this).subscriber);
181
+ } : isObject(observer) ? observer : {}, getObservableInternalState(this).subscriber);
167
182
  }
168
183
  });
169
184
 
170
185
  redefineAll($Observable, {
171
186
  from: function from(x) {
172
187
  var C = isConstructor(this) ? this : $Observable;
173
- var observableMethod = getMethod(anObject(x), OBSERVABLE);
188
+ var observableMethod = getMethod(anObject(x), $$OBSERVABLE);
174
189
  if (observableMethod) {
175
190
  var observable = anObject(call(observableMethod, x));
176
191
  return observable.constructor === C ? observable : new C(function (observer) {
@@ -201,10 +216,10 @@ redefineAll($Observable, {
201
216
  }
202
217
  });
203
218
 
204
- redefine(ObservablePrototype, OBSERVABLE, function () { return this; });
219
+ redefine(ObservablePrototype, $$OBSERVABLE, function () { return this; });
205
220
 
206
221
  $({ global: true }, {
207
222
  Observable: $Observable
208
223
  });
209
224
 
210
- setSpecies('Observable');
225
+ setSpecies(OBSERVABLE);
@@ -2,15 +2,22 @@
2
2
  var $ = require('../internals/export');
3
3
  var charAt = require('../internals/string-multibyte').charAt;
4
4
  var fails = require('../internals/fails');
5
+ var requireObjectCoercible = require('../internals/require-object-coercible');
6
+ var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');
7
+ var toString = require('../internals/to-string');
5
8
 
6
9
  var FORCED = fails(function () {
7
- return '𠮷'.at(0) !== '𠮷';
10
+ return '𠮷'.at(-2) !== '𠮷';
8
11
  });
9
12
 
10
13
  // `String.prototype.at` method
11
14
  // https://github.com/mathiasbynens/String.prototype.at
12
15
  $({ target: 'String', proto: true, forced: FORCED }, {
13
- at: function at(pos) {
14
- return charAt(this, pos);
16
+ at: function at(index) {
17
+ var S = toString(requireObjectCoercible(this));
18
+ var len = S.length;
19
+ var relativeIndex = toIntegerOrInfinity(index);
20
+ var k = relativeIndex >= 0 ? relativeIndex : len + relativeIndex;
21
+ return (k < 0 || k >= len) ? undefined : charAt(S, k);
15
22
  }
16
23
  });
@@ -0,0 +1,30 @@
1
+ var $ = require('../internals/export');
2
+ var global = require('../internals/global');
3
+ var uncurryThis = require('../internals/function-uncurry-this');
4
+ var toIndexedObject = require('../internals/to-indexed-object');
5
+ var toString = require('../internals/to-string');
6
+ var lengthOfArrayLike = require('../internals/length-of-array-like');
7
+
8
+ var TypeError = global.TypeError;
9
+ var ArrayPrototype = Array.prototype;
10
+ var push = uncurryThis(ArrayPrototype.push);
11
+ var join = uncurryThis(ArrayPrototype.join);
12
+
13
+ // `String.cooked` method
14
+ // https://github.com/tc39/proposal-string-cooked
15
+ $({ target: 'String', stat: true }, {
16
+ cooked: function cooked(template /* , ...substitutions */) {
17
+ var cookedTemplate = toIndexedObject(template);
18
+ var literalSegments = lengthOfArrayLike(cookedTemplate);
19
+ var argumentsLength = arguments.length;
20
+ var elements = [];
21
+ var i = 0;
22
+ while (literalSegments > i) {
23
+ var nextVal = cookedTemplate[i++];
24
+ if (nextVal === undefined) throw TypeError('Incorrect template');
25
+ push(elements, toString(nextVal));
26
+ if (i === literalSegments) return join(elements, '');
27
+ if (i < argumentsLength) push(elements, toString(arguments[i]));
28
+ }
29
+ }
30
+ });
@@ -1,4 +1,5 @@
1
1
  'use strict';
2
+ // TODO: Remove from `core-js@4`
2
3
  var getBuiltIn = require('../internals/get-built-in');
3
4
  var aConstructor = require('../internals/a-constructor');
4
5
  var arrayFromAsync = require('../internals/array-from-async');
@@ -1,4 +1,5 @@
1
1
  'use strict';
2
+ // TODO: Remove from `core-js@4`
2
3
  var ArrayBufferViewCore = require('../internals/array-buffer-view-core');
3
4
  var $groupBy = require('../internals/array-group-by');
4
5
  var typedArraySpeciesConstructor = require('../internals/typed-array-species-constructor');
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+ var arrayToReversed = require('../internals/array-to-reversed');
3
+ var ArrayBufferViewCore = require('../internals/array-buffer-view-core');
4
+
5
+ var aTypedArray = ArrayBufferViewCore.aTypedArray;
6
+ var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
7
+ var TYPED_ARRAY_CONSTRUCTOR = ArrayBufferViewCore.TYPED_ARRAY_CONSTRUCTOR;
8
+
9
+ // `%TypedArray%.prototype.toReversed` method
10
+ // https://tc39.es/proposal-change-array-by-copy/#sec-%typedarray%.prototype.toReversed
11
+ exportTypedArrayMethod('toReversed', function toReversed() {
12
+ return arrayToReversed(aTypedArray(this), this[TYPED_ARRAY_CONSTRUCTOR]);
13
+ });
@@ -0,0 +1,19 @@
1
+ 'use strict';
2
+ var ArrayBufferViewCore = require('../internals/array-buffer-view-core');
3
+ var uncurryThis = require('../internals/function-uncurry-this');
4
+ var aCallable = require('../internals/a-callable');
5
+ var arrayFromConstructorAndList = require('../internals/array-from-constructor-and-list');
6
+
7
+ var aTypedArray = ArrayBufferViewCore.aTypedArray;
8
+ var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
9
+ var TYPED_ARRAY_CONSTRUCTOR = ArrayBufferViewCore.TYPED_ARRAY_CONSTRUCTOR;
10
+ var sort = uncurryThis(ArrayBufferViewCore.TypedArrayPrototype.sort);
11
+
12
+ // `%TypedArray%.prototype.toSorted` method
13
+ // https://tc39.es/proposal-change-array-by-copy/#sec-%typedarray%.prototype.toSorted
14
+ exportTypedArrayMethod('toSorted', function toSorted(compareFn) {
15
+ if (compareFn !== undefined) aCallable(compareFn);
16
+ var O = aTypedArray(this);
17
+ var A = arrayFromConstructorAndList(O[TYPED_ARRAY_CONSTRUCTOR], O);
18
+ return sort(A, compareFn);
19
+ });
@@ -0,0 +1,15 @@
1
+ 'use strict';
2
+ var ArrayBufferViewCore = require('../internals/array-buffer-view-core');
3
+ var arraySlice = require('../internals/array-slice');
4
+ var arrayToSpliced = require('../internals/array-to-spliced');
5
+
6
+ var aTypedArray = ArrayBufferViewCore.aTypedArray;
7
+ var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
8
+ var TYPED_ARRAY_CONSTRUCTOR = ArrayBufferViewCore.TYPED_ARRAY_CONSTRUCTOR;
9
+
10
+ // `%TypedArray%.prototype.toSpliced` method
11
+ // https://tc39.es/proposal-change-array-by-copy/#sec-%typedarray%.prototype.toSpliced
12
+ // eslint-disable-next-line no-unused-vars -- required for .length
13
+ exportTypedArrayMethod('toSpliced', function toSpliced(start, deleteCount /* , ...items */) {
14
+ return arrayToSpliced(aTypedArray(this), this[TYPED_ARRAY_CONSTRUCTOR], arraySlice(arguments));
15
+ });
@@ -0,0 +1,13 @@
1
+ 'use strict';
2
+ var arrayWith = require('../internals/array-with');
3
+ var ArrayBufferViewCore = require('../internals/array-buffer-view-core');
4
+
5
+ var aTypedArray = ArrayBufferViewCore.aTypedArray;
6
+ var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
7
+ var TYPED_ARRAY_CONSTRUCTOR = ArrayBufferViewCore.TYPED_ARRAY_CONSTRUCTOR;
8
+
9
+ // `%TypedArray%.prototype.with` method
10
+ // https://tc39.es/proposal-change-array-by-copy/#sec-%typedarray%.prototype.with
11
+ exportTypedArrayMethod('with', { 'with': function (index, value) {
12
+ return arrayWith(aTypedArray(this), this[TYPED_ARRAY_CONSTRUCTOR], index, value);
13
+ } }['with']);
@@ -0,0 +1,141 @@
1
+ 'use strict';
2
+ var $ = require('../internals/export');
3
+ var tryNodeRequire = require('../internals/try-node-require');
4
+ var getBuiltIn = require('../internals/get-built-in');
5
+ var fails = require('../internals/fails');
6
+ var create = require('../internals/object-create');
7
+ var createPropertyDescriptor = require('../internals/create-property-descriptor');
8
+ var defineProperty = require('../internals/object-define-property').f;
9
+ var defineProperties = require('../internals/object-define-properties');
10
+ var redefine = require('../internals/redefine');
11
+ var hasOwn = require('../internals/has-own-property');
12
+ var anInstance = require('../internals/an-instance');
13
+ var anObject = require('../internals/an-object');
14
+ var errorToString = require('../internals/error-to-string');
15
+ var normalizeStringArgument = require('../internals/normalize-string-argument');
16
+ var DOMExceptionConstants = require('../internals/dom-exception-constants');
17
+ var clearErrorStack = require('../internals/clear-error-stack');
18
+ var InternalStateModule = require('../internals/internal-state');
19
+ var DESCRIPTORS = require('../internals/descriptors');
20
+ var IS_PURE = require('../internals/is-pure');
21
+
22
+ var DOM_EXCEPTION = 'DOMException';
23
+ var DATA_CLONE_ERR = 'DATA_CLONE_ERR';
24
+ var Error = getBuiltIn('Error');
25
+ // NodeJS < 17.0 does not expose `DOMException` to global
26
+ var NativeDOMException = getBuiltIn(DOM_EXCEPTION) || (function () {
27
+ try {
28
+ // NodeJS < 15.0 does not expose `MessageChannel` to global
29
+ var MessageChannel = getBuiltIn('MessageChannel') || tryNodeRequire('worker_threads').MessageChannel;
30
+ // eslint-disable-next-line es/no-weak-map, unicorn/require-post-message-target-origin -- safe
31
+ new MessageChannel().port1.postMessage(new WeakMap());
32
+ } catch (error) {
33
+ if (error.name == DATA_CLONE_ERR && error.code == 25) return error.constructor;
34
+ }
35
+ })();
36
+ var NativeDOMExceptionPrototype = NativeDOMException && NativeDOMException.prototype;
37
+ var ErrorPrototype = Error.prototype;
38
+ var setInternalState = InternalStateModule.set;
39
+ var getInternalState = InternalStateModule.getterFor(DOM_EXCEPTION);
40
+ var HAS_STACK = 'stack' in Error(DOM_EXCEPTION);
41
+
42
+ var codeFor = function (name) {
43
+ return hasOwn(DOMExceptionConstants, name) && DOMExceptionConstants[name].m ? DOMExceptionConstants[name].c : 0;
44
+ };
45
+
46
+ var $DOMException = function DOMException() {
47
+ anInstance(this, DOMExceptionPrototype);
48
+ var argumentsLength = arguments.length;
49
+ var message = normalizeStringArgument(argumentsLength < 1 ? undefined : arguments[0]);
50
+ var name = normalizeStringArgument(argumentsLength < 2 ? undefined : arguments[1], 'Error');
51
+ var code = codeFor(name);
52
+ setInternalState(this, {
53
+ type: DOM_EXCEPTION,
54
+ name: name,
55
+ message: message,
56
+ code: code
57
+ });
58
+ if (!DESCRIPTORS) {
59
+ this.name = name;
60
+ this.message = message;
61
+ this.code = code;
62
+ }
63
+ if (HAS_STACK) {
64
+ var error = Error(message);
65
+ error.name = DOM_EXCEPTION;
66
+ defineProperty(this, 'stack', createPropertyDescriptor(1, clearErrorStack(error.stack, 1)));
67
+ }
68
+ };
69
+
70
+ var DOMExceptionPrototype = $DOMException.prototype = create(ErrorPrototype);
71
+
72
+ var createGetterDescriptor = function (get) {
73
+ return { enumerable: true, configurable: true, get: get };
74
+ };
75
+
76
+ var getterFor = function (key) {
77
+ return createGetterDescriptor(function () {
78
+ return getInternalState(this)[key];
79
+ });
80
+ };
81
+
82
+ if (DESCRIPTORS) defineProperties(DOMExceptionPrototype, {
83
+ name: getterFor('name'),
84
+ message: getterFor('message'),
85
+ code: getterFor('code')
86
+ });
87
+
88
+ defineProperty(DOMExceptionPrototype, 'constructor', createPropertyDescriptor(1, $DOMException));
89
+
90
+ // FF36- DOMException is a function, but can't be constructed
91
+ var INCORRECT_CONSTRUCTOR = fails(function () {
92
+ return !(new NativeDOMException() instanceof Error);
93
+ });
94
+
95
+ // Safari 10.1 / Chrome 32- / IE8- DOMException.prototype.toString bugs
96
+ var INCORRECT_TO_STRING = INCORRECT_CONSTRUCTOR || fails(function () {
97
+ return ErrorPrototype.toString !== errorToString || String(new NativeDOMException(1, 2)) !== '2: 1';
98
+ });
99
+
100
+ // Deno 1.6.3- DOMException.prototype.code just missed
101
+ var INCORRECT_CODE = INCORRECT_CONSTRUCTOR || fails(function () {
102
+ return new NativeDOMException(1, 'DataCloneError').code !== 25;
103
+ });
104
+
105
+ // Deno 1.6.3- DOMException constants just missed
106
+ var MISSED_CONSTANTS = INCORRECT_CONSTRUCTOR
107
+ || NativeDOMException[DATA_CLONE_ERR] !== 25
108
+ || NativeDOMExceptionPrototype[DATA_CLONE_ERR] !== 25;
109
+
110
+ var FORCED_CONSTRUCTOR = IS_PURE ? INCORRECT_TO_STRING || INCORRECT_CODE || MISSED_CONSTANTS : INCORRECT_CONSTRUCTOR;
111
+
112
+ // `DOMException` constructor
113
+ // https://webidl.spec.whatwg.org/#idl-DOMException
114
+ $({ global: true, forced: FORCED_CONSTRUCTOR }, {
115
+ DOMException: FORCED_CONSTRUCTOR ? $DOMException : NativeDOMException
116
+ });
117
+
118
+ var PolyfilledDOMException = getBuiltIn(DOM_EXCEPTION);
119
+ var PolyfilledDOMExceptionPrototype = PolyfilledDOMException.prototype;
120
+
121
+ if (INCORRECT_TO_STRING && (IS_PURE || NativeDOMException === PolyfilledDOMException)) {
122
+ redefine(PolyfilledDOMExceptionPrototype, 'toString', errorToString);
123
+ }
124
+
125
+ if (INCORRECT_CODE && DESCRIPTORS && NativeDOMException === PolyfilledDOMException) {
126
+ defineProperty(PolyfilledDOMExceptionPrototype, 'code', createGetterDescriptor(function () {
127
+ return codeFor(anObject(this).name);
128
+ }));
129
+ }
130
+
131
+ for (var key in DOMExceptionConstants) if (hasOwn(DOMExceptionConstants, key)) {
132
+ var constant = DOMExceptionConstants[key];
133
+ var constantName = constant.s;
134
+ var descriptor = createPropertyDescriptor(6, constant.c);
135
+ if (!hasOwn(PolyfilledDOMException, constantName)) {
136
+ defineProperty(PolyfilledDOMException, constantName, descriptor);
137
+ }
138
+ if (!hasOwn(PolyfilledDOMExceptionPrototype, constantName)) {
139
+ defineProperty(PolyfilledDOMExceptionPrototype, constantName, descriptor);
140
+ }
141
+ }
@@ -0,0 +1,58 @@
1
+ 'use strict';
2
+ var $ = require('../internals/export');
3
+ var getBuiltIn = require('../internals/get-built-in');
4
+ var createPropertyDescriptor = require('../internals/create-property-descriptor');
5
+ var defineProperty = require('../internals/object-define-property').f;
6
+ var hasOwn = require('../internals/has-own-property');
7
+ var anInstance = require('../internals/an-instance');
8
+ var inheritIfRequired = require('../internals/inherit-if-required');
9
+ var normalizeStringArgument = require('../internals/normalize-string-argument');
10
+ var DOMExceptionConstants = require('../internals/dom-exception-constants');
11
+ var clearErrorStack = require('../internals/clear-error-stack');
12
+ var IS_PURE = require('../internals/is-pure');
13
+
14
+ var DOM_EXCEPTION = 'DOMException';
15
+ var Error = getBuiltIn('Error');
16
+ var NativeDOMException = getBuiltIn(DOM_EXCEPTION);
17
+
18
+ var $DOMException = function DOMException() {
19
+ anInstance(this, DOMExceptionPrototype);
20
+ var argumentsLength = arguments.length;
21
+ var message = normalizeStringArgument(argumentsLength < 1 ? undefined : arguments[0]);
22
+ var name = normalizeStringArgument(argumentsLength < 2 ? undefined : arguments[1], 'Error');
23
+ var that = new NativeDOMException(message, name);
24
+ var error = Error(message);
25
+ error.name = DOM_EXCEPTION;
26
+ defineProperty(that, 'stack', createPropertyDescriptor(1, clearErrorStack(error.stack, 1)));
27
+ inheritIfRequired(that, this, $DOMException);
28
+ return that;
29
+ };
30
+
31
+ var DOMExceptionPrototype = $DOMException.prototype = NativeDOMException.prototype;
32
+
33
+ var ERROR_HAS_STACK = 'stack' in Error(DOM_EXCEPTION);
34
+ var DOM_EXCEPTION_HAS_STACK = 'stack' in new NativeDOMException(1, 2);
35
+ var FORCED_CONSTRUCTOR = ERROR_HAS_STACK && !DOM_EXCEPTION_HAS_STACK;
36
+
37
+ // `DOMException` constructor patch for `.stack` where it's required
38
+ // https://webidl.spec.whatwg.org/#es-DOMException-specialness
39
+ $({ global: true, forced: IS_PURE || FORCED_CONSTRUCTOR }, { // TODO: fix export logic
40
+ DOMException: FORCED_CONSTRUCTOR ? $DOMException : NativeDOMException
41
+ });
42
+
43
+ var PolyfilledDOMException = getBuiltIn(DOM_EXCEPTION);
44
+ var PolyfilledDOMExceptionPrototype = PolyfilledDOMException.prototype;
45
+
46
+ if (PolyfilledDOMExceptionPrototype.constructor !== PolyfilledDOMException) {
47
+ if (!IS_PURE) {
48
+ defineProperty(PolyfilledDOMExceptionPrototype, 'constructor', createPropertyDescriptor(1, PolyfilledDOMException));
49
+ }
50
+
51
+ for (var key in DOMExceptionConstants) if (hasOwn(DOMExceptionConstants, key)) {
52
+ var constant = DOMExceptionConstants[key];
53
+ var constantName = constant.s;
54
+ if (!hasOwn(PolyfilledDOMException, constantName)) {
55
+ defineProperty(PolyfilledDOMException, constantName, createPropertyDescriptor(6, constant.c));
56
+ }
57
+ }
58
+ }
@@ -0,0 +1,6 @@
1
+ var getBuiltIn = require('../internals/get-built-in');
2
+ var setToStringTag = require('../internals/set-to-string-tag');
3
+
4
+ var DOM_EXCEPTION = 'DOMException';
5
+
6
+ setToStringTag(getBuiltIn(DOM_EXCEPTION), DOM_EXCEPTION);