driftjs-ssr 0.0.16 → 0.0.18
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/dist/index-cjs.js +7 -7
- package/dist/index-es.js +1184 -1179
- package/dist/index.d.ts +81 -0
- package/package.json +8 -8
package/dist/index-es.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
//#region ../../node_modules/.pnpm/acorn@8.
|
|
3
|
-
var
|
|
1
|
+
import { VALID_ATTR_NAME_REGEX as e, VALID_TAG_NAME_REGEX as t, VOID_ELEMENTS as n, createContext as r, effect as i, escapeHtml as a, evaluateExpression as o, evaluatePropsSpec as s, inject as c, injectContext as l, isValidHtmlTagName as u, normalizeStyle as d, onMount as f, onUnmount as p, popActiveVM as m, provide as h, provideContext as g, pushActiveVM as _, resolveComponentModule as v, resolveIterable as ee } from "driftjs-shared";
|
|
2
|
+
//#region ../../node_modules/.pnpm/acorn@8.18.0/node_modules/acorn/dist/acorn.mjs
|
|
3
|
+
var te = [
|
|
4
4
|
509,
|
|
5
5
|
0,
|
|
6
6
|
227,
|
|
@@ -331,7 +331,7 @@ var h = [
|
|
|
331
331
|
9,
|
|
332
332
|
787719,
|
|
333
333
|
239
|
|
334
|
-
],
|
|
334
|
+
], y = [
|
|
335
335
|
0,
|
|
336
336
|
11,
|
|
337
337
|
2,
|
|
@@ -950,216 +950,216 @@ var h = [
|
|
|
950
950
|
4938,
|
|
951
951
|
6,
|
|
952
952
|
8489
|
|
953
|
-
],
|
|
953
|
+
], ne = "·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߽߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛-࢟࣊-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯৾ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ૺ-૿ଁ-ଃ଼ା-ୄେୈୋ-୍୕-ୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఄ఼ా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ೳഀ-ഃ഻഼ാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ඁ-ඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ຼ່-໎໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜕ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠏-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᪿ--ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭᳴᳷-᳹᷀-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯・꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧ꠬ꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱ꣿ-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_・", re = "ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙՠ-ֈא-תׯ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࡠ-ࡪࡰ-ࢇࢉ-ࢠ-ࣉऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱৼਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౝౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽ-ೞೠೡೱೲഄ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄຆ-ຊຌ-ຣລວ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜑᜟ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡸᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭌᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-Ა-ᲺᲽ-Ჿᳩ-ᳬᳮ-ᳳᳵᳶᳺᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄯㄱ-ㆎㆠ-ㆿㇰ-ㇿ㐀-䶿一-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ--ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꣾꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭩꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ", ie = {
|
|
954
954
|
3: "abstract boolean byte char class double enum export extends final float goto implements import int interface long native package private protected public short static super synchronized throws transient volatile",
|
|
955
955
|
5: "class enum extends super const export import",
|
|
956
956
|
6: "enum",
|
|
957
957
|
strict: "implements interface let package private protected public static yield",
|
|
958
958
|
strictBind: "eval arguments"
|
|
959
|
-
},
|
|
960
|
-
5:
|
|
961
|
-
"5module":
|
|
962
|
-
6:
|
|
963
|
-
},
|
|
964
|
-
function
|
|
959
|
+
}, ae = "break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this", oe = {
|
|
960
|
+
5: ae,
|
|
961
|
+
"5module": ae + " export import",
|
|
962
|
+
6: ae + " const class extends export import super"
|
|
963
|
+
}, se = /^in(stanceof)?$/, ce = RegExp("[" + re + "]"), le = RegExp("[" + re + ne + "]");
|
|
964
|
+
function ue(e, t) {
|
|
965
965
|
for (var n = 65536, r = 0; r < t.length; r += 2) {
|
|
966
966
|
if (n += t[r], n > e) return !1;
|
|
967
967
|
if (n += t[r + 1], n >= e) return !0;
|
|
968
968
|
}
|
|
969
969
|
return !1;
|
|
970
970
|
}
|
|
971
|
-
function y(e, t) {
|
|
972
|
-
return e < 65 ? e === 36 : e < 91 ? !0 : e < 97 ? e === 95 : e < 123 ? !0 : e <= 65535 ? e >= 170 && ae.test(String.fromCharCode(e)) : t !== !1 && se(e, g);
|
|
973
|
-
}
|
|
974
971
|
function b(e, t) {
|
|
975
|
-
return e <
|
|
972
|
+
return e < 65 ? e === 36 : e < 91 ? !0 : e < 97 ? e === 95 : e < 123 ? !0 : e <= 65535 ? e >= 170 && ce.test(String.fromCharCode(e)) : t !== !1 && ue(e, y);
|
|
973
|
+
}
|
|
974
|
+
function x(e, t) {
|
|
975
|
+
return e < 48 ? e === 36 : e < 58 ? !0 : e < 65 ? !1 : e < 91 ? !0 : e < 97 ? e === 95 : e < 123 ? !0 : e <= 65535 ? e >= 170 && le.test(String.fromCharCode(e)) : t === !1 ? !1 : ue(e, y) || ue(e, te);
|
|
976
976
|
}
|
|
977
|
-
var
|
|
977
|
+
var S = function(e, t) {
|
|
978
978
|
t === void 0 && (t = {}), this.label = e, this.keyword = t.keyword, this.beforeExpr = !!t.beforeExpr, this.startsExpr = !!t.startsExpr, this.isLoop = !!t.isLoop, this.isAssign = !!t.isAssign, this.prefix = !!t.prefix, this.postfix = !!t.postfix, this.binop = t.binop || null, this.updateContext = null;
|
|
979
979
|
};
|
|
980
|
-
function
|
|
981
|
-
return new
|
|
980
|
+
function C(e, t) {
|
|
981
|
+
return new S(e, {
|
|
982
982
|
beforeExpr: !0,
|
|
983
983
|
binop: t
|
|
984
984
|
});
|
|
985
985
|
}
|
|
986
|
-
var
|
|
987
|
-
function
|
|
988
|
-
return t === void 0 && (t = {}), t.keyword = e,
|
|
986
|
+
var w = { beforeExpr: !0 }, T = { startsExpr: !0 }, de = {};
|
|
987
|
+
function E(e, t) {
|
|
988
|
+
return t === void 0 && (t = {}), t.keyword = e, de[e] = new S(e, t);
|
|
989
989
|
}
|
|
990
|
-
var
|
|
991
|
-
num: new
|
|
992
|
-
regexp: new
|
|
993
|
-
string: new
|
|
994
|
-
name: new
|
|
995
|
-
privateId: new
|
|
996
|
-
eof: new
|
|
997
|
-
bracketL: new
|
|
990
|
+
var D = {
|
|
991
|
+
num: new S("num", T),
|
|
992
|
+
regexp: new S("regexp", T),
|
|
993
|
+
string: new S("string", T),
|
|
994
|
+
name: new S("name", T),
|
|
995
|
+
privateId: new S("privateId", T),
|
|
996
|
+
eof: new S("eof"),
|
|
997
|
+
bracketL: new S("[", {
|
|
998
998
|
beforeExpr: !0,
|
|
999
999
|
startsExpr: !0
|
|
1000
1000
|
}),
|
|
1001
|
-
bracketR: new
|
|
1002
|
-
braceL: new
|
|
1001
|
+
bracketR: new S("]"),
|
|
1002
|
+
braceL: new S("{", {
|
|
1003
1003
|
beforeExpr: !0,
|
|
1004
1004
|
startsExpr: !0
|
|
1005
1005
|
}),
|
|
1006
|
-
braceR: new
|
|
1007
|
-
parenL: new
|
|
1006
|
+
braceR: new S("}"),
|
|
1007
|
+
parenL: new S("(", {
|
|
1008
1008
|
beforeExpr: !0,
|
|
1009
1009
|
startsExpr: !0
|
|
1010
1010
|
}),
|
|
1011
|
-
parenR: new
|
|
1012
|
-
comma: new
|
|
1013
|
-
semi: new
|
|
1014
|
-
colon: new
|
|
1015
|
-
dot: new
|
|
1016
|
-
question: new
|
|
1017
|
-
questionDot: new
|
|
1018
|
-
arrow: new
|
|
1019
|
-
template: new
|
|
1020
|
-
invalidTemplate: new
|
|
1021
|
-
ellipsis: new
|
|
1022
|
-
backQuote: new
|
|
1023
|
-
dollarBraceL: new
|
|
1011
|
+
parenR: new S(")"),
|
|
1012
|
+
comma: new S(",", w),
|
|
1013
|
+
semi: new S(";", w),
|
|
1014
|
+
colon: new S(":", w),
|
|
1015
|
+
dot: new S("."),
|
|
1016
|
+
question: new S("?", w),
|
|
1017
|
+
questionDot: new S("?."),
|
|
1018
|
+
arrow: new S("=>", w),
|
|
1019
|
+
template: new S("template"),
|
|
1020
|
+
invalidTemplate: new S("invalidTemplate"),
|
|
1021
|
+
ellipsis: new S("...", w),
|
|
1022
|
+
backQuote: new S("`", T),
|
|
1023
|
+
dollarBraceL: new S("${", {
|
|
1024
1024
|
beforeExpr: !0,
|
|
1025
1025
|
startsExpr: !0
|
|
1026
1026
|
}),
|
|
1027
|
-
eq: new
|
|
1027
|
+
eq: new S("=", {
|
|
1028
1028
|
beforeExpr: !0,
|
|
1029
1029
|
isAssign: !0
|
|
1030
1030
|
}),
|
|
1031
|
-
assign: new
|
|
1031
|
+
assign: new S("_=", {
|
|
1032
1032
|
beforeExpr: !0,
|
|
1033
1033
|
isAssign: !0
|
|
1034
1034
|
}),
|
|
1035
|
-
incDec: new
|
|
1035
|
+
incDec: new S("++/--", {
|
|
1036
1036
|
prefix: !0,
|
|
1037
1037
|
postfix: !0,
|
|
1038
1038
|
startsExpr: !0
|
|
1039
1039
|
}),
|
|
1040
|
-
prefix: new
|
|
1040
|
+
prefix: new S("!/~", {
|
|
1041
1041
|
beforeExpr: !0,
|
|
1042
1042
|
prefix: !0,
|
|
1043
1043
|
startsExpr: !0
|
|
1044
1044
|
}),
|
|
1045
|
-
logicalOR:
|
|
1046
|
-
logicalAND:
|
|
1047
|
-
bitwiseOR:
|
|
1048
|
-
bitwiseXOR:
|
|
1049
|
-
bitwiseAND:
|
|
1050
|
-
equality:
|
|
1051
|
-
relational:
|
|
1052
|
-
bitShift:
|
|
1053
|
-
plusMin: new
|
|
1045
|
+
logicalOR: C("||", 1),
|
|
1046
|
+
logicalAND: C("&&", 2),
|
|
1047
|
+
bitwiseOR: C("|", 3),
|
|
1048
|
+
bitwiseXOR: C("^", 4),
|
|
1049
|
+
bitwiseAND: C("&", 5),
|
|
1050
|
+
equality: C("==/!=/===/!==", 6),
|
|
1051
|
+
relational: C("</>/<=/>=", 7),
|
|
1052
|
+
bitShift: C("<</>>/>>>", 8),
|
|
1053
|
+
plusMin: new S("+/-", {
|
|
1054
1054
|
beforeExpr: !0,
|
|
1055
1055
|
binop: 9,
|
|
1056
1056
|
prefix: !0,
|
|
1057
1057
|
startsExpr: !0
|
|
1058
1058
|
}),
|
|
1059
|
-
modulo:
|
|
1060
|
-
star:
|
|
1061
|
-
slash:
|
|
1062
|
-
starstar: new
|
|
1063
|
-
coalesce:
|
|
1064
|
-
_break:
|
|
1065
|
-
_case:
|
|
1066
|
-
_catch:
|
|
1067
|
-
_continue:
|
|
1068
|
-
_debugger:
|
|
1069
|
-
_default:
|
|
1070
|
-
_do:
|
|
1059
|
+
modulo: C("%", 10),
|
|
1060
|
+
star: C("*", 10),
|
|
1061
|
+
slash: C("/", 10),
|
|
1062
|
+
starstar: new S("**", { beforeExpr: !0 }),
|
|
1063
|
+
coalesce: C("??", 1),
|
|
1064
|
+
_break: E("break"),
|
|
1065
|
+
_case: E("case", w),
|
|
1066
|
+
_catch: E("catch"),
|
|
1067
|
+
_continue: E("continue"),
|
|
1068
|
+
_debugger: E("debugger"),
|
|
1069
|
+
_default: E("default", w),
|
|
1070
|
+
_do: E("do", {
|
|
1071
1071
|
isLoop: !0,
|
|
1072
1072
|
beforeExpr: !0
|
|
1073
1073
|
}),
|
|
1074
|
-
_else:
|
|
1075
|
-
_finally:
|
|
1076
|
-
_for:
|
|
1077
|
-
_function:
|
|
1078
|
-
_if:
|
|
1079
|
-
_return:
|
|
1080
|
-
_switch:
|
|
1081
|
-
_throw:
|
|
1082
|
-
_try:
|
|
1083
|
-
_var:
|
|
1084
|
-
_const:
|
|
1085
|
-
_while:
|
|
1086
|
-
_with:
|
|
1087
|
-
_new:
|
|
1074
|
+
_else: E("else", w),
|
|
1075
|
+
_finally: E("finally"),
|
|
1076
|
+
_for: E("for", { isLoop: !0 }),
|
|
1077
|
+
_function: E("function", T),
|
|
1078
|
+
_if: E("if"),
|
|
1079
|
+
_return: E("return", w),
|
|
1080
|
+
_switch: E("switch"),
|
|
1081
|
+
_throw: E("throw", w),
|
|
1082
|
+
_try: E("try"),
|
|
1083
|
+
_var: E("var"),
|
|
1084
|
+
_const: E("const"),
|
|
1085
|
+
_while: E("while", { isLoop: !0 }),
|
|
1086
|
+
_with: E("with"),
|
|
1087
|
+
_new: E("new", {
|
|
1088
1088
|
beforeExpr: !0,
|
|
1089
1089
|
startsExpr: !0
|
|
1090
1090
|
}),
|
|
1091
|
-
_this:
|
|
1092
|
-
_super:
|
|
1093
|
-
_class:
|
|
1094
|
-
_extends:
|
|
1095
|
-
_export:
|
|
1096
|
-
_import:
|
|
1097
|
-
_null:
|
|
1098
|
-
_true:
|
|
1099
|
-
_false:
|
|
1100
|
-
_in:
|
|
1091
|
+
_this: E("this", T),
|
|
1092
|
+
_super: E("super", T),
|
|
1093
|
+
_class: E("class", T),
|
|
1094
|
+
_extends: E("extends", w),
|
|
1095
|
+
_export: E("export"),
|
|
1096
|
+
_import: E("import", T),
|
|
1097
|
+
_null: E("null", T),
|
|
1098
|
+
_true: E("true", T),
|
|
1099
|
+
_false: E("false", T),
|
|
1100
|
+
_in: E("in", {
|
|
1101
1101
|
beforeExpr: !0,
|
|
1102
1102
|
binop: 7
|
|
1103
1103
|
}),
|
|
1104
|
-
_instanceof:
|
|
1104
|
+
_instanceof: E("instanceof", {
|
|
1105
1105
|
beforeExpr: !0,
|
|
1106
1106
|
binop: 7
|
|
1107
1107
|
}),
|
|
1108
|
-
_typeof:
|
|
1108
|
+
_typeof: E("typeof", {
|
|
1109
1109
|
beforeExpr: !0,
|
|
1110
1110
|
prefix: !0,
|
|
1111
1111
|
startsExpr: !0
|
|
1112
1112
|
}),
|
|
1113
|
-
_void:
|
|
1113
|
+
_void: E("void", {
|
|
1114
1114
|
beforeExpr: !0,
|
|
1115
1115
|
prefix: !0,
|
|
1116
1116
|
startsExpr: !0
|
|
1117
1117
|
}),
|
|
1118
|
-
_delete:
|
|
1118
|
+
_delete: E("delete", {
|
|
1119
1119
|
beforeExpr: !0,
|
|
1120
1120
|
prefix: !0,
|
|
1121
1121
|
startsExpr: !0
|
|
1122
1122
|
})
|
|
1123
|
-
},
|
|
1124
|
-
function
|
|
1123
|
+
}, O = /\r\n?|\n|\u2028|\u2029/, fe = new RegExp(O.source, "g");
|
|
1124
|
+
function pe(e) {
|
|
1125
1125
|
return e === 10 || e === 13 || e === 8232 || e === 8233;
|
|
1126
1126
|
}
|
|
1127
|
-
function
|
|
1127
|
+
function me(e, t, n) {
|
|
1128
1128
|
n === void 0 && (n = e.length);
|
|
1129
1129
|
for (var r = t; r < n; r++) {
|
|
1130
1130
|
var i = e.charCodeAt(r);
|
|
1131
|
-
if (
|
|
1131
|
+
if (pe(i)) return r < n - 1 && i === 13 && e.charCodeAt(r + 1) === 10 ? r + 2 : r + 1;
|
|
1132
1132
|
}
|
|
1133
1133
|
return -1;
|
|
1134
1134
|
}
|
|
1135
|
-
var
|
|
1136
|
-
return
|
|
1137
|
-
}),
|
|
1138
|
-
return
|
|
1139
|
-
}),
|
|
1140
|
-
function k(e) {
|
|
1141
|
-
return ve[e] || (ve[e] = RegExp("^(?:" + e.replace(/ /g, "|") + ")$"));
|
|
1142
|
-
}
|
|
1135
|
+
var he = /[\u1680\u2000-\u200a\u202f\u205f\u3000\ufeff]/, k = /(?:\s|\/\/.*|\/\*[^]*?\*\/)*/g, ge = Object.prototype, _e = ge.hasOwnProperty, ve = ge.toString, ye = Object.hasOwn || (function(e, t) {
|
|
1136
|
+
return _e.call(e, t);
|
|
1137
|
+
}), be = Array.isArray || (function(e) {
|
|
1138
|
+
return ve.call(e) === "[object Array]";
|
|
1139
|
+
}), xe = Object.create(null);
|
|
1143
1140
|
function A(e) {
|
|
1141
|
+
return xe[e] || (xe[e] = RegExp("^(?:" + e.replace(/ /g, "|") + ")$"));
|
|
1142
|
+
}
|
|
1143
|
+
function j(e) {
|
|
1144
1144
|
return e <= 65535 ? String.fromCharCode(e) : (e -= 65536, String.fromCharCode((e >> 10) + 55296, (e & 1023) + 56320));
|
|
1145
1145
|
}
|
|
1146
|
-
var
|
|
1146
|
+
var Se = /(?:[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF])/, Ce = function(e, t) {
|
|
1147
1147
|
this.line = e, this.column = t;
|
|
1148
1148
|
};
|
|
1149
|
-
|
|
1150
|
-
return new
|
|
1149
|
+
Ce.prototype.offset = function(e) {
|
|
1150
|
+
return new Ce(this.line, this.column + e);
|
|
1151
1151
|
};
|
|
1152
|
-
var
|
|
1152
|
+
var we = function(e, t, n) {
|
|
1153
1153
|
this.start = t, this.end = n, e.sourceFile !== null && (this.source = e.sourceFile);
|
|
1154
1154
|
};
|
|
1155
|
-
function
|
|
1155
|
+
function Te(e, t) {
|
|
1156
1156
|
for (var n = 1, r = 0;;) {
|
|
1157
|
-
var i =
|
|
1158
|
-
if (i < 0) return new
|
|
1157
|
+
var i = me(e, r, t);
|
|
1158
|
+
if (i < 0) return new Ce(n, t - r);
|
|
1159
1159
|
++n, r = i;
|
|
1160
1160
|
}
|
|
1161
1161
|
}
|
|
1162
|
-
var
|
|
1162
|
+
var Ee = {
|
|
1163
1163
|
ecmaVersion: null,
|
|
1164
1164
|
sourceType: "script",
|
|
1165
1165
|
strict: !1,
|
|
@@ -1173,6 +1173,7 @@ var Ce = {
|
|
|
1173
1173
|
allowHashBang: !1,
|
|
1174
1174
|
checkPrivateFields: !0,
|
|
1175
1175
|
locations: !1,
|
|
1176
|
+
startLocation: null,
|
|
1176
1177
|
onToken: null,
|
|
1177
1178
|
onComment: null,
|
|
1178
1179
|
ranges: !1,
|
|
@@ -1180,20 +1181,20 @@ var Ce = {
|
|
|
1180
1181
|
sourceFile: null,
|
|
1181
1182
|
directSourceFile: null,
|
|
1182
1183
|
preserveParens: !1
|
|
1183
|
-
},
|
|
1184
|
-
function
|
|
1184
|
+
}, De = !1;
|
|
1185
|
+
function Oe(e) {
|
|
1185
1186
|
var t = {};
|
|
1186
|
-
for (var n in
|
|
1187
|
-
if (t.ecmaVersion === "latest" ? t.ecmaVersion = 1e8 : t.ecmaVersion == null ? (!
|
|
1187
|
+
for (var n in Ee) t[n] = e && ye(e, n) ? e[n] : Ee[n];
|
|
1188
|
+
if (t.ecmaVersion === "latest" ? t.ecmaVersion = 1e8 : t.ecmaVersion == null ? (!De && typeof console == "object" && console.warn && (De = !0, console.warn("Since Acorn 8.0.0, options.ecmaVersion is required.\nDefaulting to 2020, but this will stop working in the future.")), t.ecmaVersion = 11) : t.ecmaVersion >= 2015 && (t.ecmaVersion -= 2009), t.allowReserved ??= t.ecmaVersion < 5, (!e || e.allowHashBang == null) && (t.allowHashBang = t.ecmaVersion >= 14), be(t.onToken)) {
|
|
1188
1189
|
var r = t.onToken;
|
|
1189
1190
|
t.onToken = function(e) {
|
|
1190
1191
|
return r.push(e);
|
|
1191
1192
|
};
|
|
1192
1193
|
}
|
|
1193
|
-
if (
|
|
1194
|
+
if (be(t.onComment) && (t.onComment = ke(t, t.onComment)), t.sourceType === "commonjs" && t.allowAwaitOutsideFunction) throw Error("Cannot use allowAwaitOutsideFunction with sourceType: commonjs");
|
|
1194
1195
|
return t;
|
|
1195
1196
|
}
|
|
1196
|
-
function
|
|
1197
|
+
function ke(e, t) {
|
|
1197
1198
|
return function(n, r, i, a, o, s) {
|
|
1198
1199
|
var c = {
|
|
1199
1200
|
type: n ? "Block" : "Line",
|
|
@@ -1201,20 +1202,20 @@ function Ee(e, t) {
|
|
|
1201
1202
|
start: i,
|
|
1202
1203
|
end: a
|
|
1203
1204
|
};
|
|
1204
|
-
e.locations && (c.loc = new
|
|
1205
|
+
e.locations && (c.loc = new we(this, o, s)), e.ranges && (c.range = [i, a]), t.push(c);
|
|
1205
1206
|
};
|
|
1206
1207
|
}
|
|
1207
|
-
var
|
|
1208
|
-
function
|
|
1209
|
-
return M | (e ?
|
|
1208
|
+
var Ae = 1, M = 2, je = 4, Me = 8, Ne = 16, Pe = 32, Fe = 64, Ie = 128, N = 256, Le = 512, Re = 1024, ze = Ae | M | N;
|
|
1209
|
+
function Be(e, t) {
|
|
1210
|
+
return M | (e ? je : 0) | (t ? Me : 0);
|
|
1210
1211
|
}
|
|
1211
|
-
var
|
|
1212
|
-
this.options = e =
|
|
1212
|
+
var Ve = 0, He = 1, P = 2, Ue = 3, We = 4, Ge = 5, F = function(e, t, n) {
|
|
1213
|
+
this.options = e = Oe(e), this.sourceFile = e.sourceFile, this.keywords = A(oe[e.ecmaVersion >= 6 ? 6 : e.sourceType === "module" ? "5module" : 5]);
|
|
1213
1214
|
var r = "";
|
|
1214
|
-
e.allowReserved !== !0 && (r =
|
|
1215
|
-
var i = (r ? r + " " : "") +
|
|
1216
|
-
this.reservedWordsStrict =
|
|
1217
|
-
},
|
|
1215
|
+
e.allowReserved !== !0 && (r = ie[e.ecmaVersion >= 6 ? 6 : e.ecmaVersion === 5 ? 5 : 3], e.sourceType === "module" && (r += " await")), this.reservedWords = A(r);
|
|
1216
|
+
var i = (r ? r + " " : "") + ie.strict;
|
|
1217
|
+
this.reservedWordsStrict = A(i), this.reservedWordsStrictBind = A(i + " " + ie.strictBind), this.input = String(t), this.containsEsc = !1, this.pos = n || 0, this.curLine = 1, e.startLocation ? (this.lineStart = this.pos - e.startLocation.column, this.curLine = e.startLocation.line) : n ? (this.lineStart = this.input.lastIndexOf("\n", n - 1) + 1, this.options.locations && (this.curLine = this.input.slice(0, this.lineStart).split(O).length)) : this.lineStart = 0, this.type = D.eof, this.value = null, this.start = this.end = this.pos, this.startLoc = this.endLoc = this.curPosition(), this.lastTokEndLoc = this.lastTokStartLoc = null, this.lastTokStart = this.lastTokEnd = this.pos, this.context = this.initialContext(), this.exprAllowed = !0, this.inModule = e.sourceType === "module", this.strict = this.inModule || e.strict === !0 || this.strictDirective(this.pos), this.potentialArrowAt = -1, this.potentialArrowInForAwait = !1, this.yieldPos = this.awaitPos = this.awaitIdentPos = 0, this.labels = [], this.undefinedExports = Object.create(null), this.pos === 0 && e.allowHashBang && this.input.slice(0, 2) === "#!" && this.skipLineComment(2), this.scopeStack = [], this.enterScope(this.options.sourceType === "commonjs" ? M : Ae), this.regexpState = null, this.privateNameStack = [];
|
|
1218
|
+
}, I = {
|
|
1218
1219
|
inFunction: { configurable: !0 },
|
|
1219
1220
|
inGenerator: { configurable: !0 },
|
|
1220
1221
|
inAsync: { configurable: !0 },
|
|
@@ -1227,120 +1228,120 @@ var Re = 0, ze = 1, N = 2, Be = 3, Ve = 4, He = 5, P = function(e, t, n) {
|
|
|
1227
1228
|
allowUsing: { configurable: !0 },
|
|
1228
1229
|
inClassStaticBlock: { configurable: !0 }
|
|
1229
1230
|
};
|
|
1230
|
-
|
|
1231
|
+
F.prototype.parse = function() {
|
|
1231
1232
|
var e = this, t = this.options.program || this.startNode();
|
|
1232
1233
|
return this.nextToken(), this.catchStackOverflow(function() {
|
|
1233
1234
|
return e.parseTopLevel(t);
|
|
1234
1235
|
});
|
|
1235
|
-
},
|
|
1236
|
+
}, I.inFunction.get = function() {
|
|
1236
1237
|
return (this.currentVarScope().flags & M) > 0;
|
|
1237
|
-
},
|
|
1238
|
-
return (this.currentVarScope().flags &
|
|
1239
|
-
},
|
|
1240
|
-
return (this.currentVarScope().flags &
|
|
1241
|
-
},
|
|
1238
|
+
}, I.inGenerator.get = function() {
|
|
1239
|
+
return (this.currentVarScope().flags & Me) > 0;
|
|
1240
|
+
}, I.inAsync.get = function() {
|
|
1241
|
+
return (this.currentVarScope().flags & je) > 0;
|
|
1242
|
+
}, I.canAwait.get = function() {
|
|
1242
1243
|
for (var e = this.scopeStack.length - 1; e >= 0; e--) {
|
|
1243
1244
|
var t = this.scopeStack[e].flags;
|
|
1244
|
-
if (t & (
|
|
1245
|
-
if (t & M) return (t &
|
|
1245
|
+
if (t & (N | Le)) return !1;
|
|
1246
|
+
if (t & M) return (t & je) > 0;
|
|
1246
1247
|
}
|
|
1247
1248
|
return this.inModule && this.options.ecmaVersion >= 13 || this.options.allowAwaitOutsideFunction;
|
|
1248
|
-
},
|
|
1249
|
-
return !!(this.inFunction || this.options.allowReturnOutsideFunction && this.currentVarScope().flags &
|
|
1250
|
-
},
|
|
1251
|
-
return (this.currentThisScope().flags &
|
|
1252
|
-
},
|
|
1253
|
-
return (this.currentThisScope().flags &
|
|
1254
|
-
},
|
|
1249
|
+
}, I.allowReturn.get = function() {
|
|
1250
|
+
return !!(this.inFunction || this.options.allowReturnOutsideFunction && this.currentVarScope().flags & Ae);
|
|
1251
|
+
}, I.allowSuper.get = function() {
|
|
1252
|
+
return (this.currentThisScope().flags & Fe) > 0 || this.options.allowSuperOutsideMethod;
|
|
1253
|
+
}, I.allowDirectSuper.get = function() {
|
|
1254
|
+
return (this.currentThisScope().flags & Ie) > 0;
|
|
1255
|
+
}, I.treatFunctionsAsVar.get = function() {
|
|
1255
1256
|
return this.treatFunctionsAsVarInScope(this.currentScope());
|
|
1256
|
-
},
|
|
1257
|
+
}, I.allowNewDotTarget.get = function() {
|
|
1257
1258
|
for (var e = this.scopeStack.length - 1; e >= 0; e--) {
|
|
1258
1259
|
var t = this.scopeStack[e].flags;
|
|
1259
|
-
if (t & (
|
|
1260
|
+
if (t & (N | Le) || t & M && !(t & Ne)) return !0;
|
|
1260
1261
|
}
|
|
1261
1262
|
return !1;
|
|
1262
|
-
},
|
|
1263
|
+
}, I.allowUsing.get = function() {
|
|
1263
1264
|
var e = this.currentScope().flags;
|
|
1264
|
-
return !(e &
|
|
1265
|
-
},
|
|
1266
|
-
return (this.currentVarScope().flags &
|
|
1267
|
-
},
|
|
1265
|
+
return !(e & Re || !this.inModule && e & Ae);
|
|
1266
|
+
}, I.inClassStaticBlock.get = function() {
|
|
1267
|
+
return (this.currentVarScope().flags & N) > 0;
|
|
1268
|
+
}, F.extend = function() {
|
|
1268
1269
|
for (var e = [], t = arguments.length; t--;) e[t] = arguments[t];
|
|
1269
1270
|
for (var n = this, r = 0; r < e.length; r++) n = e[r](n);
|
|
1270
1271
|
return n;
|
|
1271
|
-
},
|
|
1272
|
+
}, F.parse = function(e, t) {
|
|
1272
1273
|
return new this(t, e).parse();
|
|
1273
|
-
},
|
|
1274
|
+
}, F.parseExpressionAt = function(e, t, n) {
|
|
1274
1275
|
var r = new this(n, e, t);
|
|
1275
1276
|
return r.nextToken(), r.parseExpression();
|
|
1276
|
-
},
|
|
1277
|
+
}, F.tokenizer = function(e, t) {
|
|
1277
1278
|
return new this(t, e);
|
|
1278
|
-
}, Object.defineProperties(
|
|
1279
|
-
var
|
|
1280
|
-
|
|
1279
|
+
}, Object.defineProperties(F.prototype, I);
|
|
1280
|
+
var L = F.prototype, Ke = /^(?:'((?:\\[^]|[^'\\])*?)'|"((?:\\[^]|[^"\\])*?)")/;
|
|
1281
|
+
L.strictDirective = function(e) {
|
|
1281
1282
|
if (this.options.ecmaVersion < 5) return !1;
|
|
1282
1283
|
for (;;) {
|
|
1283
|
-
|
|
1284
|
-
var t =
|
|
1284
|
+
k.lastIndex = e, e += k.exec(this.input)[0].length;
|
|
1285
|
+
var t = Ke.exec(this.input.slice(e));
|
|
1285
1286
|
if (!t) return !1;
|
|
1286
1287
|
if ((t[1] || t[2]) === "use strict") {
|
|
1287
|
-
|
|
1288
|
-
var n =
|
|
1289
|
-
return i === ";" || i === "}" ||
|
|
1288
|
+
k.lastIndex = e + t[0].length;
|
|
1289
|
+
var n = k.exec(this.input), r = n.index + n[0].length, i = this.input.charAt(r);
|
|
1290
|
+
return i === ";" || i === "}" || O.test(n[0]) && !(/[(`.[+\-/*%<>=,?^&]/.test(i) || i === "!" && this.input.charAt(r + 1) === "=");
|
|
1290
1291
|
}
|
|
1291
|
-
e += t[0].length,
|
|
1292
|
+
e += t[0].length, k.lastIndex = e, e += k.exec(this.input)[0].length, this.input[e] === ";" && e++;
|
|
1292
1293
|
}
|
|
1293
|
-
},
|
|
1294
|
-
return this.type === e
|
|
1295
|
-
},
|
|
1296
|
-
return this.type ===
|
|
1297
|
-
},
|
|
1294
|
+
}, L.eat = function(e) {
|
|
1295
|
+
return this.type === e && (this.next(), !0);
|
|
1296
|
+
}, L.isContextual = function(e) {
|
|
1297
|
+
return this.type === D.name && this.value === e && !this.containsEsc;
|
|
1298
|
+
}, L.eatContextual = function(e) {
|
|
1298
1299
|
return this.isContextual(e) ? (this.next(), !0) : !1;
|
|
1299
|
-
},
|
|
1300
|
+
}, L.catchStackOverflow = function(e) {
|
|
1300
1301
|
try {
|
|
1301
1302
|
return e();
|
|
1302
1303
|
} catch (e) {
|
|
1303
1304
|
if (e instanceof Error && (/\bstack\b.*\b(exceeded|overflow)\b/i.test(e.message) || /\btoo much recursion\b/i.test(e.message))) this.raise(this.start, "Not enough stack space to parse input");
|
|
1304
1305
|
else throw e;
|
|
1305
1306
|
}
|
|
1306
|
-
},
|
|
1307
|
+
}, L.expectContextual = function(e) {
|
|
1307
1308
|
this.eatContextual(e) || this.unexpected();
|
|
1308
|
-
},
|
|
1309
|
-
return this.type ===
|
|
1310
|
-
},
|
|
1309
|
+
}, L.canInsertSemicolon = function() {
|
|
1310
|
+
return this.type === D.eof || this.type === D.braceR || O.test(this.input.slice(this.lastTokEnd, this.start));
|
|
1311
|
+
}, L.insertSemicolon = function() {
|
|
1311
1312
|
if (this.canInsertSemicolon()) return this.options.onInsertedSemicolon && this.options.onInsertedSemicolon(this.lastTokEnd, this.lastTokEndLoc), !0;
|
|
1312
|
-
},
|
|
1313
|
-
!this.eat(
|
|
1314
|
-
},
|
|
1313
|
+
}, L.semicolon = function() {
|
|
1314
|
+
!this.eat(D.semi) && !this.insertSemicolon() && this.unexpected();
|
|
1315
|
+
}, L.afterTrailingComma = function(e, t) {
|
|
1315
1316
|
if (this.type === e) return this.options.onTrailingComma && this.options.onTrailingComma(this.lastTokStart, this.lastTokStartLoc), t || this.next(), !0;
|
|
1316
|
-
},
|
|
1317
|
+
}, L.expect = function(e) {
|
|
1317
1318
|
this.eat(e) || this.unexpected();
|
|
1318
|
-
},
|
|
1319
|
+
}, L.unexpected = function(e) {
|
|
1319
1320
|
this.raise(e ?? this.start, "Unexpected token");
|
|
1320
1321
|
};
|
|
1321
|
-
var
|
|
1322
|
+
var qe = function() {
|
|
1322
1323
|
this.shorthandAssign = this.trailingComma = this.parenthesizedAssign = this.parenthesizedBind = this.doubleProto = -1;
|
|
1323
1324
|
};
|
|
1324
|
-
|
|
1325
|
+
L.checkPatternErrors = function(e, t) {
|
|
1325
1326
|
if (e) {
|
|
1326
1327
|
e.trailingComma > -1 && this.raiseRecoverable(e.trailingComma, "Comma is not permitted after the rest element");
|
|
1327
1328
|
var n = t ? e.parenthesizedAssign : e.parenthesizedBind;
|
|
1328
1329
|
n > -1 && this.raiseRecoverable(n, t ? "Assigning to rvalue" : "Parenthesized pattern");
|
|
1329
1330
|
}
|
|
1330
|
-
},
|
|
1331
|
+
}, L.checkExpressionErrors = function(e, t) {
|
|
1331
1332
|
if (!e) return !1;
|
|
1332
1333
|
var n = e.shorthandAssign, r = e.doubleProto;
|
|
1333
1334
|
if (!t) return n >= 0 || r >= 0;
|
|
1334
1335
|
n >= 0 && this.raise(n, "Shorthand property assignments are valid only in destructuring patterns"), r >= 0 && this.raiseRecoverable(r, "Redefinition of __proto__ property");
|
|
1335
|
-
},
|
|
1336
|
+
}, L.checkYieldAwaitInDefaultParams = function() {
|
|
1336
1337
|
this.yieldPos && (!this.awaitPos || this.yieldPos < this.awaitPos) && this.raise(this.yieldPos, "Yield expression cannot be a default value"), this.awaitPos && this.raise(this.awaitPos, "Await expression cannot be a default value");
|
|
1337
|
-
},
|
|
1338
|
+
}, L.isSimpleAssignTarget = function(e) {
|
|
1338
1339
|
return e.type === "ParenthesizedExpression" ? this.isSimpleAssignTarget(e.expression) : e.type === "Identifier" || e.type === "MemberExpression";
|
|
1339
1340
|
};
|
|
1340
|
-
var
|
|
1341
|
-
|
|
1341
|
+
var R = F.prototype;
|
|
1342
|
+
R.parseTopLevel = function(e) {
|
|
1342
1343
|
var t = Object.create(null);
|
|
1343
|
-
for (e.body ||= []; this.type !==
|
|
1344
|
+
for (e.body ||= []; this.type !== D.eof;) {
|
|
1344
1345
|
var n = this.parseStatement(null, !0, t);
|
|
1345
1346
|
e.body.push(n);
|
|
1346
1347
|
}
|
|
@@ -1350,114 +1351,114 @@ L.parseTopLevel = function(e) {
|
|
|
1350
1351
|
}
|
|
1351
1352
|
return this.adaptDirectivePrologue(e.body), this.next(), e.sourceType = this.options.sourceType === "commonjs" ? "script" : this.options.sourceType, this.finishNode(e, "Program");
|
|
1352
1353
|
};
|
|
1353
|
-
var
|
|
1354
|
-
|
|
1354
|
+
var Je = { kind: "loop" }, Ye = { kind: "switch" };
|
|
1355
|
+
R.isLet = function(e) {
|
|
1355
1356
|
if (this.options.ecmaVersion < 6 || !this.isContextual("let")) return !1;
|
|
1356
|
-
|
|
1357
|
-
var t =
|
|
1357
|
+
k.lastIndex = this.pos;
|
|
1358
|
+
var t = k.exec(this.input), n = this.pos + t[0].length, r = this.fullCharCodeAt(n);
|
|
1358
1359
|
if (r === 91 || r === 92) return !0;
|
|
1359
1360
|
if (e) return !1;
|
|
1360
1361
|
if (r === 123) return !0;
|
|
1361
|
-
if (
|
|
1362
|
+
if (b(r)) {
|
|
1362
1363
|
var i = n;
|
|
1363
1364
|
do
|
|
1364
1365
|
n += r <= 65535 ? 1 : 2;
|
|
1365
|
-
while (
|
|
1366
|
+
while (x(r = this.fullCharCodeAt(n)));
|
|
1366
1367
|
if (r === 92) return !0;
|
|
1367
1368
|
var a = this.input.slice(i, n);
|
|
1368
|
-
if (!
|
|
1369
|
+
if (!se.test(a)) return !0;
|
|
1369
1370
|
}
|
|
1370
1371
|
return !1;
|
|
1371
|
-
},
|
|
1372
|
+
}, R.isAsyncFunction = function() {
|
|
1372
1373
|
if (this.options.ecmaVersion < 8 || !this.isContextual("async")) return !1;
|
|
1373
|
-
|
|
1374
|
-
var e =
|
|
1375
|
-
return !
|
|
1376
|
-
},
|
|
1374
|
+
k.lastIndex = this.pos;
|
|
1375
|
+
var e = k.exec(this.input), t = this.pos + e[0].length, n;
|
|
1376
|
+
return !O.test(this.input.slice(this.pos, t)) && this.input.slice(t, t + 8) === "function" && (t + 8 === this.input.length || !(x(n = this.fullCharCodeAt(t + 8)) || n === 92));
|
|
1377
|
+
}, R.isUsingKeyword = function(e, t) {
|
|
1377
1378
|
if (this.options.ecmaVersion < 17 || !this.isContextual(e ? "await" : "using")) return !1;
|
|
1378
|
-
|
|
1379
|
-
var n =
|
|
1380
|
-
if (
|
|
1379
|
+
k.lastIndex = this.pos;
|
|
1380
|
+
var n = k.exec(this.input), r = this.pos + n[0].length;
|
|
1381
|
+
if (O.test(this.input.slice(this.pos, r))) return !1;
|
|
1381
1382
|
if (e) {
|
|
1382
1383
|
var i = r + 5, a;
|
|
1383
|
-
if (this.input.slice(r, i) !== "using" || i === this.input.length ||
|
|
1384
|
-
|
|
1385
|
-
var o =
|
|
1386
|
-
if (r = i + o[0].length, o &&
|
|
1384
|
+
if (this.input.slice(r, i) !== "using" || i === this.input.length || x(a = this.fullCharCodeAt(i)) || a === 92) return !1;
|
|
1385
|
+
k.lastIndex = i;
|
|
1386
|
+
var o = k.exec(this.input);
|
|
1387
|
+
if (r = i + o[0].length, o && O.test(this.input.slice(i, r))) return !1;
|
|
1387
1388
|
}
|
|
1388
1389
|
var s = this.fullCharCodeAt(r);
|
|
1389
|
-
if (!
|
|
1390
|
+
if (!b(s) && s !== 92) return !1;
|
|
1390
1391
|
var c = r;
|
|
1391
1392
|
do
|
|
1392
1393
|
r += s <= 65535 ? 1 : 2;
|
|
1393
|
-
while (
|
|
1394
|
+
while (x(s = this.fullCharCodeAt(r)));
|
|
1394
1395
|
if (s === 92) return !0;
|
|
1395
1396
|
var l = this.input.slice(c, r);
|
|
1396
|
-
if (
|
|
1397
|
+
if (se.test(l)) return !1;
|
|
1397
1398
|
if (t && !e && l === "of") {
|
|
1398
|
-
|
|
1399
|
-
var u =
|
|
1399
|
+
k.lastIndex = r;
|
|
1400
|
+
var u = k.exec(this.input);
|
|
1400
1401
|
if (r += u[0].length, this.input.charCodeAt(r) !== 61 || (s = this.input.charCodeAt(r + 1)) === 61 || s === 62) return !1;
|
|
1401
1402
|
}
|
|
1402
1403
|
return !0;
|
|
1403
|
-
},
|
|
1404
|
+
}, R.isAwaitUsing = function(e) {
|
|
1404
1405
|
return this.isUsingKeyword(!0, e);
|
|
1405
|
-
},
|
|
1406
|
+
}, R.isUsing = function(e) {
|
|
1406
1407
|
return this.isUsingKeyword(!1, e);
|
|
1407
|
-
},
|
|
1408
|
+
}, R.parseStatement = function(e, t, n) {
|
|
1408
1409
|
var r = this.type, i = this.startNode(), a;
|
|
1409
|
-
switch (this.isLet(e) && (r =
|
|
1410
|
-
case
|
|
1411
|
-
case
|
|
1412
|
-
case
|
|
1413
|
-
case
|
|
1414
|
-
case
|
|
1415
|
-
case
|
|
1416
|
-
case
|
|
1417
|
-
case
|
|
1418
|
-
case
|
|
1419
|
-
case
|
|
1420
|
-
case
|
|
1421
|
-
case
|
|
1422
|
-
case
|
|
1423
|
-
case
|
|
1424
|
-
case
|
|
1425
|
-
case
|
|
1426
|
-
case
|
|
1427
|
-
case
|
|
1428
|
-
case
|
|
1429
|
-
case
|
|
1430
|
-
if (this.options.ecmaVersion > 10 && r ===
|
|
1431
|
-
|
|
1432
|
-
var o =
|
|
1410
|
+
switch (this.isLet(e) && (r = D._var, a = "let"), r) {
|
|
1411
|
+
case D._break:
|
|
1412
|
+
case D._continue: return this.parseBreakContinueStatement(i, r.keyword);
|
|
1413
|
+
case D._debugger: return this.parseDebuggerStatement(i);
|
|
1414
|
+
case D._do: return this.parseDoStatement(i);
|
|
1415
|
+
case D._for: return this.parseForStatement(i);
|
|
1416
|
+
case D._function: return e && (this.strict || e !== "if" && e !== "label") && this.options.ecmaVersion >= 6 && this.unexpected(), this.parseFunctionStatement(i, !1, !e);
|
|
1417
|
+
case D._class: return e && this.unexpected(), this.parseClass(i, !0);
|
|
1418
|
+
case D._if: return this.parseIfStatement(i);
|
|
1419
|
+
case D._return: return this.parseReturnStatement(i);
|
|
1420
|
+
case D._switch: return this.parseSwitchStatement(i);
|
|
1421
|
+
case D._throw: return this.parseThrowStatement(i);
|
|
1422
|
+
case D._try: return this.parseTryStatement(i);
|
|
1423
|
+
case D._const:
|
|
1424
|
+
case D._var: return a ||= this.value, e && a !== "var" && this.unexpected(), this.parseVarStatement(i, a);
|
|
1425
|
+
case D._while: return this.parseWhileStatement(i);
|
|
1426
|
+
case D._with: return this.parseWithStatement(i);
|
|
1427
|
+
case D.braceL: return this.parseBlock(!0, i);
|
|
1428
|
+
case D.semi: return this.parseEmptyStatement(i);
|
|
1429
|
+
case D._export:
|
|
1430
|
+
case D._import:
|
|
1431
|
+
if (this.options.ecmaVersion > 10 && r === D._import) {
|
|
1432
|
+
k.lastIndex = this.pos;
|
|
1433
|
+
var o = k.exec(this.input), s = this.pos + o[0].length, c = this.input.charCodeAt(s);
|
|
1433
1434
|
if (c === 40 || c === 46) return this.parseExpressionStatement(i, this.parseExpression());
|
|
1434
1435
|
}
|
|
1435
|
-
return this.options.allowImportExportEverywhere || (t || this.raise(this.start, "'import' and 'export' may only appear at the top level"), this.inModule || this.raise(this.start, "'import' and 'export' may appear only with 'sourceType: module'")), r ===
|
|
1436
|
+
return this.options.allowImportExportEverywhere || (t || this.raise(this.start, "'import' and 'export' may only appear at the top level"), this.inModule || this.raise(this.start, "'import' and 'export' may appear only with 'sourceType: module'")), r === D._import ? this.parseImport(i) : this.parseExport(i, n);
|
|
1436
1437
|
default:
|
|
1437
1438
|
if (this.isAsyncFunction()) return e && this.unexpected(), this.next(), this.parseFunctionStatement(i, !0, !e);
|
|
1438
1439
|
var l = this.isAwaitUsing(!1) ? "await using" : this.isUsing(!1) ? "using" : null;
|
|
1439
1440
|
if (l) return this.allowUsing || this.raise(this.start, "Using declaration cannot appear in the top level when source type is `script` or in the bare case statement"), e && this.raise(this.start, "Using declaration is not allowed in single-statement positions"), l === "await using" && (this.canAwait || this.raise(this.start, "Await using cannot appear outside of async function"), this.next()), this.next(), this.parseVar(i, !1, l), this.semicolon(), this.finishNode(i, "VariableDeclaration");
|
|
1440
1441
|
var u = this.value, d = this.parseExpression();
|
|
1441
|
-
return r ===
|
|
1442
|
+
return r === D.name && d.type === "Identifier" && this.eat(D.colon) ? this.parseLabeledStatement(i, u, d, e) : this.parseExpressionStatement(i, d);
|
|
1442
1443
|
}
|
|
1443
|
-
},
|
|
1444
|
+
}, R.parseBreakContinueStatement = function(e, t) {
|
|
1444
1445
|
var n = t === "break";
|
|
1445
|
-
this.next(), this.eat(
|
|
1446
|
+
this.next(), this.eat(D.semi) || this.insertSemicolon() ? e.label = null : this.type === D.name ? (e.label = this.parseIdent(), this.semicolon()) : this.unexpected();
|
|
1446
1447
|
for (var r = 0; r < this.labels.length; ++r) {
|
|
1447
1448
|
var i = this.labels[r];
|
|
1448
1449
|
if ((e.label == null || i.name === e.label.name) && (i.kind != null && (n || i.kind === "loop") || e.label && n)) break;
|
|
1449
1450
|
}
|
|
1450
1451
|
return r === this.labels.length && this.raise(e.start, "Unsyntactic " + t), this.finishNode(e, n ? "BreakStatement" : "ContinueStatement");
|
|
1451
|
-
},
|
|
1452
|
+
}, R.parseDebuggerStatement = function(e) {
|
|
1452
1453
|
return this.next(), this.semicolon(), this.finishNode(e, "DebuggerStatement");
|
|
1453
|
-
},
|
|
1454
|
-
return this.next(), this.labels.push(
|
|
1455
|
-
},
|
|
1454
|
+
}, R.parseDoStatement = function(e) {
|
|
1455
|
+
return this.next(), this.labels.push(Je), e.body = this.parseStatement("do"), this.labels.pop(), this.expect(D._while), e.test = this.parseParenExpression(), this.options.ecmaVersion >= 6 ? this.eat(D.semi) : this.semicolon(), this.finishNode(e, "DoWhileStatement");
|
|
1456
|
+
}, R.parseForStatement = function(e) {
|
|
1456
1457
|
this.next();
|
|
1457
1458
|
var t = this.options.ecmaVersion >= 9 && this.canAwait && this.eatContextual("await") ? this.lastTokStart : -1;
|
|
1458
|
-
if (this.labels.push(
|
|
1459
|
+
if (this.labels.push(Je), this.enterScope(0), this.expect(D.parenL), this.type === D.semi) return t > -1 && this.unexpected(t), this.parseFor(e, null);
|
|
1459
1460
|
var n = this.isLet();
|
|
1460
|
-
if (this.type ===
|
|
1461
|
+
if (this.type === D._var || this.type === D._const || n) {
|
|
1461
1462
|
var r = this.startNode(), i = n ? "let" : this.value;
|
|
1462
1463
|
return this.next(), this.parseVar(r, !0, i), this.finishNode(r, "VariableDeclaration"), this.parseForAfterInit(e, r, t);
|
|
1463
1464
|
}
|
|
@@ -1466,47 +1467,47 @@ L.isLet = function(e) {
|
|
|
1466
1467
|
var c = this.startNode();
|
|
1467
1468
|
return this.next(), s === "await using" && (this.canAwait || this.raise(this.start, "Await using cannot appear outside of async function"), this.next()), this.parseVar(c, !0, s), this.finishNode(c, "VariableDeclaration"), this.parseForAfterInit(e, c, t);
|
|
1468
1469
|
}
|
|
1469
|
-
var l = this.containsEsc, u = new
|
|
1470
|
-
return this.type ===
|
|
1471
|
-
},
|
|
1472
|
-
return (this.type ===
|
|
1473
|
-
},
|
|
1474
|
-
return this.next(), this.parseFunction(e,
|
|
1475
|
-
},
|
|
1476
|
-
return this.next(), e.test = this.parseParenExpression(), e.consequent = this.parseStatement("if"), e.alternate = this.eat(
|
|
1477
|
-
},
|
|
1478
|
-
return this.allowReturn || this.raise(this.start, "'return' outside of function"), this.next(), this.eat(
|
|
1479
|
-
},
|
|
1480
|
-
this.next(), e.discriminant = this.parseParenExpression(), e.cases = [], this.expect(
|
|
1481
|
-
for (var t, n = !1; this.type !==
|
|
1482
|
-
var r = this.type ===
|
|
1483
|
-
t && this.finishNode(t, "SwitchCase"), e.cases.push(t = this.startNode()), t.consequent = [], this.next(), r ? t.test = this.parseExpression() : (n && this.raiseRecoverable(this.lastTokStart, "Multiple default clauses"), n = !0, t.test = null), this.expect(
|
|
1470
|
+
var l = this.containsEsc, u = new qe(), d = this.start, f = t > -1 ? this.parseExprSubscripts(u, "await") : this.parseExpression(!0, u);
|
|
1471
|
+
return this.type === D._in || (o = this.options.ecmaVersion >= 6 && this.isContextual("of")) ? (t > -1 ? (this.type === D._in && this.unexpected(t), e.await = !0) : o && this.options.ecmaVersion >= 8 && (f.start === d && !l && f.type === "Identifier" && f.name === "async" ? this.unexpected() : this.options.ecmaVersion >= 9 && (e.await = !1)), a && o && this.raise(f.start, "The left-hand side of a for-of loop may not start with 'let'."), this.toAssignable(f, !1, u), this.checkLValPattern(f), this.parseForIn(e, f)) : (this.checkExpressionErrors(u, !0), t > -1 && this.unexpected(t), this.parseFor(e, f));
|
|
1472
|
+
}, R.parseForAfterInit = function(e, t, n) {
|
|
1473
|
+
return (this.type === D._in || this.options.ecmaVersion >= 6 && this.isContextual("of")) && t.declarations.length === 1 ? (this.type === D._in ? ((t.kind === "using" || t.kind === "await using") && !t.declarations[0].init && this.raise(this.start, "Using declaration is not allowed in for-in loops"), this.options.ecmaVersion >= 9 && n > -1 && this.unexpected(n)) : this.options.ecmaVersion >= 9 && (e.await = n > -1), this.parseForIn(e, t)) : (n > -1 && this.unexpected(n), this.parseFor(e, t));
|
|
1474
|
+
}, R.parseFunctionStatement = function(e, t, n) {
|
|
1475
|
+
return this.next(), this.parseFunction(e, Ze | (n ? 0 : Qe), !1, t);
|
|
1476
|
+
}, R.parseIfStatement = function(e) {
|
|
1477
|
+
return this.next(), e.test = this.parseParenExpression(), e.consequent = this.parseStatement("if"), e.alternate = this.eat(D._else) ? this.parseStatement("if") : null, this.finishNode(e, "IfStatement");
|
|
1478
|
+
}, R.parseReturnStatement = function(e) {
|
|
1479
|
+
return this.allowReturn || this.raise(this.start, "'return' outside of function"), this.next(), this.eat(D.semi) || this.insertSemicolon() ? e.argument = null : (e.argument = this.parseExpression(), this.semicolon()), this.finishNode(e, "ReturnStatement");
|
|
1480
|
+
}, R.parseSwitchStatement = function(e) {
|
|
1481
|
+
this.next(), e.discriminant = this.parseParenExpression(), e.cases = [], this.expect(D.braceL), this.labels.push(Ye), this.enterScope(Re);
|
|
1482
|
+
for (var t, n = !1; this.type !== D.braceR;) if (this.type === D._case || this.type === D._default) {
|
|
1483
|
+
var r = this.type === D._case;
|
|
1484
|
+
t && this.finishNode(t, "SwitchCase"), e.cases.push(t = this.startNode()), t.consequent = [], this.next(), r ? t.test = this.parseExpression() : (n && this.raiseRecoverable(this.lastTokStart, "Multiple default clauses"), n = !0, t.test = null), this.expect(D.colon);
|
|
1484
1485
|
} else t || this.unexpected(), t.consequent.push(this.parseStatement(null));
|
|
1485
1486
|
return this.exitScope(), t && this.finishNode(t, "SwitchCase"), this.next(), this.labels.pop(), this.finishNode(e, "SwitchStatement");
|
|
1486
|
-
},
|
|
1487
|
-
return this.next(),
|
|
1487
|
+
}, R.parseThrowStatement = function(e) {
|
|
1488
|
+
return this.next(), O.test(this.input.slice(this.lastTokEnd, this.start)) && this.raise(this.lastTokEnd, "Illegal newline after throw"), e.argument = this.parseExpression(), this.semicolon(), this.finishNode(e, "ThrowStatement");
|
|
1488
1489
|
};
|
|
1489
|
-
var
|
|
1490
|
-
|
|
1490
|
+
var Xe = [];
|
|
1491
|
+
R.parseCatchClauseParam = function() {
|
|
1491
1492
|
var e = this.parseBindingAtom(), t = e.type === "Identifier";
|
|
1492
|
-
return this.enterScope(t ?
|
|
1493
|
-
},
|
|
1494
|
-
if (this.next(), e.block = this.parseBlock(), e.handler = null, this.type ===
|
|
1493
|
+
return this.enterScope(t ? Pe : 0), this.checkLValPattern(e, t ? We : P), this.expect(D.parenR), e;
|
|
1494
|
+
}, R.parseTryStatement = function(e) {
|
|
1495
|
+
if (this.next(), e.block = this.parseBlock(), e.handler = null, this.type === D._catch) {
|
|
1495
1496
|
var t = this.startNode();
|
|
1496
|
-
this.next(), this.eat(
|
|
1497
|
+
this.next(), this.eat(D.parenL) ? t.param = this.parseCatchClauseParam() : (this.options.ecmaVersion < 10 && this.unexpected(), t.param = null, this.enterScope(0)), t.body = this.parseBlock(!1), this.exitScope(), e.handler = this.finishNode(t, "CatchClause");
|
|
1497
1498
|
}
|
|
1498
|
-
return e.finalizer = this.eat(
|
|
1499
|
-
},
|
|
1499
|
+
return e.finalizer = this.eat(D._finally) ? this.parseBlock() : null, !e.handler && !e.finalizer && this.raise(e.start, "Missing catch or finally clause"), this.finishNode(e, "TryStatement");
|
|
1500
|
+
}, R.parseVarStatement = function(e, t, n) {
|
|
1500
1501
|
return this.next(), this.parseVar(e, !1, t, n), this.semicolon(), this.finishNode(e, "VariableDeclaration");
|
|
1501
|
-
},
|
|
1502
|
-
return this.next(), e.test = this.parseParenExpression(), this.labels.push(
|
|
1503
|
-
},
|
|
1502
|
+
}, R.parseWhileStatement = function(e) {
|
|
1503
|
+
return this.next(), e.test = this.parseParenExpression(), this.labels.push(Je), e.body = this.parseStatement("while"), this.labels.pop(), this.finishNode(e, "WhileStatement");
|
|
1504
|
+
}, R.parseWithStatement = function(e) {
|
|
1504
1505
|
return this.strict && this.raise(this.start, "'with' in strict mode"), this.next(), e.object = this.parseParenExpression(), e.body = this.parseStatement("with"), this.finishNode(e, "WithStatement");
|
|
1505
|
-
},
|
|
1506
|
+
}, R.parseEmptyStatement = function(e) {
|
|
1506
1507
|
return this.next(), this.finishNode(e, "EmptyStatement");
|
|
1507
|
-
},
|
|
1508
|
+
}, R.parseLabeledStatement = function(e, t, n, r) {
|
|
1508
1509
|
for (var i = 0, a = this.labels; i < a.length; i += 1) a[i].name === t && this.raise(n.start, "Label '" + t + "' is already declared");
|
|
1509
|
-
for (var o = this.type.isLoop ? "loop" : this.type ===
|
|
1510
|
+
for (var o = this.type.isLoop ? "loop" : this.type === D._switch ? "switch" : null, s = this.labels.length - 1; s >= 0; s--) {
|
|
1510
1511
|
var c = this.labels[s];
|
|
1511
1512
|
if (c.statementStart === e.start) c.statementStart = this.start, c.kind = o;
|
|
1512
1513
|
else break;
|
|
@@ -1516,113 +1517,113 @@ L.parseCatchClauseParam = function() {
|
|
|
1516
1517
|
kind: o,
|
|
1517
1518
|
statementStart: this.start
|
|
1518
1519
|
}), e.body = this.parseStatement(r ? r.indexOf("label") === -1 ? r + "label" : r : "label"), this.labels.pop(), e.label = n, this.finishNode(e, "LabeledStatement");
|
|
1519
|
-
},
|
|
1520
|
+
}, R.parseExpressionStatement = function(e, t) {
|
|
1520
1521
|
return e.expression = t, this.semicolon(), this.finishNode(e, "ExpressionStatement");
|
|
1521
|
-
},
|
|
1522
|
-
for (e === void 0 && (e = !0), t === void 0 && (t = this.startNode()), t.body = [], this.expect(
|
|
1522
|
+
}, R.parseBlock = function(e, t, n) {
|
|
1523
|
+
for (e === void 0 && (e = !0), t === void 0 && (t = this.startNode()), t.body = [], this.expect(D.braceL), e && this.enterScope(0); this.type !== D.braceR;) {
|
|
1523
1524
|
var r = this.parseStatement(null);
|
|
1524
1525
|
t.body.push(r);
|
|
1525
1526
|
}
|
|
1526
1527
|
return n && (this.strict = !1), this.next(), e && this.exitScope(), this.finishNode(t, "BlockStatement");
|
|
1527
|
-
},
|
|
1528
|
-
return e.init = t, this.expect(
|
|
1529
|
-
},
|
|
1530
|
-
var n = this.type ===
|
|
1531
|
-
return this.next(), t.type === "VariableDeclaration" && t.declarations[0].init != null && (!n || this.options.ecmaVersion < 8 || this.strict || t.kind !== "var" || t.declarations[0].id.type !== "Identifier") && this.raise(t.start, (n ? "for-in" : "for-of") + " loop variable declaration may not have an initializer"), e.left = t, e.right = n ? this.parseExpression() : this.parseMaybeAssign(), this.expect(
|
|
1532
|
-
},
|
|
1528
|
+
}, R.parseFor = function(e, t) {
|
|
1529
|
+
return e.init = t, this.expect(D.semi), e.test = this.type === D.semi ? null : this.parseExpression(), this.expect(D.semi), e.update = this.type === D.parenR ? null : this.parseExpression(), this.expect(D.parenR), e.body = this.parseStatement("for"), this.exitScope(), this.labels.pop(), this.finishNode(e, "ForStatement");
|
|
1530
|
+
}, R.parseForIn = function(e, t) {
|
|
1531
|
+
var n = this.type === D._in;
|
|
1532
|
+
return this.next(), t.type === "VariableDeclaration" && t.declarations[0].init != null && (!n || this.options.ecmaVersion < 8 || this.strict || t.kind !== "var" || t.declarations[0].id.type !== "Identifier") && this.raise(t.start, (n ? "for-in" : "for-of") + " loop variable declaration may not have an initializer"), e.left = t, e.right = n ? this.parseExpression() : this.parseMaybeAssign(), this.expect(D.parenR), e.body = this.parseStatement("for"), this.exitScope(), this.labels.pop(), this.finishNode(e, n ? "ForInStatement" : "ForOfStatement");
|
|
1533
|
+
}, R.parseVar = function(e, t, n, r) {
|
|
1533
1534
|
for (e.declarations = [], e.kind = n;;) {
|
|
1534
1535
|
var i = this.startNode();
|
|
1535
|
-
if (this.parseVarId(i, n), this.eat(
|
|
1536
|
+
if (this.parseVarId(i, n), this.eat(D.eq) ? i.init = this.parseMaybeAssign(t) : !r && n === "const" && !(this.type === D._in || this.options.ecmaVersion >= 6 && this.isContextual("of")) ? this.unexpected() : !r && (n === "using" || n === "await using") && this.options.ecmaVersion >= 17 && this.type !== D._in && !this.isContextual("of") ? this.raise(this.lastTokEnd, "Missing initializer in " + n + " declaration") : !r && i.id.type !== "Identifier" && (!t || this.type !== D._in && !this.isContextual("of")) ? this.raise(this.lastTokEnd, "Complex binding patterns require an initialization value") : i.init = null, e.declarations.push(this.finishNode(i, "VariableDeclarator")), !this.eat(D.comma)) break;
|
|
1536
1537
|
}
|
|
1537
1538
|
return e;
|
|
1538
|
-
},
|
|
1539
|
-
e.id = t === "using" || t === "await using" ? this.parseIdent() : this.parseBindingAtom(), this.checkLValPattern(e.id, t === "var" ?
|
|
1539
|
+
}, R.parseVarId = function(e, t) {
|
|
1540
|
+
e.id = t === "using" || t === "await using" ? this.parseIdent() : this.parseBindingAtom(), this.checkLValPattern(e.id, t === "var" ? He : P, !1);
|
|
1540
1541
|
};
|
|
1541
|
-
var
|
|
1542
|
-
|
|
1543
|
-
this.initFunction(e), (this.options.ecmaVersion >= 9 || this.options.ecmaVersion >= 6 && !r) && (this.type ===
|
|
1542
|
+
var Ze = 1, Qe = 2, $e = 4;
|
|
1543
|
+
R.parseFunction = function(e, t, n, r, i) {
|
|
1544
|
+
this.initFunction(e), (this.options.ecmaVersion >= 9 || this.options.ecmaVersion >= 6 && !r) && (this.type === D.star && t & Qe && this.unexpected(), e.generator = this.eat(D.star)), this.options.ecmaVersion >= 8 && (e.async = !!r), t & Ze && (e.id = t & $e && this.type !== D.name ? null : this.parseIdent(), e.id && !(t & Qe) && this.checkLValSimple(e.id, this.strict || e.generator || e.async ? this.treatFunctionsAsVar ? He : P : Ue));
|
|
1544
1545
|
var a = this.yieldPos, o = this.awaitPos, s = this.awaitIdentPos;
|
|
1545
|
-
return this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, this.enterScope(
|
|
1546
|
-
},
|
|
1547
|
-
this.expect(
|
|
1548
|
-
},
|
|
1546
|
+
return this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, this.enterScope(Be(e.async, e.generator)), t & Ze || (e.id = this.type === D.name ? this.parseIdent() : null), this.parseFunctionParams(e), this.parseFunctionBody(e, n, !1, i), this.yieldPos = a, this.awaitPos = o, this.awaitIdentPos = s, this.finishNode(e, t & Ze ? "FunctionDeclaration" : "FunctionExpression");
|
|
1547
|
+
}, R.parseFunctionParams = function(e) {
|
|
1548
|
+
this.expect(D.parenL), e.params = this.parseBindingList(D.parenR, !1, this.options.ecmaVersion >= 8), this.checkYieldAwaitInDefaultParams();
|
|
1549
|
+
}, R.parseClass = function(e, t) {
|
|
1549
1550
|
this.next();
|
|
1550
1551
|
var n = this.strict;
|
|
1551
1552
|
this.strict = !0, this.parseClassId(e, t), this.parseClassSuper(e);
|
|
1552
1553
|
var r = this.enterClassBody(), i = this.startNode(), a = !1;
|
|
1553
|
-
for (i.body = [], this.expect(
|
|
1554
|
+
for (i.body = [], this.expect(D.braceL); this.type !== D.braceR;) {
|
|
1554
1555
|
var o = this.parseClassElement(e.superClass !== null);
|
|
1555
|
-
o && (i.body.push(o), o.type === "MethodDefinition" && o.kind === "constructor" ? (a && this.raiseRecoverable(o.start, "Duplicate constructor in the same class"), a = !0) : o.key && o.key.type === "PrivateIdentifier" &&
|
|
1556
|
+
o && (i.body.push(o), o.type === "MethodDefinition" && o.kind === "constructor" ? (a && this.raiseRecoverable(o.start, "Duplicate constructor in the same class"), a = !0) : o.key && o.key.type === "PrivateIdentifier" && et(r, o) && this.raiseRecoverable(o.key.start, "Identifier '#" + o.key.name + "' has already been declared"));
|
|
1556
1557
|
}
|
|
1557
1558
|
return this.strict = n, this.next(), e.body = this.finishNode(i, "ClassBody"), this.exitClassBody(), this.finishNode(e, t ? "ClassDeclaration" : "ClassExpression");
|
|
1558
|
-
},
|
|
1559
|
-
if (this.eat(
|
|
1559
|
+
}, R.parseClassElement = function(e) {
|
|
1560
|
+
if (this.eat(D.semi)) return null;
|
|
1560
1561
|
var t = this.options.ecmaVersion, n = this.startNode(), r = "", i = !1, a = !1, o = "method", s = !1;
|
|
1561
1562
|
if (this.eatContextual("static")) {
|
|
1562
|
-
if (t >= 13 && this.eat(
|
|
1563
|
-
this.isClassElementNameStart() || this.type ===
|
|
1563
|
+
if (t >= 13 && this.eat(D.braceL)) return this.parseClassStaticBlock(n), n;
|
|
1564
|
+
this.isClassElementNameStart() || this.type === D.star ? s = !0 : r = "static";
|
|
1564
1565
|
}
|
|
1565
|
-
if (n.static = s, !r && t >= 8 && this.eatContextual("async") && ((this.isClassElementNameStart() || this.type ===
|
|
1566
|
+
if (n.static = s, !r && t >= 8 && this.eatContextual("async") && ((this.isClassElementNameStart() || this.type === D.star) && !this.canInsertSemicolon() ? a = !0 : r = "async"), !r && (t >= 9 || !a) && this.eat(D.star) && (i = !0), !r && !a && !i) {
|
|
1566
1567
|
var c = this.value;
|
|
1567
1568
|
(this.eatContextual("get") || this.eatContextual("set")) && (this.isClassElementNameStart() ? o = c : r = c);
|
|
1568
1569
|
}
|
|
1569
|
-
if (r ? (n.computed = !1, n.key = this.startNodeAt(this.lastTokStart, this.lastTokStartLoc), n.key.name = r, this.finishNode(n.key, "Identifier")) : this.parseClassElementName(n), t < 13 || this.type ===
|
|
1570
|
-
var l = !n.static &&
|
|
1570
|
+
if (r ? (n.computed = !1, n.key = this.startNodeAt(this.lastTokStart, this.lastTokStartLoc), n.key.name = r, this.finishNode(n.key, "Identifier")) : this.parseClassElementName(n), t < 13 || this.type === D.parenL || o !== "method" || i || a) {
|
|
1571
|
+
var l = !n.static && tt(n, "constructor"), u = l && e;
|
|
1571
1572
|
l && o !== "method" && this.raise(n.key.start, "Constructor can't have get/set modifier"), n.kind = l ? "constructor" : o, this.parseClassMethod(n, i, a, u);
|
|
1572
1573
|
} else this.parseClassField(n);
|
|
1573
1574
|
return n;
|
|
1574
|
-
},
|
|
1575
|
-
return this.type ===
|
|
1576
|
-
},
|
|
1577
|
-
this.type ===
|
|
1578
|
-
},
|
|
1575
|
+
}, R.isClassElementNameStart = function() {
|
|
1576
|
+
return this.type === D.name || this.type === D.privateId || this.type === D.num || this.type === D.string || this.type === D.bracketL || this.type.keyword;
|
|
1577
|
+
}, R.parseClassElementName = function(e) {
|
|
1578
|
+
this.type === D.privateId ? (this.value === "constructor" && this.raise(this.start, "Classes can't have an element named '#constructor'"), e.computed = !1, e.key = this.parsePrivateIdent()) : this.parsePropertyName(e);
|
|
1579
|
+
}, R.parseClassMethod = function(e, t, n, r) {
|
|
1579
1580
|
var i = e.key;
|
|
1580
|
-
e.kind === "constructor" ? (t && this.raise(i.start, "Constructor can't be a generator"), n && this.raise(i.start, "Constructor can't be an async method")) : e.static &&
|
|
1581
|
+
e.kind === "constructor" ? (t && this.raise(i.start, "Constructor can't be a generator"), n && this.raise(i.start, "Constructor can't be an async method")) : e.static && tt(e, "prototype") && this.raise(i.start, "Classes may not have a static property named prototype");
|
|
1581
1582
|
var a = e.value = this.parseMethod(t, n, r);
|
|
1582
1583
|
return e.kind === "get" && a.params.length !== 0 && this.raiseRecoverable(a.start, "getter should have no params"), e.kind === "set" && a.params.length !== 1 && this.raiseRecoverable(a.start, "setter should have exactly one param"), e.kind === "set" && a.params[0].type === "RestElement" && this.raiseRecoverable(a.params[0].start, "Setter cannot use rest params"), this.finishNode(e, "MethodDefinition");
|
|
1583
|
-
},
|
|
1584
|
-
return
|
|
1585
|
-
},
|
|
1584
|
+
}, R.parseClassField = function(e) {
|
|
1585
|
+
return tt(e, "constructor") ? this.raise(e.key.start, "Classes can't have a field named 'constructor'") : e.static && tt(e, "prototype") && this.raise(e.key.start, "Classes can't have a static field named 'prototype'"), this.eat(D.eq) ? (this.enterScope(Le | Fe), e.value = this.parseMaybeAssign(), this.exitScope()) : e.value = null, this.semicolon(), this.finishNode(e, "PropertyDefinition");
|
|
1586
|
+
}, R.parseClassStaticBlock = function(e) {
|
|
1586
1587
|
e.body = [];
|
|
1587
1588
|
var t = this.labels;
|
|
1588
|
-
for (this.labels = [], this.enterScope(
|
|
1589
|
+
for (this.labels = [], this.enterScope(N | Fe); this.type !== D.braceR;) {
|
|
1589
1590
|
var n = this.parseStatement(null);
|
|
1590
1591
|
e.body.push(n);
|
|
1591
1592
|
}
|
|
1592
1593
|
return this.next(), this.exitScope(), this.labels = t, this.finishNode(e, "StaticBlock");
|
|
1593
|
-
},
|
|
1594
|
-
this.type ===
|
|
1595
|
-
},
|
|
1596
|
-
e.superClass = this.eat(
|
|
1597
|
-
},
|
|
1594
|
+
}, R.parseClassId = function(e, t) {
|
|
1595
|
+
this.type === D.name ? (e.id = this.parseIdent(), t && this.checkLValSimple(e.id, P, !1)) : (t === !0 && this.unexpected(), e.id = null);
|
|
1596
|
+
}, R.parseClassSuper = function(e) {
|
|
1597
|
+
e.superClass = this.eat(D._extends) ? this.parseExprSubscripts(null, !1) : null;
|
|
1598
|
+
}, R.enterClassBody = function() {
|
|
1598
1599
|
var e = {
|
|
1599
1600
|
declared: Object.create(null),
|
|
1600
1601
|
used: []
|
|
1601
1602
|
};
|
|
1602
1603
|
return this.privateNameStack.push(e), e.declared;
|
|
1603
|
-
},
|
|
1604
|
+
}, R.exitClassBody = function() {
|
|
1604
1605
|
var e = this.privateNameStack.pop(), t = e.declared, n = e.used;
|
|
1605
1606
|
if (this.options.checkPrivateFields) for (var r = this.privateNameStack.length, i = r === 0 ? null : this.privateNameStack[r - 1], a = 0; a < n.length; ++a) {
|
|
1606
1607
|
var o = n[a];
|
|
1607
|
-
|
|
1608
|
+
ye(t, o.name) || (i ? i.used.push(o) : this.raiseRecoverable(o.start, "Private field '#" + o.name + "' must be declared in an enclosing class"));
|
|
1608
1609
|
}
|
|
1609
1610
|
};
|
|
1610
|
-
function
|
|
1611
|
+
function et(e, t) {
|
|
1611
1612
|
var n = t.key.name, r = e[n], i = "true";
|
|
1612
1613
|
return t.type === "MethodDefinition" && (t.kind === "get" || t.kind === "set") && (i = (t.static ? "s" : "i") + t.kind), r === "iget" && i === "iset" || r === "iset" && i === "iget" || r === "sget" && i === "sset" || r === "sset" && i === "sget" ? (e[n] = "true", !1) : r ? !0 : (e[n] = i, !1);
|
|
1613
1614
|
}
|
|
1614
|
-
function
|
|
1615
|
+
function tt(e, t) {
|
|
1615
1616
|
var n = e.computed, r = e.key;
|
|
1616
1617
|
return !n && (r.type === "Identifier" && r.name === t || r.type === "Literal" && r.value === t);
|
|
1617
1618
|
}
|
|
1618
|
-
|
|
1619
|
-
return this.options.ecmaVersion >= 11 && (this.eatContextual("as") ? (e.exported = this.parseModuleExportName(), this.checkExport(t, e.exported, this.lastTokStart)) : e.exported = null), this.expectContextual("from"), this.type !==
|
|
1620
|
-
},
|
|
1621
|
-
if (this.next(), this.eat(
|
|
1622
|
-
if (this.eat(
|
|
1619
|
+
R.parseExportAllDeclaration = function(e, t) {
|
|
1620
|
+
return this.options.ecmaVersion >= 11 && (this.eatContextual("as") ? (e.exported = this.parseModuleExportName(), this.checkExport(t, e.exported, this.lastTokStart)) : e.exported = null), this.expectContextual("from"), this.type !== D.string && this.unexpected(), e.source = this.parseExprAtom(), this.options.ecmaVersion >= 16 && (e.attributes = this.parseWithClause()), this.semicolon(), this.finishNode(e, "ExportAllDeclaration");
|
|
1621
|
+
}, R.parseExport = function(e, t) {
|
|
1622
|
+
if (this.next(), this.eat(D.star)) return this.parseExportAllDeclaration(e, t);
|
|
1623
|
+
if (this.eat(D._default)) return this.checkExport(t, "default", this.lastTokStart), e.declaration = this.parseExportDefaultDeclaration(), this.finishNode(e, "ExportDefaultDeclaration");
|
|
1623
1624
|
if (this.shouldParseExportStatement()) e.declaration = this.parseExportDeclaration(e), e.declaration.type === "VariableDeclaration" ? this.checkVariableExport(t, e.declaration.declarations) : this.checkExport(t, e.declaration.id, e.declaration.id.start), e.specifiers = [], e.source = null, this.options.ecmaVersion >= 16 && (e.attributes = []);
|
|
1624
1625
|
else {
|
|
1625
|
-
if (e.declaration = null, e.specifiers = this.parseExportSpecifiers(t), this.eatContextual("from")) this.type !==
|
|
1626
|
+
if (e.declaration = null, e.specifiers = this.parseExportSpecifiers(t), this.eatContextual("from")) this.type !== D.string && this.unexpected(), e.source = this.parseExprAtom(), this.options.ecmaVersion >= 16 && (e.attributes = this.parseWithClause());
|
|
1626
1627
|
else {
|
|
1627
1628
|
for (var n = 0, r = e.specifiers; n < r.length; n += 1) {
|
|
1628
1629
|
var i = r[n];
|
|
@@ -1633,23 +1634,23 @@ L.parseExportAllDeclaration = function(e, t) {
|
|
|
1633
1634
|
this.semicolon();
|
|
1634
1635
|
}
|
|
1635
1636
|
return this.finishNode(e, "ExportNamedDeclaration");
|
|
1636
|
-
},
|
|
1637
|
+
}, R.parseExportDeclaration = function(e) {
|
|
1637
1638
|
return this.parseStatement(null);
|
|
1638
|
-
},
|
|
1639
|
+
}, R.parseExportDefaultDeclaration = function() {
|
|
1639
1640
|
var e;
|
|
1640
|
-
if (this.type ===
|
|
1641
|
+
if (this.type === D._function || (e = this.isAsyncFunction())) {
|
|
1641
1642
|
var t = this.startNode();
|
|
1642
|
-
return this.next(), e && this.next(), this.parseFunction(t,
|
|
1643
|
-
}
|
|
1643
|
+
return this.next(), e && this.next(), this.parseFunction(t, Ze | $e, !1, e);
|
|
1644
|
+
}
|
|
1645
|
+
if (this.type === D._class) {
|
|
1644
1646
|
var n = this.startNode();
|
|
1645
1647
|
return this.parseClass(n, "nullableID");
|
|
1646
|
-
} else {
|
|
1647
|
-
var r = this.parseMaybeAssign();
|
|
1648
|
-
return this.semicolon(), r;
|
|
1649
1648
|
}
|
|
1650
|
-
|
|
1651
|
-
|
|
1652
|
-
},
|
|
1649
|
+
var r = this.parseMaybeAssign();
|
|
1650
|
+
return this.semicolon(), r;
|
|
1651
|
+
}, R.checkExport = function(e, t, n) {
|
|
1652
|
+
e && (typeof t != "string" && (t = t.type === "Identifier" ? t.name : t.value), ye(e, t) && this.raiseRecoverable(n, "Duplicate export '" + t + "'"), e[t] = !0);
|
|
1653
|
+
}, R.checkPatternExport = function(e, t) {
|
|
1653
1654
|
var n = t.type;
|
|
1654
1655
|
if (n === "Identifier") this.checkExport(e, t, t.start);
|
|
1655
1656
|
else if (n === "ObjectPattern") for (var r = 0, i = t.properties; r < i.length; r += 1) {
|
|
@@ -1661,72 +1662,72 @@ L.parseExportAllDeclaration = function(e, t) {
|
|
|
1661
1662
|
c && this.checkPatternExport(e, c);
|
|
1662
1663
|
}
|
|
1663
1664
|
else n === "Property" ? this.checkPatternExport(e, t.value) : n === "AssignmentPattern" ? this.checkPatternExport(e, t.left) : n === "RestElement" && this.checkPatternExport(e, t.argument);
|
|
1664
|
-
},
|
|
1665
|
+
}, R.checkVariableExport = function(e, t) {
|
|
1665
1666
|
if (e) for (var n = 0, r = t; n < r.length; n += 1) {
|
|
1666
1667
|
var i = r[n];
|
|
1667
1668
|
this.checkPatternExport(e, i.id);
|
|
1668
1669
|
}
|
|
1669
|
-
},
|
|
1670
|
+
}, R.shouldParseExportStatement = function() {
|
|
1670
1671
|
return this.type.keyword === "var" || this.type.keyword === "const" || this.type.keyword === "class" || this.type.keyword === "function" || this.isLet() || this.isAsyncFunction();
|
|
1671
|
-
},
|
|
1672
|
+
}, R.parseExportSpecifier = function(e) {
|
|
1672
1673
|
var t = this.startNode();
|
|
1673
1674
|
return t.local = this.parseModuleExportName(), t.exported = this.eatContextual("as") ? this.parseModuleExportName() : t.local, this.checkExport(e, t.exported, t.exported.start), this.finishNode(t, "ExportSpecifier");
|
|
1674
|
-
},
|
|
1675
|
+
}, R.parseExportSpecifiers = function(e) {
|
|
1675
1676
|
var t = [], n = !0;
|
|
1676
|
-
for (this.expect(
|
|
1677
|
+
for (this.expect(D.braceL); !this.eat(D.braceR);) {
|
|
1677
1678
|
if (n) n = !1;
|
|
1678
|
-
else if (this.expect(
|
|
1679
|
+
else if (this.expect(D.comma), this.afterTrailingComma(D.braceR)) break;
|
|
1679
1680
|
t.push(this.parseExportSpecifier(e));
|
|
1680
1681
|
}
|
|
1681
1682
|
return t;
|
|
1682
|
-
},
|
|
1683
|
-
return this.next(), this.type ===
|
|
1684
|
-
},
|
|
1683
|
+
}, R.parseImport = function(e) {
|
|
1684
|
+
return this.next(), this.type === D.string ? (e.specifiers = Xe, e.source = this.parseExprAtom()) : (e.specifiers = this.parseImportSpecifiers(), this.expectContextual("from"), e.source = this.type === D.string ? this.parseExprAtom() : this.unexpected()), this.options.ecmaVersion >= 16 && (e.attributes = this.parseWithClause()), this.semicolon(), this.finishNode(e, "ImportDeclaration");
|
|
1685
|
+
}, R.parseImportSpecifier = function() {
|
|
1685
1686
|
var e = this.startNode();
|
|
1686
|
-
return e.imported = this.parseModuleExportName(), this.eatContextual("as") ? e.local = this.parseIdent() : (this.checkUnreserved(e.imported), e.local = e.imported), this.checkLValSimple(e.local,
|
|
1687
|
-
},
|
|
1687
|
+
return e.imported = this.parseModuleExportName(), this.eatContextual("as") ? e.local = this.parseIdent() : (this.checkUnreserved(e.imported), e.local = e.imported), this.checkLValSimple(e.local, P), this.finishNode(e, "ImportSpecifier");
|
|
1688
|
+
}, R.parseImportDefaultSpecifier = function() {
|
|
1688
1689
|
var e = this.startNode();
|
|
1689
|
-
return e.local = this.parseIdent(), this.checkLValSimple(e.local,
|
|
1690
|
-
},
|
|
1690
|
+
return e.local = this.parseIdent(), this.checkLValSimple(e.local, P), this.finishNode(e, "ImportDefaultSpecifier");
|
|
1691
|
+
}, R.parseImportNamespaceSpecifier = function() {
|
|
1691
1692
|
var e = this.startNode();
|
|
1692
|
-
return this.next(), this.expectContextual("as"), e.local = this.parseIdent(), this.checkLValSimple(e.local,
|
|
1693
|
-
},
|
|
1693
|
+
return this.next(), this.expectContextual("as"), e.local = this.parseIdent(), this.checkLValSimple(e.local, P), this.finishNode(e, "ImportNamespaceSpecifier");
|
|
1694
|
+
}, R.parseImportSpecifiers = function() {
|
|
1694
1695
|
var e = [], t = !0;
|
|
1695
|
-
if (this.type ===
|
|
1696
|
-
if (this.type ===
|
|
1697
|
-
for (this.expect(
|
|
1696
|
+
if (this.type === D.name && (e.push(this.parseImportDefaultSpecifier()), !this.eat(D.comma))) return e;
|
|
1697
|
+
if (this.type === D.star) return e.push(this.parseImportNamespaceSpecifier()), e;
|
|
1698
|
+
for (this.expect(D.braceL); !this.eat(D.braceR);) {
|
|
1698
1699
|
if (t) t = !1;
|
|
1699
|
-
else if (this.expect(
|
|
1700
|
+
else if (this.expect(D.comma), this.afterTrailingComma(D.braceR)) break;
|
|
1700
1701
|
e.push(this.parseImportSpecifier());
|
|
1701
1702
|
}
|
|
1702
1703
|
return e;
|
|
1703
|
-
},
|
|
1704
|
+
}, R.parseWithClause = function() {
|
|
1704
1705
|
var e = [];
|
|
1705
|
-
if (!this.eat(
|
|
1706
|
-
this.expect(
|
|
1707
|
-
for (var t = {}, n = !0; !this.eat(
|
|
1706
|
+
if (!this.eat(D._with)) return e;
|
|
1707
|
+
this.expect(D.braceL);
|
|
1708
|
+
for (var t = {}, n = !0; !this.eat(D.braceR);) {
|
|
1708
1709
|
if (n) n = !1;
|
|
1709
|
-
else if (this.expect(
|
|
1710
|
+
else if (this.expect(D.comma), this.afterTrailingComma(D.braceR)) break;
|
|
1710
1711
|
var r = this.parseImportAttribute(), i = r.key.type === "Identifier" ? r.key.name : r.key.value;
|
|
1711
|
-
|
|
1712
|
+
ye(t, i) && this.raiseRecoverable(r.key.start, "Duplicate attribute key '" + i + "'"), t[i] = !0, e.push(r);
|
|
1712
1713
|
}
|
|
1713
1714
|
return e;
|
|
1714
|
-
},
|
|
1715
|
+
}, R.parseImportAttribute = function() {
|
|
1715
1716
|
var e = this.startNode();
|
|
1716
|
-
return e.key = this.type ===
|
|
1717
|
-
},
|
|
1718
|
-
if (this.options.ecmaVersion >= 13 && this.type ===
|
|
1717
|
+
return e.key = this.type === D.string ? this.parseExprAtom() : this.parseIdent(this.options.allowReserved !== "never"), this.expect(D.colon), this.type !== D.string && this.unexpected(), e.value = this.parseExprAtom(), this.finishNode(e, "ImportAttribute");
|
|
1718
|
+
}, R.parseModuleExportName = function() {
|
|
1719
|
+
if (this.options.ecmaVersion >= 13 && this.type === D.string) {
|
|
1719
1720
|
var e = this.parseLiteral(this.value);
|
|
1720
|
-
return
|
|
1721
|
+
return Se.test(e.value) && this.raise(e.start, "An export name cannot include a lone surrogate."), e;
|
|
1721
1722
|
}
|
|
1722
1723
|
return this.parseIdent(!0);
|
|
1723
|
-
},
|
|
1724
|
+
}, R.adaptDirectivePrologue = function(e) {
|
|
1724
1725
|
for (var t = 0; t < e.length && this.isDirectiveCandidate(e[t]); ++t) e[t].directive = e[t].expression.raw.slice(1, -1);
|
|
1725
|
-
},
|
|
1726
|
+
}, R.isDirectiveCandidate = function(e) {
|
|
1726
1727
|
return this.options.ecmaVersion >= 5 && e.type === "ExpressionStatement" && e.expression.type === "Literal" && typeof e.expression.value == "string" && (this.input[e.start] === "\"" || this.input[e.start] === "'");
|
|
1727
1728
|
};
|
|
1728
|
-
var
|
|
1729
|
-
|
|
1729
|
+
var z = F.prototype;
|
|
1730
|
+
z.toAssignable = function(e, t, n) {
|
|
1730
1731
|
if (this.options.ecmaVersion >= 6 && e) switch (e.type) {
|
|
1731
1732
|
case "Identifier":
|
|
1732
1733
|
this.inAsync && e.name === "await" && this.raise(e.start, "Cannot use 'await' as identifier inside an async function");
|
|
@@ -1765,7 +1766,7 @@ R.toAssignable = function(e, t, n) {
|
|
|
1765
1766
|
}
|
|
1766
1767
|
else n && this.checkPatternErrors(n, !0);
|
|
1767
1768
|
return e;
|
|
1768
|
-
},
|
|
1769
|
+
}, z.toAssignableList = function(e, t) {
|
|
1769
1770
|
for (var n = e.length, r = 0; r < n; r++) {
|
|
1770
1771
|
var i = e[r];
|
|
1771
1772
|
i && this.toAssignable(i, t);
|
|
@@ -1775,44 +1776,44 @@ R.toAssignable = function(e, t, n) {
|
|
|
1775
1776
|
this.options.ecmaVersion === 6 && t && a && a.type === "RestElement" && a.argument.type !== "Identifier" && this.unexpected(a.argument.start);
|
|
1776
1777
|
}
|
|
1777
1778
|
return e;
|
|
1778
|
-
},
|
|
1779
|
+
}, z.parseSpread = function(e) {
|
|
1779
1780
|
var t = this.startNode();
|
|
1780
1781
|
return this.next(), t.argument = this.parseMaybeAssign(!1, e), this.finishNode(t, "SpreadElement");
|
|
1781
|
-
},
|
|
1782
|
+
}, z.parseRestBinding = function() {
|
|
1782
1783
|
var e = this.startNode();
|
|
1783
|
-
return this.next(), this.options.ecmaVersion === 6 && this.type !==
|
|
1784
|
-
},
|
|
1784
|
+
return this.next(), this.options.ecmaVersion === 6 && this.type !== D.name && this.unexpected(), e.argument = this.parseBindingAtom(), this.finishNode(e, "RestElement");
|
|
1785
|
+
}, z.parseBindingAtom = function() {
|
|
1785
1786
|
if (this.options.ecmaVersion >= 6) switch (this.type) {
|
|
1786
|
-
case
|
|
1787
|
+
case D.bracketL:
|
|
1787
1788
|
var e = this.startNode();
|
|
1788
|
-
return this.next(), e.elements = this.parseBindingList(
|
|
1789
|
-
case
|
|
1789
|
+
return this.next(), e.elements = this.parseBindingList(D.bracketR, !0, !0), this.finishNode(e, "ArrayPattern");
|
|
1790
|
+
case D.braceL: return this.parseObj(!0);
|
|
1790
1791
|
}
|
|
1791
1792
|
return this.parseIdent();
|
|
1792
|
-
},
|
|
1793
|
-
for (var i = [], a = !0; !this.eat(e);) if (a ? a = !1 : this.expect(
|
|
1793
|
+
}, z.parseBindingList = function(e, t, n, r) {
|
|
1794
|
+
for (var i = [], a = !0; !this.eat(e);) if (a ? a = !1 : this.expect(D.comma), t && this.type === D.comma) i.push(null);
|
|
1794
1795
|
else if (n && this.afterTrailingComma(e)) break;
|
|
1795
|
-
else if (this.type ===
|
|
1796
|
+
else if (this.type === D.ellipsis) {
|
|
1796
1797
|
var o = this.parseRestBinding();
|
|
1797
|
-
this.parseBindingListItem(o), i.push(o), this.type ===
|
|
1798
|
+
this.parseBindingListItem(o), i.push(o), this.type === D.comma && this.raiseRecoverable(this.start, "Comma is not permitted after the rest element"), this.expect(e);
|
|
1798
1799
|
break;
|
|
1799
1800
|
} else i.push(this.parseAssignableListItem(r));
|
|
1800
1801
|
return i;
|
|
1801
|
-
},
|
|
1802
|
+
}, z.parseAssignableListItem = function(e) {
|
|
1802
1803
|
var t = this.parseMaybeDefault(this.start, this.startLoc);
|
|
1803
1804
|
return this.parseBindingListItem(t), t;
|
|
1804
|
-
},
|
|
1805
|
+
}, z.parseBindingListItem = function(e) {
|
|
1805
1806
|
return e;
|
|
1806
|
-
},
|
|
1807
|
-
if (n ||= this.parseBindingAtom(), this.options.ecmaVersion < 6 || !this.eat(
|
|
1807
|
+
}, z.parseMaybeDefault = function(e, t, n) {
|
|
1808
|
+
if (n ||= this.parseBindingAtom(), this.options.ecmaVersion < 6 || !this.eat(D.eq)) return n;
|
|
1808
1809
|
var r = this.startNodeAt(e, t);
|
|
1809
1810
|
return r.left = n, r.right = this.parseMaybeAssign(), this.finishNode(r, "AssignmentPattern");
|
|
1810
|
-
},
|
|
1811
|
-
t === void 0 && (t =
|
|
1812
|
-
var r = t !==
|
|
1811
|
+
}, z.checkLValSimple = function(e, t, n) {
|
|
1812
|
+
t === void 0 && (t = Ve);
|
|
1813
|
+
var r = t !== Ve;
|
|
1813
1814
|
switch (e.type) {
|
|
1814
1815
|
case "Identifier":
|
|
1815
|
-
this.strict && this.reservedWordsStrictBind.test(e.name) && this.raiseRecoverable(e.start, (r ? "Binding " : "Assigning to ") + e.name + " in strict mode"), r && (t ===
|
|
1816
|
+
this.strict && this.reservedWordsStrictBind.test(e.name) && this.raiseRecoverable(e.start, (r ? "Binding " : "Assigning to ") + e.name + " in strict mode"), r && (t === P && e.name === "let" && this.raiseRecoverable(e.start, "let is disallowed as a lexically bound name"), n && (ye(n, e.name) && this.raiseRecoverable(e.start, "Argument name clash"), n[e.name] = !0), t !== Ge && this.declareName(e.name, t, e.start));
|
|
1816
1817
|
break;
|
|
1817
1818
|
case "ChainExpression":
|
|
1818
1819
|
this.raiseRecoverable(e.start, "Optional chaining cannot appear in left-hand side");
|
|
@@ -1823,8 +1824,8 @@ R.toAssignable = function(e, t, n) {
|
|
|
1823
1824
|
case "ParenthesizedExpression": return r && this.raiseRecoverable(e.start, "Binding parenthesized expression"), this.checkLValSimple(e.expression, t, n);
|
|
1824
1825
|
default: this.raise(e.start, (r ? "Binding" : "Assigning to") + " rvalue");
|
|
1825
1826
|
}
|
|
1826
|
-
},
|
|
1827
|
-
switch (t === void 0 && (t =
|
|
1827
|
+
}, z.checkLValPattern = function(e, t, n) {
|
|
1828
|
+
switch (t === void 0 && (t = Ve), e.type) {
|
|
1828
1829
|
case "ObjectPattern":
|
|
1829
1830
|
for (var r = 0, i = e.properties; r < i.length; r += 1) {
|
|
1830
1831
|
var a = i[r];
|
|
@@ -1839,8 +1840,8 @@ R.toAssignable = function(e, t, n) {
|
|
|
1839
1840
|
break;
|
|
1840
1841
|
default: this.checkLValSimple(e, t, n);
|
|
1841
1842
|
}
|
|
1842
|
-
},
|
|
1843
|
-
switch (t === void 0 && (t =
|
|
1843
|
+
}, z.checkLValInnerPattern = function(e, t, n) {
|
|
1844
|
+
switch (t === void 0 && (t = Ve), e.type) {
|
|
1844
1845
|
case "Property":
|
|
1845
1846
|
this.checkLValInnerPattern(e.value, t, n);
|
|
1846
1847
|
break;
|
|
@@ -1853,72 +1854,72 @@ R.toAssignable = function(e, t, n) {
|
|
|
1853
1854
|
default: this.checkLValPattern(e, t, n);
|
|
1854
1855
|
}
|
|
1855
1856
|
};
|
|
1856
|
-
var
|
|
1857
|
+
var B = function(e, t, n, r, i) {
|
|
1857
1858
|
this.token = e, this.isExpr = !!t, this.preserveSpace = !!n, this.override = r, this.generator = !!i;
|
|
1858
|
-
},
|
|
1859
|
-
b_stat: new
|
|
1860
|
-
b_expr: new
|
|
1861
|
-
b_tmpl: new
|
|
1862
|
-
p_stat: new
|
|
1863
|
-
p_expr: new
|
|
1864
|
-
q_tmpl: new
|
|
1859
|
+
}, V = {
|
|
1860
|
+
b_stat: new B("{", !1),
|
|
1861
|
+
b_expr: new B("{", !0),
|
|
1862
|
+
b_tmpl: new B("${", !1),
|
|
1863
|
+
p_stat: new B("(", !1),
|
|
1864
|
+
p_expr: new B("(", !0),
|
|
1865
|
+
q_tmpl: new B("`", !0, !0, function(e) {
|
|
1865
1866
|
return e.tryReadTemplateToken();
|
|
1866
1867
|
}),
|
|
1867
|
-
f_stat: new
|
|
1868
|
-
f_expr: new
|
|
1869
|
-
f_expr_gen: new
|
|
1870
|
-
f_gen: new
|
|
1871
|
-
},
|
|
1872
|
-
|
|
1873
|
-
return [
|
|
1874
|
-
},
|
|
1868
|
+
f_stat: new B("function", !1),
|
|
1869
|
+
f_expr: new B("function", !0),
|
|
1870
|
+
f_expr_gen: new B("function", !0, !1, null, !0),
|
|
1871
|
+
f_gen: new B("function", !1, !1, null, !0)
|
|
1872
|
+
}, nt = F.prototype;
|
|
1873
|
+
nt.initialContext = function() {
|
|
1874
|
+
return [V.b_stat];
|
|
1875
|
+
}, nt.curContext = function() {
|
|
1875
1876
|
return this.context[this.context.length - 1];
|
|
1876
|
-
},
|
|
1877
|
+
}, nt.braceIsBlock = function(e) {
|
|
1877
1878
|
var t = this.curContext();
|
|
1878
|
-
return t ===
|
|
1879
|
-
},
|
|
1879
|
+
return t === V.f_expr || t === V.f_stat ? !0 : e === D.colon && (t === V.b_stat || t === V.b_expr) ? !t.isExpr : e === D._return || e === D.name && this.exprAllowed ? O.test(this.input.slice(this.lastTokEnd, this.start)) : e === D._else || e === D.semi || e === D.eof || e === D.parenR || e === D.arrow ? !0 : e === D.braceL ? t === V.b_stat : e === D._var || e === D._const || e === D.name ? !1 : !this.exprAllowed;
|
|
1880
|
+
}, nt.inGeneratorContext = function() {
|
|
1880
1881
|
for (var e = this.context.length - 1; e >= 1; e--) {
|
|
1881
1882
|
var t = this.context[e];
|
|
1882
1883
|
if (t.token === "function") return t.generator;
|
|
1883
1884
|
}
|
|
1884
1885
|
return !1;
|
|
1885
|
-
},
|
|
1886
|
+
}, nt.updateContext = function(e) {
|
|
1886
1887
|
var t, n = this.type;
|
|
1887
|
-
n.keyword && e ===
|
|
1888
|
-
},
|
|
1888
|
+
n.keyword && e === D.dot ? this.exprAllowed = !1 : (t = n.updateContext) ? t.call(this, e) : this.exprAllowed = n.beforeExpr;
|
|
1889
|
+
}, nt.overrideContext = function(e) {
|
|
1889
1890
|
this.curContext() !== e && (this.context[this.context.length - 1] = e);
|
|
1890
|
-
},
|
|
1891
|
+
}, D.parenR.updateContext = D.braceR.updateContext = function() {
|
|
1891
1892
|
if (this.context.length === 1) {
|
|
1892
1893
|
this.exprAllowed = !0;
|
|
1893
1894
|
return;
|
|
1894
1895
|
}
|
|
1895
1896
|
var e = this.context.pop();
|
|
1896
|
-
e ===
|
|
1897
|
-
},
|
|
1898
|
-
this.context.push(this.braceIsBlock(e) ?
|
|
1899
|
-
},
|
|
1900
|
-
this.context.push(
|
|
1901
|
-
},
|
|
1902
|
-
var t = e ===
|
|
1903
|
-
this.context.push(t ?
|
|
1904
|
-
},
|
|
1905
|
-
e.beforeExpr && e !==
|
|
1906
|
-
},
|
|
1897
|
+
e === V.b_stat && this.curContext().token === "function" && (e = this.context.pop()), this.exprAllowed = !e.isExpr;
|
|
1898
|
+
}, D.braceL.updateContext = function(e) {
|
|
1899
|
+
this.context.push(this.braceIsBlock(e) ? V.b_stat : V.b_expr), this.exprAllowed = !0;
|
|
1900
|
+
}, D.dollarBraceL.updateContext = function() {
|
|
1901
|
+
this.context.push(V.b_tmpl), this.exprAllowed = !0;
|
|
1902
|
+
}, D.parenL.updateContext = function(e) {
|
|
1903
|
+
var t = e === D._if || e === D._for || e === D._with || e === D._while;
|
|
1904
|
+
this.context.push(t ? V.p_stat : V.p_expr), this.exprAllowed = !0;
|
|
1905
|
+
}, D.incDec.updateContext = function() {}, D._function.updateContext = D._class.updateContext = function(e) {
|
|
1906
|
+
e.beforeExpr && e !== D._else && (e !== D.semi || this.curContext() === V.p_stat) && !(e === D._return && O.test(this.input.slice(this.lastTokEnd, this.start))) && (e !== D.colon && e !== D.braceL || this.curContext() !== V.b_stat) ? this.context.push(V.f_expr) : this.context.push(V.f_stat), this.exprAllowed = !1;
|
|
1907
|
+
}, D.colon.updateContext = function() {
|
|
1907
1908
|
this.curContext().token === "function" && this.context.pop(), this.exprAllowed = !0;
|
|
1908
|
-
},
|
|
1909
|
-
this.curContext() ===
|
|
1910
|
-
},
|
|
1911
|
-
if (e ===
|
|
1909
|
+
}, D.backQuote.updateContext = function() {
|
|
1910
|
+
this.curContext() === V.q_tmpl ? this.context.pop() : this.context.push(V.q_tmpl), this.exprAllowed = !1;
|
|
1911
|
+
}, D.star.updateContext = function(e) {
|
|
1912
|
+
if (e === D._function) {
|
|
1912
1913
|
var t = this.context.length - 1;
|
|
1913
|
-
this.context[t] ===
|
|
1914
|
+
this.context[t] === V.f_expr ? this.context[t] = V.f_expr_gen : this.context[t] = V.f_gen;
|
|
1914
1915
|
}
|
|
1915
1916
|
this.exprAllowed = !0;
|
|
1916
|
-
},
|
|
1917
|
+
}, D.name.updateContext = function(e) {
|
|
1917
1918
|
var t = !1;
|
|
1918
|
-
this.options.ecmaVersion >= 6 && e !==
|
|
1919
|
+
this.options.ecmaVersion >= 6 && e !== D.dot && (this.value === "of" && !this.exprAllowed || this.value === "yield" && this.inGeneratorContext()) && (t = !0), this.exprAllowed = t;
|
|
1919
1920
|
};
|
|
1920
|
-
var
|
|
1921
|
-
|
|
1921
|
+
var H = F.prototype;
|
|
1922
|
+
H.checkPropClash = function(e, t, n) {
|
|
1922
1923
|
if (!(this.options.ecmaVersion >= 9 && e.type === "SpreadElement") && !(this.options.ecmaVersion >= 6 && (e.computed || e.method || e.shorthand))) {
|
|
1923
1924
|
var r = e.key, i;
|
|
1924
1925
|
switch (r.type) {
|
|
@@ -1943,65 +1944,65 @@ V.checkPropClash = function(e, t, n) {
|
|
|
1943
1944
|
set: !1
|
|
1944
1945
|
}, o[a] = !0;
|
|
1945
1946
|
}
|
|
1946
|
-
},
|
|
1947
|
+
}, H.parseExpression = function(e, t) {
|
|
1947
1948
|
var n = this;
|
|
1948
1949
|
return this.catchStackOverflow(function() {
|
|
1949
1950
|
var r = n.start, i = n.startLoc, a = n.parseMaybeAssign(e, t);
|
|
1950
|
-
if (n.type ===
|
|
1951
|
+
if (n.type === D.comma) {
|
|
1951
1952
|
var o = n.startNodeAt(r, i);
|
|
1952
|
-
for (o.expressions = [a]; n.eat(
|
|
1953
|
+
for (o.expressions = [a]; n.eat(D.comma);) o.expressions.push(n.parseMaybeAssign(e, t));
|
|
1953
1954
|
return n.finishNode(o, "SequenceExpression");
|
|
1954
1955
|
}
|
|
1955
1956
|
return a;
|
|
1956
1957
|
});
|
|
1957
|
-
},
|
|
1958
|
+
}, H.parseMaybeAssign = function(e, t, n) {
|
|
1958
1959
|
if (this.isContextual("yield")) {
|
|
1959
1960
|
if (this.inGenerator) return this.parseYield(e);
|
|
1960
1961
|
this.exprAllowed = !1;
|
|
1961
1962
|
}
|
|
1962
1963
|
var r = !1, i = -1, a = -1, o = -1;
|
|
1963
|
-
t ? (i = t.parenthesizedAssign, a = t.trailingComma, o = t.doubleProto, t.parenthesizedAssign = t.trailingComma = -1) : (t = new
|
|
1964
|
+
t ? (i = t.parenthesizedAssign, a = t.trailingComma, o = t.doubleProto, t.parenthesizedAssign = t.trailingComma = -1) : (t = new qe(), r = !0);
|
|
1964
1965
|
var s = this.start, c = this.startLoc;
|
|
1965
|
-
(this.type ===
|
|
1966
|
+
(this.type === D.parenL || this.type === D.name) && (this.potentialArrowAt = this.start, this.potentialArrowInForAwait = e === "await");
|
|
1966
1967
|
var l = this.parseMaybeConditional(e, t);
|
|
1967
1968
|
if (n && (l = n.call(this, l, s, c)), this.type.isAssign) {
|
|
1968
1969
|
var u = this.startNodeAt(s, c);
|
|
1969
|
-
return u.operator = this.value, this.type ===
|
|
1970
|
-
}
|
|
1971
|
-
return i > -1 && (t.parenthesizedAssign = i), a > -1 && (t.trailingComma = a), l;
|
|
1972
|
-
},
|
|
1970
|
+
return u.operator = this.value, this.type === D.eq && (l = this.toAssignable(l, !1, t)), r || (t.parenthesizedAssign = t.trailingComma = t.doubleProto = -1), t.shorthandAssign >= l.start && (t.shorthandAssign = -1), this.type === D.eq ? this.checkLValPattern(l) : this.checkLValSimple(l), u.left = l, this.next(), u.right = this.parseMaybeAssign(e), o > -1 && (t.doubleProto = o), this.finishNode(u, "AssignmentExpression");
|
|
1971
|
+
}
|
|
1972
|
+
return r && this.checkExpressionErrors(t, !0), i > -1 && (t.parenthesizedAssign = i), a > -1 && (t.trailingComma = a), l;
|
|
1973
|
+
}, H.parseMaybeConditional = function(e, t) {
|
|
1973
1974
|
var n = this.start, r = this.startLoc, i = this.parseExprOps(e, t);
|
|
1974
1975
|
if (this.checkExpressionErrors(t)) return i;
|
|
1975
|
-
if (
|
|
1976
|
+
if ((i.type !== "ArrowFunctionExpression" || i.start !== n) && this.eat(D.question)) {
|
|
1976
1977
|
var a = this.startNodeAt(n, r);
|
|
1977
|
-
return a.test = i, a.consequent = this.parseMaybeAssign(), this.expect(
|
|
1978
|
+
return a.test = i, a.consequent = this.parseMaybeAssign(), this.expect(D.colon), a.alternate = this.parseMaybeAssign(e), this.finishNode(a, "ConditionalExpression");
|
|
1978
1979
|
}
|
|
1979
1980
|
return i;
|
|
1980
|
-
},
|
|
1981
|
+
}, H.parseExprOps = function(e, t) {
|
|
1981
1982
|
var n = this.start, r = this.startLoc, i = this.parseMaybeUnary(t, !1, !1, e);
|
|
1982
1983
|
return this.checkExpressionErrors(t) || i.start === n && i.type === "ArrowFunctionExpression" ? i : this.parseExprOp(i, n, r, -1, e);
|
|
1983
|
-
},
|
|
1984
|
+
}, H.parseExprOp = function(e, t, n, r, i) {
|
|
1984
1985
|
var a = this.type.binop;
|
|
1985
|
-
if (a != null && (!i || this.type !==
|
|
1986
|
-
var o = this.type ===
|
|
1987
|
-
s && (a =
|
|
1986
|
+
if (a != null && (!i || this.type !== D._in) && a > r) {
|
|
1987
|
+
var o = this.type === D.logicalOR || this.type === D.logicalAND, s = this.type === D.coalesce;
|
|
1988
|
+
s && (a = D.logicalAND.binop);
|
|
1988
1989
|
var c = this.value;
|
|
1989
1990
|
this.next();
|
|
1990
1991
|
var l = this.start, u = this.startLoc, d = this.parseExprOp(this.parseMaybeUnary(null, !1, !1, i), l, u, a, i), f = this.buildBinary(t, n, e, d, c, o || s);
|
|
1991
|
-
return (o && this.type ===
|
|
1992
|
+
return (o && this.type === D.coalesce || s && (this.type === D.logicalOR || this.type === D.logicalAND)) && this.raiseRecoverable(this.start, "Logical expressions and coalesce expressions cannot be mixed. Wrap either by parentheses"), this.parseExprOp(f, t, n, r, i);
|
|
1992
1993
|
}
|
|
1993
1994
|
return e;
|
|
1994
|
-
},
|
|
1995
|
+
}, H.buildBinary = function(e, t, n, r, i, a) {
|
|
1995
1996
|
r.type === "PrivateIdentifier" && this.raise(r.start, "Private identifier can only be left side of binary expression");
|
|
1996
1997
|
var o = this.startNodeAt(e, t);
|
|
1997
1998
|
return o.left = n, o.operator = i, o.right = r, this.finishNode(o, a ? "LogicalExpression" : "BinaryExpression");
|
|
1998
|
-
},
|
|
1999
|
+
}, H.parseMaybeUnary = function(e, t, n, r) {
|
|
1999
2000
|
var i = this.start, a = this.startLoc, o;
|
|
2000
2001
|
if (this.isContextual("await") && this.canAwait) o = this.parseAwait(r), t = !0;
|
|
2001
2002
|
else if (this.type.prefix) {
|
|
2002
|
-
var s = this.startNode(), c = this.type ===
|
|
2003
|
-
s.operator = this.value, s.prefix = !0, this.next(), s.argument = this.parseMaybeUnary(null, !0, c, r), this.checkExpressionErrors(e, !0), c ? this.checkLValSimple(s.argument) : this.strict && s.operator === "delete" &&
|
|
2004
|
-
} else if (!t && this.type ===
|
|
2003
|
+
var s = this.startNode(), c = this.type === D.incDec;
|
|
2004
|
+
s.operator = this.value, s.prefix = !0, this.next(), s.argument = this.parseMaybeUnary(null, !0, c, r), this.checkExpressionErrors(e, !0), c ? this.checkLValSimple(s.argument) : this.strict && s.operator === "delete" && rt(s.argument) ? this.raiseRecoverable(s.start, "Deleting local variable in strict mode") : s.operator === "delete" && it(s.argument) ? this.raiseRecoverable(s.start, "Private fields can not be deleted") : t = !0, o = this.finishNode(s, c ? "UpdateExpression" : "UnaryExpression");
|
|
2005
|
+
} else if (!t && this.type === D.privateId) (r || this.privateNameStack.length === 0) && this.options.checkPrivateFields && this.unexpected(), o = this.parsePrivateIdent(), this.type !== D._in && this.unexpected();
|
|
2005
2006
|
else {
|
|
2006
2007
|
if (o = this.parseExprSubscripts(e, r), this.checkExpressionErrors(e)) return o;
|
|
2007
2008
|
for (; this.type.postfix && !this.canInsertSemicolon();) {
|
|
@@ -2009,22 +2010,23 @@ V.checkPropClash = function(e, t, n) {
|
|
|
2009
2010
|
l.operator = this.value, l.prefix = !1, l.argument = o, this.checkLValSimple(o), this.next(), o = this.finishNode(l, "UpdateExpression");
|
|
2010
2011
|
}
|
|
2011
2012
|
}
|
|
2012
|
-
if (!n &&
|
|
2013
|
-
|
|
2014
|
-
|
|
2013
|
+
if (!n && (o.type !== "ArrowFunctionExpression" || o.start !== i) && this.eat(D.starstar)) {
|
|
2014
|
+
if (t) this.unexpected(this.lastTokStart);
|
|
2015
|
+
else return this.buildBinary(i, a, o, this.parseMaybeUnary(null, !1, !1, r), "**", !1);
|
|
2016
|
+
} else return o;
|
|
2015
2017
|
};
|
|
2016
|
-
function
|
|
2017
|
-
return e.type === "Identifier" || e.type === "ParenthesizedExpression" &&
|
|
2018
|
+
function rt(e) {
|
|
2019
|
+
return e.type === "Identifier" || e.type === "ParenthesizedExpression" && rt(e.expression);
|
|
2018
2020
|
}
|
|
2019
|
-
function
|
|
2020
|
-
return e.type === "MemberExpression" && e.property.type === "PrivateIdentifier" || e.type === "ChainExpression" &&
|
|
2021
|
+
function it(e) {
|
|
2022
|
+
return e.type === "MemberExpression" && e.property.type === "PrivateIdentifier" || e.type === "ChainExpression" && it(e.expression) || e.type === "ParenthesizedExpression" && it(e.expression);
|
|
2021
2023
|
}
|
|
2022
|
-
|
|
2024
|
+
H.parseExprSubscripts = function(e, t) {
|
|
2023
2025
|
var n = this.start, r = this.startLoc, i = this.parseExprAtom(e, t);
|
|
2024
2026
|
if (i.type === "ArrowFunctionExpression" && this.input.slice(this.lastTokStart, this.lastTokEnd) !== ")") return i;
|
|
2025
2027
|
var a = this.parseSubscripts(i, n, r, !1, t);
|
|
2026
2028
|
return e && a.type === "MemberExpression" && (e.parenthesizedAssign >= a.start && (e.parenthesizedAssign = -1), e.parenthesizedBind >= a.start && (e.parenthesizedBind = -1), e.trailingComma >= a.start && (e.trailingComma = -1)), a;
|
|
2027
|
-
},
|
|
2029
|
+
}, H.parseSubscripts = function(e, t, n, r, i) {
|
|
2028
2030
|
for (var a = this.options.ecmaVersion >= 8 && e.type === "Identifier" && e.name === "async" && this.lastTokEnd === e.end && !this.canInsertSemicolon() && e.end - e.start === 5 && this.potentialArrowAt === e.start, o = !1;;) {
|
|
2029
2031
|
var s = this.parseSubscript(e, t, n, r, a, o, i);
|
|
2030
2032
|
if (s.optional && (o = !0), s === e || s.type === "ArrowFunctionExpression") {
|
|
@@ -2036,170 +2038,176 @@ V.parseExprSubscripts = function(e, t) {
|
|
|
2036
2038
|
}
|
|
2037
2039
|
e = s;
|
|
2038
2040
|
}
|
|
2039
|
-
},
|
|
2040
|
-
return !this.canInsertSemicolon() && this.eat(
|
|
2041
|
-
},
|
|
2041
|
+
}, H.shouldParseAsyncArrow = function() {
|
|
2042
|
+
return !this.canInsertSemicolon() && this.eat(D.arrow);
|
|
2043
|
+
}, H.parseSubscriptAsyncArrow = function(e, t, n, r) {
|
|
2042
2044
|
return this.parseArrowExpression(this.startNodeAt(e, t), n, !0, r);
|
|
2043
|
-
},
|
|
2044
|
-
var s = this.options.ecmaVersion >= 11, c = s && this.eat(
|
|
2045
|
+
}, H.parseSubscript = function(e, t, n, r, i, a, o) {
|
|
2046
|
+
var s = this.options.ecmaVersion >= 11, c = s && this.eat(D.questionDot);
|
|
2045
2047
|
r && c && this.raise(this.lastTokStart, "Optional chaining cannot appear in the callee of new expressions");
|
|
2046
|
-
var l = this.eat(
|
|
2047
|
-
if (l || c && this.type !==
|
|
2048
|
+
var l = this.eat(D.bracketL);
|
|
2049
|
+
if (l || c && this.type !== D.parenL && this.type !== D.backQuote || this.eat(D.dot)) {
|
|
2048
2050
|
var u = this.startNodeAt(t, n);
|
|
2049
|
-
u.object = e, l ? (u.property = this.parseExpression(), this.expect(
|
|
2050
|
-
} else if (!r && this.eat(
|
|
2051
|
-
var d = new
|
|
2051
|
+
u.object = e, l ? (u.property = this.parseExpression(), this.expect(D.bracketR)) : u.property = this.type === D.privateId && e.type !== "Super" ? this.parsePrivateIdent() : this.parseIdent(this.options.allowReserved !== "never"), u.computed = !!l, s && (u.optional = c), e = this.finishNode(u, "MemberExpression");
|
|
2052
|
+
} else if (!r && this.eat(D.parenL)) {
|
|
2053
|
+
var d = new qe(), f = this.yieldPos, p = this.awaitPos, m = this.awaitIdentPos;
|
|
2052
2054
|
this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0;
|
|
2053
|
-
var
|
|
2054
|
-
if (i && !c && this.shouldParseAsyncArrow()) return this.checkPatternErrors(d, !1), this.checkYieldAwaitInDefaultParams(), this.awaitIdentPos > 0 && this.raise(this.awaitIdentPos, "Cannot use 'await' as identifier inside an async function"), this.yieldPos = f, this.awaitPos = p, this.awaitIdentPos = m, this.parseSubscriptAsyncArrow(t, n,
|
|
2055
|
+
var h = this.parseExprList(D.parenR, this.options.ecmaVersion >= 8, !1, d);
|
|
2056
|
+
if (i && !c && this.shouldParseAsyncArrow()) return this.checkPatternErrors(d, !1), this.checkYieldAwaitInDefaultParams(), this.awaitIdentPos > 0 && this.raise(this.awaitIdentPos, "Cannot use 'await' as identifier inside an async function"), this.yieldPos = f, this.awaitPos = p, this.awaitIdentPos = m, this.parseSubscriptAsyncArrow(t, n, h, o);
|
|
2055
2057
|
this.checkExpressionErrors(d, !0), this.yieldPos = f || this.yieldPos, this.awaitPos = p || this.awaitPos, this.awaitIdentPos = m || this.awaitIdentPos;
|
|
2056
|
-
var h = this.startNodeAt(t, n);
|
|
2057
|
-
h.callee = e, h.arguments = ee, s && (h.optional = c), e = this.finishNode(h, "CallExpression");
|
|
2058
|
-
} else if (this.type === E.backQuote) {
|
|
2059
|
-
(c || a) && this.raise(this.start, "Optional chaining cannot appear in the tag of tagged template expressions");
|
|
2060
2058
|
var g = this.startNodeAt(t, n);
|
|
2061
|
-
g.
|
|
2059
|
+
g.callee = e, g.arguments = h, s && (g.optional = c), e = this.finishNode(g, "CallExpression");
|
|
2060
|
+
} else if (this.type === D.backQuote) {
|
|
2061
|
+
(c || a) && this.raise(this.start, "Optional chaining cannot appear in the tag of tagged template expressions");
|
|
2062
|
+
var _ = this.startNodeAt(t, n);
|
|
2063
|
+
_.tag = e, _.quasi = this.parseTemplate({ isTagged: !0 }), e = this.finishNode(_, "TaggedTemplateExpression");
|
|
2062
2064
|
}
|
|
2063
2065
|
return e;
|
|
2064
|
-
},
|
|
2065
|
-
this.type ===
|
|
2066
|
+
}, H.parseExprAtom = function(e, t, n) {
|
|
2067
|
+
this.type === D.slash && this.readRegexp();
|
|
2066
2068
|
var r, i = this.potentialArrowAt === this.start;
|
|
2067
2069
|
switch (this.type) {
|
|
2068
|
-
case
|
|
2069
|
-
case
|
|
2070
|
-
case
|
|
2070
|
+
case D._super: return this.allowSuper || this.raise(this.start, "'super' keyword outside a method"), r = this.startNode(), this.next(), this.type === D.parenL && !this.allowDirectSuper && this.raise(r.start, "super() call outside constructor of a subclass"), this.type !== D.dot && this.type !== D.bracketL && this.type !== D.parenL && this.unexpected(), this.finishNode(r, "Super");
|
|
2071
|
+
case D._this: return r = this.startNode(), this.next(), this.finishNode(r, "ThisExpression");
|
|
2072
|
+
case D.name:
|
|
2071
2073
|
var a = this.start, o = this.startLoc, s = this.containsEsc, c = this.parseIdent(!1);
|
|
2072
|
-
if (this.options.ecmaVersion >= 8 && !s && c.name === "async" && !this.canInsertSemicolon() && this.eat(
|
|
2074
|
+
if (this.options.ecmaVersion >= 8 && !s && c.name === "async" && !this.canInsertSemicolon() && this.eat(D._function)) return this.overrideContext(V.f_expr), this.parseFunction(this.startNodeAt(a, o), 0, !1, !0, t);
|
|
2073
2075
|
if (i && !this.canInsertSemicolon()) {
|
|
2074
|
-
if (this.eat(
|
|
2075
|
-
if (this.options.ecmaVersion >= 8 && c.name === "async" && this.type ===
|
|
2076
|
+
if (this.eat(D.arrow)) return this.parseArrowExpression(this.startNodeAt(a, o), [c], !1, t);
|
|
2077
|
+
if (this.options.ecmaVersion >= 8 && c.name === "async" && this.type === D.name && !s && (!this.potentialArrowInForAwait || this.value !== "of" || this.containsEsc)) return c = this.parseIdent(!1), (this.canInsertSemicolon() || !this.eat(D.arrow)) && this.unexpected(), this.parseArrowExpression(this.startNodeAt(a, o), [c], !0, t);
|
|
2076
2078
|
}
|
|
2077
2079
|
return c;
|
|
2078
|
-
case
|
|
2080
|
+
case D.regexp:
|
|
2079
2081
|
var l = this.value;
|
|
2080
2082
|
return r = this.parseLiteral(l.value), r.regex = {
|
|
2081
2083
|
pattern: l.pattern,
|
|
2082
2084
|
flags: l.flags
|
|
2083
2085
|
}, r;
|
|
2084
|
-
case
|
|
2085
|
-
case
|
|
2086
|
-
case
|
|
2087
|
-
case
|
|
2088
|
-
case
|
|
2089
|
-
case
|
|
2086
|
+
case D.num:
|
|
2087
|
+
case D.string: return this.parseLiteral(this.value);
|
|
2088
|
+
case D._null:
|
|
2089
|
+
case D._true:
|
|
2090
|
+
case D._false: return r = this.startNode(), r.value = this.type === D._null ? null : this.type === D._true, r.raw = this.type.keyword, this.next(), this.finishNode(r, "Literal");
|
|
2091
|
+
case D.parenL:
|
|
2090
2092
|
var u = this.start, d = this.parseParenAndDistinguishExpression(i, t);
|
|
2091
2093
|
return e && (e.parenthesizedAssign < 0 && !this.isSimpleAssignTarget(d) && (e.parenthesizedAssign = u), e.parenthesizedBind < 0 && (e.parenthesizedBind = u)), d;
|
|
2092
|
-
case
|
|
2093
|
-
case
|
|
2094
|
-
case
|
|
2095
|
-
case
|
|
2096
|
-
case
|
|
2097
|
-
case
|
|
2098
|
-
case
|
|
2094
|
+
case D.bracketL: return r = this.startNode(), this.next(), r.elements = this.parseExprList(D.bracketR, !0, !0, e), this.finishNode(r, "ArrayExpression");
|
|
2095
|
+
case D.braceL: return this.overrideContext(V.b_expr), this.parseObj(!1, e);
|
|
2096
|
+
case D._function: return r = this.startNode(), this.next(), this.parseFunction(r, 0);
|
|
2097
|
+
case D._class: return this.parseClass(this.startNode(), !1);
|
|
2098
|
+
case D._new: return this.parseNew();
|
|
2099
|
+
case D.backQuote: return this.parseTemplate();
|
|
2100
|
+
case D._import: return this.options.ecmaVersion >= 11 ? this.parseExprImport(n) : this.unexpected();
|
|
2099
2101
|
default: return this.parseExprAtomDefault();
|
|
2100
2102
|
}
|
|
2101
|
-
},
|
|
2103
|
+
}, H.parseExprAtomDefault = function() {
|
|
2102
2104
|
this.unexpected();
|
|
2103
|
-
},
|
|
2105
|
+
}, H.parseExprImport = function(e) {
|
|
2104
2106
|
var t = this.startNode();
|
|
2105
|
-
if (this.containsEsc && this.raiseRecoverable(this.start, "Escape sequence in keyword import"), this.next(), this.type ===
|
|
2106
|
-
if (this.type ===
|
|
2107
|
+
if (this.containsEsc && this.raiseRecoverable(this.start, "Escape sequence in keyword import"), this.next(), this.type === D.parenL && !e) return this.parseDynamicImport(t);
|
|
2108
|
+
if (this.type === D.dot) {
|
|
2107
2109
|
var n = this.startNodeAt(t.start, t.loc && t.loc.start);
|
|
2108
2110
|
return n.name = "import", t.meta = this.finishNode(n, "Identifier"), this.parseImportMeta(t);
|
|
2109
|
-
}
|
|
2110
|
-
|
|
2111
|
-
|
|
2112
|
-
|
|
2111
|
+
}
|
|
2112
|
+
this.unexpected();
|
|
2113
|
+
}, H.parseDynamicImport = function(e) {
|
|
2114
|
+
if (this.next(), e.source = this.parseMaybeAssign(), this.options.ecmaVersion >= 16) this.eat(D.parenR) ? e.options = null : (this.expect(D.comma), this.afterTrailingComma(D.parenR) ? e.options = null : (e.options = this.parseMaybeAssign(), this.eat(D.parenR) || (this.expect(D.comma), this.afterTrailingComma(D.parenR) || this.unexpected())));
|
|
2115
|
+
else if (!this.eat(D.parenR)) {
|
|
2113
2116
|
var t = this.start;
|
|
2114
|
-
this.eat(
|
|
2117
|
+
this.eat(D.comma) && this.eat(D.parenR) ? this.raiseRecoverable(t, "Trailing comma is not allowed in import()") : this.unexpected(t);
|
|
2115
2118
|
}
|
|
2116
2119
|
return this.finishNode(e, "ImportExpression");
|
|
2117
|
-
},
|
|
2120
|
+
}, H.parseImportMeta = function(e) {
|
|
2118
2121
|
this.next();
|
|
2119
2122
|
var t = this.containsEsc;
|
|
2120
2123
|
return e.property = this.parseIdent(!0), e.property.name !== "meta" && this.raiseRecoverable(e.property.start, "The only valid meta property for import is 'import.meta'"), t && this.raiseRecoverable(e.start, "'import.meta' must not contain escaped characters"), this.options.sourceType !== "module" && !this.options.allowImportExportEverywhere && this.raiseRecoverable(e.start, "Cannot use 'import.meta' outside a module"), this.finishNode(e, "MetaProperty");
|
|
2121
|
-
},
|
|
2124
|
+
}, H.parseLiteral = function(e) {
|
|
2122
2125
|
var t = this.startNode();
|
|
2123
2126
|
return t.value = e, t.raw = this.input.slice(this.start, this.end), t.raw.charCodeAt(t.raw.length - 1) === 110 && (t.bigint = t.value == null ? t.raw.slice(0, -1).replace(/_/g, "") : t.value.toString()), this.next(), this.finishNode(t, "Literal");
|
|
2124
|
-
},
|
|
2125
|
-
this.expect(
|
|
2127
|
+
}, H.parseParenExpression = function() {
|
|
2128
|
+
this.expect(D.parenL);
|
|
2126
2129
|
var e = this.parseExpression();
|
|
2127
|
-
return this.expect(
|
|
2128
|
-
},
|
|
2130
|
+
return this.expect(D.parenR), e;
|
|
2131
|
+
}, H.shouldParseArrow = function(e) {
|
|
2129
2132
|
return !this.canInsertSemicolon();
|
|
2130
|
-
},
|
|
2133
|
+
}, H.parseParenAndDistinguishExpression = function(e, t) {
|
|
2131
2134
|
var n = this.start, r = this.startLoc, i, a = this.options.ecmaVersion >= 8;
|
|
2132
2135
|
if (this.options.ecmaVersion >= 6) {
|
|
2133
2136
|
this.next();
|
|
2134
|
-
var o = this.start, s = this.startLoc, c = [], l = !0, u = !1, d = new
|
|
2135
|
-
for (this.yieldPos = 0, this.awaitPos = 0; this.type !==
|
|
2136
|
-
|
|
2137
|
-
|
|
2138
|
-
|
|
2139
|
-
|
|
2140
|
-
|
|
2141
|
-
|
|
2142
|
-
|
|
2143
|
-
|
|
2144
|
-
|
|
2137
|
+
var o = this.start, s = this.startLoc, c = [], l = !0, u = !1, d = new qe(), f = this.yieldPos, p = this.awaitPos, m;
|
|
2138
|
+
for (this.yieldPos = 0, this.awaitPos = 0; this.type !== D.parenR;) {
|
|
2139
|
+
if (l ? l = !1 : this.expect(D.comma), a && this.afterTrailingComma(D.parenR, !0)) {
|
|
2140
|
+
u = !0;
|
|
2141
|
+
break;
|
|
2142
|
+
}
|
|
2143
|
+
if (this.type === D.ellipsis) {
|
|
2144
|
+
m = this.start, c.push(this.parseParenItem(this.parseRestBinding())), this.type === D.comma && this.raiseRecoverable(this.start, "Comma is not permitted after the rest element");
|
|
2145
|
+
break;
|
|
2146
|
+
}
|
|
2147
|
+
c.push(this.parseMaybeAssign(!1, d, this.parseParenItem));
|
|
2148
|
+
}
|
|
2149
|
+
var h = this.lastTokEnd, g = this.lastTokEndLoc;
|
|
2150
|
+
if (this.expect(D.parenR), e && this.shouldParseArrow(c) && this.eat(D.arrow)) return this.checkPatternErrors(d, !1), this.checkYieldAwaitInDefaultParams(), this.yieldPos = f, this.awaitPos = p, this.parseParenArrowList(n, r, c, t);
|
|
2151
|
+
(!c.length || u) && this.unexpected(this.lastTokStart), m && this.unexpected(m), this.checkExpressionErrors(d, !0), this.yieldPos = f || this.yieldPos, this.awaitPos = p || this.awaitPos, c.length > 1 ? (i = this.startNodeAt(o, s), i.expressions = c, this.finishNodeAt(i, "SequenceExpression", h, g)) : i = c[0];
|
|
2145
2152
|
} else i = this.parseParenExpression();
|
|
2146
2153
|
if (this.options.preserveParens) {
|
|
2147
|
-
var
|
|
2148
|
-
return
|
|
2149
|
-
}
|
|
2150
|
-
|
|
2154
|
+
var _ = this.startNodeAt(n, r);
|
|
2155
|
+
return _.expression = i, this.finishNode(_, "ParenthesizedExpression");
|
|
2156
|
+
}
|
|
2157
|
+
return i;
|
|
2158
|
+
}, H.parseParenItem = function(e) {
|
|
2151
2159
|
return e;
|
|
2152
|
-
},
|
|
2160
|
+
}, H.parseParenArrowList = function(e, t, n, r) {
|
|
2153
2161
|
return this.parseArrowExpression(this.startNodeAt(e, t), n, !1, r);
|
|
2154
2162
|
};
|
|
2155
|
-
var
|
|
2156
|
-
|
|
2163
|
+
var at = [];
|
|
2164
|
+
H.parseNew = function() {
|
|
2157
2165
|
this.containsEsc && this.raiseRecoverable(this.start, "Escape sequence in keyword new");
|
|
2158
2166
|
var e = this.startNode();
|
|
2159
|
-
if (this.next(), this.options.ecmaVersion >= 6 && this.type ===
|
|
2167
|
+
if (this.next(), this.options.ecmaVersion >= 6 && this.type === D.dot) {
|
|
2160
2168
|
var t = this.startNodeAt(e.start, e.loc && e.loc.start);
|
|
2161
2169
|
t.name = "new", e.meta = this.finishNode(t, "Identifier"), this.next();
|
|
2162
2170
|
var n = this.containsEsc;
|
|
2163
2171
|
return e.property = this.parseIdent(!0), e.property.name !== "target" && this.raiseRecoverable(e.property.start, "The only valid meta property for new is 'new.target'"), n && this.raiseRecoverable(e.start, "'new.target' must not contain escaped characters"), this.allowNewDotTarget || this.raiseRecoverable(e.start, "'new.target' can only be used in functions and class static block"), this.finishNode(e, "MetaProperty");
|
|
2164
2172
|
}
|
|
2165
2173
|
var r = this.start, i = this.startLoc;
|
|
2166
|
-
return e.callee = this.parseSubscripts(this.parseExprAtom(null, !1, !0), r, i, !0, !1), e.callee.type === "Super" && this.raiseRecoverable(r, "Invalid use of 'super'"), this.eat(
|
|
2167
|
-
},
|
|
2174
|
+
return e.callee = this.parseSubscripts(this.parseExprAtom(null, !1, !0), r, i, !0, !1), e.callee.type === "Super" && this.raiseRecoverable(r, "Invalid use of 'super'"), e.arguments = this.eat(D.parenL) ? this.parseExprList(D.parenR, this.options.ecmaVersion >= 8, !1) : at, this.finishNode(e, "NewExpression");
|
|
2175
|
+
}, H.parseTemplateElement = function(e) {
|
|
2168
2176
|
var t = e.isTagged, n = this.startNode();
|
|
2169
|
-
return this.type ===
|
|
2177
|
+
return this.type === D.invalidTemplate ? (t || this.raiseRecoverable(this.start, "Bad escape sequence in untagged template literal"), n.value = {
|
|
2170
2178
|
raw: this.value.replace(/\r\n?/g, "\n"),
|
|
2171
2179
|
cooked: null
|
|
2172
2180
|
}) : n.value = {
|
|
2173
2181
|
raw: this.input.slice(this.start, this.end).replace(/\r\n?/g, "\n"),
|
|
2174
2182
|
cooked: this.value
|
|
2175
|
-
}, this.next(), n.tail = this.type ===
|
|
2176
|
-
},
|
|
2183
|
+
}, this.next(), n.tail = this.type === D.backQuote, this.finishNode(n, "TemplateElement");
|
|
2184
|
+
}, H.parseTemplate = function(e) {
|
|
2177
2185
|
e === void 0 && (e = {});
|
|
2178
2186
|
var t = e.isTagged;
|
|
2179
2187
|
t === void 0 && (t = !1);
|
|
2180
2188
|
var n = this.startNode();
|
|
2181
2189
|
this.next(), n.expressions = [];
|
|
2182
2190
|
var r = this.parseTemplateElement({ isTagged: t });
|
|
2183
|
-
for (n.quasis = [r]; !r.tail;) this.type ===
|
|
2191
|
+
for (n.quasis = [r]; !r.tail;) this.type === D.eof && this.raise(this.pos, "Unterminated template literal"), this.expect(D.dollarBraceL), n.expressions.push(this.parseExpression()), this.expect(D.braceR), n.quasis.push(r = this.parseTemplateElement({ isTagged: t }));
|
|
2184
2192
|
return this.next(), this.finishNode(n, "TemplateLiteral");
|
|
2185
|
-
},
|
|
2186
|
-
return !e.computed && e.key.type === "Identifier" && e.key.name === "async" && (this.type ===
|
|
2187
|
-
},
|
|
2193
|
+
}, H.isAsyncProp = function(e) {
|
|
2194
|
+
return !e.computed && e.key.type === "Identifier" && e.key.name === "async" && (this.type === D.name || this.type === D.num || this.type === D.string || this.type === D.bracketL || this.type.keyword || this.options.ecmaVersion >= 9 && this.type === D.star) && !O.test(this.input.slice(this.lastTokEnd, this.start));
|
|
2195
|
+
}, H.parseObj = function(e, t) {
|
|
2188
2196
|
var n = this.startNode(), r = !0, i = {};
|
|
2189
|
-
for (n.properties = [], this.next(); !this.eat(
|
|
2197
|
+
for (n.properties = [], this.next(); !this.eat(D.braceR);) {
|
|
2190
2198
|
if (r) r = !1;
|
|
2191
|
-
else if (this.expect(
|
|
2199
|
+
else if (this.expect(D.comma), this.options.ecmaVersion >= 5 && this.afterTrailingComma(D.braceR)) break;
|
|
2192
2200
|
var a = this.parseProperty(e, t);
|
|
2193
2201
|
e || this.checkPropClash(a, i, t), n.properties.push(a);
|
|
2194
2202
|
}
|
|
2195
2203
|
return this.finishNode(n, e ? "ObjectPattern" : "ObjectExpression");
|
|
2196
|
-
},
|
|
2204
|
+
}, H.parseProperty = function(e, t) {
|
|
2197
2205
|
var n = this.startNode(), r, i, a, o;
|
|
2198
|
-
if (this.options.ecmaVersion >= 9 && this.eat(
|
|
2199
|
-
this.options.ecmaVersion >= 6 && (n.method = !1, n.shorthand = !1, (e || t) && (a = this.start, o = this.startLoc), e || (r = this.eat(
|
|
2206
|
+
if (this.options.ecmaVersion >= 9 && this.eat(D.ellipsis)) return e ? (n.argument = this.parseIdent(!1), this.type === D.comma && this.raiseRecoverable(this.start, "Comma is not permitted after the rest element"), this.finishNode(n, "RestElement")) : (n.argument = this.parseMaybeAssign(!1, t), this.type === D.comma && t && t.trailingComma < 0 && (t.trailingComma = this.start), this.finishNode(n, "SpreadElement"));
|
|
2207
|
+
this.options.ecmaVersion >= 6 && (n.method = !1, n.shorthand = !1, (e || t) && (a = this.start, o = this.startLoc), e || (r = this.eat(D.star)));
|
|
2200
2208
|
var s = this.containsEsc;
|
|
2201
|
-
return this.parsePropertyName(n), !e && !s && this.options.ecmaVersion >= 8 && !r && this.isAsyncProp(n) ? (i = !0, r = this.options.ecmaVersion >= 9 && this.eat(
|
|
2202
|
-
},
|
|
2209
|
+
return this.parsePropertyName(n), !e && !s && this.options.ecmaVersion >= 8 && !r && this.isAsyncProp(n) ? (i = !0, r = this.options.ecmaVersion >= 9 && this.eat(D.star), this.parsePropertyName(n)) : i = !1, this.parsePropertyValue(n, e, r, i, a, o, t, s), this.finishNode(n, "Property");
|
|
2210
|
+
}, H.parseGetterSetter = function(e) {
|
|
2203
2211
|
var t = e.key.name;
|
|
2204
2212
|
this.parsePropertyName(e), e.value = this.parseMethod(!1), e.kind = t;
|
|
2205
2213
|
var n = e.kind === "get" ? 0 : 1;
|
|
@@ -2207,202 +2215,202 @@ V.parseNew = function() {
|
|
|
2207
2215
|
var r = e.value.start;
|
|
2208
2216
|
e.kind === "get" ? this.raiseRecoverable(r, "getter should have no params") : this.raiseRecoverable(r, "setter should have exactly one param");
|
|
2209
2217
|
} else e.kind === "set" && e.value.params[0].type === "RestElement" && this.raiseRecoverable(e.value.params[0].start, "Setter cannot use rest params");
|
|
2210
|
-
},
|
|
2211
|
-
(n || r) && this.type ===
|
|
2212
|
-
},
|
|
2218
|
+
}, H.parsePropertyValue = function(e, t, n, r, i, a, o, s) {
|
|
2219
|
+
(n || r) && this.type === D.colon && this.unexpected(), this.eat(D.colon) ? (e.value = t ? this.parseMaybeDefault(this.start, this.startLoc) : this.parseMaybeAssign(!1, o), e.kind = "init") : this.options.ecmaVersion >= 6 && this.type === D.parenL ? (t && this.unexpected(), e.method = !0, e.value = this.parseMethod(n, r), e.kind = "init") : !t && !s && this.options.ecmaVersion >= 5 && !e.computed && e.key.type === "Identifier" && (e.key.name === "get" || e.key.name === "set") && this.type !== D.comma && this.type !== D.braceR && this.type !== D.eq ? ((n || r) && this.unexpected(), this.parseGetterSetter(e)) : this.options.ecmaVersion >= 6 && !e.computed && e.key.type === "Identifier" ? ((n || r) && this.unexpected(), this.checkUnreserved(e.key), e.key.name === "await" && !this.awaitIdentPos && (this.awaitIdentPos = i), t ? e.value = this.parseMaybeDefault(i, a, this.copyNode(e.key)) : this.type === D.eq && o ? (o.shorthandAssign < 0 && (o.shorthandAssign = this.start), e.value = this.parseMaybeDefault(i, a, this.copyNode(e.key))) : e.value = this.copyNode(e.key), e.kind = "init", e.shorthand = !0) : this.unexpected();
|
|
2220
|
+
}, H.parsePropertyName = function(e) {
|
|
2213
2221
|
if (this.options.ecmaVersion >= 6) {
|
|
2214
|
-
if (this.eat(
|
|
2222
|
+
if (this.eat(D.bracketL)) return e.computed = !0, e.key = this.parseMaybeAssign(), this.expect(D.bracketR), e.key;
|
|
2215
2223
|
e.computed = !1;
|
|
2216
2224
|
}
|
|
2217
|
-
return e.key = this.type ===
|
|
2218
|
-
},
|
|
2225
|
+
return e.key = this.type === D.num || this.type === D.string ? this.parseExprAtom() : this.parseIdent(this.options.allowReserved !== "never");
|
|
2226
|
+
}, H.initFunction = function(e) {
|
|
2219
2227
|
e.id = null, this.options.ecmaVersion >= 6 && (e.generator = e.expression = !1), this.options.ecmaVersion >= 8 && (e.async = !1);
|
|
2220
|
-
},
|
|
2228
|
+
}, H.parseMethod = function(e, t, n) {
|
|
2221
2229
|
var r = this.startNode(), i = this.yieldPos, a = this.awaitPos, o = this.awaitIdentPos;
|
|
2222
|
-
return this.initFunction(r), this.options.ecmaVersion >= 6 && (r.generator = e), this.options.ecmaVersion >= 8 && (r.async = !!t), this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, this.enterScope(
|
|
2223
|
-
},
|
|
2230
|
+
return this.initFunction(r), this.options.ecmaVersion >= 6 && (r.generator = e), this.options.ecmaVersion >= 8 && (r.async = !!t), this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, this.enterScope(Be(t, r.generator) | Fe | (n ? Ie : 0)), this.expect(D.parenL), r.params = this.parseBindingList(D.parenR, !1, this.options.ecmaVersion >= 8), this.checkYieldAwaitInDefaultParams(), this.parseFunctionBody(r, !1, !0, !1), this.yieldPos = i, this.awaitPos = a, this.awaitIdentPos = o, this.finishNode(r, "FunctionExpression");
|
|
2231
|
+
}, H.parseArrowExpression = function(e, t, n, r) {
|
|
2224
2232
|
var i = this.yieldPos, a = this.awaitPos, o = this.awaitIdentPos;
|
|
2225
|
-
return this.enterScope(
|
|
2226
|
-
},
|
|
2227
|
-
var i = t && this.type !==
|
|
2233
|
+
return this.enterScope(Be(n, !1) | Ne), this.initFunction(e), this.options.ecmaVersion >= 8 && (e.async = !!n), this.yieldPos = 0, this.awaitPos = 0, this.awaitIdentPos = 0, e.params = this.toAssignableList(t, !0), this.parseFunctionBody(e, !0, !1, r), this.yieldPos = i, this.awaitPos = a, this.awaitIdentPos = o, this.finishNode(e, "ArrowFunctionExpression");
|
|
2234
|
+
}, H.parseFunctionBody = function(e, t, n, r) {
|
|
2235
|
+
var i = t && this.type !== D.braceL, a = this.strict, o = !1;
|
|
2228
2236
|
if (i) e.body = this.parseMaybeAssign(r), e.expression = !0, this.checkParams(e, !1);
|
|
2229
2237
|
else {
|
|
2230
2238
|
var s = this.options.ecmaVersion >= 7 && !this.isSimpleParamList(e.params);
|
|
2231
2239
|
(!a || s) && (o = this.strictDirective(this.end), o && s && this.raiseRecoverable(e.start, "Illegal 'use strict' directive in function with non-simple parameter list"));
|
|
2232
2240
|
var c = this.labels;
|
|
2233
|
-
this.labels = [], o && (this.strict = !0), this.checkParams(e, !a && !o && !t && !n && this.isSimpleParamList(e.params)), this.strict && e.id && this.checkLValSimple(e.id,
|
|
2241
|
+
this.labels = [], o && (this.strict = !0), this.checkParams(e, !a && !o && !t && !n && this.isSimpleParamList(e.params)), this.strict && e.id && this.checkLValSimple(e.id, Ge), e.body = this.parseBlock(!1, void 0, o && !a), e.expression = !1, this.adaptDirectivePrologue(e.body.body), this.labels = c;
|
|
2234
2242
|
}
|
|
2235
2243
|
this.exitScope();
|
|
2236
|
-
},
|
|
2244
|
+
}, H.isSimpleParamList = function(e) {
|
|
2237
2245
|
for (var t = 0, n = e; t < n.length; t += 1) if (n[t].type !== "Identifier") return !1;
|
|
2238
2246
|
return !0;
|
|
2239
|
-
},
|
|
2247
|
+
}, H.checkParams = function(e, t) {
|
|
2240
2248
|
for (var n = Object.create(null), r = 0, i = e.params; r < i.length; r += 1) {
|
|
2241
2249
|
var a = i[r];
|
|
2242
|
-
this.checkLValInnerPattern(a,
|
|
2250
|
+
this.checkLValInnerPattern(a, He, t ? null : n);
|
|
2243
2251
|
}
|
|
2244
|
-
},
|
|
2252
|
+
}, H.parseExprList = function(e, t, n, r) {
|
|
2245
2253
|
for (var i = [], a = !0; !this.eat(e);) {
|
|
2246
2254
|
if (a) a = !1;
|
|
2247
|
-
else if (this.expect(
|
|
2255
|
+
else if (this.expect(D.comma), t && this.afterTrailingComma(e)) break;
|
|
2248
2256
|
var o = void 0;
|
|
2249
|
-
n && this.type ===
|
|
2257
|
+
n && this.type === D.comma ? o = null : this.type === D.ellipsis ? (o = this.parseSpread(r), r && this.type === D.comma && r.trailingComma < 0 && (r.trailingComma = this.start)) : o = this.parseMaybeAssign(!1, r), i.push(o);
|
|
2250
2258
|
}
|
|
2251
2259
|
return i;
|
|
2252
|
-
},
|
|
2260
|
+
}, H.checkUnreserved = function(e) {
|
|
2253
2261
|
var t = e.start, n = e.end, r = e.name;
|
|
2254
|
-
this.inGenerator && r === "yield" && this.raiseRecoverable(t, "Cannot use 'yield' as identifier inside a generator"), this.inAsync && r === "await" && this.raiseRecoverable(t, "Cannot use 'await' as identifier inside an async function"), !(this.currentThisScope().flags &
|
|
2255
|
-
},
|
|
2262
|
+
this.inGenerator && r === "yield" && this.raiseRecoverable(t, "Cannot use 'yield' as identifier inside a generator"), this.inAsync && r === "await" && this.raiseRecoverable(t, "Cannot use 'await' as identifier inside an async function"), !(this.currentThisScope().flags & ze) && r === "arguments" && this.raiseRecoverable(t, "Cannot use 'arguments' in class field initializer"), this.inClassStaticBlock && (r === "arguments" || r === "await") && this.raise(t, "Cannot use " + r + " in class static initialization block"), this.keywords.test(r) && this.raise(t, "Unexpected keyword '" + r + "'"), !(this.options.ecmaVersion < 6 && this.input.slice(t, n).indexOf("\\") !== -1) && (this.strict ? this.reservedWordsStrict : this.reservedWords).test(r) && (!this.inAsync && r === "await" && this.raiseRecoverable(t, "Cannot use keyword 'await' outside an async function"), this.raiseRecoverable(t, "The keyword '" + r + "' is reserved"));
|
|
2263
|
+
}, H.parseIdent = function(e) {
|
|
2256
2264
|
var t = this.parseIdentNode();
|
|
2257
2265
|
return this.next(!!e), this.finishNode(t, "Identifier"), e || (this.checkUnreserved(t), t.name === "await" && !this.awaitIdentPos && (this.awaitIdentPos = t.start)), t;
|
|
2258
|
-
},
|
|
2266
|
+
}, H.parseIdentNode = function() {
|
|
2259
2267
|
var e = this.startNode();
|
|
2260
|
-
return this.type ===
|
|
2261
|
-
},
|
|
2268
|
+
return this.type === D.name ? e.name = this.value : this.type.keyword ? (e.name = this.type.keyword, (e.name === "class" || e.name === "function") && (this.lastTokEnd !== this.lastTokStart + 1 || this.input.charCodeAt(this.lastTokStart) !== 46) && this.context.pop(), this.type = D.name) : this.unexpected(), e;
|
|
2269
|
+
}, H.parsePrivateIdent = function() {
|
|
2262
2270
|
var e = this.startNode();
|
|
2263
|
-
return this.type ===
|
|
2264
|
-
},
|
|
2271
|
+
return this.type === D.privateId ? e.name = this.value : this.unexpected(), this.next(), this.finishNode(e, "PrivateIdentifier"), this.options.checkPrivateFields && (this.privateNameStack.length === 0 ? this.raise(e.start, "Private field '#" + e.name + "' must be declared in an enclosing class") : this.privateNameStack[this.privateNameStack.length - 1].used.push(e)), e;
|
|
2272
|
+
}, H.parseYield = function(e) {
|
|
2265
2273
|
this.yieldPos ||= this.start;
|
|
2266
2274
|
var t = this.startNode();
|
|
2267
|
-
return this.next(), this.type ===
|
|
2268
|
-
},
|
|
2275
|
+
return this.next(), this.type === D.semi || this.canInsertSemicolon() || this.type !== D.star && !this.type.startsExpr ? (t.delegate = !1, t.argument = null) : (t.delegate = this.eat(D.star), t.argument = this.parseMaybeAssign(e)), this.finishNode(t, "YieldExpression");
|
|
2276
|
+
}, H.parseAwait = function(e) {
|
|
2269
2277
|
this.awaitPos ||= this.start;
|
|
2270
2278
|
var t = this.startNode();
|
|
2271
2279
|
return this.next(), t.argument = this.parseMaybeUnary(null, !0, !1, e), this.finishNode(t, "AwaitExpression");
|
|
2272
2280
|
};
|
|
2273
|
-
var
|
|
2274
|
-
|
|
2275
|
-
var n =
|
|
2281
|
+
var ot = F.prototype;
|
|
2282
|
+
ot.raise = function(e, t) {
|
|
2283
|
+
var n = Te(this.input, e);
|
|
2276
2284
|
t += " (" + n.line + ":" + n.column + ")", this.sourceFile && (t += " in " + this.sourceFile);
|
|
2277
2285
|
var r = SyntaxError(t);
|
|
2278
2286
|
throw r.pos = e, r.loc = n, r.raisedAt = this.pos, r;
|
|
2279
|
-
},
|
|
2280
|
-
if (this.options.locations) return new
|
|
2287
|
+
}, ot.raiseRecoverable = ot.raise, ot.curPosition = function() {
|
|
2288
|
+
if (this.options.locations) return new Ce(this.curLine, this.pos - this.lineStart);
|
|
2281
2289
|
};
|
|
2282
|
-
var
|
|
2290
|
+
var U = F.prototype, st = function(e) {
|
|
2283
2291
|
this.flags = e, this.var = [], this.lexical = [], this.functions = [];
|
|
2284
2292
|
};
|
|
2285
|
-
|
|
2286
|
-
this.scopeStack.push(new
|
|
2287
|
-
},
|
|
2293
|
+
U.enterScope = function(e) {
|
|
2294
|
+
this.scopeStack.push(new st(e));
|
|
2295
|
+
}, U.exitScope = function() {
|
|
2288
2296
|
this.scopeStack.pop();
|
|
2289
|
-
},
|
|
2290
|
-
return e.flags & M || !this.inModule && e.flags &
|
|
2291
|
-
},
|
|
2297
|
+
}, U.treatFunctionsAsVarInScope = function(e) {
|
|
2298
|
+
return e.flags & M || !this.inModule && e.flags & Ae;
|
|
2299
|
+
}, U.declareName = function(e, t, n) {
|
|
2292
2300
|
var r = !1;
|
|
2293
|
-
if (t ===
|
|
2301
|
+
if (t === P) {
|
|
2294
2302
|
var i = this.currentScope();
|
|
2295
|
-
r = i.lexical.indexOf(e) > -1 || i.functions.indexOf(e) > -1 || i.var.indexOf(e) > -1, i.lexical.push(e), this.inModule && i.flags &
|
|
2296
|
-
} else if (t ===
|
|
2297
|
-
else if (t ===
|
|
2303
|
+
r = i.lexical.indexOf(e) > -1 || i.functions.indexOf(e) > -1 || i.var.indexOf(e) > -1, i.lexical.push(e), this.inModule && i.flags & Ae && delete this.undefinedExports[e];
|
|
2304
|
+
} else if (t === We) this.currentScope().lexical.push(e);
|
|
2305
|
+
else if (t === Ue) {
|
|
2298
2306
|
var a = this.currentScope();
|
|
2299
2307
|
r = this.treatFunctionsAsVar ? a.lexical.indexOf(e) > -1 : a.lexical.indexOf(e) > -1 || a.var.indexOf(e) > -1, a.functions.push(e);
|
|
2300
2308
|
} else for (var o = this.scopeStack.length - 1; o >= 0; --o) {
|
|
2301
2309
|
var s = this.scopeStack[o];
|
|
2302
|
-
if (s.lexical.indexOf(e) > -1 && !(s.flags &
|
|
2310
|
+
if (s.lexical.indexOf(e) > -1 && !(s.flags & Pe && s.lexical[0] === e) || !this.treatFunctionsAsVarInScope(s) && s.functions.indexOf(e) > -1) {
|
|
2303
2311
|
r = !0;
|
|
2304
2312
|
break;
|
|
2305
2313
|
}
|
|
2306
|
-
if (s.var.push(e), this.inModule && s.flags &
|
|
2314
|
+
if (s.var.push(e), this.inModule && s.flags & Ae && delete this.undefinedExports[e], s.flags & ze) break;
|
|
2307
2315
|
}
|
|
2308
2316
|
r && this.raiseRecoverable(n, "Identifier '" + e + "' has already been declared");
|
|
2309
|
-
},
|
|
2317
|
+
}, U.checkLocalExport = function(e) {
|
|
2310
2318
|
this.scopeStack[0].lexical.indexOf(e.name) === -1 && this.scopeStack[0].var.indexOf(e.name) === -1 && (this.undefinedExports[e.name] = e);
|
|
2311
|
-
},
|
|
2319
|
+
}, U.currentScope = function() {
|
|
2312
2320
|
return this.scopeStack[this.scopeStack.length - 1];
|
|
2313
|
-
},
|
|
2321
|
+
}, U.currentVarScope = function() {
|
|
2314
2322
|
for (var e = this.scopeStack.length - 1;; e--) {
|
|
2315
2323
|
var t = this.scopeStack[e];
|
|
2316
|
-
if (t.flags & (
|
|
2324
|
+
if (t.flags & (ze | Le | N)) return t;
|
|
2317
2325
|
}
|
|
2318
|
-
},
|
|
2326
|
+
}, U.currentThisScope = function() {
|
|
2319
2327
|
for (var e = this.scopeStack.length - 1;; e--) {
|
|
2320
2328
|
var t = this.scopeStack[e];
|
|
2321
|
-
if (t.flags & (
|
|
2329
|
+
if (t.flags & (ze | Le | N) && !(t.flags & Ne)) return t;
|
|
2322
2330
|
}
|
|
2323
2331
|
};
|
|
2324
|
-
var
|
|
2325
|
-
this.type = "", this.start = t, this.end = 0, e.options.locations && (this.loc = new
|
|
2326
|
-
},
|
|
2327
|
-
|
|
2328
|
-
return new
|
|
2329
|
-
},
|
|
2330
|
-
return new
|
|
2332
|
+
var ct = function(e, t, n) {
|
|
2333
|
+
this.type = "", this.start = t, this.end = 0, e.options.locations && (this.loc = new we(e, n)), e.options.directSourceFile && (this.sourceFile = e.options.directSourceFile), e.options.ranges && (this.range = [t, 0]);
|
|
2334
|
+
}, lt = F.prototype;
|
|
2335
|
+
lt.startNode = function() {
|
|
2336
|
+
return new ct(this, this.start, this.startLoc);
|
|
2337
|
+
}, lt.startNodeAt = function(e, t) {
|
|
2338
|
+
return new ct(this, e, t);
|
|
2331
2339
|
};
|
|
2332
|
-
function
|
|
2340
|
+
function ut(e, t, n, r) {
|
|
2333
2341
|
return e.type = t, e.end = n, this.options.locations && (e.loc.end = r), this.options.ranges && (e.range[1] = n), e;
|
|
2334
2342
|
}
|
|
2335
|
-
|
|
2336
|
-
return
|
|
2337
|
-
},
|
|
2338
|
-
return
|
|
2339
|
-
},
|
|
2340
|
-
var t = new
|
|
2343
|
+
lt.finishNode = function(e, t) {
|
|
2344
|
+
return ut.call(this, e, t, this.lastTokEnd, this.lastTokEndLoc);
|
|
2345
|
+
}, lt.finishNodeAt = function(e, t, n, r) {
|
|
2346
|
+
return ut.call(this, e, t, n, r);
|
|
2347
|
+
}, lt.copyNode = function(e) {
|
|
2348
|
+
var t = new ct(this, e.start, this.startLoc);
|
|
2341
2349
|
for (var n in e) t[n] = e[n];
|
|
2342
2350
|
return t;
|
|
2343
2351
|
};
|
|
2344
|
-
var
|
|
2345
|
-
9:
|
|
2346
|
-
10:
|
|
2347
|
-
11:
|
|
2348
|
-
12:
|
|
2349
|
-
13:
|
|
2350
|
-
14:
|
|
2351
|
-
},
|
|
2352
|
+
var dt = "Berf Beria_Erfe Gara Garay Gukh Gurung_Khema Hrkt Katakana_Or_Hiragana Kawi Kirat_Rai Krai Nag_Mundari Nagm Ol_Onal Onao Sidetic Sidt Sunu Sunuwar Tai_Yo Tayo Todhri Todr Tolong_Siki Tols Tulu_Tigalari Tutg Unknown Zzzz", ft = "ASCII ASCII_Hex_Digit AHex Alphabetic Alpha Any Assigned Bidi_Control Bidi_C Bidi_Mirrored Bidi_M Case_Ignorable CI Cased Changes_When_Casefolded CWCF Changes_When_Casemapped CWCM Changes_When_Lowercased CWL Changes_When_NFKC_Casefolded CWKCF Changes_When_Titlecased CWT Changes_When_Uppercased CWU Dash Default_Ignorable_Code_Point DI Deprecated Dep Diacritic Dia Emoji Emoji_Component Emoji_Modifier Emoji_Modifier_Base Emoji_Presentation Extender Ext Grapheme_Base Gr_Base Grapheme_Extend Gr_Ext Hex_Digit Hex IDS_Binary_Operator IDSB IDS_Trinary_Operator IDST ID_Continue IDC ID_Start IDS Ideographic Ideo Join_Control Join_C Logical_Order_Exception LOE Lowercase Lower Math Noncharacter_Code_Point NChar Pattern_Syntax Pat_Syn Pattern_White_Space Pat_WS Quotation_Mark QMark Radical Regional_Indicator RI Sentence_Terminal STerm Soft_Dotted SD Terminal_Punctuation Term Unified_Ideograph UIdeo Uppercase Upper Variation_Selector VS White_Space space XID_Continue XIDC XID_Start XIDS", pt = ft + " Extended_Pictographic", mt = pt, ht = mt + " EBase EComp EMod EPres ExtPict", gt = ht, _t = {
|
|
2353
|
+
9: ft,
|
|
2354
|
+
10: pt,
|
|
2355
|
+
11: mt,
|
|
2356
|
+
12: ht,
|
|
2357
|
+
13: gt,
|
|
2358
|
+
14: gt
|
|
2359
|
+
}, vt = {
|
|
2352
2360
|
9: "",
|
|
2353
2361
|
10: "",
|
|
2354
2362
|
11: "",
|
|
2355
2363
|
12: "",
|
|
2356
2364
|
13: "",
|
|
2357
2365
|
14: "Basic_Emoji Emoji_Keycap_Sequence RGI_Emoji_Modifier_Sequence RGI_Emoji_Flag_Sequence RGI_Emoji_Tag_Sequence RGI_Emoji_ZWJ_Sequence RGI_Emoji"
|
|
2358
|
-
},
|
|
2359
|
-
9:
|
|
2360
|
-
10:
|
|
2361
|
-
11:
|
|
2362
|
-
12:
|
|
2363
|
-
13:
|
|
2364
|
-
14:
|
|
2365
|
-
},
|
|
2366
|
-
function
|
|
2367
|
-
var t =
|
|
2368
|
-
binary:
|
|
2369
|
-
binaryOfStrings:
|
|
2366
|
+
}, yt = "Cased_Letter LC Close_Punctuation Pe Connector_Punctuation Pc Control Cc cntrl Currency_Symbol Sc Dash_Punctuation Pd Decimal_Number Nd digit Enclosing_Mark Me Final_Punctuation Pf Format Cf Initial_Punctuation Pi Letter L Letter_Number Nl Line_Separator Zl Lowercase_Letter Ll Mark M Combining_Mark Math_Symbol Sm Modifier_Letter Lm Modifier_Symbol Sk Nonspacing_Mark Mn Number N Open_Punctuation Ps Other C Other_Letter Lo Other_Number No Other_Punctuation Po Other_Symbol So Paragraph_Separator Zp Private_Use Co Punctuation P punct Separator Z Space_Separator Zs Spacing_Mark Mc Surrogate Cs Symbol S Titlecase_Letter Lt Unassigned Cn Uppercase_Letter Lu", bt = "Adlam Adlm Ahom Anatolian_Hieroglyphs Hluw Arabic Arab Armenian Armn Avestan Avst Balinese Bali Bamum Bamu Bassa_Vah Bass Batak Batk Bengali Beng Bhaiksuki Bhks Bopomofo Bopo Brahmi Brah Braille Brai Buginese Bugi Buhid Buhd Canadian_Aboriginal Cans Carian Cari Caucasian_Albanian Aghb Chakma Cakm Cham Cham Cherokee Cher Common Zyyy Coptic Copt Qaac Cuneiform Xsux Cypriot Cprt Cyrillic Cyrl Deseret Dsrt Devanagari Deva Duployan Dupl Egyptian_Hieroglyphs Egyp Elbasan Elba Ethiopic Ethi Georgian Geor Glagolitic Glag Gothic Goth Grantha Gran Greek Grek Gujarati Gujr Gurmukhi Guru Han Hani Hangul Hang Hanunoo Hano Hatran Hatr Hebrew Hebr Hiragana Hira Imperial_Aramaic Armi Inherited Zinh Qaai Inscriptional_Pahlavi Phli Inscriptional_Parthian Prti Javanese Java Kaithi Kthi Kannada Knda Katakana Kana Kayah_Li Kali Kharoshthi Khar Khmer Khmr Khojki Khoj Khudawadi Sind Lao Laoo Latin Latn Lepcha Lepc Limbu Limb Linear_A Lina Linear_B Linb Lisu Lisu Lycian Lyci Lydian Lydi Mahajani Mahj Malayalam Mlym Mandaic Mand Manichaean Mani Marchen Marc Masaram_Gondi Gonm Meetei_Mayek Mtei Mende_Kikakui Mend Meroitic_Cursive Merc Meroitic_Hieroglyphs Mero Miao Plrd Modi Mongolian Mong Mro Mroo Multani Mult Myanmar Mymr Nabataean Nbat New_Tai_Lue Talu Newa Newa Nko Nkoo Nushu Nshu Ogham Ogam Ol_Chiki Olck Old_Hungarian Hung Old_Italic Ital Old_North_Arabian Narb Old_Permic Perm Old_Persian Xpeo Old_South_Arabian Sarb Old_Turkic Orkh Oriya Orya Osage Osge Osmanya Osma Pahawh_Hmong Hmng Palmyrene Palm Pau_Cin_Hau Pauc Phags_Pa Phag Phoenician Phnx Psalter_Pahlavi Phlp Rejang Rjng Runic Runr Samaritan Samr Saurashtra Saur Sharada Shrd Shavian Shaw Siddham Sidd SignWriting Sgnw Sinhala Sinh Sora_Sompeng Sora Soyombo Soyo Sundanese Sund Syloti_Nagri Sylo Syriac Syrc Tagalog Tglg Tagbanwa Tagb Tai_Le Tale Tai_Tham Lana Tai_Viet Tavt Takri Takr Tamil Taml Tangut Tang Telugu Telu Thaana Thaa Thai Thai Tibetan Tibt Tifinagh Tfng Tirhuta Tirh Ugaritic Ugar Vai Vaii Warang_Citi Wara Yi Yiii Zanabazar_Square Zanb", xt = bt + " Dogra Dogr Gunjala_Gondi Gong Hanifi_Rohingya Rohg Makasar Maka Medefaidrin Medf Old_Sogdian Sogo Sogdian Sogd", St = xt + " Elymaic Elym Nandinagari Nand Nyiakeng_Puachue_Hmong Hmnp Wancho Wcho", Ct = St + " Chorasmian Chrs Diak Dives_Akuru Khitan_Small_Script Kits Yezi Yezidi", wt = Ct + " Cypro_Minoan Cpmn Old_Uyghur Ougr Tangsa Tnsa Toto Vithkuqi Vith", Tt = {
|
|
2367
|
+
9: bt,
|
|
2368
|
+
10: xt,
|
|
2369
|
+
11: St,
|
|
2370
|
+
12: Ct,
|
|
2371
|
+
13: wt,
|
|
2372
|
+
14: wt + " " + dt
|
|
2373
|
+
}, Et = {};
|
|
2374
|
+
function Dt(e) {
|
|
2375
|
+
var t = Et[e] = {
|
|
2376
|
+
binary: A(_t[e] + " " + yt),
|
|
2377
|
+
binaryOfStrings: A(vt[e]),
|
|
2370
2378
|
nonBinary: {
|
|
2371
|
-
General_Category:
|
|
2372
|
-
Script:
|
|
2379
|
+
General_Category: A(yt),
|
|
2380
|
+
Script: A(Tt[e])
|
|
2373
2381
|
}
|
|
2374
2382
|
};
|
|
2375
2383
|
t.nonBinary.Script_Extensions = t.nonBinary.Script, t.nonBinary.gc = t.nonBinary.General_Category, t.nonBinary.sc = t.nonBinary.Script, t.nonBinary.scx = t.nonBinary.Script_Extensions;
|
|
2376
2384
|
}
|
|
2377
|
-
for (var
|
|
2385
|
+
for (var Ot = 0, kt = [
|
|
2378
2386
|
9,
|
|
2379
2387
|
10,
|
|
2380
2388
|
11,
|
|
2381
2389
|
12,
|
|
2382
2390
|
13,
|
|
2383
2391
|
14
|
|
2384
|
-
];
|
|
2385
|
-
var
|
|
2386
|
-
|
|
2392
|
+
]; Ot < kt.length; Ot += 1) {
|
|
2393
|
+
var At = kt[Ot];
|
|
2394
|
+
Dt(At);
|
|
2387
2395
|
}
|
|
2388
|
-
var
|
|
2396
|
+
var W = F.prototype, jt = function(e, t) {
|
|
2389
2397
|
this.parent = e, this.base = t || this;
|
|
2390
2398
|
};
|
|
2391
|
-
|
|
2399
|
+
jt.prototype.separatedFrom = function(e) {
|
|
2392
2400
|
for (var t = this; t; t = t.parent) for (var n = e; n; n = n.parent) if (t.base === n.base && t !== n) return !0;
|
|
2393
2401
|
return !1;
|
|
2394
|
-
},
|
|
2395
|
-
return new
|
|
2402
|
+
}, jt.prototype.sibling = function() {
|
|
2403
|
+
return new jt(this.parent, this.base);
|
|
2396
2404
|
};
|
|
2397
|
-
var
|
|
2398
|
-
this.parser = e, this.validFlags = "gim" + (e.options.ecmaVersion >= 6 ? "uy" : "") + (e.options.ecmaVersion >= 9 ? "s" : "") + (e.options.ecmaVersion >= 13 ? "d" : "") + (e.options.ecmaVersion >= 15 ? "v" : ""), this.unicodeProperties =
|
|
2405
|
+
var G = function(e) {
|
|
2406
|
+
this.parser = e, this.validFlags = "gim" + (e.options.ecmaVersion >= 6 ? "uy" : "") + (e.options.ecmaVersion >= 9 ? "s" : "") + (e.options.ecmaVersion >= 13 ? "d" : "") + (e.options.ecmaVersion >= 15 ? "v" : ""), this.unicodeProperties = Et[e.options.ecmaVersion >= 14 ? 14 : e.options.ecmaVersion], this.source = "", this.flags = "", this.start = 0, this.switchU = !1, this.switchV = !1, this.switchN = !1, this.pos = 0, this.lastIntValue = 0, this.lastStringValue = "", this.lastAssertionIsQuantifiable = !1, this.numCapturingParens = 0, this.maxBackReference = 0, this.groupNames = Object.create(null), this.backReferenceNames = [], this.branchID = null;
|
|
2399
2407
|
};
|
|
2400
|
-
|
|
2408
|
+
G.prototype.reset = function(e, t, n) {
|
|
2401
2409
|
var r = n.indexOf("v") !== -1, i = n.indexOf("u") !== -1;
|
|
2402
2410
|
this.start = e | 0, this.source = t + "", this.flags = n, r && this.parser.options.ecmaVersion >= 15 ? (this.switchU = !0, this.switchV = !0, this.switchN = !0) : (this.switchU = i && this.parser.options.ecmaVersion >= 6, this.switchV = !1, this.switchN = i && this.parser.options.ecmaVersion >= 9);
|
|
2403
|
-
},
|
|
2411
|
+
}, G.prototype.raise = function(e) {
|
|
2404
2412
|
this.parser.raiseRecoverable(this.start, "Invalid regular expression: /" + this.source + "/: " + e);
|
|
2405
|
-
},
|
|
2413
|
+
}, G.prototype.at = function(e, t) {
|
|
2406
2414
|
t === void 0 && (t = !1);
|
|
2407
2415
|
var n = this.source, r = n.length;
|
|
2408
2416
|
if (e >= r) return -1;
|
|
@@ -2410,21 +2418,21 @@ W.prototype.reset = function(e, t, n) {
|
|
|
2410
2418
|
if (!(t || this.switchU) || i <= 55295 || i >= 57344 || e + 1 >= r) return i;
|
|
2411
2419
|
var a = n.charCodeAt(e + 1);
|
|
2412
2420
|
return a >= 56320 && a <= 57343 ? (i << 10) + a - 56613888 : i;
|
|
2413
|
-
},
|
|
2421
|
+
}, G.prototype.nextIndex = function(e, t) {
|
|
2414
2422
|
t === void 0 && (t = !1);
|
|
2415
2423
|
var n = this.source, r = n.length;
|
|
2416
2424
|
if (e >= r) return r;
|
|
2417
2425
|
var i = n.charCodeAt(e), a;
|
|
2418
2426
|
return !(t || this.switchU) || i <= 55295 || i >= 57344 || e + 1 >= r || (a = n.charCodeAt(e + 1)) < 56320 || a > 57343 ? e + 1 : e + 2;
|
|
2419
|
-
},
|
|
2427
|
+
}, G.prototype.current = function(e) {
|
|
2420
2428
|
return e === void 0 && (e = !1), this.at(this.pos, e);
|
|
2421
|
-
},
|
|
2429
|
+
}, G.prototype.lookahead = function(e) {
|
|
2422
2430
|
return e === void 0 && (e = !1), this.at(this.nextIndex(this.pos, e), e);
|
|
2423
|
-
},
|
|
2431
|
+
}, G.prototype.advance = function(e) {
|
|
2424
2432
|
e === void 0 && (e = !1), this.pos = this.nextIndex(this.pos, e);
|
|
2425
|
-
},
|
|
2426
|
-
return t === void 0 && (t = !1), this.current(t) === e
|
|
2427
|
-
},
|
|
2433
|
+
}, G.prototype.eat = function(e, t) {
|
|
2434
|
+
return t === void 0 && (t = !1), this.current(t) === e && (this.advance(t), !0);
|
|
2435
|
+
}, G.prototype.eatChars = function(e, t) {
|
|
2428
2436
|
t === void 0 && (t = !1);
|
|
2429
2437
|
for (var n = this.pos, r = 0, i = e; r < i.length; r += 1) {
|
|
2430
2438
|
var a = i[r], o = this.at(n, t);
|
|
@@ -2432,34 +2440,34 @@ W.prototype.reset = function(e, t, n) {
|
|
|
2432
2440
|
n = this.nextIndex(n, t);
|
|
2433
2441
|
}
|
|
2434
2442
|
return this.pos = n, !0;
|
|
2435
|
-
},
|
|
2443
|
+
}, W.validateRegExpFlags = function(e) {
|
|
2436
2444
|
for (var t = e.validFlags, n = e.flags, r = !1, i = !1, a = 0; a < n.length; a++) {
|
|
2437
2445
|
var o = n.charAt(a);
|
|
2438
2446
|
t.indexOf(o) === -1 && this.raise(e.start, "Invalid regular expression flag"), n.indexOf(o, a + 1) > -1 && this.raise(e.start, "Duplicate regular expression flag"), o === "u" && (r = !0), o === "v" && (i = !0);
|
|
2439
2447
|
}
|
|
2440
2448
|
this.options.ecmaVersion >= 15 && r && i && this.raise(e.start, "Invalid regular expression flag");
|
|
2441
2449
|
};
|
|
2442
|
-
function
|
|
2450
|
+
function Mt(e) {
|
|
2443
2451
|
for (var t in e) return !0;
|
|
2444
2452
|
return !1;
|
|
2445
2453
|
}
|
|
2446
|
-
|
|
2447
|
-
this.regexp_pattern(e), !e.switchN && this.options.ecmaVersion >= 9 &&
|
|
2448
|
-
},
|
|
2454
|
+
W.validateRegExpPattern = function(e) {
|
|
2455
|
+
this.regexp_pattern(e), !e.switchN && this.options.ecmaVersion >= 9 && Mt(e.groupNames) && (e.switchN = !0, this.regexp_pattern(e));
|
|
2456
|
+
}, W.regexp_pattern = function(e) {
|
|
2449
2457
|
e.pos = 0, e.lastIntValue = 0, e.lastStringValue = "", e.lastAssertionIsQuantifiable = !1, e.numCapturingParens = 0, e.maxBackReference = 0, e.groupNames = Object.create(null), e.backReferenceNames.length = 0, e.branchID = null, this.regexp_disjunction(e), e.pos !== e.source.length && (e.eat(41) && e.raise("Unmatched ')'"), (e.eat(93) || e.eat(125)) && e.raise("Lone quantifier brackets")), e.maxBackReference > e.numCapturingParens && e.raise("Invalid escape");
|
|
2450
2458
|
for (var t = 0, n = e.backReferenceNames; t < n.length; t += 1) {
|
|
2451
2459
|
var r = n[t];
|
|
2452
2460
|
e.groupNames[r] || e.raise("Invalid named capture referenced");
|
|
2453
2461
|
}
|
|
2454
|
-
},
|
|
2462
|
+
}, W.regexp_disjunction = function(e) {
|
|
2455
2463
|
var t = this.options.ecmaVersion >= 16;
|
|
2456
|
-
for (t && (e.branchID = new
|
|
2464
|
+
for (t && (e.branchID = new jt(e.branchID, null)), this.regexp_alternative(e); e.eat(124);) t && (e.branchID = e.branchID.sibling()), this.regexp_alternative(e);
|
|
2457
2465
|
t && (e.branchID = e.branchID.parent), this.regexp_eatQuantifier(e, !0) && e.raise("Nothing to repeat"), e.eat(123) && e.raise("Lone quantifier brackets");
|
|
2458
|
-
},
|
|
2466
|
+
}, W.regexp_alternative = function(e) {
|
|
2459
2467
|
for (; e.pos < e.source.length && this.regexp_eatTerm(e););
|
|
2460
|
-
},
|
|
2468
|
+
}, W.regexp_eatTerm = function(e) {
|
|
2461
2469
|
return this.regexp_eatAssertion(e) ? (e.lastAssertionIsQuantifiable && this.regexp_eatQuantifier(e) && e.switchU && e.raise("Invalid quantifier"), !0) : (e.switchU ? this.regexp_eatAtom(e) : this.regexp_eatExtendedAtom(e)) ? (this.regexp_eatQuantifier(e), !0) : !1;
|
|
2462
|
-
},
|
|
2470
|
+
}, W.regexp_eatAssertion = function(e) {
|
|
2463
2471
|
var t = e.pos;
|
|
2464
2472
|
if (e.lastAssertionIsQuantifiable = !1, e.eat(94) || e.eat(36)) return !0;
|
|
2465
2473
|
if (e.eat(92)) {
|
|
@@ -2471,11 +2479,11 @@ U.validateRegExpPattern = function(e) {
|
|
|
2471
2479
|
if (this.options.ecmaVersion >= 9 && (n = e.eat(60)), e.eat(61) || e.eat(33)) return this.regexp_disjunction(e), e.eat(41) || e.raise("Unterminated group"), e.lastAssertionIsQuantifiable = !n, !0;
|
|
2472
2480
|
}
|
|
2473
2481
|
return e.pos = t, !1;
|
|
2474
|
-
},
|
|
2482
|
+
}, W.regexp_eatQuantifier = function(e, t) {
|
|
2475
2483
|
return t === void 0 && (t = !1), this.regexp_eatQuantifierPrefix(e, t) ? (e.eat(63), !0) : !1;
|
|
2476
|
-
},
|
|
2484
|
+
}, W.regexp_eatQuantifierPrefix = function(e, t) {
|
|
2477
2485
|
return e.eat(42) || e.eat(43) || e.eat(63) || this.regexp_eatBracedQuantifier(e, t);
|
|
2478
|
-
},
|
|
2486
|
+
}, W.regexp_eatBracedQuantifier = function(e, t) {
|
|
2479
2487
|
var n = e.pos;
|
|
2480
2488
|
if (e.eat(123)) {
|
|
2481
2489
|
var r = 0, i = -1;
|
|
@@ -2483,16 +2491,16 @@ U.validateRegExpPattern = function(e) {
|
|
|
2483
2491
|
e.switchU && !t && e.raise("Incomplete quantifier"), e.pos = n;
|
|
2484
2492
|
}
|
|
2485
2493
|
return !1;
|
|
2486
|
-
},
|
|
2494
|
+
}, W.regexp_eatAtom = function(e) {
|
|
2487
2495
|
return this.regexp_eatPatternCharacters(e) || e.eat(46) || this.regexp_eatReverseSolidusAtomEscape(e) || this.regexp_eatCharacterClass(e) || this.regexp_eatUncapturingGroup(e) || this.regexp_eatCapturingGroup(e);
|
|
2488
|
-
},
|
|
2496
|
+
}, W.regexp_eatReverseSolidusAtomEscape = function(e) {
|
|
2489
2497
|
var t = e.pos;
|
|
2490
2498
|
if (e.eat(92)) {
|
|
2491
2499
|
if (this.regexp_eatAtomEscape(e)) return !0;
|
|
2492
2500
|
e.pos = t;
|
|
2493
2501
|
}
|
|
2494
2502
|
return !1;
|
|
2495
|
-
},
|
|
2503
|
+
}, W.regexp_eatUncapturingGroup = function(e) {
|
|
2496
2504
|
var t = e.pos;
|
|
2497
2505
|
if (e.eat(40)) {
|
|
2498
2506
|
if (e.eat(63)) {
|
|
@@ -2521,73 +2529,75 @@ U.validateRegExpPattern = function(e) {
|
|
|
2521
2529
|
e.pos = t;
|
|
2522
2530
|
}
|
|
2523
2531
|
return !1;
|
|
2524
|
-
},
|
|
2532
|
+
}, W.regexp_eatCapturingGroup = function(e) {
|
|
2525
2533
|
if (e.eat(40)) {
|
|
2526
2534
|
if (this.options.ecmaVersion >= 9 ? this.regexp_groupSpecifier(e) : e.current() === 63 && e.raise("Invalid group"), this.regexp_disjunction(e), e.eat(41)) return e.numCapturingParens += 1, !0;
|
|
2527
2535
|
e.raise("Unterminated group");
|
|
2528
2536
|
}
|
|
2529
2537
|
return !1;
|
|
2530
|
-
},
|
|
2531
|
-
for (var t = "", n = 0; (n = e.current()) !== -1 &&
|
|
2538
|
+
}, W.regexp_eatModifiers = function(e) {
|
|
2539
|
+
for (var t = "", n = 0; (n = e.current()) !== -1 && Nt(n);) t += j(n), e.advance();
|
|
2532
2540
|
return t;
|
|
2533
2541
|
};
|
|
2534
|
-
function
|
|
2542
|
+
function Nt(e) {
|
|
2535
2543
|
return e === 105 || e === 109 || e === 115;
|
|
2536
2544
|
}
|
|
2537
|
-
|
|
2545
|
+
W.regexp_eatExtendedAtom = function(e) {
|
|
2538
2546
|
return e.eat(46) || this.regexp_eatReverseSolidusAtomEscape(e) || this.regexp_eatCharacterClass(e) || this.regexp_eatUncapturingGroup(e) || this.regexp_eatCapturingGroup(e) || this.regexp_eatInvalidBracedQuantifier(e) || this.regexp_eatExtendedPatternCharacter(e);
|
|
2539
|
-
},
|
|
2547
|
+
}, W.regexp_eatInvalidBracedQuantifier = function(e) {
|
|
2540
2548
|
return this.regexp_eatBracedQuantifier(e, !0) && e.raise("Nothing to repeat"), !1;
|
|
2541
|
-
},
|
|
2549
|
+
}, W.regexp_eatSyntaxCharacter = function(e) {
|
|
2542
2550
|
var t = e.current();
|
|
2543
|
-
return
|
|
2551
|
+
return Pt(t) ? (e.lastIntValue = t, e.advance(), !0) : !1;
|
|
2544
2552
|
};
|
|
2545
|
-
function
|
|
2553
|
+
function Pt(e) {
|
|
2546
2554
|
return e === 36 || e >= 40 && e <= 43 || e === 46 || e === 63 || e >= 91 && e <= 94 || e >= 123 && e <= 125;
|
|
2547
2555
|
}
|
|
2548
|
-
|
|
2549
|
-
for (var t = e.pos, n = 0; (n = e.current()) !== -1 && !
|
|
2556
|
+
W.regexp_eatPatternCharacters = function(e) {
|
|
2557
|
+
for (var t = e.pos, n = 0; (n = e.current()) !== -1 && !Pt(n);) e.advance();
|
|
2550
2558
|
return e.pos !== t;
|
|
2551
|
-
},
|
|
2559
|
+
}, W.regexp_eatExtendedPatternCharacter = function(e) {
|
|
2552
2560
|
var t = e.current();
|
|
2553
|
-
return t !== -1 && t !== 36 && !(t >= 40 && t <= 43) && t !== 46 && t !== 63 && t !== 91 && t !== 94 && t !== 124
|
|
2554
|
-
},
|
|
2561
|
+
return t !== -1 && t !== 36 && !(t >= 40 && t <= 43) && t !== 46 && t !== 63 && t !== 91 && t !== 94 && t !== 124 && (e.advance(), !0);
|
|
2562
|
+
}, W.regexp_groupSpecifier = function(e) {
|
|
2555
2563
|
if (e.eat(63)) {
|
|
2556
2564
|
this.regexp_eatGroupName(e) || e.raise("Invalid group");
|
|
2557
2565
|
var t = this.options.ecmaVersion >= 16, n = e.groupNames[e.lastStringValue];
|
|
2558
|
-
if (n)
|
|
2559
|
-
|
|
2566
|
+
if (n) {
|
|
2567
|
+
if (t) for (var r = 0, i = n; r < i.length; r += 1) i[r].separatedFrom(e.branchID) || e.raise("Duplicate capture group name");
|
|
2568
|
+
else e.raise("Duplicate capture group name");
|
|
2569
|
+
}
|
|
2560
2570
|
t ? (n || (e.groupNames[e.lastStringValue] = [])).push(e.branchID) : e.groupNames[e.lastStringValue] = !0;
|
|
2561
2571
|
}
|
|
2562
|
-
},
|
|
2572
|
+
}, W.regexp_eatGroupName = function(e) {
|
|
2563
2573
|
if (e.lastStringValue = "", e.eat(60)) {
|
|
2564
2574
|
if (this.regexp_eatRegExpIdentifierName(e) && e.eat(62)) return !0;
|
|
2565
2575
|
e.raise("Invalid capture group name");
|
|
2566
2576
|
}
|
|
2567
2577
|
return !1;
|
|
2568
|
-
},
|
|
2578
|
+
}, W.regexp_eatRegExpIdentifierName = function(e) {
|
|
2569
2579
|
if (e.lastStringValue = "", this.regexp_eatRegExpIdentifierStart(e)) {
|
|
2570
|
-
for (e.lastStringValue +=
|
|
2580
|
+
for (e.lastStringValue += j(e.lastIntValue); this.regexp_eatRegExpIdentifierPart(e);) e.lastStringValue += j(e.lastIntValue);
|
|
2571
2581
|
return !0;
|
|
2572
2582
|
}
|
|
2573
2583
|
return !1;
|
|
2574
|
-
},
|
|
2584
|
+
}, W.regexp_eatRegExpIdentifierStart = function(e) {
|
|
2575
2585
|
var t = e.pos, n = this.options.ecmaVersion >= 11, r = e.current(n);
|
|
2576
|
-
return e.advance(n), r === 92 && this.regexp_eatRegExpUnicodeEscapeSequence(e, n) && (r = e.lastIntValue),
|
|
2586
|
+
return e.advance(n), r === 92 && this.regexp_eatRegExpUnicodeEscapeSequence(e, n) && (r = e.lastIntValue), Ft(r) ? (e.lastIntValue = r, !0) : (e.pos = t, !1);
|
|
2577
2587
|
};
|
|
2578
|
-
function
|
|
2579
|
-
return
|
|
2588
|
+
function Ft(e) {
|
|
2589
|
+
return b(e, !0) || e === 36 || e === 95;
|
|
2580
2590
|
}
|
|
2581
|
-
|
|
2591
|
+
W.regexp_eatRegExpIdentifierPart = function(e) {
|
|
2582
2592
|
var t = e.pos, n = this.options.ecmaVersion >= 11, r = e.current(n);
|
|
2583
|
-
return e.advance(n), r === 92 && this.regexp_eatRegExpUnicodeEscapeSequence(e, n) && (r = e.lastIntValue),
|
|
2593
|
+
return e.advance(n), r === 92 && this.regexp_eatRegExpUnicodeEscapeSequence(e, n) && (r = e.lastIntValue), It(r) ? (e.lastIntValue = r, !0) : (e.pos = t, !1);
|
|
2584
2594
|
};
|
|
2585
|
-
function
|
|
2586
|
-
return
|
|
2595
|
+
function It(e) {
|
|
2596
|
+
return x(e, !0) || e === 36 || e === 95 || e === 8204 || e === 8205;
|
|
2587
2597
|
}
|
|
2588
|
-
|
|
2598
|
+
W.regexp_eatAtomEscape = function(e) {
|
|
2589
2599
|
return this.regexp_eatBackReference(e) || this.regexp_eatCharacterClassEscape(e) || this.regexp_eatCharacterEscape(e) || e.switchN && this.regexp_eatKGroupName(e) ? !0 : (e.switchU && (e.current() === 99 && e.raise("Invalid unicode escape"), e.raise("Invalid escape")), !1);
|
|
2590
|
-
},
|
|
2600
|
+
}, W.regexp_eatBackReference = function(e) {
|
|
2591
2601
|
var t = e.pos;
|
|
2592
2602
|
if (this.regexp_eatDecimalEscape(e)) {
|
|
2593
2603
|
var n = e.lastIntValue;
|
|
@@ -2596,34 +2606,34 @@ U.regexp_eatAtomEscape = function(e) {
|
|
|
2596
2606
|
e.pos = t;
|
|
2597
2607
|
}
|
|
2598
2608
|
return !1;
|
|
2599
|
-
},
|
|
2609
|
+
}, W.regexp_eatKGroupName = function(e) {
|
|
2600
2610
|
if (e.eat(107)) {
|
|
2601
2611
|
if (this.regexp_eatGroupName(e)) return e.backReferenceNames.push(e.lastStringValue), !0;
|
|
2602
2612
|
e.raise("Invalid named reference");
|
|
2603
2613
|
}
|
|
2604
2614
|
return !1;
|
|
2605
|
-
},
|
|
2615
|
+
}, W.regexp_eatCharacterEscape = function(e) {
|
|
2606
2616
|
return this.regexp_eatControlEscape(e) || this.regexp_eatCControlLetter(e) || this.regexp_eatZero(e) || this.regexp_eatHexEscapeSequence(e) || this.regexp_eatRegExpUnicodeEscapeSequence(e, !1) || !e.switchU && this.regexp_eatLegacyOctalEscapeSequence(e) || this.regexp_eatIdentityEscape(e);
|
|
2607
|
-
},
|
|
2617
|
+
}, W.regexp_eatCControlLetter = function(e) {
|
|
2608
2618
|
var t = e.pos;
|
|
2609
2619
|
if (e.eat(99)) {
|
|
2610
2620
|
if (this.regexp_eatControlLetter(e)) return !0;
|
|
2611
2621
|
e.pos = t;
|
|
2612
2622
|
}
|
|
2613
2623
|
return !1;
|
|
2614
|
-
},
|
|
2615
|
-
return e.current() === 48 && !
|
|
2616
|
-
},
|
|
2624
|
+
}, W.regexp_eatZero = function(e) {
|
|
2625
|
+
return e.current() === 48 && !Kt(e.lookahead()) && (e.lastIntValue = 0, e.advance(), !0);
|
|
2626
|
+
}, W.regexp_eatControlEscape = function(e) {
|
|
2617
2627
|
var t = e.current();
|
|
2618
|
-
return t === 116 ? (e.lastIntValue = 9, e.advance(), !0) : t === 110 ? (e.lastIntValue = 10, e.advance(), !0) : t === 118 ? (e.lastIntValue = 11, e.advance(), !0) : t === 102 ? (e.lastIntValue = 12, e.advance(), !0) : t === 114
|
|
2619
|
-
},
|
|
2628
|
+
return t === 116 ? (e.lastIntValue = 9, e.advance(), !0) : t === 110 ? (e.lastIntValue = 10, e.advance(), !0) : t === 118 ? (e.lastIntValue = 11, e.advance(), !0) : t === 102 ? (e.lastIntValue = 12, e.advance(), !0) : t === 114 && (e.lastIntValue = 13, e.advance(), !0);
|
|
2629
|
+
}, W.regexp_eatControlLetter = function(e) {
|
|
2620
2630
|
var t = e.current();
|
|
2621
|
-
return
|
|
2631
|
+
return Lt(t) ? (e.lastIntValue = t % 32, e.advance(), !0) : !1;
|
|
2622
2632
|
};
|
|
2623
|
-
function
|
|
2633
|
+
function Lt(e) {
|
|
2624
2634
|
return e >= 65 && e <= 90 || e >= 97 && e <= 122;
|
|
2625
2635
|
}
|
|
2626
|
-
|
|
2636
|
+
W.regexp_eatRegExpUnicodeEscapeSequence = function(e, t) {
|
|
2627
2637
|
t === void 0 && (t = !1);
|
|
2628
2638
|
var n = e.pos, r = t || e.switchU;
|
|
2629
2639
|
if (e.eat(117)) {
|
|
@@ -2639,19 +2649,19 @@ U.regexp_eatRegExpUnicodeEscapeSequence = function(e, t) {
|
|
|
2639
2649
|
}
|
|
2640
2650
|
return !0;
|
|
2641
2651
|
}
|
|
2642
|
-
if (r && e.eat(123) && this.regexp_eatHexDigits(e) && e.eat(125) &&
|
|
2652
|
+
if (r && e.eat(123) && this.regexp_eatHexDigits(e) && e.eat(125) && Rt(e.lastIntValue)) return !0;
|
|
2643
2653
|
r && e.raise("Invalid unicode escape"), e.pos = n;
|
|
2644
2654
|
}
|
|
2645
2655
|
return !1;
|
|
2646
2656
|
};
|
|
2647
|
-
function
|
|
2657
|
+
function Rt(e) {
|
|
2648
2658
|
return e >= 0 && e <= 1114111;
|
|
2649
2659
|
}
|
|
2650
|
-
|
|
2660
|
+
W.regexp_eatIdentityEscape = function(e) {
|
|
2651
2661
|
if (e.switchU) return this.regexp_eatSyntaxCharacter(e) ? !0 : e.eat(47) ? (e.lastIntValue = 47, !0) : !1;
|
|
2652
2662
|
var t = e.current();
|
|
2653
|
-
return t !== 99 && (!e.switchN || t !== 107)
|
|
2654
|
-
},
|
|
2663
|
+
return t !== 99 && (!e.switchN || t !== 107) && (e.lastIntValue = t, e.advance(), !0);
|
|
2664
|
+
}, W.regexp_eatDecimalEscape = function(e) {
|
|
2655
2665
|
e.lastIntValue = 0;
|
|
2656
2666
|
var t = e.current();
|
|
2657
2667
|
if (t >= 49 && t <= 57) {
|
|
@@ -2662,69 +2672,69 @@ U.regexp_eatIdentityEscape = function(e) {
|
|
|
2662
2672
|
}
|
|
2663
2673
|
return !1;
|
|
2664
2674
|
};
|
|
2665
|
-
var
|
|
2666
|
-
|
|
2675
|
+
var zt = 0, K = 1, q = 2;
|
|
2676
|
+
W.regexp_eatCharacterClassEscape = function(e) {
|
|
2667
2677
|
var t = e.current();
|
|
2668
|
-
if (
|
|
2678
|
+
if (Bt(t)) return e.lastIntValue = -1, e.advance(), K;
|
|
2669
2679
|
var n = !1;
|
|
2670
2680
|
if (e.switchU && this.options.ecmaVersion >= 9 && ((n = t === 80) || t === 112)) {
|
|
2671
2681
|
e.lastIntValue = -1, e.advance();
|
|
2672
2682
|
var r;
|
|
2673
|
-
if (e.eat(123) && (r = this.regexp_eatUnicodePropertyValueExpression(e)) && e.eat(125)) return n && r ===
|
|
2683
|
+
if (e.eat(123) && (r = this.regexp_eatUnicodePropertyValueExpression(e)) && e.eat(125)) return n && r === q && e.raise("Invalid property name"), r;
|
|
2674
2684
|
e.raise("Invalid property name");
|
|
2675
2685
|
}
|
|
2676
|
-
return
|
|
2686
|
+
return zt;
|
|
2677
2687
|
};
|
|
2678
|
-
function
|
|
2688
|
+
function Bt(e) {
|
|
2679
2689
|
return e === 100 || e === 68 || e === 115 || e === 83 || e === 119 || e === 87;
|
|
2680
2690
|
}
|
|
2681
|
-
|
|
2691
|
+
W.regexp_eatUnicodePropertyValueExpression = function(e) {
|
|
2682
2692
|
var t = e.pos;
|
|
2683
2693
|
if (this.regexp_eatUnicodePropertyName(e) && e.eat(61)) {
|
|
2684
2694
|
var n = e.lastStringValue;
|
|
2685
2695
|
if (this.regexp_eatUnicodePropertyValue(e)) {
|
|
2686
2696
|
var r = e.lastStringValue;
|
|
2687
|
-
return this.regexp_validateUnicodePropertyNameAndValue(e, n, r),
|
|
2697
|
+
return this.regexp_validateUnicodePropertyNameAndValue(e, n, r), K;
|
|
2688
2698
|
}
|
|
2689
2699
|
}
|
|
2690
2700
|
if (e.pos = t, this.regexp_eatLoneUnicodePropertyNameOrValue(e)) {
|
|
2691
2701
|
var i = e.lastStringValue;
|
|
2692
2702
|
return this.regexp_validateUnicodePropertyNameOrValue(e, i);
|
|
2693
2703
|
}
|
|
2694
|
-
return
|
|
2695
|
-
},
|
|
2696
|
-
|
|
2697
|
-
},
|
|
2698
|
-
if (e.unicodeProperties.binary.test(t)) return
|
|
2699
|
-
if (e.switchV && e.unicodeProperties.binaryOfStrings.test(t)) return
|
|
2704
|
+
return zt;
|
|
2705
|
+
}, W.regexp_validateUnicodePropertyNameAndValue = function(e, t, n) {
|
|
2706
|
+
ye(e.unicodeProperties.nonBinary, t) || e.raise("Invalid property name"), e.unicodeProperties.nonBinary[t].test(n) || e.raise("Invalid property value");
|
|
2707
|
+
}, W.regexp_validateUnicodePropertyNameOrValue = function(e, t) {
|
|
2708
|
+
if (e.unicodeProperties.binary.test(t)) return K;
|
|
2709
|
+
if (e.switchV && e.unicodeProperties.binaryOfStrings.test(t)) return q;
|
|
2700
2710
|
e.raise("Invalid property name");
|
|
2701
|
-
},
|
|
2711
|
+
}, W.regexp_eatUnicodePropertyName = function(e) {
|
|
2702
2712
|
var t = 0;
|
|
2703
|
-
for (e.lastStringValue = "";
|
|
2713
|
+
for (e.lastStringValue = ""; Vt(t = e.current());) e.lastStringValue += j(t), e.advance();
|
|
2704
2714
|
return e.lastStringValue !== "";
|
|
2705
2715
|
};
|
|
2706
|
-
function
|
|
2707
|
-
return
|
|
2716
|
+
function Vt(e) {
|
|
2717
|
+
return Lt(e) || e === 95;
|
|
2708
2718
|
}
|
|
2709
|
-
|
|
2719
|
+
W.regexp_eatUnicodePropertyValue = function(e) {
|
|
2710
2720
|
var t = 0;
|
|
2711
|
-
for (e.lastStringValue = "";
|
|
2721
|
+
for (e.lastStringValue = ""; Ht(t = e.current());) e.lastStringValue += j(t), e.advance();
|
|
2712
2722
|
return e.lastStringValue !== "";
|
|
2713
2723
|
};
|
|
2714
|
-
function
|
|
2715
|
-
return
|
|
2724
|
+
function Ht(e) {
|
|
2725
|
+
return Vt(e) || Kt(e);
|
|
2716
2726
|
}
|
|
2717
|
-
|
|
2727
|
+
W.regexp_eatLoneUnicodePropertyNameOrValue = function(e) {
|
|
2718
2728
|
return this.regexp_eatUnicodePropertyValue(e);
|
|
2719
|
-
},
|
|
2729
|
+
}, W.regexp_eatCharacterClass = function(e) {
|
|
2720
2730
|
if (e.eat(91)) {
|
|
2721
2731
|
var t = e.eat(94), n = this.regexp_classContents(e);
|
|
2722
|
-
return e.eat(93) || e.raise("Unterminated character class"), t && n ===
|
|
2732
|
+
return e.eat(93) || e.raise("Unterminated character class"), t && n === q && e.raise("Negated character class may contain strings"), !0;
|
|
2723
2733
|
}
|
|
2724
2734
|
return !1;
|
|
2725
|
-
},
|
|
2726
|
-
return e.current() === 93 ?
|
|
2727
|
-
},
|
|
2735
|
+
}, W.regexp_classContents = function(e) {
|
|
2736
|
+
return e.current() === 93 ? K : e.switchV ? this.regexp_classSetExpression(e) : (this.regexp_nonEmptyClassRanges(e), K);
|
|
2737
|
+
}, W.regexp_nonEmptyClassRanges = function(e) {
|
|
2728
2738
|
for (; this.regexp_eatClassAtom(e);) {
|
|
2729
2739
|
var t = e.lastIntValue;
|
|
2730
2740
|
if (e.eat(45) && this.regexp_eatClassAtom(e)) {
|
|
@@ -2732,19 +2742,19 @@ U.regexp_eatLoneUnicodePropertyNameOrValue = function(e) {
|
|
|
2732
2742
|
e.switchU && (t === -1 || n === -1) && e.raise("Invalid character class"), t !== -1 && n !== -1 && t > n && e.raise("Range out of order in character class");
|
|
2733
2743
|
}
|
|
2734
2744
|
}
|
|
2735
|
-
},
|
|
2745
|
+
}, W.regexp_eatClassAtom = function(e) {
|
|
2736
2746
|
var t = e.pos;
|
|
2737
2747
|
if (e.eat(92)) {
|
|
2738
2748
|
if (this.regexp_eatClassEscape(e)) return !0;
|
|
2739
2749
|
if (e.switchU) {
|
|
2740
2750
|
var n = e.current();
|
|
2741
|
-
(n === 99 ||
|
|
2751
|
+
(n === 99 || Yt(n)) && e.raise("Invalid class escape"), e.raise("Invalid escape");
|
|
2742
2752
|
}
|
|
2743
2753
|
e.pos = t;
|
|
2744
2754
|
}
|
|
2745
2755
|
var r = e.current();
|
|
2746
|
-
return r
|
|
2747
|
-
},
|
|
2756
|
+
return r !== 93 && (e.lastIntValue = r, e.advance(), !0);
|
|
2757
|
+
}, W.regexp_eatClassEscape = function(e) {
|
|
2748
2758
|
var t = e.pos;
|
|
2749
2759
|
if (e.eat(98)) return e.lastIntValue = 8, !0;
|
|
2750
2760
|
if (e.switchU && e.eat(45)) return e.lastIntValue = 45, !0;
|
|
@@ -2753,26 +2763,28 @@ U.regexp_eatLoneUnicodePropertyNameOrValue = function(e) {
|
|
|
2753
2763
|
e.pos = t;
|
|
2754
2764
|
}
|
|
2755
2765
|
return this.regexp_eatCharacterClassEscape(e) || this.regexp_eatCharacterEscape(e);
|
|
2756
|
-
},
|
|
2757
|
-
var t =
|
|
2758
|
-
if (!this.regexp_eatClassSetRange(e))
|
|
2759
|
-
|
|
2760
|
-
|
|
2761
|
-
|
|
2762
|
-
|
|
2763
|
-
|
|
2766
|
+
}, W.regexp_classSetExpression = function(e) {
|
|
2767
|
+
var t = K, n;
|
|
2768
|
+
if (!this.regexp_eatClassSetRange(e)) {
|
|
2769
|
+
if (n = this.regexp_eatClassSetOperand(e)) {
|
|
2770
|
+
n === q && (t = q);
|
|
2771
|
+
for (var r = e.pos; e.eatChars([38, 38]);) {
|
|
2772
|
+
if (e.current() !== 38 && (n = this.regexp_eatClassSetOperand(e))) {
|
|
2773
|
+
n !== q && (t = K);
|
|
2774
|
+
continue;
|
|
2775
|
+
}
|
|
2776
|
+
e.raise("Invalid character in character class");
|
|
2764
2777
|
}
|
|
2765
|
-
|
|
2766
|
-
|
|
2767
|
-
|
|
2768
|
-
|
|
2769
|
-
|
|
2770
|
-
} else e.raise("Invalid character in character class");
|
|
2778
|
+
if (r !== e.pos) return t;
|
|
2779
|
+
for (; e.eatChars([45, 45]);) this.regexp_eatClassSetOperand(e) || e.raise("Invalid character in character class");
|
|
2780
|
+
if (r !== e.pos) return t;
|
|
2781
|
+
} else e.raise("Invalid character in character class");
|
|
2782
|
+
}
|
|
2771
2783
|
for (;;) if (!this.regexp_eatClassSetRange(e)) {
|
|
2772
2784
|
if (n = this.regexp_eatClassSetOperand(e), !n) return t;
|
|
2773
|
-
n ===
|
|
2785
|
+
n === q && (t = q);
|
|
2774
2786
|
}
|
|
2775
|
-
},
|
|
2787
|
+
}, W.regexp_eatClassSetRange = function(e) {
|
|
2776
2788
|
var t = e.pos;
|
|
2777
2789
|
if (this.regexp_eatClassSetCharacter(e)) {
|
|
2778
2790
|
var n = e.lastIntValue;
|
|
@@ -2783,13 +2795,13 @@ U.regexp_eatLoneUnicodePropertyNameOrValue = function(e) {
|
|
|
2783
2795
|
e.pos = t;
|
|
2784
2796
|
}
|
|
2785
2797
|
return !1;
|
|
2786
|
-
},
|
|
2787
|
-
return this.regexp_eatClassSetCharacter(e) ?
|
|
2788
|
-
},
|
|
2798
|
+
}, W.regexp_eatClassSetOperand = function(e) {
|
|
2799
|
+
return this.regexp_eatClassSetCharacter(e) ? K : this.regexp_eatClassStringDisjunction(e) || this.regexp_eatNestedClass(e);
|
|
2800
|
+
}, W.regexp_eatNestedClass = function(e) {
|
|
2789
2801
|
var t = e.pos;
|
|
2790
2802
|
if (e.eat(91)) {
|
|
2791
2803
|
var n = e.eat(94), r = this.regexp_classContents(e);
|
|
2792
|
-
if (e.eat(93)) return n && r ===
|
|
2804
|
+
if (e.eat(93)) return n && r === q && e.raise("Negated character class may contain strings"), r;
|
|
2793
2805
|
e.pos = t;
|
|
2794
2806
|
}
|
|
2795
2807
|
if (e.eat(92)) {
|
|
@@ -2798,7 +2810,7 @@ U.regexp_eatLoneUnicodePropertyNameOrValue = function(e) {
|
|
|
2798
2810
|
e.pos = t;
|
|
2799
2811
|
}
|
|
2800
2812
|
return null;
|
|
2801
|
-
},
|
|
2813
|
+
}, W.regexp_eatClassStringDisjunction = function(e) {
|
|
2802
2814
|
var t = e.pos;
|
|
2803
2815
|
if (e.eatChars([92, 113])) {
|
|
2804
2816
|
if (e.eat(123)) {
|
|
@@ -2808,125 +2820,125 @@ U.regexp_eatLoneUnicodePropertyNameOrValue = function(e) {
|
|
|
2808
2820
|
e.pos = t;
|
|
2809
2821
|
}
|
|
2810
2822
|
return null;
|
|
2811
|
-
},
|
|
2812
|
-
for (var t = this.regexp_classString(e); e.eat(124);) this.regexp_classString(e) ===
|
|
2823
|
+
}, W.regexp_classStringDisjunctionContents = function(e) {
|
|
2824
|
+
for (var t = this.regexp_classString(e); e.eat(124);) this.regexp_classString(e) === q && (t = q);
|
|
2813
2825
|
return t;
|
|
2814
|
-
},
|
|
2826
|
+
}, W.regexp_classString = function(e) {
|
|
2815
2827
|
for (var t = 0; this.regexp_eatClassSetCharacter(e);) t++;
|
|
2816
|
-
return t === 1 ?
|
|
2817
|
-
},
|
|
2828
|
+
return t === 1 ? K : q;
|
|
2829
|
+
}, W.regexp_eatClassSetCharacter = function(e) {
|
|
2818
2830
|
var t = e.pos;
|
|
2819
2831
|
if (e.eat(92)) return this.regexp_eatCharacterEscape(e) || this.regexp_eatClassSetReservedPunctuator(e) ? !0 : e.eat(98) ? (e.lastIntValue = 8, !0) : (e.pos = t, !1);
|
|
2820
2832
|
var n = e.current();
|
|
2821
|
-
return n < 0 || n === e.lookahead() &&
|
|
2833
|
+
return n < 0 || n === e.lookahead() && Ut(n) || Wt(n) ? !1 : (e.advance(), e.lastIntValue = n, !0);
|
|
2822
2834
|
};
|
|
2823
|
-
function
|
|
2835
|
+
function Ut(e) {
|
|
2824
2836
|
return e === 33 || e >= 35 && e <= 38 || e >= 42 && e <= 44 || e === 46 || e >= 58 && e <= 64 || e === 94 || e === 96 || e === 126;
|
|
2825
2837
|
}
|
|
2826
|
-
function
|
|
2838
|
+
function Wt(e) {
|
|
2827
2839
|
return e === 40 || e === 41 || e === 45 || e === 47 || e >= 91 && e <= 93 || e >= 123 && e <= 125;
|
|
2828
2840
|
}
|
|
2829
|
-
|
|
2841
|
+
W.regexp_eatClassSetReservedPunctuator = function(e) {
|
|
2830
2842
|
var t = e.current();
|
|
2831
|
-
return
|
|
2843
|
+
return Gt(t) ? (e.lastIntValue = t, e.advance(), !0) : !1;
|
|
2832
2844
|
};
|
|
2833
|
-
function
|
|
2845
|
+
function Gt(e) {
|
|
2834
2846
|
return e === 33 || e === 35 || e === 37 || e === 38 || e === 44 || e === 45 || e >= 58 && e <= 62 || e === 64 || e === 96 || e === 126;
|
|
2835
2847
|
}
|
|
2836
|
-
|
|
2848
|
+
W.regexp_eatClassControlLetter = function(e) {
|
|
2837
2849
|
var t = e.current();
|
|
2838
|
-
return
|
|
2839
|
-
},
|
|
2850
|
+
return Kt(t) || t === 95 ? (e.lastIntValue = t % 32, e.advance(), !0) : !1;
|
|
2851
|
+
}, W.regexp_eatHexEscapeSequence = function(e) {
|
|
2840
2852
|
var t = e.pos;
|
|
2841
2853
|
if (e.eat(120)) {
|
|
2842
2854
|
if (this.regexp_eatFixedHexDigits(e, 2)) return !0;
|
|
2843
2855
|
e.switchU && e.raise("Invalid escape"), e.pos = t;
|
|
2844
2856
|
}
|
|
2845
2857
|
return !1;
|
|
2846
|
-
},
|
|
2858
|
+
}, W.regexp_eatDecimalDigits = function(e) {
|
|
2847
2859
|
var t = e.pos, n = 0;
|
|
2848
|
-
for (e.lastIntValue = 0;
|
|
2860
|
+
for (e.lastIntValue = 0; Kt(n = e.current());) e.lastIntValue = 10 * e.lastIntValue + (n - 48), e.advance();
|
|
2849
2861
|
return e.pos !== t;
|
|
2850
2862
|
};
|
|
2851
|
-
function
|
|
2863
|
+
function Kt(e) {
|
|
2852
2864
|
return e >= 48 && e <= 57;
|
|
2853
2865
|
}
|
|
2854
|
-
|
|
2866
|
+
W.regexp_eatHexDigits = function(e) {
|
|
2855
2867
|
var t = e.pos, n = 0;
|
|
2856
|
-
for (e.lastIntValue = 0;
|
|
2868
|
+
for (e.lastIntValue = 0; qt(n = e.current());) e.lastIntValue = 16 * e.lastIntValue + Jt(n), e.advance();
|
|
2857
2869
|
return e.pos !== t;
|
|
2858
2870
|
};
|
|
2859
|
-
function
|
|
2871
|
+
function qt(e) {
|
|
2860
2872
|
return e >= 48 && e <= 57 || e >= 65 && e <= 70 || e >= 97 && e <= 102;
|
|
2861
2873
|
}
|
|
2862
|
-
function
|
|
2874
|
+
function Jt(e) {
|
|
2863
2875
|
return e >= 65 && e <= 70 ? 10 + (e - 65) : e >= 97 && e <= 102 ? 10 + (e - 97) : e - 48;
|
|
2864
2876
|
}
|
|
2865
|
-
|
|
2877
|
+
W.regexp_eatLegacyOctalEscapeSequence = function(e) {
|
|
2866
2878
|
if (this.regexp_eatOctalDigit(e)) {
|
|
2867
2879
|
var t = e.lastIntValue;
|
|
2868
2880
|
if (this.regexp_eatOctalDigit(e)) {
|
|
2869
2881
|
var n = e.lastIntValue;
|
|
2870
|
-
t <= 3 && this.regexp_eatOctalDigit(e) ?
|
|
2882
|
+
e.lastIntValue = t <= 3 && this.regexp_eatOctalDigit(e) ? t * 64 + n * 8 + e.lastIntValue : t * 8 + n;
|
|
2871
2883
|
} else e.lastIntValue = t;
|
|
2872
2884
|
return !0;
|
|
2873
2885
|
}
|
|
2874
2886
|
return !1;
|
|
2875
|
-
},
|
|
2887
|
+
}, W.regexp_eatOctalDigit = function(e) {
|
|
2876
2888
|
var t = e.current();
|
|
2877
|
-
return
|
|
2889
|
+
return Yt(t) ? (e.lastIntValue = t - 48, e.advance(), !0) : (e.lastIntValue = 0, !1);
|
|
2878
2890
|
};
|
|
2879
|
-
function
|
|
2891
|
+
function Yt(e) {
|
|
2880
2892
|
return e >= 48 && e <= 55;
|
|
2881
2893
|
}
|
|
2882
|
-
|
|
2894
|
+
W.regexp_eatFixedHexDigits = function(e, t) {
|
|
2883
2895
|
var n = e.pos;
|
|
2884
2896
|
e.lastIntValue = 0;
|
|
2885
2897
|
for (var r = 0; r < t; ++r) {
|
|
2886
2898
|
var i = e.current();
|
|
2887
|
-
if (!
|
|
2888
|
-
e.lastIntValue = 16 * e.lastIntValue +
|
|
2899
|
+
if (!qt(i)) return e.pos = n, !1;
|
|
2900
|
+
e.lastIntValue = 16 * e.lastIntValue + Jt(i), e.advance();
|
|
2889
2901
|
}
|
|
2890
2902
|
return !0;
|
|
2891
2903
|
};
|
|
2892
|
-
var
|
|
2893
|
-
this.type = e.type, this.value = e.value, this.start = e.start, this.end = e.end, e.options.locations && (this.loc = new
|
|
2894
|
-
},
|
|
2895
|
-
|
|
2896
|
-
!e && this.type.keyword && this.containsEsc && this.raiseRecoverable(this.start, "Escape sequence in keyword " + this.type.keyword), this.options.onToken && this.options.onToken(new
|
|
2897
|
-
},
|
|
2898
|
-
return this.next(), new
|
|
2899
|
-
}, typeof Symbol < "u" && (
|
|
2904
|
+
var Xt = function(e) {
|
|
2905
|
+
this.type = e.type, this.value = e.value, this.start = e.start, this.end = e.end, e.options.locations && (this.loc = new we(e, e.startLoc, e.endLoc)), e.options.ranges && (this.range = [e.start, e.end]);
|
|
2906
|
+
}, J = F.prototype;
|
|
2907
|
+
J.next = function(e) {
|
|
2908
|
+
!e && this.type.keyword && this.containsEsc && this.raiseRecoverable(this.start, "Escape sequence in keyword " + this.type.keyword), this.options.onToken && this.options.onToken(new Xt(this)), this.lastTokEnd = this.end, this.lastTokStart = this.start, this.lastTokEndLoc = this.endLoc, this.lastTokStartLoc = this.startLoc, this.nextToken();
|
|
2909
|
+
}, J.getToken = function() {
|
|
2910
|
+
return this.next(), new Xt(this);
|
|
2911
|
+
}, typeof Symbol < "u" && (J[Symbol.iterator] = function() {
|
|
2900
2912
|
var e = this;
|
|
2901
2913
|
return { next: function() {
|
|
2902
2914
|
var t = e.getToken();
|
|
2903
2915
|
return {
|
|
2904
|
-
done: t.type ===
|
|
2916
|
+
done: t.type === D.eof,
|
|
2905
2917
|
value: t
|
|
2906
2918
|
};
|
|
2907
2919
|
} };
|
|
2908
|
-
}),
|
|
2920
|
+
}), J.nextToken = function() {
|
|
2909
2921
|
var e = this.curContext();
|
|
2910
|
-
if ((!e || !e.preserveSpace) && this.skipSpace(), this.start = this.pos, this.options.locations && (this.startLoc = this.curPosition()), this.pos >= this.input.length) return this.finishToken(
|
|
2922
|
+
if ((!e || !e.preserveSpace) && this.skipSpace(), this.start = this.pos, this.options.locations && (this.startLoc = this.curPosition()), this.pos >= this.input.length) return this.finishToken(D.eof);
|
|
2911
2923
|
if (e.override) return e.override(this);
|
|
2912
2924
|
this.readToken(this.fullCharCodeAtPos());
|
|
2913
|
-
},
|
|
2914
|
-
return
|
|
2915
|
-
},
|
|
2925
|
+
}, J.readToken = function(e) {
|
|
2926
|
+
return b(e, this.options.ecmaVersion >= 6) || e === 92 ? this.readWord() : this.getTokenFromCode(e);
|
|
2927
|
+
}, J.fullCharCodeAt = function(e) {
|
|
2916
2928
|
var t = this.input.charCodeAt(e);
|
|
2917
2929
|
if (t <= 55295 || t >= 56320) return t;
|
|
2918
2930
|
var n = this.input.charCodeAt(e + 1);
|
|
2919
2931
|
return n <= 56319 || n >= 57344 ? t : (t << 10) + n - 56613888;
|
|
2920
|
-
},
|
|
2932
|
+
}, J.fullCharCodeAtPos = function() {
|
|
2921
2933
|
return this.fullCharCodeAt(this.pos);
|
|
2922
|
-
},
|
|
2934
|
+
}, J.skipBlockComment = function() {
|
|
2923
2935
|
var e = this.options.onComment && this.curPosition(), t = this.pos, n = this.input.indexOf("*/", this.pos += 2);
|
|
2924
|
-
if (n === -1 && this.raise(this.pos - 2, "Unterminated comment"), this.pos = n + 2, this.options.locations) for (var r = void 0, i = t; (r =
|
|
2936
|
+
if (n === -1 && this.raise(this.pos - 2, "Unterminated comment"), this.pos = n + 2, this.options.locations) for (var r = void 0, i = t; (r = me(this.input, i, this.pos)) > -1;) ++this.curLine, i = this.lineStart = r;
|
|
2925
2937
|
this.options.onComment && this.options.onComment(!0, this.input.slice(t + 2, n), t, this.pos, e, this.curPosition());
|
|
2926
|
-
},
|
|
2927
|
-
for (var t = this.pos, n = this.options.onComment && this.curPosition(), r = this.input.charCodeAt(this.pos += e); this.pos < this.input.length && !
|
|
2938
|
+
}, J.skipLineComment = function(e) {
|
|
2939
|
+
for (var t = this.pos, n = this.options.onComment && this.curPosition(), r = this.input.charCodeAt(this.pos += e); this.pos < this.input.length && !pe(r);) r = this.input.charCodeAt(++this.pos);
|
|
2928
2940
|
this.options.onComment && this.options.onComment(!1, this.input.slice(t + e, this.pos), t, this.pos, n, this.curPosition());
|
|
2929
|
-
},
|
|
2941
|
+
}, J.skipSpace = function() {
|
|
2930
2942
|
loop: for (; this.pos < this.input.length;) {
|
|
2931
2943
|
var e = this.input.charCodeAt(this.pos);
|
|
2932
2944
|
switch (e) {
|
|
@@ -2951,69 +2963,69 @@ q.next = function(e) {
|
|
|
2951
2963
|
default: break loop;
|
|
2952
2964
|
}
|
|
2953
2965
|
break;
|
|
2954
|
-
default: if (e > 8 && e < 14 || e >= 5760 &&
|
|
2966
|
+
default: if (e > 8 && e < 14 || e >= 5760 && he.test(String.fromCharCode(e))) ++this.pos;
|
|
2955
2967
|
else break loop;
|
|
2956
2968
|
}
|
|
2957
2969
|
}
|
|
2958
|
-
},
|
|
2970
|
+
}, J.finishToken = function(e, t) {
|
|
2959
2971
|
this.end = this.pos, this.options.locations && (this.endLoc = this.curPosition());
|
|
2960
2972
|
var n = this.type;
|
|
2961
2973
|
this.type = e, this.value = t, this.updateContext(n);
|
|
2962
|
-
},
|
|
2974
|
+
}, J.readToken_dot = function() {
|
|
2963
2975
|
var e = this.input.charCodeAt(this.pos + 1);
|
|
2964
2976
|
if (e >= 48 && e <= 57) return this.readNumber(!0);
|
|
2965
2977
|
var t = this.input.charCodeAt(this.pos + 2);
|
|
2966
|
-
return this.options.ecmaVersion >= 6 && e === 46 && t === 46 ? (this.pos += 3, this.finishToken(
|
|
2967
|
-
},
|
|
2978
|
+
return this.options.ecmaVersion >= 6 && e === 46 && t === 46 ? (this.pos += 3, this.finishToken(D.ellipsis)) : (++this.pos, this.finishToken(D.dot));
|
|
2979
|
+
}, J.readToken_slash = function() {
|
|
2968
2980
|
var e = this.input.charCodeAt(this.pos + 1);
|
|
2969
|
-
return this.exprAllowed ? (++this.pos, this.readRegexp()) : e === 61 ? this.finishOp(
|
|
2970
|
-
},
|
|
2971
|
-
var t = this.input.charCodeAt(this.pos + 1), n = 1, r = e === 42 ?
|
|
2972
|
-
return this.options.ecmaVersion >= 7 && e === 42 && t === 42 && (++n, r =
|
|
2973
|
-
},
|
|
2981
|
+
return this.exprAllowed ? (++this.pos, this.readRegexp()) : e === 61 ? this.finishOp(D.assign, 2) : this.finishOp(D.slash, 1);
|
|
2982
|
+
}, J.readToken_mult_modulo_exp = function(e) {
|
|
2983
|
+
var t = this.input.charCodeAt(this.pos + 1), n = 1, r = e === 42 ? D.star : D.modulo;
|
|
2984
|
+
return this.options.ecmaVersion >= 7 && e === 42 && t === 42 && (++n, r = D.starstar, t = this.input.charCodeAt(this.pos + 2)), t === 61 ? this.finishOp(D.assign, n + 1) : this.finishOp(r, n);
|
|
2985
|
+
}, J.readToken_pipe_amp = function(e) {
|
|
2974
2986
|
var t = this.input.charCodeAt(this.pos + 1);
|
|
2975
|
-
return t === e ? this.options.ecmaVersion >= 12 && this.input.charCodeAt(this.pos + 2) === 61 ? this.finishOp(
|
|
2976
|
-
},
|
|
2977
|
-
return this.input.charCodeAt(this.pos + 1) === 61 ? this.finishOp(
|
|
2978
|
-
},
|
|
2987
|
+
return t === e ? this.options.ecmaVersion >= 12 && this.input.charCodeAt(this.pos + 2) === 61 ? this.finishOp(D.assign, 3) : this.finishOp(e === 124 ? D.logicalOR : D.logicalAND, 2) : t === 61 ? this.finishOp(D.assign, 2) : this.finishOp(e === 124 ? D.bitwiseOR : D.bitwiseAND, 1);
|
|
2988
|
+
}, J.readToken_caret = function() {
|
|
2989
|
+
return this.input.charCodeAt(this.pos + 1) === 61 ? this.finishOp(D.assign, 2) : this.finishOp(D.bitwiseXOR, 1);
|
|
2990
|
+
}, J.readToken_plus_min = function(e) {
|
|
2979
2991
|
var t = this.input.charCodeAt(this.pos + 1);
|
|
2980
|
-
return t === e ? t === 45 && !this.inModule && this.input.charCodeAt(this.pos + 2) === 62 && (this.lastTokEnd === 0 ||
|
|
2981
|
-
},
|
|
2992
|
+
return t === e ? t === 45 && !this.inModule && this.input.charCodeAt(this.pos + 2) === 62 && (this.lastTokEnd === 0 || O.test(this.input.slice(this.lastTokEnd, this.pos))) ? (this.skipLineComment(3), this.skipSpace(), this.nextToken()) : this.finishOp(D.incDec, 2) : t === 61 ? this.finishOp(D.assign, 2) : this.finishOp(D.plusMin, 1);
|
|
2993
|
+
}, J.readToken_lt_gt = function(e) {
|
|
2982
2994
|
var t = this.input.charCodeAt(this.pos + 1), n = 1;
|
|
2983
|
-
return t === e ? (n = e === 62 && this.input.charCodeAt(this.pos + 2) === 62 ? 3 : 2, this.input.charCodeAt(this.pos + n) === 61 ? this.finishOp(
|
|
2984
|
-
},
|
|
2995
|
+
return t === e ? (n = e === 62 && this.input.charCodeAt(this.pos + 2) === 62 ? 3 : 2, this.input.charCodeAt(this.pos + n) === 61 ? this.finishOp(D.assign, n + 1) : this.finishOp(D.bitShift, n)) : t === 33 && e === 60 && !this.inModule && this.input.charCodeAt(this.pos + 2) === 45 && this.input.charCodeAt(this.pos + 3) === 45 ? (this.skipLineComment(4), this.skipSpace(), this.nextToken()) : (t === 61 && (n = 2), this.finishOp(D.relational, n));
|
|
2996
|
+
}, J.readToken_eq_excl = function(e) {
|
|
2985
2997
|
var t = this.input.charCodeAt(this.pos + 1);
|
|
2986
|
-
return t === 61 ? this.finishOp(
|
|
2987
|
-
},
|
|
2998
|
+
return t === 61 ? this.finishOp(D.equality, this.input.charCodeAt(this.pos + 2) === 61 ? 3 : 2) : e === 61 && t === 62 && this.options.ecmaVersion >= 6 ? (this.pos += 2, this.finishToken(D.arrow)) : this.finishOp(e === 61 ? D.eq : D.prefix, 1);
|
|
2999
|
+
}, J.readToken_question = function() {
|
|
2988
3000
|
var e = this.options.ecmaVersion;
|
|
2989
3001
|
if (e >= 11) {
|
|
2990
3002
|
var t = this.input.charCodeAt(this.pos + 1);
|
|
2991
3003
|
if (t === 46) {
|
|
2992
3004
|
var n = this.input.charCodeAt(this.pos + 2);
|
|
2993
|
-
if (n < 48 || n > 57) return this.finishOp(
|
|
3005
|
+
if (n < 48 || n > 57) return this.finishOp(D.questionDot, 2);
|
|
2994
3006
|
}
|
|
2995
|
-
if (t === 63) return e >= 12 && this.input.charCodeAt(this.pos + 2) === 61 ? this.finishOp(
|
|
3007
|
+
if (t === 63) return e >= 12 && this.input.charCodeAt(this.pos + 2) === 61 ? this.finishOp(D.assign, 3) : this.finishOp(D.coalesce, 2);
|
|
2996
3008
|
}
|
|
2997
|
-
return this.finishOp(
|
|
2998
|
-
},
|
|
3009
|
+
return this.finishOp(D.question, 1);
|
|
3010
|
+
}, J.readToken_numberSign = function() {
|
|
2999
3011
|
var e = this.options.ecmaVersion, t = 35;
|
|
3000
|
-
if (e >= 13 && (++this.pos, t = this.fullCharCodeAtPos(),
|
|
3001
|
-
this.raise(this.pos, "Unexpected character '" +
|
|
3002
|
-
},
|
|
3012
|
+
if (e >= 13 && (++this.pos, t = this.fullCharCodeAtPos(), b(t, !0) || t === 92)) return this.finishToken(D.privateId, this.readWord1());
|
|
3013
|
+
this.raise(this.pos, "Unexpected character '" + j(t) + "'");
|
|
3014
|
+
}, J.getTokenFromCode = function(e) {
|
|
3003
3015
|
switch (e) {
|
|
3004
3016
|
case 46: return this.readToken_dot();
|
|
3005
|
-
case 40: return ++this.pos, this.finishToken(
|
|
3006
|
-
case 41: return ++this.pos, this.finishToken(
|
|
3007
|
-
case 59: return ++this.pos, this.finishToken(
|
|
3008
|
-
case 44: return ++this.pos, this.finishToken(
|
|
3009
|
-
case 91: return ++this.pos, this.finishToken(
|
|
3010
|
-
case 93: return ++this.pos, this.finishToken(
|
|
3011
|
-
case 123: return ++this.pos, this.finishToken(
|
|
3012
|
-
case 125: return ++this.pos, this.finishToken(
|
|
3013
|
-
case 58: return ++this.pos, this.finishToken(
|
|
3017
|
+
case 40: return ++this.pos, this.finishToken(D.parenL);
|
|
3018
|
+
case 41: return ++this.pos, this.finishToken(D.parenR);
|
|
3019
|
+
case 59: return ++this.pos, this.finishToken(D.semi);
|
|
3020
|
+
case 44: return ++this.pos, this.finishToken(D.comma);
|
|
3021
|
+
case 91: return ++this.pos, this.finishToken(D.bracketL);
|
|
3022
|
+
case 93: return ++this.pos, this.finishToken(D.bracketR);
|
|
3023
|
+
case 123: return ++this.pos, this.finishToken(D.braceL);
|
|
3024
|
+
case 125: return ++this.pos, this.finishToken(D.braceR);
|
|
3025
|
+
case 58: return ++this.pos, this.finishToken(D.colon);
|
|
3014
3026
|
case 96:
|
|
3015
3027
|
if (this.options.ecmaVersion < 6) break;
|
|
3016
|
-
return ++this.pos, this.finishToken(
|
|
3028
|
+
return ++this.pos, this.finishToken(D.backQuote);
|
|
3017
3029
|
case 48:
|
|
3018
3030
|
var t = this.input.charCodeAt(this.pos + 1);
|
|
3019
3031
|
if (t === 120 || t === 88) return this.readRadixNumber(16);
|
|
@@ -3045,18 +3057,18 @@ q.next = function(e) {
|
|
|
3045
3057
|
case 61:
|
|
3046
3058
|
case 33: return this.readToken_eq_excl(e);
|
|
3047
3059
|
case 63: return this.readToken_question();
|
|
3048
|
-
case 126: return this.finishOp(
|
|
3060
|
+
case 126: return this.finishOp(D.prefix, 1);
|
|
3049
3061
|
case 35: return this.readToken_numberSign();
|
|
3050
3062
|
}
|
|
3051
|
-
this.raise(this.pos, "Unexpected character '" +
|
|
3052
|
-
},
|
|
3063
|
+
this.raise(this.pos, "Unexpected character '" + j(e) + "'");
|
|
3064
|
+
}, J.finishOp = function(e, t) {
|
|
3053
3065
|
var n = this.input.slice(this.pos, this.pos + t);
|
|
3054
3066
|
return this.pos += t, this.finishToken(e, n);
|
|
3055
|
-
},
|
|
3067
|
+
}, J.readRegexp = function() {
|
|
3056
3068
|
for (var e, t, n = this.pos;;) {
|
|
3057
3069
|
this.pos >= this.input.length && this.raise(n, "Unterminated regular expression");
|
|
3058
3070
|
var r = this.input.charAt(this.pos);
|
|
3059
|
-
if (
|
|
3071
|
+
if (O.test(r) && this.raise(n, "Unterminated regular expression"), e) e = !1;
|
|
3060
3072
|
else {
|
|
3061
3073
|
if (r === "[") t = !0;
|
|
3062
3074
|
else if (r === "]" && t) t = !1;
|
|
@@ -3069,18 +3081,18 @@ q.next = function(e) {
|
|
|
3069
3081
|
++this.pos;
|
|
3070
3082
|
var a = this.pos, o = this.readWord1();
|
|
3071
3083
|
this.containsEsc && this.unexpected(a);
|
|
3072
|
-
var s = this.regexpState ||= new
|
|
3084
|
+
var s = this.regexpState ||= new G(this);
|
|
3073
3085
|
s.reset(n, i, o), this.validateRegExpFlags(s), this.validateRegExpPattern(s);
|
|
3074
3086
|
var c = null;
|
|
3075
3087
|
try {
|
|
3076
3088
|
c = new RegExp(i, o);
|
|
3077
3089
|
} catch {}
|
|
3078
|
-
return this.finishToken(
|
|
3090
|
+
return this.finishToken(D.regexp, {
|
|
3079
3091
|
pattern: i,
|
|
3080
3092
|
flags: o,
|
|
3081
3093
|
value: c
|
|
3082
3094
|
});
|
|
3083
|
-
},
|
|
3095
|
+
}, J.readInt = function(e, t, n) {
|
|
3084
3096
|
for (var r = this.options.ecmaVersion >= 12 && t === void 0, i = n && this.input.charCodeAt(this.pos) === 48, a = this.pos, o = 0, s = 0, c = 0, l = t ?? Infinity; c < l; ++c, ++this.pos) {
|
|
3085
3097
|
var u = this.input.charCodeAt(this.pos), d = void 0;
|
|
3086
3098
|
if (r && u === 95) {
|
|
@@ -3092,31 +3104,31 @@ q.next = function(e) {
|
|
|
3092
3104
|
}
|
|
3093
3105
|
return r && s === 95 && this.raiseRecoverable(this.pos - 1, "Numeric separator is not allowed at the last of digits"), this.pos === a || t != null && this.pos - a !== t ? null : o;
|
|
3094
3106
|
};
|
|
3095
|
-
function
|
|
3107
|
+
function Zt(e, t) {
|
|
3096
3108
|
return t ? parseInt(e, 8) : parseFloat(e.replace(/_/g, ""));
|
|
3097
3109
|
}
|
|
3098
|
-
function
|
|
3110
|
+
function Qt(e) {
|
|
3099
3111
|
return typeof BigInt == "function" ? BigInt(e.replace(/_/g, "")) : null;
|
|
3100
3112
|
}
|
|
3101
|
-
|
|
3113
|
+
J.readRadixNumber = function(e) {
|
|
3102
3114
|
var t = this.pos;
|
|
3103
3115
|
this.pos += 2;
|
|
3104
3116
|
var n = this.readInt(e);
|
|
3105
|
-
return n ?? this.raise(this.start + 2, "Expected number in radix " + e), this.options.ecmaVersion >= 11 && this.input.charCodeAt(this.pos) === 110 ? (n =
|
|
3106
|
-
},
|
|
3117
|
+
return n ?? this.raise(this.start + 2, "Expected number in radix " + e), this.options.ecmaVersion >= 11 && this.input.charCodeAt(this.pos) === 110 ? (n = Qt(this.input.slice(t, this.pos)), ++this.pos) : b(this.fullCharCodeAtPos()) && this.raise(this.pos, "Identifier directly after number"), this.finishToken(D.num, n);
|
|
3118
|
+
}, J.readNumber = function(e) {
|
|
3107
3119
|
var t = this.pos;
|
|
3108
3120
|
!e && this.readInt(10, void 0, !0) === null && this.raise(t, "Invalid number");
|
|
3109
3121
|
var n = this.pos - t >= 2 && this.input.charCodeAt(t) === 48;
|
|
3110
3122
|
n && this.strict && this.raise(t, "Invalid number");
|
|
3111
3123
|
var r = this.input.charCodeAt(this.pos);
|
|
3112
3124
|
if (!n && !e && this.options.ecmaVersion >= 11 && r === 110) {
|
|
3113
|
-
var i =
|
|
3114
|
-
return ++this.pos,
|
|
3125
|
+
var i = Qt(this.input.slice(t, this.pos));
|
|
3126
|
+
return ++this.pos, b(this.fullCharCodeAtPos()) && this.raise(this.pos, "Identifier directly after number"), this.finishToken(D.num, i);
|
|
3115
3127
|
}
|
|
3116
|
-
n && /[89]/.test(this.input.slice(t, this.pos)) && (n = !1), r === 46 && !n && (++this.pos, this.readInt(10), r = this.input.charCodeAt(this.pos)), (r === 69 || r === 101) && !n && (r = this.input.charCodeAt(++this.pos), (r === 43 || r === 45) && ++this.pos, this.readInt(10) === null && this.raise(t, "Invalid number")),
|
|
3117
|
-
var a =
|
|
3118
|
-
return this.finishToken(
|
|
3119
|
-
},
|
|
3128
|
+
n && /[89]/.test(this.input.slice(t, this.pos)) && (n = !1), r === 46 && !n && (++this.pos, this.readInt(10), r = this.input.charCodeAt(this.pos)), (r === 69 || r === 101) && !n && (r = this.input.charCodeAt(++this.pos), (r === 43 || r === 45) && ++this.pos, this.readInt(10) === null && this.raise(t, "Invalid number")), b(this.fullCharCodeAtPos()) && this.raise(this.pos, "Identifier directly after number");
|
|
3129
|
+
var a = Zt(this.input.slice(t, this.pos), n);
|
|
3130
|
+
return this.finishToken(D.num, a);
|
|
3131
|
+
}, J.readCodePoint = function() {
|
|
3120
3132
|
var e = this.input.charCodeAt(this.pos), t;
|
|
3121
3133
|
if (e === 123) {
|
|
3122
3134
|
this.options.ecmaVersion < 6 && this.unexpected();
|
|
@@ -3124,69 +3136,65 @@ q.readRadixNumber = function(e) {
|
|
|
3124
3136
|
t = this.readHexChar(this.input.indexOf("}", this.pos) - this.pos), ++this.pos, t > 1114111 && this.invalidStringToken(n, "Code point out of bounds");
|
|
3125
3137
|
} else t = this.readHexChar(4);
|
|
3126
3138
|
return t;
|
|
3127
|
-
},
|
|
3139
|
+
}, J.readString = function(e) {
|
|
3128
3140
|
for (var t = "", n = ++this.pos;;) {
|
|
3129
3141
|
this.pos >= this.input.length && this.raise(this.start, "Unterminated string constant");
|
|
3130
3142
|
var r = this.input.charCodeAt(this.pos);
|
|
3131
3143
|
if (r === e) break;
|
|
3132
|
-
r === 92 ? (t += this.input.slice(n, this.pos), t += this.readEscapedChar(!1), n = this.pos) : r === 8232 || r === 8233 ? (this.options.ecmaVersion < 10 && this.raise(this.start, "Unterminated string constant"), ++this.pos, this.options.locations && (this.curLine++, this.lineStart = this.pos)) : (
|
|
3144
|
+
r === 92 ? (t += this.input.slice(n, this.pos), t += this.readEscapedChar(!1), n = this.pos) : r === 8232 || r === 8233 ? (this.options.ecmaVersion < 10 && this.raise(this.start, "Unterminated string constant"), ++this.pos, this.options.locations && (this.curLine++, this.lineStart = this.pos)) : (pe(r) && this.raise(this.start, "Unterminated string constant"), ++this.pos);
|
|
3133
3145
|
}
|
|
3134
|
-
return t += this.input.slice(n, this.pos++), this.finishToken(
|
|
3146
|
+
return t += this.input.slice(n, this.pos++), this.finishToken(D.string, t);
|
|
3135
3147
|
};
|
|
3136
|
-
var
|
|
3137
|
-
|
|
3148
|
+
var $t = {};
|
|
3149
|
+
J.tryReadTemplateToken = function() {
|
|
3138
3150
|
this.inTemplateElement = !0;
|
|
3139
3151
|
try {
|
|
3140
3152
|
this.readTmplToken();
|
|
3141
3153
|
} catch (e) {
|
|
3142
|
-
if (e ===
|
|
3154
|
+
if (e === $t) this.readInvalidTemplateToken();
|
|
3143
3155
|
else throw e;
|
|
3144
3156
|
}
|
|
3145
3157
|
this.inTemplateElement = !1;
|
|
3146
|
-
},
|
|
3147
|
-
if (this.inTemplateElement && this.options.ecmaVersion >= 9) throw
|
|
3158
|
+
}, J.invalidStringToken = function(e, t) {
|
|
3159
|
+
if (this.inTemplateElement && this.options.ecmaVersion >= 9) throw $t;
|
|
3148
3160
|
this.raise(e, t);
|
|
3149
|
-
},
|
|
3161
|
+
}, J.readTmplToken = function() {
|
|
3150
3162
|
for (var e = "", t = this.pos;;) {
|
|
3151
3163
|
this.pos >= this.input.length && this.raise(this.start, "Unterminated template");
|
|
3152
3164
|
var n = this.input.charCodeAt(this.pos);
|
|
3153
|
-
if (n === 96 || n === 36 && this.input.charCodeAt(this.pos + 1) === 123) return this.pos === this.start && (this.type ===
|
|
3165
|
+
if (n === 96 || n === 36 && this.input.charCodeAt(this.pos + 1) === 123) return this.pos === this.start && (this.type === D.template || this.type === D.invalidTemplate) ? n === 36 ? (this.pos += 2, this.finishToken(D.dollarBraceL)) : (++this.pos, this.finishToken(D.backQuote)) : (e += this.input.slice(t, this.pos), this.finishToken(D.template, e));
|
|
3154
3166
|
if (n === 92) e += this.input.slice(t, this.pos), e += this.readEscapedChar(!0), t = this.pos;
|
|
3155
|
-
else if (
|
|
3167
|
+
else if (pe(n)) {
|
|
3156
3168
|
switch (e += this.input.slice(t, this.pos), ++this.pos, n) {
|
|
3157
3169
|
case 13: this.input.charCodeAt(this.pos) === 10 && ++this.pos;
|
|
3158
3170
|
case 10:
|
|
3159
3171
|
e += "\n";
|
|
3160
3172
|
break;
|
|
3161
|
-
default:
|
|
3162
|
-
e += String.fromCharCode(n);
|
|
3163
|
-
break;
|
|
3173
|
+
default: e += String.fromCharCode(n);
|
|
3164
3174
|
}
|
|
3165
3175
|
this.options.locations && (++this.curLine, this.lineStart = this.pos), t = this.pos;
|
|
3166
3176
|
} else ++this.pos;
|
|
3167
3177
|
}
|
|
3168
|
-
},
|
|
3178
|
+
}, J.readInvalidTemplateToken = function() {
|
|
3169
3179
|
for (; this.pos < this.input.length; this.pos++) switch (this.input[this.pos]) {
|
|
3170
3180
|
case "\\":
|
|
3171
3181
|
++this.pos;
|
|
3172
3182
|
break;
|
|
3173
3183
|
case "$": if (this.input[this.pos + 1] !== "{") break;
|
|
3174
|
-
case "`": return this.finishToken(
|
|
3184
|
+
case "`": return this.finishToken(D.invalidTemplate, this.input.slice(this.start, this.pos));
|
|
3175
3185
|
case "\r": this.input[this.pos + 1] === "\n" && ++this.pos;
|
|
3176
3186
|
case "\n":
|
|
3177
3187
|
case "\u2028":
|
|
3178
|
-
case "\u2029":
|
|
3179
|
-
++this.curLine, this.lineStart = this.pos + 1;
|
|
3180
|
-
break;
|
|
3188
|
+
case "\u2029": ++this.curLine, this.lineStart = this.pos + 1;
|
|
3181
3189
|
}
|
|
3182
3190
|
this.raise(this.start, "Unterminated template");
|
|
3183
|
-
},
|
|
3191
|
+
}, J.readEscapedChar = function(e) {
|
|
3184
3192
|
var t = this.input.charCodeAt(++this.pos);
|
|
3185
3193
|
switch (++this.pos, t) {
|
|
3186
3194
|
case 110: return "\n";
|
|
3187
3195
|
case 114: return "\r";
|
|
3188
3196
|
case 120: return String.fromCharCode(this.readHexChar(2));
|
|
3189
|
-
case 117: return
|
|
3197
|
+
case 117: return j(this.readCodePoint());
|
|
3190
3198
|
case 116: return " ";
|
|
3191
3199
|
case 98: return "\b";
|
|
3192
3200
|
case 118: return "\v";
|
|
@@ -3203,144 +3211,144 @@ q.tryReadTemplateToken = function() {
|
|
|
3203
3211
|
var r = this.input.substr(this.pos - 1, 3).match(/^[0-7]+/)[0], i = parseInt(r, 8);
|
|
3204
3212
|
return i > 255 && (r = r.slice(0, -1), i = parseInt(r, 8)), this.pos += r.length - 1, t = this.input.charCodeAt(this.pos), (r !== "0" || t === 56 || t === 57) && (this.strict || e) && this.invalidStringToken(this.pos - 1 - r.length, e ? "Octal literal in template string" : "Octal literal in strict mode"), String.fromCharCode(i);
|
|
3205
3213
|
}
|
|
3206
|
-
return
|
|
3214
|
+
return pe(t) ? (this.options.locations && (this.lineStart = this.pos, ++this.curLine), "") : String.fromCharCode(t);
|
|
3207
3215
|
}
|
|
3208
|
-
},
|
|
3216
|
+
}, J.readHexChar = function(e) {
|
|
3209
3217
|
var t = this.pos, n = this.readInt(16, e);
|
|
3210
3218
|
return n === null && this.invalidStringToken(t, "Bad character escape sequence"), n;
|
|
3211
|
-
},
|
|
3219
|
+
}, J.readWord1 = function() {
|
|
3212
3220
|
this.containsEsc = !1;
|
|
3213
3221
|
for (var e = "", t = !0, n = this.pos, r = this.options.ecmaVersion >= 6; this.pos < this.input.length;) {
|
|
3214
3222
|
var i = this.fullCharCodeAtPos();
|
|
3215
|
-
if (
|
|
3223
|
+
if (x(i, r)) this.pos += i <= 65535 ? 1 : 2;
|
|
3216
3224
|
else if (i === 92) {
|
|
3217
3225
|
this.containsEsc = !0, e += this.input.slice(n, this.pos);
|
|
3218
3226
|
var a = this.pos;
|
|
3219
3227
|
this.input.charCodeAt(++this.pos) !== 117 && this.invalidStringToken(this.pos, "Expecting Unicode escape sequence \\uXXXX"), ++this.pos;
|
|
3220
3228
|
var o = this.readCodePoint();
|
|
3221
|
-
(t ?
|
|
3229
|
+
(t ? b : x)(o, r) || this.invalidStringToken(a, "Invalid Unicode escape"), e += j(o), n = this.pos;
|
|
3222
3230
|
} else break;
|
|
3223
3231
|
t = !1;
|
|
3224
3232
|
}
|
|
3225
3233
|
return e + this.input.slice(n, this.pos);
|
|
3226
|
-
},
|
|
3227
|
-
var e = this.readWord1(), t =
|
|
3228
|
-
return this.keywords.test(e) && (t =
|
|
3229
|
-
},
|
|
3230
|
-
Parser:
|
|
3231
|
-
version: "8.
|
|
3232
|
-
defaultOptions:
|
|
3233
|
-
Position:
|
|
3234
|
-
SourceLocation:
|
|
3235
|
-
getLineInfo:
|
|
3236
|
-
Node:
|
|
3237
|
-
TokenType:
|
|
3238
|
-
tokTypes:
|
|
3239
|
-
keywordTypes:
|
|
3240
|
-
TokContext:
|
|
3241
|
-
tokContexts:
|
|
3242
|
-
isIdentifierChar:
|
|
3243
|
-
isIdentifierStart:
|
|
3244
|
-
Token:
|
|
3245
|
-
isNewLine:
|
|
3246
|
-
lineBreak:
|
|
3247
|
-
lineBreakG:
|
|
3248
|
-
nonASCIIwhitespace:
|
|
3234
|
+
}, J.readWord = function() {
|
|
3235
|
+
var e = this.readWord1(), t = D.name;
|
|
3236
|
+
return this.keywords.test(e) && (t = de[e]), this.finishToken(t, e);
|
|
3237
|
+
}, F.acorn = {
|
|
3238
|
+
Parser: F,
|
|
3239
|
+
version: "8.18.0",
|
|
3240
|
+
defaultOptions: Ee,
|
|
3241
|
+
Position: Ce,
|
|
3242
|
+
SourceLocation: we,
|
|
3243
|
+
getLineInfo: Te,
|
|
3244
|
+
Node: ct,
|
|
3245
|
+
TokenType: S,
|
|
3246
|
+
tokTypes: D,
|
|
3247
|
+
keywordTypes: de,
|
|
3248
|
+
TokContext: B,
|
|
3249
|
+
tokContexts: V,
|
|
3250
|
+
isIdentifierChar: x,
|
|
3251
|
+
isIdentifierStart: b,
|
|
3252
|
+
Token: Xt,
|
|
3253
|
+
isNewLine: pe,
|
|
3254
|
+
lineBreak: O,
|
|
3255
|
+
lineBreakG: fe,
|
|
3256
|
+
nonASCIIwhitespace: he
|
|
3249
3257
|
};
|
|
3250
3258
|
//#endregion
|
|
3251
3259
|
//#region ../../node_modules/.pnpm/acorn-walk@8.3.5/node_modules/acorn-walk/dist/walk.mjs
|
|
3252
|
-
function
|
|
3260
|
+
function en(e, t, n) {
|
|
3253
3261
|
n(e, t);
|
|
3254
3262
|
}
|
|
3255
|
-
function
|
|
3256
|
-
var
|
|
3257
|
-
|
|
3263
|
+
function Y(e, t, n) {}
|
|
3264
|
+
var X = {};
|
|
3265
|
+
X.Program = X.BlockStatement = X.StaticBlock = function(e, t, n) {
|
|
3258
3266
|
for (var r = 0, i = e.body; r < i.length; r += 1) {
|
|
3259
3267
|
var a = i[r];
|
|
3260
3268
|
n(a, t, "Statement");
|
|
3261
3269
|
}
|
|
3262
|
-
},
|
|
3270
|
+
}, X.Statement = en, X.EmptyStatement = Y, X.ExpressionStatement = X.ParenthesizedExpression = X.ChainExpression = function(e, t, n) {
|
|
3263
3271
|
return n(e.expression, t, "Expression");
|
|
3264
|
-
},
|
|
3272
|
+
}, X.IfStatement = function(e, t, n) {
|
|
3265
3273
|
n(e.test, t, "Expression"), n(e.consequent, t, "Statement"), e.alternate && n(e.alternate, t, "Statement");
|
|
3266
|
-
},
|
|
3274
|
+
}, X.LabeledStatement = function(e, t, n) {
|
|
3267
3275
|
return n(e.body, t, "Statement");
|
|
3268
|
-
},
|
|
3276
|
+
}, X.BreakStatement = X.ContinueStatement = Y, X.WithStatement = function(e, t, n) {
|
|
3269
3277
|
n(e.object, t, "Expression"), n(e.body, t, "Statement");
|
|
3270
|
-
},
|
|
3278
|
+
}, X.SwitchStatement = function(e, t, n) {
|
|
3271
3279
|
n(e.discriminant, t, "Expression");
|
|
3272
3280
|
for (var r = 0, i = e.cases; r < i.length; r += 1) {
|
|
3273
3281
|
var a = i[r];
|
|
3274
3282
|
n(a, t);
|
|
3275
3283
|
}
|
|
3276
|
-
},
|
|
3284
|
+
}, X.SwitchCase = function(e, t, n) {
|
|
3277
3285
|
e.test && n(e.test, t, "Expression");
|
|
3278
3286
|
for (var r = 0, i = e.consequent; r < i.length; r += 1) {
|
|
3279
3287
|
var a = i[r];
|
|
3280
3288
|
n(a, t, "Statement");
|
|
3281
3289
|
}
|
|
3282
|
-
},
|
|
3290
|
+
}, X.ReturnStatement = X.YieldExpression = X.AwaitExpression = function(e, t, n) {
|
|
3283
3291
|
e.argument && n(e.argument, t, "Expression");
|
|
3284
|
-
},
|
|
3292
|
+
}, X.ThrowStatement = X.SpreadElement = function(e, t, n) {
|
|
3285
3293
|
return n(e.argument, t, "Expression");
|
|
3286
|
-
},
|
|
3294
|
+
}, X.TryStatement = function(e, t, n) {
|
|
3287
3295
|
n(e.block, t, "Statement"), e.handler && n(e.handler, t), e.finalizer && n(e.finalizer, t, "Statement");
|
|
3288
|
-
},
|
|
3296
|
+
}, X.CatchClause = function(e, t, n) {
|
|
3289
3297
|
e.param && n(e.param, t, "Pattern"), n(e.body, t, "Statement");
|
|
3290
|
-
},
|
|
3298
|
+
}, X.WhileStatement = X.DoWhileStatement = function(e, t, n) {
|
|
3291
3299
|
n(e.test, t, "Expression"), n(e.body, t, "Statement");
|
|
3292
|
-
},
|
|
3300
|
+
}, X.ForStatement = function(e, t, n) {
|
|
3293
3301
|
e.init && n(e.init, t, "ForInit"), e.test && n(e.test, t, "Expression"), e.update && n(e.update, t, "Expression"), n(e.body, t, "Statement");
|
|
3294
|
-
},
|
|
3302
|
+
}, X.ForInStatement = X.ForOfStatement = function(e, t, n) {
|
|
3295
3303
|
n(e.left, t, "ForInit"), n(e.right, t, "Expression"), n(e.body, t, "Statement");
|
|
3296
|
-
},
|
|
3304
|
+
}, X.ForInit = function(e, t, n) {
|
|
3297
3305
|
e.type === "VariableDeclaration" ? n(e, t) : n(e, t, "Expression");
|
|
3298
|
-
},
|
|
3306
|
+
}, X.DebuggerStatement = Y, X.FunctionDeclaration = function(e, t, n) {
|
|
3299
3307
|
return n(e, t, "Function");
|
|
3300
|
-
},
|
|
3308
|
+
}, X.VariableDeclaration = function(e, t, n) {
|
|
3301
3309
|
for (var r = 0, i = e.declarations; r < i.length; r += 1) {
|
|
3302
3310
|
var a = i[r];
|
|
3303
3311
|
n(a, t);
|
|
3304
3312
|
}
|
|
3305
|
-
},
|
|
3313
|
+
}, X.VariableDeclarator = function(e, t, n) {
|
|
3306
3314
|
n(e.id, t, "Pattern"), e.init && n(e.init, t, "Expression");
|
|
3307
|
-
},
|
|
3315
|
+
}, X.Function = function(e, t, n) {
|
|
3308
3316
|
e.id && n(e.id, t, "Pattern");
|
|
3309
3317
|
for (var r = 0, i = e.params; r < i.length; r += 1) {
|
|
3310
3318
|
var a = i[r];
|
|
3311
3319
|
n(a, t, "Pattern");
|
|
3312
3320
|
}
|
|
3313
3321
|
n(e.body, t, e.expression ? "Expression" : "Statement");
|
|
3314
|
-
},
|
|
3322
|
+
}, X.Pattern = function(e, t, n) {
|
|
3315
3323
|
e.type === "Identifier" ? n(e, t, "VariablePattern") : e.type === "MemberExpression" ? n(e, t, "MemberPattern") : n(e, t);
|
|
3316
|
-
},
|
|
3324
|
+
}, X.VariablePattern = Y, X.MemberPattern = en, X.RestElement = function(e, t, n) {
|
|
3317
3325
|
return n(e.argument, t, "Pattern");
|
|
3318
|
-
},
|
|
3326
|
+
}, X.ArrayPattern = function(e, t, n) {
|
|
3319
3327
|
for (var r = 0, i = e.elements; r < i.length; r += 1) {
|
|
3320
3328
|
var a = i[r];
|
|
3321
3329
|
a && n(a, t, "Pattern");
|
|
3322
3330
|
}
|
|
3323
|
-
},
|
|
3331
|
+
}, X.ObjectPattern = function(e, t, n) {
|
|
3324
3332
|
for (var r = 0, i = e.properties; r < i.length; r += 1) {
|
|
3325
3333
|
var a = i[r];
|
|
3326
3334
|
a.type === "Property" ? (a.computed && n(a.key, t, "Expression"), n(a.value, t, "Pattern")) : a.type === "RestElement" && n(a.argument, t, "Pattern");
|
|
3327
3335
|
}
|
|
3328
|
-
},
|
|
3336
|
+
}, X.Expression = en, X.ThisExpression = X.Super = X.MetaProperty = Y, X.ArrayExpression = function(e, t, n) {
|
|
3329
3337
|
for (var r = 0, i = e.elements; r < i.length; r += 1) {
|
|
3330
3338
|
var a = i[r];
|
|
3331
3339
|
a && n(a, t, "Expression");
|
|
3332
3340
|
}
|
|
3333
|
-
},
|
|
3341
|
+
}, X.ObjectExpression = function(e, t, n) {
|
|
3334
3342
|
for (var r = 0, i = e.properties; r < i.length; r += 1) {
|
|
3335
3343
|
var a = i[r];
|
|
3336
3344
|
n(a, t);
|
|
3337
3345
|
}
|
|
3338
|
-
},
|
|
3346
|
+
}, X.FunctionExpression = X.ArrowFunctionExpression = X.FunctionDeclaration, X.SequenceExpression = function(e, t, n) {
|
|
3339
3347
|
for (var r = 0, i = e.expressions; r < i.length; r += 1) {
|
|
3340
3348
|
var a = i[r];
|
|
3341
3349
|
n(a, t, "Expression");
|
|
3342
3350
|
}
|
|
3343
|
-
},
|
|
3351
|
+
}, X.TemplateLiteral = function(e, t, n) {
|
|
3344
3352
|
for (var r = 0, i = e.quasis; r < i.length; r += 1) {
|
|
3345
3353
|
var a = i[r];
|
|
3346
3354
|
n(a, t);
|
|
@@ -3349,34 +3357,34 @@ Y.Program = Y.BlockStatement = Y.StaticBlock = function(e, t, n) {
|
|
|
3349
3357
|
var c = s[o];
|
|
3350
3358
|
n(c, t, "Expression");
|
|
3351
3359
|
}
|
|
3352
|
-
},
|
|
3360
|
+
}, X.TemplateElement = Y, X.UnaryExpression = X.UpdateExpression = function(e, t, n) {
|
|
3353
3361
|
n(e.argument, t, "Expression");
|
|
3354
|
-
},
|
|
3362
|
+
}, X.BinaryExpression = X.LogicalExpression = function(e, t, n) {
|
|
3355
3363
|
n(e.left, t, "Expression"), n(e.right, t, "Expression");
|
|
3356
|
-
},
|
|
3364
|
+
}, X.AssignmentExpression = X.AssignmentPattern = function(e, t, n) {
|
|
3357
3365
|
n(e.left, t, "Pattern"), n(e.right, t, "Expression");
|
|
3358
|
-
},
|
|
3366
|
+
}, X.ConditionalExpression = function(e, t, n) {
|
|
3359
3367
|
n(e.test, t, "Expression"), n(e.consequent, t, "Expression"), n(e.alternate, t, "Expression");
|
|
3360
|
-
},
|
|
3368
|
+
}, X.NewExpression = X.CallExpression = function(e, t, n) {
|
|
3361
3369
|
if (n(e.callee, t, "Expression"), e.arguments) for (var r = 0, i = e.arguments; r < i.length; r += 1) {
|
|
3362
3370
|
var a = i[r];
|
|
3363
3371
|
n(a, t, "Expression");
|
|
3364
3372
|
}
|
|
3365
|
-
},
|
|
3373
|
+
}, X.MemberExpression = function(e, t, n) {
|
|
3366
3374
|
n(e.object, t, "Expression"), e.computed && n(e.property, t, "Expression");
|
|
3367
|
-
},
|
|
3375
|
+
}, X.ExportNamedDeclaration = X.ExportDefaultDeclaration = function(e, t, n) {
|
|
3368
3376
|
if (e.declaration && n(e.declaration, t, e.type === "ExportNamedDeclaration" || e.declaration.id ? "Statement" : "Expression"), e.source && n(e.source, t, "Expression"), e.attributes) for (var r = 0, i = e.attributes; r < i.length; r += 1) {
|
|
3369
3377
|
var a = i[r];
|
|
3370
3378
|
n(a, t);
|
|
3371
3379
|
}
|
|
3372
|
-
},
|
|
3380
|
+
}, X.ExportAllDeclaration = function(e, t, n) {
|
|
3373
3381
|
if (e.exported && n(e.exported, t), n(e.source, t, "Expression"), e.attributes) for (var r = 0, i = e.attributes; r < i.length; r += 1) {
|
|
3374
3382
|
var a = i[r];
|
|
3375
3383
|
n(a, t);
|
|
3376
3384
|
}
|
|
3377
|
-
},
|
|
3385
|
+
}, X.ImportAttribute = function(e, t, n) {
|
|
3378
3386
|
n(e.value, t, "Expression");
|
|
3379
|
-
},
|
|
3387
|
+
}, X.ImportDeclaration = function(e, t, n) {
|
|
3380
3388
|
for (var r = 0, i = e.specifiers; r < i.length; r += 1) {
|
|
3381
3389
|
var a = i[r];
|
|
3382
3390
|
n(a, t);
|
|
@@ -3385,25 +3393,25 @@ Y.Program = Y.BlockStatement = Y.StaticBlock = function(e, t, n) {
|
|
|
3385
3393
|
var c = s[o];
|
|
3386
3394
|
n(c, t);
|
|
3387
3395
|
}
|
|
3388
|
-
},
|
|
3396
|
+
}, X.ImportExpression = function(e, t, n) {
|
|
3389
3397
|
n(e.source, t, "Expression"), e.options && n(e.options, t, "Expression");
|
|
3390
|
-
},
|
|
3398
|
+
}, X.ImportSpecifier = X.ImportDefaultSpecifier = X.ImportNamespaceSpecifier = X.Identifier = X.PrivateIdentifier = X.Literal = Y, X.TaggedTemplateExpression = function(e, t, n) {
|
|
3391
3399
|
n(e.tag, t, "Expression"), n(e.quasi, t, "Expression");
|
|
3392
|
-
},
|
|
3400
|
+
}, X.ClassDeclaration = X.ClassExpression = function(e, t, n) {
|
|
3393
3401
|
return n(e, t, "Class");
|
|
3394
|
-
},
|
|
3402
|
+
}, X.Class = function(e, t, n) {
|
|
3395
3403
|
e.id && n(e.id, t, "Pattern"), e.superClass && n(e.superClass, t, "Expression"), n(e.body, t);
|
|
3396
|
-
},
|
|
3404
|
+
}, X.ClassBody = function(e, t, n) {
|
|
3397
3405
|
for (var r = 0, i = e.body; r < i.length; r += 1) {
|
|
3398
3406
|
var a = i[r];
|
|
3399
3407
|
n(a, t);
|
|
3400
3408
|
}
|
|
3401
|
-
},
|
|
3409
|
+
}, X.MethodDefinition = X.PropertyDefinition = X.Property = function(e, t, n) {
|
|
3402
3410
|
e.computed && n(e.key, t, "Expression"), e.value && n(e.value, t, "Expression");
|
|
3403
3411
|
};
|
|
3404
3412
|
//#endregion
|
|
3405
3413
|
//#region ../compiler/dist/index-es.js
|
|
3406
|
-
var
|
|
3414
|
+
var Z = {
|
|
3407
3415
|
Data: "Data",
|
|
3408
3416
|
TagOpen: "TagOpen",
|
|
3409
3417
|
EndTagOpen: "EndTagOpen",
|
|
@@ -3417,35 +3425,32 @@ var X = {
|
|
|
3417
3425
|
Interpolation: "Interpolation",
|
|
3418
3426
|
RawText: "RawText",
|
|
3419
3427
|
EOF: "EOF"
|
|
3420
|
-
},
|
|
3428
|
+
}, Q = /* @__PURE__ */ function(e) {
|
|
3421
3429
|
return e[e.RETURN = 0] = "RETURN", e[e.CREATE_ELEMENT = 1] = "CREATE_ELEMENT", e[e.CREATE_TEXT = 2] = "CREATE_TEXT", e[e.CREATE_COMMENT = 3] = "CREATE_COMMENT", e[e.APPEND_CHILD = 4] = "APPEND_CHILD", e[e.SET_ATTR = 5] = "SET_ATTR", e[e.CREATE_FRAGMENT = 6] = "CREATE_FRAGMENT", e[e.INTERPOLATE_TEXT = 7] = "INTERPOLATE_TEXT", e[e.EXEC_SCRIPT = 12] = "EXEC_SCRIPT", e[e.REACTIVE_IF = 13] = "REACTIVE_IF", e[e.REACTIVE_FOR = 14] = "REACTIVE_FOR", e[e.MOUNT_COMPONENT = 15] = "MOUNT_COMPONENT", e[e.REACTIVE_ASYNC = 16] = "REACTIVE_ASYNC", e[e.REACTIVE_SWITCH = 17] = "REACTIVE_SWITCH", e;
|
|
3422
3430
|
}({});
|
|
3423
|
-
|
|
3431
|
+
Z.Data, Z.Comment, Z.EndTagOpen, Z.TagOpen, Z.Interpolation, Z.Data, Z.EOF, Z.TagOpen, Z.BeforeAttributeName, Z.EndTagOpen, Z.BeforeAttributeName, Z.BeforeAttributeName, Z.AttributeName, Z.Data, Z.RawText, Z.Data, Z.AttributeName, Z.AfterAttributeName, Z.AfterAttributeName, Z.BeforeAttributeValue, Z.BeforeAttributeName, Z.BeforeAttributeValue, Z.AttributeValueQuoted, Z.AttributeValueInterpolation, Z.AttributeValueQuoted, Z.BeforeAttributeName, Z.AttributeValueInterpolation, Z.BeforeAttributeName, Z.Comment, Z.Data, Z.Interpolation, Z.Data, Z.BeforeAttributeName, Z.RawText, Z.RawText, Z.EndTagOpen, Z.EOF, Z.EOF, Z.EOF;
|
|
3424
3432
|
//#endregion
|
|
3425
3433
|
//#region src/index.ts
|
|
3426
|
-
|
|
3427
|
-
return e.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
3428
|
-
}
|
|
3429
|
-
var Qt = /* @__PURE__ */ new Set([
|
|
3434
|
+
var tn = /* @__PURE__ */ new Set([
|
|
3430
3435
|
"__proto__",
|
|
3431
3436
|
"constructor",
|
|
3432
3437
|
"prototype",
|
|
3433
3438
|
"__drift_mark_dirty__"
|
|
3434
3439
|
]);
|
|
3435
|
-
function
|
|
3436
|
-
|
|
3440
|
+
function nn(e, t, n) {
|
|
3441
|
+
e && typeof e == "object" && !tn.has(t) && (e[t] = n);
|
|
3437
3442
|
}
|
|
3438
|
-
function
|
|
3439
|
-
if (
|
|
3440
|
-
let t = r
|
|
3443
|
+
function rn(e, t, n, r, i) {
|
|
3444
|
+
if (r) {
|
|
3445
|
+
let t = o(r, e, i);
|
|
3441
3446
|
if (typeof t == "function") {
|
|
3442
3447
|
t(n, 0);
|
|
3443
3448
|
return;
|
|
3444
3449
|
}
|
|
3445
3450
|
}
|
|
3446
|
-
|
|
3451
|
+
nn(e, t, n);
|
|
3447
3452
|
}
|
|
3448
|
-
var
|
|
3453
|
+
var an = class e {
|
|
3449
3454
|
static MAX_REGISTERS = 256;
|
|
3450
3455
|
registers = Array(e.MAX_REGISTERS);
|
|
3451
3456
|
scope = {};
|
|
@@ -3465,56 +3470,56 @@ var tn = /^[a-zA-Z_:][a-zA-Z0-9_.:-]*$/, nn = /^[a-zA-Z_:][a-zA-Z0-9_.:-]*$/, rn
|
|
|
3465
3470
|
return this.checkRegister(e), this.registers[e];
|
|
3466
3471
|
}
|
|
3467
3472
|
execute(t, n = {}) {
|
|
3468
|
-
let
|
|
3469
|
-
if (this.scope = Object.assign(Object.create(
|
|
3470
|
-
let t =
|
|
3473
|
+
let r = v(t) || t, i = n.scope || null;
|
|
3474
|
+
if (this.scope = Object.assign(Object.create(i), r.scope), r.derived && r.derived.length > 0) for (let e of r.derived) {
|
|
3475
|
+
let t = r.constants[e.exprIdx];
|
|
3471
3476
|
Object.defineProperty(this.scope, e.name, {
|
|
3472
|
-
get: () =>
|
|
3477
|
+
get: () => o(t, this.scope, this.declaredVars),
|
|
3473
3478
|
enumerable: !0,
|
|
3474
3479
|
configurable: !0
|
|
3475
3480
|
});
|
|
3476
3481
|
}
|
|
3477
|
-
this.declaredVars = new Set(
|
|
3478
|
-
let
|
|
3479
|
-
|
|
3482
|
+
this.declaredVars = new Set(r.declaredVars ?? []), this.registers.fill(null);
|
|
3483
|
+
let a = r.bytecode, c = r.constants, l = 0;
|
|
3484
|
+
_(this);
|
|
3480
3485
|
try {
|
|
3481
|
-
for (;
|
|
3482
|
-
let t =
|
|
3486
|
+
for (; l < a.length;) {
|
|
3487
|
+
let t = a[l];
|
|
3483
3488
|
switch (t) {
|
|
3484
|
-
case
|
|
3485
|
-
|
|
3489
|
+
case Q.RETURN:
|
|
3490
|
+
l += 1;
|
|
3486
3491
|
break;
|
|
3487
|
-
case
|
|
3488
|
-
let e =
|
|
3492
|
+
case Q.CREATE_ELEMENT: {
|
|
3493
|
+
let e = a[l + 1], t = a[l + 2], n = String(c[t]);
|
|
3489
3494
|
this.setRegister(e, {
|
|
3490
3495
|
type: "element",
|
|
3491
3496
|
tag: n,
|
|
3492
3497
|
attrs: /* @__PURE__ */ new Map(),
|
|
3493
3498
|
children: []
|
|
3494
|
-
}),
|
|
3499
|
+
}), l += 3;
|
|
3495
3500
|
break;
|
|
3496
3501
|
}
|
|
3497
|
-
case
|
|
3498
|
-
let t =
|
|
3499
|
-
if (
|
|
3500
|
-
let n = r === 255 ? null :
|
|
3502
|
+
case Q.MOUNT_COMPONENT: {
|
|
3503
|
+
let t = a[l + 1], n = a[l + 2], r = a[l + 3], i = String(c[n]), o = this.scope && i in this.scope ? this.scope[i] : typeof globalThis < "u" && globalThis[i], u = v(o);
|
|
3504
|
+
if (u) {
|
|
3505
|
+
let n = r === 255 ? null : c[r], a = s(n, this.scope, this.declaredVars), o;
|
|
3501
3506
|
if (n && n.__drift_children__ !== void 0) {
|
|
3502
|
-
let t =
|
|
3507
|
+
let t = c[n.__drift_children__] ?? n.__drift_children__;
|
|
3503
3508
|
if (t) {
|
|
3504
3509
|
let n = new e();
|
|
3505
|
-
n.parentVM = this,
|
|
3510
|
+
n.parentVM = this, o = n.execute(t, { scope: this.scope }) ?? void 0;
|
|
3506
3511
|
}
|
|
3507
3512
|
}
|
|
3508
|
-
let
|
|
3509
|
-
|
|
3510
|
-
let d = Object.assign(Object.create(this.scope), { props:
|
|
3511
|
-
|
|
3512
|
-
let f =
|
|
3513
|
-
if ("client:load" in
|
|
3513
|
+
let l = new e();
|
|
3514
|
+
l.parentVM = this;
|
|
3515
|
+
let d = Object.assign(Object.create(this.scope), { props: a }, a);
|
|
3516
|
+
o !== void 0 && (d.children = o);
|
|
3517
|
+
let f = l.execute(u, { scope: d }), p = null, m;
|
|
3518
|
+
if ("client:load" in a ? p = "eager" : "client:idle" in a ? p = "idle" : "client:visible" in a ? p = "visible" : "client:interaction" in a ? p = "interaction" : "client:media" in a && (p = "media", m = typeof a["client:media"] == "string" ? a["client:media"] : void 0), p) {
|
|
3514
3519
|
let e = /* @__PURE__ */ new Map();
|
|
3515
|
-
e.set("data-drift-island",
|
|
3520
|
+
e.set("data-drift-island", i), e.set("data-drift-trigger", p), m && e.set("data-drift-media", m);
|
|
3516
3521
|
let n = {};
|
|
3517
|
-
for (let [e, t] of Object.entries(
|
|
3522
|
+
for (let [e, t] of Object.entries(a)) !e.startsWith("client:") && e !== "__drift_children__" && e !== "__drift_props__" && (n[e] = t);
|
|
3518
3523
|
Object.keys(n).length > 0 && e.set("data-drift-props", JSON.stringify(n));
|
|
3519
3524
|
let r = {
|
|
3520
3525
|
type: "element",
|
|
@@ -3525,52 +3530,52 @@ var tn = /^[a-zA-Z_:][a-zA-Z0-9_.:-]*$/, nn = /^[a-zA-Z_:][a-zA-Z0-9_.:-]*$/, rn
|
|
|
3525
3530
|
this.setRegister(t, r);
|
|
3526
3531
|
} else f && this.setRegister(t, f);
|
|
3527
3532
|
}
|
|
3528
|
-
|
|
3533
|
+
l += 4;
|
|
3529
3534
|
break;
|
|
3530
3535
|
}
|
|
3531
|
-
case
|
|
3532
|
-
let e =
|
|
3536
|
+
case Q.CREATE_TEXT: {
|
|
3537
|
+
let e = a[l + 1], t = c[a[l + 2]], n = o(t, this.scope, this.declaredVars), r = n == null ? "" : String(n);
|
|
3533
3538
|
this.setRegister(e, {
|
|
3534
3539
|
type: "text",
|
|
3535
|
-
content:
|
|
3540
|
+
content: r,
|
|
3536
3541
|
children: []
|
|
3537
|
-
}),
|
|
3542
|
+
}), l += 3;
|
|
3538
3543
|
break;
|
|
3539
3544
|
}
|
|
3540
|
-
case
|
|
3541
|
-
let e =
|
|
3545
|
+
case Q.CREATE_COMMENT: {
|
|
3546
|
+
let e = a[l + 1], t = a[l + 2], n = String(c[t]);
|
|
3542
3547
|
this.setRegister(e, {
|
|
3543
3548
|
type: "comment",
|
|
3544
3549
|
content: n,
|
|
3545
3550
|
children: []
|
|
3546
|
-
}),
|
|
3551
|
+
}), l += 3;
|
|
3547
3552
|
break;
|
|
3548
3553
|
}
|
|
3549
|
-
case
|
|
3550
|
-
let e =
|
|
3554
|
+
case Q.CREATE_FRAGMENT: {
|
|
3555
|
+
let e = a[l + 1];
|
|
3551
3556
|
this.setRegister(e, {
|
|
3552
3557
|
type: "fragment",
|
|
3553
3558
|
children: []
|
|
3554
|
-
}),
|
|
3559
|
+
}), l += 2;
|
|
3555
3560
|
break;
|
|
3556
3561
|
}
|
|
3557
|
-
case
|
|
3558
|
-
let e =
|
|
3559
|
-
n.children.push(r),
|
|
3562
|
+
case Q.APPEND_CHILD: {
|
|
3563
|
+
let e = a[l + 1], t = a[l + 2], n = this.getRegister(e), r = this.getRegister(t);
|
|
3564
|
+
n.children.push(r), l += 3;
|
|
3560
3565
|
break;
|
|
3561
3566
|
}
|
|
3562
|
-
case
|
|
3563
|
-
let e =
|
|
3564
|
-
if (
|
|
3565
|
-
|
|
3567
|
+
case Q.SET_ATTR: {
|
|
3568
|
+
let e = a[l + 1], t = a[l + 2], n = a[l + 3], r = a[l + 4], i = this.getRegister(e), s = String(c[t]);
|
|
3569
|
+
if (s.startsWith("on")) {
|
|
3570
|
+
l += 5;
|
|
3566
3571
|
break;
|
|
3567
3572
|
}
|
|
3568
|
-
let u =
|
|
3569
|
-
|
|
3573
|
+
let u = c[n], f = r === 1 ? o(u, this.scope, this.declaredVars) : u;
|
|
3574
|
+
s === "style" && (f = d(f)), i.attrs ||= /* @__PURE__ */ new Map(), s === "className" ? i.attrs.set("class", f) : i.attrs.set(s, f), l += 5;
|
|
3570
3575
|
break;
|
|
3571
3576
|
}
|
|
3572
|
-
case
|
|
3573
|
-
let e =
|
|
3577
|
+
case Q.INTERPOLATE_TEXT: {
|
|
3578
|
+
let e = a[l + 1], t = c[a[l + 2]], n = o(t, this.scope, this.declaredVars);
|
|
3574
3579
|
if (n && typeof n == "object" && "type" in n && Array.isArray(n.children)) this.setRegister(e, n);
|
|
3575
3580
|
else {
|
|
3576
3581
|
let t = n == null ? "" : String(n);
|
|
@@ -3580,19 +3585,19 @@ var tn = /^[a-zA-Z_:][a-zA-Z0-9_.:-]*$/, nn = /^[a-zA-Z_:][a-zA-Z0-9_.:-]*$/, rn
|
|
|
3580
3585
|
children: []
|
|
3581
3586
|
});
|
|
3582
3587
|
}
|
|
3583
|
-
|
|
3588
|
+
l += 3;
|
|
3584
3589
|
break;
|
|
3585
3590
|
}
|
|
3586
|
-
case
|
|
3587
|
-
let e =
|
|
3588
|
-
if (Array.isArray(e)) for (let t of e)
|
|
3589
|
-
else e &&
|
|
3590
|
-
|
|
3591
|
+
case Q.EXEC_SCRIPT: {
|
|
3592
|
+
let e = c[a[l + 1]];
|
|
3593
|
+
if (Array.isArray(e)) for (let t of e) o(t, this.scope, this.declaredVars);
|
|
3594
|
+
else e && o(e, this.scope, this.declaredVars);
|
|
3595
|
+
l += 2;
|
|
3591
3596
|
break;
|
|
3592
3597
|
}
|
|
3593
|
-
case
|
|
3594
|
-
let t =
|
|
3595
|
-
if (
|
|
3598
|
+
case Q.REACTIVE_IF: {
|
|
3599
|
+
let t = a[l + 1], n = a[l + 2], r = a[l + 3], i = a[l + 4], s = this.getRegister(t), u = c[n], d = c[r], f = i === 255 ? null : c[i], p = o(u, this.scope, this.declaredVars) ? d : f;
|
|
3600
|
+
if (s.children.push({
|
|
3596
3601
|
type: "comment",
|
|
3597
3602
|
content: "if",
|
|
3598
3603
|
children: []
|
|
@@ -3600,25 +3605,25 @@ var tn = /^[a-zA-Z_:][a-zA-Z0-9_.:-]*$/, nn = /^[a-zA-Z_:][a-zA-Z0-9_.:-]*$/, rn
|
|
|
3600
3605
|
let t = Object.create(this.scope), n = new e();
|
|
3601
3606
|
n.parentVM = this;
|
|
3602
3607
|
let r = n.execute(p, { scope: t });
|
|
3603
|
-
r &&
|
|
3608
|
+
r && s.children.push(r);
|
|
3604
3609
|
}
|
|
3605
|
-
|
|
3610
|
+
s.children.push({
|
|
3606
3611
|
type: "comment",
|
|
3607
3612
|
content: "/if",
|
|
3608
3613
|
children: []
|
|
3609
|
-
}),
|
|
3614
|
+
}), l += 6;
|
|
3610
3615
|
break;
|
|
3611
3616
|
}
|
|
3612
|
-
case
|
|
3613
|
-
let t =
|
|
3614
|
-
if (Array.isArray(
|
|
3615
|
-
let t =
|
|
3616
|
-
if (p ===
|
|
3617
|
-
m =
|
|
3617
|
+
case Q.REACTIVE_SWITCH: {
|
|
3618
|
+
let t = a[l + 1], n = a[l + 2], r = a[l + 3], i = a[l + 4], s = this.getRegister(t), u = c[n], d = c[r], f = i === 255 ? null : c[i], p = o(u, this.scope, this.declaredVars), m = f;
|
|
3619
|
+
if (Array.isArray(d)) for (let e = 0; e < d.length; e++) {
|
|
3620
|
+
let t = d[e];
|
|
3621
|
+
if (p === o(c[t.testIdx], this.scope, this.declaredVars)) {
|
|
3622
|
+
m = c[t.modIdx];
|
|
3618
3623
|
break;
|
|
3619
3624
|
}
|
|
3620
3625
|
}
|
|
3621
|
-
if (
|
|
3626
|
+
if (s.children.push({
|
|
3622
3627
|
type: "comment",
|
|
3623
3628
|
content: "switch",
|
|
3624
3629
|
children: []
|
|
@@ -3626,166 +3631,166 @@ var tn = /^[a-zA-Z_:][a-zA-Z0-9_.:-]*$/, nn = /^[a-zA-Z_:][a-zA-Z0-9_.:-]*$/, rn
|
|
|
3626
3631
|
let t = Object.create(this.scope), n = new e();
|
|
3627
3632
|
n.parentVM = this;
|
|
3628
3633
|
let r = n.execute(m, { scope: t });
|
|
3629
|
-
r &&
|
|
3634
|
+
r && s.children.push(r);
|
|
3630
3635
|
}
|
|
3631
|
-
|
|
3636
|
+
s.children.push({
|
|
3632
3637
|
type: "comment",
|
|
3633
3638
|
content: "/switch",
|
|
3634
3639
|
children: []
|
|
3635
|
-
}),
|
|
3640
|
+
}), l += 6;
|
|
3636
3641
|
break;
|
|
3637
3642
|
}
|
|
3638
|
-
case
|
|
3639
|
-
let t =
|
|
3640
|
-
|
|
3641
|
-
let
|
|
3643
|
+
case Q.REACTIVE_FOR: {
|
|
3644
|
+
let t = a[l + 1], n = a[l + 2], r = a[l + 3], i = a[l + 4];
|
|
3645
|
+
a[l + 5];
|
|
3646
|
+
let s = a[l + 6], u = a[l + 10] ?? 255, d = u === 255 ? null : c[u], f = this.getRegister(t), p = c[n], m = c[r], h = i === 255 ? null : c[i], g = c[s], _ = o(p, this.scope, this.declaredVars), v = ee(_);
|
|
3642
3647
|
f.children.push({
|
|
3643
3648
|
type: "comment",
|
|
3644
3649
|
content: "for",
|
|
3645
3650
|
children: []
|
|
3646
3651
|
});
|
|
3647
|
-
for (let t = 0; t <
|
|
3652
|
+
for (let t = 0; t < v.length; t++) {
|
|
3648
3653
|
let n = Object.create(this.scope);
|
|
3649
|
-
if (
|
|
3650
|
-
let e =
|
|
3651
|
-
typeof e == "function" ? e(
|
|
3652
|
-
} else
|
|
3653
|
-
let
|
|
3654
|
-
|
|
3655
|
-
let
|
|
3656
|
-
|
|
3654
|
+
if (d) {
|
|
3655
|
+
let e = o(d, n, this.declaredVars);
|
|
3656
|
+
typeof e == "function" ? e(v[t], t) : (nn(n, m, v[t]), h && nn(n, h, t));
|
|
3657
|
+
} else nn(n, m, v[t]), h && nn(n, h, t);
|
|
3658
|
+
let r = new e();
|
|
3659
|
+
r.parentVM = this;
|
|
3660
|
+
let i = r.execute(g, { scope: n });
|
|
3661
|
+
i && f.children.push(i);
|
|
3657
3662
|
}
|
|
3658
3663
|
f.children.push({
|
|
3659
3664
|
type: "comment",
|
|
3660
3665
|
content: "/for",
|
|
3661
3666
|
children: []
|
|
3662
|
-
}),
|
|
3667
|
+
}), l += 11;
|
|
3663
3668
|
break;
|
|
3664
3669
|
}
|
|
3665
|
-
case
|
|
3666
|
-
let t =
|
|
3667
|
-
|
|
3668
|
-
},
|
|
3670
|
+
case Q.REACTIVE_ASYNC: {
|
|
3671
|
+
let t = a[l + 1], n = a[l + 2], r = a[l + 3], i = a[l + 4], s = a[l + 5], u = a[l + 6], d = a[l + 8] ?? 255, f = d === 255 ? null : c[d], p = this.getRegister(t), m = c[n], h = c[r], g = c[i], _ = s === 255 ? null : c[s], v = u === 255 ? null : c[u], ee = (e, t) => {
|
|
3672
|
+
rn(e, h, t, f, this.declaredVars);
|
|
3673
|
+
}, te = o(m, this.scope, this.declaredVars), y = e.nextAsyncId++;
|
|
3669
3674
|
if (this.isStreaming) {
|
|
3670
3675
|
if (p.children.push({
|
|
3671
3676
|
type: "comment",
|
|
3672
|
-
content: `drift-async:${
|
|
3677
|
+
content: `drift-async:${y}`,
|
|
3673
3678
|
children: []
|
|
3674
|
-
}),
|
|
3679
|
+
}), _) {
|
|
3675
3680
|
let t = Object.create(this.scope), n = new e();
|
|
3676
3681
|
n.parentVM = this, n.isStreaming = !0;
|
|
3677
|
-
let r = n.execute(
|
|
3682
|
+
let r = n.execute(_, { scope: t });
|
|
3678
3683
|
r && p.children.push(r);
|
|
3679
3684
|
}
|
|
3680
3685
|
p.children.push({
|
|
3681
3686
|
type: "comment",
|
|
3682
|
-
content: `/drift-async:${
|
|
3687
|
+
content: `/drift-async:${y}`,
|
|
3683
3688
|
children: []
|
|
3684
3689
|
}), this.asyncBoundaries.push({
|
|
3685
|
-
id:
|
|
3686
|
-
promise:
|
|
3687
|
-
alias:
|
|
3688
|
-
bodyMod:
|
|
3689
|
-
fallbackMod:
|
|
3690
|
-
catchMod:
|
|
3690
|
+
id: y,
|
|
3691
|
+
promise: te,
|
|
3692
|
+
alias: h,
|
|
3693
|
+
bodyMod: g,
|
|
3694
|
+
fallbackMod: _,
|
|
3695
|
+
catchMod: v,
|
|
3691
3696
|
scope: this.scope,
|
|
3692
3697
|
aliasPopulator: f,
|
|
3693
3698
|
declaredVars: this.declaredVars
|
|
3694
3699
|
});
|
|
3695
|
-
} else if (
|
|
3700
|
+
} else if (te && typeof te.then == "function") {
|
|
3696
3701
|
if (p.children.push({
|
|
3697
3702
|
type: "comment",
|
|
3698
|
-
content: `drift-async:${
|
|
3703
|
+
content: `drift-async:${y}`,
|
|
3699
3704
|
children: []
|
|
3700
|
-
}),
|
|
3705
|
+
}), _) {
|
|
3701
3706
|
let t = Object.create(this.scope), n = new e();
|
|
3702
3707
|
n.parentVM = this;
|
|
3703
|
-
let r = n.execute(
|
|
3708
|
+
let r = n.execute(_, { scope: t });
|
|
3704
3709
|
r && p.children.push(r);
|
|
3705
3710
|
}
|
|
3706
3711
|
p.children.push({
|
|
3707
3712
|
type: "comment",
|
|
3708
|
-
content: `/drift-async:${
|
|
3713
|
+
content: `/drift-async:${y}`,
|
|
3709
3714
|
children: []
|
|
3710
3715
|
});
|
|
3711
3716
|
} else {
|
|
3712
3717
|
p.children.push({
|
|
3713
3718
|
type: "comment",
|
|
3714
|
-
content: `drift-async:${
|
|
3719
|
+
content: `drift-async:${y}`,
|
|
3715
3720
|
children: []
|
|
3716
3721
|
});
|
|
3717
3722
|
let t = Object.create(this.scope);
|
|
3718
|
-
|
|
3723
|
+
ee(t, te);
|
|
3719
3724
|
let n = new e();
|
|
3720
3725
|
n.parentVM = this;
|
|
3721
|
-
let r = n.execute(
|
|
3726
|
+
let r = n.execute(g, { scope: t });
|
|
3722
3727
|
r && p.children.push(r), p.children.push({
|
|
3723
3728
|
type: "comment",
|
|
3724
|
-
content: `/drift-async:${
|
|
3729
|
+
content: `/drift-async:${y}`,
|
|
3725
3730
|
children: []
|
|
3726
3731
|
});
|
|
3727
3732
|
}
|
|
3728
|
-
|
|
3733
|
+
l += 9;
|
|
3729
3734
|
break;
|
|
3730
3735
|
}
|
|
3731
|
-
default: throw Error(`DriftServerVM: Unknown Opcode ${t} at PC ${
|
|
3736
|
+
default: throw Error(`DriftServerVM: Unknown Opcode ${t} at PC ${l}`);
|
|
3732
3737
|
}
|
|
3733
3738
|
}
|
|
3734
3739
|
return this.getRegister(0);
|
|
3735
3740
|
} finally {
|
|
3736
|
-
|
|
3741
|
+
m();
|
|
3737
3742
|
}
|
|
3738
3743
|
}
|
|
3739
3744
|
};
|
|
3740
|
-
function
|
|
3745
|
+
function on(e, t) {
|
|
3741
3746
|
if (!t) return e;
|
|
3742
3747
|
let n = t.toLowerCase();
|
|
3743
3748
|
return n === "script" ? e.replace(/<\/script/gi, "<\\/script") : n === "style" ? e.replace(/<\/style/gi, "<\\/style") : e;
|
|
3744
3749
|
}
|
|
3745
|
-
function $(
|
|
3746
|
-
if (!
|
|
3747
|
-
if (typeof
|
|
3748
|
-
if (
|
|
3749
|
-
if (
|
|
3750
|
-
if (
|
|
3751
|
-
if (
|
|
3752
|
-
let
|
|
3753
|
-
if (!
|
|
3754
|
-
let
|
|
3755
|
-
if (
|
|
3756
|
-
if (!
|
|
3757
|
-
let
|
|
3758
|
-
n === !0 ?
|
|
3750
|
+
function $(r, i = !1, o) {
|
|
3751
|
+
if (!r) return "";
|
|
3752
|
+
if (typeof r == "string") return i ? on(r, o) : a(r);
|
|
3753
|
+
if (r.type === "text") return i ? on(r.content ?? "", o) : a(r.content ?? "");
|
|
3754
|
+
if (r.type === "comment") return `<!--${String(r.content ?? "").replace(/-->/g, "-- >").replace(/--!>/g, "--! >")}-->`;
|
|
3755
|
+
if (r.type === "fragment") return r.children.map((e) => $(e, i, o)).join("");
|
|
3756
|
+
if (r.type === "element") {
|
|
3757
|
+
let i = r.tag;
|
|
3758
|
+
if (!i || !t.test(i)) return "";
|
|
3759
|
+
let o = i.toLowerCase() === "script" || i.toLowerCase() === "style", s = "";
|
|
3760
|
+
if (r.attrs && r.attrs.size > 0) for (let [t, n] of r.attrs.entries()) {
|
|
3761
|
+
if (!e.test(t) || t === "style" && (n === "" || n == null || n === !1)) continue;
|
|
3762
|
+
let r = t.startsWith("aria-") || t.startsWith("data-");
|
|
3763
|
+
n === !0 ? s += r ? ` ${t}="true"` : ` ${t}` : n === !1 ? r && (s += ` ${t}="false"`) : n != null && (s += ` ${t}="${a(String(n))}"`);
|
|
3759
3764
|
}
|
|
3760
|
-
if (
|
|
3761
|
-
let
|
|
3762
|
-
return `<${
|
|
3765
|
+
if (n.has(i.toLowerCase())) return `<${i}${s} />`;
|
|
3766
|
+
let c = r.children.map((e) => $(e, o, o ? i : void 0)).join("");
|
|
3767
|
+
return `<${i}${s}>${c}</${i}>`;
|
|
3763
3768
|
}
|
|
3764
3769
|
return "";
|
|
3765
3770
|
}
|
|
3766
|
-
function
|
|
3767
|
-
let n = new
|
|
3771
|
+
function sn(e, t = {}) {
|
|
3772
|
+
let n = new an().execute(e, t);
|
|
3768
3773
|
return n ? $(n) : "";
|
|
3769
3774
|
}
|
|
3770
|
-
function
|
|
3771
|
-
let r = n.islandTag || "div", i = n.trigger || "idle",
|
|
3772
|
-
|
|
3773
|
-
let
|
|
3775
|
+
function cn(e, t, n = {}) {
|
|
3776
|
+
let r = n.islandTag || "div", i = u(r) ? r : "div", o = n.trigger || "idle", s = ` data-drift-island="${a(e)}"`;
|
|
3777
|
+
o && (s += ` data-drift-trigger="${a(o)}"`), n.props && Object.keys(n.props).length > 0 && (s += ` data-drift-props="${a(JSON.stringify(n.props))}"`), n.timeout !== void 0 && (s += ` data-drift-timeout="${n.timeout}"`), n.media && (s += ` data-drift-media="${a(n.media)}"`), n.rootMargin && (s += ` data-drift-root-margin="${a(n.rootMargin)}"`);
|
|
3778
|
+
let c = n.props ? {
|
|
3774
3779
|
...n.scope,
|
|
3775
3780
|
props: n.props,
|
|
3776
3781
|
...n.props
|
|
3777
|
-
} : n.scope,
|
|
3782
|
+
} : n.scope, l = sn(t, {
|
|
3778
3783
|
...n,
|
|
3779
|
-
scope:
|
|
3784
|
+
scope: c
|
|
3780
3785
|
});
|
|
3781
|
-
return `<${
|
|
3786
|
+
return `<${i}${s}>${l}</${i}>`;
|
|
3782
3787
|
}
|
|
3783
|
-
function
|
|
3788
|
+
function ln(e, t = {}) {
|
|
3784
3789
|
let n = !1, r = null, i = new ReadableStream({
|
|
3785
3790
|
start(i) {
|
|
3786
|
-
let
|
|
3787
|
-
n || i.enqueue(
|
|
3788
|
-
},
|
|
3791
|
+
let o = new TextEncoder(), s = (e) => {
|
|
3792
|
+
n || i.enqueue(o.encode(e));
|
|
3793
|
+
}, c = () => {
|
|
3789
3794
|
if (!n) {
|
|
3790
3795
|
r && clearTimeout(r);
|
|
3791
3796
|
try {
|
|
@@ -3797,41 +3802,41 @@ function cn(e, t = {}) {
|
|
|
3797
3802
|
}
|
|
3798
3803
|
};
|
|
3799
3804
|
try {
|
|
3800
|
-
let i = new
|
|
3805
|
+
let i = new an();
|
|
3801
3806
|
i.isStreaming = !0;
|
|
3802
|
-
let
|
|
3803
|
-
if (
|
|
3804
|
-
let e = `<script${t.nonce ? ` nonce="${
|
|
3805
|
-
|
|
3807
|
+
let o = i.execute(e, t), l = o ? $(o) : "", u = i.asyncBoundaries;
|
|
3808
|
+
if (u.length > 0) {
|
|
3809
|
+
let e = `<script${t.nonce ? ` nonce="${a(t.nonce)}"` : ""}>function __drift_swap(d,t){var e=document.getElementById(t);if(!e)return;var w=document.createTreeWalker(document.body,128,null),s=null,k=null;while(w.nextNode()){var c=w.currentNode;if(c.nodeValue==='drift-async:'+d)s=c;else if(c.nodeValue==='/drift-async:'+d){k=c;break;}}if(s&&k&&s.parentNode){var p=s.parentNode,r=s.nextSibling;while(r&&r!==k){var n=r.nextSibling;p.removeChild(r);r=n;}p.insertBefore(e.content,k);e.remove();}}<\/script>`;
|
|
3810
|
+
l += e;
|
|
3806
3811
|
}
|
|
3807
|
-
if (
|
|
3808
|
-
|
|
3812
|
+
if (s(l), t.onShellReady?.(), u.length === 0) {
|
|
3813
|
+
c();
|
|
3809
3814
|
return;
|
|
3810
3815
|
}
|
|
3811
3816
|
t.timeoutMs && t.timeoutMs > 0 && (r = setTimeout(() => {
|
|
3812
3817
|
if (!n) {
|
|
3813
3818
|
let e = /* @__PURE__ */ Error(`[DriftJS] renderToStream timed out after ${t.timeoutMs}ms`);
|
|
3814
|
-
t.onError?.(e),
|
|
3819
|
+
t.onError?.(e), c();
|
|
3815
3820
|
}
|
|
3816
3821
|
}, t.timeoutMs));
|
|
3817
|
-
let
|
|
3818
|
-
for (let e of
|
|
3819
|
-
let { id: r, promise: i, alias:
|
|
3822
|
+
let d = u.length;
|
|
3823
|
+
for (let e of u) {
|
|
3824
|
+
let { id: r, promise: i, alias: o, bodyMod: l, catchMod: u, scope: f, aliasPopulator: p, declaredVars: m } = e;
|
|
3820
3825
|
Promise.resolve(i).then((e) => {
|
|
3821
3826
|
if (n) return;
|
|
3822
|
-
let i = Object.create(
|
|
3823
|
-
|
|
3824
|
-
let
|
|
3825
|
-
|
|
3827
|
+
let i = Object.create(f);
|
|
3828
|
+
rn(i, o, e, p, m);
|
|
3829
|
+
let c = new an().execute(l, { scope: i }), u = c ? $(c) : "", d = t.nonce ? ` nonce="${a(t.nonce)}"` : "", h = `<template id="drift-t-${r}">${u}</template><script${d}>__drift_swap("${r}","drift-t-${r}")<\/script>`;
|
|
3830
|
+
s(h);
|
|
3826
3831
|
}).catch((e) => {
|
|
3827
|
-
if (!n && (t.onError?.(e),
|
|
3828
|
-
let n = Object.create(
|
|
3829
|
-
|
|
3830
|
-
let i = new
|
|
3831
|
-
|
|
3832
|
+
if (!n && (t.onError?.(e), u)) {
|
|
3833
|
+
let n = Object.create(f);
|
|
3834
|
+
u.errorVar && nn(n, u.errorVar, e);
|
|
3835
|
+
let i = new an().execute(u.module, { scope: n }), o = i ? $(i) : "", c = t.nonce ? ` nonce="${a(t.nonce)}"` : "", l = `<template id="drift-t-${r}">${o}</template><script${c}>__drift_swap("${r}","drift-t-${r}")<\/script>`;
|
|
3836
|
+
s(l);
|
|
3832
3837
|
}
|
|
3833
3838
|
}).finally(() => {
|
|
3834
|
-
|
|
3839
|
+
d--, d === 0 && c();
|
|
3835
3840
|
});
|
|
3836
3841
|
}
|
|
3837
3842
|
} catch (e) {
|
|
@@ -3841,15 +3846,15 @@ function cn(e, t = {}) {
|
|
|
3841
3846
|
cancel(e) {
|
|
3842
3847
|
n = !0, r && clearTimeout(r);
|
|
3843
3848
|
}
|
|
3844
|
-
}),
|
|
3845
|
-
return
|
|
3849
|
+
}), o = i;
|
|
3850
|
+
return o.abort = (e) => {
|
|
3846
3851
|
n = !0, r && clearTimeout(r);
|
|
3847
3852
|
try {
|
|
3848
|
-
|
|
3853
|
+
o.cancel(e);
|
|
3849
3854
|
} catch (e) {
|
|
3850
3855
|
console.debug("[DriftJS SSR] Stream abort cancel error:", e);
|
|
3851
3856
|
}
|
|
3852
|
-
},
|
|
3857
|
+
}, o.pipe = function(e) {
|
|
3853
3858
|
let t = i.getReader(), n = e;
|
|
3854
3859
|
async function r() {
|
|
3855
3860
|
try {
|
|
@@ -3866,7 +3871,7 @@ function cn(e, t = {}) {
|
|
|
3866
3871
|
}
|
|
3867
3872
|
}
|
|
3868
3873
|
return r(), e;
|
|
3869
|
-
},
|
|
3874
|
+
}, o;
|
|
3870
3875
|
}
|
|
3871
3876
|
//#endregion
|
|
3872
|
-
export {
|
|
3877
|
+
export { an as DriftServerVM, r as createContext, i as effect, c as inject, l as injectContext, f as onMount, p as onUnmount, h as provide, g as provideContext, cn as renderIslandToString, ln as renderToStream, sn as renderToString, $ as serializeNode };
|