core-js-compat 3.24.0 → 3.25.1

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/README.md CHANGED
@@ -1,5 +1,11 @@
1
1
  ![logo](https://user-images.githubusercontent.com/2213682/146607186-8e13ddef-26a4-4ebf-befd-5aac9d77c090.png)
2
2
 
3
+ <div align="center">
4
+
5
+ [![fundraising](https://opencollective.com/core-js/all/badge.svg?label=fundraising)](https://opencollective.com/core-js) [![PRs welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/zloirock/core-js/blob/master/CONTRIBUTING.md) [![version](https://img.shields.io/npm/v/core-js-compat.svg)](https://www.npmjs.com/package/core-js-compat) [![tests](https://github.com/zloirock/core-js/workflows/tests/badge.svg)](https://github.com/zloirock/core-js/actions) [![eslint](https://github.com/zloirock/core-js/workflows/eslint/badge.svg)](https://github.com/zloirock/core-js/actions)
6
+
7
+ </div>
8
+
3
9
  [`core-js-compat` package](https://github.com/zloirock/core-js/tree/master/packages/core-js-compat) contains data about the necessity of [`core-js`](https://github.com/zloirock/core-js) modules and API for getting a list of required core-js modules by browserslist query.
4
10
 
5
11
  ```js
@@ -18,7 +24,7 @@ const {
18
24
  exclude: [ // optional list / filter of modules to exclude, the signature is similar to `modules` option
19
25
  'web.atob',
20
26
  ],
21
- version: '3.24', // used `core-js` version, by default - the latest
27
+ version: '3.25', // used `core-js` version, by default - the latest
22
28
  });
23
29
 
24
30
  console.log(targets);
@@ -112,9 +118,9 @@ require('core-js-compat/modules'); // => Array<ModuleName>
112
118
  require('core-js-compat').modules; // => Array<ModuleName>
113
119
 
114
120
  // the subset of modules which available in the passed `core-js` version:
115
- require('core-js-compat/get-modules-list-for-target-version')('3.24'); // => Array<ModuleName>
121
+ require('core-js-compat/get-modules-list-for-target-version')('3.25'); // => Array<ModuleName>
116
122
  // or
117
- require('core-js-compat').getModulesListForTargetVersion('3.24'); // => Array<ModuleName>
123
+ require('core-js-compat').getModulesListForTargetVersion('3.25'); // => Array<ModuleName>
118
124
  ```
119
125
 
120
126
  If you wanna help to improve this data, you could take a look at the related section of [`CONTRIBUTING.md`](https://github.com/zloirock/core-js/blob/master/CONTRIBUTING.md#how-to-update-core-js-compat-data). The visualization of compatibility data and the browser tests runner is available [here](http://es6.zloirock.ru/compat/), the example:
package/compat.js CHANGED
@@ -6,12 +6,21 @@ const getModulesListForTargetVersion = require('./get-modules-list-for-target-ve
6
6
  const allModules = require('./modules');
7
7
  const targetsParser = require('./targets-parser');
8
8
 
9
+ function throwInvalidFilter(filter) {
10
+ throw TypeError(`Specified invalid module name or pattern: ${ filter }`);
11
+ }
12
+
13
+ function atLeastSomeModules(modules, filter) {
14
+ if (!modules.length) throwInvalidFilter(filter);
15
+ return modules;
16
+ }
17
+
9
18
  function getModules(filter) {
10
19
  if (typeof filter == 'string') {
11
20
  if (has(entries, filter)) return entries[filter];
12
- return allModules.filter(it => it.startsWith(filter));
13
- } else if (filter instanceof RegExp) return allModules.filter(it => filter.test(it));
14
- throw TypeError('Wrong filter!');
21
+ return atLeastSomeModules(allModules.filter(it => it.startsWith(filter)), filter);
22
+ } else if (filter instanceof RegExp) return atLeastSomeModules(allModules.filter(it => filter.test(it)), filter);
23
+ throwInvalidFilter(filter);
15
24
  }
16
25
 
17
26
  function normalizeModules(option) {
package/data.json CHANGED
@@ -390,8 +390,8 @@
390
390
  "ios": "8.0",
391
391
  "node": "0.11.0",
392
392
  "oculus": "3.0",
393
- "opera": "16",
394
- "opera_mobile": "16",
393
+ "opera": "15",
394
+ "opera_mobile": "15",
395
395
  "rhino": "1.7.13",
396
396
  "safari": "7.1",
397
397
  "samsung": "1.5"
@@ -467,6 +467,7 @@
467
467
  "deno": "1.16",
468
468
  "edge": "97",
469
469
  "electron": "17.0",
470
+ "firefox": "104",
470
471
  "hermes": "0.11",
471
472
  "ios": "15.4",
472
473
  "node": "18.0",
@@ -483,6 +484,7 @@
483
484
  "deno": "1.16",
484
485
  "edge": "97",
485
486
  "electron": "17.0",
487
+ "firefox": "104",
486
488
  "hermes": "0.11",
487
489
  "ios": "15.4",
488
490
  "node": "18.0",
@@ -539,8 +541,8 @@
539
541
  "ios": "8.0",
540
542
  "node": "0.11.0",
541
543
  "oculus": "3.0",
542
- "opera": "16",
543
- "opera_mobile": "16",
544
+ "opera": "15",
545
+ "opera_mobile": "15",
544
546
  "rhino": "1.7.13",
545
547
  "safari": "7.1",
546
548
  "samsung": "1.5"
@@ -645,8 +647,8 @@
645
647
  "ios": "8.0",
646
648
  "node": "0.11.0",
647
649
  "oculus": "3.0",
648
- "opera": "16",
649
- "opera_mobile": "16",
650
+ "opera": "15",
651
+ "opera_mobile": "15",
650
652
  "rhino": "1.7.13",
651
653
  "safari": "7.1",
652
654
  "samsung": "1.5"
@@ -795,8 +797,8 @@
795
797
  "ios": "8.0",
796
798
  "node": "0.11.0",
797
799
  "oculus": "3.0",
798
- "opera": "16",
799
- "opera_mobile": "16",
800
+ "opera": "15",
801
+ "opera_mobile": "15",
800
802
  "rhino": "1.7.13",
801
803
  "safari": "7.1",
802
804
  "samsung": "1.5"
@@ -901,17 +903,17 @@
901
903
  "es.array-buffer.constructor": {
902
904
  "android": "4.4",
903
905
  "bun": "0.1.1",
904
- "chrome": "26",
906
+ "chrome": "28",
905
907
  "deno": "1.0",
906
908
  "edge": "14",
907
909
  "electron": "0.20",
908
910
  "firefox": "44",
909
911
  "hermes": "0.1",
910
912
  "ios": "12.0",
911
- "node": "0.11.0",
913
+ "node": "0.11.1",
912
914
  "oculus": "3.0",
913
- "opera": "16",
914
- "opera_mobile": "16",
915
+ "opera": "15",
916
+ "opera_mobile": "15",
915
917
  "safari": "12.0",
916
918
  "samsung": "1.5"
917
919
  },
@@ -965,8 +967,8 @@
965
967
  "ios": "8.0",
966
968
  "node": "0.11.0",
967
969
  "oculus": "3.0",
968
- "opera": "16",
969
- "opera_mobile": "16",
970
+ "opera": "15",
971
+ "opera_mobile": "15",
970
972
  "rhino": "1.7.13",
971
973
  "safari": "7.1",
972
974
  "samsung": "1.5"
@@ -1064,8 +1066,8 @@
1064
1066
  "ios": "8.0",
1065
1067
  "node": "0.11.0",
1066
1068
  "oculus": "3.0",
1067
- "opera": "16",
1068
- "opera_mobile": "16",
1069
+ "opera": "15",
1070
+ "opera_mobile": "15",
1069
1071
  "rhino": "1.7.13",
1070
1072
  "safari": "7.1",
1071
1073
  "samsung": "1.5"
@@ -1083,8 +1085,8 @@
1083
1085
  "ios": "10.0",
1084
1086
  "node": "0.11.0",
1085
1087
  "oculus": "3.0",
1086
- "opera": "16",
1087
- "opera_mobile": "16",
1088
+ "opera": "15",
1089
+ "opera_mobile": "15",
1088
1090
  "rhino": "1.7.13",
1089
1091
  "safari": "10.0",
1090
1092
  "samsung": "1.5"
@@ -1443,8 +1445,8 @@
1443
1445
  "ios": "9.0",
1444
1446
  "node": "0.11.1",
1445
1447
  "oculus": "3.0",
1446
- "opera": "16",
1447
- "opera_mobile": "16",
1448
+ "opera": "15",
1449
+ "opera_mobile": "15",
1448
1450
  "rhino": "1.7.13",
1449
1451
  "safari": "9.0",
1450
1452
  "samsung": "1.5"
@@ -1802,8 +1804,8 @@
1802
1804
  "ios": "8.0",
1803
1805
  "node": "0.11.0",
1804
1806
  "oculus": "3.0",
1805
- "opera": "16",
1806
- "opera_mobile": "16",
1807
+ "opera": "15",
1808
+ "opera_mobile": "15",
1807
1809
  "rhino": "1.7.13",
1808
1810
  "safari": "7.1",
1809
1811
  "samsung": "1.5"
@@ -1821,8 +1823,8 @@
1821
1823
  "ios": "8.0",
1822
1824
  "node": "0.11.0",
1823
1825
  "oculus": "3.0",
1824
- "opera": "16",
1825
- "opera_mobile": "16",
1826
+ "opera": "15",
1827
+ "opera_mobile": "15",
1826
1828
  "rhino": "1.7.13",
1827
1829
  "safari": "7.1",
1828
1830
  "samsung": "1.5"
@@ -2226,6 +2228,24 @@
2226
2228
  "safari": "9.0",
2227
2229
  "samsung": "4.0"
2228
2230
  },
2231
+ "es.object.proto": {
2232
+ "android": "3.0",
2233
+ "bun": "0.1.1",
2234
+ "chrome": "5",
2235
+ "edge": "12",
2236
+ "electron": "0.20",
2237
+ "firefox": "2",
2238
+ "hermes": "0.1",
2239
+ "ie": "11",
2240
+ "ios": "2.0",
2241
+ "node": "0.1.27",
2242
+ "oculus": "3.0",
2243
+ "opera": "10.50",
2244
+ "opera_mobile": "10.50",
2245
+ "phantom": "1.9",
2246
+ "safari": "3.1",
2247
+ "samsung": "1.0"
2248
+ },
2229
2249
  "es.object.seal": {
2230
2250
  "android": "44",
2231
2251
  "bun": "0.1.1",
@@ -3630,6 +3650,7 @@
3630
3650
  "deno": "1.16",
3631
3651
  "edge": "97",
3632
3652
  "electron": "17.0",
3653
+ "firefox": "104",
3633
3654
  "hermes": "0.11",
3634
3655
  "ios": "15.4",
3635
3656
  "node": "18.0",
@@ -3646,6 +3667,7 @@
3646
3667
  "deno": "1.16",
3647
3668
  "edge": "97",
3648
3669
  "electron": "17.0",
3670
+ "firefox": "104",
3649
3671
  "hermes": "0.11",
3650
3672
  "ios": "15.4",
3651
3673
  "node": "18.0",
@@ -3937,8 +3959,8 @@
3937
3959
  "ios": "8.0",
3938
3960
  "node": "0.11.0",
3939
3961
  "oculus": "3.0",
3940
- "opera": "16",
3941
- "opera_mobile": "16",
3962
+ "opera": "15",
3963
+ "opera_mobile": "15",
3942
3964
  "safari": "7.1",
3943
3965
  "samsung": "1.5"
3944
3966
  },
@@ -4072,6 +4094,7 @@
4072
4094
  "deno": "1.16",
4073
4095
  "edge": "97",
4074
4096
  "electron": "17.0",
4097
+ "firefox": "104",
4075
4098
  "hermes": "0.11",
4076
4099
  "ios": "15.4",
4077
4100
  "node": "18.0",
@@ -4088,6 +4111,7 @@
4088
4111
  "deno": "1.16",
4089
4112
  "edge": "97",
4090
4113
  "electron": "17.0",
4114
+ "firefox": "104",
4091
4115
  "hermes": "0.11",
4092
4116
  "ios": "15.4",
4093
4117
  "node": "18.0",
@@ -4097,10 +4121,14 @@
4097
4121
  "safari": "15.4",
4098
4122
  "samsung": "18.0"
4099
4123
  },
4100
- "esnext.array.group": {},
4124
+ "esnext.array.group": {
4125
+ "bun": "0.1.9"
4126
+ },
4101
4127
  "esnext.array.group-by": {},
4102
4128
  "esnext.array.group-by-to-map": {},
4103
- "esnext.array.group-to-map": {},
4129
+ "esnext.array.group-to-map": {
4130
+ "bun": "0.1.9"
4131
+ },
4104
4132
  "esnext.array.is-template-object": {},
4105
4133
  "esnext.array.last-index": {},
4106
4134
  "esnext.array.last-item": {},
@@ -4359,6 +4387,7 @@
4359
4387
  "deno": "1.16",
4360
4388
  "edge": "97",
4361
4389
  "electron": "17.0",
4390
+ "firefox": "104",
4362
4391
  "hermes": "0.11",
4363
4392
  "ios": "15.4",
4364
4393
  "node": "18.0",
@@ -4375,6 +4404,7 @@
4375
4404
  "deno": "1.16",
4376
4405
  "edge": "97",
4377
4406
  "electron": "17.0",
4407
+ "firefox": "104",
4378
4408
  "hermes": "0.11",
4379
4409
  "ios": "15.4",
4380
4410
  "node": "18.0",
@@ -4393,7 +4423,9 @@
4393
4423
  },
4394
4424
  "esnext.typed-array.to-spliced": {},
4395
4425
  "esnext.typed-array.unique-by": {},
4396
- "esnext.typed-array.with": {},
4426
+ "esnext.typed-array.with": {
4427
+ "bun": "0.1.9"
4428
+ },
4397
4429
  "esnext.weak-map.delete-all": {},
4398
4430
  "esnext.weak-map.from": {},
4399
4431
  "esnext.weak-map.of": {},
@@ -4510,6 +4542,7 @@
4510
4542
  "samsung": "5.0"
4511
4543
  },
4512
4544
  "web.immediate": {
4545
+ "bun": "0.1.7",
4513
4546
  "ie": "10",
4514
4547
  "node": "0.9.1"
4515
4548
  },
package/entries.json CHANGED
@@ -126,6 +126,7 @@
126
126
  "es.object.lookup-getter",
127
127
  "es.object.lookup-setter",
128
128
  "es.object.prevent-extensions",
129
+ "es.object.proto",
129
130
  "es.object.seal",
130
131
  "es.object.set-prototype-of",
131
132
  "es.object.to-string",
@@ -535,6 +536,7 @@
535
536
  "es.object.lookup-getter",
536
537
  "es.object.lookup-setter",
537
538
  "es.object.prevent-extensions",
539
+ "es.object.proto",
538
540
  "es.object.seal",
539
541
  "es.object.set-prototype-of",
540
542
  "es.object.to-string",
@@ -1572,6 +1574,7 @@
1572
1574
  "es.object.lookup-getter",
1573
1575
  "es.object.lookup-setter",
1574
1576
  "es.object.prevent-extensions",
1577
+ "es.object.proto",
1575
1578
  "es.object.seal",
1576
1579
  "es.object.set-prototype-of",
1577
1580
  "es.object.to-string",
@@ -1650,6 +1653,9 @@
1650
1653
  "core-js/actual/object/prevent-extensions": [
1651
1654
  "es.object.prevent-extensions"
1652
1655
  ],
1656
+ "core-js/actual/object/proto": [
1657
+ "es.object.proto"
1658
+ ],
1653
1659
  "core-js/actual/object/seal": [
1654
1660
  "es.object.seal"
1655
1661
  ],
@@ -2948,6 +2954,7 @@
2948
2954
  "es.object.lookup-getter",
2949
2955
  "es.object.lookup-setter",
2950
2956
  "es.object.prevent-extensions",
2957
+ "es.object.proto",
2951
2958
  "es.object.seal",
2952
2959
  "es.object.set-prototype-of",
2953
2960
  "es.object.to-string",
@@ -3775,6 +3782,7 @@
3775
3782
  "es.object.lookup-getter",
3776
3783
  "es.object.lookup-setter",
3777
3784
  "es.object.prevent-extensions",
3785
+ "es.object.proto",
3778
3786
  "es.object.seal",
3779
3787
  "es.object.set-prototype-of",
3780
3788
  "es.object.to-string",
@@ -3851,6 +3859,9 @@
3851
3859
  "core-js/es/object/prevent-extensions": [
3852
3860
  "es.object.prevent-extensions"
3853
3861
  ],
3862
+ "core-js/es/object/proto": [
3863
+ "es.object.proto"
3864
+ ],
3854
3865
  "core-js/es/object/seal": [
3855
3866
  "es.object.seal"
3856
3867
  ],
@@ -5025,6 +5036,7 @@
5025
5036
  "es.object.lookup-getter",
5026
5037
  "es.object.lookup-setter",
5027
5038
  "es.object.prevent-extensions",
5039
+ "es.object.proto",
5028
5040
  "es.object.seal",
5029
5041
  "es.object.set-prototype-of",
5030
5042
  "es.object.to-string",
@@ -6678,6 +6690,7 @@
6678
6690
  "es.object.lookup-getter",
6679
6691
  "es.object.lookup-setter",
6680
6692
  "es.object.prevent-extensions",
6693
+ "es.object.proto",
6681
6694
  "es.object.seal",
6682
6695
  "es.object.set-prototype-of",
6683
6696
  "es.object.to-string",
@@ -6770,6 +6783,9 @@
6770
6783
  "core-js/features/object/prevent-extensions": [
6771
6784
  "es.object.prevent-extensions"
6772
6785
  ],
6786
+ "core-js/features/object/proto": [
6787
+ "es.object.proto"
6788
+ ],
6773
6789
  "core-js/features/object/seal": [
6774
6790
  "es.object.seal"
6775
6791
  ],
@@ -8455,6 +8471,7 @@
8455
8471
  "es.object.lookup-getter",
8456
8472
  "es.object.lookup-setter",
8457
8473
  "es.object.prevent-extensions",
8474
+ "es.object.proto",
8458
8475
  "es.object.seal",
8459
8476
  "es.object.set-prototype-of",
8460
8477
  "es.object.to-string",
@@ -10108,6 +10125,7 @@
10108
10125
  "es.object.lookup-getter",
10109
10126
  "es.object.lookup-setter",
10110
10127
  "es.object.prevent-extensions",
10128
+ "es.object.proto",
10111
10129
  "es.object.seal",
10112
10130
  "es.object.set-prototype-of",
10113
10131
  "es.object.to-string",
@@ -10200,6 +10218,9 @@
10200
10218
  "core-js/full/object/prevent-extensions": [
10201
10219
  "es.object.prevent-extensions"
10202
10220
  ],
10221
+ "core-js/full/object/proto": [
10222
+ "es.object.proto"
10223
+ ],
10203
10224
  "core-js/full/object/seal": [
10204
10225
  "es.object.seal"
10205
10226
  ],
@@ -12103,6 +12124,9 @@
12103
12124
  "core-js/modules/es.object.prevent-extensions": [
12104
12125
  "es.object.prevent-extensions"
12105
12126
  ],
12127
+ "core-js/modules/es.object.proto": [
12128
+ "es.object.proto"
12129
+ ],
12106
12130
  "core-js/modules/es.object.seal": [
12107
12131
  "es.object.seal"
12108
12132
  ],
@@ -13688,6 +13712,7 @@
13688
13712
  "es.object.lookup-getter",
13689
13713
  "es.object.lookup-setter",
13690
13714
  "es.object.prevent-extensions",
13715
+ "es.object.proto",
13691
13716
  "es.object.seal",
13692
13717
  "es.object.set-prototype-of",
13693
13718
  "es.object.to-string",
@@ -14585,6 +14610,7 @@
14585
14610
  "es.object.lookup-getter",
14586
14611
  "es.object.lookup-setter",
14587
14612
  "es.object.prevent-extensions",
14613
+ "es.object.proto",
14588
14614
  "es.object.seal",
14589
14615
  "es.object.set-prototype-of",
14590
14616
  "es.object.to-string",
@@ -14663,6 +14689,9 @@
14663
14689
  "core-js/stable/object/prevent-extensions": [
14664
14690
  "es.object.prevent-extensions"
14665
14691
  ],
14692
+ "core-js/stable/object/proto": [
14693
+ "es.object.proto"
14694
+ ],
14666
14695
  "core-js/stable/object/seal": [
14667
14696
  "es.object.seal"
14668
14697
  ],
package/external.json CHANGED
@@ -7,6 +7,7 @@
7
7
  "edge": "16",
8
8
  "firefox": "60",
9
9
  "ios": "10.3",
10
+ "node": "13.2",
10
11
  "oculus": "4.0",
11
12
  "opera": "48",
12
13
  "opera_mobile": "45",
package/helpers.js CHANGED
@@ -1,11 +1,30 @@
1
1
  'use strict';
2
- const cmp = require('semver/functions/cmp');
3
- const semver = require('semver/functions/coerce');
2
+ // eslint-disable-next-line es-x/no-object-hasown -- safe
3
+ const has = Object.hasOwn || Function.call.bind({}.hasOwnProperty);
4
+
5
+ function semver(input) {
6
+ if (input instanceof semver) return input;
7
+ // eslint-disable-next-line new-cap -- ok
8
+ if (!(this instanceof semver)) return new semver(input);
9
+ const match = /(\d+)(?:\.(\d+))?(?:\.(\d+))?/.exec(input);
10
+ if (!match) throw TypeError(`Invalid version: ${ input }`);
11
+ const [, $major, $minor, $patch] = match;
12
+ this.major = +$major;
13
+ this.minor = $minor ? +$minor : 0;
14
+ this.patch = $patch ? +$patch : 0;
15
+ }
4
16
 
5
- const has = Function.call.bind({}.hasOwnProperty);
17
+ semver.prototype.toString = function () {
18
+ return `${ this.major }.${ this.minor }.${ this.patch }`;
19
+ };
6
20
 
7
- function compare(a, operator, b) {
8
- return cmp(semver(a), operator, semver(b));
21
+ function compare($a, operator, $b) {
22
+ const a = semver($a);
23
+ const b = semver($b);
24
+ for (const component of ['major', 'minor', 'patch']) {
25
+ if (a[component] < b[component]) return operator === '<' || operator === '<=' || operator === '!=';
26
+ if (a[component] > b[component]) return operator === '>' || operator === '>=' || operator === '!=';
27
+ } return operator === '==' || operator === '<=' || operator === '>=';
9
28
  }
10
29
 
11
30
  function filterOutStabilizedProposals(modules) {
@@ -445,5 +445,8 @@
445
445
  "3.24": [
446
446
  "esnext.async-iterator.indexed",
447
447
  "esnext.iterator.indexed"
448
+ ],
449
+ "3.25": [
450
+ "es.object.proto"
448
451
  ]
449
452
  }
package/modules.json CHANGED
@@ -125,6 +125,7 @@
125
125
  "es.object.lookup-getter",
126
126
  "es.object.lookup-setter",
127
127
  "es.object.prevent-extensions",
128
+ "es.object.proto",
128
129
  "es.object.seal",
129
130
  "es.object.set-prototype-of",
130
131
  "es.object.to-string",
package/package.json CHANGED
@@ -1,16 +1,16 @@
1
1
  {
2
2
  "name": "core-js-compat",
3
3
  "description": "core-js compat",
4
- "version": "3.24.0",
4
+ "version": "3.25.1",
5
5
  "repository": {
6
6
  "type": "git",
7
7
  "url": "https://github.com/zloirock/core-js.git",
8
8
  "directory": "packages/core-js-compat"
9
9
  },
10
10
  "main": "index.js",
11
+ "sideEffects": false,
11
12
  "dependencies": {
12
- "browserslist": "^4.21.2",
13
- "semver": "7.0.0"
13
+ "browserslist": "^4.21.3"
14
14
  },
15
15
  "funding": {
16
16
  "type": "opencollective",