core-js 3.22.3 → 3.22.4
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/internals/array-buffer-view-core.js +4 -4
- package/internals/array-buffer.js +3 -3
- package/internals/async-from-sync-iterator.js +2 -2
- package/internals/async-iterator-create-proxy.js +2 -2
- package/internals/async-iterator-prototype.js +2 -2
- package/internals/collection-strong.js +3 -3
- package/internals/collection-weak.js +3 -3
- package/internals/collection.js +2 -2
- package/internals/define-built-in-accessor.js +8 -0
- package/internals/define-built-in.js +25 -0
- package/internals/define-built-ins.js +6 -0
- package/internals/define-iterator.js +4 -4
- package/internals/export.js +2 -3
- package/internals/fix-regexp-well-known-symbol-logic.js +3 -3
- package/internals/iterator-create-proxy.js +2 -2
- package/internals/iterators-core.js +2 -2
- package/internals/make-built-in.js +40 -0
- package/internals/shared.js +2 -2
- package/internals/symbol-define-to-primitive.js +3 -3
- package/modules/es.aggregate-error.cause.js +1 -1
- package/modules/es.array.concat.js +1 -1
- package/modules/es.date.to-json.js +1 -1
- package/modules/es.date.to-primitive.js +2 -2
- package/modules/es.date.to-string.js +2 -2
- package/modules/es.error.cause.js +2 -2
- package/modules/es.error.to-string.js +2 -2
- package/modules/es.function.has-instance.js +3 -2
- package/modules/es.json.stringify.js +1 -1
- package/modules/es.math.hypot.js +1 -1
- package/modules/es.number.constructor.js +2 -2
- package/modules/es.object.assign.js +1 -1
- package/modules/es.object.to-string.js +2 -2
- package/modules/es.promise.catch.js +2 -2
- package/modules/es.promise.constructor.js +16 -20
- package/modules/es.promise.finally.js +2 -2
- package/modules/es.regexp.constructor.js +2 -2
- package/modules/es.regexp.dot-all.js +3 -3
- package/modules/es.regexp.flags.js +2 -2
- package/modules/es.regexp.sticky.js +3 -3
- package/modules/es.regexp.to-string.js +2 -2
- package/modules/es.string.from-code-point.js +1 -1
- package/modules/es.string.match-all.js +2 -2
- package/modules/es.symbol.constructor.js +4 -4
- package/modules/es.weak-map.constructor.js +2 -2
- package/modules/esnext.array.last-index.js +2 -2
- package/modules/esnext.array.last-item.js +2 -2
- package/modules/esnext.array.to-spliced.js +1 -1
- package/modules/esnext.map.merge.js +1 -1
- package/modules/esnext.observable.constructor.js +11 -11
- package/modules/esnext.typed-array.to-spliced.js +1 -1
- package/modules/web.dom-exception.constructor.js +9 -9
- package/modules/web.url-search-params.constructor.js +5 -5
- package/modules/web.url.constructor.js +42 -44
- package/package.json +2 -2
- package/internals/redefine-all.js +0 -6
- package/internals/redefine.js +0 -46
|
@@ -8,7 +8,7 @@ var hasOwn = require('../internals/has-own-property');
|
|
|
8
8
|
var classof = require('../internals/classof');
|
|
9
9
|
var tryToString = require('../internals/try-to-string');
|
|
10
10
|
var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
|
|
11
|
-
var
|
|
11
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
12
12
|
var defineProperty = require('../internals/object-define-property').f;
|
|
13
13
|
var isPrototypeOf = require('../internals/object-is-prototype-of');
|
|
14
14
|
var getPrototypeOf = require('../internals/object-get-prototype-of');
|
|
@@ -89,7 +89,7 @@ var exportTypedArrayMethod = function (KEY, property, forced, options) {
|
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
91
|
if (!TypedArrayPrototype[KEY] || forced) {
|
|
92
|
-
|
|
92
|
+
defineBuiltIn(TypedArrayPrototype, KEY, forced ? property
|
|
93
93
|
: NATIVE_ARRAY_BUFFER_VIEWS && Int8ArrayPrototype[KEY] || property, options);
|
|
94
94
|
}
|
|
95
95
|
};
|
|
@@ -107,14 +107,14 @@ var exportTypedArrayStaticMethod = function (KEY, property, forced) {
|
|
|
107
107
|
if (!TypedArray[KEY] || forced) {
|
|
108
108
|
// V8 ~ Chrome 49-50 `%TypedArray%` methods are non-writable non-configurable
|
|
109
109
|
try {
|
|
110
|
-
return
|
|
110
|
+
return defineBuiltIn(TypedArray, KEY, forced ? property : NATIVE_ARRAY_BUFFER_VIEWS && TypedArray[KEY] || property);
|
|
111
111
|
} catch (error) { /* empty */ }
|
|
112
112
|
} else return;
|
|
113
113
|
}
|
|
114
114
|
for (ARRAY in TypedArrayConstructorsList) {
|
|
115
115
|
TypedArrayConstructor = global[ARRAY];
|
|
116
116
|
if (TypedArrayConstructor && (!TypedArrayConstructor[KEY] || forced)) {
|
|
117
|
-
|
|
117
|
+
defineBuiltIn(TypedArrayConstructor, KEY, property);
|
|
118
118
|
}
|
|
119
119
|
}
|
|
120
120
|
};
|
|
@@ -5,7 +5,7 @@ var DESCRIPTORS = require('../internals/descriptors');
|
|
|
5
5
|
var NATIVE_ARRAY_BUFFER = require('../internals/array-buffer-native');
|
|
6
6
|
var FunctionName = require('../internals/function-name');
|
|
7
7
|
var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
|
|
8
|
-
var
|
|
8
|
+
var defineBuiltIns = require('../internals/define-built-ins');
|
|
9
9
|
var fails = require('../internals/fails');
|
|
10
10
|
var anInstance = require('../internals/an-instance');
|
|
11
11
|
var toIntegerOrInfinity = require('../internals/to-integer-or-infinity');
|
|
@@ -134,7 +134,7 @@ if (!NATIVE_ARRAY_BUFFER) {
|
|
|
134
134
|
addGetter($DataView, 'byteOffset');
|
|
135
135
|
}
|
|
136
136
|
|
|
137
|
-
|
|
137
|
+
defineBuiltIns(DataViewPrototype, {
|
|
138
138
|
getInt8: function getInt8(byteOffset) {
|
|
139
139
|
return get(this, 1, byteOffset)[0] << 24 >> 24;
|
|
140
140
|
},
|
|
@@ -228,7 +228,7 @@ if (!NATIVE_ARRAY_BUFFER) {
|
|
|
228
228
|
var $setInt8 = uncurryThis(DataViewPrototype.setInt8);
|
|
229
229
|
testView.setInt8(0, 2147483648);
|
|
230
230
|
testView.setInt8(1, 2147483649);
|
|
231
|
-
if (testView.getInt8(0) || !testView.getInt8(1))
|
|
231
|
+
if (testView.getInt8(0) || !testView.getInt8(1)) defineBuiltIns(DataViewPrototype, {
|
|
232
232
|
setInt8: function setInt8(byteOffset, value) {
|
|
233
233
|
$setInt8(this, byteOffset, value << 24 >> 24);
|
|
234
234
|
},
|
|
@@ -3,7 +3,7 @@ var apply = require('../internals/function-apply');
|
|
|
3
3
|
var anObject = require('../internals/an-object');
|
|
4
4
|
var create = require('../internals/object-create');
|
|
5
5
|
var getMethod = require('../internals/get-method');
|
|
6
|
-
var
|
|
6
|
+
var defineBuiltIns = require('../internals/define-built-ins');
|
|
7
7
|
var InternalStateModule = require('../internals/internal-state');
|
|
8
8
|
var getBuiltIn = require('../internals/get-built-in');
|
|
9
9
|
var AsyncIteratorPrototype = require('../internals/async-iterator-prototype');
|
|
@@ -29,7 +29,7 @@ var AsyncFromSyncIterator = function AsyncIterator(iterator) {
|
|
|
29
29
|
});
|
|
30
30
|
};
|
|
31
31
|
|
|
32
|
-
AsyncFromSyncIterator.prototype =
|
|
32
|
+
AsyncFromSyncIterator.prototype = defineBuiltIns(create(AsyncIteratorPrototype), {
|
|
33
33
|
next: function next(arg) {
|
|
34
34
|
var state = getInternalState(this);
|
|
35
35
|
var hasArg = !!arguments.length;
|
|
@@ -4,7 +4,7 @@ var aCallable = require('../internals/a-callable');
|
|
|
4
4
|
var anObject = require('../internals/an-object');
|
|
5
5
|
var create = require('../internals/object-create');
|
|
6
6
|
var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
|
|
7
|
-
var
|
|
7
|
+
var defineBuiltIns = require('../internals/define-built-ins');
|
|
8
8
|
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
9
9
|
var InternalStateModule = require('../internals/internal-state');
|
|
10
10
|
var getBuiltIn = require('../internals/get-built-in');
|
|
@@ -28,7 +28,7 @@ module.exports = function (nextHandler, IS_ITERATOR) {
|
|
|
28
28
|
setInternalState(this, state);
|
|
29
29
|
};
|
|
30
30
|
|
|
31
|
-
AsyncIteratorProxy.prototype =
|
|
31
|
+
AsyncIteratorProxy.prototype = defineBuiltIns(create(AsyncIteratorPrototype), {
|
|
32
32
|
next: function next(arg) {
|
|
33
33
|
var that = this;
|
|
34
34
|
var hasArgument = !!arguments.length;
|
|
@@ -3,7 +3,7 @@ var shared = require('../internals/shared-store');
|
|
|
3
3
|
var isCallable = require('../internals/is-callable');
|
|
4
4
|
var create = require('../internals/object-create');
|
|
5
5
|
var getPrototypeOf = require('../internals/object-get-prototype-of');
|
|
6
|
-
var
|
|
6
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
7
7
|
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
8
8
|
var IS_PURE = require('../internals/is-pure');
|
|
9
9
|
|
|
@@ -29,7 +29,7 @@ if (!AsyncIteratorPrototype) AsyncIteratorPrototype = {};
|
|
|
29
29
|
else if (IS_PURE) AsyncIteratorPrototype = create(AsyncIteratorPrototype);
|
|
30
30
|
|
|
31
31
|
if (!isCallable(AsyncIteratorPrototype[ASYNC_ITERATOR])) {
|
|
32
|
-
|
|
32
|
+
defineBuiltIn(AsyncIteratorPrototype, ASYNC_ITERATOR, function () {
|
|
33
33
|
return this;
|
|
34
34
|
});
|
|
35
35
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var defineProperty = require('../internals/object-define-property').f;
|
|
3
3
|
var create = require('../internals/object-create');
|
|
4
|
-
var
|
|
4
|
+
var defineBuiltIns = require('../internals/define-built-ins');
|
|
5
5
|
var bind = require('../internals/function-bind-context');
|
|
6
6
|
var anInstance = require('../internals/an-instance');
|
|
7
7
|
var iterate = require('../internals/iterate');
|
|
@@ -71,7 +71,7 @@ module.exports = {
|
|
|
71
71
|
}
|
|
72
72
|
};
|
|
73
73
|
|
|
74
|
-
|
|
74
|
+
defineBuiltIns(Prototype, {
|
|
75
75
|
// `{ Map, Set }.prototype.clear()` methods
|
|
76
76
|
// https://tc39.es/ecma262/#sec-map.prototype.clear
|
|
77
77
|
// https://tc39.es/ecma262/#sec-set.prototype.clear
|
|
@@ -131,7 +131,7 @@ module.exports = {
|
|
|
131
131
|
}
|
|
132
132
|
});
|
|
133
133
|
|
|
134
|
-
|
|
134
|
+
defineBuiltIns(Prototype, IS_MAP ? {
|
|
135
135
|
// `Map.prototype.get(key)` method
|
|
136
136
|
// https://tc39.es/ecma262/#sec-map.prototype.get
|
|
137
137
|
get: function get(key) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var uncurryThis = require('../internals/function-uncurry-this');
|
|
3
|
-
var
|
|
3
|
+
var defineBuiltIns = require('../internals/define-built-ins');
|
|
4
4
|
var getWeakData = require('../internals/internal-metadata').getWeakData;
|
|
5
5
|
var anObject = require('../internals/an-object');
|
|
6
6
|
var isObject = require('../internals/is-object');
|
|
@@ -78,7 +78,7 @@ module.exports = {
|
|
|
78
78
|
return that;
|
|
79
79
|
};
|
|
80
80
|
|
|
81
|
-
|
|
81
|
+
defineBuiltIns(Prototype, {
|
|
82
82
|
// `{ WeakMap, WeakSet }.prototype.delete(key)` methods
|
|
83
83
|
// https://tc39.es/ecma262/#sec-weakmap.prototype.delete
|
|
84
84
|
// https://tc39.es/ecma262/#sec-weakset.prototype.delete
|
|
@@ -101,7 +101,7 @@ module.exports = {
|
|
|
101
101
|
}
|
|
102
102
|
});
|
|
103
103
|
|
|
104
|
-
|
|
104
|
+
defineBuiltIns(Prototype, IS_MAP ? {
|
|
105
105
|
// `WeakMap.prototype.get(key)` method
|
|
106
106
|
// https://tc39.es/ecma262/#sec-weakmap.prototype.get
|
|
107
107
|
get: function get(key) {
|
package/internals/collection.js
CHANGED
|
@@ -3,7 +3,7 @@ var $ = require('../internals/export');
|
|
|
3
3
|
var global = require('../internals/global');
|
|
4
4
|
var uncurryThis = require('../internals/function-uncurry-this');
|
|
5
5
|
var isForced = require('../internals/is-forced');
|
|
6
|
-
var
|
|
6
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
7
7
|
var InternalMetadataModule = require('../internals/internal-metadata');
|
|
8
8
|
var iterate = require('../internals/iterate');
|
|
9
9
|
var anInstance = require('../internals/an-instance');
|
|
@@ -25,7 +25,7 @@ module.exports = function (CONSTRUCTOR_NAME, wrapper, common) {
|
|
|
25
25
|
|
|
26
26
|
var fixMethod = function (KEY) {
|
|
27
27
|
var uncurriedNativeMethod = uncurryThis(NativePrototype[KEY]);
|
|
28
|
-
|
|
28
|
+
defineBuiltIn(NativePrototype, KEY,
|
|
29
29
|
KEY == 'add' ? function add(value) {
|
|
30
30
|
uncurriedNativeMethod(this, value === 0 ? 0 : value);
|
|
31
31
|
return this;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
var makeBuiltIn = require('../internals/make-built-in');
|
|
2
|
+
var defineProperty = require('../internals/object-define-property');
|
|
3
|
+
|
|
4
|
+
module.exports = function (target, name, descriptor) {
|
|
5
|
+
if (descriptor.get) makeBuiltIn(descriptor.get, name, { getter: true });
|
|
6
|
+
if (descriptor.set) makeBuiltIn(descriptor.set, name, { setter: true });
|
|
7
|
+
return defineProperty.f(target, name, descriptor);
|
|
8
|
+
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
var global = require('../internals/global');
|
|
2
|
+
var isCallable = require('../internals/is-callable');
|
|
3
|
+
var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
|
|
4
|
+
var makeBuiltIn = require('../internals/make-built-in');
|
|
5
|
+
var setGlobal = require('../internals/set-global');
|
|
6
|
+
|
|
7
|
+
module.exports = function (O, key, value, options) {
|
|
8
|
+
var unsafe = options ? !!options.unsafe : false;
|
|
9
|
+
var simple = options ? !!options.enumerable : false;
|
|
10
|
+
var noTargetGet = options ? !!options.noTargetGet : false;
|
|
11
|
+
var name = options && options.name !== undefined ? options.name : key;
|
|
12
|
+
if (isCallable(value)) makeBuiltIn(value, name, options);
|
|
13
|
+
if (O === global) {
|
|
14
|
+
if (simple) O[key] = value;
|
|
15
|
+
else setGlobal(key, value);
|
|
16
|
+
return O;
|
|
17
|
+
} else if (!unsafe) {
|
|
18
|
+
delete O[key];
|
|
19
|
+
} else if (!noTargetGet && O[key]) {
|
|
20
|
+
simple = true;
|
|
21
|
+
}
|
|
22
|
+
if (simple) O[key] = value;
|
|
23
|
+
else createNonEnumerableProperty(O, key, value);
|
|
24
|
+
return O;
|
|
25
|
+
};
|
|
@@ -9,7 +9,7 @@ var getPrototypeOf = require('../internals/object-get-prototype-of');
|
|
|
9
9
|
var setPrototypeOf = require('../internals/object-set-prototype-of');
|
|
10
10
|
var setToStringTag = require('../internals/set-to-string-tag');
|
|
11
11
|
var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
|
|
12
|
-
var
|
|
12
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
13
13
|
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
14
14
|
var Iterators = require('../internals/iterators');
|
|
15
15
|
var IteratorsCore = require('../internals/iterators-core');
|
|
@@ -56,7 +56,7 @@ module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, I
|
|
|
56
56
|
if (setPrototypeOf) {
|
|
57
57
|
setPrototypeOf(CurrentIteratorPrototype, IteratorPrototype);
|
|
58
58
|
} else if (!isCallable(CurrentIteratorPrototype[ITERATOR])) {
|
|
59
|
-
|
|
59
|
+
defineBuiltIn(CurrentIteratorPrototype, ITERATOR, returnThis);
|
|
60
60
|
}
|
|
61
61
|
}
|
|
62
62
|
// Set @@toStringTag to native iterators
|
|
@@ -84,14 +84,14 @@ module.exports = function (Iterable, NAME, IteratorConstructor, next, DEFAULT, I
|
|
|
84
84
|
};
|
|
85
85
|
if (FORCED) for (KEY in methods) {
|
|
86
86
|
if (BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME || !(KEY in IterablePrototype)) {
|
|
87
|
-
|
|
87
|
+
defineBuiltIn(IterablePrototype, KEY, methods[KEY]);
|
|
88
88
|
}
|
|
89
89
|
} else $({ target: NAME, proto: true, forced: BUGGY_SAFARI_ITERATORS || INCORRECT_VALUES_NAME }, methods);
|
|
90
90
|
}
|
|
91
91
|
|
|
92
92
|
// define iterator
|
|
93
93
|
if ((!IS_PURE || FORCED) && IterablePrototype[ITERATOR] !== defaultIterator) {
|
|
94
|
-
|
|
94
|
+
defineBuiltIn(IterablePrototype, ITERATOR, defaultIterator, { name: DEFAULT });
|
|
95
95
|
}
|
|
96
96
|
Iterators[NAME] = defaultIterator;
|
|
97
97
|
|
package/internals/export.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var global = require('../internals/global');
|
|
2
2
|
var getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;
|
|
3
3
|
var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
|
|
4
|
-
var
|
|
4
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
5
5
|
var setGlobal = require('../internals/set-global');
|
|
6
6
|
var copyConstructorProperties = require('../internals/copy-constructor-properties');
|
|
7
7
|
var isForced = require('../internals/is-forced');
|
|
@@ -49,7 +49,6 @@ module.exports = function (options, source) {
|
|
|
49
49
|
if (options.sham || (targetProperty && targetProperty.sham)) {
|
|
50
50
|
createNonEnumerableProperty(sourceProperty, 'sham', true);
|
|
51
51
|
}
|
|
52
|
-
|
|
53
|
-
redefine(target, key, sourceProperty, options);
|
|
52
|
+
defineBuiltIn(target, key, sourceProperty, options);
|
|
54
53
|
}
|
|
55
54
|
};
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
// TODO: Remove from `core-js@4` since it's moved to entry points
|
|
3
3
|
require('../modules/es.regexp.exec');
|
|
4
4
|
var uncurryThis = require('../internals/function-uncurry-this');
|
|
5
|
-
var
|
|
5
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
6
6
|
var regexpExec = require('../internals/regexp-exec');
|
|
7
7
|
var fails = require('../internals/fails');
|
|
8
8
|
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
@@ -66,8 +66,8 @@ module.exports = function (KEY, exec, FORCED, SHAM) {
|
|
|
66
66
|
return { done: false };
|
|
67
67
|
});
|
|
68
68
|
|
|
69
|
-
|
|
70
|
-
|
|
69
|
+
defineBuiltIn(String.prototype, KEY, methods[0]);
|
|
70
|
+
defineBuiltIn(RegExpPrototype, SYMBOL, methods[1]);
|
|
71
71
|
}
|
|
72
72
|
|
|
73
73
|
if (SHAM) createNonEnumerableProperty(RegExpPrototype[SYMBOL], 'sham', true);
|
|
@@ -4,7 +4,7 @@ var aCallable = require('../internals/a-callable');
|
|
|
4
4
|
var anObject = require('../internals/an-object');
|
|
5
5
|
var create = require('../internals/object-create');
|
|
6
6
|
var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
|
|
7
|
-
var
|
|
7
|
+
var defineBuiltIns = require('../internals/define-built-ins');
|
|
8
8
|
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
9
9
|
var InternalStateModule = require('../internals/internal-state');
|
|
10
10
|
var getMethod = require('../internals/get-method');
|
|
@@ -25,7 +25,7 @@ module.exports = function (nextHandler, IS_ITERATOR) {
|
|
|
25
25
|
setInternalState(this, state);
|
|
26
26
|
};
|
|
27
27
|
|
|
28
|
-
IteratorProxy.prototype =
|
|
28
|
+
IteratorProxy.prototype = defineBuiltIns(create(IteratorPrototype), {
|
|
29
29
|
next: function next(arg) {
|
|
30
30
|
var state = getInternalState(this);
|
|
31
31
|
var args = arguments.length ? [state.ignoreArg ? undefined : arg] : IS_ITERATOR ? [] : [undefined];
|
|
@@ -3,7 +3,7 @@ var fails = require('../internals/fails');
|
|
|
3
3
|
var isCallable = require('../internals/is-callable');
|
|
4
4
|
var create = require('../internals/object-create');
|
|
5
5
|
var getPrototypeOf = require('../internals/object-get-prototype-of');
|
|
6
|
-
var
|
|
6
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
7
7
|
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
8
8
|
var IS_PURE = require('../internals/is-pure');
|
|
9
9
|
|
|
@@ -37,7 +37,7 @@ else if (IS_PURE) IteratorPrototype = create(IteratorPrototype);
|
|
|
37
37
|
// `%IteratorPrototype%[@@iterator]()` method
|
|
38
38
|
// https://tc39.es/ecma262/#sec-%iteratorprototype%-@@iterator
|
|
39
39
|
if (!isCallable(IteratorPrototype[ITERATOR])) {
|
|
40
|
-
|
|
40
|
+
defineBuiltIn(IteratorPrototype, ITERATOR, function () {
|
|
41
41
|
return this;
|
|
42
42
|
});
|
|
43
43
|
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
var fails = require('../internals/fails');
|
|
2
|
+
var isCallable = require('../internals/is-callable');
|
|
3
|
+
var hasOwn = require('../internals/has-own-property');
|
|
4
|
+
var defineProperty = require('../internals/object-define-property').f;
|
|
5
|
+
var CONFIGURABLE_FUNCTION_NAME = require('../internals/function-name').CONFIGURABLE;
|
|
6
|
+
var inspectSource = require('../internals/inspect-source');
|
|
7
|
+
var InternalStateModule = require('../internals/internal-state');
|
|
8
|
+
|
|
9
|
+
var enforceInternalState = InternalStateModule.enforce;
|
|
10
|
+
var getInternalState = InternalStateModule.get;
|
|
11
|
+
|
|
12
|
+
var CONFIGURABLE_LENGTH = !fails(function () {
|
|
13
|
+
return defineProperty(function () { /* empty */ }, 'length', { value: 8 }).length !== 8;
|
|
14
|
+
});
|
|
15
|
+
|
|
16
|
+
var TEMPLATE = String(String).split('String');
|
|
17
|
+
|
|
18
|
+
var makeBuiltIn = module.exports = function (value, name, options) {
|
|
19
|
+
if (String(name).slice(0, 7) === 'Symbol(') {
|
|
20
|
+
name = '[' + String(name).replace(/^Symbol\(([^)]*)\)/, '$1') + ']';
|
|
21
|
+
}
|
|
22
|
+
if (options && options.getter) name = 'get ' + name;
|
|
23
|
+
if (options && options.setter) name = 'set ' + name;
|
|
24
|
+
if (!hasOwn(value, 'name') || (CONFIGURABLE_FUNCTION_NAME && value.name !== name)) {
|
|
25
|
+
defineProperty(value, 'name', { value: name, configurable: true });
|
|
26
|
+
}
|
|
27
|
+
if (CONFIGURABLE_LENGTH && options && hasOwn(options, 'arity') && value.length !== options.arity) {
|
|
28
|
+
defineProperty(value, 'length', { value: options.arity });
|
|
29
|
+
}
|
|
30
|
+
var state = enforceInternalState(value);
|
|
31
|
+
if (!hasOwn(state, 'source')) {
|
|
32
|
+
state.source = TEMPLATE.join(typeof name == 'string' ? name : '');
|
|
33
|
+
} return value;
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative
|
|
37
|
+
// eslint-disable-next-line no-extend-native -- required
|
|
38
|
+
Function.prototype.toString = makeBuiltIn(function toString() {
|
|
39
|
+
return isCallable(this) && getInternalState(this).source || inspectSource(this);
|
|
40
|
+
}, 'toString');
|
package/internals/shared.js
CHANGED
|
@@ -4,9 +4,9 @@ var store = require('../internals/shared-store');
|
|
|
4
4
|
(module.exports = function (key, value) {
|
|
5
5
|
return store[key] || (store[key] = value !== undefined ? value : {});
|
|
6
6
|
})('versions', []).push({
|
|
7
|
-
version: '3.22.
|
|
7
|
+
version: '3.22.4',
|
|
8
8
|
mode: IS_PURE ? 'pure' : 'global',
|
|
9
9
|
copyright: '© 2014-2022 Denis Pushkarev (zloirock.ru)',
|
|
10
|
-
license: 'https://github.com/zloirock/core-js/blob/v3.22.
|
|
10
|
+
license: 'https://github.com/zloirock/core-js/blob/v3.22.4/LICENSE',
|
|
11
11
|
source: 'https://github.com/zloirock/core-js'
|
|
12
12
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var call = require('../internals/function-call');
|
|
2
2
|
var getBuiltIn = require('../internals/get-built-in');
|
|
3
3
|
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
4
|
-
var
|
|
4
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
5
5
|
|
|
6
6
|
module.exports = function () {
|
|
7
7
|
var Symbol = getBuiltIn('Symbol');
|
|
@@ -13,8 +13,8 @@ module.exports = function () {
|
|
|
13
13
|
// `Symbol.prototype[@@toPrimitive]` method
|
|
14
14
|
// https://tc39.es/ecma262/#sec-symbol.prototype-@@toprimitive
|
|
15
15
|
// eslint-disable-next-line no-unused-vars -- required for .length
|
|
16
|
-
|
|
16
|
+
defineBuiltIn(SymbolPrototype, TO_PRIMITIVE, function (hint) {
|
|
17
17
|
return call(valueOf, this);
|
|
18
|
-
});
|
|
18
|
+
}, { arity: 1 });
|
|
19
19
|
}
|
|
20
20
|
};
|
|
@@ -13,7 +13,7 @@ var FORCED = !fails(function () {
|
|
|
13
13
|
});
|
|
14
14
|
|
|
15
15
|
// https://github.com/tc39/proposal-error-cause
|
|
16
|
-
$({ global: true, forced: FORCED }, {
|
|
16
|
+
$({ global: true, arity: 2, forced: FORCED }, {
|
|
17
17
|
AggregateError: wrapErrorConstructorWithCause(AGGREGATE_ERROR, function (init) {
|
|
18
18
|
// eslint-disable-next-line no-unused-vars -- required for functions `.length`
|
|
19
19
|
return function AggregateError(errors, message) { return apply(init, this, arguments); };
|
|
@@ -39,7 +39,7 @@ var FORCED = !IS_CONCAT_SPREADABLE_SUPPORT || !SPECIES_SUPPORT;
|
|
|
39
39
|
// `Array.prototype.concat` method
|
|
40
40
|
// https://tc39.es/ecma262/#sec-array.prototype.concat
|
|
41
41
|
// with adding support of @@isConcatSpreadable and @@species
|
|
42
|
-
$({ target: 'Array', proto: true, forced: FORCED }, {
|
|
42
|
+
$({ target: 'Array', proto: true, arity: 1, forced: FORCED }, {
|
|
43
43
|
// eslint-disable-next-line no-unused-vars -- required for `.length`
|
|
44
44
|
concat: function concat(arg) {
|
|
45
45
|
var O = toObject(this);
|
|
@@ -11,7 +11,7 @@ var FORCED = fails(function () {
|
|
|
11
11
|
|
|
12
12
|
// `Date.prototype.toJSON` method
|
|
13
13
|
// https://tc39.es/ecma262/#sec-date.prototype.tojson
|
|
14
|
-
$({ target: 'Date', proto: true, forced: FORCED }, {
|
|
14
|
+
$({ target: 'Date', proto: true, arity: 1, forced: FORCED }, {
|
|
15
15
|
// eslint-disable-next-line no-unused-vars -- required for `.length`
|
|
16
16
|
toJSON: function toJSON(key) {
|
|
17
17
|
var O = toObject(this);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
var hasOwn = require('../internals/has-own-property');
|
|
2
|
-
var
|
|
2
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
3
3
|
var dateToPrimitive = require('../internals/date-to-primitive');
|
|
4
4
|
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
5
5
|
|
|
@@ -9,5 +9,5 @@ var DatePrototype = Date.prototype;
|
|
|
9
9
|
// `Date.prototype[@@toPrimitive]` method
|
|
10
10
|
// https://tc39.es/ecma262/#sec-date.prototype-@@toprimitive
|
|
11
11
|
if (!hasOwn(DatePrototype, TO_PRIMITIVE)) {
|
|
12
|
-
|
|
12
|
+
defineBuiltIn(DatePrototype, TO_PRIMITIVE, dateToPrimitive);
|
|
13
13
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// TODO: Remove from `core-js@4`
|
|
2
2
|
var uncurryThis = require('../internals/function-uncurry-this');
|
|
3
|
-
var
|
|
3
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
4
4
|
|
|
5
5
|
var DatePrototype = Date.prototype;
|
|
6
6
|
var INVALID_DATE = 'Invalid Date';
|
|
@@ -11,7 +11,7 @@ var getTime = uncurryThis(DatePrototype.getTime);
|
|
|
11
11
|
// `Date.prototype.toString` method
|
|
12
12
|
// https://tc39.es/ecma262/#sec-date.prototype.tostring
|
|
13
13
|
if (String(new Date(NaN)) != INVALID_DATE) {
|
|
14
|
-
|
|
14
|
+
defineBuiltIn(DatePrototype, TO_STRING, function toString() {
|
|
15
15
|
var value = getTime(this);
|
|
16
16
|
// eslint-disable-next-line no-self-compare -- NaN check
|
|
17
17
|
return value === value ? un$DateToString(this) : INVALID_DATE;
|
|
@@ -12,14 +12,14 @@ var FORCED = Error('e', { cause: 7 }).cause !== 7;
|
|
|
12
12
|
var exportGlobalErrorCauseWrapper = function (ERROR_NAME, wrapper) {
|
|
13
13
|
var O = {};
|
|
14
14
|
O[ERROR_NAME] = wrapErrorConstructorWithCause(ERROR_NAME, wrapper, FORCED);
|
|
15
|
-
$({ global: true, forced: FORCED }, O);
|
|
15
|
+
$({ global: true, arity: 1, forced: FORCED }, O);
|
|
16
16
|
};
|
|
17
17
|
|
|
18
18
|
var exportWebAssemblyErrorCauseWrapper = function (ERROR_NAME, wrapper) {
|
|
19
19
|
if (WebAssembly && WebAssembly[ERROR_NAME]) {
|
|
20
20
|
var O = {};
|
|
21
21
|
O[ERROR_NAME] = wrapErrorConstructorWithCause(WEB_ASSEMBLY + '.' + ERROR_NAME, wrapper, FORCED);
|
|
22
|
-
$({ target: WEB_ASSEMBLY, stat: true, forced: FORCED }, O);
|
|
22
|
+
$({ target: WEB_ASSEMBLY, stat: true, arity: 1, forced: FORCED }, O);
|
|
23
23
|
}
|
|
24
24
|
};
|
|
25
25
|
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var
|
|
1
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
2
2
|
var errorToString = require('../internals/error-to-string');
|
|
3
3
|
|
|
4
4
|
var ErrorPrototype = Error.prototype;
|
|
@@ -6,5 +6,5 @@ var ErrorPrototype = Error.prototype;
|
|
|
6
6
|
// `Error.prototype.toString` method fix
|
|
7
7
|
// https://tc39.es/ecma262/#sec-error.prototype.tostring
|
|
8
8
|
if (ErrorPrototype.toString !== errorToString) {
|
|
9
|
-
|
|
9
|
+
defineBuiltIn(ErrorPrototype, 'toString', errorToString);
|
|
10
10
|
}
|
|
@@ -4,6 +4,7 @@ var isObject = require('../internals/is-object');
|
|
|
4
4
|
var definePropertyModule = require('../internals/object-define-property');
|
|
5
5
|
var getPrototypeOf = require('../internals/object-get-prototype-of');
|
|
6
6
|
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
7
|
+
var makeBuiltIn = require('../internals/make-built-in');
|
|
7
8
|
|
|
8
9
|
var HAS_INSTANCE = wellKnownSymbol('hasInstance');
|
|
9
10
|
var FunctionPrototype = Function.prototype;
|
|
@@ -11,12 +12,12 @@ var FunctionPrototype = Function.prototype;
|
|
|
11
12
|
// `Function.prototype[@@hasInstance]` method
|
|
12
13
|
// https://tc39.es/ecma262/#sec-function.prototype-@@hasinstance
|
|
13
14
|
if (!(HAS_INSTANCE in FunctionPrototype)) {
|
|
14
|
-
definePropertyModule.f(FunctionPrototype, HAS_INSTANCE, { value: function (O) {
|
|
15
|
+
definePropertyModule.f(FunctionPrototype, HAS_INSTANCE, { value: makeBuiltIn(function (O) {
|
|
15
16
|
if (!isCallable(this) || !isObject(O)) return false;
|
|
16
17
|
var P = this.prototype;
|
|
17
18
|
if (!isObject(P)) return O instanceof this;
|
|
18
19
|
// for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:
|
|
19
20
|
while (O = getPrototypeOf(O)) if (P === O) return true;
|
|
20
21
|
return false;
|
|
21
|
-
} });
|
|
22
|
+
}, HAS_INSTANCE) });
|
|
22
23
|
}
|
|
@@ -61,7 +61,7 @@ var fixIllFormed = function (match, offset, string) {
|
|
|
61
61
|
if ($stringify) {
|
|
62
62
|
// `JSON.stringify` method
|
|
63
63
|
// https://tc39.es/ecma262/#sec-json.stringify
|
|
64
|
-
$({ target: 'JSON', stat: true, forced: WRONG_SYMBOLS_CONVERSION || ILL_FORMED_UNICODE }, {
|
|
64
|
+
$({ target: 'JSON', stat: true, arity: 3, forced: WRONG_SYMBOLS_CONVERSION || ILL_FORMED_UNICODE }, {
|
|
65
65
|
// eslint-disable-next-line no-unused-vars -- required for `.length`
|
|
66
66
|
stringify: function stringify(it, replacer, space) {
|
|
67
67
|
var args = arraySlice(arguments);
|
package/modules/es.math.hypot.js
CHANGED
|
@@ -11,7 +11,7 @@ var BUGGY = !!$hypot && $hypot(Infinity, NaN) !== Infinity;
|
|
|
11
11
|
|
|
12
12
|
// `Math.hypot` method
|
|
13
13
|
// https://tc39.es/ecma262/#sec-math.hypot
|
|
14
|
-
$({ target: 'Math', stat: true, forced: BUGGY }, {
|
|
14
|
+
$({ target: 'Math', stat: true, arity: 2, forced: BUGGY }, {
|
|
15
15
|
// eslint-disable-next-line no-unused-vars -- required for `.length`
|
|
16
16
|
hypot: function hypot(value1, value2) {
|
|
17
17
|
var sum = 0;
|
|
@@ -3,7 +3,7 @@ var DESCRIPTORS = require('../internals/descriptors');
|
|
|
3
3
|
var global = require('../internals/global');
|
|
4
4
|
var uncurryThis = require('../internals/function-uncurry-this');
|
|
5
5
|
var isForced = require('../internals/is-forced');
|
|
6
|
-
var
|
|
6
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
7
7
|
var hasOwn = require('../internals/has-own-property');
|
|
8
8
|
var inheritIfRequired = require('../internals/inherit-if-required');
|
|
9
9
|
var isPrototypeOf = require('../internals/object-is-prototype-of');
|
|
@@ -84,5 +84,5 @@ if (isForced(NUMBER, !NativeNumber(' 0o1') || !NativeNumber('0b1') || NativeNumb
|
|
|
84
84
|
}
|
|
85
85
|
NumberWrapper.prototype = NumberPrototype;
|
|
86
86
|
NumberPrototype.constructor = NumberWrapper;
|
|
87
|
-
|
|
87
|
+
defineBuiltIn(global, NUMBER, NumberWrapper);
|
|
88
88
|
}
|
|
@@ -4,6 +4,6 @@ var assign = require('../internals/object-assign');
|
|
|
4
4
|
// `Object.assign` method
|
|
5
5
|
// https://tc39.es/ecma262/#sec-object.assign
|
|
6
6
|
// eslint-disable-next-line es-x/no-object-assign -- required for testing
|
|
7
|
-
$({ target: 'Object', stat: true, forced: Object.assign !== assign }, {
|
|
7
|
+
$({ target: 'Object', stat: true, arity: 2, forced: Object.assign !== assign }, {
|
|
8
8
|
assign: assign
|
|
9
9
|
});
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
var TO_STRING_TAG_SUPPORT = require('../internals/to-string-tag-support');
|
|
2
|
-
var
|
|
2
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
3
3
|
var toString = require('../internals/object-to-string');
|
|
4
4
|
|
|
5
5
|
// `Object.prototype.toString` method
|
|
6
6
|
// https://tc39.es/ecma262/#sec-object.prototype.tostring
|
|
7
7
|
if (!TO_STRING_TAG_SUPPORT) {
|
|
8
|
-
|
|
8
|
+
defineBuiltIn(Object.prototype, 'toString', toString, { unsafe: true });
|
|
9
9
|
}
|
|
@@ -5,7 +5,7 @@ var FORCED_PROMISE_CONSTRUCTOR = require('../internals/promise-constructor-detec
|
|
|
5
5
|
var NativePromiseConstructor = require('../internals/promise-native-constructor');
|
|
6
6
|
var getBuiltIn = require('../internals/get-built-in');
|
|
7
7
|
var isCallable = require('../internals/is-callable');
|
|
8
|
-
var
|
|
8
|
+
var defineBuiltIn = require('../internals/define-built-in');
|
|
9
9
|
|
|
10
10
|
var NativePromisePrototype = NativePromiseConstructor && NativePromiseConstructor.prototype;
|
|
11
11
|
|
|
@@ -21,6 +21,6 @@ $({ target: 'Promise', proto: true, forced: FORCED_PROMISE_CONSTRUCTOR, real: tr
|
|
|
21
21
|
if (!IS_PURE && isCallable(NativePromiseConstructor)) {
|
|
22
22
|
var method = getBuiltIn('Promise').prototype['catch'];
|
|
23
23
|
if (NativePromisePrototype['catch'] !== method) {
|
|
24
|
-
|
|
24
|
+
defineBuiltIn(NativePromisePrototype, 'catch', method, { unsafe: true });
|
|
25
25
|
}
|
|
26
26
|
}
|