soonjs 0.0.11 → 0.0.13

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,2623 @@
1
+ var tn = Object.defineProperty;
2
+ var rn = (e, t, r) => t in e ? tn(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
3
+ var Ye = (e, t, r) => rn(e, typeof t != "symbol" ? t + "" : t, r);
4
+ var nn = Object.defineProperty, or = (e) => {
5
+ throw TypeError(e);
6
+ }, lr = (e, t) => {
7
+ for (var r in t) nn(e, r, { get: t[r], enumerable: !0 });
8
+ }, cr = (e, t, r) => t.has(e) || or("Cannot " + r), U = (e, t, r) => (cr(e, t, "read from private field"), t.get(e)), an = (e, t, r) => t.has(e) ? or("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, r), sn = (e, t, r, n) => (cr(e, t, "write to private field"), t.set(e, r), r), pr = {};
9
+ lr(pr, { languages: () => $i, options: () => Gi, parsers: () => zr, printers: () => Zs });
10
+ var un = (e, t, r, n) => {
11
+ if (!(e && t == null)) return t.replaceAll ? t.replaceAll(r, n) : r.global ? t.replace(r, n) : t.split(r).join(n);
12
+ }, L = un, lt = "string", ct = "array", pt = "cursor", Fe = "indent", qe = "align", ht = "trim", ce = "group", Ne = "fill", Ie = "if-break", Pe = "indent-if-break", dt = "line-suffix", mt = "line-suffix-boundary", G = "line", gt = "label", Me = "break-parent", hr = /* @__PURE__ */ new Set([pt, Fe, qe, ht, ce, Ne, Ie, Pe, dt, mt, G, gt, Me]);
13
+ function on(e) {
14
+ if (typeof e == "string") return lt;
15
+ if (Array.isArray(e)) return ct;
16
+ if (!e) return;
17
+ let { type: t } = e;
18
+ if (hr.has(t)) return t;
19
+ }
20
+ var ft = on, ln = (e) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(e);
21
+ function cn(e) {
22
+ let t = e === null ? "null" : typeof e;
23
+ if (t !== "string" && t !== "object") return `Unexpected doc '${t}',
24
+ Expected it to be 'string' or 'object'.`;
25
+ if (ft(e)) throw new Error("doc is valid.");
26
+ let r = Object.prototype.toString.call(e);
27
+ if (r !== "[object Object]") return `Unexpected doc '${r}'.`;
28
+ let n = ln([...hr].map((a) => `'${a}'`));
29
+ return `Unexpected doc.type '${e.type}'.
30
+ Expected it to be ${n}.`;
31
+ }
32
+ var pn = class extends Error {
33
+ constructor(t) {
34
+ super(cn(t));
35
+ Ye(this, "name", "InvalidDocError");
36
+ this.doc = t;
37
+ }
38
+ }, dr = pn, hn = () => {
39
+ }, dn = hn;
40
+ function H(e) {
41
+ return { type: Fe, contents: e };
42
+ }
43
+ function mr(e, t) {
44
+ return { type: qe, contents: t, n: e };
45
+ }
46
+ function A(e, t = {}) {
47
+ return dn(t.expandedStates), { type: ce, id: t.id, contents: e, break: !!t.shouldBreak, expandedStates: t.expandedStates };
48
+ }
49
+ function mn(e) {
50
+ return mr(Number.NEGATIVE_INFINITY, e);
51
+ }
52
+ function gn(e) {
53
+ return mr({ type: "root" }, e);
54
+ }
55
+ function gr(e) {
56
+ return { type: Ne, parts: e };
57
+ }
58
+ function ke(e, t = "", r = {}) {
59
+ return { type: Ie, breakContents: e, flatContents: t, groupId: r.groupId };
60
+ }
61
+ function fn(e, t) {
62
+ return { type: Pe, contents: e, groupId: t.groupId, negate: t.negate };
63
+ }
64
+ var de = { type: Me }, vn = { type: G, hard: !0 }, Cn = { type: G, hard: !0, literal: !0 }, k = { type: G }, D = { type: G, soft: !0 }, S = [vn, de], Sn = [Cn, de];
65
+ function Q(e, t) {
66
+ let r = [];
67
+ for (let n = 0; n < t.length; n++) n !== 0 && r.push(e), r.push(t[n]);
68
+ return r;
69
+ }
70
+ var yn = (e, t, r) => {
71
+ if (!(e && t == null)) return Array.isArray(t) || typeof t == "string" ? t[r < 0 ? t.length + r : r] : t.at(r);
72
+ }, me = yn;
73
+ function vt(e, t) {
74
+ if (typeof e == "string") return t(e);
75
+ let r = /* @__PURE__ */ new Map();
76
+ return n(e);
77
+ function n(i) {
78
+ if (r.has(i)) return r.get(i);
79
+ let s = a(i);
80
+ return r.set(i, s), s;
81
+ }
82
+ function a(i) {
83
+ switch (ft(i)) {
84
+ case ct:
85
+ return t(i.map(n));
86
+ case Ne:
87
+ return t({ ...i, parts: i.parts.map(n) });
88
+ case Ie:
89
+ return t({ ...i, breakContents: n(i.breakContents), flatContents: n(i.flatContents) });
90
+ case ce: {
91
+ let { expandedStates: s, contents: u } = i;
92
+ return s ? (s = s.map(n), u = s[0]) : u = n(u), t({ ...i, contents: u, expandedStates: s });
93
+ }
94
+ case qe:
95
+ case Fe:
96
+ case Pe:
97
+ case gt:
98
+ case dt:
99
+ return t({ ...i, contents: n(i.contents) });
100
+ case lt:
101
+ case pt:
102
+ case ht:
103
+ case mt:
104
+ case G:
105
+ case Me:
106
+ return t(i);
107
+ default:
108
+ throw new dr(i);
109
+ }
110
+ }
111
+ }
112
+ function bn(e) {
113
+ switch (ft(e)) {
114
+ case Ne:
115
+ if (e.parts.every((t) => t === "")) return "";
116
+ break;
117
+ case ce:
118
+ if (!e.contents && !e.id && !e.break && !e.expandedStates) return "";
119
+ if (e.contents.type === ce && e.contents.id === e.id && e.contents.break === e.break && e.contents.expandedStates === e.expandedStates) return e.contents;
120
+ break;
121
+ case qe:
122
+ case Fe:
123
+ case Pe:
124
+ case dt:
125
+ if (!e.contents) return "";
126
+ break;
127
+ case Ie:
128
+ if (!e.flatContents && !e.breakContents) return "";
129
+ break;
130
+ case ct: {
131
+ let t = [];
132
+ for (let r of e) {
133
+ if (!r) continue;
134
+ let [n, ...a] = Array.isArray(r) ? r : [r];
135
+ typeof n == "string" && typeof me(!1, t, -1) == "string" ? t[t.length - 1] += n : t.push(n), t.push(...a);
136
+ }
137
+ return t.length === 0 ? "" : t.length === 1 ? t[0] : t;
138
+ }
139
+ case lt:
140
+ case pt:
141
+ case ht:
142
+ case mt:
143
+ case G:
144
+ case gt:
145
+ case Me:
146
+ break;
147
+ default:
148
+ throw new dr(e);
149
+ }
150
+ return e;
151
+ }
152
+ function _n(e) {
153
+ return vt(e, (t) => bn(t));
154
+ }
155
+ function I(e, t = Sn) {
156
+ return vt(e, (r) => typeof r == "string" ? Q(t, r.split(`
157
+ `)) : r);
158
+ }
159
+ var Ce = "'", Ft = '"';
160
+ function wn(e, t) {
161
+ let r = t === !0 || t === Ce ? Ce : Ft, n = r === Ce ? Ft : Ce, a = 0, i = 0;
162
+ for (let s of e) s === r ? a++ : s === n && i++;
163
+ return a > i ? n : r;
164
+ }
165
+ var An = wn;
166
+ function kn(e) {
167
+ if (typeof e != "string") throw new TypeError("Expected a string");
168
+ return e.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
169
+ }
170
+ var q, En = class {
171
+ constructor(e) {
172
+ an(this, q), sn(this, q, new Set(e));
173
+ }
174
+ getLeadingWhitespaceCount(e) {
175
+ let t = U(this, q), r = 0;
176
+ for (let n = 0; n < e.length && t.has(e.charAt(n)); n++) r++;
177
+ return r;
178
+ }
179
+ getTrailingWhitespaceCount(e) {
180
+ let t = U(this, q), r = 0;
181
+ for (let n = e.length - 1; n >= 0 && t.has(e.charAt(n)); n--) r++;
182
+ return r;
183
+ }
184
+ getLeadingWhitespace(e) {
185
+ let t = this.getLeadingWhitespaceCount(e);
186
+ return e.slice(0, t);
187
+ }
188
+ getTrailingWhitespace(e) {
189
+ let t = this.getTrailingWhitespaceCount(e);
190
+ return e.slice(e.length - t);
191
+ }
192
+ hasLeadingWhitespace(e) {
193
+ return U(this, q).has(e.charAt(0));
194
+ }
195
+ hasTrailingWhitespace(e) {
196
+ return U(this, q).has(me(!1, e, -1));
197
+ }
198
+ trimStart(e) {
199
+ let t = this.getLeadingWhitespaceCount(e);
200
+ return e.slice(t);
201
+ }
202
+ trimEnd(e) {
203
+ let t = this.getTrailingWhitespaceCount(e);
204
+ return e.slice(0, e.length - t);
205
+ }
206
+ trim(e) {
207
+ return this.trimEnd(this.trimStart(e));
208
+ }
209
+ split(e, t = !1) {
210
+ let r = `[${kn([...U(this, q)].join(""))}]+`, n = new RegExp(t ? `(${r})` : r, "u");
211
+ return e.split(n);
212
+ }
213
+ hasWhitespaceCharacter(e) {
214
+ let t = U(this, q);
215
+ return Array.prototype.some.call(e, (r) => t.has(r));
216
+ }
217
+ hasNonWhitespaceCharacter(e) {
218
+ let t = U(this, q);
219
+ return Array.prototype.some.call(e, (r) => !t.has(r));
220
+ }
221
+ isWhitespaceOnly(e) {
222
+ let t = U(this, q);
223
+ return Array.prototype.every.call(e, (r) => t.has(r));
224
+ }
225
+ };
226
+ q = /* @__PURE__ */ new WeakMap();
227
+ var xn = En, Dn = [" ", `
228
+ `, "\f", "\r", " "], Tn = new xn(Dn), M = Tn, Bn = class extends Error {
229
+ constructor(t, r, n = "type") {
230
+ super(`Unexpected ${r} node ${n}: ${JSON.stringify(t[n])}.`);
231
+ Ye(this, "name", "UnexpectedNodeError");
232
+ this.node = t;
233
+ }
234
+ }, Ln = Bn;
235
+ function Fn(e) {
236
+ return (e == null ? void 0 : e.type) === "front-matter";
237
+ }
238
+ var He = Fn, qn = /* @__PURE__ */ new Set(["sourceSpan", "startSourceSpan", "endSourceSpan", "nameSpan", "valueSpan", "keySpan", "tagDefinition", "tokens", "valueTokens", "switchValueSourceSpan", "expSourceSpan", "valueSourceSpan"]), Nn = /* @__PURE__ */ new Set(["if", "else if", "for", "switch", "case"]);
239
+ function fr(e, t) {
240
+ var r;
241
+ if (e.type === "text" || e.type === "comment" || He(e) || e.type === "yaml" || e.type === "toml") return null;
242
+ if (e.type === "attribute" && delete t.value, e.type === "docType" && delete t.value, e.type === "angularControlFlowBlock" && (r = e.parameters) != null && r.children) for (let n of t.parameters.children) Nn.has(e.name) ? delete n.expression : n.expression = n.expression.trim();
243
+ e.type === "angularIcuExpression" && (t.switchValue = e.switchValue.trim()), e.type === "angularLetDeclarationInitializer" && delete t.value;
244
+ }
245
+ fr.ignoredProperties = qn;
246
+ var In = fr;
247
+ async function Pn(e, t) {
248
+ if (e.language === "yaml") {
249
+ let r = e.value.trim(), n = r ? await t(r, { parser: "yaml" }) : "";
250
+ return gn([e.startDelimiter, e.explicitLanguage, S, n, n ? S : "", e.endDelimiter]);
251
+ }
252
+ }
253
+ var Mn = Pn;
254
+ function Re(e, t = !0) {
255
+ return [H([D, e]), t ? D : ""];
256
+ }
257
+ function Z(e, t) {
258
+ 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;
259
+ return r && (r.type === "ObjectExpression" || r.type === "ArrayExpression" || (t.parser === "__vue_expression" || t.parser === "__vue_ts_expression") && (r.type === "TemplateLiteral" || r.type === "StringLiteral"));
260
+ }
261
+ async function P(e, t, r, n) {
262
+ r = { __isInHtmlAttribute: !0, __embeddedInHtml: !0, ...r };
263
+ let a = !0;
264
+ n && (r.__onHtmlBindingRoot = (s, u) => {
265
+ a = n(s, u);
266
+ });
267
+ let i = await t(e, r, t);
268
+ return a ? A(i) : Re(i);
269
+ }
270
+ function Hn(e, t, r, n) {
271
+ let { node: a } = r, i = n.originalText.slice(a.sourceSpan.start.offset, a.sourceSpan.end.offset);
272
+ return /^\s*$/u.test(i) ? "" : P(i, e, { parser: "__ng_directive", __isInHtmlAttribute: !1 }, Z);
273
+ }
274
+ var Rn = Hn, Un = (e) => String(e).split(/[/\\]/u).pop();
275
+ function qt(e, t) {
276
+ if (!t) return;
277
+ let r = Un(t).toLowerCase();
278
+ return e.find(({ filenames: n }) => n == null ? void 0 : n.some((a) => a.toLowerCase() === r)) ?? e.find(({ extensions: n }) => n == null ? void 0 : n.some((a) => r.endsWith(a)));
279
+ }
280
+ function Vn(e, t) {
281
+ if (t) return e.find(({ name: r }) => r.toLowerCase() === t) ?? e.find(({ aliases: r }) => r == null ? void 0 : r.includes(t)) ?? e.find(({ extensions: r }) => r == null ? void 0 : r.includes(`.${t}`));
282
+ }
283
+ function On(e, t) {
284
+ let r = e.plugins.flatMap((a) => a.languages ?? []), n = Vn(r, t.language) ?? qt(r, t.physicalFile) ?? qt(r, t.file) ?? (t.physicalFile, void 0);
285
+ return n == null ? void 0 : n.parsers[0];
286
+ }
287
+ var Ue = On, zn = "inline", Wn = { 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", marquee: "inline-block", source: "block", track: "block", details: "block", summary: "block", meter: "inline-block", progress: "inline-block", object: "inline-block", video: "inline-block", audio: "inline-block", select: "inline-block", option: "block", optgroup: "block" }, $n = "normal", jn = { listing: "pre", plaintext: "pre", pre: "pre", xmp: "pre", nobr: "nowrap", table: "initial", textarea: "pre-wrap" };
288
+ function Gn(e) {
289
+ return e.type === "element" && !e.hasExplicitNamespace && !["html", "svg"].includes(e.namespace);
290
+ }
291
+ var pe = Gn, Kn = (e) => L(!1, e, /^[\t\f\r ]*\n/gu, ""), vr = (e) => Kn(M.trimEnd(e)), Yn = (e) => {
292
+ let t = e, r = M.getLeadingWhitespace(t);
293
+ r && (t = t.slice(r.length));
294
+ let n = M.getTrailingWhitespace(t);
295
+ return n && (t = t.slice(0, -n.length)), { leadingWhitespace: r, trailingWhitespace: n, text: t };
296
+ };
297
+ function Cr(e, t) {
298
+ return !!(e.type === "ieConditionalComment" && e.lastChild && !e.lastChild.isSelfClosing && !e.lastChild.endSourceSpan || e.type === "ieConditionalComment" && !e.complete || J(e) && e.children.some((r) => r.type !== "text" && r.type !== "interpolation") || St(e, t) && !R(e) && e.type !== "interpolation");
299
+ }
300
+ function Ve(e) {
301
+ return e.type === "attribute" || !e.parent || !e.prev ? !1 : Xn(e.prev);
302
+ }
303
+ function Xn(e) {
304
+ return e.type === "comment" && e.value.trim() === "prettier-ignore";
305
+ }
306
+ function F(e) {
307
+ return e.type === "text" || e.type === "comment";
308
+ }
309
+ function R(e) {
310
+ return e.type === "element" && (e.fullName === "script" || e.fullName === "style" || e.fullName === "svg:style" || e.fullName === "svg:script" || pe(e) && (e.name === "script" || e.name === "style"));
311
+ }
312
+ function Jn(e) {
313
+ return e.children && !R(e);
314
+ }
315
+ function Qn(e) {
316
+ return R(e) || e.type === "interpolation" || Sr(e);
317
+ }
318
+ function Sr(e) {
319
+ return Er(e).startsWith("pre");
320
+ }
321
+ function Zn(e, t) {
322
+ var r, n;
323
+ let a = i();
324
+ if (a && !e.prev && (n = (r = e.parent) == null ? void 0 : r.tagDefinition) != null && n.ignoreFirstLf) return e.type === "interpolation";
325
+ return a;
326
+ function i() {
327
+ return He(e) || e.type === "angularControlFlowBlock" ? !1 : (e.type === "text" || e.type === "interpolation") && e.prev && (e.prev.type === "text" || e.prev.type === "interpolation") ? !0 : !e.parent || e.parent.cssDisplay === "none" ? !1 : J(e.parent) ? !0 : !(!e.prev && (e.parent.type === "root" || J(e) && e.parent || R(e.parent) || Oe(e.parent, t) || !oa(e.parent.cssDisplay)) || e.prev && !pa(e.prev.cssDisplay));
328
+ }
329
+ }
330
+ function ea(e, t) {
331
+ return He(e) || e.type === "angularControlFlowBlock" ? !1 : (e.type === "text" || e.type === "interpolation") && e.next && (e.next.type === "text" || e.next.type === "interpolation") ? !0 : !e.parent || e.parent.cssDisplay === "none" ? !1 : J(e.parent) ? !0 : !(!e.next && (e.parent.type === "root" || J(e) && e.parent || R(e.parent) || Oe(e.parent, t) || !la(e.parent.cssDisplay)) || e.next && !ca(e.next.cssDisplay));
332
+ }
333
+ function ta(e) {
334
+ return ha(e.cssDisplay) && !R(e);
335
+ }
336
+ function Se(e) {
337
+ return He(e) || e.next && e.sourceSpan.end && e.sourceSpan.end.line + 1 < e.next.sourceSpan.start.line;
338
+ }
339
+ function ra(e) {
340
+ return yr(e) || e.type === "element" && e.children.length > 0 && (["body", "script", "style"].includes(e.name) || e.children.some((t) => aa(t))) || e.firstChild && e.firstChild === e.lastChild && e.firstChild.type !== "text" && _r(e.firstChild) && (!e.lastChild.isTrailingSpaceSensitive || wr(e.lastChild));
341
+ }
342
+ function yr(e) {
343
+ return e.type === "element" && e.children.length > 0 && (["html", "head", "ul", "ol", "select"].includes(e.name) || e.cssDisplay.startsWith("table") && e.cssDisplay !== "table-cell");
344
+ }
345
+ function Xe(e) {
346
+ return Ar(e) || e.prev && na(e.prev) || br(e);
347
+ }
348
+ function na(e) {
349
+ return Ar(e) || e.type === "element" && e.fullName === "br" || br(e);
350
+ }
351
+ function br(e) {
352
+ return _r(e) && wr(e);
353
+ }
354
+ function _r(e) {
355
+ return e.hasLeadingSpaces && (e.prev ? e.prev.sourceSpan.end.line < e.sourceSpan.start.line : e.parent.type === "root" || e.parent.startSourceSpan.end.line < e.sourceSpan.start.line);
356
+ }
357
+ function wr(e) {
358
+ return e.hasTrailingSpaces && (e.next ? e.next.sourceSpan.start.line > e.sourceSpan.end.line : e.parent.type === "root" || e.parent.endSourceSpan && e.parent.endSourceSpan.start.line > e.sourceSpan.end.line);
359
+ }
360
+ function Ar(e) {
361
+ switch (e.type) {
362
+ case "ieConditionalComment":
363
+ case "comment":
364
+ case "directive":
365
+ return !0;
366
+ case "element":
367
+ return ["script", "select"].includes(e.name);
368
+ }
369
+ return !1;
370
+ }
371
+ function Ct(e) {
372
+ return e.lastChild ? Ct(e.lastChild) : e;
373
+ }
374
+ function aa(e) {
375
+ var t;
376
+ return (t = e.children) == null ? void 0 : t.some((r) => r.type !== "text");
377
+ }
378
+ function kr(e) {
379
+ if (e) switch (e) {
380
+ case "module":
381
+ case "text/javascript":
382
+ case "text/babel":
383
+ case "application/javascript":
384
+ return "babel";
385
+ case "application/x-typescript":
386
+ return "typescript";
387
+ case "text/markdown":
388
+ return "markdown";
389
+ case "text/html":
390
+ return "html";
391
+ case "text/x-handlebars-template":
392
+ return "glimmer";
393
+ default:
394
+ if (e.endsWith("json") || e.endsWith("importmap") || e === "speculationrules") return "json";
395
+ }
396
+ }
397
+ function ia(e, t) {
398
+ let { name: r, attrMap: n } = e;
399
+ if (r !== "script" || Object.prototype.hasOwnProperty.call(n, "src")) return;
400
+ let { type: a, lang: i } = e.attrMap;
401
+ return !i && !a ? "babel" : Ue(t, { language: i }) ?? kr(a);
402
+ }
403
+ function sa(e, t) {
404
+ if (!St(e, t)) return;
405
+ let { attrMap: r } = e;
406
+ if (Object.prototype.hasOwnProperty.call(r, "src")) return;
407
+ let { type: n, lang: a } = r;
408
+ return Ue(t, { language: a }) ?? kr(n);
409
+ }
410
+ function ua(e, t) {
411
+ if (e.name !== "style") return;
412
+ let { lang: r } = e.attrMap;
413
+ return r ? Ue(t, { language: r }) : "css";
414
+ }
415
+ function Nt(e, t) {
416
+ return ia(e, t) ?? ua(e, t) ?? sa(e, t);
417
+ }
418
+ function ge(e) {
419
+ return e === "block" || e === "list-item" || e.startsWith("table");
420
+ }
421
+ function oa(e) {
422
+ return !ge(e) && e !== "inline-block";
423
+ }
424
+ function la(e) {
425
+ return !ge(e) && e !== "inline-block";
426
+ }
427
+ function ca(e) {
428
+ return !ge(e);
429
+ }
430
+ function pa(e) {
431
+ return !ge(e);
432
+ }
433
+ function ha(e) {
434
+ return !ge(e) && e !== "inline-block";
435
+ }
436
+ function J(e) {
437
+ return Er(e).startsWith("pre");
438
+ }
439
+ function da(e, t) {
440
+ let r = e;
441
+ for (; r; ) {
442
+ if (t(r)) return !0;
443
+ r = r.parent;
444
+ }
445
+ return !1;
446
+ }
447
+ function ma(e, t) {
448
+ var r;
449
+ if (ee(e, t)) return "block";
450
+ if (((r = e.prev) == null ? void 0 : r.type) === "comment") {
451
+ let a = e.prev.value.match(/^\s*display:\s*([a-z]+)\s*$/u);
452
+ if (a) return a[1];
453
+ }
454
+ let n = !1;
455
+ if (e.type === "element" && e.namespace === "svg") if (da(e, (a) => a.fullName === "svg:foreignObject")) n = !0;
456
+ else return e.name === "svg" ? "inline-block" : "block";
457
+ switch (t.htmlWhitespaceSensitivity) {
458
+ case "strict":
459
+ return "inline";
460
+ case "ignore":
461
+ return "block";
462
+ default:
463
+ return e.type === "element" && (!e.namespace || n || pe(e)) && Wn[e.name] || zn;
464
+ }
465
+ }
466
+ function Er(e) {
467
+ return e.type === "element" && (!e.namespace || pe(e)) && jn[e.name] || $n;
468
+ }
469
+ function ga(e) {
470
+ let t = Number.POSITIVE_INFINITY;
471
+ for (let r of e.split(`
472
+ `)) {
473
+ if (r.length === 0) continue;
474
+ let n = M.getLeadingWhitespaceCount(r);
475
+ if (n === 0) return 0;
476
+ r.length !== n && n < t && (t = n);
477
+ }
478
+ return t === Number.POSITIVE_INFINITY ? 0 : t;
479
+ }
480
+ function xr(e, t = ga(e)) {
481
+ return t === 0 ? e : e.split(`
482
+ `).map((r) => r.slice(t)).join(`
483
+ `);
484
+ }
485
+ function Dr(e) {
486
+ return L(!1, L(!1, e, "&apos;", "'"), "&quot;", '"');
487
+ }
488
+ function O(e) {
489
+ return Dr(e.value);
490
+ }
491
+ var fa = /* @__PURE__ */ new Set(["template", "style", "script"]);
492
+ function Oe(e, t) {
493
+ return ee(e, t) && !fa.has(e.fullName);
494
+ }
495
+ function ee(e, t) {
496
+ return t.parser === "vue" && e.type === "element" && e.parent.type === "root" && e.fullName.toLowerCase() !== "html";
497
+ }
498
+ function St(e, t) {
499
+ return ee(e, t) && (Oe(e, t) || e.attrMap.lang && e.attrMap.lang !== "html");
500
+ }
501
+ function va(e) {
502
+ let t = e.fullName;
503
+ return t.charAt(0) === "#" || t === "slot-scope" || t === "v-slot" || t.startsWith("v-slot:");
504
+ }
505
+ function Ca(e, t) {
506
+ let r = e.parent;
507
+ if (!ee(r, t)) return !1;
508
+ let n = r.fullName, a = e.fullName;
509
+ return n === "script" && a === "setup" || n === "style" && a === "vars";
510
+ }
511
+ function Tr(e, t = e.value) {
512
+ return e.parent.isWhitespaceSensitive ? e.parent.isIndentationSensitive ? I(t) : I(xr(vr(t)), S) : Q(k, M.split(t));
513
+ }
514
+ function Br(e, t) {
515
+ return ee(e, t) && e.name === "script";
516
+ }
517
+ var Lr = /\{\{(.+?)\}\}/su;
518
+ async function Sa(e, t) {
519
+ let r = [];
520
+ for (let [n, a] of e.split(Lr).entries()) if (n % 2 === 0) r.push(I(a));
521
+ else try {
522
+ r.push(A(["{{", H([k, await P(a, t, { parser: "__ng_interpolation", __isInHtmlInterpolation: !0 })]), k, "}}"]));
523
+ } catch {
524
+ r.push("{{", I(a), "}}");
525
+ }
526
+ return r;
527
+ }
528
+ function yt({ parser: e }) {
529
+ return (t, r, n) => P(O(n.node), t, { parser: e }, Z);
530
+ }
531
+ var ya = yt({ parser: "__ng_action" }), ba = yt({ parser: "__ng_binding" }), _a = yt({ parser: "__ng_directive" });
532
+ function wa(e, t) {
533
+ if (t.parser !== "angular") return;
534
+ let { node: r } = e, n = r.fullName;
535
+ if (n.startsWith("(") && n.endsWith(")") || n.startsWith("on-")) return ya;
536
+ if (n.startsWith("[") && n.endsWith("]") || /^bind(?:on)?-/u.test(n) || /^ng-(?:if|show|hide|class|style)$/u.test(n)) return ba;
537
+ if (n.startsWith("*")) return _a;
538
+ let a = O(r);
539
+ if (/^i18n(?:-.+)?$/u.test(n)) return () => Re(gr(Tr(r, a.trim())), !a.includes("@@"));
540
+ if (Lr.test(a)) return (i) => Sa(a, i);
541
+ }
542
+ var Aa = wa;
543
+ function ka(e, t) {
544
+ let { node: r } = e, n = O(r);
545
+ if (r.fullName === "class" && !t.parentParser && !n.includes("{{")) return () => n.trim().split(/\s+/u).join(" ");
546
+ }
547
+ var Ea = ka;
548
+ function It(e) {
549
+ return e === " " || e === `
550
+ ` || e === "\f" || e === "\r" || e === " ";
551
+ }
552
+ var xa = /^[ \t\n\r\u000c]+/, Da = /^[, \t\n\r\u000c]+/, Ta = /^[^ \t\n\r\u000c]+/, Ba = /[,]+$/, Pt = /^\d+$/, La = /^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/;
553
+ function Fa(e) {
554
+ let t = e.length, r, n, a, i, s, u = 0, o;
555
+ function p(m) {
556
+ let C, _ = m.exec(e.substring(u));
557
+ if (_) return [C] = _, u += C.length, C;
558
+ }
559
+ let l = [];
560
+ for (; ; ) {
561
+ if (p(Da), u >= t) {
562
+ if (l.length === 0) throw new Error("Must contain one or more image candidate strings.");
563
+ return l;
564
+ }
565
+ o = u, r = p(Ta), n = [], r.slice(-1) === "," ? (r = r.replace(Ba, ""), f()) : v();
566
+ }
567
+ function v() {
568
+ for (p(xa), a = "", i = "in descriptor"; ; ) {
569
+ if (s = e.charAt(u), i === "in descriptor") if (It(s)) a && (n.push(a), a = "", i = "after descriptor");
570
+ else if (s === ",") {
571
+ u += 1, a && n.push(a), f();
572
+ return;
573
+ } else if (s === "(") a += s, i = "in parens";
574
+ else if (s === "") {
575
+ a && n.push(a), f();
576
+ return;
577
+ } else a += s;
578
+ else if (i === "in parens") if (s === ")") a += s, i = "in descriptor";
579
+ else if (s === "") {
580
+ n.push(a), f();
581
+ return;
582
+ } else a += s;
583
+ else if (i === "after descriptor" && !It(s)) if (s === "") {
584
+ f();
585
+ return;
586
+ } else i = "in descriptor", u -= 1;
587
+ u += 1;
588
+ }
589
+ }
590
+ function f() {
591
+ let m = !1, C, _, E, x, c = {}, g, w, y, T, K;
592
+ for (x = 0; x < n.length; x++) g = n[x], w = g[g.length - 1], y = g.substring(0, g.length - 1), T = parseInt(y, 10), K = parseFloat(y), Pt.test(y) && w === "w" ? ((C || _) && (m = !0), T === 0 ? m = !0 : C = T) : La.test(y) && w === "x" ? ((C || _ || E) && (m = !0), K < 0 ? m = !0 : _ = K) : Pt.test(y) && w === "h" ? ((E || _) && (m = !0), T === 0 ? m = !0 : E = T) : m = !0;
593
+ if (!m) c.source = { value: r, startOffset: o }, C && (c.width = { value: C }), _ && (c.density = { value: _ }), E && (c.height = { value: E }), l.push(c);
594
+ else throw new Error(`Invalid srcset descriptor found in "${e}" at "${g}".`);
595
+ }
596
+ }
597
+ var qa = Fa;
598
+ function Na(e) {
599
+ if (e.node.fullName === "srcset" && (e.parent.fullName === "img" || e.parent.fullName === "source")) return () => Pa(O(e.node));
600
+ }
601
+ var Fr = { width: "w", height: "h", density: "x" }, Ia = Object.keys(Fr);
602
+ function Pa(e) {
603
+ let t = qa(e), r = Ia.filter((l) => t.some((v) => Object.prototype.hasOwnProperty.call(v, l)));
604
+ if (r.length > 1) throw new Error("Mixed descriptor in srcset is not supported");
605
+ let [n] = r, a = Fr[n], i = t.map((l) => l.source.value), s = Math.max(...i.map((l) => l.length)), u = t.map((l) => l[n] ? String(l[n].value) : ""), o = u.map((l) => {
606
+ let v = l.indexOf(".");
607
+ return v === -1 ? l.length : v;
608
+ }), p = Math.max(...o);
609
+ return Re(Q([",", k], i.map((l, v) => {
610
+ let f = [l], m = u[v];
611
+ if (m) {
612
+ let C = s - l.length + 1, _ = p - o[v], E = " ".repeat(C + _);
613
+ f.push(ke(E, " "), m + a);
614
+ }
615
+ return f;
616
+ })));
617
+ }
618
+ var Ma = Na;
619
+ function Ha(e, t) {
620
+ let { node: r } = e, n = O(e.node).trim();
621
+ if (r.fullName === "style" && !t.parentParser && !n.includes("{{")) return async (a) => Re(await a(n, { parser: "css", __isHTMLStyleAttribute: !0 }));
622
+ }
623
+ var Je = /* @__PURE__ */ new WeakMap();
624
+ function Ra(e, t) {
625
+ let { root: r } = e;
626
+ return Je.has(r) || Je.set(r, r.children.some((n) => Br(n, t) && ["ts", "typescript"].includes(n.attrMap.lang))), Je.get(r);
627
+ }
628
+ var bt = Ra;
629
+ function Ua(e, t, r) {
630
+ let { node: n } = r, a = O(n);
631
+ return P(`type T<${a}> = any`, e, { parser: "babel-ts", __isEmbeddedTypescriptGenericParameters: !0 }, Z);
632
+ }
633
+ function Va(e, t, { parseWithTs: r }) {
634
+ return P(`function _(${e}) {}`, t, { parser: r ? "babel-ts" : "babel", __isVueBindings: !0 });
635
+ }
636
+ function Oa(e) {
637
+ let t = /^(?:[\w$]+|\([^)]*\))\s*=>|^function\s*\(/u, r = /^[$_a-z][\w$]*(?:\.[$_a-z][\w$]*|\['[^']*'\]|\["[^"]*"\]|\[\d+\]|\[[$_a-z][\w$]*\])*$/iu, n = e.trim();
638
+ return t.test(n) || r.test(n);
639
+ }
640
+ async function za(e, t, r, n) {
641
+ let a = O(r.node), { left: i, operator: s, right: u } = Wa(a), o = bt(r, n);
642
+ return [A(await P(`function _(${i}) {}`, e, { parser: o ? "babel-ts" : "babel", __isVueForBindingLeft: !0 })), " ", s, " ", await P(u, e, { parser: o ? "__ts_expression" : "__js_expression" })];
643
+ }
644
+ function Wa(e) {
645
+ let t = /(.*?)\s+(in|of)\s+(.*)/su, r = /,([^,\]}]*)(?:,([^,\]}]*))?$/u, n = /^\(|\)$/gu, a = e.match(t);
646
+ if (!a) return;
647
+ let i = {};
648
+ if (i.for = a[3].trim(), !i.for) return;
649
+ let s = L(!1, a[1].trim(), n, ""), u = s.match(r);
650
+ u ? (i.alias = s.replace(r, ""), i.iterator1 = u[1].trim(), u[2] && (i.iterator2 = u[2].trim())) : i.alias = s;
651
+ let o = [i.alias, i.iterator1, i.iterator2];
652
+ if (!o.some((p, l) => !p && (l === 0 || o.slice(l + 1).some(Boolean)))) return { left: o.filter(Boolean).join(","), operator: a[2], right: i.for };
653
+ }
654
+ function $a(e, t) {
655
+ if (t.parser !== "vue") return;
656
+ let { node: r } = e, n = r.fullName;
657
+ if (n === "v-for") return za;
658
+ if (n === "generic" && Br(r.parent, t)) return Ua;
659
+ let a = O(r), i = bt(e, t);
660
+ if (va(r) || Ca(r, t)) return (s) => Va(a, s, { parseWithTs: i });
661
+ if (n.startsWith("@") || n.startsWith("v-on:")) return (s) => ja(a, s, { parseWithTs: i });
662
+ if (n.startsWith(":") || n.startsWith("v-bind:")) return (s) => Ga(a, s, { parseWithTs: i });
663
+ if (n.startsWith("v-")) return (s) => qr(a, s, { parseWithTs: i });
664
+ }
665
+ function ja(e, t, { parseWithTs: r }) {
666
+ return Oa(e) ? qr(e, t, { parseWithTs: r }) : P(e, t, { parser: r ? "__vue_ts_event_binding" : "__vue_event_binding" }, Z);
667
+ }
668
+ function Ga(e, t, { parseWithTs: r }) {
669
+ return P(e, t, { parser: r ? "__vue_ts_expression" : "__vue_expression" }, Z);
670
+ }
671
+ function qr(e, t, { parseWithTs: r }) {
672
+ return P(e, t, { parser: r ? "__ts_expression" : "__js_expression" }, Z);
673
+ }
674
+ var Ka = $a;
675
+ function Ya(e, t) {
676
+ let { node: r } = e;
677
+ if (r.value) {
678
+ if (/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(t.originalText.slice(r.valueSpan.start.offset, r.valueSpan.end.offset)) || t.parser === "lwc" && r.value.startsWith("{") && r.value.endsWith("}")) return [r.rawName, "=", r.value];
679
+ for (let n of [Ma, Ha, Ea, Ka, Aa]) {
680
+ let a = n(e, t);
681
+ if (a) return Xa(a);
682
+ }
683
+ }
684
+ }
685
+ function Xa(e) {
686
+ return async (t, r, n, a) => {
687
+ let i = await e(t, r, n, a);
688
+ if (i) return i = vt(i, (s) => typeof s == "string" ? L(!1, s, '"', "&quot;") : s), [n.node.rawName, '="', A(i), '"'];
689
+ };
690
+ }
691
+ var Ja = Ya, Nr = new Proxy(() => {
692
+ }, { get: () => Nr }), Ir = Nr;
693
+ function Qa(e) {
694
+ return Array.isArray(e) && e.length > 0;
695
+ }
696
+ var _t = Qa;
697
+ function ze(e) {
698
+ return e.sourceSpan.start.offset;
699
+ }
700
+ function We(e) {
701
+ return e.sourceSpan.end.offset;
702
+ }
703
+ function nt(e, t) {
704
+ return [e.isSelfClosing ? "" : Za(e, t), ue(e, t)];
705
+ }
706
+ function Za(e, t) {
707
+ return e.lastChild && he(e.lastChild) ? "" : [ei(e, t), wt(e, t)];
708
+ }
709
+ function ue(e, t) {
710
+ return (e.next ? $(e.next) : ve(e.parent)) ? "" : [fe(e, t), W(e, t)];
711
+ }
712
+ function ei(e, t) {
713
+ return ve(e) ? fe(e.lastChild, t) : "";
714
+ }
715
+ function W(e, t) {
716
+ return he(e) ? wt(e.parent, t) : $e(e) ? At(e.next) : "";
717
+ }
718
+ function wt(e, t) {
719
+ if (Ir(!e.isSelfClosing), Pr(e, t)) return "";
720
+ switch (e.type) {
721
+ case "ieConditionalComment":
722
+ return "<!";
723
+ case "element":
724
+ if (e.hasHtmComponentClosingTag) return "<//";
725
+ default:
726
+ return `</${e.rawName}`;
727
+ }
728
+ }
729
+ function fe(e, t) {
730
+ if (Pr(e, t)) return "";
731
+ switch (e.type) {
732
+ case "ieConditionalComment":
733
+ case "ieConditionalEndComment":
734
+ return "[endif]-->";
735
+ case "ieConditionalStartComment":
736
+ return "]><!-->";
737
+ case "interpolation":
738
+ return "}}";
739
+ case "angularIcuExpression":
740
+ return "}";
741
+ case "element":
742
+ if (e.isSelfClosing) return "/>";
743
+ default:
744
+ return ">";
745
+ }
746
+ }
747
+ function Pr(e, t) {
748
+ return !e.isSelfClosing && !e.endSourceSpan && (Ve(e) || Cr(e.parent, t));
749
+ }
750
+ function $(e) {
751
+ return e.prev && e.prev.type !== "docType" && e.type !== "angularControlFlowBlock" && !F(e.prev) && e.isLeadingSpaceSensitive && !e.hasLeadingSpaces;
752
+ }
753
+ function ve(e) {
754
+ var t;
755
+ return ((t = e.lastChild) == null ? void 0 : t.isTrailingSpaceSensitive) && !e.lastChild.hasTrailingSpaces && !F(Ct(e.lastChild)) && !J(e);
756
+ }
757
+ function he(e) {
758
+ return !e.next && !e.hasTrailingSpaces && e.isTrailingSpaceSensitive && F(Ct(e));
759
+ }
760
+ function $e(e) {
761
+ return e.next && !F(e.next) && F(e) && e.isTrailingSpaceSensitive && !e.hasTrailingSpaces;
762
+ }
763
+ function ti(e) {
764
+ let t = e.trim().match(/^prettier-ignore-attribute(?:\s+(.+))?$/su);
765
+ return t ? t[1] ? t[1].split(/\s+/u) : !0 : !1;
766
+ }
767
+ function je(e) {
768
+ return !e.prev && e.isLeadingSpaceSensitive && !e.hasLeadingSpaces;
769
+ }
770
+ function ri(e, t, r) {
771
+ var n;
772
+ let { node: a } = e;
773
+ if (!_t(a.attrs)) return a.isSelfClosing ? " " : "";
774
+ let i = ((n = a.prev) == null ? void 0 : n.type) === "comment" && ti(a.prev.value), s = typeof i == "boolean" ? () => i : Array.isArray(i) ? (v) => i.includes(v.rawName) : () => !1, u = e.map(({ node: v }) => s(v) ? I(t.originalText.slice(ze(v), We(v))) : r(), "attrs"), o = a.type === "element" && a.fullName === "script" && a.attrs.length === 1 && a.attrs[0].fullName === "src" && a.children.length === 0, p = t.singleAttributePerLine && a.attrs.length > 1 && !ee(a, t) ? S : k, l = [H([o ? " " : k, Q(p, u)])];
775
+ return a.firstChild && je(a.firstChild) || a.isSelfClosing && ve(a.parent) || o ? l.push(a.isSelfClosing ? " " : "") : l.push(t.bracketSameLine ? a.isSelfClosing ? " " : "" : a.isSelfClosing ? k : D), l;
776
+ }
777
+ function ni(e) {
778
+ return e.firstChild && je(e.firstChild) ? "" : kt(e);
779
+ }
780
+ function at(e, t, r) {
781
+ let { node: n } = e;
782
+ return [oe(n, t), ri(e, t, r), n.isSelfClosing ? "" : ni(n)];
783
+ }
784
+ function oe(e, t) {
785
+ return e.prev && $e(e.prev) ? "" : [j(e, t), At(e)];
786
+ }
787
+ function j(e, t) {
788
+ return je(e) ? kt(e.parent) : $(e) ? fe(e.prev, t) : "";
789
+ }
790
+ function At(e) {
791
+ switch (e.type) {
792
+ case "ieConditionalComment":
793
+ case "ieConditionalStartComment":
794
+ return `<!--[if ${e.condition}`;
795
+ case "ieConditionalEndComment":
796
+ return "<!--<!";
797
+ case "interpolation":
798
+ return "{{";
799
+ case "docType":
800
+ return e.value === "html" ? "<!doctype" : "<!DOCTYPE";
801
+ case "angularIcuExpression":
802
+ return "{";
803
+ case "element":
804
+ if (e.condition) return `<!--[if ${e.condition}]><!--><${e.rawName}`;
805
+ default:
806
+ return `<${e.rawName}`;
807
+ }
808
+ }
809
+ function kt(e) {
810
+ switch (Ir(!e.isSelfClosing), e.type) {
811
+ case "ieConditionalComment":
812
+ return "]>";
813
+ case "element":
814
+ if (e.condition) return "><!--<![endif]-->";
815
+ default:
816
+ return ">";
817
+ }
818
+ }
819
+ function ai(e, t) {
820
+ if (!e.endSourceSpan) return "";
821
+ let r = e.startSourceSpan.end.offset;
822
+ e.firstChild && je(e.firstChild) && (r -= kt(e).length);
823
+ let n = e.endSourceSpan.start.offset;
824
+ return e.lastChild && he(e.lastChild) ? n += wt(e, t).length : ve(e) && (n -= fe(e.lastChild, t).length), t.originalText.slice(r, n);
825
+ }
826
+ var Mr = ai, ii = /* @__PURE__ */ new Set(["if", "else if", "for", "switch", "case"]);
827
+ function si(e, t) {
828
+ let { node: r } = e;
829
+ switch (r.type) {
830
+ case "element":
831
+ if (R(r) || r.type === "interpolation") return;
832
+ if (!r.isSelfClosing && St(r, t)) {
833
+ let n = Nt(r, t);
834
+ return n ? async (a, i) => {
835
+ let s = Mr(r, t), u = /^\s*$/u.test(s), o = "";
836
+ return u || (o = await a(vr(s), { parser: n, __embeddedInHtml: !0 }), u = o === ""), [j(r, t), A(at(e, t, i)), u ? "" : S, o, u ? "" : S, nt(r, t), W(r, t)];
837
+ } : void 0;
838
+ }
839
+ break;
840
+ case "text":
841
+ if (R(r.parent)) {
842
+ let n = Nt(r.parent, t);
843
+ if (n) return async (a) => {
844
+ let i = n === "markdown" ? xr(r.value.replace(/^[^\S\n]*\n/u, "")) : r.value, s = { parser: n, __embeddedInHtml: !0 };
845
+ if (t.parser === "html" && n === "babel") {
846
+ let u = "script", { attrMap: o } = r.parent;
847
+ o && (o.type === "module" || o.type === "text/babel" && o["data-type"] === "module") && (u = "module"), s.__babelSourceType = u;
848
+ }
849
+ return [de, j(r, t), await a(i, s), W(r, t)];
850
+ };
851
+ } else if (r.parent.type === "interpolation") return async (n) => {
852
+ let a = { __isInHtmlInterpolation: !0, __embeddedInHtml: !0 };
853
+ return t.parser === "angular" ? a.parser = "__ng_interpolation" : t.parser === "vue" ? a.parser = bt(e, t) ? "__vue_ts_expression" : "__vue_expression" : a.parser = "__js_expression", [H([k, await n(r.value, a)]), r.parent.next && $(r.parent.next) ? " " : k];
854
+ };
855
+ break;
856
+ case "attribute":
857
+ return Ja(e, t);
858
+ case "front-matter":
859
+ return (n) => Mn(r, n);
860
+ case "angularControlFlowBlockParameters":
861
+ return ii.has(e.parent.name) ? Rn : void 0;
862
+ case "angularLetDeclarationInitializer":
863
+ return (n) => P(r.value, n, { parser: "__ng_binding", __isInHtmlAttribute: !1 });
864
+ }
865
+ }
866
+ var ui = si, re = null;
867
+ function le(e) {
868
+ if (re !== null && typeof re.property) {
869
+ let t = re;
870
+ return re = le.prototype = null, t;
871
+ }
872
+ return re = le.prototype = e ?? /* @__PURE__ */ Object.create(null), new le();
873
+ }
874
+ var oi = 10;
875
+ for (let e = 0; e <= oi; e++) le();
876
+ function li(e) {
877
+ return le(e);
878
+ }
879
+ function ci(e, t = "type") {
880
+ li(e);
881
+ function r(n) {
882
+ let a = n[t], i = e[a];
883
+ if (!Array.isArray(i)) throw Object.assign(new Error(`Missing visitor keys for '${a}'.`), { node: n });
884
+ return i;
885
+ }
886
+ return r;
887
+ }
888
+ var pi = ci, hi = { "front-matter": [], root: ["children"], element: ["attrs", "children"], ieConditionalComment: ["children"], ieConditionalStartComment: [], ieConditionalEndComment: [], interpolation: ["children"], text: ["children"], docType: [], comment: [], attribute: [], cdata: [], angularControlFlowBlock: ["children", "parameters"], angularControlFlowBlockParameters: ["children"], angularControlFlowBlockParameter: [], angularLetDeclaration: ["init"], angularLetDeclarationInitializer: [], angularIcuExpression: ["cases"], angularIcuCase: ["expression"] }, di = hi, mi = pi(di), gi = mi;
889
+ function fi(e) {
890
+ return /^\s*<!--\s*@(?:format|prettier)\s*-->/u.test(e);
891
+ }
892
+ function vi(e) {
893
+ return `<!-- @format -->
894
+
895
+ ` + e;
896
+ }
897
+ var Ci = /* @__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"])]]);
898
+ function Hr(e) {
899
+ let t = We(e);
900
+ return e.type === "element" && !e.endSourceSpan && _t(e.children) ? Math.max(t, Hr(me(!1, e.children, -1))) : t;
901
+ }
902
+ function ne(e, t, r) {
903
+ let n = e.node;
904
+ if (Ve(n)) {
905
+ let a = Hr(n);
906
+ return [j(n, t), I(M.trimEnd(t.originalText.slice(ze(n) + (n.prev && $e(n.prev) ? At(n).length : 0), a - (n.next && $(n.next) ? fe(n, t).length : 0)))), W(n, t)];
907
+ }
908
+ return r();
909
+ }
910
+ function ye(e, t) {
911
+ return F(e) && F(t) ? e.isTrailingSpaceSensitive ? e.hasTrailingSpaces ? Xe(t) ? S : k : "" : Xe(t) ? S : D : $e(e) && (Ve(t) || t.firstChild || t.isSelfClosing || t.type === "element" && t.attrs.length > 0) || e.type === "element" && e.isSelfClosing && $(t) ? "" : !t.isLeadingSpaceSensitive || Xe(t) || $(t) && e.lastChild && he(e.lastChild) && e.lastChild.lastChild && he(e.lastChild.lastChild) ? S : t.hasLeadingSpaces ? k : D;
912
+ }
913
+ function Et(e, t, r) {
914
+ let { node: n } = e;
915
+ if (yr(n)) return [de, ...e.map((i) => {
916
+ let s = i.node, u = s.prev ? ye(s.prev, s) : "";
917
+ return [u ? [u, Se(s.prev) ? S : ""] : "", ne(i, t, r)];
918
+ }, "children")];
919
+ let a = n.children.map(() => Symbol(""));
920
+ return e.map((i, s) => {
921
+ let u = i.node;
922
+ if (F(u)) {
923
+ if (u.prev && F(u.prev)) {
924
+ let C = ye(u.prev, u);
925
+ if (C) return Se(u.prev) ? [S, S, ne(i, t, r)] : [C, ne(i, t, r)];
926
+ }
927
+ return ne(i, t, r);
928
+ }
929
+ let o = [], p = [], l = [], v = [], f = u.prev ? ye(u.prev, u) : "", m = u.next ? ye(u, u.next) : "";
930
+ return f && (Se(u.prev) ? o.push(S, S) : f === S ? o.push(S) : F(u.prev) ? p.push(f) : p.push(ke("", D, { groupId: a[s - 1] }))), m && (Se(u) ? F(u.next) && v.push(S, S) : m === S ? F(u.next) && v.push(S) : l.push(m)), [...o, A([...p, A([ne(i, t, r), ...l], { id: a[s] })]), ...v];
931
+ }, "children");
932
+ }
933
+ function Si(e, t, r) {
934
+ let { node: n } = e, a = [];
935
+ yi(e) && a.push("} "), a.push("@", n.name), n.parameters && a.push(" (", A(r("parameters")), ")"), a.push(" {");
936
+ let i = Rr(n);
937
+ return n.children.length > 0 ? (n.firstChild.hasLeadingSpaces = !0, n.lastChild.hasTrailingSpaces = !0, a.push(H([S, Et(e, t, r)])), i && a.push(S, "}")) : i && a.push("}"), A(a, { shouldBreak: !0 });
938
+ }
939
+ function Rr(e) {
940
+ var t, r;
941
+ return !(((t = e.next) == null ? void 0 : t.type) === "angularControlFlowBlock" && (r = Ci.get(e.name)) != null && r.has(e.next.name));
942
+ }
943
+ function yi(e) {
944
+ let { previous: t } = e;
945
+ return (t == null ? void 0 : t.type) === "angularControlFlowBlock" && !Ve(t) && !Rr(t);
946
+ }
947
+ function bi(e, t, r) {
948
+ return [H([D, Q([";", k], e.map(r, "children"))]), D];
949
+ }
950
+ function _i(e, t, r) {
951
+ let { node: n } = e;
952
+ return [oe(n, t), A([n.switchValue.trim(), ", ", n.clause, n.cases.length > 0 ? [",", H([k, Q(k, e.map(r, "cases"))])] : "", D]), ue(n, t)];
953
+ }
954
+ function wi(e, t, r) {
955
+ let { node: n } = e;
956
+ return [n.value, " {", A([H([D, e.map(({ node: a }) => a.type === "text" && !M.trim(a.value) ? "" : r(), "expression")]), D]), "}"];
957
+ }
958
+ function Ai(e, t, r) {
959
+ let { node: n } = e;
960
+ if (Cr(n, t)) return [j(n, t), A(at(e, t, r)), I(Mr(n, t)), ...nt(n, t), W(n, t)];
961
+ let a = n.children.length === 1 && (n.firstChild.type === "interpolation" || n.firstChild.type === "angularIcuExpression") && n.firstChild.isLeadingSpaceSensitive && !n.firstChild.hasLeadingSpaces && n.lastChild.isTrailingSpaceSensitive && !n.lastChild.hasTrailingSpaces, i = Symbol("element-attr-group-id"), s = (l) => A([A(at(e, t, r), { id: i }), l, nt(n, t)]), u = (l) => a ? fn(l, { groupId: i }) : (R(n) || Oe(n, t)) && n.parent.type === "root" && t.parser === "vue" && !t.vueIndentScriptAndStyle ? l : H(l), o = () => a ? ke(D, "", { groupId: i }) : n.firstChild.hasLeadingSpaces && n.firstChild.isLeadingSpaceSensitive ? k : n.firstChild.type === "text" && n.isWhitespaceSensitive && n.isIndentationSensitive ? mn(D) : D, p = () => (n.next ? $(n.next) : ve(n.parent)) ? n.lastChild.hasTrailingSpaces && n.lastChild.isTrailingSpaceSensitive ? " " : "" : a ? ke(D, "", { groupId: i }) : n.lastChild.hasTrailingSpaces && n.lastChild.isTrailingSpaceSensitive ? k : (n.lastChild.type === "comment" || n.lastChild.type === "text" && n.isWhitespaceSensitive && n.isIndentationSensitive) && new RegExp(`\\n[\\t ]{${t.tabWidth * (e.ancestors.length - 1)}}$`, "u").test(n.lastChild.value) ? "" : D;
962
+ return n.children.length === 0 ? s(n.hasDanglingSpaces && n.isDanglingSpaceSensitive ? k : "") : s([ra(n) ? de : "", u([o(), Et(e, t, r)]), p()]);
963
+ }
964
+ function Ee(e) {
965
+ return e >= 9 && e <= 32 || e == 160;
966
+ }
967
+ function xt(e) {
968
+ return 48 <= e && e <= 57;
969
+ }
970
+ function xe(e) {
971
+ return e >= 97 && e <= 122 || e >= 65 && e <= 90;
972
+ }
973
+ function ki(e) {
974
+ return e >= 97 && e <= 102 || e >= 65 && e <= 70 || xt(e);
975
+ }
976
+ function Dt(e) {
977
+ return e === 10 || e === 13;
978
+ }
979
+ function Mt(e) {
980
+ return 48 <= e && e <= 55;
981
+ }
982
+ function Qe(e) {
983
+ return e === 39 || e === 34 || e === 96;
984
+ }
985
+ var Ei = /-+([a-z0-9])/g;
986
+ function xi(e) {
987
+ return e.replace(Ei, (...t) => t[1].toUpperCase());
988
+ }
989
+ var it = class Ur {
990
+ constructor(t, r, n, a) {
991
+ this.file = t, this.offset = r, this.line = n, this.col = a;
992
+ }
993
+ toString() {
994
+ return this.offset != null ? `${this.file.url}@${this.line}:${this.col}` : this.file.url;
995
+ }
996
+ moveBy(t) {
997
+ let r = this.file.content, n = r.length, a = this.offset, i = this.line, s = this.col;
998
+ for (; a > 0 && t < 0; ) if (a--, t++, r.charCodeAt(a) == 10) {
999
+ i--;
1000
+ let u = r.substring(0, a - 1).lastIndexOf(`
1001
+ `);
1002
+ s = u > 0 ? a - u : a;
1003
+ } else s--;
1004
+ for (; a < n && t > 0; ) {
1005
+ let u = r.charCodeAt(a);
1006
+ a++, t--, u == 10 ? (i++, s = 0) : s++;
1007
+ }
1008
+ return new Ur(this.file, a, i, s);
1009
+ }
1010
+ getContext(t, r) {
1011
+ let n = this.file.content, a = this.offset;
1012
+ if (a != null) {
1013
+ a > n.length - 1 && (a = n.length - 1);
1014
+ let i = a, s = 0, u = 0;
1015
+ for (; s < t && a > 0 && (a--, s++, !(n[a] == `
1016
+ ` && ++u == r)); ) ;
1017
+ for (s = 0, u = 0; s < t && i < n.length - 1 && (i++, s++, !(n[i] == `
1018
+ ` && ++u == r)); ) ;
1019
+ return { before: n.substring(a, this.offset), after: n.substring(this.offset, i + 1) };
1020
+ }
1021
+ return null;
1022
+ }
1023
+ }, Vr = class {
1024
+ constructor(e, t) {
1025
+ this.content = e, this.url = t;
1026
+ }
1027
+ }, d = class {
1028
+ constructor(e, t, r = e, n = null) {
1029
+ this.start = e, this.end = t, this.fullStart = r, this.details = n;
1030
+ }
1031
+ toString() {
1032
+ return this.start.file.content.substring(this.start.offset, this.end.offset);
1033
+ }
1034
+ }, De;
1035
+ (function(e) {
1036
+ e[e.WARNING = 0] = "WARNING", e[e.ERROR = 1] = "ERROR";
1037
+ })(De || (De = {}));
1038
+ var Or = class {
1039
+ constructor(e, t, r = De.ERROR) {
1040
+ this.span = e, this.msg = t, this.level = r;
1041
+ }
1042
+ contextualMessage() {
1043
+ let e = this.span.start.getContext(100, 3);
1044
+ return e ? `${this.msg} ("${e.before}[${De[this.level]} ->]${e.after}")` : this.msg;
1045
+ }
1046
+ toString() {
1047
+ let e = this.span.details ? `, ${this.span.details}` : "";
1048
+ return `${this.contextualMessage()}: ${this.span.start}${e}`;
1049
+ }
1050
+ }, Di = [Bi, Li, qi, Ii, Pi, Ri, Mi, Hi, Ui, Ni];
1051
+ function Ti(e, t) {
1052
+ for (let r of Di) r(e, t);
1053
+ return e;
1054
+ }
1055
+ function Bi(e) {
1056
+ e.walk((t) => {
1057
+ if (t.type === "element" && t.tagDefinition.ignoreFirstLf && t.children.length > 0 && t.children[0].type === "text" && t.children[0].value[0] === `
1058
+ `) {
1059
+ let r = t.children[0];
1060
+ r.value.length === 1 ? t.removeChild(r) : r.value = r.value.slice(1);
1061
+ }
1062
+ });
1063
+ }
1064
+ function Li(e) {
1065
+ let t = (r) => {
1066
+ var n, a;
1067
+ return r.type === "element" && ((n = r.prev) == null ? void 0 : n.type) === "ieConditionalStartComment" && r.prev.sourceSpan.end.offset === r.startSourceSpan.start.offset && ((a = r.firstChild) == null ? void 0 : a.type) === "ieConditionalEndComment" && r.firstChild.sourceSpan.start.offset === r.startSourceSpan.end.offset;
1068
+ };
1069
+ e.walk((r) => {
1070
+ if (r.children) for (let n = 0; n < r.children.length; n++) {
1071
+ let a = r.children[n];
1072
+ if (!t(a)) continue;
1073
+ let i = a.prev, s = a.firstChild;
1074
+ r.removeChild(i), n--;
1075
+ let u = new d(i.sourceSpan.start, s.sourceSpan.end), o = new d(u.start, a.sourceSpan.end);
1076
+ a.condition = i.condition, a.sourceSpan = o, a.startSourceSpan = u, a.removeChild(s);
1077
+ }
1078
+ });
1079
+ }
1080
+ function Fi(e, t, r) {
1081
+ e.walk((n) => {
1082
+ if (n.children) for (let a = 0; a < n.children.length; a++) {
1083
+ let i = n.children[a];
1084
+ if (i.type !== "text" && !t(i)) continue;
1085
+ i.type !== "text" && (i.type = "text", i.value = r(i));
1086
+ let s = i.prev;
1087
+ !s || s.type !== "text" || (s.value += i.value, s.sourceSpan = new d(s.sourceSpan.start, i.sourceSpan.end), n.removeChild(i), a--);
1088
+ }
1089
+ });
1090
+ }
1091
+ function qi(e) {
1092
+ return Fi(e, (t) => t.type === "cdata", (t) => `<![CDATA[${t.value}]]>`);
1093
+ }
1094
+ function Ni(e) {
1095
+ let t = (r) => {
1096
+ var n, a;
1097
+ return r.type === "element" && r.attrs.length === 0 && r.children.length === 1 && r.firstChild.type === "text" && !M.hasWhitespaceCharacter(r.children[0].value) && !r.firstChild.hasLeadingSpaces && !r.firstChild.hasTrailingSpaces && r.isLeadingSpaceSensitive && !r.hasLeadingSpaces && r.isTrailingSpaceSensitive && !r.hasTrailingSpaces && ((n = r.prev) == null ? void 0 : n.type) === "text" && ((a = r.next) == null ? void 0 : a.type) === "text";
1098
+ };
1099
+ e.walk((r) => {
1100
+ if (r.children) for (let n = 0; n < r.children.length; n++) {
1101
+ let a = r.children[n];
1102
+ if (!t(a)) continue;
1103
+ let i = a.prev, s = a.next;
1104
+ i.value += `<${a.rawName}>` + a.firstChild.value + `</${a.rawName}>` + s.value, i.sourceSpan = new d(i.sourceSpan.start, s.sourceSpan.end), i.isTrailingSpaceSensitive = s.isTrailingSpaceSensitive, i.hasTrailingSpaces = s.hasTrailingSpaces, r.removeChild(a), n--, r.removeChild(s);
1105
+ }
1106
+ });
1107
+ }
1108
+ function Ii(e, t) {
1109
+ if (t.parser === "html") return;
1110
+ let r = /\{\{(.+?)\}\}/su;
1111
+ e.walk((n) => {
1112
+ if (Jn(n)) for (let a of n.children) {
1113
+ if (a.type !== "text") continue;
1114
+ let i = a.sourceSpan.start, s = null, u = a.value.split(r);
1115
+ for (let o = 0; o < u.length; o++, i = s) {
1116
+ let p = u[o];
1117
+ if (o % 2 === 0) {
1118
+ s = i.moveBy(p.length), p.length > 0 && n.insertChildBefore(a, { type: "text", value: p, sourceSpan: new d(i, s) });
1119
+ continue;
1120
+ }
1121
+ s = i.moveBy(p.length + 4), n.insertChildBefore(a, { type: "interpolation", sourceSpan: new d(i, s), children: p.length === 0 ? [] : [{ type: "text", value: p, sourceSpan: new d(i.moveBy(2), s.moveBy(-2)) }] });
1122
+ }
1123
+ n.removeChild(a);
1124
+ }
1125
+ });
1126
+ }
1127
+ function Pi(e) {
1128
+ e.walk((t) => {
1129
+ if (!t.children) return;
1130
+ if (t.children.length === 0 || t.children.length === 1 && t.children[0].type === "text" && M.trim(t.children[0].value).length === 0) {
1131
+ t.hasDanglingSpaces = t.children.length > 0, t.children = [];
1132
+ return;
1133
+ }
1134
+ let r = Qn(t), n = Sr(t);
1135
+ if (!r) for (let a = 0; a < t.children.length; a++) {
1136
+ let i = t.children[a];
1137
+ if (i.type !== "text") continue;
1138
+ let { leadingWhitespace: s, text: u, trailingWhitespace: o } = Yn(i.value), p = i.prev, l = i.next;
1139
+ u ? (i.value = u, i.sourceSpan = new d(i.sourceSpan.start.moveBy(s.length), i.sourceSpan.end.moveBy(-o.length)), s && (p && (p.hasTrailingSpaces = !0), i.hasLeadingSpaces = !0), o && (i.hasTrailingSpaces = !0, l && (l.hasLeadingSpaces = !0))) : (t.removeChild(i), a--, (s || o) && (p && (p.hasTrailingSpaces = !0), l && (l.hasLeadingSpaces = !0)));
1140
+ }
1141
+ t.isWhitespaceSensitive = r, t.isIndentationSensitive = n;
1142
+ });
1143
+ }
1144
+ function Mi(e) {
1145
+ e.walk((t) => {
1146
+ t.isSelfClosing = !t.children || t.type === "element" && (t.tagDefinition.isVoid || t.endSourceSpan && t.startSourceSpan.start === t.endSourceSpan.start && t.startSourceSpan.end === t.endSourceSpan.end);
1147
+ });
1148
+ }
1149
+ function Hi(e, t) {
1150
+ e.walk((r) => {
1151
+ r.type === "element" && (r.hasHtmComponentClosingTag = r.endSourceSpan && /^<\s*\/\s*\/\s*>$/u.test(t.originalText.slice(r.endSourceSpan.start.offset, r.endSourceSpan.end.offset)));
1152
+ });
1153
+ }
1154
+ function Ri(e, t) {
1155
+ e.walk((r) => {
1156
+ r.cssDisplay = ma(r, t);
1157
+ });
1158
+ }
1159
+ function Ui(e, t) {
1160
+ e.walk((r) => {
1161
+ let { children: n } = r;
1162
+ if (n) {
1163
+ if (n.length === 0) {
1164
+ r.isDanglingSpaceSensitive = ta(r);
1165
+ return;
1166
+ }
1167
+ for (let a of n) a.isLeadingSpaceSensitive = Zn(a, t), a.isTrailingSpaceSensitive = ea(a, t);
1168
+ for (let a = 0; a < n.length; a++) {
1169
+ let i = n[a];
1170
+ i.isLeadingSpaceSensitive = (a === 0 || i.prev.isTrailingSpaceSensitive) && i.isLeadingSpaceSensitive, i.isTrailingSpaceSensitive = (a === n.length - 1 || i.next.isLeadingSpaceSensitive) && i.isTrailingSpaceSensitive;
1171
+ }
1172
+ }
1173
+ });
1174
+ }
1175
+ var Vi = Ti;
1176
+ function Oi(e, t, r) {
1177
+ let { node: n } = e;
1178
+ switch (n.type) {
1179
+ case "front-matter":
1180
+ return I(n.raw);
1181
+ case "root":
1182
+ return t.__onHtmlRoot && t.__onHtmlRoot(n), [A(Et(e, t, r)), S];
1183
+ case "element":
1184
+ case "ieConditionalComment":
1185
+ return Ai(e, t, r);
1186
+ case "angularControlFlowBlock":
1187
+ return Si(e, t, r);
1188
+ case "angularControlFlowBlockParameters":
1189
+ return bi(e, t, r);
1190
+ case "angularControlFlowBlockParameter":
1191
+ return M.trim(n.expression);
1192
+ case "angularLetDeclaration":
1193
+ return A(["@let ", A([n.id, " =", A(H([k, r("init")]))]), ";"]);
1194
+ case "angularLetDeclarationInitializer":
1195
+ return n.value;
1196
+ case "angularIcuExpression":
1197
+ return _i(e, t, r);
1198
+ case "angularIcuCase":
1199
+ return wi(e, t, r);
1200
+ case "ieConditionalStartComment":
1201
+ case "ieConditionalEndComment":
1202
+ return [oe(n), ue(n)];
1203
+ case "interpolation":
1204
+ return [oe(n, t), ...e.map(r, "children"), ue(n, t)];
1205
+ case "text": {
1206
+ if (n.parent.type === "interpolation") {
1207
+ let i = /\n[^\S\n]*$/u, s = i.test(n.value), u = s ? n.value.replace(i, "") : n.value;
1208
+ return [I(u), s ? S : ""];
1209
+ }
1210
+ let a = _n([j(n, t), ...Tr(n), W(n, t)]);
1211
+ return Array.isArray(a) ? gr(a) : a;
1212
+ }
1213
+ case "docType":
1214
+ return [A([oe(n, t), " ", L(!1, n.value.replace(/^html\b/iu, "html"), /\s+/gu, " ")]), ue(n, t)];
1215
+ case "comment":
1216
+ return [j(n, t), I(t.originalText.slice(ze(n), We(n))), W(n, t)];
1217
+ case "attribute": {
1218
+ if (n.value === null) return n.rawName;
1219
+ let a = Dr(n.value), i = An(a, '"');
1220
+ return [n.rawName, "=", i, I(i === '"' ? L(!1, a, '"', "&quot;") : L(!1, a, "'", "&apos;")), i];
1221
+ }
1222
+ case "cdata":
1223
+ default:
1224
+ throw new Ln(n, "HTML");
1225
+ }
1226
+ }
1227
+ var zi = { preprocess: Vi, print: Oi, insertPragma: vi, massageAstNode: In, embed: ui, getVisitorKeys: gi }, Wi = zi, $i = [{ linguistLanguageId: 146, name: "Angular", type: "markup", tmScope: "text.html.basic", aceMode: "html", codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", color: "#e34c26", aliases: ["xhtml"], extensions: [".component.html"], parsers: ["angular"], vscodeLanguageIds: ["html"], filenames: [] }, { linguistLanguageId: 146, name: "HTML", type: "markup", tmScope: "text.html.basic", aceMode: "html", codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", color: "#e34c26", aliases: ["xhtml"], extensions: [".html", ".hta", ".htm", ".html.hl", ".inc", ".xht", ".xhtml", ".mjml"], parsers: ["html"], vscodeLanguageIds: ["html"] }, { linguistLanguageId: 146, name: "Lightning Web Components", type: "markup", tmScope: "text.html.basic", aceMode: "html", codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", color: "#e34c26", aliases: ["xhtml"], extensions: [], parsers: ["lwc"], vscodeLanguageIds: ["html"], filenames: [] }, { linguistLanguageId: 391, name: "Vue", type: "markup", color: "#41b883", extensions: [".vue"], tmScope: "text.html.vue", aceMode: "html", parsers: ["vue"], vscodeLanguageIds: ["vue"] }], Ht = { bracketSpacing: { category: "Common", type: "boolean", default: !0, description: "Print spaces between brackets.", oppositeDescription: "Do not print spaces between brackets." }, singleQuote: { category: "Common", type: "boolean", default: !1, description: "Use single quotes instead of double quotes." }, proseWrap: { category: "Common", type: "choice", default: "preserve", description: "How to wrap prose.", choices: [{ value: "always", description: "Wrap prose if it exceeds the print width." }, { value: "never", description: "Do not wrap prose." }, { value: "preserve", description: "Wrap prose as-is." }] }, bracketSameLine: { category: "Common", type: "boolean", default: !1, description: "Put > of opening tags on the last line instead of on a new line." }, singleAttributePerLine: { category: "Common", type: "boolean", default: !1, description: "Enforce single attribute per line in HTML, Vue and JSX." } }, Rt = "HTML", ji = { bracketSameLine: Ht.bracketSameLine, htmlWhitespaceSensitivity: { category: Rt, 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: Ht.singleAttributePerLine, vueIndentScriptAndStyle: { category: Rt, type: "boolean", default: !1, description: "Indent script and style tags in Vue files." } }, Gi = ji, zr = {};
1228
+ lr(zr, { angular: () => Xs, html: () => Ys, lwc: () => Qs, vue: () => Js });
1229
+ var Ut;
1230
+ (function(e) {
1231
+ e[e.Emulated = 0] = "Emulated", e[e.None = 2] = "None", e[e.ShadowDom = 3] = "ShadowDom";
1232
+ })(Ut || (Ut = {}));
1233
+ var Vt;
1234
+ (function(e) {
1235
+ e[e.OnPush = 0] = "OnPush", e[e.Default = 1] = "Default";
1236
+ })(Vt || (Vt = {}));
1237
+ var Ot;
1238
+ (function(e) {
1239
+ e[e.None = 0] = "None", e[e.SignalBased = 1] = "SignalBased", e[e.HasDecoratorInputTransform = 2] = "HasDecoratorInputTransform";
1240
+ })(Ot || (Ot = {}));
1241
+ var zt = { name: "custom-elements" }, Wt = { name: "no-errors-schema" }, z;
1242
+ (function(e) {
1243
+ e[e.NONE = 0] = "NONE", e[e.HTML = 1] = "HTML", e[e.STYLE = 2] = "STYLE", e[e.SCRIPT = 3] = "SCRIPT", e[e.URL = 4] = "URL", e[e.RESOURCE_URL = 5] = "RESOURCE_URL";
1244
+ })(z || (z = {}));
1245
+ var $t;
1246
+ (function(e) {
1247
+ e[e.Error = 0] = "Error", e[e.Warning = 1] = "Warning", e[e.Ignore = 2] = "Ignore";
1248
+ })($t || ($t = {}));
1249
+ var N;
1250
+ (function(e) {
1251
+ e[e.RAW_TEXT = 0] = "RAW_TEXT", e[e.ESCAPABLE_RAW_TEXT = 1] = "ESCAPABLE_RAW_TEXT", e[e.PARSABLE_DATA = 2] = "PARSABLE_DATA";
1252
+ })(N || (N = {}));
1253
+ function Ge(e, t = !0) {
1254
+ if (e[0] != ":") return [null, e];
1255
+ let r = e.indexOf(":", 1);
1256
+ if (r === -1) {
1257
+ if (t) throw new Error(`Unsupported format "${e}" expecting ":namespace:name"`);
1258
+ return [null, e];
1259
+ }
1260
+ return [e.slice(1, r), e.slice(r + 1)];
1261
+ }
1262
+ function jt(e) {
1263
+ return Ge(e)[1] === "ng-container";
1264
+ }
1265
+ function Gt(e) {
1266
+ return Ge(e)[1] === "ng-content";
1267
+ }
1268
+ function we(e) {
1269
+ return e === null ? null : Ge(e)[0];
1270
+ }
1271
+ function Te(e, t) {
1272
+ return e ? `:${e}:${t}` : t;
1273
+ }
1274
+ var Ae;
1275
+ function Kt() {
1276
+ return Ae || (Ae = {}, be(z.HTML, ["iframe|srcdoc", "*|innerHTML", "*|outerHTML"]), be(z.STYLE, ["*|style"]), be(z.URL, ["*|formAction", "area|href", "area|ping", "audio|src", "a|href", "a|ping", "blockquote|cite", "body|background", "del|cite", "form|action", "img|src", "input|src", "ins|cite", "q|cite", "source|src", "track|src", "video|poster", "video|src"]), be(z.RESOURCE_URL, ["applet|code", "applet|codebase", "base|href", "embed|src", "frame|src", "head|profile", "html|manifest", "iframe|src", "link|href", "media|src", "object|codebase", "object|data", "script|src"])), Ae;
1277
+ }
1278
+ function be(e, t) {
1279
+ for (let r of t) Ae[r.toLowerCase()] = e;
1280
+ }
1281
+ var Ki = class {
1282
+ }, Yi = "boolean", Xi = "number", Ji = "string", Qi = "object", Zi = ["[Element]|textContent,%ariaAtomic,%ariaAutoComplete,%ariaBusy,%ariaChecked,%ariaColCount,%ariaColIndex,%ariaColSpan,%ariaCurrent,%ariaDescription,%ariaDisabled,%ariaExpanded,%ariaHasPopup,%ariaHidden,%ariaKeyShortcuts,%ariaLabel,%ariaLevel,%ariaLive,%ariaModal,%ariaMultiLine,%ariaMultiSelectable,%ariaOrientation,%ariaPlaceholder,%ariaPosInSet,%ariaPressed,%ariaReadOnly,%ariaRelevant,%ariaRequired,%ariaRoleDescription,%ariaRowCount,%ariaRowIndex,%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,section,small,strong,sub,sup,u,var,wbr^[HTMLElement]|accessKey,autocapitalize,!autofocus,contentEditable,dir,!draggable,enterKeyHint,!hidden,innerText,inputMode,lang,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contextmenu,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,outerText,!spellcheck,%style,#tabIndex,title,!translate,virtualKeyboardPolicy", "media^[HTMLElement]|!autoplay,!controls,%controlsList,%crossOrigin,#currentTime,!defaultMuted,#defaultPlaybackRate,!disableRemotePlayback,!loop,!muted,*encrypted,*waitingforkey,#playbackRate,preload,!preservesPitch,src,%srcObject,#volume", ":svg:^[HTMLElement]|!autofocus,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contextmenu,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,%style,#tabIndex", ":svg:graphics^:svg:|", ":svg:animation^:svg:|*begin,*end,*repeat", ":svg:geometry^:svg:|", ":svg:componentTransferFunction^:svg:|", ":svg:gradient^:svg:|", ":svg:textContent^:svg:graphics|", ":svg:textPositioning^:svg:textContent|", "a^[HTMLElement]|charset,coords,download,hash,host,hostname,href,hreflang,name,password,pathname,ping,port,protocol,referrerPolicy,rel,%relList,rev,search,shape,target,text,type,username", "area^[HTMLElement]|alt,coords,download,hash,host,hostname,href,!noHref,password,pathname,ping,port,protocol,referrerPolicy,rel,%relList,search,shape,target,username", "audio^media|", "br^[HTMLElement]|clear", "base^[HTMLElement]|href,target", "body^[HTMLElement]|aLink,background,bgColor,link,*afterprint,*beforeprint,*beforeunload,*blur,*error,*focus,*hashchange,*languagechange,*load,*message,*messageerror,*offline,*online,*pagehide,*pageshow,*popstate,*rejectionhandled,*resize,*scroll,*storage,*unhandledrejection,*unload,text,vLink", "button^[HTMLElement]|!disabled,formAction,formEnctype,formMethod,!formNoValidate,formTarget,name,type,value", "canvas^[HTMLElement]|#height,#width", "content^[HTMLElement]|select", "dl^[HTMLElement]|!compact", "data^[HTMLElement]|value", "datalist^[HTMLElement]|", "details^[HTMLElement]|!open", "dialog^[HTMLElement]|!open,returnValue", "dir^[HTMLElement]|!compact", "div^[HTMLElement]|align", "embed^[HTMLElement]|align,height,name,src,type,width", "fieldset^[HTMLElement]|!disabled,name", "font^[HTMLElement]|color,face,size", "form^[HTMLElement]|acceptCharset,action,autocomplete,encoding,enctype,method,name,!noValidate,target", "frame^[HTMLElement]|frameBorder,longDesc,marginHeight,marginWidth,name,!noResize,scrolling,src", "frameset^[HTMLElement]|cols,*afterprint,*beforeprint,*beforeunload,*blur,*error,*focus,*hashchange,*languagechange,*load,*message,*messageerror,*offline,*online,*pagehide,*pageshow,*popstate,*rejectionhandled,*resize,*scroll,*storage,*unhandledrejection,*unload,rows", "hr^[HTMLElement]|align,color,!noShade,size,width", "head^[HTMLElement]|", "h1,h2,h3,h4,h5,h6^[HTMLElement]|align", "html^[HTMLElement]|version", "iframe^[HTMLElement]|align,allow,!allowFullscreen,!allowPaymentRequest,csp,frameBorder,height,loading,longDesc,marginHeight,marginWidth,name,referrerPolicy,%sandbox,scrolling,src,srcdoc,width", "img^[HTMLElement]|align,alt,border,%crossOrigin,decoding,#height,#hspace,!isMap,loading,longDesc,lowsrc,name,referrerPolicy,sizes,src,srcset,useMap,#vspace,#width", "input^[HTMLElement]|accept,align,alt,autocomplete,!checked,!defaultChecked,defaultValue,dirName,!disabled,%files,formAction,formEnctype,formMethod,!formNoValidate,formTarget,#height,!incremental,!indeterminate,max,#maxLength,min,#minLength,!multiple,name,pattern,placeholder,!readOnly,!required,selectionDirection,#selectionEnd,#selectionStart,#size,src,step,type,useMap,value,%valueAsDate,#valueAsNumber,#width", "li^[HTMLElement]|type,#value", "label^[HTMLElement]|htmlFor", "legend^[HTMLElement]|align", "link^[HTMLElement]|as,charset,%crossOrigin,!disabled,href,hreflang,imageSizes,imageSrcset,integrity,media,referrerPolicy,rel,%relList,rev,%sizes,target,type", "map^[HTMLElement]|name", "marquee^[HTMLElement]|behavior,bgColor,direction,height,#hspace,#loop,#scrollAmount,#scrollDelay,!trueSpeed,#vspace,width", "menu^[HTMLElement]|!compact", "meta^[HTMLElement]|content,httpEquiv,media,name,scheme", "meter^[HTMLElement]|#high,#low,#max,#min,#optimum,#value", "ins,del^[HTMLElement]|cite,dateTime", "ol^[HTMLElement]|!compact,!reversed,#start,type", "object^[HTMLElement]|align,archive,border,code,codeBase,codeType,data,!declare,height,#hspace,name,standby,type,useMap,#vspace,width", "optgroup^[HTMLElement]|!disabled,label", "option^[HTMLElement]|!defaultSelected,!disabled,label,!selected,text,value", "output^[HTMLElement]|defaultValue,%htmlFor,name,value", "p^[HTMLElement]|align", "param^[HTMLElement]|name,type,value,valueType", "picture^[HTMLElement]|", "pre^[HTMLElement]|#width", "progress^[HTMLElement]|#max,#value", "q,blockquote,cite^[HTMLElement]|", "script^[HTMLElement]|!async,charset,%crossOrigin,!defer,event,htmlFor,integrity,!noModule,%referrerPolicy,src,text,type", "select^[HTMLElement]|autocomplete,!disabled,#length,!multiple,name,!required,#selectedIndex,#size,value", "slot^[HTMLElement]|name", "source^[HTMLElement]|#height,media,sizes,src,srcset,type,#width", "span^[HTMLElement]|", "style^[HTMLElement]|!disabled,media,type", "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:|"], Wr = new Map(Object.entries({ class: "className", for: "htmlFor", formaction: "formAction", innerHtml: "innerHTML", readonly: "readOnly", tabindex: "tabIndex" })), es = Array.from(Wr).reduce((e, [t, r]) => (e.set(t, r), e), /* @__PURE__ */ new Map()), ts = class extends Ki {
1283
+ constructor() {
1284
+ super(), this._schema = /* @__PURE__ */ new Map(), this._eventSchema = /* @__PURE__ */ new Map(), Zi.forEach((e) => {
1285
+ let t = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Set(), [n, a] = e.split("|"), i = a.split(","), [s, u] = n.split("^");
1286
+ s.split(",").forEach((p) => {
1287
+ this._schema.set(p.toLowerCase(), t), this._eventSchema.set(p.toLowerCase(), r);
1288
+ });
1289
+ let o = u && this._schema.get(u.toLowerCase());
1290
+ if (o) {
1291
+ for (let [p, l] of o) t.set(p, l);
1292
+ for (let p of this._eventSchema.get(u.toLowerCase())) r.add(p);
1293
+ }
1294
+ i.forEach((p) => {
1295
+ if (p.length > 0) switch (p[0]) {
1296
+ case "*":
1297
+ r.add(p.substring(1));
1298
+ break;
1299
+ case "!":
1300
+ t.set(p.substring(1), Yi);
1301
+ break;
1302
+ case "#":
1303
+ t.set(p.substring(1), Xi);
1304
+ break;
1305
+ case "%":
1306
+ t.set(p.substring(1), Qi);
1307
+ break;
1308
+ default:
1309
+ t.set(p, Ji);
1310
+ }
1311
+ });
1312
+ });
1313
+ }
1314
+ hasProperty(e, t, r) {
1315
+ if (r.some((n) => n.name === Wt.name)) return !0;
1316
+ if (e.indexOf("-") > -1) {
1317
+ if (jt(e) || Gt(e)) return !1;
1318
+ if (r.some((n) => n.name === zt.name)) return !0;
1319
+ }
1320
+ return (this._schema.get(e.toLowerCase()) || this._schema.get("unknown")).has(t);
1321
+ }
1322
+ hasElement(e, t) {
1323
+ return t.some((r) => r.name === Wt.name) || e.indexOf("-") > -1 && (jt(e) || Gt(e) || t.some((r) => r.name === zt.name)) ? !0 : this._schema.has(e.toLowerCase());
1324
+ }
1325
+ securityContext(e, t, r) {
1326
+ r && (t = this.getMappedPropName(t)), e = e.toLowerCase(), t = t.toLowerCase();
1327
+ let n = Kt()[e + "|" + t];
1328
+ return n || (n = Kt()["*|" + t], n || z.NONE);
1329
+ }
1330
+ getMappedPropName(e) {
1331
+ return Wr.get(e) ?? e;
1332
+ }
1333
+ getDefaultComponentElementName() {
1334
+ return "ng-component";
1335
+ }
1336
+ validateProperty(e) {
1337
+ return e.toLowerCase().startsWith("on") ? { error: !0, msg: `Binding to event property '${e}' is disallowed for security reasons, please use (${e.slice(2)})=...
1338
+ If '${e}' is a directive input, make sure the directive is imported by the current module.` } : { error: !1 };
1339
+ }
1340
+ validateAttribute(e) {
1341
+ return e.toLowerCase().startsWith("on") ? { error: !0, msg: `Binding to event attribute '${e}' is disallowed for security reasons, please use (${e.slice(2)})=...` } : { error: !1 };
1342
+ }
1343
+ allKnownElementNames() {
1344
+ return Array.from(this._schema.keys());
1345
+ }
1346
+ allKnownAttributesOfElement(e) {
1347
+ let t = this._schema.get(e.toLowerCase()) || this._schema.get("unknown");
1348
+ return Array.from(t.keys()).map((r) => es.get(r) ?? r);
1349
+ }
1350
+ allKnownEventsOfElement(e) {
1351
+ return Array.from(this._eventSchema.get(e.toLowerCase()) ?? []);
1352
+ }
1353
+ normalizeAnimationStyleProperty(e) {
1354
+ return xi(e);
1355
+ }
1356
+ normalizeAnimationStyleValue(e, t, r) {
1357
+ let n = "", a = r.toString().trim(), i = null;
1358
+ if (rs(e) && r !== 0 && r !== "0") if (typeof r == "number") n = "px";
1359
+ else {
1360
+ let s = r.match(/^[+-]?[\d\.]+([a-z]*)$/);
1361
+ s && s[1].length == 0 && (i = `Please provide a CSS unit value for ${t}:${r}`);
1362
+ }
1363
+ return { error: i, value: a + n };
1364
+ }
1365
+ };
1366
+ function rs(e) {
1367
+ switch (e) {
1368
+ case "width":
1369
+ case "height":
1370
+ case "minWidth":
1371
+ case "minHeight":
1372
+ case "maxWidth":
1373
+ case "maxHeight":
1374
+ case "left":
1375
+ case "top":
1376
+ case "bottom":
1377
+ case "right":
1378
+ case "fontSize":
1379
+ case "outlineWidth":
1380
+ case "outlineOffset":
1381
+ case "paddingTop":
1382
+ case "paddingLeft":
1383
+ case "paddingBottom":
1384
+ case "paddingRight":
1385
+ case "marginTop":
1386
+ case "marginLeft":
1387
+ case "marginBottom":
1388
+ case "marginRight":
1389
+ case "borderRadius":
1390
+ case "borderWidth":
1391
+ case "borderTopWidth":
1392
+ case "borderLeftWidth":
1393
+ case "borderRightWidth":
1394
+ case "borderBottomWidth":
1395
+ case "textIndent":
1396
+ return !0;
1397
+ default:
1398
+ return !1;
1399
+ }
1400
+ }
1401
+ var h = class {
1402
+ constructor({ closedByChildren: e, implicitNamespacePrefix: t, contentType: r = N.PARSABLE_DATA, closedByParent: n = !1, isVoid: a = !1, ignoreFirstLf: i = !1, preventNamespaceInheritance: s = !1, canSelfClose: u = !1 } = {}) {
1403
+ this.closedByChildren = {}, this.closedByParent = !1, e && e.length > 0 && e.forEach((o) => this.closedByChildren[o] = !0), this.isVoid = a, this.closedByParent = n || a, this.implicitNamespacePrefix = t || null, this.contentType = r, this.ignoreFirstLf = i, this.preventNamespaceInheritance = s, this.canSelfClose = u ?? a;
1404
+ }
1405
+ isClosedByChild(e) {
1406
+ return this.isVoid || e.toLowerCase() in this.closedByChildren;
1407
+ }
1408
+ getContentType(e) {
1409
+ return typeof this.contentType == "object" ? (e === void 0 ? void 0 : this.contentType[e]) ?? this.contentType.default : this.contentType;
1410
+ }
1411
+ }, Yt, ae;
1412
+ function st(e) {
1413
+ return ae || (Yt = new h({ canSelfClose: !0 }), ae = Object.assign(/* @__PURE__ */ Object.create(null), { base: new h({ isVoid: !0 }), meta: new h({ isVoid: !0 }), area: new h({ isVoid: !0 }), embed: new h({ isVoid: !0 }), link: new h({ isVoid: !0 }), img: new h({ isVoid: !0 }), input: new h({ isVoid: !0 }), param: new h({ isVoid: !0 }), hr: new h({ isVoid: !0 }), br: new h({ isVoid: !0 }), source: new h({ isVoid: !0 }), track: new h({ isVoid: !0 }), wbr: new h({ isVoid: !0 }), p: new h({ closedByChildren: ["address", "article", "aside", "blockquote", "div", "dl", "fieldset", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hgroup", "hr", "main", "nav", "ol", "p", "pre", "section", "table", "ul"], closedByParent: !0 }), thead: new h({ closedByChildren: ["tbody", "tfoot"] }), tbody: new h({ closedByChildren: ["tbody", "tfoot"], closedByParent: !0 }), tfoot: new h({ closedByChildren: ["tbody"], closedByParent: !0 }), tr: new h({ closedByChildren: ["tr"], closedByParent: !0 }), td: new h({ closedByChildren: ["td", "th"], closedByParent: !0 }), th: new h({ closedByChildren: ["td", "th"], closedByParent: !0 }), col: new h({ isVoid: !0 }), svg: new h({ implicitNamespacePrefix: "svg" }), foreignObject: new h({ implicitNamespacePrefix: "svg", preventNamespaceInheritance: !0 }), math: new h({ implicitNamespacePrefix: "math" }), li: new h({ closedByChildren: ["li"], closedByParent: !0 }), dt: new h({ closedByChildren: ["dt", "dd"] }), dd: new h({ closedByChildren: ["dt", "dd"], closedByParent: !0 }), rb: new h({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: !0 }), rt: new h({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: !0 }), rtc: new h({ closedByChildren: ["rb", "rtc", "rp"], closedByParent: !0 }), rp: new h({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: !0 }), optgroup: new h({ closedByChildren: ["optgroup"], closedByParent: !0 }), option: new h({ closedByChildren: ["option", "optgroup"], closedByParent: !0 }), pre: new h({ ignoreFirstLf: !0 }), listing: new h({ ignoreFirstLf: !0 }), style: new h({ contentType: N.RAW_TEXT }), script: new h({ contentType: N.RAW_TEXT }), title: new h({ contentType: { default: N.ESCAPABLE_RAW_TEXT, svg: N.PARSABLE_DATA } }), textarea: new h({ contentType: N.ESCAPABLE_RAW_TEXT, ignoreFirstLf: !0 }) }), new ts().allKnownElementNames().forEach((t) => {
1414
+ !ae[t] && we(t) === null && (ae[t] = new h({ canSelfClose: !1 }));
1415
+ })), ae[e] ?? Yt;
1416
+ }
1417
+ var te = class {
1418
+ constructor(e, t) {
1419
+ this.sourceSpan = e, this.i18n = t;
1420
+ }
1421
+ }, ns = class extends te {
1422
+ constructor(e, t, r, n) {
1423
+ super(t, n), this.value = e, this.tokens = r, this.type = "text";
1424
+ }
1425
+ visit(e, t) {
1426
+ return e.visitText(this, t);
1427
+ }
1428
+ }, as = class extends te {
1429
+ constructor(e, t, r, n) {
1430
+ super(t, n), this.value = e, this.tokens = r, this.type = "cdata";
1431
+ }
1432
+ visit(e, t) {
1433
+ return e.visitCdata(this, t);
1434
+ }
1435
+ }, is = class extends te {
1436
+ constructor(e, t, r, n, a, i) {
1437
+ super(n, i), this.switchValue = e, this.type = t, this.cases = r, this.switchValueSourceSpan = a;
1438
+ }
1439
+ visit(e, t) {
1440
+ return e.visitExpansion(this, t);
1441
+ }
1442
+ }, ss = class {
1443
+ constructor(e, t, r, n, a) {
1444
+ this.value = e, this.expression = t, this.sourceSpan = r, this.valueSourceSpan = n, this.expSourceSpan = a, this.type = "expansionCase";
1445
+ }
1446
+ visit(e, t) {
1447
+ return e.visitExpansionCase(this, t);
1448
+ }
1449
+ }, us = class extends te {
1450
+ constructor(e, t, r, n, a, i, s) {
1451
+ super(r, s), this.name = e, this.value = t, this.keySpan = n, this.valueSpan = a, this.valueTokens = i, this.type = "attribute";
1452
+ }
1453
+ visit(e, t) {
1454
+ return e.visitAttribute(this, t);
1455
+ }
1456
+ get nameSpan() {
1457
+ return this.keySpan;
1458
+ }
1459
+ }, V = class extends te {
1460
+ constructor(e, t, r, n, a, i = null, s = null, u) {
1461
+ super(n, u), this.name = e, this.attrs = t, this.children = r, this.startSourceSpan = a, this.endSourceSpan = i, this.nameSpan = s, this.type = "element";
1462
+ }
1463
+ visit(e, t) {
1464
+ return e.visitElement(this, t);
1465
+ }
1466
+ }, os = class {
1467
+ constructor(e, t) {
1468
+ this.value = e, this.sourceSpan = t, this.type = "comment";
1469
+ }
1470
+ visit(e, t) {
1471
+ return e.visitComment(this, t);
1472
+ }
1473
+ }, ls = class {
1474
+ constructor(e, t) {
1475
+ this.value = e, this.sourceSpan = t, this.type = "docType";
1476
+ }
1477
+ visit(e, t) {
1478
+ return e.visitDocType(this, t);
1479
+ }
1480
+ }, Y = class extends te {
1481
+ constructor(e, t, r, n, a, i, s = null, u) {
1482
+ super(n, u), this.name = e, this.parameters = t, this.children = r, this.nameSpan = a, this.startSourceSpan = i, this.endSourceSpan = s, this.type = "block";
1483
+ }
1484
+ visit(e, t) {
1485
+ return e.visitBlock(this, t);
1486
+ }
1487
+ }, Xt = class {
1488
+ constructor(e, t) {
1489
+ this.expression = e, this.sourceSpan = t, this.type = "blockParameter", this.startSourceSpan = null, this.endSourceSpan = null;
1490
+ }
1491
+ visit(e, t) {
1492
+ return e.visitBlockParameter(this, t);
1493
+ }
1494
+ }, Jt = class {
1495
+ constructor(e, t, r, n, a) {
1496
+ this.name = e, this.value = t, this.sourceSpan = r, this.nameSpan = n, this.valueSpan = a, this.type = "letDeclaration", this.startSourceSpan = null, this.endSourceSpan = null;
1497
+ }
1498
+ visit(e, t) {
1499
+ return e.visitLetDeclaration(this, t);
1500
+ }
1501
+ };
1502
+ function $r(e, t, r = null) {
1503
+ let n = [], a = e.visit ? (i) => e.visit(i, r) || i.visit(e, r) : (i) => i.visit(e, r);
1504
+ return t.forEach((i) => {
1505
+ let s = a(i);
1506
+ s && n.push(s);
1507
+ }), n;
1508
+ }
1509
+ var cs = class {
1510
+ constructor() {
1511
+ }
1512
+ visitElement(e, t) {
1513
+ this.visitChildren(t, (r) => {
1514
+ r(e.attrs), r(e.children);
1515
+ });
1516
+ }
1517
+ visitAttribute(e, t) {
1518
+ }
1519
+ visitText(e, t) {
1520
+ }
1521
+ visitCdata(e, t) {
1522
+ }
1523
+ visitComment(e, t) {
1524
+ }
1525
+ visitDocType(e, t) {
1526
+ }
1527
+ visitExpansion(e, t) {
1528
+ return this.visitChildren(t, (r) => {
1529
+ r(e.cases);
1530
+ });
1531
+ }
1532
+ visitExpansionCase(e, t) {
1533
+ }
1534
+ visitBlock(e, t) {
1535
+ this.visitChildren(t, (r) => {
1536
+ r(e.parameters), r(e.children);
1537
+ });
1538
+ }
1539
+ visitBlockParameter(e, t) {
1540
+ }
1541
+ visitLetDeclaration(e, t) {
1542
+ }
1543
+ visitChildren(e, t) {
1544
+ let r = [], n = this;
1545
+ function a(i) {
1546
+ i && r.push($r(n, i, e));
1547
+ }
1548
+ return t(a), Array.prototype.concat.apply([], r);
1549
+ }
1550
+ }, Be = { AElig: "Æ", AMP: "&", amp: "&", Aacute: "Á", Abreve: "Ă", Acirc: "Â", Acy: "А", Afr: "𝔄", Agrave: "À", Alpha: "Α", Amacr: "Ā", And: "⩓", Aogon: "Ą", Aopf: "𝔸", ApplyFunction: "⁡", af: "⁡", Aring: "Å", angst: "Å", Ascr: "𝒜", Assign: "≔", colone: "≔", coloneq: "≔", Atilde: "Ã", Auml: "Ä", Backslash: "∖", setminus: "∖", setmn: "∖", smallsetminus: "∖", ssetmn: "∖", Barv: "⫧", Barwed: "⌆", doublebarwedge: "⌆", Bcy: "Б", Because: "∵", becaus: "∵", because: "∵", Bernoullis: "ℬ", Bscr: "ℬ", bernou: "ℬ", Beta: "Β", Bfr: "𝔅", Bopf: "𝔹", Breve: "˘", breve: "˘", Bumpeq: "≎", HumpDownHump: "≎", bump: "≎", CHcy: "Ч", COPY: "©", copy: "©", Cacute: "Ć", Cap: "⋒", CapitalDifferentialD: "ⅅ", DD: "ⅅ", Cayleys: "ℭ", Cfr: "ℭ", Ccaron: "Č", Ccedil: "Ç", Ccirc: "Ĉ", Cconint: "∰", Cdot: "Ċ", Cedilla: "¸", cedil: "¸", CenterDot: "·", centerdot: "·", middot: "·", Chi: "Χ", CircleDot: "⊙", odot: "⊙", CircleMinus: "⊖", ominus: "⊖", CirclePlus: "⊕", oplus: "⊕", CircleTimes: "⊗", otimes: "⊗", ClockwiseContourIntegral: "∲", cwconint: "∲", CloseCurlyDoubleQuote: "”", rdquo: "”", rdquor: "”", CloseCurlyQuote: "’", rsquo: "’", rsquor: "’", Colon: "∷", Proportion: "∷", Colone: "⩴", Congruent: "≡", equiv: "≡", Conint: "∯", DoubleContourIntegral: "∯", ContourIntegral: "∮", conint: "∮", oint: "∮", Copf: "ℂ", complexes: "ℂ", Coproduct: "∐", coprod: "∐", CounterClockwiseContourIntegral: "∳", awconint: "∳", Cross: "⨯", Cscr: "𝒞", Cup: "⋓", CupCap: "≍", asympeq: "≍", DDotrahd: "⤑", DJcy: "Ђ", DScy: "Ѕ", DZcy: "Џ", Dagger: "‡", ddagger: "‡", Darr: "↡", Dashv: "⫤", DoubleLeftTee: "⫤", Dcaron: "Ď", Dcy: "Д", Del: "∇", nabla: "∇", Delta: "Δ", Dfr: "𝔇", DiacriticalAcute: "´", acute: "´", DiacriticalDot: "˙", dot: "˙", DiacriticalDoubleAcute: "˝", dblac: "˝", DiacriticalGrave: "`", grave: "`", DiacriticalTilde: "˜", tilde: "˜", Diamond: "⋄", diam: "⋄", diamond: "⋄", DifferentialD: "ⅆ", dd: "ⅆ", Dopf: "𝔻", Dot: "¨", DoubleDot: "¨", die: "¨", uml: "¨", DotDot: "⃜", DotEqual: "≐", doteq: "≐", esdot: "≐", DoubleDownArrow: "⇓", Downarrow: "⇓", dArr: "⇓", DoubleLeftArrow: "⇐", Leftarrow: "⇐", lArr: "⇐", DoubleLeftRightArrow: "⇔", Leftrightarrow: "⇔", hArr: "⇔", iff: "⇔", DoubleLongLeftArrow: "⟸", Longleftarrow: "⟸", xlArr: "⟸", DoubleLongLeftRightArrow: "⟺", Longleftrightarrow: "⟺", xhArr: "⟺", DoubleLongRightArrow: "⟹", Longrightarrow: "⟹", xrArr: "⟹", DoubleRightArrow: "⇒", Implies: "⇒", Rightarrow: "⇒", rArr: "⇒", DoubleRightTee: "⊨", vDash: "⊨", DoubleUpArrow: "⇑", Uparrow: "⇑", uArr: "⇑", DoubleUpDownArrow: "⇕", Updownarrow: "⇕", vArr: "⇕", DoubleVerticalBar: "∥", par: "∥", parallel: "∥", shortparallel: "∥", spar: "∥", DownArrow: "↓", ShortDownArrow: "↓", darr: "↓", downarrow: "↓", DownArrowBar: "⤓", DownArrowUpArrow: "⇵", duarr: "⇵", DownBreve: "̑", DownLeftRightVector: "⥐", DownLeftTeeVector: "⥞", DownLeftVector: "↽", leftharpoondown: "↽", lhard: "↽", DownLeftVectorBar: "⥖", DownRightTeeVector: "⥟", DownRightVector: "⇁", rhard: "⇁", rightharpoondown: "⇁", DownRightVectorBar: "⥗", DownTee: "⊤", top: "⊤", DownTeeArrow: "↧", mapstodown: "↧", Dscr: "𝒟", Dstrok: "Đ", ENG: "Ŋ", ETH: "Ð", Eacute: "É", Ecaron: "Ě", Ecirc: "Ê", Ecy: "Э", Edot: "Ė", Efr: "𝔈", Egrave: "È", Element: "∈", in: "∈", isin: "∈", isinv: "∈", Emacr: "Ē", EmptySmallSquare: "◻", EmptyVerySmallSquare: "▫", Eogon: "Ę", Eopf: "𝔼", Epsilon: "Ε", Equal: "⩵", EqualTilde: "≂", eqsim: "≂", esim: "≂", Equilibrium: "⇌", rightleftharpoons: "⇌", rlhar: "⇌", Escr: "ℰ", expectation: "ℰ", Esim: "⩳", Eta: "Η", Euml: "Ë", Exists: "∃", exist: "∃", ExponentialE: "ⅇ", ee: "ⅇ", exponentiale: "ⅇ", Fcy: "Ф", Ffr: "𝔉", FilledSmallSquare: "◼", FilledVerySmallSquare: "▪", blacksquare: "▪", squarf: "▪", squf: "▪", Fopf: "𝔽", ForAll: "∀", forall: "∀", Fouriertrf: "ℱ", Fscr: "ℱ", GJcy: "Ѓ", GT: ">", gt: ">", Gamma: "Γ", Gammad: "Ϝ", Gbreve: "Ğ", Gcedil: "Ģ", Gcirc: "Ĝ", Gcy: "Г", Gdot: "Ġ", Gfr: "𝔊", Gg: "⋙", ggg: "⋙", Gopf: "𝔾", GreaterEqual: "≥", ge: "≥", geq: "≥", GreaterEqualLess: "⋛", gel: "⋛", gtreqless: "⋛", GreaterFullEqual: "≧", gE: "≧", geqq: "≧", GreaterGreater: "⪢", GreaterLess: "≷", gl: "≷", gtrless: "≷", GreaterSlantEqual: "⩾", geqslant: "⩾", ges: "⩾", GreaterTilde: "≳", gsim: "≳", gtrsim: "≳", Gscr: "𝒢", Gt: "≫", NestedGreaterGreater: "≫", gg: "≫", HARDcy: "Ъ", Hacek: "ˇ", caron: "ˇ", Hat: "^", Hcirc: "Ĥ", Hfr: "ℌ", Poincareplane: "ℌ", HilbertSpace: "ℋ", Hscr: "ℋ", hamilt: "ℋ", Hopf: "ℍ", quaternions: "ℍ", HorizontalLine: "─", boxh: "─", Hstrok: "Ħ", HumpEqual: "≏", bumpe: "≏", bumpeq: "≏", IEcy: "Е", IJlig: "IJ", IOcy: "Ё", Iacute: "Í", Icirc: "Î", Icy: "И", Idot: "İ", Ifr: "ℑ", Im: "ℑ", image: "ℑ", imagpart: "ℑ", Igrave: "Ì", Imacr: "Ī", ImaginaryI: "ⅈ", ii: "ⅈ", Int: "∬", Integral: "∫", int: "∫", Intersection: "⋂", bigcap: "⋂", xcap: "⋂", InvisibleComma: "⁣", ic: "⁣", InvisibleTimes: "⁢", it: "⁢", Iogon: "Į", Iopf: "𝕀", Iota: "Ι", Iscr: "ℐ", imagline: "ℐ", Itilde: "Ĩ", Iukcy: "І", Iuml: "Ï", Jcirc: "Ĵ", Jcy: "Й", Jfr: "𝔍", Jopf: "𝕁", Jscr: "𝒥", Jsercy: "Ј", Jukcy: "Є", KHcy: "Х", KJcy: "Ќ", Kappa: "Κ", Kcedil: "Ķ", Kcy: "К", Kfr: "𝔎", Kopf: "𝕂", Kscr: "𝒦", LJcy: "Љ", LT: "<", lt: "<", Lacute: "Ĺ", Lambda: "Λ", Lang: "⟪", Laplacetrf: "ℒ", Lscr: "ℒ", lagran: "ℒ", Larr: "↞", twoheadleftarrow: "↞", Lcaron: "Ľ", Lcedil: "Ļ", Lcy: "Л", LeftAngleBracket: "⟨", lang: "⟨", langle: "⟨", LeftArrow: "←", ShortLeftArrow: "←", larr: "←", leftarrow: "←", slarr: "←", LeftArrowBar: "⇤", larrb: "⇤", LeftArrowRightArrow: "⇆", leftrightarrows: "⇆", lrarr: "⇆", LeftCeiling: "⌈", lceil: "⌈", LeftDoubleBracket: "⟦", lobrk: "⟦", LeftDownTeeVector: "⥡", LeftDownVector: "⇃", dharl: "⇃", downharpoonleft: "⇃", LeftDownVectorBar: "⥙", LeftFloor: "⌊", lfloor: "⌊", LeftRightArrow: "↔", harr: "↔", leftrightarrow: "↔", LeftRightVector: "⥎", LeftTee: "⊣", dashv: "⊣", LeftTeeArrow: "↤", mapstoleft: "↤", LeftTeeVector: "⥚", LeftTriangle: "⊲", vartriangleleft: "⊲", vltri: "⊲", LeftTriangleBar: "⧏", LeftTriangleEqual: "⊴", ltrie: "⊴", trianglelefteq: "⊴", LeftUpDownVector: "⥑", LeftUpTeeVector: "⥠", LeftUpVector: "↿", uharl: "↿", upharpoonleft: "↿", LeftUpVectorBar: "⥘", LeftVector: "↼", leftharpoonup: "↼", lharu: "↼", LeftVectorBar: "⥒", LessEqualGreater: "⋚", leg: "⋚", lesseqgtr: "⋚", LessFullEqual: "≦", lE: "≦", leqq: "≦", LessGreater: "≶", lessgtr: "≶", lg: "≶", LessLess: "⪡", LessSlantEqual: "⩽", leqslant: "⩽", les: "⩽", LessTilde: "≲", lesssim: "≲", lsim: "≲", Lfr: "𝔏", Ll: "⋘", Lleftarrow: "⇚", lAarr: "⇚", Lmidot: "Ŀ", LongLeftArrow: "⟵", longleftarrow: "⟵", xlarr: "⟵", LongLeftRightArrow: "⟷", longleftrightarrow: "⟷", xharr: "⟷", LongRightArrow: "⟶", longrightarrow: "⟶", xrarr: "⟶", Lopf: "𝕃", LowerLeftArrow: "↙", swarr: "↙", swarrow: "↙", LowerRightArrow: "↘", searr: "↘", searrow: "↘", Lsh: "↰", lsh: "↰", Lstrok: "Ł", Lt: "≪", NestedLessLess: "≪", ll: "≪", Map: "⤅", Mcy: "М", MediumSpace: " ", Mellintrf: "ℳ", Mscr: "ℳ", phmmat: "ℳ", Mfr: "𝔐", MinusPlus: "∓", mnplus: "∓", mp: "∓", Mopf: "𝕄", Mu: "Μ", NJcy: "Њ", Nacute: "Ń", Ncaron: "Ň", Ncedil: "Ņ", Ncy: "Н", NegativeMediumSpace: "​", NegativeThickSpace: "​", NegativeThinSpace: "​", NegativeVeryThinSpace: "​", ZeroWidthSpace: "​", NewLine: `
1551
+ `, Nfr: "𝔑", NoBreak: "⁠", NonBreakingSpace: " ", nbsp: " ", Nopf: "ℕ", naturals: "ℕ", Not: "⫬", NotCongruent: "≢", nequiv: "≢", NotCupCap: "≭", NotDoubleVerticalBar: "∦", npar: "∦", nparallel: "∦", nshortparallel: "∦", nspar: "∦", NotElement: "∉", notin: "∉", notinva: "∉", NotEqual: "≠", ne: "≠", NotEqualTilde: "≂̸", nesim: "≂̸", NotExists: "∄", nexist: "∄", nexists: "∄", NotGreater: "≯", ngt: "≯", ngtr: "≯", NotGreaterEqual: "≱", nge: "≱", ngeq: "≱", NotGreaterFullEqual: "≧̸", ngE: "≧̸", ngeqq: "≧̸", NotGreaterGreater: "≫̸", nGtv: "≫̸", NotGreaterLess: "≹", ntgl: "≹", NotGreaterSlantEqual: "⩾̸", ngeqslant: "⩾̸", nges: "⩾̸", NotGreaterTilde: "≵", ngsim: "≵", NotHumpDownHump: "≎̸", nbump: "≎̸", NotHumpEqual: "≏̸", nbumpe: "≏̸", NotLeftTriangle: "⋪", nltri: "⋪", ntriangleleft: "⋪", NotLeftTriangleBar: "⧏̸", NotLeftTriangleEqual: "⋬", nltrie: "⋬", ntrianglelefteq: "⋬", NotLess: "≮", nless: "≮", nlt: "≮", NotLessEqual: "≰", nle: "≰", nleq: "≰", NotLessGreater: "≸", ntlg: "≸", NotLessLess: "≪̸", nLtv: "≪̸", NotLessSlantEqual: "⩽̸", nleqslant: "⩽̸", nles: "⩽̸", NotLessTilde: "≴", nlsim: "≴", NotNestedGreaterGreater: "⪢̸", NotNestedLessLess: "⪡̸", NotPrecedes: "⊀", npr: "⊀", nprec: "⊀", NotPrecedesEqual: "⪯̸", npre: "⪯̸", npreceq: "⪯̸", NotPrecedesSlantEqual: "⋠", nprcue: "⋠", NotReverseElement: "∌", notni: "∌", notniva: "∌", NotRightTriangle: "⋫", nrtri: "⋫", ntriangleright: "⋫", NotRightTriangleBar: "⧐̸", NotRightTriangleEqual: "⋭", nrtrie: "⋭", ntrianglerighteq: "⋭", NotSquareSubset: "⊏̸", NotSquareSubsetEqual: "⋢", nsqsube: "⋢", NotSquareSuperset: "⊐̸", NotSquareSupersetEqual: "⋣", nsqsupe: "⋣", NotSubset: "⊂⃒", nsubset: "⊂⃒", vnsub: "⊂⃒", NotSubsetEqual: "⊈", nsube: "⊈", nsubseteq: "⊈", NotSucceeds: "⊁", nsc: "⊁", nsucc: "⊁", NotSucceedsEqual: "⪰̸", nsce: "⪰̸", nsucceq: "⪰̸", NotSucceedsSlantEqual: "⋡", nsccue: "⋡", NotSucceedsTilde: "≿̸", NotSuperset: "⊃⃒", nsupset: "⊃⃒", vnsup: "⊃⃒", NotSupersetEqual: "⊉", nsupe: "⊉", nsupseteq: "⊉", NotTilde: "≁", nsim: "≁", NotTildeEqual: "≄", nsime: "≄", nsimeq: "≄", NotTildeFullEqual: "≇", ncong: "≇", NotTildeTilde: "≉", nap: "≉", napprox: "≉", NotVerticalBar: "∤", nmid: "∤", nshortmid: "∤", nsmid: "∤", Nscr: "𝒩", Ntilde: "Ñ", Nu: "Ν", OElig: "Œ", Oacute: "Ó", Ocirc: "Ô", Ocy: "О", Odblac: "Ő", Ofr: "𝔒", Ograve: "Ò", Omacr: "Ō", Omega: "Ω", ohm: "Ω", Omicron: "Ο", Oopf: "𝕆", OpenCurlyDoubleQuote: "“", ldquo: "“", OpenCurlyQuote: "‘", lsquo: "‘", Or: "⩔", Oscr: "𝒪", Oslash: "Ø", Otilde: "Õ", Otimes: "⨷", Ouml: "Ö", OverBar: "‾", oline: "‾", OverBrace: "⏞", OverBracket: "⎴", tbrk: "⎴", OverParenthesis: "⏜", PartialD: "∂", part: "∂", Pcy: "П", Pfr: "𝔓", Phi: "Φ", Pi: "Π", PlusMinus: "±", plusmn: "±", pm: "±", Popf: "ℙ", primes: "ℙ", Pr: "⪻", Precedes: "≺", pr: "≺", prec: "≺", PrecedesEqual: "⪯", pre: "⪯", preceq: "⪯", PrecedesSlantEqual: "≼", prcue: "≼", preccurlyeq: "≼", PrecedesTilde: "≾", precsim: "≾", prsim: "≾", Prime: "″", Product: "∏", prod: "∏", Proportional: "∝", prop: "∝", propto: "∝", varpropto: "∝", vprop: "∝", Pscr: "𝒫", Psi: "Ψ", QUOT: '"', quot: '"', Qfr: "𝔔", Qopf: "ℚ", rationals: "ℚ", Qscr: "𝒬", RBarr: "⤐", drbkarow: "⤐", REG: "®", circledR: "®", reg: "®", Racute: "Ŕ", Rang: "⟫", Rarr: "↠", twoheadrightarrow: "↠", Rarrtl: "⤖", Rcaron: "Ř", Rcedil: "Ŗ", Rcy: "Р", Re: "ℜ", Rfr: "ℜ", real: "ℜ", realpart: "ℜ", ReverseElement: "∋", SuchThat: "∋", ni: "∋", niv: "∋", ReverseEquilibrium: "⇋", leftrightharpoons: "⇋", lrhar: "⇋", ReverseUpEquilibrium: "⥯", duhar: "⥯", Rho: "Ρ", RightAngleBracket: "⟩", rang: "⟩", rangle: "⟩", RightArrow: "→", ShortRightArrow: "→", rarr: "→", rightarrow: "→", srarr: "→", RightArrowBar: "⇥", rarrb: "⇥", RightArrowLeftArrow: "⇄", rightleftarrows: "⇄", rlarr: "⇄", RightCeiling: "⌉", rceil: "⌉", RightDoubleBracket: "⟧", robrk: "⟧", RightDownTeeVector: "⥝", RightDownVector: "⇂", dharr: "⇂", downharpoonright: "⇂", RightDownVectorBar: "⥕", RightFloor: "⌋", rfloor: "⌋", RightTee: "⊢", vdash: "⊢", RightTeeArrow: "↦", map: "↦", mapsto: "↦", RightTeeVector: "⥛", RightTriangle: "⊳", vartriangleright: "⊳", vrtri: "⊳", RightTriangleBar: "⧐", RightTriangleEqual: "⊵", rtrie: "⊵", trianglerighteq: "⊵", RightUpDownVector: "⥏", RightUpTeeVector: "⥜", RightUpVector: "↾", uharr: "↾", upharpoonright: "↾", RightUpVectorBar: "⥔", RightVector: "⇀", rharu: "⇀", rightharpoonup: "⇀", RightVectorBar: "⥓", Ropf: "ℝ", reals: "ℝ", RoundImplies: "⥰", Rrightarrow: "⇛", rAarr: "⇛", Rscr: "ℛ", realine: "ℛ", Rsh: "↱", rsh: "↱", RuleDelayed: "⧴", SHCHcy: "Щ", SHcy: "Ш", SOFTcy: "Ь", Sacute: "Ś", Sc: "⪼", Scaron: "Š", Scedil: "Ş", Scirc: "Ŝ", Scy: "С", Sfr: "𝔖", ShortUpArrow: "↑", UpArrow: "↑", uarr: "↑", uparrow: "↑", Sigma: "Σ", SmallCircle: "∘", compfn: "∘", Sopf: "𝕊", Sqrt: "√", radic: "√", Square: "□", squ: "□", square: "□", SquareIntersection: "⊓", sqcap: "⊓", SquareSubset: "⊏", sqsub: "⊏", sqsubset: "⊏", SquareSubsetEqual: "⊑", sqsube: "⊑", sqsubseteq: "⊑", SquareSuperset: "⊐", sqsup: "⊐", sqsupset: "⊐", SquareSupersetEqual: "⊒", sqsupe: "⊒", sqsupseteq: "⊒", SquareUnion: "⊔", sqcup: "⊔", Sscr: "𝒮", Star: "⋆", sstarf: "⋆", Sub: "⋐", Subset: "⋐", SubsetEqual: "⊆", sube: "⊆", subseteq: "⊆", Succeeds: "≻", sc: "≻", succ: "≻", SucceedsEqual: "⪰", sce: "⪰", succeq: "⪰", SucceedsSlantEqual: "≽", sccue: "≽", succcurlyeq: "≽", SucceedsTilde: "≿", scsim: "≿", succsim: "≿", Sum: "∑", sum: "∑", Sup: "⋑", Supset: "⋑", Superset: "⊃", sup: "⊃", supset: "⊃", SupersetEqual: "⊇", supe: "⊇", supseteq: "⊇", THORN: "Þ", TRADE: "™", trade: "™", TSHcy: "Ћ", TScy: "Ц", Tab: " ", Tau: "Τ", Tcaron: "Ť", Tcedil: "Ţ", Tcy: "Т", Tfr: "𝔗", Therefore: "∴", there4: "∴", therefore: "∴", Theta: "Θ", ThickSpace: "  ", ThinSpace: " ", thinsp: " ", Tilde: "∼", sim: "∼", thicksim: "∼", thksim: "∼", TildeEqual: "≃", sime: "≃", simeq: "≃", TildeFullEqual: "≅", cong: "≅", TildeTilde: "≈", ap: "≈", approx: "≈", asymp: "≈", thickapprox: "≈", thkap: "≈", Topf: "𝕋", TripleDot: "⃛", tdot: "⃛", Tscr: "𝒯", Tstrok: "Ŧ", Uacute: "Ú", Uarr: "↟", Uarrocir: "⥉", Ubrcy: "Ў", Ubreve: "Ŭ", Ucirc: "Û", Ucy: "У", Udblac: "Ű", Ufr: "𝔘", Ugrave: "Ù", Umacr: "Ū", UnderBar: "_", lowbar: "_", UnderBrace: "⏟", UnderBracket: "⎵", bbrk: "⎵", UnderParenthesis: "⏝", Union: "⋃", bigcup: "⋃", xcup: "⋃", UnionPlus: "⊎", uplus: "⊎", Uogon: "Ų", Uopf: "𝕌", UpArrowBar: "⤒", UpArrowDownArrow: "⇅", udarr: "⇅", UpDownArrow: "↕", updownarrow: "↕", varr: "↕", UpEquilibrium: "⥮", udhar: "⥮", UpTee: "⊥", bot: "⊥", bottom: "⊥", perp: "⊥", UpTeeArrow: "↥", mapstoup: "↥", UpperLeftArrow: "↖", nwarr: "↖", nwarrow: "↖", UpperRightArrow: "↗", nearr: "↗", nearrow: "↗", Upsi: "ϒ", upsih: "ϒ", Upsilon: "Υ", Uring: "Ů", Uscr: "𝒰", Utilde: "Ũ", Uuml: "Ü", VDash: "⊫", Vbar: "⫫", Vcy: "В", Vdash: "⊩", Vdashl: "⫦", Vee: "⋁", bigvee: "⋁", xvee: "⋁", Verbar: "‖", Vert: "‖", VerticalBar: "∣", mid: "∣", shortmid: "∣", smid: "∣", VerticalLine: "|", verbar: "|", vert: "|", VerticalSeparator: "❘", VerticalTilde: "≀", wr: "≀", wreath: "≀", VeryThinSpace: " ", hairsp: " ", Vfr: "𝔙", Vopf: "𝕍", Vscr: "𝒱", Vvdash: "⊪", Wcirc: "Ŵ", Wedge: "⋀", bigwedge: "⋀", xwedge: "⋀", Wfr: "𝔚", Wopf: "𝕎", Wscr: "𝒲", Xfr: "𝔛", Xi: "Ξ", Xopf: "𝕏", Xscr: "𝒳", YAcy: "Я", YIcy: "Ї", YUcy: "Ю", Yacute: "Ý", Ycirc: "Ŷ", Ycy: "Ы", Yfr: "𝔜", Yopf: "𝕐", Yscr: "𝒴", Yuml: "Ÿ", ZHcy: "Ж", Zacute: "Ź", Zcaron: "Ž", Zcy: "З", Zdot: "Ż", Zeta: "Ζ", Zfr: "ℨ", zeetrf: "ℨ", Zopf: "ℤ", integers: "ℤ", Zscr: "𝒵", aacute: "á", abreve: "ă", ac: "∾", mstpos: "∾", acE: "∾̳", acd: "∿", acirc: "â", acy: "а", aelig: "æ", afr: "𝔞", agrave: "à", alefsym: "ℵ", aleph: "ℵ", alpha: "α", amacr: "ā", amalg: "⨿", and: "∧", wedge: "∧", andand: "⩕", andd: "⩜", andslope: "⩘", andv: "⩚", ang: "∠", angle: "∠", ange: "⦤", angmsd: "∡", measuredangle: "∡", angmsdaa: "⦨", angmsdab: "⦩", angmsdac: "⦪", angmsdad: "⦫", angmsdae: "⦬", angmsdaf: "⦭", angmsdag: "⦮", angmsdah: "⦯", angrt: "∟", angrtvb: "⊾", angrtvbd: "⦝", angsph: "∢", angzarr: "⍼", aogon: "ą", aopf: "𝕒", apE: "⩰", apacir: "⩯", ape: "≊", approxeq: "≊", apid: "≋", apos: "'", aring: "å", ascr: "𝒶", ast: "*", midast: "*", atilde: "ã", auml: "ä", awint: "⨑", bNot: "⫭", backcong: "≌", bcong: "≌", backepsilon: "϶", bepsi: "϶", backprime: "‵", bprime: "‵", backsim: "∽", bsim: "∽", backsimeq: "⋍", bsime: "⋍", barvee: "⊽", barwed: "⌅", barwedge: "⌅", bbrktbrk: "⎶", bcy: "б", bdquo: "„", ldquor: "„", bemptyv: "⦰", beta: "β", beth: "ℶ", between: "≬", twixt: "≬", bfr: "𝔟", bigcirc: "◯", xcirc: "◯", bigodot: "⨀", xodot: "⨀", bigoplus: "⨁", xoplus: "⨁", bigotimes: "⨂", xotime: "⨂", bigsqcup: "⨆", xsqcup: "⨆", bigstar: "★", starf: "★", bigtriangledown: "▽", xdtri: "▽", bigtriangleup: "△", xutri: "△", biguplus: "⨄", xuplus: "⨄", bkarow: "⤍", rbarr: "⤍", blacklozenge: "⧫", lozf: "⧫", blacktriangle: "▴", utrif: "▴", blacktriangledown: "▾", dtrif: "▾", blacktriangleleft: "◂", ltrif: "◂", blacktriangleright: "▸", rtrif: "▸", blank: "␣", blk12: "▒", blk14: "░", blk34: "▓", block: "█", bne: "=⃥", bnequiv: "≡⃥", bnot: "⌐", bopf: "𝕓", bowtie: "⋈", boxDL: "╗", boxDR: "╔", boxDl: "╖", boxDr: "╓", boxH: "═", boxHD: "╦", boxHU: "╩", boxHd: "╤", boxHu: "╧", boxUL: "╝", boxUR: "╚", boxUl: "╜", boxUr: "╙", boxV: "║", boxVH: "╬", boxVL: "╣", boxVR: "╠", boxVh: "╫", boxVl: "╢", boxVr: "╟", boxbox: "⧉", boxdL: "╕", boxdR: "╒", boxdl: "┐", boxdr: "┌", boxhD: "╥", boxhU: "╨", boxhd: "┬", boxhu: "┴", boxminus: "⊟", minusb: "⊟", boxplus: "⊞", plusb: "⊞", boxtimes: "⊠", timesb: "⊠", boxuL: "╛", boxuR: "╘", boxul: "┘", boxur: "└", boxv: "│", boxvH: "╪", boxvL: "╡", boxvR: "╞", boxvh: "┼", boxvl: "┤", boxvr: "├", brvbar: "¦", bscr: "𝒷", bsemi: "⁏", bsol: "\\", bsolb: "⧅", bsolhsub: "⟈", bull: "•", bullet: "•", bumpE: "⪮", cacute: "ć", cap: "∩", capand: "⩄", capbrcup: "⩉", capcap: "⩋", capcup: "⩇", capdot: "⩀", caps: "∩︀", caret: "⁁", ccaps: "⩍", ccaron: "č", ccedil: "ç", ccirc: "ĉ", ccups: "⩌", ccupssm: "⩐", cdot: "ċ", cemptyv: "⦲", cent: "¢", cfr: "𝔠", chcy: "ч", check: "✓", checkmark: "✓", chi: "χ", cir: "○", cirE: "⧃", circ: "ˆ", circeq: "≗", cire: "≗", circlearrowleft: "↺", olarr: "↺", circlearrowright: "↻", orarr: "↻", circledS: "Ⓢ", oS: "Ⓢ", circledast: "⊛", oast: "⊛", circledcirc: "⊚", ocir: "⊚", circleddash: "⊝", odash: "⊝", cirfnint: "⨐", cirmid: "⫯", cirscir: "⧂", clubs: "♣", clubsuit: "♣", colon: ":", comma: ",", commat: "@", comp: "∁", complement: "∁", congdot: "⩭", copf: "𝕔", copysr: "℗", crarr: "↵", cross: "✗", cscr: "𝒸", csub: "⫏", csube: "⫑", csup: "⫐", csupe: "⫒", ctdot: "⋯", cudarrl: "⤸", cudarrr: "⤵", cuepr: "⋞", curlyeqprec: "⋞", cuesc: "⋟", curlyeqsucc: "⋟", cularr: "↶", curvearrowleft: "↶", cularrp: "⤽", cup: "∪", cupbrcap: "⩈", cupcap: "⩆", cupcup: "⩊", cupdot: "⊍", cupor: "⩅", cups: "∪︀", curarr: "↷", curvearrowright: "↷", curarrm: "⤼", curlyvee: "⋎", cuvee: "⋎", curlywedge: "⋏", cuwed: "⋏", curren: "¤", cwint: "∱", cylcty: "⌭", dHar: "⥥", dagger: "†", daleth: "ℸ", dash: "‐", hyphen: "‐", dbkarow: "⤏", rBarr: "⤏", dcaron: "ď", dcy: "д", ddarr: "⇊", downdownarrows: "⇊", ddotseq: "⩷", eDDot: "⩷", deg: "°", delta: "δ", demptyv: "⦱", dfisht: "⥿", dfr: "𝔡", diamondsuit: "♦", diams: "♦", digamma: "ϝ", gammad: "ϝ", disin: "⋲", div: "÷", divide: "÷", divideontimes: "⋇", divonx: "⋇", djcy: "ђ", dlcorn: "⌞", llcorner: "⌞", dlcrop: "⌍", dollar: "$", dopf: "𝕕", doteqdot: "≑", eDot: "≑", dotminus: "∸", minusd: "∸", dotplus: "∔", plusdo: "∔", dotsquare: "⊡", sdotb: "⊡", drcorn: "⌟", lrcorner: "⌟", drcrop: "⌌", dscr: "𝒹", dscy: "ѕ", dsol: "⧶", dstrok: "đ", dtdot: "⋱", dtri: "▿", triangledown: "▿", dwangle: "⦦", dzcy: "џ", dzigrarr: "⟿", eacute: "é", easter: "⩮", ecaron: "ě", ecir: "≖", eqcirc: "≖", ecirc: "ê", ecolon: "≕", eqcolon: "≕", ecy: "э", edot: "ė", efDot: "≒", fallingdotseq: "≒", efr: "𝔢", eg: "⪚", egrave: "è", egs: "⪖", eqslantgtr: "⪖", egsdot: "⪘", el: "⪙", elinters: "⏧", ell: "ℓ", els: "⪕", eqslantless: "⪕", elsdot: "⪗", emacr: "ē", empty: "∅", emptyset: "∅", emptyv: "∅", varnothing: "∅", emsp13: " ", emsp14: " ", emsp: " ", eng: "ŋ", ensp: " ", eogon: "ę", eopf: "𝕖", epar: "⋕", eparsl: "⧣", eplus: "⩱", epsi: "ε", epsilon: "ε", epsiv: "ϵ", straightepsilon: "ϵ", varepsilon: "ϵ", equals: "=", equest: "≟", questeq: "≟", equivDD: "⩸", eqvparsl: "⧥", erDot: "≓", risingdotseq: "≓", erarr: "⥱", escr: "ℯ", eta: "η", eth: "ð", euml: "ë", euro: "€", excl: "!", fcy: "ф", female: "♀", ffilig: "ffi", fflig: "ff", ffllig: "ffl", ffr: "𝔣", filig: "fi", fjlig: "fj", flat: "♭", fllig: "fl", fltns: "▱", fnof: "ƒ", fopf: "𝕗", fork: "⋔", pitchfork: "⋔", forkv: "⫙", fpartint: "⨍", frac12: "½", half: "½", frac13: "⅓", frac14: "¼", frac15: "⅕", frac16: "⅙", frac18: "⅛", frac23: "⅔", frac25: "⅖", frac34: "¾", frac35: "⅗", frac38: "⅜", frac45: "⅘", frac56: "⅚", frac58: "⅝", frac78: "⅞", frasl: "⁄", frown: "⌢", sfrown: "⌢", fscr: "𝒻", gEl: "⪌", gtreqqless: "⪌", gacute: "ǵ", gamma: "γ", gap: "⪆", gtrapprox: "⪆", gbreve: "ğ", gcirc: "ĝ", gcy: "г", gdot: "ġ", gescc: "⪩", gesdot: "⪀", gesdoto: "⪂", gesdotol: "⪄", gesl: "⋛︀", gesles: "⪔", gfr: "𝔤", gimel: "ℷ", gjcy: "ѓ", glE: "⪒", gla: "⪥", glj: "⪤", gnE: "≩", gneqq: "≩", gnap: "⪊", gnapprox: "⪊", gne: "⪈", gneq: "⪈", gnsim: "⋧", gopf: "𝕘", gscr: "ℊ", gsime: "⪎", gsiml: "⪐", gtcc: "⪧", gtcir: "⩺", gtdot: "⋗", gtrdot: "⋗", gtlPar: "⦕", gtquest: "⩼", gtrarr: "⥸", gvertneqq: "≩︀", gvnE: "≩︀", hardcy: "ъ", harrcir: "⥈", harrw: "↭", leftrightsquigarrow: "↭", hbar: "ℏ", hslash: "ℏ", planck: "ℏ", plankv: "ℏ", hcirc: "ĥ", hearts: "♥", heartsuit: "♥", hellip: "…", mldr: "…", hercon: "⊹", hfr: "𝔥", hksearow: "⤥", searhk: "⤥", hkswarow: "⤦", swarhk: "⤦", hoarr: "⇿", homtht: "∻", hookleftarrow: "↩", larrhk: "↩", hookrightarrow: "↪", rarrhk: "↪", hopf: "𝕙", horbar: "―", hscr: "𝒽", hstrok: "ħ", hybull: "⁃", iacute: "í", icirc: "î", icy: "и", iecy: "е", iexcl: "¡", ifr: "𝔦", igrave: "ì", iiiint: "⨌", qint: "⨌", iiint: "∭", tint: "∭", iinfin: "⧜", iiota: "℩", ijlig: "ij", imacr: "ī", imath: "ı", inodot: "ı", imof: "⊷", imped: "Ƶ", incare: "℅", infin: "∞", infintie: "⧝", intcal: "⊺", intercal: "⊺", intlarhk: "⨗", intprod: "⨼", iprod: "⨼", iocy: "ё", iogon: "į", iopf: "𝕚", iota: "ι", iquest: "¿", iscr: "𝒾", isinE: "⋹", isindot: "⋵", isins: "⋴", isinsv: "⋳", itilde: "ĩ", iukcy: "і", iuml: "ï", jcirc: "ĵ", jcy: "й", jfr: "𝔧", jmath: "ȷ", jopf: "𝕛", jscr: "𝒿", jsercy: "ј", jukcy: "є", kappa: "κ", kappav: "ϰ", varkappa: "ϰ", kcedil: "ķ", kcy: "к", kfr: "𝔨", kgreen: "ĸ", khcy: "х", kjcy: "ќ", kopf: "𝕜", kscr: "𝓀", lAtail: "⤛", lBarr: "⤎", lEg: "⪋", lesseqqgtr: "⪋", lHar: "⥢", lacute: "ĺ", laemptyv: "⦴", lambda: "λ", langd: "⦑", lap: "⪅", lessapprox: "⪅", laquo: "«", larrbfs: "⤟", larrfs: "⤝", larrlp: "↫", looparrowleft: "↫", larrpl: "⤹", larrsim: "⥳", larrtl: "↢", leftarrowtail: "↢", lat: "⪫", latail: "⤙", late: "⪭", lates: "⪭︀", lbarr: "⤌", lbbrk: "❲", lbrace: "{", lcub: "{", lbrack: "[", lsqb: "[", lbrke: "⦋", lbrksld: "⦏", lbrkslu: "⦍", lcaron: "ľ", lcedil: "ļ", lcy: "л", ldca: "⤶", ldrdhar: "⥧", ldrushar: "⥋", ldsh: "↲", le: "≤", leq: "≤", leftleftarrows: "⇇", llarr: "⇇", leftthreetimes: "⋋", lthree: "⋋", lescc: "⪨", lesdot: "⩿", lesdoto: "⪁", lesdotor: "⪃", lesg: "⋚︀", lesges: "⪓", lessdot: "⋖", ltdot: "⋖", lfisht: "⥼", lfr: "𝔩", lgE: "⪑", lharul: "⥪", lhblk: "▄", ljcy: "љ", llhard: "⥫", lltri: "◺", lmidot: "ŀ", lmoust: "⎰", lmoustache: "⎰", lnE: "≨", lneqq: "≨", lnap: "⪉", lnapprox: "⪉", lne: "⪇", lneq: "⪇", lnsim: "⋦", loang: "⟬", loarr: "⇽", longmapsto: "⟼", xmap: "⟼", looparrowright: "↬", rarrlp: "↬", lopar: "⦅", lopf: "𝕝", loplus: "⨭", lotimes: "⨴", lowast: "∗", loz: "◊", lozenge: "◊", lpar: "(", lparlt: "⦓", lrhard: "⥭", lrm: "‎", lrtri: "⊿", lsaquo: "‹", lscr: "𝓁", lsime: "⪍", lsimg: "⪏", lsquor: "‚", sbquo: "‚", lstrok: "ł", ltcc: "⪦", ltcir: "⩹", ltimes: "⋉", ltlarr: "⥶", ltquest: "⩻", ltrPar: "⦖", ltri: "◃", triangleleft: "◃", lurdshar: "⥊", luruhar: "⥦", lvertneqq: "≨︀", lvnE: "≨︀", mDDot: "∺", macr: "¯", strns: "¯", male: "♂", malt: "✠", maltese: "✠", marker: "▮", mcomma: "⨩", mcy: "м", mdash: "—", mfr: "𝔪", mho: "℧", micro: "µ", midcir: "⫰", minus: "−", minusdu: "⨪", mlcp: "⫛", models: "⊧", mopf: "𝕞", mscr: "𝓂", mu: "μ", multimap: "⊸", mumap: "⊸", nGg: "⋙̸", nGt: "≫⃒", nLeftarrow: "⇍", nlArr: "⇍", nLeftrightarrow: "⇎", nhArr: "⇎", nLl: "⋘̸", nLt: "≪⃒", nRightarrow: "⇏", nrArr: "⇏", nVDash: "⊯", nVdash: "⊮", nacute: "ń", nang: "∠⃒", napE: "⩰̸", napid: "≋̸", napos: "ʼn", natur: "♮", natural: "♮", ncap: "⩃", ncaron: "ň", ncedil: "ņ", ncongdot: "⩭̸", ncup: "⩂", ncy: "н", ndash: "–", neArr: "⇗", nearhk: "⤤", nedot: "≐̸", nesear: "⤨", toea: "⤨", nfr: "𝔫", nharr: "↮", nleftrightarrow: "↮", nhpar: "⫲", nis: "⋼", nisd: "⋺", njcy: "њ", nlE: "≦̸", nleqq: "≦̸", nlarr: "↚", nleftarrow: "↚", nldr: "‥", nopf: "𝕟", not: "¬", notinE: "⋹̸", notindot: "⋵̸", notinvb: "⋷", notinvc: "⋶", notnivb: "⋾", notnivc: "⋽", nparsl: "⫽⃥", npart: "∂̸", npolint: "⨔", nrarr: "↛", nrightarrow: "↛", nrarrc: "⤳̸", nrarrw: "↝̸", nscr: "𝓃", nsub: "⊄", nsubE: "⫅̸", nsubseteqq: "⫅̸", nsup: "⊅", nsupE: "⫆̸", nsupseteqq: "⫆̸", ntilde: "ñ", nu: "ν", num: "#", numero: "№", numsp: " ", nvDash: "⊭", nvHarr: "⤄", nvap: "≍⃒", nvdash: "⊬", nvge: "≥⃒", nvgt: ">⃒", nvinfin: "⧞", nvlArr: "⤂", nvle: "≤⃒", nvlt: "<⃒", nvltrie: "⊴⃒", nvrArr: "⤃", nvrtrie: "⊵⃒", nvsim: "∼⃒", nwArr: "⇖", nwarhk: "⤣", nwnear: "⤧", oacute: "ó", ocirc: "ô", ocy: "о", odblac: "ő", odiv: "⨸", odsold: "⦼", oelig: "œ", ofcir: "⦿", ofr: "𝔬", ogon: "˛", ograve: "ò", ogt: "⧁", ohbar: "⦵", olcir: "⦾", olcross: "⦻", olt: "⧀", omacr: "ō", omega: "ω", omicron: "ο", omid: "⦶", oopf: "𝕠", opar: "⦷", operp: "⦹", or: "∨", vee: "∨", ord: "⩝", order: "ℴ", orderof: "ℴ", oscr: "ℴ", ordf: "ª", ordm: "º", origof: "⊶", oror: "⩖", orslope: "⩗", orv: "⩛", oslash: "ø", osol: "⊘", otilde: "õ", otimesas: "⨶", ouml: "ö", ovbar: "⌽", para: "¶", parsim: "⫳", parsl: "⫽", pcy: "п", percnt: "%", period: ".", permil: "‰", pertenk: "‱", pfr: "𝔭", phi: "φ", phiv: "ϕ", straightphi: "ϕ", varphi: "ϕ", phone: "☎", pi: "π", piv: "ϖ", varpi: "ϖ", planckh: "ℎ", plus: "+", plusacir: "⨣", pluscir: "⨢", plusdu: "⨥", pluse: "⩲", plussim: "⨦", plustwo: "⨧", pointint: "⨕", popf: "𝕡", pound: "£", prE: "⪳", prap: "⪷", precapprox: "⪷", precnapprox: "⪹", prnap: "⪹", precneqq: "⪵", prnE: "⪵", precnsim: "⋨", prnsim: "⋨", prime: "′", profalar: "⌮", profline: "⌒", profsurf: "⌓", prurel: "⊰", pscr: "𝓅", psi: "ψ", puncsp: " ", qfr: "𝔮", qopf: "𝕢", qprime: "⁗", qscr: "𝓆", quatint: "⨖", quest: "?", rAtail: "⤜", rHar: "⥤", race: "∽̱", racute: "ŕ", raemptyv: "⦳", rangd: "⦒", range: "⦥", raquo: "»", rarrap: "⥵", rarrbfs: "⤠", rarrc: "⤳", rarrfs: "⤞", rarrpl: "⥅", rarrsim: "⥴", rarrtl: "↣", rightarrowtail: "↣", rarrw: "↝", rightsquigarrow: "↝", ratail: "⤚", ratio: "∶", rbbrk: "❳", rbrace: "}", rcub: "}", rbrack: "]", rsqb: "]", rbrke: "⦌", rbrksld: "⦎", rbrkslu: "⦐", rcaron: "ř", rcedil: "ŗ", rcy: "р", rdca: "⤷", rdldhar: "⥩", rdsh: "↳", rect: "▭", rfisht: "⥽", rfr: "𝔯", rharul: "⥬", rho: "ρ", rhov: "ϱ", varrho: "ϱ", rightrightarrows: "⇉", rrarr: "⇉", rightthreetimes: "⋌", rthree: "⋌", ring: "˚", rlm: "‏", rmoust: "⎱", rmoustache: "⎱", rnmid: "⫮", roang: "⟭", roarr: "⇾", ropar: "⦆", ropf: "𝕣", roplus: "⨮", rotimes: "⨵", rpar: ")", rpargt: "⦔", rppolint: "⨒", rsaquo: "›", rscr: "𝓇", rtimes: "⋊", rtri: "▹", triangleright: "▹", rtriltri: "⧎", ruluhar: "⥨", rx: "℞", sacute: "ś", scE: "⪴", scap: "⪸", succapprox: "⪸", scaron: "š", scedil: "ş", scirc: "ŝ", scnE: "⪶", succneqq: "⪶", scnap: "⪺", succnapprox: "⪺", scnsim: "⋩", succnsim: "⋩", scpolint: "⨓", scy: "с", sdot: "⋅", sdote: "⩦", seArr: "⇘", sect: "§", semi: ";", seswar: "⤩", tosa: "⤩", sext: "✶", sfr: "𝔰", sharp: "♯", shchcy: "щ", shcy: "ш", shy: "­", sigma: "σ", sigmaf: "ς", sigmav: "ς", varsigma: "ς", simdot: "⩪", simg: "⪞", simgE: "⪠", siml: "⪝", simlE: "⪟", simne: "≆", simplus: "⨤", simrarr: "⥲", smashp: "⨳", smeparsl: "⧤", smile: "⌣", ssmile: "⌣", smt: "⪪", smte: "⪬", smtes: "⪬︀", softcy: "ь", sol: "/", solb: "⧄", solbar: "⌿", sopf: "𝕤", spades: "♠", spadesuit: "♠", sqcaps: "⊓︀", sqcups: "⊔︀", sscr: "𝓈", star: "☆", sub: "⊂", subset: "⊂", subE: "⫅", subseteqq: "⫅", subdot: "⪽", subedot: "⫃", submult: "⫁", subnE: "⫋", subsetneqq: "⫋", subne: "⊊", subsetneq: "⊊", subplus: "⪿", subrarr: "⥹", subsim: "⫇", subsub: "⫕", subsup: "⫓", sung: "♪", sup1: "¹", sup2: "²", sup3: "³", supE: "⫆", supseteqq: "⫆", supdot: "⪾", supdsub: "⫘", supedot: "⫄", suphsol: "⟉", suphsub: "⫗", suplarr: "⥻", supmult: "⫂", supnE: "⫌", supsetneqq: "⫌", supne: "⊋", supsetneq: "⊋", supplus: "⫀", supsim: "⫈", supsub: "⫔", supsup: "⫖", swArr: "⇙", swnwar: "⤪", szlig: "ß", target: "⌖", tau: "τ", tcaron: "ť", tcedil: "ţ", tcy: "т", telrec: "⌕", tfr: "𝔱", theta: "θ", thetasym: "ϑ", thetav: "ϑ", vartheta: "ϑ", thorn: "þ", times: "×", timesbar: "⨱", timesd: "⨰", topbot: "⌶", topcir: "⫱", topf: "𝕥", topfork: "⫚", tprime: "‴", triangle: "▵", utri: "▵", triangleq: "≜", trie: "≜", tridot: "◬", triminus: "⨺", triplus: "⨹", trisb: "⧍", tritime: "⨻", trpezium: "⏢", tscr: "𝓉", tscy: "ц", tshcy: "ћ", tstrok: "ŧ", uHar: "⥣", uacute: "ú", ubrcy: "ў", ubreve: "ŭ", ucirc: "û", ucy: "у", udblac: "ű", ufisht: "⥾", ufr: "𝔲", ugrave: "ù", uhblk: "▀", ulcorn: "⌜", ulcorner: "⌜", ulcrop: "⌏", ultri: "◸", umacr: "ū", uogon: "ų", uopf: "𝕦", upsi: "υ", upsilon: "υ", upuparrows: "⇈", uuarr: "⇈", urcorn: "⌝", urcorner: "⌝", urcrop: "⌎", uring: "ů", urtri: "◹", uscr: "𝓊", utdot: "⋰", utilde: "ũ", uuml: "ü", uwangle: "⦧", vBar: "⫨", vBarv: "⫩", vangrt: "⦜", varsubsetneq: "⊊︀", vsubne: "⊊︀", varsubsetneqq: "⫋︀", vsubnE: "⫋︀", varsupsetneq: "⊋︀", vsupne: "⊋︀", varsupsetneqq: "⫌︀", vsupnE: "⫌︀", vcy: "в", veebar: "⊻", veeeq: "≚", vellip: "⋮", vfr: "𝔳", vopf: "𝕧", vscr: "𝓋", vzigzag: "⦚", wcirc: "ŵ", wedbar: "⩟", wedgeq: "≙", weierp: "℘", wp: "℘", wfr: "𝔴", wopf: "𝕨", wscr: "𝓌", xfr: "𝔵", xi: "ξ", xnis: "⋻", xopf: "𝕩", xscr: "𝓍", yacute: "ý", yacy: "я", ycirc: "ŷ", ycy: "ы", yen: "¥", yfr: "𝔶", yicy: "ї", yopf: "𝕪", yscr: "𝓎", yucy: "ю", yuml: "ÿ", zacute: "ź", zcaron: "ž", zcy: "з", zdot: "ż", zeta: "ζ", zfr: "𝔷", zhcy: "ж", zigrarr: "⇝", zopf: "𝕫", zscr: "𝓏", zwj: "‍", zwnj: "‌" }, ps = "";
1552
+ Be.ngsp = ps;
1553
+ var hs = [/@/, /^\s*$/, /[<>]/, /^[{}]$/, /&(#|[a-z])/i, /^\/\//];
1554
+ function ds(e, t) {
1555
+ if (t != null && !(Array.isArray(t) && t.length == 2)) throw new Error(`Expected '${e}' to be an array, [start, end].`);
1556
+ if (t != null) {
1557
+ let r = t[0], n = t[1];
1558
+ hs.forEach((a) => {
1559
+ if (a.test(r) || a.test(n)) throw new Error(`['${r}', '${n}'] contains unusable interpolation symbol.`);
1560
+ });
1561
+ }
1562
+ }
1563
+ var ms = class jr {
1564
+ static fromArray(t) {
1565
+ return t ? (ds("interpolation", t), new jr(t[0], t[1])) : Gr;
1566
+ }
1567
+ constructor(t, r) {
1568
+ this.start = t, this.end = r;
1569
+ }
1570
+ }, Gr = new ms("{{", "}}"), Ze = class extends Or {
1571
+ constructor(e, t, r) {
1572
+ super(r, e), this.tokenType = t;
1573
+ }
1574
+ }, gs = class {
1575
+ constructor(e, t, r) {
1576
+ this.tokens = e, this.errors = t, this.nonNormalizedIcuExpressions = r;
1577
+ }
1578
+ };
1579
+ function fs(e, t, r, n = {}) {
1580
+ let a = new Ss(new Vr(e, t), r, n);
1581
+ return a.tokenize(), new gs(ks(a.tokens), a.errors, a.nonNormalizedIcuExpressions);
1582
+ }
1583
+ var vs = /\r\n?/g;
1584
+ function X(e) {
1585
+ return `Unexpected character "${e === 0 ? "EOF" : String.fromCharCode(e)}"`;
1586
+ }
1587
+ function Qt(e) {
1588
+ return `Unknown entity "${e}" - use the "&#<decimal>;" or "&#x<hex>;" syntax`;
1589
+ }
1590
+ function Cs(e, t) {
1591
+ return `Unable to parse entity "${t}" - ${e} character reference entities must end with ";"`;
1592
+ }
1593
+ var Le;
1594
+ (function(e) {
1595
+ e.HEX = "hexadecimal", e.DEC = "decimal";
1596
+ })(Le || (Le = {}));
1597
+ var et = class {
1598
+ constructor(e) {
1599
+ this.error = e;
1600
+ }
1601
+ }, Ss = class {
1602
+ constructor(e, t, r) {
1603
+ this._getTagContentType = t, this._currentTokenStart = null, this._currentTokenType = null, this._expansionCaseStack = [], this._inInterpolation = !1, this._fullNameStack = [], this.tokens = [], this.errors = [], this.nonNormalizedIcuExpressions = [], this._tokenizeIcu = r.tokenizeExpansionForms || !1, this._interpolationConfig = r.interpolationConfig || Gr, this._leadingTriviaCodePoints = r.leadingTriviaChars && r.leadingTriviaChars.map((a) => a.codePointAt(0) || 0), this._canSelfClose = r.canSelfClose || !1, this._allowHtmComponentClosingTags = r.allowHtmComponentClosingTags || !1;
1604
+ let n = r.range || { endPos: e.content.length, startPos: 0, startLine: 0, startCol: 0 };
1605
+ this._cursor = r.escapedString ? new Es(e, n) : new Kr(e, n), this._preserveLineEndings = r.preserveLineEndings || !1, this._i18nNormalizeLineEndingsInICUs = r.i18nNormalizeLineEndingsInICUs || !1, this._tokenizeBlocks = r.tokenizeBlocks ?? !0, this._tokenizeLet = r.tokenizeLet ?? !0;
1606
+ try {
1607
+ this._cursor.init();
1608
+ } catch (a) {
1609
+ this.handleError(a);
1610
+ }
1611
+ }
1612
+ _processCarriageReturns(e) {
1613
+ return this._preserveLineEndings ? e : e.replace(vs, `
1614
+ `);
1615
+ }
1616
+ tokenize() {
1617
+ for (; this._cursor.peek() !== 0; ) {
1618
+ let e = this._cursor.clone();
1619
+ try {
1620
+ 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);
1621
+ else if (this._attemptCharCode(47)) this._consumeTagClose(e);
1622
+ else {
1623
+ let t = this._cursor.clone();
1624
+ this._attemptCharCode(63) ? (this._cursor = t, this._consumeBogusComment(e)) : this._consumeTagOpen(e);
1625
+ }
1626
+ else this._tokenizeLet && this._cursor.peek() === 64 && !this._inInterpolation && this._attemptStr("@let") ? this._consumeLetDeclaration(e) : this._tokenizeBlocks && this._attemptCharCode(64) ? 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());
1627
+ } catch (t) {
1628
+ this.handleError(t);
1629
+ }
1630
+ }
1631
+ this._beginToken(34), this._endToken([]);
1632
+ }
1633
+ _getBlockName() {
1634
+ let e = !1, t = this._cursor.clone();
1635
+ return this._attemptCharCodeUntilFn((r) => Ee(r) ? !e : tr(r) ? (e = !0, !1) : !0), this._cursor.getChars(t).trim();
1636
+ }
1637
+ _consumeBlockStart(e) {
1638
+ this._beginToken(25, e);
1639
+ let t = this._endToken([this._getBlockName()]);
1640
+ if (this._cursor.peek() === 40) if (this._cursor.advance(), this._consumeBlockParameters(), this._attemptCharCodeUntilFn(b), this._attemptCharCode(41)) this._attemptCharCodeUntilFn(b);
1641
+ else {
1642
+ t.type = 29;
1643
+ return;
1644
+ }
1645
+ this._attemptCharCode(123) ? (this._beginToken(26), this._endToken([])) : t.type = 29;
1646
+ }
1647
+ _consumeBlockEnd(e) {
1648
+ this._beginToken(27, e), this._endToken([]);
1649
+ }
1650
+ _consumeBlockParameters() {
1651
+ for (this._attemptCharCodeUntilFn(rr); this._cursor.peek() !== 41 && this._cursor.peek() !== 0; ) {
1652
+ this._beginToken(28);
1653
+ let e = this._cursor.clone(), t = null, r = 0;
1654
+ for (; this._cursor.peek() !== 59 && this._cursor.peek() !== 0 || t !== null; ) {
1655
+ let n = this._cursor.peek();
1656
+ if (n === 92) this._cursor.advance();
1657
+ else if (n === t) t = null;
1658
+ else if (t === null && Qe(n)) t = n;
1659
+ else if (n === 40 && t === null) r++;
1660
+ else if (n === 41 && t === null) {
1661
+ if (r === 0) break;
1662
+ r > 0 && r--;
1663
+ }
1664
+ this._cursor.advance();
1665
+ }
1666
+ this._endToken([this._cursor.getChars(e)]), this._attemptCharCodeUntilFn(rr);
1667
+ }
1668
+ }
1669
+ _consumeLetDeclaration(e) {
1670
+ if (this._beginToken(30, e), Ee(this._cursor.peek())) this._attemptCharCodeUntilFn(b);
1671
+ else {
1672
+ let r = this._endToken([this._cursor.getChars(e)]);
1673
+ r.type = 33;
1674
+ return;
1675
+ }
1676
+ let t = this._endToken([this._getLetDeclarationName()]);
1677
+ if (this._attemptCharCodeUntilFn(b), !this._attemptCharCode(61)) {
1678
+ t.type = 33;
1679
+ return;
1680
+ }
1681
+ this._attemptCharCodeUntilFn((r) => b(r) && !Dt(r)), this._consumeLetDeclarationValue(), this._cursor.peek() === 59 ? (this._beginToken(32), this._endToken([]), this._cursor.advance()) : (t.type = 33, t.sourceSpan = this._cursor.getSpan(e));
1682
+ }
1683
+ _getLetDeclarationName() {
1684
+ let e = this._cursor.clone(), t = !1;
1685
+ return this._attemptCharCodeUntilFn((r) => xe(r) || r == 36 || r === 95 || t && xt(r) ? (t = !0, !1) : !0), this._cursor.getChars(e).trim();
1686
+ }
1687
+ _consumeLetDeclarationValue() {
1688
+ let e = this._cursor.clone();
1689
+ for (this._beginToken(31, e); this._cursor.peek() !== 0; ) {
1690
+ let t = this._cursor.peek();
1691
+ if (t === 59) break;
1692
+ Qe(t) && (this._cursor.advance(), this._attemptCharCodeUntilFn((r) => r === 92 ? (this._cursor.advance(), !1) : r === t)), this._cursor.advance();
1693
+ }
1694
+ this._endToken([this._cursor.getChars(e)]);
1695
+ }
1696
+ _tokenizeExpansionForm() {
1697
+ if (this.isExpansionFormStart()) return this._consumeExpansionFormStart(), !0;
1698
+ if (ws(this._cursor.peek()) && this._isInExpansionForm()) return this._consumeExpansionCaseStart(), !0;
1699
+ if (this._cursor.peek() === 125) {
1700
+ if (this._isInExpansionCase()) return this._consumeExpansionCaseEnd(), !0;
1701
+ if (this._isInExpansionForm()) return this._consumeExpansionFormEnd(), !0;
1702
+ }
1703
+ return !1;
1704
+ }
1705
+ _beginToken(e, t = this._cursor.clone()) {
1706
+ this._currentTokenStart = t, this._currentTokenType = e;
1707
+ }
1708
+ _endToken(e, t) {
1709
+ if (this._currentTokenStart === null) throw new Ze("Programming error - attempted to end a token when there was no start to the token", this._currentTokenType, this._cursor.getSpan(t));
1710
+ if (this._currentTokenType === null) throw new Ze("Programming error - attempted to end a token which has no token type", null, this._cursor.getSpan(this._currentTokenStart));
1711
+ let r = { type: this._currentTokenType, parts: e, sourceSpan: (t ?? this._cursor).getSpan(this._currentTokenStart, this._leadingTriviaCodePoints) };
1712
+ return this.tokens.push(r), this._currentTokenStart = null, this._currentTokenType = null, r;
1713
+ }
1714
+ _createError(e, t) {
1715
+ this._isInExpansionForm() && (e += ` (Do you have an unescaped "{" in your template? Use "{{ '{' }}") to escape it.)`);
1716
+ let r = new Ze(e, this._currentTokenType, t);
1717
+ return this._currentTokenStart = null, this._currentTokenType = null, new et(r);
1718
+ }
1719
+ handleError(e) {
1720
+ if (e instanceof Tt && (e = this._createError(e.msg, this._cursor.getSpan(e.cursor))), e instanceof et) this.errors.push(e.error);
1721
+ else throw e;
1722
+ }
1723
+ _attemptCharCode(e) {
1724
+ return this._cursor.peek() === e ? (this._cursor.advance(), !0) : !1;
1725
+ }
1726
+ _attemptCharCodeCaseInsensitive(e) {
1727
+ return As(this._cursor.peek(), e) ? (this._cursor.advance(), !0) : !1;
1728
+ }
1729
+ _requireCharCode(e) {
1730
+ let t = this._cursor.clone();
1731
+ if (!this._attemptCharCode(e)) throw this._createError(X(this._cursor.peek()), this._cursor.getSpan(t));
1732
+ }
1733
+ _attemptStr(e) {
1734
+ let t = e.length;
1735
+ if (this._cursor.charsLeft() < t) return !1;
1736
+ let r = this._cursor.clone();
1737
+ for (let n = 0; n < t; n++) if (!this._attemptCharCode(e.charCodeAt(n))) return this._cursor = r, !1;
1738
+ return !0;
1739
+ }
1740
+ _attemptStrCaseInsensitive(e) {
1741
+ for (let t = 0; t < e.length; t++) if (!this._attemptCharCodeCaseInsensitive(e.charCodeAt(t))) return !1;
1742
+ return !0;
1743
+ }
1744
+ _requireStr(e) {
1745
+ let t = this._cursor.clone();
1746
+ if (!this._attemptStr(e)) throw this._createError(X(this._cursor.peek()), this._cursor.getSpan(t));
1747
+ }
1748
+ _requireStrCaseInsensitive(e) {
1749
+ let t = this._cursor.clone();
1750
+ if (!this._attemptStrCaseInsensitive(e)) throw this._createError(X(this._cursor.peek()), this._cursor.getSpan(t));
1751
+ }
1752
+ _attemptCharCodeUntilFn(e) {
1753
+ for (; !e(this._cursor.peek()); ) this._cursor.advance();
1754
+ }
1755
+ _requireCharCodeUntilFn(e, t) {
1756
+ let r = this._cursor.clone();
1757
+ if (this._attemptCharCodeUntilFn(e), this._cursor.diff(r) < t) throw this._createError(X(this._cursor.peek()), this._cursor.getSpan(r));
1758
+ }
1759
+ _attemptUntilChar(e) {
1760
+ for (; this._cursor.peek() !== e; ) this._cursor.advance();
1761
+ }
1762
+ _readChar() {
1763
+ let e = String.fromCodePoint(this._cursor.peek());
1764
+ return this._cursor.advance(), e;
1765
+ }
1766
+ _consumeEntity(e) {
1767
+ this._beginToken(9);
1768
+ let t = this._cursor.clone();
1769
+ if (this._cursor.advance(), this._attemptCharCode(35)) {
1770
+ let r = this._attemptCharCode(120) || this._attemptCharCode(88), n = this._cursor.clone();
1771
+ if (this._attemptCharCodeUntilFn(bs), this._cursor.peek() != 59) {
1772
+ this._cursor.advance();
1773
+ let i = r ? Le.HEX : Le.DEC;
1774
+ throw this._createError(Cs(i, this._cursor.getChars(t)), this._cursor.getSpan());
1775
+ }
1776
+ let a = this._cursor.getChars(n);
1777
+ this._cursor.advance();
1778
+ try {
1779
+ let i = parseInt(a, r ? 16 : 10);
1780
+ this._endToken([String.fromCharCode(i), this._cursor.getChars(t)]);
1781
+ } catch {
1782
+ throw this._createError(Qt(this._cursor.getChars(t)), this._cursor.getSpan());
1783
+ }
1784
+ } else {
1785
+ let r = this._cursor.clone();
1786
+ if (this._attemptCharCodeUntilFn(_s), this._cursor.peek() != 59) this._beginToken(e, t), this._cursor = r, this._endToken(["&"]);
1787
+ else {
1788
+ let n = this._cursor.getChars(r);
1789
+ this._cursor.advance();
1790
+ let a = Be[n];
1791
+ if (!a) throw this._createError(Qt(n), this._cursor.getSpan(t));
1792
+ this._endToken([a, `&${n};`]);
1793
+ }
1794
+ }
1795
+ }
1796
+ _consumeRawText(e, t) {
1797
+ this._beginToken(e ? 6 : 7);
1798
+ let r = [];
1799
+ for (; ; ) {
1800
+ let n = this._cursor.clone(), a = t();
1801
+ if (this._cursor = n, a) break;
1802
+ e && this._cursor.peek() === 38 ? (this._endToken([this._processCarriageReturns(r.join(""))]), r.length = 0, this._consumeEntity(6), this._beginToken(6)) : r.push(this._readChar());
1803
+ }
1804
+ this._endToken([this._processCarriageReturns(r.join(""))]);
1805
+ }
1806
+ _consumeComment(e) {
1807
+ this._beginToken(10, e), this._endToken([]), this._consumeRawText(!1, () => this._attemptStr("-->")), this._beginToken(11), this._requireStr("-->"), this._endToken([]);
1808
+ }
1809
+ _consumeBogusComment(e) {
1810
+ this._beginToken(10, e), this._endToken([]), this._consumeRawText(!1, () => this._cursor.peek() === 62), this._beginToken(11), this._cursor.advance(), this._endToken([]);
1811
+ }
1812
+ _consumeCdata(e) {
1813
+ this._beginToken(12, e), this._endToken([]), this._consumeRawText(!1, () => this._attemptStr("]]>")), this._beginToken(13), this._requireStr("]]>"), this._endToken([]);
1814
+ }
1815
+ _consumeDocType(e) {
1816
+ this._beginToken(18, e), this._endToken([]), this._consumeRawText(!1, () => this._cursor.peek() === 62), this._beginToken(19), this._cursor.advance(), this._endToken([]);
1817
+ }
1818
+ _consumePrefixAndName() {
1819
+ let e = this._cursor.clone(), t = "";
1820
+ for (; this._cursor.peek() !== 58 && !ys(this._cursor.peek()); ) this._cursor.advance();
1821
+ let r;
1822
+ this._cursor.peek() === 58 ? (t = this._cursor.getChars(e), this._cursor.advance(), r = this._cursor.clone()) : r = e, this._requireCharCodeUntilFn(Zt, t === "" ? 0 : 1);
1823
+ let n = this._cursor.getChars(r);
1824
+ return [t, n];
1825
+ }
1826
+ _consumeTagOpen(e) {
1827
+ let t, r, n, a = [];
1828
+ try {
1829
+ if (!xe(this._cursor.peek())) throw this._createError(X(this._cursor.peek()), this._cursor.getSpan(e));
1830
+ for (n = this._consumeTagOpenStart(e), r = n.parts[0], t = n.parts[1], this._attemptCharCodeUntilFn(b); this._cursor.peek() !== 47 && this._cursor.peek() !== 62 && this._cursor.peek() !== 60 && this._cursor.peek() !== 0; ) {
1831
+ let [s, u] = this._consumeAttributeName();
1832
+ if (this._attemptCharCodeUntilFn(b), this._attemptCharCode(61)) {
1833
+ this._attemptCharCodeUntilFn(b);
1834
+ let o = this._consumeAttributeValue();
1835
+ a.push({ prefix: s, name: u, value: o });
1836
+ } else a.push({ prefix: s, name: u });
1837
+ this._attemptCharCodeUntilFn(b);
1838
+ }
1839
+ this._consumeTagOpenEnd();
1840
+ } catch (s) {
1841
+ if (s instanceof et) {
1842
+ n ? n.type = 4 : (this._beginToken(5, e), this._endToken(["<"]));
1843
+ return;
1844
+ }
1845
+ throw s;
1846
+ }
1847
+ if (this._canSelfClose && this.tokens[this.tokens.length - 1].type === 2) return;
1848
+ let i = this._getTagContentType(t, r, this._fullNameStack.length > 0, a);
1849
+ this._handleFullNameStackForTagOpen(r, t), i === N.RAW_TEXT ? this._consumeRawTextWithTagClose(r, t, !1) : i === N.ESCAPABLE_RAW_TEXT && this._consumeRawTextWithTagClose(r, t, !0);
1850
+ }
1851
+ _consumeRawTextWithTagClose(e, t, r) {
1852
+ this._consumeRawText(r, () => !this._attemptCharCode(60) || !this._attemptCharCode(47) || (this._attemptCharCodeUntilFn(b), !this._attemptStrCaseInsensitive(e ? `${e}:${t}` : t)) ? !1 : (this._attemptCharCodeUntilFn(b), this._attemptCharCode(62))), this._beginToken(3), this._requireCharCodeUntilFn((n) => n === 62, 3), this._cursor.advance(), this._endToken([e, t]), this._handleFullNameStackForTagClose(e, t);
1853
+ }
1854
+ _consumeTagOpenStart(e) {
1855
+ this._beginToken(0, e);
1856
+ let t = this._consumePrefixAndName();
1857
+ return this._endToken(t);
1858
+ }
1859
+ _consumeAttributeName() {
1860
+ let e = this._cursor.peek();
1861
+ if (e === 39 || e === 34) throw this._createError(X(e), this._cursor.getSpan());
1862
+ this._beginToken(14);
1863
+ let t = this._consumePrefixAndName();
1864
+ return this._endToken(t), t;
1865
+ }
1866
+ _consumeAttributeValue() {
1867
+ let e;
1868
+ if (this._cursor.peek() === 39 || this._cursor.peek() === 34) {
1869
+ let t = this._cursor.peek();
1870
+ this._consumeQuote(t);
1871
+ let r = () => this._cursor.peek() === t;
1872
+ e = this._consumeWithInterpolation(16, 17, r, r), this._consumeQuote(t);
1873
+ } else {
1874
+ let t = () => Zt(this._cursor.peek());
1875
+ e = this._consumeWithInterpolation(16, 17, t, t);
1876
+ }
1877
+ return e;
1878
+ }
1879
+ _consumeQuote(e) {
1880
+ this._beginToken(15), this._requireCharCode(e), this._endToken([String.fromCodePoint(e)]);
1881
+ }
1882
+ _consumeTagOpenEnd() {
1883
+ let e = this._attemptCharCode(47) ? 2 : 1;
1884
+ this._beginToken(e), this._requireCharCode(62), this._endToken([]);
1885
+ }
1886
+ _consumeTagClose(e) {
1887
+ if (this._beginToken(3, e), this._attemptCharCodeUntilFn(b), this._allowHtmComponentClosingTags && this._attemptCharCode(47)) this._attemptCharCodeUntilFn(b), this._requireCharCode(62), this._endToken([]);
1888
+ else {
1889
+ let [t, r] = this._consumePrefixAndName();
1890
+ this._attemptCharCodeUntilFn(b), this._requireCharCode(62), this._endToken([t, r]), this._handleFullNameStackForTagClose(t, r);
1891
+ }
1892
+ }
1893
+ _consumeExpansionFormStart() {
1894
+ this._beginToken(20), this._requireCharCode(123), this._endToken([]), this._expansionCaseStack.push(20), this._beginToken(7);
1895
+ let e = this._readUntil(44), t = this._processCarriageReturns(e);
1896
+ if (this._i18nNormalizeLineEndingsInICUs) this._endToken([t]);
1897
+ else {
1898
+ let n = this._endToken([e]);
1899
+ t !== e && this.nonNormalizedIcuExpressions.push(n);
1900
+ }
1901
+ this._requireCharCode(44), this._attemptCharCodeUntilFn(b), this._beginToken(7);
1902
+ let r = this._readUntil(44);
1903
+ this._endToken([r]), this._requireCharCode(44), this._attemptCharCodeUntilFn(b);
1904
+ }
1905
+ _consumeExpansionCaseStart() {
1906
+ this._beginToken(21);
1907
+ let e = this._readUntil(123).trim();
1908
+ this._endToken([e]), this._attemptCharCodeUntilFn(b), this._beginToken(22), this._requireCharCode(123), this._endToken([]), this._attemptCharCodeUntilFn(b), this._expansionCaseStack.push(22);
1909
+ }
1910
+ _consumeExpansionCaseEnd() {
1911
+ this._beginToken(23), this._requireCharCode(125), this._endToken([]), this._attemptCharCodeUntilFn(b), this._expansionCaseStack.pop();
1912
+ }
1913
+ _consumeExpansionFormEnd() {
1914
+ this._beginToken(24), this._requireCharCode(125), this._endToken([]), this._expansionCaseStack.pop();
1915
+ }
1916
+ _consumeWithInterpolation(e, t, r, n) {
1917
+ this._beginToken(e);
1918
+ let a = [];
1919
+ for (; !r(); ) {
1920
+ let s = this._cursor.clone();
1921
+ this._interpolationConfig && this._attemptStr(this._interpolationConfig.start) ? (this._endToken([this._processCarriageReturns(a.join(""))], s), a.length = 0, this._consumeInterpolation(t, s, n), this._beginToken(e)) : this._cursor.peek() === 38 ? (this._endToken([this._processCarriageReturns(a.join(""))]), a.length = 0, this._consumeEntity(e), this._beginToken(e)) : a.push(this._readChar());
1922
+ }
1923
+ this._inInterpolation = !1;
1924
+ let i = this._processCarriageReturns(a.join(""));
1925
+ return this._endToken([i]), i;
1926
+ }
1927
+ _consumeInterpolation(e, t, r) {
1928
+ let n = [];
1929
+ this._beginToken(e, t), n.push(this._interpolationConfig.start);
1930
+ let a = this._cursor.clone(), i = null, s = !1;
1931
+ for (; this._cursor.peek() !== 0 && (r === null || !r()); ) {
1932
+ let u = this._cursor.clone();
1933
+ if (this._isTagStart()) {
1934
+ this._cursor = u, n.push(this._getProcessedChars(a, u)), this._endToken(n);
1935
+ return;
1936
+ }
1937
+ if (i === null) if (this._attemptStr(this._interpolationConfig.end)) {
1938
+ n.push(this._getProcessedChars(a, u)), n.push(this._interpolationConfig.end), this._endToken(n);
1939
+ return;
1940
+ } else this._attemptStr("//") && (s = !0);
1941
+ let o = this._cursor.peek();
1942
+ this._cursor.advance(), o === 92 ? this._cursor.advance() : o === i ? i = null : !s && i === null && Qe(o) && (i = o);
1943
+ }
1944
+ n.push(this._getProcessedChars(a, this._cursor)), this._endToken(n);
1945
+ }
1946
+ _getProcessedChars(e, t) {
1947
+ return this._processCarriageReturns(t.getChars(e));
1948
+ }
1949
+ _isTextEnd() {
1950
+ 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._cursor.peek() === 64 || this._cursor.peek() === 125));
1951
+ }
1952
+ _isTagStart() {
1953
+ if (this._cursor.peek() === 60) {
1954
+ let e = this._cursor.clone();
1955
+ e.advance();
1956
+ let t = e.peek();
1957
+ if (97 <= t && t <= 122 || 65 <= t && t <= 90 || t === 47 || t === 33) return !0;
1958
+ }
1959
+ return !1;
1960
+ }
1961
+ _isBlockStart() {
1962
+ if (this._tokenizeBlocks && this._cursor.peek() === 64) {
1963
+ let e = this._cursor.clone();
1964
+ if (e.advance(), tr(e.peek())) return !0;
1965
+ }
1966
+ return !1;
1967
+ }
1968
+ _readUntil(e) {
1969
+ let t = this._cursor.clone();
1970
+ return this._attemptUntilChar(e), this._cursor.getChars(t);
1971
+ }
1972
+ _isInExpansion() {
1973
+ return this._isInExpansionCase() || this._isInExpansionForm();
1974
+ }
1975
+ _isInExpansionCase() {
1976
+ return this._expansionCaseStack.length > 0 && this._expansionCaseStack[this._expansionCaseStack.length - 1] === 22;
1977
+ }
1978
+ _isInExpansionForm() {
1979
+ return this._expansionCaseStack.length > 0 && this._expansionCaseStack[this._expansionCaseStack.length - 1] === 20;
1980
+ }
1981
+ isExpansionFormStart() {
1982
+ if (this._cursor.peek() !== 123) return !1;
1983
+ if (this._interpolationConfig) {
1984
+ let e = this._cursor.clone(), t = this._attemptStr(this._interpolationConfig.start);
1985
+ return this._cursor = e, !t;
1986
+ }
1987
+ return !0;
1988
+ }
1989
+ _handleFullNameStackForTagOpen(e, t) {
1990
+ let r = Te(e, t);
1991
+ (this._fullNameStack.length === 0 || this._fullNameStack[this._fullNameStack.length - 1] === r) && this._fullNameStack.push(r);
1992
+ }
1993
+ _handleFullNameStackForTagClose(e, t) {
1994
+ let r = Te(e, t);
1995
+ this._fullNameStack.length !== 0 && this._fullNameStack[this._fullNameStack.length - 1] === r && this._fullNameStack.pop();
1996
+ }
1997
+ };
1998
+ function b(e) {
1999
+ return !Ee(e) || e === 0;
2000
+ }
2001
+ function Zt(e) {
2002
+ return Ee(e) || e === 62 || e === 60 || e === 47 || e === 39 || e === 34 || e === 61 || e === 0;
2003
+ }
2004
+ function ys(e) {
2005
+ return (e < 97 || 122 < e) && (e < 65 || 90 < e) && (e < 48 || e > 57);
2006
+ }
2007
+ function bs(e) {
2008
+ return e === 59 || e === 0 || !ki(e);
2009
+ }
2010
+ function _s(e) {
2011
+ return e === 59 || e === 0 || !xe(e);
2012
+ }
2013
+ function ws(e) {
2014
+ return e !== 125;
2015
+ }
2016
+ function As(e, t) {
2017
+ return er(e) === er(t);
2018
+ }
2019
+ function er(e) {
2020
+ return e >= 97 && e <= 122 ? e - 97 + 65 : e;
2021
+ }
2022
+ function tr(e) {
2023
+ return xe(e) || xt(e) || e === 95;
2024
+ }
2025
+ function rr(e) {
2026
+ return e !== 59 && b(e);
2027
+ }
2028
+ function ks(e) {
2029
+ let t = [], r;
2030
+ for (let n = 0; n < e.length; n++) {
2031
+ let a = e[n];
2032
+ r && r.type === 5 && a.type === 5 || r && r.type === 16 && a.type === 16 ? (r.parts[0] += a.parts[0], r.sourceSpan.end = a.sourceSpan.end) : (r = a, t.push(r));
2033
+ }
2034
+ return t;
2035
+ }
2036
+ var Kr = class ut {
2037
+ constructor(t, r) {
2038
+ if (t instanceof ut) {
2039
+ this.file = t.file, this.input = t.input, this.end = t.end;
2040
+ let n = t.state;
2041
+ this.state = { peek: n.peek, offset: n.offset, line: n.line, column: n.column };
2042
+ } else {
2043
+ if (!r) throw new Error("Programming error: the range argument must be provided with a file argument.");
2044
+ this.file = t, this.input = t.content, this.end = r.endPos, this.state = { peek: -1, offset: r.startPos, line: r.startLine, column: r.startCol };
2045
+ }
2046
+ }
2047
+ clone() {
2048
+ return new ut(this);
2049
+ }
2050
+ peek() {
2051
+ return this.state.peek;
2052
+ }
2053
+ charsLeft() {
2054
+ return this.end - this.state.offset;
2055
+ }
2056
+ diff(t) {
2057
+ return this.state.offset - t.state.offset;
2058
+ }
2059
+ advance() {
2060
+ this.advanceState(this.state);
2061
+ }
2062
+ init() {
2063
+ this.updatePeek(this.state);
2064
+ }
2065
+ getSpan(t, r) {
2066
+ t = t || this;
2067
+ let n = t;
2068
+ if (r) for (; this.diff(t) > 0 && r.indexOf(t.peek()) !== -1; ) n === t && (t = t.clone()), t.advance();
2069
+ let a = this.locationFromCursor(t), i = this.locationFromCursor(this), s = n !== t ? this.locationFromCursor(n) : a;
2070
+ return new d(a, i, s);
2071
+ }
2072
+ getChars(t) {
2073
+ return this.input.substring(t.state.offset, this.state.offset);
2074
+ }
2075
+ charAt(t) {
2076
+ return this.input.charCodeAt(t);
2077
+ }
2078
+ advanceState(t) {
2079
+ if (t.offset >= this.end) throw this.state = t, new Tt('Unexpected character "EOF"', this);
2080
+ let r = this.charAt(t.offset);
2081
+ r === 10 ? (t.line++, t.column = 0) : Dt(r) || t.column++, t.offset++, this.updatePeek(t);
2082
+ }
2083
+ updatePeek(t) {
2084
+ t.peek = t.offset >= this.end ? 0 : this.charAt(t.offset);
2085
+ }
2086
+ locationFromCursor(t) {
2087
+ return new it(t.file, t.state.offset, t.state.line, t.state.column);
2088
+ }
2089
+ }, Es = class ot extends Kr {
2090
+ constructor(t, r) {
2091
+ t instanceof ot ? (super(t), this.internalState = { ...t.internalState }) : (super(t, r), this.internalState = this.state);
2092
+ }
2093
+ advance() {
2094
+ this.state = this.internalState, super.advance(), this.processEscapeSequence();
2095
+ }
2096
+ init() {
2097
+ super.init(), this.processEscapeSequence();
2098
+ }
2099
+ clone() {
2100
+ return new ot(this);
2101
+ }
2102
+ getChars(t) {
2103
+ let r = t.clone(), n = "";
2104
+ for (; r.internalState.offset < this.internalState.offset; ) n += String.fromCodePoint(r.peek()), r.advance();
2105
+ return n;
2106
+ }
2107
+ processEscapeSequence() {
2108
+ let t = () => this.internalState.peek;
2109
+ if (t() === 92) if (this.internalState = { ...this.state }, this.advanceState(this.internalState), t() === 110) this.state.peek = 10;
2110
+ else if (t() === 114) this.state.peek = 13;
2111
+ else if (t() === 118) this.state.peek = 11;
2112
+ else if (t() === 116) this.state.peek = 9;
2113
+ else if (t() === 98) this.state.peek = 8;
2114
+ else if (t() === 102) this.state.peek = 12;
2115
+ else if (t() === 117) if (this.advanceState(this.internalState), t() === 123) {
2116
+ this.advanceState(this.internalState);
2117
+ let r = this.clone(), n = 0;
2118
+ for (; t() !== 125; ) this.advanceState(this.internalState), n++;
2119
+ this.state.peek = this.decodeHexDigits(r, n);
2120
+ } else {
2121
+ let r = this.clone();
2122
+ this.advanceState(this.internalState), this.advanceState(this.internalState), this.advanceState(this.internalState), this.state.peek = this.decodeHexDigits(r, 4);
2123
+ }
2124
+ else if (t() === 120) {
2125
+ this.advanceState(this.internalState);
2126
+ let r = this.clone();
2127
+ this.advanceState(this.internalState), this.state.peek = this.decodeHexDigits(r, 2);
2128
+ } else if (Mt(t())) {
2129
+ let r = "", n = 0, a = this.clone();
2130
+ for (; Mt(t()) && n < 3; ) a = this.clone(), r += String.fromCodePoint(t()), this.advanceState(this.internalState), n++;
2131
+ this.state.peek = parseInt(r, 8), this.internalState = a.internalState;
2132
+ } else Dt(this.internalState.peek) ? (this.advanceState(this.internalState), this.state = this.internalState) : this.state.peek = this.internalState.peek;
2133
+ }
2134
+ decodeHexDigits(t, r) {
2135
+ let n = this.input.slice(t.internalState.offset, t.internalState.offset + r), a = parseInt(n, 16);
2136
+ if (isNaN(a)) throw t.state = t.internalState, new Tt("Invalid hexadecimal escape sequence", t);
2137
+ return a;
2138
+ }
2139
+ }, Tt = class {
2140
+ constructor(e, t) {
2141
+ this.msg = e, this.cursor = t;
2142
+ }
2143
+ }, B = class Yr extends Or {
2144
+ static create(t, r, n) {
2145
+ return new Yr(t, r, n);
2146
+ }
2147
+ constructor(t, r, n) {
2148
+ super(r, n), this.elementName = t;
2149
+ }
2150
+ }, xs = class {
2151
+ constructor(e, t) {
2152
+ this.rootNodes = e, this.errors = t;
2153
+ }
2154
+ }, Ds = class {
2155
+ constructor(e) {
2156
+ this.getTagDefinition = e;
2157
+ }
2158
+ parse(e, t, r, n = !1, a) {
2159
+ let i = (m) => (C, ..._) => m(C.toLowerCase(), ..._), s = n ? this.getTagDefinition : i(this.getTagDefinition), u = (m) => s(m).getContentType(), o = n ? a : i(a), p = fs(e, t, a ? (m, C, _, E) => {
2160
+ let x = o(m, C, _, E);
2161
+ return x !== void 0 ? x : u(m);
2162
+ } : u, r), l = r && r.canSelfClose || !1, v = r && r.allowHtmComponentClosingTags || !1, f = new Ts(p.tokens, s, l, v, n);
2163
+ return f.build(), new xs(f.rootNodes, p.errors.concat(f.errors));
2164
+ }
2165
+ }, Ts = class Xr {
2166
+ constructor(t, r, n, a, i) {
2167
+ this.tokens = t, this.getTagDefinition = r, this.canSelfClose = n, this.allowHtmComponentClosingTags = a, this.isTagNameCaseSensitive = i, this._index = -1, this._containerStack = [], this.rootNodes = [], this.errors = [], this._advance();
2168
+ }
2169
+ build() {
2170
+ for (; this._peek.type !== 34; ) this._peek.type === 0 || this._peek.type === 4 ? this._consumeStartTag(this._advance()) : this._peek.type === 3 ? (this._closeVoidElement(), this._consumeEndTag(this._advance())) : this._peek.type === 12 ? (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 === 20 ? this._consumeExpansion(this._advance()) : this._peek.type === 25 ? (this._closeVoidElement(), this._consumeBlockOpen(this._advance())) : this._peek.type === 27 ? (this._closeVoidElement(), this._consumeBlockClose(this._advance())) : this._peek.type === 29 ? (this._closeVoidElement(), this._consumeIncompleteBlock(this._advance())) : this._peek.type === 30 ? (this._closeVoidElement(), this._consumeLet(this._advance())) : this._peek.type === 18 ? this._consumeDocType(this._advance()) : this._peek.type === 33 ? (this._closeVoidElement(), this._consumeIncompleteLet(this._advance())) : this._advance();
2171
+ for (let t of this._containerStack) t instanceof Y && this.errors.push(B.create(t.name, t.sourceSpan, `Unclosed block "${t.name}"`));
2172
+ }
2173
+ _advance() {
2174
+ let t = this._peek;
2175
+ return this._index < this.tokens.length - 1 && this._index++, this._peek = this.tokens[this._index], t;
2176
+ }
2177
+ _advanceIf(t) {
2178
+ return this._peek.type === t ? this._advance() : null;
2179
+ }
2180
+ _consumeCdata(t) {
2181
+ let r = this._advance(), n = this._getText(r), a = this._advanceIf(13);
2182
+ this._addToParent(new as(n, new d(t.sourceSpan.start, (a || r).sourceSpan.end), [r]));
2183
+ }
2184
+ _consumeComment(t) {
2185
+ let r = this._advanceIf(7), n = this._advanceIf(11), a = r != null ? r.parts[0].trim() : null, i = n == null ? t.sourceSpan : new d(t.sourceSpan.start, n.sourceSpan.end, t.sourceSpan.fullStart);
2186
+ this._addToParent(new os(a, i));
2187
+ }
2188
+ _consumeDocType(t) {
2189
+ let r = this._advanceIf(7), n = this._advanceIf(19), a = r != null ? r.parts[0].trim() : null, i = new d(t.sourceSpan.start, (n || r || t).sourceSpan.end);
2190
+ this._addToParent(new ls(a, i));
2191
+ }
2192
+ _consumeExpansion(t) {
2193
+ let r = this._advance(), n = this._advance(), a = [];
2194
+ for (; this._peek.type === 21; ) {
2195
+ let s = this._parseExpansionCase();
2196
+ if (!s) return;
2197
+ a.push(s);
2198
+ }
2199
+ if (this._peek.type !== 24) {
2200
+ this.errors.push(B.create(null, this._peek.sourceSpan, "Invalid ICU message. Missing '}'."));
2201
+ return;
2202
+ }
2203
+ let i = new d(t.sourceSpan.start, this._peek.sourceSpan.end, t.sourceSpan.fullStart);
2204
+ this._addToParent(new is(r.parts[0], n.parts[0], a, i, r.sourceSpan)), this._advance();
2205
+ }
2206
+ _parseExpansionCase() {
2207
+ let t = this._advance();
2208
+ if (this._peek.type !== 22) return this.errors.push(B.create(null, this._peek.sourceSpan, "Invalid ICU message. Missing '{'.")), null;
2209
+ let r = this._advance(), n = this._collectExpansionExpTokens(r);
2210
+ if (!n) return null;
2211
+ let a = this._advance();
2212
+ n.push({ type: 34, parts: [], sourceSpan: a.sourceSpan });
2213
+ let i = new Xr(n, this.getTagDefinition, this.canSelfClose, this.allowHtmComponentClosingTags, this.isTagNameCaseSensitive);
2214
+ if (i.build(), i.errors.length > 0) return this.errors = this.errors.concat(i.errors), null;
2215
+ let s = new d(t.sourceSpan.start, a.sourceSpan.end, t.sourceSpan.fullStart), u = new d(r.sourceSpan.start, a.sourceSpan.end, r.sourceSpan.fullStart);
2216
+ return new ss(t.parts[0], i.rootNodes, s, t.sourceSpan, u);
2217
+ }
2218
+ _collectExpansionExpTokens(t) {
2219
+ let r = [], n = [22];
2220
+ for (; ; ) {
2221
+ if ((this._peek.type === 20 || this._peek.type === 22) && n.push(this._peek.type), this._peek.type === 23) if (nr(n, 22)) {
2222
+ if (n.pop(), n.length === 0) return r;
2223
+ } else return this.errors.push(B.create(null, t.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2224
+ if (this._peek.type === 24) if (nr(n, 20)) n.pop();
2225
+ else return this.errors.push(B.create(null, t.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2226
+ if (this._peek.type === 34) return this.errors.push(B.create(null, t.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2227
+ r.push(this._advance());
2228
+ }
2229
+ }
2230
+ _getText(t) {
2231
+ let r = t.parts[0];
2232
+ if (r.length > 0 && r[0] == `
2233
+ `) {
2234
+ let n = this._getClosestParentElement();
2235
+ n != null && n.children.length == 0 && this.getTagDefinition(n.name).ignoreFirstLf && (r = r.substring(1));
2236
+ }
2237
+ return r;
2238
+ }
2239
+ _consumeText(t) {
2240
+ let r = [t], n = t.sourceSpan, a = t.parts[0];
2241
+ if (a.length > 0 && a[0] === `
2242
+ `) {
2243
+ let i = this._getContainer();
2244
+ i != null && i.children.length === 0 && this.getTagDefinition(i.name).ignoreFirstLf && (a = a.substring(1), r[0] = { type: t.type, sourceSpan: t.sourceSpan, parts: [a] });
2245
+ }
2246
+ for (; this._peek.type === 8 || this._peek.type === 5 || this._peek.type === 9; ) t = this._advance(), r.push(t), t.type === 8 ? a += t.parts.join("").replace(/&([^;]+);/g, ar) : t.type === 9 ? a += t.parts[0] : a += t.parts.join("");
2247
+ if (a.length > 0) {
2248
+ let i = t.sourceSpan;
2249
+ this._addToParent(new ns(a, new d(n.start, i.end, n.fullStart, n.details), r));
2250
+ }
2251
+ }
2252
+ _closeVoidElement() {
2253
+ let t = this._getContainer();
2254
+ t instanceof V && this.getTagDefinition(t.name).isVoid && this._containerStack.pop();
2255
+ }
2256
+ _consumeStartTag(t) {
2257
+ let [r, n] = t.parts, a = [];
2258
+ for (; this._peek.type === 14; ) a.push(this._consumeAttr(this._advance()));
2259
+ let i = this._getElementFullName(r, n, this._getClosestParentElement()), s = !1;
2260
+ if (this._peek.type === 2) {
2261
+ this._advance(), s = !0;
2262
+ let m = this.getTagDefinition(i);
2263
+ this.canSelfClose || m.canSelfClose || we(i) !== null || m.isVoid || this.errors.push(B.create(i, t.sourceSpan, `Only void, custom and foreign elements can be self closed "${t.parts[1]}"`));
2264
+ } else this._peek.type === 1 && (this._advance(), s = !1);
2265
+ let u = this._peek.sourceSpan.fullStart, o = new d(t.sourceSpan.start, u, t.sourceSpan.fullStart), p = new d(t.sourceSpan.start, u, t.sourceSpan.fullStart), l = new d(t.sourceSpan.start.moveBy(1), t.sourceSpan.end), v = new V(i, a, [], o, p, void 0, l), f = this._getContainer();
2266
+ this._pushContainer(v, f instanceof V && this.getTagDefinition(f.name).isClosedByChild(v.name)), s ? this._popContainer(i, V, o) : t.type === 4 && (this._popContainer(i, V, null), this.errors.push(B.create(i, o, `Opening tag "${i}" not terminated.`)));
2267
+ }
2268
+ _pushContainer(t, r) {
2269
+ r && this._containerStack.pop(), this._addToParent(t), this._containerStack.push(t);
2270
+ }
2271
+ _consumeEndTag(t) {
2272
+ let r = this.allowHtmComponentClosingTags && t.parts.length === 0 ? null : this._getElementFullName(t.parts[0], t.parts[1], this._getClosestParentElement());
2273
+ if (r && this.getTagDefinition(r).isVoid) this.errors.push(B.create(r, t.sourceSpan, `Void elements do not have end tags "${t.parts[1]}"`));
2274
+ else if (!this._popContainer(r, V, t.sourceSpan)) {
2275
+ let n = `Unexpected closing tag "${r}". 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`;
2276
+ this.errors.push(B.create(r, t.sourceSpan, n));
2277
+ }
2278
+ }
2279
+ _popContainer(t, r, n) {
2280
+ let a = !1;
2281
+ for (let i = this._containerStack.length - 1; i >= 0; i--) {
2282
+ let s = this._containerStack[i];
2283
+ if (we(s.name) ? s.name === t : (t == null || s.name.toLowerCase() === t.toLowerCase()) && s instanceof r) return s.endSourceSpan = n, s.sourceSpan.end = n !== null ? n.end : s.sourceSpan.end, this._containerStack.splice(i, this._containerStack.length - i), !a;
2284
+ (s instanceof Y || s instanceof V && !this.getTagDefinition(s.name).closedByParent) && (a = !0);
2285
+ }
2286
+ return !1;
2287
+ }
2288
+ _consumeAttr(t) {
2289
+ let r = Te(t.parts[0], t.parts[1]), n = t.sourceSpan.end, a;
2290
+ this._peek.type === 15 && (a = this._advance());
2291
+ let i = "", s = [], u, o;
2292
+ if (this._peek.type === 16) for (u = this._peek.sourceSpan, o = this._peek.sourceSpan.end; this._peek.type === 16 || this._peek.type === 17 || this._peek.type === 9; ) {
2293
+ let l = this._advance();
2294
+ s.push(l), l.type === 17 ? i += l.parts.join("").replace(/&([^;]+);/g, ar) : l.type === 9 ? i += l.parts[0] : i += l.parts.join(""), o = n = l.sourceSpan.end;
2295
+ }
2296
+ this._peek.type === 15 && (o = n = this._advance().sourceSpan.end);
2297
+ let p = u && o && new d((a == null ? void 0 : a.sourceSpan.start) ?? u.start, o, (a == null ? void 0 : a.sourceSpan.fullStart) ?? u.fullStart);
2298
+ return new us(r, i, new d(t.sourceSpan.start, n, t.sourceSpan.fullStart), t.sourceSpan, p, s.length > 0 ? s : void 0, void 0);
2299
+ }
2300
+ _consumeBlockOpen(t) {
2301
+ let r = [];
2302
+ for (; this._peek.type === 28; ) {
2303
+ let u = this._advance();
2304
+ r.push(new Xt(u.parts[0], u.sourceSpan));
2305
+ }
2306
+ this._peek.type === 26 && this._advance();
2307
+ let n = this._peek.sourceSpan.fullStart, a = new d(t.sourceSpan.start, n, t.sourceSpan.fullStart), i = new d(t.sourceSpan.start, n, t.sourceSpan.fullStart), s = new Y(t.parts[0], r, [], a, t.sourceSpan, i);
2308
+ this._pushContainer(s, !1);
2309
+ }
2310
+ _consumeBlockClose(t) {
2311
+ this._popContainer(null, Y, t.sourceSpan) || this.errors.push(B.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.'));
2312
+ }
2313
+ _consumeIncompleteBlock(t) {
2314
+ let r = [];
2315
+ for (; this._peek.type === 28; ) {
2316
+ let u = this._advance();
2317
+ r.push(new Xt(u.parts[0], u.sourceSpan));
2318
+ }
2319
+ let n = this._peek.sourceSpan.fullStart, a = new d(t.sourceSpan.start, n, t.sourceSpan.fullStart), i = new d(t.sourceSpan.start, n, t.sourceSpan.fullStart), s = new Y(t.parts[0], r, [], a, t.sourceSpan, i);
2320
+ this._pushContainer(s, !1), this._popContainer(null, Y, null), this.errors.push(B.create(t.parts[0], a, `Incomplete block "${t.parts[0]}". If you meant to write the @ character, you should use the "&#64;" HTML entity instead.`));
2321
+ }
2322
+ _consumeLet(t) {
2323
+ let r = t.parts[0], n, a;
2324
+ if (this._peek.type !== 31) {
2325
+ this.errors.push(B.create(t.parts[0], t.sourceSpan, `Invalid @let declaration "${r}". Declaration must have a value.`));
2326
+ return;
2327
+ } else n = this._advance();
2328
+ if (this._peek.type !== 32) {
2329
+ this.errors.push(B.create(t.parts[0], t.sourceSpan, `Unterminated @let declaration "${r}". Declaration must be terminated with a semicolon.`));
2330
+ return;
2331
+ } else a = this._advance();
2332
+ let i = a.sourceSpan.fullStart, s = new d(t.sourceSpan.start, i, t.sourceSpan.fullStart), u = t.sourceSpan.toString().lastIndexOf(r), o = t.sourceSpan.start.moveBy(u), p = new d(o, t.sourceSpan.end), l = new Jt(r, n.parts[0], s, p, n.sourceSpan);
2333
+ this._addToParent(l);
2334
+ }
2335
+ _consumeIncompleteLet(t) {
2336
+ let r = t.parts[0] ?? "", n = r ? ` "${r}"` : "";
2337
+ if (r.length > 0) {
2338
+ let a = t.sourceSpan.toString().lastIndexOf(r), i = t.sourceSpan.start.moveBy(a), s = new d(i, t.sourceSpan.end), u = new d(t.sourceSpan.start, t.sourceSpan.start.moveBy(0)), o = new Jt(r, "", t.sourceSpan, s, u);
2339
+ this._addToParent(o);
2340
+ }
2341
+ this.errors.push(B.create(t.parts[0], t.sourceSpan, `Incomplete @let declaration${n}. @let declarations must be written as \`@let <name> = <value>;\``));
2342
+ }
2343
+ _getContainer() {
2344
+ return this._containerStack.length > 0 ? this._containerStack[this._containerStack.length - 1] : null;
2345
+ }
2346
+ _getClosestParentElement() {
2347
+ for (let t = this._containerStack.length - 1; t > -1; t--) if (this._containerStack[t] instanceof V) return this._containerStack[t];
2348
+ return null;
2349
+ }
2350
+ _addToParent(t) {
2351
+ let r = this._getContainer();
2352
+ r === null ? this.rootNodes.push(t) : r.children.push(t);
2353
+ }
2354
+ _getElementFullName(t, r, n) {
2355
+ if (t === "" && (t = this.getTagDefinition(r).implicitNamespacePrefix || "", t === "" && n != null)) {
2356
+ let a = Ge(n.name)[1];
2357
+ this.getTagDefinition(a).preventNamespaceInheritance || (t = we(n.name));
2358
+ }
2359
+ return Te(t, r);
2360
+ }
2361
+ };
2362
+ function nr(e, t) {
2363
+ return e.length > 0 && e[e.length - 1] === t;
2364
+ }
2365
+ function ar(e, t) {
2366
+ return Be[t] !== void 0 ? Be[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;
2367
+ }
2368
+ var Bs = class extends Ds {
2369
+ constructor() {
2370
+ super(st);
2371
+ }
2372
+ parse(e, t, r, n = !1, a) {
2373
+ return super.parse(e, t, r, n, a);
2374
+ }
2375
+ }, tt = null, Ls = () => (tt || (tt = new Bs()), tt);
2376
+ function ir(e, t = {}) {
2377
+ let { canSelfClose: r = !1, allowHtmComponentClosingTags: n = !1, isTagNameCaseSensitive: a = !1, getTagContentType: i, tokenizeAngularBlocks: s = !1, tokenizeAngularLetDeclaration: u = !1 } = t;
2378
+ return Ls().parse(e, "angular-html-parser", { tokenizeExpansionForms: s, interpolationConfig: void 0, canSelfClose: r, allowHtmComponentClosingTags: n, tokenizeBlocks: s, tokenizeLet: u }, a, i);
2379
+ }
2380
+ function Fs(e, t) {
2381
+ let r = new SyntaxError(e + " (" + t.loc.start.line + ":" + t.loc.start.column + ")");
2382
+ return Object.assign(r, t);
2383
+ }
2384
+ var qs = Fs, ie = 3;
2385
+ function Ns(e) {
2386
+ let t = e.slice(0, ie);
2387
+ if (t !== "---" && t !== "+++") return;
2388
+ let r = e.indexOf(`
2389
+ `, ie);
2390
+ if (r === -1) return;
2391
+ let n = e.slice(ie, r).trim(), a = e.indexOf(`
2392
+ ${t}`, r), i = n;
2393
+ if (i || (i = t === "+++" ? "toml" : "yaml"), a === -1 && t === "---" && i === "yaml" && (a = e.indexOf(`
2394
+ ...`, r)), a === -1) return;
2395
+ let s = a + 1 + ie, u = e.charAt(s + 1);
2396
+ if (!/\s?/u.test(u)) return;
2397
+ let o = e.slice(0, s);
2398
+ return { type: "front-matter", language: i, explicitLanguage: n, value: e.slice(r + 1, a), startDelimiter: t, endDelimiter: o.slice(-ie), raw: o };
2399
+ }
2400
+ function Is(e) {
2401
+ let t = Ns(e);
2402
+ if (!t) return { content: e };
2403
+ let { raw: r } = t;
2404
+ return { frontMatter: t, content: L(!1, r, /[^\n]/gu, " ") + e.slice(r.length) };
2405
+ }
2406
+ var Ps = Is, _e = { attrs: !0, children: !0, cases: !0, expression: !0 }, sr = /* @__PURE__ */ new Set(["parent"]), Ms = class se {
2407
+ constructor(t = {}) {
2408
+ for (let r of /* @__PURE__ */ new Set([...sr, ...Object.keys(t)])) this.setProperty(r, t[r]);
2409
+ }
2410
+ setProperty(t, r) {
2411
+ if (this[t] !== r) {
2412
+ if (t in _e && (r = r.map((n) => this.createChild(n))), !sr.has(t)) {
2413
+ this[t] = r;
2414
+ return;
2415
+ }
2416
+ Object.defineProperty(this, t, { value: r, enumerable: !1, configurable: !0 });
2417
+ }
2418
+ }
2419
+ map(t) {
2420
+ let r;
2421
+ for (let n in _e) {
2422
+ let a = this[n];
2423
+ if (a) {
2424
+ let i = Hs(a, (s) => s.map(t));
2425
+ r !== a && (r || (r = new se({ parent: this.parent })), r.setProperty(n, i));
2426
+ }
2427
+ }
2428
+ if (r) for (let n in this) n in _e || (r[n] = this[n]);
2429
+ return t(r || this);
2430
+ }
2431
+ walk(t) {
2432
+ for (let r in _e) {
2433
+ let n = this[r];
2434
+ if (n) for (let a = 0; a < n.length; a++) n[a].walk(t);
2435
+ }
2436
+ t(this);
2437
+ }
2438
+ createChild(t) {
2439
+ let r = t instanceof se ? t.clone() : new se(t);
2440
+ return r.setProperty("parent", this), r;
2441
+ }
2442
+ insertChildBefore(t, r) {
2443
+ this.children.splice(this.children.indexOf(t), 0, this.createChild(r));
2444
+ }
2445
+ removeChild(t) {
2446
+ this.children.splice(this.children.indexOf(t), 1);
2447
+ }
2448
+ replaceChild(t, r) {
2449
+ this.children[this.children.indexOf(t)] = this.createChild(r);
2450
+ }
2451
+ clone() {
2452
+ return new se(this);
2453
+ }
2454
+ get firstChild() {
2455
+ var t;
2456
+ return (t = this.children) == null ? void 0 : t[0];
2457
+ }
2458
+ get lastChild() {
2459
+ var t;
2460
+ return (t = this.children) == null ? void 0 : t[this.children.length - 1];
2461
+ }
2462
+ get prev() {
2463
+ var t, r;
2464
+ return (r = (t = this.parent) == null ? void 0 : t.children) == null ? void 0 : r[this.parent.children.indexOf(this) - 1];
2465
+ }
2466
+ get next() {
2467
+ var t, r;
2468
+ return (r = (t = this.parent) == null ? void 0 : t.children) == null ? void 0 : r[this.parent.children.indexOf(this) + 1];
2469
+ }
2470
+ get rawName() {
2471
+ return this.hasExplicitNamespace ? this.fullName : this.name;
2472
+ }
2473
+ get fullName() {
2474
+ return this.namespace ? this.namespace + ":" + this.name : this.name;
2475
+ }
2476
+ get attrMap() {
2477
+ return Object.fromEntries(this.attrs.map((t) => [t.fullName, t.value]));
2478
+ }
2479
+ };
2480
+ function Hs(e, t) {
2481
+ let r = e.map(t);
2482
+ return r.some((n, a) => n !== e[a]) ? r : e;
2483
+ }
2484
+ var Rs = [{ regex: /^(\[if([^\]]*)\]>)(.*?)<!\s*\[endif\]$/su, parse: Vs }, { regex: /^\[if([^\]]*)\]><!$/u, parse: Os }, { regex: /^<!\s*\[endif\]$/u, parse: zs }];
2485
+ function Us(e, t) {
2486
+ if (e.value) for (let { regex: r, parse: n } of Rs) {
2487
+ let a = e.value.match(r);
2488
+ if (a) return n(e, t, a);
2489
+ }
2490
+ return null;
2491
+ }
2492
+ function Vs(e, t, r) {
2493
+ let [, n, a, i] = r, s = 4 + n.length, u = e.sourceSpan.start.moveBy(s), o = u.moveBy(i.length), [p, l] = (() => {
2494
+ try {
2495
+ return [!0, t(i, u).children];
2496
+ } catch {
2497
+ return [!1, [{ type: "text", value: i, sourceSpan: new d(u, o) }]];
2498
+ }
2499
+ })();
2500
+ return { type: "ieConditionalComment", complete: p, children: l, condition: L(!1, a.trim(), /\s+/gu, " "), sourceSpan: e.sourceSpan, startSourceSpan: new d(e.sourceSpan.start, u), endSourceSpan: new d(o, e.sourceSpan.end) };
2501
+ }
2502
+ function Os(e, t, r) {
2503
+ let [, n] = r;
2504
+ return { type: "ieConditionalStartComment", condition: L(!1, n.trim(), /\s+/gu, " "), sourceSpan: e.sourceSpan };
2505
+ }
2506
+ function zs(e) {
2507
+ return { type: "ieConditionalEndComment", sourceSpan: e.sourceSpan };
2508
+ }
2509
+ var rt = /* @__PURE__ */ new Map([["*", /* @__PURE__ */ new Set(["accesskey", "autocapitalize", "autofocus", "class", "contenteditable", "dir", "draggable", "enterkeyhint", "hidden", "id", "inert", "inputmode", "is", "itemid", "itemprop", "itemref", "itemscope", "itemtype", "lang", "nonce", "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(["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(["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", "alt", "autocomplete", "checked", "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", "shadowrootdelegatesfocus", "shadowrootmode"])], ["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"])]]), Ws = /* @__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", "element", "em", "embed", "fieldset", "figcaption", "figure", "font", "footer", "form", "frame", "frameset", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "iframe", "image", "img", "input", "ins", "isindex", "kbd", "keygen", "label", "legend", "li", "link", "listing", "main", "map", "mark", "marquee", "math", "menu", "menuitem", "meta", "meter", "multicol", "nav", "nextid", "nobr", "noembed", "noframes", "noscript", "object", "ol", "optgroup", "option", "output", "p", "param", "picture", "plaintext", "pre", "progress", "q", "rb", "rbc", "rp", "rt", "rtc", "ruby", "s", "samp", "script", "search", "section", "select", "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"]);
2510
+ function $s(e) {
2511
+ if (e.type === "block") {
2512
+ if (e.name = L(!1, e.name.toLowerCase(), /\s+/gu, " ").trim(), e.type = "angularControlFlowBlock", !_t(e.parameters)) {
2513
+ delete e.parameters;
2514
+ return;
2515
+ }
2516
+ for (let t of e.parameters) t.type = "angularControlFlowBlockParameter";
2517
+ e.parameters = { type: "angularControlFlowBlockParameters", children: e.parameters, sourceSpan: new d(e.parameters[0].sourceSpan.start, me(!1, e.parameters, -1).sourceSpan.end) };
2518
+ }
2519
+ }
2520
+ function js(e) {
2521
+ e.type === "letDeclaration" && (e.type = "angularLetDeclaration", e.id = e.name, e.init = { type: "angularLetDeclarationInitializer", sourceSpan: new d(e.valueSpan.start, e.valueSpan.end), value: e.value }, delete e.name, delete e.value);
2522
+ }
2523
+ function Gs(e) {
2524
+ (e.type === "plural" || e.type === "select") && (e.clause = e.type, e.type = "angularIcuExpression"), e.type === "expansionCase" && (e.type = "angularIcuCase");
2525
+ }
2526
+ function Jr(e, t, r) {
2527
+ let { name: n, canSelfClose: a = !0, normalizeTagName: i = !1, normalizeAttributeName: s = !1, allowHtmComponentClosingTags: u = !1, isTagNameCaseSensitive: o = !1, shouldParseAsRawText: p } = t, { rootNodes: l, errors: v } = ir(e, { canSelfClose: a, allowHtmComponentClosingTags: u, isTagNameCaseSensitive: o, getTagContentType: p ? (...c) => p(...c) ? N.RAW_TEXT : void 0 : void 0, tokenizeAngularBlocks: n === "angular" ? !0 : void 0, tokenizeAngularLetDeclaration: n === "angular" ? !0 : void 0 });
2528
+ if (n === "vue") {
2529
+ if (l.some((y) => y.type === "docType" && y.value === "html" || y.type === "element" && y.name.toLowerCase() === "html")) return Jr(e, Zr, r);
2530
+ let c, g = () => c ?? (c = ir(e, { canSelfClose: a, allowHtmComponentClosingTags: u, isTagNameCaseSensitive: o })), w = (y) => g().rootNodes.find(({ startSourceSpan: T }) => T && T.start.offset === y.startSourceSpan.start.offset) ?? y;
2531
+ for (let [y, T] of l.entries()) {
2532
+ let { endSourceSpan: K, startSourceSpan: en } = T;
2533
+ if (K === null) v = g().errors, l[y] = w(T);
2534
+ else if (Ks(T, r)) {
2535
+ let Bt = g().errors.find((Lt) => Lt.span.start.offset > en.start.offset && Lt.span.start.offset < K.end.offset);
2536
+ Bt && ur(Bt), l[y] = w(T);
2537
+ }
2538
+ }
2539
+ }
2540
+ v.length > 0 && ur(v[0]);
2541
+ let f = (c) => {
2542
+ let g = c.name.startsWith(":") ? c.name.slice(1).split(":")[0] : null, w = c.nameSpan.toString(), y = g !== null && w.startsWith(`${g}:`), T = y ? w.slice(g.length + 1) : w;
2543
+ c.name = T, c.namespace = g, c.hasExplicitNamespace = y;
2544
+ }, m = (c) => {
2545
+ switch (c.type) {
2546
+ case "element":
2547
+ f(c);
2548
+ for (let g of c.attrs) f(g), g.valueSpan ? (g.value = g.valueSpan.toString(), /["']/u.test(g.value[0]) && (g.value = g.value.slice(1, -1))) : g.value = null;
2549
+ break;
2550
+ case "comment":
2551
+ c.value = c.sourceSpan.toString().slice(4, -3);
2552
+ break;
2553
+ case "text":
2554
+ c.value = c.sourceSpan.toString();
2555
+ break;
2556
+ }
2557
+ }, C = (c, g) => {
2558
+ let w = c.toLowerCase();
2559
+ return g(w) ? w : c;
2560
+ }, _ = (c) => {
2561
+ if (c.type === "element" && (i && (!c.namespace || c.namespace === c.tagDefinition.implicitNamespacePrefix || pe(c)) && (c.name = C(c.name, (g) => Ws.has(g))), s)) for (let g of c.attrs) g.namespace || (g.name = C(g.name, (w) => rt.has(c.name) && (rt.get("*").has(w) || rt.get(c.name).has(w))));
2562
+ }, E = (c) => {
2563
+ c.sourceSpan && c.endSourceSpan && (c.sourceSpan = new d(c.sourceSpan.start, c.endSourceSpan.end));
2564
+ }, x = (c) => {
2565
+ if (c.type === "element") {
2566
+ let g = st(o ? c.name : c.name.toLowerCase());
2567
+ !c.namespace || c.namespace === g.implicitNamespacePrefix || pe(c) ? c.tagDefinition = g : c.tagDefinition = st("");
2568
+ }
2569
+ };
2570
+ return $r(new class extends cs {
2571
+ visitExpansionCase(c, g) {
2572
+ n === "angular" && this.visitChildren(g, (w) => {
2573
+ w(c.expression);
2574
+ });
2575
+ }
2576
+ visit(c) {
2577
+ m(c), x(c), _(c), E(c);
2578
+ }
2579
+ }(), l), l;
2580
+ }
2581
+ function Ks(e, t) {
2582
+ var r;
2583
+ if (e.type !== "element" || e.name !== "template") return !1;
2584
+ let n = (r = e.attrs.find((a) => a.name === "lang")) == null ? void 0 : r.value;
2585
+ return !n || Ue(t, { language: n }) === "html";
2586
+ }
2587
+ function ur(e) {
2588
+ let { msg: t, span: { start: r, end: n } } = e;
2589
+ throw qs(t, { loc: { start: { line: r.line + 1, column: r.col + 1 }, end: { line: n.line + 1, column: n.col + 1 } }, cause: e });
2590
+ }
2591
+ function Qr(e, t, r = {}, n = !0) {
2592
+ let { frontMatter: a, content: i } = n ? Ps(e) : { frontMatter: null, content: e }, s = new Vr(e, r.filepath), u = new it(s, 0, 0, 0), o = u.moveBy(e.length), p = { type: "root", sourceSpan: new d(u, o), children: Jr(i, t, r) };
2593
+ if (a) {
2594
+ let f = new it(s, 0, 0, 0), m = f.moveBy(a.raw.length);
2595
+ a.sourceSpan = new d(f, m), p.children.unshift(a);
2596
+ }
2597
+ let l = new Ms(p), v = (f, m) => {
2598
+ let { offset: C } = m, _ = L(!1, e.slice(0, C), /[^\n\r]/gu, " "), E = Qr(_ + f, t, r, !1);
2599
+ E.sourceSpan = new d(m, me(!1, E.children, -1).sourceSpan.end);
2600
+ let x = E.children[0];
2601
+ return x.length === C ? E.children.shift() : (x.sourceSpan = new d(x.sourceSpan.start.moveBy(C), x.sourceSpan.end), x.value = x.value.slice(C)), E;
2602
+ };
2603
+ return l.walk((f) => {
2604
+ if (f.type === "comment") {
2605
+ let m = Us(f, v);
2606
+ m && f.parent.replaceChild(f, m);
2607
+ }
2608
+ $s(f), js(f), Gs(f);
2609
+ }), l;
2610
+ }
2611
+ function Ke(e) {
2612
+ return { parse: (t, r) => Qr(t, e, r), hasPragma: fi, astFormat: "html", locStart: ze, locEnd: We };
2613
+ }
2614
+ var Zr = { name: "html", normalizeTagName: !0, normalizeAttributeName: !0, allowHtmComponentClosingTags: !0 }, Ys = Ke(Zr), Xs = Ke({ name: "angular" }), Js = Ke({ name: "vue", isTagNameCaseSensitive: !0, shouldParseAsRawText(e, t, r, n) {
2615
+ return e.toLowerCase() !== "html" && !r && (e !== "template" || n.some(({ name: a, value: i }) => a === "lang" && i !== "html" && i !== "" && i !== void 0));
2616
+ } }), Qs = Ke({ name: "lwc", canSelfClose: !1 }), Zs = { html: Wi }, tu = pr;
2617
+ export {
2618
+ tu as default,
2619
+ $i as languages,
2620
+ Gi as options,
2621
+ zr as parsers,
2622
+ Zs as printers
2623
+ };