@rexeus/typeweaver 0.3.0 → 0.3.1

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.
@@ -0,0 +1,2927 @@
1
+ #!/usr/bin/env node
2
+ import "./chunk-K3NQKI34.js";
3
+
4
+ // ../../node_modules/.pnpm/prettier@3.7.4/node_modules/prettier/plugins/html.mjs
5
+ var Jr = Object.defineProperty;
6
+ var Zr = (e) => {
7
+ throw TypeError(e);
8
+ };
9
+ var ks = (e, t, r) => t in e ? Jr(e, t, { enumerable: true, configurable: true, writable: true, value: r }) : e[t] = r;
10
+ var en = (e, t) => {
11
+ for (var r in t) Jr(e, r, { get: t[r], enumerable: true });
12
+ };
13
+ var ir = (e, t, r) => ks(e, typeof t != "symbol" ? t + "" : t, r);
14
+ var As = (e, t, r) => t.has(e) || Zr("Cannot " + r);
15
+ var $e = (e, t, r) => (As(e, t, "read from private field"), r ? r.call(e) : t.get(e));
16
+ var 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);
17
+ var ws = {};
18
+ en(ws, { languages: () => ms, options: () => ds, parsers: () => Qr, printers: () => xl });
19
+ var Ae = (e, t) => (r, n, ...i) => r | 1 && n == null ? void 0 : (t.call(n) ?? n[e]).apply(n, i);
20
+ var ys = String.prototype.replaceAll ?? function(e, t) {
21
+ return e.global ? this.replace(e, t) : this.split(e).join(t);
22
+ };
23
+ var xs = Ae("replaceAll", function() {
24
+ if (typeof this == "string") return ys;
25
+ });
26
+ var w = xs;
27
+ function Ns(e) {
28
+ return this[e < 0 ? this.length + e : e];
29
+ }
30
+ var Ls = Ae("at", function() {
31
+ if (Array.isArray(this) || typeof this == "string") return Ns;
32
+ });
33
+ var F = Ls;
34
+ var Ps = () => {
35
+ };
36
+ var ze = Ps;
37
+ var Ye = "string";
38
+ var je = "array";
39
+ var _t = "cursor";
40
+ var ye = "indent";
41
+ var xe = "align";
42
+ var St = "trim";
43
+ var Ne = "group";
44
+ var Le = "fill";
45
+ var Pe = "if-break";
46
+ var Oe = "indent-if-break";
47
+ var Et = "line-suffix";
48
+ var Ct = "line-suffix-boundary";
49
+ var Y = "line";
50
+ var vt = "label";
51
+ var De = "break-parent";
52
+ var Tt = /* @__PURE__ */ new Set([_t, ye, xe, St, Ne, Le, Pe, Oe, Et, Ct, Y, vt, De]);
53
+ function Os(e) {
54
+ if (typeof e == "string") return Ye;
55
+ if (Array.isArray(e)) return je;
56
+ if (!e) return;
57
+ let { type: t } = e;
58
+ if (Tt.has(t)) return t;
59
+ }
60
+ var bt = Os;
61
+ var Ds = (e) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(e);
62
+ function Rs(e) {
63
+ let t = e === null ? "null" : typeof e;
64
+ if (t !== "string" && t !== "object") return `Unexpected doc '${t}',
65
+ Expected it to be 'string' or 'object'.`;
66
+ if (bt(e)) throw new Error("doc is valid.");
67
+ let r = Object.prototype.toString.call(e);
68
+ if (r !== "[object Object]") return `Unexpected doc '${r}'.`;
69
+ let n = Ds([...Tt].map((i) => `'${i}'`));
70
+ return `Unexpected doc.type '${e.type}'.
71
+ Expected it to be ${n}.`;
72
+ }
73
+ var sr = class extends Error {
74
+ name = "InvalidDocError";
75
+ constructor(t) {
76
+ super(Rs(t)), this.doc = t;
77
+ }
78
+ };
79
+ var rn = sr;
80
+ function ar(e, t) {
81
+ if (typeof e == "string") return t(e);
82
+ let r = /* @__PURE__ */ new Map();
83
+ return n(e);
84
+ function n(s) {
85
+ if (r.has(s)) return r.get(s);
86
+ let a = i(s);
87
+ return r.set(s, a), a;
88
+ }
89
+ function i(s) {
90
+ switch (bt(s)) {
91
+ case je:
92
+ return t(s.map(n));
93
+ case Le:
94
+ return t({ ...s, parts: s.parts.map(n) });
95
+ case Pe:
96
+ return t({ ...s, breakContents: n(s.breakContents), flatContents: n(s.flatContents) });
97
+ case Ne: {
98
+ let { expandedStates: a, contents: o } = s;
99
+ return a ? (a = a.map(n), o = a[0]) : o = n(o), t({ ...s, contents: o, expandedStates: a });
100
+ }
101
+ case xe:
102
+ case ye:
103
+ case Oe:
104
+ case vt:
105
+ case Et:
106
+ return t({ ...s, contents: n(s.contents) });
107
+ case Ye:
108
+ case _t:
109
+ case St:
110
+ case Ct:
111
+ case Y:
112
+ case De:
113
+ return t(s);
114
+ default:
115
+ throw new rn(s);
116
+ }
117
+ }
118
+ }
119
+ function L(e, t = nn) {
120
+ return ar(e, (r) => typeof r == "string" ? q(t, r.split(`
121
+ `)) : r);
122
+ }
123
+ var D = ze;
124
+ var wt = ze;
125
+ var sn = ze;
126
+ var an = ze;
127
+ function y(e) {
128
+ return D(e), { type: ye, contents: e };
129
+ }
130
+ function Is(e, t) {
131
+ return an(e), D(t), { type: xe, contents: t, n: e };
132
+ }
133
+ function on(e) {
134
+ return Is(Number.NEGATIVE_INFINITY, e);
135
+ }
136
+ var j = { type: De };
137
+ function kt(e) {
138
+ return sn(e), { type: Le, parts: e };
139
+ }
140
+ function C(e, t = {}) {
141
+ return D(e), wt(t.expandedStates, true), { type: Ne, id: t.id, contents: e, break: !!t.shouldBreak, expandedStates: t.expandedStates };
142
+ }
143
+ function X(e, t = "", r = {}) {
144
+ return D(e), t !== "" && D(t), { type: Pe, breakContents: e, flatContents: t, groupId: r.groupId };
145
+ }
146
+ function ln(e, t) {
147
+ return D(e), { type: Oe, contents: e, groupId: t.groupId, negate: t.negate };
148
+ }
149
+ function q(e, t) {
150
+ D(e), wt(t);
151
+ let r = [];
152
+ for (let n = 0; n < t.length; n++) n !== 0 && r.push(e), r.push(t[n]);
153
+ return r;
154
+ }
155
+ var _ = { type: Y };
156
+ var k = { type: Y, soft: true };
157
+ var Ms = { type: Y, hard: true };
158
+ var v = [Ms, j];
159
+ var Bs = { type: Y, hard: true, literal: true };
160
+ var nn = [Bs, j];
161
+ var cn = Object.freeze({ character: "'", codePoint: 39 });
162
+ var un = Object.freeze({ character: '"', codePoint: 34 });
163
+ var Fs = Object.freeze({ preferred: cn, alternate: un });
164
+ var qs = Object.freeze({ preferred: un, alternate: cn });
165
+ function Hs(e, t) {
166
+ let { preferred: r, alternate: n } = t === true || t === "'" ? Fs : qs, { length: i } = e, s = 0, a = 0;
167
+ for (let o = 0; o < i; o++) {
168
+ let c = e.charCodeAt(o);
169
+ c === r.codePoint ? s++ : c === n.codePoint && a++;
170
+ }
171
+ return (s > a ? n : r).character;
172
+ }
173
+ var pn = Hs;
174
+ function or(e) {
175
+ if (typeof e != "string") throw new TypeError("Expected a string");
176
+ return e.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
177
+ }
178
+ var lr = class {
179
+ #e;
180
+ constructor(t) {
181
+ this.#e = new Set(t);
182
+ }
183
+ getLeadingWhitespaceCount(t) {
184
+ let r = this.#e, n = 0;
185
+ for (let i = 0; i < t.length && r.has(t.charAt(i)); i++) n++;
186
+ return n;
187
+ }
188
+ getTrailingWhitespaceCount(t) {
189
+ let r = this.#e, n = 0;
190
+ for (let i = t.length - 1; i >= 0 && r.has(t.charAt(i)); i--) n++;
191
+ return n;
192
+ }
193
+ getLeadingWhitespace(t) {
194
+ let r = this.getLeadingWhitespaceCount(t);
195
+ return t.slice(0, r);
196
+ }
197
+ getTrailingWhitespace(t) {
198
+ let r = this.getTrailingWhitespaceCount(t);
199
+ return t.slice(t.length - r);
200
+ }
201
+ hasLeadingWhitespace(t) {
202
+ return this.#e.has(t.charAt(0));
203
+ }
204
+ hasTrailingWhitespace(t) {
205
+ return this.#e.has(F(0, t, -1));
206
+ }
207
+ trimStart(t) {
208
+ let r = this.getLeadingWhitespaceCount(t);
209
+ return t.slice(r);
210
+ }
211
+ trimEnd(t) {
212
+ let r = this.getTrailingWhitespaceCount(t);
213
+ return t.slice(0, t.length - r);
214
+ }
215
+ trim(t) {
216
+ return this.trimEnd(this.trimStart(t));
217
+ }
218
+ split(t, r = false) {
219
+ let n = `[${or([...this.#e].join(""))}]+`, i = new RegExp(r ? `(${n})` : n, "u");
220
+ return t.split(i);
221
+ }
222
+ hasWhitespaceCharacter(t) {
223
+ let r = this.#e;
224
+ return Array.prototype.some.call(t, (n) => r.has(n));
225
+ }
226
+ hasNonWhitespaceCharacter(t) {
227
+ let r = this.#e;
228
+ return Array.prototype.some.call(t, (n) => !r.has(n));
229
+ }
230
+ isWhitespaceOnly(t) {
231
+ let r = this.#e;
232
+ return Array.prototype.every.call(t, (n) => r.has(n));
233
+ }
234
+ #t(t) {
235
+ let r = Number.POSITIVE_INFINITY;
236
+ for (let n of t.split(`
237
+ `)) {
238
+ if (n.length === 0) continue;
239
+ let i = this.getLeadingWhitespaceCount(n);
240
+ if (i === 0) return 0;
241
+ n.length !== i && i < r && (r = i);
242
+ }
243
+ return r === Number.POSITIVE_INFINITY ? 0 : r;
244
+ }
245
+ dedentString(t) {
246
+ let r = this.#t(t);
247
+ return r === 0 ? t : t.split(`
248
+ `).map((n) => n.slice(r)).join(`
249
+ `);
250
+ }
251
+ };
252
+ var hn = lr;
253
+ var Vs = [" ", `
254
+ `, "\f", "\r", " "];
255
+ var Us = new hn(Vs);
256
+ var x = Us;
257
+ var cr = class extends Error {
258
+ name = "UnexpectedNodeError";
259
+ constructor(t, r, n = "type") {
260
+ super(`Unexpected ${r} node ${n}: ${JSON.stringify(t[n])}.`), this.node = t;
261
+ }
262
+ };
263
+ var mn = cr;
264
+ var Ws = /* @__PURE__ */ new Set(["sourceSpan", "startSourceSpan", "endSourceSpan", "nameSpan", "valueSpan", "keySpan", "tagDefinition", "tokens", "valueTokens", "switchValueSourceSpan", "expSourceSpan", "valueSourceSpan"]);
265
+ var Gs = /* @__PURE__ */ new Set(["if", "else if", "for", "switch", "case"]);
266
+ function fn(e, t, r) {
267
+ if (e.kind === "text" || e.kind === "comment") return null;
268
+ if (e.kind === "yaml" && delete t.value, e.kind === "attribute") {
269
+ let { fullName: n, value: i } = e;
270
+ 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, '"'));
271
+ }
272
+ 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();
273
+ e.kind === "angularIcuExpression" && (t.switchValue = e.switchValue.trim()), e.kind === "angularLetDeclarationInitializer" && delete t.value, e.kind === "element" && e.isVoid && !e.isSelfClosing && (t.isSelfClosing = true);
274
+ }
275
+ fn.ignoredProperties = Ws;
276
+ var dn = fn;
277
+ function K(e, t = true) {
278
+ return [y([k, e]), t ? k : ""];
279
+ }
280
+ function W(e, t) {
281
+ 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;
282
+ return r && (r.type === "ObjectExpression" || r.type === "ArrayExpression" || (t.parser === "__vue_expression" || t.parser === "__vue_ts_expression") && (r.type === "TemplateLiteral" || r.type === "StringLiteral"));
283
+ }
284
+ async function A(e, t, r, n) {
285
+ r = { __isInHtmlAttribute: true, __embeddedInHtml: true, ...r };
286
+ let i = true;
287
+ n && (r.__onHtmlBindingRoot = (a, o) => {
288
+ i = n(a, o);
289
+ });
290
+ let s = await t(e, r, t);
291
+ return i ? C(s) : K(s);
292
+ }
293
+ function $s(e, t, r, n) {
294
+ let { node: i } = r, s = n.originalText.slice(i.sourceSpan.start.offset, i.sourceSpan.end.offset);
295
+ return /^\s*$/u.test(s) ? "" : A(s, e, { parser: "__ng_directive", __isInHtmlAttribute: false }, W);
296
+ }
297
+ var gn = $s;
298
+ var zs = Array.prototype.toReversed ?? function() {
299
+ return [...this].reverse();
300
+ };
301
+ var Ys = Ae("toReversed", function() {
302
+ if (Array.isArray(this)) return zs;
303
+ });
304
+ var _n = Ys;
305
+ function js() {
306
+ let e = globalThis, t = e.Deno?.build?.os;
307
+ return typeof t == "string" ? t === "windows" : e.navigator?.platform?.startsWith("Win") ?? e.process?.platform?.startsWith("win") ?? false;
308
+ }
309
+ var Xs = js();
310
+ function Sn(e) {
311
+ if (e = e instanceof URL ? e : new URL(e), e.protocol !== "file:") throw new TypeError(`URL must be a file URL: received "${e.protocol}"`);
312
+ return e;
313
+ }
314
+ function Ks(e) {
315
+ return e = Sn(e), decodeURIComponent(e.pathname.replace(/%(?![0-9A-Fa-f]{2})/g, "%25"));
316
+ }
317
+ function Qs(e) {
318
+ e = Sn(e);
319
+ let t = decodeURIComponent(e.pathname.replace(/\//g, "\\").replace(/%(?![0-9A-Fa-f]{2})/g, "%25")).replace(/^\\*([A-Za-z]:)(\\|$)/, "$1\\");
320
+ return e.hostname !== "" && (t = `\\\\${e.hostname}${t}`), t;
321
+ }
322
+ function ur(e) {
323
+ return Xs ? Qs(e) : Ks(e);
324
+ }
325
+ var En = (e) => String(e).split(/[/\\]/u).pop();
326
+ var Cn = (e) => String(e).startsWith("file:");
327
+ function Js(e) {
328
+ return Array.isArray(e) && e.length > 0;
329
+ }
330
+ var Re = Js;
331
+ function vn(e, t) {
332
+ if (!t) return;
333
+ let r = En(t).toLowerCase();
334
+ return e.find(({ filenames: n }) => n?.some((i) => i.toLowerCase() === r)) ?? e.find(({ extensions: n }) => n?.some((i) => r.endsWith(i)));
335
+ }
336
+ function Zs(e, t) {
337
+ if (t) return e.find(({ name: r }) => r.toLowerCase() === t) ?? e.find(({ aliases: r }) => r?.includes(t)) ?? e.find(({ extensions: r }) => r?.includes(`.${t}`));
338
+ }
339
+ var ea = void 0;
340
+ function Tn(e, t) {
341
+ if (t) {
342
+ if (Cn(t)) try {
343
+ t = ur(t);
344
+ } catch {
345
+ return;
346
+ }
347
+ if (typeof t == "string") return e.find(({ isSupported: r }) => r?.({ filepath: t }));
348
+ }
349
+ }
350
+ function ta(e, t) {
351
+ let r = _n(0, e.plugins).flatMap((i) => i.languages ?? []);
352
+ 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];
353
+ }
354
+ var At = ta;
355
+ var yt = /* @__PURE__ */ Symbol.for("PRETTIER_IS_FRONT_MATTER");
356
+ function ra(e) {
357
+ return !!e?.[yt];
358
+ }
359
+ var le = ra;
360
+ var Xe = 3;
361
+ function na(e) {
362
+ let t = e.slice(0, Xe);
363
+ if (t !== "---" && t !== "+++") return;
364
+ let r = e.indexOf(`
365
+ `, Xe);
366
+ if (r === -1) return;
367
+ let n = e.slice(Xe, r).trim(), i = e.indexOf(`
368
+ ${t}`, r), s = n;
369
+ if (s || (s = t === "+++" ? "toml" : "yaml"), i === -1 && t === "---" && s === "yaml" && (i = e.indexOf(`
370
+ ...`, r)), i === -1) return;
371
+ let a = i + 1 + Xe, o = e.charAt(a + 1);
372
+ if (!/\s?/u.test(o)) return;
373
+ let c = e.slice(0, a), u;
374
+ 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() {
375
+ return u ?? (u = c.split(`
376
+ `)), u.length;
377
+ }, get column() {
378
+ return u ?? (u = c.split(`
379
+ `)), F(0, u, -1).length;
380
+ } }, [yt]: true };
381
+ }
382
+ function ia(e) {
383
+ let t = na(e);
384
+ return t ? { frontMatter: t, get content() {
385
+ let { raw: r } = t;
386
+ return w(0, r, /[^\n]/gu, " ") + e.slice(r.length);
387
+ } } : { content: e };
388
+ }
389
+ var pr = ia;
390
+ var bn = "inline";
391
+ var 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" };
392
+ var wn = "normal";
393
+ var mr = { listing: "pre", plaintext: "pre", pre: "pre", xmp: "pre", nobr: "nowrap", table: "initial", textarea: "pre-wrap" };
394
+ function sa(e) {
395
+ return e.kind === "element" && !e.hasExplicitNamespace && !["html", "svg"].includes(e.namespace);
396
+ }
397
+ var ce = sa;
398
+ var aa = (e) => w(0, e, /^[\t\f\r ]*\n/gu, "");
399
+ var fr = (e) => aa(x.trimEnd(e));
400
+ var kn = (e) => {
401
+ let t = e, r = x.getLeadingWhitespace(t);
402
+ r && (t = t.slice(r.length));
403
+ let n = x.getTrailingWhitespace(t);
404
+ return n && (t = t.slice(0, -n.length)), { leadingWhitespace: r, trailingWhitespace: n, text: t };
405
+ };
406
+ function xt(e, t) {
407
+ 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");
408
+ }
409
+ function pe(e) {
410
+ return e.kind === "attribute" || !e.parent || !e.prev ? false : oa(e.prev);
411
+ }
412
+ function oa(e) {
413
+ return e.kind === "comment" && e.value.trim() === "prettier-ignore";
414
+ }
415
+ function O(e) {
416
+ return e.kind === "text" || e.kind === "comment";
417
+ }
418
+ function H(e, t) {
419
+ 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"));
420
+ }
421
+ function An(e, t) {
422
+ return e.children && !H(e, t);
423
+ }
424
+ function yn(e, t) {
425
+ return H(e, t) || e.kind === "interpolation" || dr(e);
426
+ }
427
+ function dr(e) {
428
+ return Fn(e).startsWith("pre");
429
+ }
430
+ function xn(e, t) {
431
+ let r = n();
432
+ if (r && !e.prev && e.parent?.tagDefinition?.ignoreFirstLf) return e.kind === "interpolation";
433
+ return r;
434
+ function n() {
435
+ return le(e) || e.kind === "angularControlFlowBlock" ? false : (e.kind === "text" || e.kind === "interpolation") && e.prev && (e.prev.kind === "text" || e.prev.kind === "interpolation") ? true : !e.parent || e.parent.cssDisplay === "none" ? false : ue(e.parent) ? true : !(!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));
436
+ }
437
+ }
438
+ function Nn(e, t) {
439
+ return le(e) || e.kind === "angularControlFlowBlock" ? false : (e.kind === "text" || e.kind === "interpolation") && e.next && (e.next.kind === "text" || e.next.kind === "interpolation") ? true : !e.parent || e.parent.cssDisplay === "none" ? false : ue(e.parent) ? true : !(!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));
440
+ }
441
+ function Ln(e, t) {
442
+ return _a(e.cssDisplay) && !H(e, t);
443
+ }
444
+ function Ke(e) {
445
+ return le(e) || e.next && e.sourceSpan.end && e.sourceSpan.end.line + 1 < e.next.sourceSpan.start.line;
446
+ }
447
+ function Pn(e) {
448
+ 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));
449
+ }
450
+ function gr(e) {
451
+ return e.kind === "element" && e.children.length > 0 && (["html", "head", "ul", "ol", "select"].includes(e.name) || e.cssDisplay.startsWith("table") && e.cssDisplay !== "table-cell");
452
+ }
453
+ function Nt(e) {
454
+ return In(e) || e.prev && la(e.prev) || On(e);
455
+ }
456
+ function la(e) {
457
+ return In(e) || e.kind === "element" && e.fullName === "br" || On(e);
458
+ }
459
+ function On(e) {
460
+ return Dn(e) && Rn(e);
461
+ }
462
+ function Dn(e) {
463
+ 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);
464
+ }
465
+ function Rn(e) {
466
+ 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);
467
+ }
468
+ function In(e) {
469
+ switch (e.kind) {
470
+ case "ieConditionalComment":
471
+ case "comment":
472
+ case "directive":
473
+ return true;
474
+ case "element":
475
+ return ["script", "select"].includes(e.name);
476
+ }
477
+ return false;
478
+ }
479
+ function Lt(e) {
480
+ return e.lastChild ? Lt(e.lastChild) : e;
481
+ }
482
+ function ca(e) {
483
+ return e.children?.some((t) => t.kind !== "text");
484
+ }
485
+ function Mn(e) {
486
+ if (e) switch (e) {
487
+ case "module":
488
+ case "text/javascript":
489
+ case "text/babel":
490
+ case "text/jsx":
491
+ case "application/javascript":
492
+ return "babel";
493
+ case "application/x-typescript":
494
+ return "typescript";
495
+ case "text/markdown":
496
+ return "markdown";
497
+ case "text/html":
498
+ return "html";
499
+ case "text/x-handlebars-template":
500
+ return "glimmer";
501
+ default:
502
+ if (e.endsWith("json") || e.endsWith("importmap") || e === "speculationrules") return "json";
503
+ }
504
+ }
505
+ function ua(e, t) {
506
+ let { name: r, attrMap: n } = e;
507
+ if (r !== "script" || Object.prototype.hasOwnProperty.call(n, "src")) return;
508
+ let { type: i, lang: s } = e.attrMap;
509
+ return !s && !i ? "babel" : At(t, { language: s }) ?? Mn(i);
510
+ }
511
+ function pa(e, t) {
512
+ if (!Pt(e, t)) return;
513
+ let { attrMap: r } = e;
514
+ if (Object.prototype.hasOwnProperty.call(r, "src")) return;
515
+ let { type: n, lang: i } = r;
516
+ return At(t, { language: i }) ?? Mn(n);
517
+ }
518
+ function ha(e, t) {
519
+ if (e.name === "style") {
520
+ let { lang: r } = e.attrMap;
521
+ return r ? At(t, { language: r }) : "css";
522
+ }
523
+ if (e.name === "mj-style" && t.parser === "mjml") return "css";
524
+ }
525
+ function _r(e, t) {
526
+ return ua(e, t) ?? ha(e, t) ?? pa(e, t);
527
+ }
528
+ function Qe(e) {
529
+ return e === "block" || e === "list-item" || e.startsWith("table");
530
+ }
531
+ function ma(e) {
532
+ return !Qe(e) && e !== "inline-block";
533
+ }
534
+ function fa(e) {
535
+ return !Qe(e) && e !== "inline-block";
536
+ }
537
+ function da(e) {
538
+ return !Qe(e);
539
+ }
540
+ function ga(e) {
541
+ return !Qe(e);
542
+ }
543
+ function _a(e) {
544
+ return !Qe(e) && e !== "inline-block";
545
+ }
546
+ function ue(e) {
547
+ return Fn(e).startsWith("pre");
548
+ }
549
+ function Sa(e, t) {
550
+ let r = e;
551
+ for (; r; ) {
552
+ if (t(r)) return true;
553
+ r = r.parent;
554
+ }
555
+ return false;
556
+ }
557
+ function Bn(e, t) {
558
+ if (he(e, t)) return "block";
559
+ if (e.prev?.kind === "comment") {
560
+ let n = e.prev.value.match(/^\s*display:\s*([a-z]+)\s*$/u);
561
+ if (n) return n[1];
562
+ }
563
+ let r = false;
564
+ if (e.kind === "element" && e.namespace === "svg") if (Sa(e, (n) => n.fullName === "svg:foreignObject")) r = true;
565
+ else return e.name === "svg" ? "inline-block" : "block";
566
+ switch (t.htmlWhitespaceSensitivity) {
567
+ case "strict":
568
+ return "inline";
569
+ case "ignore":
570
+ return "block";
571
+ default:
572
+ if (e.kind === "element" && (!e.namespace || r || ce(e)) && Object.prototype.hasOwnProperty.call(hr, e.name)) return hr[e.name];
573
+ }
574
+ return bn;
575
+ }
576
+ function Fn(e) {
577
+ return e.kind === "element" && (!e.namespace || ce(e)) && Object.prototype.hasOwnProperty.call(mr, e.name) ? mr[e.name] : wn;
578
+ }
579
+ function Sr(e) {
580
+ return w(0, w(0, e, "&apos;", "'"), "&quot;", '"');
581
+ }
582
+ function b(e) {
583
+ return Sr(e.value);
584
+ }
585
+ var Ea = /* @__PURE__ */ new Set(["template", "style", "script"]);
586
+ function Je(e, t) {
587
+ return he(e, t) && !Ea.has(e.fullName);
588
+ }
589
+ function he(e, t) {
590
+ return t.parser === "vue" && e.kind === "element" && e.parent.kind === "root" && e.fullName.toLowerCase() !== "html";
591
+ }
592
+ function Pt(e, t) {
593
+ return he(e, t) && (Je(e, t) || e.attrMap.lang && e.attrMap.lang !== "html");
594
+ }
595
+ function qn(e) {
596
+ let t = e.fullName;
597
+ return t.charAt(0) === "#" || t === "slot-scope" || t === "v-slot" || t.startsWith("v-slot:");
598
+ }
599
+ function Hn(e, t) {
600
+ let r = e.parent;
601
+ if (!he(r, t)) return false;
602
+ let n = r.fullName, i = e.fullName;
603
+ return n === "script" && i === "setup" || n === "style" && i === "vars";
604
+ }
605
+ function Ot(e, t = e.value) {
606
+ return e.parent.isWhitespaceSensitive ? e.parent.isIndentationSensitive ? L(t) : L(x.dedentString(fr(t)), v) : q(_, x.split(t));
607
+ }
608
+ function Dt(e, t) {
609
+ return he(e, t) && e.name === "script";
610
+ }
611
+ function Ca(e) {
612
+ let { valueSpan: t, value: r } = e;
613
+ return t.end.offset - t.start.offset === r.length + 2;
614
+ }
615
+ function Rt(e, t) {
616
+ if (Ca(e)) return false;
617
+ let { value: r } = e;
618
+ return /^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(r) || t.parser === "lwc" && r.startsWith("{") && r.endsWith("}");
619
+ }
620
+ var Vn = /\{\{(.+?)\}\}/su;
621
+ var Un = ({ node: { value: e } }) => Vn.test(e);
622
+ async function Wn(e, t, r) {
623
+ let n = b(r.node), i = [];
624
+ for (let [s, a] of n.split(Vn).entries()) if (s % 2 === 0) i.push(L(a));
625
+ else try {
626
+ i.push(C(["{{", y([_, await A(a, e, { parser: "__ng_interpolation", __isInHtmlInterpolation: true })]), _, "}}"]));
627
+ } catch {
628
+ i.push("{{", L(a), "}}");
629
+ }
630
+ return i;
631
+ }
632
+ var Er = (e) => (t, r, n) => A(b(n.node), t, { parser: e }, W);
633
+ var va = [{ test(e) {
634
+ let t = e.node.fullName;
635
+ return t.startsWith("(") && t.endsWith(")") || t.startsWith("on-");
636
+ }, print: Er("__ng_action") }, { test(e) {
637
+ let t = e.node.fullName;
638
+ return t.startsWith("[") && t.endsWith("]") || /^bind(?:on)?-/u.test(t) || /^ng-(?:if|show|hide|class|style)$/u.test(t);
639
+ }, 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 }));
640
+ function Ta(e, t, { node: r }) {
641
+ let n = b(r);
642
+ return K(kt(Ot(r, n.trim())), !n.includes("@@"));
643
+ }
644
+ var Gn = va;
645
+ var $n = ({ node: e }, t) => !t.parentParser && e.fullName === "class" && !e.value.includes("{{");
646
+ var zn = (e, t, r) => b(r.node).trim().split(/\s+/u).join(" ");
647
+ var 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"];
648
+ var wa = new Set(Cr);
649
+ var Yn = ({ node: e }, t) => wa.has(e.fullName) && !t.parentParser && !e.value.includes("{{");
650
+ var jn = (e, t, r) => A(b(r.node), e, { parser: "babel", __isHtmlInlineEventHandler: true }, () => false);
651
+ function ka(e) {
652
+ let t = [];
653
+ for (let r of e.split(";")) {
654
+ if (r = x.trim(r), !r) continue;
655
+ let [n, ...i] = x.split(r);
656
+ t.push({ name: n, value: i });
657
+ }
658
+ return t;
659
+ }
660
+ var Xn = ka;
661
+ var Kn = ({ node: e }, t) => e.fullName === "allow" && !t.parentParser && e.parent.fullName === "iframe" && !e.value.includes("{{");
662
+ function Qn(e, t, r) {
663
+ let { node: n } = r, i = Xn(b(n));
664
+ return i.length === 0 ? [""] : K(i.map(({ name: s, value: a }, o) => [[s, ...a].join(" "), o === i.length - 1 ? X(";") : [";", _]]));
665
+ }
666
+ function Jn(e) {
667
+ return e === " " || e === `
668
+ ` || e === "\f" || e === "\r" || e === " ";
669
+ }
670
+ var Aa = /^[ \t\n\r\u000c]+/;
671
+ var ya = /^[, \t\n\r\u000c]+/;
672
+ var xa = /^[^ \t\n\r\u000c]+/;
673
+ var Na = /[,]+$/;
674
+ var Zn = /^\d+$/;
675
+ var La = /^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/;
676
+ function Pa(e) {
677
+ let t = e.length, r, n, i, s, a, o = 0, c;
678
+ function u(m) {
679
+ let g, E = m.exec(e.substring(o));
680
+ if (E) return [g] = E, o += g.length, g;
681
+ }
682
+ let p = [];
683
+ for (; ; ) {
684
+ if (u(ya), o >= t) {
685
+ if (p.length === 0) throw new Error("Must contain one or more image candidate strings.");
686
+ return p;
687
+ }
688
+ c = o, r = u(xa), n = [], r.slice(-1) === "," ? (r = r.replace(Na, ""), S()) : d();
689
+ }
690
+ function d() {
691
+ for (u(Aa), i = "", s = "in descriptor"; ; ) {
692
+ if (a = e.charAt(o), s === "in descriptor") if (Jn(a)) i && (n.push(i), i = "", s = "after descriptor");
693
+ else if (a === ",") {
694
+ o += 1, i && n.push(i), S();
695
+ return;
696
+ } else if (a === "(") i += a, s = "in parens";
697
+ else if (a === "") {
698
+ i && n.push(i), S();
699
+ return;
700
+ } else i += a;
701
+ else if (s === "in parens") if (a === ")") i += a, s = "in descriptor";
702
+ else if (a === "") {
703
+ n.push(i), S();
704
+ return;
705
+ } else i += a;
706
+ else if (s === "after descriptor" && !Jn(a)) if (a === "") {
707
+ S();
708
+ return;
709
+ } else s = "in descriptor", o -= 1;
710
+ o += 1;
711
+ }
712
+ }
713
+ function S() {
714
+ let m = false, g, E, P, z, oe = {}, ee, gt, ke, Ge, nr;
715
+ 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 = true), Ge === 0 ? m = true : g = Ge) : La.test(ke) && gt === "x" ? ((g || E || P) && (m = true), nr < 0 ? m = true : E = nr) : Zn.test(ke) && gt === "h" ? ((P || E) && (m = true), Ge === 0 ? m = true : P = Ge) : m = true;
716
+ 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);
717
+ else throw new Error(`Invalid srcset descriptor found in "${e}" at "${ee}".`);
718
+ }
719
+ }
720
+ var ei = Pa;
721
+ var ti = (e) => e.node.fullName === "srcset" && (e.parent.fullName === "img" || e.parent.fullName === "source");
722
+ var ri = { width: "w", height: "h", density: "x" };
723
+ var Oa = Object.keys(ri);
724
+ function ni(e, t, r) {
725
+ let n = b(r.node), i = ei(n), s = Oa.filter((m) => i.some((g) => Object.prototype.hasOwnProperty.call(g, m)));
726
+ if (s.length > 1) throw new Error("Mixed descriptor in srcset is not supported");
727
+ 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) => {
728
+ let g = m.indexOf(".");
729
+ return g === -1 ? m.length : g;
730
+ }), S = Math.max(...d);
731
+ return K(q([",", _], c.map((m, g) => {
732
+ let E = [m], P = p[g];
733
+ if (P) {
734
+ let z = u - m.length + 1, oe = S - d[g], ee = " ".repeat(z + oe);
735
+ E.push(X(ee, " "), P + o);
736
+ }
737
+ return E;
738
+ })));
739
+ }
740
+ var ii = ({ node: e }, t) => e.fullName === "style" && !t.parentParser && !e.value.includes("{{");
741
+ var si = async (e, t, r) => K(await e(b(r.node), { parser: "css", __isHTMLStyleAttribute: true }));
742
+ var vr = /* @__PURE__ */ new WeakMap();
743
+ function Da(e, t) {
744
+ let { root: r } = e;
745
+ return vr.has(r) || vr.set(r, r.children.some((n) => Dt(n, t) && ["ts", "typescript"].includes(n.attrMap.lang))), vr.get(r);
746
+ }
747
+ var G = Da;
748
+ function ai(e, t, r) {
749
+ let n = b(r.node);
750
+ return A(`type T<${n}> = any`, e, { parser: "babel-ts", __isEmbeddedTypescriptGenericParameters: true }, W);
751
+ }
752
+ function oi(e, t, r, n) {
753
+ let i = b(r.node), s = G(r, n) ? "babel-ts" : "babel";
754
+ return A(`function _(${i}) {}`, e, { parser: s, __isVueBindings: true });
755
+ }
756
+ async function li(e, t, r, n) {
757
+ let i = b(r.node), { left: s, operator: a, right: o } = Ra(i), c = G(r, n);
758
+ return [C(await A(`function _(${s}) {}`, e, { parser: c ? "babel-ts" : "babel", __isVueForBindingLeft: true })), " ", a, " ", await A(o, e, { parser: c ? "__ts_expression" : "__js_expression" })];
759
+ }
760
+ function Ra(e) {
761
+ let t = /(.*?)\s+(in|of)\s+(.*)/su, r = /,([^,\]}]*)(?:,([^,\]}]*))?$/u, n = /^\(|\)$/gu, i = e.match(t);
762
+ if (!i) return;
763
+ let s = { for: i[3].trim() };
764
+ if (!s.for) return;
765
+ let a = w(0, i[1].trim(), n, ""), o = a.match(r);
766
+ o ? (s.alias = a.replace(r, ""), s.iterator1 = o[1].trim(), o[2] && (s.iterator2 = o[2].trim())) : s.alias = a;
767
+ let c = [s.alias, s.iterator1, s.iterator2];
768
+ 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 };
769
+ }
770
+ var 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) {
771
+ let t = e.node.fullName;
772
+ return t.startsWith("@") || t.startsWith("v-on:");
773
+ }, print: Ma }, { test(e) {
774
+ let t = e.node.fullName;
775
+ return t.startsWith(":") || t.startsWith(".") || t.startsWith("v-bind:");
776
+ }, 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 }));
777
+ async function Ma(e, t, r, n) {
778
+ try {
779
+ return await ci(e, t, r, n);
780
+ } catch (a) {
781
+ if (a.cause?.code !== "BABEL_PARSER_SYNTAX_ERROR") throw a;
782
+ }
783
+ let i = b(r.node), s = G(r, n) ? "__vue_ts_event_binding" : "__vue_event_binding";
784
+ return A(i, e, { parser: s }, W);
785
+ }
786
+ function Ba(e, t, r, n) {
787
+ let i = b(r.node), s = G(r, n) ? "__vue_ts_expression" : "__vue_expression";
788
+ return A(i, e, { parser: s }, W);
789
+ }
790
+ function ci(e, t, r, n) {
791
+ let i = b(r.node), s = G(r, n) ? "__ts_expression" : "__js_expression";
792
+ return A(i, e, { parser: s }, W);
793
+ }
794
+ var ui = Ia;
795
+ var 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) }));
796
+ function qa(e, t) {
797
+ let { node: r } = e, { value: n } = r;
798
+ if (n) return Rt(r, t) ? [r.rawName, "=", n] : Fa.find(({ test: i }) => i(e, t))?.print;
799
+ }
800
+ function Ha(e) {
801
+ return async (t, r, n, i) => {
802
+ let s = await e(t, r, n, i);
803
+ if (s) return s = ar(s, (a) => typeof a == "string" ? w(0, a, '"', "&quot;") : a), [n.node.rawName, '="', C(s), '"'];
804
+ };
805
+ }
806
+ var pi = qa;
807
+ var Q = (e) => e.sourceSpan.start.offset;
808
+ var te = (e) => e.sourceSpan.end.offset;
809
+ function Ze(e, t) {
810
+ return [e.isSelfClosing ? "" : Va(e, t), me(e, t)];
811
+ }
812
+ function Va(e, t) {
813
+ return e.lastChild && ge(e.lastChild) ? "" : [Ua(e, t), It(e, t)];
814
+ }
815
+ function me(e, t) {
816
+ return (e.next ? $(e.next) : de(e.parent)) ? "" : [fe(e, t), V(e, t)];
817
+ }
818
+ function Ua(e, t) {
819
+ return de(e) ? fe(e.lastChild, t) : "";
820
+ }
821
+ function V(e, t) {
822
+ return ge(e) ? It(e.parent, t) : et(e) ? Mt(e.next, t) : "";
823
+ }
824
+ function It(e, t) {
825
+ if (mi(e, t)) return "";
826
+ switch (e.kind) {
827
+ case "ieConditionalComment":
828
+ return "<!";
829
+ case "element":
830
+ if (e.hasHtmComponentClosingTag) return "<//";
831
+ default:
832
+ return `</${e.rawName}`;
833
+ }
834
+ }
835
+ function fe(e, t) {
836
+ if (mi(e, t)) return "";
837
+ switch (e.kind) {
838
+ case "ieConditionalComment":
839
+ case "ieConditionalEndComment":
840
+ return "[endif]-->";
841
+ case "ieConditionalStartComment":
842
+ return "]><!-->";
843
+ case "interpolation":
844
+ return "}}";
845
+ case "angularIcuExpression":
846
+ return "}";
847
+ case "element":
848
+ if (e.isSelfClosing) return "/>";
849
+ default:
850
+ return ">";
851
+ }
852
+ }
853
+ function mi(e, t) {
854
+ return !e.isSelfClosing && !e.endSourceSpan && (pe(e) || xt(e.parent, t));
855
+ }
856
+ function $(e) {
857
+ return e.prev && e.prev.kind !== "docType" && e.kind !== "angularControlFlowBlock" && !O(e.prev) && e.isLeadingSpaceSensitive && !e.hasLeadingSpaces;
858
+ }
859
+ function de(e) {
860
+ return e.lastChild?.isTrailingSpaceSensitive && !e.lastChild.hasTrailingSpaces && !O(Lt(e.lastChild)) && !ue(e);
861
+ }
862
+ function ge(e) {
863
+ return !e.next && !e.hasTrailingSpaces && e.isTrailingSpaceSensitive && O(Lt(e));
864
+ }
865
+ function et(e) {
866
+ return e.next && !O(e.next) && O(e) && e.isTrailingSpaceSensitive && !e.hasTrailingSpaces;
867
+ }
868
+ function Wa(e) {
869
+ let t = e.trim().match(/^prettier-ignore-attribute(?:\s+(.+))?$/su);
870
+ return t ? t[1] ? t[1].split(/\s+/u) : true : false;
871
+ }
872
+ function tt(e) {
873
+ return !e.prev && e.isLeadingSpaceSensitive && !e.hasLeadingSpaces;
874
+ }
875
+ function Ga(e, t, r) {
876
+ let { node: n } = e;
877
+ if (!Re(n.attrs)) return n.isSelfClosing ? " " : "";
878
+ let i = n.prev?.kind === "comment" && Wa(n.prev.value), s = typeof i == "boolean" ? () => i : Array.isArray(i) ? (d) => i.includes(d.rawName) : () => false, 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)])];
879
+ 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;
880
+ }
881
+ function $a(e) {
882
+ return e.firstChild && tt(e.firstChild) ? "" : Bt(e);
883
+ }
884
+ function rt(e, t, r) {
885
+ let { node: n } = e;
886
+ return [_e(n, t), Ga(e, t, r), n.isSelfClosing ? "" : $a(n)];
887
+ }
888
+ function _e(e, t) {
889
+ return e.prev && et(e.prev) ? "" : [U(e, t), Mt(e, t)];
890
+ }
891
+ function U(e, t) {
892
+ return tt(e) ? Bt(e.parent) : $(e) ? fe(e.prev, t) : "";
893
+ }
894
+ var hi = "<!doctype";
895
+ function Mt(e, t) {
896
+ switch (e.kind) {
897
+ case "ieConditionalComment":
898
+ case "ieConditionalStartComment":
899
+ return `<!--[if ${e.condition}`;
900
+ case "ieConditionalEndComment":
901
+ return "<!--<!";
902
+ case "interpolation":
903
+ return "{{";
904
+ case "docType": {
905
+ if (e.value === "html") {
906
+ let { filepath: n } = t;
907
+ if (n && /\.html?$/u.test(n)) return hi;
908
+ }
909
+ let r = Q(e);
910
+ return t.originalText.slice(r, r + hi.length);
911
+ }
912
+ case "angularIcuExpression":
913
+ return "{";
914
+ case "element":
915
+ if (e.condition) return `<!--[if ${e.condition}]><!--><${e.rawName}`;
916
+ default:
917
+ return `<${e.rawName}`;
918
+ }
919
+ }
920
+ function Bt(e) {
921
+ switch (e.kind) {
922
+ case "ieConditionalComment":
923
+ return "]>";
924
+ case "element":
925
+ if (e.condition) return "><!--<![endif]-->";
926
+ default:
927
+ return ">";
928
+ }
929
+ }
930
+ function za(e, t) {
931
+ if (!e.endSourceSpan) return "";
932
+ let r = e.startSourceSpan.end.offset;
933
+ e.firstChild && tt(e.firstChild) && (r -= Bt(e).length);
934
+ let n = e.endSourceSpan.start.offset;
935
+ return e.lastChild && ge(e.lastChild) ? n += It(e, t).length : de(e) && (n -= fe(e.lastChild, t).length), t.originalText.slice(r, n);
936
+ }
937
+ var Ft = za;
938
+ var Ya = /* @__PURE__ */ new Set(["if", "else if", "for", "switch", "case"]);
939
+ function ja(e, t) {
940
+ let { node: r } = e;
941
+ switch (r.kind) {
942
+ case "element":
943
+ if (H(r, t) || r.kind === "interpolation") return;
944
+ if (!r.isSelfClosing && Pt(r, t)) {
945
+ let n = _r(r, t);
946
+ return n ? async (i, s) => {
947
+ let a = Ft(r, t), o = /^\s*$/u.test(a), c = "";
948
+ return o || (c = await i(fr(a), { parser: n, __embeddedInHtml: true }), o = c === ""), [U(r, t), C(rt(e, t, s)), o ? "" : v, c, o ? "" : v, Ze(r, t), V(r, t)];
949
+ } : void 0;
950
+ }
951
+ break;
952
+ case "text":
953
+ if (H(r.parent, t)) {
954
+ let n = _r(r.parent, t);
955
+ if (n) return async (i) => {
956
+ let s = n === "markdown" ? x.dedentString(r.value.replace(/^[^\S\n]*\n/u, "")) : r.value, a = { parser: n, __embeddedInHtml: true };
957
+ if (t.parser === "html" && n === "babel") {
958
+ let o = "script", { attrMap: c } = r.parent;
959
+ c && (c.type === "module" || (c.type === "text/babel" || c.type === "text/jsx") && c["data-type"] === "module") && (o = "module"), a.__babelSourceType = o;
960
+ }
961
+ return [j, U(r, t), await i(s, a), V(r, t)];
962
+ };
963
+ } else if (r.parent.kind === "interpolation") return async (n) => {
964
+ let i = { __isInHtmlInterpolation: true, __embeddedInHtml: true };
965
+ 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) ? " " : _];
966
+ };
967
+ break;
968
+ case "attribute":
969
+ return pi(e, t);
970
+ case "angularControlFlowBlockParameters":
971
+ return Ya.has(e.parent.name) ? gn : void 0;
972
+ case "angularLetDeclarationInitializer":
973
+ return (n) => A(r.value, n, { parser: "__ng_binding", __isInHtmlAttribute: false });
974
+ }
975
+ }
976
+ var fi = ja;
977
+ var nt = null;
978
+ function it(e) {
979
+ if (nt !== null && typeof nt.property) {
980
+ let t = nt;
981
+ return nt = it.prototype = null, t;
982
+ }
983
+ return nt = it.prototype = e ?? /* @__PURE__ */ Object.create(null), new it();
984
+ }
985
+ var Xa = 10;
986
+ for (let e = 0; e <= Xa; e++) it();
987
+ function Tr(e) {
988
+ return it(e);
989
+ }
990
+ function Ka(e, t = "type") {
991
+ Tr(e);
992
+ function r(n) {
993
+ let i = n[t], s = e[i];
994
+ if (!Array.isArray(s)) throw Object.assign(new Error(`Missing visitor keys for '${i}'.`), { node: n });
995
+ return s;
996
+ }
997
+ return r;
998
+ }
999
+ var di = Ka;
1000
+ var R = [["children"], []];
1001
+ var 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"] };
1002
+ var Qa = di(gi, "kind");
1003
+ var _i = Qa;
1004
+ var Si = "format";
1005
+ var Ei = /^\s*<!--\s*@(?:noformat|noprettier)\s*-->/u;
1006
+ var Ci = /^\s*<!--\s*@(?:format|prettier)\s*-->/u;
1007
+ var vi = (e) => Ci.test(e);
1008
+ var Ti = (e) => Ei.test(e);
1009
+ var bi = (e) => `<!-- @${Si} -->
1010
+
1011
+ ${e}`;
1012
+ var 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"])]]);
1013
+ function ki(e) {
1014
+ let t = te(e);
1015
+ return e.kind === "element" && !e.endSourceSpan && Re(e.children) ? Math.max(t, ki(F(0, e.children, -1))) : t;
1016
+ }
1017
+ function st(e, t, r) {
1018
+ let n = e.node;
1019
+ if (pe(n)) {
1020
+ let i = ki(n);
1021
+ 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)];
1022
+ }
1023
+ return r();
1024
+ }
1025
+ function qt(e, t) {
1026
+ 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;
1027
+ }
1028
+ function Ie(e, t, r) {
1029
+ let { node: n } = e;
1030
+ if (gr(n)) return [j, ...e.map(() => {
1031
+ let s = e.node, a = s.prev ? qt(s.prev, s) : "";
1032
+ return [a ? [a, Ke(s.prev) ? v : ""] : "", st(e, t, r)];
1033
+ }, "children")];
1034
+ let i = n.children.map(() => /* @__PURE__ */ Symbol(""));
1035
+ return e.map(({ node: s, index: a }) => {
1036
+ if (O(s)) {
1037
+ if (s.prev && O(s.prev)) {
1038
+ let m = qt(s.prev, s);
1039
+ if (m) return Ke(s.prev) ? [v, v, st(e, t, r)] : [m, st(e, t, r)];
1040
+ }
1041
+ return st(e, t, r);
1042
+ }
1043
+ let o = [], c = [], u = [], p = [], d = s.prev ? qt(s.prev, s) : "", S = s.next ? qt(s, s.next) : "";
1044
+ 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];
1045
+ }, "children");
1046
+ }
1047
+ function Ai(e, t, r) {
1048
+ let { node: n } = e, i = [];
1049
+ Ja(e) && i.push("} "), i.push("@", n.name), n.parameters && i.push(" (", C(r("parameters")), ")"), i.push(" {");
1050
+ let s = yi(n);
1051
+ return n.children.length > 0 ? (n.firstChild.hasLeadingSpaces = true, n.lastChild.hasTrailingSpaces = true, i.push(y([v, Ie(e, t, r)])), s && i.push(v, "}")) : s && i.push("}"), C(i, { shouldBreak: true });
1052
+ }
1053
+ function yi(e) {
1054
+ return !(e.next?.kind === "angularControlFlowBlock" && wi.get(e.name)?.has(e.next.name));
1055
+ }
1056
+ function Ja(e) {
1057
+ let { previous: t } = e;
1058
+ return t?.kind === "angularControlFlowBlock" && !pe(t) && !yi(t);
1059
+ }
1060
+ function xi(e, t, r) {
1061
+ return [y([k, q([";", _], e.map(r, "children"))]), k];
1062
+ }
1063
+ function Ni(e, t, r) {
1064
+ let { node: n } = e;
1065
+ return [_e(n, t), C([n.switchValue.trim(), ", ", n.type, n.cases.length > 0 ? [",", y([_, q(_, e.map(r, "cases"))])] : "", k]), me(n, t)];
1066
+ }
1067
+ function Li(e, t, r) {
1068
+ let { node: n } = e;
1069
+ return [n.value, " {", C([y([k, e.map(({ node: i, isLast: s }) => {
1070
+ let a = [r()];
1071
+ return i.kind === "text" && (i.hasLeadingSpaces && a.unshift(_), i.hasTrailingSpaces && !s && a.push(_)), a;
1072
+ }, "expression")]), k]), "}"];
1073
+ }
1074
+ function Pi(e, t, r) {
1075
+ let { node: n } = e;
1076
+ if (xt(n, t)) return [U(n, t), C(rt(e, t, r)), L(Ft(n, t)), ...Ze(n, t), V(n, t)];
1077
+ 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 = /* @__PURE__ */ 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;
1078
+ return n.children.length === 0 ? a(n.hasDanglingSpaces && n.isDanglingSpaceSensitive ? _ : "") : a([Pn(n) ? j : "", o([c(), Ie(e, t, r)]), u()]);
1079
+ }
1080
+ var I = (function(e) {
1081
+ 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;
1082
+ })({});
1083
+ function at(e, t = true) {
1084
+ if (e[0] != ":") return [null, e];
1085
+ let r = e.indexOf(":", 1);
1086
+ if (r === -1) {
1087
+ if (t) throw new Error(`Unsupported format "${e}" expecting ":namespace:name"`);
1088
+ return [null, e];
1089
+ }
1090
+ return [e.slice(1, r), e.slice(r + 1)];
1091
+ }
1092
+ function br(e) {
1093
+ return at(e)[1] === "ng-container";
1094
+ }
1095
+ function wr(e) {
1096
+ return at(e)[1] === "ng-content";
1097
+ }
1098
+ function Me(e) {
1099
+ return e === null ? null : at(e)[0];
1100
+ }
1101
+ function Se(e, t) {
1102
+ return e ? `:${e}:${t}` : t;
1103
+ }
1104
+ var kr = { name: "custom-elements" };
1105
+ var Ar = { name: "no-errors-schema" };
1106
+ var Ee = (function(e) {
1107
+ 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;
1108
+ })({});
1109
+ var Za = /-+([a-z0-9])/g;
1110
+ function Oi(e) {
1111
+ return e.replace(Za, (...t) => t[1].toUpperCase());
1112
+ }
1113
+ var Vt;
1114
+ function yr() {
1115
+ 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;
1116
+ }
1117
+ function Ht(e, t) {
1118
+ for (let r of t) Vt[r.toLowerCase()] = e;
1119
+ }
1120
+ var Di = class {
1121
+ };
1122
+ var eo = "boolean";
1123
+ var to = "number";
1124
+ var ro = "string";
1125
+ var no = "object";
1126
+ var 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:|"];
1127
+ var 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" }));
1128
+ var so = Array.from(Ri).reduce((e, [t, r]) => (e.set(t, r), e), /* @__PURE__ */ new Map());
1129
+ var Ii = class extends Di {
1130
+ constructor() {
1131
+ super(), this._schema = /* @__PURE__ */ new Map(), this._eventSchema = /* @__PURE__ */ new Map(), io.forEach((e) => {
1132
+ let t = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Set(), [n, i] = e.split("|"), s = i.split(","), [a, o] = n.split("^");
1133
+ a.split(",").forEach((u) => {
1134
+ this._schema.set(u.toLowerCase(), t), this._eventSchema.set(u.toLowerCase(), r);
1135
+ });
1136
+ let c = o && this._schema.get(o.toLowerCase());
1137
+ if (c) {
1138
+ for (let [u, p] of c) t.set(u, p);
1139
+ for (let u of this._eventSchema.get(o.toLowerCase())) r.add(u);
1140
+ }
1141
+ s.forEach((u) => {
1142
+ if (u.length > 0) switch (u[0]) {
1143
+ case "*":
1144
+ r.add(u.substring(1));
1145
+ break;
1146
+ case "!":
1147
+ t.set(u.substring(1), eo);
1148
+ break;
1149
+ case "#":
1150
+ t.set(u.substring(1), to);
1151
+ break;
1152
+ case "%":
1153
+ t.set(u.substring(1), no);
1154
+ break;
1155
+ default:
1156
+ t.set(u, ro);
1157
+ }
1158
+ });
1159
+ });
1160
+ }
1161
+ hasProperty(e, t, r) {
1162
+ if (r.some((n) => n.name === Ar.name)) return true;
1163
+ if (e.indexOf("-") > -1) {
1164
+ if (br(e) || wr(e)) return false;
1165
+ if (r.some((n) => n.name === kr.name)) return true;
1166
+ }
1167
+ return (this._schema.get(e.toLowerCase()) || this._schema.get("unknown")).has(t);
1168
+ }
1169
+ hasElement(e, t) {
1170
+ return t.some((r) => r.name === Ar.name) || e.indexOf("-") > -1 && (br(e) || wr(e) || t.some((r) => r.name === kr.name)) ? true : this._schema.has(e.toLowerCase());
1171
+ }
1172
+ securityContext(e, t, r) {
1173
+ r && (t = this.getMappedPropName(t)), e = e.toLowerCase(), t = t.toLowerCase();
1174
+ let n = yr()[e + "|" + t];
1175
+ return n || (n = yr()["*|" + t], n || Ee.NONE);
1176
+ }
1177
+ getMappedPropName(e) {
1178
+ return Ri.get(e) ?? e;
1179
+ }
1180
+ getDefaultComponentElementName() {
1181
+ return "ng-component";
1182
+ }
1183
+ validateProperty(e) {
1184
+ return e.toLowerCase().startsWith("on") ? { error: true, msg: `Binding to event property '${e}' is disallowed for security reasons, please use (${e.slice(2)})=...
1185
+ If '${e}' is a directive input, make sure the directive is imported by the current module.` } : { error: false };
1186
+ }
1187
+ validateAttribute(e) {
1188
+ return e.toLowerCase().startsWith("on") ? { error: true, msg: `Binding to event attribute '${e}' is disallowed for security reasons, please use (${e.slice(2)})=...` } : { error: false };
1189
+ }
1190
+ allKnownElementNames() {
1191
+ return Array.from(this._schema.keys());
1192
+ }
1193
+ allKnownAttributesOfElement(e) {
1194
+ let t = this._schema.get(e.toLowerCase()) || this._schema.get("unknown");
1195
+ return Array.from(t.keys()).map((r) => so.get(r) ?? r);
1196
+ }
1197
+ allKnownEventsOfElement(e) {
1198
+ return Array.from(this._eventSchema.get(e.toLowerCase()) ?? []);
1199
+ }
1200
+ normalizeAnimationStyleProperty(e) {
1201
+ return Oi(e);
1202
+ }
1203
+ normalizeAnimationStyleValue(e, t, r) {
1204
+ let n = "", i = r.toString().trim(), s = null;
1205
+ if (ao(e) && r !== 0 && r !== "0") if (typeof r == "number") n = "px";
1206
+ else {
1207
+ let a = r.match(/^[+-]?[\d\.]+([a-z]*)$/);
1208
+ a && a[1].length == 0 && (s = `Please provide a CSS unit value for ${t}:${r}`);
1209
+ }
1210
+ return { error: s, value: i + n };
1211
+ }
1212
+ };
1213
+ function ao(e) {
1214
+ switch (e) {
1215
+ case "width":
1216
+ case "height":
1217
+ case "minWidth":
1218
+ case "minHeight":
1219
+ case "maxWidth":
1220
+ case "maxHeight":
1221
+ case "left":
1222
+ case "top":
1223
+ case "bottom":
1224
+ case "right":
1225
+ case "fontSize":
1226
+ case "outlineWidth":
1227
+ case "outlineOffset":
1228
+ case "paddingTop":
1229
+ case "paddingLeft":
1230
+ case "paddingBottom":
1231
+ case "paddingRight":
1232
+ case "marginTop":
1233
+ case "marginLeft":
1234
+ case "marginBottom":
1235
+ case "marginRight":
1236
+ case "borderRadius":
1237
+ case "borderWidth":
1238
+ case "borderTopWidth":
1239
+ case "borderLeftWidth":
1240
+ case "borderRightWidth":
1241
+ case "borderBottomWidth":
1242
+ case "textIndent":
1243
+ return true;
1244
+ default:
1245
+ return false;
1246
+ }
1247
+ }
1248
+ var f = class {
1249
+ constructor({ closedByChildren: e, implicitNamespacePrefix: t, contentType: r = I.PARSABLE_DATA, closedByParent: n = false, isVoid: i = false, ignoreFirstLf: s = false, preventNamespaceInheritance: a = false, canSelfClose: o = false } = {}) {
1250
+ this.closedByChildren = {}, this.closedByParent = false, e && e.length > 0 && e.forEach((c) => this.closedByChildren[c] = true), this.isVoid = i, this.closedByParent = n || i, this.implicitNamespacePrefix = t || null, this.contentType = r, this.ignoreFirstLf = s, this.preventNamespaceInheritance = a, this.canSelfClose = o ?? i;
1251
+ }
1252
+ isClosedByChild(e) {
1253
+ return this.isVoid || e.toLowerCase() in this.closedByChildren;
1254
+ }
1255
+ getContentType(e) {
1256
+ return typeof this.contentType == "object" ? (e === void 0 ? void 0 : this.contentType[e]) ?? this.contentType.default : this.contentType;
1257
+ }
1258
+ };
1259
+ var Mi;
1260
+ var ot;
1261
+ function Be(e) {
1262
+ return ot || (Mi = new f({ canSelfClose: true }), ot = Object.assign(/* @__PURE__ */ Object.create(null), { base: new f({ isVoid: true }), meta: new f({ isVoid: true }), area: new f({ isVoid: true }), embed: new f({ isVoid: true }), link: new f({ isVoid: true }), img: new f({ isVoid: true }), input: new f({ isVoid: true }), param: new f({ isVoid: true }), hr: new f({ isVoid: true }), br: new f({ isVoid: true }), source: new f({ isVoid: true }), track: new f({ isVoid: true }), wbr: new f({ isVoid: true }), 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: true }), thead: new f({ closedByChildren: ["tbody", "tfoot"] }), tbody: new f({ closedByChildren: ["tbody", "tfoot"], closedByParent: true }), tfoot: new f({ closedByChildren: ["tbody"], closedByParent: true }), tr: new f({ closedByChildren: ["tr"], closedByParent: true }), td: new f({ closedByChildren: ["td", "th"], closedByParent: true }), th: new f({ closedByChildren: ["td", "th"], closedByParent: true }), col: new f({ isVoid: true }), svg: new f({ implicitNamespacePrefix: "svg" }), foreignObject: new f({ implicitNamespacePrefix: "svg", preventNamespaceInheritance: true }), math: new f({ implicitNamespacePrefix: "math" }), li: new f({ closedByChildren: ["li"], closedByParent: true }), dt: new f({ closedByChildren: ["dt", "dd"] }), dd: new f({ closedByChildren: ["dt", "dd"], closedByParent: true }), rb: new f({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: true }), rt: new f({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: true }), rtc: new f({ closedByChildren: ["rb", "rtc", "rp"], closedByParent: true }), rp: new f({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: true }), optgroup: new f({ closedByChildren: ["optgroup"], closedByParent: true }), option: new f({ closedByChildren: ["option", "optgroup"], closedByParent: true }), pre: new f({ ignoreFirstLf: true }), listing: new f({ ignoreFirstLf: true }), 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: true }) }), new Ii().allKnownElementNames().forEach((t) => {
1263
+ !ot[t] && Me(t) === null && (ot[t] = new f({ canSelfClose: false }));
1264
+ })), ot[e] ?? Mi;
1265
+ }
1266
+ function lt(e) {
1267
+ return e >= 9 && e <= 32 || e == 160;
1268
+ }
1269
+ function ct(e) {
1270
+ return 48 <= e && e <= 57;
1271
+ }
1272
+ function Fe(e) {
1273
+ return e >= 97 && e <= 122 || e >= 65 && e <= 90;
1274
+ }
1275
+ function Bi(e) {
1276
+ return e >= 97 && e <= 102 || e >= 65 && e <= 70 || ct(e);
1277
+ }
1278
+ function ut(e) {
1279
+ return e === 10 || e === 13;
1280
+ }
1281
+ function xr(e) {
1282
+ return 48 <= e && e <= 55;
1283
+ }
1284
+ function Ut(e) {
1285
+ return e === 39 || e === 34 || e === 96;
1286
+ }
1287
+ var qe = class qi {
1288
+ constructor(t, r, n, i) {
1289
+ this.file = t, this.offset = r, this.line = n, this.col = i;
1290
+ }
1291
+ toString() {
1292
+ return this.offset != null ? `${this.file.url}@${this.line}:${this.col}` : this.file.url;
1293
+ }
1294
+ moveBy(t) {
1295
+ let r = this.file.content, n = r.length, i = this.offset, s = this.line, a = this.col;
1296
+ for (; i > 0 && t < 0; ) if (i--, t++, r.charCodeAt(i) == 10) {
1297
+ s--;
1298
+ let o = r.substring(0, i - 1).lastIndexOf(String.fromCharCode(10));
1299
+ a = o > 0 ? i - o : i;
1300
+ } else a--;
1301
+ for (; i < n && t > 0; ) {
1302
+ let o = r.charCodeAt(i);
1303
+ i++, t--, o == 10 ? (s++, a = 0) : a++;
1304
+ }
1305
+ return new qi(this.file, i, s, a);
1306
+ }
1307
+ getContext(t, r) {
1308
+ let n = this.file.content, i = this.offset;
1309
+ if (i != null) {
1310
+ i > n.length - 1 && (i = n.length - 1);
1311
+ let s = i, a = 0, o = 0;
1312
+ for (; a < t && i > 0 && (i--, a++, !(n[i] == `
1313
+ ` && ++o == r)); ) ;
1314
+ for (a = 0, o = 0; a < t && s < n.length - 1 && (s++, a++, !(n[s] == `
1315
+ ` && ++o == r)); ) ;
1316
+ return { before: n.substring(i, this.offset), after: n.substring(this.offset, s + 1) };
1317
+ }
1318
+ return null;
1319
+ }
1320
+ };
1321
+ var ht = class {
1322
+ constructor(e, t) {
1323
+ this.content = e, this.url = t;
1324
+ }
1325
+ };
1326
+ var h = class {
1327
+ constructor(e, t, r = e, n = null) {
1328
+ this.start = e, this.end = t, this.fullStart = r, this.details = n;
1329
+ }
1330
+ toString() {
1331
+ return this.start.file.content.substring(this.start.offset, this.end.offset);
1332
+ }
1333
+ };
1334
+ var Fi = (function(e) {
1335
+ return e[e.WARNING = 0] = "WARNING", e[e.ERROR = 1] = "ERROR", e;
1336
+ })({});
1337
+ var re = class extends Error {
1338
+ constructor(e, t, r = Fi.ERROR, n) {
1339
+ super(t), this.span = e, this.msg = t, this.level = r, this.relatedError = n, Object.setPrototypeOf(this, new.target.prototype);
1340
+ }
1341
+ contextualMessage() {
1342
+ let e = this.span.start.getContext(100, 3);
1343
+ return e ? `${this.msg} ("${e.before}[${Fi[this.level]} ->]${e.after}")` : this.msg;
1344
+ }
1345
+ toString() {
1346
+ let e = this.span.details ? `, ${this.span.details}` : "";
1347
+ return `${this.contextualMessage()}: ${this.span.start}${e}`;
1348
+ }
1349
+ };
1350
+ var Ce = class {
1351
+ constructor(e, t) {
1352
+ this.sourceSpan = e, this.i18n = t;
1353
+ }
1354
+ };
1355
+ var Hi = class extends Ce {
1356
+ constructor(e, t, r, n) {
1357
+ super(t, n), this.value = e, this.tokens = r, this.kind = "text";
1358
+ }
1359
+ visit(e, t) {
1360
+ return e.visitText(this, t);
1361
+ }
1362
+ };
1363
+ var Vi = class extends Ce {
1364
+ constructor(e, t, r, n) {
1365
+ super(t, n), this.value = e, this.tokens = r, this.kind = "cdata";
1366
+ }
1367
+ visit(e, t) {
1368
+ return e.visitCdata(this, t);
1369
+ }
1370
+ };
1371
+ var Ui = class extends Ce {
1372
+ constructor(e, t, r, n, i, s) {
1373
+ super(n, s), this.switchValue = e, this.type = t, this.cases = r, this.switchValueSourceSpan = i, this.kind = "expansion";
1374
+ }
1375
+ visit(e, t) {
1376
+ return e.visitExpansion(this, t);
1377
+ }
1378
+ };
1379
+ var Wi = class {
1380
+ constructor(e, t, r, n, i) {
1381
+ this.value = e, this.expression = t, this.sourceSpan = r, this.valueSourceSpan = n, this.expSourceSpan = i, this.kind = "expansionCase";
1382
+ }
1383
+ visit(e, t) {
1384
+ return e.visitExpansionCase(this, t);
1385
+ }
1386
+ };
1387
+ var Gi = class extends Ce {
1388
+ constructor(e, t, r, n, i, s, a) {
1389
+ super(r, a), this.name = e, this.value = t, this.keySpan = n, this.valueSpan = i, this.valueTokens = s, this.kind = "attribute";
1390
+ }
1391
+ visit(e, t) {
1392
+ return e.visitAttribute(this, t);
1393
+ }
1394
+ get nameSpan() {
1395
+ return this.keySpan;
1396
+ }
1397
+ };
1398
+ var ne = class extends Ce {
1399
+ constructor(e, t, r, n, i, s, a, o = null, c = null, u, p) {
1400
+ 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";
1401
+ }
1402
+ visit(e, t) {
1403
+ return e.visitElement(this, t);
1404
+ }
1405
+ };
1406
+ var $i = class {
1407
+ constructor(e, t) {
1408
+ this.value = e, this.sourceSpan = t, this.kind = "comment";
1409
+ }
1410
+ visit(e, t) {
1411
+ return e.visitComment(this, t);
1412
+ }
1413
+ };
1414
+ var zi = class {
1415
+ constructor(e, t) {
1416
+ this.value = e, this.sourceSpan = t, this.kind = "docType";
1417
+ }
1418
+ visit(e, t) {
1419
+ return e.visitDocType(this, t);
1420
+ }
1421
+ };
1422
+ var ve = class extends Ce {
1423
+ constructor(e, t, r, n, i, s, a = null, o) {
1424
+ super(n, o), this.name = e, this.parameters = t, this.children = r, this.nameSpan = i, this.startSourceSpan = s, this.endSourceSpan = a, this.kind = "block";
1425
+ }
1426
+ visit(e, t) {
1427
+ return e.visitBlock(this, t);
1428
+ }
1429
+ };
1430
+ var J = class extends Ce {
1431
+ constructor(e, t, r, n, i, s, a, o, c, u = null, p) {
1432
+ 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";
1433
+ }
1434
+ visit(e, t) {
1435
+ return e.visitComponent(this, t);
1436
+ }
1437
+ };
1438
+ var Yi = class {
1439
+ constructor(e, t, r, n, i = null) {
1440
+ this.name = e, this.attrs = t, this.sourceSpan = r, this.startSourceSpan = n, this.endSourceSpan = i, this.kind = "directive";
1441
+ }
1442
+ visit(e, t) {
1443
+ return e.visitDirective(this, t);
1444
+ }
1445
+ };
1446
+ var Nr = class {
1447
+ constructor(e, t) {
1448
+ this.expression = e, this.sourceSpan = t, this.kind = "blockParameter", this.startSourceSpan = null, this.endSourceSpan = null;
1449
+ }
1450
+ visit(e, t) {
1451
+ return e.visitBlockParameter(this, t);
1452
+ }
1453
+ };
1454
+ var Lr = class {
1455
+ constructor(e, t, r, n, i) {
1456
+ this.name = e, this.value = t, this.sourceSpan = r, this.nameSpan = n, this.valueSpan = i, this.kind = "letDeclaration", this.startSourceSpan = null, this.endSourceSpan = null;
1457
+ }
1458
+ visit(e, t) {
1459
+ return e.visitLetDeclaration(this, t);
1460
+ }
1461
+ };
1462
+ function Wt(e, t, r = null) {
1463
+ let n = [], i = e.visit ? (s) => e.visit(s, r) || s.visit(e, r) : (s) => s.visit(e, r);
1464
+ return t.forEach((s) => {
1465
+ let a = i(s);
1466
+ a && n.push(a);
1467
+ }), n;
1468
+ }
1469
+ var Pr = class {
1470
+ constructor() {
1471
+ }
1472
+ visitElement(e, t) {
1473
+ this.visitChildren(t, (r) => {
1474
+ r(e.attrs), r(e.directives), r(e.children);
1475
+ });
1476
+ }
1477
+ visitAttribute(e, t) {
1478
+ }
1479
+ visitText(e, t) {
1480
+ }
1481
+ visitCdata(e, t) {
1482
+ }
1483
+ visitComment(e, t) {
1484
+ }
1485
+ visitDocType(e, t) {
1486
+ }
1487
+ visitExpansion(e, t) {
1488
+ return this.visitChildren(t, (r) => {
1489
+ r(e.cases);
1490
+ });
1491
+ }
1492
+ visitExpansionCase(e, t) {
1493
+ }
1494
+ visitBlock(e, t) {
1495
+ this.visitChildren(t, (r) => {
1496
+ r(e.parameters), r(e.children);
1497
+ });
1498
+ }
1499
+ visitBlockParameter(e, t) {
1500
+ }
1501
+ visitLetDeclaration(e, t) {
1502
+ }
1503
+ visitComponent(e, t) {
1504
+ this.visitChildren(t, (r) => {
1505
+ r(e.attrs), r(e.children);
1506
+ });
1507
+ }
1508
+ visitDirective(e, t) {
1509
+ this.visitChildren(t, (r) => {
1510
+ r(e.attrs);
1511
+ });
1512
+ }
1513
+ visitChildren(e, t) {
1514
+ let r = [], n = this;
1515
+ function i(s) {
1516
+ s && r.push(Wt(n, s, e));
1517
+ }
1518
+ return t(i), Array.prototype.concat.apply([], r);
1519
+ }
1520
+ };
1521
+ var 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: `
1522
+ `, 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" };
1523
+ var oo = "\uE500";
1524
+ Te.ngsp = oo;
1525
+ var l = (function(e) {
1526
+ 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;
1527
+ })({});
1528
+ var xo = class {
1529
+ constructor(e, t, r) {
1530
+ this.tokens = e, this.errors = t, this.nonNormalizedIcuExpressions = r;
1531
+ }
1532
+ };
1533
+ function ns(e, t, r, n = {}) {
1534
+ let i = new Oo(new ht(e, t), r, n);
1535
+ return i.tokenize(), new xo(qo(i.tokens), i.errors, i.nonNormalizedIcuExpressions);
1536
+ }
1537
+ var No = /\r\n?/g;
1538
+ function be(e) {
1539
+ return `Unexpected character "${e === 0 ? "EOF" : String.fromCharCode(e)}"`;
1540
+ }
1541
+ function Qi(e) {
1542
+ return `Unknown entity "${e}" - use the "&#<decimal>;" or "&#x<hex>;" syntax`;
1543
+ }
1544
+ function Lo(e, t) {
1545
+ return `Unable to parse entity "${t}" - ${e} character reference entities must end with ";"`;
1546
+ }
1547
+ var Mr = (function(e) {
1548
+ return e.HEX = "hexadecimal", e.DEC = "decimal", e;
1549
+ })(Mr || {});
1550
+ var Po = ["@if", "@else", "@for", "@switch", "@case", "@default", "@empty", "@defer", "@placeholder", "@loading", "@error"];
1551
+ var mt = { start: "{{", end: "}}" };
1552
+ var Oo = class {
1553
+ constructor(e, t, r) {
1554
+ this._getTagContentType = t, this._currentTokenStart = null, this._currentTokenType = null, this._expansionCaseStack = [], this._openDirectiveCount = 0, this._inInterpolation = false, this._fullNameStack = [], this.tokens = [], this.errors = [], this.nonNormalizedIcuExpressions = [], this._tokenizeIcu = r.tokenizeExpansionForms || false, this._leadingTriviaCodePoints = r.leadingTriviaChars && r.leadingTriviaChars.map((i) => i.codePointAt(0) || 0), this._canSelfClose = r.canSelfClose || false, this._allowHtmComponentClosingTags = r.allowHtmComponentClosingTags || false;
1555
+ let n = r.range || { endPos: e.content.length, startPos: 0, startLine: 0, startCol: 0 };
1556
+ this._cursor = r.escapedString ? new Ho(e, n) : new is(e, n), this._preserveLineEndings = r.preserveLineEndings || false, this._i18nNormalizeLineEndingsInICUs = r.i18nNormalizeLineEndingsInICUs || false, this._tokenizeBlocks = r.tokenizeBlocks ?? true, this._tokenizeLet = r.tokenizeLet ?? true, this._selectorlessEnabled = r.selectorlessEnabled ?? false;
1557
+ try {
1558
+ this._cursor.init();
1559
+ } catch (i) {
1560
+ this.handleError(i);
1561
+ }
1562
+ }
1563
+ _processCarriageReturns(e) {
1564
+ return this._preserveLineEndings ? e : e.replace(No, `
1565
+ `);
1566
+ }
1567
+ tokenize() {
1568
+ for (; this._cursor.peek() !== 0; ) {
1569
+ let e = this._cursor.clone();
1570
+ try {
1571
+ 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);
1572
+ else if (this._attemptCharCode(47)) this._consumeTagClose(e);
1573
+ else {
1574
+ let t = this._cursor.clone();
1575
+ this._attemptCharCode(63) ? (this._cursor = t, this._consumeBogusComment(e)) : this._consumeTagOpen(e);
1576
+ }
1577
+ 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());
1578
+ } catch (t) {
1579
+ this.handleError(t);
1580
+ }
1581
+ }
1582
+ this._beginToken(l.EOF), this._endToken([]);
1583
+ }
1584
+ _getBlockName() {
1585
+ let e = false, t = this._cursor.clone();
1586
+ return this._attemptCharCodeUntilFn((r) => lt(r) ? !e : Fo(r) ? (e = true, false) : true), this._cursor.getChars(t).trim();
1587
+ }
1588
+ _consumeBlockStart(e) {
1589
+ this._requireCharCode(64), this._beginToken(l.BLOCK_OPEN_START, e);
1590
+ let t = this._endToken([this._getBlockName()]);
1591
+ if (this._cursor.peek() === 40) if (this._cursor.advance(), this._consumeBlockParameters(), this._attemptCharCodeUntilFn(T), this._attemptCharCode(41)) this._attemptCharCodeUntilFn(T);
1592
+ else {
1593
+ t.type = l.INCOMPLETE_BLOCK_OPEN;
1594
+ return;
1595
+ }
1596
+ this._attemptCharCode(123) ? (this._beginToken(l.BLOCK_OPEN_END), this._endToken([])) : t.type = l.INCOMPLETE_BLOCK_OPEN;
1597
+ }
1598
+ _consumeBlockEnd(e) {
1599
+ this._beginToken(l.BLOCK_CLOSE, e), this._endToken([]);
1600
+ }
1601
+ _consumeBlockParameters() {
1602
+ for (this._attemptCharCodeUntilFn(Zi); this._cursor.peek() !== 41 && this._cursor.peek() !== 0; ) {
1603
+ this._beginToken(l.BLOCK_PARAMETER);
1604
+ let e = this._cursor.clone(), t = null, r = 0;
1605
+ for (; this._cursor.peek() !== 59 && this._cursor.peek() !== 0 || t !== null; ) {
1606
+ let n = this._cursor.peek();
1607
+ if (n === 92) this._cursor.advance();
1608
+ else if (n === t) t = null;
1609
+ else if (t === null && Ut(n)) t = n;
1610
+ else if (n === 40 && t === null) r++;
1611
+ else if (n === 41 && t === null) {
1612
+ if (r === 0) break;
1613
+ r > 0 && r--;
1614
+ }
1615
+ this._cursor.advance();
1616
+ }
1617
+ this._endToken([this._cursor.getChars(e)]), this._attemptCharCodeUntilFn(Zi);
1618
+ }
1619
+ }
1620
+ _consumeLetDeclaration(e) {
1621
+ if (this._requireStr("@let"), this._beginToken(l.LET_START, e), lt(this._cursor.peek())) this._attemptCharCodeUntilFn(T);
1622
+ else {
1623
+ let r = this._endToken([this._cursor.getChars(e)]);
1624
+ r.type = l.INCOMPLETE_LET;
1625
+ return;
1626
+ }
1627
+ let t = this._endToken([this._getLetDeclarationName()]);
1628
+ if (this._attemptCharCodeUntilFn(T), !this._attemptCharCode(61)) {
1629
+ t.type = l.INCOMPLETE_LET;
1630
+ return;
1631
+ }
1632
+ 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));
1633
+ }
1634
+ _getLetDeclarationName() {
1635
+ let e = this._cursor.clone(), t = false;
1636
+ return this._attemptCharCodeUntilFn((r) => Fe(r) || r === 36 || r === 95 || t && ct(r) ? (t = true, false) : true), this._cursor.getChars(e).trim();
1637
+ }
1638
+ _consumeLetDeclarationValue() {
1639
+ let e = this._cursor.clone();
1640
+ for (this._beginToken(l.LET_VALUE, e); this._cursor.peek() !== 0; ) {
1641
+ let t = this._cursor.peek();
1642
+ if (t === 59) break;
1643
+ Ut(t) && (this._cursor.advance(), this._attemptCharCodeUntilFn((r) => r === 92 ? (this._cursor.advance(), false) : r === t)), this._cursor.advance();
1644
+ }
1645
+ this._endToken([this._cursor.getChars(e)]);
1646
+ }
1647
+ _tokenizeExpansionForm() {
1648
+ if (this.isExpansionFormStart()) return this._consumeExpansionFormStart(), true;
1649
+ if (Mo(this._cursor.peek()) && this._isInExpansionForm()) return this._consumeExpansionCaseStart(), true;
1650
+ if (this._cursor.peek() === 125) {
1651
+ if (this._isInExpansionCase()) return this._consumeExpansionCaseEnd(), true;
1652
+ if (this._isInExpansionForm()) return this._consumeExpansionFormEnd(), true;
1653
+ }
1654
+ return false;
1655
+ }
1656
+ _beginToken(e, t = this._cursor.clone()) {
1657
+ this._currentTokenStart = t, this._currentTokenType = e;
1658
+ }
1659
+ _endToken(e, t) {
1660
+ 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");
1661
+ if (this._currentTokenType === null) throw new re(this._cursor.getSpan(this._currentTokenStart), "Programming error - attempted to end a token which has no token type");
1662
+ let r = { type: this._currentTokenType, parts: e, sourceSpan: (t ?? this._cursor).getSpan(this._currentTokenStart, this._leadingTriviaCodePoints) };
1663
+ return this.tokens.push(r), this._currentTokenStart = null, this._currentTokenType = null, r;
1664
+ }
1665
+ _createError(e, t) {
1666
+ this._isInExpansionForm() && (e += ` (Do you have an unescaped "{" in your template? Use "{{ '{' }}") to escape it.)`);
1667
+ let r = new re(t, e);
1668
+ return this._currentTokenStart = null, this._currentTokenType = null, r;
1669
+ }
1670
+ handleError(e) {
1671
+ if (e instanceof Vr && (e = this._createError(e.msg, this._cursor.getSpan(e.cursor))), e instanceof re) this.errors.push(e);
1672
+ else throw e;
1673
+ }
1674
+ _attemptCharCode(e) {
1675
+ return this._cursor.peek() === e ? (this._cursor.advance(), true) : false;
1676
+ }
1677
+ _attemptCharCodeCaseInsensitive(e) {
1678
+ return Bo(this._cursor.peek(), e) ? (this._cursor.advance(), true) : false;
1679
+ }
1680
+ _requireCharCode(e) {
1681
+ let t = this._cursor.clone();
1682
+ if (!this._attemptCharCode(e)) throw this._createError(be(this._cursor.peek()), this._cursor.getSpan(t));
1683
+ }
1684
+ _attemptStr(e) {
1685
+ let t = e.length;
1686
+ if (this._cursor.charsLeft() < t) return false;
1687
+ let r = this._cursor.clone();
1688
+ for (let n = 0; n < t; n++) if (!this._attemptCharCode(e.charCodeAt(n))) return this._cursor = r, false;
1689
+ return true;
1690
+ }
1691
+ _attemptStrCaseInsensitive(e) {
1692
+ for (let t = 0; t < e.length; t++) if (!this._attemptCharCodeCaseInsensitive(e.charCodeAt(t))) return false;
1693
+ return true;
1694
+ }
1695
+ _requireStr(e) {
1696
+ let t = this._cursor.clone();
1697
+ if (!this._attemptStr(e)) throw this._createError(be(this._cursor.peek()), this._cursor.getSpan(t));
1698
+ }
1699
+ _requireStrCaseInsensitive(e) {
1700
+ let t = this._cursor.clone();
1701
+ if (!this._attemptStrCaseInsensitive(e)) throw this._createError(be(this._cursor.peek()), this._cursor.getSpan(t));
1702
+ }
1703
+ _attemptCharCodeUntilFn(e) {
1704
+ for (; !e(this._cursor.peek()); ) this._cursor.advance();
1705
+ }
1706
+ _requireCharCodeUntilFn(e, t) {
1707
+ let r = this._cursor.clone();
1708
+ if (this._attemptCharCodeUntilFn(e), this._cursor.diff(r) < t) throw this._createError(be(this._cursor.peek()), this._cursor.getSpan(r));
1709
+ }
1710
+ _attemptUntilChar(e) {
1711
+ for (; this._cursor.peek() !== e; ) this._cursor.advance();
1712
+ }
1713
+ _readChar() {
1714
+ let e = String.fromCodePoint(this._cursor.peek());
1715
+ return this._cursor.advance(), e;
1716
+ }
1717
+ _peekStr(e) {
1718
+ let t = e.length;
1719
+ if (this._cursor.charsLeft() < t) return false;
1720
+ let r = this._cursor.clone();
1721
+ for (let n = 0; n < t; n++) {
1722
+ if (r.peek() !== e.charCodeAt(n)) return false;
1723
+ r.advance();
1724
+ }
1725
+ return true;
1726
+ }
1727
+ _isBlockStart() {
1728
+ return this._cursor.peek() === 64 && Po.some((e) => this._peekStr(e));
1729
+ }
1730
+ _isLetStart() {
1731
+ return this._cursor.peek() === 64 && this._peekStr("@let");
1732
+ }
1733
+ _consumeEntity(e) {
1734
+ this._beginToken(l.ENCODED_ENTITY);
1735
+ let t = this._cursor.clone();
1736
+ if (this._cursor.advance(), this._attemptCharCode(35)) {
1737
+ let r = this._attemptCharCode(120) || this._attemptCharCode(88), n = this._cursor.clone();
1738
+ if (this._attemptCharCodeUntilFn(Ro), this._cursor.peek() != 59) {
1739
+ this._cursor.advance();
1740
+ let s = r ? Mr.HEX : Mr.DEC;
1741
+ throw this._createError(Lo(s, this._cursor.getChars(t)), this._cursor.getSpan());
1742
+ }
1743
+ let i = this._cursor.getChars(n);
1744
+ this._cursor.advance();
1745
+ try {
1746
+ let s = parseInt(i, r ? 16 : 10);
1747
+ this._endToken([String.fromCodePoint(s), this._cursor.getChars(t)]);
1748
+ } catch {
1749
+ throw this._createError(Qi(this._cursor.getChars(t)), this._cursor.getSpan());
1750
+ }
1751
+ } else {
1752
+ let r = this._cursor.clone();
1753
+ if (this._attemptCharCodeUntilFn(Io), this._cursor.peek() != 59) this._beginToken(e, t), this._cursor = r, this._endToken(["&"]);
1754
+ else {
1755
+ let n = this._cursor.getChars(r);
1756
+ this._cursor.advance();
1757
+ let i = Te.hasOwnProperty(n) && Te[n];
1758
+ if (!i) throw this._createError(Qi(n), this._cursor.getSpan(t));
1759
+ this._endToken([i, `&${n};`]);
1760
+ }
1761
+ }
1762
+ }
1763
+ _consumeRawText(e, t) {
1764
+ this._beginToken(e ? l.ESCAPABLE_RAW_TEXT : l.RAW_TEXT);
1765
+ let r = [];
1766
+ for (; ; ) {
1767
+ let n = this._cursor.clone(), i = t();
1768
+ if (this._cursor = n, i) break;
1769
+ 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());
1770
+ }
1771
+ this._endToken([this._processCarriageReturns(r.join(""))]);
1772
+ }
1773
+ _consumeComment(e) {
1774
+ this._beginToken(l.COMMENT_START, e), this._endToken([]), this._consumeRawText(false, () => this._attemptStr("-->")), this._beginToken(l.COMMENT_END), this._requireStr("-->"), this._endToken([]);
1775
+ }
1776
+ _consumeBogusComment(e) {
1777
+ this._beginToken(l.COMMENT_START, e), this._endToken([]), this._consumeRawText(false, () => this._cursor.peek() === 62), this._beginToken(l.COMMENT_END), this._cursor.advance(), this._endToken([]);
1778
+ }
1779
+ _consumeCdata(e) {
1780
+ this._beginToken(l.CDATA_START, e), this._endToken([]), this._consumeRawText(false, () => this._attemptStr("]]>")), this._beginToken(l.CDATA_END), this._requireStr("]]>"), this._endToken([]);
1781
+ }
1782
+ _consumeDocType(e) {
1783
+ this._beginToken(l.DOC_TYPE_START, e), this._endToken([]), this._consumeRawText(false, () => this._cursor.peek() === 62), this._beginToken(l.DOC_TYPE_END), this._cursor.advance(), this._endToken([]);
1784
+ }
1785
+ _consumePrefixAndName(e) {
1786
+ let t = this._cursor.clone(), r = "";
1787
+ for (; this._cursor.peek() !== 58 && !Do(this._cursor.peek()); ) this._cursor.advance();
1788
+ let n;
1789
+ this._cursor.peek() === 58 ? (r = this._cursor.getChars(t), this._cursor.advance(), n = this._cursor.clone()) : n = t, this._requireCharCodeUntilFn(e, r === "" ? 0 : 1);
1790
+ let i = this._cursor.getChars(n);
1791
+ return [r, i];
1792
+ }
1793
+ _consumeTagOpen(e) {
1794
+ let t, r, n, i, s = [];
1795
+ try {
1796
+ 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);
1797
+ else {
1798
+ if (!Fe(this._cursor.peek())) throw this._createError(be(this._cursor.peek()), this._cursor.getSpan(e));
1799
+ i = this._consumeTagOpenStart(e), r = i.parts[0], t = n = i.parts[1], this._attemptCharCodeUntilFn(T);
1800
+ }
1801
+ for (; !ts(this._cursor.peek()); ) if (this._selectorlessEnabled && this._cursor.peek() === 64) {
1802
+ let o = this._cursor.clone(), c = o.clone();
1803
+ c.advance(), zt(c.peek()) && this._consumeDirective(o, c);
1804
+ } else {
1805
+ let o = this._consumeAttribute();
1806
+ s.push(o);
1807
+ }
1808
+ i.type === l.COMPONENT_OPEN_START ? this._consumeComponentOpenEnd() : this._consumeTagOpenEnd();
1809
+ } catch (o) {
1810
+ if (o instanceof re) {
1811
+ i ? i.type = i.type === l.COMPONENT_OPEN_START ? l.INCOMPLETE_COMPONENT_OPEN : l.INCOMPLETE_TAG_OPEN : (this._beginToken(l.TEXT, e), this._endToken(["<"]));
1812
+ return;
1813
+ }
1814
+ throw o;
1815
+ }
1816
+ if (this._canSelfClose && this.tokens[this.tokens.length - 1].type === l.TAG_OPEN_END_VOID) return;
1817
+ let a = this._getTagContentType(t, r, this._fullNameStack.length > 0, s);
1818
+ this._handleFullNameStackForTagOpen(r, t), a === I.RAW_TEXT ? this._consumeRawTextWithTagClose(r, i, n, false) : a === I.ESCAPABLE_RAW_TEXT && this._consumeRawTextWithTagClose(r, i, n, true);
1819
+ }
1820
+ _consumeRawTextWithTagClose(e, t, r, n) {
1821
+ this._consumeRawText(n, () => !this._attemptCharCode(60) || !this._attemptCharCode(47) || (this._attemptCharCodeUntilFn(T), !this._attemptStrCaseInsensitive(e && t.type !== l.COMPONENT_OPEN_START ? `${e}:${r}` : r)) ? false : (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);
1822
+ }
1823
+ _consumeTagOpenStart(e) {
1824
+ this._beginToken(l.TAG_OPEN_START, e);
1825
+ let t = this._consumePrefixAndName(we);
1826
+ return this._endToken(t);
1827
+ }
1828
+ _consumeComponentOpenStart(e) {
1829
+ this._beginToken(l.COMPONENT_OPEN_START, e);
1830
+ let t = this._consumeComponentName();
1831
+ return this._endToken(t);
1832
+ }
1833
+ _consumeComponentName() {
1834
+ let e = this._cursor.clone();
1835
+ for (; es(this._cursor.peek()); ) this._cursor.advance();
1836
+ let t = this._cursor.getChars(e), r = "", n = "";
1837
+ return this._cursor.peek() === 58 && (this._cursor.advance(), [r, n] = this._consumePrefixAndName(we)), [t, r, n];
1838
+ }
1839
+ _consumeAttribute() {
1840
+ let [e, t] = this._consumeAttributeName(), r;
1841
+ return this._attemptCharCodeUntilFn(T), this._attemptCharCode(61) && (this._attemptCharCodeUntilFn(T), r = this._consumeAttributeValue()), this._attemptCharCodeUntilFn(T), { prefix: e, name: t, value: r };
1842
+ }
1843
+ _consumeAttributeName() {
1844
+ let e = this._cursor.peek();
1845
+ if (e === 39 || e === 34) throw this._createError(be(e), this._cursor.getSpan());
1846
+ this._beginToken(l.ATTR_NAME);
1847
+ let t;
1848
+ if (this._openDirectiveCount > 0) {
1849
+ let n = 0;
1850
+ t = (i) => {
1851
+ if (this._openDirectiveCount > 0) {
1852
+ if (i === 40) n++;
1853
+ else if (i === 41) {
1854
+ if (n === 0) return true;
1855
+ n--;
1856
+ }
1857
+ }
1858
+ return we(i);
1859
+ };
1860
+ } else if (e === 91) {
1861
+ let n = 0;
1862
+ t = (i) => (i === 91 ? n++ : i === 93 && n--, n <= 0 ? we(i) : ut(i));
1863
+ } else t = we;
1864
+ let r = this._consumePrefixAndName(t);
1865
+ return this._endToken(r), r;
1866
+ }
1867
+ _consumeAttributeValue() {
1868
+ let e;
1869
+ if (this._cursor.peek() === 39 || this._cursor.peek() === 34) {
1870
+ let t = this._cursor.peek();
1871
+ this._consumeQuote(t);
1872
+ let r = () => this._cursor.peek() === t;
1873
+ e = this._consumeWithInterpolation(l.ATTR_VALUE_TEXT, l.ATTR_VALUE_INTERPOLATION, r, r), this._consumeQuote(t);
1874
+ } else {
1875
+ let t = () => we(this._cursor.peek());
1876
+ e = this._consumeWithInterpolation(l.ATTR_VALUE_TEXT, l.ATTR_VALUE_INTERPOLATION, t, t);
1877
+ }
1878
+ return e;
1879
+ }
1880
+ _consumeQuote(e) {
1881
+ this._beginToken(l.ATTR_QUOTE), this._requireCharCode(e), this._endToken([String.fromCodePoint(e)]);
1882
+ }
1883
+ _consumeTagOpenEnd() {
1884
+ let e = this._attemptCharCode(47) ? l.TAG_OPEN_END_VOID : l.TAG_OPEN_END;
1885
+ this._beginToken(e), this._requireCharCode(62), this._endToken([]);
1886
+ }
1887
+ _consumeComponentOpenEnd() {
1888
+ let e = this._attemptCharCode(47) ? l.COMPONENT_OPEN_END_VOID : l.COMPONENT_OPEN_END;
1889
+ this._beginToken(e), this._requireCharCode(62), this._endToken([]);
1890
+ }
1891
+ _consumeTagClose(e) {
1892
+ if (this._selectorlessEnabled) {
1893
+ let t = e.clone();
1894
+ for (; t.peek() !== 62 && !zt(t.peek()); ) t.advance();
1895
+ if (zt(t.peek())) {
1896
+ this._beginToken(l.COMPONENT_CLOSE, e);
1897
+ let r = this._consumeComponentName();
1898
+ this._attemptCharCodeUntilFn(T), this._requireCharCode(62), this._endToken(r);
1899
+ return;
1900
+ }
1901
+ }
1902
+ if (this._beginToken(l.TAG_CLOSE, e), this._attemptCharCodeUntilFn(T), this._allowHtmComponentClosingTags && this._attemptCharCode(47)) this._attemptCharCodeUntilFn(T), this._requireCharCode(62), this._endToken([]);
1903
+ else {
1904
+ let [t, r] = this._consumePrefixAndName(we);
1905
+ this._attemptCharCodeUntilFn(T), this._requireCharCode(62), this._endToken([t, r]), this._handleFullNameStackForTagClose(t, r);
1906
+ }
1907
+ }
1908
+ _consumeExpansionFormStart() {
1909
+ this._beginToken(l.EXPANSION_FORM_START), this._requireCharCode(123), this._endToken([]), this._expansionCaseStack.push(l.EXPANSION_FORM_START), this._beginToken(l.RAW_TEXT);
1910
+ let e = this._readUntil(44), t = this._processCarriageReturns(e);
1911
+ if (this._i18nNormalizeLineEndingsInICUs) this._endToken([t]);
1912
+ else {
1913
+ let n = this._endToken([e]);
1914
+ t !== e && this.nonNormalizedIcuExpressions.push(n);
1915
+ }
1916
+ this._requireCharCode(44), this._attemptCharCodeUntilFn(T), this._beginToken(l.RAW_TEXT);
1917
+ let r = this._readUntil(44);
1918
+ this._endToken([r]), this._requireCharCode(44), this._attemptCharCodeUntilFn(T);
1919
+ }
1920
+ _consumeExpansionCaseStart() {
1921
+ this._beginToken(l.EXPANSION_CASE_VALUE);
1922
+ let e = this._readUntil(123).trim();
1923
+ 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);
1924
+ }
1925
+ _consumeExpansionCaseEnd() {
1926
+ this._beginToken(l.EXPANSION_CASE_EXP_END), this._requireCharCode(125), this._endToken([]), this._attemptCharCodeUntilFn(T), this._expansionCaseStack.pop();
1927
+ }
1928
+ _consumeExpansionFormEnd() {
1929
+ this._beginToken(l.EXPANSION_FORM_END), this._requireCharCode(125), this._endToken([]), this._expansionCaseStack.pop();
1930
+ }
1931
+ _consumeWithInterpolation(e, t, r, n) {
1932
+ this._beginToken(e);
1933
+ let i = [];
1934
+ for (; !r(); ) {
1935
+ let a = this._cursor.clone();
1936
+ 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());
1937
+ }
1938
+ this._inInterpolation = false;
1939
+ let s = this._processCarriageReturns(i.join(""));
1940
+ return this._endToken([s]), s;
1941
+ }
1942
+ _consumeInterpolation(e, t, r) {
1943
+ let n = [];
1944
+ this._beginToken(e, t), n.push(mt.start);
1945
+ let i = this._cursor.clone(), s = null, a = false;
1946
+ for (; this._cursor.peek() !== 0 && (r === null || !r()); ) {
1947
+ let o = this._cursor.clone();
1948
+ if (this._isTagStart()) {
1949
+ this._cursor = o, n.push(this._getProcessedChars(i, o)), this._endToken(n);
1950
+ return;
1951
+ }
1952
+ if (s === null) if (this._attemptStr(mt.end)) {
1953
+ n.push(this._getProcessedChars(i, o)), n.push(mt.end), this._endToken(n);
1954
+ return;
1955
+ } else this._attemptStr("//") && (a = true);
1956
+ let c = this._cursor.peek();
1957
+ this._cursor.advance(), c === 92 ? this._cursor.advance() : c === s ? s = null : !a && s === null && Ut(c) && (s = c);
1958
+ }
1959
+ n.push(this._getProcessedChars(i, this._cursor)), this._endToken(n);
1960
+ }
1961
+ _consumeDirective(e, t) {
1962
+ for (this._requireCharCode(64), this._cursor.advance(); es(this._cursor.peek()); ) this._cursor.advance();
1963
+ this._beginToken(l.DIRECTIVE_NAME, e);
1964
+ let r = this._cursor.getChars(t);
1965
+ if (this._endToken([r]), this._attemptCharCodeUntilFn(T), this._cursor.peek() === 40) {
1966
+ 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();
1967
+ if (this._attemptCharCodeUntilFn(T), this._openDirectiveCount--, this._cursor.peek() !== 41) {
1968
+ if (this._cursor.peek() === 62 || this._cursor.peek() === 47) return;
1969
+ throw this._createError(be(this._cursor.peek()), this._cursor.getSpan(e));
1970
+ }
1971
+ this._beginToken(l.DIRECTIVE_CLOSE), this._cursor.advance(), this._endToken([]), this._attemptCharCodeUntilFn(T);
1972
+ }
1973
+ }
1974
+ _getProcessedChars(e, t) {
1975
+ return this._processCarriageReturns(t.getChars(e));
1976
+ }
1977
+ _isTextEnd() {
1978
+ 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));
1979
+ }
1980
+ _isTagStart() {
1981
+ if (this._cursor.peek() === 60) {
1982
+ let e = this._cursor.clone();
1983
+ e.advance();
1984
+ let t = e.peek();
1985
+ if (97 <= t && t <= 122 || 65 <= t && t <= 90 || t === 47 || t === 33) return true;
1986
+ }
1987
+ return false;
1988
+ }
1989
+ _readUntil(e) {
1990
+ let t = this._cursor.clone();
1991
+ return this._attemptUntilChar(e), this._cursor.getChars(t);
1992
+ }
1993
+ _isInExpansion() {
1994
+ return this._isInExpansionCase() || this._isInExpansionForm();
1995
+ }
1996
+ _isInExpansionCase() {
1997
+ return this._expansionCaseStack.length > 0 && this._expansionCaseStack[this._expansionCaseStack.length - 1] === l.EXPANSION_CASE_EXP_START;
1998
+ }
1999
+ _isInExpansionForm() {
2000
+ return this._expansionCaseStack.length > 0 && this._expansionCaseStack[this._expansionCaseStack.length - 1] === l.EXPANSION_FORM_START;
2001
+ }
2002
+ isExpansionFormStart() {
2003
+ if (this._cursor.peek() !== 123) return false;
2004
+ let e = this._cursor.clone(), t = this._attemptStr(mt.start);
2005
+ return this._cursor = e, !t;
2006
+ }
2007
+ _handleFullNameStackForTagOpen(e, t) {
2008
+ let r = Se(e, t);
2009
+ (this._fullNameStack.length === 0 || this._fullNameStack[this._fullNameStack.length - 1] === r) && this._fullNameStack.push(r);
2010
+ }
2011
+ _handleFullNameStackForTagClose(e, t) {
2012
+ let r = Se(e, t);
2013
+ this._fullNameStack.length !== 0 && this._fullNameStack[this._fullNameStack.length - 1] === r && this._fullNameStack.pop();
2014
+ }
2015
+ };
2016
+ function T(e) {
2017
+ return !lt(e) || e === 0;
2018
+ }
2019
+ function we(e) {
2020
+ return lt(e) || e === 62 || e === 60 || e === 47 || e === 39 || e === 34 || e === 61 || e === 0;
2021
+ }
2022
+ function Do(e) {
2023
+ return (e < 97 || 122 < e) && (e < 65 || 90 < e) && (e < 48 || e > 57);
2024
+ }
2025
+ function Ro(e) {
2026
+ return e === 59 || e === 0 || !Bi(e);
2027
+ }
2028
+ function Io(e) {
2029
+ return e === 59 || e === 0 || !Fe(e);
2030
+ }
2031
+ function Mo(e) {
2032
+ return e !== 125;
2033
+ }
2034
+ function Bo(e, t) {
2035
+ return Ji(e) === Ji(t);
2036
+ }
2037
+ function Ji(e) {
2038
+ return e >= 97 && e <= 122 ? e - 97 + 65 : e;
2039
+ }
2040
+ function Fo(e) {
2041
+ return Fe(e) || ct(e) || e === 95;
2042
+ }
2043
+ function Zi(e) {
2044
+ return e !== 59 && T(e);
2045
+ }
2046
+ function zt(e) {
2047
+ return e === 95 || e >= 65 && e <= 90;
2048
+ }
2049
+ function es(e) {
2050
+ return Fe(e) || ct(e) || e === 95;
2051
+ }
2052
+ function ts(e) {
2053
+ return e === 47 || e === 62 || e === 60 || e === 0;
2054
+ }
2055
+ function qo(e) {
2056
+ let t = [], r;
2057
+ for (let n = 0; n < e.length; n++) {
2058
+ let i = e[n];
2059
+ 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));
2060
+ }
2061
+ return t;
2062
+ }
2063
+ var is = class Br {
2064
+ constructor(t, r) {
2065
+ if (t instanceof Br) {
2066
+ this.file = t.file, this.input = t.input, this.end = t.end;
2067
+ let n = t.state;
2068
+ this.state = { peek: n.peek, offset: n.offset, line: n.line, column: n.column };
2069
+ } else {
2070
+ if (!r) throw new Error("Programming error: the range argument must be provided with a file argument.");
2071
+ this.file = t, this.input = t.content, this.end = r.endPos, this.state = { peek: -1, offset: r.startPos, line: r.startLine, column: r.startCol };
2072
+ }
2073
+ }
2074
+ clone() {
2075
+ return new Br(this);
2076
+ }
2077
+ peek() {
2078
+ return this.state.peek;
2079
+ }
2080
+ charsLeft() {
2081
+ return this.end - this.state.offset;
2082
+ }
2083
+ diff(t) {
2084
+ return this.state.offset - t.state.offset;
2085
+ }
2086
+ advance() {
2087
+ this.advanceState(this.state);
2088
+ }
2089
+ init() {
2090
+ this.updatePeek(this.state);
2091
+ }
2092
+ getSpan(t, r) {
2093
+ t = t || this;
2094
+ let n = t;
2095
+ if (r) for (; this.diff(t) > 0 && r.indexOf(t.peek()) !== -1; ) n === t && (t = t.clone()), t.advance();
2096
+ let i = this.locationFromCursor(t);
2097
+ return new h(i, this.locationFromCursor(this), n !== t ? this.locationFromCursor(n) : i);
2098
+ }
2099
+ getChars(t) {
2100
+ return this.input.substring(t.state.offset, this.state.offset);
2101
+ }
2102
+ charAt(t) {
2103
+ return this.input.charCodeAt(t);
2104
+ }
2105
+ advanceState(t) {
2106
+ if (t.offset >= this.end) throw this.state = t, new Vr('Unexpected character "EOF"', this);
2107
+ let r = this.charAt(t.offset);
2108
+ r === 10 ? (t.line++, t.column = 0) : ut(r) || t.column++, t.offset++, this.updatePeek(t);
2109
+ }
2110
+ updatePeek(t) {
2111
+ t.peek = t.offset >= this.end ? 0 : this.charAt(t.offset);
2112
+ }
2113
+ locationFromCursor(t) {
2114
+ return new qe(t.file, t.state.offset, t.state.line, t.state.column);
2115
+ }
2116
+ };
2117
+ var Ho = class Fr extends is {
2118
+ constructor(t, r) {
2119
+ t instanceof Fr ? (super(t), this.internalState = { ...t.internalState }) : (super(t, r), this.internalState = this.state);
2120
+ }
2121
+ advance() {
2122
+ this.state = this.internalState, super.advance(), this.processEscapeSequence();
2123
+ }
2124
+ init() {
2125
+ super.init(), this.processEscapeSequence();
2126
+ }
2127
+ clone() {
2128
+ return new Fr(this);
2129
+ }
2130
+ getChars(t) {
2131
+ let r = t.clone(), n = "";
2132
+ for (; r.internalState.offset < this.internalState.offset; ) n += String.fromCodePoint(r.peek()), r.advance();
2133
+ return n;
2134
+ }
2135
+ processEscapeSequence() {
2136
+ let t = () => this.internalState.peek;
2137
+ if (t() === 92) if (this.internalState = { ...this.state }, this.advanceState(this.internalState), t() === 110) this.state.peek = 10;
2138
+ else if (t() === 114) this.state.peek = 13;
2139
+ else if (t() === 118) this.state.peek = 11;
2140
+ else if (t() === 116) this.state.peek = 9;
2141
+ else if (t() === 98) this.state.peek = 8;
2142
+ else if (t() === 102) this.state.peek = 12;
2143
+ else if (t() === 117) if (this.advanceState(this.internalState), t() === 123) {
2144
+ this.advanceState(this.internalState);
2145
+ let r = this.clone(), n = 0;
2146
+ for (; t() !== 125; ) this.advanceState(this.internalState), n++;
2147
+ this.state.peek = this.decodeHexDigits(r, n);
2148
+ } else {
2149
+ let r = this.clone();
2150
+ this.advanceState(this.internalState), this.advanceState(this.internalState), this.advanceState(this.internalState), this.state.peek = this.decodeHexDigits(r, 4);
2151
+ }
2152
+ else if (t() === 120) {
2153
+ this.advanceState(this.internalState);
2154
+ let r = this.clone();
2155
+ this.advanceState(this.internalState), this.state.peek = this.decodeHexDigits(r, 2);
2156
+ } else if (xr(t())) {
2157
+ let r = "", n = 0, i = this.clone();
2158
+ for (; xr(t()) && n < 3; ) i = this.clone(), r += String.fromCodePoint(t()), this.advanceState(this.internalState), n++;
2159
+ this.state.peek = parseInt(r, 8), this.internalState = i.internalState;
2160
+ } else ut(this.internalState.peek) ? (this.advanceState(this.internalState), this.state = this.internalState) : this.state.peek = this.internalState.peek;
2161
+ }
2162
+ decodeHexDigits(t, r) {
2163
+ let n = this.input.slice(t.internalState.offset, t.internalState.offset + r), i = parseInt(n, 16);
2164
+ if (isNaN(i)) throw t.state = t.internalState, new Vr("Invalid hexadecimal escape sequence", t);
2165
+ return i;
2166
+ }
2167
+ };
2168
+ var Vr = class extends Error {
2169
+ constructor(e, t) {
2170
+ super(e), this.msg = e, this.cursor = t, Object.setPrototypeOf(this, new.target.prototype);
2171
+ }
2172
+ };
2173
+ var N = class os extends re {
2174
+ static create(t, r, n) {
2175
+ return new os(t, r, n);
2176
+ }
2177
+ constructor(t, r, n) {
2178
+ super(r, n), this.elementName = t;
2179
+ }
2180
+ };
2181
+ var Vo = class {
2182
+ constructor(e, t) {
2183
+ this.rootNodes = e, this.errors = t;
2184
+ }
2185
+ };
2186
+ var ls = class {
2187
+ constructor(e) {
2188
+ this.getTagDefinition = e;
2189
+ }
2190
+ parse(e, t, r, n = false, i) {
2191
+ 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) => {
2192
+ let z = c(m, g, E, P);
2193
+ return z !== void 0 ? z : o(m);
2194
+ } : o, r), p = r && r.canSelfClose || false, d = r && r.allowHtmComponentClosingTags || false, S = new Uo(u.tokens, a, p, d, n);
2195
+ return S.build(), new Vo(S.rootNodes, [...u.errors, ...S.errors]);
2196
+ }
2197
+ };
2198
+ var Uo = class cs {
2199
+ constructor(t, r, n, i, s) {
2200
+ 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();
2201
+ }
2202
+ build() {
2203
+ 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();
2204
+ for (let t of this._containerStack) t instanceof ve && this.errors.push(N.create(t.name, t.sourceSpan, `Unclosed block "${t.name}"`));
2205
+ }
2206
+ _advance() {
2207
+ let t = this._peek;
2208
+ return this._index < this.tokens.length - 1 && this._index++, this._peek = this.tokens[this._index], t;
2209
+ }
2210
+ _advanceIf(t) {
2211
+ return this._peek.type === t ? this._advance() : null;
2212
+ }
2213
+ _consumeCdata(t) {
2214
+ let r = this._advance(), n = this._getText(r), i = this._advanceIf(l.CDATA_END);
2215
+ this._addToParent(new Vi(n, new h(t.sourceSpan.start, (i || r).sourceSpan.end), [r]));
2216
+ }
2217
+ _consumeComment(t) {
2218
+ 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);
2219
+ this._addToParent(new $i(i, s));
2220
+ }
2221
+ _consumeDocType(t) {
2222
+ 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);
2223
+ this._addToParent(new zi(i, s));
2224
+ }
2225
+ _consumeExpansion(t) {
2226
+ let r = this._advance(), n = this._advance(), i = [];
2227
+ for (; this._peek.type === l.EXPANSION_CASE_VALUE; ) {
2228
+ let a = this._parseExpansionCase();
2229
+ if (!a) return;
2230
+ i.push(a);
2231
+ }
2232
+ if (this._peek.type !== l.EXPANSION_FORM_END) {
2233
+ this.errors.push(N.create(null, this._peek.sourceSpan, "Invalid ICU message. Missing '}'."));
2234
+ return;
2235
+ }
2236
+ let s = new h(t.sourceSpan.start, this._peek.sourceSpan.end, t.sourceSpan.fullStart);
2237
+ this._addToParent(new Ui(r.parts[0], n.parts[0], i, s, r.sourceSpan)), this._advance();
2238
+ }
2239
+ _parseExpansionCase() {
2240
+ let t = this._advance();
2241
+ if (this._peek.type !== l.EXPANSION_CASE_EXP_START) return this.errors.push(N.create(null, this._peek.sourceSpan, "Invalid ICU message. Missing '{'.")), null;
2242
+ let r = this._advance(), n = this._collectExpansionExpTokens(r);
2243
+ if (!n) return null;
2244
+ let i = this._advance();
2245
+ n.push({ type: l.EOF, parts: [], sourceSpan: i.sourceSpan });
2246
+ let s = new cs(n, this.tagDefinitionResolver, this.canSelfClose, this.allowHtmComponentClosingTags, this.isTagNameCaseSensitive);
2247
+ if (s.build(), s.errors.length > 0) return this.errors = this.errors.concat(s.errors), null;
2248
+ 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);
2249
+ return new Wi(t.parts[0], s.rootNodes, a, t.sourceSpan, o);
2250
+ }
2251
+ _collectExpansionExpTokens(t) {
2252
+ let r = [], n = [l.EXPANSION_CASE_EXP_START];
2253
+ for (; ; ) {
2254
+ 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)) {
2255
+ if (n.pop(), n.length === 0) return r;
2256
+ } else return this.errors.push(N.create(null, t.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2257
+ if (this._peek.type === l.EXPANSION_FORM_END) if (ss(n, l.EXPANSION_FORM_START)) n.pop();
2258
+ else return this.errors.push(N.create(null, t.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2259
+ if (this._peek.type === l.EOF) return this.errors.push(N.create(null, t.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2260
+ r.push(this._advance());
2261
+ }
2262
+ }
2263
+ _getText(t) {
2264
+ let r = t.parts[0];
2265
+ if (r.length > 0 && r[0] == `
2266
+ `) {
2267
+ var n;
2268
+ let i = this._getClosestElementLikeParent();
2269
+ i != null && i.children.length == 0 && (!((n = this._getTagDefinition(i)) === null || n === void 0) && n.ignoreFirstLf) && (r = r.substring(1));
2270
+ }
2271
+ return r;
2272
+ }
2273
+ _consumeText(t) {
2274
+ let r = [t], n = t.sourceSpan, i = t.parts[0];
2275
+ if (i.length > 0 && i[0] === `
2276
+ `) {
2277
+ var s;
2278
+ let a = this._getContainer();
2279
+ 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] });
2280
+ }
2281
+ 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("");
2282
+ if (i.length > 0) {
2283
+ let a = t.sourceSpan;
2284
+ this._addToParent(new Hi(i, new h(n.start, a.end, n.fullStart, n.details), r));
2285
+ }
2286
+ }
2287
+ _closeVoidElement() {
2288
+ var t;
2289
+ let r = this._getContainer();
2290
+ r !== null && (!((t = this._getTagDefinition(r)) === null || t === void 0) && t.isVoid) && this._containerStack.pop();
2291
+ }
2292
+ _consumeElementStartTag(t) {
2293
+ var r;
2294
+ let n = [], i = [];
2295
+ this._consumeAttributesAndDirectives(n, i);
2296
+ let s = this._getElementFullName(t, this._getClosestElementLikeParent()), a = this._getTagDefinition(s), o = false;
2297
+ if (this._peek.type === l.TAG_OPEN_END_VOID) {
2298
+ this._advance(), o = true;
2299
+ let E = this._getTagDefinition(s);
2300
+ 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]}"`));
2301
+ } else this._peek.type === l.TAG_OPEN_END && (this._advance(), o = false);
2302
+ 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 ?? false), m = this._getContainer(), g = m !== null && !!(!((r = this._getTagDefinition(m)) === null || r === void 0) && r.isClosedByChild(S.name));
2303
+ 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.`)));
2304
+ }
2305
+ _consumeComponentStartTag(t) {
2306
+ var r;
2307
+ let n = t.parts[0], i = [], s = [];
2308
+ this._consumeAttributesAndDirectives(i, s);
2309
+ let a = this._getClosestElementLikeParent(), o = this._getComponentTagName(t, a), c = this._getComponentFullName(t, a), u = this._peek.type === l.COMPONENT_OPEN_END_VOID;
2310
+ this._advance();
2311
+ 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));
2312
+ 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.`)));
2313
+ }
2314
+ _consumeAttributesAndDirectives(t, r) {
2315
+ 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()));
2316
+ }
2317
+ _consumeComponentEndTag(t) {
2318
+ let r = this._getComponentFullName(t, this._getClosestElementLikeParent());
2319
+ if (!this._popContainer(r, J, t.sourceSpan)) {
2320
+ let n = this._containerStack[this._containerStack.length - 1], i;
2321
+ 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.";
2322
+ let s = `Unexpected closing tag "${r}"${i}`;
2323
+ this.errors.push(N.create(r, t.sourceSpan, s));
2324
+ }
2325
+ }
2326
+ _getTagDefinition(t) {
2327
+ 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;
2328
+ }
2329
+ _pushContainer(t, r) {
2330
+ r && this._containerStack.pop(), this._addToParent(t), this._containerStack.push(t);
2331
+ }
2332
+ _consumeElementEndTag(t) {
2333
+ var r;
2334
+ let n = this.allowHtmComponentClosingTags && t.parts.length === 0 ? null : this._getElementFullName(t, this._getClosestElementLikeParent());
2335
+ 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]}"`));
2336
+ else if (!this._popContainer(n, ne, t.sourceSpan)) {
2337
+ 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`;
2338
+ this.errors.push(N.create(n, t.sourceSpan, i));
2339
+ }
2340
+ }
2341
+ _popContainer(t, r, n) {
2342
+ let i = false;
2343
+ for (let a = this._containerStack.length - 1; a >= 0; a--) {
2344
+ var s;
2345
+ let o = this._containerStack[a], c = o instanceof J ? o.fullName : o.name;
2346
+ 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;
2347
+ (o instanceof ve || !(!((s = this._getTagDefinition(o)) === null || s === void 0) && s.closedByParent)) && (i = true);
2348
+ }
2349
+ return false;
2350
+ }
2351
+ _consumeAttr(t) {
2352
+ let r = Se(t.parts[0], t.parts[1]), n = t.sourceSpan.end, i;
2353
+ this._peek.type === l.ATTR_QUOTE && (i = this._advance());
2354
+ let s = "", a = [], o, c;
2355
+ 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; ) {
2356
+ let p = this._advance();
2357
+ 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;
2358
+ }
2359
+ this._peek.type === l.ATTR_QUOTE && (c = n = this._advance().sourceSpan.end);
2360
+ let u = o && c && new h(i?.sourceSpan.start ?? o.start, c, i?.sourceSpan.fullStart ?? o.fullStart);
2361
+ 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);
2362
+ }
2363
+ _consumeDirective(t) {
2364
+ let r = [], n = t.sourceSpan.end, i = null;
2365
+ if (this._advance(), this._peek.type === l.DIRECTIVE_OPEN) {
2366
+ for (n = this._peek.sourceSpan.end, this._advance(); this._peek.type === l.ATTR_NAME; ) r.push(this._consumeAttr(this._advance()));
2367
+ this._peek.type === l.DIRECTIVE_CLOSE ? (i = this._peek.sourceSpan, this._advance()) : this.errors.push(N.create(null, t.sourceSpan, "Unterminated directive definition"));
2368
+ }
2369
+ 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);
2370
+ return new Yi(t.parts[0], r, a, s, i);
2371
+ }
2372
+ _consumeBlockOpen(t) {
2373
+ let r = [];
2374
+ for (; this._peek.type === l.BLOCK_PARAMETER; ) {
2375
+ let o = this._advance();
2376
+ r.push(new Nr(o.parts[0], o.sourceSpan));
2377
+ }
2378
+ this._peek.type === l.BLOCK_OPEN_END && this._advance();
2379
+ 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);
2380
+ this._pushContainer(a, false);
2381
+ }
2382
+ _consumeBlockClose(t) {
2383
+ 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.'));
2384
+ }
2385
+ _consumeIncompleteBlock(t) {
2386
+ let r = [];
2387
+ for (; this._peek.type === l.BLOCK_PARAMETER; ) {
2388
+ let o = this._advance();
2389
+ r.push(new Nr(o.parts[0], o.sourceSpan));
2390
+ }
2391
+ 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);
2392
+ this._pushContainer(a, false), 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.`));
2393
+ }
2394
+ _consumeLet(t) {
2395
+ let r = t.parts[0], n, i;
2396
+ if (this._peek.type !== l.LET_VALUE) {
2397
+ this.errors.push(N.create(t.parts[0], t.sourceSpan, `Invalid @let declaration "${r}". Declaration must have a value.`));
2398
+ return;
2399
+ } else n = this._advance();
2400
+ if (this._peek.type !== l.LET_END) {
2401
+ this.errors.push(N.create(t.parts[0], t.sourceSpan, `Unterminated @let declaration "${r}". Declaration must be terminated with a semicolon.`));
2402
+ return;
2403
+ } else i = this._advance();
2404
+ 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);
2405
+ this._addToParent(u);
2406
+ }
2407
+ _consumeIncompleteLet(t) {
2408
+ let r = t.parts[0] ?? "", n = r ? ` "${r}"` : "";
2409
+ if (r.length > 0) {
2410
+ 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);
2411
+ this._addToParent(o);
2412
+ }
2413
+ this.errors.push(N.create(t.parts[0], t.sourceSpan, `Incomplete @let declaration${n}. @let declarations must be written as \`@let <name> = <value>;\``));
2414
+ }
2415
+ _getContainer() {
2416
+ return this._containerStack.length > 0 ? this._containerStack[this._containerStack.length - 1] : null;
2417
+ }
2418
+ _getClosestElementLikeParent() {
2419
+ for (let t = this._containerStack.length - 1; t > -1; t--) {
2420
+ let r = this._containerStack[t];
2421
+ if (r instanceof ne || r instanceof J) return r;
2422
+ }
2423
+ return null;
2424
+ }
2425
+ _addToParent(t) {
2426
+ let r = this._getContainer();
2427
+ r === null ? this.rootNodes.push(t) : r.children.push(t);
2428
+ }
2429
+ _getElementFullName(t, r) {
2430
+ return Se(this._getPrefix(t, r), t.parts[1]);
2431
+ }
2432
+ _getComponentFullName(t, r) {
2433
+ let n = t.parts[0], i = this._getComponentTagName(t, r);
2434
+ return i === null ? n : i.startsWith(":") ? n + i : `${n}:${i}`;
2435
+ }
2436
+ _getComponentTagName(t, r) {
2437
+ let n = this._getPrefix(t, r), i = t.parts[2];
2438
+ return !n && !i ? null : !n && i ? i : Se(n, i || "ng-component");
2439
+ }
2440
+ _getPrefix(t, r) {
2441
+ var n;
2442
+ let i, s;
2443
+ 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) {
2444
+ let a = r instanceof ne ? r.name : r.tagName;
2445
+ if (a !== null) {
2446
+ let o = at(a)[1], c = this._getTagDefinition(o);
2447
+ c !== null && !c.preventNamespaceInheritance && (i = Me(a));
2448
+ }
2449
+ }
2450
+ return i;
2451
+ }
2452
+ };
2453
+ function ss(e, t) {
2454
+ return e.length > 0 && e[e.length - 1] === t;
2455
+ }
2456
+ function as(e, t) {
2457
+ 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;
2458
+ }
2459
+ var us = class extends ls {
2460
+ constructor() {
2461
+ super(Be);
2462
+ }
2463
+ parse(e, t, r, n = false, i) {
2464
+ return super.parse(e, t, r, n, i);
2465
+ }
2466
+ };
2467
+ var Ur = null;
2468
+ var Wo = () => (Ur || (Ur = new us()), Ur);
2469
+ function Qt(e, t = {}) {
2470
+ let { canSelfClose: r = false, allowHtmComponentClosingTags: n = false, isTagNameCaseSensitive: i = false, getTagContentType: s, tokenizeAngularBlocks: a = false, tokenizeAngularLetDeclaration: o = false, enableAngularSelectorlessSyntax: c = false } = t;
2471
+ return Wo().parse(e, "angular-html-parser", { tokenizeExpansionForms: a, canSelfClose: r, allowHtmComponentClosingTags: n, tokenizeBlocks: a, tokenizeLet: o, selectorlessEnabled: c }, i, s);
2472
+ }
2473
+ var Go = [zo, Yo, Xo, Qo, Jo, tl, Zo, el, rl, Ko];
2474
+ function $o(e, t) {
2475
+ for (let r of Go) r(e, t);
2476
+ return e;
2477
+ }
2478
+ function zo(e) {
2479
+ e.walk((t) => {
2480
+ if (t.kind === "element" && t.tagDefinition.ignoreFirstLf && t.children.length > 0 && t.children[0].kind === "text" && t.children[0].value[0] === `
2481
+ `) {
2482
+ let r = t.children[0];
2483
+ r.value.length === 1 ? t.removeChild(r) : r.value = r.value.slice(1);
2484
+ }
2485
+ });
2486
+ }
2487
+ function Yo(e) {
2488
+ 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;
2489
+ e.walk((r) => {
2490
+ if (r.children) for (let n = 0; n < r.children.length; n++) {
2491
+ let i = r.children[n];
2492
+ if (!t(i)) continue;
2493
+ let s = i.prev, a = i.firstChild;
2494
+ r.removeChild(s), n--;
2495
+ let o = new h(s.sourceSpan.start, a.sourceSpan.end), c = new h(o.start, i.sourceSpan.end);
2496
+ i.condition = s.condition, i.sourceSpan = c, i.startSourceSpan = o, i.removeChild(a);
2497
+ }
2498
+ });
2499
+ }
2500
+ function jo(e, t, r) {
2501
+ e.walk((n) => {
2502
+ if (n.children) for (let i = 0; i < n.children.length; i++) {
2503
+ let s = n.children[i];
2504
+ if (s.kind !== "text" && !t(s)) continue;
2505
+ s.kind !== "text" && (s.kind = "text", s.value = r(s));
2506
+ let a = s.prev;
2507
+ !a || a.kind !== "text" || (a.value += s.value, a.sourceSpan = new h(a.sourceSpan.start, s.sourceSpan.end), n.removeChild(s), i--);
2508
+ }
2509
+ });
2510
+ }
2511
+ function Xo(e) {
2512
+ return jo(e, (t) => t.kind === "cdata", (t) => `<![CDATA[${t.value}]]>`);
2513
+ }
2514
+ function Ko(e) {
2515
+ 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";
2516
+ e.walk((r) => {
2517
+ if (r.children) for (let n = 0; n < r.children.length; n++) {
2518
+ let i = r.children[n];
2519
+ if (!t(i)) continue;
2520
+ let s = i.prev, a = i.next;
2521
+ 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);
2522
+ }
2523
+ });
2524
+ }
2525
+ function Qo(e, t) {
2526
+ if (t.parser === "html") return;
2527
+ let r = /\{\{(.+?)\}\}/su;
2528
+ e.walk((n) => {
2529
+ if (An(n, t)) for (let i of n.children) {
2530
+ if (i.kind !== "text") continue;
2531
+ let s = i.sourceSpan.start, a = null, o = i.value.split(r);
2532
+ for (let c = 0; c < o.length; c++, s = a) {
2533
+ let u = o[c];
2534
+ if (c % 2 === 0) {
2535
+ a = s.moveBy(u.length), u.length > 0 && n.insertChildBefore(i, { kind: "text", value: u, sourceSpan: new h(s, a) });
2536
+ continue;
2537
+ }
2538
+ 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)) }] });
2539
+ }
2540
+ n.removeChild(i);
2541
+ }
2542
+ });
2543
+ }
2544
+ function Jo(e, t) {
2545
+ e.walk((r) => {
2546
+ let n = r.$children;
2547
+ if (!n) return;
2548
+ if (n.length === 0 || n.length === 1 && n[0].kind === "text" && x.trim(n[0].value).length === 0) {
2549
+ r.hasDanglingSpaces = n.length > 0, r.$children = [];
2550
+ return;
2551
+ }
2552
+ let i = yn(r, t), s = dr(r);
2553
+ if (!i) for (let a = 0; a < n.length; a++) {
2554
+ let o = n[a];
2555
+ if (o.kind !== "text") continue;
2556
+ let { leadingWhitespace: c, text: u, trailingWhitespace: p } = kn(o.value), d = o.prev, S = o.next;
2557
+ u ? (o.value = u, o.sourceSpan = new h(o.sourceSpan.start.moveBy(c.length), o.sourceSpan.end.moveBy(-p.length)), c && (d && (d.hasTrailingSpaces = true), o.hasLeadingSpaces = true), p && (o.hasTrailingSpaces = true, S && (S.hasLeadingSpaces = true))) : (r.removeChild(o), a--, (c || p) && (d && (d.hasTrailingSpaces = true), S && (S.hasLeadingSpaces = true)));
2558
+ }
2559
+ r.isWhitespaceSensitive = i, r.isIndentationSensitive = s;
2560
+ });
2561
+ }
2562
+ function Zo(e) {
2563
+ e.walk((t) => {
2564
+ t.isSelfClosing = !t.children || t.kind === "element" && (t.tagDefinition.isVoid || t.endSourceSpan && t.startSourceSpan.start === t.endSourceSpan.start && t.startSourceSpan.end === t.endSourceSpan.end);
2565
+ });
2566
+ }
2567
+ function el(e, t) {
2568
+ e.walk((r) => {
2569
+ r.kind === "element" && (r.hasHtmComponentClosingTag = r.endSourceSpan && /^<\s*\/\s*\/\s*>$/u.test(t.originalText.slice(r.endSourceSpan.start.offset, r.endSourceSpan.end.offset)));
2570
+ });
2571
+ }
2572
+ function tl(e, t) {
2573
+ e.walk((r) => {
2574
+ r.cssDisplay = Bn(r, t);
2575
+ });
2576
+ }
2577
+ function rl(e, t) {
2578
+ e.walk((r) => {
2579
+ let { children: n } = r;
2580
+ if (n) {
2581
+ if (n.length === 0) {
2582
+ r.isDanglingSpaceSensitive = Ln(r, t);
2583
+ return;
2584
+ }
2585
+ for (let i of n) i.isLeadingSpaceSensitive = xn(i, t), i.isTrailingSpaceSensitive = Nn(i, t);
2586
+ for (let i = 0; i < n.length; i++) {
2587
+ let s = n[i];
2588
+ s.isLeadingSpaceSensitive = (i === 0 || s.prev.isTrailingSpaceSensitive) && s.isLeadingSpaceSensitive, s.isTrailingSpaceSensitive = (i === n.length - 1 || s.next.isLeadingSpaceSensitive) && s.isTrailingSpaceSensitive;
2589
+ }
2590
+ }
2591
+ });
2592
+ }
2593
+ var ps = $o;
2594
+ function nl(e, t, r) {
2595
+ let { node: n } = e;
2596
+ switch (n.kind) {
2597
+ case "root":
2598
+ return t.__onHtmlRoot && t.__onHtmlRoot(n), [C(Ie(e, t, r)), v];
2599
+ case "element":
2600
+ case "ieConditionalComment":
2601
+ return Pi(e, t, r);
2602
+ case "angularControlFlowBlock":
2603
+ return Ai(e, t, r);
2604
+ case "angularControlFlowBlockParameters":
2605
+ return xi(e, t, r);
2606
+ case "angularControlFlowBlockParameter":
2607
+ return x.trim(n.expression);
2608
+ case "angularLetDeclaration":
2609
+ return C(["@let ", C([n.id, " =", C(y([_, r("init")]))]), ";"]);
2610
+ case "angularLetDeclarationInitializer":
2611
+ return n.value;
2612
+ case "angularIcuExpression":
2613
+ return Ni(e, t, r);
2614
+ case "angularIcuCase":
2615
+ return Li(e, t, r);
2616
+ case "ieConditionalStartComment":
2617
+ case "ieConditionalEndComment":
2618
+ return [_e(n), me(n)];
2619
+ case "interpolation":
2620
+ return [_e(n, t), ...e.map(r, "children"), me(n, t)];
2621
+ case "text": {
2622
+ if (n.parent.kind === "interpolation") {
2623
+ let o = /\n[^\S\n]*$/u, c = o.test(n.value), u = c ? n.value.replace(o, "") : n.value;
2624
+ return [L(u), c ? v : ""];
2625
+ }
2626
+ let i = U(n, t), s = Ot(n), a = V(n, t);
2627
+ return s[0] = [i, s[0]], s.push([s.pop(), a]), kt(s);
2628
+ }
2629
+ case "docType":
2630
+ return [C([_e(n, t), " ", w(0, n.value.replace(/^html\b/iu, "html"), /\s+/gu, " ")]), me(n, t)];
2631
+ case "comment":
2632
+ return [U(n, t), L(t.originalText.slice(Q(n), te(n))), V(n, t)];
2633
+ case "attribute": {
2634
+ if (n.value === null) return n.rawName;
2635
+ let i = Sr(n.value), s = Rt(n, t) ? "" : pn(i, '"');
2636
+ return [n.rawName, "=", s, L(s === '"' ? w(0, i, '"', "&quot;") : w(0, i, "'", "&apos;")), s];
2637
+ }
2638
+ case "frontMatter":
2639
+ case "cdata":
2640
+ default:
2641
+ throw new mn(n, "HTML");
2642
+ }
2643
+ }
2644
+ var il = { features: { experimental_frontMatterSupport: { massageAstNode: true, embed: true, print: true } }, preprocess: ps, print: nl, insertPragma: bi, massageAstNode: dn, embed: fi, getVisitorKeys: _i };
2645
+ var hs = il;
2646
+ var 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 }];
2647
+ var Wr = { bracketSpacing: { category: "Common", type: "boolean", default: true, 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: false, 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: false, description: "Put > of opening tags on the last line instead of on a new line." }, singleAttributePerLine: { category: "Common", type: "boolean", default: false, description: "Enforce single attribute per line in HTML, Vue and JSX." } };
2648
+ var fs = "HTML";
2649
+ var 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: false, description: "Indent script and style tags in Vue files." } };
2650
+ var ds = sl;
2651
+ var Qr = {};
2652
+ en(Qr, { angular: () => kl, html: () => Tl, lwc: () => yl, mjml: () => wl, vue: () => Al });
2653
+ function al(e, t) {
2654
+ let r = new SyntaxError(e + " (" + t.loc.start.line + ":" + t.loc.start.column + ")");
2655
+ return Object.assign(r, t);
2656
+ }
2657
+ var gs = al;
2658
+ var ol = { canSelfClose: true, normalizeTagName: false, normalizeAttributeName: false, allowHtmComponentClosingTags: false, isTagNameCaseSensitive: false, shouldParseFrontMatter: true };
2659
+ function Jt(e) {
2660
+ return { ...ol, ...e };
2661
+ }
2662
+ function Gr(e) {
2663
+ let { canSelfClose: t, allowHtmComponentClosingTags: r, isTagNameCaseSensitive: n, shouldParseAsRawText: i, tokenizeAngularBlocks: s, tokenizeAngularLetDeclaration: a } = e;
2664
+ return { canSelfClose: t, allowHtmComponentClosingTags: r, isTagNameCaseSensitive: n, getTagContentType: i ? (...o) => i(...o) ? I.RAW_TEXT : void 0 : void 0, tokenizeAngularBlocks: s, tokenizeAngularLetDeclaration: a };
2665
+ }
2666
+ var 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"])]]);
2667
+ var _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"]);
2668
+ var er = { attrs: true, children: true, cases: true, expression: true };
2669
+ var Ss = /* @__PURE__ */ new Set(["parent"]);
2670
+ var ae;
2671
+ var $r;
2672
+ var zr;
2673
+ var We = class We2 {
2674
+ constructor(t = {}) {
2675
+ tn(this, ae);
2676
+ ir(this, "kind");
2677
+ ir(this, "parent");
2678
+ for (let r of /* @__PURE__ */ new Set([...Ss, ...Object.keys(t)])) this.setProperty(r, t[r]);
2679
+ if (le(t)) for (let r of Object.getOwnPropertySymbols(t)) this.setProperty(r, t[r]);
2680
+ }
2681
+ setProperty(t, r) {
2682
+ if (this[t] !== r) {
2683
+ if (t in er && (r = r.map((n) => this.createChild(n))), !Ss.has(t)) {
2684
+ this[t] = r;
2685
+ return;
2686
+ }
2687
+ Object.defineProperty(this, t, { value: r, enumerable: false, configurable: true });
2688
+ }
2689
+ }
2690
+ map(t) {
2691
+ let r;
2692
+ for (let n in er) {
2693
+ let i = this[n];
2694
+ if (i) {
2695
+ let s = ll(i, (a) => a.map(t));
2696
+ r !== i && (r || (r = new We2({ parent: this.parent })), r.setProperty(n, s));
2697
+ }
2698
+ }
2699
+ if (r) for (let n in this) n in er || (r[n] = this[n]);
2700
+ return t(r || this);
2701
+ }
2702
+ walk(t) {
2703
+ for (let r in er) {
2704
+ let n = this[r];
2705
+ if (n) for (let i = 0; i < n.length; i++) n[i].walk(t);
2706
+ }
2707
+ t(this);
2708
+ }
2709
+ createChild(t) {
2710
+ let r = t instanceof We2 ? t.clone() : new We2(t);
2711
+ return r.setProperty("parent", this), r;
2712
+ }
2713
+ insertChildBefore(t, r) {
2714
+ let n = this.$children;
2715
+ n.splice(n.indexOf(t), 0, this.createChild(r));
2716
+ }
2717
+ removeChild(t) {
2718
+ let r = this.$children;
2719
+ r.splice(r.indexOf(t), 1);
2720
+ }
2721
+ replaceChild(t, r) {
2722
+ let n = this.$children;
2723
+ n[n.indexOf(t)] = this.createChild(r);
2724
+ }
2725
+ clone() {
2726
+ return new We2(this);
2727
+ }
2728
+ get $children() {
2729
+ return this[$e(this, ae, $r)];
2730
+ }
2731
+ set $children(t) {
2732
+ this[$e(this, ae, $r)] = t;
2733
+ }
2734
+ get firstChild() {
2735
+ return this.$children?.[0];
2736
+ }
2737
+ get lastChild() {
2738
+ return F(1, this.$children, -1);
2739
+ }
2740
+ get prev() {
2741
+ let t = $e(this, ae, zr);
2742
+ return t[t.indexOf(this) - 1];
2743
+ }
2744
+ get next() {
2745
+ let t = $e(this, ae, zr);
2746
+ return t[t.indexOf(this) + 1];
2747
+ }
2748
+ get rawName() {
2749
+ return this.hasExplicitNamespace ? this.fullName : this.name;
2750
+ }
2751
+ get fullName() {
2752
+ return this.namespace ? this.namespace + ":" + this.name : this.name;
2753
+ }
2754
+ get attrMap() {
2755
+ return Object.fromEntries(this.attrs.map((t) => [t.fullName, t.value]));
2756
+ }
2757
+ };
2758
+ ae = /* @__PURE__ */ new WeakSet(), $r = function() {
2759
+ return this.kind === "angularIcuCase" ? "expression" : this.kind === "angularIcuExpression" ? "cases" : "children";
2760
+ }, zr = function() {
2761
+ return this.parent?.$children ?? [];
2762
+ };
2763
+ var tr = We;
2764
+ function ll(e, t) {
2765
+ let r = e.map(t);
2766
+ return r.some((n, i) => n !== e[i]) ? r : e;
2767
+ }
2768
+ var cl = [{ regex: /^(?<openingTagSuffix>\[if(?<condition>[^\]]*)\]>)(?<data>.*?)<!\s*\[endif\]$/su, parse: ul }, { regex: /^\[if(?<condition>[^\]]*)\]><!$/u, parse: pl }, { regex: /^<!\s*\[endif\]$/u, parse: hl }];
2769
+ function Es(e, t) {
2770
+ if (e.value) for (let { regex: r, parse: n } of cl) {
2771
+ let i = e.value.match(r);
2772
+ if (i) return n(e, i, t);
2773
+ }
2774
+ return null;
2775
+ }
2776
+ function ul(e, t, r) {
2777
+ 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] = (() => {
2778
+ try {
2779
+ return [true, r(s, o).children];
2780
+ } catch {
2781
+ return [false, [{ kind: "text", value: s, sourceSpan: new h(o, c) }]];
2782
+ }
2783
+ })();
2784
+ 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) };
2785
+ }
2786
+ function pl(e, t) {
2787
+ let { condition: r } = t.groups;
2788
+ return { kind: "ieConditionalStartComment", condition: w(0, r.trim(), /\s+/gu, " "), sourceSpan: e.sourceSpan };
2789
+ }
2790
+ function hl(e) {
2791
+ return { kind: "ieConditionalEndComment", sourceSpan: e.sourceSpan };
2792
+ }
2793
+ var Yr = class extends Pr {
2794
+ visitExpansionCase(t, r) {
2795
+ r.parseOptions.name === "angular" && this.visitChildren(r, (n) => {
2796
+ n(t.expression);
2797
+ });
2798
+ }
2799
+ visit(t, { parseOptions: r }) {
2800
+ gl(t), _l(t, r), El(t, r), Sl(t);
2801
+ }
2802
+ };
2803
+ function Ts(e, t, r, n) {
2804
+ Wt(new Yr(), e.children, { parseOptions: r }), t && e.children.unshift(t);
2805
+ let i = new tr(e);
2806
+ return i.walk((s) => {
2807
+ if (s.kind === "comment") {
2808
+ let a = Es(s, n);
2809
+ a && s.parent.replaceChild(s, a);
2810
+ }
2811
+ ml(s), fl(s), dl(s);
2812
+ }), i;
2813
+ }
2814
+ function ml(e) {
2815
+ if (e.kind === "block") {
2816
+ if (e.name = w(0, e.name.toLowerCase(), /\s+/gu, " ").trim(), e.kind = "angularControlFlowBlock", !Re(e.parameters)) {
2817
+ delete e.parameters;
2818
+ return;
2819
+ }
2820
+ for (let t of e.parameters) t.kind = "angularControlFlowBlockParameter";
2821
+ e.parameters = { kind: "angularControlFlowBlockParameters", children: e.parameters, sourceSpan: new h(e.parameters[0].sourceSpan.start, F(0, e.parameters, -1).sourceSpan.end) };
2822
+ }
2823
+ }
2824
+ function fl(e) {
2825
+ 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);
2826
+ }
2827
+ function dl(e) {
2828
+ e.kind === "expansion" && (e.kind = "angularIcuExpression"), e.kind === "expansionCase" && (e.kind = "angularIcuCase");
2829
+ }
2830
+ function Cs(e, t) {
2831
+ let r = e.toLowerCase();
2832
+ return t(r) ? r : e;
2833
+ }
2834
+ function vs(e) {
2835
+ 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;
2836
+ e.name = i, e.namespace = t, e.hasExplicitNamespace = n;
2837
+ }
2838
+ function gl(e) {
2839
+ switch (e.kind) {
2840
+ case "element":
2841
+ vs(e);
2842
+ 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;
2843
+ break;
2844
+ case "comment":
2845
+ e.value = e.sourceSpan.toString().slice(4, -3);
2846
+ break;
2847
+ case "text":
2848
+ e.value = e.sourceSpan.toString();
2849
+ break;
2850
+ }
2851
+ }
2852
+ function _l(e, t) {
2853
+ if (e.kind === "element") {
2854
+ let r = Be(t.isTagNameCaseSensitive ? e.name : e.name.toLowerCase());
2855
+ !e.namespace || e.namespace === r.implicitNamespacePrefix || ce(e) ? e.tagDefinition = r : e.tagDefinition = Be("");
2856
+ }
2857
+ }
2858
+ function Sl(e) {
2859
+ e.sourceSpan && e.endSourceSpan && (e.sourceSpan = new h(e.sourceSpan.start, e.endSourceSpan.end));
2860
+ }
2861
+ function El(e, t) {
2862
+ 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))));
2863
+ }
2864
+ function Xr(e, t) {
2865
+ let { rootNodes: r, errors: n } = Qt(e, Gr(t));
2866
+ return n.length > 0 && jr(n[0]), { parseOptions: t, rootNodes: r };
2867
+ }
2868
+ function bs(e, t) {
2869
+ let r = Gr(t), { rootNodes: n, errors: i } = Qt(e, r);
2870
+ if (n.some((u) => u.kind === "docType" && u.value === "html" || u.kind === "element" && u.name.toLowerCase() === "html")) return Xr(e, rr);
2871
+ let a, o = () => a ?? (a = Qt(e, { ...r, getTagContentType: void 0 })), c = (u) => {
2872
+ let { offset: p } = u.startSourceSpan.start;
2873
+ return o().rootNodes.find((d) => d.kind === "element" && d.startSourceSpan.start.offset === p) ?? u;
2874
+ };
2875
+ for (let [u, p] of n.entries()) if (p.kind === "element") {
2876
+ if (p.isVoid) i = o().errors, n[u] = c(p);
2877
+ else if (Cl(p)) {
2878
+ 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);
2879
+ m && jr(m), n[u] = c(p);
2880
+ }
2881
+ }
2882
+ return i.length > 0 && jr(i[0]), { parseOptions: t, rootNodes: n };
2883
+ }
2884
+ function Cl(e) {
2885
+ if (e.kind !== "element" || e.name !== "template") return false;
2886
+ let t = e.attrs.find((r) => r.name === "lang")?.value;
2887
+ return !t || t === "html";
2888
+ }
2889
+ function jr(e) {
2890
+ let { msg: t, span: { start: r, end: n } } = e;
2891
+ throw gs(t, { loc: { start: { line: r.line + 1, column: r.col + 1 }, end: { line: n.line + 1, column: n.col + 1 } }, cause: e });
2892
+ }
2893
+ function vl(e, t, r, n, i, s) {
2894
+ let { offset: a } = n, o = w(0, t.slice(0, a), /[^\n]/gu, " ") + r, c = Kr(o, e, { ...i, shouldParseFrontMatter: false }, s);
2895
+ c.sourceSpan = new h(n, F(0, c.children, -1).sourceSpan.end);
2896
+ let u = c.children[0];
2897
+ 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;
2898
+ }
2899
+ function Kr(e, t, r, n = {}) {
2900
+ 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;
2901
+ if (i) {
2902
+ let [g, E] = [i.start, i.end].map((P) => new qe(a, P.index, P.line - 1, P.column));
2903
+ S = { ...i, kind: "frontMatter", sourceSpan: new h(g, E) };
2904
+ }
2905
+ return Ts(d, S, u, (g, E) => vl(t, e, g, E, u, n));
2906
+ }
2907
+ var rr = Jt({ name: "html", normalizeTagName: true, normalizeAttributeName: true, allowHtmComponentClosingTags: true });
2908
+ function dt(e) {
2909
+ let t = Jt(e), r = t.name === "vue" ? bs : Xr;
2910
+ return { parse: (n, i) => Kr(n, r, t, i), hasPragma: vi, hasIgnorePragma: Ti, astFormat: "html", locStart: Q, locEnd: te };
2911
+ }
2912
+ var Tl = dt(rr);
2913
+ var bl = /* @__PURE__ */ new Set(["mj-style", "mj-raw"]);
2914
+ var wl = dt({ ...rr, name: "mjml", shouldParseAsRawText: (e) => bl.has(e) });
2915
+ var kl = dt({ name: "angular", tokenizeAngularBlocks: true, tokenizeAngularLetDeclaration: true });
2916
+ var Al = dt({ name: "vue", isTagNameCaseSensitive: true, shouldParseAsRawText(e, t, r, n) {
2917
+ return e.toLowerCase() !== "html" && !r && (e !== "template" || n.some(({ name: i, value: s }) => i === "lang" && s !== "html" && s !== "" && s !== void 0));
2918
+ } });
2919
+ var yl = dt({ name: "lwc", canSelfClose: false });
2920
+ var xl = { html: hs };
2921
+ export {
2922
+ ws as default,
2923
+ ms as languages,
2924
+ ds as options,
2925
+ Qr as parsers,
2926
+ xl as printers
2927
+ };