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/lib/jscrewit.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
// JScrewIt
|
|
1
|
+
// JScrewIt 3.0.0 – https://jscrew.it
|
|
2
2
|
|
|
3
3
|
(function () {
|
|
4
4
|
'use strict';
|
|
@@ -22,7 +22,6 @@
|
|
|
22
22
|
var _Math_abs = Math.abs;
|
|
23
23
|
var _Math_max = Math.max;
|
|
24
24
|
var _Math_min = Math.min;
|
|
25
|
-
var _Math_pow = Math.pow;
|
|
26
25
|
|
|
27
26
|
var _Object = Object;
|
|
28
27
|
var _Object_create$1 = _Object.create;
|
|
@@ -85,10 +84,7 @@
|
|
|
85
84
|
try
|
|
86
85
|
{
|
|
87
86
|
var regExp = _RegExp(pattern, flags);
|
|
88
|
-
|
|
89
|
-
// throwing a SyntaxError.
|
|
90
|
-
if (regExp.flags === flags)
|
|
91
|
-
return regExp;
|
|
87
|
+
return regExp;
|
|
92
88
|
}
|
|
93
89
|
catch (error)
|
|
94
90
|
{ }
|
|
@@ -281,35 +277,21 @@
|
|
|
281
277
|
// ~feature-hub – https://github.com/fasttime/JScrewIt/tree/master/packages/~feature-hub
|
|
282
278
|
|
|
283
279
|
|
|
284
|
-
var LO_INDEX = 0;
|
|
285
|
-
var HI_INDEX = 1;
|
|
286
|
-
var freezeMask = function (_LoHi) { return Object.freeze(_LoHi); };
|
|
287
280
|
/** An empty mask. */
|
|
288
|
-
var MASK_EMPTY =
|
|
281
|
+
var MASK_EMPTY = 0;
|
|
289
282
|
/** Determines whether two specified masks are equal. */
|
|
290
283
|
function maskAreEqual(mask1, mask2) {
|
|
291
|
-
|
|
292
|
-
var _LoHi2 = mask2;
|
|
293
|
-
return _LoHi1[LO_INDEX] === _LoHi2[LO_INDEX] && _LoHi1[HI_INDEX] === _LoHi2[HI_INDEX];
|
|
284
|
+
return mask1 === mask2;
|
|
294
285
|
}
|
|
295
286
|
/** Determines whether a specified mask includes another one. */
|
|
296
287
|
function maskIncludes(includingMask, includedMask) {
|
|
297
|
-
var
|
|
298
|
-
var includedLoHi = includedMask;
|
|
299
|
-
var includedLoValue;
|
|
300
|
-
var includedHiValue;
|
|
301
|
-
var returnValue = (includedLoValue = includedLoHi[LO_INDEX]) === (includedLoValue & includingLoHi[LO_INDEX]) &&
|
|
302
|
-
(includedHiValue = includedLoHi[HI_INDEX]) === (includedHiValue & includingLoHi[HI_INDEX]);
|
|
288
|
+
var returnValue = (includingMask & includedMask) === includedMask;
|
|
303
289
|
return returnValue;
|
|
304
290
|
}
|
|
305
291
|
/** Returns a new mask that is the intersection of two specified masks. */
|
|
306
292
|
function maskIntersection(mask1, mask2) {
|
|
307
|
-
var
|
|
308
|
-
|
|
309
|
-
var intersectionLo = _LoHi1[LO_INDEX] & _LoHi2[LO_INDEX];
|
|
310
|
-
var intersectionHi = _LoHi1[HI_INDEX] & _LoHi2[HI_INDEX];
|
|
311
|
-
var intersectionLoHi = [intersectionLo, intersectionHi];
|
|
312
|
-
return freezeMask(intersectionLoHi);
|
|
293
|
+
var intersectionMask = (mask1 & mask2);
|
|
294
|
+
return intersectionMask;
|
|
313
295
|
}
|
|
314
296
|
/**
|
|
315
297
|
* Returns a new non-empty mask that does not intersect the specified mask.
|
|
@@ -317,27 +299,18 @@
|
|
|
317
299
|
* @throws If the specified mask is full, a `RangeError` is thrown.
|
|
318
300
|
*/
|
|
319
301
|
function maskNext(mask) {
|
|
320
|
-
var
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
throw RangeError('Mask full');
|
|
325
|
-
}
|
|
326
|
-
var nextLoHi = [0, 0];
|
|
327
|
-
nextLoHi[bitIndex >> 5] = 1 << (bitIndex & 0x1F);
|
|
328
|
-
return freezeMask(nextLoHi);
|
|
302
|
+
var nextValue = mask + 1 & ~mask;
|
|
303
|
+
if (!nextValue)
|
|
304
|
+
throw RangeError('Mask full');
|
|
305
|
+
return nextValue;
|
|
329
306
|
}
|
|
330
307
|
/** Returns a new mask that is the union of two specified masks. */
|
|
331
308
|
function maskUnion(mask1, mask2) {
|
|
332
|
-
var
|
|
333
|
-
|
|
334
|
-
var unionLo = _LoHi1[LO_INDEX] | _LoHi2[LO_INDEX];
|
|
335
|
-
var unionHi = _LoHi1[HI_INDEX] | _LoHi2[HI_INDEX];
|
|
336
|
-
var unionLoHi = [unionLo, unionHi];
|
|
337
|
-
return freezeMask(unionLoHi);
|
|
309
|
+
var unionMask = (mask1 | mask2);
|
|
310
|
+
return unionMask;
|
|
338
311
|
}
|
|
339
312
|
|
|
340
|
-
var keyFor = function (mask) { return
|
|
313
|
+
var keyFor = function (mask) { return mask; };
|
|
341
314
|
var MaskIndex = /** @class */ (function () {
|
|
342
315
|
function MaskIndex() {
|
|
343
316
|
this._index = Object.create(null);
|
|
@@ -467,11 +440,11 @@
|
|
|
467
440
|
return mask;
|
|
468
441
|
}
|
|
469
442
|
function areCompatible() {
|
|
470
|
-
var
|
|
471
|
-
var
|
|
472
|
-
|
|
473
|
-
|
|
474
|
-
var mask =
|
|
443
|
+
var features = [];
|
|
444
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
445
|
+
features[_i] = arguments[_i];
|
|
446
|
+
}
|
|
447
|
+
var mask = featureArrayToMask(features);
|
|
475
448
|
var compatible = isMaskCompatible(mask);
|
|
476
449
|
return compatible;
|
|
477
450
|
}
|
|
@@ -532,11 +505,10 @@
|
|
|
532
505
|
var description = DESCRIPTION_MAP[name];
|
|
533
506
|
return description;
|
|
534
507
|
}
|
|
535
|
-
function
|
|
508
|
+
function featureArrayToMask(features) {
|
|
536
509
|
var mask = MASK_EMPTY;
|
|
537
|
-
var
|
|
538
|
-
|
|
539
|
-
var feature = features[index];
|
|
510
|
+
for (var _i = 0, features_3 = features; _i < features_3.length; _i++) {
|
|
511
|
+
var feature = features_3[_i];
|
|
540
512
|
var otherMask = maskFromStringOrFeature(feature);
|
|
541
513
|
mask = maskUnion(mask, otherMask);
|
|
542
514
|
}
|
|
@@ -549,18 +521,15 @@
|
|
|
549
521
|
}
|
|
550
522
|
/**
|
|
551
523
|
* Node.js custom inspection function.
|
|
552
|
-
* Set on `Feature.prototype` with name `"inspect"` for Node.js ≤ 8.6.x and with symbol
|
|
553
|
-
* `Symbol.for("nodejs.util.inspect.custom")` for Node.js ≥ 6.6.x.
|
|
554
524
|
*
|
|
555
525
|
* @see
|
|
556
526
|
* {@link https://nodejs.org/api/util.html#util_custom_inspection_functions_on_objects} for
|
|
557
527
|
* further information.
|
|
558
528
|
*/
|
|
559
|
-
// opts can be undefined in Node.js 0.10.0.
|
|
560
529
|
function inspect(depth, opts) {
|
|
561
530
|
var _a, _b, _c;
|
|
562
|
-
var breakLength = (_a = opts
|
|
563
|
-
var compact = (_b = opts
|
|
531
|
+
var breakLength = (_a = opts.breakLength) !== null && _a !== void 0 ? _a : 80;
|
|
532
|
+
var compact = (_b = opts.compact) !== null && _b !== void 0 ? _b : true;
|
|
564
533
|
var name = (_c = this.name) !== null && _c !== void 0 ? _c : joinParts(compact, '<', '', this.canonicalNames, ',', '>', breakLength - 3);
|
|
565
534
|
var parts = [name];
|
|
566
535
|
if (this.elementary)
|
|
@@ -597,7 +566,7 @@
|
|
|
597
566
|
function validMaskFromArrayOrStringOrFeature(feature) {
|
|
598
567
|
var mask;
|
|
599
568
|
if (_Array_isArray(feature)) {
|
|
600
|
-
mask =
|
|
569
|
+
mask = featureArrayToMask(feature);
|
|
601
570
|
if (feature.length > 1)
|
|
602
571
|
validateMask(mask);
|
|
603
572
|
}
|
|
@@ -666,8 +635,6 @@
|
|
|
666
635
|
return str;
|
|
667
636
|
},
|
|
668
637
|
};
|
|
669
|
-
if (utilInspect)
|
|
670
|
-
protoSource.inspect = inspect;
|
|
671
638
|
assignNoEnum(FEATURE_PROTOTYPE, protoSource);
|
|
672
639
|
}
|
|
673
640
|
(function () {
|
|
@@ -838,10 +805,7 @@
|
|
|
838
805
|
assignNoEnum(Feature, constructorSource);
|
|
839
806
|
}
|
|
840
807
|
if (utilInspect) {
|
|
841
|
-
|
|
842
|
-
if (inspectKey) {
|
|
843
|
-
_Object_defineProperty(FEATURE_PROTOTYPE, inspectKey, { configurable: true, value: inspect, writable: true });
|
|
844
|
-
}
|
|
808
|
+
_Object_defineProperty(FEATURE_PROTOTYPE, utilInspect.custom, { configurable: true, value: inspect, writable: true });
|
|
845
809
|
}
|
|
846
810
|
var featureNames = _Object_keys(featureInfos);
|
|
847
811
|
var includeSetMap = createMap();
|
|
@@ -949,16 +913,7 @@
|
|
|
949
913
|
{
|
|
950
914
|
function check()
|
|
951
915
|
{
|
|
952
|
-
|
|
953
|
-
try
|
|
954
|
-
{
|
|
955
|
-
var str = self + '';
|
|
956
|
-
}
|
|
957
|
-
catch (error)
|
|
958
|
-
{
|
|
959
|
-
return false;
|
|
960
|
-
}
|
|
961
|
-
var available = regExp.test(str);
|
|
916
|
+
var available = typeof self !== 'undefined' && regExp.test(self + '');
|
|
962
917
|
return available;
|
|
963
918
|
}
|
|
964
919
|
|
|
@@ -997,55 +952,19 @@
|
|
|
997
952
|
|
|
998
953
|
var featureInfos =
|
|
999
954
|
{
|
|
1000
|
-
ANY_DOCUMENT:
|
|
1001
|
-
{
|
|
1002
|
-
description:
|
|
1003
|
-
'Existence of the global object document whose string representation starts with ' +
|
|
1004
|
-
'"[object " and ends with "Document]".',
|
|
1005
|
-
check:
|
|
1006
|
-
function ()
|
|
1007
|
-
{
|
|
1008
|
-
var available =
|
|
1009
|
-
typeof document === 'object' && /^\[object [\S\s]*Document]$/.test(document + '');
|
|
1010
|
-
return available;
|
|
1011
|
-
},
|
|
1012
|
-
attributes: { 'web-worker': 'web-worker-restriction' },
|
|
1013
|
-
},
|
|
1014
|
-
ANY_WINDOW:
|
|
1015
|
-
{
|
|
1016
|
-
description:
|
|
1017
|
-
'Existence of the global object self whose string representation starts with "[object " ' +
|
|
1018
|
-
'and ends with "Window]".',
|
|
1019
|
-
check: makeSelfFeatureCheck(/^\[object [\S\s]*Window]$/),
|
|
1020
|
-
includes: ['SELF_OBJ'],
|
|
1021
|
-
attributes: { 'web-worker': 'web-worker-restriction' },
|
|
1022
|
-
},
|
|
1023
955
|
ARRAY_ITERATOR:
|
|
1024
956
|
{
|
|
1025
957
|
description:
|
|
1026
|
-
'The property that the string representation of Array.prototype.entries()
|
|
1027
|
-
'"[object Array
|
|
1028
|
-
check:
|
|
1029
|
-
function ()
|
|
1030
|
-
{
|
|
1031
|
-
var available =
|
|
1032
|
-
Array.prototype.entries && /^\[object Array[\S\s]{8,9}]$/.test([].entries());
|
|
1033
|
-
return available;
|
|
1034
|
-
},
|
|
1035
|
-
},
|
|
1036
|
-
ASYNC_FUNCTION:
|
|
1037
|
-
{
|
|
1038
|
-
description: 'Support for async functions, which return Promise object.',
|
|
958
|
+
'The property that the string representation of Array.prototype.entries() evaluates to ' +
|
|
959
|
+
'"[object Array Iterator]".',
|
|
1039
960
|
check:
|
|
1040
961
|
function ()
|
|
1041
962
|
{
|
|
1042
|
-
|
|
963
|
+
if (Array.prototype.entries)
|
|
1043
964
|
{
|
|
1044
|
-
|
|
1045
|
-
return
|
|
965
|
+
var available = [].entries() + '' === '[object Array Iterator]';
|
|
966
|
+
return available;
|
|
1046
967
|
}
|
|
1047
|
-
catch (error)
|
|
1048
|
-
{ }
|
|
1049
968
|
},
|
|
1050
969
|
},
|
|
1051
970
|
ARROW:
|
|
@@ -1065,24 +984,14 @@
|
|
|
1065
984
|
},
|
|
1066
985
|
AT:
|
|
1067
986
|
{
|
|
1068
|
-
description:
|
|
1069
|
-
|
|
1070
|
-
function ()
|
|
1071
|
-
{
|
|
1072
|
-
var available = Array.prototype.at;
|
|
1073
|
-
return available;
|
|
1074
|
-
},
|
|
1075
|
-
},
|
|
1076
|
-
ATOB:
|
|
1077
|
-
{
|
|
1078
|
-
description: 'Existence of the global functions atob and btoa.',
|
|
987
|
+
description:
|
|
988
|
+
'Existence of the native functions Array.prototype.at and String.prototype.at.',
|
|
1079
989
|
check:
|
|
1080
990
|
function ()
|
|
1081
991
|
{
|
|
1082
|
-
var available =
|
|
992
|
+
var available = Array.prototype.at && String.prototype.at;
|
|
1083
993
|
return available;
|
|
1084
994
|
},
|
|
1085
|
-
attributes: { 'web-worker': 'old-safari-restriction' },
|
|
1086
995
|
},
|
|
1087
996
|
BARPROP:
|
|
1088
997
|
{
|
|
@@ -1097,23 +1006,6 @@
|
|
|
1097
1006
|
},
|
|
1098
1007
|
attributes: { 'web-worker': 'web-worker-restriction' },
|
|
1099
1008
|
},
|
|
1100
|
-
CALL_ON_GLOBAL:
|
|
1101
|
-
{
|
|
1102
|
-
description:
|
|
1103
|
-
'The ability to call a function on the global object when invoking ' +
|
|
1104
|
-
'Function.prototype.call without binding.',
|
|
1105
|
-
check:
|
|
1106
|
-
function ()
|
|
1107
|
-
{
|
|
1108
|
-
try
|
|
1109
|
-
{
|
|
1110
|
-
if ([].concat.call()[0])
|
|
1111
|
-
return true;
|
|
1112
|
-
}
|
|
1113
|
-
catch (error)
|
|
1114
|
-
{ }
|
|
1115
|
-
},
|
|
1116
|
-
},
|
|
1117
1009
|
CAPITAL_HTML:
|
|
1118
1010
|
{
|
|
1119
1011
|
description:
|
|
@@ -1147,51 +1039,21 @@
|
|
|
1147
1039
|
var available = typeof console === 'object' && console + '' === '[object Console]';
|
|
1148
1040
|
return available;
|
|
1149
1041
|
},
|
|
1150
|
-
attributes: { 'web-worker': 'no-console-in-web-worker' },
|
|
1151
|
-
},
|
|
1152
|
-
CREATE_ELEMENT:
|
|
1153
|
-
{
|
|
1154
|
-
description: 'Existence of the function document.createElement.',
|
|
1155
|
-
aliasFor: 'ANY_DOCUMENT',
|
|
1156
1042
|
},
|
|
1157
1043
|
DOCUMENT:
|
|
1158
1044
|
{
|
|
1159
1045
|
description:
|
|
1160
|
-
'Existence of the global object document
|
|
1161
|
-
'Document]".',
|
|
1046
|
+
'Existence of the global object document whose string representation starts with ' +
|
|
1047
|
+
'"[object " and ends with "Document]".',
|
|
1162
1048
|
check:
|
|
1163
1049
|
function ()
|
|
1164
1050
|
{
|
|
1165
|
-
var available =
|
|
1051
|
+
var available =
|
|
1052
|
+
typeof document === 'object' && /^\[object [\S\s]*Document]$/.test(document + '');
|
|
1166
1053
|
return available;
|
|
1167
1054
|
},
|
|
1168
|
-
includes: ['ANY_DOCUMENT'],
|
|
1169
|
-
attributes: { 'web-worker': 'web-worker-restriction' },
|
|
1170
|
-
},
|
|
1171
|
-
DOMWINDOW:
|
|
1172
|
-
{
|
|
1173
|
-
description:
|
|
1174
|
-
'Existence of the global object self having the string representation "[object ' +
|
|
1175
|
-
'DOMWindow]".',
|
|
1176
|
-
check: makeSelfFeatureCheck(/^\[object DOMWindow]$/),
|
|
1177
|
-
includes: ['ANY_WINDOW'],
|
|
1178
|
-
excludes: ['OBJECT_W_SELF'],
|
|
1179
1055
|
attributes: { 'web-worker': 'web-worker-restriction' },
|
|
1180
1056
|
},
|
|
1181
|
-
ESC_HTML_ALL:
|
|
1182
|
-
{
|
|
1183
|
-
description:
|
|
1184
|
-
'The property that double quotation mark, less than and greater than characters in the ' +
|
|
1185
|
-
'argument of String.prototype.fontcolor are escaped into their respective HTML entities.',
|
|
1186
|
-
check:
|
|
1187
|
-
function ()
|
|
1188
|
-
{
|
|
1189
|
-
var available = ~''.fontcolor('"<>').indexOf('"<>');
|
|
1190
|
-
return available;
|
|
1191
|
-
},
|
|
1192
|
-
includes: ['ESC_HTML_QUOT'],
|
|
1193
|
-
excludes: ['ESC_HTML_QUOT_ONLY'],
|
|
1194
|
-
},
|
|
1195
1057
|
ESC_HTML_QUOT:
|
|
1196
1058
|
{
|
|
1197
1059
|
description:
|
|
@@ -1204,45 +1066,6 @@
|
|
|
1204
1066
|
return available;
|
|
1205
1067
|
},
|
|
1206
1068
|
},
|
|
1207
|
-
ESC_HTML_QUOT_ONLY:
|
|
1208
|
-
{
|
|
1209
|
-
description:
|
|
1210
|
-
'The property that only double quotation marks and no other characters in the argument ' +
|
|
1211
|
-
'of String.prototype.fontcolor are escaped into HTML entities.',
|
|
1212
|
-
check:
|
|
1213
|
-
function ()
|
|
1214
|
-
{
|
|
1215
|
-
var available = ~''.fontcolor('"<>').indexOf('"<>');
|
|
1216
|
-
return available;
|
|
1217
|
-
},
|
|
1218
|
-
includes: ['ESC_HTML_QUOT'],
|
|
1219
|
-
excludes: ['ESC_HTML_ALL'],
|
|
1220
|
-
},
|
|
1221
|
-
ESC_REGEXP_LF:
|
|
1222
|
-
{
|
|
1223
|
-
description:
|
|
1224
|
-
'Having regular expressions created with the RegExp constructor use escape sequences ' +
|
|
1225
|
-
'starting with a backslash to format line feed characters ("\\n") in their string ' +
|
|
1226
|
-
'representation.',
|
|
1227
|
-
check:
|
|
1228
|
-
function ()
|
|
1229
|
-
{
|
|
1230
|
-
var available = (RegExp('\n') + '')[1] === '\\';
|
|
1231
|
-
return available;
|
|
1232
|
-
},
|
|
1233
|
-
},
|
|
1234
|
-
ESC_REGEXP_SLASH:
|
|
1235
|
-
{
|
|
1236
|
-
description:
|
|
1237
|
-
'Having regular expressions created with the RegExp constructor use escape sequences ' +
|
|
1238
|
-
'starting with a backslash to format slashes ("/") in their string representation.',
|
|
1239
|
-
check:
|
|
1240
|
-
function ()
|
|
1241
|
-
{
|
|
1242
|
-
var available = (RegExp('/') + '')[1] === '\\';
|
|
1243
|
-
return available;
|
|
1244
|
-
},
|
|
1245
|
-
},
|
|
1246
1069
|
FF_SRC:
|
|
1247
1070
|
{
|
|
1248
1071
|
description:
|
|
@@ -1253,16 +1076,6 @@
|
|
|
1253
1076
|
includes: ['NO_IE_SRC', 'NO_V8_SRC'],
|
|
1254
1077
|
excludes: ['NO_FF_SRC'],
|
|
1255
1078
|
},
|
|
1256
|
-
FILL:
|
|
1257
|
-
{
|
|
1258
|
-
description: 'Existence of the native function Array.prototype.fill.',
|
|
1259
|
-
check:
|
|
1260
|
-
function ()
|
|
1261
|
-
{
|
|
1262
|
-
var available = Array.prototype.fill;
|
|
1263
|
-
return available;
|
|
1264
|
-
},
|
|
1265
|
-
},
|
|
1266
1079
|
FLAT:
|
|
1267
1080
|
{
|
|
1268
1081
|
description: 'Existence of the native function Array.prototype.flat.',
|
|
@@ -1273,13 +1086,6 @@
|
|
|
1273
1086
|
return available;
|
|
1274
1087
|
},
|
|
1275
1088
|
},
|
|
1276
|
-
FORMS:
|
|
1277
|
-
{
|
|
1278
|
-
description:
|
|
1279
|
-
'Existence of the object document.forms with string representation "[object ' +
|
|
1280
|
-
'HTMLCollection]".',
|
|
1281
|
-
aliasFor: 'ANY_DOCUMENT',
|
|
1282
|
-
},
|
|
1283
1089
|
FROM_CODE_POINT:
|
|
1284
1090
|
{
|
|
1285
1091
|
description: 'Existence of the function String.fromCodePoint.',
|
|
@@ -1314,78 +1120,6 @@
|
|
|
1314
1120
|
return available;
|
|
1315
1121
|
},
|
|
1316
1122
|
},
|
|
1317
|
-
GENERIC_ARRAY_TO_STRING:
|
|
1318
|
-
{
|
|
1319
|
-
description: 'Ability to call Array.prototype.toString with a non-array binding.',
|
|
1320
|
-
check:
|
|
1321
|
-
function ()
|
|
1322
|
-
{
|
|
1323
|
-
try
|
|
1324
|
-
{
|
|
1325
|
-
Array.prototype.toString.call({ });
|
|
1326
|
-
return true;
|
|
1327
|
-
}
|
|
1328
|
-
catch (error)
|
|
1329
|
-
{ }
|
|
1330
|
-
},
|
|
1331
|
-
},
|
|
1332
|
-
GLOBAL_UNDEFINED:
|
|
1333
|
-
{
|
|
1334
|
-
description:
|
|
1335
|
-
'Having the global function toString return the string "[object Undefined]" when invoked ' +
|
|
1336
|
-
'without a binding.',
|
|
1337
|
-
check:
|
|
1338
|
-
function ()
|
|
1339
|
-
{
|
|
1340
|
-
var getToString = Function('return toString');
|
|
1341
|
-
var available = getToString()() === '[object Undefined]';
|
|
1342
|
-
return available;
|
|
1343
|
-
},
|
|
1344
|
-
includes: ['OBJECT_UNDEFINED'],
|
|
1345
|
-
},
|
|
1346
|
-
GMT:
|
|
1347
|
-
{
|
|
1348
|
-
description:
|
|
1349
|
-
'Presence of the text "GMT" after the first 25 characters in the string returned by ' +
|
|
1350
|
-
'Date().\n' +
|
|
1351
|
-
'The string representation of dates is implementation dependent, but most engines use a ' +
|
|
1352
|
-
'similar format, making this feature available in all supported engines except Internet ' +
|
|
1353
|
-
'Explorer 9 and 10.',
|
|
1354
|
-
check:
|
|
1355
|
-
function ()
|
|
1356
|
-
{
|
|
1357
|
-
var available = /^.{25}GMT/.test(Date());
|
|
1358
|
-
return available;
|
|
1359
|
-
},
|
|
1360
|
-
},
|
|
1361
|
-
HISTORY:
|
|
1362
|
-
{
|
|
1363
|
-
description:
|
|
1364
|
-
'Existence of the global object history having the string representation "[object ' +
|
|
1365
|
-
'History]".',
|
|
1366
|
-
check:
|
|
1367
|
-
function ()
|
|
1368
|
-
{
|
|
1369
|
-
var available = typeof history === 'object' && history + '' === '[object History]';
|
|
1370
|
-
return available;
|
|
1371
|
-
},
|
|
1372
|
-
attributes: { 'web-worker': 'web-worker-restriction' },
|
|
1373
|
-
},
|
|
1374
|
-
HTMLAUDIOELEMENT:
|
|
1375
|
-
{
|
|
1376
|
-
description:
|
|
1377
|
-
'Existence of the global object Audio whose string representation starts with ' +
|
|
1378
|
-
'"function HTMLAudioElement".',
|
|
1379
|
-
check:
|
|
1380
|
-
function ()
|
|
1381
|
-
{
|
|
1382
|
-
var available =
|
|
1383
|
-
typeof Audio !== 'undefined' && /^function HTMLAudioElement/.test(Audio);
|
|
1384
|
-
return available;
|
|
1385
|
-
},
|
|
1386
|
-
includes: ['NO_IE_SRC'],
|
|
1387
|
-
attributes: { 'web-worker': 'web-worker-restriction' },
|
|
1388
|
-
},
|
|
1389
1123
|
IE_SRC:
|
|
1390
1124
|
{
|
|
1391
1125
|
description:
|
|
@@ -1409,16 +1143,6 @@
|
|
|
1409
1143
|
},
|
|
1410
1144
|
attributes: { 'forced-strict-mode': 'char-increment-restriction' },
|
|
1411
1145
|
},
|
|
1412
|
-
INTL:
|
|
1413
|
-
{
|
|
1414
|
-
description: 'Existence of the global object Intl.',
|
|
1415
|
-
check:
|
|
1416
|
-
function ()
|
|
1417
|
-
{
|
|
1418
|
-
var available = typeof Intl === 'object';
|
|
1419
|
-
return available;
|
|
1420
|
-
},
|
|
1421
|
-
},
|
|
1422
1146
|
ITERATOR_HELPER:
|
|
1423
1147
|
{
|
|
1424
1148
|
description: 'Availability of iterator helpers.',
|
|
@@ -1429,16 +1153,6 @@
|
|
|
1429
1153
|
return available;
|
|
1430
1154
|
},
|
|
1431
1155
|
},
|
|
1432
|
-
JAPANESE_INFINITY:
|
|
1433
|
-
{
|
|
1434
|
-
description: 'Japanese string representation of Infinity ending with "∞".',
|
|
1435
|
-
check:
|
|
1436
|
-
function ()
|
|
1437
|
-
{
|
|
1438
|
-
var available = /∞$/.test(Infinity.toLocaleString('ja'));
|
|
1439
|
-
return available;
|
|
1440
|
-
},
|
|
1441
|
-
},
|
|
1442
1156
|
LOCALE_INFINITY:
|
|
1443
1157
|
{
|
|
1444
1158
|
description: 'Language sensitive string representation of Infinity as "∞".',
|
|
@@ -1449,23 +1163,6 @@
|
|
|
1449
1163
|
return available;
|
|
1450
1164
|
},
|
|
1451
1165
|
},
|
|
1452
|
-
LOCALE_NUMERALS:
|
|
1453
|
-
{
|
|
1454
|
-
description:
|
|
1455
|
-
'Features shared by all engines capable of localized number formatting, including output ' +
|
|
1456
|
-
'of Arabic digits, the Arabic decimal separator "٫", the letters in the first word of ' +
|
|
1457
|
-
'the Arabic string representation of NaN ("ليس"), Persian digits and the Persian digit ' +
|
|
1458
|
-
'group separator "٬".',
|
|
1459
|
-
check:
|
|
1460
|
-
function ()
|
|
1461
|
-
{
|
|
1462
|
-
var available =
|
|
1463
|
-
checkLocaleNumeral('ar', NaN, /^ليس/) &&
|
|
1464
|
-
checkLocaleNumeral('ar-td', 234567890.1, /^٢٣٤٬?٥٦٧٬?٨٩٠٫١/) &&
|
|
1465
|
-
checkLocaleNumeral('fa', 1234567890, /^۱٬۲۳۴٬۵۶۷٬۸۹۰/);
|
|
1466
|
-
return available;
|
|
1467
|
-
},
|
|
1468
|
-
},
|
|
1469
1166
|
LOCALE_NUMERALS_BN:
|
|
1470
1167
|
{
|
|
1471
1168
|
description: 'Localized number formatting for Bengali.',
|
|
@@ -1480,51 +1177,19 @@
|
|
|
1480
1177
|
{
|
|
1481
1178
|
description:
|
|
1482
1179
|
'Extended localized number formatting.\n' +
|
|
1483
|
-
'
|
|
1484
|
-
'
|
|
1485
|
-
'
|
|
1486
|
-
'
|
|
1180
|
+
'Localized number formatting including the output of the first three letters in the ' +
|
|
1181
|
+
'second word of the Arabic string representation of NaN ("رقم"), the letters in the ' +
|
|
1182
|
+
'Russian string representation of NaN ("не\xa0число") and the letters in the Persian ' +
|
|
1183
|
+
'string representation of NaN ("ناعدد").',
|
|
1487
1184
|
check:
|
|
1488
1185
|
function ()
|
|
1489
1186
|
{
|
|
1490
1187
|
var available =
|
|
1491
1188
|
checkLocaleNumeral('ar', NaN, /^ليس.رقم/) &&
|
|
1492
|
-
checkLocaleNumeral('ar-td', 234567890.1, /^٢٣٤٬?٥٦٧٬?٨٩٠٫١/) &&
|
|
1493
|
-
checkLocaleNumeral('fa', 1234567890, /^۱٬۲۳۴٬۵۶۷٬۸۹۰/) &&
|
|
1494
1189
|
checkLocaleNumeral('fa', NaN, /^ناعد/) &&
|
|
1495
1190
|
checkLocaleNumeral('ru', NaN, /^не.число/);
|
|
1496
1191
|
return available;
|
|
1497
1192
|
},
|
|
1498
|
-
includes: ['LOCALE_NUMERALS'],
|
|
1499
|
-
attributes: { 'web-worker': 'locale-numerals-ext-restriction' },
|
|
1500
|
-
},
|
|
1501
|
-
|
|
1502
|
-
LOCATION:
|
|
1503
|
-
{
|
|
1504
|
-
description:
|
|
1505
|
-
'Existence of the global object location with the property that ' +
|
|
1506
|
-
'Object.prototype.toString.call(location) evaluates to a string that starts with ' +
|
|
1507
|
-
'"[object " and ends with "Location]".',
|
|
1508
|
-
check:
|
|
1509
|
-
function ()
|
|
1510
|
-
{
|
|
1511
|
-
var available =
|
|
1512
|
-
typeof location === 'object' &&
|
|
1513
|
-
/^\[object [\S\s]*Location]$/.test(Object.prototype.toString.call(location));
|
|
1514
|
-
return available;
|
|
1515
|
-
},
|
|
1516
|
-
},
|
|
1517
|
-
MOZILLA:
|
|
1518
|
-
{
|
|
1519
|
-
description:
|
|
1520
|
-
'Existence of user agent string navigator.userAgent that starts with "Mozilla".',
|
|
1521
|
-
check:
|
|
1522
|
-
function ()
|
|
1523
|
-
{
|
|
1524
|
-
var available =
|
|
1525
|
-
typeof navigator === 'object' && /^Mozilla/.test(navigator.userAgent);
|
|
1526
|
-
return available;
|
|
1527
|
-
},
|
|
1528
1193
|
},
|
|
1529
1194
|
NAME:
|
|
1530
1195
|
{
|
|
@@ -1536,25 +1201,6 @@
|
|
|
1536
1201
|
return available;
|
|
1537
1202
|
},
|
|
1538
1203
|
},
|
|
1539
|
-
NODECONSTRUCTOR:
|
|
1540
|
-
{
|
|
1541
|
-
description:
|
|
1542
|
-
'Existence of the global object Node having the string representation "[object ' +
|
|
1543
|
-
'NodeConstructor]".',
|
|
1544
|
-
check:
|
|
1545
|
-
function ()
|
|
1546
|
-
{
|
|
1547
|
-
var available = typeof Node !== 'undefined' && Node + '' === '[object NodeConstructor]';
|
|
1548
|
-
return available;
|
|
1549
|
-
},
|
|
1550
|
-
attributes: { 'web-worker': 'web-worker-restriction' },
|
|
1551
|
-
},
|
|
1552
|
-
NODE_NAME:
|
|
1553
|
-
{
|
|
1554
|
-
description:
|
|
1555
|
-
'Existence of the string document.nodeName that starts with a number sign ("#").',
|
|
1556
|
-
aliasFor: 'ANY_DOCUMENT',
|
|
1557
|
-
},
|
|
1558
1204
|
NO_FF_SRC:
|
|
1559
1205
|
{
|
|
1560
1206
|
description:
|
|
@@ -1583,22 +1229,6 @@
|
|
|
1583
1229
|
},
|
|
1584
1230
|
excludes: ['IE_SRC'],
|
|
1585
1231
|
},
|
|
1586
|
-
NO_OLD_SAFARI_ARRAY_ITERATOR:
|
|
1587
|
-
{
|
|
1588
|
-
description:
|
|
1589
|
-
'The property that the string representation of Array.prototype.entries() evaluates to ' +
|
|
1590
|
-
'"[object Array Iterator]".',
|
|
1591
|
-
check:
|
|
1592
|
-
function ()
|
|
1593
|
-
{
|
|
1594
|
-
if (Array.prototype.entries)
|
|
1595
|
-
{
|
|
1596
|
-
var available = [].entries() + '' === '[object Array Iterator]';
|
|
1597
|
-
return available;
|
|
1598
|
-
}
|
|
1599
|
-
},
|
|
1600
|
-
includes: ['ARRAY_ITERATOR'],
|
|
1601
|
-
},
|
|
1602
1232
|
NO_V8_SRC:
|
|
1603
1233
|
{
|
|
1604
1234
|
description:
|
|
@@ -1625,58 +1255,15 @@
|
|
|
1625
1255
|
return available;
|
|
1626
1256
|
},
|
|
1627
1257
|
},
|
|
1628
|
-
OBJECT_L_LOCATION_CTOR:
|
|
1629
|
-
{
|
|
1630
|
-
description:
|
|
1631
|
-
'Existence of the global function location.constructor whose string representation ' +
|
|
1632
|
-
'starts with "[object L".',
|
|
1633
|
-
check:
|
|
1634
|
-
function ()
|
|
1635
|
-
{
|
|
1636
|
-
var available =
|
|
1637
|
-
typeof location === 'object' && /^\[object L/.test(location.constructor);
|
|
1638
|
-
return available;
|
|
1639
|
-
},
|
|
1640
|
-
attributes: { 'web-worker': 'web-worker-restriction' },
|
|
1641
|
-
},
|
|
1642
|
-
OBJECT_UNDEFINED:
|
|
1643
|
-
{
|
|
1644
|
-
description:
|
|
1645
|
-
'Having the function Object.prototype.toString return the string "[object Undefined]" ' +
|
|
1646
|
-
'when invoked without a binding.',
|
|
1647
|
-
check:
|
|
1648
|
-
function ()
|
|
1649
|
-
{
|
|
1650
|
-
var toString = Object.prototype.toString;
|
|
1651
|
-
var available = toString() === '[object Undefined]';
|
|
1652
|
-
return available;
|
|
1653
|
-
},
|
|
1654
|
-
includes: ['UNDEFINED'],
|
|
1655
|
-
},
|
|
1656
1258
|
OBJECT_W_SELF:
|
|
1657
1259
|
{
|
|
1658
1260
|
description:
|
|
1659
1261
|
'The property that the string representation of the global object self starts ' +
|
|
1660
1262
|
'with "[object W".',
|
|
1661
1263
|
check: makeSelfFeatureCheck(/^\[object W/),
|
|
1662
|
-
includes: ['
|
|
1663
|
-
excludes: ['DOMWINDOW'],
|
|
1264
|
+
includes: ['SELF'],
|
|
1664
1265
|
attributes: { 'web-worker': 'non-ie-restriction' },
|
|
1665
1266
|
},
|
|
1666
|
-
OLD_SAFARI_LOCATION_CTOR:
|
|
1667
|
-
{
|
|
1668
|
-
description:
|
|
1669
|
-
'Existence of the global object location.constructor whose string representation starts ' +
|
|
1670
|
-
'with "[object " and ends with "LocationConstructor]".',
|
|
1671
|
-
check:
|
|
1672
|
-
function ()
|
|
1673
|
-
{
|
|
1674
|
-
var available =
|
|
1675
|
-
typeof location === 'object' &&
|
|
1676
|
-
/^\[object [\S\s]*LocationConstructor]$/.test(location.constructor);
|
|
1677
|
-
return available;
|
|
1678
|
-
},
|
|
1679
|
-
},
|
|
1680
1267
|
PLAIN_INTL:
|
|
1681
1268
|
{
|
|
1682
1269
|
description:
|
|
@@ -1687,7 +1274,6 @@
|
|
|
1687
1274
|
var available = typeof Intl === 'object' && Intl + '' === '[object Object]';
|
|
1688
1275
|
return available;
|
|
1689
1276
|
},
|
|
1690
|
-
includes: ['INTL'],
|
|
1691
1277
|
},
|
|
1692
1278
|
REGEXP_STRING_ITERATOR:
|
|
1693
1279
|
{
|
|
@@ -1702,14 +1288,21 @@
|
|
|
1702
1288
|
return available;
|
|
1703
1289
|
},
|
|
1704
1290
|
},
|
|
1291
|
+
RUSSIAN_INFINITY:
|
|
1292
|
+
{
|
|
1293
|
+
description: 'Russian string representation of Infinity as "∞".',
|
|
1294
|
+
check:
|
|
1295
|
+
function ()
|
|
1296
|
+
{
|
|
1297
|
+
var available = Infinity.toLocaleString('ru') === '∞';
|
|
1298
|
+
return available;
|
|
1299
|
+
},
|
|
1300
|
+
},
|
|
1705
1301
|
SELF:
|
|
1706
|
-
{ aliasFor: 'ANY_WINDOW' },
|
|
1707
|
-
SELF_OBJ:
|
|
1708
1302
|
{
|
|
1709
1303
|
description:
|
|
1710
1304
|
'Existence of the global object self whose string representation starts with "[object ".',
|
|
1711
|
-
check:
|
|
1712
|
-
attributes: { 'web-worker': 'safari-bug-21820506' },
|
|
1305
|
+
check: makeSelfFeatureCheck(/^\[object /),
|
|
1713
1306
|
},
|
|
1714
1307
|
SHORT_LOCALES:
|
|
1715
1308
|
{
|
|
@@ -1726,7 +1319,6 @@
|
|
|
1726
1319
|
localizedNumeral !== NUMBER.toLocaleString('en');
|
|
1727
1320
|
return available;
|
|
1728
1321
|
},
|
|
1729
|
-
includes: ['LOCALE_NUMERALS'],
|
|
1730
1322
|
},
|
|
1731
1323
|
STATUS:
|
|
1732
1324
|
{
|
|
@@ -1739,19 +1331,6 @@
|
|
|
1739
1331
|
},
|
|
1740
1332
|
attributes: { 'web-worker': 'web-worker-restriction' },
|
|
1741
1333
|
},
|
|
1742
|
-
UNDEFINED:
|
|
1743
|
-
{
|
|
1744
|
-
description:
|
|
1745
|
-
'The property that Object.prototype.toString.call() evaluates to "[object Undefined]".\n' +
|
|
1746
|
-
'This behavior is specified by ECMAScript, and is enforced by all engines except Android ' +
|
|
1747
|
-
'Browser versions prior to 4.1.2, where this feature is not available.',
|
|
1748
|
-
check:
|
|
1749
|
-
function ()
|
|
1750
|
-
{
|
|
1751
|
-
var available = Object.prototype.toString.call() === '[object Undefined]';
|
|
1752
|
-
return available;
|
|
1753
|
-
},
|
|
1754
|
-
},
|
|
1755
1334
|
V8_SRC:
|
|
1756
1335
|
{
|
|
1757
1336
|
description:
|
|
@@ -1767,7 +1346,7 @@
|
|
|
1767
1346
|
description:
|
|
1768
1347
|
'Existence of the global object self having the string representation "[object Window]".',
|
|
1769
1348
|
check: makeSelfFeatureCheck(/^\[object Window]$/),
|
|
1770
|
-
includes: ['
|
|
1349
|
+
includes: ['OBJECT_W_SELF'],
|
|
1771
1350
|
attributes: { 'web-worker': 'web-worker-restriction' },
|
|
1772
1351
|
},
|
|
1773
1352
|
|
|
@@ -1781,11 +1360,11 @@
|
|
|
1781
1360
|
description:
|
|
1782
1361
|
'Features available in all browsers.\n' +
|
|
1783
1362
|
'No support for Node.js.',
|
|
1784
|
-
includes: ['
|
|
1363
|
+
includes: ['DOCUMENT', 'INCR_CHAR', 'STATUS', 'WINDOW'],
|
|
1785
1364
|
attributes:
|
|
1786
1365
|
{
|
|
1787
1366
|
'char-increment-restriction': null,
|
|
1788
|
-
'
|
|
1367
|
+
'non-ie-restriction': null,
|
|
1789
1368
|
'web-worker-restriction': null,
|
|
1790
1369
|
},
|
|
1791
1370
|
},
|
|
@@ -1793,101 +1372,34 @@
|
|
|
1793
1372
|
{
|
|
1794
1373
|
description:
|
|
1795
1374
|
'All new browsers\' features.\n' +
|
|
1796
|
-
'
|
|
1797
|
-
'Android Browser.',
|
|
1375
|
+
'Not compatible with Node.js, Internet Explorer, and old versions of supported browsers.',
|
|
1798
1376
|
includes:
|
|
1799
1377
|
[
|
|
1800
|
-
'
|
|
1378
|
+
'ARRAY_ITERATOR',
|
|
1801
1379
|
'ARROW',
|
|
1802
|
-
'ASYNC_FUNCTION',
|
|
1803
1380
|
'AT',
|
|
1804
|
-
'ATOB',
|
|
1805
1381
|
'BARPROP',
|
|
1806
|
-
'
|
|
1807
|
-
'
|
|
1808
|
-
'ESC_REGEXP_SLASH',
|
|
1809
|
-
'FILL',
|
|
1382
|
+
'DOCUMENT',
|
|
1383
|
+
'ESC_HTML_QUOT',
|
|
1810
1384
|
'FLAT',
|
|
1811
1385
|
'FROM_CODE_POINT',
|
|
1812
1386
|
'FUNCTION_19_LF',
|
|
1813
|
-
'GENERIC_ARRAY_TO_STRING',
|
|
1814
|
-
'GLOBAL_UNDEFINED',
|
|
1815
|
-
'GMT',
|
|
1816
|
-
'HISTORY',
|
|
1817
1387
|
'INCR_CHAR',
|
|
1818
|
-
'INTL',
|
|
1819
1388
|
'ITERATOR_HELPER',
|
|
1820
|
-
'JAPANESE_INFINITY',
|
|
1821
1389
|
'LOCALE_INFINITY',
|
|
1822
1390
|
'LOCALE_NUMERALS_EXT',
|
|
1823
|
-
'LOCATION',
|
|
1824
|
-
'MOZILLA',
|
|
1825
1391
|
'NAME',
|
|
1826
1392
|
'NO_IE_SRC',
|
|
1827
|
-
'NO_OLD_SAFARI_ARRAY_ITERATOR',
|
|
1828
1393
|
'REGEXP_STRING_ITERATOR',
|
|
1394
|
+
'RUSSIAN_INFINITY',
|
|
1829
1395
|
'STATUS',
|
|
1830
1396
|
'WINDOW',
|
|
1831
1397
|
],
|
|
1832
1398
|
attributes:
|
|
1833
1399
|
{
|
|
1834
|
-
'char-increment-restriction':
|
|
1835
|
-
'
|
|
1836
|
-
'
|
|
1837
|
-
'web-worker-restriction': null,
|
|
1838
|
-
},
|
|
1839
|
-
},
|
|
1840
|
-
ANDRO_4_0:
|
|
1841
|
-
{
|
|
1842
|
-
families: ['Android Browser'],
|
|
1843
|
-
versions: ['4.0'],
|
|
1844
|
-
includes:
|
|
1845
|
-
[
|
|
1846
|
-
'ANY_DOCUMENT',
|
|
1847
|
-
'ATOB',
|
|
1848
|
-
'CALL_ON_GLOBAL',
|
|
1849
|
-
'CONSOLE',
|
|
1850
|
-
'DOMWINDOW',
|
|
1851
|
-
'ESC_HTML_ALL',
|
|
1852
|
-
'FUNCTION_22_LF',
|
|
1853
|
-
'GMT',
|
|
1854
|
-
'HISTORY',
|
|
1855
|
-
'INCR_CHAR',
|
|
1856
|
-
'LOCATION',
|
|
1857
|
-
'MOZILLA',
|
|
1858
|
-
'NAME',
|
|
1859
|
-
'STATUS',
|
|
1860
|
-
'V8_SRC',
|
|
1861
|
-
],
|
|
1862
|
-
},
|
|
1863
|
-
ANDRO_4_1:
|
|
1864
|
-
{
|
|
1865
|
-
inherits: 'ANDRO_4_0',
|
|
1866
|
-
versions: ['4.1-4.3'],
|
|
1867
|
-
includes: { CALL_ON_GLOBAL: false, GENERIC_ARRAY_TO_STRING: true, OBJECT_UNDEFINED: true },
|
|
1868
|
-
},
|
|
1869
|
-
ANDRO_4_4:
|
|
1870
|
-
{
|
|
1871
|
-
inherits: 'ANDRO_4_1',
|
|
1872
|
-
versions: ['4.4'],
|
|
1873
|
-
includes:
|
|
1874
|
-
{
|
|
1875
|
-
BARPROP: true,
|
|
1876
|
-
DOMWINDOW: false,
|
|
1877
|
-
HTMLAUDIOELEMENT: true,
|
|
1878
|
-
JAPANESE_INFINITY: true,
|
|
1879
|
-
LOCALE_INFINITY: true,
|
|
1880
|
-
LOCALE_NUMERALS_BN: true,
|
|
1881
|
-
LOCALE_NUMERALS_EXT: true,
|
|
1882
|
-
PLAIN_INTL: true,
|
|
1883
|
-
SHORT_LOCALES: true,
|
|
1884
|
-
WINDOW: true,
|
|
1885
|
-
},
|
|
1886
|
-
attributes:
|
|
1887
|
-
{
|
|
1888
|
-
'no-console-in-web-worker': null,
|
|
1889
|
-
'non-ie-restriction': null,
|
|
1890
|
-
'web-worker-restriction': null,
|
|
1400
|
+
'char-increment-restriction': null,
|
|
1401
|
+
'non-ie-restriction': null,
|
|
1402
|
+
'web-worker-restriction': null,
|
|
1891
1403
|
},
|
|
1892
1404
|
},
|
|
1893
1405
|
CHROME_PREV:
|
|
@@ -1906,35 +1418,23 @@
|
|
|
1906
1418
|
versions: ['122-', '122-', '108-'],
|
|
1907
1419
|
includes:
|
|
1908
1420
|
[
|
|
1909
|
-
'
|
|
1421
|
+
'ARRAY_ITERATOR',
|
|
1910
1422
|
'ARROW',
|
|
1911
|
-
'ASYNC_FUNCTION',
|
|
1912
1423
|
'AT',
|
|
1913
|
-
'ATOB',
|
|
1914
1424
|
'BARPROP',
|
|
1915
|
-
'
|
|
1916
|
-
'
|
|
1917
|
-
'ESC_REGEXP_SLASH',
|
|
1918
|
-
'FILL',
|
|
1425
|
+
'DOCUMENT',
|
|
1426
|
+
'ESC_HTML_QUOT',
|
|
1919
1427
|
'FLAT',
|
|
1920
1428
|
'FROM_CODE_POINT',
|
|
1921
1429
|
'FUNCTION_19_LF',
|
|
1922
|
-
'GENERIC_ARRAY_TO_STRING',
|
|
1923
|
-
'GLOBAL_UNDEFINED',
|
|
1924
|
-
'GMT',
|
|
1925
|
-
'HISTORY',
|
|
1926
1430
|
'INCR_CHAR',
|
|
1927
|
-
'INTL',
|
|
1928
1431
|
'ITERATOR_HELPER',
|
|
1929
|
-
'JAPANESE_INFINITY',
|
|
1930
1432
|
'LOCALE_INFINITY',
|
|
1931
1433
|
'LOCALE_NUMERALS_BN',
|
|
1932
1434
|
'LOCALE_NUMERALS_EXT',
|
|
1933
|
-
'LOCATION',
|
|
1934
|
-
'MOZILLA',
|
|
1935
1435
|
'NAME',
|
|
1936
|
-
'NO_OLD_SAFARI_ARRAY_ITERATOR',
|
|
1937
1436
|
'REGEXP_STRING_ITERATOR',
|
|
1437
|
+
'RUSSIAN_INFINITY',
|
|
1938
1438
|
'STATUS',
|
|
1939
1439
|
'V8_SRC',
|
|
1940
1440
|
'WINDOW',
|
|
@@ -1968,36 +1468,24 @@
|
|
|
1968
1468
|
versions: ['90-130'],
|
|
1969
1469
|
includes:
|
|
1970
1470
|
[
|
|
1971
|
-
'
|
|
1471
|
+
'ARRAY_ITERATOR',
|
|
1972
1472
|
'ARROW',
|
|
1973
|
-
'ASYNC_FUNCTION',
|
|
1974
1473
|
'AT',
|
|
1975
|
-
'ATOB',
|
|
1976
1474
|
'BARPROP',
|
|
1977
|
-
'
|
|
1978
|
-
'
|
|
1979
|
-
'ESC_REGEXP_SLASH',
|
|
1475
|
+
'DOCUMENT',
|
|
1476
|
+
'ESC_HTML_QUOT',
|
|
1980
1477
|
'FF_SRC',
|
|
1981
|
-
'FILL',
|
|
1982
1478
|
'FLAT',
|
|
1983
1479
|
'FROM_CODE_POINT',
|
|
1984
1480
|
'FUNCTION_19_LF',
|
|
1985
|
-
'GENERIC_ARRAY_TO_STRING',
|
|
1986
|
-
'GLOBAL_UNDEFINED',
|
|
1987
|
-
'GMT',
|
|
1988
|
-
'HISTORY',
|
|
1989
1481
|
'INCR_CHAR',
|
|
1990
|
-
'INTL',
|
|
1991
|
-
'JAPANESE_INFINITY',
|
|
1992
1482
|
'LOCALE_INFINITY',
|
|
1993
1483
|
'LOCALE_NUMERALS_BN',
|
|
1994
1484
|
'LOCALE_NUMERALS_EXT',
|
|
1995
|
-
'LOCATION',
|
|
1996
|
-
'MOZILLA',
|
|
1997
1485
|
'NAME',
|
|
1998
|
-
'NO_OLD_SAFARI_ARRAY_ITERATOR',
|
|
1999
1486
|
'OBJECT_ARRAY_ENTRIES_CTOR',
|
|
2000
1487
|
'REGEXP_STRING_ITERATOR',
|
|
1488
|
+
'RUSSIAN_INFINITY',
|
|
2001
1489
|
'SHORT_LOCALES',
|
|
2002
1490
|
'STATUS',
|
|
2003
1491
|
'WINDOW',
|
|
@@ -2022,158 +1510,76 @@
|
|
|
2022
1510
|
versions: ['134-'],
|
|
2023
1511
|
includes: { SHORT_LOCALES: false },
|
|
2024
1512
|
},
|
|
2025
|
-
|
|
1513
|
+
IE_11:
|
|
2026
1514
|
{
|
|
2027
|
-
families:
|
|
2028
|
-
versions:
|
|
1515
|
+
families: ['Internet Explorer'],
|
|
1516
|
+
versions: ['11'],
|
|
2029
1517
|
includes:
|
|
2030
1518
|
[
|
|
2031
1519
|
'CAPITAL_HTML',
|
|
1520
|
+
'CONSOLE',
|
|
2032
1521
|
'DOCUMENT',
|
|
2033
|
-
'ESC_REGEXP_LF',
|
|
2034
|
-
'ESC_REGEXP_SLASH',
|
|
2035
1522
|
'FUNCTION_22_LF',
|
|
2036
|
-
'GENERIC_ARRAY_TO_STRING',
|
|
2037
|
-
'HISTORY',
|
|
2038
1523
|
'IE_SRC',
|
|
2039
1524
|
'INCR_CHAR',
|
|
2040
|
-
'
|
|
2041
|
-
'
|
|
1525
|
+
'PLAIN_INTL',
|
|
1526
|
+
'SHORT_LOCALES',
|
|
2042
1527
|
'STATUS',
|
|
2043
|
-
'UNDEFINED',
|
|
2044
1528
|
'WINDOW',
|
|
2045
1529
|
],
|
|
1530
|
+
attributes: { 'char-increment-restriction': null, 'web-worker-restriction': null },
|
|
2046
1531
|
},
|
|
2047
|
-
|
|
2048
|
-
{
|
|
2049
|
-
inherits: 'IE_9',
|
|
2050
|
-
versions: ['10'],
|
|
2051
|
-
includes: { ATOB: true, CONSOLE: true, OBJECT_UNDEFINED: true, UNDEFINED: false },
|
|
2052
|
-
attributes: { 'char-increment-restriction': null, 'web-worker-restriction': null },
|
|
2053
|
-
},
|
|
2054
|
-
IE_11:
|
|
2055
|
-
{
|
|
2056
|
-
inherits: 'IE_10',
|
|
2057
|
-
versions: ['11'],
|
|
2058
|
-
includes:
|
|
2059
|
-
{
|
|
2060
|
-
ANY_DOCUMENT: true,
|
|
2061
|
-
DOCUMENT: false,
|
|
2062
|
-
GMT: true,
|
|
2063
|
-
JAPANESE_INFINITY: true,
|
|
2064
|
-
LOCALE_NUMERALS: true,
|
|
2065
|
-
PLAIN_INTL: true,
|
|
2066
|
-
SHORT_LOCALES: true,
|
|
2067
|
-
},
|
|
2068
|
-
},
|
|
2069
|
-
IE_11_WIN_10:
|
|
2070
|
-
{
|
|
2071
|
-
inherits: 'IE_11',
|
|
2072
|
-
versions: ['11'],
|
|
2073
|
-
compatibilityTag: 'on Windows 10',
|
|
2074
|
-
compatibilityShortTag: 'W10',
|
|
2075
|
-
includes:
|
|
2076
|
-
{
|
|
2077
|
-
LOCALE_INFINITY: true,
|
|
2078
|
-
LOCALE_NUMERALS: false,
|
|
2079
|
-
LOCALE_NUMERALS_BN: true,
|
|
2080
|
-
LOCALE_NUMERALS_EXT: true,
|
|
2081
|
-
},
|
|
2082
|
-
},
|
|
2083
|
-
NODE_0_10:
|
|
2084
|
-
{
|
|
2085
|
-
families: ['Node.js'],
|
|
2086
|
-
versions: ['0.10'],
|
|
2087
|
-
includes:
|
|
2088
|
-
[
|
|
2089
|
-
'ESC_HTML_ALL',
|
|
2090
|
-
'FUNCTION_22_LF',
|
|
2091
|
-
'GENERIC_ARRAY_TO_STRING',
|
|
2092
|
-
'GLOBAL_UNDEFINED',
|
|
2093
|
-
'GMT',
|
|
2094
|
-
'INCR_CHAR',
|
|
2095
|
-
'NAME',
|
|
2096
|
-
'V8_SRC',
|
|
2097
|
-
],
|
|
2098
|
-
},
|
|
2099
|
-
NODE_0_12:
|
|
2100
|
-
{
|
|
2101
|
-
inherits: 'NODE_0_10',
|
|
2102
|
-
versions: ['0.12'],
|
|
2103
|
-
includes:
|
|
2104
|
-
{
|
|
2105
|
-
ESC_HTML_ALL: false,
|
|
2106
|
-
ESC_HTML_QUOT_ONLY: true,
|
|
2107
|
-
JAPANESE_INFINITY: true,
|
|
2108
|
-
LOCALE_INFINITY: true,
|
|
2109
|
-
NO_OLD_SAFARI_ARRAY_ITERATOR: true,
|
|
2110
|
-
OBJECT_ARRAY_ENTRIES_CTOR: true,
|
|
2111
|
-
PLAIN_INTL: true,
|
|
2112
|
-
},
|
|
2113
|
-
},
|
|
2114
|
-
NODE_4:
|
|
2115
|
-
{
|
|
2116
|
-
inherits: 'NODE_0_12',
|
|
2117
|
-
versions: ['4'],
|
|
2118
|
-
includes: { ARROW: true, ESC_REGEXP_SLASH: true, FILL: true, FROM_CODE_POINT: true },
|
|
2119
|
-
},
|
|
2120
|
-
NODE_5:
|
|
2121
|
-
{
|
|
2122
|
-
inherits: 'NODE_4',
|
|
2123
|
-
versions: ['5-7.5'],
|
|
2124
|
-
attributes: { 'char-increment-restriction': null },
|
|
2125
|
-
},
|
|
2126
|
-
NODE_7_6:
|
|
2127
|
-
{
|
|
2128
|
-
inherits: 'NODE_5',
|
|
2129
|
-
versions: ['7.6-9'],
|
|
2130
|
-
includes: { ASYNC_FUNCTION: true },
|
|
2131
|
-
},
|
|
2132
|
-
NODE_10:
|
|
2133
|
-
{
|
|
2134
|
-
inherits: 'NODE_7_6',
|
|
2135
|
-
versions: ['10'],
|
|
2136
|
-
includes: { FUNCTION_19_LF: true, FUNCTION_22_LF: false },
|
|
2137
|
-
},
|
|
2138
|
-
NODE_11:
|
|
2139
|
-
{
|
|
2140
|
-
inherits: 'NODE_10',
|
|
2141
|
-
versions: ['11'],
|
|
2142
|
-
includes: { FLAT: true },
|
|
2143
|
-
},
|
|
2144
|
-
NODE_12:
|
|
2145
|
-
{
|
|
2146
|
-
inherits: 'NODE_11',
|
|
2147
|
-
versions: ['12'],
|
|
2148
|
-
includes: { ESC_REGEXP_LF: true, REGEXP_STRING_ITERATOR: true },
|
|
2149
|
-
},
|
|
2150
|
-
NODE_13:
|
|
2151
|
-
{
|
|
2152
|
-
inherits: 'NODE_12',
|
|
2153
|
-
versions: ['13|14'],
|
|
2154
|
-
includes: { LOCALE_NUMERALS_BN: true, LOCALE_NUMERALS_EXT: true, SHORT_LOCALES: true },
|
|
2155
|
-
},
|
|
2156
|
-
NODE_15:
|
|
1532
|
+
IE_11_WIN_8:
|
|
2157
1533
|
{
|
|
2158
|
-
inherits:
|
|
2159
|
-
versions:
|
|
2160
|
-
|
|
1534
|
+
inherits: 'IE_11',
|
|
1535
|
+
versions: ['11'],
|
|
1536
|
+
compatibilityTag: 'on Windows 8',
|
|
1537
|
+
compatibilityShortTag: 'W8',
|
|
1538
|
+
includes: { RUSSIAN_INFINITY: true },
|
|
2161
1539
|
},
|
|
2162
|
-
|
|
1540
|
+
IE_11_WIN_10:
|
|
2163
1541
|
{
|
|
2164
|
-
inherits:
|
|
2165
|
-
versions:
|
|
2166
|
-
|
|
1542
|
+
inherits: 'IE_11',
|
|
1543
|
+
versions: ['11'],
|
|
1544
|
+
compatibilityTag: 'on Windows 10',
|
|
1545
|
+
compatibilityShortTag: 'W10',
|
|
1546
|
+
includes:
|
|
1547
|
+
{
|
|
1548
|
+
LOCALE_INFINITY: true,
|
|
1549
|
+
LOCALE_NUMERALS_BN: true,
|
|
1550
|
+
LOCALE_NUMERALS_EXT: true,
|
|
1551
|
+
RUSSIAN_INFINITY: true,
|
|
1552
|
+
},
|
|
2167
1553
|
},
|
|
2168
|
-
|
|
1554
|
+
NODE_20:
|
|
2169
1555
|
{
|
|
2170
|
-
|
|
2171
|
-
versions:
|
|
2172
|
-
includes:
|
|
1556
|
+
families: ['Node.js'],
|
|
1557
|
+
versions: ['20-21'],
|
|
1558
|
+
includes:
|
|
1559
|
+
[
|
|
1560
|
+
'ARRAY_ITERATOR',
|
|
1561
|
+
'ARROW',
|
|
1562
|
+
'AT',
|
|
1563
|
+
'ESC_HTML_QUOT',
|
|
1564
|
+
'FLAT',
|
|
1565
|
+
'FROM_CODE_POINT',
|
|
1566
|
+
'FUNCTION_19_LF',
|
|
1567
|
+
'INCR_CHAR',
|
|
1568
|
+
'LOCALE_INFINITY',
|
|
1569
|
+
'LOCALE_NUMERALS_BN',
|
|
1570
|
+
'LOCALE_NUMERALS_EXT',
|
|
1571
|
+
'NAME',
|
|
1572
|
+
'OBJECT_ARRAY_ENTRIES_CTOR',
|
|
1573
|
+
'REGEXP_STRING_ITERATOR',
|
|
1574
|
+
'RUSSIAN_INFINITY',
|
|
1575
|
+
'SHORT_LOCALES',
|
|
1576
|
+
'V8_SRC',
|
|
1577
|
+
],
|
|
1578
|
+
attributes: { 'char-increment-restriction': null },
|
|
2173
1579
|
},
|
|
2174
1580
|
NODE_22:
|
|
2175
1581
|
{
|
|
2176
|
-
inherits: '
|
|
1582
|
+
inherits: 'NODE_20',
|
|
2177
1583
|
versions: ['22.0-22.11|23.0-23.2'],
|
|
2178
1584
|
includes: { ITERATOR_HELPER: true, OBJECT_ARRAY_ENTRIES_CTOR: false },
|
|
2179
1585
|
},
|
|
@@ -2183,123 +1589,46 @@
|
|
|
2183
1589
|
versions: ['22.12-22.14|23.3-'],
|
|
2184
1590
|
includes: { SHORT_LOCALES: false },
|
|
2185
1591
|
},
|
|
2186
|
-
|
|
1592
|
+
SAFARI_PRE_PREV:
|
|
1593
|
+
{
|
|
1594
|
+
description: describeEngine('the previous to previous version of Safari'),
|
|
1595
|
+
aliasFor: 'SAFARI_17_4',
|
|
1596
|
+
},
|
|
1597
|
+
SAFARI_17_4:
|
|
2187
1598
|
{
|
|
2188
1599
|
families: ['Safari'],
|
|
2189
|
-
versions: ['
|
|
1600
|
+
versions: ['17.4-17.6'],
|
|
2190
1601
|
includes:
|
|
2191
1602
|
[
|
|
2192
|
-
'
|
|
2193
|
-
'
|
|
1603
|
+
'ARRAY_ITERATOR',
|
|
1604
|
+
'ARROW',
|
|
1605
|
+
'AT',
|
|
2194
1606
|
'BARPROP',
|
|
2195
|
-
'
|
|
2196
|
-
'
|
|
2197
|
-
'ESC_REGEXP_LF',
|
|
2198
|
-
'ESC_REGEXP_SLASH',
|
|
1607
|
+
'DOCUMENT',
|
|
1608
|
+
'ESC_HTML_QUOT',
|
|
2199
1609
|
'FF_SRC',
|
|
2200
|
-
'
|
|
2201
|
-
'
|
|
2202
|
-
'
|
|
2203
|
-
'HISTORY',
|
|
1610
|
+
'FLAT',
|
|
1611
|
+
'FROM_CODE_POINT',
|
|
1612
|
+
'FUNCTION_19_LF',
|
|
2204
1613
|
'INCR_CHAR',
|
|
2205
|
-
'
|
|
2206
|
-
'
|
|
1614
|
+
'LOCALE_INFINITY',
|
|
1615
|
+
'LOCALE_NUMERALS_BN',
|
|
1616
|
+
'LOCALE_NUMERALS_EXT',
|
|
2207
1617
|
'NAME',
|
|
2208
|
-
'
|
|
2209
|
-
'
|
|
2210
|
-
'
|
|
1618
|
+
'OBJECT_ARRAY_ENTRIES_CTOR',
|
|
1619
|
+
'REGEXP_STRING_ITERATOR',
|
|
1620
|
+
'RUSSIAN_INFINITY',
|
|
1621
|
+
'SHORT_LOCALES',
|
|
2211
1622
|
'STATUS',
|
|
2212
1623
|
'WINDOW',
|
|
2213
1624
|
],
|
|
2214
1625
|
attributes:
|
|
2215
1626
|
{
|
|
2216
|
-
'char-increment-restriction':
|
|
2217
|
-
'
|
|
2218
|
-
'
|
|
2219
|
-
'
|
|
2220
|
-
'web-worker-restriction': null,
|
|
2221
|
-
},
|
|
2222
|
-
},
|
|
2223
|
-
SAFARI_7_1:
|
|
2224
|
-
{
|
|
2225
|
-
inherits: 'SAFARI_7_0',
|
|
2226
|
-
versions: ['7.1|8'],
|
|
2227
|
-
includes: { ARRAY_ITERATOR: true, FILL: true },
|
|
2228
|
-
attributes: { 'no-console-in-web-worker': undefined, 'safari-bug-21820506': null },
|
|
2229
|
-
},
|
|
2230
|
-
SAFARI_9:
|
|
2231
|
-
{
|
|
2232
|
-
inherits: 'SAFARI_7_1',
|
|
2233
|
-
versions: ['9'],
|
|
2234
|
-
includes:
|
|
2235
|
-
{
|
|
2236
|
-
ARRAY_ITERATOR: false,
|
|
2237
|
-
FROM_CODE_POINT: true,
|
|
2238
|
-
FUNCTION_22_LF: true,
|
|
2239
|
-
NO_OLD_SAFARI_ARRAY_ITERATOR: true,
|
|
2240
|
-
OBJECT_ARRAY_ENTRIES_CTOR: true,
|
|
2241
|
-
},
|
|
2242
|
-
},
|
|
2243
|
-
SAFARI_10_0:
|
|
2244
|
-
{
|
|
2245
|
-
inherits: 'SAFARI_9',
|
|
2246
|
-
versions: ['10.0'],
|
|
2247
|
-
includes:
|
|
2248
|
-
{
|
|
2249
|
-
ARROW: true,
|
|
2250
|
-
JAPANESE_INFINITY: true,
|
|
2251
|
-
LOCALE_INFINITY: true,
|
|
2252
|
-
LOCALE_NUMERALS_BN: true,
|
|
2253
|
-
LOCALE_NUMERALS_EXT: true,
|
|
2254
|
-
NODECONSTRUCTOR: false,
|
|
2255
|
-
OBJECT_L_LOCATION_CTOR: false,
|
|
2256
|
-
OLD_SAFARI_LOCATION_CTOR: false,
|
|
2257
|
-
PLAIN_INTL: true,
|
|
2258
|
-
SHORT_LOCALES: true,
|
|
1627
|
+
'char-increment-restriction': null,
|
|
1628
|
+
'non-ie-restriction': null,
|
|
1629
|
+
'unstable': null,
|
|
1630
|
+
'web-worker-restriction': null,
|
|
2259
1631
|
},
|
|
2260
|
-
attributes: { 'old-safari-restriction': undefined, 'safari-bug-21820506': undefined },
|
|
2261
|
-
},
|
|
2262
|
-
SAFARI_10_1:
|
|
2263
|
-
{
|
|
2264
|
-
inherits: 'SAFARI_10_0',
|
|
2265
|
-
versions: ['10.1|11'],
|
|
2266
|
-
includes: { ASYNC_FUNCTION: true },
|
|
2267
|
-
},
|
|
2268
|
-
SAFARI_12:
|
|
2269
|
-
{
|
|
2270
|
-
inherits: 'SAFARI_10_1',
|
|
2271
|
-
versions: ['12'],
|
|
2272
|
-
includes: { FLAT: true },
|
|
2273
|
-
},
|
|
2274
|
-
SAFARI_13:
|
|
2275
|
-
{
|
|
2276
|
-
inherits: 'SAFARI_12',
|
|
2277
|
-
versions: ['13|14.0.0'],
|
|
2278
|
-
includes: { REGEXP_STRING_ITERATOR: true },
|
|
2279
|
-
},
|
|
2280
|
-
SAFARI_14_0_1:
|
|
2281
|
-
{
|
|
2282
|
-
inherits: 'SAFARI_13',
|
|
2283
|
-
versions: ['14.0.1-14.0.3'],
|
|
2284
|
-
includes: { INTL: true, PLAIN_INTL: false },
|
|
2285
|
-
},
|
|
2286
|
-
SAFARI_14_1:
|
|
2287
|
-
{
|
|
2288
|
-
inherits: 'SAFARI_14_0_1',
|
|
2289
|
-
versions: ['14.1-15.3'],
|
|
2290
|
-
includes: { CONSOLE: false },
|
|
2291
|
-
},
|
|
2292
|
-
SAFARI_15_4:
|
|
2293
|
-
{
|
|
2294
|
-
inherits: 'SAFARI_14_1',
|
|
2295
|
-
versions: ['15.4-17.3'],
|
|
2296
|
-
includes: { AT: true },
|
|
2297
|
-
},
|
|
2298
|
-
SAFARI_17_4:
|
|
2299
|
-
{
|
|
2300
|
-
inherits: 'SAFARI_15_4',
|
|
2301
|
-
versions: ['17.4-17.6'],
|
|
2302
|
-
includes: { FUNCTION_19_LF: true, FUNCTION_22_LF: false },
|
|
2303
1632
|
},
|
|
2304
1633
|
SAFARI_18_0:
|
|
2305
1634
|
{
|
|
@@ -2307,6 +1636,11 @@
|
|
|
2307
1636
|
versions: ['18.0-18.3'],
|
|
2308
1637
|
includes: { SHORT_LOCALES: false },
|
|
2309
1638
|
},
|
|
1639
|
+
SAFARI_PREV:
|
|
1640
|
+
{
|
|
1641
|
+
description: describeEngine('the previous to current version of Safari'),
|
|
1642
|
+
aliasFor: 'SAFARI_18_4',
|
|
1643
|
+
},
|
|
2310
1644
|
SAFARI:
|
|
2311
1645
|
{
|
|
2312
1646
|
description: describeEngine('the current stable version of Safari'),
|
|
@@ -2318,7 +1652,6 @@
|
|
|
2318
1652
|
versions: ['18.4-'],
|
|
2319
1653
|
includes:
|
|
2320
1654
|
{ ITERATOR_HELPER: true, LOCALE_NUMERALS_BN: false, OBJECT_ARRAY_ENTRIES_CTOR: false },
|
|
2321
|
-
attributes: { 'locale-numerals-ext-restriction': null },
|
|
2322
1655
|
},
|
|
2323
1656
|
};
|
|
2324
1657
|
(function ()
|
|
@@ -2925,10 +2258,10 @@
|
|
|
2925
2258
|
|
|
2926
2259
|
var SIMPLE = createEmpty();
|
|
2927
2260
|
|
|
2261
|
+
var FORMAT_MAPPER_LONG;
|
|
2262
|
+
var FORMAT_MAPPER_SHORT;
|
|
2928
2263
|
var FROM_CHAR_CODE;
|
|
2929
2264
|
var FROM_CHAR_CODE_CALLBACK_FORMATTER;
|
|
2930
|
-
var MAPPER_FORMATTER;
|
|
2931
|
-
var OPTIMAL_ARG_NAME;
|
|
2932
2265
|
var OPTIMAL_B;
|
|
2933
2266
|
var OPTIMAL_RETURN_STRING;
|
|
2934
2267
|
|
|
@@ -2950,19 +2283,6 @@
|
|
|
2950
2283
|
var FB_R_PADDING_SHIFTS;
|
|
2951
2284
|
var FH_R_PADDING_SHIFTS;
|
|
2952
2285
|
|
|
2953
|
-
function backslashDefinition()
|
|
2954
|
-
{
|
|
2955
|
-
var replacement = this._replaceCharByUnescape(0x5C);
|
|
2956
|
-
var solution = new SimpleSolution(undefined, replacement, SolutionType.STRING);
|
|
2957
|
-
return solution;
|
|
2958
|
-
}
|
|
2959
|
-
|
|
2960
|
-
function chooseOtherArgName(argName)
|
|
2961
|
-
{
|
|
2962
|
-
var otherArgName = argName !== 'undefined' ? 'undefined' : 'falsefalse';
|
|
2963
|
-
return otherArgName;
|
|
2964
|
-
}
|
|
2965
|
-
|
|
2966
2286
|
function createCharDefinitionInFn(expr, index, paddingEntries)
|
|
2967
2287
|
{
|
|
2968
2288
|
function charDefinitionInFn(char)
|
|
@@ -3244,98 +2564,49 @@
|
|
|
3244
2564
|
|
|
3245
2565
|
(function ()
|
|
3246
2566
|
{
|
|
3247
|
-
var ANY_DOCUMENT = Feature.ANY_DOCUMENT;
|
|
3248
|
-
var ANY_WINDOW = Feature.ANY_WINDOW;
|
|
3249
2567
|
var ARRAY_ITERATOR = Feature.ARRAY_ITERATOR;
|
|
3250
2568
|
var ARROW = Feature.ARROW;
|
|
3251
|
-
var ASYNC_FUNCTION = Feature.ASYNC_FUNCTION;
|
|
3252
2569
|
var AT = Feature.AT;
|
|
3253
|
-
var ATOB = Feature.ATOB;
|
|
3254
2570
|
var BARPROP = Feature.BARPROP;
|
|
3255
|
-
var CALL_ON_GLOBAL = Feature.CALL_ON_GLOBAL;
|
|
3256
2571
|
var CAPITAL_HTML = Feature.CAPITAL_HTML;
|
|
3257
2572
|
var CONSOLE = Feature.CONSOLE;
|
|
3258
|
-
var CREATE_ELEMENT = Feature.CREATE_ELEMENT;
|
|
3259
2573
|
var DOCUMENT = Feature.DOCUMENT;
|
|
3260
|
-
var DOMWINDOW = Feature.DOMWINDOW;
|
|
3261
|
-
var ESC_HTML_ALL = Feature.ESC_HTML_ALL;
|
|
3262
2574
|
var ESC_HTML_QUOT = Feature.ESC_HTML_QUOT;
|
|
3263
|
-
var ESC_HTML_QUOT_ONLY = Feature.ESC_HTML_QUOT_ONLY;
|
|
3264
|
-
var ESC_REGEXP_LF = Feature.ESC_REGEXP_LF;
|
|
3265
|
-
var ESC_REGEXP_SLASH = Feature.ESC_REGEXP_SLASH;
|
|
3266
2575
|
var FF_SRC = Feature.FF_SRC;
|
|
3267
|
-
var FILL = Feature.FILL;
|
|
3268
2576
|
var FLAT = Feature.FLAT;
|
|
3269
|
-
var FORMS = Feature.FORMS;
|
|
3270
2577
|
var FROM_CODE_POINT = Feature.FROM_CODE_POINT;
|
|
3271
2578
|
var FUNCTION_19_LF = Feature.FUNCTION_19_LF;
|
|
3272
2579
|
var FUNCTION_22_LF = Feature.FUNCTION_22_LF;
|
|
3273
|
-
var GENERIC_ARRAY_TO_STRING = Feature.GENERIC_ARRAY_TO_STRING;
|
|
3274
|
-
var GLOBAL_UNDEFINED = Feature.GLOBAL_UNDEFINED;
|
|
3275
|
-
var GMT = Feature.GMT;
|
|
3276
|
-
var HISTORY = Feature.HISTORY;
|
|
3277
|
-
var HTMLAUDIOELEMENT = Feature.HTMLAUDIOELEMENT;
|
|
3278
2580
|
var IE_SRC = Feature.IE_SRC;
|
|
3279
2581
|
var INCR_CHAR = Feature.INCR_CHAR;
|
|
3280
|
-
var INTL = Feature.INTL;
|
|
3281
2582
|
var ITERATOR_HELPER = Feature.ITERATOR_HELPER;
|
|
3282
|
-
var JAPANESE_INFINITY = Feature.JAPANESE_INFINITY;
|
|
3283
2583
|
var LOCALE_INFINITY = Feature.LOCALE_INFINITY;
|
|
3284
|
-
var LOCALE_NUMERALS = Feature.LOCALE_NUMERALS;
|
|
3285
2584
|
var LOCALE_NUMERALS_BN = Feature.LOCALE_NUMERALS_BN;
|
|
3286
2585
|
var LOCALE_NUMERALS_EXT = Feature.LOCALE_NUMERALS_EXT;
|
|
3287
|
-
var LOCATION = Feature.LOCATION;
|
|
3288
|
-
var MOZILLA = Feature.MOZILLA;
|
|
3289
2586
|
var NAME = Feature.NAME;
|
|
3290
|
-
var NODECONSTRUCTOR = Feature.NODECONSTRUCTOR;
|
|
3291
|
-
var NODE_NAME = Feature.NODE_NAME;
|
|
3292
2587
|
var NO_FF_SRC = Feature.NO_FF_SRC;
|
|
3293
2588
|
var NO_IE_SRC = Feature.NO_IE_SRC;
|
|
3294
|
-
var NO_OLD_SAFARI_ARRAY_ITERATOR = Feature.NO_OLD_SAFARI_ARRAY_ITERATOR;
|
|
3295
2589
|
var NO_V8_SRC = Feature.NO_V8_SRC;
|
|
3296
2590
|
var OBJECT_ARRAY_ENTRIES_CTOR = Feature.OBJECT_ARRAY_ENTRIES_CTOR;
|
|
3297
|
-
var OBJECT_L_LOCATION_CTOR = Feature.OBJECT_L_LOCATION_CTOR;
|
|
3298
|
-
var OBJECT_UNDEFINED = Feature.OBJECT_UNDEFINED;
|
|
3299
2591
|
var OBJECT_W_SELF = Feature.OBJECT_W_SELF;
|
|
3300
|
-
var OLD_SAFARI_LOCATION_CTOR = Feature.OLD_SAFARI_LOCATION_CTOR;
|
|
3301
2592
|
var PLAIN_INTL = Feature.PLAIN_INTL;
|
|
3302
2593
|
var REGEXP_STRING_ITERATOR = Feature.REGEXP_STRING_ITERATOR;
|
|
3303
|
-
var
|
|
2594
|
+
var RUSSIAN_INFINITY = Feature.RUSSIAN_INFINITY;
|
|
2595
|
+
var SELF = Feature.SELF;
|
|
3304
2596
|
var SHORT_LOCALES = Feature.SHORT_LOCALES;
|
|
3305
2597
|
var STATUS = Feature.STATUS;
|
|
3306
|
-
var UNDEFINED = Feature.UNDEFINED;
|
|
3307
2598
|
var V8_SRC = Feature.V8_SRC;
|
|
3308
2599
|
var WINDOW = Feature.WINDOW;
|
|
3309
2600
|
|
|
3310
|
-
function
|
|
3311
|
-
(atobOpt, charCodeOpt, escSeqOpt, unescapeOpt)
|
|
2601
|
+
function charDefaultDefinition(char)
|
|
3312
2602
|
{
|
|
3313
|
-
|
|
3314
|
-
|
|
3315
|
-
var charCode = char.charCodeAt();
|
|
3316
|
-
var solution =
|
|
3317
|
-
this._createCharDefaultSolution
|
|
3318
|
-
(char, charCode, atobOpt && charCode < 0x100, charCodeOpt, escSeqOpt, unescapeOpt);
|
|
3319
|
-
return solution;
|
|
3320
|
-
}
|
|
3321
|
-
|
|
3322
|
-
return charDefaultDefinition;
|
|
2603
|
+
var solution = this._defaultResolveCharacter(char);
|
|
2604
|
+
return solution;
|
|
3323
2605
|
}
|
|
3324
2606
|
|
|
3325
|
-
function defineCharDefault(
|
|
2607
|
+
function defineCharDefault()
|
|
3326
2608
|
{
|
|
3327
|
-
|
|
3328
|
-
{
|
|
3329
|
-
var opt = !(opts && optName in opts) || opts[optName];
|
|
3330
|
-
return opt;
|
|
3331
|
-
}
|
|
3332
|
-
|
|
3333
|
-
var atobOpt = checkOpt('atob');
|
|
3334
|
-
var charCodeOpt = checkOpt('charCode');
|
|
3335
|
-
var escSeqOpt = checkOpt('escSeq');
|
|
3336
|
-
var unescapeOpt = checkOpt('unescape');
|
|
3337
|
-
var definition = createCharDefaultDefinition(atobOpt, charCodeOpt, escSeqOpt, unescapeOpt);
|
|
3338
|
-
var entry = define(definition);
|
|
2609
|
+
var entry = define(charDefaultDefinition);
|
|
3339
2610
|
return entry;
|
|
3340
2611
|
}
|
|
3341
2612
|
|
|
@@ -3428,7 +2699,7 @@
|
|
|
3428
2699
|
else
|
|
3429
2700
|
expr += '[' + index + ']';
|
|
3430
2701
|
}
|
|
3431
|
-
var entry = define._callWithFeatures(expr,
|
|
2702
|
+
var entry = define._callWithFeatures(expr, arguments, 3);
|
|
3432
2703
|
return entry;
|
|
3433
2704
|
}
|
|
3434
2705
|
|
|
@@ -3478,13 +2749,7 @@
|
|
|
3478
2749
|
|
|
3479
2750
|
BASE64_ALPHABET_HI_4 =
|
|
3480
2751
|
[
|
|
3481
|
-
[
|
|
3482
|
-
define('A'),
|
|
3483
|
-
define('C', CAPITAL_HTML),
|
|
3484
|
-
define('D', CALL_ON_GLOBAL, DOMWINDOW),
|
|
3485
|
-
define('A', ARRAY_ITERATOR, CAPITAL_HTML),
|
|
3486
|
-
define('A', ARRAY_ITERATOR, CALL_ON_GLOBAL, DOMWINDOW),
|
|
3487
|
-
],
|
|
2752
|
+
[define('A'), define('C', CAPITAL_HTML), define('A', ARRAY_ITERATOR)],
|
|
3488
2753
|
[
|
|
3489
2754
|
define('F'),
|
|
3490
2755
|
define('H', ITERATOR_HELPER),
|
|
@@ -3494,18 +2759,7 @@
|
|
|
3494
2759
|
'Infinity',
|
|
3495
2760
|
'NaNfalse',
|
|
3496
2761
|
[define('S'), define('R', CAPITAL_HTML), define('S', ARRAY_ITERATOR)],
|
|
3497
|
-
[
|
|
3498
|
-
define('W'),
|
|
3499
|
-
define('U', CAPITAL_HTML),
|
|
3500
|
-
define('W', ANY_WINDOW, CALL_ON_GLOBAL),
|
|
3501
|
-
define('U', CAPITAL_HTML, IE_SRC),
|
|
3502
|
-
define('W', CALL_ON_GLOBAL, CAPITAL_HTML, DOMWINDOW),
|
|
3503
|
-
define('U', ANY_WINDOW, CALL_ON_GLOBAL, CAPITAL_HTML, NO_IE_SRC),
|
|
3504
|
-
define('W', CALL_ON_GLOBAL, CAPITAL_HTML, OBJECT_W_SELF),
|
|
3505
|
-
define('W', CALL_ON_GLOBAL, CAPITAL_HTML, DOMWINDOW, NO_IE_SRC),
|
|
3506
|
-
define('U', ANY_WINDOW, ARRAY_ITERATOR, CALL_ON_GLOBAL, CAPITAL_HTML),
|
|
3507
|
-
define('U', ARRAY_ITERATOR, CALL_ON_GLOBAL, CAPITAL_HTML, OBJECT_W_SELF),
|
|
3508
|
-
],
|
|
2762
|
+
[define('W'), define('U', CAPITAL_HTML)],
|
|
3509
2763
|
'a',
|
|
3510
2764
|
'false',
|
|
3511
2765
|
'i',
|
|
@@ -3593,13 +2847,7 @@
|
|
|
3593
2847
|
'0A',
|
|
3594
2848
|
[define('0B'), define('0R', CAPITAL_HTML), define('0B', ARRAY_ITERATOR)],
|
|
3595
2849
|
'0i',
|
|
3596
|
-
[
|
|
3597
|
-
define('0j'),
|
|
3598
|
-
define('0T', CAPITAL_HTML),
|
|
3599
|
-
define('0j', ARRAY_ITERATOR),
|
|
3600
|
-
define('0D', CALL_ON_GLOBAL, DOMWINDOW),
|
|
3601
|
-
define('0j', ARRAY_ITERATOR, CALL_ON_GLOBAL, DOMWINDOW),
|
|
3602
|
-
],
|
|
2850
|
+
[define('0j'), define('0T', CAPITAL_HTML), define('0j', ARRAY_ITERATOR)],
|
|
3603
2851
|
'00',
|
|
3604
2852
|
'01',
|
|
3605
2853
|
'02',
|
|
@@ -3619,17 +2867,7 @@
|
|
|
3619
2867
|
CHARACTERS =
|
|
3620
2868
|
noProto
|
|
3621
2869
|
({
|
|
3622
|
-
// '\0'…'\
|
|
3623
|
-
'\b':
|
|
3624
|
-
[
|
|
3625
|
-
define('Function("return\\"" + ESCAPING_BACKSLASH + "b\\"")()[0]'),
|
|
3626
|
-
defineCharDefault({ escSeq: false }),
|
|
3627
|
-
],
|
|
3628
|
-
'\t':
|
|
3629
|
-
[
|
|
3630
|
-
define('Function("return\\"" + ESCAPING_BACKSLASH + "true\\"")()[0]'),
|
|
3631
|
-
defineCharDefault({ escSeq: false }),
|
|
3632
|
-
],
|
|
2870
|
+
// '\0'…'\x09'
|
|
3633
2871
|
'\n':
|
|
3634
2872
|
[
|
|
3635
2873
|
define('(RP_0_S + Function())[23]'),
|
|
@@ -3638,25 +2876,10 @@
|
|
|
3638
2876
|
define('(RP_0_S + ANY_FUNCTION)[0]', IE_SRC),
|
|
3639
2877
|
defineCharInFnHead(13, NO_V8_SRC),
|
|
3640
2878
|
],
|
|
3641
|
-
'\
|
|
3642
|
-
[
|
|
3643
|
-
define('Function("return\\"" + ESCAPING_BACKSLASH + "v\\"")()[0]'),
|
|
3644
|
-
defineCharDefault({ escSeq: false }),
|
|
3645
|
-
],
|
|
3646
|
-
'\f':
|
|
3647
|
-
[
|
|
3648
|
-
define('Function("return\\"" + ESCAPING_BACKSLASH + "false\\"")()[0]'),
|
|
3649
|
-
defineCharDefault({ escSeq: false }),
|
|
3650
|
-
],
|
|
3651
|
-
'\r':
|
|
3652
|
-
[
|
|
3653
|
-
define('Function("return\\"" + ESCAPING_BACKSLASH + "r\\"")()'),
|
|
3654
|
-
defineCharDefault({ escSeq: false }),
|
|
3655
|
-
],
|
|
3656
|
-
// '\x0e'…'\x1d'
|
|
2879
|
+
// '\x0b'…'\x1d'
|
|
3657
2880
|
'\x1e':
|
|
3658
2881
|
[
|
|
3659
|
-
define('(RP_5_A + atob("NaNfalse"))[10]'
|
|
2882
|
+
define('(RP_5_A + atob("NaNfalse"))[10]'),
|
|
3660
2883
|
],
|
|
3661
2884
|
// '\x1f'
|
|
3662
2885
|
' ':
|
|
@@ -3669,9 +2892,6 @@
|
|
|
3669
2892
|
define('(RP_1_WA + FILTER)[20]', V8_SRC),
|
|
3670
2893
|
define('(RP_1_WA + AT)[20]', AT, NO_V8_SRC),
|
|
3671
2894
|
define('(RP_5_A + AT)[20]', AT, V8_SRC),
|
|
3672
|
-
define('(+(RP_0_S + FILL)[0] + FILL)[20]', FILL, NO_FF_SRC),
|
|
3673
|
-
define('(RP_5_A + FILL)[20]', FILL, NO_IE_SRC),
|
|
3674
|
-
define('(RP_0_S + FILL)[20]', FILL, NO_V8_SRC),
|
|
3675
2895
|
define('(+(RP_0_S + FLAT)[0] + FLAT)[20]', FLAT, NO_FF_SRC),
|
|
3676
2896
|
define('(RP_5_A + FLAT)[20]', FLAT, NO_IE_SRC),
|
|
3677
2897
|
define('(RP_0_S + FLAT)[20]', FLAT, NO_V8_SRC),
|
|
@@ -3683,7 +2903,6 @@
|
|
|
3683
2903
|
],
|
|
3684
2904
|
'#':
|
|
3685
2905
|
[
|
|
3686
|
-
define('document.nodeName[0]', NODE_NAME),
|
|
3687
2906
|
defineCharDefault(),
|
|
3688
2907
|
],
|
|
3689
2908
|
// '$'
|
|
@@ -3691,17 +2910,13 @@
|
|
|
3691
2910
|
[
|
|
3692
2911
|
define('escape(FILTER)[20]'),
|
|
3693
2912
|
define('escape(0 + AT)[20]', AT),
|
|
3694
|
-
define('atob("000l")[2]', ATOB),
|
|
3695
|
-
define('escape(FILL)[21]', FILL),
|
|
3696
2913
|
define('escape(FLAT)[21]', FLAT),
|
|
3697
2914
|
define('escape(ANY_FUNCTION)[0]', IE_SRC),
|
|
2915
|
+
defineCharDefault(),
|
|
3698
2916
|
],
|
|
3699
2917
|
'&':
|
|
3700
2918
|
[
|
|
3701
|
-
define('"".fontcolor("".
|
|
3702
|
-
define('"".fontcolor("".sub())[20]', ESC_HTML_ALL),
|
|
3703
|
-
define('"".fontcolor("\\"")[13]', ESC_HTML_QUOT),
|
|
3704
|
-
define('"".fontcolor("".fontcolor([]))[31]', ESC_HTML_QUOT_ONLY),
|
|
2919
|
+
define('"".fontcolor("".fontcolor([]))[31]', ESC_HTML_QUOT),
|
|
3705
2920
|
defineCharDefault(),
|
|
3706
2921
|
],
|
|
3707
2922
|
// '\''
|
|
@@ -3728,18 +2943,10 @@
|
|
|
3728
2943
|
define('"true".sub()[10]'),
|
|
3729
2944
|
],
|
|
3730
2945
|
// '0'…'9'
|
|
3731
|
-
':'
|
|
3732
|
-
[
|
|
3733
|
-
define('(RP_0_S + RegExp())[3]'),
|
|
3734
|
-
defineCharDefault(),
|
|
3735
|
-
],
|
|
2946
|
+
// ':'
|
|
3736
2947
|
';':
|
|
3737
2948
|
[
|
|
3738
|
-
define('"".fontcolor("".
|
|
3739
|
-
define('"".fontcolor(true + "".sub())[20]', ESC_HTML_ALL),
|
|
3740
|
-
define('"".fontcolor("NaN\\"")[21]', ESC_HTML_QUOT),
|
|
3741
|
-
define('"".fontcolor("".fontcolor())[30]', ESC_HTML_QUOT_ONLY),
|
|
3742
|
-
defineCharDefault(),
|
|
2949
|
+
define('"".fontcolor("".fontcolor())[30]', ESC_HTML_QUOT),
|
|
3743
2950
|
],
|
|
3744
2951
|
'<':
|
|
3745
2952
|
[
|
|
@@ -3774,47 +2981,28 @@
|
|
|
3774
2981
|
'C':
|
|
3775
2982
|
[
|
|
3776
2983
|
define('escape("".italics())[2]'),
|
|
3777
|
-
define('escape("".sub())[2]'),
|
|
3778
2984
|
define('escape(F_A_L_S_E)[11]'),
|
|
3779
|
-
define('atob("00NaNfalse")[1]', ATOB),
|
|
3780
2985
|
define('(RP_4_A + "".fontcolor())[10]', CAPITAL_HTML),
|
|
3781
2986
|
define('(RP_3_WA + Function("return console")())[11]', CONSOLE),
|
|
3782
|
-
|
|
2987
|
+
defineCharDefault(),
|
|
3783
2988
|
],
|
|
3784
2989
|
'D':
|
|
3785
2990
|
[
|
|
2991
|
+
define('btoa("00")[1]'),
|
|
3786
2992
|
// * The escaped character may be either "]" or "}".
|
|
3787
2993
|
define('escape((+("1000" + (RP_5_A + FILTER + 0)[40] + 0) + FILTER)[40])[2]'), // *
|
|
3788
2994
|
define('escape("]")[2]'),
|
|
3789
2995
|
define('escape("}")[2]'),
|
|
3790
|
-
define('(document + RP_0_S)[SLICE_OR_SUBSTR]("-10")[1]', ANY_DOCUMENT),
|
|
3791
2996
|
define('escape((RP_4_A + [+("1000" + (AT + 0)[31] + 0)] + AT)[40])[2]', AT), // *
|
|
3792
|
-
define('btoa("00")[1]', ATOB),
|
|
3793
|
-
define('(RP_3_WA + document)[11]', DOCUMENT),
|
|
3794
|
-
define('(RP_3_WA + self)[11]', DOMWINDOW),
|
|
3795
|
-
define // *
|
|
3796
|
-
('escape((NaN + [+("10" + [(RP_6_S + FILL)[40]] + "000")] + FILL)[40])[2]', FILL),
|
|
3797
2997
|
define // *
|
|
3798
2998
|
('escape((NaN + [+("10" + [(RP_6_S + FLAT)[40]] + "000")] + FLAT)[40])[2]', FLAT),
|
|
3799
|
-
define('escape(ARRAY_ITERATOR)[30]', NO_OLD_SAFARI_ARRAY_ITERATOR),
|
|
3800
2999
|
define('escape(FILTER)[50]', V8_SRC),
|
|
3801
|
-
define('(document + [RP_1_WA]).at("-10")', ANY_DOCUMENT, AT),
|
|
3802
|
-
define('escape(AT)[61]', AT, IE_SRC),
|
|
3803
3000
|
define('escape([[]][+(RP_0_S + AT)[0]] + AT)[61]', AT, NO_FF_SRC), // *
|
|
3804
|
-
define('escape([NaN][+(RP_1_WA + AT)[20]] + AT)[61]', AT, NO_IE_SRC), // *
|
|
3805
|
-
define('escape(true + AT)[50]', AT, V8_SRC),
|
|
3806
|
-
define('(RP_3_WA + "".slice.call())[11]', CALL_ON_GLOBAL, DOMWINDOW),
|
|
3807
|
-
define('"".sub.call()[13]', CALL_ON_GLOBAL, DOMWINDOW),
|
|
3808
|
-
define('escape(FILL)[60]', FF_SRC, FILL),
|
|
3809
|
-
define('escape(FLAT)[60]', FF_SRC, FLAT),
|
|
3810
3001
|
],
|
|
3811
3002
|
'E':
|
|
3812
3003
|
[
|
|
3813
|
-
|
|
3814
|
-
define('btoa("0NaN")[1]', ATOB),
|
|
3004
|
+
define('btoa("0NaN")[1]'),
|
|
3815
3005
|
define('(RP_5_A + "".link())[10]', CAPITAL_HTML),
|
|
3816
|
-
define('(RP_3_WA + Audio)[21]', HTMLAUDIOELEMENT),
|
|
3817
|
-
define('(RP_0_S + REGEXP_STRING_ITERATOR)[11]', REGEXP_STRING_ITERATOR),
|
|
3818
3006
|
],
|
|
3819
3007
|
'F':
|
|
3820
3008
|
[
|
|
@@ -3823,27 +3011,19 @@
|
|
|
3823
3011
|
],
|
|
3824
3012
|
'G':
|
|
3825
3013
|
[
|
|
3826
|
-
define('btoa("0false")[1]'
|
|
3014
|
+
define('btoa("0false")[1]'),
|
|
3827
3015
|
define('"0".big()[10]', CAPITAL_HTML),
|
|
3828
|
-
define('(RP_5_A + Date())[30]', GMT),
|
|
3829
3016
|
],
|
|
3830
3017
|
'H':
|
|
3831
3018
|
[
|
|
3832
|
-
define('btoa(true)[1]'
|
|
3019
|
+
define('btoa(true)[1]'),
|
|
3833
3020
|
define('"".link()[3]', CAPITAL_HTML),
|
|
3834
|
-
define('(RP_3_WA + document.forms)[11]', FORMS),
|
|
3835
|
-
define
|
|
3836
|
-
({ expr: '(RP_3_WA + Function("return history")())[11]', optimize: true }, HISTORY),
|
|
3837
|
-
define('(RP_1_WA + Audio)[10]', HTMLAUDIOELEMENT),
|
|
3838
3021
|
define('(RP_4_A + [].entries().filter(ANY_FUNCTION))[21]', ITERATOR_HELPER),
|
|
3839
|
-
define({ expr: '(RP_3_WA + self.history)[11]', optimize: true }, HISTORY, SELF_OBJ),
|
|
3840
3022
|
],
|
|
3841
3023
|
'I': '"Infinity"[0]',
|
|
3842
3024
|
'J':
|
|
3843
3025
|
[
|
|
3844
|
-
define('
|
|
3845
|
-
define('btoa(true)[2]', ATOB),
|
|
3846
|
-
defineCharDefault({ atob: false }),
|
|
3026
|
+
define('btoa(true)[2]'),
|
|
3847
3027
|
],
|
|
3848
3028
|
'K':
|
|
3849
3029
|
[
|
|
@@ -3852,100 +3032,38 @@
|
|
|
3852
3032
|
],
|
|
3853
3033
|
'L':
|
|
3854
3034
|
[
|
|
3855
|
-
define('btoa(".")[0]'
|
|
3035
|
+
define('btoa(".")[0]'),
|
|
3856
3036
|
define('(RP_3_WA + "".fontcolor())[11]', CAPITAL_HTML),
|
|
3857
|
-
define('(RP_0_S + document.forms)[11]', FORMS),
|
|
3858
|
-
define('(RP_0_S + Audio)[12]', HTMLAUDIOELEMENT),
|
|
3859
|
-
define
|
|
3860
|
-
(
|
|
3861
|
-
{
|
|
3862
|
-
expr:
|
|
3863
|
-
'Function("return toString.call(location)")()[SLICE_OR_SUBSTR]("-10")[1]',
|
|
3864
|
-
optimize: true,
|
|
3865
|
-
},
|
|
3866
|
-
LOCATION
|
|
3867
|
-
),
|
|
3868
|
-
define('(RP_3_WA + LOCATION_CONSTRUCTOR)[11]', OBJECT_L_LOCATION_CTOR),
|
|
3869
|
-
define
|
|
3870
|
-
(
|
|
3871
|
-
'(LOCATION_CONSTRUCTOR + RP_0_S)[SLICE_OR_SUBSTR]("-20")[0]',
|
|
3872
|
-
OLD_SAFARI_LOCATION_CTOR
|
|
3873
|
-
),
|
|
3874
|
-
define
|
|
3875
|
-
(
|
|
3876
|
-
{
|
|
3877
|
-
expr:
|
|
3878
|
-
'(Function("return toString.call(location)")() + RP_1_WA).at("-10")',
|
|
3879
|
-
optimize: true,
|
|
3880
|
-
},
|
|
3881
|
-
AT,
|
|
3882
|
-
LOCATION
|
|
3883
|
-
),
|
|
3884
|
-
define('(LOCATION_CONSTRUCTOR + RP_0_S).at("-20")', AT, OLD_SAFARI_LOCATION_CTOR),
|
|
3885
|
-
define
|
|
3886
|
-
(
|
|
3887
|
-
'[][TO_STRING].call(location)[SLICE_OR_SUBSTR]("-10")[1]',
|
|
3888
|
-
GENERIC_ARRAY_TO_STRING,
|
|
3889
|
-
LOCATION
|
|
3890
|
-
),
|
|
3891
|
-
define
|
|
3892
|
-
('self[TO_STRING].call(location)[SLICE_OR_SUBSTR]("-10")[1]', LOCATION, SELF_OBJ),
|
|
3893
|
-
define
|
|
3894
|
-
(
|
|
3895
|
-
'([][TO_STRING].call(location) + RP_1_WA).at("-10")',
|
|
3896
|
-
AT,
|
|
3897
|
-
GENERIC_ARRAY_TO_STRING,
|
|
3898
|
-
LOCATION
|
|
3899
|
-
),
|
|
3900
|
-
define('(self[TO_STRING].call(location) + RP_1_WA).at("-10")', AT, LOCATION, SELF_OBJ),
|
|
3901
3037
|
],
|
|
3902
3038
|
'M':
|
|
3903
3039
|
[
|
|
3904
|
-
define('btoa(0)[0]'
|
|
3040
|
+
define('btoa(0)[0]'),
|
|
3905
3041
|
define('"".small()[2]', CAPITAL_HTML),
|
|
3906
|
-
define('(RP_0_S + self)[10]', DOMWINDOW),
|
|
3907
|
-
define('(RP_0_S + document.forms)[10]', FORMS),
|
|
3908
|
-
define('(RP_4_A + Date())[30]', GMT),
|
|
3909
|
-
define('(RP_0_S + Audio)[11]', HTMLAUDIOELEMENT),
|
|
3910
|
-
define('USER_AGENT[0]', MOZILLA),
|
|
3911
|
-
define('"".slice.call()[10]', CALL_ON_GLOBAL, DOMWINDOW),
|
|
3912
|
-
define('(RP_5_A + "".sub.call())[20]', CALL_ON_GLOBAL, DOMWINDOW),
|
|
3913
3042
|
],
|
|
3914
3043
|
'N': '"NaN"[0]',
|
|
3915
3044
|
'O':
|
|
3916
3045
|
[
|
|
3917
3046
|
defineCharInFn('Object', 9),
|
|
3047
|
+
define('btoa(NaN)[3]'),
|
|
3918
3048
|
define('(RP_3_WA + PLAIN_OBJECT)[11]'),
|
|
3919
|
-
define('btoa(NaN)[3]', ATOB),
|
|
3920
3049
|
define('"".fontcolor()[2]', CAPITAL_HTML),
|
|
3921
|
-
define('(RP_1_WA + self)[10]', DOMWINDOW),
|
|
3922
3050
|
define('(RP_3_WA + Intl)[11]', PLAIN_INTL),
|
|
3923
|
-
define('(RP_1_WA + "".slice.call())[10]', CALL_ON_GLOBAL, DOMWINDOW),
|
|
3924
|
-
define('(RP_6_S + "".sub.call())[20]', CALL_ON_GLOBAL, DOMWINDOW),
|
|
3925
3051
|
],
|
|
3926
3052
|
'P':
|
|
3927
3053
|
[
|
|
3928
|
-
define('
|
|
3929
|
-
define('(RP_3_WA + Function("return async function(){}")()())[11]', ASYNC_FUNCTION),
|
|
3930
|
-
define('atob("01A")[1]', ATOB),
|
|
3931
|
-
define('btoa("".italics())[0]', ATOB),
|
|
3054
|
+
define('btoa("".italics())[0]'),
|
|
3932
3055
|
define('(RP_0_S + Function("return statusbar")())[11]', BARPROP),
|
|
3933
3056
|
define('"0".sup()[10]', CAPITAL_HTML),
|
|
3934
|
-
|
|
3935
|
-
defineCharDefault({ atob: false, charCode: false }),
|
|
3057
|
+
defineCharDefault(),
|
|
3936
3058
|
],
|
|
3937
3059
|
'Q':
|
|
3938
3060
|
[
|
|
3939
|
-
define('
|
|
3940
|
-
define('btoa(1)[1]', ATOB),
|
|
3941
|
-
defineCharDefault({ atob: false }),
|
|
3061
|
+
define('btoa(1)[1]'),
|
|
3942
3062
|
],
|
|
3943
3063
|
'R':
|
|
3944
3064
|
[
|
|
3945
|
-
|
|
3946
|
-
define('btoa("0true")[2]', ATOB),
|
|
3065
|
+
define('btoa("0true")[2]'),
|
|
3947
3066
|
define('"".fontcolor()[10]', CAPITAL_HTML),
|
|
3948
|
-
define('(RP_3_WA + REGEXP_STRING_ITERATOR)[11]', REGEXP_STRING_ITERATOR),
|
|
3949
3067
|
],
|
|
3950
3068
|
'S':
|
|
3951
3069
|
[
|
|
@@ -3954,115 +3072,49 @@
|
|
|
3954
3072
|
],
|
|
3955
3073
|
'T':
|
|
3956
3074
|
[
|
|
3957
|
-
define
|
|
3958
|
-
(
|
|
3959
|
-
{
|
|
3960
|
-
expr:
|
|
3961
|
-
'(RP_0_S + ' +
|
|
3962
|
-
'Function("try{undefined.false}catch(undefined){return undefined}")())[0]',
|
|
3963
|
-
optimize: true,
|
|
3964
|
-
}
|
|
3965
|
-
),
|
|
3966
|
-
define('btoa(NaN)[0]', ATOB),
|
|
3075
|
+
define('btoa(NaN)[0]'),
|
|
3967
3076
|
define('"".fontcolor([])[20]', CAPITAL_HTML),
|
|
3968
|
-
define('(RP_1_WA + document.forms)[10]', FORMS),
|
|
3969
|
-
define('(RP_3_WA + Date())[30]', GMT),
|
|
3970
|
-
define('(RP_0_S + Audio)[10]', HTMLAUDIOELEMENT),
|
|
3971
|
-
defineCharDefault({ atob: false }),
|
|
3972
3077
|
],
|
|
3973
3078
|
'U':
|
|
3974
3079
|
[
|
|
3975
|
-
define('btoa("1NaN")[1]'
|
|
3080
|
+
define('btoa("1NaN")[1]'),
|
|
3976
3081
|
define('"".sub()[2]', CAPITAL_HTML),
|
|
3977
|
-
define
|
|
3978
|
-
(
|
|
3979
|
-
{ expr: '(RP_3_WA + Function("return toString")()())[11]', optimize: true },
|
|
3980
|
-
GLOBAL_UNDEFINED
|
|
3981
|
-
),
|
|
3982
|
-
define
|
|
3983
|
-
(
|
|
3984
|
-
{ expr: '(RP_3_WA + Function("return{}.toString")()())[11]', optimize: true },
|
|
3985
|
-
OBJECT_UNDEFINED
|
|
3986
|
-
),
|
|
3987
|
-
define('(RP_3_WA + PLAIN_OBJECT[TO_STRING].call())[11]', UNDEFINED),
|
|
3988
|
-
define('(RP_3_WA + ARRAY_ITERATOR[TO_STRING].call())[11]', ARRAY_ITERATOR, UNDEFINED),
|
|
3989
|
-
define
|
|
3990
|
-
(
|
|
3991
|
-
{ expr: '(RP_3_WA + Function("return Intl.toString")()())[11]', optimize: true },
|
|
3992
|
-
INTL,
|
|
3993
|
-
OBJECT_UNDEFINED
|
|
3994
|
-
),
|
|
3995
|
-
define('(RP_3_WA + Intl[TO_STRING].call())[11]', INTL, UNDEFINED),
|
|
3996
3082
|
],
|
|
3997
3083
|
'V':
|
|
3998
3084
|
[
|
|
3999
|
-
define('
|
|
4000
|
-
define('btoa(undefined)[10]', ATOB),
|
|
4001
|
-
define('(RP_0_S + document.createElement("video"))[12]', CREATE_ELEMENT),
|
|
4002
|
-
defineCharDefault({ atob: false }),
|
|
3085
|
+
define('btoa(undefined)[10]'),
|
|
4003
3086
|
],
|
|
4004
3087
|
'W':
|
|
4005
3088
|
[
|
|
4006
|
-
define('
|
|
4007
|
-
define('(self + RP_4_A)[SLICE_OR_SUBSTR]("-11")[0]', ANY_WINDOW),
|
|
4008
|
-
define('btoa(undefined)[1]', ATOB),
|
|
4009
|
-
define('(RP_0_S + self)[11]', DOMWINDOW),
|
|
3089
|
+
define('btoa(undefined)[1]'),
|
|
4010
3090
|
define('(RP_3_WA + self)[11]', OBJECT_W_SELF),
|
|
4011
|
-
define('(self + RP_4_A).at("-11")', ANY_WINDOW, AT),
|
|
4012
|
-
define
|
|
4013
|
-
(
|
|
4014
|
-
'("".slice.call() + RP_4_A)[SLICE_OR_SUBSTR]("-11")[0]',
|
|
4015
|
-
ANY_WINDOW,
|
|
4016
|
-
CALL_ON_GLOBAL
|
|
4017
|
-
),
|
|
4018
|
-
define
|
|
4019
|
-
(
|
|
4020
|
-
'"".sub.call()[SLICE_OR_SUBSTR]("-13")[0]',
|
|
4021
|
-
ANY_WINDOW,
|
|
4022
|
-
CALL_ON_GLOBAL
|
|
4023
|
-
),
|
|
4024
|
-
define('"".slice.call()[11]', CALL_ON_GLOBAL, DOMWINDOW),
|
|
4025
|
-
define('(RP_4_A + "".sub.call())[20]', CALL_ON_GLOBAL, DOMWINDOW),
|
|
4026
|
-
define('(RP_3_WA + "".slice.call())[11]', CALL_ON_GLOBAL, WINDOW),
|
|
4027
|
-
define('"".sub.call()[13]', CALL_ON_GLOBAL, WINDOW),
|
|
4028
|
-
define('("".slice.call() + RP_4_A).at("-11")', ANY_WINDOW, AT, CALL_ON_GLOBAL),
|
|
4029
|
-
defineCharDefault({ atob: false }),
|
|
4030
3091
|
],
|
|
4031
3092
|
'X':
|
|
4032
3093
|
[
|
|
4033
|
-
define('"
|
|
4034
|
-
define('btoa("1true")[1]', ATOB),
|
|
4035
|
-
defineCharDefault({ atob: false }),
|
|
3094
|
+
define('btoa("1true")[1]'),
|
|
4036
3095
|
],
|
|
4037
3096
|
'Y':
|
|
4038
3097
|
[
|
|
4039
|
-
define('"
|
|
4040
|
-
define('btoa("a")[0]', ATOB),
|
|
4041
|
-
defineCharDefault({ atob: false }),
|
|
3098
|
+
define('btoa("a")[0]'),
|
|
4042
3099
|
],
|
|
4043
3100
|
'Z':
|
|
4044
3101
|
[
|
|
4045
|
-
define('btoa(false)[0]'
|
|
4046
|
-
define('(RP_3_WA + "".fontsize())[11]', CAPITAL_HTML),
|
|
3102
|
+
define('btoa(false)[0]'),
|
|
4047
3103
|
],
|
|
4048
3104
|
'[':
|
|
4049
3105
|
[
|
|
4050
3106
|
defineCharInFnBody(14),
|
|
4051
3107
|
define('(RP_0_S + ARRAY_ITERATOR)[0]', ARRAY_ITERATOR),
|
|
4052
3108
|
],
|
|
4053
|
-
'\\'
|
|
4054
|
-
[
|
|
4055
|
-
define('ESCAPING_BACKSLASH'),
|
|
4056
|
-
defineCharDefault({ atob: false, escSeq: false, unescape: false }),
|
|
4057
|
-
],
|
|
3109
|
+
// '\\'
|
|
4058
3110
|
']':
|
|
4059
3111
|
[
|
|
4060
3112
|
defineCharInFnBody(26),
|
|
4061
|
-
define('(RP_0_S + ARRAY_ITERATOR)[22]',
|
|
3113
|
+
define('(RP_0_S + ARRAY_ITERATOR)[22]', ARRAY_ITERATOR),
|
|
4062
3114
|
],
|
|
4063
3115
|
'^':
|
|
4064
3116
|
[
|
|
4065
|
-
define('atob("undefined0")[2]'
|
|
3117
|
+
define('atob("undefined0")[2]'),
|
|
4066
3118
|
],
|
|
4067
3119
|
// '_'
|
|
4068
3120
|
// '`'
|
|
@@ -4086,18 +3138,17 @@
|
|
|
4086
3138
|
],
|
|
4087
3139
|
'h':
|
|
4088
3140
|
[
|
|
3141
|
+
define('btoa("0false")[3]'),
|
|
4089
3142
|
define('101[TO_STRING]("21")[1]'),
|
|
4090
|
-
define('btoa("0false")[3]', ATOB),
|
|
4091
3143
|
],
|
|
4092
3144
|
'i': '([RP_5_A] + undefined)[10]',
|
|
4093
3145
|
'j':
|
|
4094
3146
|
[
|
|
3147
|
+
define('(RP_0_S + Intl)[3]'),
|
|
4095
3148
|
define('(RP_0_S + PLAIN_OBJECT)[10]'),
|
|
4096
3149
|
define('(RP_0_S + ARRAY_ITERATOR)[3]', ARRAY_ITERATOR),
|
|
4097
|
-
define('(RP_0_S + Intl)[3]', INTL),
|
|
4098
|
-
define('(RP_0_S + Node)[3]', NODECONSTRUCTOR),
|
|
4099
3150
|
define('(RP_0_S + Intl)[10]', PLAIN_INTL),
|
|
4100
|
-
define('(RP_0_S + self)[3]',
|
|
3151
|
+
define('(RP_0_S + self)[3]', SELF),
|
|
4101
3152
|
],
|
|
4102
3153
|
'k':
|
|
4103
3154
|
[
|
|
@@ -4119,15 +3170,13 @@
|
|
|
4119
3170
|
'p':
|
|
4120
3171
|
[
|
|
4121
3172
|
define('211[TO_STRING]("31")[1]'),
|
|
4122
|
-
define('(RP_3_WA + btoa(undefined))[10]'
|
|
3173
|
+
define('(RP_3_WA + btoa(undefined))[10]'),
|
|
4123
3174
|
define('(RP_0_S + [].entries().filter(ANY_FUNCTION))[20]', ITERATOR_HELPER),
|
|
4124
3175
|
],
|
|
4125
3176
|
'q':
|
|
4126
3177
|
[
|
|
4127
3178
|
define('212[TO_STRING]("31")[1]'),
|
|
4128
|
-
define('"".fontcolor(
|
|
4129
|
-
define('"".fontcolor("0false\\"")[20]', ESC_HTML_QUOT),
|
|
4130
|
-
define('"".fontcolor(true + "".fontcolor())[30]', ESC_HTML_QUOT_ONLY),
|
|
3179
|
+
define('"".fontcolor(true + "".fontcolor())[30]', ESC_HTML_QUOT),
|
|
4131
3180
|
defineCharDefault(),
|
|
4132
3181
|
],
|
|
4133
3182
|
'r': '"true"[1]',
|
|
@@ -4141,39 +3190,19 @@
|
|
|
4141
3190
|
'w':
|
|
4142
3191
|
[
|
|
4143
3192
|
define('32[TO_STRING]("33")'),
|
|
4144
|
-
define('(
|
|
4145
|
-
define('atob("undefined0")[1]', ATOB),
|
|
4146
|
-
define('(RP_4_A + self)[20]', DOMWINDOW),
|
|
3193
|
+
define('atob("undefined0")[1]'),
|
|
4147
3194
|
define('(RP_0_S + self)[13]', WINDOW),
|
|
4148
|
-
define('(self + RP_0_S).at("-2")', ANY_WINDOW, AT),
|
|
4149
|
-
define
|
|
4150
|
-
(
|
|
4151
|
-
'"".slice.call()[SLICE_OR_SUBSTR]("-2")[0]',
|
|
4152
|
-
ANY_WINDOW,
|
|
4153
|
-
CALL_ON_GLOBAL
|
|
4154
|
-
),
|
|
4155
|
-
define
|
|
4156
|
-
(
|
|
4157
|
-
'("".sub.call() + RP_3_WA)[SLICE_OR_SUBSTR]("-11")[0]',
|
|
4158
|
-
ANY_WINDOW,
|
|
4159
|
-
CALL_ON_GLOBAL
|
|
4160
|
-
),
|
|
4161
|
-
define('(RP_4_A + "".slice.call())[20]', CALL_ON_GLOBAL, DOMWINDOW),
|
|
4162
|
-
define('"".sub.call()[21]', CALL_ON_GLOBAL, DOMWINDOW),
|
|
4163
|
-
define('"".slice.call()[13]', CALL_ON_GLOBAL, WINDOW),
|
|
4164
|
-
define('(RP_3_WA + "".sub.call())[21]', CALL_ON_GLOBAL, WINDOW),
|
|
4165
|
-
define('"".slice.call().at("-2")', ANY_WINDOW, AT, CALL_ON_GLOBAL),
|
|
4166
3195
|
],
|
|
4167
3196
|
'x':
|
|
4168
3197
|
[
|
|
3198
|
+
define('btoa("falsefalse")[10]'),
|
|
4169
3199
|
define('101[TO_STRING]("34")[1]'),
|
|
4170
|
-
define('btoa("falsefalse")[10]', ATOB),
|
|
4171
3200
|
],
|
|
4172
3201
|
'y': '(RP_3_WA + [Infinity])[10]',
|
|
4173
3202
|
'z':
|
|
4174
3203
|
[
|
|
4175
3204
|
define('35[TO_STRING]("36")'),
|
|
4176
|
-
define('btoa("falsefalse")[11]'
|
|
3205
|
+
define('btoa("falsefalse")[11]'),
|
|
4177
3206
|
],
|
|
4178
3207
|
'{':
|
|
4179
3208
|
[
|
|
@@ -4189,89 +3218,90 @@
|
|
|
4189
3218
|
|
|
4190
3219
|
'\x8a':
|
|
4191
3220
|
[
|
|
4192
|
-
define('(RP_4_A + atob("NaNundefined"))[10]'
|
|
3221
|
+
define('(RP_4_A + atob("NaNundefined"))[10]'),
|
|
4193
3222
|
],
|
|
4194
3223
|
'\x8d':
|
|
4195
3224
|
[
|
|
4196
|
-
define('atob("0NaN")[2]'
|
|
3225
|
+
define('atob("0NaN")[2]'),
|
|
4197
3226
|
],
|
|
4198
3227
|
'\x96':
|
|
4199
3228
|
[
|
|
4200
|
-
define('atob("00false")[3]'
|
|
3229
|
+
define('atob("00false")[3]'),
|
|
4201
3230
|
],
|
|
4202
3231
|
'\x9e':
|
|
4203
3232
|
[
|
|
4204
|
-
define('atob(true)[2]'
|
|
3233
|
+
define('atob(true)[2]'),
|
|
4205
3234
|
],
|
|
4206
3235
|
'£':
|
|
4207
3236
|
[
|
|
4208
|
-
define('atob(NaN)[1]'
|
|
3237
|
+
define('atob(NaN)[1]'),
|
|
4209
3238
|
],
|
|
4210
3239
|
'¥':
|
|
4211
3240
|
[
|
|
4212
|
-
define('atob("0false")[2]'
|
|
3241
|
+
define('atob("0false")[2]'),
|
|
4213
3242
|
],
|
|
4214
3243
|
'§':
|
|
4215
3244
|
[
|
|
4216
|
-
define('atob("00undefined")[2]'
|
|
3245
|
+
define('atob("00undefined")[2]'),
|
|
4217
3246
|
],
|
|
4218
3247
|
'©':
|
|
4219
3248
|
[
|
|
4220
|
-
define('atob("false0")[1]'
|
|
3249
|
+
define('atob("false0")[1]'),
|
|
4221
3250
|
],
|
|
4222
3251
|
'±':
|
|
4223
3252
|
[
|
|
4224
|
-
define('atob("0false")[3]'
|
|
3253
|
+
define('atob("0false")[3]'),
|
|
4225
3254
|
],
|
|
4226
3255
|
'¶':
|
|
4227
3256
|
[
|
|
4228
|
-
define('atob(true)[0]'
|
|
3257
|
+
define('atob(true)[0]'),
|
|
4229
3258
|
],
|
|
4230
3259
|
'º':
|
|
4231
3260
|
[
|
|
4232
|
-
define('atob("undefined0")[0]'
|
|
3261
|
+
define('atob("undefined0")[0]'),
|
|
4233
3262
|
],
|
|
4234
3263
|
'»':
|
|
4235
3264
|
[
|
|
4236
|
-
define('atob(true)[1]'
|
|
3265
|
+
define('atob(true)[1]'),
|
|
4237
3266
|
],
|
|
4238
3267
|
'Ç':
|
|
4239
3268
|
[
|
|
4240
|
-
define('atob("falsefalsefalse")[10]'
|
|
3269
|
+
define('atob("falsefalsefalse")[10]'),
|
|
4241
3270
|
],
|
|
4242
3271
|
'Ú':
|
|
4243
3272
|
[
|
|
4244
|
-
define('atob("0truefalse")[1]'
|
|
3273
|
+
define('atob("0truefalse")[1]'),
|
|
4245
3274
|
],
|
|
4246
3275
|
'Ý':
|
|
4247
3276
|
[
|
|
4248
|
-
define('atob("0undefined")[2]'
|
|
3277
|
+
define('atob("0undefined")[2]'),
|
|
4249
3278
|
],
|
|
4250
3279
|
'â':
|
|
4251
3280
|
[
|
|
4252
|
-
define('atob("falsefalseundefined")[11]'
|
|
3281
|
+
define('atob("falsefalseundefined")[11]'),
|
|
4253
3282
|
],
|
|
4254
3283
|
'é':
|
|
4255
3284
|
[
|
|
4256
|
-
define('atob("0undefined")[1]'
|
|
3285
|
+
define('atob("0undefined")[1]'),
|
|
4257
3286
|
],
|
|
4258
3287
|
'î':
|
|
4259
3288
|
[
|
|
4260
|
-
define('atob("0truefalse")[2]'
|
|
3289
|
+
define('atob("0truefalse")[2]'),
|
|
4261
3290
|
],
|
|
4262
3291
|
'ö':
|
|
4263
3292
|
[
|
|
4264
|
-
define('atob("0false")[1]'
|
|
3293
|
+
define('atob("0false")[1]'),
|
|
4265
3294
|
],
|
|
4266
3295
|
'ø':
|
|
4267
3296
|
[
|
|
4268
|
-
define('atob("undefinedundefined")[10]'
|
|
3297
|
+
define('atob("undefinedundefined")[10]'),
|
|
4269
3298
|
],
|
|
4270
3299
|
'∞':
|
|
4271
3300
|
[
|
|
4272
|
-
define('Infinity[TO_LOCALE_STRING]("ja")[SLICE_OR_SUBSTR]("-1")'
|
|
3301
|
+
define('Infinity[TO_LOCALE_STRING]("ja")[SLICE_OR_SUBSTR]("-1")'),
|
|
3302
|
+
define('Infinity[TO_LOCALE_STRING]("ja").at("-1")', AT),
|
|
4273
3303
|
define('Infinity[TO_LOCALE_STRING]()', LOCALE_INFINITY),
|
|
4274
|
-
define('Infinity[TO_LOCALE_STRING]("
|
|
3304
|
+
define('Infinity[TO_LOCALE_STRING]("ru")', RUSSIAN_INFINITY),
|
|
4275
3305
|
defineCharDefault(),
|
|
4276
3306
|
],
|
|
4277
3307
|
});
|
|
@@ -4285,7 +3315,7 @@
|
|
|
4285
3315
|
String: define('String.name', NAME),
|
|
4286
3316
|
fromCharCo:
|
|
4287
3317
|
define({ expr: '"from3har3o".split(3).join("C")', optimize: { complexOpt: false } }),
|
|
4288
|
-
mCh: define('atob("bUNo")'
|
|
3318
|
+
mCh: define('atob("bUNo")'),
|
|
4289
3319
|
});
|
|
4290
3320
|
|
|
4291
3321
|
CONSTANTS =
|
|
@@ -4297,33 +3327,18 @@
|
|
|
4297
3327
|
[
|
|
4298
3328
|
define('[].constructor'),
|
|
4299
3329
|
],
|
|
4300
|
-
Audio:
|
|
4301
|
-
[
|
|
4302
|
-
define('Function("return Audio")()', HTMLAUDIOELEMENT),
|
|
4303
|
-
define('self.Audio', HTMLAUDIOELEMENT, SELF_OBJ),
|
|
4304
|
-
],
|
|
4305
3330
|
Boolean:
|
|
4306
3331
|
[
|
|
4307
3332
|
define('false.constructor'),
|
|
4308
3333
|
],
|
|
4309
|
-
Date:
|
|
4310
|
-
[
|
|
4311
|
-
define('Function("return Date")()'),
|
|
4312
|
-
define('self.Date', SELF_OBJ),
|
|
4313
|
-
],
|
|
4314
3334
|
Function:
|
|
4315
3335
|
[
|
|
4316
3336
|
define('ANY_FUNCTION.constructor'),
|
|
4317
3337
|
],
|
|
4318
3338
|
Intl:
|
|
4319
3339
|
[
|
|
4320
|
-
define('Function("return Intl")()'
|
|
4321
|
-
define('self.Intl',
|
|
4322
|
-
],
|
|
4323
|
-
Node:
|
|
4324
|
-
[
|
|
4325
|
-
define('Function("return Node")()', NODECONSTRUCTOR),
|
|
4326
|
-
define('self.Node', NODECONSTRUCTOR, SELF_OBJ),
|
|
3340
|
+
define('Function("return Intl")()'),
|
|
3341
|
+
define('self.Intl', SELF),
|
|
4327
3342
|
],
|
|
4328
3343
|
Number:
|
|
4329
3344
|
[
|
|
@@ -4331,8 +3346,8 @@
|
|
|
4331
3346
|
],
|
|
4332
3347
|
Object:
|
|
4333
3348
|
[
|
|
3349
|
+
define('Intl.constructor'),
|
|
4334
3350
|
define('PLAIN_OBJECT.constructor'),
|
|
4335
|
-
define('Intl.constructor', INTL),
|
|
4336
3351
|
define('[].entries().constructor', OBJECT_ARRAY_ENTRIES_CTOR),
|
|
4337
3352
|
],
|
|
4338
3353
|
RegExp:
|
|
@@ -4345,38 +3360,32 @@
|
|
|
4345
3360
|
],
|
|
4346
3361
|
atob:
|
|
4347
3362
|
[
|
|
4348
|
-
define('Function("return atob")()'
|
|
4349
|
-
define('self.atob',
|
|
3363
|
+
define('Function("return atob")()'),
|
|
3364
|
+
define('self.atob', SELF),
|
|
4350
3365
|
],
|
|
4351
3366
|
btoa:
|
|
4352
3367
|
[
|
|
4353
|
-
define('Function("return btoa")()'
|
|
4354
|
-
define('self.btoa',
|
|
3368
|
+
define('Function("return btoa")()'),
|
|
3369
|
+
define('self.btoa', SELF),
|
|
4355
3370
|
],
|
|
4356
3371
|
document:
|
|
4357
3372
|
[
|
|
4358
|
-
define({ expr: 'Function("return document")()', optimize: true },
|
|
4359
|
-
define({ expr: 'self.document', optimize: true },
|
|
3373
|
+
define({ expr: 'Function("return document")()', optimize: true }, DOCUMENT),
|
|
3374
|
+
define({ expr: 'self.document', optimize: true }, DOCUMENT, SELF),
|
|
4360
3375
|
],
|
|
4361
3376
|
escape:
|
|
4362
3377
|
[
|
|
4363
3378
|
define({ expr: 'Function("return escape")()', optimize: true }),
|
|
4364
|
-
define({ expr: 'self.escape', optimize: true },
|
|
4365
|
-
],
|
|
4366
|
-
location:
|
|
4367
|
-
[
|
|
4368
|
-
define('Function("return location")()', LOCATION),
|
|
4369
|
-
define('self.location', LOCATION, SELF_OBJ),
|
|
3379
|
+
define({ expr: 'self.escape', optimize: true }, SELF),
|
|
4370
3380
|
],
|
|
4371
3381
|
self:
|
|
4372
3382
|
[
|
|
4373
|
-
define('Function("return self")()',
|
|
4374
|
-
define('[].concat.call()[0]', CALL_ON_GLOBAL, SELF_OBJ),
|
|
3383
|
+
define('Function("return self")()', SELF),
|
|
4375
3384
|
],
|
|
4376
3385
|
unescape:
|
|
4377
3386
|
[
|
|
4378
3387
|
define({ expr: 'Function("return unescape")()', optimize: true }),
|
|
4379
|
-
define({ expr: 'self.unescape', optimize: true },
|
|
3388
|
+
define({ expr: 'self.unescape', optimize: true }, SELF),
|
|
4380
3389
|
],
|
|
4381
3390
|
|
|
4382
3391
|
// Custom definitions
|
|
@@ -4385,7 +3394,6 @@
|
|
|
4385
3394
|
[
|
|
4386
3395
|
define('FILTER'),
|
|
4387
3396
|
define('AT', AT),
|
|
4388
|
-
define('FILL', FILL),
|
|
4389
3397
|
define('FLAT', FLAT),
|
|
4390
3398
|
],
|
|
4391
3399
|
ARRAY_ITERATOR:
|
|
@@ -4396,114 +3404,6 @@
|
|
|
4396
3404
|
[
|
|
4397
3405
|
define('[].at', AT),
|
|
4398
3406
|
],
|
|
4399
|
-
ESCAPING_BACKSLASH:
|
|
4400
|
-
[
|
|
4401
|
-
define(backslashDefinition),
|
|
4402
|
-
define({ expr: 'atob("01y")[1]', solutionType: SolutionType.STRING }, ATOB),
|
|
4403
|
-
define
|
|
4404
|
-
(
|
|
4405
|
-
{ expr: '(RP_0_S + RegExp("\\n"))[1]', solutionType: SolutionType.STRING },
|
|
4406
|
-
ESC_REGEXP_LF
|
|
4407
|
-
),
|
|
4408
|
-
define
|
|
4409
|
-
(
|
|
4410
|
-
{ expr: '(RP_5_A + RegExp("".italics()))[10]', solutionType: SolutionType.STRING },
|
|
4411
|
-
ESC_REGEXP_SLASH
|
|
4412
|
-
),
|
|
4413
|
-
define
|
|
4414
|
-
(
|
|
4415
|
-
{ expr: '(RP_3_WA + RegExp("".sub()))[10]', solutionType: SolutionType.STRING },
|
|
4416
|
-
ESC_REGEXP_SLASH
|
|
4417
|
-
),
|
|
4418
|
-
define
|
|
4419
|
-
(
|
|
4420
|
-
{ expr: '(RP_0_S + RegExp(FILTER))[20]', solutionType: SolutionType.STRING },
|
|
4421
|
-
ESC_REGEXP_LF,
|
|
4422
|
-
FF_SRC
|
|
4423
|
-
),
|
|
4424
|
-
define
|
|
4425
|
-
(
|
|
4426
|
-
{ expr: '(RP_0_S + RegExp(Function()))[20]', solutionType: SolutionType.STRING },
|
|
4427
|
-
ESC_REGEXP_LF,
|
|
4428
|
-
FUNCTION_19_LF
|
|
4429
|
-
),
|
|
4430
|
-
define
|
|
4431
|
-
(
|
|
4432
|
-
{ expr: '(RP_5_A + RegExp(Function()))[30]', solutionType: SolutionType.STRING },
|
|
4433
|
-
ESC_REGEXP_LF,
|
|
4434
|
-
FUNCTION_22_LF
|
|
4435
|
-
),
|
|
4436
|
-
define
|
|
4437
|
-
(
|
|
4438
|
-
{ expr: '(RP_0_S + RegExp(ANY_FUNCTION))[1]', solutionType: SolutionType.STRING },
|
|
4439
|
-
ESC_REGEXP_LF,
|
|
4440
|
-
IE_SRC
|
|
4441
|
-
),
|
|
4442
|
-
define
|
|
4443
|
-
(
|
|
4444
|
-
{
|
|
4445
|
-
expr: '(+(RP_0_S + FILTER)[0] + RegExp(FILTER))[23]',
|
|
4446
|
-
solutionType: SolutionType.STRING,
|
|
4447
|
-
},
|
|
4448
|
-
ESC_REGEXP_LF,
|
|
4449
|
-
NO_V8_SRC
|
|
4450
|
-
),
|
|
4451
|
-
define
|
|
4452
|
-
(
|
|
4453
|
-
{ expr: '(RP_4_A + RegExp(AT))[20]', solutionType: SolutionType.STRING },
|
|
4454
|
-
AT,
|
|
4455
|
-
ESC_REGEXP_LF,
|
|
4456
|
-
FF_SRC
|
|
4457
|
-
),
|
|
4458
|
-
define
|
|
4459
|
-
(
|
|
4460
|
-
{
|
|
4461
|
-
expr: '(RP_1_WA + [+(RP_0_S + AT)[0]] + RegExp(AT))[20]',
|
|
4462
|
-
solutionType: SolutionType.STRING,
|
|
4463
|
-
},
|
|
4464
|
-
AT,
|
|
4465
|
-
ESC_REGEXP_LF,
|
|
4466
|
-
NO_V8_SRC
|
|
4467
|
-
),
|
|
4468
|
-
define
|
|
4469
|
-
(
|
|
4470
|
-
{ expr: '(RP_3_WA + RegExp(FILL))[21]', solutionType: SolutionType.STRING },
|
|
4471
|
-
ESC_REGEXP_LF,
|
|
4472
|
-
FF_SRC,
|
|
4473
|
-
FILL
|
|
4474
|
-
),
|
|
4475
|
-
define
|
|
4476
|
-
(
|
|
4477
|
-
{ expr: '(RP_3_WA + RegExp(FLAT))[21]', solutionType: SolutionType.STRING },
|
|
4478
|
-
ESC_REGEXP_LF,
|
|
4479
|
-
FF_SRC,
|
|
4480
|
-
FLAT
|
|
4481
|
-
),
|
|
4482
|
-
define
|
|
4483
|
-
(
|
|
4484
|
-
{
|
|
4485
|
-
expr: '(+(RP_0_S + FILL)[0] + RegExp(FILL))[21]',
|
|
4486
|
-
solutionType: SolutionType.STRING,
|
|
4487
|
-
},
|
|
4488
|
-
ESC_REGEXP_LF,
|
|
4489
|
-
FILL,
|
|
4490
|
-
NO_V8_SRC
|
|
4491
|
-
),
|
|
4492
|
-
define
|
|
4493
|
-
(
|
|
4494
|
-
{
|
|
4495
|
-
expr: '(+(RP_0_S + FLAT)[0] + RegExp(FLAT))[21]',
|
|
4496
|
-
solutionType: SolutionType.STRING,
|
|
4497
|
-
},
|
|
4498
|
-
ESC_REGEXP_LF,
|
|
4499
|
-
FLAT,
|
|
4500
|
-
NO_V8_SRC
|
|
4501
|
-
),
|
|
4502
|
-
],
|
|
4503
|
-
FILL:
|
|
4504
|
-
[
|
|
4505
|
-
define('[].fill', FILL),
|
|
4506
|
-
],
|
|
4507
3407
|
FILTER:
|
|
4508
3408
|
[
|
|
4509
3409
|
define('[].filter'),
|
|
@@ -4521,13 +3421,6 @@
|
|
|
4521
3421
|
define({ expr: '"ar-td"', solutionType: SolutionType.COMBINED_STRING }),
|
|
4522
3422
|
define({ expr: '"ar"', solutionType: SolutionType.COMBINED_STRING }, SHORT_LOCALES),
|
|
4523
3423
|
],
|
|
4524
|
-
LOCATION_CONSTRUCTOR:
|
|
4525
|
-
[
|
|
4526
|
-
define('Function("return location")().constructor', OBJECT_L_LOCATION_CTOR),
|
|
4527
|
-
define('Function("return location")().constructor', OLD_SAFARI_LOCATION_CTOR),
|
|
4528
|
-
define('self.location.constructor', OBJECT_L_LOCATION_CTOR, SELF_OBJ),
|
|
4529
|
-
define('self.location.constructor', OLD_SAFARI_LOCATION_CTOR, SELF_OBJ),
|
|
4530
|
-
],
|
|
4531
3424
|
PLAIN_OBJECT:
|
|
4532
3425
|
[
|
|
4533
3426
|
define('Function("return{}")()'),
|
|
@@ -4564,31 +3457,14 @@
|
|
|
4564
3457
|
{
|
|
4565
3458
|
expr: '"toString"',
|
|
4566
3459
|
optimize: { toStringOpt: false },
|
|
4567
|
-
solutionType: SolutionType.COMBINED_STRING,
|
|
4568
|
-
}
|
|
4569
|
-
),
|
|
4570
|
-
],
|
|
4571
|
-
TO_UPPER_CASE:
|
|
4572
|
-
[
|
|
4573
|
-
define
|
|
4574
|
-
({ expr: '"toUpperCase"', optimize: true, solutionType: SolutionType.COMBINED_STRING }),
|
|
4575
|
-
],
|
|
4576
|
-
USER_AGENT:
|
|
4577
|
-
[
|
|
4578
|
-
define
|
|
4579
|
-
(
|
|
4580
|
-
{
|
|
4581
|
-
expr: 'Function("return navigator")().userAgent',
|
|
4582
|
-
solutionType: SolutionType.STRING,
|
|
4583
|
-
},
|
|
4584
|
-
MOZILLA
|
|
3460
|
+
solutionType: SolutionType.COMBINED_STRING,
|
|
3461
|
+
}
|
|
4585
3462
|
),
|
|
3463
|
+
],
|
|
3464
|
+
TO_UPPER_CASE:
|
|
3465
|
+
[
|
|
4586
3466
|
define
|
|
4587
|
-
(
|
|
4588
|
-
{ expr: 'self.navigator.userAgent', solutionType: SolutionType.STRING },
|
|
4589
|
-
MOZILLA,
|
|
4590
|
-
SELF_OBJ
|
|
4591
|
-
),
|
|
3467
|
+
({ expr: '"toUpperCase"', optimize: true, solutionType: SolutionType.COMBINED_STRING }),
|
|
4592
3468
|
],
|
|
4593
3469
|
|
|
4594
3470
|
// Function body extra padding blocks: prepended to a function to align the function's body
|
|
@@ -4601,11 +3477,9 @@
|
|
|
4601
3477
|
[
|
|
4602
3478
|
define('[[true][+(RP_3_WA + FILTER)[30]]]'),
|
|
4603
3479
|
define('[[true][+(RP_1_WA + AT)[30]]]', AT),
|
|
4604
|
-
define('[[true][+(RP_5_A + FILL)[30]]]', FILL),
|
|
4605
3480
|
define('[[true][+(RP_5_A + FLAT)[30]]]', FLAT),
|
|
4606
3481
|
define('[[true][+!!++(RP_0_S + FILTER)[20]]]', INCR_CHAR),
|
|
4607
3482
|
define('[[true][+!!++(RP_1_WA + AT)[20]]]', AT, INCR_CHAR),
|
|
4608
|
-
define('[[true][+!!++(RP_0_S + FILL)[20]]]', FILL, INCR_CHAR),
|
|
4609
3483
|
define('[[true][+!!++(RP_0_S + FLAT)[20]]]', FLAT, INCR_CHAR),
|
|
4610
3484
|
],
|
|
4611
3485
|
FBEP_9_U:
|
|
@@ -4615,8 +3489,6 @@
|
|
|
4615
3489
|
define
|
|
4616
3490
|
({ expr: '[false][+(RP_1_WA + AT)[20]]', solutionType: SolutionType.UNDEFINED }, AT),
|
|
4617
3491
|
define
|
|
4618
|
-
({ expr: '[false][+(RP_0_S + FILL)[20]]', solutionType: SolutionType.UNDEFINED }, FILL),
|
|
4619
|
-
define
|
|
4620
3492
|
({ expr: '[false][+(RP_0_S + FLAT)[20]]', solutionType: SolutionType.UNDEFINED }, FLAT),
|
|
4621
3493
|
],
|
|
4622
3494
|
FBEP_10_S:
|
|
@@ -4652,14 +3524,6 @@
|
|
|
4652
3524
|
AT
|
|
4653
3525
|
),
|
|
4654
3526
|
define
|
|
4655
|
-
(
|
|
4656
|
-
{
|
|
4657
|
-
expr: '+("10" + [(RP_6_S + FILL)[40]] + "00000")',
|
|
4658
|
-
solutionType: SolutionType.WEAK_ALGEBRAIC,
|
|
4659
|
-
},
|
|
4660
|
-
FILL
|
|
4661
|
-
),
|
|
4662
|
-
define
|
|
4663
3527
|
(
|
|
4664
3528
|
{
|
|
4665
3529
|
expr: '+("10" + [(RP_6_S + FLAT)[40]] + "00000")',
|
|
@@ -4686,14 +3550,6 @@
|
|
|
4686
3550
|
AT
|
|
4687
3551
|
),
|
|
4688
3552
|
define
|
|
4689
|
-
(
|
|
4690
|
-
{
|
|
4691
|
-
expr: '+("1000" + (FILL + 0)[33] + "000")',
|
|
4692
|
-
solutionType: SolutionType.WEAK_ALGEBRAIC,
|
|
4693
|
-
},
|
|
4694
|
-
FILL
|
|
4695
|
-
),
|
|
4696
|
-
define
|
|
4697
3553
|
(
|
|
4698
3554
|
{
|
|
4699
3555
|
expr: '+("1000" + (FLAT + 0)[33] + "000")',
|
|
@@ -4808,564 +3664,143 @@
|
|
|
4808
3664
|
|
|
4809
3665
|
FH_R_PADDING_SHIFTS = [define(1, IE_SRC), define(0, NO_IE_SRC)];
|
|
4810
3666
|
|
|
3667
|
+
var FORMAT_MAPPER_ENTRIES =
|
|
3668
|
+
[
|
|
3669
|
+
define
|
|
3670
|
+
(
|
|
3671
|
+
(function () {
|
|
3672
|
+
var formatMapper =
|
|
3673
|
+
function (accessor)
|
|
3674
|
+
{
|
|
3675
|
+
var mapper =
|
|
3676
|
+
'Function("return function(falsefalse){return function(undefined){return ' +
|
|
3677
|
+
'falsefalse' + accessor + '}}")()';
|
|
3678
|
+
return mapper;
|
|
3679
|
+
};
|
|
3680
|
+
formatMapper.argName = 'undefined';
|
|
3681
|
+
return formatMapper;
|
|
3682
|
+
})()
|
|
3683
|
+
),
|
|
3684
|
+
define
|
|
3685
|
+
(
|
|
3686
|
+
(function () {
|
|
3687
|
+
var formatMapper =
|
|
3688
|
+
function (accessor)
|
|
3689
|
+
{
|
|
3690
|
+
var mapper =
|
|
3691
|
+
'Function("return function(undefined){return this' + accessor + '}")().bind';
|
|
3692
|
+
return mapper;
|
|
3693
|
+
};
|
|
3694
|
+
formatMapper.argName = 'undefined';
|
|
3695
|
+
return formatMapper;
|
|
3696
|
+
})()
|
|
3697
|
+
),
|
|
3698
|
+
define
|
|
3699
|
+
(
|
|
3700
|
+
(function () {
|
|
3701
|
+
var formatMapper =
|
|
3702
|
+
function (accessor)
|
|
3703
|
+
{
|
|
3704
|
+
var mapper =
|
|
3705
|
+
'Function("return function(f){return this' + accessor + '}")().bind';
|
|
3706
|
+
return mapper;
|
|
3707
|
+
};
|
|
3708
|
+
formatMapper.argName = 'f';
|
|
3709
|
+
return formatMapper;
|
|
3710
|
+
})()
|
|
3711
|
+
),
|
|
3712
|
+
define
|
|
3713
|
+
(
|
|
3714
|
+
(function () {
|
|
3715
|
+
var formatMapper =
|
|
3716
|
+
function (accessor)
|
|
3717
|
+
{
|
|
3718
|
+
var mapper =
|
|
3719
|
+
'Function("return falsefalse=>undefined=>falsefalse' + accessor + '")()';
|
|
3720
|
+
return mapper;
|
|
3721
|
+
};
|
|
3722
|
+
formatMapper.argName = 'undefined';
|
|
3723
|
+
return formatMapper;
|
|
3724
|
+
})(),
|
|
3725
|
+
ARROW
|
|
3726
|
+
),
|
|
3727
|
+
];
|
|
3728
|
+
|
|
3729
|
+
FORMAT_MAPPER_LONG =
|
|
3730
|
+
defineList
|
|
3731
|
+
(
|
|
3732
|
+
FORMAT_MAPPER_ENTRIES,
|
|
3733
|
+
[
|
|
3734
|
+
define(0),
|
|
3735
|
+
define(2, ARRAY_ITERATOR),
|
|
3736
|
+
define(0, NO_FF_SRC),
|
|
3737
|
+
define(0, NO_V8_SRC),
|
|
3738
|
+
define(2, ARRAY_ITERATOR, CAPITAL_HTML),
|
|
3739
|
+
define(0, ARRAY_ITERATOR, AT),
|
|
3740
|
+
define(0, ARRAY_ITERATOR, FLAT),
|
|
3741
|
+
define(0, ARRAY_ITERATOR, NO_IE_SRC),
|
|
3742
|
+
define(0, ARRAY_ITERATOR, CAPITAL_HTML, IE_SRC),
|
|
3743
|
+
define(3),
|
|
3744
|
+
]
|
|
3745
|
+
);
|
|
3746
|
+
|
|
3747
|
+
FORMAT_MAPPER_SHORT =
|
|
3748
|
+
defineList
|
|
3749
|
+
(
|
|
3750
|
+
FORMAT_MAPPER_ENTRIES,
|
|
3751
|
+
[
|
|
3752
|
+
define(0),
|
|
3753
|
+
define(1, ARRAY_ITERATOR),
|
|
3754
|
+
define(0, NO_FF_SRC),
|
|
3755
|
+
define(0, NO_V8_SRC),
|
|
3756
|
+
define(1, ARRAY_ITERATOR, CAPITAL_HTML),
|
|
3757
|
+
define(0, ARRAY_ITERATOR, AT),
|
|
3758
|
+
define(0, ARRAY_ITERATOR, FLAT),
|
|
3759
|
+
define(0, ARRAY_ITERATOR, NO_IE_SRC),
|
|
3760
|
+
define(0, ARRAY_ITERATOR, CAPITAL_HTML, IE_SRC),
|
|
3761
|
+
define(3),
|
|
3762
|
+
]
|
|
3763
|
+
);
|
|
3764
|
+
|
|
4811
3765
|
FROM_CHAR_CODE =
|
|
4812
3766
|
defineList
|
|
4813
3767
|
(
|
|
4814
3768
|
[define('fromCharCode'), define('fromCodePoint', FROM_CODE_POINT)],
|
|
4815
3769
|
[
|
|
4816
3770
|
define(0),
|
|
4817
|
-
define(1
|
|
4818
|
-
define(
|
|
4819
|
-
define
|
|
4820
|
-
(
|
|
4821
|
-
|
|
4822
|
-
|
|
4823
|
-
CALL_ON_GLOBAL,
|
|
4824
|
-
FROM_CODE_POINT,
|
|
4825
|
-
INCR_CHAR,
|
|
4826
|
-
NAME,
|
|
4827
|
-
NODECONSTRUCTOR,
|
|
4828
|
-
SELF_OBJ
|
|
4829
|
-
),
|
|
4830
|
-
define(1, ASYNC_FUNCTION, NO_FF_SRC),
|
|
4831
|
-
define(1, ASYNC_FUNCTION, NO_V8_SRC),
|
|
4832
|
-
define(0, ARRAY_ITERATOR, ASYNC_FUNCTION, FROM_CODE_POINT, NAME),
|
|
4833
|
-
define(1, ARRAY_ITERATOR, ASYNC_FUNCTION, AT, NAME),
|
|
4834
|
-
define(1, ARRAY_ITERATOR, ASYNC_FUNCTION, FILL, NAME),
|
|
4835
|
-
define(1, ARRAY_ITERATOR, ASYNC_FUNCTION, FLAT, NAME),
|
|
4836
|
-
define(1, ARRAY_ITERATOR, ASYNC_FUNCTION, NAME, NO_IE_SRC),
|
|
4837
|
-
define(1, ARRAY_ITERATOR, ASYNC_FUNCTION, NAME, NO_V8_SRC),
|
|
4838
|
-
define(0, ARRAY_ITERATOR, ATOB, FROM_CODE_POINT, IE_SRC, ITERATOR_HELPER),
|
|
4839
|
-
define
|
|
4840
|
-
(
|
|
4841
|
-
0,
|
|
4842
|
-
ASYNC_FUNCTION,
|
|
4843
|
-
AT,
|
|
4844
|
-
CALL_ON_GLOBAL,
|
|
4845
|
-
FROM_CODE_POINT,
|
|
4846
|
-
NAME,
|
|
4847
|
-
NODECONSTRUCTOR,
|
|
4848
|
-
SELF_OBJ
|
|
4849
|
-
),
|
|
4850
|
-
define(1, ARRAY_ITERATOR, AT, ATOB, IE_SRC, ITERATOR_HELPER),
|
|
4851
|
-
define
|
|
4852
|
-
(
|
|
4853
|
-
0,
|
|
4854
|
-
ASYNC_FUNCTION,
|
|
4855
|
-
CALL_ON_GLOBAL,
|
|
4856
|
-
FLAT,
|
|
4857
|
-
FROM_CODE_POINT,
|
|
4858
|
-
NAME,
|
|
4859
|
-
NODECONSTRUCTOR,
|
|
4860
|
-
SELF_OBJ
|
|
4861
|
-
),
|
|
4862
|
-
define
|
|
4863
|
-
(1, ASYNC_FUNCTION, AT, CALL_ON_GLOBAL, NAME, NODECONSTRUCTOR, NO_FF_SRC, SELF_OBJ),
|
|
4864
|
-
define
|
|
4865
|
-
(1, ASYNC_FUNCTION, AT, CALL_ON_GLOBAL, NAME, NODECONSTRUCTOR, NO_V8_SRC, SELF_OBJ),
|
|
4866
|
-
define
|
|
4867
|
-
(1, ASYNC_FUNCTION, CALL_ON_GLOBAL, FLAT, NAME, NODECONSTRUCTOR, NO_FF_SRC, SELF_OBJ),
|
|
4868
|
-
define
|
|
4869
|
-
(1, ASYNC_FUNCTION, CALL_ON_GLOBAL, FLAT, NAME, NODECONSTRUCTOR, NO_V8_SRC, SELF_OBJ),
|
|
4870
|
-
define(0, ATOB, FROM_CODE_POINT, INTL, ITERATOR_HELPER),
|
|
4871
|
-
define(1, ATOB, FILL, INTL, ITERATOR_HELPER),
|
|
4872
|
-
define(1, ATOB, IE_SRC, INTL, ITERATOR_HELPER),
|
|
4873
|
-
define(1, ATOB, INTL, ITERATOR_HELPER, NO_IE_SRC),
|
|
4874
|
-
define
|
|
4875
|
-
(0, ASYNC_FUNCTION, CALL_ON_GLOBAL, FROM_CODE_POINT, IE_SRC, NODECONSTRUCTOR, SELF_OBJ),
|
|
4876
|
-
define(1, ASYNC_FUNCTION, AT, CALL_ON_GLOBAL, IE_SRC, NODECONSTRUCTOR, SELF_OBJ),
|
|
4877
|
-
define(1, ASYNC_FUNCTION, CALL_ON_GLOBAL, FILL, IE_SRC, NODECONSTRUCTOR, SELF_OBJ),
|
|
4878
|
-
define(1, ASYNC_FUNCTION, CALL_ON_GLOBAL, FLAT, IE_SRC, NODECONSTRUCTOR, SELF_OBJ),
|
|
4879
|
-
define(0, ARRAY_ITERATOR, ATOB, FROM_CODE_POINT, ITERATOR_HELPER, NO_IE_SRC),
|
|
4880
|
-
define
|
|
4881
|
-
(
|
|
4882
|
-
0,
|
|
4883
|
-
ASYNC_FUNCTION,
|
|
4884
|
-
CALL_ON_GLOBAL,
|
|
4885
|
-
FLAT,
|
|
4886
|
-
FROM_CODE_POINT,
|
|
4887
|
-
IE_SRC,
|
|
4888
|
-
NAME,
|
|
4889
|
-
NODECONSTRUCTOR,
|
|
4890
|
-
SELF_OBJ
|
|
4891
|
-
),
|
|
4892
|
-
define(1, ARRAY_ITERATOR, AT, ATOB, ITERATOR_HELPER, NO_IE_SRC),
|
|
4893
|
-
define
|
|
4894
|
-
(
|
|
4895
|
-
0,
|
|
4896
|
-
ASYNC_FUNCTION,
|
|
4897
|
-
CALL_ON_GLOBAL,
|
|
4898
|
-
FILL,
|
|
4899
|
-
FROM_CODE_POINT,
|
|
4900
|
-
NAME,
|
|
4901
|
-
NODECONSTRUCTOR,
|
|
4902
|
-
SELF_OBJ
|
|
4903
|
-
),
|
|
4904
|
-
define
|
|
4905
|
-
(1, ASYNC_FUNCTION, CALL_ON_GLOBAL, FILL, NAME, NODECONSTRUCTOR, NO_FF_SRC, SELF_OBJ),
|
|
4906
|
-
define
|
|
4907
|
-
(1, ASYNC_FUNCTION, CALL_ON_GLOBAL, FILL, NAME, NODECONSTRUCTOR, NO_V8_SRC, SELF_OBJ),
|
|
4908
|
-
define
|
|
4909
|
-
(
|
|
4910
|
-
0,
|
|
4911
|
-
ASYNC_FUNCTION,
|
|
4912
|
-
CALL_ON_GLOBAL,
|
|
4913
|
-
FILL,
|
|
4914
|
-
FROM_CODE_POINT,
|
|
4915
|
-
IE_SRC,
|
|
4916
|
-
NAME,
|
|
4917
|
-
NODECONSTRUCTOR,
|
|
4918
|
-
SELF_OBJ
|
|
4919
|
-
),
|
|
4920
|
-
define(1, AT, ATOB, INTL, ITERATOR_HELPER),
|
|
4921
|
-
define(0, ATOB, FROM_CODE_POINT, ITERATOR_HELPER, SELF_OBJ),
|
|
4922
|
-
define(1, ARRAY_ITERATOR, ATOB, ITERATOR_HELPER, SELF_OBJ),
|
|
4923
|
-
define(1, ATOB, FILL, ITERATOR_HELPER, SELF_OBJ),
|
|
4924
|
-
define(1, ATOB, FLAT, INTL, ITERATOR_HELPER),
|
|
4925
|
-
define(1, ATOB, FLAT, ITERATOR_HELPER, SELF_OBJ),
|
|
4926
|
-
define
|
|
4927
|
-
(
|
|
4928
|
-
0,
|
|
4929
|
-
ARRAY_ITERATOR,
|
|
4930
|
-
ASYNC_FUNCTION,
|
|
4931
|
-
CALL_ON_GLOBAL,
|
|
4932
|
-
FROM_CODE_POINT,
|
|
4933
|
-
NODECONSTRUCTOR,
|
|
4934
|
-
SELF_OBJ
|
|
4935
|
-
),
|
|
4936
|
-
define
|
|
4937
|
-
(1, ARRAY_ITERATOR, ASYNC_FUNCTION, AT, CALL_ON_GLOBAL, NODECONSTRUCTOR, SELF_OBJ),
|
|
4938
|
-
define
|
|
4939
|
-
(1, ARRAY_ITERATOR, ASYNC_FUNCTION, CALL_ON_GLOBAL, FLAT, NODECONSTRUCTOR, SELF_OBJ),
|
|
4940
|
-
define
|
|
4941
|
-
(
|
|
4942
|
-
1,
|
|
4943
|
-
ARRAY_ITERATOR,
|
|
4944
|
-
ASYNC_FUNCTION,
|
|
4945
|
-
CALL_ON_GLOBAL,
|
|
4946
|
-
FILL,
|
|
4947
|
-
INCR_CHAR,
|
|
4948
|
-
NODECONSTRUCTOR,
|
|
4949
|
-
SELF_OBJ
|
|
4950
|
-
),
|
|
4951
|
-
define
|
|
4952
|
-
(
|
|
4953
|
-
1,
|
|
4954
|
-
ARRAY_ITERATOR,
|
|
4955
|
-
ASYNC_FUNCTION,
|
|
4956
|
-
CALL_ON_GLOBAL,
|
|
4957
|
-
FILL,
|
|
4958
|
-
NODECONSTRUCTOR,
|
|
4959
|
-
NO_FF_SRC,
|
|
4960
|
-
SELF_OBJ
|
|
4961
|
-
),
|
|
4962
|
-
define
|
|
4963
|
-
(
|
|
4964
|
-
0,
|
|
4965
|
-
ARRAY_ITERATOR,
|
|
4966
|
-
ASYNC_FUNCTION,
|
|
4967
|
-
CALL_ON_GLOBAL,
|
|
4968
|
-
FROM_CODE_POINT,
|
|
4969
|
-
NAME,
|
|
4970
|
-
NODECONSTRUCTOR,
|
|
4971
|
-
SELF_OBJ
|
|
4972
|
-
),
|
|
4973
|
-
define
|
|
4974
|
-
(
|
|
4975
|
-
1,
|
|
4976
|
-
ARRAY_ITERATOR,
|
|
4977
|
-
ASYNC_FUNCTION,
|
|
4978
|
-
CALL_ON_GLOBAL,
|
|
4979
|
-
FLAT,
|
|
4980
|
-
NAME,
|
|
4981
|
-
NODECONSTRUCTOR,
|
|
4982
|
-
NO_FF_SRC,
|
|
4983
|
-
SELF_OBJ
|
|
4984
|
-
),
|
|
4985
|
-
define
|
|
4986
|
-
(
|
|
4987
|
-
1,
|
|
4988
|
-
ARRAY_ITERATOR,
|
|
4989
|
-
ASYNC_FUNCTION,
|
|
4990
|
-
CALL_ON_GLOBAL,
|
|
4991
|
-
FLAT,
|
|
4992
|
-
NAME,
|
|
4993
|
-
NODECONSTRUCTOR,
|
|
4994
|
-
NO_V8_SRC,
|
|
4995
|
-
SELF_OBJ
|
|
4996
|
-
),
|
|
4997
|
-
define
|
|
4998
|
-
(
|
|
4999
|
-
0,
|
|
5000
|
-
ARRAY_ITERATOR,
|
|
5001
|
-
ASYNC_FUNCTION,
|
|
5002
|
-
CALL_ON_GLOBAL,
|
|
5003
|
-
FLAT,
|
|
5004
|
-
FROM_CODE_POINT,
|
|
5005
|
-
IE_SRC,
|
|
5006
|
-
NAME,
|
|
5007
|
-
NODECONSTRUCTOR,
|
|
5008
|
-
SELF_OBJ
|
|
5009
|
-
),
|
|
5010
|
-
define
|
|
5011
|
-
(
|
|
5012
|
-
1,
|
|
5013
|
-
ARRAY_ITERATOR,
|
|
5014
|
-
ASYNC_FUNCTION,
|
|
5015
|
-
CALL_ON_GLOBAL,
|
|
5016
|
-
FILL,
|
|
5017
|
-
NODECONSTRUCTOR,
|
|
5018
|
-
NO_V8_SRC,
|
|
5019
|
-
SELF_OBJ
|
|
5020
|
-
),
|
|
5021
|
-
define
|
|
5022
|
-
(
|
|
5023
|
-
0,
|
|
5024
|
-
ARRAY_ITERATOR,
|
|
5025
|
-
ASYNC_FUNCTION,
|
|
5026
|
-
CALL_ON_GLOBAL,
|
|
5027
|
-
FILL,
|
|
5028
|
-
FROM_CODE_POINT,
|
|
5029
|
-
IE_SRC,
|
|
5030
|
-
NAME,
|
|
5031
|
-
NODECONSTRUCTOR,
|
|
5032
|
-
SELF_OBJ
|
|
5033
|
-
),
|
|
5034
|
-
define
|
|
5035
|
-
(
|
|
5036
|
-
1,
|
|
5037
|
-
ARRAY_ITERATOR,
|
|
5038
|
-
ASYNC_FUNCTION,
|
|
5039
|
-
AT,
|
|
5040
|
-
CALL_ON_GLOBAL,
|
|
5041
|
-
NAME,
|
|
5042
|
-
NODECONSTRUCTOR,
|
|
5043
|
-
NO_FF_SRC,
|
|
5044
|
-
SELF_OBJ
|
|
5045
|
-
),
|
|
5046
|
-
define
|
|
5047
|
-
(
|
|
5048
|
-
1,
|
|
5049
|
-
ARRAY_ITERATOR,
|
|
5050
|
-
ASYNC_FUNCTION,
|
|
5051
|
-
AT,
|
|
5052
|
-
CALL_ON_GLOBAL,
|
|
5053
|
-
NAME,
|
|
5054
|
-
NODECONSTRUCTOR,
|
|
5055
|
-
NO_V8_SRC,
|
|
5056
|
-
SELF_OBJ
|
|
5057
|
-
),
|
|
5058
|
-
define(0, ASYNC_FUNCTION, FROM_CODE_POINT, ITERATOR_HELPER),
|
|
5059
|
-
define(1, ASYNC_FUNCTION, FLAT, ITERATOR_HELPER),
|
|
5060
|
-
define(1, ASYNC_FUNCTION, ITERATOR_HELPER, NO_V8_SRC),
|
|
5061
|
-
define(0, ASYNC_FUNCTION, FROM_CODE_POINT, INTL, ITERATOR_HELPER),
|
|
5062
|
-
define(1, ASYNC_FUNCTION, IE_SRC, INTL, ITERATOR_HELPER),
|
|
5063
|
-
define(1, ASYNC_FUNCTION, FLAT, INTL, ITERATOR_HELPER, NO_V8_SRC),
|
|
5064
|
-
define(0, ASYNC_FUNCTION, FROM_CODE_POINT, ITERATOR_HELPER, NODECONSTRUCTOR, NO_V8_SRC),
|
|
5065
|
-
define(1, ASYNC_FUNCTION, FILL, ITERATOR_HELPER, NODECONSTRUCTOR, NO_V8_SRC),
|
|
5066
|
-
define
|
|
5067
|
-
(0, ASYNC_FUNCTION, FROM_CODE_POINT, INTL, ITERATOR_HELPER, NODECONSTRUCTOR, NO_V8_SRC),
|
|
5068
|
-
define(1, ASYNC_FUNCTION, IE_SRC, ITERATOR_HELPER, NODECONSTRUCTOR),
|
|
5069
|
-
define(1, ASYNC_FUNCTION, FLAT, ITERATOR_HELPER, NODECONSTRUCTOR, NO_V8_SRC),
|
|
5070
|
-
define(0, ASYNC_FUNCTION, FLAT, FROM_CODE_POINT, ITERATOR_HELPER, SELF_OBJ),
|
|
5071
|
-
define(0, ASYNC_FUNCTION, FROM_CODE_POINT, ITERATOR_HELPER, NO_V8_SRC, SELF_OBJ),
|
|
5072
|
-
define(1, ASYNC_FUNCTION, IE_SRC, ITERATOR_HELPER, SELF_OBJ),
|
|
5073
|
-
define(1, ASYNC_FUNCTION, FLAT, ITERATOR_HELPER, NO_V8_SRC, SELF_OBJ),
|
|
5074
|
-
define
|
|
5075
|
-
(
|
|
5076
|
-
0,
|
|
5077
|
-
ASYNC_FUNCTION,
|
|
5078
|
-
CALL_ON_GLOBAL,
|
|
5079
|
-
FROM_CODE_POINT,
|
|
5080
|
-
ITERATOR_HELPER,
|
|
5081
|
-
NO_V8_SRC,
|
|
5082
|
-
SELF_OBJ
|
|
5083
|
-
),
|
|
5084
|
-
define(1, ASYNC_FUNCTION, ITERATOR_HELPER, NO_IE_SRC),
|
|
5085
|
-
define(0, ASYNC_FUNCTION, FROM_CODE_POINT, INTL, ITERATOR_HELPER, NO_IE_SRC),
|
|
5086
|
-
define(0, ASYNC_FUNCTION, FROM_CODE_POINT, ITERATOR_HELPER, NO_IE_SRC, SELF_OBJ),
|
|
5087
|
-
define(1, ASYNC_FUNCTION, ITERATOR_HELPER, V8_SRC),
|
|
5088
|
-
define(1, ASYNC_FUNCTION, FF_SRC, INTL, ITERATOR_HELPER),
|
|
5089
|
-
define(1, ASYNC_FUNCTION, FILL, INTL, ITERATOR_HELPER, NO_IE_SRC),
|
|
5090
|
-
define(1, ASYNC_FUNCTION, FLAT, INTL, ITERATOR_HELPER, NO_IE_SRC),
|
|
5091
|
-
define
|
|
5092
|
-
(0, ASYNC_FUNCTION, FROM_CODE_POINT, ITERATOR_HELPER, NAME, NODECONSTRUCTOR, NO_IE_SRC),
|
|
5093
|
-
define(1, ASYNC_FUNCTION, FF_SRC, ITERATOR_HELPER, SELF_OBJ),
|
|
5094
|
-
define(1, ASYNC_FUNCTION, FILL, ITERATOR_HELPER, NO_IE_SRC, SELF_OBJ),
|
|
5095
|
-
define(1, ASYNC_FUNCTION, FLAT, ITERATOR_HELPER, NO_IE_SRC, SELF_OBJ),
|
|
5096
|
-
define(1, ASYNC_FUNCTION, ITERATOR_HELPER, NAME, NODECONSTRUCTOR, V8_SRC),
|
|
5097
|
-
define(1, ASYNC_FUNCTION, FILL, ITERATOR_HELPER, NAME, NODECONSTRUCTOR, NO_IE_SRC),
|
|
5098
|
-
define(0, ASYNC_FUNCTION, FLAT, FROM_CODE_POINT, ITERATOR_HELPER, NAME),
|
|
5099
|
-
define
|
|
5100
|
-
(0, ASYNC_FUNCTION, CALL_ON_GLOBAL, FF_SRC, FROM_CODE_POINT, ITERATOR_HELPER, SELF_OBJ),
|
|
5101
|
-
define
|
|
5102
|
-
(0, ASYNC_FUNCTION, CALL_ON_GLOBAL, FROM_CODE_POINT, ITERATOR_HELPER, SELF_OBJ, V8_SRC),
|
|
5103
|
-
define
|
|
5104
|
-
(
|
|
5105
|
-
0,
|
|
5106
|
-
ASYNC_FUNCTION,
|
|
5107
|
-
CALL_ON_GLOBAL,
|
|
5108
|
-
FILL,
|
|
5109
|
-
FROM_CODE_POINT,
|
|
5110
|
-
ITERATOR_HELPER,
|
|
5111
|
-
NO_IE_SRC,
|
|
5112
|
-
SELF_OBJ
|
|
5113
|
-
),
|
|
5114
|
-
define
|
|
5115
|
-
(
|
|
5116
|
-
0,
|
|
5117
|
-
ASYNC_FUNCTION,
|
|
5118
|
-
CALL_ON_GLOBAL,
|
|
5119
|
-
FLAT,
|
|
5120
|
-
FROM_CODE_POINT,
|
|
5121
|
-
ITERATOR_HELPER,
|
|
5122
|
-
NO_IE_SRC,
|
|
5123
|
-
SELF_OBJ
|
|
5124
|
-
),
|
|
5125
|
-
define(1, ASYNC_FUNCTION, FLAT, ITERATOR_HELPER, NAME, NO_IE_SRC),
|
|
5126
|
-
define(0, ATOB, FROM_CODE_POINT, ITERATOR_HELPER, NAME),
|
|
5127
|
-
define
|
|
5128
|
-
(
|
|
5129
|
-
0,
|
|
5130
|
-
ASYNC_FUNCTION,
|
|
5131
|
-
CALL_ON_GLOBAL,
|
|
5132
|
-
FLAT,
|
|
5133
|
-
FROM_CODE_POINT,
|
|
5134
|
-
ITERATOR_HELPER,
|
|
5135
|
-
NAME,
|
|
5136
|
-
SELF_OBJ
|
|
5137
|
-
),
|
|
5138
|
-
define(1, ATOB, ITERATOR_HELPER, NAME, NO_V8_SRC),
|
|
5139
|
-
define(0, ATOB, FROM_CODE_POINT, ITERATOR_HELPER, NAME, NODECONSTRUCTOR),
|
|
5140
|
-
define(1, ATOB, INCR_CHAR, ITERATOR_HELPER, NAME),
|
|
5141
|
-
define(0, ATOB, FROM_CODE_POINT, INCR_CHAR, INTL, ITERATOR_HELPER, NAME),
|
|
5142
|
-
define(0, ATOB, FROM_CODE_POINT, INCR_CHAR, ITERATOR_HELPER, NAME, NODECONSTRUCTOR),
|
|
5143
|
-
define(0, ATOB, FROM_CODE_POINT, INCR_CHAR, ITERATOR_HELPER, NAME, NO_FF_SRC),
|
|
5144
|
-
define(0, ATOB, FROM_CODE_POINT, INCR_CHAR, ITERATOR_HELPER, NAME, SELF_OBJ),
|
|
5145
|
-
define(0, ATOB, FROM_CODE_POINT, INTL, ITERATOR_HELPER, NAME, NO_V8_SRC),
|
|
5146
|
-
define(1, ATOB, FILL, ITERATOR_HELPER, NAME),
|
|
5147
|
-
define(1, ATOB, IE_SRC, INTL, ITERATOR_HELPER, NAME),
|
|
5148
|
-
define(0, ATOB, FILL, FROM_CODE_POINT, INTL, ITERATOR_HELPER, NAME),
|
|
5149
|
-
define(1, ATOB, FILL, IE_SRC, ITERATOR_HELPER, NAME),
|
|
5150
|
-
define(0, ARRAY_ITERATOR, ATOB, FROM_CODE_POINT, INCR_CHAR, ITERATOR_HELPER, NAME),
|
|
5151
|
-
define(0, ATOB, FILL, FROM_CODE_POINT, ITERATOR_HELPER, NAME, SELF_OBJ),
|
|
5152
|
-
define(0, ATOB, FROM_CODE_POINT, ITERATOR_HELPER, NAME, NO_V8_SRC, SELF_OBJ),
|
|
5153
|
-
define(1, ATOB, IE_SRC, ITERATOR_HELPER, NAME, NODECONSTRUCTOR),
|
|
5154
|
-
define(0, ARRAY_ITERATOR, ATOB, FROM_CODE_POINT, ITERATOR_HELPER, NAME, NO_V8_SRC),
|
|
5155
|
-
define(1, ATOB, FLAT, ITERATOR_HELPER, NAME),
|
|
5156
|
-
define(0, ARRAY_ITERATOR, ATOB, FILL, FROM_CODE_POINT, ITERATOR_HELPER),
|
|
5157
|
-
define(1, ARRAY_ITERATOR, ATOB, FILL, ITERATOR_HELPER, NO_V8_SRC),
|
|
5158
|
-
define(1, ARRAY_ITERATOR, ATOB, CALL_ON_GLOBAL, FILL, ITERATOR_HELPER, SELF_OBJ),
|
|
5159
|
-
define
|
|
5160
|
-
(0, ARRAY_ITERATOR, ATOB, FILL, FROM_CODE_POINT, ITERATOR_HELPER, NAME, NO_V8_SRC),
|
|
5161
|
-
define(1, ARRAY_ITERATOR, ATOB, FILL, IE_SRC, ITERATOR_HELPER),
|
|
5162
|
-
define
|
|
5163
|
-
(
|
|
5164
|
-
0,
|
|
5165
|
-
ASYNC_FUNCTION,
|
|
5166
|
-
CALL_ON_GLOBAL,
|
|
5167
|
-
FROM_CODE_POINT,
|
|
5168
|
-
NODECONSTRUCTOR,
|
|
5169
|
-
NO_IE_SRC,
|
|
5170
|
-
SELF_OBJ
|
|
5171
|
-
),
|
|
5172
|
-
define(1, ASYNC_FUNCTION, CALL_ON_GLOBAL, FF_SRC, FLAT, NODECONSTRUCTOR, SELF_OBJ),
|
|
5173
|
-
define(1, ASYNC_FUNCTION, CALL_ON_GLOBAL, FLAT, NODECONSTRUCTOR, SELF_OBJ, V8_SRC),
|
|
5174
|
-
define
|
|
5175
|
-
(
|
|
5176
|
-
0,
|
|
5177
|
-
ASYNC_FUNCTION,
|
|
5178
|
-
CALL_ON_GLOBAL,
|
|
5179
|
-
FROM_CODE_POINT,
|
|
5180
|
-
ITERATOR_HELPER,
|
|
5181
|
-
NODECONSTRUCTOR,
|
|
5182
|
-
NO_IE_SRC,
|
|
5183
|
-
SELF_OBJ
|
|
5184
|
-
),
|
|
5185
|
-
define
|
|
5186
|
-
(
|
|
5187
|
-
0,
|
|
5188
|
-
ASYNC_FUNCTION,
|
|
5189
|
-
CALL_ON_GLOBAL,
|
|
5190
|
-
FROM_CODE_POINT,
|
|
5191
|
-
NAME,
|
|
5192
|
-
NODECONSTRUCTOR,
|
|
5193
|
-
NO_IE_SRC,
|
|
5194
|
-
SELF_OBJ
|
|
5195
|
-
),
|
|
5196
|
-
define(1, ASYNC_FUNCTION, AT, CALL_ON_GLOBAL, FF_SRC, NODECONSTRUCTOR, SELF_OBJ),
|
|
5197
|
-
define(1, ASYNC_FUNCTION, AT, CALL_ON_GLOBAL, NODECONSTRUCTOR, SELF_OBJ, V8_SRC),
|
|
5198
|
-
define(0, ARRAY_ITERATOR, ASYNC_FUNCTION, FLAT, FROM_CODE_POINT, ITERATOR_HELPER),
|
|
5199
|
-
define(0, ATOB, CALL_ON_GLOBAL, FLAT, FROM_CODE_POINT, ITERATOR_HELPER, NAME, SELF_OBJ),
|
|
5200
|
-
define(1, ATOB, IE_SRC, ITERATOR_HELPER, SELF_OBJ),
|
|
5201
|
-
define(0, ARRAY_ITERATOR, ATOB, FROM_CODE_POINT, IE_SRC, ITERATOR_HELPER, SELF_OBJ),
|
|
5202
|
-
define(1, ASYNC_FUNCTION, AT, ITERATOR_HELPER),
|
|
5203
|
-
define(1, ARRAY_ITERATOR, AT, ATOB, FILL, ITERATOR_HELPER),
|
|
5204
|
-
define(1, ARRAY_ITERATOR, ATOB, FILL, ITERATOR_HELPER, NO_IE_SRC),
|
|
5205
|
-
define(1, ATOB, CALL_ON_GLOBAL, IE_SRC, ITERATOR_HELPER, SELF_OBJ),
|
|
5206
|
-
define(1, ATOB, FILL, IE_SRC, ITERATOR_HELPER, SELF_OBJ),
|
|
5207
|
-
define
|
|
5208
|
-
(0, ASYNC_FUNCTION, AT, CALL_ON_GLOBAL, FROM_CODE_POINT, ITERATOR_HELPER, SELF_OBJ),
|
|
5209
|
-
define(1, ASYNC_FUNCTION, AT, IE_SRC, ITERATOR_HELPER),
|
|
5210
|
-
define(1, ASYNC_FUNCTION, AT, ITERATOR_HELPER, NO_IE_SRC),
|
|
5211
|
-
define
|
|
5212
|
-
(
|
|
5213
|
-
0,
|
|
5214
|
-
ASYNC_FUNCTION,
|
|
5215
|
-
AT,
|
|
5216
|
-
CALL_ON_GLOBAL,
|
|
5217
|
-
FROM_CODE_POINT,
|
|
5218
|
-
ITERATOR_HELPER,
|
|
5219
|
-
NODECONSTRUCTOR,
|
|
5220
|
-
NO_IE_SRC,
|
|
5221
|
-
SELF_OBJ
|
|
5222
|
-
),
|
|
5223
|
-
define(1, ASYNC_FUNCTION, AT, CALL_ON_GLOBAL, FF_SRC, ITERATOR_HELPER, SELF_OBJ),
|
|
5224
|
-
define(1, ASYNC_FUNCTION, AT, CALL_ON_GLOBAL, ITERATOR_HELPER, SELF_OBJ, V8_SRC),
|
|
5225
|
-
define(0, ARRAY_ITERATOR, ASYNC_FUNCTION, FROM_CODE_POINT, ITERATOR_HELPER, NO_IE_SRC),
|
|
5226
|
-
define(0, ASYNC_FUNCTION, FROM_CODE_POINT, ITERATOR_HELPER, NAME, NO_V8_SRC),
|
|
5227
|
-
define(1, ASYNC_FUNCTION, FILL, INCR_CHAR, ITERATOR_HELPER, NAME, NO_V8_SRC),
|
|
5228
|
-
define(0, ASYNC_FUNCTION, FROM_CODE_POINT, INTL, ITERATOR_HELPER, NAME, NO_V8_SRC),
|
|
5229
|
-
define(1, ASYNC_FUNCTION, FLAT, ITERATOR_HELPER, NAME, NO_V8_SRC),
|
|
5230
|
-
define
|
|
5231
|
-
(0, ASYNC_FUNCTION, FLAT, FROM_CODE_POINT, INTL, ITERATOR_HELPER, NAME, NO_V8_SRC),
|
|
5232
|
-
define
|
|
5233
|
-
(
|
|
5234
|
-
0,
|
|
5235
|
-
ASYNC_FUNCTION,
|
|
5236
|
-
FILL,
|
|
5237
|
-
FROM_CODE_POINT,
|
|
5238
|
-
INCR_CHAR,
|
|
5239
|
-
ITERATOR_HELPER,
|
|
5240
|
-
NAME,
|
|
5241
|
-
NODECONSTRUCTOR,
|
|
5242
|
-
NO_V8_SRC
|
|
5243
|
-
),
|
|
5244
|
-
define
|
|
5245
|
-
(
|
|
5246
|
-
0,
|
|
5247
|
-
ASYNC_FUNCTION,
|
|
5248
|
-
FILL,
|
|
5249
|
-
FROM_CODE_POINT,
|
|
5250
|
-
INCR_CHAR,
|
|
5251
|
-
ITERATOR_HELPER,
|
|
5252
|
-
NAME,
|
|
5253
|
-
NO_V8_SRC,
|
|
5254
|
-
SELF_OBJ
|
|
5255
|
-
),
|
|
5256
|
-
define(1, ASYNC_FUNCTION, IE_SRC, ITERATOR_HELPER, NAME),
|
|
5257
|
-
define(1, ASYNC_FUNCTION, AT, ITERATOR_HELPER, NAME, NO_V8_SRC),
|
|
5258
|
-
define
|
|
5259
|
-
(
|
|
5260
|
-
0,
|
|
5261
|
-
ASYNC_FUNCTION,
|
|
5262
|
-
CALL_ON_GLOBAL,
|
|
5263
|
-
FROM_CODE_POINT,
|
|
5264
|
-
IE_SRC,
|
|
5265
|
-
ITERATOR_HELPER,
|
|
5266
|
-
NAME,
|
|
5267
|
-
SELF_OBJ
|
|
5268
|
-
),
|
|
5269
|
-
define(1, ASYNC_FUNCTION, FF_SRC, ITERATOR_HELPER, NAME),
|
|
5270
|
-
define
|
|
5271
|
-
(
|
|
5272
|
-
0,
|
|
5273
|
-
ASYNC_FUNCTION,
|
|
5274
|
-
CALL_ON_GLOBAL,
|
|
5275
|
-
FF_SRC,
|
|
5276
|
-
FROM_CODE_POINT,
|
|
5277
|
-
ITERATOR_HELPER,
|
|
5278
|
-
NAME,
|
|
5279
|
-
SELF_OBJ
|
|
5280
|
-
),
|
|
5281
|
-
define
|
|
5282
|
-
(0, ASYNC_FUNCTION, FLAT, FROM_CODE_POINT, ITERATOR_HELPER, NAME, NO_V8_SRC, SELF_OBJ),
|
|
5283
|
-
define(1, ASYNC_FUNCTION, FLAT, IE_SRC, ITERATOR_HELPER, NAME, SELF_OBJ),
|
|
5284
|
-
define(1, ASYNC_FUNCTION, AT, FLAT, ITERATOR_HELPER, NAME, NO_V8_SRC, SELF_OBJ),
|
|
5285
|
-
define
|
|
5286
|
-
(
|
|
5287
|
-
0,
|
|
5288
|
-
ASYNC_FUNCTION,
|
|
5289
|
-
CALL_ON_GLOBAL,
|
|
5290
|
-
FLAT,
|
|
5291
|
-
FROM_CODE_POINT,
|
|
5292
|
-
IE_SRC,
|
|
5293
|
-
ITERATOR_HELPER,
|
|
5294
|
-
NAME,
|
|
5295
|
-
SELF_OBJ
|
|
5296
|
-
),
|
|
5297
|
-
define(1, ASYNC_FUNCTION, FF_SRC, FLAT, ITERATOR_HELPER, NAME, SELF_OBJ),
|
|
5298
|
-
define
|
|
5299
|
-
(
|
|
5300
|
-
0,
|
|
5301
|
-
ASYNC_FUNCTION,
|
|
5302
|
-
AT,
|
|
5303
|
-
CALL_ON_GLOBAL,
|
|
5304
|
-
FROM_CODE_POINT,
|
|
5305
|
-
ITERATOR_HELPER,
|
|
5306
|
-
NAME,
|
|
5307
|
-
NO_V8_SRC,
|
|
5308
|
-
SELF_OBJ
|
|
5309
|
-
),
|
|
5310
|
-
define
|
|
5311
|
-
(
|
|
5312
|
-
0,
|
|
5313
|
-
ASYNC_FUNCTION,
|
|
5314
|
-
CALL_ON_GLOBAL,
|
|
5315
|
-
FF_SRC,
|
|
5316
|
-
FLAT,
|
|
5317
|
-
FROM_CODE_POINT,
|
|
5318
|
-
ITERATOR_HELPER,
|
|
5319
|
-
NAME,
|
|
5320
|
-
SELF_OBJ
|
|
5321
|
-
),
|
|
5322
|
-
define(1, ASYNC_FUNCTION, AT, CALL_ON_GLOBAL, FF_SRC, ITERATOR_HELPER, NAME, SELF_OBJ),
|
|
5323
|
-
define(1, ASYNC_FUNCTION, AT, CALL_ON_GLOBAL, IE_SRC, ITERATOR_HELPER, NAME, SELF_OBJ),
|
|
5324
|
-
define(0, ARRAY_ITERATOR, ATOB, FLAT, FROM_CODE_POINT, ITERATOR_HELPER),
|
|
5325
|
-
define(1, ARRAY_ITERATOR, ATOB, FLAT, ITERATOR_HELPER, NO_V8_SRC),
|
|
5326
|
-
define
|
|
5327
|
-
(1, ARRAY_ITERATOR, ATOB, CALL_ON_GLOBAL, FLAT, INCR_CHAR, ITERATOR_HELPER, SELF_OBJ),
|
|
5328
|
-
define
|
|
5329
|
-
(0, ARRAY_ITERATOR, ATOB, FLAT, FROM_CODE_POINT, ITERATOR_HELPER, NAME, NO_V8_SRC),
|
|
5330
|
-
define(1, ATOB, ITERATOR_HELPER, NO_IE_SRC, SELF_OBJ),
|
|
5331
|
-
define(1, ARRAY_ITERATOR, AT, ATOB, FLAT, ITERATOR_HELPER),
|
|
5332
|
-
define(1, ARRAY_ITERATOR, ATOB, FLAT, IE_SRC, ITERATOR_HELPER),
|
|
5333
|
-
define(0, ARRAY_ITERATOR, ATOB, FROM_CODE_POINT, ITERATOR_HELPER, NO_IE_SRC, SELF_OBJ),
|
|
5334
|
-
define(1, ARRAY_ITERATOR, ATOB, FLAT, ITERATOR_HELPER, NO_IE_SRC),
|
|
5335
|
-
define(1, ATOB, CALL_ON_GLOBAL, ITERATOR_HELPER, NO_IE_SRC, SELF_OBJ),
|
|
5336
|
-
define(1, ATOB, FILL, ITERATOR_HELPER, NO_IE_SRC, SELF_OBJ),
|
|
5337
|
-
define(0, ARRAY_ITERATOR, ASYNC_FUNCTION, AT, FROM_CODE_POINT, ITERATOR_HELPER),
|
|
5338
|
-
define(1, ATOB, ITERATOR_HELPER, NAME, NO_IE_SRC),
|
|
5339
|
-
define(0, ARRAY_ITERATOR, ATOB, FROM_CODE_POINT, ITERATOR_HELPER, NAME, NO_IE_SRC),
|
|
5340
|
-
define(1, ATOB, FILL, ITERATOR_HELPER, NAME, NO_IE_SRC),
|
|
5341
|
-
define(1, ATOB, FLAT, ITERATOR_HELPER, NAME, NO_IE_SRC),
|
|
5342
|
-
define(1, ARRAY_ITERATOR, ATOB, CALL_ON_GLOBAL, ITERATOR_HELPER, NAME, SELF_OBJ),
|
|
5343
|
-
define
|
|
5344
|
-
(
|
|
5345
|
-
0,
|
|
5346
|
-
ARRAY_ITERATOR,
|
|
5347
|
-
ATOB,
|
|
5348
|
-
CALL_ON_GLOBAL,
|
|
5349
|
-
FLAT,
|
|
5350
|
-
FROM_CODE_POINT,
|
|
5351
|
-
ITERATOR_HELPER,
|
|
5352
|
-
NAME,
|
|
5353
|
-
SELF_OBJ
|
|
5354
|
-
),
|
|
5355
|
-
define
|
|
5356
|
-
(1, ARRAY_ITERATOR, ATOB, CALL_ON_GLOBAL, IE_SRC, ITERATOR_HELPER, NAME, SELF_OBJ),
|
|
5357
|
-
define
|
|
5358
|
-
(1, ARRAY_ITERATOR, ATOB, CALL_ON_GLOBAL, INCR_CHAR, ITERATOR_HELPER, NAME, SELF_OBJ),
|
|
5359
|
-
define
|
|
5360
|
-
(1, ARRAY_ITERATOR, ATOB, CALL_ON_GLOBAL, ITERATOR_HELPER, NAME, NO_IE_SRC, SELF_OBJ),
|
|
5361
|
-
define(0, ARRAY_ITERATOR, ASYNC_FUNCTION, FROM_CODE_POINT, ITERATOR_HELPER, NO_V8_SRC),
|
|
5362
|
-
define(1, CAPITAL_HTML),
|
|
5363
|
-
define(1, AT, ATOB, ITERATOR_HELPER, SELF_OBJ),
|
|
5364
|
-
define(0, ARRAY_ITERATOR, ATOB, CAPITAL_HTML, FROM_CODE_POINT),
|
|
5365
|
-
define(1, BARPROP),
|
|
3771
|
+
define(1),
|
|
3772
|
+
define(0, ITERATOR_HELPER),
|
|
3773
|
+
define(0, ARRAY_ITERATOR, CAPITAL_HTML),
|
|
3774
|
+
define(1, ARRAY_ITERATOR, ITERATOR_HELPER),
|
|
3775
|
+
define(1, AT, ITERATOR_HELPER),
|
|
3776
|
+
define(1, BARPROP, ITERATOR_HELPER),
|
|
5366
3777
|
define(1, CAPITAL_HTML, ITERATOR_HELPER),
|
|
5367
|
-
define(1,
|
|
5368
|
-
define(
|
|
3778
|
+
define(1, FLAT, ITERATOR_HELPER),
|
|
3779
|
+
define(1, IE_SRC, ITERATOR_HELPER),
|
|
3780
|
+
define(1, ITERATOR_HELPER, NO_IE_SRC),
|
|
3781
|
+
define(0, ARRAY_ITERATOR, FLAT, FROM_CODE_POINT, ITERATOR_HELPER),
|
|
3782
|
+
define(0, ARRAY_ITERATOR, FROM_CODE_POINT, IE_SRC, ITERATOR_HELPER),
|
|
3783
|
+
define(1, ARRAY_ITERATOR, BARPROP, IE_SRC, ITERATOR_HELPER),
|
|
3784
|
+
define(1, ARRAY_ITERATOR, CAPITAL_HTML, IE_SRC, ITERATOR_HELPER),
|
|
3785
|
+
define(0, ARRAY_ITERATOR, FROM_CODE_POINT, ITERATOR_HELPER, NO_IE_SRC),
|
|
3786
|
+
define(1, ARRAY_ITERATOR, AT, FLAT, ITERATOR_HELPER),
|
|
3787
|
+
define(1, ARRAY_ITERATOR, AT, IE_SRC, ITERATOR_HELPER),
|
|
3788
|
+
define(1, ARRAY_ITERATOR, AT, ITERATOR_HELPER, NO_IE_SRC),
|
|
3789
|
+
define(1, ARRAY_ITERATOR, BARPROP, FLAT, ITERATOR_HELPER),
|
|
3790
|
+
define(1, ARRAY_ITERATOR, BARPROP, ITERATOR_HELPER, NO_IE_SRC),
|
|
3791
|
+
define(1, ARRAY_ITERATOR, CAPITAL_HTML, FLAT, ITERATOR_HELPER),
|
|
3792
|
+
define(1, ARRAY_ITERATOR, CAPITAL_HTML, ITERATOR_HELPER, NO_IE_SRC),
|
|
3793
|
+
define(0, ARRAY_ITERATOR, FROM_CODE_POINT, ITERATOR_HELPER, NAME),
|
|
3794
|
+
define(1, ARRAY_ITERATOR, AT, ITERATOR_HELPER, NAME),
|
|
3795
|
+
define(1, ARRAY_ITERATOR, BARPROP, ITERATOR_HELPER, NAME),
|
|
3796
|
+
define(1, ARRAY_ITERATOR, CAPITAL_HTML, ITERATOR_HELPER, NAME),
|
|
3797
|
+
define(1, ARRAY_ITERATOR, FLAT, ITERATOR_HELPER, NO_V8_SRC),
|
|
3798
|
+
define(0, ARRAY_ITERATOR, FLAT, FROM_CODE_POINT, ITERATOR_HELPER, NAME, NO_V8_SRC),
|
|
3799
|
+
define(1, ARRAY_ITERATOR, FLAT, IE_SRC, ITERATOR_HELPER),
|
|
3800
|
+
define(1, ARRAY_ITERATOR, FLAT, ITERATOR_HELPER, NO_IE_SRC),
|
|
3801
|
+
define(1, ARRAY_ITERATOR, AT, FLAT, ITERATOR_HELPER, NO_V8_SRC),
|
|
3802
|
+
define(1, ARRAY_ITERATOR, BARPROP, FLAT, ITERATOR_HELPER, NO_V8_SRC),
|
|
3803
|
+
define(1, ARRAY_ITERATOR, CAPITAL_HTML, FLAT, ITERATOR_HELPER, NO_V8_SRC),
|
|
5369
3804
|
]
|
|
5370
3805
|
);
|
|
5371
3806
|
|
|
@@ -5441,8 +3876,6 @@
|
|
|
5441
3876
|
define(0, ARRAY_ITERATOR, CAPITAL_HTML, NO_V8_SRC),
|
|
5442
3877
|
define(1, ARRAY_ITERATOR, AT, CAPITAL_HTML),
|
|
5443
3878
|
define(1, ARRAY_ITERATOR, CAPITAL_HTML, FF_SRC, FLAT),
|
|
5444
|
-
define(1, ARRAY_ITERATOR, CAPITAL_HTML, FILL, IE_SRC),
|
|
5445
|
-
define(1, ARRAY_ITERATOR, CAPITAL_HTML, FILL, NO_IE_SRC),
|
|
5446
3879
|
define(1, ARRAY_ITERATOR, CAPITAL_HTML, FLAT, IE_SRC),
|
|
5447
3880
|
define(2, ARRAY_ITERATOR, CAPITAL_HTML),
|
|
5448
3881
|
define(3, ARRAY_ITERATOR, AT, CAPITAL_HTML, IE_SRC),
|
|
@@ -5452,95 +3885,13 @@
|
|
|
5452
3885
|
]
|
|
5453
3886
|
);
|
|
5454
3887
|
|
|
5455
|
-
MAPPER_FORMATTER =
|
|
5456
|
-
defineList
|
|
5457
|
-
(
|
|
5458
|
-
[
|
|
5459
|
-
define
|
|
5460
|
-
(
|
|
5461
|
-
function (argName, accessor)
|
|
5462
|
-
{
|
|
5463
|
-
var otherArgName = chooseOtherArgName(argName);
|
|
5464
|
-
var mapper =
|
|
5465
|
-
'Function("return function(' + otherArgName + '){return function(' + argName +
|
|
5466
|
-
'){return ' + otherArgName + accessor + '}}")()';
|
|
5467
|
-
return mapper;
|
|
5468
|
-
}
|
|
5469
|
-
),
|
|
5470
|
-
define
|
|
5471
|
-
(
|
|
5472
|
-
function (argName, accessor)
|
|
5473
|
-
{
|
|
5474
|
-
var mapper =
|
|
5475
|
-
'Function("return function(' + argName + '){return this' + accessor +
|
|
5476
|
-
'}")().bind';
|
|
5477
|
-
return mapper;
|
|
5478
|
-
}
|
|
5479
|
-
),
|
|
5480
|
-
define
|
|
5481
|
-
(
|
|
5482
|
-
function (argName, accessor)
|
|
5483
|
-
{
|
|
5484
|
-
var otherArgName = chooseOtherArgName(argName);
|
|
5485
|
-
var mapper =
|
|
5486
|
-
'Function("return ' + otherArgName + '=>' + argName + '=>' + otherArgName +
|
|
5487
|
-
accessor + '")()';
|
|
5488
|
-
return mapper;
|
|
5489
|
-
},
|
|
5490
|
-
ARROW
|
|
5491
|
-
),
|
|
5492
|
-
],
|
|
5493
|
-
[
|
|
5494
|
-
define(0),
|
|
5495
|
-
define(1, ARRAY_ITERATOR, ATOB),
|
|
5496
|
-
define(0, NO_FF_SRC),
|
|
5497
|
-
define(0, NO_V8_SRC),
|
|
5498
|
-
define(1, ARRAY_ITERATOR, CAPITAL_HTML),
|
|
5499
|
-
define(1, ARRAY_ITERATOR, ATOB, CALL_ON_GLOBAL, SELF_OBJ),
|
|
5500
|
-
define(0, ARRAY_ITERATOR, ATOB, FILL),
|
|
5501
|
-
define(0, ARRAY_ITERATOR, CAPITAL_HTML, FILL),
|
|
5502
|
-
define(0, ARRAY_ITERATOR, CAPITAL_HTML, IE_SRC),
|
|
5503
|
-
define(0, ARRAY_ITERATOR, ATOB, CALL_ON_GLOBAL, IE_SRC, SELF_OBJ),
|
|
5504
|
-
define(1, ARRAY_ITERATOR, ATOB, CALL_ON_GLOBAL, FILL, SELF_OBJ),
|
|
5505
|
-
define(0, ARRAY_ITERATOR, ATOB, NO_IE_SRC),
|
|
5506
|
-
define(0, ARRAY_ITERATOR, CAPITAL_HTML, NO_IE_SRC),
|
|
5507
|
-
define(0, ARRAY_ITERATOR, ATOB, FILL, IE_SRC),
|
|
5508
|
-
define(0, ARRAY_ITERATOR, ATOB, FILL, INCR_CHAR, NO_V8_SRC),
|
|
5509
|
-
define(1, ARRAY_ITERATOR, ATOB, CALL_ON_GLOBAL, NO_IE_SRC, SELF_OBJ),
|
|
5510
|
-
define(0, ARRAY_ITERATOR, AT, ATOB),
|
|
5511
|
-
define(0, ARRAY_ITERATOR, AT, CAPITAL_HTML),
|
|
5512
|
-
define(0, ARRAY_ITERATOR, ATOB, FF_SRC),
|
|
5513
|
-
define(0, ARRAY_ITERATOR, ATOB, FLAT),
|
|
5514
|
-
define(0, ARRAY_ITERATOR, ATOB, V8_SRC),
|
|
5515
|
-
define(0, ARRAY_ITERATOR, CAPITAL_HTML, FLAT),
|
|
5516
|
-
define(0, ARRAY_ITERATOR, ATOB, FILL, NO_IE_SRC),
|
|
5517
|
-
define(2),
|
|
5518
|
-
]
|
|
5519
|
-
);
|
|
5520
|
-
|
|
5521
3888
|
NATIVE_FUNCTION_INFOS =
|
|
5522
3889
|
[
|
|
5523
3890
|
define({ expr: 'FILTER', shift: 6 }),
|
|
5524
|
-
define({ expr: 'FILL', shift: 4 }, FILL),
|
|
5525
3891
|
define({ expr: 'FLAT', shift: 4 }, FLAT),
|
|
5526
3892
|
define({ expr: 'AT', shift: 2 }, AT),
|
|
5527
3893
|
];
|
|
5528
3894
|
|
|
5529
|
-
OPTIMAL_ARG_NAME =
|
|
5530
|
-
defineList
|
|
5531
|
-
(
|
|
5532
|
-
[define('f'), define('undefined')],
|
|
5533
|
-
[
|
|
5534
|
-
define(0),
|
|
5535
|
-
define(1, AT),
|
|
5536
|
-
define(0, FLAT),
|
|
5537
|
-
define(1, FILL, IE_SRC),
|
|
5538
|
-
define(1, FILL, NO_IE_SRC),
|
|
5539
|
-
define(0, FILL, FLAT, IE_SRC),
|
|
5540
|
-
define(0, FILL, FLAT, NO_IE_SRC),
|
|
5541
|
-
]
|
|
5542
|
-
);
|
|
5543
|
-
|
|
5544
3895
|
OPTIMAL_B = defineList([define('B'), define('b')], [define(0), define(1, ARRAY_ITERATOR)]);
|
|
5545
3896
|
|
|
5546
3897
|
OPTIMAL_RETURN_STRING =
|
|
@@ -5558,8 +3909,6 @@
|
|
|
5558
3909
|
define(0, ARRAY_ITERATOR, CAPITAL_HTML, NO_V8_SRC),
|
|
5559
3910
|
define(1, ARRAY_ITERATOR, AT, CAPITAL_HTML),
|
|
5560
3911
|
define(1, ARRAY_ITERATOR, CAPITAL_HTML, FF_SRC, FLAT),
|
|
5561
|
-
define(1, ARRAY_ITERATOR, CAPITAL_HTML, FILL, IE_SRC),
|
|
5562
|
-
define(1, ARRAY_ITERATOR, CAPITAL_HTML, FILL, NO_IE_SRC),
|
|
5563
3912
|
define(1, ARRAY_ITERATOR, CAPITAL_HTML, FLAT, IE_SRC),
|
|
5564
3913
|
define(2),
|
|
5565
3914
|
]
|
|
@@ -6101,16 +4450,15 @@
|
|
|
6101
4450
|
HexIntegerLiteral: '0[Xx]#HexDigit+',
|
|
6102
4451
|
NumericLiteral: '#HexIntegerLiteral|#DecimalLiteral',
|
|
6103
4452
|
Separator: '#SeparatorChar|//.*(?!.)|/\\*[\\s\\S]*?\\*/',
|
|
6104
|
-
// U+180E is recognized as a separator in
|
|
6105
|
-
|
|
6106
|
-
SeparatorChar: '(?!\u180E)[\\s\uFEFF]',
|
|
4453
|
+
// U+180E is recognized as a separator in Internet Explorer.
|
|
4454
|
+
SeparatorChar: '(?!\u180E)\\s',
|
|
6107
4455
|
SingleQuotedString: '\'(?:#EscapeSequence|(?![\'\\\\]).)*\'',
|
|
6108
4456
|
UnicodeEscapeSequence: '\\\\u#HexDigit{4}',
|
|
6109
4457
|
};
|
|
6110
4458
|
|
|
6111
4459
|
var tokenCache = createEmpty();
|
|
6112
4460
|
|
|
6113
|
-
// Reserved words
|
|
4461
|
+
// Reserved words that cannot be written with escape sequences.
|
|
6114
4462
|
var INESCAPABLE_WORDS = ['false', 'null', 'true'];
|
|
6115
4463
|
|
|
6116
4464
|
// This list includes reserved words and identifiers that would cause a change in a script's
|
|
@@ -6213,17 +4561,6 @@
|
|
|
6213
4561
|
var SCREW_AS_STRING = 1;
|
|
6214
4562
|
var SCREW_AS_BONDED_STRING = 2;
|
|
6215
4563
|
|
|
6216
|
-
function gather(buffer, offset, count, groupBond, groupForceString)
|
|
6217
|
-
{
|
|
6218
|
-
var end = offset + count;
|
|
6219
|
-
var groupSolutions = buffer._solutions.slice(offset, end);
|
|
6220
|
-
var optimizerList = buffer._optimizerList;
|
|
6221
|
-
if (optimizerList.length)
|
|
6222
|
-
optimizeSolutions(optimizerList, groupSolutions, groupBond, groupForceString);
|
|
6223
|
-
var str = gatherGroup(groupSolutions, groupBond, groupForceString);
|
|
6224
|
-
return str;
|
|
6225
|
-
}
|
|
6226
|
-
|
|
6227
4564
|
function gatherGroup(solutions, bond, forceString)
|
|
6228
4565
|
{
|
|
6229
4566
|
var solution = new DynamicSolution();
|
|
@@ -6248,10 +4585,8 @@
|
|
|
6248
4585
|
return str;
|
|
6249
4586
|
}
|
|
6250
4587
|
|
|
6251
|
-
function ScrewBuffer(screwMode,
|
|
4588
|
+
function ScrewBuffer(screwMode, optimizerList)
|
|
6252
4589
|
{
|
|
6253
|
-
this._groupThreshold = groupThreshold;
|
|
6254
|
-
this._maxSolutionCount = _Math_pow(2, groupThreshold - 1);
|
|
6255
4590
|
this._optimizerList = optimizerList;
|
|
6256
4591
|
this._screwMode = screwMode;
|
|
6257
4592
|
this._solutions = [];
|
|
@@ -6270,8 +4605,6 @@
|
|
|
6270
4605
|
function (solution)
|
|
6271
4606
|
{
|
|
6272
4607
|
var solutions = this._solutions;
|
|
6273
|
-
if (solutions.length >= this._maxSolutionCount)
|
|
6274
|
-
return false;
|
|
6275
4608
|
solutions.push(solution);
|
|
6276
4609
|
var appendLength = solution.appendLength;
|
|
6277
4610
|
this._optimizerList.forEach
|
|
@@ -6284,62 +4617,18 @@
|
|
|
6284
4617
|
}
|
|
6285
4618
|
);
|
|
6286
4619
|
this._length += appendLength;
|
|
6287
|
-
return true;
|
|
6288
4620
|
},
|
|
6289
|
-
toString:
|
|
6290
|
-
function ()
|
|
6291
|
-
{
|
|
6292
|
-
function collectOut(offset, count, maxGroupCount, groupBond)
|
|
6293
|
-
{
|
|
6294
|
-
var str;
|
|
6295
|
-
if (count <= groupSize + 1)
|
|
6296
|
-
str = gather(buffer, offset, count, groupBond);
|
|
6297
|
-
else
|
|
6298
|
-
{
|
|
6299
|
-
maxGroupCount /= 2;
|
|
6300
|
-
var halfCount = groupSize * maxGroupCount;
|
|
6301
|
-
var capacity = 2 * halfCount - count;
|
|
6302
|
-
var leftEndCount =
|
|
6303
|
-
_Math_max
|
|
6304
|
-
(
|
|
6305
|
-
halfCount - capacity + capacity % (groupSize - 1),
|
|
6306
|
-
(maxGroupCount / 2 ^ 0) * (groupSize + 1)
|
|
6307
|
-
);
|
|
6308
|
-
str =
|
|
6309
|
-
collectOut(offset, leftEndCount, maxGroupCount) +
|
|
6310
|
-
'+' +
|
|
6311
|
-
collectOut(offset + leftEndCount, count - leftEndCount, maxGroupCount, true);
|
|
6312
|
-
if (groupBond)
|
|
6313
|
-
str = '(' + str + ')';
|
|
6314
|
-
}
|
|
6315
|
-
return str;
|
|
6316
|
-
}
|
|
6317
|
-
|
|
6318
|
-
var str;
|
|
6319
|
-
var solutionCount = this._solutions.length;
|
|
6320
|
-
var groupThreshold = this._groupThreshold;
|
|
4621
|
+
toString:
|
|
4622
|
+
function ()
|
|
4623
|
+
{
|
|
6321
4624
|
var screwMode = this._screwMode;
|
|
6322
4625
|
var bond = screwMode === SCREW_AS_BONDED_STRING;
|
|
6323
|
-
|
|
6324
|
-
|
|
6325
|
-
|
|
6326
|
-
|
|
6327
|
-
|
|
6328
|
-
|
|
6329
|
-
{
|
|
6330
|
-
var groupSize = groupThreshold;
|
|
6331
|
-
var maxGroupCount = 2;
|
|
6332
|
-
for (;;)
|
|
6333
|
-
{
|
|
6334
|
-
--groupSize;
|
|
6335
|
-
var maxSolutionCountForDepth = groupSize * maxGroupCount;
|
|
6336
|
-
if (solutionCount <= maxSolutionCountForDepth)
|
|
6337
|
-
break;
|
|
6338
|
-
maxGroupCount *= 2;
|
|
6339
|
-
}
|
|
6340
|
-
var buffer = this;
|
|
6341
|
-
str = collectOut(0, solutionCount, maxGroupCount, bond);
|
|
6342
|
-
}
|
|
4626
|
+
var forceString = screwMode !== SCREW_NORMAL;
|
|
4627
|
+
var groupSolutions = this._solutions.slice();
|
|
4628
|
+
var optimizerList = this._optimizerList;
|
|
4629
|
+
if (optimizerList.length)
|
|
4630
|
+
optimizeSolutions(optimizerList, groupSolutions, bond, forceString);
|
|
4631
|
+
var str = gatherGroup(groupSolutions, bond, forceString);
|
|
6343
4632
|
return str;
|
|
6344
4633
|
},
|
|
6345
4634
|
}
|
|
@@ -6606,7 +4895,7 @@
|
|
|
6606
4895
|
appendIndexer = false;
|
|
6607
4896
|
toStringOpt = false;
|
|
6608
4897
|
}
|
|
6609
|
-
var expr = 'Function("return\\"
|
|
4898
|
+
var expr = 'Function("return\\"\\\\' + escCode + '\\"")()';
|
|
6610
4899
|
if (appendIndexer)
|
|
6611
4900
|
expr += '[0]';
|
|
6612
4901
|
var replacement = this.replaceExpr(expr, { default: false, toStringOpt: toStringOpt });
|
|
@@ -6651,8 +4940,6 @@
|
|
|
6651
4940
|
return replacement;
|
|
6652
4941
|
}
|
|
6653
4942
|
|
|
6654
|
-
var ATOB_MASK = Feature.ATOB.mask;
|
|
6655
|
-
|
|
6656
4943
|
var STATIC_CHAR_CACHE = createEmpty();
|
|
6657
4944
|
var STATIC_CONST_CACHE = createEmpty();
|
|
6658
4945
|
var STATIC_ENCODER = new Encoder(MASK_EMPTY);
|
|
@@ -6699,14 +4986,6 @@
|
|
|
6699
4986
|
}
|
|
6700
4987
|
}
|
|
6701
4988
|
|
|
6702
|
-
function defaultResolveCharacter(encoder, char)
|
|
6703
|
-
{
|
|
6704
|
-
var charCode = char.charCodeAt();
|
|
6705
|
-
var atobOpt = charCode < 0x100;
|
|
6706
|
-
var solution = encoder._createCharDefaultSolution(char, charCode, atobOpt, true, true, true);
|
|
6707
|
-
return solution;
|
|
6708
|
-
}
|
|
6709
|
-
|
|
6710
4989
|
function findOptimalSolution(encoder, source, entries, defaultSolutionType)
|
|
6711
4990
|
{
|
|
6712
4991
|
var optimalSolution;
|
|
@@ -6929,8 +5208,6 @@
|
|
|
6929
5208
|
function (str, index)
|
|
6930
5209
|
{
|
|
6931
5210
|
regExp.lastIndex = index;
|
|
6932
|
-
// String.prototype.match doesn't work well with sticky regular expressions in Node.js <
|
|
6933
|
-
// 6.5.
|
|
6934
5211
|
var match = regExp.exec(str);
|
|
6935
5212
|
if (match)
|
|
6936
5213
|
return match[0];
|
|
@@ -6961,37 +5238,44 @@
|
|
|
6961
5238
|
function (char, charCode, atobOpt, charCodeOpt, escSeqOpt, unescapeOpt)
|
|
6962
5239
|
{
|
|
6963
5240
|
var solution;
|
|
6964
|
-
|
|
5241
|
+
var solutions = [];
|
|
5242
|
+
if (atobOpt)
|
|
6965
5243
|
{
|
|
6966
5244
|
solution =
|
|
6967
5245
|
resolveCharByDefaultMethod(this, char, charCode, replaceCharByAtob, 'atob');
|
|
5246
|
+
solutions.push(solution);
|
|
6968
5247
|
}
|
|
6969
|
-
|
|
5248
|
+
if (charCodeOpt)
|
|
6970
5249
|
{
|
|
6971
|
-
|
|
6972
|
-
|
|
6973
|
-
|
|
6974
|
-
|
|
6975
|
-
|
|
6976
|
-
|
|
6977
|
-
|
|
6978
|
-
|
|
6979
|
-
|
|
6980
|
-
|
|
6981
|
-
|
|
6982
|
-
|
|
6983
|
-
|
|
6984
|
-
|
|
6985
|
-
|
|
6986
|
-
|
|
6987
|
-
{
|
|
6988
|
-
solution =
|
|
6989
|
-
resolveCharByDefaultMethod
|
|
6990
|
-
(this, char, charCode, replaceCharByUnescape, 'unescape');
|
|
6991
|
-
solutions.push(solution);
|
|
6992
|
-
}
|
|
6993
|
-
solution = shortestOf.apply(null, solutions);
|
|
5250
|
+
solution =
|
|
5251
|
+
resolveCharByDefaultMethod
|
|
5252
|
+
(this, char, charCode, replaceCharByCharCode, 'char-code');
|
|
5253
|
+
solutions.push(solution);
|
|
5254
|
+
}
|
|
5255
|
+
if (escSeqOpt)
|
|
5256
|
+
{
|
|
5257
|
+
solution =
|
|
5258
|
+
resolveCharByDefaultMethod(this, char, charCode, replaceCharByEscSeq, 'esc-seq');
|
|
5259
|
+
solutions.push(solution);
|
|
5260
|
+
}
|
|
5261
|
+
if (unescapeOpt)
|
|
5262
|
+
{
|
|
5263
|
+
solution =
|
|
5264
|
+
resolveCharByDefaultMethod(this, char, charCode, replaceCharByUnescape, 'unescape');
|
|
5265
|
+
solutions.push(solution);
|
|
6994
5266
|
}
|
|
5267
|
+
solution = shortestOf.apply(null, solutions);
|
|
5268
|
+
return solution;
|
|
5269
|
+
},
|
|
5270
|
+
|
|
5271
|
+
_defaultResolveCharacter:
|
|
5272
|
+
function (char)
|
|
5273
|
+
{
|
|
5274
|
+
var charCode = char.charCodeAt();
|
|
5275
|
+
var atobOpt = charCode < 0x100;
|
|
5276
|
+
var stdOpt = !atobOpt;
|
|
5277
|
+
var solution =
|
|
5278
|
+
this._createCharDefaultSolution(char, charCode, atobOpt, stdOpt, stdOpt, stdOpt);
|
|
6995
5279
|
return solution;
|
|
6996
5280
|
},
|
|
6997
5281
|
|
|
@@ -7125,18 +5409,6 @@
|
|
|
7125
5409
|
return included;
|
|
7126
5410
|
},
|
|
7127
5411
|
|
|
7128
|
-
// The maximum value that can be safely used as the first group threshold of a ScrewBuffer.
|
|
7129
|
-
// "Safely" means such that the extreme decoding test is passed in all engines.
|
|
7130
|
-
// This value is typically limited by the free memory available on the stack, and since the
|
|
7131
|
-
// memory layout of the stack changes at runtime in an unstable way, the maximum safe value
|
|
7132
|
-
// cannot be determined exactly.
|
|
7133
|
-
// The lowest recorded value so far is 1844, measured in an Android Browser 4.2.2 running on
|
|
7134
|
-
// an Intel Atom emulator.
|
|
7135
|
-
// Internet Explorer on Windows Phone occasionally failed the extreme decoding test in a
|
|
7136
|
-
// non-reproducible manner, although the issue seems to be related to the output size rather
|
|
7137
|
-
// than the grouping threshold setting.
|
|
7138
|
-
maxGroupThreshold: 1800,
|
|
7139
|
-
|
|
7140
5412
|
replaceExpr:
|
|
7141
5413
|
function (expr, optimize)
|
|
7142
5414
|
{
|
|
@@ -7220,7 +5492,7 @@
|
|
|
7220
5492
|
options = options || { };
|
|
7221
5493
|
var optimizerList = this._getOptimizerList(str, options.optimize);
|
|
7222
5494
|
var screwMode = options.screwMode || SCREW_NORMAL;
|
|
7223
|
-
var buffer = new ScrewBuffer(screwMode,
|
|
5495
|
+
var buffer = new ScrewBuffer(screwMode, optimizerList);
|
|
7224
5496
|
var firstSolution = options.firstSolution;
|
|
7225
5497
|
var maxLength = options.maxLength;
|
|
7226
5498
|
if (firstSolution)
|
|
@@ -7244,7 +5516,8 @@
|
|
|
7244
5516
|
var char = str[index++];
|
|
7245
5517
|
solution = this.resolveCharacter(char);
|
|
7246
5518
|
}
|
|
7247
|
-
|
|
5519
|
+
buffer.append(solution);
|
|
5520
|
+
if (buffer.length > maxLength)
|
|
7248
5521
|
return;
|
|
7249
5522
|
}
|
|
7250
5523
|
var replacement = _String$1(buffer);
|
|
@@ -7302,7 +5575,7 @@
|
|
|
7302
5575
|
if (entries)
|
|
7303
5576
|
solution = findOptimalSolution(this, char, entries);
|
|
7304
5577
|
if (!solution)
|
|
7305
|
-
solution =
|
|
5578
|
+
solution = this._defaultResolveCharacter(char);
|
|
7306
5579
|
}
|
|
7307
5580
|
else
|
|
7308
5581
|
{
|
|
@@ -7474,6 +5747,238 @@
|
|
|
7474
5747
|
return figurator;
|
|
7475
5748
|
}
|
|
7476
5749
|
|
|
5750
|
+
/**
|
|
5751
|
+
* An object that exposes properties used to split a string into an array of strings or to join
|
|
5752
|
+
* array elements into a string.
|
|
5753
|
+
*
|
|
5754
|
+
* @typedef Delimiter
|
|
5755
|
+
*
|
|
5756
|
+
* @property {string} separator
|
|
5757
|
+
* An express-parsable expression used as an argument for `String.prototype.split` to split a string
|
|
5758
|
+
* into an array of strings.
|
|
5759
|
+
*
|
|
5760
|
+
* @property {string} joiner
|
|
5761
|
+
* The joiner can be any string. A joiner is inserted between adjacent strings in an array in order
|
|
5762
|
+
* to join them into a single string.
|
|
5763
|
+
*/
|
|
5764
|
+
|
|
5765
|
+
function replaceJoinedArrayString(array, joiner, maxLength)
|
|
5766
|
+
{
|
|
5767
|
+
var str = array.join(joiner);
|
|
5768
|
+
var options = { maxLength: maxLength, screwMode: SCREW_AS_BONDED_STRING };
|
|
5769
|
+
var replacement = replaceStaticString(str, options);
|
|
5770
|
+
return replacement;
|
|
5771
|
+
}
|
|
5772
|
+
|
|
5773
|
+
function undefinedAsString(replacement)
|
|
5774
|
+
{
|
|
5775
|
+
if (replacement === '[][[]]')
|
|
5776
|
+
replacement += '+[]';
|
|
5777
|
+
return replacement;
|
|
5778
|
+
}
|
|
5779
|
+
|
|
5780
|
+
/**
|
|
5781
|
+
* Replaces a given array of strings with equivalent JSFuck code.
|
|
5782
|
+
*
|
|
5783
|
+
* Array elements may only contain characters with static definitions in their string
|
|
5784
|
+
* representations.
|
|
5785
|
+
*
|
|
5786
|
+
* @function Encoder#replaceStringArray
|
|
5787
|
+
*
|
|
5788
|
+
* @param {string[]} array
|
|
5789
|
+
* The string array to replace. Empty arrays are not supported.
|
|
5790
|
+
*
|
|
5791
|
+
* @param {Delimiter[]} insertions
|
|
5792
|
+
* An array of delimiters of which at most one will be used to compose a joined string and split it
|
|
5793
|
+
* into an array of strings.
|
|
5794
|
+
*
|
|
5795
|
+
* The encoder can pick an insertion and insert a joiner between any two adjacent elements to mark
|
|
5796
|
+
* the boundary between them. The separator is then used to split the concatenated string back into
|
|
5797
|
+
* its elements.
|
|
5798
|
+
*
|
|
5799
|
+
* @param {Delimiter[]|null} [substitutions]
|
|
5800
|
+
* An array of delimiters, specifying substitutions to be applied to the input elements.
|
|
5801
|
+
*
|
|
5802
|
+
* All substitutions are applied on each element of the input array, in the order they are
|
|
5803
|
+
* specified.
|
|
5804
|
+
*
|
|
5805
|
+
* Substitutions are expensive in two ways: they create additional overhead and prevent certain
|
|
5806
|
+
* optimizations for short arrays to be made. To allow all optimizations to be performed, omit this
|
|
5807
|
+
* argument or set it to null instead of specifying an empty array.
|
|
5808
|
+
*
|
|
5809
|
+
* @param {boolean} [allowZeroForEmptyElements=false]
|
|
5810
|
+
* Indicates whether empty string elements in the input array may be replaced with zeros.
|
|
5811
|
+
*
|
|
5812
|
+
* @param {boolean} [forceString=false]
|
|
5813
|
+
* Indicates whether the elements in the replacement expression should evaluate to strings.
|
|
5814
|
+
*
|
|
5815
|
+
* If this argument is falsy, the elements in the replacement expression may not be equal to those
|
|
5816
|
+
* in the input array, but will have the same string representation.
|
|
5817
|
+
*
|
|
5818
|
+
* Regardless of this argument, the string representation of the value of the whole replacement
|
|
5819
|
+
* expression will be always the same as the string representation of the input array after applying
|
|
5820
|
+
* substitutions (including optional empty string to zero replacements) to its elements.
|
|
5821
|
+
*
|
|
5822
|
+
* @param {number} [maxLength=(NaN)]
|
|
5823
|
+
* The maximum length of the replacement expression.
|
|
5824
|
+
*
|
|
5825
|
+
* If the replacement expression exceeds the specified length, the return value is `undefined`.
|
|
5826
|
+
*
|
|
5827
|
+
* If this parameter is `NaN`, then no length limit is imposed.
|
|
5828
|
+
*
|
|
5829
|
+
* @returns {string|undefined}
|
|
5830
|
+
* The replacement string or `undefined`.
|
|
5831
|
+
*/
|
|
5832
|
+
function replaceStringArray
|
|
5833
|
+
(array, insertions, substitutions, allowZeroForEmptyElements, forceString, maxLength)
|
|
5834
|
+
{
|
|
5835
|
+
var replacement;
|
|
5836
|
+
var count = array.length;
|
|
5837
|
+
// Don't even try the split approach for two or less elements if the concat approach can be
|
|
5838
|
+
// applied.
|
|
5839
|
+
if (substitutions || count > 2)
|
|
5840
|
+
{
|
|
5841
|
+
var preReplacement =
|
|
5842
|
+
function ()
|
|
5843
|
+
{
|
|
5844
|
+
// Length of the shortest string replacement "([]+[])".
|
|
5845
|
+
var STRING_REPLACEMENT_MIN_LENGTH = 7;
|
|
5846
|
+
|
|
5847
|
+
// This is for the overhead of "[" + "](" + ")" plus the length of the shortest
|
|
5848
|
+
// separator replacement "[]".
|
|
5849
|
+
var SEPARATOR_MIN_OVERHEAD = 6;
|
|
5850
|
+
|
|
5851
|
+
// This is for the overhead of "[" + "](" + ")" plus the length of the shortest
|
|
5852
|
+
// joiner replacement "[]".
|
|
5853
|
+
var JOINER_MIN_OVERHEAD = 6;
|
|
5854
|
+
|
|
5855
|
+
var joinCount = substitutions ? substitutions.length : 0;
|
|
5856
|
+
var splitCount = joinCount + 1;
|
|
5857
|
+
var maxSplitReplacementLength =
|
|
5858
|
+
(maxLength - STRING_REPLACEMENT_MIN_LENGTH) / splitCount - SEPARATOR_MIN_OVERHEAD;
|
|
5859
|
+
var splitReplacement =
|
|
5860
|
+
this.replaceString('split', { maxLength: maxSplitReplacementLength, optimize: true });
|
|
5861
|
+
if (!splitReplacement)
|
|
5862
|
+
return;
|
|
5863
|
+
var preReplacement = '';
|
|
5864
|
+
if (joinCount)
|
|
5865
|
+
{
|
|
5866
|
+
var maxJoinReplacementLength =
|
|
5867
|
+
(
|
|
5868
|
+
maxLength - STRING_REPLACEMENT_MIN_LENGTH -
|
|
5869
|
+
splitCount * (splitReplacement.length + SEPARATOR_MIN_OVERHEAD)
|
|
5870
|
+
) /
|
|
5871
|
+
joinCount -
|
|
5872
|
+
JOINER_MIN_OVERHEAD;
|
|
5873
|
+
var joinReplacement =
|
|
5874
|
+
this.replaceString('join', { maxLength: maxJoinReplacementLength });
|
|
5875
|
+
if (!joinReplacement)
|
|
5876
|
+
return;
|
|
5877
|
+
substitutions.forEach
|
|
5878
|
+
(
|
|
5879
|
+
function (substitution)
|
|
5880
|
+
{
|
|
5881
|
+
var separatorReplacement =
|
|
5882
|
+
undefinedAsString(this.replaceExpr(substitution.separator));
|
|
5883
|
+
var joinerReplacement =
|
|
5884
|
+
undefinedAsString(this.replaceString(substitution.joiner));
|
|
5885
|
+
preReplacement +=
|
|
5886
|
+
'[' + splitReplacement + '](' + separatorReplacement + ')[' +
|
|
5887
|
+
joinReplacement + '](' + joinerReplacement + ')';
|
|
5888
|
+
},
|
|
5889
|
+
this
|
|
5890
|
+
);
|
|
5891
|
+
}
|
|
5892
|
+
preReplacement += '[' + splitReplacement + ']';
|
|
5893
|
+
return preReplacement;
|
|
5894
|
+
}
|
|
5895
|
+
.call(this);
|
|
5896
|
+
}
|
|
5897
|
+
if (!substitutions && count > 1)
|
|
5898
|
+
{
|
|
5899
|
+
var concatReplacement =
|
|
5900
|
+
this.replaceString('concat', { maxLength: maxLength, optimize: true });
|
|
5901
|
+
}
|
|
5902
|
+
if (preReplacement)
|
|
5903
|
+
// Approach 1: (array[0] + joiner + array[1] + joiner + array[2]...).split(separator)
|
|
5904
|
+
{
|
|
5905
|
+
// 2 is for the additional overhead of "(" + ")".
|
|
5906
|
+
var maxBulkLength = maxLength - (preReplacement.length + 2);
|
|
5907
|
+
var optimalStrReplacement;
|
|
5908
|
+
var optimalSeparatorReplacement;
|
|
5909
|
+
insertions.forEach
|
|
5910
|
+
(
|
|
5911
|
+
function (insertion)
|
|
5912
|
+
{
|
|
5913
|
+
var strReplacement =
|
|
5914
|
+
replaceJoinedArrayString(array, insertion.joiner, maxBulkLength);
|
|
5915
|
+
if (!strReplacement)
|
|
5916
|
+
return;
|
|
5917
|
+
var separatorReplacement = undefinedAsString(this.replaceExpr(insertion.separator));
|
|
5918
|
+
var bulkLength = strReplacement.length + separatorReplacement.length;
|
|
5919
|
+
if (!(bulkLength > maxBulkLength))
|
|
5920
|
+
{
|
|
5921
|
+
maxBulkLength = bulkLength;
|
|
5922
|
+
optimalStrReplacement = strReplacement;
|
|
5923
|
+
optimalSeparatorReplacement = separatorReplacement;
|
|
5924
|
+
}
|
|
5925
|
+
},
|
|
5926
|
+
this
|
|
5927
|
+
);
|
|
5928
|
+
if (optimalStrReplacement)
|
|
5929
|
+
{
|
|
5930
|
+
replacement =
|
|
5931
|
+
optimalStrReplacement + preReplacement + '(' + optimalSeparatorReplacement + ')';
|
|
5932
|
+
maxLength = replacement.length - 1;
|
|
5933
|
+
}
|
|
5934
|
+
}
|
|
5935
|
+
if
|
|
5936
|
+
(
|
|
5937
|
+
!substitutions &&
|
|
5938
|
+
(
|
|
5939
|
+
count <= 1 ||
|
|
5940
|
+
concatReplacement &&
|
|
5941
|
+
// 4 is the length of the shortest possible replacement "[[]]".
|
|
5942
|
+
// 7 is the length of the shortest possible additional overhead for each following array
|
|
5943
|
+
// element, as in "[" + "](+[])" or "[" + "](![])".
|
|
5944
|
+
!(4 + (concatReplacement.length + 7) * (count - 1) > maxLength)
|
|
5945
|
+
)
|
|
5946
|
+
)
|
|
5947
|
+
// Approach 2: [array[0]].concat(array[1]).concat(array[2])...
|
|
5948
|
+
{
|
|
5949
|
+
var arrayReplacement;
|
|
5950
|
+
var options = { screwMode: forceString ? SCREW_AS_STRING : SCREW_NORMAL };
|
|
5951
|
+
if
|
|
5952
|
+
(
|
|
5953
|
+
!array.some
|
|
5954
|
+
(
|
|
5955
|
+
function (element)
|
|
5956
|
+
{
|
|
5957
|
+
var elementReplacement =
|
|
5958
|
+
undefinedAsString(replaceStaticString(element, options));
|
|
5959
|
+
if (arrayReplacement)
|
|
5960
|
+
{
|
|
5961
|
+
if (elementReplacement === '[]')
|
|
5962
|
+
elementReplacement = allowZeroForEmptyElements ? '+[]' : '[[]]';
|
|
5963
|
+
arrayReplacement +=
|
|
5964
|
+
'[' + concatReplacement + '](' + elementReplacement + ')';
|
|
5965
|
+
}
|
|
5966
|
+
else
|
|
5967
|
+
arrayReplacement = '[' + elementReplacement + ']';
|
|
5968
|
+
var result = arrayReplacement.length > maxLength;
|
|
5969
|
+
return result;
|
|
5970
|
+
}
|
|
5971
|
+
)
|
|
5972
|
+
)
|
|
5973
|
+
replacement = arrayReplacement;
|
|
5974
|
+
}
|
|
5975
|
+
return replacement;
|
|
5976
|
+
}
|
|
5977
|
+
|
|
5978
|
+
var ENCODING_TYPE_COMBINED = 'combined';
|
|
5979
|
+
var ENCODING_TYPE_EXPRESSION = 'expression';
|
|
5980
|
+
var ENCODING_TYPE_TEXT = 'text';
|
|
5981
|
+
|
|
7477
5982
|
var FALSE_FREE_DELIMITER = { joiner: 'false', separator: 'false' };
|
|
7478
5983
|
var FALSE_TRUE_DELIMITER = { joiner: '', separator: 'Function("return/(?=false|true)/")()' };
|
|
7479
5984
|
|
|
@@ -7556,7 +6061,7 @@
|
|
|
7556
6061
|
}
|
|
7557
6062
|
|
|
7558
6063
|
function createCharKeyArrayString
|
|
7559
|
-
(encoder, input, charMap, insertions, substitutions,
|
|
6064
|
+
(encoder, input, charMap, insertions, substitutions, areKeysFigures, maxLength)
|
|
7560
6065
|
{
|
|
7561
6066
|
var charKeyArray =
|
|
7562
6067
|
_Array_prototype_map_call
|
|
@@ -7569,7 +6074,8 @@
|
|
|
7569
6074
|
}
|
|
7570
6075
|
);
|
|
7571
6076
|
var charKeyArrayStr =
|
|
7572
|
-
encoder.replaceStringArray
|
|
6077
|
+
encoder.replaceStringArray
|
|
6078
|
+
(charKeyArray, insertions, substitutions, !areKeysFigures, areKeysFigures, maxLength);
|
|
7573
6079
|
return charKeyArrayStr;
|
|
7574
6080
|
}
|
|
7575
6081
|
|
|
@@ -7755,10 +6261,17 @@
|
|
|
7755
6261
|
var figureMaxLength = maxLength - legend.length;
|
|
7756
6262
|
var figureLegend =
|
|
7757
6263
|
encoder.replaceStringArray
|
|
7758
|
-
(
|
|
6264
|
+
(
|
|
6265
|
+
figures,
|
|
6266
|
+
figureLegendInsertions,
|
|
6267
|
+
null,
|
|
6268
|
+
false,
|
|
6269
|
+
true,
|
|
6270
|
+
figureMaxLength - minCharIndexArrayStrLength
|
|
6271
|
+
);
|
|
7759
6272
|
if (!figureLegend)
|
|
7760
6273
|
return;
|
|
7761
|
-
var
|
|
6274
|
+
var charIndexFigureArrayStr =
|
|
7762
6275
|
createCharKeyArrayString
|
|
7763
6276
|
(
|
|
7764
6277
|
encoder,
|
|
@@ -7769,14 +6282,14 @@
|
|
|
7769
6282
|
true,
|
|
7770
6283
|
figureMaxLength - figureLegend.length
|
|
7771
6284
|
);
|
|
7772
|
-
if (!
|
|
6285
|
+
if (!charIndexFigureArrayStr)
|
|
7773
6286
|
return;
|
|
7774
|
-
var
|
|
7775
|
-
var argName =
|
|
6287
|
+
var formatMapper = encoder.findDefinition(FORMAT_MAPPER_SHORT);
|
|
6288
|
+
var argName = formatMapper.argName;
|
|
7776
6289
|
var accessor = '.indexOf(' + argName + ')';
|
|
7777
|
-
var mapper =
|
|
6290
|
+
var mapper = formatMapper(accessor);
|
|
7778
6291
|
var charIndexArrayStr =
|
|
7779
|
-
createJSFuckArrayMapping(encoder,
|
|
6292
|
+
createJSFuckArrayMapping(encoder, charIndexFigureArrayStr, mapper, figureLegend);
|
|
7780
6293
|
var output = encoder.createDictEncoding(legend, charIndexArrayStr, maxLength);
|
|
7781
6294
|
return output;
|
|
7782
6295
|
}
|
|
@@ -7803,29 +6316,7 @@
|
|
|
7803
6316
|
function encodeText(encoder, input, screwMode, unitPath, maxLength)
|
|
7804
6317
|
{
|
|
7805
6318
|
var output =
|
|
7806
|
-
callStrategies
|
|
7807
|
-
(
|
|
7808
|
-
encoder,
|
|
7809
|
-
input,
|
|
7810
|
-
{ screwMode: screwMode },
|
|
7811
|
-
[
|
|
7812
|
-
'byDenseFigures',
|
|
7813
|
-
'bySparseFigures',
|
|
7814
|
-
'byDictRadix5AmendedBy3',
|
|
7815
|
-
'byDictRadix4AmendedBy2',
|
|
7816
|
-
'byDictRadix4AmendedBy1',
|
|
7817
|
-
'byDictRadix5',
|
|
7818
|
-
'byDictRadix3AmendedBy1',
|
|
7819
|
-
'byDictRadix4',
|
|
7820
|
-
'byDict',
|
|
7821
|
-
'byCodePointsRadix4',
|
|
7822
|
-
'byCharCodesRadix4',
|
|
7823
|
-
'byCodePoints',
|
|
7824
|
-
'byCharCodes',
|
|
7825
|
-
'plain',
|
|
7826
|
-
],
|
|
7827
|
-
unitPath
|
|
7828
|
-
);
|
|
6319
|
+
callStrategies(encoder, input, { screwMode: screwMode }, TEXT_STRATEGY_NAMES, unitPath);
|
|
7829
6320
|
if (output != null && !(output.length > maxLength))
|
|
7830
6321
|
return output;
|
|
7831
6322
|
}
|
|
@@ -7935,13 +6426,6 @@
|
|
|
7935
6426
|
return strCodes;
|
|
7936
6427
|
}
|
|
7937
6428
|
|
|
7938
|
-
function undefinedAsString(replacement)
|
|
7939
|
-
{
|
|
7940
|
-
if (replacement === '[][[]]')
|
|
7941
|
-
replacement += '+[]';
|
|
7942
|
-
return replacement;
|
|
7943
|
-
}
|
|
7944
|
-
|
|
7945
6429
|
function wrapWithCall(str)
|
|
7946
6430
|
{
|
|
7947
6431
|
var output = this.resolveConstant('Function').replacement + '(' + str + ')()';
|
|
@@ -7963,12 +6447,10 @@
|
|
|
7963
6447
|
|
|
7964
6448
|
(function ()
|
|
7965
6449
|
{
|
|
7966
|
-
function defineStrategy(strategy,
|
|
6450
|
+
function defineStrategy(strategy, encodingType, minInputLength, featureObj)
|
|
7967
6451
|
{
|
|
6452
|
+
strategy.encodingType = encodingType;
|
|
7968
6453
|
strategy.minInputLength = minInputLength;
|
|
7969
|
-
if (expressionMode === undefined)
|
|
7970
|
-
expressionMode = false;
|
|
7971
|
-
strategy.expressionMode = expressionMode;
|
|
7972
6454
|
if (featureObj === undefined)
|
|
7973
6455
|
featureObj = Feature.DEFAULT;
|
|
7974
6456
|
strategy.mask = featureObj.mask;
|
|
@@ -8002,6 +6484,7 @@
|
|
|
8002
6484
|
var output = this._encodeByCharCodes(inputData, undefined, maxLength);
|
|
8003
6485
|
return output;
|
|
8004
6486
|
},
|
|
6487
|
+
ENCODING_TYPE_TEXT,
|
|
8005
6488
|
2
|
|
8006
6489
|
),
|
|
8007
6490
|
|
|
@@ -8022,6 +6505,7 @@
|
|
|
8022
6505
|
var output = this._encodeByCharCodes(inputData, 4, maxLength);
|
|
8023
6506
|
return output;
|
|
8024
6507
|
},
|
|
6508
|
+
ENCODING_TYPE_TEXT,
|
|
8025
6509
|
25
|
|
8026
6510
|
),
|
|
8027
6511
|
|
|
@@ -8041,8 +6525,8 @@
|
|
|
8041
6525
|
var output = this._encodeByCodePoints(inputData, undefined, maxLength);
|
|
8042
6526
|
return output;
|
|
8043
6527
|
},
|
|
6528
|
+
ENCODING_TYPE_TEXT,
|
|
8044
6529
|
3,
|
|
8045
|
-
undefined,
|
|
8046
6530
|
Feature.FROM_CODE_POINT
|
|
8047
6531
|
),
|
|
8048
6532
|
|
|
@@ -8062,8 +6546,8 @@
|
|
|
8062
6546
|
var output = this._encodeByCodePoints(inputData, 4, maxLength);
|
|
8063
6547
|
return output;
|
|
8064
6548
|
},
|
|
8065
|
-
|
|
8066
|
-
|
|
6549
|
+
ENCODING_TYPE_TEXT,
|
|
6550
|
+
29,
|
|
8067
6551
|
Feature.FROM_CODE_POINT
|
|
8068
6552
|
),
|
|
8069
6553
|
|
|
@@ -8085,20 +6569,21 @@
|
|
|
8085
6569
|
var output = this._encodeByDenseFigures(inputData, maxLength);
|
|
8086
6570
|
return output;
|
|
8087
6571
|
},
|
|
8088
|
-
|
|
6572
|
+
ENCODING_TYPE_TEXT,
|
|
6573
|
+
1881
|
|
8089
6574
|
),
|
|
8090
6575
|
|
|
8091
6576
|
/* -------------------------------------------------------------------------------------- *\
|
|
8092
6577
|
|
|
8093
|
-
Encodes "
|
|
6578
|
+
Encodes "FIFTY" as:
|
|
8094
6579
|
|
|
8095
|
-
"
|
|
6580
|
+
"false1falsefalse2false3".split(false).map("".charAt.bind("FITY")).join([])
|
|
8096
6581
|
|
|
8097
6582
|
(split strategy)
|
|
8098
6583
|
|
|
8099
6584
|
Or:
|
|
8100
6585
|
|
|
8101
|
-
[
|
|
6586
|
+
[[]].concat(1).concat(0).concat(2).concat(3).map("".charAt.bind("FITY")).join([])
|
|
8102
6587
|
|
|
8103
6588
|
(concat strategy)
|
|
8104
6589
|
|
|
@@ -8112,7 +6597,8 @@
|
|
|
8112
6597
|
var output = this._encodeByDict(inputData, undefined, undefined, maxLength);
|
|
8113
6598
|
return output;
|
|
8114
6599
|
},
|
|
8115
|
-
|
|
6600
|
+
ENCODING_TYPE_TEXT,
|
|
6601
|
+
3
|
|
8116
6602
|
),
|
|
8117
6603
|
|
|
8118
6604
|
/* -------------------------------------------------------------------------------------- *\
|
|
@@ -8141,7 +6627,8 @@
|
|
|
8141
6627
|
var output = this._encodeByDict(inputData, 3, 1, maxLength);
|
|
8142
6628
|
return output;
|
|
8143
6629
|
},
|
|
8144
|
-
|
|
6630
|
+
ENCODING_TYPE_TEXT,
|
|
6631
|
+
134
|
|
8145
6632
|
),
|
|
8146
6633
|
|
|
8147
6634
|
/* -------------------------------------------------------------------------------------- *\
|
|
@@ -8177,7 +6664,8 @@
|
|
|
8177
6664
|
var output = this._encodeByDict(inputData, 4, 0, maxLength);
|
|
8178
6665
|
return output;
|
|
8179
6666
|
},
|
|
8180
|
-
|
|
6667
|
+
ENCODING_TYPE_TEXT,
|
|
6668
|
+
112
|
|
8181
6669
|
),
|
|
8182
6670
|
|
|
8183
6671
|
/* -------------------------------------------------------------------------------------- *\
|
|
@@ -8206,7 +6694,8 @@
|
|
|
8206
6694
|
var output = this._encodeByDict(inputData, 4, 1, maxLength);
|
|
8207
6695
|
return output;
|
|
8208
6696
|
},
|
|
8209
|
-
|
|
6697
|
+
ENCODING_TYPE_TEXT,
|
|
6698
|
+
118
|
|
8210
6699
|
),
|
|
8211
6700
|
|
|
8212
6701
|
/* -------------------------------------------------------------------------------------- *\
|
|
@@ -8237,7 +6726,8 @@
|
|
|
8237
6726
|
var output = this._encodeByDict(inputData, 4, 2, maxLength);
|
|
8238
6727
|
return output;
|
|
8239
6728
|
},
|
|
8240
|
-
|
|
6729
|
+
ENCODING_TYPE_TEXT,
|
|
6730
|
+
178
|
|
8241
6731
|
),
|
|
8242
6732
|
|
|
8243
6733
|
/* -------------------------------------------------------------------------------------- *\
|
|
@@ -8274,7 +6764,41 @@
|
|
|
8274
6764
|
var output = this._encodeByDict(inputData, 5, 0, maxLength);
|
|
8275
6765
|
return output;
|
|
8276
6766
|
},
|
|
8277
|
-
|
|
6767
|
+
ENCODING_TYPE_TEXT,
|
|
6768
|
+
172
|
|
6769
|
+
),
|
|
6770
|
+
|
|
6771
|
+
/* -------------------------------------------------------------------------------------- *\
|
|
6772
|
+
|
|
6773
|
+
Encodes "SIXTEEN" as:
|
|
6774
|
+
|
|
6775
|
+
"1false0false10false2falsetruefalsetruefalseundefined".split(true).join(3).split("undefined"
|
|
6776
|
+
).join(4).split(false).map(Function(
|
|
6777
|
+
"return function(undefined){return this[parseInt(undefined,5)]}")().bind("ISTENX")).join([])
|
|
6778
|
+
|
|
6779
|
+
(simple)
|
|
6780
|
+
|
|
6781
|
+
Or:
|
|
6782
|
+
|
|
6783
|
+
"1falsetruefalse10false2falsefalsefalseundefined".split(true).join(3).split("undefined").
|
|
6784
|
+
join(4).split(false).map(Function(
|
|
6785
|
+
"return function(undefined){return this[parseInt(+undefined,5)]}")().bind("ESTINX")).join([]
|
|
6786
|
+
)
|
|
6787
|
+
|
|
6788
|
+
(with coercion)
|
|
6789
|
+
|
|
6790
|
+
\* -------------------------------------------------------------------------------------- */
|
|
6791
|
+
|
|
6792
|
+
byDictRadix5AmendedBy2:
|
|
6793
|
+
defineStrategy
|
|
6794
|
+
(
|
|
6795
|
+
function (inputData, maxLength)
|
|
6796
|
+
{
|
|
6797
|
+
var output = this._encodeByDict(inputData, 5, 2, maxLength);
|
|
6798
|
+
return output;
|
|
6799
|
+
},
|
|
6800
|
+
ENCODING_TYPE_TEXT,
|
|
6801
|
+
193
|
|
8278
6802
|
),
|
|
8279
6803
|
|
|
8280
6804
|
/* -------------------------------------------------------------------------------------- *\
|
|
@@ -8306,7 +6830,8 @@
|
|
|
8306
6830
|
var output = this._encodeByDict(inputData, 5, 3, maxLength);
|
|
8307
6831
|
return output;
|
|
8308
6832
|
},
|
|
8309
|
-
|
|
6833
|
+
ENCODING_TYPE_TEXT,
|
|
6834
|
+
506
|
|
8310
6835
|
),
|
|
8311
6836
|
|
|
8312
6837
|
/* -------------------------------------------------------------------------------------- *\
|
|
@@ -8327,6 +6852,7 @@
|
|
|
8327
6852
|
var output = this._encodeBySparseFigures(inputData, maxLength);
|
|
8328
6853
|
return output;
|
|
8329
6854
|
},
|
|
6855
|
+
ENCODING_TYPE_TEXT,
|
|
8330
6856
|
347
|
|
8331
6857
|
),
|
|
8332
6858
|
|
|
@@ -8345,8 +6871,8 @@
|
|
|
8345
6871
|
var output = this._encodeExpress(input, maxLength);
|
|
8346
6872
|
return output;
|
|
8347
6873
|
},
|
|
8348
|
-
|
|
8349
|
-
|
|
6874
|
+
ENCODING_TYPE_EXPRESSION,
|
|
6875
|
+
0
|
|
8350
6876
|
),
|
|
8351
6877
|
|
|
8352
6878
|
/* -------------------------------------------------------------------------------------- *\
|
|
@@ -8365,7 +6891,9 @@
|
|
|
8365
6891
|
{ maxLength: maxLength, optimize: true, screwMode: inputData.screwMode };
|
|
8366
6892
|
var output = this.replaceString(input, options);
|
|
8367
6893
|
return output;
|
|
8368
|
-
}
|
|
6894
|
+
},
|
|
6895
|
+
ENCODING_TYPE_TEXT,
|
|
6896
|
+
0
|
|
8369
6897
|
),
|
|
8370
6898
|
|
|
8371
6899
|
/* -------------------------------------------------------------------------------------- *\
|
|
@@ -8383,12 +6911,34 @@
|
|
|
8383
6911
|
var wrapper = inputData.wrapper;
|
|
8384
6912
|
var output = encodeAndWrapText(this, input, wrapper, undefined, maxLength);
|
|
8385
6913
|
return output;
|
|
8386
|
-
}
|
|
6914
|
+
},
|
|
6915
|
+
ENCODING_TYPE_COMBINED,
|
|
6916
|
+
0
|
|
8387
6917
|
),
|
|
8388
6918
|
};
|
|
8389
6919
|
}
|
|
8390
6920
|
)();
|
|
8391
6921
|
|
|
6922
|
+
var TEXT_STRATEGY_NAMES =
|
|
6923
|
+
_Object_keys$1(STRATEGIES).filter
|
|
6924
|
+
(
|
|
6925
|
+
function (strategyName)
|
|
6926
|
+
{
|
|
6927
|
+
var returnValue = STRATEGIES[strategyName].encodingType === ENCODING_TYPE_TEXT;
|
|
6928
|
+
return returnValue;
|
|
6929
|
+
}
|
|
6930
|
+
)
|
|
6931
|
+
.sort
|
|
6932
|
+
(
|
|
6933
|
+
function (strategyName1, strategyName2)
|
|
6934
|
+
{
|
|
6935
|
+
var minInputLength1 = STRATEGIES[strategyName1].minInputLength;
|
|
6936
|
+
var minInputLength2 = STRATEGIES[strategyName2].minInputLength;
|
|
6937
|
+
var diff = minInputLength2 - minInputLength1;
|
|
6938
|
+
return diff;
|
|
6939
|
+
}
|
|
6940
|
+
);
|
|
6941
|
+
|
|
8392
6942
|
assignNoEnum$1
|
|
8393
6943
|
(
|
|
8394
6944
|
Encoder.prototype,
|
|
@@ -8546,7 +7096,7 @@
|
|
|
8546
7096
|
return output;
|
|
8547
7097
|
},
|
|
8548
7098
|
|
|
8549
|
-
_maxDecodableArgs:
|
|
7099
|
+
_maxDecodableArgs: 65533, // Limit imposed by Internet Explorer.
|
|
8550
7100
|
|
|
8551
7101
|
createDictEncoding:
|
|
8552
7102
|
function (legend, charIndexArrayStr, maxLength, radix, coerceToInt)
|
|
@@ -8554,11 +7104,11 @@
|
|
|
8554
7104
|
var mapper;
|
|
8555
7105
|
if (radix)
|
|
8556
7106
|
{
|
|
8557
|
-
var
|
|
8558
|
-
var argName =
|
|
7107
|
+
var formatMapper = this.findDefinition(FORMAT_MAPPER_LONG);
|
|
7108
|
+
var argName = formatMapper.argName;
|
|
8559
7109
|
var parseIntArg = (coerceToInt ? '+' : '') + argName;
|
|
8560
7110
|
var accessor = '[parseInt(' + parseIntArg + ',' + radix + ')]';
|
|
8561
|
-
mapper =
|
|
7111
|
+
mapper = formatMapper(accessor);
|
|
8562
7112
|
}
|
|
8563
7113
|
else
|
|
8564
7114
|
mapper = '"".charAt.bind';
|
|
@@ -8575,232 +7125,11 @@
|
|
|
8575
7125
|
function (array, maxLength)
|
|
8576
7126
|
{
|
|
8577
7127
|
var result =
|
|
8578
|
-
this.replaceStringArray(array, [FALSE_FREE_DELIMITER], null, false, maxLength);
|
|
7128
|
+
this.replaceStringArray(array, [FALSE_FREE_DELIMITER], null, false, false, maxLength);
|
|
8579
7129
|
return result;
|
|
8580
7130
|
},
|
|
8581
7131
|
|
|
8582
|
-
|
|
8583
|
-
function (str, maxLength)
|
|
8584
|
-
{
|
|
8585
|
-
var options = { maxLength: maxLength, screwMode: SCREW_AS_BONDED_STRING };
|
|
8586
|
-
var replacement = replaceStaticString(str, options);
|
|
8587
|
-
return replacement;
|
|
8588
|
-
},
|
|
8589
|
-
|
|
8590
|
-
/**
|
|
8591
|
-
* An object that exposes properties used to split a string into an array of strings or to
|
|
8592
|
-
* join array elements into a string.
|
|
8593
|
-
*
|
|
8594
|
-
* @typedef Delimiter
|
|
8595
|
-
*
|
|
8596
|
-
* @property {string} separator
|
|
8597
|
-
* An express-parsable expression used as an argument for `String.prototype.split` to split
|
|
8598
|
-
* a string into an array of strings.
|
|
8599
|
-
*
|
|
8600
|
-
* @property {number} joiner
|
|
8601
|
-
* The joiner can be any string. A joiner is inserted between adjacent strings in an array
|
|
8602
|
-
* in order to join them into a single string.
|
|
8603
|
-
*/
|
|
8604
|
-
|
|
8605
|
-
/**
|
|
8606
|
-
* Replaces a given array of strings with equivalent JSFuck code.
|
|
8607
|
-
*
|
|
8608
|
-
* Array elements may only contain characters with static definitions in their string
|
|
8609
|
-
* representations.
|
|
8610
|
-
*
|
|
8611
|
-
* @function Encoder#replaceStringArray
|
|
8612
|
-
*
|
|
8613
|
-
* @param {string[]} array
|
|
8614
|
-
* The string array to replace. Empty arrays are not supported.
|
|
8615
|
-
*
|
|
8616
|
-
* @param {Delimiter[]} insertions
|
|
8617
|
-
* An array of delimiters of which at most one will be used to compose a joined string and
|
|
8618
|
-
* split it into an array of strings.
|
|
8619
|
-
*
|
|
8620
|
-
* The encoder can pick an insertion and insert a joiner between any two adjacent elements
|
|
8621
|
-
* to mark the boundary between them. The separator is then used to split the concatenated
|
|
8622
|
-
* string back into its elements.
|
|
8623
|
-
*
|
|
8624
|
-
* @param {Delimiter[]|null} [substitutions]
|
|
8625
|
-
* An array of delimiters, specifying substitutions to be applied to the input elements.
|
|
8626
|
-
*
|
|
8627
|
-
* All substitutions are applied on each element of the input array, in the order they are
|
|
8628
|
-
* specified.
|
|
8629
|
-
*
|
|
8630
|
-
* Substitutions are expensive in two ways: they create additional overhead and prevent
|
|
8631
|
-
* certain optimizations for short arrays to be made. To allow all optimizations to be
|
|
8632
|
-
* performed, omit this argument or set it to null instead of specifying an empty array.
|
|
8633
|
-
*
|
|
8634
|
-
* @param {boolean} [forceString=false]
|
|
8635
|
-
* Indicates whether the elements in the replacement expression should evaluate to strings.
|
|
8636
|
-
*
|
|
8637
|
-
* If this argument is falsy, the elements in the replacement expression may not be equal to
|
|
8638
|
-
* those in the input array, but will have the same string representation.
|
|
8639
|
-
*
|
|
8640
|
-
* Regardless of this argument, the string representation of the value of the whole
|
|
8641
|
-
* replacement expression will be always the same as the string representation of the input
|
|
8642
|
-
* array.
|
|
8643
|
-
*
|
|
8644
|
-
* @param {number} [maxLength=(NaN)]
|
|
8645
|
-
* The maximum length of the replacement expression.
|
|
8646
|
-
*
|
|
8647
|
-
* If the replacement expression exceeds the specified length, the return value is
|
|
8648
|
-
* `undefined`.
|
|
8649
|
-
*
|
|
8650
|
-
* If this parameter is `NaN`, then no length limit is imposed.
|
|
8651
|
-
*
|
|
8652
|
-
* @returns {string|undefined}
|
|
8653
|
-
* The replacement string or `undefined`.
|
|
8654
|
-
*/
|
|
8655
|
-
replaceStringArray:
|
|
8656
|
-
function (array, insertions, substitutions, forceString, maxLength)
|
|
8657
|
-
{
|
|
8658
|
-
var replacement;
|
|
8659
|
-
var count = array.length;
|
|
8660
|
-
// Don't even try the split approach for 3 or less elements if the concat approach can
|
|
8661
|
-
// be applied.
|
|
8662
|
-
if (substitutions || count > 3)
|
|
8663
|
-
{
|
|
8664
|
-
var preReplacement =
|
|
8665
|
-
function ()
|
|
8666
|
-
{
|
|
8667
|
-
// Length of the shortest string replacement "([]+[])".
|
|
8668
|
-
var STRING_REPLACEMENT_MIN_LENGTH = 7;
|
|
8669
|
-
|
|
8670
|
-
// This is for the overhead of "[" + "](" + ")" plus the length of the shortest
|
|
8671
|
-
// separator replacement "[]".
|
|
8672
|
-
var SEPARATOR_MIN_OVERHEAD = 6;
|
|
8673
|
-
|
|
8674
|
-
// This is for the overhead of "[" + "](" + ")" plus the length of the shortest
|
|
8675
|
-
// joiner replacement "[]".
|
|
8676
|
-
var JOINER_MIN_OVERHEAD = 6;
|
|
8677
|
-
|
|
8678
|
-
var joinCount = substitutions ? substitutions.length : 0;
|
|
8679
|
-
var splitCount = joinCount + 1;
|
|
8680
|
-
var maxSplitReplacementLength =
|
|
8681
|
-
(maxLength - STRING_REPLACEMENT_MIN_LENGTH) / splitCount -
|
|
8682
|
-
SEPARATOR_MIN_OVERHEAD;
|
|
8683
|
-
var splitReplacement =
|
|
8684
|
-
this.replaceString
|
|
8685
|
-
('split', { maxLength: maxSplitReplacementLength, optimize: true });
|
|
8686
|
-
if (!splitReplacement)
|
|
8687
|
-
return;
|
|
8688
|
-
var preReplacement = '';
|
|
8689
|
-
if (joinCount)
|
|
8690
|
-
{
|
|
8691
|
-
var maxJoinReplacementLength =
|
|
8692
|
-
(
|
|
8693
|
-
maxLength - STRING_REPLACEMENT_MIN_LENGTH -
|
|
8694
|
-
splitCount * (splitReplacement.length + SEPARATOR_MIN_OVERHEAD)
|
|
8695
|
-
) /
|
|
8696
|
-
joinCount -
|
|
8697
|
-
JOINER_MIN_OVERHEAD;
|
|
8698
|
-
var joinReplacement =
|
|
8699
|
-
this.replaceString('join', { maxLength: maxJoinReplacementLength });
|
|
8700
|
-
if (!joinReplacement)
|
|
8701
|
-
return;
|
|
8702
|
-
substitutions.forEach
|
|
8703
|
-
(
|
|
8704
|
-
function (substitution)
|
|
8705
|
-
{
|
|
8706
|
-
var separatorReplacement =
|
|
8707
|
-
undefinedAsString(this.replaceExpr(substitution.separator));
|
|
8708
|
-
var joinerReplacement =
|
|
8709
|
-
undefinedAsString(this.replaceString(substitution.joiner));
|
|
8710
|
-
preReplacement +=
|
|
8711
|
-
'[' + splitReplacement + '](' + separatorReplacement + ')[' +
|
|
8712
|
-
joinReplacement + '](' + joinerReplacement + ')';
|
|
8713
|
-
},
|
|
8714
|
-
this
|
|
8715
|
-
);
|
|
8716
|
-
}
|
|
8717
|
-
preReplacement += '[' + splitReplacement + ']';
|
|
8718
|
-
return preReplacement;
|
|
8719
|
-
}
|
|
8720
|
-
.call(this);
|
|
8721
|
-
}
|
|
8722
|
-
if (!substitutions && count > 1)
|
|
8723
|
-
{
|
|
8724
|
-
var concatReplacement =
|
|
8725
|
-
this.replaceString('concat', { maxLength: maxLength, optimize: true });
|
|
8726
|
-
}
|
|
8727
|
-
if (preReplacement)
|
|
8728
|
-
// Approach 1: (array[0] + joiner + array[1] + joiner + array[2]...).split(separator)
|
|
8729
|
-
{
|
|
8730
|
-
// 2 is for the additional overhead of "(" + ")".
|
|
8731
|
-
var maxBulkLength = maxLength - (preReplacement.length + 2);
|
|
8732
|
-
var optimalStrReplacement;
|
|
8733
|
-
var optimalSeparatorReplacement;
|
|
8734
|
-
insertions.forEach
|
|
8735
|
-
(
|
|
8736
|
-
function (insertion)
|
|
8737
|
-
{
|
|
8738
|
-
var str = array.join(insertion.joiner);
|
|
8739
|
-
var strReplacement = this.replaceJoinedArrayString(str, maxBulkLength);
|
|
8740
|
-
if (!strReplacement)
|
|
8741
|
-
return;
|
|
8742
|
-
var separatorReplacement =
|
|
8743
|
-
undefinedAsString(this.replaceExpr(insertion.separator));
|
|
8744
|
-
var bulkLength = strReplacement.length + separatorReplacement.length;
|
|
8745
|
-
if (!(bulkLength > maxBulkLength))
|
|
8746
|
-
{
|
|
8747
|
-
maxBulkLength = bulkLength;
|
|
8748
|
-
optimalStrReplacement = strReplacement;
|
|
8749
|
-
optimalSeparatorReplacement = separatorReplacement;
|
|
8750
|
-
}
|
|
8751
|
-
},
|
|
8752
|
-
this
|
|
8753
|
-
);
|
|
8754
|
-
if (optimalStrReplacement)
|
|
8755
|
-
{
|
|
8756
|
-
replacement =
|
|
8757
|
-
optimalStrReplacement + preReplacement + '(' + optimalSeparatorReplacement +
|
|
8758
|
-
')';
|
|
8759
|
-
maxLength = replacement.length - 1;
|
|
8760
|
-
}
|
|
8761
|
-
}
|
|
8762
|
-
if
|
|
8763
|
-
(
|
|
8764
|
-
!substitutions &&
|
|
8765
|
-
(
|
|
8766
|
-
count <= 1 ||
|
|
8767
|
-
concatReplacement &&
|
|
8768
|
-
// 4 is the length of the shortest possible replacement "[[]]".
|
|
8769
|
-
// 7 is the length of the shortest possible additional overhead for each
|
|
8770
|
-
// following array element, as in "[" + "](+[])" or "[" + "](![])".
|
|
8771
|
-
!(4 + (concatReplacement.length + 7) * (count - 1) > maxLength)
|
|
8772
|
-
)
|
|
8773
|
-
)
|
|
8774
|
-
// Approach 2: [array[0]].concat(array[1]).concat(array[2])...
|
|
8775
|
-
{
|
|
8776
|
-
var arrayReplacement;
|
|
8777
|
-
var options = { screwMode: forceString ? SCREW_AS_STRING : SCREW_NORMAL };
|
|
8778
|
-
if
|
|
8779
|
-
(
|
|
8780
|
-
!array.some
|
|
8781
|
-
(
|
|
8782
|
-
function (element)
|
|
8783
|
-
{
|
|
8784
|
-
var elementReplacement =
|
|
8785
|
-
undefinedAsString(replaceStaticString(element, options));
|
|
8786
|
-
if (arrayReplacement)
|
|
8787
|
-
{
|
|
8788
|
-
if (elementReplacement === '[]')
|
|
8789
|
-
elementReplacement = '[[]]';
|
|
8790
|
-
arrayReplacement +=
|
|
8791
|
-
'[' + concatReplacement + '](' + elementReplacement + ')';
|
|
8792
|
-
}
|
|
8793
|
-
else
|
|
8794
|
-
arrayReplacement = '[' + elementReplacement + ']';
|
|
8795
|
-
var result = arrayReplacement.length > maxLength;
|
|
8796
|
-
return result;
|
|
8797
|
-
}
|
|
8798
|
-
)
|
|
8799
|
-
)
|
|
8800
|
-
replacement = arrayReplacement;
|
|
8801
|
-
}
|
|
8802
|
-
return replacement;
|
|
8803
|
-
},
|
|
7132
|
+
replaceStringArray: replaceStringArray,
|
|
8804
7133
|
}
|
|
8805
7134
|
);
|
|
8806
7135
|
|
|
@@ -9684,9 +8013,9 @@
|
|
|
9684
8013
|
return entry;
|
|
9685
8014
|
}
|
|
9686
8015
|
|
|
9687
|
-
function createScrewBuffer(screwMode,
|
|
8016
|
+
function createScrewBuffer(screwMode, optimizerList)
|
|
9688
8017
|
{
|
|
9689
|
-
var buffer = new ScrewBuffer(screwMode,
|
|
8018
|
+
var buffer = new ScrewBuffer(screwMode, optimizerList);
|
|
9690
8019
|
return buffer;
|
|
9691
8020
|
}
|
|
9692
8021
|
|
|
@@ -9770,10 +8099,10 @@
|
|
|
9770
8099
|
ENTRIES[name + ':available'] = entries.available;
|
|
9771
8100
|
}
|
|
9772
8101
|
|
|
8102
|
+
exposeEntries('FORMAT_MAPPER_LONG', FORMAT_MAPPER_LONG);
|
|
8103
|
+
exposeEntries('FORMAT_MAPPER_SHORT', FORMAT_MAPPER_SHORT);
|
|
9773
8104
|
exposeEntries('FROM_CHAR_CODE', FROM_CHAR_CODE);
|
|
9774
8105
|
exposeEntries('FROM_CHAR_CODE_CALLBACK_FORMATTER', FROM_CHAR_CODE_CALLBACK_FORMATTER);
|
|
9775
|
-
exposeEntries('MAPPER_FORMATTER', MAPPER_FORMATTER);
|
|
9776
|
-
exposeEntries('OPTIMAL_ARG_NAME', OPTIMAL_ARG_NAME);
|
|
9777
8106
|
exposeEntries('OPTIMAL_B', OPTIMAL_B);
|
|
9778
8107
|
exposeEntries('OPTIMAL_RETURN_STRING', OPTIMAL_RETURN_STRING);
|
|
9779
8108
|
}
|