core-js-pure 3.2.0 → 3.3.3
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/configurator.js +7 -0
- package/es/global-this.js +3 -0
- package/es/index.js +1 -0
- package/features/async-iterator/as-indexed-pairs.js +10 -0
- package/features/async-iterator/drop.js +10 -0
- package/features/async-iterator/every.js +10 -0
- package/features/async-iterator/filter.js +10 -0
- package/features/async-iterator/find.js +10 -0
- package/features/async-iterator/flat-map.js +10 -0
- package/features/async-iterator/for-each.js +10 -0
- package/features/async-iterator/from.js +10 -0
- package/features/async-iterator/index.js +22 -0
- package/features/async-iterator/map.js +10 -0
- package/features/async-iterator/reduce.js +10 -0
- package/features/async-iterator/some.js +10 -0
- package/features/async-iterator/take.js +10 -0
- package/features/async-iterator/to-array.js +10 -0
- package/features/global-this.js +1 -3
- package/features/iterator/as-indexed-pairs.js +10 -0
- package/features/iterator/drop.js +9 -0
- package/features/iterator/every.js +9 -0
- package/features/iterator/filter.js +9 -0
- package/features/iterator/find.js +9 -0
- package/features/iterator/flat-map.js +9 -0
- package/features/iterator/for-each.js +9 -0
- package/features/iterator/from.js +9 -0
- package/features/iterator/index.js +21 -0
- package/features/iterator/map.js +9 -0
- package/features/iterator/reduce.js +9 -0
- package/features/iterator/some.js +9 -0
- package/features/iterator/take.js +9 -0
- package/features/iterator/to-array.js +9 -0
- package/features/map/index.js +2 -0
- package/features/map/update-or-insert.js +1 -0
- package/features/map/upsert.js +5 -0
- package/features/weak-map/index.js +1 -0
- package/features/weak-map/upsert.js +5 -0
- package/internals/array-from.js +3 -2
- package/internals/async-iterator-iteration.js +61 -0
- package/internals/async-iterator-prototype.js +37 -0
- package/internals/collection.js +9 -7
- package/internals/create-async-iterator-proxy.js +61 -0
- package/internals/create-iterator-proxy.js +51 -0
- package/internals/{hide.js → create-non-enumerable-property.js} +0 -0
- package/internals/define-iterator.js +3 -3
- package/internals/export.js +8 -4
- package/internals/get-async-iterator-method.js +9 -0
- package/internals/global.js +4 -5
- package/internals/internal-state.js +2 -2
- package/internals/iterate.js +4 -3
- package/internals/iterators-core.js +4 -2
- package/internals/map-upsert.js +23 -0
- package/internals/microtask.js +4 -3
- package/internals/native-url.js +13 -4
- package/internals/redefine.js +2 -2
- package/internals/set-global.js +2 -2
- package/internals/set-to-string-tag.js +4 -2
- package/internals/shared-store.js +7 -0
- package/internals/shared.js +2 -6
- package/internals/task.js +3 -1
- package/internals/to-positive-integer.js +7 -0
- package/modules/es.global-this.js +8 -0
- package/modules/es.promise.js +2 -1
- package/modules/es.string.match-all.js +22 -7
- package/modules/es.symbol.js +4 -2
- package/modules/esnext.aggregate-error.js +28 -4
- package/modules/esnext.async-iterator.as-indexed-pairs.js +27 -0
- package/modules/esnext.async-iterator.constructor.js +25 -0
- package/modules/esnext.async-iterator.drop.js +41 -0
- package/modules/esnext.async-iterator.every.js +10 -0
- package/modules/esnext.async-iterator.filter.js +42 -0
- package/modules/esnext.async-iterator.find.js +10 -0
- package/modules/esnext.async-iterator.flat-map.js +67 -0
- package/modules/esnext.async-iterator.for-each.js +10 -0
- package/modules/esnext.async-iterator.from.js +30 -0
- package/modules/esnext.async-iterator.map.js +30 -0
- package/modules/esnext.async-iterator.reduce.js +46 -0
- package/modules/esnext.async-iterator.some.js +10 -0
- package/modules/esnext.async-iterator.take.js +22 -0
- package/modules/esnext.async-iterator.to-array.js +10 -0
- package/modules/esnext.global-this.js +2 -8
- package/modules/esnext.iterator.as-indexed-pairs.js +20 -0
- package/modules/esnext.iterator.constructor.js +39 -0
- package/modules/esnext.iterator.drop.js +30 -0
- package/modules/esnext.iterator.every.js +16 -0
- package/modules/esnext.iterator.filter.js +30 -0
- package/modules/esnext.iterator.find.js +16 -0
- package/modules/esnext.iterator.flat-map.js +45 -0
- package/modules/esnext.iterator.for-each.js +11 -0
- package/modules/esnext.iterator.from.js +32 -0
- package/modules/esnext.iterator.map.js +23 -0
- package/modules/esnext.iterator.reduce.js +25 -0
- package/modules/esnext.iterator.some.js +16 -0
- package/modules/esnext.iterator.take.js +25 -0
- package/modules/esnext.iterator.to-array.js +15 -0
- package/modules/esnext.map.reduce.js +9 -8
- package/modules/esnext.map.update-or-insert.js +5 -12
- package/modules/esnext.map.upsert.js +10 -0
- package/modules/esnext.math.signbit.js +0 -1
- package/modules/esnext.observable.js +2 -2
- package/modules/esnext.set.reduce.js +9 -8
- package/modules/esnext.string.match-all.js +0 -1
- package/modules/esnext.string.replace-all.js +13 -19
- package/modules/esnext.symbol.replace-all.js +1 -2
- package/modules/esnext.weak-map.upsert.js +10 -0
- package/modules/web.dom-collections.iterator.js +2 -2
- package/modules/web.url-search-params.js +7 -5
- package/modules/web.url.js +0 -1
- package/package.json +2 -2
- package/postinstall.js +49 -0
- package/proposals/iterator-helpers.js +20 -0
- package/proposals/map-update-or-insert.js +2 -1
- package/proposals/map-upsert.js +5 -0
- package/stable/global-this.js +1 -3
- package/stage/1.js +0 -1
- package/stage/2.js +2 -2
- package/stage/3.js +2 -1
- package/stage/4.js +1 -0
- package/scripts/postinstall.js +0 -24
package/configurator.js
CHANGED
|
@@ -1,7 +1,12 @@
|
|
|
1
|
+
var has = require('./internals/has');
|
|
1
2
|
var isArray = require('./internals/is-array');
|
|
2
3
|
var isForced = require('./internals/is-forced');
|
|
4
|
+
var shared = require('./internals/shared-store');
|
|
5
|
+
|
|
3
6
|
var data = isForced.data;
|
|
4
7
|
var normalize = isForced.normalize;
|
|
8
|
+
var USE_FUNCTION_CONSTRUCTOR = 'USE_FUNCTION_CONSTRUCTOR';
|
|
9
|
+
var ASYNC_ITERATOR_PROTOTYPE = 'AsyncIteratorPrototype';
|
|
5
10
|
|
|
6
11
|
var setAggressivenessLevel = function (object, constant) {
|
|
7
12
|
if (isArray(object)) for (var i = 0; i < object.length; i++) data[normalize(object[i])] = constant;
|
|
@@ -12,5 +17,7 @@ module.exports = function (options) {
|
|
|
12
17
|
setAggressivenessLevel(options.useNative, isForced.NATIVE);
|
|
13
18
|
setAggressivenessLevel(options.usePolyfill, isForced.POLYFILL);
|
|
14
19
|
setAggressivenessLevel(options.useFeatureDetection, null);
|
|
20
|
+
if (has(options, USE_FUNCTION_CONSTRUCTOR)) shared[USE_FUNCTION_CONSTRUCTOR] = !!options[USE_FUNCTION_CONSTRUCTOR];
|
|
21
|
+
if (has(options, ASYNC_ITERATOR_PROTOTYPE)) shared[USE_FUNCTION_CONSTRUCTOR] = options[ASYNC_ITERATOR_PROTOTYPE];
|
|
15
22
|
}
|
|
16
23
|
};
|
package/es/index.js
CHANGED
|
@@ -41,6 +41,7 @@ require('../modules/es.object.lookup-setter');
|
|
|
41
41
|
require('../modules/es.function.bind');
|
|
42
42
|
require('../modules/es.function.name');
|
|
43
43
|
require('../modules/es.function.has-instance');
|
|
44
|
+
require('../modules/es.global-this');
|
|
44
45
|
require('../modules/es.array.from');
|
|
45
46
|
require('../modules/es.array.is-array');
|
|
46
47
|
require('../modules/es.array.of');
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.as-indexed-pairs');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
9
|
+
|
|
10
|
+
module.exports = entryUnbind('AsyncIterator', 'asIndexedPairs');
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.drop');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
9
|
+
|
|
10
|
+
module.exports = entryUnbind('AsyncIterator', 'drop');
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.every');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
9
|
+
|
|
10
|
+
module.exports = entryUnbind('AsyncIterator', 'every');
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.filter');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
9
|
+
|
|
10
|
+
module.exports = entryUnbind('AsyncIterator', 'filter');
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.find');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
9
|
+
|
|
10
|
+
module.exports = entryUnbind('AsyncIterator', 'find');
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.flat-map');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
9
|
+
|
|
10
|
+
module.exports = entryUnbind('AsyncIterator', 'flatMap');
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.for-each');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
9
|
+
|
|
10
|
+
module.exports = entryUnbind('AsyncIterator', 'forEach');
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.from');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var path = require('../../internals/path');
|
|
9
|
+
|
|
10
|
+
module.exports = path.AsyncIterator.from;
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.as-indexed-pairs');
|
|
6
|
+
require('../../modules/esnext.async-iterator.drop');
|
|
7
|
+
require('../../modules/esnext.async-iterator.every');
|
|
8
|
+
require('../../modules/esnext.async-iterator.filter');
|
|
9
|
+
require('../../modules/esnext.async-iterator.find');
|
|
10
|
+
require('../../modules/esnext.async-iterator.flat-map');
|
|
11
|
+
require('../../modules/esnext.async-iterator.for-each');
|
|
12
|
+
require('../../modules/esnext.async-iterator.from');
|
|
13
|
+
require('../../modules/esnext.async-iterator.map');
|
|
14
|
+
require('../../modules/esnext.async-iterator.reduce');
|
|
15
|
+
require('../../modules/esnext.async-iterator.some');
|
|
16
|
+
require('../../modules/esnext.async-iterator.take');
|
|
17
|
+
require('../../modules/esnext.async-iterator.to-array');
|
|
18
|
+
require('../../modules/web.dom-collections.iterator');
|
|
19
|
+
|
|
20
|
+
var path = require('../../internals/path');
|
|
21
|
+
|
|
22
|
+
module.exports = path.AsyncIterator;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.map');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
9
|
+
|
|
10
|
+
module.exports = entryUnbind('AsyncIterator', 'map');
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.reduce');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
9
|
+
|
|
10
|
+
module.exports = entryUnbind('AsyncIterator', 'reduce');
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.some');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
9
|
+
|
|
10
|
+
module.exports = entryUnbind('AsyncIterator', 'some');
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.take');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
9
|
+
|
|
10
|
+
module.exports = entryUnbind('AsyncIterator', 'take');
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.promise');
|
|
3
|
+
require('../../modules/es.string.iterator');
|
|
4
|
+
require('../../modules/esnext.async-iterator.constructor');
|
|
5
|
+
require('../../modules/esnext.async-iterator.to-array');
|
|
6
|
+
require('../../modules/web.dom-collections.iterator');
|
|
7
|
+
|
|
8
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
9
|
+
|
|
10
|
+
module.exports = entryUnbind('AsyncIterator', 'toArray');
|
package/features/global-this.js
CHANGED
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.as-indexed-pairs');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
8
|
+
|
|
9
|
+
module.exports = entryUnbind('Iterator', 'asIndexedPairs');
|
|
10
|
+
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.drop');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
8
|
+
|
|
9
|
+
module.exports = entryUnbind('Iterator', 'drop');
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.every');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
8
|
+
|
|
9
|
+
module.exports = entryUnbind('Iterator', 'every');
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.filter');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
8
|
+
|
|
9
|
+
module.exports = entryUnbind('Iterator', 'filter');
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.find');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
8
|
+
|
|
9
|
+
module.exports = entryUnbind('Iterator', 'find');
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.flat-map');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
8
|
+
|
|
9
|
+
module.exports = entryUnbind('Iterator', 'flatMap');
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.for-each');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
8
|
+
|
|
9
|
+
module.exports = entryUnbind('Iterator', 'forEach');
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.from');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var path = require('../../internals/path');
|
|
8
|
+
|
|
9
|
+
module.exports = path.Iterator.from;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.as-indexed-pairs');
|
|
5
|
+
require('../../modules/esnext.iterator.drop');
|
|
6
|
+
require('../../modules/esnext.iterator.every');
|
|
7
|
+
require('../../modules/esnext.iterator.filter');
|
|
8
|
+
require('../../modules/esnext.iterator.find');
|
|
9
|
+
require('../../modules/esnext.iterator.flat-map');
|
|
10
|
+
require('../../modules/esnext.iterator.for-each');
|
|
11
|
+
require('../../modules/esnext.iterator.from');
|
|
12
|
+
require('../../modules/esnext.iterator.map');
|
|
13
|
+
require('../../modules/esnext.iterator.reduce');
|
|
14
|
+
require('../../modules/esnext.iterator.some');
|
|
15
|
+
require('../../modules/esnext.iterator.take');
|
|
16
|
+
require('../../modules/esnext.iterator.to-array');
|
|
17
|
+
require('../../modules/web.dom-collections.iterator');
|
|
18
|
+
|
|
19
|
+
var path = require('../../internals/path');
|
|
20
|
+
|
|
21
|
+
module.exports = path.Iterator;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.map');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
8
|
+
|
|
9
|
+
module.exports = entryUnbind('Iterator', 'map');
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.reduce');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
8
|
+
|
|
9
|
+
module.exports = entryUnbind('Iterator', 'reduce');
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.some');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
8
|
+
|
|
9
|
+
module.exports = entryUnbind('Iterator', 'some');
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.take');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
8
|
+
|
|
9
|
+
module.exports = entryUnbind('Iterator', 'take');
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
require('../../modules/es.object.to-string');
|
|
2
|
+
require('../../modules/es.string.iterator');
|
|
3
|
+
require('../../modules/esnext.iterator.constructor');
|
|
4
|
+
require('../../modules/esnext.iterator.to-array');
|
|
5
|
+
require('../../modules/web.dom-collections.iterator');
|
|
6
|
+
|
|
7
|
+
var entryUnbind = require('../../internals/entry-unbind');
|
|
8
|
+
|
|
9
|
+
module.exports = entryUnbind('Iterator', 'toArray');
|
package/features/map/index.js
CHANGED
|
@@ -17,4 +17,6 @@ require('../../modules/esnext.map.merge');
|
|
|
17
17
|
require('../../modules/esnext.map.reduce');
|
|
18
18
|
require('../../modules/esnext.map.some');
|
|
19
19
|
require('../../modules/esnext.map.update');
|
|
20
|
+
// TODO: remove from `core-js@4`
|
|
20
21
|
require('../../modules/esnext.map.update-or-insert');
|
|
22
|
+
require('../../modules/esnext.map.upsert');
|
package/internals/array-from.js
CHANGED
|
@@ -17,13 +17,14 @@ module.exports = function from(arrayLike /* , mapfn = undefined, thisArg = undef
|
|
|
17
17
|
var mapping = mapfn !== undefined;
|
|
18
18
|
var index = 0;
|
|
19
19
|
var iteratorMethod = getIteratorMethod(O);
|
|
20
|
-
var length, result, step, iterator;
|
|
20
|
+
var length, result, step, iterator, next;
|
|
21
21
|
if (mapping) mapfn = bind(mapfn, argumentsLength > 2 ? arguments[2] : undefined, 2);
|
|
22
22
|
// if the target is not iterable or it's an array with the default iterator - use a simple case
|
|
23
23
|
if (iteratorMethod != undefined && !(C == Array && isArrayIteratorMethod(iteratorMethod))) {
|
|
24
24
|
iterator = iteratorMethod.call(O);
|
|
25
|
+
next = iterator.next;
|
|
25
26
|
result = new C();
|
|
26
|
-
for (;!(step =
|
|
27
|
+
for (;!(step = next.call(iterator)).done; index++) {
|
|
27
28
|
createProperty(result, index, mapping
|
|
28
29
|
? callWithSafeIterationClosing(iterator, mapfn, [step.value, index], true)
|
|
29
30
|
: step.value
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
// https://github.com/tc39/proposal-iterator-helpers
|
|
3
|
+
var aFunction = require('../internals/a-function');
|
|
4
|
+
var anObject = require('../internals/an-object');
|
|
5
|
+
var getBuiltIn = require('../internals/get-built-in');
|
|
6
|
+
|
|
7
|
+
var Promise = getBuiltIn('Promise');
|
|
8
|
+
var push = [].push;
|
|
9
|
+
|
|
10
|
+
var createMethod = function (TYPE) {
|
|
11
|
+
var IS_TO_ARRAY = TYPE == 0;
|
|
12
|
+
var IS_FOR_EACH = TYPE == 1;
|
|
13
|
+
var IS_EVERY = TYPE == 2;
|
|
14
|
+
var IS_SOME = TYPE == 3;
|
|
15
|
+
return function (iterator, fn) {
|
|
16
|
+
anObject(iterator);
|
|
17
|
+
var next = aFunction(iterator.next);
|
|
18
|
+
var array = IS_TO_ARRAY ? [] : undefined;
|
|
19
|
+
if (!IS_TO_ARRAY) aFunction(fn);
|
|
20
|
+
|
|
21
|
+
return new Promise(function (resolve, reject) {
|
|
22
|
+
var loop = function () {
|
|
23
|
+
try {
|
|
24
|
+
Promise.resolve(anObject(next.call(iterator))).then(function (step) {
|
|
25
|
+
try {
|
|
26
|
+
if (anObject(step).done) {
|
|
27
|
+
resolve(IS_TO_ARRAY ? array : IS_SOME ? false : IS_EVERY || undefined);
|
|
28
|
+
} else {
|
|
29
|
+
var value = step.value;
|
|
30
|
+
if (IS_TO_ARRAY) {
|
|
31
|
+
push.call(array, value);
|
|
32
|
+
loop();
|
|
33
|
+
} else {
|
|
34
|
+
Promise.resolve(fn(value)).then(function (result) {
|
|
35
|
+
if (IS_FOR_EACH) {
|
|
36
|
+
loop();
|
|
37
|
+
} else if (IS_EVERY) {
|
|
38
|
+
result ? loop() : resolve(false);
|
|
39
|
+
} else {
|
|
40
|
+
result ? resolve(IS_SOME || value) : loop();
|
|
41
|
+
}
|
|
42
|
+
}, reject);
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
} catch (err) { reject(err); }
|
|
46
|
+
}, reject);
|
|
47
|
+
} catch (error) { reject(error); }
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
loop();
|
|
51
|
+
});
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
module.exports = {
|
|
56
|
+
toArray: createMethod(0),
|
|
57
|
+
forEach: createMethod(1),
|
|
58
|
+
every: createMethod(2),
|
|
59
|
+
some: createMethod(3),
|
|
60
|
+
find: createMethod(4)
|
|
61
|
+
};
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
var global = require('../internals/global');
|
|
2
|
+
var shared = require('../internals/shared-store');
|
|
3
|
+
var getPrototypeOf = require('../internals/object-get-prototype-of');
|
|
4
|
+
var has = require('../internals/has');
|
|
5
|
+
var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
|
|
6
|
+
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
7
|
+
var IS_PURE = require('../internals/is-pure');
|
|
8
|
+
|
|
9
|
+
var USE_FUNCTION_CONSTRUCTOR = 'USE_FUNCTION_CONSTRUCTOR';
|
|
10
|
+
var ASYNC_ITERATOR = wellKnownSymbol('asyncIterator');
|
|
11
|
+
var AsyncIterator = global.AsyncIterator;
|
|
12
|
+
var PassedAsyncIteratorPrototype = shared.AsyncIteratorPrototype;
|
|
13
|
+
var AsyncIteratorPrototype, prototype;
|
|
14
|
+
|
|
15
|
+
if (!IS_PURE) {
|
|
16
|
+
if (PassedAsyncIteratorPrototype) {
|
|
17
|
+
AsyncIteratorPrototype = PassedAsyncIteratorPrototype;
|
|
18
|
+
} else if (typeof AsyncIterator == 'function') {
|
|
19
|
+
AsyncIteratorPrototype = AsyncIterator.prototype;
|
|
20
|
+
} else if (shared[USE_FUNCTION_CONSTRUCTOR] || global[USE_FUNCTION_CONSTRUCTOR]) {
|
|
21
|
+
try {
|
|
22
|
+
// eslint-disable-next-line no-new-func
|
|
23
|
+
prototype = getPrototypeOf(getPrototypeOf(getPrototypeOf(Function('return async function*(){}()')())));
|
|
24
|
+
if (getPrototypeOf(prototype) === Object.prototype) AsyncIteratorPrototype = prototype;
|
|
25
|
+
} catch (error) { /* empty */ }
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
if (!AsyncIteratorPrototype) AsyncIteratorPrototype = {};
|
|
30
|
+
|
|
31
|
+
if (!has(AsyncIteratorPrototype, ASYNC_ITERATOR)) {
|
|
32
|
+
createNonEnumerableProperty(AsyncIteratorPrototype, ASYNC_ITERATOR, function () {
|
|
33
|
+
return this;
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
module.exports = AsyncIteratorPrototype;
|
package/internals/collection.js
CHANGED
|
@@ -3,7 +3,7 @@ var $ = require('./export');
|
|
|
3
3
|
var global = require('../internals/global');
|
|
4
4
|
var InternalMetadataModule = require('../internals/internal-metadata');
|
|
5
5
|
var fails = require('../internals/fails');
|
|
6
|
-
var
|
|
6
|
+
var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
|
|
7
7
|
var iterate = require('../internals/iterate');
|
|
8
8
|
var anInstance = require('../internals/an-instance');
|
|
9
9
|
var isObject = require('../internals/is-object');
|
|
@@ -42,12 +42,14 @@ module.exports = function (CONSTRUCTOR_NAME, wrapper, common, IS_MAP, IS_WEAK) {
|
|
|
42
42
|
|
|
43
43
|
forEach(['add', 'clear', 'delete', 'forEach', 'get', 'has', 'set', 'keys', 'values', 'entries'], function (KEY) {
|
|
44
44
|
var IS_ADDER = KEY == 'add' || KEY == 'set';
|
|
45
|
-
if (KEY in NativePrototype && !(IS_WEAK && KEY == 'clear'))
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
45
|
+
if (KEY in NativePrototype && !(IS_WEAK && KEY == 'clear')) {
|
|
46
|
+
createNonEnumerableProperty(Constructor.prototype, KEY, function (a, b) {
|
|
47
|
+
var collection = getInternalState(this).collection;
|
|
48
|
+
if (!IS_ADDER && IS_WEAK && !isObject(a)) return KEY == 'get' ? undefined : false;
|
|
49
|
+
var result = collection[KEY](a === 0 ? 0 : a, b);
|
|
50
|
+
return IS_ADDER ? this : result;
|
|
51
|
+
});
|
|
52
|
+
}
|
|
51
53
|
});
|
|
52
54
|
|
|
53
55
|
IS_WEAK || defineProperty(Constructor.prototype, 'size', {
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
var path = require('../internals/path');
|
|
3
|
+
var aFunction = require('../internals/a-function');
|
|
4
|
+
var anObject = require('../internals/an-object');
|
|
5
|
+
var create = require('../internals/object-create');
|
|
6
|
+
var createNonEnumerableProperty = require('../internals/create-non-enumerable-property');
|
|
7
|
+
var redefineAll = require('../internals/redefine-all');
|
|
8
|
+
var wellKnownSymbol = require('../internals/well-known-symbol');
|
|
9
|
+
var InternalStateModule = require('../internals/internal-state');
|
|
10
|
+
var getBuiltIn = require('../internals/get-built-in');
|
|
11
|
+
|
|
12
|
+
var Promise = getBuiltIn('Promise');
|
|
13
|
+
|
|
14
|
+
var setInternalState = InternalStateModule.set;
|
|
15
|
+
var getInternalState = InternalStateModule.get;
|
|
16
|
+
|
|
17
|
+
var TO_STRING_TAG = wellKnownSymbol('toStringTag');
|
|
18
|
+
|
|
19
|
+
var $return = function (value) {
|
|
20
|
+
var iterator = getInternalState(this).iterator;
|
|
21
|
+
var $$return = iterator['return'];
|
|
22
|
+
return $$return === undefined
|
|
23
|
+
? Promise.resolve({ done: true, value: value })
|
|
24
|
+
: anObject($$return.call(iterator, value));
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
var $throw = function (value) {
|
|
28
|
+
var iterator = getInternalState(this).iterator;
|
|
29
|
+
var $$throw = iterator['throw'];
|
|
30
|
+
return $$throw === undefined
|
|
31
|
+
? Promise.reject(value)
|
|
32
|
+
: $$throw.call(iterator, value);
|
|
33
|
+
};
|
|
34
|
+
|
|
35
|
+
module.exports = function (nextHandler, IS_ITERATOR) {
|
|
36
|
+
var AsyncIteratorProxy = function AsyncIterator(state) {
|
|
37
|
+
state.next = aFunction(state.iterator.next);
|
|
38
|
+
state.done = false;
|
|
39
|
+
setInternalState(this, state);
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
AsyncIteratorProxy.prototype = redefineAll(create(path.AsyncIterator.prototype), {
|
|
43
|
+
next: function next(arg) {
|
|
44
|
+
var state = getInternalState(this);
|
|
45
|
+
if (state.done) return Promise.resolve({ done: true, value: undefined });
|
|
46
|
+
try {
|
|
47
|
+
return Promise.resolve(anObject(nextHandler.call(state, arg, Promise)));
|
|
48
|
+
} catch (error) {
|
|
49
|
+
return Promise.reject(error);
|
|
50
|
+
}
|
|
51
|
+
},
|
|
52
|
+
'return': $return,
|
|
53
|
+
'throw': $throw
|
|
54
|
+
});
|
|
55
|
+
|
|
56
|
+
if (!IS_ITERATOR) {
|
|
57
|
+
createNonEnumerableProperty(AsyncIteratorProxy.prototype, TO_STRING_TAG, 'Generator');
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
return AsyncIteratorProxy;
|
|
61
|
+
};
|