polyfill-library 3.109.0 → 3.111.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (79) hide show
  1. package/CHANGELOG.md +151 -54
  2. package/lib/index.js +2 -2
  3. package/lib/sources.js +6 -2
  4. package/package.json +8 -5
  5. package/polyfills/__dist/AggregateError/meta.json +1 -0
  6. package/polyfills/__dist/AggregateError/min.js +1 -0
  7. package/polyfills/__dist/AggregateError/raw.js +30 -0
  8. package/polyfills/__dist/Array.from/meta.json +1 -1
  9. package/polyfills/__dist/Array.of/meta.json +1 -1
  10. package/polyfills/__dist/Array.prototype.@@iterator/meta.json +1 -1
  11. package/polyfills/__dist/Array.prototype.at/meta.json +1 -0
  12. package/polyfills/__dist/Array.prototype.at/min.js +1 -0
  13. package/polyfills/__dist/Array.prototype.at/raw.js +21 -0
  14. package/polyfills/__dist/Array.prototype.fill/meta.json +1 -1
  15. package/polyfills/__dist/Array.prototype.includes/meta.json +1 -1
  16. package/polyfills/__dist/Array.prototype.values/meta.json +1 -1
  17. package/polyfills/__dist/ArrayBuffer/meta.json +1 -1
  18. package/polyfills/__dist/ArrayBuffer/min.js +1 -1
  19. package/polyfills/__dist/ArrayBuffer/raw.js +8 -6
  20. package/polyfills/__dist/ArrayBuffer.isView/meta.json +1 -0
  21. package/polyfills/__dist/ArrayBuffer.isView/min.js +1 -0
  22. package/polyfills/__dist/ArrayBuffer.isView/raw.js +13 -0
  23. package/polyfills/__dist/IntersectionObserver/meta.json +1 -1
  24. package/polyfills/__dist/Node.prototype.isSameNode/meta.json +1 -0
  25. package/polyfills/__dist/Node.prototype.isSameNode/min.js +1 -0
  26. package/polyfills/__dist/Node.prototype.isSameNode/raw.js +27 -0
  27. package/polyfills/__dist/Object.assign/meta.json +1 -1
  28. package/polyfills/__dist/Promise.allSettled/meta.json +1 -0
  29. package/polyfills/__dist/Promise.allSettled/min.js +1 -0
  30. package/polyfills/__dist/Promise.allSettled/raw.js +41 -0
  31. package/polyfills/__dist/Promise.any/meta.json +1 -0
  32. package/polyfills/__dist/Promise.any/min.js +1 -0
  33. package/polyfills/__dist/Promise.any/raw.js +45 -0
  34. package/polyfills/__dist/Reflect/meta.json +1 -1
  35. package/polyfills/__dist/Reflect.apply/meta.json +1 -1
  36. package/polyfills/__dist/Reflect.construct/meta.json +1 -1
  37. package/polyfills/__dist/Reflect.defineProperty/meta.json +1 -1
  38. package/polyfills/__dist/Reflect.deleteProperty/meta.json +1 -1
  39. package/polyfills/__dist/Reflect.get/meta.json +1 -1
  40. package/polyfills/__dist/Reflect.getOwnPropertyDescriptor/meta.json +1 -1
  41. package/polyfills/__dist/Reflect.getPrototypeOf/meta.json +1 -1
  42. package/polyfills/__dist/Reflect.has/meta.json +1 -1
  43. package/polyfills/__dist/Reflect.isExtensible/meta.json +1 -1
  44. package/polyfills/__dist/Reflect.ownKeys/meta.json +1 -1
  45. package/polyfills/__dist/Reflect.preventExtensions/meta.json +1 -1
  46. package/polyfills/__dist/Reflect.set/meta.json +1 -1
  47. package/polyfills/__dist/Reflect.setPrototypeOf/meta.json +1 -1
  48. package/polyfills/__dist/String.prototype.at/meta.json +1 -0
  49. package/polyfills/__dist/String.prototype.at/min.js +1 -0
  50. package/polyfills/__dist/String.prototype.at/raw.js +23 -0
  51. package/polyfills/__dist/String.prototype.endsWith/meta.json +1 -1
  52. package/polyfills/__dist/String.prototype.padStart/meta.json +1 -1
  53. package/polyfills/__dist/String.prototype.startsWith/meta.json +1 -1
  54. package/polyfills/__dist/TextEncoder/meta.json +1 -1
  55. package/polyfills/__dist/TextEncoder/min.js +1 -1
  56. package/polyfills/__dist/TextEncoder/raw.js +67 -44
  57. package/polyfills/__dist/TypedArray.prototype.at/meta.json +1 -0
  58. package/polyfills/__dist/TypedArray.prototype.at/min.js +1 -0
  59. package/polyfills/__dist/TypedArray.prototype.at/raw.js +57 -0
  60. package/polyfills/__dist/URL/meta.json +1 -1
  61. package/polyfills/__dist/URL/min.js +1 -1
  62. package/polyfills/__dist/URL/raw.js +24 -2
  63. package/polyfills/__dist/_ESAbstract.IterableToList/meta.json +1 -0
  64. package/polyfills/__dist/_ESAbstract.IterableToList/min.js +1 -0
  65. package/polyfills/__dist/_ESAbstract.IterableToList/raw.js +31 -0
  66. package/polyfills/__dist/_ESAbstract.LengthOfArrayLike/meta.json +1 -0
  67. package/polyfills/__dist/_ESAbstract.LengthOfArrayLike/min.js +1 -0
  68. package/polyfills/__dist/_ESAbstract.LengthOfArrayLike/raw.js +8 -0
  69. package/polyfills/__dist/_ESAbstract.ToIntegerOrInfinity/meta.json +1 -0
  70. package/polyfills/__dist/_ESAbstract.ToIntegerOrInfinity/min.js +1 -0
  71. package/polyfills/__dist/_ESAbstract.ToIntegerOrInfinity/raw.js +20 -0
  72. package/polyfills/__dist/aliases.json +1 -1
  73. package/polyfills/__dist/document.currentScript/meta.json +1 -1
  74. package/polyfills/__dist/document.visibilityState/meta.json +1 -1
  75. package/polyfills/__dist/localStorage/meta.json +1 -1
  76. package/polyfills/__dist/localStorage/min.js +1 -1
  77. package/polyfills/__dist/localStorage/raw.js +30 -8
  78. package/polyfills/__dist/requestAnimationFrame/meta.json +1 -1
  79. package/polyfills/__dist/smoothscroll/meta.json +1 -1
@@ -27,6 +27,29 @@ var ENCODEINTO_BUILD = false;
27
27
  var globalTextEncoderPrototype;
28
28
  var globalTextEncoderInstance;
29
29
 
30
+ // In Internet Explorer 8 there is no support for square-bracket notation
31
+ // in the TypedArrays polyfill instead so we need to use the private `_getter` and `_setter` methods.
32
+ var typedArraysSupportIndexLookup = (function() {
33
+ var arr = new NativeUint8Array([42,43]);
34
+ return arr[0] === 42
35
+ })();
36
+
37
+ function getTypedArrayIndex(array, index) {
38
+ if (typedArraysSupportIndexLookup) {
39
+ return array[index];
40
+ } else {
41
+ return array._getter(index);
42
+ }
43
+ }
44
+
45
+ function setTypedArrayIndex(array, index, value) {
46
+ if (typedArraysSupportIndexLookup) {
47
+ array[index] = value;
48
+ } else {
49
+ array._setter(index, value);
50
+ }
51
+ }
52
+
30
53
  /*function decoderReplacer(encoded) {
31
54
  var cp0 = encoded.charCodeAt(0), codePoint=0x110000, i=0, stringLen=encoded.length|0, result="";
32
55
  switch(cp0 >> 4) {
@@ -79,10 +102,10 @@ var ENCODEINTO_BUILD = false;
79
102
  for (; index < len; ) {
80
103
  nextEnd = index <= lenMinus32 ? 32 : len - index|0;
81
104
  for (; pos < nextEnd; index=index+1|0, pos=pos+1|0) {
82
- cp0 = inputAs8[index] & 0xff;
105
+ cp0 = getTypedArrayIndex(inputAs8, index) & 0xff;
83
106
  switch(cp0 >> 4) {
84
107
  case 15:
85
- cp1 = inputAs8[index=index+1|0] & 0xff;
108
+ cp1 = getTypedArrayIndex(inputAs8, index=index+1|0) & 0xff;
86
109
  if ((cp1 >> 6) !== 2 || 247 < cp0) {
87
110
  index = index - 1|0;
88
111
  break;
@@ -91,14 +114,14 @@ var ENCODEINTO_BUILD = false;
91
114
  minBits = 5; // 20 ensures it never passes -> all invalid replacements
92
115
  cp0 = 0x100; // keep track of th bit size
93
116
  case 14:
94
- cp1 = inputAs8[index=index+1|0] & 0xff;
117
+ cp1 = getTypedArrayIndex(inputAs8, index=index+1|0) & 0xff;
95
118
  codePoint <<= 6;
96
119
  codePoint |= ((cp0 & 15) << 6) | (cp1 & 63);
97
120
  minBits = (cp1 >> 6) === 2 ? minBits + 4|0 : 24; // 24 ensures it never passes -> all invalid replacements
98
121
  cp0 = (cp0 + 0x100) & 0x300; // keep track of th bit size
99
122
  case 13:
100
123
  case 12:
101
- cp1 = inputAs8[index=index+1|0] & 0xff;
124
+ cp1 = getTypedArrayIndex(inputAs8, index=index+1|0) & 0xff;
102
125
  codePoint <<= 6;
103
126
  codePoint |= ((cp0 & 31) << 6) | cp1 & 63;
104
127
  minBits = minBits + 7|0;
@@ -114,7 +137,7 @@ var ENCODEINTO_BUILD = false;
114
137
  cp0 = (codePoint & 0x3ff) + 0xDC00|0; // lowSurrogate (will be inserted later in the switch-statement)
115
138
 
116
139
  if (pos < 31) { // notice 31 instead of 32
117
- tmpBufferU16[pos] = tmp;
140
+ setTypedArrayIndex(tmpBufferU16, pos, tmp);
118
141
  pos = pos + 1|0;
119
142
  tmp = -1;
120
143
  } else {// else, we are at the end of the inputAs8 and let tmp0 be filled in later on
@@ -149,28 +172,28 @@ var ENCODEINTO_BUILD = false;
149
172
  case 2:
150
173
  case 1:
151
174
  case 0:
152
- tmpBufferU16[pos] = cp0;
175
+ setTypedArrayIndex(tmpBufferU16, pos, cp0);
153
176
  continue;*/
154
177
  default:
155
- tmpBufferU16[pos] = cp0; // fill with invalid replacement character
178
+ setTypedArrayIndex(tmpBufferU16, pos, cp0); // fill with invalid replacement character
156
179
  continue;
157
180
  case 11:
158
181
  case 10:
159
182
  case 9:
160
183
  case 8:
161
184
  }
162
- tmpBufferU16[pos] = 0xfffd; // fill with invalid replacement character
185
+ setTypedArrayIndex(tmpBufferU16, pos, 0xfffd); // fill with invalid replacement character
163
186
  }
164
187
  tmpStr += fromCharCode(
165
- tmpBufferU16[ 0], tmpBufferU16[ 1], tmpBufferU16[ 2], tmpBufferU16[ 3], tmpBufferU16[ 4], tmpBufferU16[ 5], tmpBufferU16[ 6], tmpBufferU16[ 7],
166
- tmpBufferU16[ 8], tmpBufferU16[ 9], tmpBufferU16[10], tmpBufferU16[11], tmpBufferU16[12], tmpBufferU16[13], tmpBufferU16[14], tmpBufferU16[15],
167
- tmpBufferU16[16], tmpBufferU16[17], tmpBufferU16[18], tmpBufferU16[19], tmpBufferU16[20], tmpBufferU16[21], tmpBufferU16[22], tmpBufferU16[23],
168
- tmpBufferU16[24], tmpBufferU16[25], tmpBufferU16[26], tmpBufferU16[27], tmpBufferU16[28], tmpBufferU16[29], tmpBufferU16[30], tmpBufferU16[31]
188
+ getTypedArrayIndex(tmpBufferU16, 0), getTypedArrayIndex(tmpBufferU16, 1), getTypedArrayIndex(tmpBufferU16, 2), getTypedArrayIndex(tmpBufferU16, 3), getTypedArrayIndex(tmpBufferU16, 4), getTypedArrayIndex(tmpBufferU16, 5), getTypedArrayIndex(tmpBufferU16, 6), getTypedArrayIndex(tmpBufferU16, 7),
189
+ getTypedArrayIndex(tmpBufferU16, 8), getTypedArrayIndex(tmpBufferU16, 9), getTypedArrayIndex(tmpBufferU16,10), getTypedArrayIndex(tmpBufferU16,11), getTypedArrayIndex(tmpBufferU16,12), getTypedArrayIndex(tmpBufferU16,13), getTypedArrayIndex(tmpBufferU16,14), getTypedArrayIndex(tmpBufferU16,15),
190
+ getTypedArrayIndex(tmpBufferU16,16), getTypedArrayIndex(tmpBufferU16,17), getTypedArrayIndex(tmpBufferU16,18), getTypedArrayIndex(tmpBufferU16,19), getTypedArrayIndex(tmpBufferU16,20), getTypedArrayIndex(tmpBufferU16,21), getTypedArrayIndex(tmpBufferU16,22), getTypedArrayIndex(tmpBufferU16,23),
191
+ getTypedArrayIndex(tmpBufferU16,24), getTypedArrayIndex(tmpBufferU16,25), getTypedArrayIndex(tmpBufferU16,26), getTypedArrayIndex(tmpBufferU16,27), getTypedArrayIndex(tmpBufferU16,28), getTypedArrayIndex(tmpBufferU16,29), getTypedArrayIndex(tmpBufferU16,30), getTypedArrayIndex(tmpBufferU16,31)
169
192
  );
170
193
  if (pos < 32) tmpStr = tmpStr.slice(0, pos-32|0);//-(32-pos));
171
194
  if (index < len) {
172
195
  //fromCharCode.apply(0, tmpBufferU16 : NativeUint8Array ? tmpBufferU16.subarray(0,pos) : tmpBufferU16.slice(0,pos));
173
- tmpBufferU16[0] = tmp;
196
+ setTypedArrayIndex(tmpBufferU16, 0, tmp);
174
197
  pos = (~tmp) >>> 31;//tmp !== -1 ? 1 : 0;
175
198
  tmp = -1;
176
199
 
@@ -228,10 +251,10 @@ var ENCODEINTO_BUILD = false;
228
251
  for (i=0; i<len; i=i+1|0, pos=pos+1|0) {
229
252
  point = encodedString.charCodeAt(i)|0;
230
253
  if (point <= 0x007f) {
231
- result[pos] = point;
254
+ setTypedArrayIndex(result, pos, point);
232
255
  } else if (point <= 0x07ff) {
233
- result[pos] = (0x6<<5)|(point>>6);
234
- result[pos=pos+1|0] = (0x2<<6)|(point&0x3f);
256
+ setTypedArrayIndex(result, pos, (0x6<<5)|(point>>6));
257
+ setTypedArrayIndex(result, pos=pos+1|0, (0x2<<6)|(point&0x3f));
235
258
  } else {
236
259
  widenCheck: {
237
260
  if (0xD800 <= point) {
@@ -242,10 +265,10 @@ var ENCODEINTO_BUILD = false;
242
265
  //point = ((point - 0xD800)<<10) + nextcode - 0xDC00 + 0x10000|0;
243
266
  point = (point<<10) + nextcode - 0x35fdc00|0;
244
267
  if (point > 0xffff) {
245
- result[pos] = (0x1e/*0b11110*/<<3) | (point>>18);
246
- result[pos=pos+1|0] = (0x2/*0b10*/<<6) | ((point>>12)&0x3f/*0b00111111*/);
247
- result[pos=pos+1|0] = (0x2/*0b10*/<<6) | ((point>>6)&0x3f/*0b00111111*/);
248
- result[pos=pos+1|0] = (0x2/*0b10*/<<6) | (point&0x3f/*0b00111111*/);
268
+ setTypedArrayIndex(result, pos, (0x1e/*0b11110*/<<3) | (point>>18));
269
+ setTypedArrayIndex(result, pos=pos+1|0, (0x2/*0b10*/<<6) | ((point>>12)&0x3f/*0b00111111*/));
270
+ setTypedArrayIndex(result, pos=pos+1|0, (0x2/*0b10*/<<6) | ((point>>6)&0x3f/*0b00111111*/));
271
+ setTypedArrayIndex(result, pos=pos+1|0, (0x2/*0b10*/<<6) | (point&0x3f/*0b00111111*/));
249
272
  continue;
250
273
  }
251
274
  break widenCheck;
@@ -262,9 +285,9 @@ var ENCODEINTO_BUILD = false;
262
285
  result = tmpResult;
263
286
  }
264
287
  }
265
- result[pos] = (0xe/*0b1110*/<<4) | (point>>12);
266
- result[pos=pos+1|0] =(0x2/*0b10*/<<6) | ((point>>6)&0x3f/*0b00111111*/);
267
- result[pos=pos+1|0] =(0x2/*0b10*/<<6) | (point&0x3f/*0b00111111*/);
288
+ setTypedArrayIndex(result, pos, (0xe/*0b1110*/<<4) | (point>>12));
289
+ setTypedArrayIndex(result, pos=pos+1|0,(0x2/*0b10*/<<6) | ((point>>6)&0x3f/*0b00111111*/));
290
+ setTypedArrayIndex(result, pos=pos+1|0,(0x2/*0b10*/<<6) | (point&0x3f/*0b00111111*/));
268
291
  }
269
292
  }
270
293
  return NativeUint8Array ? result.subarray(0, pos) : result.slice(0, pos);
@@ -313,7 +336,7 @@ var ENCODEINTO_BUILD = false;
313
336
  break putChars;
314
337
  }
315
338
  //read = read + ((char >> 6) !== 2) |0;
316
- u8Arr[i] = char;
339
+ setTypedArrayIndex(u8Arr, i, char);
317
340
  }
318
341
  }
319
342
  return {"written": i, "read": inputLength < read ? inputLength : read};
@@ -332,10 +355,10 @@ var ENCODEINTO_BUILD = false;
332
355
  read = read - 1|0;
333
356
  break; // we have reached the end of the string
334
357
  }
335
- u8Arr[i=i+1|0] = point;
358
+ setTypedArrayIndex(u8Arr, i=i+1|0, point);
336
359
  } else if (point <= 0x07ff) {
337
- u8Arr[i=i+1|0] = (0x6<<5)|(point>>6);
338
- u8Arr[i=i+1|0] = (0x2<<6)|(point&0x3f);
360
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x6<<5)|(point>>6));
361
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x2<<6)|(point&0x3f));
339
362
  } else {
340
363
  if (0xD800 <= point && point <= 0xDBFF) {
341
364
  nextcode = encodedString.charCodeAt(read)|0; // defaults to 0 when NaN, causing null replacement character
@@ -345,10 +368,10 @@ var ENCODEINTO_BUILD = false;
345
368
  //point = ((point - 0xD800)<<10) + nextcode - 0xDC00 + 0x10000|0;
346
369
  point = (point<<10) + nextcode - 0x35fdc00|0;
347
370
  if (point > 0xffff) {
348
- u8Arr[i=i+1|0] = (0x1e<<3) | (point>>18);
349
- u8Arr[i=i+1|0] = (0x2<<6) | ((point>>12)&0x3f);
350
- u8Arr[i=i+1|0] = (0x2<<6) | ((point>>6)&0x3f);
351
- u8Arr[i=i+1|0] = (0x2<<6) | (point&0x3f);
371
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x1e<<3) | (point>>18));
372
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x2<<6) | ((point>>12)&0x3f));
373
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x2<<6) | ((point>>6)&0x3f));
374
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x2<<6) | (point&0x3f));
352
375
  continue;
353
376
  }
354
377
  } else if (nextcode === 0 && encodedLen <= read) {
@@ -357,9 +380,9 @@ var ENCODEINTO_BUILD = false;
357
380
  point = 65533;//0b1111111111111101; // invalid replacement character
358
381
  }
359
382
  }
360
- u8Arr[i=i+1|0] = (0xe<<4) | (point>>12);
361
- u8Arr[i=i+1|0] = (0x2<<6) | ((point>>6)&0x3f);
362
- u8Arr[i=i+1|0] = (0x2<<6) | (point&0x3f);
383
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0xe<<4) | (point>>12));
384
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x2<<6) | ((point>>6)&0x3f));
385
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x2<<6) | (point&0x3f));
363
386
  if (u8LenLeft < (i + ((encodedLen - read) << 1)|0)) {
364
387
  // These 3x chars are the only way to inflate the size to 3x
365
388
  u8LenLeft = u8LenLeft - i|0;
@@ -380,12 +403,12 @@ var ENCODEINTO_BUILD = false;
380
403
  break; // we have reached the end of the string
381
404
  }
382
405
  u8LenLeft = u8LenLeft - 1|0;
383
- u8Arr[i=i+1|0] = point;
406
+ setTypedArrayIndex(u8Arr, i=i+1|0, point);
384
407
  } else if (point <= 0x07ff) {
385
408
  u8LenLeft = u8LenLeft - 2|0;
386
409
  if (0 <= u8LenLeft) {
387
- u8Arr[i=i+1|0] = (0x6<<5)|(point>>6);
388
- u8Arr[i=i+1|0] = (0x2<<6)|(point&0x3f);
410
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x6<<5)|(point>>6));
411
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x2<<6)|(point&0x3f));
389
412
  }
390
413
  } else {
391
414
  if (0xD800 <= point && point <= 0xDBFF) {
@@ -399,10 +422,10 @@ var ENCODEINTO_BUILD = false;
399
422
  if (point > 0xffff) {
400
423
  u8LenLeft = u8LenLeft - 4|0;
401
424
  if (0 <= u8LenLeft) {
402
- u8Arr[i=i+1|0] = (0x1e<<3) | (point>>18);
403
- u8Arr[i=i+1|0] = (0x2<<6) | ((point>>12)&0x3f);
404
- u8Arr[i=i+1|0] = (0x2<<6) | ((point>>6)&0x3f);
405
- u8Arr[i=i+1|0] = (0x2<<6) | (point&0x3f);
425
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x1e<<3) | (point>>18));
426
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x2<<6) | ((point>>12)&0x3f));
427
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x2<<6) | ((point>>6)&0x3f));
428
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x2<<6) | (point&0x3f));
406
429
  }
407
430
  continue;
408
431
  }
@@ -417,9 +440,9 @@ var ENCODEINTO_BUILD = false;
417
440
  }
418
441
  u8LenLeft = u8LenLeft - 3|0;
419
442
  if (0 <= u8LenLeft) {
420
- u8Arr[i=i+1|0] = (0xe<<<4) | (point>>12);
421
- u8Arr[i=i+1|0] = (0x2<<6) | ((point>>6)&0x3f);
422
- u8Arr[i=i+1|0] = (0x2<<6) | (point&0x3f);
443
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0xe<<<4) | (point>>12));
444
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x2<<6) | ((point>>6)&0x3f));
445
+ setTypedArrayIndex(u8Arr, i=i+1|0, (0x2<<6) | (point&0x3f));
423
446
  }
424
447
  }
425
448
  }
@@ -0,0 +1 @@
1
+ {"aliases":["es2022"],"dependencies":["_ESAbstract.CreateMethodProperty","_ESAbstract.ToIntegerOrInfinity","_ESAbstract.ToString","ArrayBuffer"],"spec":"https://tc39.es/ecma262/#sec-%typedarray%.prototype.at","docs":"https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/TypedArray/at","browsers":{"android":"*","bb":"*","chrome":"< 92","edge":"*","edge_mob":"*","firefox":"< 90","firefox_mob":"< 90","ie":"*","ie_mob":"*","ios_chr":"*","ios_saf":"*","op_mini":"*","op_mob":"*","opera":"< 78","safari":"*","samsung_mob":"< 16"},"detectSource":"\"Int8Array\"in self&&\"at\"in self.Int8Array.prototype\n","baseDir":"TypedArray/prototype/at","hasTests":true,"isTestable":true,"isPublic":true,"size":855}
@@ -0,0 +1 @@
1
+ !function(){function t(t,r){return e?t[r]:t._getter(r)}function r(r){var e=this,o=e.length,a=ToIntegerOrInfinity(r),p=a>=0?a:o+a;return p<0||p>=o?undefined:t(e,ToString(p))}var e=function(){var t=new Uint8Array(2);return t[0]=42,42===t[0]};"__proto__"in self.Int8Array.prototype?CreateMethodProperty(self.Int8Array.prototype.__proto__,"at",r):(CreateMethodProperty(self.Int8Array.prototype,"at",r),CreateMethodProperty(self.Uint8Array.prototype,"at",r),CreateMethodProperty(self.Uint8ClampedArray.prototype,"at",r),CreateMethodProperty(self.Int16Array.prototype,"at",r),CreateMethodProperty(self.Uint16Array.prototype,"at",r),CreateMethodProperty(self.Int32Array.prototype,"at",r),CreateMethodProperty(self.Uint32Array.prototype,"at",r),CreateMethodProperty(self.Float32Array.prototype,"at",r),CreateMethodProperty(self.Float64Array.prototype,"at",r))}();
@@ -0,0 +1,57 @@
1
+
2
+ // TypedArray.prototype.at
3
+ /* global CreateMethodProperty, Uint8Array, ToIntegerOrInfinity, ToString */
4
+ // 23.2.3.1. %TypedArray%.prototype.at ( index )
5
+ (function () {
6
+ // In Internet Explorer 8 there is no support for square-bracket notation
7
+ // in the TypedArrays polyfill instead so we need to use the private `_getter` method
8
+ var typedArraysSupportIndexLookup = (function() {
9
+ var uint8 = new Uint8Array(2);
10
+ uint8[0] = 42;
11
+ return uint8[0] === 42
12
+ })
13
+
14
+ function getTypedArrayIndex(array, index) {
15
+ if (typedArraysSupportIndexLookup) {
16
+ return array[index];
17
+ } else {
18
+ return array._getter(index);
19
+ }
20
+ }
21
+
22
+ function at(index) {
23
+ // 1. Let O be the this value.
24
+ var O = this;
25
+ // 2. Perform ? ValidateTypedArray(O).
26
+ // TODO: Add ValidateTypedArray
27
+ // 3. Let len be O.[[ArrayLength]].
28
+ var len = O.length;
29
+ // 4. Let relativeIndex be ? ToIntegerOrInfinity(index).
30
+ var relativeIndex = ToIntegerOrInfinity(index);
31
+ // 5. If relativeIndex ≥ 0, then
32
+ // 5.a. Let k be relativeIndex.
33
+ // 6. Else,
34
+ // 6.a. Let k be len + relativeIndex.
35
+ var k = relativeIndex >= 0 ? relativeIndex : len + relativeIndex;
36
+ // 7. If k < 0 or k ≥ len, return undefined.
37
+ if (k < 0 || k >= len) return undefined;
38
+ // 8. Return ! Get(O, ! ToString(𝔽(k))).
39
+ // return Get(O, ToString(k));
40
+ return getTypedArrayIndex(O, ToString(k));
41
+ }
42
+
43
+ if ('__proto__' in self.Int8Array.prototype) {
44
+ // set this on the underlying "TypedArrayPrototype", which is shared with all "TypedArray" subclasses
45
+ CreateMethodProperty(self.Int8Array.prototype.__proto__, 'at', at);
46
+ } else {
47
+ CreateMethodProperty(self.Int8Array.prototype, 'at', at);
48
+ CreateMethodProperty(self.Uint8Array.prototype, 'at', at);
49
+ CreateMethodProperty(self.Uint8ClampedArray.prototype, 'at', at);
50
+ CreateMethodProperty(self.Int16Array.prototype, 'at', at);
51
+ CreateMethodProperty(self.Uint16Array.prototype, 'at', at);
52
+ CreateMethodProperty(self.Int32Array.prototype, 'at', at);
53
+ CreateMethodProperty(self.Uint32Array.prototype, 'at', at);
54
+ CreateMethodProperty(self.Float32Array.prototype, 'at', at);
55
+ CreateMethodProperty(self.Float64Array.prototype, 'at', at);
56
+ }
57
+ })();
@@ -1 +1 @@
1
- {"aliases":["modernizr:urlparser","blissfuljs","default-3.4","default-3.5","default-3.6","default","URLSearchParams"],"dependencies":["Object.defineProperties","Array.prototype.forEach","Array.isArray","Array.from","Symbol.iterator"],"notes":["Polyfill requires Object getters so fails in IE <= 8"],"license":"CC0-1.0","repo":"https://github.com/inexorabletash/polyfill","docs":"https://developer.mozilla.org/en-US/docs/Web/API/URL","browsers":{"chrome":"<61","firefox":"<54","edge":"<18.17134","edge_mob":"<17","ie":"9 - *","ie_mob":"*","safari":"<12","firefox_mob":"<54","opera":"<36","op_mini":"*","android":"*","samsung_mob":"<5","bb":"*","ios_saf":"<12"},"detectSource":"(function(r){\"use strict\"\ntry{var a=new r.URL(\"http://example.com\")\nif(\"href\"in a&&\"searchParams\"in a){var e=new URL(\"http://example.com\")\nif(e.search=\"a=1&b=2\",\"http://example.com/?a=1&b=2\"===e.href&&(e.search=\"\",\"http://example.com/\"===e.href)){if(!(\"sort\"in r.URLSearchParams.prototype))return!1\nvar t=new r.URLSearchParams(\"a=1\"),n=new r.URLSearchParams(t)\nif(\"a=1\"!==String(n))return!1\nvar c=new r.URLSearchParams({a:\"1\"})\nif(\"a=1\"!==String(c))return!1\nvar h=new r.URLSearchParams([[\"a\",\"1\"]])\nreturn\"a=1\"===String(h)}}return!1}catch(m){return!1}})(self)\n","baseDir":"URL","hasTests":true,"isTestable":true,"isPublic":true,"size":8040}
1
+ {"aliases":["modernizr:urlparser","blissfuljs","default-3.4","default-3.5","default-3.6","default","URLSearchParams"],"dependencies":["Object.defineProperties","Array.prototype.forEach","Array.isArray","Array.from","Symbol.iterator"],"notes":["Polyfill requires Object getters so fails in IE <= 8"],"license":"CC0-1.0","repo":"https://github.com/inexorabletash/polyfill","docs":"https://developer.mozilla.org/en-US/docs/Web/API/URL","browsers":{"chrome":"<61","firefox":"<54","edge":"<18.17134","edge_mob":"<17","ie":"9 - *","ie_mob":"*","safari":"<12","firefox_mob":"<54","opera":"<36","op_mini":"*","android":"<71","samsung_mob":"<5","bb":"*","ios_saf":"<12"},"detectSource":"(function(r){\"use strict\"\ntry{var a=new r.URL(\"http://example.com\")\nif(\"href\"in a&&\"searchParams\"in a){var e=new URL(\"http://example.com\")\nif(e.search=\"a=1&b=2\",\"http://example.com/?a=1&b=2\"===e.href&&(e.search=\"\",\"http://example.com/\"===e.href)){if(!(\"sort\"in r.URLSearchParams.prototype))return!1\nvar t=new r.URLSearchParams(\"a=1\"),n=new r.URLSearchParams(t)\nif(\"a=1\"!==String(n))return!1\nvar c=new r.URLSearchParams({a:\"1\"})\nif(\"a=1\"!==String(c))return!1\nvar h=new r.URLSearchParams([[\"a\",\"1\"]])\nreturn\"a=1\"===String(h)}}return!1}catch(m){return!1}})(self)\n","baseDir":"URL","hasTests":true,"isTestable":true,"isPublic":true,"size":8106}
@@ -1 +1 @@
1
- !function(e){"use strict";function t(t){return!!t&&("Symbol"in e&&"iterator"in e.Symbol&&"function"==typeof t[Symbol.iterator]||!!Array.isArray(t))}!function(){function n(e){var t="",n=!0;return e.forEach(function(e){var r=encodeURIComponent(e.name),a=encodeURIComponent(e.value);n||(t+="&"),t+=r+"="+a,n=!1}),t.replace(/%20/g,"+")}function r(e,t){var n=e.split("&");t&&-1===n[0].indexOf("=")&&(n[0]="="+n[0]);var r=[];n.forEach(function(e){if(0!==e.length){var t=e.indexOf("=");if(-1!==t)var n=e.substring(0,t),a=e.substring(t+1);else n=e,a="";n=n.replace(/\+/g," "),a=a.replace(/\+/g," "),r.push({name:n,value:a})}});var a=[];return r.forEach(function(e){a.push({name:decodeURIComponent(e.name),value:decodeURIComponent(e.value)})}),a}function a(e){if(l)return new c(e);var t=document.createElement("a");return t.href=e,t}function i(e){var a=this;this._list=[],e===undefined||null===e||(e instanceof i?this._list=r(String(e)):"object"==typeof e&&t(e)?Array.from(e).forEach(function(e){if(!t(e))throw TypeError();var n=Array.from(e);if(2!==n.length)throw TypeError();a._list.push({name:String(n[0]),value:String(n[1])})}):"object"==typeof e&&e?Object.keys(e).forEach(function(t){a._list.push({name:String(t),value:String(e[t])})}):(e=String(e),"?"===e.substring(0,1)&&(e=e.substring(1)),this._list=r(e))),this._url_object=null,this._setList=function(e){o||(a._list=e)};var o=!1;this._update_steps=function(){o||(o=!0,a._url_object&&("about:"===a._url_object.protocol&&-1!==a._url_object.pathname.indexOf("?")&&(a._url_object.pathname=a._url_object.pathname.split("?")[0]),a._url_object.search=n(a._list),o=!1))}}function o(e,t){var n=0;this.next=function(){if(n>=e.length)return{done:!0,value:undefined};var r=e[n++];return{done:!1,value:"key"===t?r.name:"value"===t?r.value:[r.name,r.value]}}}function u(t,n){function o(){var e=s.href.replace(/#$|\?$|\?(?=#)/g,"");s.href!==e&&(s.href=e)}function u(){m._setList(s.search?r(s.search.substring(1)):[]),m._update_steps()}if(!(this instanceof e.URL))throw new TypeError("Failed to construct 'URL': Please use the 'new' operator.");n&&(t=function(){if(l)return new c(t,n).href;var e;try{var r;if("[object OperaMini]"===Object.prototype.toString.call(window.operamini)?(e=document.createElement("iframe"),e.style.display="none",document.documentElement.appendChild(e),r=e.contentWindow.document):document.implementation&&document.implementation.createHTMLDocument?r=document.implementation.createHTMLDocument(""):document.implementation&&document.implementation.createDocument?(r=document.implementation.createDocument("http://www.w3.org/1999/xhtml","html",null),r.documentElement.appendChild(r.createElement("head")),r.documentElement.appendChild(r.createElement("body"))):window.ActiveXObject&&(r=new window.ActiveXObject("htmlfile"),r.write("<head></head><body></body>"),r.close()),!r)throw Error("base not supported");var a=r.createElement("base");a.href=n,r.getElementsByTagName("head")[0].appendChild(a);var i=r.createElement("a");return i.href=t,i.href}finally{e&&e.parentNode.removeChild(e)}}());var s=a(t||""),f=function(){if(!("defineProperties"in Object))return!1;try{var e={};return Object.defineProperties(e,{prop:{get:function(){return!0}}}),e.prop}catch(t){return!1}}(),h=f?this:document.createElement("a"),m=new i(s.search?s.search.substring(1):null);return m._url_object=h,Object.defineProperties(h,{href:{get:function(){return s.href},set:function(e){s.href=e,o(),u()},enumerable:!0,configurable:!0},origin:{get:function(){return"data:"===this.protocol.toLowerCase()?null:"origin"in s?s.origin:this.protocol+"//"+this.host},enumerable:!0,configurable:!0},protocol:{get:function(){return s.protocol},set:function(e){s.protocol=e},enumerable:!0,configurable:!0},username:{get:function(){return s.username},set:function(e){s.username=e},enumerable:!0,configurable:!0},password:{get:function(){return s.password},set:function(e){s.password=e},enumerable:!0,configurable:!0},host:{get:function(){var e={"http:":/:80$/,"https:":/:443$/,"ftp:":/:21$/}[s.protocol];return e?s.host.replace(e,""):s.host},set:function(e){s.host=e},enumerable:!0,configurable:!0},hostname:{get:function(){return s.hostname},set:function(e){s.hostname=e},enumerable:!0,configurable:!0},port:{get:function(){return s.port},set:function(e){s.port=e},enumerable:!0,configurable:!0},pathname:{get:function(){return"/"!==s.pathname.charAt(0)?"/"+s.pathname:s.pathname},set:function(e){s.pathname=e},enumerable:!0,configurable:!0},search:{get:function(){return s.search},set:function(e){s.search!==e&&(s.search=e,o(),u())},enumerable:!0,configurable:!0},searchParams:{get:function(){return m},enumerable:!0,configurable:!0},hash:{get:function(){return s.hash},set:function(e){s.hash=e,o()},enumerable:!0,configurable:!0},toString:{value:function(){return s.toString()},enumerable:!1,configurable:!0},valueOf:{value:function(){return s.valueOf()},enumerable:!1,configurable:!0}}),h}var l,c=e.URL;try{if(c){if("searchParams"in(l=new e.URL("http://example.com"))){var s=new u("http://example.com");if(s.search="a=1&b=2","http://example.com/?a=1&b=2"===s.href&&(s.search="","http://example.com/"===s.href))return}"href"in l||(l=undefined),l=undefined}}catch(h){}if(Object.defineProperties(i.prototype,{append:{value:function(e,t){this._list.push({name:e,value:t}),this._update_steps()},writable:!0,enumerable:!0,configurable:!0},"delete":{value:function(e){for(var t=0;t<this._list.length;)this._list[t].name===e?this._list.splice(t,1):++t;this._update_steps()},writable:!0,enumerable:!0,configurable:!0},get:{value:function(e){for(var t=0;t<this._list.length;++t)if(this._list[t].name===e)return this._list[t].value;return null},writable:!0,enumerable:!0,configurable:!0},getAll:{value:function(e){for(var t=[],n=0;n<this._list.length;++n)this._list[n].name===e&&t.push(this._list[n].value);return t},writable:!0,enumerable:!0,configurable:!0},has:{value:function(e){for(var t=0;t<this._list.length;++t)if(this._list[t].name===e)return!0;return!1},writable:!0,enumerable:!0,configurable:!0},set:{value:function(e,t){for(var n=!1,r=0;r<this._list.length;)this._list[r].name===e?n?this._list.splice(r,1):(this._list[r].value=t,n=!0,++r):++r;n||this._list.push({name:e,value:t}),this._update_steps()},writable:!0,enumerable:!0,configurable:!0},entries:{value:function(){return new o(this._list,"key+value")},writable:!0,enumerable:!0,configurable:!0},keys:{value:function(){return new o(this._list,"key")},writable:!0,enumerable:!0,configurable:!0},values:{value:function(){return new o(this._list,"value")},writable:!0,enumerable:!0,configurable:!0},forEach:{value:function(e){var t=arguments.length>1?arguments[1]:undefined;this._list.forEach(function(n){e.call(t,n.value,n.name)})},writable:!0,enumerable:!0,configurable:!0},toString:{value:function(){return n(this._list)},writable:!0,enumerable:!1,configurable:!0},sort:{value:function m(){for(var e=this.entries(),t=e.next(),n=[],r={};!t.done;){var a=t.value,i=a[0];n.push(i),Object.prototype.hasOwnProperty.call(r,i)||(r[i]=[]),r[i].push(a[1]),t=e.next()}n.sort();for(var o=0;o<n.length;o++)this["delete"](n[o]);for(var u=0;u<n.length;u++)i=n[u],this.append(i,r[i].shift())}}}),"Symbol"in e&&"iterator"in e.Symbol&&(Object.defineProperty(i.prototype,e.Symbol.iterator,{value:i.prototype.entries,writable:!0,enumerable:!0,configurable:!0}),Object.defineProperty(o.prototype,e.Symbol.iterator,{value:function(){return this},writable:!0,enumerable:!0,configurable:!0})),c)for(var f in c)Object.prototype.hasOwnProperty.call(c,f)&&"function"==typeof c[f]&&(u[f]=c[f]);e.URL=u,e.URLSearchParams=i}(),function(){if("1"!==new e.URLSearchParams([["a",1]]).get("a")||"1"!==new e.URLSearchParams({a:1}).get("a")){var n=e.URLSearchParams;e.URLSearchParams=function(e){if(e&&"object"==typeof e&&t(e)){var r=new n;return Array.from(e).forEach(function(e){if(!t(e))throw TypeError();var n=Array.from(e);if(2!==n.length)throw TypeError();r.append(n[0],n[1])}),r}return e&&"object"==typeof e?(r=new n,Object.keys(e).forEach(function(t){r.set(t,e[t])}),r):new n(e)}}}()}(self);
1
+ !function(e){"use strict";function t(t){return!!t&&("Symbol"in e&&"iterator"in e.Symbol&&"function"==typeof t[Symbol.iterator]||!!Array.isArray(t))}!function(){function n(e){var t="",n=!0;return e.forEach(function(e){var r=encodeURIComponent(e.name),a=encodeURIComponent(e.value);n||(t+="&"),t+=r+"="+a,n=!1}),t.replace(/%20/g,"+")}function r(e){return e.replace(/((%[0-9A-Fa-f]{2})*)/g,function(e,t){return decodeURIComponent(t)})}function a(e,t){var n=e.split("&");t&&-1===n[0].indexOf("=")&&(n[0]="="+n[0]);var a=[];n.forEach(function(e){if(0!==e.length){var t=e.indexOf("=");if(-1!==t)var n=e.substring(0,t),r=e.substring(t+1);else n=e,r="";n=n.replace(/\+/g," "),r=r.replace(/\+/g," "),a.push({name:n,value:r})}});var i=[];return a.forEach(function(e){i.push({name:r(e.name),value:r(e.value)})}),i}function i(e){if(c)return new s(e);var t=document.createElement("a");return t.href=e,t}function o(e){var r=this;this._list=[],e===undefined||null===e||(e instanceof o?this._list=a(String(e)):"object"==typeof e&&t(e)?Array.from(e).forEach(function(e){if(!t(e))throw TypeError();var n=Array.from(e);if(2!==n.length)throw TypeError();r._list.push({name:String(n[0]),value:String(n[1])})}):"object"==typeof e&&e?Object.keys(e).forEach(function(t){r._list.push({name:String(t),value:String(e[t])})}):(e=String(e),"?"===e.substring(0,1)&&(e=e.substring(1)),this._list=a(e))),this._url_object=null,this._setList=function(e){i||(r._list=e)};var i=!1;this._update_steps=function(){i||(i=!0,r._url_object&&("about:"===r._url_object.protocol&&-1!==r._url_object.pathname.indexOf("?")&&(r._url_object.pathname=r._url_object.pathname.split("?")[0]),r._url_object.search=n(r._list),i=!1))}}function u(e,t){var n=0;this.next=function(){if(n>=e.length)return{done:!0,value:undefined};var r=e[n++];return{done:!1,value:"key"===t?r.name:"value"===t?r.value:[r.name,r.value]}}}function l(t,n){function r(){var e=l.href.replace(/#$|\?$|\?(?=#)/g,"");l.href!==e&&(l.href=e)}function u(){m._setList(l.search?a(l.search.substring(1)):[]),m._update_steps()}if(!(this instanceof e.URL))throw new TypeError("Failed to construct 'URL': Please use the 'new' operator.");n&&(t=function(){if(c)return new s(t,n).href;var e;try{var r;if("[object OperaMini]"===Object.prototype.toString.call(window.operamini)?(e=document.createElement("iframe"),e.style.display="none",document.documentElement.appendChild(e),r=e.contentWindow.document):document.implementation&&document.implementation.createHTMLDocument?r=document.implementation.createHTMLDocument(""):document.implementation&&document.implementation.createDocument?(r=document.implementation.createDocument("http://www.w3.org/1999/xhtml","html",null),r.documentElement.appendChild(r.createElement("head")),r.documentElement.appendChild(r.createElement("body"))):window.ActiveXObject&&(r=new window.ActiveXObject("htmlfile"),r.write("<head></head><body></body>"),r.close()),!r)throw Error("base not supported");var a=r.createElement("base");a.href=n,r.getElementsByTagName("head")[0].appendChild(a);var i=r.createElement("a");return i.href=t,i.href}finally{e&&e.parentNode.removeChild(e)}}());var l=i(t||""),f=function(){if(!("defineProperties"in Object))return!1;try{var e={};return Object.defineProperties(e,{prop:{get:function(){return!0}}}),e.prop}catch(t){return!1}}(),h=f?this:document.createElement("a"),m=new o(l.search?l.search.substring(1):null);return m._url_object=h,Object.defineProperties(h,{href:{get:function(){return l.href},set:function(e){l.href=e,r(),u()},enumerable:!0,configurable:!0},origin:{get:function(){return"data:"===this.protocol.toLowerCase()?null:"origin"in l?l.origin:this.protocol+"//"+this.host},enumerable:!0,configurable:!0},protocol:{get:function(){return l.protocol},set:function(e){l.protocol=e},enumerable:!0,configurable:!0},username:{get:function(){return l.username},set:function(e){l.username=e},enumerable:!0,configurable:!0},password:{get:function(){return l.password},set:function(e){l.password=e},enumerable:!0,configurable:!0},host:{get:function(){var e={"http:":/:80$/,"https:":/:443$/,"ftp:":/:21$/}[l.protocol];return e?l.host.replace(e,""):l.host},set:function(e){l.host=e},enumerable:!0,configurable:!0},hostname:{get:function(){return l.hostname},set:function(e){l.hostname=e},enumerable:!0,configurable:!0},port:{get:function(){return l.port},set:function(e){l.port=e},enumerable:!0,configurable:!0},pathname:{get:function(){return"/"!==l.pathname.charAt(0)?"/"+l.pathname:l.pathname},set:function(e){l.pathname=e},enumerable:!0,configurable:!0},search:{get:function(){return l.search},set:function(e){l.search!==e&&(l.search=e,r(),u())},enumerable:!0,configurable:!0},searchParams:{get:function(){return m},enumerable:!0,configurable:!0},hash:{get:function(){return l.hash},set:function(e){l.hash=e,r()},enumerable:!0,configurable:!0},toString:{value:function(){return l.toString()},enumerable:!1,configurable:!0},valueOf:{value:function(){return l.valueOf()},enumerable:!1,configurable:!0}}),h}var c,s=e.URL;try{if(s){if("searchParams"in(c=new e.URL("http://example.com"))){var f=new l("http://example.com");if(f.search="a=1&b=2","http://example.com/?a=1&b=2"===f.href&&(f.search="","http://example.com/"===f.href))return}"href"in c||(c=undefined),c=undefined}}catch(m){}if(Object.defineProperties(o.prototype,{append:{value:function(e,t){this._list.push({name:e,value:t}),this._update_steps()},writable:!0,enumerable:!0,configurable:!0},"delete":{value:function(e){for(var t=0;t<this._list.length;)this._list[t].name===e?this._list.splice(t,1):++t;this._update_steps()},writable:!0,enumerable:!0,configurable:!0},get:{value:function(e){for(var t=0;t<this._list.length;++t)if(this._list[t].name===e)return this._list[t].value;return null},writable:!0,enumerable:!0,configurable:!0},getAll:{value:function(e){for(var t=[],n=0;n<this._list.length;++n)this._list[n].name===e&&t.push(this._list[n].value);return t},writable:!0,enumerable:!0,configurable:!0},has:{value:function(e){for(var t=0;t<this._list.length;++t)if(this._list[t].name===e)return!0;return!1},writable:!0,enumerable:!0,configurable:!0},set:{value:function(e,t){for(var n=!1,r=0;r<this._list.length;)this._list[r].name===e?n?this._list.splice(r,1):(this._list[r].value=t,n=!0,++r):++r;n||this._list.push({name:e,value:t}),this._update_steps()},writable:!0,enumerable:!0,configurable:!0},entries:{value:function(){return new u(this._list,"key+value")},writable:!0,enumerable:!0,configurable:!0},keys:{value:function(){return new u(this._list,"key")},writable:!0,enumerable:!0,configurable:!0},values:{value:function(){return new u(this._list,"value")},writable:!0,enumerable:!0,configurable:!0},forEach:{value:function(e){var t=arguments.length>1?arguments[1]:undefined;this._list.forEach(function(n){e.call(t,n.value,n.name)})},writable:!0,enumerable:!0,configurable:!0},toString:{value:function(){return n(this._list)},writable:!0,enumerable:!1,configurable:!0},sort:{value:function p(){for(var e=this.entries(),t=e.next(),n=[],r={};!t.done;){var a=t.value,i=a[0];n.push(i),Object.prototype.hasOwnProperty.call(r,i)||(r[i]=[]),r[i].push(a[1]),t=e.next()}n.sort();for(var o=0;o<n.length;o++)this["delete"](n[o]);for(var u=0;u<n.length;u++)i=n[u],this.append(i,r[i].shift())}}}),"Symbol"in e&&"iterator"in e.Symbol&&(Object.defineProperty(o.prototype,e.Symbol.iterator,{value:o.prototype.entries,writable:!0,enumerable:!0,configurable:!0}),Object.defineProperty(u.prototype,e.Symbol.iterator,{value:function(){return this},writable:!0,enumerable:!0,configurable:!0})),s)for(var h in s)Object.prototype.hasOwnProperty.call(s,h)&&"function"==typeof s[h]&&(l[h]=s[h]);e.URL=l,e.URLSearchParams=o}(),function(){if("1"!==new e.URLSearchParams([["a",1]]).get("a")||"1"!==new e.URLSearchParams({a:1}).get("a")){var n=e.URLSearchParams;e.URLSearchParams=function(e){if(e&&"object"==typeof e&&t(e)){var r=new n;return Array.from(e).forEach(function(e){if(!t(e))throw TypeError();var n=Array.from(e);if(2!==n.length)throw TypeError();r.append(n[0],n[1])}),r}return e&&"object"==typeof e?(r=new n,Object.keys(e).forEach(function(t){r.set(t,e[t])}),r):new n(e)}}}()}(self);
@@ -62,7 +62,29 @@
62
62
  return output.replace(/%20/g, '+');
63
63
  }
64
64
 
65
+ // NOTE: URL API accepts inputs like `?x=%`, `?x=%a`, and `?x=%2sf`
66
+ // as literals, whereas legacy decodeURIComponent would throw
67
+ // URIError (as specified by ECMAScript).
68
+ //
69
+ // https://url.spec.whatwg.org/#percent-decode
70
+ function percent_decode(bytes) {
71
+ // NOTE:
72
+ // * Only decode pairs of exactly two bytes.
73
+ // * Only decode bytes in range 0-9, A-F, a-f.
74
+ // * Decode as many pairs at the same time as possible.
75
+ // This is because we're not actually operating on internal bytes,
76
+ // but on a valid UTF string, and the string must remain valid at
77
+ // all times, and decodeURIComponent will throw when attempting to
78
+ // decode a byte that represents only part of a codepoint, for example
79
+ // "%7F" separately from "%7F%C3%BF".
80
+ return bytes.replace(/((%[0-9A-Fa-f]{2})*)/g, function (_, m) {
81
+ return decodeURIComponent(m);
82
+ });
83
+ }
84
+
65
85
  // NOTE: Doesn't do the encoding/decoding dance
86
+ //
87
+ // https://url.spec.whatwg.org/#concept-urlencoded-parser
66
88
  function urlencoded_parse(input, isindex) {
67
89
  var sequences = input.split('&');
68
90
  if (isindex && sequences[0].indexOf('=') === -1)
@@ -85,8 +107,8 @@
85
107
  var output = [];
86
108
  pairs.forEach(function (pair) {
87
109
  output.push({
88
- name: decodeURIComponent(pair.name),
89
- value: decodeURIComponent(pair.value)
110
+ name: percent_decode(pair.name),
111
+ value: percent_decode(pair.value)
90
112
  });
91
113
  });
92
114
  return output;
@@ -0,0 +1 @@
1
+ {"dependencies":["_ESAbstract.GetIterator","_ESAbstract.IteratorStep","_ESAbstract.IteratorValue"],"spec":"https://tc39.github.io/ecma262/#sec-iterabletolist","browsers":{"android":"*","bb":"*","chrome":"*","edge":"*","edge_mob":"*","firefox":"*","firefox_mob":"*","ie":"*","ie_mob":"*","ios_chr":"*","ios_saf":"*","op_mini":"*","op_mob":"*","opera":"*","safari":"*","samsung_mob":"*"},"detectSource":"","baseDir":"_ESAbstract/IterableToList","hasTests":false,"isTestable":true,"isPublic":false,"size":188}
@@ -0,0 +1 @@
1
+ function IterableToList(t){for(var r=arguments.length>1?GetIterator(t,arguments[1]):GetIterator(t),e=[],a=!0;!1!==a;)if(!1!==(a=IteratorStep(r))){var o=IteratorValue(a);e.push(o)}return e}
@@ -0,0 +1,31 @@
1
+
2
+ // _ESAbstract.IterableToList
3
+ /* global GetIterator, IteratorStep, IteratorValue */
4
+ // 7.4.11 IterableToList ( items [ , method ] )
5
+ function IterableToList(items /*, method */) { // eslint-disable-line no-unused-vars
6
+ // 1. If method is present, then
7
+ // 1.a. Let iteratorRecord be ? GetIterator(items, sync, method).
8
+ // 2. Else,
9
+ // 2.a. Let iteratorRecord be ? GetIterator(items, sync).
10
+ var iteratorRecord = arguments.length > 1
11
+ ? GetIterator(items, arguments[1])
12
+ : GetIterator(items);
13
+ // 3. Let values be a new empty List.
14
+ var values = [];
15
+ // 4. Let next be true.
16
+ var next = true;
17
+ // 5. Repeat, while next is not false,
18
+ while (next !== false) {
19
+ // 5.a. Set next to ? IteratorStep(iteratorRecord).
20
+ next = IteratorStep(iteratorRecord);
21
+ // 5.b. If next is not false, then
22
+ if (next !== false) {
23
+ // 5.b.i. Let nextValue be ? IteratorValue(next).
24
+ var nextValue = IteratorValue(next);
25
+ // 5.b.ii. Append nextValue to the end of the List values.
26
+ values.push(nextValue);
27
+ }
28
+ }
29
+ // 6. Return values.
30
+ return values;
31
+ }
@@ -0,0 +1 @@
1
+ {"dependencies":["_ESAbstract.Get","_ESAbstract.ToLength"],"spec":"https://tc39.github.io/ecma262/#sec-lengthofarraylike","browsers":{"android":"*","bb":"*","chrome":"*","edge":"*","edge_mob":"*","firefox":"*","firefox_mob":"*","ie":"*","ie_mob":"*","ios_chr":"*","ios_saf":"*","op_mini":"*","op_mob":"*","opera":"*","safari":"*","samsung_mob":"*"},"detectSource":"","baseDir":"_ESAbstract/LengthOfArrayLike","hasTests":false,"isTestable":true,"isPublic":false,"size":63}
@@ -0,0 +1 @@
1
+ function LengthOfArrayLike(e){return ToLength(Get(e,"length"))}
@@ -0,0 +1,8 @@
1
+
2
+ // _ESAbstract.LengthOfArrayLike
3
+ /* global Get, ToLength */
4
+ // 7.3.19. LengthOfArrayLike ( obj )
5
+ function LengthOfArrayLike(obj) { // eslint-disable-line no-unused-vars
6
+ // 1. Return ℝ(? ToLength(? Get(obj, "length"))).
7
+ return ToLength(Get(obj, 'length'));
8
+ }
@@ -0,0 +1 @@
1
+ {"dependencies":["_ESAbstract.ToNumber"],"spec":"https://tc39.github.io/ecma262/#sec-tointegerorinfinity","browsers":{"android":"*","bb":"*","chrome":"*","edge":"*","edge_mob":"*","firefox":"*","firefox_mob":"*","ie":"*","ie_mob":"*","ios_chr":"*","ios_saf":"*","op_mini":"*","op_mob":"*","opera":"*","safari":"*","samsung_mob":"*"},"detectSource":"","baseDir":"_ESAbstract/ToIntegerOrInfinity","hasTests":false,"isTestable":true,"isPublic":false,"size":210}
@@ -0,0 +1 @@
1
+ function ToIntegerOrInfinity(n){var i=ToNumber(n);if(isNaN(i)||0===i||1/i==-Infinity)return 0;if(i===Infinity)return Infinity;if(i===-Infinity)return-Infinity;var r=Math.floor(Math.abs(i));return i<0&&(r=-r),r}
@@ -0,0 +1,20 @@
1
+
2
+ // _ESAbstract.ToIntegerOrInfinity
3
+ /* global ToNumber */
4
+ // 7.1.5. ToIntegerOrInfinity ( argument )
5
+ function ToIntegerOrInfinity(argument) { // eslint-disable-line no-unused-vars
6
+ // 1. Let number be ? ToNumber(argument).
7
+ var number = ToNumber(argument);
8
+ // 2. If number is NaN, +0𝔽, or -0𝔽, return 0.
9
+ if (isNaN(number) || number === 0 || 1/number === -Infinity) return 0;
10
+ // 3. If number is +∞𝔽, return +∞.
11
+ if (number === Infinity) return Infinity;
12
+ // 4. If number is -∞𝔽, return -∞.
13
+ if (number === -Infinity) return -Infinity;
14
+ // 5. Let integer be floor(abs(ℝ(number))).
15
+ var integer = Math.floor(Math.abs(number));
16
+ // 6. If number < +0𝔽, set integer to -integer.
17
+ if (number < 0) integer = -integer;
18
+ // 7. Return integer.
19
+ return integer;
20
+ }