core-js 3.26.0 → 3.27.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/actual/async-iterator/drop.js +8 -0
- package/actual/async-iterator/every.js +8 -0
- package/actual/async-iterator/filter.js +8 -0
- package/actual/async-iterator/find.js +8 -0
- package/actual/async-iterator/flat-map.js +8 -0
- package/actual/async-iterator/for-each.js +8 -0
- package/actual/async-iterator/from.js +11 -0
- package/actual/async-iterator/index.js +22 -0
- package/actual/async-iterator/map.js +8 -0
- package/actual/async-iterator/reduce.js +8 -0
- package/actual/async-iterator/some.js +8 -0
- package/actual/async-iterator/take.js +8 -0
- package/actual/async-iterator/to-array.js +8 -0
- package/actual/disposable-stack/constructor.js +7 -0
- package/actual/disposable-stack/index.js +7 -0
- package/actual/instance/is-well-formed.js +10 -0
- package/actual/instance/to-well-formed.js +10 -0
- package/actual/iterator/dispose.js +1 -0
- package/actual/iterator/drop.js +7 -0
- package/actual/iterator/every.js +7 -0
- package/actual/iterator/filter.js +7 -0
- package/actual/iterator/find.js +7 -0
- package/actual/iterator/flat-map.js +7 -0
- package/actual/iterator/for-each.js +7 -0
- package/actual/iterator/from.js +10 -0
- package/actual/iterator/index.js +24 -0
- package/actual/iterator/map.js +7 -0
- package/actual/iterator/reduce.js +7 -0
- package/actual/iterator/some.js +7 -0
- package/actual/iterator/take.js +7 -0
- package/actual/iterator/to-array.js +7 -0
- package/actual/iterator/to-async.js +8 -0
- package/actual/set/difference.js +5 -0
- package/actual/set/index.js +7 -0
- package/actual/set/intersection.js +5 -0
- package/actual/set/is-disjoint-from.js +5 -0
- package/actual/set/is-subset-of.js +5 -0
- package/actual/set/is-superset-of.js +5 -0
- package/actual/set/symmetric-difference.js +5 -0
- package/actual/set/union.js +5 -0
- package/actual/string/index.js +3 -0
- package/actual/string/is-well-formed.js +3 -0
- package/actual/string/to-well-formed.js +3 -0
- package/actual/string/virtual/index.js +3 -0
- package/actual/string/virtual/is-well-formed.js +3 -0
- package/actual/string/virtual/to-well-formed.js +3 -0
- package/actual/suppressed-error.js +5 -0
- package/actual/symbol/dispose.js +4 -0
- package/actual/symbol/index.js +2 -0
- package/es/number/constructor.js +2 -1
- package/features/async-disposable-stack/constructor.js +1 -0
- package/features/async-disposable-stack/index.js +1 -0
- package/features/async-iterator/async-dispose.js +1 -0
- package/features/disposable-stack/constructor.js +1 -0
- package/features/disposable-stack/index.js +1 -0
- package/features/iterator/dispose.js +1 -0
- package/features/string/dedent.js +1 -0
- package/features/suppressed-error.js +1 -0
- package/full/async-disposable-stack/constructor.js +8 -0
- package/full/async-disposable-stack/index.js +8 -0
- package/full/async-iterator/async-dispose.js +3 -0
- package/full/async-iterator/drop.js +2 -7
- package/full/async-iterator/every.js +2 -7
- package/full/async-iterator/filter.js +2 -7
- package/full/async-iterator/find.js +2 -7
- package/full/async-iterator/flat-map.js +2 -7
- package/full/async-iterator/for-each.js +2 -7
- package/full/async-iterator/from.js +2 -10
- package/full/async-iterator/index.js +3 -21
- package/full/async-iterator/indexed.js +1 -0
- package/full/async-iterator/map.js +2 -7
- package/full/async-iterator/reduce.js +2 -7
- package/full/async-iterator/some.js +2 -7
- package/full/async-iterator/take.js +2 -7
- package/full/async-iterator/to-array.js +2 -7
- package/full/disposable-stack/constructor.js +3 -0
- package/full/disposable-stack/index.js +3 -0
- package/full/index.js +13 -0
- package/full/instance/is-well-formed.js +2 -9
- package/full/instance/to-well-formed.js +2 -9
- package/full/iterator/dispose.js +3 -0
- package/full/iterator/drop.js +2 -6
- package/full/iterator/every.js +2 -6
- package/full/iterator/filter.js +2 -6
- package/full/iterator/find.js +2 -6
- package/full/iterator/flat-map.js +2 -6
- package/full/iterator/for-each.js +2 -6
- package/full/iterator/from.js +2 -9
- package/full/iterator/index.js +2 -22
- package/full/iterator/indexed.js +1 -0
- package/full/iterator/map.js +2 -6
- package/full/iterator/reduce.js +2 -6
- package/full/iterator/some.js +2 -6
- package/full/iterator/take.js +2 -6
- package/full/iterator/to-array.js +2 -6
- package/full/iterator/to-async.js +2 -7
- package/full/set/difference.js +1 -1
- package/full/set/intersection.js +1 -1
- package/full/set/is-disjoint-from.js +1 -1
- package/full/set/is-subset-of.js +1 -1
- package/full/set/is-superset-of.js +1 -1
- package/full/set/symmetric-difference.js +1 -1
- package/full/set/union.js +1 -1
- package/full/string/dedent.js +6 -0
- package/full/string/index.js +2 -3
- package/full/string/is-well-formed.js +2 -2
- package/full/string/to-well-formed.js +2 -2
- package/full/string/virtual/index.js +0 -2
- package/full/string/virtual/is-well-formed.js +2 -2
- package/full/string/virtual/to-well-formed.js +2 -2
- package/full/suppressed-error.js +3 -0
- package/full/symbol/dispose.js +2 -3
- package/full/symbol/index.js +0 -1
- package/internals/a-map.js +7 -0
- package/internals/a-set.js +7 -0
- package/internals/a-weak-map.js +7 -0
- package/internals/a-weak-set.js +7 -0
- package/internals/array-group-to-map.js +5 -6
- package/internals/array-unique-by.js +7 -9
- package/internals/async-iterator-indexed.js +7 -23
- package/internals/async-iterator-map.js +55 -0
- package/internals/caller.js +7 -0
- package/internals/classof-raw.js +3 -3
- package/internals/disposable-stack-helpers.js +40 -0
- package/internals/document-all.js +1 -0
- package/internals/engine-is-bun.js +2 -0
- package/internals/fix-regexp-well-known-symbol-logic.js +1 -1
- package/internals/function-bind-context.js +1 -1
- package/internals/function-uncurry-this-clause.js +9 -0
- package/internals/function-uncurry-this.js +9 -7
- package/internals/get-async-iterator-flattenable.js +3 -2
- package/internals/get-iterator-flattenable.js +3 -3
- package/internals/get-set-record.js +38 -0
- package/internals/iterate-simple.js +10 -0
- package/internals/iterator-indexed.js +7 -12
- package/internals/iterator-map.js +22 -0
- package/internals/map-helpers.js +14 -0
- package/internals/map-iterate.js +15 -0
- package/internals/map-upsert.js +1 -1
- package/internals/schedulers-fix.js +20 -20
- package/internals/set-clone.js +13 -0
- package/internals/set-difference.js +26 -0
- package/internals/set-helpers.js +15 -0
- package/internals/set-intersection.js +46 -0
- package/internals/set-is-disjoint-from.js +22 -0
- package/internals/set-is-subset-of.js +16 -0
- package/internals/set-is-superset-of.js +17 -0
- package/internals/set-iterate.js +13 -0
- package/internals/set-method-accept-set-like.js +27 -0
- package/internals/set-size.js +8 -0
- package/internals/set-symmetric-difference.js +23 -0
- package/internals/set-union.js +18 -0
- package/internals/shared.js +2 -2
- package/internals/string-cooked.js +23 -0
- package/internals/string-parse.js +118 -0
- package/internals/to-set-like.js +19 -0
- package/internals/weak-map-helpers.js +13 -0
- package/internals/weak-set-helpers.js +12 -0
- package/modules/es.array-buffer.slice.js +1 -1
- package/modules/es.array.index-of.js +1 -1
- package/modules/es.number.constructor.js +34 -18
- package/modules/es.string.ends-with.js +1 -1
- package/modules/es.string.match-all.js +1 -1
- package/modules/es.string.starts-with.js +1 -1
- package/modules/es.typed-array.sort.js +1 -1
- package/modules/esnext.array.from-async.js +1 -1
- package/modules/esnext.async-disposable-stack.constructor.js +137 -0
- package/modules/esnext.async-iterator.as-indexed-pairs.js +2 -1
- package/modules/esnext.async-iterator.async-dispose.js +26 -0
- package/modules/esnext.async-iterator.constructor.js +2 -1
- package/modules/esnext.async-iterator.drop.js +3 -2
- package/modules/esnext.async-iterator.every.js +5 -4
- package/modules/esnext.async-iterator.filter.js +7 -6
- package/modules/esnext.async-iterator.find.js +5 -4
- package/modules/esnext.async-iterator.flat-map.js +3 -2
- package/modules/esnext.async-iterator.for-each.js +3 -2
- package/modules/esnext.async-iterator.from.js +5 -3
- package/modules/esnext.async-iterator.indexed.js +2 -1
- package/modules/esnext.async-iterator.map.js +5 -53
- package/modules/esnext.async-iterator.reduce.js +3 -2
- package/modules/esnext.async-iterator.some.js +5 -4
- package/modules/esnext.async-iterator.take.js +3 -2
- package/modules/esnext.async-iterator.to-array.js +3 -2
- package/modules/esnext.disposable-stack.constructor.js +121 -0
- package/modules/esnext.function.un-this.js +2 -2
- package/modules/esnext.iterator.as-indexed-pairs.js +2 -1
- package/modules/esnext.iterator.constructor.js +2 -1
- package/modules/esnext.iterator.dispose.js +17 -0
- package/modules/esnext.iterator.drop.js +3 -2
- package/modules/esnext.iterator.every.js +6 -5
- package/modules/esnext.iterator.filter.js +7 -6
- package/modules/esnext.iterator.find.js +6 -5
- package/modules/esnext.iterator.flat-map.js +3 -2
- package/modules/esnext.iterator.for-each.js +3 -2
- package/modules/esnext.iterator.from.js +5 -3
- package/modules/esnext.iterator.indexed.js +2 -1
- package/modules/esnext.iterator.map.js +5 -21
- package/modules/esnext.iterator.reduce.js +3 -2
- package/modules/esnext.iterator.some.js +6 -5
- package/modules/esnext.iterator.take.js +3 -2
- package/modules/esnext.iterator.to-array.js +3 -2
- package/modules/esnext.iterator.to-async.js +3 -2
- package/modules/esnext.map.delete-all.js +11 -2
- package/modules/esnext.map.emplace.js +21 -3
- package/modules/esnext.map.every.js +6 -8
- package/modules/esnext.map.filter.js +11 -14
- package/modules/esnext.map.find-key.js +7 -8
- package/modules/esnext.map.find.js +7 -8
- package/modules/esnext.map.group-by.js +6 -5
- package/modules/esnext.map.includes.js +5 -6
- package/modules/esnext.map.key-by.js +4 -1
- package/modules/esnext.map.key-of.js +6 -6
- package/modules/esnext.map.map-keys.js +11 -14
- package/modules/esnext.map.map-values.js +11 -14
- package/modules/esnext.map.merge.js +6 -5
- package/modules/esnext.map.reduce.js +5 -7
- package/modules/esnext.map.some.js +7 -9
- package/modules/esnext.map.update.js +10 -10
- package/modules/esnext.set.add-all.js +8 -2
- package/modules/esnext.set.delete-all.js +11 -2
- package/modules/esnext.set.difference.js +5 -13
- package/modules/esnext.set.difference.v2.js +9 -0
- package/modules/esnext.set.every.js +6 -8
- package/modules/esnext.set.filter.js +11 -14
- package/modules/esnext.set.find.js +7 -8
- package/modules/esnext.set.intersection.js +5 -14
- package/modules/esnext.set.intersection.v2.js +9 -0
- package/modules/esnext.set.is-disjoint-from.js +6 -10
- package/modules/esnext.set.is-disjoint-from.v2.js +9 -0
- package/modules/esnext.set.is-subset-of.js +6 -18
- package/modules/esnext.set.is-subset-of.v2.js +9 -0
- package/modules/esnext.set.is-superset-of.js +6 -10
- package/modules/esnext.set.is-superset-of.v2.js +9 -0
- package/modules/esnext.set.join.js +9 -9
- package/modules/esnext.set.map.js +11 -14
- package/modules/esnext.set.reduce.js +5 -7
- package/modules/esnext.set.some.js +6 -8
- package/modules/esnext.set.symmetric-difference.js +5 -14
- package/modules/esnext.set.symmetric-difference.v2.js +9 -0
- package/modules/esnext.set.union.js +6 -10
- package/modules/esnext.set.union.v2.js +9 -0
- package/modules/esnext.string.cooked.js +2 -23
- package/modules/esnext.string.dedent.js +152 -0
- package/modules/esnext.string.is-well-formed.js +1 -1
- package/modules/esnext.string.to-well-formed.js +1 -1
- package/modules/esnext.suppressed-error.constructor.js +50 -0
- package/modules/esnext.symbol.async-dispose.js +1 -1
- package/modules/esnext.symbol.dispose.js +1 -1
- package/modules/esnext.typed-array.unique-by.js +4 -2
- package/modules/esnext.weak-map.delete-all.js +11 -2
- package/modules/esnext.weak-map.emplace.js +20 -2
- package/modules/esnext.weak-set.add-all.js +8 -2
- package/modules/esnext.weak-set.delete-all.js +11 -2
- package/modules/web.set-immediate.js +5 -1
- package/modules/web.set-interval.js +4 -2
- package/modules/web.set-timeout.js +4 -2
- package/modules/web.structured-clone.js +10 -8
- package/package.json +1 -1
- package/proposals/async-explicit-resource-management.js +5 -0
- package/proposals/explicit-resource-management.js +5 -0
- package/proposals/iterator-helpers-stage-3.js +28 -0
- package/proposals/iterator-helpers.js +2 -29
- package/proposals/set-methods-v2.js +8 -0
- package/proposals/set-methods.js +8 -0
- package/proposals/string-dedent.js +2 -0
- package/proposals/using-statement.js +2 -1
- package/stage/2.js +5 -4
- package/stage/3.js +4 -0
- package/internals/collection-add-all.js +0 -14
- package/internals/collection-delete-all.js +0 -17
- package/internals/function-uncurry-this-raw.js +0 -11
- package/internals/get-map-iterator.js +0 -6
- package/internals/get-set-iterator.js +0 -6
- package/internals/map-emplace.js +0 -24
|
@@ -1,9 +1,18 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
|
-
var
|
|
3
|
+
var aSet = require('../internals/a-set');
|
|
4
|
+
var remove = require('../internals/set-helpers').remove;
|
|
4
5
|
|
|
5
6
|
// `Set.prototype.deleteAll` method
|
|
6
7
|
// https://github.com/tc39/proposal-collection-methods
|
|
7
8
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
8
|
-
deleteAll: deleteAll
|
|
9
|
+
deleteAll: function deleteAll(/* ...elements */) {
|
|
10
|
+
var collection = aSet(this);
|
|
11
|
+
var allDeleted = true;
|
|
12
|
+
var wasDeleted;
|
|
13
|
+
for (var k = 0, len = arguments.length; k < len; k++) {
|
|
14
|
+
wasDeleted = remove(collection, arguments[k]);
|
|
15
|
+
allDeleted = allDeleted && wasDeleted;
|
|
16
|
+
} return !!allDeleted;
|
|
17
|
+
}
|
|
9
18
|
});
|
|
@@ -1,22 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
|
-
var getBuiltIn = require('../internals/get-built-in');
|
|
4
3
|
var call = require('../internals/function-call');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var speciesConstructor = require('../internals/species-constructor');
|
|
8
|
-
var iterate = require('../internals/iterate');
|
|
4
|
+
var toSetLike = require('../internals/to-set-like');
|
|
5
|
+
var $difference = require('../internals/set-difference');
|
|
9
6
|
|
|
10
7
|
// `Set.prototype.difference` method
|
|
11
8
|
// https://github.com/tc39/proposal-set-methods
|
|
9
|
+
// TODO: Obsolete version, remove from `core-js@4`
|
|
12
10
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
13
|
-
difference: function difference(
|
|
14
|
-
|
|
15
|
-
var newSet = new (speciesConstructor(set, getBuiltIn('Set')))(set);
|
|
16
|
-
var remover = aCallable(newSet['delete']);
|
|
17
|
-
iterate(iterable, function (value) {
|
|
18
|
-
call(remover, newSet, value);
|
|
19
|
-
});
|
|
20
|
-
return newSet;
|
|
11
|
+
difference: function difference(other) {
|
|
12
|
+
return call($difference, this, toSetLike(other));
|
|
21
13
|
}
|
|
22
14
|
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
var $ = require('../internals/export');
|
|
2
|
+
var difference = require('../internals/set-difference');
|
|
3
|
+
var setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');
|
|
4
|
+
|
|
5
|
+
// `Set.prototype.difference` method
|
|
6
|
+
// https://github.com/tc39/proposal-set-methods
|
|
7
|
+
$({ target: 'Set', proto: true, real: true, forced: !setMethodAcceptSetLike('difference') }, {
|
|
8
|
+
difference: difference
|
|
9
|
+
});
|
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
|
-
var anObject = require('../internals/an-object');
|
|
4
3
|
var bind = require('../internals/function-bind-context');
|
|
5
|
-
var
|
|
6
|
-
var iterate = require('../internals/iterate');
|
|
4
|
+
var aSet = require('../internals/a-set');
|
|
5
|
+
var iterate = require('../internals/set-iterate');
|
|
7
6
|
|
|
8
7
|
// `Set.prototype.every` method
|
|
9
8
|
// https://github.com/tc39/proposal-collection-methods
|
|
10
9
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
11
10
|
every: function every(callbackfn /* , thisArg */) {
|
|
12
|
-
var set =
|
|
13
|
-
var iterator = getSetIterator(set);
|
|
11
|
+
var set = aSet(this);
|
|
14
12
|
var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
15
|
-
return
|
|
16
|
-
if (!boundFunction(value, value, set)) return
|
|
17
|
-
},
|
|
13
|
+
return iterate(set, function (value) {
|
|
14
|
+
if (!boundFunction(value, value, set)) return false;
|
|
15
|
+
}, true) !== false;
|
|
18
16
|
}
|
|
19
17
|
});
|
|
@@ -1,26 +1,23 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
|
-
var getBuiltIn = require('../internals/get-built-in');
|
|
4
|
-
var call = require('../internals/function-call');
|
|
5
|
-
var aCallable = require('../internals/a-callable');
|
|
6
|
-
var anObject = require('../internals/an-object');
|
|
7
3
|
var bind = require('../internals/function-bind-context');
|
|
8
|
-
var
|
|
9
|
-
var
|
|
10
|
-
var iterate = require('../internals/iterate');
|
|
4
|
+
var aSet = require('../internals/a-set');
|
|
5
|
+
var SetHelpers = require('../internals/set-helpers');
|
|
6
|
+
var iterate = require('../internals/set-iterate');
|
|
7
|
+
|
|
8
|
+
var Set = SetHelpers.Set;
|
|
9
|
+
var add = SetHelpers.add;
|
|
11
10
|
|
|
12
11
|
// `Set.prototype.filter` method
|
|
13
12
|
// https://github.com/tc39/proposal-collection-methods
|
|
14
13
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
15
14
|
filter: function filter(callbackfn /* , thisArg */) {
|
|
16
|
-
var set =
|
|
17
|
-
var iterator = getSetIterator(set);
|
|
15
|
+
var set = aSet(this);
|
|
18
16
|
var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
19
|
-
var newSet = new
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}, { IS_ITERATOR: true });
|
|
17
|
+
var newSet = new Set();
|
|
18
|
+
iterate(set, function (value) {
|
|
19
|
+
if (boundFunction(value, value, set)) add(newSet, value);
|
|
20
|
+
});
|
|
24
21
|
return newSet;
|
|
25
22
|
}
|
|
26
23
|
});
|
|
@@ -1,19 +1,18 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
|
-
var anObject = require('../internals/an-object');
|
|
4
3
|
var bind = require('../internals/function-bind-context');
|
|
5
|
-
var
|
|
6
|
-
var iterate = require('../internals/iterate');
|
|
4
|
+
var aSet = require('../internals/a-set');
|
|
5
|
+
var iterate = require('../internals/set-iterate');
|
|
7
6
|
|
|
8
7
|
// `Set.prototype.find` method
|
|
9
8
|
// https://github.com/tc39/proposal-collection-methods
|
|
10
9
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
11
10
|
find: function find(callbackfn /* , thisArg */) {
|
|
12
|
-
var set =
|
|
13
|
-
var iterator = getSetIterator(set);
|
|
11
|
+
var set = aSet(this);
|
|
14
12
|
var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
15
|
-
|
|
16
|
-
if (boundFunction(value, value, set)) return
|
|
17
|
-
},
|
|
13
|
+
var result = iterate(set, function (value) {
|
|
14
|
+
if (boundFunction(value, value, set)) return { value: value };
|
|
15
|
+
}, true);
|
|
16
|
+
return result && result.value;
|
|
18
17
|
}
|
|
19
18
|
});
|
|
@@ -1,23 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
|
-
var getBuiltIn = require('../internals/get-built-in');
|
|
4
3
|
var call = require('../internals/function-call');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var speciesConstructor = require('../internals/species-constructor');
|
|
8
|
-
var iterate = require('../internals/iterate');
|
|
4
|
+
var toSetLike = require('../internals/to-set-like');
|
|
5
|
+
var $intersection = require('../internals/set-intersection');
|
|
9
6
|
|
|
10
7
|
// `Set.prototype.intersection` method
|
|
11
8
|
// https://github.com/tc39/proposal-set-methods
|
|
9
|
+
// TODO: Obsolete version, remove from `core-js@4`
|
|
12
10
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
13
|
-
intersection: function intersection(
|
|
14
|
-
|
|
15
|
-
var newSet = new (speciesConstructor(set, getBuiltIn('Set')))();
|
|
16
|
-
var hasCheck = aCallable(set.has);
|
|
17
|
-
var adder = aCallable(newSet.add);
|
|
18
|
-
iterate(iterable, function (value) {
|
|
19
|
-
if (call(hasCheck, set, value)) call(adder, newSet, value);
|
|
20
|
-
});
|
|
21
|
-
return newSet;
|
|
11
|
+
intersection: function intersection(other) {
|
|
12
|
+
return call($intersection, this, toSetLike(other));
|
|
22
13
|
}
|
|
23
14
|
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
var $ = require('../internals/export');
|
|
2
|
+
var intersection = require('../internals/set-intersection');
|
|
3
|
+
var setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');
|
|
4
|
+
|
|
5
|
+
// `Set.prototype.intersection` method
|
|
6
|
+
// https://github.com/tc39/proposal-set-methods
|
|
7
|
+
$({ target: 'Set', proto: true, real: true, forced: !setMethodAcceptSetLike('intersection') }, {
|
|
8
|
+
intersection: intersection
|
|
9
|
+
});
|
|
@@ -1,18 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
3
|
var call = require('../internals/function-call');
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
var iterate = require('../internals/iterate');
|
|
4
|
+
var toSetLike = require('../internals/to-set-like');
|
|
5
|
+
var $isDisjointFrom = require('../internals/set-is-disjoint-from');
|
|
7
6
|
|
|
8
7
|
// `Set.prototype.isDisjointFrom` method
|
|
9
|
-
// https://
|
|
8
|
+
// https://github.com/tc39/proposal-set-methods
|
|
9
|
+
// TODO: Obsolete version, remove from `core-js@4`
|
|
10
10
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
11
|
-
isDisjointFrom: function isDisjointFrom(
|
|
12
|
-
|
|
13
|
-
var hasCheck = aCallable(set.has);
|
|
14
|
-
return !iterate(iterable, function (value, stop) {
|
|
15
|
-
if (call(hasCheck, set, value) === true) return stop();
|
|
16
|
-
}, { INTERRUPTED: true }).stopped;
|
|
11
|
+
isDisjointFrom: function isDisjointFrom(other) {
|
|
12
|
+
return call($isDisjointFrom, this, toSetLike(other));
|
|
17
13
|
}
|
|
18
14
|
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
var $ = require('../internals/export');
|
|
2
|
+
var isDisjointFrom = require('../internals/set-is-disjoint-from');
|
|
3
|
+
var setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');
|
|
4
|
+
|
|
5
|
+
// `Set.prototype.isDisjointFrom` method
|
|
6
|
+
// https://github.com/tc39/proposal-set-methods
|
|
7
|
+
$({ target: 'Set', proto: true, real: true, forced: !setMethodAcceptSetLike('isDisjointFrom') }, {
|
|
8
|
+
isDisjointFrom: isDisjointFrom
|
|
9
|
+
});
|
|
@@ -1,26 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
|
-
var getBuiltIn = require('../internals/get-built-in');
|
|
4
3
|
var call = require('../internals/function-call');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var anObject = require('../internals/an-object');
|
|
8
|
-
var getIterator = require('../internals/get-iterator');
|
|
9
|
-
var iterate = require('../internals/iterate');
|
|
4
|
+
var toSetLike = require('../internals/to-set-like');
|
|
5
|
+
var $isSubsetOf = require('../internals/set-is-subset-of');
|
|
10
6
|
|
|
11
7
|
// `Set.prototype.isSubsetOf` method
|
|
12
|
-
// https://
|
|
8
|
+
// https://github.com/tc39/proposal-set-methods
|
|
9
|
+
// TODO: Obsolete version, remove from `core-js@4`
|
|
13
10
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
14
|
-
isSubsetOf: function isSubsetOf(
|
|
15
|
-
|
|
16
|
-
var otherSet = anObject(iterable);
|
|
17
|
-
var hasCheck = otherSet.has;
|
|
18
|
-
if (!isCallable(hasCheck)) {
|
|
19
|
-
otherSet = new (getBuiltIn('Set'))(iterable);
|
|
20
|
-
hasCheck = aCallable(otherSet.has);
|
|
21
|
-
}
|
|
22
|
-
return !iterate(iterator, function (value, stop) {
|
|
23
|
-
if (call(hasCheck, otherSet, value) === false) return stop();
|
|
24
|
-
}, { IS_ITERATOR: true, INTERRUPTED: true }).stopped;
|
|
11
|
+
isSubsetOf: function isSubsetOf(other) {
|
|
12
|
+
return call($isSubsetOf, this, toSetLike(other));
|
|
25
13
|
}
|
|
26
14
|
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
var $ = require('../internals/export');
|
|
2
|
+
var isSubsetOf = require('../internals/set-is-subset-of');
|
|
3
|
+
var setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');
|
|
4
|
+
|
|
5
|
+
// `Set.prototype.isSubsetOf` method
|
|
6
|
+
// https://github.com/tc39/proposal-set-methods
|
|
7
|
+
$({ target: 'Set', proto: true, real: true, forced: !setMethodAcceptSetLike('isSubsetOf') }, {
|
|
8
|
+
isSubsetOf: isSubsetOf
|
|
9
|
+
});
|
|
@@ -1,18 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
3
|
var call = require('../internals/function-call');
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
var iterate = require('../internals/iterate');
|
|
4
|
+
var toSetLike = require('../internals/to-set-like');
|
|
5
|
+
var $isSupersetOf = require('../internals/set-is-superset-of');
|
|
7
6
|
|
|
8
7
|
// `Set.prototype.isSupersetOf` method
|
|
9
|
-
// https://
|
|
8
|
+
// https://github.com/tc39/proposal-set-methods
|
|
9
|
+
// TODO: Obsolete version, remove from `core-js@4`
|
|
10
10
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
11
|
-
isSupersetOf: function isSupersetOf(
|
|
12
|
-
|
|
13
|
-
var hasCheck = aCallable(set.has);
|
|
14
|
-
return !iterate(iterable, function (value, stop) {
|
|
15
|
-
if (call(hasCheck, set, value) === false) return stop();
|
|
16
|
-
}, { INTERRUPTED: true }).stopped;
|
|
11
|
+
isSupersetOf: function isSupersetOf(other) {
|
|
12
|
+
return call($isSupersetOf, this, toSetLike(other));
|
|
17
13
|
}
|
|
18
14
|
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
var $ = require('../internals/export');
|
|
2
|
+
var isSupersetOf = require('../internals/set-is-superset-of');
|
|
3
|
+
var setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');
|
|
4
|
+
|
|
5
|
+
// `Set.prototype.isSupersetOf` method
|
|
6
|
+
// https://github.com/tc39/proposal-set-methods
|
|
7
|
+
$({ target: 'Set', proto: true, real: true, forced: !setMethodAcceptSetLike('isSupersetOf') }, {
|
|
8
|
+
isSupersetOf: isSupersetOf
|
|
9
|
+
});
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
3
|
var uncurryThis = require('../internals/function-uncurry-this');
|
|
4
|
-
var
|
|
4
|
+
var aSet = require('../internals/a-set');
|
|
5
|
+
var iterate = require('../internals/set-iterate');
|
|
5
6
|
var toString = require('../internals/to-string');
|
|
6
|
-
var getSetIterator = require('../internals/get-set-iterator');
|
|
7
|
-
var iterate = require('../internals/iterate');
|
|
8
7
|
|
|
9
8
|
var arrayJoin = uncurryThis([].join);
|
|
10
|
-
var push = [].push;
|
|
9
|
+
var push = uncurryThis([].push);
|
|
11
10
|
|
|
12
11
|
// `Set.prototype.join` method
|
|
13
12
|
// https://github.com/tc39/proposal-collection-methods
|
|
14
13
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
15
14
|
join: function join(separator) {
|
|
16
|
-
var set =
|
|
17
|
-
var iterator = getSetIterator(set);
|
|
15
|
+
var set = aSet(this);
|
|
18
16
|
var sep = separator === undefined ? ',' : toString(separator);
|
|
19
|
-
var
|
|
20
|
-
iterate(
|
|
21
|
-
|
|
17
|
+
var array = [];
|
|
18
|
+
iterate(set, function (value) {
|
|
19
|
+
push(array, value);
|
|
20
|
+
});
|
|
21
|
+
return arrayJoin(array, sep);
|
|
22
22
|
}
|
|
23
23
|
});
|
|
@@ -1,26 +1,23 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
|
-
var getBuiltIn = require('../internals/get-built-in');
|
|
4
3
|
var bind = require('../internals/function-bind-context');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var
|
|
8
|
-
|
|
9
|
-
var
|
|
10
|
-
var
|
|
4
|
+
var aSet = require('../internals/a-set');
|
|
5
|
+
var SetHelpers = require('../internals/set-helpers');
|
|
6
|
+
var iterate = require('../internals/set-iterate');
|
|
7
|
+
|
|
8
|
+
var Set = SetHelpers.Set;
|
|
9
|
+
var add = SetHelpers.add;
|
|
11
10
|
|
|
12
11
|
// `Set.prototype.map` method
|
|
13
12
|
// https://github.com/tc39/proposal-collection-methods
|
|
14
13
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
15
14
|
map: function map(callbackfn /* , thisArg */) {
|
|
16
|
-
var set =
|
|
17
|
-
var iterator = getSetIterator(set);
|
|
15
|
+
var set = aSet(this);
|
|
18
16
|
var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
19
|
-
var newSet = new
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
}, { IS_ITERATOR: true });
|
|
17
|
+
var newSet = new Set();
|
|
18
|
+
iterate(set, function (value) {
|
|
19
|
+
add(newSet, boundFunction(value, value, set));
|
|
20
|
+
});
|
|
24
21
|
return newSet;
|
|
25
22
|
}
|
|
26
23
|
});
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
3
|
var aCallable = require('../internals/a-callable');
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
var iterate = require('../internals/iterate');
|
|
4
|
+
var aSet = require('../internals/a-set');
|
|
5
|
+
var iterate = require('../internals/set-iterate');
|
|
7
6
|
|
|
8
7
|
var $TypeError = TypeError;
|
|
9
8
|
|
|
@@ -11,19 +10,18 @@ var $TypeError = TypeError;
|
|
|
11
10
|
// https://github.com/tc39/proposal-collection-methods
|
|
12
11
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
13
12
|
reduce: function reduce(callbackfn /* , initialValue */) {
|
|
14
|
-
var set =
|
|
15
|
-
var iterator = getSetIterator(set);
|
|
13
|
+
var set = aSet(this);
|
|
16
14
|
var noInitial = arguments.length < 2;
|
|
17
15
|
var accumulator = noInitial ? undefined : arguments[1];
|
|
18
16
|
aCallable(callbackfn);
|
|
19
|
-
iterate(
|
|
17
|
+
iterate(set, function (value) {
|
|
20
18
|
if (noInitial) {
|
|
21
19
|
noInitial = false;
|
|
22
20
|
accumulator = value;
|
|
23
21
|
} else {
|
|
24
22
|
accumulator = callbackfn(accumulator, value, value, set);
|
|
25
23
|
}
|
|
26
|
-
}
|
|
24
|
+
});
|
|
27
25
|
if (noInitial) throw $TypeError('Reduce of empty set with no initial value');
|
|
28
26
|
return accumulator;
|
|
29
27
|
}
|
|
@@ -1,19 +1,17 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
|
-
var anObject = require('../internals/an-object');
|
|
4
3
|
var bind = require('../internals/function-bind-context');
|
|
5
|
-
var
|
|
6
|
-
var iterate = require('../internals/iterate');
|
|
4
|
+
var aSet = require('../internals/a-set');
|
|
5
|
+
var iterate = require('../internals/set-iterate');
|
|
7
6
|
|
|
8
7
|
// `Set.prototype.some` method
|
|
9
8
|
// https://github.com/tc39/proposal-collection-methods
|
|
10
9
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
11
10
|
some: function some(callbackfn /* , thisArg */) {
|
|
12
|
-
var set =
|
|
13
|
-
var iterator = getSetIterator(set);
|
|
11
|
+
var set = aSet(this);
|
|
14
12
|
var boundFunction = bind(callbackfn, arguments.length > 1 ? arguments[1] : undefined);
|
|
15
|
-
return iterate(
|
|
16
|
-
if (boundFunction(value, value, set)) return
|
|
17
|
-
},
|
|
13
|
+
return iterate(set, function (value) {
|
|
14
|
+
if (boundFunction(value, value, set)) return true;
|
|
15
|
+
}, true) === true;
|
|
18
16
|
}
|
|
19
17
|
});
|
|
@@ -1,23 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
|
-
var getBuiltIn = require('../internals/get-built-in');
|
|
4
3
|
var call = require('../internals/function-call');
|
|
5
|
-
var
|
|
6
|
-
var
|
|
7
|
-
var speciesConstructor = require('../internals/species-constructor');
|
|
8
|
-
var iterate = require('../internals/iterate');
|
|
4
|
+
var toSetLike = require('../internals/to-set-like');
|
|
5
|
+
var $symmetricDifference = require('../internals/set-symmetric-difference');
|
|
9
6
|
|
|
10
7
|
// `Set.prototype.symmetricDifference` method
|
|
11
8
|
// https://github.com/tc39/proposal-set-methods
|
|
9
|
+
// TODO: Obsolete version, remove from `core-js@4`
|
|
12
10
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
13
|
-
symmetricDifference: function symmetricDifference(
|
|
14
|
-
|
|
15
|
-
var newSet = new (speciesConstructor(set, getBuiltIn('Set')))(set);
|
|
16
|
-
var remover = aCallable(newSet['delete']);
|
|
17
|
-
var adder = aCallable(newSet.add);
|
|
18
|
-
iterate(iterable, function (value) {
|
|
19
|
-
call(remover, newSet, value) || call(adder, newSet, value);
|
|
20
|
-
});
|
|
21
|
-
return newSet;
|
|
11
|
+
symmetricDifference: function symmetricDifference(other) {
|
|
12
|
+
return call($symmetricDifference, this, toSetLike(other));
|
|
22
13
|
}
|
|
23
14
|
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
var $ = require('../internals/export');
|
|
2
|
+
var symmetricDifference = require('../internals/set-symmetric-difference');
|
|
3
|
+
var setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');
|
|
4
|
+
|
|
5
|
+
// `Set.prototype.symmetricDifference` method
|
|
6
|
+
// https://github.com/tc39/proposal-set-methods
|
|
7
|
+
$({ target: 'Set', proto: true, real: true, forced: !setMethodAcceptSetLike('symmetricDifference') }, {
|
|
8
|
+
symmetricDifference: symmetricDifference
|
|
9
|
+
});
|
|
@@ -1,18 +1,14 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
var $ = require('../internals/export');
|
|
3
|
-
var
|
|
4
|
-
var
|
|
5
|
-
var
|
|
6
|
-
var speciesConstructor = require('../internals/species-constructor');
|
|
7
|
-
var iterate = require('../internals/iterate');
|
|
3
|
+
var call = require('../internals/function-call');
|
|
4
|
+
var toSetLike = require('../internals/to-set-like');
|
|
5
|
+
var $union = require('../internals/set-union');
|
|
8
6
|
|
|
9
7
|
// `Set.prototype.union` method
|
|
10
8
|
// https://github.com/tc39/proposal-set-methods
|
|
9
|
+
// TODO: Obsolete version, remove from `core-js@4`
|
|
11
10
|
$({ target: 'Set', proto: true, real: true, forced: true }, {
|
|
12
|
-
union: function union(
|
|
13
|
-
|
|
14
|
-
var newSet = new (speciesConstructor(set, getBuiltIn('Set')))(set);
|
|
15
|
-
iterate(iterable, aCallable(newSet.add), { that: newSet });
|
|
16
|
-
return newSet;
|
|
11
|
+
union: function union(other) {
|
|
12
|
+
return call($union, this, toSetLike(other));
|
|
17
13
|
}
|
|
18
14
|
});
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
var $ = require('../internals/export');
|
|
2
|
+
var union = require('../internals/set-union');
|
|
3
|
+
var setMethodAcceptSetLike = require('../internals/set-method-accept-set-like');
|
|
4
|
+
|
|
5
|
+
// `Set.prototype.union` method
|
|
6
|
+
// https://github.com/tc39/proposal-set-methods
|
|
7
|
+
$({ target: 'Set', proto: true, real: true, forced: !setMethodAcceptSetLike('union') }, {
|
|
8
|
+
union: union
|
|
9
|
+
});
|
|
@@ -1,29 +1,8 @@
|
|
|
1
1
|
var $ = require('../internals/export');
|
|
2
|
-
var
|
|
3
|
-
var toIndexedObject = require('../internals/to-indexed-object');
|
|
4
|
-
var toString = require('../internals/to-string');
|
|
5
|
-
var lengthOfArrayLike = require('../internals/length-of-array-like');
|
|
6
|
-
|
|
7
|
-
var $TypeError = TypeError;
|
|
8
|
-
var ArrayPrototype = Array.prototype;
|
|
9
|
-
var push = uncurryThis(ArrayPrototype.push);
|
|
10
|
-
var join = uncurryThis(ArrayPrototype.join);
|
|
2
|
+
var cooked = require('../internals/string-cooked');
|
|
11
3
|
|
|
12
4
|
// `String.cooked` method
|
|
13
5
|
// https://github.com/tc39/proposal-string-cooked
|
|
14
6
|
$({ target: 'String', stat: true, forced: true }, {
|
|
15
|
-
cooked:
|
|
16
|
-
var cookedTemplate = toIndexedObject(template);
|
|
17
|
-
var literalSegments = lengthOfArrayLike(cookedTemplate);
|
|
18
|
-
var argumentsLength = arguments.length;
|
|
19
|
-
var elements = [];
|
|
20
|
-
var i = 0;
|
|
21
|
-
while (literalSegments > i) {
|
|
22
|
-
var nextVal = cookedTemplate[i++];
|
|
23
|
-
if (nextVal === undefined) throw $TypeError('Incorrect template');
|
|
24
|
-
push(elements, toString(nextVal));
|
|
25
|
-
if (i === literalSegments) return join(elements, '');
|
|
26
|
-
if (i < argumentsLength) push(elements, toString(arguments[i]));
|
|
27
|
-
}
|
|
28
|
-
}
|
|
7
|
+
cooked: cooked
|
|
29
8
|
});
|