core-js-pure 3.38.0 → 3.38.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/internals/collection-strong.js +7 -7
- package/internals/collection-weak.js +2 -2
- package/internals/object-prototype-accessors-forced.js +2 -1
- package/internals/shared-store.js +2 -2
- package/modules/es.array.iterator.js +1 -1
- package/modules/es.promise.constructor.js +1 -1
- package/modules/esnext.async-disposable-stack.constructor.js +2 -2
- package/modules/esnext.disposable-stack.constructor.js +2 -2
- package/modules/esnext.observable.constructor.js +5 -5
- package/modules/esnext.string.dedent.js +1 -0
- package/modules/web.url-search-params.constructor.js +117 -22
- package/package.json +2 -2
|
@@ -23,8 +23,8 @@ module.exports = {
|
|
|
23
23
|
setInternalState(that, {
|
|
24
24
|
type: CONSTRUCTOR_NAME,
|
|
25
25
|
index: create(null),
|
|
26
|
-
first:
|
|
27
|
-
last:
|
|
26
|
+
first: null,
|
|
27
|
+
last: null,
|
|
28
28
|
size: 0
|
|
29
29
|
});
|
|
30
30
|
if (!DESCRIPTORS) that.size = 0;
|
|
@@ -49,7 +49,7 @@ module.exports = {
|
|
|
49
49
|
key: key,
|
|
50
50
|
value: value,
|
|
51
51
|
previous: previous = state.last,
|
|
52
|
-
next:
|
|
52
|
+
next: null,
|
|
53
53
|
removed: false
|
|
54
54
|
};
|
|
55
55
|
if (!state.first) state.first = entry;
|
|
@@ -83,10 +83,10 @@ module.exports = {
|
|
|
83
83
|
var entry = state.first;
|
|
84
84
|
while (entry) {
|
|
85
85
|
entry.removed = true;
|
|
86
|
-
if (entry.previous) entry.previous = entry.previous.next =
|
|
86
|
+
if (entry.previous) entry.previous = entry.previous.next = null;
|
|
87
87
|
entry = entry.next;
|
|
88
88
|
}
|
|
89
|
-
state.first = state.last =
|
|
89
|
+
state.first = state.last = null;
|
|
90
90
|
state.index = create(null);
|
|
91
91
|
if (DESCRIPTORS) state.size = 0;
|
|
92
92
|
else that.size = 0;
|
|
@@ -178,7 +178,7 @@ module.exports = {
|
|
|
178
178
|
target: iterated,
|
|
179
179
|
state: getInternalCollectionState(iterated),
|
|
180
180
|
kind: kind,
|
|
181
|
-
last:
|
|
181
|
+
last: null
|
|
182
182
|
});
|
|
183
183
|
}, function () {
|
|
184
184
|
var state = getInternalIteratorState(this);
|
|
@@ -189,7 +189,7 @@ module.exports = {
|
|
|
189
189
|
// get next entry
|
|
190
190
|
if (!state.target || !(state.last = entry = entry ? entry.next : state.state.first)) {
|
|
191
191
|
// or finish the iteration
|
|
192
|
-
state.target =
|
|
192
|
+
state.target = null;
|
|
193
193
|
return createIterResultObject(undefined, true);
|
|
194
194
|
}
|
|
195
195
|
// return step by kind
|
|
@@ -62,7 +62,7 @@ module.exports = {
|
|
|
62
62
|
setInternalState(that, {
|
|
63
63
|
type: CONSTRUCTOR_NAME,
|
|
64
64
|
id: id++,
|
|
65
|
-
frozen:
|
|
65
|
+
frozen: null
|
|
66
66
|
});
|
|
67
67
|
if (!isNullOrUndefined(iterable)) iterate(iterable, that[ADDER], { that: that, AS_ENTRIES: IS_MAP });
|
|
68
68
|
});
|
|
@@ -110,7 +110,7 @@ module.exports = {
|
|
|
110
110
|
if (isObject(key)) {
|
|
111
111
|
var data = getWeakData(key);
|
|
112
112
|
if (data === true) return uncaughtFrozenStore(state).get(key);
|
|
113
|
-
|
|
113
|
+
if (data) return data[state.id];
|
|
114
114
|
}
|
|
115
115
|
},
|
|
116
116
|
// `WeakMap.prototype.set(key, value)` method
|
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
|
+
/* eslint-disable no-undef, no-useless-call, sonar/no-reference-error -- required for testing */
|
|
3
|
+
/* eslint-disable es/no-legacy-object-prototype-accessor-methods -- required for testing */
|
|
2
4
|
var IS_PURE = require('../internals/is-pure');
|
|
3
5
|
var globalThis = require('../internals/global-this');
|
|
4
6
|
var fails = require('../internals/fails');
|
|
@@ -11,7 +13,6 @@ module.exports = IS_PURE || !fails(function () {
|
|
|
11
13
|
if (WEBKIT && WEBKIT < 535) return;
|
|
12
14
|
var key = Math.random();
|
|
13
15
|
// In FF throws only define methods
|
|
14
|
-
// eslint-disable-next-line no-undef, no-useless-call, es/no-legacy-object-prototype-accessor-methods -- required for testing
|
|
15
16
|
__defineSetter__.call(null, key, function () { /* empty */ });
|
|
16
17
|
delete globalThis[key];
|
|
17
18
|
});
|
|
@@ -7,9 +7,9 @@ var SHARED = '__core-js_shared__';
|
|
|
7
7
|
var store = module.exports = globalThis[SHARED] || defineGlobalProperty(SHARED, {});
|
|
8
8
|
|
|
9
9
|
(store.versions || (store.versions = [])).push({
|
|
10
|
-
version: '3.38.
|
|
10
|
+
version: '3.38.1',
|
|
11
11
|
mode: IS_PURE ? 'pure' : 'global',
|
|
12
12
|
copyright: '© 2014-2024 Denis Pushkarev (zloirock.ru)',
|
|
13
|
-
license: 'https://github.com/zloirock/core-js/blob/v3.38.
|
|
13
|
+
license: 'https://github.com/zloirock/core-js/blob/v3.38.1/LICENSE',
|
|
14
14
|
source: 'https://github.com/zloirock/core-js'
|
|
15
15
|
});
|
|
@@ -37,7 +37,7 @@ module.exports = defineIterator(Array, 'Array', function (iterated, kind) {
|
|
|
37
37
|
var target = state.target;
|
|
38
38
|
var index = state.index++;
|
|
39
39
|
if (!target || index >= target.length) {
|
|
40
|
-
state.target =
|
|
40
|
+
state.target = null;
|
|
41
41
|
return createIterResultObject(undefined, true);
|
|
42
42
|
}
|
|
43
43
|
switch (state.kind) {
|
|
@@ -72,14 +72,14 @@ defineBuiltIns(AsyncDisposableStackPrototype, {
|
|
|
72
72
|
var loop = function () {
|
|
73
73
|
if (i) {
|
|
74
74
|
var disposeMethod = stack[--i];
|
|
75
|
-
stack[i] =
|
|
75
|
+
stack[i] = null;
|
|
76
76
|
try {
|
|
77
77
|
Promise.resolve(disposeMethod()).then(loop, handleError);
|
|
78
78
|
} catch (error) {
|
|
79
79
|
handleError(error);
|
|
80
80
|
}
|
|
81
81
|
} else {
|
|
82
|
-
internalState.stack =
|
|
82
|
+
internalState.stack = null;
|
|
83
83
|
thrown ? reject(suppressed) : resolve(undefined);
|
|
84
84
|
}
|
|
85
85
|
};
|
|
@@ -56,7 +56,7 @@ defineBuiltIns(DisposableStackPrototype, {
|
|
|
56
56
|
var suppressed;
|
|
57
57
|
while (i) {
|
|
58
58
|
var disposeMethod = stack[--i];
|
|
59
|
-
stack[i] =
|
|
59
|
+
stack[i] = null;
|
|
60
60
|
try {
|
|
61
61
|
disposeMethod();
|
|
62
62
|
} catch (errorResult) {
|
|
@@ -68,7 +68,7 @@ defineBuiltIns(DisposableStackPrototype, {
|
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
|
-
internalState.stack =
|
|
71
|
+
internalState.stack = null;
|
|
72
72
|
if (thrown) throw suppressed;
|
|
73
73
|
},
|
|
74
74
|
use: function use(value) {
|
|
@@ -30,8 +30,8 @@ var getSubscriptionObserverInternalState = getterFor(SUBSCRIPTION_OBSERVER);
|
|
|
30
30
|
|
|
31
31
|
var SubscriptionState = function (observer) {
|
|
32
32
|
this.observer = anObject(observer);
|
|
33
|
-
this.cleanup =
|
|
34
|
-
this.subscriptionObserver =
|
|
33
|
+
this.cleanup = null;
|
|
34
|
+
this.subscriptionObserver = null;
|
|
35
35
|
};
|
|
36
36
|
|
|
37
37
|
SubscriptionState.prototype = {
|
|
@@ -39,7 +39,7 @@ SubscriptionState.prototype = {
|
|
|
39
39
|
clean: function () {
|
|
40
40
|
var cleanup = this.cleanup;
|
|
41
41
|
if (cleanup) {
|
|
42
|
-
this.cleanup =
|
|
42
|
+
this.cleanup = null;
|
|
43
43
|
try {
|
|
44
44
|
cleanup();
|
|
45
45
|
} catch (error) {
|
|
@@ -53,10 +53,10 @@ SubscriptionState.prototype = {
|
|
|
53
53
|
var subscriptionObserver = this.subscriptionObserver;
|
|
54
54
|
subscription.closed = true;
|
|
55
55
|
if (subscriptionObserver) subscriptionObserver.closed = true;
|
|
56
|
-
} this.observer =
|
|
56
|
+
} this.observer = null;
|
|
57
57
|
},
|
|
58
58
|
isClosed: function () {
|
|
59
|
-
return this.observer ===
|
|
59
|
+
return this.observer === null;
|
|
60
60
|
}
|
|
61
61
|
};
|
|
62
62
|
|
|
@@ -86,6 +86,7 @@ var dedentStringsArray = function (template) {
|
|
|
86
86
|
lines[lines.length - 2] = '';
|
|
87
87
|
lines[lines.length - 1] = '';
|
|
88
88
|
}
|
|
89
|
+
// eslint-disable-next-line sonar/no-redundant-assignments -- false positive, https://github.com/SonarSource/SonarJS/issues/4767
|
|
89
90
|
for (var j = 2; j < lines.length; j += 2) {
|
|
90
91
|
var text = lines[j];
|
|
91
92
|
var lineContainsTemplateExpression = j + 1 === lines.length && !lastSplit;
|
|
@@ -1,9 +1,11 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
// TODO: in core-js@4, move /modules/ dependencies to public entries for better optimization by tools like `preset-env`
|
|
3
3
|
require('../modules/es.array.iterator');
|
|
4
|
+
require('../modules/es.string.from-code-point');
|
|
4
5
|
var $ = require('../internals/export');
|
|
5
6
|
var globalThis = require('../internals/global-this');
|
|
6
7
|
var safeGetBuiltIn = require('../internals/safe-get-built-in');
|
|
8
|
+
var getBuiltIn = require('../internals/get-built-in');
|
|
7
9
|
var call = require('../internals/function-call');
|
|
8
10
|
var uncurryThis = require('../internals/function-uncurry-this');
|
|
9
11
|
var DESCRIPTORS = require('../internals/descriptors');
|
|
@@ -43,10 +45,11 @@ var NativeRequest = safeGetBuiltIn('Request');
|
|
|
43
45
|
var Headers = safeGetBuiltIn('Headers');
|
|
44
46
|
var RequestPrototype = NativeRequest && NativeRequest.prototype;
|
|
45
47
|
var HeadersPrototype = Headers && Headers.prototype;
|
|
46
|
-
var RegExp = globalThis.RegExp;
|
|
47
48
|
var TypeError = globalThis.TypeError;
|
|
48
|
-
var decodeURIComponent = globalThis.decodeURIComponent;
|
|
49
49
|
var encodeURIComponent = globalThis.encodeURIComponent;
|
|
50
|
+
var fromCharCode = String.fromCharCode;
|
|
51
|
+
var fromCodePoint = getBuiltIn('String', 'fromCodePoint');
|
|
52
|
+
var $parseInt = parseInt;
|
|
50
53
|
var charAt = uncurryThis(''.charAt);
|
|
51
54
|
var join = uncurryThis([].join);
|
|
52
55
|
var push = uncurryThis([].push);
|
|
@@ -55,33 +58,125 @@ var shift = uncurryThis([].shift);
|
|
|
55
58
|
var splice = uncurryThis([].splice);
|
|
56
59
|
var split = uncurryThis(''.split);
|
|
57
60
|
var stringSlice = uncurryThis(''.slice);
|
|
61
|
+
var exec = uncurryThis(/./.exec);
|
|
58
62
|
|
|
59
63
|
var plus = /\+/g;
|
|
60
|
-
var
|
|
64
|
+
var FALLBACK_REPLACER = '\uFFFD';
|
|
65
|
+
var VALID_HEX = /^[0-9a-f]+$/i;
|
|
61
66
|
|
|
62
|
-
var
|
|
63
|
-
|
|
67
|
+
var parseHexOctet = function (string, start) {
|
|
68
|
+
var substr = stringSlice(string, start, start + 2);
|
|
69
|
+
if (!exec(VALID_HEX, substr)) return NaN;
|
|
70
|
+
|
|
71
|
+
return $parseInt(substr, 16);
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
var getLeadingOnes = function (octet) {
|
|
75
|
+
var count = 0;
|
|
76
|
+
for (var mask = 0x80; mask > 0 && (octet & mask) !== 0; mask >>= 1) {
|
|
77
|
+
count++;
|
|
78
|
+
}
|
|
79
|
+
return count;
|
|
64
80
|
};
|
|
65
81
|
|
|
66
|
-
var
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
82
|
+
var utf8Decode = function (octets) {
|
|
83
|
+
var codePoint = null;
|
|
84
|
+
|
|
85
|
+
switch (octets.length) {
|
|
86
|
+
case 1:
|
|
87
|
+
codePoint = octets[0];
|
|
88
|
+
break;
|
|
89
|
+
case 2:
|
|
90
|
+
codePoint = (octets[0] & 0x1F) << 6 | (octets[1] & 0x3F);
|
|
91
|
+
break;
|
|
92
|
+
case 3:
|
|
93
|
+
codePoint = (octets[0] & 0x0F) << 12 | (octets[1] & 0x3F) << 6 | (octets[2] & 0x3F);
|
|
94
|
+
break;
|
|
95
|
+
case 4:
|
|
96
|
+
codePoint = (octets[0] & 0x07) << 18 | (octets[1] & 0x3F) << 12 | (octets[2] & 0x3F) << 6 | (octets[3] & 0x3F);
|
|
97
|
+
break;
|
|
71
98
|
}
|
|
99
|
+
|
|
100
|
+
return codePoint > 0x10FFFF ? null : codePoint;
|
|
72
101
|
};
|
|
73
102
|
|
|
74
|
-
var
|
|
75
|
-
|
|
76
|
-
var
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
103
|
+
var decode = function (input) {
|
|
104
|
+
input = replace(input, plus, ' ');
|
|
105
|
+
var length = input.length;
|
|
106
|
+
var result = '';
|
|
107
|
+
var i = 0;
|
|
108
|
+
|
|
109
|
+
while (i < length) {
|
|
110
|
+
var decodedChar = charAt(input, i);
|
|
111
|
+
|
|
112
|
+
if (decodedChar === '%') {
|
|
113
|
+
if (charAt(input, i + 1) === '%' || i + 3 > length) {
|
|
114
|
+
result += '%';
|
|
115
|
+
i++;
|
|
116
|
+
continue;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
var octet = parseHexOctet(input, i + 1);
|
|
120
|
+
|
|
121
|
+
// eslint-disable-next-line no-self-compare -- NaN check
|
|
122
|
+
if (octet !== octet) {
|
|
123
|
+
result += decodedChar;
|
|
124
|
+
i++;
|
|
125
|
+
continue;
|
|
126
|
+
}
|
|
127
|
+
|
|
128
|
+
i += 2;
|
|
129
|
+
var byteSequenceLength = getLeadingOnes(octet);
|
|
130
|
+
|
|
131
|
+
if (byteSequenceLength === 0) {
|
|
132
|
+
decodedChar = fromCharCode(octet);
|
|
133
|
+
} else {
|
|
134
|
+
if (byteSequenceLength === 1 || byteSequenceLength > 4) {
|
|
135
|
+
result += FALLBACK_REPLACER;
|
|
136
|
+
i++;
|
|
137
|
+
continue;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
var octets = [octet];
|
|
141
|
+
var sequenceIndex = 1;
|
|
142
|
+
|
|
143
|
+
while (sequenceIndex < byteSequenceLength) {
|
|
144
|
+
i++;
|
|
145
|
+
if (i + 3 > length || charAt(input, i) !== '%') break;
|
|
146
|
+
|
|
147
|
+
var nextByte = parseHexOctet(input, i + 1);
|
|
148
|
+
|
|
149
|
+
// eslint-disable-next-line no-self-compare -- NaN check
|
|
150
|
+
if (nextByte !== nextByte) {
|
|
151
|
+
i += 3;
|
|
152
|
+
break;
|
|
153
|
+
}
|
|
154
|
+
if (nextByte > 191 || nextByte < 128) break;
|
|
155
|
+
|
|
156
|
+
push(octets, nextByte);
|
|
157
|
+
i += 2;
|
|
158
|
+
sequenceIndex++;
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
if (octets.length !== byteSequenceLength) {
|
|
162
|
+
result += FALLBACK_REPLACER;
|
|
163
|
+
continue;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
var codePoint = utf8Decode(octets);
|
|
167
|
+
if (codePoint === null) {
|
|
168
|
+
result += FALLBACK_REPLACER;
|
|
169
|
+
} else {
|
|
170
|
+
decodedChar = fromCodePoint(codePoint);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
82
173
|
}
|
|
83
|
-
|
|
174
|
+
|
|
175
|
+
result += decodedChar;
|
|
176
|
+
i++;
|
|
84
177
|
}
|
|
178
|
+
|
|
179
|
+
return result;
|
|
85
180
|
};
|
|
86
181
|
|
|
87
182
|
var find = /[!'()~]|%20/g;
|
|
@@ -115,7 +210,7 @@ var URLSearchParamsIterator = createIteratorConstructor(function Iterator(params
|
|
|
115
210
|
var target = state.target;
|
|
116
211
|
var index = state.index++;
|
|
117
212
|
if (!target || index >= target.length) {
|
|
118
|
-
state.target =
|
|
213
|
+
state.target = null;
|
|
119
214
|
return createIterResultObject(undefined, true);
|
|
120
215
|
}
|
|
121
216
|
var entry = target[index];
|
|
@@ -174,8 +269,8 @@ URLSearchParamsState.prototype = {
|
|
|
174
269
|
if (attribute.length) {
|
|
175
270
|
entry = split(attribute, '=');
|
|
176
271
|
push(entries, {
|
|
177
|
-
key:
|
|
178
|
-
value:
|
|
272
|
+
key: decode(shift(entry)),
|
|
273
|
+
value: decode(join(entry, '='))
|
|
179
274
|
});
|
|
180
275
|
}
|
|
181
276
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "core-js-pure",
|
|
3
|
-
"version": "3.38.
|
|
3
|
+
"version": "3.38.1",
|
|
4
4
|
"type": "commonjs",
|
|
5
5
|
"description": "Standard library",
|
|
6
6
|
"keywords": [
|
|
@@ -53,7 +53,7 @@
|
|
|
53
53
|
],
|
|
54
54
|
"repository": {
|
|
55
55
|
"type": "git",
|
|
56
|
-
"url": "https://github.com/zloirock/core-js.git",
|
|
56
|
+
"url": "git+https://github.com/zloirock/core-js.git",
|
|
57
57
|
"directory": "packages/core-js-pure"
|
|
58
58
|
},
|
|
59
59
|
"funding": {
|