collabmd 0.1.54 → 0.1.56

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 (645) hide show
  1. package/README.md +1 -1
  2. package/bin/collabmd.js +19 -38
  3. package/dist/client/assets/CodeMirrorEditor-UCMRAMCV-CW5HP9uy.js +1 -0
  4. package/dist/client/assets/{Middleware-DUgFSleI.js → Middleware-DbxtuTyG.js} +1 -1
  5. package/dist/client/assets/{abnfDiagram-VCTEODGH-DxNxad6-.js → abnfDiagram-VCTEODGH-DY5tILUg.js} +1 -1
  6. package/dist/client/assets/{abnfDiagram-O67JEVCF-Dwt6a0Ds.js → abnfDiagram-WEYOIA3C-BqtDVimc.js} +1 -1
  7. package/dist/client/assets/api-client-utils-DkW9xiiw.js +1 -0
  8. package/dist/client/assets/{ar-SA-5WIASEJP-Di7OimCN.js → ar-SA-5WIASEJP-DbGUC-Fx.js} +1 -1
  9. package/dist/client/assets/{arc-DgcGdgmL.js → arc-Y1ARJVZ4.js} +1 -1
  10. package/dist/client/assets/architecture-7GRP2DOG-DndzY1Hb.js +1 -0
  11. package/dist/client/assets/architecture-WOLXFQ4H-tER6YKVA.js +1 -0
  12. package/dist/client/assets/{architectureDiagram-5GKGNRK7-C1uvg5id.js → architectureDiagram-5GKGNRK7-D_ZiDWLO.js} +2 -2
  13. package/dist/client/assets/{architectureDiagram-NJMV4G6O-D5CGiX3G.js → architectureDiagram-ZHVYKT53-CCmYbVDm.js} +3 -3
  14. package/dist/client/assets/{az-AZ-V5EUQD6C-C19OGTT_.js → az-AZ-V5EUQD6C-qK0euR1T.js} +1 -1
  15. package/dist/client/assets/babel-BaOs8qJH.js +16 -0
  16. package/dist/client/assets/base-CaIEJUF9.css +1 -0
  17. package/dist/client/assets/{bg-BG-EXASCMTR-BIt0xWyb.js → bg-BG-EXASCMTR-DHvN8nO_.js} +1 -1
  18. package/dist/client/assets/{blockDiagram-I7D4REHJ-B2YonsoG.js → blockDiagram-I7D4REHJ-CeN7xDSG.js} +2 -2
  19. package/dist/client/assets/{blockDiagram-BEXU5L5S-BgTM0var.js → blockDiagram-RJAE7QA3-CsHpm8AL.js} +3 -3
  20. package/dist/client/assets/{bn-BD-U4SYNFCO-CdNaPy4Q.js → bn-BD-U4SYNFCO-BKKqqvJ1.js} +1 -1
  21. package/dist/client/assets/{bn-IN-HKDJIITE-CdNaPy4Q.js → bn-IN-HKDJIITE-BKKqqvJ1.js} +1 -1
  22. package/dist/client/assets/{browser-BKLM0ThC-BCLQGPD6-K2seJgRL.js → browser-BKLM0ThC-BCLQGPD6-B6uxmOe1.js} +1 -1
  23. package/dist/client/assets/{c4Diagram-7LVT6UL2-r4IwomZm.js → c4Diagram-7LVT6UL2-Bezmsa8k.js} +1 -1
  24. package/dist/client/assets/{c4Diagram-YGBWAQC7-_xZPrNkB.js → c4Diagram-XDPPPE54-COKPOr_O.js} +2 -2
  25. package/dist/client/assets/{ca-ES-2KGUU5XB-C9t-c0cH.js → ca-ES-2KGUU5XB-CYClUOgC.js} +1 -1
  26. package/dist/client/assets/canvasEditor-BJkwGzO1.css +1 -0
  27. package/dist/client/assets/canvasEditor-CWbY0cMf.js +1 -0
  28. package/dist/client/assets/channel-COwKkfba.js +1 -0
  29. package/dist/client/assets/{chunk-6AZGARVD--pTGpDnx.js → chunk-24IY7LWP-DUl0BbtV.js} +1 -1
  30. package/dist/client/assets/chunk-2E4U76K2-CPmbCsOa.js +1 -0
  31. package/dist/client/assets/{chunk-GTNCS2PH-ChgkzEIi.js → chunk-2E7WHVMD-CnfGYKwC.js} +3 -3
  32. package/dist/client/assets/chunk-2ZTRR5NV-CowhtTwB.js +2 -0
  33. package/dist/client/assets/{chunk-5V3GS4D5-B5uC2oxu.js → chunk-3M4EKCLJ-BeG5ZU4c.js} +1 -1
  34. package/dist/client/assets/{chunk-3Z5EZCMW-BAnA6eQ7.js → chunk-3Z5EZCMW-DQ1fwqmG.js} +1 -1
  35. package/dist/client/assets/{chunk-NETBCI7D-CmUwDWUZ.js → chunk-4EMNKR2T-B97vb0rp.js} +1 -1
  36. package/dist/client/assets/{chunk-4HAMMTFA-q0ldNVvr.js → chunk-4HAMMTFA-B3s0XvP_.js} +1 -1
  37. package/dist/client/assets/{chunk-6K3QC6MW-DGVRzL6v.js → chunk-4S7OKTRW-DIpJGzf1.js} +1 -1
  38. package/dist/client/assets/{chunk-ICYGCRZG-D97UeqJs.js → chunk-53FOQ5SW-C3TQxbLr.js} +1 -1
  39. package/dist/client/assets/{chunk-GWA4HPMP-CGmv2yIq.js → chunk-55XCU76K-CZBj2eVM.js} +1 -1
  40. package/dist/client/assets/{chunk-5V3GS4D5-BR7kgIgJ.js → chunk-5V3GS4D5-CD51GF-u.js} +1 -1
  41. package/dist/client/assets/{chunk-6AZGARVD-CnZDr4Cj.js → chunk-6AZGARVD-BD9EvFmU.js} +1 -1
  42. package/dist/client/assets/{chunk-6EIED4P4-Bp8dpTvX.js → chunk-6EIED4P4-CZFyd-Ct.js} +1 -1
  43. package/dist/client/assets/{chunk-6K3QC6MW-JnuvEGV4.js → chunk-6K3QC6MW-BJWmnHdF.js} +1 -1
  44. package/dist/client/assets/{chunk-6TQVIW2G-BSj0l_pu.js → chunk-6TQVIW2G-DaBcb454.js} +1 -1
  45. package/dist/client/assets/chunk-747NJXEK-D08Z0c6r.js +2 -0
  46. package/dist/client/assets/{chunk-75Z2AOVW-DitkSoSG.js → chunk-75Z2AOVW-DLVzmKuL.js} +1 -1
  47. package/dist/client/assets/chunk-7S6XSTFO-CXBGoJ7Z.js +2 -0
  48. package/dist/client/assets/{chunk-MBY4JIJT-DTJ4UcAm.js → chunk-AQDTSKZB-BpOOnFv4.js} +3 -3
  49. package/dist/client/assets/chunk-BP2KR52E-yBDJ_0ib.js +2 -0
  50. package/dist/client/assets/{chunk-CLGD4ZFX-BfYJtJm1.js → chunk-CLGD4ZFX-BBNA_mHW.js} +1 -1
  51. package/dist/client/assets/chunk-DSNLSHJZ-DkAaVKkN.js +127 -0
  52. package/dist/client/assets/{chunk-DU6HZSFF-CWlP1Dk_.js → chunk-DU6HZSFF-Dz0Q7VKE.js} +2 -2
  53. package/dist/client/assets/{chunk-GNY47TPC-CTrH5O5R.js → chunk-EJLWFMJV-CxNRZ5Ez.js} +1 -1
  54. package/dist/client/assets/{chunk-F27PBJKO-DPcsPcEs.js → chunk-F27PBJKO-BziR3pku.js} +1 -1
  55. package/dist/client/assets/chunk-F6S3BTY2-Dw9FK6Vq.js +2 -0
  56. package/dist/client/assets/chunk-FBWCRPUE-PUG6Mjdg.js +12 -0
  57. package/dist/client/assets/{chunk-FOHPRMQF-Dmmo5Kak.js → chunk-FOHPRMQF-COOliuUh.js} +8 -8
  58. package/dist/client/assets/{chunk-GMAD6QVW-Bgk8qnty.js → chunk-GMAD6QVW-B6zS4VJx.js} +1 -1
  59. package/dist/client/assets/{chunk-GVQU2GXP-CQ8cl-Uu.js → chunk-GVQU2GXP-BA8Vt-19.js} +1 -1
  60. package/dist/client/assets/chunk-HAGFOTED-miSk6HXc.js +62 -0
  61. package/dist/client/assets/chunk-HNE4Q36P-BTbX-t8_.js +1 -0
  62. package/dist/client/assets/{chunk-I5DQTOEV-B98XA8VK.js → chunk-I5DQTOEV-qgbr-MbI.js} +1 -1
  63. package/dist/client/assets/{chunk-ICYGCRZG-odvlDZyA.js → chunk-ICYGCRZG-Dv6Hl9ds.js} +1 -1
  64. package/dist/client/assets/{chunk-IH6LHLGP-BNevEHZK.js → chunk-IH6LHLGP-DCTJcBuf.js} +1 -1
  65. package/dist/client/assets/{chunk-IMKFNOWR-CBqxfpcP.js → chunk-IMKFNOWR-DN2Mwt1n.js} +1 -1
  66. package/dist/client/assets/{chunk-KI3K4JFJ-D5XCPRZv.js → chunk-KI3K4JFJ-Hb_e7W2X.js} +1 -1
  67. package/dist/client/assets/{chunk-IH6LHLGP-CvXe34hB.js → chunk-KPI5JJXK-BoDlpdVM.js} +1 -1
  68. package/dist/client/assets/{chunk-L3NEJ4N5-BflzkdTI.js → chunk-L3NEJ4N5-M6XySblQ.js} +1 -1
  69. package/dist/client/assets/{chunk-LNGE3PJU-5nWSl6jJ.js → chunk-LNGE3PJU-CxdyKuxt.js} +4 -4
  70. package/dist/client/assets/{chunk-LNGE3PJU-5-SxdO55.js → chunk-LNGE3PJU-DRjopGY8.js} +4 -4
  71. package/dist/client/assets/chunk-NGNAAXSQ-Bw6tHVuc.js +136 -0
  72. package/dist/client/assets/chunk-NQOKRVIF-B_sOt25u.js +213 -0
  73. package/dist/client/assets/chunk-NZIJZ2A6-CmC5bqJr.js +42 -0
  74. package/dist/client/assets/{chunk-UY3FDG6J-DqSM_0FB.js → chunk-OD3NTWWA-D7wmrqo1.js} +1 -1
  75. package/dist/client/assets/{chunk-OSK3NFVY-DqeKV_pg.js → chunk-OSK3NFVY-DJyrXrea.js} +1 -1
  76. package/dist/client/assets/chunk-OUJLGHUK-DIWqBvm0.js +2 -0
  77. package/dist/client/assets/chunk-OYAV6JZA-kXOh375k.js +1 -0
  78. package/dist/client/assets/{chunk-P2QGCYS3-BA--DhpW.js → chunk-P2QGCYS3-DejntbnV.js} +1 -1
  79. package/dist/client/assets/{chunk-POPQ4Y6H-V_NEc45n.js → chunk-POPQ4Y6H-D3VayDzJ.js} +1 -1
  80. package/dist/client/assets/{chunk-PWAF6VOD-D_kLse-N.js → chunk-PWAF6VOD-CmxcnYFJ.js} +1 -1
  81. package/dist/client/assets/{chunk-3Z5EZCMW-Yx4Q5AcN.js → chunk-QNH66VMT-De2vWRUE.js} +1 -1
  82. package/dist/client/assets/{chunk-SHT3W25Y-YM3S-A_M.js → chunk-SHT3W25Y-SAi_Zk5G.js} +1 -1
  83. package/dist/client/assets/{chunk-SRAX5OIU-KFQikY-4.js → chunk-SRAX5OIU-wzfotNc-.js} +1 -1
  84. package/dist/client/assets/{chunk-SVP7TREG-DdNhDOmW.js → chunk-SVP7TREG-BtK2J628.js} +1 -1
  85. package/dist/client/assets/{chunk-TICWLB2K-BGGgCr4x.js → chunk-TICWLB2K-wmAorf_a.js} +1 -1
  86. package/dist/client/assets/{chunk-TLUHSLCS-DCZhIDYA.js → chunk-TLUHSLCS-DA3Sq1kc.js} +1 -1
  87. package/dist/client/assets/{chunk-6EIED4P4-DBVWq7Tz.js → chunk-TPMEZKFX-CarinQak.js} +1 -1
  88. package/dist/client/assets/{chunk-7PRAP22T-9uTvtc_-.js → chunk-UHW7PFBP-ClLfHtva.js} +1 -1
  89. package/dist/client/assets/{chunk-UY3FDG6J-QT-rkt0y.js → chunk-UY3FDG6J-BT57Gakr.js} +1 -1
  90. package/dist/client/assets/{chunk-6TQVIW2G-DgBX-Pv0.js → chunk-VPELOWWC-Dk0xIrB-.js} +1 -1
  91. package/dist/client/assets/{chunk-WEXAMYUT-DDlVNp8J.js → chunk-VQ5W62QI-CxUPWJRX.js} +1 -1
  92. package/dist/client/assets/{chunk-I5DQTOEV-aBZooNp1.js → chunk-VTWWFHGB-BZsdnDPL.js} +1 -1
  93. package/dist/client/assets/{chunk-KI3K4JFJ-FTtDwx3-.js → chunk-VZTHESGH-D6CHzqGr.js} +1 -1
  94. package/dist/client/assets/chunk-WQQL4CDK-BiuwKtd-.js +10 -0
  95. package/dist/client/assets/{chunk-X3CZISLH-DwWpRaN8.js → chunk-X3CZISLH-Bwnh_YJ7.js} +1 -1
  96. package/dist/client/assets/{chunk-X3CZISLH-BixgQztF.js → chunk-X3CZISLH-DayjKu55.js} +1 -1
  97. package/dist/client/assets/{chunk-XHIXRSVI-BSN7JlfK.js → chunk-XHIXRSVI-C0fC7dJN.js} +1 -1
  98. package/dist/client/assets/{chunk-XXDRQBXY-C7hQHDmQ.js → chunk-XXDRQBXY-BxVnmMBx.js} +1 -1
  99. package/dist/client/assets/{chunk-XXDRQBXY-CdRN9Akd.js → chunk-XXDRQBXY-DBb3y0NH.js} +1 -1
  100. package/dist/client/assets/{chunk-XHIXRSVI-DN_fEwws.js → chunk-YK26KJH5-ywVSJDLS.js} +1 -1
  101. package/dist/client/assets/{chunk-742MDFTN-D1nh6vNv.js → chunk-YZO67HFG-Bg5cZX5R.js} +1 -1
  102. package/dist/client/assets/{chunk-Z5NKEFVG-q6fHH75m.js → chunk-Z5NKEFVG-BPqw37Lj.js} +3 -3
  103. package/dist/client/assets/{chunk-5DYCD2WN-BKWCKnK-.js → chunk-ZAUX2LTX-Yte1ozQc.js} +1 -1
  104. package/dist/client/assets/chunk-ZCHMQSOR-B3FSat8d.js +1 -0
  105. package/dist/client/assets/chunk-ZO67DCNQ-DnpDWW4I.js +2 -0
  106. package/dist/client/assets/classDiagram-ZZMXUADV-CLl-Ahxw.js +1 -0
  107. package/dist/client/assets/{classDiagram-v2-NBCMYWYE-3TQORq33.js → classDiagram-v2-4MYWR3UA-rPd2Vhml.js} +3 -3
  108. package/dist/client/assets/classDiagram-v2-VYDZK3BY-CLl-Ahxw.js +1 -0
  109. package/dist/client/assets/{clike-D_6L3tnO.js → clike-xvONpD0Z.js} +1 -1
  110. package/dist/client/assets/{clone-C1hp9FUh.js → clone-BoYpPplK.js} +1 -1
  111. package/dist/client/assets/{comment-markdown-renderer-Bxi_JRSR.js → comment-markdown-renderer-a1B3HT_T.js} +1 -1
  112. package/dist/client/assets/comment-thread-store-da3_1rfw.js +1 -0
  113. package/dist/client/assets/comment-threads-mG1CkBKO.js +4 -0
  114. package/dist/client/assets/comment-ui-shared-4bhpJQpv.js +7 -0
  115. package/dist/client/assets/{cose-bilkent-JH36ORCC-Czr0rwGr.js → cose-bilkent-JH36ORCC-BMHIGaXC.js} +1 -1
  116. package/dist/client/assets/{cose-bilkent-JH36ORCC-DLmEf9HS.js → cose-bilkent-JH36ORCC-Chlyw-Nt.js} +1 -1
  117. package/dist/client/assets/crystal-Bl6YKCG_.js +1 -0
  118. package/dist/client/assets/{cs-CZ-VUCGPRML-BfCoYAgj.js → cs-CZ-VUCGPRML-KFMLw537.js} +1 -1
  119. package/dist/client/assets/cynefin-EF2NZ3EQ-CwzF3ccb.js +1 -0
  120. package/dist/client/assets/cynefin-OW5HDTMX-CeLVR4kL.js +1 -0
  121. package/dist/client/assets/{cynefinDiagram-5FMLGOSQ-DTnLZaO7.js → cynefinDiagram-5FMLGOSQ-No5A0--Q.js} +1 -1
  122. package/dist/client/assets/{cynefinDiagram-VND7K2PF-DwfMZ3vk.js → cynefinDiagram-WF24UDRP-BvwG2vI4.js} +1 -1
  123. package/dist/client/assets/cytoscape-cose-bilkent-iiiP-uiT.js +1 -0
  124. package/dist/client/assets/cytoscape-fcose-CiCTciSr.js +1 -0
  125. package/dist/client/assets/cytoscape.esm-CCmQRb78.js +321 -0
  126. package/dist/client/assets/{da-DK-NNDP2IVP-DBw9ZNTR.js → da-DK-NNDP2IVP-BpM-jMGR.js} +1 -1
  127. package/dist/client/assets/dagre-D7JM2Yhv.js +1 -0
  128. package/dist/client/assets/dagre-GXQ25YYZ-B0VZWLr5.js +4 -0
  129. package/dist/client/assets/dagre-NK4GIZVX-DoXdmyVb.js +4 -0
  130. package/dist/client/assets/{de-CH-I7RAVIZN-DYW18Vsr.js → de-CH-I7RAVIZN-BNkaUG5V.js} +1 -1
  131. package/dist/client/assets/{de-DE-WBQ3DQLR-DYW18Vsr.js → de-DE-WBQ3DQLR-BNkaUG5V.js} +1 -1
  132. package/dist/client/assets/deferred-collab-C9aa9cvT.css +1 -0
  133. package/dist/client/assets/deferred-git-BPQ-UgrN.css +1 -0
  134. package/dist/client/assets/deferred-preview-B-RebLry.css +1 -0
  135. package/dist/client/assets/{diagram-3UASUU5V-DmhdYv6_.js → diagram-CBK3MWTC-hfExzGJR.js} +2 -2
  136. package/dist/client/assets/{diagram-MLGK6HIB-DIBG6Ivu.js → diagram-I5XIIV2D-Diz84D6I.js} +1 -1
  137. package/dist/client/assets/{diagram-CDSNMT55-D_qyS11R.js → diagram-ODIL2UCW-lVgTk1r8.js} +4 -4
  138. package/dist/client/assets/diagram-PFBEJUXE-Dm-wXUUU.js +3 -0
  139. package/dist/client/assets/{diagram-MPIPVDR6-D9XsALDV.js → diagram-RJA3I4VV-Bv4ZAy4v.js} +2 -2
  140. package/dist/client/assets/{diagram-S7CK7UJ4-CGTzfo2f.js → diagram-S7CK7UJ4-ClAT_J6s.js} +2 -2
  141. package/dist/client/assets/diagram-TYUNFSNR-CN-Xc6z9.js +200 -0
  142. package/dist/client/assets/{diagram-UQ7AKVKN-CWZS8QtB.js → diagram-UQ7AKVKN-DJ6uTWCE.js} +1 -1
  143. package/dist/client/assets/{diagram-VSXAHHWV-DaO1nOZF.js → diagram-VSXAHHWV-C2k4OYGw.js} +1 -1
  144. package/dist/client/assets/{diagram-VX7I27RA-B54P6Cyf.js → diagram-VX7I27RA-CLX2KoMs.js} +1 -1
  145. package/dist/client/assets/{diagram-Z3DM3KII-Cl2EXiXp.js → diagram-Z3DM3KII-BZcZUF57.js} +1 -1
  146. package/dist/client/assets/{direct-engine-DVLMOJWp-C-YL5NFb.js → direct-engine-DVLMOJWp-C_tInsJx.js} +1 -1
  147. package/dist/client/assets/dist-7kwQLW_E.js +1 -0
  148. package/dist/client/assets/dist-B-G-pifG.js +11 -0
  149. package/dist/client/assets/dist-B0vhBQTT.js +13 -0
  150. package/dist/client/assets/dist-BBVAlyPS.js +1 -0
  151. package/dist/client/assets/dist-BGDa8poZ.js +1 -0
  152. package/dist/client/assets/{dist-uk11ih8u.js → dist-BJ93nZVx.js} +2 -2
  153. package/dist/client/assets/dist-BS271jN_.js +1 -0
  154. package/dist/client/assets/dist-BUgvZKJ6.js +39 -0
  155. package/dist/client/assets/dist-BXomWIuA.js +2 -0
  156. package/dist/client/assets/dist-BbrmdpPb.js +1 -0
  157. package/dist/client/assets/dist-BfvzS-2t.js +1 -0
  158. package/dist/client/assets/dist-Bt7Xaqyp.js +1 -0
  159. package/dist/client/assets/dist-BtOSkvqt.js +1 -0
  160. package/dist/client/assets/{dist-Ch6Sr9KF.js → dist-C150LLfi.js} +6 -6
  161. package/dist/client/assets/dist-C6YYSeP1.js +9 -0
  162. package/dist/client/assets/dist-CFzMlwAz.js +1 -0
  163. package/dist/client/assets/dist-CH86sVcz.js +1 -0
  164. package/dist/client/assets/dist-CP97HJ4M.js +1 -0
  165. package/dist/client/assets/dist-CVDt4G0T.js +1 -0
  166. package/dist/client/assets/dist-CbwTIhZ4.js +1 -0
  167. package/dist/client/assets/dist-CfwwN8_Y.js +1 -0
  168. package/dist/client/assets/{dist-B_J_HbC0.js → dist-CumnGVmJ.js} +1 -1
  169. package/dist/client/assets/dist-CvwwJhwr.js +1 -0
  170. package/dist/client/assets/dist-D-detfUV.js +1 -0
  171. package/dist/client/assets/dist-DCaysCNp.js +1 -0
  172. package/dist/client/assets/dist-DCgncsfc.js +6 -0
  173. package/dist/client/assets/dist-DFWn8cbH.js +1 -0
  174. package/dist/client/assets/dist-DKBDZ7Fw.js +1 -0
  175. package/dist/client/assets/dist-DUrzEppq.js +1 -0
  176. package/dist/client/assets/dist-Db2OLA3a.js +1 -0
  177. package/dist/client/assets/dist-Dd0BffVR.js +1 -0
  178. package/dist/client/assets/dist-X-11q-Vc.js +1 -0
  179. package/dist/client/assets/dist-aNZ025fx.js +23 -0
  180. package/dist/client/assets/dist-ftwTHAfS.js +1 -0
  181. package/dist/client/assets/dist-hiG7zUCa.js +1 -0
  182. package/dist/client/assets/document-formatter-B_jrdFGJ.js +1 -0
  183. package/dist/client/assets/drawioEditor-DhRXvyRT.js +9 -0
  184. package/dist/client/assets/{duration-BiuFXtXd.js → duration-DPNtiFfE.js} +1 -1
  185. package/dist/client/assets/{dylan-BCDoL_-p.js → dylan-S7ucR4pR.js} +1 -1
  186. package/dist/client/assets/{ebnfDiagram-PWID7BFC-PfC84FyI.js → ebnfDiagram-PWID7BFC-B8zzvt1e.js} +1 -1
  187. package/dist/client/assets/{ebnfDiagram-ZINNZB2B-DYvm_QtE.js → ebnfDiagram-V4P3TTPT-PjRB23H_.js} +1 -1
  188. package/dist/client/assets/editor-session-BnTvcvzz.js +13 -0
  189. package/dist/client/assets/{el-GR-TYQHVGXW-Dx82YYAS.js → el-GR-TYQHVGXW-BHUJHVd3.js} +1 -1
  190. package/dist/client/assets/elk-QONTBCTQ-DknSb2FG.js +27 -0
  191. package/dist/client/assets/embedded-editor-base-C44ZcCZv.css +1 -0
  192. package/dist/client/assets/embedpdf-VVX-wFIh.js +1 -0
  193. package/dist/client/assets/{embedpdf-cl9qiF45-itpgqvGY.js → embedpdf-cl9qiF45-Cv92w6Wn.js} +6 -6
  194. package/dist/client/assets/en-AUO4QW63-CgjNrgHv.js +1 -0
  195. package/dist/client/assets/{erDiagram-OPXOYQCR-o8GRv8A_.js → erDiagram-KYQIGQAA-BHguakEd.js} +2 -2
  196. package/dist/client/assets/{erDiagram-RLTQ6QDP-C9cJl5NB.js → erDiagram-RLTQ6QDP-YPD0-iRc.js} +1 -1
  197. package/dist/client/assets/{es-ES-JEUOREKJ-Rx0NUQDl.js → es-ES-JEUOREKJ-CeuoqqTN.js} +1 -1
  198. package/dist/client/assets/{esm-BzZ1JFVo.js → esm-nC3n5xMZ.js} +5 -5
  199. package/dist/client/assets/{estree-DGmLqopC.js → estree-Cw-tQG5d.js} +4 -4
  200. package/dist/client/assets/{eu-ES-SO5DEEAN-CDYm-BcK.js → eu-ES-SO5DEEAN-D_7bAcKh.js} +1 -1
  201. package/dist/client/assets/eventmodeling-K75KTNOO-BsPoof5R.js +1 -0
  202. package/dist/client/assets/eventmodeling-NTZA5JFV-Bwo1LIKP.js +1 -0
  203. package/dist/client/assets/excalidraw-element-link-BduFAMXS.js +1 -0
  204. package/dist/client/assets/excalidraw-scene-DzfbvjqT.js +1 -0
  205. package/dist/client/assets/excalidrawEditor-3jfVRVmE.js +9 -0
  206. package/dist/client/assets/excalidrawEditor-DiKOIudt.css +1 -0
  207. package/dist/client/assets/export-page-BiB1AeMg.js +46 -0
  208. package/dist/client/assets/exportDocument-BwukVyB9.js +2 -0
  209. package/dist/client/assets/exportDocument-D0mONgQ4.css +1 -0
  210. package/dist/client/assets/{fa-IR-I4JNTJHK-CFtHZqoT.js → fa-IR-I4JNTJHK-BeoSOVqB.js} +1 -1
  211. package/dist/client/assets/{fi-FI-REAEF6HQ-BIpjJqIb.js → fi-FI-REAEF6HQ-BqIp6GiK.js} +1 -1
  212. package/dist/client/assets/file-kind-BGxTVHan.js +1 -0
  213. package/dist/client/assets/file-search-D2UfqaRv.js +1 -0
  214. package/dist/client/assets/flowDiagram-HODETNUW-CVKOAnD7.js +1 -0
  215. package/dist/client/assets/flowDiagram-IUGLLWBU-BjEyR0dW.js +1 -0
  216. package/dist/client/assets/{fr-FR-SUCL7J6B-DGAKE8jH.js → fr-FR-SUCL7J6B-Dl3EFjA3.js} +1 -1
  217. package/dist/client/assets/{ganttDiagram-EL5Y4UJY-x40PW0Ah.js → ganttDiagram-EL5Y4UJY-CCUwTKb4.js} +1 -1
  218. package/dist/client/assets/ganttDiagram-R7GPNTJY-CXLqT-aU.js +292 -0
  219. package/dist/client/assets/gitGraph-4MIJSDKK-CWZptYrG.js +1 -0
  220. package/dist/client/assets/gitGraph-VSP46ZUC-x2Q42NFN.js +1 -0
  221. package/dist/client/assets/gitGraphDiagram-PDYL7XHY-BJ9CsrRo.js +106 -0
  222. package/dist/client/assets/{gitGraphDiagram-WWUBYQGX-ahsNaZsp.js → gitGraphDiagram-WWUBYQGX-OqdVjcEn.js} +1 -1
  223. package/dist/client/assets/{gl-ES-KHCSOGVH-DWKh0CMu.js → gl-ES-KHCSOGVH-DGHdzXnJ.js} +1 -1
  224. package/dist/client/assets/graphlib-DS17s2tU.js +1 -0
  225. package/dist/client/assets/groovy-CUrWKPia.js +1 -0
  226. package/dist/client/assets/{he-IL-JYXVXV2Q-zqbcM-4g.js → he-IL-JYXVXV2Q-DP8F40TD.js} +1 -1
  227. package/dist/client/assets/{hi-IN-BU52H3BO-CY8v6eG9.js → hi-IN-BU52H3BO-B1huAT2Y.js} +1 -1
  228. package/dist/client/assets/{html-BryNQ_yx.js → html-Drt7kOJE.js} +2 -2
  229. package/dist/client/assets/{hu-HU-OWADXDQ3-CEl6Udfh.js → hu-HU-OWADXDQ3-87zhVnWy.js} +1 -1
  230. package/dist/client/assets/{id-ID-2WY7E4VX-CCAeQpPr.js → id-ID-2WY7E4VX-BdFs5w71.js} +1 -1
  231. package/dist/client/assets/image-V6E7PHAZ-DSZxKLH0.js +1 -0
  232. package/dist/client/assets/image-blob-reduce.esm-ZiL83eII.js +2 -0
  233. package/dist/client/assets/image-lightbox-controller-DH39QMBp.js +184 -0
  234. package/dist/client/assets/index-BebSD0ym.js +960 -0
  235. package/dist/client/assets/index-CglpXOg7.css +1 -0
  236. package/dist/client/assets/info-A6RAGUB7-D_xaPiSc.js +1 -0
  237. package/dist/client/assets/info-OHQRW6UA-CBi78irM.js +1 -0
  238. package/dist/client/assets/{infoDiagram-27XIBGKW-MrZyptIy.js → infoDiagram-27XIBGKW-Ck9hyDJb.js} +1 -1
  239. package/dist/client/assets/{infoDiagram-VRGFBTTK-KkUjDRAQ.js → infoDiagram-MVDRKAX5-DcpftzUS.js} +1 -1
  240. package/dist/client/assets/{ishikawaDiagram-5VMMS53U-Bnt9yM0O.js → ishikawaDiagram-5VMMS53U-CazBMMkQ.js} +2 -2
  241. package/dist/client/assets/{ishikawaDiagram-OU5B5YK6-Di9BcpOY.js → ishikawaDiagram-HPEHV2GE-BG5PpI0A.js} +3 -3
  242. package/dist/client/assets/{it-IT-INVHSAJF-DytAgndh.js → it-IT-INVHSAJF-DnUnri32.js} +1 -1
  243. package/dist/client/assets/{ja-JP-JBNTKYP4-BflWlGhw.js → ja-JP-JBNTKYP4-DIs2dSob.js} +1 -1
  244. package/dist/client/assets/javascript-DZ4Qsoqy.js +1 -0
  245. package/dist/client/assets/javascript-lj9EKOz0.js +1 -0
  246. package/dist/client/assets/{journeyDiagram-3NMN7TZE-Bl0abK1r.js → journeyDiagram-3NMN7TZE-DJFGpA3F.js} +1 -1
  247. package/dist/client/assets/{journeyDiagram-ZHPQQLJL-J-sGrs9e.js → journeyDiagram-BOSHW7O7-CAdC3Sr9.js} +3 -3
  248. package/dist/client/assets/{jsx-runtime-DKj5X9O4.js → jsx-runtime-CldxteV5.js} +1 -1
  249. package/dist/client/assets/{kaa-TC3VIB7V-B-xtZfy0.js → kaa-TC3VIB7V-wP2hxPDI.js} +1 -1
  250. package/dist/client/assets/{kab-KAB-UOUDSQKM-BmO0O4Y4.js → kab-KAB-UOUDSQKM-CwUZUlMm.js} +1 -1
  251. package/dist/client/assets/{kanban-definition-PNTS6WVX-5ZDV_yIa.js → kanban-definition-FNSA4HC5-DLzqpQsC.js} +4 -4
  252. package/dist/client/assets/{kanban-definition-UXKFOSKX-DMgUfNt0.js → kanban-definition-UXKFOSKX-R91H_Ua5.js} +1 -1
  253. package/dist/client/assets/katex-B_JcIwqj.js +257 -0
  254. package/dist/client/assets/{katex-9NBMfU68.js → katex-DJhrJSbw.js} +1 -1
  255. package/dist/client/assets/keyboard-shortcuts-BWNCBJqw.js +1 -0
  256. package/dist/client/assets/{kk-KZ-P5H2X7YS-CSQFB8IN.js → kk-KZ-P5H2X7YS-Q3XzFKqf.js} +1 -1
  257. package/dist/client/assets/{km-KH-IHMV2US7-BxrjuEzr.js → km-KH-IHMV2US7-CxtoNVOY.js} +1 -1
  258. package/dist/client/assets/{ko-KR-ZTMANIDF-BnNRXd5J.js → ko-KR-ZTMANIDF-CJeG69_5.js} +1 -1
  259. package/dist/client/assets/{ku-TR-GPJTRB5G-BZM7f2aT.js → ku-TR-GPJTRB5G-D4gY4ec8.js} +1 -1
  260. package/dist/client/assets/{line-DEbP8Ok6.js → line-CttJWsP1.js} +1 -1
  261. package/dist/client/assets/linear-DGppY5mt.js +1 -0
  262. package/dist/client/assets/lobby-presence-DWGiwZgG.js +1 -0
  263. package/dist/client/assets/{lt-LT-V3XDOK3P-MVQBOHmF.js → lt-LT-V3XDOK3P-DTiFqRKt.js} +1 -1
  264. package/dist/client/assets/{lv-LV-DVQ3FADO-CrenwAhS.js → lv-LV-DVQ3FADO-BDx0eM98.js} +1 -1
  265. package/dist/client/assets/{markdown-CZ1tYEW8.js → markdown-C7cnJl_Q.js} +12 -12
  266. package/dist/client/assets/markdown-headings-CHNl_tgP.js +41 -0
  267. package/dist/client/assets/markdown-it-DWMS_G3H.js +13 -0
  268. package/dist/client/assets/{markdown-math-CyyBVuDO.js → markdown-math-CBhbNj1w.js} +13 -13
  269. package/dist/client/assets/{merge-CALoRt3l.js → merge-5Ig019a6.js} +1 -1
  270. package/dist/client/assets/{mermaid-parser.core-DBy--Jc0.js → mermaid-parser.core-B89UfKha.js} +3 -3
  271. package/dist/client/assets/{mermaid-parser.core-Bpogunsh.js → mermaid-parser.core-Dns-W-xX.js} +1 -1
  272. package/dist/client/assets/mermaid.core-8OvaaBlM.js +10 -0
  273. package/dist/client/assets/{mindmap-definition-NLK3R4M7-ByVb-0vj.js → mindmap-definition-6OY57UG3-0aQEcLTH.js} +11 -9
  274. package/dist/client/assets/{mindmap-definition-YA3MSWOX-DBZN5_GH.js → mindmap-definition-YA3MSWOX-CCSfi8SE.js} +1 -1
  275. package/dist/client/assets/{mr-IN-VZ6HH5FE-B-PHPglH.js → mr-IN-VZ6HH5FE-Cofn25fc.js} +1 -1
  276. package/dist/client/assets/{my-MM-XYKWHRK6-Be5sYp5q.js → my-MM-XYKWHRK6-lMTCoeax.js} +1 -1
  277. package/dist/client/assets/{nb-NO-UNO2GGZJ-BvSKGdja.js → nb-NO-UNO2GGZJ-CEFDplVi.js} +1 -1
  278. package/dist/client/assets/{nginx-8H7HVH4w.js → nginx-C-ORUuei.js} +1 -1
  279. package/dist/client/assets/{nl-NL-76EFHT4P-C2yNx1Cj.js → nl-NL-76EFHT4P-2WbCYdRT.js} +1 -1
  280. package/dist/client/assets/{nn-NO-CFKD7ABE-4NsqlDRP.js → nn-NO-CFKD7ABE-DfK-9yuu.js} +1 -1
  281. package/dist/client/assets/{ntriples-B9h1VB_g.js → ntriples-CzMBulkp.js} +1 -1
  282. package/dist/client/assets/{oc-FR-YBJTCJ3J-B4OTQsWW.js → oc-FR-YBJTCJ3J-BSWusGxV.js} +1 -1
  283. package/dist/client/assets/{pa-IN-SNOXSMRV-CKj_sOG7.js → pa-IN-SNOXSMRV-BYkNTWiO.js} +1 -1
  284. package/dist/client/assets/packet-AYTQ26CC-D6Y_lKZt.js +1 -0
  285. package/dist/client/assets/packet-JDAUHWVQ-DAR0r-Im.js +1 -0
  286. package/dist/client/assets/{pegDiagram-GJSIUBJH-aost1sSO.js → pegDiagram-ECIUJNBX-VujrKWCK.js} +1 -1
  287. package/dist/client/assets/{pegDiagram-XKGWAZYB-DRo8CZu3.js → pegDiagram-XKGWAZYB-DTA3EjtF.js} +1 -1
  288. package/dist/client/assets/percentages-LWOC67ZH-BO-ZFv57.js +1 -0
  289. package/dist/client/assets/pica-CXv_OHDX.js +2 -0
  290. package/dist/client/assets/{pie-DzWLGKAD.js → pie-Ba_4rf3r.js} +1 -1
  291. package/dist/client/assets/pie-WAS4IAKB-DLhltotv.js +1 -0
  292. package/dist/client/assets/pie-XZMESJXO-5MOdYfI0.js +1 -0
  293. package/dist/client/assets/{pieDiagram-E7YTZNPT-CZThaHsc.js → pieDiagram-E7YTZNPT-DBz-eVG3.js} +1 -1
  294. package/dist/client/assets/{pieDiagram-5QR66LMP-BICdpEuz.js → pieDiagram-GNMPY74T-CjRzeDCN.js} +2 -2
  295. package/dist/client/assets/{pl-PL-BSY6YFZ3-CFuzA6L0.js → pl-PL-BSY6YFZ3-DQTYFenp.js} +1 -1
  296. package/dist/client/assets/{powershell-BcIto6Sf.js → powershell-D8WpQPaX.js} +1 -1
  297. package/dist/client/assets/preload-helper-khBccGFq.js +1 -0
  298. package/dist/client/assets/preview-diagram-utils-ByzpiwPu.js +3 -0
  299. package/dist/client/assets/preview-render-compiler-B_gyVIfk.js +3 -0
  300. package/dist/client/assets/preview-render-worker-DYGDgbKA.js +579 -0
  301. package/dist/client/assets/prod-BTPZlnru.js +1 -0
  302. package/dist/client/assets/prod-CUXkwl3E.js +144 -0
  303. package/dist/client/assets/{pt-BR-CZDV62R3-CkPMtyNx.js → pt-BR-CZDV62R3-qKOF4THL.js} +1 -1
  304. package/dist/client/assets/{pt-PT-JO57XJJW-CBSnfGtF.js → pt-PT-JO57XJJW-CVFFmqez.js} +1 -1
  305. package/dist/client/assets/pug-CGoiHVBP.js +1 -0
  306. package/dist/client/assets/purify.es-BP9p1Dbb.js +3 -0
  307. package/dist/client/assets/{quadrantDiagram-AXDQQJYC-C5iowkl_.js → quadrantDiagram-AXDQQJYC-DaTj4J-B.js} +1 -1
  308. package/dist/client/assets/{quadrantDiagram-O4NWA36T-Bgx5bF97.js → quadrantDiagram-D57K4MC3-Bvy8uMKb.js} +3 -3
  309. package/dist/client/assets/quick-switcher-controller-m2gikuD-.js +1 -0
  310. package/dist/client/assets/radar-ABXABTNO-hhs6i-b1.js +1 -0
  311. package/dist/client/assets/radar-RG4KPBEZ-B-2eETsZ.js +1 -0
  312. package/dist/client/assets/railroad-74A4TZTK-B18ef5-Z.js +1 -0
  313. package/dist/client/assets/railroad-I3PHUGI6-v8Mk380c.js +1 -0
  314. package/dist/client/assets/railroad-abnf-HS5TGJTU-CTQaqjqj.js +1 -0
  315. package/dist/client/assets/railroad-abnf-LNEFI6M7-C3t6jbSY.js +1 -0
  316. package/dist/client/assets/railroad-ebnf-DWYD2UWJ-BvF5fO2B.js +1 -0
  317. package/dist/client/assets/railroad-ebnf-LZEXJU2U-BU_P5mpS.js +1 -0
  318. package/dist/client/assets/railroad-peg-JR7BVNR7-B90veE1n.js +1 -0
  319. package/dist/client/assets/railroad-peg-WCYAUIDC-CQCPL33M.js +1 -0
  320. package/dist/client/assets/{railroadDiagram-O6MQD6OU-BTt_rKjT.js → railroadDiagram-O6MQD6OU-DJRswcTS.js} +1 -1
  321. package/dist/client/assets/{railroadDiagram-XR7U4H2S-DbVoNgSz.js → railroadDiagram-Y72NRBL7-BNjzJfAu.js} +1 -1
  322. package/dist/client/assets/{requirementDiagram-BXWQKSXE-BkvazG7r.js → requirementDiagram-BXWQKSXE-DsljP03a.js} +1 -1
  323. package/dist/client/assets/{requirementDiagram-PLB6GJNP-BT0j9C40.js → requirementDiagram-EQYSW5RA-BKm3hJ3g.js} +4 -4
  324. package/dist/client/assets/{ro-RO-UZ5ICYYN-BOuntc_r.js → ro-RO-UZ5ICYYN-BgFoGyRb.js} +1 -1
  325. package/dist/client/assets/rolldown-runtime-COiEfhsA.js +1 -0
  326. package/dist/client/assets/{ru-RU-AN7JPREC-D-ow3SNR.js → ru-RU-AN7JPREC-C1Q9hhMw.js} +1 -1
  327. package/dist/client/assets/{sankeyDiagram-P5KCCOFB-C_IemB9h.js → sankeyDiagram-P5KCCOFB-7e3snR42.js} +1 -1
  328. package/dist/client/assets/{sankeyDiagram-IPEJSGJF-X1BCUIrf.js → sankeyDiagram-SY24JHO5-X6282wPp.js} +3 -3
  329. package/dist/client/assets/sequenceDiagram-BLEHNHQU-BytEbBel.js +169 -0
  330. package/dist/client/assets/{sequenceDiagram-WJ2MYXX4-CxFBgLGd.js → sequenceDiagram-WJ2MYXX4-Fy1RHQht.js} +2 -2
  331. package/dist/client/assets/{si-LK-7CBLD6QQ-c91EepX0.js → si-LK-7CBLD6QQ-B0AJbYON.js} +1 -1
  332. package/dist/client/assets/sizeCapture-INFHLROL-3uHXrFqA.js +1 -0
  333. package/dist/client/assets/sizeCapture-INFHLROL-BMR1ovSU.js +1 -0
  334. package/dist/client/assets/{sk-SK-SWR6DKBI-D5vFMIL6.js → sk-SK-SWR6DKBI-BSd-r0Zi.js} +1 -1
  335. package/dist/client/assets/{sl-SI-QY5KCFGA-RZhwMpQL.js → sl-SI-QY5KCFGA-Dzrhm7-L.js} +1 -1
  336. package/dist/client/assets/src-C2pSFGeK.js +1 -0
  337. package/dist/client/assets/src-GGgGZJfE.js +2 -0
  338. package/dist/client/assets/{standalone-DbyFjvTU.js → standalone-YobQElH8.js} +3 -3
  339. package/dist/client/assets/{stateDiagram-D77RDMKH-BaSQ6Owj.js → stateDiagram-D77RDMKH-CW2cSnDj.js} +1 -1
  340. package/dist/client/assets/{stateDiagram-v2-GCMORJYK-CsVcfwVp.js → stateDiagram-v2-A6IESKWZ-DZU6pVog.js} +2 -2
  341. package/dist/client/assets/stateDiagram-v2-MP3YSRHH-iqEUZMAD.js +1 -0
  342. package/dist/client/assets/subset-shared.chunk-CL3Oizwd.js +1 -0
  343. package/dist/client/assets/{subset-worker.chunk-CoaGye2U.js → subset-worker.chunk-BdPjfgp2.js} +1 -1
  344. package/dist/client/assets/{sv-SE-O3OFCY3J-DnS86_7q.js → sv-SE-O3OFCY3J-6NoVnLTE.js} +1 -1
  345. package/dist/client/assets/swimlanes-42K2YHIH-8FngRMNT.js +1 -0
  346. package/dist/client/assets/swimlanes-B3ENRKFQ-D6BYdY9J.js +1 -0
  347. package/dist/client/assets/swimlanesDiagram-AYQRV4AK-hRw-7uL-.js +8 -0
  348. package/dist/client/assets/swimlanesDiagram-VR7AAH4N-DvDPHOsc.js +8 -0
  349. package/dist/client/assets/{ta-IN-V6NHHU6Z-D5jy7_AE.js → ta-IN-V6NHHU6Z-MAwuBBtS.js} +1 -1
  350. package/dist/client/assets/{th-TH-WLSZUSBX-DHehoYR2.js → th-TH-WLSZUSBX-D--o8vzw.js} +1 -1
  351. package/dist/client/assets/{tiki-AK6FwT8q.js → tiki-CvUEFusT.js} +1 -1
  352. package/dist/client/assets/{timeline-definition-24CTP7MA-zse-5Dbm.js → timeline-definition-24CTP7MA-C_Q-Br6X.js} +1 -1
  353. package/dist/client/assets/{timeline-definition-EJHVYXUP-BhqPlKkN.js → timeline-definition-JXYKGLGB-7HLQ94MK.js} +3 -3
  354. package/dist/client/assets/{tr-TR-GUFYG22B-ClVaf8h1.js → tr-TR-GUFYG22B-Bd-NNmz1.js} +1 -1
  355. package/dist/client/assets/treeView-D4JQ5SDB-BR1FV1TU.js +1 -0
  356. package/dist/client/assets/treeView-Q6P3EWNA-3N1U2hq1.js +1 -0
  357. package/dist/client/assets/treemap-SAJKECNS-yO7fe4dH.js +1 -0
  358. package/dist/client/assets/treemap-WGGIJYW6-BFO1obBW.js +1 -0
  359. package/dist/client/assets/{uk-UA-K6SV5NFQ-BLTTtyNB.js → uk-UA-K6SV5NFQ-_OJVmMT9.js} +1 -1
  360. package/dist/client/assets/usecaseDiagram-WPOLBNNX-uIlXI205.js +328 -0
  361. package/dist/client/assets/{uz-UZ-TVKTZO2G-Bm02Eg3D.js → uz-UZ-TVKTZO2G-BPXzC1bJ.js} +1 -1
  362. package/dist/client/assets/vault-api-client-DORNT49K.js +25 -0
  363. package/dist/client/assets/{vault-paths-BT-6nztu.js → vault-paths-R2qcfmE0.js} +1 -1
  364. package/dist/client/assets/{venn.esm-C5rDfA9t.js → venn.esm-BxwF8YNp.js} +1 -1
  365. package/dist/client/assets/{vennDiagram-4TSXK5OY-DgHr6cJD.js → vennDiagram-4TSXK5OY-Cl6f16-U.js} +1 -1
  366. package/dist/client/assets/{vennDiagram-UO4OBE2U-BRwLn2Q1.js → vennDiagram-Q3Y3IDCW-DZFF_ntk.js} +3 -3
  367. package/dist/client/assets/{vi-VN-7FKFXJNO-CL3WPhmG.js → vi-VN-7FKFXJNO-CjP0avHF.js} +1 -1
  368. package/dist/client/assets/wardley-7MLQ67FV-CCVlnR9Q.js +1 -0
  369. package/dist/client/assets/wardley-WFR3VGLG-BuSMKsul.js +1 -0
  370. package/dist/client/assets/{wardleyDiagram-VNRHLVJA-B_tMcVFG.js → wardleyDiagram-IVAIDKWA-bwMSFCgK.js} +4 -4
  371. package/dist/client/assets/{wardleyDiagram-VM6X3IG4-9A60XZis.js → wardleyDiagram-VM6X3IG4-BbU7rAxb.js} +1 -1
  372. package/dist/client/assets/{wiki-link-resolver-Dch88erO.js → wiki-link-resolver-BCdGUpdu.js} +1 -1
  373. package/dist/client/assets/{worker-engine-BCCrxWYm-CX0qJ_cG.js → worker-engine-BCCrxWYm-BU5lrbSm.js} +1 -1
  374. package/dist/client/assets/workspace-sync-client-B7dmdJGR.js +1 -0
  375. package/dist/client/assets/xychartDiagram-4URNHDU4-AjWzA402.js +7 -0
  376. package/dist/client/assets/{xychartDiagram-S5SC5T6Z-D00iy-wB.js → xychartDiagram-S5SC5T6Z-C5L6jReS.js} +1 -1
  377. package/dist/client/assets/{yaml-BcZaqAz8.js → yaml-Breo7DWT.js} +4 -4
  378. package/dist/client/assets/yjs-ZDLwhBUu.js +4 -0
  379. package/dist/client/assets/yjs-provider-reset-guard-D5pm5yx8.js +1 -0
  380. package/dist/client/assets/{zh-CN-AOKVLNNK-DGidDH2b.js → zh-CN-AOKVLNNK-CU0vKHKs.js} +1 -1
  381. package/dist/client/assets/{zh-HK-CDKPF5DC-CRcNR3rk.js → zh-HK-CDKPF5DC-BBhn88ei.js} +1 -1
  382. package/dist/client/assets/{zh-TW-ZVGYESGW-C7Qji1y6.js → zh-TW-ZVGYESGW-od6h3pTc.js} +1 -1
  383. package/dist/client/canvas-editor.html +16 -0
  384. package/dist/client/drawio-editor.html +7 -6
  385. package/dist/client/excalidraw-editor.html +43 -42
  386. package/dist/client/export-document.html +4 -3
  387. package/dist/client/index.html +2 -2
  388. package/package.json +37 -39
  389. package/scripts/local-compose.mjs +101 -0
  390. package/src/client/app/canvas-editor.html +13 -0
  391. package/src/client/application/app-shell/git-feature.js +3 -2
  392. package/src/client/application/app-shell/ui-feature-identity.js +1 -0
  393. package/src/client/application/app-shell/ui-feature-shell.js +2 -0
  394. package/src/client/application/app-shell/ui-feature-tab-activity.js +4 -0
  395. package/src/client/application/app-shell/workspace-feature.js +8 -34
  396. package/src/client/application/diagram-chrome.js +8 -11
  397. package/src/client/application/diagram-preview-export.js +2 -1
  398. package/src/client/application/diagram-preview-hydrator.js +5 -5
  399. package/src/client/application/mermaid-preview-hydrator.js +5 -3
  400. package/src/client/application/plantuml-preview-hydrator.js +6 -0
  401. package/src/client/application/preview-render-compiler.js +34 -98
  402. package/src/client/application/preview-render-executor.js +3 -0
  403. package/src/client/application/preview-render-worker.js +2 -0
  404. package/src/client/application/preview-renderer.js +9 -5
  405. package/src/client/application/workspace-coordinator.js +18 -10
  406. package/src/client/application/workspace-preview-controller.js +105 -158
  407. package/src/client/application/workspace-route-controller.js +29 -54
  408. package/src/client/bootstrap/canvas-markdown-preview.js +87 -0
  409. package/src/client/bootstrap/collabmd-app-shell.js +28 -13
  410. package/src/client/canvas-editor.js +143 -0
  411. package/src/client/domain/canvas-view.js +50 -0
  412. package/src/client/domain/excalidraw-scene.js +17 -60
  413. package/src/client/domain/highlight-runtime.js +0 -4
  414. package/src/client/domain/markdown-formatting.js +12 -94
  415. package/src/client/domain/markdown-headings.js +98 -0
  416. package/src/client/domain/mermaid-source.js +44 -0
  417. package/src/client/domain/wiki-link-completions.js +42 -10
  418. package/src/client/export/export-pipeline.js +7 -6
  419. package/src/client/infrastructure/browser-preferences-port.js +27 -33
  420. package/src/client/infrastructure/canvas-room-client.js +210 -0
  421. package/src/client/infrastructure/canvas-text-editor.js +36 -0
  422. package/src/client/infrastructure/comment-thread-store.js +19 -77
  423. package/src/client/infrastructure/editor-view-adapter.js +0 -30
  424. package/src/client/infrastructure/excalidraw-room-client.js +22 -10
  425. package/src/client/infrastructure/hosted-api-client.js +4 -2
  426. package/src/client/infrastructure/vault-api-client.js +4 -4
  427. package/src/client/infrastructure/webmcp-tool-registry.js +5 -8
  428. package/src/client/presentation/canvas-editor-view.js +1028 -0
  429. package/src/client/presentation/canvas-embed-controller.js +116 -0
  430. package/src/client/presentation/canvas-picker.js +111 -0
  431. package/src/client/presentation/drawio-embed-controller.js +1 -3
  432. package/src/client/presentation/excalidraw-embed-controller.js +10 -3
  433. package/src/client/presentation/file-action-controller.js +37 -0
  434. package/src/client/presentation/file-explorer-controller.js +1 -2
  435. package/src/client/presentation/file-explorer-view.js +7 -1
  436. package/src/client/presentation/file-icon-svg.js +1 -1
  437. package/src/client/presentation/file-tree-state.js +4 -1
  438. package/src/client/presentation/git-diff-view-controller.js +3 -3
  439. package/src/client/presentation/image-lightbox-controller.js +1 -5
  440. package/src/client/presentation/team-settings-controller.js +44 -10
  441. package/src/client/styles/components/actions.css +4 -16
  442. package/src/client/styles/components/surfaces.css +0 -7
  443. package/src/client/styles/features/comment-card.css +1 -2
  444. package/src/client/styles/features/comment-markdown.css +0 -18
  445. package/src/client/styles/features/diagram-preview.css +0 -18
  446. package/src/client/styles/features/git-branch.css +0 -4
  447. package/src/client/styles/foundation/themes.css +6 -0
  448. package/src/client/styles/foundation/utilities.css +1 -2
  449. package/src/client/styles/layout/editor-page.css +0 -13
  450. package/src/client/styles/layout/responsive.css +2 -7
  451. package/src/client/styles/layout/shell.css +13 -1
  452. package/src/client/styles/layout/view-modes.css +1 -0
  453. package/src/client/styles/surfaces/canvas-editor.css +239 -0
  454. package/src/domain/canvas-room-codec.js +359 -0
  455. package/src/domain/collabmd-content-capabilities.js +10 -1
  456. package/src/domain/comment-threads.js +49 -5
  457. package/src/domain/excalidraw-room-codec.js +34 -83
  458. package/src/domain/excalidraw-scene.js +48 -0
  459. package/src/domain/file-kind.js +13 -1
  460. package/src/server/application/workspace-reconciliation.js +0 -14
  461. package/src/server/domain/backlink-index.js +1 -36
  462. package/src/server/domain/bases/base-index-snapshot-store.js +41 -24
  463. package/src/server/domain/bases/base-query-service.js +1 -47
  464. package/src/server/domain/collaboration/collaboration-room.js +214 -49
  465. package/src/server/domain/collaboration/room-registry.js +7 -7
  466. package/src/server/domain/hosted-workspace.js +29 -2
  467. package/src/server/domain/plantuml-encoder.js +7 -43
  468. package/src/server/infrastructure/git/diff-service.js +1 -5
  469. package/src/server/infrastructure/git/history-service.js +18 -2
  470. package/src/server/infrastructure/git/untracked-files.js +1 -1
  471. package/src/server/infrastructure/http/create-git-api-command-handler.js +60 -149
  472. package/src/server/infrastructure/http/create-hosted-api-handler.js +5 -2
  473. package/src/server/infrastructure/http/create-vault-api-query-handler.js +2 -2
  474. package/src/server/infrastructure/http/http-response.js +2 -36
  475. package/src/server/infrastructure/http/request-body.js +14 -49
  476. package/src/server/infrastructure/persistence/hosted-metadata-store.js +12 -3
  477. package/src/server/infrastructure/persistence/path-utils.js +8 -2
  478. package/src/server/infrastructure/persistence/sidecar-store.js +5 -1
  479. package/src/server/infrastructure/persistence/vault-file-store.js +26 -60
  480. package/src/server/{infrastructure/git → shared}/image-mime.js +2 -2
  481. package/dist/client/assets/CodeMirrorEditor-UCMRAMCV-kJfwukbn.js +0 -1
  482. package/dist/client/assets/_basePickBy-QJXUw_pr.js +0 -1
  483. package/dist/client/assets/_baseUniq-DR4vVjyC.js +0 -1
  484. package/dist/client/assets/architecture-7GRP2DOG-BBwRXFv3.js +0 -1
  485. package/dist/client/assets/architecture-7GRP2DOG-DJVtYNt-.js +0 -1
  486. package/dist/client/assets/babel-Bi_28hhi.js +0 -16
  487. package/dist/client/assets/browser-utils-S4QYY31r.js +0 -1
  488. package/dist/client/assets/channel-CgcHBnmr.js +0 -1
  489. package/dist/client/assets/chunk-2E4U76K2-CIQUuV9n.js +0 -1
  490. package/dist/client/assets/chunk-2ZTRR5NV-CnDP55cn.js +0 -2
  491. package/dist/client/assets/chunk-2ZTRR5NV-DcPRfelM.js +0 -2
  492. package/dist/client/assets/chunk-3FUC2YCW-8tZlhTGX.js +0 -1
  493. package/dist/client/assets/chunk-6AEJRKK7-DTVZj5bY.js +0 -1
  494. package/dist/client/assets/chunk-747NJXEK-BjqqAsS9.js +0 -2
  495. package/dist/client/assets/chunk-747NJXEK-Cur1aosP.js +0 -2
  496. package/dist/client/assets/chunk-7INBJB4K-CDmiHbaX.js +0 -62
  497. package/dist/client/assets/chunk-7M6MHVWA-BDakkknV.js +0 -213
  498. package/dist/client/assets/chunk-FOHPRMQF-DzxwRta7.js +0 -161
  499. package/dist/client/assets/chunk-ISPTBLVO-BMsDq9Ha.js +0 -12
  500. package/dist/client/assets/chunk-O7XYJQB3-D0_ZY2za.js +0 -126
  501. package/dist/client/assets/chunk-OUJLGHUK-75UXlPjl.js +0 -2
  502. package/dist/client/assets/chunk-OUJLGHUK-DA95-S9B.js +0 -2
  503. package/dist/client/assets/chunk-T5WUORNS-DD7KlyY6.js +0 -40
  504. package/dist/client/assets/chunk-UA2S7LBM-DicYDjDM.js +0 -1
  505. package/dist/client/assets/chunk-Z7XXMR3K-P4Vaq8hD.js +0 -10
  506. package/dist/client/assets/chunk-ZIGJFQKS-b8OUHKK5.js +0 -2
  507. package/dist/client/assets/classDiagram-ZZMXUADV-QLbh_Nkf.js +0 -1
  508. package/dist/client/assets/classDiagram-v2-VYDZK3BY-QLbh_Nkf.js +0 -1
  509. package/dist/client/assets/comment-thread-store-CHvy8GF8.js +0 -1
  510. package/dist/client/assets/comment-threads-nJhK1yfc.js +0 -4
  511. package/dist/client/assets/crystal-Bsdphhtm.js +0 -1
  512. package/dist/client/assets/cynefin-OW5HDTMX-CF3N9j1_.js +0 -1
  513. package/dist/client/assets/cynefin-OW5HDTMX-e-Quc9Yl.js +0 -1
  514. package/dist/client/assets/cytoscape-cose-bilkent-NdTYBUiT.js +0 -1
  515. package/dist/client/assets/cytoscape-fcose-DE9_QRG_.js +0 -1
  516. package/dist/client/assets/cytoscape.esm-EK2DW5Qr.js +0 -321
  517. package/dist/client/assets/dagre-6A5THRUB-DewyAGK6.js +0 -4
  518. package/dist/client/assets/dagre-D7FiCLLP.js +0 -1
  519. package/dist/client/assets/dagre-GXQ25YYZ-Vtyx08Qh.js +0 -4
  520. package/dist/client/assets/deferred-collab-D4cxEdad.css +0 -1
  521. package/dist/client/assets/deferred-git-BHKtkFYi.css +0 -1
  522. package/dist/client/assets/deferred-preview-BAXYgf4T.css +0 -1
  523. package/dist/client/assets/diagram-22UHCM2B-DbZirFfl.js +0 -200
  524. package/dist/client/assets/diagram-ATOU4E4O-B5uX-jVO.js +0 -3
  525. package/dist/client/assets/dist-9Eodxf4G.js +0 -1
  526. package/dist/client/assets/dist-B2ZNQifU.js +0 -1
  527. package/dist/client/assets/dist-B6QCMNze.js +0 -1
  528. package/dist/client/assets/dist-BIAv19LO.js +0 -1
  529. package/dist/client/assets/dist-BKYp1-dl.js +0 -13
  530. package/dist/client/assets/dist-BSAZ-Hek.js +0 -39
  531. package/dist/client/assets/dist-BSTbcioM.js +0 -11
  532. package/dist/client/assets/dist-BT9gJXCb.js +0 -1
  533. package/dist/client/assets/dist-BTVg1m-V.js +0 -1
  534. package/dist/client/assets/dist-Bi9ZIYXq.js +0 -9
  535. package/dist/client/assets/dist-BpAUe9sL.js +0 -1
  536. package/dist/client/assets/dist-Bqo-XRVG.js +0 -1
  537. package/dist/client/assets/dist-BrKhPlc9.js +0 -1
  538. package/dist/client/assets/dist-CBsvKPcT.js +0 -1
  539. package/dist/client/assets/dist-CJBYh9Wy.js +0 -23
  540. package/dist/client/assets/dist-CRwfjtwz.js +0 -2
  541. package/dist/client/assets/dist-CX7Kc61C.js +0 -1
  542. package/dist/client/assets/dist-CYfPeupF.js +0 -1
  543. package/dist/client/assets/dist-CoXN2D3R.js +0 -1
  544. package/dist/client/assets/dist-CucpLxUY.js +0 -1
  545. package/dist/client/assets/dist-DHBMeCxC.js +0 -6
  546. package/dist/client/assets/dist-DLEg9d4u.js +0 -1
  547. package/dist/client/assets/dist-DOHWxIty.js +0 -1
  548. package/dist/client/assets/dist-DYFBD-wW.js +0 -1
  549. package/dist/client/assets/dist-DeCV9FU4.js +0 -1
  550. package/dist/client/assets/dist-DugWGOjQ.js +0 -1
  551. package/dist/client/assets/dist-KrdpB_GB.js +0 -1
  552. package/dist/client/assets/dist-NNrRnB-f.js +0 -1
  553. package/dist/client/assets/dist-PUxZqhFe.js +0 -1
  554. package/dist/client/assets/dist-cYiJMWHJ.js +0 -1
  555. package/dist/client/assets/dist-iKC7go4m.js +0 -1
  556. package/dist/client/assets/dist-lw5TGjI6.js +0 -1
  557. package/dist/client/assets/document-formatter-6I63vstk.js +0 -1
  558. package/dist/client/assets/drawioEditor-DNTjsjzJ.js +0 -9
  559. package/dist/client/assets/editor-session-D8GGkJak.js +0 -14
  560. package/dist/client/assets/elk-276RUBZZ-B8LB3Pac.js +0 -27
  561. package/dist/client/assets/embedded-editor-base-elU0Avik.css +0 -1
  562. package/dist/client/assets/embedpdf-TkbBYowM.js +0 -1
  563. package/dist/client/assets/en-JTHJ2SIP-DBz9bRq4.js +0 -1
  564. package/dist/client/assets/eventmodeling-NTZA5JFV-CDy1bN6j.js +0 -1
  565. package/dist/client/assets/eventmodeling-NTZA5JFV-Dxtv5D-P.js +0 -1
  566. package/dist/client/assets/excalidraw-element-link-BRZOTIeI.js +0 -7
  567. package/dist/client/assets/excalidraw-scene-6uROebca.js +0 -1
  568. package/dist/client/assets/excalidrawEditor-BCTFp_CV.css +0 -1
  569. package/dist/client/assets/excalidrawEditor-D0orhhku.js +0 -9
  570. package/dist/client/assets/export-page-CVJNMERq.js +0 -46
  571. package/dist/client/assets/exportDocument-Ba-n1X4U.css +0 -1
  572. package/dist/client/assets/exportDocument-DSshnmnZ.js +0 -2
  573. package/dist/client/assets/file-kind-BwMIcZbi.js +0 -1
  574. package/dist/client/assets/file-search-BA8o_gs0.js +0 -1
  575. package/dist/client/assets/flowDiagram-HODETNUW-Bq4470NR.js +0 -1
  576. package/dist/client/assets/flowDiagram-KWPJA3E3-DQG9qGiU.js +0 -1
  577. package/dist/client/assets/ganttDiagram-FUAMR5RP-BQpsI7gQ.js +0 -292
  578. package/dist/client/assets/gitGraph-4MIJSDKK-B-rpDYbz.js +0 -1
  579. package/dist/client/assets/gitGraph-4MIJSDKK-ZaBIE4Lb.js +0 -1
  580. package/dist/client/assets/gitGraphDiagram-X574FWY7-wbs_2m9f.js +0 -106
  581. package/dist/client/assets/graphlib-C9Tl7QrK.js +0 -1
  582. package/dist/client/assets/groovy-CUpZ7dEl.js +0 -1
  583. package/dist/client/assets/image-I42VHMUI-B2-c_ifV.js +0 -1
  584. package/dist/client/assets/image-blob-reduce.esm-BFq-Mx5V.js +0 -2
  585. package/dist/client/assets/index-BCgNcVNs.css +0 -1
  586. package/dist/client/assets/index-BpmR5Qqk.js +0 -1140
  587. package/dist/client/assets/info-A6RAGUB7-BcGxhjED.js +0 -1
  588. package/dist/client/assets/info-A6RAGUB7-BlutK7BT.js +0 -1
  589. package/dist/client/assets/javascript-B9I2pbsP.js +0 -1
  590. package/dist/client/assets/javascript-DctB8BJo.js +0 -1
  591. package/dist/client/assets/katex-ZlcWpGUi.js +0 -257
  592. package/dist/client/assets/linear-DExL6ILt.js +0 -1
  593. package/dist/client/assets/lobby-presence-KJrYhMdN.js +0 -1
  594. package/dist/client/assets/markdown-it-DpvIRaVq.js +0 -13
  595. package/dist/client/assets/mermaid.core-BeOUPE3Q.js +0 -10
  596. package/dist/client/assets/packet-AYTQ26CC-CqpSjTWl.js +0 -1
  597. package/dist/client/assets/packet-AYTQ26CC-DvbY8dI6.js +0 -1
  598. package/dist/client/assets/percentages-LWOC67ZH-VhvllE7L.js +0 -1
  599. package/dist/client/assets/pica-BPrp-GK1.js +0 -2
  600. package/dist/client/assets/pie-WAS4IAKB-Bg2eCNl5.js +0 -1
  601. package/dist/client/assets/pie-WAS4IAKB-DWSm9SSD.js +0 -1
  602. package/dist/client/assets/preload-helper-BAlEavIC.js +0 -1
  603. package/dist/client/assets/preview-diagram-utils-txBCoW8d.js +0 -1
  604. package/dist/client/assets/preview-render-compiler-BmWQStaL.js +0 -43
  605. package/dist/client/assets/preview-render-worker-BA4VK_GY.js +0 -575
  606. package/dist/client/assets/prod-CA0ie9yD.js +0 -145
  607. package/dist/client/assets/prod-yKJZ3E4s.js +0 -1
  608. package/dist/client/assets/pug-CqqUmdG7.js +0 -1
  609. package/dist/client/assets/purify.es-go7v6Te-.js +0 -3
  610. package/dist/client/assets/quick-switcher-controller-B5vT9Vj5.js +0 -1
  611. package/dist/client/assets/radar-RG4KPBEZ-BfNQUEQy.js +0 -1
  612. package/dist/client/assets/radar-RG4KPBEZ-DxExotg6.js +0 -1
  613. package/dist/client/assets/railroad-74A4TZTK-BaQ6U6eJ.js +0 -1
  614. package/dist/client/assets/railroad-74A4TZTK-FfHmeIQk.js +0 -1
  615. package/dist/client/assets/railroad-abnf-HS5TGJTU-BJ3KZw7J.js +0 -1
  616. package/dist/client/assets/railroad-abnf-HS5TGJTU-CLkdDRsJ.js +0 -1
  617. package/dist/client/assets/railroad-ebnf-LZEXJU2U-B162zvcG.js +0 -1
  618. package/dist/client/assets/railroad-ebnf-LZEXJU2U-DA0sEq7w.js +0 -1
  619. package/dist/client/assets/railroad-peg-WCYAUIDC-CGs5GeJ5.js +0 -1
  620. package/dist/client/assets/railroad-peg-WCYAUIDC-DCmlICzO.js +0 -1
  621. package/dist/client/assets/rolldown-runtime-Dd_uD5pT.js +0 -1
  622. package/dist/client/assets/sequenceDiagram-PO4LG4MO-B-2QfXhV.js +0 -169
  623. package/dist/client/assets/sizeCapture-INFHLROL-B0uUizjq.js +0 -1
  624. package/dist/client/assets/sizeCapture-INFHLROL-DrzwYt5z.js +0 -1
  625. package/dist/client/assets/src-XiVvaevx.js +0 -1
  626. package/dist/client/assets/stateDiagram-v2-MP3YSRHH-CLlwrdvU.js +0 -1
  627. package/dist/client/assets/subset-shared.chunk-BXlA-9CO.js +0 -1
  628. package/dist/client/assets/swimlanes-2SLR337P-CnYTVqRX.js +0 -1
  629. package/dist/client/assets/swimlanes-42K2YHIH-CALFEmiS.js +0 -1
  630. package/dist/client/assets/swimlanesDiagram-TC7HE7FX-Bh4tmz27.js +0 -8
  631. package/dist/client/assets/swimlanesDiagram-VR7AAH4N-xhehUG9e.js +0 -8
  632. package/dist/client/assets/treeView-Q6P3EWNA-BvHOzbu9.js +0 -1
  633. package/dist/client/assets/treeView-Q6P3EWNA-Cccy0ngL.js +0 -1
  634. package/dist/client/assets/treemap-WGGIJYW6-oety7paS.js +0 -1
  635. package/dist/client/assets/treemap-WGGIJYW6-sMRCjCtX.js +0 -1
  636. package/dist/client/assets/usecaseDiagram-POWQR4AR-DR2LHQYs.js +0 -328
  637. package/dist/client/assets/vault-api-client-NS_EVHJ3.js +0 -7
  638. package/dist/client/assets/wardley-WFR3VGLG-BdwDpX_I.js +0 -1
  639. package/dist/client/assets/wardley-WFR3VGLG-Y7xty_3m.js +0 -1
  640. package/dist/client/assets/workspace-sync-client-BrMtf6zN.js +0 -1
  641. package/dist/client/assets/xychartDiagram-PMCCYNJV-fRpZ1MA5.js +0 -7
  642. package/dist/client/assets/yjs-B41tM6Sz.js +0 -4
  643. package/dist/client/assets/yjs-provider-reset-guard-DpntzUDR.js +0 -1
  644. package/scripts/local-plantuml-compose.mjs +0 -92
  645. package/scripts/local-structurizr-compose.mjs +0 -101
@@ -1 +1 @@
1
- import"./chunk-SRAX5OIU-KFQikY-4.js";var e={signUp:``,signIn:``,paste:`貼上`,pasteAsPlaintext:``,pasteCharts:`貼上圖表`,chartType_bar:``,chartType_line:``,chartType_radar:``,chartType_plaintext:``,selectAll:`全選`,multiSelect:`多重選取`,moveCanvas:`移動畫布`,cut:`剪下`,copy:`複製`,copyAsPng:`以 PNG 格式複製`,copyAsSvg:`以 SVG 格式複製`,copyText:``,copySource:``,convertToCode:``,bringForward:`往上一層移動`,sendToBack:`移到最底層`,bringToFront:`移到最上層`,sendBackward:`往下一層移動`,delete:`刪除`,copyStyles:`複製樣式`,pasteStyles:`套用樣式`,stroke:`筆跡顏色`,changeStroke:``,background:`填充顏色`,changeBackground:``,fill:`背景樣式`,strokeWidth:`筆跡寬度`,strokeStyle:`筆跡線條`,strokeStyle_solid:`實線`,strokeStyle_dashed:`虛線(較密)`,strokeStyle_dotted:`虛線(較疏)`,sloppiness:`筆跡風格`,pressure:``,pressure_constant:``,pressure_variable:``,opacity:`透明度`,textAlign:`文字對齊`,edges:`邊角樣式`,sharp:`銳角`,round:`圓角`,arrowheads:`箭嘴`,arrowhead_none:`無箭嘴`,arrowhead_arrow:`普通箭嘴`,arrowhead_bar:`平頭條狀`,arrowhead_circle:``,arrowhead_circle_outline:``,arrowhead_triangle:`三角箭嘴`,arrowhead_triangle_outline:``,arrowhead_diamond:``,arrowhead_diamond_outline:``,arrowhead_crowfoot_many:``,arrowhead_crowfoot_one:``,arrowhead_crowfoot_one_or_many:``,arrowhead_cardinality_one:``,arrowhead_cardinality_many:``,arrowhead_cardinality_one_or_many:``,arrowhead_cardinality_exactly_one:``,arrowhead_cardinality_zero_or_one:``,arrowhead_cardinality_zero_or_many:``,more_options:``,cardinality:``,arrowtypes:``,arrowtype_sharp:``,arrowtype_round:``,arrowtype_elbowed:``,fontSize:`字型大小`,fontFamily:`字體`,addWatermark:`加入「使用 Excalidraw 製圖」水印`,handDrawn:`手繪體`,normal:`電腦字體`,code:`等寬體`,small:`細`,medium:`中`,large:`大`,veryLarge:`勁大`,solid:`實心`,hachure:`斜線`,zigzag:``,crossHatch:`交叉格仔`,thin:`幼`,bold:`粗`,left:`靠左對齊`,center:`置中對齊`,right:`靠右對齊`,extraBold:`勁粗`,architect:`手繪風格`,artist:`藝術家風格`,cartoonist:`卡通風格`,fileTitle:`檔案名稱`,colorPicker:``,canvasColors:``,canvasBackground:`畫布背景顏色`,drawingCanvas:`畫布`,clearCanvas:``,layers:`圖層`,actions:`動作`,language:`🌏 語言`,liveCollaboration:``,duplicateSelection:`製作副本`,untitled:`未命名的作品`,name:``,yourName:`你的名稱`,madeWithExcalidraw:`使用 Excalidraw 製圖`,group:`建立物件群組`,ungroup:`取消物件群組`,collaborators:`已連線的協作者`,you:``,toggleGrid:``,addToLibrary:`加入作品庫`,removeFromLibrary:`從作品庫中移除`,libraryLoadingMessage:`正在載入作品庫…`,libraries:`瀏覽作品庫`,loadingScene:`載入畫布中…`,loadScene:``,align:`物件對齊`,alignTop:`水平置頂`,alignBottom:`水平置底`,alignLeft:`垂直靠左對齊`,alignRight:`垂直靠右對齊`,centerVertically:`垂直置中`,centerHorizontally:`水平置中`,distributeHorizontally:`左右等距`,distributeVertically:`上下等距`,flipHorizontal:`左右反轉`,flipVertical:`上下反轉`,viewMode:`唯讀模式`,share:``,showStroke:``,showBackground:``,showFonts:``,toggleTheme:``,theme:``,personalLib:``,excalidrawLib:``,decreaseFontSize:``,increaseFontSize:``,unbindText:``,bindText:``,createContainerFromText:``,link:{edit:``,editEmbed:``,create:``,label:``,labelEmbed:``,empty:``,hint:``,goToElement:``},lineEditor:{edit:``,editArrow:``},polygon:{breakPolygon:``,convertToPolygon:``},elementLock:{lock:``,unlock:``,lockAll:``,unlockAll:``},statusPublished:``,sidebarLock:``,selectAllElementsInFrame:``,removeAllElementsFromFrame:``,eyeDropper:``,textToDiagram:``,prompt:``,followUs:``,discordChat:``,zoomToFitViewport:``,zoomToFitSelection:``,zoomToFit:``,installPWA:``,autoResize:``,imageCropping:``,unCroppedDimension:``,copyElementLink:``,linkToElement:``,wrapSelectionInFrame:``,tab:``,shapeSwitch:``,preferences:``,preferences_toolLock:``,boxSelectionMode:``,boxSelectionContain:``,boxSelectionOverlap:``,arrowBinding:``,midpointSnapping:``},t={title:``,desc:``,notFound:``},n={noItems:``,hint_emptyLibrary:``,hint_emptyPrivateLibrary:``,search:{inputPlaceholder:``,heading:``,noResults:``,clearSearch:``}},r={title:``,noMatch:``,singleResult:``,multipleResults:``,placeholder:``,frames:``,texts:``},i={clearReset:`清空畫布`,exportJSON:``,exportImage:``,export:``,copyToClipboard:``,copyLink:``,save:``,saveAs:``,load:``,getShareableLink:``,close:``,selectLanguage:``,scrollBackToContent:``,zoomIn:``,zoomOut:``,resetZoom:``,menu:``,done:``,edit:``,undo:``,redo:``,resetLibrary:``,createNewRoom:``,fullScreen:``,darkMode:``,lightMode:``,systemMode:``,zenMode:``,objectsSnapMode:``,exitZenMode:``,cancel:``,saveLibNames:``,clear:``,remove:``,embed:``,publishLibrary:``,submit:``,confirm:``,embeddableInteractionButton:``},a={clearReset:`【‼️ 警告 ‼️ 無法復原的動作】你確定要清空呢塊畫布嗎?`,couldNotCreateShareableLink:``,couldNotCreateShareableLinkTooBig:``,couldNotLoadInvalidFile:``,importBackendFailed:``,cannotExportEmptyCanvas:`無嘢可以匯出喎~畫吓嘢先?`,couldNotCopyToClipboard:``,decryptFailed:``,uploadedSecurly:``,loadSceneOverridePrompt:``,collabStopOverridePrompt:``,errorAddingToLibrary:``,errorRemovingFromLibrary:``,confirmAddLibrary:``,imageDoesNotContainScene:``,cannotRestoreFromImage:``,invalidSceneUrl:``,resetLibrary:``,removeItemsFromsLibrary:``,invalidEncryptionKey:``,collabOfflineWarning:``,localStorageQuotaExceeded:``},o={unsupportedFileType:``,imageInsertError:``,fileTooBig:``,svgImageInsertError:``,failedToFetchImage:``,cannotResolveCollabServer:``,importLibraryError:``,saveLibraryError:``,collabSaveFailed:``,collabSaveFailed_sizeExceeded:``,imageToolNotSupported:``,brave_measure_text_error:{line1:``,line2:``,line3:``,line4:``},libraryElementTypeError:{embeddable:``,iframe:``,image:``},asyncPasteFailedOnRead:``,asyncPasteFailedOnParse:``,copyToSystemClipboardFailed:``},s={selection:``,lasso:``,image:``,rectangle:``,diamond:``,ellipse:``,arrow:``,line:``,freedraw:``,text:``,library:``,lock:``,penMode:``,link:``,eraser:``,frame:``,magicframe:``,embeddable:``,laser:``,autoshape:``,bucketfill:``,hand:``,extraTools:``,mermaidToExcalidraw:``,convertElementType:``},c={noRegion:``,tooComplex:``},l={rectangle:``,diamond:``,ellipse:``,arrow:``,line:``,freedraw:``,text:``,image:``,group:``,frame:``,magicframe:``,embeddable:``,selection:``,iframe:``},u={canvasActions:`畫布動作`,selectedShapeActions:``,shapes:``},d={dismissSearch:``,canvasPanning:``,linearElement:``,arrowTool:``,arrowBindModifiers:``,freeDraw:``,text:``,embeddable:``,autoshape:``,text_selected:``,text_editing:``,linearElementMulti:``,lockAngle:``,resize:``,resizeImage:``,rotate:``,toggleArrowhead:``,lineEditor_info:``,lineEditor_line_info:``,lineEditor_pointSelected:``,lineEditor_nothingSelected:``,publishLibrary:``,bindTextToElement:``,createFlowchart:``,deepBoxSelect:``,eraserRevert:``,firefox_clipboard_write:``,disableSnapping:``,enterCropEditor:``,leaveCropEditor:``},f={cannotShowPreview:`無法顯示預覽`,canvasTooBig:`塊畫布太大啦,縮細啲先啦?`,canvasTooBigTip:``},p={headingMain:``,clearCanvasMessage:`如果重新整理頁面都係睇唔到,你可以<button>清空畫布</button>`,clearCanvasCaveat:`(注意:呢個動作會直接丟棄你嘅作品,並且無法復原)`,trackedToSentry:``,openIssueMessage:``,sceneContent:``},m={or:``},h={desc_intro:``,desc_privacy:``,button_startSession:``,button_stopSession:``,desc_inProgressIntro:``,desc_shareLink:``,desc_exitSession:``,shareTitle:``},g={title:``},_={title:``,defaultMessage:``},v={disk_title:``,disk_details:``,disk_button:``,link_title:``,link_details:``,link_button:``,excalidrawplus_description:``,excalidrawplus_button:``,excalidrawplus_exportError:``},y={blog:``,click:``,deepSelect:``,deepBoxSelect:``,createFlowchart:``,navigateFlowchart:``,curvedArrow:``,curvedLine:``,documentation:``,doubleClick:``,drag:``,editor:``,editLineArrowPoints:``,editText:``,github:``,howto:``,or:``,preventBinding:``,tools:``,shortcuts:``,textFinish:``,textNewLine:``,title:``,view:``,zoomToFit:``,zoomToSelection:``,toggleElementLock:``,movePageUpDown:``,movePageLeftRight:``,cropStart:``,cropFinish:``},b={title:``},x={title:``,itemName:``,authorName:``,githubUsername:``,twitterUsername:``,libraryName:``,libraryDesc:``,website:``,placeholder:{authorName:``,libraryName:``,libraryDesc:``,githubHandle:``,twitterHandle:``,website:``},errors:{required:``,website:``},noteDescription:``,noteGuidelines:``,noteLicense:``,noteItems:``,atleastOneLibItem:``,republishWarning:``},S={title:``,content:``},C={resetLibrary:``,removeItemsFromLib:``},w={header:``,label:{withBackground:``,onlySelected:``,darkMode:``,embedScene:``,scale:``,padding:``},tooltip:{embedScene:``},title:{exportToPng:``,exportToSvg:``,copyPngToClipboard:``},button:{exportToPng:``,exportToSvg:``,copyPngToClipboard:``}},T={tooltip:``,link:``},E={angle:``,shapes:``,height:``,scene:``,selected:``,storage:``,fullTitle:``,title:``,generalStats:``,elementProperties:``,total:``,version:``,versionCopy:``,versionNotAvailable:``,width:``},D={addedToLibrary:``,copyStyles:``,copyToClipboard:``,copyToClipboardAsPng:``,copyToClipboardAsSvg:``,fileSaved:``,fileSavedToFilename:``,canvas:`畫布`,selection:``,pasteAsSingleElement:``,unableToEmbed:``,unrecognizedLinkFormat:``,elementLinkCopied:``},O={transparent:``,black:``,white:``,red:``,pink:``,grape:``,violet:``,gray:``,blue:``,cyan:``,teal:``,green:``,yellow:``,orange:``,bronze:``},k={app:{center_heading:``,center_heading_line2:``,center_heading_line3:``,center_heading_plus:``,menuHint:``},defaults:{menuHint:``,center_heading:``,toolbarHint:``,helpHint:``}},A={color:``,mostUsedCustomColors:``,colors:``,shades:``,hexCode:``,noShades:``,invalidColor:``,invalidHexLength:``,topPicksTip:``,resetTopPicks:``},j={action:{exportToImage:{title:``,button:``,description:``},saveToDisk:{title:``,button:``,description:``},excalidrawPlus:{title:``,button:``,description:``}},modal:{loadFromFile:{title:``,button:``,description:``},shareableLink:{title:``,button:``,description:``}}},M={title:``,button:``,description:``,syntax:``,preview:``,label:``,inputPlaceholder:``,autoFixAvailable:``},N={error:``},P={inputPlaceholder:``,inputPlaceholderWithMessages:``,generating:``,rateLimitRemaining:``,role:{user:``,assistant:``,system:``},aiBeta:``,label:``,menu:``,newChat:``,deleteChat:``,deleteMessage:``,viewAsMermaid:``,placeholder:{title:``,description:``,hint:``},preview:``,insert:``,retry:``,errors:{promptTooShort:``,promptTooLong:``,generationFailed:``,invalidDiagram:``,fixInMermaid:``,aiRepair:``,requestAborted:``,requestFailed:``,mermaidParseError:``},rateLimit:{messageLimit:``,generalRateLimit:``,messageLimitInputPlaceholder:``},upsellBtnLabel:``},F={placeholder:``},I={badge:{old:``},sceneFonts:``,availableFonts:``,empty:``},L={empty:``,hint:{text:``,followStatus:``,inCall:``,micMuted:``,isSpeaking:``}},R={title:``,shortcuts:{select:``,confirm:``,close:``},recents:``,search:{placeholder:``,noMatch:``},itemNotAvailable:``,shortcutHint:``},z={ctrl:``,option:``,cmd:``,alt:``,escape:``,enter:``,shift:``,spacebar:``,delete:``,mmb:``},B={labels:e,elementLink:t,library:n,search:r,buttons:i,alerts:a,errors:o,toolBar:s,bucketfill:c,element:l,headings:u,hints:d,canvasError:f,errorSplash:p,shareDialog:m,roomDialog:h,errorDialog:g,progressDialog:_,exportDialog:v,helpDialog:y,clearCanvasDialog:b,publishDialog:x,publishSuccessDialog:S,confirmDialog:C,imageExportDialog:w,encrypted:T,stats:E,toast:D,colors:O,welcomeScreen:k,colorPicker:A,overwriteConfirm:j,mermaid:M,ttd:N,chat:P,quickSearch:F,fontList:I,userList:L,commandPalette:R,keys:z};export{a as alerts,c as bucketfill,i as buttons,f as canvasError,P as chat,b as clearCanvasDialog,A as colorPicker,O as colors,R as commandPalette,C as confirmDialog,B as default,l as element,t as elementLink,T as encrypted,g as errorDialog,p as errorSplash,o as errors,v as exportDialog,I as fontList,u as headings,y as helpDialog,d as hints,w as imageExportDialog,z as keys,e as labels,n as library,M as mermaid,j as overwriteConfirm,_ as progressDialog,x as publishDialog,S as publishSuccessDialog,F as quickSearch,h as roomDialog,r as search,m as shareDialog,E as stats,D as toast,s as toolBar,N as ttd,L as userList,k as welcomeScreen};
1
+ import"./chunk-SRAX5OIU-wzfotNc-.js";var e={signUp:``,signIn:``,paste:`貼上`,pasteAsPlaintext:``,pasteCharts:`貼上圖表`,chartType_bar:``,chartType_line:``,chartType_radar:``,chartType_plaintext:``,selectAll:`全選`,multiSelect:`多重選取`,moveCanvas:`移動畫布`,cut:`剪下`,copy:`複製`,copyAsPng:`以 PNG 格式複製`,copyAsSvg:`以 SVG 格式複製`,copyText:``,copySource:``,convertToCode:``,bringForward:`往上一層移動`,sendToBack:`移到最底層`,bringToFront:`移到最上層`,sendBackward:`往下一層移動`,delete:`刪除`,copyStyles:`複製樣式`,pasteStyles:`套用樣式`,stroke:`筆跡顏色`,changeStroke:``,background:`填充顏色`,changeBackground:``,fill:`背景樣式`,strokeWidth:`筆跡寬度`,strokeStyle:`筆跡線條`,strokeStyle_solid:`實線`,strokeStyle_dashed:`虛線(較密)`,strokeStyle_dotted:`虛線(較疏)`,sloppiness:`筆跡風格`,pressure:``,pressure_constant:``,pressure_variable:``,opacity:`透明度`,textAlign:`文字對齊`,edges:`邊角樣式`,sharp:`銳角`,round:`圓角`,arrowheads:`箭嘴`,arrowhead_none:`無箭嘴`,arrowhead_arrow:`普通箭嘴`,arrowhead_bar:`平頭條狀`,arrowhead_circle:``,arrowhead_circle_outline:``,arrowhead_triangle:`三角箭嘴`,arrowhead_triangle_outline:``,arrowhead_diamond:``,arrowhead_diamond_outline:``,arrowhead_crowfoot_many:``,arrowhead_crowfoot_one:``,arrowhead_crowfoot_one_or_many:``,arrowhead_cardinality_one:``,arrowhead_cardinality_many:``,arrowhead_cardinality_one_or_many:``,arrowhead_cardinality_exactly_one:``,arrowhead_cardinality_zero_or_one:``,arrowhead_cardinality_zero_or_many:``,more_options:``,cardinality:``,arrowtypes:``,arrowtype_sharp:``,arrowtype_round:``,arrowtype_elbowed:``,fontSize:`字型大小`,fontFamily:`字體`,addWatermark:`加入「使用 Excalidraw 製圖」水印`,handDrawn:`手繪體`,normal:`電腦字體`,code:`等寬體`,small:`細`,medium:`中`,large:`大`,veryLarge:`勁大`,solid:`實心`,hachure:`斜線`,zigzag:``,crossHatch:`交叉格仔`,thin:`幼`,bold:`粗`,left:`靠左對齊`,center:`置中對齊`,right:`靠右對齊`,extraBold:`勁粗`,architect:`手繪風格`,artist:`藝術家風格`,cartoonist:`卡通風格`,fileTitle:`檔案名稱`,colorPicker:``,canvasColors:``,canvasBackground:`畫布背景顏色`,drawingCanvas:`畫布`,clearCanvas:``,layers:`圖層`,actions:`動作`,language:`🌏 語言`,liveCollaboration:``,duplicateSelection:`製作副本`,untitled:`未命名的作品`,name:``,yourName:`你的名稱`,madeWithExcalidraw:`使用 Excalidraw 製圖`,group:`建立物件群組`,ungroup:`取消物件群組`,collaborators:`已連線的協作者`,you:``,toggleGrid:``,addToLibrary:`加入作品庫`,removeFromLibrary:`從作品庫中移除`,libraryLoadingMessage:`正在載入作品庫…`,libraries:`瀏覽作品庫`,loadingScene:`載入畫布中…`,loadScene:``,align:`物件對齊`,alignTop:`水平置頂`,alignBottom:`水平置底`,alignLeft:`垂直靠左對齊`,alignRight:`垂直靠右對齊`,centerVertically:`垂直置中`,centerHorizontally:`水平置中`,distributeHorizontally:`左右等距`,distributeVertically:`上下等距`,flipHorizontal:`左右反轉`,flipVertical:`上下反轉`,viewMode:`唯讀模式`,share:``,showStroke:``,showBackground:``,showFonts:``,toggleTheme:``,theme:``,personalLib:``,excalidrawLib:``,decreaseFontSize:``,increaseFontSize:``,unbindText:``,bindText:``,createContainerFromText:``,link:{edit:``,editEmbed:``,create:``,label:``,labelEmbed:``,empty:``,hint:``,goToElement:``},lineEditor:{edit:``,editArrow:``},polygon:{breakPolygon:``,convertToPolygon:``},elementLock:{lock:``,unlock:``,lockAll:``,unlockAll:``},statusPublished:``,sidebarLock:``,selectAllElementsInFrame:``,removeAllElementsFromFrame:``,eyeDropper:``,textToDiagram:``,prompt:``,followUs:``,discordChat:``,zoomToFitViewport:``,zoomToFitSelection:``,zoomToFit:``,installPWA:``,autoResize:``,imageCropping:``,unCroppedDimension:``,copyElementLink:``,linkToElement:``,wrapSelectionInFrame:``,tab:``,shapeSwitch:``,preferences:``,preferences_toolLock:``,boxSelectionMode:``,boxSelectionContain:``,boxSelectionOverlap:``,arrowBinding:``,midpointSnapping:``},t={title:``,desc:``,notFound:``},n={noItems:``,hint_emptyLibrary:``,hint_emptyPrivateLibrary:``,search:{inputPlaceholder:``,heading:``,noResults:``,clearSearch:``}},r={title:``,noMatch:``,singleResult:``,multipleResults:``,placeholder:``,frames:``,texts:``},i={clearReset:`清空畫布`,exportJSON:``,exportImage:``,export:``,copyToClipboard:``,copyLink:``,save:``,saveAs:``,load:``,getShareableLink:``,close:``,selectLanguage:``,scrollBackToContent:``,zoomIn:``,zoomOut:``,resetZoom:``,menu:``,done:``,edit:``,undo:``,redo:``,resetLibrary:``,createNewRoom:``,fullScreen:``,darkMode:``,lightMode:``,systemMode:``,zenMode:``,objectsSnapMode:``,exitZenMode:``,cancel:``,saveLibNames:``,clear:``,remove:``,embed:``,publishLibrary:``,submit:``,confirm:``,embeddableInteractionButton:``},a={clearReset:`【‼️ 警告 ‼️ 無法復原的動作】你確定要清空呢塊畫布嗎?`,couldNotCreateShareableLink:``,couldNotCreateShareableLinkTooBig:``,couldNotLoadInvalidFile:``,importBackendFailed:``,cannotExportEmptyCanvas:`無嘢可以匯出喎~畫吓嘢先?`,couldNotCopyToClipboard:``,decryptFailed:``,uploadedSecurly:``,loadSceneOverridePrompt:``,collabStopOverridePrompt:``,errorAddingToLibrary:``,errorRemovingFromLibrary:``,confirmAddLibrary:``,imageDoesNotContainScene:``,cannotRestoreFromImage:``,invalidSceneUrl:``,resetLibrary:``,removeItemsFromsLibrary:``,invalidEncryptionKey:``,collabOfflineWarning:``,localStorageQuotaExceeded:``},o={unsupportedFileType:``,imageInsertError:``,fileTooBig:``,svgImageInsertError:``,failedToFetchImage:``,cannotResolveCollabServer:``,importLibraryError:``,saveLibraryError:``,collabSaveFailed:``,collabSaveFailed_sizeExceeded:``,imageToolNotSupported:``,brave_measure_text_error:{line1:``,line2:``,line3:``,line4:``},libraryElementTypeError:{embeddable:``,iframe:``,image:``},asyncPasteFailedOnRead:``,asyncPasteFailedOnParse:``,copyToSystemClipboardFailed:``},s={selection:``,lasso:``,image:``,rectangle:``,diamond:``,ellipse:``,arrow:``,line:``,freedraw:``,text:``,library:``,lock:``,penMode:``,link:``,eraser:``,frame:``,magicframe:``,embeddable:``,laser:``,autoshape:``,bucketfill:``,hand:``,extraTools:``,mermaidToExcalidraw:``,convertElementType:``},c={noRegion:``,tooComplex:``},l={rectangle:``,diamond:``,ellipse:``,arrow:``,line:``,freedraw:``,text:``,image:``,group:``,frame:``,magicframe:``,embeddable:``,selection:``,iframe:``},u={canvasActions:`畫布動作`,selectedShapeActions:``,shapes:``},d={dismissSearch:``,canvasPanning:``,linearElement:``,arrowTool:``,arrowBindModifiers:``,freeDraw:``,text:``,embeddable:``,autoshape:``,text_selected:``,text_editing:``,linearElementMulti:``,lockAngle:``,resize:``,resizeImage:``,rotate:``,toggleArrowhead:``,lineEditor_info:``,lineEditor_line_info:``,lineEditor_pointSelected:``,lineEditor_nothingSelected:``,publishLibrary:``,bindTextToElement:``,createFlowchart:``,deepBoxSelect:``,eraserRevert:``,firefox_clipboard_write:``,disableSnapping:``,enterCropEditor:``,leaveCropEditor:``},f={cannotShowPreview:`無法顯示預覽`,canvasTooBig:`塊畫布太大啦,縮細啲先啦?`,canvasTooBigTip:``},p={headingMain:``,clearCanvasMessage:`如果重新整理頁面都係睇唔到,你可以<button>清空畫布</button>`,clearCanvasCaveat:`(注意:呢個動作會直接丟棄你嘅作品,並且無法復原)`,trackedToSentry:``,openIssueMessage:``,sceneContent:``},m={or:``},h={desc_intro:``,desc_privacy:``,button_startSession:``,button_stopSession:``,desc_inProgressIntro:``,desc_shareLink:``,desc_exitSession:``,shareTitle:``},g={title:``},_={title:``,defaultMessage:``},v={disk_title:``,disk_details:``,disk_button:``,link_title:``,link_details:``,link_button:``,excalidrawplus_description:``,excalidrawplus_button:``,excalidrawplus_exportError:``},y={blog:``,click:``,deepSelect:``,deepBoxSelect:``,createFlowchart:``,navigateFlowchart:``,curvedArrow:``,curvedLine:``,documentation:``,doubleClick:``,drag:``,editor:``,editLineArrowPoints:``,editText:``,github:``,howto:``,or:``,preventBinding:``,tools:``,shortcuts:``,textFinish:``,textNewLine:``,title:``,view:``,zoomToFit:``,zoomToSelection:``,toggleElementLock:``,movePageUpDown:``,movePageLeftRight:``,cropStart:``,cropFinish:``},b={title:``},x={title:``,itemName:``,authorName:``,githubUsername:``,twitterUsername:``,libraryName:``,libraryDesc:``,website:``,placeholder:{authorName:``,libraryName:``,libraryDesc:``,githubHandle:``,twitterHandle:``,website:``},errors:{required:``,website:``},noteDescription:``,noteGuidelines:``,noteLicense:``,noteItems:``,atleastOneLibItem:``,republishWarning:``},S={title:``,content:``},C={resetLibrary:``,removeItemsFromLib:``},w={header:``,label:{withBackground:``,onlySelected:``,darkMode:``,embedScene:``,scale:``,padding:``},tooltip:{embedScene:``},title:{exportToPng:``,exportToSvg:``,copyPngToClipboard:``},button:{exportToPng:``,exportToSvg:``,copyPngToClipboard:``}},T={tooltip:``,link:``},E={angle:``,shapes:``,height:``,scene:``,selected:``,storage:``,fullTitle:``,title:``,generalStats:``,elementProperties:``,total:``,version:``,versionCopy:``,versionNotAvailable:``,width:``},D={addedToLibrary:``,copyStyles:``,copyToClipboard:``,copyToClipboardAsPng:``,copyToClipboardAsSvg:``,fileSaved:``,fileSavedToFilename:``,canvas:`畫布`,selection:``,pasteAsSingleElement:``,unableToEmbed:``,unrecognizedLinkFormat:``,elementLinkCopied:``},O={transparent:``,black:``,white:``,red:``,pink:``,grape:``,violet:``,gray:``,blue:``,cyan:``,teal:``,green:``,yellow:``,orange:``,bronze:``},k={app:{center_heading:``,center_heading_line2:``,center_heading_line3:``,center_heading_plus:``,menuHint:``},defaults:{menuHint:``,center_heading:``,toolbarHint:``,helpHint:``}},A={color:``,mostUsedCustomColors:``,colors:``,shades:``,hexCode:``,noShades:``,invalidColor:``,invalidHexLength:``,topPicksTip:``,resetTopPicks:``},j={action:{exportToImage:{title:``,button:``,description:``},saveToDisk:{title:``,button:``,description:``},excalidrawPlus:{title:``,button:``,description:``}},modal:{loadFromFile:{title:``,button:``,description:``},shareableLink:{title:``,button:``,description:``}}},M={title:``,button:``,description:``,syntax:``,preview:``,label:``,inputPlaceholder:``,autoFixAvailable:``},N={error:``},P={inputPlaceholder:``,inputPlaceholderWithMessages:``,generating:``,rateLimitRemaining:``,role:{user:``,assistant:``,system:``},aiBeta:``,label:``,menu:``,newChat:``,deleteChat:``,deleteMessage:``,viewAsMermaid:``,placeholder:{title:``,description:``,hint:``},preview:``,insert:``,retry:``,errors:{promptTooShort:``,promptTooLong:``,generationFailed:``,invalidDiagram:``,fixInMermaid:``,aiRepair:``,requestAborted:``,requestFailed:``,mermaidParseError:``},rateLimit:{messageLimit:``,generalRateLimit:``,messageLimitInputPlaceholder:``},upsellBtnLabel:``},F={placeholder:``},I={badge:{old:``},sceneFonts:``,availableFonts:``,empty:``},L={empty:``,hint:{text:``,followStatus:``,inCall:``,micMuted:``,isSpeaking:``}},R={title:``,shortcuts:{select:``,confirm:``,close:``},recents:``,search:{placeholder:``,noMatch:``},itemNotAvailable:``,shortcutHint:``},z={ctrl:``,option:``,cmd:``,alt:``,escape:``,enter:``,shift:``,spacebar:``,delete:``,mmb:``},B={labels:e,elementLink:t,library:n,search:r,buttons:i,alerts:a,errors:o,toolBar:s,bucketfill:c,element:l,headings:u,hints:d,canvasError:f,errorSplash:p,shareDialog:m,roomDialog:h,errorDialog:g,progressDialog:_,exportDialog:v,helpDialog:y,clearCanvasDialog:b,publishDialog:x,publishSuccessDialog:S,confirmDialog:C,imageExportDialog:w,encrypted:T,stats:E,toast:D,colors:O,welcomeScreen:k,colorPicker:A,overwriteConfirm:j,mermaid:M,ttd:N,chat:P,quickSearch:F,fontList:I,userList:L,commandPalette:R,keys:z};export{a as alerts,c as bucketfill,i as buttons,f as canvasError,P as chat,b as clearCanvasDialog,A as colorPicker,O as colors,R as commandPalette,C as confirmDialog,B as default,l as element,t as elementLink,T as encrypted,g as errorDialog,p as errorSplash,o as errors,v as exportDialog,I as fontList,u as headings,y as helpDialog,d as hints,w as imageExportDialog,z as keys,e as labels,n as library,M as mermaid,j as overwriteConfirm,_ as progressDialog,x as publishDialog,S as publishSuccessDialog,F as quickSearch,h as roomDialog,r as search,m as shareDialog,E as stats,D as toast,s as toolBar,N as ttd,L as userList,k as welcomeScreen};
@@ -1,4 +1,4 @@
1
- import"./chunk-SRAX5OIU-KFQikY-4.js";var e={signUp:``,signIn:``,paste:`貼上`,pasteAsPlaintext:`以純文字貼上`,pasteCharts:`貼上圖表`,chartType_bar:`長條圖`,chartType_line:`折線圖`,chartType_radar:`雷達圖`,chartType_plaintext:`純文字`,selectAll:`全選`,multiSelect:`將物件加入選取範圍`,moveCanvas:`移動畫布`,cut:`剪下`,copy:`複製`,copyAsPng:`以 PNG 格式儲存到剪貼簿`,copyAsSvg:`以 SVG 格式複製到剪貼簿`,copyText:`以文字格式複製至剪貼簿`,copySource:`複製來源至剪貼簿`,convertToCode:`轉換為程式碼`,bringForward:`上移一層`,sendToBack:`移到最底層`,bringToFront:`置於最頂層`,sendBackward:`往後移一層`,delete:`刪除`,copyStyles:`複製樣式`,pasteStyles:`貼上樣式`,stroke:`筆畫`,changeStroke:`變更筆畫顏色`,background:`背景`,changeBackground:`變更背景顏色`,fill:`填滿`,strokeWidth:`筆跡寬度`,strokeStyle:`筆畫樣式`,strokeStyle_solid:`實線`,strokeStyle_dashed:`虛線`,strokeStyle_dotted:`點線`,sloppiness:`線條風格`,pressure:`壓力`,pressure_constant:`常數`,pressure_variable:`變數`,opacity:`透明度`,textAlign:`文字對齊`,edges:`邊緣`,sharp:`尖銳`,round:`平滑`,arrowheads:`箭頭`,arrowhead_none:`無`,arrowhead_arrow:`箭頭`,arrowhead_bar:`條狀箭頭`,arrowhead_circle:`圓形`,arrowhead_circle_outline:`圓形(外框)`,arrowhead_triangle:`三角形`,arrowhead_triangle_outline:`三角形(外框)`,arrowhead_diamond:`菱形`,arrowhead_diamond_outline:`菱形(外框)`,arrowhead_crowfoot_many:`雞爪符號(多)`,arrowhead_crowfoot_one:`雞爪符號(一)`,arrowhead_crowfoot_one_or_many:`雞爪符號(一或多)`,arrowhead_cardinality_one:`基數(一)`,arrowhead_cardinality_many:`基數(多個)`,arrowhead_cardinality_one_or_many:`基數(一個或多個)`,arrowhead_cardinality_exactly_one:`基數(恰好為 1)`,arrowhead_cardinality_zero_or_one:`基數(零或一)`,arrowhead_cardinality_zero_or_many:`基數(零或多)`,more_options:`更多選項`,cardinality:`基數`,arrowtypes:`箭頭類型`,arrowtype_sharp:`尖銳箭頭`,arrowtype_round:`彎角箭頭`,arrowtype_elbowed:`直角箭頭`,fontSize:`字型大小`,fontFamily:`字型系列`,addWatermark:`加上「以 Excalidraw 製作」浮水印`,handDrawn:`手寫`,normal:`一般`,code:`代碼`,small:`小`,medium:`中`,large:`大`,veryLarge:`特大`,solid:`實心`,hachure:`斜線筆觸`,zigzag:`Z字形`,crossHatch:`交叉筆觸`,thin:`細`,bold:`粗`,left:`左側`,center:`置中`,right:`右側`,extraBold:`極粗`,architect:`精確`,artist:`藝術`,cartoonist:`卡通`,fileTitle:`檔案名稱`,colorPicker:`色彩選擇工具`,canvasColors:`使用於畫布`,canvasBackground:`Canvas 背景`,drawingCanvas:`繪圖 canvas`,clearCanvas:`清除畫布`,layers:`圖層`,actions:`動作`,language:`語言`,liveCollaboration:`即時協作...`,duplicateSelection:`複製`,untitled:`無標題`,name:`名稱`,yourName:`你的名稱`,madeWithExcalidraw:`以 Excalidraw 製作`,group:`建立群組`,ungroup:`取消群組`,collaborators:`協作者`,you:`你`,toggleGrid:`切換網格`,addToLibrary:`加入資料庫`,removeFromLibrary:`從資料庫中移除`,libraryLoadingMessage:`資料庫讀取中…`,libraries:`瀏覽資料庫`,loadingScene:`場景讀取中…`,loadScene:`從檔案載入場景`,align:`對齊`,alignTop:`對齊頂部`,alignBottom:`對齊底部`,alignLeft:`對齊左側`,alignRight:`對齊右側`,centerVertically:`垂直置中`,centerHorizontally:`水平置中`,distributeHorizontally:`水平分布`,distributeVertically:`垂直分布`,flipHorizontal:`水平翻轉`,flipVertical:`垂直翻轉`,viewMode:`檢視模式`,share:`分享`,showStroke:`顯示線條檢色器`,showBackground:`顯示背景檢色器`,showFonts:`顯示字型選單`,toggleTheme:`切換淺色/深色主題`,theme:`主題`,personalLib:`個人資料庫`,excalidrawLib:`Excalidraw 資料庫`,decreaseFontSize:`縮小文字`,increaseFontSize:`放大文字`,unbindText:`取消綁定文字`,bindText:`結合文字至容器`,createContainerFromText:`將文字包於容器中`,link:{edit:`編輯連結`,editEmbed:`編輯可嵌入連結`,create:`新增連結`,label:`連結`,labelEmbed:`連結與嵌入`,empty:`未設定連結`,hint:`在此輸入或貼上連結`,goToElement:`移至目標元素`},lineEditor:{edit:`編輯線條`,editArrow:`編輯箭頭`},polygon:{breakPolygon:`解除多邊形`,convertToPolygon:`轉換為多邊形`},elementLock:{lock:`鎖定`,unlock:`解鎖`,lockAll:`全部鎖定`,unlockAll:`全部解鎖`},statusPublished:`已發布`,sidebarLock:`側欄維持開啟`,selectAllElementsInFrame:`選取框架內的所有元素`,removeAllElementsFromFrame:`從框架內移除所有元素`,eyeDropper:`從畫布中選取顏色`,textToDiagram:`文字轉圖表`,prompt:`提示詞`,followUs:`追蹤我們`,discordChat:`Discord 聊天室`,zoomToFitViewport:`縮放至符合 viewport`,zoomToFitSelection:`縮放至符合選取區`,zoomToFit:`縮放至顯示所有元素`,installPWA:`於本機安裝 Excalidraw (PWA)`,autoResize:`啟用文字自動縮放`,imageCropping:`圖片剪裁`,unCroppedDimension:`未剪裁尺寸`,copyElementLink:`複製此物件的連結`,linkToElement:`連結至物件`,wrapSelectionInFrame:`將選取內容放入框架`,tab:`Tab`,shapeSwitch:`切換形狀`,preferences:`偏好設定`,preferences_toolLock:`鎖定工具`,boxSelectionMode:`選取方式`,boxSelectionContain:`完全包覆`,boxSelectionOverlap:`部分重疊`,arrowBinding:`箭頭連結`,midpointSnapping:`貼齊中點`},t={title:`連結至物件`,desc:`點擊畫布上的形狀或貼上連結`,notFound:`無法在畫布上找到連結的物件`},n={noItems:`尚未加入任何物件...`,hint_emptyLibrary:`選取畫布上的物件以加入,或從下方的公開儲存庫中安裝資料庫。`,hint_emptyPrivateLibrary:`選擇畫布上的物件以在此加入。`,search:{inputPlaceholder:`搜尋資料庫`,heading:`相符的資料庫`,noResults:`找不到相符的項目...`,clearSearch:`清除搜尋`}},r={title:`在畫布上尋找`,noMatch:`未找到符合項目…`,singleResult:`結果`,multipleResults:`結果`,placeholder:`在畫布上尋找文字…`,frames:`框架`,texts:`文字`},i={clearReset:`重設畫布`,exportJSON:`匯出至檔案`,exportImage:`匯出圖片`,export:`儲存至...`,copyToClipboard:`複製至剪貼簿`,copyLink:`複製連結`,save:`儲存目前檔案`,saveAs:`儲存為`,load:`開啟`,getShareableLink:`取得共享連結`,close:`關閉`,selectLanguage:`選擇語言`,scrollBackToContent:`捲動回到內容`,zoomIn:`放大`,zoomOut:`縮小`,resetZoom:`重設縮放`,menu:`選單`,done:`完成`,edit:`編輯`,undo:`復原`,redo:`重做`,resetLibrary:`重設資料庫`,createNewRoom:`建立新協作會議室`,fullScreen:`全螢幕`,darkMode:`深色模式`,lightMode:`淺色模式`,systemMode:`系統模式`,zenMode:`專注模式`,objectsSnapMode:`吸附至物件`,exitZenMode:`離開專注模式`,cancel:`取消`,saveLibNames:`儲存名稱並離開`,clear:`清除`,remove:`刪除`,embed:`切換嵌入`,publishLibrary:`重新命名或發布`,submit:`送出`,confirm:`確認`,embeddableInteractionButton:`點擊以互動`},a={clearReset:`這將會清除整個 canvas。你確定嗎?`,couldNotCreateShareableLink:`無法建立共享連結。`,couldNotCreateShareableLinkTooBig:`無法建立共享連結:場景太大`,couldNotLoadInvalidFile:`無法讀取失效的檔案。`,importBackendFailed:`後端讀取失敗。`,cannotExportEmptyCanvas:`無法輸出空白的 canvas。`,couldNotCopyToClipboard:`無法複製到剪貼簿`,decryptFailed:`無法解密資料。`,uploadedSecurly:`上傳已通過 end-to-end 加密,Excalidraw 伺服器和第三方無法皆讀取其內容。`,loadSceneOverridePrompt:`讀取外部圖樣將取代目前的內容。是否要繼續?`,collabStopOverridePrompt:`停止連線將覆蓋您先前於本機儲存的繪圖進度,是否確認?
1
+ import"./chunk-SRAX5OIU-wzfotNc-.js";var e={signUp:``,signIn:``,paste:`貼上`,pasteAsPlaintext:`以純文字貼上`,pasteCharts:`貼上圖表`,chartType_bar:`長條圖`,chartType_line:`折線圖`,chartType_radar:`雷達圖`,chartType_plaintext:`純文字`,selectAll:`全選`,multiSelect:`將物件加入選取範圍`,moveCanvas:`移動畫布`,cut:`剪下`,copy:`複製`,copyAsPng:`以 PNG 格式儲存到剪貼簿`,copyAsSvg:`以 SVG 格式複製到剪貼簿`,copyText:`以文字格式複製至剪貼簿`,copySource:`複製來源至剪貼簿`,convertToCode:`轉換為程式碼`,bringForward:`上移一層`,sendToBack:`移到最底層`,bringToFront:`置於最頂層`,sendBackward:`往後移一層`,delete:`刪除`,copyStyles:`複製樣式`,pasteStyles:`貼上樣式`,stroke:`筆畫`,changeStroke:`變更筆畫顏色`,background:`背景`,changeBackground:`變更背景顏色`,fill:`填滿`,strokeWidth:`筆跡寬度`,strokeStyle:`筆畫樣式`,strokeStyle_solid:`實線`,strokeStyle_dashed:`虛線`,strokeStyle_dotted:`點線`,sloppiness:`線條風格`,pressure:`壓力`,pressure_constant:`常數`,pressure_variable:`變數`,opacity:`透明度`,textAlign:`文字對齊`,edges:`邊緣`,sharp:`尖銳`,round:`平滑`,arrowheads:`箭頭`,arrowhead_none:`無`,arrowhead_arrow:`箭頭`,arrowhead_bar:`條狀箭頭`,arrowhead_circle:`圓形`,arrowhead_circle_outline:`圓形(外框)`,arrowhead_triangle:`三角形`,arrowhead_triangle_outline:`三角形(外框)`,arrowhead_diamond:`菱形`,arrowhead_diamond_outline:`菱形(外框)`,arrowhead_crowfoot_many:`雞爪符號(多)`,arrowhead_crowfoot_one:`雞爪符號(一)`,arrowhead_crowfoot_one_or_many:`雞爪符號(一或多)`,arrowhead_cardinality_one:`基數(一)`,arrowhead_cardinality_many:`基數(多個)`,arrowhead_cardinality_one_or_many:`基數(一個或多個)`,arrowhead_cardinality_exactly_one:`基數(恰好為 1)`,arrowhead_cardinality_zero_or_one:`基數(零或一)`,arrowhead_cardinality_zero_or_many:`基數(零或多)`,more_options:`更多選項`,cardinality:`基數`,arrowtypes:`箭頭類型`,arrowtype_sharp:`尖銳箭頭`,arrowtype_round:`彎角箭頭`,arrowtype_elbowed:`直角箭頭`,fontSize:`字型大小`,fontFamily:`字型系列`,addWatermark:`加上「以 Excalidraw 製作」浮水印`,handDrawn:`手寫`,normal:`一般`,code:`代碼`,small:`小`,medium:`中`,large:`大`,veryLarge:`特大`,solid:`實心`,hachure:`斜線筆觸`,zigzag:`Z字形`,crossHatch:`交叉筆觸`,thin:`細`,bold:`粗`,left:`左側`,center:`置中`,right:`右側`,extraBold:`極粗`,architect:`精確`,artist:`藝術`,cartoonist:`卡通`,fileTitle:`檔案名稱`,colorPicker:`色彩選擇工具`,canvasColors:`使用於畫布`,canvasBackground:`Canvas 背景`,drawingCanvas:`繪圖 canvas`,clearCanvas:`清除畫布`,layers:`圖層`,actions:`動作`,language:`語言`,liveCollaboration:`即時協作...`,duplicateSelection:`複製`,untitled:`無標題`,name:`名稱`,yourName:`你的名稱`,madeWithExcalidraw:`以 Excalidraw 製作`,group:`建立群組`,ungroup:`取消群組`,collaborators:`協作者`,you:`你`,toggleGrid:`切換網格`,addToLibrary:`加入資料庫`,removeFromLibrary:`從資料庫中移除`,libraryLoadingMessage:`資料庫讀取中…`,libraries:`瀏覽資料庫`,loadingScene:`場景讀取中…`,loadScene:`從檔案載入場景`,align:`對齊`,alignTop:`對齊頂部`,alignBottom:`對齊底部`,alignLeft:`對齊左側`,alignRight:`對齊右側`,centerVertically:`垂直置中`,centerHorizontally:`水平置中`,distributeHorizontally:`水平分布`,distributeVertically:`垂直分布`,flipHorizontal:`水平翻轉`,flipVertical:`垂直翻轉`,viewMode:`檢視模式`,share:`分享`,showStroke:`顯示線條檢色器`,showBackground:`顯示背景檢色器`,showFonts:`顯示字型選單`,toggleTheme:`切換淺色/深色主題`,theme:`主題`,personalLib:`個人資料庫`,excalidrawLib:`Excalidraw 資料庫`,decreaseFontSize:`縮小文字`,increaseFontSize:`放大文字`,unbindText:`取消綁定文字`,bindText:`結合文字至容器`,createContainerFromText:`將文字包於容器中`,link:{edit:`編輯連結`,editEmbed:`編輯可嵌入連結`,create:`新增連結`,label:`連結`,labelEmbed:`連結與嵌入`,empty:`未設定連結`,hint:`在此輸入或貼上連結`,goToElement:`移至目標元素`},lineEditor:{edit:`編輯線條`,editArrow:`編輯箭頭`},polygon:{breakPolygon:`解除多邊形`,convertToPolygon:`轉換為多邊形`},elementLock:{lock:`鎖定`,unlock:`解鎖`,lockAll:`全部鎖定`,unlockAll:`全部解鎖`},statusPublished:`已發布`,sidebarLock:`側欄維持開啟`,selectAllElementsInFrame:`選取框架內的所有元素`,removeAllElementsFromFrame:`從框架內移除所有元素`,eyeDropper:`從畫布中選取顏色`,textToDiagram:`文字轉圖表`,prompt:`提示詞`,followUs:`追蹤我們`,discordChat:`Discord 聊天室`,zoomToFitViewport:`縮放至符合 viewport`,zoomToFitSelection:`縮放至符合選取區`,zoomToFit:`縮放至顯示所有元素`,installPWA:`於本機安裝 Excalidraw (PWA)`,autoResize:`啟用文字自動縮放`,imageCropping:`圖片剪裁`,unCroppedDimension:`未剪裁尺寸`,copyElementLink:`複製此物件的連結`,linkToElement:`連結至物件`,wrapSelectionInFrame:`將選取內容放入框架`,tab:`Tab`,shapeSwitch:`切換形狀`,preferences:`偏好設定`,preferences_toolLock:`鎖定工具`,boxSelectionMode:`選取方式`,boxSelectionContain:`完全包覆`,boxSelectionOverlap:`部分重疊`,arrowBinding:`箭頭連結`,midpointSnapping:`貼齊中點`},t={title:`連結至物件`,desc:`點擊畫布上的形狀或貼上連結`,notFound:`無法在畫布上找到連結的物件`},n={noItems:`尚未加入任何物件...`,hint_emptyLibrary:`選取畫布上的物件以加入,或從下方的公開儲存庫中安裝資料庫。`,hint_emptyPrivateLibrary:`選擇畫布上的物件以在此加入。`,search:{inputPlaceholder:`搜尋資料庫`,heading:`相符的資料庫`,noResults:`找不到相符的項目...`,clearSearch:`清除搜尋`}},r={title:`在畫布上尋找`,noMatch:`未找到符合項目…`,singleResult:`結果`,multipleResults:`結果`,placeholder:`在畫布上尋找文字…`,frames:`框架`,texts:`文字`},i={clearReset:`重設畫布`,exportJSON:`匯出至檔案`,exportImage:`匯出圖片`,export:`儲存至...`,copyToClipboard:`複製至剪貼簿`,copyLink:`複製連結`,save:`儲存目前檔案`,saveAs:`儲存為`,load:`開啟`,getShareableLink:`取得共享連結`,close:`關閉`,selectLanguage:`選擇語言`,scrollBackToContent:`捲動回到內容`,zoomIn:`放大`,zoomOut:`縮小`,resetZoom:`重設縮放`,menu:`選單`,done:`完成`,edit:`編輯`,undo:`復原`,redo:`重做`,resetLibrary:`重設資料庫`,createNewRoom:`建立新協作會議室`,fullScreen:`全螢幕`,darkMode:`深色模式`,lightMode:`淺色模式`,systemMode:`系統模式`,zenMode:`專注模式`,objectsSnapMode:`吸附至物件`,exitZenMode:`離開專注模式`,cancel:`取消`,saveLibNames:`儲存名稱並離開`,clear:`清除`,remove:`刪除`,embed:`切換嵌入`,publishLibrary:`重新命名或發布`,submit:`送出`,confirm:`確認`,embeddableInteractionButton:`點擊以互動`},a={clearReset:`這將會清除整個 canvas。你確定嗎?`,couldNotCreateShareableLink:`無法建立共享連結。`,couldNotCreateShareableLinkTooBig:`無法建立共享連結:場景太大`,couldNotLoadInvalidFile:`無法讀取失效的檔案。`,importBackendFailed:`後端讀取失敗。`,cannotExportEmptyCanvas:`無法輸出空白的 canvas。`,couldNotCopyToClipboard:`無法複製到剪貼簿`,decryptFailed:`無法解密資料。`,uploadedSecurly:`上傳已通過 end-to-end 加密,Excalidraw 伺服器和第三方無法皆讀取其內容。`,loadSceneOverridePrompt:`讀取外部圖樣將取代目前的內容。是否要繼續?`,collabStopOverridePrompt:`停止連線將覆蓋您先前於本機儲存的繪圖進度,是否確認?
2
2
 
3
3
  (如要保留原有的本機繪圖進度,直接關閉瀏覽器分頁即可。)`,errorAddingToLibrary:`無法於此資料庫加入項目`,errorRemovingFromLibrary:`無法由此資料庫移除項目`,confirmAddLibrary:`這將會將 {{numShapes}} 個圖形加入你的資料庫,你確定嗎?`,imageDoesNotContainScene:`此圖檔中未包含場景資料。輸出檔案時是否有包含場景資料?`,cannotRestoreFromImage:`無法由此檔案回復場景。`,invalidSceneUrl:`無法由提供的 URL 匯入場景。可能是發生異常,或未包含有效的 Excalidraw JSON 資料。`,resetLibrary:`這會清除您的資料庫,是否確定?`,removeItemsFromsLibrary:`從資料庫刪除 {{count}} 項?`,invalidEncryptionKey:`加密鍵必須為22字元。即時協作已停用。`,collabOfflineWarning:`沒有可用的網路連線。
4
4
  變更無法儲存!`,localStorageQuotaExceeded:`瀏覽器儲存空間已滿。變更將不會被儲存。`},o={unsupportedFileType:`不支援的檔案類型。`,imageInsertError:`無法插入圖片。請稍後再試…`,fileTooBig:`檔案過大。可接受的最大尺寸為 {{maxSize}} 。`,svgImageInsertError:`無法插入 SVG 圖片。此 SVG 檔案有問題。`,failedToFetchImage:`無法獲取圖片。`,cannotResolveCollabServer:`無法連結至 collab 伺服器。請重新整理後再試一次。`,importLibraryError:`無法載入資料庫`,saveLibraryError:`無法將資料庫存至儲存區。請將資料庫存至本機檔案以確保不會失去已變更的部分。`,collabSaveFailed:`無法儲存至後端資料庫。若此問題持續發生,請將檔案儲存於本機以確保資料不會遺失。`,collabSaveFailed_sizeExceeded:`無法儲存至後端資料庫,可能的原因為畫布尺寸過大。請將檔案儲存於本機以確保資料不會遺失。`,imageToolNotSupported:`圖片已停用`,brave_measure_text_error:{line1:`看起來您開啟了 Brave 瀏覽器的 <bold>Aggressively Block Fingerprinting</bold> 設定。`,line2:`這可能造成您畫布中 <bold>文字元素</bold> 的異常。`,line3:`我們強烈建議您關閉此設定。您可以依照 <link>這些步驟</link> 來進行。`,line4:`若關閉此設定並未修復文字元素的顯示問題,請回報於我們 GitHub 上的 <issueLink>issue</issueLink>,或在 <discordLink>Discord</discordLink> 上告訴我們。`},libraryElementTypeError:{embeddable:`可嵌入元素無法加入資料庫`,iframe:`IFrame 元素無法加入資料庫`,image:`即將支援加入圖片至資料庫!`},asyncPasteFailedOnRead:`無法貼上(無法由系統剪貼簿讀入)`,asyncPasteFailedOnParse:`無法貼上`,copyToSystemClipboardFailed:`無法複製至剪貼簿`},s={selection:`選取`,lasso:`繩索選取`,image:`插入圖片`,rectangle:`長方形`,diamond:`菱形`,ellipse:`橢圓`,arrow:`箭頭`,line:`線條`,freedraw:`繪圖`,text:`文字`,library:`資料庫`,lock:`可連續使用選取的工具`,penMode:`筆模式 - 避免觸摸`,link:`為所選的形狀增加\b/更新連結`,eraser:`橡皮擦`,frame:`框架工具`,magicframe:`線框稿轉為程式碼`,embeddable:`嵌入網站`,laser:`雷射筆`,autoshape:`畫出形狀`,bucketfill:`油漆桶填充工具`,hand:`手形(平移工具)`,extraTools:`更多工具`,mermaidToExcalidraw:`Mermaid 至 Excalidraw`,convertElementType:`切換形狀類型`},c={noRegion:`找不到可填滿的封閉區域。`,tooComplex:`區域太複雜,無法填充。`},l={rectangle:`矩形`,diamond:`菱形`,ellipse:`橢圓形`,arrow:`箭頭`,line:`線條`,freedraw:`自由繪圖`,text:`文字`,image:`圖片`,group:`群組`,frame:`框架`,magicframe:`線框稿轉為程式碼`,embeddable:`嵌入網站`,selection:`已選項目`,iframe:`IFrame框架`},u={canvasActions:`canvas 動作`,selectedShapeActions:`選取圖形動作`,shapes:`形狀`},d={dismissSearch:`{{shortcut}} 以隱藏搜尋`,canvasPanning:`如要移動畫布,請在拖曳時按住 {{shortcut_1}} 或 {{shortcut_2}},或使用手形工具`,linearElement:`點擊以繪製多點曲線;或拖曳以繪製直線`,arrowTool:`點選以開始建立多點,拖曳可建立單一線段。再次按下 {{shortcut}} 以變更箭頭類型。`,arrowBindModifiers:`按住 {{shortcut_1}} 以停用綁定,或按住 {{shortcut_2}} 以綁定於固定點`,freeDraw:`點擊並拖曳來繪圖,放開即結束`,text:`提示:亦可使用選取工具在任何地方雙擊來加入文字`,embeddable:`點擊並拖移以建立嵌入網站`,autoshape:`畫出矩形、圓形、菱形、直線和箭頭`,text_selected:`按兩下滑鼠或按 {{shortcut}} 以編輯文字`,text_editing:`{{shortcut_1}} 或 {{shortcut_2}} 以結束編輯`,linearElementMulti:`點選最後一個點,或按下 {{shortcut_1}} 或 {{shortcut_2}} 以完成`,lockAngle:`你可以按住 {{shortcut}} 以鎖定角度`,resize:`縮放時按住 {{shortcut_1}} 可保持等比例,
@@ -0,0 +1,16 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Canvas — CollabMD</title>
7
+ <script defer src="./app-config.js"></script>
8
+ <script type="module" crossorigin src="./assets/canvasEditor-CWbY0cMf.js"></script>
9
+ <link rel="stylesheet" crossorigin href="./assets/canvasEditor-BJkwGzO1.css">
10
+ <link rel="stylesheet" crossorigin href="./assets/base-CaIEJUF9.css">
11
+ <link rel="stylesheet" crossorigin href="./assets/embedded-editor-base-C44ZcCZv.css">
12
+ </head>
13
+ <body data-theme="dark" data-surface="canvas-editor">
14
+ <div id="root"><p role="status">Loading canvas…</p></div>
15
+ </body>
16
+ </html>
@@ -6,16 +6,17 @@
6
6
  <title>draw.io — CollabMD</title>
7
7
  <link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none'><rect x='3' y='4' width='17' height='24' rx='3' stroke='%232563eb' stroke-width='2'/><rect x='12' y='4' width='17' height='24' rx='3' fill='%232563eb'/><path d='M17 12h7m-7 4h7m-7 4h4' stroke='white' stroke-width='1.5'/></svg>">
8
8
  <script defer src="./app-config.js"></script>
9
- <script type="module" crossorigin src="./assets/drawioEditor-DNTjsjzJ.js"></script>
9
+ <script type="module" crossorigin src="./assets/drawioEditor-DhRXvyRT.js"></script>
10
+ <link rel="modulepreload" crossorigin href="./assets/file-kind-BGxTVHan.js">
11
+ <link rel="modulepreload" crossorigin href="./assets/api-client-utils-DkW9xiiw.js">
12
+ <link rel="modulepreload" crossorigin href="./assets/preload-helper-khBccGFq.js">
10
13
  <link rel="modulepreload" crossorigin href="./assets/runtime-paths-qQGhzNx4.js">
11
14
  <link rel="modulepreload" crossorigin href="./assets/runtime-config-CvrkHb0n.js">
12
- <link rel="modulepreload" crossorigin href="./assets/browser-utils-S4QYY31r.js">
13
- <link rel="modulepreload" crossorigin href="./assets/preload-helper-BAlEavIC.js">
14
- <link rel="modulepreload" crossorigin href="./assets/file-kind-BwMIcZbi.js">
15
- <link rel="modulepreload" crossorigin href="./assets/vault-api-client-NS_EVHJ3.js">
15
+ <link rel="modulepreload" crossorigin href="./assets/vault-api-client-DORNT49K.js">
16
16
  <link rel="modulepreload" crossorigin href="./assets/drawio-room-yBUzk-vg.js">
17
+ <link rel="modulepreload" crossorigin href="./assets/keyboard-shortcuts-BWNCBJqw.js">
17
18
  <link rel="stylesheet" crossorigin href="./assets/drawioEditor-UQQ8XHou.css">
18
- <link rel="stylesheet" crossorigin href="./assets/embedded-editor-base-elU0Avik.css">
19
+ <link rel="stylesheet" crossorigin href="./assets/embedded-editor-base-C44ZcCZv.css">
19
20
  </head>
20
21
  <body data-theme="dark" data-surface="drawio-editor">
21
22
  <div id="root">
@@ -6,56 +6,57 @@
6
6
  <title>Excalidraw — CollabMD</title>
7
7
  <link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none'><rect x='3' y='4' width='17' height='24' rx='3' stroke='%232563eb' stroke-width='2'/><rect x='12' y='4' width='17' height='24' rx='3' fill='%232563eb'/><path d='M17 12h7m-7 4h7m-7 4h4' stroke='white' stroke-width='1.5'/></svg>">
8
8
  <script defer src="./app-config.js"></script>
9
- <script type="module" crossorigin src="./assets/excalidrawEditor-D0orhhku.js"></script>
10
- <link rel="modulepreload" crossorigin href="./assets/rolldown-runtime-Dd_uD5pT.js">
9
+ <script type="module" crossorigin src="./assets/excalidrawEditor-3jfVRVmE.js"></script>
10
+ <link rel="modulepreload" crossorigin href="./assets/rolldown-runtime-COiEfhsA.js">
11
+ <link rel="modulepreload" crossorigin href="./assets/room-DX7lIfnu.js">
12
+ <link rel="modulepreload" crossorigin href="./assets/file-kind-BGxTVHan.js">
13
+ <link rel="modulepreload" crossorigin href="./assets/api-client-utils-DkW9xiiw.js">
14
+ <link rel="modulepreload" crossorigin href="./assets/preload-helper-khBccGFq.js">
11
15
  <link rel="modulepreload" crossorigin href="./assets/runtime-paths-qQGhzNx4.js">
12
16
  <link rel="modulepreload" crossorigin href="./assets/runtime-config-CvrkHb0n.js">
13
- <link rel="modulepreload" crossorigin href="./assets/browser-utils-S4QYY31r.js">
14
- <link rel="modulepreload" crossorigin href="./assets/preload-helper-BAlEavIC.js">
15
- <link rel="modulepreload" crossorigin href="./assets/file-kind-BwMIcZbi.js">
16
- <link rel="modulepreload" crossorigin href="./assets/vault-api-client-NS_EVHJ3.js">
17
- <link rel="modulepreload" crossorigin href="./assets/jsx-runtime-DKj5X9O4.js">
18
- <link rel="modulepreload" crossorigin href="./assets/chunk-SRAX5OIU-KFQikY-4.js">
19
- <link rel="modulepreload" crossorigin href="./assets/chunk-T5WUORNS-DD7KlyY6.js">
20
- <link rel="modulepreload" crossorigin href="./assets/chunk-ISPTBLVO-BMsDq9Ha.js">
17
+ <link rel="modulepreload" crossorigin href="./assets/vault-api-client-DORNT49K.js">
18
+ <link rel="modulepreload" crossorigin href="./assets/excalidraw-element-link-BduFAMXS.js">
19
+ <link rel="modulepreload" crossorigin href="./assets/keyboard-shortcuts-BWNCBJqw.js">
20
+ <link rel="modulepreload" crossorigin href="./assets/jsx-runtime-CldxteV5.js">
21
+ <link rel="modulepreload" crossorigin href="./assets/chunk-SRAX5OIU-wzfotNc-.js">
22
+ <link rel="modulepreload" crossorigin href="./assets/chunk-NZIJZ2A6-CmC5bqJr.js">
23
+ <link rel="modulepreload" crossorigin href="./assets/chunk-FBWCRPUE-PUG6Mjdg.js">
21
24
  <link rel="modulepreload" crossorigin href="./assets/chunk-DYU5D34O-DN0WQZBm.js">
22
25
  <link rel="modulepreload" crossorigin href="./assets/chunk-Y2CYZVJY-DsF7k-Jl.js">
23
- <link rel="modulepreload" crossorigin href="./assets/src-XiVvaevx.js">
24
- <link rel="modulepreload" crossorigin href="./assets/chunk-X3CZISLH-BixgQztF.js">
25
- <link rel="modulepreload" crossorigin href="./assets/purify.es-go7v6Te-.js">
26
- <link rel="modulepreload" crossorigin href="./assets/chunk-DU6HZSFF-CWlP1Dk_.js">
27
- <link rel="modulepreload" crossorigin href="./assets/chunk-CLGD4ZFX-BfYJtJm1.js">
28
- <link rel="modulepreload" crossorigin href="./assets/chunk-P2QGCYS3-BA--DhpW.js">
26
+ <link rel="modulepreload" crossorigin href="./assets/src-C2pSFGeK.js">
27
+ <link rel="modulepreload" crossorigin href="./assets/chunk-X3CZISLH-DayjKu55.js">
28
+ <link rel="modulepreload" crossorigin href="./assets/purify.es-BP9p1Dbb.js">
29
+ <link rel="modulepreload" crossorigin href="./assets/chunk-DU6HZSFF-Dz0Q7VKE.js">
30
+ <link rel="modulepreload" crossorigin href="./assets/chunk-CLGD4ZFX-BBNA_mHW.js">
31
+ <link rel="modulepreload" crossorigin href="./assets/chunk-P2QGCYS3-DejntbnV.js">
29
32
  <link rel="modulepreload" crossorigin href="./assets/html-DTuc_pxj.js">
30
- <link rel="modulepreload" crossorigin href="./assets/chunk-PWAF6VOD-D_kLse-N.js">
31
- <link rel="modulepreload" crossorigin href="./assets/dist-B_J_HbC0.js">
32
- <link rel="modulepreload" crossorigin href="./assets/merge-CALoRt3l.js">
33
- <link rel="modulepreload" crossorigin href="./assets/Middleware-DUgFSleI.js">
34
- <link rel="modulepreload" crossorigin href="./assets/chunk-75Z2AOVW-DitkSoSG.js">
35
- <link rel="modulepreload" crossorigin href="./assets/esm-BzZ1JFVo.js">
36
- <link rel="modulepreload" crossorigin href="./assets/chunk-GMAD6QVW-Bgk8qnty.js">
33
+ <link rel="modulepreload" crossorigin href="./assets/chunk-PWAF6VOD-CmxcnYFJ.js">
34
+ <link rel="modulepreload" crossorigin href="./assets/dist-CumnGVmJ.js">
35
+ <link rel="modulepreload" crossorigin href="./assets/merge-5Ig019a6.js">
36
+ <link rel="modulepreload" crossorigin href="./assets/Middleware-DbxtuTyG.js">
37
+ <link rel="modulepreload" crossorigin href="./assets/chunk-75Z2AOVW-DLVzmKuL.js">
38
+ <link rel="modulepreload" crossorigin href="./assets/esm-nC3n5xMZ.js">
39
+ <link rel="modulepreload" crossorigin href="./assets/chunk-GMAD6QVW-B6zS4VJx.js">
37
40
  <link rel="modulepreload" crossorigin href="./assets/rough.esm-Dy-Kn_BL.js">
38
- <link rel="modulepreload" crossorigin href="./assets/chunk-4HAMMTFA-q0ldNVvr.js">
39
- <link rel="modulepreload" crossorigin href="./assets/chunk-GVQU2GXP-CQ8cl-Uu.js">
40
- <link rel="modulepreload" crossorigin href="./assets/chunk-L3NEJ4N5-BflzkdTI.js">
41
+ <link rel="modulepreload" crossorigin href="./assets/chunk-4HAMMTFA-B3s0XvP_.js">
42
+ <link rel="modulepreload" crossorigin href="./assets/chunk-GVQU2GXP-BA8Vt-19.js">
43
+ <link rel="modulepreload" crossorigin href="./assets/chunk-L3NEJ4N5-M6XySblQ.js">
41
44
  <link rel="modulepreload" crossorigin href="./assets/path-fybaL0A-.js">
42
45
  <link rel="modulepreload" crossorigin href="./assets/array-BifhSqXX.js">
43
- <link rel="modulepreload" crossorigin href="./assets/line-DEbP8Ok6.js">
44
- <link rel="modulepreload" crossorigin href="./assets/chunk-OSK3NFVY-DqeKV_pg.js">
45
- <link rel="modulepreload" crossorigin href="./assets/_baseUniq-DR4vVjyC.js">
46
- <link rel="modulepreload" crossorigin href="./assets/graphlib-C9Tl7QrK.js">
47
- <link rel="modulepreload" crossorigin href="./assets/chunk-2E4U76K2-CIQUuV9n.js">
48
- <link rel="modulepreload" crossorigin href="./assets/chunk-LNGE3PJU-5-SxdO55.js">
49
- <link rel="modulepreload" crossorigin href="./assets/chunk-TLUHSLCS-DCZhIDYA.js">
50
- <link rel="modulepreload" crossorigin href="./assets/dist-Ch6Sr9KF.js">
51
- <link rel="modulepreload" crossorigin href="./assets/prod-CA0ie9yD.js">
52
- <link rel="modulepreload" crossorigin href="./assets/comment-threads-nJhK1yfc.js">
53
- <link rel="modulepreload" crossorigin href="./assets/comment-thread-store-CHvy8GF8.js">
54
- <link rel="modulepreload" crossorigin href="./assets/room-DX7lIfnu.js">
55
- <link rel="modulepreload" crossorigin href="./assets/excalidraw-scene-6uROebca.js">
56
- <link rel="modulepreload" crossorigin href="./assets/excalidraw-element-link-BRZOTIeI.js">
57
- <link rel="stylesheet" crossorigin href="./assets/excalidrawEditor-BCTFp_CV.css">
58
- <link rel="stylesheet" crossorigin href="./assets/embedded-editor-base-elU0Avik.css">
46
+ <link rel="modulepreload" crossorigin href="./assets/line-CttJWsP1.js">
47
+ <link rel="modulepreload" crossorigin href="./assets/chunk-OSK3NFVY-DJyrXrea.js">
48
+ <link rel="modulepreload" crossorigin href="./assets/graphlib-DS17s2tU.js">
49
+ <link rel="modulepreload" crossorigin href="./assets/chunk-2E4U76K2-CPmbCsOa.js">
50
+ <link rel="modulepreload" crossorigin href="./assets/chunk-LNGE3PJU-DRjopGY8.js">
51
+ <link rel="modulepreload" crossorigin href="./assets/chunk-TLUHSLCS-DA3Sq1kc.js">
52
+ <link rel="modulepreload" crossorigin href="./assets/dist-C150LLfi.js">
53
+ <link rel="modulepreload" crossorigin href="./assets/prod-CUXkwl3E.js">
54
+ <link rel="modulepreload" crossorigin href="./assets/comment-threads-mG1CkBKO.js">
55
+ <link rel="modulepreload" crossorigin href="./assets/comment-thread-store-da3_1rfw.js">
56
+ <link rel="modulepreload" crossorigin href="./assets/excalidraw-scene-DzfbvjqT.js">
57
+ <link rel="modulepreload" crossorigin href="./assets/comment-ui-shared-4bhpJQpv.js">
58
+ <link rel="stylesheet" crossorigin href="./assets/excalidrawEditor-DiKOIudt.css">
59
+ <link rel="stylesheet" crossorigin href="./assets/embedded-editor-base-C44ZcCZv.css">
59
60
  </head>
60
61
  <body data-theme="dark" data-surface="excalidraw-editor">
61
62
  <div id="root">
@@ -6,10 +6,11 @@
6
6
  <title>CollabMD Export</title>
7
7
  <link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none'><rect x='3' y='4' width='17' height='24' rx='3' stroke='%232563eb' stroke-width='2'/><rect x='12' y='4' width='17' height='24' rx='3' fill='%232563eb'/><path d='M17 12h7m-7 4h7m-7 4h4' stroke='white' stroke-width='1.5'/></svg>">
8
8
  <script defer src="./app-config.js"></script>
9
- <script type="module" crossorigin src="./assets/exportDocument-DSshnmnZ.js"></script>
10
- <link rel="modulepreload" crossorigin href="./assets/preload-helper-BAlEavIC.js">
9
+ <script type="module" crossorigin src="./assets/exportDocument-BwukVyB9.js"></script>
10
+ <link rel="modulepreload" crossorigin href="./assets/preload-helper-khBccGFq.js">
11
11
  <link rel="modulepreload" crossorigin href="./assets/github.min-DBihDoic.js">
12
- <link rel="stylesheet" crossorigin href="./assets/exportDocument-Ba-n1X4U.css">
12
+ <link rel="stylesheet" crossorigin href="./assets/exportDocument-D0mONgQ4.css">
13
+ <link rel="stylesheet" crossorigin href="./assets/base-CaIEJUF9.css">
13
14
  </head>
14
15
  <body data-theme="light" data-surface="export-document">
15
16
  <main class="export-page-shell">
@@ -26,8 +26,8 @@
26
26
  }
27
27
  </script>
28
28
  <script defer src="./app-config.js"></script>
29
- <script type="module" crossorigin src="./assets/index-BpmR5Qqk.js"></script>
30
- <link rel="stylesheet" crossorigin href="./assets/index-BCgNcVNs.css">
29
+ <script type="module" crossorigin src="./assets/index-BebSD0ym.js"></script>
30
+ <link rel="stylesheet" crossorigin href="./assets/index-CglpXOg7.css">
31
31
  </head>
32
32
  <body>
33
33
  <div class="workspace-loading" id="workspaceLoading" role="status">Opening workspace…</div>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "collabmd",
3
- "version": "0.1.54",
3
+ "version": "0.1.56",
4
4
  "type": "module",
5
5
  "description": "Collaborative markdown vault — like Obsidian, but online. Serve any directory of markdown files for realtime collaborative editing.",
6
6
  "repository": {
@@ -17,8 +17,7 @@
17
17
  "dist/",
18
18
  "docker-compose.yml",
19
19
  "scripts/cloudflare-tunnel.mjs",
20
- "scripts/local-plantuml-compose.mjs",
21
- "scripts/local-structurizr-compose.mjs",
20
+ "scripts/local-compose.mjs",
22
21
  "src/"
23
22
  ],
24
23
  "bin": {
@@ -33,18 +32,18 @@
33
32
  "dev:server": "node bin/collabmd.js --no-tunnel",
34
33
  "homebrew:formula": "node scripts/render-homebrew-formula.mjs",
35
34
  "lint": "eslint .",
36
- "plantuml:up": "node scripts/local-plantuml-compose.mjs up",
37
- "plantuml:down": "node scripts/local-plantuml-compose.mjs down",
38
- "structurizr:up": "node scripts/local-structurizr-compose.mjs up",
39
- "structurizr:down": "node scripts/local-structurizr-compose.mjs down",
35
+ "plantuml:up": "node scripts/local-compose.mjs plantuml up",
36
+ "plantuml:down": "node scripts/local-compose.mjs plantuml down",
37
+ "structurizr:up": "node scripts/local-compose.mjs structurizr up",
38
+ "structurizr:down": "node scripts/local-compose.mjs structurizr down",
40
39
  "start": "npm run build && node bin/collabmd.js",
41
40
  "start:local-plantuml": "npm run build && node bin/collabmd.js --local-plantuml",
42
41
  "start:local-structurizr": "npm run build && node bin/collabmd.js --local-structurizr",
43
42
  "start:prod": "node bin/collabmd.js",
44
43
  "test": "npm run test:guardrails && npm run test:unit && npm run test:integration:prebuilt && npm run test:browser && npm run test:e2e:prebuilt",
45
- "test:browser": "vitest run --config vitest.config.mjs --browser=chromium",
46
- "test:e2e": "npm run build && playwright test",
47
- "test:e2e:headed": "npm run build && playwright test --headed",
44
+ "test:browser": "vitest run --config vitest.config.mjs",
45
+ "test:e2e": "playwright test",
46
+ "test:e2e:headed": "playwright test --headed",
48
47
  "test:e2e:prebuilt": "playwright test",
49
48
  "test:excalidraw:stress": "node scripts/run-excalidraw-reliability-stress.mjs",
50
49
  "test:guardrails": "node --test tests/node/guardrails/*.test.js",
@@ -63,26 +62,25 @@
63
62
  "cli"
64
63
  ],
65
64
  "engines": {
66
- "node": ">=26"
65
+ "node": ">=26.12.1"
67
66
  },
68
67
  "license": "MIT",
69
68
  "dependencies": {
70
- "@excalidraw/fractional-indexing": "^0.18.0-c0ad61c",
71
- "@modelcontextprotocol/client": "^2.0.0",
72
- "@modelcontextprotocol/node": "^2.0.0",
73
- "@modelcontextprotocol/server": "^2.0.0",
69
+ "@excalidraw/fractional-indexing": "^0.18.0-17d8904",
70
+ "@modelcontextprotocol/node": "^2.1.1",
71
+ "@modelcontextprotocol/server": "^2.3.1",
74
72
  "@turbodocx/html-to-docx": "^1.23.1",
75
73
  "@vscode/markdown-it-katex": "^1.1.2",
76
74
  "archiver": "^8.0.0",
77
- "js-yaml": "^5.4.2",
78
- "katex": "^0.18.7",
79
- "lib0": "^0.2.117",
75
+ "js-yaml": "^5.5.0",
76
+ "katex": "^0.19.0",
77
+ "lib0": "^0.2.119",
80
78
  "mathml2omml": "^0.5.0",
81
79
  "openid-client": "^6.8.8",
82
- "sharp": "^0.35.4",
83
- "ws": "^8.21.3",
80
+ "sharp": "^0.35.5",
81
+ "ws": "^8.22.0",
84
82
  "y-protocols": "^1.0.7",
85
- "yjs": "^13.6.32"
83
+ "yjs": "^13.6.33"
86
84
  },
87
85
  "overrides": {
88
86
  "@excalidraw/excalidraw": {
@@ -94,38 +92,38 @@
94
92
  },
95
93
  "lodash-es": "4.18.1",
96
94
  "nanoid": "3.3.18",
97
- "axios": "1.18.0"
95
+ "axios": "1.20.0"
98
96
  },
99
97
  "devDependencies": {
100
- "@codemirror/autocomplete": "^6.20.3",
98
+ "@codemirror/autocomplete": "^6.20.4",
101
99
  "@codemirror/commands": "^6.11.1",
102
100
  "@codemirror/lang-html": "^6.4.12",
103
101
  "@codemirror/lang-markdown": "^6.5.2",
104
102
  "@codemirror/lang-yaml": "^6.1.3",
105
- "@codemirror/language": "^6.12.4",
103
+ "@codemirror/language": "^6.13.1",
106
104
  "@codemirror/language-data": "^6.5.2",
107
105
  "@codemirror/search": "^6.7.2",
108
- "@codemirror/state": "^6.7.5",
106
+ "@codemirror/state": "^6.7.6",
109
107
  "@codemirror/theme-one-dark": "^6.1.3",
110
- "@codemirror/view": "^6.43.12",
108
+ "@codemirror/view": "^6.43.15",
111
109
  "@embedpdf/snippet": "2.15.1",
112
110
  "@eslint/js": "^10.0.1",
113
- "@excalidraw/excalidraw": "0.18.0-c0ad61c",
114
- "@playwright/test": "^1.63.0",
111
+ "@excalidraw/excalidraw": "0.18.0-17d8904",
112
+ "@modelcontextprotocol/client": "^2.3.1",
113
+ "@playwright/test": "^1.64.1",
115
114
  "@replit/codemirror-vim": "^6.4.0",
116
- "@vitest/browser": "^5.0.1",
117
- "@vitest/browser-playwright": "^5.0.1",
118
- "eslint": "^10.11.0",
119
- "globals": "^17.12.0",
115
+ "@vitest/browser-playwright": "^5.0.5",
116
+ "eslint": "^10.13.0",
117
+ "globals": "^17.13.0",
120
118
  "highlight.js": "^11.12.0",
121
- "markdown-it": "^15.0.2",
122
- "mermaid": "^12.0.0",
119
+ "markdown-it": "^15.0.3",
120
+ "mermaid": "^12.2.0",
123
121
  "mermaid-formatter": "^0.3.0",
124
- "prettier": "^3.9.8",
125
- "react": "^19.3.0",
126
- "react-dom": "^19.3.0",
127
- "vite": "^8.3.0",
128
- "vitest": "^5.0.1",
122
+ "prettier": "^3.9.10",
123
+ "react": "^19.3.1",
124
+ "react-dom": "^19.3.1",
125
+ "vite": "^8.3.5",
126
+ "vitest": "^5.0.5",
129
127
  "y-codemirror.next": "^0.3.6",
130
128
  "y-websocket": "^3.1.0"
131
129
  }
@@ -0,0 +1,101 @@
1
+ import { spawn } from 'node:child_process';
2
+ import { mkdir } from 'node:fs/promises';
3
+ import { dirname, resolve } from 'node:path';
4
+ import { fileURLToPath } from 'node:url';
5
+
6
+ const scriptPath = fileURLToPath(import.meta.url);
7
+ const projectRoot = resolve(dirname(scriptPath), '..');
8
+ const composeFile = resolve(projectRoot, 'docker-compose.yml');
9
+ const services = {
10
+ plantuml: { label: 'PlantUML', portName: 'PLANTUML_HOST_PORT', defaultPort: '18080' },
11
+ structurizr: { label: 'Structurizr', portName: 'STRUCTURIZR_HOST_PORT', defaultPort: '19090' },
12
+ };
13
+
14
+ function getService(service) {
15
+ const config = services[service];
16
+ if (!config) throw new Error(`Unknown local Compose service: ${service}`);
17
+ return config;
18
+ }
19
+
20
+ function getHostPort(service) {
21
+ const { portName, defaultPort } = getService(service);
22
+ const rawValue = process.env[portName] || defaultPort;
23
+ const parsed = Number.parseInt(rawValue, 10);
24
+ if (!Number.isInteger(parsed) || parsed <= 0) {
25
+ throw new Error(`Invalid ${portName}: ${rawValue}`);
26
+ }
27
+ return parsed;
28
+ }
29
+
30
+ export function getLocalComposeServerUrl(service) {
31
+ return `http://127.0.0.1:${getHostPort(service)}`;
32
+ }
33
+
34
+ function runCompose(command, service, env = process.env) {
35
+ return new Promise((resolvePromise, rejectPromise) => {
36
+ const child = spawn('docker', ['compose', '-f', composeFile, command, ...(command === 'up' ? ['-d'] : []), service], {
37
+ cwd: projectRoot,
38
+ env,
39
+ stdio: 'inherit',
40
+ });
41
+ child.on('error', rejectPromise);
42
+ child.on('exit', (code) => {
43
+ if (code === 0) resolvePromise();
44
+ else rejectPromise(new Error(`docker compose ${command} ${service} exited with code ${code}`));
45
+ });
46
+ });
47
+ }
48
+
49
+ export async function startLocalComposeService(service, { vaultDir = process.env.COLLABMD_VAULT_DIR || '.' } = {}) {
50
+ getService(service);
51
+ let env = process.env;
52
+ if (service === 'structurizr') {
53
+ const hostVaultDir = resolve(vaultDir);
54
+ await mkdir(resolve(hostVaultDir, '.collabmd/structurizr'), { recursive: true });
55
+ env = {
56
+ ...process.env,
57
+ HOST_VAULT_DIR: hostVaultDir,
58
+ STRUCTURIZR_HOST_PORT: String(getHostPort(service)),
59
+ };
60
+ }
61
+ await runCompose('up', service, env);
62
+ return getLocalComposeServerUrl(service);
63
+ }
64
+
65
+ export async function stopLocalComposeService(service) {
66
+ getService(service);
67
+ await runCompose('stop', service);
68
+ }
69
+
70
+ async function main() {
71
+ const service = process.argv[2];
72
+ const command = process.argv[3] || 'up';
73
+ if (!services[service] || !['up', 'down', 'url'].includes(command)) {
74
+ console.error('Usage: node scripts/local-compose.mjs [plantuml|structurizr] [up|down|url]');
75
+ process.exit(1);
76
+ }
77
+
78
+ if (command === 'url') {
79
+ console.log(getLocalComposeServerUrl(service));
80
+ return;
81
+ }
82
+ if (command === 'up') {
83
+ const url = await startLocalComposeService(service);
84
+ console.log(`[${service}] Local ${services[service].label} ${service === 'plantuml' ? 'server' : 'renderer'} is available at ${url}`);
85
+ return;
86
+ }
87
+ await stopLocalComposeService(service);
88
+ console.log(`[${service}] Local ${services[service].label} server stopped`);
89
+ }
90
+
91
+ if (process.argv[1] && resolve(process.argv[1]) === scriptPath) {
92
+ main().catch((error) => {
93
+ const service = process.argv[2];
94
+ if (error.code === 'ENOENT') {
95
+ console.error(`[${service}] Docker is not available. Install Docker Desktop or Docker Engine first.`);
96
+ } else {
97
+ console.error(`[${service}] ${error.message}`);
98
+ }
99
+ process.exit(1);
100
+ });
101
+ }
@@ -0,0 +1,13 @@
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Canvas — CollabMD</title>
7
+ <script vite-ignore defer src="./app-config.js"></script>
8
+ </head>
9
+ <body data-theme="dark" data-surface="canvas-editor">
10
+ <div id="root"><p role="status">Loading canvas…</p></div>
11
+ <script type="module" src="../canvas-editor.js"></script>
12
+ </body>
13
+ </html>
@@ -165,8 +165,9 @@ export const gitFeature = {
165
165
 
166
166
  syncMainChrome({ badgeLabel = '', mode, title = null } = {}) {
167
167
  const isSpecialMode = mode === 'diff' || mode === 'history' || mode === 'history-preview';
168
- this.elements.toolbarViewToggle?.classList.toggle('hidden', isSpecialMode);
169
- this.elements.mobileViewToggle?.classList.toggle('hidden', isSpecialMode);
168
+ const hideViewToggle = isSpecialMode || (mode === 'editor' && this.isCanvasFile?.(this.currentFilePath));
169
+ this.elements.toolbarViewToggle?.classList.toggle('hidden', Boolean(hideViewToggle));
170
+ this.elements.mobileViewToggle?.classList.toggle('hidden', Boolean(hideViewToggle));
170
171
  this.elements.userCount?.classList.toggle('hidden', isSpecialMode);
171
172
  this.elements.toolbarDiffBadge?.classList.toggle('hidden', !badgeLabel);
172
173
  if (this.elements.toolbarDiffBadge) {
@@ -124,6 +124,7 @@ function handleDisplayNameSubmit() {
124
124
  const localUser = this.lobby.getLocalUser();
125
125
  this.drawioEmbed?.updateLocalUser(localUser);
126
126
  this.excalidrawEmbed?.updateLocalUser(localUser);
127
+ this.canvasEmbed?.updateLocalUser(localUser);
127
128
  this.syncCurrentUserName();
128
129
  this.renderChat();
129
130
  dialog.close();
@@ -952,6 +952,7 @@ function handleThemeChange(theme) {
952
952
  if (
953
953
  this.currentFilePath
954
954
  && !this.isExcalidrawFile(this.currentFilePath)
955
+ && !this.isCanvasFile?.(this.currentFilePath)
955
956
  && !this.isImageFile?.(this.currentFilePath)
956
957
  && !this.isPdfFile?.(this.currentFilePath)
957
958
  && !this.isStructurizrWorkspaceFile?.(this.currentFilePath)
@@ -960,6 +961,7 @@ function handleThemeChange(theme) {
960
961
  }
961
962
  this.session?.applyTheme(theme);
962
963
  this.excalidrawEmbed.updateTheme(theme);
964
+ this.canvasEmbed?.updateTheme(theme);
963
965
  this.drawioEmbed.updateTheme(theme);
964
966
  this.pdfPreview?.setTheme(theme);
965
967
  }
@@ -88,6 +88,10 @@ async function handleTabBlocked({ reason } = {}) {
88
88
  if (shouldPrepareExcalidrawDisconnect) {
89
89
  await this.excalidrawEmbed.prepareFileDisconnect(blockedFilePath);
90
90
  }
91
+ if (blockedFilePath && this.isCanvasFile?.(blockedFilePath)) {
92
+ const canLeave = await this.canvasEmbed.prepareFileDisconnect(blockedFilePath);
93
+ if (!canLeave) return;
94
+ }
91
95
 
92
96
  this.showEmptyState();
93
97
  this.renderChat();