@plumile/ui 0.1.83 → 0.1.86

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 (230) hide show
  1. package/README.md +109 -27
  2. package/lib/esm/BackofficeJsonViewerAsync-BeBxIpGT.js +7 -0
  3. package/lib/esm/{BackofficeJsonViewerAsync-Czd9VhUz.js.map → BackofficeJsonViewerAsync-BeBxIpGT.js.map} +1 -1
  4. package/lib/esm/{MarkdownCodeBlock-B3PblX3D.js → MarkdownCodeBlock-C0d5VZVs.js} +3 -3
  5. package/lib/esm/{MarkdownCodeBlock-B3PblX3D.js.map → MarkdownCodeBlock-C0d5VZVs.js.map} +1 -1
  6. package/lib/esm/{MarkdownRenderer-RgELUK6t.js → MarkdownRenderer-BZQymHWR.js} +37 -36
  7. package/lib/esm/MarkdownRenderer-BZQymHWR.js.map +1 -0
  8. package/lib/esm/{MarkdownShikiCodeBlock-Dv7ONFFy.js → MarkdownShikiCodeBlock-CQENUqVC.js} +2 -3
  9. package/lib/esm/{MarkdownShikiCodeBlock-Dv7ONFFy.js.map → MarkdownShikiCodeBlock-CQENUqVC.js.map} +1 -1
  10. package/lib/esm/architecture-PBZL5I3N-BzBIDLaO.js +3 -0
  11. package/lib/esm/{architectureDiagram-2XIMDMQ5-BUhb7PkG.js → architectureDiagram-2XIMDMQ5-C3274bP5.js} +7 -16
  12. package/lib/esm/{architectureDiagram-2XIMDMQ5-BUhb7PkG.js.map → architectureDiagram-2XIMDMQ5-C3274bP5.js.map} +1 -1
  13. package/lib/esm/{blockDiagram-WCTKOSBZ-C8Ohzdg3.js → blockDiagram-WCTKOSBZ-BlgoYSMA.js} +7 -8
  14. package/lib/esm/{blockDiagram-WCTKOSBZ-C8Ohzdg3.js.map → blockDiagram-WCTKOSBZ-BlgoYSMA.js.map} +1 -1
  15. package/lib/esm/{c4Diagram-IC4MRINW-CQUp6kiC.js → c4Diagram-IC4MRINW-Cp7JuV3A.js} +4 -4
  16. package/lib/esm/{c4Diagram-IC4MRINW-CQUp6kiC.js.map → c4Diagram-IC4MRINW-Cp7JuV3A.js.map} +1 -1
  17. package/lib/esm/{channel-BBzlf3l-.js → channel-DogymxsL.js} +2 -2
  18. package/lib/esm/{channel-BBzlf3l-.js.map → channel-DogymxsL.js.map} +1 -1
  19. package/lib/esm/{chunk-7E7YKBS2-CdBV12RO.js → chunk-7E7YKBS2-Pt8h9jYn.js} +2 -2
  20. package/lib/esm/{chunk-7E7YKBS2-CdBV12RO.js.map → chunk-7E7YKBS2-Pt8h9jYn.js.map} +1 -1
  21. package/lib/esm/{chunk-7R4GIKGN-Cg9-qmu5.js → chunk-7R4GIKGN-DFba5m0T.js} +2 -2
  22. package/lib/esm/{chunk-7R4GIKGN-Cg9-qmu5.js.map → chunk-7R4GIKGN-DFba5m0T.js.map} +1 -1
  23. package/lib/esm/{chunk-C72U2L5F-DygXHeeZ.js → chunk-C72U2L5F-C7A2Zfr9.js} +2 -2
  24. package/lib/esm/{chunk-C72U2L5F-DygXHeeZ.js.map → chunk-C72U2L5F-C7A2Zfr9.js.map} +1 -1
  25. package/lib/esm/{chunk-EGIJ26TM-DJ1G_X9D.js → chunk-EGIJ26TM-CTAmlHSC.js} +2 -2
  26. package/lib/esm/{chunk-EGIJ26TM-DJ1G_X9D.js.map → chunk-EGIJ26TM-CTAmlHSC.js.map} +1 -1
  27. package/lib/esm/{chunk-GEFDOKGD-Dkux3ZgH.js → chunk-GEFDOKGD-DwcK4le_.js} +2 -2
  28. package/lib/esm/{chunk-GEFDOKGD-Dkux3ZgH.js.map → chunk-GEFDOKGD-DwcK4le_.js.map} +1 -1
  29. package/lib/esm/{chunk-GLR3WWYH-BBakjhtu.js → chunk-GLR3WWYH-B_ufWlZA.js} +7 -7
  30. package/lib/esm/{chunk-GLR3WWYH-BBakjhtu.js.map → chunk-GLR3WWYH-B_ufWlZA.js.map} +1 -1
  31. package/lib/esm/{chunk-HHEYEP7N-BRntQHI9.js → chunk-HHEYEP7N-Cd1T4lH1.js} +2 -2
  32. package/lib/esm/{chunk-HHEYEP7N-BRntQHI9.js.map → chunk-HHEYEP7N-Cd1T4lH1.js.map} +1 -1
  33. package/lib/esm/{chunk-JSJVCQXG-DuVavFA7.js → chunk-JSJVCQXG-C3QauA5P.js} +2 -2
  34. package/lib/esm/{chunk-JSJVCQXG-DuVavFA7.js.map → chunk-JSJVCQXG-C3QauA5P.js.map} +1 -1
  35. package/lib/esm/{chunk-KX2RTZJC-BEZu4ePM.js → chunk-KX2RTZJC-CvwGKvGK.js} +2 -2
  36. package/lib/esm/{chunk-KX2RTZJC-BEZu4ePM.js.map → chunk-KX2RTZJC-CvwGKvGK.js.map} +1 -1
  37. package/lib/esm/{chunk-KYZI473N-DeJhj0TI.js → chunk-KYZI473N-BSnk8jTP.js} +9 -9
  38. package/lib/esm/{chunk-KYZI473N-DeJhj0TI.js.map → chunk-KYZI473N-BSnk8jTP.js.map} +1 -1
  39. package/lib/esm/{chunk-L3YUKLVL-pMJOn-lT.js → chunk-L3YUKLVL-C_cuxclB.js} +2 -2
  40. package/lib/esm/{chunk-L3YUKLVL-pMJOn-lT.js.map → chunk-L3YUKLVL-C_cuxclB.js.map} +1 -1
  41. package/lib/esm/{chunk-NQ4KR5QH-pcyIZSOf.js → chunk-NQ4KR5QH-BKl-7l0B.js} +5 -5
  42. package/lib/esm/{chunk-NQ4KR5QH-pcyIZSOf.js.map → chunk-NQ4KR5QH-BKl-7l0B.js.map} +1 -1
  43. package/lib/esm/{chunk-O4XLMI2P-B49RDRA_.js → chunk-O4XLMI2P-BdVt_1-O.js} +89 -89
  44. package/lib/esm/{chunk-O4XLMI2P-B49RDRA_.js.map → chunk-O4XLMI2P-BdVt_1-O.js.map} +1 -1
  45. package/lib/esm/{chunk-OZEHJAEY-Cdfu-MGD.js → chunk-OZEHJAEY-BpRlGWBe.js} +2 -2
  46. package/lib/esm/{chunk-OZEHJAEY-Cdfu-MGD.js.map → chunk-OZEHJAEY-BpRlGWBe.js.map} +1 -1
  47. package/lib/esm/{chunk-PQ6SQG4A-BJO_yF6z.js → chunk-PQ6SQG4A-_Snj96al.js} +2 -2
  48. package/lib/esm/{chunk-PQ6SQG4A-BJO_yF6z.js.map → chunk-PQ6SQG4A-_Snj96al.js.map} +1 -1
  49. package/lib/esm/{chunk-PU5JKC2W-BzaL_NH3.js → chunk-PU5JKC2W-D0uOJ9Iw.js} +3 -3
  50. package/lib/esm/{chunk-PU5JKC2W-BzaL_NH3.js.map → chunk-PU5JKC2W-D0uOJ9Iw.js.map} +1 -1
  51. package/lib/esm/{chunk-R5LLSJPH-lr9fZO00.js → chunk-R5LLSJPH-BuuyFmhX.js} +2 -2
  52. package/lib/esm/{chunk-R5LLSJPH-lr9fZO00.js.map → chunk-R5LLSJPH-BuuyFmhX.js.map} +1 -1
  53. package/lib/esm/{chunk-WL4C6EOR-CtRNKYmt.js → chunk-WL4C6EOR-CG_NidXe.js} +6 -6
  54. package/lib/esm/{chunk-WL4C6EOR-CtRNKYmt.js.map → chunk-WL4C6EOR-CG_NidXe.js.map} +1 -1
  55. package/lib/esm/{chunk-XIRO2GV7-CLkLLbAz.js → chunk-XIRO2GV7-CA5ZRsNA.js} +2 -2
  56. package/lib/esm/{chunk-XIRO2GV7-CLkLLbAz.js.map → chunk-XIRO2GV7-CA5ZRsNA.js.map} +1 -1
  57. package/lib/esm/{chunk-XZSTWKYB-CtrW-UDJ.js → chunk-XZSTWKYB-C3gBacLv.js} +3 -3
  58. package/lib/esm/{chunk-XZSTWKYB-CtrW-UDJ.js.map → chunk-XZSTWKYB-C3gBacLv.js.map} +1 -1
  59. package/lib/esm/{chunk-YBOYWFTD-BL_YEnkQ.js → chunk-YBOYWFTD-BCp20l87.js} +3 -3
  60. package/lib/esm/{chunk-YBOYWFTD-BL_YEnkQ.js.map → chunk-YBOYWFTD-BCp20l87.js.map} +1 -1
  61. package/lib/esm/classDiagram-VBA2DB6C-BS3cbjOM.js +31 -0
  62. package/lib/esm/{classDiagram-VBA2DB6C-BT1J_4pK.js.map → classDiagram-VBA2DB6C-BS3cbjOM.js.map} +1 -1
  63. package/lib/esm/classDiagram-v2-RAHNMMFH-ohjXfFJD.js +31 -0
  64. package/lib/esm/{classDiagram-v2-RAHNMMFH-CKSbfgdS.js.map → classDiagram-v2-RAHNMMFH-ohjXfFJD.js.map} +1 -1
  65. package/lib/esm/{cose-bilkent-S5V4N54A-BW3RwNAW.js → cose-bilkent-S5V4N54A-DY9L2G_R.js} +2 -2
  66. package/lib/esm/{cose-bilkent-S5V4N54A-BW3RwNAW.js.map → cose-bilkent-S5V4N54A-DY9L2G_R.js.map} +1 -1
  67. package/lib/esm/{cytoscape.esm-CVPUhzV_.js → cytoscape.esm-DHzL-Ipx.js} +2020 -2020
  68. package/lib/esm/{cytoscape.esm-CVPUhzV_.js.map → cytoscape.esm-DHzL-Ipx.js.map} +1 -1
  69. package/lib/esm/{dagre-D6grMmmr.js → dagre-Dx7aq3cc.js} +2 -2
  70. package/lib/esm/{dagre-D6grMmmr.js.map → dagre-Dx7aq3cc.js.map} +1 -1
  71. package/lib/esm/{dagre-KLK3FWXG-CT3GGyXF.js → dagre-KLK3FWXG-CWyKitWK.js} +9 -10
  72. package/lib/esm/{dagre-KLK3FWXG-CT3GGyXF.js.map → dagre-KLK3FWXG-CWyKitWK.js.map} +1 -1
  73. package/lib/esm/{diagram-E7M64L7V-RIQNonUo.js → diagram-E7M64L7V-DSV2K-9b.js} +7 -16
  74. package/lib/esm/{diagram-E7M64L7V-RIQNonUo.js.map → diagram-E7M64L7V-DSV2K-9b.js.map} +1 -1
  75. package/lib/esm/{diagram-IFDJBPK2-D1Vwi5RU.js → diagram-IFDJBPK2-CqMWKS_O.js} +5 -14
  76. package/lib/esm/{diagram-IFDJBPK2-D1Vwi5RU.js.map → diagram-IFDJBPK2-CqMWKS_O.js.map} +1 -1
  77. package/lib/esm/{diagram-P4PSJMXO-B84-dlrB.js → diagram-P4PSJMXO-ox4cwXgJ.js} +5 -14
  78. package/lib/esm/{diagram-P4PSJMXO-B84-dlrB.js.map → diagram-P4PSJMXO-ox4cwXgJ.js.map} +1 -1
  79. package/lib/esm/{erDiagram-INFDFZHY-DMLpjzc4.js → erDiagram-INFDFZHY-B88c7D4Z.js} +11 -12
  80. package/lib/esm/{erDiagram-INFDFZHY-DMLpjzc4.js.map → erDiagram-INFDFZHY-B88c7D4Z.js.map} +1 -1
  81. package/lib/esm/{flowDiagram-PKNHOUZH-Ce1-VA32.js → flowDiagram-PKNHOUZH-BVq4hnMW.js} +12 -13
  82. package/lib/esm/{flowDiagram-PKNHOUZH-Ce1-VA32.js.map → flowDiagram-PKNHOUZH-BVq4hnMW.js.map} +1 -1
  83. package/lib/esm/{ganttDiagram-A5KZAMGK-BAmfVCUC.js → ganttDiagram-A5KZAMGK-tCYQkLQX.js} +3 -3
  84. package/lib/esm/{ganttDiagram-A5KZAMGK-BAmfVCUC.js.map → ganttDiagram-A5KZAMGK-tCYQkLQX.js.map} +1 -1
  85. package/lib/esm/gitGraph-HDMCJU4V-DBI0f9ev.js +3 -0
  86. package/lib/esm/{gitGraphDiagram-K3NZZRJ6-CR62Izxa.js → gitGraphDiagram-K3NZZRJ6-CPKVXgAJ.js} +4 -13
  87. package/lib/esm/{gitGraphDiagram-K3NZZRJ6-CR62Izxa.js.map → gitGraphDiagram-K3NZZRJ6-CPKVXgAJ.js.map} +1 -1
  88. package/lib/esm/info-3K5VOQVL-BJiSm8n_.js +3 -0
  89. package/lib/esm/{infoDiagram-LFFYTUFH-CEaM6i7D.js → infoDiagram-LFFYTUFH-BplZy-tU.js} +4 -12
  90. package/lib/esm/{infoDiagram-LFFYTUFH-CEaM6i7D.js.map → infoDiagram-LFFYTUFH-BplZy-tU.js.map} +1 -1
  91. package/lib/esm/{ishikawaDiagram-PHBUUO56-DPmaeRZg.js → ishikawaDiagram-PHBUUO56-yNQge--f.js} +4 -5
  92. package/lib/esm/{ishikawaDiagram-PHBUUO56-DPmaeRZg.js.map → ishikawaDiagram-PHBUUO56-yNQge--f.js.map} +1 -1
  93. package/lib/esm/{journeyDiagram-4ABVD52K-CIkELGB9.js → journeyDiagram-4ABVD52K-CkAvnKcN.js} +5 -6
  94. package/lib/esm/{journeyDiagram-4ABVD52K-CIkELGB9.js.map → journeyDiagram-4ABVD52K-CkAvnKcN.js.map} +1 -1
  95. package/lib/esm/{kanban-definition-K7BYSVSG-CzRVcKjg.js → kanban-definition-K7BYSVSG-ftrqeDlg.js} +8 -9
  96. package/lib/esm/{kanban-definition-K7BYSVSG-CzRVcKjg.js.map → kanban-definition-K7BYSVSG-ftrqeDlg.js.map} +1 -1
  97. package/lib/esm/{katex-C5br0dxW.js → katex-BkGwaUG9.js} +53 -13
  98. package/lib/esm/katex-BkGwaUG9.js.map +1 -0
  99. package/lib/esm/{line-CNKkQ82B.js → line-DNPRFJdY.js} +2 -2
  100. package/lib/esm/{line-CNKkQ82B.js.map → line-DNPRFJdY.js.map} +1 -1
  101. package/lib/esm/{mermaid-parser.core-2VeDDCcu.js → mermaid-parser.core-BgwwyaN0.js} +16 -9
  102. package/lib/esm/{mermaid-parser.core-2VeDDCcu.js.map → mermaid-parser.core-BgwwyaN0.js.map} +1 -1
  103. package/lib/esm/{mermaid.core-CgCa7Y6s.js → mermaid.core-CA6pZPXB.js} +39 -40
  104. package/lib/esm/{mermaid.core-CgCa7Y6s.js.map → mermaid.core-CA6pZPXB.js.map} +1 -1
  105. package/lib/esm/{mindmap-definition-YRQLILUH-B7c3ueCh.js → mindmap-definition-YRQLILUH-C77nDmSd.js} +10 -11
  106. package/lib/esm/{mindmap-definition-YRQLILUH-B7c3ueCh.js.map → mindmap-definition-YRQLILUH-C77nDmSd.js.map} +1 -1
  107. package/lib/esm/packet-RMMSAZCW-tNKoQ_pX.js +3 -0
  108. package/lib/esm/pie-UPGHQEXC-BQsQOO3N.js +3 -0
  109. package/lib/esm/{pieDiagram-SKSYHLDU-BKf7D_uz.js → pieDiagram-SKSYHLDU-BRD3HGjq.js} +5 -14
  110. package/lib/esm/{pieDiagram-SKSYHLDU-BKf7D_uz.js.map → pieDiagram-SKSYHLDU-BRD3HGjq.js.map} +1 -1
  111. package/lib/esm/{quadrantDiagram-337W2JSQ-CZMVpQuF.js → quadrantDiagram-337W2JSQ-FM-tlL4R.js} +2 -2
  112. package/lib/esm/{quadrantDiagram-337W2JSQ-CZMVpQuF.js.map → quadrantDiagram-337W2JSQ-FM-tlL4R.js.map} +1 -1
  113. package/lib/esm/radar-KQ55EAFF-B4MRf1H7.js +3 -0
  114. package/lib/esm/{requirementDiagram-Z7DCOOCP-CXxLUHMG.js → requirementDiagram-Z7DCOOCP-BoUW2Gmh.js} +10 -11
  115. package/lib/esm/{requirementDiagram-Z7DCOOCP-CXxLUHMG.js.map → requirementDiagram-Z7DCOOCP-BoUW2Gmh.js.map} +1 -1
  116. package/lib/esm/{sankeyDiagram-WA2Y5GQK-BauuH8-1.js → sankeyDiagram-WA2Y5GQK-DrmMyi5l.js} +2 -2
  117. package/lib/esm/{sankeyDiagram-WA2Y5GQK-BauuH8-1.js.map → sankeyDiagram-WA2Y5GQK-DrmMyi5l.js.map} +1 -1
  118. package/lib/esm/{sequenceDiagram-2WXFIKYE-AWPjBivx.js → sequenceDiagram-2WXFIKYE-DhmiZE9h.js} +4 -4
  119. package/lib/esm/{sequenceDiagram-2WXFIKYE-AWPjBivx.js.map → sequenceDiagram-2WXFIKYE-DhmiZE9h.js.map} +1 -1
  120. package/lib/esm/{src-D6nEpsqe.js → src-C6x6EDga.js} +1083 -918
  121. package/lib/esm/src-C6x6EDga.js.map +1 -0
  122. package/lib/esm/{stateDiagram-RAJIS63D-CXgEabgV.js → stateDiagram-RAJIS63D-HWYHe-A9.js} +13 -14
  123. package/lib/esm/{stateDiagram-RAJIS63D-CXgEabgV.js.map → stateDiagram-RAJIS63D-HWYHe-A9.js.map} +1 -1
  124. package/lib/esm/stateDiagram-v2-FVOUBMTO-CJKbs50l.js +29 -0
  125. package/lib/esm/{stateDiagram-v2-FVOUBMTO-CahcZ8-y.js.map → stateDiagram-v2-FVOUBMTO-CJKbs50l.js.map} +1 -1
  126. package/lib/esm/{timeline-definition-YZTLITO2-Dk8ByuG8.js → timeline-definition-YZTLITO2-BSLcoqGe.js} +4 -4
  127. package/lib/esm/{timeline-definition-YZTLITO2-Dk8ByuG8.js.map → timeline-definition-YZTLITO2-BSLcoqGe.js.map} +1 -1
  128. package/lib/esm/treemap-KZPCXAKY-Delo462D.js +3 -0
  129. package/lib/esm/ui.js +5 -5
  130. package/lib/esm/{vennDiagram-LZ73GAT5-BcIblXz3.js → vennDiagram-LZ73GAT5-D3kOVhW6.js} +4 -5
  131. package/lib/esm/{vennDiagram-LZ73GAT5-BcIblXz3.js.map → vennDiagram-LZ73GAT5-D3kOVhW6.js.map} +1 -1
  132. package/lib/esm/{xychartDiagram-JWTSCODW-Csn18jU4.js → xychartDiagram-JWTSCODW-DSN5EjHR.js} +6 -7
  133. package/lib/esm/{xychartDiagram-JWTSCODW-Csn18jU4.js.map → xychartDiagram-JWTSCODW-DSN5EjHR.js.map} +1 -1
  134. package/lib/types/atomic/atoms/relative-time-text/RelativeTimeText.d.ts +8 -0
  135. package/lib/types/atomic/atoms/relative-time-text/RelativeTimeText.d.ts.map +1 -1
  136. package/lib/types/atomic/atoms/relative-time-text/__tests__/RelativeTimeText.test.d.ts +2 -0
  137. package/lib/types/atomic/atoms/relative-time-text/__tests__/RelativeTimeText.test.d.ts.map +1 -0
  138. package/lib/types/atomic/molecules/empty-state/__tests__/EmptyState.test.d.ts +2 -0
  139. package/lib/types/atomic/molecules/empty-state/__tests__/EmptyState.test.d.ts.map +1 -0
  140. package/lib/types/atomic/molecules/markdown/MarkdownRenderer.d.ts +2 -0
  141. package/lib/types/atomic/molecules/markdown/MarkdownRenderer.d.ts.map +1 -1
  142. package/lib/types/atomic/molecules/markdown/MarkdownRenderer.helpers.d.ts +44 -0
  143. package/lib/types/atomic/molecules/markdown/MarkdownRenderer.helpers.d.ts.map +1 -0
  144. package/lib/types/atomic/molecules/markdown/__tests__/MarkdownRenderer.test.d.ts +2 -0
  145. package/lib/types/atomic/molecules/markdown/__tests__/MarkdownRenderer.test.d.ts.map +1 -0
  146. package/lib/types/atomic/molecules/markdown/helpers/__tests__/assertNever.test.d.ts +2 -0
  147. package/lib/types/atomic/molecules/markdown/helpers/__tests__/assertNever.test.d.ts.map +1 -0
  148. package/lib/types/atomic/molecules/markdown/helpers/__tests__/escapeHtml.test.d.ts +2 -0
  149. package/lib/types/atomic/molecules/markdown/helpers/__tests__/escapeHtml.test.d.ts.map +1 -0
  150. package/lib/types/atomic/molecules/markdown/helpers/__tests__/isExternalLink.test.d.ts +2 -0
  151. package/lib/types/atomic/molecules/markdown/helpers/__tests__/isExternalLink.test.d.ts.map +1 -0
  152. package/lib/types/atomic/molecules/markdown/helpers/isExternalLink.d.ts +7 -0
  153. package/lib/types/atomic/molecules/markdown/helpers/isExternalLink.d.ts.map +1 -1
  154. package/lib/types/atomic/molecules/toast/ToastProvider.d.ts +4 -1
  155. package/lib/types/atomic/molecules/toast/ToastProvider.d.ts.map +1 -1
  156. package/lib/types/atomic/molecules/toast/__tests__/ToastProvider.test.d.ts +2 -0
  157. package/lib/types/atomic/molecules/toast/__tests__/ToastProvider.test.d.ts.map +1 -0
  158. package/lib/types/backoffice/atoms/copyable_text/CopyableText.d.ts.map +1 -1
  159. package/lib/types/backoffice/atoms/skeleton/Skeleton.d.ts.map +1 -1
  160. package/lib/types/backoffice/atoms/skeleton/Skeleton.helpers.d.ts +8 -0
  161. package/lib/types/backoffice/atoms/skeleton/Skeleton.helpers.d.ts.map +1 -0
  162. package/lib/types/backoffice/atoms/skeleton/__tests__/Skeleton.helpers.test.d.ts +2 -0
  163. package/lib/types/backoffice/atoms/skeleton/__tests__/Skeleton.helpers.test.d.ts.map +1 -0
  164. package/lib/types/backoffice/molecules/backoffice_json_viewer/BackofficeJsonViewer.d.ts.map +1 -1
  165. package/lib/types/backoffice/molecules/backoffice_json_viewer/LazyBackofficeJsonViewer.d.ts +3 -0
  166. package/lib/types/backoffice/molecules/backoffice_json_viewer/LazyBackofficeJsonViewer.d.ts.map +1 -1
  167. package/lib/types/backoffice/molecules/backoffice_json_viewer/__tests__/LazyBackofficeJsonViewer.helpers.test.d.ts +2 -0
  168. package/lib/types/backoffice/molecules/backoffice_json_viewer/__tests__/LazyBackofficeJsonViewer.helpers.test.d.ts.map +1 -0
  169. package/lib/types/backoffice/organisms/backoffice_virtualized_connection_table/BackofficeVirtualizedConnectionTable.d.ts.map +1 -1
  170. package/lib/types/backoffice/organisms/backoffice_virtualized_connection_table/__tests__/helpers.test.d.ts +2 -0
  171. package/lib/types/backoffice/organisms/backoffice_virtualized_connection_table/__tests__/helpers.test.d.ts.map +1 -0
  172. package/lib/types/backoffice/organisms/backoffice_virtualized_connection_table/helpers.d.ts +5 -0
  173. package/lib/types/backoffice/organisms/backoffice_virtualized_connection_table/helpers.d.ts.map +1 -0
  174. package/lib/types/backoffice/shared/__tests__/copyWithExecCommand.test.d.ts +2 -0
  175. package/lib/types/backoffice/shared/__tests__/copyWithExecCommand.test.d.ts.map +1 -0
  176. package/lib/types/backoffice/shared/copyWithExecCommand.d.ts +2 -0
  177. package/lib/types/backoffice/shared/copyWithExecCommand.d.ts.map +1 -0
  178. package/lib/types/components/charts/MetricHistoryChart.d.ts +30 -0
  179. package/lib/types/components/charts/MetricHistoryChart.d.ts.map +1 -0
  180. package/lib/types/components/charts/TimeSeriesLineChart.d.ts +4 -0
  181. package/lib/types/components/charts/TimeSeriesLineChart.d.ts.map +1 -1
  182. package/lib/types/components/charts/__tests__/MetricHistoryChart.helpers.test.d.ts +2 -0
  183. package/lib/types/components/charts/__tests__/MetricHistoryChart.helpers.test.d.ts.map +1 -0
  184. package/lib/types/components/charts/__tests__/TimeSeriesLineChart.helpers.test.d.ts +2 -0
  185. package/lib/types/components/charts/__tests__/TimeSeriesLineChart.helpers.test.d.ts.map +1 -0
  186. package/lib/types/components/charts/metricHistoryChart.css.d.ts +8 -0
  187. package/lib/types/components/charts/metricHistoryChart.css.d.ts.map +1 -0
  188. package/lib/types/components/data-table/DataTable.d.ts +5 -1
  189. package/lib/types/components/data-table/DataTable.d.ts.map +1 -1
  190. package/lib/types/components/data-table/VirtualizedConnectionTable.d.ts +7 -1
  191. package/lib/types/components/data-table/VirtualizedConnectionTable.d.ts.map +1 -1
  192. package/lib/types/components/data-table/__tests__/DataTable.helpers.test.d.ts +2 -0
  193. package/lib/types/components/data-table/__tests__/DataTable.helpers.test.d.ts.map +1 -0
  194. package/lib/types/components/data-table/__tests__/VirtualizedConnectionTable.helpers.test.d.ts +2 -0
  195. package/lib/types/components/data-table/__tests__/VirtualizedConnectionTable.helpers.test.d.ts.map +1 -0
  196. package/lib/types/components/data-table/__tests__/tableBreakpoints.test.d.ts +2 -0
  197. package/lib/types/components/data-table/__tests__/tableBreakpoints.test.d.ts.map +1 -0
  198. package/lib/types/components/data-table/tableBreakpoints.d.ts +8 -0
  199. package/lib/types/components/data-table/tableBreakpoints.d.ts.map +1 -1
  200. package/lib/types/components/layout/PageShell.d.ts +5 -0
  201. package/lib/types/components/layout/PageShell.d.ts.map +1 -1
  202. package/lib/types/components/layout/__tests__/PageShell.test.d.ts +2 -0
  203. package/lib/types/components/layout/__tests__/PageShell.test.d.ts.map +1 -0
  204. package/lib/types/components/tile/__tests__/InfoTile.test.d.ts +2 -0
  205. package/lib/types/components/tile/__tests__/InfoTile.test.d.ts.map +1 -0
  206. package/lib/types/index.d.ts +1 -0
  207. package/lib/types/index.d.ts.map +1 -1
  208. package/lib/types/shared/__tests__/agent-formatting.test.d.ts +2 -0
  209. package/lib/types/shared/__tests__/agent-formatting.test.d.ts.map +1 -0
  210. package/lib/types/theme/ThemeProvider.d.ts +5 -0
  211. package/lib/types/theme/ThemeProvider.d.ts.map +1 -1
  212. package/lib/types/theme/__tests__/ThemeProvider.test.d.ts +2 -0
  213. package/lib/types/theme/__tests__/ThemeProvider.test.d.ts.map +1 -0
  214. package/lib/types/theme/__tests__/tools.test.d.ts +2 -0
  215. package/lib/types/theme/__tests__/tools.test.d.ts.map +1 -0
  216. package/package.json +10 -10
  217. package/lib/esm/BackofficeJsonViewerAsync-Czd9VhUz.js +0 -10
  218. package/lib/esm/MarkdownRenderer-RgELUK6t.js.map +0 -1
  219. package/lib/esm/architecture-PBZL5I3N-BF1f82qm.js +0 -3
  220. package/lib/esm/classDiagram-VBA2DB6C-BT1J_4pK.js +0 -32
  221. package/lib/esm/classDiagram-v2-RAHNMMFH-CKSbfgdS.js +0 -32
  222. package/lib/esm/gitGraph-HDMCJU4V-TM85Whmp.js +0 -3
  223. package/lib/esm/info-3K5VOQVL-CY50BvVz.js +0 -3
  224. package/lib/esm/katex-C5br0dxW.js.map +0 -1
  225. package/lib/esm/packet-RMMSAZCW-DFGYBR05.js +0 -3
  226. package/lib/esm/pie-UPGHQEXC-CNCiNoc-.js +0 -3
  227. package/lib/esm/radar-KQ55EAFF-CHJYxvxr.js +0 -3
  228. package/lib/esm/src-D6nEpsqe.js.map +0 -1
  229. package/lib/esm/stateDiagram-v2-FVOUBMTO-CahcZ8-y.js +0 -30
  230. package/lib/esm/treemap-KZPCXAKY-CjhytAJ2.js +0 -3
@@ -1 +1 @@
1
- {"version":3,"file":"chunk-PU5JKC2W-BzaL_NH3.js","names":["marked"],"sources":["../../../../node_modules/@iconify/utils/lib/icon/defaults.js","../../../../node_modules/@iconify/utils/lib/customisations/defaults.js","../../../../node_modules/@iconify/utils/lib/icon/name.js","../../../../node_modules/@iconify/utils/lib/icon/transformations.js","../../../../node_modules/@iconify/utils/lib/icon/merge.js","../../../../node_modules/@iconify/utils/lib/icon-set/tree.js","../../../../node_modules/@iconify/utils/lib/icon-set/get-icon.js","../../../../node_modules/@iconify/utils/lib/svg/size.js","../../../../node_modules/@iconify/utils/lib/svg/defs.js","../../../../node_modules/@iconify/utils/lib/svg/build.js","../../../../node_modules/@iconify/utils/lib/svg/id.js","../../../../node_modules/@iconify/utils/lib/svg/html.js","../../../../node_modules/marked/lib/marked.esm.js","../../../../node_modules/ts-dedent/esm/index.js","../../../../node_modules/mermaid/dist/chunks/mermaid.core/chunk-PU5JKC2W.mjs"],"sourcesContent":["/** Default values for dimensions */\nconst defaultIconDimensions = Object.freeze({\n\tleft: 0,\n\ttop: 0,\n\twidth: 16,\n\theight: 16\n});\n/** Default values for transformations */\nconst defaultIconTransformations = Object.freeze({\n\trotate: 0,\n\tvFlip: false,\n\thFlip: false\n});\n/** Default values for all optional IconifyIcon properties */\nconst defaultIconProps = Object.freeze({\n\t...defaultIconDimensions,\n\t...defaultIconTransformations\n});\n/** Default values for all properties used in ExtendedIconifyIcon */\nconst defaultExtendedIconProps = Object.freeze({\n\t...defaultIconProps,\n\tbody: \"\",\n\thidden: false\n});\n\nexport { defaultExtendedIconProps, defaultIconDimensions, defaultIconProps, defaultIconTransformations };","import { defaultIconTransformations } from \"../icon/defaults.js\";\n\n/**\n* Default icon customisations values\n*/\nconst defaultIconSizeCustomisations = Object.freeze({\n\twidth: null,\n\theight: null\n});\nconst defaultIconCustomisations = Object.freeze({\n\t...defaultIconSizeCustomisations,\n\t...defaultIconTransformations\n});\n\nexport { defaultIconCustomisations, defaultIconSizeCustomisations };","/**\n* Expression to test part of icon name.\n*\n* Used when loading icons from Iconify API due to project naming convension.\n* Ignored when using custom icon sets - convension does not apply.\n*/\nconst matchIconName = /^[a-z0-9]+(-[a-z0-9]+)*$/;\n/**\n* Convert string icon name to IconifyIconName object.\n*/\nconst stringToIcon = (value, validate, allowSimpleName, provider = \"\") => {\n\tconst colonSeparated = value.split(\":\");\n\tif (value.slice(0, 1) === \"@\") {\n\t\tif (colonSeparated.length < 2 || colonSeparated.length > 3) return null;\n\t\tprovider = colonSeparated.shift().slice(1);\n\t}\n\tif (colonSeparated.length > 3 || !colonSeparated.length) return null;\n\tif (colonSeparated.length > 1) {\n\t\tconst name$1 = colonSeparated.pop();\n\t\tconst prefix = colonSeparated.pop();\n\t\tconst result = {\n\t\t\tprovider: colonSeparated.length > 0 ? colonSeparated[0] : provider,\n\t\t\tprefix,\n\t\t\tname: name$1\n\t\t};\n\t\treturn validate && !validateIconName(result) ? null : result;\n\t}\n\tconst name = colonSeparated[0];\n\tconst dashSeparated = name.split(\"-\");\n\tif (dashSeparated.length > 1) {\n\t\tconst result = {\n\t\t\tprovider,\n\t\t\tprefix: dashSeparated.shift(),\n\t\t\tname: dashSeparated.join(\"-\")\n\t\t};\n\t\treturn validate && !validateIconName(result) ? null : result;\n\t}\n\tif (allowSimpleName && provider === \"\") {\n\t\tconst result = {\n\t\t\tprovider,\n\t\t\tprefix: \"\",\n\t\t\tname\n\t\t};\n\t\treturn validate && !validateIconName(result, allowSimpleName) ? null : result;\n\t}\n\treturn null;\n};\n/**\n* Check if icon is valid.\n*\n* This function is not part of stringToIcon because validation is not needed for most code.\n*/\nconst validateIconName = (icon, allowSimpleName) => {\n\tif (!icon) return false;\n\treturn !!((allowSimpleName && icon.prefix === \"\" || !!icon.prefix) && !!icon.name);\n};\n\nexport { matchIconName, stringToIcon, validateIconName };","/**\n* Merge transformations\n*/\nfunction mergeIconTransformations(obj1, obj2) {\n\tconst result = {};\n\tif (!obj1.hFlip !== !obj2.hFlip) result.hFlip = true;\n\tif (!obj1.vFlip !== !obj2.vFlip) result.vFlip = true;\n\tconst rotate = ((obj1.rotate || 0) + (obj2.rotate || 0)) % 4;\n\tif (rotate) result.rotate = rotate;\n\treturn result;\n}\n\nexport { mergeIconTransformations };","import { defaultExtendedIconProps, defaultIconTransformations } from \"./defaults.js\";\nimport { mergeIconTransformations } from \"./transformations.js\";\n\n/**\n* Merge icon and alias\n*\n* Can also be used to merge default values and icon\n*/\nfunction mergeIconData(parent, child) {\n\tconst result = mergeIconTransformations(parent, child);\n\tfor (const key in defaultExtendedIconProps) if (key in defaultIconTransformations) {\n\t\tif (key in parent && !(key in result)) result[key] = defaultIconTransformations[key];\n\t} else if (key in child) result[key] = child[key];\n\telse if (key in parent) result[key] = parent[key];\n\treturn result;\n}\n\nexport { mergeIconData };","/**\n* Resolve icon set icons\n*\n* Returns parent icon for each icon\n*/\nfunction getIconsTree(data, names) {\n\tconst icons = data.icons;\n\tconst aliases = data.aliases || Object.create(null);\n\tconst resolved = Object.create(null);\n\tfunction resolve(name) {\n\t\tif (icons[name]) return resolved[name] = [];\n\t\tif (!(name in resolved)) {\n\t\t\tresolved[name] = null;\n\t\t\tconst parent = aliases[name] && aliases[name].parent;\n\t\t\tconst value = parent && resolve(parent);\n\t\t\tif (value) resolved[name] = [parent].concat(value);\n\t\t}\n\t\treturn resolved[name];\n\t}\n\t(names || Object.keys(icons).concat(Object.keys(aliases))).forEach(resolve);\n\treturn resolved;\n}\n\nexport { getIconsTree };","import { mergeIconData } from \"../icon/merge.js\";\nimport { getIconsTree } from \"./tree.js\";\n\n/**\n* Get icon data, using prepared aliases tree\n*/\nfunction internalGetIconData(data, name, tree) {\n\tconst icons = data.icons;\n\tconst aliases = data.aliases || Object.create(null);\n\tlet currentProps = {};\n\tfunction parse(name$1) {\n\t\tcurrentProps = mergeIconData(icons[name$1] || aliases[name$1], currentProps);\n\t}\n\tparse(name);\n\ttree.forEach(parse);\n\treturn mergeIconData(data, currentProps);\n}\n/**\n* Get data for icon\n*/\nfunction getIconData(data, name) {\n\tif (data.icons[name]) return internalGetIconData(data, name, []);\n\tconst tree = getIconsTree(data, [name])[name];\n\treturn tree ? internalGetIconData(data, name, tree) : null;\n}\n\nexport { getIconData, internalGetIconData };","/**\n* Regular expressions for calculating dimensions\n*/\nconst unitsSplit = /(-?[0-9.]*[0-9]+[0-9.]*)/g;\nconst unitsTest = /^-?[0-9.]*[0-9]+[0-9.]*$/g;\nfunction calculateSize(size, ratio, precision) {\n\tif (ratio === 1) return size;\n\tprecision = precision || 100;\n\tif (typeof size === \"number\") return Math.ceil(size * ratio * precision) / precision;\n\tif (typeof size !== \"string\") return size;\n\tconst oldParts = size.split(unitsSplit);\n\tif (oldParts === null || !oldParts.length) return size;\n\tconst newParts = [];\n\tlet code = oldParts.shift();\n\tlet isNumber = unitsTest.test(code);\n\twhile (true) {\n\t\tif (isNumber) {\n\t\t\tconst num = parseFloat(code);\n\t\t\tif (isNaN(num)) newParts.push(code);\n\t\t\telse newParts.push(Math.ceil(num * ratio * precision) / precision);\n\t\t} else newParts.push(code);\n\t\tcode = oldParts.shift();\n\t\tif (code === void 0) return newParts.join(\"\");\n\t\tisNumber = !isNumber;\n\t}\n}\n\nexport { calculateSize };","function splitSVGDefs(content, tag = \"defs\") {\n\tlet defs = \"\";\n\tconst index = content.indexOf(\"<\" + tag);\n\twhile (index >= 0) {\n\t\tconst start = content.indexOf(\">\", index);\n\t\tconst end = content.indexOf(\"</\" + tag);\n\t\tif (start === -1 || end === -1) break;\n\t\tconst endEnd = content.indexOf(\">\", end);\n\t\tif (endEnd === -1) break;\n\t\tdefs += content.slice(start + 1, end).trim();\n\t\tcontent = content.slice(0, index).trim() + content.slice(endEnd + 1);\n\t}\n\treturn {\n\t\tdefs,\n\t\tcontent\n\t};\n}\n/**\n* Merge defs and content\n*/\nfunction mergeDefsAndContent(defs, content) {\n\treturn defs ? \"<defs>\" + defs + \"</defs>\" + content : content;\n}\n/**\n* Wrap SVG content, without wrapping definitions\n*/\nfunction wrapSVGContent(body, start, end) {\n\tconst split = splitSVGDefs(body);\n\treturn mergeDefsAndContent(split.defs, start + split.content + end);\n}\n\nexport { mergeDefsAndContent, splitSVGDefs, wrapSVGContent };","import { defaultIconProps } from \"../icon/defaults.js\";\nimport { defaultIconCustomisations } from \"../customisations/defaults.js\";\nimport { calculateSize } from \"./size.js\";\nimport { wrapSVGContent } from \"./defs.js\";\n\n/**\n* Check if value should be unset. Allows multiple keywords\n*/\nconst isUnsetKeyword = (value) => value === \"unset\" || value === \"undefined\" || value === \"none\";\n/**\n* Get SVG attributes and content from icon + customisations\n*\n* Does not generate style to make it compatible with frameworks that use objects for style, such as React.\n* Instead, it generates 'inline' value. If true, rendering engine should add verticalAlign: -0.125em to icon.\n*\n* Customisations should be normalised by platform specific parser.\n* Result should be converted to <svg> by platform specific parser.\n* Use replaceIDs to generate unique IDs for body.\n*/\nfunction iconToSVG(icon, customisations) {\n\tconst fullIcon = {\n\t\t...defaultIconProps,\n\t\t...icon\n\t};\n\tconst fullCustomisations = {\n\t\t...defaultIconCustomisations,\n\t\t...customisations\n\t};\n\tconst box = {\n\t\tleft: fullIcon.left,\n\t\ttop: fullIcon.top,\n\t\twidth: fullIcon.width,\n\t\theight: fullIcon.height\n\t};\n\tlet body = fullIcon.body;\n\t[fullIcon, fullCustomisations].forEach((props) => {\n\t\tconst transformations = [];\n\t\tconst hFlip = props.hFlip;\n\t\tconst vFlip = props.vFlip;\n\t\tlet rotation = props.rotate;\n\t\tif (hFlip) if (vFlip) rotation += 2;\n\t\telse {\n\t\t\ttransformations.push(\"translate(\" + (box.width + box.left).toString() + \" \" + (0 - box.top).toString() + \")\");\n\t\t\ttransformations.push(\"scale(-1 1)\");\n\t\t\tbox.top = box.left = 0;\n\t\t}\n\t\telse if (vFlip) {\n\t\t\ttransformations.push(\"translate(\" + (0 - box.left).toString() + \" \" + (box.height + box.top).toString() + \")\");\n\t\t\ttransformations.push(\"scale(1 -1)\");\n\t\t\tbox.top = box.left = 0;\n\t\t}\n\t\tlet tempValue;\n\t\tif (rotation < 0) rotation -= Math.floor(rotation / 4) * 4;\n\t\trotation = rotation % 4;\n\t\tswitch (rotation) {\n\t\t\tcase 1:\n\t\t\t\ttempValue = box.height / 2 + box.top;\n\t\t\t\ttransformations.unshift(\"rotate(90 \" + tempValue.toString() + \" \" + tempValue.toString() + \")\");\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\ttransformations.unshift(\"rotate(180 \" + (box.width / 2 + box.left).toString() + \" \" + (box.height / 2 + box.top).toString() + \")\");\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\ttempValue = box.width / 2 + box.left;\n\t\t\t\ttransformations.unshift(\"rotate(-90 \" + tempValue.toString() + \" \" + tempValue.toString() + \")\");\n\t\t\t\tbreak;\n\t\t}\n\t\tif (rotation % 2 === 1) {\n\t\t\tif (box.left !== box.top) {\n\t\t\t\ttempValue = box.left;\n\t\t\t\tbox.left = box.top;\n\t\t\t\tbox.top = tempValue;\n\t\t\t}\n\t\t\tif (box.width !== box.height) {\n\t\t\t\ttempValue = box.width;\n\t\t\t\tbox.width = box.height;\n\t\t\t\tbox.height = tempValue;\n\t\t\t}\n\t\t}\n\t\tif (transformations.length) body = wrapSVGContent(body, \"<g transform=\\\"\" + transformations.join(\" \") + \"\\\">\", \"</g>\");\n\t});\n\tconst customisationsWidth = fullCustomisations.width;\n\tconst customisationsHeight = fullCustomisations.height;\n\tconst boxWidth = box.width;\n\tconst boxHeight = box.height;\n\tlet width;\n\tlet height;\n\tif (customisationsWidth === null) {\n\t\theight = customisationsHeight === null ? \"1em\" : customisationsHeight === \"auto\" ? boxHeight : customisationsHeight;\n\t\twidth = calculateSize(height, boxWidth / boxHeight);\n\t} else {\n\t\twidth = customisationsWidth === \"auto\" ? boxWidth : customisationsWidth;\n\t\theight = customisationsHeight === null ? calculateSize(width, boxHeight / boxWidth) : customisationsHeight === \"auto\" ? boxHeight : customisationsHeight;\n\t}\n\tconst attributes = {};\n\tconst setAttr = (prop, value) => {\n\t\tif (!isUnsetKeyword(value)) attributes[prop] = value.toString();\n\t};\n\tsetAttr(\"width\", width);\n\tsetAttr(\"height\", height);\n\tconst viewBox = [\n\t\tbox.left,\n\t\tbox.top,\n\t\tboxWidth,\n\t\tboxHeight\n\t];\n\tattributes.viewBox = viewBox.join(\" \");\n\treturn {\n\t\tattributes,\n\t\tviewBox,\n\t\tbody\n\t};\n}\n\nexport { iconToSVG, isUnsetKeyword };","/**\n* Regular expression for finding ids\n*/\nconst regex = /\\sid=\"(\\S+)\"/g;\n/**\n* Counters\n*/\nconst counters = /* @__PURE__ */ new Map();\n/**\n* Get unique new ID\n*/\nfunction nextID(id) {\n\tid = id.replace(/[0-9]+$/, \"\") || \"a\";\n\tconst count = counters.get(id) || 0;\n\tcounters.set(id, count + 1);\n\treturn count ? `${id}${count}` : id;\n}\n/**\n* Replace IDs in SVG output with unique IDs\n*/\nfunction replaceIDs(body) {\n\tconst ids = [];\n\tlet match;\n\twhile (match = regex.exec(body)) ids.push(match[1]);\n\tif (!ids.length) return body;\n\tconst suffix = \"suffix\" + (Math.random() * 16777216 | Date.now()).toString(16);\n\tids.forEach((id) => {\n\t\tconst newID = nextID(id);\n\t\tconst escapedID = id.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n\t\tbody = body.replace(new RegExp(\"([#;\\\"])(\" + escapedID + \")([\\\")]|\\\\.[a-z])\", \"g\"), \"$1\" + newID + suffix + \"$3\");\n\t});\n\tbody = body.replace(new RegExp(suffix, \"g\"), \"\");\n\treturn body;\n}\n/**\n* Clear ID cache\n*/\nfunction clearIDCache() {\n\tcounters.clear();\n}\n\nexport { clearIDCache, replaceIDs };","/**\n* Generate <svg>\n*/\nfunction iconToHTML(body, attributes) {\n\tlet renderAttribsHTML = body.indexOf(\"xlink:\") === -1 ? \"\" : \" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\"\";\n\tfor (const attr in attributes) renderAttribsHTML += \" \" + attr + \"=\\\"\" + attributes[attr] + \"\\\"\";\n\treturn \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\"\" + renderAttribsHTML + \">\" + body + \"</svg>\";\n}\n\nexport { iconToHTML };","/**\n * marked v16.4.2 - a markdown parser\n * Copyright (c) 2018-2025, MarkedJS. (MIT License)\n * Copyright (c) 2011-2018, Christopher Jeffrey. (MIT License)\n * https://github.com/markedjs/marked\n */\n\n/**\n * DO NOT EDIT THIS FILE\n * The code in this file is generated from files in ./src/\n */\n\nfunction L(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var T=L();function G(l){T=l}var E={exec:()=>null};function d(l,e=\"\"){let t=typeof l==\"string\"?l:l.source,n={replace:(r,i)=>{let s=typeof i==\"string\"?i:i.source;return s=s.replace(m.caret,\"$1\"),t=t.replace(r,s),n},getRegex:()=>new RegExp(t,e)};return n}var be=(()=>{try{return!!new RegExp(\"(?<=1)(?<!1)\")}catch{return!1}})(),m={codeRemoveIndent:/^(?: {1,4}| {0,3}\\t)/gm,outputLinkReplace:/\\\\([\\[\\]])/g,indentCodeCompensation:/^(\\s+)(?:```)/,beginningSpace:/^\\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\\n/g,tabCharGlobal:/\\t/g,multipleSpaceGlobal:/\\s+/g,blankLine:/^[ \\t]*$/,doubleBlankLine:/\\n[ \\t]*\\n[ \\t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\\n {0,3}((?:=+|-+) *)(?=\\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \\t]?/gm,listReplaceTabs:/^\\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\\[[ xX]\\] /,listReplaceTask:/^\\[[ xX]\\] +/,anyLine:/\\n.*\\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\\||\\| *$/g,tableRowBlankLine:/\\n[ \\t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\\s|>)/i,endPreScriptTag:/^<\\/(pre|code|kbd|script)(\\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'\"]*[^\\s])\\s+(['\"])(.*)\\2/,unicodeAlphaNumeric:/[\\p{L}\\p{N}]/u,escapeTest:/[&<>\"']/,escapeReplace:/[&<>\"']/g,escapeTestNoEncode:/[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/,escapeReplaceNoEncode:/[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/g,unescapeTest:/&(#(?:\\d+)|(?:#x[0-9A-Fa-f]+)|(?:\\w+));?/ig,caret:/(^|[^\\[])\\^/g,percentDecode:/%25/g,findPipe:/\\|/g,splitPipe:/ \\|/,slashPipe:/\\\\\\|/g,carriageReturn:/\\r\\n|\\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\\S*/,endingNewline:/\\n$/,listItemRegex:l=>new RegExp(`^( {0,3}${l})((?:[\t ][^\\\\n]*)?(?:\\\\n|$))`),nextBulletRegex:l=>new RegExp(`^ {0,${Math.min(3,l-1)}}(?:[*+-]|\\\\d{1,9}[.)])((?:[ \t][^\\\\n]*)?(?:\\\\n|$))`),hrRegex:l=>new RegExp(`^ {0,${Math.min(3,l-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\\\* *){3,})(?:\\\\n+|$)`),fencesBeginRegex:l=>new RegExp(`^ {0,${Math.min(3,l-1)}}(?:\\`\\`\\`|~~~)`),headingBeginRegex:l=>new RegExp(`^ {0,${Math.min(3,l-1)}}#`),htmlBeginRegex:l=>new RegExp(`^ {0,${Math.min(3,l-1)}}<(?:[a-z].*>|!--)`,\"i\")},Re=/^(?:[ \\t]*(?:\\n|$))+/,Te=/^((?: {4}| {0,3}\\t)[^\\n]+(?:\\n(?:[ \\t]*(?:\\n|$))*)?)+/,Oe=/^ {0,3}(`{3,}(?=[^`\\n]*(?:\\n|$))|~{3,})([^\\n]*)(?:\\n|$)(?:|([\\s\\S]*?)(?:\\n|$))(?: {0,3}\\1[~`]* *(?=\\n|$)|$)/,I=/^ {0,3}((?:-[\\t ]*){3,}|(?:_[ \\t]*){3,}|(?:\\*[ \\t]*){3,})(?:\\n+|$)/,we=/^ {0,3}(#{1,6})(?=\\s|$)(.*)(?:\\n+|$)/,F=/(?:[*+-]|\\d{1,9}[.)])/,ie=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\\n(?!\\s*?\\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,oe=d(ie).replace(/bull/g,F).replace(/blockCode/g,/(?: {4}| {0,3}\\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\\n>]+>\\n/).replace(/\\|table/g,\"\").getRegex(),ye=d(ie).replace(/bull/g,F).replace(/blockCode/g,/(?: {4}| {0,3}\\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\\n>]+>\\n/).replace(/table/g,/ {0,3}\\|?(?:[:\\- ]*\\|)+[\\:\\- ]*\\n/).getRegex(),j=/^([^\\n]+(?:\\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\\n)[^\\n]+)*)/,Pe=/^[^\\n]+/,Q=/(?!\\s*\\])(?:\\\\[\\s\\S]|[^\\[\\]\\\\])+/,Se=d(/^ {0,3}\\[(label)\\]: *(?:\\n[ \\t]*)?([^<\\s][^\\s]*|<.*?>)(?:(?: +(?:\\n[ \\t]*)?| *\\n[ \\t]*)(title))? *(?:\\n+|$)/).replace(\"label\",Q).replace(\"title\",/(?:\"(?:\\\\\"?|[^\"\\\\])*\"|'[^'\\n]*(?:\\n[^'\\n]+)*\\n?'|\\([^()]*\\))/).getRegex(),$e=d(/^( {0,3}bull)([ \\t][^\\n]+?)?(?:\\n|$)/).replace(/bull/g,F).getRegex(),v=\"address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul\",U=/<!--(?:-?>|[\\s\\S]*?(?:-->|$))/,_e=d(\"^ {0,3}(?:<(script|pre|style|textarea)[\\\\s>][\\\\s\\\\S]*?(?:</\\\\1>[^\\\\n]*\\\\n+|$)|comment[^\\\\n]*(\\\\n+|$)|<\\\\?[\\\\s\\\\S]*?(?:\\\\?>\\\\n*|$)|<![A-Z][\\\\s\\\\S]*?(?:>\\\\n*|$)|<!\\\\[CDATA\\\\[[\\\\s\\\\S]*?(?:\\\\]\\\\]>\\\\n*|$)|</?(tag)(?: +|\\\\n|/?>)[\\\\s\\\\S]*?(?:(?:\\\\n[ \t]*)+\\\\n|$)|<(?!script|pre|style|textarea)([a-z][\\\\w-]*)(?:attribute)*? */?>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n[ \t]*)+\\\\n|$)|</(?!script|pre|style|textarea)[a-z][\\\\w-]*\\\\s*>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n[ \t]*)+\\\\n|$))\",\"i\").replace(\"comment\",U).replace(\"tag\",v).replace(\"attribute\",/ +[a-zA-Z:_][\\w.:-]*(?: *= *\"[^\"\\n]*\"| *= *'[^'\\n]*'| *= *[^\\s\"'=<>`]+)?/).getRegex(),ae=d(j).replace(\"hr\",I).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"|lheading\",\"\").replace(\"|table\",\"\").replace(\"blockquote\",\" {0,3}>\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)]) \").replace(\"html\",\"</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",v).getRegex(),Le=d(/^( {0,3}> ?(paragraph|[^\\n]*)(?:\\n|$))+/).replace(\"paragraph\",ae).getRegex(),K={blockquote:Le,code:Te,def:Se,fences:Oe,heading:we,hr:I,html:_e,lheading:oe,list:$e,newline:Re,paragraph:ae,table:E,text:Pe},re=d(\"^ *([^\\\\n ].*)\\\\n {0,3}((?:\\\\| *)?:?-+:? *(?:\\\\| *:?-+:? *)*(?:\\\\| *)?)(?:\\\\n((?:(?! *\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)\").replace(\"hr\",I).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"blockquote\",\" {0,3}>\").replace(\"code\",\"(?: {4}| {0,3}\t)[^\\\\n]\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)]) \").replace(\"html\",\"</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",v).getRegex(),Me={...K,lheading:ye,table:re,paragraph:d(j).replace(\"hr\",I).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"|lheading\",\"\").replace(\"table\",re).replace(\"blockquote\",\" {0,3}>\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)]) \").replace(\"html\",\"</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",v).getRegex()},ze={...K,html:d(`^ *(?:comment *(?:\\\\n|\\\\s*$)|<(tag)[\\\\s\\\\S]+?</\\\\1> *(?:\\\\n{2,}|\\\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\\\s[^'\"/>\\\\s]*)*?/?> *(?:\\\\n{2,}|\\\\s*$))`).replace(\"comment\",U).replace(/tag/g,\"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\\\b)\\\\w+(?!:|[^\\\\w\\\\s@]*@)\\\\b\").getRegex(),def:/^ *\\[([^\\]]+)\\]: *<?([^\\s>]+)>?(?: +([\"(][^\\n]+[\")]))? *(?:\\n+|$)/,heading:/^(#{1,6})(.*)(?:\\n+|$)/,fences:E,lheading:/^(.+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,paragraph:d(j).replace(\"hr\",I).replace(\"heading\",` *#{1,6} *[^\n]`).replace(\"lheading\",oe).replace(\"|table\",\"\").replace(\"blockquote\",\" {0,3}>\").replace(\"|fences\",\"\").replace(\"|list\",\"\").replace(\"|html\",\"\").replace(\"|tag\",\"\").getRegex()},Ae=/^\\\\([!\"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_`{|}~])/,Ee=/^(`+)([^`]|[^`][\\s\\S]*?[^`])\\1(?!`)/,le=/^( {2,}|\\\\)\\n(?!\\s*$)/,Ie=/^(`+|[^`])(?:(?= {2,}\\n)|[\\s\\S]*?(?:(?=[\\\\<!\\[`*_]|\\b_|$)|[^ ](?= {2,}\\n)))/,D=/[\\p{P}\\p{S}]/u,W=/[\\s\\p{P}\\p{S}]/u,ue=/[^\\s\\p{P}\\p{S}]/u,Ce=d(/^((?![*_])punctSpace)/,\"u\").replace(/punctSpace/g,W).getRegex(),pe=/(?!~)[\\p{P}\\p{S}]/u,Be=/(?!~)[\\s\\p{P}\\p{S}]/u,qe=/(?:[^\\s\\p{P}\\p{S}]|~)/u,ve=d(/link|precode-code|html/,\"g\").replace(\"link\",/\\[(?:[^\\[\\]`]|(?<a>`+)[^`]+\\k<a>(?!`))*?\\]\\((?:\\\\[\\s\\S]|[^\\\\\\(\\)]|\\((?:\\\\[\\s\\S]|[^\\\\\\(\\)])*\\))*\\)/).replace(\"precode-\",be?\"(?<!`)()\":\"(^^|[^`])\").replace(\"code\",/(?<b>`+)[^`]+\\k<b>(?!`)/).replace(\"html\",/<(?! )[^<>]*?>/).getRegex(),ce=/^(?:\\*+(?:((?!\\*)punct)|[^\\s*]))|^_+(?:((?!_)punct)|([^\\s_]))/,De=d(ce,\"u\").replace(/punct/g,D).getRegex(),He=d(ce,\"u\").replace(/punct/g,pe).getRegex(),he=\"^[^_*]*?__[^_*]*?\\\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\\\*)punct(\\\\*+)(?=[\\\\s]|$)|notPunctSpace(\\\\*+)(?!\\\\*)(?=punctSpace|$)|(?!\\\\*)punctSpace(\\\\*+)(?=notPunctSpace)|[\\\\s](\\\\*+)(?!\\\\*)(?=punct)|(?!\\\\*)punct(\\\\*+)(?!\\\\*)(?=punct)|notPunctSpace(\\\\*+)(?=notPunctSpace)\",Ze=d(he,\"gu\").replace(/notPunctSpace/g,ue).replace(/punctSpace/g,W).replace(/punct/g,D).getRegex(),Ge=d(he,\"gu\").replace(/notPunctSpace/g,qe).replace(/punctSpace/g,Be).replace(/punct/g,pe).getRegex(),Ne=d(\"^[^_*]*?\\\\*\\\\*[^_*]*?_[^_*]*?(?=\\\\*\\\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)\",\"gu\").replace(/notPunctSpace/g,ue).replace(/punctSpace/g,W).replace(/punct/g,D).getRegex(),Fe=d(/\\\\(punct)/,\"gu\").replace(/punct/g,D).getRegex(),je=d(/^<(scheme:[^\\s\\x00-\\x1f<>]*|email)>/).replace(\"scheme\",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(\"email\",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Qe=d(U).replace(\"(?:-->|$)\",\"-->\").getRegex(),Ue=d(\"^comment|^</[a-zA-Z][\\\\w:-]*\\\\s*>|^<[a-zA-Z][\\\\w-]*(?:attribute)*?\\\\s*/?>|^<\\\\?[\\\\s\\\\S]*?\\\\?>|^<![a-zA-Z]+\\\\s[\\\\s\\\\S]*?>|^<!\\\\[CDATA\\\\[[\\\\s\\\\S]*?\\\\]\\\\]>\").replace(\"comment\",Qe).replace(\"attribute\",/\\s+[a-zA-Z:_][\\w.:-]*(?:\\s*=\\s*\"[^\"]*\"|\\s*=\\s*'[^']*'|\\s*=\\s*[^\\s\"'=<>`]+)?/).getRegex(),q=/(?:\\[(?:\\\\[\\s\\S]|[^\\[\\]\\\\])*\\]|\\\\[\\s\\S]|`+[^`]*?`+(?!`)|[^\\[\\]\\\\`])*?/,Ke=d(/^!?\\[(label)\\]\\(\\s*(href)(?:(?:[ \\t]*(?:\\n[ \\t]*)?)(title))?\\s*\\)/).replace(\"label\",q).replace(\"href\",/<(?:\\\\.|[^\\n<>\\\\])+>|[^ \\t\\n\\x00-\\x1f]*/).replace(\"title\",/\"(?:\\\\\"?|[^\"\\\\])*\"|'(?:\\\\'?|[^'\\\\])*'|\\((?:\\\\\\)?|[^)\\\\])*\\)/).getRegex(),de=d(/^!?\\[(label)\\]\\[(ref)\\]/).replace(\"label\",q).replace(\"ref\",Q).getRegex(),ke=d(/^!?\\[(ref)\\](?:\\[\\])?/).replace(\"ref\",Q).getRegex(),We=d(\"reflink|nolink(?!\\\\()\",\"g\").replace(\"reflink\",de).replace(\"nolink\",ke).getRegex(),se=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,X={_backpedal:E,anyPunctuation:Fe,autolink:je,blockSkip:ve,br:le,code:Ee,del:E,emStrongLDelim:De,emStrongRDelimAst:Ze,emStrongRDelimUnd:Ne,escape:Ae,link:Ke,nolink:ke,punctuation:Ce,reflink:de,reflinkSearch:We,tag:Ue,text:Ie,url:E},Xe={...X,link:d(/^!?\\[(label)\\]\\((.*?)\\)/).replace(\"label\",q).getRegex(),reflink:d(/^!?\\[(label)\\]\\s*\\[([^\\]]*)\\]/).replace(\"label\",q).getRegex()},N={...X,emStrongRDelimAst:Ge,emStrongLDelim:He,url:d(/^((?:protocol):\\/\\/|www\\.)(?:[a-zA-Z0-9\\-]+\\.?)+[^\\s<]*|^email/).replace(\"protocol\",se).replace(\"email\",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'\"~()&]+|\\([^)]*\\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'\"~)]+(?!$))+/,del:/^(~~?)(?=[^\\s~])((?:\\\\[\\s\\S]|[^\\\\])*?(?:\\\\[\\s\\S]|[^\\s~\\\\]))\\1(?=[^~]|$)/,text:d(/^([`~]+|[^`~])(?:(?= {2,}\\n)|(?=[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@)|[\\s\\S]*?(?:(?=[\\\\<!\\[`*~_]|\\b_|protocol:\\/\\/|www\\.|$)|[^ ](?= {2,}\\n)|[^a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-](?=[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@)))/).replace(\"protocol\",se).getRegex()},Je={...N,br:d(le).replace(\"{2,}\",\"*\").getRegex(),text:d(N.text).replace(\"\\\\b_\",\"\\\\b_| {2,}\\\\n\").replace(/\\{2,\\}/g,\"*\").getRegex()},C={normal:K,gfm:Me,pedantic:ze},M={normal:X,gfm:N,breaks:Je,pedantic:Xe};var Ve={\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#39;\"},ge=l=>Ve[l];function w(l,e){if(e){if(m.escapeTest.test(l))return l.replace(m.escapeReplace,ge)}else if(m.escapeTestNoEncode.test(l))return l.replace(m.escapeReplaceNoEncode,ge);return l}function J(l){try{l=encodeURI(l).replace(m.percentDecode,\"%\")}catch{return null}return l}function V(l,e){let t=l.replace(m.findPipe,(i,s,a)=>{let o=!1,p=s;for(;--p>=0&&a[p]===\"\\\\\";)o=!o;return o?\"|\":\" |\"}),n=t.split(m.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length<e;)n.push(\"\");for(;r<n.length;r++)n[r]=n[r].trim().replace(m.slashPipe,\"|\");return n}function z(l,e,t){let n=l.length;if(n===0)return\"\";let r=0;for(;r<n;){let i=l.charAt(n-r-1);if(i===e&&!t)r++;else if(i!==e&&t)r++;else break}return l.slice(0,n-r)}function fe(l,e){if(l.indexOf(e[1])===-1)return-1;let t=0;for(let n=0;n<l.length;n++)if(l[n]===\"\\\\\")n++;else if(l[n]===e[0])t++;else if(l[n]===e[1]&&(t--,t<0))return n;return t>0?-2:-1}function me(l,e,t,n,r){let i=e.href,s=e.title||null,a=l[1].replace(r.other.outputLinkReplace,\"$1\");n.state.inLink=!0;let o={type:l[0].charAt(0)===\"!\"?\"image\":\"link\",raw:t,href:i,title:s,text:a,tokens:n.inlineTokens(a)};return n.state.inLink=!1,o}function Ye(l,e,t){let n=l.match(t.other.indentCodeCompensation);if(n===null)return e;let r=n[1];return e.split(`\n`).map(i=>{let s=i.match(t.other.beginningSpace);if(s===null)return i;let[a]=s;return a.length>=r.length?i.slice(r.length):i}).join(`\n`)}var y=class{options;rules;lexer;constructor(e){this.options=e||T}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:\"space\",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let n=t[0].replace(this.rules.other.codeRemoveIndent,\"\");return{type:\"code\",raw:t[0],codeBlockStyle:\"indented\",text:this.options.pedantic?n:z(n,`\n`)}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let n=t[0],r=Ye(n,t[3]||\"\",this.rules);return{type:\"code\",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,\"$1\"):t[2],text:r}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let n=t[2].trim();if(this.rules.other.endingHash.test(n)){let r=z(n,\"#\");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(n=r.trim())}return{type:\"heading\",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:\"hr\",raw:z(t[0],`\n`)}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let n=z(t[0],`\n`).split(`\n`),r=\"\",i=\"\",s=[];for(;n.length>0;){let a=!1,o=[],p;for(p=0;p<n.length;p++)if(this.rules.other.blockquoteStart.test(n[p]))o.push(n[p]),a=!0;else if(!a)o.push(n[p]);else break;n=n.slice(p);let u=o.join(`\n`),c=u.replace(this.rules.other.blockquoteSetextReplace,`\n $1`).replace(this.rules.other.blockquoteSetextReplace2,\"\");r=r?`${r}\n${u}`:u,i=i?`${i}\n${c}`:c;let g=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(c,s,!0),this.lexer.state.top=g,n.length===0)break;let h=s.at(-1);if(h?.type===\"code\")break;if(h?.type===\"blockquote\"){let R=h,f=R.raw+`\n`+n.join(`\n`),O=this.blockquote(f);s[s.length-1]=O,r=r.substring(0,r.length-R.raw.length)+O.raw,i=i.substring(0,i.length-R.text.length)+O.text;break}else if(h?.type===\"list\"){let R=h,f=R.raw+`\n`+n.join(`\n`),O=this.list(f);s[s.length-1]=O,r=r.substring(0,r.length-h.raw.length)+O.raw,i=i.substring(0,i.length-R.raw.length)+O.raw,n=f.substring(s.at(-1).raw.length).split(`\n`);continue}}return{type:\"blockquote\",raw:r,tokens:s,text:i}}}list(e){let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim(),r=n.length>1,i={type:\"list\",raw:\"\",ordered:r,start:r?+n.slice(0,-1):\"\",loose:!1,items:[]};n=r?`\\\\d{1,9}\\\\${n.slice(-1)}`:`\\\\${n}`,this.options.pedantic&&(n=r?n:\"[*+-]\");let s=this.rules.other.listItemRegex(n),a=!1;for(;e;){let p=!1,u=\"\",c=\"\";if(!(t=s.exec(e))||this.rules.block.hr.test(e))break;u=t[0],e=e.substring(u.length);let g=t[2].split(`\n`,1)[0].replace(this.rules.other.listReplaceTabs,H=>\" \".repeat(3*H.length)),h=e.split(`\n`,1)[0],R=!g.trim(),f=0;if(this.options.pedantic?(f=2,c=g.trimStart()):R?f=t[1].length+1:(f=t[2].search(this.rules.other.nonSpaceChar),f=f>4?1:f,c=g.slice(f),f+=t[1].length),R&&this.rules.other.blankLine.test(h)&&(u+=h+`\n`,e=e.substring(h.length+1),p=!0),!p){let H=this.rules.other.nextBulletRegex(f),ee=this.rules.other.hrRegex(f),te=this.rules.other.fencesBeginRegex(f),ne=this.rules.other.headingBeginRegex(f),xe=this.rules.other.htmlBeginRegex(f);for(;e;){let Z=e.split(`\n`,1)[0],A;if(h=Z,this.options.pedantic?(h=h.replace(this.rules.other.listReplaceNesting,\" \"),A=h):A=h.replace(this.rules.other.tabCharGlobal,\" \"),te.test(h)||ne.test(h)||xe.test(h)||H.test(h)||ee.test(h))break;if(A.search(this.rules.other.nonSpaceChar)>=f||!h.trim())c+=`\n`+A.slice(f);else{if(R||g.replace(this.rules.other.tabCharGlobal,\" \").search(this.rules.other.nonSpaceChar)>=4||te.test(g)||ne.test(g)||ee.test(g))break;c+=`\n`+h}!R&&!h.trim()&&(R=!0),u+=Z+`\n`,e=e.substring(Z.length+1),g=A.slice(f)}}i.loose||(a?i.loose=!0:this.rules.other.doubleBlankLine.test(u)&&(a=!0));let O=null,Y;this.options.gfm&&(O=this.rules.other.listIsTask.exec(c),O&&(Y=O[0]!==\"[ ] \",c=c.replace(this.rules.other.listReplaceTask,\"\"))),i.items.push({type:\"list_item\",raw:u,task:!!O,checked:Y,loose:!1,text:c,tokens:[]}),i.raw+=u}let o=i.items.at(-1);if(o)o.raw=o.raw.trimEnd(),o.text=o.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let p=0;p<i.items.length;p++)if(this.lexer.state.top=!1,i.items[p].tokens=this.lexer.blockTokens(i.items[p].text,[]),!i.loose){let u=i.items[p].tokens.filter(g=>g.type===\"space\"),c=u.length>0&&u.some(g=>this.rules.other.anyLine.test(g.raw));i.loose=c}if(i.loose)for(let p=0;p<i.items.length;p++)i.items[p].loose=!0;return i}}html(e){let t=this.rules.block.html.exec(e);if(t)return{type:\"html\",block:!0,raw:t[0],pre:t[1]===\"pre\"||t[1]===\"script\"||t[1]===\"style\",text:t[0]}}def(e){let t=this.rules.block.def.exec(e);if(t){let n=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal,\" \"),r=t[2]?t[2].replace(this.rules.other.hrefBrackets,\"$1\").replace(this.rules.inline.anyPunctuation,\"$1\"):\"\",i=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,\"$1\"):t[3];return{type:\"def\",tag:n,raw:t[0],href:r,title:i}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let n=V(t[1]),r=t[2].replace(this.rules.other.tableAlignChars,\"\").split(\"|\"),i=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,\"\").split(`\n`):[],s={type:\"table\",raw:t[0],header:[],align:[],rows:[]};if(n.length===r.length){for(let a of r)this.rules.other.tableAlignRight.test(a)?s.align.push(\"right\"):this.rules.other.tableAlignCenter.test(a)?s.align.push(\"center\"):this.rules.other.tableAlignLeft.test(a)?s.align.push(\"left\"):s.align.push(null);for(let a=0;a<n.length;a++)s.header.push({text:n[a],tokens:this.lexer.inline(n[a]),header:!0,align:s.align[a]});for(let a of i)s.rows.push(V(a,s.header.length).map((o,p)=>({text:o,tokens:this.lexer.inline(o),header:!1,align:s.align[p]})));return s}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t)return{type:\"heading\",raw:t[0],depth:t[2].charAt(0)===\"=\"?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let n=t[1].charAt(t[1].length-1)===`\n`?t[1].slice(0,-1):t[1];return{type:\"paragraph\",raw:t[0],text:n,tokens:this.lexer.inline(n)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:\"text\",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:\"escape\",raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:\"html\",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let n=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(n)){if(!this.rules.other.endAngleBracket.test(n))return;let s=z(n.slice(0,-1),\"\\\\\");if((n.length-s.length)%2===0)return}else{let s=fe(t[2],\"()\");if(s===-2)return;if(s>-1){let o=(t[0].indexOf(\"!\")===0?5:4)+t[1].length+s;t[2]=t[2].substring(0,s),t[0]=t[0].substring(0,o).trim(),t[3]=\"\"}}let r=t[2],i=\"\";if(this.options.pedantic){let s=this.rules.other.pedanticHrefTitle.exec(r);s&&(r=s[1],i=s[3])}else i=t[3]?t[3].slice(1,-1):\"\";return r=r.trim(),this.rules.other.startAngleBracket.test(r)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(n)?r=r.slice(1):r=r.slice(1,-1)),me(t,{href:r&&r.replace(this.rules.inline.anyPunctuation,\"$1\"),title:i&&i.replace(this.rules.inline.anyPunctuation,\"$1\")},t[0],this.lexer,this.rules)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let r=(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal,\" \"),i=t[r.toLowerCase()];if(!i){let s=n[0].charAt(0);return{type:\"text\",raw:s,text:s}}return me(n,i,n[0],this.lexer,this.rules)}}emStrong(e,t,n=\"\"){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r||r[3]&&n.match(this.rules.other.unicodeAlphaNumeric))return;if(!(r[1]||r[2]||\"\")||!n||this.rules.inline.punctuation.exec(n)){let s=[...r[0]].length-1,a,o,p=s,u=0,c=r[0][0]===\"*\"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+s);(r=c.exec(t))!=null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a)continue;if(o=[...a].length,r[3]||r[4]){p+=o;continue}else if((r[5]||r[6])&&s%3&&!((s+o)%3)){u+=o;continue}if(p-=o,p>0)continue;o=Math.min(o,o+p+u);let g=[...r[0]][0].length,h=e.slice(0,s+r.index+g+o);if(Math.min(s,o)%2){let f=h.slice(1,-1);return{type:\"em\",raw:h,text:f,tokens:this.lexer.inlineTokens(f)}}let R=h.slice(2,-2);return{type:\"strong\",raw:h,text:R,tokens:this.lexer.inlineTokens(R)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let n=t[2].replace(this.rules.other.newLineCharGlobal,\" \"),r=this.rules.other.nonSpaceChar.test(n),i=this.rules.other.startingSpaceChar.test(n)&&this.rules.other.endingSpaceChar.test(n);return r&&i&&(n=n.substring(1,n.length-1)),{type:\"codespan\",raw:t[0],text:n}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:\"br\",raw:t[0]}}del(e){let t=this.rules.inline.del.exec(e);if(t)return{type:\"del\",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let n,r;return t[2]===\"@\"?(n=t[1],r=\"mailto:\"+n):(n=t[1],r=n),{type:\"link\",raw:t[0],text:n,href:r,tokens:[{type:\"text\",raw:n,text:n}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let n,r;if(t[2]===\"@\")n=t[0],r=\"mailto:\"+n;else{let i;do i=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??\"\";while(i!==t[0]);n=t[0],t[1]===\"www.\"?r=\"http://\"+t[0]:r=t[0]}return{type:\"link\",raw:t[0],text:n,href:r,tokens:[{type:\"text\",raw:n,text:n}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let n=this.lexer.state.inRawBlock;return{type:\"text\",raw:t[0],text:t[0],escaped:n}}}};var x=class l{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||T,this.options.tokenizer=this.options.tokenizer||new y,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:m,block:C.normal,inline:M.normal};this.options.pedantic?(t.block=C.pedantic,t.inline=M.pedantic):this.options.gfm&&(t.block=C.gfm,this.options.breaks?t.inline=M.breaks:t.inline=M.gfm),this.tokenizer.rules=t}static get rules(){return{block:C,inline:M}}static lex(e,t){return new l(t).lex(e)}static lexInline(e,t){return new l(t).inlineTokens(e)}lex(e){e=e.replace(m.carriageReturn,`\n`),this.blockTokens(e,this.tokens);for(let t=0;t<this.inlineQueue.length;t++){let n=this.inlineQueue[t];this.inlineTokens(n.src,n.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],n=!1){for(this.options.pedantic&&(e=e.replace(m.tabCharGlobal,\" \").replace(m.spaceLine,\"\"));e;){let r;if(this.options.extensions?.block?.some(s=>(r=s.call({lexer:this},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1))continue;if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length);let s=t.at(-1);r.raw.length===1&&s!==void 0?s.raw+=`\n`:t.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length);let s=t.at(-1);s?.type===\"paragraph\"||s?.type===\"text\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.text,this.inlineQueue.at(-1).src=s.text):t.push(r);continue}if(r=this.tokenizer.fences(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.heading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.hr(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.blockquote(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.list(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.html(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.def(e)){e=e.substring(r.raw.length);let s=t.at(-1);s?.type===\"paragraph\"||s?.type===\"text\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.raw,this.inlineQueue.at(-1).src=s.text):this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title},t.push(r));continue}if(r=this.tokenizer.table(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.lheading(e)){e=e.substring(r.raw.length),t.push(r);continue}let i=e;if(this.options.extensions?.startBlock){let s=1/0,a=e.slice(1),o;this.options.extensions.startBlock.forEach(p=>{o=p.call({lexer:this},a),typeof o==\"number\"&&o>=0&&(s=Math.min(s,o))}),s<1/0&&s>=0&&(i=e.substring(0,s+1))}if(this.state.top&&(r=this.tokenizer.paragraph(i))){let s=t.at(-1);n&&s?.type===\"paragraph\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):t.push(r),n=i.length!==e.length,e=e.substring(r.raw.length);continue}if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length);let s=t.at(-1);s?.type===\"text\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):t.push(r);continue}if(e){let s=\"Infinite loop on byte: \"+e.charCodeAt(0);if(this.options.silent){console.error(s);break}else throw new Error(s)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let n=e,r=null;if(this.tokens.links){let o=Object.keys(this.tokens.links);if(o.length>0)for(;(r=this.tokenizer.rules.inline.reflinkSearch.exec(n))!=null;)o.includes(r[0].slice(r[0].lastIndexOf(\"[\")+1,-1))&&(n=n.slice(0,r.index)+\"[\"+\"a\".repeat(r[0].length-2)+\"]\"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(r=this.tokenizer.rules.inline.anyPunctuation.exec(n))!=null;)n=n.slice(0,r.index)+\"++\"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let i;for(;(r=this.tokenizer.rules.inline.blockSkip.exec(n))!=null;)i=r[2]?r[2].length:0,n=n.slice(0,r.index+i)+\"[\"+\"a\".repeat(r[0].length-i-2)+\"]\"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let s=!1,a=\"\";for(;e;){s||(a=\"\"),s=!1;let o;if(this.options.extensions?.inline?.some(u=>(o=u.call({lexer:this},e,t))?(e=e.substring(o.raw.length),t.push(o),!0):!1))continue;if(o=this.tokenizer.escape(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.tag(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.link(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(o.raw.length);let u=t.at(-1);o.type===\"text\"&&u?.type===\"text\"?(u.raw+=o.raw,u.text+=o.text):t.push(o);continue}if(o=this.tokenizer.emStrong(e,n,a)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.codespan(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.br(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.del(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.autolink(e)){e=e.substring(o.raw.length),t.push(o);continue}if(!this.state.inLink&&(o=this.tokenizer.url(e))){e=e.substring(o.raw.length),t.push(o);continue}let p=e;if(this.options.extensions?.startInline){let u=1/0,c=e.slice(1),g;this.options.extensions.startInline.forEach(h=>{g=h.call({lexer:this},c),typeof g==\"number\"&&g>=0&&(u=Math.min(u,g))}),u<1/0&&u>=0&&(p=e.substring(0,u+1))}if(o=this.tokenizer.inlineText(p)){e=e.substring(o.raw.length),o.raw.slice(-1)!==\"_\"&&(a=o.raw.slice(-1)),s=!0;let u=t.at(-1);u?.type===\"text\"?(u.raw+=o.raw,u.text+=o.text):t.push(o);continue}if(e){let u=\"Infinite loop on byte: \"+e.charCodeAt(0);if(this.options.silent){console.error(u);break}else throw new Error(u)}}return t}};var P=class{options;parser;constructor(e){this.options=e||T}space(e){return\"\"}code({text:e,lang:t,escaped:n}){let r=(t||\"\").match(m.notSpaceStart)?.[0],i=e.replace(m.endingNewline,\"\")+`\n`;return r?'<pre><code class=\"language-'+w(r)+'\">'+(n?i:w(i,!0))+`</code></pre>\n`:\"<pre><code>\"+(n?i:w(i,!0))+`</code></pre>\n`}blockquote({tokens:e}){return`<blockquote>\n${this.parser.parse(e)}</blockquote>\n`}html({text:e}){return e}def(e){return\"\"}heading({tokens:e,depth:t}){return`<h${t}>${this.parser.parseInline(e)}</h${t}>\n`}hr(e){return`<hr>\n`}list(e){let t=e.ordered,n=e.start,r=\"\";for(let a=0;a<e.items.length;a++){let o=e.items[a];r+=this.listitem(o)}let i=t?\"ol\":\"ul\",s=t&&n!==1?' start=\"'+n+'\"':\"\";return\"<\"+i+s+`>\n`+r+\"</\"+i+`>\n`}listitem(e){let t=\"\";if(e.task){let n=this.checkbox({checked:!!e.checked});e.loose?e.tokens[0]?.type===\"paragraph\"?(e.tokens[0].text=n+\" \"+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&e.tokens[0].tokens[0].type===\"text\"&&(e.tokens[0].tokens[0].text=n+\" \"+w(e.tokens[0].tokens[0].text),e.tokens[0].tokens[0].escaped=!0)):e.tokens.unshift({type:\"text\",raw:n+\" \",text:n+\" \",escaped:!0}):t+=n+\" \"}return t+=this.parser.parse(e.tokens,!!e.loose),`<li>${t}</li>\n`}checkbox({checked:e}){return\"<input \"+(e?'checked=\"\" ':\"\")+'disabled=\"\" type=\"checkbox\">'}paragraph({tokens:e}){return`<p>${this.parser.parseInline(e)}</p>\n`}table(e){let t=\"\",n=\"\";for(let i=0;i<e.header.length;i++)n+=this.tablecell(e.header[i]);t+=this.tablerow({text:n});let r=\"\";for(let i=0;i<e.rows.length;i++){let s=e.rows[i];n=\"\";for(let a=0;a<s.length;a++)n+=this.tablecell(s[a]);r+=this.tablerow({text:n})}return r&&(r=`<tbody>${r}</tbody>`),`<table>\n<thead>\n`+t+`</thead>\n`+r+`</table>\n`}tablerow({text:e}){return`<tr>\n${e}</tr>\n`}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?\"th\":\"td\";return(e.align?`<${n} align=\"${e.align}\">`:`<${n}>`)+t+`</${n}>\n`}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${w(e,!0)}</code>`}br(e){return\"<br>\"}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),i=J(e);if(i===null)return r;e=i;let s='<a href=\"'+e+'\"';return t&&(s+=' title=\"'+w(t)+'\"'),s+=\">\"+r+\"</a>\",s}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let i=J(e);if(i===null)return w(n);e=i;let s=`<img src=\"${e}\" alt=\"${n}\"`;return t&&(s+=` title=\"${w(t)}\"`),s+=\">\",s}text(e){return\"tokens\"in e&&e.tokens?this.parser.parseInline(e.tokens):\"escaped\"in e&&e.escaped?e.text:w(e.text)}};var $=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return\"\"+e}image({text:e}){return\"\"+e}br(){return\"\"}};var b=class l{options;renderer;textRenderer;constructor(e){this.options=e||T,this.options.renderer=this.options.renderer||new P,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new $}static parse(e,t){return new l(t).parse(e)}static parseInline(e,t){return new l(t).parseInline(e)}parse(e,t=!0){let n=\"\";for(let r=0;r<e.length;r++){let i=e[r];if(this.options.extensions?.renderers?.[i.type]){let a=i,o=this.options.extensions.renderers[a.type].call({parser:this},a);if(o!==!1||![\"space\",\"hr\",\"heading\",\"code\",\"table\",\"blockquote\",\"list\",\"html\",\"def\",\"paragraph\",\"text\"].includes(a.type)){n+=o||\"\";continue}}let s=i;switch(s.type){case\"space\":{n+=this.renderer.space(s);continue}case\"hr\":{n+=this.renderer.hr(s);continue}case\"heading\":{n+=this.renderer.heading(s);continue}case\"code\":{n+=this.renderer.code(s);continue}case\"table\":{n+=this.renderer.table(s);continue}case\"blockquote\":{n+=this.renderer.blockquote(s);continue}case\"list\":{n+=this.renderer.list(s);continue}case\"html\":{n+=this.renderer.html(s);continue}case\"def\":{n+=this.renderer.def(s);continue}case\"paragraph\":{n+=this.renderer.paragraph(s);continue}case\"text\":{let a=s,o=this.renderer.text(a);for(;r+1<e.length&&e[r+1].type===\"text\";)a=e[++r],o+=`\n`+this.renderer.text(a);t?n+=this.renderer.paragraph({type:\"paragraph\",raw:o,text:o,tokens:[{type:\"text\",raw:o,text:o,escaped:!0}]}):n+=o;continue}default:{let a='Token with \"'+s.type+'\" type was not found.';if(this.options.silent)return console.error(a),\"\";throw new Error(a)}}}return n}parseInline(e,t=this.renderer){let n=\"\";for(let r=0;r<e.length;r++){let i=e[r];if(this.options.extensions?.renderers?.[i.type]){let a=this.options.extensions.renderers[i.type].call({parser:this},i);if(a!==!1||![\"escape\",\"html\",\"link\",\"image\",\"strong\",\"em\",\"codespan\",\"br\",\"del\",\"text\"].includes(i.type)){n+=a||\"\";continue}}let s=i;switch(s.type){case\"escape\":{n+=t.text(s);break}case\"html\":{n+=t.html(s);break}case\"link\":{n+=t.link(s);break}case\"image\":{n+=t.image(s);break}case\"strong\":{n+=t.strong(s);break}case\"em\":{n+=t.em(s);break}case\"codespan\":{n+=t.codespan(s);break}case\"br\":{n+=t.br(s);break}case\"del\":{n+=t.del(s);break}case\"text\":{n+=t.text(s);break}default:{let a='Token with \"'+s.type+'\" type was not found.';if(this.options.silent)return console.error(a),\"\";throw new Error(a)}}}return n}};var S=class{options;block;constructor(e){this.options=e||T}static passThroughHooks=new Set([\"preprocess\",\"postprocess\",\"processAllTokens\",\"emStrongMask\"]);static passThroughHooksRespectAsync=new Set([\"preprocess\",\"postprocess\",\"processAllTokens\"]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(){return this.block?x.lex:x.lexInline}provideParser(){return this.block?b.parse:b.parseInline}};var B=class{defaults=L();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=b;Renderer=P;TextRenderer=$;Lexer=x;Tokenizer=y;Hooks=S;constructor(...e){this.use(...e)}walkTokens(e,t){let n=[];for(let r of e)switch(n=n.concat(t.call(this,r)),r.type){case\"table\":{let i=r;for(let s of i.header)n=n.concat(this.walkTokens(s.tokens,t));for(let s of i.rows)for(let a of s)n=n.concat(this.walkTokens(a.tokens,t));break}case\"list\":{let i=r;n=n.concat(this.walkTokens(i.items,t));break}default:{let i=r;this.defaults.extensions?.childTokens?.[i.type]?this.defaults.extensions.childTokens[i.type].forEach(s=>{let a=i[s].flat(1/0);n=n.concat(this.walkTokens(a,t))}):i.tokens&&(n=n.concat(this.walkTokens(i.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(n=>{let r={...n};if(r.async=this.defaults.async||r.async||!1,n.extensions&&(n.extensions.forEach(i=>{if(!i.name)throw new Error(\"extension name required\");if(\"renderer\"in i){let s=t.renderers[i.name];s?t.renderers[i.name]=function(...a){let o=i.renderer.apply(this,a);return o===!1&&(o=s.apply(this,a)),o}:t.renderers[i.name]=i.renderer}if(\"tokenizer\"in i){if(!i.level||i.level!==\"block\"&&i.level!==\"inline\")throw new Error(\"extension level must be 'block' or 'inline'\");let s=t[i.level];s?s.unshift(i.tokenizer):t[i.level]=[i.tokenizer],i.start&&(i.level===\"block\"?t.startBlock?t.startBlock.push(i.start):t.startBlock=[i.start]:i.level===\"inline\"&&(t.startInline?t.startInline.push(i.start):t.startInline=[i.start]))}\"childTokens\"in i&&i.childTokens&&(t.childTokens[i.name]=i.childTokens)}),r.extensions=t),n.renderer){let i=this.defaults.renderer||new P(this.defaults);for(let s in n.renderer){if(!(s in i))throw new Error(`renderer '${s}' does not exist`);if([\"options\",\"parser\"].includes(s))continue;let a=s,o=n.renderer[a],p=i[a];i[a]=(...u)=>{let c=o.apply(i,u);return c===!1&&(c=p.apply(i,u)),c||\"\"}}r.renderer=i}if(n.tokenizer){let i=this.defaults.tokenizer||new y(this.defaults);for(let s in n.tokenizer){if(!(s in i))throw new Error(`tokenizer '${s}' does not exist`);if([\"options\",\"rules\",\"lexer\"].includes(s))continue;let a=s,o=n.tokenizer[a],p=i[a];i[a]=(...u)=>{let c=o.apply(i,u);return c===!1&&(c=p.apply(i,u)),c}}r.tokenizer=i}if(n.hooks){let i=this.defaults.hooks||new S;for(let s in n.hooks){if(!(s in i))throw new Error(`hook '${s}' does not exist`);if([\"options\",\"block\"].includes(s))continue;let a=s,o=n.hooks[a],p=i[a];S.passThroughHooks.has(s)?i[a]=u=>{if(this.defaults.async&&S.passThroughHooksRespectAsync.has(s))return(async()=>{let g=await o.call(i,u);return p.call(i,g)})();let c=o.call(i,u);return p.call(i,c)}:i[a]=(...u)=>{if(this.defaults.async)return(async()=>{let g=await o.apply(i,u);return g===!1&&(g=await p.apply(i,u)),g})();let c=o.apply(i,u);return c===!1&&(c=p.apply(i,u)),c}}r.hooks=i}if(n.walkTokens){let i=this.defaults.walkTokens,s=n.walkTokens;r.walkTokens=function(a){let o=[];return o.push(s.call(this,a)),i&&(o=o.concat(i.call(this,a))),o}}this.defaults={...this.defaults,...r}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return x.lex(e,t??this.defaults)}parser(e,t){return b.parse(e,t??this.defaults)}parseMarkdown(e){return(n,r)=>{let i={...r},s={...this.defaults,...i},a=this.onError(!!s.silent,!!s.async);if(this.defaults.async===!0&&i.async===!1)return a(new Error(\"marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise.\"));if(typeof n>\"u\"||n===null)return a(new Error(\"marked(): input parameter is undefined or null\"));if(typeof n!=\"string\")return a(new Error(\"marked(): input parameter is of type \"+Object.prototype.toString.call(n)+\", string expected\"));if(s.hooks&&(s.hooks.options=s,s.hooks.block=e),s.async)return(async()=>{let o=s.hooks?await s.hooks.preprocess(n):n,u=await(s.hooks?await s.hooks.provideLexer():e?x.lex:x.lexInline)(o,s),c=s.hooks?await s.hooks.processAllTokens(u):u;s.walkTokens&&await Promise.all(this.walkTokens(c,s.walkTokens));let h=await(s.hooks?await s.hooks.provideParser():e?b.parse:b.parseInline)(c,s);return s.hooks?await s.hooks.postprocess(h):h})().catch(a);try{s.hooks&&(n=s.hooks.preprocess(n));let p=(s.hooks?s.hooks.provideLexer():e?x.lex:x.lexInline)(n,s);s.hooks&&(p=s.hooks.processAllTokens(p)),s.walkTokens&&this.walkTokens(p,s.walkTokens);let c=(s.hooks?s.hooks.provideParser():e?b.parse:b.parseInline)(p,s);return s.hooks&&(c=s.hooks.postprocess(c)),c}catch(o){return a(o)}}}onError(e,t){return n=>{if(n.message+=`\nPlease report this to https://github.com/markedjs/marked.`,e){let r=\"<p>An error occurred:</p><pre>\"+w(n.message+\"\",!0)+\"</pre>\";return t?Promise.resolve(r):r}if(t)return Promise.reject(n);throw n}}};var _=new B;function k(l,e){return _.parse(l,e)}k.options=k.setOptions=function(l){return _.setOptions(l),k.defaults=_.defaults,G(k.defaults),k};k.getDefaults=L;k.defaults=T;k.use=function(...l){return _.use(...l),k.defaults=_.defaults,G(k.defaults),k};k.walkTokens=function(l,e){return _.walkTokens(l,e)};k.parseInline=_.parseInline;k.Parser=b;k.parser=b.parse;k.Renderer=P;k.TextRenderer=$;k.Lexer=x;k.lexer=x.lex;k.Tokenizer=y;k.Hooks=S;k.parse=k;var Zt=k.options,Gt=k.setOptions,Nt=k.use,Ft=k.walkTokens,jt=k.parseInline,Qt=k,Ut=b.parse,Kt=x.lex;export{S as Hooks,x as Lexer,B as Marked,b as Parser,P as Renderer,$ as TextRenderer,y as Tokenizer,T as defaults,L as getDefaults,Kt as lexer,k as marked,Zt as options,Qt as parse,jt as parseInline,Ut as parser,Gt as setOptions,Nt as use,Ft as walkTokens};\n//# sourceMappingURL=marked.esm.js.map\n","export function dedent(templ) {\n var values = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n values[_i - 1] = arguments[_i];\n }\n var strings = Array.from(typeof templ === 'string' ? [templ] : templ);\n strings[strings.length - 1] = strings[strings.length - 1].replace(/\\r?\\n([\\t ]*)$/, '');\n var indentLengths = strings.reduce(function (arr, str) {\n var matches = str.match(/\\n([\\t ]+|(?!\\s).)/g);\n if (matches) {\n return arr.concat(matches.map(function (match) { var _a, _b; return (_b = (_a = match.match(/[\\t ]/g)) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0; }));\n }\n return arr;\n }, []);\n if (indentLengths.length) {\n var pattern_1 = new RegExp(\"\\n[\\t ]{\" + Math.min.apply(Math, indentLengths) + \"}\", 'g');\n strings = strings.map(function (str) { return str.replace(pattern_1, '\\n'); });\n }\n strings[0] = strings[0].replace(/^\\r?\\n/, '');\n var string = strings[0];\n values.forEach(function (value, i) {\n var endentations = string.match(/(?:^|\\n)( *)$/);\n var endentation = endentations ? endentations[1] : '';\n var indentedValue = value;\n if (typeof value === 'string' && value.includes('\\n')) {\n indentedValue = String(value)\n .split('\\n')\n .map(function (str, i) {\n return i === 0 ? str : \"\" + endentation + str;\n })\n .join('\\n');\n }\n string += indentedValue + strings[i + 1];\n });\n return string;\n}\nexport default dedent;\n//# sourceMappingURL=index.js.map","import {\n decodeEntities\n} from \"./chunk-GEFDOKGD.mjs\";\nimport {\n common_default,\n getConfig,\n hasKatex,\n renderKatexSanitized,\n sanitizeText\n} from \"./chunk-7R4GIKGN.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/rendering-util/icons.ts\nimport { getIconData, iconToHTML, iconToSVG, replaceIDs, stringToIcon } from \"@iconify/utils\";\nvar unknownIcon = {\n body: '<g><rect width=\"80\" height=\"80\" style=\"fill: #087ebf; stroke-width: 0px;\"/><text transform=\"translate(21.16 64.67)\" style=\"fill: #fff; font-family: ArialMT, Arial; font-size: 67.75px;\"><tspan x=\"0\" y=\"0\">?</tspan></text></g>',\n height: 80,\n width: 80\n};\nvar iconsStore = /* @__PURE__ */ new Map();\nvar loaderStore = /* @__PURE__ */ new Map();\nvar registerIconPacks = /* @__PURE__ */ __name((iconLoaders) => {\n for (const iconLoader of iconLoaders) {\n if (!iconLoader.name) {\n throw new Error(\n 'Invalid icon loader. Must have a \"name\" property with non-empty string value.'\n );\n }\n log.debug(\"Registering icon pack:\", iconLoader.name);\n if (\"loader\" in iconLoader) {\n loaderStore.set(iconLoader.name, iconLoader.loader);\n } else if (\"icons\" in iconLoader) {\n iconsStore.set(iconLoader.name, iconLoader.icons);\n } else {\n log.error(\"Invalid icon loader:\", iconLoader);\n throw new Error('Invalid icon loader. Must have either \"icons\" or \"loader\" property.');\n }\n }\n}, \"registerIconPacks\");\nvar getRegisteredIconData = /* @__PURE__ */ __name(async (iconName, fallbackPrefix) => {\n const data = stringToIcon(iconName, true, fallbackPrefix !== void 0);\n if (!data) {\n throw new Error(`Invalid icon name: ${iconName}`);\n }\n const prefix = data.prefix || fallbackPrefix;\n if (!prefix) {\n throw new Error(`Icon name must contain a prefix: ${iconName}`);\n }\n let icons = iconsStore.get(prefix);\n if (!icons) {\n const loader = loaderStore.get(prefix);\n if (!loader) {\n throw new Error(`Icon set not found: ${data.prefix}`);\n }\n try {\n const loaded = await loader();\n icons = { ...loaded, prefix };\n iconsStore.set(prefix, icons);\n } catch (e) {\n log.error(e);\n throw new Error(`Failed to load icon set: ${data.prefix}`);\n }\n }\n const iconData = getIconData(icons, data.name);\n if (!iconData) {\n throw new Error(`Icon not found: ${iconName}`);\n }\n return iconData;\n}, \"getRegisteredIconData\");\nvar isIconAvailable = /* @__PURE__ */ __name(async (iconName) => {\n try {\n await getRegisteredIconData(iconName);\n return true;\n } catch {\n return false;\n }\n}, \"isIconAvailable\");\nvar getIconSVG = /* @__PURE__ */ __name(async (iconName, customisations, extraAttributes) => {\n let iconData;\n try {\n iconData = await getRegisteredIconData(iconName, customisations?.fallbackPrefix);\n } catch (e) {\n log.error(e);\n iconData = unknownIcon;\n }\n const renderData = iconToSVG(iconData, customisations);\n const svg = iconToHTML(replaceIDs(renderData.body), {\n ...renderData.attributes,\n ...extraAttributes\n });\n return sanitizeText(svg, getConfig());\n}, \"getIconSVG\");\n\n// src/rendering-util/createText.ts\nimport { select } from \"d3\";\n\n// src/rendering-util/handle-markdown-text.ts\nimport { marked } from \"marked\";\nimport { dedent } from \"ts-dedent\";\nfunction preprocessMarkdown(markdown, { markdownAutoWrap }) {\n const withoutBR = markdown.replace(/<br\\/>/g, \"\\n\");\n const withoutMultipleNewlines = withoutBR.replace(/\\n{2,}/g, \"\\n\");\n const withoutExtraSpaces = dedent(withoutMultipleNewlines);\n if (markdownAutoWrap === false) {\n }\n return withoutExtraSpaces;\n}\n__name(preprocessMarkdown, \"preprocessMarkdown\");\nfunction nonMarkdownToLines(nonMarkdownText) {\n return nonMarkdownText.split(/\\\\n|\\n|<br\\s*\\/?>/gi).map(\n (line) => line.trim().match(/<[^>]+>|[^\\s<>]+/g)?.map((word) => ({ content: word, type: \"normal\" })) ?? []\n );\n}\n__name(nonMarkdownToLines, \"nonMarkdownToLines\");\nfunction markdownToLines(markdown, config = {}) {\n const preprocessedMarkdown = preprocessMarkdown(markdown, config);\n const nodes = marked.lexer(preprocessedMarkdown);\n const lines = [[]];\n let currentLine = 0;\n function processNode(node, parentType = \"normal\") {\n if (node.type === \"text\") {\n const textLines = node.text.split(\"\\n\");\n textLines.forEach((textLine, index) => {\n if (index !== 0) {\n currentLine++;\n lines.push([]);\n }\n textLine.split(\" \").forEach((word) => {\n word = word.replace(/&#39;/g, `'`);\n if (word) {\n lines[currentLine].push({ content: word, type: parentType });\n }\n });\n });\n } else if (node.type === \"strong\" || node.type === \"em\") {\n node.tokens.forEach((contentNode) => {\n processNode(contentNode, node.type);\n });\n } else if (node.type === \"html\") {\n lines[currentLine].push({ content: node.text, type: \"normal\" });\n }\n }\n __name(processNode, \"processNode\");\n nodes.forEach((treeNode) => {\n if (treeNode.type === \"paragraph\") {\n treeNode.tokens?.forEach((contentNode) => {\n processNode(contentNode);\n });\n } else if (treeNode.type === \"html\") {\n lines[currentLine].push({ content: treeNode.text, type: \"normal\" });\n } else {\n lines[currentLine].push({ content: treeNode.raw, type: \"normal\" });\n }\n });\n return lines;\n}\n__name(markdownToLines, \"markdownToLines\");\nfunction nonMarkdownToHTML(text) {\n if (!text) {\n return \"\";\n }\n return `<p>${/**\n * Replace new lines with <br /> tags.\n *\n * Unlike in markdown text, `\\n` sequences are treated as line breaks here.\n */\n text.replace(/\\\\n|\\n/g, \"<br />\")}</p>`;\n}\n__name(nonMarkdownToHTML, \"nonMarkdownToHTML\");\nfunction markdownToHTML(markdown, { markdownAutoWrap } = {}) {\n const nodes = marked.lexer(markdown);\n function output(node) {\n if (node.type === \"text\") {\n if (markdownAutoWrap === false) {\n return node.text.replace(/\\n */g, \"<br/>\").replace(/ /g, \"&nbsp;\");\n }\n return node.text.replace(/\\n */g, \"<br/>\");\n } else if (node.type === \"strong\") {\n return `<strong>${node.tokens?.map(output).join(\"\")}</strong>`;\n } else if (node.type === \"em\") {\n return `<em>${node.tokens?.map(output).join(\"\")}</em>`;\n } else if (node.type === \"paragraph\") {\n return `<p>${node.tokens?.map(output).join(\"\")}</p>`;\n } else if (node.type === \"space\") {\n return \"\";\n } else if (node.type === \"html\") {\n return `${node.text}`;\n } else if (node.type === \"escape\") {\n return node.text;\n }\n log.warn(`Unsupported markdown: ${node.type}`);\n return node.raw;\n }\n __name(output, \"output\");\n return nodes.map(output).join(\"\");\n}\n__name(markdownToHTML, \"markdownToHTML\");\n\n// src/rendering-util/splitText.ts\nfunction splitTextToChars(text) {\n if (Intl.Segmenter) {\n return [...new Intl.Segmenter().segment(text)].map((s) => s.segment);\n }\n return [...text];\n}\n__name(splitTextToChars, \"splitTextToChars\");\nfunction splitWordToFitWidth(checkFit, word) {\n const characters = splitTextToChars(word.content);\n return splitWordToFitWidthRecursion(checkFit, [], characters, word.type);\n}\n__name(splitWordToFitWidth, \"splitWordToFitWidth\");\nfunction splitWordToFitWidthRecursion(checkFit, usedChars, remainingChars, type) {\n if (remainingChars.length === 0) {\n return [\n { content: usedChars.join(\"\"), type },\n { content: \"\", type }\n ];\n }\n const [nextChar, ...rest] = remainingChars;\n const newWord = [...usedChars, nextChar];\n if (checkFit([{ content: newWord.join(\"\"), type }])) {\n return splitWordToFitWidthRecursion(checkFit, newWord, rest, type);\n }\n if (usedChars.length === 0 && nextChar) {\n usedChars.push(nextChar);\n remainingChars.shift();\n }\n return [\n { content: usedChars.join(\"\"), type },\n { content: remainingChars.join(\"\"), type }\n ];\n}\n__name(splitWordToFitWidthRecursion, \"splitWordToFitWidthRecursion\");\nfunction splitLineToFitWidth(line, checkFit) {\n if (line.some(({ content }) => content.includes(\"\\n\"))) {\n throw new Error(\"splitLineToFitWidth does not support newlines in the line\");\n }\n return splitLineToFitWidthRecursion(line, checkFit);\n}\n__name(splitLineToFitWidth, \"splitLineToFitWidth\");\nfunction splitLineToFitWidthRecursion(words, checkFit, lines = [], newLine = []) {\n if (words.length === 0) {\n if (newLine.length > 0) {\n lines.push(newLine);\n }\n return lines.length > 0 ? lines : [];\n }\n let joiner = \"\";\n if (words[0].content === \" \") {\n joiner = \" \";\n words.shift();\n }\n const nextWord = words.shift() ?? { content: \" \", type: \"normal\" };\n const lineWithNextWord = [...newLine];\n if (joiner !== \"\") {\n lineWithNextWord.push({ content: joiner, type: \"normal\" });\n }\n lineWithNextWord.push(nextWord);\n if (checkFit(lineWithNextWord)) {\n return splitLineToFitWidthRecursion(words, checkFit, lines, lineWithNextWord);\n }\n if (newLine.length > 0) {\n lines.push(newLine);\n words.unshift(nextWord);\n } else if (nextWord.content) {\n const [line, rest] = splitWordToFitWidth(checkFit, nextWord);\n lines.push([line]);\n if (rest.content) {\n words.unshift(rest);\n }\n }\n return splitLineToFitWidthRecursion(words, checkFit, lines);\n}\n__name(splitLineToFitWidthRecursion, \"splitLineToFitWidthRecursion\");\n\n// src/rendering-util/createText.ts\nfunction applyStyle(dom, styleFn) {\n if (styleFn) {\n dom.attr(\"style\", styleFn);\n }\n}\n__name(applyStyle, \"applyStyle\");\nvar maxSafeSizeForWidth = 16384;\nasync function addHtmlSpan(element, node, width, classes, addBackground = false, config = getConfig()) {\n const fo = element.append(\"foreignObject\");\n fo.attr(\"width\", `${Math.min(10 * width, maxSafeSizeForWidth)}px`);\n fo.attr(\"height\", `${Math.min(10 * width, maxSafeSizeForWidth)}px`);\n const div = fo.append(\"xhtml:div\");\n const sanitizedLabel = hasKatex(node.label) ? await renderKatexSanitized(node.label.replace(common_default.lineBreakRegex, \"\\n\"), config) : sanitizeText(node.label, config);\n const labelClass = node.isNode ? \"nodeLabel\" : \"edgeLabel\";\n const span = div.append(\"span\");\n span.html(sanitizedLabel);\n applyStyle(span, node.labelStyle);\n span.attr(\"class\", `${labelClass} ${classes}`);\n applyStyle(div, node.labelStyle);\n div.style(\"display\", \"table-cell\");\n div.style(\"white-space\", \"nowrap\");\n div.style(\"line-height\", \"1.5\");\n if (width !== Number.POSITIVE_INFINITY) {\n div.style(\"max-width\", width + \"px\");\n div.style(\"text-align\", \"center\");\n }\n div.attr(\"xmlns\", \"http://www.w3.org/1999/xhtml\");\n if (addBackground) {\n div.attr(\"class\", \"labelBkg\");\n }\n let bbox = div.node().getBoundingClientRect();\n if (bbox.width === width) {\n div.style(\"display\", \"table\");\n div.style(\"white-space\", \"break-spaces\");\n div.style(\"width\", width + \"px\");\n bbox = div.node().getBoundingClientRect();\n }\n return fo.node();\n}\n__name(addHtmlSpan, \"addHtmlSpan\");\nfunction createTspan(textElement, lineIndex, lineHeight, centerText = false) {\n const tspan = textElement.append(\"tspan\").attr(\"class\", \"text-outer-tspan\").attr(\"x\", 0).attr(\"y\", lineIndex * lineHeight - 0.1 + \"em\").attr(\"dy\", lineHeight + \"em\");\n if (centerText) {\n tspan.attr(\"text-anchor\", \"middle\");\n }\n return tspan;\n}\n__name(createTspan, \"createTspan\");\nfunction computeWidthOfText(parentNode, lineHeight, line) {\n const testElement = parentNode.append(\"text\");\n const testSpan = createTspan(testElement, 1, lineHeight);\n updateTextContentAndStyles(testSpan, line);\n const textLength = testSpan.node().getComputedTextLength();\n testElement.remove();\n return textLength;\n}\n__name(computeWidthOfText, \"computeWidthOfText\");\nfunction computeDimensionOfText(parentNode, lineHeight, text) {\n const testElement = parentNode.append(\"text\");\n const testSpan = createTspan(testElement, 1, lineHeight);\n updateTextContentAndStyles(testSpan, [{ content: text, type: \"normal\" }]);\n const textDimension = testSpan.node()?.getBoundingClientRect();\n if (textDimension) {\n testElement.remove();\n }\n return textDimension;\n}\n__name(computeDimensionOfText, \"computeDimensionOfText\");\nfunction createFormattedText(width, g, structuredText, addBackground = false, centerText = false) {\n const lineHeight = 1.1;\n const labelGroup = g.append(\"g\");\n const bkg = labelGroup.insert(\"rect\").attr(\"class\", \"background\").attr(\"style\", \"stroke: none\");\n const textElement = labelGroup.append(\"text\").attr(\"y\", \"-10.1\");\n if (centerText) {\n textElement.attr(\"text-anchor\", \"middle\");\n }\n let lineIndex = 0;\n for (const line of structuredText) {\n const checkWidth = /* @__PURE__ */ __name((line2) => computeWidthOfText(labelGroup, lineHeight, line2) <= width, \"checkWidth\");\n const linesUnderWidth = checkWidth(line) ? [line] : splitLineToFitWidth(line, checkWidth);\n for (const preparedLine of linesUnderWidth) {\n const tspan = createTspan(textElement, lineIndex, lineHeight, centerText);\n updateTextContentAndStyles(tspan, preparedLine);\n lineIndex++;\n }\n }\n if (addBackground) {\n const bbox = textElement.node().getBBox();\n const padding = 2;\n bkg.attr(\"x\", bbox.x - padding).attr(\"y\", bbox.y - padding).attr(\"width\", bbox.width + 2 * padding).attr(\"height\", bbox.height + 2 * padding);\n return labelGroup.node();\n } else {\n return textElement.node();\n }\n}\n__name(createFormattedText, \"createFormattedText\");\nfunction updateTextContentAndStyles(tspan, wrappedLine) {\n tspan.text(\"\");\n wrappedLine.forEach((word, index) => {\n const innerTspan = tspan.append(\"tspan\").attr(\"font-style\", word.type === \"em\" ? \"italic\" : \"normal\").attr(\"class\", \"text-inner-tspan\").attr(\"font-weight\", word.type === \"strong\" ? \"bold\" : \"normal\");\n if (index === 0) {\n innerTspan.text(word.content);\n } else {\n innerTspan.text(\" \" + word.content);\n }\n });\n}\n__name(updateTextContentAndStyles, \"updateTextContentAndStyles\");\nasync function replaceIconSubstring(text, config = {}) {\n const pendingReplacements = [];\n text.replace(/(fa[bklrs]?):fa-([\\w-]+)/g, (fullMatch, prefix, iconName) => {\n pendingReplacements.push(\n (async () => {\n const registeredIconName = `${prefix}:${iconName}`;\n if (await isIconAvailable(registeredIconName)) {\n return await getIconSVG(registeredIconName, void 0, { class: \"label-icon\" });\n } else {\n return `<i class='${sanitizeText(fullMatch, config).replace(\":\", \" \")}'></i>`;\n }\n })()\n );\n return fullMatch;\n });\n const replacements = await Promise.all(pendingReplacements);\n return text.replace(/(fa[bklrs]?):fa-([\\w-]+)/g, () => replacements.shift() ?? \"\");\n}\n__name(replaceIconSubstring, \"replaceIconSubstring\");\nvar createText = /* @__PURE__ */ __name(async (el, text = \"\", {\n style = \"\",\n isTitle = false,\n classes = \"\",\n useHtmlLabels = true,\n markdown = true,\n isNode = true,\n /**\n * The width to wrap the text within. Set to `Number.POSITIVE_INFINITY` for no wrapping.\n */\n width = 200,\n addSvgBackground = false\n} = {}, config) => {\n log.debug(\n \"XYZ createText\",\n text,\n style,\n isTitle,\n classes,\n useHtmlLabels,\n isNode,\n \"addSvgBackground: \",\n addSvgBackground\n );\n if (useHtmlLabels) {\n const htmlText = markdown ? markdownToHTML(text, config) : nonMarkdownToHTML(text);\n const decodedReplacedText = await replaceIconSubstring(decodeEntities(htmlText), config);\n const inputForKatex = text.replace(/\\\\\\\\/g, \"\\\\\");\n const node = {\n isNode,\n label: hasKatex(text) ? inputForKatex : decodedReplacedText,\n labelStyle: style.replace(\"fill:\", \"color:\")\n };\n const vertexNode = await addHtmlSpan(el, node, width, classes, addSvgBackground, config);\n return vertexNode;\n } else {\n const sanitizeBR = text.replace(/<br\\s*\\/?>/g, \"<br/>\");\n const structuredText = markdown ? markdownToLines(sanitizeBR.replace(\"<br>\", \"<br/>\"), config) : nonMarkdownToLines(sanitizeBR);\n const svgLabel = createFormattedText(\n width,\n el,\n structuredText,\n text ? addSvgBackground : false,\n !isNode\n );\n if (isNode) {\n if (/stroke:/.exec(style)) {\n style = style.replace(\"stroke:\", \"lineColor:\");\n }\n const nodeLabelTextStyle = style.replace(/stroke:[^;]+;?/g, \"\").replace(/stroke-width:[^;]+;?/g, \"\").replace(/fill:[^;]+;?/g, \"\").replace(/color:/g, \"fill:\");\n select(svgLabel).attr(\"style\", nodeLabelTextStyle);\n } else {\n const edgeLabelRectStyle = style.replace(/stroke:[^;]+;?/g, \"\").replace(/stroke-width:[^;]+;?/g, \"\").replace(/fill:[^;]+;?/g, \"\").replace(/background:/g, \"fill:\");\n select(svgLabel).select(\"rect\").attr(\"style\", edgeLabelRectStyle.replace(/background:/g, \"fill:\"));\n const edgeLabelTextStyle = style.replace(/stroke:[^;]+;?/g, \"\").replace(/stroke-width:[^;]+;?/g, \"\").replace(/fill:[^;]+;?/g, \"\").replace(/color:/g, \"fill:\");\n select(svgLabel).select(\"text\").attr(\"style\", edgeLabelTextStyle);\n }\n if (isTitle) {\n select(svgLabel).selectAll(\"tspan.text-outer-tspan\").classed(\"title-row\", true);\n } else {\n select(svgLabel).selectAll(\"tspan.text-outer-tspan\").classed(\"row\", true);\n }\n return svgLabel;\n }\n}, \"createText\");\n\nexport {\n unknownIcon,\n registerIconPacks,\n getIconSVG,\n computeDimensionOfText,\n createText\n};\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14],"mappings":"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"}
1
+ {"version":3,"file":"chunk-PU5JKC2W-D0uOJ9Iw.js","names":["marked"],"sources":["../../../../node_modules/@iconify/utils/lib/icon/defaults.js","../../../../node_modules/@iconify/utils/lib/customisations/defaults.js","../../../../node_modules/@iconify/utils/lib/icon/name.js","../../../../node_modules/@iconify/utils/lib/icon/transformations.js","../../../../node_modules/@iconify/utils/lib/icon/merge.js","../../../../node_modules/@iconify/utils/lib/icon-set/tree.js","../../../../node_modules/@iconify/utils/lib/icon-set/get-icon.js","../../../../node_modules/@iconify/utils/lib/svg/size.js","../../../../node_modules/@iconify/utils/lib/svg/defs.js","../../../../node_modules/@iconify/utils/lib/svg/build.js","../../../../node_modules/@iconify/utils/lib/svg/id.js","../../../../node_modules/@iconify/utils/lib/svg/html.js","../../../../node_modules/marked/lib/marked.esm.js","../../../../node_modules/ts-dedent/esm/index.js","../../../../node_modules/mermaid/dist/chunks/mermaid.core/chunk-PU5JKC2W.mjs"],"sourcesContent":["/** Default values for dimensions */\nconst defaultIconDimensions = Object.freeze({\n\tleft: 0,\n\ttop: 0,\n\twidth: 16,\n\theight: 16\n});\n/** Default values for transformations */\nconst defaultIconTransformations = Object.freeze({\n\trotate: 0,\n\tvFlip: false,\n\thFlip: false\n});\n/** Default values for all optional IconifyIcon properties */\nconst defaultIconProps = Object.freeze({\n\t...defaultIconDimensions,\n\t...defaultIconTransformations\n});\n/** Default values for all properties used in ExtendedIconifyIcon */\nconst defaultExtendedIconProps = Object.freeze({\n\t...defaultIconProps,\n\tbody: \"\",\n\thidden: false\n});\n\nexport { defaultExtendedIconProps, defaultIconDimensions, defaultIconProps, defaultIconTransformations };","import { defaultIconTransformations } from \"../icon/defaults.js\";\n\n/**\n* Default icon customisations values\n*/\nconst defaultIconSizeCustomisations = Object.freeze({\n\twidth: null,\n\theight: null\n});\nconst defaultIconCustomisations = Object.freeze({\n\t...defaultIconSizeCustomisations,\n\t...defaultIconTransformations\n});\n\nexport { defaultIconCustomisations, defaultIconSizeCustomisations };","/**\n* Expression to test part of icon name.\n*\n* Used when loading icons from Iconify API due to project naming convension.\n* Ignored when using custom icon sets - convension does not apply.\n*/\nconst matchIconName = /^[a-z0-9]+(-[a-z0-9]+)*$/;\n/**\n* Convert string icon name to IconifyIconName object.\n*/\nconst stringToIcon = (value, validate, allowSimpleName, provider = \"\") => {\n\tconst colonSeparated = value.split(\":\");\n\tif (value.slice(0, 1) === \"@\") {\n\t\tif (colonSeparated.length < 2 || colonSeparated.length > 3) return null;\n\t\tprovider = colonSeparated.shift().slice(1);\n\t}\n\tif (colonSeparated.length > 3 || !colonSeparated.length) return null;\n\tif (colonSeparated.length > 1) {\n\t\tconst name$1 = colonSeparated.pop();\n\t\tconst prefix = colonSeparated.pop();\n\t\tconst result = {\n\t\t\tprovider: colonSeparated.length > 0 ? colonSeparated[0] : provider,\n\t\t\tprefix,\n\t\t\tname: name$1\n\t\t};\n\t\treturn validate && !validateIconName(result) ? null : result;\n\t}\n\tconst name = colonSeparated[0];\n\tconst dashSeparated = name.split(\"-\");\n\tif (dashSeparated.length > 1) {\n\t\tconst result = {\n\t\t\tprovider,\n\t\t\tprefix: dashSeparated.shift(),\n\t\t\tname: dashSeparated.join(\"-\")\n\t\t};\n\t\treturn validate && !validateIconName(result) ? null : result;\n\t}\n\tif (allowSimpleName && provider === \"\") {\n\t\tconst result = {\n\t\t\tprovider,\n\t\t\tprefix: \"\",\n\t\t\tname\n\t\t};\n\t\treturn validate && !validateIconName(result, allowSimpleName) ? null : result;\n\t}\n\treturn null;\n};\n/**\n* Check if icon is valid.\n*\n* This function is not part of stringToIcon because validation is not needed for most code.\n*/\nconst validateIconName = (icon, allowSimpleName) => {\n\tif (!icon) return false;\n\treturn !!((allowSimpleName && icon.prefix === \"\" || !!icon.prefix) && !!icon.name);\n};\n\nexport { matchIconName, stringToIcon, validateIconName };","/**\n* Merge transformations\n*/\nfunction mergeIconTransformations(obj1, obj2) {\n\tconst result = {};\n\tif (!obj1.hFlip !== !obj2.hFlip) result.hFlip = true;\n\tif (!obj1.vFlip !== !obj2.vFlip) result.vFlip = true;\n\tconst rotate = ((obj1.rotate || 0) + (obj2.rotate || 0)) % 4;\n\tif (rotate) result.rotate = rotate;\n\treturn result;\n}\n\nexport { mergeIconTransformations };","import { defaultExtendedIconProps, defaultIconTransformations } from \"./defaults.js\";\nimport { mergeIconTransformations } from \"./transformations.js\";\n\n/**\n* Merge icon and alias\n*\n* Can also be used to merge default values and icon\n*/\nfunction mergeIconData(parent, child) {\n\tconst result = mergeIconTransformations(parent, child);\n\tfor (const key in defaultExtendedIconProps) if (key in defaultIconTransformations) {\n\t\tif (key in parent && !(key in result)) result[key] = defaultIconTransformations[key];\n\t} else if (key in child) result[key] = child[key];\n\telse if (key in parent) result[key] = parent[key];\n\treturn result;\n}\n\nexport { mergeIconData };","/**\n* Resolve icon set icons\n*\n* Returns parent icon for each icon\n*/\nfunction getIconsTree(data, names) {\n\tconst icons = data.icons;\n\tconst aliases = data.aliases || Object.create(null);\n\tconst resolved = Object.create(null);\n\tfunction resolve(name) {\n\t\tif (icons[name]) return resolved[name] = [];\n\t\tif (!(name in resolved)) {\n\t\t\tresolved[name] = null;\n\t\t\tconst parent = aliases[name] && aliases[name].parent;\n\t\t\tconst value = parent && resolve(parent);\n\t\t\tif (value) resolved[name] = [parent].concat(value);\n\t\t}\n\t\treturn resolved[name];\n\t}\n\t(names || Object.keys(icons).concat(Object.keys(aliases))).forEach(resolve);\n\treturn resolved;\n}\n\nexport { getIconsTree };","import { mergeIconData } from \"../icon/merge.js\";\nimport { getIconsTree } from \"./tree.js\";\n\n/**\n* Get icon data, using prepared aliases tree\n*/\nfunction internalGetIconData(data, name, tree) {\n\tconst icons = data.icons;\n\tconst aliases = data.aliases || Object.create(null);\n\tlet currentProps = {};\n\tfunction parse(name$1) {\n\t\tcurrentProps = mergeIconData(icons[name$1] || aliases[name$1], currentProps);\n\t}\n\tparse(name);\n\ttree.forEach(parse);\n\treturn mergeIconData(data, currentProps);\n}\n/**\n* Get data for icon\n*/\nfunction getIconData(data, name) {\n\tif (data.icons[name]) return internalGetIconData(data, name, []);\n\tconst tree = getIconsTree(data, [name])[name];\n\treturn tree ? internalGetIconData(data, name, tree) : null;\n}\n\nexport { getIconData, internalGetIconData };","/**\n* Regular expressions for calculating dimensions\n*/\nconst unitsSplit = /(-?[0-9.]*[0-9]+[0-9.]*)/g;\nconst unitsTest = /^-?[0-9.]*[0-9]+[0-9.]*$/g;\nfunction calculateSize(size, ratio, precision) {\n\tif (ratio === 1) return size;\n\tprecision = precision || 100;\n\tif (typeof size === \"number\") return Math.ceil(size * ratio * precision) / precision;\n\tif (typeof size !== \"string\") return size;\n\tconst oldParts = size.split(unitsSplit);\n\tif (oldParts === null || !oldParts.length) return size;\n\tconst newParts = [];\n\tlet code = oldParts.shift();\n\tlet isNumber = unitsTest.test(code);\n\twhile (true) {\n\t\tif (isNumber) {\n\t\t\tconst num = parseFloat(code);\n\t\t\tif (isNaN(num)) newParts.push(code);\n\t\t\telse newParts.push(Math.ceil(num * ratio * precision) / precision);\n\t\t} else newParts.push(code);\n\t\tcode = oldParts.shift();\n\t\tif (code === void 0) return newParts.join(\"\");\n\t\tisNumber = !isNumber;\n\t}\n}\n\nexport { calculateSize };","function splitSVGDefs(content, tag = \"defs\") {\n\tlet defs = \"\";\n\tconst index = content.indexOf(\"<\" + tag);\n\twhile (index >= 0) {\n\t\tconst start = content.indexOf(\">\", index);\n\t\tconst end = content.indexOf(\"</\" + tag);\n\t\tif (start === -1 || end === -1) break;\n\t\tconst endEnd = content.indexOf(\">\", end);\n\t\tif (endEnd === -1) break;\n\t\tdefs += content.slice(start + 1, end).trim();\n\t\tcontent = content.slice(0, index).trim() + content.slice(endEnd + 1);\n\t}\n\treturn {\n\t\tdefs,\n\t\tcontent\n\t};\n}\n/**\n* Merge defs and content\n*/\nfunction mergeDefsAndContent(defs, content) {\n\treturn defs ? \"<defs>\" + defs + \"</defs>\" + content : content;\n}\n/**\n* Wrap SVG content, without wrapping definitions\n*/\nfunction wrapSVGContent(body, start, end) {\n\tconst split = splitSVGDefs(body);\n\treturn mergeDefsAndContent(split.defs, start + split.content + end);\n}\n\nexport { mergeDefsAndContent, splitSVGDefs, wrapSVGContent };","import { defaultIconProps } from \"../icon/defaults.js\";\nimport { defaultIconCustomisations } from \"../customisations/defaults.js\";\nimport { calculateSize } from \"./size.js\";\nimport { wrapSVGContent } from \"./defs.js\";\n\n/**\n* Check if value should be unset. Allows multiple keywords\n*/\nconst isUnsetKeyword = (value) => value === \"unset\" || value === \"undefined\" || value === \"none\";\n/**\n* Get SVG attributes and content from icon + customisations\n*\n* Does not generate style to make it compatible with frameworks that use objects for style, such as React.\n* Instead, it generates 'inline' value. If true, rendering engine should add verticalAlign: -0.125em to icon.\n*\n* Customisations should be normalised by platform specific parser.\n* Result should be converted to <svg> by platform specific parser.\n* Use replaceIDs to generate unique IDs for body.\n*/\nfunction iconToSVG(icon, customisations) {\n\tconst fullIcon = {\n\t\t...defaultIconProps,\n\t\t...icon\n\t};\n\tconst fullCustomisations = {\n\t\t...defaultIconCustomisations,\n\t\t...customisations\n\t};\n\tconst box = {\n\t\tleft: fullIcon.left,\n\t\ttop: fullIcon.top,\n\t\twidth: fullIcon.width,\n\t\theight: fullIcon.height\n\t};\n\tlet body = fullIcon.body;\n\t[fullIcon, fullCustomisations].forEach((props) => {\n\t\tconst transformations = [];\n\t\tconst hFlip = props.hFlip;\n\t\tconst vFlip = props.vFlip;\n\t\tlet rotation = props.rotate;\n\t\tif (hFlip) if (vFlip) rotation += 2;\n\t\telse {\n\t\t\ttransformations.push(\"translate(\" + (box.width + box.left).toString() + \" \" + (0 - box.top).toString() + \")\");\n\t\t\ttransformations.push(\"scale(-1 1)\");\n\t\t\tbox.top = box.left = 0;\n\t\t}\n\t\telse if (vFlip) {\n\t\t\ttransformations.push(\"translate(\" + (0 - box.left).toString() + \" \" + (box.height + box.top).toString() + \")\");\n\t\t\ttransformations.push(\"scale(1 -1)\");\n\t\t\tbox.top = box.left = 0;\n\t\t}\n\t\tlet tempValue;\n\t\tif (rotation < 0) rotation -= Math.floor(rotation / 4) * 4;\n\t\trotation = rotation % 4;\n\t\tswitch (rotation) {\n\t\t\tcase 1:\n\t\t\t\ttempValue = box.height / 2 + box.top;\n\t\t\t\ttransformations.unshift(\"rotate(90 \" + tempValue.toString() + \" \" + tempValue.toString() + \")\");\n\t\t\t\tbreak;\n\t\t\tcase 2:\n\t\t\t\ttransformations.unshift(\"rotate(180 \" + (box.width / 2 + box.left).toString() + \" \" + (box.height / 2 + box.top).toString() + \")\");\n\t\t\t\tbreak;\n\t\t\tcase 3:\n\t\t\t\ttempValue = box.width / 2 + box.left;\n\t\t\t\ttransformations.unshift(\"rotate(-90 \" + tempValue.toString() + \" \" + tempValue.toString() + \")\");\n\t\t\t\tbreak;\n\t\t}\n\t\tif (rotation % 2 === 1) {\n\t\t\tif (box.left !== box.top) {\n\t\t\t\ttempValue = box.left;\n\t\t\t\tbox.left = box.top;\n\t\t\t\tbox.top = tempValue;\n\t\t\t}\n\t\t\tif (box.width !== box.height) {\n\t\t\t\ttempValue = box.width;\n\t\t\t\tbox.width = box.height;\n\t\t\t\tbox.height = tempValue;\n\t\t\t}\n\t\t}\n\t\tif (transformations.length) body = wrapSVGContent(body, \"<g transform=\\\"\" + transformations.join(\" \") + \"\\\">\", \"</g>\");\n\t});\n\tconst customisationsWidth = fullCustomisations.width;\n\tconst customisationsHeight = fullCustomisations.height;\n\tconst boxWidth = box.width;\n\tconst boxHeight = box.height;\n\tlet width;\n\tlet height;\n\tif (customisationsWidth === null) {\n\t\theight = customisationsHeight === null ? \"1em\" : customisationsHeight === \"auto\" ? boxHeight : customisationsHeight;\n\t\twidth = calculateSize(height, boxWidth / boxHeight);\n\t} else {\n\t\twidth = customisationsWidth === \"auto\" ? boxWidth : customisationsWidth;\n\t\theight = customisationsHeight === null ? calculateSize(width, boxHeight / boxWidth) : customisationsHeight === \"auto\" ? boxHeight : customisationsHeight;\n\t}\n\tconst attributes = {};\n\tconst setAttr = (prop, value) => {\n\t\tif (!isUnsetKeyword(value)) attributes[prop] = value.toString();\n\t};\n\tsetAttr(\"width\", width);\n\tsetAttr(\"height\", height);\n\tconst viewBox = [\n\t\tbox.left,\n\t\tbox.top,\n\t\tboxWidth,\n\t\tboxHeight\n\t];\n\tattributes.viewBox = viewBox.join(\" \");\n\treturn {\n\t\tattributes,\n\t\tviewBox,\n\t\tbody\n\t};\n}\n\nexport { iconToSVG, isUnsetKeyword };","/**\n* Regular expression for finding ids\n*/\nconst regex = /\\sid=\"(\\S+)\"/g;\n/**\n* Counters\n*/\nconst counters = /* @__PURE__ */ new Map();\n/**\n* Get unique new ID\n*/\nfunction nextID(id) {\n\tid = id.replace(/[0-9]+$/, \"\") || \"a\";\n\tconst count = counters.get(id) || 0;\n\tcounters.set(id, count + 1);\n\treturn count ? `${id}${count}` : id;\n}\n/**\n* Replace IDs in SVG output with unique IDs\n*/\nfunction replaceIDs(body) {\n\tconst ids = [];\n\tlet match;\n\twhile (match = regex.exec(body)) ids.push(match[1]);\n\tif (!ids.length) return body;\n\tconst suffix = \"suffix\" + (Math.random() * 16777216 | Date.now()).toString(16);\n\tids.forEach((id) => {\n\t\tconst newID = nextID(id);\n\t\tconst escapedID = id.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n\t\tbody = body.replace(new RegExp(\"([#;\\\"])(\" + escapedID + \")([\\\")]|\\\\.[a-z])\", \"g\"), \"$1\" + newID + suffix + \"$3\");\n\t});\n\tbody = body.replace(new RegExp(suffix, \"g\"), \"\");\n\treturn body;\n}\n/**\n* Clear ID cache\n*/\nfunction clearIDCache() {\n\tcounters.clear();\n}\n\nexport { clearIDCache, replaceIDs };","/**\n* Generate <svg>\n*/\nfunction iconToHTML(body, attributes) {\n\tlet renderAttribsHTML = body.indexOf(\"xlink:\") === -1 ? \"\" : \" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\"\";\n\tfor (const attr in attributes) renderAttribsHTML += \" \" + attr + \"=\\\"\" + attributes[attr] + \"\\\"\";\n\treturn \"<svg xmlns=\\\"http://www.w3.org/2000/svg\\\"\" + renderAttribsHTML + \">\" + body + \"</svg>\";\n}\n\nexport { iconToHTML };","/**\n * marked v16.4.2 - a markdown parser\n * Copyright (c) 2018-2025, MarkedJS. (MIT License)\n * Copyright (c) 2011-2018, Christopher Jeffrey. (MIT License)\n * https://github.com/markedjs/marked\n */\n\n/**\n * DO NOT EDIT THIS FILE\n * The code in this file is generated from files in ./src/\n */\n\nfunction L(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var T=L();function G(l){T=l}var E={exec:()=>null};function d(l,e=\"\"){let t=typeof l==\"string\"?l:l.source,n={replace:(r,i)=>{let s=typeof i==\"string\"?i:i.source;return s=s.replace(m.caret,\"$1\"),t=t.replace(r,s),n},getRegex:()=>new RegExp(t,e)};return n}var be=(()=>{try{return!!new RegExp(\"(?<=1)(?<!1)\")}catch{return!1}})(),m={codeRemoveIndent:/^(?: {1,4}| {0,3}\\t)/gm,outputLinkReplace:/\\\\([\\[\\]])/g,indentCodeCompensation:/^(\\s+)(?:```)/,beginningSpace:/^\\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\\n/g,tabCharGlobal:/\\t/g,multipleSpaceGlobal:/\\s+/g,blankLine:/^[ \\t]*$/,doubleBlankLine:/\\n[ \\t]*\\n[ \\t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\\n {0,3}((?:=+|-+) *)(?=\\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \\t]?/gm,listReplaceTabs:/^\\t+/,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\\[[ xX]\\] /,listReplaceTask:/^\\[[ xX]\\] +/,anyLine:/\\n.*\\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\\||\\| *$/g,tableRowBlankLine:/\\n[ \\t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\\s|>)/i,endPreScriptTag:/^<\\/(pre|code|kbd|script)(\\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'\"]*[^\\s])\\s+(['\"])(.*)\\2/,unicodeAlphaNumeric:/[\\p{L}\\p{N}]/u,escapeTest:/[&<>\"']/,escapeReplace:/[&<>\"']/g,escapeTestNoEncode:/[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/,escapeReplaceNoEncode:/[<>\"']|&(?!(#\\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\\w+);)/g,unescapeTest:/&(#(?:\\d+)|(?:#x[0-9A-Fa-f]+)|(?:\\w+));?/ig,caret:/(^|[^\\[])\\^/g,percentDecode:/%25/g,findPipe:/\\|/g,splitPipe:/ \\|/,slashPipe:/\\\\\\|/g,carriageReturn:/\\r\\n|\\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\\S*/,endingNewline:/\\n$/,listItemRegex:l=>new RegExp(`^( {0,3}${l})((?:[\t ][^\\\\n]*)?(?:\\\\n|$))`),nextBulletRegex:l=>new RegExp(`^ {0,${Math.min(3,l-1)}}(?:[*+-]|\\\\d{1,9}[.)])((?:[ \t][^\\\\n]*)?(?:\\\\n|$))`),hrRegex:l=>new RegExp(`^ {0,${Math.min(3,l-1)}}((?:- *){3,}|(?:_ *){3,}|(?:\\\\* *){3,})(?:\\\\n+|$)`),fencesBeginRegex:l=>new RegExp(`^ {0,${Math.min(3,l-1)}}(?:\\`\\`\\`|~~~)`),headingBeginRegex:l=>new RegExp(`^ {0,${Math.min(3,l-1)}}#`),htmlBeginRegex:l=>new RegExp(`^ {0,${Math.min(3,l-1)}}<(?:[a-z].*>|!--)`,\"i\")},Re=/^(?:[ \\t]*(?:\\n|$))+/,Te=/^((?: {4}| {0,3}\\t)[^\\n]+(?:\\n(?:[ \\t]*(?:\\n|$))*)?)+/,Oe=/^ {0,3}(`{3,}(?=[^`\\n]*(?:\\n|$))|~{3,})([^\\n]*)(?:\\n|$)(?:|([\\s\\S]*?)(?:\\n|$))(?: {0,3}\\1[~`]* *(?=\\n|$)|$)/,I=/^ {0,3}((?:-[\\t ]*){3,}|(?:_[ \\t]*){3,}|(?:\\*[ \\t]*){3,})(?:\\n+|$)/,we=/^ {0,3}(#{1,6})(?=\\s|$)(.*)(?:\\n+|$)/,F=/(?:[*+-]|\\d{1,9}[.)])/,ie=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\\n(?!\\s*?\\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,oe=d(ie).replace(/bull/g,F).replace(/blockCode/g,/(?: {4}| {0,3}\\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\\n>]+>\\n/).replace(/\\|table/g,\"\").getRegex(),ye=d(ie).replace(/bull/g,F).replace(/blockCode/g,/(?: {4}| {0,3}\\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\\n>]+>\\n/).replace(/table/g,/ {0,3}\\|?(?:[:\\- ]*\\|)+[\\:\\- ]*\\n/).getRegex(),j=/^([^\\n]+(?:\\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\\n)[^\\n]+)*)/,Pe=/^[^\\n]+/,Q=/(?!\\s*\\])(?:\\\\[\\s\\S]|[^\\[\\]\\\\])+/,Se=d(/^ {0,3}\\[(label)\\]: *(?:\\n[ \\t]*)?([^<\\s][^\\s]*|<.*?>)(?:(?: +(?:\\n[ \\t]*)?| *\\n[ \\t]*)(title))? *(?:\\n+|$)/).replace(\"label\",Q).replace(\"title\",/(?:\"(?:\\\\\"?|[^\"\\\\])*\"|'[^'\\n]*(?:\\n[^'\\n]+)*\\n?'|\\([^()]*\\))/).getRegex(),$e=d(/^( {0,3}bull)([ \\t][^\\n]+?)?(?:\\n|$)/).replace(/bull/g,F).getRegex(),v=\"address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul\",U=/<!--(?:-?>|[\\s\\S]*?(?:-->|$))/,_e=d(\"^ {0,3}(?:<(script|pre|style|textarea)[\\\\s>][\\\\s\\\\S]*?(?:</\\\\1>[^\\\\n]*\\\\n+|$)|comment[^\\\\n]*(\\\\n+|$)|<\\\\?[\\\\s\\\\S]*?(?:\\\\?>\\\\n*|$)|<![A-Z][\\\\s\\\\S]*?(?:>\\\\n*|$)|<!\\\\[CDATA\\\\[[\\\\s\\\\S]*?(?:\\\\]\\\\]>\\\\n*|$)|</?(tag)(?: +|\\\\n|/?>)[\\\\s\\\\S]*?(?:(?:\\\\n[ \t]*)+\\\\n|$)|<(?!script|pre|style|textarea)([a-z][\\\\w-]*)(?:attribute)*? */?>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n[ \t]*)+\\\\n|$)|</(?!script|pre|style|textarea)[a-z][\\\\w-]*\\\\s*>(?=[ \\\\t]*(?:\\\\n|$))[\\\\s\\\\S]*?(?:(?:\\\\n[ \t]*)+\\\\n|$))\",\"i\").replace(\"comment\",U).replace(\"tag\",v).replace(\"attribute\",/ +[a-zA-Z:_][\\w.:-]*(?: *= *\"[^\"\\n]*\"| *= *'[^'\\n]*'| *= *[^\\s\"'=<>`]+)?/).getRegex(),ae=d(j).replace(\"hr\",I).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"|lheading\",\"\").replace(\"|table\",\"\").replace(\"blockquote\",\" {0,3}>\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)]) \").replace(\"html\",\"</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",v).getRegex(),Le=d(/^( {0,3}> ?(paragraph|[^\\n]*)(?:\\n|$))+/).replace(\"paragraph\",ae).getRegex(),K={blockquote:Le,code:Te,def:Se,fences:Oe,heading:we,hr:I,html:_e,lheading:oe,list:$e,newline:Re,paragraph:ae,table:E,text:Pe},re=d(\"^ *([^\\\\n ].*)\\\\n {0,3}((?:\\\\| *)?:?-+:? *(?:\\\\| *:?-+:? *)*(?:\\\\| *)?)(?:\\\\n((?:(?! *\\\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\\\n|$))*)\\\\n*|$)\").replace(\"hr\",I).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"blockquote\",\" {0,3}>\").replace(\"code\",\"(?: {4}| {0,3}\t)[^\\\\n]\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)]) \").replace(\"html\",\"</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",v).getRegex(),Me={...K,lheading:ye,table:re,paragraph:d(j).replace(\"hr\",I).replace(\"heading\",\" {0,3}#{1,6}(?:\\\\s|$)\").replace(\"|lheading\",\"\").replace(\"table\",re).replace(\"blockquote\",\" {0,3}>\").replace(\"fences\",\" {0,3}(?:`{3,}(?=[^`\\\\n]*\\\\n)|~{3,})[^\\\\n]*\\\\n\").replace(\"list\",\" {0,3}(?:[*+-]|1[.)]) \").replace(\"html\",\"</?(?:tag)(?: +|\\\\n|/?>)|<(?:script|pre|style|textarea|!--)\").replace(\"tag\",v).getRegex()},ze={...K,html:d(`^ *(?:comment *(?:\\\\n|\\\\s*$)|<(tag)[\\\\s\\\\S]+?</\\\\1> *(?:\\\\n{2,}|\\\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\\\s[^'\"/>\\\\s]*)*?/?> *(?:\\\\n{2,}|\\\\s*$))`).replace(\"comment\",U).replace(/tag/g,\"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\\\b)\\\\w+(?!:|[^\\\\w\\\\s@]*@)\\\\b\").getRegex(),def:/^ *\\[([^\\]]+)\\]: *<?([^\\s>]+)>?(?: +([\"(][^\\n]+[\")]))? *(?:\\n+|$)/,heading:/^(#{1,6})(.*)(?:\\n+|$)/,fences:E,lheading:/^(.+?)\\n {0,3}(=+|-+) *(?:\\n+|$)/,paragraph:d(j).replace(\"hr\",I).replace(\"heading\",` *#{1,6} *[^\n]`).replace(\"lheading\",oe).replace(\"|table\",\"\").replace(\"blockquote\",\" {0,3}>\").replace(\"|fences\",\"\").replace(\"|list\",\"\").replace(\"|html\",\"\").replace(\"|tag\",\"\").getRegex()},Ae=/^\\\\([!\"#$%&'()*+,\\-./:;<=>?@\\[\\]\\\\^_`{|}~])/,Ee=/^(`+)([^`]|[^`][\\s\\S]*?[^`])\\1(?!`)/,le=/^( {2,}|\\\\)\\n(?!\\s*$)/,Ie=/^(`+|[^`])(?:(?= {2,}\\n)|[\\s\\S]*?(?:(?=[\\\\<!\\[`*_]|\\b_|$)|[^ ](?= {2,}\\n)))/,D=/[\\p{P}\\p{S}]/u,W=/[\\s\\p{P}\\p{S}]/u,ue=/[^\\s\\p{P}\\p{S}]/u,Ce=d(/^((?![*_])punctSpace)/,\"u\").replace(/punctSpace/g,W).getRegex(),pe=/(?!~)[\\p{P}\\p{S}]/u,Be=/(?!~)[\\s\\p{P}\\p{S}]/u,qe=/(?:[^\\s\\p{P}\\p{S}]|~)/u,ve=d(/link|precode-code|html/,\"g\").replace(\"link\",/\\[(?:[^\\[\\]`]|(?<a>`+)[^`]+\\k<a>(?!`))*?\\]\\((?:\\\\[\\s\\S]|[^\\\\\\(\\)]|\\((?:\\\\[\\s\\S]|[^\\\\\\(\\)])*\\))*\\)/).replace(\"precode-\",be?\"(?<!`)()\":\"(^^|[^`])\").replace(\"code\",/(?<b>`+)[^`]+\\k<b>(?!`)/).replace(\"html\",/<(?! )[^<>]*?>/).getRegex(),ce=/^(?:\\*+(?:((?!\\*)punct)|[^\\s*]))|^_+(?:((?!_)punct)|([^\\s_]))/,De=d(ce,\"u\").replace(/punct/g,D).getRegex(),He=d(ce,\"u\").replace(/punct/g,pe).getRegex(),he=\"^[^_*]*?__[^_*]*?\\\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\\\*)punct(\\\\*+)(?=[\\\\s]|$)|notPunctSpace(\\\\*+)(?!\\\\*)(?=punctSpace|$)|(?!\\\\*)punctSpace(\\\\*+)(?=notPunctSpace)|[\\\\s](\\\\*+)(?!\\\\*)(?=punct)|(?!\\\\*)punct(\\\\*+)(?!\\\\*)(?=punct)|notPunctSpace(\\\\*+)(?=notPunctSpace)\",Ze=d(he,\"gu\").replace(/notPunctSpace/g,ue).replace(/punctSpace/g,W).replace(/punct/g,D).getRegex(),Ge=d(he,\"gu\").replace(/notPunctSpace/g,qe).replace(/punctSpace/g,Be).replace(/punct/g,pe).getRegex(),Ne=d(\"^[^_*]*?\\\\*\\\\*[^_*]*?_[^_*]*?(?=\\\\*\\\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)\",\"gu\").replace(/notPunctSpace/g,ue).replace(/punctSpace/g,W).replace(/punct/g,D).getRegex(),Fe=d(/\\\\(punct)/,\"gu\").replace(/punct/g,D).getRegex(),je=d(/^<(scheme:[^\\s\\x00-\\x1f<>]*|email)>/).replace(\"scheme\",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(\"email\",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),Qe=d(U).replace(\"(?:-->|$)\",\"-->\").getRegex(),Ue=d(\"^comment|^</[a-zA-Z][\\\\w:-]*\\\\s*>|^<[a-zA-Z][\\\\w-]*(?:attribute)*?\\\\s*/?>|^<\\\\?[\\\\s\\\\S]*?\\\\?>|^<![a-zA-Z]+\\\\s[\\\\s\\\\S]*?>|^<!\\\\[CDATA\\\\[[\\\\s\\\\S]*?\\\\]\\\\]>\").replace(\"comment\",Qe).replace(\"attribute\",/\\s+[a-zA-Z:_][\\w.:-]*(?:\\s*=\\s*\"[^\"]*\"|\\s*=\\s*'[^']*'|\\s*=\\s*[^\\s\"'=<>`]+)?/).getRegex(),q=/(?:\\[(?:\\\\[\\s\\S]|[^\\[\\]\\\\])*\\]|\\\\[\\s\\S]|`+[^`]*?`+(?!`)|[^\\[\\]\\\\`])*?/,Ke=d(/^!?\\[(label)\\]\\(\\s*(href)(?:(?:[ \\t]*(?:\\n[ \\t]*)?)(title))?\\s*\\)/).replace(\"label\",q).replace(\"href\",/<(?:\\\\.|[^\\n<>\\\\])+>|[^ \\t\\n\\x00-\\x1f]*/).replace(\"title\",/\"(?:\\\\\"?|[^\"\\\\])*\"|'(?:\\\\'?|[^'\\\\])*'|\\((?:\\\\\\)?|[^)\\\\])*\\)/).getRegex(),de=d(/^!?\\[(label)\\]\\[(ref)\\]/).replace(\"label\",q).replace(\"ref\",Q).getRegex(),ke=d(/^!?\\[(ref)\\](?:\\[\\])?/).replace(\"ref\",Q).getRegex(),We=d(\"reflink|nolink(?!\\\\()\",\"g\").replace(\"reflink\",de).replace(\"nolink\",ke).getRegex(),se=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,X={_backpedal:E,anyPunctuation:Fe,autolink:je,blockSkip:ve,br:le,code:Ee,del:E,emStrongLDelim:De,emStrongRDelimAst:Ze,emStrongRDelimUnd:Ne,escape:Ae,link:Ke,nolink:ke,punctuation:Ce,reflink:de,reflinkSearch:We,tag:Ue,text:Ie,url:E},Xe={...X,link:d(/^!?\\[(label)\\]\\((.*?)\\)/).replace(\"label\",q).getRegex(),reflink:d(/^!?\\[(label)\\]\\s*\\[([^\\]]*)\\]/).replace(\"label\",q).getRegex()},N={...X,emStrongRDelimAst:Ge,emStrongLDelim:He,url:d(/^((?:protocol):\\/\\/|www\\.)(?:[a-zA-Z0-9\\-]+\\.?)+[^\\s<]*|^email/).replace(\"protocol\",se).replace(\"email\",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'\"~()&]+|\\([^)]*\\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'\"~)]+(?!$))+/,del:/^(~~?)(?=[^\\s~])((?:\\\\[\\s\\S]|[^\\\\])*?(?:\\\\[\\s\\S]|[^\\s~\\\\]))\\1(?=[^~]|$)/,text:d(/^([`~]+|[^`~])(?:(?= {2,}\\n)|(?=[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@)|[\\s\\S]*?(?:(?=[\\\\<!\\[`*~_]|\\b_|protocol:\\/\\/|www\\.|$)|[^ ](?= {2,}\\n)|[^a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-](?=[a-zA-Z0-9.!#$%&'*+\\/=?_`{\\|}~-]+@)))/).replace(\"protocol\",se).getRegex()},Je={...N,br:d(le).replace(\"{2,}\",\"*\").getRegex(),text:d(N.text).replace(\"\\\\b_\",\"\\\\b_| {2,}\\\\n\").replace(/\\{2,\\}/g,\"*\").getRegex()},C={normal:K,gfm:Me,pedantic:ze},M={normal:X,gfm:N,breaks:Je,pedantic:Xe};var Ve={\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#39;\"},ge=l=>Ve[l];function w(l,e){if(e){if(m.escapeTest.test(l))return l.replace(m.escapeReplace,ge)}else if(m.escapeTestNoEncode.test(l))return l.replace(m.escapeReplaceNoEncode,ge);return l}function J(l){try{l=encodeURI(l).replace(m.percentDecode,\"%\")}catch{return null}return l}function V(l,e){let t=l.replace(m.findPipe,(i,s,a)=>{let o=!1,p=s;for(;--p>=0&&a[p]===\"\\\\\";)o=!o;return o?\"|\":\" |\"}),n=t.split(m.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),e)if(n.length>e)n.splice(e);else for(;n.length<e;)n.push(\"\");for(;r<n.length;r++)n[r]=n[r].trim().replace(m.slashPipe,\"|\");return n}function z(l,e,t){let n=l.length;if(n===0)return\"\";let r=0;for(;r<n;){let i=l.charAt(n-r-1);if(i===e&&!t)r++;else if(i!==e&&t)r++;else break}return l.slice(0,n-r)}function fe(l,e){if(l.indexOf(e[1])===-1)return-1;let t=0;for(let n=0;n<l.length;n++)if(l[n]===\"\\\\\")n++;else if(l[n]===e[0])t++;else if(l[n]===e[1]&&(t--,t<0))return n;return t>0?-2:-1}function me(l,e,t,n,r){let i=e.href,s=e.title||null,a=l[1].replace(r.other.outputLinkReplace,\"$1\");n.state.inLink=!0;let o={type:l[0].charAt(0)===\"!\"?\"image\":\"link\",raw:t,href:i,title:s,text:a,tokens:n.inlineTokens(a)};return n.state.inLink=!1,o}function Ye(l,e,t){let n=l.match(t.other.indentCodeCompensation);if(n===null)return e;let r=n[1];return e.split(`\n`).map(i=>{let s=i.match(t.other.beginningSpace);if(s===null)return i;let[a]=s;return a.length>=r.length?i.slice(r.length):i}).join(`\n`)}var y=class{options;rules;lexer;constructor(e){this.options=e||T}space(e){let t=this.rules.block.newline.exec(e);if(t&&t[0].length>0)return{type:\"space\",raw:t[0]}}code(e){let t=this.rules.block.code.exec(e);if(t){let n=t[0].replace(this.rules.other.codeRemoveIndent,\"\");return{type:\"code\",raw:t[0],codeBlockStyle:\"indented\",text:this.options.pedantic?n:z(n,`\n`)}}}fences(e){let t=this.rules.block.fences.exec(e);if(t){let n=t[0],r=Ye(n,t[3]||\"\",this.rules);return{type:\"code\",raw:n,lang:t[2]?t[2].trim().replace(this.rules.inline.anyPunctuation,\"$1\"):t[2],text:r}}}heading(e){let t=this.rules.block.heading.exec(e);if(t){let n=t[2].trim();if(this.rules.other.endingHash.test(n)){let r=z(n,\"#\");(this.options.pedantic||!r||this.rules.other.endingSpaceChar.test(r))&&(n=r.trim())}return{type:\"heading\",raw:t[0],depth:t[1].length,text:n,tokens:this.lexer.inline(n)}}}hr(e){let t=this.rules.block.hr.exec(e);if(t)return{type:\"hr\",raw:z(t[0],`\n`)}}blockquote(e){let t=this.rules.block.blockquote.exec(e);if(t){let n=z(t[0],`\n`).split(`\n`),r=\"\",i=\"\",s=[];for(;n.length>0;){let a=!1,o=[],p;for(p=0;p<n.length;p++)if(this.rules.other.blockquoteStart.test(n[p]))o.push(n[p]),a=!0;else if(!a)o.push(n[p]);else break;n=n.slice(p);let u=o.join(`\n`),c=u.replace(this.rules.other.blockquoteSetextReplace,`\n $1`).replace(this.rules.other.blockquoteSetextReplace2,\"\");r=r?`${r}\n${u}`:u,i=i?`${i}\n${c}`:c;let g=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTokens(c,s,!0),this.lexer.state.top=g,n.length===0)break;let h=s.at(-1);if(h?.type===\"code\")break;if(h?.type===\"blockquote\"){let R=h,f=R.raw+`\n`+n.join(`\n`),O=this.blockquote(f);s[s.length-1]=O,r=r.substring(0,r.length-R.raw.length)+O.raw,i=i.substring(0,i.length-R.text.length)+O.text;break}else if(h?.type===\"list\"){let R=h,f=R.raw+`\n`+n.join(`\n`),O=this.list(f);s[s.length-1]=O,r=r.substring(0,r.length-h.raw.length)+O.raw,i=i.substring(0,i.length-R.raw.length)+O.raw,n=f.substring(s.at(-1).raw.length).split(`\n`);continue}}return{type:\"blockquote\",raw:r,tokens:s,text:i}}}list(e){let t=this.rules.block.list.exec(e);if(t){let n=t[1].trim(),r=n.length>1,i={type:\"list\",raw:\"\",ordered:r,start:r?+n.slice(0,-1):\"\",loose:!1,items:[]};n=r?`\\\\d{1,9}\\\\${n.slice(-1)}`:`\\\\${n}`,this.options.pedantic&&(n=r?n:\"[*+-]\");let s=this.rules.other.listItemRegex(n),a=!1;for(;e;){let p=!1,u=\"\",c=\"\";if(!(t=s.exec(e))||this.rules.block.hr.test(e))break;u=t[0],e=e.substring(u.length);let g=t[2].split(`\n`,1)[0].replace(this.rules.other.listReplaceTabs,H=>\" \".repeat(3*H.length)),h=e.split(`\n`,1)[0],R=!g.trim(),f=0;if(this.options.pedantic?(f=2,c=g.trimStart()):R?f=t[1].length+1:(f=t[2].search(this.rules.other.nonSpaceChar),f=f>4?1:f,c=g.slice(f),f+=t[1].length),R&&this.rules.other.blankLine.test(h)&&(u+=h+`\n`,e=e.substring(h.length+1),p=!0),!p){let H=this.rules.other.nextBulletRegex(f),ee=this.rules.other.hrRegex(f),te=this.rules.other.fencesBeginRegex(f),ne=this.rules.other.headingBeginRegex(f),xe=this.rules.other.htmlBeginRegex(f);for(;e;){let Z=e.split(`\n`,1)[0],A;if(h=Z,this.options.pedantic?(h=h.replace(this.rules.other.listReplaceNesting,\" \"),A=h):A=h.replace(this.rules.other.tabCharGlobal,\" \"),te.test(h)||ne.test(h)||xe.test(h)||H.test(h)||ee.test(h))break;if(A.search(this.rules.other.nonSpaceChar)>=f||!h.trim())c+=`\n`+A.slice(f);else{if(R||g.replace(this.rules.other.tabCharGlobal,\" \").search(this.rules.other.nonSpaceChar)>=4||te.test(g)||ne.test(g)||ee.test(g))break;c+=`\n`+h}!R&&!h.trim()&&(R=!0),u+=Z+`\n`,e=e.substring(Z.length+1),g=A.slice(f)}}i.loose||(a?i.loose=!0:this.rules.other.doubleBlankLine.test(u)&&(a=!0));let O=null,Y;this.options.gfm&&(O=this.rules.other.listIsTask.exec(c),O&&(Y=O[0]!==\"[ ] \",c=c.replace(this.rules.other.listReplaceTask,\"\"))),i.items.push({type:\"list_item\",raw:u,task:!!O,checked:Y,loose:!1,text:c,tokens:[]}),i.raw+=u}let o=i.items.at(-1);if(o)o.raw=o.raw.trimEnd(),o.text=o.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let p=0;p<i.items.length;p++)if(this.lexer.state.top=!1,i.items[p].tokens=this.lexer.blockTokens(i.items[p].text,[]),!i.loose){let u=i.items[p].tokens.filter(g=>g.type===\"space\"),c=u.length>0&&u.some(g=>this.rules.other.anyLine.test(g.raw));i.loose=c}if(i.loose)for(let p=0;p<i.items.length;p++)i.items[p].loose=!0;return i}}html(e){let t=this.rules.block.html.exec(e);if(t)return{type:\"html\",block:!0,raw:t[0],pre:t[1]===\"pre\"||t[1]===\"script\"||t[1]===\"style\",text:t[0]}}def(e){let t=this.rules.block.def.exec(e);if(t){let n=t[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal,\" \"),r=t[2]?t[2].replace(this.rules.other.hrefBrackets,\"$1\").replace(this.rules.inline.anyPunctuation,\"$1\"):\"\",i=t[3]?t[3].substring(1,t[3].length-1).replace(this.rules.inline.anyPunctuation,\"$1\"):t[3];return{type:\"def\",tag:n,raw:t[0],href:r,title:i}}}table(e){let t=this.rules.block.table.exec(e);if(!t||!this.rules.other.tableDelimiter.test(t[2]))return;let n=V(t[1]),r=t[2].replace(this.rules.other.tableAlignChars,\"\").split(\"|\"),i=t[3]?.trim()?t[3].replace(this.rules.other.tableRowBlankLine,\"\").split(`\n`):[],s={type:\"table\",raw:t[0],header:[],align:[],rows:[]};if(n.length===r.length){for(let a of r)this.rules.other.tableAlignRight.test(a)?s.align.push(\"right\"):this.rules.other.tableAlignCenter.test(a)?s.align.push(\"center\"):this.rules.other.tableAlignLeft.test(a)?s.align.push(\"left\"):s.align.push(null);for(let a=0;a<n.length;a++)s.header.push({text:n[a],tokens:this.lexer.inline(n[a]),header:!0,align:s.align[a]});for(let a of i)s.rows.push(V(a,s.header.length).map((o,p)=>({text:o,tokens:this.lexer.inline(o),header:!1,align:s.align[p]})));return s}}lheading(e){let t=this.rules.block.lheading.exec(e);if(t)return{type:\"heading\",raw:t[0],depth:t[2].charAt(0)===\"=\"?1:2,text:t[1],tokens:this.lexer.inline(t[1])}}paragraph(e){let t=this.rules.block.paragraph.exec(e);if(t){let n=t[1].charAt(t[1].length-1)===`\n`?t[1].slice(0,-1):t[1];return{type:\"paragraph\",raw:t[0],text:n,tokens:this.lexer.inline(n)}}}text(e){let t=this.rules.block.text.exec(e);if(t)return{type:\"text\",raw:t[0],text:t[0],tokens:this.lexer.inline(t[0])}}escape(e){let t=this.rules.inline.escape.exec(e);if(t)return{type:\"escape\",raw:t[0],text:t[1]}}tag(e){let t=this.rules.inline.tag.exec(e);if(t)return!this.lexer.state.inLink&&this.rules.other.startATag.test(t[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(t[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(t[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(t[0])&&(this.lexer.state.inRawBlock=!1),{type:\"html\",raw:t[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:t[0]}}link(e){let t=this.rules.inline.link.exec(e);if(t){let n=t[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(n)){if(!this.rules.other.endAngleBracket.test(n))return;let s=z(n.slice(0,-1),\"\\\\\");if((n.length-s.length)%2===0)return}else{let s=fe(t[2],\"()\");if(s===-2)return;if(s>-1){let o=(t[0].indexOf(\"!\")===0?5:4)+t[1].length+s;t[2]=t[2].substring(0,s),t[0]=t[0].substring(0,o).trim(),t[3]=\"\"}}let r=t[2],i=\"\";if(this.options.pedantic){let s=this.rules.other.pedanticHrefTitle.exec(r);s&&(r=s[1],i=s[3])}else i=t[3]?t[3].slice(1,-1):\"\";return r=r.trim(),this.rules.other.startAngleBracket.test(r)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(n)?r=r.slice(1):r=r.slice(1,-1)),me(t,{href:r&&r.replace(this.rules.inline.anyPunctuation,\"$1\"),title:i&&i.replace(this.rules.inline.anyPunctuation,\"$1\")},t[0],this.lexer,this.rules)}}reflink(e,t){let n;if((n=this.rules.inline.reflink.exec(e))||(n=this.rules.inline.nolink.exec(e))){let r=(n[2]||n[1]).replace(this.rules.other.multipleSpaceGlobal,\" \"),i=t[r.toLowerCase()];if(!i){let s=n[0].charAt(0);return{type:\"text\",raw:s,text:s}}return me(n,i,n[0],this.lexer,this.rules)}}emStrong(e,t,n=\"\"){let r=this.rules.inline.emStrongLDelim.exec(e);if(!r||r[3]&&n.match(this.rules.other.unicodeAlphaNumeric))return;if(!(r[1]||r[2]||\"\")||!n||this.rules.inline.punctuation.exec(n)){let s=[...r[0]].length-1,a,o,p=s,u=0,c=r[0][0]===\"*\"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(c.lastIndex=0,t=t.slice(-1*e.length+s);(r=c.exec(t))!=null;){if(a=r[1]||r[2]||r[3]||r[4]||r[5]||r[6],!a)continue;if(o=[...a].length,r[3]||r[4]){p+=o;continue}else if((r[5]||r[6])&&s%3&&!((s+o)%3)){u+=o;continue}if(p-=o,p>0)continue;o=Math.min(o,o+p+u);let g=[...r[0]][0].length,h=e.slice(0,s+r.index+g+o);if(Math.min(s,o)%2){let f=h.slice(1,-1);return{type:\"em\",raw:h,text:f,tokens:this.lexer.inlineTokens(f)}}let R=h.slice(2,-2);return{type:\"strong\",raw:h,text:R,tokens:this.lexer.inlineTokens(R)}}}}codespan(e){let t=this.rules.inline.code.exec(e);if(t){let n=t[2].replace(this.rules.other.newLineCharGlobal,\" \"),r=this.rules.other.nonSpaceChar.test(n),i=this.rules.other.startingSpaceChar.test(n)&&this.rules.other.endingSpaceChar.test(n);return r&&i&&(n=n.substring(1,n.length-1)),{type:\"codespan\",raw:t[0],text:n}}}br(e){let t=this.rules.inline.br.exec(e);if(t)return{type:\"br\",raw:t[0]}}del(e){let t=this.rules.inline.del.exec(e);if(t)return{type:\"del\",raw:t[0],text:t[2],tokens:this.lexer.inlineTokens(t[2])}}autolink(e){let t=this.rules.inline.autolink.exec(e);if(t){let n,r;return t[2]===\"@\"?(n=t[1],r=\"mailto:\"+n):(n=t[1],r=n),{type:\"link\",raw:t[0],text:n,href:r,tokens:[{type:\"text\",raw:n,text:n}]}}}url(e){let t;if(t=this.rules.inline.url.exec(e)){let n,r;if(t[2]===\"@\")n=t[0],r=\"mailto:\"+n;else{let i;do i=t[0],t[0]=this.rules.inline._backpedal.exec(t[0])?.[0]??\"\";while(i!==t[0]);n=t[0],t[1]===\"www.\"?r=\"http://\"+t[0]:r=t[0]}return{type:\"link\",raw:t[0],text:n,href:r,tokens:[{type:\"text\",raw:n,text:n}]}}}inlineText(e){let t=this.rules.inline.text.exec(e);if(t){let n=this.lexer.state.inRawBlock;return{type:\"text\",raw:t[0],text:t[0],escaped:n}}}};var x=class l{tokens;options;state;tokenizer;inlineQueue;constructor(e){this.tokens=[],this.tokens.links=Object.create(null),this.options=e||T,this.options.tokenizer=this.options.tokenizer||new y,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:m,block:C.normal,inline:M.normal};this.options.pedantic?(t.block=C.pedantic,t.inline=M.pedantic):this.options.gfm&&(t.block=C.gfm,this.options.breaks?t.inline=M.breaks:t.inline=M.gfm),this.tokenizer.rules=t}static get rules(){return{block:C,inline:M}}static lex(e,t){return new l(t).lex(e)}static lexInline(e,t){return new l(t).inlineTokens(e)}lex(e){e=e.replace(m.carriageReturn,`\n`),this.blockTokens(e,this.tokens);for(let t=0;t<this.inlineQueue.length;t++){let n=this.inlineQueue[t];this.inlineTokens(n.src,n.tokens)}return this.inlineQueue=[],this.tokens}blockTokens(e,t=[],n=!1){for(this.options.pedantic&&(e=e.replace(m.tabCharGlobal,\" \").replace(m.spaceLine,\"\"));e;){let r;if(this.options.extensions?.block?.some(s=>(r=s.call({lexer:this},e,t))?(e=e.substring(r.raw.length),t.push(r),!0):!1))continue;if(r=this.tokenizer.space(e)){e=e.substring(r.raw.length);let s=t.at(-1);r.raw.length===1&&s!==void 0?s.raw+=`\n`:t.push(r);continue}if(r=this.tokenizer.code(e)){e=e.substring(r.raw.length);let s=t.at(-1);s?.type===\"paragraph\"||s?.type===\"text\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.text,this.inlineQueue.at(-1).src=s.text):t.push(r);continue}if(r=this.tokenizer.fences(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.heading(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.hr(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.blockquote(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.list(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.html(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.def(e)){e=e.substring(r.raw.length);let s=t.at(-1);s?.type===\"paragraph\"||s?.type===\"text\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.raw,this.inlineQueue.at(-1).src=s.text):this.tokens.links[r.tag]||(this.tokens.links[r.tag]={href:r.href,title:r.title},t.push(r));continue}if(r=this.tokenizer.table(e)){e=e.substring(r.raw.length),t.push(r);continue}if(r=this.tokenizer.lheading(e)){e=e.substring(r.raw.length),t.push(r);continue}let i=e;if(this.options.extensions?.startBlock){let s=1/0,a=e.slice(1),o;this.options.extensions.startBlock.forEach(p=>{o=p.call({lexer:this},a),typeof o==\"number\"&&o>=0&&(s=Math.min(s,o))}),s<1/0&&s>=0&&(i=e.substring(0,s+1))}if(this.state.top&&(r=this.tokenizer.paragraph(i))){let s=t.at(-1);n&&s?.type===\"paragraph\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):t.push(r),n=i.length!==e.length,e=e.substring(r.raw.length);continue}if(r=this.tokenizer.text(e)){e=e.substring(r.raw.length);let s=t.at(-1);s?.type===\"text\"?(s.raw+=(s.raw.endsWith(`\n`)?\"\":`\n`)+r.raw,s.text+=`\n`+r.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=s.text):t.push(r);continue}if(e){let s=\"Infinite loop on byte: \"+e.charCodeAt(0);if(this.options.silent){console.error(s);break}else throw new Error(s)}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){let n=e,r=null;if(this.tokens.links){let o=Object.keys(this.tokens.links);if(o.length>0)for(;(r=this.tokenizer.rules.inline.reflinkSearch.exec(n))!=null;)o.includes(r[0].slice(r[0].lastIndexOf(\"[\")+1,-1))&&(n=n.slice(0,r.index)+\"[\"+\"a\".repeat(r[0].length-2)+\"]\"+n.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(r=this.tokenizer.rules.inline.anyPunctuation.exec(n))!=null;)n=n.slice(0,r.index)+\"++\"+n.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let i;for(;(r=this.tokenizer.rules.inline.blockSkip.exec(n))!=null;)i=r[2]?r[2].length:0,n=n.slice(0,r.index+i)+\"[\"+\"a\".repeat(r[0].length-i-2)+\"]\"+n.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);n=this.options.hooks?.emStrongMask?.call({lexer:this},n)??n;let s=!1,a=\"\";for(;e;){s||(a=\"\"),s=!1;let o;if(this.options.extensions?.inline?.some(u=>(o=u.call({lexer:this},e,t))?(e=e.substring(o.raw.length),t.push(o),!0):!1))continue;if(o=this.tokenizer.escape(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.tag(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.link(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(o.raw.length);let u=t.at(-1);o.type===\"text\"&&u?.type===\"text\"?(u.raw+=o.raw,u.text+=o.text):t.push(o);continue}if(o=this.tokenizer.emStrong(e,n,a)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.codespan(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.br(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.del(e)){e=e.substring(o.raw.length),t.push(o);continue}if(o=this.tokenizer.autolink(e)){e=e.substring(o.raw.length),t.push(o);continue}if(!this.state.inLink&&(o=this.tokenizer.url(e))){e=e.substring(o.raw.length),t.push(o);continue}let p=e;if(this.options.extensions?.startInline){let u=1/0,c=e.slice(1),g;this.options.extensions.startInline.forEach(h=>{g=h.call({lexer:this},c),typeof g==\"number\"&&g>=0&&(u=Math.min(u,g))}),u<1/0&&u>=0&&(p=e.substring(0,u+1))}if(o=this.tokenizer.inlineText(p)){e=e.substring(o.raw.length),o.raw.slice(-1)!==\"_\"&&(a=o.raw.slice(-1)),s=!0;let u=t.at(-1);u?.type===\"text\"?(u.raw+=o.raw,u.text+=o.text):t.push(o);continue}if(e){let u=\"Infinite loop on byte: \"+e.charCodeAt(0);if(this.options.silent){console.error(u);break}else throw new Error(u)}}return t}};var P=class{options;parser;constructor(e){this.options=e||T}space(e){return\"\"}code({text:e,lang:t,escaped:n}){let r=(t||\"\").match(m.notSpaceStart)?.[0],i=e.replace(m.endingNewline,\"\")+`\n`;return r?'<pre><code class=\"language-'+w(r)+'\">'+(n?i:w(i,!0))+`</code></pre>\n`:\"<pre><code>\"+(n?i:w(i,!0))+`</code></pre>\n`}blockquote({tokens:e}){return`<blockquote>\n${this.parser.parse(e)}</blockquote>\n`}html({text:e}){return e}def(e){return\"\"}heading({tokens:e,depth:t}){return`<h${t}>${this.parser.parseInline(e)}</h${t}>\n`}hr(e){return`<hr>\n`}list(e){let t=e.ordered,n=e.start,r=\"\";for(let a=0;a<e.items.length;a++){let o=e.items[a];r+=this.listitem(o)}let i=t?\"ol\":\"ul\",s=t&&n!==1?' start=\"'+n+'\"':\"\";return\"<\"+i+s+`>\n`+r+\"</\"+i+`>\n`}listitem(e){let t=\"\";if(e.task){let n=this.checkbox({checked:!!e.checked});e.loose?e.tokens[0]?.type===\"paragraph\"?(e.tokens[0].text=n+\" \"+e.tokens[0].text,e.tokens[0].tokens&&e.tokens[0].tokens.length>0&&e.tokens[0].tokens[0].type===\"text\"&&(e.tokens[0].tokens[0].text=n+\" \"+w(e.tokens[0].tokens[0].text),e.tokens[0].tokens[0].escaped=!0)):e.tokens.unshift({type:\"text\",raw:n+\" \",text:n+\" \",escaped:!0}):t+=n+\" \"}return t+=this.parser.parse(e.tokens,!!e.loose),`<li>${t}</li>\n`}checkbox({checked:e}){return\"<input \"+(e?'checked=\"\" ':\"\")+'disabled=\"\" type=\"checkbox\">'}paragraph({tokens:e}){return`<p>${this.parser.parseInline(e)}</p>\n`}table(e){let t=\"\",n=\"\";for(let i=0;i<e.header.length;i++)n+=this.tablecell(e.header[i]);t+=this.tablerow({text:n});let r=\"\";for(let i=0;i<e.rows.length;i++){let s=e.rows[i];n=\"\";for(let a=0;a<s.length;a++)n+=this.tablecell(s[a]);r+=this.tablerow({text:n})}return r&&(r=`<tbody>${r}</tbody>`),`<table>\n<thead>\n`+t+`</thead>\n`+r+`</table>\n`}tablerow({text:e}){return`<tr>\n${e}</tr>\n`}tablecell(e){let t=this.parser.parseInline(e.tokens),n=e.header?\"th\":\"td\";return(e.align?`<${n} align=\"${e.align}\">`:`<${n}>`)+t+`</${n}>\n`}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${w(e,!0)}</code>`}br(e){return\"<br>\"}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),i=J(e);if(i===null)return r;e=i;let s='<a href=\"'+e+'\"';return t&&(s+=' title=\"'+w(t)+'\"'),s+=\">\"+r+\"</a>\",s}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let i=J(e);if(i===null)return w(n);e=i;let s=`<img src=\"${e}\" alt=\"${n}\"`;return t&&(s+=` title=\"${w(t)}\"`),s+=\">\",s}text(e){return\"tokens\"in e&&e.tokens?this.parser.parseInline(e.tokens):\"escaped\"in e&&e.escaped?e.text:w(e.text)}};var $=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return\"\"+e}image({text:e}){return\"\"+e}br(){return\"\"}};var b=class l{options;renderer;textRenderer;constructor(e){this.options=e||T,this.options.renderer=this.options.renderer||new P,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new $}static parse(e,t){return new l(t).parse(e)}static parseInline(e,t){return new l(t).parseInline(e)}parse(e,t=!0){let n=\"\";for(let r=0;r<e.length;r++){let i=e[r];if(this.options.extensions?.renderers?.[i.type]){let a=i,o=this.options.extensions.renderers[a.type].call({parser:this},a);if(o!==!1||![\"space\",\"hr\",\"heading\",\"code\",\"table\",\"blockquote\",\"list\",\"html\",\"def\",\"paragraph\",\"text\"].includes(a.type)){n+=o||\"\";continue}}let s=i;switch(s.type){case\"space\":{n+=this.renderer.space(s);continue}case\"hr\":{n+=this.renderer.hr(s);continue}case\"heading\":{n+=this.renderer.heading(s);continue}case\"code\":{n+=this.renderer.code(s);continue}case\"table\":{n+=this.renderer.table(s);continue}case\"blockquote\":{n+=this.renderer.blockquote(s);continue}case\"list\":{n+=this.renderer.list(s);continue}case\"html\":{n+=this.renderer.html(s);continue}case\"def\":{n+=this.renderer.def(s);continue}case\"paragraph\":{n+=this.renderer.paragraph(s);continue}case\"text\":{let a=s,o=this.renderer.text(a);for(;r+1<e.length&&e[r+1].type===\"text\";)a=e[++r],o+=`\n`+this.renderer.text(a);t?n+=this.renderer.paragraph({type:\"paragraph\",raw:o,text:o,tokens:[{type:\"text\",raw:o,text:o,escaped:!0}]}):n+=o;continue}default:{let a='Token with \"'+s.type+'\" type was not found.';if(this.options.silent)return console.error(a),\"\";throw new Error(a)}}}return n}parseInline(e,t=this.renderer){let n=\"\";for(let r=0;r<e.length;r++){let i=e[r];if(this.options.extensions?.renderers?.[i.type]){let a=this.options.extensions.renderers[i.type].call({parser:this},i);if(a!==!1||![\"escape\",\"html\",\"link\",\"image\",\"strong\",\"em\",\"codespan\",\"br\",\"del\",\"text\"].includes(i.type)){n+=a||\"\";continue}}let s=i;switch(s.type){case\"escape\":{n+=t.text(s);break}case\"html\":{n+=t.html(s);break}case\"link\":{n+=t.link(s);break}case\"image\":{n+=t.image(s);break}case\"strong\":{n+=t.strong(s);break}case\"em\":{n+=t.em(s);break}case\"codespan\":{n+=t.codespan(s);break}case\"br\":{n+=t.br(s);break}case\"del\":{n+=t.del(s);break}case\"text\":{n+=t.text(s);break}default:{let a='Token with \"'+s.type+'\" type was not found.';if(this.options.silent)return console.error(a),\"\";throw new Error(a)}}}return n}};var S=class{options;block;constructor(e){this.options=e||T}static passThroughHooks=new Set([\"preprocess\",\"postprocess\",\"processAllTokens\",\"emStrongMask\"]);static passThroughHooksRespectAsync=new Set([\"preprocess\",\"postprocess\",\"processAllTokens\"]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(){return this.block?x.lex:x.lexInline}provideParser(){return this.block?b.parse:b.parseInline}};var B=class{defaults=L();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=b;Renderer=P;TextRenderer=$;Lexer=x;Tokenizer=y;Hooks=S;constructor(...e){this.use(...e)}walkTokens(e,t){let n=[];for(let r of e)switch(n=n.concat(t.call(this,r)),r.type){case\"table\":{let i=r;for(let s of i.header)n=n.concat(this.walkTokens(s.tokens,t));for(let s of i.rows)for(let a of s)n=n.concat(this.walkTokens(a.tokens,t));break}case\"list\":{let i=r;n=n.concat(this.walkTokens(i.items,t));break}default:{let i=r;this.defaults.extensions?.childTokens?.[i.type]?this.defaults.extensions.childTokens[i.type].forEach(s=>{let a=i[s].flat(1/0);n=n.concat(this.walkTokens(a,t))}):i.tokens&&(n=n.concat(this.walkTokens(i.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(n=>{let r={...n};if(r.async=this.defaults.async||r.async||!1,n.extensions&&(n.extensions.forEach(i=>{if(!i.name)throw new Error(\"extension name required\");if(\"renderer\"in i){let s=t.renderers[i.name];s?t.renderers[i.name]=function(...a){let o=i.renderer.apply(this,a);return o===!1&&(o=s.apply(this,a)),o}:t.renderers[i.name]=i.renderer}if(\"tokenizer\"in i){if(!i.level||i.level!==\"block\"&&i.level!==\"inline\")throw new Error(\"extension level must be 'block' or 'inline'\");let s=t[i.level];s?s.unshift(i.tokenizer):t[i.level]=[i.tokenizer],i.start&&(i.level===\"block\"?t.startBlock?t.startBlock.push(i.start):t.startBlock=[i.start]:i.level===\"inline\"&&(t.startInline?t.startInline.push(i.start):t.startInline=[i.start]))}\"childTokens\"in i&&i.childTokens&&(t.childTokens[i.name]=i.childTokens)}),r.extensions=t),n.renderer){let i=this.defaults.renderer||new P(this.defaults);for(let s in n.renderer){if(!(s in i))throw new Error(`renderer '${s}' does not exist`);if([\"options\",\"parser\"].includes(s))continue;let a=s,o=n.renderer[a],p=i[a];i[a]=(...u)=>{let c=o.apply(i,u);return c===!1&&(c=p.apply(i,u)),c||\"\"}}r.renderer=i}if(n.tokenizer){let i=this.defaults.tokenizer||new y(this.defaults);for(let s in n.tokenizer){if(!(s in i))throw new Error(`tokenizer '${s}' does not exist`);if([\"options\",\"rules\",\"lexer\"].includes(s))continue;let a=s,o=n.tokenizer[a],p=i[a];i[a]=(...u)=>{let c=o.apply(i,u);return c===!1&&(c=p.apply(i,u)),c}}r.tokenizer=i}if(n.hooks){let i=this.defaults.hooks||new S;for(let s in n.hooks){if(!(s in i))throw new Error(`hook '${s}' does not exist`);if([\"options\",\"block\"].includes(s))continue;let a=s,o=n.hooks[a],p=i[a];S.passThroughHooks.has(s)?i[a]=u=>{if(this.defaults.async&&S.passThroughHooksRespectAsync.has(s))return(async()=>{let g=await o.call(i,u);return p.call(i,g)})();let c=o.call(i,u);return p.call(i,c)}:i[a]=(...u)=>{if(this.defaults.async)return(async()=>{let g=await o.apply(i,u);return g===!1&&(g=await p.apply(i,u)),g})();let c=o.apply(i,u);return c===!1&&(c=p.apply(i,u)),c}}r.hooks=i}if(n.walkTokens){let i=this.defaults.walkTokens,s=n.walkTokens;r.walkTokens=function(a){let o=[];return o.push(s.call(this,a)),i&&(o=o.concat(i.call(this,a))),o}}this.defaults={...this.defaults,...r}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return x.lex(e,t??this.defaults)}parser(e,t){return b.parse(e,t??this.defaults)}parseMarkdown(e){return(n,r)=>{let i={...r},s={...this.defaults,...i},a=this.onError(!!s.silent,!!s.async);if(this.defaults.async===!0&&i.async===!1)return a(new Error(\"marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise.\"));if(typeof n>\"u\"||n===null)return a(new Error(\"marked(): input parameter is undefined or null\"));if(typeof n!=\"string\")return a(new Error(\"marked(): input parameter is of type \"+Object.prototype.toString.call(n)+\", string expected\"));if(s.hooks&&(s.hooks.options=s,s.hooks.block=e),s.async)return(async()=>{let o=s.hooks?await s.hooks.preprocess(n):n,u=await(s.hooks?await s.hooks.provideLexer():e?x.lex:x.lexInline)(o,s),c=s.hooks?await s.hooks.processAllTokens(u):u;s.walkTokens&&await Promise.all(this.walkTokens(c,s.walkTokens));let h=await(s.hooks?await s.hooks.provideParser():e?b.parse:b.parseInline)(c,s);return s.hooks?await s.hooks.postprocess(h):h})().catch(a);try{s.hooks&&(n=s.hooks.preprocess(n));let p=(s.hooks?s.hooks.provideLexer():e?x.lex:x.lexInline)(n,s);s.hooks&&(p=s.hooks.processAllTokens(p)),s.walkTokens&&this.walkTokens(p,s.walkTokens);let c=(s.hooks?s.hooks.provideParser():e?b.parse:b.parseInline)(p,s);return s.hooks&&(c=s.hooks.postprocess(c)),c}catch(o){return a(o)}}}onError(e,t){return n=>{if(n.message+=`\nPlease report this to https://github.com/markedjs/marked.`,e){let r=\"<p>An error occurred:</p><pre>\"+w(n.message+\"\",!0)+\"</pre>\";return t?Promise.resolve(r):r}if(t)return Promise.reject(n);throw n}}};var _=new B;function k(l,e){return _.parse(l,e)}k.options=k.setOptions=function(l){return _.setOptions(l),k.defaults=_.defaults,G(k.defaults),k};k.getDefaults=L;k.defaults=T;k.use=function(...l){return _.use(...l),k.defaults=_.defaults,G(k.defaults),k};k.walkTokens=function(l,e){return _.walkTokens(l,e)};k.parseInline=_.parseInline;k.Parser=b;k.parser=b.parse;k.Renderer=P;k.TextRenderer=$;k.Lexer=x;k.lexer=x.lex;k.Tokenizer=y;k.Hooks=S;k.parse=k;var Zt=k.options,Gt=k.setOptions,Nt=k.use,Ft=k.walkTokens,jt=k.parseInline,Qt=k,Ut=b.parse,Kt=x.lex;export{S as Hooks,x as Lexer,B as Marked,b as Parser,P as Renderer,$ as TextRenderer,y as Tokenizer,T as defaults,L as getDefaults,Kt as lexer,k as marked,Zt as options,Qt as parse,jt as parseInline,Ut as parser,Gt as setOptions,Nt as use,Ft as walkTokens};\n//# sourceMappingURL=marked.esm.js.map\n","export function dedent(templ) {\n var values = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n values[_i - 1] = arguments[_i];\n }\n var strings = Array.from(typeof templ === 'string' ? [templ] : templ);\n strings[strings.length - 1] = strings[strings.length - 1].replace(/\\r?\\n([\\t ]*)$/, '');\n var indentLengths = strings.reduce(function (arr, str) {\n var matches = str.match(/\\n([\\t ]+|(?!\\s).)/g);\n if (matches) {\n return arr.concat(matches.map(function (match) { var _a, _b; return (_b = (_a = match.match(/[\\t ]/g)) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0; }));\n }\n return arr;\n }, []);\n if (indentLengths.length) {\n var pattern_1 = new RegExp(\"\\n[\\t ]{\" + Math.min.apply(Math, indentLengths) + \"}\", 'g');\n strings = strings.map(function (str) { return str.replace(pattern_1, '\\n'); });\n }\n strings[0] = strings[0].replace(/^\\r?\\n/, '');\n var string = strings[0];\n values.forEach(function (value, i) {\n var endentations = string.match(/(?:^|\\n)( *)$/);\n var endentation = endentations ? endentations[1] : '';\n var indentedValue = value;\n if (typeof value === 'string' && value.includes('\\n')) {\n indentedValue = String(value)\n .split('\\n')\n .map(function (str, i) {\n return i === 0 ? str : \"\" + endentation + str;\n })\n .join('\\n');\n }\n string += indentedValue + strings[i + 1];\n });\n return string;\n}\nexport default dedent;\n//# sourceMappingURL=index.js.map","import {\n decodeEntities\n} from \"./chunk-GEFDOKGD.mjs\";\nimport {\n common_default,\n getConfig,\n hasKatex,\n renderKatexSanitized,\n sanitizeText\n} from \"./chunk-7R4GIKGN.mjs\";\nimport {\n __name,\n log\n} from \"./chunk-AGHRB4JF.mjs\";\n\n// src/rendering-util/icons.ts\nimport { getIconData, iconToHTML, iconToSVG, replaceIDs, stringToIcon } from \"@iconify/utils\";\nvar unknownIcon = {\n body: '<g><rect width=\"80\" height=\"80\" style=\"fill: #087ebf; stroke-width: 0px;\"/><text transform=\"translate(21.16 64.67)\" style=\"fill: #fff; font-family: ArialMT, Arial; font-size: 67.75px;\"><tspan x=\"0\" y=\"0\">?</tspan></text></g>',\n height: 80,\n width: 80\n};\nvar iconsStore = /* @__PURE__ */ new Map();\nvar loaderStore = /* @__PURE__ */ new Map();\nvar registerIconPacks = /* @__PURE__ */ __name((iconLoaders) => {\n for (const iconLoader of iconLoaders) {\n if (!iconLoader.name) {\n throw new Error(\n 'Invalid icon loader. Must have a \"name\" property with non-empty string value.'\n );\n }\n log.debug(\"Registering icon pack:\", iconLoader.name);\n if (\"loader\" in iconLoader) {\n loaderStore.set(iconLoader.name, iconLoader.loader);\n } else if (\"icons\" in iconLoader) {\n iconsStore.set(iconLoader.name, iconLoader.icons);\n } else {\n log.error(\"Invalid icon loader:\", iconLoader);\n throw new Error('Invalid icon loader. Must have either \"icons\" or \"loader\" property.');\n }\n }\n}, \"registerIconPacks\");\nvar getRegisteredIconData = /* @__PURE__ */ __name(async (iconName, fallbackPrefix) => {\n const data = stringToIcon(iconName, true, fallbackPrefix !== void 0);\n if (!data) {\n throw new Error(`Invalid icon name: ${iconName}`);\n }\n const prefix = data.prefix || fallbackPrefix;\n if (!prefix) {\n throw new Error(`Icon name must contain a prefix: ${iconName}`);\n }\n let icons = iconsStore.get(prefix);\n if (!icons) {\n const loader = loaderStore.get(prefix);\n if (!loader) {\n throw new Error(`Icon set not found: ${data.prefix}`);\n }\n try {\n const loaded = await loader();\n icons = { ...loaded, prefix };\n iconsStore.set(prefix, icons);\n } catch (e) {\n log.error(e);\n throw new Error(`Failed to load icon set: ${data.prefix}`);\n }\n }\n const iconData = getIconData(icons, data.name);\n if (!iconData) {\n throw new Error(`Icon not found: ${iconName}`);\n }\n return iconData;\n}, \"getRegisteredIconData\");\nvar isIconAvailable = /* @__PURE__ */ __name(async (iconName) => {\n try {\n await getRegisteredIconData(iconName);\n return true;\n } catch {\n return false;\n }\n}, \"isIconAvailable\");\nvar getIconSVG = /* @__PURE__ */ __name(async (iconName, customisations, extraAttributes) => {\n let iconData;\n try {\n iconData = await getRegisteredIconData(iconName, customisations?.fallbackPrefix);\n } catch (e) {\n log.error(e);\n iconData = unknownIcon;\n }\n const renderData = iconToSVG(iconData, customisations);\n const svg = iconToHTML(replaceIDs(renderData.body), {\n ...renderData.attributes,\n ...extraAttributes\n });\n return sanitizeText(svg, getConfig());\n}, \"getIconSVG\");\n\n// src/rendering-util/createText.ts\nimport { select } from \"d3\";\n\n// src/rendering-util/handle-markdown-text.ts\nimport { marked } from \"marked\";\nimport { dedent } from \"ts-dedent\";\nfunction preprocessMarkdown(markdown, { markdownAutoWrap }) {\n const withoutBR = markdown.replace(/<br\\/>/g, \"\\n\");\n const withoutMultipleNewlines = withoutBR.replace(/\\n{2,}/g, \"\\n\");\n const withoutExtraSpaces = dedent(withoutMultipleNewlines);\n if (markdownAutoWrap === false) {\n }\n return withoutExtraSpaces;\n}\n__name(preprocessMarkdown, \"preprocessMarkdown\");\nfunction nonMarkdownToLines(nonMarkdownText) {\n return nonMarkdownText.split(/\\\\n|\\n|<br\\s*\\/?>/gi).map(\n (line) => line.trim().match(/<[^>]+>|[^\\s<>]+/g)?.map((word) => ({ content: word, type: \"normal\" })) ?? []\n );\n}\n__name(nonMarkdownToLines, \"nonMarkdownToLines\");\nfunction markdownToLines(markdown, config = {}) {\n const preprocessedMarkdown = preprocessMarkdown(markdown, config);\n const nodes = marked.lexer(preprocessedMarkdown);\n const lines = [[]];\n let currentLine = 0;\n function processNode(node, parentType = \"normal\") {\n if (node.type === \"text\") {\n const textLines = node.text.split(\"\\n\");\n textLines.forEach((textLine, index) => {\n if (index !== 0) {\n currentLine++;\n lines.push([]);\n }\n textLine.split(\" \").forEach((word) => {\n word = word.replace(/&#39;/g, `'`);\n if (word) {\n lines[currentLine].push({ content: word, type: parentType });\n }\n });\n });\n } else if (node.type === \"strong\" || node.type === \"em\") {\n node.tokens.forEach((contentNode) => {\n processNode(contentNode, node.type);\n });\n } else if (node.type === \"html\") {\n lines[currentLine].push({ content: node.text, type: \"normal\" });\n }\n }\n __name(processNode, \"processNode\");\n nodes.forEach((treeNode) => {\n if (treeNode.type === \"paragraph\") {\n treeNode.tokens?.forEach((contentNode) => {\n processNode(contentNode);\n });\n } else if (treeNode.type === \"html\") {\n lines[currentLine].push({ content: treeNode.text, type: \"normal\" });\n } else {\n lines[currentLine].push({ content: treeNode.raw, type: \"normal\" });\n }\n });\n return lines;\n}\n__name(markdownToLines, \"markdownToLines\");\nfunction nonMarkdownToHTML(text) {\n if (!text) {\n return \"\";\n }\n return `<p>${/**\n * Replace new lines with <br /> tags.\n *\n * Unlike in markdown text, `\\n` sequences are treated as line breaks here.\n */\n text.replace(/\\\\n|\\n/g, \"<br />\")}</p>`;\n}\n__name(nonMarkdownToHTML, \"nonMarkdownToHTML\");\nfunction markdownToHTML(markdown, { markdownAutoWrap } = {}) {\n const nodes = marked.lexer(markdown);\n function output(node) {\n if (node.type === \"text\") {\n if (markdownAutoWrap === false) {\n return node.text.replace(/\\n */g, \"<br/>\").replace(/ /g, \"&nbsp;\");\n }\n return node.text.replace(/\\n */g, \"<br/>\");\n } else if (node.type === \"strong\") {\n return `<strong>${node.tokens?.map(output).join(\"\")}</strong>`;\n } else if (node.type === \"em\") {\n return `<em>${node.tokens?.map(output).join(\"\")}</em>`;\n } else if (node.type === \"paragraph\") {\n return `<p>${node.tokens?.map(output).join(\"\")}</p>`;\n } else if (node.type === \"space\") {\n return \"\";\n } else if (node.type === \"html\") {\n return `${node.text}`;\n } else if (node.type === \"escape\") {\n return node.text;\n }\n log.warn(`Unsupported markdown: ${node.type}`);\n return node.raw;\n }\n __name(output, \"output\");\n return nodes.map(output).join(\"\");\n}\n__name(markdownToHTML, \"markdownToHTML\");\n\n// src/rendering-util/splitText.ts\nfunction splitTextToChars(text) {\n if (Intl.Segmenter) {\n return [...new Intl.Segmenter().segment(text)].map((s) => s.segment);\n }\n return [...text];\n}\n__name(splitTextToChars, \"splitTextToChars\");\nfunction splitWordToFitWidth(checkFit, word) {\n const characters = splitTextToChars(word.content);\n return splitWordToFitWidthRecursion(checkFit, [], characters, word.type);\n}\n__name(splitWordToFitWidth, \"splitWordToFitWidth\");\nfunction splitWordToFitWidthRecursion(checkFit, usedChars, remainingChars, type) {\n if (remainingChars.length === 0) {\n return [\n { content: usedChars.join(\"\"), type },\n { content: \"\", type }\n ];\n }\n const [nextChar, ...rest] = remainingChars;\n const newWord = [...usedChars, nextChar];\n if (checkFit([{ content: newWord.join(\"\"), type }])) {\n return splitWordToFitWidthRecursion(checkFit, newWord, rest, type);\n }\n if (usedChars.length === 0 && nextChar) {\n usedChars.push(nextChar);\n remainingChars.shift();\n }\n return [\n { content: usedChars.join(\"\"), type },\n { content: remainingChars.join(\"\"), type }\n ];\n}\n__name(splitWordToFitWidthRecursion, \"splitWordToFitWidthRecursion\");\nfunction splitLineToFitWidth(line, checkFit) {\n if (line.some(({ content }) => content.includes(\"\\n\"))) {\n throw new Error(\"splitLineToFitWidth does not support newlines in the line\");\n }\n return splitLineToFitWidthRecursion(line, checkFit);\n}\n__name(splitLineToFitWidth, \"splitLineToFitWidth\");\nfunction splitLineToFitWidthRecursion(words, checkFit, lines = [], newLine = []) {\n if (words.length === 0) {\n if (newLine.length > 0) {\n lines.push(newLine);\n }\n return lines.length > 0 ? lines : [];\n }\n let joiner = \"\";\n if (words[0].content === \" \") {\n joiner = \" \";\n words.shift();\n }\n const nextWord = words.shift() ?? { content: \" \", type: \"normal\" };\n const lineWithNextWord = [...newLine];\n if (joiner !== \"\") {\n lineWithNextWord.push({ content: joiner, type: \"normal\" });\n }\n lineWithNextWord.push(nextWord);\n if (checkFit(lineWithNextWord)) {\n return splitLineToFitWidthRecursion(words, checkFit, lines, lineWithNextWord);\n }\n if (newLine.length > 0) {\n lines.push(newLine);\n words.unshift(nextWord);\n } else if (nextWord.content) {\n const [line, rest] = splitWordToFitWidth(checkFit, nextWord);\n lines.push([line]);\n if (rest.content) {\n words.unshift(rest);\n }\n }\n return splitLineToFitWidthRecursion(words, checkFit, lines);\n}\n__name(splitLineToFitWidthRecursion, \"splitLineToFitWidthRecursion\");\n\n// src/rendering-util/createText.ts\nfunction applyStyle(dom, styleFn) {\n if (styleFn) {\n dom.attr(\"style\", styleFn);\n }\n}\n__name(applyStyle, \"applyStyle\");\nvar maxSafeSizeForWidth = 16384;\nasync function addHtmlSpan(element, node, width, classes, addBackground = false, config = getConfig()) {\n const fo = element.append(\"foreignObject\");\n fo.attr(\"width\", `${Math.min(10 * width, maxSafeSizeForWidth)}px`);\n fo.attr(\"height\", `${Math.min(10 * width, maxSafeSizeForWidth)}px`);\n const div = fo.append(\"xhtml:div\");\n const sanitizedLabel = hasKatex(node.label) ? await renderKatexSanitized(node.label.replace(common_default.lineBreakRegex, \"\\n\"), config) : sanitizeText(node.label, config);\n const labelClass = node.isNode ? \"nodeLabel\" : \"edgeLabel\";\n const span = div.append(\"span\");\n span.html(sanitizedLabel);\n applyStyle(span, node.labelStyle);\n span.attr(\"class\", `${labelClass} ${classes}`);\n applyStyle(div, node.labelStyle);\n div.style(\"display\", \"table-cell\");\n div.style(\"white-space\", \"nowrap\");\n div.style(\"line-height\", \"1.5\");\n if (width !== Number.POSITIVE_INFINITY) {\n div.style(\"max-width\", width + \"px\");\n div.style(\"text-align\", \"center\");\n }\n div.attr(\"xmlns\", \"http://www.w3.org/1999/xhtml\");\n if (addBackground) {\n div.attr(\"class\", \"labelBkg\");\n }\n let bbox = div.node().getBoundingClientRect();\n if (bbox.width === width) {\n div.style(\"display\", \"table\");\n div.style(\"white-space\", \"break-spaces\");\n div.style(\"width\", width + \"px\");\n bbox = div.node().getBoundingClientRect();\n }\n return fo.node();\n}\n__name(addHtmlSpan, \"addHtmlSpan\");\nfunction createTspan(textElement, lineIndex, lineHeight, centerText = false) {\n const tspan = textElement.append(\"tspan\").attr(\"class\", \"text-outer-tspan\").attr(\"x\", 0).attr(\"y\", lineIndex * lineHeight - 0.1 + \"em\").attr(\"dy\", lineHeight + \"em\");\n if (centerText) {\n tspan.attr(\"text-anchor\", \"middle\");\n }\n return tspan;\n}\n__name(createTspan, \"createTspan\");\nfunction computeWidthOfText(parentNode, lineHeight, line) {\n const testElement = parentNode.append(\"text\");\n const testSpan = createTspan(testElement, 1, lineHeight);\n updateTextContentAndStyles(testSpan, line);\n const textLength = testSpan.node().getComputedTextLength();\n testElement.remove();\n return textLength;\n}\n__name(computeWidthOfText, \"computeWidthOfText\");\nfunction computeDimensionOfText(parentNode, lineHeight, text) {\n const testElement = parentNode.append(\"text\");\n const testSpan = createTspan(testElement, 1, lineHeight);\n updateTextContentAndStyles(testSpan, [{ content: text, type: \"normal\" }]);\n const textDimension = testSpan.node()?.getBoundingClientRect();\n if (textDimension) {\n testElement.remove();\n }\n return textDimension;\n}\n__name(computeDimensionOfText, \"computeDimensionOfText\");\nfunction createFormattedText(width, g, structuredText, addBackground = false, centerText = false) {\n const lineHeight = 1.1;\n const labelGroup = g.append(\"g\");\n const bkg = labelGroup.insert(\"rect\").attr(\"class\", \"background\").attr(\"style\", \"stroke: none\");\n const textElement = labelGroup.append(\"text\").attr(\"y\", \"-10.1\");\n if (centerText) {\n textElement.attr(\"text-anchor\", \"middle\");\n }\n let lineIndex = 0;\n for (const line of structuredText) {\n const checkWidth = /* @__PURE__ */ __name((line2) => computeWidthOfText(labelGroup, lineHeight, line2) <= width, \"checkWidth\");\n const linesUnderWidth = checkWidth(line) ? [line] : splitLineToFitWidth(line, checkWidth);\n for (const preparedLine of linesUnderWidth) {\n const tspan = createTspan(textElement, lineIndex, lineHeight, centerText);\n updateTextContentAndStyles(tspan, preparedLine);\n lineIndex++;\n }\n }\n if (addBackground) {\n const bbox = textElement.node().getBBox();\n const padding = 2;\n bkg.attr(\"x\", bbox.x - padding).attr(\"y\", bbox.y - padding).attr(\"width\", bbox.width + 2 * padding).attr(\"height\", bbox.height + 2 * padding);\n return labelGroup.node();\n } else {\n return textElement.node();\n }\n}\n__name(createFormattedText, \"createFormattedText\");\nfunction updateTextContentAndStyles(tspan, wrappedLine) {\n tspan.text(\"\");\n wrappedLine.forEach((word, index) => {\n const innerTspan = tspan.append(\"tspan\").attr(\"font-style\", word.type === \"em\" ? \"italic\" : \"normal\").attr(\"class\", \"text-inner-tspan\").attr(\"font-weight\", word.type === \"strong\" ? \"bold\" : \"normal\");\n if (index === 0) {\n innerTspan.text(word.content);\n } else {\n innerTspan.text(\" \" + word.content);\n }\n });\n}\n__name(updateTextContentAndStyles, \"updateTextContentAndStyles\");\nasync function replaceIconSubstring(text, config = {}) {\n const pendingReplacements = [];\n text.replace(/(fa[bklrs]?):fa-([\\w-]+)/g, (fullMatch, prefix, iconName) => {\n pendingReplacements.push(\n (async () => {\n const registeredIconName = `${prefix}:${iconName}`;\n if (await isIconAvailable(registeredIconName)) {\n return await getIconSVG(registeredIconName, void 0, { class: \"label-icon\" });\n } else {\n return `<i class='${sanitizeText(fullMatch, config).replace(\":\", \" \")}'></i>`;\n }\n })()\n );\n return fullMatch;\n });\n const replacements = await Promise.all(pendingReplacements);\n return text.replace(/(fa[bklrs]?):fa-([\\w-]+)/g, () => replacements.shift() ?? \"\");\n}\n__name(replaceIconSubstring, \"replaceIconSubstring\");\nvar createText = /* @__PURE__ */ __name(async (el, text = \"\", {\n style = \"\",\n isTitle = false,\n classes = \"\",\n useHtmlLabels = true,\n markdown = true,\n isNode = true,\n /**\n * The width to wrap the text within. Set to `Number.POSITIVE_INFINITY` for no wrapping.\n */\n width = 200,\n addSvgBackground = false\n} = {}, config) => {\n log.debug(\n \"XYZ createText\",\n text,\n style,\n isTitle,\n classes,\n useHtmlLabels,\n isNode,\n \"addSvgBackground: \",\n addSvgBackground\n );\n if (useHtmlLabels) {\n const htmlText = markdown ? markdownToHTML(text, config) : nonMarkdownToHTML(text);\n const decodedReplacedText = await replaceIconSubstring(decodeEntities(htmlText), config);\n const inputForKatex = text.replace(/\\\\\\\\/g, \"\\\\\");\n const node = {\n isNode,\n label: hasKatex(text) ? inputForKatex : decodedReplacedText,\n labelStyle: style.replace(\"fill:\", \"color:\")\n };\n const vertexNode = await addHtmlSpan(el, node, width, classes, addSvgBackground, config);\n return vertexNode;\n } else {\n const sanitizeBR = text.replace(/<br\\s*\\/?>/g, \"<br/>\");\n const structuredText = markdown ? markdownToLines(sanitizeBR.replace(\"<br>\", \"<br/>\"), config) : nonMarkdownToLines(sanitizeBR);\n const svgLabel = createFormattedText(\n width,\n el,\n structuredText,\n text ? addSvgBackground : false,\n !isNode\n );\n if (isNode) {\n if (/stroke:/.exec(style)) {\n style = style.replace(\"stroke:\", \"lineColor:\");\n }\n const nodeLabelTextStyle = style.replace(/stroke:[^;]+;?/g, \"\").replace(/stroke-width:[^;]+;?/g, \"\").replace(/fill:[^;]+;?/g, \"\").replace(/color:/g, \"fill:\");\n select(svgLabel).attr(\"style\", nodeLabelTextStyle);\n } else {\n const edgeLabelRectStyle = style.replace(/stroke:[^;]+;?/g, \"\").replace(/stroke-width:[^;]+;?/g, \"\").replace(/fill:[^;]+;?/g, \"\").replace(/background:/g, \"fill:\");\n select(svgLabel).select(\"rect\").attr(\"style\", edgeLabelRectStyle.replace(/background:/g, \"fill:\"));\n const edgeLabelTextStyle = style.replace(/stroke:[^;]+;?/g, \"\").replace(/stroke-width:[^;]+;?/g, \"\").replace(/fill:[^;]+;?/g, \"\").replace(/color:/g, \"fill:\");\n select(svgLabel).select(\"text\").attr(\"style\", edgeLabelTextStyle);\n }\n if (isTitle) {\n select(svgLabel).selectAll(\"tspan.text-outer-tspan\").classed(\"title-row\", true);\n } else {\n select(svgLabel).selectAll(\"tspan.text-outer-tspan\").classed(\"row\", true);\n }\n return svgLabel;\n }\n}, \"createText\");\n\nexport {\n unknownIcon,\n registerIconPacks,\n getIconSVG,\n computeDimensionOfText,\n createText\n};\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14],"mappings":"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"}