core-js-pure 3.19.1 → 3.19.2

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.
@@ -0,0 +1,17 @@
1
+ var global = require('../internals/global');
2
+ var toAbsoluteIndex = require('../internals/to-absolute-index');
3
+ var lengthOfArrayLike = require('../internals/length-of-array-like');
4
+ var createProperty = require('../internals/create-property');
5
+
6
+ var Array = global.Array;
7
+ var max = Math.max;
8
+
9
+ module.exports = function (O, start, end) {
10
+ var length = lengthOfArrayLike(O);
11
+ var k = toAbsoluteIndex(start, length);
12
+ var fin = toAbsoluteIndex(end === undefined ? length : end, length);
13
+ var result = Array(max(fin - k, 0));
14
+ for (var n = 0; k < fin; k++, n++) createProperty(result, n, O[k]);
15
+ result.length = n;
16
+ return result;
17
+ };
@@ -1,4 +1,4 @@
1
- var arraySlice = require('../internals/array-slice');
1
+ var arraySlice = require('../internals/array-slice-simple');
2
2
 
3
3
  var floor = Math.floor;
4
4
 
@@ -1,5 +1,5 @@
1
1
  var uncurryThis = require('../internals/function-uncurry-this');
2
- var arraySlice = require('../internals/array-slice');
2
+ var arraySlice = require('../internals/array-slice-simple');
3
3
 
4
4
  var replace = uncurryThis(''.replace);
5
5
  var split = uncurryThis(''.split);
@@ -25,7 +25,8 @@ var pack = function (number, mantissaLength, bytes) {
25
25
  exponent = eMax;
26
26
  } else {
27
27
  exponent = floor(log(number) / LN2);
28
- if (number * (c = pow(2, -exponent)) < 1) {
28
+ c = pow(2, -exponent);
29
+ if (number * c < 1) {
29
30
  exponent--;
30
31
  c *= 2;
31
32
  }
@@ -49,10 +50,18 @@ var pack = function (number, mantissaLength, bytes) {
49
50
  exponent = 0;
50
51
  }
51
52
  }
52
- for (; mantissaLength >= 8; buffer[index++] = mantissa & 255, mantissa /= 256, mantissaLength -= 8);
53
+ while (mantissaLength >= 8) {
54
+ buffer[index++] = mantissa & 255;
55
+ mantissa /= 256;
56
+ mantissaLength -= 8;
57
+ }
53
58
  exponent = exponent << mantissaLength | mantissa;
54
59
  exponentLength += mantissaLength;
55
- for (; exponentLength > 0; buffer[index++] = exponent & 255, exponent /= 256, exponentLength -= 8);
60
+ while (exponentLength > 0) {
61
+ buffer[index++] = exponent & 255;
62
+ exponent /= 256;
63
+ exponentLength -= 8;
64
+ }
56
65
  buffer[--index] |= sign * 128;
57
66
  return buffer;
58
67
  };
@@ -68,11 +77,17 @@ var unpack = function (buffer, mantissaLength) {
68
77
  var exponent = sign & 127;
69
78
  var mantissa;
70
79
  sign >>= 7;
71
- for (; nBits > 0; exponent = exponent * 256 + buffer[index], index--, nBits -= 8);
80
+ while (nBits > 0) {
81
+ exponent = exponent * 256 + buffer[index--];
82
+ nBits -= 8;
83
+ }
72
84
  mantissa = exponent & (1 << -nBits) - 1;
73
85
  exponent >>= -nBits;
74
86
  nBits += mantissaLength;
75
- for (; nBits > 0; mantissa = mantissa * 256 + buffer[index], index--, nBits -= 8);
87
+ while (nBits > 0) {
88
+ mantissa = mantissa * 256 + buffer[index--];
89
+ nBits -= 8;
90
+ }
76
91
  if (exponent === 0) {
77
92
  exponent = 1 - eBias;
78
93
  } else if (exponent === eMax) {
@@ -2,7 +2,7 @@
2
2
  var classof = require('../internals/classof-raw');
3
3
  var toIndexedObject = require('../internals/to-indexed-object');
4
4
  var $getOwnPropertyNames = require('../internals/object-get-own-property-names').f;
5
- var arraySlice = require('../internals/array-slice');
5
+ var arraySlice = require('../internals/array-slice-simple');
6
6
 
7
7
  var windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames
8
8
  ? Object.getOwnPropertyNames(window) : [];
@@ -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.19.1',
7
+ version: '3.19.2',
8
8
  mode: IS_PURE ? 'pure' : 'global',
9
9
  copyright: '© 2021 Denis Pushkarev (zloirock.ru)'
10
10
  });
@@ -76,8 +76,9 @@ var adapt = function (delta, numPoints, firstTime) {
76
76
  var k = 0;
77
77
  delta = firstTime ? floor(delta / damp) : delta >> 1;
78
78
  delta += floor(delta / numPoints);
79
- for (; delta > baseMinusTMin * tMax >> 1; k += base) {
79
+ while (delta > baseMinusTMin * tMax >> 1) {
80
80
  delta = floor(delta / baseMinusTMin);
81
+ k += base;
81
82
  }
82
83
  return floor(k + (baseMinusTMin + 1) * delta / (delta + skew));
83
84
  };
@@ -86,7 +87,6 @@ var adapt = function (delta, numPoints, firstTime) {
86
87
  * Converts a string of Unicode symbols (e.g. a domain name label) to a
87
88
  * Punycode string of ASCII-only symbols.
88
89
  */
89
- // eslint-disable-next-line max-statements -- TODO
90
90
  var encode = function (input) {
91
91
  var output = [];
92
92
 
@@ -146,24 +146,26 @@ var encode = function (input) {
146
146
  if (currentValue == n) {
147
147
  // Represent delta as a generalized variable-length integer.
148
148
  var q = delta;
149
- for (var k = base; /* no condition */; k += base) {
149
+ var k = base;
150
+ while (true) {
150
151
  var t = k <= bias ? tMin : (k >= bias + tMax ? tMax : k - bias);
151
152
  if (q < t) break;
152
153
  var qMinusT = q - t;
153
154
  var baseMinusT = base - t;
154
155
  push(output, fromCharCode(digitToBasic(t + qMinusT % baseMinusT)));
155
156
  q = floor(qMinusT / baseMinusT);
157
+ k += base;
156
158
  }
157
159
 
158
160
  push(output, fromCharCode(digitToBasic(q)));
159
161
  bias = adapt(delta, handledCPCountPlusOne, handledCPCount == basicLength);
160
162
  delta = 0;
161
- ++handledCPCount;
163
+ handledCPCount++;
162
164
  }
163
165
  }
164
166
 
165
- ++delta;
166
- ++n;
167
+ delta++;
168
+ n++;
167
169
  }
168
170
  return join(output, '');
169
171
  };
@@ -99,29 +99,6 @@ var serialize = function (it) {
99
99
  return replace(encodeURIComponent(it), find, replacer);
100
100
  };
101
101
 
102
- var parseSearchParams = function (result, query) {
103
- if (query) {
104
- var attributes = split(query, '&');
105
- var index = 0;
106
- var attribute, entry;
107
- while (index < attributes.length) {
108
- attribute = attributes[index++];
109
- if (attribute.length) {
110
- entry = split(attribute, '=');
111
- push(result, {
112
- key: deserialize(shift(entry)),
113
- value: deserialize(join(entry, '='))
114
- });
115
- }
116
- }
117
- }
118
- };
119
-
120
- var updateSearchParams = function (query) {
121
- this.entries.length = 0;
122
- parseSearchParams(this.entries, query);
123
- };
124
-
125
102
  var validateArgumentsLength = function (passed, required) {
126
103
  if (passed < required) throw TypeError('Not enough arguments');
127
104
  };
@@ -142,48 +119,87 @@ var URLSearchParamsIterator = createIteratorConstructor(function Iterator(params
142
119
  } return step;
143
120
  });
144
121
 
145
- // `URLSearchParams` constructor
146
- // https://url.spec.whatwg.org/#interface-urlsearchparams
147
- var URLSearchParamsConstructor = function URLSearchParams(/* init */) {
148
- anInstance(this, URLSearchParamsPrototype);
149
- var init = arguments.length > 0 ? arguments[0] : undefined;
150
- var that = this;
151
- var entries = [];
152
- var iteratorMethod, iterator, next, step, entryIterator, entryNext, first, second, key;
153
-
154
- setInternalState(that, {
155
- type: URL_SEARCH_PARAMS,
156
- entries: entries,
157
- updateURL: function () { /* empty */ },
158
- updateSearchParams: updateSearchParams
159
- });
122
+ var URLSearchParamsState = function (init) {
123
+ this.entries = [];
124
+ this.url = null;
160
125
 
161
126
  if (init !== undefined) {
162
- if (isObject(init)) {
163
- iteratorMethod = getIteratorMethod(init);
164
- if (iteratorMethod) {
165
- iterator = getIterator(init, iteratorMethod);
166
- next = iterator.next;
167
- while (!(step = call(next, iterator)).done) {
168
- entryIterator = getIterator(anObject(step.value));
169
- entryNext = entryIterator.next;
170
- if (
171
- (first = call(entryNext, entryIterator)).done ||
172
- (second = call(entryNext, entryIterator)).done ||
173
- !call(entryNext, entryIterator).done
174
- ) throw TypeError('Expected sequence with length 2');
175
- push(entries, { key: $toString(first.value), value: $toString(second.value) });
127
+ if (isObject(init)) this.parseObject(init);
128
+ else this.parseQuery(typeof init == 'string' ? charAt(init, 0) === '?' ? stringSlice(init, 1) : init : $toString(init));
129
+ }
130
+ };
131
+
132
+ URLSearchParamsState.prototype = {
133
+ type: URL_SEARCH_PARAMS,
134
+ bindURL: function (url) {
135
+ this.url = url;
136
+ this.update();
137
+ },
138
+ parseObject: function (object) {
139
+ var iteratorMethod = getIteratorMethod(object);
140
+ var iterator, next, step, entryIterator, entryNext, first, second;
141
+
142
+ if (iteratorMethod) {
143
+ iterator = getIterator(object, iteratorMethod);
144
+ next = iterator.next;
145
+ while (!(step = call(next, iterator)).done) {
146
+ entryIterator = getIterator(anObject(step.value));
147
+ entryNext = entryIterator.next;
148
+ if (
149
+ (first = call(entryNext, entryIterator)).done ||
150
+ (second = call(entryNext, entryIterator)).done ||
151
+ !call(entryNext, entryIterator).done
152
+ ) throw TypeError('Expected sequence with length 2');
153
+ push(this.entries, { key: $toString(first.value), value: $toString(second.value) });
154
+ }
155
+ } else for (var key in object) if (hasOwn(object, key)) {
156
+ push(this.entries, { key: key, value: $toString(object[key]) });
157
+ }
158
+ },
159
+ parseQuery: function (query) {
160
+ if (query) {
161
+ var attributes = split(query, '&');
162
+ var index = 0;
163
+ var attribute, entry;
164
+ while (index < attributes.length) {
165
+ attribute = attributes[index++];
166
+ if (attribute.length) {
167
+ entry = split(attribute, '=');
168
+ push(this.entries, {
169
+ key: deserialize(shift(entry)),
170
+ value: deserialize(join(entry, '='))
171
+ });
176
172
  }
177
- } else for (key in init) if (hasOwn(init, key)) push(entries, { key: key, value: $toString(init[key]) });
178
- } else {
179
- parseSearchParams(
180
- entries,
181
- typeof init == 'string' ? charAt(init, 0) === '?' ? stringSlice(init, 1) : init : $toString(init)
182
- );
173
+ }
183
174
  }
175
+ },
176
+ serialize: function () {
177
+ var entries = this.entries;
178
+ var result = [];
179
+ var index = 0;
180
+ var entry;
181
+ while (index < entries.length) {
182
+ entry = entries[index++];
183
+ push(result, serialize(entry.key) + '=' + serialize(entry.value));
184
+ } return join(result, '&');
185
+ },
186
+ update: function () {
187
+ this.entries.length = 0;
188
+ this.parseQuery(this.url.query);
189
+ },
190
+ updateURL: function () {
191
+ if (this.url) this.url.update();
184
192
  }
185
193
  };
186
194
 
195
+ // `URLSearchParams` constructor
196
+ // https://url.spec.whatwg.org/#interface-urlsearchparams
197
+ var URLSearchParamsConstructor = function URLSearchParams(/* init */) {
198
+ anInstance(this, URLSearchParamsPrototype);
199
+ var init = arguments.length > 0 ? arguments[0] : undefined;
200
+ setInternalState(this, new URLSearchParamsState(init));
201
+ };
202
+
187
203
  var URLSearchParamsPrototype = URLSearchParamsConstructor.prototype;
188
204
 
189
205
  redefineAll(URLSearchParamsPrototype, {
@@ -310,14 +326,7 @@ redefine(URLSearchParamsPrototype, ITERATOR, URLSearchParamsPrototype.entries, {
310
326
  // `URLSearchParams.prototype.toString` method
311
327
  // https://url.spec.whatwg.org/#urlsearchparams-stringification-behavior
312
328
  redefine(URLSearchParamsPrototype, 'toString', function toString() {
313
- var entries = getInternalParamsState(this).entries;
314
- var result = [];
315
- var index = 0;
316
- var entry;
317
- while (index < entries.length) {
318
- entry = entries[index++];
319
- push(result, serialize(entry.key) + '=' + serialize(entry.value));
320
- } return join(result, '&');
329
+ return getInternalParamsState(this).serialize();
321
330
  }, { enumerable: true });
322
331
 
323
332
  setToStringTag(URLSearchParamsConstructor, URL_SEARCH_PARAMS);