eddyter 1.3.30

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