core-js 3.8.0 → 3.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/es/json/stringify.js +1 -1
- package/es/promise/all-settled.js +2 -0
- package/es/promise/any.js +2 -0
- package/features/array/find-last-index.js +4 -0
- package/features/array/find-last.js +4 -0
- package/features/array/index.js +2 -0
- package/features/array/virtual/find-last-index.js +4 -0
- package/features/array/virtual/find-last.js +4 -0
- package/features/array/virtual/index.js +3 -0
- package/features/instance/find-last-index.js +8 -0
- package/features/instance/find-last.js +8 -0
- package/features/typed-array/find-last-index.js +1 -0
- package/features/typed-array/find-last.js +1 -0
- package/features/typed-array/index.js +4 -0
- package/features/typed-array/unique-by.js +2 -0
- package/internals/add-to-unscopables.js +1 -1
- package/internals/advance-string-index.js +1 -1
- package/internals/array-buffer-view-core.js +14 -3
- package/internals/array-buffer.js +6 -4
- package/internals/array-copy-within.js +1 -1
- package/internals/array-fill.js +1 -1
- package/internals/array-for-each.js +2 -4
- package/internals/array-from.js +1 -1
- package/internals/array-includes.js +4 -4
- package/internals/array-iteration-from-last.js +34 -0
- package/internals/array-iteration.js +7 -7
- package/internals/array-last-index-of.js +2 -5
- package/internals/array-method-is-strict.js +1 -1
- package/internals/array-reduce.js +2 -2
- package/internals/array-species-create.js +1 -1
- package/internals/array-unique-by.js +32 -0
- package/internals/async-iterator-prototype.js +1 -1
- package/internals/check-correctness-of-iteration.js +1 -1
- package/internals/collection.js +9 -5
- package/internals/create-html.js +1 -1
- package/internals/date-to-iso-string.js +1 -1
- package/internals/descriptors.js +1 -1
- package/internals/engine-is-webos-webkit.js +3 -0
- package/internals/fix-regexp-well-known-symbol-logic.js +1 -0
- package/internals/function-bind.js +2 -2
- package/internals/get-map-iterator.js +1 -1
- package/internals/get-set-iterator.js +1 -1
- package/internals/get-substitution.js +40 -0
- package/internals/global.js +2 -2
- package/internals/ieee754.js +2 -4
- package/internals/indexed-object.js +1 -1
- package/internals/is-array.js +1 -1
- package/internals/is-integer.js +1 -1
- package/internals/is-iterable.js +1 -1
- package/internals/is-regexp.js +1 -1
- package/internals/iterators-core.js +10 -3
- package/internals/math-expm1.js +1 -1
- package/internals/math-fround.js +2 -2
- package/internals/math-log1p.js +1 -1
- package/internals/math-scale.js +2 -2
- package/internals/math-sign.js +2 -2
- package/internals/microtask.js +3 -1
- package/internals/native-symbol.js +1 -1
- package/internals/number-is-finite.js +1 -1
- package/internals/number-parse-float.js +1 -1
- package/internals/number-parse-int.js +1 -1
- package/internals/object-assign.js +3 -3
- package/internals/object-create.js +2 -2
- package/internals/object-define-properties.js +1 -1
- package/internals/object-define-property.js +1 -1
- package/internals/object-get-own-property-descriptor.js +1 -1
- package/internals/object-get-own-property-names.js +1 -1
- package/internals/object-get-prototype-of.js +1 -1
- package/internals/object-keys.js +1 -1
- package/internals/object-property-is-enumerable.js +1 -1
- package/internals/object-prototype-accessors-forced.js +1 -1
- package/internals/object-set-prototype-of.js +2 -2
- package/internals/object-to-array.js +2 -2
- package/internals/object-to-string.js +1 -1
- package/internals/range-iterator.js +1 -1
- package/internals/regexp-exec-abstract.js +1 -1
- package/internals/regexp-exec.js +1 -0
- package/internals/regexp-flags.js +1 -1
- package/internals/require-object-coercible.js +1 -1
- package/internals/same-value-zero.js +2 -2
- package/internals/same-value.js +2 -2
- package/internals/shared.js +2 -2
- package/internals/species-constructor.js +1 -1
- package/internals/string-multibyte.js +1 -1
- package/internals/string-pad-webkit-bug.js +1 -1
- package/internals/string-pad.js +2 -2
- package/internals/string-punycode-to-ascii.js +1 -1
- package/internals/string-repeat.js +1 -1
- package/internals/string-trim.js +3 -3
- package/internals/task.js +2 -2
- package/internals/this-number-value.js +1 -1
- package/internals/to-index.js +1 -1
- package/internals/to-integer.js +1 -1
- package/internals/to-length.js +1 -1
- package/internals/to-object.js +1 -1
- package/internals/to-primitive.js +1 -1
- package/internals/typed-array-constructors-require-wrappers.js +1 -1
- package/internals/typed-array-from-species-and-list.js +11 -0
- package/internals/use-symbol-as-uid.js +1 -2
- package/internals/whitespaces.js +2 -2
- package/modules/es.aggregate-error.js +3 -0
- package/modules/es.array-buffer.constructor.js +1 -1
- package/modules/es.array-buffer.is-view.js +1 -1
- package/modules/es.array-buffer.slice.js +1 -1
- package/modules/es.array.concat.js +3 -2
- package/modules/es.array.copy-within.js +2 -2
- package/modules/es.array.every.js +2 -4
- package/modules/es.array.fill.js +2 -2
- package/modules/es.array.filter.js +2 -5
- package/modules/es.array.find-index.js +3 -6
- package/modules/es.array.find.js +3 -6
- package/modules/es.array.flat-map.js +1 -1
- package/modules/es.array.flat.js +1 -1
- package/modules/es.array.for-each.js +1 -1
- package/modules/es.array.from.js +1 -1
- package/modules/es.array.includes.js +3 -6
- package/modules/es.array.index-of.js +2 -4
- package/modules/es.array.is-array.js +1 -1
- package/modules/es.array.iterator.js +9 -9
- package/modules/es.array.join.js +1 -1
- package/modules/es.array.last-index-of.js +1 -1
- package/modules/es.array.map.js +2 -5
- package/modules/es.array.of.js +1 -1
- package/modules/es.array.reduce-right.js +2 -5
- package/modules/es.array.reduce.js +2 -4
- package/modules/es.array.reverse.js +2 -2
- package/modules/es.array.slice.js +2 -4
- package/modules/es.array.some.js +2 -4
- package/modules/es.array.sort.js +1 -1
- package/modules/es.array.species.js +1 -1
- package/modules/es.array.splice.js +2 -4
- package/modules/es.array.unscopables.flat-map.js +1 -0
- package/modules/es.array.unscopables.flat.js +1 -0
- package/modules/es.data-view.js +1 -1
- package/modules/es.date.now.js +1 -1
- package/modules/es.date.to-iso-string.js +1 -1
- package/modules/es.date.to-json.js +2 -2
- package/modules/es.date.to-primitive.js +1 -1
- package/modules/es.date.to-string.js +2 -2
- package/modules/es.function.bind.js +1 -1
- package/modules/es.function.has-instance.js +1 -1
- package/modules/es.function.name.js +1 -1
- package/modules/es.global-this.js +1 -1
- package/modules/es.json.stringify.js +3 -1
- package/modules/es.json.to-string-tag.js +1 -1
- package/modules/es.map.js +1 -1
- package/modules/es.math.acosh.js +1 -1
- package/modules/es.math.asinh.js +1 -1
- package/modules/es.math.atanh.js +1 -1
- package/modules/es.math.cbrt.js +1 -1
- package/modules/es.math.clz32.js +1 -1
- package/modules/es.math.cosh.js +1 -1
- package/modules/es.math.expm1.js +1 -1
- package/modules/es.math.fround.js +1 -1
- package/modules/es.math.hypot.js +3 -2
- package/modules/es.math.imul.js +1 -1
- package/modules/es.math.log10.js +1 -1
- package/modules/es.math.log1p.js +1 -1
- package/modules/es.math.log2.js +1 -1
- package/modules/es.math.sign.js +1 -1
- package/modules/es.math.sinh.js +1 -1
- package/modules/es.math.tanh.js +1 -1
- package/modules/es.math.to-string-tag.js +1 -1
- package/modules/es.math.trunc.js +1 -1
- package/modules/es.number.constructor.js +5 -3
- package/modules/es.number.epsilon.js +1 -1
- package/modules/es.number.is-finite.js +1 -1
- package/modules/es.number.is-integer.js +1 -1
- package/modules/es.number.is-nan.js +2 -2
- package/modules/es.number.is-safe-integer.js +1 -1
- package/modules/es.number.max-safe-integer.js +1 -1
- package/modules/es.number.min-safe-integer.js +1 -1
- package/modules/es.number.parse-float.js +1 -1
- package/modules/es.number.parse-int.js +1 -1
- package/modules/es.number.to-fixed.js +44 -45
- package/modules/es.number.to-precision.js +1 -1
- package/modules/es.object.assign.js +1 -1
- package/modules/es.object.create.js +1 -1
- package/modules/es.object.define-getter.js +1 -1
- package/modules/es.object.define-properties.js +1 -1
- package/modules/es.object.define-property.js +1 -1
- package/modules/es.object.define-setter.js +1 -1
- package/modules/es.object.entries.js +1 -1
- package/modules/es.object.freeze.js +1 -1
- package/modules/es.object.get-own-property-descriptor.js +1 -1
- package/modules/es.object.get-own-property-descriptors.js +1 -1
- package/modules/es.object.get-own-property-names.js +1 -1
- package/modules/es.object.get-prototype-of.js +1 -1
- package/modules/es.object.is-extensible.js +1 -1
- package/modules/es.object.is-frozen.js +1 -1
- package/modules/es.object.is-sealed.js +1 -1
- package/modules/es.object.is.js +1 -1
- package/modules/es.object.keys.js +1 -1
- package/modules/es.object.lookup-getter.js +1 -1
- package/modules/es.object.lookup-setter.js +1 -1
- package/modules/es.object.prevent-extensions.js +1 -1
- package/modules/es.object.seal.js +1 -1
- package/modules/es.object.set-prototype-of.js +1 -1
- package/modules/es.object.to-string.js +1 -1
- package/modules/es.object.values.js +1 -1
- package/modules/es.parse-float.js +1 -1
- package/modules/es.parse-int.js +1 -1
- package/modules/es.promise.all-settled.js +1 -1
- package/modules/es.promise.any.js +1 -1
- package/modules/es.promise.finally.js +1 -1
- package/modules/es.promise.js +8 -8
- package/modules/es.reflect.apply.js +1 -1
- package/modules/es.reflect.construct.js +1 -1
- package/modules/es.reflect.define-property.js +2 -2
- package/modules/es.reflect.delete-property.js +1 -1
- package/modules/es.reflect.get-own-property-descriptor.js +1 -1
- package/modules/es.reflect.get-prototype-of.js +1 -1
- package/modules/es.reflect.get.js +1 -1
- package/modules/es.reflect.has.js +1 -1
- package/modules/es.reflect.is-extensible.js +1 -1
- package/modules/es.reflect.own-keys.js +1 -1
- package/modules/es.reflect.prevent-extensions.js +1 -1
- package/modules/es.reflect.set-prototype-of.js +1 -1
- package/modules/es.reflect.set.js +2 -2
- package/modules/es.regexp.constructor.js +2 -2
- package/modules/es.regexp.exec.js +2 -0
- package/modules/es.regexp.flags.js +1 -1
- package/modules/es.regexp.sticky.js +1 -0
- package/modules/es.regexp.test.js +2 -0
- package/modules/es.regexp.to-string.js +1 -1
- package/modules/es.set.js +1 -1
- package/modules/es.string.anchor.js +1 -1
- package/modules/es.string.big.js +1 -1
- package/modules/es.string.blink.js +1 -1
- package/modules/es.string.bold.js +1 -1
- package/modules/es.string.code-point-at.js +1 -1
- package/modules/es.string.ends-with.js +1 -1
- package/modules/es.string.fixed.js +1 -1
- package/modules/es.string.fontcolor.js +1 -1
- package/modules/es.string.fontsize.js +1 -1
- package/modules/es.string.from-code-point.js +3 -2
- package/modules/es.string.includes.js +1 -1
- package/modules/es.string.italics.js +1 -1
- package/modules/es.string.iterator.js +2 -2
- package/modules/es.string.link.js +1 -1
- package/modules/es.string.match-all.js +2 -2
- package/modules/es.string.match.js +2 -2
- package/modules/es.string.pad-end.js +1 -1
- package/modules/es.string.pad-start.js +1 -1
- package/modules/es.string.raw.js +1 -1
- package/modules/es.string.repeat.js +1 -1
- package/modules/es.string.replace-all.js +29 -12
- package/modules/es.string.replace.js +3 -40
- package/modules/es.string.search.js +2 -2
- package/modules/es.string.small.js +1 -1
- package/modules/es.string.split.js +4 -2
- package/modules/es.string.starts-with.js +1 -1
- package/modules/es.string.strike.js +1 -1
- package/modules/es.string.sub.js +1 -1
- package/modules/es.string.sup.js +1 -1
- package/modules/es.string.trim-end.js +2 -1
- package/modules/es.string.trim-start.js +2 -1
- package/modules/es.string.trim.js +1 -1
- package/modules/es.symbol.async-iterator.js +1 -1
- package/modules/es.symbol.description.js +1 -1
- package/modules/es.symbol.has-instance.js +1 -1
- package/modules/es.symbol.is-concat-spreadable.js +1 -1
- package/modules/es.symbol.iterator.js +1 -1
- package/modules/es.symbol.js +13 -13
- package/modules/es.symbol.match-all.js +1 -0
- package/modules/es.symbol.match.js +1 -1
- package/modules/es.symbol.replace.js +1 -1
- package/modules/es.symbol.search.js +1 -1
- package/modules/es.symbol.species.js +1 -1
- package/modules/es.symbol.split.js +1 -1
- package/modules/es.symbol.to-primitive.js +1 -1
- package/modules/es.symbol.to-string-tag.js +1 -1
- package/modules/es.symbol.unscopables.js +1 -1
- package/modules/es.typed-array.copy-within.js +1 -1
- package/modules/es.typed-array.every.js +1 -1
- package/modules/es.typed-array.fill.js +2 -2
- package/modules/es.typed-array.filter.js +3 -9
- package/modules/es.typed-array.find-index.js +1 -1
- package/modules/es.typed-array.find.js +1 -1
- package/modules/es.typed-array.float32-array.js +1 -1
- package/modules/es.typed-array.float64-array.js +1 -1
- package/modules/es.typed-array.for-each.js +1 -1
- package/modules/es.typed-array.from.js +1 -1
- package/modules/es.typed-array.includes.js +1 -1
- package/modules/es.typed-array.index-of.js +1 -1
- package/modules/es.typed-array.int16-array.js +1 -1
- package/modules/es.typed-array.int32-array.js +1 -1
- package/modules/es.typed-array.int8-array.js +1 -1
- package/modules/es.typed-array.iterator.js +4 -4
- package/modules/es.typed-array.join.js +2 -2
- package/modules/es.typed-array.last-index-of.js +2 -2
- package/modules/es.typed-array.map.js +1 -1
- package/modules/es.typed-array.of.js +1 -1
- package/modules/es.typed-array.reduce-right.js +1 -1
- package/modules/es.typed-array.reduce.js +1 -1
- package/modules/es.typed-array.reverse.js +1 -1
- package/modules/es.typed-array.set.js +2 -2
- package/modules/es.typed-array.slice.js +2 -2
- package/modules/es.typed-array.some.js +1 -1
- package/modules/es.typed-array.sort.js +1 -1
- package/modules/es.typed-array.subarray.js +1 -1
- package/modules/es.typed-array.to-locale-string.js +1 -1
- package/modules/es.typed-array.to-string.js +1 -1
- package/modules/es.typed-array.uint16-array.js +1 -1
- package/modules/es.typed-array.uint32-array.js +1 -1
- package/modules/es.typed-array.uint8-array.js +1 -1
- package/modules/es.typed-array.uint8-clamped-array.js +1 -1
- package/modules/es.weak-map.js +1 -1
- package/modules/es.weak-set.js +1 -1
- package/modules/esnext.array.find-last-index.js +14 -0
- package/modules/esnext.array.find-last.js +14 -0
- package/modules/esnext.array.unique-by.js +2 -28
- package/modules/esnext.bigint.range.js +1 -1
- package/modules/esnext.map.merge.js +1 -1
- package/modules/esnext.typed-array.filter-out.js +2 -8
- package/modules/esnext.typed-array.find-last-index.js +12 -0
- package/modules/esnext.typed-array.find-last.js +12 -0
- package/modules/esnext.typed-array.unique-by.js +13 -0
- package/modules/web.timers.js +1 -1
- package/modules/web.url.js +9 -11
- package/package.json +3 -2
- package/postinstall.js +2 -2
- package/proposals/array-find-from-last.js +5 -0
- package/proposals/array-unique.js +1 -0
- package/stable/instance/entries.js +1 -1
- package/stable/instance/for-each.js +1 -1
- package/stable/instance/keys.js +1 -1
- package/stable/instance/values.js +1 -1
- package/stage/1.js +1 -0
- package/internals/array-method-uses-to-length.js +0 -27
|
@@ -6,8 +6,8 @@ var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
|
6
6
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.fill` method
|
|
9
|
-
// https://tc39.
|
|
10
|
-
// eslint-disable-next-line no-unused-vars
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.fill
|
|
10
|
+
// eslint-disable-next-line no-unused-vars -- required for `.length`
|
|
11
11
|
exportTypedArrayMethod('fill', function fill(value /* , start, end */) {
|
|
12
12
|
return $fill.apply(aTypedArray(this), arguments);
|
|
13
13
|
});
|
|
@@ -1,20 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var ArrayBufferViewCore = require('../internals/array-buffer-view-core');
|
|
3
3
|
var $filter = require('../internals/array-iteration').filter;
|
|
4
|
-
var
|
|
4
|
+
var fromSpeciesAndList = require('../internals/typed-array-from-species-and-list');
|
|
5
5
|
|
|
6
6
|
var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
7
|
-
var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
|
|
8
7
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
9
8
|
|
|
10
9
|
// `%TypedArray%.prototype.filter` method
|
|
11
|
-
// https://tc39.
|
|
10
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.filter
|
|
12
11
|
exportTypedArrayMethod('filter', function filter(callbackfn /* , thisArg */) {
|
|
13
12
|
var list = $filter(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
14
|
-
|
|
15
|
-
var index = 0;
|
|
16
|
-
var length = list.length;
|
|
17
|
-
var result = new (aTypedArrayConstructor(C))(length);
|
|
18
|
-
while (length > index) result[index] = list[index++];
|
|
19
|
-
return result;
|
|
13
|
+
return fromSpeciesAndList(this, list);
|
|
20
14
|
});
|
|
@@ -6,7 +6,7 @@ var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
|
6
6
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.findIndex` method
|
|
9
|
-
// https://tc39.
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.findindex
|
|
10
10
|
exportTypedArrayMethod('findIndex', function findIndex(predicate /* , thisArg */) {
|
|
11
11
|
return $findIndex(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
|
|
12
12
|
});
|
|
@@ -6,7 +6,7 @@ var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
|
6
6
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.find` method
|
|
9
|
-
// https://tc39.
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.find
|
|
10
10
|
exportTypedArrayMethod('find', function find(predicate /* , thisArg */) {
|
|
11
11
|
return $find(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
|
|
12
12
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var createTypedArrayConstructor = require('../internals/typed-array-constructor');
|
|
2
2
|
|
|
3
3
|
// `Float32Array` constructor
|
|
4
|
-
// https://tc39.
|
|
4
|
+
// https://tc39.es/ecma262/#sec-typedarray-objects
|
|
5
5
|
createTypedArrayConstructor('Float32', function (init) {
|
|
6
6
|
return function Float32Array(data, byteOffset, length) {
|
|
7
7
|
return init(this, data, byteOffset, length);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var createTypedArrayConstructor = require('../internals/typed-array-constructor');
|
|
2
2
|
|
|
3
3
|
// `Float64Array` constructor
|
|
4
|
-
// https://tc39.
|
|
4
|
+
// https://tc39.es/ecma262/#sec-typedarray-objects
|
|
5
5
|
createTypedArrayConstructor('Float64', function (init) {
|
|
6
6
|
return function Float64Array(data, byteOffset, length) {
|
|
7
7
|
return init(this, data, byteOffset, length);
|
|
@@ -6,7 +6,7 @@ var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
|
6
6
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.forEach` method
|
|
9
|
-
// https://tc39.
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.foreach
|
|
10
10
|
exportTypedArrayMethod('forEach', function forEach(callbackfn /* , thisArg */) {
|
|
11
11
|
$forEach(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
12
12
|
});
|
|
@@ -4,5 +4,5 @@ var exportTypedArrayStaticMethod = require('../internals/array-buffer-view-core'
|
|
|
4
4
|
var typedArrayFrom = require('../internals/typed-array-from');
|
|
5
5
|
|
|
6
6
|
// `%TypedArray%.from` method
|
|
7
|
-
// https://tc39.
|
|
7
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.from
|
|
8
8
|
exportTypedArrayStaticMethod('from', typedArrayFrom, TYPED_ARRAYS_CONSTRUCTORS_REQUIRES_WRAPPERS);
|
|
@@ -6,7 +6,7 @@ var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
|
6
6
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.includes` method
|
|
9
|
-
// https://tc39.
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.includes
|
|
10
10
|
exportTypedArrayMethod('includes', function includes(searchElement /* , fromIndex */) {
|
|
11
11
|
return $includes(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
|
|
12
12
|
});
|
|
@@ -6,7 +6,7 @@ var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
|
6
6
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.indexOf` method
|
|
9
|
-
// https://tc39.
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.indexof
|
|
10
10
|
exportTypedArrayMethod('indexOf', function indexOf(searchElement /* , fromIndex */) {
|
|
11
11
|
return $indexOf(aTypedArray(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);
|
|
12
12
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var createTypedArrayConstructor = require('../internals/typed-array-constructor');
|
|
2
2
|
|
|
3
3
|
// `Int16Array` constructor
|
|
4
|
-
// https://tc39.
|
|
4
|
+
// https://tc39.es/ecma262/#sec-typedarray-objects
|
|
5
5
|
createTypedArrayConstructor('Int16', function (init) {
|
|
6
6
|
return function Int16Array(data, byteOffset, length) {
|
|
7
7
|
return init(this, data, byteOffset, length);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var createTypedArrayConstructor = require('../internals/typed-array-constructor');
|
|
2
2
|
|
|
3
3
|
// `Int32Array` constructor
|
|
4
|
-
// https://tc39.
|
|
4
|
+
// https://tc39.es/ecma262/#sec-typedarray-objects
|
|
5
5
|
createTypedArrayConstructor('Int32', function (init) {
|
|
6
6
|
return function Int32Array(data, byteOffset, length) {
|
|
7
7
|
return init(this, data, byteOffset, length);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var createTypedArrayConstructor = require('../internals/typed-array-constructor');
|
|
2
2
|
|
|
3
3
|
// `Int8Array` constructor
|
|
4
|
-
// https://tc39.
|
|
4
|
+
// https://tc39.es/ecma262/#sec-typedarray-objects
|
|
5
5
|
createTypedArrayConstructor('Int8', function (init) {
|
|
6
6
|
return function Int8Array(data, byteOffset, length) {
|
|
7
7
|
return init(this, data, byteOffset, length);
|
|
@@ -21,18 +21,18 @@ var typedArrayValues = function values() {
|
|
|
21
21
|
};
|
|
22
22
|
|
|
23
23
|
// `%TypedArray%.prototype.entries` method
|
|
24
|
-
// https://tc39.
|
|
24
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.entries
|
|
25
25
|
exportTypedArrayMethod('entries', function entries() {
|
|
26
26
|
return arrayEntries.call(aTypedArray(this));
|
|
27
27
|
});
|
|
28
28
|
// `%TypedArray%.prototype.keys` method
|
|
29
|
-
// https://tc39.
|
|
29
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.keys
|
|
30
30
|
exportTypedArrayMethod('keys', function keys() {
|
|
31
31
|
return arrayKeys.call(aTypedArray(this));
|
|
32
32
|
});
|
|
33
33
|
// `%TypedArray%.prototype.values` method
|
|
34
|
-
// https://tc39.
|
|
34
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.values
|
|
35
35
|
exportTypedArrayMethod('values', typedArrayValues, !CORRECT_ITER_NAME);
|
|
36
36
|
// `%TypedArray%.prototype[@@iterator]` method
|
|
37
|
-
// https://tc39.
|
|
37
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype-@@iterator
|
|
38
38
|
exportTypedArrayMethod(ITERATOR, typedArrayValues, !CORRECT_ITER_NAME);
|
|
@@ -6,8 +6,8 @@ var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
|
6
6
|
var $join = [].join;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.join` method
|
|
9
|
-
// https://tc39.
|
|
10
|
-
// eslint-disable-next-line no-unused-vars
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.join
|
|
10
|
+
// eslint-disable-next-line no-unused-vars -- required for `.length`
|
|
11
11
|
exportTypedArrayMethod('join', function join(separator) {
|
|
12
12
|
return $join.apply(aTypedArray(this), arguments);
|
|
13
13
|
});
|
|
@@ -6,8 +6,8 @@ var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
|
6
6
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.lastIndexOf` method
|
|
9
|
-
// https://tc39.
|
|
10
|
-
// eslint-disable-next-line no-unused-vars
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.lastindexof
|
|
10
|
+
// eslint-disable-next-line no-unused-vars -- required for `.length`
|
|
11
11
|
exportTypedArrayMethod('lastIndexOf', function lastIndexOf(searchElement /* , fromIndex */) {
|
|
12
12
|
return $lastIndexOf.apply(aTypedArray(this), arguments);
|
|
13
13
|
});
|
|
@@ -8,7 +8,7 @@ var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
|
|
|
8
8
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
9
9
|
|
|
10
10
|
// `%TypedArray%.prototype.map` method
|
|
11
|
-
// https://tc39.
|
|
11
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.map
|
|
12
12
|
exportTypedArrayMethod('map', function map(mapfn /* , thisArg */) {
|
|
13
13
|
return $map(aTypedArray(this), mapfn, arguments.length > 1 ? arguments[1] : undefined, function (O, length) {
|
|
14
14
|
return new (aTypedArrayConstructor(speciesConstructor(O, O.constructor)))(length);
|
|
@@ -6,7 +6,7 @@ var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
|
|
|
6
6
|
var exportTypedArrayStaticMethod = ArrayBufferViewCore.exportTypedArrayStaticMethod;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.of` method
|
|
9
|
-
// https://tc39.
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.of
|
|
10
10
|
exportTypedArrayStaticMethod('of', function of(/* ...items */) {
|
|
11
11
|
var index = 0;
|
|
12
12
|
var length = arguments.length;
|
|
@@ -6,7 +6,7 @@ var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
|
6
6
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.reduceRicht` method
|
|
9
|
-
// https://tc39.
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reduceright
|
|
10
10
|
exportTypedArrayMethod('reduceRight', function reduceRight(callbackfn /* , initialValue */) {
|
|
11
11
|
return $reduceRight(aTypedArray(this), callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);
|
|
12
12
|
});
|
|
@@ -6,7 +6,7 @@ var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
|
6
6
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.reduce` method
|
|
9
|
-
// https://tc39.
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reduce
|
|
10
10
|
exportTypedArrayMethod('reduce', function reduce(callbackfn /* , initialValue */) {
|
|
11
11
|
return $reduce(aTypedArray(this), callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);
|
|
12
12
|
});
|
|
@@ -6,7 +6,7 @@ var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
|
6
6
|
var floor = Math.floor;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.reverse` method
|
|
9
|
-
// https://tc39.
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.reverse
|
|
10
10
|
exportTypedArrayMethod('reverse', function reverse() {
|
|
11
11
|
var that = this;
|
|
12
12
|
var length = aTypedArray(that).length;
|
|
@@ -9,12 +9,12 @@ var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
|
9
9
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
10
10
|
|
|
11
11
|
var FORCED = fails(function () {
|
|
12
|
-
|
|
12
|
+
/* global Int8Array -- safe */
|
|
13
13
|
new Int8Array(1).set({});
|
|
14
14
|
});
|
|
15
15
|
|
|
16
16
|
// `%TypedArray%.prototype.set` method
|
|
17
|
-
// https://tc39.
|
|
17
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.set
|
|
18
18
|
exportTypedArrayMethod('set', function set(arrayLike /* , offset */) {
|
|
19
19
|
aTypedArray(this);
|
|
20
20
|
var offset = toOffset(arguments.length > 1 ? arguments[1] : undefined, 1);
|
|
@@ -9,12 +9,12 @@ var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
|
9
9
|
var $slice = [].slice;
|
|
10
10
|
|
|
11
11
|
var FORCED = fails(function () {
|
|
12
|
-
|
|
12
|
+
/* global Int8Array -- safe */
|
|
13
13
|
new Int8Array(1).slice();
|
|
14
14
|
});
|
|
15
15
|
|
|
16
16
|
// `%TypedArray%.prototype.slice` method
|
|
17
|
-
// https://tc39.
|
|
17
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.slice
|
|
18
18
|
exportTypedArrayMethod('slice', function slice(start, end) {
|
|
19
19
|
var list = $slice.call(aTypedArray(this), start, end);
|
|
20
20
|
var C = speciesConstructor(this, this.constructor);
|
|
@@ -6,7 +6,7 @@ var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
|
6
6
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.some` method
|
|
9
|
-
// https://tc39.
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.some
|
|
10
10
|
exportTypedArrayMethod('some', function some(callbackfn /* , thisArg */) {
|
|
11
11
|
return $some(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
12
12
|
});
|
|
@@ -6,7 +6,7 @@ var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
|
6
6
|
var $sort = [].sort;
|
|
7
7
|
|
|
8
8
|
// `%TypedArray%.prototype.sort` method
|
|
9
|
-
// https://tc39.
|
|
9
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.sort
|
|
10
10
|
exportTypedArrayMethod('sort', function sort(comparefn) {
|
|
11
11
|
return $sort.call(aTypedArray(this), comparefn);
|
|
12
12
|
});
|
|
@@ -8,7 +8,7 @@ var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
|
8
8
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
9
9
|
|
|
10
10
|
// `%TypedArray%.prototype.subarray` method
|
|
11
|
-
// https://tc39.
|
|
11
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.subarray
|
|
12
12
|
exportTypedArrayMethod('subarray', function subarray(begin, end) {
|
|
13
13
|
var O = aTypedArray(this);
|
|
14
14
|
var length = O.length;
|
|
@@ -21,7 +21,7 @@ var FORCED = fails(function () {
|
|
|
21
21
|
});
|
|
22
22
|
|
|
23
23
|
// `%TypedArray%.prototype.toLocaleString` method
|
|
24
|
-
// https://tc39.
|
|
24
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tolocalestring
|
|
25
25
|
exportTypedArrayMethod('toLocaleString', function toLocaleString() {
|
|
26
26
|
return $toLocaleString.apply(TO_LOCALE_STRING_BUG ? $slice.call(aTypedArray(this)) : aTypedArray(this), arguments);
|
|
27
27
|
}, FORCED);
|
|
@@ -17,5 +17,5 @@ if (fails(function () { arrayToString.call({}); })) {
|
|
|
17
17
|
var IS_NOT_ARRAY_METHOD = Uint8ArrayPrototype.toString != arrayToString;
|
|
18
18
|
|
|
19
19
|
// `%TypedArray%.prototype.toString` method
|
|
20
|
-
// https://tc39.
|
|
20
|
+
// https://tc39.es/ecma262/#sec-%typedarray%.prototype.tostring
|
|
21
21
|
exportTypedArrayMethod('toString', arrayToString, IS_NOT_ARRAY_METHOD);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var createTypedArrayConstructor = require('../internals/typed-array-constructor');
|
|
2
2
|
|
|
3
3
|
// `Uint16Array` constructor
|
|
4
|
-
// https://tc39.
|
|
4
|
+
// https://tc39.es/ecma262/#sec-typedarray-objects
|
|
5
5
|
createTypedArrayConstructor('Uint16', function (init) {
|
|
6
6
|
return function Uint16Array(data, byteOffset, length) {
|
|
7
7
|
return init(this, data, byteOffset, length);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var createTypedArrayConstructor = require('../internals/typed-array-constructor');
|
|
2
2
|
|
|
3
3
|
// `Uint32Array` constructor
|
|
4
|
-
// https://tc39.
|
|
4
|
+
// https://tc39.es/ecma262/#sec-typedarray-objects
|
|
5
5
|
createTypedArrayConstructor('Uint32', function (init) {
|
|
6
6
|
return function Uint32Array(data, byteOffset, length) {
|
|
7
7
|
return init(this, data, byteOffset, length);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var createTypedArrayConstructor = require('../internals/typed-array-constructor');
|
|
2
2
|
|
|
3
3
|
// `Uint8Array` constructor
|
|
4
|
-
// https://tc39.
|
|
4
|
+
// https://tc39.es/ecma262/#sec-typedarray-objects
|
|
5
5
|
createTypedArrayConstructor('Uint8', function (init) {
|
|
6
6
|
return function Uint8Array(data, byteOffset, length) {
|
|
7
7
|
return init(this, data, byteOffset, length);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
var createTypedArrayConstructor = require('../internals/typed-array-constructor');
|
|
2
2
|
|
|
3
3
|
// `Uint8ClampedArray` constructor
|
|
4
|
-
// https://tc39.
|
|
4
|
+
// https://tc39.es/ecma262/#sec-typedarray-objects
|
|
5
5
|
createTypedArrayConstructor('Uint8', function (init) {
|
|
6
6
|
return function Uint8ClampedArray(data, byteOffset, length) {
|
|
7
7
|
return init(this, data, byteOffset, length);
|
package/modules/es.weak-map.js
CHANGED
|
@@ -19,7 +19,7 @@ var wrapper = function (init) {
|
|
|
19
19
|
};
|
|
20
20
|
|
|
21
21
|
// `WeakMap` constructor
|
|
22
|
-
// https://tc39.
|
|
22
|
+
// https://tc39.es/ecma262/#sec-weakmap-constructor
|
|
23
23
|
var $WeakMap = module.exports = collection('WeakMap', wrapper, collectionWeak);
|
|
24
24
|
|
|
25
25
|
// IE11 WeakMap frozen keys fix
|
package/modules/es.weak-set.js
CHANGED
|
@@ -3,7 +3,7 @@ var collection = require('../internals/collection');
|
|
|
3
3
|
var collectionWeak = require('../internals/collection-weak');
|
|
4
4
|
|
|
5
5
|
// `WeakSet` constructor
|
|
6
|
-
// https://tc39.
|
|
6
|
+
// https://tc39.es/ecma262/#sec-weakset-constructor
|
|
7
7
|
collection('WeakSet', function (init) {
|
|
8
8
|
return function WeakSet() { return init(this, arguments.length ? arguments[0] : undefined); };
|
|
9
9
|
}, collectionWeak);
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
var $ = require('../internals/export');
|
|
3
|
+
var $findLastIndex = require('../internals/array-iteration-from-last').findLastIndex;
|
|
4
|
+
var addToUnscopables = require('../internals/add-to-unscopables');
|
|
5
|
+
|
|
6
|
+
// `Array.prototype.findLastIndex` method
|
|
7
|
+
// https://github.com/tc39/proposal-array-find-from-last
|
|
8
|
+
$({ target: 'Array', proto: true }, {
|
|
9
|
+
findLastIndex: function findLastIndex(callbackfn /* , that = undefined */) {
|
|
10
|
+
return $findLastIndex(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
addToUnscopables('findLastIndex');
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
var $ = require('../internals/export');
|
|
3
|
+
var $findLast = require('../internals/array-iteration-from-last').findLast;
|
|
4
|
+
var addToUnscopables = require('../internals/add-to-unscopables');
|
|
5
|
+
|
|
6
|
+
// `Array.prototype.findLast` method
|
|
7
|
+
// https://github.com/tc39/proposal-array-find-from-last
|
|
8
|
+
$({ target: 'Array', proto: true }, {
|
|
9
|
+
findLast: function findLast(callbackfn /* , that = undefined */) {
|
|
10
|
+
return $findLast(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
|
|
14
|
+
addToUnscopables('findLast');
|
|
@@ -1,38 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
|
-
var toLength = require('../internals/to-length');
|
|
4
|
-
var toObject = require('../internals/to-object');
|
|
5
|
-
var getBuiltIn = require('../internals/get-built-in');
|
|
6
|
-
var arraySpeciesCreate = require('../internals/array-species-create');
|
|
7
3
|
var addToUnscopables = require('../internals/add-to-unscopables');
|
|
8
|
-
|
|
9
|
-
var push = [].push;
|
|
4
|
+
var uniqueBy = require('../internals/array-unique-by');
|
|
10
5
|
|
|
11
6
|
// `Array.prototype.uniqueBy` method
|
|
12
7
|
// https://github.com/tc39/proposal-array-unique
|
|
13
8
|
$({ target: 'Array', proto: true }, {
|
|
14
|
-
uniqueBy:
|
|
15
|
-
var that = toObject(this);
|
|
16
|
-
var length = toLength(that.length);
|
|
17
|
-
var result = arraySpeciesCreate(that, 0);
|
|
18
|
-
var Map = getBuiltIn('Map');
|
|
19
|
-
var map = new Map();
|
|
20
|
-
var resolverFunction, index, item, key;
|
|
21
|
-
if (typeof resolver == 'function') resolverFunction = resolver;
|
|
22
|
-
else if (resolver == null) resolverFunction = function (value) {
|
|
23
|
-
return value;
|
|
24
|
-
};
|
|
25
|
-
else throw new TypeError('Incorrect resolver!');
|
|
26
|
-
for (index = 0; index < length; index++) {
|
|
27
|
-
item = that[index];
|
|
28
|
-
key = resolverFunction(item);
|
|
29
|
-
if (!map.has(key)) map.set(key, item);
|
|
30
|
-
}
|
|
31
|
-
map.forEach(function (value) {
|
|
32
|
-
push.call(result, value);
|
|
33
|
-
});
|
|
34
|
-
return result;
|
|
35
|
-
}
|
|
9
|
+
uniqueBy: uniqueBy
|
|
36
10
|
});
|
|
37
11
|
|
|
38
12
|
addToUnscopables('uniqueBy');
|
|
@@ -7,7 +7,7 @@ var RangeIterator = require('../internals/range-iterator');
|
|
|
7
7
|
if (typeof BigInt == 'function') {
|
|
8
8
|
$({ target: 'BigInt', stat: true }, {
|
|
9
9
|
range: function range(start, end, option) {
|
|
10
|
-
|
|
10
|
+
/* global BigInt -- safe */
|
|
11
11
|
return new RangeIterator(start, end, option, 'bigint', BigInt(0), BigInt(1));
|
|
12
12
|
}
|
|
13
13
|
});
|
|
@@ -8,7 +8,7 @@ var iterate = require('../internals/iterate');
|
|
|
8
8
|
// `Map.prototype.merge` method
|
|
9
9
|
// https://github.com/tc39/proposal-collection-methods
|
|
10
10
|
$({ target: 'Map', proto: true, real: true, forced: IS_PURE }, {
|
|
11
|
-
// eslint-disable-next-line no-unused-vars
|
|
11
|
+
// eslint-disable-next-line no-unused-vars -- required for `.length`
|
|
12
12
|
merge: function merge(iterable /* ...iterbles */) {
|
|
13
13
|
var map = anObject(this);
|
|
14
14
|
var setter = aFunction(map.set);
|
|
@@ -1,20 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var ArrayBufferViewCore = require('../internals/array-buffer-view-core');
|
|
3
3
|
var $filterOut = require('../internals/array-iteration').filterOut;
|
|
4
|
-
var
|
|
4
|
+
var fromSpeciesAndList = require('../internals/typed-array-from-species-and-list');
|
|
5
5
|
|
|
6
6
|
var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
7
|
-
var aTypedArrayConstructor = ArrayBufferViewCore.aTypedArrayConstructor;
|
|
8
7
|
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
9
8
|
|
|
10
9
|
// `%TypedArray%.prototype.filterOut` method
|
|
11
10
|
// https://github.com/tc39/proposal-array-filtering
|
|
12
11
|
exportTypedArrayMethod('filterOut', function filterOut(callbackfn /* , thisArg */) {
|
|
13
12
|
var list = $filterOut(aTypedArray(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
14
|
-
|
|
15
|
-
var index = 0;
|
|
16
|
-
var length = list.length;
|
|
17
|
-
var result = new (aTypedArrayConstructor(C))(length);
|
|
18
|
-
while (length > index) result[index] = list[index++];
|
|
19
|
-
return result;
|
|
13
|
+
return fromSpeciesAndList(this, list);
|
|
20
14
|
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
var ArrayBufferViewCore = require('../internals/array-buffer-view-core');
|
|
3
|
+
var $findLastIndex = require('../internals/array-iteration-from-last').findLastIndex;
|
|
4
|
+
|
|
5
|
+
var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
6
|
+
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
7
|
+
|
|
8
|
+
// `%TypedArray%.prototype.findLastIndex` method
|
|
9
|
+
// https://github.com/tc39/proposal-array-find-from-last
|
|
10
|
+
exportTypedArrayMethod('findLastIndex', function findLastIndex(predicate /* , thisArg */) {
|
|
11
|
+
return $findLastIndex(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
|
|
12
|
+
});
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
var ArrayBufferViewCore = require('../internals/array-buffer-view-core');
|
|
3
|
+
var $findLast = require('../internals/array-iteration-from-last').findLast;
|
|
4
|
+
|
|
5
|
+
var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
6
|
+
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
7
|
+
|
|
8
|
+
// `%TypedArray%.prototype.findLast` method
|
|
9
|
+
// https://github.com/tc39/proposal-array-find-from-last
|
|
10
|
+
exportTypedArrayMethod('findLast', function findLast(predicate /* , thisArg */) {
|
|
11
|
+
return $findLast(aTypedArray(this), predicate, arguments.length > 1 ? arguments[1] : undefined);
|
|
12
|
+
});
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
var ArrayBufferViewCore = require('../internals/array-buffer-view-core');
|
|
3
|
+
var arrayUniqueBy = require('../internals/array-unique-by');
|
|
4
|
+
var fromSpeciesAndList = require('../internals/typed-array-from-species-and-list');
|
|
5
|
+
|
|
6
|
+
var aTypedArray = ArrayBufferViewCore.aTypedArray;
|
|
7
|
+
var exportTypedArrayMethod = ArrayBufferViewCore.exportTypedArrayMethod;
|
|
8
|
+
|
|
9
|
+
// `%TypedArray%.prototype.uniqueBy` method
|
|
10
|
+
// https://github.com/tc39/proposal-array-unique
|
|
11
|
+
exportTypedArrayMethod('uniqueBy', function uniqueBy(resolver) {
|
|
12
|
+
return fromSpeciesAndList(this, arrayUniqueBy.call(aTypedArray(this), resolver));
|
|
13
|
+
});
|
package/modules/web.timers.js
CHANGED
|
@@ -10,7 +10,7 @@ var wrap = function (scheduler) {
|
|
|
10
10
|
var boundArgs = arguments.length > 2;
|
|
11
11
|
var args = boundArgs ? slice.call(arguments, 2) : undefined;
|
|
12
12
|
return scheduler(boundArgs ? function () {
|
|
13
|
-
// eslint-disable-next-line no-new-func
|
|
13
|
+
// eslint-disable-next-line no-new-func -- spec requirement
|
|
14
14
|
(typeof handler == 'function' ? handler : Function(handler)).apply(this, args);
|
|
15
15
|
} : handler, timeout);
|
|
16
16
|
};
|
package/modules/web.url.js
CHANGED
|
@@ -37,14 +37,12 @@ var HEX_START = /^(0x|0X)/;
|
|
|
37
37
|
var OCT = /^[0-7]+$/;
|
|
38
38
|
var DEC = /^\d+$/;
|
|
39
39
|
var HEX = /^[\dA-Fa-f]+$/;
|
|
40
|
-
|
|
41
|
-
var FORBIDDEN_HOST_CODE_POINT = /[\u0000\
|
|
42
|
-
|
|
43
|
-
var FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\u0000\u0009\u000A\u000D #/:?@[\\]]/;
|
|
44
|
-
// eslint-disable-next-line no-control-regex
|
|
40
|
+
/* eslint-disable no-control-regex -- safe */
|
|
41
|
+
var FORBIDDEN_HOST_CODE_POINT = /[\u0000\t\u000A\u000D #%/:?@[\\]]/;
|
|
42
|
+
var FORBIDDEN_HOST_CODE_POINT_EXCLUDING_PERCENT = /[\u0000\t\u000A\u000D #/:?@[\\]]/;
|
|
45
43
|
var LEADING_AND_TRAILING_C0_CONTROL_OR_SPACE = /^[\u0000-\u001F ]+|[\u0000-\u001F ]+$/g;
|
|
46
|
-
|
|
47
|
-
|
|
44
|
+
var TAB_AND_NEW_LINE = /[\t\u000A\u000D]/g;
|
|
45
|
+
/* eslint-enable no-control-regex -- safe */
|
|
48
46
|
var EOF;
|
|
49
47
|
|
|
50
48
|
var parseHost = function (url, input) {
|
|
@@ -110,7 +108,7 @@ var parseIPv4 = function (input) {
|
|
|
110
108
|
return ipv4;
|
|
111
109
|
};
|
|
112
110
|
|
|
113
|
-
// eslint-disable-next-line max-statements
|
|
111
|
+
// eslint-disable-next-line max-statements -- TODO
|
|
114
112
|
var parseIPv6 = function (input) {
|
|
115
113
|
var address = [0, 0, 0, 0, 0, 0, 0, 0];
|
|
116
114
|
var pieceIndex = 0;
|
|
@@ -332,7 +330,7 @@ var CANNOT_BE_A_BASE_URL_PATH = {};
|
|
|
332
330
|
var QUERY = {};
|
|
333
331
|
var FRAGMENT = {};
|
|
334
332
|
|
|
335
|
-
// eslint-disable-next-line max-statements
|
|
333
|
+
// eslint-disable-next-line max-statements -- TODO
|
|
336
334
|
var parseURL = function (url, input, stateOverride, base) {
|
|
337
335
|
var state = stateOverride || SCHEME_START;
|
|
338
336
|
var pointer = 0;
|
|
@@ -988,13 +986,13 @@ if (NativeURL) {
|
|
|
988
986
|
var nativeRevokeObjectURL = NativeURL.revokeObjectURL;
|
|
989
987
|
// `URL.createObjectURL` method
|
|
990
988
|
// https://developer.mozilla.org/en-US/docs/Web/API/URL/createObjectURL
|
|
991
|
-
// eslint-disable-next-line no-unused-vars
|
|
989
|
+
// eslint-disable-next-line no-unused-vars -- required for `.length`
|
|
992
990
|
if (nativeCreateObjectURL) redefine(URLConstructor, 'createObjectURL', function createObjectURL(blob) {
|
|
993
991
|
return nativeCreateObjectURL.apply(NativeURL, arguments);
|
|
994
992
|
});
|
|
995
993
|
// `URL.revokeObjectURL` method
|
|
996
994
|
// https://developer.mozilla.org/en-US/docs/Web/API/URL/revokeObjectURL
|
|
997
|
-
// eslint-disable-next-line no-unused-vars
|
|
995
|
+
// eslint-disable-next-line no-unused-vars -- required for `.length`
|
|
998
996
|
if (nativeRevokeObjectURL) redefine(URLConstructor, 'revokeObjectURL', function revokeObjectURL(url) {
|
|
999
997
|
return nativeRevokeObjectURL.apply(NativeURL, arguments);
|
|
1000
998
|
});
|