eddyter 1.3.44 → 1.3.51

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