@shopify/cli 3.88.0 → 3.89.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (96) hide show
  1. package/dist/acorn-45LE5Z2A.js +3016 -0
  2. package/dist/angular-Z5FPQPLR.js +2791 -0
  3. package/dist/babel-TRRZ6QQY.js +7173 -0
  4. package/dist/{chunk-J7U35MPX.js → chunk-2CNWYFWQ.js} +5 -5
  5. package/dist/{chunk-HM34WS7W.js → chunk-2OJBOBH2.js} +3 -3
  6. package/dist/{chunk-4ISFA2N3.js → chunk-2QVJ6J2X.js} +7 -6
  7. package/dist/{chunk-K5F7HNJN.js → chunk-36WMFQ3S.js} +3 -3
  8. package/dist/{chunk-VH47P2IR.js → chunk-5PAHFSKT.js} +3 -3
  9. package/dist/{chunk-6GKJAGTG.js → chunk-6KFJWCTP.js} +2 -2
  10. package/dist/{chunk-GZ3PD27A.js → chunk-6YASM3HI.js} +5 -5
  11. package/dist/{chunk-UBFTWR2L.js → chunk-B5Q2Q4B3.js} +3 -3
  12. package/dist/{chunk-QRIP3SU2.js → chunk-CUCT627W.js} +8 -8
  13. package/dist/{chunk-7U3KXZYU.js → chunk-EAEHP4CZ.js} +4 -4
  14. package/dist/{chunk-JO4W7S44.js → chunk-EQO4QA4E.js} +37 -16
  15. package/dist/{chunk-DGWEIWJA.js → chunk-EYUOBXKH.js} +3 -3
  16. package/dist/{chunk-GZARFYAY.js → chunk-GFYDB5LD.js} +2 -2
  17. package/dist/{chunk-5BHU3PRC.js → chunk-GSUL4KBP.js} +2086 -2216
  18. package/dist/{chunk-YBRRA3G2.js → chunk-GT7PA6E6.js} +2 -2
  19. package/dist/{chunk-LBA6IB72.js → chunk-JYBBGVIM.js} +3 -3
  20. package/dist/{chunk-6XQFNXU3.js → chunk-LJHVLE3R.js} +2 -2
  21. package/dist/{chunk-TQWSBJX3.js → chunk-NJR5IH3H.js} +4 -4
  22. package/dist/{chunk-IVWPL6RQ.js → chunk-P3SM4EEQ.js} +3 -3
  23. package/dist/{chunk-SATLZT2F.js → chunk-PYPPUTUV.js} +2 -2
  24. package/dist/{chunk-4NQZXGUR.js → chunk-R7OKLQB6.js} +4 -4
  25. package/dist/{chunk-TF4AQQB4.js → chunk-TLGBKEEX.js} +6 -6
  26. package/dist/{chunk-ZKOCRU7F.js → chunk-TPPRDIBF.js} +4 -4
  27. package/dist/{chunk-6O34ZV3A.js → chunk-TRR5QJRW.js} +4 -4
  28. package/dist/{chunk-OUR7YOZK.js → chunk-TWYT4DFD.js} +2 -2
  29. package/dist/{chunk-HQJPNVYR.js → chunk-V2ZY6OP3.js} +6 -6
  30. package/dist/{chunk-VLBE545G.js → chunk-WC5EDB4Z.js} +4 -4
  31. package/dist/{chunk-TZSBI4FY.js → chunk-WF5BWNFE.js} +6 -6
  32. package/dist/{chunk-TPVWZRBE.js → chunk-WSX6K4TT.js} +3 -3
  33. package/dist/{chunk-SMXARNZJ.js → chunk-XLMH6DBR.js} +3 -3
  34. package/dist/{chunk-KVDUU7LU.js → chunk-Y2BHJWKT.js} +2 -2
  35. package/dist/{chunk-CCYDP5TC.js → chunk-Y3HY6QD7.js} +5 -5
  36. package/dist/{chunk-5OVH24W5.js → chunk-YETFHMCK.js} +7 -7
  37. package/dist/{chunk-KF76XPVO.js → chunk-ZM543XCR.js} +3 -3
  38. package/dist/cli/commands/auth/login.js +10 -10
  39. package/dist/cli/commands/auth/login.test.js +11 -11
  40. package/dist/cli/commands/auth/logout.js +10 -10
  41. package/dist/cli/commands/auth/logout.test.js +11 -11
  42. package/dist/cli/commands/cache/clear.js +10 -10
  43. package/dist/cli/commands/debug/command-flags.js +10 -10
  44. package/dist/cli/commands/docs/generate.js +10 -10
  45. package/dist/cli/commands/docs/generate.test.js +10 -10
  46. package/dist/cli/commands/help.js +10 -10
  47. package/dist/cli/commands/kitchen-sink/async.js +11 -11
  48. package/dist/cli/commands/kitchen-sink/async.test.js +11 -11
  49. package/dist/cli/commands/kitchen-sink/index.js +13 -13
  50. package/dist/cli/commands/kitchen-sink/index.test.js +13 -13
  51. package/dist/cli/commands/kitchen-sink/prompts.js +11 -11
  52. package/dist/cli/commands/kitchen-sink/prompts.test.js +11 -11
  53. package/dist/cli/commands/kitchen-sink/static.js +11 -11
  54. package/dist/cli/commands/kitchen-sink/static.test.js +11 -11
  55. package/dist/cli/commands/notifications/generate.js +11 -11
  56. package/dist/cli/commands/notifications/list.js +11 -11
  57. package/dist/cli/commands/search.js +11 -11
  58. package/dist/cli/commands/upgrade.js +11 -11
  59. package/dist/cli/commands/version.js +11 -11
  60. package/dist/cli/commands/version.test.js +11 -11
  61. package/dist/cli/services/commands/notifications.js +8 -8
  62. package/dist/cli/services/commands/search.js +4 -4
  63. package/dist/cli/services/commands/search.test.js +4 -4
  64. package/dist/cli/services/commands/version.js +5 -5
  65. package/dist/cli/services/commands/version.test.js +6 -6
  66. package/dist/cli/services/kitchen-sink/async.js +4 -4
  67. package/dist/cli/services/kitchen-sink/prompts.js +4 -4
  68. package/dist/cli/services/kitchen-sink/static.js +4 -4
  69. package/dist/cli/services/upgrade.js +5 -5
  70. package/dist/cli/services/upgrade.test.js +6 -6
  71. package/dist/{custom-oclif-loader-EAWHI4I3.js → custom-oclif-loader-TLTSWHLS.js} +4 -4
  72. package/dist/{devtools-EVCDECOU.js → devtools-2SG3BFWJ.js} +4 -4
  73. package/dist/{devtools-LDCSRUXB.js → devtools-D47L6HIC.js} +7 -7
  74. package/dist/{error-handler-WZR7CPYT.js → error-handler-JWFNITM6.js} +8 -8
  75. package/dist/estree-PY6WKTNG.js +4490 -0
  76. package/dist/flow-YN54TSCB.js +27513 -0
  77. package/dist/glimmer-RMPUUUDS.js +2781 -0
  78. package/dist/graphql-PPLVYWBL.js +1225 -0
  79. package/dist/hooks/postrun.js +7 -7
  80. package/dist/hooks/prerun.js +8 -8
  81. package/dist/html-3U6QZZZ4.js +2768 -0
  82. package/dist/index.js +9196 -4200
  83. package/dist/{lib-G7Q5M6VX.js → lib-XGN4IWQ3.js} +3 -3
  84. package/dist/{local-P2SS6AIS.js → local-4NMXX5NP.js} +4 -4
  85. package/dist/markdown-RHRQTUMC.js +3269 -0
  86. package/dist/meriyah-7MIMHTWQ.js +2645 -0
  87. package/dist/{node-package-manager-FZWNOAYQ.js → node-package-manager-SHRILTY3.js} +5 -5
  88. package/dist/postcss-MSOPGY7M.js +4796 -0
  89. package/dist/prettier-2ITB6I34.js +13861 -0
  90. package/dist/tsconfig.tsbuildinfo +1 -1
  91. package/dist/typescript-ZSZVUJZX.js +13034 -0
  92. package/dist/{ui-5RSPUMJS.js → ui-MKDRI4FX.js} +4 -4
  93. package/dist/{workerd-K73DK5CH.js → workerd-BHG6KDEK.js} +11 -11
  94. package/dist/yaml-6GALFXQY.js +4077 -0
  95. package/oclif.manifest.json +404 -19
  96. package/package.json +6 -6
@@ -0,0 +1,2768 @@
1
+ import {
2
+ __esm,
3
+ init_cjs_shims
4
+ } from "./chunk-PKR7KJ6P.js";
5
+
6
+ // ../../node_modules/.pnpm/prettier@3.7.4/node_modules/prettier/plugins/html.mjs
7
+ function Ns(e) {
8
+ return this[e < 0 ? this.length + e : e];
9
+ }
10
+ function Os(e) {
11
+ if (typeof e == "string") return Ye;
12
+ if (Array.isArray(e)) return je;
13
+ if (!e) return;
14
+ let { type: t } = e;
15
+ if (Tt.has(t)) return t;
16
+ }
17
+ function Rs(e) {
18
+ let t = e === null ? "null" : typeof e;
19
+ if (t !== "string" && t !== "object") return `Unexpected doc '${t}',
20
+ Expected it to be 'string' or 'object'.`;
21
+ if (bt(e)) throw new Error("doc is valid.");
22
+ let r = Object.prototype.toString.call(e);
23
+ if (r !== "[object Object]") return `Unexpected doc '${r}'.`;
24
+ let n = Ds([...Tt].map((i) => `'${i}'`));
25
+ return `Unexpected doc.type '${e.type}'.
26
+ Expected it to be ${n}.`;
27
+ }
28
+ function ar(e, t) {
29
+ if (typeof e == "string") return t(e);
30
+ let r = /* @__PURE__ */ new Map();
31
+ return n(e);
32
+ function n(s) {
33
+ if (r.has(s)) return r.get(s);
34
+ let a = i(s);
35
+ return r.set(s, a), a;
36
+ }
37
+ function i(s) {
38
+ switch (bt(s)) {
39
+ case je:
40
+ return t(s.map(n));
41
+ case Le:
42
+ return t({ ...s, parts: s.parts.map(n) });
43
+ case Pe:
44
+ return t({ ...s, breakContents: n(s.breakContents), flatContents: n(s.flatContents) });
45
+ case Ne: {
46
+ let { expandedStates: a, contents: o } = s;
47
+ return a ? (a = a.map(n), o = a[0]) : o = n(o), t({ ...s, contents: o, expandedStates: a });
48
+ }
49
+ case xe:
50
+ case ye:
51
+ case Oe:
52
+ case vt:
53
+ case Et:
54
+ return t({ ...s, contents: n(s.contents) });
55
+ case Ye:
56
+ case _t:
57
+ case St:
58
+ case Ct:
59
+ case Y:
60
+ case De:
61
+ return t(s);
62
+ default:
63
+ throw new rn(s);
64
+ }
65
+ }
66
+ }
67
+ function L(e, t = nn) {
68
+ return ar(e, (r) => typeof r == "string" ? q(t, r.split(`
69
+ `)) : r);
70
+ }
71
+ function y(e) {
72
+ return D(e), { type: ye, contents: e };
73
+ }
74
+ function Is(e, t) {
75
+ return an(e), D(t), { type: xe, contents: t, n: e };
76
+ }
77
+ function on(e) {
78
+ return Is(Number.NEGATIVE_INFINITY, e);
79
+ }
80
+ function kt(e) {
81
+ return sn(e), { type: Le, parts: e };
82
+ }
83
+ function C(e, t = {}) {
84
+ return D(e), wt(t.expandedStates, !0), { type: Ne, id: t.id, contents: e, break: !!t.shouldBreak, expandedStates: t.expandedStates };
85
+ }
86
+ function X(e, t = "", r = {}) {
87
+ return D(e), t !== "" && D(t), { type: Pe, breakContents: e, flatContents: t, groupId: r.groupId };
88
+ }
89
+ function ln(e, t) {
90
+ return D(e), { type: Oe, contents: e, groupId: t.groupId, negate: t.negate };
91
+ }
92
+ function q(e, t) {
93
+ D(e), wt(t);
94
+ let r = [];
95
+ for (let n = 0; n < t.length; n++) n !== 0 && r.push(e), r.push(t[n]);
96
+ return r;
97
+ }
98
+ function Hs(e, t) {
99
+ let { preferred: r, alternate: n } = t === !0 || t === "'" ? Fs : qs, { length: i } = e, s = 0, a = 0;
100
+ for (let o = 0; o < i; o++) {
101
+ let c = e.charCodeAt(o);
102
+ c === r.codePoint ? s++ : c === n.codePoint && a++;
103
+ }
104
+ return (s > a ? n : r).character;
105
+ }
106
+ function or(e) {
107
+ if (typeof e != "string") throw new TypeError("Expected a string");
108
+ return e.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
109
+ }
110
+ function fn(e, t, r) {
111
+ if (e.kind === "text" || e.kind === "comment") return null;
112
+ if (e.kind === "yaml" && delete t.value, e.kind === "attribute") {
113
+ let { fullName: n, value: i } = e;
114
+ n === "style" || n === "class" || n === "srcset" && (r.fullName === "img" || r.fullName === "source") || n === "allow" && r.fullName === "iframe" || n.startsWith("on") || n.startsWith("@") || n.startsWith(":") || n.startsWith(".") || n.startsWith("#") || n.startsWith("v-") || n === "vars" && r.fullName === "style" || (n === "setup" || n === "generic") && r.fullName === "script" || n === "slot-scope" || n.startsWith("(") || n.startsWith("[") || n.startsWith("*") || n.startsWith("bind") || n.startsWith("i18n") || n.startsWith("on-") || n.startsWith("ng-") || i?.includes("{{") ? delete t.value : i && (t.value = w(0, i, /'|&quot;|&apos;/gu, '"'));
115
+ }
116
+ if (e.kind === "docType" && (t.value = w(0, e.value.toLowerCase(), /\s+/gu, " ")), e.kind === "angularControlFlowBlock" && e.parameters?.children) for (let n of t.parameters.children) Gs.has(e.name) ? delete n.expression : n.expression = n.expression.trim();
117
+ e.kind === "angularIcuExpression" && (t.switchValue = e.switchValue.trim()), e.kind === "angularLetDeclarationInitializer" && delete t.value, e.kind === "element" && e.isVoid && !e.isSelfClosing && (t.isSelfClosing = !0);
118
+ }
119
+ function K(e, t = !0) {
120
+ return [y([k, e]), t ? k : ""];
121
+ }
122
+ function W(e, t) {
123
+ let r = e.type === "NGRoot" ? e.node.type === "NGMicrosyntax" && e.node.body.length === 1 && e.node.body[0].type === "NGMicrosyntaxExpression" ? e.node.body[0].expression : e.node : e.type === "JsExpressionRoot" ? e.node : e;
124
+ return r && (r.type === "ObjectExpression" || r.type === "ArrayExpression" || (t.parser === "__vue_expression" || t.parser === "__vue_ts_expression") && (r.type === "TemplateLiteral" || r.type === "StringLiteral"));
125
+ }
126
+ async function A(e, t, r, n) {
127
+ r = { __isInHtmlAttribute: !0, __embeddedInHtml: !0, ...r };
128
+ let i = !0;
129
+ n && (r.__onHtmlBindingRoot = (a, o) => {
130
+ i = n(a, o);
131
+ });
132
+ let s = await t(e, r, t);
133
+ return i ? C(s) : K(s);
134
+ }
135
+ function $s(e, t, r, n) {
136
+ let { node: i } = r, s = n.originalText.slice(i.sourceSpan.start.offset, i.sourceSpan.end.offset);
137
+ return /^\s*$/u.test(s) ? "" : A(s, e, { parser: "__ng_directive", __isInHtmlAttribute: !1 }, W);
138
+ }
139
+ function js() {
140
+ let e = globalThis, t = e.Deno?.build?.os;
141
+ return typeof t == "string" ? t === "windows" : e.navigator?.platform?.startsWith("Win") ?? e.process?.platform?.startsWith("win") ?? !1;
142
+ }
143
+ function Sn(e) {
144
+ if (e = e instanceof URL ? e : new URL(e), e.protocol !== "file:") throw new TypeError(`URL must be a file URL: received "${e.protocol}"`);
145
+ return e;
146
+ }
147
+ function Ks(e) {
148
+ return e = Sn(e), decodeURIComponent(e.pathname.replace(/%(?![0-9A-Fa-f]{2})/g, "%25"));
149
+ }
150
+ function Qs(e) {
151
+ e = Sn(e);
152
+ let t = decodeURIComponent(e.pathname.replace(/\//g, "\\").replace(/%(?![0-9A-Fa-f]{2})/g, "%25")).replace(/^\\*([A-Za-z]:)(\\|$)/, "$1\\");
153
+ return e.hostname !== "" && (t = `\\\\${e.hostname}${t}`), t;
154
+ }
155
+ function ur(e) {
156
+ return Xs ? Qs(e) : Ks(e);
157
+ }
158
+ function Js(e) {
159
+ return Array.isArray(e) && e.length > 0;
160
+ }
161
+ function vn(e, t) {
162
+ if (!t) return;
163
+ let r = En(t).toLowerCase();
164
+ return e.find(({ filenames: n }) => n?.some((i) => i.toLowerCase() === r)) ?? e.find(({ extensions: n }) => n?.some((i) => r.endsWith(i)));
165
+ }
166
+ function Zs(e, t) {
167
+ if (t) return e.find(({ name: r }) => r.toLowerCase() === t) ?? e.find(({ aliases: r }) => r?.includes(t)) ?? e.find(({ extensions: r }) => r?.includes(`.${t}`));
168
+ }
169
+ function Tn(e, t) {
170
+ if (t) {
171
+ if (Cn(t)) try {
172
+ t = ur(t);
173
+ } catch {
174
+ return;
175
+ }
176
+ if (typeof t == "string") return e.find(({ isSupported: r }) => r?.({ filepath: t }));
177
+ }
178
+ }
179
+ function ta(e, t) {
180
+ let r = _n(0, e.plugins).flatMap((i) => i.languages ?? []);
181
+ return (Zs(r, t.language) ?? vn(r, t.physicalFile) ?? vn(r, t.file) ?? Tn(r, t.physicalFile) ?? Tn(r, t.file) ?? ea?.(r, t.physicalFile))?.parsers[0];
182
+ }
183
+ function ra(e) {
184
+ return !!e?.[yt];
185
+ }
186
+ function na(e) {
187
+ let t = e.slice(0, Xe);
188
+ if (t !== "---" && t !== "+++") return;
189
+ let r = e.indexOf(`
190
+ `, Xe);
191
+ if (r === -1) return;
192
+ let n = e.slice(Xe, r).trim(), i = e.indexOf(`
193
+ ${t}`, r), s = n;
194
+ if (s || (s = t === "+++" ? "toml" : "yaml"), i === -1 && t === "---" && s === "yaml" && (i = e.indexOf(`
195
+ ...`, r)), i === -1) return;
196
+ let a = i + 1 + Xe, o = e.charAt(a + 1);
197
+ if (!/\s?/u.test(o)) return;
198
+ let c = e.slice(0, a), u;
199
+ return { language: s, explicitLanguage: n || null, value: e.slice(r + 1, i), startDelimiter: t, endDelimiter: c.slice(-Xe), raw: c, start: { line: 1, column: 0, index: 0 }, end: { index: c.length, get line() {
200
+ return u ?? (u = c.split(`
201
+ `)), u.length;
202
+ }, get column() {
203
+ return u ?? (u = c.split(`
204
+ `)), F(0, u, -1).length;
205
+ } }, [yt]: !0 };
206
+ }
207
+ function ia(e) {
208
+ let t = na(e);
209
+ return t ? { frontMatter: t, get content() {
210
+ let { raw: r } = t;
211
+ return w(0, r, /[^\n]/gu, " ") + e.slice(r.length);
212
+ } } : { content: e };
213
+ }
214
+ function sa(e) {
215
+ return e.kind === "element" && !e.hasExplicitNamespace && !["html", "svg"].includes(e.namespace);
216
+ }
217
+ function xt(e, t) {
218
+ return !!(e.kind === "ieConditionalComment" && e.lastChild && !e.lastChild.isSelfClosing && !e.lastChild.endSourceSpan || e.kind === "ieConditionalComment" && !e.complete || ue(e) && e.children.some((r) => r.kind !== "text" && r.kind !== "interpolation") || Pt(e, t) && !H(e, t) && e.kind !== "interpolation");
219
+ }
220
+ function pe(e) {
221
+ return e.kind === "attribute" || !e.parent || !e.prev ? !1 : oa(e.prev);
222
+ }
223
+ function oa(e) {
224
+ return e.kind === "comment" && e.value.trim() === "prettier-ignore";
225
+ }
226
+ function O(e) {
227
+ return e.kind === "text" || e.kind === "comment";
228
+ }
229
+ function H(e, t) {
230
+ return e.kind === "element" && (e.fullName === "script" || e.fullName === "style" || e.fullName === "svg:style" || e.fullName === "svg:script" || e.fullName === "mj-style" && t.parser === "mjml" || ce(e) && (e.name === "script" || e.name === "style"));
231
+ }
232
+ function An(e, t) {
233
+ return e.children && !H(e, t);
234
+ }
235
+ function yn(e, t) {
236
+ return H(e, t) || e.kind === "interpolation" || dr(e);
237
+ }
238
+ function dr(e) {
239
+ return Fn(e).startsWith("pre");
240
+ }
241
+ function xn(e, t) {
242
+ let r = n();
243
+ if (r && !e.prev && e.parent?.tagDefinition?.ignoreFirstLf) return e.kind === "interpolation";
244
+ return r;
245
+ function n() {
246
+ return le(e) || e.kind === "angularControlFlowBlock" ? !1 : (e.kind === "text" || e.kind === "interpolation") && e.prev && (e.prev.kind === "text" || e.prev.kind === "interpolation") ? !0 : !e.parent || e.parent.cssDisplay === "none" ? !1 : ue(e.parent) ? !0 : !(!e.prev && (e.parent.kind === "root" || ue(e) && e.parent || H(e.parent, t) || Je(e.parent, t) || !ma(e.parent.cssDisplay)) || e.prev && !ga(e.prev.cssDisplay));
247
+ }
248
+ }
249
+ function Nn(e, t) {
250
+ return le(e) || e.kind === "angularControlFlowBlock" ? !1 : (e.kind === "text" || e.kind === "interpolation") && e.next && (e.next.kind === "text" || e.next.kind === "interpolation") ? !0 : !e.parent || e.parent.cssDisplay === "none" ? !1 : ue(e.parent) ? !0 : !(!e.next && (e.parent.kind === "root" || ue(e) && e.parent || H(e.parent, t) || Je(e.parent, t) || !fa(e.parent.cssDisplay)) || e.next && !da(e.next.cssDisplay));
251
+ }
252
+ function Ln(e, t) {
253
+ return _a(e.cssDisplay) && !H(e, t);
254
+ }
255
+ function Ke(e) {
256
+ return le(e) || e.next && e.sourceSpan.end && e.sourceSpan.end.line + 1 < e.next.sourceSpan.start.line;
257
+ }
258
+ function Pn(e) {
259
+ return gr(e) || e.kind === "element" && e.children.length > 0 && (["body", "script", "style"].includes(e.name) || e.children.some((t) => ca(t))) || e.firstChild && e.firstChild === e.lastChild && e.firstChild.kind !== "text" && Dn(e.firstChild) && (!e.lastChild.isTrailingSpaceSensitive || Rn(e.lastChild));
260
+ }
261
+ function gr(e) {
262
+ return e.kind === "element" && e.children.length > 0 && (["html", "head", "ul", "ol", "select"].includes(e.name) || e.cssDisplay.startsWith("table") && e.cssDisplay !== "table-cell");
263
+ }
264
+ function Nt(e) {
265
+ return In(e) || e.prev && la(e.prev) || On(e);
266
+ }
267
+ function la(e) {
268
+ return In(e) || e.kind === "element" && e.fullName === "br" || On(e);
269
+ }
270
+ function On(e) {
271
+ return Dn(e) && Rn(e);
272
+ }
273
+ function Dn(e) {
274
+ return e.hasLeadingSpaces && (e.prev ? e.prev.sourceSpan.end.line < e.sourceSpan.start.line : e.parent.kind === "root" || e.parent.startSourceSpan.end.line < e.sourceSpan.start.line);
275
+ }
276
+ function Rn(e) {
277
+ return e.hasTrailingSpaces && (e.next ? e.next.sourceSpan.start.line > e.sourceSpan.end.line : e.parent.kind === "root" || e.parent.endSourceSpan && e.parent.endSourceSpan.start.line > e.sourceSpan.end.line);
278
+ }
279
+ function In(e) {
280
+ switch (e.kind) {
281
+ case "ieConditionalComment":
282
+ case "comment":
283
+ case "directive":
284
+ return !0;
285
+ case "element":
286
+ return ["script", "select"].includes(e.name);
287
+ }
288
+ return !1;
289
+ }
290
+ function Lt(e) {
291
+ return e.lastChild ? Lt(e.lastChild) : e;
292
+ }
293
+ function ca(e) {
294
+ return e.children?.some((t) => t.kind !== "text");
295
+ }
296
+ function Mn(e) {
297
+ if (e) switch (e) {
298
+ case "module":
299
+ case "text/javascript":
300
+ case "text/babel":
301
+ case "text/jsx":
302
+ case "application/javascript":
303
+ return "babel";
304
+ case "application/x-typescript":
305
+ return "typescript";
306
+ case "text/markdown":
307
+ return "markdown";
308
+ case "text/html":
309
+ return "html";
310
+ case "text/x-handlebars-template":
311
+ return "glimmer";
312
+ default:
313
+ if (e.endsWith("json") || e.endsWith("importmap") || e === "speculationrules") return "json";
314
+ }
315
+ }
316
+ function ua(e, t) {
317
+ let { name: r, attrMap: n } = e;
318
+ if (r !== "script" || Object.prototype.hasOwnProperty.call(n, "src")) return;
319
+ let { type: i, lang: s } = e.attrMap;
320
+ return !s && !i ? "babel" : At(t, { language: s }) ?? Mn(i);
321
+ }
322
+ function pa(e, t) {
323
+ if (!Pt(e, t)) return;
324
+ let { attrMap: r } = e;
325
+ if (Object.prototype.hasOwnProperty.call(r, "src")) return;
326
+ let { type: n, lang: i } = r;
327
+ return At(t, { language: i }) ?? Mn(n);
328
+ }
329
+ function ha(e, t) {
330
+ if (e.name === "style") {
331
+ let { lang: r } = e.attrMap;
332
+ return r ? At(t, { language: r }) : "css";
333
+ }
334
+ if (e.name === "mj-style" && t.parser === "mjml") return "css";
335
+ }
336
+ function _r(e, t) {
337
+ return ua(e, t) ?? ha(e, t) ?? pa(e, t);
338
+ }
339
+ function Qe(e) {
340
+ return e === "block" || e === "list-item" || e.startsWith("table");
341
+ }
342
+ function ma(e) {
343
+ return !Qe(e) && e !== "inline-block";
344
+ }
345
+ function fa(e) {
346
+ return !Qe(e) && e !== "inline-block";
347
+ }
348
+ function da(e) {
349
+ return !Qe(e);
350
+ }
351
+ function ga(e) {
352
+ return !Qe(e);
353
+ }
354
+ function _a(e) {
355
+ return !Qe(e) && e !== "inline-block";
356
+ }
357
+ function ue(e) {
358
+ return Fn(e).startsWith("pre");
359
+ }
360
+ function Sa(e, t) {
361
+ let r = e;
362
+ for (; r; ) {
363
+ if (t(r)) return !0;
364
+ r = r.parent;
365
+ }
366
+ return !1;
367
+ }
368
+ function Bn(e, t) {
369
+ if (he(e, t)) return "block";
370
+ if (e.prev?.kind === "comment") {
371
+ let n = e.prev.value.match(/^\s*display:\s*([a-z]+)\s*$/u);
372
+ if (n) return n[1];
373
+ }
374
+ let r = !1;
375
+ if (e.kind === "element" && e.namespace === "svg") if (Sa(e, (n) => n.fullName === "svg:foreignObject")) r = !0;
376
+ else return e.name === "svg" ? "inline-block" : "block";
377
+ switch (t.htmlWhitespaceSensitivity) {
378
+ case "strict":
379
+ return "inline";
380
+ case "ignore":
381
+ return "block";
382
+ default:
383
+ if (e.kind === "element" && (!e.namespace || r || ce(e)) && Object.prototype.hasOwnProperty.call(hr, e.name)) return hr[e.name];
384
+ }
385
+ return bn;
386
+ }
387
+ function Fn(e) {
388
+ return e.kind === "element" && (!e.namespace || ce(e)) && Object.prototype.hasOwnProperty.call(mr, e.name) ? mr[e.name] : wn;
389
+ }
390
+ function Sr(e) {
391
+ return w(0, w(0, e, "&apos;", "'"), "&quot;", '"');
392
+ }
393
+ function b(e) {
394
+ return Sr(e.value);
395
+ }
396
+ function Je(e, t) {
397
+ return he(e, t) && !Ea.has(e.fullName);
398
+ }
399
+ function he(e, t) {
400
+ return t.parser === "vue" && e.kind === "element" && e.parent.kind === "root" && e.fullName.toLowerCase() !== "html";
401
+ }
402
+ function Pt(e, t) {
403
+ return he(e, t) && (Je(e, t) || e.attrMap.lang && e.attrMap.lang !== "html");
404
+ }
405
+ function qn(e) {
406
+ let t = e.fullName;
407
+ return t.charAt(0) === "#" || t === "slot-scope" || t === "v-slot" || t.startsWith("v-slot:");
408
+ }
409
+ function Hn(e, t) {
410
+ let r = e.parent;
411
+ if (!he(r, t)) return !1;
412
+ let n = r.fullName, i = e.fullName;
413
+ return n === "script" && i === "setup" || n === "style" && i === "vars";
414
+ }
415
+ function Ot(e, t = e.value) {
416
+ return e.parent.isWhitespaceSensitive ? e.parent.isIndentationSensitive ? L(t) : L(x.dedentString(fr(t)), v) : q(_, x.split(t));
417
+ }
418
+ function Dt(e, t) {
419
+ return he(e, t) && e.name === "script";
420
+ }
421
+ function Ca(e) {
422
+ let { valueSpan: t, value: r } = e;
423
+ return t.end.offset - t.start.offset === r.length + 2;
424
+ }
425
+ function Rt(e, t) {
426
+ if (Ca(e)) return !1;
427
+ let { value: r } = e;
428
+ return /^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(r) || t.parser === "lwc" && r.startsWith("{") && r.endsWith("}");
429
+ }
430
+ async function Wn(e, t, r) {
431
+ let n = b(r.node), i = [];
432
+ for (let [s, a] of n.split(Vn).entries()) if (s % 2 === 0) i.push(L(a));
433
+ else try {
434
+ i.push(C(["{{", y([_, await A(a, e, { parser: "__ng_interpolation", __isInHtmlInterpolation: !0 })]), _, "}}"]));
435
+ } catch {
436
+ i.push("{{", L(a), "}}");
437
+ }
438
+ return i;
439
+ }
440
+ function Ta(e, t, { node: r }) {
441
+ let n = b(r);
442
+ return K(kt(Ot(r, n.trim())), !n.includes("@@"));
443
+ }
444
+ function ka(e) {
445
+ let t = [];
446
+ for (let r of e.split(";")) {
447
+ if (r = x.trim(r), !r) continue;
448
+ let [n, ...i] = x.split(r);
449
+ t.push({ name: n, value: i });
450
+ }
451
+ return t;
452
+ }
453
+ function Qn(e, t, r) {
454
+ let { node: n } = r, i = Xn(b(n));
455
+ return i.length === 0 ? [""] : K(i.map(({ name: s, value: a }, o) => [[s, ...a].join(" "), o === i.length - 1 ? X(";") : [";", _]]));
456
+ }
457
+ function Jn(e) {
458
+ return e === " " || e === `
459
+ ` || e === "\f" || e === "\r" || e === " ";
460
+ }
461
+ function Pa(e) {
462
+ let t = e.length, r, n, i, s, a, o = 0, c;
463
+ function u(m) {
464
+ let g, E = m.exec(e.substring(o));
465
+ if (E) return [g] = E, o += g.length, g;
466
+ }
467
+ let p = [];
468
+ for (; ; ) {
469
+ if (u(ya), o >= t) {
470
+ if (p.length === 0) throw new Error("Must contain one or more image candidate strings.");
471
+ return p;
472
+ }
473
+ c = o, r = u(xa), n = [], r.slice(-1) === "," ? (r = r.replace(Na, ""), S()) : d();
474
+ }
475
+ function d() {
476
+ for (u(Aa), i = "", s = "in descriptor"; ; ) {
477
+ if (a = e.charAt(o), s === "in descriptor") if (Jn(a)) i && (n.push(i), i = "", s = "after descriptor");
478
+ else if (a === ",") {
479
+ o += 1, i && n.push(i), S();
480
+ return;
481
+ } else if (a === "(") i += a, s = "in parens";
482
+ else if (a === "") {
483
+ i && n.push(i), S();
484
+ return;
485
+ } else i += a;
486
+ else if (s === "in parens") if (a === ")") i += a, s = "in descriptor";
487
+ else if (a === "") {
488
+ n.push(i), S();
489
+ return;
490
+ } else i += a;
491
+ else if (s === "after descriptor" && !Jn(a)) if (a === "") {
492
+ S();
493
+ return;
494
+ } else s = "in descriptor", o -= 1;
495
+ o += 1;
496
+ }
497
+ }
498
+ function S() {
499
+ let m = !1, g, E, P, z, oe = {}, ee, gt, ke, Ge, nr;
500
+ for (z = 0; z < n.length; z++) ee = n[z], gt = ee[ee.length - 1], ke = ee.substring(0, ee.length - 1), Ge = parseInt(ke, 10), nr = parseFloat(ke), Zn.test(ke) && gt === "w" ? ((g || E) && (m = !0), Ge === 0 ? m = !0 : g = Ge) : La.test(ke) && gt === "x" ? ((g || E || P) && (m = !0), nr < 0 ? m = !0 : E = nr) : Zn.test(ke) && gt === "h" ? ((P || E) && (m = !0), Ge === 0 ? m = !0 : P = Ge) : m = !0;
501
+ if (!m) oe.source = { value: r, startOffset: c }, g && (oe.width = { value: g }), E && (oe.density = { value: E }), P && (oe.height = { value: P }), p.push(oe);
502
+ else throw new Error(`Invalid srcset descriptor found in "${e}" at "${ee}".`);
503
+ }
504
+ }
505
+ function ni(e, t, r) {
506
+ let n = b(r.node), i = ei(n), s = Oa.filter((m) => i.some((g) => Object.prototype.hasOwnProperty.call(g, m)));
507
+ if (s.length > 1) throw new Error("Mixed descriptor in srcset is not supported");
508
+ let [a] = s, o = ri[a], c = i.map((m) => m.source.value), u = Math.max(...c.map((m) => m.length)), p = i.map((m) => m[a] ? String(m[a].value) : ""), d = p.map((m) => {
509
+ let g = m.indexOf(".");
510
+ return g === -1 ? m.length : g;
511
+ }), S = Math.max(...d);
512
+ return K(q([",", _], c.map((m, g) => {
513
+ let E = [m], P = p[g];
514
+ if (P) {
515
+ let z = u - m.length + 1, oe = S - d[g], ee = " ".repeat(z + oe);
516
+ E.push(X(ee, " "), P + o);
517
+ }
518
+ return E;
519
+ })));
520
+ }
521
+ function Da(e, t) {
522
+ let { root: r } = e;
523
+ return vr.has(r) || vr.set(r, r.children.some((n) => Dt(n, t) && ["ts", "typescript"].includes(n.attrMap.lang))), vr.get(r);
524
+ }
525
+ function ai(e, t, r) {
526
+ let n = b(r.node);
527
+ return A(`type T<${n}> = any`, e, { parser: "babel-ts", __isEmbeddedTypescriptGenericParameters: !0 }, W);
528
+ }
529
+ function oi(e, t, r, n) {
530
+ let i = b(r.node), s = G(r, n) ? "babel-ts" : "babel";
531
+ return A(`function _(${i}) {}`, e, { parser: s, __isVueBindings: !0 });
532
+ }
533
+ async function li(e, t, r, n) {
534
+ let i = b(r.node), { left: s, operator: a, right: o } = Ra(i), c = G(r, n);
535
+ return [C(await A(`function _(${s}) {}`, e, { parser: c ? "babel-ts" : "babel", __isVueForBindingLeft: !0 })), " ", a, " ", await A(o, e, { parser: c ? "__ts_expression" : "__js_expression" })];
536
+ }
537
+ function Ra(e) {
538
+ let t = /(.*?)\s+(in|of)\s+(.*)/su, r = /,([^,\]}]*)(?:,([^,\]}]*))?$/u, n = /^\(|\)$/gu, i = e.match(t);
539
+ if (!i) return;
540
+ let s = { for: i[3].trim() };
541
+ if (!s.for) return;
542
+ let a = w(0, i[1].trim(), n, ""), o = a.match(r);
543
+ o ? (s.alias = a.replace(r, ""), s.iterator1 = o[1].trim(), o[2] && (s.iterator2 = o[2].trim())) : s.alias = a;
544
+ let c = [s.alias, s.iterator1, s.iterator2];
545
+ if (!c.some((u, p) => !u && (p === 0 || c.slice(p + 1).some(Boolean)))) return { left: c.filter(Boolean).join(","), operator: i[2], right: s.for };
546
+ }
547
+ async function Ma(e, t, r, n) {
548
+ try {
549
+ return await ci(e, t, r, n);
550
+ } catch (a) {
551
+ if (a.cause?.code !== "BABEL_PARSER_SYNTAX_ERROR") throw a;
552
+ }
553
+ let i = b(r.node), s = G(r, n) ? "__vue_ts_event_binding" : "__vue_event_binding";
554
+ return A(i, e, { parser: s }, W);
555
+ }
556
+ function Ba(e, t, r, n) {
557
+ let i = b(r.node), s = G(r, n) ? "__vue_ts_expression" : "__vue_expression";
558
+ return A(i, e, { parser: s }, W);
559
+ }
560
+ function ci(e, t, r, n) {
561
+ let i = b(r.node), s = G(r, n) ? "__ts_expression" : "__js_expression";
562
+ return A(i, e, { parser: s }, W);
563
+ }
564
+ function qa(e, t) {
565
+ let { node: r } = e, { value: n } = r;
566
+ if (n) return Rt(r, t) ? [r.rawName, "=", n] : Fa.find(({ test: i }) => i(e, t))?.print;
567
+ }
568
+ function Ha(e) {
569
+ return async (t, r, n, i) => {
570
+ let s = await e(t, r, n, i);
571
+ if (s) return s = ar(s, (a) => typeof a == "string" ? w(0, a, '"', "&quot;") : a), [n.node.rawName, '="', C(s), '"'];
572
+ };
573
+ }
574
+ function Ze(e, t) {
575
+ return [e.isSelfClosing ? "" : Va(e, t), me(e, t)];
576
+ }
577
+ function Va(e, t) {
578
+ return e.lastChild && ge(e.lastChild) ? "" : [Ua(e, t), It(e, t)];
579
+ }
580
+ function me(e, t) {
581
+ return (e.next ? $(e.next) : de(e.parent)) ? "" : [fe(e, t), V(e, t)];
582
+ }
583
+ function Ua(e, t) {
584
+ return de(e) ? fe(e.lastChild, t) : "";
585
+ }
586
+ function V(e, t) {
587
+ return ge(e) ? It(e.parent, t) : et(e) ? Mt(e.next, t) : "";
588
+ }
589
+ function It(e, t) {
590
+ if (mi(e, t)) return "";
591
+ switch (e.kind) {
592
+ case "ieConditionalComment":
593
+ return "<!";
594
+ case "element":
595
+ if (e.hasHtmComponentClosingTag) return "<//";
596
+ default:
597
+ return `</${e.rawName}`;
598
+ }
599
+ }
600
+ function fe(e, t) {
601
+ if (mi(e, t)) return "";
602
+ switch (e.kind) {
603
+ case "ieConditionalComment":
604
+ case "ieConditionalEndComment":
605
+ return "[endif]-->";
606
+ case "ieConditionalStartComment":
607
+ return "]><!-->";
608
+ case "interpolation":
609
+ return "}}";
610
+ case "angularIcuExpression":
611
+ return "}";
612
+ case "element":
613
+ if (e.isSelfClosing) return "/>";
614
+ default:
615
+ return ">";
616
+ }
617
+ }
618
+ function mi(e, t) {
619
+ return !e.isSelfClosing && !e.endSourceSpan && (pe(e) || xt(e.parent, t));
620
+ }
621
+ function $(e) {
622
+ return e.prev && e.prev.kind !== "docType" && e.kind !== "angularControlFlowBlock" && !O(e.prev) && e.isLeadingSpaceSensitive && !e.hasLeadingSpaces;
623
+ }
624
+ function de(e) {
625
+ return e.lastChild?.isTrailingSpaceSensitive && !e.lastChild.hasTrailingSpaces && !O(Lt(e.lastChild)) && !ue(e);
626
+ }
627
+ function ge(e) {
628
+ return !e.next && !e.hasTrailingSpaces && e.isTrailingSpaceSensitive && O(Lt(e));
629
+ }
630
+ function et(e) {
631
+ return e.next && !O(e.next) && O(e) && e.isTrailingSpaceSensitive && !e.hasTrailingSpaces;
632
+ }
633
+ function Wa(e) {
634
+ let t = e.trim().match(/^prettier-ignore-attribute(?:\s+(.+))?$/su);
635
+ return t ? t[1] ? t[1].split(/\s+/u) : !0 : !1;
636
+ }
637
+ function tt(e) {
638
+ return !e.prev && e.isLeadingSpaceSensitive && !e.hasLeadingSpaces;
639
+ }
640
+ function Ga(e, t, r) {
641
+ let { node: n } = e;
642
+ if (!Re(n.attrs)) return n.isSelfClosing ? " " : "";
643
+ let i = n.prev?.kind === "comment" && Wa(n.prev.value), s = typeof i == "boolean" ? () => i : Array.isArray(i) ? (d) => i.includes(d.rawName) : () => !1, a = e.map(({ node: d }) => s(d) ? L(t.originalText.slice(Q(d), te(d))) : r(), "attrs"), o = n.kind === "element" && n.fullName === "script" && n.attrs.length === 1 && n.attrs[0].fullName === "src" && n.children.length === 0, u = t.singleAttributePerLine && n.attrs.length > 1 && !he(n, t) ? v : _, p = [y([o ? " " : _, q(u, a)])];
644
+ return n.firstChild && tt(n.firstChild) || n.isSelfClosing && de(n.parent) || o ? p.push(n.isSelfClosing ? " " : "") : p.push(t.bracketSameLine ? n.isSelfClosing ? " " : "" : n.isSelfClosing ? _ : k), p;
645
+ }
646
+ function $a(e) {
647
+ return e.firstChild && tt(e.firstChild) ? "" : Bt(e);
648
+ }
649
+ function rt(e, t, r) {
650
+ let { node: n } = e;
651
+ return [_e(n, t), Ga(e, t, r), n.isSelfClosing ? "" : $a(n)];
652
+ }
653
+ function _e(e, t) {
654
+ return e.prev && et(e.prev) ? "" : [U(e, t), Mt(e, t)];
655
+ }
656
+ function U(e, t) {
657
+ return tt(e) ? Bt(e.parent) : $(e) ? fe(e.prev, t) : "";
658
+ }
659
+ function Mt(e, t) {
660
+ switch (e.kind) {
661
+ case "ieConditionalComment":
662
+ case "ieConditionalStartComment":
663
+ return `<!--[if ${e.condition}`;
664
+ case "ieConditionalEndComment":
665
+ return "<!--<!";
666
+ case "interpolation":
667
+ return "{{";
668
+ case "docType": {
669
+ if (e.value === "html") {
670
+ let { filepath: n } = t;
671
+ if (n && /\.html?$/u.test(n)) return hi;
672
+ }
673
+ let r = Q(e);
674
+ return t.originalText.slice(r, r + hi.length);
675
+ }
676
+ case "angularIcuExpression":
677
+ return "{";
678
+ case "element":
679
+ if (e.condition) return `<!--[if ${e.condition}]><!--><${e.rawName}`;
680
+ default:
681
+ return `<${e.rawName}`;
682
+ }
683
+ }
684
+ function Bt(e) {
685
+ switch (e.kind) {
686
+ case "ieConditionalComment":
687
+ return "]>";
688
+ case "element":
689
+ if (e.condition) return "><!--<![endif]-->";
690
+ default:
691
+ return ">";
692
+ }
693
+ }
694
+ function za(e, t) {
695
+ if (!e.endSourceSpan) return "";
696
+ let r = e.startSourceSpan.end.offset;
697
+ e.firstChild && tt(e.firstChild) && (r -= Bt(e).length);
698
+ let n = e.endSourceSpan.start.offset;
699
+ return e.lastChild && ge(e.lastChild) ? n += It(e, t).length : de(e) && (n -= fe(e.lastChild, t).length), t.originalText.slice(r, n);
700
+ }
701
+ function ja(e, t) {
702
+ let { node: r } = e;
703
+ switch (r.kind) {
704
+ case "element":
705
+ if (H(r, t) || r.kind === "interpolation") return;
706
+ if (!r.isSelfClosing && Pt(r, t)) {
707
+ let n = _r(r, t);
708
+ return n ? async (i, s) => {
709
+ let a = Ft(r, t), o = /^\s*$/u.test(a), c = "";
710
+ return o || (c = await i(fr(a), { parser: n, __embeddedInHtml: !0 }), o = c === ""), [U(r, t), C(rt(e, t, s)), o ? "" : v, c, o ? "" : v, Ze(r, t), V(r, t)];
711
+ } : void 0;
712
+ }
713
+ break;
714
+ case "text":
715
+ if (H(r.parent, t)) {
716
+ let n = _r(r.parent, t);
717
+ if (n) return async (i) => {
718
+ let s = n === "markdown" ? x.dedentString(r.value.replace(/^[^\S\n]*\n/u, "")) : r.value, a = { parser: n, __embeddedInHtml: !0 };
719
+ if (t.parser === "html" && n === "babel") {
720
+ let o = "script", { attrMap: c } = r.parent;
721
+ c && (c.type === "module" || (c.type === "text/babel" || c.type === "text/jsx") && c["data-type"] === "module") && (o = "module"), a.__babelSourceType = o;
722
+ }
723
+ return [j, U(r, t), await i(s, a), V(r, t)];
724
+ };
725
+ } else if (r.parent.kind === "interpolation") return async (n) => {
726
+ let i = { __isInHtmlInterpolation: !0, __embeddedInHtml: !0 };
727
+ return t.parser === "angular" ? i.parser = "__ng_interpolation" : t.parser === "vue" ? i.parser = G(e, t) ? "__vue_ts_expression" : "__vue_expression" : i.parser = "__js_expression", [y([_, await n(r.value, i)]), r.parent.next && $(r.parent.next) ? " " : _];
728
+ };
729
+ break;
730
+ case "attribute":
731
+ return pi(e, t);
732
+ case "angularControlFlowBlockParameters":
733
+ return Ya.has(e.parent.name) ? gn : void 0;
734
+ case "angularLetDeclarationInitializer":
735
+ return (n) => A(r.value, n, { parser: "__ng_binding", __isInHtmlAttribute: !1 });
736
+ }
737
+ }
738
+ function it(e) {
739
+ if (nt !== null && typeof nt.property) {
740
+ let t = nt;
741
+ return nt = it.prototype = null, t;
742
+ }
743
+ return nt = it.prototype = e ?? /* @__PURE__ */ Object.create(null), new it();
744
+ }
745
+ function Tr(e) {
746
+ return it(e);
747
+ }
748
+ function Ka(e, t = "type") {
749
+ Tr(e);
750
+ function r(n) {
751
+ let i = n[t], s = e[i];
752
+ if (!Array.isArray(s)) throw Object.assign(new Error(`Missing visitor keys for '${i}'.`), { node: n });
753
+ return s;
754
+ }
755
+ return r;
756
+ }
757
+ function ki(e) {
758
+ let t = te(e);
759
+ return e.kind === "element" && !e.endSourceSpan && Re(e.children) ? Math.max(t, ki(F(0, e.children, -1))) : t;
760
+ }
761
+ function st(e, t, r) {
762
+ let n = e.node;
763
+ if (pe(n)) {
764
+ let i = ki(n);
765
+ return [U(n, t), L(x.trimEnd(t.originalText.slice(Q(n) + (n.prev && et(n.prev) ? Mt(n).length : 0), i - (n.next && $(n.next) ? fe(n, t).length : 0)))), V(n, t)];
766
+ }
767
+ return r();
768
+ }
769
+ function qt(e, t) {
770
+ return O(e) && O(t) ? e.isTrailingSpaceSensitive ? e.hasTrailingSpaces ? Nt(t) ? v : _ : "" : Nt(t) ? v : k : et(e) && (pe(t) || t.firstChild || t.isSelfClosing || t.kind === "element" && t.attrs.length > 0) || e.kind === "element" && e.isSelfClosing && $(t) ? "" : !t.isLeadingSpaceSensitive || Nt(t) || $(t) && e.lastChild && ge(e.lastChild) && e.lastChild.lastChild && ge(e.lastChild.lastChild) ? v : t.hasLeadingSpaces ? _ : k;
771
+ }
772
+ function Ie(e, t, r) {
773
+ let { node: n } = e;
774
+ if (gr(n)) return [j, ...e.map(() => {
775
+ let s = e.node, a = s.prev ? qt(s.prev, s) : "";
776
+ return [a ? [a, Ke(s.prev) ? v : ""] : "", st(e, t, r)];
777
+ }, "children")];
778
+ let i = n.children.map(() => Symbol(""));
779
+ return e.map(({ node: s, index: a }) => {
780
+ if (O(s)) {
781
+ if (s.prev && O(s.prev)) {
782
+ let m = qt(s.prev, s);
783
+ if (m) return Ke(s.prev) ? [v, v, st(e, t, r)] : [m, st(e, t, r)];
784
+ }
785
+ return st(e, t, r);
786
+ }
787
+ let o = [], c = [], u = [], p = [], d = s.prev ? qt(s.prev, s) : "", S = s.next ? qt(s, s.next) : "";
788
+ return d && (Ke(s.prev) ? o.push(v, v) : d === v ? o.push(v) : O(s.prev) ? c.push(d) : c.push(X("", k, { groupId: i[a - 1] }))), S && (Ke(s) ? O(s.next) && p.push(v, v) : S === v ? O(s.next) && p.push(v) : u.push(S)), [...o, C([...c, C([st(e, t, r), ...u], { id: i[a] })]), ...p];
789
+ }, "children");
790
+ }
791
+ function Ai(e, t, r) {
792
+ let { node: n } = e, i = [];
793
+ Ja(e) && i.push("} "), i.push("@", n.name), n.parameters && i.push(" (", C(r("parameters")), ")"), i.push(" {");
794
+ let s = yi(n);
795
+ return n.children.length > 0 ? (n.firstChild.hasLeadingSpaces = !0, n.lastChild.hasTrailingSpaces = !0, i.push(y([v, Ie(e, t, r)])), s && i.push(v, "}")) : s && i.push("}"), C(i, { shouldBreak: !0 });
796
+ }
797
+ function yi(e) {
798
+ return !(e.next?.kind === "angularControlFlowBlock" && wi.get(e.name)?.has(e.next.name));
799
+ }
800
+ function Ja(e) {
801
+ let { previous: t } = e;
802
+ return t?.kind === "angularControlFlowBlock" && !pe(t) && !yi(t);
803
+ }
804
+ function xi(e, t, r) {
805
+ return [y([k, q([";", _], e.map(r, "children"))]), k];
806
+ }
807
+ function Ni(e, t, r) {
808
+ let { node: n } = e;
809
+ return [_e(n, t), C([n.switchValue.trim(), ", ", n.type, n.cases.length > 0 ? [",", y([_, q(_, e.map(r, "cases"))])] : "", k]), me(n, t)];
810
+ }
811
+ function Li(e, t, r) {
812
+ let { node: n } = e;
813
+ return [n.value, " {", C([y([k, e.map(({ node: i, isLast: s }) => {
814
+ let a = [r()];
815
+ return i.kind === "text" && (i.hasLeadingSpaces && a.unshift(_), i.hasTrailingSpaces && !s && a.push(_)), a;
816
+ }, "expression")]), k]), "}"];
817
+ }
818
+ function Pi(e, t, r) {
819
+ let { node: n } = e;
820
+ if (xt(n, t)) return [U(n, t), C(rt(e, t, r)), L(Ft(n, t)), ...Ze(n, t), V(n, t)];
821
+ let i = n.children.length === 1 && (n.firstChild.kind === "interpolation" || n.firstChild.kind === "angularIcuExpression") && n.firstChild.isLeadingSpaceSensitive && !n.firstChild.hasLeadingSpaces && n.lastChild.isTrailingSpaceSensitive && !n.lastChild.hasTrailingSpaces, s = Symbol("element-attr-group-id"), a = (p) => C([C(rt(e, t, r), { id: s }), p, Ze(n, t)]), o = (p) => i ? ln(p, { groupId: s }) : (H(n, t) || Je(n, t)) && n.parent.kind === "root" && t.parser === "vue" && !t.vueIndentScriptAndStyle ? p : y(p), c = () => i ? X(k, "", { groupId: s }) : n.firstChild.hasLeadingSpaces && n.firstChild.isLeadingSpaceSensitive ? _ : n.firstChild.kind === "text" && n.isWhitespaceSensitive && n.isIndentationSensitive ? on(k) : k, u = () => (n.next ? $(n.next) : de(n.parent)) ? n.lastChild.hasTrailingSpaces && n.lastChild.isTrailingSpaceSensitive ? " " : "" : i ? X(k, "", { groupId: s }) : n.lastChild.hasTrailingSpaces && n.lastChild.isTrailingSpaceSensitive ? _ : (n.lastChild.kind === "comment" || n.lastChild.kind === "text" && n.isWhitespaceSensitive && n.isIndentationSensitive) && new RegExp(`\\n[\\t ]{${t.tabWidth * (e.ancestors.length - 1)}}$`, "u").test(n.lastChild.value) ? "" : k;
822
+ return n.children.length === 0 ? a(n.hasDanglingSpaces && n.isDanglingSpaceSensitive ? _ : "") : a([Pn(n) ? j : "", o([c(), Ie(e, t, r)]), u()]);
823
+ }
824
+ function at(e, t = !0) {
825
+ if (e[0] != ":") return [null, e];
826
+ let r = e.indexOf(":", 1);
827
+ if (r === -1) {
828
+ if (t) throw new Error(`Unsupported format "${e}" expecting ":namespace:name"`);
829
+ return [null, e];
830
+ }
831
+ return [e.slice(1, r), e.slice(r + 1)];
832
+ }
833
+ function br(e) {
834
+ return at(e)[1] === "ng-container";
835
+ }
836
+ function wr(e) {
837
+ return at(e)[1] === "ng-content";
838
+ }
839
+ function Me(e) {
840
+ return e === null ? null : at(e)[0];
841
+ }
842
+ function Se(e, t) {
843
+ return e ? `:${e}:${t}` : t;
844
+ }
845
+ function Oi(e) {
846
+ return e.replace(Za, (...t) => t[1].toUpperCase());
847
+ }
848
+ function yr() {
849
+ return Vt || (Vt = {}, Ht(Ee.HTML, ["iframe|srcdoc", "*|innerHTML", "*|outerHTML"]), Ht(Ee.STYLE, ["*|style"]), Ht(Ee.URL, ["*|formAction", "area|href", "area|ping", "audio|src", "a|href", "a|ping", "blockquote|cite", "body|background", "del|cite", "form|action", "img|src", "input|src", "ins|cite", "q|cite", "source|src", "track|src", "video|poster", "video|src"]), Ht(Ee.RESOURCE_URL, ["applet|code", "applet|codebase", "base|href", "embed|src", "frame|src", "head|profile", "html|manifest", "iframe|src", "link|href", "media|src", "object|codebase", "object|data", "script|src"])), Vt;
850
+ }
851
+ function Ht(e, t) {
852
+ for (let r of t) Vt[r.toLowerCase()] = e;
853
+ }
854
+ function ao(e) {
855
+ switch (e) {
856
+ case "width":
857
+ case "height":
858
+ case "minWidth":
859
+ case "minHeight":
860
+ case "maxWidth":
861
+ case "maxHeight":
862
+ case "left":
863
+ case "top":
864
+ case "bottom":
865
+ case "right":
866
+ case "fontSize":
867
+ case "outlineWidth":
868
+ case "outlineOffset":
869
+ case "paddingTop":
870
+ case "paddingLeft":
871
+ case "paddingBottom":
872
+ case "paddingRight":
873
+ case "marginTop":
874
+ case "marginLeft":
875
+ case "marginBottom":
876
+ case "marginRight":
877
+ case "borderRadius":
878
+ case "borderWidth":
879
+ case "borderTopWidth":
880
+ case "borderLeftWidth":
881
+ case "borderRightWidth":
882
+ case "borderBottomWidth":
883
+ case "textIndent":
884
+ return !0;
885
+ default:
886
+ return !1;
887
+ }
888
+ }
889
+ function Be(e) {
890
+ return ot || (Mi = new f({ canSelfClose: !0 }), ot = Object.assign(/* @__PURE__ */ Object.create(null), { base: new f({ isVoid: !0 }), meta: new f({ isVoid: !0 }), area: new f({ isVoid: !0 }), embed: new f({ isVoid: !0 }), link: new f({ isVoid: !0 }), img: new f({ isVoid: !0 }), input: new f({ isVoid: !0 }), param: new f({ isVoid: !0 }), hr: new f({ isVoid: !0 }), br: new f({ isVoid: !0 }), source: new f({ isVoid: !0 }), track: new f({ isVoid: !0 }), wbr: new f({ isVoid: !0 }), p: new f({ closedByChildren: ["address", "article", "aside", "blockquote", "div", "dl", "fieldset", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hgroup", "hr", "main", "nav", "ol", "p", "pre", "section", "table", "ul"], closedByParent: !0 }), thead: new f({ closedByChildren: ["tbody", "tfoot"] }), tbody: new f({ closedByChildren: ["tbody", "tfoot"], closedByParent: !0 }), tfoot: new f({ closedByChildren: ["tbody"], closedByParent: !0 }), tr: new f({ closedByChildren: ["tr"], closedByParent: !0 }), td: new f({ closedByChildren: ["td", "th"], closedByParent: !0 }), th: new f({ closedByChildren: ["td", "th"], closedByParent: !0 }), col: new f({ isVoid: !0 }), svg: new f({ implicitNamespacePrefix: "svg" }), foreignObject: new f({ implicitNamespacePrefix: "svg", preventNamespaceInheritance: !0 }), math: new f({ implicitNamespacePrefix: "math" }), li: new f({ closedByChildren: ["li"], closedByParent: !0 }), dt: new f({ closedByChildren: ["dt", "dd"] }), dd: new f({ closedByChildren: ["dt", "dd"], closedByParent: !0 }), rb: new f({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: !0 }), rt: new f({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: !0 }), rtc: new f({ closedByChildren: ["rb", "rtc", "rp"], closedByParent: !0 }), rp: new f({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: !0 }), optgroup: new f({ closedByChildren: ["optgroup"], closedByParent: !0 }), option: new f({ closedByChildren: ["option", "optgroup"], closedByParent: !0 }), pre: new f({ ignoreFirstLf: !0 }), listing: new f({ ignoreFirstLf: !0 }), style: new f({ contentType: I.RAW_TEXT }), script: new f({ contentType: I.RAW_TEXT }), title: new f({ contentType: { default: I.ESCAPABLE_RAW_TEXT, svg: I.PARSABLE_DATA } }), textarea: new f({ contentType: I.ESCAPABLE_RAW_TEXT, ignoreFirstLf: !0 }) }), new Ii().allKnownElementNames().forEach((t) => {
891
+ !ot[t] && Me(t) === null && (ot[t] = new f({ canSelfClose: !1 }));
892
+ })), ot[e] ?? Mi;
893
+ }
894
+ function lt(e) {
895
+ return e >= 9 && e <= 32 || e == 160;
896
+ }
897
+ function ct(e) {
898
+ return 48 <= e && e <= 57;
899
+ }
900
+ function Fe(e) {
901
+ return e >= 97 && e <= 122 || e >= 65 && e <= 90;
902
+ }
903
+ function Bi(e) {
904
+ return e >= 97 && e <= 102 || e >= 65 && e <= 70 || ct(e);
905
+ }
906
+ function ut(e) {
907
+ return e === 10 || e === 13;
908
+ }
909
+ function xr(e) {
910
+ return 48 <= e && e <= 55;
911
+ }
912
+ function Ut(e) {
913
+ return e === 39 || e === 34 || e === 96;
914
+ }
915
+ function Wt(e, t, r = null) {
916
+ let n = [], i = e.visit ? (s) => e.visit(s, r) || s.visit(e, r) : (s) => s.visit(e, r);
917
+ return t.forEach((s) => {
918
+ let a = i(s);
919
+ a && n.push(a);
920
+ }), n;
921
+ }
922
+ function ns(e, t, r, n = {}) {
923
+ let i = new Oo(new ht(e, t), r, n);
924
+ return i.tokenize(), new xo(qo(i.tokens), i.errors, i.nonNormalizedIcuExpressions);
925
+ }
926
+ function be(e) {
927
+ return `Unexpected character "${e === 0 ? "EOF" : String.fromCharCode(e)}"`;
928
+ }
929
+ function Qi(e) {
930
+ return `Unknown entity "${e}" - use the "&#<decimal>;" or "&#x<hex>;" syntax`;
931
+ }
932
+ function Lo(e, t) {
933
+ return `Unable to parse entity "${t}" - ${e} character reference entities must end with ";"`;
934
+ }
935
+ function T(e) {
936
+ return !lt(e) || e === 0;
937
+ }
938
+ function we(e) {
939
+ return lt(e) || e === 62 || e === 60 || e === 47 || e === 39 || e === 34 || e === 61 || e === 0;
940
+ }
941
+ function Do(e) {
942
+ return (e < 97 || 122 < e) && (e < 65 || 90 < e) && (e < 48 || e > 57);
943
+ }
944
+ function Ro(e) {
945
+ return e === 59 || e === 0 || !Bi(e);
946
+ }
947
+ function Io(e) {
948
+ return e === 59 || e === 0 || !Fe(e);
949
+ }
950
+ function Mo(e) {
951
+ return e !== 125;
952
+ }
953
+ function Bo(e, t) {
954
+ return Ji(e) === Ji(t);
955
+ }
956
+ function Ji(e) {
957
+ return e >= 97 && e <= 122 ? e - 97 + 65 : e;
958
+ }
959
+ function Fo(e) {
960
+ return Fe(e) || ct(e) || e === 95;
961
+ }
962
+ function Zi(e) {
963
+ return e !== 59 && T(e);
964
+ }
965
+ function zt(e) {
966
+ return e === 95 || e >= 65 && e <= 90;
967
+ }
968
+ function es(e) {
969
+ return Fe(e) || ct(e) || e === 95;
970
+ }
971
+ function ts(e) {
972
+ return e === 47 || e === 62 || e === 60 || e === 0;
973
+ }
974
+ function qo(e) {
975
+ let t = [], r;
976
+ for (let n = 0; n < e.length; n++) {
977
+ let i = e[n];
978
+ r && r.type === l.TEXT && i.type === l.TEXT || r && r.type === l.ATTR_VALUE_TEXT && i.type === l.ATTR_VALUE_TEXT ? (r.parts[0] += i.parts[0], r.sourceSpan.end = i.sourceSpan.end) : (r = i, t.push(r));
979
+ }
980
+ return t;
981
+ }
982
+ function ss(e, t) {
983
+ return e.length > 0 && e[e.length - 1] === t;
984
+ }
985
+ function as(e, t) {
986
+ return Te[t] !== void 0 ? Te[t] || e : /^#x[a-f0-9]+$/i.test(t) ? String.fromCodePoint(parseInt(t.slice(2), 16)) : /^#\d+$/.test(t) ? String.fromCodePoint(parseInt(t.slice(1), 10)) : e;
987
+ }
988
+ function Qt(e, t = {}) {
989
+ let { canSelfClose: r = !1, allowHtmComponentClosingTags: n = !1, isTagNameCaseSensitive: i = !1, getTagContentType: s, tokenizeAngularBlocks: a = !1, tokenizeAngularLetDeclaration: o = !1, enableAngularSelectorlessSyntax: c = !1 } = t;
990
+ return Wo().parse(e, "angular-html-parser", { tokenizeExpansionForms: a, canSelfClose: r, allowHtmComponentClosingTags: n, tokenizeBlocks: a, tokenizeLet: o, selectorlessEnabled: c }, i, s);
991
+ }
992
+ function $o(e, t) {
993
+ for (let r of Go) r(e, t);
994
+ return e;
995
+ }
996
+ function zo(e) {
997
+ e.walk((t) => {
998
+ if (t.kind === "element" && t.tagDefinition.ignoreFirstLf && t.children.length > 0 && t.children[0].kind === "text" && t.children[0].value[0] === `
999
+ `) {
1000
+ let r = t.children[0];
1001
+ r.value.length === 1 ? t.removeChild(r) : r.value = r.value.slice(1);
1002
+ }
1003
+ });
1004
+ }
1005
+ function Yo(e) {
1006
+ let t = (r) => r.kind === "element" && r.prev?.kind === "ieConditionalStartComment" && r.prev.sourceSpan.end.offset === r.startSourceSpan.start.offset && r.firstChild?.kind === "ieConditionalEndComment" && r.firstChild.sourceSpan.start.offset === r.startSourceSpan.end.offset;
1007
+ e.walk((r) => {
1008
+ if (r.children) for (let n = 0; n < r.children.length; n++) {
1009
+ let i = r.children[n];
1010
+ if (!t(i)) continue;
1011
+ let s = i.prev, a = i.firstChild;
1012
+ r.removeChild(s), n--;
1013
+ let o = new h(s.sourceSpan.start, a.sourceSpan.end), c = new h(o.start, i.sourceSpan.end);
1014
+ i.condition = s.condition, i.sourceSpan = c, i.startSourceSpan = o, i.removeChild(a);
1015
+ }
1016
+ });
1017
+ }
1018
+ function jo(e, t, r) {
1019
+ e.walk((n) => {
1020
+ if (n.children) for (let i = 0; i < n.children.length; i++) {
1021
+ let s = n.children[i];
1022
+ if (s.kind !== "text" && !t(s)) continue;
1023
+ s.kind !== "text" && (s.kind = "text", s.value = r(s));
1024
+ let a = s.prev;
1025
+ !a || a.kind !== "text" || (a.value += s.value, a.sourceSpan = new h(a.sourceSpan.start, s.sourceSpan.end), n.removeChild(s), i--);
1026
+ }
1027
+ });
1028
+ }
1029
+ function Xo(e) {
1030
+ return jo(e, (t) => t.kind === "cdata", (t) => `<![CDATA[${t.value}]]>`);
1031
+ }
1032
+ function Ko(e) {
1033
+ let t = (r) => r.kind === "element" && r.attrs.length === 0 && r.children.length === 1 && r.firstChild.kind === "text" && !x.hasWhitespaceCharacter(r.children[0].value) && !r.firstChild.hasLeadingSpaces && !r.firstChild.hasTrailingSpaces && r.isLeadingSpaceSensitive && !r.hasLeadingSpaces && r.isTrailingSpaceSensitive && !r.hasTrailingSpaces && r.prev?.kind === "text" && r.next?.kind === "text";
1034
+ e.walk((r) => {
1035
+ if (r.children) for (let n = 0; n < r.children.length; n++) {
1036
+ let i = r.children[n];
1037
+ if (!t(i)) continue;
1038
+ let s = i.prev, a = i.next;
1039
+ s.value += `<${i.rawName}>` + i.firstChild.value + `</${i.rawName}>` + a.value, s.sourceSpan = new h(s.sourceSpan.start, a.sourceSpan.end), s.isTrailingSpaceSensitive = a.isTrailingSpaceSensitive, s.hasTrailingSpaces = a.hasTrailingSpaces, r.removeChild(i), n--, r.removeChild(a);
1040
+ }
1041
+ });
1042
+ }
1043
+ function Qo(e, t) {
1044
+ if (t.parser === "html") return;
1045
+ let r = /\{\{(.+?)\}\}/su;
1046
+ e.walk((n) => {
1047
+ if (An(n, t)) for (let i of n.children) {
1048
+ if (i.kind !== "text") continue;
1049
+ let s = i.sourceSpan.start, a = null, o = i.value.split(r);
1050
+ for (let c = 0; c < o.length; c++, s = a) {
1051
+ let u = o[c];
1052
+ if (c % 2 === 0) {
1053
+ a = s.moveBy(u.length), u.length > 0 && n.insertChildBefore(i, { kind: "text", value: u, sourceSpan: new h(s, a) });
1054
+ continue;
1055
+ }
1056
+ a = s.moveBy(u.length + 4), n.insertChildBefore(i, { kind: "interpolation", sourceSpan: new h(s, a), children: u.length === 0 ? [] : [{ kind: "text", value: u, sourceSpan: new h(s.moveBy(2), a.moveBy(-2)) }] });
1057
+ }
1058
+ n.removeChild(i);
1059
+ }
1060
+ });
1061
+ }
1062
+ function Jo(e, t) {
1063
+ e.walk((r) => {
1064
+ let n = r.$children;
1065
+ if (!n) return;
1066
+ if (n.length === 0 || n.length === 1 && n[0].kind === "text" && x.trim(n[0].value).length === 0) {
1067
+ r.hasDanglingSpaces = n.length > 0, r.$children = [];
1068
+ return;
1069
+ }
1070
+ let i = yn(r, t), s = dr(r);
1071
+ if (!i) for (let a = 0; a < n.length; a++) {
1072
+ let o = n[a];
1073
+ if (o.kind !== "text") continue;
1074
+ let { leadingWhitespace: c, text: u, trailingWhitespace: p } = kn(o.value), d = o.prev, S = o.next;
1075
+ u ? (o.value = u, o.sourceSpan = new h(o.sourceSpan.start.moveBy(c.length), o.sourceSpan.end.moveBy(-p.length)), c && (d && (d.hasTrailingSpaces = !0), o.hasLeadingSpaces = !0), p && (o.hasTrailingSpaces = !0, S && (S.hasLeadingSpaces = !0))) : (r.removeChild(o), a--, (c || p) && (d && (d.hasTrailingSpaces = !0), S && (S.hasLeadingSpaces = !0)));
1076
+ }
1077
+ r.isWhitespaceSensitive = i, r.isIndentationSensitive = s;
1078
+ });
1079
+ }
1080
+ function Zo(e) {
1081
+ e.walk((t) => {
1082
+ t.isSelfClosing = !t.children || t.kind === "element" && (t.tagDefinition.isVoid || t.endSourceSpan && t.startSourceSpan.start === t.endSourceSpan.start && t.startSourceSpan.end === t.endSourceSpan.end);
1083
+ });
1084
+ }
1085
+ function el(e, t) {
1086
+ e.walk((r) => {
1087
+ r.kind === "element" && (r.hasHtmComponentClosingTag = r.endSourceSpan && /^<\s*\/\s*\/\s*>$/u.test(t.originalText.slice(r.endSourceSpan.start.offset, r.endSourceSpan.end.offset)));
1088
+ });
1089
+ }
1090
+ function tl(e, t) {
1091
+ e.walk((r) => {
1092
+ r.cssDisplay = Bn(r, t);
1093
+ });
1094
+ }
1095
+ function rl(e, t) {
1096
+ e.walk((r) => {
1097
+ let { children: n } = r;
1098
+ if (n) {
1099
+ if (n.length === 0) {
1100
+ r.isDanglingSpaceSensitive = Ln(r, t);
1101
+ return;
1102
+ }
1103
+ for (let i of n) i.isLeadingSpaceSensitive = xn(i, t), i.isTrailingSpaceSensitive = Nn(i, t);
1104
+ for (let i = 0; i < n.length; i++) {
1105
+ let s = n[i];
1106
+ s.isLeadingSpaceSensitive = (i === 0 || s.prev.isTrailingSpaceSensitive) && s.isLeadingSpaceSensitive, s.isTrailingSpaceSensitive = (i === n.length - 1 || s.next.isLeadingSpaceSensitive) && s.isTrailingSpaceSensitive;
1107
+ }
1108
+ }
1109
+ });
1110
+ }
1111
+ function nl(e, t, r) {
1112
+ let { node: n } = e;
1113
+ switch (n.kind) {
1114
+ case "root":
1115
+ return t.__onHtmlRoot && t.__onHtmlRoot(n), [C(Ie(e, t, r)), v];
1116
+ case "element":
1117
+ case "ieConditionalComment":
1118
+ return Pi(e, t, r);
1119
+ case "angularControlFlowBlock":
1120
+ return Ai(e, t, r);
1121
+ case "angularControlFlowBlockParameters":
1122
+ return xi(e, t, r);
1123
+ case "angularControlFlowBlockParameter":
1124
+ return x.trim(n.expression);
1125
+ case "angularLetDeclaration":
1126
+ return C(["@let ", C([n.id, " =", C(y([_, r("init")]))]), ";"]);
1127
+ case "angularLetDeclarationInitializer":
1128
+ return n.value;
1129
+ case "angularIcuExpression":
1130
+ return Ni(e, t, r);
1131
+ case "angularIcuCase":
1132
+ return Li(e, t, r);
1133
+ case "ieConditionalStartComment":
1134
+ case "ieConditionalEndComment":
1135
+ return [_e(n), me(n)];
1136
+ case "interpolation":
1137
+ return [_e(n, t), ...e.map(r, "children"), me(n, t)];
1138
+ case "text": {
1139
+ if (n.parent.kind === "interpolation") {
1140
+ let o = /\n[^\S\n]*$/u, c = o.test(n.value), u = c ? n.value.replace(o, "") : n.value;
1141
+ return [L(u), c ? v : ""];
1142
+ }
1143
+ let i = U(n, t), s = Ot(n), a = V(n, t);
1144
+ return s[0] = [i, s[0]], s.push([s.pop(), a]), kt(s);
1145
+ }
1146
+ case "docType":
1147
+ return [C([_e(n, t), " ", w(0, n.value.replace(/^html\b/iu, "html"), /\s+/gu, " ")]), me(n, t)];
1148
+ case "comment":
1149
+ return [U(n, t), L(t.originalText.slice(Q(n), te(n))), V(n, t)];
1150
+ case "attribute": {
1151
+ if (n.value === null) return n.rawName;
1152
+ let i = Sr(n.value), s = Rt(n, t) ? "" : pn(i, '"');
1153
+ return [n.rawName, "=", s, L(s === '"' ? w(0, i, '"', "&quot;") : w(0, i, "'", "&apos;")), s];
1154
+ }
1155
+ case "frontMatter":
1156
+ case "cdata":
1157
+ default:
1158
+ throw new mn(n, "HTML");
1159
+ }
1160
+ }
1161
+ function al(e, t) {
1162
+ let r = new SyntaxError(e + " (" + t.loc.start.line + ":" + t.loc.start.column + ")");
1163
+ return Object.assign(r, t);
1164
+ }
1165
+ function Jt(e) {
1166
+ return { ...ol, ...e };
1167
+ }
1168
+ function Gr(e) {
1169
+ let { canSelfClose: t, allowHtmComponentClosingTags: r, isTagNameCaseSensitive: n, shouldParseAsRawText: i, tokenizeAngularBlocks: s, tokenizeAngularLetDeclaration: a } = e;
1170
+ return { canSelfClose: t, allowHtmComponentClosingTags: r, isTagNameCaseSensitive: n, getTagContentType: i ? (...o) => i(...o) ? I.RAW_TEXT : void 0 : void 0, tokenizeAngularBlocks: s, tokenizeAngularLetDeclaration: a };
1171
+ }
1172
+ function ll(e, t) {
1173
+ let r = e.map(t);
1174
+ return r.some((n, i) => n !== e[i]) ? r : e;
1175
+ }
1176
+ function Es(e, t) {
1177
+ if (e.value) for (let { regex: r, parse: n } of cl) {
1178
+ let i = e.value.match(r);
1179
+ if (i) return n(e, i, t);
1180
+ }
1181
+ return null;
1182
+ }
1183
+ function ul(e, t, r) {
1184
+ let { openingTagSuffix: n, condition: i, data: s } = t.groups, a = 4 + n.length, o = e.sourceSpan.start.moveBy(a), c = o.moveBy(s.length), [u, p] = (() => {
1185
+ try {
1186
+ return [!0, r(s, o).children];
1187
+ } catch {
1188
+ return [!1, [{ kind: "text", value: s, sourceSpan: new h(o, c) }]];
1189
+ }
1190
+ })();
1191
+ return { kind: "ieConditionalComment", complete: u, children: p, condition: w(0, i.trim(), /\s+/gu, " "), sourceSpan: e.sourceSpan, startSourceSpan: new h(e.sourceSpan.start, o), endSourceSpan: new h(c, e.sourceSpan.end) };
1192
+ }
1193
+ function pl(e, t) {
1194
+ let { condition: r } = t.groups;
1195
+ return { kind: "ieConditionalStartComment", condition: w(0, r.trim(), /\s+/gu, " "), sourceSpan: e.sourceSpan };
1196
+ }
1197
+ function hl(e) {
1198
+ return { kind: "ieConditionalEndComment", sourceSpan: e.sourceSpan };
1199
+ }
1200
+ function Ts(e, t, r, n) {
1201
+ Wt(new Yr(), e.children, { parseOptions: r }), t && e.children.unshift(t);
1202
+ let i = new tr(e);
1203
+ return i.walk((s) => {
1204
+ if (s.kind === "comment") {
1205
+ let a = Es(s, n);
1206
+ a && s.parent.replaceChild(s, a);
1207
+ }
1208
+ ml(s), fl(s), dl(s);
1209
+ }), i;
1210
+ }
1211
+ function ml(e) {
1212
+ if (e.kind === "block") {
1213
+ if (e.name = w(0, e.name.toLowerCase(), /\s+/gu, " ").trim(), e.kind = "angularControlFlowBlock", !Re(e.parameters)) {
1214
+ delete e.parameters;
1215
+ return;
1216
+ }
1217
+ for (let t of e.parameters) t.kind = "angularControlFlowBlockParameter";
1218
+ e.parameters = { kind: "angularControlFlowBlockParameters", children: e.parameters, sourceSpan: new h(e.parameters[0].sourceSpan.start, F(0, e.parameters, -1).sourceSpan.end) };
1219
+ }
1220
+ }
1221
+ function fl(e) {
1222
+ e.kind === "letDeclaration" && (e.kind = "angularLetDeclaration", e.id = e.name, e.init = { kind: "angularLetDeclarationInitializer", sourceSpan: new h(e.valueSpan.start, e.valueSpan.end), value: e.value }, delete e.name, delete e.value);
1223
+ }
1224
+ function dl(e) {
1225
+ e.kind === "expansion" && (e.kind = "angularIcuExpression"), e.kind === "expansionCase" && (e.kind = "angularIcuCase");
1226
+ }
1227
+ function Cs(e, t) {
1228
+ let r = e.toLowerCase();
1229
+ return t(r) ? r : e;
1230
+ }
1231
+ function vs(e) {
1232
+ let t = e.name.startsWith(":") ? e.name.slice(1).split(":")[0] : null, r = e.nameSpan.toString(), n = t !== null && r.startsWith(`${t}:`), i = n ? r.slice(t.length + 1) : r;
1233
+ e.name = i, e.namespace = t, e.hasExplicitNamespace = n;
1234
+ }
1235
+ function gl(e) {
1236
+ switch (e.kind) {
1237
+ case "element":
1238
+ vs(e);
1239
+ for (let t of e.attrs) vs(t), t.valueSpan ? (t.value = t.valueSpan.toString(), /["']/u.test(t.value[0]) && (t.value = t.value.slice(1, -1))) : t.value = null;
1240
+ break;
1241
+ case "comment":
1242
+ e.value = e.sourceSpan.toString().slice(4, -3);
1243
+ break;
1244
+ case "text":
1245
+ e.value = e.sourceSpan.toString();
1246
+ break;
1247
+ }
1248
+ }
1249
+ function _l(e, t) {
1250
+ if (e.kind === "element") {
1251
+ let r = Be(t.isTagNameCaseSensitive ? e.name : e.name.toLowerCase());
1252
+ !e.namespace || e.namespace === r.implicitNamespacePrefix || ce(e) ? e.tagDefinition = r : e.tagDefinition = Be("");
1253
+ }
1254
+ }
1255
+ function Sl(e) {
1256
+ e.sourceSpan && e.endSourceSpan && (e.sourceSpan = new h(e.sourceSpan.start, e.endSourceSpan.end));
1257
+ }
1258
+ function El(e, t) {
1259
+ if (e.kind === "element" && (t.normalizeTagName && (!e.namespace || e.namespace === e.tagDefinition.implicitNamespacePrefix || ce(e)) && (e.name = Cs(e.name, (r) => _s.has(r))), t.normalizeAttributeName)) for (let r of e.attrs) r.namespace || (r.name = Cs(r.name, (n) => Zt.has(e.name) && (Zt.get("*").has(n) || Zt.get(e.name).has(n))));
1260
+ }
1261
+ function Xr(e, t) {
1262
+ let { rootNodes: r, errors: n } = Qt(e, Gr(t));
1263
+ return n.length > 0 && jr(n[0]), { parseOptions: t, rootNodes: r };
1264
+ }
1265
+ function bs(e, t) {
1266
+ let r = Gr(t), { rootNodes: n, errors: i } = Qt(e, r);
1267
+ if (n.some((u) => u.kind === "docType" && u.value === "html" || u.kind === "element" && u.name.toLowerCase() === "html")) return Xr(e, rr);
1268
+ let a, o = () => a ?? (a = Qt(e, { ...r, getTagContentType: void 0 })), c = (u) => {
1269
+ let { offset: p } = u.startSourceSpan.start;
1270
+ return o().rootNodes.find((d) => d.kind === "element" && d.startSourceSpan.start.offset === p) ?? u;
1271
+ };
1272
+ for (let [u, p] of n.entries()) if (p.kind === "element") {
1273
+ if (p.isVoid) i = o().errors, n[u] = c(p);
1274
+ else if (Cl(p)) {
1275
+ let { endSourceSpan: d, startSourceSpan: S } = p, m = o().errors.find((g) => g.span.start.offset > S.start.offset && g.span.start.offset < d.end.offset);
1276
+ m && jr(m), n[u] = c(p);
1277
+ }
1278
+ }
1279
+ return i.length > 0 && jr(i[0]), { parseOptions: t, rootNodes: n };
1280
+ }
1281
+ function Cl(e) {
1282
+ if (e.kind !== "element" || e.name !== "template") return !1;
1283
+ let t = e.attrs.find((r) => r.name === "lang")?.value;
1284
+ return !t || t === "html";
1285
+ }
1286
+ function jr(e) {
1287
+ let { msg: t, span: { start: r, end: n } } = e;
1288
+ throw gs(t, { loc: { start: { line: r.line + 1, column: r.col + 1 }, end: { line: n.line + 1, column: n.col + 1 } }, cause: e });
1289
+ }
1290
+ function vl(e, t, r, n, i, s) {
1291
+ let { offset: a } = n, o = w(0, t.slice(0, a), /[^\n]/gu, " ") + r, c = Kr(o, e, { ...i, shouldParseFrontMatter: !1 }, s);
1292
+ c.sourceSpan = new h(n, F(0, c.children, -1).sourceSpan.end);
1293
+ let u = c.children[0];
1294
+ return u.length === a ? c.children.shift() : (u.sourceSpan = new h(u.sourceSpan.start.moveBy(a), u.sourceSpan.end), u.value = u.value.slice(a)), c;
1295
+ }
1296
+ function Kr(e, t, r, n = {}) {
1297
+ let { frontMatter: i, content: s } = r.shouldParseFrontMatter ? pr(e) : { content: e }, a = new ht(e, n.filepath), o = new qe(a, 0, 0, 0), c = o.moveBy(e.length), { parseOptions: u, rootNodes: p } = t(s, r), d = { kind: "root", sourceSpan: new h(o, c), children: p }, S;
1298
+ if (i) {
1299
+ let [g, E] = [i.start, i.end].map((P) => new qe(a, P.index, P.line - 1, P.column));
1300
+ S = { ...i, kind: "frontMatter", sourceSpan: new h(g, E) };
1301
+ }
1302
+ return Ts(d, S, u, (g, E) => vl(t, e, g, E, u, n));
1303
+ }
1304
+ function dt(e) {
1305
+ let t = Jt(e), r = t.name === "vue" ? bs : Xr;
1306
+ return { parse: (n, i) => Kr(n, r, t, i), hasPragma: vi, hasIgnorePragma: Ti, astFormat: "html", locStart: Q, locEnd: te };
1307
+ }
1308
+ var Jr, Zr, ks, en, ir, As, $e, tn, ws, Ae, ys, xs, w, Ls, F, Ps, ze, Ye, je, _t, ye, xe, St, Ne, Le, Pe, Oe, Et, Ct, Y, vt, De, Tt, bt, Ds, sr, rn, D, wt, sn, an, j, _, k, Ms, v, Bs, nn, cn, un, Fs, qs, pn, lr, hn, Vs, Us, x, cr, mn, Ws, Gs, dn, gn, zs, Ys, _n, Xs, En, Cn, Re, ea, At, yt, le, Xe, pr, bn, hr, wn, mr, ce, aa, fr, kn, Ea, Vn, Un, Er, va, Gn, $n, zn, Cr, wa, Yn, jn, Xn, Kn, Aa, ya, xa, Na, Zn, La, ei, ti, ri, Oa, ii, si, vr, G, Ia, ui, Fa, pi, Q, te, hi, Ft, Ya, fi, nt, Xa, di, R, gi, Qa, _i, Si, Ei, Ci, vi, Ti, bi, wi, I, kr, Ar, Ee, Za, Vt, Di, eo, to, ro, no, io, Ri, so, Ii, f, Mi, ot, qe, ht, h, Fi, re, Ce, Hi, Vi, Ui, Wi, Gi, ne, $i, zi, ve, J, Yi, Nr, Lr, Pr, Te, oo, l, xo, No, Mr, Po, mt, Oo, is, Ho, Vr, N, Vo, ls, Uo, us, Ur, Wo, Go, ps, il, hs, ms, Wr, fs, sl, ds, Qr, gs, ol, Zt, _s, er, Ss, ae, $r, zr, We, tr, cl, Yr, rr, Tl, bl, wl, kl, Al, yl, xl, init_html = __esm({
1309
+ "../../node_modules/.pnpm/prettier@3.7.4/node_modules/prettier/plugins/html.mjs"() {
1310
+ init_cjs_shims();
1311
+ Jr = Object.defineProperty, Zr = (e) => {
1312
+ throw TypeError(e);
1313
+ }, ks = (e, t, r) => t in e ? Jr(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, en = (e, t) => {
1314
+ for (var r in t) Jr(e, r, { get: t[r], enumerable: !0 });
1315
+ }, ir = (e, t, r) => ks(e, typeof t != "symbol" ? t + "" : t, r), As = (e, t, r) => t.has(e) || Zr("Cannot " + r), $e = (e, t, r) => (As(e, t, "read from private field"), r ? r.call(e) : t.get(e)), tn = (e, t, r) => t.has(e) ? Zr("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, r), ws = {};
1316
+ en(ws, { languages: () => ms, options: () => ds, parsers: () => Qr, printers: () => xl });
1317
+ Ae = (e, t) => (r, n, ...i) => r | 1 && n == null ? void 0 : (t.call(n) ?? n[e]).apply(n, i), ys = String.prototype.replaceAll ?? function(e, t) {
1318
+ return e.global ? this.replace(e, t) : this.split(e).join(t);
1319
+ }, xs = Ae("replaceAll", function() {
1320
+ if (typeof this == "string") return ys;
1321
+ }), w = xs;
1322
+ Ls = Ae("at", function() {
1323
+ if (Array.isArray(this) || typeof this == "string") return Ns;
1324
+ }), F = Ls, Ps = () => {
1325
+ }, ze = Ps, Ye = "string", je = "array", _t = "cursor", ye = "indent", xe = "align", St = "trim", Ne = "group", Le = "fill", Pe = "if-break", Oe = "indent-if-break", Et = "line-suffix", Ct = "line-suffix-boundary", Y = "line", vt = "label", De = "break-parent", Tt = /* @__PURE__ */ new Set([_t, ye, xe, St, Ne, Le, Pe, Oe, Et, Ct, Y, vt, De]);
1326
+ bt = Os, Ds = (e) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(e);
1327
+ sr = class extends Error {
1328
+ name = "InvalidDocError";
1329
+ constructor(t) {
1330
+ super(Rs(t)), this.doc = t;
1331
+ }
1332
+ }, rn = sr;
1333
+ D = ze, wt = ze, sn = ze, an = ze;
1334
+ j = { type: De };
1335
+ _ = { type: Y }, k = { type: Y, soft: !0 }, Ms = { type: Y, hard: !0 }, v = [Ms, j], Bs = { type: Y, hard: !0, literal: !0 }, nn = [Bs, j], cn = Object.freeze({ character: "'", codePoint: 39 }), un = Object.freeze({ character: '"', codePoint: 34 }), Fs = Object.freeze({ preferred: cn, alternate: un }), qs = Object.freeze({ preferred: un, alternate: cn });
1336
+ pn = Hs;
1337
+ lr = class {
1338
+ #e;
1339
+ constructor(t) {
1340
+ this.#e = new Set(t);
1341
+ }
1342
+ getLeadingWhitespaceCount(t) {
1343
+ let r = this.#e, n = 0;
1344
+ for (let i = 0; i < t.length && r.has(t.charAt(i)); i++) n++;
1345
+ return n;
1346
+ }
1347
+ getTrailingWhitespaceCount(t) {
1348
+ let r = this.#e, n = 0;
1349
+ for (let i = t.length - 1; i >= 0 && r.has(t.charAt(i)); i--) n++;
1350
+ return n;
1351
+ }
1352
+ getLeadingWhitespace(t) {
1353
+ let r = this.getLeadingWhitespaceCount(t);
1354
+ return t.slice(0, r);
1355
+ }
1356
+ getTrailingWhitespace(t) {
1357
+ let r = this.getTrailingWhitespaceCount(t);
1358
+ return t.slice(t.length - r);
1359
+ }
1360
+ hasLeadingWhitespace(t) {
1361
+ return this.#e.has(t.charAt(0));
1362
+ }
1363
+ hasTrailingWhitespace(t) {
1364
+ return this.#e.has(F(0, t, -1));
1365
+ }
1366
+ trimStart(t) {
1367
+ let r = this.getLeadingWhitespaceCount(t);
1368
+ return t.slice(r);
1369
+ }
1370
+ trimEnd(t) {
1371
+ let r = this.getTrailingWhitespaceCount(t);
1372
+ return t.slice(0, t.length - r);
1373
+ }
1374
+ trim(t) {
1375
+ return this.trimEnd(this.trimStart(t));
1376
+ }
1377
+ split(t, r = !1) {
1378
+ let n = `[${or([...this.#e].join(""))}]+`, i = new RegExp(r ? `(${n})` : n, "u");
1379
+ return t.split(i);
1380
+ }
1381
+ hasWhitespaceCharacter(t) {
1382
+ let r = this.#e;
1383
+ return Array.prototype.some.call(t, (n) => r.has(n));
1384
+ }
1385
+ hasNonWhitespaceCharacter(t) {
1386
+ let r = this.#e;
1387
+ return Array.prototype.some.call(t, (n) => !r.has(n));
1388
+ }
1389
+ isWhitespaceOnly(t) {
1390
+ let r = this.#e;
1391
+ return Array.prototype.every.call(t, (n) => r.has(n));
1392
+ }
1393
+ #t(t) {
1394
+ let r = Number.POSITIVE_INFINITY;
1395
+ for (let n of t.split(`
1396
+ `)) {
1397
+ if (n.length === 0) continue;
1398
+ let i = this.getLeadingWhitespaceCount(n);
1399
+ if (i === 0) return 0;
1400
+ n.length !== i && i < r && (r = i);
1401
+ }
1402
+ return r === Number.POSITIVE_INFINITY ? 0 : r;
1403
+ }
1404
+ dedentString(t) {
1405
+ let r = this.#t(t);
1406
+ return r === 0 ? t : t.split(`
1407
+ `).map((n) => n.slice(r)).join(`
1408
+ `);
1409
+ }
1410
+ }, hn = lr, Vs = [" ", `
1411
+ `, "\f", "\r", " "], Us = new hn(Vs), x = Us, cr = class extends Error {
1412
+ name = "UnexpectedNodeError";
1413
+ constructor(t, r, n = "type") {
1414
+ super(`Unexpected ${r} node ${n}: ${JSON.stringify(t[n])}.`), this.node = t;
1415
+ }
1416
+ }, mn = cr, Ws = /* @__PURE__ */ new Set(["sourceSpan", "startSourceSpan", "endSourceSpan", "nameSpan", "valueSpan", "keySpan", "tagDefinition", "tokens", "valueTokens", "switchValueSourceSpan", "expSourceSpan", "valueSourceSpan"]), Gs = /* @__PURE__ */ new Set(["if", "else if", "for", "switch", "case"]);
1417
+ fn.ignoredProperties = Ws;
1418
+ dn = fn;
1419
+ gn = $s, zs = Array.prototype.toReversed ?? function() {
1420
+ return [...this].reverse();
1421
+ }, Ys = Ae("toReversed", function() {
1422
+ if (Array.isArray(this)) return zs;
1423
+ }), _n = Ys;
1424
+ Xs = js();
1425
+ En = (e) => String(e).split(/[/\\]/u).pop(), Cn = (e) => String(e).startsWith("file:");
1426
+ Re = Js;
1427
+ ea = void 0;
1428
+ At = ta, yt = Symbol.for("PRETTIER_IS_FRONT_MATTER");
1429
+ le = ra, Xe = 3;
1430
+ pr = ia, bn = "inline", hr = { area: "none", base: "none", basefont: "none", datalist: "none", head: "none", link: "none", meta: "none", noembed: "none", noframes: "none", param: "block", rp: "none", script: "block", style: "none", template: "inline", title: "none", html: "block", body: "block", address: "block", blockquote: "block", center: "block", dialog: "block", div: "block", figure: "block", figcaption: "block", footer: "block", form: "block", header: "block", hr: "block", legend: "block", listing: "block", main: "block", p: "block", plaintext: "block", pre: "block", search: "block", xmp: "block", slot: "contents", ruby: "ruby", rt: "ruby-text", article: "block", aside: "block", h1: "block", h2: "block", h3: "block", h4: "block", h5: "block", h6: "block", hgroup: "block", nav: "block", section: "block", dir: "block", dd: "block", dl: "block", dt: "block", menu: "block", ol: "block", ul: "block", li: "list-item", table: "table", caption: "table-caption", colgroup: "table-column-group", col: "table-column", thead: "table-header-group", tbody: "table-row-group", tfoot: "table-footer-group", tr: "table-row", td: "table-cell", th: "table-cell", input: "inline-block", button: "inline-block", fieldset: "block", details: "block", summary: "block", marquee: "inline-block", select: "inline-block", source: "block", track: "block", meter: "inline-block", progress: "inline-block", object: "inline-block", video: "inline-block", audio: "inline-block", option: "block", optgroup: "block" }, wn = "normal", mr = { listing: "pre", plaintext: "pre", pre: "pre", xmp: "pre", nobr: "nowrap", table: "initial", textarea: "pre-wrap" };
1431
+ ce = sa, aa = (e) => w(0, e, /^[\t\f\r ]*\n/gu, ""), fr = (e) => aa(x.trimEnd(e)), kn = (e) => {
1432
+ let t = e, r = x.getLeadingWhitespace(t);
1433
+ r && (t = t.slice(r.length));
1434
+ let n = x.getTrailingWhitespace(t);
1435
+ return n && (t = t.slice(0, -n.length)), { leadingWhitespace: r, trailingWhitespace: n, text: t };
1436
+ };
1437
+ Ea = /* @__PURE__ */ new Set(["template", "style", "script"]);
1438
+ Vn = /\{\{(.+?)\}\}/su, Un = ({ node: { value: e } }) => Vn.test(e);
1439
+ Er = (e) => (t, r, n) => A(b(n.node), t, { parser: e }, W), va = [{ test(e) {
1440
+ let t = e.node.fullName;
1441
+ return t.startsWith("(") && t.endsWith(")") || t.startsWith("on-");
1442
+ }, print: Er("__ng_action") }, { test(e) {
1443
+ let t = e.node.fullName;
1444
+ return t.startsWith("[") && t.endsWith("]") || /^bind(?:on)?-/u.test(t) || /^ng-(?:if|show|hide|class|style)$/u.test(t);
1445
+ }, print: Er("__ng_binding") }, { test: (e) => e.node.fullName.startsWith("*"), print: Er("__ng_directive") }, { test: (e) => /^i18n(?:-.+)?$/u.test(e.node.fullName), print: Ta }, { test: Un, print: Wn }].map(({ test: e, print: t }) => ({ test: (r, n) => n.parser === "angular" && e(r), print: t }));
1446
+ Gn = va, $n = ({ node: e }, t) => !t.parentParser && e.fullName === "class" && !e.value.includes("{{"), zn = (e, t, r) => b(r.node).trim().split(/\s+/u).join(" "), Cr = ["onabort", "onafterprint", "onauxclick", "onbeforeinput", "onbeforematch", "onbeforeprint", "onbeforetoggle", "onbeforeunload", "onblur", "oncancel", "oncanplay", "oncanplaythrough", "onchange", "onclick", "onclose", "oncommand", "oncontextlost", "oncontextmenu", "oncontextrestored", "oncopy", "oncuechange", "oncut", "ondblclick", "ondrag", "ondragend", "ondragenter", "ondragleave", "ondragover", "ondragstart", "ondrop", "ondurationchange", "onemptied", "onended", "onerror", "onfocus", "onformdata", "onhashchange", "oninput", "oninvalid", "onkeydown", "onkeypress", "onkeyup", "onlanguagechange", "onload", "onloadeddata", "onloadedmetadata", "onloadstart", "onmessage", "onmessageerror", "onmousedown", "onmouseenter", "onmouseleave", "onmousemove", "onmouseout", "onmouseover", "onmouseup", "onoffline", "ononline", "onpagehide", "onpagereveal", "onpageshow", "onpageswap", "onpaste", "onpause", "onplay", "onplaying", "onpopstate", "onprogress", "onratechange", "onrejectionhandled", "onreset", "onresize", "onscroll", "onscrollend", "onsecuritypolicyviolation", "onseeked", "onseeking", "onselect", "onslotchange", "onstalled", "onstorage", "onsubmit", "onsuspend", "ontimeupdate", "ontoggle", "onunhandledrejection", "onunload", "onvolumechange", "onwaiting", "onwheel"], wa = new Set(Cr), Yn = ({ node: e }, t) => wa.has(e.fullName) && !t.parentParser && !e.value.includes("{{"), jn = (e, t, r) => A(b(r.node), e, { parser: "babel", __isHtmlInlineEventHandler: !0 }, () => !1);
1447
+ Xn = ka, Kn = ({ node: e }, t) => e.fullName === "allow" && !t.parentParser && e.parent.fullName === "iframe" && !e.value.includes("{{");
1448
+ Aa = /^[ \t\n\r\u000c]+/, ya = /^[, \t\n\r\u000c]+/, xa = /^[^ \t\n\r\u000c]+/, Na = /[,]+$/, Zn = /^\d+$/, La = /^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/;
1449
+ ei = Pa, ti = (e) => e.node.fullName === "srcset" && (e.parent.fullName === "img" || e.parent.fullName === "source"), ri = { width: "w", height: "h", density: "x" }, Oa = Object.keys(ri);
1450
+ ii = ({ node: e }, t) => e.fullName === "style" && !t.parentParser && !e.value.includes("{{"), si = async (e, t, r) => K(await e(b(r.node), { parser: "css", __isHTMLStyleAttribute: !0 })), vr = /* @__PURE__ */ new WeakMap();
1451
+ G = Da;
1452
+ Ia = [{ test: (e) => e.node.fullName === "v-for", print: li }, { test: (e, t) => e.node.fullName === "generic" && Dt(e.parent, t), print: ai }, { test: ({ node: e }, t) => qn(e) || Hn(e, t), print: oi }, { test(e) {
1453
+ let t = e.node.fullName;
1454
+ return t.startsWith("@") || t.startsWith("v-on:");
1455
+ }, print: Ma }, { test(e) {
1456
+ let t = e.node.fullName;
1457
+ return t.startsWith(":") || t.startsWith(".") || t.startsWith("v-bind:");
1458
+ }, print: Ba }, { test: (e) => e.node.fullName.startsWith("v-"), print: ci }].map(({ test: e, print: t }) => ({ test: (r, n) => n.parser === "vue" && e(r, n), print: t }));
1459
+ ui = Ia, Fa = [{ test: ti, print: ni }, { test: ii, print: si }, { test: Yn, print: jn }, { test: $n, print: zn }, { test: Kn, print: Qn }, ...ui, ...Gn].map(({ test: e, print: t }) => ({ test: e, print: Ha(t) }));
1460
+ pi = qa, Q = (e) => e.sourceSpan.start.offset, te = (e) => e.sourceSpan.end.offset;
1461
+ hi = "<!doctype";
1462
+ Ft = za, Ya = /* @__PURE__ */ new Set(["if", "else if", "for", "switch", "case"]);
1463
+ fi = ja, nt = null;
1464
+ Xa = 10;
1465
+ for (let e = 0; e <= Xa; e++) it();
1466
+ di = Ka, R = [["children"], []], gi = { root: R[0], element: ["attrs", "children"], ieConditionalComment: R[0], ieConditionalStartComment: R[1], ieConditionalEndComment: R[1], interpolation: R[0], text: R[0], docType: R[1], comment: R[1], attribute: R[1], cdata: R[1], angularControlFlowBlock: ["children", "parameters"], angularControlFlowBlockParameters: R[0], angularControlFlowBlockParameter: R[1], angularLetDeclaration: ["init"], angularLetDeclarationInitializer: R[1], angularIcuExpression: ["cases"], angularIcuCase: ["expression"] }, Qa = di(gi, "kind"), _i = Qa, Si = "format", Ei = /^\s*<!--\s*@(?:noformat|noprettier)\s*-->/u, Ci = /^\s*<!--\s*@(?:format|prettier)\s*-->/u, vi = (e) => Ci.test(e), Ti = (e) => Ei.test(e), bi = (e) => `<!-- @${Si} -->
1467
+
1468
+ ${e}`, wi = /* @__PURE__ */ new Map([["if", /* @__PURE__ */ new Set(["else if", "else"])], ["else if", /* @__PURE__ */ new Set(["else if", "else"])], ["for", /* @__PURE__ */ new Set(["empty"])], ["defer", /* @__PURE__ */ new Set(["placeholder", "error", "loading"])], ["placeholder", /* @__PURE__ */ new Set(["placeholder", "error", "loading"])], ["error", /* @__PURE__ */ new Set(["placeholder", "error", "loading"])], ["loading", /* @__PURE__ */ new Set(["placeholder", "error", "loading"])]]);
1469
+ I = (function(e) {
1470
+ return e[e.RAW_TEXT = 0] = "RAW_TEXT", e[e.ESCAPABLE_RAW_TEXT = 1] = "ESCAPABLE_RAW_TEXT", e[e.PARSABLE_DATA = 2] = "PARSABLE_DATA", e;
1471
+ })({});
1472
+ kr = { name: "custom-elements" }, Ar = { name: "no-errors-schema" }, Ee = (function(e) {
1473
+ return e[e.NONE = 0] = "NONE", e[e.HTML = 1] = "HTML", e[e.STYLE = 2] = "STYLE", e[e.SCRIPT = 3] = "SCRIPT", e[e.URL = 4] = "URL", e[e.RESOURCE_URL = 5] = "RESOURCE_URL", e;
1474
+ })({}), Za = /-+([a-z0-9])/g;
1475
+ Di = class {
1476
+ }, eo = "boolean", to = "number", ro = "string", no = "object", io = ["[Element]|textContent,%ariaActiveDescendantElement,%ariaAtomic,%ariaAutoComplete,%ariaBusy,%ariaChecked,%ariaColCount,%ariaColIndex,%ariaColIndexText,%ariaColSpan,%ariaControlsElements,%ariaCurrent,%ariaDescribedByElements,%ariaDescription,%ariaDetailsElements,%ariaDisabled,%ariaErrorMessageElements,%ariaExpanded,%ariaFlowToElements,%ariaHasPopup,%ariaHidden,%ariaInvalid,%ariaKeyShortcuts,%ariaLabel,%ariaLabelledByElements,%ariaLevel,%ariaLive,%ariaModal,%ariaMultiLine,%ariaMultiSelectable,%ariaOrientation,%ariaOwnsElements,%ariaPlaceholder,%ariaPosInSet,%ariaPressed,%ariaReadOnly,%ariaRelevant,%ariaRequired,%ariaRoleDescription,%ariaRowCount,%ariaRowIndex,%ariaRowIndexText,%ariaRowSpan,%ariaSelected,%ariaSetSize,%ariaSort,%ariaValueMax,%ariaValueMin,%ariaValueNow,%ariaValueText,%classList,className,elementTiming,id,innerHTML,*beforecopy,*beforecut,*beforepaste,*fullscreenchange,*fullscreenerror,*search,*webkitfullscreenchange,*webkitfullscreenerror,outerHTML,%part,#scrollLeft,#scrollTop,slot,*message,*mozfullscreenchange,*mozfullscreenerror,*mozpointerlockchange,*mozpointerlockerror,*webglcontextcreationerror,*webglcontextlost,*webglcontextrestored", "[HTMLElement]^[Element]|accessKey,autocapitalize,!autofocus,contentEditable,dir,!draggable,enterKeyHint,!hidden,!inert,innerText,inputMode,lang,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contextmenu,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,outerText,!spellcheck,%style,#tabIndex,title,!translate,virtualKeyboardPolicy", "abbr,address,article,aside,b,bdi,bdo,cite,content,code,dd,dfn,dt,em,figcaption,figure,footer,header,hgroup,i,kbd,main,mark,nav,noscript,rb,rp,rt,rtc,ruby,s,samp,search,section,small,strong,sub,sup,u,var,wbr^[HTMLElement]|accessKey,autocapitalize,!autofocus,contentEditable,dir,!draggable,enterKeyHint,!hidden,innerText,inputMode,lang,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contextmenu,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,outerText,!spellcheck,%style,#tabIndex,title,!translate,virtualKeyboardPolicy", "media^[HTMLElement]|!autoplay,!controls,%controlsList,%crossOrigin,#currentTime,!defaultMuted,#defaultPlaybackRate,!disableRemotePlayback,!loop,!muted,*encrypted,*waitingforkey,#playbackRate,preload,!preservesPitch,src,%srcObject,#volume", ":svg:^[HTMLElement]|!autofocus,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contextmenu,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,%style,#tabIndex", ":svg:graphics^:svg:|", ":svg:animation^:svg:|*begin,*end,*repeat", ":svg:geometry^:svg:|", ":svg:componentTransferFunction^:svg:|", ":svg:gradient^:svg:|", ":svg:textContent^:svg:graphics|", ":svg:textPositioning^:svg:textContent|", "a^[HTMLElement]|charset,coords,download,hash,host,hostname,href,hreflang,name,password,pathname,ping,port,protocol,referrerPolicy,rel,%relList,rev,search,shape,target,text,type,username", "area^[HTMLElement]|alt,coords,download,hash,host,hostname,href,!noHref,password,pathname,ping,port,protocol,referrerPolicy,rel,%relList,search,shape,target,username", "audio^media|", "br^[HTMLElement]|clear", "base^[HTMLElement]|href,target", "body^[HTMLElement]|aLink,background,bgColor,link,*afterprint,*beforeprint,*beforeunload,*blur,*error,*focus,*hashchange,*languagechange,*load,*message,*messageerror,*offline,*online,*pagehide,*pageshow,*popstate,*rejectionhandled,*resize,*scroll,*storage,*unhandledrejection,*unload,text,vLink", "button^[HTMLElement]|!disabled,formAction,formEnctype,formMethod,!formNoValidate,formTarget,name,type,value", "canvas^[HTMLElement]|#height,#width", "content^[HTMLElement]|select", "dl^[HTMLElement]|!compact", "data^[HTMLElement]|value", "datalist^[HTMLElement]|", "details^[HTMLElement]|!open", "dialog^[HTMLElement]|!open,returnValue", "dir^[HTMLElement]|!compact", "div^[HTMLElement]|align", "embed^[HTMLElement]|align,height,name,src,type,width", "fieldset^[HTMLElement]|!disabled,name", "font^[HTMLElement]|color,face,size", "form^[HTMLElement]|acceptCharset,action,autocomplete,encoding,enctype,method,name,!noValidate,target", "frame^[HTMLElement]|frameBorder,longDesc,marginHeight,marginWidth,name,!noResize,scrolling,src", "frameset^[HTMLElement]|cols,*afterprint,*beforeprint,*beforeunload,*blur,*error,*focus,*hashchange,*languagechange,*load,*message,*messageerror,*offline,*online,*pagehide,*pageshow,*popstate,*rejectionhandled,*resize,*scroll,*storage,*unhandledrejection,*unload,rows", "hr^[HTMLElement]|align,color,!noShade,size,width", "head^[HTMLElement]|", "h1,h2,h3,h4,h5,h6^[HTMLElement]|align", "html^[HTMLElement]|version", "iframe^[HTMLElement]|align,allow,!allowFullscreen,!allowPaymentRequest,csp,frameBorder,height,loading,longDesc,marginHeight,marginWidth,name,referrerPolicy,%sandbox,scrolling,src,srcdoc,width", "img^[HTMLElement]|align,alt,border,%crossOrigin,decoding,#height,#hspace,!isMap,loading,longDesc,lowsrc,name,referrerPolicy,sizes,src,srcset,useMap,#vspace,#width", "input^[HTMLElement]|accept,align,alt,autocomplete,!checked,!defaultChecked,defaultValue,dirName,!disabled,%files,formAction,formEnctype,formMethod,!formNoValidate,formTarget,#height,!incremental,!indeterminate,max,#maxLength,min,#minLength,!multiple,name,pattern,placeholder,!readOnly,!required,selectionDirection,#selectionEnd,#selectionStart,#size,src,step,type,useMap,value,%valueAsDate,#valueAsNumber,#width", "li^[HTMLElement]|type,#value", "label^[HTMLElement]|htmlFor", "legend^[HTMLElement]|align", "link^[HTMLElement]|as,charset,%crossOrigin,!disabled,href,hreflang,imageSizes,imageSrcset,integrity,media,referrerPolicy,rel,%relList,rev,%sizes,target,type", "map^[HTMLElement]|name", "marquee^[HTMLElement]|behavior,bgColor,direction,height,#hspace,#loop,#scrollAmount,#scrollDelay,!trueSpeed,#vspace,width", "menu^[HTMLElement]|!compact", "meta^[HTMLElement]|content,httpEquiv,media,name,scheme", "meter^[HTMLElement]|#high,#low,#max,#min,#optimum,#value", "ins,del^[HTMLElement]|cite,dateTime", "ol^[HTMLElement]|!compact,!reversed,#start,type", "object^[HTMLElement]|align,archive,border,code,codeBase,codeType,data,!declare,height,#hspace,name,standby,type,useMap,#vspace,width", "optgroup^[HTMLElement]|!disabled,label", "option^[HTMLElement]|!defaultSelected,!disabled,label,!selected,text,value", "output^[HTMLElement]|defaultValue,%htmlFor,name,value", "p^[HTMLElement]|align", "param^[HTMLElement]|name,type,value,valueType", "picture^[HTMLElement]|", "pre^[HTMLElement]|#width", "progress^[HTMLElement]|#max,#value", "q,blockquote,cite^[HTMLElement]|", "script^[HTMLElement]|!async,charset,%crossOrigin,!defer,event,htmlFor,integrity,!noModule,%referrerPolicy,src,text,type", "select^[HTMLElement]|autocomplete,!disabled,#length,!multiple,name,!required,#selectedIndex,#size,value", "selectedcontent^[HTMLElement]|", "slot^[HTMLElement]|name", "source^[HTMLElement]|#height,media,sizes,src,srcset,type,#width", "span^[HTMLElement]|", "style^[HTMLElement]|!disabled,media,type", "search^[HTMLELement]|", "caption^[HTMLElement]|align", "th,td^[HTMLElement]|abbr,align,axis,bgColor,ch,chOff,#colSpan,headers,height,!noWrap,#rowSpan,scope,vAlign,width", "col,colgroup^[HTMLElement]|align,ch,chOff,#span,vAlign,width", "table^[HTMLElement]|align,bgColor,border,%caption,cellPadding,cellSpacing,frame,rules,summary,%tFoot,%tHead,width", "tr^[HTMLElement]|align,bgColor,ch,chOff,vAlign", "tfoot,thead,tbody^[HTMLElement]|align,ch,chOff,vAlign", "template^[HTMLElement]|", "textarea^[HTMLElement]|autocomplete,#cols,defaultValue,dirName,!disabled,#maxLength,#minLength,name,placeholder,!readOnly,!required,#rows,selectionDirection,#selectionEnd,#selectionStart,value,wrap", "time^[HTMLElement]|dateTime", "title^[HTMLElement]|text", "track^[HTMLElement]|!default,kind,label,src,srclang", "ul^[HTMLElement]|!compact,type", "unknown^[HTMLElement]|", "video^media|!disablePictureInPicture,#height,*enterpictureinpicture,*leavepictureinpicture,!playsInline,poster,#width", ":svg:a^:svg:graphics|", ":svg:animate^:svg:animation|", ":svg:animateMotion^:svg:animation|", ":svg:animateTransform^:svg:animation|", ":svg:circle^:svg:geometry|", ":svg:clipPath^:svg:graphics|", ":svg:defs^:svg:graphics|", ":svg:desc^:svg:|", ":svg:discard^:svg:|", ":svg:ellipse^:svg:geometry|", ":svg:feBlend^:svg:|", ":svg:feColorMatrix^:svg:|", ":svg:feComponentTransfer^:svg:|", ":svg:feComposite^:svg:|", ":svg:feConvolveMatrix^:svg:|", ":svg:feDiffuseLighting^:svg:|", ":svg:feDisplacementMap^:svg:|", ":svg:feDistantLight^:svg:|", ":svg:feDropShadow^:svg:|", ":svg:feFlood^:svg:|", ":svg:feFuncA^:svg:componentTransferFunction|", ":svg:feFuncB^:svg:componentTransferFunction|", ":svg:feFuncG^:svg:componentTransferFunction|", ":svg:feFuncR^:svg:componentTransferFunction|", ":svg:feGaussianBlur^:svg:|", ":svg:feImage^:svg:|", ":svg:feMerge^:svg:|", ":svg:feMergeNode^:svg:|", ":svg:feMorphology^:svg:|", ":svg:feOffset^:svg:|", ":svg:fePointLight^:svg:|", ":svg:feSpecularLighting^:svg:|", ":svg:feSpotLight^:svg:|", ":svg:feTile^:svg:|", ":svg:feTurbulence^:svg:|", ":svg:filter^:svg:|", ":svg:foreignObject^:svg:graphics|", ":svg:g^:svg:graphics|", ":svg:image^:svg:graphics|decoding", ":svg:line^:svg:geometry|", ":svg:linearGradient^:svg:gradient|", ":svg:mpath^:svg:|", ":svg:marker^:svg:|", ":svg:mask^:svg:|", ":svg:metadata^:svg:|", ":svg:path^:svg:geometry|", ":svg:pattern^:svg:|", ":svg:polygon^:svg:geometry|", ":svg:polyline^:svg:geometry|", ":svg:radialGradient^:svg:gradient|", ":svg:rect^:svg:geometry|", ":svg:svg^:svg:graphics|#currentScale,#zoomAndPan", ":svg:script^:svg:|type", ":svg:set^:svg:animation|", ":svg:stop^:svg:|", ":svg:style^:svg:|!disabled,media,title,type", ":svg:switch^:svg:graphics|", ":svg:symbol^:svg:|", ":svg:tspan^:svg:textPositioning|", ":svg:text^:svg:textPositioning|", ":svg:textPath^:svg:textContent|", ":svg:title^:svg:|", ":svg:use^:svg:graphics|", ":svg:view^:svg:|#zoomAndPan", "data^[HTMLElement]|value", "keygen^[HTMLElement]|!autofocus,challenge,!disabled,form,keytype,name", "menuitem^[HTMLElement]|type,label,icon,!disabled,!checked,radiogroup,!default", "summary^[HTMLElement]|", "time^[HTMLElement]|dateTime", ":svg:cursor^:svg:|", ":math:^[HTMLElement]|!autofocus,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforeinput,*beforematch,*beforetoggle,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contentvisibilityautostatechange,*contextlost,*contextmenu,*contextrestored,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*scrollend,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,%style,#tabIndex", ":math:math^:math:|", ":math:maction^:math:|", ":math:menclose^:math:|", ":math:merror^:math:|", ":math:mfenced^:math:|", ":math:mfrac^:math:|", ":math:mi^:math:|", ":math:mmultiscripts^:math:|", ":math:mn^:math:|", ":math:mo^:math:|", ":math:mover^:math:|", ":math:mpadded^:math:|", ":math:mphantom^:math:|", ":math:mroot^:math:|", ":math:mrow^:math:|", ":math:ms^:math:|", ":math:mspace^:math:|", ":math:msqrt^:math:|", ":math:mstyle^:math:|", ":math:msub^:math:|", ":math:msubsup^:math:|", ":math:msup^:math:|", ":math:mtable^:math:|", ":math:mtd^:math:|", ":math:mtext^:math:|", ":math:mtr^:math:|", ":math:munder^:math:|", ":math:munderover^:math:|", ":math:semantics^:math:|"], Ri = new Map(Object.entries({ class: "className", for: "htmlFor", formaction: "formAction", innerHtml: "innerHTML", readonly: "readOnly", tabindex: "tabIndex", "aria-activedescendant": "ariaActiveDescendantElement", "aria-atomic": "ariaAtomic", "aria-autocomplete": "ariaAutoComplete", "aria-busy": "ariaBusy", "aria-checked": "ariaChecked", "aria-colcount": "ariaColCount", "aria-colindex": "ariaColIndex", "aria-colindextext": "ariaColIndexText", "aria-colspan": "ariaColSpan", "aria-controls": "ariaControlsElements", "aria-current": "ariaCurrent", "aria-describedby": "ariaDescribedByElements", "aria-description": "ariaDescription", "aria-details": "ariaDetailsElements", "aria-disabled": "ariaDisabled", "aria-errormessage": "ariaErrorMessageElements", "aria-expanded": "ariaExpanded", "aria-flowto": "ariaFlowToElements", "aria-haspopup": "ariaHasPopup", "aria-hidden": "ariaHidden", "aria-invalid": "ariaInvalid", "aria-keyshortcuts": "ariaKeyShortcuts", "aria-label": "ariaLabel", "aria-labelledby": "ariaLabelledByElements", "aria-level": "ariaLevel", "aria-live": "ariaLive", "aria-modal": "ariaModal", "aria-multiline": "ariaMultiLine", "aria-multiselectable": "ariaMultiSelectable", "aria-orientation": "ariaOrientation", "aria-owns": "ariaOwnsElements", "aria-placeholder": "ariaPlaceholder", "aria-posinset": "ariaPosInSet", "aria-pressed": "ariaPressed", "aria-readonly": "ariaReadOnly", "aria-required": "ariaRequired", "aria-roledescription": "ariaRoleDescription", "aria-rowcount": "ariaRowCount", "aria-rowindex": "ariaRowIndex", "aria-rowindextext": "ariaRowIndexText", "aria-rowspan": "ariaRowSpan", "aria-selected": "ariaSelected", "aria-setsize": "ariaSetSize", "aria-sort": "ariaSort", "aria-valuemax": "ariaValueMax", "aria-valuemin": "ariaValueMin", "aria-valuenow": "ariaValueNow", "aria-valuetext": "ariaValueText" })), so = Array.from(Ri).reduce((e, [t, r]) => (e.set(t, r), e), /* @__PURE__ */ new Map()), Ii = class extends Di {
1477
+ constructor() {
1478
+ super(), this._schema = /* @__PURE__ */ new Map(), this._eventSchema = /* @__PURE__ */ new Map(), io.forEach((e) => {
1479
+ let t = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Set(), [n, i] = e.split("|"), s = i.split(","), [a, o] = n.split("^");
1480
+ a.split(",").forEach((u) => {
1481
+ this._schema.set(u.toLowerCase(), t), this._eventSchema.set(u.toLowerCase(), r);
1482
+ });
1483
+ let c = o && this._schema.get(o.toLowerCase());
1484
+ if (c) {
1485
+ for (let [u, p] of c) t.set(u, p);
1486
+ for (let u of this._eventSchema.get(o.toLowerCase())) r.add(u);
1487
+ }
1488
+ s.forEach((u) => {
1489
+ if (u.length > 0) switch (u[0]) {
1490
+ case "*":
1491
+ r.add(u.substring(1));
1492
+ break;
1493
+ case "!":
1494
+ t.set(u.substring(1), eo);
1495
+ break;
1496
+ case "#":
1497
+ t.set(u.substring(1), to);
1498
+ break;
1499
+ case "%":
1500
+ t.set(u.substring(1), no);
1501
+ break;
1502
+ default:
1503
+ t.set(u, ro);
1504
+ }
1505
+ });
1506
+ });
1507
+ }
1508
+ hasProperty(e, t, r) {
1509
+ if (r.some((n) => n.name === Ar.name)) return !0;
1510
+ if (e.indexOf("-") > -1) {
1511
+ if (br(e) || wr(e)) return !1;
1512
+ if (r.some((n) => n.name === kr.name)) return !0;
1513
+ }
1514
+ return (this._schema.get(e.toLowerCase()) || this._schema.get("unknown")).has(t);
1515
+ }
1516
+ hasElement(e, t) {
1517
+ return t.some((r) => r.name === Ar.name) || e.indexOf("-") > -1 && (br(e) || wr(e) || t.some((r) => r.name === kr.name)) ? !0 : this._schema.has(e.toLowerCase());
1518
+ }
1519
+ securityContext(e, t, r) {
1520
+ r && (t = this.getMappedPropName(t)), e = e.toLowerCase(), t = t.toLowerCase();
1521
+ let n = yr()[e + "|" + t];
1522
+ return n || (n = yr()["*|" + t], n || Ee.NONE);
1523
+ }
1524
+ getMappedPropName(e) {
1525
+ return Ri.get(e) ?? e;
1526
+ }
1527
+ getDefaultComponentElementName() {
1528
+ return "ng-component";
1529
+ }
1530
+ validateProperty(e) {
1531
+ return e.toLowerCase().startsWith("on") ? { error: !0, msg: `Binding to event property '${e}' is disallowed for security reasons, please use (${e.slice(2)})=...
1532
+ If '${e}' is a directive input, make sure the directive is imported by the current module.` } : { error: !1 };
1533
+ }
1534
+ validateAttribute(e) {
1535
+ return e.toLowerCase().startsWith("on") ? { error: !0, msg: `Binding to event attribute '${e}' is disallowed for security reasons, please use (${e.slice(2)})=...` } : { error: !1 };
1536
+ }
1537
+ allKnownElementNames() {
1538
+ return Array.from(this._schema.keys());
1539
+ }
1540
+ allKnownAttributesOfElement(e) {
1541
+ let t = this._schema.get(e.toLowerCase()) || this._schema.get("unknown");
1542
+ return Array.from(t.keys()).map((r) => so.get(r) ?? r);
1543
+ }
1544
+ allKnownEventsOfElement(e) {
1545
+ return Array.from(this._eventSchema.get(e.toLowerCase()) ?? []);
1546
+ }
1547
+ normalizeAnimationStyleProperty(e) {
1548
+ return Oi(e);
1549
+ }
1550
+ normalizeAnimationStyleValue(e, t, r) {
1551
+ let n = "", i = r.toString().trim(), s = null;
1552
+ if (ao(e) && r !== 0 && r !== "0") if (typeof r == "number") n = "px";
1553
+ else {
1554
+ let a = r.match(/^[+-]?[\d\.]+([a-z]*)$/);
1555
+ a && a[1].length == 0 && (s = `Please provide a CSS unit value for ${t}:${r}`);
1556
+ }
1557
+ return { error: s, value: i + n };
1558
+ }
1559
+ };
1560
+ f = class {
1561
+ constructor({ closedByChildren: e, implicitNamespacePrefix: t, contentType: r = I.PARSABLE_DATA, closedByParent: n = !1, isVoid: i = !1, ignoreFirstLf: s = !1, preventNamespaceInheritance: a = !1, canSelfClose: o = !1 } = {}) {
1562
+ this.closedByChildren = {}, this.closedByParent = !1, e && e.length > 0 && e.forEach((c) => this.closedByChildren[c] = !0), this.isVoid = i, this.closedByParent = n || i, this.implicitNamespacePrefix = t || null, this.contentType = r, this.ignoreFirstLf = s, this.preventNamespaceInheritance = a, this.canSelfClose = o ?? i;
1563
+ }
1564
+ isClosedByChild(e) {
1565
+ return this.isVoid || e.toLowerCase() in this.closedByChildren;
1566
+ }
1567
+ getContentType(e) {
1568
+ return typeof this.contentType == "object" ? (e === void 0 ? void 0 : this.contentType[e]) ?? this.contentType.default : this.contentType;
1569
+ }
1570
+ };
1571
+ qe = class qi {
1572
+ constructor(t, r, n, i) {
1573
+ this.file = t, this.offset = r, this.line = n, this.col = i;
1574
+ }
1575
+ toString() {
1576
+ return this.offset != null ? `${this.file.url}@${this.line}:${this.col}` : this.file.url;
1577
+ }
1578
+ moveBy(t) {
1579
+ let r = this.file.content, n = r.length, i = this.offset, s = this.line, a = this.col;
1580
+ for (; i > 0 && t < 0; ) if (i--, t++, r.charCodeAt(i) == 10) {
1581
+ s--;
1582
+ let o = r.substring(0, i - 1).lastIndexOf(`
1583
+ `);
1584
+ a = o > 0 ? i - o : i;
1585
+ } else a--;
1586
+ for (; i < n && t > 0; ) {
1587
+ let o = r.charCodeAt(i);
1588
+ i++, t--, o == 10 ? (s++, a = 0) : a++;
1589
+ }
1590
+ return new qi(this.file, i, s, a);
1591
+ }
1592
+ getContext(t, r) {
1593
+ let n = this.file.content, i = this.offset;
1594
+ if (i != null) {
1595
+ i > n.length - 1 && (i = n.length - 1);
1596
+ let s = i, a = 0, o = 0;
1597
+ for (; a < t && i > 0 && (i--, a++, !(n[i] == `
1598
+ ` && ++o == r)); ) ;
1599
+ for (a = 0, o = 0; a < t && s < n.length - 1 && (s++, a++, !(n[s] == `
1600
+ ` && ++o == r)); ) ;
1601
+ return { before: n.substring(i, this.offset), after: n.substring(this.offset, s + 1) };
1602
+ }
1603
+ return null;
1604
+ }
1605
+ }, ht = class {
1606
+ constructor(e, t) {
1607
+ this.content = e, this.url = t;
1608
+ }
1609
+ }, h = class {
1610
+ constructor(e, t, r = e, n = null) {
1611
+ this.start = e, this.end = t, this.fullStart = r, this.details = n;
1612
+ }
1613
+ toString() {
1614
+ return this.start.file.content.substring(this.start.offset, this.end.offset);
1615
+ }
1616
+ }, Fi = (function(e) {
1617
+ return e[e.WARNING = 0] = "WARNING", e[e.ERROR = 1] = "ERROR", e;
1618
+ })({}), re = class extends Error {
1619
+ constructor(e, t, r = Fi.ERROR, n) {
1620
+ super(t), this.span = e, this.msg = t, this.level = r, this.relatedError = n, Object.setPrototypeOf(this, new.target.prototype);
1621
+ }
1622
+ contextualMessage() {
1623
+ let e = this.span.start.getContext(100, 3);
1624
+ return e ? `${this.msg} ("${e.before}[${Fi[this.level]} ->]${e.after}")` : this.msg;
1625
+ }
1626
+ toString() {
1627
+ let e = this.span.details ? `, ${this.span.details}` : "";
1628
+ return `${this.contextualMessage()}: ${this.span.start}${e}`;
1629
+ }
1630
+ }, Ce = class {
1631
+ constructor(e, t) {
1632
+ this.sourceSpan = e, this.i18n = t;
1633
+ }
1634
+ }, Hi = class extends Ce {
1635
+ constructor(e, t, r, n) {
1636
+ super(t, n), this.value = e, this.tokens = r, this.kind = "text";
1637
+ }
1638
+ visit(e, t) {
1639
+ return e.visitText(this, t);
1640
+ }
1641
+ }, Vi = class extends Ce {
1642
+ constructor(e, t, r, n) {
1643
+ super(t, n), this.value = e, this.tokens = r, this.kind = "cdata";
1644
+ }
1645
+ visit(e, t) {
1646
+ return e.visitCdata(this, t);
1647
+ }
1648
+ }, Ui = class extends Ce {
1649
+ constructor(e, t, r, n, i, s) {
1650
+ super(n, s), this.switchValue = e, this.type = t, this.cases = r, this.switchValueSourceSpan = i, this.kind = "expansion";
1651
+ }
1652
+ visit(e, t) {
1653
+ return e.visitExpansion(this, t);
1654
+ }
1655
+ }, Wi = class {
1656
+ constructor(e, t, r, n, i) {
1657
+ this.value = e, this.expression = t, this.sourceSpan = r, this.valueSourceSpan = n, this.expSourceSpan = i, this.kind = "expansionCase";
1658
+ }
1659
+ visit(e, t) {
1660
+ return e.visitExpansionCase(this, t);
1661
+ }
1662
+ }, Gi = class extends Ce {
1663
+ constructor(e, t, r, n, i, s, a) {
1664
+ super(r, a), this.name = e, this.value = t, this.keySpan = n, this.valueSpan = i, this.valueTokens = s, this.kind = "attribute";
1665
+ }
1666
+ visit(e, t) {
1667
+ return e.visitAttribute(this, t);
1668
+ }
1669
+ get nameSpan() {
1670
+ return this.keySpan;
1671
+ }
1672
+ }, ne = class extends Ce {
1673
+ constructor(e, t, r, n, i, s, a, o = null, c = null, u, p) {
1674
+ super(s, p), this.name = e, this.attrs = t, this.directives = r, this.children = n, this.isSelfClosing = i, this.startSourceSpan = a, this.endSourceSpan = o, this.nameSpan = c, this.isVoid = u, this.kind = "element";
1675
+ }
1676
+ visit(e, t) {
1677
+ return e.visitElement(this, t);
1678
+ }
1679
+ }, $i = class {
1680
+ constructor(e, t) {
1681
+ this.value = e, this.sourceSpan = t, this.kind = "comment";
1682
+ }
1683
+ visit(e, t) {
1684
+ return e.visitComment(this, t);
1685
+ }
1686
+ }, zi = class {
1687
+ constructor(e, t) {
1688
+ this.value = e, this.sourceSpan = t, this.kind = "docType";
1689
+ }
1690
+ visit(e, t) {
1691
+ return e.visitDocType(this, t);
1692
+ }
1693
+ }, ve = class extends Ce {
1694
+ constructor(e, t, r, n, i, s, a = null, o) {
1695
+ super(n, o), this.name = e, this.parameters = t, this.children = r, this.nameSpan = i, this.startSourceSpan = s, this.endSourceSpan = a, this.kind = "block";
1696
+ }
1697
+ visit(e, t) {
1698
+ return e.visitBlock(this, t);
1699
+ }
1700
+ }, J = class extends Ce {
1701
+ constructor(e, t, r, n, i, s, a, o, c, u = null, p) {
1702
+ super(o, p), this.componentName = e, this.tagName = t, this.fullName = r, this.attrs = n, this.directives = i, this.children = s, this.isSelfClosing = a, this.startSourceSpan = c, this.endSourceSpan = u, this.kind = "component";
1703
+ }
1704
+ visit(e, t) {
1705
+ return e.visitComponent(this, t);
1706
+ }
1707
+ }, Yi = class {
1708
+ constructor(e, t, r, n, i = null) {
1709
+ this.name = e, this.attrs = t, this.sourceSpan = r, this.startSourceSpan = n, this.endSourceSpan = i, this.kind = "directive";
1710
+ }
1711
+ visit(e, t) {
1712
+ return e.visitDirective(this, t);
1713
+ }
1714
+ }, Nr = class {
1715
+ constructor(e, t) {
1716
+ this.expression = e, this.sourceSpan = t, this.kind = "blockParameter", this.startSourceSpan = null, this.endSourceSpan = null;
1717
+ }
1718
+ visit(e, t) {
1719
+ return e.visitBlockParameter(this, t);
1720
+ }
1721
+ }, Lr = class {
1722
+ constructor(e, t, r, n, i) {
1723
+ this.name = e, this.value = t, this.sourceSpan = r, this.nameSpan = n, this.valueSpan = i, this.kind = "letDeclaration", this.startSourceSpan = null, this.endSourceSpan = null;
1724
+ }
1725
+ visit(e, t) {
1726
+ return e.visitLetDeclaration(this, t);
1727
+ }
1728
+ };
1729
+ Pr = class {
1730
+ constructor() {
1731
+ }
1732
+ visitElement(e, t) {
1733
+ this.visitChildren(t, (r) => {
1734
+ r(e.attrs), r(e.directives), r(e.children);
1735
+ });
1736
+ }
1737
+ visitAttribute(e, t) {
1738
+ }
1739
+ visitText(e, t) {
1740
+ }
1741
+ visitCdata(e, t) {
1742
+ }
1743
+ visitComment(e, t) {
1744
+ }
1745
+ visitDocType(e, t) {
1746
+ }
1747
+ visitExpansion(e, t) {
1748
+ return this.visitChildren(t, (r) => {
1749
+ r(e.cases);
1750
+ });
1751
+ }
1752
+ visitExpansionCase(e, t) {
1753
+ }
1754
+ visitBlock(e, t) {
1755
+ this.visitChildren(t, (r) => {
1756
+ r(e.parameters), r(e.children);
1757
+ });
1758
+ }
1759
+ visitBlockParameter(e, t) {
1760
+ }
1761
+ visitLetDeclaration(e, t) {
1762
+ }
1763
+ visitComponent(e, t) {
1764
+ this.visitChildren(t, (r) => {
1765
+ r(e.attrs), r(e.children);
1766
+ });
1767
+ }
1768
+ visitDirective(e, t) {
1769
+ this.visitChildren(t, (r) => {
1770
+ r(e.attrs);
1771
+ });
1772
+ }
1773
+ visitChildren(e, t) {
1774
+ let r = [], n = this;
1775
+ function i(s) {
1776
+ s && r.push(Wt(n, s, e));
1777
+ }
1778
+ return t(i), Array.prototype.concat.apply([], r);
1779
+ }
1780
+ }, Te = { AElig: "\xC6", AMP: "&", amp: "&", Aacute: "\xC1", Abreve: "\u0102", Acirc: "\xC2", Acy: "\u0410", Afr: "\u{1D504}", Agrave: "\xC0", Alpha: "\u0391", Amacr: "\u0100", And: "\u2A53", Aogon: "\u0104", Aopf: "\u{1D538}", ApplyFunction: "\u2061", af: "\u2061", Aring: "\xC5", angst: "\xC5", Ascr: "\u{1D49C}", Assign: "\u2254", colone: "\u2254", coloneq: "\u2254", Atilde: "\xC3", Auml: "\xC4", Backslash: "\u2216", setminus: "\u2216", setmn: "\u2216", smallsetminus: "\u2216", ssetmn: "\u2216", Barv: "\u2AE7", Barwed: "\u2306", doublebarwedge: "\u2306", Bcy: "\u0411", Because: "\u2235", becaus: "\u2235", because: "\u2235", Bernoullis: "\u212C", Bscr: "\u212C", bernou: "\u212C", Beta: "\u0392", Bfr: "\u{1D505}", Bopf: "\u{1D539}", Breve: "\u02D8", breve: "\u02D8", Bumpeq: "\u224E", HumpDownHump: "\u224E", bump: "\u224E", CHcy: "\u0427", COPY: "\xA9", copy: "\xA9", Cacute: "\u0106", Cap: "\u22D2", CapitalDifferentialD: "\u2145", DD: "\u2145", Cayleys: "\u212D", Cfr: "\u212D", Ccaron: "\u010C", Ccedil: "\xC7", Ccirc: "\u0108", Cconint: "\u2230", Cdot: "\u010A", Cedilla: "\xB8", cedil: "\xB8", CenterDot: "\xB7", centerdot: "\xB7", middot: "\xB7", Chi: "\u03A7", CircleDot: "\u2299", odot: "\u2299", CircleMinus: "\u2296", ominus: "\u2296", CirclePlus: "\u2295", oplus: "\u2295", CircleTimes: "\u2297", otimes: "\u2297", ClockwiseContourIntegral: "\u2232", cwconint: "\u2232", CloseCurlyDoubleQuote: "\u201D", rdquo: "\u201D", rdquor: "\u201D", CloseCurlyQuote: "\u2019", rsquo: "\u2019", rsquor: "\u2019", Colon: "\u2237", Proportion: "\u2237", Colone: "\u2A74", Congruent: "\u2261", equiv: "\u2261", Conint: "\u222F", DoubleContourIntegral: "\u222F", ContourIntegral: "\u222E", conint: "\u222E", oint: "\u222E", Copf: "\u2102", complexes: "\u2102", Coproduct: "\u2210", coprod: "\u2210", CounterClockwiseContourIntegral: "\u2233", awconint: "\u2233", Cross: "\u2A2F", Cscr: "\u{1D49E}", Cup: "\u22D3", CupCap: "\u224D", asympeq: "\u224D", DDotrahd: "\u2911", DJcy: "\u0402", DScy: "\u0405", DZcy: "\u040F", Dagger: "\u2021", ddagger: "\u2021", Darr: "\u21A1", Dashv: "\u2AE4", DoubleLeftTee: "\u2AE4", Dcaron: "\u010E", Dcy: "\u0414", Del: "\u2207", nabla: "\u2207", Delta: "\u0394", Dfr: "\u{1D507}", DiacriticalAcute: "\xB4", acute: "\xB4", DiacriticalDot: "\u02D9", dot: "\u02D9", DiacriticalDoubleAcute: "\u02DD", dblac: "\u02DD", DiacriticalGrave: "`", grave: "`", DiacriticalTilde: "\u02DC", tilde: "\u02DC", Diamond: "\u22C4", diam: "\u22C4", diamond: "\u22C4", DifferentialD: "\u2146", dd: "\u2146", Dopf: "\u{1D53B}", Dot: "\xA8", DoubleDot: "\xA8", die: "\xA8", uml: "\xA8", DotDot: "\u20DC", DotEqual: "\u2250", doteq: "\u2250", esdot: "\u2250", DoubleDownArrow: "\u21D3", Downarrow: "\u21D3", dArr: "\u21D3", DoubleLeftArrow: "\u21D0", Leftarrow: "\u21D0", lArr: "\u21D0", DoubleLeftRightArrow: "\u21D4", Leftrightarrow: "\u21D4", hArr: "\u21D4", iff: "\u21D4", DoubleLongLeftArrow: "\u27F8", Longleftarrow: "\u27F8", xlArr: "\u27F8", DoubleLongLeftRightArrow: "\u27FA", Longleftrightarrow: "\u27FA", xhArr: "\u27FA", DoubleLongRightArrow: "\u27F9", Longrightarrow: "\u27F9", xrArr: "\u27F9", DoubleRightArrow: "\u21D2", Implies: "\u21D2", Rightarrow: "\u21D2", rArr: "\u21D2", DoubleRightTee: "\u22A8", vDash: "\u22A8", DoubleUpArrow: "\u21D1", Uparrow: "\u21D1", uArr: "\u21D1", DoubleUpDownArrow: "\u21D5", Updownarrow: "\u21D5", vArr: "\u21D5", DoubleVerticalBar: "\u2225", par: "\u2225", parallel: "\u2225", shortparallel: "\u2225", spar: "\u2225", DownArrow: "\u2193", ShortDownArrow: "\u2193", darr: "\u2193", downarrow: "\u2193", DownArrowBar: "\u2913", DownArrowUpArrow: "\u21F5", duarr: "\u21F5", DownBreve: "\u0311", DownLeftRightVector: "\u2950", DownLeftTeeVector: "\u295E", DownLeftVector: "\u21BD", leftharpoondown: "\u21BD", lhard: "\u21BD", DownLeftVectorBar: "\u2956", DownRightTeeVector: "\u295F", DownRightVector: "\u21C1", rhard: "\u21C1", rightharpoondown: "\u21C1", DownRightVectorBar: "\u2957", DownTee: "\u22A4", top: "\u22A4", DownTeeArrow: "\u21A7", mapstodown: "\u21A7", Dscr: "\u{1D49F}", Dstrok: "\u0110", ENG: "\u014A", ETH: "\xD0", Eacute: "\xC9", Ecaron: "\u011A", Ecirc: "\xCA", Ecy: "\u042D", Edot: "\u0116", Efr: "\u{1D508}", Egrave: "\xC8", Element: "\u2208", in: "\u2208", isin: "\u2208", isinv: "\u2208", Emacr: "\u0112", EmptySmallSquare: "\u25FB", EmptyVerySmallSquare: "\u25AB", Eogon: "\u0118", Eopf: "\u{1D53C}", Epsilon: "\u0395", Equal: "\u2A75", EqualTilde: "\u2242", eqsim: "\u2242", esim: "\u2242", Equilibrium: "\u21CC", rightleftharpoons: "\u21CC", rlhar: "\u21CC", Escr: "\u2130", expectation: "\u2130", Esim: "\u2A73", Eta: "\u0397", Euml: "\xCB", Exists: "\u2203", exist: "\u2203", ExponentialE: "\u2147", ee: "\u2147", exponentiale: "\u2147", Fcy: "\u0424", Ffr: "\u{1D509}", FilledSmallSquare: "\u25FC", FilledVerySmallSquare: "\u25AA", blacksquare: "\u25AA", squarf: "\u25AA", squf: "\u25AA", Fopf: "\u{1D53D}", ForAll: "\u2200", forall: "\u2200", Fouriertrf: "\u2131", Fscr: "\u2131", GJcy: "\u0403", GT: ">", gt: ">", Gamma: "\u0393", Gammad: "\u03DC", Gbreve: "\u011E", Gcedil: "\u0122", Gcirc: "\u011C", Gcy: "\u0413", Gdot: "\u0120", Gfr: "\u{1D50A}", Gg: "\u22D9", ggg: "\u22D9", Gopf: "\u{1D53E}", GreaterEqual: "\u2265", ge: "\u2265", geq: "\u2265", GreaterEqualLess: "\u22DB", gel: "\u22DB", gtreqless: "\u22DB", GreaterFullEqual: "\u2267", gE: "\u2267", geqq: "\u2267", GreaterGreater: "\u2AA2", GreaterLess: "\u2277", gl: "\u2277", gtrless: "\u2277", GreaterSlantEqual: "\u2A7E", geqslant: "\u2A7E", ges: "\u2A7E", GreaterTilde: "\u2273", gsim: "\u2273", gtrsim: "\u2273", Gscr: "\u{1D4A2}", Gt: "\u226B", NestedGreaterGreater: "\u226B", gg: "\u226B", HARDcy: "\u042A", Hacek: "\u02C7", caron: "\u02C7", Hat: "^", Hcirc: "\u0124", Hfr: "\u210C", Poincareplane: "\u210C", HilbertSpace: "\u210B", Hscr: "\u210B", hamilt: "\u210B", Hopf: "\u210D", quaternions: "\u210D", HorizontalLine: "\u2500", boxh: "\u2500", Hstrok: "\u0126", HumpEqual: "\u224F", bumpe: "\u224F", bumpeq: "\u224F", IEcy: "\u0415", IJlig: "\u0132", IOcy: "\u0401", Iacute: "\xCD", Icirc: "\xCE", Icy: "\u0418", Idot: "\u0130", Ifr: "\u2111", Im: "\u2111", image: "\u2111", imagpart: "\u2111", Igrave: "\xCC", Imacr: "\u012A", ImaginaryI: "\u2148", ii: "\u2148", Int: "\u222C", Integral: "\u222B", int: "\u222B", Intersection: "\u22C2", bigcap: "\u22C2", xcap: "\u22C2", InvisibleComma: "\u2063", ic: "\u2063", InvisibleTimes: "\u2062", it: "\u2062", Iogon: "\u012E", Iopf: "\u{1D540}", Iota: "\u0399", Iscr: "\u2110", imagline: "\u2110", Itilde: "\u0128", Iukcy: "\u0406", Iuml: "\xCF", Jcirc: "\u0134", Jcy: "\u0419", Jfr: "\u{1D50D}", Jopf: "\u{1D541}", Jscr: "\u{1D4A5}", Jsercy: "\u0408", Jukcy: "\u0404", KHcy: "\u0425", KJcy: "\u040C", Kappa: "\u039A", Kcedil: "\u0136", Kcy: "\u041A", Kfr: "\u{1D50E}", Kopf: "\u{1D542}", Kscr: "\u{1D4A6}", LJcy: "\u0409", LT: "<", lt: "<", Lacute: "\u0139", Lambda: "\u039B", Lang: "\u27EA", Laplacetrf: "\u2112", Lscr: "\u2112", lagran: "\u2112", Larr: "\u219E", twoheadleftarrow: "\u219E", Lcaron: "\u013D", Lcedil: "\u013B", Lcy: "\u041B", LeftAngleBracket: "\u27E8", lang: "\u27E8", langle: "\u27E8", LeftArrow: "\u2190", ShortLeftArrow: "\u2190", larr: "\u2190", leftarrow: "\u2190", slarr: "\u2190", LeftArrowBar: "\u21E4", larrb: "\u21E4", LeftArrowRightArrow: "\u21C6", leftrightarrows: "\u21C6", lrarr: "\u21C6", LeftCeiling: "\u2308", lceil: "\u2308", LeftDoubleBracket: "\u27E6", lobrk: "\u27E6", LeftDownTeeVector: "\u2961", LeftDownVector: "\u21C3", dharl: "\u21C3", downharpoonleft: "\u21C3", LeftDownVectorBar: "\u2959", LeftFloor: "\u230A", lfloor: "\u230A", LeftRightArrow: "\u2194", harr: "\u2194", leftrightarrow: "\u2194", LeftRightVector: "\u294E", LeftTee: "\u22A3", dashv: "\u22A3", LeftTeeArrow: "\u21A4", mapstoleft: "\u21A4", LeftTeeVector: "\u295A", LeftTriangle: "\u22B2", vartriangleleft: "\u22B2", vltri: "\u22B2", LeftTriangleBar: "\u29CF", LeftTriangleEqual: "\u22B4", ltrie: "\u22B4", trianglelefteq: "\u22B4", LeftUpDownVector: "\u2951", LeftUpTeeVector: "\u2960", LeftUpVector: "\u21BF", uharl: "\u21BF", upharpoonleft: "\u21BF", LeftUpVectorBar: "\u2958", LeftVector: "\u21BC", leftharpoonup: "\u21BC", lharu: "\u21BC", LeftVectorBar: "\u2952", LessEqualGreater: "\u22DA", leg: "\u22DA", lesseqgtr: "\u22DA", LessFullEqual: "\u2266", lE: "\u2266", leqq: "\u2266", LessGreater: "\u2276", lessgtr: "\u2276", lg: "\u2276", LessLess: "\u2AA1", LessSlantEqual: "\u2A7D", leqslant: "\u2A7D", les: "\u2A7D", LessTilde: "\u2272", lesssim: "\u2272", lsim: "\u2272", Lfr: "\u{1D50F}", Ll: "\u22D8", Lleftarrow: "\u21DA", lAarr: "\u21DA", Lmidot: "\u013F", LongLeftArrow: "\u27F5", longleftarrow: "\u27F5", xlarr: "\u27F5", LongLeftRightArrow: "\u27F7", longleftrightarrow: "\u27F7", xharr: "\u27F7", LongRightArrow: "\u27F6", longrightarrow: "\u27F6", xrarr: "\u27F6", Lopf: "\u{1D543}", LowerLeftArrow: "\u2199", swarr: "\u2199", swarrow: "\u2199", LowerRightArrow: "\u2198", searr: "\u2198", searrow: "\u2198", Lsh: "\u21B0", lsh: "\u21B0", Lstrok: "\u0141", Lt: "\u226A", NestedLessLess: "\u226A", ll: "\u226A", Map: "\u2905", Mcy: "\u041C", MediumSpace: "\u205F", Mellintrf: "\u2133", Mscr: "\u2133", phmmat: "\u2133", Mfr: "\u{1D510}", MinusPlus: "\u2213", mnplus: "\u2213", mp: "\u2213", Mopf: "\u{1D544}", Mu: "\u039C", NJcy: "\u040A", Nacute: "\u0143", Ncaron: "\u0147", Ncedil: "\u0145", Ncy: "\u041D", NegativeMediumSpace: "\u200B", NegativeThickSpace: "\u200B", NegativeThinSpace: "\u200B", NegativeVeryThinSpace: "\u200B", ZeroWidthSpace: "\u200B", NewLine: `
1781
+ `, Nfr: "\u{1D511}", NoBreak: "\u2060", NonBreakingSpace: "\xA0", nbsp: "\xA0", Nopf: "\u2115", naturals: "\u2115", Not: "\u2AEC", NotCongruent: "\u2262", nequiv: "\u2262", NotCupCap: "\u226D", NotDoubleVerticalBar: "\u2226", npar: "\u2226", nparallel: "\u2226", nshortparallel: "\u2226", nspar: "\u2226", NotElement: "\u2209", notin: "\u2209", notinva: "\u2209", NotEqual: "\u2260", ne: "\u2260", NotEqualTilde: "\u2242\u0338", nesim: "\u2242\u0338", NotExists: "\u2204", nexist: "\u2204", nexists: "\u2204", NotGreater: "\u226F", ngt: "\u226F", ngtr: "\u226F", NotGreaterEqual: "\u2271", nge: "\u2271", ngeq: "\u2271", NotGreaterFullEqual: "\u2267\u0338", ngE: "\u2267\u0338", ngeqq: "\u2267\u0338", NotGreaterGreater: "\u226B\u0338", nGtv: "\u226B\u0338", NotGreaterLess: "\u2279", ntgl: "\u2279", NotGreaterSlantEqual: "\u2A7E\u0338", ngeqslant: "\u2A7E\u0338", nges: "\u2A7E\u0338", NotGreaterTilde: "\u2275", ngsim: "\u2275", NotHumpDownHump: "\u224E\u0338", nbump: "\u224E\u0338", NotHumpEqual: "\u224F\u0338", nbumpe: "\u224F\u0338", NotLeftTriangle: "\u22EA", nltri: "\u22EA", ntriangleleft: "\u22EA", NotLeftTriangleBar: "\u29CF\u0338", NotLeftTriangleEqual: "\u22EC", nltrie: "\u22EC", ntrianglelefteq: "\u22EC", NotLess: "\u226E", nless: "\u226E", nlt: "\u226E", NotLessEqual: "\u2270", nle: "\u2270", nleq: "\u2270", NotLessGreater: "\u2278", ntlg: "\u2278", NotLessLess: "\u226A\u0338", nLtv: "\u226A\u0338", NotLessSlantEqual: "\u2A7D\u0338", nleqslant: "\u2A7D\u0338", nles: "\u2A7D\u0338", NotLessTilde: "\u2274", nlsim: "\u2274", NotNestedGreaterGreater: "\u2AA2\u0338", NotNestedLessLess: "\u2AA1\u0338", NotPrecedes: "\u2280", npr: "\u2280", nprec: "\u2280", NotPrecedesEqual: "\u2AAF\u0338", npre: "\u2AAF\u0338", npreceq: "\u2AAF\u0338", NotPrecedesSlantEqual: "\u22E0", nprcue: "\u22E0", NotReverseElement: "\u220C", notni: "\u220C", notniva: "\u220C", NotRightTriangle: "\u22EB", nrtri: "\u22EB", ntriangleright: "\u22EB", NotRightTriangleBar: "\u29D0\u0338", NotRightTriangleEqual: "\u22ED", nrtrie: "\u22ED", ntrianglerighteq: "\u22ED", NotSquareSubset: "\u228F\u0338", NotSquareSubsetEqual: "\u22E2", nsqsube: "\u22E2", NotSquareSuperset: "\u2290\u0338", NotSquareSupersetEqual: "\u22E3", nsqsupe: "\u22E3", NotSubset: "\u2282\u20D2", nsubset: "\u2282\u20D2", vnsub: "\u2282\u20D2", NotSubsetEqual: "\u2288", nsube: "\u2288", nsubseteq: "\u2288", NotSucceeds: "\u2281", nsc: "\u2281", nsucc: "\u2281", NotSucceedsEqual: "\u2AB0\u0338", nsce: "\u2AB0\u0338", nsucceq: "\u2AB0\u0338", NotSucceedsSlantEqual: "\u22E1", nsccue: "\u22E1", NotSucceedsTilde: "\u227F\u0338", NotSuperset: "\u2283\u20D2", nsupset: "\u2283\u20D2", vnsup: "\u2283\u20D2", NotSupersetEqual: "\u2289", nsupe: "\u2289", nsupseteq: "\u2289", NotTilde: "\u2241", nsim: "\u2241", NotTildeEqual: "\u2244", nsime: "\u2244", nsimeq: "\u2244", NotTildeFullEqual: "\u2247", ncong: "\u2247", NotTildeTilde: "\u2249", nap: "\u2249", napprox: "\u2249", NotVerticalBar: "\u2224", nmid: "\u2224", nshortmid: "\u2224", nsmid: "\u2224", Nscr: "\u{1D4A9}", Ntilde: "\xD1", Nu: "\u039D", OElig: "\u0152", Oacute: "\xD3", Ocirc: "\xD4", Ocy: "\u041E", Odblac: "\u0150", Ofr: "\u{1D512}", Ograve: "\xD2", Omacr: "\u014C", Omega: "\u03A9", ohm: "\u03A9", Omicron: "\u039F", Oopf: "\u{1D546}", OpenCurlyDoubleQuote: "\u201C", ldquo: "\u201C", OpenCurlyQuote: "\u2018", lsquo: "\u2018", Or: "\u2A54", Oscr: "\u{1D4AA}", Oslash: "\xD8", Otilde: "\xD5", Otimes: "\u2A37", Ouml: "\xD6", OverBar: "\u203E", oline: "\u203E", OverBrace: "\u23DE", OverBracket: "\u23B4", tbrk: "\u23B4", OverParenthesis: "\u23DC", PartialD: "\u2202", part: "\u2202", Pcy: "\u041F", Pfr: "\u{1D513}", Phi: "\u03A6", Pi: "\u03A0", PlusMinus: "\xB1", plusmn: "\xB1", pm: "\xB1", Popf: "\u2119", primes: "\u2119", Pr: "\u2ABB", Precedes: "\u227A", pr: "\u227A", prec: "\u227A", PrecedesEqual: "\u2AAF", pre: "\u2AAF", preceq: "\u2AAF", PrecedesSlantEqual: "\u227C", prcue: "\u227C", preccurlyeq: "\u227C", PrecedesTilde: "\u227E", precsim: "\u227E", prsim: "\u227E", Prime: "\u2033", Product: "\u220F", prod: "\u220F", Proportional: "\u221D", prop: "\u221D", propto: "\u221D", varpropto: "\u221D", vprop: "\u221D", Pscr: "\u{1D4AB}", Psi: "\u03A8", QUOT: '"', quot: '"', Qfr: "\u{1D514}", Qopf: "\u211A", rationals: "\u211A", Qscr: "\u{1D4AC}", RBarr: "\u2910", drbkarow: "\u2910", REG: "\xAE", circledR: "\xAE", reg: "\xAE", Racute: "\u0154", Rang: "\u27EB", Rarr: "\u21A0", twoheadrightarrow: "\u21A0", Rarrtl: "\u2916", Rcaron: "\u0158", Rcedil: "\u0156", Rcy: "\u0420", Re: "\u211C", Rfr: "\u211C", real: "\u211C", realpart: "\u211C", ReverseElement: "\u220B", SuchThat: "\u220B", ni: "\u220B", niv: "\u220B", ReverseEquilibrium: "\u21CB", leftrightharpoons: "\u21CB", lrhar: "\u21CB", ReverseUpEquilibrium: "\u296F", duhar: "\u296F", Rho: "\u03A1", RightAngleBracket: "\u27E9", rang: "\u27E9", rangle: "\u27E9", RightArrow: "\u2192", ShortRightArrow: "\u2192", rarr: "\u2192", rightarrow: "\u2192", srarr: "\u2192", RightArrowBar: "\u21E5", rarrb: "\u21E5", RightArrowLeftArrow: "\u21C4", rightleftarrows: "\u21C4", rlarr: "\u21C4", RightCeiling: "\u2309", rceil: "\u2309", RightDoubleBracket: "\u27E7", robrk: "\u27E7", RightDownTeeVector: "\u295D", RightDownVector: "\u21C2", dharr: "\u21C2", downharpoonright: "\u21C2", RightDownVectorBar: "\u2955", RightFloor: "\u230B", rfloor: "\u230B", RightTee: "\u22A2", vdash: "\u22A2", RightTeeArrow: "\u21A6", map: "\u21A6", mapsto: "\u21A6", RightTeeVector: "\u295B", RightTriangle: "\u22B3", vartriangleright: "\u22B3", vrtri: "\u22B3", RightTriangleBar: "\u29D0", RightTriangleEqual: "\u22B5", rtrie: "\u22B5", trianglerighteq: "\u22B5", RightUpDownVector: "\u294F", RightUpTeeVector: "\u295C", RightUpVector: "\u21BE", uharr: "\u21BE", upharpoonright: "\u21BE", RightUpVectorBar: "\u2954", RightVector: "\u21C0", rharu: "\u21C0", rightharpoonup: "\u21C0", RightVectorBar: "\u2953", Ropf: "\u211D", reals: "\u211D", RoundImplies: "\u2970", Rrightarrow: "\u21DB", rAarr: "\u21DB", Rscr: "\u211B", realine: "\u211B", Rsh: "\u21B1", rsh: "\u21B1", RuleDelayed: "\u29F4", SHCHcy: "\u0429", SHcy: "\u0428", SOFTcy: "\u042C", Sacute: "\u015A", Sc: "\u2ABC", Scaron: "\u0160", Scedil: "\u015E", Scirc: "\u015C", Scy: "\u0421", Sfr: "\u{1D516}", ShortUpArrow: "\u2191", UpArrow: "\u2191", uarr: "\u2191", uparrow: "\u2191", Sigma: "\u03A3", SmallCircle: "\u2218", compfn: "\u2218", Sopf: "\u{1D54A}", Sqrt: "\u221A", radic: "\u221A", Square: "\u25A1", squ: "\u25A1", square: "\u25A1", SquareIntersection: "\u2293", sqcap: "\u2293", SquareSubset: "\u228F", sqsub: "\u228F", sqsubset: "\u228F", SquareSubsetEqual: "\u2291", sqsube: "\u2291", sqsubseteq: "\u2291", SquareSuperset: "\u2290", sqsup: "\u2290", sqsupset: "\u2290", SquareSupersetEqual: "\u2292", sqsupe: "\u2292", sqsupseteq: "\u2292", SquareUnion: "\u2294", sqcup: "\u2294", Sscr: "\u{1D4AE}", Star: "\u22C6", sstarf: "\u22C6", Sub: "\u22D0", Subset: "\u22D0", SubsetEqual: "\u2286", sube: "\u2286", subseteq: "\u2286", Succeeds: "\u227B", sc: "\u227B", succ: "\u227B", SucceedsEqual: "\u2AB0", sce: "\u2AB0", succeq: "\u2AB0", SucceedsSlantEqual: "\u227D", sccue: "\u227D", succcurlyeq: "\u227D", SucceedsTilde: "\u227F", scsim: "\u227F", succsim: "\u227F", Sum: "\u2211", sum: "\u2211", Sup: "\u22D1", Supset: "\u22D1", Superset: "\u2283", sup: "\u2283", supset: "\u2283", SupersetEqual: "\u2287", supe: "\u2287", supseteq: "\u2287", THORN: "\xDE", TRADE: "\u2122", trade: "\u2122", TSHcy: "\u040B", TScy: "\u0426", Tab: " ", Tau: "\u03A4", Tcaron: "\u0164", Tcedil: "\u0162", Tcy: "\u0422", Tfr: "\u{1D517}", Therefore: "\u2234", there4: "\u2234", therefore: "\u2234", Theta: "\u0398", ThickSpace: "\u205F\u200A", ThinSpace: "\u2009", thinsp: "\u2009", Tilde: "\u223C", sim: "\u223C", thicksim: "\u223C", thksim: "\u223C", TildeEqual: "\u2243", sime: "\u2243", simeq: "\u2243", TildeFullEqual: "\u2245", cong: "\u2245", TildeTilde: "\u2248", ap: "\u2248", approx: "\u2248", asymp: "\u2248", thickapprox: "\u2248", thkap: "\u2248", Topf: "\u{1D54B}", TripleDot: "\u20DB", tdot: "\u20DB", Tscr: "\u{1D4AF}", Tstrok: "\u0166", Uacute: "\xDA", Uarr: "\u219F", Uarrocir: "\u2949", Ubrcy: "\u040E", Ubreve: "\u016C", Ucirc: "\xDB", Ucy: "\u0423", Udblac: "\u0170", Ufr: "\u{1D518}", Ugrave: "\xD9", Umacr: "\u016A", UnderBar: "_", lowbar: "_", UnderBrace: "\u23DF", UnderBracket: "\u23B5", bbrk: "\u23B5", UnderParenthesis: "\u23DD", Union: "\u22C3", bigcup: "\u22C3", xcup: "\u22C3", UnionPlus: "\u228E", uplus: "\u228E", Uogon: "\u0172", Uopf: "\u{1D54C}", UpArrowBar: "\u2912", UpArrowDownArrow: "\u21C5", udarr: "\u21C5", UpDownArrow: "\u2195", updownarrow: "\u2195", varr: "\u2195", UpEquilibrium: "\u296E", udhar: "\u296E", UpTee: "\u22A5", bot: "\u22A5", bottom: "\u22A5", perp: "\u22A5", UpTeeArrow: "\u21A5", mapstoup: "\u21A5", UpperLeftArrow: "\u2196", nwarr: "\u2196", nwarrow: "\u2196", UpperRightArrow: "\u2197", nearr: "\u2197", nearrow: "\u2197", Upsi: "\u03D2", upsih: "\u03D2", Upsilon: "\u03A5", Uring: "\u016E", Uscr: "\u{1D4B0}", Utilde: "\u0168", Uuml: "\xDC", VDash: "\u22AB", Vbar: "\u2AEB", Vcy: "\u0412", Vdash: "\u22A9", Vdashl: "\u2AE6", Vee: "\u22C1", bigvee: "\u22C1", xvee: "\u22C1", Verbar: "\u2016", Vert: "\u2016", VerticalBar: "\u2223", mid: "\u2223", shortmid: "\u2223", smid: "\u2223", VerticalLine: "|", verbar: "|", vert: "|", VerticalSeparator: "\u2758", VerticalTilde: "\u2240", wr: "\u2240", wreath: "\u2240", VeryThinSpace: "\u200A", hairsp: "\u200A", Vfr: "\u{1D519}", Vopf: "\u{1D54D}", Vscr: "\u{1D4B1}", Vvdash: "\u22AA", Wcirc: "\u0174", Wedge: "\u22C0", bigwedge: "\u22C0", xwedge: "\u22C0", Wfr: "\u{1D51A}", Wopf: "\u{1D54E}", Wscr: "\u{1D4B2}", Xfr: "\u{1D51B}", Xi: "\u039E", Xopf: "\u{1D54F}", Xscr: "\u{1D4B3}", YAcy: "\u042F", YIcy: "\u0407", YUcy: "\u042E", Yacute: "\xDD", Ycirc: "\u0176", Ycy: "\u042B", Yfr: "\u{1D51C}", Yopf: "\u{1D550}", Yscr: "\u{1D4B4}", Yuml: "\u0178", ZHcy: "\u0416", Zacute: "\u0179", Zcaron: "\u017D", Zcy: "\u0417", Zdot: "\u017B", Zeta: "\u0396", Zfr: "\u2128", zeetrf: "\u2128", Zopf: "\u2124", integers: "\u2124", Zscr: "\u{1D4B5}", aacute: "\xE1", abreve: "\u0103", ac: "\u223E", mstpos: "\u223E", acE: "\u223E\u0333", acd: "\u223F", acirc: "\xE2", acy: "\u0430", aelig: "\xE6", afr: "\u{1D51E}", agrave: "\xE0", alefsym: "\u2135", aleph: "\u2135", alpha: "\u03B1", amacr: "\u0101", amalg: "\u2A3F", and: "\u2227", wedge: "\u2227", andand: "\u2A55", andd: "\u2A5C", andslope: "\u2A58", andv: "\u2A5A", ang: "\u2220", angle: "\u2220", ange: "\u29A4", angmsd: "\u2221", measuredangle: "\u2221", angmsdaa: "\u29A8", angmsdab: "\u29A9", angmsdac: "\u29AA", angmsdad: "\u29AB", angmsdae: "\u29AC", angmsdaf: "\u29AD", angmsdag: "\u29AE", angmsdah: "\u29AF", angrt: "\u221F", angrtvb: "\u22BE", angrtvbd: "\u299D", angsph: "\u2222", angzarr: "\u237C", aogon: "\u0105", aopf: "\u{1D552}", apE: "\u2A70", apacir: "\u2A6F", ape: "\u224A", approxeq: "\u224A", apid: "\u224B", apos: "'", aring: "\xE5", ascr: "\u{1D4B6}", ast: "*", midast: "*", atilde: "\xE3", auml: "\xE4", awint: "\u2A11", bNot: "\u2AED", backcong: "\u224C", bcong: "\u224C", backepsilon: "\u03F6", bepsi: "\u03F6", backprime: "\u2035", bprime: "\u2035", backsim: "\u223D", bsim: "\u223D", backsimeq: "\u22CD", bsime: "\u22CD", barvee: "\u22BD", barwed: "\u2305", barwedge: "\u2305", bbrktbrk: "\u23B6", bcy: "\u0431", bdquo: "\u201E", ldquor: "\u201E", bemptyv: "\u29B0", beta: "\u03B2", beth: "\u2136", between: "\u226C", twixt: "\u226C", bfr: "\u{1D51F}", bigcirc: "\u25EF", xcirc: "\u25EF", bigodot: "\u2A00", xodot: "\u2A00", bigoplus: "\u2A01", xoplus: "\u2A01", bigotimes: "\u2A02", xotime: "\u2A02", bigsqcup: "\u2A06", xsqcup: "\u2A06", bigstar: "\u2605", starf: "\u2605", bigtriangledown: "\u25BD", xdtri: "\u25BD", bigtriangleup: "\u25B3", xutri: "\u25B3", biguplus: "\u2A04", xuplus: "\u2A04", bkarow: "\u290D", rbarr: "\u290D", blacklozenge: "\u29EB", lozf: "\u29EB", blacktriangle: "\u25B4", utrif: "\u25B4", blacktriangledown: "\u25BE", dtrif: "\u25BE", blacktriangleleft: "\u25C2", ltrif: "\u25C2", blacktriangleright: "\u25B8", rtrif: "\u25B8", blank: "\u2423", blk12: "\u2592", blk14: "\u2591", blk34: "\u2593", block: "\u2588", bne: "=\u20E5", bnequiv: "\u2261\u20E5", bnot: "\u2310", bopf: "\u{1D553}", bowtie: "\u22C8", boxDL: "\u2557", boxDR: "\u2554", boxDl: "\u2556", boxDr: "\u2553", boxH: "\u2550", boxHD: "\u2566", boxHU: "\u2569", boxHd: "\u2564", boxHu: "\u2567", boxUL: "\u255D", boxUR: "\u255A", boxUl: "\u255C", boxUr: "\u2559", boxV: "\u2551", boxVH: "\u256C", boxVL: "\u2563", boxVR: "\u2560", boxVh: "\u256B", boxVl: "\u2562", boxVr: "\u255F", boxbox: "\u29C9", boxdL: "\u2555", boxdR: "\u2552", boxdl: "\u2510", boxdr: "\u250C", boxhD: "\u2565", boxhU: "\u2568", boxhd: "\u252C", boxhu: "\u2534", boxminus: "\u229F", minusb: "\u229F", boxplus: "\u229E", plusb: "\u229E", boxtimes: "\u22A0", timesb: "\u22A0", boxuL: "\u255B", boxuR: "\u2558", boxul: "\u2518", boxur: "\u2514", boxv: "\u2502", boxvH: "\u256A", boxvL: "\u2561", boxvR: "\u255E", boxvh: "\u253C", boxvl: "\u2524", boxvr: "\u251C", brvbar: "\xA6", bscr: "\u{1D4B7}", bsemi: "\u204F", bsol: "\\", bsolb: "\u29C5", bsolhsub: "\u27C8", bull: "\u2022", bullet: "\u2022", bumpE: "\u2AAE", cacute: "\u0107", cap: "\u2229", capand: "\u2A44", capbrcup: "\u2A49", capcap: "\u2A4B", capcup: "\u2A47", capdot: "\u2A40", caps: "\u2229\uFE00", caret: "\u2041", ccaps: "\u2A4D", ccaron: "\u010D", ccedil: "\xE7", ccirc: "\u0109", ccups: "\u2A4C", ccupssm: "\u2A50", cdot: "\u010B", cemptyv: "\u29B2", cent: "\xA2", cfr: "\u{1D520}", chcy: "\u0447", check: "\u2713", checkmark: "\u2713", chi: "\u03C7", cir: "\u25CB", cirE: "\u29C3", circ: "\u02C6", circeq: "\u2257", cire: "\u2257", circlearrowleft: "\u21BA", olarr: "\u21BA", circlearrowright: "\u21BB", orarr: "\u21BB", circledS: "\u24C8", oS: "\u24C8", circledast: "\u229B", oast: "\u229B", circledcirc: "\u229A", ocir: "\u229A", circleddash: "\u229D", odash: "\u229D", cirfnint: "\u2A10", cirmid: "\u2AEF", cirscir: "\u29C2", clubs: "\u2663", clubsuit: "\u2663", colon: ":", comma: ",", commat: "@", comp: "\u2201", complement: "\u2201", congdot: "\u2A6D", copf: "\u{1D554}", copysr: "\u2117", crarr: "\u21B5", cross: "\u2717", cscr: "\u{1D4B8}", csub: "\u2ACF", csube: "\u2AD1", csup: "\u2AD0", csupe: "\u2AD2", ctdot: "\u22EF", cudarrl: "\u2938", cudarrr: "\u2935", cuepr: "\u22DE", curlyeqprec: "\u22DE", cuesc: "\u22DF", curlyeqsucc: "\u22DF", cularr: "\u21B6", curvearrowleft: "\u21B6", cularrp: "\u293D", cup: "\u222A", cupbrcap: "\u2A48", cupcap: "\u2A46", cupcup: "\u2A4A", cupdot: "\u228D", cupor: "\u2A45", cups: "\u222A\uFE00", curarr: "\u21B7", curvearrowright: "\u21B7", curarrm: "\u293C", curlyvee: "\u22CE", cuvee: "\u22CE", curlywedge: "\u22CF", cuwed: "\u22CF", curren: "\xA4", cwint: "\u2231", cylcty: "\u232D", dHar: "\u2965", dagger: "\u2020", daleth: "\u2138", dash: "\u2010", hyphen: "\u2010", dbkarow: "\u290F", rBarr: "\u290F", dcaron: "\u010F", dcy: "\u0434", ddarr: "\u21CA", downdownarrows: "\u21CA", ddotseq: "\u2A77", eDDot: "\u2A77", deg: "\xB0", delta: "\u03B4", demptyv: "\u29B1", dfisht: "\u297F", dfr: "\u{1D521}", diamondsuit: "\u2666", diams: "\u2666", digamma: "\u03DD", gammad: "\u03DD", disin: "\u22F2", div: "\xF7", divide: "\xF7", divideontimes: "\u22C7", divonx: "\u22C7", djcy: "\u0452", dlcorn: "\u231E", llcorner: "\u231E", dlcrop: "\u230D", dollar: "$", dopf: "\u{1D555}", doteqdot: "\u2251", eDot: "\u2251", dotminus: "\u2238", minusd: "\u2238", dotplus: "\u2214", plusdo: "\u2214", dotsquare: "\u22A1", sdotb: "\u22A1", drcorn: "\u231F", lrcorner: "\u231F", drcrop: "\u230C", dscr: "\u{1D4B9}", dscy: "\u0455", dsol: "\u29F6", dstrok: "\u0111", dtdot: "\u22F1", dtri: "\u25BF", triangledown: "\u25BF", dwangle: "\u29A6", dzcy: "\u045F", dzigrarr: "\u27FF", eacute: "\xE9", easter: "\u2A6E", ecaron: "\u011B", ecir: "\u2256", eqcirc: "\u2256", ecirc: "\xEA", ecolon: "\u2255", eqcolon: "\u2255", ecy: "\u044D", edot: "\u0117", efDot: "\u2252", fallingdotseq: "\u2252", efr: "\u{1D522}", eg: "\u2A9A", egrave: "\xE8", egs: "\u2A96", eqslantgtr: "\u2A96", egsdot: "\u2A98", el: "\u2A99", elinters: "\u23E7", ell: "\u2113", els: "\u2A95", eqslantless: "\u2A95", elsdot: "\u2A97", emacr: "\u0113", empty: "\u2205", emptyset: "\u2205", emptyv: "\u2205", varnothing: "\u2205", emsp13: "\u2004", emsp14: "\u2005", emsp: "\u2003", eng: "\u014B", ensp: "\u2002", eogon: "\u0119", eopf: "\u{1D556}", epar: "\u22D5", eparsl: "\u29E3", eplus: "\u2A71", epsi: "\u03B5", epsilon: "\u03B5", epsiv: "\u03F5", straightepsilon: "\u03F5", varepsilon: "\u03F5", equals: "=", equest: "\u225F", questeq: "\u225F", equivDD: "\u2A78", eqvparsl: "\u29E5", erDot: "\u2253", risingdotseq: "\u2253", erarr: "\u2971", escr: "\u212F", eta: "\u03B7", eth: "\xF0", euml: "\xEB", euro: "\u20AC", excl: "!", fcy: "\u0444", female: "\u2640", ffilig: "\uFB03", fflig: "\uFB00", ffllig: "\uFB04", ffr: "\u{1D523}", filig: "\uFB01", fjlig: "fj", flat: "\u266D", fllig: "\uFB02", fltns: "\u25B1", fnof: "\u0192", fopf: "\u{1D557}", fork: "\u22D4", pitchfork: "\u22D4", forkv: "\u2AD9", fpartint: "\u2A0D", frac12: "\xBD", half: "\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", sfrown: "\u2322", fscr: "\u{1D4BB}", gEl: "\u2A8C", gtreqqless: "\u2A8C", gacute: "\u01F5", gamma: "\u03B3", gap: "\u2A86", gtrapprox: "\u2A86", gbreve: "\u011F", gcirc: "\u011D", gcy: "\u0433", gdot: "\u0121", gescc: "\u2AA9", gesdot: "\u2A80", gesdoto: "\u2A82", gesdotol: "\u2A84", gesl: "\u22DB\uFE00", gesles: "\u2A94", gfr: "\u{1D524}", gimel: "\u2137", gjcy: "\u0453", glE: "\u2A92", gla: "\u2AA5", glj: "\u2AA4", gnE: "\u2269", gneqq: "\u2269", gnap: "\u2A8A", gnapprox: "\u2A8A", gne: "\u2A88", gneq: "\u2A88", gnsim: "\u22E7", gopf: "\u{1D558}", gscr: "\u210A", gsime: "\u2A8E", gsiml: "\u2A90", gtcc: "\u2AA7", gtcir: "\u2A7A", gtdot: "\u22D7", gtrdot: "\u22D7", gtlPar: "\u2995", gtquest: "\u2A7C", gtrarr: "\u2978", gvertneqq: "\u2269\uFE00", gvnE: "\u2269\uFE00", hardcy: "\u044A", harrcir: "\u2948", harrw: "\u21AD", leftrightsquigarrow: "\u21AD", hbar: "\u210F", hslash: "\u210F", planck: "\u210F", plankv: "\u210F", hcirc: "\u0125", hearts: "\u2665", heartsuit: "\u2665", hellip: "\u2026", mldr: "\u2026", hercon: "\u22B9", hfr: "\u{1D525}", hksearow: "\u2925", searhk: "\u2925", hkswarow: "\u2926", swarhk: "\u2926", hoarr: "\u21FF", homtht: "\u223B", hookleftarrow: "\u21A9", larrhk: "\u21A9", hookrightarrow: "\u21AA", rarrhk: "\u21AA", hopf: "\u{1D559}", horbar: "\u2015", hscr: "\u{1D4BD}", hstrok: "\u0127", hybull: "\u2043", iacute: "\xED", icirc: "\xEE", icy: "\u0438", iecy: "\u0435", iexcl: "\xA1", ifr: "\u{1D526}", igrave: "\xEC", iiiint: "\u2A0C", qint: "\u2A0C", iiint: "\u222D", tint: "\u222D", iinfin: "\u29DC", iiota: "\u2129", ijlig: "\u0133", imacr: "\u012B", imath: "\u0131", inodot: "\u0131", imof: "\u22B7", imped: "\u01B5", incare: "\u2105", infin: "\u221E", infintie: "\u29DD", intcal: "\u22BA", intercal: "\u22BA", intlarhk: "\u2A17", intprod: "\u2A3C", iprod: "\u2A3C", iocy: "\u0451", iogon: "\u012F", iopf: "\u{1D55A}", iota: "\u03B9", iquest: "\xBF", iscr: "\u{1D4BE}", isinE: "\u22F9", isindot: "\u22F5", isins: "\u22F4", isinsv: "\u22F3", itilde: "\u0129", iukcy: "\u0456", iuml: "\xEF", jcirc: "\u0135", jcy: "\u0439", jfr: "\u{1D527}", jmath: "\u0237", jopf: "\u{1D55B}", jscr: "\u{1D4BF}", jsercy: "\u0458", jukcy: "\u0454", kappa: "\u03BA", kappav: "\u03F0", varkappa: "\u03F0", kcedil: "\u0137", kcy: "\u043A", kfr: "\u{1D528}", kgreen: "\u0138", khcy: "\u0445", kjcy: "\u045C", kopf: "\u{1D55C}", kscr: "\u{1D4C0}", lAtail: "\u291B", lBarr: "\u290E", lEg: "\u2A8B", lesseqqgtr: "\u2A8B", lHar: "\u2962", lacute: "\u013A", laemptyv: "\u29B4", lambda: "\u03BB", langd: "\u2991", lap: "\u2A85", lessapprox: "\u2A85", laquo: "\xAB", larrbfs: "\u291F", larrfs: "\u291D", larrlp: "\u21AB", looparrowleft: "\u21AB", larrpl: "\u2939", larrsim: "\u2973", larrtl: "\u21A2", leftarrowtail: "\u21A2", lat: "\u2AAB", latail: "\u2919", late: "\u2AAD", lates: "\u2AAD\uFE00", lbarr: "\u290C", lbbrk: "\u2772", lbrace: "{", lcub: "{", lbrack: "[", lsqb: "[", lbrke: "\u298B", lbrksld: "\u298F", lbrkslu: "\u298D", lcaron: "\u013E", lcedil: "\u013C", lcy: "\u043B", ldca: "\u2936", ldrdhar: "\u2967", ldrushar: "\u294B", ldsh: "\u21B2", le: "\u2264", leq: "\u2264", leftleftarrows: "\u21C7", llarr: "\u21C7", leftthreetimes: "\u22CB", lthree: "\u22CB", lescc: "\u2AA8", lesdot: "\u2A7F", lesdoto: "\u2A81", lesdotor: "\u2A83", lesg: "\u22DA\uFE00", lesges: "\u2A93", lessdot: "\u22D6", ltdot: "\u22D6", lfisht: "\u297C", lfr: "\u{1D529}", lgE: "\u2A91", lharul: "\u296A", lhblk: "\u2584", ljcy: "\u0459", llhard: "\u296B", lltri: "\u25FA", lmidot: "\u0140", lmoust: "\u23B0", lmoustache: "\u23B0", lnE: "\u2268", lneqq: "\u2268", lnap: "\u2A89", lnapprox: "\u2A89", lne: "\u2A87", lneq: "\u2A87", lnsim: "\u22E6", loang: "\u27EC", loarr: "\u21FD", longmapsto: "\u27FC", xmap: "\u27FC", looparrowright: "\u21AC", rarrlp: "\u21AC", lopar: "\u2985", lopf: "\u{1D55D}", loplus: "\u2A2D", lotimes: "\u2A34", lowast: "\u2217", loz: "\u25CA", lozenge: "\u25CA", lpar: "(", lparlt: "\u2993", lrhard: "\u296D", lrm: "\u200E", lrtri: "\u22BF", lsaquo: "\u2039", lscr: "\u{1D4C1}", lsime: "\u2A8D", lsimg: "\u2A8F", lsquor: "\u201A", sbquo: "\u201A", lstrok: "\u0142", ltcc: "\u2AA6", ltcir: "\u2A79", ltimes: "\u22C9", ltlarr: "\u2976", ltquest: "\u2A7B", ltrPar: "\u2996", ltri: "\u25C3", triangleleft: "\u25C3", lurdshar: "\u294A", luruhar: "\u2966", lvertneqq: "\u2268\uFE00", lvnE: "\u2268\uFE00", mDDot: "\u223A", macr: "\xAF", strns: "\xAF", male: "\u2642", malt: "\u2720", maltese: "\u2720", marker: "\u25AE", mcomma: "\u2A29", mcy: "\u043C", mdash: "\u2014", mfr: "\u{1D52A}", mho: "\u2127", micro: "\xB5", midcir: "\u2AF0", minus: "\u2212", minusdu: "\u2A2A", mlcp: "\u2ADB", models: "\u22A7", mopf: "\u{1D55E}", mscr: "\u{1D4C2}", mu: "\u03BC", multimap: "\u22B8", mumap: "\u22B8", nGg: "\u22D9\u0338", nGt: "\u226B\u20D2", nLeftarrow: "\u21CD", nlArr: "\u21CD", nLeftrightarrow: "\u21CE", nhArr: "\u21CE", nLl: "\u22D8\u0338", nLt: "\u226A\u20D2", nRightarrow: "\u21CF", nrArr: "\u21CF", nVDash: "\u22AF", nVdash: "\u22AE", nacute: "\u0144", nang: "\u2220\u20D2", napE: "\u2A70\u0338", napid: "\u224B\u0338", napos: "\u0149", natur: "\u266E", natural: "\u266E", ncap: "\u2A43", ncaron: "\u0148", ncedil: "\u0146", ncongdot: "\u2A6D\u0338", ncup: "\u2A42", ncy: "\u043D", ndash: "\u2013", neArr: "\u21D7", nearhk: "\u2924", nedot: "\u2250\u0338", nesear: "\u2928", toea: "\u2928", nfr: "\u{1D52B}", nharr: "\u21AE", nleftrightarrow: "\u21AE", nhpar: "\u2AF2", nis: "\u22FC", nisd: "\u22FA", njcy: "\u045A", nlE: "\u2266\u0338", nleqq: "\u2266\u0338", nlarr: "\u219A", nleftarrow: "\u219A", nldr: "\u2025", nopf: "\u{1D55F}", not: "\xAC", notinE: "\u22F9\u0338", notindot: "\u22F5\u0338", notinvb: "\u22F7", notinvc: "\u22F6", notnivb: "\u22FE", notnivc: "\u22FD", nparsl: "\u2AFD\u20E5", npart: "\u2202\u0338", npolint: "\u2A14", nrarr: "\u219B", nrightarrow: "\u219B", nrarrc: "\u2933\u0338", nrarrw: "\u219D\u0338", nscr: "\u{1D4C3}", nsub: "\u2284", nsubE: "\u2AC5\u0338", nsubseteqq: "\u2AC5\u0338", nsup: "\u2285", nsupE: "\u2AC6\u0338", nsupseteqq: "\u2AC6\u0338", ntilde: "\xF1", nu: "\u03BD", num: "#", numero: "\u2116", numsp: "\u2007", nvDash: "\u22AD", nvHarr: "\u2904", nvap: "\u224D\u20D2", nvdash: "\u22AC", nvge: "\u2265\u20D2", nvgt: ">\u20D2", nvinfin: "\u29DE", nvlArr: "\u2902", nvle: "\u2264\u20D2", nvlt: "<\u20D2", nvltrie: "\u22B4\u20D2", nvrArr: "\u2903", nvrtrie: "\u22B5\u20D2", nvsim: "\u223C\u20D2", nwArr: "\u21D6", nwarhk: "\u2923", nwnear: "\u2927", oacute: "\xF3", ocirc: "\xF4", ocy: "\u043E", odblac: "\u0151", odiv: "\u2A38", odsold: "\u29BC", oelig: "\u0153", ofcir: "\u29BF", ofr: "\u{1D52C}", ogon: "\u02DB", ograve: "\xF2", ogt: "\u29C1", ohbar: "\u29B5", olcir: "\u29BE", olcross: "\u29BB", olt: "\u29C0", omacr: "\u014D", omega: "\u03C9", omicron: "\u03BF", omid: "\u29B6", oopf: "\u{1D560}", opar: "\u29B7", operp: "\u29B9", or: "\u2228", vee: "\u2228", ord: "\u2A5D", order: "\u2134", orderof: "\u2134", oscr: "\u2134", ordf: "\xAA", ordm: "\xBA", origof: "\u22B6", oror: "\u2A56", orslope: "\u2A57", orv: "\u2A5B", oslash: "\xF8", osol: "\u2298", otilde: "\xF5", otimesas: "\u2A36", ouml: "\xF6", ovbar: "\u233D", para: "\xB6", parsim: "\u2AF3", parsl: "\u2AFD", pcy: "\u043F", percnt: "%", period: ".", permil: "\u2030", pertenk: "\u2031", pfr: "\u{1D52D}", phi: "\u03C6", phiv: "\u03D5", straightphi: "\u03D5", varphi: "\u03D5", phone: "\u260E", pi: "\u03C0", piv: "\u03D6", varpi: "\u03D6", planckh: "\u210E", plus: "+", plusacir: "\u2A23", pluscir: "\u2A22", plusdu: "\u2A25", pluse: "\u2A72", plussim: "\u2A26", plustwo: "\u2A27", pointint: "\u2A15", popf: "\u{1D561}", pound: "\xA3", prE: "\u2AB3", prap: "\u2AB7", precapprox: "\u2AB7", precnapprox: "\u2AB9", prnap: "\u2AB9", precneqq: "\u2AB5", prnE: "\u2AB5", precnsim: "\u22E8", prnsim: "\u22E8", prime: "\u2032", profalar: "\u232E", profline: "\u2312", profsurf: "\u2313", prurel: "\u22B0", pscr: "\u{1D4C5}", psi: "\u03C8", puncsp: "\u2008", qfr: "\u{1D52E}", qopf: "\u{1D562}", qprime: "\u2057", qscr: "\u{1D4C6}", quatint: "\u2A16", quest: "?", rAtail: "\u291C", rHar: "\u2964", race: "\u223D\u0331", racute: "\u0155", raemptyv: "\u29B3", rangd: "\u2992", range: "\u29A5", raquo: "\xBB", rarrap: "\u2975", rarrbfs: "\u2920", rarrc: "\u2933", rarrfs: "\u291E", rarrpl: "\u2945", rarrsim: "\u2974", rarrtl: "\u21A3", rightarrowtail: "\u21A3", rarrw: "\u219D", rightsquigarrow: "\u219D", ratail: "\u291A", ratio: "\u2236", rbbrk: "\u2773", rbrace: "}", rcub: "}", rbrack: "]", rsqb: "]", rbrke: "\u298C", rbrksld: "\u298E", rbrkslu: "\u2990", rcaron: "\u0159", rcedil: "\u0157", rcy: "\u0440", rdca: "\u2937", rdldhar: "\u2969", rdsh: "\u21B3", rect: "\u25AD", rfisht: "\u297D", rfr: "\u{1D52F}", rharul: "\u296C", rho: "\u03C1", rhov: "\u03F1", varrho: "\u03F1", rightrightarrows: "\u21C9", rrarr: "\u21C9", rightthreetimes: "\u22CC", rthree: "\u22CC", ring: "\u02DA", rlm: "\u200F", rmoust: "\u23B1", rmoustache: "\u23B1", rnmid: "\u2AEE", roang: "\u27ED", roarr: "\u21FE", ropar: "\u2986", ropf: "\u{1D563}", roplus: "\u2A2E", rotimes: "\u2A35", rpar: ")", rpargt: "\u2994", rppolint: "\u2A12", rsaquo: "\u203A", rscr: "\u{1D4C7}", rtimes: "\u22CA", rtri: "\u25B9", triangleright: "\u25B9", rtriltri: "\u29CE", ruluhar: "\u2968", rx: "\u211E", sacute: "\u015B", scE: "\u2AB4", scap: "\u2AB8", succapprox: "\u2AB8", scaron: "\u0161", scedil: "\u015F", scirc: "\u015D", scnE: "\u2AB6", succneqq: "\u2AB6", scnap: "\u2ABA", succnapprox: "\u2ABA", scnsim: "\u22E9", succnsim: "\u22E9", scpolint: "\u2A13", scy: "\u0441", sdot: "\u22C5", sdote: "\u2A66", seArr: "\u21D8", sect: "\xA7", semi: ";", seswar: "\u2929", tosa: "\u2929", sext: "\u2736", sfr: "\u{1D530}", sharp: "\u266F", shchcy: "\u0449", shcy: "\u0448", shy: "\xAD", sigma: "\u03C3", sigmaf: "\u03C2", sigmav: "\u03C2", varsigma: "\u03C2", simdot: "\u2A6A", simg: "\u2A9E", simgE: "\u2AA0", siml: "\u2A9D", simlE: "\u2A9F", simne: "\u2246", simplus: "\u2A24", simrarr: "\u2972", smashp: "\u2A33", smeparsl: "\u29E4", smile: "\u2323", ssmile: "\u2323", smt: "\u2AAA", smte: "\u2AAC", smtes: "\u2AAC\uFE00", softcy: "\u044C", sol: "/", solb: "\u29C4", solbar: "\u233F", sopf: "\u{1D564}", spades: "\u2660", spadesuit: "\u2660", sqcaps: "\u2293\uFE00", sqcups: "\u2294\uFE00", sscr: "\u{1D4C8}", star: "\u2606", sub: "\u2282", subset: "\u2282", subE: "\u2AC5", subseteqq: "\u2AC5", subdot: "\u2ABD", subedot: "\u2AC3", submult: "\u2AC1", subnE: "\u2ACB", subsetneqq: "\u2ACB", subne: "\u228A", subsetneq: "\u228A", subplus: "\u2ABF", subrarr: "\u2979", subsim: "\u2AC7", subsub: "\u2AD5", subsup: "\u2AD3", sung: "\u266A", sup1: "\xB9", sup2: "\xB2", sup3: "\xB3", supE: "\u2AC6", supseteqq: "\u2AC6", supdot: "\u2ABE", supdsub: "\u2AD8", supedot: "\u2AC4", suphsol: "\u27C9", suphsub: "\u2AD7", suplarr: "\u297B", supmult: "\u2AC2", supnE: "\u2ACC", supsetneqq: "\u2ACC", supne: "\u228B", supsetneq: "\u228B", supplus: "\u2AC0", supsim: "\u2AC8", supsub: "\u2AD4", supsup: "\u2AD6", swArr: "\u21D9", swnwar: "\u292A", szlig: "\xDF", target: "\u2316", tau: "\u03C4", tcaron: "\u0165", tcedil: "\u0163", tcy: "\u0442", telrec: "\u2315", tfr: "\u{1D531}", theta: "\u03B8", thetasym: "\u03D1", thetav: "\u03D1", vartheta: "\u03D1", thorn: "\xFE", times: "\xD7", timesbar: "\u2A31", timesd: "\u2A30", topbot: "\u2336", topcir: "\u2AF1", topf: "\u{1D565}", topfork: "\u2ADA", tprime: "\u2034", triangle: "\u25B5", utri: "\u25B5", triangleq: "\u225C", trie: "\u225C", tridot: "\u25EC", triminus: "\u2A3A", triplus: "\u2A39", trisb: "\u29CD", tritime: "\u2A3B", trpezium: "\u23E2", tscr: "\u{1D4C9}", tscy: "\u0446", tshcy: "\u045B", tstrok: "\u0167", uHar: "\u2963", uacute: "\xFA", ubrcy: "\u045E", ubreve: "\u016D", ucirc: "\xFB", ucy: "\u0443", udblac: "\u0171", ufisht: "\u297E", ufr: "\u{1D532}", ugrave: "\xF9", uhblk: "\u2580", ulcorn: "\u231C", ulcorner: "\u231C", ulcrop: "\u230F", ultri: "\u25F8", umacr: "\u016B", uogon: "\u0173", uopf: "\u{1D566}", upsi: "\u03C5", upsilon: "\u03C5", upuparrows: "\u21C8", uuarr: "\u21C8", urcorn: "\u231D", urcorner: "\u231D", urcrop: "\u230E", uring: "\u016F", urtri: "\u25F9", uscr: "\u{1D4CA}", utdot: "\u22F0", utilde: "\u0169", uuml: "\xFC", uwangle: "\u29A7", vBar: "\u2AE8", vBarv: "\u2AE9", vangrt: "\u299C", varsubsetneq: "\u228A\uFE00", vsubne: "\u228A\uFE00", varsubsetneqq: "\u2ACB\uFE00", vsubnE: "\u2ACB\uFE00", varsupsetneq: "\u228B\uFE00", vsupne: "\u228B\uFE00", varsupsetneqq: "\u2ACC\uFE00", vsupnE: "\u2ACC\uFE00", vcy: "\u0432", veebar: "\u22BB", veeeq: "\u225A", vellip: "\u22EE", vfr: "\u{1D533}", vopf: "\u{1D567}", vscr: "\u{1D4CB}", vzigzag: "\u299A", wcirc: "\u0175", wedbar: "\u2A5F", wedgeq: "\u2259", weierp: "\u2118", wp: "\u2118", wfr: "\u{1D534}", wopf: "\u{1D568}", wscr: "\u{1D4CC}", xfr: "\u{1D535}", xi: "\u03BE", xnis: "\u22FB", xopf: "\u{1D569}", xscr: "\u{1D4CD}", yacute: "\xFD", yacy: "\u044F", ycirc: "\u0177", ycy: "\u044B", yen: "\xA5", yfr: "\u{1D536}", yicy: "\u0457", yopf: "\u{1D56A}", yscr: "\u{1D4CE}", yucy: "\u044E", yuml: "\xFF", zacute: "\u017A", zcaron: "\u017E", zcy: "\u0437", zdot: "\u017C", zeta: "\u03B6", zfr: "\u{1D537}", zhcy: "\u0436", zigrarr: "\u21DD", zopf: "\u{1D56B}", zscr: "\u{1D4CF}", zwj: "\u200D", zwnj: "\u200C" }, oo = "\uE500";
1782
+ Te.ngsp = oo;
1783
+ l = (function(e) {
1784
+ return e[e.TAG_OPEN_START = 0] = "TAG_OPEN_START", e[e.TAG_OPEN_END = 1] = "TAG_OPEN_END", e[e.TAG_OPEN_END_VOID = 2] = "TAG_OPEN_END_VOID", e[e.TAG_CLOSE = 3] = "TAG_CLOSE", e[e.INCOMPLETE_TAG_OPEN = 4] = "INCOMPLETE_TAG_OPEN", e[e.TEXT = 5] = "TEXT", e[e.ESCAPABLE_RAW_TEXT = 6] = "ESCAPABLE_RAW_TEXT", e[e.RAW_TEXT = 7] = "RAW_TEXT", e[e.INTERPOLATION = 8] = "INTERPOLATION", e[e.ENCODED_ENTITY = 9] = "ENCODED_ENTITY", e[e.COMMENT_START = 10] = "COMMENT_START", e[e.COMMENT_END = 11] = "COMMENT_END", e[e.CDATA_START = 12] = "CDATA_START", e[e.CDATA_END = 13] = "CDATA_END", e[e.ATTR_NAME = 14] = "ATTR_NAME", e[e.ATTR_QUOTE = 15] = "ATTR_QUOTE", e[e.ATTR_VALUE_TEXT = 16] = "ATTR_VALUE_TEXT", e[e.ATTR_VALUE_INTERPOLATION = 17] = "ATTR_VALUE_INTERPOLATION", e[e.DOC_TYPE_START = 18] = "DOC_TYPE_START", e[e.DOC_TYPE_END = 19] = "DOC_TYPE_END", e[e.EXPANSION_FORM_START = 20] = "EXPANSION_FORM_START", e[e.EXPANSION_CASE_VALUE = 21] = "EXPANSION_CASE_VALUE", e[e.EXPANSION_CASE_EXP_START = 22] = "EXPANSION_CASE_EXP_START", e[e.EXPANSION_CASE_EXP_END = 23] = "EXPANSION_CASE_EXP_END", e[e.EXPANSION_FORM_END = 24] = "EXPANSION_FORM_END", e[e.BLOCK_OPEN_START = 25] = "BLOCK_OPEN_START", e[e.BLOCK_OPEN_END = 26] = "BLOCK_OPEN_END", e[e.BLOCK_CLOSE = 27] = "BLOCK_CLOSE", e[e.BLOCK_PARAMETER = 28] = "BLOCK_PARAMETER", e[e.INCOMPLETE_BLOCK_OPEN = 29] = "INCOMPLETE_BLOCK_OPEN", e[e.LET_START = 30] = "LET_START", e[e.LET_VALUE = 31] = "LET_VALUE", e[e.LET_END = 32] = "LET_END", e[e.INCOMPLETE_LET = 33] = "INCOMPLETE_LET", e[e.COMPONENT_OPEN_START = 34] = "COMPONENT_OPEN_START", e[e.COMPONENT_OPEN_END = 35] = "COMPONENT_OPEN_END", e[e.COMPONENT_OPEN_END_VOID = 36] = "COMPONENT_OPEN_END_VOID", e[e.COMPONENT_CLOSE = 37] = "COMPONENT_CLOSE", e[e.INCOMPLETE_COMPONENT_OPEN = 38] = "INCOMPLETE_COMPONENT_OPEN", e[e.DIRECTIVE_NAME = 39] = "DIRECTIVE_NAME", e[e.DIRECTIVE_OPEN = 40] = "DIRECTIVE_OPEN", e[e.DIRECTIVE_CLOSE = 41] = "DIRECTIVE_CLOSE", e[e.EOF = 42] = "EOF", e;
1785
+ })({}), xo = class {
1786
+ constructor(e, t, r) {
1787
+ this.tokens = e, this.errors = t, this.nonNormalizedIcuExpressions = r;
1788
+ }
1789
+ };
1790
+ No = /\r\n?/g;
1791
+ Mr = (function(e) {
1792
+ return e.HEX = "hexadecimal", e.DEC = "decimal", e;
1793
+ })(Mr || {}), Po = ["@if", "@else", "@for", "@switch", "@case", "@default", "@empty", "@defer", "@placeholder", "@loading", "@error"], mt = { start: "{{", end: "}}" }, Oo = class {
1794
+ constructor(e, t, r) {
1795
+ this._getTagContentType = t, this._currentTokenStart = null, this._currentTokenType = null, this._expansionCaseStack = [], this._openDirectiveCount = 0, this._inInterpolation = !1, this._fullNameStack = [], this.tokens = [], this.errors = [], this.nonNormalizedIcuExpressions = [], this._tokenizeIcu = r.tokenizeExpansionForms || !1, this._leadingTriviaCodePoints = r.leadingTriviaChars && r.leadingTriviaChars.map((i) => i.codePointAt(0) || 0), this._canSelfClose = r.canSelfClose || !1, this._allowHtmComponentClosingTags = r.allowHtmComponentClosingTags || !1;
1796
+ let n = r.range || { endPos: e.content.length, startPos: 0, startLine: 0, startCol: 0 };
1797
+ this._cursor = r.escapedString ? new Ho(e, n) : new is(e, n), this._preserveLineEndings = r.preserveLineEndings || !1, this._i18nNormalizeLineEndingsInICUs = r.i18nNormalizeLineEndingsInICUs || !1, this._tokenizeBlocks = r.tokenizeBlocks ?? !0, this._tokenizeLet = r.tokenizeLet ?? !0, this._selectorlessEnabled = r.selectorlessEnabled ?? !1;
1798
+ try {
1799
+ this._cursor.init();
1800
+ } catch (i) {
1801
+ this.handleError(i);
1802
+ }
1803
+ }
1804
+ _processCarriageReturns(e) {
1805
+ return this._preserveLineEndings ? e : e.replace(No, `
1806
+ `);
1807
+ }
1808
+ tokenize() {
1809
+ for (; this._cursor.peek() !== 0; ) {
1810
+ let e = this._cursor.clone();
1811
+ try {
1812
+ if (this._attemptCharCode(60)) if (this._attemptCharCode(33)) this._attemptStr("[CDATA[") ? this._consumeCdata(e) : this._attemptStr("--") ? this._consumeComment(e) : this._attemptStrCaseInsensitive("doctype") ? this._consumeDocType(e) : this._consumeBogusComment(e);
1813
+ else if (this._attemptCharCode(47)) this._consumeTagClose(e);
1814
+ else {
1815
+ let t = this._cursor.clone();
1816
+ this._attemptCharCode(63) ? (this._cursor = t, this._consumeBogusComment(e)) : this._consumeTagOpen(e);
1817
+ }
1818
+ else this._tokenizeLet && this._cursor.peek() === 64 && !this._inInterpolation && this._isLetStart() ? this._consumeLetDeclaration(e) : this._tokenizeBlocks && this._isBlockStart() ? this._consumeBlockStart(e) : this._tokenizeBlocks && !this._inInterpolation && !this._isInExpansionCase() && !this._isInExpansionForm() && this._attemptCharCode(125) ? this._consumeBlockEnd(e) : this._tokenizeIcu && this._tokenizeExpansionForm() || this._consumeWithInterpolation(l.TEXT, l.INTERPOLATION, () => this._isTextEnd(), () => this._isTagStart());
1819
+ } catch (t) {
1820
+ this.handleError(t);
1821
+ }
1822
+ }
1823
+ this._beginToken(l.EOF), this._endToken([]);
1824
+ }
1825
+ _getBlockName() {
1826
+ let e = !1, t = this._cursor.clone();
1827
+ return this._attemptCharCodeUntilFn((r) => lt(r) ? !e : Fo(r) ? (e = !0, !1) : !0), this._cursor.getChars(t).trim();
1828
+ }
1829
+ _consumeBlockStart(e) {
1830
+ this._requireCharCode(64), this._beginToken(l.BLOCK_OPEN_START, e);
1831
+ let t = this._endToken([this._getBlockName()]);
1832
+ if (this._cursor.peek() === 40) if (this._cursor.advance(), this._consumeBlockParameters(), this._attemptCharCodeUntilFn(T), this._attemptCharCode(41)) this._attemptCharCodeUntilFn(T);
1833
+ else {
1834
+ t.type = l.INCOMPLETE_BLOCK_OPEN;
1835
+ return;
1836
+ }
1837
+ this._attemptCharCode(123) ? (this._beginToken(l.BLOCK_OPEN_END), this._endToken([])) : t.type = l.INCOMPLETE_BLOCK_OPEN;
1838
+ }
1839
+ _consumeBlockEnd(e) {
1840
+ this._beginToken(l.BLOCK_CLOSE, e), this._endToken([]);
1841
+ }
1842
+ _consumeBlockParameters() {
1843
+ for (this._attemptCharCodeUntilFn(Zi); this._cursor.peek() !== 41 && this._cursor.peek() !== 0; ) {
1844
+ this._beginToken(l.BLOCK_PARAMETER);
1845
+ let e = this._cursor.clone(), t = null, r = 0;
1846
+ for (; this._cursor.peek() !== 59 && this._cursor.peek() !== 0 || t !== null; ) {
1847
+ let n = this._cursor.peek();
1848
+ if (n === 92) this._cursor.advance();
1849
+ else if (n === t) t = null;
1850
+ else if (t === null && Ut(n)) t = n;
1851
+ else if (n === 40 && t === null) r++;
1852
+ else if (n === 41 && t === null) {
1853
+ if (r === 0) break;
1854
+ r > 0 && r--;
1855
+ }
1856
+ this._cursor.advance();
1857
+ }
1858
+ this._endToken([this._cursor.getChars(e)]), this._attemptCharCodeUntilFn(Zi);
1859
+ }
1860
+ }
1861
+ _consumeLetDeclaration(e) {
1862
+ if (this._requireStr("@let"), this._beginToken(l.LET_START, e), lt(this._cursor.peek())) this._attemptCharCodeUntilFn(T);
1863
+ else {
1864
+ let r = this._endToken([this._cursor.getChars(e)]);
1865
+ r.type = l.INCOMPLETE_LET;
1866
+ return;
1867
+ }
1868
+ let t = this._endToken([this._getLetDeclarationName()]);
1869
+ if (this._attemptCharCodeUntilFn(T), !this._attemptCharCode(61)) {
1870
+ t.type = l.INCOMPLETE_LET;
1871
+ return;
1872
+ }
1873
+ this._attemptCharCodeUntilFn((r) => T(r) && !ut(r)), this._consumeLetDeclarationValue(), this._cursor.peek() === 59 ? (this._beginToken(l.LET_END), this._endToken([]), this._cursor.advance()) : (t.type = l.INCOMPLETE_LET, t.sourceSpan = this._cursor.getSpan(e));
1874
+ }
1875
+ _getLetDeclarationName() {
1876
+ let e = this._cursor.clone(), t = !1;
1877
+ return this._attemptCharCodeUntilFn((r) => Fe(r) || r === 36 || r === 95 || t && ct(r) ? (t = !0, !1) : !0), this._cursor.getChars(e).trim();
1878
+ }
1879
+ _consumeLetDeclarationValue() {
1880
+ let e = this._cursor.clone();
1881
+ for (this._beginToken(l.LET_VALUE, e); this._cursor.peek() !== 0; ) {
1882
+ let t = this._cursor.peek();
1883
+ if (t === 59) break;
1884
+ Ut(t) && (this._cursor.advance(), this._attemptCharCodeUntilFn((r) => r === 92 ? (this._cursor.advance(), !1) : r === t)), this._cursor.advance();
1885
+ }
1886
+ this._endToken([this._cursor.getChars(e)]);
1887
+ }
1888
+ _tokenizeExpansionForm() {
1889
+ if (this.isExpansionFormStart()) return this._consumeExpansionFormStart(), !0;
1890
+ if (Mo(this._cursor.peek()) && this._isInExpansionForm()) return this._consumeExpansionCaseStart(), !0;
1891
+ if (this._cursor.peek() === 125) {
1892
+ if (this._isInExpansionCase()) return this._consumeExpansionCaseEnd(), !0;
1893
+ if (this._isInExpansionForm()) return this._consumeExpansionFormEnd(), !0;
1894
+ }
1895
+ return !1;
1896
+ }
1897
+ _beginToken(e, t = this._cursor.clone()) {
1898
+ this._currentTokenStart = t, this._currentTokenType = e;
1899
+ }
1900
+ _endToken(e, t) {
1901
+ if (this._currentTokenStart === null) throw new re(this._cursor.getSpan(t), "Programming error - attempted to end a token when there was no start to the token");
1902
+ if (this._currentTokenType === null) throw new re(this._cursor.getSpan(this._currentTokenStart), "Programming error - attempted to end a token which has no token type");
1903
+ let r = { type: this._currentTokenType, parts: e, sourceSpan: (t ?? this._cursor).getSpan(this._currentTokenStart, this._leadingTriviaCodePoints) };
1904
+ return this.tokens.push(r), this._currentTokenStart = null, this._currentTokenType = null, r;
1905
+ }
1906
+ _createError(e, t) {
1907
+ this._isInExpansionForm() && (e += ` (Do you have an unescaped "{" in your template? Use "{{ '{' }}") to escape it.)`);
1908
+ let r = new re(t, e);
1909
+ return this._currentTokenStart = null, this._currentTokenType = null, r;
1910
+ }
1911
+ handleError(e) {
1912
+ if (e instanceof Vr && (e = this._createError(e.msg, this._cursor.getSpan(e.cursor))), e instanceof re) this.errors.push(e);
1913
+ else throw e;
1914
+ }
1915
+ _attemptCharCode(e) {
1916
+ return this._cursor.peek() === e ? (this._cursor.advance(), !0) : !1;
1917
+ }
1918
+ _attemptCharCodeCaseInsensitive(e) {
1919
+ return Bo(this._cursor.peek(), e) ? (this._cursor.advance(), !0) : !1;
1920
+ }
1921
+ _requireCharCode(e) {
1922
+ let t = this._cursor.clone();
1923
+ if (!this._attemptCharCode(e)) throw this._createError(be(this._cursor.peek()), this._cursor.getSpan(t));
1924
+ }
1925
+ _attemptStr(e) {
1926
+ let t = e.length;
1927
+ if (this._cursor.charsLeft() < t) return !1;
1928
+ let r = this._cursor.clone();
1929
+ for (let n = 0; n < t; n++) if (!this._attemptCharCode(e.charCodeAt(n))) return this._cursor = r, !1;
1930
+ return !0;
1931
+ }
1932
+ _attemptStrCaseInsensitive(e) {
1933
+ for (let t = 0; t < e.length; t++) if (!this._attemptCharCodeCaseInsensitive(e.charCodeAt(t))) return !1;
1934
+ return !0;
1935
+ }
1936
+ _requireStr(e) {
1937
+ let t = this._cursor.clone();
1938
+ if (!this._attemptStr(e)) throw this._createError(be(this._cursor.peek()), this._cursor.getSpan(t));
1939
+ }
1940
+ _requireStrCaseInsensitive(e) {
1941
+ let t = this._cursor.clone();
1942
+ if (!this._attemptStrCaseInsensitive(e)) throw this._createError(be(this._cursor.peek()), this._cursor.getSpan(t));
1943
+ }
1944
+ _attemptCharCodeUntilFn(e) {
1945
+ for (; !e(this._cursor.peek()); ) this._cursor.advance();
1946
+ }
1947
+ _requireCharCodeUntilFn(e, t) {
1948
+ let r = this._cursor.clone();
1949
+ if (this._attemptCharCodeUntilFn(e), this._cursor.diff(r) < t) throw this._createError(be(this._cursor.peek()), this._cursor.getSpan(r));
1950
+ }
1951
+ _attemptUntilChar(e) {
1952
+ for (; this._cursor.peek() !== e; ) this._cursor.advance();
1953
+ }
1954
+ _readChar() {
1955
+ let e = String.fromCodePoint(this._cursor.peek());
1956
+ return this._cursor.advance(), e;
1957
+ }
1958
+ _peekStr(e) {
1959
+ let t = e.length;
1960
+ if (this._cursor.charsLeft() < t) return !1;
1961
+ let r = this._cursor.clone();
1962
+ for (let n = 0; n < t; n++) {
1963
+ if (r.peek() !== e.charCodeAt(n)) return !1;
1964
+ r.advance();
1965
+ }
1966
+ return !0;
1967
+ }
1968
+ _isBlockStart() {
1969
+ return this._cursor.peek() === 64 && Po.some((e) => this._peekStr(e));
1970
+ }
1971
+ _isLetStart() {
1972
+ return this._cursor.peek() === 64 && this._peekStr("@let");
1973
+ }
1974
+ _consumeEntity(e) {
1975
+ this._beginToken(l.ENCODED_ENTITY);
1976
+ let t = this._cursor.clone();
1977
+ if (this._cursor.advance(), this._attemptCharCode(35)) {
1978
+ let r = this._attemptCharCode(120) || this._attemptCharCode(88), n = this._cursor.clone();
1979
+ if (this._attemptCharCodeUntilFn(Ro), this._cursor.peek() != 59) {
1980
+ this._cursor.advance();
1981
+ let s = r ? Mr.HEX : Mr.DEC;
1982
+ throw this._createError(Lo(s, this._cursor.getChars(t)), this._cursor.getSpan());
1983
+ }
1984
+ let i = this._cursor.getChars(n);
1985
+ this._cursor.advance();
1986
+ try {
1987
+ let s = parseInt(i, r ? 16 : 10);
1988
+ this._endToken([String.fromCodePoint(s), this._cursor.getChars(t)]);
1989
+ } catch {
1990
+ throw this._createError(Qi(this._cursor.getChars(t)), this._cursor.getSpan());
1991
+ }
1992
+ } else {
1993
+ let r = this._cursor.clone();
1994
+ if (this._attemptCharCodeUntilFn(Io), this._cursor.peek() != 59) this._beginToken(e, t), this._cursor = r, this._endToken(["&"]);
1995
+ else {
1996
+ let n = this._cursor.getChars(r);
1997
+ this._cursor.advance();
1998
+ let i = Te.hasOwnProperty(n) && Te[n];
1999
+ if (!i) throw this._createError(Qi(n), this._cursor.getSpan(t));
2000
+ this._endToken([i, `&${n};`]);
2001
+ }
2002
+ }
2003
+ }
2004
+ _consumeRawText(e, t) {
2005
+ this._beginToken(e ? l.ESCAPABLE_RAW_TEXT : l.RAW_TEXT);
2006
+ let r = [];
2007
+ for (; ; ) {
2008
+ let n = this._cursor.clone(), i = t();
2009
+ if (this._cursor = n, i) break;
2010
+ e && this._cursor.peek() === 38 ? (this._endToken([this._processCarriageReturns(r.join(""))]), r.length = 0, this._consumeEntity(l.ESCAPABLE_RAW_TEXT), this._beginToken(l.ESCAPABLE_RAW_TEXT)) : r.push(this._readChar());
2011
+ }
2012
+ this._endToken([this._processCarriageReturns(r.join(""))]);
2013
+ }
2014
+ _consumeComment(e) {
2015
+ this._beginToken(l.COMMENT_START, e), this._endToken([]), this._consumeRawText(!1, () => this._attemptStr("-->")), this._beginToken(l.COMMENT_END), this._requireStr("-->"), this._endToken([]);
2016
+ }
2017
+ _consumeBogusComment(e) {
2018
+ this._beginToken(l.COMMENT_START, e), this._endToken([]), this._consumeRawText(!1, () => this._cursor.peek() === 62), this._beginToken(l.COMMENT_END), this._cursor.advance(), this._endToken([]);
2019
+ }
2020
+ _consumeCdata(e) {
2021
+ this._beginToken(l.CDATA_START, e), this._endToken([]), this._consumeRawText(!1, () => this._attemptStr("]]>")), this._beginToken(l.CDATA_END), this._requireStr("]]>"), this._endToken([]);
2022
+ }
2023
+ _consumeDocType(e) {
2024
+ this._beginToken(l.DOC_TYPE_START, e), this._endToken([]), this._consumeRawText(!1, () => this._cursor.peek() === 62), this._beginToken(l.DOC_TYPE_END), this._cursor.advance(), this._endToken([]);
2025
+ }
2026
+ _consumePrefixAndName(e) {
2027
+ let t = this._cursor.clone(), r = "";
2028
+ for (; this._cursor.peek() !== 58 && !Do(this._cursor.peek()); ) this._cursor.advance();
2029
+ let n;
2030
+ this._cursor.peek() === 58 ? (r = this._cursor.getChars(t), this._cursor.advance(), n = this._cursor.clone()) : n = t, this._requireCharCodeUntilFn(e, r === "" ? 0 : 1);
2031
+ let i = this._cursor.getChars(n);
2032
+ return [r, i];
2033
+ }
2034
+ _consumeTagOpen(e) {
2035
+ let t, r, n, i, s = [];
2036
+ try {
2037
+ if (this._selectorlessEnabled && zt(this._cursor.peek())) i = this._consumeComponentOpenStart(e), [n, r, t] = i.parts, r && (n += `:${r}`), t && (n += `:${t}`), this._attemptCharCodeUntilFn(T);
2038
+ else {
2039
+ if (!Fe(this._cursor.peek())) throw this._createError(be(this._cursor.peek()), this._cursor.getSpan(e));
2040
+ i = this._consumeTagOpenStart(e), r = i.parts[0], t = n = i.parts[1], this._attemptCharCodeUntilFn(T);
2041
+ }
2042
+ for (; !ts(this._cursor.peek()); ) if (this._selectorlessEnabled && this._cursor.peek() === 64) {
2043
+ let o = this._cursor.clone(), c = o.clone();
2044
+ c.advance(), zt(c.peek()) && this._consumeDirective(o, c);
2045
+ } else {
2046
+ let o = this._consumeAttribute();
2047
+ s.push(o);
2048
+ }
2049
+ i.type === l.COMPONENT_OPEN_START ? this._consumeComponentOpenEnd() : this._consumeTagOpenEnd();
2050
+ } catch (o) {
2051
+ if (o instanceof re) {
2052
+ i ? i.type = i.type === l.COMPONENT_OPEN_START ? l.INCOMPLETE_COMPONENT_OPEN : l.INCOMPLETE_TAG_OPEN : (this._beginToken(l.TEXT, e), this._endToken(["<"]));
2053
+ return;
2054
+ }
2055
+ throw o;
2056
+ }
2057
+ if (this._canSelfClose && this.tokens[this.tokens.length - 1].type === l.TAG_OPEN_END_VOID) return;
2058
+ let a = this._getTagContentType(t, r, this._fullNameStack.length > 0, s);
2059
+ this._handleFullNameStackForTagOpen(r, t), a === I.RAW_TEXT ? this._consumeRawTextWithTagClose(r, i, n, !1) : a === I.ESCAPABLE_RAW_TEXT && this._consumeRawTextWithTagClose(r, i, n, !0);
2060
+ }
2061
+ _consumeRawTextWithTagClose(e, t, r, n) {
2062
+ this._consumeRawText(n, () => !this._attemptCharCode(60) || !this._attemptCharCode(47) || (this._attemptCharCodeUntilFn(T), !this._attemptStrCaseInsensitive(e && t.type !== l.COMPONENT_OPEN_START ? `${e}:${r}` : r)) ? !1 : (this._attemptCharCodeUntilFn(T), this._attemptCharCode(62))), this._beginToken(t.type === l.COMPONENT_OPEN_START ? l.COMPONENT_CLOSE : l.TAG_CLOSE), this._requireCharCodeUntilFn((i) => i === 62, 3), this._cursor.advance(), this._endToken(t.parts), this._handleFullNameStackForTagClose(e, r);
2063
+ }
2064
+ _consumeTagOpenStart(e) {
2065
+ this._beginToken(l.TAG_OPEN_START, e);
2066
+ let t = this._consumePrefixAndName(we);
2067
+ return this._endToken(t);
2068
+ }
2069
+ _consumeComponentOpenStart(e) {
2070
+ this._beginToken(l.COMPONENT_OPEN_START, e);
2071
+ let t = this._consumeComponentName();
2072
+ return this._endToken(t);
2073
+ }
2074
+ _consumeComponentName() {
2075
+ let e = this._cursor.clone();
2076
+ for (; es(this._cursor.peek()); ) this._cursor.advance();
2077
+ let t = this._cursor.getChars(e), r = "", n = "";
2078
+ return this._cursor.peek() === 58 && (this._cursor.advance(), [r, n] = this._consumePrefixAndName(we)), [t, r, n];
2079
+ }
2080
+ _consumeAttribute() {
2081
+ let [e, t] = this._consumeAttributeName(), r;
2082
+ return this._attemptCharCodeUntilFn(T), this._attemptCharCode(61) && (this._attemptCharCodeUntilFn(T), r = this._consumeAttributeValue()), this._attemptCharCodeUntilFn(T), { prefix: e, name: t, value: r };
2083
+ }
2084
+ _consumeAttributeName() {
2085
+ let e = this._cursor.peek();
2086
+ if (e === 39 || e === 34) throw this._createError(be(e), this._cursor.getSpan());
2087
+ this._beginToken(l.ATTR_NAME);
2088
+ let t;
2089
+ if (this._openDirectiveCount > 0) {
2090
+ let n = 0;
2091
+ t = (i) => {
2092
+ if (this._openDirectiveCount > 0) {
2093
+ if (i === 40) n++;
2094
+ else if (i === 41) {
2095
+ if (n === 0) return !0;
2096
+ n--;
2097
+ }
2098
+ }
2099
+ return we(i);
2100
+ };
2101
+ } else if (e === 91) {
2102
+ let n = 0;
2103
+ t = (i) => (i === 91 ? n++ : i === 93 && n--, n <= 0 ? we(i) : ut(i));
2104
+ } else t = we;
2105
+ let r = this._consumePrefixAndName(t);
2106
+ return this._endToken(r), r;
2107
+ }
2108
+ _consumeAttributeValue() {
2109
+ let e;
2110
+ if (this._cursor.peek() === 39 || this._cursor.peek() === 34) {
2111
+ let t = this._cursor.peek();
2112
+ this._consumeQuote(t);
2113
+ let r = () => this._cursor.peek() === t;
2114
+ e = this._consumeWithInterpolation(l.ATTR_VALUE_TEXT, l.ATTR_VALUE_INTERPOLATION, r, r), this._consumeQuote(t);
2115
+ } else {
2116
+ let t = () => we(this._cursor.peek());
2117
+ e = this._consumeWithInterpolation(l.ATTR_VALUE_TEXT, l.ATTR_VALUE_INTERPOLATION, t, t);
2118
+ }
2119
+ return e;
2120
+ }
2121
+ _consumeQuote(e) {
2122
+ this._beginToken(l.ATTR_QUOTE), this._requireCharCode(e), this._endToken([String.fromCodePoint(e)]);
2123
+ }
2124
+ _consumeTagOpenEnd() {
2125
+ let e = this._attemptCharCode(47) ? l.TAG_OPEN_END_VOID : l.TAG_OPEN_END;
2126
+ this._beginToken(e), this._requireCharCode(62), this._endToken([]);
2127
+ }
2128
+ _consumeComponentOpenEnd() {
2129
+ let e = this._attemptCharCode(47) ? l.COMPONENT_OPEN_END_VOID : l.COMPONENT_OPEN_END;
2130
+ this._beginToken(e), this._requireCharCode(62), this._endToken([]);
2131
+ }
2132
+ _consumeTagClose(e) {
2133
+ if (this._selectorlessEnabled) {
2134
+ let t = e.clone();
2135
+ for (; t.peek() !== 62 && !zt(t.peek()); ) t.advance();
2136
+ if (zt(t.peek())) {
2137
+ this._beginToken(l.COMPONENT_CLOSE, e);
2138
+ let r = this._consumeComponentName();
2139
+ this._attemptCharCodeUntilFn(T), this._requireCharCode(62), this._endToken(r);
2140
+ return;
2141
+ }
2142
+ }
2143
+ if (this._beginToken(l.TAG_CLOSE, e), this._attemptCharCodeUntilFn(T), this._allowHtmComponentClosingTags && this._attemptCharCode(47)) this._attemptCharCodeUntilFn(T), this._requireCharCode(62), this._endToken([]);
2144
+ else {
2145
+ let [t, r] = this._consumePrefixAndName(we);
2146
+ this._attemptCharCodeUntilFn(T), this._requireCharCode(62), this._endToken([t, r]), this._handleFullNameStackForTagClose(t, r);
2147
+ }
2148
+ }
2149
+ _consumeExpansionFormStart() {
2150
+ this._beginToken(l.EXPANSION_FORM_START), this._requireCharCode(123), this._endToken([]), this._expansionCaseStack.push(l.EXPANSION_FORM_START), this._beginToken(l.RAW_TEXT);
2151
+ let e = this._readUntil(44), t = this._processCarriageReturns(e);
2152
+ if (this._i18nNormalizeLineEndingsInICUs) this._endToken([t]);
2153
+ else {
2154
+ let n = this._endToken([e]);
2155
+ t !== e && this.nonNormalizedIcuExpressions.push(n);
2156
+ }
2157
+ this._requireCharCode(44), this._attemptCharCodeUntilFn(T), this._beginToken(l.RAW_TEXT);
2158
+ let r = this._readUntil(44);
2159
+ this._endToken([r]), this._requireCharCode(44), this._attemptCharCodeUntilFn(T);
2160
+ }
2161
+ _consumeExpansionCaseStart() {
2162
+ this._beginToken(l.EXPANSION_CASE_VALUE);
2163
+ let e = this._readUntil(123).trim();
2164
+ this._endToken([e]), this._attemptCharCodeUntilFn(T), this._beginToken(l.EXPANSION_CASE_EXP_START), this._requireCharCode(123), this._endToken([]), this._attemptCharCodeUntilFn(T), this._expansionCaseStack.push(l.EXPANSION_CASE_EXP_START);
2165
+ }
2166
+ _consumeExpansionCaseEnd() {
2167
+ this._beginToken(l.EXPANSION_CASE_EXP_END), this._requireCharCode(125), this._endToken([]), this._attemptCharCodeUntilFn(T), this._expansionCaseStack.pop();
2168
+ }
2169
+ _consumeExpansionFormEnd() {
2170
+ this._beginToken(l.EXPANSION_FORM_END), this._requireCharCode(125), this._endToken([]), this._expansionCaseStack.pop();
2171
+ }
2172
+ _consumeWithInterpolation(e, t, r, n) {
2173
+ this._beginToken(e);
2174
+ let i = [];
2175
+ for (; !r(); ) {
2176
+ let a = this._cursor.clone();
2177
+ this._attemptStr(mt.start) ? (this._endToken([this._processCarriageReturns(i.join(""))], a), i.length = 0, this._consumeInterpolation(t, a, n), this._beginToken(e)) : this._cursor.peek() === 38 ? (this._endToken([this._processCarriageReturns(i.join(""))]), i.length = 0, this._consumeEntity(e), this._beginToken(e)) : i.push(this._readChar());
2178
+ }
2179
+ this._inInterpolation = !1;
2180
+ let s = this._processCarriageReturns(i.join(""));
2181
+ return this._endToken([s]), s;
2182
+ }
2183
+ _consumeInterpolation(e, t, r) {
2184
+ let n = [];
2185
+ this._beginToken(e, t), n.push(mt.start);
2186
+ let i = this._cursor.clone(), s = null, a = !1;
2187
+ for (; this._cursor.peek() !== 0 && (r === null || !r()); ) {
2188
+ let o = this._cursor.clone();
2189
+ if (this._isTagStart()) {
2190
+ this._cursor = o, n.push(this._getProcessedChars(i, o)), this._endToken(n);
2191
+ return;
2192
+ }
2193
+ if (s === null) if (this._attemptStr(mt.end)) {
2194
+ n.push(this._getProcessedChars(i, o)), n.push(mt.end), this._endToken(n);
2195
+ return;
2196
+ } else this._attemptStr("//") && (a = !0);
2197
+ let c = this._cursor.peek();
2198
+ this._cursor.advance(), c === 92 ? this._cursor.advance() : c === s ? s = null : !a && s === null && Ut(c) && (s = c);
2199
+ }
2200
+ n.push(this._getProcessedChars(i, this._cursor)), this._endToken(n);
2201
+ }
2202
+ _consumeDirective(e, t) {
2203
+ for (this._requireCharCode(64), this._cursor.advance(); es(this._cursor.peek()); ) this._cursor.advance();
2204
+ this._beginToken(l.DIRECTIVE_NAME, e);
2205
+ let r = this._cursor.getChars(t);
2206
+ if (this._endToken([r]), this._attemptCharCodeUntilFn(T), this._cursor.peek() === 40) {
2207
+ for (this._openDirectiveCount++, this._beginToken(l.DIRECTIVE_OPEN), this._cursor.advance(), this._endToken([]), this._attemptCharCodeUntilFn(T); !ts(this._cursor.peek()) && this._cursor.peek() !== 41; ) this._consumeAttribute();
2208
+ if (this._attemptCharCodeUntilFn(T), this._openDirectiveCount--, this._cursor.peek() !== 41) {
2209
+ if (this._cursor.peek() === 62 || this._cursor.peek() === 47) return;
2210
+ throw this._createError(be(this._cursor.peek()), this._cursor.getSpan(e));
2211
+ }
2212
+ this._beginToken(l.DIRECTIVE_CLOSE), this._cursor.advance(), this._endToken([]), this._attemptCharCodeUntilFn(T);
2213
+ }
2214
+ }
2215
+ _getProcessedChars(e, t) {
2216
+ return this._processCarriageReturns(t.getChars(e));
2217
+ }
2218
+ _isTextEnd() {
2219
+ return !!(this._isTagStart() || this._cursor.peek() === 0 || this._tokenizeIcu && !this._inInterpolation && (this.isExpansionFormStart() || this._cursor.peek() === 125 && this._isInExpansionCase()) || this._tokenizeBlocks && !this._inInterpolation && !this._isInExpansion() && (this._isBlockStart() || this._isLetStart() || this._cursor.peek() === 125));
2220
+ }
2221
+ _isTagStart() {
2222
+ if (this._cursor.peek() === 60) {
2223
+ let e = this._cursor.clone();
2224
+ e.advance();
2225
+ let t = e.peek();
2226
+ if (97 <= t && t <= 122 || 65 <= t && t <= 90 || t === 47 || t === 33) return !0;
2227
+ }
2228
+ return !1;
2229
+ }
2230
+ _readUntil(e) {
2231
+ let t = this._cursor.clone();
2232
+ return this._attemptUntilChar(e), this._cursor.getChars(t);
2233
+ }
2234
+ _isInExpansion() {
2235
+ return this._isInExpansionCase() || this._isInExpansionForm();
2236
+ }
2237
+ _isInExpansionCase() {
2238
+ return this._expansionCaseStack.length > 0 && this._expansionCaseStack[this._expansionCaseStack.length - 1] === l.EXPANSION_CASE_EXP_START;
2239
+ }
2240
+ _isInExpansionForm() {
2241
+ return this._expansionCaseStack.length > 0 && this._expansionCaseStack[this._expansionCaseStack.length - 1] === l.EXPANSION_FORM_START;
2242
+ }
2243
+ isExpansionFormStart() {
2244
+ if (this._cursor.peek() !== 123) return !1;
2245
+ let e = this._cursor.clone(), t = this._attemptStr(mt.start);
2246
+ return this._cursor = e, !t;
2247
+ }
2248
+ _handleFullNameStackForTagOpen(e, t) {
2249
+ let r = Se(e, t);
2250
+ (this._fullNameStack.length === 0 || this._fullNameStack[this._fullNameStack.length - 1] === r) && this._fullNameStack.push(r);
2251
+ }
2252
+ _handleFullNameStackForTagClose(e, t) {
2253
+ let r = Se(e, t);
2254
+ this._fullNameStack.length !== 0 && this._fullNameStack[this._fullNameStack.length - 1] === r && this._fullNameStack.pop();
2255
+ }
2256
+ };
2257
+ is = class Br {
2258
+ constructor(t, r) {
2259
+ if (t instanceof Br) {
2260
+ this.file = t.file, this.input = t.input, this.end = t.end;
2261
+ let n = t.state;
2262
+ this.state = { peek: n.peek, offset: n.offset, line: n.line, column: n.column };
2263
+ } else {
2264
+ if (!r) throw new Error("Programming error: the range argument must be provided with a file argument.");
2265
+ this.file = t, this.input = t.content, this.end = r.endPos, this.state = { peek: -1, offset: r.startPos, line: r.startLine, column: r.startCol };
2266
+ }
2267
+ }
2268
+ clone() {
2269
+ return new Br(this);
2270
+ }
2271
+ peek() {
2272
+ return this.state.peek;
2273
+ }
2274
+ charsLeft() {
2275
+ return this.end - this.state.offset;
2276
+ }
2277
+ diff(t) {
2278
+ return this.state.offset - t.state.offset;
2279
+ }
2280
+ advance() {
2281
+ this.advanceState(this.state);
2282
+ }
2283
+ init() {
2284
+ this.updatePeek(this.state);
2285
+ }
2286
+ getSpan(t, r) {
2287
+ t = t || this;
2288
+ let n = t;
2289
+ if (r) for (; this.diff(t) > 0 && r.indexOf(t.peek()) !== -1; ) n === t && (t = t.clone()), t.advance();
2290
+ let i = this.locationFromCursor(t);
2291
+ return new h(i, this.locationFromCursor(this), n !== t ? this.locationFromCursor(n) : i);
2292
+ }
2293
+ getChars(t) {
2294
+ return this.input.substring(t.state.offset, this.state.offset);
2295
+ }
2296
+ charAt(t) {
2297
+ return this.input.charCodeAt(t);
2298
+ }
2299
+ advanceState(t) {
2300
+ if (t.offset >= this.end) throw this.state = t, new Vr('Unexpected character "EOF"', this);
2301
+ let r = this.charAt(t.offset);
2302
+ r === 10 ? (t.line++, t.column = 0) : ut(r) || t.column++, t.offset++, this.updatePeek(t);
2303
+ }
2304
+ updatePeek(t) {
2305
+ t.peek = t.offset >= this.end ? 0 : this.charAt(t.offset);
2306
+ }
2307
+ locationFromCursor(t) {
2308
+ return new qe(t.file, t.state.offset, t.state.line, t.state.column);
2309
+ }
2310
+ }, Ho = class Fr extends is {
2311
+ constructor(t, r) {
2312
+ t instanceof Fr ? (super(t), this.internalState = { ...t.internalState }) : (super(t, r), this.internalState = this.state);
2313
+ }
2314
+ advance() {
2315
+ this.state = this.internalState, super.advance(), this.processEscapeSequence();
2316
+ }
2317
+ init() {
2318
+ super.init(), this.processEscapeSequence();
2319
+ }
2320
+ clone() {
2321
+ return new Fr(this);
2322
+ }
2323
+ getChars(t) {
2324
+ let r = t.clone(), n = "";
2325
+ for (; r.internalState.offset < this.internalState.offset; ) n += String.fromCodePoint(r.peek()), r.advance();
2326
+ return n;
2327
+ }
2328
+ processEscapeSequence() {
2329
+ let t = () => this.internalState.peek;
2330
+ if (t() === 92) if (this.internalState = { ...this.state }, this.advanceState(this.internalState), t() === 110) this.state.peek = 10;
2331
+ else if (t() === 114) this.state.peek = 13;
2332
+ else if (t() === 118) this.state.peek = 11;
2333
+ else if (t() === 116) this.state.peek = 9;
2334
+ else if (t() === 98) this.state.peek = 8;
2335
+ else if (t() === 102) this.state.peek = 12;
2336
+ else if (t() === 117) if (this.advanceState(this.internalState), t() === 123) {
2337
+ this.advanceState(this.internalState);
2338
+ let r = this.clone(), n = 0;
2339
+ for (; t() !== 125; ) this.advanceState(this.internalState), n++;
2340
+ this.state.peek = this.decodeHexDigits(r, n);
2341
+ } else {
2342
+ let r = this.clone();
2343
+ this.advanceState(this.internalState), this.advanceState(this.internalState), this.advanceState(this.internalState), this.state.peek = this.decodeHexDigits(r, 4);
2344
+ }
2345
+ else if (t() === 120) {
2346
+ this.advanceState(this.internalState);
2347
+ let r = this.clone();
2348
+ this.advanceState(this.internalState), this.state.peek = this.decodeHexDigits(r, 2);
2349
+ } else if (xr(t())) {
2350
+ let r = "", n = 0, i = this.clone();
2351
+ for (; xr(t()) && n < 3; ) i = this.clone(), r += String.fromCodePoint(t()), this.advanceState(this.internalState), n++;
2352
+ this.state.peek = parseInt(r, 8), this.internalState = i.internalState;
2353
+ } else ut(this.internalState.peek) ? (this.advanceState(this.internalState), this.state = this.internalState) : this.state.peek = this.internalState.peek;
2354
+ }
2355
+ decodeHexDigits(t, r) {
2356
+ let n = this.input.slice(t.internalState.offset, t.internalState.offset + r), i = parseInt(n, 16);
2357
+ if (isNaN(i)) throw t.state = t.internalState, new Vr("Invalid hexadecimal escape sequence", t);
2358
+ return i;
2359
+ }
2360
+ }, Vr = class extends Error {
2361
+ constructor(e, t) {
2362
+ super(e), this.msg = e, this.cursor = t, Object.setPrototypeOf(this, new.target.prototype);
2363
+ }
2364
+ }, N = class os extends re {
2365
+ static create(t, r, n) {
2366
+ return new os(t, r, n);
2367
+ }
2368
+ constructor(t, r, n) {
2369
+ super(r, n), this.elementName = t;
2370
+ }
2371
+ }, Vo = class {
2372
+ constructor(e, t) {
2373
+ this.rootNodes = e, this.errors = t;
2374
+ }
2375
+ }, ls = class {
2376
+ constructor(e) {
2377
+ this.getTagDefinition = e;
2378
+ }
2379
+ parse(e, t, r, n = !1, i) {
2380
+ let s = (m) => (g, ...E) => m(g.toLowerCase(), ...E), a = n ? this.getTagDefinition : s(this.getTagDefinition), o = (m) => a(m).getContentType(), c = n ? i : s(i), u = ns(e, t, i ? (m, g, E, P) => {
2381
+ let z = c(m, g, E, P);
2382
+ return z !== void 0 ? z : o(m);
2383
+ } : o, r), p = r && r.canSelfClose || !1, d = r && r.allowHtmComponentClosingTags || !1, S = new Uo(u.tokens, a, p, d, n);
2384
+ return S.build(), new Vo(S.rootNodes, [...u.errors, ...S.errors]);
2385
+ }
2386
+ }, Uo = class cs {
2387
+ constructor(t, r, n, i, s) {
2388
+ this.tokens = t, this.tagDefinitionResolver = r, this.canSelfClose = n, this.allowHtmComponentClosingTags = i, this.isTagNameCaseSensitive = s, this._index = -1, this._containerStack = [], this.rootNodes = [], this.errors = [], this._advance();
2389
+ }
2390
+ build() {
2391
+ for (; this._peek.type !== l.EOF; ) this._peek.type === l.TAG_OPEN_START || this._peek.type === l.INCOMPLETE_TAG_OPEN ? this._consumeElementStartTag(this._advance()) : this._peek.type === l.TAG_CLOSE ? (this._closeVoidElement(), this._consumeElementEndTag(this._advance())) : this._peek.type === l.CDATA_START ? (this._closeVoidElement(), this._consumeCdata(this._advance())) : this._peek.type === l.COMMENT_START ? (this._closeVoidElement(), this._consumeComment(this._advance())) : this._peek.type === l.TEXT || this._peek.type === l.RAW_TEXT || this._peek.type === l.ESCAPABLE_RAW_TEXT ? (this._closeVoidElement(), this._consumeText(this._advance())) : this._peek.type === l.EXPANSION_FORM_START ? this._consumeExpansion(this._advance()) : this._peek.type === l.BLOCK_OPEN_START ? (this._closeVoidElement(), this._consumeBlockOpen(this._advance())) : this._peek.type === l.BLOCK_CLOSE ? (this._closeVoidElement(), this._consumeBlockClose(this._advance())) : this._peek.type === l.INCOMPLETE_BLOCK_OPEN ? (this._closeVoidElement(), this._consumeIncompleteBlock(this._advance())) : this._peek.type === l.LET_START ? (this._closeVoidElement(), this._consumeLet(this._advance())) : this._peek.type === l.DOC_TYPE_START ? this._consumeDocType(this._advance()) : this._peek.type === l.INCOMPLETE_LET ? (this._closeVoidElement(), this._consumeIncompleteLet(this._advance())) : this._peek.type === l.COMPONENT_OPEN_START || this._peek.type === l.INCOMPLETE_COMPONENT_OPEN ? this._consumeComponentStartTag(this._advance()) : this._peek.type === l.COMPONENT_CLOSE ? this._consumeComponentEndTag(this._advance()) : this._advance();
2392
+ for (let t of this._containerStack) t instanceof ve && this.errors.push(N.create(t.name, t.sourceSpan, `Unclosed block "${t.name}"`));
2393
+ }
2394
+ _advance() {
2395
+ let t = this._peek;
2396
+ return this._index < this.tokens.length - 1 && this._index++, this._peek = this.tokens[this._index], t;
2397
+ }
2398
+ _advanceIf(t) {
2399
+ return this._peek.type === t ? this._advance() : null;
2400
+ }
2401
+ _consumeCdata(t) {
2402
+ let r = this._advance(), n = this._getText(r), i = this._advanceIf(l.CDATA_END);
2403
+ this._addToParent(new Vi(n, new h(t.sourceSpan.start, (i || r).sourceSpan.end), [r]));
2404
+ }
2405
+ _consumeComment(t) {
2406
+ let r = this._advanceIf(l.RAW_TEXT), n = this._advanceIf(l.COMMENT_END), i = r != null ? r.parts[0].trim() : null, s = n == null ? t.sourceSpan : new h(t.sourceSpan.start, n.sourceSpan.end, t.sourceSpan.fullStart);
2407
+ this._addToParent(new $i(i, s));
2408
+ }
2409
+ _consumeDocType(t) {
2410
+ let r = this._advanceIf(l.RAW_TEXT), n = this._advanceIf(l.DOC_TYPE_END), i = r != null ? r.parts[0].trim() : null, s = new h(t.sourceSpan.start, (n || r || t).sourceSpan.end);
2411
+ this._addToParent(new zi(i, s));
2412
+ }
2413
+ _consumeExpansion(t) {
2414
+ let r = this._advance(), n = this._advance(), i = [];
2415
+ for (; this._peek.type === l.EXPANSION_CASE_VALUE; ) {
2416
+ let a = this._parseExpansionCase();
2417
+ if (!a) return;
2418
+ i.push(a);
2419
+ }
2420
+ if (this._peek.type !== l.EXPANSION_FORM_END) {
2421
+ this.errors.push(N.create(null, this._peek.sourceSpan, "Invalid ICU message. Missing '}'."));
2422
+ return;
2423
+ }
2424
+ let s = new h(t.sourceSpan.start, this._peek.sourceSpan.end, t.sourceSpan.fullStart);
2425
+ this._addToParent(new Ui(r.parts[0], n.parts[0], i, s, r.sourceSpan)), this._advance();
2426
+ }
2427
+ _parseExpansionCase() {
2428
+ let t = this._advance();
2429
+ if (this._peek.type !== l.EXPANSION_CASE_EXP_START) return this.errors.push(N.create(null, this._peek.sourceSpan, "Invalid ICU message. Missing '{'.")), null;
2430
+ let r = this._advance(), n = this._collectExpansionExpTokens(r);
2431
+ if (!n) return null;
2432
+ let i = this._advance();
2433
+ n.push({ type: l.EOF, parts: [], sourceSpan: i.sourceSpan });
2434
+ let s = new cs(n, this.tagDefinitionResolver, this.canSelfClose, this.allowHtmComponentClosingTags, this.isTagNameCaseSensitive);
2435
+ if (s.build(), s.errors.length > 0) return this.errors = this.errors.concat(s.errors), null;
2436
+ let a = new h(t.sourceSpan.start, i.sourceSpan.end, t.sourceSpan.fullStart), o = new h(r.sourceSpan.start, i.sourceSpan.end, r.sourceSpan.fullStart);
2437
+ return new Wi(t.parts[0], s.rootNodes, a, t.sourceSpan, o);
2438
+ }
2439
+ _collectExpansionExpTokens(t) {
2440
+ let r = [], n = [l.EXPANSION_CASE_EXP_START];
2441
+ for (; ; ) {
2442
+ if ((this._peek.type === l.EXPANSION_FORM_START || this._peek.type === l.EXPANSION_CASE_EXP_START) && n.push(this._peek.type), this._peek.type === l.EXPANSION_CASE_EXP_END) if (ss(n, l.EXPANSION_CASE_EXP_START)) {
2443
+ if (n.pop(), n.length === 0) return r;
2444
+ } else return this.errors.push(N.create(null, t.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2445
+ if (this._peek.type === l.EXPANSION_FORM_END) if (ss(n, l.EXPANSION_FORM_START)) n.pop();
2446
+ else return this.errors.push(N.create(null, t.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2447
+ if (this._peek.type === l.EOF) return this.errors.push(N.create(null, t.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2448
+ r.push(this._advance());
2449
+ }
2450
+ }
2451
+ _getText(t) {
2452
+ let r = t.parts[0];
2453
+ if (r.length > 0 && r[0] == `
2454
+ `) {
2455
+ var n;
2456
+ let i = this._getClosestElementLikeParent();
2457
+ i != null && i.children.length == 0 && !((n = this._getTagDefinition(i)) === null || n === void 0) && n.ignoreFirstLf && (r = r.substring(1));
2458
+ }
2459
+ return r;
2460
+ }
2461
+ _consumeText(t) {
2462
+ let r = [t], n = t.sourceSpan, i = t.parts[0];
2463
+ if (i.length > 0 && i[0] === `
2464
+ `) {
2465
+ var s;
2466
+ let a = this._getContainer();
2467
+ a != null && a.children.length === 0 && !((s = this._getTagDefinition(a)) === null || s === void 0) && s.ignoreFirstLf && (i = i.substring(1), r[0] = { type: t.type, sourceSpan: t.sourceSpan, parts: [i] });
2468
+ }
2469
+ for (; this._peek.type === l.INTERPOLATION || this._peek.type === l.TEXT || this._peek.type === l.ENCODED_ENTITY; ) t = this._advance(), r.push(t), t.type === l.INTERPOLATION ? i += t.parts.join("").replace(/&([^;]+);/g, as) : t.type === l.ENCODED_ENTITY ? i += t.parts[0] : i += t.parts.join("");
2470
+ if (i.length > 0) {
2471
+ let a = t.sourceSpan;
2472
+ this._addToParent(new Hi(i, new h(n.start, a.end, n.fullStart, n.details), r));
2473
+ }
2474
+ }
2475
+ _closeVoidElement() {
2476
+ var t;
2477
+ let r = this._getContainer();
2478
+ r !== null && !((t = this._getTagDefinition(r)) === null || t === void 0) && t.isVoid && this._containerStack.pop();
2479
+ }
2480
+ _consumeElementStartTag(t) {
2481
+ var r;
2482
+ let n = [], i = [];
2483
+ this._consumeAttributesAndDirectives(n, i);
2484
+ let s = this._getElementFullName(t, this._getClosestElementLikeParent()), a = this._getTagDefinition(s), o = !1;
2485
+ if (this._peek.type === l.TAG_OPEN_END_VOID) {
2486
+ this._advance(), o = !0;
2487
+ let E = this._getTagDefinition(s);
2488
+ this.canSelfClose || E?.canSelfClose || Me(s) !== null || E?.isVoid || this.errors.push(N.create(s, t.sourceSpan, `Only void, custom and foreign elements can be self closed "${t.parts[1]}"`));
2489
+ } else this._peek.type === l.TAG_OPEN_END && (this._advance(), o = !1);
2490
+ let c = this._peek.sourceSpan.fullStart, u = new h(t.sourceSpan.start, c, t.sourceSpan.fullStart), p = new h(t.sourceSpan.start, c, t.sourceSpan.fullStart), d = new h(t.sourceSpan.start.moveBy(1), t.sourceSpan.end), S = new ne(s, n, i, [], o, u, p, void 0, d, a?.isVoid ?? !1), m = this._getContainer(), g = m !== null && !!(!((r = this._getTagDefinition(m)) === null || r === void 0) && r.isClosedByChild(S.name));
2491
+ this._pushContainer(S, g), o ? this._popContainer(s, ne, u) : t.type === l.INCOMPLETE_TAG_OPEN && (this._popContainer(s, ne, null), this.errors.push(N.create(s, u, `Opening tag "${s}" not terminated.`)));
2492
+ }
2493
+ _consumeComponentStartTag(t) {
2494
+ var r;
2495
+ let n = t.parts[0], i = [], s = [];
2496
+ this._consumeAttributesAndDirectives(i, s);
2497
+ let a = this._getClosestElementLikeParent(), o = this._getComponentTagName(t, a), c = this._getComponentFullName(t, a), u = this._peek.type === l.COMPONENT_OPEN_END_VOID;
2498
+ this._advance();
2499
+ let p = this._peek.sourceSpan.fullStart, d = new h(t.sourceSpan.start, p, t.sourceSpan.fullStart), S = new h(t.sourceSpan.start, p, t.sourceSpan.fullStart), m = new J(n, o, c, i, s, [], u, d, S, void 0), g = this._getContainer(), E = g !== null && m.tagName !== null && !!(!((r = this._getTagDefinition(g)) === null || r === void 0) && r.isClosedByChild(m.tagName));
2500
+ this._pushContainer(m, E), u ? this._popContainer(c, J, d) : t.type === l.INCOMPLETE_COMPONENT_OPEN && (this._popContainer(c, J, null), this.errors.push(N.create(c, d, `Opening tag "${c}" not terminated.`)));
2501
+ }
2502
+ _consumeAttributesAndDirectives(t, r) {
2503
+ for (; this._peek.type === l.ATTR_NAME || this._peek.type === l.DIRECTIVE_NAME; ) this._peek.type === l.DIRECTIVE_NAME ? r.push(this._consumeDirective(this._peek)) : t.push(this._consumeAttr(this._advance()));
2504
+ }
2505
+ _consumeComponentEndTag(t) {
2506
+ let r = this._getComponentFullName(t, this._getClosestElementLikeParent());
2507
+ if (!this._popContainer(r, J, t.sourceSpan)) {
2508
+ let n = this._containerStack[this._containerStack.length - 1], i;
2509
+ n instanceof J && n.componentName === t.parts[0] ? i = `, did you mean "${n.fullName}"?` : i = ". It may happen when the tag has already been closed by another tag.";
2510
+ let s = `Unexpected closing tag "${r}"${i}`;
2511
+ this.errors.push(N.create(r, t.sourceSpan, s));
2512
+ }
2513
+ }
2514
+ _getTagDefinition(t) {
2515
+ return typeof t == "string" ? this.tagDefinitionResolver(t) : t instanceof ne ? this.tagDefinitionResolver(t.name) : t instanceof J && t.tagName !== null ? this.tagDefinitionResolver(t.tagName) : null;
2516
+ }
2517
+ _pushContainer(t, r) {
2518
+ r && this._containerStack.pop(), this._addToParent(t), this._containerStack.push(t);
2519
+ }
2520
+ _consumeElementEndTag(t) {
2521
+ var r;
2522
+ let n = this.allowHtmComponentClosingTags && t.parts.length === 0 ? null : this._getElementFullName(t, this._getClosestElementLikeParent());
2523
+ if (n && !((r = this._getTagDefinition(n)) === null || r === void 0) && r.isVoid) this.errors.push(N.create(n, t.sourceSpan, `Void elements do not have end tags "${t.parts[1]}"`));
2524
+ else if (!this._popContainer(n, ne, t.sourceSpan)) {
2525
+ let i = `Unexpected closing tag "${n}". It may happen when the tag has already been closed by another tag. For more info see https://www.w3.org/TR/html5/syntax.html#closing-elements-that-have-implied-end-tags`;
2526
+ this.errors.push(N.create(n, t.sourceSpan, i));
2527
+ }
2528
+ }
2529
+ _popContainer(t, r, n) {
2530
+ let i = !1;
2531
+ for (let a = this._containerStack.length - 1; a >= 0; a--) {
2532
+ var s;
2533
+ let o = this._containerStack[a], c = o instanceof J ? o.fullName : o.name;
2534
+ if (Me(c) ? c === t : (c === t || t === null) && o instanceof r) return o.endSourceSpan = n, o.sourceSpan.end = n !== null ? n.end : o.sourceSpan.end, this._containerStack.splice(a, this._containerStack.length - a), !i;
2535
+ (o instanceof ve || !(!((s = this._getTagDefinition(o)) === null || s === void 0) && s.closedByParent)) && (i = !0);
2536
+ }
2537
+ return !1;
2538
+ }
2539
+ _consumeAttr(t) {
2540
+ let r = Se(t.parts[0], t.parts[1]), n = t.sourceSpan.end, i;
2541
+ this._peek.type === l.ATTR_QUOTE && (i = this._advance());
2542
+ let s = "", a = [], o, c;
2543
+ if (this._peek.type === l.ATTR_VALUE_TEXT) for (o = this._peek.sourceSpan, c = this._peek.sourceSpan.end; this._peek.type === l.ATTR_VALUE_TEXT || this._peek.type === l.ATTR_VALUE_INTERPOLATION || this._peek.type === l.ENCODED_ENTITY; ) {
2544
+ let p = this._advance();
2545
+ a.push(p), p.type === l.ATTR_VALUE_INTERPOLATION ? s += p.parts.join("").replace(/&([^;]+);/g, as) : p.type === l.ENCODED_ENTITY ? s += p.parts[0] : s += p.parts.join(""), c = n = p.sourceSpan.end;
2546
+ }
2547
+ this._peek.type === l.ATTR_QUOTE && (c = n = this._advance().sourceSpan.end);
2548
+ let u = o && c && new h(i?.sourceSpan.start ?? o.start, c, i?.sourceSpan.fullStart ?? o.fullStart);
2549
+ return new Gi(r, s, new h(t.sourceSpan.start, n, t.sourceSpan.fullStart), t.sourceSpan, u, a.length > 0 ? a : void 0, void 0);
2550
+ }
2551
+ _consumeDirective(t) {
2552
+ let r = [], n = t.sourceSpan.end, i = null;
2553
+ if (this._advance(), this._peek.type === l.DIRECTIVE_OPEN) {
2554
+ for (n = this._peek.sourceSpan.end, this._advance(); this._peek.type === l.ATTR_NAME; ) r.push(this._consumeAttr(this._advance()));
2555
+ this._peek.type === l.DIRECTIVE_CLOSE ? (i = this._peek.sourceSpan, this._advance()) : this.errors.push(N.create(null, t.sourceSpan, "Unterminated directive definition"));
2556
+ }
2557
+ let s = new h(t.sourceSpan.start, n, t.sourceSpan.fullStart), a = new h(s.start, i === null ? t.sourceSpan.end : i.end, s.fullStart);
2558
+ return new Yi(t.parts[0], r, a, s, i);
2559
+ }
2560
+ _consumeBlockOpen(t) {
2561
+ let r = [];
2562
+ for (; this._peek.type === l.BLOCK_PARAMETER; ) {
2563
+ let o = this._advance();
2564
+ r.push(new Nr(o.parts[0], o.sourceSpan));
2565
+ }
2566
+ this._peek.type === l.BLOCK_OPEN_END && this._advance();
2567
+ let n = this._peek.sourceSpan.fullStart, i = new h(t.sourceSpan.start, n, t.sourceSpan.fullStart), s = new h(t.sourceSpan.start, n, t.sourceSpan.fullStart), a = new ve(t.parts[0], r, [], i, t.sourceSpan, s);
2568
+ this._pushContainer(a, !1);
2569
+ }
2570
+ _consumeBlockClose(t) {
2571
+ this._popContainer(null, ve, t.sourceSpan) || this.errors.push(N.create(null, t.sourceSpan, 'Unexpected closing block. The block may have been closed earlier. If you meant to write the } character, you should use the "&#125;" HTML entity instead.'));
2572
+ }
2573
+ _consumeIncompleteBlock(t) {
2574
+ let r = [];
2575
+ for (; this._peek.type === l.BLOCK_PARAMETER; ) {
2576
+ let o = this._advance();
2577
+ r.push(new Nr(o.parts[0], o.sourceSpan));
2578
+ }
2579
+ let n = this._peek.sourceSpan.fullStart, i = new h(t.sourceSpan.start, n, t.sourceSpan.fullStart), s = new h(t.sourceSpan.start, n, t.sourceSpan.fullStart), a = new ve(t.parts[0], r, [], i, t.sourceSpan, s);
2580
+ this._pushContainer(a, !1), this._popContainer(null, ve, null), this.errors.push(N.create(t.parts[0], i, `Incomplete block "${t.parts[0]}". If you meant to write the @ character, you should use the "&#64;" HTML entity instead.`));
2581
+ }
2582
+ _consumeLet(t) {
2583
+ let r = t.parts[0], n, i;
2584
+ if (this._peek.type !== l.LET_VALUE) {
2585
+ this.errors.push(N.create(t.parts[0], t.sourceSpan, `Invalid @let declaration "${r}". Declaration must have a value.`));
2586
+ return;
2587
+ } else n = this._advance();
2588
+ if (this._peek.type !== l.LET_END) {
2589
+ this.errors.push(N.create(t.parts[0], t.sourceSpan, `Unterminated @let declaration "${r}". Declaration must be terminated with a semicolon.`));
2590
+ return;
2591
+ } else i = this._advance();
2592
+ let s = i.sourceSpan.fullStart, a = new h(t.sourceSpan.start, s, t.sourceSpan.fullStart), o = t.sourceSpan.toString().lastIndexOf(r), c = new h(t.sourceSpan.start.moveBy(o), t.sourceSpan.end), u = new Lr(r, n.parts[0], a, c, n.sourceSpan);
2593
+ this._addToParent(u);
2594
+ }
2595
+ _consumeIncompleteLet(t) {
2596
+ let r = t.parts[0] ?? "", n = r ? ` "${r}"` : "";
2597
+ if (r.length > 0) {
2598
+ let i = t.sourceSpan.toString().lastIndexOf(r), s = new h(t.sourceSpan.start.moveBy(i), t.sourceSpan.end), a = new h(t.sourceSpan.start, t.sourceSpan.start.moveBy(0)), o = new Lr(r, "", t.sourceSpan, s, a);
2599
+ this._addToParent(o);
2600
+ }
2601
+ this.errors.push(N.create(t.parts[0], t.sourceSpan, `Incomplete @let declaration${n}. @let declarations must be written as \`@let <name> = <value>;\``));
2602
+ }
2603
+ _getContainer() {
2604
+ return this._containerStack.length > 0 ? this._containerStack[this._containerStack.length - 1] : null;
2605
+ }
2606
+ _getClosestElementLikeParent() {
2607
+ for (let t = this._containerStack.length - 1; t > -1; t--) {
2608
+ let r = this._containerStack[t];
2609
+ if (r instanceof ne || r instanceof J) return r;
2610
+ }
2611
+ return null;
2612
+ }
2613
+ _addToParent(t) {
2614
+ let r = this._getContainer();
2615
+ r === null ? this.rootNodes.push(t) : r.children.push(t);
2616
+ }
2617
+ _getElementFullName(t, r) {
2618
+ return Se(this._getPrefix(t, r), t.parts[1]);
2619
+ }
2620
+ _getComponentFullName(t, r) {
2621
+ let n = t.parts[0], i = this._getComponentTagName(t, r);
2622
+ return i === null ? n : i.startsWith(":") ? n + i : `${n}:${i}`;
2623
+ }
2624
+ _getComponentTagName(t, r) {
2625
+ let n = this._getPrefix(t, r), i = t.parts[2];
2626
+ return !n && !i ? null : !n && i ? i : Se(n, i || "ng-component");
2627
+ }
2628
+ _getPrefix(t, r) {
2629
+ var n;
2630
+ let i, s;
2631
+ if (t.type === l.COMPONENT_OPEN_START || t.type === l.INCOMPLETE_COMPONENT_OPEN || t.type === l.COMPONENT_CLOSE ? (i = t.parts[1], s = t.parts[2]) : (i = t.parts[0], s = t.parts[1]), i = i || ((n = this._getTagDefinition(s)) === null || n === void 0 ? void 0 : n.implicitNamespacePrefix) || "", !i && r) {
2632
+ let a = r instanceof ne ? r.name : r.tagName;
2633
+ if (a !== null) {
2634
+ let o = at(a)[1], c = this._getTagDefinition(o);
2635
+ c !== null && !c.preventNamespaceInheritance && (i = Me(a));
2636
+ }
2637
+ }
2638
+ return i;
2639
+ }
2640
+ };
2641
+ us = class extends ls {
2642
+ constructor() {
2643
+ super(Be);
2644
+ }
2645
+ parse(e, t, r, n = !1, i) {
2646
+ return super.parse(e, t, r, n, i);
2647
+ }
2648
+ }, Ur = null, Wo = () => (Ur || (Ur = new us()), Ur);
2649
+ Go = [zo, Yo, Xo, Qo, Jo, tl, Zo, el, rl, Ko];
2650
+ ps = $o;
2651
+ il = { features: { experimental_frontMatterSupport: { massageAstNode: !0, embed: !0, print: !0 } }, preprocess: ps, print: nl, insertPragma: bi, massageAstNode: dn, embed: fi, getVisitorKeys: _i }, hs = il, ms = [{ name: "Angular", type: "markup", aceMode: "html", extensions: [".component.html"], tmScope: "text.html.basic", aliases: ["xhtml"], codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", parsers: ["angular"], vscodeLanguageIds: ["html"], filenames: [], linguistLanguageId: 146 }, { name: "HTML", type: "markup", aceMode: "html", extensions: [".html", ".hta", ".htm", ".html.hl", ".inc", ".xht", ".xhtml"], tmScope: "text.html.basic", aliases: ["xhtml"], codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", parsers: ["html"], vscodeLanguageIds: ["html"], linguistLanguageId: 146 }, { name: "Lightning Web Components", type: "markup", aceMode: "html", extensions: [], tmScope: "text.html.basic", aliases: ["xhtml"], codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", parsers: ["lwc"], vscodeLanguageIds: ["html"], filenames: [], linguistLanguageId: 146 }, { name: "MJML", type: "markup", aceMode: "html", extensions: [".mjml"], tmScope: "text.mjml.basic", aliases: ["MJML", "mjml"], codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", parsers: ["mjml"], filenames: [], vscodeLanguageIds: ["mjml"], linguistLanguageId: 146 }, { name: "Vue", type: "markup", aceMode: "vue", extensions: [".vue"], tmScope: "source.vue", codemirrorMode: "vue", codemirrorMimeType: "text/x-vue", parsers: ["vue"], vscodeLanguageIds: ["vue"], linguistLanguageId: 391 }], Wr = { bracketSpacing: { category: "Common", type: "boolean", default: !0, description: "Print spaces between brackets.", oppositeDescription: "Do not print spaces between brackets." }, objectWrap: { category: "Common", type: "choice", default: "preserve", description: "How to wrap object literals.", choices: [{ value: "preserve", description: "Keep as multi-line, if there is a newline between the opening brace and first property." }, { value: "collapse", description: "Fit to a single line when possible." }] }, singleQuote: { category: "Common", type: "boolean", default: !1, description: "Use single quotes instead of double quotes." }, proseWrap: { category: "Common", type: "choice", default: "preserve", description: "How to wrap prose.", choices: [{ value: "always", description: "Wrap prose if it exceeds the print width." }, { value: "never", description: "Do not wrap prose." }, { value: "preserve", description: "Wrap prose as-is." }] }, bracketSameLine: { category: "Common", type: "boolean", default: !1, description: "Put > of opening tags on the last line instead of on a new line." }, singleAttributePerLine: { category: "Common", type: "boolean", default: !1, description: "Enforce single attribute per line in HTML, Vue and JSX." } }, fs = "HTML", sl = { bracketSameLine: Wr.bracketSameLine, htmlWhitespaceSensitivity: { category: fs, type: "choice", default: "css", description: "How to handle whitespaces in HTML.", choices: [{ value: "css", description: "Respect the default value of CSS display property." }, { value: "strict", description: "Whitespaces are considered sensitive." }, { value: "ignore", description: "Whitespaces are considered insensitive." }] }, singleAttributePerLine: Wr.singleAttributePerLine, vueIndentScriptAndStyle: { category: fs, type: "boolean", default: !1, description: "Indent script and style tags in Vue files." } }, ds = sl, Qr = {};
2652
+ en(Qr, { angular: () => kl, html: () => Tl, lwc: () => yl, mjml: () => wl, vue: () => Al });
2653
+ gs = al, ol = { canSelfClose: !0, normalizeTagName: !1, normalizeAttributeName: !1, allowHtmComponentClosingTags: !1, isTagNameCaseSensitive: !1, shouldParseFrontMatter: !0 };
2654
+ Zt = /* @__PURE__ */ new Map([["*", /* @__PURE__ */ new Set(["accesskey", "autocapitalize", "autocorrect", "autofocus", "class", "contenteditable", "dir", "draggable", "enterkeyhint", "exportparts", "hidden", "id", "inert", "inputmode", "is", "itemid", "itemprop", "itemref", "itemscope", "itemtype", "lang", "nonce", "part", "popover", "slot", "spellcheck", "style", "tabindex", "title", "translate", "writingsuggestions"])], ["a", /* @__PURE__ */ new Set(["charset", "coords", "download", "href", "hreflang", "name", "ping", "referrerpolicy", "rel", "rev", "shape", "target", "type"])], ["applet", /* @__PURE__ */ new Set(["align", "alt", "archive", "code", "codebase", "height", "hspace", "name", "object", "vspace", "width"])], ["area", /* @__PURE__ */ new Set(["alt", "coords", "download", "href", "hreflang", "nohref", "ping", "referrerpolicy", "rel", "shape", "target", "type"])], ["audio", /* @__PURE__ */ new Set(["autoplay", "controls", "crossorigin", "loop", "muted", "preload", "src"])], ["base", /* @__PURE__ */ new Set(["href", "target"])], ["basefont", /* @__PURE__ */ new Set(["color", "face", "size"])], ["blockquote", /* @__PURE__ */ new Set(["cite"])], ["body", /* @__PURE__ */ new Set(["alink", "background", "bgcolor", "link", "text", "vlink"])], ["br", /* @__PURE__ */ new Set(["clear"])], ["button", /* @__PURE__ */ new Set(["command", "commandfor", "disabled", "form", "formaction", "formenctype", "formmethod", "formnovalidate", "formtarget", "name", "popovertarget", "popovertargetaction", "type", "value"])], ["canvas", /* @__PURE__ */ new Set(["height", "width"])], ["caption", /* @__PURE__ */ new Set(["align"])], ["col", /* @__PURE__ */ new Set(["align", "char", "charoff", "span", "valign", "width"])], ["colgroup", /* @__PURE__ */ new Set(["align", "char", "charoff", "span", "valign", "width"])], ["data", /* @__PURE__ */ new Set(["value"])], ["del", /* @__PURE__ */ new Set(["cite", "datetime"])], ["details", /* @__PURE__ */ new Set(["name", "open"])], ["dialog", /* @__PURE__ */ new Set(["closedby", "open"])], ["dir", /* @__PURE__ */ new Set(["compact"])], ["div", /* @__PURE__ */ new Set(["align"])], ["dl", /* @__PURE__ */ new Set(["compact"])], ["embed", /* @__PURE__ */ new Set(["height", "src", "type", "width"])], ["fieldset", /* @__PURE__ */ new Set(["disabled", "form", "name"])], ["font", /* @__PURE__ */ new Set(["color", "face", "size"])], ["form", /* @__PURE__ */ new Set(["accept", "accept-charset", "action", "autocomplete", "enctype", "method", "name", "novalidate", "target"])], ["frame", /* @__PURE__ */ new Set(["frameborder", "longdesc", "marginheight", "marginwidth", "name", "noresize", "scrolling", "src"])], ["frameset", /* @__PURE__ */ new Set(["cols", "rows"])], ["h1", /* @__PURE__ */ new Set(["align"])], ["h2", /* @__PURE__ */ new Set(["align"])], ["h3", /* @__PURE__ */ new Set(["align"])], ["h4", /* @__PURE__ */ new Set(["align"])], ["h5", /* @__PURE__ */ new Set(["align"])], ["h6", /* @__PURE__ */ new Set(["align"])], ["head", /* @__PURE__ */ new Set(["profile"])], ["hr", /* @__PURE__ */ new Set(["align", "noshade", "size", "width"])], ["html", /* @__PURE__ */ new Set(["manifest", "version"])], ["iframe", /* @__PURE__ */ new Set(["align", "allow", "allowfullscreen", "allowpaymentrequest", "allowusermedia", "frameborder", "height", "loading", "longdesc", "marginheight", "marginwidth", "name", "referrerpolicy", "sandbox", "scrolling", "src", "srcdoc", "width"])], ["img", /* @__PURE__ */ new Set(["align", "alt", "border", "crossorigin", "decoding", "fetchpriority", "height", "hspace", "ismap", "loading", "longdesc", "name", "referrerpolicy", "sizes", "src", "srcset", "usemap", "vspace", "width"])], ["input", /* @__PURE__ */ new Set(["accept", "align", "alpha", "alt", "autocomplete", "checked", "colorspace", "dirname", "disabled", "form", "formaction", "formenctype", "formmethod", "formnovalidate", "formtarget", "height", "ismap", "list", "max", "maxlength", "min", "minlength", "multiple", "name", "pattern", "placeholder", "popovertarget", "popovertargetaction", "readonly", "required", "size", "src", "step", "type", "usemap", "value", "width"])], ["ins", /* @__PURE__ */ new Set(["cite", "datetime"])], ["isindex", /* @__PURE__ */ new Set(["prompt"])], ["label", /* @__PURE__ */ new Set(["for", "form"])], ["legend", /* @__PURE__ */ new Set(["align"])], ["li", /* @__PURE__ */ new Set(["type", "value"])], ["link", /* @__PURE__ */ new Set(["as", "blocking", "charset", "color", "crossorigin", "disabled", "fetchpriority", "href", "hreflang", "imagesizes", "imagesrcset", "integrity", "media", "referrerpolicy", "rel", "rev", "sizes", "target", "type"])], ["map", /* @__PURE__ */ new Set(["name"])], ["menu", /* @__PURE__ */ new Set(["compact"])], ["meta", /* @__PURE__ */ new Set(["charset", "content", "http-equiv", "media", "name", "scheme"])], ["meter", /* @__PURE__ */ new Set(["high", "low", "max", "min", "optimum", "value"])], ["object", /* @__PURE__ */ new Set(["align", "archive", "border", "classid", "codebase", "codetype", "data", "declare", "form", "height", "hspace", "name", "standby", "type", "typemustmatch", "usemap", "vspace", "width"])], ["ol", /* @__PURE__ */ new Set(["compact", "reversed", "start", "type"])], ["optgroup", /* @__PURE__ */ new Set(["disabled", "label"])], ["option", /* @__PURE__ */ new Set(["disabled", "label", "selected", "value"])], ["output", /* @__PURE__ */ new Set(["for", "form", "name"])], ["p", /* @__PURE__ */ new Set(["align"])], ["param", /* @__PURE__ */ new Set(["name", "type", "value", "valuetype"])], ["pre", /* @__PURE__ */ new Set(["width"])], ["progress", /* @__PURE__ */ new Set(["max", "value"])], ["q", /* @__PURE__ */ new Set(["cite"])], ["script", /* @__PURE__ */ new Set(["async", "blocking", "charset", "crossorigin", "defer", "fetchpriority", "integrity", "language", "nomodule", "referrerpolicy", "src", "type"])], ["select", /* @__PURE__ */ new Set(["autocomplete", "disabled", "form", "multiple", "name", "required", "size"])], ["slot", /* @__PURE__ */ new Set(["name"])], ["source", /* @__PURE__ */ new Set(["height", "media", "sizes", "src", "srcset", "type", "width"])], ["style", /* @__PURE__ */ new Set(["blocking", "media", "type"])], ["table", /* @__PURE__ */ new Set(["align", "bgcolor", "border", "cellpadding", "cellspacing", "frame", "rules", "summary", "width"])], ["tbody", /* @__PURE__ */ new Set(["align", "char", "charoff", "valign"])], ["td", /* @__PURE__ */ new Set(["abbr", "align", "axis", "bgcolor", "char", "charoff", "colspan", "headers", "height", "nowrap", "rowspan", "scope", "valign", "width"])], ["template", /* @__PURE__ */ new Set(["shadowrootclonable", "shadowrootcustomelementregistry", "shadowrootdelegatesfocus", "shadowrootmode", "shadowrootserializable"])], ["textarea", /* @__PURE__ */ new Set(["autocomplete", "cols", "dirname", "disabled", "form", "maxlength", "minlength", "name", "placeholder", "readonly", "required", "rows", "wrap"])], ["tfoot", /* @__PURE__ */ new Set(["align", "char", "charoff", "valign"])], ["th", /* @__PURE__ */ new Set(["abbr", "align", "axis", "bgcolor", "char", "charoff", "colspan", "headers", "height", "nowrap", "rowspan", "scope", "valign", "width"])], ["thead", /* @__PURE__ */ new Set(["align", "char", "charoff", "valign"])], ["time", /* @__PURE__ */ new Set(["datetime"])], ["tr", /* @__PURE__ */ new Set(["align", "bgcolor", "char", "charoff", "valign"])], ["track", /* @__PURE__ */ new Set(["default", "kind", "label", "src", "srclang"])], ["ul", /* @__PURE__ */ new Set(["compact", "type"])], ["video", /* @__PURE__ */ new Set(["autoplay", "controls", "crossorigin", "height", "loop", "muted", "playsinline", "poster", "preload", "src", "width"])]]), _s = /* @__PURE__ */ new Set(["a", "abbr", "acronym", "address", "applet", "area", "article", "aside", "audio", "b", "base", "basefont", "bdi", "bdo", "bgsound", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "command", "content", "data", "datalist", "dd", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "em", "embed", "fencedframe", "fieldset", "figcaption", "figure", "font", "footer", "form", "frame", "frameset", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "iframe", "image", "img", "input", "ins", "isindex", "kbd", "keygen", "label", "legend", "li", "link", "listing", "main", "map", "mark", "marquee", "math", "menu", "menuitem", "meta", "meter", "multicol", "nav", "nextid", "nobr", "noembed", "noframes", "noscript", "object", "ol", "optgroup", "option", "output", "p", "param", "picture", "plaintext", "pre", "progress", "q", "rb", "rbc", "rp", "rt", "rtc", "ruby", "s", "samp", "script", "search", "section", "select", "selectedcontent", "shadow", "slot", "small", "source", "spacer", "span", "strike", "strong", "style", "sub", "summary", "sup", "svg", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "title", "tr", "track", "tt", "u", "ul", "var", "video", "wbr", "xmp"]), er = { attrs: !0, children: !0, cases: !0, expression: !0 }, Ss = /* @__PURE__ */ new Set(["parent"]), We = class We2 {
2655
+ constructor(t = {}) {
2656
+ tn(this, ae), ir(this, "kind"), ir(this, "parent");
2657
+ for (let r of /* @__PURE__ */ new Set([...Ss, ...Object.keys(t)])) this.setProperty(r, t[r]);
2658
+ if (le(t)) for (let r of Object.getOwnPropertySymbols(t)) this.setProperty(r, t[r]);
2659
+ }
2660
+ setProperty(t, r) {
2661
+ if (this[t] !== r) {
2662
+ if (t in er && (r = r.map((n) => this.createChild(n))), !Ss.has(t)) {
2663
+ this[t] = r;
2664
+ return;
2665
+ }
2666
+ Object.defineProperty(this, t, { value: r, enumerable: !1, configurable: !0 });
2667
+ }
2668
+ }
2669
+ map(t) {
2670
+ let r;
2671
+ for (let n in er) {
2672
+ let i = this[n];
2673
+ if (i) {
2674
+ let s = ll(i, (a) => a.map(t));
2675
+ r !== i && (r || (r = new We2({ parent: this.parent })), r.setProperty(n, s));
2676
+ }
2677
+ }
2678
+ if (r) for (let n in this) n in er || (r[n] = this[n]);
2679
+ return t(r || this);
2680
+ }
2681
+ walk(t) {
2682
+ for (let r in er) {
2683
+ let n = this[r];
2684
+ if (n) for (let i = 0; i < n.length; i++) n[i].walk(t);
2685
+ }
2686
+ t(this);
2687
+ }
2688
+ createChild(t) {
2689
+ let r = t instanceof We2 ? t.clone() : new We2(t);
2690
+ return r.setProperty("parent", this), r;
2691
+ }
2692
+ insertChildBefore(t, r) {
2693
+ let n = this.$children;
2694
+ n.splice(n.indexOf(t), 0, this.createChild(r));
2695
+ }
2696
+ removeChild(t) {
2697
+ let r = this.$children;
2698
+ r.splice(r.indexOf(t), 1);
2699
+ }
2700
+ replaceChild(t, r) {
2701
+ let n = this.$children;
2702
+ n[n.indexOf(t)] = this.createChild(r);
2703
+ }
2704
+ clone() {
2705
+ return new We2(this);
2706
+ }
2707
+ get $children() {
2708
+ return this[$e(this, ae, $r)];
2709
+ }
2710
+ set $children(t) {
2711
+ this[$e(this, ae, $r)] = t;
2712
+ }
2713
+ get firstChild() {
2714
+ return this.$children?.[0];
2715
+ }
2716
+ get lastChild() {
2717
+ return F(1, this.$children, -1);
2718
+ }
2719
+ get prev() {
2720
+ let t = $e(this, ae, zr);
2721
+ return t[t.indexOf(this) - 1];
2722
+ }
2723
+ get next() {
2724
+ let t = $e(this, ae, zr);
2725
+ return t[t.indexOf(this) + 1];
2726
+ }
2727
+ get rawName() {
2728
+ return this.hasExplicitNamespace ? this.fullName : this.name;
2729
+ }
2730
+ get fullName() {
2731
+ return this.namespace ? this.namespace + ":" + this.name : this.name;
2732
+ }
2733
+ get attrMap() {
2734
+ return Object.fromEntries(this.attrs.map((t) => [t.fullName, t.value]));
2735
+ }
2736
+ };
2737
+ ae = /* @__PURE__ */ new WeakSet(), $r = function() {
2738
+ return this.kind === "angularIcuCase" ? "expression" : this.kind === "angularIcuExpression" ? "cases" : "children";
2739
+ }, zr = function() {
2740
+ return this.parent?.$children ?? [];
2741
+ };
2742
+ tr = We;
2743
+ cl = [{ regex: /^(?<openingTagSuffix>\[if(?<condition>[^\]]*)\]>)(?<data>.*?)<!\s*\[endif\]$/su, parse: ul }, { regex: /^\[if(?<condition>[^\]]*)\]><!$/u, parse: pl }, { regex: /^<!\s*\[endif\]$/u, parse: hl }];
2744
+ Yr = class extends Pr {
2745
+ visitExpansionCase(t, r) {
2746
+ r.parseOptions.name === "angular" && this.visitChildren(r, (n) => {
2747
+ n(t.expression);
2748
+ });
2749
+ }
2750
+ visit(t, { parseOptions: r }) {
2751
+ gl(t), _l(t, r), El(t, r), Sl(t);
2752
+ }
2753
+ };
2754
+ rr = Jt({ name: "html", normalizeTagName: !0, normalizeAttributeName: !0, allowHtmComponentClosingTags: !0 });
2755
+ Tl = dt(rr), bl = /* @__PURE__ */ new Set(["mj-style", "mj-raw"]), wl = dt({ ...rr, name: "mjml", shouldParseAsRawText: (e) => bl.has(e) }), kl = dt({ name: "angular", tokenizeAngularBlocks: !0, tokenizeAngularLetDeclaration: !0 }), Al = dt({ name: "vue", isTagNameCaseSensitive: !0, shouldParseAsRawText(e, t, r, n) {
2756
+ return e.toLowerCase() !== "html" && !r && (e !== "template" || n.some(({ name: i, value: s }) => i === "lang" && s !== "html" && s !== "" && s !== void 0));
2757
+ } }), yl = dt({ name: "lwc", canSelfClose: !1 }), xl = { html: hs };
2758
+ }
2759
+ });
2760
+ init_html();
2761
+ export {
2762
+ ws as default,
2763
+ ms as languages,
2764
+ ds as options,
2765
+ Qr as parsers,
2766
+ xl as printers
2767
+ };
2768
+ //# sourceMappingURL=html-3U6QZZZ4.js.map