core-js-pure 3.18.3 → 3.19.3

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 (293) hide show
  1. package/es/date/to-primitive.js +2 -3
  2. package/es/date/to-string.js +2 -4
  3. package/es/instance/at.js +6 -5
  4. package/es/instance/bind.js +3 -2
  5. package/es/instance/code-point-at.js +4 -3
  6. package/es/instance/concat.js +3 -2
  7. package/es/instance/copy-within.js +3 -2
  8. package/es/instance/ends-with.js +4 -3
  9. package/es/instance/entries.js +3 -2
  10. package/es/instance/every.js +3 -2
  11. package/es/instance/fill.js +3 -2
  12. package/es/instance/filter.js +3 -2
  13. package/es/instance/find-index.js +3 -2
  14. package/es/instance/find.js +3 -2
  15. package/es/instance/flags.js +2 -1
  16. package/es/instance/flat-map.js +3 -2
  17. package/es/instance/flat.js +3 -2
  18. package/es/instance/for-each.js +3 -2
  19. package/es/instance/includes.js +6 -5
  20. package/es/instance/index-of.js +3 -2
  21. package/es/instance/keys.js +3 -2
  22. package/es/instance/last-index-of.js +3 -2
  23. package/es/instance/map.js +3 -2
  24. package/es/instance/match-all.js +4 -3
  25. package/es/instance/pad-end.js +4 -3
  26. package/es/instance/pad-start.js +4 -3
  27. package/es/instance/reduce-right.js +3 -2
  28. package/es/instance/reduce.js +3 -2
  29. package/es/instance/repeat.js +4 -3
  30. package/es/instance/replace-all.js +4 -3
  31. package/es/instance/reverse.js +3 -2
  32. package/es/instance/slice.js +3 -2
  33. package/es/instance/some.js +3 -2
  34. package/es/instance/sort.js +3 -2
  35. package/es/instance/splice.js +3 -2
  36. package/es/instance/starts-with.js +4 -3
  37. package/es/instance/trim-end.js +4 -3
  38. package/es/instance/trim-left.js +4 -3
  39. package/es/instance/trim-right.js +4 -3
  40. package/es/instance/trim-start.js +4 -3
  41. package/es/instance/trim.js +4 -3
  42. package/es/instance/values.js +3 -2
  43. package/es/json/stringify.js +4 -3
  44. package/es/promise/all-settled.js +2 -1
  45. package/es/promise/any.js +2 -1
  46. package/es/regexp/flags.js +3 -4
  47. package/es/regexp/match.js +2 -1
  48. package/es/regexp/replace.js +2 -1
  49. package/es/regexp/search.js +2 -1
  50. package/es/regexp/split.js +2 -1
  51. package/es/regexp/test.js +2 -3
  52. package/es/regexp/to-string.js +2 -3
  53. package/es/string/iterator.js +2 -5
  54. package/features/instance/at.js +6 -5
  55. package/features/instance/code-points.js +4 -3
  56. package/features/instance/filter-out.js +3 -2
  57. package/features/instance/filter-reject.js +3 -2
  58. package/features/instance/find-last-index.js +3 -2
  59. package/features/instance/find-last.js +3 -2
  60. package/features/instance/group-by.js +3 -2
  61. package/features/instance/unique-by.js +3 -2
  62. package/features/map/from.js +3 -2
  63. package/features/map/group-by.js +2 -1
  64. package/features/map/key-by.js +2 -1
  65. package/features/map/of.js +3 -2
  66. package/features/promise/try.js +2 -1
  67. package/features/set/from.js +3 -2
  68. package/features/set/of.js +3 -2
  69. package/features/weak-map/from.js +3 -2
  70. package/features/weak-map/of.js +3 -2
  71. package/features/weak-set/from.js +3 -2
  72. package/features/weak-set/of.js +3 -2
  73. package/internals/a-callable.js +3 -0
  74. package/internals/a-constructor.js +3 -0
  75. package/internals/a-possible-prototype.js +5 -1
  76. package/internals/an-instance.js +8 -3
  77. package/internals/an-object.js +4 -0
  78. package/internals/array-buffer-native.js +1 -1
  79. package/internals/array-buffer-non-extensible.js +10 -0
  80. package/internals/array-from-async.js +1 -1
  81. package/internals/array-from.js +6 -2
  82. package/internals/array-group-by.js +6 -3
  83. package/internals/array-iteration-from-last.js +1 -1
  84. package/internals/array-iteration.js +5 -4
  85. package/internals/array-last-index-of.js +2 -1
  86. package/internals/array-reduce.js +3 -0
  87. package/internals/array-slice-simple.js +17 -0
  88. package/internals/array-slice.js +3 -0
  89. package/internals/array-sort.js +10 -11
  90. package/internals/array-species-constructor.js +2 -0
  91. package/internals/array-unique-by.js +13 -9
  92. package/internals/async-from-sync-iterator.js +7 -4
  93. package/internals/async-iterator-create-proxy.js +7 -4
  94. package/internals/async-iterator-iteration.js +5 -2
  95. package/internals/classof-raw.js +5 -2
  96. package/internals/classof.js +3 -0
  97. package/internals/clear-error-stack.js +20 -0
  98. package/internals/collection-add-all.js +3 -2
  99. package/internals/collection-delete-all.js +3 -2
  100. package/internals/collection-from.js +7 -4
  101. package/internals/collection-of.js +3 -4
  102. package/internals/collection-strong.js +11 -9
  103. package/internals/collection-weak.js +10 -6
  104. package/internals/collection.js +5 -3
  105. package/internals/composite-key.js +9 -2
  106. package/internals/create-html.js +3 -1
  107. package/internals/create-iterator-constructor.js +2 -2
  108. package/internals/date-to-iso-string.js +23 -13
  109. package/internals/date-to-primitive.js +3 -0
  110. package/internals/define-iterator.js +2 -1
  111. package/internals/engine-v8-version.js +10 -4
  112. package/internals/error-stack-installable.js +10 -0
  113. package/internals/export.js +6 -4
  114. package/internals/flatten-into-array.js +4 -1
  115. package/internals/function-apply.js +9 -0
  116. package/internals/function-bind-context.js +5 -17
  117. package/internals/function-bind.js +15 -9
  118. package/internals/function-call.js +5 -0
  119. package/internals/function-uncurry-this.js +12 -0
  120. package/internals/get-async-iterator.js +2 -1
  121. package/internals/get-iterator.js +7 -2
  122. package/internals/get-substitution.js +10 -7
  123. package/internals/has-own-property.js +3 -2
  124. package/internals/host-report-errors.js +1 -1
  125. package/internals/ieee754.js +24 -6
  126. package/internals/indexed-object.js +5 -2
  127. package/internals/inspect-source.js +3 -2
  128. package/internals/internal-metadata.js +4 -7
  129. package/internals/internal-state.js +9 -7
  130. package/internals/is-callable.js +1 -1
  131. package/internals/is-constructor.js +6 -4
  132. package/internals/is-iterable.js +4 -2
  133. package/internals/is-object.js +1 -1
  134. package/internals/is-symbol.js +6 -2
  135. package/internals/iterate.js +14 -6
  136. package/internals/iterator-close.js +2 -1
  137. package/internals/iterator-create-proxy.js +7 -4
  138. package/internals/map-emplace.js +8 -3
  139. package/internals/map-upsert.js +12 -4
  140. package/internals/math-scale.js +9 -12
  141. package/internals/microtask.js +6 -4
  142. package/internals/normalize-string-argument.js +5 -0
  143. package/internals/not-a-regexp.js +3 -0
  144. package/internals/number-parse-float.js +8 -6
  145. package/internals/number-parse-int.js +3 -1
  146. package/internals/numeric-range-iterator.js +4 -0
  147. package/internals/object-assign.js +5 -2
  148. package/internals/object-define-properties.js +3 -1
  149. package/internals/object-define-property.js +2 -0
  150. package/internals/object-get-own-property-descriptor.js +2 -1
  151. package/internals/object-get-own-property-names-external.js +4 -4
  152. package/internals/object-get-prototype-of.js +2 -1
  153. package/internals/object-is-extensible.js +16 -0
  154. package/internals/object-is-prototype-of.js +3 -0
  155. package/internals/object-keys-internal.js +5 -2
  156. package/internals/object-set-prototype-of.js +4 -3
  157. package/internals/object-to-array.js +7 -3
  158. package/internals/ordinary-to-primitive.js +7 -3
  159. package/internals/own-keys.js +4 -1
  160. package/internals/reflect-metadata.js +9 -3
  161. package/internals/regexp-exec-abstract.js +6 -2
  162. package/internals/require-object-coercible.js +4 -0
  163. package/internals/set-global.js +4 -2
  164. package/internals/shared.js +1 -1
  165. package/internals/string-multibyte.js +13 -4
  166. package/internals/string-pad.js +6 -3
  167. package/internals/string-punycode-to-ascii.js +34 -20
  168. package/internals/string-repeat.js +3 -0
  169. package/internals/string-trim.js +4 -2
  170. package/internals/task.js +11 -11
  171. package/internals/this-number-value.js +2 -4
  172. package/internals/to-index.js +3 -0
  173. package/internals/to-object.js +3 -0
  174. package/internals/to-positive-integer.js +3 -0
  175. package/internals/to-primitive.js +4 -1
  176. package/internals/to-property-key.js +1 -1
  177. package/internals/to-string.js +3 -0
  178. package/internals/try-to-string.js +4 -0
  179. package/internals/uid.js +4 -1
  180. package/internals/well-known-symbol.js +5 -1
  181. package/modules/es.aggregate-error.js +20 -8
  182. package/modules/es.array.concat.js +2 -0
  183. package/modules/es.array.index-of.js +7 -5
  184. package/modules/es.array.join.js +3 -2
  185. package/modules/es.array.of.js +3 -1
  186. package/modules/es.array.reduce.js +2 -1
  187. package/modules/es.array.reverse.js +3 -2
  188. package/modules/es.array.slice.js +4 -2
  189. package/modules/es.array.sort.js +7 -4
  190. package/modules/es.array.splice.js +2 -0
  191. package/modules/es.date.get-year.js +3 -2
  192. package/modules/es.date.now.js +6 -1
  193. package/modules/es.date.set-year.js +6 -4
  194. package/modules/es.date.to-json.js +3 -2
  195. package/modules/es.escape.js +12 -5
  196. package/modules/es.function.has-instance.js +3 -2
  197. package/modules/es.json.stringify.js +18 -7
  198. package/modules/es.map.js +1 -1
  199. package/modules/es.number.to-fixed.js +19 -13
  200. package/modules/es.number.to-precision.js +6 -5
  201. package/modules/es.object.is-extensible.js +4 -10
  202. package/modules/es.object.is-frozen.js +6 -2
  203. package/modules/es.object.is-sealed.js +6 -2
  204. package/modules/es.promise.all-settled.js +2 -2
  205. package/modules/es.promise.any.js +5 -4
  206. package/modules/es.promise.js +23 -19
  207. package/modules/es.reflect.apply.js +4 -10
  208. package/modules/es.reflect.construct.js +10 -5
  209. package/modules/es.reflect.get.js +2 -1
  210. package/modules/es.reflect.is-extensible.js +2 -4
  211. package/modules/es.reflect.set.js +2 -1
  212. package/modules/es.set.js +1 -1
  213. package/modules/es.string.at-alternative.js +4 -1
  214. package/modules/es.string.ends-with.js +6 -4
  215. package/modules/es.string.from-code-point.js +7 -4
  216. package/modules/es.string.includes.js +8 -2
  217. package/modules/es.string.match-all.js +25 -19
  218. package/modules/es.string.raw.js +6 -6
  219. package/modules/es.string.replace-all.js +19 -13
  220. package/modules/es.string.starts-with.js +6 -4
  221. package/modules/es.string.substr.js +3 -2
  222. package/modules/es.symbol.js +34 -21
  223. package/modules/es.unescape.js +14 -9
  224. package/modules/es.weak-map.js +15 -15
  225. package/modules/esnext.array.is-template-object.js +1 -1
  226. package/modules/esnext.async-iterator.as-indexed-pairs.js +2 -1
  227. package/modules/esnext.async-iterator.constructor.js +1 -1
  228. package/modules/esnext.async-iterator.drop.js +2 -1
  229. package/modules/esnext.async-iterator.filter.js +2 -1
  230. package/modules/esnext.async-iterator.flat-map.js +3 -2
  231. package/modules/esnext.async-iterator.from.js +4 -4
  232. package/modules/esnext.async-iterator.map.js +2 -1
  233. package/modules/esnext.async-iterator.reduce.js +4 -1
  234. package/modules/esnext.async-iterator.take.js +4 -2
  235. package/modules/esnext.composite-key.js +5 -1
  236. package/modules/esnext.composite-symbol.js +3 -2
  237. package/modules/esnext.iterator.as-indexed-pairs.js +2 -1
  238. package/modules/esnext.iterator.constructor.js +1 -1
  239. package/modules/esnext.iterator.drop.js +4 -2
  240. package/modules/esnext.iterator.filter.js +2 -1
  241. package/modules/esnext.iterator.flat-map.js +7 -3
  242. package/modules/esnext.iterator.from.js +4 -4
  243. package/modules/esnext.iterator.map.js +2 -1
  244. package/modules/esnext.iterator.reduce.js +3 -0
  245. package/modules/esnext.iterator.take.js +2 -1
  246. package/modules/esnext.map.delete-all.js +2 -4
  247. package/modules/esnext.map.emplace.js +2 -2
  248. package/modules/esnext.map.every.js +1 -1
  249. package/modules/esnext.map.filter.js +5 -4
  250. package/modules/esnext.map.find-key.js +1 -1
  251. package/modules/esnext.map.find.js +1 -1
  252. package/modules/esnext.map.group-by.js +6 -2
  253. package/modules/esnext.map.includes.js +1 -1
  254. package/modules/esnext.map.key-by.js +2 -1
  255. package/modules/esnext.map.map-keys.js +5 -4
  256. package/modules/esnext.map.map-values.js +5 -4
  257. package/modules/esnext.map.reduce.js +3 -0
  258. package/modules/esnext.map.some.js +1 -1
  259. package/modules/esnext.map.update-or-insert.js +2 -2
  260. package/modules/esnext.map.update.js +11 -4
  261. package/modules/esnext.map.upsert.js +2 -2
  262. package/modules/esnext.math.seeded-prng.js +3 -1
  263. package/modules/esnext.number.from-string.js +12 -3
  264. package/modules/esnext.observable.js +82 -62
  265. package/modules/esnext.reflect.get-metadata-keys.js +5 -10
  266. package/modules/esnext.set.add-all.js +2 -4
  267. package/modules/esnext.set.delete-all.js +2 -4
  268. package/modules/esnext.set.difference.js +3 -2
  269. package/modules/esnext.set.every.js +1 -1
  270. package/modules/esnext.set.filter.js +4 -3
  271. package/modules/esnext.set.find.js +1 -1
  272. package/modules/esnext.set.intersection.js +3 -2
  273. package/modules/esnext.set.is-disjoint-from.js +3 -2
  274. package/modules/esnext.set.is-subset-of.js +3 -2
  275. package/modules/esnext.set.is-superset-of.js +3 -2
  276. package/modules/esnext.set.join.js +9 -4
  277. package/modules/esnext.set.map.js +5 -4
  278. package/modules/esnext.set.reduce.js +3 -0
  279. package/modules/esnext.set.some.js +1 -1
  280. package/modules/esnext.set.symmetric-difference.js +3 -2
  281. package/modules/esnext.weak-map.delete-all.js +2 -4
  282. package/modules/esnext.weak-map.emplace.js +2 -2
  283. package/modules/esnext.weak-map.upsert.js +2 -2
  284. package/modules/esnext.weak-set.add-all.js +2 -4
  285. package/modules/esnext.weak-set.delete-all.js +2 -4
  286. package/modules/web.timers.js +5 -4
  287. package/modules/web.url-search-params.js +123 -105
  288. package/modules/web.url.js +661 -625
  289. package/package.json +2 -2
  290. package/stable/instance/entries.js +6 -4
  291. package/stable/instance/for-each.js +6 -4
  292. package/stable/instance/keys.js +6 -4
  293. package/stable/instance/values.js +6 -4
@@ -1,6 +1,5 @@
1
1
  require('../../modules/es.date.to-primitive');
2
+ var uncurryThis = require('../../internals/function-uncurry-this');
2
3
  var toPrimitive = require('../../internals/date-to-primitive');
3
4
 
4
- module.exports = function (it, hint) {
5
- return toPrimitive.call(it, hint);
6
- };
5
+ module.exports = uncurryThis(toPrimitive);
@@ -1,6 +1,4 @@
1
1
  require('../../modules/es.date.to-string');
2
- var dateToString = Date.prototype.toString;
2
+ var uncurryThis = require('../../internals/function-uncurry-this');
3
3
 
4
- module.exports = function toString(it) {
5
- return dateToString.call(it);
6
- };
4
+ module.exports = uncurryThis(Date.prototype.toString);
package/es/instance/at.js CHANGED
@@ -1,13 +1,14 @@
1
- var arrayAt = require('../array/virtual/at');
2
- var stringAt = require('../string/virtual/at');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var arrayMethod = require('../array/virtual/at');
3
+ var stringMethod = require('../string/virtual/at');
3
4
 
4
5
  var ArrayPrototype = Array.prototype;
5
6
  var StringPrototype = String.prototype;
6
7
 
7
8
  module.exports = function (it) {
8
9
  var own = it.at;
9
- if (it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.at)) return arrayAt;
10
- if (typeof it === 'string' || it === StringPrototype || (it instanceof String && own === StringPrototype.at)) {
11
- return stringAt;
10
+ if (it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.at)) return arrayMethod;
11
+ if (typeof it == 'string' || it === StringPrototype || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.at)) {
12
+ return stringMethod;
12
13
  } return own;
13
14
  };
@@ -1,8 +1,9 @@
1
- var bind = require('../function/virtual/bind');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../function/virtual/bind');
2
3
 
3
4
  var FunctionPrototype = Function.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.bind;
7
- return it === FunctionPrototype || (it instanceof Function && own === FunctionPrototype.bind) ? bind : own;
8
+ return it === FunctionPrototype || (isPrototypeOf(FunctionPrototype, it) && own === FunctionPrototype.bind) ? method : own;
8
9
  };
@@ -1,9 +1,10 @@
1
- var codePointAt = require('../string/virtual/code-point-at');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/code-point-at');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.codePointAt;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.codePointAt) ? codePointAt : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.codePointAt) ? method : own;
9
10
  };
@@ -1,8 +1,9 @@
1
- var concat = require('../array/virtual/concat');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/concat');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.concat;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.concat) ? concat : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.concat) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var copyWithin = require('../array/virtual/copy-within');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/copy-within');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.copyWithin;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.copyWithin) ? copyWithin : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.copyWithin) ? method : own;
8
9
  };
@@ -1,9 +1,10 @@
1
- var endsWith = require('../string/virtual/ends-with');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/ends-with');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.endsWith;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.endsWith) ? endsWith : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.endsWith) ? method : own;
9
10
  };
@@ -1,8 +1,9 @@
1
- var entries = require('../array/virtual/entries');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/entries');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.entries;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.entries) ? entries : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.entries) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var every = require('../array/virtual/every');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/every');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.every;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.every) ? every : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.every) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var fill = require('../array/virtual/fill');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/fill');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.fill;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.fill) ? fill : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.fill) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var filter = require('../array/virtual/filter');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/filter');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.filter;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.filter) ? filter : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.filter) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var findIndex = require('../array/virtual/find-index');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/find-index');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.findIndex;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.findIndex) ? findIndex : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.findIndex) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var find = require('../array/virtual/find');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/find');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.find;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.find) ? find : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.find) ? method : own;
8
9
  };
@@ -1,7 +1,8 @@
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
1
2
  var flags = require('../regexp/flags');
2
3
 
3
4
  var RegExpPrototype = RegExp.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
- return (it === RegExpPrototype || it instanceof RegExp) && !('flags' in it) ? flags(it) : it.flags;
7
+ return (it === RegExpPrototype || isPrototypeOf(RegExpPrototype, it)) ? flags(it) : it.flags;
7
8
  };
@@ -1,8 +1,9 @@
1
- var flatMap = require('../array/virtual/flat-map');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/flat-map');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.flatMap;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.flatMap) ? flatMap : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.flatMap) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var flat = require('../array/virtual/flat');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/flat');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.flat;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.flat) ? flat : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.flat) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var forEach = require('../array/virtual/for-each');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/for-each');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.forEach;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.forEach) ? forEach : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.forEach) ? method : own;
8
9
  };
@@ -1,13 +1,14 @@
1
- var arrayIncludes = require('../array/virtual/includes');
2
- var stringIncludes = require('../string/virtual/includes');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var arrayMethod = require('../array/virtual/includes');
3
+ var stringMethod = require('../string/virtual/includes');
3
4
 
4
5
  var ArrayPrototype = Array.prototype;
5
6
  var StringPrototype = String.prototype;
6
7
 
7
8
  module.exports = function (it) {
8
9
  var own = it.includes;
9
- if (it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.includes)) return arrayIncludes;
10
- if (typeof it === 'string' || it === StringPrototype || (it instanceof String && own === StringPrototype.includes)) {
11
- return stringIncludes;
10
+ if (it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.includes)) return arrayMethod;
11
+ if (typeof it == 'string' || it === StringPrototype || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.includes)) {
12
+ return stringMethod;
12
13
  } return own;
13
14
  };
@@ -1,8 +1,9 @@
1
- var indexOf = require('../array/virtual/index-of');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/index-of');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.indexOf;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.indexOf) ? indexOf : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.indexOf) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var keys = require('../array/virtual/keys');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/keys');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.keys;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.keys) ? keys : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.keys) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var lastIndexOf = require('../array/virtual/last-index-of');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/last-index-of');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.lastIndexOf;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.lastIndexOf) ? lastIndexOf : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.lastIndexOf) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var map = require('../array/virtual/map');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/map');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.map;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.map) ? map : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.map) ? method : own;
8
9
  };
@@ -1,9 +1,10 @@
1
- var matchAll = require('../string/virtual/match-all');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/match-all');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.matchAll;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.matchAll) ? matchAll : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.matchAll) ? method : own;
9
10
  };
@@ -1,9 +1,10 @@
1
- var padEnd = require('../string/virtual/pad-end');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/pad-end');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.padEnd;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.padEnd) ? padEnd : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.padEnd) ? method : own;
9
10
  };
@@ -1,9 +1,10 @@
1
- var padStart = require('../string/virtual/pad-start');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/pad-start');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.padStart;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.padStart) ? padStart : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.padStart) ? method : own;
9
10
  };
@@ -1,8 +1,9 @@
1
- var reduceRight = require('../array/virtual/reduce-right');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/reduce-right');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.reduceRight;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.reduceRight) ? reduceRight : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.reduceRight) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var reduce = require('../array/virtual/reduce');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/reduce');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.reduce;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.reduce) ? reduce : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.reduce) ? method : own;
8
9
  };
@@ -1,9 +1,10 @@
1
- var repeat = require('../string/virtual/repeat');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/repeat');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.repeat;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.repeat) ? repeat : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.repeat) ? method : own;
9
10
  };
@@ -1,9 +1,10 @@
1
- var replaceAll = require('../string/virtual/replace-all');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/replace-all');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.replaceAll;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.replaceAll) ? replaceAll : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.replaceAll) ? method : own;
9
10
  };
@@ -1,8 +1,9 @@
1
- var reverse = require('../array/virtual/reverse');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/reverse');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.reverse;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.reverse) ? reverse : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.reverse) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var slice = require('../array/virtual/slice');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/slice');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.slice;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.slice) ? slice : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.slice) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var some = require('../array/virtual/some');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/some');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.some;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.some) ? some : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.some) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var sort = require('../array/virtual/sort');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/sort');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.sort;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.sort) ? sort : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.sort) ? method : own;
8
9
  };
@@ -1,8 +1,9 @@
1
- var splice = require('../array/virtual/splice');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/splice');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.splice;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.splice) ? splice : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.splice) ? method : own;
8
9
  };
@@ -1,9 +1,10 @@
1
- var startsWith = require('../string/virtual/starts-with');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/starts-with');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.startsWith;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.startsWith) ? startsWith : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.startsWith) ? method : own;
9
10
  };
@@ -1,9 +1,10 @@
1
- var trimEnd = require('../string/virtual/trim-end');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/trim-end');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.trimEnd;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.trimEnd) ? trimEnd : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.trimEnd) ? method : own;
9
10
  };
@@ -1,9 +1,10 @@
1
- var trimLeft = require('../string/virtual/trim-left');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/trim-left');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.trimLeft;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.trimLeft) ? trimLeft : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.trimLeft) ? method : own;
9
10
  };
@@ -1,9 +1,10 @@
1
- var trimRight = require('../string/virtual/trim-right');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/trim-right');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.trimRight;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.trimRight) ? trimRight : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.trimRight) ? method : own;
9
10
  };
@@ -1,9 +1,10 @@
1
- var trimStart = require('../string/virtual/trim-start');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/trim-start');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.trimStart;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.trimStart) ? trimStart : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.trimStart) ? method : own;
9
10
  };
@@ -1,9 +1,10 @@
1
- var trim = require('../string/virtual/trim');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../string/virtual/trim');
2
3
 
3
4
  var StringPrototype = String.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.trim;
7
- return typeof it === 'string' || it === StringPrototype
8
- || (it instanceof String && own === StringPrototype.trim) ? trim : own;
8
+ return typeof it == 'string' || it === StringPrototype
9
+ || (isPrototypeOf(StringPrototype, it) && own === StringPrototype.trim) ? method : own;
9
10
  };
@@ -1,8 +1,9 @@
1
- var values = require('../array/virtual/values');
1
+ var isPrototypeOf = require('../../internals/object-is-prototype-of');
2
+ var method = require('../array/virtual/values');
2
3
 
3
4
  var ArrayPrototype = Array.prototype;
4
5
 
5
6
  module.exports = function (it) {
6
7
  var own = it.values;
7
- return it === ArrayPrototype || (it instanceof Array && own === ArrayPrototype.values) ? values : own;
8
+ return it === ArrayPrototype || (isPrototypeOf(ArrayPrototype, it) && own === ArrayPrototype.values) ? method : own;
8
9
  };
@@ -1,10 +1,11 @@
1
1
  require('../../modules/es.json.stringify');
2
- var core = require('../../internals/path');
2
+ var path = require('../../internals/path');
3
+ var apply = require('../../internals/function-apply');
3
4
 
4
5
  // eslint-disable-next-line es/no-json -- safe
5
- if (!core.JSON) core.JSON = { stringify: JSON.stringify };
6
+ if (!path.JSON) path.JSON = { stringify: JSON.stringify };
6
7
 
7
8
  // eslint-disable-next-line no-unused-vars -- required for `.length`
8
9
  module.exports = function stringify(it, replacer, space) {
9
- return core.JSON.stringify.apply(null, arguments);
10
+ return apply(path.JSON.stringify, null, arguments);
10
11
  };
@@ -4,6 +4,7 @@ require('../../modules/es.object.to-string');
4
4
  require('../../modules/es.promise');
5
5
  require('../../modules/es.promise.all-settled');
6
6
  require('../../modules/es.string.iterator');
7
+ var call = require('../../internals/function-call');
7
8
  var isCallable = require('../../internals/is-callable');
8
9
  var path = require('../../internals/path');
9
10
 
@@ -11,5 +12,5 @@ var Promise = path.Promise;
11
12
  var $allSettled = Promise.allSettled;
12
13
 
13
14
  module.exports = function allSettled(iterable) {
14
- return $allSettled.call(isCallable(this) ? this : Promise, iterable);
15
+ return call($allSettled, isCallable(this) ? this : Promise, iterable);
15
16
  };