jscrewit 2.41.0 → 3.1.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/Features.md +49 -182
- package/{readme.md → README.md} +32 -30
- package/api-doc/JScrewIt/namespaces/EncodeOptions/README.md +9 -0
- package/api-doc/{type-aliases → JScrewIt/namespaces/EncodeOptions/type-aliases}/RunAs.md +3 -2
- package/api-doc/README.md +5 -4
- package/api-doc/interfaces/CustomFeature.md +3 -3
- package/api-doc/interfaces/ElementaryFeature.md +2 -2
- package/api-doc/interfaces/{encode.md → EncodeInterface.md} +2 -2
- package/api-doc/interfaces/EncodeOptions.md +4 -4
- package/api-doc/interfaces/Feature.md +3 -3
- package/api-doc/interfaces/FeatureAll.md +75 -585
- package/api-doc/interfaces/FeatureConstructor.md +103 -824
- package/api-doc/interfaces/PredefinedFeature.md +2 -2
- package/api-doc/interfaces/default.md +1 -1
- package/api-doc/type-aliases/ElementaryFeatureName.md +1 -1
- package/api-doc/type-aliases/PredefinedFeatureName.md +1 -1
- package/lib/encode.d.ts +12 -10
- package/lib/feature-all.d.ts +91 -435
- package/lib/feature.d.ts +20 -22
- package/lib/jscrewit.d.ts +6 -6
- package/lib/jscrewit.js +776 -2447
- package/lib/jscrewit.min.js +2 -2
- package/package.json +6 -3
- package/screw.js +87 -103
- package/tools/cli.js +84 -158
- package/tools/time-utils.js +10 -26
- package/ui/ui.js +1 -1
- package/api-doc/variables/Feature.md +0 -7
- package/api-doc/variables/encode.md +0 -7
- package/tools/text-utils.js +0 -37
- /package/{license.txt → LICENSE.txt} +0 -0
package/Features.md
CHANGED
|
@@ -9,46 +9,28 @@ This table lists features available in the most common engines.
|
|
|
9
9
|
<td>Chrome 122+, Edge 122+, Opera 108+</td>
|
|
10
10
|
<td>
|
|
11
11
|
<ul>
|
|
12
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
13
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ANY_WINDOW"><code>ANY_WINDOW</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>)
|
|
14
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ARRAY_ITERATOR"><code>ARRAY_ITERATOR</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#NO_OLD_SAFARI_ARRAY_ITERATOR"><code>NO_OLD_SAFARI_ARRAY_ITERATOR</code></a>)
|
|
12
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#ARRAY_ITERATOR"><code>ARRAY_ITERATOR</code></a>
|
|
15
13
|
<li><a href="api-doc/interfaces/FeatureAll.md#ARROW"><code>ARROW</code></a>
|
|
16
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ASYNC_FUNCTION"><code>ASYNC_FUNCTION</code></a>
|
|
17
14
|
<li><a href="api-doc/interfaces/FeatureAll.md#AT"><code>AT</code></a>
|
|
18
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ATOB"><code>ATOB</code></a>
|
|
19
15
|
<li><a href="api-doc/interfaces/FeatureAll.md#BARPROP"><code>BARPROP</code></a>
|
|
20
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
21
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
22
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_REGEXP_LF"><code>ESC_REGEXP_LF</code></a>
|
|
23
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_REGEXP_SLASH"><code>ESC_REGEXP_SLASH</code></a>
|
|
24
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#FILL"><code>FILL</code></a>
|
|
16
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#DOCUMENT"><code>DOCUMENT</code></a>
|
|
17
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_QUOT"><code>ESC_HTML_QUOT</code></a>
|
|
25
18
|
<li><a href="api-doc/interfaces/FeatureAll.md#FLAT"><code>FLAT</code></a>
|
|
26
19
|
<li><a href="api-doc/interfaces/FeatureAll.md#FROM_CODE_POINT"><code>FROM_CODE_POINT</code></a>
|
|
27
20
|
<li><a href="api-doc/interfaces/FeatureAll.md#FUNCTION_19_LF"><code>FUNCTION_19_LF</code></a>
|
|
28
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GENERIC_ARRAY_TO_STRING"><code>GENERIC_ARRAY_TO_STRING</code></a>
|
|
29
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GLOBAL_UNDEFINED"><code>GLOBAL_UNDEFINED</code></a>
|
|
30
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GMT"><code>GMT</code></a>
|
|
31
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#HISTORY"><code>HISTORY</code></a>
|
|
32
21
|
<li><a href="api-doc/interfaces/FeatureAll.md#INCR_CHAR"><code>INCR_CHAR</code></a>
|
|
33
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#INTL"><code>INTL</code></a>
|
|
34
22
|
<li><a href="api-doc/interfaces/FeatureAll.md#ITERATOR_HELPER"><code>ITERATOR_HELPER</code></a>
|
|
35
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#JAPANESE_INFINITY"><code>JAPANESE_INFINITY</code></a>
|
|
36
23
|
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_INFINITY"><code>LOCALE_INFINITY</code></a>
|
|
37
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS"><code>LOCALE_NUMERALS</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_EXT"><code>LOCALE_NUMERALS_EXT</code></a>)
|
|
38
24
|
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_BN"><code>LOCALE_NUMERALS_BN</code></a>
|
|
39
25
|
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_EXT"><code>LOCALE_NUMERALS_EXT</code></a>
|
|
40
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCATION"><code>LOCATION</code></a>
|
|
41
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#MOZILLA"><code>MOZILLA</code></a>
|
|
42
26
|
<li><a href="api-doc/interfaces/FeatureAll.md#NAME"><code>NAME</code></a>
|
|
43
27
|
<li><a href="api-doc/interfaces/FeatureAll.md#NO_FF_SRC"><code>NO_FF_SRC</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#V8_SRC"><code>V8_SRC</code></a>)
|
|
44
28
|
<li><a href="api-doc/interfaces/FeatureAll.md#NO_IE_SRC"><code>NO_IE_SRC</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#V8_SRC"><code>V8_SRC</code></a>)
|
|
45
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#NO_OLD_SAFARI_ARRAY_ITERATOR"><code>NO_OLD_SAFARI_ARRAY_ITERATOR</code></a>
|
|
46
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_UNDEFINED"><code>OBJECT_UNDEFINED</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#GLOBAL_UNDEFINED"><code>GLOBAL_UNDEFINED</code></a>)
|
|
47
29
|
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_W_SELF"><code>OBJECT_W_SELF</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>)
|
|
48
30
|
<li><a href="api-doc/interfaces/FeatureAll.md#REGEXP_STRING_ITERATOR"><code>REGEXP_STRING_ITERATOR</code></a>
|
|
49
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
31
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#RUSSIAN_INFINITY"><code>RUSSIAN_INFINITY</code></a>
|
|
32
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#SELF"><code>SELF</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#OBJECT_W_SELF"><code>OBJECT_W_SELF</code></a> and <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>)
|
|
50
33
|
<li><a href="api-doc/interfaces/FeatureAll.md#STATUS"><code>STATUS</code></a>
|
|
51
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#UNDEFINED"><code>UNDEFINED</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#GLOBAL_UNDEFINED"><code>GLOBAL_UNDEFINED</code></a> and <a href="api-doc/interfaces/FeatureAll.md#OBJECT_UNDEFINED"><code>OBJECT_UNDEFINED</code></a>)
|
|
52
34
|
<li><a href="api-doc/interfaces/FeatureAll.md#V8_SRC"><code>V8_SRC</code></a>
|
|
53
35
|
<li><a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>
|
|
54
36
|
</ul>
|
|
@@ -58,231 +40,116 @@ This table lists features available in the most common engines.
|
|
|
58
40
|
<td>Firefox 90+</td>
|
|
59
41
|
<td>
|
|
60
42
|
<ul>
|
|
61
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
62
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ANY_WINDOW"><code>ANY_WINDOW</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>)
|
|
63
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ARRAY_ITERATOR"><code>ARRAY_ITERATOR</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#NO_OLD_SAFARI_ARRAY_ITERATOR"><code>NO_OLD_SAFARI_ARRAY_ITERATOR</code></a>)
|
|
43
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#ARRAY_ITERATOR"><code>ARRAY_ITERATOR</code></a>
|
|
64
44
|
<li><a href="api-doc/interfaces/FeatureAll.md#ARROW"><code>ARROW</code></a>
|
|
65
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ASYNC_FUNCTION"><code>ASYNC_FUNCTION</code></a>
|
|
66
45
|
<li><a href="api-doc/interfaces/FeatureAll.md#AT"><code>AT</code></a>
|
|
67
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ATOB"><code>ATOB</code></a>
|
|
68
46
|
<li><a href="api-doc/interfaces/FeatureAll.md#BARPROP"><code>BARPROP</code></a>
|
|
69
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
70
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
71
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_REGEXP_LF"><code>ESC_REGEXP_LF</code></a>
|
|
72
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_REGEXP_SLASH"><code>ESC_REGEXP_SLASH</code></a>
|
|
47
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#DOCUMENT"><code>DOCUMENT</code></a>
|
|
48
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_QUOT"><code>ESC_HTML_QUOT</code></a>
|
|
73
49
|
<li><a href="api-doc/interfaces/FeatureAll.md#FF_SRC"><code>FF_SRC</code></a>
|
|
74
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#FILL"><code>FILL</code></a>
|
|
75
50
|
<li><a href="api-doc/interfaces/FeatureAll.md#FLAT"><code>FLAT</code></a>
|
|
76
51
|
<li><a href="api-doc/interfaces/FeatureAll.md#FROM_CODE_POINT"><code>FROM_CODE_POINT</code></a>
|
|
77
52
|
<li><a href="api-doc/interfaces/FeatureAll.md#FUNCTION_19_LF"><code>FUNCTION_19_LF</code></a>
|
|
78
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GENERIC_ARRAY_TO_STRING"><code>GENERIC_ARRAY_TO_STRING</code></a>
|
|
79
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GLOBAL_UNDEFINED"><code>GLOBAL_UNDEFINED</code></a>
|
|
80
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GMT"><code>GMT</code></a>
|
|
81
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#HISTORY"><code>HISTORY</code></a>
|
|
82
53
|
<li><a href="api-doc/interfaces/FeatureAll.md#INCR_CHAR"><code>INCR_CHAR</code></a>
|
|
83
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#INTL"><code>INTL</code></a>
|
|
84
54
|
<li><a href="api-doc/interfaces/FeatureAll.md#ITERATOR_HELPER"><code>ITERATOR_HELPER</code></a> (Firefox 131+)
|
|
85
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#JAPANESE_INFINITY"><code>JAPANESE_INFINITY</code></a>
|
|
86
55
|
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_INFINITY"><code>LOCALE_INFINITY</code></a>
|
|
87
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS"><code>LOCALE_NUMERALS</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_EXT"><code>LOCALE_NUMERALS_EXT</code></a> and <a href="api-doc/interfaces/FeatureAll.md#SHORT_LOCALES"><code>SHORT_LOCALES</code></a>)
|
|
88
56
|
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_BN"><code>LOCALE_NUMERALS_BN</code></a>
|
|
89
57
|
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_EXT"><code>LOCALE_NUMERALS_EXT</code></a>
|
|
90
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCATION"><code>LOCATION</code></a>
|
|
91
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#MOZILLA"><code>MOZILLA</code></a>
|
|
92
58
|
<li><a href="api-doc/interfaces/FeatureAll.md#NAME"><code>NAME</code></a>
|
|
93
59
|
<li><a href="api-doc/interfaces/FeatureAll.md#NO_IE_SRC"><code>NO_IE_SRC</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#FF_SRC"><code>FF_SRC</code></a>)
|
|
94
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#NO_OLD_SAFARI_ARRAY_ITERATOR"><code>NO_OLD_SAFARI_ARRAY_ITERATOR</code></a>
|
|
95
60
|
<li><a href="api-doc/interfaces/FeatureAll.md#NO_V8_SRC"><code>NO_V8_SRC</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#FF_SRC"><code>FF_SRC</code></a>)
|
|
96
61
|
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_ARRAY_ENTRIES_CTOR"><code>OBJECT_ARRAY_ENTRIES_CTOR</code></a> (not in Firefox 131+)
|
|
97
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_UNDEFINED"><code>OBJECT_UNDEFINED</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#GLOBAL_UNDEFINED"><code>GLOBAL_UNDEFINED</code></a>)
|
|
98
62
|
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_W_SELF"><code>OBJECT_W_SELF</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>)
|
|
99
63
|
<li><a href="api-doc/interfaces/FeatureAll.md#REGEXP_STRING_ITERATOR"><code>REGEXP_STRING_ITERATOR</code></a>
|
|
100
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
64
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#RUSSIAN_INFINITY"><code>RUSSIAN_INFINITY</code></a>
|
|
65
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#SELF"><code>SELF</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#OBJECT_W_SELF"><code>OBJECT_W_SELF</code></a> and <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>)
|
|
101
66
|
<li><a href="api-doc/interfaces/FeatureAll.md#SHORT_LOCALES"><code>SHORT_LOCALES</code></a> (not in Firefox 134+)
|
|
102
67
|
<li><a href="api-doc/interfaces/FeatureAll.md#STATUS"><code>STATUS</code></a>
|
|
103
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#UNDEFINED"><code>UNDEFINED</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#GLOBAL_UNDEFINED"><code>GLOBAL_UNDEFINED</code></a> and <a href="api-doc/interfaces/FeatureAll.md#OBJECT_UNDEFINED"><code>OBJECT_UNDEFINED</code></a>)
|
|
104
68
|
<li><a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>
|
|
105
69
|
</ul>
|
|
106
70
|
</td>
|
|
107
71
|
</tr>
|
|
108
72
|
<tr>
|
|
109
|
-
<td>Internet Explorer
|
|
73
|
+
<td>Internet Explorer 11</td>
|
|
110
74
|
<td>
|
|
111
75
|
<ul>
|
|
112
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ANY_DOCUMENT"><code>ANY_DOCUMENT</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#DOCUMENT"><code>DOCUMENT</code></a>)
|
|
113
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ANY_WINDOW"><code>ANY_WINDOW</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>)
|
|
114
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ATOB"><code>ATOB</code></a> (Internet Explorer 10+)
|
|
115
76
|
<li><a href="api-doc/interfaces/FeatureAll.md#CAPITAL_HTML"><code>CAPITAL_HTML</code></a>
|
|
116
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#CONSOLE"><code>CONSOLE</code></a>
|
|
117
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#DOCUMENT"><code>DOCUMENT</code></a>
|
|
118
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_REGEXP_LF"><code>ESC_REGEXP_LF</code></a>
|
|
119
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_REGEXP_SLASH"><code>ESC_REGEXP_SLASH</code></a>
|
|
77
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#CONSOLE"><code>CONSOLE</code></a>
|
|
78
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#DOCUMENT"><code>DOCUMENT</code></a>
|
|
120
79
|
<li><a href="api-doc/interfaces/FeatureAll.md#FUNCTION_22_LF"><code>FUNCTION_22_LF</code></a>
|
|
121
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GENERIC_ARRAY_TO_STRING"><code>GENERIC_ARRAY_TO_STRING</code></a>
|
|
122
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GMT"><code>GMT</code></a> (Internet Explorer 11)
|
|
123
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#HISTORY"><code>HISTORY</code></a>
|
|
124
80
|
<li><a href="api-doc/interfaces/FeatureAll.md#IE_SRC"><code>IE_SRC</code></a>
|
|
125
81
|
<li><a href="api-doc/interfaces/FeatureAll.md#INCR_CHAR"><code>INCR_CHAR</code></a>
|
|
126
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#INTL"><code>INTL</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#PLAIN_INTL"><code>PLAIN_INTL</code></a>; Internet Explorer 11)
|
|
127
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#JAPANESE_INFINITY"><code>JAPANESE_INFINITY</code></a> (Internet Explorer 11)
|
|
128
82
|
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_INFINITY"><code>LOCALE_INFINITY</code></a> (Internet Explorer 11 on Windows 10)
|
|
129
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS"><code>LOCALE_NUMERALS</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_EXT"><code>LOCALE_NUMERALS_EXT</code></a> and <a href="api-doc/interfaces/FeatureAll.md#SHORT_LOCALES"><code>SHORT_LOCALES</code></a>; Internet Explorer 11)
|
|
130
83
|
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_BN"><code>LOCALE_NUMERALS_BN</code></a> (Internet Explorer 11 on Windows 10)
|
|
131
84
|
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_EXT"><code>LOCALE_NUMERALS_EXT</code></a> (Internet Explorer 11 on Windows 10)
|
|
132
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#MOZILLA"><code>MOZILLA</code></a>
|
|
133
85
|
<li><a href="api-doc/interfaces/FeatureAll.md#NO_FF_SRC"><code>NO_FF_SRC</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#IE_SRC"><code>IE_SRC</code></a>)
|
|
134
86
|
<li><a href="api-doc/interfaces/FeatureAll.md#NO_V8_SRC"><code>NO_V8_SRC</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#IE_SRC"><code>IE_SRC</code></a>)
|
|
135
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_L_LOCATION_CTOR"><code>OBJECT_L_LOCATION_CTOR</code></a>
|
|
136
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_UNDEFINED"><code>OBJECT_UNDEFINED</code></a> (Internet Explorer 10+)
|
|
137
87
|
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_W_SELF"><code>OBJECT_W_SELF</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>)
|
|
138
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#PLAIN_INTL"><code>PLAIN_INTL</code></a>
|
|
139
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
140
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
88
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#PLAIN_INTL"><code>PLAIN_INTL</code></a>
|
|
89
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#RUSSIAN_INFINITY"><code>RUSSIAN_INFINITY</code></a> (Internet Explorer 11 on Windows 8 and on Windows 10)
|
|
90
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#SELF"><code>SELF</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#OBJECT_W_SELF"><code>OBJECT_W_SELF</code></a> and <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>)
|
|
91
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#SHORT_LOCALES"><code>SHORT_LOCALES</code></a>
|
|
141
92
|
<li><a href="api-doc/interfaces/FeatureAll.md#STATUS"><code>STATUS</code></a>
|
|
142
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#UNDEFINED"><code>UNDEFINED</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#OBJECT_UNDEFINED"><code>OBJECT_UNDEFINED</code></a>)
|
|
143
93
|
<li><a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>
|
|
144
94
|
</ul>
|
|
145
95
|
</td>
|
|
146
96
|
</tr>
|
|
147
97
|
<tr>
|
|
148
|
-
<td>Safari
|
|
98
|
+
<td>Safari 17.4+</td>
|
|
149
99
|
<td>
|
|
150
100
|
<ul>
|
|
151
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
152
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
153
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
154
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ARROW"><code>ARROW</code></a> (Safari 10.0+)
|
|
155
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ASYNC_FUNCTION"><code>ASYNC_FUNCTION</code></a> (Safari 10.1+)
|
|
156
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#AT"><code>AT</code></a> (Safari 15.4+)
|
|
157
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ATOB"><code>ATOB</code></a>
|
|
101
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#ARRAY_ITERATOR"><code>ARRAY_ITERATOR</code></a>
|
|
102
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#ARROW"><code>ARROW</code></a>
|
|
103
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#AT"><code>AT</code></a>
|
|
158
104
|
<li><a href="api-doc/interfaces/FeatureAll.md#BARPROP"><code>BARPROP</code></a>
|
|
159
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
160
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_QUOT"><code>ESC_HTML_QUOT</code></a>
|
|
161
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_QUOT_ONLY"><code>ESC_HTML_QUOT_ONLY</code></a>
|
|
162
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_REGEXP_LF"><code>ESC_REGEXP_LF</code></a>
|
|
163
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_REGEXP_SLASH"><code>ESC_REGEXP_SLASH</code></a>
|
|
105
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#DOCUMENT"><code>DOCUMENT</code></a>
|
|
106
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_QUOT"><code>ESC_HTML_QUOT</code></a>
|
|
164
107
|
<li><a href="api-doc/interfaces/FeatureAll.md#FF_SRC"><code>FF_SRC</code></a>
|
|
165
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
166
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
167
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
168
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#FUNCTION_19_LF"><code>FUNCTION_19_LF</code></a> (Safari 17.4+)
|
|
169
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#FUNCTION_22_LF"><code>FUNCTION_22_LF</code></a> (Safari 9+, not in Safari 17.4+)
|
|
170
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GENERIC_ARRAY_TO_STRING"><code>GENERIC_ARRAY_TO_STRING</code></a>
|
|
171
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GLOBAL_UNDEFINED"><code>GLOBAL_UNDEFINED</code></a>
|
|
172
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GMT"><code>GMT</code></a>
|
|
173
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#HISTORY"><code>HISTORY</code></a>
|
|
108
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#FLAT"><code>FLAT</code></a>
|
|
109
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#FROM_CODE_POINT"><code>FROM_CODE_POINT</code></a>
|
|
110
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#FUNCTION_19_LF"><code>FUNCTION_19_LF</code></a>
|
|
174
111
|
<li><a href="api-doc/interfaces/FeatureAll.md#INCR_CHAR"><code>INCR_CHAR</code></a>
|
|
175
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#INTL"><code>INTL</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#PLAIN_INTL"><code>PLAIN_INTL</code></a>; Safari 10.0+)
|
|
176
112
|
<li><a href="api-doc/interfaces/FeatureAll.md#ITERATOR_HELPER"><code>ITERATOR_HELPER</code></a> (Safari 18.4+)
|
|
177
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
178
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
179
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
180
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_BN"><code>LOCALE_NUMERALS_BN</code></a> (Safari 10.0+, not in Safari 18.4+)
|
|
181
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_EXT"><code>LOCALE_NUMERALS_EXT</code></a> (Safari 10.0+)
|
|
182
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCATION"><code>LOCATION</code></a>
|
|
183
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#MOZILLA"><code>MOZILLA</code></a>
|
|
113
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_INFINITY"><code>LOCALE_INFINITY</code></a>
|
|
114
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_BN"><code>LOCALE_NUMERALS_BN</code></a> (not in Safari 18.4+)
|
|
115
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_EXT"><code>LOCALE_NUMERALS_EXT</code></a>
|
|
184
116
|
<li><a href="api-doc/interfaces/FeatureAll.md#NAME"><code>NAME</code></a>
|
|
185
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#NODECONSTRUCTOR"><code>NODECONSTRUCTOR</code></a> (not in Safari 10.0+)
|
|
186
117
|
<li><a href="api-doc/interfaces/FeatureAll.md#NO_IE_SRC"><code>NO_IE_SRC</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#FF_SRC"><code>FF_SRC</code></a>)
|
|
187
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#NO_OLD_SAFARI_ARRAY_ITERATOR"><code>NO_OLD_SAFARI_ARRAY_ITERATOR</code></a> (Safari 9+)
|
|
188
118
|
<li><a href="api-doc/interfaces/FeatureAll.md#NO_V8_SRC"><code>NO_V8_SRC</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#FF_SRC"><code>FF_SRC</code></a>)
|
|
189
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_ARRAY_ENTRIES_CTOR"><code>OBJECT_ARRAY_ENTRIES_CTOR</code></a> (
|
|
190
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_L_LOCATION_CTOR"><code>OBJECT_L_LOCATION_CTOR</code></a> (not in Safari 10.0+)
|
|
191
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_UNDEFINED"><code>OBJECT_UNDEFINED</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#GLOBAL_UNDEFINED"><code>GLOBAL_UNDEFINED</code></a>)
|
|
119
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_ARRAY_ENTRIES_CTOR"><code>OBJECT_ARRAY_ENTRIES_CTOR</code></a> (not in Safari 18.4+)
|
|
192
120
|
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_W_SELF"><code>OBJECT_W_SELF</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>)
|
|
193
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
194
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
195
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
196
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
197
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#SHORT_LOCALES"><code>SHORT_LOCALES</code></a> (Safari 10.0+, not in Safari 18.0+)
|
|
121
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#REGEXP_STRING_ITERATOR"><code>REGEXP_STRING_ITERATOR</code></a>
|
|
122
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#RUSSIAN_INFINITY"><code>RUSSIAN_INFINITY</code></a>
|
|
123
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#SELF"><code>SELF</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#OBJECT_W_SELF"><code>OBJECT_W_SELF</code></a> and <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>)
|
|
124
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#SHORT_LOCALES"><code>SHORT_LOCALES</code></a> (not in Safari 18.0+)
|
|
198
125
|
<li><a href="api-doc/interfaces/FeatureAll.md#STATUS"><code>STATUS</code></a>
|
|
199
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#UNDEFINED"><code>UNDEFINED</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#GLOBAL_UNDEFINED"><code>GLOBAL_UNDEFINED</code></a> and <a href="api-doc/interfaces/FeatureAll.md#OBJECT_UNDEFINED"><code>OBJECT_UNDEFINED</code></a>)
|
|
200
126
|
<li><a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>
|
|
201
127
|
</ul>
|
|
202
128
|
</td>
|
|
203
129
|
</tr>
|
|
204
130
|
<tr>
|
|
205
|
-
<td>
|
|
131
|
+
<td>Node.js 20+</td>
|
|
206
132
|
<td>
|
|
207
133
|
<ul>
|
|
208
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
209
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
210
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
211
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
212
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
213
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
214
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
215
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_ALL"><code>ESC_HTML_ALL</code></a>
|
|
216
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_QUOT"><code>ESC_HTML_QUOT</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_ALL"><code>ESC_HTML_ALL</code></a>)
|
|
217
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#FUNCTION_22_LF"><code>FUNCTION_22_LF</code></a>
|
|
218
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GENERIC_ARRAY_TO_STRING"><code>GENERIC_ARRAY_TO_STRING</code></a> (Android Browser 4.1+)
|
|
219
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GMT"><code>GMT</code></a>
|
|
220
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#HISTORY"><code>HISTORY</code></a>
|
|
221
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#HTMLAUDIOELEMENT"><code>HTMLAUDIOELEMENT</code></a> (Android Browser 4.4)
|
|
222
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#INCR_CHAR"><code>INCR_CHAR</code></a>
|
|
223
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#INTL"><code>INTL</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#PLAIN_INTL"><code>PLAIN_INTL</code></a>; Android Browser 4.4)
|
|
224
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#JAPANESE_INFINITY"><code>JAPANESE_INFINITY</code></a> (Android Browser 4.4)
|
|
225
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_INFINITY"><code>LOCALE_INFINITY</code></a> (Android Browser 4.4)
|
|
226
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS"><code>LOCALE_NUMERALS</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_EXT"><code>LOCALE_NUMERALS_EXT</code></a> and <a href="api-doc/interfaces/FeatureAll.md#SHORT_LOCALES"><code>SHORT_LOCALES</code></a>; Android Browser 4.4)
|
|
227
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_BN"><code>LOCALE_NUMERALS_BN</code></a> (Android Browser 4.4)
|
|
228
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_EXT"><code>LOCALE_NUMERALS_EXT</code></a> (Android Browser 4.4)
|
|
229
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCATION"><code>LOCATION</code></a>
|
|
230
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#MOZILLA"><code>MOZILLA</code></a>
|
|
231
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#NAME"><code>NAME</code></a>
|
|
232
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#NO_FF_SRC"><code>NO_FF_SRC</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#V8_SRC"><code>V8_SRC</code></a>)
|
|
233
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#NO_IE_SRC"><code>NO_IE_SRC</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#HTMLAUDIOELEMENT"><code>HTMLAUDIOELEMENT</code></a> and <a href="api-doc/interfaces/FeatureAll.md#V8_SRC"><code>V8_SRC</code></a>)
|
|
234
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_UNDEFINED"><code>OBJECT_UNDEFINED</code></a> (Android Browser 4.1+)
|
|
235
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_W_SELF"><code>OBJECT_W_SELF</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>; Android Browser 4.4)
|
|
236
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#PLAIN_INTL"><code>PLAIN_INTL</code></a> (Android Browser 4.4)
|
|
237
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#SELF_OBJ"><code>SELF_OBJ</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#ANY_WINDOW"><code>ANY_WINDOW</code></a>, <a href="api-doc/interfaces/FeatureAll.md#DOMWINDOW"><code>DOMWINDOW</code></a>, <a href="api-doc/interfaces/FeatureAll.md#OBJECT_W_SELF"><code>OBJECT_W_SELF</code></a>, and <a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a>)
|
|
238
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#SHORT_LOCALES"><code>SHORT_LOCALES</code></a> (Android Browser 4.4)
|
|
239
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#STATUS"><code>STATUS</code></a>
|
|
240
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#UNDEFINED"><code>UNDEFINED</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#OBJECT_UNDEFINED"><code>OBJECT_UNDEFINED</code></a>; Android Browser 4.1+)
|
|
241
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#V8_SRC"><code>V8_SRC</code></a>
|
|
242
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#WINDOW"><code>WINDOW</code></a> (Android Browser 4.4)
|
|
243
|
-
</ul>
|
|
244
|
-
</td>
|
|
245
|
-
</tr>
|
|
246
|
-
<tr>
|
|
247
|
-
<td>Node.js 0.10+</td>
|
|
248
|
-
<td>
|
|
249
|
-
<ul>
|
|
250
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ARRAY_ITERATOR"><code>ARRAY_ITERATOR</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#NO_OLD_SAFARI_ARRAY_ITERATOR"><code>NO_OLD_SAFARI_ARRAY_ITERATOR</code></a>; Node.js 0.12+)
|
|
251
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ARROW"><code>ARROW</code></a> (Node.js 4+)
|
|
252
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ASYNC_FUNCTION"><code>ASYNC_FUNCTION</code></a> (Node.js 7.6+)
|
|
253
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#AT"><code>AT</code></a> (Node.js 16.6+)
|
|
254
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ATOB"><code>ATOB</code></a> (Node.js 16.0+)
|
|
255
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_ALL"><code>ESC_HTML_ALL</code></a> (not in Node.js 0.12+)
|
|
256
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_QUOT"><code>ESC_HTML_QUOT</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_ALL"><code>ESC_HTML_ALL</code></a> and <a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_QUOT_ONLY"><code>ESC_HTML_QUOT_ONLY</code></a>)
|
|
257
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_QUOT_ONLY"><code>ESC_HTML_QUOT_ONLY</code></a> (Node.js 0.12+)
|
|
258
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_REGEXP_LF"><code>ESC_REGEXP_LF</code></a> (Node.js 12+)
|
|
259
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_REGEXP_SLASH"><code>ESC_REGEXP_SLASH</code></a> (Node.js 4+)
|
|
260
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#FILL"><code>FILL</code></a> (Node.js 4+)
|
|
261
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#FLAT"><code>FLAT</code></a> (Node.js 11+)
|
|
262
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#FROM_CODE_POINT"><code>FROM_CODE_POINT</code></a> (Node.js 4+)
|
|
263
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#FUNCTION_19_LF"><code>FUNCTION_19_LF</code></a> (Node.js 10+)
|
|
264
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#FUNCTION_22_LF"><code>FUNCTION_22_LF</code></a> (not in Node.js 10+)
|
|
265
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GENERIC_ARRAY_TO_STRING"><code>GENERIC_ARRAY_TO_STRING</code></a>
|
|
266
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GLOBAL_UNDEFINED"><code>GLOBAL_UNDEFINED</code></a>
|
|
267
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#GMT"><code>GMT</code></a>
|
|
134
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#ARRAY_ITERATOR"><code>ARRAY_ITERATOR</code></a>
|
|
135
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#ARROW"><code>ARROW</code></a>
|
|
136
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#AT"><code>AT</code></a>
|
|
137
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#ESC_HTML_QUOT"><code>ESC_HTML_QUOT</code></a>
|
|
138
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#FLAT"><code>FLAT</code></a>
|
|
139
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#FROM_CODE_POINT"><code>FROM_CODE_POINT</code></a>
|
|
140
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#FUNCTION_19_LF"><code>FUNCTION_19_LF</code></a>
|
|
268
141
|
<li><a href="api-doc/interfaces/FeatureAll.md#INCR_CHAR"><code>INCR_CHAR</code></a>
|
|
269
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#INTL"><code>INTL</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#PLAIN_INTL"><code>PLAIN_INTL</code></a>; Node.js 0.12+)
|
|
270
142
|
<li><a href="api-doc/interfaces/FeatureAll.md#ITERATOR_HELPER"><code>ITERATOR_HELPER</code></a> (Node.js 22.0+)
|
|
271
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
272
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
273
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
274
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_BN"><code>LOCALE_NUMERALS_BN</code></a> (Node.js 13+)
|
|
275
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_EXT"><code>LOCALE_NUMERALS_EXT</code></a> (Node.js 13+)
|
|
143
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_INFINITY"><code>LOCALE_INFINITY</code></a>
|
|
144
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_BN"><code>LOCALE_NUMERALS_BN</code></a>
|
|
145
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#LOCALE_NUMERALS_EXT"><code>LOCALE_NUMERALS_EXT</code></a>
|
|
276
146
|
<li><a href="api-doc/interfaces/FeatureAll.md#NAME"><code>NAME</code></a>
|
|
277
147
|
<li><a href="api-doc/interfaces/FeatureAll.md#NO_FF_SRC"><code>NO_FF_SRC</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#V8_SRC"><code>V8_SRC</code></a>)
|
|
278
148
|
<li><a href="api-doc/interfaces/FeatureAll.md#NO_IE_SRC"><code>NO_IE_SRC</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#V8_SRC"><code>V8_SRC</code></a>)
|
|
279
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
280
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
281
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
282
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#
|
|
283
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#REGEXP_STRING_ITERATOR"><code>REGEXP_STRING_ITERATOR</code></a> (Node.js 12+)
|
|
284
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#SHORT_LOCALES"><code>SHORT_LOCALES</code></a> (Node.js 13+, not in Node.js 22.12–22.14 and 23.3+)
|
|
285
|
-
<li><a href="api-doc/interfaces/FeatureAll.md#UNDEFINED"><code>UNDEFINED</code></a> (implied by <a href="api-doc/interfaces/FeatureAll.md#GLOBAL_UNDEFINED"><code>GLOBAL_UNDEFINED</code></a> and <a href="api-doc/interfaces/FeatureAll.md#OBJECT_UNDEFINED"><code>OBJECT_UNDEFINED</code></a>)
|
|
149
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#OBJECT_ARRAY_ENTRIES_CTOR"><code>OBJECT_ARRAY_ENTRIES_CTOR</code></a> (not in Node.js 22.0+)
|
|
150
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#REGEXP_STRING_ITERATOR"><code>REGEXP_STRING_ITERATOR</code></a>
|
|
151
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#RUSSIAN_INFINITY"><code>RUSSIAN_INFINITY</code></a>
|
|
152
|
+
<li><a href="api-doc/interfaces/FeatureAll.md#SHORT_LOCALES"><code>SHORT_LOCALES</code></a> (not in Node.js 22.12–22.14 and 23.3+)
|
|
286
153
|
<li><a href="api-doc/interfaces/FeatureAll.md#V8_SRC"><code>V8_SRC</code></a>
|
|
287
154
|
</ul>
|
|
288
155
|
</td>
|
package/{readme.md → README.md}
RENAMED
|
@@ -6,7 +6,7 @@ JSFuck is an encoding technique that uses only the six characters `!` `(` `)` `+
|
|
|
6
6
|
syntactically correct JavaScript that can still run in a browser or another JavaScript engine
|
|
7
7
|
without any additional software.
|
|
8
8
|
|
|
9
|
-
Play now with [**jscrew.it**](https://jscrew.it), or
|
|
9
|
+
Play now with [**jscrew.it**](https://jscrew.it), or take a look at
|
|
10
10
|
[jQuery *Screwed*](https://github.com/fasttime/jquery-screwed) for a true example: a working version
|
|
11
11
|
of jQuery consisting of only six different characters.
|
|
12
12
|
|
|
@@ -56,7 +56,7 @@ The following source will do an `alert(1)` in any browser, including Internet Ex
|
|
|
56
56
|
To use JScrewIt in your project, download
|
|
57
57
|
[jscrewit.js](https://cdn.jsdelivr.net/npm/jscrewit/lib/jscrewit.js) (uncompressed, development
|
|
58
58
|
version) or
|
|
59
|
-
[jscrewit.min.js](https://cdn.jsdelivr.net/npm/jscrewit/lib/jscrewit.min.js) (compressed,
|
|
59
|
+
[jscrewit.min.js](https://cdn.jsdelivr.net/npm/jscrewit/lib/jscrewit.min.js) (compressed, production
|
|
60
60
|
version) from npm and include it in your HTML file.
|
|
61
61
|
|
|
62
62
|
```html
|
|
@@ -111,7 +111,7 @@ const input = eval(output); // input contains the string "Hello, world!".
|
|
|
111
111
|
|
|
112
112
|
We can also use escape sequences to encode newlines and other characters.
|
|
113
113
|
Note that the initial backslash in an escape sequence must be escaped with another backslash when
|
|
114
|
-
writing a "
|
|
114
|
+
writing a "string in a string".
|
|
115
115
|
|
|
116
116
|
|
|
117
117
|
```js
|
|
@@ -125,7 +125,7 @@ const output = JScrewIt.encode("\"1.\\n2.\\n\\u263A\"");
|
|
|
125
125
|
|
|
126
126
|
`JScrewIt.encode` also accepts an optional second parameter containing options that control various
|
|
127
127
|
aspects of the encoding.
|
|
128
|
-
These are covered in detail in the [
|
|
128
|
+
These are covered in detail in the [relevant section](api-doc/interfaces/EncodeOptions.md) in the
|
|
129
129
|
API Reference.
|
|
130
130
|
|
|
131
131
|
### Features
|
|
@@ -145,7 +145,7 @@ can let JScrewIt create code that uses those functions whenever that makes the o
|
|
|
145
145
|
The way to tell JScrewIt to use a particular set of features is by specifying a value for the
|
|
146
146
|
`features` option in the second parameter passed to `encode`.
|
|
147
147
|
|
|
148
|
-
For instance, a generic `alert(1)` example for an unspecified environment is 1903
|
|
148
|
+
For instance, a generic `alert(1)` example for an unspecified environment is 1903 characters long.
|
|
149
149
|
|
|
150
150
|
```js
|
|
151
151
|
const output = JScrewIt.encode("alert(1)"); // output is 1903 characters
|
|
@@ -159,7 +159,7 @@ const options = { features: "BROWSER" };
|
|
|
159
159
|
const output = JScrewIt.encode("alert(1)", options); // 1882 characters
|
|
160
160
|
```
|
|
161
161
|
|
|
162
|
-
But if we are only interested in code that runs in an up
|
|
162
|
+
But if we are only interested in code that runs in an up-to-date Firefox browser, the output length
|
|
163
163
|
shrinks to about one third:
|
|
164
164
|
```js
|
|
165
165
|
const options = { features: "FF" };
|
|
@@ -172,14 +172,14 @@ This feature produces the shortest possible code that runs in current Firefox br
|
|
|
172
172
|
We can specify more than one feature using an array, e.g.
|
|
173
173
|
```js
|
|
174
174
|
const input = "document.body.style.background='red'";
|
|
175
|
-
const options = { features: ["
|
|
175
|
+
const options = { features: ["AT", "WINDOW"] };
|
|
176
176
|
const output = JScrewIt.encode(input, options);
|
|
177
177
|
```
|
|
178
178
|
|
|
179
179
|
As opposed to the previous example, the features specified here refer to certain abilities that may
|
|
180
180
|
be supported by more than one particular class of browsers or JavaScript engines.
|
|
181
|
-
Specifically, [`
|
|
182
|
-
|
|
181
|
+
Specifically, [`AT`](api-doc/interfaces/FeatureAll.md#AT) indicates native support for the `at`
|
|
182
|
+
method on arrays and strings, while [`WINDOW`](api-doc/interfaces/FeatureAll.md#WINDOW) refers to a
|
|
183
183
|
particular string representation of the global object `self`, where available.
|
|
184
184
|
The code generated by JScrewIt will run fine in engines that support both of these features.
|
|
185
185
|
In engines that don't support both features, the code may not work, and may produce unpredictable
|
|
@@ -188,27 +188,25 @@ Most typically, it will throw some kind of error at runtime.
|
|
|
188
188
|
|
|
189
189
|
It's important to keep in mind that each of the target engines needs to support every feature we
|
|
190
190
|
specify.
|
|
191
|
-
So if we
|
|
192
|
-
specify features supported by all of these engines.
|
|
191
|
+
So if we need our JSFuck code to run in Node.js 20 LTS, Node.js 22 LTS, and Internet Explorer 11, we
|
|
192
|
+
can only specify individual features supported by all of these engines.
|
|
193
193
|
These features can be retrieved with
|
|
194
194
|
[`JScrewIt.Feature.commonOf`](api-doc/interfaces/FeatureConstructor.md#commonof).
|
|
195
195
|
|
|
196
196
|
```js
|
|
197
|
-
{ features: JScrewIt.Feature.commonOf("
|
|
197
|
+
{ features: JScrewIt.Feature.commonOf("NODE_20", "NODE_22", "IE_11") }
|
|
198
198
|
```
|
|
199
199
|
|
|
200
200
|
The features turn out to be
|
|
201
|
-
[`ESC_HTML_QUOT`](api-doc/interfaces/FeatureAll.md#ESC_HTML_QUOT),
|
|
202
|
-
[`GMT`](api-doc/interfaces/FeatureAll.md#GMT),
|
|
203
201
|
[`INCR_CHAR`](api-doc/interfaces/FeatureAll.md#INCR_CHAR),
|
|
204
|
-
[`
|
|
205
|
-
[`
|
|
206
|
-
|
|
207
|
-
console).
|
|
202
|
+
[`NO_FF_SRC`](api-doc/interfaces/FeatureAll.md#NO_FF_SRC), and
|
|
203
|
+
[`SHORT_LOCALES`](api-doc/interfaces/FeatureAll.md#SHORT_LOCALES)
|
|
204
|
+
(a quick way to see this is entering
|
|
205
|
+
`JScrewIt.Feature.commonOf("NODE_20", "NODE_22", "IE_11").toString()` in a browser's console).
|
|
208
206
|
With this knowledge, we could also rewrite the expression above as follows.
|
|
209
207
|
|
|
210
208
|
```js
|
|
211
|
-
{ features: ["
|
|
209
|
+
{ features: ["INCR_CHAR", "NO_FF_SRC", "SHORT_LOCALES"] }
|
|
212
210
|
```
|
|
213
211
|
|
|
214
212
|
Finally, note that simply specifying an array of engine features will not achieve the desired
|
|
@@ -216,7 +214,7 @@ effect, as it will result in the union of the features available in every engine
|
|
|
216
214
|
their intersection.
|
|
217
215
|
|
|
218
216
|
```diff
|
|
219
|
-
- { features: ["
|
|
217
|
+
- { features: ["NODE_20", "NODE_22", "IE_11"] }
|
|
220
218
|
```
|
|
221
219
|
|
|
222
220
|
### Further Reading
|
|
@@ -230,7 +228,7 @@ JScrewIt itself and the code it generates are compatible with the JavaScript eng
|
|
|
230
228
|
|
|
231
229
|
 Chrome 122+
|
|
232
230
|
<br>
|
|
233
|
-
 Safari
|
|
231
|
+
 Safari 17.4+
|
|
234
232
|
<br>
|
|
235
233
|
 Edge 122+
|
|
236
234
|
<br>
|
|
@@ -239,17 +237,21 @@ JScrewIt itself and the code it generates are compatible with the JavaScript eng
|
|
|
239
237
|
 Opera 108+
|
|
240
238
|
<br>
|
|
241
239
|
 Internet
|
|
242
|
-
Explorer
|
|
240
|
+
Explorer 11
|
|
243
241
|
<br>
|
|
244
|
-
 Node.js 20+
|
|
243
|
+
|
|
244
|
+
JScrewIt 3 drops compatibility with engines not supported by jQuery 4, including Internet Explorer 9
|
|
245
|
+
and 10, the Android Stock Browser, and older Safari and Node.js versions.
|
|
246
|
+
|
|
247
|
+
This project is tested with BrowserStack.
|
|
247
248
|
|
|
248
249
|
### Engine Support Policy
|
|
249
250
|
|
|
250
|
-
Only the most recent stable version of Chrome, Edge, Firefox and Opera are guaranteed to be
|
|
251
|
+
Only the most recent stable version of Chrome, Safari, Edge, Firefox and Opera are guaranteed to be
|
|
251
252
|
supported at any time, as detailed below.
|
|
252
253
|
- Chrome: (Current - 1) and Current
|
|
254
|
+
- Safari: (Current - 2), (Current - 1) and Current
|
|
253
255
|
- Edge: (Current - 1) and Current
|
|
254
256
|
- Firefox: (Current - 1) and Current, ESR
|
|
255
257
|
- Opera: Current
|
|
@@ -257,8 +259,8 @@ supported at any time, as detailed below.
|
|
|
257
259
|
Expect compatibility with these browsers to change in future releases of JScrewIt, while the current
|
|
258
260
|
browser versions become replaced by newer ones.
|
|
259
261
|
|
|
260
|
-
Compatibility with
|
|
261
|
-
|
|
262
|
+
Compatibility with Internet Explorer 11 and Node.js is stable and not expected to change until the
|
|
263
|
+
next major release of JScrewIt.
|
|
262
264
|
|
|
263
265
|
### Known Limitations
|
|
264
266
|
|
|
@@ -270,8 +272,8 @@ certain conditions.
|
|
|
270
272
|
|
|
271
273
|
JScrewIt is designed to encode JavaScript scripts, as opposed to
|
|
272
274
|
[modules](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Modules).
|
|
273
|
-
Many module
|
|
274
|
-
|
|
275
|
+
Many module-specific features don't work at all in JSFuck: `import` and `export` statements in
|
|
276
|
+
ECMAScript modules or usages of the `require` API in CommonJS modules cannot be encoded and are not
|
|
275
277
|
supported.
|
|
276
278
|
|
|
277
279
|
#### Altered Global Objects
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
[**JScrewIt**](
|
|
1
|
+
[**JScrewIt**](../../../../README.md)
|
|
2
2
|
|
|
3
3
|
***
|
|
4
4
|
|
|
@@ -7,4 +7,5 @@
|
|
|
7
7
|
> **RunAs** = `"call"` \| `"eval"` \| `"express"` \| `"express-call"` \| `"express-eval"` \| `"none"`
|
|
8
8
|
|
|
9
9
|
Values of this type control the type of code generated from a given input.
|
|
10
|
-
See [\`EncodeOptions.runAs\`](
|
|
10
|
+
See [\`EncodeOptions.runAs\`](../../../../interfaces/EncodeOptions.md#runas) for the meaning of each possible
|
|
11
|
+
value.
|