jscrewit 2.30.0 → 2.33.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.
@@ -44,7 +44,7 @@ An error is thrown if any of the specified features are not mutually compatible.
44
44
 
45
45
  | Name | Type |
46
46
  | :------ | :------ |
47
- | `...features` | ([`FeatureElement`](../README.md#featureelement) \| [`CompatibleFeatureArray`](../README.md#compatiblefeaturearray))[] |
47
+ | `...features` | [`FeatureElementOrCompatibleArray`](../README.md#featureelementorcompatiblearray)[] |
48
48
 
49
49
  #### Returns
50
50
 
@@ -59,98 +59,100 @@ An error is thrown if any of the specified features are not mutually compatible.
59
59
  ### Properties
60
60
 
61
61
  - [ALL](FeatureConstructor.md#all)
62
- - [ANDRO\_4\_0](FeatureConstructor.md#andro_4_0)
63
- - [ANDRO\_4\_1](FeatureConstructor.md#andro_4_1)
64
- - [ANDRO\_4\_4](FeatureConstructor.md#andro_4_4)
65
- - [ANY\_DOCUMENT](FeatureConstructor.md#any_document)
66
- - [ANY\_WINDOW](FeatureConstructor.md#any_window)
67
- - [ARRAY\_ITERATOR](FeatureConstructor.md#array_iterator)
62
+ - [ANDRO_4_0](FeatureConstructor.md#andro_4_0)
63
+ - [ANDRO_4_1](FeatureConstructor.md#andro_4_1)
64
+ - [ANDRO_4_4](FeatureConstructor.md#andro_4_4)
65
+ - [ANY_DOCUMENT](FeatureConstructor.md#any_document)
66
+ - [ANY_WINDOW](FeatureConstructor.md#any_window)
67
+ - [ARRAY_ITERATOR](FeatureConstructor.md#array_iterator)
68
68
  - [ARROW](FeatureConstructor.md#arrow)
69
69
  - [AT](FeatureConstructor.md#at)
70
70
  - [ATOB](FeatureConstructor.md#atob)
71
71
  - [AUTO](FeatureConstructor.md#auto)
72
72
  - [BARPROP](FeatureConstructor.md#barprop)
73
73
  - [BROWSER](FeatureConstructor.md#browser)
74
- - [CAPITAL\_HTML](FeatureConstructor.md#capital_html)
74
+ - [CAPITAL_HTML](FeatureConstructor.md#capital_html)
75
75
  - [CHROME](FeatureConstructor.md#chrome)
76
- - [CHROME\_86](FeatureConstructor.md#chrome_86)
77
- - [CHROME\_92](FeatureConstructor.md#chrome_92)
78
- - [CHROME\_PREV](FeatureConstructor.md#chrome_prev)
76
+ - [CHROME_92](FeatureConstructor.md#chrome_92)
77
+ - [CHROME_PREV](FeatureConstructor.md#chrome_prev)
79
78
  - [COMPACT](FeatureConstructor.md#compact)
80
79
  - [CONSOLE](FeatureConstructor.md#console)
81
80
  - [DEFAULT](FeatureConstructor.md#default)
82
81
  - [DOCUMENT](FeatureConstructor.md#document)
83
82
  - [DOMWINDOW](FeatureConstructor.md#domwindow)
84
83
  - [ELEMENTARY](FeatureConstructor.md#elementary)
85
- - [ESC\_HTML\_ALL](FeatureConstructor.md#esc_html_all)
86
- - [ESC\_HTML\_QUOT](FeatureConstructor.md#esc_html_quot)
87
- - [ESC\_HTML\_QUOT\_ONLY](FeatureConstructor.md#esc_html_quot_only)
88
- - [ESC\_REGEXP\_LF](FeatureConstructor.md#esc_regexp_lf)
89
- - [ESC\_REGEXP\_SLASH](FeatureConstructor.md#esc_regexp_slash)
84
+ - [ESC_HTML_ALL](FeatureConstructor.md#esc_html_all)
85
+ - [ESC_HTML_QUOT](FeatureConstructor.md#esc_html_quot)
86
+ - [ESC_HTML_QUOT_ONLY](FeatureConstructor.md#esc_html_quot_only)
87
+ - [ESC_REGEXP_LF](FeatureConstructor.md#esc_regexp_lf)
88
+ - [ESC_REGEXP_SLASH](FeatureConstructor.md#esc_regexp_slash)
90
89
  - [FF](FeatureConstructor.md#ff)
91
- - [FF\_78](FeatureConstructor.md#ff_78)
92
- - [FF\_83](FeatureConstructor.md#ff_83)
93
- - [FF\_90](FeatureConstructor.md#ff_90)
94
- - [FF\_ESR](FeatureConstructor.md#ff_esr)
95
- - [FF\_PREV](FeatureConstructor.md#ff_prev)
96
- - [FF\_SRC](FeatureConstructor.md#ff_src)
90
+ - [FF_78](FeatureConstructor.md#ff_78)
91
+ - [FF_83](FeatureConstructor.md#ff_83)
92
+ - [FF_90](FeatureConstructor.md#ff_90)
93
+ - [FF_ESR](FeatureConstructor.md#ff_esr)
94
+ - [FF_PREV](FeatureConstructor.md#ff_prev)
95
+ - [FF_SRC](FeatureConstructor.md#ff_src)
97
96
  - [FILL](FeatureConstructor.md#fill)
98
97
  - [FLAT](FeatureConstructor.md#flat)
99
- - [FROM\_CODE\_POINT](FeatureConstructor.md#from_code_point)
100
- - [FUNCTION\_19\_LF](FeatureConstructor.md#function_19_lf)
101
- - [FUNCTION\_22\_LF](FeatureConstructor.md#function_22_lf)
102
- - [GENERIC\_ARRAY\_TO\_STRING](FeatureConstructor.md#generic_array_to_string)
103
- - [GLOBAL\_UNDEFINED](FeatureConstructor.md#global_undefined)
98
+ - [FROM_CODE_POINT](FeatureConstructor.md#from_code_point)
99
+ - [FUNCTION_19_LF](FeatureConstructor.md#function_19_lf)
100
+ - [FUNCTION_22_LF](FeatureConstructor.md#function_22_lf)
101
+ - [GENERIC_ARRAY_TO_STRING](FeatureConstructor.md#generic_array_to_string)
102
+ - [GLOBAL_UNDEFINED](FeatureConstructor.md#global_undefined)
104
103
  - [GMT](FeatureConstructor.md#gmt)
105
104
  - [HISTORY](FeatureConstructor.md#history)
106
105
  - [HTMLAUDIOELEMENT](FeatureConstructor.md#htmlaudioelement)
107
106
  - [HTMLDOCUMENT](FeatureConstructor.md#htmldocument)
108
- - [IE\_10](FeatureConstructor.md#ie_10)
109
- - [IE\_11](FeatureConstructor.md#ie_11)
110
- - [IE\_11\_WIN\_10](FeatureConstructor.md#ie_11_win_10)
111
- - [IE\_9](FeatureConstructor.md#ie_9)
112
- - [IE\_SRC](FeatureConstructor.md#ie_src)
113
- - [INCR\_CHAR](FeatureConstructor.md#incr_char)
107
+ - [IE_10](FeatureConstructor.md#ie_10)
108
+ - [IE_11](FeatureConstructor.md#ie_11)
109
+ - [IE_11_WIN_10](FeatureConstructor.md#ie_11_win_10)
110
+ - [IE_9](FeatureConstructor.md#ie_9)
111
+ - [IE_SRC](FeatureConstructor.md#ie_src)
112
+ - [INCR_CHAR](FeatureConstructor.md#incr_char)
114
113
  - [INTL](FeatureConstructor.md#intl)
115
- - [LOCALE\_INFINITY](FeatureConstructor.md#locale_infinity)
116
- - [LOCALE\_NUMERALS](FeatureConstructor.md#locale_numerals)
117
- - [LOCALE\_NUMERALS\_EXT](FeatureConstructor.md#locale_numerals_ext)
114
+ - [LOCALE_INFINITY](FeatureConstructor.md#locale_infinity)
115
+ - [LOCALE_NUMERALS](FeatureConstructor.md#locale_numerals)
116
+ - [LOCALE_NUMERALS_EXT](FeatureConstructor.md#locale_numerals_ext)
118
117
  - [LOCATION](FeatureConstructor.md#location)
119
118
  - [NAME](FeatureConstructor.md#name)
120
119
  - [NODECONSTRUCTOR](FeatureConstructor.md#nodeconstructor)
121
- - [NODE\_0\_10](FeatureConstructor.md#node_0_10)
122
- - [NODE\_0\_12](FeatureConstructor.md#node_0_12)
123
- - [NODE\_10](FeatureConstructor.md#node_10)
124
- - [NODE\_11](FeatureConstructor.md#node_11)
125
- - [NODE\_12](FeatureConstructor.md#node_12)
126
- - [NODE\_13](FeatureConstructor.md#node_13)
127
- - [NODE\_15](FeatureConstructor.md#node_15)
128
- - [NODE\_16](FeatureConstructor.md#node_16)
129
- - [NODE\_4](FeatureConstructor.md#node_4)
130
- - [NODE\_5](FeatureConstructor.md#node_5)
131
- - [NO\_FF\_SRC](FeatureConstructor.md#no_ff_src)
132
- - [NO\_IE\_SRC](FeatureConstructor.md#no_ie_src)
133
- - [NO\_OLD\_SAFARI\_ARRAY\_ITERATOR](FeatureConstructor.md#no_old_safari_array_iterator)
134
- - [NO\_V8\_SRC](FeatureConstructor.md#no_v8_src)
135
- - [OBJECT\_UNDEFINED](FeatureConstructor.md#object_undefined)
136
- - [PLAIN\_INTL](FeatureConstructor.md#plain_intl)
137
- - [REGEXP\_STRING\_ITERATOR](FeatureConstructor.md#regexp_string_iterator)
120
+ - [NODE_0_10](FeatureConstructor.md#node_0_10)
121
+ - [NODE_0_12](FeatureConstructor.md#node_0_12)
122
+ - [NODE_10](FeatureConstructor.md#node_10)
123
+ - [NODE_11](FeatureConstructor.md#node_11)
124
+ - [NODE_12](FeatureConstructor.md#node_12)
125
+ - [NODE_13](FeatureConstructor.md#node_13)
126
+ - [NODE_15](FeatureConstructor.md#node_15)
127
+ - [NODE_16_0](FeatureConstructor.md#node_16_0)
128
+ - [NODE_16_6](FeatureConstructor.md#node_16_6)
129
+ - [NODE_4](FeatureConstructor.md#node_4)
130
+ - [NODE_5](FeatureConstructor.md#node_5)
131
+ - [NO_FF_SRC](FeatureConstructor.md#no_ff_src)
132
+ - [NO_IE_SRC](FeatureConstructor.md#no_ie_src)
133
+ - [NO_OLD_SAFARI_ARRAY_ITERATOR](FeatureConstructor.md#no_old_safari_array_iterator)
134
+ - [NO_V8_SRC](FeatureConstructor.md#no_v8_src)
135
+ - [OBJECT_L_LOCATION_CTOR](FeatureConstructor.md#object_l_location_ctor)
136
+ - [OBJECT_UNDEFINED](FeatureConstructor.md#object_undefined)
137
+ - [OBJECT_W_CTOR](FeatureConstructor.md#object_w_ctor)
138
+ - [OLD_SAFARI_LOCATION_CTOR](FeatureConstructor.md#old_safari_location_ctor)
139
+ - [PLAIN_INTL](FeatureConstructor.md#plain_intl)
140
+ - [REGEXP_STRING_ITERATOR](FeatureConstructor.md#regexp_string_iterator)
138
141
  - [SAFARI](FeatureConstructor.md#safari)
139
- - [SAFARI\_10](FeatureConstructor.md#safari_10)
140
- - [SAFARI\_12](FeatureConstructor.md#safari_12)
141
- - [SAFARI\_13](FeatureConstructor.md#safari_13)
142
- - [SAFARI\_14\_0\_1](FeatureConstructor.md#safari_14_0_1)
143
- - [SAFARI\_14\_1](FeatureConstructor.md#safari_14_1)
144
- - [SAFARI\_7\_0](FeatureConstructor.md#safari_7_0)
145
- - [SAFARI\_7\_1](FeatureConstructor.md#safari_7_1)
146
- - [SAFARI\_8](FeatureConstructor.md#safari_8)
147
- - [SAFARI\_9](FeatureConstructor.md#safari_9)
142
+ - [SAFARI_10](FeatureConstructor.md#safari_10)
143
+ - [SAFARI_12](FeatureConstructor.md#safari_12)
144
+ - [SAFARI_13](FeatureConstructor.md#safari_13)
145
+ - [SAFARI_14_0_1](FeatureConstructor.md#safari_14_0_1)
146
+ - [SAFARI_14_1](FeatureConstructor.md#safari_14_1)
147
+ - [SAFARI_7_0](FeatureConstructor.md#safari_7_0)
148
+ - [SAFARI_7_1](FeatureConstructor.md#safari_7_1)
149
+ - [SAFARI_9](FeatureConstructor.md#safari_9)
148
150
  - [SELF](FeatureConstructor.md#self)
149
- - [SELF\_OBJ](FeatureConstructor.md#self_obj)
150
- - [SHORT\_LOCALES](FeatureConstructor.md#short_locales)
151
+ - [SELF_OBJ](FeatureConstructor.md#self_obj)
152
+ - [SHORT_LOCALES](FeatureConstructor.md#short_locales)
151
153
  - [STATUS](FeatureConstructor.md#status)
152
154
  - [UNDEFINED](FeatureConstructor.md#undefined)
153
- - [V8\_SRC](FeatureConstructor.md#v8_src)
155
+ - [V8_SRC](FeatureConstructor.md#v8_src)
154
156
  - [WINDOW](FeatureConstructor.md#window)
155
157
 
156
158
  ### Methods
@@ -198,7 +200,7 @@ An error is thrown if any of the specified features are not mutually compatible.
198
200
 
199
201
  | Name | Type |
200
202
  | :------ | :------ |
201
- | `...features` | ([`FeatureElement`](../README.md#featureelement) \| [`CompatibleFeatureArray`](../README.md#compatiblefeaturearray))[] |
203
+ | `...features` | [`FeatureElementOrCompatibleArray`](../README.md#featureelementorcompatiblearray)[] |
202
204
 
203
205
  #### Inherited from
204
206
 
@@ -336,7 +338,7 @@ Existence of the native function Array.prototype.at.
336
338
 
337
339
  **`remarks`**
338
340
 
339
- Available in Chrome 92+, Edge 92+, Firefox 90+, and Opera 78+.
341
+ Available in Chrome, Edge, Firefox 90+, Opera, and Node.js 16.6+.
340
342
 
341
343
  #### Inherited from
342
344
 
@@ -352,7 +354,7 @@ Existence of the global functions atob and btoa.
352
354
 
353
355
  **`remarks`**
354
356
 
355
- Available in Chrome, Edge, Firefox, Internet Explorer 10+, Safari, Opera, Android Browser, and Node.js 16+. This feature is not available inside web workers in Safari before 10.
357
+ Available in Chrome, Edge, Firefox, Internet Explorer 10+, Safari, Opera, Android Browser, and Node.js 16.0+. This feature is not available inside web workers in Safari before 10.
356
358
 
357
359
  #### Inherited from
358
360
 
@@ -364,7 +366,7 @@ ___
364
366
 
365
367
  • **AUTO**: [`PredefinedFeature`](PredefinedFeature.md)
366
368
 
367
- All features available in the current engine.
369
+ Features available in the current environment.
368
370
 
369
371
  #### Inherited from
370
372
 
@@ -432,26 +434,6 @@ An alias for `CHROME_92`.
432
434
 
433
435
  ___
434
436
 
435
- ### CHROME\_86
436
-
437
- • **CHROME\_86**: [`PredefinedFeature`](PredefinedFeature.md)
438
-
439
- Features available in Chrome 86 to 91, Edge 86 to 91 and Opera 72 to 77.
440
-
441
- **`remarks`**
442
-
443
- This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `CHROME_PREV` instead of `CHROME_86` for long term support.
444
-
445
- **`see`**
446
-
447
- [Engine Support Policy](https://github.com/fasttime/JScrewIt#engine-support-policy)
448
-
449
- #### Inherited from
450
-
451
- [FeatureAll](FeatureAll.md).[CHROME_86](FeatureAll.md#chrome_86)
452
-
453
- ___
454
-
455
437
  ### CHROME\_92
456
438
 
457
439
  • **CHROME\_92**: [`PredefinedFeature`](PredefinedFeature.md)
@@ -460,7 +442,7 @@ Features available in Chrome 92, Edge 92 and Opera 78 or later.
460
442
 
461
443
  **`remarks`**
462
444
 
463
- This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `CHROME` instead of `CHROME_92` for long term support.
445
+ This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `CHROME` or `CHROME_PREV` instead of `CHROME_92` for long term support.
464
446
 
465
447
  **`see`**
466
448
 
@@ -478,7 +460,7 @@ ___
478
460
 
479
461
  Features available in the previous to current versions of Chrome and Edge.
480
462
 
481
- An alias for `CHROME_86`.
463
+ An alias for `CHROME_92`.
482
464
 
483
465
  #### Inherited from
484
466
 
@@ -692,7 +674,7 @@ Features available in Firefox 83 to 89.
692
674
 
693
675
  **`remarks`**
694
676
 
695
- This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `FF_PREV` instead of `FF_83` for long term support.
677
+ This feature may be replaced or removed in the near future when current browser versions become obsolete.
696
678
 
697
679
  **`see`**
698
680
 
@@ -712,7 +694,7 @@ Features available in Firefox 90 or later.
712
694
 
713
695
  **`remarks`**
714
696
 
715
- This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `FF` instead of `FF_90` for long term support.
697
+ This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `FF` or `FF_PREV` instead of `FF_90` for long term support.
716
698
 
717
699
  **`see`**
718
700
 
@@ -744,7 +726,7 @@ ___
744
726
 
745
727
  Features available in the previous to current version of Firefox.
746
728
 
747
- An alias for `FF_83`.
729
+ An alias for `FF_90`.
748
730
 
749
731
  #### Inherited from
750
732
 
@@ -1228,15 +1210,27 @@ Features available in Node.js 15.
1228
1210
 
1229
1211
  ___
1230
1212
 
1231
- ### NODE\_16
1213
+ ### NODE\_16\_0
1232
1214
 
1233
- • **NODE\_16**: [`PredefinedFeature`](PredefinedFeature.md)
1215
+ • **NODE\_16\_0**: [`PredefinedFeature`](PredefinedFeature.md)
1234
1216
 
1235
- Features available in Node.js 16 or later.
1217
+ Features available in Node.js 16.0 to 16.5.
1236
1218
 
1237
1219
  #### Inherited from
1238
1220
 
1239
- [FeatureAll](FeatureAll.md).[NODE_16](FeatureAll.md#node_16)
1221
+ [FeatureAll](FeatureAll.md).[NODE_16_0](FeatureAll.md#node_16_0)
1222
+
1223
+ ___
1224
+
1225
+ ### NODE\_16\_6
1226
+
1227
+ • **NODE\_16\_6**: [`PredefinedFeature`](PredefinedFeature.md)
1228
+
1229
+ Features available in Node.js 16.6 or later.
1230
+
1231
+ #### Inherited from
1232
+
1233
+ [FeatureAll](FeatureAll.md).[NODE_16_6](FeatureAll.md#node_16_6)
1240
1234
 
1241
1235
  ___
1242
1236
 
@@ -1332,6 +1326,22 @@ Available in Firefox, Internet Explorer, and Safari.
1332
1326
 
1333
1327
  ___
1334
1328
 
1329
+ ### OBJECT\_L\_LOCATION\_CTOR
1330
+
1331
+ • **OBJECT\_L\_LOCATION\_CTOR**: [`ElementaryFeature`](ElementaryFeature.md)
1332
+
1333
+ Existence of the global function location.constructor whose string representation starts with "\[object L"
1334
+
1335
+ **`remarks`**
1336
+
1337
+ Available in Internet Explorer and Safari before 10. This feature is not available inside web workers.
1338
+
1339
+ #### Inherited from
1340
+
1341
+ [FeatureAll](FeatureAll.md).[OBJECT_L_LOCATION_CTOR](FeatureAll.md#object_l_location_ctor)
1342
+
1343
+ ___
1344
+
1335
1345
  ### OBJECT\_UNDEFINED
1336
1346
 
1337
1347
  • **OBJECT\_UNDEFINED**: [`ElementaryFeature`](ElementaryFeature.md)
@@ -1348,6 +1358,38 @@ Available in Chrome, Edge, Firefox, Internet Explorer 10+, Safari, Opera, Androi
1348
1358
 
1349
1359
  ___
1350
1360
 
1361
+ ### OBJECT\_W\_CTOR
1362
+
1363
+ • **OBJECT\_W\_CTOR**: [`ElementaryFeature`](ElementaryFeature.md)
1364
+
1365
+ The property that the string representation of the global object constructor starts with "\[object W"
1366
+
1367
+ **`remarks`**
1368
+
1369
+ Available in Internet Explorer and Safari before 10. This feature is not available inside web workers in Safari before 10.
1370
+
1371
+ #### Inherited from
1372
+
1373
+ [FeatureAll](FeatureAll.md).[OBJECT_W_CTOR](FeatureAll.md#object_w_ctor)
1374
+
1375
+ ___
1376
+
1377
+ ### OLD\_SAFARI\_LOCATION\_CTOR
1378
+
1379
+ • **OLD\_SAFARI\_LOCATION\_CTOR**: [`ElementaryFeature`](ElementaryFeature.md)
1380
+
1381
+ Existence of the global object location.constructor whose string representation starts with "\[object " and ends with "LocationConstructor\]"
1382
+
1383
+ **`remarks`**
1384
+
1385
+ Available in Safari before 10.
1386
+
1387
+ #### Inherited from
1388
+
1389
+ [FeatureAll](FeatureAll.md).[OLD_SAFARI_LOCATION_CTOR](FeatureAll.md#old_safari_location_ctor)
1390
+
1391
+ ___
1392
+
1351
1393
  ### PLAIN\_INTL
1352
1394
 
1353
1395
  • **PLAIN\_INTL**: [`ElementaryFeature`](ElementaryFeature.md)
@@ -1478,18 +1520,6 @@ Features available in Safari 7.1 and Safari 8.
1478
1520
 
1479
1521
  ___
1480
1522
 
1481
- ### SAFARI\_8
1482
-
1483
- • **SAFARI\_8**: [`PredefinedFeature`](PredefinedFeature.md)
1484
-
1485
- An alias for `SAFARI_7_1`.
1486
-
1487
- #### Inherited from
1488
-
1489
- [FeatureAll](FeatureAll.md).[SAFARI_8](FeatureAll.md#safari_8)
1490
-
1491
- ___
1492
-
1493
1523
  ### SAFARI\_9
1494
1524
 
1495
1525
  • **SAFARI\_9**: [`PredefinedFeature`](PredefinedFeature.md)
@@ -1672,7 +1702,7 @@ JScrewIt.Feature.areEqual("DEFAULT", [])
1672
1702
 
1673
1703
  | Name | Type |
1674
1704
  | :------ | :------ |
1675
- | `...features` | ([`FeatureElement`](../README.md#featureelement) \| [`CompatibleFeatureArray`](../README.md#compatiblefeaturearray))[] |
1705
+ | `...features` | [`FeatureElementOrCompatibleArray`](../README.md#featureelementorcompatiblearray)[] |
1676
1706
 
1677
1707
  #### Returns
1678
1708
 
@@ -1709,7 +1739,7 @@ const newFeature = JScrewIt.Feature.commonOf("HTMLDOCUMENT", "DOCUMENT");
1709
1739
 
1710
1740
  | Name | Type |
1711
1741
  | :------ | :------ |
1712
- | `...features` | ([`FeatureElement`](../README.md#featureelement) \| [`CompatibleFeatureArray`](../README.md#compatiblefeaturearray))[] |
1742
+ | `...features` | [`FeatureElementOrCompatibleArray`](../README.md#featureelementorcompatiblearray)[] |
1713
1743
 
1714
1744
  #### Returns
1715
1745
 
@@ -81,7 +81,7 @@ Determines whether this feature object includes all of the specified features.
81
81
 
82
82
  | Name | Type |
83
83
  | :------ | :------ |
84
- | `...features` | ([`FeatureElement`](../README.md#featureelement) \| [`CompatibleFeatureArray`](../README.md#compatiblefeaturearray))[] |
84
+ | `...features` | [`FeatureElementOrCompatibleArray`](../README.md#featureelementorcompatiblearray)[] |
85
85
 
86
86
  #### Returns
87
87
 
package/lib/encode.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { CompatibleFeatureArray, FeatureElement } from './feature';
1
+ import { FeatureElementOrCompatibleArray } from './feature';
2
2
 
3
3
  export interface EncodeOptions
4
4
  {
@@ -9,7 +9,7 @@ export interface EncodeOptions
9
9
  * ensures maximum compatibility but also generates the largest code.
10
10
  * To generate shorter code, specify all features available in all target engines explicitly.
11
11
  */
12
- features?: FeatureElement | CompatibleFeatureArray;
12
+ features?: FeatureElementOrCompatibleArray;
13
13
 
14
14
  /**
15
15
  * This option controls the type of code generated from the given input.
@@ -52,7 +52,7 @@ export interface FeatureAll
52
52
  *
53
53
  * @remarks
54
54
  *
55
- * Available in Chrome 92+, Edge 92+, Firefox 90+, and Opera 78+.
55
+ * Available in Chrome, Edge, Firefox 90+, Opera, and Node.js 16.6+.
56
56
  */
57
57
  AT: ElementaryFeature;
58
58
 
@@ -61,11 +61,11 @@ export interface FeatureAll
61
61
  *
62
62
  * @remarks
63
63
  *
64
- * Available in Chrome, Edge, Firefox, Internet Explorer 10+, Safari, Opera, Android Browser, and Node.js 16+. This feature is not available inside web workers in Safari before 10.
64
+ * Available in Chrome, Edge, Firefox, Internet Explorer 10+, Safari, Opera, Android Browser, and Node.js 16.0+. This feature is not available inside web workers in Safari before 10.
65
65
  */
66
66
  ATOB: ElementaryFeature;
67
67
 
68
- /** All features available in the current engine. */
68
+ /** Features available in the current environment. */
69
69
  AUTO: PredefinedFeature;
70
70
 
71
71
  /**
@@ -100,25 +100,12 @@ export interface FeatureAll
100
100
  */
101
101
  CHROME: PredefinedFeature;
102
102
 
103
- /**
104
- * Features available in Chrome 86 to 91, Edge 86 to 91 and Opera 72 to 77.
105
- *
106
- * @remarks
107
- *
108
- * This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `CHROME_PREV` instead of `CHROME_86` for long term support.
109
- *
110
- * @see
111
- *
112
- * [Engine Support Policy](https://github.com/fasttime/JScrewIt#engine-support-policy)
113
- */
114
- CHROME_86: PredefinedFeature;
115
-
116
103
  /**
117
104
  * Features available in Chrome 92, Edge 92 and Opera 78 or later.
118
105
  *
119
106
  * @remarks
120
107
  *
121
- * This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `CHROME` instead of `CHROME_92` for long term support.
108
+ * This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `CHROME` or `CHROME_PREV` instead of `CHROME_92` for long term support.
122
109
  *
123
110
  * @see
124
111
  *
@@ -129,7 +116,7 @@ export interface FeatureAll
129
116
  /**
130
117
  * Features available in the previous to current versions of Chrome and Edge.
131
118
  *
132
- * An alias for `CHROME_86`.
119
+ * An alias for `CHROME_92`.
133
120
  */
134
121
  CHROME_PREV: PredefinedFeature;
135
122
 
@@ -242,7 +229,7 @@ export interface FeatureAll
242
229
  *
243
230
  * @remarks
244
231
  *
245
- * This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `FF_PREV` instead of `FF_83` for long term support.
232
+ * This feature may be replaced or removed in the near future when current browser versions become obsolete.
246
233
  *
247
234
  * @see
248
235
  *
@@ -255,7 +242,7 @@ export interface FeatureAll
255
242
  *
256
243
  * @remarks
257
244
  *
258
- * This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `FF` instead of `FF_90` for long term support.
245
+ * This feature may be replaced or removed in the near future when current browser versions become obsolete. Use `FF` or `FF_PREV` instead of `FF_90` for long term support.
259
246
  *
260
247
  * @see
261
248
  *
@@ -273,7 +260,7 @@ export interface FeatureAll
273
260
  /**
274
261
  * Features available in the previous to current version of Firefox.
275
262
  *
276
- * An alias for `FF_83`.
263
+ * An alias for `FF_90`.
277
264
  */
278
265
  FF_PREV: PredefinedFeature;
279
266
 
@@ -507,8 +494,11 @@ export interface FeatureAll
507
494
  /** Features available in Node.js 15. */
508
495
  NODE_15: PredefinedFeature;
509
496
 
510
- /** Features available in Node.js 16 or later. */
511
- NODE_16: PredefinedFeature;
497
+ /** Features available in Node.js 16.0 to 16.5. */
498
+ NODE_16_0: PredefinedFeature;
499
+
500
+ /** Features available in Node.js 16.6 or later. */
501
+ NODE_16_6: PredefinedFeature;
512
502
 
513
503
  /** Features available in Node.js 4. */
514
504
  NODE_4: PredefinedFeature;
@@ -556,6 +546,15 @@ export interface FeatureAll
556
546
  */
557
547
  NO_V8_SRC: ElementaryFeature;
558
548
 
549
+ /**
550
+ * Existence of the global function location.constructor whose string representation starts with "\[object L"
551
+ *
552
+ * @remarks
553
+ *
554
+ * Available in Internet Explorer and Safari before 10. This feature is not available inside web workers.
555
+ */
556
+ OBJECT_L_LOCATION_CTOR: ElementaryFeature;
557
+
559
558
  /**
560
559
  * Having the function Object.prototype.toString return the string "\[object Undefined\]" when invoked without a binding.
561
560
  *
@@ -565,6 +564,24 @@ export interface FeatureAll
565
564
  */
566
565
  OBJECT_UNDEFINED: ElementaryFeature;
567
566
 
567
+ /**
568
+ * The property that the string representation of the global object constructor starts with "\[object W"
569
+ *
570
+ * @remarks
571
+ *
572
+ * Available in Internet Explorer and Safari before 10. This feature is not available inside web workers in Safari before 10.
573
+ */
574
+ OBJECT_W_CTOR: ElementaryFeature;
575
+
576
+ /**
577
+ * Existence of the global object location.constructor whose string representation starts with "\[object " and ends with "LocationConstructor\]"
578
+ *
579
+ * @remarks
580
+ *
581
+ * Available in Safari before 10.
582
+ */
583
+ OLD_SAFARI_LOCATION_CTOR: ElementaryFeature;
584
+
568
585
  /**
569
586
  * Existence of the global object Intl having the string representation "\[object Object\]"
570
587
  *
@@ -611,9 +628,6 @@ export interface FeatureAll
611
628
  /** Features available in Safari 7.1 and Safari 8. */
612
629
  SAFARI_7_1: PredefinedFeature;
613
630
 
614
- /** An alias for `SAFARI_7_1`. */
615
- SAFARI_8: PredefinedFeature;
616
-
617
631
  /** Features available in Safari 9. */
618
632
  SAFARI_9: PredefinedFeature;
619
633
 
@@ -722,7 +736,10 @@ type ElementaryFeatureName =
722
736
  | 'NO_IE_SRC'
723
737
  | 'NO_OLD_SAFARI_ARRAY_ITERATOR'
724
738
  | 'NO_V8_SRC'
739
+ | 'OBJECT_L_LOCATION_CTOR'
725
740
  | 'OBJECT_UNDEFINED'
741
+ | 'OBJECT_W_CTOR'
742
+ | 'OLD_SAFARI_LOCATION_CTOR'
726
743
  | 'PLAIN_INTL'
727
744
  | 'REGEXP_STRING_ITERATOR'
728
745
  | 'SELF_OBJ'
@@ -741,7 +758,6 @@ ElementaryFeatureName
741
758
  | 'ANDRO_4_4'
742
759
  | 'AUTO'
743
760
  | 'BROWSER'
744
- | 'CHROME_86'
745
761
  | 'CHROME_92'
746
762
  | 'COMPACT'
747
763
  | 'DEFAULT'
@@ -759,7 +775,8 @@ ElementaryFeatureName
759
775
  | 'NODE_12'
760
776
  | 'NODE_13'
761
777
  | 'NODE_15'
762
- | 'NODE_16'
778
+ | 'NODE_16_0'
779
+ | 'NODE_16_6'
763
780
  | 'NODE_4'
764
781
  | 'NODE_5'
765
782
  | 'SAFARI_10'