ryugi-artifacts 1.52.0 → 1.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (388) hide show
  1. package/dist/cli.cjs +69 -13
  2. package/dist/server.cjs +128 -28
  3. package/dist/viewer/ArtboardLayout-ClUxyHsI.js +12 -0
  4. package/dist/viewer/{ArtifactList-DmjMLZ0h.js → ArtifactList-DWDJ5LEt.js} +1 -1
  5. package/dist/viewer/{AutoPublishPrompt-DD0X6xKe.js → AutoPublishPrompt-BwctiTh4.js} +1 -1
  6. package/dist/viewer/{Avatar-D-_lqLqB.js → Avatar-Cn7NhAnm.js} +1 -1
  7. package/dist/viewer/Canvas-E9VDMeEc.js +1 -0
  8. package/dist/viewer/DocumentLayout-BFuQakcs.js +2 -0
  9. package/dist/viewer/DocumentPage-Do164H4-.js +4 -0
  10. package/dist/viewer/{HtmlLayout-L-JG4TT_.js → HtmlLayout-C7hkZ55q.js} +1 -1
  11. package/dist/viewer/{MenuSubmenuTrigger-CJ4bCLMR.js → MenuSubmenuTrigger-DzQpC5oA.js} +1 -1
  12. package/dist/viewer/{PopoverPopup-CRp6gJDh.js → PopoverPopup-CMNhQoXT.js} +1 -1
  13. package/dist/viewer/{PreviewLayout-BEYL-cxG.js → PreviewLayout-D9gmfWqH.js} +2 -2
  14. package/dist/viewer/{Select-DYJ_E93W.js → Select-BRSfpPKM.js} +1 -1
  15. package/dist/viewer/{SelectScrollUpArrow-DmFkzbLt.js → SelectScrollUpArrow-CdfNjkj8.js} +1 -1
  16. package/dist/viewer/{SettingsDialog-C2ZnAxlt.js → SettingsDialog-COH6VMif.js} +1 -1
  17. package/dist/viewer/SnapshotDocument-Cz2Xa6hu.js +1 -0
  18. package/dist/viewer/{Switch-BTgm32FM.js → Switch-Q4XSXrKe.js} +1 -1
  19. package/dist/viewer/{TooltipPopup-mAq8CKFN.js → TooltipPopup-DdOZY51R.js} +1 -1
  20. package/dist/viewer/VirtualizedEditor-D9Ivycdp-HSqMhR6S.js +1 -0
  21. package/dist/viewer/{VirtualizedRenderer-C_d95FXi-DItHBjY8.js → VirtualizedRenderer-C_d95FXi-cthQ1Ukf.js} +1 -1
  22. package/dist/viewer/{WarningsBadge-CA2jVC-7.js → WarningsBadge-DT2D_sy-.js} +1 -1
  23. package/dist/viewer/{abnfDiagram-VCTEODGH-U_J3NQq_.js → abnfDiagram-VCTEODGH-DtLZPDMV.js} +1 -1
  24. package/dist/viewer/{ar-SA-G6X2FPQ2-9QlMXZMa.js → ar-SA-G6X2FPQ2-ypJ43wZe.js} +1 -1
  25. package/dist/viewer/{architecture-7GRP2DOG-RpGwqwXh.js → architecture-7GRP2DOG-Bqxf75om.js} +1 -1
  26. package/dist/viewer/{architectureDiagram-5GKGNRK7-6x9WtX4Y.js → architectureDiagram-5GKGNRK7-BMCkUHOL.js} +1 -1
  27. package/dist/viewer/{atoms-J-7h4J0D.js → atoms-DdxqzUhr.js} +1 -1
  28. package/dist/viewer/{az-AZ-76LH7QW2-D6JJf7p6.js → az-AZ-76LH7QW2-xlB0n7oq.js} +1 -1
  29. package/dist/viewer/{bg-BG-XCXSNQG7-Da1btUCY.js → bg-BG-XCXSNQG7-hu0T4X9M.js} +1 -1
  30. package/dist/viewer/{blockDiagram-I7D4REHJ-CdzYf_Oz.js → blockDiagram-I7D4REHJ-BM5jQIqt.js} +1 -1
  31. package/dist/viewer/{bn-BD-2XOGV67Q-BrXJy_nt.js → bn-BD-2XOGV67Q-Bb5x1Ab5.js} +1 -1
  32. package/dist/viewer/{c4Diagram-7LVT6UL2-D_AD-nyI.js → c4Diagram-7LVT6UL2-KqnHZqDv.js} +1 -1
  33. package/dist/viewer/{ca-ES-6MX7JW3Y-CNVDK18r.js → ca-ES-6MX7JW3Y-F0W_v-eU.js} +1 -1
  34. package/dist/viewer/channel-CxV3gAGO.js +1 -0
  35. package/dist/viewer/{channel-C_CA0PJa.js → channel-DJrD9kCF.js} +151 -151
  36. package/dist/viewer/{chunk-4HAMMTFA-CSRLh2cV.js → chunk-4HAMMTFA-pSsFoET4.js} +1 -1
  37. package/dist/viewer/{chunk-75Z2AOVW-ycjNg7fX.js → chunk-75Z2AOVW-D7Aor98Z.js} +1 -1
  38. package/dist/viewer/{chunk-DU6HZSFF-CVzGUzBI.js → chunk-DU6HZSFF-CIB8PC1h.js} +1 -1
  39. package/dist/viewer/{chunk-EIO257PC-CxGs3er0.js → chunk-EIO257PC-Dgr5iWF5.js} +1 -1
  40. package/dist/viewer/{chunk-F27PBJKO-DC0H_CHi.js → chunk-F27PBJKO-CpQTn4B3.js} +1 -1
  41. package/dist/viewer/{chunk-GMAD6QVW-Kf2IaN9n.js → chunk-GMAD6QVW-05vbthU8.js} +1 -1
  42. package/dist/viewer/{chunk-GVQU2GXP-1hFULO-B.js → chunk-GVQU2GXP-DXJG5XT5.js} +1 -1
  43. package/dist/viewer/{chunk-IMKFNOWR-NoUq582p.js → chunk-IMKFNOWR-D6tdxpi9.js} +1 -1
  44. package/dist/viewer/{chunk-L3NEJ4N5-DDs5IRd7.js → chunk-L3NEJ4N5-BYJ62FYT.js} +1 -1
  45. package/dist/viewer/{chunk-OSK3NFVY-B-h27qZK.js → chunk-OSK3NFVY-yOWVxIgp.js} +1 -1
  46. package/dist/viewer/{chunk-P2QGCYS3-Bv0w9x58.js → chunk-P2QGCYS3-D1tpiBM5.js} +1 -1
  47. package/dist/viewer/{chunk-POPQ4Y6H-CudZiTw3.js → chunk-POPQ4Y6H-B5z-Oh2Q.js} +1 -1
  48. package/dist/viewer/{chunk-PWAF6VOD-mMImR0Qk.js → chunk-PWAF6VOD-9YwtnuFC.js} +1 -1
  49. package/dist/viewer/{chunk-SHT3W25Y-B3TQ6GV8.js → chunk-SHT3W25Y-I9RMvcdw.js} +1 -1
  50. package/dist/viewer/{chunk-SVP7TREG-DQ5iEcVM.js → chunk-SVP7TREG-CwqW92ar.js} +1 -1
  51. package/dist/viewer/{chunk-TICWLB2K-Cjqe85RE.js → chunk-TICWLB2K-CydiUTxi.js} +1 -1
  52. package/dist/viewer/classDiagram-ZZMXUADV-GPbz8hWq.js +1 -0
  53. package/dist/viewer/classDiagram-v2-VYDZK3BY-GPbz8hWq.js +1 -0
  54. package/dist/viewer/{cs-CZ-2BRQDIVT--RmvnnDY.js → cs-CZ-2BRQDIVT-CrNQbIUQ.js} +1 -1
  55. package/dist/viewer/{cynefin-OW5HDTMX-CXa2zrGN.js → cynefin-OW5HDTMX-BJZ0sABS.js} +1 -1
  56. package/dist/viewer/{cynefinDiagram-5FMLGOSQ-DJs_y3h6.js → cynefinDiagram-5FMLGOSQ-zbtOD_we.js} +1 -1
  57. package/dist/viewer/{da-DK-5WZEPLOC-AtGRzU_N.js → da-DK-5WZEPLOC-CjrbuwLB.js} +1 -1
  58. package/dist/viewer/{dagre-GXQ25YYZ-DbVQO3ew.js → dagre-GXQ25YYZ-o_9_wMig.js} +1 -1
  59. package/dist/viewer/{de-DE-XR44H4JA-DnLYayke.js → de-DE-XR44H4JA-oX_nutsj.js} +1 -1
  60. package/dist/viewer/{diagram-S7CK7UJ4-Dr0s5Dsf.js → diagram-S7CK7UJ4-LLXPjbgo.js} +1 -1
  61. package/dist/viewer/{diagram-UQ7AKVKN-DJnFcKQU.js → diagram-UQ7AKVKN-DAVy9-BK.js} +1 -1
  62. package/dist/viewer/{diagram-VSXAHHWV-thEYR93n.js → diagram-VSXAHHWV-DxTGbu0J.js} +1 -1
  63. package/dist/viewer/{diagram-VX7I27RA-9X6hOK5m.js → diagram-VX7I27RA-D82X9jwI.js} +1 -1
  64. package/dist/viewer/{diagram-Z3DM3KII-69YBQrCX.js → diagram-Z3DM3KII-BBNoi6z7.js} +1 -1
  65. package/dist/viewer/dist-9jeqaGy7.js +6 -0
  66. package/dist/viewer/{dist-IfEJuSVv.js → dist-BFwMNB6k.js} +1 -1
  67. package/dist/viewer/{dist-DAvpLhQc.js → dist-BJ5H4s8T.js} +1 -1
  68. package/dist/viewer/dist-BMtSNtVN.js +9 -0
  69. package/dist/viewer/{dist-PhW25gSO.js → dist-B_e4pjO3.js} +1 -1
  70. package/dist/viewer/{dist-CfZKOKQr.js → dist-Bc2Nms3o.js} +1 -1
  71. package/dist/viewer/{dist-CuyxTjbs.js → dist-C-Eu4bqE.js} +1 -1
  72. package/dist/viewer/{dist-a0GzKSK5.js → dist-C20wJdts.js} +4 -4
  73. package/dist/viewer/dist-CD_XU9LZ.js +23 -0
  74. package/dist/viewer/{dist-BuykOqZu.js → dist-CKW7NA3k.js} +1 -1
  75. package/dist/viewer/{dist-DFO469af.js → dist-CQ0QqV-E.js} +1 -1
  76. package/dist/viewer/{dist-Blo59E9E.js → dist-ColXEqfY.js} +1 -1
  77. package/dist/viewer/{dist-C2LQMt7S.js → dist-CpnDpGrF.js} +1 -1
  78. package/dist/viewer/{dist-DN2I79vJ.js → dist-D7MEJaVD.js} +1 -1
  79. package/dist/viewer/{dist-Dv7aYhGQ.js → dist-DAihaCkg.js} +5 -5
  80. package/dist/viewer/{dist-DaZG7AxI.js → dist-DT3HBYq_.js} +1 -1
  81. package/dist/viewer/{dist-wx3JQvAx.js → dist-DgXEYFtC.js} +2 -2
  82. package/dist/viewer/{dist-iW4zg_Td.js → dist-DpzcPkPO.js} +1 -1
  83. package/dist/viewer/{dist-iouHdPKY.js → dist-DufwDSGF.js} +1 -1
  84. package/dist/viewer/{dist-CFLvwqFu.js → dist-HRbC3EzL.js} +1 -1
  85. package/dist/viewer/{dist-BXNziLMd.js → dist-QyGVQurA.js} +1 -1
  86. package/dist/viewer/{dist-jrwG2rQv.js → dist-gLkDi5gV.js} +1 -1
  87. package/dist/viewer/{dist-CShdm9ib.js → dist-lFqpNOu7.js} +1 -1
  88. package/dist/viewer/{dist-DLxczLSb.js → dist-rVUy18vV.js} +1 -1
  89. package/dist/viewer/{ebnfDiagram-PWID7BFC-CFbmSLFo.js → ebnfDiagram-PWID7BFC-R1x7_toW.js} +1 -1
  90. package/dist/viewer/{el-GR-BZB4AONW-if4mT9ES.js → el-GR-BZB4AONW-B1gUf5Wq.js} +1 -1
  91. package/dist/viewer/{en-B4ZKOASM-B4UEvQLc.js → en-B4ZKOASM-BzqifXYG.js} +1 -1
  92. package/dist/viewer/{erDiagram-RLTQ6QDP-DdcEfmPi.js → erDiagram-RLTQ6QDP-G3DY_3Kn.js} +1 -1
  93. package/dist/viewer/{es-ES-U4NZUMDT-BAEFbb2l.js → es-ES-U4NZUMDT-Bf862KtI.js} +1 -1
  94. package/dist/viewer/{eu-ES-A7QVB2H4-C8ZxjvZb.js → eu-ES-A7QVB2H4-cw-KudXS.js} +1 -1
  95. package/dist/viewer/{eventmodeling-NTZA5JFV-Bk0KUNG2.js → eventmodeling-NTZA5JFV-W2SduNyQ.js} +1 -1
  96. package/dist/viewer/{fa-IR-HGAKTJCU-cdtwDQ4r.js → fa-IR-HGAKTJCU-Dc3kLVEc.js} +1 -1
  97. package/dist/viewer/{fi-FI-Z5N7JZ37-B2U-Q5t6.js → fi-FI-Z5N7JZ37-DEfrCVOl.js} +1 -1
  98. package/dist/viewer/flowDiagram-HODETNUW-Cph3Xg_b.js +1 -0
  99. package/dist/viewer/{fr-FR-RHASNOE6-B_SmzH7X.js → fr-FR-RHASNOE6-DCWroNnw.js} +1 -1
  100. package/dist/viewer/{ganttDiagram-EL5Y4UJY-D2Kn-WdW.js → ganttDiagram-EL5Y4UJY-CBBvZI8_.js} +2 -2
  101. package/dist/viewer/{gitGraph-4MIJSDKK-4_U1T0Ea.js → gitGraph-4MIJSDKK-Zi006KWa.js} +1 -1
  102. package/dist/viewer/{gitGraphDiagram-WWUBYQGX-5HQ_pF9Y.js → gitGraphDiagram-WWUBYQGX-CAySMu-j.js} +1 -1
  103. package/dist/viewer/{gl-ES-HMX3MZ6V-DCmRbSiO.js → gl-ES-HMX3MZ6V-CR8xUSOn.js} +1 -1
  104. package/dist/viewer/{he-IL-6SHJWFNN-CZbdV0mD.js → he-IL-6SHJWFNN-C8yZde6h.js} +1 -1
  105. package/dist/viewer/{hi-IN-IWLTKZ5I-BhnbzRy1.js → hi-IN-IWLTKZ5I-DYPlVvzi.js} +1 -1
  106. package/dist/viewer/{hu-HU-A5ZG7DT2-Df3hLCmT.js → hu-HU-A5ZG7DT2-CBOX_Jtj.js} +1 -1
  107. package/dist/viewer/{id-ID-SAP4L64H-BZiWiUfy.js → id-ID-SAP4L64H-DsZXSxLh.js} +1 -1
  108. package/dist/viewer/{image-GAAHSSAO-B70Qt0nE.js → image-GAAHSSAO-mvqYO0A8.js} +1 -1
  109. package/dist/viewer/{imperative-SVCb0VNl.js → imperative-CbcXS1st.js} +1 -1
  110. package/dist/viewer/index.html +6 -6
  111. package/dist/viewer/index.js +2 -2
  112. package/dist/viewer/index3.css +198 -0
  113. package/dist/viewer/{info-A6RAGUB7-Czu0Tkv8.js → info-A6RAGUB7-DX04UvB2.js} +1 -1
  114. package/dist/viewer/{infoDiagram-27XIBGKW-CbpnsOxC.js → infoDiagram-27XIBGKW-IkA_9Jty.js} +1 -1
  115. package/dist/viewer/{isElementDisabled-Bjs2oroo.js → isElementDisabled-C2dIfcO9.js} +1 -1
  116. package/dist/viewer/{ishikawaDiagram-5VMMS53U-oplhByo0.js → ishikawaDiagram-5VMMS53U-BxTELNz1.js} +1 -1
  117. package/dist/viewer/{it-IT-JPQ66NNP-1o7wh0bd.js → it-IT-JPQ66NNP-BTMc9DOB.js} +1 -1
  118. package/dist/viewer/{ja-JP-DBVTYXUO-Dp9qWx6G.js → ja-JP-DBVTYXUO-BkC3QJDS.js} +1 -1
  119. package/dist/viewer/{journeyDiagram-3NMN7TZE-D0JunTQX.js → journeyDiagram-3NMN7TZE-CCLtorqH.js} +1 -1
  120. package/dist/viewer/{kaa-6HZHGXH3-C6rioSHj.js → kaa-6HZHGXH3-Bww8K2qP.js} +1 -1
  121. package/dist/viewer/{kab-KAB-ZGHBKWFO-BrUzJlXA.js → kab-KAB-ZGHBKWFO-fGNXEgCd.js} +1 -1
  122. package/dist/viewer/{kanban-definition-UXKFOSKX-BNIlzFrp.js → kanban-definition-UXKFOSKX-CWdwptnO.js} +1 -1
  123. package/dist/viewer/{kk-KZ-P5N5QNE5-DFBRScQO.js → kk-KZ-P5N5QNE5-4igdDMg3.js} +1 -1
  124. package/dist/viewer/{km-KH-HSX4SM5Z-CibDxP_N.js → km-KH-HSX4SM5Z-C3kO_gwl.js} +1 -1
  125. package/dist/viewer/{ko-KR-MTYHY66A-DBGsVIeC.js → ko-KR-MTYHY66A-T_4YvNk1.js} +1 -1
  126. package/dist/viewer/{ku-TR-6OUDTVRD-tEBzncv7.js → ku-TR-6OUDTVRD-x2Am3k9m.js} +1 -1
  127. package/dist/viewer/{lt-LT-XHIRWOB4-BOJk_f8U.js → lt-LT-XHIRWOB4-Dzb1f--X.js} +1 -1
  128. package/dist/viewer/{lv-LV-5QDEKY6T-E8GC79U8.js → lv-LV-5QDEKY6T-Bz0SYFvS.js} +1 -1
  129. package/dist/viewer/{mermaid-parser.core-X6pcgjVV.js → mermaid-parser.core-Deo-nVxB.js} +3 -3
  130. package/dist/viewer/{mindmap-definition-YA3MSWOX-DEo68bu2.js → mindmap-definition-YA3MSWOX-C6-k3VX_.js} +1 -1
  131. package/dist/viewer/{motion-COMAW8WK.js → motion-CpHpHQvj.js} +1 -1
  132. package/dist/viewer/{mr-IN-CRQNXWMA-DXlddyPK.js → mr-IN-CRQNXWMA-jN-EnaVY.js} +1 -1
  133. package/dist/viewer/{my-MM-5M5IBNSE-B0Chy1-h.js → my-MM-5M5IBNSE-DTjGi-zb.js} +1 -1
  134. package/dist/viewer/{nb-NO-T6EIAALU-BFrQcMGB.js → nb-NO-T6EIAALU-DZKCd9NJ.js} +1 -1
  135. package/dist/viewer/{nl-NL-IS3SIHDZ-G1aRBNnO.js → nl-NL-IS3SIHDZ-DdlAu3k7.js} +1 -1
  136. package/dist/viewer/{nn-NO-6E72VCQL-COo889DB.js → nn-NO-6E72VCQL-BzJLgL7r.js} +1 -1
  137. package/dist/viewer/{oc-FR-POXYY2M6-CV3hG3sd.js → oc-FR-POXYY2M6-DDd4tg7N.js} +1 -1
  138. package/dist/viewer/{pa-IN-N4M65BXN-CnW7KYQd.js → pa-IN-N4M65BXN-Dg_eqa4b.js} +1 -1
  139. package/dist/viewer/{packet-AYTQ26CC-C3mqswi8.js → packet-AYTQ26CC-D2zF1nWw.js} +1 -1
  140. package/dist/viewer/{pegDiagram-XKGWAZYB-DBOXCzxH.js → pegDiagram-XKGWAZYB-BiJPVJhk.js} +1 -1
  141. package/dist/viewer/percentages-BXMCSKIN-DWRrrfit.js +1 -0
  142. package/dist/viewer/{pie-WAS4IAKB-C1rSJ8M2.js → pie-WAS4IAKB-rJxYSbeV.js} +1 -1
  143. package/dist/viewer/{pieDiagram-E7YTZNPT-rpofZzJY.js → pieDiagram-E7YTZNPT-6RiQz20H.js} +1 -1
  144. package/dist/viewer/{pl-PL-T2D74RX3-DI7AZ_Kx.js → pl-PL-T2D74RX3-CoAWOF3L.js} +1 -1
  145. package/dist/viewer/preview.html +4 -4
  146. package/dist/viewer/preview.js +1 -1
  147. package/dist/viewer/{prod-BfCoZ1Zi.js → prod-P-DeNWG5.js} +9 -9
  148. package/dist/viewer/{pt-BR-5N22H2LF-CSOOpz9E.js → pt-BR-5N22H2LF-XfHYGZhB.js} +1 -1
  149. package/dist/viewer/{pt-PT-UZXXM6DQ-BAaaVF_f.js → pt-PT-UZXXM6DQ-DkGbMiYX.js} +1 -1
  150. package/dist/viewer/{quadrantDiagram-AXDQQJYC-DBdKEvBe.js → quadrantDiagram-AXDQQJYC-CpoKheht.js} +1 -1
  151. package/dist/viewer/{radar-RG4KPBEZ-tFkyYyli.js → radar-RG4KPBEZ-BlHD3aXm.js} +1 -1
  152. package/dist/viewer/{railroad-74A4TZTK-dQnKMeqs.js → railroad-74A4TZTK-BP9Vh0NC.js} +1 -1
  153. package/dist/viewer/{railroad-abnf-HS5TGJTU-D5WdMlWZ.js → railroad-abnf-HS5TGJTU-aqyvOfP4.js} +1 -1
  154. package/dist/viewer/{railroad-ebnf-LZEXJU2U-kN55JmNE.js → railroad-ebnf-LZEXJU2U-BOauahET.js} +1 -1
  155. package/dist/viewer/{railroad-peg-WCYAUIDC-BHb7EJ3j.js → railroad-peg-WCYAUIDC-C7L1dhog.js} +1 -1
  156. package/dist/viewer/{railroadDiagram-O6MQD6OU-Gbf83Twz.js → railroadDiagram-O6MQD6OU-RJId1bnU.js} +1 -1
  157. package/dist/viewer/{requirementDiagram-BXWQKSXE-CDTSBX_Q.js → requirementDiagram-BXWQKSXE-XCPAecK3.js} +1 -1
  158. package/dist/viewer/{ro-RO-JPDTUUEW-Dc_56IHR.js → ro-RO-JPDTUUEW-1ssrx1O1.js} +1 -1
  159. package/dist/viewer/{route-B2wjsQx-.js → route-CtVR813Y.js} +2 -2
  160. package/dist/viewer/{ru-RU-B4JR7IUQ-Fn-U4gMM.js → ru-RU-B4JR7IUQ-_mhChK_q.js} +1 -1
  161. package/dist/viewer/{sankeyDiagram-P5KCCOFB-DFlD9Z9o.js → sankeyDiagram-P5KCCOFB-CgE76yMh.js} +1 -1
  162. package/dist/viewer/{selection-CZYn_sqk.js → selection-CQH3i_mV.js} +1 -1
  163. package/dist/viewer/{sequenceDiagram-WJ2MYXX4-ChGVZL8z.js → sequenceDiagram-WJ2MYXX4-DMWNKkaa.js} +1 -1
  164. package/dist/viewer/{settings-dialog-CeIy-hGd.js → settings-dialog-EGGlR3lR.js} +1 -1
  165. package/dist/viewer/{si-LK-N5RQ5JYF-BnVh94Ki.js → si-LK-N5RQ5JYF-DY4fqG1U.js} +1 -1
  166. package/dist/viewer/{sk-SK-C5VTKIMK-CrdZHCMS.js → sk-SK-C5VTKIMK-CRCTAoeu.js} +1 -1
  167. package/dist/viewer/{sl-SI-NN7IZMDC-BllFVBqB.js → sl-SI-NN7IZMDC-7hPsiR9P.js} +1 -1
  168. package/dist/viewer/{stateDiagram-D77RDMKH-XZFPCyrv.js → stateDiagram-D77RDMKH-9SzXyrvH.js} +1 -1
  169. package/dist/viewer/stateDiagram-v2-MP3YSRHH-DvCk9URc.js +1 -0
  170. package/dist/viewer/subset-shared.chunk-h-eQSKjs.js +1 -0
  171. package/dist/viewer/{subset-worker.chunk-gyv0yHbq.js → subset-worker.chunk-DmxbGpAN.js} +1 -1
  172. package/dist/viewer/{sv-SE-XGPEYMSR-DNHyy4_o.js → sv-SE-XGPEYMSR-DysIgC4A.js} +1 -1
  173. package/dist/viewer/{swimlanes-42K2YHIH-CmmegasI.js → swimlanes-42K2YHIH-DcY-w4oa.js} +1 -1
  174. package/dist/viewer/swimlanesDiagram-VR7AAH4N-tjMLIcvo.js +8 -0
  175. package/dist/viewer/{ta-IN-2NMHFXQM-CMzNsS5O.js → ta-IN-2NMHFXQM-CdcqOCdG.js} +1 -1
  176. package/dist/viewer/{th-TH-HPSO5L25-C6nTStRU.js → th-TH-HPSO5L25-BjWqo67y.js} +1 -1
  177. package/dist/viewer/{timeline-definition-24CTP7MA-jtLUlzrM.js → timeline-definition-24CTP7MA-CNfAh8J-.js} +1 -1
  178. package/dist/viewer/tokens.stylex-CRPLoEeB.js +1 -0
  179. package/dist/viewer/{tr-TR-DEFEU3FU-WOOkPh5-.js → tr-TR-DEFEU3FU-BuAcmYwD.js} +1 -1
  180. package/dist/viewer/{treeView-Q6P3EWNA-BhN8g3y5.js → treeView-Q6P3EWNA-BFg8kxns.js} +1 -1
  181. package/dist/viewer/{treemap-WGGIJYW6-B89ibrcB.js → treemap-WGGIJYW6-DhnPlQCW.js} +1 -1
  182. package/dist/viewer/{type-icons-B-KaFxzk.js → type-icons-UqzeY2o9.js} +1 -1
  183. package/dist/viewer/{uk-UA-QMV73CPH-Z_rblHaZ.js → uk-UA-QMV73CPH-Cd0YhUhw.js} +1 -1
  184. package/dist/viewer/{useOpenInteractionType-DGOOAOrk.js → useOpenInteractionType-Bop71xfp.js} +1 -1
  185. package/dist/viewer/{useTranslation-8GA-3DwO.js → useTranslation-MhXpFigm.js} +1 -1
  186. package/dist/viewer/{useTypeFavicon-4-6TGQo9.js → useTypeFavicon-V3RukD4j.js} +1 -1
  187. package/dist/viewer/{vennDiagram-4TSXK5OY-BnWMmJYi.js → vennDiagram-4TSXK5OY-Dwils7hh.js} +1 -1
  188. package/dist/viewer/{vi-VN-M7AON7JQ-DYnqigr8.js → vi-VN-M7AON7JQ-BpkDWISK.js} +1 -1
  189. package/dist/viewer/view-CIj61u7O.js +2 -0
  190. package/dist/viewer/{viewport-CFJHn_Y6-nVtR7zt0.js → viewport-CFJHn_Y6-CVDA-ulk.js} +1 -1
  191. package/dist/viewer/{wardley-WFR3VGLG-DswAnuM4.js → wardley-WFR3VGLG-BJ2MNs4a.js} +1 -1
  192. package/dist/viewer/{wardleyDiagram-VM6X3IG4-YJBlL4KB.js → wardleyDiagram-VM6X3IG4-Bvsq5U_A.js} +1 -1
  193. package/dist/viewer/{xychartDiagram-S5SC5T6Z-Bcismawx.js → xychartDiagram-S5SC5T6Z-AA57JG7K.js} +2 -2
  194. package/dist/viewer/{zh-CN-LNUGB5OW-leMSbuNK.js → zh-CN-LNUGB5OW-CFMkDTwq.js} +1 -1
  195. package/dist/viewer/{zh-HK-E62DVLB3-DF1ptRGj.js → zh-HK-E62DVLB3-BEv3vqfr.js} +1 -1
  196. package/dist/viewer/{zh-TW-RAJ6MFWO-ByjpijD0.js → zh-TW-RAJ6MFWO-CyPZjvaB.js} +1 -1
  197. package/dist/viewer-lib/{Canvas-CbzZVjVc.js → Canvas-D0HiqoAc.js} +373 -206
  198. package/dist/viewer-lib/{PreviewView-BW64tR79.js → PreviewView-shk1mFxD.js} +130 -50
  199. package/dist/viewer-lib/{SnapshotDocument-BPerOtiq.js → SnapshotDocument-BwONal1P.js} +2868 -2868
  200. package/dist/viewer-lib/{VirtualizedEditor-D9Ivycdp-BigbWEKU.js → VirtualizedEditor-D9Ivycdp-B5WfqOTe.js} +2 -2
  201. package/dist/viewer-lib/{VirtualizedRenderer-C_d95FXi-CLyZhqjE.js → VirtualizedRenderer-C_d95FXi-CUGYsznU.js} +3 -3
  202. package/dist/viewer-lib/{WarningsBadge-ChJ6o1J1.js → WarningsBadge-T28ImbzS.js} +98 -67
  203. package/dist/viewer-lib/{abnfDiagram-VCTEODGH-DDQwicae.js → abnfDiagram-VCTEODGH-fmtTWZq-.js} +2 -2
  204. package/dist/viewer-lib/{ar-SA-G6X2FPQ2-B02n052d.js → ar-SA-G6X2FPQ2-Cs9xitjo.js} +1 -1
  205. package/dist/viewer-lib/{architectureDiagram-5GKGNRK7-B2jsO9Bl.js → architectureDiagram-5GKGNRK7-BYWLqRLF.js} +3 -3
  206. package/dist/viewer-lib/{az-AZ-76LH7QW2-BTXcY2JM.js → az-AZ-76LH7QW2-DZvqabMr.js} +1 -1
  207. package/dist/viewer-lib/{bg-BG-XCXSNQG7-Bfchenk7.js → bg-BG-XCXSNQG7-CDlbEtBo.js} +1 -1
  208. package/dist/viewer-lib/{blockDiagram-I7D4REHJ-KCTfuaLI.js → blockDiagram-I7D4REHJ-B0KkrLe3.js} +5 -5
  209. package/dist/viewer-lib/{bn-BD-2XOGV67Q-B64neeOv.js → bn-BD-2XOGV67Q-Bcpdzwwu.js} +1 -1
  210. package/dist/viewer-lib/{c4Diagram-7LVT6UL2-Bko4MtzH.js → c4Diagram-7LVT6UL2-DuYxy5ot.js} +3 -3
  211. package/dist/viewer-lib/{ca-ES-6MX7JW3Y-nJPEPZWm.js → ca-ES-6MX7JW3Y-Tp9MLQq4.js} +1 -1
  212. package/dist/viewer-lib/{chunk-4HAMMTFA-BkxwB-eb.js → chunk-4HAMMTFA-CkmxTrhs.js} +2 -2
  213. package/dist/viewer-lib/{chunk-EIO257PC-bHDhuLCd.js → chunk-EIO257PC-DLCDbnC8.js} +1 -1
  214. package/dist/viewer-lib/{chunk-GMAD6QVW-_ZajlNk6.js → chunk-GMAD6QVW-CUmzRbj2.js} +1 -1
  215. package/dist/viewer-lib/{chunk-GVQU2GXP-vqjpfmdI.js → chunk-GVQU2GXP-CxGN1WlA.js} +1 -1
  216. package/dist/viewer-lib/{chunk-IMKFNOWR-BfQ8bdC6.js → chunk-IMKFNOWR-BPR-DQim.js} +1 -1
  217. package/dist/viewer-lib/{chunk-L3NEJ4N5-B-vflwlT.js → chunk-L3NEJ4N5-C2BaEFUr.js} +3 -3
  218. package/dist/viewer-lib/{chunk-OSK3NFVY-DUw48R3-.js → chunk-OSK3NFVY-0JXJG1Zt.js} +4 -4
  219. package/dist/viewer-lib/{chunk-PWAF6VOD-BhIJrr76.js → chunk-PWAF6VOD-BJukyKHm.js} +1 -1
  220. package/dist/viewer-lib/{chunk-SHT3W25Y-qc6rNZPV.js → chunk-SHT3W25Y-Bsi1tff4.js} +2 -2
  221. package/dist/viewer-lib/{chunk-SVP7TREG-DztXc-V7.js → chunk-SVP7TREG-XIVN_OvA.js} +1 -1
  222. package/dist/viewer-lib/{chunk-TICWLB2K-C8owKxRk.js → chunk-TICWLB2K-DQ5EtuSi.js} +1 -1
  223. package/dist/viewer-lib/{classDiagram-ZZMXUADV-DPjXZV4a.js → classDiagram-ZZMXUADV-CPCsC8wG.js} +8 -8
  224. package/dist/viewer-lib/{classDiagram-v2-VYDZK3BY-MHT_Bszs.js → classDiagram-v2-VYDZK3BY-C1CFYmkl.js} +8 -8
  225. package/dist/viewer-lib/core.js +4 -4
  226. package/dist/viewer-lib/{cs-CZ-2BRQDIVT-BkSqhrWU.js → cs-CZ-2BRQDIVT-BKKgr84s.js} +1 -1
  227. package/dist/viewer-lib/{cynefinDiagram-5FMLGOSQ-BckTpVZv.js → cynefinDiagram-5FMLGOSQ-BazGxX0R.js} +1 -1
  228. package/dist/viewer-lib/{da-DK-5WZEPLOC-DUjBE47c.js → da-DK-5WZEPLOC-DhXTpPE6.js} +1 -1
  229. package/dist/viewer-lib/{dagre-GXQ25YYZ-DuYtIsMf.js → dagre-GXQ25YYZ-Cv1a0cnT.js} +7 -7
  230. package/dist/viewer-lib/{de-DE-XR44H4JA-BIPpWOZC.js → de-DE-XR44H4JA-C7o9cou2.js} +1 -1
  231. package/dist/viewer-lib/{diagram-S7CK7UJ4-kGC0oB-n.js → diagram-S7CK7UJ4-CMBP4U-C.js} +2 -2
  232. package/dist/viewer-lib/{diagram-UQ7AKVKN-BoOtss6v.js → diagram-UQ7AKVKN-BxH5Z6rl.js} +1 -1
  233. package/dist/viewer-lib/{diagram-VX7I27RA-bE55AWUH.js → diagram-VX7I27RA-C0j4ftGJ.js} +2 -2
  234. package/dist/viewer-lib/{diagram-Z3DM3KII-CLIYEJwW.js → diagram-Z3DM3KII-Dl9M3Rq8.js} +1 -1
  235. package/dist/viewer-lib/{dist-Co4h9qVP.js → dist-79JIu8e4.js} +3 -3
  236. package/dist/viewer-lib/{dist-DjH4p_7w.js → dist-B0QbjYMA.js} +3 -3
  237. package/dist/viewer-lib/{dist-C4R4oDso.js → dist-BAhwODp4.js} +4 -4
  238. package/dist/viewer-lib/{dist-Bzt9ljL8.js → dist-BM8sMVFV.js} +3 -3
  239. package/dist/viewer-lib/{dist-HGn8kyhE.js → dist-BNA-ujmC.js} +3 -3
  240. package/dist/viewer-lib/{dist-DXL3Vvu_.js → dist-BSR524Hj.js} +4 -4
  241. package/dist/viewer-lib/{dist-D4ui83uK.js → dist-BXlHzrzE.js} +43 -43
  242. package/dist/viewer-lib/{dist-BqrZ0W7I.js → dist-BZ4WFFFM.js} +4 -4
  243. package/dist/viewer-lib/{dist-Dk0LY6Vt.js → dist-BZlrvSGX.js} +2 -2
  244. package/dist/viewer-lib/{dist-BiKHoqXb.js → dist-BmnP1h91.js} +1 -1
  245. package/dist/viewer-lib/{dist-DPegN7cE.js → dist-Bua4XGLk.js} +2 -2
  246. package/dist/viewer-lib/{dist-B98raYZL.js → dist-Bwl5wyYT.js} +1 -1
  247. package/dist/viewer-lib/{dist-CP-HEL-H.js → dist-ByePWZ-_.js} +3 -3
  248. package/dist/viewer-lib/{dist-C0DuuKNh.js → dist-BzpTDlAF.js} +2 -2
  249. package/dist/viewer-lib/{dist-Iv_hnPUO.js → dist-CPUC1P_2.js} +3 -3
  250. package/dist/viewer-lib/{dist-3QPYZQVn.js → dist-CYU0BHom.js} +2 -2
  251. package/dist/viewer-lib/{dist-Cxbnmqf-.js → dist-Cc8N0RgM.js} +3 -3
  252. package/dist/viewer-lib/{dist-0x0XvlZ0.js → dist-CeEn7nm4.js} +2 -2
  253. package/dist/viewer-lib/{dist-DqOCrJCF.js → dist-CfXPqBwq.js} +2 -2
  254. package/dist/viewer-lib/{dist-nIB1PQMe.js → dist-CjHJX4f7.js} +3 -3
  255. package/dist/viewer-lib/{dist-DKGJ0PGo.js → dist-D144Tf-O.js} +3 -3
  256. package/dist/viewer-lib/{dist-CFvYZ0jx.js → dist-D_xezVJA.js} +2 -2
  257. package/dist/viewer-lib/{dist-CrsmzP_t.js → dist-DzFmeZNr.js} +3 -3
  258. package/dist/viewer-lib/{dist-CNDLTwEe.js → dist-Q82Za023.js} +2 -2
  259. package/dist/viewer-lib/document.js +688 -688
  260. package/dist/viewer-lib/{ebnfDiagram-PWID7BFC-CJryZ0Ub.js → ebnfDiagram-PWID7BFC-D8F2WDtW.js} +2 -2
  261. package/dist/viewer-lib/{el-GR-BZB4AONW-CRJO-xlS.js → el-GR-BZB4AONW-CDA3taa_.js} +1 -1
  262. package/dist/viewer-lib/{en-B4ZKOASM-WDjBo6bb.js → en-B4ZKOASM-BHPrB8Bd.js} +1 -1
  263. package/dist/viewer-lib/{erDiagram-RLTQ6QDP-DXhFcXP0.js → erDiagram-RLTQ6QDP-B1gVdM50.js} +7 -7
  264. package/dist/viewer-lib/{es-ES-U4NZUMDT-BcadFApl.js → es-ES-U4NZUMDT-D-QtzuG3.js} +1 -1
  265. package/dist/viewer-lib/{eu-ES-A7QVB2H4-u489x-EX.js → eu-ES-A7QVB2H4-rVNnIhUc.js} +1 -1
  266. package/dist/viewer-lib/{fa-IR-HGAKTJCU-CZHBc9Y-.js → fa-IR-HGAKTJCU-Bg-NiBTm.js} +1 -1
  267. package/dist/viewer-lib/{fi-FI-Z5N7JZ37-CTGhWIDH.js → fi-FI-Z5N7JZ37-Beh8vprc.js} +1 -1
  268. package/dist/viewer-lib/flowDiagram-HODETNUW-BZ6aaJuA.js +15 -0
  269. package/dist/viewer-lib/{fr-FR-RHASNOE6-ndP6lVQl.js → fr-FR-RHASNOE6-CxH52pnK.js} +1 -1
  270. package/dist/viewer-lib/{ganttDiagram-EL5Y4UJY-aa2GJiqI.js → ganttDiagram-EL5Y4UJY-CGRbJ23r.js} +1 -1
  271. package/dist/viewer-lib/{gl-ES-HMX3MZ6V-DlWqT4sK.js → gl-ES-HMX3MZ6V-CPyPELUq.js} +1 -1
  272. package/dist/viewer-lib/{he-IL-6SHJWFNN-CLWjGAVr.js → he-IL-6SHJWFNN-CBFuUHD4.js} +1 -1
  273. package/dist/viewer-lib/{hi-IN-IWLTKZ5I-DJqn_uLv.js → hi-IN-IWLTKZ5I-DeWSBYuL.js} +1 -1
  274. package/dist/viewer-lib/{hu-HU-A5ZG7DT2-BpeNeLjn.js → hu-HU-A5ZG7DT2-Cn0XrjuA.js} +1 -1
  275. package/dist/viewer-lib/{i18n-DDz6USHU.js → i18n-B-JxB-Bs.js} +59 -4
  276. package/dist/viewer-lib/{id-ID-SAP4L64H-CDwKowVK.js → id-ID-SAP4L64H-CLZiY9CV.js} +1 -1
  277. package/dist/viewer-lib/{image-GAAHSSAO-BY-5ntW4.js → image-GAAHSSAO-i1SHAW3p.js} +1 -1
  278. package/dist/viewer-lib/index.js +2689 -2242
  279. package/dist/viewer-lib/{infoDiagram-27XIBGKW-CPfUOOt9.js → infoDiagram-27XIBGKW-Bn3J5tdw.js} +1 -1
  280. package/dist/viewer-lib/{ishikawaDiagram-5VMMS53U-DtC0gvjX.js → ishikawaDiagram-5VMMS53U-kSa15PqY.js} +1 -1
  281. package/dist/viewer-lib/{it-IT-JPQ66NNP-CnFwC5Td.js → it-IT-JPQ66NNP-BRiJEHtW.js} +1 -1
  282. package/dist/viewer-lib/{ja-JP-DBVTYXUO-2RSkZuX9.js → ja-JP-DBVTYXUO-BEAO7YsK.js} +1 -1
  283. package/dist/viewer-lib/{journeyDiagram-3NMN7TZE-ifhH7efV.js → journeyDiagram-3NMN7TZE-DVSAkY5D.js} +1 -1
  284. package/dist/viewer-lib/{kaa-6HZHGXH3-D7xTuaJs.js → kaa-6HZHGXH3-CO47V7FM.js} +1 -1
  285. package/dist/viewer-lib/{kab-KAB-ZGHBKWFO-DX0Iklzw.js → kab-KAB-ZGHBKWFO-BtXqSv-k.js} +1 -1
  286. package/dist/viewer-lib/{kanban-definition-UXKFOSKX-D4hxferr.js → kanban-definition-UXKFOSKX-C9P3o3PA.js} +6 -6
  287. package/dist/viewer-lib/{kk-KZ-P5N5QNE5-DUziqc2-.js → kk-KZ-P5N5QNE5-DEyVkuV1.js} +1 -1
  288. package/dist/viewer-lib/{km-KH-HSX4SM5Z-CYmVyLD8.js → km-KH-HSX4SM5Z-CL7tWcCc.js} +1 -1
  289. package/dist/viewer-lib/{ko-KR-MTYHY66A-BRMJLb6m.js → ko-KR-MTYHY66A-B9uasYHE.js} +1 -1
  290. package/dist/viewer-lib/{ku-TR-6OUDTVRD-C06G4-Qw.js → ku-TR-6OUDTVRD-BBGMSeHg.js} +1 -1
  291. package/dist/viewer-lib/{lt-LT-XHIRWOB4-CVC1n_G8.js → lt-LT-XHIRWOB4-5zamvwme.js} +1 -1
  292. package/dist/viewer-lib/{lv-LV-5QDEKY6T-FVIewb7E.js → lv-LV-5QDEKY6T-CFo5IwRd.js} +1 -1
  293. package/dist/viewer-lib/{mindmap-definition-YA3MSWOX-Bkwmc_3l.js → mindmap-definition-YA3MSWOX-CUCiHvM1.js} +7 -7
  294. package/dist/viewer-lib/{motion-HoyOHy0P.js → motion-CJb30MI3.js} +674 -674
  295. package/dist/viewer-lib/{mr-IN-CRQNXWMA-BH7AkqKP.js → mr-IN-CRQNXWMA-DV9EEBJX.js} +1 -1
  296. package/dist/viewer-lib/{my-MM-5M5IBNSE-ZHweC0Pc.js → my-MM-5M5IBNSE-CWWLO28w.js} +1 -1
  297. package/dist/viewer-lib/{nb-NO-T6EIAALU-BQ9-CiSy.js → nb-NO-T6EIAALU-DnsoW2_j.js} +1 -1
  298. package/dist/viewer-lib/{nl-NL-IS3SIHDZ-CDp8glz2.js → nl-NL-IS3SIHDZ-CgVB_IaZ.js} +1 -1
  299. package/dist/viewer-lib/{nn-NO-6E72VCQL-f24ovIpM.js → nn-NO-6E72VCQL-DrPkaR_e.js} +1 -1
  300. package/dist/viewer-lib/{oc-FR-POXYY2M6-BJwjHPSX.js → oc-FR-POXYY2M6-C900MnL_.js} +1 -1
  301. package/dist/viewer-lib/{pa-IN-N4M65BXN-D8lgMhX2.js → pa-IN-N4M65BXN-DwyUMDPj.js} +1 -1
  302. package/dist/viewer-lib/{pegDiagram-XKGWAZYB-DA7sRq5g.js → pegDiagram-XKGWAZYB-DlRSmdW8.js} +2 -2
  303. package/dist/viewer-lib/percentages-BXMCSKIN-DLZ5MQgy.js +1 -0
  304. package/dist/viewer-lib/{pieDiagram-E7YTZNPT-1oagcm5S.js → pieDiagram-E7YTZNPT-BUsdTkOG.js} +2 -2
  305. package/dist/viewer-lib/{pl-PL-T2D74RX3-B8BX2n9J.js → pl-PL-T2D74RX3-BnfT5EeM.js} +1 -1
  306. package/dist/viewer-lib/{plugin-_bGVeqI0-CLL4vVOX.js → plugin-_bGVeqI0-S0DZ1-po.js} +1 -1
  307. package/dist/viewer-lib/{prod-CNWa0QGl.js → prod--DkXzJyO.js} +61 -61
  308. package/dist/viewer-lib/{pt-BR-5N22H2LF-B27BjAzC.js → pt-BR-5N22H2LF-C7z1fJXy.js} +1 -1
  309. package/dist/viewer-lib/{pt-PT-UZXXM6DQ-0QfPCRbg.js → pt-PT-UZXXM6DQ-DkEURteJ.js} +1 -1
  310. package/dist/viewer-lib/{quadrantDiagram-AXDQQJYC-CNUwfmio.js → quadrantDiagram-AXDQQJYC-BIWnKsk-.js} +1 -1
  311. package/dist/viewer-lib/{railroadDiagram-O6MQD6OU-BxKOszBt.js → railroadDiagram-O6MQD6OU-EqiGMf75.js} +2 -2
  312. package/dist/viewer-lib/{requirementDiagram-BXWQKSXE-DPAGs4Tf.js → requirementDiagram-BXWQKSXE-Ix3NFANZ.js} +7 -7
  313. package/dist/viewer-lib/{ro-RO-JPDTUUEW-DT7gvqe0.js → ro-RO-JPDTUUEW-IMlGspCH.js} +1 -1
  314. package/dist/viewer-lib/{ru-RU-B4JR7IUQ-CTwV5x5h.js → ru-RU-B4JR7IUQ-D6XXQ1b-.js} +1 -1
  315. package/dist/viewer-lib/{sequenceDiagram-WJ2MYXX4-BddfVi5c.js → sequenceDiagram-WJ2MYXX4-eJJFtwMV.js} +1 -1
  316. package/dist/viewer-lib/{si-LK-N5RQ5JYF-DJyTXo4-.js → si-LK-N5RQ5JYF-5x6CYyOe.js} +1 -1
  317. package/dist/viewer-lib/{sk-SK-C5VTKIMK-CUO7noQD.js → sk-SK-C5VTKIMK-DMZ_Xb2W.js} +1 -1
  318. package/dist/viewer-lib/{sl-SI-NN7IZMDC-BX3nq_N7.js → sl-SI-NN7IZMDC-BXNZe7uj.js} +1 -1
  319. package/dist/viewer-lib/{stateDiagram-D77RDMKH-TMLI2DWZ.js → stateDiagram-D77RDMKH-o952q3zW.js} +9 -9
  320. package/dist/viewer-lib/{stateDiagram-v2-MP3YSRHH-Cl21Lm5F.js → stateDiagram-v2-MP3YSRHH-CHnOjf5N.js} +8 -8
  321. package/dist/viewer-lib/{stylex-Bl4LaHjz.css → stylex-BL9A9j_O.css} +200 -0
  322. package/dist/viewer-lib/subset-shared.chunk-BZFaE4YS.js +2 -0
  323. package/dist/viewer-lib/{subset-worker.chunk-BFAOwen_.js → subset-worker.chunk-C8L2peSV.js} +2 -2
  324. package/dist/viewer-lib/{sv-SE-XGPEYMSR-DgNkrNyF.js → sv-SE-XGPEYMSR-CkvI6biu.js} +1 -1
  325. package/dist/viewer-lib/{swimlanes-42K2YHIH-Bkgl_R0c.js → swimlanes-42K2YHIH-Ni7p93g2.js} +7 -7
  326. package/dist/viewer-lib/{swimlanesDiagram-VR7AAH4N-7zj1ceIU.js → swimlanesDiagram-VR7AAH4N-Dc47u7Kn.js} +8 -8
  327. package/dist/viewer-lib/{ta-IN-2NMHFXQM-CyL7jY6Q.js → ta-IN-2NMHFXQM-DAb84TBp.js} +1 -1
  328. package/dist/viewer-lib/{th-TH-HPSO5L25-CfUhBEjR.js → th-TH-HPSO5L25-BTyFuebc.js} +1 -1
  329. package/dist/viewer-lib/{timeline-definition-24CTP7MA-Ct0iSWUz.js → timeline-definition-24CTP7MA-BhTfisDH.js} +2 -2
  330. package/dist/viewer-lib/{tokens.stylex-BTMziPcA.js → tokens.stylex-CTEpJFiS.js} +2 -0
  331. package/dist/viewer-lib/{tr-TR-DEFEU3FU-CknQCd8p.js → tr-TR-DEFEU3FU-DOfNiR4s.js} +1 -1
  332. package/dist/viewer-lib/types/src/shared/verdicts.d.ts +1 -0
  333. package/dist/viewer-lib/types/src/viewer/comments/CommentsPanel.d.ts +2 -1
  334. package/dist/viewer-lib/types/src/viewer/components/Canvas.d.ts +5 -1
  335. package/dist/viewer-lib/types/src/viewer/components/CaseList.d.ts +13 -0
  336. package/dist/viewer-lib/types/src/viewer/components/CompareSplit.d.ts +6 -0
  337. package/dist/viewer-lib/types/src/viewer/components/Labels.d.ts +3 -1
  338. package/dist/viewer-lib/types/src/viewer/components/MediaBoard.d.ts +2 -1
  339. package/dist/viewer-lib/types/src/viewer/components/SidePanel.d.ts +16 -0
  340. package/dist/viewer-lib/types/src/viewer/components/Toolbar.d.ts +3 -2
  341. package/dist/viewer-lib/types/src/viewer/components/UpdatedMarks.d.ts +5 -0
  342. package/dist/viewer-lib/types/src/viewer/components/VideoPlayer.d.ts +2 -1
  343. package/dist/viewer-lib/types/src/viewer/components/updated-styles.d.ts +44 -0
  344. package/dist/viewer-lib/types/src/viewer/hooks/useCaseNav.d.ts +21 -0
  345. package/dist/viewer-lib/types/src/viewer/hooks/useCloudHeader.d.ts +2 -0
  346. package/dist/viewer-lib/types/src/viewer/hooks/useEvidenceUpdates.d.ts +18 -0
  347. package/dist/viewer-lib/types/src/viewer/hooks/useSidePanel.d.ts +22 -0
  348. package/dist/viewer-lib/types/src/viewer/inspector/InspectorPanel.d.ts +2 -1
  349. package/dist/viewer-lib/types/src/viewer/inspector/styles.d.ts +10 -0
  350. package/dist/viewer-lib/types/src/viewer/lib/case-nav.d.ts +6 -0
  351. package/dist/viewer-lib/types/src/viewer/lib/evidence-updates.d.ts +28 -0
  352. package/dist/viewer-lib/types/src/viewer/lib/live-log.d.ts +1 -0
  353. package/dist/viewer-lib/types/src/viewer/lib/side-panel.d.ts +11 -0
  354. package/dist/viewer-lib/types/src/viewer/lib/view.d.ts +11 -0
  355. package/dist/viewer-lib/types/src/viewer/tokens.stylex.d.ts +2 -0
  356. package/dist/viewer-lib/types/src/viewer/verdicts/GroupVerdict.d.ts +2 -1
  357. package/dist/viewer-lib/{uk-UA-QMV73CPH-ChRpRV40.js → uk-UA-QMV73CPH-C9klxUYX.js} +1 -1
  358. package/dist/viewer-lib/{vennDiagram-4TSXK5OY-6mkvyJ-F.js → vennDiagram-4TSXK5OY-B5hurZou.js} +1 -1
  359. package/dist/viewer-lib/{vi-VN-M7AON7JQ-CZofUFw7.js → vi-VN-M7AON7JQ-3WAPWITl.js} +1 -1
  360. package/dist/viewer-lib/{viewport-CFJHn_Y6-BBMxfJ46.js → viewport-CFJHn_Y6-BEgw6eho.js} +1 -1
  361. package/dist/viewer-lib/{wardleyDiagram-VM6X3IG4-RdkeHyE3.js → wardleyDiagram-VM6X3IG4-BgXP3-qz.js} +1 -1
  362. package/dist/viewer-lib/{xychartDiagram-S5SC5T6Z-DXP09DGL.js → xychartDiagram-S5SC5T6Z-lk9YBERG.js} +4 -4
  363. package/dist/viewer-lib/{zh-CN-LNUGB5OW-BMtL-Dyp.js → zh-CN-LNUGB5OW-NT1Qh9a6.js} +1 -1
  364. package/dist/viewer-lib/{zh-HK-E62DVLB3-BBZ3Whz3.js → zh-HK-E62DVLB3-bPWjlTCX.js} +1 -1
  365. package/dist/viewer-lib/{zh-TW-RAJ6MFWO-Cllh4D3_.js → zh-TW-RAJ6MFWO-LtSSpdNw.js} +1 -1
  366. package/package.json +1 -1
  367. package/dist/viewer/ArtboardLayout-C2CpJxDs.js +0 -12
  368. package/dist/viewer/Canvas-wlbD-ygt.js +0 -1
  369. package/dist/viewer/DocumentLayout-B7lCSi2S.js +0 -2
  370. package/dist/viewer/DocumentPage-Cip5Kh1A.js +0 -4
  371. package/dist/viewer/SnapshotDocument-CXY8xp6s.js +0 -1
  372. package/dist/viewer/VirtualizedEditor-D9Ivycdp-D8Q5C-Rx.js +0 -1
  373. package/dist/viewer/channel-DLFAkkS-.js +0 -1
  374. package/dist/viewer/classDiagram-ZZMXUADV-CWXxtBhC.js +0 -1
  375. package/dist/viewer/classDiagram-v2-VYDZK3BY-CWXxtBhC.js +0 -1
  376. package/dist/viewer/dist-9vhpflHX.js +0 -6
  377. package/dist/viewer/dist-CtVIi3AD.js +0 -9
  378. package/dist/viewer/dist-DsUQGQBd.js +0 -23
  379. package/dist/viewer/flowDiagram-HODETNUW-i2G2hsfu.js +0 -1
  380. package/dist/viewer/percentages-BXMCSKIN-CbZU-7zq.js +0 -1
  381. package/dist/viewer/stateDiagram-v2-MP3YSRHH-VdWMOsnX.js +0 -1
  382. package/dist/viewer/subset-shared.chunk-VeVAd_o0.js +0 -1
  383. package/dist/viewer/swimlanesDiagram-VR7AAH4N-IJGF4hbD.js +0 -8
  384. package/dist/viewer/tokens.stylex-DEUtsSdt.js +0 -1
  385. package/dist/viewer/view-VUs8BLYV.js +0 -1
  386. package/dist/viewer-lib/flowDiagram-HODETNUW-CVBg7PzQ.js +0 -15
  387. package/dist/viewer-lib/percentages-BXMCSKIN-DxHiuSbH.js +0 -1
  388. package/dist/viewer-lib/subset-shared.chunk-MfbLFwss.js +0 -2
package/dist/cli.cjs CHANGED
@@ -5617,7 +5617,16 @@ function detectAgent(env) {
5617
5617
  }
5618
5618
 
5619
5619
  // src/cli/comment.ts
5620
- var COMMENT_ACTIONS = ["list", "add", "reply", "resolve", "choose", "submit"];
5620
+ var COMMENT_ACTIONS = [
5621
+ "list",
5622
+ "add",
5623
+ "reply",
5624
+ "resolve",
5625
+ "choose",
5626
+ "submit",
5627
+ "pass",
5628
+ "reject"
5629
+ ];
5621
5630
  var ARTIFACT = /^(?:document|artboard)\/[a-z0-9][a-z0-9-]*$/;
5622
5631
  var WRITTEN = {
5623
5632
  add: "comment-added",
@@ -5625,6 +5634,7 @@ var WRITTEN = {
5625
5634
  resolve: "comment-resolved"
5626
5635
  };
5627
5636
  var RECORDED = { choose: "choice-recorded", submit: "round-submitted" };
5637
+ var VERDICTS = /* @__PURE__ */ new Set(["pass", "reject"]);
5628
5638
  function readStdin() {
5629
5639
  if (process.stdin.isTTY) return "";
5630
5640
  try {
@@ -5646,8 +5656,22 @@ function coordinate(value, flag) {
5646
5656
  }
5647
5657
  function requestOf(options, action, type) {
5648
5658
  if (action === "list") return { op: "list", all: !!options.all };
5649
- if ((action === "choose" || action === "submit") && type !== "artboard")
5659
+ if ((action === "choose" || action === "submit" || VERDICTS.has(action)) && type !== "artboard")
5650
5660
  throw new CliError(`comment ${action} works on artboards only`);
5661
+ if (action === "pass" || action === "reject") {
5662
+ const all = action === "pass" && !!options.all;
5663
+ if (!all && !options.group)
5664
+ throw new CliError(
5665
+ action === "pass" ? "comment pass needs --group <groupId>, or --all" : "comment reject needs --group <groupId>"
5666
+ );
5667
+ const text2 = action === "reject" ? messageText(options) : options.text?.trim();
5668
+ return {
5669
+ op: "verdict",
5670
+ verdict: action,
5671
+ ...all ? { all: true } : { group: options.group },
5672
+ ...text2 ? { text: text2 } : {}
5673
+ };
5674
+ }
5651
5675
  if (action === "choose") {
5652
5676
  if (!options.group) throw new CliError("comment choose needs --group <groupId>");
5653
5677
  if (!options.clear && !options.board)
@@ -5685,7 +5709,9 @@ function requestOf(options, action, type) {
5685
5709
  async function comment(options, emit) {
5686
5710
  const action = COMMENT_ACTIONS.find((name) => name === options.action);
5687
5711
  if (!action)
5688
- throw new CliError("comment needs an action: list, add, reply, resolve, choose or submit");
5712
+ throw new CliError(
5713
+ "comment needs an action: list, add, reply, resolve, choose, submit, pass or reject"
5714
+ );
5689
5715
  if (!options.artifact || !ARTIFACT.test(options.artifact))
5690
5716
  throw new CliError("--artifact must be document/<id> or artboard/<id>");
5691
5717
  const [type, id] = options.artifact.split("/");
@@ -5711,6 +5737,14 @@ async function comment(options, emit) {
5711
5737
  ...json.rounds ? { rounds: json.rounds } : {},
5712
5738
  ...options.all ? { all: true } : {}
5713
5739
  });
5740
+ else if (action === "pass" || action === "reject")
5741
+ emit({
5742
+ type: "verdict-recorded",
5743
+ artifact: options.artifact,
5744
+ verdict: action,
5745
+ groups: json.groups,
5746
+ threadIds: json.threadIds
5747
+ });
5714
5748
  else if (action === "choose")
5715
5749
  emit({
5716
5750
  type: RECORDED.choose,
@@ -5749,7 +5783,7 @@ var VERDICT_TEXT = { pass: "passed", reject: "rejected", pending: "waiting for a
5749
5783
  var plural = (count, word) => `${count} ${word}${count === 1 ? "" : "s"}`;
5750
5784
  function groupText(group) {
5751
5785
  const parts = [
5752
- VERDICT_TEXT[group.verdict],
5786
+ `${VERDICT_TEXT[group.verdict]}${group.by === "agent" && group.verdict !== "pending" ? " by the agent" : ""}`,
5753
5787
  group.evidenceUpdated ? "evidence replaced since the last verdict" : "",
5754
5788
  group.rejectThreads ? `${plural(group.rejectThreads, "open reject thread")}` : ""
5755
5789
  ];
@@ -5816,6 +5850,11 @@ ${rounds.map(roundText).join("\n")}` : ""
5816
5850
  if (value.type === "comment-resolved") return `Resolved thread ${value.threadId}`;
5817
5851
  if (value.type === "choice-recorded")
5818
5852
  return value.board ? `Recorded ${value.board} for ${value.group}` : `Cleared the choice in ${value.group}`;
5853
+ if (value.type === "verdict-recorded") {
5854
+ const groups = value.groups;
5855
+ if (!groups.length) return `Every verify group on ${value.artifact} has already passed`;
5856
+ return `${value.verdict === "pass" ? "Passed" : "Rejected"} ${groups.join(", ")}`;
5857
+ }
5819
5858
  if (value.type === "round-submitted")
5820
5859
  return `${value.submitted ? "Submitted" : "Withdrew"} round ${value.round}`;
5821
5860
  return null;
@@ -5830,12 +5869,17 @@ var commentCommand = {
5830
5869
  "reply --artifact <document|artboard>/<id> --thread <threadId> [--text <text>]",
5831
5870
  "resolve --artifact <document|artboard>/<id> --thread <threadId>",
5832
5871
  "choose --artifact artboard/<id> --group <groupId> (--board <boardId> | --clear)",
5833
- "submit --artifact artboard/<id> --round <roundId> [--withdraw]"
5872
+ "submit --artifact artboard/<id> --round <roundId> [--withdraw]",
5873
+ "pass --artifact artboard/<id> (--group <groupId> | --all) [--text <text>]",
5874
+ "reject --artifact artboard/<id> --group <groupId> [--text <text>]"
5834
5875
  ],
5835
- details: "list prints what changed since you last listed. Without --text, add and reply read the message from stdin.",
5876
+ details: "list prints what changed since you last listed. Without --text, add, reply and reject read the message from stdin. pass and reject record a verdict on a verify group only when your human partner asks for it; the board shows the agent recorded it.",
5836
5877
  options: {
5837
5878
  artifact: { type: "string", value: "<type>/<id>", help: "The document or artboard" },
5838
- all: { type: "boolean", help: "list: every thread, not only what changed" },
5879
+ all: {
5880
+ type: "boolean",
5881
+ help: "list: every thread, not only what changed; pass: every verify group not yet passed"
5882
+ },
5839
5883
  block: { type: "string", value: "<blockId>", help: "add: the document block to comment on" },
5840
5884
  quote: {
5841
5885
  type: "string",
@@ -5846,8 +5890,16 @@ var commentCommand = {
5846
5890
  x: { type: "string", value: "<px>", help: "add: horizontal position on the board" },
5847
5891
  y: { type: "string", value: "<px>", help: "add: vertical position on the board" },
5848
5892
  thread: { type: "string", value: "<threadId>", help: "reply, resolve: the thread" },
5849
- text: { type: "string", value: "<text>", help: "add, reply: the message" },
5850
- group: { type: "string", value: "<groupId>", help: "choose: the choice group" },
5893
+ text: {
5894
+ type: "string",
5895
+ value: "<text>",
5896
+ help: "add, reply: the message; reject: the reason; pass: an optional note"
5897
+ },
5898
+ group: {
5899
+ type: "string",
5900
+ value: "<groupId>",
5901
+ help: "choose: the choice group; pass, reject: the verify group"
5902
+ },
5851
5903
  clear: { type: "boolean", help: "choose: clear the choice instead of naming a board" },
5852
5904
  round: { type: "string", value: "<roundId>", help: "submit: the round" },
5853
5905
  withdraw: { type: "boolean", help: "submit: withdraw the submission" }
@@ -18980,7 +19032,7 @@ async function start(options, emit) {
18980
19032
  import_node_fs13.default.mkdirSync(paths.state, { recursive: true });
18981
19033
  if (!import_node_fs13.default.existsSync(import_node_path12.default.join(paths.state, ".gitignore")))
18982
19034
  import_node_fs13.default.writeFileSync(import_node_path12.default.join(paths.state, ".gitignore"), "*\n");
18983
- const cliVersion = process.env.RYUGI_ARTIFACTS_VERSION || (true ? "1.52.0" : "");
19035
+ const cliVersion = process.env.RYUGI_ARTIFACTS_VERSION || (true ? "1.53.0" : "");
18984
19036
  const known = readProjects(machine.projects).some((entry) => entry.dir === paths.project);
18985
19037
  const finish = async (info, reused, hint) => {
18986
19038
  recordAgent(paths);
@@ -19081,6 +19133,10 @@ async function start(options, emit) {
19081
19133
  });
19082
19134
  return await exited;
19083
19135
  }
19136
+ try {
19137
+ import_node_fs13.default.renameSync(machine.log, `${machine.log}.1`);
19138
+ } catch {
19139
+ }
19084
19140
  const log = import_node_fs13.default.openSync(machine.log, "w");
19085
19141
  const child = (0, import_node_child_process3.spawn)(process.execPath, args, {
19086
19142
  env,
@@ -19436,7 +19492,7 @@ var updateCommand = {
19436
19492
  },
19437
19493
  run: ({ values }, emit) => update2(
19438
19494
  {
19439
- current: "1.52.0",
19495
+ current: "1.53.0",
19440
19496
  file: __filename,
19441
19497
  env: process.env,
19442
19498
  registry: process.env.npm_config_registry || "https://registry.npmjs.org/",
@@ -19516,7 +19572,7 @@ async function main(argv) {
19516
19572
  const [name, ...rest] = argv;
19517
19573
  const command = COMMANDS.find((candidate) => candidate.name === name);
19518
19574
  const json = argv.includes("--json") || !command?.explicitJson && !process.stdout.isTTY;
19519
- notifyUpdate("1.52.0", json, argv);
19575
+ notifyUpdate("1.53.0", json, argv);
19520
19576
  const emit = (value) => {
19521
19577
  const line = json ? JSON.stringify(value) : text(value);
19522
19578
  if (!json && typeof value.error === "string") console.error(line);
@@ -19535,7 +19591,7 @@ async function main(argv) {
19535
19591
  return await command.run(parse(rest, command.options, command.positionals), emit);
19536
19592
  }
19537
19593
  if (name === "--version" || name === "-v") {
19538
- console.info("1.52.0");
19594
+ console.info("1.53.0");
19539
19595
  return 0;
19540
19596
  }
19541
19597
  if (name === "--help" || name === "-h") {
package/dist/server.cjs CHANGED
@@ -8799,7 +8799,7 @@ var import_node_os2 = __toESM(require("node:os"), 1);
8799
8799
  var import_node_path33 = __toESM(require("node:path"), 1);
8800
8800
 
8801
8801
  // package.json
8802
- var version = "1.52.0";
8802
+ var version = "1.53.0";
8803
8803
 
8804
8804
  // src/server/browser-focus.ts
8805
8805
  var import_node_child_process = require("node:child_process");
@@ -10534,14 +10534,10 @@ var boardAnchors = {
10534
10534
  var emptyBoardComments = () => ({ version: 1, threads: [] });
10535
10535
  var savedBoardComments = (incoming) => savedComments(incoming, boardAnchors);
10536
10536
  var mergeBoardComments = (base, incoming, origin, now, newId, name) => mergeComments(base, incoming, origin, now, newId, name, boardAnchors);
10537
- function applyBoardHumanOp(file, op, now, newId, who) {
10538
- if (op.op !== "create") return applyThreadOp(file, op, now, newId, who);
10539
- const thread = openThread(op.anchor, "human", op.text, now, newId, who);
10540
- const closed = { status: "resolved", statusAt: now, statusBy: "human" };
10541
- if (isChoiceRecord(thread))
10542
- return { ...file, threads: [...file.threads, { ...thread, ...closed }] };
10543
- if (op.anchor.verdict !== "pass") return { ...file, threads: [...file.threads, thread] };
10544
- const rejected = (t7) => t7.anchor.group === op.anchor.group && t7.anchor.verdict === "reject" && t7.status === "open";
10537
+ function withVerdict(file, thread, now) {
10538
+ if (thread.anchor.verdict !== "pass") return { ...file, threads: [...file.threads, thread] };
10539
+ const closed = { status: "resolved", statusAt: now, statusBy: thread.statusBy };
10540
+ const rejected = (t7) => t7.anchor.group === thread.anchor.group && t7.anchor.verdict === "reject" && t7.status === "open";
10545
10541
  return {
10546
10542
  ...file,
10547
10543
  threads: [
@@ -10550,6 +10546,34 @@ function applyBoardHumanOp(file, op, now, newId, who) {
10550
10546
  ]
10551
10547
  };
10552
10548
  }
10549
+ function withdrawVerdict(file, op, now) {
10550
+ return {
10551
+ ...file,
10552
+ threads: file.threads.map(
10553
+ (t7) => t7.id === op.threadId ? {
10554
+ ...t7,
10555
+ messages: t7.messages.map(
10556
+ (m11) => m11.id === op.messageId && !m11.deleted ? { ...m11, text: "", deleted: true, editedAt: now } : m11
10557
+ )
10558
+ } : t7
10559
+ )
10560
+ };
10561
+ }
10562
+ function applyBoardHumanOp(file, op, now, newId, who) {
10563
+ if (op.op === "delete" && file.threads.find((t7) => t7.id === op.threadId)?.anchor.verdict)
10564
+ return withdrawVerdict(file, op, now);
10565
+ if (op.op !== "create") return applyThreadOp(file, op, now, newId, who);
10566
+ const thread = openThread(op.anchor, "human", op.text, now, newId, who);
10567
+ if (isChoiceRecord(thread))
10568
+ return {
10569
+ ...file,
10570
+ threads: [
10571
+ ...file.threads,
10572
+ { ...thread, status: "resolved", statusAt: now, statusBy: "human" }
10573
+ ]
10574
+ };
10575
+ return withVerdict(file, thread, now);
10576
+ }
10553
10577
  function applyBoardAgentOp(file, op, now, newId, name) {
10554
10578
  if (op.op === "resolve" && file.threads.find((t7) => t7.id === op.threadId)?.anchor.verdict === "reject") {
10555
10579
  throw new Error("a reject closes only when your human partner passes the group");
@@ -10558,7 +10582,7 @@ function applyBoardAgentOp(file, op, now, newId, name) {
10558
10582
  const opened = openThread(op.anchor, "agent", op.text, now, newId, { name });
10559
10583
  const thread = isChoiceRecord(opened) ? { ...opened, status: "resolved", statusAt: now, statusBy: "agent" } : opened;
10560
10584
  return {
10561
- file: { ...file, threads: [...file.threads, thread] },
10585
+ file: withVerdict(file, thread, now),
10562
10586
  threadId: thread.id,
10563
10587
  messageId: thread.messages[0].id
10564
10588
  };
@@ -10604,14 +10628,12 @@ function groupVerdict(threads, group, stale) {
10604
10628
  if (!latest2) return { state: "pending", evidenceUpdated: false, rejectThreads };
10605
10629
  const at7 = openedAt(latest2);
10606
10630
  if (stale.has(latest2.id)) return { state: "pending", at: at7, evidenceUpdated: true, rejectThreads };
10631
+ const by = latest2.messages[0]?.author === "agent" ? { by: "agent" } : {};
10607
10632
  if (latest2.anchor.verdict === "pass")
10608
- return { state: "pass", at: at7, evidenceUpdated: false, rejectThreads };
10609
- return {
10610
- state: latest2.status === "open" ? "reject" : "pending",
10611
- at: at7,
10612
- evidenceUpdated: false,
10613
- rejectThreads
10614
- };
10633
+ return { state: "pass", at: at7, ...by, evidenceUpdated: false, rejectThreads };
10634
+ if (latest2.status !== "open")
10635
+ return { state: "pending", at: at7, evidenceUpdated: false, rejectThreads };
10636
+ return { state: "reject", at: at7, ...by, evidenceUpdated: false, rejectThreads };
10615
10637
  }
10616
10638
 
10617
10639
  // src/server/board-choices.ts
@@ -11045,7 +11067,10 @@ function boardSpecs(dir) {
11045
11067
  {
11046
11068
  file,
11047
11069
  page: typeof board.page === "string" ? board.page : "",
11048
- w: typeof board.w === "number" ? board.w : 0
11070
+ x: typeof board.x === "number" ? board.x : 0,
11071
+ y: typeof board.y === "number" ? board.y : 0,
11072
+ w: typeof board.w === "number" ? board.w : 0,
11073
+ h: typeof board.h === "number" ? board.h : 0
11049
11074
  }
11050
11075
  ]
11051
11076
  ] : [];
@@ -11252,6 +11277,36 @@ function createBoardCommentRegistry(options) {
11252
11277
  writeRounds(id2);
11253
11278
  return { threadId };
11254
11279
  },
11280
+ agentVerdict: (id2, request, agent) => {
11281
+ const groups = groupSpecs(dirOf(id2));
11282
+ const specs = boardSpecs(dirOf(id2));
11283
+ const threads = store(id2).current().threads;
11284
+ const staleIds = new Set(stale(id2));
11285
+ const targets = request.group === null ? Object.keys(groups).filter(
11286
+ (group) => groups[group].verify && groupVerdict(threads, group, staleIds).state !== "pass"
11287
+ ) : [request.group];
11288
+ const anchors = targets.map((group) => {
11289
+ if (!groups[group]?.verify) throw new Error(`no verify group ${group} in artboard/${id2}`);
11290
+ const members = groups[group].boards.flatMap((board) => specs[board] ?? []);
11291
+ if (!members.length) throw new Error(`verify group ${group} has no boards`);
11292
+ return {
11293
+ page: members[0].page,
11294
+ x: Math.max(...members.map((b6) => b6.x + b6.w)),
11295
+ y: Math.min(...members.map((b6) => b6.y)),
11296
+ group,
11297
+ verdict: request.verdict
11298
+ };
11299
+ });
11300
+ const hashes2 = fresh(id2);
11301
+ const threadIds = anchors.map(
11302
+ (anchor) => store(id2).applyAgent(
11303
+ { op: "add", anchor: stamp(anchor, hashes2, groups), text: request.text },
11304
+ agent
11305
+ ).threadId
11306
+ );
11307
+ if (threadIds.length) push2(id2);
11308
+ return { groups: targets, threadIds };
11309
+ },
11255
11310
  rounds: (id2) => roundViews(choiceContext(dirOf(id2)), store(id2).current().threads).map(
11256
11311
  ({ boards: _boards, ...round }) => round
11257
11312
  ),
@@ -24532,9 +24587,19 @@ function installInspector(win, properties, commentCursor = "crosshair", pointerC
24532
24587
  (target) => target instanceof win.Element && target.matches("input,textarea,select,[contenteditable]")
24533
24588
  ))
24534
24589
  return;
24535
- if (!["Space", "KeyH", "KeyV", "KeyC", "Escape", "Equal", "Minus", "Digit0", "Digit1"].includes(
24536
- event.code
24537
- ))
24590
+ if (![
24591
+ "Space",
24592
+ "KeyH",
24593
+ "KeyV",
24594
+ "KeyC",
24595
+ "KeyJ",
24596
+ "KeyK",
24597
+ "Escape",
24598
+ "Equal",
24599
+ "Minus",
24600
+ "Digit0",
24601
+ "Digit1"
24602
+ ].includes(event.code))
24538
24603
  return;
24539
24604
  event.preventDefault();
24540
24605
  event.stopImmediatePropagation();
@@ -26180,6 +26245,9 @@ function commentNames({ agentFile, projectDir, cloud }) {
26180
26245
  function createDirectRelay(options) {
26181
26246
  const sockets = /* @__PURE__ */ new Map();
26182
26247
  let opened = 0;
26248
+ const logLine = (event, detail) => console.info(
26249
+ JSON.stringify({ type: "direct-relay", event, at: (/* @__PURE__ */ new Date()).toISOString(), ...detail })
26250
+ );
26183
26251
  const write = (socket, message) => socket.write(textFrame(JSON.stringify(message)));
26184
26252
  const onText = async (socket, key2, conn, text3) => {
26185
26253
  let message;
@@ -26210,17 +26278,27 @@ function createDirectRelay(options) {
26210
26278
  completeHandshake(socket, clientKey);
26211
26279
  const conn = `direct:${++opened}`;
26212
26280
  sockets.set(socket, { key: key2, conn });
26281
+ const openedAt2 = Date.now();
26282
+ logLine("open", { conn, key: key2, viewers: sockets.size });
26213
26283
  write(socket, { t: "presence", online: true, version: options.version });
26214
26284
  handleClientFrames(socket, (text3) => void onText(socket, key2, conn, text3));
26215
- const forget = () => {
26216
- if (sockets.delete(socket)) options.onClose(conn);
26285
+ const forget = (how, error) => {
26286
+ if (!sockets.delete(socket)) return;
26287
+ logLine("close", {
26288
+ conn,
26289
+ key: key2,
26290
+ how,
26291
+ aliveMs: Date.now() - openedAt2,
26292
+ ...error ? { error: error.message } : {}
26293
+ });
26294
+ options.onClose(conn);
26217
26295
  };
26218
26296
  socket.on("end", () => {
26219
- forget();
26297
+ forget("end");
26220
26298
  socket.end();
26221
26299
  });
26222
- socket.on("close", forget);
26223
- socket.on("error", forget);
26300
+ socket.on("close", () => forget("close"));
26301
+ socket.on("error", (error) => forget("error", error));
26224
26302
  options.onActivity();
26225
26303
  },
26226
26304
  emit(key2, body) {
@@ -101078,6 +101156,20 @@ async function serveAgentComments(req, res, ctx, id2) {
101078
101156
  sendJson(res, 400, { error: err.message });
101079
101157
  }
101080
101158
  }
101159
+ function agentVerdictOf(fields) {
101160
+ const verdict = fields.verdict;
101161
+ if (verdict !== "pass" && verdict !== "reject")
101162
+ throw new Error('verdict needs {verdict: "pass" | "reject"}');
101163
+ if (fields.all !== true && !isId(fields.group))
101164
+ throw new Error("verdict needs {group} or {all: true}");
101165
+ const text3 = typeof fields.text === "string" ? fields.text.trim() : "";
101166
+ if (verdict === "reject" && !text3) throw new Error("a reject needs a reason: pass {text}");
101167
+ return {
101168
+ group: fields.all === true ? null : fields.group,
101169
+ verdict,
101170
+ text: text3 || "Pass"
101171
+ };
101172
+ }
101081
101173
  async function serveAgentBoardComments(req, res, ctx, id2) {
101082
101174
  const { root, boardComments } = ctx;
101083
101175
  const dir = resolveArtifactDir(root, "artboard", id2);
@@ -101115,6 +101207,14 @@ async function serveAgentBoardComments(req, res, ctx, id2) {
101115
101207
  }
101116
101208
  return;
101117
101209
  }
101210
+ if (fields.op === "verdict") {
101211
+ try {
101212
+ sendJson(res, 200, boardComments.agentVerdict(id2, agentVerdictOf(fields), agent));
101213
+ } catch (err) {
101214
+ sendJson(res, 400, { error: err.message });
101215
+ }
101216
+ return;
101217
+ }
101118
101218
  const shorthand = agentAddOnBoard(body, boardSpecs(dir));
101119
101219
  if (shorthand && "error" in shorthand) {
101120
101220
  sendJson(res, 400, { error: `${shorthand.error} in artboard/${id2}` });
@@ -102932,7 +103032,7 @@ async function main() {
102932
103032
  async function shutdown(reason, intended = true) {
102933
103033
  if (stopping) return;
102934
103034
  stopping = true;
102935
- console.info(JSON.stringify({ type: "server-stopped", reason }));
103035
+ console.info(JSON.stringify({ type: "server-stopped", reason, at: (/* @__PURE__ */ new Date()).toISOString() }));
102936
103036
  import_node_fs38.default.rmSync(paths.info, { force: true });
102937
103037
  if (intended) writeJsonAtomic(paths.stopped, { reason, timestamp: Date.now() });
102938
103038
  await hub.close();
@@ -102996,7 +103096,7 @@ async function main() {
102996
103096
  cloudOrigin: config.cloudOrigin
102997
103097
  };
102998
103098
  writeJsonAtomic(paths.info, started);
102999
- console.info(JSON.stringify(started));
103099
+ console.info(JSON.stringify({ ...started, at: (/* @__PURE__ */ new Date()).toISOString() }));
103000
103100
  }
103001
103101
  main().catch((err) => {
103002
103102
  console.info(JSON.stringify({ type: "server-error", error: err.message }));