@inkeep/open-knowledge 0.33.0-beta.10 → 0.33.0-beta.11

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 (176) hide show
  1. package/dist/THIRD_PARTY_NOTICES.md +17 -0
  2. package/dist/assets/skills/discovery/SKILL.md +1 -1
  3. package/dist/assets/skills/project/SKILL.md +1 -1
  4. package/dist/cli.mjs +6 -6
  5. package/dist/constants-Co2nIjDN.mjs +2 -0
  6. package/dist/index.mjs +1 -1
  7. package/dist/{init-CXlRbgEZ.mjs → init-8xXYANUY.mjs} +3 -3
  8. package/dist/init-iwLXSvSZ.mjs +1 -0
  9. package/dist/{launch-json-removal-6s0g2-Dm.mjs → launch-json-removal-CdMk-T_0.mjs} +2 -2
  10. package/dist/loader-3dIO8VMX.mjs +1 -0
  11. package/dist/{loader-DZ60wqGI.mjs → loader-CYM9m567.mjs} +2 -2
  12. package/dist/{preview-Ch5Z_ly3.mjs → preview-CmpwI0Na.mjs} +2 -2
  13. package/dist/preview-Cvjl0B-j.mjs +1 -0
  14. package/dist/public/assets/{ActivityModeContent-jsCTPiun.js → ActivityModeContent-h9VQvc0g.js} +2 -2
  15. package/dist/public/assets/CodeMirrorPropInput-xXay5zRm.js +3 -0
  16. package/dist/public/assets/{DocumentContext-CNzSFsI-.js → DocumentContext-Cf2BBF0b.js} +2 -2
  17. package/dist/public/assets/{GraphPanel-BrqHgLjs.js → GraphPanel-Dmi58_In.js} +1 -1
  18. package/dist/public/assets/{ManagedArtifactProperties-DqTT5fPT.js → ManagedArtifactProperties-BvNazYwv.js} +1 -1
  19. package/dist/public/assets/{MermaidDocEditor-B_dNhePY.js → MermaidDocEditor-0ye5PP71.js} +1 -1
  20. package/dist/public/assets/{PropertyPanel-Dkz1gPoU.js → PropertyPanel-CU52J1sP.js} +2 -2
  21. package/dist/public/assets/{SettingsDialogBody-BxTayjY8.js → SettingsDialogBody-CO7116dZ.js} +1 -1
  22. package/dist/public/assets/{ShareBranchSwitchDialog-BhekOXUp.js → ShareBranchSwitchDialog-CTdDBOxG.js} +1 -1
  23. package/dist/public/assets/{ShareReceiveDialog-o5dNBk6Q.js → ShareReceiveDialog-Zob3Go5h.js} +1 -1
  24. package/dist/public/assets/{SourceEditor-CORtf1FY.js → SourceEditor-CD8OfEBE.js} +1 -1
  25. package/dist/public/assets/{_baseFor-By1DbjM-.js → _baseFor-BN36PaKb.js} +1 -1
  26. package/dist/public/assets/{arc-LFJxyEZO.js → arc-BzdTW5mc.js} +1 -1
  27. package/dist/public/assets/architecture-YZFGNWBL-C9EzBynr.js +1 -0
  28. package/dist/public/assets/{architectureDiagram-Q4EWVU46-CcJR-wyi.js → architectureDiagram-Q4EWVU46-PoAxHoeb.js} +1 -1
  29. package/dist/public/assets/{auth-state-cache-DCv4Whjc.js → auth-state-cache-DU9yNPN9.js} +1 -1
  30. package/dist/public/assets/{blockDiagram-DXYQGD6D-BG78-atN.js → blockDiagram-DXYQGD6D-Cj0PUTPk.js} +1 -1
  31. package/dist/public/assets/{c4Diagram-AHTNJAMY--HudfPqc.js → c4Diagram-AHTNJAMY-DFtUYNYe.js} +1 -1
  32. package/dist/public/assets/channel-1647Teii.js +1 -0
  33. package/dist/public/assets/{chunk-2KRD3SAO-C7QyxGwa.js → chunk-2KRD3SAO-D-Ez44Ds.js} +1 -1
  34. package/dist/public/assets/{chunk-336JU56O-DFEiQdL3.js → chunk-336JU56O-DHb7NgDk.js} +2 -2
  35. package/dist/public/assets/chunk-426QAEUC-BOfOOezm.js +1 -0
  36. package/dist/public/assets/{chunk-4BX2VUAB-D0jcVJQX.js → chunk-4BX2VUAB-B1nZWDyG.js} +1 -1
  37. package/dist/public/assets/{chunk-4TB4RGXK-Ch5kNY23.js → chunk-4TB4RGXK-C3qz5gBh.js} +1 -1
  38. package/dist/public/assets/chunk-55IACEB6--gETN8Fg.js +1 -0
  39. package/dist/public/assets/{chunk-5FUZZQ4R-Bnr_Foe2.js → chunk-5FUZZQ4R-CiLbimSt.js} +1 -1
  40. package/dist/public/assets/{chunk-5PVQY5BW-BwH_ti4z.js → chunk-5PVQY5BW-c5z1iYCm.js} +1 -1
  41. package/dist/public/assets/{chunk-67CJDMHE-lFVSBvCx.js → chunk-67CJDMHE-BKKdEQ6d.js} +1 -1
  42. package/dist/public/assets/{chunk-7N4EOEYR-IBdqZW_V.js → chunk-7N4EOEYR-DCac1dMN.js} +1 -1
  43. package/dist/public/assets/{chunk-AA7GKIK3-IcIC5C16.js → chunk-AA7GKIK3-W4aSkfMu.js} +1 -1
  44. package/dist/public/assets/{chunk-BSJP7CBP-SKdXejJy.js → chunk-BSJP7CBP-O-pJBrr0.js} +1 -1
  45. package/dist/public/assets/{chunk-CIAEETIT-BAjIePcN.js → chunk-CIAEETIT-yZNsjIEN.js} +1 -1
  46. package/dist/public/assets/{chunk-EDXVE4YY-CR8P_5d9.js → chunk-EDXVE4YY-BG01O3ZU.js} +1 -1
  47. package/dist/public/assets/{chunk-ENJZ2VHE-Dk4r_2N4.js → chunk-ENJZ2VHE-CWfe3b4S.js} +1 -1
  48. package/dist/public/assets/{chunk-FMBD7UC4-BOsmCNHV.js → chunk-FMBD7UC4-DBRqk2AP.js} +1 -1
  49. package/dist/public/assets/{chunk-FOC6F5B3-CwOTyOky.js → chunk-FOC6F5B3-CRjAm-Wn.js} +1 -1
  50. package/dist/public/assets/{chunk-ICPOFSXX-DrWPpdBM.js → chunk-ICPOFSXX-Lfk6ZyEQ.js} +1 -1
  51. package/dist/public/assets/{chunk-K5T4RW27-7pvl8sqA.js → chunk-K5T4RW27-D396yCSx.js} +1 -1
  52. package/dist/public/assets/{chunk-KGLVRYIC-Bk6rsD6p.js → chunk-KGLVRYIC-BacohCDd.js} +1 -1
  53. package/dist/public/assets/{chunk-LIHQZDEY--LKdQRPz.js → chunk-LIHQZDEY-0ceC9bqP.js} +1 -1
  54. package/dist/public/assets/{chunk-ORNJ4GCN-_GbocDrH.js → chunk-ORNJ4GCN-B93rNuDV.js} +1 -1
  55. package/dist/public/assets/{chunk-OYMX7WX6-DLBaLIww.js → chunk-OYMX7WX6-0g2DkYQG.js} +1 -1
  56. package/dist/public/assets/chunk-QZHKN3VN-BrvzhZbf.js +1 -0
  57. package/dist/public/assets/{chunk-U2HBQHQK-Bx1RHKxc.js → chunk-U2HBQHQK-u9S8o95F.js} +1 -1
  58. package/dist/public/assets/{chunk-X2U36JSP-CSuA8p4I.js → chunk-X2U36JSP-SSsGg9yt.js} +1 -1
  59. package/dist/public/assets/{chunk-XPW4576I-C22VyCuW.js → chunk-XPW4576I-HqP_b0tj.js} +1 -1
  60. package/dist/public/assets/{chunk-YZCP3GAM-CiRF2C0i.js → chunk-YZCP3GAM-C5DYVTut.js} +1 -1
  61. package/dist/public/assets/{chunk-ZZ45TVLE-003_vpT6.js → chunk-ZZ45TVLE-DhQl-h1P.js} +1 -1
  62. package/dist/public/assets/classDiagram-6PBFFD2Q-DltmIg-f.js +1 -0
  63. package/dist/public/assets/classDiagram-v2-HSJHXN6E-DkSuvznv.js +1 -0
  64. package/dist/public/assets/clone-CiIcLVVj.js +1 -0
  65. package/dist/public/assets/{cose-bilkent-S5V4N54A-DQ5Siec0.js → cose-bilkent-S5V4N54A-D2yDcxAe.js} +1 -1
  66. package/dist/public/assets/{dagre-DR5ja0OL.js → dagre-Dh9JoQ-I.js} +1 -1
  67. package/dist/public/assets/{dagre-KV5264BT-CJm6fnkv.js → dagre-KV5264BT-BXlaMVnI.js} +1 -1
  68. package/dist/public/assets/{diagram-5BDNPKRD-Dnn69K8Q.js → diagram-5BDNPKRD-BU4fdZyF.js} +1 -1
  69. package/dist/public/assets/{diagram-G4DWMVQ6-BXiJQBpp.js → diagram-G4DWMVQ6-DL0ElEZ8.js} +1 -1
  70. package/dist/public/assets/{diagram-MMDJMWI5-DfbtJEnB.js → diagram-MMDJMWI5-CO-iFATe.js} +1 -1
  71. package/dist/public/assets/{diagram-TYMM5635-Lnyn_1jE.js → diagram-TYMM5635-BOuCmoT1.js} +1 -1
  72. package/dist/public/assets/dist-7hPoK5kq.js +14 -0
  73. package/dist/public/assets/{dist-Dl_HewkW.js → dist-BNJrfC5p.js} +1 -1
  74. package/dist/public/assets/dist-CiO2pCFe.js +113 -0
  75. package/dist/public/assets/{erDiagram-SMLLAGMA-DS214ktF.js → erDiagram-SMLLAGMA-DYS86ST2.js} +1 -1
  76. package/dist/public/assets/{flatten-DBJpRj_e.js → flatten-D-PHkoFv.js} +1 -1
  77. package/dist/public/assets/{flowDiagram-DWJPFMVM-DjwWCA6l.js → flowDiagram-DWJPFMVM-BXf4brRY.js} +1 -1
  78. package/dist/public/assets/{ganttDiagram-T4ZO3ILL-zKt7Tn8U.js → ganttDiagram-T4ZO3ILL-Dy7EaUeg.js} +1 -1
  79. package/dist/public/assets/gitGraph-7Q5UKJZL-Be-pOzZK.js +1 -0
  80. package/dist/public/assets/{gitGraphDiagram-UUTBAWPF-CShvvMF6.js → gitGraphDiagram-UUTBAWPF-BH8Puwv8.js} +1 -1
  81. package/dist/public/assets/{graphlib-DQCymKKc.js → graphlib-BOOJ5alb.js} +1 -1
  82. package/dist/public/assets/{index-Dyz0LlrR.css → index-BHjAks6q.css} +1 -1
  83. package/dist/public/assets/{index-FValh7LC.js → index-l616V-EG.js} +9 -9
  84. package/dist/public/assets/info-OMHHGYJF-DGWZi34u.js +1 -0
  85. package/dist/public/assets/{infoDiagram-42DDH7IO-CsKXEeyi.js → infoDiagram-42DDH7IO-DYm-edSE.js} +1 -1
  86. package/dist/public/assets/{isEmpty-CghTYbpA.js → isEmpty-CdB340Tp.js} +1 -1
  87. package/dist/public/assets/isSymbol-Csv9XVWz.js +1 -0
  88. package/dist/public/assets/{ishikawaDiagram-UXIWVN3A-CLrnG4Iz.js → ishikawaDiagram-UXIWVN3A-BRkg0HEM.js} +1 -1
  89. package/dist/public/assets/{journeyDiagram-VCZTEJTY-CaGJmz11.js → journeyDiagram-VCZTEJTY-CQPQ8s-M.js} +1 -1
  90. package/dist/public/assets/{kanban-definition-6JOO6SKY-OaJ2Seta.js → kanban-definition-6JOO6SKY-CAhdDZ1X.js} +1 -1
  91. package/dist/public/assets/{line-SlejRdhx.js → line-BkKfTxWN.js} +1 -1
  92. package/dist/public/assets/{linear-Awk0wGSP.js → linear-i4222SVn.js} +1 -1
  93. package/dist/public/assets/{mermaid-parser.core-wPx7o9bi.js → mermaid-parser.core-BheXl3qv.js} +2 -2
  94. package/dist/public/assets/{mermaid.core-lWTqofm4.js → mermaid.core-CU9cIkfK.js} +3 -3
  95. package/dist/public/assets/{mindmap-definition-QFDTVHPH-RMlKiO4z.js → mindmap-definition-QFDTVHPH-7VHrM-L6.js} +1 -1
  96. package/dist/public/assets/{now-DCGRBsdR.js → now-DhU1PfIc.js} +1 -1
  97. package/dist/public/assets/{ordinal-DAW48Uby.js → ordinal-CEBhmkvU.js} +1 -1
  98. package/dist/public/assets/packet-4T2RLAQJ-Bp8WHmdZ.js +1 -0
  99. package/dist/public/assets/pie-ZZUOXDRM-BjXdL2iW.js +1 -0
  100. package/dist/public/assets/{pieDiagram-DEJITSTG-DMaUTora.js → pieDiagram-DEJITSTG-kNn_P3VI.js} +1 -1
  101. package/dist/public/assets/{quadrantDiagram-34T5L4WZ-C9vvzMyD.js → quadrantDiagram-34T5L4WZ-DmdqIQtf.js} +1 -1
  102. package/dist/public/assets/radar-PYXPWWZC-CMdbFxI4.js +1 -0
  103. package/dist/public/assets/{reduce-Bq13EGKJ.js → reduce-CyUHMkZH.js} +1 -1
  104. package/dist/public/assets/{requirementDiagram-MS252O5E-Crw6NVWY.js → requirementDiagram-MS252O5E-C8buLrT8.js} +1 -1
  105. package/dist/public/assets/{sankeyDiagram-XADWPNL6-aQ9OstGV.js → sankeyDiagram-XADWPNL6-C5qK0vs9.js} +1 -1
  106. package/dist/public/assets/{selection-context-BjmeTT0v.js → selection-context-rp4iPBcA.js} +1 -1
  107. package/dist/public/assets/{sequenceDiagram-FGHM5R23-DokF5Yf9.js → sequenceDiagram-FGHM5R23-CiryxpC_.js} +1 -1
  108. package/dist/public/assets/{src-CBkac3Ms.js → src-CMzFa4bb.js} +1 -1
  109. package/dist/public/assets/{src-BViYu1Wd.js → src-MPCDFn03.js} +1 -1
  110. package/dist/public/assets/{stateDiagram-FHFEXIEX-DnZpH1Ap.js → stateDiagram-FHFEXIEX-CO0MRhCj.js} +1 -1
  111. package/dist/public/assets/stateDiagram-v2-QKLJ7IA2-DZCMP8H1.js +1 -0
  112. package/dist/public/assets/{telemetry-impl-CeO1833o.js → telemetry-impl-BV_N19BU.js} +2 -2
  113. package/dist/public/assets/{telemetry-startup-DCPtDyw3.js → telemetry-startup-D3gOFgap.js} +1 -1
  114. package/dist/public/assets/{timeline-definition-GMOUNBTQ-VkpOXKnC.js → timeline-definition-GMOUNBTQ-BWVPg9X_.js} +1 -1
  115. package/dist/public/assets/treeView-SZITEDCU-C74OMGIg.js +1 -0
  116. package/dist/public/assets/treemap-W4RFUUIX-zNzWeD_O.js +1 -0
  117. package/dist/public/assets/{typing-burst-detector-CekoPsaO.js → typing-burst-detector-P_aOdt-_.js} +1 -1
  118. package/dist/public/assets/{vennDiagram-DHZGUBPP-D2QdJc9C.js → vennDiagram-DHZGUBPP-CnCUMlYY.js} +1 -1
  119. package/dist/public/assets/wardley-RL74JXVD-D-y-IcPO.js +1 -0
  120. package/dist/public/assets/{wardleyDiagram-NUSXRM2D-CGqNzxMF.js → wardleyDiagram-NUSXRM2D-DPyvwfAB.js} +1 -1
  121. package/dist/public/assets/{xychartDiagram-5P7HB3ND-CZRqt4SH.js → xychartDiagram-5P7HB3ND-DxjRhLyv.js} +1 -1
  122. package/dist/public/index.html +9 -9
  123. package/dist/{repair-launch-json-B8-siIVG.mjs → repair-launch-json-OvY3I8zz.mjs} +2 -2
  124. package/dist/{repair-mcp-configs-iuxXR-U-.mjs → repair-mcp-configs-UZacc8iY.mjs} +2 -2
  125. package/dist/{src-4JZrrUEE.mjs → src-DuXzPJeq.mjs} +2 -2
  126. package/dist/start-67ccmvx4.mjs +1 -0
  127. package/dist/{start-DX8hoO29.mjs → start-CrPfm20h.mjs} +2 -2
  128. package/package.json +1 -1
  129. package/dist/constants-p-XvThBy.mjs +0 -2
  130. package/dist/init-CNb23nGn.mjs +0 -1
  131. package/dist/loader-GV9JFQfo.mjs +0 -1
  132. package/dist/preview-DZuLRNVg.mjs +0 -1
  133. package/dist/public/assets/CodeMirrorPropInput-cmSiPzan.js +0 -3
  134. package/dist/public/assets/architecture-YZFGNWBL-w5qzzPrp.js +0 -1
  135. package/dist/public/assets/channel-D5XfHPw9.js +0 -1
  136. package/dist/public/assets/chunk-426QAEUC-CNG9cIod.js +0 -1
  137. package/dist/public/assets/chunk-55IACEB6-DTK73H5l.js +0 -1
  138. package/dist/public/assets/chunk-QZHKN3VN-BJigOKbg.js +0 -1
  139. package/dist/public/assets/classDiagram-6PBFFD2Q-CrFuzLbj.js +0 -1
  140. package/dist/public/assets/classDiagram-v2-HSJHXN6E-RivRzFvs.js +0 -1
  141. package/dist/public/assets/clone-DksSZsT9.js +0 -1
  142. package/dist/public/assets/gitGraph-7Q5UKJZL-CCAiW1Jw.js +0 -1
  143. package/dist/public/assets/info-OMHHGYJF-DwgoYKrG.js +0 -1
  144. package/dist/public/assets/isSymbol-B1eMZgHp.js +0 -1
  145. package/dist/public/assets/packet-4T2RLAQJ-DAnRNAIs.js +0 -1
  146. package/dist/public/assets/pie-ZZUOXDRM-DZsYFc8Z.js +0 -1
  147. package/dist/public/assets/radar-PYXPWWZC-CDgDbft8.js +0 -1
  148. package/dist/public/assets/stateDiagram-v2-QKLJ7IA2-D3Q1GueM.js +0 -1
  149. package/dist/public/assets/treeView-SZITEDCU-BQ6FwaqK.js +0 -1
  150. package/dist/public/assets/treemap-W4RFUUIX-WDhsYc_w.js +0 -1
  151. package/dist/public/assets/wardley-RL74JXVD-CUF15gYf.js +0 -1
  152. package/dist/start-B9AbQt7f.mjs +0 -1
  153. /package/dist/public/assets/{ActivityPanelDiffView-D3tFIws1.js → ActivityPanelDiffView-CG_Honte.js} +0 -0
  154. /package/dist/public/assets/{ConsentDialogBody-iSJGqfW_.js → ConsentDialogBody-Dv9b5VXu.js} +0 -0
  155. /package/dist/public/assets/{McpConsentDialogBody-BrfdQb16.js → McpConsentDialogBody-CEldtrsF.js} +0 -0
  156. /package/dist/public/assets/{ReportBugDialogBody-CCKV6nZY.js → ReportBugDialogBody-CCRtslM2.js} +0 -0
  157. /package/dist/public/assets/{ShareReceiveMissDialog-UODMw9si.js → ShareReceiveMissDialog-C1ZRRO-9.js} +0 -0
  158. /package/dist/public/assets/{SkillEditorActions-euGEb-E6.js → SkillEditorActions-Cmk8Mc5P.js} +0 -0
  159. /package/dist/public/assets/{TerminalPanel-g64JYtbc.js → TerminalPanel-Nk8on_jX.js} +0 -0
  160. /package/dist/public/assets/{__vite-browser-external-BGqYBZHq.js → __vite-browser-external-DJl9O08R.js} +0 -0
  161. /package/dist/public/assets/{array-DIhPH4qn.js → array-B8vJmP02.js} +0 -0
  162. /package/dist/public/assets/{calendar-C4eWxynX.js → calendar-D5I5yGb3.js} +0 -0
  163. /package/dist/public/assets/{colors-Cgzz_QdT.js → colors-BueFi2wa.js} +0 -0
  164. /package/dist/public/assets/{cytoscape.esm-DdkrBNsF.js → cytoscape.esm-OZ6hI980.js} +0 -0
  165. /package/dist/public/assets/{defaultLocale-C3MNi6_U.js → defaultLocale-C5PFB6dK.js} +0 -0
  166. /package/dist/public/assets/{dist-fptQVG6X.js → dist-CbLk670G.js} +0 -0
  167. /package/dist/public/assets/{init-DhDswxt9.js → init-JsSowIXJ.js} +0 -0
  168. /package/dist/public/assets/{isObjectLike-Dr_zHfrf.js → isObjectLike-7SolmAND.js} +0 -0
  169. /package/dist/public/assets/{min-CbV9N5TI.js → min-CkuuQGnu.js} +0 -0
  170. /package/dist/public/assets/{panzoom.es-CUbt2ABB.js → panzoom.es-B-pFe-0v.js} +0 -0
  171. /package/dist/public/assets/{path-BTT5t8UO.js → path-BKrQerJ7.js} +0 -0
  172. /package/dist/public/assets/{pdf-DUTubR-l.js → pdf-Bma40VK5.js} +0 -0
  173. /package/dist/public/assets/{pdf.worker-BnPDdfCT.js → pdf.worker-Chx-lTE6.js} +0 -0
  174. /package/dist/public/assets/{rough.esm-COePkIn5.js → rough.esm-C_GPLqmq.js} +0 -0
  175. /package/dist/public/assets/{share-metadata-rows-z85jCRiH.js → share-metadata-rows-uIsVZKIO.js} +0 -0
  176. /package/dist/public/assets/{src-CSQC3Qr9.js → src-D68V8cNU.js} +0 -0
@@ -1,4 +1,4 @@
1
- import{n as e,r as t}from"./src-BViYu1Wd.js";import{B as n,C as r,V as i,W as a,_ as o,a as s,c,d as l,v as u,y as d}from"./chunk-ICPOFSXX-DrWPpdBM.js";import{r as f}from"./chunk-5PVQY5BW-BwH_ti4z.js";import{t as p}from"./chunk-426QAEUC-CNG9cIod.js";import{t as m}from"./chunk-4BX2VUAB-D0jcVJQX.js";import{t as h}from"./mermaid-parser.core-wPx7o9bi.js";import{t as g}from"./chunk-QZHKN3VN-BJigOKbg.js";var _=new g(()=>({cnt:1,stack:[{id:0,level:-1,name:`/`,children:[]}]})),v=e(()=>{_.reset(),s()},`clear`),y=e(()=>_.records.stack[0],`getRoot`),b=e(()=>_.records.cnt,`getCount`),x=l.treeView,S={clear:v,addNode:e((e,t)=>{for(;e<=_.records.stack[_.records.stack.length-1].level;)_.records.stack.pop();let n={id:_.records.cnt++,level:e,name:t,children:[]};_.records.stack[_.records.stack.length-1].children.push(n),_.records.stack.push(n)},`addNode`),getRoot:y,getCount:b,getConfig:e(()=>f(x,d().treeView),`getConfig`),getAccTitle:u,getAccDescription:o,getDiagramTitle:r,setAccDescription:n,setAccTitle:i,setDiagramTitle:a},C=e(e=>{m(e,S),e.nodes.map(e=>S.addNode(e.indent?parseInt(e.indent):0,e.name))},`populate`),w={parse:e(async e=>{let n=await h(`treeView`,e);t.debug(n),C(n)},`parse`)},T=e((e,t,n,r,i)=>{let a=r.append(`text`).text(n.name).attr(`dominant-baseline`,`middle`).attr(`class`,`treeView-node-label`),{height:o,width:s}=a.node().getBBox(),c=o+i.paddingY*2,l=s+i.paddingX*2;a.attr(`x`,e+i.paddingX),a.attr(`y`,t+c/2),n.BBox={x:e,y:t,width:l,height:c}},`positionLabel`),E=e((e,t,n,r,i,a)=>e.append(`line`).attr(`x1`,t).attr(`y1`,n).attr(`x2`,r).attr(`y2`,i).attr(`stroke-width`,a).attr(`class`,`treeView-node-line`),`positionLine`),D=e((t,n,r)=>{let i=0,a=0,o=e((e,t,n,r)=>{let o=r*(n.rowIndent+n.paddingX);T(o,i,t,e,n);let{height:s,width:c}=t.BBox;E(e,o-n.rowIndent,i+s/2,o,i+s/2,n.lineThickness),a=Math.max(a,o+c),i+=s},`drawNode`),s=e((e,n=0)=>{o(t,e,r,n),e.children.forEach(e=>{s(e,n+1)});let{x:i,y:a,height:c}=e.BBox;if(e.children.length){let{y:n,height:o}=e.children[e.children.length-1].BBox;E(t,i+r.paddingX,a+c,i+r.paddingX,n+o/2+r.lineThickness/2,r.lineThickness)}},`processNode`);return s(n),{totalHeight:i,totalWidth:a}},`drawTree`),O={draw:e((e,n,r,i)=>{t.debug(`Rendering treeView diagram
1
+ import{n as e,r as t}from"./src-MPCDFn03.js";import{B as n,C as r,V as i,W as a,_ as o,a as s,c,d as l,v as u,y as d}from"./chunk-ICPOFSXX-Lfk6ZyEQ.js";import{r as f}from"./chunk-5PVQY5BW-c5z1iYCm.js";import{t as p}from"./chunk-426QAEUC-BOfOOezm.js";import{t as m}from"./chunk-4BX2VUAB-B1nZWDyG.js";import{t as h}from"./mermaid-parser.core-BheXl3qv.js";import{t as g}from"./chunk-QZHKN3VN-BrvzhZbf.js";var _=new g(()=>({cnt:1,stack:[{id:0,level:-1,name:`/`,children:[]}]})),v=e(()=>{_.reset(),s()},`clear`),y=e(()=>_.records.stack[0],`getRoot`),b=e(()=>_.records.cnt,`getCount`),x=l.treeView,S={clear:v,addNode:e((e,t)=>{for(;e<=_.records.stack[_.records.stack.length-1].level;)_.records.stack.pop();let n={id:_.records.cnt++,level:e,name:t,children:[]};_.records.stack[_.records.stack.length-1].children.push(n),_.records.stack.push(n)},`addNode`),getRoot:y,getCount:b,getConfig:e(()=>f(x,d().treeView),`getConfig`),getAccTitle:u,getAccDescription:o,getDiagramTitle:r,setAccDescription:n,setAccTitle:i,setDiagramTitle:a},C=e(e=>{m(e,S),e.nodes.map(e=>S.addNode(e.indent?parseInt(e.indent):0,e.name))},`populate`),w={parse:e(async e=>{let n=await h(`treeView`,e);t.debug(n),C(n)},`parse`)},T=e((e,t,n,r,i)=>{let a=r.append(`text`).text(n.name).attr(`dominant-baseline`,`middle`).attr(`class`,`treeView-node-label`),{height:o,width:s}=a.node().getBBox(),c=o+i.paddingY*2,l=s+i.paddingX*2;a.attr(`x`,e+i.paddingX),a.attr(`y`,t+c/2),n.BBox={x:e,y:t,width:l,height:c}},`positionLabel`),E=e((e,t,n,r,i,a)=>e.append(`line`).attr(`x1`,t).attr(`y1`,n).attr(`x2`,r).attr(`y2`,i).attr(`stroke-width`,a).attr(`class`,`treeView-node-line`),`positionLine`),D=e((t,n,r)=>{let i=0,a=0,o=e((e,t,n,r)=>{let o=r*(n.rowIndent+n.paddingX);T(o,i,t,e,n);let{height:s,width:c}=t.BBox;E(e,o-n.rowIndent,i+s/2,o,i+s/2,n.lineThickness),a=Math.max(a,o+c),i+=s},`drawNode`),s=e((e,n=0)=>{o(t,e,r,n),e.children.forEach(e=>{s(e,n+1)});let{x:i,y:a,height:c}=e.BBox;if(e.children.length){let{y:n,height:o}=e.children[e.children.length-1].BBox;E(t,i+r.paddingX,a+c,i+r.paddingX,n+o/2+r.lineThickness/2,r.lineThickness)}},`processNode`);return s(n),{totalHeight:i,totalWidth:a}},`drawTree`),O={draw:e((e,n,r,i)=>{t.debug(`Rendering treeView diagram
2
2
  `+e);let a=i.db,o=a.getRoot(),s=a.getConfig(),l=p(n),u=l.append(`g`);u.attr(`class`,`tree-view`);let{totalHeight:d,totalWidth:f}=D(u,o,s);l.attr(`viewBox`,`-${s.lineThickness/2} 0 ${f} ${d}`),c(l,d,f,s.useMaxWidth)},`draw`)},k={labelFontSize:`16px`,labelColor:`black`,lineColor:`black`},A={db:S,renderer:O,parser:w,styles:e(({treeView:e})=>{let{labelFontSize:t,labelColor:n,lineColor:r}=f(k,e);return`
3
3
  .treeView-node-label {
4
4
  font-size: ${t};
@@ -1,4 +1,4 @@
1
- import{n as e,r as t}from"./src-BViYu1Wd.js";import{B as n,C as r,E as i,V as a,W as o,_ as s,a as c,c as l,d as u,v as d,y as f}from"./chunk-ICPOFSXX-DrWPpdBM.js";import{t as p}from"./ordinal-DAW48Uby.js";import{C as m}from"./src-CSQC3Qr9.js";import{t as h}from"./defaultLocale-C3MNi6_U.js";import{r as g}from"./chunk-5PVQY5BW-BwH_ti4z.js";import{t as _}from"./chunk-426QAEUC-CNG9cIod.js";import{t as v}from"./chunk-4BX2VUAB-D0jcVJQX.js";import{t as y}from"./mermaid-parser.core-wPx7o9bi.js";import{t as b}from"./chunk-EDXVE4YY-CR8P_5d9.js";import{i as x,n as S}from"./chunk-X2U36JSP-CSuA8p4I.js";function C(e){var t=0,n=e.children,r=n&&n.length;if(!r)t=1;else for(;--r>=0;)t+=n[r].value;e.value=t}function w(){return this.eachAfter(C)}function T(e,t){let n=-1;for(let r of this)e.call(t,r,++n,this);return this}function E(e,t){for(var n=this,r=[n],i,a,o=-1;n=r.pop();)if(e.call(t,n,++o,this),i=n.children)for(a=i.length-1;a>=0;--a)r.push(i[a]);return this}function D(e,t){for(var n=this,r=[n],i=[],a,o,s,c=-1;n=r.pop();)if(i.push(n),a=n.children)for(o=0,s=a.length;o<s;++o)r.push(a[o]);for(;n=i.pop();)e.call(t,n,++c,this);return this}function O(e,t){let n=-1;for(let r of this)if(e.call(t,r,++n,this))return r}function k(e){return this.eachAfter(function(t){for(var n=+e(t.data)||0,r=t.children,i=r&&r.length;--i>=0;)n+=r[i].value;t.value=n})}function A(e){return this.eachBefore(function(t){t.children&&t.children.sort(e)})}function j(e){for(var t=this,n=M(t,e),r=[t];t!==n;)t=t.parent,r.push(t);for(var i=r.length;e!==n;)r.splice(i,0,e),e=e.parent;return r}function M(e,t){if(e===t)return e;var n=e.ancestors(),r=t.ancestors(),i=null;for(e=n.pop(),t=r.pop();e===t;)i=e,e=n.pop(),t=r.pop();return i}function N(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t}function P(){return Array.from(this)}function F(){var e=[];return this.eachBefore(function(t){t.children||e.push(t)}),e}function I(){var e=this,t=[];return e.each(function(n){n!==e&&t.push({source:n.parent,target:n})}),t}function*L(){var e=this,t,n=[e],r,i,a;do for(t=n.reverse(),n=[];e=t.pop();)if(yield e,r=e.children)for(i=0,a=r.length;i<a;++i)n.push(r[i]);while(n.length)}function R(e,t){e instanceof Map?(e=[void 0,e],t===void 0&&(t=V)):t===void 0&&(t=B);for(var n=new W(e),r,i=[n],a,o,s,c;r=i.pop();)if((o=t(r.data))&&(c=(o=Array.from(o)).length))for(r.children=o,s=c-1;s>=0;--s)i.push(a=o[s]=new W(o[s])),a.parent=r,a.depth=r.depth+1;return n.eachBefore(U)}function z(){return R(this).eachBefore(H)}function B(e){return e.children}function V(e){return Array.isArray(e)?e[1]:null}function H(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function U(e){var t=0;do e.height=t;while((e=e.parent)&&e.height<++t)}function W(e){this.data=e,this.depth=this.height=0,this.parent=null}W.prototype=R.prototype={constructor:W,count:w,each:T,eachAfter:D,eachBefore:E,find:O,sum:k,sort:A,path:j,ancestors:N,descendants:P,leaves:F,links:I,copy:z,[Symbol.iterator]:L};function G(e){if(typeof e!=`function`)throw Error();return e}function K(){return 0}function q(e){return function(){return e}}function J(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function ee(e,t,n,r,i){for(var a=e.children,o,s=-1,c=a.length,l=e.value&&(r-t)/e.value;++s<c;)o=a[s],o.y0=n,o.y1=i,o.x0=t,o.x1=t+=o.value*l}function te(e,t,n,r,i){for(var a=e.children,o,s=-1,c=a.length,l=e.value&&(i-n)/e.value;++s<c;)o=a[s],o.x0=t,o.x1=r,o.y0=n,o.y1=n+=o.value*l}var ne=(1+Math.sqrt(5))/2;function re(e,t,n,r,i,a){for(var o=[],s=t.children,c,l,u=0,d=0,f=s.length,p,m,h=t.value,g,_,v,y,b,x,S;u<f;){p=i-n,m=a-r;do g=s[d++].value;while(!g&&d<f);for(_=v=g,x=Math.max(m/p,p/m)/(h*e),S=g*g*x,b=Math.max(v/S,S/_);d<f;++d){if(g+=l=s[d].value,l<_&&(_=l),l>v&&(v=l),S=g*g*x,y=Math.max(v/S,S/_),y>b){g-=l;break}b=y}o.push(c={value:g,dice:p<m,children:s.slice(u,d)}),c.dice?ee(c,n,r,i,h?r+=m*g/h:a):te(c,n,r,h?n+=p*g/h:i,a),h-=g,u=d}return o}var ie=(function e(t){function n(e,n,r,i,a){re(t,e,n,r,i,a)}return n.ratio=function(t){return e((t=+t)>1?t:1)},n})(ne);function ae(){var e=ie,t=!1,n=1,r=1,i=[0],a=K,o=K,s=K,c=K,l=K;function u(e){return e.x0=e.y0=0,e.x1=n,e.y1=r,e.eachBefore(d),i=[0],t&&e.eachBefore(J),e}function d(t){var n=i[t.depth],r=t.x0+n,u=t.y0+n,d=t.x1-n,f=t.y1-n;d<r&&(r=d=(r+d)/2),f<u&&(u=f=(u+f)/2),t.x0=r,t.y0=u,t.x1=d,t.y1=f,t.children&&(n=i[t.depth+1]=a(t)/2,r+=l(t)-n,u+=o(t)-n,d-=s(t)-n,f-=c(t)-n,d<r&&(r=d=(r+d)/2),f<u&&(u=f=(u+f)/2),e(t,r,u,d,f))}return u.round=function(e){return arguments.length?(t=!!e,u):t},u.size=function(e){return arguments.length?(n=+e[0],r=+e[1],u):[n,r]},u.tile=function(t){return arguments.length?(e=G(t),u):e},u.padding=function(e){return arguments.length?u.paddingInner(e).paddingOuter(e):u.paddingInner()},u.paddingInner=function(e){return arguments.length?(a=typeof e==`function`?e:q(+e),u):a},u.paddingOuter=function(e){return arguments.length?u.paddingTop(e).paddingRight(e).paddingBottom(e).paddingLeft(e):u.paddingTop()},u.paddingTop=function(e){return arguments.length?(o=typeof e==`function`?e:q(+e),u):o},u.paddingRight=function(e){return arguments.length?(s=typeof e==`function`?e:q(+e),u):s},u.paddingBottom=function(e){return arguments.length?(c=typeof e==`function`?e:q(+e),u):c},u.paddingLeft=function(e){return arguments.length?(l=typeof e==`function`?e:q(+e),u):l},u}var Y=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=a,this.getAccTitle=d,this.setDiagramTitle=o,this.getDiagramTitle=r,this.getAccDescription=s,this.setAccDescription=n}static{e(this,`TreeMapDB`)}getNodes(){return this.nodes}getConfig(){let e=u,t=f();return g({...e.treemap,...t.treemap??{}})}addNode(e,t){this.nodes.push(e),this.levels.set(e,t),t===0&&(this.outerNodes.push(e),this.root??=e)}getRoot(){return{name:``,children:this.outerNodes}}addClass(e,t){let n=this.classes.get(e)??{id:e,styles:[],textStyles:[]},r=t.replace(/\\,/g,`§§§`).replace(/,/g,`;`).replace(/§§§/g,`,`).split(`;`);r&&r.forEach(e=>{S(e)&&(n?.textStyles?n.textStyles.push(e):n.textStyles=[e]),n?.styles?n.styles.push(e):n.styles=[e]}),this.classes.set(e,n)}getClasses(){return this.classes}getStylesForClass(e){return this.classes.get(e)?.styles??[]}clear(){c(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};function X(e){if(!e.length)return[];let t=[],n=[];return e.forEach(e=>{let r={name:e.name,children:e.type===`Leaf`?void 0:[]};for(r.classSelector=e?.classSelector,e?.cssCompiledStyles&&(r.cssCompiledStyles=e.cssCompiledStyles),e.type===`Leaf`&&e.value!==void 0&&(r.value=e.value);n.length>0&&n[n.length-1].level>=e.level;)n.pop();if(n.length===0)t.push(r);else{let e=n[n.length-1].node;e.children?e.children.push(r):e.children=[r]}e.type!==`Leaf`&&n.push({node:r,level:e.level})}),t}e(X,`buildHierarchy`);var oe=e((t,n)=>{v(t,n);let r=[];for(let e of t.TreemapRows??[])e.$type===`ClassDefStatement`&&n.addClass(e.className??``,e.styleText??``);for(let e of t.TreemapRows??[]){let t=e.item;if(!t)continue;let i=e.indent?parseInt(e.indent):0,a=se(t),o=t.classSelector?n.getStylesForClass(t.classSelector):[],s=o.length>0?o:void 0,c={level:i,name:a,type:t.$type,value:t.value,classSelector:t.classSelector,cssCompiledStyles:s};r.push(c)}let i=X(r),a=e((e,t)=>{for(let r of e)n.addNode(r,t),r.children&&r.children.length>0&&a(r.children,t+1)},`addNodesRecursively`);a(i,0)},`populate`),se=e(e=>e.name?String(e.name):``,`getItemName`),Z={parser:{yy:void 0},parse:e(async e=>{try{let n=await y(`treemap`,e);t.debug(`Treemap AST:`,n);let r=Z.parser?.yy;if(!(r instanceof Y))throw Error(`parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.`);oe(n,r)}catch(e){throw t.error(`Error parsing treemap:`,e),e}},`parse`)},ce=10,Q=10,$=25,le={draw:e((n,r,i,a)=>{let o=a.db,s=o.getConfig(),c=s.padding??ce,u=o.getDiagramTitle(),d=o.getRoot(),{themeVariables:g}=f();if(!d)return;let v=u?30:0,y=_(r),S=s.nodeWidth?s.nodeWidth*Q:960,C=s.nodeHeight?s.nodeHeight*Q:500,w=S,T=C+v;y.attr(`viewBox`,`0 0 ${w} ${T}`),l(y,T,w,s.useMaxWidth);let E;try{let t=s.valueFormat||`,`;if(t===`$0,0`)E=e(e=>`$`+h(`,`)(e),`valueFormat`);else if(t.startsWith(`$`)&&t.includes(`,`)){let n=/\.\d+/.exec(t),r=n?n[0]:``;E=e(e=>`$`+h(`,`+r)(e),`valueFormat`)}else if(t.startsWith(`$`)){let n=t.substring(1);E=e(e=>`$`+h(n||``)(e),`valueFormat`)}else E=h(t)}catch(e){t.error(`Error creating format function:`,e),E=h(`,`)}let D=p().range([`transparent`,g.cScale0,g.cScale1,g.cScale2,g.cScale3,g.cScale4,g.cScale5,g.cScale6,g.cScale7,g.cScale8,g.cScale9,g.cScale10,g.cScale11]),O=p().range([`transparent`,g.cScalePeer0,g.cScalePeer1,g.cScalePeer2,g.cScalePeer3,g.cScalePeer4,g.cScalePeer5,g.cScalePeer6,g.cScalePeer7,g.cScalePeer8,g.cScalePeer9,g.cScalePeer10,g.cScalePeer11]),k=p().range([g.cScaleLabel0,g.cScaleLabel1,g.cScaleLabel2,g.cScaleLabel3,g.cScaleLabel4,g.cScaleLabel5,g.cScaleLabel6,g.cScaleLabel7,g.cScaleLabel8,g.cScaleLabel9,g.cScaleLabel10,g.cScaleLabel11]);u&&y.append(`text`).attr(`x`,w/2).attr(`y`,v/2).attr(`class`,`treemapTitle`).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`middle`).text(u);let A=y.append(`g`).attr(`transform`,`translate(0, ${v})`).attr(`class`,`treemapContainer`),j=R(d).sum(e=>e.value??0).sort((e,t)=>(t.value??0)-(e.value??0)),M=ae().size([S,C]).paddingTop(e=>e.children&&e.children.length>0?$+Q:0).paddingInner(c).paddingLeft(e=>e.children&&e.children.length>0?Q:0).paddingRight(e=>e.children&&e.children.length>0?Q:0).paddingBottom(e=>e.children&&e.children.length>0?Q:0).round(!0)(j),N=M.descendants().filter(e=>e.children&&e.children.length>0),P=A.selectAll(`.treemapSection`).data(N).enter().append(`g`).attr(`class`,`treemapSection`).attr(`transform`,e=>`translate(${e.x0},${e.y0})`);P.append(`rect`).attr(`width`,e=>e.x1-e.x0).attr(`height`,$).attr(`class`,`treemapSectionHeader`).attr(`fill`,`none`).attr(`fill-opacity`,.6).attr(`stroke-width`,.6).attr(`style`,e=>e.depth===0?`display: none;`:``),P.append(`clipPath`).attr(`id`,(e,t)=>`clip-section-${r}-${t}`).append(`rect`).attr(`width`,e=>Math.max(0,e.x1-e.x0-12)).attr(`height`,$),P.append(`rect`).attr(`width`,e=>e.x1-e.x0).attr(`height`,e=>e.y1-e.y0).attr(`class`,(e,t)=>`treemapSection section${t}`).attr(`fill`,e=>D(e.data.name)).attr(`fill-opacity`,.6).attr(`stroke`,e=>O(e.data.name)).attr(`stroke-width`,2).attr(`stroke-opacity`,.4).attr(`style`,e=>{if(e.depth===0)return`display: none;`;let t=x({cssCompiledStyles:e.data.cssCompiledStyles});return t.nodeStyles+`;`+t.borderStyles.join(`;`)}),P.append(`text`).attr(`class`,`treemapSectionLabel`).attr(`x`,6).attr(`y`,$/2).attr(`dominant-baseline`,`middle`).text(e=>e.depth===0?``:e.data.name).attr(`font-weight`,`bold`).attr(`style`,e=>e.depth===0?`display: none;`:`dominant-baseline: middle; font-size: 12px; fill:`+k(e.data.name)+`; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;`+x({cssCompiledStyles:e.data.cssCompiledStyles}).labelStyles.replace(`color:`,`fill:`)).each(function(e){if(e.depth===0)return;let t=m(this),n=e.data.name;t.text(n);let r=e.x1-e.x0,i;i=s.showValues!==!1&&e.value?r-10-30-10-6:r-6-6;let a=Math.max(15,i),o=t.node();if(o.getComputedTextLength()>a){let e=n;for(;e.length>0;){if(e=n.substring(0,e.length-1),e.length===0){t.text(`...`),o.getComputedTextLength()>a&&t.text(``);break}if(t.text(e+`...`),o.getComputedTextLength()<=a)break}}}),s.showValues!==!1&&P.append(`text`).attr(`class`,`treemapSectionValue`).attr(`x`,e=>e.x1-e.x0-10).attr(`y`,$/2).attr(`text-anchor`,`end`).attr(`dominant-baseline`,`middle`).text(e=>e.value?E(e.value):``).attr(`font-style`,`italic`).attr(`style`,e=>e.depth===0?`display: none;`:`text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:`+k(e.data.name)+`; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;`+x({cssCompiledStyles:e.data.cssCompiledStyles}).labelStyles.replace(`color:`,`fill:`));let F=M.leaves(),I=A.selectAll(`.treemapLeafGroup`).data(F).enter().append(`g`).attr(`class`,(e,t)=>`treemapNode treemapLeafGroup leaf${t}${e.data.classSelector?` ${e.data.classSelector}`:``}x`).attr(`transform`,e=>`translate(${e.x0},${e.y0})`);I.append(`rect`).attr(`width`,e=>e.x1-e.x0).attr(`height`,e=>e.y1-e.y0).attr(`class`,`treemapLeaf`).attr(`fill`,e=>e.parent?D(e.parent.data.name):D(e.data.name)).attr(`style`,e=>x({cssCompiledStyles:e.data.cssCompiledStyles}).nodeStyles).attr(`fill-opacity`,.3).attr(`stroke`,e=>e.parent?D(e.parent.data.name):D(e.data.name)).attr(`stroke-width`,3),I.append(`clipPath`).attr(`id`,(e,t)=>`clip-${r}-${t}`).append(`rect`).attr(`width`,e=>Math.max(0,e.x1-e.x0-4)).attr(`height`,e=>Math.max(0,e.y1-e.y0-4)),I.append(`text`).attr(`class`,`treemapLabel`).attr(`x`,e=>(e.x1-e.x0)/2).attr(`y`,e=>(e.y1-e.y0)/2).attr(`style`,e=>`text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:`+k(e.data.name)+`;`+x({cssCompiledStyles:e.data.cssCompiledStyles}).labelStyles.replace(`color:`,`fill:`)).attr(`clip-path`,(e,t)=>`url(#clip-${r}-${t})`).text(e=>e.data.name).each(function(e){let t=m(this),n=e.x1-e.x0,r=e.y1-e.y0,i=t.node(),a=n-8,o=r-8;if(a<10||o<10){t.style(`display`,`none`);return}let s=parseInt(t.style(`font-size`),10),c=.6;for(;i.getComputedTextLength()>a&&s>8;)s--,t.style(`font-size`,`${s}px`);let l=Math.max(6,Math.min(28,Math.round(s*c))),u=s+2+l;for(;u>o&&s>8&&(s--,l=Math.max(6,Math.min(28,Math.round(s*c))),!(l<6&&s===8));)t.style(`font-size`,`${s}px`),u=s+2+l;t.style(`font-size`,`${s}px`),(i.getComputedTextLength()>a||s<8||o<s)&&t.style(`display`,`none`)}),s.showValues!==!1&&I.append(`text`).attr(`class`,`treemapValue`).attr(`x`,e=>(e.x1-e.x0)/2).attr(`y`,function(e){return(e.y1-e.y0)/2}).attr(`style`,e=>`text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:`+k(e.data.name)+`;`+x({cssCompiledStyles:e.data.cssCompiledStyles}).labelStyles.replace(`color:`,`fill:`)).attr(`clip-path`,(e,t)=>`url(#clip-${r}-${t})`).text(e=>e.value?E(e.value):``).each(function(e){let t=m(this),n=this.parentNode;if(!n){t.style(`display`,`none`);return}let r=m(n).select(`.treemapLabel`);if(r.empty()||r.style(`display`)===`none`){t.style(`display`,`none`);return}let i=parseFloat(r.style(`font-size`)),a=Math.max(6,Math.min(28,Math.round(i*.6)));t.style(`font-size`,`${a}px`);let o=(e.y1-e.y0)/2+i/2+2;t.attr(`y`,o);let s=e.x1-e.x0,c=e.y1-e.y0-4,l=s-8;t.node().getComputedTextLength()>l||o+a>c||a<6?t.style(`display`,`none`):t.style(`display`,null)}),b(y,s.diagramPadding??8,`flowchart`,s?.useMaxWidth||!1)},`draw`),getClasses:e(function(e,t){return t.db.getClasses()},`getClasses`)},ue={sectionStrokeColor:`black`,sectionStrokeWidth:`1`,sectionFillColor:`#efefef`,leafStrokeColor:`black`,leafStrokeWidth:`1`,leafFillColor:`#efefef`,labelFontSize:`12px`,valueFontSize:`10px`,titleFontSize:`14px`},de={parser:Z,get db(){return new Y},renderer:le,styles:e(({treemap:e}={})=>{let t=g(i(),f().themeVariables),n=g(ue,e),r=n.titleColor??t.titleColor,a=n.labelColor??t.textColor,o=n.valueColor??t.textColor;return`
1
+ import{n as e,r as t}from"./src-MPCDFn03.js";import{B as n,C as r,E as i,V as a,W as o,_ as s,a as c,c as l,d as u,v as d,y as f}from"./chunk-ICPOFSXX-Lfk6ZyEQ.js";import{t as p}from"./ordinal-CEBhmkvU.js";import{C as m}from"./src-D68V8cNU.js";import{t as h}from"./defaultLocale-C5PFB6dK.js";import{r as g}from"./chunk-5PVQY5BW-c5z1iYCm.js";import{t as _}from"./chunk-426QAEUC-BOfOOezm.js";import{t as v}from"./chunk-4BX2VUAB-B1nZWDyG.js";import{t as y}from"./mermaid-parser.core-BheXl3qv.js";import{t as b}from"./chunk-EDXVE4YY-BG01O3ZU.js";import{i as x,n as S}from"./chunk-X2U36JSP-SSsGg9yt.js";function C(e){var t=0,n=e.children,r=n&&n.length;if(!r)t=1;else for(;--r>=0;)t+=n[r].value;e.value=t}function w(){return this.eachAfter(C)}function T(e,t){let n=-1;for(let r of this)e.call(t,r,++n,this);return this}function E(e,t){for(var n=this,r=[n],i,a,o=-1;n=r.pop();)if(e.call(t,n,++o,this),i=n.children)for(a=i.length-1;a>=0;--a)r.push(i[a]);return this}function D(e,t){for(var n=this,r=[n],i=[],a,o,s,c=-1;n=r.pop();)if(i.push(n),a=n.children)for(o=0,s=a.length;o<s;++o)r.push(a[o]);for(;n=i.pop();)e.call(t,n,++c,this);return this}function O(e,t){let n=-1;for(let r of this)if(e.call(t,r,++n,this))return r}function k(e){return this.eachAfter(function(t){for(var n=+e(t.data)||0,r=t.children,i=r&&r.length;--i>=0;)n+=r[i].value;t.value=n})}function A(e){return this.eachBefore(function(t){t.children&&t.children.sort(e)})}function j(e){for(var t=this,n=M(t,e),r=[t];t!==n;)t=t.parent,r.push(t);for(var i=r.length;e!==n;)r.splice(i,0,e),e=e.parent;return r}function M(e,t){if(e===t)return e;var n=e.ancestors(),r=t.ancestors(),i=null;for(e=n.pop(),t=r.pop();e===t;)i=e,e=n.pop(),t=r.pop();return i}function N(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t}function P(){return Array.from(this)}function F(){var e=[];return this.eachBefore(function(t){t.children||e.push(t)}),e}function I(){var e=this,t=[];return e.each(function(n){n!==e&&t.push({source:n.parent,target:n})}),t}function*L(){var e=this,t,n=[e],r,i,a;do for(t=n.reverse(),n=[];e=t.pop();)if(yield e,r=e.children)for(i=0,a=r.length;i<a;++i)n.push(r[i]);while(n.length)}function R(e,t){e instanceof Map?(e=[void 0,e],t===void 0&&(t=V)):t===void 0&&(t=B);for(var n=new W(e),r,i=[n],a,o,s,c;r=i.pop();)if((o=t(r.data))&&(c=(o=Array.from(o)).length))for(r.children=o,s=c-1;s>=0;--s)i.push(a=o[s]=new W(o[s])),a.parent=r,a.depth=r.depth+1;return n.eachBefore(U)}function z(){return R(this).eachBefore(H)}function B(e){return e.children}function V(e){return Array.isArray(e)?e[1]:null}function H(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function U(e){var t=0;do e.height=t;while((e=e.parent)&&e.height<++t)}function W(e){this.data=e,this.depth=this.height=0,this.parent=null}W.prototype=R.prototype={constructor:W,count:w,each:T,eachAfter:D,eachBefore:E,find:O,sum:k,sort:A,path:j,ancestors:N,descendants:P,leaves:F,links:I,copy:z,[Symbol.iterator]:L};function G(e){if(typeof e!=`function`)throw Error();return e}function K(){return 0}function q(e){return function(){return e}}function J(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function ee(e,t,n,r,i){for(var a=e.children,o,s=-1,c=a.length,l=e.value&&(r-t)/e.value;++s<c;)o=a[s],o.y0=n,o.y1=i,o.x0=t,o.x1=t+=o.value*l}function te(e,t,n,r,i){for(var a=e.children,o,s=-1,c=a.length,l=e.value&&(i-n)/e.value;++s<c;)o=a[s],o.x0=t,o.x1=r,o.y0=n,o.y1=n+=o.value*l}var ne=(1+Math.sqrt(5))/2;function re(e,t,n,r,i,a){for(var o=[],s=t.children,c,l,u=0,d=0,f=s.length,p,m,h=t.value,g,_,v,y,b,x,S;u<f;){p=i-n,m=a-r;do g=s[d++].value;while(!g&&d<f);for(_=v=g,x=Math.max(m/p,p/m)/(h*e),S=g*g*x,b=Math.max(v/S,S/_);d<f;++d){if(g+=l=s[d].value,l<_&&(_=l),l>v&&(v=l),S=g*g*x,y=Math.max(v/S,S/_),y>b){g-=l;break}b=y}o.push(c={value:g,dice:p<m,children:s.slice(u,d)}),c.dice?ee(c,n,r,i,h?r+=m*g/h:a):te(c,n,r,h?n+=p*g/h:i,a),h-=g,u=d}return o}var ie=(function e(t){function n(e,n,r,i,a){re(t,e,n,r,i,a)}return n.ratio=function(t){return e((t=+t)>1?t:1)},n})(ne);function ae(){var e=ie,t=!1,n=1,r=1,i=[0],a=K,o=K,s=K,c=K,l=K;function u(e){return e.x0=e.y0=0,e.x1=n,e.y1=r,e.eachBefore(d),i=[0],t&&e.eachBefore(J),e}function d(t){var n=i[t.depth],r=t.x0+n,u=t.y0+n,d=t.x1-n,f=t.y1-n;d<r&&(r=d=(r+d)/2),f<u&&(u=f=(u+f)/2),t.x0=r,t.y0=u,t.x1=d,t.y1=f,t.children&&(n=i[t.depth+1]=a(t)/2,r+=l(t)-n,u+=o(t)-n,d-=s(t)-n,f-=c(t)-n,d<r&&(r=d=(r+d)/2),f<u&&(u=f=(u+f)/2),e(t,r,u,d,f))}return u.round=function(e){return arguments.length?(t=!!e,u):t},u.size=function(e){return arguments.length?(n=+e[0],r=+e[1],u):[n,r]},u.tile=function(t){return arguments.length?(e=G(t),u):e},u.padding=function(e){return arguments.length?u.paddingInner(e).paddingOuter(e):u.paddingInner()},u.paddingInner=function(e){return arguments.length?(a=typeof e==`function`?e:q(+e),u):a},u.paddingOuter=function(e){return arguments.length?u.paddingTop(e).paddingRight(e).paddingBottom(e).paddingLeft(e):u.paddingTop()},u.paddingTop=function(e){return arguments.length?(o=typeof e==`function`?e:q(+e),u):o},u.paddingRight=function(e){return arguments.length?(s=typeof e==`function`?e:q(+e),u):s},u.paddingBottom=function(e){return arguments.length?(c=typeof e==`function`?e:q(+e),u):c},u.paddingLeft=function(e){return arguments.length?(l=typeof e==`function`?e:q(+e),u):l},u}var Y=class{constructor(){this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.setAccTitle=a,this.getAccTitle=d,this.setDiagramTitle=o,this.getDiagramTitle=r,this.getAccDescription=s,this.setAccDescription=n}static{e(this,`TreeMapDB`)}getNodes(){return this.nodes}getConfig(){let e=u,t=f();return g({...e.treemap,...t.treemap??{}})}addNode(e,t){this.nodes.push(e),this.levels.set(e,t),t===0&&(this.outerNodes.push(e),this.root??=e)}getRoot(){return{name:``,children:this.outerNodes}}addClass(e,t){let n=this.classes.get(e)??{id:e,styles:[],textStyles:[]},r=t.replace(/\\,/g,`§§§`).replace(/,/g,`;`).replace(/§§§/g,`,`).split(`;`);r&&r.forEach(e=>{S(e)&&(n?.textStyles?n.textStyles.push(e):n.textStyles=[e]),n?.styles?n.styles.push(e):n.styles=[e]}),this.classes.set(e,n)}getClasses(){return this.classes}getStylesForClass(e){return this.classes.get(e)?.styles??[]}clear(){c(),this.nodes=[],this.levels=new Map,this.outerNodes=[],this.classes=new Map,this.root=void 0}};function X(e){if(!e.length)return[];let t=[],n=[];return e.forEach(e=>{let r={name:e.name,children:e.type===`Leaf`?void 0:[]};for(r.classSelector=e?.classSelector,e?.cssCompiledStyles&&(r.cssCompiledStyles=e.cssCompiledStyles),e.type===`Leaf`&&e.value!==void 0&&(r.value=e.value);n.length>0&&n[n.length-1].level>=e.level;)n.pop();if(n.length===0)t.push(r);else{let e=n[n.length-1].node;e.children?e.children.push(r):e.children=[r]}e.type!==`Leaf`&&n.push({node:r,level:e.level})}),t}e(X,`buildHierarchy`);var oe=e((t,n)=>{v(t,n);let r=[];for(let e of t.TreemapRows??[])e.$type===`ClassDefStatement`&&n.addClass(e.className??``,e.styleText??``);for(let e of t.TreemapRows??[]){let t=e.item;if(!t)continue;let i=e.indent?parseInt(e.indent):0,a=se(t),o=t.classSelector?n.getStylesForClass(t.classSelector):[],s=o.length>0?o:void 0,c={level:i,name:a,type:t.$type,value:t.value,classSelector:t.classSelector,cssCompiledStyles:s};r.push(c)}let i=X(r),a=e((e,t)=>{for(let r of e)n.addNode(r,t),r.children&&r.children.length>0&&a(r.children,t+1)},`addNodesRecursively`);a(i,0)},`populate`),se=e(e=>e.name?String(e.name):``,`getItemName`),Z={parser:{yy:void 0},parse:e(async e=>{try{let n=await y(`treemap`,e);t.debug(`Treemap AST:`,n);let r=Z.parser?.yy;if(!(r instanceof Y))throw Error(`parser.parser?.yy was not a TreemapDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.`);oe(n,r)}catch(e){throw t.error(`Error parsing treemap:`,e),e}},`parse`)},ce=10,Q=10,$=25,le={draw:e((n,r,i,a)=>{let o=a.db,s=o.getConfig(),c=s.padding??ce,u=o.getDiagramTitle(),d=o.getRoot(),{themeVariables:g}=f();if(!d)return;let v=u?30:0,y=_(r),S=s.nodeWidth?s.nodeWidth*Q:960,C=s.nodeHeight?s.nodeHeight*Q:500,w=S,T=C+v;y.attr(`viewBox`,`0 0 ${w} ${T}`),l(y,T,w,s.useMaxWidth);let E;try{let t=s.valueFormat||`,`;if(t===`$0,0`)E=e(e=>`$`+h(`,`)(e),`valueFormat`);else if(t.startsWith(`$`)&&t.includes(`,`)){let n=/\.\d+/.exec(t),r=n?n[0]:``;E=e(e=>`$`+h(`,`+r)(e),`valueFormat`)}else if(t.startsWith(`$`)){let n=t.substring(1);E=e(e=>`$`+h(n||``)(e),`valueFormat`)}else E=h(t)}catch(e){t.error(`Error creating format function:`,e),E=h(`,`)}let D=p().range([`transparent`,g.cScale0,g.cScale1,g.cScale2,g.cScale3,g.cScale4,g.cScale5,g.cScale6,g.cScale7,g.cScale8,g.cScale9,g.cScale10,g.cScale11]),O=p().range([`transparent`,g.cScalePeer0,g.cScalePeer1,g.cScalePeer2,g.cScalePeer3,g.cScalePeer4,g.cScalePeer5,g.cScalePeer6,g.cScalePeer7,g.cScalePeer8,g.cScalePeer9,g.cScalePeer10,g.cScalePeer11]),k=p().range([g.cScaleLabel0,g.cScaleLabel1,g.cScaleLabel2,g.cScaleLabel3,g.cScaleLabel4,g.cScaleLabel5,g.cScaleLabel6,g.cScaleLabel7,g.cScaleLabel8,g.cScaleLabel9,g.cScaleLabel10,g.cScaleLabel11]);u&&y.append(`text`).attr(`x`,w/2).attr(`y`,v/2).attr(`class`,`treemapTitle`).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`middle`).text(u);let A=y.append(`g`).attr(`transform`,`translate(0, ${v})`).attr(`class`,`treemapContainer`),j=R(d).sum(e=>e.value??0).sort((e,t)=>(t.value??0)-(e.value??0)),M=ae().size([S,C]).paddingTop(e=>e.children&&e.children.length>0?$+Q:0).paddingInner(c).paddingLeft(e=>e.children&&e.children.length>0?Q:0).paddingRight(e=>e.children&&e.children.length>0?Q:0).paddingBottom(e=>e.children&&e.children.length>0?Q:0).round(!0)(j),N=M.descendants().filter(e=>e.children&&e.children.length>0),P=A.selectAll(`.treemapSection`).data(N).enter().append(`g`).attr(`class`,`treemapSection`).attr(`transform`,e=>`translate(${e.x0},${e.y0})`);P.append(`rect`).attr(`width`,e=>e.x1-e.x0).attr(`height`,$).attr(`class`,`treemapSectionHeader`).attr(`fill`,`none`).attr(`fill-opacity`,.6).attr(`stroke-width`,.6).attr(`style`,e=>e.depth===0?`display: none;`:``),P.append(`clipPath`).attr(`id`,(e,t)=>`clip-section-${r}-${t}`).append(`rect`).attr(`width`,e=>Math.max(0,e.x1-e.x0-12)).attr(`height`,$),P.append(`rect`).attr(`width`,e=>e.x1-e.x0).attr(`height`,e=>e.y1-e.y0).attr(`class`,(e,t)=>`treemapSection section${t}`).attr(`fill`,e=>D(e.data.name)).attr(`fill-opacity`,.6).attr(`stroke`,e=>O(e.data.name)).attr(`stroke-width`,2).attr(`stroke-opacity`,.4).attr(`style`,e=>{if(e.depth===0)return`display: none;`;let t=x({cssCompiledStyles:e.data.cssCompiledStyles});return t.nodeStyles+`;`+t.borderStyles.join(`;`)}),P.append(`text`).attr(`class`,`treemapSectionLabel`).attr(`x`,6).attr(`y`,$/2).attr(`dominant-baseline`,`middle`).text(e=>e.depth===0?``:e.data.name).attr(`font-weight`,`bold`).attr(`style`,e=>e.depth===0?`display: none;`:`dominant-baseline: middle; font-size: 12px; fill:`+k(e.data.name)+`; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;`+x({cssCompiledStyles:e.data.cssCompiledStyles}).labelStyles.replace(`color:`,`fill:`)).each(function(e){if(e.depth===0)return;let t=m(this),n=e.data.name;t.text(n);let r=e.x1-e.x0,i;i=s.showValues!==!1&&e.value?r-10-30-10-6:r-6-6;let a=Math.max(15,i),o=t.node();if(o.getComputedTextLength()>a){let e=n;for(;e.length>0;){if(e=n.substring(0,e.length-1),e.length===0){t.text(`...`),o.getComputedTextLength()>a&&t.text(``);break}if(t.text(e+`...`),o.getComputedTextLength()<=a)break}}}),s.showValues!==!1&&P.append(`text`).attr(`class`,`treemapSectionValue`).attr(`x`,e=>e.x1-e.x0-10).attr(`y`,$/2).attr(`text-anchor`,`end`).attr(`dominant-baseline`,`middle`).text(e=>e.value?E(e.value):``).attr(`font-style`,`italic`).attr(`style`,e=>e.depth===0?`display: none;`:`text-anchor: end; dominant-baseline: middle; font-size: 10px; fill:`+k(e.data.name)+`; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;`+x({cssCompiledStyles:e.data.cssCompiledStyles}).labelStyles.replace(`color:`,`fill:`));let F=M.leaves(),I=A.selectAll(`.treemapLeafGroup`).data(F).enter().append(`g`).attr(`class`,(e,t)=>`treemapNode treemapLeafGroup leaf${t}${e.data.classSelector?` ${e.data.classSelector}`:``}x`).attr(`transform`,e=>`translate(${e.x0},${e.y0})`);I.append(`rect`).attr(`width`,e=>e.x1-e.x0).attr(`height`,e=>e.y1-e.y0).attr(`class`,`treemapLeaf`).attr(`fill`,e=>e.parent?D(e.parent.data.name):D(e.data.name)).attr(`style`,e=>x({cssCompiledStyles:e.data.cssCompiledStyles}).nodeStyles).attr(`fill-opacity`,.3).attr(`stroke`,e=>e.parent?D(e.parent.data.name):D(e.data.name)).attr(`stroke-width`,3),I.append(`clipPath`).attr(`id`,(e,t)=>`clip-${r}-${t}`).append(`rect`).attr(`width`,e=>Math.max(0,e.x1-e.x0-4)).attr(`height`,e=>Math.max(0,e.y1-e.y0-4)),I.append(`text`).attr(`class`,`treemapLabel`).attr(`x`,e=>(e.x1-e.x0)/2).attr(`y`,e=>(e.y1-e.y0)/2).attr(`style`,e=>`text-anchor: middle; dominant-baseline: middle; font-size: 38px;fill:`+k(e.data.name)+`;`+x({cssCompiledStyles:e.data.cssCompiledStyles}).labelStyles.replace(`color:`,`fill:`)).attr(`clip-path`,(e,t)=>`url(#clip-${r}-${t})`).text(e=>e.data.name).each(function(e){let t=m(this),n=e.x1-e.x0,r=e.y1-e.y0,i=t.node(),a=n-8,o=r-8;if(a<10||o<10){t.style(`display`,`none`);return}let s=parseInt(t.style(`font-size`),10),c=.6;for(;i.getComputedTextLength()>a&&s>8;)s--,t.style(`font-size`,`${s}px`);let l=Math.max(6,Math.min(28,Math.round(s*c))),u=s+2+l;for(;u>o&&s>8&&(s--,l=Math.max(6,Math.min(28,Math.round(s*c))),!(l<6&&s===8));)t.style(`font-size`,`${s}px`),u=s+2+l;t.style(`font-size`,`${s}px`),(i.getComputedTextLength()>a||s<8||o<s)&&t.style(`display`,`none`)}),s.showValues!==!1&&I.append(`text`).attr(`class`,`treemapValue`).attr(`x`,e=>(e.x1-e.x0)/2).attr(`y`,function(e){return(e.y1-e.y0)/2}).attr(`style`,e=>`text-anchor: middle; dominant-baseline: hanging; font-size: 28px;fill:`+k(e.data.name)+`;`+x({cssCompiledStyles:e.data.cssCompiledStyles}).labelStyles.replace(`color:`,`fill:`)).attr(`clip-path`,(e,t)=>`url(#clip-${r}-${t})`).text(e=>e.value?E(e.value):``).each(function(e){let t=m(this),n=this.parentNode;if(!n){t.style(`display`,`none`);return}let r=m(n).select(`.treemapLabel`);if(r.empty()||r.style(`display`)===`none`){t.style(`display`,`none`);return}let i=parseFloat(r.style(`font-size`)),a=Math.max(6,Math.min(28,Math.round(i*.6)));t.style(`font-size`,`${a}px`);let o=(e.y1-e.y0)/2+i/2+2;t.attr(`y`,o);let s=e.x1-e.x0,c=e.y1-e.y0-4,l=s-8;t.node().getComputedTextLength()>l||o+a>c||a<6?t.style(`display`,`none`):t.style(`display`,null)}),b(y,s.diagramPadding??8,`flowchart`,s?.useMaxWidth||!1)},`draw`),getClasses:e(function(e,t){return t.db.getClasses()},`getClasses`)},ue={sectionStrokeColor:`black`,sectionStrokeWidth:`1`,sectionFillColor:`#efefef`,leafStrokeColor:`black`,leafStrokeWidth:`1`,leafFillColor:`#efefef`,labelFontSize:`12px`,valueFontSize:`10px`,titleFontSize:`14px`},de={parser:Z,get db(){return new Y},renderer:le,styles:e(({treemap:e}={})=>{let t=g(i(),f().themeVariables),n=g(ue,e),r=n.titleColor??t.titleColor,a=n.labelColor??t.textColor,o=n.valueColor??t.textColor;return`
2
2
  .treemapNode.section {
3
3
  stroke: ${n.sectionStrokeColor};
4
4
  stroke-width: ${n.sectionStrokeWidth};
@@ -1,4 +1,4 @@
1
- import{n as e,r as t}from"./src-BViYu1Wd.js";import{B as n,C as r,E as i,V as a,W as o,_ as s,a as c,c as l,d as u,v as d,y as f}from"./chunk-ICPOFSXX-DrWPpdBM.js";import{r as p}from"./chunk-5PVQY5BW-BwH_ti4z.js";import{t as m}from"./chunk-426QAEUC-CNG9cIod.js";import{t as h}from"./chunk-4BX2VUAB-D0jcVJQX.js";import{t as g}from"./mermaid-parser.core-wPx7o9bi.js";var _={showLegend:!0,ticks:5,max:null,min:0,graticule:`circle`},v={axes:[],curves:[],options:_},y=structuredClone(v),b=u.radar,x=e(()=>p({...b,...f().radar}),`getConfig`),S=e(()=>y.axes,`getAxes`),C=e(()=>y.curves,`getCurves`),w=e(()=>y.options,`getOptions`),T=e(e=>{y.axes=e.map(e=>({name:e.name,label:e.label??e.name}))},`setAxes`),E=e(e=>{y.curves=e.map(e=>({name:e.name,label:e.label??e.name,entries:D(e.entries)}))},`setCurves`),D=e(e=>{if(e[0].axis==null)return e.map(e=>e.value);let t=S();if(t.length===0)throw Error(`Axes must be populated before curves for reference entries`);return t.map(t=>{let n=e.find(e=>e.axis?.$refText===t.name);if(n===void 0)throw Error(`Missing entry for axis `+t.label);return n.value})},`computeCurveEntries`),O={getAxes:S,getCurves:C,getOptions:w,setAxes:T,setCurves:E,setOptions:e(e=>{let t=e.reduce((e,t)=>(e[t.name]=t,e),{});y.options={showLegend:t.showLegend?.value??_.showLegend,ticks:t.ticks?.value??_.ticks,max:t.max?.value??_.max,min:t.min?.value??_.min,graticule:t.graticule?.value??_.graticule}},`setOptions`),getConfig:x,clear:e(()=>{c(),y=structuredClone(v)},`clear`),setAccTitle:a,getAccTitle:d,setDiagramTitle:o,getDiagramTitle:r,getAccDescription:s,setAccDescription:n},k=e(e=>{h(e,O);let{axes:t,curves:n,options:r}=e;O.setAxes(t),O.setCurves(n),O.setOptions(r)},`populate`),A={parse:e(async e=>{let n=await g(`radar`,e);t.debug(n),k(n)},`parse`)},j=e((e,t,n,r)=>{let i=r.db,a=i.getAxes(),o=i.getCurves(),s=i.getOptions(),c=i.getConfig(),l=i.getDiagramTitle(),u=M(m(t),c),d=s.max??Math.max(...o.map(e=>Math.max(...e.entries))),f=s.min,p=Math.min(c.width,c.height)/2;N(u,a,p,s.ticks,s.graticule),P(u,a,p,c),F(u,a,o,f,d,s.graticule,c),R(u,o,s.showLegend,c),u.append(`text`).attr(`class`,`radarTitle`).text(l).attr(`x`,0).attr(`y`,-c.height/2-c.marginTop)},`draw`),M=e((e,t)=>{let n=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,i={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return l(e,r,n,t.useMaxWidth??!0),e.attr(`viewBox`,`0 0 ${n} ${r}`),e.append(`g`).attr(`transform`,`translate(${i.x}, ${i.y})`)},`drawFrame`),N=e((e,t,n,r,i)=>{if(i===`circle`)for(let t=0;t<r;t++){let i=n*(t+1)/r;e.append(`circle`).attr(`r`,i).attr(`class`,`radarGraticule`)}else if(i===`polygon`){let i=t.length;for(let a=0;a<r;a++){let o=n*(a+1)/r,s=t.map((e,t)=>{let n=2*t*Math.PI/i-Math.PI/2;return`${o*Math.cos(n)},${o*Math.sin(n)}`}).join(` `);e.append(`polygon`).attr(`points`,s).attr(`class`,`radarGraticule`)}}},`drawGraticule`),P=e((e,t,n,r)=>{let i=t.length;for(let a=0;a<i;a++){let o=t[a].label,s=2*a*Math.PI/i-Math.PI/2;e.append(`line`).attr(`x1`,0).attr(`y1`,0).attr(`x2`,n*r.axisScaleFactor*Math.cos(s)).attr(`y2`,n*r.axisScaleFactor*Math.sin(s)).attr(`class`,`radarAxisLine`),e.append(`text`).text(o).attr(`x`,n*r.axisLabelFactor*Math.cos(s)).attr(`y`,n*r.axisLabelFactor*Math.sin(s)).attr(`class`,`radarAxisLabel`)}},`drawAxes`);function F(e,t,n,r,i,a,o){let s=t.length,c=Math.min(o.width,o.height)/2;n.forEach((t,n)=>{if(t.entries.length!==s)return;let l=t.entries.map((e,t)=>{let n=2*Math.PI*t/s-Math.PI/2,a=I(e,r,i,c);return{x:a*Math.cos(n),y:a*Math.sin(n)}});a===`circle`?e.append(`path`).attr(`d`,L(l,o.curveTension)).attr(`class`,`radarCurve-${n}`):a===`polygon`&&e.append(`polygon`).attr(`points`,l.map(e=>`${e.x},${e.y}`).join(` `)).attr(`class`,`radarCurve-${n}`)})}e(F,`drawCurves`);function I(e,t,n,r){return r*(Math.min(Math.max(e,t),n)-t)/(n-t)}e(I,`relativeRadius`);function L(e,t){let n=e.length,r=`M${e[0].x},${e[0].y}`;for(let i=0;i<n;i++){let a=e[(i-1+n)%n],o=e[i],s=e[(i+1)%n],c=e[(i+2)%n],l={x:o.x+(s.x-a.x)*t,y:o.y+(s.y-a.y)*t},u={x:s.x-(c.x-o.x)*t,y:s.y-(c.y-o.y)*t};r+=` C${l.x},${l.y} ${u.x},${u.y} ${s.x},${s.y}`}return`${r} Z`}e(L,`closedRoundCurve`);function R(e,t,n,r){if(!n)return;let i=(r.width/2+r.marginRight)*3/4,a=-(r.height/2+r.marginTop)*3/4;t.forEach((t,n)=>{let r=e.append(`g`).attr(`transform`,`translate(${i}, ${a+n*20})`);r.append(`rect`).attr(`width`,12).attr(`height`,12).attr(`class`,`radarLegendBox-${n}`),r.append(`text`).attr(`x`,16).attr(`y`,0).attr(`class`,`radarLegendText`).text(t.label)})}e(R,`drawLegend`);var z={draw:j},B=e((e,t)=>{let n=``;for(let r=0;r<e.THEME_COLOR_LIMIT;r++){let i=e[`cScale${r}`];n+=`
1
+ import{n as e,r as t}from"./src-MPCDFn03.js";import{B as n,C as r,E as i,V as a,W as o,_ as s,a as c,c as l,d as u,v as d,y as f}from"./chunk-ICPOFSXX-Lfk6ZyEQ.js";import{r as p}from"./chunk-5PVQY5BW-c5z1iYCm.js";import{t as m}from"./chunk-426QAEUC-BOfOOezm.js";import{t as h}from"./chunk-4BX2VUAB-B1nZWDyG.js";import{t as g}from"./mermaid-parser.core-BheXl3qv.js";var _={showLegend:!0,ticks:5,max:null,min:0,graticule:`circle`},v={axes:[],curves:[],options:_},y=structuredClone(v),b=u.radar,x=e(()=>p({...b,...f().radar}),`getConfig`),S=e(()=>y.axes,`getAxes`),C=e(()=>y.curves,`getCurves`),w=e(()=>y.options,`getOptions`),T=e(e=>{y.axes=e.map(e=>({name:e.name,label:e.label??e.name}))},`setAxes`),E=e(e=>{y.curves=e.map(e=>({name:e.name,label:e.label??e.name,entries:D(e.entries)}))},`setCurves`),D=e(e=>{if(e[0].axis==null)return e.map(e=>e.value);let t=S();if(t.length===0)throw Error(`Axes must be populated before curves for reference entries`);return t.map(t=>{let n=e.find(e=>e.axis?.$refText===t.name);if(n===void 0)throw Error(`Missing entry for axis `+t.label);return n.value})},`computeCurveEntries`),O={getAxes:S,getCurves:C,getOptions:w,setAxes:T,setCurves:E,setOptions:e(e=>{let t=e.reduce((e,t)=>(e[t.name]=t,e),{});y.options={showLegend:t.showLegend?.value??_.showLegend,ticks:t.ticks?.value??_.ticks,max:t.max?.value??_.max,min:t.min?.value??_.min,graticule:t.graticule?.value??_.graticule}},`setOptions`),getConfig:x,clear:e(()=>{c(),y=structuredClone(v)},`clear`),setAccTitle:a,getAccTitle:d,setDiagramTitle:o,getDiagramTitle:r,getAccDescription:s,setAccDescription:n},k=e(e=>{h(e,O);let{axes:t,curves:n,options:r}=e;O.setAxes(t),O.setCurves(n),O.setOptions(r)},`populate`),A={parse:e(async e=>{let n=await g(`radar`,e);t.debug(n),k(n)},`parse`)},j=e((e,t,n,r)=>{let i=r.db,a=i.getAxes(),o=i.getCurves(),s=i.getOptions(),c=i.getConfig(),l=i.getDiagramTitle(),u=M(m(t),c),d=s.max??Math.max(...o.map(e=>Math.max(...e.entries))),f=s.min,p=Math.min(c.width,c.height)/2;N(u,a,p,s.ticks,s.graticule),P(u,a,p,c),F(u,a,o,f,d,s.graticule,c),R(u,o,s.showLegend,c),u.append(`text`).attr(`class`,`radarTitle`).text(l).attr(`x`,0).attr(`y`,-c.height/2-c.marginTop)},`draw`),M=e((e,t)=>{let n=t.width+t.marginLeft+t.marginRight,r=t.height+t.marginTop+t.marginBottom,i={x:t.marginLeft+t.width/2,y:t.marginTop+t.height/2};return l(e,r,n,t.useMaxWidth??!0),e.attr(`viewBox`,`0 0 ${n} ${r}`),e.append(`g`).attr(`transform`,`translate(${i.x}, ${i.y})`)},`drawFrame`),N=e((e,t,n,r,i)=>{if(i===`circle`)for(let t=0;t<r;t++){let i=n*(t+1)/r;e.append(`circle`).attr(`r`,i).attr(`class`,`radarGraticule`)}else if(i===`polygon`){let i=t.length;for(let a=0;a<r;a++){let o=n*(a+1)/r,s=t.map((e,t)=>{let n=2*t*Math.PI/i-Math.PI/2;return`${o*Math.cos(n)},${o*Math.sin(n)}`}).join(` `);e.append(`polygon`).attr(`points`,s).attr(`class`,`radarGraticule`)}}},`drawGraticule`),P=e((e,t,n,r)=>{let i=t.length;for(let a=0;a<i;a++){let o=t[a].label,s=2*a*Math.PI/i-Math.PI/2;e.append(`line`).attr(`x1`,0).attr(`y1`,0).attr(`x2`,n*r.axisScaleFactor*Math.cos(s)).attr(`y2`,n*r.axisScaleFactor*Math.sin(s)).attr(`class`,`radarAxisLine`),e.append(`text`).text(o).attr(`x`,n*r.axisLabelFactor*Math.cos(s)).attr(`y`,n*r.axisLabelFactor*Math.sin(s)).attr(`class`,`radarAxisLabel`)}},`drawAxes`);function F(e,t,n,r,i,a,o){let s=t.length,c=Math.min(o.width,o.height)/2;n.forEach((t,n)=>{if(t.entries.length!==s)return;let l=t.entries.map((e,t)=>{let n=2*Math.PI*t/s-Math.PI/2,a=I(e,r,i,c);return{x:a*Math.cos(n),y:a*Math.sin(n)}});a===`circle`?e.append(`path`).attr(`d`,L(l,o.curveTension)).attr(`class`,`radarCurve-${n}`):a===`polygon`&&e.append(`polygon`).attr(`points`,l.map(e=>`${e.x},${e.y}`).join(` `)).attr(`class`,`radarCurve-${n}`)})}e(F,`drawCurves`);function I(e,t,n,r){return r*(Math.min(Math.max(e,t),n)-t)/(n-t)}e(I,`relativeRadius`);function L(e,t){let n=e.length,r=`M${e[0].x},${e[0].y}`;for(let i=0;i<n;i++){let a=e[(i-1+n)%n],o=e[i],s=e[(i+1)%n],c=e[(i+2)%n],l={x:o.x+(s.x-a.x)*t,y:o.y+(s.y-a.y)*t},u={x:s.x-(c.x-o.x)*t,y:s.y-(c.y-o.y)*t};r+=` C${l.x},${l.y} ${u.x},${u.y} ${s.x},${s.y}`}return`${r} Z`}e(L,`closedRoundCurve`);function R(e,t,n,r){if(!n)return;let i=(r.width/2+r.marginRight)*3/4,a=-(r.height/2+r.marginTop)*3/4;t.forEach((t,n)=>{let r=e.append(`g`).attr(`transform`,`translate(${i}, ${a+n*20})`);r.append(`rect`).attr(`width`,12).attr(`height`,12).attr(`class`,`radarLegendBox-${n}`),r.append(`text`).attr(`x`,16).attr(`y`,0).attr(`class`,`radarLegendText`).text(t.label)})}e(R,`drawLegend`);var z={draw:j},B=e((e,t)=>{let n=``;for(let r=0;r<e.THEME_COLOR_LIMIT;r++){let i=e[`cScale${r}`];n+=`
2
2
  .radarCurve-${r} {
3
3
  color: ${i};
4
4
  fill: ${i};
@@ -1,4 +1,4 @@
1
- import{n as e,r as t}from"./src-BViYu1Wd.js";import{B as n,C as r,V as i,W as a,_ as o,a as s,c,d as l,v as u,y as d}from"./chunk-ICPOFSXX-DrWPpdBM.js";import{r as f}from"./chunk-5PVQY5BW-BwH_ti4z.js";import{t as p}from"./chunk-426QAEUC-CNG9cIod.js";import{t as m}from"./chunk-4BX2VUAB-D0jcVJQX.js";import{t as h}from"./mermaid-parser.core-wPx7o9bi.js";var g=l.packet,_=class{constructor(){this.packet=[],this.setAccTitle=i,this.getAccTitle=u,this.setDiagramTitle=a,this.getDiagramTitle=r,this.getAccDescription=o,this.setAccDescription=n}static{e(this,`PacketDB`)}getConfig(){let e=f({...g,...d().packet});return e.showBits&&(e.paddingY+=10),e}getPacket(){return this.packet}pushWord(e){e.length>0&&this.packet.push(e)}clear(){s(),this.packet=[]}},v=1e4,y=e((e,n)=>{m(e,n);let r=-1,i=[],a=1,{bitsPerRow:o}=n.getConfig();for(let{start:s,end:c,bits:l,label:u}of e.blocks){if(s!==void 0&&c!==void 0&&c<s)throw Error(`Packet block ${s} - ${c} is invalid. End must be greater than start.`);if(s??=r+1,s!==r+1)throw Error(`Packet block ${s} - ${c??s} is not contiguous. It should start from ${r+1}.`);if(l===0)throw Error(`Packet block ${s} is invalid. Cannot have a zero bit field.`);for(c??=s+(l??1)-1,l??=c-s+1,r=c,t.debug(`Packet block ${s} - ${r} with label ${u}`);i.length<=o+1&&n.getPacket().length<v;){let[e,t]=b({start:s,end:c,bits:l,label:u},a,o);if(i.push(e),e.end+1===a*o&&(n.pushWord(i),i=[],a++),!t)break;({start:s,end:c,bits:l,label:u}=t)}}n.pushWord(i)},`populate`),b=e((e,t,n)=>{if(e.start===void 0)throw Error(`start should have been set during first phase`);if(e.end===void 0)throw Error(`end should have been set during first phase`);if(e.start>e.end)throw Error(`Block start ${e.start} is greater than block end ${e.end}.`);if(e.end+1<=t*n)return[e,void 0];let r=t*n-1,i=t*n;return[{start:e.start,end:r,label:e.label,bits:r-e.start},{start:i,end:e.end,label:e.label,bits:e.end-i}]},`getNextFittingBlock`),x={parser:{yy:void 0},parse:e(async e=>{let n=await h(`packet`,e),r=x.parser?.yy;if(!(r instanceof _))throw Error(`parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.`);t.debug(n),y(n,r)},`parse`)},S=e((e,t,n,r)=>{let i=r.db,a=i.getConfig(),{rowHeight:o,paddingY:s,bitWidth:l,bitsPerRow:u}=a,d=i.getPacket(),f=i.getDiagramTitle(),m=o+s,h=m*(d.length+1)-(f?0:o),g=l*u+2,_=p(t);_.attr(`viewBox`,`0 0 ${g} ${h}`),c(_,h,g,a.useMaxWidth);for(let[e,t]of d.entries())C(_,t,e,a);_.append(`text`).text(f).attr(`x`,g/2).attr(`y`,h-m/2).attr(`dominant-baseline`,`middle`).attr(`text-anchor`,`middle`).attr(`class`,`packetTitle`)},`draw`),C=e((e,t,n,{rowHeight:r,paddingX:i,paddingY:a,bitWidth:o,bitsPerRow:s,showBits:c})=>{let l=e.append(`g`),u=n*(r+a)+a;for(let e of t){let t=e.start%s*o+1,n=(e.end-e.start+1)*o-i;if(l.append(`rect`).attr(`x`,t).attr(`y`,u).attr(`width`,n).attr(`height`,r).attr(`class`,`packetBlock`),l.append(`text`).attr(`x`,t+n/2).attr(`y`,u+r/2).attr(`class`,`packetLabel`).attr(`dominant-baseline`,`middle`).attr(`text-anchor`,`middle`).text(e.label),!c)continue;let a=e.end===e.start,d=u-2;l.append(`text`).attr(`x`,t+(a?n/2:0)).attr(`y`,d).attr(`class`,`packetByte start`).attr(`dominant-baseline`,`auto`).attr(`text-anchor`,a?`middle`:`start`).text(e.start),a||l.append(`text`).attr(`x`,t+n).attr(`y`,d).attr(`class`,`packetByte end`).attr(`dominant-baseline`,`auto`).attr(`text-anchor`,`end`).text(e.end)}},`drawWord`),w={draw:S},T={byteFontSize:`10px`,startByteColor:`black`,endByteColor:`black`,labelColor:`black`,labelFontSize:`12px`,titleColor:`black`,titleFontSize:`14px`,blockStrokeColor:`black`,blockStrokeWidth:`1`,blockFillColor:`#efefef`},E={parser:x,get db(){return new _},renderer:w,styles:e(({packet:e}={})=>{let t=f(T,e);return`
1
+ import{n as e,r as t}from"./src-MPCDFn03.js";import{B as n,C as r,V as i,W as a,_ as o,a as s,c,d as l,v as u,y as d}from"./chunk-ICPOFSXX-Lfk6ZyEQ.js";import{r as f}from"./chunk-5PVQY5BW-c5z1iYCm.js";import{t as p}from"./chunk-426QAEUC-BOfOOezm.js";import{t as m}from"./chunk-4BX2VUAB-B1nZWDyG.js";import{t as h}from"./mermaid-parser.core-BheXl3qv.js";var g=l.packet,_=class{constructor(){this.packet=[],this.setAccTitle=i,this.getAccTitle=u,this.setDiagramTitle=a,this.getDiagramTitle=r,this.getAccDescription=o,this.setAccDescription=n}static{e(this,`PacketDB`)}getConfig(){let e=f({...g,...d().packet});return e.showBits&&(e.paddingY+=10),e}getPacket(){return this.packet}pushWord(e){e.length>0&&this.packet.push(e)}clear(){s(),this.packet=[]}},v=1e4,y=e((e,n)=>{m(e,n);let r=-1,i=[],a=1,{bitsPerRow:o}=n.getConfig();for(let{start:s,end:c,bits:l,label:u}of e.blocks){if(s!==void 0&&c!==void 0&&c<s)throw Error(`Packet block ${s} - ${c} is invalid. End must be greater than start.`);if(s??=r+1,s!==r+1)throw Error(`Packet block ${s} - ${c??s} is not contiguous. It should start from ${r+1}.`);if(l===0)throw Error(`Packet block ${s} is invalid. Cannot have a zero bit field.`);for(c??=s+(l??1)-1,l??=c-s+1,r=c,t.debug(`Packet block ${s} - ${r} with label ${u}`);i.length<=o+1&&n.getPacket().length<v;){let[e,t]=b({start:s,end:c,bits:l,label:u},a,o);if(i.push(e),e.end+1===a*o&&(n.pushWord(i),i=[],a++),!t)break;({start:s,end:c,bits:l,label:u}=t)}}n.pushWord(i)},`populate`),b=e((e,t,n)=>{if(e.start===void 0)throw Error(`start should have been set during first phase`);if(e.end===void 0)throw Error(`end should have been set during first phase`);if(e.start>e.end)throw Error(`Block start ${e.start} is greater than block end ${e.end}.`);if(e.end+1<=t*n)return[e,void 0];let r=t*n-1,i=t*n;return[{start:e.start,end:r,label:e.label,bits:r-e.start},{start:i,end:e.end,label:e.label,bits:e.end-i}]},`getNextFittingBlock`),x={parser:{yy:void 0},parse:e(async e=>{let n=await h(`packet`,e),r=x.parser?.yy;if(!(r instanceof _))throw Error(`parser.parser?.yy was not a PacketDB. This is due to a bug within Mermaid, please report this issue at https://github.com/mermaid-js/mermaid/issues.`);t.debug(n),y(n,r)},`parse`)},S=e((e,t,n,r)=>{let i=r.db,a=i.getConfig(),{rowHeight:o,paddingY:s,bitWidth:l,bitsPerRow:u}=a,d=i.getPacket(),f=i.getDiagramTitle(),m=o+s,h=m*(d.length+1)-(f?0:o),g=l*u+2,_=p(t);_.attr(`viewBox`,`0 0 ${g} ${h}`),c(_,h,g,a.useMaxWidth);for(let[e,t]of d.entries())C(_,t,e,a);_.append(`text`).text(f).attr(`x`,g/2).attr(`y`,h-m/2).attr(`dominant-baseline`,`middle`).attr(`text-anchor`,`middle`).attr(`class`,`packetTitle`)},`draw`),C=e((e,t,n,{rowHeight:r,paddingX:i,paddingY:a,bitWidth:o,bitsPerRow:s,showBits:c})=>{let l=e.append(`g`),u=n*(r+a)+a;for(let e of t){let t=e.start%s*o+1,n=(e.end-e.start+1)*o-i;if(l.append(`rect`).attr(`x`,t).attr(`y`,u).attr(`width`,n).attr(`height`,r).attr(`class`,`packetBlock`),l.append(`text`).attr(`x`,t+n/2).attr(`y`,u+r/2).attr(`class`,`packetLabel`).attr(`dominant-baseline`,`middle`).attr(`text-anchor`,`middle`).text(e.label),!c)continue;let a=e.end===e.start,d=u-2;l.append(`text`).attr(`x`,t+(a?n/2:0)).attr(`y`,d).attr(`class`,`packetByte start`).attr(`dominant-baseline`,`auto`).attr(`text-anchor`,a?`middle`:`start`).text(e.start),a||l.append(`text`).attr(`x`,t+n).attr(`y`,d).attr(`class`,`packetByte end`).attr(`dominant-baseline`,`auto`).attr(`text-anchor`,`end`).text(e.end)}},`drawWord`),w={draw:S},T={byteFontSize:`10px`,startByteColor:`black`,endByteColor:`black`,labelColor:`black`,labelFontSize:`12px`,titleColor:`black`,titleFontSize:`14px`,blockStrokeColor:`black`,blockStrokeWidth:`1`,blockFillColor:`#efefef`},E={parser:x,get db(){return new _},renderer:w,styles:e(({packet:e}={})=>{let t=f(T,e);return`
2
2
  .packetByte {
3
3
  font-size: ${t.byteFontSize};
4
4
  }
@@ -0,0 +1,14 @@
1
+ function e(e,t){let n=!1,r=e=>{let n=t.getText().length;return e.filter(e=>e.end>e.start&&e.end<=n).sort((e,t)=>e.start-t.start)},i=[e.on(`change`,({origin:i,edits:a,code:o})=>{if(i!==`code`){n=!0;try{let e=t.getText().length;t.applyEdits(a.map(t=>({start:Math.min(t.start,e),end:Math.min(t.end,e),text:t.text}))),t.getText()!==o&&t.setText(o)}finally{n=!1}}t.setHighlights(r(e.selectionSpans()))}),e.on(`selectionChange`,({spans:e,origin:n})=>{t.setHighlights(r(e)),n===`canvas`&&e[0]&&t.revealPosition?.(e[0].start)})];return{get applying(){return n},notifyTextChange(){n||e.setCode(t.getText(),`code`)},notifyCaretMove(t){if(n)return;let r=e.entityAt(t);e.setSelection(r?[r]:[],`code`)},undo:()=>e.undo(),redo:()=>e.redo(),dispose:()=>i.forEach(e=>e())}}var t=`https://mermaid.js.org`,n=[{id:`flowchart`,name:`Flowchart`,match:/^(flowchart|graph)\b/,capability:`edit`,docsUrl:`${t}/syntax/flowchart.html`},{id:`sequence`,name:`Sequence Diagram`,match:/^sequenceDiagram\b/,capability:`edit`,docsUrl:`${t}/syntax/sequenceDiagram.html`},{id:`class`,name:`Class Diagram`,match:/^classDiagram(-v2)?\b/,capability:`edit`,docsUrl:`${t}/syntax/classDiagram.html`},{id:`state`,name:`State Diagram`,match:/^stateDiagram(-v2)?\b/,capability:`edit`,docsUrl:`${t}/syntax/stateDiagram.html`},{id:`er`,name:`Entity Relationship`,match:/^erDiagram\b/,capability:`edit`,docsUrl:`${t}/syntax/entityRelationshipDiagram.html`},{id:`journey`,name:`User Journey`,match:/^journey\b/,capability:`edit`,docsUrl:`${t}/syntax/userJourney.html`},{id:`gantt`,name:`Gantt`,match:/^gantt\b/,capability:`edit`,docsUrl:`${t}/syntax/gantt.html`},{id:`pie`,name:`Pie Chart`,match:/^pie\b/,capability:`edit`,docsUrl:`${t}/syntax/pie.html`},{id:`quadrant`,name:`Quadrant Chart`,match:/^quadrantChart\b/,capability:`edit`,docsUrl:`${t}/syntax/quadrantChart.html`},{id:`requirement`,name:`Requirement Diagram`,match:/^requirement(Diagram)?\b/,capability:`edit`,docsUrl:`${t}/syntax/requirementDiagram.html`},{id:`gitgraph`,name:`Gitgraph`,match:/^gitGraph\b/,capability:`edit`,docsUrl:`${t}/syntax/gitgraph.html`},{id:`c4`,name:`C4 Diagram`,match:/^C4(Context|Container|Component|Dynamic|Deployment)\b/,capability:`edit`,docsUrl:`${t}/syntax/c4.html`},{id:`mindmap`,name:`Mindmap`,match:/^mindmap\b/,capability:`edit`,docsUrl:`${t}/syntax/mindmap.html`},{id:`timeline`,name:`Timeline`,match:/^timeline\b/,capability:`edit`,docsUrl:`${t}/syntax/timeline.html`},{id:`zenuml`,name:`ZenUML`,match:/^zenuml\b/,capability:`render`,docsUrl:`${t}/syntax/zenuml.html`,requiresPlugin:`@mermaid-js/mermaid-zenuml`},{id:`sankey`,name:`Sankey`,match:/^sankey(-beta)?\b/,capability:`edit`,docsUrl:`${t}/syntax/sankey.html`},{id:`xychart`,name:`XY Chart`,match:/^xychart(-beta)?\b/,capability:`edit`,docsUrl:`${t}/syntax/xyChart.html`},{id:`block`,name:`Block Diagram`,match:/^block(-beta)?\b/,capability:`edit`,docsUrl:`${t}/syntax/block.html`},{id:`packet`,name:`Packet`,match:/^packet(-beta)?\b/,capability:`edit`,docsUrl:`${t}/syntax/packet.html`},{id:`kanban`,name:`Kanban`,match:/^kanban\b/,capability:`edit`,docsUrl:`${t}/syntax/kanban.html`},{id:`architecture`,name:`Architecture`,match:/^architecture(-beta)?\b/,capability:`edit`,docsUrl:`${t}/syntax/architecture.html`},{id:`radar`,name:`Radar`,match:/^radar(-beta)?\b/,capability:`edit`,docsUrl:`${t}/syntax/radar.html`},{id:`treemap`,name:`Treemap`,match:/^treemap(-beta)?\b/,capability:`edit`,docsUrl:`${t}/syntax/treemap.html`}];function r(e){let t=e.trim();for(let e of n)if(e.match.test(t))return e;return null}function i(e){let t=[],n=0,r=0;for(;n<=e.length;){let i=e.indexOf(`
2
+ `,n);i===-1&&(i=e.length);let a=e.slice(n,i),o=/^[ \t]*/.exec(a)[0];if(t.push({index:r,kind:`statement`,text:a,start:n,end:i,indent:o}),r++,i===e.length)break;n=i+1}return t}function a(e){let t=-1,n=!1,r=!1,i=!1;for(let a of e){let e=a.text.trim();if(!i&&!r&&e===`---`)if(n){n=!1,r=!0,a.kind=`frontmatter`;continue}else{n=!0,a.kind=`frontmatter`;continue}if(n){a.kind=`frontmatter`;continue}if(e===``){a.kind=`blank`;continue}if(e.startsWith(`%%{`)){a.kind=`directive`;continue}if(e.startsWith(`%%`)){a.kind=`comment`;continue}if(t===-1){a.kind=`header`,t=a.index,i=!0;continue}a.kind=`statement`,i=!0}return{headerIndex:t}}function o(e,t){let n=[...t].sort((e,t)=>e.start-t.start);for(let e=1;e<n.length;e++)if(n[e].start<n[e-1].end)throw Error(`Overlapping text edits`);let r=``,i=0,a=[],o=0;for(let t of n)r+=e.slice(i,t.start),r+=t.text,a.push({start:t.start+o,end:t.start+o+t.text.length,text:e.slice(t.start,t.end)}),o+=t.text.length-(t.end-t.start),i=t.end;return r+=e.slice(i),{text:r,inverse:a}}function s(e,t){if(e===t)return null;let n=0,r=e.length,i=t.length,a=Math.min(r,i);for(;n<a&&e[n]===t[n];)n++;let o=r,s=i;for(;o>n&&s>n&&e[o-1]===t[s-1];)o--,s--;return{start:n,end:o,text:t.slice(n,s)}}function c(e,t){let n=e;for(let r of[...t].sort((e,t)=>e.start-t.start))r.end<=e?n+=r.text.length-(r.end-r.start):r.start<e&&(n=r.start+r.text.length);return n}var l=[{open:`(((`,close:[`)))`]},{open:`([`,close:[`])`]},{open:`[[`,close:[`]]`]},{open:`[(`,close:[`)]`]},{open:`[/`,close:[`/]`,`\\]`]},{open:`[\\`,close:[`\\]`,`/]`]},{open:`((`,close:[`))`]},{open:`{{`,close:[`}}`]},{open:`{`,close:[`}`]},{open:`(`,close:[`)`]},{open:`[`,close:[`]`]},{open:`>`,close:[`]`]}],u={"(((|)))":`doublecircle`,"((|))":`circle`,"([|])":`stadium`,"[[|]]":`subroutine`,"[(|)]":`cylinder`,"[/|/]":`lean_r`,"[/|\\]":`trap_b`,"[\\|\\]":`lean_l`,"[\\|/]":`trap_t`,"{{|}}":`hexagon`,"{|}":`diamond`,"(|)":`round`,"[|]":`rect`,">|]":`odd`},d={rect:{open:`[`,close:`]`},round:{open:`(`,close:`)`},stadium:{open:`([`,close:`])`},subroutine:{open:`[[`,close:`]]`},cylinder:{open:`[(`,close:`)]`},circle:{open:`((`,close:`))`},doublecircle:{open:`(((`,close:`)))`},diamond:{open:`{`,close:`}`},hexagon:{open:`{{`,close:`}}`},lean_r:{open:`[/`,close:`/]`},lean_l:{open:`[\\`,close:`\\]`},trap_t:{open:`[\\`,close:`/]`},trap_b:{open:`[/`,close:`\\]`},odd:{open:`>`,close:`]`}},f=/[A-Za-z0-9_.]/,p=class{text;pos=0;end;base;constructor(e){this.text=e.text,this.base=e.start;let t=this.text.length;for(;t>0&&/[;\s]/.test(this.text[t-1]);)t--;this.end=t;let n=0;for(;n<t&&/[ \t]/.test(this.text[n]);)n++;this.pos=n}skipWs(){for(;this.pos<this.end&&/[ \t]/.test(this.text[this.pos]);)this.pos++}atEnd(){return this.pos>=this.end}abs(e){return this.base+e}parseNodeRef(){let e=this.pos,t=this.pos;for(;this.pos<this.end&&f.test(this.text[this.pos]);)this.pos++;if(this.pos===t)return null;let n=this.text.slice(t,this.pos),r={start:this.abs(t),end:this.abs(this.pos)},i=null,a=null,o=null,s=!1;for(let e of l)if(this.text.startsWith(e.open,this.pos)){let t=this.pos+e.open.length,n=null,r,c,l;if(this.text[t]===`"`){let i=this.text.indexOf(`"`,t+1);if(i===-1||i>=this.end)return null;r=t+1,c=i,l=i+1,s=!0;for(let t of e.close)if(this.text.startsWith(t,l)){n=t;break}if(!n)return null;this.pos=l+n.length}else{let i=-1;for(let r of e.close){let e=this.text.indexOf(r,t);e!==-1&&e<this.end&&(i===-1||e<i)&&(i=e,n=r)}if(i===-1||!n)return null;r=t,c=i,this.pos=i+n.length}i=u[`${e.open}|${n}`]??`rect`,a=this.text.slice(r,c),o={start:this.abs(r),end:this.abs(c)};break}let c=null;if(this.text.startsWith(`@{`,this.pos)){let e=this.text.indexOf(`}`,this.pos+2);if(e===-1||e>=this.end+1)return null;c=this.text.slice(this.pos,e+1),this.pos=e+1}let d=[];for(;this.text.startsWith(`:::`,this.pos);){let e=this.pos+3,t=e;for(;e<this.end&&/[A-Za-z0-9_-]/.test(this.text[e]);)e++;if(e===t)return null;d.push(this.text.slice(t,e)),this.pos=e}return{id:n,span:{start:this.abs(e),end:this.abs(this.pos)},idSpan:r,shape:i,label:a,labelSpan:o,quoted:s,attrsRaw:c,classNames:d}}parseGroup(){let e=this.parseNodeRef();if(!e)return null;let t=[e];for(;;){let e=this.pos;if(this.skipWs(),this.text[this.pos]===`&`){this.pos++,this.skipWs();let e=this.parseNodeRef();if(!e)return null;t.push(e)}else{this.pos=e;break}}return t}parseEdge(){let e=this.pos,t=this.text.slice(this.pos,this.end),n=/^(?:(x|o|<)(?=[-=.~]))?(-{2,}|={2,}|-\.+-+|-\.+|~{3,})(>|x|o)?/.exec(t);if(!n)return null;let r=n[0];this.pos+=r.length;let i=n[1]??null,a=n[3]??null,o=n[2],s=null,c=null;if(!a&&/^(-{2}|={2}|-\.+-*)$/.test(o)&&this.text[this.pos]===` `){let e=o[0]===`=`?/\s(={2,}(>|x|o)?)/:o.includes(`.`)?/\s(\.*-*\.+->|\.+-+(>|x|o)?|\.->)/:/\s(-{2,}(>|x|o)?)/,t=this.text.slice(this.pos,this.end),n=e.exec(t);if(n&&n.index>=0){let e=this.pos+1,t=this.pos+n.index;if(t>e-1){s=this.text.slice(e,t),c={start:this.abs(e),end:this.abs(t)};let r=n[1];this.pos=this.pos+n.index+n[0].length,a=/[>xo]$/.test(r)?r[r.length-1]:null}}}let l=this.pos;if(this.skipWs(),this.text[this.pos]===`|`){let e=this.text.indexOf(`|`,this.pos+1);e!==-1&&e<this.end?(s=this.text.slice(this.pos+1,e),c={start:this.abs(this.pos+1),end:this.abs(e)},this.pos=e+1):this.pos=l}else this.pos=l;r=this.text.slice(e,this.pos);let u=o[0]===`=`?`thick`:o.includes(`.`)?`dotted`:o[0]===`~`?`invisible`:`solid`,d=e=>e===`>`?`arrow`:e===`x`?`cross`:e===`o`?`circle`:`open`;return{span:{start:this.abs(e),end:this.abs(this.pos)},raw:r,line:u,arrowEnd:d(a),arrowStart:i?i===`<`?`arrow`:d(i):`open`,label:s,labelSpan:c}}};function m(e){let t=e.text.trim(),n=e.index;if(t===`end`)return{kind:`end`,lineIndex:n,ids:[],idsSpan:null};let r=/^direction\s+(TB|TD|BT|RL|LR)\s*;?\s*$/.exec(t);if(r)return{kind:`direction`,lineIndex:n,ids:[r[1]],idsSpan:null};if(/^subgraph\s+(.*)$/.exec(t)){let t=new p(e);t.pos=e.text.indexOf(`subgraph`)+8,t.skipWs();let r=t.pos;for(;t.pos<t.end&&/[^\s[]/.test(e.text[t.pos]);)t.pos++;let i=e.text.slice(r,t.pos),a=null,o=null;if(t.skipWs(),e.text[t.pos]===`[`){let n=e.text.lastIndexOf(`]`);if(n>t.pos){let r=t.pos+1,i=n;e.text[r]===`"`&&e.text[i-1]===`"`&&(r++,i--),a=e.text.slice(r,i),o={start:e.start+r,end:e.start+i}}}return{kind:`subgraphOpen`,lineIndex:n,id:i,title:a,titleSpan:o}}if(/^classDef\b/.test(t))return{kind:`classDef`,lineIndex:n,ids:[],idsSpan:null};if(/^linkStyle\b/.test(t))return{kind:`linkStyle`,lineIndex:n,ids:[],idsSpan:null};let i=/^class\s+([A-Za-z0-9_.,\s]+?)\s+([A-Za-z0-9_-]+)\s*;?\s*$/.exec(t);if(i){let t=i[1].split(`,`).map(e=>e.trim()).filter(Boolean),r=e.text.indexOf(i[1]);return{kind:`classAssign`,lineIndex:n,ids:t,idsSpan:{start:e.start+r,end:e.start+r+i[1].length}}}let a=/^style\s+([A-Za-z0-9_.]+)\b/.exec(t);if(a)return{kind:`style`,lineIndex:n,ids:[a[1]],idsSpan:null};let o=/^click\s+([A-Za-z0-9_.]+)\b/.exec(t);if(o)return{kind:`click`,lineIndex:n,ids:[o[1]],idsSpan:null};let s=new p(e),c=[],l=[],u=s.parseGroup();if(u){c.push(u);let e=!0;for(;s.skipWs(),!s.atEnd();){let t=s.parseEdge();if(!t){e=!1;break}s.skipWs();let n=s.parseGroup();if(!n){e=!1;break}l.push(t),c.push(n)}if(e)return{kind:`chain`,lineIndex:n,groups:c,edges:l}}return{kind:`unknown`,lineIndex:n,ids:[],idsSpan:null}}function h(e){let t=/^(\s*)(flowchart|graph)(\s+)?(TB|TD|BT|RL|LR)?/.exec(e.text);if(!t)return{keyword:`flowchart`,direction:null,directionSpan:null};let n=t[2],r=t[4]??null,i=null;if(r){let a=e.start+t[1].length+n.length+(t[3]?.length??0);i={start:a,end:a+r.length}}return{keyword:n,direction:r,directionSpan:i}}function g(e,t){let n=h(e[t]),r=new Map,i=[],a=[],o=new Map,s=[],c=new Map,l=t,u=(e,t)=>{let n=r.get(e.id);n||(n={entityId:`node:${e.id}`,id:e.id,label:e.id,shape:`rect`,refs:[],primary:null,classes:[],subgraph:s.length?s[s.length-1].id:null},r.set(e.id,n)),n.refs.push({lineIndex:t,ref:e}),e.shape&&(n.primary={lineIndex:t,ref:e},n.shape=e.shape,e.label!==null&&(n.label=e.label));for(let t of e.classNames)n.classes.includes(t)||n.classes.push(t);return n};for(let n of e){if(n.index===t){l=n.index;continue}if(n.kind!==`statement`)continue;let e=m(n);if(o.set(n.index,e),l=n.index,e.kind===`subgraphOpen`){let t={entityId:`subgraph:${e.id}`,id:e.id,title:e.title,titleSpan:e.titleSpan,openLine:e.lineIndex,endLine:-1,parent:s.length?s[s.length-1].id:null};a.push(t),s.push(t)}else if(e.kind===`end`){let t=s.pop();t&&(t.endLine=e.lineIndex)}else if(e.kind===`chain`){for(let t of e.groups)for(let n of t)u(n,e.lineIndex);e.edges.forEach((t,n)=>{for(let r of e.groups[n])for(let a of e.groups[n+1]){let o=`${r.id}->${a.id}`,s=c.get(o)??0;c.set(o,s+1),i.push({entityId:`edge:${o}#${s}`,source:r.id,target:a.id,lineIndex:e.lineIndex,segIndex:n,seg:t,sourceRef:r,targetRef:a,label:t.label,order:i.length})}})}else if(e.kind===`classAssign`){let t=/\s([A-Za-z0-9_-]+)\s*;?\s*$/.exec(n.text)?.[1];if(t)for(let n of e.ids){let e=r.get(n);e&&!e.classes.includes(t)&&e.classes.push(t)}}}return{keyword:n.keyword,direction:n.direction,directionSpan:n.directionSpan,headerLine:t,nodes:[...r.values()],edges:i,subgraphs:a,nodeById:r,statements:o,lastContentLine:l}}function _(e,t,n){if(n.startsWith(`node:`)){let t=e.nodeById.get(n.slice(5));return t?t.refs.map(e=>e.ref.span):[]}if(n.startsWith(`edge:`)){let t=e.edges.find(e=>e.entityId===n);return t?[{start:t.sourceRef.span.start,end:t.targetRef.span.end}]:[]}if(n.startsWith(`subgraph:`)){let r=e.subgraphs.find(e=>e.entityId===n);if(!r)return[];let i=t[r.openLine];return[{start:i.start+i.indent.length,end:i.end}]}return[]}function v(e,t){for(let n of e.nodes)for(let e of n.refs)if(t>=e.ref.span.start&&t<=e.ref.span.end)return n.entityId;for(let n of e.edges)if(t>=n.seg.span.start&&t<=n.seg.span.end||t>=n.sourceRef.span.start&&t<=n.targetRef.span.end)return n.entityId;return null}var ee=/[[\]{}()|<>\\/&%#;]|^\s|\s$/;function y(e,t){let n=e.replace(/"/g,`'`);return t||ee.test(n)?`"${n}"`:n}function b(e,t){let n=t===`arrow`?`>`:t===`cross`?`x`:t===`circle`?`o`:``;switch(e){case`thick`:return n?`==${n}`:`===`;case`dotted`:return n?`-.-${n}`:`-.-`;case`invisible`:return`~~~`;default:return n?`--${n}`:`---`}}function x(e){for(let t of e.lines)if(t.kind===`statement`&&t.index!==e.graph.headerLine&&t.text.trim()!==``)return t.indent;return` `}function S(e,t,n){let r=e.lines[t];return{start:r.end,end:r.end,text:n.map(e=>`
3
+ ${e}`).join(``)}}function C(e,t){let n=e.lines[t];return n.end<e.code.length?{start:n.start,end:n.end+1,text:``}:n.start>0?{start:n.start-1,end:n.end,text:``}:{start:n.start,end:n.end,text:``}}function w(e,t,n){if(n.length===0)return C(e,t);let r=e.lines[t];return{start:r.start,end:r.end,text:n.join(`
4
+ `)}}function T(e,t){return e.code.slice(t.start,t.end)}function te(e,t){let n=new Set(e.nodes.map(e=>e.id));if(t&&!n.has(t))return t;if(e.nodes.length>0&&e.nodes.every(e=>/^[A-Z]$/.test(e.id)))for(let e=0;e<26;e++){let t=String.fromCharCode(65+e);if(!n.has(t))return t}let r=1;for(;n.has(`n${r}`);)r++;return`n${r}`}function ne(e,t){let n=e.lastContentLine,r=-1;for(let n of t){let t=e.nodeById.get(n);if(t)for(let e of t.refs)r=Math.max(r,e.lineIndex)}return r===-1?n:r}function re(e,t,n,r){let i=e.lines[t],a=i.indent,o=[];n.edges.forEach((e,t)=>{for(let e of n.groups[t])for(let r of n.groups[t+1])o.push({a:e,b:r,segIndex:t})});let s=o.filter(e=>!(r.dropNodeId&&(e.a.id===r.dropNodeId||e.b.id===r.dropNodeId)||r.dropEdge&&e.segIndex===r.dropEdge.segIndex&&e.a.id===r.dropEdge.source&&e.b.id===r.dropEdge.target));if(s.length===o.length&&!r.dropNodeId)return[i.text];let c=new Set;for(let e of s)c.add(e.a),c.add(e.b);let l=[],u=``,d=null;for(let t of s){let r=T(e,n.edges[t.segIndex].span);d===t.a&&u?u+=` ${r} ${T(e,t.b.span)}`:(u&&l.push(a+u),u=`${T(e,t.a.span)} ${r} ${T(e,t.b.span)}`),d=t.b}u&&l.push(a+u);for(let i of n.groups)for(let n of i){if(n.id===r.dropNodeId||c.has(n))continue;let i=e.graph.nodeById.get(n.id);if(!i)continue;let o=i.refs.some(e=>e.ref!==n&&e.ref.shape),s=i.refs.some(e=>e.lineIndex!==t||e.ref!==n&&c.has(e.ref));(n.shape&&!o||!s&&!n.shape)&&l.push(a+T(e,n.span))}return l}function E(e,t){return e.edges.find(e=>e.entityId===t)??null}function D(e,t){let n=[];for(let[r,i]of e.graph.statements){if(i.kind!==`linkStyle`)continue;let a=e.lines[r],o=/^(\s*linkStyle\s+)(\d+)\b/.exec(a.text);if(!o)continue;let s=Number(o[2]),c=t(s);if(c===null)n.push(C(e,r));else if(c!==s){let e=a.start+o[1].length;n.push({start:e,end:e+o[2].length,text:String(c)})}}return n}function O(e,t){return e.nodeById.get(t)??null}function ie(e,t){let{graph:n}=e;switch(t.type){case`addNode`:{let r=te(n,t.id),i=t.shape??`rect`,a=t.label??r,{open:o,close:s}=d[i],c=`${x(e)}${r}${o}${y(a,!1)}${s}`;return{edits:[S(e,n.lastContentLine,[c])],created:[`node:${r}`]}}case`connect`:{let r=O(n,t.source),i=O(n,t.target);if(!r||!i)return null;let a=b(t.line??`solid`,t.arrowEnd??`arrow`),o=t.label?`|${t.label.replace(/\|/g,``)}|`:``,s=ne(n,[t.source,t.target]),c=`${e.lines[s].kind===`statement`?e.lines[s].indent:x(e)}${t.source} ${a}${o} ${t.target}`,l=n.edges.filter(e=>e.source===t.source&&e.target===t.target).length,u=n.edges.filter(e=>e.lineIndex<=s).length;return{edits:[S(e,s,[c]),...D(e,e=>e>=u?e+1:e)],created:[`edge:${t.source}->${t.target}#${l}`]}}case`renameNode`:{let e=O(n,t.id);if(!e)return null;if(e.primary&&e.primary.ref.labelSpan){let n=e.primary.ref,r=n.labelSpan;return n.quoted?{edits:[{start:r.start,end:r.end,text:t.label.replace(/"/g,`'`)}]}:{edits:[{start:r.start,end:r.end,text:y(t.label,!1)}]}}let r=e.refs[0];if(!r)return null;let i=r.ref.idSpan.end;return{edits:[{start:i,end:i,text:`[${y(t.label,!1)}]`}]}}case`setNodeShape`:{let e=O(n,t.id);if(!e)return null;let{open:r,close:i}=d[t.shape];if(e.primary&&e.primary.ref.labelSpan){let t=e.primary.ref,n=d[t.shape],a=+!!t.quoted,o=t.idSpan.end,s=t.labelSpan.start-a,c=t.labelSpan.end+a,l=c+n.close.length;return{edits:[{start:o,end:s,text:r},{start:c,end:l,text:i}]}}let a=e.refs[0];if(!a)return null;let o=a.ref.idSpan.end;return{edits:[{start:o,end:o,text:`${r}${y(e.label,!1)}${i}`}]}}case`setEdgeLabel`:{let e=E(n,t.edgeId);if(!e)return null;let r=t.label.replace(/\|/g,``);if(e.seg.labelSpan){if(r===``){let t=b(e.seg.line,e.seg.arrowEnd);return{edits:[{start:e.seg.span.start,end:e.seg.span.end,text:t}]}}return{edits:[{start:e.seg.labelSpan.start,end:e.seg.labelSpan.end,text:r}]}}return r===``?{edits:[]}:{edits:[{start:e.seg.span.end,end:e.seg.span.end,text:`|${r}|`}]}}case`setEdgeStyle`:{let e=E(n,t.edgeId);if(!e)return null;let r=b(t.line??e.seg.line,t.arrowEnd??e.seg.arrowEnd),i=e.seg.label===null?``:`|${e.seg.label.replace(/\|/g,``)}|`;return{edits:[{start:e.seg.span.start,end:e.seg.span.end,text:`${r}${i}`}]}}case`setDirection`:{if(n.directionSpan)return{edits:[{start:n.directionSpan.start,end:n.directionSpan.end,text:t.direction}]};let r=e.lines[n.headerLine],i=r.start+r.indent.length+n.keyword.length;return{edits:[{start:i,end:i,text:` ${t.direction}`}]}}case`deleteEdge`:{let r=E(n,t.edgeId);if(!r)return null;let i=n.statements.get(r.lineIndex);if(!i||i.kind!==`chain`)return null;let a=re(e,r.lineIndex,i,{dropEdge:{segIndex:r.segIndex,source:r.source,target:r.target}}),o=r.order;return{edits:[w(e,r.lineIndex,a),...D(e,e=>e===o?null:e>o?e-1:e)]}}case`deleteNode`:{let r=O(n,t.id);if(!r)return null;let i=[],a=new Set;for(let e of r.refs)a.add(e.lineIndex);for(let r of a){let a=n.statements.get(r);if(!a||a.kind!==`chain`)continue;let o=re(e,r,a,{dropNodeId:t.id});i.push(w(e,r,o))}for(let[r,a]of n.statements)if(a.kind===`classAssign`&&a.ids.includes(t.id)&&a.idsSpan){let n=a.ids.filter(e=>e!==t.id);n.length===0?i.push(C(e,r)):i.push({start:a.idsSpan.start,end:a.idsSpan.end,text:n.join(`,`)})}else (a.kind===`style`||a.kind===`click`)&&a.ids[0]===t.id&&i.push(C(e,r));let o=n.edges.filter(e=>e.source===t.id||e.target===t.id).map(e=>e.order).sort((e,t)=>e-t);return i.push(...D(e,e=>o.includes(e)?null:e-o.filter(t=>t<e).length)),{edits:i}}case`duplicateNode`:{let r=O(n,t.id);if(!r)return null;let i=te(n),{open:a,close:o}=d[r.shape],s=r.classes.length?`:::${r.classes[0]}`:``,c=r.primary?.lineIndex??r.refs[0]?.lineIndex??n.lastContentLine;return{edits:[S(e,c,[`${e.lines[c].kind===`statement`?e.lines[c].indent:x(e)}${i}${a}${y(r.label,!1)}${o}${s}`])],created:[`node:${i}`]}}case`reverseEdge`:{let r=E(n,t.edgeId);if(!r)return null;let i=n.statements.get(r.lineIndex);if(!i||i.kind!==`chain`||i.groups.length!==2||i.groups[0].length!==1||i.groups[1].length!==1)return null;let a=T(e,r.sourceRef.span),o=T(e,r.targetRef.span);return{edits:[{start:r.sourceRef.span.start,end:r.sourceRef.span.end,text:o},{start:r.targetRef.span.start,end:r.targetRef.span.end,text:a}]}}case`setNodeColor`:{if(!O(n,t.id))return null;let r=-1;for(let[e,i]of n.statements)if(i.kind===`style`&&i.ids[0]===t.id){r=e;break}let i=new Map;if(r>=0){let n=e.lines[r].text.trim().replace(RegExp(`^style\\s+${t.id}\\s*`),``);for(let e of n.split(`,`)){let t=e.indexOf(`:`);t>0&&i.set(e.slice(0,t).trim(),e.slice(t+1).trim())}}t.value===null?i.delete(t.prop):i.set(t.prop,t.value),i.has(`stroke`)&&!i.has(`stroke-width`)&&i.set(`stroke-width`,`2px`),i.has(`stroke`)||i.delete(`stroke-width`);let a=`${r>=0?e.lines[r].indent:x(e)}style ${t.id} ${[...i].map(([e,t])=>`${e}:${t}`).join(`,`)}`;return r>=0?{edits:[i.size===0?C(e,r):w(e,r,[a])]}:i.size===0?{edits:[]}:{edits:[S(e,n.lastContentLine,[a])]}}case`setEdgeColor`:{let r=E(n,t.edgeId);if(!r)return null;let i=-1;for(let[t,a]of n.statements){if(a.kind!==`linkStyle`)continue;let n=/^linkStyle\s+(\d+)\b/.exec(e.lines[t].text.trim());if(n&&Number(n[1])===r.order){i=t;break}}if(t.value===null)return i===-1?{edits:[]}:{edits:[C(e,i)]};let a=`${i>=0?e.lines[i].indent:x(e)}linkStyle ${r.order} stroke:${t.value},stroke-width:2px`;return i>=0?{edits:[w(e,i,[a])]}:{edits:[S(e,n.lastContentLine,[a])]}}case`renameSubgraph`:{let r=n.subgraphs.find(e=>e.id===t.id);if(!r)return null;if(r.titleSpan)return{edits:[{start:r.titleSpan.start,end:r.titleSpan.end,text:t.title.replace(/[\]"]/g,``)}]};let i=e.lines[r.openLine];return{edits:[{start:i.end,end:i.end,text:` [${t.title.replace(/[\]"]/g,``)}]`}]}}}}var ae=[`participant`,`actor`,`boundary`,`control`,`entity`,`database`,`collections`,`queue`],oe=[{op:`->`,label:`solid line`},{op:`->>`,label:`solid arrow`},{op:`-->`,label:`dotted line`},{op:`-->>`,label:`dotted arrow`},{op:`-x`,label:`solid cross`},{op:`--x`,label:`dotted cross`},{op:`-)`,label:`solid async`},{op:`--)`,label:`dotted async`}],se=/^(.+?)(--?(?:>>|>|[x)]))([+-])?([^:+-][^:]*):(.*)$/,ce=/^(participant|actor)\s+(.+?)(?:\s+as\s+(.+?))?\s*(@\{.*\})?\s*;?\s*$/,le=/^[Nn]ote\s+(over|left of|right of)\s+([^:]+):(.*)$/,ue=/^(alt|opt|loop|par|critical|break|rect|box)\b/,de=/^(else|and|option)\b/,fe=/^(activate|deactivate)\s+(.+?)\s*;?\s*$/,pe=/^(title|accTitle|accDescr|links?|properties|create|destroy)\b/;function k(e,t,n){return{start:e.start+t,end:e.start+n}}function me(e){if(!e)return null;let t=/["']?type["']?\s*:\s*["'](\w+)["']/.exec(e);return t&&ae.includes(t[1])?t[1]:null}function he(e){let t=e.text,n=t.trim(),r=e.index,i=t.length-t.trimStart().length;if(n===`end`)return{kind:`end`,lineIndex:r,parts:[]};if(/^autonumber\b/.test(n))return{kind:`autonumber`,lineIndex:r,parts:[]};let a=ue.exec(n);if(a)return{kind:`blockOpen`,lineIndex:r,parts:[a[1]]};let o=de.exec(n);if(o)return{kind:`blockMid`,lineIndex:r,parts:[o[1]]};let s=fe.exec(n);if(s)return{kind:`activation`,lineIndex:r,parts:[s[1],s[2]]};let c=ce.exec(n);if(c){let n=c[1],a=c[2],o=c[3]??null,s=c[4]??null,l=i,u=t.indexOf(a,l+n.length),d=o?t.indexOf(o,u+a.length):-1,f=s?t.indexOf(s,d===-1?u+a.length:d):-1;return{kind:`participant`,lineIndex:r,keyword:n,keywordSpan:k(e,l,l+n.length),id:a,idSpan:k(e,u,u+a.length),alias:o,aliasSpan:o?k(e,d,d+o.length):null,attrsRaw:s,attrsSpan:s?k(e,f,f+s.length):null,ptype:me(s)??(n===`actor`?`actor`:`participant`)}}let l=le.exec(n);if(l){let a=l[1],o=l[2],s=i+n.indexOf(o,5),c=t.indexOf(`:`,s+o.length-1)+1;return{kind:`note`,lineIndex:r,placement:a,targets:o.split(`,`).map(e=>e.trim()).filter(Boolean),targetsSpan:k(e,s,s+o.trimEnd().length),text:t.slice(c).trim(),textSpan:k(e,c,t.length)}}let u=se.exec(n);if(u){let[,n,a,o,s]=u,c=n.trim(),l=s.trim();if(c&&l){let u=i+n.indexOf(c),d=i+n.length,f=i+n.length+a.length+ +!!o+s.indexOf(l),p=t.indexOf(`:`,f+l.length);return{kind:`message`,lineIndex:r,source:c,sourceSpan:k(e,u,u+c.length),op:a,opSpan:k(e,d,d+a.length),activation:o??null,target:l,targetSpan:k(e,f,f+l.length),text:t.slice(p+1).trim(),textSpan:k(e,p+1,t.length)}}}return pe.test(n)?{kind:`other`,lineIndex:r,parts:[]}:{kind:`unknown`,lineIndex:r,parts:[]}}function ge(e,t){let n=new Map,r=[],i=new Map,a={enabled:!1,lineIndex:null},o=t,s=t,c=e=>{let t=n.get(e);return t||(t={entityId:`participant:${e}`,id:e,label:e,ptype:`participant`,decl:null,order:n.size},n.set(e,t)),t};for(let n of e){if(n.kind!==`statement`||n.index===t){n.index===t&&(o=n.index);continue}let e=he(n);switch(i.set(n.index,e),o=n.index,e.kind){case`participant`:{let t=c(e.id);t.decl=e,t.ptype=e.ptype,e.alias&&(t.label=e.alias),s=e.lineIndex;break}case`message`:c(e.source),c(e.target),r.push({kind:`message`,entityId:`event:${e.lineIndex}`,lineIndex:e.lineIndex,stmt:e});break;case`note`:for(let t of e.targets)c(t);r.push({kind:`note`,entityId:`event:${e.lineIndex}`,lineIndex:e.lineIndex,stmt:e});break;case`autonumber`:a={enabled:!0,lineIndex:e.lineIndex};break;default:break}}return{headerLine:t,participants:[...n.values()],participantById:n,events:r,autonumber:a,statements:i,lastContentLine:o,lastDeclLine:s}}function _e(e,t,n){if(n.startsWith(`participant:`)){let r=e.participantById.get(n.slice(12));if(!r)return[];let i=[];if(r.decl){let e=t[r.decl.lineIndex];i.push({start:e.start+e.indent.length,end:e.end})}for(let t of e.events)t.kind===`message`?(t.stmt.source===r.id&&i.push(t.stmt.sourceSpan),t.stmt.target===r.id&&i.push(t.stmt.targetSpan)):t.stmt.targets.includes(r.id)&&i.push(t.stmt.targetsSpan);return i}if(n.startsWith(`event:`)){let r=e.events.find(e=>e.entityId===n);if(!r)return[];let i=t[r.lineIndex];return[{start:i.start+i.indent.length,end:i.end}]}return[]}function ve(e,t,n){for(let r of e.events){let e=t[r.lineIndex];if(n>=e.start&&n<=e.end){if(r.kind===`message`){if(n>=r.stmt.sourceSpan.start&&n<=r.stmt.sourceSpan.end)return`participant:${r.stmt.source}`;if(n>=r.stmt.targetSpan.start&&n<=r.stmt.targetSpan.end)return`participant:${r.stmt.target}`}return r.entityId}}for(let r of e.participants)if(r.decl){let e=t[r.decl.lineIndex];if(n>=e.start&&n<=e.end)return r.entityId}return null}var ye={loop:`loop Repeat`,alt:`alt Condition`,opt:`opt Optional`,par:`par Parallel`,critical:`critical Required`,break:`break Break`,rect:`rect rgb(107, 114, 148, 0.25)`};function A(e,t){return e.events.find(e=>e.entityId===t)??null}function j(e){for(let t of e.lines)if(t.kind===`statement`&&t.index!==e.graph.headerLine&&t.text.trim()!==``)return t.indent;return` `}function M(e,t,n){let r=e.lines[t];return{start:r.end,end:r.end,text:n.map(e=>`
5
+ ${e}`).join(``)}}function N(e,t){let n=e.lines[t];return n.end<e.code.length?{start:n.start,end:n.end+1,text:``}:n.start>0?{start:n.start-1,end:n.end,text:``}:{start:n.start,end:n.end,text:``}}function P(e,t){let{graph:n}=e;if(t){let r=A(n,t);if(r)return{lineIndex:r.lineIndex,indent:e.lines[r.lineIndex].indent}}if(t===null&&n.events.length>0){let t=n.events[0];return{lineIndex:t.lineIndex-1,indent:e.lines[t.lineIndex].indent}}let r=n.events[n.events.length-1];return r?{lineIndex:r.lineIndex,indent:e.lines[r.lineIndex].indent}:{lineIndex:n.lastContentLine,indent:j(e)}}function be(e){return e===`actor`?{keyword:`actor`,attrs:null}:e===`participant`?{keyword:`participant`,attrs:null}:{keyword:`participant`,attrs:`@{ "type" : "${e}" }`}}function xe(e,t){let n=new Set(e.participants.map(e=>e.id));if(t&&!n.has(t))return t;let r=1;for(;n.has(`P${r}`);)r++;return`P${r}`}function Se(e,t){let{graph:n,lines:r}=e;switch(t.type){case`seq.addParticipant`:{let r=xe(n,t.name),{keyword:i,attrs:a}=be(t.ptype??`participant`),o=`${j(e)}${i} ${r}${a||``}`;return{edits:[M(e,n.lastDeclLine,[o])],created:[`participant:${r}`]}}case`seq.renameParticipant`:{let e=n.participantById.get(t.id);if(!e)return null;let i=t.name.trim().replace(/[:;]/g,``);if(!i)return null;if(e.decl?.alias&&e.decl.aliasSpan)return{edits:[{start:e.decl.aliasSpan.start,end:e.decl.aliasSpan.end,text:i}]};let a=[];e.decl&&a.push({start:e.decl.idSpan.start,end:e.decl.idSpan.end,text:i});for(let e of n.events)if(e.kind===`message`)e.stmt.source===t.id&&a.push({...e.stmt.sourceSpan,text:i}),e.stmt.target===t.id&&a.push({...e.stmt.targetSpan,text:i});else if(e.stmt.targets.includes(t.id)){let n=e.stmt.targets.map(e=>e===t.id?i:e).join(`,`);a.push({start:e.stmt.targetsSpan.start,end:e.stmt.targetsSpan.end,text:n})}for(let[e,o]of n.statements)if(o.kind===`activation`&&o.parts[1]===t.id){let t=r[e],n=t.start+t.text.lastIndexOf(o.parts[1]);a.push({start:n,end:n+o.parts[1].length,text:i})}return{edits:a.map(e=>({start:e.start,end:e.end,text:e.text}))}}case`seq.setParticipantType`:{let r=n.participantById.get(t.id);if(!r)return null;let{keyword:i,attrs:a}=be(t.ptype);if(r.decl){let t=[{start:r.decl.keywordSpan.start,end:r.decl.keywordSpan.end,text:i}];if(r.decl.attrsSpan){let n=r.decl.attrsSpan.start,i=e.code[n-1]===` `&&!a?n-1:n;t.push({start:i,end:r.decl.attrsSpan.end,text:a||``})}else if(a){let e=r.decl.aliasSpan?r.decl.aliasSpan.end:r.decl.idSpan.end;t.push({start:e,end:e,text:a})}return{edits:t}}let o=`${j(e)}${i} ${t.id}${a||``}`;return{edits:[M(e,n.lastDeclLine,[o])]}}case`seq.deleteParticipant`:{let r=n.participantById.get(t.id);if(!r)return null;let i=new Set;r.decl&&i.add(r.decl.lineIndex);let a=[];for(let e of n.events)if(e.kind===`message`)(e.stmt.source===t.id||e.stmt.target===t.id)&&i.add(e.lineIndex);else if(e.stmt.targets.includes(t.id))if(e.stmt.targets.length===1)i.add(e.lineIndex);else{let n=e.stmt.targets.filter(e=>e!==t.id).join(`,`);a.push({start:e.stmt.targetsSpan.start,end:e.stmt.targetsSpan.end,text:n})}for(let[e,r]of n.statements)r.kind===`activation`&&r.parts[1]===t.id&&i.add(e);for(let t of i)a.push(N(e,t));return{edits:a}}case`seq.addMessage`:{let n=P(e,t.afterEvent),r=`${n.indent}${t.source}${t.op??`->>`}${t.target}: ${t.text??`message`}`,i=n.lineIndex+1;return{edits:[M(e,n.lineIndex,[r])],created:[`event:${i}`]}}case`seq.addNote`:{let n=P(e,t.afterEvent),r=`${n.indent}Note ${t.placement} ${t.participant}: ${t.text??`note`}`;return{edits:[M(e,n.lineIndex,[r])],created:[`event:${n.lineIndex+1}`]}}case`seq.setMessageOp`:{let e=A(n,t.eventId);return!e||e.kind!==`message`?null:{edits:[{start:e.stmt.opSpan.start,end:e.stmt.opSpan.end,text:t.op}]}}case`seq.reverseMessage`:{let e=A(n,t.eventId);return!e||e.kind!==`message`?null:{edits:[{start:e.stmt.sourceSpan.start,end:e.stmt.sourceSpan.end,text:e.stmt.target},{start:e.stmt.targetSpan.start,end:e.stmt.targetSpan.end,text:e.stmt.source}]}}case`seq.setEventText`:{let e=A(n,t.eventId);if(!e)return null;let r=` ${t.text.trim().replace(/[;]/g,``)}`,i=(e.kind,e.stmt.textSpan);return{edits:[{start:i.start,end:i.end,text:r}]}}case`seq.deleteEvent`:{let r=A(n,t.eventId);return r?{edits:[N(e,r.lineIndex)]}:null}case`seq.moveEvent`:{let r=A(n,t.eventId);if(!r||t.afterEvent===t.eventId)return null;let i=P(e,t.afterEvent);if(i.lineIndex===r.lineIndex||i.lineIndex===r.lineIndex-1)return{edits:[]};let a=e.lines[r.lineIndex],o=`${i.indent}${a.text.trim()}`,s=i.lineIndex<r.lineIndex?i.lineIndex+1:i.lineIndex;return{edits:[N(e,r.lineIndex),M(e,i.lineIndex,[o])],created:[`event:${s}`]}}case`seq.wrapInFragment`:{let e=A(n,t.eventId);if(!e)return null;let i=r[e.lineIndex],a=i.indent,o=i.text.trim(),s=`${a}${ye[t.kind]}
6
+ ${a} ${o}
7
+ ${a}end`;return{edits:[{start:i.start,end:i.end,text:s}],created:[`event:${e.lineIndex+1}`]}}case`seq.toggleAutonumber`:return n.autonumber.enabled&&n.autonumber.lineIndex!==null?{edits:[N(e,n.autonumber.lineIndex)]}:{edits:[M(e,n.headerLine,[`${j(e)}autonumber`])]}}}var Ce=String.raw`(?:\[\*\]|[\w-]+)`,we=new RegExp(String.raw`^(${Ce})\s*-->\s*(${Ce})\s*(?::(.*))?$`),Te=/^state\s+"([^"]*)"\s+as\s+([\w-]+)\s*(\{)?\s*$/,Ee=/^state\s+([\w-]+)\s*(<<\w+>>)?\s*(\{)?\s*$/,De=/^([\w-]+)\s*:\s*(.*)$/,Oe=/^note\s+(left|right)\s+of\s+[\w-]+\s*:/i,ke=/^note\s+(left|right)\s+of\s+[\w-]+\s*$/i;function F(e,t,n){return{start:e.start+t,end:e.start+n}}function I(e){let t=e.text,n=t.trim(),r=e.index,i=t.length-t.trimStart().length;if(n===`}`)return{kind:`blockClose`,lineIndex:r,parts:[]};if(n===`--`)return{kind:`divider`,lineIndex:r,parts:[]};let a=/^direction\s+(TB|TD|BT|RL|LR)\s*$/.exec(n);if(a)return{kind:`direction`,lineIndex:r,parts:[a[1]]};if(/^end\s+note$/i.test(n))return{kind:`noteBlockEnd`,lineIndex:r,parts:[]};if(Oe.test(n))return{kind:`note`,lineIndex:r,parts:[]};if(ke.test(n))return{kind:`noteBlockOpen`,lineIndex:r,parts:[]};if(/^classDef\b/.test(n))return{kind:`classDef`,lineIndex:r,parts:[]};if(/^style\b/.test(n))return{kind:`style`,lineIndex:r,parts:[]};let o=/^class\s+([\w-,\s]+)\s+([\w-]+)\s*$/.exec(n);if(o)return{kind:`classAssign`,lineIndex:r,parts:o[1].split(`,`).map(e=>e.trim())};let s=we.exec(n);if(s){let[,a,o,c]=s,l=i+n.indexOf(a),u=t.indexOf(`-->`,l+a.length),d=t.indexOf(o,u+3),f=null,p=null;if(c!==void 0){let n=t.indexOf(`:`,d+o.length);f=t.slice(n+1).trim(),p=F(e,n+1,t.length)}return{kind:`transition`,lineIndex:r,source:a,sourceSpan:F(e,l,l+a.length),target:o,targetSpan:F(e,d,d+o.length),label:f,labelSpan:p}}let c=Te.exec(n);if(c){let n=c[1],i=c[2],a=t.indexOf(`"`)+1,o=t.indexOf(i,a+n.length+1);return{kind:`decl`,lineIndex:r,id:i,idSpan:F(e,o,o+i.length),label:n,labelSpan:F(e,a,a+n.length),form:`quoted`,opensBlock:!!c[3],stereotype:null}}let l=Ee.exec(n);if(l){let n=l[1],a=t.indexOf(n,i+5);return{kind:`decl`,lineIndex:r,id:n,idSpan:F(e,a,a+n.length),label:null,labelSpan:null,form:`state`,opensBlock:!!l[3],stereotype:l[2]??null}}let u=De.exec(n);if(u){let n=u[1],a=i,o=t.indexOf(`:`,a+n.length);return{kind:`decl`,lineIndex:r,id:n,idSpan:F(e,a,a+n.length),label:u[2].trim(),labelSpan:F(e,o+1,t.length),form:`desc`,opensBlock:!1,stereotype:null}}return{kind:`unknown`,lineIndex:r,parts:[]}}function Ae(e,t){let n=new Map,r=[],i=new Map,a=[],o=new Map,s=null,c=t,l=!1,u=(e,t)=>{if(e===`[*]`)return null;let r=n.get(e);return r||(r={entityId:`state:${e}`,id:e,label:e,decl:null,declLines:[],refLines:[],firstRefLine:t,parent:a.length?a[a.length-1]:null,isComposite:!1,stereotype:null,typeDeclLine:null},n.set(e,r)),r};for(let n of e){if(n.kind!==`statement`||n.index===t){n.index===t&&(c=n.index);continue}if(l){I(n).kind===`noteBlockEnd`&&(l=!1),i.set(n.index,{kind:`unknown`,lineIndex:n.index,parts:[]}),c=n.index;continue}let e=I(n);switch(i.set(n.index,e),c=n.index,e.kind){case`noteBlockOpen`:l=!0;break;case`decl`:{let t=u(e.id,e.lineIndex);t&&(t.declLines.push(e.lineIndex),e.label!==null&&(t.decl=e,t.label=e.label),e.form===`state`&&(t.typeDeclLine=e.lineIndex,e.stereotype&&(t.stereotype=e.stereotype.replace(/[<>]/g,``))),e.opensBlock&&(t.isComposite=!0,a.push(e.id)));break}case`blockClose`:a.pop();break;case`transition`:{let t=u(e.source,e.lineIndex),n=u(e.target,e.lineIndex);t?.refLines.push(e.lineIndex),n?.refLines.push(e.lineIndex);let i=`${e.source}->${e.target}`,a=o.get(i)??0;o.set(i,a+1),r.push({entityId:`trans:${i}#${a}`,source:e.source,target:e.target,lineIndex:e.lineIndex,stmt:e,label:e.label,order:r.length});break}case`direction`:s={value:e.parts[0],lineIndex:e.lineIndex};break;default:break}}return{headerLine:t,states:[...n.values()],stateById:n,transitions:r,statements:i,direction:s,lastContentLine:c}}function je(e,t,n){if(n.startsWith(`state:`)){let r=e.stateById.get(n.slice(6));if(!r)return[];let i=[];for(let e of r.declLines){let n=t[e];i.push({start:n.start+n.indent.length,end:n.end})}for(let t of e.transitions)t.source===r.id&&i.push(t.stmt.sourceSpan),t.target===r.id&&i.push(t.stmt.targetSpan);return i}if(n.startsWith(`trans:`)){let r=e.transitions.find(e=>e.entityId===n);if(!r)return[];let i=t[r.lineIndex];return[{start:i.start+i.indent.length,end:i.end}]}return[]}function Me(e,t,n){for(let r of e.transitions){let e=t[r.lineIndex];if(n>=e.start&&n<=e.end)return n>=r.stmt.sourceSpan.start&&n<=r.stmt.sourceSpan.end&&r.source!==`[*]`?`state:${r.source}`:n>=r.stmt.targetSpan.start&&n<=r.stmt.targetSpan.end&&r.target!==`[*]`?`state:${r.target}`:r.entityId}for(let r of e.states)for(let e of r.declLines){let i=t[e];if(n>=i.start&&n<=i.end)return r.entityId}return null}function L(e){for(let t of e.lines)if(t.kind===`statement`&&t.index!==e.graph.headerLine&&t.text.trim()!==``)return t.indent;return` `}function R(e,t,n){let r=e.lines[t];return{start:r.end,end:r.end,text:n.map(e=>`
8
+ ${e}`).join(``)}}function Ne(e,t){let n=e.lines[t];return n.end<e.code.length?{start:n.start,end:n.end+1,text:``}:n.start>0?{start:n.start-1,end:n.end,text:``}:{start:n.start,end:n.end,text:``}}function z(e,t){return e.transitions.find(e=>e.entityId===t)??null}function Pe(e,t){let n=new Set(e.states.map(e=>e.id));if(t&&!n.has(t))return t;let r=1;for(;n.has(`s${r}`);)r++;return`s${r}`}function B(e){return e.trim().replace(/[:{}]/g,``)}function Fe(e,t){let{graph:n,lines:r}=e;switch(t.type){case`st.addState`:{let r=Pe(n,t.id),i=t.label?B(t.label):null,a=i?`${L(e)}${r}: ${i}`:`${L(e)}state ${r}`;return{edits:[R(e,n.lastContentLine,[a])],created:[`state:${r}`]}}case`st.connect`:{if(t.source!==`[*]`&&!n.stateById.has(t.source)||t.target!==`[*]`&&!n.stateById.has(t.target))return null;let i=n.lastContentLine,a=-1;for(let e of[t.source,t.target]){let t=n.stateById.get(e);if(t)for(let e of[...t.declLines,...t.refLines])a=Math.max(a,e)}a>=0&&(i=a);let o=r[i].kind===`statement`?r[i].indent:L(e),s=t.label?`: ${B(t.label)}`:``,c=n.transitions.filter(e=>e.source===t.source&&e.target===t.target).length;return{edits:[R(e,i,[`${o}${t.source} --> ${t.target}${s}`])],created:[`trans:${t.source}->${t.target}#${c}`]}}case`st.setStateType`:{let i=n.stateById.get(t.id);if(!i||i.isComposite)return null;let a=t.stype===`state`?``:` <<${t.stype}>>`;if(i.typeDeclLine!==null){let e=r[i.typeDeclLine];return{edits:[{start:e.start,end:e.end,text:`${e.indent}state ${i.id}${a}`}]}}return t.stype===`state`?{edits:[]}:{edits:[R(e,n.headerLine,[`${L(e)}state ${i.id}${a}`])]}}case`st.addStateNote`:{let i=n.stateById.get(t.id);if(!i)return null;let a=`${r[i.firstRefLine].indent}note ${t.side} of ${i.id}: ${B(t.text??`note`)}`;return{edits:[R(e,i.firstRefLine,[a])]}}case`st.reverseTransition`:{let e=z(n,t.transId);return e?{edits:[{start:e.stmt.sourceSpan.start,end:e.stmt.sourceSpan.end,text:e.target},{start:e.stmt.targetSpan.start,end:e.stmt.targetSpan.end,text:e.source}]}:null}case`st.moveToComposite`:{let r=n.stateById.get(t.id);if(!r||r.isComposite||r.parent)return null;let i=new Set(n.states.map(e=>e.id)),a=t.name?.replace(/[^\w-]/g,``)||``;if(!a||i.has(a)){let e=1;for(;i.has(`Composite${e}`);)e++;a=`Composite${e}`}let o=L(e);return{edits:[R(e,n.headerLine,[`${o}state ${a} {`,`${o} ${r.id}`,`${o}}`])],created:[`state:${a}`]}}case`st.setStateLabel`:{let i=n.stateById.get(t.id);if(!i)return null;let a=B(t.label);if(!a)return null;if(i.decl?.labelSpan){let e=i.decl.form===`quoted`?a.replace(/"/g,`'`):` ${a}`;return{edits:[{start:i.decl.labelSpan.start,end:i.decl.labelSpan.end,text:e}]}}let o=r[i.firstRefLine];return{edits:[R(e,i.firstRefLine,[`${o.indent}${i.id}: ${a}`])]}}case`st.setTransitionLabel`:{let e=z(n,t.transId);if(!e)return null;let i=B(t.label);return e.stmt.labelSpan?i?{edits:[{start:e.stmt.labelSpan.start,end:e.stmt.labelSpan.end,text:` ${i}`}]}:{edits:[{start:e.stmt.targetSpan.end,end:r[e.lineIndex].end,text:``}]}:i?{edits:[{start:e.stmt.targetSpan.end,end:e.stmt.targetSpan.end,text:`: ${i}`}]}:{edits:[]}}case`st.deleteTransition`:{let r=z(n,t.transId);return r?{edits:[Ne(e,r.lineIndex)]}:null}case`st.deleteState`:{let r=n.stateById.get(t.id);if(!r||r.isComposite)return null;let i=new Set(r.declLines);for(let e of n.transitions)(e.source===r.id||e.target===r.id)&&i.add(e.lineIndex);return{edits:[...i].map(t=>Ne(e,t))}}case`st.setDirection`:if(n.direction){let e=r[n.direction.lineIndex];return{edits:[{start:e.start,end:e.end,text:`${e.indent}direction ${t.direction}`}]}}return{edits:[R(e,n.headerLine,[`${L(e)}direction ${t.direction}`])]}}}var Ie=[`<|--`,`--|>`,`<|..`,`..|>`,`*--`,`--*`,`o--`,`--o`,`<--`,`-->`,`<..`,`..>`,`--`,`..`],Le=String.raw`[\w.~]+`,Re=Ie.map(e=>e.replace(/[|*.]/g,e=>`\\${e}`)).join(`|`),ze=new RegExp(String.raw`^(${Le})\s*(?:"([^"]*)"\s*)?(${Re})\s*(?:"([^"]*)"\s*)?(${Le})\s*(?::\s*(.*))?$`),Be=/^class\s+([\w.~]+)(?:\["([^"]*)"\])?\s*(\{)?\s*$/,Ve=/^([\w.~]+)\s*:\s*(.+)$/;function V(e,t,n){return{start:e.start+t,end:e.start+n}}function He(e,t){let n=e.text,r=n.trim(),i=e.index,a=n.length-n.trimStart().length;if(t!==null)return r===`}`?{kind:`blockClose`,lineIndex:i,parts:[]}:/^<<\w+>>$/.test(r)?{kind:`annotation`,lineIndex:i,parts:[r]}:{kind:`member`,lineIndex:i,classId:null,text:r,textSpan:V(e,a,n.length)};if(r===`}`)return{kind:`blockClose`,lineIndex:i,parts:[]};if(/^direction\s+(TB|TD|BT|RL|LR)\s*$/.test(r))return{kind:`direction`,lineIndex:i,parts:[r.split(/\s+/)[1]]};if(/^note\b/i.test(r))return{kind:`note`,lineIndex:i,parts:[]};if(/^(classDef|style|cssClass|click|callback|link|namespace)\b/.test(r))return{kind:`passthrough`,lineIndex:i,parts:[]};let o=/^<<(\w+)>>\s+([\w.~]+)$/.exec(r);if(o)return{kind:`annotation`,lineIndex:i,parts:[o[1],o[2]]};let s=Be.exec(r);if(s){let t=s[1],r=n.indexOf(t,a+5),o=null,c=null;if(s[2]!==void 0){let i=n.indexOf(`"`,r+t.length)+1;o=s[2],c=V(e,i,i+s[2].length)}return{kind:`classDecl`,lineIndex:i,id:t,idSpan:V(e,r,r+t.length),label:o,labelSpan:c,opensBlock:!!s[3]}}let c=ze.exec(r);if(c){let[,t,o,s,l,u,d]=c,f=a+r.indexOf(t),p=null,m=f+t.length;if(o!==void 0){let t=n.indexOf(`"${o}"`,m);p=V(e,t+1,t+1+o.length),m=t+o.length+2}let h=n.indexOf(s,m),g=null;if(m=h+s.length,l!==void 0){let t=n.indexOf(`"${l}"`,m);g=V(e,t+1,t+1+l.length),m=t+l.length+2}let _=n.indexOf(u,m),v=null,ee=null;if(d!==void 0){let t=n.indexOf(`:`,_+u.length);v=n.slice(t+1).trim(),ee=V(e,t+1,n.length)}return{kind:`relation`,lineIndex:i,source:t,sourceSpan:V(e,f,f+t.length),target:u,targetSpan:V(e,_,_+u.length),op:s,opSpan:V(e,h,h+s.length),label:v,labelSpan:ee,sourceCard:o??null,sourceCardSpan:p,targetCard:l??null,targetCardSpan:g}}let l=Ve.exec(r);if(l){let t=n.indexOf(`:`,a+l[1].length);return{kind:`member`,lineIndex:i,classId:l[1],text:l[2].trim(),textSpan:V(e,t+1,n.length)}}return{kind:`unknown`,lineIndex:i,parts:[]}}function Ue(e,t){let n=new Map,r=[],i=new Map,a=new Map,o=null,s=t,c=null,l=(e,t)=>{let r=n.get(e);return r||(r={entityId:`class:${e}`,id:e,label:e,decl:null,block:null,members:[],extraLines:[],refLines:[],firstRefLine:t},n.set(e,r)),r};for(let u of e){if(u.kind!==`statement`||u.index===t){u.index===t&&(s=u.index);continue}let e=He(u,c);switch(i.set(u.index,e),s=u.index,e.kind){case`classDecl`:{let t=l(e.id,e.lineIndex);t.decl=e,e.label!==null&&(t.label=e.label),t.refLines.push(e.lineIndex),e.opensBlock&&(t.block={open:e.lineIndex,close:-1},c=e.id);break}case`blockClose`:if(c){let t=n.get(c);t?.block&&(t.block.close=e.lineIndex),c=null}break;case`member`:{let t=e.classId??c;if(t){let n=l(t,e.lineIndex);n.members.push({lineIndex:e.lineIndex,text:e.text,textSpan:e.textSpan}),e.classId&&n.extraLines.push(e.lineIndex)}break}case`annotation`:e.parts.length===2&&l(e.parts[1],e.lineIndex).extraLines.push(e.lineIndex);break;case`relation`:{let t=l(e.source,e.lineIndex),n=l(e.target,e.lineIndex);t.refLines.push(e.lineIndex),n.refLines.push(e.lineIndex);let i=`${e.source}->${e.target}`,o=a.get(i)??0;a.set(i,o+1),r.push({entityId:`rel:${i}#${o}`,source:e.source,target:e.target,lineIndex:e.lineIndex,stmt:e,label:e.label,order:r.length});break}case`direction`:o={value:e.parts[0],lineIndex:e.lineIndex};break;default:break}}return{headerLine:t,classes:[...n.values()],classById:n,relations:r,statements:i,direction:o,lastContentLine:s}}function We(e,t,n){if(n.startsWith(`class:`)){let r=e.classById.get(n.slice(6));if(!r)return[];let i=[];if(r.decl){let e=t[r.decl.lineIndex];i.push({start:e.start+e.indent.length,end:e.end})}for(let t of e.relations)t.source===r.id&&i.push(t.stmt.sourceSpan),t.target===r.id&&i.push(t.stmt.targetSpan);return i}if(n.startsWith(`rel:`)){let r=e.relations.find(e=>e.entityId===n);if(!r)return[];let i=t[r.lineIndex];return[{start:i.start+i.indent.length,end:i.end}]}return[]}function Ge(e,t,n){for(let r of e.relations){let e=t[r.lineIndex];if(n>=e.start&&n<=e.end)return n>=r.stmt.sourceSpan.start&&n<=r.stmt.sourceSpan.end?`class:${r.source}`:n>=r.stmt.targetSpan.start&&n<=r.stmt.targetSpan.end?`class:${r.target}`:r.entityId}for(let r of e.classes){let e=[...r.decl?[r.decl.lineIndex]:[],...r.members.map(e=>e.lineIndex),...r.extraLines];for(let i of e){let e=t[i];if(n>=e.start&&n<=e.end)return r.entityId}}return null}function H(e){for(let t of e.lines)if(t.kind===`statement`&&t.index!==e.graph.headerLine&&t.text.trim()!==``)return t.indent;return` `}function U(e,t,n){let r=e.lines[t];return{start:r.end,end:r.end,text:n.map(e=>`
9
+ ${e}`).join(``)}}function W(e,t){let n=e.lines[t];return n.end<e.code.length?{start:n.start,end:n.end+1,text:``}:n.start>0?{start:n.start-1,end:n.end,text:``}:{start:n.start,end:n.end,text:``}}function G(e,t){return e.relations.find(e=>e.entityId===t)??null}function Ke(e,t){let n=new Set(e.classes.map(e=>e.id));if(t&&!n.has(t))return t;let r=1;for(;n.has(`Class${r}`);)r++;return`Class${r}`}function K(e){return e.trim().replace(/[{}]/g,``)}function qe(e,t){let{graph:n,lines:r}=e;switch(t.type){case`cl.addClass`:{let r=Ke(n,t.name?.replace(/[^\w.~]/g,``)),i=H(e);return{edits:[U(e,n.lastContentLine,[`${i}class ${r} {`,`${i}}`])],created:[`class:${r}`]}}case`cl.connect`:{if(!n.classById.has(t.source)||!n.classById.has(t.target))return null;let i=n.lastContentLine,a=-1;for(let e of[t.source,t.target]){let t=n.classById.get(e);if(t)for(let e of t.refLines)a=Math.max(a,t.block&&e===t.block.open?t.block.close:e)}a>=0&&(i=a);let o=r[i].kind===`statement`?r[i].indent:H(e),s=t.label?` : ${K(t.label)}`:``,c=n.relations.filter(e=>e.source===t.source&&e.target===t.target).length;return{edits:[U(e,i,[`${o}${t.source} ${t.op??`-->`} ${t.target}${s}`])],created:[`rel:${t.source}->${t.target}#${c}`]}}case`cl.renameClass`:{let e=n.classById.get(t.id);if(!e)return null;let i=t.name.trim().replace(/[^\w.~]/g,``);if(!i||n.classById.has(i))return null;let a=[];e.decl&&a.push({start:e.decl.idSpan.start,end:e.decl.idSpan.end,text:i});for(let e of n.relations)e.source===t.id&&a.push({start:e.stmt.sourceSpan.start,end:e.stmt.sourceSpan.end,text:i}),e.target===t.id&&a.push({start:e.stmt.targetSpan.start,end:e.stmt.targetSpan.end,text:i});for(let n of e.extraLines){let e=r[n],o=e.start+e.text.indexOf(t.id);o>=e.start&&a.push({start:o,end:o+t.id.length,text:i})}return{edits:a}}case`cl.setRelationType`:{let e=G(n,t.relId);return e?{edits:[{start:e.stmt.opSpan.start,end:e.stmt.opSpan.end,text:t.op}]}:null}case`cl.setRelationLabel`:{let e=G(n,t.relId);if(!e)return null;let i=K(t.label);return e.stmt.labelSpan?i?{edits:[{start:e.stmt.labelSpan.start,end:e.stmt.labelSpan.end,text:` ${i}`}]}:{edits:[{start:e.stmt.targetSpan.end,end:r[e.lineIndex].end,text:``}]}:i?{edits:[{start:e.stmt.targetSpan.end,end:e.stmt.targetSpan.end,text:` : ${i}`}]}:{edits:[]}}case`cl.reverseRelation`:{let e=G(n,t.relId);return e?{edits:[{start:e.stmt.sourceSpan.start,end:e.stmt.sourceSpan.end,text:e.target},{start:e.stmt.targetSpan.start,end:e.stmt.targetSpan.end,text:e.source}]}:null}case`cl.addMember`:{let i=n.classById.get(t.id);if(!i)return null;let a=K(t.text??`+attribute`);if(i.block&&i.block.close>=0){let t=r[i.block.open],n=i.members.length?r[i.members[i.members.length-1].lineIndex].indent:`${t.indent} `;return{edits:[U(e,i.members.length?i.members[i.members.length-1].lineIndex:i.block.open,[`${n}${a}`])]}}let o=i.decl?.lineIndex??i.firstRefLine,s=r[o];return{edits:[U(e,o,[`${s.indent}${i.id} : ${a}`])]}}case`cl.setMemberText`:{let r=n.classById.get(t.id);if(!r)return null;let i=r.members.find(e=>e.lineIndex===t.memberLine);if(!i)return null;let a=K(t.text);if(!a)return{edits:[W(e,i.lineIndex)]};let o=e.code.slice(i.textSpan.start-1,i.textSpan.start)===`:`?` `:``;return{edits:[{start:i.textSpan.start,end:i.textSpan.end,text:`${o}${a}`}]}}case`cl.deleteMember`:{let r=n.classById.get(t.id);return!r||!r.members.some(e=>e.lineIndex===t.memberLine)?null:{edits:[W(e,t.memberLine)]}}case`cl.deleteClass`:{let r=n.classById.get(t.id);if(!r)return null;let i=new Set;if(r.decl&&i.add(r.decl.lineIndex),r.block&&r.block.close>=0)for(let e=r.block.open;e<=r.block.close;e++)i.add(e);for(let e of r.extraLines)i.add(e);for(let e of r.members)i.add(e.lineIndex);for(let e of n.relations)(e.source===r.id||e.target===r.id)&&i.add(e.lineIndex);return{edits:[...i].map(t=>W(e,t))}}case`cl.deleteRelation`:{let r=G(n,t.relId);return r?{edits:[W(e,r.lineIndex)]}:null}case`cl.setAnnotation`:{let i=n.classById.get(t.id);if(!i)return null;let a=t.annotation?.replace(/[<>\s]/g,``)??null,o=-1;for(let[e,r]of n.statements)if(r.kind===`annotation`&&r.parts[1]===t.id){o=e;break}if(o>=0){if(!a)return{edits:[W(e,o)]};let n=r[o];return{edits:[{start:n.start,end:n.end,text:`${n.indent}<<${a}>> ${t.id}`}]}}if(!a)return{edits:[]};let s=i.decl?.lineIndex??i.firstRefLine,c=r[s];return{edits:[U(e,s,[`${c.indent}<<${a}>> ${t.id}`])]}}case`cl.addNoteFor`:{if(!n.classById.get(t.id))return null;let r=(t.text??`note`).replace(/"/g,`'`);return{edits:[U(e,n.lastContentLine,[`${H(e)}note for ${t.id} "${r}"`])]}}case`cl.setCardinality`:{let e=G(n,t.relId);if(!e)return null;let r=t.value?.replace(/"/g,``).trim()??null,i=t.side===`source`?e.stmt.sourceCardSpan:e.stmt.targetCardSpan;return i?r===null||r===``?{edits:[{start:i.start-2,end:i.end+1,text:``}]}:{edits:[{start:i.start,end:i.end,text:r}]}:r===null||r===``?{edits:[]}:t.side===`source`?{edits:[{start:e.stmt.sourceSpan.end,end:e.stmt.sourceSpan.end,text:` "${r}"`}]}:{edits:[{start:e.stmt.targetSpan.start,end:e.stmt.targetSpan.start,text:`"${r}" `}]}}case`cl.setDirection`:if(n.direction){let e=r[n.direction.lineIndex];return{edits:[{start:e.start,end:e.end,text:`${e.indent}direction ${t.direction}`}]}}return{edits:[U(e,n.headerLine,[`${H(e)}direction ${t.direction}`])]}}}var Je=String.raw`[\w-]+`,Ye=new RegExp(String.raw`^(${Je})\s*([|}o]{2})(--|\.\.)([o|{]{2})\s*(${Je})\s*:\s*(.*)$`),Xe=new RegExp(String.raw`^(${Je})(\[[^\]]*\])?\s*(\{)?\s*$`);function q(e,t,n){return{start:e.start+t,end:e.start+n}}function Ze(e,t){let n=e.text,r=n.trim(),i=e.index,a=n.length-n.trimStart().length;if(r===`}`)return{kind:`blockClose`,lineIndex:i,parts:[]};if(t)return{kind:`attribute`,lineIndex:i,text:r,textSpan:q(e,a,n.length)};if(/^(direction|style|classDef|class)\b/.test(r))return{kind:`passthrough`,lineIndex:i,parts:[]};let o=Ye.exec(r);if(o){let[,t,r,s,c,l]=o,u=a,d=n.indexOf(r,u+t.length),f=d+r.length,p=f+s.length,m=n.indexOf(l,p+c.length),h=n.indexOf(`:`,m+l.length);return{kind:`relation`,lineIndex:i,source:t,sourceSpan:q(e,u,u+t.length),target:l,targetSpan:q(e,m,m+l.length),leftCard:r,leftCardSpan:q(e,d,d+r.length),rightCard:c,rightCardSpan:q(e,p,p+c.length),line:s,lineSpan:q(e,f,f+s.length),label:n.slice(h+1).trim(),labelSpan:q(e,h+1,n.length)}}let s=Xe.exec(r);return s?{kind:`entityDecl`,lineIndex:i,id:s[1],idSpan:q(e,a,a+s[1].length),alias:s[2]?s[2].slice(1,-1):null,opensBlock:!!s[3]}:{kind:`unknown`,lineIndex:i,parts:[]}}function Qe(e,t){let n=new Map,r=[],i=new Map,a=new Map,o=t,s=null,c=(e,t)=>{let r=n.get(e);return r||(r={entityId:`entity:${e}`,id:e,label:e,decl:null,block:null,attributes:[],refLines:[],firstRefLine:t},n.set(e,r)),r};for(let l of e){if(l.kind!==`statement`||l.index===t){l.index===t&&(o=l.index);continue}let e=Ze(l,s!==null);switch(i.set(l.index,e),o=l.index,e.kind){case`entityDecl`:{let t=c(e.id,e.lineIndex);t.decl=e,e.alias&&(t.label=e.alias),t.refLines.push(e.lineIndex),e.opensBlock&&(t.block={open:e.lineIndex,close:-1},s=e.id);break}case`blockClose`:if(s){let t=n.get(s);t?.block&&(t.block.close=e.lineIndex),s=null}break;case`attribute`:s&&c(s,e.lineIndex).attributes.push({lineIndex:e.lineIndex,text:e.text,textSpan:e.textSpan});break;case`relation`:{let t=c(e.source,e.lineIndex),n=c(e.target,e.lineIndex);t.refLines.push(e.lineIndex),n.refLines.push(e.lineIndex);let i=`${e.source}->${e.target}`,o=a.get(i)??0;a.set(i,o+1),r.push({entityId:`erel:${i}#${o}`,source:e.source,target:e.target,lineIndex:e.lineIndex,stmt:e,label:e.label,order:r.length});break}default:break}}return{headerLine:t,entities:[...n.values()],entityById:n,relations:r,statements:i,lastContentLine:o}}function $e(e,t,n){if(n.startsWith(`entity:`)){let r=e.entityById.get(n.slice(7));if(!r)return[];let i=[];if(r.decl){let e=t[r.decl.lineIndex];i.push({start:e.start+e.indent.length,end:e.end})}for(let t of e.relations)t.source===r.id&&i.push(t.stmt.sourceSpan),t.target===r.id&&i.push(t.stmt.targetSpan);return i}if(n.startsWith(`erel:`)){let r=e.relations.find(e=>e.entityId===n);if(!r)return[];let i=t[r.lineIndex];return[{start:i.start+i.indent.length,end:i.end}]}return[]}function et(e,t,n){for(let r of e.relations){let e=t[r.lineIndex];if(n>=e.start&&n<=e.end)return n>=r.stmt.sourceSpan.start&&n<=r.stmt.sourceSpan.end?`entity:${r.source}`:n>=r.stmt.targetSpan.start&&n<=r.stmt.targetSpan.end?`entity:${r.target}`:r.entityId}for(let r of e.entities){let e=[...r.decl?[r.decl.lineIndex]:[],...r.attributes.map(e=>e.lineIndex)];for(let i of e){let e=t[i];if(n>=e.start&&n<=e.end)return r.entityId}}return null}var tt={"zero-or-one":`|o`,"exactly-one":`||`,"zero-or-more":`}o`,"one-or-more":`}|`},nt={"zero-or-one":`o|`,"exactly-one":`||`,"zero-or-more":`o{`,"one-or-more":`|{`};function rt(e){for(let[t,n]of Object.entries(tt))if(n===e)return t;for(let[t,n]of Object.entries(nt))if(n===e)return t;return`exactly-one`}function it(e){for(let t of e.lines)if(t.kind===`statement`&&t.index!==e.graph.headerLine&&t.text.trim()!==``)return t.indent;return` `}function J(e,t,n){let r=e.lines[t];return{start:r.end,end:r.end,text:n.map(e=>`
10
+ ${e}`).join(``)}}function Y(e,t){let n=e.lines[t];return n.end<e.code.length?{start:n.start,end:n.end+1,text:``}:n.start>0?{start:n.start-1,end:n.end,text:``}:{start:n.start,end:n.end,text:``}}function X(e,t){return e.relations.find(e=>e.entityId===t)??null}function at(e,t){let{graph:n,lines:r}=e;switch(t.type){case`er.addEntity`:{let r=new Set(n.entities.map(e=>e.id)),i=t.name?.replace(/[^\w-]/g,``)||``;if(!i||r.has(i)){let e=1;for(;r.has(`ENTITY${e}`);)e++;i=`ENTITY${e}`}let a=it(e);return{edits:[J(e,n.lastContentLine,[`${a}${i} {`,`${a} string id`,`${a}}`])],created:[`entity:${i}`]}}case`er.connect`:{if(!n.entityById.has(t.source)||!n.entityById.has(t.target))return null;let i=n.lastContentLine,a=-1;for(let e of[t.source,t.target]){let t=n.entityById.get(e);if(t)for(let e of t.refLines)a=Math.max(a,t.block&&e===t.block.open?t.block.close:e)}a>=0&&(i=a);let o=r[i].kind===`statement`?r[i].indent:it(e),s=(t.label??`relates`).replace(/[:{}]/g,``).trim()||`relates`,c=n.relations.filter(e=>e.source===t.source&&e.target===t.target).length;return{edits:[J(e,i,[`${o}${t.source} ||--o{ ${t.target} : ${s}`])],created:[`erel:${t.source}->${t.target}#${c}`]}}case`er.renameEntity`:{let e=n.entityById.get(t.id);if(!e)return null;let r=t.name.trim().replace(/[^\w-]/g,``);if(!r||n.entityById.has(r))return null;let i=[];e.decl&&i.push({start:e.decl.idSpan.start,end:e.decl.idSpan.end,text:r});for(let e of n.relations)e.source===t.id&&i.push({start:e.stmt.sourceSpan.start,end:e.stmt.sourceSpan.end,text:r}),e.target===t.id&&i.push({start:e.stmt.targetSpan.start,end:e.stmt.targetSpan.end,text:r});return{edits:i}}case`er.setCardinality`:{let e=X(n,t.relId);return e?t.side===`left`?{edits:[{start:e.stmt.leftCardSpan.start,end:e.stmt.leftCardSpan.end,text:tt[t.card]}]}:{edits:[{start:e.stmt.rightCardSpan.start,end:e.stmt.rightCardSpan.end,text:nt[t.card]}]}:null}case`er.setIdentifying`:{let e=X(n,t.relId);return e?{edits:[{start:e.stmt.lineSpan.start,end:e.stmt.lineSpan.end,text:t.identifying?`--`:`..`}]}:null}case`er.setRelationLabel`:{let e=X(n,t.relId);if(!e)return null;let r=t.label.replace(/[:{}]/g,``).trim()||`relates`;return{edits:[{start:e.stmt.labelSpan.start,end:e.stmt.labelSpan.end,text:` ${r}`}]}}case`er.addAttribute`:{let i=n.entityById.get(t.id);if(!i)return null;let a=(t.text??`string attribute`).replace(/[{}]/g,``).trim();if(i.block&&i.block.close>=0){let t=r[i.block.open],n=i.attributes.length?r[i.attributes[i.attributes.length-1].lineIndex].indent:`${t.indent} `;return{edits:[J(e,i.attributes.length?i.attributes[i.attributes.length-1].lineIndex:i.block.open,[`${n}${a}`])]}}let o=r[i.firstRefLine];return{edits:[J(e,i.firstRefLine,[`${o.indent}${i.id} {`,`${o.indent} ${a}`,`${o.indent}}`])]}}case`er.setAttributeText`:{let i=n.entityById.get(t.id);if(!i)return null;let a=i.attributes.find(e=>e.lineIndex===t.attrLine);if(!a)return null;let o=t.text.replace(/[{}]/g,``).trim();if(!o)return{edits:[Y(e,a.lineIndex)]};let s=r[a.lineIndex];return{edits:[{start:s.start,end:s.end,text:`${s.indent}${o}`}]}}case`er.deleteEntity`:{let r=n.entityById.get(t.id);if(!r)return null;let i=new Set;if(r.decl&&i.add(r.decl.lineIndex),r.block&&r.block.close>=0)for(let e=r.block.open;e<=r.block.close;e++)i.add(e);for(let e of n.relations)(e.source===r.id||e.target===r.id)&&i.add(e.lineIndex);return{edits:[...i].map(t=>Y(e,t))}}case`er.deleteRelation`:{let r=X(n,t.relId);return r?{edits:[Y(e,r.lineIndex)]}:null}}}var ot=/^"([^"]*)"\s*:\s*([\d.]+)\s*$/;function st(e,t){let n=[],r=t;for(let i of e){if(i.kind!==`statement`||i.index===t){i.index===t&&(r=i.index);continue}r=i.index;let e=ot.exec(i.text.trim());if(!e)continue;let a=i.start+i.text.indexOf(`"`)+1,o=i.start+i.text.lastIndexOf(e[2]);n.push({entityId:`slice:${i.index}`,label:e[1],value:Number(e[2]),lineIndex:i.index,labelSpan:{start:a,end:a+e[1].length},valueSpan:{start:o,end:o+e[2].length}})}return{headerLine:t,showData:/\bshowData\b/.test(e[t]?.text??``),slices:n,lastContentLine:r}}function ct(e,t){let{graph:n,lines:r}=e,i=e=>n.slices.find(t=>t.entityId===e)??null;switch(t.type){case`pie.setValue`:{let e=i(t.sliceId);return!e||!Number.isFinite(t.value)||t.value<0?null:{edits:[{start:e.valueSpan.start,end:e.valueSpan.end,text:String(t.value)}]}}case`pie.setLabel`:{let e=i(t.sliceId);return e?{edits:[{start:e.labelSpan.start,end:e.labelSpan.end,text:t.label.replace(/"/g,`'`)}]}:null}case`pie.addSlice`:{let e=n.slices.length?n.slices[n.slices.length-1].lineIndex:n.lastContentLine,i=r[e],a=`${n.slices.length?i.indent:` `}"${(t.label??`New slice`).replace(/"/g,`'`)}" : ${t.value??10}`;return{edits:[{start:i.end,end:i.end,text:`
11
+ ${a}`}],created:[`slice:${e+1}`]}}case`pie.deleteSlice`:{let n=i(t.sliceId);if(!n)return null;let a=r[n.lineIndex];return a.end<e.code.length?{edits:[{start:a.start,end:a.end+1,text:``}]}:{edits:[{start:Math.max(0,a.start-1),end:a.end,text:``}]}}}}function lt(e,t,n){let r=e.slices.find(e=>e.entityId===n);if(!r)return[];let i=t[r.lineIndex];return[{start:i.start+i.indent.length,end:i.end}]}function ut(e,t,n){for(let r of e.slices){let e=t[r.lineIndex];if(n>=e.start&&n<=e.end)return r.entityId}return null}var dt=/^(dateFormat|axisFormat|tickInterval|excludes|includes|todayMarker|title|weekday|inclusiveEndDates|topAxis)\b/,ft=/^section\s+(.+)$/,pt=/^(.+?)\s*:\s*(.+)$/;function mt(e,t){let n=[],r=[],i=null,a=t;for(let o of e){if(o.kind!==`statement`||o.index===t){o.index===t&&(a=o.index);continue}a=o.index;let e=o.text.trim();if(dt.test(e))continue;let s=ft.exec(e);if(s){i=s[1].trim(),r.push({name:i,lineIndex:o.index});continue}let c=pt.exec(e);if(c){let e=o.start+o.indent.length,t=o.text.indexOf(`:`,o.indent.length+c[1].length-1),r=o.start+t+1;n.push({entityId:`task:${o.index}`,name:c[1].trim(),meta:c[2].trim(),lineIndex:o.index,nameSpan:{start:e,end:e+c[1].trimEnd().length},metaSpan:{start:r,end:o.end},section:i})}}return{headerLine:t,tasks:n,sections:r,lastContentLine:a}}function ht(e,t){let{graph:n,lines:r}=e,i=e=>n.tasks.find(t=>t.entityId===e)??null;switch(t.type){case`gantt.setTaskName`:{let e=i(t.taskId);if(!e)return null;let n=t.name.trim().replace(/[:#]/g,``);return n?{edits:[{start:e.nameSpan.start,end:e.nameSpan.end,text:n}]}:null}case`gantt.setTaskMeta`:{let e=i(t.taskId);if(!e)return null;let n=t.meta.trim().replace(/:/g,``);return n?{edits:[{start:e.metaSpan.start,end:e.metaSpan.end,text:` ${n}`}]}:null}case`gantt.addTask`:{let e=t.section?n.tasks.filter(e=>e.section===t.section):n.tasks,i=e.length?e[e.length-1].lineIndex:n.sections.length?n.sections[n.sections.length-1].lineIndex:n.lastContentLine,a=r[i],o=e.length?a.indent:`${a.indent} `,s=(t.name??`New task`).replace(/[:#]/g,``),c=(t.meta??`1d`).replace(/:/g,``);return{edits:[{start:a.end,end:a.end,text:`
12
+ ${o}${s} :${c}`}],created:[`task:${i+1}`]}}case`gantt.deleteTask`:{let n=i(t.taskId);if(!n)return null;let a=r[n.lineIndex];return a.end<e.code.length?{edits:[{start:a.start,end:a.end+1,text:``}]}:{edits:[{start:Math.max(0,a.start-1),end:a.end,text:``}]}}}}function gt(e,t,n){let r=e.tasks.find(e=>e.entityId===n);if(!r)return[];let i=t[r.lineIndex];return[{start:i.start+i.indent.length,end:i.end}]}function _t(e,t,n){for(let r of e.tasks){let e=t[r.lineIndex];if(n>=e.start&&n<=e.end)return r.entityId}return null}var Z=e=>/"([^"]+)"/.exec(e)?.[1]??null,Q=e=>{let t=/\[([^\]]+)\]|\(\(([^)]+)\)\)|\(([^)]+)\)|\{\{([^}]+)\}\}/.exec(e);return t?(t[1]??t[2]??t[3]??t[4])?.replace(/^"|"$/g,``)??null:null},vt=e=>{let t=e.indexOf(`:`);return t>0?e.slice(0,t).trim():null},yt=(e,t)=>{let n=t.exec(e);return n&&e.slice(n[0].length).trim()||null},bt={journey:{match:e=>yt(e,/^(title|section)\s+/)??vt(e),addTemplate:`New task: 3: Me`},timeline:{match:e=>{let t=yt(e,/^title\s+/);if(t)return t;let n=e.split(`:`).map(e=>e.trim()).filter(Boolean);return n.length?n[n.length-1]:null},addTemplate:`2030 : New event`},quadrant:{match:e=>/^(title|x-axis|y-axis|quadrant-\d)/.test(e)?null:vt(e),addTemplate:`New point: [0.5, 0.5]`},kanban:{match:e=>Q(e)??(/^\S/.test(e)?e:null),addTemplate:` [New card]`},mindmap:{match:e=>Q(e)??(e.replace(/^::icon.*$/,``)||null),addTemplate:` New idea`},treemap:{match:e=>Z(e),addTemplate:`"New item": 10`},packet:{match:e=>Z(e),addTemplate:`96-127: "New Field"`},sankey:{match:e=>e.split(`,`)[0]?.trim().replace(/^"|"$/g,``)||null,addTemplate:`Source,Target,10`},radar:{match:e=>Z(e),addTemplate:`curve new["New"]{50, 50, 50}`},gitgraph:{match:e=>Z(e)??yt(e,/^(branch|checkout|merge)\s+/),addTemplate:`commit`},xychart:{match:e=>/^title\b/.test(e)?Z(e):null,addTemplate:`bar [10, 20, 30]`},architecture:{match:e=>Q(e),addTemplate:`service new1(server)[New Service]`},requirement:{match:e=>/^(requirement|element|functionalRequirement|interface|performanceRequirement|physicalRequirement|designConstraint)\s+(\w+)/.exec(e)?.[2]??null,addTemplate:`element new_element {`},c4:{match:e=>Z(e),addTemplate:`Person(newPerson, "New Person", "Description")`},block:{match:e=>Q(e)??(/^[\w]+$/.test(e)?e:null),addTemplate:`newBlock["New Block"]`}};function xt(e,t,n){let r=bt[n];if(!r)return null;let i=[],a=t;for(let n of e){if(n.kind!==`statement`||n.index===t){n.index===t&&(a=n.index);continue}a=n.index;let e=n.text.trim();e===`}`||e===`end`||i.push({entityId:`item:${n.index}`,text:e,matchText:r.match(e),lineIndex:n.index})}return{typeId:n,headerLine:t,items:i,lastContentLine:a,addTemplate:r.addTemplate}}function St(e,t){let{graph:n,lines:r}=e,i=e=>n.items.find(t=>t.entityId===e)??null;switch(t.type){case`li.setLine`:{let n=i(t.itemId);if(!n)return null;let a=t.text.replace(/\n/g,` `).trim(),o=r[n.lineIndex];return a?{edits:[{start:o.start,end:o.end,text:`${o.indent}${a}`}]}:o.end<e.code.length?{edits:[{start:o.start,end:o.end+1,text:``}]}:{edits:[{start:Math.max(0,o.start-1),end:o.end,text:``}]}}case`li.addItem`:{let e=n.items.length?n.items[n.items.length-1].lineIndex:n.lastContentLine,i=r[e],a=n.items.length?i.indent:` `,o=(t.text??n.addTemplate).replace(/\n/g,` `);return{edits:[{start:i.end,end:i.end,text:`
13
+ ${a}${o.trim()}`}],created:[`item:${e+1}`]}}case`li.deleteItem`:{let n=i(t.itemId);if(!n)return null;let a=r[n.lineIndex];return a.end<e.code.length?{edits:[{start:a.start,end:a.end+1,text:``}]}:{edits:[{start:Math.max(0,a.start-1),end:a.end,text:``}]}}}}function Ct(e,t,n){let r=e.items.find(e=>e.entityId===n);if(!r)return[];let i=t[r.lineIndex];return[{start:i.start+i.indent.length,end:i.end}]}function wt(e,t,n){for(let r of e.items){let e=t[r.lineIndex];if(n>=e.start&&n<=e.end)return r.entityId}return null}function $(e){let t=i(e),{headerIndex:n}=a(t),o=n>=0?r(t[n].text):null,s=null,c=null,l=null,u=null,d=null,f=null,p=null,m=null;try{o?.id===`flowchart`?s=g(t,n):o?.id===`sequence`?c=ge(t,n):o?.id===`state`?l=Ae(t,n):o?.id===`class`?u=Ue(t,n):o?.id===`er`?d=Qe(t,n):o?.id===`pie`?f=st(t,n):o?.id===`gantt`?p=mt(t,n):o&&bt[o.id]&&(m=xt(t,n,o.id))}catch{}return{code:e,lines:t,headerIndex:n,typeInfo:o,flowchart:s,sequence:c,state:l,classGraph:u,er:d,pie:f,gantt:p,lineItems:m}}var Tt=class{_code;_result;_selection=[];undoStack=[];redoStack=[];listeners={change:new Set,selectionChange:new Set,diagnostics:new Set};coalesceMs;_diagnostics=[];constructor(e={}){this._code=e.code??`flowchart TD
14
+ A[Start] --> B[End]`,this.coalesceMs=e.coalesceMs??750,this._result=$(this._code)}get code(){return this._code}get result(){return this._result}get selection(){return this._selection}get diagnostics(){return this._diagnostics}get canUndo(){return this.undoStack.length>0}get canRedo(){return this.redoStack.length>0}on(e,t){return this.listeners[e].add(t),()=>this.listeners[e].delete(t)}emit(e,t){for(let n of this.listeners[e])n(t)}setDiagnostics(e){this._diagnostics=e,this.emit(`diagnostics`,e)}applyEdits(e,t=`api`){if(e.length===0)return;let{text:n,inverse:r}=o(this._code,e);if(n===this._code)return;let i={edits:e,inverse:r,origin:t,selectionBefore:[...this._selection],selectionAfter:[...this._selection],time:Date.now()};this.commit(n,i,t)}setCode(e,t=`code`){let n=s(this._code,e);if(!n)return;let{text:r,inverse:i}=o(this._code,[n]),a=Date.now(),c=this.undoStack[this.undoStack.length-1];if(t===`code`&&c&&c.origin===`code`&&a-c.time<this.coalesceMs&&this.redoStack.length===0){let e=o(this._code,c.inverse).text,i=s(e,r),l=s(r,e);c.edits=i?[i]:[],c.inverse=l?[l]:[],c.time=a,this._code=r,this._result=$(r),this.pruneSelection(),this.emit(`change`,{code:r,edits:[n],origin:t,result:this._result});return}let l={edits:[n],inverse:i,origin:t,selectionBefore:[...this._selection],selectionAfter:[...this._selection],time:a};this.commit(r,l,t)}commit(e,t,n){this._code=e,this._result=$(e),this.undoStack.push(t),this.redoStack=[],this.pruneSelection(),t.selectionAfter=[...this._selection],this.emit(`change`,{code:e,edits:t.edits,origin:n,result:this._result})}undo(){let e=this.undoStack.pop();if(!e)return!1;let{text:t}=o(this._code,e.inverse);return this.redoStack.push(e),this._code=t,this._result=$(t),this._selection=e.selectionBefore.filter(e=>this.entityExists(e)),this.emit(`change`,{code:t,edits:e.inverse,origin:`history`,result:this._result}),this.emit(`selectionChange`,{entityIds:this._selection,spans:this.selectionSpans(),origin:`history`}),!0}redo(){let e=this.redoStack.pop();if(!e)return!1;let{text:t}=o(this._code,e.edits);return this.undoStack.push(e),this._code=t,this._result=$(t),this._selection=e.selectionAfter.filter(e=>this.entityExists(e)),this.emit(`change`,{code:t,edits:e.edits,origin:`history`,result:this._result}),this.emit(`selectionChange`,{entityIds:this._selection,spans:this.selectionSpans(),origin:`history`}),!0}dispatch(e,t=`canvas`){let{flowchart:n,sequence:r,state:i,classGraph:a,er:o,pie:s,gantt:c,lineItems:l,lines:u}=this._result,d=null;if(e.type.startsWith(`seq.`)){if(!r)return null;d=Se({code:this._code,lines:u,graph:r},e)}else if(e.type.startsWith(`st.`)){if(!i)return null;d=Fe({code:this._code,lines:u,graph:i},e)}else if(e.type.startsWith(`cl.`)){if(!a)return null;d=qe({code:this._code,lines:u,graph:a},e)}else if(e.type.startsWith(`er.`)){if(!o)return null;d=at({code:this._code,lines:u,graph:o},e)}else if(e.type.startsWith(`pie.`)){if(!s)return null;d=ct({code:this._code,lines:u,graph:s},e)}else if(e.type.startsWith(`gantt.`)){if(!c)return null;d=ht({code:this._code,lines:u,graph:c},e)}else if(e.type.startsWith(`li.`)){if(!l)return null;d=St({code:this._code,lines:u,graph:l},e)}else{if(!n)return null;d=ie({code:this._code,lines:u,graph:n},e)}return!d||d.edits.length===0?d:(this.applyEdits(d.edits,t),d.created?.length&&this.setSelection(d.created,t),d)}deleteEntities(e,t=`canvas`){let n=e=>e.startsWith(`edge:`)||e.startsWith(`event:`)||e.startsWith(`trans:`)||e.startsWith(`rel:`)||e.startsWith(`erel:`)?0:1;for(let r of[...e].sort((e,t)=>n(e)-n(t)))this.entityExists(r)&&(r.startsWith(`edge:`)?this.dispatch({type:`deleteEdge`,edgeId:r},t):r.startsWith(`node:`)?this.dispatch({type:`deleteNode`,id:r.slice(5)},t):r.startsWith(`event:`)?this.dispatch({type:`seq.deleteEvent`,eventId:r},t):r.startsWith(`participant:`)?this.dispatch({type:`seq.deleteParticipant`,id:r.slice(12)},t):r.startsWith(`trans:`)?this.dispatch({type:`st.deleteTransition`,transId:r},t):r.startsWith(`state:`)?this.dispatch({type:`st.deleteState`,id:r.slice(6)},t):r.startsWith(`rel:`)?this.dispatch({type:`cl.deleteRelation`,relId:r},t):r.startsWith(`class:`)?this.dispatch({type:`cl.deleteClass`,id:r.slice(6)},t):r.startsWith(`erel:`)?this.dispatch({type:`er.deleteRelation`,relId:r},t):r.startsWith(`entity:`)?this.dispatch({type:`er.deleteEntity`,id:r.slice(7)},t):r.startsWith(`slice:`)?this.dispatch({type:`pie.deleteSlice`,sliceId:r},t):r.startsWith(`task:`)?this.dispatch({type:`gantt.deleteTask`,taskId:r},t):r.startsWith(`item:`)&&this.dispatch({type:`li.deleteItem`,itemId:r},t))}entityExists(e){let t=this._result.flowchart;if(t){if(e.startsWith(`node:`))return t.nodeById.has(e.slice(5));if(e.startsWith(`edge:`))return t.edges.some(t=>t.entityId===e);if(e.startsWith(`subgraph:`))return t.subgraphs.some(t=>t.entityId===e)}let n=this._result.sequence;if(n){if(e.startsWith(`participant:`))return n.participantById.has(e.slice(12));if(e.startsWith(`event:`))return n.events.some(t=>t.entityId===e)}let r=this._result.state;if(r){if(e.startsWith(`state:`))return r.stateById.has(e.slice(6));if(e.startsWith(`trans:`))return r.transitions.some(t=>t.entityId===e)}let i=this._result.classGraph;if(i){if(e.startsWith(`class:`))return i.classById.has(e.slice(6));if(e.startsWith(`rel:`))return i.relations.some(t=>t.entityId===e)}let a=this._result.er;if(a){if(e.startsWith(`entity:`))return a.entityById.has(e.slice(7));if(e.startsWith(`erel:`))return a.relations.some(t=>t.entityId===e)}let o=this._result.pie;if(o&&e.startsWith(`slice:`))return o.slices.some(t=>t.entityId===e);let s=this._result.gantt;if(s&&e.startsWith(`task:`))return s.tasks.some(t=>t.entityId===e);let c=this._result.lineItems;return c&&e.startsWith(`item:`)?c.items.some(t=>t.entityId===e):!1}setSelection(e,t=`api`){let n=e.filter(e=>this.entityExists(e));n.length===this._selection.length&&n.every((e,t)=>e===this._selection[t])||(this._selection=n,this.emit(`selectionChange`,{entityIds:n,spans:this.selectionSpans(),origin:t}))}clearSelection(e=`api`){this.setSelection([],e)}pruneSelection(){this._selection=this._selection.filter(e=>this.entityExists(e))}selectionSpans(){return this._selection.flatMap(e=>this.entityRanges(e))}entityRanges(e){let{flowchart:t,sequence:n,state:r,classGraph:i,er:a,pie:o,gantt:s,lineItems:c,lines:l}=this._result;return t?_(t,l,e):n?_e(n,l,e):r?je(r,l,e):i?We(i,l,e):a?$e(a,l,e):o?lt(o,l,e):s?gt(s,l,e):c?Ct(c,l,e):[]}entityAt(e){let{flowchart:t,sequence:n,state:r,classGraph:i,er:a,pie:o,gantt:s,lineItems:c,lines:l}=this._result;return t?v(t,e):n?ve(n,l,e):r?Me(r,l,e):i?Ge(i,l,e):a?et(a,l,e):o?ut(o,l,e):s?_t(s,l,e):c?wt(c,l,e):null}};export{n as DIAGRAM_TYPES,bt as LINE_ITEM_CONFIGS,oe as MESSAGE_OPS,Tt as MermaidWysiwygEditor,ae as PARTICIPANT_TYPES,Ie as RELATION_OPS,d as SHAPE_DELIMS,o as applyEdits,e as bindTextPane,Ue as buildClassGraph,Qe as buildErGraph,g as buildFlowGraph,mt as buildGanttGraph,xt as buildLineItemsGraph,st as buildPieGraph,ge as buildSequenceGraph,Ae as buildStateGraph,rt as cardinalityFromGlyph,Ge as classEntityAt,We as classEntitySpans,a as classifyLines,qe as compileClassOp,at as compileErOp,ie as compileFlowchartOp,ht as compileGanttOp,St as compileLineItemOp,ct as compilePieOp,Se as compileSequenceOp,Fe as compileStateOp,r as detectDiagramType,s as diffText,v as entityAtOffset,_ as entitySpans,et as erEntityAt,$e as erEntitySpans,_t as ganttEntityAt,gt as ganttEntitySpans,wt as lineItemAt,Ct as lineItemSpans,c as mapOffset,$ as parse,He as parseClassStatement,Ze as parseErStatement,h as parseFlowHeader,m as parseFlowStatement,he as parseSequenceStatement,I as parseStateStatement,ut as pieEntityAt,lt as pieEntitySpans,i as scanLines,ve as sequenceEntityAt,_e as sequenceEntitySpans,Me as stateEntityAt,je as stateEntitySpans};
@@ -1,2 +1,2 @@
1
- import{M as e,N as t,j as n}from"./CodeMirrorPropInput-cmSiPzan.js";import{$ as r,At as i,Bt as a,Dt as o,E as s,Et as c,Ft as l,Ht as u,J as d,Mt as f,N as p,Ot as m,Pt as h,Q as ee,Rt as te,Ut as ne,X as g,_ as re,_t as _,ct as ie,dt as ae,et as oe,f as se,gt as ce,ht as le,l as ue,lt as de,mt as fe,nt as pe,ot as me,rt as v,st as he,tt as ge,ut as _e,wt as y,y as ve,yt as b,zt as ye}from"./dist-CdtMC9tO.js";import{i as be,n as xe,o as Se,r as Ce}from"./dist-zn0VptDw.js";var we=typeof String.prototype.normalize==`function`?e=>e.normalize(`NFKD`):e=>e,x=class{constructor(e,t,n=0,r=e.length,i,a){this.test=a,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer=``,this.bufferPos=0,this.iter=e.iterRange(n,r),this.bufferStart=n,this.normalize=i?e=>i(we(e)):we,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return te(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=ne(e),n=this.bufferStart+this.bufferPos;this.bufferPos+=ye(e);let r=this.normalize(t);if(r.length)for(let e=0,i=n;;e++){let a=r.charCodeAt(e),o=this.match(a,i,this.bufferPos+this.bufferStart);if(e==r.length-1){if(o)return this.value=o,this;break}i==n&&e<t.length&&t.charCodeAt(e)==a&&i++}}}match(e,t,n){let r=null;for(let t=0;t<this.matches.length;t+=2){let i=this.matches[t],a=!1;this.query.charCodeAt(i)==e&&(i==this.query.length-1?r={from:this.matches[t+1],to:n}:(this.matches[t]++,a=!0)),a||(this.matches.splice(t,2),t-=2)}return this.query.charCodeAt(0)==e&&(this.query.length==1?r={from:t,to:n}:this.matches.push(1,t)),r&&this.test&&!this.test(r.from,r.to,this.buffer,this.bufferStart)&&(r=null),r}};typeof Symbol<`u`&&(x.prototype[Symbol.iterator]=function(){return this});var Te={from:-1,to:-1,match:/.*/.exec(``)},S=`gm`+(/x/.unicode==null?``:`u`),Ee=class{constructor(e,t,n,r=0,i=e.length){if(this.text=e,this.to=i,this.curLine=``,this.done=!1,this.value=Te,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new De(e,t,n,r,i);this.re=new RegExp(t,S+(n?.ignoreCase?`i`:``)),this.test=n?.test,this.iter=e.iter(),this.curLineStart=e.lineAt(r).from,this.matchPos=T(e,r),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine=``:(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine=``:this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let t=this.matchPos<=this.to&&this.re.exec(this.curLine);if(t){let n=this.curLineStart+t.index,r=n+t[0].length;if(this.matchPos=T(this.text,r+ +(n==r)),n==this.curLineStart+this.curLine.length&&this.nextLine(),(n<r||n>this.value.to)&&(!this.test||this.test(n,r,t)))return this.value={from:n,to:r,match:t},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),e=0;else return this.done=!0,this}}},C=new WeakMap,w=class e{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(t,n,r){let i=C.get(t);if(!i||i.from>=r||i.to<=n){let i=new e(n,t.sliceString(n,r));return C.set(t,i),i}if(i.from==n&&i.to==r)return i;let{text:a,from:o}=i;return o>n&&(a=t.sliceString(n,o)+a,o=n),i.to<r&&(a+=t.sliceString(i.to,r)),C.set(t,new e(o,a)),new e(n,a.slice(n-o,r-o))}},De=class{constructor(e,t,n,r,i){this.text=e,this.to=i,this.done=!1,this.value=Te,this.matchPos=T(e,r),this.re=new RegExp(t,S+(n?.ignoreCase?`i`:``)),this.test=n?.test,this.flat=w.get(e,r,this.chunkEnd(r+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,t=this.re.exec(this.flat.text);if(t&&!t[0]&&t.index==e&&(this.re.lastIndex=e+1,t=this.re.exec(this.flat.text)),t){let e=this.flat.from+t.index,n=e+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(e,n,t)))return this.value={from:e,to:n,match:t},this.matchPos=T(this.text,n+ +(e==n)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=w.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}};typeof Symbol<`u`&&(Ee.prototype[Symbol.iterator]=De.prototype[Symbol.iterator]=function(){return this});function Oe(e){try{return new RegExp(e,S),!0}catch{return!1}}function T(e,t){if(t>=e.length)return t;let n=e.lineAt(t),r;for(;t<n.to&&(r=n.text.charCodeAt(t-n.from))>=56320&&r<57344;)t++;return t}var ke=e=>{let{state:t}=e,n=String(t.doc.lineAt(e.state.selection.main.head).number),{close:r,result:i}=ce(e,{label:t.phrase(`Go to line`),input:{type:`text`,name:`line`,value:n},focus:!0,submitLabel:t.phrase(`go`)});return i.then(n=>{let i=n&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(n.elements.line.value);if(!i){e.dispatch({effects:r});return}let a=t.doc.lineAt(t.selection.main.head),[,o,s,l,u]=i,d=l?+l.slice(1):0,f=s?+s:a.number;if(s&&u){let e=f/100;o&&(e=e*(o==`-`?-1:1)+a.number/t.doc.lines),f=Math.round(t.doc.lines*e)}else s&&o&&(f=f*(o==`-`?-1:1)+a.number);let p=t.doc.line(Math.max(1,Math.min(t.doc.lines,f))),m=c.cursor(p.from+Math.max(0,Math.min(d,p.length)));e.dispatch({effects:[r,g.scrollIntoView(m.from,{y:`center`})],selection:m})}),!0},Ae={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},E=m.define({combine(e){return a(e,Ae,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}});function je(e){let t=[Le,Ie];return e&&t.push(E.of(e)),t}var Me=d.mark({class:`cm-selectionMatch`}),Ne=d.mark({class:`cm-selectionMatch cm-selectionMatch-main`});function Pe(e,t,n,r){return(n==0||e(t.sliceDoc(n-1,n))!=y.Word)&&(r==t.doc.length||e(t.sliceDoc(r,r+1))!=y.Word)}function Fe(e,t,n,r){return e(t.sliceDoc(n,n+1))==y.Word&&e(t.sliceDoc(r-1,r))==y.Word}var Ie=ee.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.selectionSet||e.docChanged||e.viewportChanged)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=e.state.facet(E),{state:n}=e,r=n.selection;if(r.ranges.length>1)return d.none;let i=r.main,a,o=null;if(i.empty){if(!t.highlightWordAroundCursor)return d.none;let e=n.wordAt(i.head);if(!e)return d.none;o=n.charCategorizer(i.head),a=n.sliceDoc(e.from,e.to)}else{let e=i.to-i.from;if(e<t.minSelectionLength||e>200)return d.none;if(t.wholeWords){if(a=n.sliceDoc(i.from,i.to),o=n.charCategorizer(i.head),!(Pe(o,n,i.from,i.to)&&Fe(o,n,i.from,i.to)))return d.none}else if(a=n.sliceDoc(i.from,i.to),!a)return d.none}let s=[];for(let r of e.visibleRanges){let e=new x(n.doc,a,r.from,r.to);for(;!e.next().done;){let{from:r,to:a}=e.value;if((!o||Pe(o,n,r,a))&&(i.empty&&r<=i.from&&a>=i.to?s.push(Ne.range(r,a)):(r>=i.to||a<=i.from)&&s.push(Me.range(r,a)),s.length>t.maxMatches))return d.none}}return d.set(s)}},{decorations:e=>e.decorations}),Le=g.baseTheme({".cm-selectionMatch":{backgroundColor:`#99ff7780`},".cm-searchMatch .cm-selectionMatch":{backgroundColor:`transparent`}}),Re=({state:e,dispatch:t})=>{let{selection:n}=e,r=c.create(n.ranges.map(t=>e.wordAt(t.head)||c.cursor(t.head)),n.mainIndex);return r.eq(n)?!1:(t(e.update({selection:r})),!0)};function ze(e,t){let{main:n,ranges:r}=e.selection,i=e.wordAt(n.head),a=i&&i.from==n.from&&i.to==n.to;for(let n=!1,i=new x(e.doc,t,r[r.length-1].to);;)if(i.next(),i.done){if(n)return null;i=new x(e.doc,t,0,Math.max(0,r[r.length-1].from-1)),n=!0}else{if(n&&r.some(e=>e.from==i.value.from))continue;if(a){let t=e.wordAt(i.value.from);if(!t||t.from!=i.value.from||t.to!=i.value.to)continue}return i.value}}var Be=({state:e,dispatch:t})=>{let{ranges:n}=e.selection;if(n.some(e=>e.from===e.to))return Re({state:e,dispatch:t});let r=e.sliceDoc(n[0].from,n[0].to);if(e.selection.ranges.some(t=>e.sliceDoc(t.from,t.to)!=r))return!1;let i=ze(e,r);return i?(t(e.update({selection:e.selection.addRange(c.range(i.from,i.to),!1),effects:g.scrollIntoView(i.to)})),!0):!1},D=m.define({combine(e){return a(e,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new ct(e),scrollToMatch:e=>g.scrollIntoView(e)})}});function Ve(e){return e?[D.of(e),G]:G}var He=class{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||``,this.valid=!!this.search&&(!this.regexp||Oe(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord,this.test=e.test}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(e,t)=>t==`n`?`
1
+ import{M as e,N as t,j as n}from"./CodeMirrorPropInput-xXay5zRm.js";import{$ as r,At as i,Bt as a,Dt as o,E as s,Et as c,Ft as l,Ht as u,J as d,Mt as f,N as p,Ot as m,Pt as h,Q as ee,Rt as te,Ut as ne,X as g,_ as re,_t as _,ct as ie,dt as ae,et as oe,f as se,gt as ce,ht as le,l as ue,lt as de,mt as fe,nt as pe,ot as me,rt as v,st as he,tt as ge,ut as _e,wt as y,y as ve,yt as b,zt as ye}from"./dist-CdtMC9tO.js";import{i as be,n as xe,o as Se,r as Ce}from"./dist-zn0VptDw.js";var we=typeof String.prototype.normalize==`function`?e=>e.normalize(`NFKD`):e=>e,x=class{constructor(e,t,n=0,r=e.length,i,a){this.test=a,this.value={from:0,to:0},this.done=!1,this.matches=[],this.buffer=``,this.bufferPos=0,this.iter=e.iterRange(n,r),this.bufferStart=n,this.normalize=i?e=>i(we(e)):we,this.query=this.normalize(t)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return te(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let e=this.peek();if(e<0)return this.done=!0,this;let t=ne(e),n=this.bufferStart+this.bufferPos;this.bufferPos+=ye(e);let r=this.normalize(t);if(r.length)for(let e=0,i=n;;e++){let a=r.charCodeAt(e),o=this.match(a,i,this.bufferPos+this.bufferStart);if(e==r.length-1){if(o)return this.value=o,this;break}i==n&&e<t.length&&t.charCodeAt(e)==a&&i++}}}match(e,t,n){let r=null;for(let t=0;t<this.matches.length;t+=2){let i=this.matches[t],a=!1;this.query.charCodeAt(i)==e&&(i==this.query.length-1?r={from:this.matches[t+1],to:n}:(this.matches[t]++,a=!0)),a||(this.matches.splice(t,2),t-=2)}return this.query.charCodeAt(0)==e&&(this.query.length==1?r={from:t,to:n}:this.matches.push(1,t)),r&&this.test&&!this.test(r.from,r.to,this.buffer,this.bufferStart)&&(r=null),r}};typeof Symbol<`u`&&(x.prototype[Symbol.iterator]=function(){return this});var Te={from:-1,to:-1,match:/.*/.exec(``)},S=`gm`+(/x/.unicode==null?``:`u`),Ee=class{constructor(e,t,n,r=0,i=e.length){if(this.text=e,this.to=i,this.curLine=``,this.done=!1,this.value=Te,/\\[sWDnr]|\n|\r|\[\^/.test(t))return new De(e,t,n,r,i);this.re=new RegExp(t,S+(n?.ignoreCase?`i`:``)),this.test=n?.test,this.iter=e.iter(),this.curLineStart=e.lineAt(r).from,this.matchPos=T(e,r),this.getLine(this.curLineStart)}getLine(e){this.iter.next(e),this.iter.lineBreak?this.curLine=``:(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine=``:this.getLine(0)}next(){for(let e=this.matchPos-this.curLineStart;;){this.re.lastIndex=e;let t=this.matchPos<=this.to&&this.re.exec(this.curLine);if(t){let n=this.curLineStart+t.index,r=n+t[0].length;if(this.matchPos=T(this.text,r+ +(n==r)),n==this.curLineStart+this.curLine.length&&this.nextLine(),(n<r||n>this.value.to)&&(!this.test||this.test(n,r,t)))return this.value={from:n,to:r,match:t},this;e=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),e=0;else return this.done=!0,this}}},C=new WeakMap,w=class e{constructor(e,t){this.from=e,this.text=t}get to(){return this.from+this.text.length}static get(t,n,r){let i=C.get(t);if(!i||i.from>=r||i.to<=n){let i=new e(n,t.sliceString(n,r));return C.set(t,i),i}if(i.from==n&&i.to==r)return i;let{text:a,from:o}=i;return o>n&&(a=t.sliceString(n,o)+a,o=n),i.to<r&&(a+=t.sliceString(i.to,r)),C.set(t,new e(o,a)),new e(n,a.slice(n-o,r-o))}},De=class{constructor(e,t,n,r,i){this.text=e,this.to=i,this.done=!1,this.value=Te,this.matchPos=T(e,r),this.re=new RegExp(t,S+(n?.ignoreCase?`i`:``)),this.test=n?.test,this.flat=w.get(e,r,this.chunkEnd(r+5e3))}chunkEnd(e){return e>=this.to?this.to:this.text.lineAt(e).to}next(){for(;;){let e=this.re.lastIndex=this.matchPos-this.flat.from,t=this.re.exec(this.flat.text);if(t&&!t[0]&&t.index==e&&(this.re.lastIndex=e+1,t=this.re.exec(this.flat.text)),t){let e=this.flat.from+t.index,n=e+t[0].length;if((this.flat.to>=this.to||t.index+t[0].length<=this.flat.text.length-10)&&(!this.test||this.test(e,n,t)))return this.value={from:e,to:n,match:t},this.matchPos=T(this.text,n+ +(e==n)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=w.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}};typeof Symbol<`u`&&(Ee.prototype[Symbol.iterator]=De.prototype[Symbol.iterator]=function(){return this});function Oe(e){try{return new RegExp(e,S),!0}catch{return!1}}function T(e,t){if(t>=e.length)return t;let n=e.lineAt(t),r;for(;t<n.to&&(r=n.text.charCodeAt(t-n.from))>=56320&&r<57344;)t++;return t}var ke=e=>{let{state:t}=e,n=String(t.doc.lineAt(e.state.selection.main.head).number),{close:r,result:i}=ce(e,{label:t.phrase(`Go to line`),input:{type:`text`,name:`line`,value:n},focus:!0,submitLabel:t.phrase(`go`)});return i.then(n=>{let i=n&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(n.elements.line.value);if(!i){e.dispatch({effects:r});return}let a=t.doc.lineAt(t.selection.main.head),[,o,s,l,u]=i,d=l?+l.slice(1):0,f=s?+s:a.number;if(s&&u){let e=f/100;o&&(e=e*(o==`-`?-1:1)+a.number/t.doc.lines),f=Math.round(t.doc.lines*e)}else s&&o&&(f=f*(o==`-`?-1:1)+a.number);let p=t.doc.line(Math.max(1,Math.min(t.doc.lines,f))),m=c.cursor(p.from+Math.max(0,Math.min(d,p.length)));e.dispatch({effects:[r,g.scrollIntoView(m.from,{y:`center`})],selection:m})}),!0},Ae={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},E=m.define({combine(e){return a(e,Ae,{highlightWordAroundCursor:(e,t)=>e||t,minSelectionLength:Math.min,maxMatches:Math.min})}});function je(e){let t=[Le,Ie];return e&&t.push(E.of(e)),t}var Me=d.mark({class:`cm-selectionMatch`}),Ne=d.mark({class:`cm-selectionMatch cm-selectionMatch-main`});function Pe(e,t,n,r){return(n==0||e(t.sliceDoc(n-1,n))!=y.Word)&&(r==t.doc.length||e(t.sliceDoc(r,r+1))!=y.Word)}function Fe(e,t,n,r){return e(t.sliceDoc(n,n+1))==y.Word&&e(t.sliceDoc(r-1,r))==y.Word}var Ie=ee.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.selectionSet||e.docChanged||e.viewportChanged)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=e.state.facet(E),{state:n}=e,r=n.selection;if(r.ranges.length>1)return d.none;let i=r.main,a,o=null;if(i.empty){if(!t.highlightWordAroundCursor)return d.none;let e=n.wordAt(i.head);if(!e)return d.none;o=n.charCategorizer(i.head),a=n.sliceDoc(e.from,e.to)}else{let e=i.to-i.from;if(e<t.minSelectionLength||e>200)return d.none;if(t.wholeWords){if(a=n.sliceDoc(i.from,i.to),o=n.charCategorizer(i.head),!(Pe(o,n,i.from,i.to)&&Fe(o,n,i.from,i.to)))return d.none}else if(a=n.sliceDoc(i.from,i.to),!a)return d.none}let s=[];for(let r of e.visibleRanges){let e=new x(n.doc,a,r.from,r.to);for(;!e.next().done;){let{from:r,to:a}=e.value;if((!o||Pe(o,n,r,a))&&(i.empty&&r<=i.from&&a>=i.to?s.push(Ne.range(r,a)):(r>=i.to||a<=i.from)&&s.push(Me.range(r,a)),s.length>t.maxMatches))return d.none}}return d.set(s)}},{decorations:e=>e.decorations}),Le=g.baseTheme({".cm-selectionMatch":{backgroundColor:`#99ff7780`},".cm-searchMatch .cm-selectionMatch":{backgroundColor:`transparent`}}),Re=({state:e,dispatch:t})=>{let{selection:n}=e,r=c.create(n.ranges.map(t=>e.wordAt(t.head)||c.cursor(t.head)),n.mainIndex);return r.eq(n)?!1:(t(e.update({selection:r})),!0)};function ze(e,t){let{main:n,ranges:r}=e.selection,i=e.wordAt(n.head),a=i&&i.from==n.from&&i.to==n.to;for(let n=!1,i=new x(e.doc,t,r[r.length-1].to);;)if(i.next(),i.done){if(n)return null;i=new x(e.doc,t,0,Math.max(0,r[r.length-1].from-1)),n=!0}else{if(n&&r.some(e=>e.from==i.value.from))continue;if(a){let t=e.wordAt(i.value.from);if(!t||t.from!=i.value.from||t.to!=i.value.to)continue}return i.value}}var Be=({state:e,dispatch:t})=>{let{ranges:n}=e.selection;if(n.some(e=>e.from===e.to))return Re({state:e,dispatch:t});let r=e.sliceDoc(n[0].from,n[0].to);if(e.selection.ranges.some(t=>e.sliceDoc(t.from,t.to)!=r))return!1;let i=ze(e,r);return i?(t(e.update({selection:e.selection.addRange(c.range(i.from,i.to),!1),effects:g.scrollIntoView(i.to)})),!0):!1},D=m.define({combine(e){return a(e,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:e=>new ct(e),scrollToMatch:e=>g.scrollIntoView(e)})}});function Ve(e){return e?[D.of(e),G]:G}var He=class{constructor(e){this.search=e.search,this.caseSensitive=!!e.caseSensitive,this.literal=!!e.literal,this.regexp=!!e.regexp,this.replace=e.replace||``,this.valid=!!this.search&&(!this.regexp||Oe(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!e.wholeWord,this.test=e.test}unquote(e){return this.literal?e:e.replace(/\\([nrt\\])/g,(e,t)=>t==`n`?`
2
2
  `:t==`r`?`\r`:t==`t`?` `:`\\`)}eq(e){return this.search==e.search&&this.replace==e.replace&&this.caseSensitive==e.caseSensitive&&this.regexp==e.regexp&&this.wholeWord==e.wholeWord&&this.test==e.test}create(){return this.regexp?new Ye(this):new Ke(this)}getCursor(e,t=0,n){let r=e.doc?e:o.create({doc:e});return n??=r.doc.length,this.regexp?k(this,r,t,n):O(this,r,t,n)}},Ue=class{constructor(e){this.spec=e}};function We(e,t,n){return(r,i,a,o)=>n&&!n(r,i,a,o)?!1:e(r>=o&&i<=o+a.length?a.slice(r-o,i-o):t.doc.sliceString(r,i),t,r,i)}function O(e,t,n,r){let i;return e.wholeWord&&(i=Ge(t.doc,t.charCategorizer(t.selection.main.head))),e.test&&(i=We(e.test,t,i)),new x(t.doc,e.unquoted,n,r,e.caseSensitive?void 0:e=>e.toLowerCase(),i)}function Ge(e,t){return(n,r,i,a)=>((a>n||a+i.length<r)&&(a=Math.max(0,n-2),i=e.sliceString(a,Math.min(e.length,r+2))),(t(A(i,n-a))!=y.Word||t(j(i,n-a))!=y.Word)&&(t(j(i,r-a))!=y.Word||t(A(i,r-a))!=y.Word))}var Ke=class extends Ue{constructor(e){super(e)}nextMatch(e,t,n){let r=O(this.spec,e,n,e.doc.length).nextOverlapping();if(r.done){let n=Math.min(e.doc.length,t+this.spec.unquoted.length);r=O(this.spec,e,0,n).nextOverlapping()}return r.done||r.value.from==t&&r.value.to==n?null:r.value}prevMatchInRange(e,t,n){for(let r=n;;){let n=Math.max(t,r-1e4-this.spec.unquoted.length),i=O(this.spec,e,n,r),a=null;for(;!i.nextOverlapping().done;)a=i.value;if(a)return a;if(n==t)return null;r-=1e4}}prevMatch(e,t,n){let r=this.prevMatchInRange(e,0,t);return r||=this.prevMatchInRange(e,Math.max(0,n-this.spec.unquoted.length),e.doc.length),r&&(r.from!=t||r.to!=n)?r:null}getReplacement(e){return this.spec.unquote(this.spec.replace)}matchAll(e,t){let n=O(this.spec,e,0,e.doc.length),r=[];for(;!n.next().done;){if(r.length>=t)return null;r.push(n.value)}return r}highlight(e,t,n,r){let i=O(this.spec,e,Math.max(0,t-this.spec.unquoted.length),Math.min(n+this.spec.unquoted.length,e.doc.length));for(;!i.next().done;)r(i.value.from,i.value.to)}};function qe(e,t,n){return(r,i,a)=>(!n||n(r,i,a))&&e(a[0],t,r,i)}function k(e,t,n,r){let i;return e.wholeWord&&(i=Je(t.charCategorizer(t.selection.main.head))),e.test&&(i=qe(e.test,t,i)),new Ee(t.doc,e.search,{ignoreCase:!e.caseSensitive,test:i},n,r)}function A(e,t){return e.slice(u(e,t,!1),t)}function j(e,t){return e.slice(t,u(e,t))}function Je(e){return(t,n,r)=>!r[0].length||(e(A(r.input,r.index))!=y.Word||e(j(r.input,r.index))!=y.Word)&&(e(j(r.input,r.index+r[0].length))!=y.Word||e(A(r.input,r.index+r[0].length))!=y.Word)}var Ye=class extends Ue{nextMatch(e,t,n){let r=k(this.spec,e,n,e.doc.length).next();return r.done&&(r=k(this.spec,e,0,t).next()),r.done?null:r.value}prevMatchInRange(e,t,n){for(let r=1;;r++){let i=Math.max(t,n-r*1e4),a=k(this.spec,e,i,n),o=null;for(;!a.next().done;)o=a.value;if(o&&(i==t||o.from>i+10))return o;if(i==t)return null}}prevMatch(e,t,n){return this.prevMatchInRange(e,0,t)||this.prevMatchInRange(e,n,e.doc.length)}getReplacement(e){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(t,n)=>{if(n==`&`)return e.match[0];if(n==`$`)return`$`;for(let t=n.length;t>0;t--){let r=+n.slice(0,t);if(r>0&&r<e.match.length)return e.match[r]+n.slice(t)}return t})}matchAll(e,t){let n=k(this.spec,e,0,e.doc.length),r=[];for(;!n.next().done;){if(r.length>=t)return null;r.push(n.value)}return r}highlight(e,t,n,r){let i=k(this.spec,e,Math.max(0,t-250),Math.min(n+250,e.doc.length));for(;!i.next().done;)r(i.value.from,i.value.to)}},M=h.define(),N=h.define(),P=l.define({create(e){return new F(B(e).create(),null)},update(e,t){for(let n of t.effects)n.is(M)?e=new F(n.value.create(),e.panel):n.is(N)&&(e=new F(e.query,n.value?z:null));return e},provide:e=>_.from(e,e=>e.panel)}),F=class{constructor(e,t){this.query=e,this.panel=t}},Xe=d.mark({class:`cm-searchMatch`}),Ze=d.mark({class:`cm-searchMatch cm-searchMatch-selected`}),Qe=ee.fromClass(class{constructor(e){this.view=e,this.decorations=this.highlight(e.state.field(P))}update(e){let t=e.state.field(P);(t!=e.startState.field(P)||e.docChanged||e.selectionSet||e.viewportChanged)&&(this.decorations=this.highlight(t))}highlight({query:e,panel:t}){if(!t||!e.spec.valid)return d.none;let{view:n}=this,r=new f;for(let t=0,i=n.visibleRanges,a=i.length;t<a;t++){let{from:o,to:s}=i[t];for(;t<a-1&&s>i[t+1].from-500;)s=i[++t].to;e.highlight(n.state,o,s,(e,t)=>{let i=n.state.selection.ranges.some(n=>n.from==e&&n.to==t);r.add(e,t,i?Ze:Xe)})}return r.finish()}},{decorations:e=>e.decorations});function I(e){return t=>{let n=t.state.field(P,!1);return n&&n.query.spec.valid?e(t,n):at(t)}}var L=I((e,{query:t})=>{let{to:n}=e.state.selection.main,r=t.nextMatch(e.state,n,n);if(!r)return!1;let i=c.single(r.from,r.to),a=e.state.facet(D);return e.dispatch({selection:i,effects:[W(e,r),a.scrollToMatch(i.main,e)],userEvent:`select.search`}),it(e),!0}),R=I((e,{query:t})=>{let{state:n}=e,{from:r}=n.selection.main,i=t.prevMatch(n,r,r);if(!i)return!1;let a=c.single(i.from,i.to),o=e.state.facet(D);return e.dispatch({selection:a,effects:[W(e,i),o.scrollToMatch(a.main,e)],userEvent:`select.search`}),it(e),!0}),$e=I((e,{query:t})=>{let n=t.matchAll(e.state,1e3);return!n||!n.length?!1:(e.dispatch({selection:c.create(n.map(e=>c.range(e.from,e.to))),userEvent:`select.search.matches`}),!0)}),et=({state:e,dispatch:t})=>{let n=e.selection;if(n.ranges.length>1||n.main.empty)return!1;let{from:r,to:i}=n.main,a=[],o=0;for(let t=new x(e.doc,e.sliceDoc(r,i));!t.next().done;){if(a.length>1e3)return!1;t.value.from==r&&(o=a.length),a.push(c.range(t.value.from,t.value.to))}return t(e.update({selection:c.create(a,o),userEvent:`select.search.matches`})),!0},tt=I((e,{query:t})=>{let{state:n}=e,{from:r,to:i}=n.selection.main;if(n.readOnly)return!1;let a=t.nextMatch(n,r,r);if(!a)return!1;let o=a,s=[],l,u,d=[];o.from==r&&o.to==i&&(u=n.toText(t.getReplacement(o)),s.push({from:o.from,to:o.to,insert:u}),o=t.nextMatch(n,o.from,o.to),d.push(g.announce.of(n.phrase(`replaced match on line $`,n.doc.lineAt(r).number)+`.`)));let f=e.state.changes(s);return o&&(l=c.single(o.from,o.to).map(f),d.push(W(e,o)),d.push(n.facet(D).scrollToMatch(l.main,e))),e.dispatch({changes:f,selection:l,effects:d,userEvent:`input.replace`}),!0}),nt=I((e,{query:t})=>{if(e.state.readOnly)return!1;let n=t.matchAll(e.state,1e9).map(e=>{let{from:n,to:r}=e;return{from:n,to:r,insert:t.getReplacement(e)}});if(!n.length)return!1;let r=e.state.phrase(`replaced $ matches`,n.length)+`.`;return e.dispatch({changes:n,effects:g.announce.of(r),userEvent:`input.replace.all`}),!0});function z(e){return e.state.facet(D).createPanel(e)}function B(e,t){let n=e.selection.main,r=n.empty||n.to>n.from+100?``:e.sliceDoc(n.from,n.to);if(t&&!r)return t;let i=e.facet(D);return new He({search:t?.literal??i.literal?r:r.replace(/\n/g,`\\n`),caseSensitive:t?.caseSensitive??i.caseSensitive,literal:t?.literal??i.literal,regexp:t?.regexp??i.regexp,wholeWord:t?.wholeWord??i.wholeWord})}function rt(e){let t=v(e,z);return t&&t.dom.querySelector(`[main-field]`)}function it(e){let t=rt(e);t&&t==e.root.activeElement&&t.select()}var at=e=>{let t=e.state.field(P,!1);if(t&&t.panel){let n=rt(e);if(n&&n!=e.root.activeElement){let r=B(e.state,t.query.spec);r.valid&&e.dispatch({effects:M.of(r)}),n.focus(),n.select()}}else e.dispatch({effects:[N.of(!0),t?M.of(B(e.state,t.query.spec)):h.appendConfig.of(G)]});return!0},ot=e=>{let t=e.state.field(P,!1);if(!t||!t.panel)return!1;let n=v(e,z);return n&&n.dom.contains(e.root.activeElement)&&e.focus(),e.dispatch({effects:N.of(!1)}),!0},st=[{key:`Mod-f`,run:at,scope:`editor search-panel`},{key:`F3`,run:L,shift:R,scope:`editor search-panel`,preventDefault:!0},{key:`Mod-g`,run:L,shift:R,scope:`editor search-panel`,preventDefault:!0},{key:`Escape`,run:ot,scope:`editor search-panel`},{key:`Mod-Shift-l`,run:et},{key:`Mod-Alt-g`,run:ke},{key:`Mod-d`,run:Be,preventDefault:!0}],ct=class{constructor(e){this.view=e;let t=this.query=e.state.field(P).query.spec;this.commit=this.commit.bind(this),this.searchField=b(`input`,{value:t.search,placeholder:V(e,`Find`),"aria-label":V(e,`Find`),class:`cm-textfield`,name:`search`,form:``,"main-field":`true`,onchange:this.commit,onkeyup:this.commit}),this.replaceField=b(`input`,{value:t.replace,placeholder:V(e,`Replace`),"aria-label":V(e,`Replace`),class:`cm-textfield`,name:`replace`,form:``,onchange:this.commit,onkeyup:this.commit}),this.caseField=b(`input`,{type:`checkbox`,name:`case`,form:``,checked:t.caseSensitive,onchange:this.commit}),this.reField=b(`input`,{type:`checkbox`,name:`re`,form:``,checked:t.regexp,onchange:this.commit}),this.wordField=b(`input`,{type:`checkbox`,name:`word`,form:``,checked:t.wholeWord,onchange:this.commit});function n(e,t,n){return b(`button`,{class:`cm-button`,name:e,onclick:t,type:`button`},n)}this.dom=b(`div`,{onkeydown:e=>this.keydown(e),class:`cm-search`},[this.searchField,n(`next`,()=>L(e),[V(e,`next`)]),n(`prev`,()=>R(e),[V(e,`previous`)]),n(`select`,()=>$e(e),[V(e,`all`)]),b(`label`,null,[this.caseField,V(e,`match case`)]),b(`label`,null,[this.reField,V(e,`regexp`)]),b(`label`,null,[this.wordField,V(e,`by word`)]),...e.state.readOnly?[]:[b(`br`),this.replaceField,n(`replace`,()=>tt(e),[V(e,`replace`)]),n(`replaceAll`,()=>nt(e),[V(e,`replace all`)])],b(`button`,{name:`close`,onclick:()=>ot(e),"aria-label":V(e,`close`),type:`button`},[`×`])])}commit(){let e=new He({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});e.eq(this.query)||(this.query=e,this.view.dispatch({effects:M.of(e)}))}keydown(e){le(this.view,e,`search-panel`)?e.preventDefault():e.keyCode==13&&e.target==this.searchField?(e.preventDefault(),(e.shiftKey?R:L)(this.view)):e.keyCode==13&&e.target==this.replaceField&&(e.preventDefault(),tt(this.view))}update(e){for(let t of e.transactions)for(let e of t.effects)e.is(M)&&!e.value.eq(this.query)&&this.setQuery(e.value)}setQuery(e){this.query=e,this.searchField.value=e.search,this.replaceField.value=e.replace,this.caseField.checked=e.caseSensitive,this.reField.checked=e.regexp,this.wordField.checked=e.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(D).top}};function V(e,t){return e.state.phrase(t)}var H=30,U=/[\s\.,:;?!]/;function W(e,{from:t,to:n}){let r=e.state.doc.lineAt(t),i=e.state.doc.lineAt(n).to,a=Math.max(r.from,t-H),o=Math.min(i,n+H),s=e.state.sliceDoc(a,o);if(a!=r.from){for(let e=0;e<H;e++)if(!U.test(s[e+1])&&U.test(s[e])){s=s.slice(e);break}}if(o!=i){for(let e=s.length-1;e>s.length-H;e--)if(!U.test(s[e-1])&&U.test(s[e])){s=s.slice(0,e);break}}return g.announce.of(`${e.state.phrase(`current match`)}. ${s} ${e.state.phrase(`on line`)} ${r.number}.`)}var lt=g.baseTheme({".cm-panel.cm-search":{padding:`2px 6px 4px`,position:`relative`,"& [name=close]":{position:`absolute`,top:`0`,right:`4px`,backgroundColor:`inherit`,border:`none`,font:`inherit`,padding:0,margin:0},"& input, & button, & label":{margin:`.2em .6em .2em 0`},"& input[type=checkbox]":{marginRight:`.2em`},"& label":{fontSize:`80%`,whiteSpace:`pre`}},"&light .cm-searchMatch":{backgroundColor:`#ffff0054`},"&dark .cm-searchMatch":{backgroundColor:`#00ffff8a`},"&light .cm-searchMatch-selected":{backgroundColor:`#ff6a0054`},"&dark .cm-searchMatch-selected":{backgroundColor:`#ff00ff8a`}}),G=[P,i.low(Qe),lt],ut=class{constructor(e,t,n){this.from=e,this.to=t,this.diagnostic=n}},K=class e{constructor(e,t,n){this.diagnostics=e,this.panel=t,this.selected=n}static init(t,n,r){let i=r.facet(Z).markerFilter;i&&(t=i(t,r));let a=t.slice().sort((e,t)=>e.from-t.from||e.to-t.to),o=new f,s=[],c=0,l=r.doc.iter(),u=0,p=r.doc.length;for(let e=0;;){let t=e==a.length?null:a[e];if(!t&&!s.length)break;let n,r;if(s.length)n=c,r=s.reduce((e,t)=>Math.min(e,t.to),t&&t.from>n?t.from:1e8);else{if(n=t.from,n>p)break;r=t.to,s.push(t),e++}for(;e<a.length;){let t=a[e];if(t.from==n&&(t.to>t.from||t.to==n))s.push(t),e++,r=Math.min(t.to,r);else{r=Math.min(t.from,r);break}}r=Math.min(r,p);let i=!1;if(s.some(e=>e.from==n&&(e.to==r||r==p))&&(i=n==r,!i&&r-n<10)){let e=n-(u+l.value.length);e>0&&(l.next(e),u=n);for(let e=n;;){if(e>=r){i=!0;break}if(!l.lineBreak&&u+l.value.length>e)break;e=u+l.value.length,u+=l.value.length,l.next()}}let f=Ot(s);if(i)o.add(n,n,d.widget({widget:new Ct(f),diagnostics:s.slice()}));else{let e=s.reduce((e,t)=>t.markClass?e+` `+t.markClass:e,``);o.add(n,r,d.mark({class:`cm-lintRange cm-lintRange-`+f+e,diagnostics:s.slice(),inclusiveEnd:s.some(e=>e.to>r)}))}if(c=r,c==p)break;for(let e=0;e<s.length;e++)s[e].to<=c&&s.splice(e--,1)}let m=o.finish();return new e(m,n,q(m))}};function q(e,t=null,n=0){let r=null;return e.between(n,1e9,(e,n,{spec:i})=>{if(!(t&&i.diagnostics.indexOf(t)<0))if(!r)r=new ut(e,n,t||i.diagnostics[0]);else if(i.diagnostics.indexOf(r.diagnostic)<0)return!1;else r=new ut(r.from,n,r.diagnostic)}),r}function dt(e,t){let n=t.pos,r=t.end||n,i=e.state.facet(Z).hideOn(e,n,r);if(i!=null)return i;let a=e.startState.doc.lineAt(t.pos);return!!(e.effects.some(e=>e.is(J))||e.changes.touchesRange(a.from,Math.max(a.to,r)))}function ft(e,t){return e.field(X,!1)?t:t.concat(h.appendConfig.of(kt))}var J=h.define(),Y=h.define(),pt=h.define(),X=l.define({create(){return new K(d.none,null,null)},update(e,t){if(t.docChanged&&e.diagnostics.size){let n=e.diagnostics.map(t.changes),r=null,i=e.panel;if(e.selected){let i=t.changes.mapPos(e.selected.from,1);r=q(n,e.selected.diagnostic,i)||q(n,null,i)}!n.size&&i&&t.state.facet(Z).autoPanel&&(i=null),e=new K(n,i,r)}for(let n of t.effects)if(n.is(J)){let r=t.state.facet(Z).autoPanel?n.value.length?Q.open:null:e.panel;e=K.init(n.value,r,t.state)}else n.is(Y)?e=new K(e.diagnostics,n.value?Q.open:null,e.selected):n.is(pt)&&(e=new K(e.diagnostics,e.panel,n.value));return e},provide:e=>[_.from(e,e=>e.panel),g.decorations.from(e,e=>e.diagnostics)]}),mt=d.mark({class:`cm-lintRange cm-lintRange-active`});function ht(e,t,n){let{diagnostics:r}=e.state.field(X),i,a=-1,o=-1;r.between(t-+(n<0),t+ +(n>0),(e,r,{spec:s})=>{if(t>=e&&t<=r&&(e==r||(t>e||n>0)&&(t<r||n<0)))return i=s.diagnostics,a=e,o=r,!1});let s=e.state.facet(Z).tooltipFilter;return i&&s&&(i=s(i,e.state)),i?{pos:a,end:o,above:e.state.doc.lineAt(a).to<o,create(){return{dom:gt(e,i)}}}:null}function gt(e,t){return b(`ul`,{class:`cm-tooltip-lint`},t.map(t=>St(e,t,!1)))}var _t=e=>{let t=e.state.field(X,!1);(!t||!t.panel)&&e.dispatch({effects:ft(e.state,[Y.of(!0)])});let n=v(e,Q.open);return n&&n.dom.querySelector(`.cm-panel-lint ul`).focus(),!0},vt=e=>{let t=e.state.field(X,!1);return!t||!t.panel?!1:(e.dispatch({effects:Y.of(!1)}),!0)},yt=[{key:`Mod-Shift-m`,run:_t,preventDefault:!0},{key:`F8`,run:e=>{let t=e.state.field(X,!1);if(!t)return!1;let n=e.state.selection.main,r=q(t.diagnostics,null,n.to+1);return!r&&(r=q(t.diagnostics,null,0),!r||r.from==n.from&&r.to==n.to)?!1:(e.dispatch({selection:{anchor:r.from,head:r.to},scrollIntoView:!0}),!0)}}],Z=m.define({combine(e){return{sources:e.map(e=>e.source).filter(e=>e!=null),...a(e.map(e=>e.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:bt,tooltipFilter:bt,needsRefresh:(e,t)=>e?t?n=>e(n)||t(n):e:t,hideOn:(e,t)=>e?t?(n,r,i)=>e(n,r,i)||t(n,r,i):e:t,autoPanel:(e,t)=>e||t})}}});function bt(e,t){return e?t?(n,r)=>t(e(n,r),r):e:t}function xt(e){let t=[];if(e)actions:for(let{name:n}of e){for(let e=0;e<n.length;e++){let r=n[e];if(/[a-zA-Z]/.test(r)&&!t.some(e=>e.toLowerCase()==r.toLowerCase())){t.push(r);continue actions}}t.push(``)}return t}function St(e,t,n){let r=n?xt(t.actions):[];return b(`li`,{class:`cm-diagnostic cm-diagnostic-`+t.severity},b(`span`,{class:`cm-diagnosticText`},t.renderMessage?t.renderMessage(e):t.message),t.actions?.map((n,i)=>{let a=!1,o=r=>{if(r.preventDefault(),a)return;a=!0;let i=q(e.state.field(X).diagnostics,t);i&&n.apply(e,i.from,i.to)},{name:s}=n,c=r[i]?s.indexOf(r[i]):-1,l=c<0?s:[s.slice(0,c),b(`u`,s.slice(c,c+1)),s.slice(c+1)];return b(`button`,{type:`button`,class:`cm-diagnosticAction`+(n.markClass?` `+n.markClass:``),onclick:o,onmousedown:o,"aria-label":` Action: ${s}${c<0?``:` (access key "${r[i]})"`}.`},l)}),t.source&&b(`div`,{class:`cm-diagnosticSource`},t.source))}var Ct=class extends r{constructor(e){super(),this.sev=e}eq(e){return e.sev==this.sev}toDOM(){return b(`span`,{class:`cm-lintPoint cm-lintPoint-`+this.sev})}},wt=class{constructor(e,t){this.diagnostic=t,this.id=`item_`+Math.floor(Math.random()*4294967295).toString(16),this.dom=St(e,t,!0),this.dom.id=this.id,this.dom.setAttribute(`role`,`option`)}},Q=class e{constructor(e){this.view=e,this.items=[],this.list=b(`ul`,{tabIndex:0,role:`listbox`,"aria-label":this.view.state.phrase(`Diagnostics`),onkeydown:t=>{if(!(t.ctrlKey||t.altKey||t.metaKey)){if(t.keyCode==27)vt(this.view),this.view.focus();else if(t.keyCode==38||t.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(t.keyCode==40||t.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(t.keyCode==36)this.moveSelection(0);else if(t.keyCode==35)this.moveSelection(this.items.length-1);else if(t.keyCode==13)this.view.focus();else if(t.keyCode>=65&&t.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:n}=this.items[this.selectedIndex],r=xt(n.actions);for(let i=0;i<r.length;i++)if(r[i].toUpperCase().charCodeAt(0)==t.keyCode){let t=q(this.view.state.field(X).diagnostics,n);t&&n.actions[i].apply(e,t.from,t.to)}}else return;t.preventDefault()}},onclick:e=>{for(let t=0;t<this.items.length;t++)this.items[t].dom.contains(e.target)&&this.moveSelection(t)}}),this.dom=b(`div`,{class:`cm-panel-lint`},this.list,b(`button`,{type:`button`,name:`close`,"aria-label":this.view.state.phrase(`close`),onclick:()=>vt(this.view)},`×`)),this.update()}get selectedIndex(){let e=this.view.state.field(X).selected;if(!e)return-1;for(let t=0;t<this.items.length;t++)if(this.items[t].diagnostic==e.diagnostic)return t;return-1}update(){let{diagnostics:e,selected:t}=this.view.state.field(X),n=0,r=!1,i=null,a=new Set;for(e.between(0,this.view.state.doc.length,(e,o,{spec:s})=>{for(let e of s.diagnostics){if(a.has(e))continue;a.add(e);let o=-1,s;for(let t=n;t<this.items.length;t++)if(this.items[t].diagnostic==e){o=t;break}o<0?(s=new wt(this.view,e),this.items.splice(n,0,s),r=!0):(s=this.items[o],o>n&&(this.items.splice(n,o-n),r=!0)),t&&s.diagnostic==t.diagnostic?s.dom.hasAttribute(`aria-selected`)||(s.dom.setAttribute(`aria-selected`,`true`),i=s):s.dom.hasAttribute(`aria-selected`)&&s.dom.removeAttribute(`aria-selected`),n++}});n<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)r=!0,this.items.pop();this.items.length==0&&(this.items.push(new wt(this.view,{from:-1,to:-1,severity:`info`,message:this.view.state.phrase(`No diagnostics`)})),r=!0),i?(this.list.setAttribute(`aria-activedescendant`,i.id),this.view.requestMeasure({key:this,read:()=>({sel:i.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:e,panel:t})=>{let n=t.height/this.list.offsetHeight;e.top<t.top?this.list.scrollTop-=(t.top-e.top)/n:e.bottom>t.bottom&&(this.list.scrollTop+=(e.bottom-t.bottom)/n)}})):this.selectedIndex<0&&this.list.removeAttribute(`aria-activedescendant`),r&&this.sync()}sync(){let e=this.list.firstChild;function t(){let t=e;e=t.nextSibling,t.remove()}for(let n of this.items)if(n.dom.parentNode==this.list){for(;e!=n.dom;)t();e=n.dom.nextSibling}else this.list.insertBefore(n.dom,e);for(;e;)t()}moveSelection(e){if(this.selectedIndex<0)return;let t=q(this.view.state.field(X).diagnostics,this.items[e].diagnostic);t&&this.view.dispatch({selection:{anchor:t.from,head:t.to},scrollIntoView:!0,effects:pt.of(t)})}static open(t){return new e(t)}};function Tt(e,t=`viewBox="0 0 40 40"`){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${t}>${encodeURIComponent(e)}</svg>')`}function $(e){return Tt(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${e}" fill="none" stroke-width=".7"/>`,`width="6" height="3"`)}var Et=g.baseTheme({".cm-diagnostic":{padding:`3px 6px 3px 8px`,marginLeft:`-1px`,display:`block`,whiteSpace:`pre-wrap`},".cm-diagnostic-error":{borderLeft:`5px solid #d11`},".cm-diagnostic-warning":{borderLeft:`5px solid orange`},".cm-diagnostic-info":{borderLeft:`5px solid #999`},".cm-diagnostic-hint":{borderLeft:`5px solid #66d`},".cm-diagnosticAction":{font:`inherit`,border:`none`,padding:`2px 4px`,backgroundColor:`#444`,color:`white`,borderRadius:`3px`,marginLeft:`8px`,cursor:`pointer`},".cm-diagnosticSource":{fontSize:`70%`,opacity:.7},".cm-lintRange":{backgroundPosition:`left bottom`,backgroundRepeat:`repeat-x`,paddingBottom:`0.7px`},".cm-lintRange-error":{backgroundImage:$(`#d11`)},".cm-lintRange-warning":{backgroundImage:$(`orange`)},".cm-lintRange-info":{backgroundImage:$(`#999`)},".cm-lintRange-hint":{backgroundImage:$(`#66d`)},".cm-lintRange-active":{backgroundColor:`#ffdd9980`},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:`relative`,"&:after":{content:`""`,position:`absolute`,bottom:0,left:`-2px`,borderLeft:`3px solid transparent`,borderRight:`3px solid transparent`,borderBottom:`4px solid #d11`}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:`orange`}},".cm-lintPoint-info":{"&:after":{borderBottomColor:`#999`}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:`#66d`}},".cm-panel.cm-panel-lint":{position:`relative`,"& ul":{maxHeight:`100px`,overflowY:`auto`,"& [aria-selected]":{backgroundColor:`#ddd`,"& u":{textDecoration:`underline`}},"&:focus [aria-selected]":{background_fallback:`#bdf`,backgroundColor:`Highlight`,color_fallback:`white`,color:`HighlightText`},"& u":{textDecoration:`none`},padding:0,margin:0},"& [name=close]":{position:`absolute`,top:`0`,right:`2px`,background:`inherit`,border:`none`,font:`inherit`,padding:0,margin:0}},"&dark .cm-lintRange-active":{backgroundColor:`#86714a80`},"&dark .cm-panel.cm-panel-lint ul":{"& [aria-selected]":{backgroundColor:`#2e343e`}}});function Dt(e){return e==`error`?4:e==`warning`?3:e==`info`?2:1}function Ot(e){let t=`hint`,n=1;for(let r of e){let e=Dt(r.severity);e>n&&(n=e,t=r.severity)}return t}var kt=[X,g.decorations.compute([X],e=>{let{selected:t,panel:n}=e.field(X);return!t||!n||t.from==t.to?d.none:d.set([mt.range(t.from,t.to)])}),de(ht,{hideOn:dt}),Et],At=[ae(),he(),ie(),e(),re(),ge(),pe(),o.allowMultipleSelections.of(!0),s(),p(se,{fallback:!0}),ue(),Ce(),xe(),fe(),oe(),me(),je(),_e.of([...be,...n,...st,...t,...ve,...Se,...yt])];ie(),e(),ge(),p(se,{fallback:!0}),_e.of([...n,...t]);export{Ve as n,At as t};