collabmd 0.1.30 → 0.1.32

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 (427) hide show
  1. package/dist/client/assets/{CodeMirrorEditor-UCMRAMCV-tj0_ycIx.js → CodeMirrorEditor-UCMRAMCV-Bg0dawOb.js} +1 -1
  2. package/dist/client/assets/{_basePickBy-B6kIfhzj.js → _basePickBy-Dv0sK1l7.js} +1 -1
  3. package/dist/client/assets/{_baseUniq-Bbn0_sHS.js → _baseUniq-DKYX57ji.js} +1 -1
  4. package/dist/client/assets/{ar-SA-NXDWD63E-BWO5oYxe.js → ar-SA-NXDWD63E-WivLHHDW.js} +1 -1
  5. package/dist/client/assets/{arc-BIqum3oD.js → arc-DrfYGhWk.js} +1 -1
  6. package/dist/client/assets/architecture-PBZL5I3N-DiglIZi9.js +1 -0
  7. package/dist/client/assets/{architectureDiagram-2XIMDMQ5-BPG5b65m.js → architectureDiagram-2XIMDMQ5-kYbOThe4.js} +1 -1
  8. package/dist/client/assets/{az-AZ-MXSORGZV-Cfw6Z5oY.js → az-AZ-MXSORGZV-DOdq1TKC.js} +1 -1
  9. package/dist/client/assets/{bg-BG-O6MV2KSF-CQmG3YpD.js → bg-BG-O6MV2KSF-CYucKuDS.js} +1 -1
  10. package/dist/client/assets/{blockDiagram-WCTKOSBZ-F38TRzI3.js → blockDiagram-WCTKOSBZ-GIgTqnhk.js} +1 -1
  11. package/dist/client/assets/{bn-IN-MMW2ORAC-DZKVshfk.js → bn-BD-T2VJNT7N-2OKWLCYa.js} +1 -1
  12. package/dist/client/assets/{bn-BD-T2VJNT7N-C4S6DZ6o.js → bn-IN-MMW2ORAC-DYr8kqNL.js} +1 -1
  13. package/dist/client/assets/{c4Diagram-IC4MRINW-DHwxcDlQ.js → c4Diagram-IC4MRINW-CkHO1i_L.js} +1 -1
  14. package/dist/client/assets/{ca-ES-MKBCGNOG-Do3aMgyu.js → ca-ES-MKBCGNOG-B9Aeb43I.js} +1 -1
  15. package/dist/client/assets/channel-CgsU9TSN.js +1 -0
  16. package/dist/client/assets/{chunk-4BX2VUAB-BqEY6cCE.js → chunk-4BX2VUAB-2e7V-uuE.js} +1 -1
  17. package/dist/client/assets/{chunk-55IACEB6-039iVf6v.js → chunk-55IACEB6-CpncB3ru.js} +1 -1
  18. package/dist/client/assets/{chunk-7E7YKBS2-BreG0gYL.js → chunk-7E7YKBS2-TdU92i9i.js} +1 -1
  19. package/dist/client/assets/{chunk-7R4GIKGN-BMrp52Pk.js → chunk-7R4GIKGN-mqd2GwMg.js} +2 -2
  20. package/dist/client/assets/{chunk-C72U2L5F-BLB26v5d.js → chunk-C72U2L5F-CJKQWBtz.js} +1 -1
  21. package/dist/client/assets/{chunk-EGIJ26TM-fG-0Yh0k.js → chunk-EGIJ26TM-C4nq20om.js} +1 -1
  22. package/dist/client/assets/{chunk-FMBD7UC4-EWK5Pt4D.js → chunk-FMBD7UC4-CMahlBa_.js} +1 -1
  23. package/dist/client/assets/{chunk-GEFDOKGD-DYHmaq-c.js → chunk-GEFDOKGD-Bs7FmFox.js} +1 -1
  24. package/dist/client/assets/chunk-GLR3WWYH-qQe2O5VQ.js +2 -0
  25. package/dist/client/assets/chunk-HHEYEP7N-DlevL8bq.js +1 -0
  26. package/dist/client/assets/{chunk-JSJVCQXG-B69YGtcQ.js → chunk-JSJVCQXG-DPQ9cPJt.js} +1 -1
  27. package/dist/client/assets/{chunk-KX2RTZJC-tuEC7hg1.js → chunk-KX2RTZJC-BTiOJb7N.js} +1 -1
  28. package/dist/client/assets/{chunk-KYZI473N-D4r5eMJZ.js → chunk-KYZI473N-CTSCuqRb.js} +1 -1
  29. package/dist/client/assets/{chunk-L3YUKLVL-CD9nJYL8.js → chunk-L3YUKLVL-CJZMBtKF.js} +1 -1
  30. package/dist/client/assets/{chunk-MX3YWQON-DqN0TF5Q.js → chunk-MX3YWQON-DQpSwRf6.js} +1 -1
  31. package/dist/client/assets/{chunk-NQ4KR5QH-BBX89uUa.js → chunk-NQ4KR5QH-CMJKI6Oj.js} +1 -1
  32. package/dist/client/assets/{chunk-NU2UP6EN-CGeKI3BV.js → chunk-NU2UP6EN-DlUENSHU.js} +4 -4
  33. package/dist/client/assets/{chunk-O4XLMI2P-DaS3COAu.js → chunk-O4XLMI2P-CcVxZh41.js} +1 -1
  34. package/dist/client/assets/{chunk-OZEHJAEY-BaBXI-8x.js → chunk-OZEHJAEY-DjBZbgu0.js} +1 -1
  35. package/dist/client/assets/{chunk-PQ6SQG4A-BY9_Srs_.js → chunk-PQ6SQG4A-D1AbThjy.js} +1 -1
  36. package/dist/client/assets/{chunk-PU5JKC2W-t0zUh6E3.js → chunk-PU5JKC2W-D_6N6t8f.js} +1 -1
  37. package/dist/client/assets/chunk-QZHKN3VN-CgLPFSk5.js +1 -0
  38. package/dist/client/assets/{chunk-R5LLSJPH-BjSMFnTi.js → chunk-R5LLSJPH-CkjKXM73.js} +1 -1
  39. package/dist/client/assets/{chunk-WL4C6EOR-zSV-8h7F.js → chunk-WL4C6EOR-axcuKSup.js} +1 -1
  40. package/dist/client/assets/{chunk-XIRO2GV7-2tirYN5A.js → chunk-XIRO2GV7-4wqVHjs_.js} +1 -1
  41. package/dist/client/assets/{chunk-XPW4576I-C0GpOUHf.js → chunk-XPW4576I-DJr4_4Yy.js} +1 -1
  42. package/dist/client/assets/{chunk-XZSTWKYB-DDkpyNVE.js → chunk-XZSTWKYB-C8Y_hIKZ.js} +1 -1
  43. package/dist/client/assets/{chunk-YBOYWFTD-CzyyfGQX.js → chunk-YBOYWFTD-CKg4ymFF.js} +1 -1
  44. package/dist/client/assets/{chunk-Z5NKEFVG-Dgem5v98.js → chunk-Z5NKEFVG-HOkYqaKa.js} +1 -1
  45. package/dist/client/assets/classDiagram-VBA2DB6C-BHZpvOxK.js +1 -0
  46. package/dist/client/assets/classDiagram-v2-RAHNMMFH-DA7HMUUs.js +1 -0
  47. package/dist/client/assets/clone-Dgi8Z4IL.js +1 -0
  48. package/dist/client/assets/{cose-bilkent-S5V4N54A-jZzFUguD.js → cose-bilkent-S5V4N54A-DASO2hrk.js} +1 -1
  49. package/dist/client/assets/{cs-CZ-V77HGUP7-DmZRJ2UO.js → cs-CZ-V77HGUP7-BDg-F0CJ.js} +1 -1
  50. package/dist/client/assets/{da-DK-I5RFNTM4-CRIiLQ-G.js → da-DK-I5RFNTM4-wtSQ0Jxa.js} +1 -1
  51. package/dist/client/assets/{dagre-fvYjRtTE.js → dagre-CfB3Fw33.js} +1 -1
  52. package/dist/client/assets/{dagre-KLK3FWXG-CAG8WeES.js → dagre-KLK3FWXG-CC7tq2Ky.js} +1 -1
  53. package/dist/client/assets/{de-DE-DTI4WUSC-MFge9MC3.js → de-CH-WLRDEVBV-C1swvmZy.js} +1 -1
  54. package/dist/client/assets/{de-CH-WLRDEVBV-k728UA4j.js → de-DE-DTI4WUSC-C0L6Nz8X.js} +1 -1
  55. package/dist/client/assets/{diagram-E7M64L7V-Bm5FD0I5.js → diagram-E7M64L7V-CMt7BN5M.js} +1 -1
  56. package/dist/client/assets/{diagram-IFDJBPK2-pqicH-av.js → diagram-IFDJBPK2-BFMBUGpd.js} +1 -1
  57. package/dist/client/assets/{diagram-P4PSJMXO-DwIXO27H.js → diagram-P4PSJMXO-CviA1xXr.js} +1 -1
  58. package/dist/client/assets/dist-8Igu3Ee_2.js +1 -0
  59. package/dist/client/assets/dist-B4uQVR_X.js +1 -0
  60. package/dist/client/assets/{dockerfile-C0qQqxf9.js → dockerfile-D8_6_FRV.js} +1 -1
  61. package/dist/client/assets/{drawio-editor-CTZtMo1J.js → drawio-editor-Br4qyh3r.js} +1 -1
  62. package/dist/client/assets/drawioEditor-ClmnTx5J.js +2 -0
  63. package/dist/client/assets/editor-session-Cf-iV5-3.js +16 -0
  64. package/dist/client/assets/{el-GR-ZXDJ2OS4-Bbz93mrG.js → el-GR-ZXDJ2OS4-BH0saXds.js} +1 -1
  65. package/dist/client/assets/embedded-editor-base-CgEkjNYn.css +1 -0
  66. package/dist/client/assets/{en-IQZW2TQM-CZeIyvu2.js → en-IQZW2TQM-CzlcEpq3.js} +1 -1
  67. package/dist/client/assets/{erDiagram-INFDFZHY-DlhPv4az.js → erDiagram-INFDFZHY-DlIf-fb7.js} +1 -1
  68. package/dist/client/assets/{es-ES-DYQHAD43-CReXU-Nn.js → es-ES-DYQHAD43-CyzL9Mni.js} +1 -1
  69. package/dist/client/assets/{eu-ES-QDSYU5Y3-jRpcaWwz.js → eu-ES-QDSYU5Y3-D2-x316S.js} +1 -1
  70. package/dist/client/assets/{excalidraw-editor-CBEWfuhb.js → excalidraw-editor-CXAxVhlw.js} +2 -2
  71. package/dist/client/assets/{excalidraw-mermaid-stub-efoh2lJm.js → excalidraw-mermaid-stub-Bwe-bKcT.js} +1 -1
  72. package/dist/client/assets/{excalidraw-scene-BL-OtvCd.js → excalidraw-scene-BF_bT1OL.js} +8 -8
  73. package/dist/client/assets/excalidrawEditor-DoH_kMdu.js +2 -0
  74. package/dist/client/assets/export-page-PeexH2QK.js +39 -0
  75. package/dist/client/assets/exportDocument-9wTrBZNS.css +1 -0
  76. package/dist/client/assets/exportDocument-Bia2hI25.js +2 -0
  77. package/dist/client/assets/{fa-IR-26LZG4PM-DP8pJ8e3.js → fa-IR-26LZG4PM-D8-trU2x.js} +1 -1
  78. package/dist/client/assets/{factor-2uy-lXe_.js → factor-Cz-hzBGH.js} +1 -1
  79. package/dist/client/assets/{fi-FI-6YS4KDE4-BLUDpNOj.js → fi-FI-6YS4KDE4-CCdRVFDQ.js} +1 -1
  80. package/dist/client/assets/file-kind-DBptLlF_.js +1 -0
  81. package/dist/client/assets/{flowDiagram-PKNHOUZH-BU4MOSq8.js → flowDiagram-PKNHOUZH-C_t-mkwb.js} +1 -1
  82. package/dist/client/assets/{fr-FR-BRLLPTZC-BoZz3Pi8.js → fr-FR-BRLLPTZC-Dqq-O5T_.js} +1 -1
  83. package/dist/client/assets/{ganttDiagram-A5KZAMGK-CbX67lZu.js → ganttDiagram-A5KZAMGK-BtK9Tb--.js} +1 -1
  84. package/dist/client/assets/gitGraph-HDMCJU4V-CT7YfbD3.js +1 -0
  85. package/dist/client/assets/{gitGraphDiagram-K3NZZRJ6-DhyvWcW1.js → gitGraphDiagram-K3NZZRJ6-DULDLGiJ.js} +1 -1
  86. package/dist/client/assets/{gl-ES-OKUZTLYG-CaEvhjDi.js → gl-ES-OKUZTLYG-BK7pbLbm.js} +1 -1
  87. package/dist/client/assets/{graphlib-DSzYgMXB.js → graphlib-BgRST-Qg.js} +1 -1
  88. package/dist/client/assets/{he-IL-26MGYIU7-DYOchgy9.js → he-IL-26MGYIU7-C3BuYKyY.js} +1 -1
  89. package/dist/client/assets/{hi-IN-Q4ZOGTP2-yRs8g46n.js → hi-IN-Q4ZOGTP2-BEvXWXnH.js} +1 -1
  90. package/dist/client/assets/{hu-HU-P2OXPSN5-1skPmtgc.js → hu-HU-P2OXPSN5-BWWZeJNp.js} +1 -1
  91. package/dist/client/assets/{id-ID-2EIKXYN6-iUugQJd9.js → id-ID-2EIKXYN6-DxSKi_aJ.js} +1 -1
  92. package/dist/client/assets/image-XLNPCCAD-CFiKwiWK.js +1 -0
  93. package/dist/client/assets/{index-CywRKxsk.js → index-C8QZYHvV.js} +2 -2
  94. package/dist/client/assets/index-CxSbUTs2.css +1 -0
  95. package/dist/client/assets/info-3K5VOQVL-DUpNyDC-.js +1 -0
  96. package/dist/client/assets/{infoDiagram-LFFYTUFH-Bap6MyHX.js → infoDiagram-LFFYTUFH-DFTI0nfs.js} +1 -1
  97. package/dist/client/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2 +0 -0
  98. package/dist/client/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2 +0 -0
  99. package/dist/client/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2 +0 -0
  100. package/dist/client/assets/inter-greek-wght-normal-CkhJZR-_.woff2 +0 -0
  101. package/dist/client/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2 +0 -0
  102. package/dist/client/assets/inter-latin-wght-normal-Dx4kXJAl.woff2 +0 -0
  103. package/dist/client/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2 +0 -0
  104. package/dist/client/assets/{isEmpty-C7iPDOO3.js → isEmpty-CVvRj8fj.js} +1 -1
  105. package/dist/client/assets/{ishikawaDiagram-PHBUUO56-DbftskqN.js → ishikawaDiagram-PHBUUO56-DpBuDpC6.js} +1 -1
  106. package/dist/client/assets/{it-IT-4CFKVXI2-a5DFhzuI.js → it-IT-4CFKVXI2-BmA8wW6q.js} +1 -1
  107. package/dist/client/assets/{ja-JP-MAND2Z4V-DwogHVKd.js → ja-JP-MAND2Z4V-CLS1jI9o.js} +1 -1
  108. package/dist/client/assets/javascript-UJe68_xi.js +1 -0
  109. package/dist/client/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2 +0 -0
  110. package/dist/client/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff +0 -0
  111. package/dist/client/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff +0 -0
  112. package/dist/client/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2 +0 -0
  113. package/dist/client/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff +0 -0
  114. package/dist/client/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2 +0 -0
  115. package/dist/client/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2 +0 -0
  116. package/dist/client/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff +0 -0
  117. package/dist/client/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff +0 -0
  118. package/dist/client/assets/{journeyDiagram-4ABVD52K-165YoX6B.js → journeyDiagram-4ABVD52K-DDur6iHm.js} +1 -1
  119. package/dist/client/assets/{kaa-HQRTCXTJ-p81XNRfH.js → kaa-HQRTCXTJ-W15DEDPz.js} +1 -1
  120. package/dist/client/assets/{kab-KAB-JKIKKTGH-mV5VzQZc.js → kab-KAB-JKIKKTGH-MLh1inqS.js} +1 -1
  121. package/dist/client/assets/{kanban-definition-K7BYSVSG-MlixoNyx.js → kanban-definition-K7BYSVSG-dA6NPLsg.js} +1 -1
  122. package/dist/client/assets/{kk-KZ-HXQ63ZFC-IIPX0GQv.js → kk-KZ-HXQ63ZFC-BtFrPeLs.js} +1 -1
  123. package/dist/client/assets/{km-KH-PKL3LSGX-D7WQFJuZ.js → km-KH-PKL3LSGX-xO5FyM9T.js} +1 -1
  124. package/dist/client/assets/{ko-KR-KXLREZX3-Bs1oLtJs.js → ko-KR-KXLREZX3-NZFoRybS.js} +1 -1
  125. package/dist/client/assets/{ku-TR-MJ4IER3X-DlxOs6aZ.js → ku-TR-MJ4IER3X-B5eVPIpK.js} +1 -1
  126. package/dist/client/assets/{line-D57TbKb7.js → line-B2GMovaI.js} +1 -1
  127. package/dist/client/assets/{linear-BIf852wI.js → linear-B2dOdA24.js} +1 -1
  128. package/dist/client/assets/{lt-LT-H6WFQ6FJ-xuo-3zKH.js → lt-LT-H6WFQ6FJ-D_7_OeJD.js} +1 -1
  129. package/dist/client/assets/{lv-LV-GOCK6SJW-C7S3M1nr.js → lv-LV-GOCK6SJW-CnpKr0oQ.js} +1 -1
  130. package/dist/client/assets/main-BjHHMlv0.js +1249 -0
  131. package/dist/client/assets/{mermaid-parser.core-lf87rdG-.js → mermaid-parser.core-B1ogGcR8.js} +2 -2
  132. package/dist/client/assets/{mermaid-runtime-C4a7TrTS.js → mermaid-runtime-Bn8A6DGx.js} +3 -3
  133. package/dist/client/assets/{mindmap-definition-YRQLILUH-_YbQSc4Q.js → mindmap-definition-YRQLILUH-DjQcsPoe.js} +1 -1
  134. package/dist/client/assets/{mr-IN-IXVLDMEQ-BsoowyZT.js → mr-IN-IXVLDMEQ-Pht2X_GK.js} +1 -1
  135. package/dist/client/assets/{my-MM-YG6MYTTD-DCqwN_K_.js → my-MM-YG6MYTTD-Cgq4HhPO.js} +1 -1
  136. package/dist/client/assets/{nb-NO-XGWJISD2-CZ5ytLgj.js → nb-NO-XGWJISD2-Bn_Bk2un.js} +1 -1
  137. package/dist/client/assets/{nl-NL-XVDVCPNC-wADsdb-h.js → nl-NL-XVDVCPNC-YkWSJS94.js} +1 -1
  138. package/dist/client/assets/{nn-NO-EMX5MJX5-D9zIKTL2.js → nn-NO-EMX5MJX5-DhP5eZJ7.js} +1 -1
  139. package/dist/client/assets/{nsis-CUd4RnvJ.js → nsis-QPGhLAeY.js} +1 -1
  140. package/dist/client/assets/{oc-FR-ROEINTVO-BSbBugJB.js → oc-FR-ROEINTVO-D3udMPnr.js} +1 -1
  141. package/dist/client/assets/{ordinal-B0PAtOQ6.js → ordinal-Dz3y_j0K.js} +1 -1
  142. package/dist/client/assets/{pa-IN-ZYN6SUDY-1pFA_3Pb.js → pa-IN-ZYN6SUDY-CR5YzFig.js} +1 -1
  143. package/dist/client/assets/packet-RMMSAZCW-DEwNbIrA.js +1 -0
  144. package/dist/client/assets/percentages-5DKR754L-D7n4T776.js +1 -0
  145. package/dist/client/assets/pie-UPGHQEXC-D5M_lSjo.js +1 -0
  146. package/dist/client/assets/{pieDiagram-SKSYHLDU-CqCgXFom.js → pieDiagram-SKSYHLDU-jhHouFpk.js} +1 -1
  147. package/dist/client/assets/{pl-PL-6VTG7PHC-DyYw0u_z.js → pl-PL-6VTG7PHC-_wZuoIDM.js} +1 -1
  148. package/dist/client/assets/preview-render-compiler-BjLlHmiQ.js +35 -0
  149. package/dist/client/assets/preview-render-compiler-Duy_3IcP.js +1 -0
  150. package/dist/client/assets/{preview-render-worker-BVbVXXPS.js → preview-render-worker-B4dH2yxj.js} +22 -22
  151. package/dist/client/assets/{pt-BR-5YFKRR5G-DJCCBBDl.js → pt-BR-5YFKRR5G-M7gIm2Hi.js} +1 -1
  152. package/dist/client/assets/{pt-PT-GEIXXZ67-BPJd09Ax.js → pt-PT-GEIXXZ67-CcxWpkGj.js} +1 -1
  153. package/dist/client/assets/{pug-BqBF8qF7.js → pug-DkUcLYWt.js} +1 -1
  154. package/dist/client/assets/{quadrantDiagram-337W2JSQ-B8eMuhg4.js → quadrantDiagram-337W2JSQ-CYKgdx7K.js} +1 -1
  155. package/dist/client/assets/quick-switcher-controller-DcyllYpm.js +5 -0
  156. package/dist/client/assets/radar-KQ55EAFF-AU1qh3Bw.js +1 -0
  157. package/dist/client/assets/{requirementDiagram-Z7DCOOCP-B6POvqz4.js → requirementDiagram-Z7DCOOCP-D9SHxoW7.js} +1 -1
  158. package/dist/client/assets/{ro-RO-E2P6TFZI-DWVyTV7V.js → ro-RO-E2P6TFZI-qR9noVzP.js} +1 -1
  159. package/dist/client/assets/{room-COWSP--i.js → room-yJaBAoEU.js} +1 -1
  160. package/dist/client/assets/{ru-RU-YBIIY43T-Dyar7CYM.js → ru-RU-YBIIY43T-CE4S_RX8.js} +1 -1
  161. package/dist/client/assets/{sankeyDiagram-WA2Y5GQK-CXRga6Op.js → sankeyDiagram-WA2Y5GQK-CfHe3D6R.js} +1 -1
  162. package/dist/client/assets/{sequenceDiagram-2WXFIKYE-CeSFlFx5.js → sequenceDiagram-2WXFIKYE-CZsMMqAJ.js} +1 -1
  163. package/dist/client/assets/{si-LK-673C2CI2-C61aLrIy.js → si-LK-673C2CI2-Bv6Avh3z.js} +1 -1
  164. package/dist/client/assets/{sk-SK-CKZHQ4AP-BlFwOxRD.js → sk-SK-CKZHQ4AP-Cnlpp55z.js} +1 -1
  165. package/dist/client/assets/{sl-SI-557H2GWM-DcAVW-_t.js → sl-SI-557H2GWM-BfGq7AQF.js} +1 -1
  166. package/dist/client/assets/{stateDiagram-RAJIS63D-DbewhqwJ.js → stateDiagram-RAJIS63D-CoNZjTYV.js} +1 -1
  167. package/dist/client/assets/stateDiagram-v2-FVOUBMTO-1zOw6NmQ.js +1 -0
  168. package/dist/client/assets/subset-shared.chunk-C9HjwTXy.js +1 -0
  169. package/dist/client/assets/{subset-worker.chunk-DVGT6bvR.js → subset-worker.chunk-BSCP6IiC.js} +1 -1
  170. package/dist/client/assets/{sv-SE-XOPKKDWS-BkhfOHzh.js → sv-SE-XOPKKDWS-B2_Vk-sp.js} +1 -1
  171. package/dist/client/assets/{ta-IN-XBH7DQI3-BIfwglZa.js → ta-IN-XBH7DQI3-BXQMZZIx.js} +1 -1
  172. package/dist/client/assets/{th-TH-TOCWH3R4-CkrxqVkf.js → th-TH-TOCWH3R4-C-ZIYMfH.js} +1 -1
  173. package/dist/client/assets/{timeline-definition-YZTLITO2-BXBHNWLQ.js → timeline-definition-YZTLITO2-DSe2mrG8.js} +1 -1
  174. package/dist/client/assets/{tr-TR-GXW6CYY5-CDdvG9rD.js → tr-TR-GXW6CYY5-dl702PMA.js} +1 -1
  175. package/dist/client/assets/treemap-KZPCXAKY-C9UI2fwP.js +1 -0
  176. package/dist/client/assets/{uk-UA-IJKTNUDG-DRHp0lWp.js → uk-UA-IJKTNUDG-CUYQvSSF.js} +1 -1
  177. package/dist/client/assets/{uz-UZ-TBZZEA4V-BIn-VE3Y.js → uz-UZ-TBZZEA4V-B9qw0PXX.js} +1 -1
  178. package/dist/client/assets/vault-api-client-Bf9tB_GW.js +1 -0
  179. package/dist/client/assets/vault-api-client-D7Ck0CvR.css +1 -0
  180. package/dist/client/assets/vault-utils-5Xr0MXCb.js +1 -0
  181. package/dist/client/assets/{vennDiagram-LZ73GAT5-C1hrSbf2.js → vennDiagram-LZ73GAT5-xSzaIpy1.js} +1 -1
  182. package/dist/client/assets/{vi-VN-MULSGNVB-Du7t5I0v.js → vi-VN-MULSGNVB-DqxZ_sVc.js} +1 -1
  183. package/dist/client/assets/{xychartDiagram-JWTSCODW-DhpWp8LV.js → xychartDiagram-JWTSCODW-C3vA70iJ.js} +1 -1
  184. package/dist/client/assets/{zh-CN-MVX3E32U-RcjS3rjt.js → zh-CN-MVX3E32U-BM0aLuGc.js} +1 -1
  185. package/dist/client/assets/{zh-HK-JNU5RLIE-g8UeEw5v.js → zh-HK-JNU5RLIE-dmG_YD0d.js} +1 -1
  186. package/dist/client/assets/{zh-TW-LENVCA6T-DwV25BqC.js → zh-TW-LENVCA6T-LFgbiOi3.js} +1 -1
  187. package/dist/client/drawio-editor.html +1 -1
  188. package/dist/client/excalidraw-editor.html +1 -1
  189. package/dist/client/export-document.html +3 -3
  190. package/dist/client/index.html +2 -2
  191. package/package.json +5 -1
  192. package/src/client/app/export-document.html +1 -1
  193. package/src/client/app/main-entry.js +2 -0
  194. package/src/client/application/app-shell/git-feature.js +28 -36
  195. package/src/client/application/app-shell/presence-feature.js +3 -1
  196. package/src/client/application/app-shell/workspace-feature.js +9 -0
  197. package/src/client/application/app-shell-elements.js +1 -0
  198. package/src/client/application/diagram-preview-hydrator.js +24 -15
  199. package/src/client/application/markdown-frontmatter.js +1 -56
  200. package/src/client/application/mermaid-preview-hydrator.js +121 -4
  201. package/src/client/application/plantuml-preview-hydrator.js +6 -16
  202. package/src/client/application/preview-render-compiler.js +50 -6
  203. package/src/client/application/preview-renderer.js +11 -2
  204. package/src/client/application/workspace-chrome-controller.js +25 -19
  205. package/src/client/application/workspace-coordinator.js +9 -0
  206. package/src/client/application/workspace-preview-controller.js +48 -3
  207. package/src/client/bootstrap/collabmd-app-shell.js +202 -52
  208. package/src/client/domain/excalidraw-document-switch.js +3 -0
  209. package/src/client/domain/vault-paths.js +19 -0
  210. package/src/client/excalidraw-editor.js +187 -84
  211. package/src/client/export/export-page.js +11 -3
  212. package/src/client/export/export-pipeline.js +77 -2
  213. package/src/client/infrastructure/auth-client.js +4 -4
  214. package/src/client/infrastructure/backlinks-api-client.js +18 -0
  215. package/src/client/infrastructure/comment-thread-store.js +4 -0
  216. package/src/client/infrastructure/editor-session.js +2 -0
  217. package/src/client/infrastructure/editor-view-adapter.js +8 -5
  218. package/src/client/infrastructure/git-api-client.js +134 -0
  219. package/src/client/infrastructure/plantuml-api-client.js +21 -0
  220. package/src/client/infrastructure/vault-api-client.js +121 -0
  221. package/src/client/presentation/app-shell-template.js +12 -0
  222. package/src/client/presentation/backlinks-panel.js +43 -20
  223. package/src/client/presentation/bases-preview-controller.js +463 -0
  224. package/src/client/presentation/excalidraw-embed-controller.js +251 -15
  225. package/src/client/presentation/excalidraw-embed-reconciler.js +0 -1
  226. package/src/client/presentation/file-action-controller.js +140 -0
  227. package/src/client/presentation/file-explorer-controller.js +2 -0
  228. package/src/client/presentation/file-explorer-view.js +378 -2
  229. package/src/client/presentation/file-history-view-controller.js +41 -40
  230. package/src/client/presentation/file-tree-state.js +9 -1
  231. package/src/client/presentation/git-diff-view-controller.js +70 -53
  232. package/src/client/presentation/git-panel-controller.js +12 -30
  233. package/src/client/presentation/quick-switcher-controller.js +54 -13
  234. package/src/client/styles/export-document.css +55 -0
  235. package/src/client/styles/features/auth-gate.css +13 -24
  236. package/src/client/styles/features/backlinks.css +65 -3
  237. package/src/client/styles/features/comment-card.css +6 -0
  238. package/src/client/styles/features/comments-drawer.css +38 -18
  239. package/src/client/styles/features/diagram-preview.css +33 -0
  240. package/src/client/styles/features/embedded-preview.css +37 -11
  241. package/src/client/styles/features/preview-markdown.css +285 -1
  242. package/src/client/styles/foundation/themes.css +4 -0
  243. package/src/client/styles/foundation/tokens.css +4 -3
  244. package/src/client/styles/layout/shell.css +8 -1
  245. package/src/client/styles/layout/sidebar.css +72 -0
  246. package/src/client/styles/layout/view-modes.css +5 -0
  247. package/src/domain/file-kind.js +17 -2
  248. package/src/domain/wiki-link-resolver.js +41 -23
  249. package/src/domain/yaml-frontmatter.js +59 -0
  250. package/src/server/auth/auth-common.js +224 -0
  251. package/src/server/auth/auth-constants.js +30 -0
  252. package/src/server/auth/auth-strategies.js +320 -0
  253. package/src/server/auth/create-auth-service.js +24 -545
  254. package/src/server/create-app-server.js +11 -2
  255. package/src/server/domain/backlink-index.js +102 -16
  256. package/src/server/domain/bases/base-definition.js +255 -0
  257. package/src/server/domain/bases/base-expression-runtime.js +1159 -0
  258. package/src/server/domain/bases/base-index-snapshot-store.js +418 -0
  259. package/src/server/domain/bases/base-query-results.js +205 -0
  260. package/src/server/domain/bases/base-query-service.js +204 -0
  261. package/src/server/domain/collaboration/collaboration-document-store.js +13 -2
  262. package/src/server/domain/collaboration/collaboration-room.js +36 -1
  263. package/src/server/domain/collaboration/room-client-state-store.js +1 -0
  264. package/src/server/domain/collaboration/room-persistence-controller.js +1 -1
  265. package/src/server/domain/workspace-state.js +52 -0
  266. package/src/server/infrastructure/http/create-request-handler.js +2 -0
  267. package/src/server/infrastructure/http/create-vault-api-command-handler.js +5 -0
  268. package/src/server/infrastructure/http/create-vault-api-handler.js +2 -0
  269. package/src/server/infrastructure/http/create-vault-api-query-handler.js +175 -1
  270. package/src/server/infrastructure/http/http-response.js +56 -0
  271. package/src/server/infrastructure/persistence/path-utils.js +1 -1
  272. package/src/server/infrastructure/persistence/vault-content-adapter.js +6 -0
  273. package/src/server/infrastructure/persistence/vault-file-store.js +124 -0
  274. package/src/server/infrastructure/workspace/file-system-sync-service.js +110 -19
  275. package/src/server/infrastructure/workspace/workspace-mutation-coordinator.js +15 -44
  276. package/dist/client/assets/architecture-PBZL5I3N-iRyVT2GQ.js +0 -1
  277. package/dist/client/assets/channel-s0w88EQN.js +0 -1
  278. package/dist/client/assets/chunk-GLR3WWYH-CQ1LryrI.js +0 -2
  279. package/dist/client/assets/chunk-HHEYEP7N-DOQ0PCdH.js +0 -1
  280. package/dist/client/assets/chunk-QZHKN3VN-B0v4d-CS.js +0 -1
  281. package/dist/client/assets/classDiagram-VBA2DB6C-BQqG4q1b.js +0 -1
  282. package/dist/client/assets/classDiagram-v2-RAHNMMFH-BUKbprX1.js +0 -1
  283. package/dist/client/assets/clone-C-n46MFF.js +0 -1
  284. package/dist/client/assets/dist-BqQjnEWr.js +0 -1
  285. package/dist/client/assets/drawioEditor-keSJVTcv.js +0 -2
  286. package/dist/client/assets/editor-session-C9l9XwVg.js +0 -16
  287. package/dist/client/assets/embedded-editor-base-DgmRcsR8.css +0 -1
  288. package/dist/client/assets/excalidrawEditor-Ws-fwGOc.js +0 -2
  289. package/dist/client/assets/export-page-B6xYnwy7.js +0 -39
  290. package/dist/client/assets/exportDocument-8JBw0p8O.js +0 -2
  291. package/dist/client/assets/exportDocument-CtX_4PSk.css +0 -1
  292. package/dist/client/assets/gitGraph-HDMCJU4V-kkuqHGSM.js +0 -1
  293. package/dist/client/assets/image-XLNPCCAD-B4wZgh-Y.js +0 -1
  294. package/dist/client/assets/index-R4OArFku.css +0 -1
  295. package/dist/client/assets/info-3K5VOQVL-DPN78whf.js +0 -1
  296. package/dist/client/assets/javascript-8DvdgifH.js +0 -1
  297. package/dist/client/assets/main-CB97rY6B.js +0 -1213
  298. package/dist/client/assets/packet-RMMSAZCW-BymvQ5cQ.js +0 -1
  299. package/dist/client/assets/percentages-5DKR754L-CiI2D7zA.js +0 -1
  300. package/dist/client/assets/pie-UPGHQEXC-MmzJzWOE.js +0 -1
  301. package/dist/client/assets/preview-render-compiler-TmHpBDlh.js +0 -1
  302. package/dist/client/assets/preview-render-compiler-aYpnXmNm.js +0 -35
  303. package/dist/client/assets/quick-switcher-controller-DplOTsT3.js +0 -5
  304. package/dist/client/assets/radar-KQ55EAFF-CCohASSY.js +0 -1
  305. package/dist/client/assets/stateDiagram-v2-FVOUBMTO-DbW-jVkS.js +0 -1
  306. package/dist/client/assets/subset-shared.chunk-CC_u8ICU.js +0 -1
  307. package/dist/client/assets/treemap-KZPCXAKY-9kxB0uNY.js +0 -1
  308. package/dist/client/assets/vault-api-client-DIaCC56H.js +0 -1
  309. package/dist/client/assets/vault-api-client-De7kMvrE.css +0 -1
  310. package/dist/client/assets/vault-utils-BW53lKl1.js +0 -1
  311. /package/dist/client/assets/{apl-QJCYYBkj.js → apl-C1JYSI8J.js} +0 -0
  312. /package/dist/client/assets/{array-DwdVlTkF.js → array-B3agRrCs.js} +0 -0
  313. /package/dist/client/assets/{asciiarmor-DNy0UPqh.js → asciiarmor-DHW75j1s.js} +0 -0
  314. /package/dist/client/assets/{asn1-CNPXj-s7.js → asn1-CQiG40kG.js} +0 -0
  315. /package/dist/client/assets/{asterisk-BwMdLpT2.js → asterisk-BWExh0n4.js} +0 -0
  316. /package/dist/client/assets/{brainfuck-C2gHT8aA.js → brainfuck-CTNFyOLg.js} +0 -0
  317. /package/dist/client/assets/{chunk-3PELD44J-CL87tpFo.js → chunk-3PELD44J-DymL2rGq.js} +0 -0
  318. /package/dist/client/assets/{chunk-A66AFZZU-DuceaGnc.js → chunk-A66AFZZU-BFHL744F.js} +0 -0
  319. /package/dist/client/assets/{chunk-AXZTUZBK-Cxfm7hmm.js → chunk-AXZTUZBK-DuMiJYO9.js} +0 -0
  320. /package/dist/client/assets/{chunk-SRAX5OIU-CC2mobFL.js → chunk-SRAX5OIU-CLVBQRWC.js} +0 -0
  321. /package/dist/client/assets/{clike-D5X7HJpo.js → clike-1_ZsiVV8.js} +0 -0
  322. /package/dist/client/assets/{clojure-BEDKZv_5.js → clojure-D-DYVqu7.js} +0 -0
  323. /package/dist/client/assets/{cmake-Y3shE7av.js → cmake-DtGL-Unu.js} +0 -0
  324. /package/dist/client/assets/{cobol-f-3TLk62.js → cobol-DP4QggbL.js} +0 -0
  325. /package/dist/client/assets/{coffeescript-C0XA9-xa.js → coffeescript-B_7eyHAa.js} +0 -0
  326. /package/dist/client/assets/{commonlisp-BOB6sIEu.js → commonlisp-COlJYiQT.js} +0 -0
  327. /package/dist/client/assets/{crystal-ByNgE_My.js → crystal-I_dE9xG-.js} +0 -0
  328. /package/dist/client/assets/{css-eaI-ENiR.js → css-CmhPNxBE.js} +0 -0
  329. /package/dist/client/assets/{cypher-CQ-dGGSi.js → cypher-DE6I2lIA.js} +0 -0
  330. /package/dist/client/assets/{cytoscape.esm-DBDRhUia.js → cytoscape.esm-Czjc507F.js} +0 -0
  331. /package/dist/client/assets/{d-D9pnu4Cr.js → d-BNkKjn0o.js} +0 -0
  332. /package/dist/client/assets/{defaultLocale-BWgun1yJ.js → defaultLocale-B_FbTTbl.js} +0 -0
  333. /package/dist/client/assets/{diff-z9q33Lo6.js → diff-BWuPUsEo.js} +0 -0
  334. /package/dist/client/assets/{dist-xO1ImhKz.js → dist-BU8uusJX.js} +0 -0
  335. /package/dist/client/assets/{dist-CsYRf4AV.js → dist-x7PIEmJu.js} +0 -0
  336. /package/dist/client/assets/{drawio-room-C592VDk7.js → drawio-room-DEivFyNV.js} +0 -0
  337. /package/dist/client/assets/{dtd-BDizf_te.js → dtd-C6brJFPg.js} +0 -0
  338. /package/dist/client/assets/{dylan-Bk__XCKW.js → dylan-Bft86ZSB.js} +0 -0
  339. /package/dist/client/assets/{ebnf-SzN4Kxtp.js → ebnf-D6ifG44A.js} +0 -0
  340. /package/dist/client/assets/{ecl-5ulxiKbt.js → ecl-M7Iek4lq.js} +0 -0
  341. /package/dist/client/assets/{eiffel-Bhoaqbb6.js → eiffel-DwxtewZF.js} +0 -0
  342. /package/dist/client/assets/{elm-C3je846J.js → elm-B1TncobV.js} +0 -0
  343. /package/dist/client/assets/{erlang-Cgk9SIAz.js → erlang-BDJZNtt8.js} +0 -0
  344. /package/dist/client/assets/{excalidraw-mermaid-stub-B_2dv3Ll.js → excalidraw-mermaid-stub-BZPU4ZhU.js} +0 -0
  345. /package/dist/client/assets/{fcl-dvkZwp9p.js → fcl-BWKK0S4-.js} +0 -0
  346. /package/dist/client/assets/{forth-DmfSa3jN.js → forth-nvhcMz63.js} +0 -0
  347. /package/dist/client/assets/{fortran-BsZAiNnN.js → fortran-BZID-z10.js} +0 -0
  348. /package/dist/client/assets/{gas-DBpKE9ut.js → gas-DjQsZDGE.js} +0 -0
  349. /package/dist/client/assets/{gherkin-CceEbBs7.js → gherkin-S0kHlzux.js} +0 -0
  350. /package/dist/client/assets/{groovy-CxJnDvES.js → groovy-BEKazBrO.js} +0 -0
  351. /package/dist/client/assets/{haskell-CUSb34Xy.js → haskell-C6qH3-aI.js} +0 -0
  352. /package/dist/client/assets/{haxe-6EHO_h-N.js → haxe-BY9d_5nB.js} +0 -0
  353. /package/dist/client/assets/{http-C3qcBpvG.js → http-DG1Y9fpK.js} +0 -0
  354. /package/dist/client/assets/{idl-C95wIO2I.js → idl-B64p3NTJ.js} +0 -0
  355. /package/dist/client/assets/{image-blob-reduce.esm-BaW4gpT9.js → image-blob-reduce.esm-DriR2zT9.js} +0 -0
  356. /package/dist/client/assets/{init-Bjj5fg68.js → init-DtLQcSuO.js} +0 -0
  357. /package/dist/client/assets/{isArrayLikeObject-Cmt1CYnI.js → isArrayLikeObject-BId_dPHM.js} +0 -0
  358. /package/dist/client/assets/{javascript-aWB87b1w.js → javascript-CdiVhQeA.js} +0 -0
  359. /package/dist/client/assets/{jsx-runtime-DiaMmmG6.js → jsx-runtime-C2p7wRmT.js} +0 -0
  360. /package/dist/client/assets/{julia-DF9PPAXG.js → julia-B22G9Bym.js} +0 -0
  361. /package/dist/client/assets/{katex-BPsFnA3D.js → katex-CXYULLWy.js} +0 -0
  362. /package/dist/client/assets/{livescript-CnOyWwUY.js → livescript-CkcuHqeS.js} +0 -0
  363. /package/dist/client/assets/{lua-a0rEq19C.js → lua-kutgyRGY.js} +0 -0
  364. /package/dist/client/assets/{math-BaavbII8.js → math-B-LMBwub.js} +0 -0
  365. /package/dist/client/assets/{mathematica-CKUq0Ojc.js → mathematica-CKVhKnoY.js} +0 -0
  366. /package/dist/client/assets/{mbox-a-u2PLog.js → mbox-DANyzFJ2.js} +0 -0
  367. /package/dist/client/assets/{mirc-BOd43sOX.js → mirc-BVG2S5rO.js} +0 -0
  368. /package/dist/client/assets/{mllike-fHruGivh.js → mllike-C0p7lv48.js} +0 -0
  369. /package/dist/client/assets/{modelica-B0NJqf1C.js → modelica-vJ-Qa9jV.js} +0 -0
  370. /package/dist/client/assets/{mscgen-DJZ33SrF.js → mscgen-vUD-SWGJ.js} +0 -0
  371. /package/dist/client/assets/{mumps-DvMvHTxU.js → mumps-D0KfUTSd.js} +0 -0
  372. /package/dist/client/assets/{nginx-BVAs8laz.js → nginx-DkVceJrH.js} +0 -0
  373. /package/dist/client/assets/{ntriples-DrdyAZU1.js → ntriples-BBuCIfS0.js} +0 -0
  374. /package/dist/client/assets/{octave-_YqJ0g7E.js → octave-BTv2CqSQ.js} +0 -0
  375. /package/dist/client/assets/{oz-k7T3LoMr.js → oz-D8SjVDNU.js} +0 -0
  376. /package/dist/client/assets/{pascal-CftsTvte.js → pascal-T-tfhVyx.js} +0 -0
  377. /package/dist/client/assets/{path-BUmMWM1-.js → path-DIlZIGue.js} +0 -0
  378. /package/dist/client/assets/{perl-CbsLFc7A.js → perl-BDrCkHRd.js} +0 -0
  379. /package/dist/client/assets/{pica-By-YDy_B.js → pica-C1TdTz-C.js} +0 -0
  380. /package/dist/client/assets/{pig-C-jTwMS-.js → pig-BEyI4fPq.js} +0 -0
  381. /package/dist/client/assets/{powershell-DqXLgSHX.js → powershell-DtnFc6GG.js} +0 -0
  382. /package/dist/client/assets/{preview-diagram-utils-Dc83ucbv.js → preview-diagram-utils-COt-IYMD.js} +0 -0
  383. /package/dist/client/assets/{preview-render-profile-DPzmho7I.js → preview-render-profile-CR4dJZrp.js} +0 -0
  384. /package/dist/client/assets/{properties-05jaw55P.js → properties-DWUvbxV9.js} +0 -0
  385. /package/dist/client/assets/{protobuf-DThTsZQN.js → protobuf-CQGoYyfE.js} +0 -0
  386. /package/dist/client/assets/{puppet-DuHxMpoj.js → puppet-Dd-qWO3p.js} +0 -0
  387. /package/dist/client/assets/{python-BiE2VHJI.js → python-CZtTmYkS.js} +0 -0
  388. /package/dist/client/assets/{q-DH46YfNw.js → q-I27iQntV.js} +0 -0
  389. /package/dist/client/assets/{r-DmEm46kJ.js → r-DN_EydfL.js} +0 -0
  390. /package/dist/client/assets/{rough.esm-jZQkcmER.js → rough.esm-DE_lJ5Ge.js} +0 -0
  391. /package/dist/client/assets/{roundRect-CI6UmGg6.js → roundRect-BzEouiv_.js} +0 -0
  392. /package/dist/client/assets/{rpm-DILIIbRB.js → rpm-CjWxLM68.js} +0 -0
  393. /package/dist/client/assets/{ruby-2LcnHEMS.js → ruby-CB34f2Gf.js} +0 -0
  394. /package/dist/client/assets/{runtime-config-CqX_f_Q4.js → runtime-config-CqhchMC4.js} +0 -0
  395. /package/dist/client/assets/{sas-Bn81MKuB.js → sas-Bji4HDQq.js} +0 -0
  396. /package/dist/client/assets/{scheme-B8kPNbgd.js → scheme-C3elI80V.js} +0 -0
  397. /package/dist/client/assets/{shell-CGj6v8kb.js → shell-DUveK2Hb.js} +0 -0
  398. /package/dist/client/assets/{sieve-CfVNFN1K.js → sieve-2ogwMVx4.js} +0 -0
  399. /package/dist/client/assets/{simple-mode-_FSHdiXs.js → simple-mode-pOKc0mfx.js} +0 -0
  400. /package/dist/client/assets/{smalltalk-BpIFyCPt.js → smalltalk-BuGhc6lW.js} +0 -0
  401. /package/dist/client/assets/{solr-B7iFaetn.js → solr-DTxshpm8.js} +0 -0
  402. /package/dist/client/assets/{sparql-COhgMTFK.js → sparql-BOvq0dv7.js} +0 -0
  403. /package/dist/client/assets/{spreadsheet-BzuffEeg.js → spreadsheet-C6Vbtl9-.js} +0 -0
  404. /package/dist/client/assets/{sql-13lT5zDl.js → sql-DDFeQNTK.js} +0 -0
  405. /package/dist/client/assets/{src-E3c2cohN.js → src-Pgt9Gp65.js} +0 -0
  406. /package/dist/client/assets/{stex-BRSfZZYG.js → stex-CEwW0Q_0.js} +0 -0
  407. /package/dist/client/assets/{stylus-fFo0QRk_.js → stylus-D1SZIMDs.js} +0 -0
  408. /package/dist/client/assets/{swift-wb5gyb6a.js → swift-BCxe4-cw.js} +0 -0
  409. /package/dist/client/assets/{tcl-BJA7GgWY.js → tcl-SPk7uiDB.js} +0 -0
  410. /package/dist/client/assets/{textile-BQjiYu-x.js → textile-C48beRus.js} +0 -0
  411. /package/dist/client/assets/{tiddlywiki-D2vUXB6n.js → tiddlywiki-CiImjFLN.js} +0 -0
  412. /package/dist/client/assets/{tiki-BFhpdznG.js → tiki-HkXZ4BIW.js} +0 -0
  413. /package/dist/client/assets/{toml-DN06iQUw.js → toml-BmfpMy1_.js} +0 -0
  414. /package/dist/client/assets/{troff-DuQfjhPH.js → troff-BjbEOT5E.js} +0 -0
  415. /package/dist/client/assets/{ttcn-BCTy6d50.js → ttcn-NA-V4KnY.js} +0 -0
  416. /package/dist/client/assets/{ttcn-cfg-BYnZQqGa.js → ttcn-cfg-TPHncdGN.js} +0 -0
  417. /package/dist/client/assets/{turtle-BvN-Me9x.js → turtle-GBz_E4RG.js} +0 -0
  418. /package/dist/client/assets/{vb-DYk3wW9u.js → vb-C19AQWqO.js} +0 -0
  419. /package/dist/client/assets/{vbscript-BKI61VS6.js → vbscript-CHJk3s95.js} +0 -0
  420. /package/dist/client/assets/{velocity-BrtitHHA.js → velocity-Ya0P4sQU.js} +0 -0
  421. /package/dist/client/assets/{verilog-CjUx3yiL.js → verilog-C4wTycyo.js} +0 -0
  422. /package/dist/client/assets/{vhdl-CPWwYF4V.js → vhdl-Bwndeg44.js} +0 -0
  423. /package/dist/client/assets/{webidl-PiVOzma8.js → webidl-DttrYZRT.js} +0 -0
  424. /package/dist/client/assets/{xquery-CiTzM_oK.js → xquery-CEDTd8qs.js} +0 -0
  425. /package/dist/client/assets/{yacas-4QS9CntY.js → yacas-C7dxlPB0.js} +0 -0
  426. /package/dist/client/assets/{yjs-provider-reset-guard-DWGhQClh.js → yjs-provider-reset-guard-CtERLBID.js} +0 -0
  427. /package/dist/client/assets/{z80-BxidrTKR.js → z80-BqEfFSnA.js} +0 -0
@@ -1,4 +1,3 @@
1
- import { resolveApiUrl } from '../domain/runtime-paths.js';
2
1
  import {
3
2
  cancelIdleRender,
4
3
  IDLE_RENDER_TIMEOUT_MS,
@@ -7,6 +6,7 @@ import {
7
6
  shouldPreserveHydratedDiagram,
8
7
  syncAttribute,
9
8
  } from './preview-diagram-utils.js';
9
+ import { resolveApiUrl } from '../domain/runtime-paths.js';
10
10
 
11
11
  function datasetKeyToAttributeName(datasetKey) {
12
12
  return `data-${datasetKey.replace(/[A-Z]/g, (match) => `-${match.toLowerCase()}`)}`;
@@ -16,7 +16,8 @@ export class DiagramPreviewHydrator {
16
16
  constructor(renderer, {
17
17
  batchSize,
18
18
  datasetKeys,
19
- fetchFn = (...args) => fetch(...args),
19
+ fetchFn = null,
20
+ loadFileSource = null,
20
21
  filePathLabel,
21
22
  requestIdleRenderFn = requestIdleRender,
22
23
  cancelIdleRenderFn = cancelIdleRender,
@@ -29,7 +30,7 @@ export class DiagramPreviewHydrator {
29
30
  this.renderer = renderer;
30
31
  this.batchSize = batchSize;
31
32
  this.datasetKeys = datasetKeys;
32
- this.fetchFn = fetchFn;
33
+ this.loadFileSource = loadFileSource ?? this.createLegacyFileSourceLoader(fetchFn);
33
34
  this.filePathLabel = filePathLabel;
34
35
  this.requestIdleRenderFn = requestIdleRenderFn;
35
36
  this.cancelIdleRenderFn = cancelIdleRenderFn;
@@ -53,6 +54,22 @@ export class DiagramPreviewHydrator {
53
54
  this.fileInflightRequests = new Map();
54
55
  }
55
56
 
57
+ createLegacyFileSourceLoader(fetchFn) {
58
+ if (typeof fetchFn !== 'function') {
59
+ return null;
60
+ }
61
+
62
+ return async (filePath) => {
63
+ const response = await fetchFn(resolveApiUrl(`/file?path=${encodeURIComponent(filePath)}`));
64
+ const payload = await response.json().catch(() => ({}));
65
+ if (!response.ok || payload?.ok === false) {
66
+ throw new Error(payload?.error || `Failed to load ${this.filePathLabel.toLowerCase()} source`);
67
+ }
68
+
69
+ return String(payload?.content ?? '');
70
+ };
71
+ }
72
+
56
73
  destroy() {
57
74
  this.cancelHydration();
58
75
  this.preservedShells.clear();
@@ -359,19 +376,11 @@ export class DiagramPreviewHydrator {
359
376
  return this.fileInflightRequests.get(target);
360
377
  }
361
378
 
362
- const request = this.fetchFn(resolveApiUrl(`/file?path=${encodeURIComponent(target)}`), {
363
- headers: {
364
- Accept: 'application/json',
365
- },
366
- })
367
- .then(async (response) => {
368
- const data = await response.json().catch(() => null);
369
- if (!response.ok || typeof data?.content !== 'string') {
370
- throw new Error(data?.error || `Failed to load ${target}`);
371
- }
379
+ if (typeof this.loadFileSource !== 'function') {
380
+ throw new Error(`Missing ${this.filePathLabel} source loader`);
381
+ }
372
382
 
373
- return data.content;
374
- })
383
+ const request = this.loadFileSource(target)
375
384
  .finally(() => {
376
385
  this.fileInflightRequests.delete(target);
377
386
  });
@@ -2,13 +2,7 @@ import yaml from 'js-yaml';
2
2
 
3
3
  import { escapeHtml } from '../domain/vault-utils.js';
4
4
 
5
- function getDocumentNewline(markdownText = '') {
6
- return String(markdownText).includes('\r\n') ? '\r\n' : '\n';
7
- }
8
-
9
- function normalizeLine(line = '') {
10
- return String(line).replace(/\r$/, '');
11
- }
5
+ export { extractYamlFrontmatter } from '../../domain/yaml-frontmatter.js';
12
6
 
13
7
  function isPlainObject(value) {
14
8
  return Object.prototype.toString.call(value) === '[object Object]';
@@ -73,55 +67,6 @@ function createHiddenSummary(entries) {
73
67
  return `${entries.length} propert${entries.length === 1 ? 'y' : 'ies'} hidden`;
74
68
  }
75
69
 
76
- export function extractYamlFrontmatter(markdownText = '') {
77
- const normalizedMarkdown = String(markdownText ?? '');
78
- if (!normalizedMarkdown.startsWith('---')) {
79
- return null;
80
- }
81
-
82
- const newline = getDocumentNewline(normalizedMarkdown);
83
- const lines = normalizedMarkdown.split(/\r?\n/);
84
- if (normalizeLine(lines[0]) !== '---') {
85
- return null;
86
- }
87
-
88
- let closingIndex = -1;
89
- for (let index = 1; index < lines.length; index += 1) {
90
- if (normalizeLine(lines[index]) === '---') {
91
- closingIndex = index;
92
- break;
93
- }
94
- }
95
-
96
- if (closingIndex < 0) {
97
- return null;
98
- }
99
-
100
- const rawFrontmatter = lines.slice(0, closingIndex + 1).join(newline);
101
- const frontmatterSource = lines.slice(1, closingIndex).join(newline);
102
-
103
- let parsedData;
104
- try {
105
- parsedData = yaml.load(frontmatterSource || '{}');
106
- } catch {
107
- return null;
108
- }
109
-
110
- const lineCount = closingIndex + 1;
111
- const bodyMarkdown = [
112
- ...Array.from({ length: lineCount }, () => ''),
113
- ...lines.slice(closingIndex + 1),
114
- ].join(newline);
115
-
116
- return {
117
- bodyMarkdown,
118
- data: parsedData ?? {},
119
- endLine: lineCount,
120
- rawFrontmatter,
121
- startLine: 1,
122
- };
123
- }
124
-
125
70
  export function renderFrontmatterBlock(frontmatter, {
126
71
  collapsed = false,
127
72
  interactive = false,
@@ -12,7 +12,7 @@ import {
12
12
  } from './preview-diagram-utils.js';
13
13
 
14
14
  export class MermaidPreviewHydrator extends DiagramPreviewHydrator {
15
- constructor(renderer) {
15
+ constructor(renderer, { fetchFn = null, loadFileSource = null } = {}) {
16
16
  super(renderer, {
17
17
  batchSize: MERMAID_BATCH_SIZE,
18
18
  datasetKeys: {
@@ -26,7 +26,9 @@ export class MermaidPreviewHydrator extends DiagramPreviewHydrator {
26
26
  sourceLineEnd: 'sourceLineEnd',
27
27
  target: 'mermaidTarget',
28
28
  },
29
+ fetchFn,
29
30
  filePathLabel: 'Mermaid',
31
+ loadFileSource,
30
32
  shellClassName: 'mermaid-shell',
31
33
  sourceClassName: 'mermaid-source',
32
34
  });
@@ -35,6 +37,101 @@ export class MermaidPreviewHydrator extends DiagramPreviewHydrator {
35
37
  this.loader = null;
36
38
  this.runtime = null;
37
39
  this.shellRefits = new WeakMap();
40
+ this.activeMaximizedShell = null;
41
+ this.maximizedRoot = null;
42
+ }
43
+
44
+ destroy() {
45
+ this.cancelHydration();
46
+ this.preservedShells.clear();
47
+ this.clearActiveShell();
48
+ this.maximizedRoot?.remove();
49
+ this.maximizedRoot = null;
50
+ }
51
+
52
+ cancelHydration() {
53
+ super.cancelHydration();
54
+
55
+ const activeShell = this.syncActiveShell();
56
+ if (!activeShell) {
57
+ return;
58
+ }
59
+
60
+ this.restoreShellMount(activeShell);
61
+ activeShell.classList.remove('is-maximized');
62
+ this.clearActiveShell();
63
+ document.body.classList.remove('mermaid-maximized-open');
64
+ }
65
+
66
+ clearActiveShell() {
67
+ this.activeMaximizedShell = null;
68
+ if (this.maximizedRoot && this.maximizedRoot.childElementCount === 0) {
69
+ this.maximizedRoot.hidden = true;
70
+ }
71
+ }
72
+
73
+ syncActiveShell() {
74
+ if (
75
+ this.activeMaximizedShell?.isConnected
76
+ && this.activeMaximizedShell.classList.contains('is-maximized')
77
+ ) {
78
+ return this.activeMaximizedShell;
79
+ }
80
+
81
+ this.clearActiveShell();
82
+ return null;
83
+ }
84
+
85
+ ensureMaximizedRoot() {
86
+ if (this.maximizedRoot?.isConnected && this.maximizedRoot.parentElement === document.body) {
87
+ return this.maximizedRoot;
88
+ }
89
+
90
+ let maximizedRoot = document.body.querySelector('[data-mermaid-maximized-root="true"]');
91
+ if (!maximizedRoot) {
92
+ maximizedRoot = document.createElement('div');
93
+ maximizedRoot.dataset.mermaidMaximizedRoot = 'true';
94
+ maximizedRoot.className = 'mermaid-maximized-root';
95
+ document.body.appendChild(maximizedRoot);
96
+ }
97
+
98
+ this.maximizedRoot = maximizedRoot;
99
+ return maximizedRoot;
100
+ }
101
+
102
+ mountShellInMaximizedRoot(shell) {
103
+ if (!shell) {
104
+ return;
105
+ }
106
+
107
+ const maximizedRoot = this.ensureMaximizedRoot();
108
+ maximizedRoot.hidden = false;
109
+ shell._mermaidRestoreParent = shell.parentElement || null;
110
+ shell._mermaidRestoreNextSibling = shell.nextSibling || null;
111
+ maximizedRoot.appendChild(shell);
112
+ }
113
+
114
+ restoreShellMount(shell) {
115
+ if (!shell) {
116
+ return;
117
+ }
118
+
119
+ const restoreParent = shell._mermaidRestoreParent;
120
+ const restoreNextSibling = shell._mermaidRestoreNextSibling;
121
+ if (restoreParent?.isConnected) {
122
+ if (restoreNextSibling?.parentElement === restoreParent) {
123
+ restoreParent.insertBefore(shell, restoreNextSibling);
124
+ } else {
125
+ restoreParent.appendChild(shell);
126
+ }
127
+ }
128
+
129
+ shell._mermaidRestoreParent = null;
130
+ shell._mermaidRestoreNextSibling = null;
131
+
132
+ if (this.maximizedRoot && this.maximizedRoot.childElementCount === 0) {
133
+ this.maximizedRoot.hidden = true;
134
+ }
38
135
  }
39
136
 
40
137
  applyTheme(theme) {
@@ -111,6 +208,7 @@ export class MermaidPreviewHydrator extends DiagramPreviewHydrator {
111
208
  if (restoredMaximizedShell) {
112
209
  document.body.classList.add('mermaid-maximized-open');
113
210
  }
211
+ this.syncActiveShell();
114
212
  }
115
213
 
116
214
  async prepareHydrationBatch() {
@@ -240,6 +338,10 @@ export class MermaidPreviewHydrator extends DiagramPreviewHydrator {
240
338
  }
241
339
 
242
340
  const hydratedShells = Array.from(previewElement.querySelectorAll('.mermaid-shell[data-mermaid-hydrated="true"]'));
341
+ const activeShell = this.syncActiveShell();
342
+ if (activeShell && !hydratedShells.includes(activeShell)) {
343
+ hydratedShells.push(activeShell);
344
+ }
243
345
  if (hydratedShells.length === 0) {
244
346
  return;
245
347
  }
@@ -447,11 +549,14 @@ export class MermaidPreviewHydrator extends DiagramPreviewHydrator {
447
549
  };
448
550
 
449
551
  const setMaximizedState = (shouldMaximize) => {
450
- const previewElement = this.renderer.previewElement;
451
552
  if (shouldMaximize) {
452
- const activeContainer = previewElement.querySelector('.mermaid-shell.is-maximized');
553
+ const activeContainer = this.syncActiveShell();
453
554
  if (activeContainer && activeContainer !== shell) {
555
+ this.restoreShellMount(activeContainer);
454
556
  activeContainer.classList.remove('is-maximized');
557
+ if (this.activeMaximizedShell === activeContainer) {
558
+ this.clearActiveShell();
559
+ }
455
560
  this.shellRefits.get(activeContainer)?.();
456
561
  const activeButton = activeContainer.querySelector('.mermaid-maximize-btn');
457
562
  if (activeButton) {
@@ -460,15 +565,21 @@ export class MermaidPreviewHydrator extends DiagramPreviewHydrator {
460
565
  activeButton.title = 'Maximize diagram';
461
566
  }
462
567
  }
568
+ this.mountShellInMaximizedRoot(shell);
463
569
  shell.classList.add('is-maximized');
570
+ this.activeMaximizedShell = shell;
464
571
  document.body.classList.add('mermaid-maximized-open');
465
572
  syncMaximizeButtonState();
466
573
  scheduleResetZoomToFit({ force: true });
467
574
  return;
468
575
  }
469
576
 
577
+ this.restoreShellMount(shell);
470
578
  shell.classList.remove('is-maximized');
471
- if (!previewElement.querySelector('.mermaid-shell.is-maximized')) {
579
+ if (this.activeMaximizedShell === shell) {
580
+ this.clearActiveShell();
581
+ }
582
+ if (!this.syncActiveShell()) {
472
583
  document.body.classList.remove('mermaid-maximized-open');
473
584
  }
474
585
  syncMaximizeButtonState();
@@ -548,6 +659,12 @@ export class MermaidPreviewHydrator extends DiagramPreviewHydrator {
548
659
  }
549
660
 
550
661
  scheduleActiveRefit() {
662
+ const activeShell = this.syncActiveShell();
663
+ if (activeShell) {
664
+ this.shellRefits.get(activeShell)?.();
665
+ return;
666
+ }
667
+
551
668
  const previewElement = this.renderer.previewElement;
552
669
  if (!previewElement) {
553
670
  return;
@@ -1,6 +1,5 @@
1
1
  import { clamp } from '../domain/vault-utils.js';
2
2
  import { setDiagramActionButtonIcon } from '../domain/diagram-action-icons.js';
3
- import { resolveApiUrl } from '../domain/runtime-paths.js';
4
3
  import { DiagramPreviewHydrator } from './diagram-preview-hydrator.js';
5
4
  import {
6
5
  createPlantUmlPlaceholderCard,
@@ -13,7 +12,7 @@ import {
13
12
  } from './preview-diagram-utils.js';
14
13
 
15
14
  export class PlantUmlPreviewHydrator extends DiagramPreviewHydrator {
16
- constructor(renderer) {
15
+ constructor(renderer, { loadFileSource = null, renderClient = null } = {}) {
17
16
  super(renderer, {
18
17
  batchSize: PLANTUML_BATCH_SIZE,
19
18
  datasetKeys: {
@@ -28,10 +27,12 @@ export class PlantUmlPreviewHydrator extends DiagramPreviewHydrator {
28
27
  target: 'plantumlTarget',
29
28
  },
30
29
  filePathLabel: 'PlantUML',
30
+ loadFileSource,
31
31
  shellClassName: 'plantuml-shell',
32
32
  sourceClassName: 'plantuml-source',
33
33
  });
34
34
  this.renderer = renderer;
35
+ this.renderClient = renderClient;
35
36
  this.svgCache = new Map();
36
37
  this.svgInflightRequests = new Map();
37
38
  this.shellRefits = new WeakMap();
@@ -206,20 +207,9 @@ export class PlantUmlPreviewHydrator extends DiagramPreviewHydrator {
206
207
  return this.svgInflightRequests.get(cacheKey);
207
208
  }
208
209
 
209
- const request = fetch(resolveApiUrl('/plantuml/render'), {
210
- method: 'POST',
211
- headers: {
212
- 'Content-Type': 'application/json',
213
- },
214
- body: JSON.stringify({ source }),
215
- })
216
- .then(async (response) => {
217
- const data = await response.json().catch(() => null);
218
- if (!response.ok || !data?.ok || typeof data.svg !== 'string') {
219
- throw new Error(data?.error || 'Failed to render PlantUML');
220
- }
221
-
222
- const sanitized = sanitizeSvgMarkup(data.svg);
210
+ const request = this.renderClient.renderSvg(source)
211
+ .then((svgMarkup) => {
212
+ const sanitized = sanitizeSvgMarkup(svgMarkup);
223
213
  this.svgCache.set(cacheKey, sanitized);
224
214
  return sanitized;
225
215
  })
@@ -84,6 +84,18 @@ function createDrawioPlaceholder({ embedKey, label, target }) {
84
84
  return `<span class="drawio-embed-placeholder diagram-preview-shell" data-drawio-key="${escapeHtml(embedKey)}" data-drawio-target="${escapeHtml(target)}" data-drawio-label="${escapeHtml(label)}" data-drawio-mode="view"><span class="drawio-embed-placeholder-card diagram-preview-placeholder-card"><span class="drawio-embed-placeholder-copy diagram-preview-placeholder-copy"><strong>${escapeHtml(label)}</strong><span>Loads when visible</span></span><button type="button" class="drawio-embed-placeholder-btn diagram-preview-placeholder-btn" data-drawio-key="${escapeHtml(embedKey)}">Load diagram</button></span></span>`;
85
85
  }
86
86
 
87
+ function createBasePlaceholder({ key, sourceAttributes, sourceFilePath, sourceText, viewName = '' }) {
88
+ const sourceFileAttribute = sourceFilePath ? ` data-base-source-path="${escapeHtml(sourceFilePath)}"` : '';
89
+ const viewAttribute = viewName ? ` data-base-view="${escapeHtml(viewName)}"` : '';
90
+ return `<div class="bases-embed-placeholder diagram-preview-shell"${sourceAttributes} data-base-key="${escapeHtml(key)}" data-base-source="${escapeHtml(sourceText)}"${sourceFileAttribute}${viewAttribute}><div class="diagram-preview-placeholder-card"><div class="diagram-preview-placeholder-copy"><strong>Base view</strong><span>Loads query results when preview renders</span></div></div></div>`;
91
+ }
92
+
93
+ function createBaseFileEmbedPlaceholder({ embedKey, label, target, viewName = '', sourceFilePath = '' }) {
94
+ const sourceFileAttribute = sourceFilePath ? ` data-base-source-path="${escapeHtml(sourceFilePath)}"` : '';
95
+ const viewAttribute = viewName ? ` data-base-view="${escapeHtml(viewName)}"` : '';
96
+ return `<span class="bases-embed-placeholder diagram-preview-shell" data-base-key="${escapeHtml(embedKey)}" data-base-path="${escapeHtml(target)}" data-base-label="${escapeHtml(label)}"${viewAttribute}${sourceFileAttribute}><span class="diagram-preview-placeholder-card"><span class="diagram-preview-placeholder-copy"><strong>${escapeHtml(label)}</strong><span>Loads query results when preview renders</span></span></span></span>`;
97
+ }
98
+
87
99
  function getDirectVideoMimeType(pathname = '') {
88
100
  const match = pathname.toLowerCase().match(/\.(mp4|ogg|webm)$/i);
89
101
  if (!match) {
@@ -228,13 +240,15 @@ function resolveLocalAttachmentUrl(source = '', {
228
240
  }
229
241
 
230
242
  function renderInlineWikiText(content, {
243
+ baseEmbedCounts,
231
244
  drawioEmbedCounts,
232
245
  excalidrawEmbedCounts,
233
246
  fileList,
234
247
  mermaidEmbedCounts,
235
248
  plantUmlEmbedCounts,
249
+ sourceFilePath = '',
236
250
  }) {
237
- const regex = /!\[\[([^\]|]+\.(?:excalidraw|drawio|mmd|mermaid|puml|plantuml))(?:\|([^\]]+))?\]\]|\[\[([^\]|]+)(?:\|([^\]]+))?\]\]/gi;
251
+ const regex = /!\[\[([^\]|#]+\.(?:base|excalidraw|drawio|mmd|mermaid|puml|plantuml))(?:#([^\]|]+))?(?:\|([^\]]+))?\]\]|\[\[([^\]|]+)(?:\|([^\]]+))?\]\]/gi;
238
252
  let lastIndex = 0;
239
253
  let html = '';
240
254
  let match;
@@ -246,9 +260,20 @@ function renderInlineWikiText(content, {
246
260
 
247
261
  if (match[1]) {
248
262
  const target = match[1].trim();
249
- const label = (match[2] || target).trim();
250
-
251
- if (/\.excalidraw$/i.test(target)) {
263
+ const viewName = (match[2] || '').trim();
264
+ const label = (match[3] || target).trim();
265
+
266
+ if (/\.base$/i.test(target)) {
267
+ const occurrenceIndex = baseEmbedCounts.get(`${target}#${viewName}`) ?? 0;
268
+ baseEmbedCounts.set(`${target}#${viewName}`, occurrenceIndex + 1);
269
+ html += createBaseFileEmbedPlaceholder({
270
+ embedKey: `${target}#${viewName || 'default'}#${occurrenceIndex}`,
271
+ label: normalizePreviewTypography(label.replace(/\.base$/i, '')),
272
+ sourceFilePath,
273
+ target,
274
+ viewName,
275
+ });
276
+ } else if (/\.excalidraw$/i.test(target)) {
252
277
  const occurrenceIndex = excalidrawEmbedCounts.get(target) ?? 0;
253
278
  excalidrawEmbedCounts.set(target, occurrenceIndex + 1);
254
279
  html += createExcalidrawPlaceholder({
@@ -282,8 +307,8 @@ function renderInlineWikiText(content, {
282
307
  });
283
308
  }
284
309
  } else {
285
- const target = match[3].trim();
286
- const display = (match[4] || match[3]).trim();
310
+ const target = match[4].trim();
311
+ const display = (match[5] || match[4]).trim();
287
312
  const resolved = resolveWikiTarget(target, fileList);
288
313
  const classes = resolved ? 'wiki-link' : 'wiki-link wiki-link-new';
289
314
  const title = resolved ? normalizePreviewTypography(display) : `Create "${target}"`;
@@ -344,6 +369,7 @@ function createMarkdownRenderer(fileList = [], {
344
369
 
345
370
  const drawioEmbedCounts = new Map();
346
371
  const excalidrawEmbedCounts = new Map();
372
+ const baseCounts = new Map();
347
373
  const mermaidCounts = new Map();
348
374
  const mermaidEmbedCounts = new Map();
349
375
  const plantUmlCounts = new Map();
@@ -389,6 +415,18 @@ function createMarkdownRenderer(fileList = [], {
389
415
  });
390
416
  }
391
417
 
418
+ if (info === 'base') {
419
+ const sourceHash = hashString(token.content);
420
+ const occurrenceIndex = baseCounts.get(sourceHash) ?? 0;
421
+ baseCounts.set(sourceHash, occurrenceIndex + 1);
422
+ return createBasePlaceholder({
423
+ key: `base-${sourceHash}-${occurrenceIndex}`,
424
+ sourceAttributes,
425
+ sourceFilePath,
426
+ sourceText: token.content,
427
+ });
428
+ }
429
+
392
430
  const rendered = renderToken(fallbackFence, tokens, index, options, env, self);
393
431
  if (!sourceLine) {
394
432
  return rendered;
@@ -416,30 +454,36 @@ function createMarkdownRenderer(fileList = [], {
416
454
 
417
455
  if (content.startsWith('[x] ') || content.startsWith('[X] ')) {
418
456
  return `<input type="checkbox" checked data-task-checkbox="true"> ${renderInlineWikiText(content.slice(4), {
457
+ baseEmbedCounts: baseCounts,
419
458
  drawioEmbedCounts,
420
459
  excalidrawEmbedCounts,
421
460
  fileList,
422
461
  mermaidEmbedCounts,
423
462
  plantUmlEmbedCounts,
463
+ sourceFilePath,
424
464
  })}`;
425
465
  }
426
466
 
427
467
  if (content.startsWith('[ ] ')) {
428
468
  return `<input type="checkbox" data-task-checkbox="true"> ${renderInlineWikiText(content.slice(4), {
469
+ baseEmbedCounts: baseCounts,
429
470
  drawioEmbedCounts,
430
471
  excalidrawEmbedCounts,
431
472
  fileList,
432
473
  mermaidEmbedCounts,
433
474
  plantUmlEmbedCounts,
475
+ sourceFilePath,
434
476
  })}`;
435
477
  }
436
478
 
437
479
  return renderInlineWikiText(content, {
480
+ baseEmbedCounts: baseCounts,
438
481
  drawioEmbedCounts,
439
482
  excalidrawEmbedCounts,
440
483
  fileList,
441
484
  mermaidEmbedCounts,
442
485
  plantUmlEmbedCounts,
486
+ sourceFilePath,
443
487
  });
444
488
  };
445
489
 
@@ -10,23 +10,27 @@ export class PreviewRenderer {
10
10
  constructor({
11
11
  getContent,
12
12
  getFileList,
13
+ loadFileSource = null,
13
14
  getSourceFilePath,
14
15
  onAfterRenderCommit,
15
16
  onBeforeRenderCommit,
16
17
  onPreviewLayoutChange,
17
18
  onRenderComplete,
18
19
  outlineController,
20
+ plantUmlRenderClient = null,
19
21
  previewContainer,
20
22
  previewElement,
21
23
  }) {
22
24
  this.getContent = getContent;
23
25
  this.getFileList = getFileList;
26
+ this.loadFileSource = loadFileSource;
24
27
  this.getSourceFilePath = getSourceFilePath;
25
28
  this.onAfterRenderCommit = onAfterRenderCommit;
26
29
  this.onBeforeRenderCommit = onBeforeRenderCommit;
27
30
  this.onPreviewLayoutChange = onPreviewLayoutChange;
28
31
  this.onRenderComplete = onRenderComplete;
29
32
  this.outlineController = outlineController;
33
+ this.plantUmlRenderClient = plantUmlRenderClient;
30
34
  this.previewContainer = previewContainer;
31
35
  this.previewElement = previewElement;
32
36
  this.renderHost = null;
@@ -78,8 +82,13 @@ export class PreviewRenderer {
78
82
  this.plantUmlHydrator.scheduleActiveRefit();
79
83
  };
80
84
 
81
- this.mermaidHydrator = new MermaidPreviewHydrator(this);
82
- this.plantUmlHydrator = new PlantUmlPreviewHydrator(this);
85
+ this.mermaidHydrator = new MermaidPreviewHydrator(this, {
86
+ loadFileSource,
87
+ });
88
+ this.plantUmlHydrator = new PlantUmlPreviewHydrator(this, {
89
+ loadFileSource,
90
+ renderClient: plantUmlRenderClient,
91
+ });
83
92
  this.renderScheduler = new PreviewRenderScheduler({ getRenderProfileFn: getRenderProfile });
84
93
  this.renderExecutor = new PreviewRenderExecutor({
85
94
  attachmentApiPath: resolveApiUrl('/attachment'),
@@ -1,4 +1,5 @@
1
1
  import {
2
+ isBaseFilePath,
2
3
  isMarkdownFilePath,
3
4
  supportsBacklinksForFilePath,
4
5
  } from '../../domain/file-kind.js';
@@ -12,6 +13,7 @@ export class WorkspaceChromeController {
12
13
  onRenderDrawioPreview,
13
14
  onFileOpenError,
14
15
  onFileOpenReady,
16
+ onRenderBasePreview,
15
17
  onRenderExcalidrawPreview,
16
18
  onRenderImagePreview,
17
19
  onSyncWrapToggle,
@@ -24,23 +26,24 @@ export class WorkspaceChromeController {
24
26
  showEditorLoading,
25
27
  stateStore,
26
28
  }) {
27
- this.beginDocumentLoad = beginDocumentLoad;
28
- this.getDisplayName = getDisplayName;
29
- this.loadBacklinks = loadBacklinks;
30
- this.onBeforeFileOpen = onBeforeFileOpen;
31
- this.onRenderDrawioPreview = onRenderDrawioPreview;
32
- this.onFileOpenError = onFileOpenError;
33
- this.onFileOpenReady = onFileOpenReady;
34
- this.onRenderExcalidrawPreview = onRenderExcalidrawPreview;
35
- this.onRenderImagePreview = onRenderImagePreview;
36
- this.onSyncWrapToggle = onSyncWrapToggle;
37
- this.onUpdateActiveFile = onUpdateActiveFile;
38
- this.onUpdateCurrentFile = onUpdateCurrentFile;
39
- this.onUpdateLobbyCurrentFile = onUpdateLobbyCurrentFile;
40
- this.onUpdateVisibleChrome = onUpdateVisibleChrome;
41
- this.onViewModeReset = onViewModeReset;
42
- this.renderPresence = renderPresence;
43
- this.showEditorLoading = showEditorLoading;
29
+ this.beginDocumentLoad = beginDocumentLoad ?? (() => {});
30
+ this.getDisplayName = getDisplayName ?? ((filePath) => filePath);
31
+ this.loadBacklinks = loadBacklinks ?? (() => {});
32
+ this.onBeforeFileOpen = onBeforeFileOpen ?? (() => {});
33
+ this.onRenderDrawioPreview = onRenderDrawioPreview ?? (() => {});
34
+ this.onFileOpenError = onFileOpenError ?? (() => {});
35
+ this.onFileOpenReady = onFileOpenReady ?? (() => {});
36
+ this.onRenderBasePreview = onRenderBasePreview ?? (() => {});
37
+ this.onRenderExcalidrawPreview = onRenderExcalidrawPreview ?? (() => {});
38
+ this.onRenderImagePreview = onRenderImagePreview ?? (() => {});
39
+ this.onSyncWrapToggle = onSyncWrapToggle ?? (() => {});
40
+ this.onUpdateActiveFile = onUpdateActiveFile ?? (() => {});
41
+ this.onUpdateCurrentFile = onUpdateCurrentFile ?? (() => {});
42
+ this.onUpdateLobbyCurrentFile = onUpdateLobbyCurrentFile ?? (() => {});
43
+ this.onUpdateVisibleChrome = onUpdateVisibleChrome ?? (() => {});
44
+ this.onViewModeReset = onViewModeReset ?? (() => {});
45
+ this.renderPresence = renderPresence ?? (() => {});
46
+ this.showEditorLoading = showEditorLoading ?? (() => {});
44
47
  this.stateStore = stateStore;
45
48
  }
46
49
 
@@ -75,16 +78,19 @@ export class WorkspaceChromeController {
75
78
  }
76
79
 
77
80
  finalizeFileOpen({
81
+ isBase = false,
78
82
  isDrawio = false,
79
83
  filePath,
80
84
  isExcalidraw = false,
81
85
  isImage = false,
82
- session = null,
83
86
  supportsBacklinks,
84
87
  }) {
85
88
  if (isExcalidraw) {
86
89
  this.onRenderExcalidrawPreview(filePath);
87
90
  }
91
+ if (isBase || isBaseFilePath(filePath)) {
92
+ this.onRenderBasePreview(filePath);
93
+ }
88
94
  if (isDrawio) {
89
95
  this.onRenderDrawioPreview(filePath);
90
96
  }
@@ -92,7 +98,7 @@ export class WorkspaceChromeController {
92
98
  this.onRenderImagePreview(filePath);
93
99
  }
94
100
  this.onSyncWrapToggle();
95
- if (supportsBacklinks && session) {
101
+ if (supportsBacklinks) {
96
102
  this.loadBacklinks(filePath);
97
103
  }
98
104
  }