@drzl/validation-core 3.0.0 → 3.2.0

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