@dipusevilla/componentes-iu 1.1.4 → 1.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (66) hide show
  1. package/dist/html-6Zgdkrh7.mjs +2784 -0
  2. package/dist/html-KxqAGR9q.js +25 -0
  3. package/dist/index.cjs.js +222 -123
  4. package/dist/index.css +1 -1
  5. package/dist/index.es.js +27469 -20227
  6. package/dist/index.umd.js +280 -129
  7. package/dist/standalone-CUhUiIuV.mjs +2458 -0
  8. package/dist/standalone-RFBVEkze.js +29 -0
  9. package/dist/types/components/FileUploader.d.ts +1 -0
  10. package/dist/types/components/FormFieldInput.d.ts +5 -1
  11. package/dist/types/components/FormLabel.d.ts +5 -1
  12. package/dist/types/components/FormRenderer.d.ts +1 -2
  13. package/dist/types/components/FormRenderer.test.d.ts +1 -0
  14. package/dist/types/components/InfoButton.d.ts +5 -0
  15. package/dist/types/components/Input.d.ts +6 -1
  16. package/dist/types/components/Modal.d.ts +5 -1
  17. package/dist/types/components/Select.d.ts +2 -0
  18. package/dist/types/components/Tabs.d.ts +3 -1
  19. package/dist/types/components/TextArea.d.ts +2 -1
  20. package/dist/types/editor/adapters/inMemoryTranslationAdapter.d.ts +2 -0
  21. package/dist/types/editor/components/CodeEditor.d.ts +18 -0
  22. package/dist/types/editor/components/EndpointBrowser.d.ts +1 -1
  23. package/dist/types/editor/components/EndpointConfigModal.d.ts +3 -2
  24. package/dist/types/editor/components/EndpointParameterConfig.d.ts +2 -1
  25. package/dist/types/editor/components/InfoBuilderModal.d.ts +11 -0
  26. package/dist/types/editor/components/OnloadEndpointsManager.d.ts +6 -0
  27. package/dist/types/editor/components/RuleBuilderModal.d.ts +22 -0
  28. package/dist/types/editor/components/SystemVariablesModal.d.ts +7 -0
  29. package/dist/types/editor/components/ValidationBuilderModal.d.ts +12 -0
  30. package/dist/types/editor/dnd/dndPaths.d.ts +4 -0
  31. package/dist/types/editor/importers/dto/analysis/analyzer.d.ts +11 -0
  32. package/dist/types/editor/importers/dto/generator.d.ts +11 -0
  33. package/dist/types/editor/importers/dto/inference.d.ts +8 -0
  34. package/dist/types/editor/importers/dto/layout.d.ts +5 -0
  35. package/dist/types/editor/importers/dto/naming.d.ts +5 -0
  36. package/dist/types/editor/importers/dto/parser.d.ts +9 -0
  37. package/dist/types/editor/importers/dto/strategies/MasterDetailStrategy.d.ts +8 -0
  38. package/dist/types/editor/importers/dto/strategies/MixedStrategy.d.ts +8 -0
  39. package/dist/types/editor/importers/dto/strategies/StandardStrategy.d.ts +8 -0
  40. package/dist/types/editor/importers/dto/strategies/TabsStrategy.d.ts +8 -0
  41. package/dist/types/editor/importers/dto/strategies/types.d.ts +14 -0
  42. package/dist/types/editor/importers/dto/strategies.d.ts +20 -0
  43. package/dist/types/editor/importers/dto/translations.d.ts +5 -0
  44. package/dist/types/editor/importers/dto/types.d.ts +45 -0
  45. package/dist/types/editor/importers/dto/utils.d.ts +11 -0
  46. package/dist/types/editor/importers/generateFromDTO.d.ts +3 -56
  47. package/dist/types/editor/store/runtimeDebugStore.d.ts +11 -0
  48. package/dist/types/editor/store.d.ts +43 -11
  49. package/dist/types/editor/types/endpointMetadata.d.ts +5 -3
  50. package/dist/types/editor/utils/adapterGenerator.d.ts +2 -3
  51. package/dist/types/editor/utils/adapterHelpers.d.ts +10 -0
  52. package/dist/types/editor/utils/exportProject.d.ts +10 -0
  53. package/dist/types/editor/utils/fieldKinds.d.ts +1 -1
  54. package/dist/types/editor/utils/generateServicesCode.d.ts +8 -0
  55. package/dist/types/editor/utils/importProject.d.ts +9 -0
  56. package/dist/types/index.d.ts +1 -0
  57. package/dist/types/rules/RuleDSL.d.ts +12 -0
  58. package/dist/types/types/EndpointTypes.d.ts +30 -0
  59. package/dist/types/types/FormTypes.d.ts +120 -19
  60. package/dist/types/utils/SecureValidator.d.ts +16 -0
  61. package/dist/types/utils/endpointHelpers.d.ts +2 -2
  62. package/dist/types/utils/interpolationHelpers.d.ts +1 -0
  63. package/dist/types/utils/translationHelpers.d.ts +5 -1
  64. package/package.json +16 -2
  65. package/dist/types/editor/components/ServiceAdapterGenerator.d.ts +0 -4
  66. package/dist/types/editor/helpers/serviceParser.d.ts +0 -6
@@ -0,0 +1,2784 @@
1
+ var _n = Object.defineProperty;
2
+ var It = (e) => {
3
+ throw TypeError(e);
4
+ };
5
+ var Cn = (e, t, r) => t in e ? _n(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r;
6
+ var Je = (e, t, r) => Cn(e, typeof t != "symbol" ? t + "" : t, r), Qe = (e, t, r) => t.has(e) || It("Cannot " + r);
7
+ var I = (e, t, r) => (Qe(e, t, "read from private field"), r ? r.call(e) : t.get(e)), Ze = (e, t, r) => t.has(e) ? It("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, r), Rt = (e, t, r, n) => (Qe(e, t, "write to private field"), n ? n.call(e, r) : t.set(e, r), r), Mt = (e, t, r) => (Qe(e, t, "access private method"), r);
8
+ var _r = Object.defineProperty, Cr = (e) => {
9
+ throw TypeError(e);
10
+ }, En = (e, t, r) => t in e ? _r(e, t, { enumerable: !0, configurable: !0, writable: !0, value: r }) : e[t] = r, Er = (e, t) => {
11
+ for (var r in t) _r(e, r, { get: t[r], enumerable: !0 });
12
+ }, qt = (e, t, r) => En(e, typeof t != "symbol" ? t + "" : t, r), vn = (e, t, r) => t.has(e) || Cr("Cannot " + r), Be = (e, t, r) => (vn(e, t, "read from private field"), r ? r.call(e) : t.get(e)), Sn = (e, t, r) => t.has(e) ? Cr("Cannot add the same private member more than once") : t instanceof WeakSet ? t.add(e) : t.set(e, r), An = {};
13
+ Er(An, { languages: () => mo, options: () => fo, parsers: () => hn, printers: () => Xo });
14
+ var Ct = (e, t) => (r, n, ...a) => r | 1 && n == null ? void 0 : (t.call(n) ?? n[e]).apply(n, a), Tn = String.prototype.replaceAll ?? function(e, t) {
15
+ return e.global ? this.replace(e, t) : this.split(e).join(t);
16
+ }, kn = Ct("replaceAll", function() {
17
+ if (typeof this == "string") return Tn;
18
+ }), b = kn;
19
+ function bn(e) {
20
+ return this[e < 0 ? this.length + e : e];
21
+ }
22
+ var wn = Ct("at", function() {
23
+ if (Array.isArray(this) || typeof this == "string") return bn;
24
+ }), ee = wn, yn = () => {
25
+ }, Dn = yn, vr = "string", Sr = "array", Ar = "cursor", Et = "indent", vt = "align", Tr = "trim", St = "group", At = "fill", Tt = "if-break", kt = "indent-if-break", kr = "line-suffix", br = "line-suffix-boundary", te = "line", wr = "label", bt = "break-parent", yr = /* @__PURE__ */ new Set([Ar, Et, vt, Tr, St, At, Tt, kt, kr, br, te, wr, bt]);
26
+ function xn(e) {
27
+ if (typeof e == "string") return vr;
28
+ if (Array.isArray(e)) return Sr;
29
+ if (!e) return;
30
+ let { type: t } = e;
31
+ if (yr.has(t)) return t;
32
+ }
33
+ var Dr = xn, Nn = (e) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(e);
34
+ function Bn(e) {
35
+ let t = e === null ? "null" : typeof e;
36
+ if (t !== "string" && t !== "object") return `Unexpected doc '${t}',
37
+ Expected it to be 'string' or 'object'.`;
38
+ if (Dr(e)) throw new Error("doc is valid.");
39
+ let r = Object.prototype.toString.call(e);
40
+ if (r !== "[object Object]") return `Unexpected doc '${r}'.`;
41
+ let n = Nn([...yr].map((a) => `'${a}'`));
42
+ return `Unexpected doc.type '${e.type}'.
43
+ Expected it to be ${n}.`;
44
+ }
45
+ var Ln = class extends Error {
46
+ constructor(t) {
47
+ super(Bn(t));
48
+ Je(this, "name", "InvalidDocError");
49
+ this.doc = t;
50
+ }
51
+ }, On = Ln;
52
+ function xr(e, t) {
53
+ if (typeof e == "string") return t(e);
54
+ let r = /* @__PURE__ */ new Map();
55
+ return n(e);
56
+ function n(i) {
57
+ if (r.has(i)) return r.get(i);
58
+ let s = a(i);
59
+ return r.set(i, s), s;
60
+ }
61
+ function a(i) {
62
+ switch (Dr(i)) {
63
+ case Sr:
64
+ return t(i.map(n));
65
+ case At:
66
+ return t({ ...i, parts: i.parts.map(n) });
67
+ case Tt:
68
+ return t({ ...i, breakContents: n(i.breakContents), flatContents: n(i.flatContents) });
69
+ case St: {
70
+ let { expandedStates: s, contents: o } = i;
71
+ return s ? (s = s.map(n), o = s[0]) : o = n(o), t({ ...i, contents: o, expandedStates: s });
72
+ }
73
+ case vt:
74
+ case Et:
75
+ case kt:
76
+ case wr:
77
+ case kr:
78
+ return t({ ...i, contents: n(i.contents) });
79
+ case vr:
80
+ case Ar:
81
+ case Tr:
82
+ case br:
83
+ case te:
84
+ case bt:
85
+ return t(i);
86
+ default:
87
+ throw new On(i);
88
+ }
89
+ }
90
+ }
91
+ function O(e, t = Hn) {
92
+ return xr(e, (r) => typeof r == "string" ? re(t, r.split(`
93
+ `)) : r);
94
+ }
95
+ var Fn = Dn;
96
+ function F(e) {
97
+ return { type: Et, contents: e };
98
+ }
99
+ function Pn(e, t) {
100
+ return { type: vt, contents: t, n: e };
101
+ }
102
+ function In(e) {
103
+ return Pn(Number.NEGATIVE_INFINITY, e);
104
+ }
105
+ var Ae = { type: bt };
106
+ function Nr(e) {
107
+ return { type: At, parts: e };
108
+ }
109
+ function A(e, t = {}) {
110
+ return Fn(t.expandedStates), { type: St, id: t.id, contents: e, break: !!t.shouldBreak, expandedStates: t.expandedStates };
111
+ }
112
+ function Ce(e, t = "", r = {}) {
113
+ return { type: Tt, breakContents: e, flatContents: t, groupId: r.groupId };
114
+ }
115
+ function Rn(e, t) {
116
+ return { type: kt, contents: e, groupId: t.groupId, negate: t.negate };
117
+ }
118
+ function re(e, t) {
119
+ let r = [];
120
+ for (let n = 0; n < t.length; n++) n !== 0 && r.push(e), r.push(t[n]);
121
+ return r;
122
+ }
123
+ var S = { type: te }, k = { type: te, soft: !0 }, Mn = { type: te, hard: !0 }, v = [Mn, Ae], qn = { type: te, hard: !0, literal: !0 }, Hn = [qn, Ae], Br = Object.freeze({ character: "'", codePoint: 39 }), Lr = Object.freeze({ character: '"', codePoint: 34 }), Vn = Object.freeze({ preferred: Br, alternate: Lr }), Un = Object.freeze({ preferred: Lr, alternate: Br });
124
+ function Wn(e, t) {
125
+ let { preferred: r, alternate: n } = t === !0 || t === "'" ? Vn : Un, { length: a } = e, i = 0, s = 0;
126
+ for (let o = 0; o < a; o++) {
127
+ let l = e.charCodeAt(o);
128
+ l === r.codePoint ? i++ : l === n.codePoint && s++;
129
+ }
130
+ return (i > s ? n : r).character;
131
+ }
132
+ var zn = Wn;
133
+ function $n(e) {
134
+ if (typeof e != "string") throw new TypeError("Expected a string");
135
+ return e.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
136
+ }
137
+ var D, Ve, Or, fr, jn = (fr = class {
138
+ constructor(e) {
139
+ Ze(this, Ve);
140
+ Ze(this, D);
141
+ Rt(this, D, new Set(e));
142
+ }
143
+ getLeadingWhitespaceCount(e) {
144
+ let t = I(this, D), r = 0;
145
+ for (let n = 0; n < e.length && t.has(e.charAt(n)); n++) r++;
146
+ return r;
147
+ }
148
+ getTrailingWhitespaceCount(e) {
149
+ let t = I(this, D), r = 0;
150
+ for (let n = e.length - 1; n >= 0 && t.has(e.charAt(n)); n--) r++;
151
+ return r;
152
+ }
153
+ getLeadingWhitespace(e) {
154
+ let t = this.getLeadingWhitespaceCount(e);
155
+ return e.slice(0, t);
156
+ }
157
+ getTrailingWhitespace(e) {
158
+ let t = this.getTrailingWhitespaceCount(e);
159
+ return e.slice(e.length - t);
160
+ }
161
+ hasLeadingWhitespace(e) {
162
+ return I(this, D).has(e.charAt(0));
163
+ }
164
+ hasTrailingWhitespace(e) {
165
+ return I(this, D).has(ee(0, e, -1));
166
+ }
167
+ trimStart(e) {
168
+ let t = this.getLeadingWhitespaceCount(e);
169
+ return e.slice(t);
170
+ }
171
+ trimEnd(e) {
172
+ let t = this.getTrailingWhitespaceCount(e);
173
+ return e.slice(0, e.length - t);
174
+ }
175
+ trim(e) {
176
+ return this.trimEnd(this.trimStart(e));
177
+ }
178
+ split(e, t = !1) {
179
+ let r = `[${$n([...I(this, D)].join(""))}]+`, n = new RegExp(t ? `(${r})` : r, "u");
180
+ return e.split(n);
181
+ }
182
+ hasWhitespaceCharacter(e) {
183
+ let t = I(this, D);
184
+ return Array.prototype.some.call(e, (r) => t.has(r));
185
+ }
186
+ hasNonWhitespaceCharacter(e) {
187
+ let t = I(this, D);
188
+ return Array.prototype.some.call(e, (r) => !t.has(r));
189
+ }
190
+ isWhitespaceOnly(e) {
191
+ let t = I(this, D);
192
+ return Array.prototype.every.call(e, (r) => t.has(r));
193
+ }
194
+ dedentString(e) {
195
+ let t = Mt(this, Ve, Or).call(this, e);
196
+ return t === 0 ? e : e.split(`
197
+ `).map((r) => r.slice(t)).join(`
198
+ `);
199
+ }
200
+ }, D = new WeakMap(), Ve = new WeakSet(), Or = function(e) {
201
+ let t = Number.POSITIVE_INFINITY;
202
+ for (let r of e.split(`
203
+ `)) {
204
+ if (r.length === 0) continue;
205
+ let n = this.getLeadingWhitespaceCount(r);
206
+ if (n === 0) return 0;
207
+ r.length !== n && n < t && (t = n);
208
+ }
209
+ return t === Number.POSITIVE_INFINITY ? 0 : t;
210
+ }, fr), Xn = jn, Gn = [" ", `
211
+ `, "\f", "\r", " "], Kn = new Xn(Gn), N = Kn, Yn = class extends Error {
212
+ constructor(t, r, n = "type") {
213
+ super(`Unexpected ${r} node ${n}: ${JSON.stringify(t[n])}.`);
214
+ Je(this, "name", "UnexpectedNodeError");
215
+ this.node = t;
216
+ }
217
+ }, Jn = Yn, Qn = /* @__PURE__ */ new Set(["sourceSpan", "startSourceSpan", "endSourceSpan", "nameSpan", "valueSpan", "keySpan", "tagDefinition", "tokens", "valueTokens", "switchValueSourceSpan", "expSourceSpan", "valueSourceSpan"]), Zn = /* @__PURE__ */ new Set(["if", "else if", "for", "switch", "case"]);
218
+ function Fr(e, t, r) {
219
+ var n;
220
+ if (e.kind === "text" || e.kind === "comment") return null;
221
+ if (e.kind === "yaml" && delete t.value, e.kind === "attribute") {
222
+ let { fullName: a, value: i } = e;
223
+ a === "style" || a === "class" || a === "srcset" && (r.fullName === "img" || r.fullName === "source") || a === "allow" && r.fullName === "iframe" || a.startsWith("on") || a.startsWith("@") || a.startsWith(":") || a.startsWith(".") || a.startsWith("#") || a.startsWith("v-") || a === "vars" && r.fullName === "style" || (a === "setup" || a === "generic") && r.fullName === "script" || a === "slot-scope" || a.startsWith("(") || a.startsWith("[") || a.startsWith("*") || a.startsWith("bind") || a.startsWith("i18n") || a.startsWith("on-") || a.startsWith("ng-") || i != null && i.includes("{{") ? delete t.value : i && (t.value = b(0, i, /'|&quot;|&apos;/gu, '"'));
224
+ }
225
+ if (e.kind === "docType" && (t.value = b(0, e.value.toLowerCase(), /\s+/gu, " ")), e.kind === "angularControlFlowBlock" && ((n = e.parameters) == null ? void 0 : n.children)) for (let a of t.parameters.children) Zn.has(e.name) ? delete a.expression : a.expression = a.expression.trim();
226
+ e.kind === "angularIcuExpression" && (t.switchValue = e.switchValue.trim()), e.kind === "angularLetDeclarationInitializer" && delete t.value, e.kind === "element" && e.isVoid && !e.isSelfClosing && (t.isSelfClosing = !0);
227
+ }
228
+ Fr.ignoredProperties = Qn;
229
+ var ea = Fr;
230
+ function Te(e, t = !0) {
231
+ return [F([k, e]), t ? k : ""];
232
+ }
233
+ function ne(e, t) {
234
+ 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;
235
+ return r && (r.type === "ObjectExpression" || r.type === "ArrayExpression" || (t.parser === "__vue_expression" || t.parser === "__vue_ts_expression") && (r.type === "TemplateLiteral" || r.type === "StringLiteral"));
236
+ }
237
+ async function B(e, t, r, n) {
238
+ r = { __isInHtmlAttribute: !0, __embeddedInHtml: !0, ...r };
239
+ let a = !0;
240
+ n && (r.__onHtmlBindingRoot = (s, o) => {
241
+ a = n(s, o);
242
+ });
243
+ let i = await t(e, r, t);
244
+ return a ? A(i) : Te(i);
245
+ }
246
+ function ta(e, t, r, n) {
247
+ let { node: a } = r, i = n.originalText.slice(a.sourceSpan.start.offset, a.sourceSpan.end.offset);
248
+ return /^\s*$/u.test(i) ? "" : B(i, e, { parser: "__ng_directive", __isInHtmlAttribute: !1 }, ne);
249
+ }
250
+ var ra = ta, na = Array.prototype.toReversed ?? function() {
251
+ return [...this].reverse();
252
+ }, aa = Ct("toReversed", function() {
253
+ if (Array.isArray(this)) return na;
254
+ }), ia = aa;
255
+ function sa() {
256
+ var r, n, a, i, s, o;
257
+ let e = globalThis, t = (n = (r = e.Deno) == null ? void 0 : r.build) == null ? void 0 : n.os;
258
+ return typeof t == "string" ? t === "windows" : ((i = (a = e.navigator) == null ? void 0 : a.platform) == null ? void 0 : i.startsWith("Win")) ?? ((o = (s = e.process) == null ? void 0 : s.platform) == null ? void 0 : o.startsWith("win")) ?? !1;
259
+ }
260
+ var oa = sa();
261
+ function Pr(e) {
262
+ if (e = e instanceof URL ? e : new URL(e), e.protocol !== "file:") throw new TypeError(`URL must be a file URL: received "${e.protocol}"`);
263
+ return e;
264
+ }
265
+ function ua(e) {
266
+ return e = Pr(e), decodeURIComponent(e.pathname.replace(/%(?![0-9A-Fa-f]{2})/g, "%25"));
267
+ }
268
+ function la(e) {
269
+ e = Pr(e);
270
+ let t = decodeURIComponent(e.pathname.replace(/\//g, "\\").replace(/%(?![0-9A-Fa-f]{2})/g, "%25")).replace(/^\\*([A-Za-z]:)(\\|$)/, "$1\\");
271
+ return e.hostname !== "" && (t = `\\\\${e.hostname}${t}`), t;
272
+ }
273
+ function ca(e) {
274
+ return oa ? la(e) : ua(e);
275
+ }
276
+ var pa = (e) => String(e).split(/[/\\]/u).pop(), ha = (e) => String(e).startsWith("file:");
277
+ function da(e) {
278
+ return Array.isArray(e) && e.length > 0;
279
+ }
280
+ var wt = da;
281
+ function Ht(e, t) {
282
+ if (!t) return;
283
+ let r = pa(t).toLowerCase();
284
+ 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)));
285
+ }
286
+ function ma(e, t) {
287
+ 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}`));
288
+ }
289
+ var et = void 0;
290
+ function Vt(e, t) {
291
+ if (t) {
292
+ if (ha(t)) try {
293
+ t = ca(t);
294
+ } catch {
295
+ return;
296
+ }
297
+ if (typeof t == "string") return e.find(({ isSupported: r }) => r == null ? void 0 : r({ filepath: t }));
298
+ }
299
+ }
300
+ function ga(e, t) {
301
+ var n;
302
+ let r = ia(0, e.plugins).flatMap((a) => a.languages ?? []);
303
+ return (n = ma(r, t.language) ?? Ht(r, t.physicalFile) ?? Ht(r, t.file) ?? Vt(r, t.physicalFile) ?? Vt(r, t.file) ?? (et == null ? void 0 : et(r, t.physicalFile))) == null ? void 0 : n.parsers[0];
304
+ }
305
+ var yt = ga, Ir = Symbol.for("PRETTIER_IS_FRONT_MATTER");
306
+ function fa(e) {
307
+ return !!(e != null && e[Ir]);
308
+ }
309
+ var Ue = fa, oe = 3;
310
+ function _a(e) {
311
+ let t = e.slice(0, oe);
312
+ if (t !== "---" && t !== "+++") return;
313
+ let r = e.indexOf(`
314
+ `, oe);
315
+ if (r === -1) return;
316
+ let n = e.slice(oe, r).trim(), a = e.indexOf(`
317
+ ${t}`, r), i = n;
318
+ if (i || (i = t === "+++" ? "toml" : "yaml"), a === -1 && t === "---" && i === "yaml" && (a = e.indexOf(`
319
+ ...`, r)), a === -1) return;
320
+ let s = a + 1 + oe, o = e.charAt(s + 1);
321
+ if (!/\s?/u.test(o)) return;
322
+ let l = e.slice(0, s), c;
323
+ return { language: i, explicitLanguage: n || null, value: e.slice(r + 1, a), startDelimiter: t, endDelimiter: l.slice(-oe), raw: l, start: { line: 1, column: 0, index: 0 }, end: { index: l.length, get line() {
324
+ return c ?? (c = l.split(`
325
+ `)), c.length;
326
+ }, get column() {
327
+ return c ?? (c = l.split(`
328
+ `)), ee(0, c, -1).length;
329
+ } }, [Ir]: !0 };
330
+ }
331
+ function Ca(e) {
332
+ let t = _a(e);
333
+ return t ? { frontMatter: t, get content() {
334
+ let { raw: r } = t;
335
+ return b(0, r, /[^\n]/gu, " ") + e.slice(r.length);
336
+ } } : { content: e };
337
+ }
338
+ var Ea = Ca, va = "inline", Ut = { area: "none", base: "none", basefont: "none", datalist: "none", head: "none", link: "none", meta: "none", noembed: "none", noframes: "none", param: "block", rp: "none", script: "block", style: "none", template: "inline", title: "none", html: "block", body: "block", address: "block", blockquote: "block", center: "block", dialog: "block", div: "block", figure: "block", figcaption: "block", footer: "block", form: "block", header: "block", hr: "block", legend: "block", listing: "block", main: "block", p: "block", plaintext: "block", pre: "block", search: "block", xmp: "block", slot: "contents", ruby: "ruby", rt: "ruby-text", article: "block", aside: "block", h1: "block", h2: "block", h3: "block", h4: "block", h5: "block", h6: "block", hgroup: "block", nav: "block", section: "block", dir: "block", dd: "block", dl: "block", dt: "block", menu: "block", ol: "block", ul: "block", li: "list-item", table: "table", caption: "table-caption", colgroup: "table-column-group", col: "table-column", thead: "table-header-group", tbody: "table-row-group", tfoot: "table-footer-group", tr: "table-row", td: "table-cell", th: "table-cell", input: "inline-block", button: "inline-block", fieldset: "block", details: "block", summary: "block", marquee: "inline-block", select: "inline-block", source: "block", track: "block", meter: "inline-block", progress: "inline-block", object: "inline-block", video: "inline-block", audio: "inline-block", option: "block", optgroup: "block" }, Sa = "normal", Wt = { listing: "pre", plaintext: "pre", pre: "pre", xmp: "pre", nobr: "nowrap", table: "initial", textarea: "pre-wrap" };
339
+ function Aa(e) {
340
+ return e.kind === "element" && !e.hasExplicitNamespace && !["html", "svg"].includes(e.namespace);
341
+ }
342
+ var ke = Aa, Ta = (e) => b(0, e, /^[\t\f\r ]*\n/gu, ""), Rr = (e) => Ta(N.trimEnd(e)), ka = (e) => {
343
+ let t = e, r = N.getLeadingWhitespace(t);
344
+ r && (t = t.slice(r.length));
345
+ let n = N.getTrailingWhitespace(t);
346
+ return n && (t = t.slice(0, -n.length)), { leadingWhitespace: r, trailingWhitespace: n, text: t };
347
+ };
348
+ function Mr(e, t) {
349
+ return !!(e.kind === "ieConditionalComment" && e.lastChild && !e.lastChild.isSelfClosing && !e.lastChild.endSourceSpan || e.kind === "ieConditionalComment" && !e.complete || Z(e) && e.children.some((r) => r.kind !== "text" && r.kind !== "interpolation") || xt(e, t) && !M(e, t) && e.kind !== "interpolation");
350
+ }
351
+ function We(e) {
352
+ return e.kind === "attribute" || !e.parent || !e.prev ? !1 : ba(e.prev);
353
+ }
354
+ function ba(e) {
355
+ return e.kind === "comment" && e.value.trim() === "prettier-ignore";
356
+ }
357
+ function x(e) {
358
+ return e.kind === "text" || e.kind === "comment";
359
+ }
360
+ function M(e, t) {
361
+ return e.kind === "element" && (e.fullName === "script" || e.fullName === "style" || e.fullName === "svg:style" || e.fullName === "svg:script" || e.fullName === "mj-style" && t.parser === "mjml" || ke(e) && (e.name === "script" || e.name === "style"));
362
+ }
363
+ function wa(e, t) {
364
+ return e.children && !M(e, t);
365
+ }
366
+ function ya(e, t) {
367
+ return M(e, t) || e.kind === "interpolation" || qr(e);
368
+ }
369
+ function qr(e) {
370
+ return jr(e).startsWith("pre");
371
+ }
372
+ function Da(e, t) {
373
+ var a, i;
374
+ let r = n();
375
+ if (r && !e.prev && ((i = (a = e.parent) == null ? void 0 : a.tagDefinition) != null && i.ignoreFirstLf)) return e.kind === "interpolation";
376
+ return r;
377
+ function n() {
378
+ return Ue(e) || e.kind === "angularControlFlowBlock" ? !1 : (e.kind === "text" || e.kind === "interpolation") && e.prev && (e.prev.kind === "text" || e.prev.kind === "interpolation") ? !0 : !e.parent || e.parent.cssDisplay === "none" ? !1 : Z(e.parent) ? !0 : !(!e.prev && (e.parent.kind === "root" || Z(e) && e.parent || M(e.parent, t) || ze(e.parent, t) || !Ra(e.parent.cssDisplay)) || e.prev && !Ha(e.prev.cssDisplay));
379
+ }
380
+ }
381
+ function xa(e, t) {
382
+ return Ue(e) || e.kind === "angularControlFlowBlock" ? !1 : (e.kind === "text" || e.kind === "interpolation") && e.next && (e.next.kind === "text" || e.next.kind === "interpolation") ? !0 : !e.parent || e.parent.cssDisplay === "none" ? !1 : Z(e.parent) ? !0 : !(!e.next && (e.parent.kind === "root" || Z(e) && e.parent || M(e.parent, t) || ze(e.parent, t) || !Ma(e.parent.cssDisplay)) || e.next && !qa(e.next.cssDisplay));
383
+ }
384
+ function Na(e, t) {
385
+ return Va(e.cssDisplay) && !M(e, t);
386
+ }
387
+ function Le(e) {
388
+ return Ue(e) || e.next && e.sourceSpan.end && e.sourceSpan.end.line + 1 < e.next.sourceSpan.start.line;
389
+ }
390
+ function Ba(e) {
391
+ return Hr(e) || e.kind === "element" && e.children.length > 0 && (["body", "script", "style"].includes(e.name) || e.children.some((t) => Oa(t))) || e.firstChild && e.firstChild === e.lastChild && e.firstChild.kind !== "text" && Ur(e.firstChild) && (!e.lastChild.isTrailingSpaceSensitive || Wr(e.lastChild));
392
+ }
393
+ function Hr(e) {
394
+ return e.kind === "element" && e.children.length > 0 && (["html", "head", "ul", "ol", "select"].includes(e.name) || e.cssDisplay.startsWith("table") && e.cssDisplay !== "table-cell");
395
+ }
396
+ function tt(e) {
397
+ return zr(e) || e.prev && La(e.prev) || Vr(e);
398
+ }
399
+ function La(e) {
400
+ return zr(e) || e.kind === "element" && e.fullName === "br" || Vr(e);
401
+ }
402
+ function Vr(e) {
403
+ return Ur(e) && Wr(e);
404
+ }
405
+ function Ur(e) {
406
+ return e.hasLeadingSpaces && (e.prev ? e.prev.sourceSpan.end.line < e.sourceSpan.start.line : e.parent.kind === "root" || e.parent.startSourceSpan.end.line < e.sourceSpan.start.line);
407
+ }
408
+ function Wr(e) {
409
+ return e.hasTrailingSpaces && (e.next ? e.next.sourceSpan.start.line > e.sourceSpan.end.line : e.parent.kind === "root" || e.parent.endSourceSpan && e.parent.endSourceSpan.start.line > e.sourceSpan.end.line);
410
+ }
411
+ function zr(e) {
412
+ switch (e.kind) {
413
+ case "ieConditionalComment":
414
+ case "comment":
415
+ case "directive":
416
+ return !0;
417
+ case "element":
418
+ return ["script", "select"].includes(e.name);
419
+ }
420
+ return !1;
421
+ }
422
+ function Dt(e) {
423
+ return e.lastChild ? Dt(e.lastChild) : e;
424
+ }
425
+ function Oa(e) {
426
+ var t;
427
+ return (t = e.children) == null ? void 0 : t.some((r) => r.kind !== "text");
428
+ }
429
+ function $r(e) {
430
+ if (e) switch (e) {
431
+ case "module":
432
+ case "text/javascript":
433
+ case "text/babel":
434
+ case "text/jsx":
435
+ case "application/javascript":
436
+ return "babel";
437
+ case "application/x-typescript":
438
+ return "typescript";
439
+ case "text/markdown":
440
+ return "markdown";
441
+ case "text/html":
442
+ return "html";
443
+ case "text/x-handlebars-template":
444
+ return "glimmer";
445
+ default:
446
+ if (e.endsWith("json") || e.endsWith("importmap") || e === "speculationrules") return "json";
447
+ }
448
+ }
449
+ function Fa(e, t) {
450
+ let { name: r, attrMap: n } = e;
451
+ if (r !== "script" || Object.prototype.hasOwnProperty.call(n, "src")) return;
452
+ let { type: a, lang: i } = e.attrMap;
453
+ return !i && !a ? "babel" : yt(t, { language: i }) ?? $r(a);
454
+ }
455
+ function Pa(e, t) {
456
+ if (!xt(e, t)) return;
457
+ let { attrMap: r } = e;
458
+ if (Object.prototype.hasOwnProperty.call(r, "src")) return;
459
+ let { type: n, lang: a } = r;
460
+ return yt(t, { language: a }) ?? $r(n);
461
+ }
462
+ function Ia(e, t) {
463
+ if (e.name === "style") {
464
+ let { lang: r } = e.attrMap;
465
+ return r ? yt(t, { language: r }) : "css";
466
+ }
467
+ if (e.name === "mj-style" && t.parser === "mjml") return "css";
468
+ }
469
+ function zt(e, t) {
470
+ return Fa(e, t) ?? Ia(e, t) ?? Pa(e, t);
471
+ }
472
+ function be(e) {
473
+ return e === "block" || e === "list-item" || e.startsWith("table");
474
+ }
475
+ function Ra(e) {
476
+ return !be(e) && e !== "inline-block";
477
+ }
478
+ function Ma(e) {
479
+ return !be(e) && e !== "inline-block";
480
+ }
481
+ function qa(e) {
482
+ return !be(e);
483
+ }
484
+ function Ha(e) {
485
+ return !be(e);
486
+ }
487
+ function Va(e) {
488
+ return !be(e) && e !== "inline-block";
489
+ }
490
+ function Z(e) {
491
+ return jr(e).startsWith("pre");
492
+ }
493
+ function Ua(e, t) {
494
+ let r = e;
495
+ for (; r; ) {
496
+ if (t(r)) return !0;
497
+ r = r.parent;
498
+ }
499
+ return !1;
500
+ }
501
+ function Wa(e, t) {
502
+ var n;
503
+ if (ae(e, t)) return "block";
504
+ if (((n = e.prev) == null ? void 0 : n.kind) === "comment") {
505
+ let a = e.prev.value.match(/^\s*display:\s*([a-z]+)\s*$/u);
506
+ if (a) return a[1];
507
+ }
508
+ let r = !1;
509
+ if (e.kind === "element" && e.namespace === "svg") if (Ua(e, (a) => a.fullName === "svg:foreignObject")) r = !0;
510
+ else return e.name === "svg" ? "inline-block" : "block";
511
+ switch (t.htmlWhitespaceSensitivity) {
512
+ case "strict":
513
+ return "inline";
514
+ case "ignore":
515
+ return "block";
516
+ default:
517
+ if (e.kind === "element" && (!e.namespace || r || ke(e)) && Object.prototype.hasOwnProperty.call(Ut, e.name)) return Ut[e.name];
518
+ }
519
+ return va;
520
+ }
521
+ function jr(e) {
522
+ return e.kind === "element" && (!e.namespace || ke(e)) && Object.prototype.hasOwnProperty.call(Wt, e.name) ? Wt[e.name] : Sa;
523
+ }
524
+ function Xr(e) {
525
+ return b(0, b(0, e, "&apos;", "'"), "&quot;", '"');
526
+ }
527
+ function w(e) {
528
+ return Xr(e.value);
529
+ }
530
+ var za = /* @__PURE__ */ new Set(["template", "style", "script"]);
531
+ function ze(e, t) {
532
+ return ae(e, t) && !za.has(e.fullName);
533
+ }
534
+ function ae(e, t) {
535
+ return t.parser === "vue" && e.kind === "element" && e.parent.kind === "root" && e.fullName.toLowerCase() !== "html";
536
+ }
537
+ function xt(e, t) {
538
+ return ae(e, t) && (ze(e, t) || e.attrMap.lang && e.attrMap.lang !== "html");
539
+ }
540
+ function $a(e) {
541
+ let t = e.fullName;
542
+ return t.charAt(0) === "#" || t === "slot-scope" || t === "v-slot" || t.startsWith("v-slot:");
543
+ }
544
+ function ja(e, t) {
545
+ let r = e.parent;
546
+ if (!ae(r, t)) return !1;
547
+ let n = r.fullName, a = e.fullName;
548
+ return n === "script" && a === "setup" || n === "style" && a === "vars";
549
+ }
550
+ function Gr(e, t = e.value) {
551
+ return e.parent.isWhitespaceSensitive ? e.parent.isIndentationSensitive ? O(t) : O(N.dedentString(Rr(t)), v) : re(S, N.split(t));
552
+ }
553
+ function Kr(e, t) {
554
+ return ae(e, t) && e.name === "script";
555
+ }
556
+ function Xa(e) {
557
+ let { valueSpan: t, value: r } = e;
558
+ return t.end.offset - t.start.offset === r.length + 2;
559
+ }
560
+ function Yr(e, t) {
561
+ if (Xa(e)) return !1;
562
+ let { value: r } = e;
563
+ return /^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(r) || t.parser === "lwc" && r.startsWith("{") && r.endsWith("}");
564
+ }
565
+ var Jr = /\{\{(.+?)\}\}/su, Ga = ({ node: { value: e } }) => Jr.test(e);
566
+ async function Ka(e, t, r) {
567
+ let n = w(r.node), a = [];
568
+ for (let [i, s] of n.split(Jr).entries()) if (i % 2 === 0) a.push(O(s));
569
+ else try {
570
+ a.push(A(["{{", F([S, await B(s, e, { parser: "__ng_interpolation", __isInHtmlInterpolation: !0 })]), S, "}}"]));
571
+ } catch {
572
+ a.push("{{", O(s), "}}");
573
+ }
574
+ return a;
575
+ }
576
+ var rt = (e) => (t, r, n) => B(w(n.node), t, { parser: e }, ne), Ya = [{ test(e) {
577
+ let t = e.node.fullName;
578
+ return t.startsWith("(") && t.endsWith(")") || t.startsWith("on-");
579
+ }, print: rt("__ng_action") }, { test(e) {
580
+ let t = e.node.fullName;
581
+ return t.startsWith("[") && t.endsWith("]") || /^bind(?:on)?-/u.test(t) || /^ng-(?:if|show|hide|class|style)$/u.test(t);
582
+ }, print: rt("__ng_binding") }, { test: (e) => e.node.fullName.startsWith("*"), print: rt("__ng_directive") }, { test: (e) => /^i18n(?:-.+)?$/u.test(e.node.fullName), print: Ja }, { test: Ga, print: Ka }].map(({ test: e, print: t }) => ({ test: (r, n) => n.parser === "angular" && e(r), print: t }));
583
+ function Ja(e, t, { node: r }) {
584
+ let n = w(r);
585
+ return Te(Nr(Gr(r, n.trim())), !n.includes("@@"));
586
+ }
587
+ var Qa = Ya, Za = ({ node: e }, t) => !t.parentParser && e.fullName === "class" && !e.value.includes("{{"), ei = (e, t, r) => w(r.node).trim().split(/\s+/u).join(" "), ti = ["onabort", "onafterprint", "onauxclick", "onbeforeinput", "onbeforematch", "onbeforeprint", "onbeforetoggle", "onbeforeunload", "onblur", "oncancel", "oncanplay", "oncanplaythrough", "onchange", "onclick", "onclose", "oncommand", "oncontextlost", "oncontextmenu", "oncontextrestored", "oncopy", "oncuechange", "oncut", "ondblclick", "ondrag", "ondragend", "ondragenter", "ondragleave", "ondragover", "ondragstart", "ondrop", "ondurationchange", "onemptied", "onended", "onerror", "onfocus", "onformdata", "onhashchange", "oninput", "oninvalid", "onkeydown", "onkeypress", "onkeyup", "onlanguagechange", "onload", "onloadeddata", "onloadedmetadata", "onloadstart", "onmessage", "onmessageerror", "onmousedown", "onmouseenter", "onmouseleave", "onmousemove", "onmouseout", "onmouseover", "onmouseup", "onoffline", "ononline", "onpagehide", "onpagereveal", "onpageshow", "onpageswap", "onpaste", "onpause", "onplay", "onplaying", "onpopstate", "onprogress", "onratechange", "onrejectionhandled", "onreset", "onresize", "onscroll", "onscrollend", "onsecuritypolicyviolation", "onseeked", "onseeking", "onselect", "onslotchange", "onstalled", "onstorage", "onsubmit", "onsuspend", "ontimeupdate", "ontoggle", "onunhandledrejection", "onunload", "onvolumechange", "onwaiting", "onwheel"], ri = new Set(ti), ni = ({ node: e }, t) => ri.has(e.fullName) && !t.parentParser && !e.value.includes("{{"), ai = (e, t, r) => B(w(r.node), e, { parser: "babel", __isHtmlInlineEventHandler: !0 }, () => !1);
588
+ function ii(e) {
589
+ let t = [];
590
+ for (let r of e.split(";")) {
591
+ if (r = N.trim(r), !r) continue;
592
+ let [n, ...a] = N.split(r);
593
+ t.push({ name: n, value: a });
594
+ }
595
+ return t;
596
+ }
597
+ var si = ii, oi = ({ node: e }, t) => e.fullName === "allow" && !t.parentParser && e.parent.fullName === "iframe" && !e.value.includes("{{");
598
+ function ui(e, t, r) {
599
+ let { node: n } = r, a = si(w(n));
600
+ return a.length === 0 ? [""] : Te(a.map(({ name: i, value: s }, o) => [[i, ...s].join(" "), o === a.length - 1 ? Ce(";") : [";", S]]));
601
+ }
602
+ function $t(e) {
603
+ return e === " " || e === `
604
+ ` || e === "\f" || e === "\r" || e === " ";
605
+ }
606
+ var li = /^[ \t\n\r\u000c]+/, ci = /^[, \t\n\r\u000c]+/, pi = /^[^ \t\n\r\u000c]+/, hi = /[,]+$/, jt = /^\d+$/, di = /^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/;
607
+ function mi(e) {
608
+ let t = e.length, r, n, a, i, s, o = 0, l;
609
+ function c(h) {
610
+ let _, C = h.exec(e.substring(o));
611
+ if (C) return [_] = C, o += _.length, _;
612
+ }
613
+ let p = [];
614
+ for (; ; ) {
615
+ if (c(ci), o >= t) {
616
+ if (p.length === 0) throw new Error("Must contain one or more image candidate strings.");
617
+ return p;
618
+ }
619
+ l = o, r = c(pi), n = [], r.slice(-1) === "," ? (r = r.replace(hi, ""), f()) : g();
620
+ }
621
+ function g() {
622
+ for (c(li), a = "", i = "in descriptor"; ; ) {
623
+ if (s = e.charAt(o), i === "in descriptor") if ($t(s)) a && (n.push(a), a = "", i = "after descriptor");
624
+ else if (s === ",") {
625
+ o += 1, a && n.push(a), f();
626
+ return;
627
+ } else if (s === "(") a += s, i = "in parens";
628
+ else if (s === "") {
629
+ a && n.push(a), f();
630
+ return;
631
+ } else a += s;
632
+ else if (i === "in parens") if (s === ")") a += s, i = "in descriptor";
633
+ else if (s === "") {
634
+ n.push(a), f();
635
+ return;
636
+ } else a += s;
637
+ else if (i === "after descriptor" && !$t(s)) if (s === "") {
638
+ f();
639
+ return;
640
+ } else i = "in descriptor", o -= 1;
641
+ o += 1;
642
+ }
643
+ }
644
+ function f() {
645
+ let h = !1, _, C, L, P, V = {}, q, Ne, K, se, Ye;
646
+ for (P = 0; P < n.length; P++) q = n[P], Ne = q[q.length - 1], K = q.substring(0, q.length - 1), se = parseInt(K, 10), Ye = parseFloat(K), jt.test(K) && Ne === "w" ? ((_ || C) && (h = !0), se === 0 ? h = !0 : _ = se) : di.test(K) && Ne === "x" ? ((_ || C || L) && (h = !0), Ye < 0 ? h = !0 : C = Ye) : jt.test(K) && Ne === "h" ? ((L || C) && (h = !0), se === 0 ? h = !0 : L = se) : h = !0;
647
+ if (!h) V.source = { value: r, startOffset: l }, _ && (V.width = { value: _ }), C && (V.density = { value: C }), L && (V.height = { value: L }), p.push(V);
648
+ else throw new Error(`Invalid srcset descriptor found in "${e}" at "${q}".`);
649
+ }
650
+ }
651
+ var gi = mi, fi = (e) => e.node.fullName === "srcset" && (e.parent.fullName === "img" || e.parent.fullName === "source"), Qr = { width: "w", height: "h", density: "x" }, _i = Object.keys(Qr);
652
+ function Ci(e, t, r) {
653
+ let n = w(r.node), a = gi(n), i = _i.filter((h) => a.some((_) => Object.prototype.hasOwnProperty.call(_, h)));
654
+ if (i.length > 1) throw new Error("Mixed descriptor in srcset is not supported");
655
+ let [s] = i, o = Qr[s], l = a.map((h) => h.source.value), c = Math.max(...l.map((h) => h.length)), p = a.map((h) => h[s] ? String(h[s].value) : ""), g = p.map((h) => {
656
+ let _ = h.indexOf(".");
657
+ return _ === -1 ? h.length : _;
658
+ }), f = Math.max(...g);
659
+ return Te(re([",", S], l.map((h, _) => {
660
+ let C = [h], L = p[_];
661
+ if (L) {
662
+ let P = c - h.length + 1, V = f - g[_], q = " ".repeat(P + V);
663
+ C.push(Ce(q, " "), L + o);
664
+ }
665
+ return C;
666
+ })));
667
+ }
668
+ var Ei = ({ node: e }, t) => e.fullName === "style" && !t.parentParser && !e.value.includes("{{"), vi = async (e, t, r) => Te(await e(w(r.node), { parser: "css", __isHTMLStyleAttribute: !0 })), nt = /* @__PURE__ */ new WeakMap();
669
+ function Si(e, t) {
670
+ let { root: r } = e;
671
+ return nt.has(r) || nt.set(r, r.children.some((n) => Kr(n, t) && ["ts", "typescript"].includes(n.attrMap.lang))), nt.get(r);
672
+ }
673
+ var ie = Si;
674
+ function Ai(e, t, r) {
675
+ let n = w(r.node);
676
+ return B(`type T<${n}> = any`, e, { parser: "babel-ts", __isEmbeddedTypescriptGenericParameters: !0 }, ne);
677
+ }
678
+ function Ti(e, t, r, n) {
679
+ let a = w(r.node), i = ie(r, n) ? "babel-ts" : "babel";
680
+ return B(`function _(${a}) {}`, e, { parser: i, __isVueBindings: !0 });
681
+ }
682
+ async function ki(e, t, r, n) {
683
+ let a = w(r.node), { left: i, operator: s, right: o } = bi(a), l = ie(r, n);
684
+ return [A(await B(`function _(${i}) {}`, e, { parser: l ? "babel-ts" : "babel", __isVueForBindingLeft: !0 })), " ", s, " ", await B(o, e, { parser: l ? "__ts_expression" : "__js_expression" })];
685
+ }
686
+ function bi(e) {
687
+ let t = /(.*?)\s+(in|of)\s+(.*)/su, r = /,([^,\]}]*)(?:,([^,\]}]*))?$/u, n = /^\(|\)$/gu, a = e.match(t);
688
+ if (!a) return;
689
+ let i = { for: a[3].trim() };
690
+ if (!i.for) return;
691
+ let s = b(0, a[1].trim(), n, ""), o = s.match(r);
692
+ o ? (i.alias = s.replace(r, ""), i.iterator1 = o[1].trim(), o[2] && (i.iterator2 = o[2].trim())) : i.alias = s;
693
+ let l = [i.alias, i.iterator1, i.iterator2];
694
+ if (!l.some((c, p) => !c && (p === 0 || l.slice(p + 1).some(Boolean)))) return { left: l.filter(Boolean).join(","), operator: a[2], right: i.for };
695
+ }
696
+ var wi = [{ test: (e) => e.node.fullName === "v-for", print: ki }, { test: (e, t) => e.node.fullName === "generic" && Kr(e.parent, t), print: Ai }, { test: ({ node: e }, t) => $a(e) || ja(e, t), print: Ti }, { test(e) {
697
+ let t = e.node.fullName;
698
+ return t.startsWith("@") || t.startsWith("v-on:");
699
+ }, print: yi }, { test(e) {
700
+ let t = e.node.fullName;
701
+ return t.startsWith(":") || t.startsWith(".") || t.startsWith("v-bind:");
702
+ }, print: Di }, { test: (e) => e.node.fullName.startsWith("v-"), print: Zr }].map(({ test: e, print: t }) => ({ test: (r, n) => n.parser === "vue" && e(r, n), print: t }));
703
+ async function yi(e, t, r, n) {
704
+ var s;
705
+ try {
706
+ return await Zr(e, t, r, n);
707
+ } catch (o) {
708
+ if (((s = o.cause) == null ? void 0 : s.code) !== "BABEL_PARSER_SYNTAX_ERROR") throw o;
709
+ }
710
+ let a = w(r.node), i = ie(r, n) ? "__vue_ts_event_binding" : "__vue_event_binding";
711
+ return B(a, e, { parser: i }, ne);
712
+ }
713
+ function Di(e, t, r, n) {
714
+ let a = w(r.node), i = ie(r, n) ? "__vue_ts_expression" : "__vue_expression";
715
+ return B(a, e, { parser: i }, ne);
716
+ }
717
+ function Zr(e, t, r, n) {
718
+ let a = w(r.node), i = ie(r, n) ? "__ts_expression" : "__js_expression";
719
+ return B(a, e, { parser: i }, ne);
720
+ }
721
+ var xi = wi, Ni = [{ test: fi, print: Ci }, { test: Ei, print: vi }, { test: ni, print: ai }, { test: Za, print: ei }, { test: oi, print: ui }, ...xi, ...Qa].map(({ test: e, print: t }) => ({ test: e, print: Li(t) }));
722
+ function Bi(e, t) {
723
+ var a;
724
+ let { node: r } = e, { value: n } = r;
725
+ if (n) return Yr(r, t) ? [r.rawName, "=", n] : (a = Ni.find(({ test: i }) => i(e, t))) == null ? void 0 : a.print;
726
+ }
727
+ function Li(e) {
728
+ return async (t, r, n, a) => {
729
+ let i = await e(t, r, n, a);
730
+ if (i) return i = xr(i, (s) => typeof s == "string" ? b(0, s, '"', "&quot;") : s), [n.node.rawName, '="', A(i), '"'];
731
+ };
732
+ }
733
+ var Oi = Bi, we = (e) => e.sourceSpan.start.offset, $e = (e) => e.sourceSpan.end.offset;
734
+ function ot(e, t) {
735
+ return [e.isSelfClosing ? "" : Fi(e, t), me(e, t)];
736
+ }
737
+ function Fi(e, t) {
738
+ return e.lastChild && Ee(e.lastChild) ? "" : [Pi(e, t), Nt(e, t)];
739
+ }
740
+ function me(e, t) {
741
+ return (e.next ? j(e.next) : De(e.parent)) ? "" : [ye(e, t), $(e, t)];
742
+ }
743
+ function Pi(e, t) {
744
+ return De(e) ? ye(e.lastChild, t) : "";
745
+ }
746
+ function $(e, t) {
747
+ return Ee(e) ? Nt(e.parent, t) : je(e) ? Bt(e.next, t) : "";
748
+ }
749
+ function Nt(e, t) {
750
+ if (en(e, t)) return "";
751
+ switch (e.kind) {
752
+ case "ieConditionalComment":
753
+ return "<!";
754
+ case "element":
755
+ if (e.hasHtmComponentClosingTag) return "<//";
756
+ default:
757
+ return `</${e.rawName}`;
758
+ }
759
+ }
760
+ function ye(e, t) {
761
+ if (en(e, t)) return "";
762
+ switch (e.kind) {
763
+ case "ieConditionalComment":
764
+ case "ieConditionalEndComment":
765
+ return "[endif]-->";
766
+ case "ieConditionalStartComment":
767
+ return "]><!-->";
768
+ case "interpolation":
769
+ return "}}";
770
+ case "angularIcuExpression":
771
+ return "}";
772
+ case "element":
773
+ if (e.isSelfClosing) return "/>";
774
+ default:
775
+ return ">";
776
+ }
777
+ }
778
+ function en(e, t) {
779
+ return !e.isSelfClosing && !e.endSourceSpan && (We(e) || Mr(e.parent, t));
780
+ }
781
+ function j(e) {
782
+ return e.prev && e.prev.kind !== "docType" && e.kind !== "angularControlFlowBlock" && !x(e.prev) && e.isLeadingSpaceSensitive && !e.hasLeadingSpaces;
783
+ }
784
+ function De(e) {
785
+ var t;
786
+ return ((t = e.lastChild) == null ? void 0 : t.isTrailingSpaceSensitive) && !e.lastChild.hasTrailingSpaces && !x(Dt(e.lastChild)) && !Z(e);
787
+ }
788
+ function Ee(e) {
789
+ return !e.next && !e.hasTrailingSpaces && e.isTrailingSpaceSensitive && x(Dt(e));
790
+ }
791
+ function je(e) {
792
+ return e.next && !x(e.next) && x(e) && e.isTrailingSpaceSensitive && !e.hasTrailingSpaces;
793
+ }
794
+ function Ii(e) {
795
+ let t = e.trim().match(/^prettier-ignore-attribute(?:\s+(.+))?$/su);
796
+ return t ? t[1] ? t[1].split(/\s+/u) : !0 : !1;
797
+ }
798
+ function Xe(e) {
799
+ return !e.prev && e.isLeadingSpaceSensitive && !e.hasLeadingSpaces;
800
+ }
801
+ function Ri(e, t, r) {
802
+ var p;
803
+ let { node: n } = e;
804
+ if (!wt(n.attrs)) return n.isSelfClosing ? " " : "";
805
+ let a = ((p = n.prev) == null ? void 0 : p.kind) === "comment" && Ii(n.prev.value), i = typeof a == "boolean" ? () => a : Array.isArray(a) ? (g) => a.includes(g.rawName) : () => !1, s = e.map(({ node: g }) => i(g) ? O(t.originalText.slice(we(g), $e(g))) : r(), "attrs"), o = n.kind === "element" && n.fullName === "script" && n.attrs.length === 1 && n.attrs[0].fullName === "src" && n.children.length === 0, l = t.singleAttributePerLine && n.attrs.length > 1 && !ae(n, t) ? v : S, c = [F([o ? " " : S, re(l, s)])];
806
+ return n.firstChild && Xe(n.firstChild) || n.isSelfClosing && De(n.parent) || o ? c.push(n.isSelfClosing ? " " : "") : c.push(t.bracketSameLine ? n.isSelfClosing ? " " : "" : n.isSelfClosing ? S : k), c;
807
+ }
808
+ function Mi(e) {
809
+ return e.firstChild && Xe(e.firstChild) ? "" : Lt(e);
810
+ }
811
+ function ut(e, t, r) {
812
+ let { node: n } = e;
813
+ return [ge(n, t), Ri(e, t, r), n.isSelfClosing ? "" : Mi(n)];
814
+ }
815
+ function ge(e, t) {
816
+ return e.prev && je(e.prev) ? "" : [X(e, t), Bt(e, t)];
817
+ }
818
+ function X(e, t) {
819
+ return Xe(e) ? Lt(e.parent) : j(e) ? ye(e.prev, t) : "";
820
+ }
821
+ var Xt = "<!doctype";
822
+ function Bt(e, t) {
823
+ switch (e.kind) {
824
+ case "ieConditionalComment":
825
+ case "ieConditionalStartComment":
826
+ return `<!--[if ${e.condition}`;
827
+ case "ieConditionalEndComment":
828
+ return "<!--<!";
829
+ case "interpolation":
830
+ return "{{";
831
+ case "docType": {
832
+ if (e.value === "html") {
833
+ let { filepath: n } = t;
834
+ if (n && /\.html?$/u.test(n)) return Xt;
835
+ }
836
+ let r = we(e);
837
+ return t.originalText.slice(r, r + Xt.length);
838
+ }
839
+ case "angularIcuExpression":
840
+ return "{";
841
+ case "element":
842
+ if (e.condition) return `<!--[if ${e.condition}]><!--><${e.rawName}`;
843
+ default:
844
+ return `<${e.rawName}`;
845
+ }
846
+ }
847
+ function Lt(e) {
848
+ switch (e.kind) {
849
+ case "ieConditionalComment":
850
+ return "]>";
851
+ case "element":
852
+ if (e.condition) return "><!--<![endif]-->";
853
+ default:
854
+ return ">";
855
+ }
856
+ }
857
+ function qi(e, t) {
858
+ if (!e.endSourceSpan) return "";
859
+ let r = e.startSourceSpan.end.offset;
860
+ e.firstChild && Xe(e.firstChild) && (r -= Lt(e).length);
861
+ let n = e.endSourceSpan.start.offset;
862
+ return e.lastChild && Ee(e.lastChild) ? n += Nt(e, t).length : De(e) && (n -= ye(e.lastChild, t).length), t.originalText.slice(r, n);
863
+ }
864
+ var tn = qi, Hi = /* @__PURE__ */ new Set(["if", "else if", "for", "switch", "case"]);
865
+ function Vi(e, t) {
866
+ let { node: r } = e;
867
+ switch (r.kind) {
868
+ case "element":
869
+ if (M(r, t) || r.kind === "interpolation") return;
870
+ if (!r.isSelfClosing && xt(r, t)) {
871
+ let n = zt(r, t);
872
+ return n ? async (a, i) => {
873
+ let s = tn(r, t), o = /^\s*$/u.test(s), l = "";
874
+ return o || (l = await a(Rr(s), { parser: n, __embeddedInHtml: !0 }), o = l === ""), [X(r, t), A(ut(e, t, i)), o ? "" : v, l, o ? "" : v, ot(r, t), $(r, t)];
875
+ } : void 0;
876
+ }
877
+ break;
878
+ case "text":
879
+ if (M(r.parent, t)) {
880
+ let n = zt(r.parent, t);
881
+ if (n) return async (a) => {
882
+ let i = n === "markdown" ? N.dedentString(r.value.replace(/^[^\S\n]*\n/u, "")) : r.value, s = { parser: n, __embeddedInHtml: !0 };
883
+ if (t.parser === "html" && n === "babel") {
884
+ let o = "script", { attrMap: l } = r.parent;
885
+ l && (l.type === "module" || (l.type === "text/babel" || l.type === "text/jsx") && l["data-type"] === "module") && (o = "module"), s.__babelSourceType = o;
886
+ }
887
+ return [Ae, X(r, t), await a(i, s), $(r, t)];
888
+ };
889
+ } else if (r.parent.kind === "interpolation") return async (n) => {
890
+ let a = { __isInHtmlInterpolation: !0, __embeddedInHtml: !0 };
891
+ return t.parser === "angular" ? a.parser = "__ng_interpolation" : t.parser === "vue" ? a.parser = ie(e, t) ? "__vue_ts_expression" : "__vue_expression" : a.parser = "__js_expression", [F([S, await n(r.value, a)]), r.parent.next && j(r.parent.next) ? " " : S];
892
+ };
893
+ break;
894
+ case "attribute":
895
+ return Oi(e, t);
896
+ case "angularControlFlowBlockParameters":
897
+ return Hi.has(e.parent.name) ? ra : void 0;
898
+ case "angularLetDeclarationInitializer":
899
+ return (n) => B(r.value, n, { parser: "__ng_binding", __isInHtmlAttribute: !1 });
900
+ }
901
+ }
902
+ var Ui = Vi, ue = null;
903
+ function fe(e) {
904
+ if (ue !== null && typeof ue.property) {
905
+ let t = ue;
906
+ return ue = fe.prototype = null, t;
907
+ }
908
+ return ue = fe.prototype = e ?? /* @__PURE__ */ Object.create(null), new fe();
909
+ }
910
+ var Wi = 10;
911
+ for (let e = 0; e <= Wi; e++) fe();
912
+ function zi(e) {
913
+ return fe(e);
914
+ }
915
+ function $i(e, t = "type") {
916
+ zi(e);
917
+ function r(n) {
918
+ let a = n[t], i = e[a];
919
+ if (!Array.isArray(i)) throw Object.assign(new Error(`Missing visitor keys for '${a}'.`), { node: n });
920
+ return i;
921
+ }
922
+ return r;
923
+ }
924
+ var ji = $i, y = [["children"], []], Xi = { root: y[0], element: ["attrs", "children"], ieConditionalComment: y[0], ieConditionalStartComment: y[1], ieConditionalEndComment: y[1], interpolation: y[0], text: y[0], docType: y[1], comment: y[1], attribute: y[1], cdata: y[1], angularControlFlowBlock: ["children", "parameters"], angularControlFlowBlockParameters: y[0], angularControlFlowBlockParameter: y[1], angularLetDeclaration: ["init"], angularLetDeclarationInitializer: y[1], angularIcuExpression: ["cases"], angularIcuCase: ["expression"] }, Gi = ji(Xi, "kind"), Ki = Gi, Yi = "format", Ji = /^\s*<!--\s*@(?:noformat|noprettier)\s*-->/u, Qi = /^\s*<!--\s*@(?:format|prettier)\s*-->/u, Zi = (e) => Qi.test(e), es = (e) => Ji.test(e), ts = (e) => `<!-- @${Yi} -->
925
+
926
+ ${e}`, rs = /* @__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"])]]);
927
+ function rn(e) {
928
+ let t = $e(e);
929
+ return e.kind === "element" && !e.endSourceSpan && wt(e.children) ? Math.max(t, rn(ee(0, e.children, -1))) : t;
930
+ }
931
+ function le(e, t, r) {
932
+ let n = e.node;
933
+ if (We(n)) {
934
+ let a = rn(n);
935
+ return [X(n, t), O(N.trimEnd(t.originalText.slice(we(n) + (n.prev && je(n.prev) ? Bt(n).length : 0), a - (n.next && j(n.next) ? ye(n, t).length : 0)))), $(n, t)];
936
+ }
937
+ return r();
938
+ }
939
+ function Oe(e, t) {
940
+ return x(e) && x(t) ? e.isTrailingSpaceSensitive ? e.hasTrailingSpaces ? tt(t) ? v : S : "" : tt(t) ? v : k : je(e) && (We(t) || t.firstChild || t.isSelfClosing || t.kind === "element" && t.attrs.length > 0) || e.kind === "element" && e.isSelfClosing && j(t) ? "" : !t.isLeadingSpaceSensitive || tt(t) || j(t) && e.lastChild && Ee(e.lastChild) && e.lastChild.lastChild && Ee(e.lastChild.lastChild) ? v : t.hasLeadingSpaces ? S : k;
941
+ }
942
+ function Ot(e, t, r) {
943
+ let { node: n } = e;
944
+ if (Hr(n)) return [Ae, ...e.map(() => {
945
+ let i = e.node, s = i.prev ? Oe(i.prev, i) : "";
946
+ return [s ? [s, Le(i.prev) ? v : ""] : "", le(e, t, r)];
947
+ }, "children")];
948
+ let a = n.children.map(() => Symbol(""));
949
+ return e.map(({ node: i, index: s }) => {
950
+ if (x(i)) {
951
+ if (i.prev && x(i.prev)) {
952
+ let h = Oe(i.prev, i);
953
+ if (h) return Le(i.prev) ? [v, v, le(e, t, r)] : [h, le(e, t, r)];
954
+ }
955
+ return le(e, t, r);
956
+ }
957
+ let o = [], l = [], c = [], p = [], g = i.prev ? Oe(i.prev, i) : "", f = i.next ? Oe(i, i.next) : "";
958
+ return g && (Le(i.prev) ? o.push(v, v) : g === v ? o.push(v) : x(i.prev) ? l.push(g) : l.push(Ce("", k, { groupId: a[s - 1] }))), f && (Le(i) ? x(i.next) && p.push(v, v) : f === v ? x(i.next) && p.push(v) : c.push(f)), [...o, A([...l, A([le(e, t, r), ...c], { id: a[s] })]), ...p];
959
+ }, "children");
960
+ }
961
+ function ns(e, t, r) {
962
+ let { node: n } = e, a = [];
963
+ as(e) && a.push("} "), a.push("@", n.name), n.parameters && a.push(" (", A(r("parameters")), ")"), a.push(" {");
964
+ let i = nn(n);
965
+ return n.children.length > 0 ? (n.firstChild.hasLeadingSpaces = !0, n.lastChild.hasTrailingSpaces = !0, a.push(F([v, Ot(e, t, r)])), i && a.push(v, "}")) : i && a.push("}"), A(a, { shouldBreak: !0 });
966
+ }
967
+ function nn(e) {
968
+ var t, r;
969
+ return !(((t = e.next) == null ? void 0 : t.kind) === "angularControlFlowBlock" && ((r = rs.get(e.name)) != null && r.has(e.next.name)));
970
+ }
971
+ function as(e) {
972
+ let { previous: t } = e;
973
+ return (t == null ? void 0 : t.kind) === "angularControlFlowBlock" && !We(t) && !nn(t);
974
+ }
975
+ function is(e, t, r) {
976
+ return [F([k, re([";", S], e.map(r, "children"))]), k];
977
+ }
978
+ function ss(e, t, r) {
979
+ let { node: n } = e;
980
+ return [ge(n, t), A([n.switchValue.trim(), ", ", n.type, n.cases.length > 0 ? [",", F([S, re(S, e.map(r, "cases"))])] : "", k]), me(n, t)];
981
+ }
982
+ function os(e, t, r) {
983
+ let { node: n } = e;
984
+ return [n.value, " {", A([F([k, e.map(({ node: a, isLast: i }) => {
985
+ let s = [r()];
986
+ return a.kind === "text" && (a.hasLeadingSpaces && s.unshift(S), a.hasTrailingSpaces && !i && s.push(S)), s;
987
+ }, "expression")]), k]), "}"];
988
+ }
989
+ function us(e, t, r) {
990
+ let { node: n } = e;
991
+ if (Mr(n, t)) return [X(n, t), A(ut(e, t, r)), O(tn(n, t)), ...ot(n, t), $(n, t)];
992
+ let a = n.children.length === 1 && (n.firstChild.kind === "interpolation" || n.firstChild.kind === "angularIcuExpression") && n.firstChild.isLeadingSpaceSensitive && !n.firstChild.hasLeadingSpaces && n.lastChild.isTrailingSpaceSensitive && !n.lastChild.hasTrailingSpaces, i = Symbol("element-attr-group-id"), s = (p) => A([A(ut(e, t, r), { id: i }), p, ot(n, t)]), o = (p) => a ? Rn(p, { groupId: i }) : (M(n, t) || ze(n, t)) && n.parent.kind === "root" && t.parser === "vue" && !t.vueIndentScriptAndStyle ? p : F(p), l = () => a ? Ce(k, "", { groupId: i }) : n.firstChild.hasLeadingSpaces && n.firstChild.isLeadingSpaceSensitive ? S : n.firstChild.kind === "text" && n.isWhitespaceSensitive && n.isIndentationSensitive ? In(k) : k, c = () => (n.next ? j(n.next) : De(n.parent)) ? n.lastChild.hasTrailingSpaces && n.lastChild.isTrailingSpaceSensitive ? " " : "" : a ? Ce(k, "", { groupId: i }) : n.lastChild.hasTrailingSpaces && n.lastChild.isTrailingSpaceSensitive ? S : (n.lastChild.kind === "comment" || n.lastChild.kind === "text" && n.isWhitespaceSensitive && n.isIndentationSensitive) && new RegExp(`\\n[\\t ]{${t.tabWidth * (e.ancestors.length - 1)}}$`, "u").test(n.lastChild.value) ? "" : k;
993
+ return n.children.length === 0 ? s(n.hasDanglingSpaces && n.isDanglingSpaceSensitive ? S : "") : s([Ba(n) ? Ae : "", o([l(), Ot(e, t, r)]), c()]);
994
+ }
995
+ var R = (function(e) {
996
+ return e[e.RAW_TEXT = 0] = "RAW_TEXT", e[e.ESCAPABLE_RAW_TEXT = 1] = "ESCAPABLE_RAW_TEXT", e[e.PARSABLE_DATA = 2] = "PARSABLE_DATA", e;
997
+ })({});
998
+ function Ge(e, t = !0) {
999
+ if (e[0] != ":") return [null, e];
1000
+ let r = e.indexOf(":", 1);
1001
+ if (r === -1) {
1002
+ if (t) throw new Error(`Unsupported format "${e}" expecting ":namespace:name"`);
1003
+ return [null, e];
1004
+ }
1005
+ return [e.slice(1, r), e.slice(r + 1)];
1006
+ }
1007
+ function Gt(e) {
1008
+ return Ge(e)[1] === "ng-container";
1009
+ }
1010
+ function Kt(e) {
1011
+ return Ge(e)[1] === "ng-content";
1012
+ }
1013
+ function Re(e) {
1014
+ return e === null ? null : Ge(e)[0];
1015
+ }
1016
+ function _e(e, t) {
1017
+ return e ? `:${e}:${t}` : t;
1018
+ }
1019
+ var Yt = { name: "custom-elements" }, Jt = { name: "no-errors-schema" }, he = (function(e) {
1020
+ return e[e.NONE = 0] = "NONE", e[e.HTML = 1] = "HTML", e[e.STYLE = 2] = "STYLE", e[e.SCRIPT = 3] = "SCRIPT", e[e.URL = 4] = "URL", e[e.RESOURCE_URL = 5] = "RESOURCE_URL", e;
1021
+ })({}), ls = /-+([a-z0-9])/g;
1022
+ function cs(e) {
1023
+ return e.replace(ls, (...t) => t[1].toUpperCase());
1024
+ }
1025
+ var Me;
1026
+ function Qt() {
1027
+ return Me || (Me = {}, Fe(he.HTML, ["iframe|srcdoc", "*|innerHTML", "*|outerHTML"]), Fe(he.STYLE, ["*|style"]), Fe(he.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"]), Fe(he.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"])), Me;
1028
+ }
1029
+ function Fe(e, t) {
1030
+ for (let r of t) Me[r.toLowerCase()] = e;
1031
+ }
1032
+ var ps = class {
1033
+ }, hs = "boolean", ds = "number", ms = "string", gs = "object", fs = ["[Element]|textContent,%ariaActiveDescendantElement,%ariaAtomic,%ariaAutoComplete,%ariaBusy,%ariaChecked,%ariaColCount,%ariaColIndex,%ariaColIndexText,%ariaColSpan,%ariaControlsElements,%ariaCurrent,%ariaDescribedByElements,%ariaDescription,%ariaDetailsElements,%ariaDisabled,%ariaErrorMessageElements,%ariaExpanded,%ariaFlowToElements,%ariaHasPopup,%ariaHidden,%ariaInvalid,%ariaKeyShortcuts,%ariaLabel,%ariaLabelledByElements,%ariaLevel,%ariaLive,%ariaModal,%ariaMultiLine,%ariaMultiSelectable,%ariaOrientation,%ariaOwnsElements,%ariaPlaceholder,%ariaPosInSet,%ariaPressed,%ariaReadOnly,%ariaRelevant,%ariaRequired,%ariaRoleDescription,%ariaRowCount,%ariaRowIndex,%ariaRowIndexText,%ariaRowSpan,%ariaSelected,%ariaSetSize,%ariaSort,%ariaValueMax,%ariaValueMin,%ariaValueNow,%ariaValueText,%classList,className,elementTiming,id,innerHTML,*beforecopy,*beforecut,*beforepaste,*fullscreenchange,*fullscreenerror,*search,*webkitfullscreenchange,*webkitfullscreenerror,outerHTML,%part,#scrollLeft,#scrollTop,slot,*message,*mozfullscreenchange,*mozfullscreenerror,*mozpointerlockchange,*mozpointerlockerror,*webglcontextcreationerror,*webglcontextlost,*webglcontextrestored", "[HTMLElement]^[Element]|accessKey,autocapitalize,!autofocus,contentEditable,dir,!draggable,enterKeyHint,!hidden,!inert,innerText,inputMode,lang,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contextmenu,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,outerText,!spellcheck,%style,#tabIndex,title,!translate,virtualKeyboardPolicy", "abbr,address,article,aside,b,bdi,bdo,cite,content,code,dd,dfn,dt,em,figcaption,figure,footer,header,hgroup,i,kbd,main,mark,nav,noscript,rb,rp,rt,rtc,ruby,s,samp,search,section,small,strong,sub,sup,u,var,wbr^[HTMLElement]|accessKey,autocapitalize,!autofocus,contentEditable,dir,!draggable,enterKeyHint,!hidden,innerText,inputMode,lang,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contextmenu,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,outerText,!spellcheck,%style,#tabIndex,title,!translate,virtualKeyboardPolicy", "media^[HTMLElement]|!autoplay,!controls,%controlsList,%crossOrigin,#currentTime,!defaultMuted,#defaultPlaybackRate,!disableRemotePlayback,!loop,!muted,*encrypted,*waitingforkey,#playbackRate,preload,!preservesPitch,src,%srcObject,#volume", ":svg:^[HTMLElement]|!autofocus,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contextmenu,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,%style,#tabIndex", ":svg:graphics^:svg:|", ":svg:animation^:svg:|*begin,*end,*repeat", ":svg:geometry^:svg:|", ":svg:componentTransferFunction^:svg:|", ":svg:gradient^:svg:|", ":svg:textContent^:svg:graphics|", ":svg:textPositioning^:svg:textContent|", "a^[HTMLElement]|charset,coords,download,hash,host,hostname,href,hreflang,name,password,pathname,ping,port,protocol,referrerPolicy,rel,%relList,rev,search,shape,target,text,type,username", "area^[HTMLElement]|alt,coords,download,hash,host,hostname,href,!noHref,password,pathname,ping,port,protocol,referrerPolicy,rel,%relList,search,shape,target,username", "audio^media|", "br^[HTMLElement]|clear", "base^[HTMLElement]|href,target", "body^[HTMLElement]|aLink,background,bgColor,link,*afterprint,*beforeprint,*beforeunload,*blur,*error,*focus,*hashchange,*languagechange,*load,*message,*messageerror,*offline,*online,*pagehide,*pageshow,*popstate,*rejectionhandled,*resize,*scroll,*storage,*unhandledrejection,*unload,text,vLink", "button^[HTMLElement]|!disabled,formAction,formEnctype,formMethod,!formNoValidate,formTarget,name,type,value", "canvas^[HTMLElement]|#height,#width", "content^[HTMLElement]|select", "dl^[HTMLElement]|!compact", "data^[HTMLElement]|value", "datalist^[HTMLElement]|", "details^[HTMLElement]|!open", "dialog^[HTMLElement]|!open,returnValue", "dir^[HTMLElement]|!compact", "div^[HTMLElement]|align", "embed^[HTMLElement]|align,height,name,src,type,width", "fieldset^[HTMLElement]|!disabled,name", "font^[HTMLElement]|color,face,size", "form^[HTMLElement]|acceptCharset,action,autocomplete,encoding,enctype,method,name,!noValidate,target", "frame^[HTMLElement]|frameBorder,longDesc,marginHeight,marginWidth,name,!noResize,scrolling,src", "frameset^[HTMLElement]|cols,*afterprint,*beforeprint,*beforeunload,*blur,*error,*focus,*hashchange,*languagechange,*load,*message,*messageerror,*offline,*online,*pagehide,*pageshow,*popstate,*rejectionhandled,*resize,*scroll,*storage,*unhandledrejection,*unload,rows", "hr^[HTMLElement]|align,color,!noShade,size,width", "head^[HTMLElement]|", "h1,h2,h3,h4,h5,h6^[HTMLElement]|align", "html^[HTMLElement]|version", "iframe^[HTMLElement]|align,allow,!allowFullscreen,!allowPaymentRequest,csp,frameBorder,height,loading,longDesc,marginHeight,marginWidth,name,referrerPolicy,%sandbox,scrolling,src,srcdoc,width", "img^[HTMLElement]|align,alt,border,%crossOrigin,decoding,#height,#hspace,!isMap,loading,longDesc,lowsrc,name,referrerPolicy,sizes,src,srcset,useMap,#vspace,#width", "input^[HTMLElement]|accept,align,alt,autocomplete,!checked,!defaultChecked,defaultValue,dirName,!disabled,%files,formAction,formEnctype,formMethod,!formNoValidate,formTarget,#height,!incremental,!indeterminate,max,#maxLength,min,#minLength,!multiple,name,pattern,placeholder,!readOnly,!required,selectionDirection,#selectionEnd,#selectionStart,#size,src,step,type,useMap,value,%valueAsDate,#valueAsNumber,#width", "li^[HTMLElement]|type,#value", "label^[HTMLElement]|htmlFor", "legend^[HTMLElement]|align", "link^[HTMLElement]|as,charset,%crossOrigin,!disabled,href,hreflang,imageSizes,imageSrcset,integrity,media,referrerPolicy,rel,%relList,rev,%sizes,target,type", "map^[HTMLElement]|name", "marquee^[HTMLElement]|behavior,bgColor,direction,height,#hspace,#loop,#scrollAmount,#scrollDelay,!trueSpeed,#vspace,width", "menu^[HTMLElement]|!compact", "meta^[HTMLElement]|content,httpEquiv,media,name,scheme", "meter^[HTMLElement]|#high,#low,#max,#min,#optimum,#value", "ins,del^[HTMLElement]|cite,dateTime", "ol^[HTMLElement]|!compact,!reversed,#start,type", "object^[HTMLElement]|align,archive,border,code,codeBase,codeType,data,!declare,height,#hspace,name,standby,type,useMap,#vspace,width", "optgroup^[HTMLElement]|!disabled,label", "option^[HTMLElement]|!defaultSelected,!disabled,label,!selected,text,value", "output^[HTMLElement]|defaultValue,%htmlFor,name,value", "p^[HTMLElement]|align", "param^[HTMLElement]|name,type,value,valueType", "picture^[HTMLElement]|", "pre^[HTMLElement]|#width", "progress^[HTMLElement]|#max,#value", "q,blockquote,cite^[HTMLElement]|", "script^[HTMLElement]|!async,charset,%crossOrigin,!defer,event,htmlFor,integrity,!noModule,%referrerPolicy,src,text,type", "select^[HTMLElement]|autocomplete,!disabled,#length,!multiple,name,!required,#selectedIndex,#size,value", "selectedcontent^[HTMLElement]|", "slot^[HTMLElement]|name", "source^[HTMLElement]|#height,media,sizes,src,srcset,type,#width", "span^[HTMLElement]|", "style^[HTMLElement]|!disabled,media,type", "search^[HTMLELement]|", "caption^[HTMLElement]|align", "th,td^[HTMLElement]|abbr,align,axis,bgColor,ch,chOff,#colSpan,headers,height,!noWrap,#rowSpan,scope,vAlign,width", "col,colgroup^[HTMLElement]|align,ch,chOff,#span,vAlign,width", "table^[HTMLElement]|align,bgColor,border,%caption,cellPadding,cellSpacing,frame,rules,summary,%tFoot,%tHead,width", "tr^[HTMLElement]|align,bgColor,ch,chOff,vAlign", "tfoot,thead,tbody^[HTMLElement]|align,ch,chOff,vAlign", "template^[HTMLElement]|", "textarea^[HTMLElement]|autocomplete,#cols,defaultValue,dirName,!disabled,#maxLength,#minLength,name,placeholder,!readOnly,!required,#rows,selectionDirection,#selectionEnd,#selectionStart,value,wrap", "time^[HTMLElement]|dateTime", "title^[HTMLElement]|text", "track^[HTMLElement]|!default,kind,label,src,srclang", "ul^[HTMLElement]|!compact,type", "unknown^[HTMLElement]|", "video^media|!disablePictureInPicture,#height,*enterpictureinpicture,*leavepictureinpicture,!playsInline,poster,#width", ":svg:a^:svg:graphics|", ":svg:animate^:svg:animation|", ":svg:animateMotion^:svg:animation|", ":svg:animateTransform^:svg:animation|", ":svg:circle^:svg:geometry|", ":svg:clipPath^:svg:graphics|", ":svg:defs^:svg:graphics|", ":svg:desc^:svg:|", ":svg:discard^:svg:|", ":svg:ellipse^:svg:geometry|", ":svg:feBlend^:svg:|", ":svg:feColorMatrix^:svg:|", ":svg:feComponentTransfer^:svg:|", ":svg:feComposite^:svg:|", ":svg:feConvolveMatrix^:svg:|", ":svg:feDiffuseLighting^:svg:|", ":svg:feDisplacementMap^:svg:|", ":svg:feDistantLight^:svg:|", ":svg:feDropShadow^:svg:|", ":svg:feFlood^:svg:|", ":svg:feFuncA^:svg:componentTransferFunction|", ":svg:feFuncB^:svg:componentTransferFunction|", ":svg:feFuncG^:svg:componentTransferFunction|", ":svg:feFuncR^:svg:componentTransferFunction|", ":svg:feGaussianBlur^:svg:|", ":svg:feImage^:svg:|", ":svg:feMerge^:svg:|", ":svg:feMergeNode^:svg:|", ":svg:feMorphology^:svg:|", ":svg:feOffset^:svg:|", ":svg:fePointLight^:svg:|", ":svg:feSpecularLighting^:svg:|", ":svg:feSpotLight^:svg:|", ":svg:feTile^:svg:|", ":svg:feTurbulence^:svg:|", ":svg:filter^:svg:|", ":svg:foreignObject^:svg:graphics|", ":svg:g^:svg:graphics|", ":svg:image^:svg:graphics|decoding", ":svg:line^:svg:geometry|", ":svg:linearGradient^:svg:gradient|", ":svg:mpath^:svg:|", ":svg:marker^:svg:|", ":svg:mask^:svg:|", ":svg:metadata^:svg:|", ":svg:path^:svg:geometry|", ":svg:pattern^:svg:|", ":svg:polygon^:svg:geometry|", ":svg:polyline^:svg:geometry|", ":svg:radialGradient^:svg:gradient|", ":svg:rect^:svg:geometry|", ":svg:svg^:svg:graphics|#currentScale,#zoomAndPan", ":svg:script^:svg:|type", ":svg:set^:svg:animation|", ":svg:stop^:svg:|", ":svg:style^:svg:|!disabled,media,title,type", ":svg:switch^:svg:graphics|", ":svg:symbol^:svg:|", ":svg:tspan^:svg:textPositioning|", ":svg:text^:svg:textPositioning|", ":svg:textPath^:svg:textContent|", ":svg:title^:svg:|", ":svg:use^:svg:graphics|", ":svg:view^:svg:|#zoomAndPan", "data^[HTMLElement]|value", "keygen^[HTMLElement]|!autofocus,challenge,!disabled,form,keytype,name", "menuitem^[HTMLElement]|type,label,icon,!disabled,!checked,radiogroup,!default", "summary^[HTMLElement]|", "time^[HTMLElement]|dateTime", ":svg:cursor^:svg:|", ":math:^[HTMLElement]|!autofocus,nonce,*abort,*animationend,*animationiteration,*animationstart,*auxclick,*beforeinput,*beforematch,*beforetoggle,*beforexrselect,*blur,*cancel,*canplay,*canplaythrough,*change,*click,*close,*contentvisibilityautostatechange,*contextlost,*contextmenu,*contextrestored,*copy,*cuechange,*cut,*dblclick,*drag,*dragend,*dragenter,*dragleave,*dragover,*dragstart,*drop,*durationchange,*emptied,*ended,*error,*focus,*formdata,*gotpointercapture,*input,*invalid,*keydown,*keypress,*keyup,*load,*loadeddata,*loadedmetadata,*loadstart,*lostpointercapture,*mousedown,*mouseenter,*mouseleave,*mousemove,*mouseout,*mouseover,*mouseup,*mousewheel,*paste,*pause,*play,*playing,*pointercancel,*pointerdown,*pointerenter,*pointerleave,*pointermove,*pointerout,*pointerover,*pointerrawupdate,*pointerup,*progress,*ratechange,*reset,*resize,*scroll,*scrollend,*securitypolicyviolation,*seeked,*seeking,*select,*selectionchange,*selectstart,*slotchange,*stalled,*submit,*suspend,*timeupdate,*toggle,*transitioncancel,*transitionend,*transitionrun,*transitionstart,*volumechange,*waiting,*webkitanimationend,*webkitanimationiteration,*webkitanimationstart,*webkittransitionend,*wheel,%style,#tabIndex", ":math:math^:math:|", ":math:maction^:math:|", ":math:menclose^:math:|", ":math:merror^:math:|", ":math:mfenced^:math:|", ":math:mfrac^:math:|", ":math:mi^:math:|", ":math:mmultiscripts^:math:|", ":math:mn^:math:|", ":math:mo^:math:|", ":math:mover^:math:|", ":math:mpadded^:math:|", ":math:mphantom^:math:|", ":math:mroot^:math:|", ":math:mrow^:math:|", ":math:ms^:math:|", ":math:mspace^:math:|", ":math:msqrt^:math:|", ":math:mstyle^:math:|", ":math:msub^:math:|", ":math:msubsup^:math:|", ":math:msup^:math:|", ":math:mtable^:math:|", ":math:mtd^:math:|", ":math:mtext^:math:|", ":math:mtr^:math:|", ":math:munder^:math:|", ":math:munderover^:math:|", ":math:semantics^:math:|"], an = new Map(Object.entries({ class: "className", for: "htmlFor", formaction: "formAction", innerHtml: "innerHTML", readonly: "readOnly", tabindex: "tabIndex", "aria-activedescendant": "ariaActiveDescendantElement", "aria-atomic": "ariaAtomic", "aria-autocomplete": "ariaAutoComplete", "aria-busy": "ariaBusy", "aria-checked": "ariaChecked", "aria-colcount": "ariaColCount", "aria-colindex": "ariaColIndex", "aria-colindextext": "ariaColIndexText", "aria-colspan": "ariaColSpan", "aria-controls": "ariaControlsElements", "aria-current": "ariaCurrent", "aria-describedby": "ariaDescribedByElements", "aria-description": "ariaDescription", "aria-details": "ariaDetailsElements", "aria-disabled": "ariaDisabled", "aria-errormessage": "ariaErrorMessageElements", "aria-expanded": "ariaExpanded", "aria-flowto": "ariaFlowToElements", "aria-haspopup": "ariaHasPopup", "aria-hidden": "ariaHidden", "aria-invalid": "ariaInvalid", "aria-keyshortcuts": "ariaKeyShortcuts", "aria-label": "ariaLabel", "aria-labelledby": "ariaLabelledByElements", "aria-level": "ariaLevel", "aria-live": "ariaLive", "aria-modal": "ariaModal", "aria-multiline": "ariaMultiLine", "aria-multiselectable": "ariaMultiSelectable", "aria-orientation": "ariaOrientation", "aria-owns": "ariaOwnsElements", "aria-placeholder": "ariaPlaceholder", "aria-posinset": "ariaPosInSet", "aria-pressed": "ariaPressed", "aria-readonly": "ariaReadOnly", "aria-required": "ariaRequired", "aria-roledescription": "ariaRoleDescription", "aria-rowcount": "ariaRowCount", "aria-rowindex": "ariaRowIndex", "aria-rowindextext": "ariaRowIndexText", "aria-rowspan": "ariaRowSpan", "aria-selected": "ariaSelected", "aria-setsize": "ariaSetSize", "aria-sort": "ariaSort", "aria-valuemax": "ariaValueMax", "aria-valuemin": "ariaValueMin", "aria-valuenow": "ariaValueNow", "aria-valuetext": "ariaValueText" })), _s = Array.from(an).reduce((e, [t, r]) => (e.set(t, r), e), /* @__PURE__ */ new Map()), Cs = class extends ps {
1034
+ constructor() {
1035
+ super(), this._schema = /* @__PURE__ */ new Map(), this._eventSchema = /* @__PURE__ */ new Map(), fs.forEach((e) => {
1036
+ let t = /* @__PURE__ */ new Map(), r = /* @__PURE__ */ new Set(), [n, a] = e.split("|"), i = a.split(","), [s, o] = n.split("^");
1037
+ s.split(",").forEach((c) => {
1038
+ this._schema.set(c.toLowerCase(), t), this._eventSchema.set(c.toLowerCase(), r);
1039
+ });
1040
+ let l = o && this._schema.get(o.toLowerCase());
1041
+ if (l) {
1042
+ for (let [c, p] of l) t.set(c, p);
1043
+ for (let c of this._eventSchema.get(o.toLowerCase())) r.add(c);
1044
+ }
1045
+ i.forEach((c) => {
1046
+ if (c.length > 0) switch (c[0]) {
1047
+ case "*":
1048
+ r.add(c.substring(1));
1049
+ break;
1050
+ case "!":
1051
+ t.set(c.substring(1), hs);
1052
+ break;
1053
+ case "#":
1054
+ t.set(c.substring(1), ds);
1055
+ break;
1056
+ case "%":
1057
+ t.set(c.substring(1), gs);
1058
+ break;
1059
+ default:
1060
+ t.set(c, ms);
1061
+ }
1062
+ });
1063
+ });
1064
+ }
1065
+ hasProperty(e, t, r) {
1066
+ if (r.some((n) => n.name === Jt.name)) return !0;
1067
+ if (e.indexOf("-") > -1) {
1068
+ if (Gt(e) || Kt(e)) return !1;
1069
+ if (r.some((n) => n.name === Yt.name)) return !0;
1070
+ }
1071
+ return (this._schema.get(e.toLowerCase()) || this._schema.get("unknown")).has(t);
1072
+ }
1073
+ hasElement(e, t) {
1074
+ return t.some((r) => r.name === Jt.name) || e.indexOf("-") > -1 && (Gt(e) || Kt(e) || t.some((r) => r.name === Yt.name)) ? !0 : this._schema.has(e.toLowerCase());
1075
+ }
1076
+ securityContext(e, t, r) {
1077
+ r && (t = this.getMappedPropName(t)), e = e.toLowerCase(), t = t.toLowerCase();
1078
+ let n = Qt()[e + "|" + t];
1079
+ return n || (n = Qt()["*|" + t], n || he.NONE);
1080
+ }
1081
+ getMappedPropName(e) {
1082
+ return an.get(e) ?? e;
1083
+ }
1084
+ getDefaultComponentElementName() {
1085
+ return "ng-component";
1086
+ }
1087
+ validateProperty(e) {
1088
+ return e.toLowerCase().startsWith("on") ? { error: !0, msg: `Binding to event property '${e}' is disallowed for security reasons, please use (${e.slice(2)})=...
1089
+ If '${e}' is a directive input, make sure the directive is imported by the current module.` } : { error: !1 };
1090
+ }
1091
+ validateAttribute(e) {
1092
+ 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 };
1093
+ }
1094
+ allKnownElementNames() {
1095
+ return Array.from(this._schema.keys());
1096
+ }
1097
+ allKnownAttributesOfElement(e) {
1098
+ let t = this._schema.get(e.toLowerCase()) || this._schema.get("unknown");
1099
+ return Array.from(t.keys()).map((r) => _s.get(r) ?? r);
1100
+ }
1101
+ allKnownEventsOfElement(e) {
1102
+ return Array.from(this._eventSchema.get(e.toLowerCase()) ?? []);
1103
+ }
1104
+ normalizeAnimationStyleProperty(e) {
1105
+ return cs(e);
1106
+ }
1107
+ normalizeAnimationStyleValue(e, t, r) {
1108
+ let n = "", a = r.toString().trim(), i = null;
1109
+ if (Es(e) && r !== 0 && r !== "0") if (typeof r == "number") n = "px";
1110
+ else {
1111
+ let s = r.match(/^[+-]?[\d\.]+([a-z]*)$/);
1112
+ s && s[1].length == 0 && (i = `Please provide a CSS unit value for ${t}:${r}`);
1113
+ }
1114
+ return { error: i, value: a + n };
1115
+ }
1116
+ };
1117
+ function Es(e) {
1118
+ switch (e) {
1119
+ case "width":
1120
+ case "height":
1121
+ case "minWidth":
1122
+ case "minHeight":
1123
+ case "maxWidth":
1124
+ case "maxHeight":
1125
+ case "left":
1126
+ case "top":
1127
+ case "bottom":
1128
+ case "right":
1129
+ case "fontSize":
1130
+ case "outlineWidth":
1131
+ case "outlineOffset":
1132
+ case "paddingTop":
1133
+ case "paddingLeft":
1134
+ case "paddingBottom":
1135
+ case "paddingRight":
1136
+ case "marginTop":
1137
+ case "marginLeft":
1138
+ case "marginBottom":
1139
+ case "marginRight":
1140
+ case "borderRadius":
1141
+ case "borderWidth":
1142
+ case "borderTopWidth":
1143
+ case "borderLeftWidth":
1144
+ case "borderRightWidth":
1145
+ case "borderBottomWidth":
1146
+ case "textIndent":
1147
+ return !0;
1148
+ default:
1149
+ return !1;
1150
+ }
1151
+ }
1152
+ var m = class {
1153
+ constructor({ closedByChildren: e, implicitNamespacePrefix: t, contentType: r = R.PARSABLE_DATA, closedByParent: n = !1, isVoid: a = !1, ignoreFirstLf: i = !1, preventNamespaceInheritance: s = !1, canSelfClose: o = !1 } = {}) {
1154
+ this.closedByChildren = {}, this.closedByParent = !1, e && e.length > 0 && e.forEach((l) => this.closedByChildren[l] = !0), this.isVoid = a, this.closedByParent = n || a, this.implicitNamespacePrefix = t || null, this.contentType = r, this.ignoreFirstLf = i, this.preventNamespaceInheritance = s, this.canSelfClose = o ?? a;
1155
+ }
1156
+ isClosedByChild(e) {
1157
+ return this.isVoid || e.toLowerCase() in this.closedByChildren;
1158
+ }
1159
+ getContentType(e) {
1160
+ return typeof this.contentType == "object" ? (e === void 0 ? void 0 : this.contentType[e]) ?? this.contentType.default : this.contentType;
1161
+ }
1162
+ }, Zt, ce;
1163
+ function lt(e) {
1164
+ return ce || (Zt = new m({ canSelfClose: !0 }), ce = Object.assign(/* @__PURE__ */ Object.create(null), { base: new m({ isVoid: !0 }), meta: new m({ isVoid: !0 }), area: new m({ isVoid: !0 }), embed: new m({ isVoid: !0 }), link: new m({ isVoid: !0 }), img: new m({ isVoid: !0 }), input: new m({ isVoid: !0 }), param: new m({ isVoid: !0 }), hr: new m({ isVoid: !0 }), br: new m({ isVoid: !0 }), source: new m({ isVoid: !0 }), track: new m({ isVoid: !0 }), wbr: new m({ isVoid: !0 }), p: new m({ closedByChildren: ["address", "article", "aside", "blockquote", "div", "dl", "fieldset", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hgroup", "hr", "main", "nav", "ol", "p", "pre", "section", "table", "ul"], closedByParent: !0 }), thead: new m({ closedByChildren: ["tbody", "tfoot"] }), tbody: new m({ closedByChildren: ["tbody", "tfoot"], closedByParent: !0 }), tfoot: new m({ closedByChildren: ["tbody"], closedByParent: !0 }), tr: new m({ closedByChildren: ["tr"], closedByParent: !0 }), td: new m({ closedByChildren: ["td", "th"], closedByParent: !0 }), th: new m({ closedByChildren: ["td", "th"], closedByParent: !0 }), col: new m({ isVoid: !0 }), svg: new m({ implicitNamespacePrefix: "svg" }), foreignObject: new m({ implicitNamespacePrefix: "svg", preventNamespaceInheritance: !0 }), math: new m({ implicitNamespacePrefix: "math" }), li: new m({ closedByChildren: ["li"], closedByParent: !0 }), dt: new m({ closedByChildren: ["dt", "dd"] }), dd: new m({ closedByChildren: ["dt", "dd"], closedByParent: !0 }), rb: new m({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: !0 }), rt: new m({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: !0 }), rtc: new m({ closedByChildren: ["rb", "rtc", "rp"], closedByParent: !0 }), rp: new m({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: !0 }), optgroup: new m({ closedByChildren: ["optgroup"], closedByParent: !0 }), option: new m({ closedByChildren: ["option", "optgroup"], closedByParent: !0 }), pre: new m({ ignoreFirstLf: !0 }), listing: new m({ ignoreFirstLf: !0 }), style: new m({ contentType: R.RAW_TEXT }), script: new m({ contentType: R.RAW_TEXT }), title: new m({ contentType: { default: R.ESCAPABLE_RAW_TEXT, svg: R.PARSABLE_DATA } }), textarea: new m({ contentType: R.ESCAPABLE_RAW_TEXT, ignoreFirstLf: !0 }) }), new Cs().allKnownElementNames().forEach((t) => {
1165
+ !ce[t] && Re(t) === null && (ce[t] = new m({ canSelfClose: !1 }));
1166
+ })), ce[e] ?? Zt;
1167
+ }
1168
+ function qe(e) {
1169
+ return e >= 9 && e <= 32 || e == 160;
1170
+ }
1171
+ function Ke(e) {
1172
+ return 48 <= e && e <= 57;
1173
+ }
1174
+ function ve(e) {
1175
+ return e >= 97 && e <= 122 || e >= 65 && e <= 90;
1176
+ }
1177
+ function vs(e) {
1178
+ return e >= 97 && e <= 102 || e >= 65 && e <= 70 || Ke(e);
1179
+ }
1180
+ function He(e) {
1181
+ return e === 10 || e === 13;
1182
+ }
1183
+ function er(e) {
1184
+ return 48 <= e && e <= 55;
1185
+ }
1186
+ function at(e) {
1187
+ return e === 39 || e === 34 || e === 96;
1188
+ }
1189
+ var ct = class sn {
1190
+ constructor(t, r, n, a) {
1191
+ this.file = t, this.offset = r, this.line = n, this.col = a;
1192
+ }
1193
+ toString() {
1194
+ return this.offset != null ? `${this.file.url}@${this.line}:${this.col}` : this.file.url;
1195
+ }
1196
+ moveBy(t) {
1197
+ let r = this.file.content, n = r.length, a = this.offset, i = this.line, s = this.col;
1198
+ for (; a > 0 && t < 0; ) if (a--, t++, r.charCodeAt(a) == 10) {
1199
+ i--;
1200
+ let o = r.substring(0, a - 1).lastIndexOf(`
1201
+ `);
1202
+ s = o > 0 ? a - o : a;
1203
+ } else s--;
1204
+ for (; a < n && t > 0; ) {
1205
+ let o = r.charCodeAt(a);
1206
+ a++, t--, o == 10 ? (i++, s = 0) : s++;
1207
+ }
1208
+ return new sn(this.file, a, i, s);
1209
+ }
1210
+ getContext(t, r) {
1211
+ let n = this.file.content, a = this.offset;
1212
+ if (a != null) {
1213
+ a > n.length - 1 && (a = n.length - 1);
1214
+ let i = a, s = 0, o = 0;
1215
+ for (; s < t && a > 0 && (a--, s++, !(n[a] == `
1216
+ ` && ++o == r)); ) ;
1217
+ for (s = 0, o = 0; s < t && i < n.length - 1 && (i++, s++, !(n[i] == `
1218
+ ` && ++o == r)); ) ;
1219
+ return { before: n.substring(a, this.offset), after: n.substring(this.offset, i + 1) };
1220
+ }
1221
+ return null;
1222
+ }
1223
+ }, on = class {
1224
+ constructor(e, t) {
1225
+ this.content = e, this.url = t;
1226
+ }
1227
+ }, d = class {
1228
+ constructor(e, t, r = e, n = null) {
1229
+ this.start = e, this.end = t, this.fullStart = r, this.details = n;
1230
+ }
1231
+ toString() {
1232
+ return this.start.file.content.substring(this.start.offset, this.end.offset);
1233
+ }
1234
+ }, tr = (function(e) {
1235
+ return e[e.WARNING = 0] = "WARNING", e[e.ERROR = 1] = "ERROR", e;
1236
+ })({}), J = class extends Error {
1237
+ constructor(e, t, r = tr.ERROR, n) {
1238
+ super(t), this.span = e, this.msg = t, this.level = r, this.relatedError = n, Object.setPrototypeOf(this, new.target.prototype);
1239
+ }
1240
+ contextualMessage() {
1241
+ let e = this.span.start.getContext(100, 3);
1242
+ return e ? `${this.msg} ("${e.before}[${tr[this.level]} ->]${e.after}")` : this.msg;
1243
+ }
1244
+ toString() {
1245
+ let e = this.span.details ? `, ${this.span.details}` : "";
1246
+ return `${this.contextualMessage()}: ${this.span.start}${e}`;
1247
+ }
1248
+ }, G = class {
1249
+ constructor(e, t) {
1250
+ this.sourceSpan = e, this.i18n = t;
1251
+ }
1252
+ }, Ss = class extends G {
1253
+ constructor(e, t, r, n) {
1254
+ super(t, n), this.value = e, this.tokens = r, this.kind = "text";
1255
+ }
1256
+ visit(e, t) {
1257
+ return e.visitText(this, t);
1258
+ }
1259
+ }, As = class extends G {
1260
+ constructor(e, t, r, n) {
1261
+ super(t, n), this.value = e, this.tokens = r, this.kind = "cdata";
1262
+ }
1263
+ visit(e, t) {
1264
+ return e.visitCdata(this, t);
1265
+ }
1266
+ }, Ts = class extends G {
1267
+ constructor(e, t, r, n, a, i) {
1268
+ super(n, i), this.switchValue = e, this.type = t, this.cases = r, this.switchValueSourceSpan = a, this.kind = "expansion";
1269
+ }
1270
+ visit(e, t) {
1271
+ return e.visitExpansion(this, t);
1272
+ }
1273
+ }, ks = class {
1274
+ constructor(e, t, r, n, a) {
1275
+ this.value = e, this.expression = t, this.sourceSpan = r, this.valueSourceSpan = n, this.expSourceSpan = a, this.kind = "expansionCase";
1276
+ }
1277
+ visit(e, t) {
1278
+ return e.visitExpansionCase(this, t);
1279
+ }
1280
+ }, bs = class extends G {
1281
+ constructor(e, t, r, n, a, i, s) {
1282
+ super(r, s), this.name = e, this.value = t, this.keySpan = n, this.valueSpan = a, this.valueTokens = i, this.kind = "attribute";
1283
+ }
1284
+ visit(e, t) {
1285
+ return e.visitAttribute(this, t);
1286
+ }
1287
+ get nameSpan() {
1288
+ return this.keySpan;
1289
+ }
1290
+ }, U = class extends G {
1291
+ constructor(e, t, r, n, a, i, s, o = null, l = null, c, p) {
1292
+ super(i, p), this.name = e, this.attrs = t, this.directives = r, this.children = n, this.isSelfClosing = a, this.startSourceSpan = s, this.endSourceSpan = o, this.nameSpan = l, this.isVoid = c, this.kind = "element";
1293
+ }
1294
+ visit(e, t) {
1295
+ return e.visitElement(this, t);
1296
+ }
1297
+ }, ws = class {
1298
+ constructor(e, t) {
1299
+ this.value = e, this.sourceSpan = t, this.kind = "comment";
1300
+ }
1301
+ visit(e, t) {
1302
+ return e.visitComment(this, t);
1303
+ }
1304
+ }, ys = class {
1305
+ constructor(e, t) {
1306
+ this.value = e, this.sourceSpan = t, this.kind = "docType";
1307
+ }
1308
+ visit(e, t) {
1309
+ return e.visitDocType(this, t);
1310
+ }
1311
+ }, Y = class extends G {
1312
+ constructor(e, t, r, n, a, i, s = null, o) {
1313
+ super(n, o), this.name = e, this.parameters = t, this.children = r, this.nameSpan = a, this.startSourceSpan = i, this.endSourceSpan = s, this.kind = "block";
1314
+ }
1315
+ visit(e, t) {
1316
+ return e.visitBlock(this, t);
1317
+ }
1318
+ }, H = class extends G {
1319
+ constructor(e, t, r, n, a, i, s, o, l, c = null, p) {
1320
+ super(o, p), this.componentName = e, this.tagName = t, this.fullName = r, this.attrs = n, this.directives = a, this.children = i, this.isSelfClosing = s, this.startSourceSpan = l, this.endSourceSpan = c, this.kind = "component";
1321
+ }
1322
+ visit(e, t) {
1323
+ return e.visitComponent(this, t);
1324
+ }
1325
+ }, Ds = class {
1326
+ constructor(e, t, r, n, a = null) {
1327
+ this.name = e, this.attrs = t, this.sourceSpan = r, this.startSourceSpan = n, this.endSourceSpan = a, this.kind = "directive";
1328
+ }
1329
+ visit(e, t) {
1330
+ return e.visitDirective(this, t);
1331
+ }
1332
+ }, rr = class {
1333
+ constructor(e, t) {
1334
+ this.expression = e, this.sourceSpan = t, this.kind = "blockParameter", this.startSourceSpan = null, this.endSourceSpan = null;
1335
+ }
1336
+ visit(e, t) {
1337
+ return e.visitBlockParameter(this, t);
1338
+ }
1339
+ }, nr = class {
1340
+ constructor(e, t, r, n, a) {
1341
+ this.name = e, this.value = t, this.sourceSpan = r, this.nameSpan = n, this.valueSpan = a, this.kind = "letDeclaration", this.startSourceSpan = null, this.endSourceSpan = null;
1342
+ }
1343
+ visit(e, t) {
1344
+ return e.visitLetDeclaration(this, t);
1345
+ }
1346
+ };
1347
+ function un(e, t, r = null) {
1348
+ let n = [], a = e.visit ? (i) => e.visit(i, r) || i.visit(e, r) : (i) => i.visit(e, r);
1349
+ return t.forEach((i) => {
1350
+ let s = a(i);
1351
+ s && n.push(s);
1352
+ }), n;
1353
+ }
1354
+ var xs = class {
1355
+ constructor() {
1356
+ }
1357
+ visitElement(e, t) {
1358
+ this.visitChildren(t, (r) => {
1359
+ r(e.attrs), r(e.directives), r(e.children);
1360
+ });
1361
+ }
1362
+ visitAttribute(e, t) {
1363
+ }
1364
+ visitText(e, t) {
1365
+ }
1366
+ visitCdata(e, t) {
1367
+ }
1368
+ visitComment(e, t) {
1369
+ }
1370
+ visitDocType(e, t) {
1371
+ }
1372
+ visitExpansion(e, t) {
1373
+ return this.visitChildren(t, (r) => {
1374
+ r(e.cases);
1375
+ });
1376
+ }
1377
+ visitExpansionCase(e, t) {
1378
+ }
1379
+ visitBlock(e, t) {
1380
+ this.visitChildren(t, (r) => {
1381
+ r(e.parameters), r(e.children);
1382
+ });
1383
+ }
1384
+ visitBlockParameter(e, t) {
1385
+ }
1386
+ visitLetDeclaration(e, t) {
1387
+ }
1388
+ visitComponent(e, t) {
1389
+ this.visitChildren(t, (r) => {
1390
+ r(e.attrs), r(e.children);
1391
+ });
1392
+ }
1393
+ visitDirective(e, t) {
1394
+ this.visitChildren(t, (r) => {
1395
+ r(e.attrs);
1396
+ });
1397
+ }
1398
+ visitChildren(e, t) {
1399
+ let r = [], n = this;
1400
+ function a(i) {
1401
+ i && r.push(un(n, i, e));
1402
+ }
1403
+ return t(a), Array.prototype.concat.apply([], r);
1404
+ }
1405
+ }, Se = { 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: `
1406
+ `, 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: "‌" }, Ns = "";
1407
+ Se.ngsp = Ns;
1408
+ var u = (function(e) {
1409
+ return e[e.TAG_OPEN_START = 0] = "TAG_OPEN_START", e[e.TAG_OPEN_END = 1] = "TAG_OPEN_END", e[e.TAG_OPEN_END_VOID = 2] = "TAG_OPEN_END_VOID", e[e.TAG_CLOSE = 3] = "TAG_CLOSE", e[e.INCOMPLETE_TAG_OPEN = 4] = "INCOMPLETE_TAG_OPEN", e[e.TEXT = 5] = "TEXT", e[e.ESCAPABLE_RAW_TEXT = 6] = "ESCAPABLE_RAW_TEXT", e[e.RAW_TEXT = 7] = "RAW_TEXT", e[e.INTERPOLATION = 8] = "INTERPOLATION", e[e.ENCODED_ENTITY = 9] = "ENCODED_ENTITY", e[e.COMMENT_START = 10] = "COMMENT_START", e[e.COMMENT_END = 11] = "COMMENT_END", e[e.CDATA_START = 12] = "CDATA_START", e[e.CDATA_END = 13] = "CDATA_END", e[e.ATTR_NAME = 14] = "ATTR_NAME", e[e.ATTR_QUOTE = 15] = "ATTR_QUOTE", e[e.ATTR_VALUE_TEXT = 16] = "ATTR_VALUE_TEXT", e[e.ATTR_VALUE_INTERPOLATION = 17] = "ATTR_VALUE_INTERPOLATION", e[e.DOC_TYPE_START = 18] = "DOC_TYPE_START", e[e.DOC_TYPE_END = 19] = "DOC_TYPE_END", e[e.EXPANSION_FORM_START = 20] = "EXPANSION_FORM_START", e[e.EXPANSION_CASE_VALUE = 21] = "EXPANSION_CASE_VALUE", e[e.EXPANSION_CASE_EXP_START = 22] = "EXPANSION_CASE_EXP_START", e[e.EXPANSION_CASE_EXP_END = 23] = "EXPANSION_CASE_EXP_END", e[e.EXPANSION_FORM_END = 24] = "EXPANSION_FORM_END", e[e.BLOCK_OPEN_START = 25] = "BLOCK_OPEN_START", e[e.BLOCK_OPEN_END = 26] = "BLOCK_OPEN_END", e[e.BLOCK_CLOSE = 27] = "BLOCK_CLOSE", e[e.BLOCK_PARAMETER = 28] = "BLOCK_PARAMETER", e[e.INCOMPLETE_BLOCK_OPEN = 29] = "INCOMPLETE_BLOCK_OPEN", e[e.LET_START = 30] = "LET_START", e[e.LET_VALUE = 31] = "LET_VALUE", e[e.LET_END = 32] = "LET_END", e[e.INCOMPLETE_LET = 33] = "INCOMPLETE_LET", e[e.COMPONENT_OPEN_START = 34] = "COMPONENT_OPEN_START", e[e.COMPONENT_OPEN_END = 35] = "COMPONENT_OPEN_END", e[e.COMPONENT_OPEN_END_VOID = 36] = "COMPONENT_OPEN_END_VOID", e[e.COMPONENT_CLOSE = 37] = "COMPONENT_CLOSE", e[e.INCOMPLETE_COMPONENT_OPEN = 38] = "INCOMPLETE_COMPONENT_OPEN", e[e.DIRECTIVE_NAME = 39] = "DIRECTIVE_NAME", e[e.DIRECTIVE_OPEN = 40] = "DIRECTIVE_OPEN", e[e.DIRECTIVE_CLOSE = 41] = "DIRECTIVE_CLOSE", e[e.EOF = 42] = "EOF", e;
1410
+ })({}), Bs = class {
1411
+ constructor(e, t, r) {
1412
+ this.tokens = e, this.errors = t, this.nonNormalizedIcuExpressions = r;
1413
+ }
1414
+ };
1415
+ function Ls(e, t, r, n = {}) {
1416
+ let a = new Is(new on(e, t), r, n);
1417
+ return a.tokenize(), new Bs(Ws(a.tokens), a.errors, a.nonNormalizedIcuExpressions);
1418
+ }
1419
+ var Os = /\r\n?/g;
1420
+ function W(e) {
1421
+ return `Unexpected character "${e === 0 ? "EOF" : String.fromCharCode(e)}"`;
1422
+ }
1423
+ function ar(e) {
1424
+ return `Unknown entity "${e}" - use the "&#<decimal>;" or "&#x<hex>;" syntax`;
1425
+ }
1426
+ function Fs(e, t) {
1427
+ return `Unable to parse entity "${t}" - ${e} character reference entities must end with ";"`;
1428
+ }
1429
+ var pt = (function(e) {
1430
+ return e.HEX = "hexadecimal", e.DEC = "decimal", e;
1431
+ })(pt || {}), Ps = ["@if", "@else", "@for", "@switch", "@case", "@default", "@empty", "@defer", "@placeholder", "@loading", "@error"], pe = { start: "{{", end: "}}" }, Is = class {
1432
+ constructor(e, t, r) {
1433
+ this._getTagContentType = t, this._currentTokenStart = null, this._currentTokenType = null, this._expansionCaseStack = [], this._openDirectiveCount = 0, this._inInterpolation = !1, this._fullNameStack = [], this.tokens = [], this.errors = [], this.nonNormalizedIcuExpressions = [], this._tokenizeIcu = r.tokenizeExpansionForms || !1, this._leadingTriviaCodePoints = r.leadingTriviaChars && r.leadingTriviaChars.map((a) => a.codePointAt(0) || 0), this._canSelfClose = r.canSelfClose || !1, this._allowHtmComponentClosingTags = r.allowHtmComponentClosingTags || !1;
1434
+ let n = r.range || { endPos: e.content.length, startPos: 0, startLine: 0, startCol: 0 };
1435
+ this._cursor = r.escapedString ? new zs(e, n) : new ln(e, n), this._preserveLineEndings = r.preserveLineEndings || !1, this._i18nNormalizeLineEndingsInICUs = r.i18nNormalizeLineEndingsInICUs || !1, this._tokenizeBlocks = r.tokenizeBlocks ?? !0, this._tokenizeLet = r.tokenizeLet ?? !0, this._selectorlessEnabled = r.selectorlessEnabled ?? !1;
1436
+ try {
1437
+ this._cursor.init();
1438
+ } catch (a) {
1439
+ this.handleError(a);
1440
+ }
1441
+ }
1442
+ _processCarriageReturns(e) {
1443
+ return this._preserveLineEndings ? e : e.replace(Os, `
1444
+ `);
1445
+ }
1446
+ tokenize() {
1447
+ for (; this._cursor.peek() !== 0; ) {
1448
+ let e = this._cursor.clone();
1449
+ try {
1450
+ 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);
1451
+ else if (this._attemptCharCode(47)) this._consumeTagClose(e);
1452
+ else {
1453
+ let t = this._cursor.clone();
1454
+ this._attemptCharCode(63) ? (this._cursor = t, this._consumeBogusComment(e)) : this._consumeTagOpen(e);
1455
+ }
1456
+ else this._tokenizeLet && this._cursor.peek() === 64 && !this._inInterpolation && this._isLetStart() ? this._consumeLetDeclaration(e) : this._tokenizeBlocks && this._isBlockStart() ? this._consumeBlockStart(e) : this._tokenizeBlocks && !this._inInterpolation && !this._isInExpansionCase() && !this._isInExpansionForm() && this._attemptCharCode(125) ? this._consumeBlockEnd(e) : this._tokenizeIcu && this._tokenizeExpansionForm() || this._consumeWithInterpolation(u.TEXT, u.INTERPOLATION, () => this._isTextEnd(), () => this._isTagStart());
1457
+ } catch (t) {
1458
+ this.handleError(t);
1459
+ }
1460
+ }
1461
+ this._beginToken(u.EOF), this._endToken([]);
1462
+ }
1463
+ _getBlockName() {
1464
+ let e = !1, t = this._cursor.clone();
1465
+ return this._attemptCharCodeUntilFn((r) => qe(r) ? !e : Us(r) ? (e = !0, !1) : !0), this._cursor.getChars(t).trim();
1466
+ }
1467
+ _consumeBlockStart(e) {
1468
+ this._requireCharCode(64), this._beginToken(u.BLOCK_OPEN_START, e);
1469
+ let t = this._endToken([this._getBlockName()]);
1470
+ if (this._cursor.peek() === 40) if (this._cursor.advance(), this._consumeBlockParameters(), this._attemptCharCodeUntilFn(E), this._attemptCharCode(41)) this._attemptCharCodeUntilFn(E);
1471
+ else {
1472
+ t.type = u.INCOMPLETE_BLOCK_OPEN;
1473
+ return;
1474
+ }
1475
+ this._attemptCharCode(123) ? (this._beginToken(u.BLOCK_OPEN_END), this._endToken([])) : t.type = u.INCOMPLETE_BLOCK_OPEN;
1476
+ }
1477
+ _consumeBlockEnd(e) {
1478
+ this._beginToken(u.BLOCK_CLOSE, e), this._endToken([]);
1479
+ }
1480
+ _consumeBlockParameters() {
1481
+ for (this._attemptCharCodeUntilFn(sr); this._cursor.peek() !== 41 && this._cursor.peek() !== 0; ) {
1482
+ this._beginToken(u.BLOCK_PARAMETER);
1483
+ let e = this._cursor.clone(), t = null, r = 0;
1484
+ for (; this._cursor.peek() !== 59 && this._cursor.peek() !== 0 || t !== null; ) {
1485
+ let n = this._cursor.peek();
1486
+ if (n === 92) this._cursor.advance();
1487
+ else if (n === t) t = null;
1488
+ else if (t === null && at(n)) t = n;
1489
+ else if (n === 40 && t === null) r++;
1490
+ else if (n === 41 && t === null) {
1491
+ if (r === 0) break;
1492
+ r > 0 && r--;
1493
+ }
1494
+ this._cursor.advance();
1495
+ }
1496
+ this._endToken([this._cursor.getChars(e)]), this._attemptCharCodeUntilFn(sr);
1497
+ }
1498
+ }
1499
+ _consumeLetDeclaration(e) {
1500
+ if (this._requireStr("@let"), this._beginToken(u.LET_START, e), qe(this._cursor.peek())) this._attemptCharCodeUntilFn(E);
1501
+ else {
1502
+ let r = this._endToken([this._cursor.getChars(e)]);
1503
+ r.type = u.INCOMPLETE_LET;
1504
+ return;
1505
+ }
1506
+ let t = this._endToken([this._getLetDeclarationName()]);
1507
+ if (this._attemptCharCodeUntilFn(E), !this._attemptCharCode(61)) {
1508
+ t.type = u.INCOMPLETE_LET;
1509
+ return;
1510
+ }
1511
+ this._attemptCharCodeUntilFn((r) => E(r) && !He(r)), this._consumeLetDeclarationValue(), this._cursor.peek() === 59 ? (this._beginToken(u.LET_END), this._endToken([]), this._cursor.advance()) : (t.type = u.INCOMPLETE_LET, t.sourceSpan = this._cursor.getSpan(e));
1512
+ }
1513
+ _getLetDeclarationName() {
1514
+ let e = this._cursor.clone(), t = !1;
1515
+ return this._attemptCharCodeUntilFn((r) => ve(r) || r === 36 || r === 95 || t && Ke(r) ? (t = !0, !1) : !0), this._cursor.getChars(e).trim();
1516
+ }
1517
+ _consumeLetDeclarationValue() {
1518
+ let e = this._cursor.clone();
1519
+ for (this._beginToken(u.LET_VALUE, e); this._cursor.peek() !== 0; ) {
1520
+ let t = this._cursor.peek();
1521
+ if (t === 59) break;
1522
+ at(t) && (this._cursor.advance(), this._attemptCharCodeUntilFn((r) => r === 92 ? (this._cursor.advance(), !1) : r === t)), this._cursor.advance();
1523
+ }
1524
+ this._endToken([this._cursor.getChars(e)]);
1525
+ }
1526
+ _tokenizeExpansionForm() {
1527
+ if (this.isExpansionFormStart()) return this._consumeExpansionFormStart(), !0;
1528
+ if (Hs(this._cursor.peek()) && this._isInExpansionForm()) return this._consumeExpansionCaseStart(), !0;
1529
+ if (this._cursor.peek() === 125) {
1530
+ if (this._isInExpansionCase()) return this._consumeExpansionCaseEnd(), !0;
1531
+ if (this._isInExpansionForm()) return this._consumeExpansionFormEnd(), !0;
1532
+ }
1533
+ return !1;
1534
+ }
1535
+ _beginToken(e, t = this._cursor.clone()) {
1536
+ this._currentTokenStart = t, this._currentTokenType = e;
1537
+ }
1538
+ _endToken(e, t) {
1539
+ if (this._currentTokenStart === null) throw new J(this._cursor.getSpan(t), "Programming error - attempted to end a token when there was no start to the token");
1540
+ if (this._currentTokenType === null) throw new J(this._cursor.getSpan(this._currentTokenStart), "Programming error - attempted to end a token which has no token type");
1541
+ let r = { type: this._currentTokenType, parts: e, sourceSpan: (t ?? this._cursor).getSpan(this._currentTokenStart, this._leadingTriviaCodePoints) };
1542
+ return this.tokens.push(r), this._currentTokenStart = null, this._currentTokenType = null, r;
1543
+ }
1544
+ _createError(e, t) {
1545
+ this._isInExpansionForm() && (e += ` (Do you have an unescaped "{" in your template? Use "{{ '{' }}") to escape it.)`);
1546
+ let r = new J(t, e);
1547
+ return this._currentTokenStart = null, this._currentTokenType = null, r;
1548
+ }
1549
+ handleError(e) {
1550
+ if (e instanceof Ft && (e = this._createError(e.msg, this._cursor.getSpan(e.cursor))), e instanceof J) this.errors.push(e);
1551
+ else throw e;
1552
+ }
1553
+ _attemptCharCode(e) {
1554
+ return this._cursor.peek() === e ? (this._cursor.advance(), !0) : !1;
1555
+ }
1556
+ _attemptCharCodeCaseInsensitive(e) {
1557
+ return Vs(this._cursor.peek(), e) ? (this._cursor.advance(), !0) : !1;
1558
+ }
1559
+ _requireCharCode(e) {
1560
+ let t = this._cursor.clone();
1561
+ if (!this._attemptCharCode(e)) throw this._createError(W(this._cursor.peek()), this._cursor.getSpan(t));
1562
+ }
1563
+ _attemptStr(e) {
1564
+ let t = e.length;
1565
+ if (this._cursor.charsLeft() < t) return !1;
1566
+ let r = this._cursor.clone();
1567
+ for (let n = 0; n < t; n++) if (!this._attemptCharCode(e.charCodeAt(n))) return this._cursor = r, !1;
1568
+ return !0;
1569
+ }
1570
+ _attemptStrCaseInsensitive(e) {
1571
+ for (let t = 0; t < e.length; t++) if (!this._attemptCharCodeCaseInsensitive(e.charCodeAt(t))) return !1;
1572
+ return !0;
1573
+ }
1574
+ _requireStr(e) {
1575
+ let t = this._cursor.clone();
1576
+ if (!this._attemptStr(e)) throw this._createError(W(this._cursor.peek()), this._cursor.getSpan(t));
1577
+ }
1578
+ _requireStrCaseInsensitive(e) {
1579
+ let t = this._cursor.clone();
1580
+ if (!this._attemptStrCaseInsensitive(e)) throw this._createError(W(this._cursor.peek()), this._cursor.getSpan(t));
1581
+ }
1582
+ _attemptCharCodeUntilFn(e) {
1583
+ for (; !e(this._cursor.peek()); ) this._cursor.advance();
1584
+ }
1585
+ _requireCharCodeUntilFn(e, t) {
1586
+ let r = this._cursor.clone();
1587
+ if (this._attemptCharCodeUntilFn(e), this._cursor.diff(r) < t) throw this._createError(W(this._cursor.peek()), this._cursor.getSpan(r));
1588
+ }
1589
+ _attemptUntilChar(e) {
1590
+ for (; this._cursor.peek() !== e; ) this._cursor.advance();
1591
+ }
1592
+ _readChar() {
1593
+ let e = String.fromCodePoint(this._cursor.peek());
1594
+ return this._cursor.advance(), e;
1595
+ }
1596
+ _peekStr(e) {
1597
+ let t = e.length;
1598
+ if (this._cursor.charsLeft() < t) return !1;
1599
+ let r = this._cursor.clone();
1600
+ for (let n = 0; n < t; n++) {
1601
+ if (r.peek() !== e.charCodeAt(n)) return !1;
1602
+ r.advance();
1603
+ }
1604
+ return !0;
1605
+ }
1606
+ _isBlockStart() {
1607
+ return this._cursor.peek() === 64 && Ps.some((e) => this._peekStr(e));
1608
+ }
1609
+ _isLetStart() {
1610
+ return this._cursor.peek() === 64 && this._peekStr("@let");
1611
+ }
1612
+ _consumeEntity(e) {
1613
+ this._beginToken(u.ENCODED_ENTITY);
1614
+ let t = this._cursor.clone();
1615
+ if (this._cursor.advance(), this._attemptCharCode(35)) {
1616
+ let r = this._attemptCharCode(120) || this._attemptCharCode(88), n = this._cursor.clone();
1617
+ if (this._attemptCharCodeUntilFn(Ms), this._cursor.peek() != 59) {
1618
+ this._cursor.advance();
1619
+ let i = r ? pt.HEX : pt.DEC;
1620
+ throw this._createError(Fs(i, this._cursor.getChars(t)), this._cursor.getSpan());
1621
+ }
1622
+ let a = this._cursor.getChars(n);
1623
+ this._cursor.advance();
1624
+ try {
1625
+ let i = parseInt(a, r ? 16 : 10);
1626
+ this._endToken([String.fromCodePoint(i), this._cursor.getChars(t)]);
1627
+ } catch {
1628
+ throw this._createError(ar(this._cursor.getChars(t)), this._cursor.getSpan());
1629
+ }
1630
+ } else {
1631
+ let r = this._cursor.clone();
1632
+ if (this._attemptCharCodeUntilFn(qs), this._cursor.peek() != 59) this._beginToken(e, t), this._cursor = r, this._endToken(["&"]);
1633
+ else {
1634
+ let n = this._cursor.getChars(r);
1635
+ this._cursor.advance();
1636
+ let a = Se.hasOwnProperty(n) && Se[n];
1637
+ if (!a) throw this._createError(ar(n), this._cursor.getSpan(t));
1638
+ this._endToken([a, `&${n};`]);
1639
+ }
1640
+ }
1641
+ }
1642
+ _consumeRawText(e, t) {
1643
+ this._beginToken(e ? u.ESCAPABLE_RAW_TEXT : u.RAW_TEXT);
1644
+ let r = [];
1645
+ for (; ; ) {
1646
+ let n = this._cursor.clone(), a = t();
1647
+ if (this._cursor = n, a) break;
1648
+ e && this._cursor.peek() === 38 ? (this._endToken([this._processCarriageReturns(r.join(""))]), r.length = 0, this._consumeEntity(u.ESCAPABLE_RAW_TEXT), this._beginToken(u.ESCAPABLE_RAW_TEXT)) : r.push(this._readChar());
1649
+ }
1650
+ this._endToken([this._processCarriageReturns(r.join(""))]);
1651
+ }
1652
+ _consumeComment(e) {
1653
+ this._beginToken(u.COMMENT_START, e), this._endToken([]), this._consumeRawText(!1, () => this._attemptStr("-->")), this._beginToken(u.COMMENT_END), this._requireStr("-->"), this._endToken([]);
1654
+ }
1655
+ _consumeBogusComment(e) {
1656
+ this._beginToken(u.COMMENT_START, e), this._endToken([]), this._consumeRawText(!1, () => this._cursor.peek() === 62), this._beginToken(u.COMMENT_END), this._cursor.advance(), this._endToken([]);
1657
+ }
1658
+ _consumeCdata(e) {
1659
+ this._beginToken(u.CDATA_START, e), this._endToken([]), this._consumeRawText(!1, () => this._attemptStr("]]>")), this._beginToken(u.CDATA_END), this._requireStr("]]>"), this._endToken([]);
1660
+ }
1661
+ _consumeDocType(e) {
1662
+ this._beginToken(u.DOC_TYPE_START, e), this._endToken([]), this._consumeRawText(!1, () => this._cursor.peek() === 62), this._beginToken(u.DOC_TYPE_END), this._cursor.advance(), this._endToken([]);
1663
+ }
1664
+ _consumePrefixAndName(e) {
1665
+ let t = this._cursor.clone(), r = "";
1666
+ for (; this._cursor.peek() !== 58 && !Rs(this._cursor.peek()); ) this._cursor.advance();
1667
+ let n;
1668
+ this._cursor.peek() === 58 ? (r = this._cursor.getChars(t), this._cursor.advance(), n = this._cursor.clone()) : n = t, this._requireCharCodeUntilFn(e, r === "" ? 0 : 1);
1669
+ let a = this._cursor.getChars(n);
1670
+ return [r, a];
1671
+ }
1672
+ _consumeTagOpen(e) {
1673
+ let t, r, n, a, i = [];
1674
+ try {
1675
+ if (this._selectorlessEnabled && Pe(this._cursor.peek())) a = this._consumeComponentOpenStart(e), [n, r, t] = a.parts, r && (n += `:${r}`), t && (n += `:${t}`), this._attemptCharCodeUntilFn(E);
1676
+ else {
1677
+ if (!ve(this._cursor.peek())) throw this._createError(W(this._cursor.peek()), this._cursor.getSpan(e));
1678
+ a = this._consumeTagOpenStart(e), r = a.parts[0], t = n = a.parts[1], this._attemptCharCodeUntilFn(E);
1679
+ }
1680
+ for (; !ur(this._cursor.peek()); ) if (this._selectorlessEnabled && this._cursor.peek() === 64) {
1681
+ let o = this._cursor.clone(), l = o.clone();
1682
+ l.advance(), Pe(l.peek()) && this._consumeDirective(o, l);
1683
+ } else {
1684
+ let o = this._consumeAttribute();
1685
+ i.push(o);
1686
+ }
1687
+ a.type === u.COMPONENT_OPEN_START ? this._consumeComponentOpenEnd() : this._consumeTagOpenEnd();
1688
+ } catch (o) {
1689
+ if (o instanceof J) {
1690
+ a ? a.type = a.type === u.COMPONENT_OPEN_START ? u.INCOMPLETE_COMPONENT_OPEN : u.INCOMPLETE_TAG_OPEN : (this._beginToken(u.TEXT, e), this._endToken(["<"]));
1691
+ return;
1692
+ }
1693
+ throw o;
1694
+ }
1695
+ if (this._canSelfClose && this.tokens[this.tokens.length - 1].type === u.TAG_OPEN_END_VOID) return;
1696
+ let s = this._getTagContentType(t, r, this._fullNameStack.length > 0, i);
1697
+ this._handleFullNameStackForTagOpen(r, t), s === R.RAW_TEXT ? this._consumeRawTextWithTagClose(r, a, n, !1) : s === R.ESCAPABLE_RAW_TEXT && this._consumeRawTextWithTagClose(r, a, n, !0);
1698
+ }
1699
+ _consumeRawTextWithTagClose(e, t, r, n) {
1700
+ this._consumeRawText(n, () => !this._attemptCharCode(60) || !this._attemptCharCode(47) || (this._attemptCharCodeUntilFn(E), !this._attemptStrCaseInsensitive(e && t.type !== u.COMPONENT_OPEN_START ? `${e}:${r}` : r)) ? !1 : (this._attemptCharCodeUntilFn(E), this._attemptCharCode(62))), this._beginToken(t.type === u.COMPONENT_OPEN_START ? u.COMPONENT_CLOSE : u.TAG_CLOSE), this._requireCharCodeUntilFn((a) => a === 62, 3), this._cursor.advance(), this._endToken(t.parts), this._handleFullNameStackForTagClose(e, r);
1701
+ }
1702
+ _consumeTagOpenStart(e) {
1703
+ this._beginToken(u.TAG_OPEN_START, e);
1704
+ let t = this._consumePrefixAndName(z);
1705
+ return this._endToken(t);
1706
+ }
1707
+ _consumeComponentOpenStart(e) {
1708
+ this._beginToken(u.COMPONENT_OPEN_START, e);
1709
+ let t = this._consumeComponentName();
1710
+ return this._endToken(t);
1711
+ }
1712
+ _consumeComponentName() {
1713
+ let e = this._cursor.clone();
1714
+ for (; or(this._cursor.peek()); ) this._cursor.advance();
1715
+ let t = this._cursor.getChars(e), r = "", n = "";
1716
+ return this._cursor.peek() === 58 && (this._cursor.advance(), [r, n] = this._consumePrefixAndName(z)), [t, r, n];
1717
+ }
1718
+ _consumeAttribute() {
1719
+ let [e, t] = this._consumeAttributeName(), r;
1720
+ return this._attemptCharCodeUntilFn(E), this._attemptCharCode(61) && (this._attemptCharCodeUntilFn(E), r = this._consumeAttributeValue()), this._attemptCharCodeUntilFn(E), { prefix: e, name: t, value: r };
1721
+ }
1722
+ _consumeAttributeName() {
1723
+ let e = this._cursor.peek();
1724
+ if (e === 39 || e === 34) throw this._createError(W(e), this._cursor.getSpan());
1725
+ this._beginToken(u.ATTR_NAME);
1726
+ let t;
1727
+ if (this._openDirectiveCount > 0) {
1728
+ let n = 0;
1729
+ t = (a) => {
1730
+ if (this._openDirectiveCount > 0) {
1731
+ if (a === 40) n++;
1732
+ else if (a === 41) {
1733
+ if (n === 0) return !0;
1734
+ n--;
1735
+ }
1736
+ }
1737
+ return z(a);
1738
+ };
1739
+ } else if (e === 91) {
1740
+ let n = 0;
1741
+ t = (a) => (a === 91 ? n++ : a === 93 && n--, n <= 0 ? z(a) : He(a));
1742
+ } else t = z;
1743
+ let r = this._consumePrefixAndName(t);
1744
+ return this._endToken(r), r;
1745
+ }
1746
+ _consumeAttributeValue() {
1747
+ let e;
1748
+ if (this._cursor.peek() === 39 || this._cursor.peek() === 34) {
1749
+ let t = this._cursor.peek();
1750
+ this._consumeQuote(t);
1751
+ let r = () => this._cursor.peek() === t;
1752
+ e = this._consumeWithInterpolation(u.ATTR_VALUE_TEXT, u.ATTR_VALUE_INTERPOLATION, r, r), this._consumeQuote(t);
1753
+ } else {
1754
+ let t = () => z(this._cursor.peek());
1755
+ e = this._consumeWithInterpolation(u.ATTR_VALUE_TEXT, u.ATTR_VALUE_INTERPOLATION, t, t);
1756
+ }
1757
+ return e;
1758
+ }
1759
+ _consumeQuote(e) {
1760
+ this._beginToken(u.ATTR_QUOTE), this._requireCharCode(e), this._endToken([String.fromCodePoint(e)]);
1761
+ }
1762
+ _consumeTagOpenEnd() {
1763
+ let e = this._attemptCharCode(47) ? u.TAG_OPEN_END_VOID : u.TAG_OPEN_END;
1764
+ this._beginToken(e), this._requireCharCode(62), this._endToken([]);
1765
+ }
1766
+ _consumeComponentOpenEnd() {
1767
+ let e = this._attemptCharCode(47) ? u.COMPONENT_OPEN_END_VOID : u.COMPONENT_OPEN_END;
1768
+ this._beginToken(e), this._requireCharCode(62), this._endToken([]);
1769
+ }
1770
+ _consumeTagClose(e) {
1771
+ if (this._selectorlessEnabled) {
1772
+ let t = e.clone();
1773
+ for (; t.peek() !== 62 && !Pe(t.peek()); ) t.advance();
1774
+ if (Pe(t.peek())) {
1775
+ this._beginToken(u.COMPONENT_CLOSE, e);
1776
+ let r = this._consumeComponentName();
1777
+ this._attemptCharCodeUntilFn(E), this._requireCharCode(62), this._endToken(r);
1778
+ return;
1779
+ }
1780
+ }
1781
+ if (this._beginToken(u.TAG_CLOSE, e), this._attemptCharCodeUntilFn(E), this._allowHtmComponentClosingTags && this._attemptCharCode(47)) this._attemptCharCodeUntilFn(E), this._requireCharCode(62), this._endToken([]);
1782
+ else {
1783
+ let [t, r] = this._consumePrefixAndName(z);
1784
+ this._attemptCharCodeUntilFn(E), this._requireCharCode(62), this._endToken([t, r]), this._handleFullNameStackForTagClose(t, r);
1785
+ }
1786
+ }
1787
+ _consumeExpansionFormStart() {
1788
+ this._beginToken(u.EXPANSION_FORM_START), this._requireCharCode(123), this._endToken([]), this._expansionCaseStack.push(u.EXPANSION_FORM_START), this._beginToken(u.RAW_TEXT);
1789
+ let e = this._readUntil(44), t = this._processCarriageReturns(e);
1790
+ if (this._i18nNormalizeLineEndingsInICUs) this._endToken([t]);
1791
+ else {
1792
+ let n = this._endToken([e]);
1793
+ t !== e && this.nonNormalizedIcuExpressions.push(n);
1794
+ }
1795
+ this._requireCharCode(44), this._attemptCharCodeUntilFn(E), this._beginToken(u.RAW_TEXT);
1796
+ let r = this._readUntil(44);
1797
+ this._endToken([r]), this._requireCharCode(44), this._attemptCharCodeUntilFn(E);
1798
+ }
1799
+ _consumeExpansionCaseStart() {
1800
+ this._beginToken(u.EXPANSION_CASE_VALUE);
1801
+ let e = this._readUntil(123).trim();
1802
+ this._endToken([e]), this._attemptCharCodeUntilFn(E), this._beginToken(u.EXPANSION_CASE_EXP_START), this._requireCharCode(123), this._endToken([]), this._attemptCharCodeUntilFn(E), this._expansionCaseStack.push(u.EXPANSION_CASE_EXP_START);
1803
+ }
1804
+ _consumeExpansionCaseEnd() {
1805
+ this._beginToken(u.EXPANSION_CASE_EXP_END), this._requireCharCode(125), this._endToken([]), this._attemptCharCodeUntilFn(E), this._expansionCaseStack.pop();
1806
+ }
1807
+ _consumeExpansionFormEnd() {
1808
+ this._beginToken(u.EXPANSION_FORM_END), this._requireCharCode(125), this._endToken([]), this._expansionCaseStack.pop();
1809
+ }
1810
+ _consumeWithInterpolation(e, t, r, n) {
1811
+ this._beginToken(e);
1812
+ let a = [];
1813
+ for (; !r(); ) {
1814
+ let s = this._cursor.clone();
1815
+ this._attemptStr(pe.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());
1816
+ }
1817
+ this._inInterpolation = !1;
1818
+ let i = this._processCarriageReturns(a.join(""));
1819
+ return this._endToken([i]), i;
1820
+ }
1821
+ _consumeInterpolation(e, t, r) {
1822
+ let n = [];
1823
+ this._beginToken(e, t), n.push(pe.start);
1824
+ let a = this._cursor.clone(), i = null, s = !1;
1825
+ for (; this._cursor.peek() !== 0 && (r === null || !r()); ) {
1826
+ let o = this._cursor.clone();
1827
+ if (this._isTagStart()) {
1828
+ this._cursor = o, n.push(this._getProcessedChars(a, o)), this._endToken(n);
1829
+ return;
1830
+ }
1831
+ if (i === null) if (this._attemptStr(pe.end)) {
1832
+ n.push(this._getProcessedChars(a, o)), n.push(pe.end), this._endToken(n);
1833
+ return;
1834
+ } else this._attemptStr("//") && (s = !0);
1835
+ let l = this._cursor.peek();
1836
+ this._cursor.advance(), l === 92 ? this._cursor.advance() : l === i ? i = null : !s && i === null && at(l) && (i = l);
1837
+ }
1838
+ n.push(this._getProcessedChars(a, this._cursor)), this._endToken(n);
1839
+ }
1840
+ _consumeDirective(e, t) {
1841
+ for (this._requireCharCode(64), this._cursor.advance(); or(this._cursor.peek()); ) this._cursor.advance();
1842
+ this._beginToken(u.DIRECTIVE_NAME, e);
1843
+ let r = this._cursor.getChars(t);
1844
+ if (this._endToken([r]), this._attemptCharCodeUntilFn(E), this._cursor.peek() === 40) {
1845
+ for (this._openDirectiveCount++, this._beginToken(u.DIRECTIVE_OPEN), this._cursor.advance(), this._endToken([]), this._attemptCharCodeUntilFn(E); !ur(this._cursor.peek()) && this._cursor.peek() !== 41; ) this._consumeAttribute();
1846
+ if (this._attemptCharCodeUntilFn(E), this._openDirectiveCount--, this._cursor.peek() !== 41) {
1847
+ if (this._cursor.peek() === 62 || this._cursor.peek() === 47) return;
1848
+ throw this._createError(W(this._cursor.peek()), this._cursor.getSpan(e));
1849
+ }
1850
+ this._beginToken(u.DIRECTIVE_CLOSE), this._cursor.advance(), this._endToken([]), this._attemptCharCodeUntilFn(E);
1851
+ }
1852
+ }
1853
+ _getProcessedChars(e, t) {
1854
+ return this._processCarriageReturns(t.getChars(e));
1855
+ }
1856
+ _isTextEnd() {
1857
+ return !!(this._isTagStart() || this._cursor.peek() === 0 || this._tokenizeIcu && !this._inInterpolation && (this.isExpansionFormStart() || this._cursor.peek() === 125 && this._isInExpansionCase()) || this._tokenizeBlocks && !this._inInterpolation && !this._isInExpansion() && (this._isBlockStart() || this._isLetStart() || this._cursor.peek() === 125));
1858
+ }
1859
+ _isTagStart() {
1860
+ if (this._cursor.peek() === 60) {
1861
+ let e = this._cursor.clone();
1862
+ e.advance();
1863
+ let t = e.peek();
1864
+ if (97 <= t && t <= 122 || 65 <= t && t <= 90 || t === 47 || t === 33) return !0;
1865
+ }
1866
+ return !1;
1867
+ }
1868
+ _readUntil(e) {
1869
+ let t = this._cursor.clone();
1870
+ return this._attemptUntilChar(e), this._cursor.getChars(t);
1871
+ }
1872
+ _isInExpansion() {
1873
+ return this._isInExpansionCase() || this._isInExpansionForm();
1874
+ }
1875
+ _isInExpansionCase() {
1876
+ return this._expansionCaseStack.length > 0 && this._expansionCaseStack[this._expansionCaseStack.length - 1] === u.EXPANSION_CASE_EXP_START;
1877
+ }
1878
+ _isInExpansionForm() {
1879
+ return this._expansionCaseStack.length > 0 && this._expansionCaseStack[this._expansionCaseStack.length - 1] === u.EXPANSION_FORM_START;
1880
+ }
1881
+ isExpansionFormStart() {
1882
+ if (this._cursor.peek() !== 123) return !1;
1883
+ let e = this._cursor.clone(), t = this._attemptStr(pe.start);
1884
+ return this._cursor = e, !t;
1885
+ }
1886
+ _handleFullNameStackForTagOpen(e, t) {
1887
+ let r = _e(e, t);
1888
+ (this._fullNameStack.length === 0 || this._fullNameStack[this._fullNameStack.length - 1] === r) && this._fullNameStack.push(r);
1889
+ }
1890
+ _handleFullNameStackForTagClose(e, t) {
1891
+ let r = _e(e, t);
1892
+ this._fullNameStack.length !== 0 && this._fullNameStack[this._fullNameStack.length - 1] === r && this._fullNameStack.pop();
1893
+ }
1894
+ };
1895
+ function E(e) {
1896
+ return !qe(e) || e === 0;
1897
+ }
1898
+ function z(e) {
1899
+ return qe(e) || e === 62 || e === 60 || e === 47 || e === 39 || e === 34 || e === 61 || e === 0;
1900
+ }
1901
+ function Rs(e) {
1902
+ return (e < 97 || 122 < e) && (e < 65 || 90 < e) && (e < 48 || e > 57);
1903
+ }
1904
+ function Ms(e) {
1905
+ return e === 59 || e === 0 || !vs(e);
1906
+ }
1907
+ function qs(e) {
1908
+ return e === 59 || e === 0 || !ve(e);
1909
+ }
1910
+ function Hs(e) {
1911
+ return e !== 125;
1912
+ }
1913
+ function Vs(e, t) {
1914
+ return ir(e) === ir(t);
1915
+ }
1916
+ function ir(e) {
1917
+ return e >= 97 && e <= 122 ? e - 97 + 65 : e;
1918
+ }
1919
+ function Us(e) {
1920
+ return ve(e) || Ke(e) || e === 95;
1921
+ }
1922
+ function sr(e) {
1923
+ return e !== 59 && E(e);
1924
+ }
1925
+ function Pe(e) {
1926
+ return e === 95 || e >= 65 && e <= 90;
1927
+ }
1928
+ function or(e) {
1929
+ return ve(e) || Ke(e) || e === 95;
1930
+ }
1931
+ function ur(e) {
1932
+ return e === 47 || e === 62 || e === 60 || e === 0;
1933
+ }
1934
+ function Ws(e) {
1935
+ let t = [], r;
1936
+ for (let n = 0; n < e.length; n++) {
1937
+ let a = e[n];
1938
+ r && r.type === u.TEXT && a.type === u.TEXT || r && r.type === u.ATTR_VALUE_TEXT && a.type === u.ATTR_VALUE_TEXT ? (r.parts[0] += a.parts[0], r.sourceSpan.end = a.sourceSpan.end) : (r = a, t.push(r));
1939
+ }
1940
+ return t;
1941
+ }
1942
+ var ln = class ht {
1943
+ constructor(t, r) {
1944
+ if (t instanceof ht) {
1945
+ this.file = t.file, this.input = t.input, this.end = t.end;
1946
+ let n = t.state;
1947
+ this.state = { peek: n.peek, offset: n.offset, line: n.line, column: n.column };
1948
+ } else {
1949
+ if (!r) throw new Error("Programming error: the range argument must be provided with a file argument.");
1950
+ this.file = t, this.input = t.content, this.end = r.endPos, this.state = { peek: -1, offset: r.startPos, line: r.startLine, column: r.startCol };
1951
+ }
1952
+ }
1953
+ clone() {
1954
+ return new ht(this);
1955
+ }
1956
+ peek() {
1957
+ return this.state.peek;
1958
+ }
1959
+ charsLeft() {
1960
+ return this.end - this.state.offset;
1961
+ }
1962
+ diff(t) {
1963
+ return this.state.offset - t.state.offset;
1964
+ }
1965
+ advance() {
1966
+ this.advanceState(this.state);
1967
+ }
1968
+ init() {
1969
+ this.updatePeek(this.state);
1970
+ }
1971
+ getSpan(t, r) {
1972
+ t = t || this;
1973
+ let n = t;
1974
+ if (r) for (; this.diff(t) > 0 && r.indexOf(t.peek()) !== -1; ) n === t && (t = t.clone()), t.advance();
1975
+ let a = this.locationFromCursor(t);
1976
+ return new d(a, this.locationFromCursor(this), n !== t ? this.locationFromCursor(n) : a);
1977
+ }
1978
+ getChars(t) {
1979
+ return this.input.substring(t.state.offset, this.state.offset);
1980
+ }
1981
+ charAt(t) {
1982
+ return this.input.charCodeAt(t);
1983
+ }
1984
+ advanceState(t) {
1985
+ if (t.offset >= this.end) throw this.state = t, new Ft('Unexpected character "EOF"', this);
1986
+ let r = this.charAt(t.offset);
1987
+ r === 10 ? (t.line++, t.column = 0) : He(r) || t.column++, t.offset++, this.updatePeek(t);
1988
+ }
1989
+ updatePeek(t) {
1990
+ t.peek = t.offset >= this.end ? 0 : this.charAt(t.offset);
1991
+ }
1992
+ locationFromCursor(t) {
1993
+ return new ct(t.file, t.state.offset, t.state.line, t.state.column);
1994
+ }
1995
+ }, zs = class dt extends ln {
1996
+ constructor(t, r) {
1997
+ t instanceof dt ? (super(t), this.internalState = { ...t.internalState }) : (super(t, r), this.internalState = this.state);
1998
+ }
1999
+ advance() {
2000
+ this.state = this.internalState, super.advance(), this.processEscapeSequence();
2001
+ }
2002
+ init() {
2003
+ super.init(), this.processEscapeSequence();
2004
+ }
2005
+ clone() {
2006
+ return new dt(this);
2007
+ }
2008
+ getChars(t) {
2009
+ let r = t.clone(), n = "";
2010
+ for (; r.internalState.offset < this.internalState.offset; ) n += String.fromCodePoint(r.peek()), r.advance();
2011
+ return n;
2012
+ }
2013
+ processEscapeSequence() {
2014
+ let t = () => this.internalState.peek;
2015
+ if (t() === 92) if (this.internalState = { ...this.state }, this.advanceState(this.internalState), t() === 110) this.state.peek = 10;
2016
+ else if (t() === 114) this.state.peek = 13;
2017
+ else if (t() === 118) this.state.peek = 11;
2018
+ else if (t() === 116) this.state.peek = 9;
2019
+ else if (t() === 98) this.state.peek = 8;
2020
+ else if (t() === 102) this.state.peek = 12;
2021
+ else if (t() === 117) if (this.advanceState(this.internalState), t() === 123) {
2022
+ this.advanceState(this.internalState);
2023
+ let r = this.clone(), n = 0;
2024
+ for (; t() !== 125; ) this.advanceState(this.internalState), n++;
2025
+ this.state.peek = this.decodeHexDigits(r, n);
2026
+ } else {
2027
+ let r = this.clone();
2028
+ this.advanceState(this.internalState), this.advanceState(this.internalState), this.advanceState(this.internalState), this.state.peek = this.decodeHexDigits(r, 4);
2029
+ }
2030
+ else if (t() === 120) {
2031
+ this.advanceState(this.internalState);
2032
+ let r = this.clone();
2033
+ this.advanceState(this.internalState), this.state.peek = this.decodeHexDigits(r, 2);
2034
+ } else if (er(t())) {
2035
+ let r = "", n = 0, a = this.clone();
2036
+ for (; er(t()) && n < 3; ) a = this.clone(), r += String.fromCodePoint(t()), this.advanceState(this.internalState), n++;
2037
+ this.state.peek = parseInt(r, 8), this.internalState = a.internalState;
2038
+ } else He(this.internalState.peek) ? (this.advanceState(this.internalState), this.state = this.internalState) : this.state.peek = this.internalState.peek;
2039
+ }
2040
+ decodeHexDigits(t, r) {
2041
+ let n = this.input.slice(t.internalState.offset, t.internalState.offset + r), a = parseInt(n, 16);
2042
+ if (isNaN(a)) throw t.state = t.internalState, new Ft("Invalid hexadecimal escape sequence", t);
2043
+ return a;
2044
+ }
2045
+ }, Ft = class extends Error {
2046
+ constructor(e, t) {
2047
+ super(e), this.msg = e, this.cursor = t, Object.setPrototypeOf(this, new.target.prototype);
2048
+ }
2049
+ }, T = class cn extends J {
2050
+ static create(t, r, n) {
2051
+ return new cn(t, r, n);
2052
+ }
2053
+ constructor(t, r, n) {
2054
+ super(r, n), this.elementName = t;
2055
+ }
2056
+ }, $s = class {
2057
+ constructor(e, t) {
2058
+ this.rootNodes = e, this.errors = t;
2059
+ }
2060
+ }, js = class {
2061
+ constructor(e) {
2062
+ this.getTagDefinition = e;
2063
+ }
2064
+ parse(e, t, r, n = !1, a) {
2065
+ let i = (h) => (_, ...C) => h(_.toLowerCase(), ...C), s = n ? this.getTagDefinition : i(this.getTagDefinition), o = (h) => s(h).getContentType(), l = n ? a : i(a), c = Ls(e, t, a ? (h, _, C, L) => {
2066
+ let P = l(h, _, C, L);
2067
+ return P !== void 0 ? P : o(h);
2068
+ } : o, r), p = r && r.canSelfClose || !1, g = r && r.allowHtmComponentClosingTags || !1, f = new Xs(c.tokens, s, p, g, n);
2069
+ return f.build(), new $s(f.rootNodes, [...c.errors, ...f.errors]);
2070
+ }
2071
+ }, Xs = class pn {
2072
+ constructor(t, r, n, a, i) {
2073
+ this.tokens = t, this.tagDefinitionResolver = r, this.canSelfClose = n, this.allowHtmComponentClosingTags = a, this.isTagNameCaseSensitive = i, this._index = -1, this._containerStack = [], this.rootNodes = [], this.errors = [], this._advance();
2074
+ }
2075
+ build() {
2076
+ for (; this._peek.type !== u.EOF; ) this._peek.type === u.TAG_OPEN_START || this._peek.type === u.INCOMPLETE_TAG_OPEN ? this._consumeElementStartTag(this._advance()) : this._peek.type === u.TAG_CLOSE ? (this._closeVoidElement(), this._consumeElementEndTag(this._advance())) : this._peek.type === u.CDATA_START ? (this._closeVoidElement(), this._consumeCdata(this._advance())) : this._peek.type === u.COMMENT_START ? (this._closeVoidElement(), this._consumeComment(this._advance())) : this._peek.type === u.TEXT || this._peek.type === u.RAW_TEXT || this._peek.type === u.ESCAPABLE_RAW_TEXT ? (this._closeVoidElement(), this._consumeText(this._advance())) : this._peek.type === u.EXPANSION_FORM_START ? this._consumeExpansion(this._advance()) : this._peek.type === u.BLOCK_OPEN_START ? (this._closeVoidElement(), this._consumeBlockOpen(this._advance())) : this._peek.type === u.BLOCK_CLOSE ? (this._closeVoidElement(), this._consumeBlockClose(this._advance())) : this._peek.type === u.INCOMPLETE_BLOCK_OPEN ? (this._closeVoidElement(), this._consumeIncompleteBlock(this._advance())) : this._peek.type === u.LET_START ? (this._closeVoidElement(), this._consumeLet(this._advance())) : this._peek.type === u.DOC_TYPE_START ? this._consumeDocType(this._advance()) : this._peek.type === u.INCOMPLETE_LET ? (this._closeVoidElement(), this._consumeIncompleteLet(this._advance())) : this._peek.type === u.COMPONENT_OPEN_START || this._peek.type === u.INCOMPLETE_COMPONENT_OPEN ? this._consumeComponentStartTag(this._advance()) : this._peek.type === u.COMPONENT_CLOSE ? this._consumeComponentEndTag(this._advance()) : this._advance();
2077
+ for (let t of this._containerStack) t instanceof Y && this.errors.push(T.create(t.name, t.sourceSpan, `Unclosed block "${t.name}"`));
2078
+ }
2079
+ _advance() {
2080
+ let t = this._peek;
2081
+ return this._index < this.tokens.length - 1 && this._index++, this._peek = this.tokens[this._index], t;
2082
+ }
2083
+ _advanceIf(t) {
2084
+ return this._peek.type === t ? this._advance() : null;
2085
+ }
2086
+ _consumeCdata(t) {
2087
+ let r = this._advance(), n = this._getText(r), a = this._advanceIf(u.CDATA_END);
2088
+ this._addToParent(new As(n, new d(t.sourceSpan.start, (a || r).sourceSpan.end), [r]));
2089
+ }
2090
+ _consumeComment(t) {
2091
+ let r = this._advanceIf(u.RAW_TEXT), n = this._advanceIf(u.COMMENT_END), a = r != null ? r.parts[0].trim() : null, i = n == null ? t.sourceSpan : new d(t.sourceSpan.start, n.sourceSpan.end, t.sourceSpan.fullStart);
2092
+ this._addToParent(new ws(a, i));
2093
+ }
2094
+ _consumeDocType(t) {
2095
+ let r = this._advanceIf(u.RAW_TEXT), n = this._advanceIf(u.DOC_TYPE_END), a = r != null ? r.parts[0].trim() : null, i = new d(t.sourceSpan.start, (n || r || t).sourceSpan.end);
2096
+ this._addToParent(new ys(a, i));
2097
+ }
2098
+ _consumeExpansion(t) {
2099
+ let r = this._advance(), n = this._advance(), a = [];
2100
+ for (; this._peek.type === u.EXPANSION_CASE_VALUE; ) {
2101
+ let s = this._parseExpansionCase();
2102
+ if (!s) return;
2103
+ a.push(s);
2104
+ }
2105
+ if (this._peek.type !== u.EXPANSION_FORM_END) {
2106
+ this.errors.push(T.create(null, this._peek.sourceSpan, "Invalid ICU message. Missing '}'."));
2107
+ return;
2108
+ }
2109
+ let i = new d(t.sourceSpan.start, this._peek.sourceSpan.end, t.sourceSpan.fullStart);
2110
+ this._addToParent(new Ts(r.parts[0], n.parts[0], a, i, r.sourceSpan)), this._advance();
2111
+ }
2112
+ _parseExpansionCase() {
2113
+ let t = this._advance();
2114
+ if (this._peek.type !== u.EXPANSION_CASE_EXP_START) return this.errors.push(T.create(null, this._peek.sourceSpan, "Invalid ICU message. Missing '{'.")), null;
2115
+ let r = this._advance(), n = this._collectExpansionExpTokens(r);
2116
+ if (!n) return null;
2117
+ let a = this._advance();
2118
+ n.push({ type: u.EOF, parts: [], sourceSpan: a.sourceSpan });
2119
+ let i = new pn(n, this.tagDefinitionResolver, this.canSelfClose, this.allowHtmComponentClosingTags, this.isTagNameCaseSensitive);
2120
+ if (i.build(), i.errors.length > 0) return this.errors = this.errors.concat(i.errors), null;
2121
+ let s = new d(t.sourceSpan.start, a.sourceSpan.end, t.sourceSpan.fullStart), o = new d(r.sourceSpan.start, a.sourceSpan.end, r.sourceSpan.fullStart);
2122
+ return new ks(t.parts[0], i.rootNodes, s, t.sourceSpan, o);
2123
+ }
2124
+ _collectExpansionExpTokens(t) {
2125
+ let r = [], n = [u.EXPANSION_CASE_EXP_START];
2126
+ for (; ; ) {
2127
+ if ((this._peek.type === u.EXPANSION_FORM_START || this._peek.type === u.EXPANSION_CASE_EXP_START) && n.push(this._peek.type), this._peek.type === u.EXPANSION_CASE_EXP_END) if (lr(n, u.EXPANSION_CASE_EXP_START)) {
2128
+ if (n.pop(), n.length === 0) return r;
2129
+ } else return this.errors.push(T.create(null, t.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2130
+ if (this._peek.type === u.EXPANSION_FORM_END) if (lr(n, u.EXPANSION_FORM_START)) n.pop();
2131
+ else return this.errors.push(T.create(null, t.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2132
+ if (this._peek.type === u.EOF) return this.errors.push(T.create(null, t.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2133
+ r.push(this._advance());
2134
+ }
2135
+ }
2136
+ _getText(t) {
2137
+ let r = t.parts[0];
2138
+ if (r.length > 0 && r[0] == `
2139
+ `) {
2140
+ var n;
2141
+ let a = this._getClosestElementLikeParent();
2142
+ a != null && a.children.length == 0 && !((n = this._getTagDefinition(a)) === null || n === void 0) && n.ignoreFirstLf && (r = r.substring(1));
2143
+ }
2144
+ return r;
2145
+ }
2146
+ _consumeText(t) {
2147
+ let r = [t], n = t.sourceSpan, a = t.parts[0];
2148
+ if (a.length > 0 && a[0] === `
2149
+ `) {
2150
+ var i;
2151
+ let s = this._getContainer();
2152
+ s != null && s.children.length === 0 && !((i = this._getTagDefinition(s)) === null || i === void 0) && i.ignoreFirstLf && (a = a.substring(1), r[0] = { type: t.type, sourceSpan: t.sourceSpan, parts: [a] });
2153
+ }
2154
+ for (; this._peek.type === u.INTERPOLATION || this._peek.type === u.TEXT || this._peek.type === u.ENCODED_ENTITY; ) t = this._advance(), r.push(t), t.type === u.INTERPOLATION ? a += t.parts.join("").replace(/&([^;]+);/g, cr) : t.type === u.ENCODED_ENTITY ? a += t.parts[0] : a += t.parts.join("");
2155
+ if (a.length > 0) {
2156
+ let s = t.sourceSpan;
2157
+ this._addToParent(new Ss(a, new d(n.start, s.end, n.fullStart, n.details), r));
2158
+ }
2159
+ }
2160
+ _closeVoidElement() {
2161
+ var t;
2162
+ let r = this._getContainer();
2163
+ r !== null && !((t = this._getTagDefinition(r)) === null || t === void 0) && t.isVoid && this._containerStack.pop();
2164
+ }
2165
+ _consumeElementStartTag(t) {
2166
+ var r;
2167
+ let n = [], a = [];
2168
+ this._consumeAttributesAndDirectives(n, a);
2169
+ let i = this._getElementFullName(t, this._getClosestElementLikeParent()), s = this._getTagDefinition(i), o = !1;
2170
+ if (this._peek.type === u.TAG_OPEN_END_VOID) {
2171
+ this._advance(), o = !0;
2172
+ let C = this._getTagDefinition(i);
2173
+ this.canSelfClose || C != null && C.canSelfClose || Re(i) !== null || C != null && C.isVoid || this.errors.push(T.create(i, t.sourceSpan, `Only void, custom and foreign elements can be self closed "${t.parts[1]}"`));
2174
+ } else this._peek.type === u.TAG_OPEN_END && (this._advance(), o = !1);
2175
+ let l = this._peek.sourceSpan.fullStart, c = new d(t.sourceSpan.start, l, t.sourceSpan.fullStart), p = new d(t.sourceSpan.start, l, t.sourceSpan.fullStart), g = new d(t.sourceSpan.start.moveBy(1), t.sourceSpan.end), f = new U(i, n, a, [], o, c, p, void 0, g, (s == null ? void 0 : s.isVoid) ?? !1), h = this._getContainer(), _ = h !== null && !!(!((r = this._getTagDefinition(h)) === null || r === void 0) && r.isClosedByChild(f.name));
2176
+ this._pushContainer(f, _), o ? this._popContainer(i, U, c) : t.type === u.INCOMPLETE_TAG_OPEN && (this._popContainer(i, U, null), this.errors.push(T.create(i, c, `Opening tag "${i}" not terminated.`)));
2177
+ }
2178
+ _consumeComponentStartTag(t) {
2179
+ var r;
2180
+ let n = t.parts[0], a = [], i = [];
2181
+ this._consumeAttributesAndDirectives(a, i);
2182
+ let s = this._getClosestElementLikeParent(), o = this._getComponentTagName(t, s), l = this._getComponentFullName(t, s), c = this._peek.type === u.COMPONENT_OPEN_END_VOID;
2183
+ this._advance();
2184
+ let p = this._peek.sourceSpan.fullStart, g = new d(t.sourceSpan.start, p, t.sourceSpan.fullStart), f = new d(t.sourceSpan.start, p, t.sourceSpan.fullStart), h = new H(n, o, l, a, i, [], c, g, f, void 0), _ = this._getContainer(), C = _ !== null && h.tagName !== null && !!(!((r = this._getTagDefinition(_)) === null || r === void 0) && r.isClosedByChild(h.tagName));
2185
+ this._pushContainer(h, C), c ? this._popContainer(l, H, g) : t.type === u.INCOMPLETE_COMPONENT_OPEN && (this._popContainer(l, H, null), this.errors.push(T.create(l, g, `Opening tag "${l}" not terminated.`)));
2186
+ }
2187
+ _consumeAttributesAndDirectives(t, r) {
2188
+ for (; this._peek.type === u.ATTR_NAME || this._peek.type === u.DIRECTIVE_NAME; ) this._peek.type === u.DIRECTIVE_NAME ? r.push(this._consumeDirective(this._peek)) : t.push(this._consumeAttr(this._advance()));
2189
+ }
2190
+ _consumeComponentEndTag(t) {
2191
+ let r = this._getComponentFullName(t, this._getClosestElementLikeParent());
2192
+ if (!this._popContainer(r, H, t.sourceSpan)) {
2193
+ let n = this._containerStack[this._containerStack.length - 1], a;
2194
+ n instanceof H && n.componentName === t.parts[0] ? a = `, did you mean "${n.fullName}"?` : a = ". It may happen when the tag has already been closed by another tag.";
2195
+ let i = `Unexpected closing tag "${r}"${a}`;
2196
+ this.errors.push(T.create(r, t.sourceSpan, i));
2197
+ }
2198
+ }
2199
+ _getTagDefinition(t) {
2200
+ return typeof t == "string" ? this.tagDefinitionResolver(t) : t instanceof U ? this.tagDefinitionResolver(t.name) : t instanceof H && t.tagName !== null ? this.tagDefinitionResolver(t.tagName) : null;
2201
+ }
2202
+ _pushContainer(t, r) {
2203
+ r && this._containerStack.pop(), this._addToParent(t), this._containerStack.push(t);
2204
+ }
2205
+ _consumeElementEndTag(t) {
2206
+ var r;
2207
+ let n = this.allowHtmComponentClosingTags && t.parts.length === 0 ? null : this._getElementFullName(t, this._getClosestElementLikeParent());
2208
+ if (n && !((r = this._getTagDefinition(n)) === null || r === void 0) && r.isVoid) this.errors.push(T.create(n, t.sourceSpan, `Void elements do not have end tags "${t.parts[1]}"`));
2209
+ else if (!this._popContainer(n, U, t.sourceSpan)) {
2210
+ let a = `Unexpected closing tag "${n}". It may happen when the tag has already been closed by another tag. For more info see https://www.w3.org/TR/html5/syntax.html#closing-elements-that-have-implied-end-tags`;
2211
+ this.errors.push(T.create(n, t.sourceSpan, a));
2212
+ }
2213
+ }
2214
+ _popContainer(t, r, n) {
2215
+ let a = !1;
2216
+ for (let s = this._containerStack.length - 1; s >= 0; s--) {
2217
+ var i;
2218
+ let o = this._containerStack[s], l = o instanceof H ? o.fullName : o.name;
2219
+ if (Re(l) ? l === t : (l === t || t === null) && o instanceof r) return o.endSourceSpan = n, o.sourceSpan.end = n !== null ? n.end : o.sourceSpan.end, this._containerStack.splice(s, this._containerStack.length - s), !a;
2220
+ (o instanceof Y || !(!((i = this._getTagDefinition(o)) === null || i === void 0) && i.closedByParent)) && (a = !0);
2221
+ }
2222
+ return !1;
2223
+ }
2224
+ _consumeAttr(t) {
2225
+ let r = _e(t.parts[0], t.parts[1]), n = t.sourceSpan.end, a;
2226
+ this._peek.type === u.ATTR_QUOTE && (a = this._advance());
2227
+ let i = "", s = [], o, l;
2228
+ if (this._peek.type === u.ATTR_VALUE_TEXT) for (o = this._peek.sourceSpan, l = this._peek.sourceSpan.end; this._peek.type === u.ATTR_VALUE_TEXT || this._peek.type === u.ATTR_VALUE_INTERPOLATION || this._peek.type === u.ENCODED_ENTITY; ) {
2229
+ let p = this._advance();
2230
+ s.push(p), p.type === u.ATTR_VALUE_INTERPOLATION ? i += p.parts.join("").replace(/&([^;]+);/g, cr) : p.type === u.ENCODED_ENTITY ? i += p.parts[0] : i += p.parts.join(""), l = n = p.sourceSpan.end;
2231
+ }
2232
+ this._peek.type === u.ATTR_QUOTE && (l = n = this._advance().sourceSpan.end);
2233
+ let c = o && l && new d((a == null ? void 0 : a.sourceSpan.start) ?? o.start, l, (a == null ? void 0 : a.sourceSpan.fullStart) ?? o.fullStart);
2234
+ return new bs(r, i, new d(t.sourceSpan.start, n, t.sourceSpan.fullStart), t.sourceSpan, c, s.length > 0 ? s : void 0, void 0);
2235
+ }
2236
+ _consumeDirective(t) {
2237
+ let r = [], n = t.sourceSpan.end, a = null;
2238
+ if (this._advance(), this._peek.type === u.DIRECTIVE_OPEN) {
2239
+ for (n = this._peek.sourceSpan.end, this._advance(); this._peek.type === u.ATTR_NAME; ) r.push(this._consumeAttr(this._advance()));
2240
+ this._peek.type === u.DIRECTIVE_CLOSE ? (a = this._peek.sourceSpan, this._advance()) : this.errors.push(T.create(null, t.sourceSpan, "Unterminated directive definition"));
2241
+ }
2242
+ let i = new d(t.sourceSpan.start, n, t.sourceSpan.fullStart), s = new d(i.start, a === null ? t.sourceSpan.end : a.end, i.fullStart);
2243
+ return new Ds(t.parts[0], r, s, i, a);
2244
+ }
2245
+ _consumeBlockOpen(t) {
2246
+ let r = [];
2247
+ for (; this._peek.type === u.BLOCK_PARAMETER; ) {
2248
+ let o = this._advance();
2249
+ r.push(new rr(o.parts[0], o.sourceSpan));
2250
+ }
2251
+ this._peek.type === u.BLOCK_OPEN_END && this._advance();
2252
+ 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);
2253
+ this._pushContainer(s, !1);
2254
+ }
2255
+ _consumeBlockClose(t) {
2256
+ this._popContainer(null, Y, t.sourceSpan) || this.errors.push(T.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.'));
2257
+ }
2258
+ _consumeIncompleteBlock(t) {
2259
+ let r = [];
2260
+ for (; this._peek.type === u.BLOCK_PARAMETER; ) {
2261
+ let o = this._advance();
2262
+ r.push(new rr(o.parts[0], o.sourceSpan));
2263
+ }
2264
+ 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);
2265
+ this._pushContainer(s, !1), this._popContainer(null, Y, null), this.errors.push(T.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.`));
2266
+ }
2267
+ _consumeLet(t) {
2268
+ let r = t.parts[0], n, a;
2269
+ if (this._peek.type !== u.LET_VALUE) {
2270
+ this.errors.push(T.create(t.parts[0], t.sourceSpan, `Invalid @let declaration "${r}". Declaration must have a value.`));
2271
+ return;
2272
+ } else n = this._advance();
2273
+ if (this._peek.type !== u.LET_END) {
2274
+ this.errors.push(T.create(t.parts[0], t.sourceSpan, `Unterminated @let declaration "${r}". Declaration must be terminated with a semicolon.`));
2275
+ return;
2276
+ } else a = this._advance();
2277
+ let i = a.sourceSpan.fullStart, s = new d(t.sourceSpan.start, i, t.sourceSpan.fullStart), o = t.sourceSpan.toString().lastIndexOf(r), l = new d(t.sourceSpan.start.moveBy(o), t.sourceSpan.end), c = new nr(r, n.parts[0], s, l, n.sourceSpan);
2278
+ this._addToParent(c);
2279
+ }
2280
+ _consumeIncompleteLet(t) {
2281
+ let r = t.parts[0] ?? "", n = r ? ` "${r}"` : "";
2282
+ if (r.length > 0) {
2283
+ let a = t.sourceSpan.toString().lastIndexOf(r), i = new d(t.sourceSpan.start.moveBy(a), t.sourceSpan.end), s = new d(t.sourceSpan.start, t.sourceSpan.start.moveBy(0)), o = new nr(r, "", t.sourceSpan, i, s);
2284
+ this._addToParent(o);
2285
+ }
2286
+ this.errors.push(T.create(t.parts[0], t.sourceSpan, `Incomplete @let declaration${n}. @let declarations must be written as \`@let <name> = <value>;\``));
2287
+ }
2288
+ _getContainer() {
2289
+ return this._containerStack.length > 0 ? this._containerStack[this._containerStack.length - 1] : null;
2290
+ }
2291
+ _getClosestElementLikeParent() {
2292
+ for (let t = this._containerStack.length - 1; t > -1; t--) {
2293
+ let r = this._containerStack[t];
2294
+ if (r instanceof U || r instanceof H) return r;
2295
+ }
2296
+ return null;
2297
+ }
2298
+ _addToParent(t) {
2299
+ let r = this._getContainer();
2300
+ r === null ? this.rootNodes.push(t) : r.children.push(t);
2301
+ }
2302
+ _getElementFullName(t, r) {
2303
+ return _e(this._getPrefix(t, r), t.parts[1]);
2304
+ }
2305
+ _getComponentFullName(t, r) {
2306
+ let n = t.parts[0], a = this._getComponentTagName(t, r);
2307
+ return a === null ? n : a.startsWith(":") ? n + a : `${n}:${a}`;
2308
+ }
2309
+ _getComponentTagName(t, r) {
2310
+ let n = this._getPrefix(t, r), a = t.parts[2];
2311
+ return !n && !a ? null : !n && a ? a : _e(n, a || "ng-component");
2312
+ }
2313
+ _getPrefix(t, r) {
2314
+ var n;
2315
+ let a, i;
2316
+ if (t.type === u.COMPONENT_OPEN_START || t.type === u.INCOMPLETE_COMPONENT_OPEN || t.type === u.COMPONENT_CLOSE ? (a = t.parts[1], i = t.parts[2]) : (a = t.parts[0], i = t.parts[1]), a = a || ((n = this._getTagDefinition(i)) === null || n === void 0 ? void 0 : n.implicitNamespacePrefix) || "", !a && r) {
2317
+ let s = r instanceof U ? r.name : r.tagName;
2318
+ if (s !== null) {
2319
+ let o = Ge(s)[1], l = this._getTagDefinition(o);
2320
+ l !== null && !l.preventNamespaceInheritance && (a = Re(s));
2321
+ }
2322
+ }
2323
+ return a;
2324
+ }
2325
+ };
2326
+ function lr(e, t) {
2327
+ return e.length > 0 && e[e.length - 1] === t;
2328
+ }
2329
+ function cr(e, t) {
2330
+ return Se[t] !== void 0 ? Se[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;
2331
+ }
2332
+ var Gs = class extends js {
2333
+ constructor() {
2334
+ super(lt);
2335
+ }
2336
+ parse(e, t, r, n = !1, a) {
2337
+ return super.parse(e, t, r, n, a);
2338
+ }
2339
+ }, it = null, Ks = () => (it || (it = new Gs()), it);
2340
+ function mt(e, t = {}) {
2341
+ let { canSelfClose: r = !1, allowHtmComponentClosingTags: n = !1, isTagNameCaseSensitive: a = !1, getTagContentType: i, tokenizeAngularBlocks: s = !1, tokenizeAngularLetDeclaration: o = !1, enableAngularSelectorlessSyntax: l = !1 } = t;
2342
+ return Ks().parse(e, "angular-html-parser", { tokenizeExpansionForms: s, canSelfClose: r, allowHtmComponentClosingTags: n, tokenizeBlocks: s, tokenizeLet: o, selectorlessEnabled: l }, a, i);
2343
+ }
2344
+ var Ys = [Qs, Zs, to, no, ao, oo, io, so, uo, ro];
2345
+ function Js(e, t) {
2346
+ for (let r of Ys) r(e, t);
2347
+ return e;
2348
+ }
2349
+ function Qs(e) {
2350
+ e.walk((t) => {
2351
+ if (t.kind === "element" && t.tagDefinition.ignoreFirstLf && t.children.length > 0 && t.children[0].kind === "text" && t.children[0].value[0] === `
2352
+ `) {
2353
+ let r = t.children[0];
2354
+ r.value.length === 1 ? t.removeChild(r) : r.value = r.value.slice(1);
2355
+ }
2356
+ });
2357
+ }
2358
+ function Zs(e) {
2359
+ let t = (r) => {
2360
+ var n, a;
2361
+ return r.kind === "element" && ((n = r.prev) == null ? void 0 : n.kind) === "ieConditionalStartComment" && r.prev.sourceSpan.end.offset === r.startSourceSpan.start.offset && ((a = r.firstChild) == null ? void 0 : a.kind) === "ieConditionalEndComment" && r.firstChild.sourceSpan.start.offset === r.startSourceSpan.end.offset;
2362
+ };
2363
+ e.walk((r) => {
2364
+ if (r.children) for (let n = 0; n < r.children.length; n++) {
2365
+ let a = r.children[n];
2366
+ if (!t(a)) continue;
2367
+ let i = a.prev, s = a.firstChild;
2368
+ r.removeChild(i), n--;
2369
+ let o = new d(i.sourceSpan.start, s.sourceSpan.end), l = new d(o.start, a.sourceSpan.end);
2370
+ a.condition = i.condition, a.sourceSpan = l, a.startSourceSpan = o, a.removeChild(s);
2371
+ }
2372
+ });
2373
+ }
2374
+ function eo(e, t, r) {
2375
+ e.walk((n) => {
2376
+ if (n.children) for (let a = 0; a < n.children.length; a++) {
2377
+ let i = n.children[a];
2378
+ if (i.kind !== "text" && !t(i)) continue;
2379
+ i.kind !== "text" && (i.kind = "text", i.value = r(i));
2380
+ let s = i.prev;
2381
+ !s || s.kind !== "text" || (s.value += i.value, s.sourceSpan = new d(s.sourceSpan.start, i.sourceSpan.end), n.removeChild(i), a--);
2382
+ }
2383
+ });
2384
+ }
2385
+ function to(e) {
2386
+ return eo(e, (t) => t.kind === "cdata", (t) => `<![CDATA[${t.value}]]>`);
2387
+ }
2388
+ function ro(e) {
2389
+ let t = (r) => {
2390
+ var n, a;
2391
+ return r.kind === "element" && r.attrs.length === 0 && r.children.length === 1 && r.firstChild.kind === "text" && !N.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.kind) === "text" && ((a = r.next) == null ? void 0 : a.kind) === "text";
2392
+ };
2393
+ e.walk((r) => {
2394
+ if (r.children) for (let n = 0; n < r.children.length; n++) {
2395
+ let a = r.children[n];
2396
+ if (!t(a)) continue;
2397
+ let i = a.prev, s = a.next;
2398
+ 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);
2399
+ }
2400
+ });
2401
+ }
2402
+ function no(e, t) {
2403
+ if (t.parser === "html") return;
2404
+ let r = /\{\{(.+?)\}\}/su;
2405
+ e.walk((n) => {
2406
+ if (wa(n, t)) for (let a of n.children) {
2407
+ if (a.kind !== "text") continue;
2408
+ let i = a.sourceSpan.start, s = null, o = a.value.split(r);
2409
+ for (let l = 0; l < o.length; l++, i = s) {
2410
+ let c = o[l];
2411
+ if (l % 2 === 0) {
2412
+ s = i.moveBy(c.length), c.length > 0 && n.insertChildBefore(a, { kind: "text", value: c, sourceSpan: new d(i, s) });
2413
+ continue;
2414
+ }
2415
+ s = i.moveBy(c.length + 4), n.insertChildBefore(a, { kind: "interpolation", sourceSpan: new d(i, s), children: c.length === 0 ? [] : [{ kind: "text", value: c, sourceSpan: new d(i.moveBy(2), s.moveBy(-2)) }] });
2416
+ }
2417
+ n.removeChild(a);
2418
+ }
2419
+ });
2420
+ }
2421
+ function ao(e, t) {
2422
+ e.walk((r) => {
2423
+ let n = r.$children;
2424
+ if (!n) return;
2425
+ if (n.length === 0 || n.length === 1 && n[0].kind === "text" && N.trim(n[0].value).length === 0) {
2426
+ r.hasDanglingSpaces = n.length > 0, r.$children = [];
2427
+ return;
2428
+ }
2429
+ let a = ya(r, t), i = qr(r);
2430
+ if (!a) for (let s = 0; s < n.length; s++) {
2431
+ let o = n[s];
2432
+ if (o.kind !== "text") continue;
2433
+ let { leadingWhitespace: l, text: c, trailingWhitespace: p } = ka(o.value), g = o.prev, f = o.next;
2434
+ c ? (o.value = c, o.sourceSpan = new d(o.sourceSpan.start.moveBy(l.length), o.sourceSpan.end.moveBy(-p.length)), l && (g && (g.hasTrailingSpaces = !0), o.hasLeadingSpaces = !0), p && (o.hasTrailingSpaces = !0, f && (f.hasLeadingSpaces = !0))) : (r.removeChild(o), s--, (l || p) && (g && (g.hasTrailingSpaces = !0), f && (f.hasLeadingSpaces = !0)));
2435
+ }
2436
+ r.isWhitespaceSensitive = a, r.isIndentationSensitive = i;
2437
+ });
2438
+ }
2439
+ function io(e) {
2440
+ e.walk((t) => {
2441
+ t.isSelfClosing = !t.children || t.kind === "element" && (t.tagDefinition.isVoid || t.endSourceSpan && t.startSourceSpan.start === t.endSourceSpan.start && t.startSourceSpan.end === t.endSourceSpan.end);
2442
+ });
2443
+ }
2444
+ function so(e, t) {
2445
+ e.walk((r) => {
2446
+ r.kind === "element" && (r.hasHtmComponentClosingTag = r.endSourceSpan && /^<\s*\/\s*\/\s*>$/u.test(t.originalText.slice(r.endSourceSpan.start.offset, r.endSourceSpan.end.offset)));
2447
+ });
2448
+ }
2449
+ function oo(e, t) {
2450
+ e.walk((r) => {
2451
+ r.cssDisplay = Wa(r, t);
2452
+ });
2453
+ }
2454
+ function uo(e, t) {
2455
+ e.walk((r) => {
2456
+ let { children: n } = r;
2457
+ if (n) {
2458
+ if (n.length === 0) {
2459
+ r.isDanglingSpaceSensitive = Na(r, t);
2460
+ return;
2461
+ }
2462
+ for (let a of n) a.isLeadingSpaceSensitive = Da(a, t), a.isTrailingSpaceSensitive = xa(a, t);
2463
+ for (let a = 0; a < n.length; a++) {
2464
+ let i = n[a];
2465
+ i.isLeadingSpaceSensitive = (a === 0 || i.prev.isTrailingSpaceSensitive) && i.isLeadingSpaceSensitive, i.isTrailingSpaceSensitive = (a === n.length - 1 || i.next.isLeadingSpaceSensitive) && i.isTrailingSpaceSensitive;
2466
+ }
2467
+ }
2468
+ });
2469
+ }
2470
+ var lo = Js;
2471
+ function co(e, t, r) {
2472
+ let { node: n } = e;
2473
+ switch (n.kind) {
2474
+ case "root":
2475
+ return t.__onHtmlRoot && t.__onHtmlRoot(n), [A(Ot(e, t, r)), v];
2476
+ case "element":
2477
+ case "ieConditionalComment":
2478
+ return us(e, t, r);
2479
+ case "angularControlFlowBlock":
2480
+ return ns(e, t, r);
2481
+ case "angularControlFlowBlockParameters":
2482
+ return is(e, t, r);
2483
+ case "angularControlFlowBlockParameter":
2484
+ return N.trim(n.expression);
2485
+ case "angularLetDeclaration":
2486
+ return A(["@let ", A([n.id, " =", A(F([S, r("init")]))]), ";"]);
2487
+ case "angularLetDeclarationInitializer":
2488
+ return n.value;
2489
+ case "angularIcuExpression":
2490
+ return ss(e, t, r);
2491
+ case "angularIcuCase":
2492
+ return os(e, t, r);
2493
+ case "ieConditionalStartComment":
2494
+ case "ieConditionalEndComment":
2495
+ return [ge(n), me(n)];
2496
+ case "interpolation":
2497
+ return [ge(n, t), ...e.map(r, "children"), me(n, t)];
2498
+ case "text": {
2499
+ if (n.parent.kind === "interpolation") {
2500
+ let o = /\n[^\S\n]*$/u, l = o.test(n.value), c = l ? n.value.replace(o, "") : n.value;
2501
+ return [O(c), l ? v : ""];
2502
+ }
2503
+ let a = X(n, t), i = Gr(n), s = $(n, t);
2504
+ return i[0] = [a, i[0]], i.push([i.pop(), s]), Nr(i);
2505
+ }
2506
+ case "docType":
2507
+ return [A([ge(n, t), " ", b(0, n.value.replace(/^html\b/iu, "html"), /\s+/gu, " ")]), me(n, t)];
2508
+ case "comment":
2509
+ return [X(n, t), O(t.originalText.slice(we(n), $e(n))), $(n, t)];
2510
+ case "attribute": {
2511
+ if (n.value === null) return n.rawName;
2512
+ let a = Xr(n.value), i = Yr(n, t) ? "" : zn(a, '"');
2513
+ return [n.rawName, "=", i, O(i === '"' ? b(0, a, '"', "&quot;") : b(0, a, "'", "&apos;")), i];
2514
+ }
2515
+ case "frontMatter":
2516
+ case "cdata":
2517
+ default:
2518
+ throw new Jn(n, "HTML");
2519
+ }
2520
+ }
2521
+ var po = { features: { experimental_frontMatterSupport: { massageAstNode: !0, embed: !0, print: !0 } }, preprocess: lo, print: co, insertPragma: ts, massageAstNode: ea, embed: Ui, getVisitorKeys: Ki }, ho = po, mo = [{ name: "Angular", type: "markup", aceMode: "html", extensions: [".component.html"], tmScope: "text.html.basic", aliases: ["xhtml"], codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", parsers: ["angular"], vscodeLanguageIds: ["html"], filenames: [], linguistLanguageId: 146 }, { name: "HTML", type: "markup", aceMode: "html", extensions: [".html", ".hta", ".htm", ".html.hl", ".inc", ".xht", ".xhtml"], tmScope: "text.html.basic", aliases: ["xhtml"], codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", parsers: ["html"], vscodeLanguageIds: ["html"], linguistLanguageId: 146 }, { name: "Lightning Web Components", type: "markup", aceMode: "html", extensions: [], tmScope: "text.html.basic", aliases: ["xhtml"], codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", parsers: ["lwc"], vscodeLanguageIds: ["html"], filenames: [], linguistLanguageId: 146 }, { name: "MJML", type: "markup", aceMode: "html", extensions: [".mjml"], tmScope: "text.mjml.basic", aliases: ["MJML", "mjml"], codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", parsers: ["mjml"], filenames: [], vscodeLanguageIds: ["mjml"], linguistLanguageId: 146 }, { name: "Vue", type: "markup", aceMode: "vue", extensions: [".vue"], tmScope: "source.vue", codemirrorMode: "vue", codemirrorMimeType: "text/x-vue", parsers: ["vue"], vscodeLanguageIds: ["vue"], linguistLanguageId: 391 }], pr = { 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." } }, hr = "HTML", go = { bracketSameLine: pr.bracketSameLine, htmlWhitespaceSensitivity: { category: hr, 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: pr.singleAttributePerLine, vueIndentScriptAndStyle: { category: hr, type: "boolean", default: !1, description: "Indent script and style tags in Vue files." } }, fo = go, hn = {};
2522
+ Er(hn, { angular: () => zo, html: () => Vo, lwc: () => jo, mjml: () => Wo, vue: () => $o });
2523
+ function _o(e, t) {
2524
+ let r = new SyntaxError(e + " (" + t.loc.start.line + ":" + t.loc.start.column + ")");
2525
+ return Object.assign(r, t);
2526
+ }
2527
+ var Co = _o, Eo = { canSelfClose: !0, normalizeTagName: !1, normalizeAttributeName: !1, allowHtmComponentClosingTags: !1, isTagNameCaseSensitive: !1, shouldParseFrontMatter: !0 };
2528
+ function dn(e) {
2529
+ return { ...Eo, ...e };
2530
+ }
2531
+ function mn(e) {
2532
+ let { canSelfClose: t, allowHtmComponentClosingTags: r, isTagNameCaseSensitive: n, shouldParseAsRawText: a, tokenizeAngularBlocks: i, tokenizeAngularLetDeclaration: s } = e;
2533
+ return { canSelfClose: t, allowHtmComponentClosingTags: r, isTagNameCaseSensitive: n, getTagContentType: a ? (...o) => a(...o) ? R.RAW_TEXT : void 0 : void 0, tokenizeAngularBlocks: i, tokenizeAngularLetDeclaration: s };
2534
+ }
2535
+ var st = /* @__PURE__ */ new Map([["*", /* @__PURE__ */ new Set(["accesskey", "autocapitalize", "autocorrect", "autofocus", "class", "contenteditable", "dir", "draggable", "enterkeyhint", "exportparts", "hidden", "id", "inert", "inputmode", "is", "itemid", "itemprop", "itemref", "itemscope", "itemtype", "lang", "nonce", "part", "popover", "slot", "spellcheck", "style", "tabindex", "title", "translate", "writingsuggestions"])], ["a", /* @__PURE__ */ new Set(["charset", "coords", "download", "href", "hreflang", "name", "ping", "referrerpolicy", "rel", "rev", "shape", "target", "type"])], ["applet", /* @__PURE__ */ new Set(["align", "alt", "archive", "code", "codebase", "height", "hspace", "name", "object", "vspace", "width"])], ["area", /* @__PURE__ */ new Set(["alt", "coords", "download", "href", "hreflang", "nohref", "ping", "referrerpolicy", "rel", "shape", "target", "type"])], ["audio", /* @__PURE__ */ new Set(["autoplay", "controls", "crossorigin", "loop", "muted", "preload", "src"])], ["base", /* @__PURE__ */ new Set(["href", "target"])], ["basefont", /* @__PURE__ */ new Set(["color", "face", "size"])], ["blockquote", /* @__PURE__ */ new Set(["cite"])], ["body", /* @__PURE__ */ new Set(["alink", "background", "bgcolor", "link", "text", "vlink"])], ["br", /* @__PURE__ */ new Set(["clear"])], ["button", /* @__PURE__ */ new Set(["command", "commandfor", "disabled", "form", "formaction", "formenctype", "formmethod", "formnovalidate", "formtarget", "name", "popovertarget", "popovertargetaction", "type", "value"])], ["canvas", /* @__PURE__ */ new Set(["height", "width"])], ["caption", /* @__PURE__ */ new Set(["align"])], ["col", /* @__PURE__ */ new Set(["align", "char", "charoff", "span", "valign", "width"])], ["colgroup", /* @__PURE__ */ new Set(["align", "char", "charoff", "span", "valign", "width"])], ["data", /* @__PURE__ */ new Set(["value"])], ["del", /* @__PURE__ */ new Set(["cite", "datetime"])], ["details", /* @__PURE__ */ new Set(["name", "open"])], ["dialog", /* @__PURE__ */ new Set(["closedby", "open"])], ["dir", /* @__PURE__ */ new Set(["compact"])], ["div", /* @__PURE__ */ new Set(["align"])], ["dl", /* @__PURE__ */ new Set(["compact"])], ["embed", /* @__PURE__ */ new Set(["height", "src", "type", "width"])], ["fieldset", /* @__PURE__ */ new Set(["disabled", "form", "name"])], ["font", /* @__PURE__ */ new Set(["color", "face", "size"])], ["form", /* @__PURE__ */ new Set(["accept", "accept-charset", "action", "autocomplete", "enctype", "method", "name", "novalidate", "target"])], ["frame", /* @__PURE__ */ new Set(["frameborder", "longdesc", "marginheight", "marginwidth", "name", "noresize", "scrolling", "src"])], ["frameset", /* @__PURE__ */ new Set(["cols", "rows"])], ["h1", /* @__PURE__ */ new Set(["align"])], ["h2", /* @__PURE__ */ new Set(["align"])], ["h3", /* @__PURE__ */ new Set(["align"])], ["h4", /* @__PURE__ */ new Set(["align"])], ["h5", /* @__PURE__ */ new Set(["align"])], ["h6", /* @__PURE__ */ new Set(["align"])], ["head", /* @__PURE__ */ new Set(["profile"])], ["hr", /* @__PURE__ */ new Set(["align", "noshade", "size", "width"])], ["html", /* @__PURE__ */ new Set(["manifest", "version"])], ["iframe", /* @__PURE__ */ new Set(["align", "allow", "allowfullscreen", "allowpaymentrequest", "allowusermedia", "frameborder", "height", "loading", "longdesc", "marginheight", "marginwidth", "name", "referrerpolicy", "sandbox", "scrolling", "src", "srcdoc", "width"])], ["img", /* @__PURE__ */ new Set(["align", "alt", "border", "crossorigin", "decoding", "fetchpriority", "height", "hspace", "ismap", "loading", "longdesc", "name", "referrerpolicy", "sizes", "src", "srcset", "usemap", "vspace", "width"])], ["input", /* @__PURE__ */ new Set(["accept", "align", "alpha", "alt", "autocomplete", "checked", "colorspace", "dirname", "disabled", "form", "formaction", "formenctype", "formmethod", "formnovalidate", "formtarget", "height", "ismap", "list", "max", "maxlength", "min", "minlength", "multiple", "name", "pattern", "placeholder", "popovertarget", "popovertargetaction", "readonly", "required", "size", "src", "step", "type", "usemap", "value", "width"])], ["ins", /* @__PURE__ */ new Set(["cite", "datetime"])], ["isindex", /* @__PURE__ */ new Set(["prompt"])], ["label", /* @__PURE__ */ new Set(["for", "form"])], ["legend", /* @__PURE__ */ new Set(["align"])], ["li", /* @__PURE__ */ new Set(["type", "value"])], ["link", /* @__PURE__ */ new Set(["as", "blocking", "charset", "color", "crossorigin", "disabled", "fetchpriority", "href", "hreflang", "imagesizes", "imagesrcset", "integrity", "media", "referrerpolicy", "rel", "rev", "sizes", "target", "type"])], ["map", /* @__PURE__ */ new Set(["name"])], ["menu", /* @__PURE__ */ new Set(["compact"])], ["meta", /* @__PURE__ */ new Set(["charset", "content", "http-equiv", "media", "name", "scheme"])], ["meter", /* @__PURE__ */ new Set(["high", "low", "max", "min", "optimum", "value"])], ["object", /* @__PURE__ */ new Set(["align", "archive", "border", "classid", "codebase", "codetype", "data", "declare", "form", "height", "hspace", "name", "standby", "type", "typemustmatch", "usemap", "vspace", "width"])], ["ol", /* @__PURE__ */ new Set(["compact", "reversed", "start", "type"])], ["optgroup", /* @__PURE__ */ new Set(["disabled", "label"])], ["option", /* @__PURE__ */ new Set(["disabled", "label", "selected", "value"])], ["output", /* @__PURE__ */ new Set(["for", "form", "name"])], ["p", /* @__PURE__ */ new Set(["align"])], ["param", /* @__PURE__ */ new Set(["name", "type", "value", "valuetype"])], ["pre", /* @__PURE__ */ new Set(["width"])], ["progress", /* @__PURE__ */ new Set(["max", "value"])], ["q", /* @__PURE__ */ new Set(["cite"])], ["script", /* @__PURE__ */ new Set(["async", "blocking", "charset", "crossorigin", "defer", "fetchpriority", "integrity", "language", "nomodule", "referrerpolicy", "src", "type"])], ["select", /* @__PURE__ */ new Set(["autocomplete", "disabled", "form", "multiple", "name", "required", "size"])], ["slot", /* @__PURE__ */ new Set(["name"])], ["source", /* @__PURE__ */ new Set(["height", "media", "sizes", "src", "srcset", "type", "width"])], ["style", /* @__PURE__ */ new Set(["blocking", "media", "type"])], ["table", /* @__PURE__ */ new Set(["align", "bgcolor", "border", "cellpadding", "cellspacing", "frame", "rules", "summary", "width"])], ["tbody", /* @__PURE__ */ new Set(["align", "char", "charoff", "valign"])], ["td", /* @__PURE__ */ new Set(["abbr", "align", "axis", "bgcolor", "char", "charoff", "colspan", "headers", "height", "nowrap", "rowspan", "scope", "valign", "width"])], ["template", /* @__PURE__ */ new Set(["shadowrootclonable", "shadowrootcustomelementregistry", "shadowrootdelegatesfocus", "shadowrootmode", "shadowrootserializable"])], ["textarea", /* @__PURE__ */ new Set(["autocomplete", "cols", "dirname", "disabled", "form", "maxlength", "minlength", "name", "placeholder", "readonly", "required", "rows", "wrap"])], ["tfoot", /* @__PURE__ */ new Set(["align", "char", "charoff", "valign"])], ["th", /* @__PURE__ */ new Set(["abbr", "align", "axis", "bgcolor", "char", "charoff", "colspan", "headers", "height", "nowrap", "rowspan", "scope", "valign", "width"])], ["thead", /* @__PURE__ */ new Set(["align", "char", "charoff", "valign"])], ["time", /* @__PURE__ */ new Set(["datetime"])], ["tr", /* @__PURE__ */ new Set(["align", "bgcolor", "char", "charoff", "valign"])], ["track", /* @__PURE__ */ new Set(["default", "kind", "label", "src", "srclang"])], ["ul", /* @__PURE__ */ new Set(["compact", "type"])], ["video", /* @__PURE__ */ new Set(["autoplay", "controls", "crossorigin", "height", "loop", "muted", "playsinline", "poster", "preload", "src", "width"])]]), vo = /* @__PURE__ */ new Set(["a", "abbr", "acronym", "address", "applet", "area", "article", "aside", "audio", "b", "base", "basefont", "bdi", "bdo", "bgsound", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "command", "content", "data", "datalist", "dd", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "em", "embed", "fencedframe", "fieldset", "figcaption", "figure", "font", "footer", "form", "frame", "frameset", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "iframe", "image", "img", "input", "ins", "isindex", "kbd", "keygen", "label", "legend", "li", "link", "listing", "main", "map", "mark", "marquee", "math", "menu", "menuitem", "meta", "meter", "multicol", "nav", "nextid", "nobr", "noembed", "noframes", "noscript", "object", "ol", "optgroup", "option", "output", "p", "param", "picture", "plaintext", "pre", "progress", "q", "rb", "rbc", "rp", "rt", "rtc", "ruby", "s", "samp", "script", "search", "section", "select", "selectedcontent", "shadow", "slot", "small", "source", "spacer", "span", "strike", "strong", "style", "sub", "summary", "sup", "svg", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "title", "tr", "track", "tt", "u", "ul", "var", "video", "wbr", "xmp"]), Ie = { attrs: !0, children: !0, cases: !0, expression: !0 }, dr = /* @__PURE__ */ new Set(["parent"]), Q, gt, ft, So = class de {
2536
+ constructor(t = {}) {
2537
+ Sn(this, Q), qt(this, "kind"), qt(this, "parent");
2538
+ for (let r of /* @__PURE__ */ new Set([...dr, ...Object.keys(t)])) this.setProperty(r, t[r]);
2539
+ if (Ue(t)) for (let r of Object.getOwnPropertySymbols(t)) this.setProperty(r, t[r]);
2540
+ }
2541
+ setProperty(t, r) {
2542
+ if (this[t] !== r) {
2543
+ if (t in Ie && (r = r.map((n) => this.createChild(n))), !dr.has(t)) {
2544
+ this[t] = r;
2545
+ return;
2546
+ }
2547
+ Object.defineProperty(this, t, { value: r, enumerable: !1, configurable: !0 });
2548
+ }
2549
+ }
2550
+ map(t) {
2551
+ let r;
2552
+ for (let n in Ie) {
2553
+ let a = this[n];
2554
+ if (a) {
2555
+ let i = To(a, (s) => s.map(t));
2556
+ r !== a && (r || (r = new de({ parent: this.parent })), r.setProperty(n, i));
2557
+ }
2558
+ }
2559
+ if (r) for (let n in this) n in Ie || (r[n] = this[n]);
2560
+ return t(r || this);
2561
+ }
2562
+ walk(t) {
2563
+ for (let r in Ie) {
2564
+ let n = this[r];
2565
+ if (n) for (let a = 0; a < n.length; a++) n[a].walk(t);
2566
+ }
2567
+ t(this);
2568
+ }
2569
+ createChild(t) {
2570
+ let r = t instanceof de ? t.clone() : new de(t);
2571
+ return r.setProperty("parent", this), r;
2572
+ }
2573
+ insertChildBefore(t, r) {
2574
+ let n = this.$children;
2575
+ n.splice(n.indexOf(t), 0, this.createChild(r));
2576
+ }
2577
+ removeChild(t) {
2578
+ let r = this.$children;
2579
+ r.splice(r.indexOf(t), 1);
2580
+ }
2581
+ replaceChild(t, r) {
2582
+ let n = this.$children;
2583
+ n[n.indexOf(t)] = this.createChild(r);
2584
+ }
2585
+ clone() {
2586
+ return new de(this);
2587
+ }
2588
+ get $children() {
2589
+ return this[Be(this, Q, gt)];
2590
+ }
2591
+ set $children(t) {
2592
+ this[Be(this, Q, gt)] = t;
2593
+ }
2594
+ get firstChild() {
2595
+ var t;
2596
+ return (t = this.$children) == null ? void 0 : t[0];
2597
+ }
2598
+ get lastChild() {
2599
+ return ee(1, this.$children, -1);
2600
+ }
2601
+ get prev() {
2602
+ let t = Be(this, Q, ft);
2603
+ return t[t.indexOf(this) - 1];
2604
+ }
2605
+ get next() {
2606
+ let t = Be(this, Q, ft);
2607
+ return t[t.indexOf(this) + 1];
2608
+ }
2609
+ get rawName() {
2610
+ return this.hasExplicitNamespace ? this.fullName : this.name;
2611
+ }
2612
+ get fullName() {
2613
+ return this.namespace ? this.namespace + ":" + this.name : this.name;
2614
+ }
2615
+ get attrMap() {
2616
+ return Object.fromEntries(this.attrs.map((t) => [t.fullName, t.value]));
2617
+ }
2618
+ };
2619
+ Q = /* @__PURE__ */ new WeakSet(), gt = function() {
2620
+ return this.kind === "angularIcuCase" ? "expression" : this.kind === "angularIcuExpression" ? "cases" : "children";
2621
+ }, ft = function() {
2622
+ var e;
2623
+ return ((e = this.parent) == null ? void 0 : e.$children) ?? [];
2624
+ };
2625
+ var Ao = So;
2626
+ function To(e, t) {
2627
+ let r = e.map(t);
2628
+ return r.some((n, a) => n !== e[a]) ? r : e;
2629
+ }
2630
+ var ko = [{ regex: /^(?<openingTagSuffix>\[if(?<condition>[^\]]*)\]>)(?<data>.*?)<!\s*\[endif\]$/su, parse: wo }, { regex: /^\[if(?<condition>[^\]]*)\]><!$/u, parse: yo }, { regex: /^<!\s*\[endif\]$/u, parse: Do }];
2631
+ function bo(e, t) {
2632
+ if (e.value) for (let { regex: r, parse: n } of ko) {
2633
+ let a = e.value.match(r);
2634
+ if (a) return n(e, a, t);
2635
+ }
2636
+ return null;
2637
+ }
2638
+ function wo(e, t, r) {
2639
+ let { openingTagSuffix: n, condition: a, data: i } = t.groups, s = 4 + n.length, o = e.sourceSpan.start.moveBy(s), l = o.moveBy(i.length), [c, p] = (() => {
2640
+ try {
2641
+ return [!0, r(i, o).children];
2642
+ } catch {
2643
+ return [!1, [{ kind: "text", value: i, sourceSpan: new d(o, l) }]];
2644
+ }
2645
+ })();
2646
+ return { kind: "ieConditionalComment", complete: c, children: p, condition: b(0, a.trim(), /\s+/gu, " "), sourceSpan: e.sourceSpan, startSourceSpan: new d(e.sourceSpan.start, o), endSourceSpan: new d(l, e.sourceSpan.end) };
2647
+ }
2648
+ function yo(e, t) {
2649
+ let { condition: r } = t.groups;
2650
+ return { kind: "ieConditionalStartComment", condition: b(0, r.trim(), /\s+/gu, " "), sourceSpan: e.sourceSpan };
2651
+ }
2652
+ function Do(e) {
2653
+ return { kind: "ieConditionalEndComment", sourceSpan: e.sourceSpan };
2654
+ }
2655
+ var xo = class extends xs {
2656
+ visitExpansionCase(e, t) {
2657
+ t.parseOptions.name === "angular" && this.visitChildren(t, (r) => {
2658
+ r(e.expression);
2659
+ });
2660
+ }
2661
+ visit(e, { parseOptions: t }) {
2662
+ Fo(e), Po(e, t), Ro(e, t), Io(e);
2663
+ }
2664
+ };
2665
+ function No(e, t, r, n) {
2666
+ un(new xo(), e.children, { parseOptions: r }), t && e.children.unshift(t);
2667
+ let a = new Ao(e);
2668
+ return a.walk((i) => {
2669
+ if (i.kind === "comment") {
2670
+ let s = bo(i, n);
2671
+ s && i.parent.replaceChild(i, s);
2672
+ }
2673
+ Bo(i), Lo(i), Oo(i);
2674
+ }), a;
2675
+ }
2676
+ function Bo(e) {
2677
+ if (e.kind === "block") {
2678
+ if (e.name = b(0, e.name.toLowerCase(), /\s+/gu, " ").trim(), e.kind = "angularControlFlowBlock", !wt(e.parameters)) {
2679
+ delete e.parameters;
2680
+ return;
2681
+ }
2682
+ for (let t of e.parameters) t.kind = "angularControlFlowBlockParameter";
2683
+ e.parameters = { kind: "angularControlFlowBlockParameters", children: e.parameters, sourceSpan: new d(e.parameters[0].sourceSpan.start, ee(0, e.parameters, -1).sourceSpan.end) };
2684
+ }
2685
+ }
2686
+ function Lo(e) {
2687
+ e.kind === "letDeclaration" && (e.kind = "angularLetDeclaration", e.id = e.name, e.init = { kind: "angularLetDeclarationInitializer", sourceSpan: new d(e.valueSpan.start, e.valueSpan.end), value: e.value }, delete e.name, delete e.value);
2688
+ }
2689
+ function Oo(e) {
2690
+ e.kind === "expansion" && (e.kind = "angularIcuExpression"), e.kind === "expansionCase" && (e.kind = "angularIcuCase");
2691
+ }
2692
+ function mr(e, t) {
2693
+ let r = e.toLowerCase();
2694
+ return t(r) ? r : e;
2695
+ }
2696
+ function gr(e) {
2697
+ let t = e.name.startsWith(":") ? e.name.slice(1).split(":")[0] : null, r = e.nameSpan.toString(), n = t !== null && r.startsWith(`${t}:`), a = n ? r.slice(t.length + 1) : r;
2698
+ e.name = a, e.namespace = t, e.hasExplicitNamespace = n;
2699
+ }
2700
+ function Fo(e) {
2701
+ switch (e.kind) {
2702
+ case "element":
2703
+ gr(e);
2704
+ for (let t of e.attrs) gr(t), t.valueSpan ? (t.value = t.valueSpan.toString(), /["']/u.test(t.value[0]) && (t.value = t.value.slice(1, -1))) : t.value = null;
2705
+ break;
2706
+ case "comment":
2707
+ e.value = e.sourceSpan.toString().slice(4, -3);
2708
+ break;
2709
+ case "text":
2710
+ e.value = e.sourceSpan.toString();
2711
+ break;
2712
+ }
2713
+ }
2714
+ function Po(e, t) {
2715
+ if (e.kind === "element") {
2716
+ let r = lt(t.isTagNameCaseSensitive ? e.name : e.name.toLowerCase());
2717
+ !e.namespace || e.namespace === r.implicitNamespacePrefix || ke(e) ? e.tagDefinition = r : e.tagDefinition = lt("");
2718
+ }
2719
+ }
2720
+ function Io(e) {
2721
+ e.sourceSpan && e.endSourceSpan && (e.sourceSpan = new d(e.sourceSpan.start, e.endSourceSpan.end));
2722
+ }
2723
+ function Ro(e, t) {
2724
+ if (e.kind === "element" && (t.normalizeTagName && (!e.namespace || e.namespace === e.tagDefinition.implicitNamespacePrefix || ke(e)) && (e.name = mr(e.name, (r) => vo.has(r))), t.normalizeAttributeName)) for (let r of e.attrs) r.namespace || (r.name = mr(r.name, (n) => st.has(e.name) && (st.get("*").has(n) || st.get(e.name).has(n))));
2725
+ }
2726
+ function gn(e, t) {
2727
+ let { rootNodes: r, errors: n } = mt(e, mn(t));
2728
+ return n.length > 0 && _t(n[0]), { parseOptions: t, rootNodes: r };
2729
+ }
2730
+ function Mo(e, t) {
2731
+ let r = mn(t), { rootNodes: n, errors: a } = mt(e, r);
2732
+ if (n.some((l) => l.kind === "docType" && l.value === "html" || l.kind === "element" && l.name.toLowerCase() === "html")) return gn(e, Pt);
2733
+ let i, s = () => i ?? (i = mt(e, { ...r, getTagContentType: void 0 })), o = (l) => {
2734
+ let { offset: c } = l.startSourceSpan.start;
2735
+ return s().rootNodes.find((p) => p.kind === "element" && p.startSourceSpan.start.offset === c) ?? l;
2736
+ };
2737
+ for (let [l, c] of n.entries()) if (c.kind === "element") {
2738
+ if (c.isVoid) a = s().errors, n[l] = o(c);
2739
+ else if (qo(c)) {
2740
+ let { endSourceSpan: p, startSourceSpan: g } = c, f = s().errors.find((h) => h.span.start.offset > g.start.offset && h.span.start.offset < p.end.offset);
2741
+ f && _t(f), n[l] = o(c);
2742
+ }
2743
+ }
2744
+ return a.length > 0 && _t(a[0]), { parseOptions: t, rootNodes: n };
2745
+ }
2746
+ function qo(e) {
2747
+ var r;
2748
+ if (e.kind !== "element" || e.name !== "template") return !1;
2749
+ let t = (r = e.attrs.find((n) => n.name === "lang")) == null ? void 0 : r.value;
2750
+ return !t || t === "html";
2751
+ }
2752
+ function _t(e) {
2753
+ let { msg: t, span: { start: r, end: n } } = e;
2754
+ throw Co(t, { loc: { start: { line: r.line + 1, column: r.col + 1 }, end: { line: n.line + 1, column: n.col + 1 } }, cause: e });
2755
+ }
2756
+ function Ho(e, t, r, n, a, i) {
2757
+ let { offset: s } = n, o = b(0, t.slice(0, s), /[^\n]/gu, " ") + r, l = fn(o, e, { ...a, shouldParseFrontMatter: !1 }, i);
2758
+ l.sourceSpan = new d(n, ee(0, l.children, -1).sourceSpan.end);
2759
+ let c = l.children[0];
2760
+ return c.length === s ? l.children.shift() : (c.sourceSpan = new d(c.sourceSpan.start.moveBy(s), c.sourceSpan.end), c.value = c.value.slice(s)), l;
2761
+ }
2762
+ function fn(e, t, r, n = {}) {
2763
+ let { frontMatter: a, content: i } = r.shouldParseFrontMatter ? Ea(e) : { content: e }, s = new on(e, n.filepath), o = new ct(s, 0, 0, 0), l = o.moveBy(e.length), { parseOptions: c, rootNodes: p } = t(i, r), g = { kind: "root", sourceSpan: new d(o, l), children: p }, f;
2764
+ if (a) {
2765
+ let [h, _] = [a.start, a.end].map((C) => new ct(s, C.index, C.line - 1, C.column));
2766
+ f = { ...a, kind: "frontMatter", sourceSpan: new d(h, _) };
2767
+ }
2768
+ return No(g, f, c, (h, _) => Ho(t, e, h, _, c, n));
2769
+ }
2770
+ var Pt = dn({ name: "html", normalizeTagName: !0, normalizeAttributeName: !0, allowHtmComponentClosingTags: !0 });
2771
+ function xe(e) {
2772
+ let t = dn(e), r = t.name === "vue" ? Mo : gn;
2773
+ return { parse: (n, a) => fn(n, r, t, a), hasPragma: Zi, hasIgnorePragma: es, astFormat: "html", locStart: we, locEnd: $e };
2774
+ }
2775
+ var Vo = xe(Pt), Uo = /* @__PURE__ */ new Set(["mj-style", "mj-raw"]), Wo = xe({ ...Pt, name: "mjml", shouldParseAsRawText: (e) => Uo.has(e) }), zo = xe({ name: "angular", tokenizeAngularBlocks: !0, tokenizeAngularLetDeclaration: !0 }), $o = xe({ name: "vue", isTagNameCaseSensitive: !0, shouldParseAsRawText(e, t, r, n) {
2776
+ return e.toLowerCase() !== "html" && !r && (e !== "template" || n.some(({ name: a, value: i }) => a === "lang" && i !== "html" && i !== "" && i !== void 0));
2777
+ } }), jo = xe({ name: "lwc", canSelfClose: !1 }), Xo = { html: ho };
2778
+ export {
2779
+ An as default,
2780
+ mo as languages,
2781
+ fo as options,
2782
+ hn as parsers,
2783
+ Xo as printers
2784
+ };