@8wave/ai-elements 0.112.0 → 0.114.0-beta.15

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 (118) hide show
  1. package/dist/_chunks/Agent-D3ODaN3E.js +566 -0
  2. package/dist/_chunks/Agent-D3ODaN3E.js.map +1 -0
  3. package/dist/_chunks/{PkStreamingMarkdown-CRlRDGYl.js → PkStreamingMarkdown-CYOm47PX.js} +1276 -453
  4. package/dist/_chunks/PkStreamingMarkdown-CYOm47PX.js.map +1 -0
  5. package/dist/_chunks/{PkToolRequestGeolocation-BbxYKt-9.js → PkToolRequestGeolocation-BY7nXImb.js} +2 -2
  6. package/dist/_chunks/{PkToolRequestGeolocation-BbxYKt-9.js.map → PkToolRequestGeolocation-BY7nXImb.js.map} +1 -1
  7. package/dist/_chunks/{PkToolRequestOAuthConnection-CTp2w60F.js → PkToolRequestOAuthConnection-DFOTALFt.js} +2 -2
  8. package/dist/_chunks/{PkToolRequestOAuthConnection-CTp2w60F.js.map → PkToolRequestOAuthConnection-DFOTALFt.js.map} +1 -1
  9. package/dist/_chunks/{PkToolShowArtifact-CNnt82aH.js → PkToolShowArtifact-DzHRWoru.js} +2 -2
  10. package/dist/_chunks/{PkToolShowArtifact-CNnt82aH.js.map → PkToolShowArtifact-DzHRWoru.js.map} +1 -1
  11. package/dist/_chunks/{PkToolShowContactForm-D77gyjQG.js → PkToolShowContactForm-1J6_1AA2.js} +2 -2
  12. package/dist/_chunks/{PkToolShowContactForm-D77gyjQG.js.map → PkToolShowContactForm-1J6_1AA2.js.map} +1 -1
  13. package/dist/_chunks/{PkToolShowForm-DP4LLAk3.js → PkToolShowForm-DmQYj3v1.js} +5 -5
  14. package/dist/_chunks/{PkToolShowForm-DP4LLAk3.js.map → PkToolShowForm-DmQYj3v1.js.map} +1 -1
  15. package/dist/_chunks/{PkToolShowSources-Bwy0Ptmi.js → PkToolShowSources-BO8V5rlS.js} +3 -3
  16. package/dist/_chunks/{PkToolShowSources-Bwy0Ptmi.js.map → PkToolShowSources-BO8V5rlS.js.map} +1 -1
  17. package/dist/_chunks/{PkToolShowSuggestedReply-CFO8wV1b.js → PkToolShowSuggestedReply-CTWVG1Zk.js} +2 -2
  18. package/dist/_chunks/{PkToolShowSuggestedReply-CFO8wV1b.js.map → PkToolShowSuggestedReply-CTWVG1Zk.js.map} +1 -1
  19. package/dist/_chunks/{markdown-BRD-hDrH.js → markdown-JpLFzufn.js} +7 -7
  20. package/dist/_chunks/{markdown-BRD-hDrH.js.map → markdown-JpLFzufn.js.map} +1 -1
  21. package/dist/_chunks/url-validation-uLMZ5-AU.js.map +1 -1
  22. package/dist/ai-elements.es.js +2773 -2733
  23. package/dist/ai-elements.es.js.map +1 -1
  24. package/dist-vue/PkChatbot.js +1 -1
  25. package/dist-vue/PkChatbotEmptyState.js +1 -1
  26. package/dist-vue/PkChatbotInput.js +1 -1
  27. package/dist-vue/PkChatbotMessages.js +1 -1
  28. package/dist-vue/PkChatbotStepPayload.js +1 -1
  29. package/dist-vue/PkChatbotStepToolDetail.js +1 -1
  30. package/dist-vue/PkChatbotSteps.js +1 -1
  31. package/dist-vue/PkChatbotViewChat.js +1 -1
  32. package/dist-vue/PkChatbotViewConversations.js +1 -1
  33. package/dist-vue/PkChatbotViewFiles.js +1 -1
  34. package/dist-vue/PkChatbotViewProfile.js +1 -1
  35. package/dist-vue/_chunks/Media-_HfFLHGD.js.map +1 -1
  36. package/dist-vue/_chunks/{PkChatbot-C11EVHnI.js → PkChatbot-DZP40EZP.js} +8 -8
  37. package/dist-vue/_chunks/{PkChatbot-C11EVHnI.js.map → PkChatbot-DZP40EZP.js.map} +1 -1
  38. package/dist-vue/_chunks/{PkChatbotEmptyState-CacY4o02.js → PkChatbotEmptyState-DycCrfwz.js} +2 -2
  39. package/dist-vue/_chunks/{PkChatbotEmptyState-CacY4o02.js.map → PkChatbotEmptyState-DycCrfwz.js.map} +1 -1
  40. package/dist-vue/_chunks/{PkChatbotInput-Dkz3SNAk.js → PkChatbotInput-BCuqLdkT.js} +2 -2
  41. package/dist-vue/_chunks/{PkChatbotInput-Dkz3SNAk.js.map → PkChatbotInput-BCuqLdkT.js.map} +1 -1
  42. package/dist-vue/_chunks/PkChatbotMessages-PjKRDNYJ.js +776 -0
  43. package/dist-vue/_chunks/PkChatbotMessages-PjKRDNYJ.js.map +1 -0
  44. package/dist-vue/_chunks/{PkChatbotStepPayload-DU0W-eUp.js → PkChatbotStepPayload-CI98RiNv.js} +2 -2
  45. package/dist-vue/_chunks/{PkChatbotStepPayload-DU0W-eUp.js.map → PkChatbotStepPayload-CI98RiNv.js.map} +1 -1
  46. package/dist-vue/_chunks/{PkChatbotStepToolDetail-etlBryOg.js → PkChatbotStepToolDetail-B8zXJOdI.js} +3 -3
  47. package/dist-vue/_chunks/{PkChatbotStepToolDetail-etlBryOg.js.map → PkChatbotStepToolDetail-B8zXJOdI.js.map} +1 -1
  48. package/dist-vue/_chunks/PkChatbotSteps-CL27pMFS.js +190 -0
  49. package/dist-vue/_chunks/{PkChatbotSteps-jW07Q-4x.js.map → PkChatbotSteps-CL27pMFS.js.map} +1 -1
  50. package/dist-vue/_chunks/{PkChatbotViewChat-DJnjuhjt.js → PkChatbotViewChat-BZVcDXzL.js} +7 -7
  51. package/dist-vue/_chunks/{PkChatbotViewChat-DJnjuhjt.js.map → PkChatbotViewChat-BZVcDXzL.js.map} +1 -1
  52. package/dist-vue/_chunks/{PkChatbotViewConversations-BCdolW0R.js → PkChatbotViewConversations-Cx-mLdUE.js} +2 -2
  53. package/dist-vue/_chunks/{PkChatbotViewConversations-BCdolW0R.js.map → PkChatbotViewConversations-Cx-mLdUE.js.map} +1 -1
  54. package/dist-vue/_chunks/{PkChatbotViewFiles-Cudao8ew.js → PkChatbotViewFiles-DLIa-xG8.js} +2 -2
  55. package/dist-vue/_chunks/{PkChatbotViewFiles-Cudao8ew.js.map → PkChatbotViewFiles-DLIa-xG8.js.map} +1 -1
  56. package/dist-vue/_chunks/{PkChatbotViewProfile-DDsKOkcC.js → PkChatbotViewProfile-DEc9apXY.js} +2 -2
  57. package/dist-vue/_chunks/{PkChatbotViewProfile-DDsKOkcC.js.map → PkChatbotViewProfile-DEc9apXY.js.map} +1 -1
  58. package/dist-vue/_chunks/PkStreamingMarkdown-B2iju0WK.js +3245 -0
  59. package/dist-vue/_chunks/PkStreamingMarkdown-B2iju0WK.js.map +1 -0
  60. package/dist-vue/_chunks/{PkToolShowArtifact-BnwU7CV2.js → PkToolShowArtifact-C0J71YF6.js} +2 -2
  61. package/dist-vue/_chunks/{PkToolShowArtifact-BnwU7CV2.js.map → PkToolShowArtifact-C0J71YF6.js.map} +1 -1
  62. package/dist-vue/_chunks/{PkToolShowContactForm-_x_dbiHn.js → PkToolShowContactForm-De3Od9mC.js} +2 -2
  63. package/dist-vue/_chunks/{PkToolShowContactForm-_x_dbiHn.js.map → PkToolShowContactForm-De3Od9mC.js.map} +1 -1
  64. package/dist-vue/_chunks/{PkToolShowDiagram-RtkI_sKL.js → PkToolShowDiagram-DmY_hhAS.js} +2 -2
  65. package/dist-vue/_chunks/{PkToolShowDiagram-RtkI_sKL.js.map → PkToolShowDiagram-DmY_hhAS.js.map} +1 -1
  66. package/dist-vue/_chunks/{PkToolShowEmail-CRQjoJr1.js → PkToolShowEmail-D_Z15wCS.js} +2 -2
  67. package/dist-vue/_chunks/{PkToolShowEmail-CRQjoJr1.js.map → PkToolShowEmail-D_Z15wCS.js.map} +1 -1
  68. package/dist-vue/_chunks/{PkToolShowForm-IPAkJIXh.js → PkToolShowForm-DUGysIxj.js} +3 -3
  69. package/dist-vue/_chunks/{PkToolShowForm-IPAkJIXh.js.map → PkToolShowForm-DUGysIxj.js.map} +1 -1
  70. package/dist-vue/_chunks/{PkToolShowMessage-joTzAg9N.js → PkToolShowMessage-e5_EI5mV.js} +2 -2
  71. package/dist-vue/_chunks/{PkToolShowMessage-joTzAg9N.js.map → PkToolShowMessage-e5_EI5mV.js.map} +1 -1
  72. package/dist-vue/_chunks/{PkToolShowProductList-tOYjd2bq.js → PkToolShowProductList-B3X7Svyc.js} +2 -2
  73. package/dist-vue/_chunks/{PkToolShowProductList-tOYjd2bq.js.map → PkToolShowProductList-B3X7Svyc.js.map} +1 -1
  74. package/dist-vue/_chunks/{PkToolShowSources-gI947JOm.js → PkToolShowSources-BUjBSGc5.js} +3 -3
  75. package/dist-vue/_chunks/{PkToolShowSources-gI947JOm.js.map → PkToolShowSources-BUjBSGc5.js.map} +1 -1
  76. package/dist-vue/_chunks/{PkToolShowWebPages-D3Xy4iUs.js → PkToolShowWebPages-DEih8h5k.js} +2 -2
  77. package/dist-vue/_chunks/{PkToolShowWebPages-D3Xy4iUs.js.map → PkToolShowWebPages-DEih8h5k.js.map} +1 -1
  78. package/dist-vue/_chunks/{PkUrl-BgMBemSz.js → PkUrl-3NH9t-WA.js} +2 -2
  79. package/dist-vue/_chunks/{PkUrl-BgMBemSz.js.map → PkUrl-3NH9t-WA.js.map} +1 -1
  80. package/dist-vue/_chunks/{createChatbotApiClient-CaVLm5W9.js → createChatbotApiClient-DohvHshj.js} +115 -108
  81. package/dist-vue/_chunks/createChatbotApiClient-DohvHshj.js.map +1 -0
  82. package/dist-vue/_chunks/url-validation-uLMZ5-AU.js.map +1 -1
  83. package/dist-vue/_chunks/{useChatbotStore-BwrBZJCq.js → useChatbotStore-_10Jaf4z.js} +2 -2
  84. package/dist-vue/_chunks/{useChatbotStore-BwrBZJCq.js.map → useChatbotStore-_10Jaf4z.js.map} +1 -1
  85. package/dist-vue/_chunks/utils-BL4Ppr2R.js +184 -0
  86. package/dist-vue/_chunks/utils-BL4Ppr2R.js.map +1 -0
  87. package/dist-vue/api.js +1 -1
  88. package/dist-vue/apps/web-component/src/composables/useChatbotAuth.d.ts +1 -3
  89. package/dist-vue/composables.js +136 -95
  90. package/dist-vue/composables.js.map +1 -1
  91. package/dist-vue/index.js +3203 -3107
  92. package/dist-vue/index.js.map +1 -1
  93. package/dist-vue/locales.js +16 -0
  94. package/dist-vue/packages/auth/src/social-redirect-plugin.d.ts +18 -12
  95. package/dist-vue/packages/components/src/chat/PkTurnEvaluation.d.ts +8 -0
  96. package/dist-vue/packages/components/src/chat/markdownHtml.d.ts +20 -0
  97. package/dist-vue/packages/components/src/chat/utils.d.ts +9 -0
  98. package/dist-vue/packages/composable/src/chatbot/useChatbotStore.d.ts +60 -0
  99. package/dist-vue/packages/models/src/schema/AgentApiTool.d.ts +70 -0
  100. package/dist-vue/packages/models/src/schema/Chat.d.ts +42 -0
  101. package/dist-vue/packages/models/src/schema/Lead.d.ts +13 -0
  102. package/dist-vue/packages/models/src/schema/Media.d.ts +0 -1
  103. package/dist-vue/packages/models/src/schema/ModelProvider.d.ts +1 -1
  104. package/dist-vue/style.css +1 -1
  105. package/package.json +2 -1
  106. package/dist/_chunks/Agent-DTLrWpzX.js +0 -460
  107. package/dist/_chunks/Agent-DTLrWpzX.js.map +0 -1
  108. package/dist/_chunks/Media-Cft7Pwrh.js +0 -108
  109. package/dist/_chunks/Media-Cft7Pwrh.js.map +0 -1
  110. package/dist/_chunks/PkStreamingMarkdown-CRlRDGYl.js.map +0 -1
  111. package/dist-vue/_chunks/PkChatbotMessages-BD-vUak6.js +0 -776
  112. package/dist-vue/_chunks/PkChatbotMessages-BD-vUak6.js.map +0 -1
  113. package/dist-vue/_chunks/PkChatbotSteps-jW07Q-4x.js +0 -190
  114. package/dist-vue/_chunks/PkStreamingMarkdown-BoEpwaYQ.js +0 -2430
  115. package/dist-vue/_chunks/PkStreamingMarkdown-BoEpwaYQ.js.map +0 -1
  116. package/dist-vue/_chunks/createChatbotApiClient-CaVLm5W9.js.map +0 -1
  117. package/dist-vue/_chunks/utils-h4C7rRcu.js +0 -177
  118. package/dist-vue/_chunks/utils-h4C7rRcu.js.map +0 -1
@@ -0,0 +1,3245 @@
1
+ import { n as e, t } from "./cdn-css-JUUNhyQ6.js";
2
+ import "./src-DT8FLE4_.js";
3
+ import { n } from "./url-validation-uLMZ5-AU.js";
4
+ import { l as r } from "./utils-BL4Ppr2R.js";
5
+ import { computed as i, createElementBlock as a, defineComponent as o, inject as s, nextTick as c, onBeforeUnmount as l, onMounted as u, openBlock as d, provide as f, reactive as p, toRef as ee, toValue as te, useTemplateRef as ne, watch as m } from "vue";
6
+ import { useI18n as re } from "vue-i18n";
7
+ import { refThrottled as ie } from "@vueuse/core";
8
+ //#region ../../packages/utils/src/citations.ts
9
+ var h = /[ \t]*\uE200[^\uE201]*\uE201/g, ae = /[ \t]*(?:cite|filecite|videocite|audiocite|imagecite|screenshot)(?:turn\d+[a-z]+\d+)+/gi, oe = /[\uE200-\uE20F]/g;
10
+ function se(e) {
11
+ return e && e.replace(h, "").replace(ae, "").replace(oe, "");
12
+ }
13
+ //#endregion
14
+ //#region ../../packages/composable/src/chatbot/useShortUrlResolver.ts
15
+ var ce = /\/api\/r\/([A-Za-z0-9_-]{1,20})(?:[?#]|$)/, g = /https?:\/\/[^\s)"'<>]*\/api\/r\/([A-Za-z0-9_-]{1,20})/g;
16
+ function _(e) {
17
+ return ce.exec(e)?.[1];
18
+ }
19
+ function le(e) {
20
+ let t = p(/* @__PURE__ */ new Map()), n = p(/* @__PURE__ */ new Set()), r = /* @__PURE__ */ new Set(), a = !1;
21
+ async function o() {
22
+ a = !1;
23
+ let i = [...r];
24
+ if (r.clear(), i.length !== 0) try {
25
+ let n = await e(i);
26
+ for (let [e, r] of Object.entries(n)) t.set(e, r);
27
+ } catch {} finally {
28
+ for (let e of i) n.add(e);
29
+ }
30
+ }
31
+ function s(e) {
32
+ t.has(e) || r.has(e) || (r.add(e), a || (a = !0, queueMicrotask(o)));
33
+ }
34
+ function c(e) {
35
+ return i(() => {
36
+ let r = te(e), i = r ? _(r) : void 0;
37
+ if (!i) return {
38
+ url: r,
39
+ loading: !1
40
+ };
41
+ let a = t.get(i);
42
+ return a === void 0 ? (s(i), {
43
+ url: r,
44
+ loading: !n.has(i)
45
+ }) : {
46
+ url: a,
47
+ loading: !1
48
+ };
49
+ });
50
+ }
51
+ function l(e) {
52
+ return i(() => {
53
+ let n = te(e) ?? "";
54
+ return n && n.replace(g, (e, n) => {
55
+ let r = t.get(n);
56
+ return r === void 0 ? (s(n), e) : r;
57
+ });
58
+ });
59
+ }
60
+ return {
61
+ resolve: c,
62
+ resolveText: l
63
+ };
64
+ }
65
+ var ue = Symbol("shortUrlResolver");
66
+ function de(e) {
67
+ let t = le(e);
68
+ return f(ue, t), t;
69
+ }
70
+ var fe = {
71
+ resolve: (e) => i(() => ({
72
+ url: te(e),
73
+ loading: !1
74
+ })),
75
+ resolveText: (e) => i(() => te(e) ?? "")
76
+ };
77
+ function pe() {
78
+ return s(ue, fe);
79
+ }
80
+ //#endregion
81
+ //#region ../../node_modules/.pnpm/remend@1.3.1/node_modules/remend/dist/index.js
82
+ var me = Object.defineProperty, v = Object.defineProperties, he = Object.getOwnPropertyDescriptors, ge = Object.getOwnPropertySymbols, _e = Object.prototype.hasOwnProperty, ve = Object.prototype.propertyIsEnumerable, ye = (e, t, n) => t in e ? me(e, t, {
83
+ enumerable: !0,
84
+ configurable: !0,
85
+ writable: !0,
86
+ value: n
87
+ }) : e[t] = n, be = (e, t) => {
88
+ for (var n in t ||= {}) _e.call(t, n) && ye(e, n, t[n]);
89
+ if (ge) for (var n of ge(t)) ve.call(t, n) && ye(e, n, t[n]);
90
+ return e;
91
+ }, y = (e, t) => v(e, he(t)), xe = (e) => {
92
+ let t = new Uint8Array(e.length + 1), n = !1, r = !1, i = 0;
93
+ for (; i < e.length;) {
94
+ if (e[i] === "\\" && i + 1 < e.length && e[i + 1] === "`") {
95
+ let e = n || r ? 1 : 0;
96
+ t[i + 1] = e, t[i + 2] = e, i += 2;
97
+ continue;
98
+ }
99
+ if (e.substring(i, i + 3) === "```") {
100
+ r = !r;
101
+ let a = n || r ? 1 : 0, o = Math.min(i + 3, e.length);
102
+ for (let e = i + 1; e <= o; e += 1) t[e] = a;
103
+ i = o;
104
+ continue;
105
+ }
106
+ !r && e[i] === "`" && (n = !n), t[i + 1] = n || r ? 1 : 0, i += 1;
107
+ }
108
+ return t;
109
+ }, Se = null, b = (e, t) => {
110
+ let n = Se;
111
+ return (n === null || n.text !== e) && (n = {
112
+ text: e,
113
+ lookup: xe(e)
114
+ }, Se = n), n.lookup[Math.min(t, e.length)] === 1;
115
+ }, Ce = (e, t) => {
116
+ let n = e.substring(t, t + 3) === "```", r = t > 0 && e.substring(t - 1, t + 2) === "```", i = t > 1 && e.substring(t - 2, t + 1) === "```";
117
+ return n || r || i;
118
+ }, we = (e) => {
119
+ let t = 0;
120
+ for (let n = 0; n < e.length; n += 1) {
121
+ if (e[n] === "\\" && n + 1 < e.length && e[n + 1] === "`") {
122
+ n += 1;
123
+ continue;
124
+ }
125
+ e[n] === "`" && !Ce(e, n) && (t += 1);
126
+ }
127
+ return t;
128
+ }, x = (e, t) => {
129
+ let n = !1, r = !1, i = -1;
130
+ for (let a = 0; a < e.length; a += 1) {
131
+ if (e[a] === "\\" && a + 1 < e.length && e[a + 1] === "`") {
132
+ a += 1;
133
+ continue;
134
+ }
135
+ if (e.substring(a, a + 3) === "```") {
136
+ r = !r, a += 2;
137
+ continue;
138
+ }
139
+ if (!r && e[a] === "`") {
140
+ if (n) {
141
+ if (i < t && t < a) return !0;
142
+ n = !1, i = -1;
143
+ } else n = !0, i = a;
144
+ }
145
+ }
146
+ return !1;
147
+ }, Te = /^(\s*(?:[-*+]|\d+[.)]) +)>(=?\s*[$]?\d)/gm, Ee = (e) => !e || typeof e != "string" || !e.includes(">") ? e : e.replace(Te, (t, n, r, i) => b(e, i) ? t : `${n}\\>${r}`), De = /(\*\*)([^*]*\*?)$/, S = /(__)([^_]*?)$/, Oe = /(\*\*\*)([^*]*?)$/, C = /(\*)([^*]*?)$/, ke = /(_)([^_]*?)$/, w = /(`)([^`]*?)$/, Ae = /(~~)([^~]*?)$/, T = /^[\s_~*`]*$/, E = /^[\s]*[-*+][\s]+$/, je = /[\p{L}\p{N}_]/u, Me = /^```[^`\n]*```?$/, Ne = /^\*{4,}$/, Pe = /(__)([^_]+)_$/, D = /(~~)([^~]+)~$/, O = /~~/g, k = (e) => {
148
+ if (!e) return !1;
149
+ let t = e.charCodeAt(0);
150
+ return t >= 48 && t <= 57 || t >= 65 && t <= 90 || t >= 97 && t <= 122 || t === 95 || je.test(e);
151
+ }, Fe = (e, t) => {
152
+ let n = 1;
153
+ for (let r = t - 1; r >= 0; --r) if (e[r] === "]") n += 1;
154
+ else if (e[r] === "[" && (--n, n === 0)) return r;
155
+ return -1;
156
+ }, Ie = (e, t) => {
157
+ let n = 1;
158
+ for (let r = t + 1; r < e.length; r += 1) if (e[r] === "[") n += 1;
159
+ else if (e[r] === "]" && (--n, n === 0)) return r;
160
+ return -1;
161
+ }, Le = (e) => e === "inlineLatex" || e === "blockLatex", Re = (e, t) => t === "[" && e === "none" ? "blockLatex" : t === "]" && e === "blockLatex" ? "none" : t === "(" && e === "none" ? "inlineLatex" : t === ")" && e === "inlineLatex" ? "none" : null, ze = (e, t) => t ? e === "blockDollar" ? "none" : "blockDollar" : e === "blockDollar" ? e : e === "inlineDollar" ? "none" : "inlineDollar", A = (e, t) => {
162
+ let n = "none";
163
+ for (let r = 0; r < e.length && r < t; r += 1) {
164
+ if (e[r] === "\\" && e[r + 1] === "$") {
165
+ r += 1;
166
+ continue;
167
+ }
168
+ if (e[r] === "\\") {
169
+ let t = Re(n, e[r + 1]);
170
+ if (t !== null) {
171
+ n = t, r += 1;
172
+ continue;
173
+ }
174
+ }
175
+ if (e[r] === "$" && !Le(n)) {
176
+ let t = e[r + 1] === "$";
177
+ n = ze(n, t), t && (r += 1);
178
+ }
179
+ }
180
+ return n !== "none";
181
+ }, Be = (e, t) => {
182
+ for (let n = t; n < e.length; n += 1) {
183
+ if (e[n] === ")") return !0;
184
+ if (e[n] === "\n") return !1;
185
+ }
186
+ return !1;
187
+ }, Ve = (e, t) => {
188
+ for (let n = t - 1; n >= 0; --n) {
189
+ if (e[n] === ")") return !1;
190
+ if (e[n] === "(") return n > 0 && e[n - 1] === "]" && Be(e, t);
191
+ if (e[n] === "\n") return !1;
192
+ }
193
+ return !1;
194
+ }, He = (e, t) => {
195
+ for (let n = t - 1; n >= 0; --n) {
196
+ if (e[n] === ">") return !1;
197
+ if (e[n] === "<") {
198
+ let t = n + 1 < e.length ? e[n + 1] : "";
199
+ return t >= "a" && t <= "z" || t >= "A" && t <= "Z" || t === "/";
200
+ }
201
+ if (e[n] === "\n") return !1;
202
+ }
203
+ return !1;
204
+ }, Ue = (e, t, n) => {
205
+ let r = 0;
206
+ for (let n = t - 1; n >= 0; --n) if (e[n] === "\n") {
207
+ r = n + 1;
208
+ break;
209
+ }
210
+ let i = e.length;
211
+ for (let n = t; n < e.length; n += 1) if (e[n] === "\n") {
212
+ i = n;
213
+ break;
214
+ }
215
+ let a = e.substring(r, i), o = 0, s = !1;
216
+ for (let e of a) if (e === n) o += 1;
217
+ else if (e !== " " && e !== " ") {
218
+ s = !0;
219
+ break;
220
+ }
221
+ return o >= 3 && !s;
222
+ }, We = (e) => e.includes("$") || e.includes("\\(") || e.includes("\\["), Ge = (e, t, n, r) => n === "\\" || We(e) && A(e, t) ? !0 : n !== "*" && r === "*" ? (t < e.length - 2 ? e[t + 2] : "") !== "*" : n === "*" || (!n || n === " " || n === " " || n === "\n") && (!r || r === " " || r === " " || r === "\n"), j = (e) => e === " " || e === " " || e === "\n", Ke = (e, t) => !!(e && t && k(e) && k(t)), qe = (e, t, n, r) => {
223
+ let i = Ke(e, t), a = !!t && !j(t), o = !!e && !j(e);
224
+ return i && n % 2 == 0 && !r ? { count: !1 } : o && n % 2 == 1 || a ? {
225
+ count: !0,
226
+ inWordAsteriskChain: i
227
+ } : { count: !1 };
228
+ }, Je = (e) => {
229
+ let t = 0, n = !1, r = !1, i = e.length;
230
+ for (let a = 0; a < i; a += 1) {
231
+ if (e[a] === "`" && a + 2 < i && e[a + 1] === "`" && e[a + 2] === "`") {
232
+ n = !n, a += 2;
233
+ continue;
234
+ }
235
+ if (n) continue;
236
+ if (e[a] !== "*") {
237
+ k(e[a]) || (r = !1);
238
+ continue;
239
+ }
240
+ let o = a > 0 ? e[a - 1] : "", s = a < i - 1 ? e[a + 1] : "";
241
+ if (Ge(e, a, o, s)) continue;
242
+ let c = qe(o, s, t, r);
243
+ c.count && (t += 1, r = c.inWordAsteriskChain);
244
+ }
245
+ return t;
246
+ }, Ye = (e, t, n, r) => !!(n === "\\" || We(e) && A(e, t) || Ve(e, t) || He(e, t) || n === "_" || r === "_" || n && r && k(n) && k(r)), Xe = (e) => {
247
+ let t = 0, n = !1, r = e.length;
248
+ for (let i = 0; i < r; i += 1) {
249
+ if (e[i] === "`" && i + 2 < r && e[i + 1] === "`" && e[i + 2] === "`") {
250
+ n = !n, i += 2;
251
+ continue;
252
+ }
253
+ if (n || e[i] !== "_") continue;
254
+ let a = i > 0 ? e[i - 1] : "", o = i < r - 1 ? e[i + 1] : "";
255
+ Ye(e, i, a, o) || (t += 1);
256
+ }
257
+ return t;
258
+ }, Ze = (e) => {
259
+ let t = 0, n = 0, r = !1;
260
+ for (let i = 0; i < e.length; i += 1) {
261
+ if (e[i] === "`" && i + 2 < e.length && e[i + 1] === "`" && e[i + 2] === "`") {
262
+ n >= 3 && (t += Math.floor(n / 3)), n = 0, r = !r, i += 2;
263
+ continue;
264
+ }
265
+ r || (e[i] === "*" ? n += 1 : (n >= 3 && (t += Math.floor(n / 3)), n = 0));
266
+ }
267
+ return n >= 3 && (t += Math.floor(n / 3)), t;
268
+ }, Qe = (e) => {
269
+ let t = 0, n = !1;
270
+ for (let r = 0; r < e.length; r += 1) {
271
+ if (e[r] === "`" && r + 2 < e.length && e[r + 1] === "`" && e[r + 2] === "`") {
272
+ n = !n, r += 2;
273
+ continue;
274
+ }
275
+ n || e[r] === "*" && r + 1 < e.length && e[r + 1] === "*" && (t += 1, r += 1);
276
+ }
277
+ return t;
278
+ }, $e = (e) => {
279
+ let t = 0, n = !1;
280
+ for (let r = 0; r < e.length; r += 1) {
281
+ if (e[r] === "`" && r + 2 < e.length && e[r + 1] === "`" && e[r + 2] === "`") {
282
+ n = !n, r += 2;
283
+ continue;
284
+ }
285
+ n || e[r] === "_" && r + 1 < e.length && e[r + 1] === "_" && (t += 1, r += 1);
286
+ }
287
+ return t;
288
+ }, M = (e, t, n) => {
289
+ if (!t || T.test(t)) return !0;
290
+ let r = e.substring(0, n).lastIndexOf("\n"), i = r === -1 ? 0 : r + 1, a = e.substring(i, n);
291
+ return E.test(a) && t.includes("\n") ? !0 : Ue(e, n, "*");
292
+ }, et = (e) => {
293
+ let t = e.match(De);
294
+ if (!t) return e;
295
+ let n = t[2], r = e.lastIndexOf(t[1]);
296
+ return b(e, r) || x(e, r) || M(e, n, r) ? e : Qe(e) % 2 == 1 ? n.endsWith("*") ? `${e}*` : `${e}**` : e;
297
+ }, tt = (e, t, n) => {
298
+ if (!t || T.test(t)) return !0;
299
+ let r = e.substring(0, n).lastIndexOf("\n"), i = r === -1 ? 0 : r + 1, a = e.substring(i, n);
300
+ return E.test(a) && t.includes("\n") ? !0 : Ue(e, n, "_");
301
+ }, nt = (e) => {
302
+ let t = e.match(S);
303
+ if (!t) {
304
+ let t = e.match(Pe);
305
+ if (t) {
306
+ let n = e.lastIndexOf(t[1]);
307
+ if (!(b(e, n) || x(e, n)) && $e(e) % 2 == 1) return `${e}_`;
308
+ }
309
+ return e;
310
+ }
311
+ let n = t[2], r = e.lastIndexOf(t[1]);
312
+ return b(e, r) || x(e, r) || tt(e, n, r) ? e : $e(e) % 2 == 1 ? `${e}__` : e;
313
+ }, rt = (e) => {
314
+ let t = !1;
315
+ for (let n = 0; n < e.length; n += 1) {
316
+ if (e[n] === "`" && n + 2 < e.length && e[n + 1] === "`" && e[n + 2] === "`") {
317
+ t = !t, n += 2;
318
+ continue;
319
+ }
320
+ if (!t && e[n] === "*" && e[n - 1] !== "*" && e[n + 1] !== "*" && e[n - 1] !== "\\" && !A(e, n)) {
321
+ let t = n > 0 ? e[n - 1] : "", r = n < e.length - 1 ? e[n + 1] : "", i = !t || j(t), a = !r || j(r);
322
+ if (i && a || t && r && k(t) && k(r) || a) continue;
323
+ return n;
324
+ }
325
+ }
326
+ return -1;
327
+ }, it = (e) => {
328
+ if (!e.match(C)) return e;
329
+ let t = rt(e);
330
+ if (t === -1 || b(e, t) || x(e, t)) return e;
331
+ let n = e.substring(t + 1);
332
+ return !n || T.test(n) ? e : Je(e) % 2 == 1 ? `${e}*` : e;
333
+ }, at = (e) => {
334
+ let t = !1;
335
+ for (let n = 0; n < e.length; n += 1) {
336
+ if (e[n] === "`" && n + 2 < e.length && e[n + 1] === "`" && e[n + 2] === "`") {
337
+ t = !t, n += 2;
338
+ continue;
339
+ }
340
+ if (!t && e[n] === "_" && e[n - 1] !== "_" && e[n + 1] !== "_" && e[n - 1] !== "\\" && !A(e, n) && !Ve(e, n)) {
341
+ let t = n > 0 ? e[n - 1] : "", r = n < e.length - 1 ? e[n + 1] : "";
342
+ if (t && r && k(t) && k(r)) continue;
343
+ return n;
344
+ }
345
+ }
346
+ return -1;
347
+ }, ot = (e) => {
348
+ let t = e.length;
349
+ for (; t > 0 && e[t - 1] === "\n";) --t;
350
+ return t < e.length ? `${e.slice(0, t)}_${e.slice(t)}` : `${e}_`;
351
+ }, st = (e) => {
352
+ if (!e.endsWith("**")) return null;
353
+ let t = e.slice(0, -2);
354
+ if (Qe(t) % 2 != 1) return null;
355
+ let n = t.indexOf("**"), r = at(t);
356
+ return n !== -1 && r !== -1 && n < r ? `${t}_**` : null;
357
+ }, ct = (e) => {
358
+ if (!e.match(ke)) return e;
359
+ let t = at(e);
360
+ if (t === -1) return e;
361
+ let n = e.substring(t + 1);
362
+ if (!n || T.test(n) || b(e, t) || x(e, t)) return e;
363
+ if (Xe(e) % 2 == 1) {
364
+ let t = st(e);
365
+ return t === null ? ot(e) : t;
366
+ }
367
+ return e;
368
+ }, lt = (e) => {
369
+ let t = Qe(e), n = Je(e);
370
+ return t % 2 == 0 && n % 2 == 0;
371
+ }, ut = (e, t, n) => !t || T.test(t) || b(e, n) || x(e, n) ? !0 : Ue(e, n, "*"), N = (e) => {
372
+ if (Ne.test(e)) return e;
373
+ let t = e.match(Oe);
374
+ if (!t) return e;
375
+ let n = t[2];
376
+ return ut(e, n, e.lastIndexOf(t[1])) ? e : Ze(e) % 2 == 1 ? lt(e) ? e : `${e}***` : e;
377
+ }, dt = /<[a-zA-Z/][^>]*$/, ft = (e) => {
378
+ let t = e.match(dt);
379
+ return !t || t.index === void 0 || b(e, t.index) ? e : e.substring(0, t.index).trimEnd();
380
+ }, pt = (e) => !e.match(Me) || e.includes("\n") ? null : e.endsWith("``") && !e.endsWith("```") ? `${e}\`` : e, mt = (e) => (e.match(/```/g) || []).length % 2 == 1, ht = (e) => {
381
+ let t = pt(e);
382
+ if (t !== null) return t;
383
+ let n = e.match(w);
384
+ if (n && !mt(e)) {
385
+ let t = n[2];
386
+ if (!t || T.test(t)) return e;
387
+ if (we(e) % 2 == 1) return `${e}\``;
388
+ }
389
+ return e;
390
+ }, gt = (e, t) => t >= 2 && e.substring(t - 2, t + 1) === "```" || t >= 1 && e.substring(t - 1, t + 2) === "```" || t <= e.length - 3 && e.substring(t, t + 3) === "```", _t = (e) => {
391
+ let t = 0, n = !1;
392
+ for (let r = 0; r < e.length - 1; r += 1) e[r] === "`" && !gt(e, r) && (n = !n), !n && e[r] === "$" && e[r + 1] === "$" && (t += 1, r += 1);
393
+ return t;
394
+ }, vt = (e) => {
395
+ let t = 0, n = !1;
396
+ for (let r = 0; r < e.length; r += 1) {
397
+ if (e[r] === "\\") {
398
+ r += 1;
399
+ continue;
400
+ }
401
+ if (e[r] === "`" && !gt(e, r)) {
402
+ n = !n;
403
+ continue;
404
+ }
405
+ !n && e[r] === "$" && (r + 1 < e.length && e[r + 1] === "$" ? r += 1 : t += 1);
406
+ }
407
+ return t;
408
+ }, yt = (e) => {
409
+ if (e.endsWith("$") && !e.endsWith("$$")) return `${e}$`;
410
+ let t = e.indexOf("$$");
411
+ return t !== -1 && e.indexOf("\n", t) !== -1 && !e.endsWith("\n") ? `${e}
412
+ $$` : `${e}$$`;
413
+ }, bt = (e) => _t(e) % 2 == 0 ? e : yt(e), xt = (e) => vt(e) % 2 == 1 ? `${e}$` : e, St = (e, t, n) => {
414
+ if (e.substring(t + 2).includes(")")) return null;
415
+ let r = Fe(e, t);
416
+ if (r === -1 || b(e, r)) return null;
417
+ let i = r > 0 && e[r - 1] === "!", a = i ? r - 1 : r, o = e.substring(0, a);
418
+ if (i) return o;
419
+ let s = e.substring(r + 1, t);
420
+ return n === "text-only" ? `${o}${s}` : `${o}[${s}](streamdown:incomplete-link)`;
421
+ }, Ct = (e, t) => {
422
+ for (let n = 0; n < t; n++) if (e[n] === "[" && !b(e, n)) {
423
+ if (n > 0 && e[n - 1] === "!") continue;
424
+ let t = Ie(e, n);
425
+ if (t === -1) return n;
426
+ if (t + 1 < e.length && e[t + 1] === "(") {
427
+ let r = e.indexOf(")", t + 2);
428
+ r !== -1 && (n = r);
429
+ }
430
+ }
431
+ return t;
432
+ }, wt = (e, t, n) => {
433
+ let r = t > 0 && e[t - 1] === "!", i = r ? t - 1 : t;
434
+ if (!e.substring(t + 1).includes("]")) {
435
+ let a = e.substring(0, i);
436
+ if (r) return a;
437
+ if (n === "text-only") {
438
+ let n = Ct(e, t);
439
+ return e.substring(0, n) + e.substring(n + 1);
440
+ }
441
+ return `${e}](streamdown:incomplete-link)`;
442
+ }
443
+ if (Ie(e, t) === -1) {
444
+ let a = e.substring(0, i);
445
+ if (r) return a;
446
+ if (n === "text-only") {
447
+ let n = Ct(e, t);
448
+ return e.substring(0, n) + e.substring(n + 1);
449
+ }
450
+ return `${e}](streamdown:incomplete-link)`;
451
+ }
452
+ return null;
453
+ }, Tt = (e, t = "protocol") => {
454
+ let n = e.lastIndexOf("](");
455
+ if (n !== -1 && !b(e, n)) {
456
+ let r = St(e, n, t);
457
+ if (r !== null) return r;
458
+ }
459
+ for (let n = e.length - 1; n >= 0; --n) if (e[n] === "[" && !b(e, n)) {
460
+ let r = wt(e, n, t);
461
+ if (r !== null) return r;
462
+ }
463
+ return e;
464
+ }, Et = /^-{1,2}$/, Dt = /^[\s]*-{1,2}[\s]+$/, Ot = /^={1,2}$/, kt = /^[\s]*={1,2}[\s]+$/, At = (e) => {
465
+ if (!e || typeof e != "string") return e;
466
+ let t = e.lastIndexOf("\n");
467
+ if (t === -1) return e;
468
+ let n = e.substring(t + 1), r = e.substring(0, t), i = n.trim();
469
+ if (Et.test(i) && !n.match(Dt)) {
470
+ let t = r.split("\n").at(-1);
471
+ if (t && t.trim().length > 0) return `${e}\u200B`;
472
+ }
473
+ if (Ot.test(i) && !n.match(kt)) {
474
+ let t = r.split("\n").at(-1);
475
+ if (t && t.trim().length > 0) return `${e}\u200B`;
476
+ }
477
+ return e;
478
+ }, jt = /([\p{L}\p{N}_])~(?!~)(?=[\p{L}\p{N}_])/gu, Mt = (e) => !e || typeof e != "string" || !e.includes("~") ? e : e.replace(jt, (t, n, r) => b(e, r + n.length) ? t : `${n}\\~`), Nt = (e) => {
479
+ let t = e.match(Ae);
480
+ if (t) {
481
+ let n = t[2];
482
+ if (!n || T.test(n)) return e;
483
+ let r = e.lastIndexOf(t[1]);
484
+ if (b(e, r) || x(e, r)) return e;
485
+ if (e.match(O)?.length % 2 == 1) return `${e}~~`;
486
+ } else {
487
+ let t = e.match(D);
488
+ if (t) {
489
+ let n = e.lastIndexOf(t[0].slice(0, 2));
490
+ if (b(e, n) || x(e, n)) return e;
491
+ if (e.match(O)?.length % 2 == 1) return `${e}~`;
492
+ }
493
+ }
494
+ return e;
495
+ }, P = (e) => e !== !1, Pt = (e) => e === !0, F = {
496
+ SINGLE_TILDE: 0,
497
+ COMPARISON_OPERATORS: 5,
498
+ HTML_TAGS: 10,
499
+ SETEXT_HEADINGS: 15,
500
+ LINKS: 20,
501
+ BOLD_ITALIC: 30,
502
+ BOLD: 35,
503
+ ITALIC_DOUBLE_UNDERSCORE: 40,
504
+ ITALIC_SINGLE_ASTERISK: 41,
505
+ ITALIC_SINGLE_UNDERSCORE: 42,
506
+ INLINE_CODE: 50,
507
+ STRIKETHROUGH: 60,
508
+ KATEX: 70,
509
+ INLINE_KATEX: 75,
510
+ DEFAULT: 100
511
+ }, Ft = [
512
+ {
513
+ handler: {
514
+ name: "singleTilde",
515
+ handle: Mt,
516
+ priority: F.SINGLE_TILDE
517
+ },
518
+ optionKey: "singleTilde"
519
+ },
520
+ {
521
+ handler: {
522
+ name: "comparisonOperators",
523
+ handle: Ee,
524
+ priority: F.COMPARISON_OPERATORS
525
+ },
526
+ optionKey: "comparisonOperators"
527
+ },
528
+ {
529
+ handler: {
530
+ name: "htmlTags",
531
+ handle: ft,
532
+ priority: F.HTML_TAGS
533
+ },
534
+ optionKey: "htmlTags"
535
+ },
536
+ {
537
+ handler: {
538
+ name: "setextHeadings",
539
+ handle: At,
540
+ priority: F.SETEXT_HEADINGS
541
+ },
542
+ optionKey: "setextHeadings"
543
+ },
544
+ {
545
+ handler: {
546
+ name: "links",
547
+ handle: Tt,
548
+ priority: F.LINKS
549
+ },
550
+ optionKey: "links",
551
+ earlyReturn: (e) => e.endsWith("](streamdown:incomplete-link)")
552
+ },
553
+ {
554
+ handler: {
555
+ name: "boldItalic",
556
+ handle: N,
557
+ priority: F.BOLD_ITALIC
558
+ },
559
+ optionKey: "boldItalic"
560
+ },
561
+ {
562
+ handler: {
563
+ name: "bold",
564
+ handle: et,
565
+ priority: F.BOLD
566
+ },
567
+ optionKey: "bold"
568
+ },
569
+ {
570
+ handler: {
571
+ name: "italicDoubleUnderscore",
572
+ handle: nt,
573
+ priority: F.ITALIC_DOUBLE_UNDERSCORE
574
+ },
575
+ optionKey: "italic"
576
+ },
577
+ {
578
+ handler: {
579
+ name: "italicSingleAsterisk",
580
+ handle: it,
581
+ priority: F.ITALIC_SINGLE_ASTERISK
582
+ },
583
+ optionKey: "italic"
584
+ },
585
+ {
586
+ handler: {
587
+ name: "italicSingleUnderscore",
588
+ handle: ct,
589
+ priority: F.ITALIC_SINGLE_UNDERSCORE
590
+ },
591
+ optionKey: "italic"
592
+ },
593
+ {
594
+ handler: {
595
+ name: "inlineCode",
596
+ handle: ht,
597
+ priority: F.INLINE_CODE
598
+ },
599
+ optionKey: "inlineCode"
600
+ },
601
+ {
602
+ handler: {
603
+ name: "strikethrough",
604
+ handle: Nt,
605
+ priority: F.STRIKETHROUGH
606
+ },
607
+ optionKey: "strikethrough"
608
+ },
609
+ {
610
+ handler: {
611
+ name: "katex",
612
+ handle: bt,
613
+ priority: F.KATEX
614
+ },
615
+ optionKey: "katex"
616
+ },
617
+ {
618
+ handler: {
619
+ name: "inlineKatex",
620
+ handle: xt,
621
+ priority: F.INLINE_KATEX
622
+ },
623
+ optionKey: "inlineKatex"
624
+ }
625
+ ], It = (e) => {
626
+ let t = e?.linkMode ?? "protocol";
627
+ return Ft.filter(({ handler: t, optionKey: n }) => t.name === "links" ? P(e?.links) || P(e?.images) : t.name === "inlineKatex" ? Pt(e?.inlineKatex) : P(e?.[n])).map(({ handler: e, earlyReturn: n }) => e.name === "links" ? {
628
+ handler: y(be({}, e), { handle: (e) => Tt(e, t) }),
629
+ earlyReturn: t === "protocol" ? n : void 0
630
+ } : {
631
+ handler: e,
632
+ earlyReturn: n
633
+ });
634
+ }, Lt = (e, t) => {
635
+ if (!e || typeof e != "string") return e;
636
+ let n = e.endsWith(" ") && !e.endsWith(" ") ? e.slice(0, -1) : e, r = It(t), i = (t?.handlers ?? []).map((e) => ({
637
+ handler: y(be({}, e), { priority: e.priority ?? F.DEFAULT }),
638
+ earlyReturn: void 0
639
+ })), a = [...r, ...i].sort((e, t) => (e.handler.priority ?? 0) - (t.handler.priority ?? 0));
640
+ for (let { handler: e, earlyReturn: t } of a) if (n = e.handle(n), t != null && t(n)) return n;
641
+ return n;
642
+ };
643
+ //#endregion
644
+ //#region ../../node_modules/.pnpm/marked@18.0.14/node_modules/marked/lib/marked.esm.js
645
+ function Rt() {
646
+ return {
647
+ async: !1,
648
+ breaks: !1,
649
+ extensions: null,
650
+ gfm: !0,
651
+ hooks: null,
652
+ pedantic: !1,
653
+ renderer: null,
654
+ silent: !1,
655
+ tokenizer: null,
656
+ walkTokens: null
657
+ };
658
+ }
659
+ var I = Rt();
660
+ function zt(e) {
661
+ I = e;
662
+ }
663
+ var L = { exec: () => null };
664
+ function Bt(e) {
665
+ let t = [];
666
+ return (n) => {
667
+ let r = Math.max(0, Math.min(3, n - 1)), i = t[r];
668
+ return i || (i = e(r), t[r] = i), i;
669
+ };
670
+ }
671
+ function R(e, t = "") {
672
+ let n = typeof e == "string" ? e : e.source, r = {
673
+ replace: (e, t) => {
674
+ let i = typeof t == "string" ? t : t.source;
675
+ return i = i.replace(z.caret, "$1"), n = n.replace(e, i), r;
676
+ },
677
+ getRegex: () => new RegExp(n, t)
678
+ };
679
+ return r;
680
+ }
681
+ var Vt = ((e = "") => {
682
+ try {
683
+ return !!RegExp("(?<=1)(?<!1)" + e);
684
+ } catch {
685
+ return !1;
686
+ }
687
+ })(), z = {
688
+ codeRemoveIndent: /^(?: {0,3}\t| {1,4})/gm,
689
+ outputLinkReplace: /\\([\[\]])/g,
690
+ indentCodeCompensation: /^(\s+)(?:```)/,
691
+ beginningSpace: /^\s+/,
692
+ endingHash: /#$/,
693
+ startingSpaceChar: /^ /,
694
+ endingSpaceChar: / $/,
695
+ endingSpaceTabChar: /[ \t]$/,
696
+ nonSpaceChar: /[^ ]/,
697
+ newLineCharGlobal: /\n/g,
698
+ tabCharGlobal: /\t/g,
699
+ leadingSpaceTab: /^[ \t]+/,
700
+ multipleSpaceGlobal: /\s+/g,
701
+ blankLine: /^[ \t]*$/,
702
+ doubleBlankLine: /\n[ \t]*\n[ \t]*$/,
703
+ blockquoteStart: /^ {0,3}>/,
704
+ blockquoteSetextReplace: /\n {0,3}((?:=+|-+) *)(?=\n|$)/g,
705
+ blockquoteSetextReplace2: /^ {0,3}>[ \t]?/gm,
706
+ listReplaceNesting: /^ {1,4}(?=( {4})*[^ ])/g,
707
+ listIsTask: /^\[[ xX]\] +\S/,
708
+ listReplaceTask: /^\[[ xX]\] +/,
709
+ listTaskCheckbox: /\[[ xX]\]/,
710
+ anyLine: /\n.*\n/,
711
+ hrefBrackets: /^<(.*)>$/,
712
+ tableDelimiter: /[:|]/,
713
+ tableAlignChars: /^\||\| *$/g,
714
+ tableRowBlankLine: /\n[ \t]*$/,
715
+ tableAlignRight: /^ *-+: *$/,
716
+ tableAlignCenter: /^ *:-+: *$/,
717
+ tableAlignLeft: /^ *:-+ *$/,
718
+ startATag: /^<a /i,
719
+ endATag: /^<\/a>/i,
720
+ startPreScriptTag: /^<(pre|code|kbd|script)(\s|>)/i,
721
+ endPreScriptTag: /^<\/(pre|code|kbd|script)(\s|>)/i,
722
+ startAngleBracket: /^</,
723
+ endAngleBracket: />$/,
724
+ pedanticHrefTitle: /^([^'"]*[^\s])\s+(['"])(.*)\2/,
725
+ unicodeAlphaNumeric: /[\p{L}\p{N}]/u,
726
+ numericCharacterReference: /&#(?:(\d{1,7})|[Xx]([A-Fa-f0-9]{1,6}));/g,
727
+ escapeTest: /[&<>"']/,
728
+ escapeReplace: /[&<>"']/g,
729
+ escapeTestNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,
730
+ escapeReplaceNoEncode: /[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,
731
+ caret: /(^|[^\[])\^/g,
732
+ percentDecode: /%25/g,
733
+ findPipe: /\|/g,
734
+ splitPipe: / \|/,
735
+ slashPipe: /\\\|/g,
736
+ carriageReturn: /\r\n|\r/g,
737
+ spaceLine: /^ +$/gm,
738
+ notSpaceStart: /^\S*/,
739
+ endingNewline: /\n$/,
740
+ listItemRegex: (e) => RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),
741
+ nextBulletRegex: Bt((e) => RegExp(`^ {0,${e}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),
742
+ hrRegex: Bt((e) => RegExp(`^ {0,${e}}((?:-[ ]*){3,}|(?:_[ ]*){3,}|(?:\\*[ ]*){3,})(?:\\n+|$)`)),
743
+ fencesBeginRegex: Bt((e) => RegExp(`^ {0,${e}}(?:\`\`\`|~~~)`)),
744
+ headingBeginRegex: Bt((e) => RegExp(`^ {0,${e}}#`)),
745
+ htmlBeginRegex: Bt((e) => RegExp(`^ {0,${e}}(?:</?(?:${nn})(?: +|$|/?>)|<(?:script|pre|style|textarea|!--))`, "i")),
746
+ blockquoteBeginRegex: Bt((e) => RegExp(`^ {0,${e}}>`))
747
+ }, Ht = /^(?:[ \t]*(?:\n|$))+/, Ut = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, Wt = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, Gt = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, Kt = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, qt = / {0,3}(?:[*+-]|\d{1,9}[.)])/, Jt = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |fences|blockquote|heading|hr|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, Yt = R(Jt).replace(/bull/g, qt).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}(?:\s|$)/).replace(/hr/g, / {0,3}(?:(?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), Xt = R(Jt).replace(/bull/g, qt).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}(?:\s|$)/).replace(/hr/g, / {0,3}(?:(?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), Zt = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table|[ \t]+\n)[^\n]+)*)/, Qt = /^[^\n]+/, $t = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, en = R(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", $t).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), tn = R(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g, qt).getRegex(), nn = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", rn = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, an = R("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n*|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>[^\\n]*\\n*|$)|<![A-Z][\\s\\S]*?(?:>[^\\n]*\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>[^\\n]*\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][a-z0-9-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][a-z0-9-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", rn).replace("tag", nn).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), on = (e) => R(Zt).replace("hr", Gt).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list", e).replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", nn).getRegex(), sn = on(/ {0,3}(?:[*+-]|1[.)])[ \t]+[^ \t\n]/), cn = on(/ {0,3}(?:[*+-]|\d{1,9}[.)])(?:[ \t]|\n|$)/), ln = {
748
+ blockquote: R(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", cn).getRegex(),
749
+ code: Ut,
750
+ def: en,
751
+ fences: Wt,
752
+ heading: Kt,
753
+ hr: Gt,
754
+ html: an,
755
+ lheading: Yt,
756
+ list: tn,
757
+ newline: Ht,
758
+ paragraph: sn,
759
+ table: L,
760
+ text: Qt
761
+ }, un = R("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", Gt).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", nn).getRegex(), dn = {
762
+ ...ln,
763
+ lheading: Xt,
764
+ table: un,
765
+ paragraph: R(Zt).replace("hr", Gt).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", un).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", nn).getRegex()
766
+ }, fn = {
767
+ ...ln,
768
+ html: R("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment", rn).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
769
+ def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
770
+ heading: /^(#{1,6})(.*)(?:\n+|$)/,
771
+ fences: L,
772
+ lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,
773
+ paragraph: R(Zt).replace("hr", Gt).replace("heading", " *#{1,6} *[^\n]").replace("lheading", Yt).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex()
774
+ }, pn = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, mn = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, hn = /^( {2,}|\\)\n(?!\s*$)[ \t]*/, gn = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, B = /[\p{P}\p{S}]/u, _n = /[\s\p{P}\p{S}]/u, vn = /[^\s\p{P}\p{S}]/u, yn = R(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, _n).getRegex(), bn = /[\p{Pi}\p{Ps}"']/u, xn = /(?!~)[\p{P}\p{S}]/u, Sn = /(?!~)[\s\p{P}\p{S}]/u, Cn = /(?:[^\s\p{P}\p{S}]|~)/u, wn = R(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", Vt ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), Tn = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/, En = R(Tn, "u").replace(/punct/g, B).getRegex(), Dn = R(Tn, "u").replace(/punct/g, xn).getRegex(), On = R(/^(?:\*+(?:((?!\*)(?!openQuote)punct)|([^\s*]))?)|^_+(?:((?!_)(?!openQuote)punct)|([^\s_]))?/, "u").replace(/openQuote/g, bn).replace(/punct/g, B).getRegex(), kn = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", An = R(kn, "gu").replace(/notPunctSpace/g, vn).replace(/punctSpace/g, _n).replace(/punct/g, B).getRegex(), jn = R(kn, "gu").replace(/notPunctSpace/g, Cn).replace(/punctSpace/g, Sn).replace(/punct/g, xn).getRegex(), Mn = R("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)[\\s](\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|(?:(?!\\*)punct|notPunctSpace)(\\*+)(?!\\*)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, vn).replace(/punctSpace/g, _n).replace(/punct/g, B).getRegex(), Nn = R("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, vn).replace(/punctSpace/g, _n).replace(/punct/g, B).getRegex(), Pn = R("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)[\\s](_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)|(?:(?!_)punct|notPunctSpace)(_+)(?!_)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, vn).replace(/punctSpace/g, _n).replace(/punct/g, B).getRegex(), Fn = R(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, B).getRegex(), In = R("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, vn).replace(/punctSpace/g, _n).replace(/punct/g, B).getRegex(), Ln = R(/\\(punct)/, "gu").replace(/punct/g, B).getRegex(), Rn = R(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), zn = R(rn).replace("(?:-->|$)", "-->").getRegex(), Bn = R("^comment|^</[a-zA-Z][a-zA-Z0-9-]*\\s*>|^<[a-zA-Z][a-zA-Z0-9-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", zn).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), Vn = /\[(?:\\[\s\S]|[^\[\]\\])*\]/, Hn = R(/(?:\[(?:brackets|\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/).replace("brackets", Vn).getRegex(), Un = R(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", Hn).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]+|(?=\))/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), Wn = R(/^!?\[(label)\]\[(ref)\]/).replace("label", Hn).replace("ref", $t).getRegex(), Gn = R(/^!?\[(ref)\](?:\[\])?/).replace("ref", $t).getRegex(), Kn = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\]){1,999}/, qn = R(/(?:[^\[\]\\`]*(?:\[(?:brackets|\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\]))){0,999}?[^\[\]\\`]*?/).replace("brackets", Vn).getRegex(), Jn = R("reflink|nolink(?!\\()", "g").replace("reflink", R(/^!?\[(label)\]\[(ref)\]/).replace("label", qn).replace("ref", Kn).getRegex()).replace("nolink", R(/^!?\[(ref)\](?:\[\])?/).replace("ref", Kn).getRegex()).getRegex(), Yn = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, Xn = R(/(?:mailto:email|xmpp:email(?:\/[A-Za-z0-9@.]+)?)/).replace(/email/g, /[A-Za-z0-9._+-]+@[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![\w-])/).getRegex(), Zn = {
775
+ _backpedal: L,
776
+ anyPunctuation: Ln,
777
+ autolink: Rn,
778
+ blockSkip: wn,
779
+ br: hn,
780
+ code: mn,
781
+ del: L,
782
+ delLDelim: L,
783
+ delRDelim: L,
784
+ emStrongLDelim: En,
785
+ emStrongRDelimAst: An,
786
+ emStrongRDelimUnd: Nn,
787
+ escape: pn,
788
+ link: Un,
789
+ nolink: Gn,
790
+ punctuation: yn,
791
+ reflink: Wn,
792
+ reflinkSearch: Jn,
793
+ tag: Bn,
794
+ text: gn,
795
+ url: L
796
+ }, Qn = {
797
+ ...Zn,
798
+ emStrongLDelim: On,
799
+ emStrongRDelimAst: Mn,
800
+ emStrongRDelimUnd: Pn,
801
+ link: R(/^!?\[(label)\]\((.*?)\)/).replace("label", Hn).getRegex(),
802
+ reflink: R(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", Hn).getRegex()
803
+ }, $n = {
804
+ ...Zn,
805
+ emStrongRDelimAst: jn,
806
+ emStrongLDelim: Dn,
807
+ delLDelim: Fn,
808
+ delRDelim: In,
809
+ url: R(/^emailProtocol|^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("emailProtocol", Xn).replace("protocol", Yn).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![\w-])/).getRegex(),
810
+ _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,
811
+ del: /^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,
812
+ text: R(/^(?:[^a-zA-Z0-9](?=emailProtocol)|(`+|~+|[^`~])(?:(?=[`~])|(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9](?=emailProtocol)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))))/).replace("protocol", Yn).replace(/emailProtocol/g, /(?:mailto|xmpp):/).getRegex()
813
+ }, er = {
814
+ ...$n,
815
+ br: R(hn).replace("{2,}", "*").getRegex(),
816
+ text: R($n.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
817
+ }, tr = {
818
+ normal: ln,
819
+ gfm: dn,
820
+ pedantic: fn
821
+ }, nr = {
822
+ normal: Zn,
823
+ gfm: $n,
824
+ breaks: er,
825
+ pedantic: Qn
826
+ }, rr = {
827
+ "&": "&amp;",
828
+ "<": "&lt;",
829
+ ">": "&gt;",
830
+ "\"": "&quot;",
831
+ "'": "&#39;"
832
+ }, ir = (e) => rr[e];
833
+ function V(e, t) {
834
+ if (t) {
835
+ if (z.escapeTest.test(e)) return e.replace(z.escapeReplace, ir);
836
+ } else if (z.escapeTestNoEncode.test(e)) return e.replace(z.escapeReplaceNoEncode, ir);
837
+ return e;
838
+ }
839
+ function ar(e) {
840
+ return e.replace(z.numericCharacterReference, (e, t, n) => {
841
+ let r = t === void 0 ? Number.parseInt(n, 16) : Number.parseInt(t, 10);
842
+ return r === 0 || r > 1114111 || r >= 55296 && r <= 57343 ? "�" : String.fromCodePoint(r);
843
+ });
844
+ }
845
+ function or(e) {
846
+ try {
847
+ e = encodeURI(e).replace(z.percentDecode, "%");
848
+ } catch {
849
+ return null;
850
+ }
851
+ return e;
852
+ }
853
+ function sr(e, t) {
854
+ let n = e.replace(z.findPipe, (e, t, n) => {
855
+ let r = !1, i = t;
856
+ for (; --i >= 0 && n[i] === "\\";) r = !r;
857
+ return r ? "|" : " |";
858
+ }).split(z.splitPipe), r = 0;
859
+ if (n[0].trim() || n.shift(), n.length > 0 && !n.at(-1)?.trim() && n.pop(), t) {
860
+ if (n.length > t) n.splice(t);
861
+ else for (; n.length < t;) n.push("");
862
+ }
863
+ for (; r < n.length; r++) n[r] = n[r].trim().replace(z.slashPipe, "|");
864
+ return n;
865
+ }
866
+ function cr(e, t, n) {
867
+ let r = e.length;
868
+ if (r === 0) return "";
869
+ let i = 0;
870
+ for (; i < r;) {
871
+ let a = e.charAt(r - i - 1);
872
+ if (a === t && !n) i++;
873
+ else if (a !== t && n) i++;
874
+ else break;
875
+ }
876
+ return e.slice(0, r - i);
877
+ }
878
+ function lr(e) {
879
+ let t = e.split("\n"), n = t.length - 1;
880
+ for (; n >= 0 && z.blankLine.test(t[n]);) n--;
881
+ return t.length - n <= 2 ? e : t.slice(0, n + 1).join("\n");
882
+ }
883
+ function ur(e) {
884
+ return e.trim().toLowerCase().toUpperCase().toLowerCase();
885
+ }
886
+ function dr(e, t) {
887
+ if (e.indexOf(t[1]) === -1) return -1;
888
+ let n = 0;
889
+ for (let r = 0; r < e.length; r++) if (e[r] === "\\") r++;
890
+ else if (e[r] === t[0]) n++;
891
+ else if (e[r] === t[1] && (n--, n < 0)) return r;
892
+ return n > 0 ? -2 : -1;
893
+ }
894
+ function fr(e, t = 0) {
895
+ let n = t, r = "";
896
+ for (let t of e) if (t === " ") {
897
+ let e = 4 - n % 4;
898
+ r += " ".repeat(e), n += e;
899
+ } else r += t, n++;
900
+ return r;
901
+ }
902
+ function pr(e, t, n, r, i) {
903
+ let a = t.href, o = t.title || null, s = e[1].replace(i.other.outputLinkReplace, "$1"), c = e[0].charAt(0) === "!";
904
+ r.state.inLink = !0;
905
+ let l = r.state.linkEmitted, u = r.state.inRawBlock;
906
+ r.state.linkEmitted = !1;
907
+ let d = r.inlineTokens(s), f = r.state.linkEmitted;
908
+ if (r.state.linkEmitted = l, r.state.inLink = !1, !c) {
909
+ if (f) {
910
+ r.state.inRawBlock = u;
911
+ return;
912
+ }
913
+ r.state.linkEmitted = !0;
914
+ }
915
+ return {
916
+ type: c ? "image" : "link",
917
+ raw: n,
918
+ href: a,
919
+ title: o,
920
+ text: s,
921
+ tokens: d
922
+ };
923
+ }
924
+ function mr(e, t, n) {
925
+ let r = e.match(n.other.indentCodeCompensation);
926
+ if (r === null) return t;
927
+ let i = r[1];
928
+ return t.split("\n").map((e) => {
929
+ let t = e.match(n.other.beginningSpace);
930
+ if (t === null) return e;
931
+ let [r] = t;
932
+ return e.slice(Math.min(r.length, i.length));
933
+ }).join("\n");
934
+ }
935
+ function hr(e, t, n, r) {
936
+ if (!t.includes("<")) return !1;
937
+ for (let i = 0; i < t.length; i++) {
938
+ if (t[i] === "\\") {
939
+ i++;
940
+ continue;
941
+ }
942
+ if (t[i] === "`") {
943
+ let e = r.inline.code.exec(t.slice(i));
944
+ if (e) {
945
+ i += e[0].length - 1;
946
+ continue;
947
+ }
948
+ }
949
+ if (t[i] !== "<") continue;
950
+ let a = e.slice(n + i), o = r.inline.tag.exec(a) || r.inline.autolink.exec(a);
951
+ if (o) {
952
+ if (o[0].length > t.length - i) return !0;
953
+ i += o[0].length - 1;
954
+ }
955
+ }
956
+ return !1;
957
+ }
958
+ var gr = class {
959
+ options;
960
+ rules;
961
+ lexer;
962
+ constructor(e) {
963
+ this.options = e || I;
964
+ }
965
+ space(e) {
966
+ let t = this.rules.block.newline.exec(e);
967
+ if (t && t[0].length > 0) return {
968
+ type: "space",
969
+ raw: t[0]
970
+ };
971
+ }
972
+ code(e) {
973
+ let t = this.rules.block.code.exec(e);
974
+ if (t) {
975
+ let e = this.options.pedantic ? t[0] : lr(t[0]);
976
+ return {
977
+ type: "code",
978
+ raw: e,
979
+ codeBlockStyle: "indented",
980
+ text: e.replace(this.rules.other.codeRemoveIndent, "")
981
+ };
982
+ }
983
+ }
984
+ fences(e) {
985
+ let t = this.rules.block.fences.exec(e);
986
+ if (t) {
987
+ let e = t[0], n = mr(e, t[3] || "", this.rules);
988
+ return {
989
+ type: "code",
990
+ raw: e,
991
+ lang: t[2] ? t[2].trim().replace(this.rules.inline.anyPunctuation, "$1") : t[2],
992
+ text: n
993
+ };
994
+ }
995
+ }
996
+ heading(e) {
997
+ let t = this.rules.block.heading.exec(e);
998
+ if (t) {
999
+ let e = t[2].trim();
1000
+ if (this.rules.other.endingHash.test(e)) {
1001
+ let t = cr(e, "#");
1002
+ (this.options.pedantic || !t || this.rules.other.endingSpaceTabChar.test(t)) && (e = t.trim());
1003
+ }
1004
+ return {
1005
+ type: "heading",
1006
+ raw: cr(t[0], "\n"),
1007
+ depth: t[1].length,
1008
+ text: e,
1009
+ tokens: this.lexer.inline(e)
1010
+ };
1011
+ }
1012
+ }
1013
+ hr(e) {
1014
+ let t = this.rules.block.hr.exec(e);
1015
+ if (t) return {
1016
+ type: "hr",
1017
+ raw: cr(t[0], "\n")
1018
+ };
1019
+ }
1020
+ blockquote(e) {
1021
+ let t = this.rules.block.blockquote.exec(e);
1022
+ if (t) {
1023
+ let e = cr(t[0], "\n").split("\n"), n = "", r = "", i = [];
1024
+ for (; e.length > 0;) {
1025
+ let t = !1, a = [], o = 0;
1026
+ for (; o < e.length; o++) if (this.rules.other.blockquoteStart.test(e[o])) a.push(e[o]), t = !0;
1027
+ else if (!t) a.push(e[o]);
1028
+ else break;
1029
+ e = e.slice(o);
1030
+ let s = a.join("\n"), c = s.replace(this.rules.other.blockquoteSetextReplace, "\n $1").replace(this.rules.other.blockquoteSetextReplace2, "");
1031
+ n = n ? `${n}
1032
+ ${s}` : s, r = r ? `${r}
1033
+ ${c}` : c;
1034
+ let l = this.lexer.state.top;
1035
+ if (this.lexer.state.top = !0, this.lexer.blockTokens(c, i, !0), this.lexer.state.top = l, e.length === 0) break;
1036
+ let u = i.at(-1);
1037
+ if (u?.type === "code") break;
1038
+ if (u?.type === "blockquote") {
1039
+ let t = u, a = e.join("\n"), o = t.raw + "\n" + a.replace(this.rules.other.blockquoteSetextReplace2, ""), s = this.blockquote(o);
1040
+ i[i.length - 1] = s;
1041
+ let c = o.substring(s.raw.length).replace(/^\n/, ""), l = c ? c.split("\n").length : 0, d = l ? e.slice(0, -l) : e;
1042
+ d.length > 0 && (n = `${n}
1043
+ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
1044
+ break;
1045
+ }
1046
+ if (u?.type === "list") {
1047
+ let t = u, a = t.raw + "\n" + e.join("\n"), o = this.list(a);
1048
+ i[i.length - 1] = o, n = n.substring(0, n.length - u.raw.length) + o.raw, r = r.substring(0, r.length - t.raw.length) + o.raw, e = a.substring(i.at(-1).raw.length).split("\n");
1049
+ continue;
1050
+ }
1051
+ }
1052
+ return {
1053
+ type: "blockquote",
1054
+ raw: n,
1055
+ tokens: i,
1056
+ text: r
1057
+ };
1058
+ }
1059
+ }
1060
+ list(e) {
1061
+ let t = this.rules.block.list.exec(e);
1062
+ if (t) {
1063
+ let n = t[1].trim(), r = n.length > 1, i = {
1064
+ type: "list",
1065
+ raw: "",
1066
+ ordered: r,
1067
+ start: r ? +n.slice(0, -1) : "",
1068
+ loose: !1,
1069
+ items: []
1070
+ };
1071
+ n = r ? `\\d{1,9}\\${n.slice(-1)}` : `\\${n}`, this.options.pedantic && (n = r ? n : "[*+-]");
1072
+ let a = this.rules.other.listItemRegex(n), o = !1;
1073
+ for (; e;) {
1074
+ let n = !1, r = "", s = "";
1075
+ if (!(t = a.exec(e)) || this.rules.block.hr.test(e)) break;
1076
+ r = t[0], e = e.substring(r.length);
1077
+ let c = t[2].split("\n", 1)[0], l = t[1].length, u = this.options.pedantic ? fr(c, l) : c.replace(this.rules.other.leadingSpaceTab, (e) => fr(e, l)), d = e.split("\n", 1)[0], f = !u.trim(), p = 0;
1078
+ if (this.options.pedantic ? (p = 2, s = u.trimStart()) : f ? p = l + 1 : (p = u.search(this.rules.other.nonSpaceChar), p = p > 4 ? 1 : p, s = u.slice(p), p += l), f && this.rules.other.blankLine.test(d) && (r += d + "\n", e = e.substring(d.length + 1), n = !0), !n) {
1079
+ let t = this.rules.other.nextBulletRegex(p), n = this.rules.other.hrRegex(p), i = this.rules.other.fencesBeginRegex(p), a = this.rules.other.headingBeginRegex(p), o = this.rules.other.htmlBeginRegex(p), c = this.rules.other.blockquoteBeginRegex(p);
1080
+ for (; e;) {
1081
+ let l = e.split("\n", 1)[0], ee;
1082
+ if (d = l, this.options.pedantic ? (d = d.replace(this.rules.other.listReplaceNesting, " "), ee = d) : ee = d.replace(this.rules.other.leadingSpaceTab, (e) => e.replace(this.rules.other.tabCharGlobal, " ")), i.test(d) || a.test(d) || o.test(d) || c.test(d) || t.test(d) || n.test(d)) break;
1083
+ if (ee.search(this.rules.other.nonSpaceChar) >= p || !d.trim()) s += "\n" + ee.slice(p);
1084
+ else {
1085
+ if (f || u.replace(this.rules.other.tabCharGlobal, " ").search(this.rules.other.nonSpaceChar) >= 4 || i.test(u) || a.test(u) || n.test(u)) break;
1086
+ s += "\n" + d;
1087
+ }
1088
+ f = !d.trim(), r += l + "\n", e = e.substring(l.length + 1), u = ee.slice(p);
1089
+ }
1090
+ }
1091
+ i.loose || (o ? i.loose = !0 : this.rules.other.doubleBlankLine.test(r) && (o = !0)), i.items.push({
1092
+ type: "list_item",
1093
+ raw: r,
1094
+ task: !!this.options.gfm && this.rules.other.listIsTask.test(s),
1095
+ loose: !1,
1096
+ text: s,
1097
+ tokens: []
1098
+ }), i.raw += r;
1099
+ }
1100
+ let s = i.items.at(-1);
1101
+ if (s) s.raw = s.raw.trimEnd(), s.text = s.text.trimEnd();
1102
+ else return;
1103
+ i.raw = i.raw.trimEnd();
1104
+ for (let e of i.items) if (this.lexer.state.top = !1, e.tokens = this.lexer.blockTokens(e.text, []), !i.loose) {
1105
+ let t = e.tokens.filter((e) => e.type === "space");
1106
+ i.loose = t.length > 0 && t.some((e) => this.rules.other.anyLine.test(e.raw));
1107
+ }
1108
+ for (let e of i.items) {
1109
+ let t = e.tokens[0];
1110
+ if (e.task && (t?.type === "text" || t?.type === "paragraph")) {
1111
+ e.text = e.text.replace(this.rules.other.listReplaceTask, ""), t.raw = t.raw.replace(this.rules.other.listReplaceTask, ""), t.text = t.text.replace(this.rules.other.listReplaceTask, "");
1112
+ for (let e = this.lexer.inlineQueue.length - 1; e >= 0; e--) if (this.rules.other.listIsTask.test(this.lexer.inlineQueue[e].src)) {
1113
+ this.lexer.inlineQueue[e].src = this.lexer.inlineQueue[e].src.replace(this.rules.other.listReplaceTask, "");
1114
+ break;
1115
+ }
1116
+ let n = this.rules.other.listTaskCheckbox.exec(e.raw);
1117
+ if (n) {
1118
+ let t = {
1119
+ type: "checkbox",
1120
+ raw: n[0] + " ",
1121
+ checked: n[0] !== "[ ]"
1122
+ };
1123
+ e.checked = t.checked, i.loose ? e.tokens[0] && ["paragraph", "text"].includes(e.tokens[0].type) && "tokens" in e.tokens[0] && e.tokens[0].tokens ? (e.tokens[0].raw = t.raw + e.tokens[0].raw, e.tokens[0].text = t.raw + e.tokens[0].text, e.tokens[0].tokens.unshift(t)) : e.tokens.unshift({
1124
+ type: "paragraph",
1125
+ raw: t.raw,
1126
+ text: t.raw,
1127
+ tokens: [t]
1128
+ }) : e.tokens.unshift(t);
1129
+ }
1130
+ } else e.task &&= !1;
1131
+ }
1132
+ if (i.loose) for (let e of i.items) {
1133
+ e.loose = !0;
1134
+ for (let t of e.tokens) t.type === "text" && (t.type = "paragraph");
1135
+ }
1136
+ return i;
1137
+ }
1138
+ }
1139
+ html(e) {
1140
+ let t = this.rules.block.html.exec(e);
1141
+ if (t) {
1142
+ let e = lr(t[0]);
1143
+ return {
1144
+ type: "html",
1145
+ block: !0,
1146
+ raw: e,
1147
+ pre: t[1] === "pre" || t[1] === "script" || t[1] === "style",
1148
+ text: e
1149
+ };
1150
+ }
1151
+ }
1152
+ def(e) {
1153
+ let t = this.rules.block.def.exec(e);
1154
+ if (t) {
1155
+ let e = ur(t[1]).replace(this.rules.other.multipleSpaceGlobal, " "), n = t[2] ? t[2].replace(this.rules.other.hrefBrackets, "$1").replace(this.rules.inline.anyPunctuation, "$1") : "", r = t[3] ? t[3].substring(1, t[3].length - 1).replace(this.rules.inline.anyPunctuation, "$1") : t[3];
1156
+ return {
1157
+ type: "def",
1158
+ tag: e,
1159
+ raw: cr(t[0], "\n"),
1160
+ href: n,
1161
+ title: r
1162
+ };
1163
+ }
1164
+ }
1165
+ table(e) {
1166
+ let t = this.rules.block.table.exec(e);
1167
+ if (!t || !this.rules.other.tableDelimiter.test(t[2])) return;
1168
+ let n = sr(t[1]), r = t[2].replace(this.rules.other.tableAlignChars, "").split("|"), i = t[3]?.trim() ? t[3].replace(this.rules.other.tableRowBlankLine, "").split("\n") : [], a = {
1169
+ type: "table",
1170
+ raw: cr(t[0], "\n"),
1171
+ header: [],
1172
+ align: [],
1173
+ rows: []
1174
+ };
1175
+ if (n.length === r.length) {
1176
+ for (let e of r) this.rules.other.tableAlignRight.test(e) ? a.align.push("right") : this.rules.other.tableAlignCenter.test(e) ? a.align.push("center") : this.rules.other.tableAlignLeft.test(e) ? a.align.push("left") : a.align.push(null);
1177
+ for (let e = 0; e < n.length; e++) a.header.push({
1178
+ text: n[e],
1179
+ tokens: this.lexer.inline(n[e]),
1180
+ header: !0,
1181
+ align: a.align[e]
1182
+ });
1183
+ for (let e of i) a.rows.push(sr(e, a.header.length).map((e, t) => ({
1184
+ text: e,
1185
+ tokens: this.lexer.inline(e),
1186
+ header: !1,
1187
+ align: a.align[t]
1188
+ })));
1189
+ return a;
1190
+ }
1191
+ }
1192
+ lheading(e) {
1193
+ let t = this.rules.block.lheading.exec(e);
1194
+ if (t) {
1195
+ let e = t[1].trim();
1196
+ return {
1197
+ type: "heading",
1198
+ raw: cr(t[0], "\n"),
1199
+ depth: t[2].charAt(0) === "=" ? 1 : 2,
1200
+ text: e,
1201
+ tokens: this.lexer.inline(e)
1202
+ };
1203
+ }
1204
+ }
1205
+ paragraph(e) {
1206
+ let t = this.rules.block.paragraph.exec(e);
1207
+ if (t) {
1208
+ let e = t[1].charAt(t[1].length - 1) === "\n" ? t[1].slice(0, -1) : t[1];
1209
+ return {
1210
+ type: "paragraph",
1211
+ raw: t[0],
1212
+ text: e,
1213
+ tokens: this.lexer.inline(e)
1214
+ };
1215
+ }
1216
+ }
1217
+ text(e) {
1218
+ let t = this.rules.block.text.exec(e);
1219
+ if (t) return {
1220
+ type: "text",
1221
+ raw: t[0],
1222
+ text: t[0],
1223
+ tokens: this.lexer.inline(t[0])
1224
+ };
1225
+ }
1226
+ escape(e) {
1227
+ let t = this.rules.inline.escape.exec(e);
1228
+ if (t) return {
1229
+ type: "escape",
1230
+ raw: t[0],
1231
+ text: t[1]
1232
+ };
1233
+ }
1234
+ tag(e) {
1235
+ let t = this.rules.inline.tag.exec(e);
1236
+ if (t) return !this.lexer.state.inLink && this.rules.other.startATag.test(t[0]) ? this.lexer.state.inLink = !0 : this.lexer.state.inLink && this.rules.other.endATag.test(t[0]) && (this.lexer.state.inLink = !1), !this.lexer.state.inRawBlock && this.rules.other.startPreScriptTag.test(t[0]) ? this.lexer.state.inRawBlock = !0 : this.lexer.state.inRawBlock && this.rules.other.endPreScriptTag.test(t[0]) && (this.lexer.state.inRawBlock = !1), {
1237
+ type: "html",
1238
+ raw: t[0],
1239
+ inLink: this.lexer.state.inLink,
1240
+ inRawBlock: this.lexer.state.inRawBlock,
1241
+ block: !1,
1242
+ text: t[0]
1243
+ };
1244
+ }
1245
+ link(e) {
1246
+ let t = this.rules.inline.link.exec(e);
1247
+ if (t) {
1248
+ let n = t[0].charAt(0) === "!" ? 2 : 1;
1249
+ if (!this.options.pedantic && hr(e, t[1], n, this.rules)) return;
1250
+ let r = t[2].trim();
1251
+ if (!this.options.pedantic && this.rules.other.startAngleBracket.test(r)) {
1252
+ if (!this.rules.other.endAngleBracket.test(r)) return;
1253
+ let e = cr(r.slice(0, -1), "\\");
1254
+ if ((r.length - e.length) % 2 == 0) return;
1255
+ } else {
1256
+ let e = dr(t[2], "()");
1257
+ if (e === -2) return;
1258
+ if (e > -1) {
1259
+ let n = (t[0].indexOf("!") === 0 ? 5 : 4) + t[1].length + e;
1260
+ t[2] = t[2].substring(0, e), t[0] = t[0].substring(0, n).trim(), t[3] = "";
1261
+ }
1262
+ }
1263
+ let i = t[2], a = "";
1264
+ if (this.options.pedantic) {
1265
+ let e = this.rules.other.pedanticHrefTitle.exec(i);
1266
+ e && (i = e[1], a = e[3]);
1267
+ } else a = t[3] ? t[3].slice(1, -1) : "";
1268
+ return i = i.trim(), this.rules.other.startAngleBracket.test(i) && (i = this.options.pedantic && !this.rules.other.endAngleBracket.test(r) ? i.slice(1) : i.slice(1, -1)), pr(t, {
1269
+ href: i && i.replace(this.rules.inline.anyPunctuation, "$1"),
1270
+ title: a && a.replace(this.rules.inline.anyPunctuation, "$1")
1271
+ }, t[0], this.lexer, this.rules);
1272
+ }
1273
+ }
1274
+ reflink(e, t) {
1275
+ let n;
1276
+ if ((n = this.rules.inline.reflink.exec(e)) || (n = this.rules.inline.nolink.exec(e))) {
1277
+ let r = n[0].charAt(0) === "!" ? 2 : 1;
1278
+ if (!this.options.pedantic && hr(e, n[1], r, this.rules)) return;
1279
+ let i = t[ur((n[2] || n[1]).replace(this.rules.other.multipleSpaceGlobal, " "))];
1280
+ if (!i) {
1281
+ let e = n[0].charAt(0);
1282
+ return {
1283
+ type: "text",
1284
+ raw: e,
1285
+ text: e
1286
+ };
1287
+ }
1288
+ return pr(n, i, n[0], this.lexer, this.rules);
1289
+ }
1290
+ }
1291
+ emStrong(e, t, n = "") {
1292
+ let r = this.rules.inline.emStrongLDelim.exec(e);
1293
+ if (!(!r || !r[1] && !r[2] && !r[3] && !r[4] || r[4] && n.match(this.rules.other.unicodeAlphaNumeric)) && (!(r[1] || r[3]) || !n || this.rules.inline.punctuation.exec(n))) {
1294
+ let i = [...r[0]].length - 1, a, o, s = i, c = 0, l = r[0][0], u = n === l, d = l === "*" ? this.rules.inline.emStrongRDelimAst : this.rules.inline.emStrongRDelimUnd;
1295
+ for (d.lastIndex = 0, t = t.slice(-1 * e.length + i); (r = d.exec(t)) !== null;) {
1296
+ if (a = r[1] || r[2] || r[3] || r[4] || r[5] || r[6], !a) continue;
1297
+ if (o = [...a].length, r[3] || r[4]) {
1298
+ s += o;
1299
+ continue;
1300
+ }
1301
+ if (r[5] || r[6]) {
1302
+ if (i % 3 && !((i + o) % 3)) {
1303
+ c += o;
1304
+ continue;
1305
+ }
1306
+ if (u) break;
1307
+ }
1308
+ if (s -= o, s > 0) continue;
1309
+ o = Math.min(o, o + s + c);
1310
+ let t = [...r[0]][0].length, n = e.slice(0, i + r.index + t + o);
1311
+ if (Math.min(i, o) % 2) {
1312
+ let e = n.slice(1, -1);
1313
+ return {
1314
+ type: "em",
1315
+ raw: n,
1316
+ text: e,
1317
+ tokens: this.lexer.inlineTokens(e)
1318
+ };
1319
+ }
1320
+ let l = n.slice(2, -2);
1321
+ return {
1322
+ type: "strong",
1323
+ raw: n,
1324
+ text: l,
1325
+ tokens: this.lexer.inlineTokens(l)
1326
+ };
1327
+ }
1328
+ }
1329
+ }
1330
+ codespan(e) {
1331
+ let t = this.rules.inline.code.exec(e);
1332
+ if (t) {
1333
+ let e = t[2].replace(this.rules.other.newLineCharGlobal, " "), n = this.rules.other.nonSpaceChar.test(e), r = this.rules.other.startingSpaceChar.test(e) && this.rules.other.endingSpaceChar.test(e);
1334
+ return n && r && (e = e.substring(1, e.length - 1)), {
1335
+ type: "codespan",
1336
+ raw: t[0],
1337
+ text: e
1338
+ };
1339
+ }
1340
+ }
1341
+ br(e) {
1342
+ let t = this.rules.inline.br.exec(e);
1343
+ if (t) return {
1344
+ type: "br",
1345
+ raw: t[0]
1346
+ };
1347
+ }
1348
+ del(e, t, n = "") {
1349
+ let r = this.rules.inline.delLDelim.exec(e);
1350
+ if (r && (!r[1] || !n || this.rules.inline.punctuation.exec(n))) {
1351
+ let n = [...r[0]].length - 1, i, a, o = n, s = this.rules.inline.delRDelim;
1352
+ for (s.lastIndex = 0, t = t.slice(-1 * e.length + n); (r = s.exec(t)) !== null;) {
1353
+ if (i = r[1] || r[2] || r[3] || r[4] || r[5] || r[6], !i || (a = [...i].length, a !== n)) continue;
1354
+ if (r[3] || r[4]) {
1355
+ o += a;
1356
+ continue;
1357
+ }
1358
+ if (o -= a, o > 0) continue;
1359
+ a = Math.min(a, a + o);
1360
+ let t = [...r[0]][0].length, s = e.slice(0, n + r.index + t + a), c = s.slice(n, -n);
1361
+ return {
1362
+ type: "del",
1363
+ raw: s,
1364
+ text: c,
1365
+ tokens: this.lexer.inlineTokens(c)
1366
+ };
1367
+ }
1368
+ }
1369
+ }
1370
+ autolink(e) {
1371
+ let t = this.rules.inline.autolink.exec(e);
1372
+ if (t) {
1373
+ let e, n;
1374
+ return t[2] === "@" ? (e = t[1], n = "mailto:" + e) : (e = t[1], n = e), {
1375
+ type: "link",
1376
+ raw: t[0],
1377
+ text: e,
1378
+ href: n,
1379
+ autolink: !0,
1380
+ tokens: [{
1381
+ type: "text",
1382
+ raw: e,
1383
+ text: e
1384
+ }]
1385
+ };
1386
+ }
1387
+ }
1388
+ url(e) {
1389
+ let t;
1390
+ if (t = this.rules.inline.url.exec(e)) {
1391
+ let e, n;
1392
+ if (t[2] === "@") e = t[0], n = "mailto:" + e;
1393
+ else {
1394
+ let r;
1395
+ do
1396
+ r = t[0], t[0] = this.rules.inline._backpedal.exec(t[0])?.[0] ?? "";
1397
+ while (r !== t[0]);
1398
+ e = t[0], n = t[1] === "www." ? "http://" + t[0] : t[0];
1399
+ }
1400
+ return {
1401
+ type: "link",
1402
+ raw: t[0],
1403
+ text: e,
1404
+ href: n,
1405
+ autolink: !0,
1406
+ tokens: [{
1407
+ type: "text",
1408
+ raw: e,
1409
+ text: e
1410
+ }]
1411
+ };
1412
+ }
1413
+ }
1414
+ inlineText(e) {
1415
+ let t = this.rules.inline.text.exec(e);
1416
+ if (t) {
1417
+ let e = this.lexer.state.inRawBlock;
1418
+ return {
1419
+ type: "text",
1420
+ raw: t[0],
1421
+ text: e ? t[0] : ar(t[0]),
1422
+ escaped: e
1423
+ };
1424
+ }
1425
+ }
1426
+ }, H = class e {
1427
+ tokens;
1428
+ options;
1429
+ state;
1430
+ inlineQueue;
1431
+ tokenizer;
1432
+ constructor(e) {
1433
+ this.tokens = [], this.tokens.links = Object.create(null), this.options = e || I, this.options.tokenizer = this.options.tokenizer || new gr(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = {
1434
+ inLink: !1,
1435
+ inRawBlock: !1,
1436
+ linkEmitted: !1,
1437
+ top: !0
1438
+ };
1439
+ let t = {
1440
+ other: z,
1441
+ block: tr.normal,
1442
+ inline: nr.normal
1443
+ };
1444
+ this.options.pedantic ? (t.block = tr.pedantic, t.inline = nr.pedantic) : this.options.gfm && (t.block = tr.gfm, t.inline = this.options.breaks ? nr.breaks : nr.gfm), this.tokenizer.rules = t;
1445
+ }
1446
+ static get rules() {
1447
+ return {
1448
+ block: tr,
1449
+ inline: nr
1450
+ };
1451
+ }
1452
+ static lex(t, n) {
1453
+ return new e(n).lex(t);
1454
+ }
1455
+ static lexInline(t, n) {
1456
+ return new e(n).inlineTokens(t);
1457
+ }
1458
+ lex(e) {
1459
+ e = e.replace(z.carriageReturn, "\n"), this.blockTokens(e, this.tokens);
1460
+ for (let e = 0; e < this.inlineQueue.length; e++) {
1461
+ let t = this.inlineQueue[e];
1462
+ this.inlineTokens(t.src, t.tokens);
1463
+ }
1464
+ return this.inlineQueue = [], this.tokens;
1465
+ }
1466
+ blockTokens(e, t = [], n = !1) {
1467
+ this.tokenizer.lexer = this, this.options.pedantic && (e = e.replace(z.tabCharGlobal, " ").replace(z.spaceLine, ""));
1468
+ let r = 1 / 0;
1469
+ for (; e;) {
1470
+ if (e.length < r) r = e.length;
1471
+ else {
1472
+ this.infiniteLoopError(e.charCodeAt(0));
1473
+ break;
1474
+ }
1475
+ let i;
1476
+ if (this.options.extensions?.block?.some((n) => (i = n.call({ lexer: this }, e, t)) ? (e = e.substring(i.raw.length), t.push(i), !0) : !1)) continue;
1477
+ if (i = this.tokenizer.space(e)) {
1478
+ e = e.substring(i.raw.length);
1479
+ let n = t.at(-1);
1480
+ i.raw.length === 1 && n !== void 0 ? n.raw += "\n" : t.push(i);
1481
+ continue;
1482
+ }
1483
+ if (i = this.tokenizer.code(e)) {
1484
+ e = e.substring(i.raw.length);
1485
+ let n = t.at(-1);
1486
+ n?.type === "paragraph" || n?.type === "text" ? (n.raw += (n.raw.endsWith("\n") ? "" : "\n") + i.raw, n.text += "\n" + i.text, this.inlineQueue.at(-1).src = n.text) : t.push(i);
1487
+ continue;
1488
+ }
1489
+ if (i = this.tokenizer.fences(e)) {
1490
+ e = e.substring(i.raw.length), t.push(i);
1491
+ continue;
1492
+ }
1493
+ if (i = this.tokenizer.heading(e)) {
1494
+ e = e.substring(i.raw.length), t.push(i);
1495
+ continue;
1496
+ }
1497
+ if (i = this.tokenizer.hr(e)) {
1498
+ e = e.substring(i.raw.length), t.push(i);
1499
+ continue;
1500
+ }
1501
+ if (i = this.tokenizer.blockquote(e)) {
1502
+ e = e.substring(i.raw.length), t.push(i);
1503
+ continue;
1504
+ }
1505
+ if (i = this.tokenizer.list(e)) {
1506
+ e = e.substring(i.raw.length), t.push(i);
1507
+ continue;
1508
+ }
1509
+ if (i = this.tokenizer.html(e)) {
1510
+ e = e.substring(i.raw.length), t.push(i);
1511
+ continue;
1512
+ }
1513
+ if (i = this.tokenizer.def(e)) {
1514
+ e = e.substring(i.raw.length);
1515
+ let n = t.at(-1);
1516
+ n?.type === "paragraph" || n?.type === "text" ? (n.raw += (n.raw.endsWith("\n") ? "" : "\n") + i.raw, n.text += "\n" + i.raw, this.inlineQueue.at(-1).src = n.text) : this.tokens.links[i.tag] || (this.tokens.links[i.tag] = {
1517
+ href: i.href,
1518
+ title: i.title
1519
+ }, t.push(i));
1520
+ continue;
1521
+ }
1522
+ if (i = this.tokenizer.table(e)) {
1523
+ e = e.substring(i.raw.length), t.push(i);
1524
+ continue;
1525
+ }
1526
+ if (i = this.tokenizer.lheading(e)) {
1527
+ e = e.substring(i.raw.length), t.push(i);
1528
+ continue;
1529
+ }
1530
+ let a = e;
1531
+ if (this.options.extensions?.startBlock) {
1532
+ let t = 1 / 0, n = e.slice(1), r;
1533
+ this.options.extensions.startBlock.forEach((e) => {
1534
+ r = e.call({ lexer: this }, n), typeof r == "number" && r >= 0 && (t = Math.min(t, r));
1535
+ }), t < 1 / 0 && t >= 0 && (a = e.substring(0, t + 1));
1536
+ }
1537
+ if (this.state.top && (i = this.tokenizer.paragraph(a))) {
1538
+ let r = t.at(-1);
1539
+ n && r?.type === "paragraph" ? (r.raw += (r.raw.endsWith("\n") ? "" : "\n") + i.raw, r.text += "\n" + i.text, this.inlineQueue.pop(), this.inlineQueue.at(-1).src = r.text) : t.push(i), n = a.length !== e.length, e = e.substring(i.raw.length);
1540
+ continue;
1541
+ }
1542
+ if (i = this.tokenizer.text(e)) {
1543
+ e = e.substring(i.raw.length);
1544
+ let n = t.at(-1);
1545
+ n?.type === "text" ? (n.raw += (n.raw.endsWith("\n") ? "" : "\n") + i.raw, n.text += "\n" + i.text, this.inlineQueue.pop(), this.inlineQueue.at(-1).src = n.text) : t.push(i);
1546
+ continue;
1547
+ }
1548
+ if (e) {
1549
+ this.infiniteLoopError(e.charCodeAt(0));
1550
+ break;
1551
+ }
1552
+ }
1553
+ return this.state.top = !0, t;
1554
+ }
1555
+ inline(e, t = []) {
1556
+ return this.inlineQueue.push({
1557
+ src: e,
1558
+ tokens: t
1559
+ }), t;
1560
+ }
1561
+ linkInText(e) {
1562
+ if (!e.includes("[")) return !1;
1563
+ let t = this.tokenizer.rules.inline.link;
1564
+ for (let n of e.matchAll(this.tokenizer.rules.inline.blockSkip)) if (t.test(n[0]) && e.charAt(n.index - 1) !== "!") return !0;
1565
+ for (let t of e.matchAll(this.tokenizer.rules.inline.reflinkSearch)) {
1566
+ let e = t[0], n = e.lastIndexOf("[");
1567
+ if (e.charAt(0) !== "!" && Object.hasOwn(this.tokens.links, ur(e.slice(n + 1, -1))) && !(n > 1 && this.linkInText(e.slice(1, n - 1)))) return !0;
1568
+ }
1569
+ return !1;
1570
+ }
1571
+ inlineTokens(e, t = []) {
1572
+ this.tokenizer.lexer = this;
1573
+ let n = e;
1574
+ if (this.tokens.links && e.includes("[")) {
1575
+ let e = this.tokenizer.rules.inline.reflinkSearch, t = (n) => {
1576
+ let r = n.lastIndexOf("[");
1577
+ if (!Object.hasOwn(this.tokens.links, ur(n.slice(r + 1, -1)))) return n;
1578
+ if (r > 1 && n.charAt(0) !== "!") {
1579
+ let i = n.slice(1, r - 1);
1580
+ if (this.linkInText(i)) return "[" + i.replace(e, t) + "][" + "a".repeat(n.length - r - 2) + "]";
1581
+ }
1582
+ return "[" + "a".repeat(n.length - 2) + "]";
1583
+ };
1584
+ n = n.replace(e, t);
1585
+ }
1586
+ n = n.replace(this.tokenizer.rules.inline.anyPunctuation, (e) => "+".repeat(e.length)), n = n.replace(this.tokenizer.rules.inline.blockSkip, (e, t, n) => {
1587
+ let r = n ? n.length : 0;
1588
+ return e.slice(0, r) + "[" + "a".repeat(e.length - r - 2) + "]";
1589
+ }), n = this.options.hooks?.emStrongMask?.call({ lexer: this }, n) ?? n;
1590
+ let r = !1, i = "", a = 1 / 0;
1591
+ for (; e;) {
1592
+ if (e.length < a) a = e.length;
1593
+ else {
1594
+ this.infiniteLoopError(e.charCodeAt(0));
1595
+ break;
1596
+ }
1597
+ r || (i = ""), r = !1;
1598
+ let o;
1599
+ if (this.options.extensions?.inline?.some((n) => (o = n.call({ lexer: this }, e, t)) ? (e = e.substring(o.raw.length), t.push(o), !0) : !1)) continue;
1600
+ if (o = this.tokenizer.escape(e)) {
1601
+ e = e.substring(o.raw.length), t.push(o);
1602
+ continue;
1603
+ }
1604
+ if (o = this.tokenizer.tag(e)) {
1605
+ e = e.substring(o.raw.length), t.push(o);
1606
+ continue;
1607
+ }
1608
+ if (o = this.tokenizer.link(e)) {
1609
+ e = e.substring(o.raw.length), t.push(o);
1610
+ continue;
1611
+ }
1612
+ if (o = this.tokenizer.reflink(e, this.tokens.links)) {
1613
+ e = e.substring(o.raw.length);
1614
+ let n = t.at(-1);
1615
+ o.type === "text" && n?.type === "text" ? (n.raw += o.raw, n.text += o.text) : t.push(o);
1616
+ continue;
1617
+ }
1618
+ if (o = this.tokenizer.emStrong(e, n, i)) {
1619
+ e = e.substring(o.raw.length), t.push(o);
1620
+ continue;
1621
+ }
1622
+ if (o = this.tokenizer.codespan(e)) {
1623
+ e = e.substring(o.raw.length), t.push(o);
1624
+ continue;
1625
+ }
1626
+ if (o = this.tokenizer.br(e)) {
1627
+ e = e.substring(o.raw.length), t.push(o);
1628
+ continue;
1629
+ }
1630
+ if (o = this.tokenizer.del(e, n, i)) {
1631
+ e = e.substring(o.raw.length), t.push(o);
1632
+ continue;
1633
+ }
1634
+ if (o = this.tokenizer.autolink(e)) {
1635
+ e = e.substring(o.raw.length), t.push(o);
1636
+ continue;
1637
+ }
1638
+ if (!this.state.inLink && (o = this.tokenizer.url(e))) {
1639
+ e = e.substring(o.raw.length), t.push(o);
1640
+ continue;
1641
+ }
1642
+ let s = e;
1643
+ if (this.options.extensions?.startInline) {
1644
+ let t = 1 / 0, n = e.slice(1), r;
1645
+ this.options.extensions.startInline.forEach((e) => {
1646
+ r = e.call({ lexer: this }, n), typeof r == "number" && r >= 0 && (t = Math.min(t, r));
1647
+ }), t < 1 / 0 && t >= 0 && (s = e.substring(0, t + 1));
1648
+ }
1649
+ if (o = this.tokenizer.inlineText(s)) {
1650
+ e = e.substring(o.raw.length), o.raw.slice(-1) !== "_" && (i = o.raw.slice(-1)), r = !0;
1651
+ let n = t.at(-1);
1652
+ n?.type === "text" ? (n.raw += o.raw, n.text += o.text) : t.push(o);
1653
+ continue;
1654
+ }
1655
+ if (e) {
1656
+ this.infiniteLoopError(e.charCodeAt(0));
1657
+ break;
1658
+ }
1659
+ }
1660
+ return t;
1661
+ }
1662
+ infiniteLoopError(e) {
1663
+ let t = "Infinite loop on byte: " + e;
1664
+ if (this.options.silent) console.error(t);
1665
+ else throw Error(t);
1666
+ }
1667
+ }, _r = class {
1668
+ options;
1669
+ parser;
1670
+ constructor(e) {
1671
+ this.options = e || I;
1672
+ }
1673
+ space(e) {
1674
+ return "";
1675
+ }
1676
+ code({ text: e, lang: t, escaped: n }) {
1677
+ let r = (t || "").match(z.notSpaceStart)?.[0], i = e ? e.replace(z.endingNewline, "") + "\n" : "";
1678
+ return r ? "<pre><code class=\"language-" + V(r) + "\">" + (n ? i : V(i, !0)) + "</code></pre>\n" : "<pre><code>" + (n ? i : V(i, !0)) + "</code></pre>\n";
1679
+ }
1680
+ blockquote({ tokens: e }) {
1681
+ return `<blockquote>
1682
+ ${this.parser.parse(e)}</blockquote>
1683
+ `;
1684
+ }
1685
+ html({ text: e }) {
1686
+ return e;
1687
+ }
1688
+ def(e) {
1689
+ return "";
1690
+ }
1691
+ heading({ tokens: e, depth: t }) {
1692
+ return `<h${t}>${this.parser.parseInline(e)}</h${t}>
1693
+ `;
1694
+ }
1695
+ hr(e) {
1696
+ return "<hr>\n";
1697
+ }
1698
+ list(e) {
1699
+ let t = e.ordered, n = e.start, r = "";
1700
+ for (let t = 0; t < e.items.length; t++) {
1701
+ let n = e.items[t];
1702
+ r += this.listitem(n);
1703
+ }
1704
+ let i = t ? "ol" : "ul", a = t && n !== 1 ? " start=\"" + n + "\"" : "";
1705
+ return "<" + i + a + ">\n" + r + "</" + i + ">\n";
1706
+ }
1707
+ listitem(e) {
1708
+ return `<li>${this.parser.parse(e.tokens)}</li>
1709
+ `;
1710
+ }
1711
+ checkbox({ checked: e }) {
1712
+ return "<input " + (e ? "checked=\"\" " : "") + "disabled=\"\" type=\"checkbox\"> ";
1713
+ }
1714
+ paragraph({ tokens: e }) {
1715
+ return `<p>${this.parser.parseInline(e)}</p>
1716
+ `;
1717
+ }
1718
+ table(e) {
1719
+ let t = "", n = "";
1720
+ for (let t = 0; t < e.header.length; t++) n += this.tablecell(e.header[t]);
1721
+ t += this.tablerow({ text: n });
1722
+ let r = "";
1723
+ for (let t = 0; t < e.rows.length; t++) {
1724
+ let i = e.rows[t];
1725
+ n = "";
1726
+ for (let e = 0; e < i.length; e++) n += this.tablecell(i[e]);
1727
+ r += this.tablerow({ text: n });
1728
+ }
1729
+ return r &&= `<tbody>${r}</tbody>`, "<table>\n<thead>\n" + t + "</thead>\n" + r + "</table>\n";
1730
+ }
1731
+ tablerow({ text: e }) {
1732
+ return `<tr>
1733
+ ${e}</tr>
1734
+ `;
1735
+ }
1736
+ tablecell(e) {
1737
+ let t = this.parser.parseInline(e.tokens), n = e.header ? "th" : "td";
1738
+ return (e.align ? `<${n} align="${e.align}">` : `<${n}>`) + t + `</${n}>
1739
+ `;
1740
+ }
1741
+ strong({ tokens: e }) {
1742
+ return `<strong>${this.parser.parseInline(e)}</strong>`;
1743
+ }
1744
+ em({ tokens: e }) {
1745
+ return `<em>${this.parser.parseInline(e)}</em>`;
1746
+ }
1747
+ codespan({ text: e }) {
1748
+ return `<code>${V(e, !0)}</code>`;
1749
+ }
1750
+ br(e) {
1751
+ return "<br>";
1752
+ }
1753
+ del({ tokens: e }) {
1754
+ return `<del>${this.parser.parseInline(e)}</del>`;
1755
+ }
1756
+ link({ href: e, title: t, text: n, tokens: r, autolink: i }) {
1757
+ let a = i ? V(n, !0) : this.parser.parseInline(r), o = or(e);
1758
+ if (o === null) return a;
1759
+ e = V(o, i);
1760
+ let s = "<a href=\"" + e + "\"";
1761
+ return t && (s += " title=\"" + V(t) + "\""), s += ">" + a + "</a>", s;
1762
+ }
1763
+ image({ href: e, title: t, text: n, tokens: r }) {
1764
+ r && (n = this.parser.parseInline(r, this.parser.textRenderer));
1765
+ let i = or(e);
1766
+ if (i === null) return V(n);
1767
+ e = i;
1768
+ let a = `<img src="${V(e)}" alt="${V(n)}"`;
1769
+ return t && (a += ` title="${V(t)}"`), a += ">", a;
1770
+ }
1771
+ text(e) {
1772
+ return "tokens" in e && e.tokens ? this.parser.parseInline(e.tokens) : "escaped" in e && e.escaped ? e.text : V(e.text);
1773
+ }
1774
+ }, vr = class {
1775
+ strong({ text: e }) {
1776
+ return e;
1777
+ }
1778
+ em({ text: e }) {
1779
+ return e;
1780
+ }
1781
+ codespan({ text: e }) {
1782
+ return e;
1783
+ }
1784
+ del({ text: e }) {
1785
+ return e;
1786
+ }
1787
+ html({ text: e }) {
1788
+ return e;
1789
+ }
1790
+ text({ text: e }) {
1791
+ return e;
1792
+ }
1793
+ link({ text: e }) {
1794
+ return "" + e;
1795
+ }
1796
+ image({ text: e }) {
1797
+ return "" + e;
1798
+ }
1799
+ br() {
1800
+ return "";
1801
+ }
1802
+ checkbox({ raw: e }) {
1803
+ return e;
1804
+ }
1805
+ }, U = class e {
1806
+ options;
1807
+ renderer;
1808
+ textRenderer;
1809
+ constructor(e) {
1810
+ this.options = e || I, this.options.renderer = this.options.renderer || new _r(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new vr();
1811
+ }
1812
+ static parse(t, n) {
1813
+ return new e(n).parse(t);
1814
+ }
1815
+ static parseInline(t, n) {
1816
+ return new e(n).parseInline(t);
1817
+ }
1818
+ parse(e) {
1819
+ this.renderer.parser = this;
1820
+ let t = "";
1821
+ for (let n = 0; n < e.length; n++) {
1822
+ let r = e[n];
1823
+ if (this.options.extensions?.renderers?.[r.type]) {
1824
+ let e = r, n = this.options.extensions.renderers[e.type].call({ parser: this }, e);
1825
+ if (n !== !1 || ![
1826
+ "space",
1827
+ "hr",
1828
+ "heading",
1829
+ "code",
1830
+ "table",
1831
+ "blockquote",
1832
+ "list",
1833
+ "checkbox",
1834
+ "html",
1835
+ "def",
1836
+ "paragraph",
1837
+ "text"
1838
+ ].includes(e.type)) {
1839
+ t += n || "";
1840
+ continue;
1841
+ }
1842
+ }
1843
+ let i = r;
1844
+ switch (i.type) {
1845
+ case "space":
1846
+ t += this.renderer.space(i);
1847
+ break;
1848
+ case "hr":
1849
+ t += this.renderer.hr(i);
1850
+ break;
1851
+ case "heading":
1852
+ t += this.renderer.heading(i);
1853
+ break;
1854
+ case "code":
1855
+ t += this.renderer.code(i);
1856
+ break;
1857
+ case "table":
1858
+ t += this.renderer.table(i);
1859
+ break;
1860
+ case "blockquote":
1861
+ t += this.renderer.blockquote(i);
1862
+ break;
1863
+ case "list":
1864
+ t += this.renderer.list(i);
1865
+ break;
1866
+ case "checkbox":
1867
+ t += this.renderer.checkbox(i);
1868
+ break;
1869
+ case "html":
1870
+ t += this.renderer.html(i);
1871
+ break;
1872
+ case "def":
1873
+ t += this.renderer.def(i);
1874
+ break;
1875
+ case "paragraph":
1876
+ t += this.renderer.paragraph(i);
1877
+ break;
1878
+ case "text":
1879
+ t += this.renderer.text(i);
1880
+ break;
1881
+ default: {
1882
+ let e = "Token with \"" + i.type + "\" type was not found.";
1883
+ if (this.options.silent) return console.error(e), "";
1884
+ throw Error(e);
1885
+ }
1886
+ }
1887
+ }
1888
+ return t;
1889
+ }
1890
+ parseInline(e, t = this.renderer) {
1891
+ this.renderer.parser = this;
1892
+ let n = "";
1893
+ for (let r = 0; r < e.length; r++) {
1894
+ let i = e[r];
1895
+ if (this.options.extensions?.renderers?.[i.type]) {
1896
+ let e = this.options.extensions.renderers[i.type].call({ parser: this }, i);
1897
+ if (e !== !1 || ![
1898
+ "escape",
1899
+ "html",
1900
+ "link",
1901
+ "image",
1902
+ "checkbox",
1903
+ "strong",
1904
+ "em",
1905
+ "codespan",
1906
+ "br",
1907
+ "del",
1908
+ "text"
1909
+ ].includes(i.type)) {
1910
+ n += e || "";
1911
+ continue;
1912
+ }
1913
+ }
1914
+ let a = i;
1915
+ switch (a.type) {
1916
+ case "escape":
1917
+ n += t.text(a);
1918
+ break;
1919
+ case "html":
1920
+ n += t.html(a);
1921
+ break;
1922
+ case "link":
1923
+ n += t.link(a);
1924
+ break;
1925
+ case "image":
1926
+ n += t.image(a);
1927
+ break;
1928
+ case "checkbox":
1929
+ n += t.checkbox(a);
1930
+ break;
1931
+ case "strong":
1932
+ n += t.strong(a);
1933
+ break;
1934
+ case "em":
1935
+ n += t.em(a);
1936
+ break;
1937
+ case "codespan":
1938
+ n += t.codespan(a);
1939
+ break;
1940
+ case "br":
1941
+ n += t.br(a);
1942
+ break;
1943
+ case "del":
1944
+ n += t.del(a);
1945
+ break;
1946
+ case "text":
1947
+ n += t.text(a);
1948
+ break;
1949
+ default: {
1950
+ let e = "Token with \"" + a.type + "\" type was not found.";
1951
+ if (this.options.silent) return console.error(e), "";
1952
+ throw Error(e);
1953
+ }
1954
+ }
1955
+ }
1956
+ return n;
1957
+ }
1958
+ }, yr = class {
1959
+ options;
1960
+ block;
1961
+ constructor(e) {
1962
+ this.options = e || I;
1963
+ }
1964
+ static passThroughHooks = /* @__PURE__ */ new Set([
1965
+ "preprocess",
1966
+ "postprocess",
1967
+ "processAllTokens",
1968
+ "emStrongMask"
1969
+ ]);
1970
+ static passThroughHooksRespectAsync = /* @__PURE__ */ new Set([
1971
+ "preprocess",
1972
+ "postprocess",
1973
+ "processAllTokens"
1974
+ ]);
1975
+ preprocess(e) {
1976
+ return e;
1977
+ }
1978
+ postprocess(e) {
1979
+ return e;
1980
+ }
1981
+ processAllTokens(e) {
1982
+ return e;
1983
+ }
1984
+ emStrongMask(e) {
1985
+ return e;
1986
+ }
1987
+ provideLexer(e = this.block) {
1988
+ return e ? H.lex : H.lexInline;
1989
+ }
1990
+ provideParser(e = this.block) {
1991
+ return e ? U.parse : U.parseInline;
1992
+ }
1993
+ }, br = new class {
1994
+ defaults = Rt();
1995
+ options = this.setOptions;
1996
+ parse = this.parseMarkdown(!0);
1997
+ parseInline = this.parseMarkdown(!1);
1998
+ Parser = U;
1999
+ Renderer = _r;
2000
+ TextRenderer = vr;
2001
+ Lexer = H;
2002
+ Tokenizer = gr;
2003
+ Hooks = yr;
2004
+ constructor(...e) {
2005
+ this.use(...e);
2006
+ }
2007
+ walkTokens(e, t) {
2008
+ let n = [];
2009
+ for (let r of e) switch (n = n.concat(t.call(this, r)), r.type) {
2010
+ case "table": {
2011
+ let e = r;
2012
+ for (let r of e.header) n = n.concat(this.walkTokens(r.tokens, t));
2013
+ for (let r of e.rows) for (let e of r) n = n.concat(this.walkTokens(e.tokens, t));
2014
+ break;
2015
+ }
2016
+ case "list": {
2017
+ let e = r;
2018
+ n = n.concat(this.walkTokens(e.items, t));
2019
+ break;
2020
+ }
2021
+ default: {
2022
+ let e = r;
2023
+ this.defaults.extensions?.childTokens?.[e.type] ? this.defaults.extensions.childTokens[e.type].forEach((r) => {
2024
+ let i = e[r].flat(1 / 0);
2025
+ n = n.concat(this.walkTokens(i, t));
2026
+ }) : e.tokens && (n = n.concat(this.walkTokens(e.tokens, t)));
2027
+ }
2028
+ }
2029
+ return n;
2030
+ }
2031
+ use(...e) {
2032
+ let t = this.defaults.extensions || {
2033
+ renderers: {},
2034
+ childTokens: {}
2035
+ };
2036
+ return e.forEach((e) => {
2037
+ let n = { ...e };
2038
+ if (n.async = this.defaults.async || n.async || !1, e.extensions && (e.extensions.forEach((e) => {
2039
+ if (!e.name) throw Error("extension name required");
2040
+ if ("renderer" in e) {
2041
+ let n = t.renderers[e.name];
2042
+ n ? t.renderers[e.name] = function(...t) {
2043
+ let r = e.renderer.apply(this, t);
2044
+ return r === !1 && (r = n.apply(this, t)), r;
2045
+ } : t.renderers[e.name] = e.renderer;
2046
+ }
2047
+ if ("tokenizer" in e) {
2048
+ if (!e.level || e.level !== "block" && e.level !== "inline") throw Error("extension level must be 'block' or 'inline'");
2049
+ let n = t[e.level];
2050
+ n ? n.unshift(e.tokenizer) : t[e.level] = [e.tokenizer], e.start && (e.level === "block" ? t.startBlock ? t.startBlock.push(e.start) : t.startBlock = [e.start] : e.level === "inline" && (t.startInline ? t.startInline.push(e.start) : t.startInline = [e.start]));
2051
+ }
2052
+ "childTokens" in e && e.childTokens && (t.childTokens[e.name] = e.childTokens);
2053
+ }), n.extensions = t), e.renderer) {
2054
+ let t = this.defaults.renderer || new _r(this.defaults);
2055
+ for (let n in e.renderer) {
2056
+ if (!(n in t)) throw Error(`renderer '${n}' does not exist`);
2057
+ if (["options", "parser"].includes(n)) continue;
2058
+ let r = n, i = e.renderer[r], a = t[r];
2059
+ t[r] = (...e) => {
2060
+ let n = i.apply(t, e);
2061
+ return n === !1 && (n = a.apply(t, e)), n || "";
2062
+ };
2063
+ }
2064
+ n.renderer = t;
2065
+ }
2066
+ if (e.tokenizer) {
2067
+ let t = this.defaults.tokenizer || new gr(this.defaults);
2068
+ for (let n in e.tokenizer) {
2069
+ if (!(n in t)) throw Error(`tokenizer '${n}' does not exist`);
2070
+ if ([
2071
+ "options",
2072
+ "rules",
2073
+ "lexer"
2074
+ ].includes(n)) continue;
2075
+ let r = n, i = e.tokenizer[r], a = t[r];
2076
+ t[r] = (...e) => {
2077
+ let n = i.apply(t, e);
2078
+ return n === !1 && (n = a.apply(t, e)), n;
2079
+ };
2080
+ }
2081
+ n.tokenizer = t;
2082
+ }
2083
+ if (e.hooks) {
2084
+ let t = this.defaults.hooks || new yr();
2085
+ for (let n in e.hooks) {
2086
+ if (!(n in t)) throw Error(`hook '${n}' does not exist`);
2087
+ if (["options", "block"].includes(n)) continue;
2088
+ let r = n, i = e.hooks[r], a = t[r];
2089
+ t[r] = yr.passThroughHooks.has(n) ? (e) => {
2090
+ if (this.defaults.async && yr.passThroughHooksRespectAsync.has(n)) return (async () => {
2091
+ let n = await i.call(t, e);
2092
+ return a.call(t, n);
2093
+ })();
2094
+ let r = i.call(t, e);
2095
+ return a.call(t, r);
2096
+ } : (...e) => {
2097
+ if (this.defaults.async) return (async () => {
2098
+ let n = await i.apply(t, e);
2099
+ return n === !1 && (n = await a.apply(t, e)), n;
2100
+ })();
2101
+ let n = i.apply(t, e);
2102
+ return n === !1 && (n = a.apply(t, e)), n;
2103
+ };
2104
+ }
2105
+ n.hooks = t;
2106
+ }
2107
+ if (e.walkTokens) {
2108
+ let t = this.defaults.walkTokens, r = e.walkTokens;
2109
+ n.walkTokens = function(e) {
2110
+ let n = [];
2111
+ return n.push(r.call(this, e)), t && (n = n.concat(t.call(this, e))), n;
2112
+ };
2113
+ }
2114
+ this.defaults = {
2115
+ ...this.defaults,
2116
+ ...n
2117
+ };
2118
+ }), this;
2119
+ }
2120
+ setOptions(e) {
2121
+ return this.defaults = {
2122
+ ...this.defaults,
2123
+ ...e
2124
+ }, this;
2125
+ }
2126
+ lexer(e, t) {
2127
+ return H.lex(e, t ?? this.defaults);
2128
+ }
2129
+ parser(e, t) {
2130
+ return U.parse(e, t ?? this.defaults);
2131
+ }
2132
+ parseMarkdown(e) {
2133
+ return (t, n) => {
2134
+ let r = { ...n }, i = {
2135
+ ...this.defaults,
2136
+ ...r
2137
+ }, a = this.onError(!!i.silent, !!i.async);
2138
+ if (this.defaults.async === !0 && r.async === !1) return a(/* @__PURE__ */ Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));
2139
+ if (typeof t > "u" || t === null) return a(/* @__PURE__ */ Error("marked(): input parameter is undefined or null"));
2140
+ if (typeof t != "string") return a(/* @__PURE__ */ Error("marked(): input parameter is of type " + Object.prototype.toString.call(t) + ", string expected"));
2141
+ if (i.hooks && (i.hooks.options = i, i.hooks.block = e), i.async) return (async () => {
2142
+ let n = i.hooks ? await i.hooks.preprocess(t) : t, r = await (i.hooks ? await i.hooks.provideLexer(e) : e ? H.lex : H.lexInline)(n, i), a = i.hooks ? await i.hooks.processAllTokens(r) : r;
2143
+ i.walkTokens && await Promise.all(this.walkTokens(a, i.walkTokens));
2144
+ let o = await (i.hooks ? await i.hooks.provideParser(e) : e ? U.parse : U.parseInline)(a, i);
2145
+ return i.hooks ? await i.hooks.postprocess(o) : o;
2146
+ })().catch(a);
2147
+ try {
2148
+ i.hooks && (t = i.hooks.preprocess(t));
2149
+ let n = (i.hooks ? i.hooks.provideLexer(e) : e ? H.lex : H.lexInline)(t, i);
2150
+ i.hooks && (n = i.hooks.processAllTokens(n)), i.walkTokens && this.walkTokens(n, i.walkTokens);
2151
+ let r = (i.hooks ? i.hooks.provideParser(e) : e ? U.parse : U.parseInline)(n, i);
2152
+ return i.hooks && (r = i.hooks.postprocess(r)), r;
2153
+ } catch (e) {
2154
+ return a(e);
2155
+ }
2156
+ };
2157
+ }
2158
+ onError(e, t) {
2159
+ return (n) => {
2160
+ if (n.message += "\nPlease report this to https://github.com/markedjs/marked.", e) {
2161
+ let e = "<p>An error occurred:</p><pre>" + V(n.message + "", !0) + "</pre>";
2162
+ return t ? Promise.resolve(e) : e;
2163
+ }
2164
+ if (t) return Promise.reject(n);
2165
+ throw n;
2166
+ };
2167
+ }
2168
+ }();
2169
+ function W(e, t) {
2170
+ return br.parse(e, t);
2171
+ }
2172
+ W.options = W.setOptions = function(e) {
2173
+ return br.setOptions(e), W.defaults = br.defaults, zt(W.defaults), W;
2174
+ }, W.getDefaults = Rt, W.defaults = I;
2175
+ function xr(...e) {
2176
+ return br.use(...e), W.defaults = br.defaults, zt(W.defaults), W;
2177
+ }
2178
+ W.use = xr, W.walkTokens = function(e, t) {
2179
+ return br.walkTokens(e, t);
2180
+ }, W.parseInline = br.parseInline, W.Parser = U, W.parser = U.parse, W.Renderer = _r, W.TextRenderer = vr, W.Lexer = H, W.lexer = H.lex, W.Tokenizer = gr, W.Hooks = yr, W.parse = W, W.options, W.setOptions, W.walkTokens, W.parseInline, U.parse, H.lex;
2181
+ //#endregion
2182
+ //#region ../../node_modules/.pnpm/dompurify@3.4.15/node_modules/dompurify/dist/purify.es.mjs
2183
+ function Sr(e, t) {
2184
+ (t == null || t > e.length) && (t = e.length);
2185
+ for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
2186
+ return r;
2187
+ }
2188
+ function Cr(e) {
2189
+ if (Array.isArray(e)) return e;
2190
+ }
2191
+ function wr(e, t) {
2192
+ var n = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
2193
+ if (n != null) {
2194
+ var r, i, a, o, s = [], c = !0, l = !1;
2195
+ try {
2196
+ if (a = (n = n.call(e)).next, t !== 0) for (; !(c = (r = a.call(n)).done) && (s.push(r.value), s.length !== t); c = !0);
2197
+ } catch (e) {
2198
+ l = !0, i = e;
2199
+ } finally {
2200
+ try {
2201
+ if (!c && n.return != null && (o = n.return(), Object(o) !== o)) return;
2202
+ } finally {
2203
+ if (l) throw i;
2204
+ }
2205
+ }
2206
+ return s;
2207
+ }
2208
+ }
2209
+ function Tr() {
2210
+ throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2211
+ }
2212
+ function Er(e, t) {
2213
+ return Cr(e) || wr(e, t) || Dr(e, t) || Tr();
2214
+ }
2215
+ function Dr(e, t) {
2216
+ if (e) {
2217
+ if (typeof e == "string") return Sr(e, t);
2218
+ var n = {}.toString.call(e).slice(8, -1);
2219
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? Sr(e, t) : void 0;
2220
+ }
2221
+ }
2222
+ var Or = Object.entries, kr = Object.setPrototypeOf, Ar = Object.isFrozen, jr = Object.getPrototypeOf, Mr = Object.getOwnPropertyDescriptor, G = Object.freeze, K = Object.seal, Nr = Object.create, Pr = typeof Reflect < "u" && Reflect, Fr = Pr.apply, Ir = Pr.construct;
2223
+ G ||= function(e) {
2224
+ return e;
2225
+ }, K ||= function(e) {
2226
+ return e;
2227
+ }, Fr ||= function(e, t) {
2228
+ var n = [...arguments].slice(2);
2229
+ return e.apply(t, n);
2230
+ }, Ir ||= function(e) {
2231
+ return new e(...[...arguments].slice(1));
2232
+ };
2233
+ var Lr = Y(Array.prototype.forEach), Rr = Y(Array.prototype.lastIndexOf), zr = Y(Array.prototype.pop), Br = Y(Array.prototype.push), Vr = Y(Array.prototype.splice), Hr = Array.isArray, Ur = Y(String.prototype.toLowerCase), Wr = Y(String.prototype.toString), Gr = Y(String.prototype.match), Kr = Y(String.prototype.replace), qr = Y(String.prototype.indexOf), Jr = Y(String.prototype.trim), Yr = Y(Number.prototype.toString), Xr = Y(Boolean.prototype.toString), Zr = typeof BigInt > "u" ? null : Y(BigInt.prototype.toString), Qr = typeof Symbol > "u" ? null : Y(Symbol.prototype.toString), q = Y(Object.prototype.hasOwnProperty), $r = Y(Object.prototype.toString), J = Y(RegExp.prototype.test), ei = ti(TypeError);
2234
+ function Y(e) {
2235
+ return function(t) {
2236
+ t instanceof RegExp && (t.lastIndex = 0);
2237
+ var n = [...arguments].slice(1);
2238
+ return Fr(e, t, n);
2239
+ };
2240
+ }
2241
+ function ti(e) {
2242
+ return function() {
2243
+ return Ir(e, [...arguments]);
2244
+ };
2245
+ }
2246
+ function X(e, t) {
2247
+ let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : Ur;
2248
+ if (kr && kr(e, null), !Hr(t)) return e;
2249
+ let r = t.length;
2250
+ for (; r--;) {
2251
+ let i = t[r];
2252
+ if (typeof i == "string") {
2253
+ let e = n(i);
2254
+ e !== i && (Ar(t) || (t[r] = e), i = e);
2255
+ }
2256
+ e[i] = !0;
2257
+ }
2258
+ return e;
2259
+ }
2260
+ function ni(e) {
2261
+ for (let t = 0; t < e.length; t++) q(e, t) || (e[t] = null);
2262
+ return e;
2263
+ }
2264
+ function Z(e) {
2265
+ let t = Nr(null);
2266
+ for (let r of Or(e)) {
2267
+ var n = Er(r, 2);
2268
+ let i = n[0], a = n[1];
2269
+ q(e, i) && (t[i] = Hr(a) ? ni(a) : a && typeof a == "object" && a.constructor === Object ? Z(a) : a);
2270
+ }
2271
+ return t;
2272
+ }
2273
+ function ri(e) {
2274
+ switch (typeof e) {
2275
+ case "string": return e;
2276
+ case "number": return Yr(e);
2277
+ case "boolean": return Xr(e);
2278
+ case "bigint": return Zr ? Zr(e) : "0";
2279
+ case "symbol": return Qr ? Qr(e) : "Symbol()";
2280
+ case "undefined": return $r(e);
2281
+ case "function":
2282
+ case "object": {
2283
+ if (e === null) return $r(e);
2284
+ let t = e, n = Q(t, "toString");
2285
+ if (typeof n == "function") {
2286
+ let e = n(t);
2287
+ return typeof e == "string" ? e : $r(e);
2288
+ }
2289
+ return $r(e);
2290
+ }
2291
+ default: return $r(e);
2292
+ }
2293
+ }
2294
+ function Q(e, t) {
2295
+ for (; e !== null;) {
2296
+ let n = Mr(e, t);
2297
+ if (n) {
2298
+ if (n.get) return Y(n.get);
2299
+ if (typeof n.value == "function") return Y(n.value);
2300
+ }
2301
+ e = jr(e);
2302
+ }
2303
+ function n() {
2304
+ return null;
2305
+ }
2306
+ return n;
2307
+ }
2308
+ function ii(e) {
2309
+ try {
2310
+ return J(e, ""), !0;
2311
+ } catch {
2312
+ return !1;
2313
+ }
2314
+ }
2315
+ var ai = G(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr".split(".")), oi = G(/* @__PURE__ */ "svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern".split(".")), si = G([
2316
+ "feBlend",
2317
+ "feColorMatrix",
2318
+ "feComponentTransfer",
2319
+ "feComposite",
2320
+ "feConvolveMatrix",
2321
+ "feDiffuseLighting",
2322
+ "feDisplacementMap",
2323
+ "feDistantLight",
2324
+ "feDropShadow",
2325
+ "feFlood",
2326
+ "feFuncA",
2327
+ "feFuncB",
2328
+ "feFuncG",
2329
+ "feFuncR",
2330
+ "feGaussianBlur",
2331
+ "feImage",
2332
+ "feMerge",
2333
+ "feMergeNode",
2334
+ "feMorphology",
2335
+ "feOffset",
2336
+ "fePointLight",
2337
+ "feSpecularLighting",
2338
+ "feSpotLight",
2339
+ "feTile",
2340
+ "feTurbulence"
2341
+ ]), ci = G([
2342
+ "animate",
2343
+ "color-profile",
2344
+ "cursor",
2345
+ "discard",
2346
+ "font-face",
2347
+ "font-face-format",
2348
+ "font-face-name",
2349
+ "font-face-src",
2350
+ "font-face-uri",
2351
+ "foreignobject",
2352
+ "hatch",
2353
+ "hatchpath",
2354
+ "mesh",
2355
+ "meshgradient",
2356
+ "meshpatch",
2357
+ "meshrow",
2358
+ "missing-glyph",
2359
+ "script",
2360
+ "set",
2361
+ "solidcolor",
2362
+ "unknown",
2363
+ "use"
2364
+ ]), li = G(/* @__PURE__ */ "math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts".split(".")), ui = G([
2365
+ "maction",
2366
+ "maligngroup",
2367
+ "malignmark",
2368
+ "mlongdiv",
2369
+ "mscarries",
2370
+ "mscarry",
2371
+ "msgroup",
2372
+ "mstack",
2373
+ "msline",
2374
+ "msrow",
2375
+ "semantics",
2376
+ "annotation",
2377
+ "annotation-xml",
2378
+ "mprescripts",
2379
+ "none"
2380
+ ]), di = G(["#text"]), fi = G(/* @__PURE__ */ "accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.command.commandfor.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns".split(".")), pi = G(/* @__PURE__ */ "accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dominant-baseline.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.pointer-events.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-orientation.text-rendering.textlength.type.u1.u2.unicode.values.vector-effect.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan".split(".")), mi = G(/* @__PURE__ */ "accent.accentunder.align.bevelled.close.columnalign.columnlines.columnspacing.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lquote.lspace.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns".split(".")), hi = G([
2381
+ "xlink:href",
2382
+ "xml:id",
2383
+ "xlink:title",
2384
+ "xml:space",
2385
+ "xmlns:xlink"
2386
+ ]), gi = K(/{{[\w\W]*|^[\w\W]*}}/g), _i = K(/<%[\w\W]*|^[\w\W]*%>/g), vi = K(/\${[\w\W]*/g), yi = K(/^data-[\-\w.\u00B7-\uFFFF]+$/), bi = K(/^aria-[\-\w]+$/), xi = K(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i), Si = K(/^(?:\w+script|data):/i), Ci = K(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g), wi = K(/^html$/i), Ti = K(/^[a-z][.\w]*(-[.\w]+)+$/i), Ei = K(/<[/\w!]/g), Di = K(/<[/\w]/g), Oi = K(/<\/no(script|embed|frames)/i), ki = K(/\/>/i), $ = {
2387
+ element: 1,
2388
+ attribute: 2,
2389
+ text: 3,
2390
+ cdataSection: 4,
2391
+ entityReference: 5,
2392
+ entityNode: 6,
2393
+ processingInstruction: 7,
2394
+ comment: 8,
2395
+ document: 9,
2396
+ documentType: 10,
2397
+ documentFragment: 11,
2398
+ notation: 12
2399
+ }, Ai = [
2400
+ "style",
2401
+ "script",
2402
+ "xmp",
2403
+ "iframe",
2404
+ "noembed",
2405
+ "noframes",
2406
+ "plaintext",
2407
+ "noscript"
2408
+ ], ji = G(X({}, Ai)), Mi = function() {
2409
+ let e = {};
2410
+ return Lr(Ai, (t) => {
2411
+ e[t] = K(RegExp("</" + t + "(?=[\\t\\n\\f\\r />])", "i"));
2412
+ }), G(e);
2413
+ }(), Ni = function() {
2414
+ return typeof window > "u" ? null : window;
2415
+ }, Pi = function(e, t) {
2416
+ if (typeof e != "object" || typeof e.createPolicy != "function") return null;
2417
+ let n = null, r = "data-tt-policy-suffix";
2418
+ t && t.hasAttribute(r) && (n = t.getAttribute(r));
2419
+ let i = "dompurify" + (n ? "#" + n : "");
2420
+ try {
2421
+ return e.createPolicy(i, {
2422
+ createHTML(e) {
2423
+ return e;
2424
+ },
2425
+ createScriptURL(e) {
2426
+ return e;
2427
+ }
2428
+ });
2429
+ } catch {
2430
+ return console.warn("TrustedTypes policy " + i + " could not be created."), null;
2431
+ }
2432
+ }, Fi = function() {
2433
+ return {
2434
+ afterSanitizeAttributes: [],
2435
+ afterSanitizeElements: [],
2436
+ afterSanitizeShadowDOM: [],
2437
+ beforeSanitizeAttributes: [],
2438
+ beforeSanitizeElements: [],
2439
+ beforeSanitizeShadowDOM: [],
2440
+ uponSanitizeAttribute: [],
2441
+ uponSanitizeElement: [],
2442
+ uponSanitizeShadowNode: []
2443
+ };
2444
+ }, Ii = function(e, t, n, r) {
2445
+ return q(e, t) && Hr(e[t]) ? X(r.base ? Z(r.base) : {}, e[t], r.transform) : n;
2446
+ }, Li = function(e, t, n) {
2447
+ let r = q(e, t) ? e[t] : void 0;
2448
+ return r && typeof r == "object" ? Z(r) : n();
2449
+ };
2450
+ function Ri() {
2451
+ let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : Ni(), t = (e) => Ri(e);
2452
+ if (t.version = "3.4.15", t.removed = [], !e || !e.document || e.document.nodeType !== $.document || !e.Element) return t.isSupported = !1, t;
2453
+ let n = e.document, r = n, i = r.currentScript;
2454
+ e.DocumentFragment;
2455
+ let a = e.HTMLTemplateElement, o = e.Node, s = e.Element, c = e.NodeFilter;
2456
+ e.NamedNodeMap === void 0 && (e.NamedNodeMap || e.MozNamedAttrMap), e.HTMLFormElement;
2457
+ let l = e.DOMParser, u = e.trustedTypes, d = s.prototype, f = Q(d, "cloneNode"), p = Q(d, "remove"), ee = Q(d, "removeAttributeNode"), te = Q(d, "nextSibling"), ne = Q(d, "childNodes"), m = Q(d, "parentNode"), re = Q(d, "shadowRoot"), ie = Q(d, "attributes"), h = o && o.prototype ? Q(o.prototype, "nodeType") : null, ae = o && o.prototype ? Q(o.prototype, "nodeName") : null, oe = o && o.prototype ? Q(o.prototype, "ownerDocument") : null, se = function(e) {
2458
+ return h ? h(e) : e.nodeType;
2459
+ }, ce = function(e) {
2460
+ return ae ? ae(e) : e.nodeName;
2461
+ };
2462
+ if (typeof a == "function") {
2463
+ let e = n.createElement("template");
2464
+ e.content && e.content.ownerDocument && (n = e.content.ownerDocument);
2465
+ }
2466
+ let g, _ = "", le, ue = !1, de = 0, fe = function() {
2467
+ if (de > 0) throw ei("A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the \"DOMPurify and Trusted Types\" section of the README.");
2468
+ }, pe = function(e) {
2469
+ fe(), de++;
2470
+ try {
2471
+ return g.createHTML(e);
2472
+ } finally {
2473
+ de--;
2474
+ }
2475
+ }, me = function(e) {
2476
+ fe(), de++;
2477
+ try {
2478
+ return g.createScriptURL(e);
2479
+ } finally {
2480
+ de--;
2481
+ }
2482
+ }, v = function() {
2483
+ return ue ||= (le = Pi(u, i), !0), le;
2484
+ }, he = n, ge = he.implementation, _e = he.createNodeIterator, ve = he.createDocumentFragment, ye = he.getElementsByTagName, be = r.importNode, y = Fi();
2485
+ t.isSupported = typeof Or == "function" && typeof m == "function" && ge && ge.createHTMLDocument !== void 0;
2486
+ let xe = gi, Se = _i, b = vi, Ce = yi, we = bi, x = Si, Te = Ci, Ee = Ti, De = xi, S = null, Oe = X({}, [
2487
+ ...ai,
2488
+ ...oi,
2489
+ ...si,
2490
+ ...li,
2491
+ ...di
2492
+ ]), C = null, ke = X({}, [
2493
+ ...fi,
2494
+ ...pi,
2495
+ ...mi,
2496
+ ...hi
2497
+ ]), w = Object.seal(Nr(null, {
2498
+ tagNameCheck: {
2499
+ writable: !0,
2500
+ configurable: !1,
2501
+ enumerable: !0,
2502
+ value: null
2503
+ },
2504
+ attributeNameCheck: {
2505
+ writable: !0,
2506
+ configurable: !1,
2507
+ enumerable: !0,
2508
+ value: null
2509
+ },
2510
+ allowCustomizedBuiltInElements: {
2511
+ writable: !0,
2512
+ configurable: !1,
2513
+ enumerable: !0,
2514
+ value: !1
2515
+ }
2516
+ })), Ae = null, T = null, E = Object.seal(Nr(null, {
2517
+ tagCheck: {
2518
+ writable: !0,
2519
+ configurable: !1,
2520
+ enumerable: !0,
2521
+ value: null
2522
+ },
2523
+ attributeCheck: {
2524
+ writable: !0,
2525
+ configurable: !1,
2526
+ enumerable: !0,
2527
+ value: null
2528
+ }
2529
+ })), je = !0, Me = !0, Ne = !1, Pe = !0, D = !1, O = !0, k = !1, Fe = !1, Ie = null, Le = null, Re = !1, ze = !1, A = !1, Be = !1, Ve = !0, He = !1, Ue = "user-content-", We = !0, Ge = !1, j = {}, Ke = null, qe = X({}, /* @__PURE__ */ "annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp".split(".")), Je = null, Ye = X({}, [
2530
+ "audio",
2531
+ "video",
2532
+ "img",
2533
+ "source",
2534
+ "image",
2535
+ "track"
2536
+ ]), Xe = null, Ze = X({}, [
2537
+ "alt",
2538
+ "class",
2539
+ "for",
2540
+ "id",
2541
+ "label",
2542
+ "name",
2543
+ "pattern",
2544
+ "placeholder",
2545
+ "role",
2546
+ "summary",
2547
+ "title",
2548
+ "value",
2549
+ "style",
2550
+ "xmlns"
2551
+ ]), Qe = "http://www.w3.org/1998/Math/MathML", $e = "http://www.w3.org/2000/svg", M = "http://www.w3.org/1999/xhtml", et = M, tt = !1, nt = null, rt = X({}, [
2552
+ Qe,
2553
+ $e,
2554
+ M
2555
+ ], Wr), it = G([
2556
+ "mi",
2557
+ "mo",
2558
+ "mn",
2559
+ "ms",
2560
+ "mtext"
2561
+ ]), at = X({}, it), ot = G(["annotation-xml"]), st = X({}, ot), ct = X({}, [
2562
+ "title",
2563
+ "style",
2564
+ "font",
2565
+ "a",
2566
+ "script"
2567
+ ]), lt = null, ut = ["application/xhtml+xml", "text/html"], N = null, dt = null, ft = n.createElement("form"), pt = function(e) {
2568
+ return e instanceof RegExp || e instanceof Function;
2569
+ }, mt = function() {
2570
+ let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
2571
+ if (dt && dt === e) return;
2572
+ (!e || typeof e != "object") && (e = {}), e = Z(e), lt = ut.indexOf(e.PARSER_MEDIA_TYPE) === -1 ? "text/html" : e.PARSER_MEDIA_TYPE, N = lt === "application/xhtml+xml" ? Wr : Ur, S = Ii(e, "ALLOWED_TAGS", Oe, { transform: N }), C = Ii(e, "ALLOWED_ATTR", ke, { transform: N }), nt = Ii(e, "ALLOWED_NAMESPACES", rt, { transform: Wr }), Xe = Ii(e, "ADD_URI_SAFE_ATTR", Ze, {
2573
+ transform: N,
2574
+ base: Ze
2575
+ }), Je = Ii(e, "ADD_DATA_URI_TAGS", Ye, {
2576
+ transform: N,
2577
+ base: Ye
2578
+ }), Ke = Ii(e, "FORBID_CONTENTS", qe, { transform: N }), Ae = Ii(e, "FORBID_TAGS", Z({}), { transform: N }), T = Ii(e, "FORBID_ATTR", Z({}), { transform: N }), j = q(e, "USE_PROFILES") ? e.USE_PROFILES && typeof e.USE_PROFILES == "object" ? Z(e.USE_PROFILES) : e.USE_PROFILES : !1, je = e.ALLOW_ARIA_ATTR !== !1, Me = e.ALLOW_DATA_ATTR !== !1, Ne = e.ALLOW_UNKNOWN_PROTOCOLS || !1, Pe = e.ALLOW_SELF_CLOSE_IN_ATTR !== !1, D = e.SAFE_FOR_TEMPLATES || !1, O = e.SAFE_FOR_XML !== !1, k = e.WHOLE_DOCUMENT || !1, ze = e.RETURN_DOM || !1, A = e.RETURN_DOM_FRAGMENT || !1, Be = e.RETURN_TRUSTED_TYPE || !1, Re = e.FORCE_BODY || !1, Ve = e.SANITIZE_DOM !== !1, He = e.SANITIZE_NAMED_PROPS || !1, We = e.KEEP_CONTENT !== !1, Ge = e.IN_PLACE || !1, De = ii(e.ALLOWED_URI_REGEXP) ? e.ALLOWED_URI_REGEXP : xi, et = typeof e.NAMESPACE == "string" ? e.NAMESPACE : M, at = Li(e, "MATHML_TEXT_INTEGRATION_POINTS", () => X({}, it)), st = Li(e, "HTML_INTEGRATION_POINTS", () => X({}, ot));
2579
+ let t = Li(e, "CUSTOM_ELEMENT_HANDLING", () => Nr(null));
2580
+ if (w = Nr(null), q(t, "tagNameCheck") && pt(t.tagNameCheck) && (w.tagNameCheck = t.tagNameCheck), q(t, "attributeNameCheck") && pt(t.attributeNameCheck) && (w.attributeNameCheck = t.attributeNameCheck), q(t, "allowCustomizedBuiltInElements") && typeof t.allowCustomizedBuiltInElements == "boolean" && (w.allowCustomizedBuiltInElements = t.allowCustomizedBuiltInElements), K(w), D && (Me = !1), A && (ze = !0), j && (S = X({}, di), C = Nr(null), j.html === !0 && (X(S, ai), X(C, fi)), j.svg === !0 && (X(S, oi), X(C, pi), X(C, hi)), j.svgFilters === !0 && (X(S, si), X(C, pi), X(C, hi)), j.mathMl === !0 && (X(S, li), X(C, mi), X(C, hi))), E.tagCheck = null, E.attributeCheck = null, q(e, "ADD_TAGS") && (typeof e.ADD_TAGS == "function" ? E.tagCheck = e.ADD_TAGS : Hr(e.ADD_TAGS) && (S === Oe && (S = Z(S)), X(S, e.ADD_TAGS, N))), q(e, "ADD_ATTR") && (typeof e.ADD_ATTR == "function" ? E.attributeCheck = e.ADD_ATTR : Hr(e.ADD_ATTR) && (C === ke && (C = Z(C)), X(C, e.ADD_ATTR, N))), q(e, "ADD_FORBID_CONTENTS") && Hr(e.ADD_FORBID_CONTENTS) && (Ke === qe && (Ke = Z(Ke)), X(Ke, e.ADD_FORBID_CONTENTS, N)), We && (S["#text"] = !0), k && X(S, [
2581
+ "html",
2582
+ "head",
2583
+ "body"
2584
+ ]), S.table && (X(S, ["tbody"]), delete Ae.tbody), e.TRUSTED_TYPES_POLICY) {
2585
+ if (typeof e.TRUSTED_TYPES_POLICY.createHTML != "function") throw ei("TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.");
2586
+ if (typeof e.TRUSTED_TYPES_POLICY.createScriptURL != "function") throw ei("TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.");
2587
+ let t = g;
2588
+ g = e.TRUSTED_TYPES_POLICY;
2589
+ try {
2590
+ _ = pe("");
2591
+ } catch (e) {
2592
+ throw g = t, e;
2593
+ }
2594
+ } else e.TRUSTED_TYPES_POLICY === null ? (g = void 0, _ = "") : (g === void 0 && (g = v()), g && typeof _ == "string" && (_ = pe("")));
2595
+ G && G(e), dt = e;
2596
+ }, ht = X({}, [
2597
+ ...oi,
2598
+ ...si,
2599
+ ...ci
2600
+ ]), gt = X({}, [...li, ...ui]), _t = function(e, t, n) {
2601
+ return t.namespaceURI === M ? e === "svg" : t.namespaceURI === Qe ? e === "svg" && (n === "annotation-xml" || at[n]) : !!ht[e];
2602
+ }, vt = function(e, t, n) {
2603
+ return t.namespaceURI === M ? e === "math" : t.namespaceURI === $e ? e === "math" && st[n] : !!gt[e];
2604
+ }, yt = function(e, t, n) {
2605
+ return t.namespaceURI === $e && !st[n] || t.namespaceURI === Qe && !at[n] ? !1 : !gt[e] && (ct[e] || !ht[e]);
2606
+ }, bt = function(e) {
2607
+ let t = m(e);
2608
+ (!t || !t.tagName) && (t = {
2609
+ namespaceURI: et,
2610
+ tagName: "template"
2611
+ });
2612
+ let n = Ur(e.tagName), r = Ur(t.tagName);
2613
+ return nt[e.namespaceURI] ? e.namespaceURI === $e ? _t(n, t, r) : e.namespaceURI === Qe ? vt(n, t, r) : e.namespaceURI === M ? yt(n, t, r) : !!(lt === "application/xhtml+xml" && nt[e.namespaceURI]) : !1;
2614
+ }, xt = function(e) {
2615
+ Br(t.removed, { element: e });
2616
+ try {
2617
+ m(e).removeChild(e);
2618
+ } catch {
2619
+ if (p(e), !m(e)) throw ei("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place");
2620
+ }
2621
+ }, St = function(e, t, n) {
2622
+ try {
2623
+ ee(e, t);
2624
+ } catch {
2625
+ try {
2626
+ e.removeAttribute(n);
2627
+ } catch {}
2628
+ }
2629
+ }, Ct = function(e) {
2630
+ Et(e);
2631
+ let t = ne(e);
2632
+ if (t) {
2633
+ let e = [];
2634
+ Lr(t, (t) => {
2635
+ Br(e, t);
2636
+ }), Lr(e, (e) => {
2637
+ try {
2638
+ p(e);
2639
+ } catch {}
2640
+ });
2641
+ }
2642
+ let n = ie(e);
2643
+ if (n) for (let t = n.length - 1; t >= 0; --t) {
2644
+ let r = n[t], i = r && r.name;
2645
+ typeof i == "string" && St(e, r, i);
2646
+ }
2647
+ }, wt = function(e, n, r) {
2648
+ if (!r) try {
2649
+ r = n.getAttributeNode(e);
2650
+ } catch {
2651
+ r = null;
2652
+ }
2653
+ Br(t.removed, {
2654
+ attribute: r || null,
2655
+ from: n
2656
+ });
2657
+ try {
2658
+ r ? ee(n, r) : n.removeAttribute(e);
2659
+ } catch {
2660
+ try {
2661
+ n.removeAttribute(e);
2662
+ } catch {}
2663
+ }
2664
+ if (e === "is") {
2665
+ if (ze || A) try {
2666
+ xt(n);
2667
+ } catch {}
2668
+ else try {
2669
+ n.setAttribute(e, "");
2670
+ } catch {}
2671
+ }
2672
+ }, Tt = function(e) {
2673
+ let t = ie(e);
2674
+ if (t) for (let n = t.length - 1; n >= 0; --n) {
2675
+ let r = t[n], i = r && r.name;
2676
+ typeof i != "string" || C[N(i)] || St(e, r, i);
2677
+ }
2678
+ }, Et = function(e) {
2679
+ let t = [e];
2680
+ for (; t.length > 0;) {
2681
+ let e = t.pop();
2682
+ se(e) === $.element && Tt(e);
2683
+ let n = ne(e);
2684
+ if (n) for (let e = n.length - 1; e >= 0; --e) t.push(n[e]);
2685
+ }
2686
+ }, Dt = function(e, t) {
2687
+ return O ? e === "patchsrc" || e === "for" && t !== "label" && t !== "output" : !1;
2688
+ }, Ot = function(e) {
2689
+ if (!O) return;
2690
+ let t = [e];
2691
+ for (; t.length > 0;) {
2692
+ let e = t.pop(), n = se(e);
2693
+ if (n === $.processingInstruction || n === $.comment && J(Di, e.data)) {
2694
+ try {
2695
+ p(e);
2696
+ } catch {}
2697
+ continue;
2698
+ }
2699
+ if (n === $.element) {
2700
+ let t = e, n = N(ce(e));
2701
+ try {
2702
+ t.hasAttribute && t.hasAttribute("patchsrc") && t.removeAttribute("patchsrc"), t.hasAttribute && t.hasAttribute("for") && Dt("for", n) && t.removeAttribute("for");
2703
+ } catch {}
2704
+ }
2705
+ let r = ne(e);
2706
+ if (r) for (let e = r.length - 1; e >= 0; --e) t.push(r[e]);
2707
+ }
2708
+ }, kt = function(e) {
2709
+ let t = null, r = null;
2710
+ if (Re) e = "<remove></remove>" + e;
2711
+ else {
2712
+ let t = Gr(e, /^[\r\n\t ]+/);
2713
+ r = t && t[0];
2714
+ }
2715
+ lt === "application/xhtml+xml" && et === M && (e = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body>" + e + "</body></html>");
2716
+ let i = g ? pe(e) : e;
2717
+ if (et === M) try {
2718
+ t = new l().parseFromString(i, lt);
2719
+ } catch {}
2720
+ if (!t || !t.documentElement) {
2721
+ t = ge.createDocument(et, "template", null);
2722
+ try {
2723
+ t.documentElement.innerHTML = tt ? _ : i;
2724
+ } catch {}
2725
+ }
2726
+ let a = t.body || t.documentElement;
2727
+ return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null), et === M ? ye.call(t, k ? "html" : "body")[0] : k ? t.documentElement : a;
2728
+ }, At = function(e) {
2729
+ let t = oe ? oe(e) : e.ownerDocument;
2730
+ return _e.call(t || e, e, c.SHOW_ELEMENT | c.SHOW_COMMENT | c.SHOW_TEXT | c.SHOW_PROCESSING_INSTRUCTION | c.SHOW_CDATA_SECTION, null);
2731
+ }, jt = function(e) {
2732
+ return e = Kr(e, xe, " "), e = Kr(e, Se, " "), e = Kr(e, b, " "), e;
2733
+ }, Mt = function(e) {
2734
+ e.normalize();
2735
+ let t = oe ? oe(e) : e.ownerDocument, n = _e.call(t || e, e, c.SHOW_TEXT | c.SHOW_COMMENT | c.SHOW_CDATA_SECTION | c.SHOW_PROCESSING_INSTRUCTION, null), r = n.nextNode();
2736
+ for (; r;) r.data = jt(r.data), r = n.nextNode();
2737
+ let i = e.querySelectorAll?.call(e, "template");
2738
+ i && Lr(i, (e) => {
2739
+ P(e.content) && Mt(e.content);
2740
+ });
2741
+ }, Nt = function(e) {
2742
+ let t = ae ? ae(e) : null;
2743
+ return typeof t != "string" || N(t) !== "form" ? !1 : typeof e.nodeName != "string" || typeof e.textContent != "string" || typeof e.removeChild != "function" || e.attributes !== ie(e) || typeof e.removeAttribute != "function" || typeof e.removeAttributeNode != "function" || typeof e.getAttributeNode != "function" || typeof e.setAttribute != "function" || typeof e.namespaceURI != "string" || typeof e.insertBefore != "function" || typeof e.hasChildNodes != "function" || e.nodeType !== h(e) || e.childNodes !== ne(e);
2744
+ }, P = function(e) {
2745
+ if (!h || typeof e != "object" || !e) return !1;
2746
+ try {
2747
+ return h(e) === $.documentFragment;
2748
+ } catch {
2749
+ return !1;
2750
+ }
2751
+ }, Pt = function(e) {
2752
+ if (!h || typeof e != "object" || !e) return !1;
2753
+ try {
2754
+ return typeof h(e) == "number";
2755
+ } catch {
2756
+ return !1;
2757
+ }
2758
+ };
2759
+ function F(e, n, r) {
2760
+ e.length !== 0 && Lr(e, (e) => {
2761
+ e.call(t, n, r, dt);
2762
+ });
2763
+ }
2764
+ let Ft = function(e, t) {
2765
+ return !!(O && e.hasChildNodes() && !Pt(e.firstElementChild) && J(Ei, e.textContent) && J(Ei, e.innerHTML) || O && e.namespaceURI === M && ji[t] && (Pt(e.firstElementChild) || typeof e.textContent == "string" && J(Mi[t], e.textContent)) || e.nodeType === $.processingInstruction || O && e.nodeType === $.comment && J(Di, e.data));
2766
+ }, It = function(e, t) {
2767
+ return e instanceof RegExp ? J(e, t) : e instanceof Function && !!e(t, ...[...arguments].slice(2));
2768
+ }, Lt = function(e, t, n) {
2769
+ if (!Ae[t] && R(t) && It(w.tagNameCheck, t)) return !1;
2770
+ if (We && !Ke[t]) {
2771
+ let t = m(e), r = ne(e);
2772
+ if (r && t) {
2773
+ let i = r.length;
2774
+ for (let a = i - 1; a >= 0; --a) {
2775
+ let i = e === n ? f(r[a], !0) : r[a];
2776
+ t.insertBefore(i, te(e));
2777
+ }
2778
+ }
2779
+ }
2780
+ return xt(e), !0;
2781
+ }, Rt = function(e, t, n, r) {
2782
+ return e.length === 0 ? t : t === n || t === r ? Z(t) : t;
2783
+ }, I = function(e, t) {
2784
+ return e === t || m(e) !== null ? !1 : (Ge && Et(e), !0);
2785
+ }, zt = function(e, n) {
2786
+ if (F(y.beforeSanitizeElements, e, null), I(e, n)) return !0;
2787
+ if (Nt(e)) return xt(e), !0;
2788
+ let r = N(ce(e));
2789
+ if (S = Rt(y.uponSanitizeElement, S, Oe, Ie), F(y.uponSanitizeElement, e, {
2790
+ tagName: r,
2791
+ allowedTags: S
2792
+ }), I(e, n)) return !0;
2793
+ if (Ft(e, r)) return xt(e), !0;
2794
+ if (Ae[r] || !(E.tagCheck instanceof Function && E.tagCheck(r)) && !S[r]) {
2795
+ let t = Lt(e, r, n);
2796
+ return t === !1 && F(y.afterSanitizeElements, e, null), t;
2797
+ }
2798
+ if (se(e) === $.element && !bt(e) || (r === "noscript" || r === "noembed" || r === "noframes") && J(Oi, e.innerHTML)) return xt(e), !0;
2799
+ if (D && e.nodeType === $.text) {
2800
+ let n = jt(e.textContent);
2801
+ e.textContent !== n && (Br(t.removed, { element: e.cloneNode() }), e.textContent = n);
2802
+ }
2803
+ return F(y.afterSanitizeElements, e, null), !1;
2804
+ }, L = function(e, t, r) {
2805
+ if (T[t] || Dt(t, e) || Ve && (t === "id" || t === "name") && (r in n || r in ft)) return !1;
2806
+ let i = C[t] || E.attributeCheck instanceof Function && E.attributeCheck(t, e);
2807
+ return Me && J(Ce, t) || je && J(we, t) ? !0 : i ? Xe[t] || J(De, Kr(r, Te, "")) || (t === "src" || t === "xlink:href" || t === "href") && e !== "script" && qr(r, "data:") === 0 && Je[e] || Ne && !J(x, Kr(r, Te, "")) ? !0 : !r : R(e) && It(w.tagNameCheck, e) && It(w.attributeNameCheck, t, e) || t === "is" && w.allowCustomizedBuiltInElements && It(w.tagNameCheck, r);
2808
+ }, Bt = X({}, [
2809
+ "annotation-xml",
2810
+ "color-profile",
2811
+ "font-face",
2812
+ "font-face-format",
2813
+ "font-face-name",
2814
+ "font-face-src",
2815
+ "font-face-uri",
2816
+ "missing-glyph"
2817
+ ]), R = function(e) {
2818
+ return !Bt[Ur(e)] && J(Ee, e);
2819
+ }, Vt = function(e, t, n, r) {
2820
+ if (g && typeof u == "object" && typeof u.getAttributeType == "function" && !n) switch (u.getAttributeType(e, t)) {
2821
+ case "TrustedHTML": return pe(r);
2822
+ case "TrustedScriptURL": return me(r);
2823
+ }
2824
+ return r;
2825
+ }, z = function(e, t, n, r) {
2826
+ try {
2827
+ return n ? e.setAttributeNS(n, t, r) : e.setAttribute(t, r), !Nt(e) || (xt(e), !1);
2828
+ } catch {
2829
+ return wt(t, e), !1;
2830
+ }
2831
+ }, Ht = function(e) {
2832
+ F(y.beforeSanitizeAttributes, e, null);
2833
+ let n = e.attributes;
2834
+ if (!n || Nt(e)) return;
2835
+ C = Rt(y.uponSanitizeAttribute, C, ke, Le);
2836
+ let r = {
2837
+ attrName: "",
2838
+ attrValue: "",
2839
+ keepAttr: !0,
2840
+ allowedAttributes: C,
2841
+ forceKeepAttr: void 0
2842
+ }, i = n.length, a = N(e.nodeName);
2843
+ for (; i--;) {
2844
+ let o = n[i], s = o.name, c = o.namespaceURI, l = o.value, u = N(s), d = l, f = s === "value" ? d : Jr(d), p = !1;
2845
+ if (r.attrName = u, r.attrValue = f, r.keepAttr = !0, r.forceKeepAttr = void 0, F(y.uponSanitizeAttribute, e, r), f = r.attrValue, He && (u === "id" || u === "name") && qr(f, Ue) !== 0 && (wt(s, e, o), f = Ue + f, p = !0), O && J(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i, f)) {
2846
+ wt(s, e, o);
2847
+ continue;
2848
+ }
2849
+ if (u === "attributename" && Gr(f, "href")) {
2850
+ wt(s, e, o);
2851
+ continue;
2852
+ }
2853
+ if (!r.forceKeepAttr) {
2854
+ if (!r.keepAttr) {
2855
+ wt(s, e, o);
2856
+ continue;
2857
+ }
2858
+ if (!Pe && J(ki, f)) {
2859
+ wt(s, e, o);
2860
+ continue;
2861
+ }
2862
+ if (D && (f = jt(f)), !L(a, u, f)) {
2863
+ wt(s, e, o);
2864
+ continue;
2865
+ }
2866
+ f = Vt(a, u, c, f), f !== d && z(e, s, c, f) && p && zr(t.removed);
2867
+ }
2868
+ }
2869
+ F(y.afterSanitizeAttributes, e, null);
2870
+ }, Ut = function(e) {
2871
+ let t = null, n = At(e);
2872
+ for (F(y.beforeSanitizeShadowDOM, e, null); t = n.nextNode();) if (F(y.uponSanitizeShadowNode, t, null), zt(t, e), Ht(t), P(t.content) && Ut(t.content), se(t) === $.element) {
2873
+ let e = re(t);
2874
+ P(e) && (Wt(e), Ut(e));
2875
+ }
2876
+ F(y.afterSanitizeShadowDOM, e, null);
2877
+ }, Wt = function(e) {
2878
+ let t = [{
2879
+ node: e,
2880
+ shadow: null
2881
+ }];
2882
+ for (; t.length > 0;) {
2883
+ let e = t.pop();
2884
+ if (e.shadow) {
2885
+ Ut(e.shadow);
2886
+ continue;
2887
+ }
2888
+ let n = e.node, r = se(n) === $.element, i = ne(n);
2889
+ if (i) for (let e = i.length - 1; e >= 0; --e) t.push({
2890
+ node: i[e],
2891
+ shadow: null
2892
+ });
2893
+ if (r) {
2894
+ let e = ae ? ae(n) : null;
2895
+ if (typeof e == "string" && N(e) === "template") {
2896
+ let e = n.content;
2897
+ P(e) && t.push({
2898
+ node: e,
2899
+ shadow: null
2900
+ });
2901
+ }
2902
+ }
2903
+ if (r) {
2904
+ let e = re(n);
2905
+ P(e) && t.push({
2906
+ node: null,
2907
+ shadow: e
2908
+ }, {
2909
+ node: e,
2910
+ shadow: null
2911
+ });
2912
+ }
2913
+ }
2914
+ };
2915
+ return t.sanitize = function(e) {
2916
+ let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, i = null, a = null, o = null, s = null;
2917
+ if (tt = !e, tt && (e = "<!-->"), typeof e != "string" && !Pt(e) && (e = ri(e), typeof e != "string")) throw ei("dirty is not a string, aborting");
2918
+ if (!t.isSupported) return e;
2919
+ Fe ? (S = Ie, C = Le) : mt(n), (y.uponSanitizeElement.length > 0 || y.uponSanitizeAttribute.length > 0) && (S = Z(S)), y.uponSanitizeAttribute.length > 0 && (C = Z(C)), t.removed = [];
2920
+ let c = Ge && typeof e != "string" && Pt(e);
2921
+ if (c) {
2922
+ Ot(e);
2923
+ let t = ce(e);
2924
+ if (typeof t == "string") {
2925
+ let n = N(t);
2926
+ if (!S[n] || Ae[n]) throw Ct(e), ei("root node is forbidden and cannot be sanitized in-place");
2927
+ }
2928
+ if (Nt(e)) throw Ct(e), ei("root node is clobbered and cannot be sanitized in-place");
2929
+ try {
2930
+ Wt(e);
2931
+ } catch (t) {
2932
+ throw Ct(e), t;
2933
+ }
2934
+ } else if (Pt(e)) i = kt("<!---->"), a = i.ownerDocument.importNode(e, !0), a.nodeType === $.element && a.nodeName === "BODY" || a.nodeName === "HTML" ? i = a : i.appendChild(a), Wt(i);
2935
+ else {
2936
+ if (!ze && !D && !k && e.indexOf("<") === -1) return g && Be ? pe(e) : e;
2937
+ if (i = kt(e), !i) return ze ? null : Be ? _ : "";
2938
+ }
2939
+ i && Re && xt(i.firstChild);
2940
+ let l = c ? e : i;
2941
+ try {
2942
+ let e = At(l);
2943
+ for (; o = e.nextNode();) zt(o, l), Ht(o), P(o.content) && Ut(o.content);
2944
+ } catch (n) {
2945
+ throw c && (Ct(e), Lr(t.removed, (e) => {
2946
+ e.element && Et(e.element);
2947
+ })), n;
2948
+ }
2949
+ if (c) return Lr(t.removed, (e) => {
2950
+ e.element && Et(e.element);
2951
+ }), D && Mt(e), e;
2952
+ if (ze) {
2953
+ if (D && Mt(i), A) for (s = ve.call(i.ownerDocument); i.firstChild;) s.appendChild(i.firstChild);
2954
+ else s = i;
2955
+ return (C.shadowroot || C.shadowrootmode) && (s = be.call(r, s, !0)), s;
2956
+ }
2957
+ let u = k ? i.outerHTML : i.innerHTML;
2958
+ return k && S["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name && J(wi, i.ownerDocument.doctype.name) && (u = "<!DOCTYPE " + i.ownerDocument.doctype.name + ">\n" + u), D && (u = jt(u)), g && Be ? pe(u) : u;
2959
+ }, t.setConfig = function() {
2960
+ let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
2961
+ mt(e), Fe = !0, Ie = S, Le = C;
2962
+ }, t.clearConfig = function() {
2963
+ dt = null, Fe = !1, Ie = null, Le = null, g = le, _ = "";
2964
+ }, t.isValidAttribute = function(e, t, n) {
2965
+ dt || mt({});
2966
+ let r = N(e), i = N(t);
2967
+ return L(r, i, n);
2968
+ }, t.addHook = function(e, t) {
2969
+ typeof t == "function" && q(y, e) && Br(y[e], t);
2970
+ }, t.removeHook = function(e, t) {
2971
+ if (q(y, e)) {
2972
+ if (t !== void 0) {
2973
+ let n = Rr(y[e], t);
2974
+ return n === -1 ? void 0 : Vr(y[e], n, 1)[0];
2975
+ }
2976
+ return zr(y[e]);
2977
+ }
2978
+ }, t.removeHooks = function(e) {
2979
+ q(y, e) && (y[e] = []);
2980
+ }, t.removeAllHooks = function() {
2981
+ y = Fi();
2982
+ }, t;
2983
+ }
2984
+ var zi = Ri();
2985
+ //#endregion
2986
+ //#region ../../packages/components/src/chat/markdownHtml.ts
2987
+ function Bi(e) {
2988
+ return e.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;");
2989
+ }
2990
+ function Vi(e, t) {
2991
+ return `<span class="katex-pending" data-katex="${encodeURIComponent(e)}" data-display="${t}"></span>`;
2992
+ }
2993
+ var Hi = {
2994
+ ADD_ATTR: ["target"],
2995
+ ALLOW_UNKNOWN_PROTOCOLS: !0,
2996
+ FORBID_TAGS: ["style", "form"],
2997
+ FORBID_ATTR: ["style"]
2998
+ };
2999
+ function Ui(e) {
3000
+ return zi.sanitize(e, Hi);
3001
+ }
3002
+ //#endregion
3003
+ //#region ../../packages/components/src/chat/PkStreamingMarkdown.vue?vue&type=script&setup=true&lang.ts
3004
+ var Wi = ["innerHTML"], Gi = 100, Ki = /* @__PURE__ */ o({
3005
+ __name: "PkStreamingMarkdown",
3006
+ props: {
3007
+ markdown: { default: "" },
3008
+ loading: {
3009
+ type: Boolean,
3010
+ default: !1
3011
+ },
3012
+ animation: { default: "fadeIn" },
3013
+ animationDuration: { default: "0.3s" },
3014
+ isDark: {
3015
+ type: Boolean,
3016
+ default: !1
3017
+ },
3018
+ tailLength: { default: void 0 }
3019
+ },
3020
+ setup(o) {
3021
+ let s = o, { t: f } = re({ useScope: "global" }), p = null;
3022
+ function te() {
3023
+ return p ||= import("beautiful-mermaid"), p;
3024
+ }
3025
+ let h = null;
3026
+ function ae() {
3027
+ return h ||= import("katex").then((e) => e.default), h;
3028
+ }
3029
+ let oe = /^(\${1,2})(?!\$)((?:\\.|[^\\\n])*?(?:\\.|[^\\\n$]))\1(?=[\s?!.,:\uFF1F\uFF01\u3002\uFF0C\uFF1A]|$)/, ce = /^(\${1,2})\n((?:\\[^]|[^\\])+?)\n\1(?:\n|$)/;
3030
+ W.use({ extensions: [{
3031
+ name: "inlineKatex",
3032
+ level: "inline",
3033
+ start: (e) => {
3034
+ let t = e.indexOf("$");
3035
+ if (t !== -1 && (t === 0 || e.charAt(t - 1) === " ")) return t;
3036
+ },
3037
+ tokenizer(e) {
3038
+ let t = e.match(oe);
3039
+ if (t) return {
3040
+ type: "inlineKatex",
3041
+ raw: t[0],
3042
+ text: t[2].trim(),
3043
+ displayMode: t[1].length === 2
3044
+ };
3045
+ },
3046
+ renderer(e) {
3047
+ return Vi(e.text, e.displayMode);
3048
+ }
3049
+ }, {
3050
+ name: "blockKatex",
3051
+ level: "block",
3052
+ tokenizer(e) {
3053
+ let t = e.match(ce);
3054
+ if (t) return {
3055
+ type: "blockKatex",
3056
+ raw: t[0],
3057
+ text: t[2].trim(),
3058
+ displayMode: t[1].length === 2
3059
+ };
3060
+ },
3061
+ renderer(e) {
3062
+ return Vi(e.text, e.displayMode) + "\n";
3063
+ }
3064
+ }] }), W.use({ extensions: [{
3065
+ name: "thinking",
3066
+ level: "block",
3067
+ start: (e) => e.indexOf("<thinking>"),
3068
+ tokenizer(e) {
3069
+ let t = /^<thinking>([\s\S]*?)<\/thinking>/.exec(e);
3070
+ if (!t) return;
3071
+ let n = {
3072
+ type: "thinking",
3073
+ raw: t[0],
3074
+ text: t[1].trim(),
3075
+ tokens: []
3076
+ };
3077
+ return this.lexer.blockTokens(n.text, n.tokens), n;
3078
+ },
3079
+ renderer(e) {
3080
+ return `<div class="thinking-block">${this.parser.parse(e.tokens ?? [])}</div>`;
3081
+ }
3082
+ }] });
3083
+ let g = new W.Renderer(), _ = (e) => e.replace(/&/g, "&amp;").replace(/"/g, "&quot;").replace(/</g, "&lt;").replace(/>/g, "&gt;"), le = /^(?:javascript|data|vbscript|file):/i;
3084
+ g.link = function({ href: e, title: t, tokens: r }) {
3085
+ let i = this.parser.parseInline(r), a = (e ?? "").trim().replace(/[\x00-\x1f]/g, "");
3086
+ if (!a || le.test(a)) return i;
3087
+ let o = t ? ` title="${_(t)}"` : "", s = n(a) ? "" : " target=\"_blank\" rel=\"noopener noreferrer\"";
3088
+ return `<a href="${_(a)}"${o}${s}>${i}</a>`;
3089
+ }, g.table = function(e) {
3090
+ return `<div class="table-wrapper">${W.Renderer.prototype.table.call(this, e)}</div>`;
3091
+ };
3092
+ let ue = /^(sequenceDiagram|graph|classDiagram|stateDiagram|erDiagram|flowchart|xychart-beta)/;
3093
+ g.code = ({ text: e }) => ue.test(e) ? `<pre class="mermaid">${Bi(e)}</pre>` : `<pre><code>${Bi(e)}</code></pre>`;
3094
+ function de(e) {
3095
+ return e.replace(/\\\[([\s\S]*?)\\\]/g, (e, t) => `$$${t}$$`).replace(/\\\(([\s\S]*?)\\\)/g, (e, t) => `$${t}$`).replace(/^(\d+)\.(?!\s)/gm, "$1\\.");
3096
+ }
3097
+ function fe(e) {
3098
+ let t = /* @__PURE__ */ new Set(), n = /^(`{3,}|~{3,})[^\n]*\n([\s\S]*?)\n\1/gm, r;
3099
+ for (; (r = n.exec(e)) !== null;) for (let e = r.index; e < r.index + r[0].length; e++) t.add(e);
3100
+ return e.replace(/[{[]([\s\S]*?)[}\]]/g, (e, n, r) => {
3101
+ if (t.has(r)) return e;
3102
+ try {
3103
+ return JSON.parse(e), "";
3104
+ } catch {
3105
+ return e;
3106
+ }
3107
+ }).replace(/\n{3,}/g, "\n\n");
3108
+ }
3109
+ let me = [
3110
+ se,
3111
+ fe,
3112
+ Lt,
3113
+ de
3114
+ ], v = ne("container"), he = ie(ee(s, "markdown"), Gi), ge = i(() => s.tailLength ? r(he.value, s.tailLength) : he.value), { resolveText: _e } = pe(), ve = _e(ge), ye = i(() => {
3115
+ let e = me.reduce((e, t) => t(e), ve.value);
3116
+ return Ui(W.parse(e, {
3117
+ async: !1,
3118
+ breaks: !0,
3119
+ renderer: g
3120
+ }));
3121
+ });
3122
+ async function be() {
3123
+ if (s.loading) return;
3124
+ await c();
3125
+ let e = v.value?.querySelectorAll("pre.mermaid:not([data-rendered])");
3126
+ if (!e?.length) return;
3127
+ let { renderMermaidSVG: t, THEMES: n } = await te(), r = s.isDark ? n["github-dark"] : n["github-light"];
3128
+ for (let n of Array.from(e)) {
3129
+ if (!n.isConnected) continue;
3130
+ let e = n.textContent?.trim();
3131
+ if (e) try {
3132
+ let i = t(e, r);
3133
+ n.isConnected && (n.dataset.code = e, n.innerHTML = i, n.setAttribute("data-rendered", "true"));
3134
+ } catch {}
3135
+ }
3136
+ }
3137
+ async function y() {
3138
+ await c();
3139
+ let e = v.value?.querySelectorAll("pre:not(.mermaid) > code:not([data-highlighted])");
3140
+ if (!e?.length) return;
3141
+ let t = (await import("highlight.js/lib/common")).default;
3142
+ for (let n of e) t.highlightElement(n), n.setAttribute("data-highlighted", "true");
3143
+ }
3144
+ async function xe() {
3145
+ await c();
3146
+ let n = v.value?.querySelectorAll(".katex-pending");
3147
+ if (!n?.length) return;
3148
+ let r = await ae();
3149
+ e("https://cdn.jsdelivr.net/npm/katex@0.18/dist/katex.min.css", t(v.value));
3150
+ for (let e of Array.from(n)) {
3151
+ if (!e.isConnected) continue;
3152
+ let t = e.dataset.katex;
3153
+ if (!t) continue;
3154
+ let n = e.dataset.display === "true";
3155
+ try {
3156
+ e.innerHTML = r.renderToString(decodeURIComponent(t), {
3157
+ throwOnError: !1,
3158
+ displayMode: n
3159
+ }), e.classList.remove("katex-pending");
3160
+ } catch {}
3161
+ }
3162
+ }
3163
+ async function Se() {
3164
+ await c();
3165
+ let e = v.value?.querySelectorAll("pre.mermaid[data-rendered]");
3166
+ if (!e?.length) return;
3167
+ let { renderMermaidSVG: t, THEMES: n } = await te(), r = s.isDark ? n["github-dark"] : n["github-light"];
3168
+ for (let n of Array.from(e)) {
3169
+ if (!n.isConnected) continue;
3170
+ let e = n.dataset.code;
3171
+ if (e) try {
3172
+ n.innerHTML = t(e, r);
3173
+ } catch {}
3174
+ }
3175
+ }
3176
+ function b(e) {
3177
+ let t = e.target;
3178
+ if (!(t instanceof HTMLImageElement) || t.dataset.broken) return;
3179
+ t.dataset.broken = "true";
3180
+ let n = document.createElement("span");
3181
+ n.className = "markdown-broken-image", n.textContent = t.alt || f("label.imageLoadError"), n.title = t.src, t.replaceWith(n);
3182
+ }
3183
+ u(() => {
3184
+ v.value?.addEventListener("error", b, !0);
3185
+ }), l(() => {
3186
+ v.value?.removeEventListener("error", b, !0);
3187
+ }), m([ye, () => s.loading], be, { immediate: !0 }), m(() => s.isDark, Se), m(ye, y, { immediate: !0 }), m(ye, xe, { immediate: !0 });
3188
+ let Ce = 0;
3189
+ function we(e, t) {
3190
+ let n = document.createElement("span");
3191
+ return n.style.cssText = `animation:ft-${s.animation} ${s.animationDuration} ease-out ${t}ms both;display:inline-block`, n.textContent = e, n.addEventListener("animationend", () => {
3192
+ let t = n.parentNode;
3193
+ t && (t.replaceChild(document.createTextNode(e), n), t.normalize());
3194
+ }, { once: !0 }), n;
3195
+ }
3196
+ function x(e, t, n, r) {
3197
+ let i = r, a = e.split(/(\s+)/);
3198
+ for (let e of a) if (e) {
3199
+ if (/^\s+$/.test(e)) {
3200
+ t.insertBefore(document.createTextNode(e), n);
3201
+ continue;
3202
+ }
3203
+ t.insertBefore(we(e, i * 30), n), i++;
3204
+ }
3205
+ return i;
3206
+ }
3207
+ function Te(e) {
3208
+ let t = document.createTreeWalker(e, NodeFilter.SHOW_TEXT, { acceptNode(e) {
3209
+ return e.parentElement?.closest("pre, code, .katex-pending, .markdown-broken-image") ? NodeFilter.FILTER_REJECT : NodeFilter.FILTER_ACCEPT;
3210
+ } }), n = [];
3211
+ for (; t.nextNode();) n.push(t.currentNode);
3212
+ return n;
3213
+ }
3214
+ function Ee() {
3215
+ if (!v.value || !s.loading || !s.animation) return;
3216
+ let e = Te(v.value), t = 0, n = 0;
3217
+ for (let r of e) {
3218
+ let e = r.textContent || "", i = t, a = t + e.length;
3219
+ if (t = a, a <= Ce) continue;
3220
+ let o = r.parentNode;
3221
+ if (!o) continue;
3222
+ if (i >= Ce) {
3223
+ let t = r.nextSibling;
3224
+ o.removeChild(r), n = x(e, o, t, n);
3225
+ continue;
3226
+ }
3227
+ let s = Ce - i, c = r.splitText(s), l = c.textContent || "", u = c.nextSibling;
3228
+ o.removeChild(c), n = x(l, o, u, n);
3229
+ }
3230
+ Ce = t;
3231
+ }
3232
+ return m(ye, async () => {
3233
+ await c(), Ee();
3234
+ }, { immediate: !0 }), m(() => s.markdown, (e, t) => {
3235
+ (!e || t && e.length < t.length) && (Ce = 0);
3236
+ }), (e, t) => (d(), a("div", {
3237
+ ref: "container",
3238
+ innerHTML: ye.value
3239
+ }, null, 8, Wi));
3240
+ }
3241
+ });
3242
+ //#endregion
3243
+ export { de as n, pe as r, Ki as t };
3244
+
3245
+ //# sourceMappingURL=PkStreamingMarkdown-B2iju0WK.js.map