@storm-software/eslint 0.107.2 → 0.107.3

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.
Files changed (120) hide show
  1. package/README.md +1 -1
  2. package/dist/chunk-723HQUNP.js +14 -0
  3. package/dist/{chunk-V7TQDECV.js → chunk-E7T4SNH3.js} +2 -4
  4. package/dist/chunk-ESFBJFNU.cjs +149 -0
  5. package/dist/chunk-FTXILLLE.js +24 -0
  6. package/dist/chunk-JS7W7LMD.cjs +14 -0
  7. package/dist/chunk-KND2ZTLT.cjs +49 -0
  8. package/dist/chunk-LSG5T3ZK.js +313 -0
  9. package/dist/{chunk-CIGM5K4I.cjs → chunk-NFPQICLG.cjs} +2 -4
  10. package/dist/chunk-OGGLIE6C.cjs +24 -0
  11. package/dist/chunk-QDLKHXPX.cjs +11 -0
  12. package/dist/chunk-RTM5LCEB.js +149 -0
  13. package/dist/chunk-SHUYVCID.js +6 -0
  14. package/dist/chunk-TXTXUVRZ.cjs +313 -0
  15. package/dist/chunk-VJ6CKC4P.js +37 -0
  16. package/dist/chunk-Y67QTC5U.js +49 -0
  17. package/dist/chunk-YQQ366F7.cjs +37 -0
  18. package/dist/preset.cjs +153 -20182
  19. package/dist/preset.js +71 -20098
  20. package/dist/rules/import.cjs +292 -0
  21. package/dist/rules/import.d.cts +5 -0
  22. package/dist/rules/import.d.ts +5 -0
  23. package/dist/rules/import.js +292 -0
  24. package/dist/rules/jsx-a11y.cjs +341 -0
  25. package/dist/rules/jsx-a11y.d.cts +5 -0
  26. package/dist/rules/jsx-a11y.d.ts +5 -0
  27. package/dist/rules/jsx-a11y.js +341 -0
  28. package/dist/rules/react-hooks.cjs +15 -0
  29. package/dist/rules/react-hooks.d.cts +5 -0
  30. package/dist/rules/react-hooks.d.ts +5 -0
  31. package/dist/rules/react-hooks.js +15 -0
  32. package/dist/rules/react.cjs +689 -0
  33. package/dist/rules/react.d.cts +5 -0
  34. package/dist/rules/react.d.ts +5 -0
  35. package/dist/rules/react.js +689 -0
  36. package/dist/rules/storm.cjs +3 -3
  37. package/dist/rules/storm.js +2 -2
  38. package/dist/rules/ts-docs.cjs +7 -0
  39. package/dist/rules/ts-docs.d.cts +5 -0
  40. package/dist/rules/ts-docs.d.ts +5 -0
  41. package/dist/rules/ts-docs.js +7 -0
  42. package/dist/utils/banner-plugin.cjs +9 -0
  43. package/dist/utils/banner-plugin.d.cts +6 -0
  44. package/dist/utils/banner-plugin.d.ts +6 -0
  45. package/dist/utils/banner-plugin.js +9 -0
  46. package/dist/utils/constants.cjs +25 -0
  47. package/dist/utils/constants.d.cts +24 -0
  48. package/dist/utils/constants.d.ts +24 -0
  49. package/dist/utils/constants.js +25 -0
  50. package/dist/utils/create-flat-import-plugin.cjs +20 -0
  51. package/dist/utils/create-flat-import-plugin.d.cts +11 -0
  52. package/dist/utils/create-flat-import-plugin.d.ts +11 -0
  53. package/dist/utils/create-flat-import-plugin.js +20 -0
  54. package/dist/utils/format-config.cjs +7 -0
  55. package/dist/utils/format-config.d.cts +5 -0
  56. package/dist/utils/format-config.d.ts +5 -0
  57. package/dist/utils/format-config.js +7 -0
  58. package/dist/utils/get-file-banner.cjs +8 -0
  59. package/dist/utils/get-file-banner.d.cts +9 -0
  60. package/dist/utils/get-file-banner.d.ts +9 -0
  61. package/dist/utils/get-file-banner.js +8 -0
  62. package/dist/utils/ignores.cjs +7 -0
  63. package/dist/utils/ignores.d.cts +3 -0
  64. package/dist/utils/ignores.d.ts +3 -0
  65. package/dist/utils/ignores.js +7 -0
  66. package/dist/utils/index.cjs +33 -0
  67. package/dist/utils/index.d.cts +4 -0
  68. package/dist/utils/index.d.ts +4 -0
  69. package/dist/utils/index.js +33 -0
  70. package/package.json +1 -1
  71. package/dist/acorn-CCDA5Y7C.cjs +0 -3131
  72. package/dist/acorn-PTPZSZS6.js +0 -3131
  73. package/dist/angular-NDZ53HZT.js +0 -3014
  74. package/dist/angular-XXKPBORI.cjs +0 -3014
  75. package/dist/babel-7OKY5N6D.js +0 -7166
  76. package/dist/babel-ZAEH2MD6.cjs +0 -7166
  77. package/dist/chunk-2GN5RLNR.js +0 -55
  78. package/dist/chunk-BHJDUHOW.cjs +0 -84
  79. package/dist/chunk-GSOR5H2M.cjs +0 -4022
  80. package/dist/chunk-HXTIVITI.js +0 -4022
  81. package/dist/chunk-KOFZWJCN.js +0 -84
  82. package/dist/chunk-PWYAFNCE.cjs +0 -59
  83. package/dist/dist-3EJMVSVL.js +0 -15716
  84. package/dist/dist-GB3FBWYD.cjs +0 -15717
  85. package/dist/esm-HMD4VZC2.js +0 -1715
  86. package/dist/esm-KLBQYHBS.cjs +0 -1715
  87. package/dist/estree-4FZVBA3I.js +0 -4859
  88. package/dist/estree-TXEM7J44.cjs +0 -4859
  89. package/dist/execa-6ZJHRRGH.js +0 -2424
  90. package/dist/execa-RWXGY3AF.cjs +0 -2424
  91. package/dist/flow-LEJXBIDN.cjs +0 -28076
  92. package/dist/flow-TYUDSDMT.js +0 -28076
  93. package/dist/glimmer-BFX2N2PO.js +0 -3062
  94. package/dist/glimmer-CI4NLBJN.cjs +0 -3062
  95. package/dist/graphql-ATKH2UJU.js +0 -1355
  96. package/dist/graphql-F26LLKM2.cjs +0 -1355
  97. package/dist/html-DPSCSLFD.cjs +0 -3036
  98. package/dist/html-TQZJETBK.js +0 -3036
  99. package/dist/json5-2N47OU6X.cjs +0 -764
  100. package/dist/json5-DGCDZGKI.js +0 -764
  101. package/dist/jsonc-3RGXS4EK.js +0 -447
  102. package/dist/jsonc-H5JHBJWX.cjs +0 -447
  103. package/dist/markdown-ENFWQVL3.js +0 -3846
  104. package/dist/markdown-KDQOGP3N.cjs +0 -3846
  105. package/dist/meriyah-UO5W2QS6.js +0 -2720
  106. package/dist/meriyah-XW3PRYEN.cjs +0 -2720
  107. package/dist/multipart-parser-POHWNSZ2.cjs +0 -186
  108. package/dist/multipart-parser-ZBOXYK27.js +0 -186
  109. package/dist/postcss-ICZTIVVB.js +0 -5440
  110. package/dist/postcss-OH45GBM4.cjs +0 -5440
  111. package/dist/prettier-U5XWBEA6.js +0 -23559
  112. package/dist/prettier-UYPX4PW2.cjs +0 -23560
  113. package/dist/toml-NUWFIHJI.js +0 -509
  114. package/dist/toml-WFSEGMHQ.cjs +0 -509
  115. package/dist/typescript-6RS3BOJH.js +0 -14956
  116. package/dist/typescript-K6YYG6NX.cjs +0 -14956
  117. package/dist/yaml-DOGTEZV3.js +0 -4584
  118. package/dist/yaml-GNGUKHFM.cjs +0 -4584
  119. package/dist/yaml-UATHGD5B.cjs +0 -1119
  120. package/dist/yaml-XTDKP6DN.js +0 -1119
@@ -1,3062 +0,0 @@
1
- import {
2
- __esm,
3
- __name,
4
- init_esm_shims
5
- } from "./chunk-2GN5RLNR.js";
6
-
7
- // ../../node_modules/.pnpm/prettier@3.4.2/node_modules/prettier/plugins/glimmer.mjs
8
- function Jn(e5) {
9
- if (typeof e5 == "string") return Mt;
10
- if (Array.isArray(e5)) return zt;
11
- if (!e5) return;
12
- let { type: t } = e5;
13
- if (me.has(t)) return t;
14
- }
15
- function Xn(e5) {
16
- let t = e5 === null ? "null" : typeof e5;
17
- if (t !== "string" && t !== "object") return `Unexpected doc '${t}',
18
- Expected it to be 'string' or 'object'.`;
19
- if (Jt(e5)) throw new Error("doc is valid.");
20
- let r = Object.prototype.toString.call(e5);
21
- if (r !== "[object Object]") return `Unexpected doc '${r}'.`;
22
- let n = $n([...me].map((s) => `'${s}'`));
23
- return `Unexpected doc.type '${e5.type}'.
24
- Expected it to be ${n}.`;
25
- }
26
- function B(e5) {
27
- return dt(e5), { type: Lt, contents: e5 };
28
- }
29
- function Zn(e5, t) {
30
- return dt(t), { type: Dt, contents: t, n: e5 };
31
- }
32
- function R(e5, t = {}) {
33
- return dt(e5), de(t.expandedStates, true), { type: _t, id: t.id, contents: e5, break: !!t.shouldBreak, expandedStates: t.expandedStates };
34
- }
35
- function Ke(e5) {
36
- return Zn(-1, e5);
37
- }
38
- function We(e5) {
39
- return de(e5), { type: Ot, parts: e5 };
40
- }
41
- function je(e5, t = "", r = {}) {
42
- return dt(e5), t !== "" && dt(t), { type: Bt, breakContents: e5, flatContents: t, groupId: r.groupId };
43
- }
44
- function bt(e5, t) {
45
- dt(e5), de(t);
46
- let r = [];
47
- for (let n = 0; n < t.length; n++) n !== 0 && r.push(e5), r.push(t[n]);
48
- return r;
49
- }
50
- function ns(e5, t) {
51
- if (typeof e5 == "string") return t(e5);
52
- let r = /* @__PURE__ */ new Map();
53
- return n(e5);
54
- function n(i) {
55
- if (r.has(i)) return r.get(i);
56
- let a = s(i);
57
- return r.set(i, a), a;
58
- }
59
- __name(n, "n");
60
- function s(i) {
61
- switch (Jt(i)) {
62
- case zt:
63
- return t(i.map(n));
64
- case Ot:
65
- return t({ ...i, parts: i.parts.map(n) });
66
- case Bt:
67
- return t({ ...i, breakContents: n(i.breakContents), flatContents: n(i.flatContents) });
68
- case _t: {
69
- let { expandedStates: a, contents: o } = i;
70
- return a ? (a = a.map(n), o = a[0]) : o = n(o), t({ ...i, contents: o, expandedStates: a });
71
- }
72
- case Dt:
73
- case Lt:
74
- case Kt:
75
- case Qt:
76
- case Wt:
77
- return t({ ...i, contents: n(i.contents) });
78
- case Mt:
79
- case Yt:
80
- case Gt:
81
- case jt:
82
- case $:
83
- case It:
84
- return t(i);
85
- default:
86
- throw new Ge(i);
87
- }
88
- }
89
- __name(s, "s");
90
- }
91
- function Fr(e5, t = Hr) {
92
- return ns(e5, (r) => typeof r == "string" ? bt(t, r.split(`
93
- `)) : r);
94
- }
95
- function ss(e5, t) {
96
- let r = t === true || t === ge ? ge : Ur, n = r === ge ? Ur : ge, s = 0, i = 0;
97
- for (let a of e5) a === r ? s++ : a === n && i++;
98
- return s > i ? n : r;
99
- }
100
- function Qe(e5) {
101
- if (typeof e5 != "string") throw new TypeError("Expected a string");
102
- return e5.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
103
- }
104
- function os(e5) {
105
- return Array.isArray(e5) && e5.length > 0;
106
- }
107
- function Yr(e5, t) {
108
- if (e5.type === "TextNode") {
109
- let r = e5.chars.trim();
110
- if (!r) return null;
111
- t.chars = z.split(r).join(" ");
112
- }
113
- e5.type === "ElementNode" && (delete t.startTag, delete t.openTag, delete t.parts, delete t.endTag, delete t.closeTag, delete t.nameNode, delete t.body, delete t.blockParamNodes, delete t.params, delete t.path), e5.type === "Block" && (delete t.blockParamNodes, delete t.params), e5.type === "AttrNode" && e5.name.toLowerCase() === "class" && delete t.value, e5.type === "PathExpression" && (t.head = e5.head.original);
114
- }
115
- function Zt(e5) {
116
- if (Xt !== null && typeof Xt.property) {
117
- let t = Xt;
118
- return Xt = Zt.prototype = null, t;
119
- }
120
- return Xt = Zt.prototype = e5 ?? /* @__PURE__ */ Object.create(null), new Zt();
121
- }
122
- function Xe(e5) {
123
- return Zt(e5);
124
- }
125
- function cs(e5, t = "type") {
126
- Xe(e5);
127
- function r(n) {
128
- let s = n[t], i = e5[s];
129
- if (!Array.isArray(i)) throw Object.assign(new Error(`Missing visitor keys for '${s}'.`), { node: n });
130
- return i;
131
- }
132
- __name(r, "r");
133
- return r;
134
- }
135
- function yt(e5) {
136
- return e5.loc.start.offset;
137
- }
138
- function te(e5) {
139
- return e5.loc.end.offset;
140
- }
141
- function $r(e5) {
142
- return e5.toUpperCase() === e5;
143
- }
144
- function hs(e5) {
145
- return e5.type === "ElementNode" && typeof e5.tag == "string" && !e5.tag.startsWith(":") && ($r(e5.tag[0]) || e5.tag.includes("."));
146
- }
147
- function ps(e5) {
148
- return Qr.has(e5.toLowerCase()) && !$r(e5[0]);
149
- }
150
- function Ze(e5) {
151
- return e5.selfClosing === true || ps(e5.tag) || hs(e5) && e5.children.every((t) => ye(t));
152
- }
153
- function ye(e5) {
154
- return e5.type === "TextNode" && !/\S/u.test(e5.chars);
155
- }
156
- function Jr(e5) {
157
- return (e5 == null ? void 0 : e5.type) === "MustacheCommentStatement" && typeof e5.value == "string" && e5.value.trim() === "prettier-ignore";
158
- }
159
- function Xr(e5) {
160
- return Jr(e5.node) || e5.isInArray && (e5.key === "children" || e5.key === "body" || e5.key === "parts") && Jr(e5.siblings[e5.index - 2]);
161
- }
162
- function fs(e5, t, r) {
163
- var s, i, a, o, c, h, p, m, v;
164
- let { node: n } = e5;
165
- switch (n.type) {
166
- case "Block":
167
- case "Program":
168
- case "Template":
169
- return R(e5.map(r, "body"));
170
- case "ElementNode": {
171
- let g = R(ds(e5, r)), E = t.htmlWhitespaceSensitivity === "ignore" && ((s = e5.next) == null ? void 0 : s.type) === "ElementNode" ? M : "";
172
- if (Ze(n)) return [g, E];
173
- let N = ["</", n.tag, ">"];
174
- return n.children.length === 0 ? [g, B(N), E] : t.htmlWhitespaceSensitivity === "ignore" ? [g, B(Zr(e5, t, r)), gt, B(N), E] : [g, B(R(Zr(e5, t, r))), B(N), E];
175
- }
176
- case "BlockStatement":
177
- return vs(e5) ? [Es(e5, r), rn(e5, r, t), nn(e5, r, t)] : [ks(e5, r), R([rn(e5, r, t), nn(e5, r, t), ws(e5, r, t)])];
178
- case "ElementModifierStatement":
179
- return R(["{{", an(e5, r), "}}"]);
180
- case "MustacheStatement":
181
- return R([ke(n), an(e5, r), Se(n)]);
182
- case "SubExpression":
183
- return R(["(", Ls(e5, r), M, ")"]);
184
- case "AttrNode": {
185
- let { name: g, value: E } = n, N = E.type === "TextNode";
186
- if (N && E.chars === "" && yt(E) === te(E)) return g;
187
- let w = N ? be(E.chars, t.singleQuote) : E.type === "ConcatStatement" ? be(E.parts.map((q) => q.type === "TextNode" ? q.chars : "").join(""), t.singleQuote) : "", Z = r("value");
188
- return [g, "=", w, g === "class" && w ? R(B(Z)) : Z, w];
189
- }
190
- case "ConcatStatement":
191
- return e5.map(r, "parts");
192
- case "Hash":
193
- return bt(L, e5.map(r, "pairs"));
194
- case "HashPair":
195
- return [n.key, "=", r("value")];
196
- case "TextNode": {
197
- let g = ze(false, n.chars, "{{", String.raw`\{{`), E = Cs(e5);
198
- if (E) {
199
- if (E === "class") {
200
- let j = g.trim().split(/\s+/u).join(" "), tt = false, V = false;
201
- return e5.parent.type === "ConcatStatement" && (((i = e5.previous) == null ? void 0 : i.type) === "MustacheStatement" && /^\s/u.test(g) && (tt = true), ((a = e5.next) == null ? void 0 : a.type) === "MustacheStatement" && /\s$/u.test(g) && j !== "" && (V = true)), [tt ? L : "", j, V ? L : ""];
202
- }
203
- return Fr(g);
204
- }
205
- let N = z.isWhitespaceOnly(g), { isFirst: x, isLast: w } = e5;
206
- if (t.htmlWhitespaceSensitivity !== "ignore") {
207
- let j = w && e5.parent.type === "Template", tt = x && e5.parent.type === "Template";
208
- if (N) {
209
- if (tt || j) return "";
210
- let P = [L], rt = Rt(g);
211
- return rt && (P = ee(rt)), w && (P = P.map((he) => Ke(he))), P;
212
- }
213
- let V = z.getLeadingWhitespace(g), Nt = [];
214
- if (V) {
215
- Nt = [L];
216
- let P = Rt(V);
217
- P && (Nt = ee(P)), g = g.slice(V.length);
218
- }
219
- let H = z.getTrailingWhitespace(g), et = [];
220
- if (H) {
221
- if (!j) {
222
- et = [L];
223
- let P = Rt(H);
224
- P && (et = ee(P)), w && (et = et.map((rt) => Ke(rt)));
225
- }
226
- g = g.slice(0, -H.length);
227
- }
228
- return [...Nt, We(sn(g)), ...et];
229
- }
230
- let Z = Rt(g), q = Ns(g), W = xs(g);
231
- if ((x || w) && N && (e5.parent.type === "Block" || e5.parent.type === "ElementNode" || e5.parent.type === "Template")) return "";
232
- N && Z ? (q = Math.min(Z, on), W = 0) : ((((o = e5.next) == null ? void 0 : o.type) === "BlockStatement" || ((c = e5.next) == null ? void 0 : c.type) === "ElementNode") && (W = Math.max(W, 1)), (((h = e5.previous) == null ? void 0 : h.type) === "BlockStatement" || ((p = e5.previous) == null ? void 0 : p.type) === "ElementNode") && (q = Math.max(q, 1)));
233
- let Tt = "", Ct = "";
234
- return W === 0 && ((m = e5.next) == null ? void 0 : m.type) === "MustacheStatement" && (Ct = " "), q === 0 && ((v = e5.previous) == null ? void 0 : v.type) === "MustacheStatement" && (Tt = " "), x && (q = 0, Tt = ""), w && (W = 0, Ct = ""), z.hasLeadingWhitespace(g) && (g = Tt + z.trimStart(g)), z.hasTrailingWhitespace(g) && (g = z.trimEnd(g) + Ct), [...ee(q), We(sn(g)), ...ee(W)];
235
- }
236
- case "MustacheCommentStatement": {
237
- let g = yt(n), E = te(n), N = t.originalText.charAt(g + 2) === "~", x = t.originalText.charAt(E - 3) === "~", w = n.value.includes("}}") ? "--" : "";
238
- return ["{{", N ? "~" : "", "!", w, n.value, w, x ? "~" : "", "}}"];
239
- }
240
- case "PathExpression":
241
- return Bs(n);
242
- case "BooleanLiteral":
243
- return String(n.value);
244
- case "CommentStatement":
245
- return ["<!--", n.value, "-->"];
246
- case "StringLiteral":
247
- return As(e5, t);
248
- case "NumberLiteral":
249
- return String(n.value);
250
- case "UndefinedLiteral":
251
- return "undefined";
252
- case "NullLiteral":
253
- return "null";
254
- case "AtHead":
255
- case "VarHead":
256
- case "ThisHead":
257
- default:
258
- throw new zr(n, "Handlebars");
259
- }
260
- }
261
- function ms(e5, t) {
262
- return yt(e5) - yt(t);
263
- }
264
- function ds(e5, t) {
265
- let { node: r } = e5, n = ["attributes", "modifiers", "comments"].filter((i) => $t(r[i])), s = n.flatMap((i) => r[i]).sort(ms);
266
- for (let i of n) e5.each(({ node: a }) => {
267
- let o = s.indexOf(a);
268
- s.splice(o, 1, [L, t()]);
269
- }, i);
270
- return $t(r.blockParams) && s.push(L, er(r)), ["<", r.tag, B(s), gs(r)];
271
- }
272
- function Zr(e5, t, r) {
273
- let { node: n } = e5, s = n.children.every((i) => ye(i));
274
- return t.htmlWhitespaceSensitivity === "ignore" && s ? "" : e5.map(({ isFirst: i }) => {
275
- let a = r();
276
- return i && t.htmlWhitespaceSensitivity === "ignore" ? [M, a] : a;
277
- }, "children");
278
- }
279
- function gs(e5) {
280
- return Ze(e5) ? je([M, "/>"], [" />", M]) : je([M, ">"], ">");
281
- }
282
- function ke(e5) {
283
- var n;
284
- let t = e5.trusting ? "{{{" : "{{", r = (n = e5.strip) != null && n.open ? "~" : "";
285
- return [t, r];
286
- }
287
- function Se(e5) {
288
- var n;
289
- let t = e5.trusting ? "}}}" : "}}";
290
- return [(n = e5.strip) != null && n.close ? "~" : "", t];
291
- }
292
- function bs(e5) {
293
- let t = ke(e5), r = e5.openStrip.open ? "~" : "";
294
- return [t, r, "#"];
295
- }
296
- function ys(e5) {
297
- let t = Se(e5);
298
- return [e5.openStrip.close ? "~" : "", t];
299
- }
300
- function tn(e5) {
301
- let t = ke(e5), r = e5.closeStrip.open ? "~" : "";
302
- return [t, r, "/"];
303
- }
304
- function en(e5) {
305
- let t = Se(e5);
306
- return [e5.closeStrip.close ? "~" : "", t];
307
- }
308
- function ln(e5) {
309
- let t = ke(e5), r = e5.inverseStrip.open ? "~" : "";
310
- return [t, r];
311
- }
312
- function cn(e5) {
313
- let t = Se(e5);
314
- return [e5.inverseStrip.close ? "~" : "", t];
315
- }
316
- function ks(e5, t) {
317
- let { node: r } = e5, n = [], s = ve(e5, t);
318
- return s && n.push(R(s)), $t(r.program.blockParams) && n.push(er(r.program)), R([bs(r), tr(e5, t), n.length > 0 ? B([L, bt(L, n)]) : "", M, ys(r)]);
319
- }
320
- function Ss(e5, t) {
321
- return [t.htmlWhitespaceSensitivity === "ignore" ? gt : "", ln(e5), "else", cn(e5)];
322
- }
323
- function vs(e5) {
324
- var n;
325
- let { grandparent: t, node: r } = e5;
326
- return ((n = t == null ? void 0 : t.inverse) == null ? void 0 : n.body.length) === 1 && t.inverse.body[0] === r && un(t.inverse.body[0].path, t.path);
327
- }
328
- function Es(e5, t) {
329
- let { node: r, grandparent: n } = e5;
330
- return R([ln(n), ["else", " ", n.inverse.body[0].path.head.name], B([L, R(ve(e5, t)), ...$t(r.program.blockParams) ? [L, er(r.program)] : []]), M, cn(n)]);
331
- }
332
- function ws(e5, t, r) {
333
- let { node: n } = e5;
334
- return r.htmlWhitespaceSensitivity === "ignore" ? [hn(n) ? M : gt, tn(n), t("path"), en(n)] : [tn(n), t("path"), en(n)];
335
- }
336
- function hn(e5) {
337
- return e5.type === "BlockStatement" && e5.program.body.every((t) => ye(t));
338
- }
339
- function Ts(e5) {
340
- return pn(e5) && e5.inverse.body.length === 1 && e5.inverse.body[0].type === "BlockStatement" && un(e5.inverse.body[0].path, e5.path);
341
- }
342
- function pn(e5) {
343
- return e5.type === "BlockStatement" && e5.inverse;
344
- }
345
- function rn(e5, t, r) {
346
- let { node: n } = e5;
347
- if (hn(n)) return "";
348
- let s = t("program");
349
- return r.htmlWhitespaceSensitivity === "ignore" ? B([gt, s]) : B(s);
350
- }
351
- function nn(e5, t, r) {
352
- let { node: n } = e5, s = t("inverse"), i = r.htmlWhitespaceSensitivity === "ignore" ? [gt, s] : s;
353
- return Ts(n) ? i : pn(n) ? [Ss(n, r), B(i)] : "";
354
- }
355
- function sn(e5) {
356
- return bt(L, z.split(e5));
357
- }
358
- function Cs(e5) {
359
- for (let t = 0; t < 2; t++) {
360
- let r = e5.getParentNode(t);
361
- if ((r == null ? void 0 : r.type) === "AttrNode") return r.name.toLowerCase();
362
- }
363
- }
364
- function Rt(e5) {
365
- return e5 = typeof e5 == "string" ? e5 : "", e5.split(`
366
- `).length - 1;
367
- }
368
- function Ns(e5) {
369
- e5 = typeof e5 == "string" ? e5 : "";
370
- let t = (e5.match(/^([^\S\n\r]*[\n\r])+/gu) || [])[0] || "";
371
- return Rt(t);
372
- }
373
- function xs(e5) {
374
- e5 = typeof e5 == "string" ? e5 : "";
375
- let t = (e5.match(/([\n\r][^\S\n\r]*)+$/gu) || [])[0] || "";
376
- return Rt(t);
377
- }
378
- function ee(e5 = 0) {
379
- return Array.from({ length: Math.min(e5, on) }).fill(gt);
380
- }
381
- function As(e5, t) {
382
- let { node: { value: r } } = e5, n = be(r, Ps(e5) ? !t.singleQuote : t.singleQuote);
383
- return [n, ze(false, r, n, `\\${n}`), n];
384
- }
385
- function Ps(e5) {
386
- let { ancestors: t } = e5, r = t.findIndex((n) => n.type !== "SubExpression");
387
- return r !== -1 && t[r + 1].type === "ConcatStatement" && t[r + 2].type === "AttrNode";
388
- }
389
- function Ls(e5, t) {
390
- let r = tr(e5, t), n = ve(e5, t);
391
- return n ? B([r, L, R(n)]) : r;
392
- }
393
- function an(e5, t) {
394
- let r = tr(e5, t), n = ve(e5, t);
395
- return n ? [B([r, L, n]), M] : r;
396
- }
397
- function tr(e5, t) {
398
- return t("path");
399
- }
400
- function ve(e5, t) {
401
- var s;
402
- let { node: r } = e5, n = [];
403
- return r.params.length > 0 && n.push(...e5.map(t, "params")), ((s = r.hash) == null ? void 0 : s.pairs.length) > 0 && n.push(t("hash")), n.length === 0 ? "" : bt(L, n);
404
- }
405
- function er(e5) {
406
- return ["as |", e5.blockParams.join(" "), "|"];
407
- }
408
- function Bs(e5) {
409
- return e5.tail.length === 0 && e5.original.includes("/") ? e5.original : [e5.head.original, ...e5.tail].map((r, n) => Os(r, n) ? `[${r}]` : r).join(".");
410
- }
411
- function gn() {
412
- return Rs;
413
- }
414
- function bn(e5, t = "unexpected unreachable branch") {
415
- throw dn.log("unreachable", e5), dn.log(`${t} :: ${JSON.stringify(e5)} (${e5})`), new Error("code reached unreachable");
416
- }
417
- function sr(e5, t) {
418
- var r = t && t.loc, n, s, i, a;
419
- r && (n = r.start.line, s = r.end.line, i = r.start.column, a = r.end.column, e5 += " - " + n + ":" + i);
420
- for (var o = Error.prototype.constructor.call(this, e5), c = 0; c < nr.length; c++) this[nr[c]] = o[nr[c]];
421
- Error.captureStackTrace && Error.captureStackTrace(this, sr);
422
- try {
423
- r && (this.lineNumber = n, this.endLineNumber = s, Object.defineProperty ? (Object.defineProperty(this, "column", { value: i, enumerable: true }), Object.defineProperty(this, "endColumn", { value: a, enumerable: true })) : (this.column = i, this.endColumn = a));
424
- } catch {
425
- }
426
- }
427
- function we() {
428
- this.parents = [];
429
- }
430
- function Te(e5) {
431
- this.acceptRequired(e5, "path"), this.acceptArray(e5.params), this.acceptKey(e5, "hash");
432
- }
433
- function yn(e5) {
434
- Te.call(this, e5), this.acceptKey(e5, "program"), this.acceptKey(e5, "inverse");
435
- }
436
- function kn(e5) {
437
- this.acceptRequired(e5, "name"), this.acceptArray(e5.params), this.acceptKey(e5, "hash");
438
- }
439
- function G(e5) {
440
- e5 === void 0 && (e5 = {}), this.options = e5;
441
- }
442
- function ir(e5, t, r) {
443
- t === void 0 && (t = e5.length);
444
- var n = e5[t - 1], s = e5[t - 2];
445
- if (!n) return r;
446
- if (n.type === "ContentStatement") return (s || !r ? /\r?\n\s*?$/ : /(^|\r?\n)\s*?$/).test(n.original);
447
- }
448
- function ar(e5, t, r) {
449
- t === void 0 && (t = -1);
450
- var n = e5[t + 1], s = e5[t + 2];
451
- if (!n) return r;
452
- if (n.type === "ContentStatement") return (s || !r ? /^\s*?\r?\n/ : /^\s*?(\r?\n|$)/).test(n.original);
453
- }
454
- function kt(e5, t, r) {
455
- var n = e5[t == null ? 0 : t + 1];
456
- if (!(!n || n.type !== "ContentStatement" || !r && n.rightStripped)) {
457
- var s = n.value;
458
- n.value = n.value.replace(r ? /^\s+/ : /^[ \t]*\r?\n?/, ""), n.rightStripped = n.value !== s;
459
- }
460
- }
461
- function ot(e5, t, r) {
462
- var n = e5[t == null ? e5.length - 1 : t - 1];
463
- if (!(!n || n.type !== "ContentStatement" || !r && n.leftStripped)) {
464
- var s = n.value;
465
- return n.value = n.value.replace(r ? /\s+$/ : /[ \t]+$/, ""), n.leftStripped = n.value !== s, n.leftStripped;
466
- }
467
- }
468
- function or(e5, t) {
469
- if (t = t.path ? t.path.original : t, e5.path.original !== t) {
470
- var r = { loc: e5.path.loc };
471
- throw new at(e5.path.original + " doesn't match " + t, r);
472
- }
473
- }
474
- function lr(e5, t) {
475
- this.source = e5, this.start = { line: t.first_line, column: t.first_column }, this.end = { line: t.last_line, column: t.last_column };
476
- }
477
- function Vs(e5) {
478
- return /^\[.*\]$/.test(e5) ? e5.substring(1, e5.length - 1) : e5;
479
- }
480
- function Hs(e5, t) {
481
- return { open: e5.charAt(2) === "~", close: t.charAt(t.length - 3) === "~" };
482
- }
483
- function Fs(e5) {
484
- return e5.replace(/^\{\{~?!-?-?/, "").replace(/-?-?~?\}\}$/, "");
485
- }
486
- function Us(e5, t, r) {
487
- r = this.locInfo(r);
488
- for (var n = e5 ? "@" : "", s = [], i = 0, a = 0, o = t.length; a < o; a++) {
489
- var c = t[a].part, h = t[a].original !== c;
490
- if (n += (t[a].separator || "") + c, !h && (c === ".." || c === "." || c === "this")) {
491
- if (s.length > 0) throw new at("Invalid path: " + n, { loc: r });
492
- c === ".." && i++;
493
- } else s.push(c);
494
- }
495
- return { type: "PathExpression", data: e5, depth: i, parts: s, original: n, loc: r };
496
- }
497
- function Ms(e5, t, r, n, s, i) {
498
- var a = n.charAt(3) || n.charAt(2), o = a !== "{" && a !== "&", c = /\*/.test(n);
499
- return { type: c ? "Decorator" : "MustacheStatement", path: e5, params: t, hash: r, escaped: o, strip: s, loc: this.locInfo(i) };
500
- }
501
- function zs(e5, t, r, n) {
502
- or(e5, r), n = this.locInfo(n);
503
- var s = { type: "Program", body: t, strip: {}, loc: n };
504
- return { type: "BlockStatement", path: e5.path, params: e5.params, hash: e5.hash, program: s, openStrip: {}, inverseStrip: {}, closeStrip: {}, loc: n };
505
- }
506
- function Ys(e5, t, r, n, s, i) {
507
- n && n.path && or(e5, n);
508
- var a = /\*/.test(e5.open);
509
- t.blockParams = e5.blockParams;
510
- var o, c;
511
- if (r) {
512
- if (a) throw new at("Unexpected inverse block on decorator", r);
513
- r.chain && (r.program.body[0].closeStrip = n.strip), c = r.strip, o = r.program;
514
- }
515
- return s && (s = o, o = t, t = s), { type: a ? "DecoratorBlock" : "BlockStatement", path: e5.path, params: e5.params, hash: e5.hash, program: t, inverse: o, openStrip: e5.strip, inverseStrip: c, closeStrip: n && n.strip, loc: this.locInfo(i) };
516
- }
517
- function Gs(e5, t) {
518
- if (!t && e5.length) {
519
- var r = e5[0].loc, n = e5[e5.length - 1].loc;
520
- r && n && (t = { source: r.source, start: { line: r.start.line, column: r.start.column }, end: { line: n.end.line, column: n.end.column } });
521
- }
522
- return { type: "Program", body: e5, strip: {}, loc: t };
523
- }
524
- function Ks(e5, t, r, n) {
525
- return or(e5, r), { type: "PartialBlockStatement", name: e5.path, params: e5.params, hash: e5.hash, program: t, openStrip: e5.strip, closeStrip: r && r.strip, loc: this.locInfo(n) };
526
- }
527
- function Ne(e5, t) {
528
- if (e5.type === "Program") return e5;
529
- Ee.yy = En, Ee.yy.locInfo = function(n) {
530
- return new lr(t && t.srcName, n);
531
- };
532
- var r = Ee.parse(e5);
533
- return r;
534
- }
535
- function cr(e5, t) {
536
- var r = Ne(e5, t), n = new vn(t);
537
- return n.accept(r);
538
- }
539
- function _(e5) {
540
- return Js.test(e5);
541
- }
542
- function wn(e5) {
543
- return $s.test(e5);
544
- }
545
- function Zs(e5) {
546
- return e5.replace(Xs, `
547
- `);
548
- }
549
- function Cn(e5) {
550
- return function(t) {
551
- return Array.isArray(t) && t[0] === e5;
552
- };
553
- }
554
- function ri(e5) {
555
- var t;
556
- return br.has(e5.toLowerCase()) && ((t = e5[0]) == null ? void 0 : t.toLowerCase()) === e5[0];
557
- }
558
- function ue(e5) {
559
- return e5.length > 0;
560
- }
561
- function ie(e5, t = "unexpected empty list") {
562
- return e5;
563
- }
564
- function Nr(e5) {
565
- return e5.length === 0 ? void 0 : e5[e5.length - 1];
566
- }
567
- function ni(e5) {
568
- return e5.length === 0 ? void 0 : e5[0];
569
- }
570
- function On(e5) {
571
- return e5(new kr()).validate();
572
- }
573
- function S(e5, t) {
574
- let { module: r, loc: n } = t, { line: s, column: i } = n.start, a = t.asString(), o = a ? `
575
-
576
- |
577
- | ${a.split(`
578
- `).join(`
579
- | `)}
580
- |
581
-
582
- ` : "", c = new Error(`${e5}: ${o}(error occurred in '${r}' @ line ${s} : column ${i})`);
583
- return c.name = "SyntaxError", c.location = t, c.code = a, c;
584
- }
585
- function Nn(e5, t, r) {
586
- return new xr("Cannot remove a node unless it is part of an array", e5, t, r);
587
- }
588
- function oi(e5, t, r) {
589
- return new xr("Cannot replace a node with multiple nodes unless it is part of an array", e5, t, r);
590
- }
591
- function xn(e5, t) {
592
- return new xr("Replacing and removing in key handlers is not yet supported.", e5, null, t);
593
- }
594
- function Bn(e5) {
595
- return typeof e5 == "function" ? e5 : e5.enter;
596
- }
597
- function In(e5) {
598
- return typeof e5 == "function" ? void 0 : e5.exit;
599
- }
600
- function De(e5, t) {
601
- let r, n, s, { node: i, parent: a, parentKey: o } = t, c = function(h, p) {
602
- if (h.Program && (p === "Template" && !h.Template || p === "Block" && !h.Block)) return h.Program;
603
- let m = h[p];
604
- return m !== void 0 ? m : h.All;
605
- }(e5, i.type);
606
- if (c !== void 0 && (r = Bn(c), n = In(c)), r !== void 0 && (s = r(i, t)), s != null) {
607
- if (JSON.stringify(i) !== JSON.stringify(s)) return Array.isArray(s) ? (Rn(e5, s, a, o), s) : De(e5, new Ft(s, a, o)) || s;
608
- s = void 0;
609
- }
610
- if (s === void 0) {
611
- let h = ai[i.type];
612
- for (let p = 0; p < h.length; p++) li(e5, c, t, h[p]);
613
- n !== void 0 && (s = n(i, t));
614
- }
615
- return s;
616
- }
617
- function An(e5, t, r) {
618
- e5[t] = r;
619
- }
620
- function li(e5, t, r, n) {
621
- let s, i, { node: a } = r, o = function(c, h) {
622
- return c[h];
623
- }(a, n);
624
- if (o) {
625
- if (t !== void 0) {
626
- let c = function(h, p) {
627
- let m = typeof h != "function" ? h.keys : void 0;
628
- if (m === void 0) return;
629
- let v = m[p];
630
- return v !== void 0 ? v : m.All;
631
- }(t, n);
632
- c !== void 0 && (s = Bn(c), i = In(c));
633
- }
634
- if (s !== void 0 && s(a, n) !== void 0) throw xn(a, n);
635
- if (Array.isArray(o)) Rn(e5, o, r, n);
636
- else {
637
- let c = De(e5, new Ft(o, r, n));
638
- c !== void 0 && function(h, p, m, v) {
639
- if (v === null) throw Nn(m, h, p);
640
- if (Array.isArray(v)) {
641
- if (v.length !== 1) throw v.length === 0 ? Nn(m, h, p) : oi(m, h, p);
642
- An(h, p, v[0]);
643
- } else An(h, p, v);
644
- }(a, n, o, c);
645
- }
646
- if (i !== void 0 && i(a, n) !== void 0) throw xn(a, n);
647
- }
648
- }
649
- function Rn(e5, t, r, n) {
650
- for (let s = 0; s < t.length; s++) {
651
- let i = t[s], a = De(e5, new Ft(i, r, n));
652
- a !== void 0 && (s += ci(t, s, a) - 1);
653
- }
654
- }
655
- function ci(e5, t, r) {
656
- return r === null ? (e5.splice(t, 1), 0) : Array.isArray(r) ? (e5.splice(t, 1, ...r), r.length) : (e5.splice(t, 1, r), 1);
657
- }
658
- function ui(e5, t) {
659
- De(t, new Ft(e5));
660
- }
661
- function Vt(e5, t) {
662
- (function(r) {
663
- switch (r.type) {
664
- case "Block":
665
- case "Template":
666
- return r.body;
667
- case "ElementNode":
668
- return r.children;
669
- }
670
- })(e5).push(t);
671
- }
672
- function qn(e5) {
673
- return e5.type === "StringLiteral" || e5.type === "BooleanLiteral" || e5.type === "NumberLiteral" || e5.type === "NullLiteral" || e5.type === "UndefinedLiteral";
674
- }
675
- function fr() {
676
- return pr || (pr = new Et("", "(synthetic)")), pr;
677
- }
678
- function Pn(e5, t) {
679
- return f.var({ name: e5, loc: T(t || null) });
680
- }
681
- function lt(e5, t) {
682
- let r = T(t || null);
683
- if (typeof e5 != "string") {
684
- if ("type" in e5) return e5;
685
- {
686
- e5.head.indexOf(".");
687
- let { head: i, tail: a } = e5;
688
- return f.path({ head: f.head({ original: i, loc: r.sliceStartChars({ chars: i.length }) }), tail: a, loc: T(t || null) });
689
- }
690
- }
691
- let { head: n, tail: s } = function(i, a) {
692
- let [o, ...c] = ie(i.split(".")), h = f.head({ original: o, loc: T(a || null) });
693
- return f.path({ head: h, tail: c, loc: T(a || null) });
694
- }(e5, r);
695
- return f.path({ head: n, tail: s, loc: r });
696
- }
697
- function Pe(e5, t, r) {
698
- return f.literal({ type: e5, value: t, loc: T(r || null) });
699
- }
700
- function ne(e5 = [], t) {
701
- return f.hash({ pairs: e5, loc: T(t || null) });
702
- }
703
- function Vn(e5) {
704
- return e5.map((t) => typeof t == "string" ? f.var({ name: t, loc: D.synthetic(t) }) : t);
705
- }
706
- function Ln(e5 = [], t = [], r = false, n) {
707
- return f.blockItself({ body: e5, params: Vn(t), chained: r, loc: T(n || null) });
708
- }
709
- function Dn(e5 = [], t = [], r) {
710
- return f.template({ body: e5, blockParams: t, loc: T(r || null) });
711
- }
712
- function T(...e5) {
713
- if (e5.length === 1) {
714
- let t = e5[0];
715
- return t && typeof t == "object" ? D.forHbsLoc(fr(), t) : D.forHbsLoc(fr(), si);
716
- }
717
- {
718
- let [t, r, n, s, i] = e5, a = i ? new Et("", i) : fr();
719
- return D.forHbsLoc(a, { start: { line: t, column: r }, end: { line: n || t, column: s || r } });
720
- }
721
- }
722
- function mr(e5) {
723
- return function(t, r) {
724
- return Pe(e5, t, r);
725
- };
726
- }
727
- function dr(e5, t) {
728
- let r;
729
- switch (t.path.type) {
730
- case "PathExpression":
731
- r = e5.PathExpression(t.path);
732
- break;
733
- case "SubExpression":
734
- r = e5.SubExpression(t.path);
735
- break;
736
- case "StringLiteral":
737
- case "UndefinedLiteral":
738
- case "NullLiteral":
739
- case "NumberLiteral":
740
- case "BooleanLiteral": {
741
- let i;
742
- throw i = t.path.type === "BooleanLiteral" ? t.path.original.toString() : t.path.type === "StringLiteral" ? `"${t.path.original}"` : t.path.type === "NullLiteral" ? "null" : t.path.type === "NumberLiteral" ? t.path.value.toString() : "undefined", S(`${t.path.type} "${t.path.type === "StringLiteral" ? t.path.original : i}" cannot be called as a sub-expression, replace (${i}) with ${i}`, e5.source.spanFor(t.path.loc));
743
- }
744
- }
745
- let n = t.params ? t.params.map((i) => e5.acceptNode(i)) : [], s = ue(n) ? Nr(n).loc : r.loc;
746
- return { path: r, params: n, hash: t.hash ? e5.Hash(t.hash) : f.hash({ pairs: [], loc: e5.source.spanFor(s).collapse("end") }) };
747
- }
748
- function gr(e5, t) {
749
- let { path: r, params: n, hash: s, loc: i } = t;
750
- if (qn(r)) {
751
- let o = `{{${function(c) {
752
- return c.type === "UndefinedLiteral" ? "undefined" : JSON.stringify(c.value);
753
- }(r)}}}`;
754
- throw S(`In <${e5.name} ... ${o} ..., ${o} is not a valid modifier`, t.loc);
755
- }
756
- let a = f.elementModifier({ path: r, params: n, hash: s, loc: i });
757
- e5.modifiers.push(a);
758
- }
759
- function qt(e5) {
760
- return /[\t\n\f ]/u.test(e5);
761
- }
762
- function Hn(e5, t = {}) {
763
- var c, h, p;
764
- let r, n, s, i = t.mode || "precompile";
765
- typeof e5 == "string" ? (r = new Et(e5, (c = t.meta) == null ? void 0 : c.moduleName), n = i === "codemod" ? Ne(e5, t.parseOptions) : cr(e5, t.parseOptions)) : e5 instanceof Et ? (r = e5, n = i === "codemod" ? Ne(e5.source, t.parseOptions) : cr(e5.source, t.parseOptions)) : (r = new Et("", (h = t.meta) == null ? void 0 : h.moduleName), n = e5), i === "codemod" && (s = new Cr());
766
- let a = D.forCharPositions(r, 0, r.source.length);
767
- n.loc = { source: "(program)", start: a.startPosition, end: a.endPosition };
768
- let o = new Tr(r, s, i).parse(n, t.locals ?? []);
769
- if ((p = t == null ? void 0 : t.plugins) != null && p.ast) for (let m of t.plugins.ast) ui(o, m(rr({}, t, { syntax: pi }, { plugins: void 0 })).visitor);
770
- return o;
771
- }
772
- function mi(e5, t) {
773
- let r = new SyntaxError(e5 + " (" + t.loc.start.line + ":" + t.loc.start.column + ")");
774
- return Object.assign(r, t);
775
- }
776
- function di(e5) {
777
- let t = e5.children ?? e5.body;
778
- if (t) for (let r = 0; r < t.length - 1; r++) t[r].type === "TextNode" && t[r + 1].type === "MustacheStatement" && (t[r].chars = t[r].chars.replace(/\\$/u, "\\\\"));
779
- }
780
- function gi(e5) {
781
- let t = new Un(e5), r = /* @__PURE__ */ __name(({ line: s, column: i }) => t.indexForLocation({ line: s - 1, column: i }), "r"), n = /* @__PURE__ */ __name((s) => {
782
- let { start: i, end: a } = s.loc;
783
- i.offset = r(i), a.offset = r(a);
784
- }, "n");
785
- return () => ({ name: "prettierParsePlugin", visitor: { All(s) {
786
- n(s), di(s);
787
- } } });
788
- }
789
- function bi(e5) {
790
- let t;
791
- try {
792
- t = Hn(e5, { mode: "codemod", plugins: { ast: [gi(e5)] } });
793
- } catch (r) {
794
- let n = ki(r);
795
- if (n) {
796
- let s = yi(r);
797
- throw Mn(s, { loc: n, cause: r });
798
- }
799
- throw r;
800
- }
801
- return t;
802
- }
803
- function yi(e5) {
804
- let { message: t } = e5, r = t.split(`
805
- `);
806
- return r.length >= 4 && /^Parse error on line \d+:$/u.test(r[0]) && /^-*\^$/u.test(it(false, r, -2)) ? it(false, r, -1) : r.length >= 4 && /:\s?$/u.test(r[0]) && /^\(error occurred in '.*?' @ line \d+ : column \d+\)$/u.test(it(false, r, -1)) && r[1] === "" && it(false, r, -2) === "" && r.slice(2, -2).every((n) => n.startsWith("|")) ? r[0].trim().slice(0, -1) : t;
807
- }
808
- function ki(e5) {
809
- let { location: t, hash: r } = e5;
810
- if (t) {
811
- let { start: n, end: s } = t;
812
- return typeof s.line != "number" ? { start: n } : t;
813
- }
814
- if (r) {
815
- let { loc: { last_line: n, last_column: s } } = r;
816
- return { start: { line: n, column: s + 1 } };
817
- }
818
- }
819
- var Br, Ir, jn, Ue, Me, Rr, I, Pt, J, Pr, Qn, ze, Mt, zt, Yt, Lt, Dt, Gt, _t, Ot, Bt, Kt, Wt, jt, $, Qt, It, me, Jt, $n, Ye, Ge, qr, dt, de, Vr, ts, es, L, M, gt, Hr, rs, it, ge, Ur, be, U, Je, Mr, is, as, z, $t, $e, zr, Gr, Xt, ls, Kr, Wr, us, jr, Qr, on, un, Ds, _s, Os, Is, fn, mn, Ar, Rs, Oa, Ba, rr, dn, qs, Ee, nr, at, Sn, vn, re, En, Ce, Tn, Ws, js, Qs, ur, Js, $s, Xs, hr, Ka, xe, Qa, Ja, ti, io, ei, ao, br, ut, si, se, ct, yr, Le, kr, Sr, D, ce, ae, St, vt, oe, X, K, ht, Ht, wt, pt, le, ii, Et, ai, xr, Ft, vr, pr, hi, Ae, f, Er, wr, Tr, pi, Cr, fi, oo, _e, Fn, Un, Mn, Si, vi, wo;
820
- var init_glimmer = __esm({
821
- "../../node_modules/.pnpm/prettier@3.4.2/node_modules/prettier/plugins/glimmer.mjs"() {
822
- init_esm_shims();
823
- Br = Object.defineProperty;
824
- Ir = /* @__PURE__ */ __name((e5) => {
825
- throw TypeError(e5);
826
- }, "Ir");
827
- jn = /* @__PURE__ */ __name((e5, t, r) => t in e5 ? Br(e5, t, { enumerable: true, configurable: true, writable: true, value: r }) : e5[t] = r, "jn");
828
- Ue = /* @__PURE__ */ __name((e5, t) => {
829
- for (var r in t) Br(e5, r, { get: t[r], enumerable: true });
830
- }, "Ue");
831
- Me = /* @__PURE__ */ __name((e5, t, r) => jn(e5, typeof t != "symbol" ? t + "" : t, r), "Me");
832
- Rr = /* @__PURE__ */ __name((e5, t, r) => t.has(e5) || Ir("Cannot " + r), "Rr");
833
- I = /* @__PURE__ */ __name((e5, t, r) => (Rr(e5, t, "read from private field"), r ? r.call(e5) : t.get(e5)), "I");
834
- Pt = /* @__PURE__ */ __name((e5, t, r) => t.has(e5) ? Ir("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e5) : t.set(e5, r), "Pt");
835
- J = /* @__PURE__ */ __name((e5, t, r, n) => (Rr(e5, t, "write to private field"), n ? n.call(e5, r) : t.set(e5, r), r), "J");
836
- Pr = {};
837
- Ue(Pr, { languages: /* @__PURE__ */ __name(() => mn, "languages"), parsers: /* @__PURE__ */ __name(() => Ar, "parsers"), printers: /* @__PURE__ */ __name(() => vi, "printers") });
838
- Qn = /* @__PURE__ */ __name((e5, t, r, n) => {
839
- if (!(e5 && t == null)) return t.replaceAll ? t.replaceAll(r, n) : r.global ? t.replace(r, n) : t.split(r).join(n);
840
- }, "Qn");
841
- ze = Qn;
842
- Mt = "string";
843
- zt = "array";
844
- Yt = "cursor";
845
- Lt = "indent";
846
- Dt = "align";
847
- Gt = "trim";
848
- _t = "group";
849
- Ot = "fill";
850
- Bt = "if-break";
851
- Kt = "indent-if-break";
852
- Wt = "line-suffix";
853
- jt = "line-suffix-boundary";
854
- $ = "line";
855
- Qt = "label";
856
- It = "break-parent";
857
- me = /* @__PURE__ */ new Set([Yt, Lt, Dt, Gt, _t, Ot, Bt, Kt, Wt, jt, $, Qt, It]);
858
- __name(Jn, "Jn");
859
- Jt = Jn;
860
- $n = /* @__PURE__ */ __name((e5) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(e5), "$n");
861
- __name(Xn, "Xn");
862
- Ye = class extends Error {
863
- static {
864
- __name(this, "Ye");
865
- }
866
- name = "InvalidDocError";
867
- constructor(t) {
868
- super(Xn(t)), this.doc = t;
869
- }
870
- };
871
- Ge = Ye;
872
- qr = /* @__PURE__ */ __name(() => {
873
- }, "qr");
874
- dt = qr;
875
- de = qr;
876
- __name(B, "B");
877
- __name(Zn, "Zn");
878
- __name(R, "R");
879
- __name(Ke, "Ke");
880
- __name(We, "We");
881
- __name(je, "je");
882
- Vr = { type: It };
883
- ts = { type: $, hard: true };
884
- es = { type: $, hard: true, literal: true };
885
- L = { type: $ };
886
- M = { type: $, soft: true };
887
- gt = [ts, Vr];
888
- Hr = [es, Vr];
889
- __name(bt, "bt");
890
- rs = /* @__PURE__ */ __name((e5, t, r) => {
891
- if (!(e5 && t == null)) return Array.isArray(t) || typeof t == "string" ? t[r < 0 ? t.length + r : r] : t.at(r);
892
- }, "rs");
893
- it = rs;
894
- __name(ns, "ns");
895
- __name(Fr, "Fr");
896
- ge = "'";
897
- Ur = '"';
898
- __name(ss, "ss");
899
- be = ss;
900
- __name(Qe, "Qe");
901
- Je = class {
902
- static {
903
- __name(this, "Je");
904
- }
905
- constructor(t) {
906
- Pt(this, U);
907
- J(this, U, new Set(t));
908
- }
909
- getLeadingWhitespaceCount(t) {
910
- let r = I(this, U), n = 0;
911
- for (let s = 0; s < t.length && r.has(t.charAt(s)); s++) n++;
912
- return n;
913
- }
914
- getTrailingWhitespaceCount(t) {
915
- let r = I(this, U), n = 0;
916
- for (let s = t.length - 1; s >= 0 && r.has(t.charAt(s)); s--) n++;
917
- return n;
918
- }
919
- getLeadingWhitespace(t) {
920
- let r = this.getLeadingWhitespaceCount(t);
921
- return t.slice(0, r);
922
- }
923
- getTrailingWhitespace(t) {
924
- let r = this.getTrailingWhitespaceCount(t);
925
- return t.slice(t.length - r);
926
- }
927
- hasLeadingWhitespace(t) {
928
- return I(this, U).has(t.charAt(0));
929
- }
930
- hasTrailingWhitespace(t) {
931
- return I(this, U).has(it(false, t, -1));
932
- }
933
- trimStart(t) {
934
- let r = this.getLeadingWhitespaceCount(t);
935
- return t.slice(r);
936
- }
937
- trimEnd(t) {
938
- let r = this.getTrailingWhitespaceCount(t);
939
- return t.slice(0, t.length - r);
940
- }
941
- trim(t) {
942
- return this.trimEnd(this.trimStart(t));
943
- }
944
- split(t, r = false) {
945
- let n = `[${Qe([...I(this, U)].join(""))}]+`, s = new RegExp(r ? `(${n})` : n, "u");
946
- return t.split(s);
947
- }
948
- hasWhitespaceCharacter(t) {
949
- let r = I(this, U);
950
- return Array.prototype.some.call(t, (n) => r.has(n));
951
- }
952
- hasNonWhitespaceCharacter(t) {
953
- let r = I(this, U);
954
- return Array.prototype.some.call(t, (n) => !r.has(n));
955
- }
956
- isWhitespaceOnly(t) {
957
- let r = I(this, U);
958
- return Array.prototype.every.call(t, (n) => r.has(n));
959
- }
960
- };
961
- U = /* @__PURE__ */ new WeakMap();
962
- Mr = Je;
963
- is = [" ", `
964
- `, "\f", "\r", " "];
965
- as = new Mr(is);
966
- z = as;
967
- __name(os, "os");
968
- $t = os;
969
- $e = class extends Error {
970
- static {
971
- __name(this, "$e");
972
- }
973
- name = "UnexpectedNodeError";
974
- constructor(t, r, n = "type") {
975
- super(`Unexpected ${r} node ${n}: ${JSON.stringify(t[n])}.`), this.node = t;
976
- }
977
- };
978
- zr = $e;
979
- __name(Yr, "Yr");
980
- Yr.ignoredProperties = /* @__PURE__ */ new Set(["loc", "selfClosing"]);
981
- Gr = Yr;
982
- Xt = null;
983
- __name(Zt, "Zt");
984
- ls = 10;
985
- for (let e5 = 0; e5 <= ls; e5++) Zt();
986
- __name(Xe, "Xe");
987
- __name(cs, "cs");
988
- Kr = cs;
989
- Wr = { Template: ["body"], Block: ["body"], MustacheStatement: ["path", "params", "hash"], BlockStatement: ["path", "params", "hash", "program", "inverse"], ElementModifierStatement: ["path", "params", "hash"], CommentStatement: [], MustacheCommentStatement: [], ElementNode: ["attributes", "modifiers", "children", "comments"], AttrNode: ["value"], TextNode: [], ConcatStatement: ["parts"], SubExpression: ["path", "params", "hash"], PathExpression: [], StringLiteral: [], BooleanLiteral: [], NumberLiteral: [], NullLiteral: [], UndefinedLiteral: [], Hash: ["pairs"], HashPair: ["value"] };
990
- us = Kr(Wr);
991
- jr = us;
992
- __name(yt, "yt");
993
- __name(te, "te");
994
- Qr = /* @__PURE__ */ new Set(["area", "base", "br", "col", "command", "embed", "hr", "img", "input", "keygen", "link", "meta", "param", "source", "track", "wbr"]);
995
- __name($r, "$r");
996
- __name(hs, "hs");
997
- __name(ps, "ps");
998
- __name(Ze, "Ze");
999
- __name(ye, "ye");
1000
- __name(Jr, "Jr");
1001
- __name(Xr, "Xr");
1002
- on = 2;
1003
- __name(fs, "fs");
1004
- __name(ms, "ms");
1005
- __name(ds, "ds");
1006
- __name(Zr, "Zr");
1007
- __name(gs, "gs");
1008
- __name(ke, "ke");
1009
- __name(Se, "Se");
1010
- __name(bs, "bs");
1011
- __name(ys, "ys");
1012
- __name(tn, "tn");
1013
- __name(en, "en");
1014
- __name(ln, "ln");
1015
- __name(cn, "cn");
1016
- __name(ks, "ks");
1017
- __name(Ss, "Ss");
1018
- un = /* @__PURE__ */ __name((e5, t) => e5.head.type === "VarHead" && t.head.type === "VarHead" && e5.head.name === t.head.name, "un");
1019
- __name(vs, "vs");
1020
- __name(Es, "Es");
1021
- __name(ws, "ws");
1022
- __name(hn, "hn");
1023
- __name(Ts, "Ts");
1024
- __name(pn, "pn");
1025
- __name(rn, "rn");
1026
- __name(nn, "nn");
1027
- __name(sn, "sn");
1028
- __name(Cs, "Cs");
1029
- __name(Rt, "Rt");
1030
- __name(Ns, "Ns");
1031
- __name(xs, "xs");
1032
- __name(ee, "ee");
1033
- __name(As, "As");
1034
- __name(Ps, "Ps");
1035
- __name(Ls, "Ls");
1036
- __name(an, "an");
1037
- __name(tr, "tr");
1038
- __name(ve, "ve");
1039
- __name(er, "er");
1040
- Ds = new Set("!\"#%&'()*+,./;<=>@[\\]^`{|}~");
1041
- _s = /* @__PURE__ */ new Set(["true", "false", "null", "undefined"]);
1042
- Os = /* @__PURE__ */ __name((e5, t) => t === 0 && e5.startsWith("@") ? false : t !== 0 && _s.has(e5) || /\s/u.test(e5) || /^\d/u.test(e5) || Array.prototype.some.call(e5, (r) => Ds.has(r)), "Os");
1043
- __name(Bs, "Bs");
1044
- Is = { print: fs, massageAstNode: Gr, hasPrettierIgnore: Xr, getVisitorKeys: jr };
1045
- fn = Is;
1046
- mn = [{ linguistLanguageId: 155, name: "Handlebars", type: "markup", color: "#f7931e", aliases: ["hbs", "htmlbars"], extensions: [".handlebars", ".hbs"], tmScope: "text.html.handlebars", aceMode: "handlebars", parsers: ["glimmer"], vscodeLanguageIds: ["handlebars"] }];
1047
- Ar = {};
1048
- Ue(Ar, { glimmer: /* @__PURE__ */ __name(() => Si, "glimmer") });
1049
- Rs = Object.freeze([]);
1050
- __name(gn, "gn");
1051
- Oa = gn();
1052
- Ba = gn();
1053
- rr = Object.assign;
1054
- dn = console;
1055
- __name(bn, "bn");
1056
- qs = function() {
1057
- var e5 = /* @__PURE__ */ __name(function(nt, d, k, b) {
1058
- for (k = k || {}, b = nt.length; b--; k[nt[b]] = d) ;
1059
- return k;
1060
- }, "e"), t = [2, 44], r = [1, 20], n = [5, 14, 15, 19, 29, 34, 39, 44, 47, 48, 52, 56, 60], s = [1, 35], i = [1, 38], a = [1, 30], o = [1, 31], c = [1, 32], h = [1, 33], p = [1, 34], m = [1, 37], v = [14, 15, 19, 29, 34, 39, 44, 47, 48, 52, 56, 60], g = [14, 15, 19, 29, 34, 44, 47, 48, 52, 56, 60], E = [15, 18], N = [14, 15, 19, 29, 34, 47, 48, 52, 56, 60], x = [33, 64, 71, 79, 80, 81, 82, 83, 84], w = [23, 33, 55, 64, 67, 71, 74, 79, 80, 81, 82, 83, 84], Z = [1, 51], q = [23, 33, 55, 64, 67, 71, 74, 79, 80, 81, 82, 83, 84, 86], W = [2, 43], Tt = [55, 64, 71, 79, 80, 81, 82, 83, 84], Ct = [1, 58], j = [1, 59], tt = [1, 66], V = [33, 64, 71, 74, 79, 80, 81, 82, 83, 84], Nt = [23, 64, 71, 79, 80, 81, 82, 83, 84], H = [1, 76], et = [64, 67, 71, 79, 80, 81, 82, 83, 84], P = [33, 74], rt = [23, 33, 55, 67, 71, 74], he = [1, 106], Oe = [1, 118], Lr = [71, 76], Be = { trace: /* @__PURE__ */ __name(function() {
1061
- }, "trace"), yy: {}, symbols_: { error: 2, root: 3, program: 4, EOF: 5, program_repetition0: 6, statement: 7, mustache: 8, block: 9, rawBlock: 10, partial: 11, partialBlock: 12, content: 13, COMMENT: 14, CONTENT: 15, openRawBlock: 16, rawBlock_repetition0: 17, END_RAW_BLOCK: 18, OPEN_RAW_BLOCK: 19, helperName: 20, openRawBlock_repetition0: 21, openRawBlock_option0: 22, CLOSE_RAW_BLOCK: 23, openBlock: 24, block_option0: 25, closeBlock: 26, openInverse: 27, block_option1: 28, OPEN_BLOCK: 29, openBlock_repetition0: 30, openBlock_option0: 31, openBlock_option1: 32, CLOSE: 33, OPEN_INVERSE: 34, openInverse_repetition0: 35, openInverse_option0: 36, openInverse_option1: 37, openInverseChain: 38, OPEN_INVERSE_CHAIN: 39, openInverseChain_repetition0: 40, openInverseChain_option0: 41, openInverseChain_option1: 42, inverseAndProgram: 43, INVERSE: 44, inverseChain: 45, inverseChain_option0: 46, OPEN_ENDBLOCK: 47, OPEN: 48, expr: 49, mustache_repetition0: 50, mustache_option0: 51, OPEN_UNESCAPED: 52, mustache_repetition1: 53, mustache_option1: 54, CLOSE_UNESCAPED: 55, OPEN_PARTIAL: 56, partial_repetition0: 57, partial_option0: 58, openPartialBlock: 59, OPEN_PARTIAL_BLOCK: 60, openPartialBlock_repetition0: 61, openPartialBlock_option0: 62, sexpr: 63, OPEN_SEXPR: 64, sexpr_repetition0: 65, sexpr_option0: 66, CLOSE_SEXPR: 67, hash: 68, hash_repetition_plus0: 69, hashSegment: 70, ID: 71, EQUALS: 72, blockParams: 73, OPEN_BLOCK_PARAMS: 74, blockParams_repetition_plus0: 75, CLOSE_BLOCK_PARAMS: 76, path: 77, dataName: 78, STRING: 79, NUMBER: 80, BOOLEAN: 81, UNDEFINED: 82, NULL: 83, DATA: 84, pathSegments: 85, SEP: 86, $accept: 0, $end: 1 }, terminals_: { 2: "error", 5: "EOF", 14: "COMMENT", 15: "CONTENT", 18: "END_RAW_BLOCK", 19: "OPEN_RAW_BLOCK", 23: "CLOSE_RAW_BLOCK", 29: "OPEN_BLOCK", 33: "CLOSE", 34: "OPEN_INVERSE", 39: "OPEN_INVERSE_CHAIN", 44: "INVERSE", 47: "OPEN_ENDBLOCK", 48: "OPEN", 52: "OPEN_UNESCAPED", 55: "CLOSE_UNESCAPED", 56: "OPEN_PARTIAL", 60: "OPEN_PARTIAL_BLOCK", 64: "OPEN_SEXPR", 67: "CLOSE_SEXPR", 71: "ID", 72: "EQUALS", 74: "OPEN_BLOCK_PARAMS", 76: "CLOSE_BLOCK_PARAMS", 79: "STRING", 80: "NUMBER", 81: "BOOLEAN", 82: "UNDEFINED", 83: "NULL", 84: "DATA", 86: "SEP" }, productions_: [0, [3, 2], [4, 1], [7, 1], [7, 1], [7, 1], [7, 1], [7, 1], [7, 1], [7, 1], [13, 1], [10, 3], [16, 5], [9, 4], [9, 4], [24, 6], [27, 6], [38, 6], [43, 2], [45, 3], [45, 1], [26, 3], [8, 5], [8, 5], [11, 5], [12, 3], [59, 5], [49, 1], [49, 1], [63, 5], [68, 1], [70, 3], [73, 3], [20, 1], [20, 1], [20, 1], [20, 1], [20, 1], [20, 1], [20, 1], [78, 2], [77, 1], [85, 3], [85, 1], [6, 0], [6, 2], [17, 0], [17, 2], [21, 0], [21, 2], [22, 0], [22, 1], [25, 0], [25, 1], [28, 0], [28, 1], [30, 0], [30, 2], [31, 0], [31, 1], [32, 0], [32, 1], [35, 0], [35, 2], [36, 0], [36, 1], [37, 0], [37, 1], [40, 0], [40, 2], [41, 0], [41, 1], [42, 0], [42, 1], [46, 0], [46, 1], [50, 0], [50, 2], [51, 0], [51, 1], [53, 0], [53, 2], [54, 0], [54, 1], [57, 0], [57, 2], [58, 0], [58, 1], [61, 0], [61, 2], [62, 0], [62, 1], [65, 0], [65, 2], [66, 0], [66, 1], [69, 1], [69, 2], [75, 1], [75, 2]], performAction: /* @__PURE__ */ __name(function(d, k, b, y, C, l, xt) {
1062
- var u = l.length - 1;
1063
- switch (C) {
1064
- case 1:
1065
- return l[u - 1];
1066
- case 2:
1067
- this.$ = y.prepareProgram(l[u]);
1068
- break;
1069
- case 3:
1070
- case 4:
1071
- case 5:
1072
- case 6:
1073
- case 7:
1074
- case 8:
1075
- case 20:
1076
- case 27:
1077
- case 28:
1078
- case 33:
1079
- case 34:
1080
- this.$ = l[u];
1081
- break;
1082
- case 9:
1083
- this.$ = { type: "CommentStatement", value: y.stripComment(l[u]), strip: y.stripFlags(l[u], l[u]), loc: y.locInfo(this._$) };
1084
- break;
1085
- case 10:
1086
- this.$ = { type: "ContentStatement", original: l[u], value: l[u], loc: y.locInfo(this._$) };
1087
- break;
1088
- case 11:
1089
- this.$ = y.prepareRawBlock(l[u - 2], l[u - 1], l[u], this._$);
1090
- break;
1091
- case 12:
1092
- this.$ = { path: l[u - 3], params: l[u - 2], hash: l[u - 1] };
1093
- break;
1094
- case 13:
1095
- this.$ = y.prepareBlock(l[u - 3], l[u - 2], l[u - 1], l[u], false, this._$);
1096
- break;
1097
- case 14:
1098
- this.$ = y.prepareBlock(l[u - 3], l[u - 2], l[u - 1], l[u], true, this._$);
1099
- break;
1100
- case 15:
1101
- this.$ = { open: l[u - 5], path: l[u - 4], params: l[u - 3], hash: l[u - 2], blockParams: l[u - 1], strip: y.stripFlags(l[u - 5], l[u]) };
1102
- break;
1103
- case 16:
1104
- case 17:
1105
- this.$ = { path: l[u - 4], params: l[u - 3], hash: l[u - 2], blockParams: l[u - 1], strip: y.stripFlags(l[u - 5], l[u]) };
1106
- break;
1107
- case 18:
1108
- this.$ = { strip: y.stripFlags(l[u - 1], l[u - 1]), program: l[u] };
1109
- break;
1110
- case 19:
1111
- var st = y.prepareBlock(l[u - 2], l[u - 1], l[u], l[u], false, this._$), Ut = y.prepareProgram([st], l[u - 1].loc);
1112
- Ut.chained = true, this.$ = { strip: l[u - 2].strip, program: Ut, chain: true };
1113
- break;
1114
- case 21:
1115
- this.$ = { path: l[u - 1], strip: y.stripFlags(l[u - 2], l[u]) };
1116
- break;
1117
- case 22:
1118
- case 23:
1119
- this.$ = y.prepareMustache(l[u - 3], l[u - 2], l[u - 1], l[u - 4], y.stripFlags(l[u - 4], l[u]), this._$);
1120
- break;
1121
- case 24:
1122
- this.$ = { type: "PartialStatement", name: l[u - 3], params: l[u - 2], hash: l[u - 1], indent: "", strip: y.stripFlags(l[u - 4], l[u]), loc: y.locInfo(this._$) };
1123
- break;
1124
- case 25:
1125
- this.$ = y.preparePartialBlock(l[u - 2], l[u - 1], l[u], this._$);
1126
- break;
1127
- case 26:
1128
- this.$ = { path: l[u - 3], params: l[u - 2], hash: l[u - 1], strip: y.stripFlags(l[u - 4], l[u]) };
1129
- break;
1130
- case 29:
1131
- this.$ = { type: "SubExpression", path: l[u - 3], params: l[u - 2], hash: l[u - 1], loc: y.locInfo(this._$) };
1132
- break;
1133
- case 30:
1134
- this.$ = { type: "Hash", pairs: l[u], loc: y.locInfo(this._$) };
1135
- break;
1136
- case 31:
1137
- this.$ = { type: "HashPair", key: y.id(l[u - 2]), value: l[u], loc: y.locInfo(this._$) };
1138
- break;
1139
- case 32:
1140
- this.$ = y.id(l[u - 1]);
1141
- break;
1142
- case 35:
1143
- this.$ = { type: "StringLiteral", value: l[u], original: l[u], loc: y.locInfo(this._$) };
1144
- break;
1145
- case 36:
1146
- this.$ = { type: "NumberLiteral", value: Number(l[u]), original: Number(l[u]), loc: y.locInfo(this._$) };
1147
- break;
1148
- case 37:
1149
- this.$ = { type: "BooleanLiteral", value: l[u] === "true", original: l[u] === "true", loc: y.locInfo(this._$) };
1150
- break;
1151
- case 38:
1152
- this.$ = { type: "UndefinedLiteral", original: void 0, value: void 0, loc: y.locInfo(this._$) };
1153
- break;
1154
- case 39:
1155
- this.$ = { type: "NullLiteral", original: null, value: null, loc: y.locInfo(this._$) };
1156
- break;
1157
- case 40:
1158
- this.$ = y.preparePath(true, l[u], this._$);
1159
- break;
1160
- case 41:
1161
- this.$ = y.preparePath(false, l[u], this._$);
1162
- break;
1163
- case 42:
1164
- l[u - 2].push({ part: y.id(l[u]), original: l[u], separator: l[u - 1] }), this.$ = l[u - 2];
1165
- break;
1166
- case 43:
1167
- this.$ = [{ part: y.id(l[u]), original: l[u] }];
1168
- break;
1169
- case 44:
1170
- case 46:
1171
- case 48:
1172
- case 56:
1173
- case 62:
1174
- case 68:
1175
- case 76:
1176
- case 80:
1177
- case 84:
1178
- case 88:
1179
- case 92:
1180
- this.$ = [];
1181
- break;
1182
- case 45:
1183
- case 47:
1184
- case 49:
1185
- case 57:
1186
- case 63:
1187
- case 69:
1188
- case 77:
1189
- case 81:
1190
- case 85:
1191
- case 89:
1192
- case 93:
1193
- case 97:
1194
- case 99:
1195
- l[u - 1].push(l[u]);
1196
- break;
1197
- case 96:
1198
- case 98:
1199
- this.$ = [l[u]];
1200
- break;
1201
- }
1202
- }, "performAction"), table: [e5([5, 14, 15, 19, 29, 34, 48, 52, 56, 60], t, { 3: 1, 4: 2, 6: 3 }), { 1: [3] }, { 5: [1, 4] }, e5([5, 39, 44, 47], [2, 2], { 7: 5, 8: 6, 9: 7, 10: 8, 11: 9, 12: 10, 13: 11, 24: 15, 27: 16, 16: 17, 59: 19, 14: [1, 12], 15: r, 19: [1, 23], 29: [1, 21], 34: [1, 22], 48: [1, 13], 52: [1, 14], 56: [1, 18], 60: [1, 24] }), { 1: [2, 1] }, e5(n, [2, 45]), e5(n, [2, 3]), e5(n, [2, 4]), e5(n, [2, 5]), e5(n, [2, 6]), e5(n, [2, 7]), e5(n, [2, 8]), e5(n, [2, 9]), { 20: 26, 49: 25, 63: 27, 64: s, 71: i, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, { 20: 26, 49: 39, 63: 27, 64: s, 71: i, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, e5(v, t, { 6: 3, 4: 40 }), e5(g, t, { 6: 3, 4: 41 }), e5(E, [2, 46], { 17: 42 }), { 20: 26, 49: 43, 63: 27, 64: s, 71: i, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, e5(N, t, { 6: 3, 4: 44 }), e5([5, 14, 15, 18, 19, 29, 34, 39, 44, 47, 48, 52, 56, 60], [2, 10]), { 20: 45, 71: i, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, { 20: 46, 71: i, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, { 20: 47, 71: i, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, { 20: 26, 49: 48, 63: 27, 64: s, 71: i, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, e5(x, [2, 76], { 50: 49 }), e5(w, [2, 27]), e5(w, [2, 28]), e5(w, [2, 33]), e5(w, [2, 34]), e5(w, [2, 35]), e5(w, [2, 36]), e5(w, [2, 37]), e5(w, [2, 38]), e5(w, [2, 39]), { 20: 26, 49: 50, 63: 27, 64: s, 71: i, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, e5(w, [2, 41], { 86: Z }), { 71: i, 85: 52 }, e5(q, W), e5(Tt, [2, 80], { 53: 53 }), { 25: 54, 38: 56, 39: Ct, 43: 57, 44: j, 45: 55, 47: [2, 52] }, { 28: 60, 43: 61, 44: j, 47: [2, 54] }, { 13: 63, 15: r, 18: [1, 62] }, e5(x, [2, 84], { 57: 64 }), { 26: 65, 47: tt }, e5(V, [2, 56], { 30: 67 }), e5(V, [2, 62], { 35: 68 }), e5(Nt, [2, 48], { 21: 69 }), e5(x, [2, 88], { 61: 70 }), { 20: 26, 33: [2, 78], 49: 72, 51: 71, 63: 27, 64: s, 68: 73, 69: 74, 70: 75, 71: H, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, e5(et, [2, 92], { 65: 77 }), { 71: [1, 78] }, e5(w, [2, 40], { 86: Z }), { 20: 26, 49: 80, 54: 79, 55: [2, 82], 63: 27, 64: s, 68: 81, 69: 74, 70: 75, 71: H, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, { 26: 82, 47: tt }, { 47: [2, 53] }, e5(v, t, { 6: 3, 4: 83 }), { 47: [2, 20] }, { 20: 84, 71: i, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, e5(N, t, { 6: 3, 4: 85 }), { 26: 86, 47: tt }, { 47: [2, 55] }, e5(n, [2, 11]), e5(E, [2, 47]), { 20: 26, 33: [2, 86], 49: 88, 58: 87, 63: 27, 64: s, 68: 89, 69: 74, 70: 75, 71: H, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, e5(n, [2, 25]), { 20: 90, 71: i, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, e5(P, [2, 58], { 20: 26, 63: 27, 77: 28, 78: 29, 85: 36, 69: 74, 70: 75, 31: 91, 49: 92, 68: 93, 64: s, 71: H, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m }), e5(P, [2, 64], { 20: 26, 63: 27, 77: 28, 78: 29, 85: 36, 69: 74, 70: 75, 36: 94, 49: 95, 68: 96, 64: s, 71: H, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m }), { 20: 26, 22: 97, 23: [2, 50], 49: 98, 63: 27, 64: s, 68: 99, 69: 74, 70: 75, 71: H, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, { 20: 26, 33: [2, 90], 49: 101, 62: 100, 63: 27, 64: s, 68: 102, 69: 74, 70: 75, 71: H, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, { 33: [1, 103] }, e5(x, [2, 77]), { 33: [2, 79] }, e5([23, 33, 55, 67, 74], [2, 30], { 70: 104, 71: [1, 105] }), e5(rt, [2, 96]), e5(q, W, { 72: he }), { 20: 26, 49: 108, 63: 27, 64: s, 66: 107, 67: [2, 94], 68: 109, 69: 74, 70: 75, 71: H, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, e5(q, [2, 42]), { 55: [1, 110] }, e5(Tt, [2, 81]), { 55: [2, 83] }, e5(n, [2, 13]), { 38: 56, 39: Ct, 43: 57, 44: j, 45: 112, 46: 111, 47: [2, 74] }, e5(V, [2, 68], { 40: 113 }), { 47: [2, 18] }, e5(n, [2, 14]), { 33: [1, 114] }, e5(x, [2, 85]), { 33: [2, 87] }, { 33: [1, 115] }, { 32: 116, 33: [2, 60], 73: 117, 74: Oe }, e5(V, [2, 57]), e5(P, [2, 59]), { 33: [2, 66], 37: 119, 73: 120, 74: Oe }, e5(V, [2, 63]), e5(P, [2, 65]), { 23: [1, 121] }, e5(Nt, [2, 49]), { 23: [2, 51] }, { 33: [1, 122] }, e5(x, [2, 89]), { 33: [2, 91] }, e5(n, [2, 22]), e5(rt, [2, 97]), { 72: he }, { 20: 26, 49: 123, 63: 27, 64: s, 71: i, 77: 28, 78: 29, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m, 85: 36 }, { 67: [1, 124] }, e5(et, [2, 93]), { 67: [2, 95] }, e5(n, [2, 23]), { 47: [2, 19] }, { 47: [2, 75] }, e5(P, [2, 70], { 20: 26, 63: 27, 77: 28, 78: 29, 85: 36, 69: 74, 70: 75, 41: 125, 49: 126, 68: 127, 64: s, 71: H, 79: a, 80: o, 81: c, 82: h, 83: p, 84: m }), e5(n, [2, 24]), e5(n, [2, 21]), { 33: [1, 128] }, { 33: [2, 61] }, { 71: [1, 130], 75: 129 }, { 33: [1, 131] }, { 33: [2, 67] }, e5(E, [2, 12]), e5(N, [2, 26]), e5(rt, [2, 31]), e5(w, [2, 29]), { 33: [2, 72], 42: 132, 73: 133, 74: Oe }, e5(V, [2, 69]), e5(P, [2, 71]), e5(v, [2, 15]), { 71: [1, 135], 76: [1, 134] }, e5(Lr, [2, 98]), e5(g, [2, 16]), { 33: [1, 136] }, { 33: [2, 73] }, { 33: [2, 32] }, e5(Lr, [2, 99]), e5(v, [2, 17])], defaultActions: { 4: [2, 1], 55: [2, 53], 57: [2, 20], 61: [2, 55], 73: [2, 79], 81: [2, 83], 85: [2, 18], 89: [2, 87], 99: [2, 51], 102: [2, 91], 109: [2, 95], 111: [2, 19], 112: [2, 75], 117: [2, 61], 120: [2, 67], 133: [2, 73], 134: [2, 32] }, parseError: /* @__PURE__ */ __name(function(d, k) {
1203
- if (k.recoverable) this.trace(d);
1204
- else {
1205
- var b = new Error(d);
1206
- throw b.hash = k, b;
1207
- }
1208
- }, "parseError"), parse: /* @__PURE__ */ __name(function(d) {
1209
- var k = this, b = [0], y = [], C = [null], l = [], xt = this.table, u = "", st = 0, Ut = 0, Dr = 0, Yn = 2, _r = 1, Gn = l.slice.call(arguments, 1), A = Object.create(this.lexer), ft = { yy: {} };
1210
- for (var Re in this.yy) Object.prototype.hasOwnProperty.call(this.yy, Re) && (ft.yy[Re] = this.yy[Re]);
1211
- A.setInput(d, ft.yy), ft.yy.lexer = A, ft.yy.parser = this, typeof A.yylloc > "u" && (A.yylloc = {});
1212
- var qe = A.yylloc;
1213
- l.push(qe);
1214
- var Kn = A.options && A.options.ranges;
1215
- typeof ft.yy.parseError == "function" ? this.parseError = ft.yy.parseError : this.parseError = Object.getPrototypeOf(this).parseError;
1216
- function Ei(Y) {
1217
- b.length = b.length - 2 * Y, C.length = C.length - Y, l.length = l.length - Y;
1218
- }
1219
- __name(Ei, "Ei");
1220
- for (var Wn = function() {
1221
- var Y;
1222
- return Y = A.lex() || _r, typeof Y != "number" && (Y = k.symbols_[Y] || Y), Y;
1223
- }, O, Ve, mt, F, wi, He, At = {}, pe, Q, Or, fe; ; ) {
1224
- if (mt = b[b.length - 1], this.defaultActions[mt] ? F = this.defaultActions[mt] : ((O === null || typeof O > "u") && (O = Wn()), F = xt[mt] && xt[mt][O]), typeof F > "u" || !F.length || !F[0]) {
1225
- var Fe = "";
1226
- fe = [];
1227
- for (pe in xt[mt]) this.terminals_[pe] && pe > Yn && fe.push("'" + this.terminals_[pe] + "'");
1228
- A.showPosition ? Fe = "Parse error on line " + (st + 1) + `:
1229
- ` + A.showPosition() + `
1230
- Expecting ` + fe.join(", ") + ", got '" + (this.terminals_[O] || O) + "'" : Fe = "Parse error on line " + (st + 1) + ": Unexpected " + (O == _r ? "end of input" : "'" + (this.terminals_[O] || O) + "'"), this.parseError(Fe, { text: A.match, token: this.terminals_[O] || O, line: A.yylineno, loc: qe, expected: fe });
1231
- }
1232
- if (F[0] instanceof Array && F.length > 1) throw new Error("Parse Error: multiple actions possible at state: " + mt + ", token: " + O);
1233
- switch (F[0]) {
1234
- case 1:
1235
- b.push(O), C.push(A.yytext), l.push(A.yylloc), b.push(F[1]), O = null, Ve ? (O = Ve, Ve = null) : (Ut = A.yyleng, u = A.yytext, st = A.yylineno, qe = A.yylloc, Dr > 0 && Dr--);
1236
- break;
1237
- case 2:
1238
- if (Q = this.productions_[F[1]][1], At.$ = C[C.length - Q], At._$ = { first_line: l[l.length - (Q || 1)].first_line, last_line: l[l.length - 1].last_line, first_column: l[l.length - (Q || 1)].first_column, last_column: l[l.length - 1].last_column }, Kn && (At._$.range = [l[l.length - (Q || 1)].range[0], l[l.length - 1].range[1]]), He = this.performAction.apply(At, [u, Ut, st, ft.yy, F[1], C, l].concat(Gn)), typeof He < "u") return He;
1239
- Q && (b = b.slice(0, -1 * Q * 2), C = C.slice(0, -1 * Q), l = l.slice(0, -1 * Q)), b.push(this.productions_[F[1]][0]), C.push(At.$), l.push(At._$), Or = xt[b[b.length - 2]][b[b.length - 1]], b.push(Or);
1240
- break;
1241
- case 3:
1242
- return true;
1243
- }
1244
- }
1245
- return true;
1246
- }, "parse") }, zn = /* @__PURE__ */ function() {
1247
- var nt = { EOF: 1, parseError: /* @__PURE__ */ __name(function(k, b) {
1248
- if (this.yy.parser) this.yy.parser.parseError(k, b);
1249
- else throw new Error(k);
1250
- }, "parseError"), setInput: /* @__PURE__ */ __name(function(d, k) {
1251
- return this.yy = k || this.yy || {}, this._input = d, this._more = this._backtrack = this.done = false, this.yylineno = this.yyleng = 0, this.yytext = this.matched = this.match = "", this.conditionStack = ["INITIAL"], this.yylloc = { first_line: 1, first_column: 0, last_line: 1, last_column: 0 }, this.options.ranges && (this.yylloc.range = [0, 0]), this.offset = 0, this;
1252
- }, "setInput"), input: /* @__PURE__ */ __name(function() {
1253
- var d = this._input[0];
1254
- this.yytext += d, this.yyleng++, this.offset++, this.match += d, this.matched += d;
1255
- var k = d.match(/(?:\r\n?|\n).*/g);
1256
- return k ? (this.yylineno++, this.yylloc.last_line++) : this.yylloc.last_column++, this.options.ranges && this.yylloc.range[1]++, this._input = this._input.slice(1), d;
1257
- }, "input"), unput: /* @__PURE__ */ __name(function(d) {
1258
- var k = d.length, b = d.split(/(?:\r\n?|\n)/g);
1259
- this._input = d + this._input, this.yytext = this.yytext.substr(0, this.yytext.length - k), this.offset -= k;
1260
- var y = this.match.split(/(?:\r\n?|\n)/g);
1261
- this.match = this.match.substr(0, this.match.length - 1), this.matched = this.matched.substr(0, this.matched.length - 1), b.length - 1 && (this.yylineno -= b.length - 1);
1262
- var C = this.yylloc.range;
1263
- return this.yylloc = { first_line: this.yylloc.first_line, last_line: this.yylineno + 1, first_column: this.yylloc.first_column, last_column: b ? (b.length === y.length ? this.yylloc.first_column : 0) + y[y.length - b.length].length - b[0].length : this.yylloc.first_column - k }, this.options.ranges && (this.yylloc.range = [C[0], C[0] + this.yyleng - k]), this.yyleng = this.yytext.length, this;
1264
- }, "unput"), more: /* @__PURE__ */ __name(function() {
1265
- return this._more = true, this;
1266
- }, "more"), reject: /* @__PURE__ */ __name(function() {
1267
- if (this.options.backtrack_lexer) this._backtrack = true;
1268
- else return this.parseError("Lexical error on line " + (this.yylineno + 1) + `. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
1269
- ` + this.showPosition(), { text: "", token: null, line: this.yylineno });
1270
- return this;
1271
- }, "reject"), less: /* @__PURE__ */ __name(function(d) {
1272
- this.unput(this.match.slice(d));
1273
- }, "less"), pastInput: /* @__PURE__ */ __name(function() {
1274
- var d = this.matched.substr(0, this.matched.length - this.match.length);
1275
- return (d.length > 20 ? "..." : "") + d.substr(-20).replace(/\n/g, "");
1276
- }, "pastInput"), upcomingInput: /* @__PURE__ */ __name(function() {
1277
- var d = this.match;
1278
- return d.length < 20 && (d += this._input.substr(0, 20 - d.length)), (d.substr(0, 20) + (d.length > 20 ? "..." : "")).replace(/\n/g, "");
1279
- }, "upcomingInput"), showPosition: /* @__PURE__ */ __name(function() {
1280
- var d = this.pastInput(), k = new Array(d.length + 1).join("-");
1281
- return d + this.upcomingInput() + `
1282
- ` + k + "^";
1283
- }, "showPosition"), test_match: /* @__PURE__ */ __name(function(d, k) {
1284
- var b, y, C;
1285
- if (this.options.backtrack_lexer && (C = { yylineno: this.yylineno, yylloc: { first_line: this.yylloc.first_line, last_line: this.last_line, first_column: this.yylloc.first_column, last_column: this.yylloc.last_column }, yytext: this.yytext, match: this.match, matches: this.matches, matched: this.matched, yyleng: this.yyleng, offset: this.offset, _more: this._more, _input: this._input, yy: this.yy, conditionStack: this.conditionStack.slice(0), done: this.done }, this.options.ranges && (C.yylloc.range = this.yylloc.range.slice(0))), y = d[0].match(/(?:\r\n?|\n).*/g), y && (this.yylineno += y.length), this.yylloc = { first_line: this.yylloc.last_line, last_line: this.yylineno + 1, first_column: this.yylloc.last_column, last_column: y ? y[y.length - 1].length - y[y.length - 1].match(/\r?\n?/)[0].length : this.yylloc.last_column + d[0].length }, this.yytext += d[0], this.match += d[0], this.matches = d, this.yyleng = this.yytext.length, this.options.ranges && (this.yylloc.range = [this.offset, this.offset += this.yyleng]), this._more = false, this._backtrack = false, this._input = this._input.slice(d[0].length), this.matched += d[0], b = this.performAction.call(this, this.yy, this, k, this.conditionStack[this.conditionStack.length - 1]), this.done && this._input && (this.done = false), b) return b;
1286
- if (this._backtrack) {
1287
- for (var l in C) this[l] = C[l];
1288
- return false;
1289
- }
1290
- return false;
1291
- }, "test_match"), next: /* @__PURE__ */ __name(function() {
1292
- if (this.done) return this.EOF;
1293
- this._input || (this.done = true);
1294
- var d, k, b, y;
1295
- this._more || (this.yytext = "", this.match = "");
1296
- for (var C = this._currentRules(), l = 0; l < C.length; l++) if (b = this._input.match(this.rules[C[l]]), b && (!k || b[0].length > k[0].length)) {
1297
- if (k = b, y = l, this.options.backtrack_lexer) {
1298
- if (d = this.test_match(b, C[l]), d !== false) return d;
1299
- if (this._backtrack) {
1300
- k = false;
1301
- continue;
1302
- } else return false;
1303
- } else if (!this.options.flex) break;
1304
- }
1305
- return k ? (d = this.test_match(k, C[y]), d !== false ? d : false) : this._input === "" ? this.EOF : this.parseError("Lexical error on line " + (this.yylineno + 1) + `. Unrecognized text.
1306
- ` + this.showPosition(), { text: "", token: null, line: this.yylineno });
1307
- }, "next"), lex: /* @__PURE__ */ __name(function() {
1308
- var k = this.next();
1309
- return k || this.lex();
1310
- }, "lex"), begin: /* @__PURE__ */ __name(function(k) {
1311
- this.conditionStack.push(k);
1312
- }, "begin"), popState: /* @__PURE__ */ __name(function() {
1313
- var k = this.conditionStack.length - 1;
1314
- return k > 0 ? this.conditionStack.pop() : this.conditionStack[0];
1315
- }, "popState"), _currentRules: /* @__PURE__ */ __name(function() {
1316
- return this.conditionStack.length && this.conditionStack[this.conditionStack.length - 1] ? this.conditions[this.conditionStack[this.conditionStack.length - 1]].rules : this.conditions.INITIAL.rules;
1317
- }, "_currentRules"), topState: /* @__PURE__ */ __name(function(k) {
1318
- return k = this.conditionStack.length - 1 - Math.abs(k || 0), k >= 0 ? this.conditionStack[k] : "INITIAL";
1319
- }, "topState"), pushState: /* @__PURE__ */ __name(function(k) {
1320
- this.begin(k);
1321
- }, "pushState"), stateStackSize: /* @__PURE__ */ __name(function() {
1322
- return this.conditionStack.length;
1323
- }, "stateStackSize"), options: {}, performAction: /* @__PURE__ */ __name(function(k, b, y, C) {
1324
- function l(u, st) {
1325
- return b.yytext = b.yytext.substring(u, b.yyleng - st + u);
1326
- }
1327
- __name(l, "l");
1328
- var xt = C;
1329
- switch (y) {
1330
- case 0:
1331
- if (b.yytext.slice(-2) === "\\\\" ? (l(0, 1), this.begin("mu")) : b.yytext.slice(-1) === "\\" ? (l(0, 1), this.begin("emu")) : this.begin("mu"), b.yytext) return 15;
1332
- break;
1333
- case 1:
1334
- return 15;
1335
- case 2:
1336
- return this.popState(), 15;
1337
- break;
1338
- case 3:
1339
- return this.begin("raw"), 15;
1340
- break;
1341
- case 4:
1342
- return this.popState(), this.conditionStack[this.conditionStack.length - 1] === "raw" ? 15 : (l(5, 9), 18);
1343
- case 5:
1344
- return 15;
1345
- case 6:
1346
- return this.popState(), 14;
1347
- break;
1348
- case 7:
1349
- return 64;
1350
- case 8:
1351
- return 67;
1352
- case 9:
1353
- return 19;
1354
- case 10:
1355
- return this.popState(), this.begin("raw"), 23;
1356
- break;
1357
- case 11:
1358
- return 56;
1359
- case 12:
1360
- return 60;
1361
- case 13:
1362
- return 29;
1363
- case 14:
1364
- return 47;
1365
- case 15:
1366
- return this.popState(), 44;
1367
- break;
1368
- case 16:
1369
- return this.popState(), 44;
1370
- break;
1371
- case 17:
1372
- return 34;
1373
- case 18:
1374
- return 39;
1375
- case 19:
1376
- return 52;
1377
- case 20:
1378
- return 48;
1379
- case 21:
1380
- this.unput(b.yytext), this.popState(), this.begin("com");
1381
- break;
1382
- case 22:
1383
- return this.popState(), 14;
1384
- break;
1385
- case 23:
1386
- return 48;
1387
- case 24:
1388
- return 72;
1389
- case 25:
1390
- return 71;
1391
- case 26:
1392
- return 71;
1393
- case 27:
1394
- return 86;
1395
- case 28:
1396
- break;
1397
- case 29:
1398
- return this.popState(), 55;
1399
- break;
1400
- case 30:
1401
- return this.popState(), 33;
1402
- break;
1403
- case 31:
1404
- return b.yytext = l(1, 2).replace(/\\"/g, '"'), 79;
1405
- break;
1406
- case 32:
1407
- return b.yytext = l(1, 2).replace(/\\'/g, "'"), 79;
1408
- break;
1409
- case 33:
1410
- return 84;
1411
- case 34:
1412
- return 81;
1413
- case 35:
1414
- return 81;
1415
- case 36:
1416
- return 82;
1417
- case 37:
1418
- return 83;
1419
- case 38:
1420
- return 80;
1421
- case 39:
1422
- return 74;
1423
- case 40:
1424
- return 76;
1425
- case 41:
1426
- return 71;
1427
- case 42:
1428
- return b.yytext = b.yytext.replace(/\\([\\\]])/g, "$1"), 71;
1429
- break;
1430
- case 43:
1431
- return "INVALID";
1432
- case 44:
1433
- return 5;
1434
- }
1435
- }, "performAction"), rules: [/^(?:[^\x00]*?(?=(\{\{)))/, /^(?:[^\x00]+)/, /^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/, /^(?:\{\{\{\{(?=[^/]))/, /^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/, /^(?:[^\x00]+?(?=(\{\{\{\{)))/, /^(?:[\s\S]*?--(~)?\}\})/, /^(?:\()/, /^(?:\))/, /^(?:\{\{\{\{)/, /^(?:\}\}\}\})/, /^(?:\{\{(~)?>)/, /^(?:\{\{(~)?#>)/, /^(?:\{\{(~)?#\*?)/, /^(?:\{\{(~)?\/)/, /^(?:\{\{(~)?\^\s*(~)?\}\})/, /^(?:\{\{(~)?\s*else\s*(~)?\}\})/, /^(?:\{\{(~)?\^)/, /^(?:\{\{(~)?\s*else\b)/, /^(?:\{\{(~)?\{)/, /^(?:\{\{(~)?&)/, /^(?:\{\{(~)?!--)/, /^(?:\{\{(~)?![\s\S]*?\}\})/, /^(?:\{\{(~)?\*?)/, /^(?:=)/, /^(?:\.\.)/, /^(?:\.(?=([=~}\s\/.)|])))/, /^(?:[\/.])/, /^(?:\s+)/, /^(?:\}(~)?\}\})/, /^(?:(~)?\}\})/, /^(?:"(\\["]|[^"])*")/, /^(?:'(\\[']|[^'])*')/, /^(?:@)/, /^(?:true(?=([~}\s)])))/, /^(?:false(?=([~}\s)])))/, /^(?:undefined(?=([~}\s)])))/, /^(?:null(?=([~}\s)])))/, /^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/, /^(?:as\s+\|)/, /^(?:\|)/, /^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/, /^(?:\[(\\\]|[^\]])*\])/, /^(?:.)/, /^(?:$)/], conditions: { mu: { rules: [7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44], inclusive: false }, emu: { rules: [2], inclusive: false }, com: { rules: [6], inclusive: false }, raw: { rules: [3, 4, 5], inclusive: false }, INITIAL: { rules: [0, 1, 44], inclusive: true } } };
1436
- return nt;
1437
- }();
1438
- Be.lexer = zn;
1439
- function Ie() {
1440
- this.yy = {};
1441
- }
1442
- __name(Ie, "Ie");
1443
- return Ie.prototype = Be, Be.Parser = Ie, new Ie();
1444
- }();
1445
- Ee = qs;
1446
- nr = ["description", "fileName", "lineNumber", "endLineNumber", "message", "name", "number", "stack"];
1447
- __name(sr, "sr");
1448
- sr.prototype = new Error();
1449
- at = sr;
1450
- __name(we, "we");
1451
- we.prototype = { constructor: we, mutating: false, acceptKey: /* @__PURE__ */ __name(function(e5, t) {
1452
- var r = this.accept(e5[t]);
1453
- if (this.mutating) {
1454
- if (r && !we.prototype[r.type]) throw new at('Unexpected node type "' + r.type + '" found when accepting ' + t + " on " + e5.type);
1455
- e5[t] = r;
1456
- }
1457
- }, "acceptKey"), acceptRequired: /* @__PURE__ */ __name(function(e5, t) {
1458
- if (this.acceptKey(e5, t), !e5[t]) throw new at(e5.type + " requires " + t);
1459
- }, "acceptRequired"), acceptArray: /* @__PURE__ */ __name(function(e5) {
1460
- for (var t = 0, r = e5.length; t < r; t++) this.acceptKey(e5, t), e5[t] || (e5.splice(t, 1), t--, r--);
1461
- }, "acceptArray"), accept: /* @__PURE__ */ __name(function(e5) {
1462
- if (e5) {
1463
- if (!this[e5.type]) throw new at("Unknown type: " + e5.type, e5);
1464
- this.current && this.parents.unshift(this.current), this.current = e5;
1465
- var t = this[e5.type](e5);
1466
- if (this.current = this.parents.shift(), !this.mutating || t) return t;
1467
- if (t !== false) return e5;
1468
- }
1469
- }, "accept"), Program: /* @__PURE__ */ __name(function(e5) {
1470
- this.acceptArray(e5.body);
1471
- }, "Program"), MustacheStatement: Te, Decorator: Te, BlockStatement: yn, DecoratorBlock: yn, PartialStatement: kn, PartialBlockStatement: /* @__PURE__ */ __name(function(e5) {
1472
- kn.call(this, e5), this.acceptKey(e5, "program");
1473
- }, "PartialBlockStatement"), ContentStatement: /* @__PURE__ */ __name(function() {
1474
- }, "ContentStatement"), CommentStatement: /* @__PURE__ */ __name(function() {
1475
- }, "CommentStatement"), SubExpression: Te, PathExpression: /* @__PURE__ */ __name(function() {
1476
- }, "PathExpression"), StringLiteral: /* @__PURE__ */ __name(function() {
1477
- }, "StringLiteral"), NumberLiteral: /* @__PURE__ */ __name(function() {
1478
- }, "NumberLiteral"), BooleanLiteral: /* @__PURE__ */ __name(function() {
1479
- }, "BooleanLiteral"), UndefinedLiteral: /* @__PURE__ */ __name(function() {
1480
- }, "UndefinedLiteral"), NullLiteral: /* @__PURE__ */ __name(function() {
1481
- }, "NullLiteral"), Hash: /* @__PURE__ */ __name(function(e5) {
1482
- this.acceptArray(e5.pairs);
1483
- }, "Hash"), HashPair: /* @__PURE__ */ __name(function(e5) {
1484
- this.acceptRequired(e5, "value");
1485
- }, "HashPair") };
1486
- __name(Te, "Te");
1487
- __name(yn, "yn");
1488
- __name(kn, "kn");
1489
- Sn = we;
1490
- __name(G, "G");
1491
- G.prototype = new Sn();
1492
- G.prototype.Program = function(e5) {
1493
- var t = !this.options.ignoreStandalone, r = !this.isRootSeen;
1494
- this.isRootSeen = true;
1495
- for (var n = e5.body, s = 0, i = n.length; s < i; s++) {
1496
- var a = n[s], o = this.accept(a);
1497
- if (o) {
1498
- var c = ir(n, s, r), h = ar(n, s, r), p = o.openStandalone && c, m = o.closeStandalone && h, v = o.inlineStandalone && c && h;
1499
- o.close && kt(n, s, true), o.open && ot(n, s, true), t && v && (kt(n, s), ot(n, s) && a.type === "PartialStatement" && (a.indent = /([ \t]+$)/.exec(n[s - 1].original)[1])), t && p && (kt((a.program || a.inverse).body), ot(n, s)), t && m && (kt(n, s), ot((a.inverse || a.program).body));
1500
- }
1501
- }
1502
- return e5;
1503
- };
1504
- G.prototype.BlockStatement = G.prototype.DecoratorBlock = G.prototype.PartialBlockStatement = function(e5) {
1505
- this.accept(e5.program), this.accept(e5.inverse);
1506
- var t = e5.program || e5.inverse, r = e5.program && e5.inverse, n = r, s = r;
1507
- if (r && r.chained) for (n = r.body[0].program; s.chained; ) s = s.body[s.body.length - 1].program;
1508
- var i = { open: e5.openStrip.open, close: e5.closeStrip.close, openStandalone: ar(t.body), closeStandalone: ir((n || t).body) };
1509
- if (e5.openStrip.close && kt(t.body, null, true), r) {
1510
- var a = e5.inverseStrip;
1511
- a.open && ot(t.body, null, true), a.close && kt(n.body, null, true), e5.closeStrip.open && ot(s.body, null, true), !this.options.ignoreStandalone && ir(t.body) && ar(n.body) && (ot(t.body), kt(n.body));
1512
- } else e5.closeStrip.open && ot(t.body, null, true);
1513
- return i;
1514
- };
1515
- G.prototype.Decorator = G.prototype.MustacheStatement = function(e5) {
1516
- return e5.strip;
1517
- };
1518
- G.prototype.PartialStatement = G.prototype.CommentStatement = function(e5) {
1519
- var t = e5.strip || {};
1520
- return { inlineStandalone: true, open: t.open, close: t.close };
1521
- };
1522
- __name(ir, "ir");
1523
- __name(ar, "ar");
1524
- __name(kt, "kt");
1525
- __name(ot, "ot");
1526
- vn = G;
1527
- re = {};
1528
- Ue(re, { SourceLocation: /* @__PURE__ */ __name(() => lr, "SourceLocation"), id: /* @__PURE__ */ __name(() => Vs, "id"), prepareBlock: /* @__PURE__ */ __name(() => Ys, "prepareBlock"), prepareMustache: /* @__PURE__ */ __name(() => Ms, "prepareMustache"), preparePartialBlock: /* @__PURE__ */ __name(() => Ks, "preparePartialBlock"), preparePath: /* @__PURE__ */ __name(() => Us, "preparePath"), prepareProgram: /* @__PURE__ */ __name(() => Gs, "prepareProgram"), prepareRawBlock: /* @__PURE__ */ __name(() => zs, "prepareRawBlock"), stripComment: /* @__PURE__ */ __name(() => Fs, "stripComment"), stripFlags: /* @__PURE__ */ __name(() => Hs, "stripFlags") });
1529
- __name(or, "or");
1530
- __name(lr, "lr");
1531
- __name(Vs, "Vs");
1532
- __name(Hs, "Hs");
1533
- __name(Fs, "Fs");
1534
- __name(Us, "Us");
1535
- __name(Ms, "Ms");
1536
- __name(zs, "zs");
1537
- __name(Ys, "Ys");
1538
- __name(Gs, "Gs");
1539
- __name(Ks, "Ks");
1540
- En = {};
1541
- for (Ce in re) Object.prototype.hasOwnProperty.call(re, Ce) && (En[Ce] = re[Ce]);
1542
- __name(Ne, "Ne");
1543
- __name(cr, "cr");
1544
- Tn = { Aacute: "\xC1", aacute: "\xE1", Abreve: "\u0102", abreve: "\u0103", ac: "\u223E", acd: "\u223F", acE: "\u223E\u0333", Acirc: "\xC2", acirc: "\xE2", acute: "\xB4", Acy: "\u0410", acy: "\u0430", AElig: "\xC6", aelig: "\xE6", af: "\u2061", Afr: "\u{1D504}", afr: "\u{1D51E}", Agrave: "\xC0", agrave: "\xE0", alefsym: "\u2135", aleph: "\u2135", Alpha: "\u0391", alpha: "\u03B1", Amacr: "\u0100", amacr: "\u0101", amalg: "\u2A3F", amp: "&", AMP: "&", andand: "\u2A55", And: "\u2A53", and: "\u2227", andd: "\u2A5C", andslope: "\u2A58", andv: "\u2A5A", ang: "\u2220", ange: "\u29A4", angle: "\u2220", angmsdaa: "\u29A8", angmsdab: "\u29A9", angmsdac: "\u29AA", angmsdad: "\u29AB", angmsdae: "\u29AC", angmsdaf: "\u29AD", angmsdag: "\u29AE", angmsdah: "\u29AF", angmsd: "\u2221", angrt: "\u221F", angrtvb: "\u22BE", angrtvbd: "\u299D", angsph: "\u2222", angst: "\xC5", angzarr: "\u237C", Aogon: "\u0104", aogon: "\u0105", Aopf: "\u{1D538}", aopf: "\u{1D552}", apacir: "\u2A6F", ap: "\u2248", apE: "\u2A70", ape: "\u224A", apid: "\u224B", apos: "'", ApplyFunction: "\u2061", approx: "\u2248", approxeq: "\u224A", Aring: "\xC5", aring: "\xE5", Ascr: "\u{1D49C}", ascr: "\u{1D4B6}", Assign: "\u2254", ast: "*", asymp: "\u2248", asympeq: "\u224D", Atilde: "\xC3", atilde: "\xE3", Auml: "\xC4", auml: "\xE4", awconint: "\u2233", awint: "\u2A11", backcong: "\u224C", backepsilon: "\u03F6", backprime: "\u2035", backsim: "\u223D", backsimeq: "\u22CD", Backslash: "\u2216", Barv: "\u2AE7", barvee: "\u22BD", barwed: "\u2305", Barwed: "\u2306", barwedge: "\u2305", bbrk: "\u23B5", bbrktbrk: "\u23B6", bcong: "\u224C", Bcy: "\u0411", bcy: "\u0431", bdquo: "\u201E", becaus: "\u2235", because: "\u2235", Because: "\u2235", bemptyv: "\u29B0", bepsi: "\u03F6", bernou: "\u212C", Bernoullis: "\u212C", Beta: "\u0392", beta: "\u03B2", beth: "\u2136", between: "\u226C", Bfr: "\u{1D505}", bfr: "\u{1D51F}", bigcap: "\u22C2", bigcirc: "\u25EF", bigcup: "\u22C3", bigodot: "\u2A00", bigoplus: "\u2A01", bigotimes: "\u2A02", bigsqcup: "\u2A06", bigstar: "\u2605", bigtriangledown: "\u25BD", bigtriangleup: "\u25B3", biguplus: "\u2A04", bigvee: "\u22C1", bigwedge: "\u22C0", bkarow: "\u290D", blacklozenge: "\u29EB", blacksquare: "\u25AA", blacktriangle: "\u25B4", blacktriangledown: "\u25BE", blacktriangleleft: "\u25C2", blacktriangleright: "\u25B8", blank: "\u2423", blk12: "\u2592", blk14: "\u2591", blk34: "\u2593", block: "\u2588", bne: "=\u20E5", bnequiv: "\u2261\u20E5", bNot: "\u2AED", bnot: "\u2310", Bopf: "\u{1D539}", bopf: "\u{1D553}", bot: "\u22A5", bottom: "\u22A5", bowtie: "\u22C8", boxbox: "\u29C9", boxdl: "\u2510", boxdL: "\u2555", boxDl: "\u2556", boxDL: "\u2557", boxdr: "\u250C", boxdR: "\u2552", boxDr: "\u2553", boxDR: "\u2554", boxh: "\u2500", boxH: "\u2550", boxhd: "\u252C", boxHd: "\u2564", boxhD: "\u2565", boxHD: "\u2566", boxhu: "\u2534", boxHu: "\u2567", boxhU: "\u2568", boxHU: "\u2569", boxminus: "\u229F", boxplus: "\u229E", boxtimes: "\u22A0", boxul: "\u2518", boxuL: "\u255B", boxUl: "\u255C", boxUL: "\u255D", boxur: "\u2514", boxuR: "\u2558", boxUr: "\u2559", boxUR: "\u255A", boxv: "\u2502", boxV: "\u2551", boxvh: "\u253C", boxvH: "\u256A", boxVh: "\u256B", boxVH: "\u256C", boxvl: "\u2524", boxvL: "\u2561", boxVl: "\u2562", boxVL: "\u2563", boxvr: "\u251C", boxvR: "\u255E", boxVr: "\u255F", boxVR: "\u2560", bprime: "\u2035", breve: "\u02D8", Breve: "\u02D8", brvbar: "\xA6", bscr: "\u{1D4B7}", Bscr: "\u212C", bsemi: "\u204F", bsim: "\u223D", bsime: "\u22CD", bsolb: "\u29C5", bsol: "\\", bsolhsub: "\u27C8", bull: "\u2022", bullet: "\u2022", bump: "\u224E", bumpE: "\u2AAE", bumpe: "\u224F", Bumpeq: "\u224E", bumpeq: "\u224F", Cacute: "\u0106", cacute: "\u0107", capand: "\u2A44", capbrcup: "\u2A49", capcap: "\u2A4B", cap: "\u2229", Cap: "\u22D2", capcup: "\u2A47", capdot: "\u2A40", CapitalDifferentialD: "\u2145", caps: "\u2229\uFE00", caret: "\u2041", caron: "\u02C7", Cayleys: "\u212D", ccaps: "\u2A4D", Ccaron: "\u010C", ccaron: "\u010D", Ccedil: "\xC7", ccedil: "\xE7", Ccirc: "\u0108", ccirc: "\u0109", Cconint: "\u2230", ccups: "\u2A4C", ccupssm: "\u2A50", Cdot: "\u010A", cdot: "\u010B", cedil: "\xB8", Cedilla: "\xB8", cemptyv: "\u29B2", cent: "\xA2", centerdot: "\xB7", CenterDot: "\xB7", cfr: "\u{1D520}", Cfr: "\u212D", CHcy: "\u0427", chcy: "\u0447", check: "\u2713", checkmark: "\u2713", Chi: "\u03A7", chi: "\u03C7", circ: "\u02C6", circeq: "\u2257", circlearrowleft: "\u21BA", circlearrowright: "\u21BB", circledast: "\u229B", circledcirc: "\u229A", circleddash: "\u229D", CircleDot: "\u2299", circledR: "\xAE", circledS: "\u24C8", CircleMinus: "\u2296", CirclePlus: "\u2295", CircleTimes: "\u2297", cir: "\u25CB", cirE: "\u29C3", cire: "\u2257", cirfnint: "\u2A10", cirmid: "\u2AEF", cirscir: "\u29C2", ClockwiseContourIntegral: "\u2232", CloseCurlyDoubleQuote: "\u201D", CloseCurlyQuote: "\u2019", clubs: "\u2663", clubsuit: "\u2663", colon: ":", Colon: "\u2237", Colone: "\u2A74", colone: "\u2254", coloneq: "\u2254", comma: ",", commat: "@", comp: "\u2201", compfn: "\u2218", complement: "\u2201", complexes: "\u2102", cong: "\u2245", congdot: "\u2A6D", Congruent: "\u2261", conint: "\u222E", Conint: "\u222F", ContourIntegral: "\u222E", copf: "\u{1D554}", Copf: "\u2102", coprod: "\u2210", Coproduct: "\u2210", copy: "\xA9", COPY: "\xA9", copysr: "\u2117", CounterClockwiseContourIntegral: "\u2233", crarr: "\u21B5", cross: "\u2717", Cross: "\u2A2F", Cscr: "\u{1D49E}", cscr: "\u{1D4B8}", csub: "\u2ACF", csube: "\u2AD1", csup: "\u2AD0", csupe: "\u2AD2", ctdot: "\u22EF", cudarrl: "\u2938", cudarrr: "\u2935", cuepr: "\u22DE", cuesc: "\u22DF", cularr: "\u21B6", cularrp: "\u293D", cupbrcap: "\u2A48", cupcap: "\u2A46", CupCap: "\u224D", cup: "\u222A", Cup: "\u22D3", cupcup: "\u2A4A", cupdot: "\u228D", cupor: "\u2A45", cups: "\u222A\uFE00", curarr: "\u21B7", curarrm: "\u293C", curlyeqprec: "\u22DE", curlyeqsucc: "\u22DF", curlyvee: "\u22CE", curlywedge: "\u22CF", curren: "\xA4", curvearrowleft: "\u21B6", curvearrowright: "\u21B7", cuvee: "\u22CE", cuwed: "\u22CF", cwconint: "\u2232", cwint: "\u2231", cylcty: "\u232D", dagger: "\u2020", Dagger: "\u2021", daleth: "\u2138", darr: "\u2193", Darr: "\u21A1", dArr: "\u21D3", dash: "\u2010", Dashv: "\u2AE4", dashv: "\u22A3", dbkarow: "\u290F", dblac: "\u02DD", Dcaron: "\u010E", dcaron: "\u010F", Dcy: "\u0414", dcy: "\u0434", ddagger: "\u2021", ddarr: "\u21CA", DD: "\u2145", dd: "\u2146", DDotrahd: "\u2911", ddotseq: "\u2A77", deg: "\xB0", Del: "\u2207", Delta: "\u0394", delta: "\u03B4", demptyv: "\u29B1", dfisht: "\u297F", Dfr: "\u{1D507}", dfr: "\u{1D521}", dHar: "\u2965", dharl: "\u21C3", dharr: "\u21C2", DiacriticalAcute: "\xB4", DiacriticalDot: "\u02D9", DiacriticalDoubleAcute: "\u02DD", DiacriticalGrave: "`", DiacriticalTilde: "\u02DC", diam: "\u22C4", diamond: "\u22C4", Diamond: "\u22C4", diamondsuit: "\u2666", diams: "\u2666", die: "\xA8", DifferentialD: "\u2146", digamma: "\u03DD", disin: "\u22F2", div: "\xF7", divide: "\xF7", divideontimes: "\u22C7", divonx: "\u22C7", DJcy: "\u0402", djcy: "\u0452", dlcorn: "\u231E", dlcrop: "\u230D", dollar: "$", Dopf: "\u{1D53B}", dopf: "\u{1D555}", Dot: "\xA8", dot: "\u02D9", DotDot: "\u20DC", doteq: "\u2250", doteqdot: "\u2251", DotEqual: "\u2250", dotminus: "\u2238", dotplus: "\u2214", dotsquare: "\u22A1", doublebarwedge: "\u2306", DoubleContourIntegral: "\u222F", DoubleDot: "\xA8", DoubleDownArrow: "\u21D3", DoubleLeftArrow: "\u21D0", DoubleLeftRightArrow: "\u21D4", DoubleLeftTee: "\u2AE4", DoubleLongLeftArrow: "\u27F8", DoubleLongLeftRightArrow: "\u27FA", DoubleLongRightArrow: "\u27F9", DoubleRightArrow: "\u21D2", DoubleRightTee: "\u22A8", DoubleUpArrow: "\u21D1", DoubleUpDownArrow: "\u21D5", DoubleVerticalBar: "\u2225", DownArrowBar: "\u2913", downarrow: "\u2193", DownArrow: "\u2193", Downarrow: "\u21D3", DownArrowUpArrow: "\u21F5", DownBreve: "\u0311", downdownarrows: "\u21CA", downharpoonleft: "\u21C3", downharpoonright: "\u21C2", DownLeftRightVector: "\u2950", DownLeftTeeVector: "\u295E", DownLeftVectorBar: "\u2956", DownLeftVector: "\u21BD", DownRightTeeVector: "\u295F", DownRightVectorBar: "\u2957", DownRightVector: "\u21C1", DownTeeArrow: "\u21A7", DownTee: "\u22A4", drbkarow: "\u2910", drcorn: "\u231F", drcrop: "\u230C", Dscr: "\u{1D49F}", dscr: "\u{1D4B9}", DScy: "\u0405", dscy: "\u0455", dsol: "\u29F6", Dstrok: "\u0110", dstrok: "\u0111", dtdot: "\u22F1", dtri: "\u25BF", dtrif: "\u25BE", duarr: "\u21F5", duhar: "\u296F", dwangle: "\u29A6", DZcy: "\u040F", dzcy: "\u045F", dzigrarr: "\u27FF", Eacute: "\xC9", eacute: "\xE9", easter: "\u2A6E", Ecaron: "\u011A", ecaron: "\u011B", Ecirc: "\xCA", ecirc: "\xEA", ecir: "\u2256", ecolon: "\u2255", Ecy: "\u042D", ecy: "\u044D", eDDot: "\u2A77", Edot: "\u0116", edot: "\u0117", eDot: "\u2251", ee: "\u2147", efDot: "\u2252", Efr: "\u{1D508}", efr: "\u{1D522}", eg: "\u2A9A", Egrave: "\xC8", egrave: "\xE8", egs: "\u2A96", egsdot: "\u2A98", el: "\u2A99", Element: "\u2208", elinters: "\u23E7", ell: "\u2113", els: "\u2A95", elsdot: "\u2A97", Emacr: "\u0112", emacr: "\u0113", empty: "\u2205", emptyset: "\u2205", EmptySmallSquare: "\u25FB", emptyv: "\u2205", EmptyVerySmallSquare: "\u25AB", emsp13: "\u2004", emsp14: "\u2005", emsp: "\u2003", ENG: "\u014A", eng: "\u014B", ensp: "\u2002", Eogon: "\u0118", eogon: "\u0119", Eopf: "\u{1D53C}", eopf: "\u{1D556}", epar: "\u22D5", eparsl: "\u29E3", eplus: "\u2A71", epsi: "\u03B5", Epsilon: "\u0395", epsilon: "\u03B5", epsiv: "\u03F5", eqcirc: "\u2256", eqcolon: "\u2255", eqsim: "\u2242", eqslantgtr: "\u2A96", eqslantless: "\u2A95", Equal: "\u2A75", equals: "=", EqualTilde: "\u2242", equest: "\u225F", Equilibrium: "\u21CC", equiv: "\u2261", equivDD: "\u2A78", eqvparsl: "\u29E5", erarr: "\u2971", erDot: "\u2253", escr: "\u212F", Escr: "\u2130", esdot: "\u2250", Esim: "\u2A73", esim: "\u2242", Eta: "\u0397", eta: "\u03B7", ETH: "\xD0", eth: "\xF0", Euml: "\xCB", euml: "\xEB", euro: "\u20AC", excl: "!", exist: "\u2203", Exists: "\u2203", expectation: "\u2130", exponentiale: "\u2147", ExponentialE: "\u2147", fallingdotseq: "\u2252", Fcy: "\u0424", fcy: "\u0444", female: "\u2640", ffilig: "\uFB03", fflig: "\uFB00", ffllig: "\uFB04", Ffr: "\u{1D509}", ffr: "\u{1D523}", filig: "\uFB01", FilledSmallSquare: "\u25FC", FilledVerySmallSquare: "\u25AA", fjlig: "fj", flat: "\u266D", fllig: "\uFB02", fltns: "\u25B1", fnof: "\u0192", Fopf: "\u{1D53D}", fopf: "\u{1D557}", forall: "\u2200", ForAll: "\u2200", fork: "\u22D4", forkv: "\u2AD9", Fouriertrf: "\u2131", fpartint: "\u2A0D", frac12: "\xBD", frac13: "\u2153", frac14: "\xBC", frac15: "\u2155", frac16: "\u2159", frac18: "\u215B", frac23: "\u2154", frac25: "\u2156", frac34: "\xBE", frac35: "\u2157", frac38: "\u215C", frac45: "\u2158", frac56: "\u215A", frac58: "\u215D", frac78: "\u215E", frasl: "\u2044", frown: "\u2322", fscr: "\u{1D4BB}", Fscr: "\u2131", gacute: "\u01F5", Gamma: "\u0393", gamma: "\u03B3", Gammad: "\u03DC", gammad: "\u03DD", gap: "\u2A86", Gbreve: "\u011E", gbreve: "\u011F", Gcedil: "\u0122", Gcirc: "\u011C", gcirc: "\u011D", Gcy: "\u0413", gcy: "\u0433", Gdot: "\u0120", gdot: "\u0121", ge: "\u2265", gE: "\u2267", gEl: "\u2A8C", gel: "\u22DB", geq: "\u2265", geqq: "\u2267", geqslant: "\u2A7E", gescc: "\u2AA9", ges: "\u2A7E", gesdot: "\u2A80", gesdoto: "\u2A82", gesdotol: "\u2A84", gesl: "\u22DB\uFE00", gesles: "\u2A94", Gfr: "\u{1D50A}", gfr: "\u{1D524}", gg: "\u226B", Gg: "\u22D9", ggg: "\u22D9", gimel: "\u2137", GJcy: "\u0403", gjcy: "\u0453", gla: "\u2AA5", gl: "\u2277", glE: "\u2A92", glj: "\u2AA4", gnap: "\u2A8A", gnapprox: "\u2A8A", gne: "\u2A88", gnE: "\u2269", gneq: "\u2A88", gneqq: "\u2269", gnsim: "\u22E7", Gopf: "\u{1D53E}", gopf: "\u{1D558}", grave: "`", GreaterEqual: "\u2265", GreaterEqualLess: "\u22DB", GreaterFullEqual: "\u2267", GreaterGreater: "\u2AA2", GreaterLess: "\u2277", GreaterSlantEqual: "\u2A7E", GreaterTilde: "\u2273", Gscr: "\u{1D4A2}", gscr: "\u210A", gsim: "\u2273", gsime: "\u2A8E", gsiml: "\u2A90", gtcc: "\u2AA7", gtcir: "\u2A7A", gt: ">", GT: ">", Gt: "\u226B", gtdot: "\u22D7", gtlPar: "\u2995", gtquest: "\u2A7C", gtrapprox: "\u2A86", gtrarr: "\u2978", gtrdot: "\u22D7", gtreqless: "\u22DB", gtreqqless: "\u2A8C", gtrless: "\u2277", gtrsim: "\u2273", gvertneqq: "\u2269\uFE00", gvnE: "\u2269\uFE00", Hacek: "\u02C7", hairsp: "\u200A", half: "\xBD", hamilt: "\u210B", HARDcy: "\u042A", hardcy: "\u044A", harrcir: "\u2948", harr: "\u2194", hArr: "\u21D4", harrw: "\u21AD", Hat: "^", hbar: "\u210F", Hcirc: "\u0124", hcirc: "\u0125", hearts: "\u2665", heartsuit: "\u2665", hellip: "\u2026", hercon: "\u22B9", hfr: "\u{1D525}", Hfr: "\u210C", HilbertSpace: "\u210B", hksearow: "\u2925", hkswarow: "\u2926", hoarr: "\u21FF", homtht: "\u223B", hookleftarrow: "\u21A9", hookrightarrow: "\u21AA", hopf: "\u{1D559}", Hopf: "\u210D", horbar: "\u2015", HorizontalLine: "\u2500", hscr: "\u{1D4BD}", Hscr: "\u210B", hslash: "\u210F", Hstrok: "\u0126", hstrok: "\u0127", HumpDownHump: "\u224E", HumpEqual: "\u224F", hybull: "\u2043", hyphen: "\u2010", Iacute: "\xCD", iacute: "\xED", ic: "\u2063", Icirc: "\xCE", icirc: "\xEE", Icy: "\u0418", icy: "\u0438", Idot: "\u0130", IEcy: "\u0415", iecy: "\u0435", iexcl: "\xA1", iff: "\u21D4", ifr: "\u{1D526}", Ifr: "\u2111", Igrave: "\xCC", igrave: "\xEC", ii: "\u2148", iiiint: "\u2A0C", iiint: "\u222D", iinfin: "\u29DC", iiota: "\u2129", IJlig: "\u0132", ijlig: "\u0133", Imacr: "\u012A", imacr: "\u012B", image: "\u2111", ImaginaryI: "\u2148", imagline: "\u2110", imagpart: "\u2111", imath: "\u0131", Im: "\u2111", imof: "\u22B7", imped: "\u01B5", Implies: "\u21D2", incare: "\u2105", in: "\u2208", infin: "\u221E", infintie: "\u29DD", inodot: "\u0131", intcal: "\u22BA", int: "\u222B", Int: "\u222C", integers: "\u2124", Integral: "\u222B", intercal: "\u22BA", Intersection: "\u22C2", intlarhk: "\u2A17", intprod: "\u2A3C", InvisibleComma: "\u2063", InvisibleTimes: "\u2062", IOcy: "\u0401", iocy: "\u0451", Iogon: "\u012E", iogon: "\u012F", Iopf: "\u{1D540}", iopf: "\u{1D55A}", Iota: "\u0399", iota: "\u03B9", iprod: "\u2A3C", iquest: "\xBF", iscr: "\u{1D4BE}", Iscr: "\u2110", isin: "\u2208", isindot: "\u22F5", isinE: "\u22F9", isins: "\u22F4", isinsv: "\u22F3", isinv: "\u2208", it: "\u2062", Itilde: "\u0128", itilde: "\u0129", Iukcy: "\u0406", iukcy: "\u0456", Iuml: "\xCF", iuml: "\xEF", Jcirc: "\u0134", jcirc: "\u0135", Jcy: "\u0419", jcy: "\u0439", Jfr: "\u{1D50D}", jfr: "\u{1D527}", jmath: "\u0237", Jopf: "\u{1D541}", jopf: "\u{1D55B}", Jscr: "\u{1D4A5}", jscr: "\u{1D4BF}", Jsercy: "\u0408", jsercy: "\u0458", Jukcy: "\u0404", jukcy: "\u0454", Kappa: "\u039A", kappa: "\u03BA", kappav: "\u03F0", Kcedil: "\u0136", kcedil: "\u0137", Kcy: "\u041A", kcy: "\u043A", Kfr: "\u{1D50E}", kfr: "\u{1D528}", kgreen: "\u0138", KHcy: "\u0425", khcy: "\u0445", KJcy: "\u040C", kjcy: "\u045C", Kopf: "\u{1D542}", kopf: "\u{1D55C}", Kscr: "\u{1D4A6}", kscr: "\u{1D4C0}", lAarr: "\u21DA", Lacute: "\u0139", lacute: "\u013A", laemptyv: "\u29B4", lagran: "\u2112", Lambda: "\u039B", lambda: "\u03BB", lang: "\u27E8", Lang: "\u27EA", langd: "\u2991", langle: "\u27E8", lap: "\u2A85", Laplacetrf: "\u2112", laquo: "\xAB", larrb: "\u21E4", larrbfs: "\u291F", larr: "\u2190", Larr: "\u219E", lArr: "\u21D0", larrfs: "\u291D", larrhk: "\u21A9", larrlp: "\u21AB", larrpl: "\u2939", larrsim: "\u2973", larrtl: "\u21A2", latail: "\u2919", lAtail: "\u291B", lat: "\u2AAB", late: "\u2AAD", lates: "\u2AAD\uFE00", lbarr: "\u290C", lBarr: "\u290E", lbbrk: "\u2772", lbrace: "{", lbrack: "[", lbrke: "\u298B", lbrksld: "\u298F", lbrkslu: "\u298D", Lcaron: "\u013D", lcaron: "\u013E", Lcedil: "\u013B", lcedil: "\u013C", lceil: "\u2308", lcub: "{", Lcy: "\u041B", lcy: "\u043B", ldca: "\u2936", ldquo: "\u201C", ldquor: "\u201E", ldrdhar: "\u2967", ldrushar: "\u294B", ldsh: "\u21B2", le: "\u2264", lE: "\u2266", LeftAngleBracket: "\u27E8", LeftArrowBar: "\u21E4", leftarrow: "\u2190", LeftArrow: "\u2190", Leftarrow: "\u21D0", LeftArrowRightArrow: "\u21C6", leftarrowtail: "\u21A2", LeftCeiling: "\u2308", LeftDoubleBracket: "\u27E6", LeftDownTeeVector: "\u2961", LeftDownVectorBar: "\u2959", LeftDownVector: "\u21C3", LeftFloor: "\u230A", leftharpoondown: "\u21BD", leftharpoonup: "\u21BC", leftleftarrows: "\u21C7", leftrightarrow: "\u2194", LeftRightArrow: "\u2194", Leftrightarrow: "\u21D4", leftrightarrows: "\u21C6", leftrightharpoons: "\u21CB", leftrightsquigarrow: "\u21AD", LeftRightVector: "\u294E", LeftTeeArrow: "\u21A4", LeftTee: "\u22A3", LeftTeeVector: "\u295A", leftthreetimes: "\u22CB", LeftTriangleBar: "\u29CF", LeftTriangle: "\u22B2", LeftTriangleEqual: "\u22B4", LeftUpDownVector: "\u2951", LeftUpTeeVector: "\u2960", LeftUpVectorBar: "\u2958", LeftUpVector: "\u21BF", LeftVectorBar: "\u2952", LeftVector: "\u21BC", lEg: "\u2A8B", leg: "\u22DA", leq: "\u2264", leqq: "\u2266", leqslant: "\u2A7D", lescc: "\u2AA8", les: "\u2A7D", lesdot: "\u2A7F", lesdoto: "\u2A81", lesdotor: "\u2A83", lesg: "\u22DA\uFE00", lesges: "\u2A93", lessapprox: "\u2A85", lessdot: "\u22D6", lesseqgtr: "\u22DA", lesseqqgtr: "\u2A8B", LessEqualGreater: "\u22DA", LessFullEqual: "\u2266", LessGreater: "\u2276", lessgtr: "\u2276", LessLess: "\u2AA1", lesssim: "\u2272", LessSlantEqual: "\u2A7D", LessTilde: "\u2272", lfisht: "\u297C", lfloor: "\u230A", Lfr: "\u{1D50F}", lfr: "\u{1D529}", lg: "\u2276", lgE: "\u2A91", lHar: "\u2962", lhard: "\u21BD", lharu: "\u21BC", lharul: "\u296A", lhblk: "\u2584", LJcy: "\u0409", ljcy: "\u0459", llarr: "\u21C7", ll: "\u226A", Ll: "\u22D8", llcorner: "\u231E", Lleftarrow: "\u21DA", llhard: "\u296B", lltri: "\u25FA", Lmidot: "\u013F", lmidot: "\u0140", lmoustache: "\u23B0", lmoust: "\u23B0", lnap: "\u2A89", lnapprox: "\u2A89", lne: "\u2A87", lnE: "\u2268", lneq: "\u2A87", lneqq: "\u2268", lnsim: "\u22E6", loang: "\u27EC", loarr: "\u21FD", lobrk: "\u27E6", longleftarrow: "\u27F5", LongLeftArrow: "\u27F5", Longleftarrow: "\u27F8", longleftrightarrow: "\u27F7", LongLeftRightArrow: "\u27F7", Longleftrightarrow: "\u27FA", longmapsto: "\u27FC", longrightarrow: "\u27F6", LongRightArrow: "\u27F6", Longrightarrow: "\u27F9", looparrowleft: "\u21AB", looparrowright: "\u21AC", lopar: "\u2985", Lopf: "\u{1D543}", lopf: "\u{1D55D}", loplus: "\u2A2D", lotimes: "\u2A34", lowast: "\u2217", lowbar: "_", LowerLeftArrow: "\u2199", LowerRightArrow: "\u2198", loz: "\u25CA", lozenge: "\u25CA", lozf: "\u29EB", lpar: "(", lparlt: "\u2993", lrarr: "\u21C6", lrcorner: "\u231F", lrhar: "\u21CB", lrhard: "\u296D", lrm: "\u200E", lrtri: "\u22BF", lsaquo: "\u2039", lscr: "\u{1D4C1}", Lscr: "\u2112", lsh: "\u21B0", Lsh: "\u21B0", lsim: "\u2272", lsime: "\u2A8D", lsimg: "\u2A8F", lsqb: "[", lsquo: "\u2018", lsquor: "\u201A", Lstrok: "\u0141", lstrok: "\u0142", ltcc: "\u2AA6", ltcir: "\u2A79", lt: "<", LT: "<", Lt: "\u226A", ltdot: "\u22D6", lthree: "\u22CB", ltimes: "\u22C9", ltlarr: "\u2976", ltquest: "\u2A7B", ltri: "\u25C3", ltrie: "\u22B4", ltrif: "\u25C2", ltrPar: "\u2996", lurdshar: "\u294A", luruhar: "\u2966", lvertneqq: "\u2268\uFE00", lvnE: "\u2268\uFE00", macr: "\xAF", male: "\u2642", malt: "\u2720", maltese: "\u2720", Map: "\u2905", map: "\u21A6", mapsto: "\u21A6", mapstodown: "\u21A7", mapstoleft: "\u21A4", mapstoup: "\u21A5", marker: "\u25AE", mcomma: "\u2A29", Mcy: "\u041C", mcy: "\u043C", mdash: "\u2014", mDDot: "\u223A", measuredangle: "\u2221", MediumSpace: "\u205F", Mellintrf: "\u2133", Mfr: "\u{1D510}", mfr: "\u{1D52A}", mho: "\u2127", micro: "\xB5", midast: "*", midcir: "\u2AF0", mid: "\u2223", middot: "\xB7", minusb: "\u229F", minus: "\u2212", minusd: "\u2238", minusdu: "\u2A2A", MinusPlus: "\u2213", mlcp: "\u2ADB", mldr: "\u2026", mnplus: "\u2213", models: "\u22A7", Mopf: "\u{1D544}", mopf: "\u{1D55E}", mp: "\u2213", mscr: "\u{1D4C2}", Mscr: "\u2133", mstpos: "\u223E", Mu: "\u039C", mu: "\u03BC", multimap: "\u22B8", mumap: "\u22B8", nabla: "\u2207", Nacute: "\u0143", nacute: "\u0144", nang: "\u2220\u20D2", nap: "\u2249", napE: "\u2A70\u0338", napid: "\u224B\u0338", napos: "\u0149", napprox: "\u2249", natural: "\u266E", naturals: "\u2115", natur: "\u266E", nbsp: "\xA0", nbump: "\u224E\u0338", nbumpe: "\u224F\u0338", ncap: "\u2A43", Ncaron: "\u0147", ncaron: "\u0148", Ncedil: "\u0145", ncedil: "\u0146", ncong: "\u2247", ncongdot: "\u2A6D\u0338", ncup: "\u2A42", Ncy: "\u041D", ncy: "\u043D", ndash: "\u2013", nearhk: "\u2924", nearr: "\u2197", neArr: "\u21D7", nearrow: "\u2197", ne: "\u2260", nedot: "\u2250\u0338", NegativeMediumSpace: "\u200B", NegativeThickSpace: "\u200B", NegativeThinSpace: "\u200B", NegativeVeryThinSpace: "\u200B", nequiv: "\u2262", nesear: "\u2928", nesim: "\u2242\u0338", NestedGreaterGreater: "\u226B", NestedLessLess: "\u226A", NewLine: `
1545
- `, nexist: "\u2204", nexists: "\u2204", Nfr: "\u{1D511}", nfr: "\u{1D52B}", ngE: "\u2267\u0338", nge: "\u2271", ngeq: "\u2271", ngeqq: "\u2267\u0338", ngeqslant: "\u2A7E\u0338", nges: "\u2A7E\u0338", nGg: "\u22D9\u0338", ngsim: "\u2275", nGt: "\u226B\u20D2", ngt: "\u226F", ngtr: "\u226F", nGtv: "\u226B\u0338", nharr: "\u21AE", nhArr: "\u21CE", nhpar: "\u2AF2", ni: "\u220B", nis: "\u22FC", nisd: "\u22FA", niv: "\u220B", NJcy: "\u040A", njcy: "\u045A", nlarr: "\u219A", nlArr: "\u21CD", nldr: "\u2025", nlE: "\u2266\u0338", nle: "\u2270", nleftarrow: "\u219A", nLeftarrow: "\u21CD", nleftrightarrow: "\u21AE", nLeftrightarrow: "\u21CE", nleq: "\u2270", nleqq: "\u2266\u0338", nleqslant: "\u2A7D\u0338", nles: "\u2A7D\u0338", nless: "\u226E", nLl: "\u22D8\u0338", nlsim: "\u2274", nLt: "\u226A\u20D2", nlt: "\u226E", nltri: "\u22EA", nltrie: "\u22EC", nLtv: "\u226A\u0338", nmid: "\u2224", NoBreak: "\u2060", NonBreakingSpace: "\xA0", nopf: "\u{1D55F}", Nopf: "\u2115", Not: "\u2AEC", not: "\xAC", NotCongruent: "\u2262", NotCupCap: "\u226D", NotDoubleVerticalBar: "\u2226", NotElement: "\u2209", NotEqual: "\u2260", NotEqualTilde: "\u2242\u0338", NotExists: "\u2204", NotGreater: "\u226F", NotGreaterEqual: "\u2271", NotGreaterFullEqual: "\u2267\u0338", NotGreaterGreater: "\u226B\u0338", NotGreaterLess: "\u2279", NotGreaterSlantEqual: "\u2A7E\u0338", NotGreaterTilde: "\u2275", NotHumpDownHump: "\u224E\u0338", NotHumpEqual: "\u224F\u0338", notin: "\u2209", notindot: "\u22F5\u0338", notinE: "\u22F9\u0338", notinva: "\u2209", notinvb: "\u22F7", notinvc: "\u22F6", NotLeftTriangleBar: "\u29CF\u0338", NotLeftTriangle: "\u22EA", NotLeftTriangleEqual: "\u22EC", NotLess: "\u226E", NotLessEqual: "\u2270", NotLessGreater: "\u2278", NotLessLess: "\u226A\u0338", NotLessSlantEqual: "\u2A7D\u0338", NotLessTilde: "\u2274", NotNestedGreaterGreater: "\u2AA2\u0338", NotNestedLessLess: "\u2AA1\u0338", notni: "\u220C", notniva: "\u220C", notnivb: "\u22FE", notnivc: "\u22FD", NotPrecedes: "\u2280", NotPrecedesEqual: "\u2AAF\u0338", NotPrecedesSlantEqual: "\u22E0", NotReverseElement: "\u220C", NotRightTriangleBar: "\u29D0\u0338", NotRightTriangle: "\u22EB", NotRightTriangleEqual: "\u22ED", NotSquareSubset: "\u228F\u0338", NotSquareSubsetEqual: "\u22E2", NotSquareSuperset: "\u2290\u0338", NotSquareSupersetEqual: "\u22E3", NotSubset: "\u2282\u20D2", NotSubsetEqual: "\u2288", NotSucceeds: "\u2281", NotSucceedsEqual: "\u2AB0\u0338", NotSucceedsSlantEqual: "\u22E1", NotSucceedsTilde: "\u227F\u0338", NotSuperset: "\u2283\u20D2", NotSupersetEqual: "\u2289", NotTilde: "\u2241", NotTildeEqual: "\u2244", NotTildeFullEqual: "\u2247", NotTildeTilde: "\u2249", NotVerticalBar: "\u2224", nparallel: "\u2226", npar: "\u2226", nparsl: "\u2AFD\u20E5", npart: "\u2202\u0338", npolint: "\u2A14", npr: "\u2280", nprcue: "\u22E0", nprec: "\u2280", npreceq: "\u2AAF\u0338", npre: "\u2AAF\u0338", nrarrc: "\u2933\u0338", nrarr: "\u219B", nrArr: "\u21CF", nrarrw: "\u219D\u0338", nrightarrow: "\u219B", nRightarrow: "\u21CF", nrtri: "\u22EB", nrtrie: "\u22ED", nsc: "\u2281", nsccue: "\u22E1", nsce: "\u2AB0\u0338", Nscr: "\u{1D4A9}", nscr: "\u{1D4C3}", nshortmid: "\u2224", nshortparallel: "\u2226", nsim: "\u2241", nsime: "\u2244", nsimeq: "\u2244", nsmid: "\u2224", nspar: "\u2226", nsqsube: "\u22E2", nsqsupe: "\u22E3", nsub: "\u2284", nsubE: "\u2AC5\u0338", nsube: "\u2288", nsubset: "\u2282\u20D2", nsubseteq: "\u2288", nsubseteqq: "\u2AC5\u0338", nsucc: "\u2281", nsucceq: "\u2AB0\u0338", nsup: "\u2285", nsupE: "\u2AC6\u0338", nsupe: "\u2289", nsupset: "\u2283\u20D2", nsupseteq: "\u2289", nsupseteqq: "\u2AC6\u0338", ntgl: "\u2279", Ntilde: "\xD1", ntilde: "\xF1", ntlg: "\u2278", ntriangleleft: "\u22EA", ntrianglelefteq: "\u22EC", ntriangleright: "\u22EB", ntrianglerighteq: "\u22ED", Nu: "\u039D", nu: "\u03BD", num: "#", numero: "\u2116", numsp: "\u2007", nvap: "\u224D\u20D2", nvdash: "\u22AC", nvDash: "\u22AD", nVdash: "\u22AE", nVDash: "\u22AF", nvge: "\u2265\u20D2", nvgt: ">\u20D2", nvHarr: "\u2904", nvinfin: "\u29DE", nvlArr: "\u2902", nvle: "\u2264\u20D2", nvlt: "<\u20D2", nvltrie: "\u22B4\u20D2", nvrArr: "\u2903", nvrtrie: "\u22B5\u20D2", nvsim: "\u223C\u20D2", nwarhk: "\u2923", nwarr: "\u2196", nwArr: "\u21D6", nwarrow: "\u2196", nwnear: "\u2927", Oacute: "\xD3", oacute: "\xF3", oast: "\u229B", Ocirc: "\xD4", ocirc: "\xF4", ocir: "\u229A", Ocy: "\u041E", ocy: "\u043E", odash: "\u229D", Odblac: "\u0150", odblac: "\u0151", odiv: "\u2A38", odot: "\u2299", odsold: "\u29BC", OElig: "\u0152", oelig: "\u0153", ofcir: "\u29BF", Ofr: "\u{1D512}", ofr: "\u{1D52C}", ogon: "\u02DB", Ograve: "\xD2", ograve: "\xF2", ogt: "\u29C1", ohbar: "\u29B5", ohm: "\u03A9", oint: "\u222E", olarr: "\u21BA", olcir: "\u29BE", olcross: "\u29BB", oline: "\u203E", olt: "\u29C0", Omacr: "\u014C", omacr: "\u014D", Omega: "\u03A9", omega: "\u03C9", Omicron: "\u039F", omicron: "\u03BF", omid: "\u29B6", ominus: "\u2296", Oopf: "\u{1D546}", oopf: "\u{1D560}", opar: "\u29B7", OpenCurlyDoubleQuote: "\u201C", OpenCurlyQuote: "\u2018", operp: "\u29B9", oplus: "\u2295", orarr: "\u21BB", Or: "\u2A54", or: "\u2228", ord: "\u2A5D", order: "\u2134", orderof: "\u2134", ordf: "\xAA", ordm: "\xBA", origof: "\u22B6", oror: "\u2A56", orslope: "\u2A57", orv: "\u2A5B", oS: "\u24C8", Oscr: "\u{1D4AA}", oscr: "\u2134", Oslash: "\xD8", oslash: "\xF8", osol: "\u2298", Otilde: "\xD5", otilde: "\xF5", otimesas: "\u2A36", Otimes: "\u2A37", otimes: "\u2297", Ouml: "\xD6", ouml: "\xF6", ovbar: "\u233D", OverBar: "\u203E", OverBrace: "\u23DE", OverBracket: "\u23B4", OverParenthesis: "\u23DC", para: "\xB6", parallel: "\u2225", par: "\u2225", parsim: "\u2AF3", parsl: "\u2AFD", part: "\u2202", PartialD: "\u2202", Pcy: "\u041F", pcy: "\u043F", percnt: "%", period: ".", permil: "\u2030", perp: "\u22A5", pertenk: "\u2031", Pfr: "\u{1D513}", pfr: "\u{1D52D}", Phi: "\u03A6", phi: "\u03C6", phiv: "\u03D5", phmmat: "\u2133", phone: "\u260E", Pi: "\u03A0", pi: "\u03C0", pitchfork: "\u22D4", piv: "\u03D6", planck: "\u210F", planckh: "\u210E", plankv: "\u210F", plusacir: "\u2A23", plusb: "\u229E", pluscir: "\u2A22", plus: "+", plusdo: "\u2214", plusdu: "\u2A25", pluse: "\u2A72", PlusMinus: "\xB1", plusmn: "\xB1", plussim: "\u2A26", plustwo: "\u2A27", pm: "\xB1", Poincareplane: "\u210C", pointint: "\u2A15", popf: "\u{1D561}", Popf: "\u2119", pound: "\xA3", prap: "\u2AB7", Pr: "\u2ABB", pr: "\u227A", prcue: "\u227C", precapprox: "\u2AB7", prec: "\u227A", preccurlyeq: "\u227C", Precedes: "\u227A", PrecedesEqual: "\u2AAF", PrecedesSlantEqual: "\u227C", PrecedesTilde: "\u227E", preceq: "\u2AAF", precnapprox: "\u2AB9", precneqq: "\u2AB5", precnsim: "\u22E8", pre: "\u2AAF", prE: "\u2AB3", precsim: "\u227E", prime: "\u2032", Prime: "\u2033", primes: "\u2119", prnap: "\u2AB9", prnE: "\u2AB5", prnsim: "\u22E8", prod: "\u220F", Product: "\u220F", profalar: "\u232E", profline: "\u2312", profsurf: "\u2313", prop: "\u221D", Proportional: "\u221D", Proportion: "\u2237", propto: "\u221D", prsim: "\u227E", prurel: "\u22B0", Pscr: "\u{1D4AB}", pscr: "\u{1D4C5}", Psi: "\u03A8", psi: "\u03C8", puncsp: "\u2008", Qfr: "\u{1D514}", qfr: "\u{1D52E}", qint: "\u2A0C", qopf: "\u{1D562}", Qopf: "\u211A", qprime: "\u2057", Qscr: "\u{1D4AC}", qscr: "\u{1D4C6}", quaternions: "\u210D", quatint: "\u2A16", quest: "?", questeq: "\u225F", quot: '"', QUOT: '"', rAarr: "\u21DB", race: "\u223D\u0331", Racute: "\u0154", racute: "\u0155", radic: "\u221A", raemptyv: "\u29B3", rang: "\u27E9", Rang: "\u27EB", rangd: "\u2992", range: "\u29A5", rangle: "\u27E9", raquo: "\xBB", rarrap: "\u2975", rarrb: "\u21E5", rarrbfs: "\u2920", rarrc: "\u2933", rarr: "\u2192", Rarr: "\u21A0", rArr: "\u21D2", rarrfs: "\u291E", rarrhk: "\u21AA", rarrlp: "\u21AC", rarrpl: "\u2945", rarrsim: "\u2974", Rarrtl: "\u2916", rarrtl: "\u21A3", rarrw: "\u219D", ratail: "\u291A", rAtail: "\u291C", ratio: "\u2236", rationals: "\u211A", rbarr: "\u290D", rBarr: "\u290F", RBarr: "\u2910", rbbrk: "\u2773", rbrace: "}", rbrack: "]", rbrke: "\u298C", rbrksld: "\u298E", rbrkslu: "\u2990", Rcaron: "\u0158", rcaron: "\u0159", Rcedil: "\u0156", rcedil: "\u0157", rceil: "\u2309", rcub: "}", Rcy: "\u0420", rcy: "\u0440", rdca: "\u2937", rdldhar: "\u2969", rdquo: "\u201D", rdquor: "\u201D", rdsh: "\u21B3", real: "\u211C", realine: "\u211B", realpart: "\u211C", reals: "\u211D", Re: "\u211C", rect: "\u25AD", reg: "\xAE", REG: "\xAE", ReverseElement: "\u220B", ReverseEquilibrium: "\u21CB", ReverseUpEquilibrium: "\u296F", rfisht: "\u297D", rfloor: "\u230B", rfr: "\u{1D52F}", Rfr: "\u211C", rHar: "\u2964", rhard: "\u21C1", rharu: "\u21C0", rharul: "\u296C", Rho: "\u03A1", rho: "\u03C1", rhov: "\u03F1", RightAngleBracket: "\u27E9", RightArrowBar: "\u21E5", rightarrow: "\u2192", RightArrow: "\u2192", Rightarrow: "\u21D2", RightArrowLeftArrow: "\u21C4", rightarrowtail: "\u21A3", RightCeiling: "\u2309", RightDoubleBracket: "\u27E7", RightDownTeeVector: "\u295D", RightDownVectorBar: "\u2955", RightDownVector: "\u21C2", RightFloor: "\u230B", rightharpoondown: "\u21C1", rightharpoonup: "\u21C0", rightleftarrows: "\u21C4", rightleftharpoons: "\u21CC", rightrightarrows: "\u21C9", rightsquigarrow: "\u219D", RightTeeArrow: "\u21A6", RightTee: "\u22A2", RightTeeVector: "\u295B", rightthreetimes: "\u22CC", RightTriangleBar: "\u29D0", RightTriangle: "\u22B3", RightTriangleEqual: "\u22B5", RightUpDownVector: "\u294F", RightUpTeeVector: "\u295C", RightUpVectorBar: "\u2954", RightUpVector: "\u21BE", RightVectorBar: "\u2953", RightVector: "\u21C0", ring: "\u02DA", risingdotseq: "\u2253", rlarr: "\u21C4", rlhar: "\u21CC", rlm: "\u200F", rmoustache: "\u23B1", rmoust: "\u23B1", rnmid: "\u2AEE", roang: "\u27ED", roarr: "\u21FE", robrk: "\u27E7", ropar: "\u2986", ropf: "\u{1D563}", Ropf: "\u211D", roplus: "\u2A2E", rotimes: "\u2A35", RoundImplies: "\u2970", rpar: ")", rpargt: "\u2994", rppolint: "\u2A12", rrarr: "\u21C9", Rrightarrow: "\u21DB", rsaquo: "\u203A", rscr: "\u{1D4C7}", Rscr: "\u211B", rsh: "\u21B1", Rsh: "\u21B1", rsqb: "]", rsquo: "\u2019", rsquor: "\u2019", rthree: "\u22CC", rtimes: "\u22CA", rtri: "\u25B9", rtrie: "\u22B5", rtrif: "\u25B8", rtriltri: "\u29CE", RuleDelayed: "\u29F4", ruluhar: "\u2968", rx: "\u211E", Sacute: "\u015A", sacute: "\u015B", sbquo: "\u201A", scap: "\u2AB8", Scaron: "\u0160", scaron: "\u0161", Sc: "\u2ABC", sc: "\u227B", sccue: "\u227D", sce: "\u2AB0", scE: "\u2AB4", Scedil: "\u015E", scedil: "\u015F", Scirc: "\u015C", scirc: "\u015D", scnap: "\u2ABA", scnE: "\u2AB6", scnsim: "\u22E9", scpolint: "\u2A13", scsim: "\u227F", Scy: "\u0421", scy: "\u0441", sdotb: "\u22A1", sdot: "\u22C5", sdote: "\u2A66", searhk: "\u2925", searr: "\u2198", seArr: "\u21D8", searrow: "\u2198", sect: "\xA7", semi: ";", seswar: "\u2929", setminus: "\u2216", setmn: "\u2216", sext: "\u2736", Sfr: "\u{1D516}", sfr: "\u{1D530}", sfrown: "\u2322", sharp: "\u266F", SHCHcy: "\u0429", shchcy: "\u0449", SHcy: "\u0428", shcy: "\u0448", ShortDownArrow: "\u2193", ShortLeftArrow: "\u2190", shortmid: "\u2223", shortparallel: "\u2225", ShortRightArrow: "\u2192", ShortUpArrow: "\u2191", shy: "\xAD", Sigma: "\u03A3", sigma: "\u03C3", sigmaf: "\u03C2", sigmav: "\u03C2", sim: "\u223C", simdot: "\u2A6A", sime: "\u2243", simeq: "\u2243", simg: "\u2A9E", simgE: "\u2AA0", siml: "\u2A9D", simlE: "\u2A9F", simne: "\u2246", simplus: "\u2A24", simrarr: "\u2972", slarr: "\u2190", SmallCircle: "\u2218", smallsetminus: "\u2216", smashp: "\u2A33", smeparsl: "\u29E4", smid: "\u2223", smile: "\u2323", smt: "\u2AAA", smte: "\u2AAC", smtes: "\u2AAC\uFE00", SOFTcy: "\u042C", softcy: "\u044C", solbar: "\u233F", solb: "\u29C4", sol: "/", Sopf: "\u{1D54A}", sopf: "\u{1D564}", spades: "\u2660", spadesuit: "\u2660", spar: "\u2225", sqcap: "\u2293", sqcaps: "\u2293\uFE00", sqcup: "\u2294", sqcups: "\u2294\uFE00", Sqrt: "\u221A", sqsub: "\u228F", sqsube: "\u2291", sqsubset: "\u228F", sqsubseteq: "\u2291", sqsup: "\u2290", sqsupe: "\u2292", sqsupset: "\u2290", sqsupseteq: "\u2292", square: "\u25A1", Square: "\u25A1", SquareIntersection: "\u2293", SquareSubset: "\u228F", SquareSubsetEqual: "\u2291", SquareSuperset: "\u2290", SquareSupersetEqual: "\u2292", SquareUnion: "\u2294", squarf: "\u25AA", squ: "\u25A1", squf: "\u25AA", srarr: "\u2192", Sscr: "\u{1D4AE}", sscr: "\u{1D4C8}", ssetmn: "\u2216", ssmile: "\u2323", sstarf: "\u22C6", Star: "\u22C6", star: "\u2606", starf: "\u2605", straightepsilon: "\u03F5", straightphi: "\u03D5", strns: "\xAF", sub: "\u2282", Sub: "\u22D0", subdot: "\u2ABD", subE: "\u2AC5", sube: "\u2286", subedot: "\u2AC3", submult: "\u2AC1", subnE: "\u2ACB", subne: "\u228A", subplus: "\u2ABF", subrarr: "\u2979", subset: "\u2282", Subset: "\u22D0", subseteq: "\u2286", subseteqq: "\u2AC5", SubsetEqual: "\u2286", subsetneq: "\u228A", subsetneqq: "\u2ACB", subsim: "\u2AC7", subsub: "\u2AD5", subsup: "\u2AD3", succapprox: "\u2AB8", succ: "\u227B", succcurlyeq: "\u227D", Succeeds: "\u227B", SucceedsEqual: "\u2AB0", SucceedsSlantEqual: "\u227D", SucceedsTilde: "\u227F", succeq: "\u2AB0", succnapprox: "\u2ABA", succneqq: "\u2AB6", succnsim: "\u22E9", succsim: "\u227F", SuchThat: "\u220B", sum: "\u2211", Sum: "\u2211", sung: "\u266A", sup1: "\xB9", sup2: "\xB2", sup3: "\xB3", sup: "\u2283", Sup: "\u22D1", supdot: "\u2ABE", supdsub: "\u2AD8", supE: "\u2AC6", supe: "\u2287", supedot: "\u2AC4", Superset: "\u2283", SupersetEqual: "\u2287", suphsol: "\u27C9", suphsub: "\u2AD7", suplarr: "\u297B", supmult: "\u2AC2", supnE: "\u2ACC", supne: "\u228B", supplus: "\u2AC0", supset: "\u2283", Supset: "\u22D1", supseteq: "\u2287", supseteqq: "\u2AC6", supsetneq: "\u228B", supsetneqq: "\u2ACC", supsim: "\u2AC8", supsub: "\u2AD4", supsup: "\u2AD6", swarhk: "\u2926", swarr: "\u2199", swArr: "\u21D9", swarrow: "\u2199", swnwar: "\u292A", szlig: "\xDF", Tab: " ", target: "\u2316", Tau: "\u03A4", tau: "\u03C4", tbrk: "\u23B4", Tcaron: "\u0164", tcaron: "\u0165", Tcedil: "\u0162", tcedil: "\u0163", Tcy: "\u0422", tcy: "\u0442", tdot: "\u20DB", telrec: "\u2315", Tfr: "\u{1D517}", tfr: "\u{1D531}", there4: "\u2234", therefore: "\u2234", Therefore: "\u2234", Theta: "\u0398", theta: "\u03B8", thetasym: "\u03D1", thetav: "\u03D1", thickapprox: "\u2248", thicksim: "\u223C", ThickSpace: "\u205F\u200A", ThinSpace: "\u2009", thinsp: "\u2009", thkap: "\u2248", thksim: "\u223C", THORN: "\xDE", thorn: "\xFE", tilde: "\u02DC", Tilde: "\u223C", TildeEqual: "\u2243", TildeFullEqual: "\u2245", TildeTilde: "\u2248", timesbar: "\u2A31", timesb: "\u22A0", times: "\xD7", timesd: "\u2A30", tint: "\u222D", toea: "\u2928", topbot: "\u2336", topcir: "\u2AF1", top: "\u22A4", Topf: "\u{1D54B}", topf: "\u{1D565}", topfork: "\u2ADA", tosa: "\u2929", tprime: "\u2034", trade: "\u2122", TRADE: "\u2122", triangle: "\u25B5", triangledown: "\u25BF", triangleleft: "\u25C3", trianglelefteq: "\u22B4", triangleq: "\u225C", triangleright: "\u25B9", trianglerighteq: "\u22B5", tridot: "\u25EC", trie: "\u225C", triminus: "\u2A3A", TripleDot: "\u20DB", triplus: "\u2A39", trisb: "\u29CD", tritime: "\u2A3B", trpezium: "\u23E2", Tscr: "\u{1D4AF}", tscr: "\u{1D4C9}", TScy: "\u0426", tscy: "\u0446", TSHcy: "\u040B", tshcy: "\u045B", Tstrok: "\u0166", tstrok: "\u0167", twixt: "\u226C", twoheadleftarrow: "\u219E", twoheadrightarrow: "\u21A0", Uacute: "\xDA", uacute: "\xFA", uarr: "\u2191", Uarr: "\u219F", uArr: "\u21D1", Uarrocir: "\u2949", Ubrcy: "\u040E", ubrcy: "\u045E", Ubreve: "\u016C", ubreve: "\u016D", Ucirc: "\xDB", ucirc: "\xFB", Ucy: "\u0423", ucy: "\u0443", udarr: "\u21C5", Udblac: "\u0170", udblac: "\u0171", udhar: "\u296E", ufisht: "\u297E", Ufr: "\u{1D518}", ufr: "\u{1D532}", Ugrave: "\xD9", ugrave: "\xF9", uHar: "\u2963", uharl: "\u21BF", uharr: "\u21BE", uhblk: "\u2580", ulcorn: "\u231C", ulcorner: "\u231C", ulcrop: "\u230F", ultri: "\u25F8", Umacr: "\u016A", umacr: "\u016B", uml: "\xA8", UnderBar: "_", UnderBrace: "\u23DF", UnderBracket: "\u23B5", UnderParenthesis: "\u23DD", Union: "\u22C3", UnionPlus: "\u228E", Uogon: "\u0172", uogon: "\u0173", Uopf: "\u{1D54C}", uopf: "\u{1D566}", UpArrowBar: "\u2912", uparrow: "\u2191", UpArrow: "\u2191", Uparrow: "\u21D1", UpArrowDownArrow: "\u21C5", updownarrow: "\u2195", UpDownArrow: "\u2195", Updownarrow: "\u21D5", UpEquilibrium: "\u296E", upharpoonleft: "\u21BF", upharpoonright: "\u21BE", uplus: "\u228E", UpperLeftArrow: "\u2196", UpperRightArrow: "\u2197", upsi: "\u03C5", Upsi: "\u03D2", upsih: "\u03D2", Upsilon: "\u03A5", upsilon: "\u03C5", UpTeeArrow: "\u21A5", UpTee: "\u22A5", upuparrows: "\u21C8", urcorn: "\u231D", urcorner: "\u231D", urcrop: "\u230E", Uring: "\u016E", uring: "\u016F", urtri: "\u25F9", Uscr: "\u{1D4B0}", uscr: "\u{1D4CA}", utdot: "\u22F0", Utilde: "\u0168", utilde: "\u0169", utri: "\u25B5", utrif: "\u25B4", uuarr: "\u21C8", Uuml: "\xDC", uuml: "\xFC", uwangle: "\u29A7", vangrt: "\u299C", varepsilon: "\u03F5", varkappa: "\u03F0", varnothing: "\u2205", varphi: "\u03D5", varpi: "\u03D6", varpropto: "\u221D", varr: "\u2195", vArr: "\u21D5", varrho: "\u03F1", varsigma: "\u03C2", varsubsetneq: "\u228A\uFE00", varsubsetneqq: "\u2ACB\uFE00", varsupsetneq: "\u228B\uFE00", varsupsetneqq: "\u2ACC\uFE00", vartheta: "\u03D1", vartriangleleft: "\u22B2", vartriangleright: "\u22B3", vBar: "\u2AE8", Vbar: "\u2AEB", vBarv: "\u2AE9", Vcy: "\u0412", vcy: "\u0432", vdash: "\u22A2", vDash: "\u22A8", Vdash: "\u22A9", VDash: "\u22AB", Vdashl: "\u2AE6", veebar: "\u22BB", vee: "\u2228", Vee: "\u22C1", veeeq: "\u225A", vellip: "\u22EE", verbar: "|", Verbar: "\u2016", vert: "|", Vert: "\u2016", VerticalBar: "\u2223", VerticalLine: "|", VerticalSeparator: "\u2758", VerticalTilde: "\u2240", VeryThinSpace: "\u200A", Vfr: "\u{1D519}", vfr: "\u{1D533}", vltri: "\u22B2", vnsub: "\u2282\u20D2", vnsup: "\u2283\u20D2", Vopf: "\u{1D54D}", vopf: "\u{1D567}", vprop: "\u221D", vrtri: "\u22B3", Vscr: "\u{1D4B1}", vscr: "\u{1D4CB}", vsubnE: "\u2ACB\uFE00", vsubne: "\u228A\uFE00", vsupnE: "\u2ACC\uFE00", vsupne: "\u228B\uFE00", Vvdash: "\u22AA", vzigzag: "\u299A", Wcirc: "\u0174", wcirc: "\u0175", wedbar: "\u2A5F", wedge: "\u2227", Wedge: "\u22C0", wedgeq: "\u2259", weierp: "\u2118", Wfr: "\u{1D51A}", wfr: "\u{1D534}", Wopf: "\u{1D54E}", wopf: "\u{1D568}", wp: "\u2118", wr: "\u2240", wreath: "\u2240", Wscr: "\u{1D4B2}", wscr: "\u{1D4CC}", xcap: "\u22C2", xcirc: "\u25EF", xcup: "\u22C3", xdtri: "\u25BD", Xfr: "\u{1D51B}", xfr: "\u{1D535}", xharr: "\u27F7", xhArr: "\u27FA", Xi: "\u039E", xi: "\u03BE", xlarr: "\u27F5", xlArr: "\u27F8", xmap: "\u27FC", xnis: "\u22FB", xodot: "\u2A00", Xopf: "\u{1D54F}", xopf: "\u{1D569}", xoplus: "\u2A01", xotime: "\u2A02", xrarr: "\u27F6", xrArr: "\u27F9", Xscr: "\u{1D4B3}", xscr: "\u{1D4CD}", xsqcup: "\u2A06", xuplus: "\u2A04", xutri: "\u25B3", xvee: "\u22C1", xwedge: "\u22C0", Yacute: "\xDD", yacute: "\xFD", YAcy: "\u042F", yacy: "\u044F", Ycirc: "\u0176", ycirc: "\u0177", Ycy: "\u042B", ycy: "\u044B", yen: "\xA5", Yfr: "\u{1D51C}", yfr: "\u{1D536}", YIcy: "\u0407", yicy: "\u0457", Yopf: "\u{1D550}", yopf: "\u{1D56A}", Yscr: "\u{1D4B4}", yscr: "\u{1D4CE}", YUcy: "\u042E", yucy: "\u044E", yuml: "\xFF", Yuml: "\u0178", Zacute: "\u0179", zacute: "\u017A", Zcaron: "\u017D", zcaron: "\u017E", Zcy: "\u0417", zcy: "\u0437", Zdot: "\u017B", zdot: "\u017C", zeetrf: "\u2128", ZeroWidthSpace: "\u200B", Zeta: "\u0396", zeta: "\u03B6", zfr: "\u{1D537}", Zfr: "\u2128", ZHcy: "\u0416", zhcy: "\u0436", zigrarr: "\u21DD", zopf: "\u{1D56B}", Zopf: "\u2124", Zscr: "\u{1D4B5}", zscr: "\u{1D4CF}", zwj: "\u200D", zwnj: "\u200C" };
1546
- Ws = /^#[xX]([A-Fa-f0-9]+)$/;
1547
- js = /^#([0-9]+)$/;
1548
- Qs = /^([A-Za-z0-9]+)$/;
1549
- ur = function() {
1550
- function e5(t) {
1551
- this.named = t;
1552
- }
1553
- __name(e5, "e");
1554
- return e5.prototype.parse = function(t) {
1555
- if (t) {
1556
- var r = t.match(Ws);
1557
- if (r) return String.fromCharCode(parseInt(r[1], 16));
1558
- if (r = t.match(js), r) return String.fromCharCode(parseInt(r[1], 10));
1559
- if (r = t.match(Qs), r) return this.named[r[1]];
1560
- }
1561
- }, e5;
1562
- }();
1563
- Js = /[\t\n\f ]/;
1564
- $s = /[A-Za-z]/;
1565
- Xs = /\r\n?/g;
1566
- __name(_, "_");
1567
- __name(wn, "wn");
1568
- __name(Zs, "Zs");
1569
- hr = function() {
1570
- function e5(t, r, n) {
1571
- n === void 0 && (n = "precompile"), this.delegate = t, this.entityParser = r, this.mode = n, this.state = "beforeData", this.line = -1, this.column = -1, this.input = "", this.index = -1, this.tagNameBuffer = "", this.states = { beforeData: /* @__PURE__ */ __name(function() {
1572
- var s = this.peek();
1573
- if (s === "<" && !this.isIgnoredEndTag()) this.transitionTo("tagOpen"), this.markTagStart(), this.consume();
1574
- else {
1575
- if (this.mode === "precompile" && s === `
1576
- `) {
1577
- var i = this.tagNameBuffer.toLowerCase();
1578
- (i === "pre" || i === "textarea") && this.consume();
1579
- }
1580
- this.transitionTo("data"), this.delegate.beginData();
1581
- }
1582
- }, "beforeData"), data: /* @__PURE__ */ __name(function() {
1583
- var s = this.peek(), i = this.tagNameBuffer;
1584
- s === "<" && !this.isIgnoredEndTag() ? (this.delegate.finishData(), this.transitionTo("tagOpen"), this.markTagStart(), this.consume()) : s === "&" && i !== "script" && i !== "style" ? (this.consume(), this.delegate.appendToData(this.consumeCharRef() || "&")) : (this.consume(), this.delegate.appendToData(s));
1585
- }, "data"), tagOpen: /* @__PURE__ */ __name(function() {
1586
- var s = this.consume();
1587
- s === "!" ? this.transitionTo("markupDeclarationOpen") : s === "/" ? this.transitionTo("endTagOpen") : (s === "@" || s === ":" || wn(s)) && (this.transitionTo("tagName"), this.tagNameBuffer = "", this.delegate.beginStartTag(), this.appendToTagName(s));
1588
- }, "tagOpen"), markupDeclarationOpen: /* @__PURE__ */ __name(function() {
1589
- var s = this.consume();
1590
- if (s === "-" && this.peek() === "-") this.consume(), this.transitionTo("commentStart"), this.delegate.beginComment();
1591
- else {
1592
- var i = s.toUpperCase() + this.input.substring(this.index, this.index + 6).toUpperCase();
1593
- i === "DOCTYPE" && (this.consume(), this.consume(), this.consume(), this.consume(), this.consume(), this.consume(), this.transitionTo("doctype"), this.delegate.beginDoctype && this.delegate.beginDoctype());
1594
- }
1595
- }, "markupDeclarationOpen"), doctype: /* @__PURE__ */ __name(function() {
1596
- var s = this.consume();
1597
- _(s) && this.transitionTo("beforeDoctypeName");
1598
- }, "doctype"), beforeDoctypeName: /* @__PURE__ */ __name(function() {
1599
- var s = this.consume();
1600
- _(s) || (this.transitionTo("doctypeName"), this.delegate.appendToDoctypeName && this.delegate.appendToDoctypeName(s.toLowerCase()));
1601
- }, "beforeDoctypeName"), doctypeName: /* @__PURE__ */ __name(function() {
1602
- var s = this.consume();
1603
- _(s) ? this.transitionTo("afterDoctypeName") : s === ">" ? (this.delegate.endDoctype && this.delegate.endDoctype(), this.transitionTo("beforeData")) : this.delegate.appendToDoctypeName && this.delegate.appendToDoctypeName(s.toLowerCase());
1604
- }, "doctypeName"), afterDoctypeName: /* @__PURE__ */ __name(function() {
1605
- var s = this.consume();
1606
- if (!_(s)) if (s === ">") this.delegate.endDoctype && this.delegate.endDoctype(), this.transitionTo("beforeData");
1607
- else {
1608
- var i = s.toUpperCase() + this.input.substring(this.index, this.index + 5).toUpperCase(), a = i.toUpperCase() === "PUBLIC", o = i.toUpperCase() === "SYSTEM";
1609
- (a || o) && (this.consume(), this.consume(), this.consume(), this.consume(), this.consume(), this.consume()), a ? this.transitionTo("afterDoctypePublicKeyword") : o && this.transitionTo("afterDoctypeSystemKeyword");
1610
- }
1611
- }, "afterDoctypeName"), afterDoctypePublicKeyword: /* @__PURE__ */ __name(function() {
1612
- var s = this.peek();
1613
- _(s) ? (this.transitionTo("beforeDoctypePublicIdentifier"), this.consume()) : s === '"' ? (this.transitionTo("doctypePublicIdentifierDoubleQuoted"), this.consume()) : s === "'" ? (this.transitionTo("doctypePublicIdentifierSingleQuoted"), this.consume()) : s === ">" && (this.consume(), this.delegate.endDoctype && this.delegate.endDoctype(), this.transitionTo("beforeData"));
1614
- }, "afterDoctypePublicKeyword"), doctypePublicIdentifierDoubleQuoted: /* @__PURE__ */ __name(function() {
1615
- var s = this.consume();
1616
- s === '"' ? this.transitionTo("afterDoctypePublicIdentifier") : s === ">" ? (this.delegate.endDoctype && this.delegate.endDoctype(), this.transitionTo("beforeData")) : this.delegate.appendToDoctypePublicIdentifier && this.delegate.appendToDoctypePublicIdentifier(s);
1617
- }, "doctypePublicIdentifierDoubleQuoted"), doctypePublicIdentifierSingleQuoted: /* @__PURE__ */ __name(function() {
1618
- var s = this.consume();
1619
- s === "'" ? this.transitionTo("afterDoctypePublicIdentifier") : s === ">" ? (this.delegate.endDoctype && this.delegate.endDoctype(), this.transitionTo("beforeData")) : this.delegate.appendToDoctypePublicIdentifier && this.delegate.appendToDoctypePublicIdentifier(s);
1620
- }, "doctypePublicIdentifierSingleQuoted"), afterDoctypePublicIdentifier: /* @__PURE__ */ __name(function() {
1621
- var s = this.consume();
1622
- _(s) ? this.transitionTo("betweenDoctypePublicAndSystemIdentifiers") : s === ">" ? (this.delegate.endDoctype && this.delegate.endDoctype(), this.transitionTo("beforeData")) : s === '"' ? this.transitionTo("doctypeSystemIdentifierDoubleQuoted") : s === "'" && this.transitionTo("doctypeSystemIdentifierSingleQuoted");
1623
- }, "afterDoctypePublicIdentifier"), betweenDoctypePublicAndSystemIdentifiers: /* @__PURE__ */ __name(function() {
1624
- var s = this.consume();
1625
- _(s) || (s === ">" ? (this.delegate.endDoctype && this.delegate.endDoctype(), this.transitionTo("beforeData")) : s === '"' ? this.transitionTo("doctypeSystemIdentifierDoubleQuoted") : s === "'" && this.transitionTo("doctypeSystemIdentifierSingleQuoted"));
1626
- }, "betweenDoctypePublicAndSystemIdentifiers"), doctypeSystemIdentifierDoubleQuoted: /* @__PURE__ */ __name(function() {
1627
- var s = this.consume();
1628
- s === '"' ? this.transitionTo("afterDoctypeSystemIdentifier") : s === ">" ? (this.delegate.endDoctype && this.delegate.endDoctype(), this.transitionTo("beforeData")) : this.delegate.appendToDoctypeSystemIdentifier && this.delegate.appendToDoctypeSystemIdentifier(s);
1629
- }, "doctypeSystemIdentifierDoubleQuoted"), doctypeSystemIdentifierSingleQuoted: /* @__PURE__ */ __name(function() {
1630
- var s = this.consume();
1631
- s === "'" ? this.transitionTo("afterDoctypeSystemIdentifier") : s === ">" ? (this.delegate.endDoctype && this.delegate.endDoctype(), this.transitionTo("beforeData")) : this.delegate.appendToDoctypeSystemIdentifier && this.delegate.appendToDoctypeSystemIdentifier(s);
1632
- }, "doctypeSystemIdentifierSingleQuoted"), afterDoctypeSystemIdentifier: /* @__PURE__ */ __name(function() {
1633
- var s = this.consume();
1634
- _(s) || s === ">" && (this.delegate.endDoctype && this.delegate.endDoctype(), this.transitionTo("beforeData"));
1635
- }, "afterDoctypeSystemIdentifier"), commentStart: /* @__PURE__ */ __name(function() {
1636
- var s = this.consume();
1637
- s === "-" ? this.transitionTo("commentStartDash") : s === ">" ? (this.delegate.finishComment(), this.transitionTo("beforeData")) : (this.delegate.appendToCommentData(s), this.transitionTo("comment"));
1638
- }, "commentStart"), commentStartDash: /* @__PURE__ */ __name(function() {
1639
- var s = this.consume();
1640
- s === "-" ? this.transitionTo("commentEnd") : s === ">" ? (this.delegate.finishComment(), this.transitionTo("beforeData")) : (this.delegate.appendToCommentData("-"), this.transitionTo("comment"));
1641
- }, "commentStartDash"), comment: /* @__PURE__ */ __name(function() {
1642
- var s = this.consume();
1643
- s === "-" ? this.transitionTo("commentEndDash") : this.delegate.appendToCommentData(s);
1644
- }, "comment"), commentEndDash: /* @__PURE__ */ __name(function() {
1645
- var s = this.consume();
1646
- s === "-" ? this.transitionTo("commentEnd") : (this.delegate.appendToCommentData("-" + s), this.transitionTo("comment"));
1647
- }, "commentEndDash"), commentEnd: /* @__PURE__ */ __name(function() {
1648
- var s = this.consume();
1649
- s === ">" ? (this.delegate.finishComment(), this.transitionTo("beforeData")) : (this.delegate.appendToCommentData("--" + s), this.transitionTo("comment"));
1650
- }, "commentEnd"), tagName: /* @__PURE__ */ __name(function() {
1651
- var s = this.consume();
1652
- _(s) ? this.transitionTo("beforeAttributeName") : s === "/" ? this.transitionTo("selfClosingStartTag") : s === ">" ? (this.delegate.finishTag(), this.transitionTo("beforeData")) : this.appendToTagName(s);
1653
- }, "tagName"), endTagName: /* @__PURE__ */ __name(function() {
1654
- var s = this.consume();
1655
- _(s) ? (this.transitionTo("beforeAttributeName"), this.tagNameBuffer = "") : s === "/" ? (this.transitionTo("selfClosingStartTag"), this.tagNameBuffer = "") : s === ">" ? (this.delegate.finishTag(), this.transitionTo("beforeData"), this.tagNameBuffer = "") : this.appendToTagName(s);
1656
- }, "endTagName"), beforeAttributeName: /* @__PURE__ */ __name(function() {
1657
- var s = this.peek();
1658
- if (_(s)) {
1659
- this.consume();
1660
- return;
1661
- } else s === "/" ? (this.transitionTo("selfClosingStartTag"), this.consume()) : s === ">" ? (this.consume(), this.delegate.finishTag(), this.transitionTo("beforeData")) : s === "=" ? (this.delegate.reportSyntaxError("attribute name cannot start with equals sign"), this.transitionTo("attributeName"), this.delegate.beginAttribute(), this.consume(), this.delegate.appendToAttributeName(s)) : (this.transitionTo("attributeName"), this.delegate.beginAttribute());
1662
- }, "beforeAttributeName"), attributeName: /* @__PURE__ */ __name(function() {
1663
- var s = this.peek();
1664
- _(s) ? (this.transitionTo("afterAttributeName"), this.consume()) : s === "/" ? (this.delegate.beginAttributeValue(false), this.delegate.finishAttributeValue(), this.consume(), this.transitionTo("selfClosingStartTag")) : s === "=" ? (this.transitionTo("beforeAttributeValue"), this.consume()) : s === ">" ? (this.delegate.beginAttributeValue(false), this.delegate.finishAttributeValue(), this.consume(), this.delegate.finishTag(), this.transitionTo("beforeData")) : s === '"' || s === "'" || s === "<" ? (this.delegate.reportSyntaxError(s + " is not a valid character within attribute names"), this.consume(), this.delegate.appendToAttributeName(s)) : (this.consume(), this.delegate.appendToAttributeName(s));
1665
- }, "attributeName"), afterAttributeName: /* @__PURE__ */ __name(function() {
1666
- var s = this.peek();
1667
- if (_(s)) {
1668
- this.consume();
1669
- return;
1670
- } else s === "/" ? (this.delegate.beginAttributeValue(false), this.delegate.finishAttributeValue(), this.consume(), this.transitionTo("selfClosingStartTag")) : s === "=" ? (this.consume(), this.transitionTo("beforeAttributeValue")) : s === ">" ? (this.delegate.beginAttributeValue(false), this.delegate.finishAttributeValue(), this.consume(), this.delegate.finishTag(), this.transitionTo("beforeData")) : (this.delegate.beginAttributeValue(false), this.delegate.finishAttributeValue(), this.transitionTo("attributeName"), this.delegate.beginAttribute(), this.consume(), this.delegate.appendToAttributeName(s));
1671
- }, "afterAttributeName"), beforeAttributeValue: /* @__PURE__ */ __name(function() {
1672
- var s = this.peek();
1673
- _(s) ? this.consume() : s === '"' ? (this.transitionTo("attributeValueDoubleQuoted"), this.delegate.beginAttributeValue(true), this.consume()) : s === "'" ? (this.transitionTo("attributeValueSingleQuoted"), this.delegate.beginAttributeValue(true), this.consume()) : s === ">" ? (this.delegate.beginAttributeValue(false), this.delegate.finishAttributeValue(), this.consume(), this.delegate.finishTag(), this.transitionTo("beforeData")) : (this.transitionTo("attributeValueUnquoted"), this.delegate.beginAttributeValue(false), this.consume(), this.delegate.appendToAttributeValue(s));
1674
- }, "beforeAttributeValue"), attributeValueDoubleQuoted: /* @__PURE__ */ __name(function() {
1675
- var s = this.consume();
1676
- s === '"' ? (this.delegate.finishAttributeValue(), this.transitionTo("afterAttributeValueQuoted")) : s === "&" ? this.delegate.appendToAttributeValue(this.consumeCharRef() || "&") : this.delegate.appendToAttributeValue(s);
1677
- }, "attributeValueDoubleQuoted"), attributeValueSingleQuoted: /* @__PURE__ */ __name(function() {
1678
- var s = this.consume();
1679
- s === "'" ? (this.delegate.finishAttributeValue(), this.transitionTo("afterAttributeValueQuoted")) : s === "&" ? this.delegate.appendToAttributeValue(this.consumeCharRef() || "&") : this.delegate.appendToAttributeValue(s);
1680
- }, "attributeValueSingleQuoted"), attributeValueUnquoted: /* @__PURE__ */ __name(function() {
1681
- var s = this.peek();
1682
- _(s) ? (this.delegate.finishAttributeValue(), this.consume(), this.transitionTo("beforeAttributeName")) : s === "/" ? (this.delegate.finishAttributeValue(), this.consume(), this.transitionTo("selfClosingStartTag")) : s === "&" ? (this.consume(), this.delegate.appendToAttributeValue(this.consumeCharRef() || "&")) : s === ">" ? (this.delegate.finishAttributeValue(), this.consume(), this.delegate.finishTag(), this.transitionTo("beforeData")) : (this.consume(), this.delegate.appendToAttributeValue(s));
1683
- }, "attributeValueUnquoted"), afterAttributeValueQuoted: /* @__PURE__ */ __name(function() {
1684
- var s = this.peek();
1685
- _(s) ? (this.consume(), this.transitionTo("beforeAttributeName")) : s === "/" ? (this.consume(), this.transitionTo("selfClosingStartTag")) : s === ">" ? (this.consume(), this.delegate.finishTag(), this.transitionTo("beforeData")) : this.transitionTo("beforeAttributeName");
1686
- }, "afterAttributeValueQuoted"), selfClosingStartTag: /* @__PURE__ */ __name(function() {
1687
- var s = this.peek();
1688
- s === ">" ? (this.consume(), this.delegate.markTagAsSelfClosing(), this.delegate.finishTag(), this.transitionTo("beforeData")) : this.transitionTo("beforeAttributeName");
1689
- }, "selfClosingStartTag"), endTagOpen: /* @__PURE__ */ __name(function() {
1690
- var s = this.consume();
1691
- (s === "@" || s === ":" || wn(s)) && (this.transitionTo("endTagName"), this.tagNameBuffer = "", this.delegate.beginEndTag(), this.appendToTagName(s));
1692
- }, "endTagOpen") }, this.reset();
1693
- }
1694
- __name(e5, "e");
1695
- return e5.prototype.reset = function() {
1696
- this.transitionTo("beforeData"), this.input = "", this.tagNameBuffer = "", this.index = 0, this.line = 1, this.column = 0, this.delegate.reset();
1697
- }, e5.prototype.transitionTo = function(t) {
1698
- this.state = t;
1699
- }, e5.prototype.tokenize = function(t) {
1700
- this.reset(), this.tokenizePart(t), this.tokenizeEOF();
1701
- }, e5.prototype.tokenizePart = function(t) {
1702
- for (this.input += Zs(t); this.index < this.input.length; ) {
1703
- var r = this.states[this.state];
1704
- if (r !== void 0) r.call(this);
1705
- else throw new Error("unhandled state " + this.state);
1706
- }
1707
- }, e5.prototype.tokenizeEOF = function() {
1708
- this.flushData();
1709
- }, e5.prototype.flushData = function() {
1710
- this.state === "data" && (this.delegate.finishData(), this.transitionTo("beforeData"));
1711
- }, e5.prototype.peek = function() {
1712
- return this.input.charAt(this.index);
1713
- }, e5.prototype.consume = function() {
1714
- var t = this.peek();
1715
- return this.index++, t === `
1716
- ` ? (this.line++, this.column = 0) : this.column++, t;
1717
- }, e5.prototype.consumeCharRef = function() {
1718
- var t = this.input.indexOf(";", this.index);
1719
- if (t !== -1) {
1720
- var r = this.input.slice(this.index, t), n = this.entityParser.parse(r);
1721
- if (n) {
1722
- for (var s = r.length; s; ) this.consume(), s--;
1723
- return this.consume(), n;
1724
- }
1725
- }
1726
- }, e5.prototype.markTagStart = function() {
1727
- this.delegate.tagOpen();
1728
- }, e5.prototype.appendToTagName = function(t) {
1729
- this.tagNameBuffer += t, this.delegate.appendToTagName(t);
1730
- }, e5.prototype.isIgnoredEndTag = function() {
1731
- var t = this.tagNameBuffer;
1732
- return t === "title" && this.input.substring(this.index, this.index + 8) !== "</title>" || t === "style" && this.input.substring(this.index, this.index + 8) !== "</style>" || t === "script" && this.input.substring(this.index, this.index + 9) !== "</script>";
1733
- }, e5;
1734
- }();
1735
- Ka = function() {
1736
- function e5(t, r) {
1737
- r === void 0 && (r = {}), this.options = r, this.token = null, this.startLine = 1, this.startColumn = 0, this.tokens = [], this.tokenizer = new hr(this, t, r.mode), this._currentAttribute = void 0;
1738
- }
1739
- __name(e5, "e");
1740
- return e5.prototype.tokenize = function(t) {
1741
- return this.tokens = [], this.tokenizer.tokenize(t), this.tokens;
1742
- }, e5.prototype.tokenizePart = function(t) {
1743
- return this.tokens = [], this.tokenizer.tokenizePart(t), this.tokens;
1744
- }, e5.prototype.tokenizeEOF = function() {
1745
- return this.tokens = [], this.tokenizer.tokenizeEOF(), this.tokens[0];
1746
- }, e5.prototype.reset = function() {
1747
- this.token = null, this.startLine = 1, this.startColumn = 0;
1748
- }, e5.prototype.current = function() {
1749
- var t = this.token;
1750
- if (t === null) throw new Error("token was unexpectedly null");
1751
- if (arguments.length === 0) return t;
1752
- for (var r = 0; r < arguments.length; r++) if (t.type === arguments[r]) return t;
1753
- throw new Error("token type was unexpectedly " + t.type);
1754
- }, e5.prototype.push = function(t) {
1755
- this.token = t, this.tokens.push(t);
1756
- }, e5.prototype.currentAttribute = function() {
1757
- return this._currentAttribute;
1758
- }, e5.prototype.addLocInfo = function() {
1759
- this.options.loc && (this.current().loc = { start: { line: this.startLine, column: this.startColumn }, end: { line: this.tokenizer.line, column: this.tokenizer.column } }), this.startLine = this.tokenizer.line, this.startColumn = this.tokenizer.column;
1760
- }, e5.prototype.beginDoctype = function() {
1761
- this.push({ type: "Doctype", name: "" });
1762
- }, e5.prototype.appendToDoctypeName = function(t) {
1763
- this.current("Doctype").name += t;
1764
- }, e5.prototype.appendToDoctypePublicIdentifier = function(t) {
1765
- var r = this.current("Doctype");
1766
- r.publicIdentifier === void 0 ? r.publicIdentifier = t : r.publicIdentifier += t;
1767
- }, e5.prototype.appendToDoctypeSystemIdentifier = function(t) {
1768
- var r = this.current("Doctype");
1769
- r.systemIdentifier === void 0 ? r.systemIdentifier = t : r.systemIdentifier += t;
1770
- }, e5.prototype.endDoctype = function() {
1771
- this.addLocInfo();
1772
- }, e5.prototype.beginData = function() {
1773
- this.push({ type: "Chars", chars: "" });
1774
- }, e5.prototype.appendToData = function(t) {
1775
- this.current("Chars").chars += t;
1776
- }, e5.prototype.finishData = function() {
1777
- this.addLocInfo();
1778
- }, e5.prototype.beginComment = function() {
1779
- this.push({ type: "Comment", chars: "" });
1780
- }, e5.prototype.appendToCommentData = function(t) {
1781
- this.current("Comment").chars += t;
1782
- }, e5.prototype.finishComment = function() {
1783
- this.addLocInfo();
1784
- }, e5.prototype.tagOpen = function() {
1785
- }, e5.prototype.beginStartTag = function() {
1786
- this.push({ type: "StartTag", tagName: "", attributes: [], selfClosing: false });
1787
- }, e5.prototype.beginEndTag = function() {
1788
- this.push({ type: "EndTag", tagName: "" });
1789
- }, e5.prototype.finishTag = function() {
1790
- this.addLocInfo();
1791
- }, e5.prototype.markTagAsSelfClosing = function() {
1792
- this.current("StartTag").selfClosing = true;
1793
- }, e5.prototype.appendToTagName = function(t) {
1794
- this.current("StartTag", "EndTag").tagName += t;
1795
- }, e5.prototype.beginAttribute = function() {
1796
- this._currentAttribute = ["", "", false];
1797
- }, e5.prototype.appendToAttributeName = function(t) {
1798
- this.currentAttribute()[0] += t;
1799
- }, e5.prototype.beginAttributeValue = function(t) {
1800
- this.currentAttribute()[2] = t;
1801
- }, e5.prototype.appendToAttributeValue = function(t) {
1802
- this.currentAttribute()[1] += t;
1803
- }, e5.prototype.finishAttributeValue = function() {
1804
- this.current("StartTag").attributes.push(this._currentAttribute);
1805
- }, e5.prototype.reportSyntaxError = function(t) {
1806
- this.current().syntaxError = t;
1807
- }, e5;
1808
- }();
1809
- xe = { Append: 1, TrustingAppend: 2, Comment: 3, Modifier: 4, StrictModifier: 5, Block: 6, StrictBlock: 7, Component: 8, OpenElement: 10, OpenElementWithSplat: 11, FlushElement: 12, CloseElement: 13, StaticAttr: 14, DynamicAttr: 15, ComponentAttr: 16, AttrSplat: 17, Yield: 18, DynamicArg: 20, StaticArg: 21, TrustingDynamicAttr: 22, TrustingComponentAttr: 23, StaticComponentAttr: 24, Debugger: 26, Undefined: 27, Call: 28, Concat: 29, GetSymbol: 30, GetLexicalSymbol: 32, GetStrictKeyword: 31, GetFreeAsComponentOrHelperHead: 35, GetFreeAsHelperHead: 37, GetFreeAsModifierHead: 38, GetFreeAsComponentHead: 39, InElement: 40, If: 41, Each: 42, Let: 44, WithDynamicVars: 45, InvokeComponent: 46, HasBlock: 48, HasBlockParams: 49, Curry: 50, Not: 51, IfInline: 52, GetDynamicVar: 53, Log: 54 };
1810
- __name(Cn, "Cn");
1811
- Qa = Cn(xe.FlushElement);
1812
- Ja = Cn(xe.GetSymbol);
1813
- ti = /["&\xA0]/u;
1814
- io = new RegExp(ti.source, "gu");
1815
- ei = /[&<>\xA0]/u;
1816
- ao = new RegExp(ei.source, "gu");
1817
- br = /* @__PURE__ */ new Set(["area", "base", "br", "col", "command", "embed", "hr", "img", "input", "keygen", "link", "meta", "param", "source", "track", "wbr"]);
1818
- __name(ri, "ri");
1819
- __name(ue, "ue");
1820
- __name(ie, "ie");
1821
- __name(Nr, "Nr");
1822
- __name(ni, "ni");
1823
- ut = Object.freeze({ line: 1, column: 0 });
1824
- si = Object.freeze({ source: "(synthetic)", start: ut, end: ut });
1825
- se = Object.freeze({ source: "(nonexistent)", start: ut, end: ut });
1826
- ct = Object.freeze({ source: "(broken)", start: ut, end: ut });
1827
- yr = class {
1828
- static {
1829
- __name(this, "yr");
1830
- }
1831
- _whens;
1832
- constructor(t) {
1833
- this._whens = t;
1834
- }
1835
- first(t) {
1836
- for (let r of this._whens) {
1837
- let n = r.match(t);
1838
- if (ue(n)) return n[0];
1839
- }
1840
- return null;
1841
- }
1842
- };
1843
- Le = class {
1844
- static {
1845
- __name(this, "Le");
1846
- }
1847
- _map = /* @__PURE__ */ new Map();
1848
- get(t, r) {
1849
- let n = this._map.get(t);
1850
- return n || (n = r(), this._map.set(t, n), n);
1851
- }
1852
- add(t, r) {
1853
- this._map.set(t, r);
1854
- }
1855
- match(t) {
1856
- let r = function(a) {
1857
- switch (a) {
1858
- case "Broken":
1859
- case "InternalsSynthetic":
1860
- case "NonExistent":
1861
- return "IS_INVISIBLE";
1862
- default:
1863
- return a;
1864
- }
1865
- }(t), n = [], s = this._map.get(r), i = this._map.get("MATCH_ANY");
1866
- return s && n.push(s), i && n.push(i), n;
1867
- }
1868
- };
1869
- __name(On, "On");
1870
- kr = class {
1871
- static {
1872
- __name(this, "kr");
1873
- }
1874
- _whens = new Le();
1875
- validate() {
1876
- return (t, r) => this.matchFor(t.kind, r.kind)(t, r);
1877
- }
1878
- matchFor(t, r) {
1879
- let n = this._whens.match(t);
1880
- return ue(n), new yr(n).first(r);
1881
- }
1882
- when(t, r, n) {
1883
- return this._whens.get(t, () => new Le()).add(r, n), this;
1884
- }
1885
- };
1886
- Sr = class e {
1887
- static {
1888
- __name(this, "e");
1889
- }
1890
- static synthetic(t) {
1891
- let r = D.synthetic(t);
1892
- return new e({ loc: r, chars: t });
1893
- }
1894
- static load(t, r) {
1895
- return new e({ loc: D.load(t, r[1]), chars: r[0] });
1896
- }
1897
- chars;
1898
- loc;
1899
- constructor(t) {
1900
- this.loc = t.loc, this.chars = t.chars;
1901
- }
1902
- getString() {
1903
- return this.chars;
1904
- }
1905
- serialize() {
1906
- return [this.chars, this.loc.serialize()];
1907
- }
1908
- };
1909
- D = class e2 {
1910
- static {
1911
- __name(this, "e");
1912
- }
1913
- static get NON_EXISTENT() {
1914
- return new X("NonExistent", se).wrap();
1915
- }
1916
- static load(t, r) {
1917
- return typeof r == "number" ? e2.forCharPositions(t, r, r) : typeof r == "string" ? e2.synthetic(r) : Array.isArray(r) ? e2.forCharPositions(t, r[0], r[1]) : r === "NonExistent" ? e2.NON_EXISTENT : r === "Broken" ? e2.broken(ct) : void bn(r);
1918
- }
1919
- static forHbsLoc(t, r) {
1920
- let n = new pt(t, r.start), s = new pt(t, r.end);
1921
- return new oe(t, { start: n, end: s }, r).wrap();
1922
- }
1923
- static forCharPositions(t, r, n) {
1924
- let s = new wt(t, r), i = new wt(t, n);
1925
- return new ae(t, { start: s, end: i }).wrap();
1926
- }
1927
- static synthetic(t) {
1928
- return new X("InternalsSynthetic", se, t).wrap();
1929
- }
1930
- static broken(t = ct) {
1931
- return new X("Broken", t).wrap();
1932
- }
1933
- isInvisible;
1934
- constructor(t) {
1935
- var r;
1936
- this.data = t, this.isInvisible = (r = t.kind) !== "CharPosition" && r !== "HbsPosition";
1937
- }
1938
- getStart() {
1939
- return this.data.getStart().wrap();
1940
- }
1941
- getEnd() {
1942
- return this.data.getEnd().wrap();
1943
- }
1944
- get loc() {
1945
- let t = this.data.toHbsSpan();
1946
- return t === null ? ct : t.toHbsLoc();
1947
- }
1948
- get module() {
1949
- return this.data.getModule();
1950
- }
1951
- get startPosition() {
1952
- return this.loc.start;
1953
- }
1954
- get endPosition() {
1955
- return this.loc.end;
1956
- }
1957
- toJSON() {
1958
- return this.loc;
1959
- }
1960
- withStart(t) {
1961
- return K(t.data, this.data.getEnd());
1962
- }
1963
- withEnd(t) {
1964
- return K(this.data.getStart(), t.data);
1965
- }
1966
- asString() {
1967
- return this.data.asString();
1968
- }
1969
- toSlice(t) {
1970
- let r = this.data.asString();
1971
- return false, new Sr({ loc: this, chars: t || r });
1972
- }
1973
- get start() {
1974
- return this.loc.start;
1975
- }
1976
- set start(t) {
1977
- this.data.locDidUpdate({ start: t });
1978
- }
1979
- get end() {
1980
- return this.loc.end;
1981
- }
1982
- set end(t) {
1983
- this.data.locDidUpdate({ end: t });
1984
- }
1985
- get source() {
1986
- return this.module;
1987
- }
1988
- collapse(t) {
1989
- switch (t) {
1990
- case "start":
1991
- return this.getStart().collapsed();
1992
- case "end":
1993
- return this.getEnd().collapsed();
1994
- }
1995
- }
1996
- extend(t) {
1997
- return K(this.data.getStart(), t.data.getEnd());
1998
- }
1999
- serialize() {
2000
- return this.data.serialize();
2001
- }
2002
- slice({ skipStart: t = 0, skipEnd: r = 0 }) {
2003
- return K(this.getStart().move(t).data, this.getEnd().move(-r).data);
2004
- }
2005
- sliceStartChars({ skipStart: t = 0, chars: r }) {
2006
- return K(this.getStart().move(t).data, this.getStart().move(t + r).data);
2007
- }
2008
- sliceEndChars({ skipEnd: t = 0, chars: r }) {
2009
- return K(this.getEnd().move(t - r).data, this.getStart().move(-t).data);
2010
- }
2011
- };
2012
- ae = class {
2013
- static {
2014
- __name(this, "ae");
2015
- }
2016
- constructor(t, r) {
2017
- Me(this, "kind", "CharPosition");
2018
- Pt(this, ce, null);
2019
- this.source = t, this.charPositions = r;
2020
- }
2021
- wrap() {
2022
- return new D(this);
2023
- }
2024
- asString() {
2025
- return this.source.slice(this.charPositions.start.charPos, this.charPositions.end.charPos);
2026
- }
2027
- getModule() {
2028
- return this.source.module;
2029
- }
2030
- getStart() {
2031
- return this.charPositions.start;
2032
- }
2033
- getEnd() {
2034
- return this.charPositions.end;
2035
- }
2036
- locDidUpdate() {
2037
- }
2038
- toHbsSpan() {
2039
- let t = I(this, ce);
2040
- if (t === null) {
2041
- let r = this.charPositions.start.toHbsPos(), n = this.charPositions.end.toHbsPos();
2042
- t = J(this, ce, r === null || n === null ? ht : new oe(this.source, { start: r, end: n }));
2043
- }
2044
- return t === ht ? null : t;
2045
- }
2046
- serialize() {
2047
- let { start: { charPos: t }, end: { charPos: r } } = this.charPositions;
2048
- return t === r ? t : [t, r];
2049
- }
2050
- toCharPosSpan() {
2051
- return this;
2052
- }
2053
- };
2054
- ce = /* @__PURE__ */ new WeakMap();
2055
- oe = class {
2056
- static {
2057
- __name(this, "oe");
2058
- }
2059
- constructor(t, r, n = null) {
2060
- Me(this, "kind", "HbsPosition");
2061
- Pt(this, St, null);
2062
- Pt(this, vt);
2063
- this.source = t, this.hbsPositions = r, J(this, vt, n);
2064
- }
2065
- serialize() {
2066
- let t = this.toCharPosSpan();
2067
- return t === null ? "Broken" : t.wrap().serialize();
2068
- }
2069
- wrap() {
2070
- return new D(this);
2071
- }
2072
- updateProvided(t, r) {
2073
- I(this, vt) && (I(this, vt)[r] = t), J(this, St, null), J(this, vt, { start: t, end: t });
2074
- }
2075
- locDidUpdate({ start: t, end: r }) {
2076
- t !== void 0 && (this.updateProvided(t, "start"), this.hbsPositions.start = new pt(this.source, t, null)), r !== void 0 && (this.updateProvided(r, "end"), this.hbsPositions.end = new pt(this.source, r, null));
2077
- }
2078
- asString() {
2079
- let t = this.toCharPosSpan();
2080
- return t === null ? "" : t.asString();
2081
- }
2082
- getModule() {
2083
- return this.source.module;
2084
- }
2085
- getStart() {
2086
- return this.hbsPositions.start;
2087
- }
2088
- getEnd() {
2089
- return this.hbsPositions.end;
2090
- }
2091
- toHbsLoc() {
2092
- return { start: this.hbsPositions.start.hbsPos, end: this.hbsPositions.end.hbsPos };
2093
- }
2094
- toHbsSpan() {
2095
- return this;
2096
- }
2097
- toCharPosSpan() {
2098
- let t = I(this, St);
2099
- if (t === null) {
2100
- let r = this.hbsPositions.start.toCharPos(), n = this.hbsPositions.end.toCharPos();
2101
- if (!r || !n) return t = J(this, St, ht), null;
2102
- t = J(this, St, new ae(this.source, { start: r, end: n }));
2103
- }
2104
- return t === ht ? null : t;
2105
- }
2106
- };
2107
- St = /* @__PURE__ */ new WeakMap(), vt = /* @__PURE__ */ new WeakMap();
2108
- X = class {
2109
- static {
2110
- __name(this, "X");
2111
- }
2112
- constructor(t, r, n = null) {
2113
- this.kind = t, this.loc = r, this.string = n;
2114
- }
2115
- serialize() {
2116
- switch (this.kind) {
2117
- case "Broken":
2118
- case "NonExistent":
2119
- return this.kind;
2120
- case "InternalsSynthetic":
2121
- return this.string || "";
2122
- }
2123
- }
2124
- wrap() {
2125
- return new D(this);
2126
- }
2127
- asString() {
2128
- return this.string || "";
2129
- }
2130
- locDidUpdate({ start: t, end: r }) {
2131
- t !== void 0 && (this.loc.start = t), r !== void 0 && (this.loc.end = r);
2132
- }
2133
- getModule() {
2134
- return "an unknown module";
2135
- }
2136
- getStart() {
2137
- return new le(this.kind, this.loc.start);
2138
- }
2139
- getEnd() {
2140
- return new le(this.kind, this.loc.end);
2141
- }
2142
- toCharPosSpan() {
2143
- return this;
2144
- }
2145
- toHbsSpan() {
2146
- return null;
2147
- }
2148
- toHbsLoc() {
2149
- return ct;
2150
- }
2151
- };
2152
- K = On((e5) => e5.when("HbsPosition", "HbsPosition", (t, r) => new oe(t.source, { start: t, end: r }).wrap()).when("CharPosition", "CharPosition", (t, r) => new ae(t.source, { start: t, end: r }).wrap()).when("CharPosition", "HbsPosition", (t, r) => {
2153
- let n = r.toCharPos();
2154
- return n === null ? new X("Broken", ct).wrap() : K(t, n);
2155
- }).when("HbsPosition", "CharPosition", (t, r) => {
2156
- let n = t.toCharPos();
2157
- return n === null ? new X("Broken", ct).wrap() : K(n, r);
2158
- }).when("IS_INVISIBLE", "MATCH_ANY", (t) => new X(t.kind, ct).wrap()).when("MATCH_ANY", "IS_INVISIBLE", (t, r) => new X(r.kind, ct).wrap()));
2159
- ht = "BROKEN";
2160
- Ht = class e3 {
2161
- static {
2162
- __name(this, "e");
2163
- }
2164
- static forHbsPos(t, r) {
2165
- return new pt(t, r, null).wrap();
2166
- }
2167
- static broken(t = ut) {
2168
- return new le("Broken", t).wrap();
2169
- }
2170
- constructor(t) {
2171
- this.data = t;
2172
- }
2173
- get offset() {
2174
- let t = this.data.toCharPos();
2175
- return t === null ? null : t.offset;
2176
- }
2177
- eql(t) {
2178
- return ii(this.data, t.data);
2179
- }
2180
- until(t) {
2181
- return K(this.data, t.data);
2182
- }
2183
- move(t) {
2184
- let r = this.data.toCharPos();
2185
- if (r === null) return e3.broken();
2186
- {
2187
- let n = r.offset + t;
2188
- return r.source.validate(n) ? new wt(r.source, n).wrap() : e3.broken();
2189
- }
2190
- }
2191
- collapsed() {
2192
- return K(this.data, this.data);
2193
- }
2194
- toJSON() {
2195
- return this.data.toJSON();
2196
- }
2197
- };
2198
- wt = class {
2199
- static {
2200
- __name(this, "wt");
2201
- }
2202
- kind = "CharPosition";
2203
- _locPos = null;
2204
- constructor(t, r) {
2205
- this.source = t, this.charPos = r;
2206
- }
2207
- toCharPos() {
2208
- return this;
2209
- }
2210
- toJSON() {
2211
- let t = this.toHbsPos();
2212
- return t === null ? ut : t.toJSON();
2213
- }
2214
- wrap() {
2215
- return new Ht(this);
2216
- }
2217
- get offset() {
2218
- return this.charPos;
2219
- }
2220
- toHbsPos() {
2221
- let t = this._locPos;
2222
- if (t === null) {
2223
- let r = this.source.hbsPosFor(this.charPos);
2224
- this._locPos = t = r === null ? ht : new pt(this.source, r, this.charPos);
2225
- }
2226
- return t === ht ? null : t;
2227
- }
2228
- };
2229
- pt = class {
2230
- static {
2231
- __name(this, "pt");
2232
- }
2233
- kind = "HbsPosition";
2234
- _charPos;
2235
- constructor(t, r, n = null) {
2236
- this.source = t, this.hbsPos = r, this._charPos = n === null ? null : new wt(t, n);
2237
- }
2238
- toCharPos() {
2239
- let t = this._charPos;
2240
- if (t === null) {
2241
- let r = this.source.charPosFor(this.hbsPos);
2242
- this._charPos = t = r === null ? ht : new wt(this.source, r);
2243
- }
2244
- return t === ht ? null : t;
2245
- }
2246
- toJSON() {
2247
- return this.hbsPos;
2248
- }
2249
- wrap() {
2250
- return new Ht(this);
2251
- }
2252
- toHbsPos() {
2253
- return this;
2254
- }
2255
- };
2256
- le = class {
2257
- static {
2258
- __name(this, "le");
2259
- }
2260
- constructor(t, r) {
2261
- this.kind = t, this.pos = r;
2262
- }
2263
- toCharPos() {
2264
- return null;
2265
- }
2266
- toJSON() {
2267
- return this.pos;
2268
- }
2269
- wrap() {
2270
- return new Ht(this);
2271
- }
2272
- get offset() {
2273
- return null;
2274
- }
2275
- };
2276
- ii = On((e5) => e5.when("HbsPosition", "HbsPosition", ({ hbsPos: t }, { hbsPos: r }) => t.column === r.column && t.line === r.line).when("CharPosition", "CharPosition", ({ charPos: t }, { charPos: r }) => t === r).when("CharPosition", "HbsPosition", ({ offset: t }, r) => {
2277
- var n;
2278
- return t === ((n = r.toCharPos()) == null ? void 0 : n.offset);
2279
- }).when("HbsPosition", "CharPosition", (t, { offset: r }) => {
2280
- var n;
2281
- return ((n = t.toCharPos()) == null ? void 0 : n.offset) === r;
2282
- }).when("MATCH_ANY", "MATCH_ANY", () => false));
2283
- Et = class e4 {
2284
- static {
2285
- __name(this, "e");
2286
- }
2287
- static from(t, r = {}) {
2288
- var n;
2289
- return new e4(t, (n = r.meta) == null ? void 0 : n.moduleName);
2290
- }
2291
- constructor(t, r = "an unknown module") {
2292
- this.source = t, this.module = r;
2293
- }
2294
- validate(t) {
2295
- return t >= 0 && t <= this.source.length;
2296
- }
2297
- slice(t, r) {
2298
- return this.source.slice(t, r);
2299
- }
2300
- offsetFor(t, r) {
2301
- return Ht.forHbsPos(this, { line: t, column: r });
2302
- }
2303
- spanFor({ start: t, end: r }) {
2304
- return D.forHbsLoc(this, { start: { line: t.line, column: t.column }, end: { line: r.line, column: r.column } });
2305
- }
2306
- hbsPosFor(t) {
2307
- let r = 0, n = 0;
2308
- if (t > this.source.length) return null;
2309
- for (; ; ) {
2310
- let s = this.source.indexOf(`
2311
- `, n);
2312
- if (t <= s || s === -1) return { line: r + 1, column: t - n };
2313
- r += 1, n = s + 1;
2314
- }
2315
- }
2316
- charPosFor(t) {
2317
- let { line: r, column: n } = t, s = this.source.length, i = 0, a = 0;
2318
- for (; a < s; ) {
2319
- let o = this.source.indexOf(`
2320
- `, a);
2321
- if (o === -1 && (o = this.source.length), i === r - 1) {
2322
- if (a + n > o) return o;
2323
- if (false) {
2324
- let c = this.hbsPosFor(a + n);
2325
- c.line, c.column;
2326
- }
2327
- return a + n;
2328
- }
2329
- if (o === -1) return 0;
2330
- i += 1, a = o + 1;
2331
- }
2332
- return s;
2333
- }
2334
- };
2335
- __name(S, "S");
2336
- ai = { Template: ["body"], Block: ["body"], MustacheStatement: ["path", "params", "hash"], BlockStatement: ["path", "params", "hash", "program", "inverse"], ElementModifierStatement: ["path", "params", "hash"], CommentStatement: [], MustacheCommentStatement: [], ElementNode: ["attributes", "modifiers", "children", "comments"], AttrNode: ["value"], TextNode: [], ConcatStatement: ["parts"], SubExpression: ["path", "params", "hash"], PathExpression: [], StringLiteral: [], BooleanLiteral: [], NumberLiteral: [], NullLiteral: [], UndefinedLiteral: [], Hash: ["pairs"], HashPair: ["value"] };
2337
- xr = function() {
2338
- function e5(t, r, n, s) {
2339
- let i = Error.call(this, t);
2340
- this.key = s, this.message = t, this.node = r, this.parent = n, i.stack && (this.stack = i.stack);
2341
- }
2342
- __name(e5, "e");
2343
- return e5.prototype = Object.create(Error.prototype), e5.prototype.constructor = e5, e5;
2344
- }();
2345
- __name(Nn, "Nn");
2346
- __name(oi, "oi");
2347
- __name(xn, "xn");
2348
- Ft = class {
2349
- static {
2350
- __name(this, "Ft");
2351
- }
2352
- node;
2353
- parent;
2354
- parentKey;
2355
- constructor(t, r = null, n = null) {
2356
- this.node = t, this.parent = r, this.parentKey = n;
2357
- }
2358
- get parentNode() {
2359
- return this.parent ? this.parent.node : null;
2360
- }
2361
- parents() {
2362
- return { [Symbol.iterator]: () => new vr(this) };
2363
- }
2364
- };
2365
- vr = class {
2366
- static {
2367
- __name(this, "vr");
2368
- }
2369
- path;
2370
- constructor(t) {
2371
- this.path = t;
2372
- }
2373
- next() {
2374
- return this.path.parent ? (this.path = this.path.parent, { done: false, value: this.path }) : { done: true, value: null };
2375
- }
2376
- };
2377
- __name(Bn, "Bn");
2378
- __name(In, "In");
2379
- __name(De, "De");
2380
- __name(An, "An");
2381
- __name(li, "li");
2382
- __name(Rn, "Rn");
2383
- __name(ci, "ci");
2384
- __name(ui, "ui");
2385
- __name(Vt, "Vt");
2386
- __name(qn, "qn");
2387
- __name(fr, "fr");
2388
- __name(Pn, "Pn");
2389
- __name(lt, "lt");
2390
- __name(Pe, "Pe");
2391
- __name(ne, "ne");
2392
- __name(Vn, "Vn");
2393
- __name(Ln, "Ln");
2394
- __name(Dn, "Dn");
2395
- __name(T, "T");
2396
- hi = { mustache: /* @__PURE__ */ __name(function(e5, t = [], r = ne([]), n = false, s, i) {
2397
- return f.mustache({ path: lt(e5), params: t, hash: r, trusting: n, strip: i, loc: T(s || null) });
2398
- }, "mustache"), block: /* @__PURE__ */ __name(function(e5, t, r, n, s = null, i, a, o, c) {
2399
- let h, p = null;
2400
- return h = n.type === "Template" ? f.blockItself({ params: Vn(n.blockParams), body: n.body, loc: n.loc }) : n, (s == null ? void 0 : s.type) === "Template" ? (s.blockParams.length, p = f.blockItself({ params: [], body: s.body, loc: s.loc })) : p = s, f.block({ path: lt(e5), params: t || [], hash: r || ne([]), defaultBlock: h, elseBlock: p, loc: T(i || null), openStrip: a, inverseStrip: o, closeStrip: c });
2401
- }, "block"), comment: /* @__PURE__ */ __name(function(e5, t) {
2402
- return f.comment({ value: e5, loc: T(t || null) });
2403
- }, "comment"), mustacheComment: /* @__PURE__ */ __name(function(e5, t) {
2404
- return f.mustacheComment({ value: e5, loc: T(t || null) });
2405
- }, "mustacheComment"), element: /* @__PURE__ */ __name(function(e5, t = {}) {
2406
- let r, n, { attrs: s, blockParams: i, modifiers: a, comments: o, children: c, openTag: h, closeTag: p, loc: m } = t;
2407
- typeof e5 == "string" ? e5.endsWith("/") ? (r = lt(e5.slice(0, -1)), n = true) : r = lt(e5) : "type" in e5 ? (e5.type, e5.type, r = e5) : "path" in e5 ? (e5.path.type, e5.path.type, r = e5.path, n = e5.selfClosing) : (r = lt(e5.name), n = e5.selfClosing);
2408
- let v = i == null ? void 0 : i.map((E) => typeof E == "string" ? Pn(E) : E), g = null;
2409
- return p ? g = T(p || null) : p === void 0 && (g = n || ri(r.original) ? null : T(null)), f.element({ path: r, selfClosing: n || false, attributes: s || [], params: v || [], modifiers: a || [], comments: o || [], children: c || [], openTag: T(h || null), closeTag: g, loc: T(m || null) });
2410
- }, "element"), elementModifier: /* @__PURE__ */ __name(function(e5, t, r, n) {
2411
- return f.elementModifier({ path: lt(e5), params: t || [], hash: r || ne([]), loc: T(n || null) });
2412
- }, "elementModifier"), attr: /* @__PURE__ */ __name(function(e5, t, r) {
2413
- return f.attr({ name: e5, value: t, loc: T(r || null) });
2414
- }, "attr"), text: /* @__PURE__ */ __name(function(e5 = "", t) {
2415
- return f.text({ chars: e5, loc: T(t || null) });
2416
- }, "text"), sexpr: /* @__PURE__ */ __name(function(e5, t = [], r = ne([]), n) {
2417
- return f.sexpr({ path: lt(e5), params: t, hash: r, loc: T(n || null) });
2418
- }, "sexpr"), concat: /* @__PURE__ */ __name(function(e5, t) {
2419
- if (!ue(e5)) throw new Error("b.concat requires at least one part");
2420
- return f.concat({ parts: e5, loc: T(t || null) });
2421
- }, "concat"), hash: ne, pair: /* @__PURE__ */ __name(function(e5, t, r) {
2422
- return f.pair({ key: e5, value: t, loc: T(r || null) });
2423
- }, "pair"), literal: Pe, program: /* @__PURE__ */ __name(function(e5, t, r) {
2424
- return t && t.length ? Ln(e5, t, false, r) : Dn(e5, [], r);
2425
- }, "program"), blockItself: Ln, template: Dn, loc: T, pos: /* @__PURE__ */ __name(function(e5, t) {
2426
- return f.pos({ line: e5, column: t });
2427
- }, "pos"), path: lt, fullPath: /* @__PURE__ */ __name(function(e5, t = [], r) {
2428
- return f.path({ head: e5, tail: t, loc: T(r || null) });
2429
- }, "fullPath"), head: /* @__PURE__ */ __name(function(e5, t) {
2430
- return f.head({ original: e5, loc: T(t || null) });
2431
- }, "head"), at: /* @__PURE__ */ __name(function(e5, t) {
2432
- return f.atName({ name: e5, loc: T(t || null) });
2433
- }, "at"), var: Pn, this: /* @__PURE__ */ __name(function(e5) {
2434
- return f.this({ loc: T(e5 || null) });
2435
- }, "this"), string: mr("StringLiteral"), boolean: mr("BooleanLiteral"), number: mr("NumberLiteral"), undefined: /* @__PURE__ */ __name(() => Pe("UndefinedLiteral", void 0), "undefined"), null: /* @__PURE__ */ __name(() => Pe("NullLiteral", null), "null") };
2436
- __name(mr, "mr");
2437
- Ae = { close: false, open: false };
2438
- f = new class {
2439
- pos({ line: e5, column: t }) {
2440
- return { line: e5, column: t };
2441
- }
2442
- blockItself({ body: e5, params: t, chained: r = false, loc: n }) {
2443
- return { type: "Block", body: e5, params: t, get blockParams() {
2444
- return this.params.map((s) => s.name);
2445
- }, set blockParams(s) {
2446
- this.params = s.map((i) => f.var({ name: i, loc: D.synthetic(i) }));
2447
- }, chained: r, loc: n };
2448
- }
2449
- template({ body: e5, blockParams: t, loc: r }) {
2450
- return { type: "Template", body: e5, blockParams: t, loc: r };
2451
- }
2452
- mustache({ path: e5, params: t, hash: r, trusting: n, loc: s, strip: i = Ae }) {
2453
- return function({ path: a, params: o, hash: c, trusting: h, strip: p, loc: m }) {
2454
- let v = { type: "MustacheStatement", path: a, params: o, hash: c, trusting: h, strip: p, loc: m };
2455
- return Object.defineProperty(v, "escaped", { enumerable: false, get() {
2456
- return !this.trusting;
2457
- }, set(g) {
2458
- this.trusting = !g;
2459
- } }), v;
2460
- }({ path: e5, params: t, hash: r, trusting: n, strip: i, loc: s });
2461
- }
2462
- block({ path: e5, params: t, hash: r, defaultBlock: n, elseBlock: s = null, loc: i, openStrip: a = Ae, inverseStrip: o = Ae, closeStrip: c = Ae }) {
2463
- return { type: "BlockStatement", path: e5, params: t, hash: r, program: n, inverse: s, loc: i, openStrip: a, inverseStrip: o, closeStrip: c };
2464
- }
2465
- comment({ value: e5, loc: t }) {
2466
- return { type: "CommentStatement", value: e5, loc: t };
2467
- }
2468
- mustacheComment({ value: e5, loc: t }) {
2469
- return { type: "MustacheCommentStatement", value: e5, loc: t };
2470
- }
2471
- concat({ parts: e5, loc: t }) {
2472
- return { type: "ConcatStatement", parts: e5, loc: t };
2473
- }
2474
- element({ path: e5, selfClosing: t, attributes: r, modifiers: n, params: s, comments: i, children: a, openTag: o, closeTag: c, loc: h }) {
2475
- let p = t;
2476
- return { type: "ElementNode", path: e5, attributes: r, modifiers: n, params: s, comments: i, children: a, openTag: o, closeTag: c, loc: h, get tag() {
2477
- return this.path.original;
2478
- }, set tag(m) {
2479
- this.path.original = m;
2480
- }, get blockParams() {
2481
- return this.params.map((m) => m.name);
2482
- }, set blockParams(m) {
2483
- this.params = m.map((v) => f.var({ name: v, loc: D.synthetic(v) }));
2484
- }, get selfClosing() {
2485
- return p;
2486
- }, set selfClosing(m) {
2487
- p = m, this.closeTag = m ? null : D.synthetic(`</${this.tag}>`);
2488
- } };
2489
- }
2490
- elementModifier({ path: e5, params: t, hash: r, loc: n }) {
2491
- return { type: "ElementModifierStatement", path: e5, params: t, hash: r, loc: n };
2492
- }
2493
- attr({ name: e5, value: t, loc: r }) {
2494
- return { type: "AttrNode", name: e5, value: t, loc: r };
2495
- }
2496
- text({ chars: e5, loc: t }) {
2497
- return { type: "TextNode", chars: e5, loc: t };
2498
- }
2499
- sexpr({ path: e5, params: t, hash: r, loc: n }) {
2500
- return { type: "SubExpression", path: e5, params: t, hash: r, loc: n };
2501
- }
2502
- path({ head: e5, tail: t, loc: r }) {
2503
- return function({ head: n, tail: s, loc: i }) {
2504
- let a = { type: "PathExpression", head: n, tail: s, get original() {
2505
- return [this.head.original, ...this.tail].join(".");
2506
- }, set original(o) {
2507
- let [c, ...h] = ie(o.split("."));
2508
- this.head = hi.head(c, this.head.loc), this.tail = h;
2509
- }, loc: i };
2510
- return Object.defineProperty(a, "parts", { enumerable: false, get() {
2511
- let o = ie(this.original.split("."));
2512
- return o[0] === "this" ? o.shift() : o[0].startsWith("@") && (o[0] = o[0].slice(1)), Object.freeze(o);
2513
- }, set(o) {
2514
- var h;
2515
- let c = [...o];
2516
- c[0] === "this" || (h = c[0]) != null && h.startsWith("@") || (this.head.type === "ThisHead" ? c.unshift("this") : this.head.type === "AtHead" && (c[0] = `@${c[0]}`)), this.original = c.join(".");
2517
- } }), Object.defineProperty(a, "this", { enumerable: false, get() {
2518
- return this.head.type === "ThisHead";
2519
- } }), Object.defineProperty(a, "data", { enumerable: false, get() {
2520
- return this.head.type === "AtHead";
2521
- } }), a;
2522
- }({ head: e5, tail: t, loc: r });
2523
- }
2524
- head({ original: e5, loc: t }) {
2525
- return e5 === "this" ? this.this({ loc: t }) : e5[0] === "@" ? this.atName({ name: e5, loc: t }) : this.var({ name: e5, loc: t });
2526
- }
2527
- this({ loc: e5 }) {
2528
- return { type: "ThisHead", get original() {
2529
- return "this";
2530
- }, loc: e5 };
2531
- }
2532
- atName({ name: e5, loc: t }) {
2533
- let r = "", n = { type: "AtHead", get name() {
2534
- return r;
2535
- }, set name(s) {
2536
- s[0], s.indexOf("."), r = s;
2537
- }, get original() {
2538
- return this.name;
2539
- }, set original(s) {
2540
- this.name = s;
2541
- }, loc: t };
2542
- return n.name = e5, n;
2543
- }
2544
- var({ name: e5, loc: t }) {
2545
- let r = "", n = { type: "VarHead", get name() {
2546
- return r;
2547
- }, set name(s) {
2548
- s[0], s.indexOf("."), r = s;
2549
- }, get original() {
2550
- return this.name;
2551
- }, set original(s) {
2552
- this.name = s;
2553
- }, loc: t };
2554
- return n.name = e5, n;
2555
- }
2556
- hash({ pairs: e5, loc: t }) {
2557
- return { type: "Hash", pairs: e5, loc: t };
2558
- }
2559
- pair({ key: e5, value: t, loc: r }) {
2560
- return { type: "HashPair", key: e5, value: t, loc: r };
2561
- }
2562
- literal({ type: e5, value: t, loc: r }) {
2563
- return function({ type: n, value: s, loc: i }) {
2564
- let a = { type: n, value: s, loc: i };
2565
- return Object.defineProperty(a, "original", { enumerable: false, get() {
2566
- return this.value;
2567
- }, set(o) {
2568
- this.value = o;
2569
- } }), a;
2570
- }({ type: e5, value: t, loc: r });
2571
- }
2572
- }();
2573
- Er = class {
2574
- static {
2575
- __name(this, "Er");
2576
- }
2577
- elementStack = [];
2578
- lines;
2579
- source;
2580
- currentAttribute = null;
2581
- currentNode = null;
2582
- tokenizer;
2583
- constructor(t, r = new ur(Tn), n = "precompile") {
2584
- this.source = t, this.lines = t.source.split(/\r\n?|\n/u), this.tokenizer = new hr(this, r, n);
2585
- }
2586
- offset() {
2587
- let { line: t, column: r } = this.tokenizer;
2588
- return this.source.offsetFor(t, r);
2589
- }
2590
- pos({ line: t, column: r }) {
2591
- return this.source.offsetFor(t, r);
2592
- }
2593
- finish(t) {
2594
- return rr({}, t, { loc: t.start.until(this.offset()) });
2595
- }
2596
- get currentAttr() {
2597
- return this.currentAttribute;
2598
- }
2599
- get currentTag() {
2600
- let t = this.currentNode;
2601
- return t && (t.type === "StartTag" || t.type), t;
2602
- }
2603
- get currentStartTag() {
2604
- let t = this.currentNode;
2605
- return t && t.type, t;
2606
- }
2607
- get currentEndTag() {
2608
- let t = this.currentNode;
2609
- return t && t.type, t;
2610
- }
2611
- get currentComment() {
2612
- let t = this.currentNode;
2613
- return t && t.type, t;
2614
- }
2615
- get currentData() {
2616
- let t = this.currentNode;
2617
- return t && t.type, t;
2618
- }
2619
- acceptNode(t) {
2620
- return this[t.type](t);
2621
- }
2622
- currentElement() {
2623
- return Nr(ie(this.elementStack));
2624
- }
2625
- sourceForNode(t, r) {
2626
- let n, s, i, a = t.loc.start.line - 1, o = a - 1, c = t.loc.start.column, h = [];
2627
- for (r ? (s = r.loc.end.line - 1, i = r.loc.end.column) : (s = t.loc.end.line - 1, i = t.loc.end.column); o < s; ) o++, n = this.lines[o], o === a ? a === s ? h.push(n.slice(c, i)) : h.push(n.slice(c)) : o === s ? h.push(n.slice(0, i)) : h.push(n);
2628
- return h.join(`
2629
- `);
2630
- }
2631
- };
2632
- wr = class extends Er {
2633
- static {
2634
- __name(this, "wr");
2635
- }
2636
- pendingError = null;
2637
- parse(t, r) {
2638
- var i;
2639
- let n = f.template({ body: [], blockParams: r, loc: this.source.spanFor(t.loc) }), s = this.parseProgram(n, t);
2640
- return (i = this.pendingError) == null || i.eof(s.loc.getEnd()), s;
2641
- }
2642
- Program(t, r) {
2643
- let n = f.blockItself({ body: [], params: r, chained: t.chained, loc: this.source.spanFor(t.loc) });
2644
- return this.parseProgram(n, t);
2645
- }
2646
- parseProgram(t, r) {
2647
- if (r.body.length === 0) return t;
2648
- let n;
2649
- try {
2650
- this.elementStack.push(t);
2651
- for (let s of r.body) this.acceptNode(s);
2652
- } finally {
2653
- n = this.elementStack.pop();
2654
- }
2655
- if (t !== n) {
2656
- if ((n == null ? void 0 : n.type) === "ElementNode") throw S(`Unclosed element \`${n.tag}\``, n.loc);
2657
- t.type;
2658
- }
2659
- return t;
2660
- }
2661
- BlockStatement(t) {
2662
- var p;
2663
- if (this.tokenizer.state === "comment") return void this.appendToCommentData(this.sourceForNode(t));
2664
- if (this.tokenizer.state !== "data" && this.tokenizer.state !== "beforeData") throw S("A block may only be used inside an HTML element or another block.", this.source.spanFor(t.loc));
2665
- let { path: r, params: n, hash: s } = dr(this, t), i = this.source.spanFor(t.loc), a = [];
2666
- if ((p = t.program.blockParams) != null && p.length) {
2667
- let m = s.loc.collapse("end");
2668
- m = t.program.loc ? m.withEnd(this.source.spanFor(t.program.loc).getStart()) : t.program.body[0] ? m.withEnd(this.source.spanFor(t.program.body[0].loc).getStart()) : m.withEnd(i.getEnd());
2669
- let v = m.asString(), g = v.indexOf("|") + 1, E = v.indexOf("|", g);
2670
- for (let N of t.program.blockParams) {
2671
- let x, w;
2672
- x = g >= E ? -1 : v.indexOf(N, g), x === -1 || x + N.length > E ? (g = E, w = this.source.spanFor(se)) : (g = x, w = m.sliceStartChars({ skipStart: g, chars: N.length }), g += N.length), a.push(f.var({ name: N, loc: w }));
2673
- }
2674
- }
2675
- t.program.loc || (t.program.loc = se), t.inverse && !t.inverse.loc && (t.inverse.loc = se);
2676
- let o = this.Program(t.program, a), c = t.inverse ? this.Program(t.inverse, []) : null, h = f.block({ path: r, params: n, hash: s, defaultBlock: o, elseBlock: c, loc: this.source.spanFor(t.loc), openStrip: t.openStrip, inverseStrip: t.inverseStrip, closeStrip: t.closeStrip });
2677
- Vt(this.currentElement(), h);
2678
- }
2679
- MustacheStatement(t) {
2680
- var o;
2681
- (o = this.pendingError) == null || o.mustache(this.source.spanFor(t.loc));
2682
- let { tokenizer: r } = this;
2683
- if (r.state === "comment") return void this.appendToCommentData(this.sourceForNode(t));
2684
- let n, { escaped: s, loc: i, strip: a } = t;
2685
- if ("original" in t.path && t.path.original === "...attributes") throw S("Illegal use of ...attributes", this.source.spanFor(t.loc));
2686
- if (qn(t.path)) n = f.mustache({ path: this.acceptNode(t.path), params: [], hash: f.hash({ pairs: [], loc: this.source.spanFor(t.path.loc).collapse("end") }), trusting: !s, loc: this.source.spanFor(i), strip: a });
2687
- else {
2688
- let { path: c, params: h, hash: p } = dr(this, t);
2689
- n = f.mustache({ path: c, params: h, hash: p, trusting: !s, loc: this.source.spanFor(i), strip: a });
2690
- }
2691
- switch (r.state) {
2692
- case "tagOpen":
2693
- case "tagName":
2694
- throw S("Cannot use mustaches in an elements tagname", n.loc);
2695
- case "beforeAttributeName":
2696
- gr(this.currentStartTag, n);
2697
- break;
2698
- case "attributeName":
2699
- case "afterAttributeName":
2700
- this.beginAttributeValue(false), this.finishAttributeValue(), gr(this.currentStartTag, n), r.transitionTo("beforeAttributeName");
2701
- break;
2702
- case "afterAttributeValueQuoted":
2703
- gr(this.currentStartTag, n), r.transitionTo("beforeAttributeName");
2704
- break;
2705
- case "beforeAttributeValue":
2706
- this.beginAttributeValue(false), this.appendDynamicAttributeValuePart(n), r.transitionTo("attributeValueUnquoted");
2707
- break;
2708
- case "attributeValueDoubleQuoted":
2709
- case "attributeValueSingleQuoted":
2710
- case "attributeValueUnquoted":
2711
- this.appendDynamicAttributeValuePart(n);
2712
- break;
2713
- default:
2714
- Vt(this.currentElement(), n);
2715
- }
2716
- return n;
2717
- }
2718
- appendDynamicAttributeValuePart(t) {
2719
- this.finalizeTextPart();
2720
- let r = this.currentAttr;
2721
- r.isDynamic = true, r.parts.push(t);
2722
- }
2723
- finalizeTextPart() {
2724
- let t = this.currentAttr.currentPart;
2725
- t !== null && (this.currentAttr.parts.push(t), this.startTextPart());
2726
- }
2727
- startTextPart() {
2728
- this.currentAttr.currentPart = null;
2729
- }
2730
- ContentStatement(t) {
2731
- (function(r, n) {
2732
- let s = n.loc.start.line, i = n.loc.start.column, a = function(o, c) {
2733
- if (c === "") return { lines: o.split(`
2734
- `).length - 1, columns: 0 };
2735
- let [h] = o.split(c), p = h.split(/\n/u), m = p.length - 1;
2736
- return { lines: m, columns: p[m].length };
2737
- }(n.original, n.value);
2738
- s += a.lines, a.lines ? i = a.columns : i += a.columns, r.line = s, r.column = i;
2739
- })(this.tokenizer, t), this.tokenizer.tokenizePart(t.value), this.tokenizer.flushData();
2740
- }
2741
- CommentStatement(t) {
2742
- let { tokenizer: r } = this;
2743
- if (r.state === "comment") return this.appendToCommentData(this.sourceForNode(t)), null;
2744
- let { value: n, loc: s } = t, i = f.mustacheComment({ value: n, loc: this.source.spanFor(s) });
2745
- switch (r.state) {
2746
- case "beforeAttributeName":
2747
- case "afterAttributeName":
2748
- this.currentStartTag.comments.push(i);
2749
- break;
2750
- case "beforeData":
2751
- case "data":
2752
- Vt(this.currentElement(), i);
2753
- break;
2754
- default:
2755
- throw S(`Using a Handlebars comment when in the \`${r.state}\` state is not supported`, this.source.spanFor(t.loc));
2756
- }
2757
- return i;
2758
- }
2759
- PartialStatement(t) {
2760
- throw S("Handlebars partials are not supported", this.source.spanFor(t.loc));
2761
- }
2762
- PartialBlockStatement(t) {
2763
- throw S("Handlebars partial blocks are not supported", this.source.spanFor(t.loc));
2764
- }
2765
- Decorator(t) {
2766
- throw S("Handlebars decorators are not supported", this.source.spanFor(t.loc));
2767
- }
2768
- DecoratorBlock(t) {
2769
- throw S("Handlebars decorator blocks are not supported", this.source.spanFor(t.loc));
2770
- }
2771
- SubExpression(t) {
2772
- let { path: r, params: n, hash: s } = dr(this, t);
2773
- return f.sexpr({ path: r, params: n, hash: s, loc: this.source.spanFor(t.loc) });
2774
- }
2775
- PathExpression(t) {
2776
- let { original: r } = t, n;
2777
- if (r.indexOf("/") !== -1) {
2778
- if (r.slice(0, 2) === "./") throw S('Using "./" is not supported in Glimmer and unnecessary', this.source.spanFor(t.loc));
2779
- if (r.slice(0, 3) === "../") throw S('Changing context using "../" is not supported in Glimmer', this.source.spanFor(t.loc));
2780
- if (r.indexOf(".") !== -1) throw S("Mixing '.' and '/' in paths is not supported in Glimmer; use only '.' to separate property paths", this.source.spanFor(t.loc));
2781
- n = [t.parts.join("/")];
2782
- } else {
2783
- if (r === ".") throw S("'.' is not a supported path in Glimmer; check for a path with a trailing '.'", this.source.spanFor(t.loc));
2784
- n = t.parts;
2785
- }
2786
- let s, i = false;
2787
- if (/^this(?:\..+)?$/u.test(r) && (i = true), i) s = f.this({ loc: this.source.spanFor({ start: t.loc.start, end: { line: t.loc.start.line, column: t.loc.start.column + 4 } }) });
2788
- else if (t.data) {
2789
- let a = n.shift();
2790
- if (a === void 0) throw S("Attempted to parse a path expression, but it was not valid. Paths beginning with @ must start with a-z.", this.source.spanFor(t.loc));
2791
- s = f.atName({ name: `@${a}`, loc: this.source.spanFor({ start: t.loc.start, end: { line: t.loc.start.line, column: t.loc.start.column + a.length + 1 } }) });
2792
- } else {
2793
- let a = n.shift();
2794
- if (a === void 0) throw S("Attempted to parse a path expression, but it was not valid. Paths must start with a-z or A-Z.", this.source.spanFor(t.loc));
2795
- s = f.var({ name: a, loc: this.source.spanFor({ start: t.loc.start, end: { line: t.loc.start.line, column: t.loc.start.column + a.length } }) });
2796
- }
2797
- return f.path({ head: s, tail: n, loc: this.source.spanFor(t.loc) });
2798
- }
2799
- Hash(t) {
2800
- let r = t.pairs.map((n) => f.pair({ key: n.key, value: this.acceptNode(n.value), loc: this.source.spanFor(n.loc) }));
2801
- return f.hash({ pairs: r, loc: this.source.spanFor(t.loc) });
2802
- }
2803
- StringLiteral(t) {
2804
- return f.literal({ type: "StringLiteral", value: t.value, loc: this.source.spanFor(t.loc) });
2805
- }
2806
- BooleanLiteral(t) {
2807
- return f.literal({ type: "BooleanLiteral", value: t.value, loc: this.source.spanFor(t.loc) });
2808
- }
2809
- NumberLiteral(t) {
2810
- return f.literal({ type: "NumberLiteral", value: t.value, loc: this.source.spanFor(t.loc) });
2811
- }
2812
- UndefinedLiteral(t) {
2813
- return f.literal({ type: "UndefinedLiteral", value: void 0, loc: this.source.spanFor(t.loc) });
2814
- }
2815
- NullLiteral(t) {
2816
- return f.literal({ type: "NullLiteral", value: null, loc: this.source.spanFor(t.loc) });
2817
- }
2818
- };
2819
- __name(dr, "dr");
2820
- __name(gr, "gr");
2821
- __name(qt, "qt");
2822
- Tr = class extends wr {
2823
- static {
2824
- __name(this, "Tr");
2825
- }
2826
- tagOpenLine = 0;
2827
- tagOpenColumn = 0;
2828
- reset() {
2829
- this.currentNode = null;
2830
- }
2831
- beginComment() {
2832
- this.currentNode = { type: "CommentStatement", value: "", start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) };
2833
- }
2834
- appendToCommentData(t) {
2835
- this.currentComment.value += t;
2836
- }
2837
- finishComment() {
2838
- Vt(this.currentElement(), f.comment(this.finish(this.currentComment)));
2839
- }
2840
- beginData() {
2841
- this.currentNode = { type: "TextNode", chars: "", start: this.offset() };
2842
- }
2843
- appendToData(t) {
2844
- this.currentData.chars += t;
2845
- }
2846
- finishData() {
2847
- Vt(this.currentElement(), f.text(this.finish(this.currentData)));
2848
- }
2849
- tagOpen() {
2850
- this.tagOpenLine = this.tokenizer.line, this.tagOpenColumn = this.tokenizer.column;
2851
- }
2852
- beginStartTag() {
2853
- this.currentNode = { type: "StartTag", name: "", nameStart: null, nameEnd: null, attributes: [], modifiers: [], comments: [], params: [], selfClosing: false, start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) };
2854
- }
2855
- beginEndTag() {
2856
- this.currentNode = { type: "EndTag", name: "", start: this.source.offsetFor(this.tagOpenLine, this.tagOpenColumn) };
2857
- }
2858
- finishTag() {
2859
- let t = this.finish(this.currentTag);
2860
- if (t.type === "StartTag") {
2861
- if (this.finishStartTag(), t.name === ":") throw S("Invalid named block named detected, you may have created a named block without a name, or you may have began your name with a number. Named blocks must have names that are at least one character long, and begin with a lower case letter", this.source.spanFor({ start: this.currentTag.start.toJSON(), end: this.offset().toJSON() }));
2862
- (br.has(t.name) || t.selfClosing) && this.finishEndTag(true);
2863
- } else t.type === "EndTag" && this.finishEndTag(false);
2864
- }
2865
- finishStartTag() {
2866
- let { name: t, nameStart: r, nameEnd: n } = this.currentStartTag, s = r.until(n), [i, ...a] = ie(t.split(".")), o = f.path({ head: f.head({ original: i, loc: s.sliceStartChars({ chars: i.length }) }), tail: a, loc: s }), { attributes: c, modifiers: h, comments: p, params: m, selfClosing: v, loc: g } = this.finish(this.currentStartTag), E = f.element({ path: o, selfClosing: v, attributes: c, modifiers: h, comments: p, params: m, children: [], openTag: g, closeTag: v ? null : D.broken(), loc: g });
2867
- this.elementStack.push(E);
2868
- }
2869
- finishEndTag(t) {
2870
- let { start: r } = this.currentTag, n = this.finish(this.currentTag), s = this.elementStack.pop();
2871
- this.validateEndTag(n, s, t);
2872
- let i = this.currentElement();
2873
- t ? s.closeTag = null : s.selfClosing ? s.closeTag : s.closeTag = r.until(this.offset()), s.loc = s.loc.withEnd(this.offset()), Vt(i, f.element(s));
2874
- }
2875
- markTagAsSelfClosing() {
2876
- let t = this.currentTag;
2877
- if (t.type !== "StartTag") throw S("Invalid end tag: closing tag must not be self-closing", this.source.spanFor({ start: t.start.toJSON(), end: this.offset().toJSON() }));
2878
- t.selfClosing = true;
2879
- }
2880
- appendToTagName(t) {
2881
- let r = this.currentTag;
2882
- if (r.name += t, r.type === "StartTag") {
2883
- let n = this.offset();
2884
- r.nameStart === null && (r.nameEnd, r.nameStart = n.move(-1)), r.nameEnd = n;
2885
- }
2886
- }
2887
- beginAttribute() {
2888
- let t = this.offset();
2889
- this.currentAttribute = { name: "", parts: [], currentPart: null, isQuoted: false, isDynamic: false, start: t, valueSpan: t.collapsed() };
2890
- }
2891
- appendToAttributeName(t) {
2892
- this.currentAttr.name += t, this.currentAttr.name === "as" && this.parsePossibleBlockParams();
2893
- }
2894
- beginAttributeValue(t) {
2895
- this.currentAttr.isQuoted = t, this.startTextPart(), this.currentAttr.valueSpan = this.offset().collapsed();
2896
- }
2897
- appendToAttributeValue(t) {
2898
- let r = this.currentAttr.parts, n = r[r.length - 1], s = this.currentAttr.currentPart;
2899
- if (s) s.chars += t, s.loc = s.loc.withEnd(this.offset());
2900
- else {
2901
- let i = this.offset();
2902
- i = t === `
2903
- ` ? n ? n.loc.getEnd() : this.currentAttr.valueSpan.getStart() : i.move(-1), this.currentAttr.currentPart = f.text({ chars: t, loc: i.collapsed() });
2904
- }
2905
- }
2906
- finishAttributeValue() {
2907
- this.finalizeTextPart();
2908
- let t = this.currentTag, r = this.offset();
2909
- if (t.type === "EndTag") throw S("Invalid end tag: closing tag must not have attributes", this.source.spanFor({ start: t.start.toJSON(), end: r.toJSON() }));
2910
- let { name: n, parts: s, start: i, isQuoted: a, isDynamic: o, valueSpan: c } = this.currentAttr;
2911
- if (n.startsWith("|") && s.length === 0 && !a && !o) throw S("Invalid block parameters syntax: block parameters must be preceded by the `as` keyword", i.until(i.move(n.length)));
2912
- let h = this.assembleAttributeValue(s, a, o, i.until(r));
2913
- h.loc = c.withEnd(r);
2914
- let p = f.attr({ name: n, value: h, loc: i.until(r) });
2915
- this.currentStartTag.attributes.push(p);
2916
- }
2917
- parsePossibleBlockParams() {
2918
- let t = /[!"#%&'()*+./;<=>@[\\\]^`{|}~]/u;
2919
- this.tokenizer.state;
2920
- let r = this.currentStartTag, n = this.currentAttr, s = { state: "PossibleAs" }, i = { PossibleAs: /* @__PURE__ */ __name((o) => {
2921
- if (s.state, qt(o)) s = { state: "BeforeStartPipe" }, this.tokenizer.transitionTo("afterAttributeName"), this.tokenizer.consume();
2922
- else {
2923
- if (o === "|") throw S('Invalid block parameters syntax: expecting at least one space character between "as" and "|"', n.start.until(this.offset().move(1)));
2924
- s = { state: "Done" };
2925
- }
2926
- }, "PossibleAs"), BeforeStartPipe: /* @__PURE__ */ __name((o) => {
2927
- s.state, qt(o) ? this.tokenizer.consume() : o === "|" ? (s = { state: "BeforeBlockParamName" }, this.tokenizer.transitionTo("beforeAttributeName"), this.tokenizer.consume()) : s = { state: "Done" };
2928
- }, "BeforeStartPipe"), BeforeBlockParamName: /* @__PURE__ */ __name((o) => {
2929
- if (s.state, qt(o)) this.tokenizer.consume();
2930
- else if (o === "") s = { state: "Done" }, this.pendingError = { mustache(c) {
2931
- throw S("Invalid block parameters syntax: mustaches cannot be used inside parameters list", c);
2932
- }, eof(c) {
2933
- throw S('Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list', n.start.until(c));
2934
- } };
2935
- else if (o === "|") {
2936
- if (r.params.length === 0) throw S("Invalid block parameters syntax: empty parameters list, expecting at least one identifier", n.start.until(this.offset().move(1)));
2937
- s = { state: "AfterEndPipe" }, this.tokenizer.consume();
2938
- } else {
2939
- if (o === ">" || o === "/") throw S('Invalid block parameters syntax: incomplete parameters list, expecting "|" but the tag was closed prematurely', n.start.until(this.offset().move(1)));
2940
- s = { state: "BlockParamName", name: o, start: this.offset() }, this.tokenizer.consume();
2941
- }
2942
- }, "BeforeBlockParamName"), BlockParamName: /* @__PURE__ */ __name((o) => {
2943
- if (s.state, o === "") s = { state: "Done" }, this.pendingError = { mustache(c) {
2944
- throw S("Invalid block parameters syntax: mustaches cannot be used inside parameters list", c);
2945
- }, eof(c) {
2946
- throw S('Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list', n.start.until(c));
2947
- } };
2948
- else if (o === "|" || qt(o)) {
2949
- let c = s.start.until(this.offset());
2950
- if (s.name === "this" || t.test(s.name)) throw S(`Invalid block parameters syntax: invalid identifier name \`${s.name}\``, c);
2951
- r.params.push(f.var({ name: s.name, loc: c })), s = o === "|" ? { state: "AfterEndPipe" } : { state: "BeforeBlockParamName" }, this.tokenizer.consume();
2952
- } else {
2953
- if (o === ">" || o === "/") throw S('Invalid block parameters syntax: expecting "|" but the tag was closed prematurely', n.start.until(this.offset().move(1)));
2954
- s.name += o, this.tokenizer.consume();
2955
- }
2956
- }, "BlockParamName"), AfterEndPipe: /* @__PURE__ */ __name((o) => {
2957
- s.state, qt(o) ? this.tokenizer.consume() : o === "" ? (s = { state: "Done" }, this.pendingError = { mustache(c) {
2958
- throw S("Invalid block parameters syntax: modifiers cannot follow parameters list", c);
2959
- }, eof(c) {
2960
- throw S('Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list', n.start.until(c));
2961
- } }) : o === ">" || o === "/" ? s = { state: "Done" } : (s = { state: "Error", message: 'Invalid block parameters syntax: expecting the tag to be closed with ">" or "/>" after parameters list', start: this.offset() }, this.tokenizer.consume());
2962
- }, "AfterEndPipe"), Error: /* @__PURE__ */ __name((o) => {
2963
- if (s.state, o === "" || o === "/" || o === ">" || qt(o)) throw S(s.message, s.start.until(this.offset()));
2964
- this.tokenizer.consume();
2965
- }, "Error"), Done: /* @__PURE__ */ __name(() => {
2966
- }, "Done") }, a;
2967
- do
2968
- a = this.tokenizer.peek(), i[s.state](a);
2969
- while (s.state !== "Done" && a !== "");
2970
- s.state;
2971
- }
2972
- reportSyntaxError(t) {
2973
- throw S(t, this.offset().collapsed());
2974
- }
2975
- assembleConcatenatedValue(t) {
2976
- for (let s of t) if (s.type !== "MustacheStatement" && s.type !== "TextNode") throw S(`Unsupported node in quoted attribute value: ${s.type}`, s.loc);
2977
- let r = ni(t), n = Nr(t);
2978
- return f.concat({ parts: t, loc: this.source.spanFor(r.loc).extend(this.source.spanFor(n.loc)) });
2979
- }
2980
- validateEndTag(t, r, n) {
2981
- if (br.has(t.name) && !n) throw S(`<${t.name}> elements do not need end tags. You should remove it`, t.loc);
2982
- if (r.tag === void 0) throw S(`Closing tag </${t.name}> without an open tag`, t.loc);
2983
- if (r.tag !== t.name) throw S(`Closing tag </${t.name}> did not match last open tag <${r.tag}> (on line ${r.loc.startPosition.line})`, t.loc);
2984
- }
2985
- assembleAttributeValue(t, r, n, s) {
2986
- if (n) {
2987
- if (r) return this.assembleConcatenatedValue(t);
2988
- {
2989
- let [i, a] = t;
2990
- if (a === void 0 || a.type === "TextNode" && a.chars === "/") return i;
2991
- throw S("An unquoted attribute value must be a string or a mustache, preceded by whitespace or a '=' character, and followed by whitespace, a '>' character, or '/>'", s);
2992
- }
2993
- }
2994
- return ue(t) ? t[0] : f.text({ chars: "", loc: s });
2995
- }
2996
- };
2997
- pi = {};
2998
- Cr = class extends ur {
2999
- static {
3000
- __name(this, "Cr");
3001
- }
3002
- constructor() {
3003
- super({});
3004
- }
3005
- parse() {
3006
- }
3007
- };
3008
- __name(Hn, "Hn");
3009
- fi = { resolution: /* @__PURE__ */ __name(() => xe.GetStrictKeyword, "resolution"), serialize: /* @__PURE__ */ __name(() => "Strict", "serialize"), isAngleBracket: false };
3010
- oo = { ...fi, isAngleBracket: true };
3011
- _e = `
3012
- `;
3013
- Fn = "\r";
3014
- Un = function() {
3015
- function e5(t) {
3016
- this.length = t.length;
3017
- for (var r = [0], n = 0; n < t.length; ) switch (t[n]) {
3018
- case _e:
3019
- n += _e.length, r.push(n);
3020
- break;
3021
- case Fn:
3022
- n += Fn.length, t[n] === _e && (n += _e.length), r.push(n);
3023
- break;
3024
- default:
3025
- n++;
3026
- break;
3027
- }
3028
- this.offsets = r;
3029
- }
3030
- __name(e5, "e");
3031
- return e5.prototype.locationForIndex = function(t) {
3032
- if (t < 0 || t > this.length) return null;
3033
- for (var r = 0, n = this.offsets; n[r + 1] <= t; ) r++;
3034
- var s = t - n[r];
3035
- return { line: r, column: s };
3036
- }, e5.prototype.indexForLocation = function(t) {
3037
- var r = t.line, n = t.column;
3038
- return r < 0 || r >= this.offsets.length || n < 0 || n > this.lengthOfLine(r) ? null : this.offsets[r] + n;
3039
- }, e5.prototype.lengthOfLine = function(t) {
3040
- var r = this.offsets[t], n = t === this.offsets.length - 1 ? this.length : this.offsets[t + 1];
3041
- return n - r;
3042
- }, e5;
3043
- }();
3044
- __name(mi, "mi");
3045
- Mn = mi;
3046
- __name(di, "di");
3047
- __name(gi, "gi");
3048
- __name(bi, "bi");
3049
- __name(yi, "yi");
3050
- __name(ki, "ki");
3051
- Si = { parse: bi, astFormat: "glimmer", locStart: yt, locEnd: te };
3052
- vi = { glimmer: fn };
3053
- wo = Pr;
3054
- }
3055
- });
3056
- init_glimmer();
3057
- export {
3058
- wo as default,
3059
- mn as languages,
3060
- Ar as parsers,
3061
- vi as printers
3062
- };