eddyter 1.3.43 → 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 -0
  8. package/dist/api/auth.d.ts +108 -108
  9. package/dist/api/bugReport.d.ts +27 -0
  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 -0
  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 -7870
  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 -0
  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 -0
  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 +9 -9
  67. package/dist/components/InsertMenu/InsertMenuDrop.d.ts +9 -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 -48
  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 -0
  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 -11
  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 -19
  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 -150
  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 -76
  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-29ea2f41.js +0 -46128
  224. package/dist/html2pdf.bundle-29ea2f41.js.map +0 -1
  225. package/dist/html2pdf.bundle.min-f6392183.js +0 -21987
  226. package/dist/html2pdf.bundle.min-f6392183.js.map +0 -1
  227. package/dist/index-34ac313f.js +0 -1299
  228. package/dist/index-34ac313f.js.map +0 -1
  229. package/dist/index-4ea49f5b.js +0 -190
  230. package/dist/index-4ea49f5b.js.map +0 -1
  231. package/dist/index-636eff7f.js +0 -41423
  232. package/dist/index-636eff7f.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
@@ -1,2885 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
- var __publicField = (obj, key, value) => {
4
- __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
5
- return value;
6
- };
7
- var sn = Object.defineProperty;
8
- var an = (t7) => {
9
- throw TypeError(t7);
10
- };
11
- var li = (t7, e, r) => e in t7 ? sn(t7, e, { enumerable: true, configurable: true, writable: true, value: r }) : t7[e] = r;
12
- var on = (t7, e) => {
13
- for (var r in e)
14
- sn(t7, r, { get: e[r], enumerable: true });
15
- };
16
- var lr = (t7, e, r) => li(t7, typeof e != "symbol" ? e + "" : e, r), un = (t7, e, r) => e.has(t7) || an("Cannot " + r);
17
- var R = (t7, e, r) => (un(t7, e, "read from private field"), r ? r.call(t7) : e.get(t7)), Et = (t7, e, r) => e.has(t7) ? an("Cannot add the same private member more than once") : e instanceof WeakSet ? e.add(t7) : e.set(t7, r), ln = (t7, e, r, n) => (un(t7, e, "write to private field"), n ? n.call(t7, r) : e.set(t7, r), r);
18
- var en = {};
19
- on(en, { languages: () => xs, options: () => Bs, parsers: () => Zr, printers: () => Uo });
20
- var ci = (t7, e, r, n) => {
21
- if (!(t7 && e == null))
22
- return e.replaceAll ? e.replaceAll(r, n) : r.global ? e.replace(r, n) : e.split(r).join(n);
23
- }, w = ci;
24
- var ye = "string", Ge = "array", Ye = "cursor", we = "indent", be = "align", je = "trim", Te = "group", xe = "fill", ce = "if-break", ke = "indent-if-break", Ke = "line-suffix", Qe = "line-suffix-boundary", j = "line", Xe = "label", Be = "break-parent", At = /* @__PURE__ */ new Set([Ye, we, be, je, Te, xe, ce, ke, Ke, Qe, j, Xe, Be]);
25
- var pi = (t7, e, r) => {
26
- if (!(t7 && e == null))
27
- return Array.isArray(e) || typeof e == "string" ? e[r < 0 ? e.length + r : r] : e.at(r);
28
- }, K = pi;
29
- function hi(t7) {
30
- if (typeof t7 == "string")
31
- return ye;
32
- if (Array.isArray(t7))
33
- return Ge;
34
- if (!t7)
35
- return;
36
- let { type: e } = t7;
37
- if (At.has(e))
38
- return e;
39
- }
40
- var Le = hi;
41
- var fi = (t7) => new Intl.ListFormat("en-US", { type: "disjunction" }).format(t7);
42
- function mi(t7) {
43
- let e = t7 === null ? "null" : typeof t7;
44
- if (e !== "string" && e !== "object")
45
- return `Unexpected doc '${e}',
46
- Expected it to be 'string' or 'object'.`;
47
- if (Le(t7))
48
- throw new Error("doc is valid.");
49
- let r = Object.prototype.toString.call(t7);
50
- if (r !== "[object Object]")
51
- return `Unexpected doc '${r}'.`;
52
- let n = fi([...At].map((s) => `'${s}'`));
53
- return `Unexpected doc.type '${t7.type}'.
54
- Expected it to be ${n}.`;
55
- }
56
- var cr = class extends Error {
57
- constructor(e) {
58
- super(mi(e));
59
- __publicField(this, "name", "InvalidDocError");
60
- this.doc = e;
61
- }
62
- }, pr = cr;
63
- function hr(t7, e) {
64
- if (typeof t7 == "string")
65
- return e(t7);
66
- let r = /* @__PURE__ */ new Map();
67
- return n(t7);
68
- function n(i) {
69
- if (r.has(i))
70
- return r.get(i);
71
- let a = s(i);
72
- return r.set(i, a), a;
73
- }
74
- function s(i) {
75
- switch (Le(i)) {
76
- case Ge:
77
- return e(i.map(n));
78
- case xe:
79
- return e({ ...i, parts: i.parts.map(n) });
80
- case ce:
81
- return e({ ...i, breakContents: n(i.breakContents), flatContents: n(i.flatContents) });
82
- case Te: {
83
- let { expandedStates: a, contents: o } = i;
84
- return a ? (a = a.map(n), o = a[0]) : o = n(o), e({ ...i, contents: o, expandedStates: a });
85
- }
86
- case be:
87
- case we:
88
- case ke:
89
- case Xe:
90
- case Ke:
91
- return e({ ...i, contents: n(i.contents) });
92
- case ye:
93
- case Ye:
94
- case je:
95
- case Qe:
96
- case j:
97
- case Be:
98
- return e(i);
99
- default:
100
- throw new pr(i);
101
- }
102
- }
103
- }
104
- function B(t7, e = cn) {
105
- return hr(t7, (r) => typeof r == "string" ? H(e, r.split(`
106
- `)) : r);
107
- }
108
- var fr = () => {
109
- }, mr = fr;
110
- function k(t7) {
111
- return { type: we, contents: t7 };
112
- }
113
- function hn(t7, e) {
114
- return { type: be, contents: e, n: t7 };
115
- }
116
- function E(t7, e = {}) {
117
- return mr(e.expandedStates), { type: Te, id: e.id, contents: t7, break: !!e.shouldBreak, expandedStates: e.expandedStates };
118
- }
119
- function fn(t7) {
120
- return hn(Number.NEGATIVE_INFINITY, t7);
121
- }
122
- function mn(t7) {
123
- return hn({ type: "root" }, t7);
124
- }
125
- function Dt(t7) {
126
- return { type: xe, parts: t7 };
127
- }
128
- function pe(t7, e = "", r = {}) {
129
- return { type: ce, breakContents: t7, flatContents: e, groupId: r.groupId };
130
- }
131
- function dn(t7, e) {
132
- return { type: ke, contents: t7, groupId: e.groupId, negate: e.negate };
133
- }
134
- var se = { type: Be };
135
- var gi = { type: j, hard: true }, Ci = { type: j, hard: true, literal: true }, _ = { type: j }, v = { type: j, soft: true }, S = [gi, se], cn = [Ci, se];
136
- function H(t7, e) {
137
- let r = [];
138
- for (let n = 0; n < e.length; n++)
139
- n !== 0 && r.push(t7), r.push(e[n]);
140
- return r;
141
- }
142
- var vt = "'", gn = '"';
143
- function Si(t7, e) {
144
- let r = e === true || e === vt ? vt : gn, n = r === vt ? gn : vt, s = 0, i = 0;
145
- for (let a of t7)
146
- a === r ? s++ : a === n && i++;
147
- return s > i ? n : r;
148
- }
149
- var Cn = Si;
150
- function dr(t7) {
151
- if (typeof t7 != "string")
152
- throw new TypeError("Expected a string");
153
- return t7.replace(/[|\\{}()[\]^$+*?.]/g, "\\$&").replace(/-/g, "\\x2d");
154
- }
155
- var V, gr = class {
156
- constructor(e) {
157
- Et(this, V);
158
- ln(this, V, new Set(e));
159
- }
160
- getLeadingWhitespaceCount(e) {
161
- let r = R(this, V), n = 0;
162
- for (let s = 0; s < e.length && r.has(e.charAt(s)); s++)
163
- n++;
164
- return n;
165
- }
166
- getTrailingWhitespaceCount(e) {
167
- let r = R(this, V), n = 0;
168
- for (let s = e.length - 1; s >= 0 && r.has(e.charAt(s)); s--)
169
- n++;
170
- return n;
171
- }
172
- getLeadingWhitespace(e) {
173
- let r = this.getLeadingWhitespaceCount(e);
174
- return e.slice(0, r);
175
- }
176
- getTrailingWhitespace(e) {
177
- let r = this.getTrailingWhitespaceCount(e);
178
- return e.slice(e.length - r);
179
- }
180
- hasLeadingWhitespace(e) {
181
- return R(this, V).has(e.charAt(0));
182
- }
183
- hasTrailingWhitespace(e) {
184
- return R(this, V).has(K(false, e, -1));
185
- }
186
- trimStart(e) {
187
- let r = this.getLeadingWhitespaceCount(e);
188
- return e.slice(r);
189
- }
190
- trimEnd(e) {
191
- let r = this.getTrailingWhitespaceCount(e);
192
- return e.slice(0, e.length - r);
193
- }
194
- trim(e) {
195
- return this.trimEnd(this.trimStart(e));
196
- }
197
- split(e, r = false) {
198
- let n = `[${dr([...R(this, V)].join(""))}]+`, s = new RegExp(r ? `(${n})` : n, "u");
199
- return e.split(s);
200
- }
201
- hasWhitespaceCharacter(e) {
202
- let r = R(this, V);
203
- return Array.prototype.some.call(e, (n) => r.has(n));
204
- }
205
- hasNonWhitespaceCharacter(e) {
206
- let r = R(this, V);
207
- return Array.prototype.some.call(e, (n) => !r.has(n));
208
- }
209
- isWhitespaceOnly(e) {
210
- let r = R(this, V);
211
- return Array.prototype.every.call(e, (n) => r.has(n));
212
- }
213
- };
214
- V = /* @__PURE__ */ new WeakMap();
215
- var Sn = gr;
216
- var _i = [" ", `
217
- `, "\f", "\r", " "], Ei = new Sn(_i), O = Ei;
218
- var Cr = class extends Error {
219
- constructor(e, r, n = "type") {
220
- super(`Unexpected ${r} node ${n}: ${JSON.stringify(e[n])}.`);
221
- __publicField(this, "name", "UnexpectedNodeError");
222
- this.node = e;
223
- }
224
- }, _n = Cr;
225
- function Ai(t7) {
226
- return (t7 == null ? void 0 : t7.type) === "front-matter";
227
- }
228
- var Fe = Ai;
229
- var Di = /* @__PURE__ */ new Set(["sourceSpan", "startSourceSpan", "endSourceSpan", "nameSpan", "valueSpan", "keySpan", "tagDefinition", "tokens", "valueTokens", "switchValueSourceSpan", "expSourceSpan", "valueSourceSpan"]), vi = /* @__PURE__ */ new Set(["if", "else if", "for", "switch", "case"]);
230
- function En(t7, e) {
231
- var r;
232
- if (t7.type === "text" || t7.type === "comment" || Fe(t7) || t7.type === "yaml" || t7.type === "toml")
233
- return null;
234
- if (t7.type === "attribute" && delete e.value, t7.type === "docType" && delete e.value, t7.type === "angularControlFlowBlock" && ((r = t7.parameters) != null && r.children))
235
- for (let n of e.parameters.children)
236
- vi.has(t7.name) ? delete n.expression : n.expression = n.expression.trim();
237
- t7.type === "angularIcuExpression" && (e.switchValue = t7.switchValue.trim()), t7.type === "angularLetDeclarationInitializer" && delete e.value;
238
- }
239
- En.ignoredProperties = Di;
240
- var An = En;
241
- async function yi(t7, e) {
242
- if (t7.language === "yaml") {
243
- let r = t7.value.trim(), n = r ? await e(r, { parser: "yaml" }) : "";
244
- return mn([t7.startDelimiter, t7.explicitLanguage, S, n, n ? S : "", t7.endDelimiter]);
245
- }
246
- }
247
- var Dn = yi;
248
- function he(t7, e = true) {
249
- return [k([v, t7]), e ? v : ""];
250
- }
251
- function Q(t7, e) {
252
- let r = t7.type === "NGRoot" ? t7.node.type === "NGMicrosyntax" && t7.node.body.length === 1 && t7.node.body[0].type === "NGMicrosyntaxExpression" ? t7.node.body[0].expression : t7.node : t7.type === "JsExpressionRoot" ? t7.node : t7;
253
- return r && (r.type === "ObjectExpression" || r.type === "ArrayExpression" || (e.parser === "__vue_expression" || e.parser === "__vue_ts_expression") && (r.type === "TemplateLiteral" || r.type === "StringLiteral"));
254
- }
255
- async function T(t7, e, r, n) {
256
- r = { __isInHtmlAttribute: true, __embeddedInHtml: true, ...r };
257
- let s = true;
258
- n && (r.__onHtmlBindingRoot = (a, o) => {
259
- s = n(a, o);
260
- });
261
- let i = await e(t7, r, e);
262
- return s ? E(i) : he(i);
263
- }
264
- function wi(t7, e, r, n) {
265
- let { node: s } = r, i = n.originalText.slice(s.sourceSpan.start.offset, s.sourceSpan.end.offset);
266
- return /^\s*$/u.test(i) ? "" : T(i, t7, { parser: "__ng_directive", __isInHtmlAttribute: false }, Q);
267
- }
268
- var vn = wi;
269
- var bi = (t7) => String(t7).split(/[/\\]/u).pop();
270
- function yn(t7, e) {
271
- if (!e)
272
- return;
273
- let r = bi(e).toLowerCase();
274
- return t7.find(({ filenames: n }) => n == null ? void 0 : n.some((s) => s.toLowerCase() === r)) ?? t7.find(({ extensions: n }) => n == null ? void 0 : n.some((s) => r.endsWith(s)));
275
- }
276
- function Ti(t7, e) {
277
- if (e)
278
- return t7.find(({ name: r }) => r.toLowerCase() === e) ?? t7.find(({ aliases: r }) => r == null ? void 0 : r.includes(e)) ?? t7.find(({ extensions: r }) => r == null ? void 0 : r.includes(`.${e}`));
279
- }
280
- function xi(t7, e) {
281
- let r = t7.plugins.flatMap((s) => s.languages ?? []), n = Ti(r, e.language) ?? yn(r, e.physicalFile) ?? yn(r, e.file) ?? (e.physicalFile, void 0);
282
- return n == null ? void 0 : n.parsers[0];
283
- }
284
- var Ne = xi;
285
- var wn = "inline", bn = { 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" }, Tn = "normal", xn = { listing: "pre", plaintext: "pre", pre: "pre", xmp: "pre", nobr: "nowrap", table: "initial", textarea: "pre-wrap" };
286
- function ki(t7) {
287
- return t7.type === "element" && !t7.hasExplicitNamespace && !["html", "svg"].includes(t7.namespace);
288
- }
289
- var fe = ki;
290
- var Bi = (t7) => w(false, t7, /^[\t\f\r ]*\n/gu, ""), Sr = (t7) => Bi(O.trimEnd(t7)), kn = (t7) => {
291
- let e = t7, r = O.getLeadingWhitespace(e);
292
- r && (e = e.slice(r.length));
293
- let n = O.getTrailingWhitespace(e);
294
- return n && (e = e.slice(0, -n.length)), { leadingWhitespace: r, trailingWhitespace: n, text: e };
295
- };
296
- function yt(t7, e) {
297
- return !!(t7.type === "ieConditionalComment" && t7.lastChild && !t7.lastChild.isSelfClosing && !t7.lastChild.endSourceSpan || t7.type === "ieConditionalComment" && !t7.complete || me(t7) && t7.children.some((r) => r.type !== "text" && r.type !== "interpolation") || Tt(t7, e) && !W(t7) && t7.type !== "interpolation");
298
- }
299
- function de(t7) {
300
- return t7.type === "attribute" || !t7.parent || !t7.prev ? false : Li(t7.prev);
301
- }
302
- function Li(t7) {
303
- return t7.type === "comment" && t7.value.trim() === "prettier-ignore";
304
- }
305
- function $(t7) {
306
- return t7.type === "text" || t7.type === "comment";
307
- }
308
- function W(t7) {
309
- return t7.type === "element" && (t7.fullName === "script" || t7.fullName === "style" || t7.fullName === "svg:style" || t7.fullName === "svg:script" || fe(t7) && (t7.name === "script" || t7.name === "style"));
310
- }
311
- function Bn(t7) {
312
- return t7.children && !W(t7);
313
- }
314
- function Ln(t7) {
315
- return W(t7) || t7.type === "interpolation" || _r(t7);
316
- }
317
- function _r(t7) {
318
- return Vn(t7).startsWith("pre");
319
- }
320
- function Fn(t7, e) {
321
- var s, i;
322
- let r = n();
323
- if (r && !t7.prev && ((i = (s = t7.parent) == null ? void 0 : s.tagDefinition) != null && i.ignoreFirstLf))
324
- return t7.type === "interpolation";
325
- return r;
326
- function n() {
327
- return Fe(t7) || t7.type === "angularControlFlowBlock" ? false : (t7.type === "text" || t7.type === "interpolation") && t7.prev && (t7.prev.type === "text" || t7.prev.type === "interpolation") ? true : !t7.parent || t7.parent.cssDisplay === "none" ? false : me(t7.parent) ? true : !(!t7.prev && (t7.parent.type === "root" || me(t7) && t7.parent || W(t7.parent) || et(t7.parent, e) || !$i(t7.parent.cssDisplay)) || t7.prev && !qi(t7.prev.cssDisplay));
328
- }
329
- }
330
- function Nn(t7, e) {
331
- return Fe(t7) || t7.type === "angularControlFlowBlock" ? false : (t7.type === "text" || t7.type === "interpolation") && t7.next && (t7.next.type === "text" || t7.next.type === "interpolation") ? true : !t7.parent || t7.parent.cssDisplay === "none" ? false : me(t7.parent) ? true : !(!t7.next && (t7.parent.type === "root" || me(t7) && t7.parent || W(t7.parent) || et(t7.parent, e) || !Oi(t7.parent.cssDisplay)) || t7.next && !Mi(t7.next.cssDisplay));
332
- }
333
- function Pn(t7) {
334
- return Hi(t7.cssDisplay) && !W(t7);
335
- }
336
- function Je(t7) {
337
- return Fe(t7) || t7.next && t7.sourceSpan.end && t7.sourceSpan.end.line + 1 < t7.next.sourceSpan.start.line;
338
- }
339
- function In(t7) {
340
- return Er(t7) || t7.type === "element" && t7.children.length > 0 && (["body", "script", "style"].includes(t7.name) || t7.children.some((e) => Ni(e))) || t7.firstChild && t7.firstChild === t7.lastChild && t7.firstChild.type !== "text" && $n(t7.firstChild) && (!t7.lastChild.isTrailingSpaceSensitive || On(t7.lastChild));
341
- }
342
- function Er(t7) {
343
- return t7.type === "element" && t7.children.length > 0 && (["html", "head", "ul", "ol", "select"].includes(t7.name) || t7.cssDisplay.startsWith("table") && t7.cssDisplay !== "table-cell");
344
- }
345
- function wt(t7) {
346
- return Mn(t7) || t7.prev && Fi(t7.prev) || Rn(t7);
347
- }
348
- function Fi(t7) {
349
- return Mn(t7) || t7.type === "element" && t7.fullName === "br" || Rn(t7);
350
- }
351
- function Rn(t7) {
352
- return $n(t7) && On(t7);
353
- }
354
- function $n(t7) {
355
- return t7.hasLeadingSpaces && (t7.prev ? t7.prev.sourceSpan.end.line < t7.sourceSpan.start.line : t7.parent.type === "root" || t7.parent.startSourceSpan.end.line < t7.sourceSpan.start.line);
356
- }
357
- function On(t7) {
358
- return t7.hasTrailingSpaces && (t7.next ? t7.next.sourceSpan.start.line > t7.sourceSpan.end.line : t7.parent.type === "root" || t7.parent.endSourceSpan && t7.parent.endSourceSpan.start.line > t7.sourceSpan.end.line);
359
- }
360
- function Mn(t7) {
361
- switch (t7.type) {
362
- case "ieConditionalComment":
363
- case "comment":
364
- case "directive":
365
- return true;
366
- case "element":
367
- return ["script", "select"].includes(t7.name);
368
- }
369
- return false;
370
- }
371
- function bt(t7) {
372
- return t7.lastChild ? bt(t7.lastChild) : t7;
373
- }
374
- function Ni(t7) {
375
- var e;
376
- return (e = t7.children) == null ? void 0 : e.some((r) => r.type !== "text");
377
- }
378
- function qn(t7) {
379
- if (t7)
380
- switch (t7) {
381
- case "module":
382
- case "text/javascript":
383
- case "text/babel":
384
- case "application/javascript":
385
- return "babel";
386
- case "application/x-typescript":
387
- return "typescript";
388
- case "text/markdown":
389
- return "markdown";
390
- case "text/html":
391
- return "html";
392
- case "text/x-handlebars-template":
393
- return "glimmer";
394
- default:
395
- if (t7.endsWith("json") || t7.endsWith("importmap") || t7 === "speculationrules")
396
- return "json";
397
- }
398
- }
399
- function Pi(t7, e) {
400
- let { name: r, attrMap: n } = t7;
401
- if (r !== "script" || Object.prototype.hasOwnProperty.call(n, "src"))
402
- return;
403
- let { type: s, lang: i } = t7.attrMap;
404
- return !i && !s ? "babel" : Ne(e, { language: i }) ?? qn(s);
405
- }
406
- function Ii(t7, e) {
407
- if (!Tt(t7, e))
408
- return;
409
- let { attrMap: r } = t7;
410
- if (Object.prototype.hasOwnProperty.call(r, "src"))
411
- return;
412
- let { type: n, lang: s } = r;
413
- return Ne(e, { language: s }) ?? qn(n);
414
- }
415
- function Ri(t7, e) {
416
- if (t7.name !== "style")
417
- return;
418
- let { lang: r } = t7.attrMap;
419
- return r ? Ne(e, { language: r }) : "css";
420
- }
421
- function Ar(t7, e) {
422
- return Pi(t7, e) ?? Ri(t7, e) ?? Ii(t7, e);
423
- }
424
- function Ze(t7) {
425
- return t7 === "block" || t7 === "list-item" || t7.startsWith("table");
426
- }
427
- function $i(t7) {
428
- return !Ze(t7) && t7 !== "inline-block";
429
- }
430
- function Oi(t7) {
431
- return !Ze(t7) && t7 !== "inline-block";
432
- }
433
- function Mi(t7) {
434
- return !Ze(t7);
435
- }
436
- function qi(t7) {
437
- return !Ze(t7);
438
- }
439
- function Hi(t7) {
440
- return !Ze(t7) && t7 !== "inline-block";
441
- }
442
- function me(t7) {
443
- return Vn(t7).startsWith("pre");
444
- }
445
- function Vi(t7, e) {
446
- let r = t7;
447
- for (; r; ) {
448
- if (e(r))
449
- return true;
450
- r = r.parent;
451
- }
452
- return false;
453
- }
454
- function Hn(t7, e) {
455
- var n;
456
- if (ge(t7, e))
457
- return "block";
458
- if (((n = t7.prev) == null ? void 0 : n.type) === "comment") {
459
- let s = t7.prev.value.match(/^\s*display:\s*([a-z]+)\s*$/u);
460
- if (s)
461
- return s[1];
462
- }
463
- let r = false;
464
- if (t7.type === "element" && t7.namespace === "svg")
465
- if (Vi(t7, (s) => s.fullName === "svg:foreignObject"))
466
- r = true;
467
- else
468
- return t7.name === "svg" ? "inline-block" : "block";
469
- switch (e.htmlWhitespaceSensitivity) {
470
- case "strict":
471
- return "inline";
472
- case "ignore":
473
- return "block";
474
- default:
475
- return t7.type === "element" && (!t7.namespace || r || fe(t7)) && bn[t7.name] || wn;
476
- }
477
- }
478
- function Vn(t7) {
479
- return t7.type === "element" && (!t7.namespace || fe(t7)) && xn[t7.name] || Tn;
480
- }
481
- function Ui(t7) {
482
- let e = Number.POSITIVE_INFINITY;
483
- for (let r of t7.split(`
484
- `)) {
485
- if (r.length === 0)
486
- continue;
487
- let n = O.getLeadingWhitespaceCount(r);
488
- if (n === 0)
489
- return 0;
490
- r.length !== n && n < e && (e = n);
491
- }
492
- return e === Number.POSITIVE_INFINITY ? 0 : e;
493
- }
494
- function Dr(t7, e = Ui(t7)) {
495
- return e === 0 ? t7 : t7.split(`
496
- `).map((r) => r.slice(e)).join(`
497
- `);
498
- }
499
- function vr(t7) {
500
- return w(false, w(false, t7, "&apos;", "'"), "&quot;", '"');
501
- }
502
- function N(t7) {
503
- return vr(t7.value);
504
- }
505
- var Wi = /* @__PURE__ */ new Set(["template", "style", "script"]);
506
- function et(t7, e) {
507
- return ge(t7, e) && !Wi.has(t7.fullName);
508
- }
509
- function ge(t7, e) {
510
- return e.parser === "vue" && t7.type === "element" && t7.parent.type === "root" && t7.fullName.toLowerCase() !== "html";
511
- }
512
- function Tt(t7, e) {
513
- return ge(t7, e) && (et(t7, e) || t7.attrMap.lang && t7.attrMap.lang !== "html");
514
- }
515
- function Un(t7) {
516
- let e = t7.fullName;
517
- return e.charAt(0) === "#" || e === "slot-scope" || e === "v-slot" || e.startsWith("v-slot:");
518
- }
519
- function Wn(t7, e) {
520
- let r = t7.parent;
521
- if (!ge(r, e))
522
- return false;
523
- let n = r.fullName, s = t7.fullName;
524
- return n === "script" && s === "setup" || n === "style" && s === "vars";
525
- }
526
- function xt(t7, e = t7.value) {
527
- return t7.parent.isWhitespaceSensitive ? t7.parent.isIndentationSensitive ? B(e) : B(Dr(Sr(e)), S) : H(_, O.split(e));
528
- }
529
- function kt(t7, e) {
530
- return ge(t7, e) && t7.name === "script";
531
- }
532
- var yr = /\{\{(.+?)\}\}/su;
533
- async function zn(t7, e) {
534
- let r = [];
535
- for (let [n, s] of t7.split(yr).entries())
536
- if (n % 2 === 0)
537
- r.push(B(s));
538
- else
539
- try {
540
- r.push(E(["{{", k([_, await T(s, e, { parser: "__ng_interpolation", __isInHtmlInterpolation: true })]), _, "}}"]));
541
- } catch {
542
- r.push("{{", B(s), "}}");
543
- }
544
- return r;
545
- }
546
- function wr({ parser: t7 }) {
547
- return (e, r, n) => T(N(n.node), e, { parser: t7 }, Q);
548
- }
549
- var zi = wr({ parser: "__ng_action" }), Gi = wr({ parser: "__ng_binding" }), Yi = wr({ parser: "__ng_directive" });
550
- function ji(t7, e) {
551
- if (e.parser !== "angular")
552
- return;
553
- let { node: r } = t7, n = r.fullName;
554
- if (n.startsWith("(") && n.endsWith(")") || n.startsWith("on-"))
555
- return zi;
556
- if (n.startsWith("[") && n.endsWith("]") || /^bind(?:on)?-/u.test(n) || /^ng-(?:if|show|hide|class|style)$/u.test(n))
557
- return Gi;
558
- if (n.startsWith("*"))
559
- return Yi;
560
- let s = N(r);
561
- if (/^i18n(?:-.+)?$/u.test(n))
562
- return () => he(Dt(xt(r, s.trim())), !s.includes("@@"));
563
- if (yr.test(s))
564
- return (i) => zn(s, i);
565
- }
566
- var Gn = ji;
567
- function Ki(t7, e) {
568
- let { node: r } = t7, n = N(r);
569
- if (r.fullName === "class" && !e.parentParser && !n.includes("{{"))
570
- return () => n.trim().split(/\s+/u).join(" ");
571
- }
572
- var Yn = Ki;
573
- function jn(t7) {
574
- return t7 === " " || t7 === `
575
- ` || t7 === "\f" || t7 === "\r" || t7 === " ";
576
- }
577
- var Qi = /^[ \t\n\r\u000c]+/, Xi = /^[, \t\n\r\u000c]+/, Ji = /^[^ \t\n\r\u000c]+/, Zi = /[,]+$/, Kn = /^\d+$/, ea = /^-?(?:[0-9]+|[0-9]*\.[0-9]+)(?:[eE][+-]?[0-9]+)?$/;
578
- function ta(t7) {
579
- let e = t7.length, r, n, s, i, a, o = 0, u;
580
- function p(C) {
581
- let A, D = C.exec(t7.substring(o));
582
- if (D)
583
- return [A] = D, o += A.length, A;
584
- }
585
- let l = [];
586
- for (; ; ) {
587
- if (p(Xi), o >= e) {
588
- if (l.length === 0)
589
- throw new Error("Must contain one or more image candidate strings.");
590
- return l;
591
- }
592
- u = o, r = p(Ji), n = [], r.slice(-1) === "," ? (r = r.replace(Zi, ""), d()) : f();
593
- }
594
- function f() {
595
- for (p(Qi), s = "", i = "in descriptor"; ; ) {
596
- if (a = t7.charAt(o), i === "in descriptor")
597
- if (jn(a))
598
- s && (n.push(s), s = "", i = "after descriptor");
599
- else if (a === ",") {
600
- o += 1, s && n.push(s), d();
601
- return;
602
- } else if (a === "(")
603
- s += a, i = "in parens";
604
- else if (a === "") {
605
- s && n.push(s), d();
606
- return;
607
- } else
608
- s += a;
609
- else if (i === "in parens")
610
- if (a === ")")
611
- s += a, i = "in descriptor";
612
- else if (a === "") {
613
- n.push(s), d();
614
- return;
615
- } else
616
- s += a;
617
- else if (i === "after descriptor" && !jn(a))
618
- if (a === "") {
619
- d();
620
- return;
621
- } else
622
- i = "in descriptor", o -= 1;
623
- o += 1;
624
- }
625
- }
626
- function d() {
627
- let C = false, A, D, I, F, c = {}, g, y, q, x, U;
628
- for (F = 0; F < n.length; F++)
629
- g = n[F], y = g[g.length - 1], q = g.substring(0, g.length - 1), x = parseInt(q, 10), U = parseFloat(q), Kn.test(q) && y === "w" ? ((A || D) && (C = true), x === 0 ? C = true : A = x) : ea.test(q) && y === "x" ? ((A || D || I) && (C = true), U < 0 ? C = true : D = U) : Kn.test(q) && y === "h" ? ((I || D) && (C = true), x === 0 ? C = true : I = x) : C = true;
630
- if (!C)
631
- c.source = { value: r, startOffset: u }, A && (c.width = { value: A }), D && (c.density = { value: D }), I && (c.height = { value: I }), l.push(c);
632
- else
633
- throw new Error(`Invalid srcset descriptor found in "${t7}" at "${g}".`);
634
- }
635
- }
636
- var Qn = ta;
637
- function ra(t7) {
638
- if (t7.node.fullName === "srcset" && (t7.parent.fullName === "img" || t7.parent.fullName === "source"))
639
- return () => sa(N(t7.node));
640
- }
641
- var Xn = { width: "w", height: "h", density: "x" }, na = Object.keys(Xn);
642
- function sa(t7) {
643
- let e = Qn(t7), r = na.filter((l) => e.some((f) => Object.prototype.hasOwnProperty.call(f, l)));
644
- if (r.length > 1)
645
- throw new Error("Mixed descriptor in srcset is not supported");
646
- let [n] = r, s = Xn[n], i = e.map((l) => l.source.value), a = Math.max(...i.map((l) => l.length)), o = e.map((l) => l[n] ? String(l[n].value) : ""), u = o.map((l) => {
647
- let f = l.indexOf(".");
648
- return f === -1 ? l.length : f;
649
- }), p = Math.max(...u);
650
- return he(H([",", _], i.map((l, f) => {
651
- let d = [l], C = o[f];
652
- if (C) {
653
- let A = a - l.length + 1, D = p - u[f], I = " ".repeat(A + D);
654
- d.push(pe(I, " "), C + s);
655
- }
656
- return d;
657
- })));
658
- }
659
- var Jn = ra;
660
- function Zn(t7, e) {
661
- let { node: r } = t7, n = N(t7.node).trim();
662
- if (r.fullName === "style" && !e.parentParser && !n.includes("{{"))
663
- return async (s) => he(await s(n, { parser: "css", __isHTMLStyleAttribute: true }));
664
- }
665
- var br = /* @__PURE__ */ new WeakMap();
666
- function ia(t7, e) {
667
- let { root: r } = t7;
668
- return br.has(r) || br.set(r, r.children.some((n) => kt(n, e) && ["ts", "typescript"].includes(n.attrMap.lang))), br.get(r);
669
- }
670
- var Pe = ia;
671
- function es(t7, e, r) {
672
- let { node: n } = r, s = N(n);
673
- return T(`type T<${s}> = any`, t7, { parser: "babel-ts", __isEmbeddedTypescriptGenericParameters: true }, Q);
674
- }
675
- function ts(t7, e, { parseWithTs: r }) {
676
- return T(`function _(${t7}) {}`, e, { parser: r ? "babel-ts" : "babel", __isVueBindings: true });
677
- }
678
- async function rs(t7, e, r, n) {
679
- let s = N(r.node), { left: i, operator: a, right: o } = aa(s), u = Pe(r, n);
680
- return [E(await T(`function _(${i}) {}`, t7, { parser: u ? "babel-ts" : "babel", __isVueForBindingLeft: true })), " ", a, " ", await T(o, t7, { parser: u ? "__ts_expression" : "__js_expression" })];
681
- }
682
- function aa(t7) {
683
- let e = /(.*?)\s+(in|of)\s+(.*)/su, r = /,([^,\]}]*)(?:,([^,\]}]*))?$/u, n = /^\(|\)$/gu, s = t7.match(e);
684
- if (!s)
685
- return;
686
- let i = {};
687
- if (i.for = s[3].trim(), !i.for)
688
- return;
689
- let a = w(false, s[1].trim(), n, ""), o = a.match(r);
690
- o ? (i.alias = a.replace(r, ""), i.iterator1 = o[1].trim(), o[2] && (i.iterator2 = o[2].trim())) : i.alias = a;
691
- let u = [i.alias, i.iterator1, i.iterator2];
692
- if (!u.some((p, l) => !p && (l === 0 || u.slice(l + 1).some(Boolean))))
693
- return { left: u.filter(Boolean).join(","), operator: s[2], right: i.for };
694
- }
695
- function oa(t7, e) {
696
- if (e.parser !== "vue")
697
- return;
698
- let { node: r } = t7, n = r.fullName;
699
- if (n === "v-for")
700
- return rs;
701
- if (n === "generic" && kt(r.parent, e))
702
- return es;
703
- let s = N(r), i = Pe(t7, e);
704
- if (Un(r) || Wn(r, e))
705
- return (a) => ts(s, a, { parseWithTs: i });
706
- if (n.startsWith("@") || n.startsWith("v-on:"))
707
- return (a) => ua(s, a, { parseWithTs: i });
708
- if (n.startsWith(":") || n.startsWith(".") || n.startsWith("v-bind:"))
709
- return (a) => la(s, a, { parseWithTs: i });
710
- if (n.startsWith("v-"))
711
- return (a) => ns(s, a, { parseWithTs: i });
712
- }
713
- async function ua(t7, e, { parseWithTs: r }) {
714
- var n;
715
- try {
716
- return await ns(t7, e, { parseWithTs: r });
717
- } catch (s) {
718
- if (((n = s.cause) == null ? void 0 : n.code) !== "BABEL_PARSER_SYNTAX_ERROR")
719
- throw s;
720
- }
721
- return T(t7, e, { parser: r ? "__vue_ts_event_binding" : "__vue_event_binding" }, Q);
722
- }
723
- function la(t7, e, { parseWithTs: r }) {
724
- return T(t7, e, { parser: r ? "__vue_ts_expression" : "__vue_expression" }, Q);
725
- }
726
- function ns(t7, e, { parseWithTs: r }) {
727
- return T(t7, e, { parser: r ? "__ts_expression" : "__js_expression" }, Q);
728
- }
729
- var ss = oa;
730
- function ca(t7, e) {
731
- let { node: r } = t7;
732
- if (r.value) {
733
- if (/^PRETTIER_HTML_PLACEHOLDER_\d+_\d+_IN_JS$/u.test(e.originalText.slice(r.valueSpan.start.offset, r.valueSpan.end.offset)) || e.parser === "lwc" && r.value.startsWith("{") && r.value.endsWith("}"))
734
- return [r.rawName, "=", r.value];
735
- for (let n of [Jn, Zn, Yn, ss, Gn]) {
736
- let s = n(t7, e);
737
- if (s)
738
- return pa(s);
739
- }
740
- }
741
- }
742
- function pa(t7) {
743
- return async (e, r, n, s) => {
744
- let i = await t7(e, r, n, s);
745
- if (i)
746
- return i = hr(i, (a) => typeof a == "string" ? w(false, a, '"', "&quot;") : a), [n.node.rawName, '="', E(i), '"'];
747
- };
748
- }
749
- var is = ca;
750
- var as = new Proxy(() => {
751
- }, { get: () => as }), Tr = as;
752
- function ha(t7) {
753
- return Array.isArray(t7) && t7.length > 0;
754
- }
755
- var Ie = ha;
756
- function J(t7) {
757
- return t7.sourceSpan.start.offset;
758
- }
759
- function Z(t7) {
760
- return t7.sourceSpan.end.offset;
761
- }
762
- function tt(t7, e) {
763
- return [t7.isSelfClosing ? "" : fa(t7, e), Ce(t7, e)];
764
- }
765
- function fa(t7, e) {
766
- return t7.lastChild && Ee(t7.lastChild) ? "" : [ma(t7, e), Bt(t7, e)];
767
- }
768
- function Ce(t7, e) {
769
- return (t7.next ? X(t7.next) : _e(t7.parent)) ? "" : [Se(t7, e), z(t7, e)];
770
- }
771
- function ma(t7, e) {
772
- return _e(t7) ? Se(t7.lastChild, e) : "";
773
- }
774
- function z(t7, e) {
775
- return Ee(t7) ? Bt(t7.parent, e) : rt(t7) ? Lt(t7.next, e) : "";
776
- }
777
- function Bt(t7, e) {
778
- if (Tr.ok(!t7.isSelfClosing), us(t7, e))
779
- return "";
780
- switch (t7.type) {
781
- case "ieConditionalComment":
782
- return "<!";
783
- case "element":
784
- if (t7.hasHtmComponentClosingTag)
785
- return "<//";
786
- default:
787
- return `</${t7.rawName}`;
788
- }
789
- }
790
- function Se(t7, e) {
791
- if (us(t7, e))
792
- return "";
793
- switch (t7.type) {
794
- case "ieConditionalComment":
795
- case "ieConditionalEndComment":
796
- return "[endif]-->";
797
- case "ieConditionalStartComment":
798
- return "]><!-->";
799
- case "interpolation":
800
- return "}}";
801
- case "angularIcuExpression":
802
- return "}";
803
- case "element":
804
- if (t7.isSelfClosing)
805
- return "/>";
806
- default:
807
- return ">";
808
- }
809
- }
810
- function us(t7, e) {
811
- return !t7.isSelfClosing && !t7.endSourceSpan && (de(t7) || yt(t7.parent, e));
812
- }
813
- function X(t7) {
814
- return t7.prev && t7.prev.type !== "docType" && t7.type !== "angularControlFlowBlock" && !$(t7.prev) && t7.isLeadingSpaceSensitive && !t7.hasLeadingSpaces;
815
- }
816
- function _e(t7) {
817
- var e;
818
- return ((e = t7.lastChild) == null ? void 0 : e.isTrailingSpaceSensitive) && !t7.lastChild.hasTrailingSpaces && !$(bt(t7.lastChild)) && !me(t7);
819
- }
820
- function Ee(t7) {
821
- return !t7.next && !t7.hasTrailingSpaces && t7.isTrailingSpaceSensitive && $(bt(t7));
822
- }
823
- function rt(t7) {
824
- return t7.next && !$(t7.next) && $(t7) && t7.isTrailingSpaceSensitive && !t7.hasTrailingSpaces;
825
- }
826
- function da(t7) {
827
- let e = t7.trim().match(/^prettier-ignore-attribute(?:\s+(.+))?$/su);
828
- return e ? e[1] ? e[1].split(/\s+/u) : true : false;
829
- }
830
- function nt(t7) {
831
- return !t7.prev && t7.isLeadingSpaceSensitive && !t7.hasLeadingSpaces;
832
- }
833
- function ga(t7, e, r) {
834
- var f;
835
- let { node: n } = t7;
836
- if (!Ie(n.attrs))
837
- return n.isSelfClosing ? " " : "";
838
- let s = ((f = n.prev) == null ? void 0 : f.type) === "comment" && da(n.prev.value), i = typeof s == "boolean" ? () => s : Array.isArray(s) ? (d) => s.includes(d.rawName) : () => false, a = t7.map(({ node: d }) => i(d) ? B(e.originalText.slice(J(d), Z(d))) : r(), "attrs"), o = n.type === "element" && n.fullName === "script" && n.attrs.length === 1 && n.attrs[0].fullName === "src" && n.children.length === 0, p = e.singleAttributePerLine && n.attrs.length > 1 && !ge(n, e) ? S : _, l = [k([o ? " " : _, H(p, a)])];
839
- return n.firstChild && nt(n.firstChild) || n.isSelfClosing && _e(n.parent) || o ? l.push(n.isSelfClosing ? " " : "") : l.push(e.bracketSameLine ? n.isSelfClosing ? " " : "" : n.isSelfClosing ? _ : v), l;
840
- }
841
- function Ca(t7) {
842
- return t7.firstChild && nt(t7.firstChild) ? "" : Ft(t7);
843
- }
844
- function st(t7, e, r) {
845
- let { node: n } = t7;
846
- return [Ae(n, e), ga(t7, e, r), n.isSelfClosing ? "" : Ca(n)];
847
- }
848
- function Ae(t7, e) {
849
- return t7.prev && rt(t7.prev) ? "" : [G(t7, e), Lt(t7, e)];
850
- }
851
- function G(t7, e) {
852
- return nt(t7) ? Ft(t7.parent) : X(t7) ? Se(t7.prev, e) : "";
853
- }
854
- var os = "<!doctype";
855
- function Lt(t7, e) {
856
- switch (t7.type) {
857
- case "ieConditionalComment":
858
- case "ieConditionalStartComment":
859
- return `<!--[if ${t7.condition}`;
860
- case "ieConditionalEndComment":
861
- return "<!--<!";
862
- case "interpolation":
863
- return "{{";
864
- case "docType": {
865
- if (t7.value === "html") {
866
- let n = e.filepath ?? "";
867
- if (/\.html?$/u.test(n))
868
- return os;
869
- }
870
- return e.originalText.slice(J(t7), Z(t7)).slice(0, os.length);
871
- }
872
- case "angularIcuExpression":
873
- return "{";
874
- case "element":
875
- if (t7.condition)
876
- return `<!--[if ${t7.condition}]><!--><${t7.rawName}`;
877
- default:
878
- return `<${t7.rawName}`;
879
- }
880
- }
881
- function Ft(t7) {
882
- switch (Tr.ok(!t7.isSelfClosing), t7.type) {
883
- case "ieConditionalComment":
884
- return "]>";
885
- case "element":
886
- if (t7.condition)
887
- return "><!--<![endif]-->";
888
- default:
889
- return ">";
890
- }
891
- }
892
- function Sa(t7, e) {
893
- if (!t7.endSourceSpan)
894
- return "";
895
- let r = t7.startSourceSpan.end.offset;
896
- t7.firstChild && nt(t7.firstChild) && (r -= Ft(t7).length);
897
- let n = t7.endSourceSpan.start.offset;
898
- return t7.lastChild && Ee(t7.lastChild) ? n += Bt(t7, e).length : _e(t7) && (n -= Se(t7.lastChild, e).length), e.originalText.slice(r, n);
899
- }
900
- var Nt = Sa;
901
- var _a = /* @__PURE__ */ new Set(["if", "else if", "for", "switch", "case"]);
902
- function Ea(t7, e) {
903
- let { node: r } = t7;
904
- switch (r.type) {
905
- case "element":
906
- if (W(r) || r.type === "interpolation")
907
- return;
908
- if (!r.isSelfClosing && Tt(r, e)) {
909
- let n = Ar(r, e);
910
- return n ? async (s, i) => {
911
- let a = Nt(r, e), o = /^\s*$/u.test(a), u = "";
912
- return o || (u = await s(Sr(a), { parser: n, __embeddedInHtml: true }), o = u === ""), [G(r, e), E(st(t7, e, i)), o ? "" : S, u, o ? "" : S, tt(r, e), z(r, e)];
913
- } : void 0;
914
- }
915
- break;
916
- case "text":
917
- if (W(r.parent)) {
918
- let n = Ar(r.parent, e);
919
- if (n)
920
- return async (s) => {
921
- let i = n === "markdown" ? Dr(r.value.replace(/^[^\S\n]*\n/u, "")) : r.value, a = { parser: n, __embeddedInHtml: true };
922
- if (e.parser === "html" && n === "babel") {
923
- let o = "script", { attrMap: u } = r.parent;
924
- u && (u.type === "module" || u.type === "text/babel" && u["data-type"] === "module") && (o = "module"), a.__babelSourceType = o;
925
- }
926
- return [se, G(r, e), await s(i, a), z(r, e)];
927
- };
928
- } else if (r.parent.type === "interpolation")
929
- return async (n) => {
930
- let s = { __isInHtmlInterpolation: true, __embeddedInHtml: true };
931
- return e.parser === "angular" ? s.parser = "__ng_interpolation" : e.parser === "vue" ? s.parser = Pe(t7, e) ? "__vue_ts_expression" : "__vue_expression" : s.parser = "__js_expression", [k([_, await n(r.value, s)]), r.parent.next && X(r.parent.next) ? " " : _];
932
- };
933
- break;
934
- case "attribute":
935
- return is(t7, e);
936
- case "front-matter":
937
- return (n) => Dn(r, n);
938
- case "angularControlFlowBlockParameters":
939
- return _a.has(t7.parent.name) ? vn : void 0;
940
- case "angularLetDeclarationInitializer":
941
- return (n) => T(r.value, n, { parser: "__ng_binding", __isInHtmlAttribute: false });
942
- }
943
- }
944
- var ls = Ea;
945
- var it = null;
946
- function at(t7) {
947
- if (it !== null && typeof it.property) {
948
- let e = it;
949
- return it = at.prototype = null, e;
950
- }
951
- return it = at.prototype = t7 ?? /* @__PURE__ */ Object.create(null), new at();
952
- }
953
- var Aa = 10;
954
- for (let t7 = 0; t7 <= Aa; t7++)
955
- at();
956
- function xr(t7) {
957
- return at(t7);
958
- }
959
- function Da(t7, e = "type") {
960
- xr(t7);
961
- function r(n) {
962
- let s = n[e], i = t7[s];
963
- if (!Array.isArray(i))
964
- throw Object.assign(new Error(`Missing visitor keys for '${s}'.`), { node: n });
965
- return i;
966
- }
967
- return r;
968
- }
969
- var cs = Da;
970
- var va = { "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"] }, ps = va;
971
- var ya = cs(ps), hs = ya;
972
- function fs(t7) {
973
- return /^\s*<!--\s*@(?:format|prettier)\s*-->/u.test(t7);
974
- }
975
- function ms(t7) {
976
- return `<!-- @format -->
977
-
978
- ` + t7;
979
- }
980
- var ds = /* @__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"])]]);
981
- function gs(t7) {
982
- let e = Z(t7);
983
- return t7.type === "element" && !t7.endSourceSpan && Ie(t7.children) ? Math.max(e, gs(K(false, t7.children, -1))) : e;
984
- }
985
- function ot(t7, e, r) {
986
- let n = t7.node;
987
- if (de(n)) {
988
- let s = gs(n);
989
- return [G(n, e), B(O.trimEnd(e.originalText.slice(J(n) + (n.prev && rt(n.prev) ? Lt(n).length : 0), s - (n.next && X(n.next) ? Se(n, e).length : 0)))), z(n, e)];
990
- }
991
- return r();
992
- }
993
- function Pt(t7, e) {
994
- return $(t7) && $(e) ? t7.isTrailingSpaceSensitive ? t7.hasTrailingSpaces ? wt(e) ? S : _ : "" : wt(e) ? S : v : rt(t7) && (de(e) || e.firstChild || e.isSelfClosing || e.type === "element" && e.attrs.length > 0) || t7.type === "element" && t7.isSelfClosing && X(e) ? "" : !e.isLeadingSpaceSensitive || wt(e) || X(e) && t7.lastChild && Ee(t7.lastChild) && t7.lastChild.lastChild && Ee(t7.lastChild.lastChild) ? S : e.hasLeadingSpaces ? _ : v;
995
- }
996
- function Re(t7, e, r) {
997
- let { node: n } = t7;
998
- if (Er(n))
999
- return [se, ...t7.map((i) => {
1000
- let a = i.node, o = a.prev ? Pt(a.prev, a) : "";
1001
- return [o ? [o, Je(a.prev) ? S : ""] : "", ot(i, e, r)];
1002
- }, "children")];
1003
- let s = n.children.map(() => Symbol(""));
1004
- return t7.map((i, a) => {
1005
- let o = i.node;
1006
- if ($(o)) {
1007
- if (o.prev && $(o.prev)) {
1008
- let A = Pt(o.prev, o);
1009
- if (A)
1010
- return Je(o.prev) ? [S, S, ot(i, e, r)] : [A, ot(i, e, r)];
1011
- }
1012
- return ot(i, e, r);
1013
- }
1014
- let u = [], p = [], l = [], f = [], d = o.prev ? Pt(o.prev, o) : "", C = o.next ? Pt(o, o.next) : "";
1015
- return d && (Je(o.prev) ? u.push(S, S) : d === S ? u.push(S) : $(o.prev) ? p.push(d) : p.push(pe("", v, { groupId: s[a - 1] }))), C && (Je(o) ? $(o.next) && f.push(S, S) : C === S ? $(o.next) && f.push(S) : l.push(C)), [...u, E([...p, E([ot(i, e, r), ...l], { id: s[a] })]), ...f];
1016
- }, "children");
1017
- }
1018
- function Cs(t7, e, r) {
1019
- let { node: n } = t7, s = [];
1020
- wa(t7) && s.push("} "), s.push("@", n.name), n.parameters && s.push(" (", E(r("parameters")), ")"), s.push(" {");
1021
- let i = Ss(n);
1022
- return n.children.length > 0 ? (n.firstChild.hasLeadingSpaces = true, n.lastChild.hasTrailingSpaces = true, s.push(k([S, Re(t7, e, r)])), i && s.push(S, "}")) : i && s.push("}"), E(s, { shouldBreak: true });
1023
- }
1024
- function Ss(t7) {
1025
- var e, r;
1026
- return !(((e = t7.next) == null ? void 0 : e.type) === "angularControlFlowBlock" && ((r = ds.get(t7.name)) != null && r.has(t7.next.name)));
1027
- }
1028
- function wa(t7) {
1029
- let { previous: e } = t7;
1030
- return (e == null ? void 0 : e.type) === "angularControlFlowBlock" && !de(e) && !Ss(e);
1031
- }
1032
- function _s(t7, e, r) {
1033
- return [k([v, H([";", _], t7.map(r, "children"))]), v];
1034
- }
1035
- function Es(t7, e, r) {
1036
- let { node: n } = t7;
1037
- return [Ae(n, e), E([n.switchValue.trim(), ", ", n.clause, n.cases.length > 0 ? [",", k([_, H(_, t7.map(r, "cases"))])] : "", v]), Ce(n, e)];
1038
- }
1039
- function As(t7, e, r) {
1040
- let { node: n } = t7;
1041
- return [n.value, " {", E([k([v, t7.map(({ node: s, isLast: i }) => {
1042
- let a = [r()];
1043
- return s.type === "text" && (s.hasLeadingSpaces && a.unshift(_), s.hasTrailingSpaces && !i && a.push(_)), a;
1044
- }, "expression")]), v]), "}"];
1045
- }
1046
- function Ds(t7, e, r) {
1047
- let { node: n } = t7;
1048
- if (yt(n, e))
1049
- return [G(n, e), E(st(t7, e, r)), B(Nt(n, e)), ...tt(n, e), z(n, e)];
1050
- let s = n.children.length === 1 && (n.firstChild.type === "interpolation" || n.firstChild.type === "angularIcuExpression") && n.firstChild.isLeadingSpaceSensitive && !n.firstChild.hasLeadingSpaces && n.lastChild.isTrailingSpaceSensitive && !n.lastChild.hasTrailingSpaces, i = Symbol("element-attr-group-id"), a = (l) => E([E(st(t7, e, r), { id: i }), l, tt(n, e)]), o = (l) => s ? dn(l, { groupId: i }) : (W(n) || et(n, e)) && n.parent.type === "root" && e.parser === "vue" && !e.vueIndentScriptAndStyle ? l : k(l), u = () => s ? pe(v, "", { groupId: i }) : n.firstChild.hasLeadingSpaces && n.firstChild.isLeadingSpaceSensitive ? _ : n.firstChild.type === "text" && n.isWhitespaceSensitive && n.isIndentationSensitive ? fn(v) : v, p = () => (n.next ? X(n.next) : _e(n.parent)) ? n.lastChild.hasTrailingSpaces && n.lastChild.isTrailingSpaceSensitive ? " " : "" : s ? pe(v, "", { groupId: i }) : n.lastChild.hasTrailingSpaces && n.lastChild.isTrailingSpaceSensitive ? _ : (n.lastChild.type === "comment" || n.lastChild.type === "text" && n.isWhitespaceSensitive && n.isIndentationSensitive) && new RegExp(`\\n[\\t ]{${e.tabWidth * (t7.ancestors.length - 1)}}$`, "u").test(n.lastChild.value) ? "" : v;
1051
- return n.children.length === 0 ? a(n.hasDanglingSpaces && n.isDanglingSpaceSensitive ? _ : "") : a([In(n) ? se : "", o([u(), Re(t7, e, r)]), p()]);
1052
- }
1053
- function ut(t7) {
1054
- return t7 >= 9 && t7 <= 32 || t7 == 160;
1055
- }
1056
- function It(t7) {
1057
- return 48 <= t7 && t7 <= 57;
1058
- }
1059
- function lt(t7) {
1060
- return t7 >= 97 && t7 <= 122 || t7 >= 65 && t7 <= 90;
1061
- }
1062
- function vs(t7) {
1063
- return t7 >= 97 && t7 <= 102 || t7 >= 65 && t7 <= 70 || It(t7);
1064
- }
1065
- function Rt(t7) {
1066
- return t7 === 10 || t7 === 13;
1067
- }
1068
- function kr(t7) {
1069
- return 48 <= t7 && t7 <= 55;
1070
- }
1071
- function $t(t7) {
1072
- return t7 === 39 || t7 === 34 || t7 === 96;
1073
- }
1074
- var ba = /-+([a-z0-9])/g;
1075
- function ws(t7) {
1076
- return t7.replace(ba, (...e) => e[1].toUpperCase());
1077
- }
1078
- var ie = class t {
1079
- constructor(e, r, n, s) {
1080
- this.file = e, this.offset = r, this.line = n, this.col = s;
1081
- }
1082
- toString() {
1083
- return this.offset != null ? `${this.file.url}@${this.line}:${this.col}` : this.file.url;
1084
- }
1085
- moveBy(e) {
1086
- let r = this.file.content, n = r.length, s = this.offset, i = this.line, a = this.col;
1087
- for (; s > 0 && e < 0; )
1088
- if (s--, e++, r.charCodeAt(s) == 10) {
1089
- i--;
1090
- let u = r.substring(0, s - 1).lastIndexOf(String.fromCharCode(10));
1091
- a = u > 0 ? s - u : s;
1092
- } else
1093
- a--;
1094
- for (; s < n && e > 0; ) {
1095
- let o = r.charCodeAt(s);
1096
- s++, e--, o == 10 ? (i++, a = 0) : a++;
1097
- }
1098
- return new t(this.file, s, i, a);
1099
- }
1100
- getContext(e, r) {
1101
- let n = this.file.content, s = this.offset;
1102
- if (s != null) {
1103
- s > n.length - 1 && (s = n.length - 1);
1104
- let i = s, a = 0, o = 0;
1105
- for (; a < e && s > 0 && (s--, a++, !(n[s] == `
1106
- ` && ++o == r)); )
1107
- ;
1108
- for (a = 0, o = 0; a < e && i < n.length - 1 && (i++, a++, !(n[i] == `
1109
- ` && ++o == r)); )
1110
- ;
1111
- return { before: n.substring(s, this.offset), after: n.substring(this.offset, i + 1) };
1112
- }
1113
- return null;
1114
- }
1115
- }, De = class {
1116
- constructor(e, r) {
1117
- this.content = e, this.url = r;
1118
- }
1119
- }, h = class {
1120
- constructor(e, r, n = e, s = null) {
1121
- this.start = e, this.end = r, this.fullStart = n, this.details = s;
1122
- }
1123
- toString() {
1124
- return this.start.file.content.substring(this.start.offset, this.end.offset);
1125
- }
1126
- }, Ot;
1127
- (function(t7) {
1128
- t7[t7.WARNING = 0] = "WARNING", t7[t7.ERROR = 1] = "ERROR";
1129
- })(Ot || (Ot = {}));
1130
- var Oe = class {
1131
- constructor(e, r, n = Ot.ERROR) {
1132
- this.span = e, this.msg = r, this.level = n;
1133
- }
1134
- contextualMessage() {
1135
- let e = this.span.start.getContext(100, 3);
1136
- return e ? `${this.msg} ("${e.before}[${Ot[this.level]} ->]${e.after}")` : this.msg;
1137
- }
1138
- toString() {
1139
- let e = this.span.details ? `, ${this.span.details}` : "";
1140
- return `${this.contextualMessage()}: ${this.span.start}${e}`;
1141
- }
1142
- };
1143
- var Ta = [ka, Ba, Fa, Pa, Ia, Oa, Ra, $a, Ma, Na];
1144
- function xa(t7, e) {
1145
- for (let r of Ta)
1146
- r(t7, e);
1147
- return t7;
1148
- }
1149
- function ka(t7) {
1150
- t7.walk((e) => {
1151
- if (e.type === "element" && e.tagDefinition.ignoreFirstLf && e.children.length > 0 && e.children[0].type === "text" && e.children[0].value[0] === `
1152
- `) {
1153
- let r = e.children[0];
1154
- r.value.length === 1 ? e.removeChild(r) : r.value = r.value.slice(1);
1155
- }
1156
- });
1157
- }
1158
- function Ba(t7) {
1159
- let e = (r) => {
1160
- var n, s;
1161
- return r.type === "element" && ((n = r.prev) == null ? void 0 : n.type) === "ieConditionalStartComment" && r.prev.sourceSpan.end.offset === r.startSourceSpan.start.offset && ((s = r.firstChild) == null ? void 0 : s.type) === "ieConditionalEndComment" && r.firstChild.sourceSpan.start.offset === r.startSourceSpan.end.offset;
1162
- };
1163
- t7.walk((r) => {
1164
- if (r.children)
1165
- for (let n = 0; n < r.children.length; n++) {
1166
- let s = r.children[n];
1167
- if (!e(s))
1168
- continue;
1169
- let i = s.prev, a = s.firstChild;
1170
- r.removeChild(i), n--;
1171
- let o = new h(i.sourceSpan.start, a.sourceSpan.end), u = new h(o.start, s.sourceSpan.end);
1172
- s.condition = i.condition, s.sourceSpan = u, s.startSourceSpan = o, s.removeChild(a);
1173
- }
1174
- });
1175
- }
1176
- function La(t7, e, r) {
1177
- t7.walk((n) => {
1178
- if (n.children)
1179
- for (let s = 0; s < n.children.length; s++) {
1180
- let i = n.children[s];
1181
- if (i.type !== "text" && !e(i))
1182
- continue;
1183
- i.type !== "text" && (i.type = "text", i.value = r(i));
1184
- let a = i.prev;
1185
- !a || a.type !== "text" || (a.value += i.value, a.sourceSpan = new h(a.sourceSpan.start, i.sourceSpan.end), n.removeChild(i), s--);
1186
- }
1187
- });
1188
- }
1189
- function Fa(t7) {
1190
- return La(t7, (e) => e.type === "cdata", (e) => `<![CDATA[${e.value}]]>`);
1191
- }
1192
- function Na(t7) {
1193
- let e = (r) => {
1194
- var n, s;
1195
- return r.type === "element" && r.attrs.length === 0 && r.children.length === 1 && r.firstChild.type === "text" && !O.hasWhitespaceCharacter(r.children[0].value) && !r.firstChild.hasLeadingSpaces && !r.firstChild.hasTrailingSpaces && r.isLeadingSpaceSensitive && !r.hasLeadingSpaces && r.isTrailingSpaceSensitive && !r.hasTrailingSpaces && ((n = r.prev) == null ? void 0 : n.type) === "text" && ((s = r.next) == null ? void 0 : s.type) === "text";
1196
- };
1197
- t7.walk((r) => {
1198
- if (r.children)
1199
- for (let n = 0; n < r.children.length; n++) {
1200
- let s = r.children[n];
1201
- if (!e(s))
1202
- continue;
1203
- let i = s.prev, a = s.next;
1204
- i.value += `<${s.rawName}>` + s.firstChild.value + `</${s.rawName}>` + a.value, i.sourceSpan = new h(i.sourceSpan.start, a.sourceSpan.end), i.isTrailingSpaceSensitive = a.isTrailingSpaceSensitive, i.hasTrailingSpaces = a.hasTrailingSpaces, r.removeChild(s), n--, r.removeChild(a);
1205
- }
1206
- });
1207
- }
1208
- function Pa(t7, e) {
1209
- if (e.parser === "html")
1210
- return;
1211
- let r = /\{\{(.+?)\}\}/su;
1212
- t7.walk((n) => {
1213
- if (Bn(n))
1214
- for (let s of n.children) {
1215
- if (s.type !== "text")
1216
- continue;
1217
- let i = s.sourceSpan.start, a = null, o = s.value.split(r);
1218
- for (let u = 0; u < o.length; u++, i = a) {
1219
- let p = o[u];
1220
- if (u % 2 === 0) {
1221
- a = i.moveBy(p.length), p.length > 0 && n.insertChildBefore(s, { type: "text", value: p, sourceSpan: new h(i, a) });
1222
- continue;
1223
- }
1224
- a = i.moveBy(p.length + 4), n.insertChildBefore(s, { type: "interpolation", sourceSpan: new h(i, a), children: p.length === 0 ? [] : [{ type: "text", value: p, sourceSpan: new h(i.moveBy(2), a.moveBy(-2)) }] });
1225
- }
1226
- n.removeChild(s);
1227
- }
1228
- });
1229
- }
1230
- function Ia(t7) {
1231
- t7.walk((e) => {
1232
- let r = e.$children;
1233
- if (!r)
1234
- return;
1235
- if (r.length === 0 || r.length === 1 && r[0].type === "text" && O.trim(r[0].value).length === 0) {
1236
- e.hasDanglingSpaces = r.length > 0, e.$children = [];
1237
- return;
1238
- }
1239
- let n = Ln(e), s = _r(e);
1240
- if (!n)
1241
- for (let i = 0; i < r.length; i++) {
1242
- let a = r[i];
1243
- if (a.type !== "text")
1244
- continue;
1245
- let { leadingWhitespace: o, text: u, trailingWhitespace: p } = kn(a.value), l = a.prev, f = a.next;
1246
- u ? (a.value = u, a.sourceSpan = new h(a.sourceSpan.start.moveBy(o.length), a.sourceSpan.end.moveBy(-p.length)), o && (l && (l.hasTrailingSpaces = true), a.hasLeadingSpaces = true), p && (a.hasTrailingSpaces = true, f && (f.hasLeadingSpaces = true))) : (e.removeChild(a), i--, (o || p) && (l && (l.hasTrailingSpaces = true), f && (f.hasLeadingSpaces = true)));
1247
- }
1248
- e.isWhitespaceSensitive = n, e.isIndentationSensitive = s;
1249
- });
1250
- }
1251
- function Ra(t7) {
1252
- t7.walk((e) => {
1253
- e.isSelfClosing = !e.children || e.type === "element" && (e.tagDefinition.isVoid || e.endSourceSpan && e.startSourceSpan.start === e.endSourceSpan.start && e.startSourceSpan.end === e.endSourceSpan.end);
1254
- });
1255
- }
1256
- function $a(t7, e) {
1257
- t7.walk((r) => {
1258
- r.type === "element" && (r.hasHtmComponentClosingTag = r.endSourceSpan && /^<\s*\/\s*\/\s*>$/u.test(e.originalText.slice(r.endSourceSpan.start.offset, r.endSourceSpan.end.offset)));
1259
- });
1260
- }
1261
- function Oa(t7, e) {
1262
- t7.walk((r) => {
1263
- r.cssDisplay = Hn(r, e);
1264
- });
1265
- }
1266
- function Ma(t7, e) {
1267
- t7.walk((r) => {
1268
- let { children: n } = r;
1269
- if (n) {
1270
- if (n.length === 0) {
1271
- r.isDanglingSpaceSensitive = Pn(r);
1272
- return;
1273
- }
1274
- for (let s of n)
1275
- s.isLeadingSpaceSensitive = Fn(s, e), s.isTrailingSpaceSensitive = Nn(s, e);
1276
- for (let s = 0; s < n.length; s++) {
1277
- let i = n[s];
1278
- i.isLeadingSpaceSensitive = (s === 0 || i.prev.isTrailingSpaceSensitive) && i.isLeadingSpaceSensitive, i.isTrailingSpaceSensitive = (s === n.length - 1 || i.next.isLeadingSpaceSensitive) && i.isTrailingSpaceSensitive;
1279
- }
1280
- }
1281
- });
1282
- }
1283
- var bs = xa;
1284
- function qa(t7, e, r) {
1285
- let { node: n } = t7;
1286
- switch (n.type) {
1287
- case "front-matter":
1288
- return B(n.raw);
1289
- case "root":
1290
- return e.__onHtmlRoot && e.__onHtmlRoot(n), [E(Re(t7, e, r)), S];
1291
- case "element":
1292
- case "ieConditionalComment":
1293
- return Ds(t7, e, r);
1294
- case "angularControlFlowBlock":
1295
- return Cs(t7, e, r);
1296
- case "angularControlFlowBlockParameters":
1297
- return _s(t7, e, r);
1298
- case "angularControlFlowBlockParameter":
1299
- return O.trim(n.expression);
1300
- case "angularLetDeclaration":
1301
- return E(["@let ", E([n.id, " =", E(k([_, r("init")]))]), ";"]);
1302
- case "angularLetDeclarationInitializer":
1303
- return n.value;
1304
- case "angularIcuExpression":
1305
- return Es(t7, e, r);
1306
- case "angularIcuCase":
1307
- return As(t7, e, r);
1308
- case "ieConditionalStartComment":
1309
- case "ieConditionalEndComment":
1310
- return [Ae(n), Ce(n)];
1311
- case "interpolation":
1312
- return [Ae(n, e), ...t7.map(r, "children"), Ce(n, e)];
1313
- case "text": {
1314
- if (n.parent.type === "interpolation") {
1315
- let o = /\n[^\S\n]*$/u, u = o.test(n.value), p = u ? n.value.replace(o, "") : n.value;
1316
- return [B(p), u ? S : ""];
1317
- }
1318
- let s = G(n, e), i = xt(n), a = z(n, e);
1319
- return i[0] = [s, i[0]], i.push([i.pop(), a]), Dt(i);
1320
- }
1321
- case "docType":
1322
- return [E([Ae(n, e), " ", w(false, n.value.replace(/^html\b/iu, "html"), /\s+/gu, " ")]), Ce(n, e)];
1323
- case "comment":
1324
- return [G(n, e), B(e.originalText.slice(J(n), Z(n))), z(n, e)];
1325
- case "attribute": {
1326
- if (n.value === null)
1327
- return n.rawName;
1328
- let s = vr(n.value), i = Cn(s, '"');
1329
- return [n.rawName, "=", i, B(i === '"' ? w(false, s, '"', "&quot;") : w(false, s, "'", "&apos;")), i];
1330
- }
1331
- case "cdata":
1332
- default:
1333
- throw new _n(n, "HTML");
1334
- }
1335
- }
1336
- var Ha = { preprocess: bs, print: qa, insertPragma: ms, massageAstNode: An, embed: ls, getVisitorKeys: hs }, Ts = Ha;
1337
- var xs = [{ linguistLanguageId: 146, name: "Angular", type: "markup", tmScope: "text.html.basic", aceMode: "html", codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", color: "#e34c26", aliases: ["xhtml"], extensions: [".component.html"], parsers: ["angular"], vscodeLanguageIds: ["html"], filenames: [] }, { linguistLanguageId: 146, name: "HTML", type: "markup", tmScope: "text.html.basic", aceMode: "html", codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", color: "#e34c26", aliases: ["xhtml"], extensions: [".html", ".hta", ".htm", ".html.hl", ".inc", ".xht", ".xhtml", ".mjml"], parsers: ["html"], vscodeLanguageIds: ["html"] }, { linguistLanguageId: 146, name: "Lightning Web Components", type: "markup", tmScope: "text.html.basic", aceMode: "html", codemirrorMode: "htmlmixed", codemirrorMimeType: "text/html", color: "#e34c26", aliases: ["xhtml"], extensions: [], parsers: ["lwc"], vscodeLanguageIds: ["html"], filenames: [] }, { linguistLanguageId: 391, name: "Vue", type: "markup", color: "#41b883", extensions: [".vue"], tmScope: "text.html.vue", aceMode: "html", parsers: ["vue"], vscodeLanguageIds: ["vue"] }];
1338
- var Br = { bracketSpacing: { category: "Common", type: "boolean", default: true, description: "Print spaces between brackets.", oppositeDescription: "Do not print spaces between brackets." }, objectWrap: { category: "Common", type: "choice", default: "preserve", description: "How to wrap object literals.", choices: [{ value: "preserve", description: "Keep as multi-line, if there is a newline between the opening brace and first property." }, { value: "collapse", description: "Fit to a single line when possible." }] }, singleQuote: { category: "Common", type: "boolean", default: false, description: "Use single quotes instead of double quotes." }, proseWrap: { category: "Common", type: "choice", default: "preserve", description: "How to wrap prose.", choices: [{ value: "always", description: "Wrap prose if it exceeds the print width." }, { value: "never", description: "Do not wrap prose." }, { value: "preserve", description: "Wrap prose as-is." }] }, bracketSameLine: { category: "Common", type: "boolean", default: false, description: "Put > of opening tags on the last line instead of on a new line." }, singleAttributePerLine: { category: "Common", type: "boolean", default: false, description: "Enforce single attribute per line in HTML, Vue and JSX." } };
1339
- var ks = "HTML", Va = { bracketSameLine: Br.bracketSameLine, htmlWhitespaceSensitivity: { category: ks, type: "choice", default: "css", description: "How to handle whitespaces in HTML.", choices: [{ value: "css", description: "Respect the default value of CSS display property." }, { value: "strict", description: "Whitespaces are considered sensitive." }, { value: "ignore", description: "Whitespaces are considered insensitive." }] }, singleAttributePerLine: Br.singleAttributePerLine, vueIndentScriptAndStyle: { category: ks, type: "boolean", default: false, description: "Indent script and style tags in Vue files." } }, Bs = Va;
1340
- var Zr = {};
1341
- on(Zr, { angular: () => qo, html: () => Mo, lwc: () => Vo, vue: () => Ho });
1342
- var Ls;
1343
- (function(t7) {
1344
- t7[t7.Emulated = 0] = "Emulated", t7[t7.None = 2] = "None", t7[t7.ShadowDom = 3] = "ShadowDom";
1345
- })(Ls || (Ls = {}));
1346
- var Fs;
1347
- (function(t7) {
1348
- t7[t7.OnPush = 0] = "OnPush", t7[t7.Default = 1] = "Default";
1349
- })(Fs || (Fs = {}));
1350
- var Ns;
1351
- (function(t7) {
1352
- t7[t7.None = 0] = "None", t7[t7.SignalBased = 1] = "SignalBased", t7[t7.HasDecoratorInputTransform = 2] = "HasDecoratorInputTransform";
1353
- })(Ns || (Ns = {}));
1354
- var Lr = { name: "custom-elements" }, Fr = { name: "no-errors-schema" };
1355
- var ee;
1356
- (function(t7) {
1357
- t7[t7.NONE = 0] = "NONE", t7[t7.HTML = 1] = "HTML", t7[t7.STYLE = 2] = "STYLE", t7[t7.SCRIPT = 3] = "SCRIPT", t7[t7.URL = 4] = "URL", t7[t7.RESOURCE_URL = 5] = "RESOURCE_URL";
1358
- })(ee || (ee = {}));
1359
- var Ps;
1360
- (function(t7) {
1361
- t7[t7.Error = 0] = "Error", t7[t7.Warning = 1] = "Warning", t7[t7.Ignore = 2] = "Ignore";
1362
- })(Ps || (Ps = {}));
1363
- var P;
1364
- (function(t7) {
1365
- t7[t7.RAW_TEXT = 0] = "RAW_TEXT", t7[t7.ESCAPABLE_RAW_TEXT = 1] = "ESCAPABLE_RAW_TEXT", t7[t7.PARSABLE_DATA = 2] = "PARSABLE_DATA";
1366
- })(P || (P = {}));
1367
- function ct(t7, e = true) {
1368
- if (t7[0] != ":")
1369
- return [null, t7];
1370
- let r = t7.indexOf(":", 1);
1371
- if (r === -1) {
1372
- if (e)
1373
- throw new Error(`Unsupported format "${t7}" expecting ":namespace:name"`);
1374
- return [null, t7];
1375
- }
1376
- return [t7.slice(1, r), t7.slice(r + 1)];
1377
- }
1378
- function Nr(t7) {
1379
- return ct(t7)[1] === "ng-container";
1380
- }
1381
- function Pr(t7) {
1382
- return ct(t7)[1] === "ng-content";
1383
- }
1384
- function Me(t7) {
1385
- return t7 === null ? null : ct(t7)[0];
1386
- }
1387
- function qe(t7, e) {
1388
- return t7 ? `:${t7}:${e}` : e;
1389
- }
1390
- var qt;
1391
- function Ir() {
1392
- return qt || (qt = {}, Mt(ee.HTML, ["iframe|srcdoc", "*|innerHTML", "*|outerHTML"]), Mt(ee.STYLE, ["*|style"]), Mt(ee.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"]), Mt(ee.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"])), qt;
1393
- }
1394
- function Mt(t7, e) {
1395
- for (let r of e)
1396
- qt[r.toLowerCase()] = t7;
1397
- }
1398
- var Ht = class {
1399
- };
1400
- var Ua = "boolean", Wa = "number", za = "string", Ga = "object", Ya = ["[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:|"], Is = new Map(Object.entries({ class: "className", for: "htmlFor", formaction: "formAction", innerHtml: "innerHTML", readonly: "readOnly", tabindex: "tabIndex" })), ja = Array.from(Is).reduce((t7, [e, r]) => (t7.set(e, r), t7), /* @__PURE__ */ new Map()), Vt = class extends Ht {
1401
- constructor() {
1402
- super(), this._schema = /* @__PURE__ */ new Map(), this._eventSchema = /* @__PURE__ */ new Map(), Ya.forEach((e) => {
1403
- let r = /* @__PURE__ */ new Map(), n = /* @__PURE__ */ new Set(), [s, i] = e.split("|"), a = i.split(","), [o, u] = s.split("^");
1404
- o.split(",").forEach((l) => {
1405
- this._schema.set(l.toLowerCase(), r), this._eventSchema.set(l.toLowerCase(), n);
1406
- });
1407
- let p = u && this._schema.get(u.toLowerCase());
1408
- if (p) {
1409
- for (let [l, f] of p)
1410
- r.set(l, f);
1411
- for (let l of this._eventSchema.get(u.toLowerCase()))
1412
- n.add(l);
1413
- }
1414
- a.forEach((l) => {
1415
- if (l.length > 0)
1416
- switch (l[0]) {
1417
- case "*":
1418
- n.add(l.substring(1));
1419
- break;
1420
- case "!":
1421
- r.set(l.substring(1), Ua);
1422
- break;
1423
- case "#":
1424
- r.set(l.substring(1), Wa);
1425
- break;
1426
- case "%":
1427
- r.set(l.substring(1), Ga);
1428
- break;
1429
- default:
1430
- r.set(l, za);
1431
- }
1432
- });
1433
- });
1434
- }
1435
- hasProperty(e, r, n) {
1436
- if (n.some((i) => i.name === Fr.name))
1437
- return true;
1438
- if (e.indexOf("-") > -1) {
1439
- if (Nr(e) || Pr(e))
1440
- return false;
1441
- if (n.some((i) => i.name === Lr.name))
1442
- return true;
1443
- }
1444
- return (this._schema.get(e.toLowerCase()) || this._schema.get("unknown")).has(r);
1445
- }
1446
- hasElement(e, r) {
1447
- return r.some((n) => n.name === Fr.name) || e.indexOf("-") > -1 && (Nr(e) || Pr(e) || r.some((n) => n.name === Lr.name)) ? true : this._schema.has(e.toLowerCase());
1448
- }
1449
- securityContext(e, r, n) {
1450
- n && (r = this.getMappedPropName(r)), e = e.toLowerCase(), r = r.toLowerCase();
1451
- let s = Ir()[e + "|" + r];
1452
- return s || (s = Ir()["*|" + r], s || ee.NONE);
1453
- }
1454
- getMappedPropName(e) {
1455
- return Is.get(e) ?? e;
1456
- }
1457
- getDefaultComponentElementName() {
1458
- return "ng-component";
1459
- }
1460
- validateProperty(e) {
1461
- return e.toLowerCase().startsWith("on") ? { error: true, msg: `Binding to event property '${e}' is disallowed for security reasons, please use (${e.slice(2)})=...
1462
- If '${e}' is a directive input, make sure the directive is imported by the current module.` } : { error: false };
1463
- }
1464
- validateAttribute(e) {
1465
- return e.toLowerCase().startsWith("on") ? { error: true, msg: `Binding to event attribute '${e}' is disallowed for security reasons, please use (${e.slice(2)})=...` } : { error: false };
1466
- }
1467
- allKnownElementNames() {
1468
- return Array.from(this._schema.keys());
1469
- }
1470
- allKnownAttributesOfElement(e) {
1471
- let r = this._schema.get(e.toLowerCase()) || this._schema.get("unknown");
1472
- return Array.from(r.keys()).map((n) => ja.get(n) ?? n);
1473
- }
1474
- allKnownEventsOfElement(e) {
1475
- return Array.from(this._eventSchema.get(e.toLowerCase()) ?? []);
1476
- }
1477
- normalizeAnimationStyleProperty(e) {
1478
- return ws(e);
1479
- }
1480
- normalizeAnimationStyleValue(e, r, n) {
1481
- let s = "", i = n.toString().trim(), a = null;
1482
- if (Ka(e) && n !== 0 && n !== "0")
1483
- if (typeof n == "number")
1484
- s = "px";
1485
- else {
1486
- let o = n.match(/^[+-]?[\d\.]+([a-z]*)$/);
1487
- o && o[1].length == 0 && (a = `Please provide a CSS unit value for ${r}:${n}`);
1488
- }
1489
- return { error: a, value: i + s };
1490
- }
1491
- };
1492
- function Ka(t7) {
1493
- switch (t7) {
1494
- case "width":
1495
- case "height":
1496
- case "minWidth":
1497
- case "minHeight":
1498
- case "maxWidth":
1499
- case "maxHeight":
1500
- case "left":
1501
- case "top":
1502
- case "bottom":
1503
- case "right":
1504
- case "fontSize":
1505
- case "outlineWidth":
1506
- case "outlineOffset":
1507
- case "paddingTop":
1508
- case "paddingLeft":
1509
- case "paddingBottom":
1510
- case "paddingRight":
1511
- case "marginTop":
1512
- case "marginLeft":
1513
- case "marginBottom":
1514
- case "marginRight":
1515
- case "borderRadius":
1516
- case "borderWidth":
1517
- case "borderTopWidth":
1518
- case "borderLeftWidth":
1519
- case "borderRightWidth":
1520
- case "borderBottomWidth":
1521
- case "textIndent":
1522
- return true;
1523
- default:
1524
- return false;
1525
- }
1526
- }
1527
- var m = class {
1528
- constructor({ closedByChildren: e, implicitNamespacePrefix: r, contentType: n = P.PARSABLE_DATA, closedByParent: s = false, isVoid: i = false, ignoreFirstLf: a = false, preventNamespaceInheritance: o = false, canSelfClose: u = false } = {}) {
1529
- this.closedByChildren = {}, this.closedByParent = false, e && e.length > 0 && e.forEach((p) => this.closedByChildren[p] = true), this.isVoid = i, this.closedByParent = s || i, this.implicitNamespacePrefix = r || null, this.contentType = n, this.ignoreFirstLf = a, this.preventNamespaceInheritance = o, this.canSelfClose = u ?? i;
1530
- }
1531
- isClosedByChild(e) {
1532
- return this.isVoid || e.toLowerCase() in this.closedByChildren;
1533
- }
1534
- getContentType(e) {
1535
- return typeof this.contentType == "object" ? (e === void 0 ? void 0 : this.contentType[e]) ?? this.contentType.default : this.contentType;
1536
- }
1537
- }, Rs, pt;
1538
- function He(t7) {
1539
- return pt || (Rs = new m({ canSelfClose: true }), pt = Object.assign(/* @__PURE__ */ Object.create(null), { base: new m({ isVoid: true }), meta: new m({ isVoid: true }), area: new m({ isVoid: true }), embed: new m({ isVoid: true }), link: new m({ isVoid: true }), img: new m({ isVoid: true }), input: new m({ isVoid: true }), param: new m({ isVoid: true }), hr: new m({ isVoid: true }), br: new m({ isVoid: true }), source: new m({ isVoid: true }), track: new m({ isVoid: true }), wbr: new m({ isVoid: true }), p: new m({ closedByChildren: ["address", "article", "aside", "blockquote", "div", "dl", "fieldset", "footer", "form", "h1", "h2", "h3", "h4", "h5", "h6", "header", "hgroup", "hr", "main", "nav", "ol", "p", "pre", "section", "table", "ul"], closedByParent: true }), thead: new m({ closedByChildren: ["tbody", "tfoot"] }), tbody: new m({ closedByChildren: ["tbody", "tfoot"], closedByParent: true }), tfoot: new m({ closedByChildren: ["tbody"], closedByParent: true }), tr: new m({ closedByChildren: ["tr"], closedByParent: true }), td: new m({ closedByChildren: ["td", "th"], closedByParent: true }), th: new m({ closedByChildren: ["td", "th"], closedByParent: true }), col: new m({ isVoid: true }), svg: new m({ implicitNamespacePrefix: "svg" }), foreignObject: new m({ implicitNamespacePrefix: "svg", preventNamespaceInheritance: true }), math: new m({ implicitNamespacePrefix: "math" }), li: new m({ closedByChildren: ["li"], closedByParent: true }), dt: new m({ closedByChildren: ["dt", "dd"] }), dd: new m({ closedByChildren: ["dt", "dd"], closedByParent: true }), rb: new m({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: true }), rt: new m({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: true }), rtc: new m({ closedByChildren: ["rb", "rtc", "rp"], closedByParent: true }), rp: new m({ closedByChildren: ["rb", "rt", "rtc", "rp"], closedByParent: true }), optgroup: new m({ closedByChildren: ["optgroup"], closedByParent: true }), option: new m({ closedByChildren: ["option", "optgroup"], closedByParent: true }), pre: new m({ ignoreFirstLf: true }), listing: new m({ ignoreFirstLf: true }), style: new m({ contentType: P.RAW_TEXT }), script: new m({ contentType: P.RAW_TEXT }), title: new m({ contentType: { default: P.ESCAPABLE_RAW_TEXT, svg: P.PARSABLE_DATA } }), textarea: new m({ contentType: P.ESCAPABLE_RAW_TEXT, ignoreFirstLf: true }) }), new Vt().allKnownElementNames().forEach((e) => {
1540
- !pt[e] && Me(e) === null && (pt[e] = new m({ canSelfClose: false }));
1541
- })), pt[t7] ?? Rs;
1542
- }
1543
- var ae = class {
1544
- constructor(e, r) {
1545
- this.sourceSpan = e, this.i18n = r;
1546
- }
1547
- }, Ut = class extends ae {
1548
- constructor(e, r, n, s) {
1549
- super(r, s), this.value = e, this.tokens = n, this.type = "text";
1550
- }
1551
- visit(e, r) {
1552
- return e.visitText(this, r);
1553
- }
1554
- }, Wt = class extends ae {
1555
- constructor(e, r, n, s) {
1556
- super(r, s), this.value = e, this.tokens = n, this.type = "cdata";
1557
- }
1558
- visit(e, r) {
1559
- return e.visitCdata(this, r);
1560
- }
1561
- }, zt = class extends ae {
1562
- constructor(e, r, n, s, i, a) {
1563
- super(s, a), this.switchValue = e, this.type = r, this.cases = n, this.switchValueSourceSpan = i;
1564
- }
1565
- visit(e, r) {
1566
- return e.visitExpansion(this, r);
1567
- }
1568
- }, Gt = class {
1569
- constructor(e, r, n, s, i) {
1570
- this.value = e, this.expression = r, this.sourceSpan = n, this.valueSourceSpan = s, this.expSourceSpan = i, this.type = "expansionCase";
1571
- }
1572
- visit(e, r) {
1573
- return e.visitExpansionCase(this, r);
1574
- }
1575
- }, Yt = class extends ae {
1576
- constructor(e, r, n, s, i, a, o) {
1577
- super(n, o), this.name = e, this.value = r, this.keySpan = s, this.valueSpan = i, this.valueTokens = a, this.type = "attribute";
1578
- }
1579
- visit(e, r) {
1580
- return e.visitAttribute(this, r);
1581
- }
1582
- get nameSpan() {
1583
- return this.keySpan;
1584
- }
1585
- }, Y = class extends ae {
1586
- constructor(e, r, n, s, i, a = null, o = null, u) {
1587
- super(s, u), this.name = e, this.attrs = r, this.children = n, this.startSourceSpan = i, this.endSourceSpan = a, this.nameSpan = o, this.type = "element";
1588
- }
1589
- visit(e, r) {
1590
- return e.visitElement(this, r);
1591
- }
1592
- }, jt = class {
1593
- constructor(e, r) {
1594
- this.value = e, this.sourceSpan = r, this.type = "comment";
1595
- }
1596
- visit(e, r) {
1597
- return e.visitComment(this, r);
1598
- }
1599
- }, Kt = class {
1600
- constructor(e, r) {
1601
- this.value = e, this.sourceSpan = r, this.type = "docType";
1602
- }
1603
- visit(e, r) {
1604
- return e.visitDocType(this, r);
1605
- }
1606
- }, te = class extends ae {
1607
- constructor(e, r, n, s, i, a, o = null, u) {
1608
- super(s, u), this.name = e, this.parameters = r, this.children = n, this.nameSpan = i, this.startSourceSpan = a, this.endSourceSpan = o, this.type = "block";
1609
- }
1610
- visit(e, r) {
1611
- return e.visitBlock(this, r);
1612
- }
1613
- }, ht = class {
1614
- constructor(e, r) {
1615
- this.expression = e, this.sourceSpan = r, this.type = "blockParameter", this.startSourceSpan = null, this.endSourceSpan = null;
1616
- }
1617
- visit(e, r) {
1618
- return e.visitBlockParameter(this, r);
1619
- }
1620
- }, ft = class {
1621
- constructor(e, r, n, s, i) {
1622
- this.name = e, this.value = r, this.sourceSpan = n, this.nameSpan = s, this.valueSpan = i, this.type = "letDeclaration", this.startSourceSpan = null, this.endSourceSpan = null;
1623
- }
1624
- visit(e, r) {
1625
- return e.visitLetDeclaration(this, r);
1626
- }
1627
- };
1628
- function Qt(t7, e, r = null) {
1629
- let n = [], s = t7.visit ? (i) => t7.visit(i, r) || i.visit(t7, r) : (i) => i.visit(t7, r);
1630
- return e.forEach((i) => {
1631
- let a = s(i);
1632
- a && n.push(a);
1633
- }), n;
1634
- }
1635
- var mt = class {
1636
- constructor() {
1637
- }
1638
- visitElement(e, r) {
1639
- this.visitChildren(r, (n) => {
1640
- n(e.attrs), n(e.children);
1641
- });
1642
- }
1643
- visitAttribute(e, r) {
1644
- }
1645
- visitText(e, r) {
1646
- }
1647
- visitCdata(e, r) {
1648
- }
1649
- visitComment(e, r) {
1650
- }
1651
- visitDocType(e, r) {
1652
- }
1653
- visitExpansion(e, r) {
1654
- return this.visitChildren(r, (n) => {
1655
- n(e.cases);
1656
- });
1657
- }
1658
- visitExpansionCase(e, r) {
1659
- }
1660
- visitBlock(e, r) {
1661
- this.visitChildren(r, (n) => {
1662
- n(e.parameters), n(e.children);
1663
- });
1664
- }
1665
- visitBlockParameter(e, r) {
1666
- }
1667
- visitLetDeclaration(e, r) {
1668
- }
1669
- visitChildren(e, r) {
1670
- let n = [], s = this;
1671
- function i(a) {
1672
- a && n.push(Qt(s, a, e));
1673
- }
1674
- return r(i), Array.prototype.concat.apply([], n);
1675
- }
1676
- };
1677
- var Ve = { AElig: "Æ", AMP: "&", amp: "&", Aacute: "Á", Abreve: "Ă", Acirc: "Â", Acy: "А", Afr: "𝔄", Agrave: "À", Alpha: "Α", Amacr: "Ā", And: "⩓", Aogon: "Ą", Aopf: "𝔸", ApplyFunction: "⁡", af: "⁡", Aring: "Å", angst: "Å", Ascr: "𝒜", Assign: "≔", colone: "≔", coloneq: "≔", Atilde: "Ã", Auml: "Ä", Backslash: "∖", setminus: "∖", setmn: "∖", smallsetminus: "∖", ssetmn: "∖", Barv: "⫧", Barwed: "⌆", doublebarwedge: "⌆", Bcy: "Б", Because: "∵", becaus: "∵", because: "∵", Bernoullis: "ℬ", Bscr: "ℬ", bernou: "ℬ", Beta: "Β", Bfr: "𝔅", Bopf: "𝔹", Breve: "˘", breve: "˘", Bumpeq: "≎", HumpDownHump: "≎", bump: "≎", CHcy: "Ч", COPY: "©", copy: "©", Cacute: "Ć", Cap: "⋒", CapitalDifferentialD: "ⅅ", DD: "ⅅ", Cayleys: "ℭ", Cfr: "ℭ", Ccaron: "Č", Ccedil: "Ç", Ccirc: "Ĉ", Cconint: "∰", Cdot: "Ċ", Cedilla: "¸", cedil: "¸", CenterDot: "·", centerdot: "·", middot: "·", Chi: "Χ", CircleDot: "⊙", odot: "⊙", CircleMinus: "⊖", ominus: "⊖", CirclePlus: "⊕", oplus: "⊕", CircleTimes: "⊗", otimes: "⊗", ClockwiseContourIntegral: "∲", cwconint: "∲", CloseCurlyDoubleQuote: "”", rdquo: "”", rdquor: "”", CloseCurlyQuote: "’", rsquo: "’", rsquor: "’", Colon: "∷", Proportion: "∷", Colone: "⩴", Congruent: "≡", equiv: "≡", Conint: "∯", DoubleContourIntegral: "∯", ContourIntegral: "∮", conint: "∮", oint: "∮", Copf: "ℂ", complexes: "ℂ", Coproduct: "∐", coprod: "∐", CounterClockwiseContourIntegral: "∳", awconint: "∳", Cross: "⨯", Cscr: "𝒞", Cup: "⋓", CupCap: "≍", asympeq: "≍", DDotrahd: "⤑", DJcy: "Ђ", DScy: "Ѕ", DZcy: "Џ", Dagger: "‡", ddagger: "‡", Darr: "↡", Dashv: "⫤", DoubleLeftTee: "⫤", Dcaron: "Ď", Dcy: "Д", Del: "∇", nabla: "∇", Delta: "Δ", Dfr: "𝔇", DiacriticalAcute: "´", acute: "´", DiacriticalDot: "˙", dot: "˙", DiacriticalDoubleAcute: "˝", dblac: "˝", DiacriticalGrave: "`", grave: "`", DiacriticalTilde: "˜", tilde: "˜", Diamond: "⋄", diam: "⋄", diamond: "⋄", DifferentialD: "ⅆ", dd: "ⅆ", Dopf: "𝔻", Dot: "¨", DoubleDot: "¨", die: "¨", uml: "¨", DotDot: "⃜", DotEqual: "≐", doteq: "≐", esdot: "≐", DoubleDownArrow: "⇓", Downarrow: "⇓", dArr: "⇓", DoubleLeftArrow: "⇐", Leftarrow: "⇐", lArr: "⇐", DoubleLeftRightArrow: "⇔", Leftrightarrow: "⇔", hArr: "⇔", iff: "⇔", DoubleLongLeftArrow: "⟸", Longleftarrow: "⟸", xlArr: "⟸", DoubleLongLeftRightArrow: "⟺", Longleftrightarrow: "⟺", xhArr: "⟺", DoubleLongRightArrow: "⟹", Longrightarrow: "⟹", xrArr: "⟹", DoubleRightArrow: "⇒", Implies: "⇒", Rightarrow: "⇒", rArr: "⇒", DoubleRightTee: "⊨", vDash: "⊨", DoubleUpArrow: "⇑", Uparrow: "⇑", uArr: "⇑", DoubleUpDownArrow: "⇕", Updownarrow: "⇕", vArr: "⇕", DoubleVerticalBar: "∥", par: "∥", parallel: "∥", shortparallel: "∥", spar: "∥", DownArrow: "↓", ShortDownArrow: "↓", darr: "↓", downarrow: "↓", DownArrowBar: "⤓", DownArrowUpArrow: "⇵", duarr: "⇵", DownBreve: "̑", DownLeftRightVector: "⥐", DownLeftTeeVector: "⥞", DownLeftVector: "↽", leftharpoondown: "↽", lhard: "↽", DownLeftVectorBar: "⥖", DownRightTeeVector: "⥟", DownRightVector: "⇁", rhard: "⇁", rightharpoondown: "⇁", DownRightVectorBar: "⥗", DownTee: "⊤", top: "⊤", DownTeeArrow: "↧", mapstodown: "↧", Dscr: "𝒟", Dstrok: "Đ", ENG: "Ŋ", ETH: "Ð", Eacute: "É", Ecaron: "Ě", Ecirc: "Ê", Ecy: "Э", Edot: "Ė", Efr: "𝔈", Egrave: "È", Element: "∈", in: "∈", isin: "∈", isinv: "∈", Emacr: "Ē", EmptySmallSquare: "◻", EmptyVerySmallSquare: "▫", Eogon: "Ę", Eopf: "𝔼", Epsilon: "Ε", Equal: "⩵", EqualTilde: "≂", eqsim: "≂", esim: "≂", Equilibrium: "⇌", rightleftharpoons: "⇌", rlhar: "⇌", Escr: "ℰ", expectation: "ℰ", Esim: "⩳", Eta: "Η", Euml: "Ë", Exists: "∃", exist: "∃", ExponentialE: "ⅇ", ee: "ⅇ", exponentiale: "ⅇ", Fcy: "Ф", Ffr: "𝔉", FilledSmallSquare: "◼", FilledVerySmallSquare: "▪", blacksquare: "▪", squarf: "▪", squf: "▪", Fopf: "𝔽", ForAll: "∀", forall: "∀", Fouriertrf: "ℱ", Fscr: "ℱ", GJcy: "Ѓ", GT: ">", gt: ">", Gamma: "Γ", Gammad: "Ϝ", Gbreve: "Ğ", Gcedil: "Ģ", Gcirc: "Ĝ", Gcy: "Г", Gdot: "Ġ", Gfr: "𝔊", Gg: "⋙", ggg: "⋙", Gopf: "𝔾", GreaterEqual: "≥", ge: "≥", geq: "≥", GreaterEqualLess: "⋛", gel: "⋛", gtreqless: "⋛", GreaterFullEqual: "≧", gE: "≧", geqq: "≧", GreaterGreater: "⪢", GreaterLess: "≷", gl: "≷", gtrless: "≷", GreaterSlantEqual: "⩾", geqslant: "⩾", ges: "⩾", GreaterTilde: "≳", gsim: "≳", gtrsim: "≳", Gscr: "𝒢", Gt: "≫", NestedGreaterGreater: "≫", gg: "≫", HARDcy: "Ъ", Hacek: "ˇ", caron: "ˇ", Hat: "^", Hcirc: "Ĥ", Hfr: "ℌ", Poincareplane: "ℌ", HilbertSpace: "ℋ", Hscr: "ℋ", hamilt: "ℋ", Hopf: "ℍ", quaternions: "ℍ", HorizontalLine: "─", boxh: "─", Hstrok: "Ħ", HumpEqual: "≏", bumpe: "≏", bumpeq: "≏", IEcy: "Е", IJlig: "IJ", IOcy: "Ё", Iacute: "Í", Icirc: "Î", Icy: "И", Idot: "İ", Ifr: "ℑ", Im: "ℑ", image: "ℑ", imagpart: "ℑ", Igrave: "Ì", Imacr: "Ī", ImaginaryI: "ⅈ", ii: "ⅈ", Int: "∬", Integral: "∫", int: "∫", Intersection: "⋂", bigcap: "⋂", xcap: "⋂", InvisibleComma: "⁣", ic: "⁣", InvisibleTimes: "⁢", it: "⁢", Iogon: "Į", Iopf: "𝕀", Iota: "Ι", Iscr: "ℐ", imagline: "ℐ", Itilde: "Ĩ", Iukcy: "І", Iuml: "Ï", Jcirc: "Ĵ", Jcy: "Й", Jfr: "𝔍", Jopf: "𝕁", Jscr: "𝒥", Jsercy: "Ј", Jukcy: "Є", KHcy: "Х", KJcy: "Ќ", Kappa: "Κ", Kcedil: "Ķ", Kcy: "К", Kfr: "𝔎", Kopf: "𝕂", Kscr: "𝒦", LJcy: "Љ", LT: "<", lt: "<", Lacute: "Ĺ", Lambda: "Λ", Lang: "⟪", Laplacetrf: "ℒ", Lscr: "ℒ", lagran: "ℒ", Larr: "↞", twoheadleftarrow: "↞", Lcaron: "Ľ", Lcedil: "Ļ", Lcy: "Л", LeftAngleBracket: "⟨", lang: "⟨", langle: "⟨", LeftArrow: "←", ShortLeftArrow: "←", larr: "←", leftarrow: "←", slarr: "←", LeftArrowBar: "⇤", larrb: "⇤", LeftArrowRightArrow: "⇆", leftrightarrows: "⇆", lrarr: "⇆", LeftCeiling: "⌈", lceil: "⌈", LeftDoubleBracket: "⟦", lobrk: "⟦", LeftDownTeeVector: "⥡", LeftDownVector: "⇃", dharl: "⇃", downharpoonleft: "⇃", LeftDownVectorBar: "⥙", LeftFloor: "⌊", lfloor: "⌊", LeftRightArrow: "↔", harr: "↔", leftrightarrow: "↔", LeftRightVector: "⥎", LeftTee: "⊣", dashv: "⊣", LeftTeeArrow: "↤", mapstoleft: "↤", LeftTeeVector: "⥚", LeftTriangle: "⊲", vartriangleleft: "⊲", vltri: "⊲", LeftTriangleBar: "⧏", LeftTriangleEqual: "⊴", ltrie: "⊴", trianglelefteq: "⊴", LeftUpDownVector: "⥑", LeftUpTeeVector: "⥠", LeftUpVector: "↿", uharl: "↿", upharpoonleft: "↿", LeftUpVectorBar: "⥘", LeftVector: "↼", leftharpoonup: "↼", lharu: "↼", LeftVectorBar: "⥒", LessEqualGreater: "⋚", leg: "⋚", lesseqgtr: "⋚", LessFullEqual: "≦", lE: "≦", leqq: "≦", LessGreater: "≶", lessgtr: "≶", lg: "≶", LessLess: "⪡", LessSlantEqual: "⩽", leqslant: "⩽", les: "⩽", LessTilde: "≲", lesssim: "≲", lsim: "≲", Lfr: "𝔏", Ll: "⋘", Lleftarrow: "⇚", lAarr: "⇚", Lmidot: "Ŀ", LongLeftArrow: "⟵", longleftarrow: "⟵", xlarr: "⟵", LongLeftRightArrow: "⟷", longleftrightarrow: "⟷", xharr: "⟷", LongRightArrow: "⟶", longrightarrow: "⟶", xrarr: "⟶", Lopf: "𝕃", LowerLeftArrow: "↙", swarr: "↙", swarrow: "↙", LowerRightArrow: "↘", searr: "↘", searrow: "↘", Lsh: "↰", lsh: "↰", Lstrok: "Ł", Lt: "≪", NestedLessLess: "≪", ll: "≪", Map: "⤅", Mcy: "М", MediumSpace: " ", Mellintrf: "ℳ", Mscr: "ℳ", phmmat: "ℳ", Mfr: "𝔐", MinusPlus: "∓", mnplus: "∓", mp: "∓", Mopf: "𝕄", Mu: "Μ", NJcy: "Њ", Nacute: "Ń", Ncaron: "Ň", Ncedil: "Ņ", Ncy: "Н", NegativeMediumSpace: "​", NegativeThickSpace: "​", NegativeThinSpace: "​", NegativeVeryThinSpace: "​", ZeroWidthSpace: "​", NewLine: `
1678
- `, 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: "‌" }, Xa = "";
1679
- Ve.ngsp = Xa;
1680
- var Ja = [/@/, /^\s*$/, /[<>]/, /^[{}]$/, /&(#|[a-z])/i, /^\/\//];
1681
- function $s(t7, e) {
1682
- if (e != null && !(Array.isArray(e) && e.length == 2))
1683
- throw new Error(`Expected '${t7}' to be an array, [start, end].`);
1684
- if (e != null) {
1685
- let r = e[0], n = e[1];
1686
- Ja.forEach((s) => {
1687
- if (s.test(r) || s.test(n))
1688
- throw new Error(`['${r}', '${n}'] contains unusable interpolation symbol.`);
1689
- });
1690
- }
1691
- }
1692
- var Rr = class t2 {
1693
- static fromArray(e) {
1694
- return e ? ($s("interpolation", e), new t2(e[0], e[1])) : $r;
1695
- }
1696
- constructor(e, r) {
1697
- this.start = e, this.end = r;
1698
- }
1699
- }, $r = new Rr("{{", "}}");
1700
- var gt = class extends Oe {
1701
- constructor(e, r, n) {
1702
- super(n, e), this.tokenType = r;
1703
- }
1704
- }, Vr = class {
1705
- constructor(e, r, n) {
1706
- this.tokens = e, this.errors = r, this.nonNormalizedIcuExpressions = n;
1707
- }
1708
- };
1709
- function Qs(t7, e, r, n = {}) {
1710
- let s = new Ur(new De(t7, e), r, n);
1711
- return s.tokenize(), new Vr(wo(s.tokens), s.errors, s.nonNormalizedIcuExpressions);
1712
- }
1713
- var So = /\r\n?/g;
1714
- function Ue(t7) {
1715
- return `Unexpected character "${t7 === 0 ? "EOF" : String.fromCharCode(t7)}"`;
1716
- }
1717
- function Vs(t7) {
1718
- return `Unknown entity "${t7}" - use the "&#<decimal>;" or "&#x<hex>;" syntax`;
1719
- }
1720
- function _o(t7, e) {
1721
- return `Unable to parse entity "${e}" - ${t7} character reference entities must end with ";"`;
1722
- }
1723
- var tr;
1724
- (function(t7) {
1725
- t7.HEX = "hexadecimal", t7.DEC = "decimal";
1726
- })(tr || (tr = {}));
1727
- var Ct = class {
1728
- constructor(e) {
1729
- this.error = e;
1730
- }
1731
- }, Ur = class {
1732
- constructor(e, r, n) {
1733
- this._getTagContentType = r, this._currentTokenStart = null, this._currentTokenType = null, this._expansionCaseStack = [], this._inInterpolation = false, this._fullNameStack = [], this.tokens = [], this.errors = [], this.nonNormalizedIcuExpressions = [], this._tokenizeIcu = n.tokenizeExpansionForms || false, this._interpolationConfig = n.interpolationConfig || $r, this._leadingTriviaCodePoints = n.leadingTriviaChars && n.leadingTriviaChars.map((i) => i.codePointAt(0) || 0), this._canSelfClose = n.canSelfClose || false, this._allowHtmComponentClosingTags = n.allowHtmComponentClosingTags || false;
1734
- let s = n.range || { endPos: e.content.length, startPos: 0, startLine: 0, startCol: 0 };
1735
- this._cursor = n.escapedString ? new Wr(e, s) : new rr(e, s), this._preserveLineEndings = n.preserveLineEndings || false, this._i18nNormalizeLineEndingsInICUs = n.i18nNormalizeLineEndingsInICUs || false, this._tokenizeBlocks = n.tokenizeBlocks ?? true, this._tokenizeLet = n.tokenizeLet ?? true;
1736
- try {
1737
- this._cursor.init();
1738
- } catch (i) {
1739
- this.handleError(i);
1740
- }
1741
- }
1742
- _processCarriageReturns(e) {
1743
- return this._preserveLineEndings ? e : e.replace(So, `
1744
- `);
1745
- }
1746
- tokenize() {
1747
- for (; this._cursor.peek() !== 0; ) {
1748
- let e = this._cursor.clone();
1749
- try {
1750
- if (this._attemptCharCode(60))
1751
- if (this._attemptCharCode(33))
1752
- this._attemptStr("[CDATA[") ? this._consumeCdata(e) : this._attemptStr("--") ? this._consumeComment(e) : this._attemptStrCaseInsensitive("doctype") ? this._consumeDocType(e) : this._consumeBogusComment(e);
1753
- else if (this._attemptCharCode(47))
1754
- this._consumeTagClose(e);
1755
- else {
1756
- let r = this._cursor.clone();
1757
- this._attemptCharCode(63) ? (this._cursor = r, this._consumeBogusComment(e)) : this._consumeTagOpen(e);
1758
- }
1759
- else
1760
- 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());
1761
- } catch (r) {
1762
- this.handleError(r);
1763
- }
1764
- }
1765
- this._beginToken(34), this._endToken([]);
1766
- }
1767
- _getBlockName() {
1768
- let e = false, r = this._cursor.clone();
1769
- return this._attemptCharCodeUntilFn((n) => ut(n) ? !e : zs(n) ? (e = true, false) : true), this._cursor.getChars(r).trim();
1770
- }
1771
- _consumeBlockStart(e) {
1772
- this._beginToken(25, e);
1773
- let r = this._endToken([this._getBlockName()]);
1774
- if (this._cursor.peek() === 40)
1775
- if (this._cursor.advance(), this._consumeBlockParameters(), this._attemptCharCodeUntilFn(b), this._attemptCharCode(41))
1776
- this._attemptCharCodeUntilFn(b);
1777
- else {
1778
- r.type = 29;
1779
- return;
1780
- }
1781
- this._attemptCharCode(123) ? (this._beginToken(26), this._endToken([])) : r.type = 29;
1782
- }
1783
- _consumeBlockEnd(e) {
1784
- this._beginToken(27, e), this._endToken([]);
1785
- }
1786
- _consumeBlockParameters() {
1787
- for (this._attemptCharCodeUntilFn(Gs); this._cursor.peek() !== 41 && this._cursor.peek() !== 0; ) {
1788
- this._beginToken(28);
1789
- let e = this._cursor.clone(), r = null, n = 0;
1790
- for (; this._cursor.peek() !== 59 && this._cursor.peek() !== 0 || r !== null; ) {
1791
- let s = this._cursor.peek();
1792
- if (s === 92)
1793
- this._cursor.advance();
1794
- else if (s === r)
1795
- r = null;
1796
- else if (r === null && $t(s))
1797
- r = s;
1798
- else if (s === 40 && r === null)
1799
- n++;
1800
- else if (s === 41 && r === null) {
1801
- if (n === 0)
1802
- break;
1803
- n > 0 && n--;
1804
- }
1805
- this._cursor.advance();
1806
- }
1807
- this._endToken([this._cursor.getChars(e)]), this._attemptCharCodeUntilFn(Gs);
1808
- }
1809
- }
1810
- _consumeLetDeclaration(e) {
1811
- if (this._beginToken(30, e), ut(this._cursor.peek()))
1812
- this._attemptCharCodeUntilFn(b);
1813
- else {
1814
- let s = this._endToken([this._cursor.getChars(e)]);
1815
- s.type = 33;
1816
- return;
1817
- }
1818
- let r = this._endToken([this._getLetDeclarationName()]);
1819
- if (this._attemptCharCodeUntilFn(b), !this._attemptCharCode(61)) {
1820
- r.type = 33;
1821
- return;
1822
- }
1823
- this._attemptCharCodeUntilFn((s) => b(s) && !Rt(s)), this._consumeLetDeclarationValue(), this._cursor.peek() === 59 ? (this._beginToken(32), this._endToken([]), this._cursor.advance()) : (r.type = 33, r.sourceSpan = this._cursor.getSpan(e));
1824
- }
1825
- _getLetDeclarationName() {
1826
- let e = this._cursor.clone(), r = false;
1827
- return this._attemptCharCodeUntilFn((n) => lt(n) || n === 36 || n === 95 || r && It(n) ? (r = true, false) : true), this._cursor.getChars(e).trim();
1828
- }
1829
- _consumeLetDeclarationValue() {
1830
- let e = this._cursor.clone();
1831
- for (this._beginToken(31, e); this._cursor.peek() !== 0; ) {
1832
- let r = this._cursor.peek();
1833
- if (r === 59)
1834
- break;
1835
- $t(r) && (this._cursor.advance(), this._attemptCharCodeUntilFn((n) => n === 92 ? (this._cursor.advance(), false) : n === r)), this._cursor.advance();
1836
- }
1837
- this._endToken([this._cursor.getChars(e)]);
1838
- }
1839
- _tokenizeExpansionForm() {
1840
- if (this.isExpansionFormStart())
1841
- return this._consumeExpansionFormStart(), true;
1842
- if (vo(this._cursor.peek()) && this._isInExpansionForm())
1843
- return this._consumeExpansionCaseStart(), true;
1844
- if (this._cursor.peek() === 125) {
1845
- if (this._isInExpansionCase())
1846
- return this._consumeExpansionCaseEnd(), true;
1847
- if (this._isInExpansionForm())
1848
- return this._consumeExpansionFormEnd(), true;
1849
- }
1850
- return false;
1851
- }
1852
- _beginToken(e, r = this._cursor.clone()) {
1853
- this._currentTokenStart = r, this._currentTokenType = e;
1854
- }
1855
- _endToken(e, r) {
1856
- if (this._currentTokenStart === null)
1857
- throw new gt("Programming error - attempted to end a token when there was no start to the token", this._currentTokenType, this._cursor.getSpan(r));
1858
- if (this._currentTokenType === null)
1859
- throw new gt("Programming error - attempted to end a token which has no token type", null, this._cursor.getSpan(this._currentTokenStart));
1860
- let n = { type: this._currentTokenType, parts: e, sourceSpan: (r ?? this._cursor).getSpan(this._currentTokenStart, this._leadingTriviaCodePoints) };
1861
- return this.tokens.push(n), this._currentTokenStart = null, this._currentTokenType = null, n;
1862
- }
1863
- _createError(e, r) {
1864
- this._isInExpansionForm() && (e += ` (Do you have an unescaped "{" in your template? Use "{{ '{' }}") to escape it.)`);
1865
- let n = new gt(e, this._currentTokenType, r);
1866
- return this._currentTokenStart = null, this._currentTokenType = null, new Ct(n);
1867
- }
1868
- handleError(e) {
1869
- if (e instanceof St && (e = this._createError(e.msg, this._cursor.getSpan(e.cursor))), e instanceof Ct)
1870
- this.errors.push(e.error);
1871
- else
1872
- throw e;
1873
- }
1874
- _attemptCharCode(e) {
1875
- return this._cursor.peek() === e ? (this._cursor.advance(), true) : false;
1876
- }
1877
- _attemptCharCodeCaseInsensitive(e) {
1878
- return yo(this._cursor.peek(), e) ? (this._cursor.advance(), true) : false;
1879
- }
1880
- _requireCharCode(e) {
1881
- let r = this._cursor.clone();
1882
- if (!this._attemptCharCode(e))
1883
- throw this._createError(Ue(this._cursor.peek()), this._cursor.getSpan(r));
1884
- }
1885
- _attemptStr(e) {
1886
- let r = e.length;
1887
- if (this._cursor.charsLeft() < r)
1888
- return false;
1889
- let n = this._cursor.clone();
1890
- for (let s = 0; s < r; s++)
1891
- if (!this._attemptCharCode(e.charCodeAt(s)))
1892
- return this._cursor = n, false;
1893
- return true;
1894
- }
1895
- _attemptStrCaseInsensitive(e) {
1896
- for (let r = 0; r < e.length; r++)
1897
- if (!this._attemptCharCodeCaseInsensitive(e.charCodeAt(r)))
1898
- return false;
1899
- return true;
1900
- }
1901
- _requireStr(e) {
1902
- let r = this._cursor.clone();
1903
- if (!this._attemptStr(e))
1904
- throw this._createError(Ue(this._cursor.peek()), this._cursor.getSpan(r));
1905
- }
1906
- _requireStrCaseInsensitive(e) {
1907
- let r = this._cursor.clone();
1908
- if (!this._attemptStrCaseInsensitive(e))
1909
- throw this._createError(Ue(this._cursor.peek()), this._cursor.getSpan(r));
1910
- }
1911
- _attemptCharCodeUntilFn(e) {
1912
- for (; !e(this._cursor.peek()); )
1913
- this._cursor.advance();
1914
- }
1915
- _requireCharCodeUntilFn(e, r) {
1916
- let n = this._cursor.clone();
1917
- if (this._attemptCharCodeUntilFn(e), this._cursor.diff(n) < r)
1918
- throw this._createError(Ue(this._cursor.peek()), this._cursor.getSpan(n));
1919
- }
1920
- _attemptUntilChar(e) {
1921
- for (; this._cursor.peek() !== e; )
1922
- this._cursor.advance();
1923
- }
1924
- _readChar() {
1925
- let e = String.fromCodePoint(this._cursor.peek());
1926
- return this._cursor.advance(), e;
1927
- }
1928
- _consumeEntity(e) {
1929
- this._beginToken(9);
1930
- let r = this._cursor.clone();
1931
- if (this._cursor.advance(), this._attemptCharCode(35)) {
1932
- let n = this._attemptCharCode(120) || this._attemptCharCode(88), s = this._cursor.clone();
1933
- if (this._attemptCharCodeUntilFn(Ao), this._cursor.peek() != 59) {
1934
- this._cursor.advance();
1935
- let a = n ? tr.HEX : tr.DEC;
1936
- throw this._createError(_o(a, this._cursor.getChars(r)), this._cursor.getSpan());
1937
- }
1938
- let i = this._cursor.getChars(s);
1939
- this._cursor.advance();
1940
- try {
1941
- let a = parseInt(i, n ? 16 : 10);
1942
- this._endToken([String.fromCharCode(a), this._cursor.getChars(r)]);
1943
- } catch {
1944
- throw this._createError(Vs(this._cursor.getChars(r)), this._cursor.getSpan());
1945
- }
1946
- } else {
1947
- let n = this._cursor.clone();
1948
- if (this._attemptCharCodeUntilFn(Do), this._cursor.peek() != 59)
1949
- this._beginToken(e, r), this._cursor = n, this._endToken(["&"]);
1950
- else {
1951
- let s = this._cursor.getChars(n);
1952
- this._cursor.advance();
1953
- let i = Ve[s];
1954
- if (!i)
1955
- throw this._createError(Vs(s), this._cursor.getSpan(r));
1956
- this._endToken([i, `&${s};`]);
1957
- }
1958
- }
1959
- }
1960
- _consumeRawText(e, r) {
1961
- this._beginToken(e ? 6 : 7);
1962
- let n = [];
1963
- for (; ; ) {
1964
- let s = this._cursor.clone(), i = r();
1965
- if (this._cursor = s, i)
1966
- break;
1967
- e && this._cursor.peek() === 38 ? (this._endToken([this._processCarriageReturns(n.join(""))]), n.length = 0, this._consumeEntity(6), this._beginToken(6)) : n.push(this._readChar());
1968
- }
1969
- this._endToken([this._processCarriageReturns(n.join(""))]);
1970
- }
1971
- _consumeComment(e) {
1972
- this._beginToken(10, e), this._endToken([]), this._consumeRawText(false, () => this._attemptStr("-->")), this._beginToken(11), this._requireStr("-->"), this._endToken([]);
1973
- }
1974
- _consumeBogusComment(e) {
1975
- this._beginToken(10, e), this._endToken([]), this._consumeRawText(false, () => this._cursor.peek() === 62), this._beginToken(11), this._cursor.advance(), this._endToken([]);
1976
- }
1977
- _consumeCdata(e) {
1978
- this._beginToken(12, e), this._endToken([]), this._consumeRawText(false, () => this._attemptStr("]]>")), this._beginToken(13), this._requireStr("]]>"), this._endToken([]);
1979
- }
1980
- _consumeDocType(e) {
1981
- this._beginToken(18, e), this._endToken([]), this._consumeRawText(false, () => this._cursor.peek() === 62), this._beginToken(19), this._cursor.advance(), this._endToken([]);
1982
- }
1983
- _consumePrefixAndName() {
1984
- let e = this._cursor.clone(), r = "";
1985
- for (; this._cursor.peek() !== 58 && !Eo(this._cursor.peek()); )
1986
- this._cursor.advance();
1987
- let n;
1988
- this._cursor.peek() === 58 ? (r = this._cursor.getChars(e), this._cursor.advance(), n = this._cursor.clone()) : n = e, this._requireCharCodeUntilFn(Us, r === "" ? 0 : 1);
1989
- let s = this._cursor.getChars(n);
1990
- return [r, s];
1991
- }
1992
- _consumeTagOpen(e) {
1993
- let r, n, s, i = [];
1994
- try {
1995
- if (!lt(this._cursor.peek()))
1996
- throw this._createError(Ue(this._cursor.peek()), this._cursor.getSpan(e));
1997
- for (s = this._consumeTagOpenStart(e), n = s.parts[0], r = s.parts[1], this._attemptCharCodeUntilFn(b); this._cursor.peek() !== 47 && this._cursor.peek() !== 62 && this._cursor.peek() !== 60 && this._cursor.peek() !== 0; ) {
1998
- let [o, u] = this._consumeAttributeName();
1999
- if (this._attemptCharCodeUntilFn(b), this._attemptCharCode(61)) {
2000
- this._attemptCharCodeUntilFn(b);
2001
- let p = this._consumeAttributeValue();
2002
- i.push({ prefix: o, name: u, value: p });
2003
- } else
2004
- i.push({ prefix: o, name: u });
2005
- this._attemptCharCodeUntilFn(b);
2006
- }
2007
- this._consumeTagOpenEnd();
2008
- } catch (o) {
2009
- if (o instanceof Ct) {
2010
- s ? s.type = 4 : (this._beginToken(5, e), this._endToken(["<"]));
2011
- return;
2012
- }
2013
- throw o;
2014
- }
2015
- if (this._canSelfClose && this.tokens[this.tokens.length - 1].type === 2)
2016
- return;
2017
- let a = this._getTagContentType(r, n, this._fullNameStack.length > 0, i);
2018
- this._handleFullNameStackForTagOpen(n, r), a === P.RAW_TEXT ? this._consumeRawTextWithTagClose(n, r, false) : a === P.ESCAPABLE_RAW_TEXT && this._consumeRawTextWithTagClose(n, r, true);
2019
- }
2020
- _consumeRawTextWithTagClose(e, r, n) {
2021
- this._consumeRawText(n, () => !this._attemptCharCode(60) || !this._attemptCharCode(47) || (this._attemptCharCodeUntilFn(b), !this._attemptStrCaseInsensitive(e ? `${e}:${r}` : r)) ? false : (this._attemptCharCodeUntilFn(b), this._attemptCharCode(62))), this._beginToken(3), this._requireCharCodeUntilFn((s) => s === 62, 3), this._cursor.advance(), this._endToken([e, r]), this._handleFullNameStackForTagClose(e, r);
2022
- }
2023
- _consumeTagOpenStart(e) {
2024
- this._beginToken(0, e);
2025
- let r = this._consumePrefixAndName();
2026
- return this._endToken(r);
2027
- }
2028
- _consumeAttributeName() {
2029
- let e = this._cursor.peek();
2030
- if (e === 39 || e === 34)
2031
- throw this._createError(Ue(e), this._cursor.getSpan());
2032
- this._beginToken(14);
2033
- let r = this._consumePrefixAndName();
2034
- return this._endToken(r), r;
2035
- }
2036
- _consumeAttributeValue() {
2037
- let e;
2038
- if (this._cursor.peek() === 39 || this._cursor.peek() === 34) {
2039
- let r = this._cursor.peek();
2040
- this._consumeQuote(r);
2041
- let n = () => this._cursor.peek() === r;
2042
- e = this._consumeWithInterpolation(16, 17, n, n), this._consumeQuote(r);
2043
- } else {
2044
- let r = () => Us(this._cursor.peek());
2045
- e = this._consumeWithInterpolation(16, 17, r, r);
2046
- }
2047
- return e;
2048
- }
2049
- _consumeQuote(e) {
2050
- this._beginToken(15), this._requireCharCode(e), this._endToken([String.fromCodePoint(e)]);
2051
- }
2052
- _consumeTagOpenEnd() {
2053
- let e = this._attemptCharCode(47) ? 2 : 1;
2054
- this._beginToken(e), this._requireCharCode(62), this._endToken([]);
2055
- }
2056
- _consumeTagClose(e) {
2057
- if (this._beginToken(3, e), this._attemptCharCodeUntilFn(b), this._allowHtmComponentClosingTags && this._attemptCharCode(47))
2058
- this._attemptCharCodeUntilFn(b), this._requireCharCode(62), this._endToken([]);
2059
- else {
2060
- let [r, n] = this._consumePrefixAndName();
2061
- this._attemptCharCodeUntilFn(b), this._requireCharCode(62), this._endToken([r, n]), this._handleFullNameStackForTagClose(r, n);
2062
- }
2063
- }
2064
- _consumeExpansionFormStart() {
2065
- this._beginToken(20), this._requireCharCode(123), this._endToken([]), this._expansionCaseStack.push(20), this._beginToken(7);
2066
- let e = this._readUntil(44), r = this._processCarriageReturns(e);
2067
- if (this._i18nNormalizeLineEndingsInICUs)
2068
- this._endToken([r]);
2069
- else {
2070
- let s = this._endToken([e]);
2071
- r !== e && this.nonNormalizedIcuExpressions.push(s);
2072
- }
2073
- this._requireCharCode(44), this._attemptCharCodeUntilFn(b), this._beginToken(7);
2074
- let n = this._readUntil(44);
2075
- this._endToken([n]), this._requireCharCode(44), this._attemptCharCodeUntilFn(b);
2076
- }
2077
- _consumeExpansionCaseStart() {
2078
- this._beginToken(21);
2079
- let e = this._readUntil(123).trim();
2080
- this._endToken([e]), this._attemptCharCodeUntilFn(b), this._beginToken(22), this._requireCharCode(123), this._endToken([]), this._attemptCharCodeUntilFn(b), this._expansionCaseStack.push(22);
2081
- }
2082
- _consumeExpansionCaseEnd() {
2083
- this._beginToken(23), this._requireCharCode(125), this._endToken([]), this._attemptCharCodeUntilFn(b), this._expansionCaseStack.pop();
2084
- }
2085
- _consumeExpansionFormEnd() {
2086
- this._beginToken(24), this._requireCharCode(125), this._endToken([]), this._expansionCaseStack.pop();
2087
- }
2088
- _consumeWithInterpolation(e, r, n, s) {
2089
- this._beginToken(e);
2090
- let i = [];
2091
- for (; !n(); ) {
2092
- let o = this._cursor.clone();
2093
- this._interpolationConfig && this._attemptStr(this._interpolationConfig.start) ? (this._endToken([this._processCarriageReturns(i.join(""))], o), i.length = 0, this._consumeInterpolation(r, o, s), this._beginToken(e)) : this._cursor.peek() === 38 ? (this._endToken([this._processCarriageReturns(i.join(""))]), i.length = 0, this._consumeEntity(e), this._beginToken(e)) : i.push(this._readChar());
2094
- }
2095
- this._inInterpolation = false;
2096
- let a = this._processCarriageReturns(i.join(""));
2097
- return this._endToken([a]), a;
2098
- }
2099
- _consumeInterpolation(e, r, n) {
2100
- let s = [];
2101
- this._beginToken(e, r), s.push(this._interpolationConfig.start);
2102
- let i = this._cursor.clone(), a = null, o = false;
2103
- for (; this._cursor.peek() !== 0 && (n === null || !n()); ) {
2104
- let u = this._cursor.clone();
2105
- if (this._isTagStart()) {
2106
- this._cursor = u, s.push(this._getProcessedChars(i, u)), this._endToken(s);
2107
- return;
2108
- }
2109
- if (a === null)
2110
- if (this._attemptStr(this._interpolationConfig.end)) {
2111
- s.push(this._getProcessedChars(i, u)), s.push(this._interpolationConfig.end), this._endToken(s);
2112
- return;
2113
- } else
2114
- this._attemptStr("//") && (o = true);
2115
- let p = this._cursor.peek();
2116
- this._cursor.advance(), p === 92 ? this._cursor.advance() : p === a ? a = null : !o && a === null && $t(p) && (a = p);
2117
- }
2118
- s.push(this._getProcessedChars(i, this._cursor)), this._endToken(s);
2119
- }
2120
- _getProcessedChars(e, r) {
2121
- return this._processCarriageReturns(r.getChars(e));
2122
- }
2123
- _isTextEnd() {
2124
- 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));
2125
- }
2126
- _isTagStart() {
2127
- if (this._cursor.peek() === 60) {
2128
- let e = this._cursor.clone();
2129
- e.advance();
2130
- let r = e.peek();
2131
- if (97 <= r && r <= 122 || 65 <= r && r <= 90 || r === 47 || r === 33)
2132
- return true;
2133
- }
2134
- return false;
2135
- }
2136
- _isBlockStart() {
2137
- if (this._tokenizeBlocks && this._cursor.peek() === 64) {
2138
- let e = this._cursor.clone();
2139
- if (e.advance(), zs(e.peek()))
2140
- return true;
2141
- }
2142
- return false;
2143
- }
2144
- _readUntil(e) {
2145
- let r = this._cursor.clone();
2146
- return this._attemptUntilChar(e), this._cursor.getChars(r);
2147
- }
2148
- _isInExpansion() {
2149
- return this._isInExpansionCase() || this._isInExpansionForm();
2150
- }
2151
- _isInExpansionCase() {
2152
- return this._expansionCaseStack.length > 0 && this._expansionCaseStack[this._expansionCaseStack.length - 1] === 22;
2153
- }
2154
- _isInExpansionForm() {
2155
- return this._expansionCaseStack.length > 0 && this._expansionCaseStack[this._expansionCaseStack.length - 1] === 20;
2156
- }
2157
- isExpansionFormStart() {
2158
- if (this._cursor.peek() !== 123)
2159
- return false;
2160
- if (this._interpolationConfig) {
2161
- let e = this._cursor.clone(), r = this._attemptStr(this._interpolationConfig.start);
2162
- return this._cursor = e, !r;
2163
- }
2164
- return true;
2165
- }
2166
- _handleFullNameStackForTagOpen(e, r) {
2167
- let n = qe(e, r);
2168
- (this._fullNameStack.length === 0 || this._fullNameStack[this._fullNameStack.length - 1] === n) && this._fullNameStack.push(n);
2169
- }
2170
- _handleFullNameStackForTagClose(e, r) {
2171
- let n = qe(e, r);
2172
- this._fullNameStack.length !== 0 && this._fullNameStack[this._fullNameStack.length - 1] === n && this._fullNameStack.pop();
2173
- }
2174
- };
2175
- function b(t7) {
2176
- return !ut(t7) || t7 === 0;
2177
- }
2178
- function Us(t7) {
2179
- return ut(t7) || t7 === 62 || t7 === 60 || t7 === 47 || t7 === 39 || t7 === 34 || t7 === 61 || t7 === 0;
2180
- }
2181
- function Eo(t7) {
2182
- return (t7 < 97 || 122 < t7) && (t7 < 65 || 90 < t7) && (t7 < 48 || t7 > 57);
2183
- }
2184
- function Ao(t7) {
2185
- return t7 === 59 || t7 === 0 || !vs(t7);
2186
- }
2187
- function Do(t7) {
2188
- return t7 === 59 || t7 === 0 || !lt(t7);
2189
- }
2190
- function vo(t7) {
2191
- return t7 !== 125;
2192
- }
2193
- function yo(t7, e) {
2194
- return Ws(t7) === Ws(e);
2195
- }
2196
- function Ws(t7) {
2197
- return t7 >= 97 && t7 <= 122 ? t7 - 97 + 65 : t7;
2198
- }
2199
- function zs(t7) {
2200
- return lt(t7) || It(t7) || t7 === 95;
2201
- }
2202
- function Gs(t7) {
2203
- return t7 !== 59 && b(t7);
2204
- }
2205
- function wo(t7) {
2206
- let e = [], r;
2207
- for (let n = 0; n < t7.length; n++) {
2208
- let s = t7[n];
2209
- r && r.type === 5 && s.type === 5 || r && r.type === 16 && s.type === 16 ? (r.parts[0] += s.parts[0], r.sourceSpan.end = s.sourceSpan.end) : (r = s, e.push(r));
2210
- }
2211
- return e;
2212
- }
2213
- var rr = class t3 {
2214
- constructor(e, r) {
2215
- if (e instanceof t3) {
2216
- this.file = e.file, this.input = e.input, this.end = e.end;
2217
- let n = e.state;
2218
- this.state = { peek: n.peek, offset: n.offset, line: n.line, column: n.column };
2219
- } else {
2220
- if (!r)
2221
- throw new Error("Programming error: the range argument must be provided with a file argument.");
2222
- this.file = e, this.input = e.content, this.end = r.endPos, this.state = { peek: -1, offset: r.startPos, line: r.startLine, column: r.startCol };
2223
- }
2224
- }
2225
- clone() {
2226
- return new t3(this);
2227
- }
2228
- peek() {
2229
- return this.state.peek;
2230
- }
2231
- charsLeft() {
2232
- return this.end - this.state.offset;
2233
- }
2234
- diff(e) {
2235
- return this.state.offset - e.state.offset;
2236
- }
2237
- advance() {
2238
- this.advanceState(this.state);
2239
- }
2240
- init() {
2241
- this.updatePeek(this.state);
2242
- }
2243
- getSpan(e, r) {
2244
- e = e || this;
2245
- let n = e;
2246
- if (r)
2247
- for (; this.diff(e) > 0 && r.indexOf(e.peek()) !== -1; )
2248
- n === e && (e = e.clone()), e.advance();
2249
- let s = this.locationFromCursor(e), i = this.locationFromCursor(this), a = n !== e ? this.locationFromCursor(n) : s;
2250
- return new h(s, i, a);
2251
- }
2252
- getChars(e) {
2253
- return this.input.substring(e.state.offset, this.state.offset);
2254
- }
2255
- charAt(e) {
2256
- return this.input.charCodeAt(e);
2257
- }
2258
- advanceState(e) {
2259
- if (e.offset >= this.end)
2260
- throw this.state = e, new St('Unexpected character "EOF"', this);
2261
- let r = this.charAt(e.offset);
2262
- r === 10 ? (e.line++, e.column = 0) : Rt(r) || e.column++, e.offset++, this.updatePeek(e);
2263
- }
2264
- updatePeek(e) {
2265
- e.peek = e.offset >= this.end ? 0 : this.charAt(e.offset);
2266
- }
2267
- locationFromCursor(e) {
2268
- return new ie(e.file, e.state.offset, e.state.line, e.state.column);
2269
- }
2270
- }, Wr = class t4 extends rr {
2271
- constructor(e, r) {
2272
- e instanceof t4 ? (super(e), this.internalState = { ...e.internalState }) : (super(e, r), this.internalState = this.state);
2273
- }
2274
- advance() {
2275
- this.state = this.internalState, super.advance(), this.processEscapeSequence();
2276
- }
2277
- init() {
2278
- super.init(), this.processEscapeSequence();
2279
- }
2280
- clone() {
2281
- return new t4(this);
2282
- }
2283
- getChars(e) {
2284
- let r = e.clone(), n = "";
2285
- for (; r.internalState.offset < this.internalState.offset; )
2286
- n += String.fromCodePoint(r.peek()), r.advance();
2287
- return n;
2288
- }
2289
- processEscapeSequence() {
2290
- let e = () => this.internalState.peek;
2291
- if (e() === 92)
2292
- if (this.internalState = { ...this.state }, this.advanceState(this.internalState), e() === 110)
2293
- this.state.peek = 10;
2294
- else if (e() === 114)
2295
- this.state.peek = 13;
2296
- else if (e() === 118)
2297
- this.state.peek = 11;
2298
- else if (e() === 116)
2299
- this.state.peek = 9;
2300
- else if (e() === 98)
2301
- this.state.peek = 8;
2302
- else if (e() === 102)
2303
- this.state.peek = 12;
2304
- else if (e() === 117)
2305
- if (this.advanceState(this.internalState), e() === 123) {
2306
- this.advanceState(this.internalState);
2307
- let r = this.clone(), n = 0;
2308
- for (; e() !== 125; )
2309
- this.advanceState(this.internalState), n++;
2310
- this.state.peek = this.decodeHexDigits(r, n);
2311
- } else {
2312
- let r = this.clone();
2313
- this.advanceState(this.internalState), this.advanceState(this.internalState), this.advanceState(this.internalState), this.state.peek = this.decodeHexDigits(r, 4);
2314
- }
2315
- else if (e() === 120) {
2316
- this.advanceState(this.internalState);
2317
- let r = this.clone();
2318
- this.advanceState(this.internalState), this.state.peek = this.decodeHexDigits(r, 2);
2319
- } else if (kr(e())) {
2320
- let r = "", n = 0, s = this.clone();
2321
- for (; kr(e()) && n < 3; )
2322
- s = this.clone(), r += String.fromCodePoint(e()), this.advanceState(this.internalState), n++;
2323
- this.state.peek = parseInt(r, 8), this.internalState = s.internalState;
2324
- } else
2325
- Rt(this.internalState.peek) ? (this.advanceState(this.internalState), this.state = this.internalState) : this.state.peek = this.internalState.peek;
2326
- }
2327
- decodeHexDigits(e, r) {
2328
- let n = this.input.slice(e.internalState.offset, e.internalState.offset + r), s = parseInt(n, 16);
2329
- if (isNaN(s))
2330
- throw e.state = e.internalState, new St("Invalid hexadecimal escape sequence", e);
2331
- return s;
2332
- }
2333
- }, St = class {
2334
- constructor(e, r) {
2335
- this.msg = e, this.cursor = r;
2336
- }
2337
- };
2338
- var L = class t5 extends Oe {
2339
- static create(e, r, n) {
2340
- return new t5(e, r, n);
2341
- }
2342
- constructor(e, r, n) {
2343
- super(r, n), this.elementName = e;
2344
- }
2345
- }, Yr = class {
2346
- constructor(e, r) {
2347
- this.rootNodes = e, this.errors = r;
2348
- }
2349
- }, nr = class {
2350
- constructor(e) {
2351
- this.getTagDefinition = e;
2352
- }
2353
- parse(e, r, n, s = false, i) {
2354
- let a = (D) => (I, ...F) => D(I.toLowerCase(), ...F), o = s ? this.getTagDefinition : a(this.getTagDefinition), u = (D) => o(D).getContentType(), p = s ? i : a(i), f = Qs(e, r, i ? (D, I, F, c) => {
2355
- let g = p(D, I, F, c);
2356
- return g !== void 0 ? g : u(D);
2357
- } : u, n), d = n && n.canSelfClose || false, C = n && n.allowHtmComponentClosingTags || false, A = new jr(f.tokens, o, d, C, s);
2358
- return A.build(), new Yr(A.rootNodes, f.errors.concat(A.errors));
2359
- }
2360
- }, jr = class t6 {
2361
- constructor(e, r, n, s, i) {
2362
- this.tokens = e, this.getTagDefinition = r, this.canSelfClose = n, this.allowHtmComponentClosingTags = s, this.isTagNameCaseSensitive = i, this._index = -1, this._containerStack = [], this.rootNodes = [], this.errors = [], this._advance();
2363
- }
2364
- build() {
2365
- for (; this._peek.type !== 34; )
2366
- 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();
2367
- for (let e of this._containerStack)
2368
- e instanceof te && this.errors.push(L.create(e.name, e.sourceSpan, `Unclosed block "${e.name}"`));
2369
- }
2370
- _advance() {
2371
- let e = this._peek;
2372
- return this._index < this.tokens.length - 1 && this._index++, this._peek = this.tokens[this._index], e;
2373
- }
2374
- _advanceIf(e) {
2375
- return this._peek.type === e ? this._advance() : null;
2376
- }
2377
- _consumeCdata(e) {
2378
- let r = this._advance(), n = this._getText(r), s = this._advanceIf(13);
2379
- this._addToParent(new Wt(n, new h(e.sourceSpan.start, (s || r).sourceSpan.end), [r]));
2380
- }
2381
- _consumeComment(e) {
2382
- let r = this._advanceIf(7), n = this._advanceIf(11), s = r != null ? r.parts[0].trim() : null, i = n == null ? e.sourceSpan : new h(e.sourceSpan.start, n.sourceSpan.end, e.sourceSpan.fullStart);
2383
- this._addToParent(new jt(s, i));
2384
- }
2385
- _consumeDocType(e) {
2386
- let r = this._advanceIf(7), n = this._advanceIf(19), s = r != null ? r.parts[0].trim() : null, i = new h(e.sourceSpan.start, (n || r || e).sourceSpan.end);
2387
- this._addToParent(new Kt(s, i));
2388
- }
2389
- _consumeExpansion(e) {
2390
- let r = this._advance(), n = this._advance(), s = [];
2391
- for (; this._peek.type === 21; ) {
2392
- let a = this._parseExpansionCase();
2393
- if (!a)
2394
- return;
2395
- s.push(a);
2396
- }
2397
- if (this._peek.type !== 24) {
2398
- this.errors.push(L.create(null, this._peek.sourceSpan, "Invalid ICU message. Missing '}'."));
2399
- return;
2400
- }
2401
- let i = new h(e.sourceSpan.start, this._peek.sourceSpan.end, e.sourceSpan.fullStart);
2402
- this._addToParent(new zt(r.parts[0], n.parts[0], s, i, r.sourceSpan)), this._advance();
2403
- }
2404
- _parseExpansionCase() {
2405
- let e = this._advance();
2406
- if (this._peek.type !== 22)
2407
- return this.errors.push(L.create(null, this._peek.sourceSpan, "Invalid ICU message. Missing '{'.")), null;
2408
- let r = this._advance(), n = this._collectExpansionExpTokens(r);
2409
- if (!n)
2410
- return null;
2411
- let s = this._advance();
2412
- n.push({ type: 34, parts: [], sourceSpan: s.sourceSpan });
2413
- let i = new t6(n, this.getTagDefinition, this.canSelfClose, this.allowHtmComponentClosingTags, this.isTagNameCaseSensitive);
2414
- if (i.build(), i.errors.length > 0)
2415
- return this.errors = this.errors.concat(i.errors), null;
2416
- let a = new h(e.sourceSpan.start, s.sourceSpan.end, e.sourceSpan.fullStart), o = new h(r.sourceSpan.start, s.sourceSpan.end, r.sourceSpan.fullStart);
2417
- return new Gt(e.parts[0], i.rootNodes, a, e.sourceSpan, o);
2418
- }
2419
- _collectExpansionExpTokens(e) {
2420
- let r = [], n = [22];
2421
- for (; ; ) {
2422
- if ((this._peek.type === 20 || this._peek.type === 22) && n.push(this._peek.type), this._peek.type === 23)
2423
- if (Xs(n, 22)) {
2424
- if (n.pop(), n.length === 0)
2425
- return r;
2426
- } else
2427
- return this.errors.push(L.create(null, e.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2428
- if (this._peek.type === 24)
2429
- if (Xs(n, 20))
2430
- n.pop();
2431
- else
2432
- return this.errors.push(L.create(null, e.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2433
- if (this._peek.type === 34)
2434
- return this.errors.push(L.create(null, e.sourceSpan, "Invalid ICU message. Missing '}'.")), null;
2435
- r.push(this._advance());
2436
- }
2437
- }
2438
- _getText(e) {
2439
- let r = e.parts[0];
2440
- if (r.length > 0 && r[0] == `
2441
- `) {
2442
- let n = this._getClosestParentElement();
2443
- n != null && n.children.length == 0 && this.getTagDefinition(n.name).ignoreFirstLf && (r = r.substring(1));
2444
- }
2445
- return r;
2446
- }
2447
- _consumeText(e) {
2448
- let r = [e], n = e.sourceSpan, s = e.parts[0];
2449
- if (s.length > 0 && s[0] === `
2450
- `) {
2451
- let i = this._getContainer();
2452
- i != null && i.children.length === 0 && this.getTagDefinition(i.name).ignoreFirstLf && (s = s.substring(1), r[0] = { type: e.type, sourceSpan: e.sourceSpan, parts: [s] });
2453
- }
2454
- for (; this._peek.type === 8 || this._peek.type === 5 || this._peek.type === 9; )
2455
- e = this._advance(), r.push(e), e.type === 8 ? s += e.parts.join("").replace(/&([^;]+);/g, Js) : e.type === 9 ? s += e.parts[0] : s += e.parts.join("");
2456
- if (s.length > 0) {
2457
- let i = e.sourceSpan;
2458
- this._addToParent(new Ut(s, new h(n.start, i.end, n.fullStart, n.details), r));
2459
- }
2460
- }
2461
- _closeVoidElement() {
2462
- let e = this._getContainer();
2463
- e instanceof Y && this.getTagDefinition(e.name).isVoid && this._containerStack.pop();
2464
- }
2465
- _consumeStartTag(e) {
2466
- let [r, n] = e.parts, s = [];
2467
- for (; this._peek.type === 14; )
2468
- s.push(this._consumeAttr(this._advance()));
2469
- let i = this._getElementFullName(r, n, this._getClosestParentElement()), a = false;
2470
- if (this._peek.type === 2) {
2471
- this._advance(), a = true;
2472
- let C = this.getTagDefinition(i);
2473
- this.canSelfClose || C.canSelfClose || Me(i) !== null || C.isVoid || this.errors.push(L.create(i, e.sourceSpan, `Only void, custom and foreign elements can be self closed "${e.parts[1]}"`));
2474
- } else
2475
- this._peek.type === 1 && (this._advance(), a = false);
2476
- let o = this._peek.sourceSpan.fullStart, u = new h(e.sourceSpan.start, o, e.sourceSpan.fullStart), p = new h(e.sourceSpan.start, o, e.sourceSpan.fullStart), l = new h(e.sourceSpan.start.moveBy(1), e.sourceSpan.end), f = new Y(i, s, [], u, p, void 0, l), d = this._getContainer();
2477
- this._pushContainer(f, d instanceof Y && this.getTagDefinition(d.name).isClosedByChild(f.name)), a ? this._popContainer(i, Y, u) : e.type === 4 && (this._popContainer(i, Y, null), this.errors.push(L.create(i, u, `Opening tag "${i}" not terminated.`)));
2478
- }
2479
- _pushContainer(e, r) {
2480
- r && this._containerStack.pop(), this._addToParent(e), this._containerStack.push(e);
2481
- }
2482
- _consumeEndTag(e) {
2483
- let r = this.allowHtmComponentClosingTags && e.parts.length === 0 ? null : this._getElementFullName(e.parts[0], e.parts[1], this._getClosestParentElement());
2484
- if (r && this.getTagDefinition(r).isVoid)
2485
- this.errors.push(L.create(r, e.sourceSpan, `Void elements do not have end tags "${e.parts[1]}"`));
2486
- else if (!this._popContainer(r, Y, e.sourceSpan)) {
2487
- 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`;
2488
- this.errors.push(L.create(r, e.sourceSpan, n));
2489
- }
2490
- }
2491
- _popContainer(e, r, n) {
2492
- let s = false;
2493
- for (let i = this._containerStack.length - 1; i >= 0; i--) {
2494
- let a = this._containerStack[i];
2495
- if (Me(a.name) ? a.name === e : (e == null || a.name.toLowerCase() === e.toLowerCase()) && a instanceof r)
2496
- return a.endSourceSpan = n, a.sourceSpan.end = n !== null ? n.end : a.sourceSpan.end, this._containerStack.splice(i, this._containerStack.length - i), !s;
2497
- (a instanceof te || a instanceof Y && !this.getTagDefinition(a.name).closedByParent) && (s = true);
2498
- }
2499
- return false;
2500
- }
2501
- _consumeAttr(e) {
2502
- let r = qe(e.parts[0], e.parts[1]), n = e.sourceSpan.end, s;
2503
- this._peek.type === 15 && (s = this._advance());
2504
- let i = "", a = [], o, u;
2505
- if (this._peek.type === 16)
2506
- for (o = this._peek.sourceSpan, u = this._peek.sourceSpan.end; this._peek.type === 16 || this._peek.type === 17 || this._peek.type === 9; ) {
2507
- let f = this._advance();
2508
- a.push(f), f.type === 17 ? i += f.parts.join("").replace(/&([^;]+);/g, Js) : f.type === 9 ? i += f.parts[0] : i += f.parts.join(""), u = n = f.sourceSpan.end;
2509
- }
2510
- this._peek.type === 15 && (u = n = this._advance().sourceSpan.end);
2511
- let l = o && u && new h((s == null ? void 0 : s.sourceSpan.start) ?? o.start, u, (s == null ? void 0 : s.sourceSpan.fullStart) ?? o.fullStart);
2512
- return new Yt(r, i, new h(e.sourceSpan.start, n, e.sourceSpan.fullStart), e.sourceSpan, l, a.length > 0 ? a : void 0, void 0);
2513
- }
2514
- _consumeBlockOpen(e) {
2515
- let r = [];
2516
- for (; this._peek.type === 28; ) {
2517
- let o = this._advance();
2518
- r.push(new ht(o.parts[0], o.sourceSpan));
2519
- }
2520
- this._peek.type === 26 && this._advance();
2521
- let n = this._peek.sourceSpan.fullStart, s = new h(e.sourceSpan.start, n, e.sourceSpan.fullStart), i = new h(e.sourceSpan.start, n, e.sourceSpan.fullStart), a = new te(e.parts[0], r, [], s, e.sourceSpan, i);
2522
- this._pushContainer(a, false);
2523
- }
2524
- _consumeBlockClose(e) {
2525
- this._popContainer(null, te, e.sourceSpan) || this.errors.push(L.create(null, e.sourceSpan, 'Unexpected closing block. The block may have been closed earlier. If you meant to write the } character, you should use the "&#125;" HTML entity instead.'));
2526
- }
2527
- _consumeIncompleteBlock(e) {
2528
- let r = [];
2529
- for (; this._peek.type === 28; ) {
2530
- let o = this._advance();
2531
- r.push(new ht(o.parts[0], o.sourceSpan));
2532
- }
2533
- let n = this._peek.sourceSpan.fullStart, s = new h(e.sourceSpan.start, n, e.sourceSpan.fullStart), i = new h(e.sourceSpan.start, n, e.sourceSpan.fullStart), a = new te(e.parts[0], r, [], s, e.sourceSpan, i);
2534
- this._pushContainer(a, false), this._popContainer(null, te, null), this.errors.push(L.create(e.parts[0], s, `Incomplete block "${e.parts[0]}". If you meant to write the @ character, you should use the "&#64;" HTML entity instead.`));
2535
- }
2536
- _consumeLet(e) {
2537
- let r = e.parts[0], n, s;
2538
- if (this._peek.type !== 31) {
2539
- this.errors.push(L.create(e.parts[0], e.sourceSpan, `Invalid @let declaration "${r}". Declaration must have a value.`));
2540
- return;
2541
- } else
2542
- n = this._advance();
2543
- if (this._peek.type !== 32) {
2544
- this.errors.push(L.create(e.parts[0], e.sourceSpan, `Unterminated @let declaration "${r}". Declaration must be terminated with a semicolon.`));
2545
- return;
2546
- } else
2547
- s = this._advance();
2548
- let i = s.sourceSpan.fullStart, a = new h(e.sourceSpan.start, i, e.sourceSpan.fullStart), o = e.sourceSpan.toString().lastIndexOf(r), u = e.sourceSpan.start.moveBy(o), p = new h(u, e.sourceSpan.end), l = new ft(r, n.parts[0], a, p, n.sourceSpan);
2549
- this._addToParent(l);
2550
- }
2551
- _consumeIncompleteLet(e) {
2552
- let r = e.parts[0] ?? "", n = r ? ` "${r}"` : "";
2553
- if (r.length > 0) {
2554
- let s = e.sourceSpan.toString().lastIndexOf(r), i = e.sourceSpan.start.moveBy(s), a = new h(i, e.sourceSpan.end), o = new h(e.sourceSpan.start, e.sourceSpan.start.moveBy(0)), u = new ft(r, "", e.sourceSpan, a, o);
2555
- this._addToParent(u);
2556
- }
2557
- this.errors.push(L.create(e.parts[0], e.sourceSpan, `Incomplete @let declaration${n}. @let declarations must be written as \`@let <name> = <value>;\``));
2558
- }
2559
- _getContainer() {
2560
- return this._containerStack.length > 0 ? this._containerStack[this._containerStack.length - 1] : null;
2561
- }
2562
- _getClosestParentElement() {
2563
- for (let e = this._containerStack.length - 1; e > -1; e--)
2564
- if (this._containerStack[e] instanceof Y)
2565
- return this._containerStack[e];
2566
- return null;
2567
- }
2568
- _addToParent(e) {
2569
- let r = this._getContainer();
2570
- r === null ? this.rootNodes.push(e) : r.children.push(e);
2571
- }
2572
- _getElementFullName(e, r, n) {
2573
- if (e === "" && (e = this.getTagDefinition(r).implicitNamespacePrefix || "", e === "" && n != null)) {
2574
- let s = ct(n.name)[1];
2575
- this.getTagDefinition(s).preventNamespaceInheritance || (e = Me(n.name));
2576
- }
2577
- return qe(e, r);
2578
- }
2579
- };
2580
- function Xs(t7, e) {
2581
- return t7.length > 0 && t7[t7.length - 1] === e;
2582
- }
2583
- function Js(t7, e) {
2584
- return Ve[e] !== void 0 ? Ve[e] || t7 : /^#x[a-f0-9]+$/i.test(e) ? String.fromCodePoint(parseInt(e.slice(2), 16)) : /^#\d+$/.test(e) ? String.fromCodePoint(parseInt(e.slice(1), 10)) : t7;
2585
- }
2586
- var sr = class extends nr {
2587
- constructor() {
2588
- super(He);
2589
- }
2590
- parse(e, r, n, s = false, i) {
2591
- return super.parse(e, r, n, s, i);
2592
- }
2593
- };
2594
- var Kr = null, bo = () => (Kr || (Kr = new sr()), Kr);
2595
- function Qr(t7, e = {}) {
2596
- let { canSelfClose: r = false, allowHtmComponentClosingTags: n = false, isTagNameCaseSensitive: s = false, getTagContentType: i, tokenizeAngularBlocks: a = false, tokenizeAngularLetDeclaration: o = false } = e;
2597
- return bo().parse(t7, "angular-html-parser", { tokenizeExpansionForms: a, interpolationConfig: void 0, canSelfClose: r, allowHtmComponentClosingTags: n, tokenizeBlocks: a, tokenizeLet: o }, s, i);
2598
- }
2599
- function To(t7, e) {
2600
- let r = new SyntaxError(t7 + " (" + e.loc.start.line + ":" + e.loc.start.column + ")");
2601
- return Object.assign(r, e);
2602
- }
2603
- var Zs = To;
2604
- var _t = 3;
2605
- function xo(t7) {
2606
- let e = t7.slice(0, _t);
2607
- if (e !== "---" && e !== "+++")
2608
- return;
2609
- let r = t7.indexOf(`
2610
- `, _t);
2611
- if (r === -1)
2612
- return;
2613
- let n = t7.slice(_t, r).trim(), s = t7.indexOf(`
2614
- ${e}`, r), i = n;
2615
- if (i || (i = e === "+++" ? "toml" : "yaml"), s === -1 && e === "---" && i === "yaml" && (s = t7.indexOf(`
2616
- ...`, r)), s === -1)
2617
- return;
2618
- let a = s + 1 + _t, o = t7.charAt(a + 1);
2619
- if (!/\s?/u.test(o))
2620
- return;
2621
- let u = t7.slice(0, a);
2622
- return { type: "front-matter", language: i, explicitLanguage: n, value: t7.slice(r + 1, s), startDelimiter: e, endDelimiter: u.slice(-_t), raw: u };
2623
- }
2624
- function ko(t7) {
2625
- let e = xo(t7);
2626
- if (!e)
2627
- return { content: t7 };
2628
- let { raw: r } = e;
2629
- return { frontMatter: e, content: w(false, r, /[^\n]/gu, " ") + t7.slice(r.length) };
2630
- }
2631
- var ei = ko;
2632
- var ir = { attrs: true, children: true, cases: true, expression: true }, ti = /* @__PURE__ */ new Set(["parent"]), le, Xr, Jr, ze = class ze2 {
2633
- constructor(e = {}) {
2634
- Et(this, le);
2635
- lr(this, "type");
2636
- lr(this, "parent");
2637
- for (let r of /* @__PURE__ */ new Set([...ti, ...Object.keys(e)]))
2638
- this.setProperty(r, e[r]);
2639
- }
2640
- setProperty(e, r) {
2641
- if (this[e] !== r) {
2642
- if (e in ir && (r = r.map((n) => this.createChild(n))), !ti.has(e)) {
2643
- this[e] = r;
2644
- return;
2645
- }
2646
- Object.defineProperty(this, e, { value: r, enumerable: false, configurable: true });
2647
- }
2648
- }
2649
- map(e) {
2650
- let r;
2651
- for (let n in ir) {
2652
- let s = this[n];
2653
- if (s) {
2654
- let i = Bo(s, (a) => a.map(e));
2655
- r !== s && (r || (r = new ze2({ parent: this.parent })), r.setProperty(n, i));
2656
- }
2657
- }
2658
- if (r)
2659
- for (let n in this)
2660
- n in ir || (r[n] = this[n]);
2661
- return e(r || this);
2662
- }
2663
- walk(e) {
2664
- for (let r in ir) {
2665
- let n = this[r];
2666
- if (n)
2667
- for (let s = 0; s < n.length; s++)
2668
- n[s].walk(e);
2669
- }
2670
- e(this);
2671
- }
2672
- createChild(e) {
2673
- let r = e instanceof ze2 ? e.clone() : new ze2(e);
2674
- return r.setProperty("parent", this), r;
2675
- }
2676
- insertChildBefore(e, r) {
2677
- let n = this.$children;
2678
- n.splice(n.indexOf(e), 0, this.createChild(r));
2679
- }
2680
- removeChild(e) {
2681
- let r = this.$children;
2682
- r.splice(r.indexOf(e), 1);
2683
- }
2684
- replaceChild(e, r) {
2685
- let n = this.$children;
2686
- n[n.indexOf(e)] = this.createChild(r);
2687
- }
2688
- clone() {
2689
- return new ze2(this);
2690
- }
2691
- get $children() {
2692
- return this[R(this, le, Xr)];
2693
- }
2694
- set $children(e) {
2695
- this[R(this, le, Xr)] = e;
2696
- }
2697
- get firstChild() {
2698
- var e;
2699
- return (e = this.$children) == null ? void 0 : e[0];
2700
- }
2701
- get lastChild() {
2702
- return K(true, this.$children, -1);
2703
- }
2704
- get prev() {
2705
- let e = R(this, le, Jr);
2706
- return e[e.indexOf(this) - 1];
2707
- }
2708
- get next() {
2709
- let e = R(this, le, Jr);
2710
- return e[e.indexOf(this) + 1];
2711
- }
2712
- get rawName() {
2713
- return this.hasExplicitNamespace ? this.fullName : this.name;
2714
- }
2715
- get fullName() {
2716
- return this.namespace ? this.namespace + ":" + this.name : this.name;
2717
- }
2718
- get attrMap() {
2719
- return Object.fromEntries(this.attrs.map((e) => [e.fullName, e.value]));
2720
- }
2721
- };
2722
- le = /* @__PURE__ */ new WeakSet(), Xr = function() {
2723
- return this.type === "angularIcuCase" ? "expression" : this.type === "angularIcuExpression" ? "cases" : "children";
2724
- }, Jr = function() {
2725
- var e;
2726
- return ((e = this.parent) == null ? void 0 : e.$children) ?? [];
2727
- };
2728
- var ar = ze;
2729
- function Bo(t7, e) {
2730
- let r = t7.map(e);
2731
- return r.some((n, s) => n !== t7[s]) ? r : t7;
2732
- }
2733
- var Lo = [{ regex: /^(\[if([^\]]*)\]>)(.*?)<!\s*\[endif\]$/su, parse: Fo }, { regex: /^\[if([^\]]*)\]><!$/u, parse: No }, { regex: /^<!\s*\[endif\]$/u, parse: Po }];
2734
- function ri(t7, e) {
2735
- if (t7.value)
2736
- for (let { regex: r, parse: n } of Lo) {
2737
- let s = t7.value.match(r);
2738
- if (s)
2739
- return n(t7, e, s);
2740
- }
2741
- return null;
2742
- }
2743
- function Fo(t7, e, r) {
2744
- let [, n, s, i] = r, a = 4 + n.length, o = t7.sourceSpan.start.moveBy(a), u = o.moveBy(i.length), [p, l] = (() => {
2745
- try {
2746
- return [true, e(i, o).children];
2747
- } catch {
2748
- return [false, [{ type: "text", value: i, sourceSpan: new h(o, u) }]];
2749
- }
2750
- })();
2751
- return { type: "ieConditionalComment", complete: p, children: l, condition: w(false, s.trim(), /\s+/gu, " "), sourceSpan: t7.sourceSpan, startSourceSpan: new h(t7.sourceSpan.start, o), endSourceSpan: new h(u, t7.sourceSpan.end) };
2752
- }
2753
- function No(t7, e, r) {
2754
- let [, n] = r;
2755
- return { type: "ieConditionalStartComment", condition: w(false, n.trim(), /\s+/gu, " "), sourceSpan: t7.sourceSpan };
2756
- }
2757
- function Po(t7) {
2758
- return { type: "ieConditionalEndComment", sourceSpan: t7.sourceSpan };
2759
- }
2760
- var or = /* @__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"])]]);
2761
- var ni = /* @__PURE__ */ new Set(["a", "abbr", "acronym", "address", "applet", "area", "article", "aside", "audio", "b", "base", "basefont", "bdi", "bdo", "bgsound", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "cite", "code", "col", "colgroup", "command", "content", "data", "datalist", "dd", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "element", "em", "embed", "fieldset", "figcaption", "figure", "font", "footer", "form", "frame", "frameset", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "iframe", "image", "img", "input", "ins", "isindex", "kbd", "keygen", "label", "legend", "li", "link", "listing", "main", "map", "mark", "marquee", "math", "menu", "menuitem", "meta", "meter", "multicol", "nav", "nextid", "nobr", "noembed", "noframes", "noscript", "object", "ol", "optgroup", "option", "output", "p", "param", "picture", "plaintext", "pre", "progress", "q", "rb", "rbc", "rp", "rt", "rtc", "ruby", "s", "samp", "script", "search", "section", "select", "shadow", "slot", "small", "source", "spacer", "span", "strike", "strong", "style", "sub", "summary", "sup", "svg", "table", "tbody", "td", "template", "textarea", "tfoot", "th", "thead", "time", "title", "tr", "track", "tt", "u", "ul", "var", "video", "wbr", "xmp"]);
2762
- function Io(t7) {
2763
- if (t7.type === "block") {
2764
- if (t7.name = w(false, t7.name.toLowerCase(), /\s+/gu, " ").trim(), t7.type = "angularControlFlowBlock", !Ie(t7.parameters)) {
2765
- delete t7.parameters;
2766
- return;
2767
- }
2768
- for (let e of t7.parameters)
2769
- e.type = "angularControlFlowBlockParameter";
2770
- t7.parameters = { type: "angularControlFlowBlockParameters", children: t7.parameters, sourceSpan: new h(t7.parameters[0].sourceSpan.start, K(false, t7.parameters, -1).sourceSpan.end) };
2771
- }
2772
- }
2773
- function Ro(t7) {
2774
- t7.type === "letDeclaration" && (t7.type = "angularLetDeclaration", t7.id = t7.name, t7.init = { type: "angularLetDeclarationInitializer", sourceSpan: new h(t7.valueSpan.start, t7.valueSpan.end), value: t7.value }, delete t7.name, delete t7.value);
2775
- }
2776
- function $o(t7) {
2777
- (t7.type === "plural" || t7.type === "select") && (t7.clause = t7.type, t7.type = "angularIcuExpression"), t7.type === "expansionCase" && (t7.type = "angularIcuCase");
2778
- }
2779
- function ii(t7, e, r) {
2780
- let { name: n, canSelfClose: s = true, normalizeTagName: i = false, normalizeAttributeName: a = false, allowHtmComponentClosingTags: o = false, isTagNameCaseSensitive: u = false, shouldParseAsRawText: p } = e, { rootNodes: l, errors: f } = Qr(t7, { canSelfClose: s, allowHtmComponentClosingTags: o, isTagNameCaseSensitive: u, getTagContentType: p ? (...c) => p(...c) ? P.RAW_TEXT : void 0 : void 0, tokenizeAngularBlocks: n === "angular" ? true : void 0, tokenizeAngularLetDeclaration: n === "angular" ? true : void 0 });
2781
- if (n === "vue") {
2782
- if (l.some((x) => x.type === "docType" && x.value === "html" || x.type === "element" && x.name.toLowerCase() === "html"))
2783
- return ii(t7, oi, r);
2784
- let g, y = () => g ?? (g = Qr(t7, { canSelfClose: s, allowHtmComponentClosingTags: o, isTagNameCaseSensitive: u })), q = (x) => y().rootNodes.find(({ startSourceSpan: U }) => U && U.start.offset === x.startSourceSpan.start.offset) ?? x;
2785
- for (let [x, U] of l.entries()) {
2786
- let { endSourceSpan: tn, startSourceSpan: ui } = U;
2787
- if (tn === null)
2788
- f = y().errors, l[x] = q(U);
2789
- else if (Oo(U, r)) {
2790
- let rn = y().errors.find((nn) => nn.span.start.offset > ui.start.offset && nn.span.start.offset < tn.end.offset);
2791
- rn && si(rn), l[x] = q(U);
2792
- }
2793
- }
2794
- }
2795
- f.length > 0 && si(f[0]);
2796
- let d = (c) => {
2797
- let g = c.name.startsWith(":") ? c.name.slice(1).split(":")[0] : null, y = c.nameSpan.toString(), q = g !== null && y.startsWith(`${g}:`), x = q ? y.slice(g.length + 1) : y;
2798
- c.name = x, c.namespace = g, c.hasExplicitNamespace = q;
2799
- }, C = (c) => {
2800
- switch (c.type) {
2801
- case "element":
2802
- d(c);
2803
- for (let g of c.attrs)
2804
- d(g), g.valueSpan ? (g.value = g.valueSpan.toString(), /["']/u.test(g.value[0]) && (g.value = g.value.slice(1, -1))) : g.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
- }, A = (c, g) => {
2814
- let y = c.toLowerCase();
2815
- return g(y) ? y : c;
2816
- }, D = (c) => {
2817
- if (c.type === "element" && (i && (!c.namespace || c.namespace === c.tagDefinition.implicitNamespacePrefix || fe(c)) && (c.name = A(c.name, (g) => ni.has(g))), a))
2818
- for (let g of c.attrs)
2819
- g.namespace || (g.name = A(g.name, (y) => or.has(c.name) && (or.get("*").has(y) || or.get(c.name).has(y))));
2820
- }, I = (c) => {
2821
- c.sourceSpan && c.endSourceSpan && (c.sourceSpan = new h(c.sourceSpan.start, c.endSourceSpan.end));
2822
- }, F = (c) => {
2823
- if (c.type === "element") {
2824
- let g = He(u ? c.name : c.name.toLowerCase());
2825
- !c.namespace || c.namespace === g.implicitNamespacePrefix || fe(c) ? c.tagDefinition = g : c.tagDefinition = He("");
2826
- }
2827
- };
2828
- return Qt(new class extends mt {
2829
- visitExpansionCase(c, g) {
2830
- n === "angular" && this.visitChildren(g, (y) => {
2831
- y(c.expression);
2832
- });
2833
- }
2834
- visit(c) {
2835
- C(c), F(c), D(c), I(c);
2836
- }
2837
- }(), l), l;
2838
- }
2839
- function Oo(t7, e) {
2840
- var n;
2841
- if (t7.type !== "element" || t7.name !== "template")
2842
- return false;
2843
- let r = (n = t7.attrs.find((s) => s.name === "lang")) == null ? void 0 : n.value;
2844
- return !r || Ne(e, { language: r }) === "html";
2845
- }
2846
- function si(t7) {
2847
- let { msg: e, span: { start: r, end: n } } = t7;
2848
- throw Zs(e, { loc: { start: { line: r.line + 1, column: r.col + 1 }, end: { line: n.line + 1, column: n.col + 1 } }, cause: t7 });
2849
- }
2850
- function ai(t7, e, r = {}, n = true) {
2851
- let { frontMatter: s, content: i } = n ? ei(t7) : { frontMatter: null, content: t7 }, a = new De(t7, r.filepath), o = new ie(a, 0, 0, 0), u = o.moveBy(t7.length), p = { type: "root", sourceSpan: new h(o, u), children: ii(i, e, r) };
2852
- if (s) {
2853
- let d = new ie(a, 0, 0, 0), C = d.moveBy(s.raw.length);
2854
- s.sourceSpan = new h(d, C), p.children.unshift(s);
2855
- }
2856
- let l = new ar(p), f = (d, C) => {
2857
- let { offset: A } = C, D = w(false, t7.slice(0, A), /[^\n\r]/gu, " "), F = ai(D + d, e, r, false);
2858
- F.sourceSpan = new h(C, K(false, F.children, -1).sourceSpan.end);
2859
- let c = F.children[0];
2860
- return c.length === A ? F.children.shift() : (c.sourceSpan = new h(c.sourceSpan.start.moveBy(A), c.sourceSpan.end), c.value = c.value.slice(A)), F;
2861
- };
2862
- return l.walk((d) => {
2863
- if (d.type === "comment") {
2864
- let C = ri(d, f);
2865
- C && d.parent.replaceChild(d, C);
2866
- }
2867
- Io(d), Ro(d), $o(d);
2868
- }), l;
2869
- }
2870
- function ur(t7) {
2871
- return { parse: (e, r) => ai(e, t7, r), hasPragma: fs, astFormat: "html", locStart: J, locEnd: Z };
2872
- }
2873
- var oi = { name: "html", normalizeTagName: true, normalizeAttributeName: true, allowHtmComponentClosingTags: true }, Mo = ur(oi), qo = ur({ name: "angular" }), Ho = ur({ name: "vue", isTagNameCaseSensitive: true, shouldParseAsRawText(t7, e, r, n) {
2874
- return t7.toLowerCase() !== "html" && !r && (t7 !== "template" || n.some(({ name: s, value: i }) => s === "lang" && i !== "html" && i !== "" && i !== void 0));
2875
- } }), Vo = ur({ name: "lwc", canSelfClose: false });
2876
- var Uo = { html: Ts };
2877
- var Gh = en;
2878
- export {
2879
- Gh as default,
2880
- xs as languages,
2881
- Bs as options,
2882
- Zr as parsers,
2883
- Uo as printers
2884
- };
2885
- //# sourceMappingURL=html-f95ee5dc.js.map