core-js 3.15.2 → 3.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/es/aggregate-error.js +1 -1
- package/es/array/entries.js +1 -0
- package/es/array/index.js +2 -1
- package/es/array/iterator.js +1 -0
- package/es/array/keys.js +1 -0
- package/es/array/values.js +1 -0
- package/es/array/virtual/entries.js +1 -0
- package/es/array/virtual/index.js +1 -0
- package/es/array/virtual/iterator.js +1 -0
- package/es/array/virtual/keys.js +1 -0
- package/es/array/virtual/values.js +1 -0
- package/es/escape.js +2 -2
- package/es/map/index.js +1 -1
- package/es/promise/all-settled.js +2 -1
- package/es/promise/any.js +2 -1
- package/es/promise/finally.js +1 -0
- package/es/promise/index.js +1 -1
- package/es/reflect/index.js +1 -0
- package/es/reflect/to-string-tag.js +1 -0
- package/es/regexp/constructor.js +3 -0
- package/es/regexp/match.js +1 -0
- package/es/regexp/replace.js +1 -0
- package/es/regexp/search.js +1 -0
- package/es/regexp/split.js +1 -0
- package/es/set/index.js +2 -2
- package/es/string/index.js +1 -0
- package/es/string/iterator.js +1 -0
- package/es/string/match-all.js +2 -0
- package/es/string/replace-all.js +2 -0
- package/es/string/virtual/index.js +2 -0
- package/es/string/virtual/iterator.js +1 -0
- package/es/string/virtual/match-all.js +2 -0
- package/es/string/virtual/replace-all.js +2 -0
- package/es/symbol/is-concat-spreadable.js +1 -1
- package/es/symbol/iterator.js +3 -2
- package/es/symbol/match-all.js +2 -0
- package/es/symbol/match.js +1 -0
- package/es/symbol/replace.js +1 -0
- package/es/symbol/search.js +1 -0
- package/es/symbol/split.js +1 -0
- package/es/symbol/to-primitive.js +1 -0
- package/es/symbol/to-string-tag.js +2 -2
- package/es/typed-array/entries.js +1 -0
- package/es/typed-array/iterator.js +1 -0
- package/es/typed-array/keys.js +1 -0
- package/es/typed-array/methods.js +2 -1
- package/es/typed-array/values.js +1 -0
- package/es/unescape.js +2 -2
- package/es/weak-map/index.js +1 -1
- package/es/weak-set/index.js +1 -1
- package/features/array/filter-out.js +1 -0
- package/features/array/filter-reject.js +4 -0
- package/features/array/group-by.js +4 -0
- package/features/array/index.js +3 -0
- package/features/array/virtual/filter-out.js +1 -0
- package/features/array/virtual/filter-reject.js +4 -0
- package/features/array/virtual/group-by.js +4 -0
- package/features/array/virtual/index.js +3 -0
- package/features/async-iterator/as-indexed-pairs.js +0 -2
- package/features/async-iterator/drop.js +0 -2
- package/features/async-iterator/every.js +0 -2
- package/features/async-iterator/filter.js +0 -2
- package/features/async-iterator/find.js +0 -2
- package/features/async-iterator/flat-map.js +0 -2
- package/features/async-iterator/for-each.js +0 -2
- package/features/async-iterator/from.js +1 -0
- package/features/async-iterator/index.js +1 -0
- package/features/async-iterator/map.js +0 -2
- package/features/async-iterator/reduce.js +0 -2
- package/features/async-iterator/some.js +0 -2
- package/features/async-iterator/take.js +0 -2
- package/features/async-iterator/to-array.js +0 -2
- package/features/get-iterator-method.js +2 -1
- package/features/get-iterator.js +2 -1
- package/features/index.js +4 -0
- package/features/instance/filter-out.js +1 -0
- package/features/instance/filter-reject.js +8 -0
- package/features/instance/group-by.js +8 -0
- package/features/is-iterable.js +2 -1
- package/features/iterator/as-indexed-pairs.js +0 -2
- package/features/iterator/drop.js +0 -2
- package/features/iterator/every.js +0 -2
- package/features/iterator/filter.js +0 -2
- package/features/iterator/find.js +0 -2
- package/features/iterator/flat-map.js +0 -2
- package/features/iterator/for-each.js +0 -2
- package/features/iterator/from.js +1 -0
- package/features/iterator/index.js +1 -0
- package/features/iterator/map.js +0 -2
- package/features/iterator/reduce.js +0 -2
- package/features/iterator/some.js +0 -2
- package/features/iterator/take.js +0 -2
- package/features/iterator/to-array.js +0 -2
- package/features/map/from.js +1 -0
- package/features/map/of.js +1 -2
- package/features/number/range.js +1 -0
- package/features/set/difference.js +1 -0
- package/features/set/from.js +1 -0
- package/features/set/intersection.js +3 -0
- package/features/set/is-disjoint-from.js +3 -0
- package/features/set/is-subset-of.js +1 -0
- package/features/set/is-superset-of.js +3 -0
- package/features/set/of.js +1 -2
- package/features/set/symmetric-difference.js +1 -0
- package/features/set/union.js +1 -0
- package/features/string/code-points.js +1 -0
- package/features/string/virtual/code-points.js +1 -0
- package/features/typed-array/copy-within.js +3 -1
- package/features/typed-array/entries.js +3 -1
- package/features/typed-array/every.js +3 -1
- package/features/typed-array/fill.js +3 -1
- package/features/typed-array/filter-out.js +1 -0
- package/features/typed-array/filter-reject.js +1 -0
- package/features/typed-array/filter.js +3 -1
- package/features/typed-array/find-index.js +3 -1
- package/features/typed-array/find.js +3 -1
- package/features/typed-array/float32-array.js +1 -1
- package/features/typed-array/float64-array.js +1 -1
- package/features/typed-array/for-each.js +3 -1
- package/features/typed-array/from.js +3 -1
- package/features/typed-array/group-by.js +1 -0
- package/features/typed-array/includes.js +3 -1
- package/features/typed-array/index-of.js +3 -1
- package/features/typed-array/index.js +4 -1
- package/features/typed-array/int16-array.js +1 -1
- package/features/typed-array/int32-array.js +1 -1
- package/features/typed-array/int8-array.js +1 -1
- package/features/typed-array/iterator.js +3 -1
- package/features/typed-array/join.js +3 -1
- package/features/typed-array/keys.js +3 -1
- package/features/typed-array/last-index-of.js +3 -1
- package/features/typed-array/map.js +3 -1
- package/features/typed-array/of.js +3 -1
- package/features/typed-array/reduce-right.js +3 -1
- package/features/typed-array/reduce.js +3 -1
- package/features/typed-array/reverse.js +3 -1
- package/features/typed-array/set.js +3 -1
- package/features/typed-array/slice.js +3 -1
- package/features/typed-array/some.js +3 -1
- package/features/typed-array/sort.js +3 -1
- package/features/typed-array/subarray.js +3 -1
- package/features/typed-array/to-locale-string.js +3 -1
- package/features/typed-array/to-string.js +3 -1
- package/features/typed-array/uint16-array.js +1 -1
- package/features/typed-array/uint32-array.js +1 -1
- package/features/typed-array/uint8-array.js +1 -1
- package/features/typed-array/uint8-clamped-array.js +1 -1
- package/features/typed-array/values.js +3 -1
- package/features/weak-map/from.js +1 -0
- package/features/weak-map/index.js +1 -0
- package/features/weak-map/of.js +1 -2
- package/features/weak-set/from.js +1 -0
- package/features/weak-set/index.js +1 -0
- package/features/weak-set/of.js +1 -2
- package/internals/array-buffer-view-core.js +16 -10
- package/internals/array-from-constructor-and-list.js +7 -0
- package/internals/array-group-by.js +33 -0
- package/internals/array-iteration-from-last.js +6 -6
- package/internals/array-iteration.js +6 -6
- package/internals/array-species-constructor.js +20 -0
- package/internals/array-species-create.js +2 -15
- package/internals/collection.js +1 -1
- package/internals/create-html.js +3 -2
- package/internals/create-property.js +2 -2
- package/internals/date-to-primitive.js +5 -4
- package/internals/engine-v8-version.js +2 -1
- package/internals/get-built-in.js +1 -3
- package/internals/get-map-iterator.js +1 -4
- package/internals/get-set-iterator.js +1 -4
- package/internals/internal-metadata.js +32 -2
- package/internals/is-symbol.js +9 -0
- package/internals/number-parse-float.js +2 -1
- package/internals/number-parse-int.js +2 -1
- package/internals/object-create.js +17 -12
- package/internals/object-define-property.js +2 -2
- package/internals/object-get-own-property-descriptor.js +2 -2
- package/internals/ordinary-to-primitive.js +11 -0
- package/internals/regexp-exec.js +5 -3
- package/internals/set-global.js +2 -2
- package/internals/shared.js +1 -1
- package/internals/string-multibyte.js +3 -2
- package/internals/string-pad.js +3 -2
- package/internals/string-repeat.js +2 -1
- package/internals/string-trim.js +2 -1
- package/internals/task.js +9 -4
- package/internals/to-primitive.js +17 -9
- package/internals/to-property-key.js +9 -0
- package/internals/to-string.js +6 -0
- package/internals/typed-array-constructor.js +13 -5
- package/internals/typed-array-from-species-and-list.js +3 -8
- package/internals/typed-array-species-constructor.js +11 -0
- package/modules/es.aggregate-error.js +2 -1
- package/modules/es.array.sort.js +2 -1
- package/modules/es.date.get-year.js +6 -1
- package/modules/es.date.to-json.js +1 -1
- package/modules/es.date.to-string.js +1 -1
- package/modules/es.escape.js +2 -1
- package/modules/es.number.constructor.js +3 -1
- package/modules/es.object.lookup-getter.js +2 -2
- package/modules/es.object.lookup-setter.js +2 -2
- package/modules/es.reflect.define-property.js +2 -2
- package/modules/es.regexp.constructor.js +3 -2
- package/modules/es.regexp.to-string.js +3 -2
- package/modules/es.string.ends-with.js +3 -2
- package/modules/es.string.includes.js +3 -2
- package/modules/es.string.iterator.js +2 -1
- package/modules/es.string.match-all.js +6 -5
- package/modules/es.string.match.js +7 -6
- package/modules/es.string.raw.js +3 -2
- package/modules/es.string.replace-all.js +7 -6
- package/modules/es.string.replace.js +11 -10
- package/modules/es.string.search.js +6 -5
- package/modules/es.string.split.js +7 -5
- package/modules/es.string.starts-with.js +3 -2
- package/modules/es.string.substr.js +2 -1
- package/modules/es.symbol.js +8 -13
- package/modules/es.typed-array.map.js +2 -3
- package/modules/es.typed-array.slice.js +3 -4
- package/modules/es.typed-array.subarray.js +3 -2
- package/modules/es.unescape.js +2 -1
- package/modules/es.weak-map.js +1 -1
- package/modules/esnext.array.filter-out.js +3 -2
- package/modules/esnext.array.filter-reject.js +14 -0
- package/modules/esnext.array.group-by.js +16 -0
- package/modules/esnext.map.merge.js +2 -1
- package/modules/esnext.string.at-alternative.js +3 -2
- package/modules/esnext.string.code-points.js +2 -1
- package/modules/esnext.typed-array.filter-out.js +3 -2
- package/modules/esnext.typed-array.filter-reject.js +14 -0
- package/modules/esnext.typed-array.group-by.js +14 -0
- package/modules/web.url-search-params.js +56 -36
- package/modules/web.url.js +14 -13
- package/package.json +3 -4
- package/postinstall.js +4 -2
- package/proposals/array-filtering.js +4 -0
- package/proposals/array-grouping.js +3 -0
- package/stable/aggregate-error.js +1 -0
- package/stable/dom-collections/index.js +1 -0
- package/stable/dom-collections/iterator.js +1 -0
- package/stable/map/index.js +1 -0
- package/stable/object/from-entries.js +1 -0
- package/stable/object/index.js +1 -0
- package/stable/promise/all-settled.js +1 -0
- package/stable/promise/any.js +1 -0
- package/stable/promise/index.js +1 -0
- package/stable/set/index.js +1 -0
- package/stable/symbol/index.js +1 -0
- package/stable/symbol/iterator.js +1 -0
- package/stable/typed-array/copy-within.js +3 -1
- package/stable/typed-array/entries.js +3 -1
- package/stable/typed-array/every.js +3 -1
- package/stable/typed-array/fill.js +3 -1
- package/stable/typed-array/filter.js +3 -1
- package/stable/typed-array/find-index.js +3 -1
- package/stable/typed-array/find.js +3 -1
- package/stable/typed-array/for-each.js +3 -1
- package/stable/typed-array/from.js +3 -1
- package/stable/typed-array/includes.js +3 -1
- package/stable/typed-array/index-of.js +3 -1
- package/stable/typed-array/iterator.js +3 -1
- package/stable/typed-array/join.js +3 -1
- package/stable/typed-array/keys.js +3 -1
- package/stable/typed-array/last-index-of.js +3 -1
- package/stable/typed-array/map.js +3 -1
- package/stable/typed-array/of.js +3 -1
- package/stable/typed-array/reduce-right.js +3 -1
- package/stable/typed-array/reduce.js +3 -1
- package/stable/typed-array/reverse.js +3 -1
- package/stable/typed-array/set.js +3 -1
- package/stable/typed-array/slice.js +3 -1
- package/stable/typed-array/some.js +3 -1
- package/stable/typed-array/sort.js +3 -1
- package/stable/typed-array/subarray.js +3 -1
- package/stable/typed-array/to-locale-string.js +3 -1
- package/stable/typed-array/to-string.js +3 -1
- package/stable/typed-array/values.js +3 -1
- package/stable/url-search-params/index.js +1 -0
- package/stable/weak-map/index.js +1 -0
- package/stable/weak-set/index.js +1 -0
- package/stage/1.js +1 -0
- package/stage/2.js +0 -1
- package/stage/3.js +1 -0
- package/es/array/virtual/filter-out.js +0 -4
package/features/weak-map/of.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
|
-
require('../../modules/es.
|
|
2
|
+
require('../../modules/es.array.iterator');
|
|
3
3
|
require('../../modules/es.weak-map');
|
|
4
4
|
require('../../modules/esnext.weak-map.of');
|
|
5
|
-
require('../../modules/web.dom-collections.iterator');
|
|
6
5
|
var path = require('../../internals/path');
|
|
7
6
|
|
|
8
7
|
var WeakMap = path.WeakMap;
|
package/features/weak-set/of.js
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
|
-
require('../../modules/es.
|
|
2
|
+
require('../../modules/es.array.iterator');
|
|
3
3
|
require('../../modules/es.weak-set');
|
|
4
4
|
require('../../modules/esnext.weak-set.of');
|
|
5
|
-
require('../../modules/web.dom-collections.iterator');
|
|
6
5
|
var path = require('../../internals/path');
|
|
7
6
|
|
|
8
7
|
var WeakSet = path.WeakSet;
|
|
@@ -24,10 +24,11 @@ var isPrototypeOf = ObjectPrototype.isPrototypeOf;
|
|
|
24
24
|
|
|
25
25
|
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
|
|
26
26
|
var TYPED_ARRAY_TAG = uid('TYPED_ARRAY_TAG');
|
|
27
|
+
var TYPED_ARRAY_CONSTRUCTOR = uid('TYPED_ARRAY_CONSTRUCTOR');
|
|
27
28
|
// Fixing native typed arrays in Opera Presto crashes the browser, see #595
|
|
28
29
|
var NATIVE_ARRAY_BUFFER_VIEWS = NATIVE_ARRAY_BUFFER && !!setPrototypeOf && classof(global.opera) !== 'Opera';
|
|
29
30
|
var TYPED_ARRAY_TAG_REQIRED = false;
|
|
30
|
-
var NAME;
|
|
31
|
+
var NAME, Constructor, Prototype;
|
|
31
32
|
|
|
32
33
|
var TypedArrayConstructorsList = {
|
|
33
34
|
Int8Array: 1,
|
|
@@ -67,14 +68,9 @@ var aTypedArray = function (it) {
|
|
|
67
68
|
};
|
|
68
69
|
|
|
69
70
|
var aTypedArrayConstructor = function (C) {
|
|
70
|
-
if (setPrototypeOf) {
|
|
71
|
-
|
|
72
|
-
}
|
|
73
|
-
var TypedArrayConstructor = global[ARRAY];
|
|
74
|
-
if (TypedArrayConstructor && (C === TypedArrayConstructor || isPrototypeOf.call(TypedArrayConstructor, C))) {
|
|
75
|
-
return C;
|
|
76
|
-
}
|
|
77
|
-
} throw TypeError('Target is not a typed array constructor');
|
|
71
|
+
if (setPrototypeOf && !isPrototypeOf.call(TypedArray, C)) {
|
|
72
|
+
throw TypeError('Target is not a typed array constructor');
|
|
73
|
+
} return C;
|
|
78
74
|
};
|
|
79
75
|
|
|
80
76
|
var exportTypedArrayMethod = function (KEY, property, forced) {
|
|
@@ -117,7 +113,16 @@ var exportTypedArrayStaticMethod = function (KEY, property, forced) {
|
|
|
117
113
|
};
|
|
118
114
|
|
|
119
115
|
for (NAME in TypedArrayConstructorsList) {
|
|
120
|
-
|
|
116
|
+
Constructor = global[NAME];
|
|
117
|
+
Prototype = Constructor && Constructor.prototype;
|
|
118
|
+
if (Prototype) createNonEnumerableProperty(Prototype, TYPED_ARRAY_CONSTRUCTOR, Constructor);
|
|
119
|
+
else NATIVE_ARRAY_BUFFER_VIEWS = false;
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
for (NAME in BigIntArrayConstructorsList) {
|
|
123
|
+
Constructor = global[NAME];
|
|
124
|
+
Prototype = Constructor && Constructor.prototype;
|
|
125
|
+
if (Prototype) createNonEnumerableProperty(Prototype, TYPED_ARRAY_CONSTRUCTOR, Constructor);
|
|
121
126
|
}
|
|
122
127
|
|
|
123
128
|
// WebKit bug - typed arrays constructors prototype is Object.prototype
|
|
@@ -155,6 +160,7 @@ if (DESCRIPTORS && !has(TypedArrayPrototype, TO_STRING_TAG)) {
|
|
|
155
160
|
|
|
156
161
|
module.exports = {
|
|
157
162
|
NATIVE_ARRAY_BUFFER_VIEWS: NATIVE_ARRAY_BUFFER_VIEWS,
|
|
163
|
+
TYPED_ARRAY_CONSTRUCTOR: TYPED_ARRAY_CONSTRUCTOR,
|
|
158
164
|
TYPED_ARRAY_TAG: TYPED_ARRAY_TAG_REQIRED && TYPED_ARRAY_TAG,
|
|
159
165
|
aTypedArray: aTypedArray,
|
|
160
166
|
aTypedArrayConstructor: aTypedArrayConstructor,
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
var bind = require('../internals/function-bind-context');
|
|
2
|
+
var IndexedObject = require('../internals/indexed-object');
|
|
3
|
+
var toObject = require('../internals/to-object');
|
|
4
|
+
var toLength = require('../internals/to-length');
|
|
5
|
+
var toPropertyKey = require('../internals/to-property-key');
|
|
6
|
+
var objectCreate = require('../internals/object-create');
|
|
7
|
+
var arrayFromConstructorAndList = require('../internals/array-from-constructor-and-list');
|
|
8
|
+
|
|
9
|
+
var push = [].push;
|
|
10
|
+
|
|
11
|
+
module.exports = function ($this, callbackfn, that, specificConstructor) {
|
|
12
|
+
var O = toObject($this);
|
|
13
|
+
var self = IndexedObject(O);
|
|
14
|
+
var boundFunction = bind(callbackfn, that, 3);
|
|
15
|
+
var target = objectCreate(null);
|
|
16
|
+
var length = toLength(self.length);
|
|
17
|
+
var index = 0;
|
|
18
|
+
var Constructor, key, value;
|
|
19
|
+
for (;length > index; index++) {
|
|
20
|
+
value = self[index];
|
|
21
|
+
key = toPropertyKey(boundFunction(value, index, O));
|
|
22
|
+
// in some IE10 builds, `hasOwnProperty` returns incorrect result on integer keys
|
|
23
|
+
// but since it's a `null` prototype object, we can safely use `in`
|
|
24
|
+
if (key in target) push.call(target[key], value);
|
|
25
|
+
else target[key] = [value];
|
|
26
|
+
}
|
|
27
|
+
if (specificConstructor) {
|
|
28
|
+
Constructor = specificConstructor(O);
|
|
29
|
+
if (Constructor !== Array) {
|
|
30
|
+
for (key in target) target[key] = arrayFromConstructorAndList(Constructor, target[key]);
|
|
31
|
+
}
|
|
32
|
+
} return target;
|
|
33
|
+
};
|
|
@@ -5,7 +5,7 @@ var toLength = require('../internals/to-length');
|
|
|
5
5
|
|
|
6
6
|
// `Array.prototype.{ findLast, findLastIndex }` methods implementation
|
|
7
7
|
var createMethod = function (TYPE) {
|
|
8
|
-
var
|
|
8
|
+
var IS_FIND_LAST_INDEX = TYPE == 1;
|
|
9
9
|
return function ($this, callbackfn, that) {
|
|
10
10
|
var O = toObject($this);
|
|
11
11
|
var self = IndexedObject(O);
|
|
@@ -16,19 +16,19 @@ var createMethod = function (TYPE) {
|
|
|
16
16
|
value = self[index];
|
|
17
17
|
result = boundFunction(value, index, O);
|
|
18
18
|
if (result) switch (TYPE) {
|
|
19
|
-
case
|
|
20
|
-
case
|
|
19
|
+
case 0: return value; // findLast
|
|
20
|
+
case 1: return index; // findLastIndex
|
|
21
21
|
}
|
|
22
22
|
}
|
|
23
|
-
return
|
|
23
|
+
return IS_FIND_LAST_INDEX ? -1 : undefined;
|
|
24
24
|
};
|
|
25
25
|
};
|
|
26
26
|
|
|
27
27
|
module.exports = {
|
|
28
28
|
// `Array.prototype.findLast` method
|
|
29
29
|
// https://github.com/tc39/proposal-array-find-from-last
|
|
30
|
-
findLast: createMethod(
|
|
30
|
+
findLast: createMethod(0),
|
|
31
31
|
// `Array.prototype.findLastIndex` method
|
|
32
32
|
// https://github.com/tc39/proposal-array-find-from-last
|
|
33
|
-
findLastIndex: createMethod(
|
|
33
|
+
findLastIndex: createMethod(1)
|
|
34
34
|
};
|
|
@@ -6,14 +6,14 @@ var arraySpeciesCreate = require('../internals/array-species-create');
|
|
|
6
6
|
|
|
7
7
|
var push = [].push;
|
|
8
8
|
|
|
9
|
-
// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex,
|
|
9
|
+
// `Array.prototype.{ forEach, map, filter, some, every, find, findIndex, filterReject }` methods implementation
|
|
10
10
|
var createMethod = function (TYPE) {
|
|
11
11
|
var IS_MAP = TYPE == 1;
|
|
12
12
|
var IS_FILTER = TYPE == 2;
|
|
13
13
|
var IS_SOME = TYPE == 3;
|
|
14
14
|
var IS_EVERY = TYPE == 4;
|
|
15
15
|
var IS_FIND_INDEX = TYPE == 6;
|
|
16
|
-
var
|
|
16
|
+
var IS_FILTER_REJECT = TYPE == 7;
|
|
17
17
|
var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;
|
|
18
18
|
return function ($this, callbackfn, that, specificCreate) {
|
|
19
19
|
var O = toObject($this);
|
|
@@ -22,7 +22,7 @@ var createMethod = function (TYPE) {
|
|
|
22
22
|
var length = toLength(self.length);
|
|
23
23
|
var index = 0;
|
|
24
24
|
var create = specificCreate || arraySpeciesCreate;
|
|
25
|
-
var target = IS_MAP ? create($this, length) : IS_FILTER ||
|
|
25
|
+
var target = IS_MAP ? create($this, length) : IS_FILTER || IS_FILTER_REJECT ? create($this, 0) : undefined;
|
|
26
26
|
var value, result;
|
|
27
27
|
for (;length > index; index++) if (NO_HOLES || index in self) {
|
|
28
28
|
value = self[index];
|
|
@@ -36,7 +36,7 @@ var createMethod = function (TYPE) {
|
|
|
36
36
|
case 2: push.call(target, value); // filter
|
|
37
37
|
} else switch (TYPE) {
|
|
38
38
|
case 4: return false; // every
|
|
39
|
-
case 7: push.call(target, value); //
|
|
39
|
+
case 7: push.call(target, value); // filterReject
|
|
40
40
|
}
|
|
41
41
|
}
|
|
42
42
|
}
|
|
@@ -66,7 +66,7 @@ module.exports = {
|
|
|
66
66
|
// `Array.prototype.findIndex` method
|
|
67
67
|
// https://tc39.es/ecma262/#sec-array.prototype.findIndex
|
|
68
68
|
findIndex: createMethod(6),
|
|
69
|
-
// `Array.prototype.
|
|
69
|
+
// `Array.prototype.filterReject` method
|
|
70
70
|
// https://github.com/tc39/proposal-array-filtering
|
|
71
|
-
|
|
71
|
+
filterReject: createMethod(7)
|
|
72
72
|
};
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
var isObject = require('../internals/is-object');
|
|
2
|
+
var isArray = require('../internals/is-array');
|
|
3
|
+
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
4
|
+
|
|
5
|
+
var SPECIES = wellKnownSymbol('species');
|
|
6
|
+
|
|
7
|
+
// a part of `ArraySpeciesCreate` abstract operation
|
|
8
|
+
// https://tc39.es/ecma262/#sec-arrayspeciescreate
|
|
9
|
+
module.exports = function (originalArray) {
|
|
10
|
+
var C;
|
|
11
|
+
if (isArray(originalArray)) {
|
|
12
|
+
C = originalArray.constructor;
|
|
13
|
+
// cross-realm fallback
|
|
14
|
+
if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
|
|
15
|
+
else if (isObject(C)) {
|
|
16
|
+
C = C[SPECIES];
|
|
17
|
+
if (C === null) C = undefined;
|
|
18
|
+
}
|
|
19
|
+
} return C === undefined ? Array : C;
|
|
20
|
+
};
|
|
@@ -1,20 +1,7 @@
|
|
|
1
|
-
var
|
|
2
|
-
var isArray = require('../internals/is-array');
|
|
3
|
-
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
4
|
-
|
|
5
|
-
var SPECIES = wellKnownSymbol('species');
|
|
1
|
+
var arraySpeciesConstructor = require('../internals/array-species-constructor');
|
|
6
2
|
|
|
7
3
|
// `ArraySpeciesCreate` abstract operation
|
|
8
4
|
// https://tc39.es/ecma262/#sec-arrayspeciescreate
|
|
9
5
|
module.exports = function (originalArray, length) {
|
|
10
|
-
|
|
11
|
-
if (isArray(originalArray)) {
|
|
12
|
-
C = originalArray.constructor;
|
|
13
|
-
// cross-realm fallback
|
|
14
|
-
if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;
|
|
15
|
-
else if (isObject(C)) {
|
|
16
|
-
C = C[SPECIES];
|
|
17
|
-
if (C === null) C = undefined;
|
|
18
|
-
}
|
|
19
|
-
} return new (C === undefined ? Array : C)(length === 0 ? 0 : length);
|
|
6
|
+
return new (arraySpeciesConstructor(originalArray))(length === 0 ? 0 : length);
|
|
20
7
|
};
|
package/internals/collection.js
CHANGED
|
@@ -50,7 +50,7 @@ module.exports = function (CONSTRUCTOR_NAME, wrapper, common) {
|
|
|
50
50
|
if (REPLACE) {
|
|
51
51
|
// create collection constructor
|
|
52
52
|
Constructor = common.getConstructor(wrapper, CONSTRUCTOR_NAME, IS_MAP, ADDER);
|
|
53
|
-
InternalMetadataModule.
|
|
53
|
+
InternalMetadataModule.enable();
|
|
54
54
|
} else if (isForced(CONSTRUCTOR_NAME, true)) {
|
|
55
55
|
var instance = new Constructor();
|
|
56
56
|
// early implementations not supports chaining
|
package/internals/create-html.js
CHANGED
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
var requireObjectCoercible = require('../internals/require-object-coercible');
|
|
2
|
+
var toString = require('../internals/to-string');
|
|
2
3
|
|
|
3
4
|
var quot = /"/g;
|
|
4
5
|
|
|
5
6
|
// `CreateHTML` abstract operation
|
|
6
7
|
// https://tc39.es/ecma262/#sec-createhtml
|
|
7
8
|
module.exports = function (string, tag, attribute, value) {
|
|
8
|
-
var S =
|
|
9
|
+
var S = toString(requireObjectCoercible(string));
|
|
9
10
|
var p1 = '<' + tag;
|
|
10
|
-
if (attribute !== '') p1 += ' ' + attribute + '="' +
|
|
11
|
+
if (attribute !== '') p1 += ' ' + attribute + '="' + toString(value).replace(quot, '"') + '"';
|
|
11
12
|
return p1 + '>' + S + '</' + tag + '>';
|
|
12
13
|
};
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
'use strict';
|
|
2
|
-
var
|
|
2
|
+
var toPropertyKey = require('../internals/to-property-key');
|
|
3
3
|
var definePropertyModule = require('../internals/object-define-property');
|
|
4
4
|
var createPropertyDescriptor = require('../internals/create-property-descriptor');
|
|
5
5
|
|
|
6
6
|
module.exports = function (object, key, value) {
|
|
7
|
-
var propertyKey =
|
|
7
|
+
var propertyKey = toPropertyKey(key);
|
|
8
8
|
if (propertyKey in object) definePropertyModule.f(object, propertyKey, createPropertyDescriptor(0, value));
|
|
9
9
|
else object[propertyKey] = value;
|
|
10
10
|
};
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var anObject = require('../internals/an-object');
|
|
3
|
-
var
|
|
3
|
+
var ordinaryToPrimitive = require('../internals/ordinary-to-primitive');
|
|
4
4
|
|
|
5
5
|
// `Date.prototype[@@toPrimitive](hint)` method implementation
|
|
6
6
|
// https://tc39.es/ecma262/#sec-date.prototype-@@toprimitive
|
|
7
7
|
module.exports = function (hint) {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
8
|
+
anObject(this);
|
|
9
|
+
if (hint === 'string' || hint === 'default') hint = 'string';
|
|
10
|
+
else if (hint !== 'number') throw TypeError('Incorrect hint');
|
|
11
|
+
return ordinaryToPrimitive(this, hint);
|
|
11
12
|
};
|
|
@@ -2,7 +2,8 @@ var global = require('../internals/global');
|
|
|
2
2
|
var userAgent = require('../internals/engine-user-agent');
|
|
3
3
|
|
|
4
4
|
var process = global.process;
|
|
5
|
-
var
|
|
5
|
+
var Deno = global.Deno;
|
|
6
|
+
var versions = process && process.versions || Deno && Deno.version;
|
|
6
7
|
var v8 = versions && versions.v8;
|
|
7
8
|
var match, version;
|
|
8
9
|
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
var path = require('../internals/path');
|
|
2
1
|
var global = require('../internals/global');
|
|
3
2
|
|
|
4
3
|
var aFunction = function (variable) {
|
|
@@ -6,6 +5,5 @@ var aFunction = function (variable) {
|
|
|
6
5
|
};
|
|
7
6
|
|
|
8
7
|
module.exports = function (namespace, method) {
|
|
9
|
-
return arguments.length < 2 ? aFunction(
|
|
10
|
-
: path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];
|
|
8
|
+
return arguments.length < 2 ? aFunction(global[namespace]) : global[namespace] && global[namespace][method];
|
|
11
9
|
};
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
var getIterator = require('../internals/get-iterator');
|
|
3
|
-
|
|
4
|
-
module.exports = IS_PURE ? getIterator : function (it) {
|
|
1
|
+
module.exports = function (it) {
|
|
5
2
|
// eslint-disable-next-line es/no-map -- safe
|
|
6
3
|
return Map.prototype.entries.call(it);
|
|
7
4
|
};
|
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
|
|
2
|
-
var getIterator = require('../internals/get-iterator');
|
|
3
|
-
|
|
4
|
-
module.exports = IS_PURE ? getIterator : function (it) {
|
|
1
|
+
module.exports = function (it) {
|
|
5
2
|
// eslint-disable-next-line es/no-set -- safe
|
|
6
3
|
return Set.prototype.values.call(it);
|
|
7
4
|
};
|
|
@@ -1,10 +1,14 @@
|
|
|
1
|
+
var $ = require('../internals/export');
|
|
1
2
|
var hiddenKeys = require('../internals/hidden-keys');
|
|
2
3
|
var isObject = require('../internals/is-object');
|
|
3
4
|
var has = require('../internals/has');
|
|
4
5
|
var defineProperty = require('../internals/object-define-property').f;
|
|
6
|
+
var getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');
|
|
7
|
+
var getOwnPropertyNamesExternalModule = require('../internals/object-get-own-property-names-external');
|
|
5
8
|
var uid = require('../internals/uid');
|
|
6
9
|
var FREEZING = require('../internals/freezing');
|
|
7
10
|
|
|
11
|
+
var REQUIRED = false;
|
|
8
12
|
var METADATA = uid('meta');
|
|
9
13
|
var id = 0;
|
|
10
14
|
|
|
@@ -48,12 +52,38 @@ var getWeakData = function (it, create) {
|
|
|
48
52
|
|
|
49
53
|
// add metadata on freeze-family methods calling
|
|
50
54
|
var onFreeze = function (it) {
|
|
51
|
-
if (FREEZING &&
|
|
55
|
+
if (FREEZING && REQUIRED && isExtensible(it) && !has(it, METADATA)) setMetadata(it);
|
|
52
56
|
return it;
|
|
53
57
|
};
|
|
54
58
|
|
|
59
|
+
var enable = function () {
|
|
60
|
+
meta.enable = function () { /* empty */ };
|
|
61
|
+
REQUIRED = true;
|
|
62
|
+
var getOwnPropertyNames = getOwnPropertyNamesModule.f;
|
|
63
|
+
var splice = [].splice;
|
|
64
|
+
var test = {};
|
|
65
|
+
test[METADATA] = 1;
|
|
66
|
+
|
|
67
|
+
// prevent exposing of metadata key
|
|
68
|
+
if (getOwnPropertyNames(test).length) {
|
|
69
|
+
getOwnPropertyNamesModule.f = function (it) {
|
|
70
|
+
var result = getOwnPropertyNames(it);
|
|
71
|
+
for (var i = 0, length = result.length; i < length; i++) {
|
|
72
|
+
if (result[i] === METADATA) {
|
|
73
|
+
splice.call(result, i, 1);
|
|
74
|
+
break;
|
|
75
|
+
}
|
|
76
|
+
} return result;
|
|
77
|
+
};
|
|
78
|
+
|
|
79
|
+
$({ target: 'Object', stat: true, forced: true }, {
|
|
80
|
+
getOwnPropertyNames: getOwnPropertyNamesExternalModule.f
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
};
|
|
84
|
+
|
|
55
85
|
var meta = module.exports = {
|
|
56
|
-
|
|
86
|
+
enable: enable,
|
|
57
87
|
fastKey: fastKey,
|
|
58
88
|
getWeakData: getWeakData,
|
|
59
89
|
onFreeze: onFreeze
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
var getBuiltIn = require('../internals/get-built-in');
|
|
2
|
+
var USE_SYMBOL_AS_UID = require('../internals/use-symbol-as-uid');
|
|
3
|
+
|
|
4
|
+
module.exports = USE_SYMBOL_AS_UID ? function (it) {
|
|
5
|
+
return typeof it == 'symbol';
|
|
6
|
+
} : function (it) {
|
|
7
|
+
var $Symbol = getBuiltIn('Symbol');
|
|
8
|
+
return typeof $Symbol == 'function' && Object(it) instanceof $Symbol;
|
|
9
|
+
};
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
var global = require('../internals/global');
|
|
2
|
+
var toString = require('../internals/to-string');
|
|
2
3
|
var trim = require('../internals/string-trim').trim;
|
|
3
4
|
var whitespaces = require('../internals/whitespaces');
|
|
4
5
|
|
|
@@ -8,7 +9,7 @@ var FORCED = 1 / $parseFloat(whitespaces + '-0') !== -Infinity;
|
|
|
8
9
|
// `parseFloat` method
|
|
9
10
|
// https://tc39.es/ecma262/#sec-parsefloat-string
|
|
10
11
|
module.exports = FORCED ? function parseFloat(string) {
|
|
11
|
-
var trimmedString = trim(
|
|
12
|
+
var trimmedString = trim(toString(string));
|
|
12
13
|
var result = $parseFloat(trimmedString);
|
|
13
14
|
return result === 0 && trimmedString.charAt(0) == '-' ? -0 : result;
|
|
14
15
|
} : $parseFloat;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
var global = require('../internals/global');
|
|
2
|
+
var toString = require('../internals/to-string');
|
|
2
3
|
var trim = require('../internals/string-trim').trim;
|
|
3
4
|
var whitespaces = require('../internals/whitespaces');
|
|
4
5
|
|
|
@@ -9,6 +10,6 @@ var FORCED = $parseInt(whitespaces + '08') !== 8 || $parseInt(whitespaces + '0x1
|
|
|
9
10
|
// `parseInt` method
|
|
10
11
|
// https://tc39.es/ecma262/#sec-parseint-string-radix
|
|
11
12
|
module.exports = FORCED ? function parseInt(string, radix) {
|
|
12
|
-
var S = trim(
|
|
13
|
+
var S = trim(toString(string));
|
|
13
14
|
return $parseInt(S, (radix >>> 0) || (hex.test(S) ? 16 : 10));
|
|
14
15
|
} : $parseInt;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
/* global ActiveXObject -- old IE, WSH */
|
|
1
2
|
var anObject = require('../internals/an-object');
|
|
2
3
|
var defineProperties = require('../internals/object-define-properties');
|
|
3
4
|
var enumBugKeys = require('../internals/enum-bug-keys');
|
|
@@ -33,15 +34,17 @@ var NullProtoObjectViaIFrame = function () {
|
|
|
33
34
|
var iframe = documentCreateElement('iframe');
|
|
34
35
|
var JS = 'java' + SCRIPT + ':';
|
|
35
36
|
var iframeDocument;
|
|
36
|
-
iframe.style
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
37
|
+
if (iframe.style) {
|
|
38
|
+
iframe.style.display = 'none';
|
|
39
|
+
html.appendChild(iframe);
|
|
40
|
+
// https://github.com/zloirock/core-js/issues/475
|
|
41
|
+
iframe.src = String(JS);
|
|
42
|
+
iframeDocument = iframe.contentWindow.document;
|
|
43
|
+
iframeDocument.open();
|
|
44
|
+
iframeDocument.write(scriptTag('document.F=Object'));
|
|
45
|
+
iframeDocument.close();
|
|
46
|
+
return iframeDocument.F;
|
|
47
|
+
}
|
|
45
48
|
};
|
|
46
49
|
|
|
47
50
|
// Check for document.domain and active x support
|
|
@@ -52,10 +55,12 @@ var NullProtoObjectViaIFrame = function () {
|
|
|
52
55
|
var activeXDocument;
|
|
53
56
|
var NullProtoObject = function () {
|
|
54
57
|
try {
|
|
55
|
-
|
|
56
|
-
activeXDocument = document.domain && new ActiveXObject('htmlfile');
|
|
58
|
+
activeXDocument = new ActiveXObject('htmlfile');
|
|
57
59
|
} catch (error) { /* ignore */ }
|
|
58
|
-
NullProtoObject =
|
|
60
|
+
NullProtoObject = document.domain && activeXDocument ?
|
|
61
|
+
NullProtoObjectViaActiveX(activeXDocument) : // old IE
|
|
62
|
+
NullProtoObjectViaIFrame() ||
|
|
63
|
+
NullProtoObjectViaActiveX(activeXDocument); // WSH
|
|
59
64
|
var length = enumBugKeys.length;
|
|
60
65
|
while (length--) delete NullProtoObject[PROTOTYPE][enumBugKeys[length]];
|
|
61
66
|
return NullProtoObject();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var DESCRIPTORS = require('../internals/descriptors');
|
|
2
2
|
var IE8_DOM_DEFINE = require('../internals/ie8-dom-define');
|
|
3
3
|
var anObject = require('../internals/an-object');
|
|
4
|
-
var
|
|
4
|
+
var toPropertyKey = require('../internals/to-property-key');
|
|
5
5
|
|
|
6
6
|
// eslint-disable-next-line es/no-object-defineproperty -- safe
|
|
7
7
|
var $defineProperty = Object.defineProperty;
|
|
@@ -10,7 +10,7 @@ var $defineProperty = Object.defineProperty;
|
|
|
10
10
|
// https://tc39.es/ecma262/#sec-object.defineproperty
|
|
11
11
|
exports.f = DESCRIPTORS ? $defineProperty : function defineProperty(O, P, Attributes) {
|
|
12
12
|
anObject(O);
|
|
13
|
-
P =
|
|
13
|
+
P = toPropertyKey(P);
|
|
14
14
|
anObject(Attributes);
|
|
15
15
|
if (IE8_DOM_DEFINE) try {
|
|
16
16
|
return $defineProperty(O, P, Attributes);
|
|
@@ -2,7 +2,7 @@ var DESCRIPTORS = require('../internals/descriptors');
|
|
|
2
2
|
var propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');
|
|
3
3
|
var createPropertyDescriptor = require('../internals/create-property-descriptor');
|
|
4
4
|
var toIndexedObject = require('../internals/to-indexed-object');
|
|
5
|
-
var
|
|
5
|
+
var toPropertyKey = require('../internals/to-property-key');
|
|
6
6
|
var has = require('../internals/has');
|
|
7
7
|
var IE8_DOM_DEFINE = require('../internals/ie8-dom-define');
|
|
8
8
|
|
|
@@ -13,7 +13,7 @@ var $getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;
|
|
|
13
13
|
// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor
|
|
14
14
|
exports.f = DESCRIPTORS ? $getOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {
|
|
15
15
|
O = toIndexedObject(O);
|
|
16
|
-
P =
|
|
16
|
+
P = toPropertyKey(P);
|
|
17
17
|
if (IE8_DOM_DEFINE) try {
|
|
18
18
|
return $getOwnPropertyDescriptor(O, P);
|
|
19
19
|
} catch (error) { /* empty */ }
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
var isObject = require('../internals/is-object');
|
|
2
|
+
|
|
3
|
+
// `OrdinaryToPrimitive` abstract operation
|
|
4
|
+
// https://tc39.es/ecma262/#sec-ordinarytoprimitive
|
|
5
|
+
module.exports = function (input, pref) {
|
|
6
|
+
var fn, val;
|
|
7
|
+
if (pref === 'string' && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
|
|
8
|
+
if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;
|
|
9
|
+
if (pref !== 'string' && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;
|
|
10
|
+
throw TypeError("Can't convert object to primitive value");
|
|
11
|
+
};
|
package/internals/regexp-exec.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
/* eslint-disable regexp/no-assertion-capturing-group, regexp/no-empty-group, regexp/no-lazy-ends -- testing */
|
|
3
3
|
/* eslint-disable regexp/no-useless-quantifier -- testing */
|
|
4
|
+
var toString = require('../internals/to-string');
|
|
4
5
|
var regexpFlags = require('../internals/regexp-flags');
|
|
5
6
|
var stickyHelpers = require('../internals/regexp-sticky-helpers');
|
|
6
7
|
var shared = require('../internals/shared');
|
|
@@ -31,9 +32,10 @@ var PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED || UNSUPPORTED_Y || UNSUPP
|
|
|
31
32
|
|
|
32
33
|
if (PATCH) {
|
|
33
34
|
// eslint-disable-next-line max-statements -- TODO
|
|
34
|
-
patchedExec = function exec(
|
|
35
|
+
patchedExec = function exec(string) {
|
|
35
36
|
var re = this;
|
|
36
37
|
var state = getInternalState(re);
|
|
38
|
+
var str = toString(string);
|
|
37
39
|
var raw = state.raw;
|
|
38
40
|
var result, reCopy, lastIndex, match, i, object, group;
|
|
39
41
|
|
|
@@ -57,9 +59,9 @@ if (PATCH) {
|
|
|
57
59
|
flags += 'g';
|
|
58
60
|
}
|
|
59
61
|
|
|
60
|
-
strCopy =
|
|
62
|
+
strCopy = str.slice(re.lastIndex);
|
|
61
63
|
// Support anchored sticky behavior.
|
|
62
|
-
if (re.lastIndex > 0 && (!re.multiline || re.multiline && str
|
|
64
|
+
if (re.lastIndex > 0 && (!re.multiline || re.multiline && str.charAt(re.lastIndex - 1) !== '\n')) {
|
|
63
65
|
source = '(?: ' + source + ')';
|
|
64
66
|
strCopy = ' ' + strCopy;
|
|
65
67
|
charsAdded++;
|
package/internals/set-global.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
var global = require('../internals/global');
|
|
2
|
-
var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
|
|
3
2
|
|
|
4
3
|
module.exports = function (key, value) {
|
|
5
4
|
try {
|
|
6
|
-
|
|
5
|
+
// eslint-disable-next-line es/no-object-defineproperty -- safe
|
|
6
|
+
Object.defineProperty(global, key, { value: value, configurable: true, writable: true });
|
|
7
7
|
} catch (error) {
|
|
8
8
|
global[key] = value;
|
|
9
9
|
} return value;
|
package/internals/shared.js
CHANGED
|
@@ -4,7 +4,7 @@ var store = require('../internals/shared-store');
|
|
|
4
4
|
(module.exports = function (key, value) {
|
|
5
5
|
return store[key] || (store[key] = value !== undefined ? value : {});
|
|
6
6
|
})('versions', []).push({
|
|
7
|
-
version: '3.
|
|
7
|
+
version: '3.16.0',
|
|
8
8
|
mode: IS_PURE ? 'pure' : 'global',
|
|
9
9
|
copyright: '© 2021 Denis Pushkarev (zloirock.ru)'
|
|
10
10
|
});
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
var toInteger = require('../internals/to-integer');
|
|
2
|
+
var toString = require('../internals/to-string');
|
|
2
3
|
var requireObjectCoercible = require('../internals/require-object-coercible');
|
|
3
4
|
|
|
4
|
-
// `String.prototype.
|
|
5
|
+
// `String.prototype.codePointAt` methods implementation
|
|
5
6
|
var createMethod = function (CONVERT_TO_STRING) {
|
|
6
7
|
return function ($this, pos) {
|
|
7
|
-
var S =
|
|
8
|
+
var S = toString(requireObjectCoercible($this));
|
|
8
9
|
var position = toInteger(pos);
|
|
9
10
|
var size = S.length;
|
|
10
11
|
var first, second;
|