vue-stream-markdown 0.1.5 → 0.2.0

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 (199) hide show
  1. package/README.md +1 -0
  2. package/dist/{blockquote-bkADuiGm.js → blockquote-C68fU4lp.js} +4 -3
  3. package/dist/{button-BQhuT7wh.js → button-BDO3n0n_.js} +36 -28
  4. package/dist/button-CdUyT8T_.js +6 -0
  5. package/dist/{code-DF8PTNol.js → code-2Dd0EGfm.js} +12 -11
  6. package/dist/code-block-Co2UoPPS.js +10 -0
  7. package/dist/{code-block-Dm2wl0cb.js → code-block-hQLDeAmP.js} +68 -80
  8. package/dist/{composables-yny5gJo3.js → composables-DuQ72m6O.js} +1163 -1115
  9. package/dist/corner-down-left-B77X84F8.js +24 -0
  10. package/dist/{delete-D17YBeI-.js → delete-CB-OS2WZ.js} +4 -3
  11. package/dist/dist-CYkm26BF.js +119 -0
  12. package/dist/dropdown-BB3nyts8.js +6 -0
  13. package/dist/{emphasis-B-2R_0Q5.js → emphasis-BmUoyBRK.js} +4 -3
  14. package/dist/{en-US-Kw2LYAMk.js → en-US-Cw-sFSiZ.js} +2 -1
  15. package/dist/{error-component-Bb0gIZsx.js → error-component-CtZr0_st.js} +10 -4
  16. package/dist/error-component-biOT0E-h.js +5 -0
  17. package/dist/footnote-definition-55TjXXwa.js +104 -0
  18. package/dist/footnote-reference-lk2rvC4Q.js +86 -0
  19. package/dist/{heading-DyJIwNrN.js → heading-BlOK3uk2.js} +4 -3
  20. package/dist/{html-DXNqMvt_.js → html-D7bGx0Cz.js} +2 -2
  21. package/dist/icon-PEivHbuv.js +67 -0
  22. package/dist/icon-mUoYnA6R.js +4 -0
  23. package/dist/image-B6Pw2YBI.js +9 -0
  24. package/dist/{image-BPhFn1xp.js → image-Bqn98dDB.js} +18 -15
  25. package/dist/image-VMGQj_VU.js +258 -0
  26. package/dist/{index.css → index.css/index.css} +31 -4
  27. package/dist/index.d.ts +297 -196
  28. package/dist/index.js +2511 -74
  29. package/dist/{inline-code-C44UJ2TH.js → inline-code-BZNE1ALQ.js} +2 -2
  30. package/dist/{inline-math-wO1rMt9T.js → inline-math--lfq9WCW.js} +5 -4
  31. package/dist/{link-sGo7CEll.js → link-DAOjAX6n.js} +7 -6
  32. package/dist/{list-C0I1ysSI.js → list-EOEqkWEi.js} +4 -3
  33. package/dist/{list-item-BoC2wKBL.js → list-item-ZG4eadLp.js} +4 -3
  34. package/dist/{math-BlqtUf2r.js → math-3zyrsc0O.js} +5 -4
  35. package/dist/{mermaid-Ka1jnXrR.js → mermaid-VkvXdOuQ.js} +32 -18
  36. package/dist/modal-BKzT1TQI.js +4 -0
  37. package/dist/{modal-Rc_RoeYA.js → modal-DrPdD2g1.js} +4 -4
  38. package/dist/{node-list-YhpHXdM_.js → node-list-D7eKaZGS.js} +19 -10
  39. package/dist/node-list-DtNGUnnI.js +4 -0
  40. package/dist/{paragraph-BN-4-Dn7.js → paragraph-DEyWEFYY.js} +4 -3
  41. package/dist/previewers-DYnyVv4Y.js +10 -0
  42. package/dist/segmented-6Ch-Ees3.js +7 -0
  43. package/dist/{segmented-CaC54iz_.js → segmented-CeLXMLZa.js} +1 -1
  44. package/dist/{shiki-sJNZTn1K.js → shiki-Dgoch7Q6.js} +5 -5
  45. package/dist/spin-DElj7VPm.js +3 -0
  46. package/dist/{strong-NdAS3VjP.js → strong-CFjQLk1h.js} +4 -3
  47. package/dist/table-20vwclBI.js +3 -0
  48. package/dist/{table-CWX5B2i1.js → table-DI25RphX.js} +21 -25
  49. package/dist/{text-DpleLvNh.js → text-DP2IAZrc.js} +2 -2
  50. package/dist/{thematic-break-D5GvzU5S.js → thematic-break-DIO-A8eY.js} +2 -2
  51. package/dist/tooltip-CAyfm3_l.js +4 -0
  52. package/dist/{tooltip-Bgbzbk4Q.js → tooltip-CnO7OPL1.js} +1 -1
  53. package/dist/vanilla-BZ1fQWZQ.js +4 -0
  54. package/dist/{vanilla-BTOVqKl7.js → vanilla-YFxsSfhA.js} +1 -1
  55. package/dist/{yaml-y0snrPRx.js → yaml-eOuEqAWX.js} +3 -3
  56. package/dist/{zh-CN-Dfow4Yn2.js → zh-CN-B9lWRP8O.js} +3 -2
  57. package/dist/{zoom-container-B1qbA-7z.js → zoom-container-CrKx_BbS.js} +32 -32
  58. package/dist/zoom-container-j4kY9qX_.js +7 -0
  59. package/package.json +19 -12
  60. package/dist/button-JYC8d-B-.js +0 -5
  61. package/dist/code-block-BhMDz2ZL.js +0 -9
  62. package/dist/dropdown-Y5_Z4a_u.js +0 -5
  63. package/dist/error-component-DEIWb6kB.js +0 -4
  64. package/dist/image-DXBD47sF.js +0 -8
  65. package/dist/image-DvOGBhi-.js +0 -327
  66. package/dist/modal-Duhc-vVa.js +0 -4
  67. package/dist/node-list-C1je2nLd.js +0 -3
  68. package/dist/previewers-D0VVcdjL.js +0 -10
  69. package/dist/segmented-XdoLnuuq.js +0 -6
  70. package/dist/spin-wM2KE8mO.js +0 -3
  71. package/dist/table-R9gmCXm_.js +0 -3
  72. package/dist/tooltip-BJDs-A8d.js +0 -4
  73. package/dist/vanilla-DA5bwIkr.js +0 -4
  74. package/dist/zoom-container-KztuE4ri.js +0 -6
  75. /package/dist/{angular-Mip1mspI.js → angular-CJL7ngrz.js} +0 -0
  76. /package/dist/{angular-component-Cq5UbX7R.js → angular-component-COlDvuNE.js} +0 -0
  77. /package/dist/{apache-BSq7fX32.js → apache-CVvmKdUn.js} +0 -0
  78. /package/dist/{arrow-left-C5s0Sn8o.js → arrow-left-Dqeb1_Um.js} +0 -0
  79. /package/dist/{asciidoc-DS-PMOLv.js → asciidoc-DOmevTVz.js} +0 -0
  80. /package/dist/{assembly-BPatlOM7.js → assembly-Bj0yQVcL.js} +0 -0
  81. /package/dist/{astro-CSD_ZjXp.js → astro-DUti0QFn.js} +0 -0
  82. /package/dist/{bash-RITislE1.js → bash-BfyNXzLO.js} +0 -0
  83. /package/dist/{batch-DWPShYhN.js → batch-Dp6N3cFQ.js} +0 -0
  84. /package/dist/{bicep-C6BEHfP6.js → bicep-CEkCHedl.js} +0 -0
  85. /package/dist/{c-DNo3tsNy.js → c-CTmG9vr2.js} +0 -0
  86. /package/dist/{check-BfpxIITS.js → check-C6XCJVPi.js} +0 -0
  87. /package/dist/{chevron-down-LeNeemjn.js → chevron-down-aK8OlmM2.js} +0 -0
  88. /package/dist/{circle-alert-BjDuIzgc.js → circle-alert-C5r2kfnc.js} +0 -0
  89. /package/dist/{clojure-C1DEYHW0.js → clojure-CHjliXb8.js} +0 -0
  90. /package/dist/{cmake-B69mdXcH.js → cmake-BsKz8Gt4.js} +0 -0
  91. /package/dist/{cobol-qmL-zIWi.js → cobol-BvWYwPFU.js} +0 -0
  92. /package/dist/{code-D9CiymEK.js → code-Bwlpb4mV.js} +0 -0
  93. /package/dist/{codeowners-Crklt5nF.js → codeowners-CfTM6yvs.js} +0 -0
  94. /package/dist/{coffeescript-k3huSp23.js → coffeescript-BDiFe_B2.js} +0 -0
  95. /package/dist/{copy-C4580J93.js → copy-VpvA-5VS.js} +0 -0
  96. /package/dist/{cpp-Cn3MB35e.js → cpp-BfV_KWzp.js} +0 -0
  97. /package/dist/{crystal-D5aGETSx.js → crystal-BXT0x2i3.js} +0 -0
  98. /package/dist/{csharp-CgkTkbPx.js → csharp-C6rkxA6x.js} +0 -0
  99. /package/dist/{css-DRH4n_IV.js → css-Drxb2cuf.js} +0 -0
  100. /package/dist/{csv-D5nNTIzO.js → csv-CHKRaQ9l.js} +0 -0
  101. /package/dist/{cue-B5mC88-N.js → cue-DksiF2mE.js} +0 -0
  102. /package/dist/{d-BdQRMgma.js → d-C8JgmiVc.js} +0 -0
  103. /package/dist/{dart-BGnfn0NN.js → dart-BX3GppmW.js} +0 -0
  104. /package/dist/{database-Ca1VGX7u.js → database-Lmva5T5u.js} +0 -0
  105. /package/dist/{diff-DVaTsnqu.js → diff-C61xHcnV.js} +0 -0
  106. /package/dist/{docker-E47qYlmL.js → docker-Dws0Euuu.js} +0 -0
  107. /package/dist/{download-DytrK56a.js → download-BB76SD0m.js} +0 -0
  108. /package/dist/{elixir-C-jqqu6q.js → elixir-CtaCeLkf.js} +0 -0
  109. /package/dist/{elm-CmeHvaWl.js → elm-CFvSvo-7.js} +0 -0
  110. /package/dist/{env-Ck1BHoxR.js → env-BwMmmmE5.js} +0 -0
  111. /package/dist/{erlang-CIP8kpGJ.js → erlang-DJRbvPSq.js} +0 -0
  112. /package/dist/{eye-TaEwQS2Z.js → eye-VjweBQoW.js} +0 -0
  113. /package/dist/{flip-horizontal-BFWjqDbQ.js → flip-horizontal-D4IxaKDu.js} +0 -0
  114. /package/dist/{fortran-DJVP2s7V.js → fortran-D3Vf5GTV.js} +0 -0
  115. /package/dist/{fsharp-Bp6mUcG0.js → fsharp-C2iQH5b1.js} +0 -0
  116. /package/dist/{git-BDcqJ1Gp.js → git-DN4z97-P.js} +0 -0
  117. /package/dist/{gleam-JLiZVlev.js → gleam-PhX3VC_5.js} +0 -0
  118. /package/dist/{go-ClcCiS7e.js → go-xPznl0oK.js} +0 -0
  119. /package/dist/{graphql-D2RDo-DF.js → graphql-sVzb1_rA.js} +0 -0
  120. /package/dist/{groovy-DLZBw8xE.js → groovy-Bvkrc3eE.js} +0 -0
  121. /package/dist/{haml-Da74jRwZ.js → haml-Y_qa35Lk.js} +0 -0
  122. /package/dist/{handlebars-CNgS57Sz.js → handlebars-Bo6cxn4k.js} +0 -0
  123. /package/dist/{haskell-DCvfD6VB.js → haskell-D8t1pxAr.js} +0 -0
  124. /package/dist/{haxe-CHVK1TId.js → haxe-C-sdXVB9.js} +0 -0
  125. /package/dist/{html-Du4235Z-.js → html-I3JKB_2G.js} +0 -0
  126. /package/dist/{http-B8VAFeQ5.js → http-Dj2NVTPO.js} +0 -0
  127. /package/dist/{image-D8MZj4W5.js → image-DzKVFSaY.js} +0 -0
  128. /package/dist/{java-CoSdnK1N.js → java-BulcCUaV.js} +0 -0
  129. /package/dist/{javascript-BCDeVll0.js → javascript-DQlby440.js} +0 -0
  130. /package/dist/{jinja-DYbiqZy0.js → jinja-HRQZM5oZ.js} +0 -0
  131. /package/dist/{json-CdzCyWJA.js → json-wUPUX2x-.js} +0 -0
  132. /package/dist/{julia-pswJGtpP.js → julia-DjHYSWzj.js} +0 -0
  133. /package/dist/{kdl-M8rfQ85l.js → kdl-CGLuct22.js} +0 -0
  134. /package/dist/{kotlin-CfCV33oB.js → kotlin-CnR9eg7m.js} +0 -0
  135. /package/dist/{latex-DK8DFhTm.js → latex-CesDKd8G.js} +0 -0
  136. /package/dist/{less-BFnNZiIs.js → less-215r2nUv.js} +0 -0
  137. /package/dist/{link-C7eU_yi-.js → link-4JB1WqYS.js} +0 -0
  138. /package/dist/{liquid-C8h46DoX.js → liquid-FFTnvZwx.js} +0 -0
  139. /package/dist/{lisp-C3FbGuD1.js → lisp-BNWIo3S3.js} +0 -0
  140. /package/dist/{log-D-O3FXf2.js → log-C3BhnPjM.js} +0 -0
  141. /package/dist/{lua-BC_aR1_i.js → lua-jBHQD7Fh.js} +0 -0
  142. /package/dist/{luau-DFUOrNN7.js → luau-CJKAqC3L.js} +0 -0
  143. /package/dist/{makefile-Ck67veVV.js → makefile-DZmoFYpF.js} +0 -0
  144. /package/dist/{markdown-BX13X3kd.js → markdown-BEABBw2C.js} +0 -0
  145. /package/dist/{marko-CQE8YTCc.js → marko-DE7d51Q2.js} +0 -0
  146. /package/dist/{matlab-Bd9O2Ml3.js → matlab-n99nEoGl.js} +0 -0
  147. /package/dist/{maximize-CDZ9rnYF.js → maximize-VRncBaHe.js} +0 -0
  148. /package/dist/{mermaid-Dv-Pr0W-.js → mermaid-Dv9_1JlU.js} +0 -0
  149. /package/dist/{minimize-B9ER7p2X.js → minimize-k8aU78V4.js} +0 -0
  150. /package/dist/{nextflow-D3lDq1Yi.js → nextflow-DjdDVx1j.js} +0 -0
  151. /package/dist/{nginx-CgsqCL4l.js → nginx-DH4jOOdC.js} +0 -0
  152. /package/dist/{nim-BJdSu3c6.js → nim-Cb0hPGv5.js} +0 -0
  153. /package/dist/{nix-B7K_D6CN.js → nix-Bf4Vwv5v.js} +0 -0
  154. /package/dist/{ocaml-gYS1Y45s.js → ocaml-BwJ1z9S7.js} +0 -0
  155. /package/dist/{perl-DXFhFWhI.js → perl-P6bAYvN9.js} +0 -0
  156. /package/dist/{php-We35bF4E.js → php-BGTGPBW1.js} +0 -0
  157. /package/dist/{postcss-BWovY_YV.js → postcss-D8a2Jx1D.js} +0 -0
  158. /package/dist/{powershell-C6teiBsq.js → powershell-DNOnus4K.js} +0 -0
  159. /package/dist/{prisma-UyJEg0_X.js → prisma-DquVk_GR.js} +0 -0
  160. /package/dist/{prolog-YZsPgdnw.js → prolog-BxJJGnOg.js} +0 -0
  161. /package/dist/{properties-DaPbL0e2.js → properties-DjauSeDE.js} +0 -0
  162. /package/dist/{proto-1LIwu2O1.js → proto-3aU1SxxY.js} +0 -0
  163. /package/dist/{pug-CzkUK-Ec.js → pug-OiYFRnMd.js} +0 -0
  164. /package/dist/{puppet-CNhB1MHb.js → puppet-8Sq4QIbE.js} +0 -0
  165. /package/dist/{python-B_hgEobv.js → python-CBYVyhMm.js} +0 -0
  166. /package/dist/{r-CVeKYmPK.js → r-DfzMNaiK.js} +0 -0
  167. /package/dist/{racket-D5UfvXuw.js → racket-EkEmTJtD.js} +0 -0
  168. /package/dist/{razor-RIKaANTN.js → razor-BSd-q379.js} +0 -0
  169. /package/dist/{rotate-ccw-square-C2KVFUF3.js → rotate-ccw-square-Dy0doneR.js} +0 -0
  170. /package/dist/{ruby-C8wV0pMO.js → ruby-CNn-W_DF.js} +0 -0
  171. /package/dist/{rust-75Gei1mP.js → rust-BW9y4Ksf.js} +0 -0
  172. /package/dist/{sass-Cq68xmQ4.js → sass-Cyleqehh.js} +0 -0
  173. /package/dist/{scala-C_E5rjSc.js → scala-2YqaI_aG.js} +0 -0
  174. /package/dist/{scheme-Bm-q-nLL.js → scheme-CWx6sQlk.js} +0 -0
  175. /package/dist/{shader-DPaRkMCs.js → shader-CLzSKNOz.js} +0 -0
  176. /package/dist/{shiki-token-renderer-CLmUjKa3.js → shiki-token-renderer-BjxmGfXH.js} +0 -0
  177. /package/dist/{solidity-DvHG_0CD.js → solidity-CgjJUETv.js} +0 -0
  178. /package/dist/{spin--f5jNjBn.js → spin-DzERwGWy.js} +0 -0
  179. /package/dist/{stata-DoVloJLm.js → stata-CI3W9UFN.js} +0 -0
  180. /package/dist/{svelte-tlbA11de.js → svelte-D-OV6frL.js} +0 -0
  181. /package/dist/{swift-BZn5eRnK.js → swift-CcBwS4X5.js} +0 -0
  182. /package/dist/{table-CaUMjs4M.js → table-BMlD4JhL.js} +0 -0
  183. /package/dist/{terraform-c5-k7yB1.js → terraform-BwM_GPTy.js} +0 -0
  184. /package/dist/{text-DPCGWvDK.js → text-hIzRUiKs.js} +0 -0
  185. /package/dist/{theme.css → theme.css/theme.css} +0 -0
  186. /package/dist/{toml-DdLGBe1A.js → toml-CXJ7B-C1.js} +0 -0
  187. /package/dist/{twig-D_jzZxh6.js → twig-CXQNsdEx.js} +0 -0
  188. /package/dist/{typescript-B95hq2ns.js → typescript-0uiFYOof.js} +0 -0
  189. /package/dist/{typst-CSAEQ4yK.js → typst-gIi5b52E.js} +0 -0
  190. /package/dist/{v-BAhebuOB.js → v-Ct-HfSu0.js} +0 -0
  191. /package/dist/{vala-RAu83-lp.js → vala-BZbAZj2w.js} +0 -0
  192. /package/dist/{verilog-BgmTn52U.js → verilog-NzFyyNP_.js} +0 -0
  193. /package/dist/{vim-c8oTCLkH.js → vim-CN-tRagW.js} +0 -0
  194. /package/dist/{vue-TGT6HTBA.js → vue-BmLzKAao.js} +0 -0
  195. /package/dist/{xml-C1HDr874.js → xml-CBzkooc-.js} +0 -0
  196. /package/dist/{yaml-BO7FjFQZ.js → yaml-CT7I_lPM.js} +0 -0
  197. /package/dist/{zig-qANBp1SU.js → zig-B7F-QzJD.js} +0 -0
  198. /package/dist/{zoomIn-iVMAUxIz.js → zoomIn-DlPeXZbT.js} +0 -0
  199. /package/dist/{zoomOut-Cxq1_dIQ.js → zoomOut-Lvyw8SOW.js} +0 -0
package/dist/index.js CHANGED
@@ -1,7 +1,8 @@
1
- import { t as CODE_PREVIEWERS } from "./previewers-D0VVcdjL.js";
2
- import { A as svgToPngBlob, B as useFloatingElement, C as findNodeParent, D as flow, E as hasShiki, F as DEFAULT_DARK_THEME, H as useContext, I as DEFAULT_LIGHT_THEME, L as LANGUAGE_ALIAS, M as SHADCN_SCHEMAS, N as ICONS, O as save, P as DEFAULT_HARDEN_OPTIONS, R as LANGUAGE_EXTENSIONS, S as findLastLeafNode, T as hasMermaid, U as useCodeOptions, V as useControls, _ as escapeMarkdownTableCell, a as useMediumZoom, b as tableDataToMarkdown, c as _defineProperty, d as SUPPORT_LANGUAGES, f as currentLocale, g as useHardenSanitizers, h as localesGlob, i as useMermaid, j as transformUrl, k as saveImage, l as useKatex, m as localeMessages, n as useTailwindV3Theme, o as useMathRenderer, p as loadLocaleMessages, r as useShiki, t as useZoom, u as useI18n, v as extractTableDataFromElement, w as hasKatex, x as tableDataToTSV, y as tableDataToCSV, z as LANGUAGE_ICONS } from "./composables-yny5gJo3.js";
3
- import { t as node_list_default } from "./node-list-YhpHXdM_.js";
4
- import { computed, createElementBlock, createVNode, defineAsyncComponent, defineComponent, mergeProps, normalizeClass, onBeforeUnmount, openBlock, ref, toRefs, unref, watch } from "vue";
1
+ import { t as CODE_PREVIEWERS } from "./previewers-DYnyVv4Y.js";
2
+ import { A as tableDataToTSV, B as saveImage, C as localeMessages, D as extractTableDataFromElement, E as escapeMarkdownTableCell, F as hasShiki, G as useCodeOptions, H as transformUrl, I as isClient, L as isServer, M as findNodeParent, N as hasKatex, O as tableDataToCSV, P as hasMermaid, R as flow, S as loadLocaleMessages, T as useFloatingElement, U as useControls, V as svgToPngBlob, W as useContext, _ as _defineProperty, a as SHADCN_SCHEMAS, b as SUPPORT_LANGUAGES, c as DEFAULT_DARK_THEME, d as LANGUAGE_EXTENSIONS, f as LANGUAGE_ICONS, h as useMathRenderer, i as useSanitizers, j as findLastLeafNode, k as tableDataToMarkdown, l as DEFAULT_LIGHT_THEME, m as useMediumZoom, n as useTailwindV3Theme, o as ICONS, p as useMermaid, r as useShiki, s as DEFAULT_HARDEN_OPTIONS, t as useZoom, u as LANGUAGE_ALIAS, v as useKatex, w as localesGlob, x as currentLocale, y as useI18n, z as save } from "./composables-DuQ72m6O.js";
3
+ import { t as node_list_default } from "./node-list-D7eKaZGS.js";
4
+ import { n as treeFlatFilter, t as treeFilter } from "./dist-CYkm26BF.js";
5
+ import { computed, createElementBlock, createVNode, defineAsyncComponent, defineComponent, mergeProps, normalizeClass, onBeforeUnmount, onMounted, openBlock, ref, toRefs, unref, watch } from "vue";
5
6
  import { MarkdownItAsync } from "markdown-it-async";
6
7
  import remend from "remend";
7
8
 
@@ -48,41 +49,44 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
48
49
  //#endregion
49
50
  //#region src/components/renderers/index.ts
50
51
  const NODE_RENDERERS = {
51
- blockquote: defineAsyncComponent(() => import("./blockquote-bkADuiGm.js")),
52
- code: defineAsyncComponent(() => import("./code-DF8PTNol.js")),
53
- delete: defineAsyncComponent(() => import("./delete-D17YBeI-.js")),
54
- emphasis: defineAsyncComponent(() => import("./emphasis-B-2R_0Q5.js")),
55
- heading: defineAsyncComponent(() => import("./heading-DyJIwNrN.js")),
56
- image: defineAsyncComponent(() => import("./image-BPhFn1xp.js")),
57
- inlineCode: defineAsyncComponent(() => import("./inline-code-C44UJ2TH.js")),
58
- inlineMath: defineAsyncComponent(() => import("./inline-math-wO1rMt9T.js")),
59
- link: defineAsyncComponent(() => import("./link-sGo7CEll.js")),
60
- list: defineAsyncComponent(() => import("./list-C0I1ysSI.js")),
61
- listItem: defineAsyncComponent(() => import("./list-item-BoC2wKBL.js")),
62
- math: defineAsyncComponent(() => import("./math-BlqtUf2r.js")),
63
- paragraph: defineAsyncComponent(() => import("./paragraph-BN-4-Dn7.js")),
64
- strong: defineAsyncComponent(() => import("./strong-NdAS3VjP.js")),
65
- table: defineAsyncComponent(() => import("./table-CWX5B2i1.js")),
66
- text: defineAsyncComponent(() => import("./text-DpleLvNh.js")),
67
- thematicBreak: defineAsyncComponent(() => import("./thematic-break-D5GvzU5S.js")),
68
- yaml: defineAsyncComponent(() => import("./yaml-y0snrPRx.js"))
52
+ blockquote: defineAsyncComponent(() => import("./blockquote-C68fU4lp.js")),
53
+ code: defineAsyncComponent(() => import("./code-2Dd0EGfm.js")),
54
+ delete: defineAsyncComponent(() => import("./delete-CB-OS2WZ.js")),
55
+ emphasis: defineAsyncComponent(() => import("./emphasis-BmUoyBRK.js")),
56
+ footnoteDefinition: defineAsyncComponent(() => import("./footnote-definition-55TjXXwa.js")),
57
+ footnoteReference: defineAsyncComponent(() => import("./footnote-reference-lk2rvC4Q.js")),
58
+ heading: defineAsyncComponent(() => import("./heading-BlOK3uk2.js")),
59
+ image: defineAsyncComponent(() => import("./image-Bqn98dDB.js")),
60
+ inlineCode: defineAsyncComponent(() => import("./inline-code-BZNE1ALQ.js")),
61
+ inlineMath: defineAsyncComponent(() => import("./inline-math--lfq9WCW.js")),
62
+ link: defineAsyncComponent(() => import("./link-DAOjAX6n.js")),
63
+ list: defineAsyncComponent(() => import("./list-EOEqkWEi.js")),
64
+ listItem: defineAsyncComponent(() => import("./list-item-ZG4eadLp.js")),
65
+ math: defineAsyncComponent(() => import("./math-3zyrsc0O.js")),
66
+ paragraph: defineAsyncComponent(() => import("./paragraph-DEyWEFYY.js")),
67
+ strong: defineAsyncComponent(() => import("./strong-CFjQLk1h.js")),
68
+ table: defineAsyncComponent(() => import("./table-DI25RphX.js")),
69
+ text: defineAsyncComponent(() => import("./text-DP2IAZrc.js")),
70
+ thematicBreak: defineAsyncComponent(() => import("./thematic-break-DIO-A8eY.js")),
71
+ yaml: defineAsyncComponent(() => import("./yaml-eOuEqAWX.js"))
69
72
  };
70
73
 
71
74
  //#endregion
72
75
  //#region src/components/index.ts
73
76
  const UI = {
74
- Button: defineAsyncComponent(() => import("./button-JYC8d-B-.js")),
75
- CodeBlock: defineAsyncComponent(() => import("./code-block-BhMDz2ZL.js")),
76
- Dropdown: defineAsyncComponent(() => import("./dropdown-Y5_Z4a_u.js")),
77
- ErrorComponent: defineAsyncComponent(() => import("./error-component-DEIWb6kB.js")),
78
- Image: defineAsyncComponent(() => import("./image-DXBD47sF.js")),
79
- Modal: defineAsyncComponent(() => import("./modal-Duhc-vVa.js")),
80
- NodeList: defineAsyncComponent(() => import("./node-list-C1je2nLd.js")),
81
- Segmented: defineAsyncComponent(() => import("./segmented-XdoLnuuq.js")),
82
- Spin: defineAsyncComponent(() => import("./spin-wM2KE8mO.js")),
83
- Table: defineAsyncComponent(() => import("./table-R9gmCXm_.js")),
84
- Tooltip: defineAsyncComponent(() => import("./tooltip-BJDs-A8d.js")),
85
- ZoomContainer: defineAsyncComponent(() => import("./zoom-container-KztuE4ri.js"))
77
+ Button: defineAsyncComponent(() => import("./button-CdUyT8T_.js")),
78
+ CodeBlock: defineAsyncComponent(() => import("./code-block-Co2UoPPS.js")),
79
+ Dropdown: defineAsyncComponent(() => import("./dropdown-BB3nyts8.js")),
80
+ ErrorComponent: defineAsyncComponent(() => import("./error-component-biOT0E-h.js")),
81
+ Icon: defineAsyncComponent(() => import("./icon-mUoYnA6R.js")),
82
+ Image: defineAsyncComponent(() => import("./image-B6Pw2YBI.js")),
83
+ Modal: defineAsyncComponent(() => import("./modal-BKzT1TQI.js")),
84
+ NodeList: defineAsyncComponent(() => import("./node-list-DtNGUnnI.js")),
85
+ Segmented: defineAsyncComponent(() => import("./segmented-6Ch-Ees3.js")),
86
+ Spin: defineAsyncComponent(() => import("./spin-DElj7VPm.js")),
87
+ Table: defineAsyncComponent(() => import("./table-20vwclBI.js")),
88
+ Tooltip: defineAsyncComponent(() => import("./tooltip-CAyfm3_l.js")),
89
+ ZoomContainer: defineAsyncComponent(() => import("./zoom-container-j4kY9qX_.js"))
86
90
  };
87
91
 
88
92
  //#endregion
@@ -169,18 +173,2156 @@ function node(value$1) {
169
173
  }
170
174
 
171
175
  //#endregion
172
- //#region node_modules/.pnpm/decode-named-character-reference@1.2.0/node_modules/decode-named-character-reference/index.dom.js
173
- const element = document.createElement("i");
176
+ //#region node_modules/.pnpm/character-entities@2.0.2/node_modules/character-entities/index.js
177
+ /**
178
+ * Map of named character references.
179
+ *
180
+ * @type {Record<string, string>}
181
+ */
182
+ const characterEntities = {
183
+ AElig: "Æ",
184
+ AMP: "&",
185
+ Aacute: "Á",
186
+ Abreve: "Ă",
187
+ Acirc: "Â",
188
+ Acy: "А",
189
+ Afr: "𝔄",
190
+ Agrave: "À",
191
+ Alpha: "Α",
192
+ Amacr: "Ā",
193
+ And: "⩓",
194
+ Aogon: "Ą",
195
+ Aopf: "𝔸",
196
+ ApplyFunction: "⁡",
197
+ Aring: "Å",
198
+ Ascr: "𝒜",
199
+ Assign: "≔",
200
+ Atilde: "Ã",
201
+ Auml: "Ä",
202
+ Backslash: "∖",
203
+ Barv: "⫧",
204
+ Barwed: "⌆",
205
+ Bcy: "Б",
206
+ Because: "∵",
207
+ Bernoullis: "ℬ",
208
+ Beta: "Β",
209
+ Bfr: "𝔅",
210
+ Bopf: "𝔹",
211
+ Breve: "˘",
212
+ Bscr: "ℬ",
213
+ Bumpeq: "≎",
214
+ CHcy: "Ч",
215
+ COPY: "©",
216
+ Cacute: "Ć",
217
+ Cap: "⋒",
218
+ CapitalDifferentialD: "ⅅ",
219
+ Cayleys: "ℭ",
220
+ Ccaron: "Č",
221
+ Ccedil: "Ç",
222
+ Ccirc: "Ĉ",
223
+ Cconint: "∰",
224
+ Cdot: "Ċ",
225
+ Cedilla: "¸",
226
+ CenterDot: "·",
227
+ Cfr: "ℭ",
228
+ Chi: "Χ",
229
+ CircleDot: "⊙",
230
+ CircleMinus: "⊖",
231
+ CirclePlus: "⊕",
232
+ CircleTimes: "⊗",
233
+ ClockwiseContourIntegral: "∲",
234
+ CloseCurlyDoubleQuote: "”",
235
+ CloseCurlyQuote: "’",
236
+ Colon: "∷",
237
+ Colone: "⩴",
238
+ Congruent: "≡",
239
+ Conint: "∯",
240
+ ContourIntegral: "∮",
241
+ Copf: "ℂ",
242
+ Coproduct: "∐",
243
+ CounterClockwiseContourIntegral: "∳",
244
+ Cross: "⨯",
245
+ Cscr: "𝒞",
246
+ Cup: "⋓",
247
+ CupCap: "≍",
248
+ DD: "ⅅ",
249
+ DDotrahd: "⤑",
250
+ DJcy: "Ђ",
251
+ DScy: "Ѕ",
252
+ DZcy: "Џ",
253
+ Dagger: "‡",
254
+ Darr: "↡",
255
+ Dashv: "⫤",
256
+ Dcaron: "Ď",
257
+ Dcy: "Д",
258
+ Del: "∇",
259
+ Delta: "Δ",
260
+ Dfr: "𝔇",
261
+ DiacriticalAcute: "´",
262
+ DiacriticalDot: "˙",
263
+ DiacriticalDoubleAcute: "˝",
264
+ DiacriticalGrave: "`",
265
+ DiacriticalTilde: "˜",
266
+ Diamond: "⋄",
267
+ DifferentialD: "ⅆ",
268
+ Dopf: "𝔻",
269
+ Dot: "¨",
270
+ DotDot: "⃜",
271
+ DotEqual: "≐",
272
+ DoubleContourIntegral: "∯",
273
+ DoubleDot: "¨",
274
+ DoubleDownArrow: "⇓",
275
+ DoubleLeftArrow: "⇐",
276
+ DoubleLeftRightArrow: "⇔",
277
+ DoubleLeftTee: "⫤",
278
+ DoubleLongLeftArrow: "⟸",
279
+ DoubleLongLeftRightArrow: "⟺",
280
+ DoubleLongRightArrow: "⟹",
281
+ DoubleRightArrow: "⇒",
282
+ DoubleRightTee: "⊨",
283
+ DoubleUpArrow: "⇑",
284
+ DoubleUpDownArrow: "⇕",
285
+ DoubleVerticalBar: "∥",
286
+ DownArrow: "↓",
287
+ DownArrowBar: "⤓",
288
+ DownArrowUpArrow: "⇵",
289
+ DownBreve: "̑",
290
+ DownLeftRightVector: "⥐",
291
+ DownLeftTeeVector: "⥞",
292
+ DownLeftVector: "↽",
293
+ DownLeftVectorBar: "⥖",
294
+ DownRightTeeVector: "⥟",
295
+ DownRightVector: "⇁",
296
+ DownRightVectorBar: "⥗",
297
+ DownTee: "⊤",
298
+ DownTeeArrow: "↧",
299
+ Downarrow: "⇓",
300
+ Dscr: "𝒟",
301
+ Dstrok: "Đ",
302
+ ENG: "Ŋ",
303
+ ETH: "Ð",
304
+ Eacute: "É",
305
+ Ecaron: "Ě",
306
+ Ecirc: "Ê",
307
+ Ecy: "Э",
308
+ Edot: "Ė",
309
+ Efr: "𝔈",
310
+ Egrave: "È",
311
+ Element: "∈",
312
+ Emacr: "Ē",
313
+ EmptySmallSquare: "◻",
314
+ EmptyVerySmallSquare: "▫",
315
+ Eogon: "Ę",
316
+ Eopf: "𝔼",
317
+ Epsilon: "Ε",
318
+ Equal: "⩵",
319
+ EqualTilde: "≂",
320
+ Equilibrium: "⇌",
321
+ Escr: "ℰ",
322
+ Esim: "⩳",
323
+ Eta: "Η",
324
+ Euml: "Ë",
325
+ Exists: "∃",
326
+ ExponentialE: "ⅇ",
327
+ Fcy: "Ф",
328
+ Ffr: "𝔉",
329
+ FilledSmallSquare: "◼",
330
+ FilledVerySmallSquare: "▪",
331
+ Fopf: "𝔽",
332
+ ForAll: "∀",
333
+ Fouriertrf: "ℱ",
334
+ Fscr: "ℱ",
335
+ GJcy: "Ѓ",
336
+ GT: ">",
337
+ Gamma: "Γ",
338
+ Gammad: "Ϝ",
339
+ Gbreve: "Ğ",
340
+ Gcedil: "Ģ",
341
+ Gcirc: "Ĝ",
342
+ Gcy: "Г",
343
+ Gdot: "Ġ",
344
+ Gfr: "𝔊",
345
+ Gg: "⋙",
346
+ Gopf: "𝔾",
347
+ GreaterEqual: "≥",
348
+ GreaterEqualLess: "⋛",
349
+ GreaterFullEqual: "≧",
350
+ GreaterGreater: "⪢",
351
+ GreaterLess: "≷",
352
+ GreaterSlantEqual: "⩾",
353
+ GreaterTilde: "≳",
354
+ Gscr: "𝒢",
355
+ Gt: "≫",
356
+ HARDcy: "Ъ",
357
+ Hacek: "ˇ",
358
+ Hat: "^",
359
+ Hcirc: "Ĥ",
360
+ Hfr: "ℌ",
361
+ HilbertSpace: "ℋ",
362
+ Hopf: "ℍ",
363
+ HorizontalLine: "─",
364
+ Hscr: "ℋ",
365
+ Hstrok: "Ħ",
366
+ HumpDownHump: "≎",
367
+ HumpEqual: "≏",
368
+ IEcy: "Е",
369
+ IJlig: "IJ",
370
+ IOcy: "Ё",
371
+ Iacute: "Í",
372
+ Icirc: "Î",
373
+ Icy: "И",
374
+ Idot: "İ",
375
+ Ifr: "ℑ",
376
+ Igrave: "Ì",
377
+ Im: "ℑ",
378
+ Imacr: "Ī",
379
+ ImaginaryI: "ⅈ",
380
+ Implies: "⇒",
381
+ Int: "∬",
382
+ Integral: "∫",
383
+ Intersection: "⋂",
384
+ InvisibleComma: "⁣",
385
+ InvisibleTimes: "⁢",
386
+ Iogon: "Į",
387
+ Iopf: "𝕀",
388
+ Iota: "Ι",
389
+ Iscr: "ℐ",
390
+ Itilde: "Ĩ",
391
+ Iukcy: "І",
392
+ Iuml: "Ï",
393
+ Jcirc: "Ĵ",
394
+ Jcy: "Й",
395
+ Jfr: "𝔍",
396
+ Jopf: "𝕁",
397
+ Jscr: "𝒥",
398
+ Jsercy: "Ј",
399
+ Jukcy: "Є",
400
+ KHcy: "Х",
401
+ KJcy: "Ќ",
402
+ Kappa: "Κ",
403
+ Kcedil: "Ķ",
404
+ Kcy: "К",
405
+ Kfr: "𝔎",
406
+ Kopf: "𝕂",
407
+ Kscr: "𝒦",
408
+ LJcy: "Љ",
409
+ LT: "<",
410
+ Lacute: "Ĺ",
411
+ Lambda: "Λ",
412
+ Lang: "⟪",
413
+ Laplacetrf: "ℒ",
414
+ Larr: "↞",
415
+ Lcaron: "Ľ",
416
+ Lcedil: "Ļ",
417
+ Lcy: "Л",
418
+ LeftAngleBracket: "⟨",
419
+ LeftArrow: "←",
420
+ LeftArrowBar: "⇤",
421
+ LeftArrowRightArrow: "⇆",
422
+ LeftCeiling: "⌈",
423
+ LeftDoubleBracket: "⟦",
424
+ LeftDownTeeVector: "⥡",
425
+ LeftDownVector: "⇃",
426
+ LeftDownVectorBar: "⥙",
427
+ LeftFloor: "⌊",
428
+ LeftRightArrow: "↔",
429
+ LeftRightVector: "⥎",
430
+ LeftTee: "⊣",
431
+ LeftTeeArrow: "↤",
432
+ LeftTeeVector: "⥚",
433
+ LeftTriangle: "⊲",
434
+ LeftTriangleBar: "⧏",
435
+ LeftTriangleEqual: "⊴",
436
+ LeftUpDownVector: "⥑",
437
+ LeftUpTeeVector: "⥠",
438
+ LeftUpVector: "↿",
439
+ LeftUpVectorBar: "⥘",
440
+ LeftVector: "↼",
441
+ LeftVectorBar: "⥒",
442
+ Leftarrow: "⇐",
443
+ Leftrightarrow: "⇔",
444
+ LessEqualGreater: "⋚",
445
+ LessFullEqual: "≦",
446
+ LessGreater: "≶",
447
+ LessLess: "⪡",
448
+ LessSlantEqual: "⩽",
449
+ LessTilde: "≲",
450
+ Lfr: "𝔏",
451
+ Ll: "⋘",
452
+ Lleftarrow: "⇚",
453
+ Lmidot: "Ŀ",
454
+ LongLeftArrow: "⟵",
455
+ LongLeftRightArrow: "⟷",
456
+ LongRightArrow: "⟶",
457
+ Longleftarrow: "⟸",
458
+ Longleftrightarrow: "⟺",
459
+ Longrightarrow: "⟹",
460
+ Lopf: "𝕃",
461
+ LowerLeftArrow: "↙",
462
+ LowerRightArrow: "↘",
463
+ Lscr: "ℒ",
464
+ Lsh: "↰",
465
+ Lstrok: "Ł",
466
+ Lt: "≪",
467
+ Map: "⤅",
468
+ Mcy: "М",
469
+ MediumSpace: " ",
470
+ Mellintrf: "ℳ",
471
+ Mfr: "𝔐",
472
+ MinusPlus: "∓",
473
+ Mopf: "𝕄",
474
+ Mscr: "ℳ",
475
+ Mu: "Μ",
476
+ NJcy: "Њ",
477
+ Nacute: "Ń",
478
+ Ncaron: "Ň",
479
+ Ncedil: "Ņ",
480
+ Ncy: "Н",
481
+ NegativeMediumSpace: "​",
482
+ NegativeThickSpace: "​",
483
+ NegativeThinSpace: "​",
484
+ NegativeVeryThinSpace: "​",
485
+ NestedGreaterGreater: "≫",
486
+ NestedLessLess: "≪",
487
+ NewLine: "\n",
488
+ Nfr: "𝔑",
489
+ NoBreak: "⁠",
490
+ NonBreakingSpace: "\xA0",
491
+ Nopf: "ℕ",
492
+ Not: "⫬",
493
+ NotCongruent: "≢",
494
+ NotCupCap: "≭",
495
+ NotDoubleVerticalBar: "∦",
496
+ NotElement: "∉",
497
+ NotEqual: "≠",
498
+ NotEqualTilde: "≂̸",
499
+ NotExists: "∄",
500
+ NotGreater: "≯",
501
+ NotGreaterEqual: "≱",
502
+ NotGreaterFullEqual: "≧̸",
503
+ NotGreaterGreater: "≫̸",
504
+ NotGreaterLess: "≹",
505
+ NotGreaterSlantEqual: "⩾̸",
506
+ NotGreaterTilde: "≵",
507
+ NotHumpDownHump: "≎̸",
508
+ NotHumpEqual: "≏̸",
509
+ NotLeftTriangle: "⋪",
510
+ NotLeftTriangleBar: "⧏̸",
511
+ NotLeftTriangleEqual: "⋬",
512
+ NotLess: "≮",
513
+ NotLessEqual: "≰",
514
+ NotLessGreater: "≸",
515
+ NotLessLess: "≪̸",
516
+ NotLessSlantEqual: "⩽̸",
517
+ NotLessTilde: "≴",
518
+ NotNestedGreaterGreater: "⪢̸",
519
+ NotNestedLessLess: "⪡̸",
520
+ NotPrecedes: "⊀",
521
+ NotPrecedesEqual: "⪯̸",
522
+ NotPrecedesSlantEqual: "⋠",
523
+ NotReverseElement: "∌",
524
+ NotRightTriangle: "⋫",
525
+ NotRightTriangleBar: "⧐̸",
526
+ NotRightTriangleEqual: "⋭",
527
+ NotSquareSubset: "⊏̸",
528
+ NotSquareSubsetEqual: "⋢",
529
+ NotSquareSuperset: "⊐̸",
530
+ NotSquareSupersetEqual: "⋣",
531
+ NotSubset: "⊂⃒",
532
+ NotSubsetEqual: "⊈",
533
+ NotSucceeds: "⊁",
534
+ NotSucceedsEqual: "⪰̸",
535
+ NotSucceedsSlantEqual: "⋡",
536
+ NotSucceedsTilde: "≿̸",
537
+ NotSuperset: "⊃⃒",
538
+ NotSupersetEqual: "⊉",
539
+ NotTilde: "≁",
540
+ NotTildeEqual: "≄",
541
+ NotTildeFullEqual: "≇",
542
+ NotTildeTilde: "≉",
543
+ NotVerticalBar: "∤",
544
+ Nscr: "𝒩",
545
+ Ntilde: "Ñ",
546
+ Nu: "Ν",
547
+ OElig: "Œ",
548
+ Oacute: "Ó",
549
+ Ocirc: "Ô",
550
+ Ocy: "О",
551
+ Odblac: "Ő",
552
+ Ofr: "𝔒",
553
+ Ograve: "Ò",
554
+ Omacr: "Ō",
555
+ Omega: "Ω",
556
+ Omicron: "Ο",
557
+ Oopf: "𝕆",
558
+ OpenCurlyDoubleQuote: "“",
559
+ OpenCurlyQuote: "‘",
560
+ Or: "⩔",
561
+ Oscr: "𝒪",
562
+ Oslash: "Ø",
563
+ Otilde: "Õ",
564
+ Otimes: "⨷",
565
+ Ouml: "Ö",
566
+ OverBar: "‾",
567
+ OverBrace: "⏞",
568
+ OverBracket: "⎴",
569
+ OverParenthesis: "⏜",
570
+ PartialD: "∂",
571
+ Pcy: "П",
572
+ Pfr: "𝔓",
573
+ Phi: "Φ",
574
+ Pi: "Π",
575
+ PlusMinus: "±",
576
+ Poincareplane: "ℌ",
577
+ Popf: "ℙ",
578
+ Pr: "⪻",
579
+ Precedes: "≺",
580
+ PrecedesEqual: "⪯",
581
+ PrecedesSlantEqual: "≼",
582
+ PrecedesTilde: "≾",
583
+ Prime: "″",
584
+ Product: "∏",
585
+ Proportion: "∷",
586
+ Proportional: "∝",
587
+ Pscr: "𝒫",
588
+ Psi: "Ψ",
589
+ QUOT: "\"",
590
+ Qfr: "𝔔",
591
+ Qopf: "ℚ",
592
+ Qscr: "𝒬",
593
+ RBarr: "⤐",
594
+ REG: "®",
595
+ Racute: "Ŕ",
596
+ Rang: "⟫",
597
+ Rarr: "↠",
598
+ Rarrtl: "⤖",
599
+ Rcaron: "Ř",
600
+ Rcedil: "Ŗ",
601
+ Rcy: "Р",
602
+ Re: "ℜ",
603
+ ReverseElement: "∋",
604
+ ReverseEquilibrium: "⇋",
605
+ ReverseUpEquilibrium: "⥯",
606
+ Rfr: "ℜ",
607
+ Rho: "Ρ",
608
+ RightAngleBracket: "⟩",
609
+ RightArrow: "→",
610
+ RightArrowBar: "⇥",
611
+ RightArrowLeftArrow: "⇄",
612
+ RightCeiling: "⌉",
613
+ RightDoubleBracket: "⟧",
614
+ RightDownTeeVector: "⥝",
615
+ RightDownVector: "⇂",
616
+ RightDownVectorBar: "⥕",
617
+ RightFloor: "⌋",
618
+ RightTee: "⊢",
619
+ RightTeeArrow: "↦",
620
+ RightTeeVector: "⥛",
621
+ RightTriangle: "⊳",
622
+ RightTriangleBar: "⧐",
623
+ RightTriangleEqual: "⊵",
624
+ RightUpDownVector: "⥏",
625
+ RightUpTeeVector: "⥜",
626
+ RightUpVector: "↾",
627
+ RightUpVectorBar: "⥔",
628
+ RightVector: "⇀",
629
+ RightVectorBar: "⥓",
630
+ Rightarrow: "⇒",
631
+ Ropf: "ℝ",
632
+ RoundImplies: "⥰",
633
+ Rrightarrow: "⇛",
634
+ Rscr: "ℛ",
635
+ Rsh: "↱",
636
+ RuleDelayed: "⧴",
637
+ SHCHcy: "Щ",
638
+ SHcy: "Ш",
639
+ SOFTcy: "Ь",
640
+ Sacute: "Ś",
641
+ Sc: "⪼",
642
+ Scaron: "Š",
643
+ Scedil: "Ş",
644
+ Scirc: "Ŝ",
645
+ Scy: "С",
646
+ Sfr: "𝔖",
647
+ ShortDownArrow: "↓",
648
+ ShortLeftArrow: "←",
649
+ ShortRightArrow: "→",
650
+ ShortUpArrow: "↑",
651
+ Sigma: "Σ",
652
+ SmallCircle: "∘",
653
+ Sopf: "𝕊",
654
+ Sqrt: "√",
655
+ Square: "□",
656
+ SquareIntersection: "⊓",
657
+ SquareSubset: "⊏",
658
+ SquareSubsetEqual: "⊑",
659
+ SquareSuperset: "⊐",
660
+ SquareSupersetEqual: "⊒",
661
+ SquareUnion: "⊔",
662
+ Sscr: "𝒮",
663
+ Star: "⋆",
664
+ Sub: "⋐",
665
+ Subset: "⋐",
666
+ SubsetEqual: "⊆",
667
+ Succeeds: "≻",
668
+ SucceedsEqual: "⪰",
669
+ SucceedsSlantEqual: "≽",
670
+ SucceedsTilde: "≿",
671
+ SuchThat: "∋",
672
+ Sum: "∑",
673
+ Sup: "⋑",
674
+ Superset: "⊃",
675
+ SupersetEqual: "⊇",
676
+ Supset: "⋑",
677
+ THORN: "Þ",
678
+ TRADE: "™",
679
+ TSHcy: "Ћ",
680
+ TScy: "Ц",
681
+ Tab: " ",
682
+ Tau: "Τ",
683
+ Tcaron: "Ť",
684
+ Tcedil: "Ţ",
685
+ Tcy: "Т",
686
+ Tfr: "𝔗",
687
+ Therefore: "∴",
688
+ Theta: "Θ",
689
+ ThickSpace: "  ",
690
+ ThinSpace: " ",
691
+ Tilde: "∼",
692
+ TildeEqual: "≃",
693
+ TildeFullEqual: "≅",
694
+ TildeTilde: "≈",
695
+ Topf: "𝕋",
696
+ TripleDot: "⃛",
697
+ Tscr: "𝒯",
698
+ Tstrok: "Ŧ",
699
+ Uacute: "Ú",
700
+ Uarr: "↟",
701
+ Uarrocir: "⥉",
702
+ Ubrcy: "Ў",
703
+ Ubreve: "Ŭ",
704
+ Ucirc: "Û",
705
+ Ucy: "У",
706
+ Udblac: "Ű",
707
+ Ufr: "𝔘",
708
+ Ugrave: "Ù",
709
+ Umacr: "Ū",
710
+ UnderBar: "_",
711
+ UnderBrace: "⏟",
712
+ UnderBracket: "⎵",
713
+ UnderParenthesis: "⏝",
714
+ Union: "⋃",
715
+ UnionPlus: "⊎",
716
+ Uogon: "Ų",
717
+ Uopf: "𝕌",
718
+ UpArrow: "↑",
719
+ UpArrowBar: "⤒",
720
+ UpArrowDownArrow: "⇅",
721
+ UpDownArrow: "↕",
722
+ UpEquilibrium: "⥮",
723
+ UpTee: "⊥",
724
+ UpTeeArrow: "↥",
725
+ Uparrow: "⇑",
726
+ Updownarrow: "⇕",
727
+ UpperLeftArrow: "↖",
728
+ UpperRightArrow: "↗",
729
+ Upsi: "ϒ",
730
+ Upsilon: "Υ",
731
+ Uring: "Ů",
732
+ Uscr: "𝒰",
733
+ Utilde: "Ũ",
734
+ Uuml: "Ü",
735
+ VDash: "⊫",
736
+ Vbar: "⫫",
737
+ Vcy: "В",
738
+ Vdash: "⊩",
739
+ Vdashl: "⫦",
740
+ Vee: "⋁",
741
+ Verbar: "‖",
742
+ Vert: "‖",
743
+ VerticalBar: "∣",
744
+ VerticalLine: "|",
745
+ VerticalSeparator: "❘",
746
+ VerticalTilde: "≀",
747
+ VeryThinSpace: " ",
748
+ Vfr: "𝔙",
749
+ Vopf: "𝕍",
750
+ Vscr: "𝒱",
751
+ Vvdash: "⊪",
752
+ Wcirc: "Ŵ",
753
+ Wedge: "⋀",
754
+ Wfr: "𝔚",
755
+ Wopf: "𝕎",
756
+ Wscr: "𝒲",
757
+ Xfr: "𝔛",
758
+ Xi: "Ξ",
759
+ Xopf: "𝕏",
760
+ Xscr: "𝒳",
761
+ YAcy: "Я",
762
+ YIcy: "Ї",
763
+ YUcy: "Ю",
764
+ Yacute: "Ý",
765
+ Ycirc: "Ŷ",
766
+ Ycy: "Ы",
767
+ Yfr: "𝔜",
768
+ Yopf: "𝕐",
769
+ Yscr: "𝒴",
770
+ Yuml: "Ÿ",
771
+ ZHcy: "Ж",
772
+ Zacute: "Ź",
773
+ Zcaron: "Ž",
774
+ Zcy: "З",
775
+ Zdot: "Ż",
776
+ ZeroWidthSpace: "​",
777
+ Zeta: "Ζ",
778
+ Zfr: "ℨ",
779
+ Zopf: "ℤ",
780
+ Zscr: "𝒵",
781
+ aacute: "á",
782
+ abreve: "ă",
783
+ ac: "∾",
784
+ acE: "∾̳",
785
+ acd: "∿",
786
+ acirc: "â",
787
+ acute: "´",
788
+ acy: "а",
789
+ aelig: "æ",
790
+ af: "⁡",
791
+ afr: "𝔞",
792
+ agrave: "à",
793
+ alefsym: "ℵ",
794
+ aleph: "ℵ",
795
+ alpha: "α",
796
+ amacr: "ā",
797
+ amalg: "⨿",
798
+ amp: "&",
799
+ and: "∧",
800
+ andand: "⩕",
801
+ andd: "⩜",
802
+ andslope: "⩘",
803
+ andv: "⩚",
804
+ ang: "∠",
805
+ ange: "⦤",
806
+ angle: "∠",
807
+ angmsd: "∡",
808
+ angmsdaa: "⦨",
809
+ angmsdab: "⦩",
810
+ angmsdac: "⦪",
811
+ angmsdad: "⦫",
812
+ angmsdae: "⦬",
813
+ angmsdaf: "⦭",
814
+ angmsdag: "⦮",
815
+ angmsdah: "⦯",
816
+ angrt: "∟",
817
+ angrtvb: "⊾",
818
+ angrtvbd: "⦝",
819
+ angsph: "∢",
820
+ angst: "Å",
821
+ angzarr: "⍼",
822
+ aogon: "ą",
823
+ aopf: "𝕒",
824
+ ap: "≈",
825
+ apE: "⩰",
826
+ apacir: "⩯",
827
+ ape: "≊",
828
+ apid: "≋",
829
+ apos: "'",
830
+ approx: "≈",
831
+ approxeq: "≊",
832
+ aring: "å",
833
+ ascr: "𝒶",
834
+ ast: "*",
835
+ asymp: "≈",
836
+ asympeq: "≍",
837
+ atilde: "ã",
838
+ auml: "ä",
839
+ awconint: "∳",
840
+ awint: "⨑",
841
+ bNot: "⫭",
842
+ backcong: "≌",
843
+ backepsilon: "϶",
844
+ backprime: "‵",
845
+ backsim: "∽",
846
+ backsimeq: "⋍",
847
+ barvee: "⊽",
848
+ barwed: "⌅",
849
+ barwedge: "⌅",
850
+ bbrk: "⎵",
851
+ bbrktbrk: "⎶",
852
+ bcong: "≌",
853
+ bcy: "б",
854
+ bdquo: "„",
855
+ becaus: "∵",
856
+ because: "∵",
857
+ bemptyv: "⦰",
858
+ bepsi: "϶",
859
+ bernou: "ℬ",
860
+ beta: "β",
861
+ beth: "ℶ",
862
+ between: "≬",
863
+ bfr: "𝔟",
864
+ bigcap: "⋂",
865
+ bigcirc: "◯",
866
+ bigcup: "⋃",
867
+ bigodot: "⨀",
868
+ bigoplus: "⨁",
869
+ bigotimes: "⨂",
870
+ bigsqcup: "⨆",
871
+ bigstar: "★",
872
+ bigtriangledown: "▽",
873
+ bigtriangleup: "△",
874
+ biguplus: "⨄",
875
+ bigvee: "⋁",
876
+ bigwedge: "⋀",
877
+ bkarow: "⤍",
878
+ blacklozenge: "⧫",
879
+ blacksquare: "▪",
880
+ blacktriangle: "▴",
881
+ blacktriangledown: "▾",
882
+ blacktriangleleft: "◂",
883
+ blacktriangleright: "▸",
884
+ blank: "␣",
885
+ blk12: "▒",
886
+ blk14: "░",
887
+ blk34: "▓",
888
+ block: "█",
889
+ bne: "=⃥",
890
+ bnequiv: "≡⃥",
891
+ bnot: "⌐",
892
+ bopf: "𝕓",
893
+ bot: "⊥",
894
+ bottom: "⊥",
895
+ bowtie: "⋈",
896
+ boxDL: "╗",
897
+ boxDR: "╔",
898
+ boxDl: "╖",
899
+ boxDr: "╓",
900
+ boxH: "═",
901
+ boxHD: "╦",
902
+ boxHU: "╩",
903
+ boxHd: "╤",
904
+ boxHu: "╧",
905
+ boxUL: "╝",
906
+ boxUR: "╚",
907
+ boxUl: "╜",
908
+ boxUr: "╙",
909
+ boxV: "║",
910
+ boxVH: "╬",
911
+ boxVL: "╣",
912
+ boxVR: "╠",
913
+ boxVh: "╫",
914
+ boxVl: "╢",
915
+ boxVr: "╟",
916
+ boxbox: "⧉",
917
+ boxdL: "╕",
918
+ boxdR: "╒",
919
+ boxdl: "┐",
920
+ boxdr: "┌",
921
+ boxh: "─",
922
+ boxhD: "╥",
923
+ boxhU: "╨",
924
+ boxhd: "┬",
925
+ boxhu: "┴",
926
+ boxminus: "⊟",
927
+ boxplus: "⊞",
928
+ boxtimes: "⊠",
929
+ boxuL: "╛",
930
+ boxuR: "╘",
931
+ boxul: "┘",
932
+ boxur: "└",
933
+ boxv: "│",
934
+ boxvH: "╪",
935
+ boxvL: "╡",
936
+ boxvR: "╞",
937
+ boxvh: "┼",
938
+ boxvl: "┤",
939
+ boxvr: "├",
940
+ bprime: "‵",
941
+ breve: "˘",
942
+ brvbar: "¦",
943
+ bscr: "𝒷",
944
+ bsemi: "⁏",
945
+ bsim: "∽",
946
+ bsime: "⋍",
947
+ bsol: "\\",
948
+ bsolb: "⧅",
949
+ bsolhsub: "⟈",
950
+ bull: "•",
951
+ bullet: "•",
952
+ bump: "≎",
953
+ bumpE: "⪮",
954
+ bumpe: "≏",
955
+ bumpeq: "≏",
956
+ cacute: "ć",
957
+ cap: "∩",
958
+ capand: "⩄",
959
+ capbrcup: "⩉",
960
+ capcap: "⩋",
961
+ capcup: "⩇",
962
+ capdot: "⩀",
963
+ caps: "∩︀",
964
+ caret: "⁁",
965
+ caron: "ˇ",
966
+ ccaps: "⩍",
967
+ ccaron: "č",
968
+ ccedil: "ç",
969
+ ccirc: "ĉ",
970
+ ccups: "⩌",
971
+ ccupssm: "⩐",
972
+ cdot: "ċ",
973
+ cedil: "¸",
974
+ cemptyv: "⦲",
975
+ cent: "¢",
976
+ centerdot: "·",
977
+ cfr: "𝔠",
978
+ chcy: "ч",
979
+ check: "✓",
980
+ checkmark: "✓",
981
+ chi: "χ",
982
+ cir: "○",
983
+ cirE: "⧃",
984
+ circ: "ˆ",
985
+ circeq: "≗",
986
+ circlearrowleft: "↺",
987
+ circlearrowright: "↻",
988
+ circledR: "®",
989
+ circledS: "Ⓢ",
990
+ circledast: "⊛",
991
+ circledcirc: "⊚",
992
+ circleddash: "⊝",
993
+ cire: "≗",
994
+ cirfnint: "⨐",
995
+ cirmid: "⫯",
996
+ cirscir: "⧂",
997
+ clubs: "♣",
998
+ clubsuit: "♣",
999
+ colon: ":",
1000
+ colone: "≔",
1001
+ coloneq: "≔",
1002
+ comma: ",",
1003
+ commat: "@",
1004
+ comp: "∁",
1005
+ compfn: "∘",
1006
+ complement: "∁",
1007
+ complexes: "ℂ",
1008
+ cong: "≅",
1009
+ congdot: "⩭",
1010
+ conint: "∮",
1011
+ copf: "𝕔",
1012
+ coprod: "∐",
1013
+ copy: "©",
1014
+ copysr: "℗",
1015
+ crarr: "↵",
1016
+ cross: "✗",
1017
+ cscr: "𝒸",
1018
+ csub: "⫏",
1019
+ csube: "⫑",
1020
+ csup: "⫐",
1021
+ csupe: "⫒",
1022
+ ctdot: "⋯",
1023
+ cudarrl: "⤸",
1024
+ cudarrr: "⤵",
1025
+ cuepr: "⋞",
1026
+ cuesc: "⋟",
1027
+ cularr: "↶",
1028
+ cularrp: "⤽",
1029
+ cup: "∪",
1030
+ cupbrcap: "⩈",
1031
+ cupcap: "⩆",
1032
+ cupcup: "⩊",
1033
+ cupdot: "⊍",
1034
+ cupor: "⩅",
1035
+ cups: "∪︀",
1036
+ curarr: "↷",
1037
+ curarrm: "⤼",
1038
+ curlyeqprec: "⋞",
1039
+ curlyeqsucc: "⋟",
1040
+ curlyvee: "⋎",
1041
+ curlywedge: "⋏",
1042
+ curren: "¤",
1043
+ curvearrowleft: "↶",
1044
+ curvearrowright: "↷",
1045
+ cuvee: "⋎",
1046
+ cuwed: "⋏",
1047
+ cwconint: "∲",
1048
+ cwint: "∱",
1049
+ cylcty: "⌭",
1050
+ dArr: "⇓",
1051
+ dHar: "⥥",
1052
+ dagger: "†",
1053
+ daleth: "ℸ",
1054
+ darr: "↓",
1055
+ dash: "‐",
1056
+ dashv: "⊣",
1057
+ dbkarow: "⤏",
1058
+ dblac: "˝",
1059
+ dcaron: "ď",
1060
+ dcy: "д",
1061
+ dd: "ⅆ",
1062
+ ddagger: "‡",
1063
+ ddarr: "⇊",
1064
+ ddotseq: "⩷",
1065
+ deg: "°",
1066
+ delta: "δ",
1067
+ demptyv: "⦱",
1068
+ dfisht: "⥿",
1069
+ dfr: "𝔡",
1070
+ dharl: "⇃",
1071
+ dharr: "⇂",
1072
+ diam: "⋄",
1073
+ diamond: "⋄",
1074
+ diamondsuit: "♦",
1075
+ diams: "♦",
1076
+ die: "¨",
1077
+ digamma: "ϝ",
1078
+ disin: "⋲",
1079
+ div: "÷",
1080
+ divide: "÷",
1081
+ divideontimes: "⋇",
1082
+ divonx: "⋇",
1083
+ djcy: "ђ",
1084
+ dlcorn: "⌞",
1085
+ dlcrop: "⌍",
1086
+ dollar: "$",
1087
+ dopf: "𝕕",
1088
+ dot: "˙",
1089
+ doteq: "≐",
1090
+ doteqdot: "≑",
1091
+ dotminus: "∸",
1092
+ dotplus: "∔",
1093
+ dotsquare: "⊡",
1094
+ doublebarwedge: "⌆",
1095
+ downarrow: "↓",
1096
+ downdownarrows: "⇊",
1097
+ downharpoonleft: "⇃",
1098
+ downharpoonright: "⇂",
1099
+ drbkarow: "⤐",
1100
+ drcorn: "⌟",
1101
+ drcrop: "⌌",
1102
+ dscr: "𝒹",
1103
+ dscy: "ѕ",
1104
+ dsol: "⧶",
1105
+ dstrok: "đ",
1106
+ dtdot: "⋱",
1107
+ dtri: "▿",
1108
+ dtrif: "▾",
1109
+ duarr: "⇵",
1110
+ duhar: "⥯",
1111
+ dwangle: "⦦",
1112
+ dzcy: "џ",
1113
+ dzigrarr: "⟿",
1114
+ eDDot: "⩷",
1115
+ eDot: "≑",
1116
+ eacute: "é",
1117
+ easter: "⩮",
1118
+ ecaron: "ě",
1119
+ ecir: "≖",
1120
+ ecirc: "ê",
1121
+ ecolon: "≕",
1122
+ ecy: "э",
1123
+ edot: "ė",
1124
+ ee: "ⅇ",
1125
+ efDot: "≒",
1126
+ efr: "𝔢",
1127
+ eg: "⪚",
1128
+ egrave: "è",
1129
+ egs: "⪖",
1130
+ egsdot: "⪘",
1131
+ el: "⪙",
1132
+ elinters: "⏧",
1133
+ ell: "ℓ",
1134
+ els: "⪕",
1135
+ elsdot: "⪗",
1136
+ emacr: "ē",
1137
+ empty: "∅",
1138
+ emptyset: "∅",
1139
+ emptyv: "∅",
1140
+ emsp13: " ",
1141
+ emsp14: " ",
1142
+ emsp: " ",
1143
+ eng: "ŋ",
1144
+ ensp: " ",
1145
+ eogon: "ę",
1146
+ eopf: "𝕖",
1147
+ epar: "⋕",
1148
+ eparsl: "⧣",
1149
+ eplus: "⩱",
1150
+ epsi: "ε",
1151
+ epsilon: "ε",
1152
+ epsiv: "ϵ",
1153
+ eqcirc: "≖",
1154
+ eqcolon: "≕",
1155
+ eqsim: "≂",
1156
+ eqslantgtr: "⪖",
1157
+ eqslantless: "⪕",
1158
+ equals: "=",
1159
+ equest: "≟",
1160
+ equiv: "≡",
1161
+ equivDD: "⩸",
1162
+ eqvparsl: "⧥",
1163
+ erDot: "≓",
1164
+ erarr: "⥱",
1165
+ escr: "ℯ",
1166
+ esdot: "≐",
1167
+ esim: "≂",
1168
+ eta: "η",
1169
+ eth: "ð",
1170
+ euml: "ë",
1171
+ euro: "€",
1172
+ excl: "!",
1173
+ exist: "∃",
1174
+ expectation: "ℰ",
1175
+ exponentiale: "ⅇ",
1176
+ fallingdotseq: "≒",
1177
+ fcy: "ф",
1178
+ female: "♀",
1179
+ ffilig: "ffi",
1180
+ fflig: "ff",
1181
+ ffllig: "ffl",
1182
+ ffr: "𝔣",
1183
+ filig: "fi",
1184
+ fjlig: "fj",
1185
+ flat: "♭",
1186
+ fllig: "fl",
1187
+ fltns: "▱",
1188
+ fnof: "ƒ",
1189
+ fopf: "𝕗",
1190
+ forall: "∀",
1191
+ fork: "⋔",
1192
+ forkv: "⫙",
1193
+ fpartint: "⨍",
1194
+ frac12: "½",
1195
+ frac13: "⅓",
1196
+ frac14: "¼",
1197
+ frac15: "⅕",
1198
+ frac16: "⅙",
1199
+ frac18: "⅛",
1200
+ frac23: "⅔",
1201
+ frac25: "⅖",
1202
+ frac34: "¾",
1203
+ frac35: "⅗",
1204
+ frac38: "⅜",
1205
+ frac45: "⅘",
1206
+ frac56: "⅚",
1207
+ frac58: "⅝",
1208
+ frac78: "⅞",
1209
+ frasl: "⁄",
1210
+ frown: "⌢",
1211
+ fscr: "𝒻",
1212
+ gE: "≧",
1213
+ gEl: "⪌",
1214
+ gacute: "ǵ",
1215
+ gamma: "γ",
1216
+ gammad: "ϝ",
1217
+ gap: "⪆",
1218
+ gbreve: "ğ",
1219
+ gcirc: "ĝ",
1220
+ gcy: "г",
1221
+ gdot: "ġ",
1222
+ ge: "≥",
1223
+ gel: "⋛",
1224
+ geq: "≥",
1225
+ geqq: "≧",
1226
+ geqslant: "⩾",
1227
+ ges: "⩾",
1228
+ gescc: "⪩",
1229
+ gesdot: "⪀",
1230
+ gesdoto: "⪂",
1231
+ gesdotol: "⪄",
1232
+ gesl: "⋛︀",
1233
+ gesles: "⪔",
1234
+ gfr: "𝔤",
1235
+ gg: "≫",
1236
+ ggg: "⋙",
1237
+ gimel: "ℷ",
1238
+ gjcy: "ѓ",
1239
+ gl: "≷",
1240
+ glE: "⪒",
1241
+ gla: "⪥",
1242
+ glj: "⪤",
1243
+ gnE: "≩",
1244
+ gnap: "⪊",
1245
+ gnapprox: "⪊",
1246
+ gne: "⪈",
1247
+ gneq: "⪈",
1248
+ gneqq: "≩",
1249
+ gnsim: "⋧",
1250
+ gopf: "𝕘",
1251
+ grave: "`",
1252
+ gscr: "ℊ",
1253
+ gsim: "≳",
1254
+ gsime: "⪎",
1255
+ gsiml: "⪐",
1256
+ gt: ">",
1257
+ gtcc: "⪧",
1258
+ gtcir: "⩺",
1259
+ gtdot: "⋗",
1260
+ gtlPar: "⦕",
1261
+ gtquest: "⩼",
1262
+ gtrapprox: "⪆",
1263
+ gtrarr: "⥸",
1264
+ gtrdot: "⋗",
1265
+ gtreqless: "⋛",
1266
+ gtreqqless: "⪌",
1267
+ gtrless: "≷",
1268
+ gtrsim: "≳",
1269
+ gvertneqq: "≩︀",
1270
+ gvnE: "≩︀",
1271
+ hArr: "⇔",
1272
+ hairsp: " ",
1273
+ half: "½",
1274
+ hamilt: "ℋ",
1275
+ hardcy: "ъ",
1276
+ harr: "↔",
1277
+ harrcir: "⥈",
1278
+ harrw: "↭",
1279
+ hbar: "ℏ",
1280
+ hcirc: "ĥ",
1281
+ hearts: "♥",
1282
+ heartsuit: "♥",
1283
+ hellip: "…",
1284
+ hercon: "⊹",
1285
+ hfr: "𝔥",
1286
+ hksearow: "⤥",
1287
+ hkswarow: "⤦",
1288
+ hoarr: "⇿",
1289
+ homtht: "∻",
1290
+ hookleftarrow: "↩",
1291
+ hookrightarrow: "↪",
1292
+ hopf: "𝕙",
1293
+ horbar: "―",
1294
+ hscr: "𝒽",
1295
+ hslash: "ℏ",
1296
+ hstrok: "ħ",
1297
+ hybull: "⁃",
1298
+ hyphen: "‐",
1299
+ iacute: "í",
1300
+ ic: "⁣",
1301
+ icirc: "î",
1302
+ icy: "и",
1303
+ iecy: "е",
1304
+ iexcl: "¡",
1305
+ iff: "⇔",
1306
+ ifr: "𝔦",
1307
+ igrave: "ì",
1308
+ ii: "ⅈ",
1309
+ iiiint: "⨌",
1310
+ iiint: "∭",
1311
+ iinfin: "⧜",
1312
+ iiota: "℩",
1313
+ ijlig: "ij",
1314
+ imacr: "ī",
1315
+ image: "ℑ",
1316
+ imagline: "ℐ",
1317
+ imagpart: "ℑ",
1318
+ imath: "ı",
1319
+ imof: "⊷",
1320
+ imped: "Ƶ",
1321
+ in: "∈",
1322
+ incare: "℅",
1323
+ infin: "∞",
1324
+ infintie: "⧝",
1325
+ inodot: "ı",
1326
+ int: "∫",
1327
+ intcal: "⊺",
1328
+ integers: "ℤ",
1329
+ intercal: "⊺",
1330
+ intlarhk: "⨗",
1331
+ intprod: "⨼",
1332
+ iocy: "ё",
1333
+ iogon: "į",
1334
+ iopf: "𝕚",
1335
+ iota: "ι",
1336
+ iprod: "⨼",
1337
+ iquest: "¿",
1338
+ iscr: "𝒾",
1339
+ isin: "∈",
1340
+ isinE: "⋹",
1341
+ isindot: "⋵",
1342
+ isins: "⋴",
1343
+ isinsv: "⋳",
1344
+ isinv: "∈",
1345
+ it: "⁢",
1346
+ itilde: "ĩ",
1347
+ iukcy: "і",
1348
+ iuml: "ï",
1349
+ jcirc: "ĵ",
1350
+ jcy: "й",
1351
+ jfr: "𝔧",
1352
+ jmath: "ȷ",
1353
+ jopf: "𝕛",
1354
+ jscr: "𝒿",
1355
+ jsercy: "ј",
1356
+ jukcy: "є",
1357
+ kappa: "κ",
1358
+ kappav: "ϰ",
1359
+ kcedil: "ķ",
1360
+ kcy: "к",
1361
+ kfr: "𝔨",
1362
+ kgreen: "ĸ",
1363
+ khcy: "х",
1364
+ kjcy: "ќ",
1365
+ kopf: "𝕜",
1366
+ kscr: "𝓀",
1367
+ lAarr: "⇚",
1368
+ lArr: "⇐",
1369
+ lAtail: "⤛",
1370
+ lBarr: "⤎",
1371
+ lE: "≦",
1372
+ lEg: "⪋",
1373
+ lHar: "⥢",
1374
+ lacute: "ĺ",
1375
+ laemptyv: "⦴",
1376
+ lagran: "ℒ",
1377
+ lambda: "λ",
1378
+ lang: "⟨",
1379
+ langd: "⦑",
1380
+ langle: "⟨",
1381
+ lap: "⪅",
1382
+ laquo: "«",
1383
+ larr: "←",
1384
+ larrb: "⇤",
1385
+ larrbfs: "⤟",
1386
+ larrfs: "⤝",
1387
+ larrhk: "↩",
1388
+ larrlp: "↫",
1389
+ larrpl: "⤹",
1390
+ larrsim: "⥳",
1391
+ larrtl: "↢",
1392
+ lat: "⪫",
1393
+ latail: "⤙",
1394
+ late: "⪭",
1395
+ lates: "⪭︀",
1396
+ lbarr: "⤌",
1397
+ lbbrk: "❲",
1398
+ lbrace: "{",
1399
+ lbrack: "[",
1400
+ lbrke: "⦋",
1401
+ lbrksld: "⦏",
1402
+ lbrkslu: "⦍",
1403
+ lcaron: "ľ",
1404
+ lcedil: "ļ",
1405
+ lceil: "⌈",
1406
+ lcub: "{",
1407
+ lcy: "л",
1408
+ ldca: "⤶",
1409
+ ldquo: "“",
1410
+ ldquor: "„",
1411
+ ldrdhar: "⥧",
1412
+ ldrushar: "⥋",
1413
+ ldsh: "↲",
1414
+ le: "≤",
1415
+ leftarrow: "←",
1416
+ leftarrowtail: "↢",
1417
+ leftharpoondown: "↽",
1418
+ leftharpoonup: "↼",
1419
+ leftleftarrows: "⇇",
1420
+ leftrightarrow: "↔",
1421
+ leftrightarrows: "⇆",
1422
+ leftrightharpoons: "⇋",
1423
+ leftrightsquigarrow: "↭",
1424
+ leftthreetimes: "⋋",
1425
+ leg: "⋚",
1426
+ leq: "≤",
1427
+ leqq: "≦",
1428
+ leqslant: "⩽",
1429
+ les: "⩽",
1430
+ lescc: "⪨",
1431
+ lesdot: "⩿",
1432
+ lesdoto: "⪁",
1433
+ lesdotor: "⪃",
1434
+ lesg: "⋚︀",
1435
+ lesges: "⪓",
1436
+ lessapprox: "⪅",
1437
+ lessdot: "⋖",
1438
+ lesseqgtr: "⋚",
1439
+ lesseqqgtr: "⪋",
1440
+ lessgtr: "≶",
1441
+ lesssim: "≲",
1442
+ lfisht: "⥼",
1443
+ lfloor: "⌊",
1444
+ lfr: "𝔩",
1445
+ lg: "≶",
1446
+ lgE: "⪑",
1447
+ lhard: "↽",
1448
+ lharu: "↼",
1449
+ lharul: "⥪",
1450
+ lhblk: "▄",
1451
+ ljcy: "љ",
1452
+ ll: "≪",
1453
+ llarr: "⇇",
1454
+ llcorner: "⌞",
1455
+ llhard: "⥫",
1456
+ lltri: "◺",
1457
+ lmidot: "ŀ",
1458
+ lmoust: "⎰",
1459
+ lmoustache: "⎰",
1460
+ lnE: "≨",
1461
+ lnap: "⪉",
1462
+ lnapprox: "⪉",
1463
+ lne: "⪇",
1464
+ lneq: "⪇",
1465
+ lneqq: "≨",
1466
+ lnsim: "⋦",
1467
+ loang: "⟬",
1468
+ loarr: "⇽",
1469
+ lobrk: "⟦",
1470
+ longleftarrow: "⟵",
1471
+ longleftrightarrow: "⟷",
1472
+ longmapsto: "⟼",
1473
+ longrightarrow: "⟶",
1474
+ looparrowleft: "↫",
1475
+ looparrowright: "↬",
1476
+ lopar: "⦅",
1477
+ lopf: "𝕝",
1478
+ loplus: "⨭",
1479
+ lotimes: "⨴",
1480
+ lowast: "∗",
1481
+ lowbar: "_",
1482
+ loz: "◊",
1483
+ lozenge: "◊",
1484
+ lozf: "⧫",
1485
+ lpar: "(",
1486
+ lparlt: "⦓",
1487
+ lrarr: "⇆",
1488
+ lrcorner: "⌟",
1489
+ lrhar: "⇋",
1490
+ lrhard: "⥭",
1491
+ lrm: "‎",
1492
+ lrtri: "⊿",
1493
+ lsaquo: "‹",
1494
+ lscr: "𝓁",
1495
+ lsh: "↰",
1496
+ lsim: "≲",
1497
+ lsime: "⪍",
1498
+ lsimg: "⪏",
1499
+ lsqb: "[",
1500
+ lsquo: "‘",
1501
+ lsquor: "‚",
1502
+ lstrok: "ł",
1503
+ lt: "<",
1504
+ ltcc: "⪦",
1505
+ ltcir: "⩹",
1506
+ ltdot: "⋖",
1507
+ lthree: "⋋",
1508
+ ltimes: "⋉",
1509
+ ltlarr: "⥶",
1510
+ ltquest: "⩻",
1511
+ ltrPar: "⦖",
1512
+ ltri: "◃",
1513
+ ltrie: "⊴",
1514
+ ltrif: "◂",
1515
+ lurdshar: "⥊",
1516
+ luruhar: "⥦",
1517
+ lvertneqq: "≨︀",
1518
+ lvnE: "≨︀",
1519
+ mDDot: "∺",
1520
+ macr: "¯",
1521
+ male: "♂",
1522
+ malt: "✠",
1523
+ maltese: "✠",
1524
+ map: "↦",
1525
+ mapsto: "↦",
1526
+ mapstodown: "↧",
1527
+ mapstoleft: "↤",
1528
+ mapstoup: "↥",
1529
+ marker: "▮",
1530
+ mcomma: "⨩",
1531
+ mcy: "м",
1532
+ mdash: "—",
1533
+ measuredangle: "∡",
1534
+ mfr: "𝔪",
1535
+ mho: "℧",
1536
+ micro: "µ",
1537
+ mid: "∣",
1538
+ midast: "*",
1539
+ midcir: "⫰",
1540
+ middot: "·",
1541
+ minus: "−",
1542
+ minusb: "⊟",
1543
+ minusd: "∸",
1544
+ minusdu: "⨪",
1545
+ mlcp: "⫛",
1546
+ mldr: "…",
1547
+ mnplus: "∓",
1548
+ models: "⊧",
1549
+ mopf: "𝕞",
1550
+ mp: "∓",
1551
+ mscr: "𝓂",
1552
+ mstpos: "∾",
1553
+ mu: "μ",
1554
+ multimap: "⊸",
1555
+ mumap: "⊸",
1556
+ nGg: "⋙̸",
1557
+ nGt: "≫⃒",
1558
+ nGtv: "≫̸",
1559
+ nLeftarrow: "⇍",
1560
+ nLeftrightarrow: "⇎",
1561
+ nLl: "⋘̸",
1562
+ nLt: "≪⃒",
1563
+ nLtv: "≪̸",
1564
+ nRightarrow: "⇏",
1565
+ nVDash: "⊯",
1566
+ nVdash: "⊮",
1567
+ nabla: "∇",
1568
+ nacute: "ń",
1569
+ nang: "∠⃒",
1570
+ nap: "≉",
1571
+ napE: "⩰̸",
1572
+ napid: "≋̸",
1573
+ napos: "ʼn",
1574
+ napprox: "≉",
1575
+ natur: "♮",
1576
+ natural: "♮",
1577
+ naturals: "ℕ",
1578
+ nbsp: "\xA0",
1579
+ nbump: "≎̸",
1580
+ nbumpe: "≏̸",
1581
+ ncap: "⩃",
1582
+ ncaron: "ň",
1583
+ ncedil: "ņ",
1584
+ ncong: "≇",
1585
+ ncongdot: "⩭̸",
1586
+ ncup: "⩂",
1587
+ ncy: "н",
1588
+ ndash: "–",
1589
+ ne: "≠",
1590
+ neArr: "⇗",
1591
+ nearhk: "⤤",
1592
+ nearr: "↗",
1593
+ nearrow: "↗",
1594
+ nedot: "≐̸",
1595
+ nequiv: "≢",
1596
+ nesear: "⤨",
1597
+ nesim: "≂̸",
1598
+ nexist: "∄",
1599
+ nexists: "∄",
1600
+ nfr: "𝔫",
1601
+ ngE: "≧̸",
1602
+ nge: "≱",
1603
+ ngeq: "≱",
1604
+ ngeqq: "≧̸",
1605
+ ngeqslant: "⩾̸",
1606
+ nges: "⩾̸",
1607
+ ngsim: "≵",
1608
+ ngt: "≯",
1609
+ ngtr: "≯",
1610
+ nhArr: "⇎",
1611
+ nharr: "↮",
1612
+ nhpar: "⫲",
1613
+ ni: "∋",
1614
+ nis: "⋼",
1615
+ nisd: "⋺",
1616
+ niv: "∋",
1617
+ njcy: "њ",
1618
+ nlArr: "⇍",
1619
+ nlE: "≦̸",
1620
+ nlarr: "↚",
1621
+ nldr: "‥",
1622
+ nle: "≰",
1623
+ nleftarrow: "↚",
1624
+ nleftrightarrow: "↮",
1625
+ nleq: "≰",
1626
+ nleqq: "≦̸",
1627
+ nleqslant: "⩽̸",
1628
+ nles: "⩽̸",
1629
+ nless: "≮",
1630
+ nlsim: "≴",
1631
+ nlt: "≮",
1632
+ nltri: "⋪",
1633
+ nltrie: "⋬",
1634
+ nmid: "∤",
1635
+ nopf: "𝕟",
1636
+ not: "¬",
1637
+ notin: "∉",
1638
+ notinE: "⋹̸",
1639
+ notindot: "⋵̸",
1640
+ notinva: "∉",
1641
+ notinvb: "⋷",
1642
+ notinvc: "⋶",
1643
+ notni: "∌",
1644
+ notniva: "∌",
1645
+ notnivb: "⋾",
1646
+ notnivc: "⋽",
1647
+ npar: "∦",
1648
+ nparallel: "∦",
1649
+ nparsl: "⫽⃥",
1650
+ npart: "∂̸",
1651
+ npolint: "⨔",
1652
+ npr: "⊀",
1653
+ nprcue: "⋠",
1654
+ npre: "⪯̸",
1655
+ nprec: "⊀",
1656
+ npreceq: "⪯̸",
1657
+ nrArr: "⇏",
1658
+ nrarr: "↛",
1659
+ nrarrc: "⤳̸",
1660
+ nrarrw: "↝̸",
1661
+ nrightarrow: "↛",
1662
+ nrtri: "⋫",
1663
+ nrtrie: "⋭",
1664
+ nsc: "⊁",
1665
+ nsccue: "⋡",
1666
+ nsce: "⪰̸",
1667
+ nscr: "𝓃",
1668
+ nshortmid: "∤",
1669
+ nshortparallel: "∦",
1670
+ nsim: "≁",
1671
+ nsime: "≄",
1672
+ nsimeq: "≄",
1673
+ nsmid: "∤",
1674
+ nspar: "∦",
1675
+ nsqsube: "⋢",
1676
+ nsqsupe: "⋣",
1677
+ nsub: "⊄",
1678
+ nsubE: "⫅̸",
1679
+ nsube: "⊈",
1680
+ nsubset: "⊂⃒",
1681
+ nsubseteq: "⊈",
1682
+ nsubseteqq: "⫅̸",
1683
+ nsucc: "⊁",
1684
+ nsucceq: "⪰̸",
1685
+ nsup: "⊅",
1686
+ nsupE: "⫆̸",
1687
+ nsupe: "⊉",
1688
+ nsupset: "⊃⃒",
1689
+ nsupseteq: "⊉",
1690
+ nsupseteqq: "⫆̸",
1691
+ ntgl: "≹",
1692
+ ntilde: "ñ",
1693
+ ntlg: "≸",
1694
+ ntriangleleft: "⋪",
1695
+ ntrianglelefteq: "⋬",
1696
+ ntriangleright: "⋫",
1697
+ ntrianglerighteq: "⋭",
1698
+ nu: "ν",
1699
+ num: "#",
1700
+ numero: "№",
1701
+ numsp: " ",
1702
+ nvDash: "⊭",
1703
+ nvHarr: "⤄",
1704
+ nvap: "≍⃒",
1705
+ nvdash: "⊬",
1706
+ nvge: "≥⃒",
1707
+ nvgt: ">⃒",
1708
+ nvinfin: "⧞",
1709
+ nvlArr: "⤂",
1710
+ nvle: "≤⃒",
1711
+ nvlt: "<⃒",
1712
+ nvltrie: "⊴⃒",
1713
+ nvrArr: "⤃",
1714
+ nvrtrie: "⊵⃒",
1715
+ nvsim: "∼⃒",
1716
+ nwArr: "⇖",
1717
+ nwarhk: "⤣",
1718
+ nwarr: "↖",
1719
+ nwarrow: "↖",
1720
+ nwnear: "⤧",
1721
+ oS: "Ⓢ",
1722
+ oacute: "ó",
1723
+ oast: "⊛",
1724
+ ocir: "⊚",
1725
+ ocirc: "ô",
1726
+ ocy: "о",
1727
+ odash: "⊝",
1728
+ odblac: "ő",
1729
+ odiv: "⨸",
1730
+ odot: "⊙",
1731
+ odsold: "⦼",
1732
+ oelig: "œ",
1733
+ ofcir: "⦿",
1734
+ ofr: "𝔬",
1735
+ ogon: "˛",
1736
+ ograve: "ò",
1737
+ ogt: "⧁",
1738
+ ohbar: "⦵",
1739
+ ohm: "Ω",
1740
+ oint: "∮",
1741
+ olarr: "↺",
1742
+ olcir: "⦾",
1743
+ olcross: "⦻",
1744
+ oline: "‾",
1745
+ olt: "⧀",
1746
+ omacr: "ō",
1747
+ omega: "ω",
1748
+ omicron: "ο",
1749
+ omid: "⦶",
1750
+ ominus: "⊖",
1751
+ oopf: "𝕠",
1752
+ opar: "⦷",
1753
+ operp: "⦹",
1754
+ oplus: "⊕",
1755
+ or: "∨",
1756
+ orarr: "↻",
1757
+ ord: "⩝",
1758
+ order: "ℴ",
1759
+ orderof: "ℴ",
1760
+ ordf: "ª",
1761
+ ordm: "º",
1762
+ origof: "⊶",
1763
+ oror: "⩖",
1764
+ orslope: "⩗",
1765
+ orv: "⩛",
1766
+ oscr: "ℴ",
1767
+ oslash: "ø",
1768
+ osol: "⊘",
1769
+ otilde: "õ",
1770
+ otimes: "⊗",
1771
+ otimesas: "⨶",
1772
+ ouml: "ö",
1773
+ ovbar: "⌽",
1774
+ par: "∥",
1775
+ para: "¶",
1776
+ parallel: "∥",
1777
+ parsim: "⫳",
1778
+ parsl: "⫽",
1779
+ part: "∂",
1780
+ pcy: "п",
1781
+ percnt: "%",
1782
+ period: ".",
1783
+ permil: "‰",
1784
+ perp: "⊥",
1785
+ pertenk: "‱",
1786
+ pfr: "𝔭",
1787
+ phi: "φ",
1788
+ phiv: "ϕ",
1789
+ phmmat: "ℳ",
1790
+ phone: "☎",
1791
+ pi: "π",
1792
+ pitchfork: "⋔",
1793
+ piv: "ϖ",
1794
+ planck: "ℏ",
1795
+ planckh: "ℎ",
1796
+ plankv: "ℏ",
1797
+ plus: "+",
1798
+ plusacir: "⨣",
1799
+ plusb: "⊞",
1800
+ pluscir: "⨢",
1801
+ plusdo: "∔",
1802
+ plusdu: "⨥",
1803
+ pluse: "⩲",
1804
+ plusmn: "±",
1805
+ plussim: "⨦",
1806
+ plustwo: "⨧",
1807
+ pm: "±",
1808
+ pointint: "⨕",
1809
+ popf: "𝕡",
1810
+ pound: "£",
1811
+ pr: "≺",
1812
+ prE: "⪳",
1813
+ prap: "⪷",
1814
+ prcue: "≼",
1815
+ pre: "⪯",
1816
+ prec: "≺",
1817
+ precapprox: "⪷",
1818
+ preccurlyeq: "≼",
1819
+ preceq: "⪯",
1820
+ precnapprox: "⪹",
1821
+ precneqq: "⪵",
1822
+ precnsim: "⋨",
1823
+ precsim: "≾",
1824
+ prime: "′",
1825
+ primes: "ℙ",
1826
+ prnE: "⪵",
1827
+ prnap: "⪹",
1828
+ prnsim: "⋨",
1829
+ prod: "∏",
1830
+ profalar: "⌮",
1831
+ profline: "⌒",
1832
+ profsurf: "⌓",
1833
+ prop: "∝",
1834
+ propto: "∝",
1835
+ prsim: "≾",
1836
+ prurel: "⊰",
1837
+ pscr: "𝓅",
1838
+ psi: "ψ",
1839
+ puncsp: " ",
1840
+ qfr: "𝔮",
1841
+ qint: "⨌",
1842
+ qopf: "𝕢",
1843
+ qprime: "⁗",
1844
+ qscr: "𝓆",
1845
+ quaternions: "ℍ",
1846
+ quatint: "⨖",
1847
+ quest: "?",
1848
+ questeq: "≟",
1849
+ quot: "\"",
1850
+ rAarr: "⇛",
1851
+ rArr: "⇒",
1852
+ rAtail: "⤜",
1853
+ rBarr: "⤏",
1854
+ rHar: "⥤",
1855
+ race: "∽̱",
1856
+ racute: "ŕ",
1857
+ radic: "√",
1858
+ raemptyv: "⦳",
1859
+ rang: "⟩",
1860
+ rangd: "⦒",
1861
+ range: "⦥",
1862
+ rangle: "⟩",
1863
+ raquo: "»",
1864
+ rarr: "→",
1865
+ rarrap: "⥵",
1866
+ rarrb: "⇥",
1867
+ rarrbfs: "⤠",
1868
+ rarrc: "⤳",
1869
+ rarrfs: "⤞",
1870
+ rarrhk: "↪",
1871
+ rarrlp: "↬",
1872
+ rarrpl: "⥅",
1873
+ rarrsim: "⥴",
1874
+ rarrtl: "↣",
1875
+ rarrw: "↝",
1876
+ ratail: "⤚",
1877
+ ratio: "∶",
1878
+ rationals: "ℚ",
1879
+ rbarr: "⤍",
1880
+ rbbrk: "❳",
1881
+ rbrace: "}",
1882
+ rbrack: "]",
1883
+ rbrke: "⦌",
1884
+ rbrksld: "⦎",
1885
+ rbrkslu: "⦐",
1886
+ rcaron: "ř",
1887
+ rcedil: "ŗ",
1888
+ rceil: "⌉",
1889
+ rcub: "}",
1890
+ rcy: "р",
1891
+ rdca: "⤷",
1892
+ rdldhar: "⥩",
1893
+ rdquo: "”",
1894
+ rdquor: "”",
1895
+ rdsh: "↳",
1896
+ real: "ℜ",
1897
+ realine: "ℛ",
1898
+ realpart: "ℜ",
1899
+ reals: "ℝ",
1900
+ rect: "▭",
1901
+ reg: "®",
1902
+ rfisht: "⥽",
1903
+ rfloor: "⌋",
1904
+ rfr: "𝔯",
1905
+ rhard: "⇁",
1906
+ rharu: "⇀",
1907
+ rharul: "⥬",
1908
+ rho: "ρ",
1909
+ rhov: "ϱ",
1910
+ rightarrow: "→",
1911
+ rightarrowtail: "↣",
1912
+ rightharpoondown: "⇁",
1913
+ rightharpoonup: "⇀",
1914
+ rightleftarrows: "⇄",
1915
+ rightleftharpoons: "⇌",
1916
+ rightrightarrows: "⇉",
1917
+ rightsquigarrow: "↝",
1918
+ rightthreetimes: "⋌",
1919
+ ring: "˚",
1920
+ risingdotseq: "≓",
1921
+ rlarr: "⇄",
1922
+ rlhar: "⇌",
1923
+ rlm: "‏",
1924
+ rmoust: "⎱",
1925
+ rmoustache: "⎱",
1926
+ rnmid: "⫮",
1927
+ roang: "⟭",
1928
+ roarr: "⇾",
1929
+ robrk: "⟧",
1930
+ ropar: "⦆",
1931
+ ropf: "𝕣",
1932
+ roplus: "⨮",
1933
+ rotimes: "⨵",
1934
+ rpar: ")",
1935
+ rpargt: "⦔",
1936
+ rppolint: "⨒",
1937
+ rrarr: "⇉",
1938
+ rsaquo: "›",
1939
+ rscr: "𝓇",
1940
+ rsh: "↱",
1941
+ rsqb: "]",
1942
+ rsquo: "’",
1943
+ rsquor: "’",
1944
+ rthree: "⋌",
1945
+ rtimes: "⋊",
1946
+ rtri: "▹",
1947
+ rtrie: "⊵",
1948
+ rtrif: "▸",
1949
+ rtriltri: "⧎",
1950
+ ruluhar: "⥨",
1951
+ rx: "℞",
1952
+ sacute: "ś",
1953
+ sbquo: "‚",
1954
+ sc: "≻",
1955
+ scE: "⪴",
1956
+ scap: "⪸",
1957
+ scaron: "š",
1958
+ sccue: "≽",
1959
+ sce: "⪰",
1960
+ scedil: "ş",
1961
+ scirc: "ŝ",
1962
+ scnE: "⪶",
1963
+ scnap: "⪺",
1964
+ scnsim: "⋩",
1965
+ scpolint: "⨓",
1966
+ scsim: "≿",
1967
+ scy: "с",
1968
+ sdot: "⋅",
1969
+ sdotb: "⊡",
1970
+ sdote: "⩦",
1971
+ seArr: "⇘",
1972
+ searhk: "⤥",
1973
+ searr: "↘",
1974
+ searrow: "↘",
1975
+ sect: "§",
1976
+ semi: ";",
1977
+ seswar: "⤩",
1978
+ setminus: "∖",
1979
+ setmn: "∖",
1980
+ sext: "✶",
1981
+ sfr: "𝔰",
1982
+ sfrown: "⌢",
1983
+ sharp: "♯",
1984
+ shchcy: "щ",
1985
+ shcy: "ш",
1986
+ shortmid: "∣",
1987
+ shortparallel: "∥",
1988
+ shy: "­",
1989
+ sigma: "σ",
1990
+ sigmaf: "ς",
1991
+ sigmav: "ς",
1992
+ sim: "∼",
1993
+ simdot: "⩪",
1994
+ sime: "≃",
1995
+ simeq: "≃",
1996
+ simg: "⪞",
1997
+ simgE: "⪠",
1998
+ siml: "⪝",
1999
+ simlE: "⪟",
2000
+ simne: "≆",
2001
+ simplus: "⨤",
2002
+ simrarr: "⥲",
2003
+ slarr: "←",
2004
+ smallsetminus: "∖",
2005
+ smashp: "⨳",
2006
+ smeparsl: "⧤",
2007
+ smid: "∣",
2008
+ smile: "⌣",
2009
+ smt: "⪪",
2010
+ smte: "⪬",
2011
+ smtes: "⪬︀",
2012
+ softcy: "ь",
2013
+ sol: "/",
2014
+ solb: "⧄",
2015
+ solbar: "⌿",
2016
+ sopf: "𝕤",
2017
+ spades: "♠",
2018
+ spadesuit: "♠",
2019
+ spar: "∥",
2020
+ sqcap: "⊓",
2021
+ sqcaps: "⊓︀",
2022
+ sqcup: "⊔",
2023
+ sqcups: "⊔︀",
2024
+ sqsub: "⊏",
2025
+ sqsube: "⊑",
2026
+ sqsubset: "⊏",
2027
+ sqsubseteq: "⊑",
2028
+ sqsup: "⊐",
2029
+ sqsupe: "⊒",
2030
+ sqsupset: "⊐",
2031
+ sqsupseteq: "⊒",
2032
+ squ: "□",
2033
+ square: "□",
2034
+ squarf: "▪",
2035
+ squf: "▪",
2036
+ srarr: "→",
2037
+ sscr: "𝓈",
2038
+ ssetmn: "∖",
2039
+ ssmile: "⌣",
2040
+ sstarf: "⋆",
2041
+ star: "☆",
2042
+ starf: "★",
2043
+ straightepsilon: "ϵ",
2044
+ straightphi: "ϕ",
2045
+ strns: "¯",
2046
+ sub: "⊂",
2047
+ subE: "⫅",
2048
+ subdot: "⪽",
2049
+ sube: "⊆",
2050
+ subedot: "⫃",
2051
+ submult: "⫁",
2052
+ subnE: "⫋",
2053
+ subne: "⊊",
2054
+ subplus: "⪿",
2055
+ subrarr: "⥹",
2056
+ subset: "⊂",
2057
+ subseteq: "⊆",
2058
+ subseteqq: "⫅",
2059
+ subsetneq: "⊊",
2060
+ subsetneqq: "⫋",
2061
+ subsim: "⫇",
2062
+ subsub: "⫕",
2063
+ subsup: "⫓",
2064
+ succ: "≻",
2065
+ succapprox: "⪸",
2066
+ succcurlyeq: "≽",
2067
+ succeq: "⪰",
2068
+ succnapprox: "⪺",
2069
+ succneqq: "⪶",
2070
+ succnsim: "⋩",
2071
+ succsim: "≿",
2072
+ sum: "∑",
2073
+ sung: "♪",
2074
+ sup1: "¹",
2075
+ sup2: "²",
2076
+ sup3: "³",
2077
+ sup: "⊃",
2078
+ supE: "⫆",
2079
+ supdot: "⪾",
2080
+ supdsub: "⫘",
2081
+ supe: "⊇",
2082
+ supedot: "⫄",
2083
+ suphsol: "⟉",
2084
+ suphsub: "⫗",
2085
+ suplarr: "⥻",
2086
+ supmult: "⫂",
2087
+ supnE: "⫌",
2088
+ supne: "⊋",
2089
+ supplus: "⫀",
2090
+ supset: "⊃",
2091
+ supseteq: "⊇",
2092
+ supseteqq: "⫆",
2093
+ supsetneq: "⊋",
2094
+ supsetneqq: "⫌",
2095
+ supsim: "⫈",
2096
+ supsub: "⫔",
2097
+ supsup: "⫖",
2098
+ swArr: "⇙",
2099
+ swarhk: "⤦",
2100
+ swarr: "↙",
2101
+ swarrow: "↙",
2102
+ swnwar: "⤪",
2103
+ szlig: "ß",
2104
+ target: "⌖",
2105
+ tau: "τ",
2106
+ tbrk: "⎴",
2107
+ tcaron: "ť",
2108
+ tcedil: "ţ",
2109
+ tcy: "т",
2110
+ tdot: "⃛",
2111
+ telrec: "⌕",
2112
+ tfr: "𝔱",
2113
+ there4: "∴",
2114
+ therefore: "∴",
2115
+ theta: "θ",
2116
+ thetasym: "ϑ",
2117
+ thetav: "ϑ",
2118
+ thickapprox: "≈",
2119
+ thicksim: "∼",
2120
+ thinsp: " ",
2121
+ thkap: "≈",
2122
+ thksim: "∼",
2123
+ thorn: "þ",
2124
+ tilde: "˜",
2125
+ times: "×",
2126
+ timesb: "⊠",
2127
+ timesbar: "⨱",
2128
+ timesd: "⨰",
2129
+ tint: "∭",
2130
+ toea: "⤨",
2131
+ top: "⊤",
2132
+ topbot: "⌶",
2133
+ topcir: "⫱",
2134
+ topf: "𝕥",
2135
+ topfork: "⫚",
2136
+ tosa: "⤩",
2137
+ tprime: "‴",
2138
+ trade: "™",
2139
+ triangle: "▵",
2140
+ triangledown: "▿",
2141
+ triangleleft: "◃",
2142
+ trianglelefteq: "⊴",
2143
+ triangleq: "≜",
2144
+ triangleright: "▹",
2145
+ trianglerighteq: "⊵",
2146
+ tridot: "◬",
2147
+ trie: "≜",
2148
+ triminus: "⨺",
2149
+ triplus: "⨹",
2150
+ trisb: "⧍",
2151
+ tritime: "⨻",
2152
+ trpezium: "⏢",
2153
+ tscr: "𝓉",
2154
+ tscy: "ц",
2155
+ tshcy: "ћ",
2156
+ tstrok: "ŧ",
2157
+ twixt: "≬",
2158
+ twoheadleftarrow: "↞",
2159
+ twoheadrightarrow: "↠",
2160
+ uArr: "⇑",
2161
+ uHar: "⥣",
2162
+ uacute: "ú",
2163
+ uarr: "↑",
2164
+ ubrcy: "ў",
2165
+ ubreve: "ŭ",
2166
+ ucirc: "û",
2167
+ ucy: "у",
2168
+ udarr: "⇅",
2169
+ udblac: "ű",
2170
+ udhar: "⥮",
2171
+ ufisht: "⥾",
2172
+ ufr: "𝔲",
2173
+ ugrave: "ù",
2174
+ uharl: "↿",
2175
+ uharr: "↾",
2176
+ uhblk: "▀",
2177
+ ulcorn: "⌜",
2178
+ ulcorner: "⌜",
2179
+ ulcrop: "⌏",
2180
+ ultri: "◸",
2181
+ umacr: "ū",
2182
+ uml: "¨",
2183
+ uogon: "ų",
2184
+ uopf: "𝕦",
2185
+ uparrow: "↑",
2186
+ updownarrow: "↕",
2187
+ upharpoonleft: "↿",
2188
+ upharpoonright: "↾",
2189
+ uplus: "⊎",
2190
+ upsi: "υ",
2191
+ upsih: "ϒ",
2192
+ upsilon: "υ",
2193
+ upuparrows: "⇈",
2194
+ urcorn: "⌝",
2195
+ urcorner: "⌝",
2196
+ urcrop: "⌎",
2197
+ uring: "ů",
2198
+ urtri: "◹",
2199
+ uscr: "𝓊",
2200
+ utdot: "⋰",
2201
+ utilde: "ũ",
2202
+ utri: "▵",
2203
+ utrif: "▴",
2204
+ uuarr: "⇈",
2205
+ uuml: "ü",
2206
+ uwangle: "⦧",
2207
+ vArr: "⇕",
2208
+ vBar: "⫨",
2209
+ vBarv: "⫩",
2210
+ vDash: "⊨",
2211
+ vangrt: "⦜",
2212
+ varepsilon: "ϵ",
2213
+ varkappa: "ϰ",
2214
+ varnothing: "∅",
2215
+ varphi: "ϕ",
2216
+ varpi: "ϖ",
2217
+ varpropto: "∝",
2218
+ varr: "↕",
2219
+ varrho: "ϱ",
2220
+ varsigma: "ς",
2221
+ varsubsetneq: "⊊︀",
2222
+ varsubsetneqq: "⫋︀",
2223
+ varsupsetneq: "⊋︀",
2224
+ varsupsetneqq: "⫌︀",
2225
+ vartheta: "ϑ",
2226
+ vartriangleleft: "⊲",
2227
+ vartriangleright: "⊳",
2228
+ vcy: "в",
2229
+ vdash: "⊢",
2230
+ vee: "∨",
2231
+ veebar: "⊻",
2232
+ veeeq: "≚",
2233
+ vellip: "⋮",
2234
+ verbar: "|",
2235
+ vert: "|",
2236
+ vfr: "𝔳",
2237
+ vltri: "⊲",
2238
+ vnsub: "⊂⃒",
2239
+ vnsup: "⊃⃒",
2240
+ vopf: "𝕧",
2241
+ vprop: "∝",
2242
+ vrtri: "⊳",
2243
+ vscr: "𝓋",
2244
+ vsubnE: "⫋︀",
2245
+ vsubne: "⊊︀",
2246
+ vsupnE: "⫌︀",
2247
+ vsupne: "⊋︀",
2248
+ vzigzag: "⦚",
2249
+ wcirc: "ŵ",
2250
+ wedbar: "⩟",
2251
+ wedge: "∧",
2252
+ wedgeq: "≙",
2253
+ weierp: "℘",
2254
+ wfr: "𝔴",
2255
+ wopf: "𝕨",
2256
+ wp: "℘",
2257
+ wr: "≀",
2258
+ wreath: "≀",
2259
+ wscr: "𝓌",
2260
+ xcap: "⋂",
2261
+ xcirc: "◯",
2262
+ xcup: "⋃",
2263
+ xdtri: "▽",
2264
+ xfr: "𝔵",
2265
+ xhArr: "⟺",
2266
+ xharr: "⟷",
2267
+ xi: "ξ",
2268
+ xlArr: "⟸",
2269
+ xlarr: "⟵",
2270
+ xmap: "⟼",
2271
+ xnis: "⋻",
2272
+ xodot: "⨀",
2273
+ xopf: "𝕩",
2274
+ xoplus: "⨁",
2275
+ xotime: "⨂",
2276
+ xrArr: "⟹",
2277
+ xrarr: "⟶",
2278
+ xscr: "𝓍",
2279
+ xsqcup: "⨆",
2280
+ xuplus: "⨄",
2281
+ xutri: "△",
2282
+ xvee: "⋁",
2283
+ xwedge: "⋀",
2284
+ yacute: "ý",
2285
+ yacy: "я",
2286
+ ycirc: "ŷ",
2287
+ ycy: "ы",
2288
+ yen: "¥",
2289
+ yfr: "𝔶",
2290
+ yicy: "ї",
2291
+ yopf: "𝕪",
2292
+ yscr: "𝓎",
2293
+ yucy: "ю",
2294
+ yuml: "ÿ",
2295
+ zacute: "ź",
2296
+ zcaron: "ž",
2297
+ zcy: "з",
2298
+ zdot: "ż",
2299
+ zeetrf: "ℨ",
2300
+ zeta: "ζ",
2301
+ zfr: "𝔷",
2302
+ zhcy: "ж",
2303
+ zigrarr: "⇝",
2304
+ zopf: "𝕫",
2305
+ zscr: "𝓏",
2306
+ zwj: "‍",
2307
+ zwnj: "‌"
2308
+ };
2309
+
2310
+ //#endregion
2311
+ //#region node_modules/.pnpm/decode-named-character-reference@1.2.0/node_modules/decode-named-character-reference/index.js
2312
+ const own$4 = {}.hasOwnProperty;
174
2313
  /**
2314
+ * Decode a single character reference (without the `&` or `;`).
2315
+ * You probably only need this when you’re building parsers yourself that follow
2316
+ * different rules compared to HTML.
2317
+ * This is optimized to be tiny in browsers.
2318
+ *
175
2319
  * @param {string} value
176
- * @returns {string | false}
2320
+ * `notin` (named), `#123` (deci), `#x123` (hexa).
2321
+ * @returns {string|false}
2322
+ * Decoded reference.
177
2323
  */
178
2324
  function decodeNamedCharacterReference(value$1) {
179
- const characterReference$1 = "&" + value$1 + ";";
180
- element.innerHTML = characterReference$1;
181
- const character = element.textContent;
182
- if (character.charCodeAt(character.length - 1) === 59 && value$1 !== "semi") return false;
183
- return character === characterReference$1 ? false : character;
2325
+ return own$4.call(characterEntities, value$1) ? characterEntities[value$1] : false;
184
2326
  }
185
2327
 
186
2328
  //#endregion
@@ -750,7 +2892,7 @@ function initializeContent(effects) {
750
2892
  * Construct and its state.
751
2893
  */
752
2894
  /** @type {InitialConstruct} */
753
- const document$1 = { tokenize: initializeDocument };
2895
+ const document = { tokenize: initializeDocument };
754
2896
  /** @type {Construct} */
755
2897
  const containerConstruct = { tokenize: tokenizeContainer };
756
2898
  /**
@@ -6845,7 +8987,7 @@ var constructs_exports = /* @__PURE__ */ __export({
6845
8987
  attentionMarkers: () => attentionMarkers,
6846
8988
  contentInitial: () => contentInitial,
6847
8989
  disable: () => disable,
6848
- document: () => document$2,
8990
+ document: () => document$1,
6849
8991
  flow: () => flow$2,
6850
8992
  flowInitial: () => flowInitial,
6851
8993
  insideSpan: () => insideSpan,
@@ -6853,7 +8995,7 @@ var constructs_exports = /* @__PURE__ */ __export({
6853
8995
  text: () => text$3
6854
8996
  });
6855
8997
  /** @satisfies {Extension['document']} */
6856
- const document$2 = {
8998
+ const document$1 = {
6857
8999
  [42]: list$2,
6858
9000
  [43]: list$2,
6859
9001
  [45]: list$2,
@@ -7408,7 +9550,7 @@ function parse(options) {
7408
9550
  constructs: combineExtensions([constructs_exports, ...(options || {}).extensions || []]),
7409
9551
  content: create$1(content),
7410
9552
  defined: [],
7411
- document: create$1(document$1),
9553
+ document: create$1(document),
7412
9554
  flow: create$1(flow$1),
7413
9555
  lazy: {},
7414
9556
  string: create$1(string),
@@ -16066,7 +18208,7 @@ var EditMap = class {
16066
18208
  events.length = 0;
16067
18209
  let slice = vecs.pop();
16068
18210
  while (slice) {
16069
- for (const element$1 of slice) events.push(element$1);
18211
+ for (const element of slice) events.push(element);
16070
18212
  slice = vecs.pop();
16071
18213
  }
16072
18214
  this.map.length = 0;
@@ -17498,6 +19640,17 @@ function math(options) {
17498
19640
  };
17499
19641
  }
17500
19642
 
19643
+ //#endregion
19644
+ //#region src/postprocess/footnote.ts
19645
+ function postFixFootnote(data) {
19646
+ const footnoteDefinitions = treeFlatFilter(data.children, (node$1) => node$1.type === "footnoteDefinition");
19647
+ const filtered = treeFilter(data.children, (node$1) => node$1.type !== "footnoteDefinition");
19648
+ return {
19649
+ ...data,
19650
+ children: [...filtered, ...footnoteDefinitions]
19651
+ };
19652
+ }
19653
+
17501
19654
  //#endregion
17502
19655
  //#region src/postprocess/text.ts
17503
19656
  function postFixText(data) {
@@ -17512,6 +19665,9 @@ function postFixText(data) {
17512
19665
 
17513
19666
  //#endregion
17514
19667
  //#region src/postprocess/index.ts
19668
+ function postNormalize(data) {
19669
+ return flow([postFixFootnote])(data);
19670
+ }
17515
19671
  function postprocess(data) {
17516
19672
  return flow([postFixText])(data);
17517
19673
  }
@@ -17531,14 +19687,24 @@ const singleUnderscorePattern = /_/g;
17531
19687
  const doubleTildePattern = /~~/g;
17532
19688
  const doubleDollarPattern = /\$\$/g;
17533
19689
  const incompleteBracketPattern = /!?\[[^\]]*$/;
17534
- const incompleteLinkTextPattern = /!?\[[^\]]+\]\s*$/;
17535
- const incompleteUrlPattern = /!?\[[^\]]+\]\([^)]*$/;
19690
+ const incompleteLinkTextPattern = /!?\[[^\]]*\]\s*$/;
19691
+ const incompleteUrlPattern = /!?\[[^\]]*\]\([^)]*$/;
19692
+ const incompleteFootnoteRefPattern = /\[\^[^\]]*$/;
19693
+ const trailingStandaloneBracketPattern = /(\[)\s*$/;
19694
+ const footnoteDefPattern = /\[\^[^\]]+\]:/g;
19695
+ const footnoteRefPattern = /\[\^[^\]]+\]/g;
19696
+ const footnoteDefLinePattern = /^\s*\[\^[^\]]+\]:/;
19697
+ const footnoteDefLabelPattern = /\[\^([^\]]+)\]:/;
19698
+ const footnoteRefLabelPattern = /\[\^([^\]]+)\]/;
17536
19699
  const tableRowPattern = /^\|.*\|.*\|/;
17537
19700
  const separatorPattern = /^\|[\s:]*-{3,}[\s:]*(?:\|[\s:]*-{3,}[\s:]*)+\|?$/;
17538
19701
  const standaloneDashPattern = /^\s*-$/;
17539
19702
  const taskListPattern = /^\s*- \[[x ]\]/i;
19703
+ const incompleteTaskListPattern = /^\s*-\s*\[\s*$/;
17540
19704
  const quoteStandaloneDashPattern = /^>\s*-$/;
17541
19705
  const quoteTaskListPattern = /^>\s*- \[[x ]\]/i;
19706
+ const quoteIncompleteTaskListPattern = /^>\s*-\s*\[\s*$/;
19707
+ const trailingStandaloneDashWithNewlinesPattern = /(\n\n?)-[ \t]*$/;
17542
19708
 
17543
19709
  //#endregion
17544
19710
  //#region src/preprocess/code.ts
@@ -17586,7 +19752,7 @@ function fixCode(content$2) {
17586
19752
  */
17587
19753
  function removeTrailingIncompleteBackticks(content$2) {
17588
19754
  const match = content$2.match(trailingBackticksPattern);
17589
- if (!match) return content$2;
19755
+ if (!match || !match[1]) return content$2;
17590
19756
  const backtickSequence = match[1];
17591
19757
  const backtickPos = content$2.lastIndexOf(backtickSequence);
17592
19758
  const beforeBackticks = content$2.substring(0, backtickPos);
@@ -17624,7 +19790,7 @@ function fixCodeBlock(content$2) {
17624
19790
  const lastFenceIndex = content$2.lastIndexOf("```");
17625
19791
  const afterFence = content$2.substring(lastFenceIndex + 3);
17626
19792
  const hasNewline = afterFence.includes("\n");
17627
- if ((hasNewline ? afterFence.split("\n")[0] : afterFence).trim().length > 0 || hasNewline) {
19793
+ if ((hasNewline ? afterFence.split("\n")[0] ?? "" : afterFence).trim().length > 0 || hasNewline) {
17628
19794
  if (!content$2.endsWith("\n")) return `${content$2}\n\`\`\``;
17629
19795
  return `${content$2}\`\`\``;
17630
19796
  } else return content$2.slice(0, -3);
@@ -17749,18 +19915,207 @@ function fixEmphasis(content$2) {
17749
19915
  if ((asteriskMatches ? asteriskMatches.length : 0) % 2 === 1) {
17750
19916
  const lastStarPos = withoutDoubleAsterisk.lastIndexOf("*");
17751
19917
  if (withoutDoubleAsterisk.substring(lastStarPos + 1).trim().length > 0) return `${content$2}*`;
17752
- else return content$2.slice(0, -1);
19918
+ else {
19919
+ let result = content$2.slice(0, -1);
19920
+ if (trailingStandaloneDashWithNewlinesPattern.test(result)) result = result.replace(trailingStandaloneDashWithNewlinesPattern, "$1");
19921
+ return result;
19922
+ }
17753
19923
  }
17754
19924
  const withoutDoubleUnderscore = lastParagraph.replace(doubleUnderscorePattern, "");
17755
19925
  const underscoreMatches = withoutDoubleUnderscore.match(singleUnderscorePattern);
17756
19926
  if ((underscoreMatches ? underscoreMatches.length : 0) % 2 === 1) {
17757
19927
  const lastUnderscorePos = withoutDoubleUnderscore.lastIndexOf("_");
17758
19928
  if (withoutDoubleUnderscore.substring(lastUnderscorePos + 1).trim().length > 0) return `${content$2}_`;
17759
- else return content$2.slice(0, -1);
19929
+ else {
19930
+ let result = content$2.slice(0, -1);
19931
+ if (trailingStandaloneDashWithNewlinesPattern.test(result)) result = result.replace(trailingStandaloneDashWithNewlinesPattern, "$1");
19932
+ return result;
19933
+ }
17760
19934
  }
17761
19935
  return content$2;
17762
19936
  }
17763
19937
 
19938
+ //#endregion
19939
+ //#region src/preprocess/footnote.ts
19940
+ /**
19941
+ * Remove incomplete footnote references ([^...]) in streaming markdown
19942
+ *
19943
+ * Processes the entire content to remove footnote references that don't have
19944
+ * corresponding definitions. This is necessary because footnote references can
19945
+ * appear anywhere in the document, while definitions typically appear at the end.
19946
+ *
19947
+ * A footnote reference is considered incomplete if there's no corresponding
19948
+ * footnote definition ([^...]:) in the entire content.
19949
+ *
19950
+ * @param content - Markdown content (potentially incomplete in stream mode)
19951
+ * @returns Content with incomplete footnote references removed
19952
+ *
19953
+ * @example
19954
+ * fixFootnote('Text [^1] and [^2]')
19955
+ * // Returns: 'Text [^1] and [^2]' (if [^1]: and [^2]: exist)
19956
+ * // Returns: 'Text and ' (if definitions don't exist)
19957
+ *
19958
+ * @example
19959
+ * fixFootnote('Para1 [^1]\n\nPara2 [^2]')
19960
+ * // Removes [^1] and [^2] if their definitions don't exist
19961
+ *
19962
+ * @example
19963
+ * fixFootnote('```\n[^1]\n```\n\nText [^1]')
19964
+ * // Code block content is ignored, only processes Text [^1]
19965
+ */
19966
+ function fixFootnote(content$2) {
19967
+ const codeBlockMatches = content$2.match(tripleBacktickPattern);
19968
+ if ((codeBlockMatches ? codeBlockMatches.length : 0) % 2 === 1) return content$2;
19969
+ const defMatches = content$2.replace(codeBlockPattern, "").match(footnoteDefPattern);
19970
+ const definedLabels = /* @__PURE__ */ new Set();
19971
+ if (defMatches) for (const def of defMatches) {
19972
+ const labelMatch = def.match(footnoteDefLabelPattern);
19973
+ if (labelMatch && labelMatch[1]) definedLabels.add(labelMatch[1]);
19974
+ }
19975
+ const isFootnoteDefLine = (line) => footnoteDefLinePattern.test(line);
19976
+ const lines = content$2.split("\n");
19977
+ const codeBlockRanges = [];
19978
+ let searchStart = 0;
19979
+ while (true) {
19980
+ const codeBlockStart = content$2.indexOf("```", searchStart);
19981
+ if (codeBlockStart === -1) break;
19982
+ const codeBlockEnd = content$2.indexOf("```", codeBlockStart + 3);
19983
+ if (codeBlockEnd === -1) break;
19984
+ codeBlockRanges.push({
19985
+ start: codeBlockStart,
19986
+ end: codeBlockEnd + 3
19987
+ });
19988
+ searchStart = codeBlockEnd + 3;
19989
+ }
19990
+ const inlineCodeRanges = [];
19991
+ const backtickPositions = [];
19992
+ for (let i = 0; i < content$2.length; i++) {
19993
+ if (content$2.substring(i).startsWith("```")) {
19994
+ const codeBlockEnd = content$2.indexOf("```", i + 3);
19995
+ if (codeBlockEnd !== -1) {
19996
+ i = codeBlockEnd + 2;
19997
+ continue;
19998
+ }
19999
+ }
20000
+ if (content$2[i] === "`") {
20001
+ const before = content$2[i - 1] || "";
20002
+ const before2 = content$2[i - 2] || "";
20003
+ const after = content$2[i + 1] || "";
20004
+ const after2 = content$2[i + 2] || "";
20005
+ if (!(before === "`" && before2 === "`" || before === "`" && after === "`" || after === "`" && after2 === "`")) backtickPositions.push(i);
20006
+ }
20007
+ }
20008
+ for (let i = 0; i < backtickPositions.length; i += 2) if (i + 1 < backtickPositions.length) {
20009
+ const start = backtickPositions[i];
20010
+ const end = backtickPositions[i + 1] + 1;
20011
+ inlineCodeRanges.push({
20012
+ start,
20013
+ end
20014
+ });
20015
+ }
20016
+ const footnoteDefRanges = [];
20017
+ let lineOffset = 0;
20018
+ for (let i = 0; i < lines.length; i++) {
20019
+ const line = lines[i];
20020
+ if (isFootnoteDefLine(line)) {
20021
+ const lineEnd = lineOffset + line.length;
20022
+ footnoteDefRanges.push({
20023
+ start: lineOffset,
20024
+ end: lineEnd
20025
+ });
20026
+ }
20027
+ lineOffset += line.length + 1;
20028
+ }
20029
+ let lastParagraphStartIndex = 0;
20030
+ for (let i = lines.length - 1; i >= 0; i--) if (lines[i].trim() === "") {
20031
+ lastParagraphStartIndex = i + 1;
20032
+ break;
20033
+ }
20034
+ const lastParagraph = lines.slice(lastParagraphStartIndex).join("\n");
20035
+ let result = content$2;
20036
+ if (incompleteFootnoteRefPattern.test(lastParagraph)) {
20037
+ const incompleteRefPos = lastParagraph.lastIndexOf("[^");
20038
+ if (incompleteRefPos !== -1) {
20039
+ const absolutePos = lastParagraphStartIndex > 0 ? lines.slice(0, lastParagraphStartIndex).join("\n").length + 1 + incompleteRefPos : incompleteRefPos;
20040
+ const isInCodeBlock = codeBlockRanges.some((range) => absolutePos >= range.start && absolutePos < range.end);
20041
+ const isInInlineCode = inlineCodeRanges.some((range) => absolutePos >= range.start && absolutePos < range.end);
20042
+ if (!isInCodeBlock && !isInInlineCode) {
20043
+ const lineEnd = lastParagraph.indexOf("\n", incompleteRefPos);
20044
+ const refEnd = lineEnd !== -1 ? lineEnd : lastParagraph.length;
20045
+ const beforeLastParagraph = lines.slice(0, lastParagraphStartIndex).join("\n");
20046
+ const paragraphOffset = beforeLastParagraph.length > 0 ? beforeLastParagraph.length + 1 : 0;
20047
+ const absoluteStart = paragraphOffset + incompleteRefPos;
20048
+ const absoluteEnd = paragraphOffset + refEnd;
20049
+ result = result.substring(0, absoluteStart) + result.substring(absoluteEnd);
20050
+ content$2 = result;
20051
+ codeBlockRanges.length = 0;
20052
+ searchStart = 0;
20053
+ while (true) {
20054
+ const codeBlockStart = content$2.indexOf("```", searchStart);
20055
+ if (codeBlockStart === -1) break;
20056
+ const codeBlockEnd = content$2.indexOf("```", codeBlockStart + 3);
20057
+ if (codeBlockEnd === -1) break;
20058
+ codeBlockRanges.push({
20059
+ start: codeBlockStart,
20060
+ end: codeBlockEnd + 3
20061
+ });
20062
+ searchStart = codeBlockEnd + 3;
20063
+ }
20064
+ inlineCodeRanges.length = 0;
20065
+ backtickPositions.length = 0;
20066
+ for (let i = 0; i < content$2.length; i++) {
20067
+ if (content$2.substring(i).startsWith("```")) {
20068
+ const codeBlockEnd = content$2.indexOf("```", i + 3);
20069
+ if (codeBlockEnd !== -1) {
20070
+ i = codeBlockEnd + 2;
20071
+ continue;
20072
+ }
20073
+ }
20074
+ if (content$2[i] === "`") {
20075
+ const before = content$2[i - 1] || "";
20076
+ const before2 = content$2[i - 2] || "";
20077
+ const after = content$2[i + 1] || "";
20078
+ const after2 = content$2[i + 2] || "";
20079
+ if (!(before === "`" && before2 === "`" || before === "`" && after === "`" || after === "`" && after2 === "`")) backtickPositions.push(i);
20080
+ }
20081
+ }
20082
+ for (let i = 0; i < backtickPositions.length; i += 2) if (i + 1 < backtickPositions.length) {
20083
+ const start = backtickPositions[i];
20084
+ const end = backtickPositions[i + 1] + 1;
20085
+ inlineCodeRanges.push({
20086
+ start,
20087
+ end
20088
+ });
20089
+ }
20090
+ }
20091
+ }
20092
+ }
20093
+ const refPositions = [];
20094
+ let refMatch = footnoteRefPattern.exec(content$2);
20095
+ while (refMatch !== null) {
20096
+ const absolutePos = refMatch.index;
20097
+ const refText = refMatch[0];
20098
+ const isInCodeBlock = codeBlockRanges.some((range) => absolutePos >= range.start && absolutePos < range.end);
20099
+ const isInInlineCode = inlineCodeRanges.some((range) => absolutePos >= range.start && absolutePos < range.end);
20100
+ const isInFootnoteDef = footnoteDefRanges.some((range) => absolutePos >= range.start && absolutePos < range.end);
20101
+ if (!isInCodeBlock && !isInInlineCode && !isInFootnoteDef) {
20102
+ const labelMatch = refText.match(footnoteRefLabelPattern);
20103
+ if (labelMatch && labelMatch[1]) refPositions.push({
20104
+ start: absolutePos,
20105
+ end: absolutePos + refText.length,
20106
+ label: labelMatch[1]
20107
+ });
20108
+ }
20109
+ refMatch = footnoteRefPattern.exec(content$2);
20110
+ }
20111
+ if (refPositions.length === 0) return content$2;
20112
+ for (let i = refPositions.length - 1; i >= 0; i--) {
20113
+ const ref$1 = refPositions[i];
20114
+ if (!definedLabels.has(ref$1.label)) result = result.substring(0, ref$1.start) + result.substring(ref$1.end);
20115
+ }
20116
+ return result;
20117
+ }
20118
+
17764
20119
  //#endregion
17765
20120
  //#region src/preprocess/inline-math.ts
17766
20121
  /**
@@ -17814,13 +20169,16 @@ function fixInlineMath(content$2) {
17814
20169
  shouldRemoveTrailingDollar = true;
17815
20170
  afterLast = afterLast.slice(0, -1);
17816
20171
  }
17817
- const hasContentAfter = afterLast.split("\n")[0].trim().length > 0;
20172
+ const hasContentAfter = (afterLast.split("\n")[0] ?? "").trim().length > 0;
17818
20173
  const isBlockMathByAfter = !hasContentAfter && afterLast.startsWith("\n");
17819
20174
  const linesInParagraph = lastParagraph.split("\n");
17820
20175
  let lineWithDollar = "";
17821
- for (let i = linesInParagraph.length - 1; i >= 0; i--) if (linesInParagraph[i].includes("$$")) {
17822
- lineWithDollar = linesInParagraph[i];
17823
- break;
20176
+ for (let i = linesInParagraph.length - 1; i >= 0; i--) {
20177
+ const line = linesInParagraph[i];
20178
+ if (line.includes("$$")) {
20179
+ lineWithDollar = line;
20180
+ break;
20181
+ }
17824
20182
  }
17825
20183
  const isBlockMathByLine = lineWithDollar.replace(/\$\$/g, "").trim() === "" && afterLast.startsWith("\n");
17826
20184
  if (isBlockMathByAfter || isBlockMathByLine) return content$2;
@@ -17903,8 +20261,19 @@ function findLastDollarPairNotInCodeBlock(text$4) {
17903
20261
  * @example
17904
20262
  * fixLink('![alt](https://image.png')
17905
20263
  * // Returns: '![alt](https://image.png)'
20264
+ *
20265
+ * @example
20266
+ * fixLink('Text [')
20267
+ * // Returns: 'Text '
20268
+ * // Removes trailing standalone [ without content
20269
+ *
20270
+ * @example
20271
+ * fixLink('Text [\n')
20272
+ * // Returns: 'Text '
20273
+ * // Removes trailing standalone bracket and trailing newline
17906
20274
  */
17907
20275
  function fixLink(content$2) {
20276
+ var _lines$lastNonEmptyLi;
17908
20277
  const lines = content$2.split("\n");
17909
20278
  let paragraphStartIndex = 0;
17910
20279
  for (let i = lines.length - 1; i >= 0; i--) if (lines[i].trim() === "") {
@@ -17912,6 +20281,25 @@ function fixLink(content$2) {
17912
20281
  break;
17913
20282
  }
17914
20283
  const lastParagraph = lines.slice(paragraphStartIndex).join("\n");
20284
+ let lastNonEmptyLineIndex = lines.length - 1;
20285
+ while (lastNonEmptyLineIndex >= 0 && ((_lines$lastNonEmptyLi = lines[lastNonEmptyLineIndex]) === null || _lines$lastNonEmptyLi === void 0 ? void 0 : _lines$lastNonEmptyLi.trim()) === "") lastNonEmptyLineIndex--;
20286
+ if (lastNonEmptyLineIndex >= 0) {
20287
+ const lastLine = lines[lastNonEmptyLineIndex];
20288
+ if (trailingStandaloneBracketPattern.test(lastLine)) {
20289
+ const bracketMatch = lastLine.match(trailingStandaloneBracketPattern);
20290
+ if (bracketMatch) {
20291
+ const bracket = bracketMatch[1];
20292
+ const bracketPos = lastLine.lastIndexOf(bracket);
20293
+ if (lastLine.substring(bracketPos + bracket.length).trim().length === 0) {
20294
+ const newLine = lastLine.substring(0, bracketPos);
20295
+ const newLines = [...lines];
20296
+ newLines[lastNonEmptyLineIndex] = newLine;
20297
+ if (lastNonEmptyLineIndex + 1 < newLines.length && newLines[lastNonEmptyLineIndex + 1].trim() === "") newLines.splice(lastNonEmptyLineIndex + 1, 1);
20298
+ return newLines.join("\n");
20299
+ }
20300
+ }
20301
+ }
20302
+ }
17915
20303
  if (incompleteBracketPattern.test(lastParagraph)) return `${content$2}]()`;
17916
20304
  if (incompleteLinkTextPattern.test(lastParagraph)) return `${content$2}()`;
17917
20305
  if (incompleteUrlPattern.test(lastParagraph)) return `${content$2})`;
@@ -17957,13 +20345,21 @@ function fixStrong(content$2) {
17957
20345
  if ((asteriskMatches ? asteriskMatches.length : 0) % 2 === 1) {
17958
20346
  const lastStarPos = lastParagraph.lastIndexOf("**");
17959
20347
  if (lastParagraph.substring(lastStarPos + 2).trim().length > 0) return `${content$2}**`;
17960
- else return content$2.slice(0, -2);
20348
+ else {
20349
+ let result = content$2.slice(0, -2);
20350
+ if (trailingStandaloneDashWithNewlinesPattern.test(result)) result = result.replace(trailingStandaloneDashWithNewlinesPattern, "$1");
20351
+ return result;
20352
+ }
17961
20353
  }
17962
20354
  const underscoreMatches = lastParagraph.match(doubleUnderscorePattern);
17963
20355
  if ((underscoreMatches ? underscoreMatches.length : 0) % 2 === 1) {
17964
20356
  const lastUnderscorePos = lastParagraph.lastIndexOf("__");
17965
20357
  if (lastParagraph.substring(lastUnderscorePos + 2).trim().length > 0) return `${content$2}__`;
17966
- else return content$2.slice(0, -2);
20358
+ else {
20359
+ let result = content$2.slice(0, -2);
20360
+ if (trailingStandaloneDashWithNewlinesPattern.test(result)) result = result.replace(trailingStandaloneDashWithNewlinesPattern, "$1");
20361
+ return result;
20362
+ }
17967
20363
  }
17968
20364
  return content$2;
17969
20365
  }
@@ -18002,8 +20398,9 @@ function fixTable(content$2) {
18002
20398
  const lines = content$2.split("\n");
18003
20399
  let paragraphStartIndex = 0;
18004
20400
  for (let i = lines.length - 1; i >= 0; i--) {
18005
- if (i === lines.length - 1 && lines[i].trim() === "") continue;
18006
- if (lines[i].trim() === "") {
20401
+ const line = lines[i];
20402
+ if (i === lines.length - 1 && line.trim() === "") continue;
20403
+ if (line.trim() === "") {
18007
20404
  paragraphStartIndex = i + 1;
18008
20405
  break;
18009
20406
  }
@@ -18073,12 +20470,13 @@ function generateSeparator(columns) {
18073
20470
  * Fix incomplete task list syntax in streaming markdown
18074
20471
  *
18075
20472
  * Removes standalone `-` that appears on the last line without `[ ]` or `[x]` syntax.
20473
+ * Also removes incomplete task list items like `- [` that are being typed incrementally.
18076
20474
  * This prevents AST parsing jitter when task list items are being typed incrementally.
18077
20475
  * Also handles quote blocks (lines starting with `>`) to prevent leaving `> ` which could
18078
20476
  * cause the previous line to be misparsed as a heading.
18079
20477
  *
18080
20478
  * @param content - Markdown content (potentially incomplete in stream mode)
18081
- * @returns Content with standalone `-` removed from the last line if incomplete
20479
+ * @returns Content with standalone `-` or incomplete `- [` removed from the last line if incomplete
18082
20480
  *
18083
20481
  * @example
18084
20482
  * fixTaskList('- [ ] Task 1\n-')
@@ -18089,6 +20487,10 @@ function generateSeparator(columns) {
18089
20487
  * // Returns: '- [ ] Task 1\n- [x] Task 2\n'
18090
20488
  *
18091
20489
  * @example
20490
+ * fixTaskList('- [ ] Task 1\n - [')
20491
+ * // Returns: '- [ ] Task 1\n'
20492
+ *
20493
+ * @example
18092
20494
  * fixTaskList('> **Note**: Here\'s a quote with tasks:\n\n> -')
18093
20495
  * // Returns: '> **Note**: Here\'s a quote with tasks:\n\n'
18094
20496
  */
@@ -18096,11 +20498,21 @@ function fixTaskList(content$2) {
18096
20498
  const lines = content$2.split("\n");
18097
20499
  if (lines.length === 0) return content$2;
18098
20500
  const lastLine = lines[lines.length - 1];
20501
+ if (quoteIncompleteTaskListPattern.test(lastLine)) {
20502
+ const result = lines.slice(0, -1).join("\n");
20503
+ if (lines.length > 1) return `${result}\n`;
20504
+ return result;
20505
+ }
18099
20506
  if (quoteStandaloneDashPattern.test(lastLine) && !quoteTaskListPattern.test(lastLine)) {
18100
20507
  const result = lines.slice(0, -1).join("\n");
18101
20508
  if (lines.length > 1) return `${result}\n`;
18102
20509
  return result;
18103
20510
  }
20511
+ if (incompleteTaskListPattern.test(lastLine)) {
20512
+ const result = lines.slice(0, -1).join("\n");
20513
+ if (lines.length > 1) return `${result}\n`;
20514
+ return result;
20515
+ }
18104
20516
  if (standaloneDashPattern.test(lastLine) && !taskListPattern.test(lastLine)) {
18105
20517
  const result = lines.slice(0, -1).join("\n");
18106
20518
  if (lines.length > 1) return `${result}\n`;
@@ -18140,14 +20552,15 @@ function normalize(content$2) {
18140
20552
  }
18141
20553
  function preprocess(content$2) {
18142
20554
  return flow([
20555
+ fixFootnote,
18143
20556
  fixStrong,
18144
20557
  fixEmphasis,
18145
20558
  fixDelete,
18146
- fixLink,
18147
20559
  fixCode,
20560
+ fixTaskList,
20561
+ fixLink,
18148
20562
  fixTable,
18149
20563
  fixInlineMath,
18150
- fixTaskList,
18151
20564
  remend
18152
20565
  ])(content$2);
18153
20566
  }
@@ -18177,10 +20590,19 @@ var MarkdownParser = class {
18177
20590
  this.mode = mode;
18178
20591
  }
18179
20592
  parseMarkdown(content$2) {
18180
- if (!content$2) return [];
20593
+ if (!content$2) return {
20594
+ content: "",
20595
+ nodes: []
20596
+ };
18181
20597
  this.update(content$2);
18182
- if (!this.syntaxTree) return [];
18183
- return this.syntaxTree.children;
20598
+ if (!this.syntaxTree) return {
20599
+ content: this.content,
20600
+ nodes: []
20601
+ };
20602
+ return {
20603
+ content: this.content,
20604
+ nodes: this.syntaxTree.children
20605
+ };
18184
20606
  }
18185
20607
  markdownToHtml(content$2) {
18186
20608
  return this.md.render(content$2);
@@ -18203,8 +20625,9 @@ var MarkdownParser = class {
18203
20625
  ...((_this$options$mdastOp2 = this.options.mdastOptions) === null || _this$options$mdastOp2 === void 0 ? void 0 : _this$options$mdastOp2.from) ?? []
18204
20626
  ]
18205
20627
  });
20628
+ const treeData = (this.options.postprocess ?? postNormalize)(data);
18206
20629
  const post = this.options.postprocess ?? postprocess;
18207
- const resolved = this.mode === "streaming" ? post(data) : data;
20630
+ const resolved = this.mode === "streaming" ? post(treeData) : treeData;
18208
20631
  if (!loading || this.mode === "static") return resolved;
18209
20632
  const node$1 = findLastLeafNode(resolved.children);
18210
20633
  if (node$1) node$1.loading = true;
@@ -18229,7 +20652,7 @@ var MarkdownParser = class {
18229
20652
  if (!nodes.length) return false;
18230
20653
  for (let i = nodes.length - 1; i >= 0; i--) {
18231
20654
  const node$1 = nodes[i];
18232
- if (node$1.loading) return true;
20655
+ if (node$1 === null || node$1 === void 0 ? void 0 : node$1.loading) return true;
18233
20656
  const nodeWithChildren = node$1;
18234
20657
  if (nodeWithChildren.children && nodeWithChildren.children.length > 0) return this.hasLoadingNode(nodeWithChildren.children);
18235
20658
  }
@@ -18267,6 +20690,11 @@ var index_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineCo
18267
20690
  required: false,
18268
20691
  default: "en-US"
18269
20692
  },
20693
+ enableAnimate: {
20694
+ type: Boolean,
20695
+ required: false,
20696
+ default: void 0
20697
+ },
18270
20698
  controls: {
18271
20699
  type: [Boolean, Object],
18272
20700
  required: false,
@@ -18314,6 +20742,10 @@ var index_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineCo
18314
20742
  type: Function,
18315
20743
  required: false
18316
20744
  },
20745
+ postNormalize: {
20746
+ type: Function,
20747
+ required: false
20748
+ },
18317
20749
  preprocess: {
18318
20750
  type: Function,
18319
20751
  required: false
@@ -18331,7 +20763,7 @@ var index_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineCo
18331
20763
  setup(__props, { expose: __expose, emit: __emit }) {
18332
20764
  const props = __props;
18333
20765
  const emits = __emit;
18334
- const { shikiOptions, mermaidOptions, isDark } = toRefs(props);
20766
+ const { mode, shikiOptions, mermaidOptions, isDark, enableAnimate } = toRefs(props);
18335
20767
  const containerRef = ref();
18336
20768
  const { provideContext } = useContext();
18337
20769
  const markdownParser = new MarkdownParser({
@@ -18340,7 +20772,9 @@ var index_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineCo
18340
20772
  postprocess: props.postprocess,
18341
20773
  preprocess: props.preprocess
18342
20774
  });
18343
- const parsedNodes = computed(() => markdownParser.parseMarkdown(props.content));
20775
+ const processed = computed(() => markdownParser.parseMarkdown(props.content));
20776
+ const parsedNodes = computed(() => processed.value.nodes);
20777
+ const processedContent = computed(() => processed.value.content);
18344
20778
  const nodeRenderers = computed(() => ({
18345
20779
  ...NODE_RENDERERS,
18346
20780
  ...props.nodeRenderers
@@ -18364,12 +20798,14 @@ var index_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineCo
18364
20798
  if (props.locale !== "en-US") tasks.push(loadLocaleMessages(props.locale));
18365
20799
  await Promise.all(tasks);
18366
20800
  }
18367
- bootstrap();
20801
+ onMounted(bootstrap);
18368
20802
  watch(() => props.mode, () => markdownParser.updateMode(props.mode));
18369
20803
  watch(() => props.locale, () => loadLocaleMessages(props.locale));
18370
20804
  provideContext({
20805
+ mode,
18371
20806
  icons,
18372
20807
  isDark,
20808
+ enableAnimate,
18373
20809
  parsedNodes,
18374
20810
  getContainer,
18375
20811
  onCopied: (content$2) => {
@@ -18383,7 +20819,8 @@ var index_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineCo
18383
20819
  });
18384
20820
  __expose({
18385
20821
  getMarkdownParser: () => markdownParser,
18386
- getParsedNodes: () => parsedNodes.value
20822
+ getParsedNodes: () => parsedNodes.value,
20823
+ getProcessedContent: () => processedContent.value
18387
20824
  });
18388
20825
  return (_ctx, _cache) => {
18389
20826
  return openBlock(), createElementBlock("div", {
@@ -18409,4 +20846,4 @@ var index_vue_vue_type_script_setup_true_lang_default = /* @__PURE__ */ defineCo
18409
20846
  var src_default = index_vue_vue_type_script_setup_true_lang_default;
18410
20847
 
18411
20848
  //#endregion
18412
- export { CODE_PREVIEWERS, DEFAULT_DARK_THEME, DEFAULT_HARDEN_OPTIONS, DEFAULT_LIGHT_THEME, ICONS, LANGUAGE_ALIAS, LANGUAGE_EXTENSIONS, LANGUAGE_ICONS, src_default as Markdown, MarkdownParser, NODE_RENDERERS, SHADCN_SCHEMAS, SUPPORT_LANGUAGES, UI, codeBlockPattern, crlfPattern, currentLocale, doubleAsteriskPattern, doubleDollarPattern, doubleTildePattern, doubleUnderscorePattern, escapeMarkdownTableCell, extractTableDataFromElement, findLastLeafNode, findNodeParent, fixCode, fixDelete, fixEmphasis, fixLink, fixStrong, fixTable, fixTaskList, flow, hasKatex, hasMermaid, hasShiki, incompleteBracketPattern, incompleteLinkTextPattern, incompleteUrlPattern, loadLocaleMessages, localeMessages, localesGlob, normalize, postFixText, postprocess, preprocess, preprocessLaTeX, proprocessContent, quoteStandaloneDashPattern, quoteTaskListPattern, remend, save, saveImage, separatorPattern, singleAsteriskPattern, singleBacktickPattern, singleUnderscorePattern, standaloneDashPattern, svgToPngBlob, tableDataToCSV, tableDataToMarkdown, tableDataToTSV, tableRowPattern, taskListPattern, trailingBackticksPattern, trailingWhitespacePattern, transformUrl, tripleBacktickPattern, useCodeOptions, useContext, useControls, useFloatingElement, useHardenSanitizers, useI18n, useKatex, useMathRenderer, useMediumZoom, useMermaid, useShiki, useTailwindV3Theme, useZoom };
20849
+ export { CODE_PREVIEWERS, DEFAULT_DARK_THEME, DEFAULT_HARDEN_OPTIONS, DEFAULT_LIGHT_THEME, ICONS, LANGUAGE_ALIAS, LANGUAGE_EXTENSIONS, LANGUAGE_ICONS, src_default as Markdown, MarkdownParser, NODE_RENDERERS, SHADCN_SCHEMAS, SUPPORT_LANGUAGES, UI, codeBlockPattern, crlfPattern, currentLocale, doubleAsteriskPattern, doubleDollarPattern, doubleTildePattern, doubleUnderscorePattern, escapeMarkdownTableCell, extractTableDataFromElement, findLastLeafNode, findNodeParent, fixCode, fixDelete, fixEmphasis, fixFootnote, fixLink, fixStrong, fixTable, fixTaskList, flow, footnoteDefLabelPattern, footnoteDefLinePattern, footnoteDefPattern, footnoteRefLabelPattern, footnoteRefPattern, hasKatex, hasMermaid, hasShiki, incompleteBracketPattern, incompleteFootnoteRefPattern, incompleteLinkTextPattern, incompleteTaskListPattern, incompleteUrlPattern, isClient, isServer, loadLocaleMessages, localeMessages, localesGlob, normalize, postFixFootnote, postFixText, postNormalize, postprocess, preprocess, preprocessLaTeX, proprocessContent, quoteIncompleteTaskListPattern, quoteStandaloneDashPattern, quoteTaskListPattern, remend, save, saveImage, separatorPattern, singleAsteriskPattern, singleBacktickPattern, singleUnderscorePattern, standaloneDashPattern, svgToPngBlob, tableDataToCSV, tableDataToMarkdown, tableDataToTSV, tableRowPattern, taskListPattern, trailingBackticksPattern, trailingStandaloneBracketPattern, trailingStandaloneDashWithNewlinesPattern, trailingWhitespacePattern, transformUrl, tripleBacktickPattern, useCodeOptions, useContext, useControls, useFloatingElement, useI18n, useKatex, useMathRenderer, useMediumZoom, useMermaid, useSanitizers, useShiki, useTailwindV3Theme, useZoom };