dorkos 0.123.0 → 0.124.1

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 (324) hide show
  1. package/dist/bin/cli.js +1688 -837
  2. package/dist/browser/native/package-manifest.json +1 -1
  3. package/dist/browser/source-manifest.json +1 -1
  4. package/dist/client/assets/{AboutPage-BmtoPqP9.js → AboutPage-DHaZvsJE.js} +1 -1
  5. package/dist/client/assets/{ActivityErrorState-CEzdFJiR.js → ActivityErrorState-BP-qFk2S.js} +1 -1
  6. package/dist/client/assets/{ActivityPage-mFYgTr3e.js → ActivityPage-Bme3TzdQ.js} +1 -1
  7. package/dist/client/assets/{ActivityRow-Bkc0kkim.js → ActivityRow-BRZyW9MA.js} +1 -1
  8. package/dist/client/assets/{AdapterIcon-DVgTrgnM.js → AdapterIcon-BcfquTja.js} +1 -1
  9. package/dist/client/assets/{AdapterSetupWizard-I03EluU5.js → AdapterSetupWizard-B4I23pBg.js} +2 -2
  10. package/dist/client/assets/{AgentOptionRow-DI1TzLaR.js → AgentOptionRow-Cb34LtmH.js} +1 -1
  11. package/dist/client/assets/{AgentPicker-CBYeBzjf.js → AgentPicker-ouNRFSDh.js} +1 -1
  12. package/dist/client/assets/{AgentRequestCard-DQ6GYoeE.js → AgentRequestCard-B6MHIsxa.js} +3 -3
  13. package/dist/client/assets/{AppearancePage-62xIPNPn.js → AppearancePage-CutehigK.js} +1 -1
  14. package/dist/client/assets/ApplyToOverridesDialog-B-wIUI27.js +1 -0
  15. package/dist/client/assets/{AttentionSignalRow-Coe5pYX6.js → AttentionSignalRow-B1aMjgX_.js} +1 -1
  16. package/dist/client/assets/{BaseTanStackRouterDevtoolsPanel-B-iktbLX-D07cg75s.js → BaseTanStackRouterDevtoolsPanel-B-iktbLX-CdWF4WLz.js} +1 -1
  17. package/dist/client/assets/{BindingDialog-DVyxVXZM.js → BindingDialog-BAdueON5.js} +1 -1
  18. package/dist/client/assets/{BlintzCanvas-BmfkiUQJ.js → BlintzCanvas-b30dG4gx.js} +3 -3
  19. package/dist/client/assets/{CanvasCsvContent-CRTr-AI7.js → CanvasCsvContent-DGHgSikG.js} +1 -1
  20. package/dist/client/assets/{CanvasFileContent-rOmY1s3T.js → CanvasFileContent-D1bFaUeh.js} +2 -2
  21. package/dist/client/assets/{CanvasModel3dContent-D7oRT6ey.js → CanvasModel3dContent-dST7g1v2.js} +2 -2
  22. package/dist/client/assets/{ChatAppsOff-BmuOTq83.js → ChatAppsOff-DiObvmJS.js} +1 -1
  23. package/dist/client/assets/{CodeMirrorDiff-DidSWwYJ.js → CodeMirrorDiff-BncI1OY1.js} +1 -1
  24. package/dist/client/assets/{CodeMirrorEditor-BUAWGbRo.js → CodeMirrorEditor-DV6psv19.js} +1 -1
  25. package/dist/client/assets/{CommitmentList-uK4CKaz0.js → CommitmentList-Dx_Ek_Gl.js} +1 -1
  26. package/dist/client/assets/{CommitmentsPage-BWITH1r2.js → CommitmentsPage-Bca8NMUa.js} +1 -1
  27. package/dist/client/assets/{ComputerResourceView-adgF_EZU.js → ComputerResourceView-DNVNFTdn.js} +1 -1
  28. package/dist/client/assets/{ComputerViewer-D87LhxwL.js → ComputerViewer-D8SxJdMm.js} +1 -1
  29. package/dist/client/assets/{ConnectionAccessLists-BFEFqcSZ.js → ConnectionAccessLists-Bhj1YT15.js} +1 -1
  30. package/dist/client/assets/{ConnectionsPage-Cd_cLoSY.js → ConnectionsPage-B20JZxoK.js} +2 -2
  31. package/dist/client/assets/{ConventionPage-BSztD-gU.js → ConventionPage-De645wxU.js} +1 -1
  32. package/dist/client/assets/{ExtensionPageRoute-BSge6XRv.js → ExtensionPageRoute-nTeiOBRQ.js} +2 -2
  33. package/dist/client/assets/{FloatingTanStackRouterDevtools-CqogiFob-TO2CUPG0.js → FloatingTanStackRouterDevtools-CqogiFob-DM79UITv.js} +1 -1
  34. package/dist/client/assets/HandlePage-B08V-om7.js +1 -0
  35. package/dist/client/assets/{HeartbeatPage-DIJzdOhj.js → HeartbeatPage-CBoUxz6t.js} +1 -1
  36. package/dist/client/assets/{KeyEntry-DJnzW3Mu.js → KeyEntry-Cug8ocpX.js} +1 -1
  37. package/dist/client/assets/{LexicalField-BxzNvIjJ.js → LexicalField-Bv_ogmAq.js} +1 -1
  38. package/dist/client/assets/{ManagesPage-BQj8KbYA.js → ManagesPage-DfJBQKK3.js} +1 -1
  39. package/dist/client/assets/{Marketplace-CIG5_a_H.js → Marketplace-swCVUbdY.js} +2 -2
  40. package/dist/client/assets/{MarketplaceSourcesView-16HKvFK-.js → MarketplaceSourcesView-CDZDChpV.js} +1 -1
  41. package/dist/client/assets/{McpAppFrame-5xlga1jD.js → McpAppFrame-BM9cNPPd.js} +1 -1
  42. package/dist/client/assets/McpSigninBody-DKyUKrEE.js +1 -0
  43. package/dist/client/assets/{Model3dViewer-CQ0sA_kr.js → Model3dViewer-rXSL5y2P.js} +1 -1
  44. package/dist/client/assets/NamePage-JwMDK1JD.js +1 -0
  45. package/dist/client/assets/{NewDirectMessageMenu-D092y0K9.js → NewDirectMessageMenu-GCEMS5oV.js} +1 -1
  46. package/dist/client/assets/{NotificationsPage-CskOPdhh.js → NotificationsPage-DSWsOVLa.js} +1 -1
  47. package/dist/client/assets/{OpenMeshSwitch-BHRm328L.js → OpenMeshSwitch-BTuctDj4.js} +2 -2
  48. package/dist/client/assets/OperatorIdentityForm-ODDMd2YN.js +1 -0
  49. package/dist/client/assets/PermissionHistory-41a58Se7.js +1 -0
  50. package/dist/client/assets/{PermissionsPage-XuPOSYll.js → PermissionsPage-DefmymZ6.js} +1 -1
  51. package/dist/client/assets/{PersonalityPopover-BrZjxakx.js → PersonalityPopover-7zPVBI1I.js} +1 -1
  52. package/dist/client/assets/PhotoPage-DlOVhkW9.js +1 -0
  53. package/dist/client/assets/{PreviewRefusedNotice-BANdpT9O.js → PreviewRefusedNotice-CwGlBJ7U.js} +1 -1
  54. package/dist/client/assets/{ProfileFields-Dp68ebW9.js → ProfileFields-DVMkpJSb.js} +1 -1
  55. package/dist/client/assets/{ProfilePanelContainer-BKwGdI90.js → ProfilePanelContainer-RrhoPD3T.js} +1 -1
  56. package/dist/client/assets/{ProfileRolePicker-ClOdfLda.js → ProfileRolePicker-CXRVBCAu.js} +1 -1
  57. package/dist/client/assets/{PromptSuggestionChips-zcW4UJ_O.js → PromptSuggestionChips-bBroJdTi.js} +1 -1
  58. package/dist/client/assets/{ReportsToPopover-BwDVGqFg.js → ReportsToPopover-CfPatsWM.js} +1 -1
  59. package/dist/client/assets/{RoomSurface-CSKIvyHH.js → RoomSurface-CdgCdV6h.js} +10 -10
  60. package/dist/client/assets/{RoomsPage-CAvrRbPk.js → RoomsPage-C3dDp1Mb.js} +1 -1
  61. package/dist/client/assets/{RunsOnPopover-CQ4t9EZ-.js → RunsOnPopover-BcKjfQi-.js} +1 -1
  62. package/dist/client/assets/{RuntimeConnectFlow--fVpIf0B.js → RuntimeConnectFlow-DCIRnvOH.js} +1 -1
  63. package/dist/client/assets/{RuntimeSetupDialog-COpyPrqL.js → RuntimeSetupDialog-Bg-0b-LC.js} +1 -1
  64. package/dist/client/assets/SeenDevices-nMsGUQTv.js +19 -0
  65. package/dist/client/assets/{SessionsPage-FDyYzuXs.js → SessionsPage-Cqfx4FGW.js} +1 -1
  66. package/dist/client/assets/SettingsDialog-C8r2igJ_.js +12 -0
  67. package/dist/client/assets/{SkillsPage-PLXEY0LB.js → SkillsPage-BleHQavF.js} +1 -1
  68. package/dist/client/assets/TaskDialogWrapper-BhTEvf-u.js +1 -0
  69. package/dist/client/assets/{TasksEmptyState-8RZxhRh6.js → TasksEmptyState-Bprx1k8M.js} +2 -2
  70. package/dist/client/assets/{TasksPage-C-EtQXKb.js → TasksPage-Dub39yEJ.js} +1 -1
  71. package/dist/client/assets/{TeamComputerEntry-qx_19Htj.js → TeamComputerEntry-CJ-NG0u5.js} +1 -1
  72. package/dist/client/assets/ToolsPage-IsD6M-ZW.js +2 -0
  73. package/dist/client/assets/{TopologyGraph-1wtG1BE9.js → TopologyGraph-CwyasvFI.js} +2 -2
  74. package/dist/client/assets/{TourHost-C664E8OY.js → TourHost-BYfztuPb.js} +1 -1
  75. package/dist/client/assets/{UnlinkDialog-Di1oBFA_.js → UnlinkDialog-BKhgxVdF.js} +1 -1
  76. package/dist/client/assets/{WidgetErrorCard-BfgGzyqg.js → WidgetErrorCard-1NyzIJBj.js} +7 -7
  77. package/dist/client/assets/_shell-Ct2Bz7D0.js +80 -0
  78. package/dist/client/assets/{_shell._home-Hz78BY6-.js → _shell._home-xWj7wO5z.js} +1 -1
  79. package/dist/client/assets/{_shell._home.activity-BxvI0gkw.js → _shell._home.activity-BqcLoaB1.js} +1 -1
  80. package/dist/client/assets/{_shell._home.index-Cqq81f3P.js → _shell._home.index-D4sQsKKk.js} +1 -1
  81. package/dist/client/assets/{_shell._home.tasks-Cth56CwC.js → _shell._home.tasks--UhQB6h3.js} +1 -1
  82. package/dist/client/assets/{_shell._home.workspaces-DkoOJSWz.js → _shell._home.workspaces-BPFD8Of2.js} +1 -1
  83. package/dist/client/assets/_shell.channels-CnFdvRzc.js +10 -0
  84. package/dist/client/assets/_shell.connections-Ik01wS5M.js +1 -0
  85. package/dist/client/assets/{_shell.feedback-requests-BTxHdsfb.js → _shell.feedback-requests-Czu42kzo.js} +2 -2
  86. package/dist/client/assets/_shell.marketplace-Cezv-i16.js +1 -0
  87. package/dist/client/assets/_shell.marketplace_.sources-BTENmr4W.js +1 -0
  88. package/dist/client/assets/_shell.session-BjevHF_O.js +63 -0
  89. package/dist/client/assets/{_shell.team-ZxGwa39m.js → _shell.team-UfaJqohh.js} +4 -4
  90. package/dist/client/assets/_shell.x._extensionId-0OO_Xr72.js +1 -0
  91. package/dist/client/assets/_shell.x._extensionId_._-0OO_Xr72.js +1 -0
  92. package/dist/client/assets/{abnfDiagram-WEYOIA3C-CzqPVMdw.js → abnfDiagram-WEYOIA3C-oxkfGyl6.js} +1 -1
  93. package/dist/client/assets/{access-copy-Dj09Xk4b.js → access-copy-Dggxx2cX.js} +1 -1
  94. package/dist/client/assets/{arc-Bgy7ExYl.js → arc-CqQdP0Qe.js} +1 -1
  95. package/dist/client/assets/{architectureDiagram-ZHVYKT53-DYfb2p9r.js → architectureDiagram-ZHVYKT53-89xM7zJD.js} +1 -1
  96. package/dist/client/assets/{banner-dlsHTWSf.js → banner-DqJ2pM0Y.js} +1 -1
  97. package/dist/client/assets/{blockDiagram-RJAE7QA3-BkOzLL8s.js → blockDiagram-RJAE7QA3-CcxwDmZC.js} +1 -1
  98. package/dist/client/assets/{c4Diagram-XDPPPE54-CsZm4qpD.js → c4Diagram-XDPPPE54-DCIhIyXa.js} +1 -1
  99. package/dist/client/assets/{card-Dj6ZfRgu.js → card-DT-vFAns.js} +1 -1
  100. package/dist/client/assets/channel-Ngk70nQZ.js +1 -0
  101. package/dist/client/assets/{chunk-2E7WHVMD-GA96Jfps.js → chunk-2E7WHVMD-BfWEXcCj.js} +1 -1
  102. package/dist/client/assets/{chunk-2Q5K7J3B-CW2i0IkT.js → chunk-2Q5K7J3B-KLXLZXlR.js} +1 -1
  103. package/dist/client/assets/{chunk-4EMNKR2T-BwFvnPZg.js → chunk-4EMNKR2T-CL5Gttmj.js} +1 -1
  104. package/dist/client/assets/{chunk-55XCU76K-MOezzAAB.js → chunk-55XCU76K-cfAl84Mv.js} +1 -1
  105. package/dist/client/assets/{chunk-5VM5RSS4-woru6zOC.js → chunk-5VM5RSS4-BqUyGgoH.js} +1 -1
  106. package/dist/client/assets/{chunk-JWPE2WC7-CUrKlP2M.js → chunk-JWPE2WC7-BWr2ST9i.js} +1 -1
  107. package/dist/client/assets/{chunk-VQ5W62QI-CqZ2cdEu.js → chunk-VQ5W62QI-V5zYx50O.js} +1 -1
  108. package/dist/client/assets/{chunk-XXDRQBXY-ByAcvWaE.js → chunk-XXDRQBXY-gnvheN_J.js} +1 -1
  109. package/dist/client/assets/{chunk-ZCHMQSOR-3nkba9kj.js → chunk-ZCHMQSOR-ClGxxZvV.js} +2 -2
  110. package/dist/client/assets/{classDiagram-v2-4MYWR3UA-B-zZKAmI.js → classDiagram-v2-4MYWR3UA-DvmHzDb5.js} +1 -1
  111. package/dist/client/assets/{command-BAOEURY7.js → command-CNx4L11m.js} +1 -1
  112. package/dist/client/assets/{cose-bilkent-JH36ORCC-sCKxRv1H.js → cose-bilkent-JH36ORCC-Df8nXBRj.js} +1 -1
  113. package/dist/client/assets/{cpu-TtYQqONc.js → cpu-D8KJEkdh.js} +1 -1
  114. package/dist/client/assets/{cynefin-EF2NZ3EQ-CXzvL5Cg.js → cynefin-EF2NZ3EQ-CAn6ufHs.js} +1 -1
  115. package/dist/client/assets/{cynefinDiagram-WF24UDRP-C0wjhu9X.js → cynefinDiagram-WF24UDRP-Cep_NrRw.js} +1 -1
  116. package/dist/client/assets/{dagre-NK4GIZVX-Doi2IPkY.js → dagre-NK4GIZVX-sWD3z9wf.js} +1 -1
  117. package/dist/client/assets/{diagram-CBK3MWTC-11TVuPel.js → diagram-CBK3MWTC-CUpaBATr.js} +1 -1
  118. package/dist/client/assets/{diagram-I5XIIV2D-CJq7fHFM.js → diagram-I5XIIV2D-BejWB2ry.js} +1 -1
  119. package/dist/client/assets/{diagram-ODIL2UCW-2Ae6unuU.js → diagram-ODIL2UCW-BGKJfNk9.js} +1 -1
  120. package/dist/client/assets/{diagram-PFBEJUXE-BXza6_iz.js → diagram-PFBEJUXE-V0dP8H8k.js} +1 -1
  121. package/dist/client/assets/{diagram-RJA3I4VV-Z0i3uBW9.js → diagram-RJA3I4VV-Bf5dVsFX.js} +1 -1
  122. package/dist/client/assets/{diagram-TYUNFSNR-Dq_-g1oP.js → diagram-TYUNFSNR-CLrMSqb4.js} +1 -1
  123. package/dist/client/assets/{ebnfDiagram-V4P3TTPT-vxzIvg-W.js → ebnfDiagram-V4P3TTPT-BGG4CWA0.js} +1 -1
  124. package/dist/client/assets/{elk-QONTBCTQ-BBIXXtg_.js → elk-QONTBCTQ-bf9D6f0w.js} +1 -1
  125. package/dist/client/assets/{empty-state-kISAAp0z.js → empty-state-CDoXnrKn.js} +1 -1
  126. package/dist/client/assets/{erDiagram-KYQIGQAA-Bk2MeLBx.js → erDiagram-KYQIGQAA-fEUv-33P.js} +1 -1
  127. package/dist/client/assets/{execution-config-DYFe-VNC.js → execution-config-Ca9MDOtV.js} +1 -1
  128. package/dist/client/assets/{file-DEt4KgZG.js → file-CiyVL55_.js} +1 -1
  129. package/dist/client/assets/{file-exclamation-point-QqXJhXD9.js → file-exclamation-point-DaFRIKco.js} +1 -1
  130. package/dist/client/assets/{file-text-CRw31ZWd.js → file-text-DsnD-A8g.js} +1 -1
  131. package/dist/client/assets/{find-latest-widget-fence-B3aaiBNI.js → find-latest-widget-fence-CNsnCgbB.js} +1 -1
  132. package/dist/client/assets/{flowDiagram-IUGLLWBU-B53m4r8u.js → flowDiagram-IUGLLWBU-CRbeSDod.js} +1 -1
  133. package/dist/client/assets/{form-Bjhk9zOn.js → form-Cru78aT-.js} +1 -1
  134. package/dist/client/assets/{format-cron-9tmNIcgl.js → format-cron-9K38-tn1.js} +1 -1
  135. package/dist/client/assets/{ganttDiagram-R7GPNTJY-CS6TN3R1.js → ganttDiagram-R7GPNTJY-Mkk7zgs_.js} +1 -1
  136. package/dist/client/assets/{git-branch-DWerghmw.js → git-branch-CONwEYiR.js} +1 -1
  137. package/dist/client/assets/{gitGraphDiagram-PDYL7XHY-D096ZtqE.js → gitGraphDiagram-PDYL7XHY-Drre0vyA.js} +1 -1
  138. package/dist/client/assets/{graph-DQpTuPmX.js → graph-BJlnKWgo.js} +1 -1
  139. package/dist/client/assets/{heart-CRkjVW7-.js → heart-CqwUlIUG.js} +1 -1
  140. package/dist/client/assets/{highlighted-body-KPVGNVTW-DoVCXOMU.js → highlighted-body-KPVGNVTW-e4LXC_pS.js} +1 -1
  141. package/dist/client/assets/image-lightbox-DHDtzoja.js +1 -0
  142. package/dist/client/assets/{image-off-VyMBVwgK.js → image-off-DZuLkaRJ.js} +2 -2
  143. package/dist/client/assets/{index-DN2sTT2U.js → index-1yEXEZiH.js} +1 -1
  144. package/dist/client/assets/{index-BBcAekWE.js → index-A41zxoWk.js} +1 -1
  145. package/dist/client/assets/{index-CEVwhauU.js → index-B25gvCK_.js} +1 -1
  146. package/dist/client/assets/index-B9bZYNKR.js +1 -0
  147. package/dist/client/assets/{index-TnoaFCrj.js → index-BBmkfbXd.js} +1 -1
  148. package/dist/client/assets/{index-CvhR1oZB.js → index-BDD2EyoW.js} +1 -1
  149. package/dist/client/assets/{index-BcFMs7lK.js → index-BFNy-Yp3.js} +1 -1
  150. package/dist/client/assets/{index-CyGRWyhV.js → index-BIB-maE5.js} +1 -1
  151. package/dist/client/assets/{index-DBo2XfNv.js → index-BKp2B9JS.js} +1 -1
  152. package/dist/client/assets/index-BLP5O7X9.js +1 -0
  153. package/dist/client/assets/{index-2EaVZrJe.js → index-BTjZIgFn.js} +1 -1
  154. package/dist/client/assets/{index-DKWpwwxo.js → index-BV2Ezdxv.js} +1 -1
  155. package/dist/client/assets/{index-igLqtuoO.js → index-B_0LYi32.js} +1 -1
  156. package/dist/client/assets/{index-BpjEclkM.js → index-Bd7vUYhr.js} +1 -1
  157. package/dist/client/assets/{index-_emDKzsu.js → index-Bo7x9IkO.js} +1 -1
  158. package/dist/client/assets/{index-C3sW6rkN.js → index-BtDxwJsM.js} +22 -20
  159. package/dist/client/assets/{index-C6Fo2htT.js → index-By58MgcZ.js} +1 -1
  160. package/dist/client/assets/index-C3cvP8Fo.js +1033 -0
  161. package/dist/client/assets/{index-Cs3WB8yn.js → index-CVuEUzi5.js} +1 -1
  162. package/dist/client/assets/{index-n3-zWcH-.js → index-CoWJD3Jg.js} +2 -2
  163. package/dist/client/assets/{index-Ctqe81qr.js → index-CyVH876g.js} +1 -1
  164. package/dist/client/assets/index-D67Kfy-M.js +1 -0
  165. package/dist/client/assets/{index-C6udJCgz.js → index-DAlpmAIA.js} +1 -1
  166. package/dist/client/assets/{index-setKr4xl.js → index-DDNwNOHF.js} +1 -1
  167. package/dist/client/assets/{index-COMRALJO.js → index-DL8ISRMH.js} +1 -1
  168. package/dist/client/assets/{index-Czm6C7FZ.js → index-DabU6r9W.js} +3 -3
  169. package/dist/client/assets/{index-CDuYKaGY.js → index-DdJBZE0H.js} +1 -1
  170. package/dist/client/assets/{index-CiVeycsn.js → index-DijWcSDZ.js} +5 -5
  171. package/dist/client/assets/index-DyRGZyur.css +1 -0
  172. package/dist/client/assets/{index-DmFNztTX.js → index-DzwZJuO1.js} +1 -1
  173. package/dist/client/assets/{index-Csr_C1sk.js → index-HR8BYVRQ.js} +1 -1
  174. package/dist/client/assets/{index-BLkXoquZ.js → index-LEcodwyW.js} +1 -1
  175. package/dist/client/assets/index-UPF8suf2.js +1 -0
  176. package/dist/client/assets/{index-rCvQat0D.js → index-Vz7VUm9l.js} +1 -1
  177. package/dist/client/assets/index-YW-v746p.js +1 -0
  178. package/dist/client/assets/{index-DgyhdQnI.js → index-cI2u8WZS.js} +1 -1
  179. package/dist/client/assets/{index-DNzk9m1D.js → index-iTQUa_b2.js} +3 -3
  180. package/dist/client/assets/{index-b9p_y2Ql.js → index-mZqojApH.js} +1 -1
  181. package/dist/client/assets/{index-gIQ7FrL9.js → index-pVFjKNjX.js} +1 -1
  182. package/dist/client/assets/{index-t3eRSGcT.js → index-skAhJyIF.js} +1 -1
  183. package/dist/client/assets/{index-BiFJIg4n.js → index-vJy88bwb.js} +1 -1
  184. package/dist/client/assets/index-wY5OcS4a.js +43 -0
  185. package/dist/client/assets/{index-B2rBVMNl.js → index-x1yAu9zJ.js} +1 -1
  186. package/dist/client/assets/index-xAgihCJ7.js +1 -0
  187. package/dist/client/assets/{index.esm-bLeQzVWT.js → index.esm-BUPoRUaG.js} +1 -1
  188. package/dist/client/assets/{infoDiagram-MVDRKAX5-nN_N76Fn.js → infoDiagram-MVDRKAX5-B_Wyzufh.js} +1 -1
  189. package/dist/client/assets/{inline-code-D9bLKHjY.js → inline-code-BIzGDx6z.js} +1 -1
  190. package/dist/client/assets/{ishikawaDiagram-HPEHV2GE-CiLFbWXd.js → ishikawaDiagram-HPEHV2GE-BDk2-6Pd.js} +1 -1
  191. package/dist/client/assets/{journeyDiagram-BOSHW7O7-Dn3yOv96.js → journeyDiagram-BOSHW7O7-7qf9KWEQ.js} +1 -1
  192. package/dist/client/assets/{kanban-definition-FNSA4HC5-JxiBdBQC.js → kanban-definition-FNSA4HC5-CFYDQmXn.js} +1 -1
  193. package/dist/client/assets/{layers-DTnLoRvE.js → layers-C9tVVcXg.js} +1 -1
  194. package/dist/client/assets/{lightbulb-CRKLr5q3.js → lightbulb-f4jtsAh0.js} +1 -1
  195. package/dist/client/assets/{link-2-hgHg-lyw.js → link-2-ZNlK1BG1.js} +1 -1
  196. package/dist/client/assets/{list-runtime-types-Bb33QiMC.js → list-runtime-types-CqO-QFYD.js} +1 -1
  197. package/dist/client/assets/{markdown-content-D0FpU2cz.js → markdown-content-DaEVxezf.js} +1 -1
  198. package/dist/client/assets/{mention-pill-uuaUvwSW.js → mention-pill-BiCPflY-.js} +1 -1
  199. package/dist/client/assets/{mermaid.core-x3Hh6iut.js → mermaid.core-SX8SzrsU.js} +4 -4
  200. package/dist/client/assets/{message-square-off-B8N6YF9R.js → message-square-off-_qbedNGF.js} +1 -1
  201. package/dist/client/assets/{mindmap-definition-6OY57UG3-D0SEv5Re.js → mindmap-definition-6OY57UG3-BloJIArH.js} +1 -1
  202. package/dist/client/assets/{more-details-CadxnGyH.js → more-details-CdJT0Ehl.js} +1 -1
  203. package/dist/client/assets/{owner-notice-CJHyha58.js → owner-notice-BDafFD_I.js} +1 -1
  204. package/dist/client/assets/{package-B8G7jQm-.js → package-Cb7lEm7t.js} +1 -1
  205. package/dist/client/assets/{page-container-Bb-_N7lw.js → page-container-DsRgIMAL.js} +1 -1
  206. package/dist/client/assets/{paperclip-BDeYGKqh.js → paperclip-DNu1VtoX.js} +1 -1
  207. package/dist/client/assets/{path-input-BIfexEKz.js → path-input-D3O71b-X.js} +1 -1
  208. package/dist/client/assets/{pegDiagram-ECIUJNBX-7ivMd0-b.js → pegDiagram-ECIUJNBX-Di48kPNu.js} +1 -1
  209. package/dist/client/assets/{pieDiagram-GNMPY74T-DGDkbFvu.js → pieDiagram-GNMPY74T-DY8B_SPD.js} +1 -1
  210. package/dist/client/assets/{plug-wP1d6OUX.js → plug-IIS_cL9-.js} +1 -1
  211. package/dist/client/assets/{primer-trigger-CEli_z4n.js → primer-trigger-DurKYe8C.js} +2 -2
  212. package/dist/client/assets/{profile-errors-C1qSJkiG.js → profile-errors-BdhZfdvZ.js} +1 -1
  213. package/dist/client/assets/{progress-DmUieXLn.js → progress-g5kkqvlR.js} +1 -1
  214. package/dist/client/assets/{quadrantDiagram-D57K4MC3-AFQRVSsK.js → quadrantDiagram-D57K4MC3-Depv_dON.js} +1 -1
  215. package/dist/client/assets/{query-error-state--8AnWSSn.js → query-error-state-PuLGD7Jp.js} +1 -1
  216. package/dist/client/assets/{radio-mkA-Sqe0.js → radio-QOLZSBz1.js} +1 -1
  217. package/dist/client/assets/{railroadDiagram-Y72NRBL7-3QBa2d3j.js → railroadDiagram-Y72NRBL7-BfD2AiZM.js} +1 -1
  218. package/dist/client/assets/registry-Ck8p6n1T.js +1 -0
  219. package/dist/client/assets/{relay-trace-schemas-fScydQ3A.js → relay-trace-schemas-DF_DfZ7s.js} +2 -2
  220. package/dist/client/assets/{requirementDiagram-EQYSW5RA-BVBqcASy.js → requirementDiagram-EQYSW5RA-B1iTjrkD.js} +1 -1
  221. package/dist/client/assets/{room-files-source-BhkPUTiP.js → room-files-source-g1th8mWs.js} +2 -2
  222. package/dist/client/assets/{rotate-ccw-clock-DiuTseKz.js → rotate-ccw-clock-BGwYMaGL.js} +1 -1
  223. package/dist/client/assets/{rotate-cw-DvoxWwSx.js → rotate-cw-B4Y0q4GY.js} +1 -1
  224. package/dist/client/assets/{sankeyDiagram-SY24JHO5-DFjfOD38.js → sankeyDiagram-SY24JHO5-D5TzVJrQ.js} +1 -1
  225. package/dist/client/assets/{scroll-area-DYyyRqW_.js → scroll-area-BvScZKSa.js} +1 -1
  226. package/dist/client/assets/{search-x-CA-FzEqZ.js → search-x-CqN5twBj.js} +1 -1
  227. package/dist/client/assets/{sequenceDiagram-BLEHNHQU-Cr9LzoSF.js → sequenceDiagram-BLEHNHQU-BhUahaNf.js} +1 -1
  228. package/dist/client/assets/{shield-x-B0W_7qwR.js → shield-x-DHJrwtKp.js} +1 -1
  229. package/dist/client/assets/{signed-in-X2utDqQS.js → signed-in-BmywDpR5.js} +1 -1
  230. package/dist/client/assets/{sizeCapture-INFHLROL-Do_jfNyT.js → sizeCapture-INFHLROL-D2Vi1Kq9.js} +1 -1
  231. package/dist/client/assets/{soul-file-DgfhKQIK.js → soul-file-BMpVFN7U.js} +1 -1
  232. package/dist/client/assets/{stateDiagram-v2-A6IESKWZ-BCi9yk_0.js → stateDiagram-v2-A6IESKWZ-b9gSbZnF.js} +1 -1
  233. package/dist/client/assets/{swimlanes-B3ENRKFQ-3SSAw2av.js → swimlanes-B3ENRKFQ-i47jxLY6.js} +1 -1
  234. package/dist/client/assets/swimlanesDiagram-AYQRV4AK-CA9gW19w.js +8 -0
  235. package/dist/client/assets/{table-DvU_oS4E.js → table-CN2HCi4p.js} +1 -1
  236. package/dist/client/assets/{terminal-Dw2QZ7Dh.js → terminal-BORQniao.js} +1 -1
  237. package/dist/client/assets/{timeline-definition-JXYKGLGB-DTLPXTMA.js → timeline-definition-JXYKGLGB-eY5gj0js.js} +1 -1
  238. package/dist/client/assets/{trust-posture-2MR0ap9o.js → trust-posture-Bcyy5Fub.js} +1 -1
  239. package/dist/client/assets/{unplug-CAVOLB2R.js → unplug-lkD35Rwp.js} +1 -1
  240. package/dist/client/assets/{unverified-catalog-notice-u4ikVg8J.js → unverified-catalog-notice-DiCIrrhU.js} +1 -1
  241. package/dist/client/assets/{use-adapter-catalog-BQKfRxXC.js → use-adapter-catalog-BrqVd-47.js} +1 -1
  242. package/dist/client/assets/{use-bindings-BV6HA0MD.js → use-bindings-CU2RSXOy.js} +1 -1
  243. package/dist/client/assets/{use-composer-prefs-DCSzOnEO.js → use-composer-prefs-Dy2oTM8Y.js} +1 -1
  244. package/dist/client/assets/{use-connector-management-fr1tx-GZ.js → use-connector-management-5oRqzydY.js} +1 -1
  245. package/dist/client/assets/{use-deep-link-scroll-v02TbidQ.js → use-deep-link-scroll-Bg5nW8qq.js} +1 -1
  246. package/dist/client/assets/{use-delete-binding-CnziYpXo.js → use-delete-binding-qeyRkvR1.js} +1 -1
  247. package/dist/client/assets/{use-dev-links-k4YWFO1v.js → use-dev-links-FY4J_PjA.js} +1 -1
  248. package/dist/client/assets/{use-external-adapter-catalog-DoGUfa2F.js → use-external-adapter-catalog-HiWFZZrW.js} +1 -1
  249. package/dist/client/assets/{use-full-activity-feed-CQNxgxnw.js → use-full-activity-feed-K1uk9Wya.js} +1 -1
  250. package/dist/client/assets/use-is-below-desktop-Cu_jKnft.js +1 -0
  251. package/dist/client/assets/use-is-hub-BX7ypNRJ.js +1 -0
  252. package/dist/client/assets/{use-jump-back-in-BuO6A0P7.js → use-jump-back-in-BjZ8EswV.js} +3 -3
  253. package/dist/client/assets/{use-local-browser-BNzN5O1P.js → use-local-browser-CTFiF0wf.js} +1 -1
  254. package/dist/client/assets/{use-mesh-topology-CpIDE8lD.js → use-mesh-topology-CafidaIH.js} +1 -1
  255. package/dist/client/assets/{use-mounted-ref-BAO3qunF.js → use-mounted-ref-B38uSLCx.js} +1 -1
  256. package/dist/client/assets/{use-notification-prefs-CtqeH5Pk.js → use-notification-prefs-m9XSNB6W.js} +1 -1
  257. package/dist/client/assets/{use-panel-tab-placements-DFobGBRm.js → use-panel-tab-placements-D9n6rNJ1.js} +1 -1
  258. package/dist/client/assets/use-pending-read-BoV-UI1E.js +1 -0
  259. package/dist/client/assets/{use-personality-commit-BvqCwzAC.js → use-personality-commit-ChLQfLrK.js} +1 -1
  260. package/dist/client/assets/{use-promo-activation-Dz5cYm-X.js → use-promo-activation-DbJDgp4_.js} +3 -3
  261. package/dist/client/assets/{use-promo-dismissals-CuOsnqnZ.js → use-promo-dismissals-Csw0j0N0.js} +1 -1
  262. package/dist/client/assets/{use-pulse-freshness-qcTH6PM7.js → use-pulse-freshness-BIZ7daHW.js} +1 -1
  263. package/dist/client/assets/{use-relay-config-1mAMDNbc.js → use-relay-config-hUB3lVFv.js} +1 -1
  264. package/dist/client/assets/{use-room-follow-claim-CCGhsyH3.js → use-room-follow-claim-BpKzhniV.js} +1 -1
  265. package/dist/client/assets/{use-roving-tab-list-Bsg2dfUx.js → use-roving-tab-list-BtM0bZL7.js} +1 -1
  266. package/dist/client/assets/{use-session-canvas-awPngMKg.js → use-session-canvas-DRrkNRcL.js} +3 -3
  267. package/dist/client/assets/use-session-diagnostics-BTNgouum.js +16 -0
  268. package/dist/client/assets/{use-unclaimed-chats-Db_wuzt0.js → use-unclaimed-chats-BbMZtNG9.js} +1 -1
  269. package/dist/client/assets/use-update-config-CkWwKNkY.js +1 -0
  270. package/dist/client/assets/{useMutationState-BvwBDXKc.js → useMutationState-CVpvw27W.js} +1 -1
  271. package/dist/client/assets/{usecaseDiagram-WPOLBNNX-1zKygEKR.js → usecaseDiagram-WPOLBNNX-CHcpeLg4.js} +1 -1
  272. package/dist/client/assets/{vennDiagram-Q3Y3IDCW-BR2EbgGY.js → vennDiagram-Q3Y3IDCW-gQbZL_A6.js} +1 -1
  273. package/dist/client/assets/{wardleyDiagram-IVAIDKWA-D0OwouJc.js → wardleyDiagram-IVAIDKWA-BFH_WHzZ.js} +1 -1
  274. package/dist/client/assets/{xychartDiagram-4URNHDU4-BM-7_FQQ.js → xychartDiagram-4URNHDU4-B0QpyqeZ.js} +1 -1
  275. package/dist/client/index.html +2 -2
  276. package/dist/drizzle/20261018210140_remote_command_agent_computer_kind.sql +21 -0
  277. package/dist/drizzle/20261019142317_turn_marks.sql +3 -0
  278. package/dist/drizzle/20261019185620_dor3037_wifi_holds.sql +8 -0
  279. package/dist/drizzle/meta/20261018210140_snapshot.json +14027 -0
  280. package/dist/drizzle/meta/20261019142317_snapshot.json +14048 -0
  281. package/dist/drizzle/meta/20261019185620_snapshot.json +14079 -0
  282. package/dist/drizzle/meta/_journal.json +21 -0
  283. package/dist/server/extension-child.cjs +18 -2
  284. package/dist/server/index.js +64322 -32299
  285. package/dist/server/index.js.map +2 -2
  286. package/package.json +4 -4
  287. package/dist/client/assets/ApplyToOverridesDialog-CrqkeHQb.js +0 -1
  288. package/dist/client/assets/HandlePage-BKiqymRF.js +0 -1
  289. package/dist/client/assets/McpSigninBody-COIHpHq_.js +0 -1
  290. package/dist/client/assets/NamePage-D7W6VMYd.js +0 -1
  291. package/dist/client/assets/OperatorIdentityForm-C3op6BIC.js +0 -1
  292. package/dist/client/assets/PermissionHistory-CKebTVkq.js +0 -1
  293. package/dist/client/assets/PhotoPage-Ch1at4A6.js +0 -1
  294. package/dist/client/assets/SeenDevices-BPw3UgjX.js +0 -19
  295. package/dist/client/assets/SettingsDialog-Bdws5dbS.js +0 -12
  296. package/dist/client/assets/TaskDialogWrapper-CTcW70s8.js +0 -1
  297. package/dist/client/assets/ToolsPage-D5-fx1EA.js +0 -2
  298. package/dist/client/assets/_shell-BLTSXXDw.js +0 -80
  299. package/dist/client/assets/_shell.channels-D_GQU4RB.js +0 -10
  300. package/dist/client/assets/_shell.connections-DZrlxs4G.js +0 -1
  301. package/dist/client/assets/_shell.marketplace-CZxkAmFz.js +0 -1
  302. package/dist/client/assets/_shell.marketplace_.sources-Q0BTQIuE.js +0 -1
  303. package/dist/client/assets/_shell.session-DvGL0DoX.js +0 -63
  304. package/dist/client/assets/_shell.x._extensionId-B6Tm5KuT.js +0 -1
  305. package/dist/client/assets/_shell.x._extensionId_._-B6Tm5KuT.js +0 -1
  306. package/dist/client/assets/channel-CGffcDRq.js +0 -1
  307. package/dist/client/assets/image-lightbox-BXzbN27o.js +0 -1
  308. package/dist/client/assets/index-1qv8ldHx.js +0 -1
  309. package/dist/client/assets/index-8-iQ6PnT.js +0 -1028
  310. package/dist/client/assets/index-BFitbVs4.js +0 -1
  311. package/dist/client/assets/index-C24HfJir.js +0 -1
  312. package/dist/client/assets/index-CI84yP-g.js +0 -1
  313. package/dist/client/assets/index-D5zUdnZM.js +0 -1
  314. package/dist/client/assets/index-DUZrTFYD.css +0 -1
  315. package/dist/client/assets/index-DX_2Mxwv.js +0 -1
  316. package/dist/client/assets/index-Dgrk2udV.js +0 -38
  317. package/dist/client/assets/registry-Bnd-HFt3.js +0 -1
  318. package/dist/client/assets/shield-check-CpUB_Ju1.js +0 -6
  319. package/dist/client/assets/swimlanesDiagram-AYQRV4AK-jpZCGfva.js +0 -8
  320. package/dist/client/assets/use-is-below-desktop-DR8FEbRW.js +0 -1
  321. package/dist/client/assets/use-is-hub-BmpgFnFp.js +0 -1
  322. package/dist/client/assets/use-pending-read-Do0_vZ2I.js +0 -1
  323. package/dist/client/assets/use-session-diagnostics-D5g8Mc52.js +0 -16
  324. package/dist/client/assets/use-update-config-DwtH_H9Z.js +0 -1
@@ -1,5 +1,5 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mermaid.core-x3Hh6iut.js","assets/index-8-iQ6PnT.js","assets/index-DUZrTFYD.css","assets/transform-BqqRT-Iy.js"])))=>i.map(i=>d[i]);
2
- var E7=Object.defineProperty;var S1=r=>{throw TypeError(r)};var D7=(r,e,t)=>e in r?E7(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var Ce=(r,e,t)=>D7(r,typeof e!="symbol"?e+"":e,t),nd=(r,e,t)=>e.has(r)||S1("Cannot "+t);var C=(r,e,t)=>(nd(r,e,"read from private field"),t?t.call(r):e.get(r)),_=(r,e,t)=>e.has(r)?S1("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),F=(r,e,t,n)=>(nd(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),Wi=(r,e,t)=>(nd(r,e,"access private method"),t);import{pa as C1,pb as O7,pc as _2,pd as gh,pe as R7,pf as I7,pg as z7,r as R,R as j2,e3 as bc,ph as yh,pi as vh,pj as $s,pk as M1,pl as V2,pm as L7,pn as ol,po as al,pp as T1,pq as es,pr as B7,ps as P7,pt as F7,pu as f0,pv as W2,pw as Ua,gF as $7,px as q7,py as ns,pz as Tr,pA as Ui,pB as Hc,pC as je,em as H7,pD as _7,pE as j7,pF as Wr,pG as tu,pH as Mi,pI as U2,pJ as A1,j as L,gE as V7,G as W7,aX as U7}from"./index-8-iQ6PnT.js";import{p as zf}from"./index-CyGRWyhV.js";import{aw as K7,ax as G7,ab as J7,ac as Y7,ad as X7,ae as Z7,af as Q7,ag as K2,ah as eb,q as p0,ai as tb,aj as G2,ar as rb,ak as nb,al as ib,am as sb,an as ob,ao as ab,ap as lb,aq as cb,Z as Lf,a4 as ub,a5 as J2,a6 as db,a7 as hb,a8 as fb,a9 as pb,aa as mb,m as gb,a as yb,ay as vb,E as Fa,as as bb,t as ht,n as wb,at as kb,C as N1,az as xb}from"./index-Czm6C7FZ.js";const Sb={}.hasOwnProperty;function Y2(r,e){let t=-1,n;if(e.extensions)for(;++t<e.extensions.length;)Y2(r,e.extensions[t]);for(n in e)if(Sb.call(e,n))switch(n){case"extensions":break;case"unsafe":{E1(r[n],e[n]);break}case"join":{E1(r[n],e[n]);break}case"handlers":{Cb(r[n],e[n]);break}default:r.options[n]=e[n]}return r}function E1(r,e){e&&r.push(...e)}function Cb(r,e){e&&Object.assign(r,e)}const Mb=[Tb];function Tb(r,e,t,n){if(e.type==="code"&&C1(e,n)&&(r.type==="list"||r.type===e.type&&C1(r,n)))return!1;if("spread"in t&&typeof t.spread=="boolean")return r.type==="paragraph"&&(r.type===e.type||e.type==="definition"||e.type==="heading"&&O7(e,n))?void 0:t.spread?1:0}const Ki=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"],Ab=[{character:" ",after:"[\\r\\n]",inConstruct:"phrasing"},{character:" ",before:"[\\r\\n]",inConstruct:"phrasing"},{character:" ",inConstruct:["codeFencedLangGraveAccent","codeFencedLangTilde"]},{character:"\r",inConstruct:["codeFencedLangGraveAccent","codeFencedLangTilde","codeFencedMetaGraveAccent","codeFencedMetaTilde","destinationLiteral","headingAtx"]},{character:`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/mermaid.core-SX8SzrsU.js","assets/index-C3cvP8Fo.js","assets/index-DyRGZyur.css","assets/transform-BqqRT-Iy.js"])))=>i.map(i=>d[i]);
2
+ var E7=Object.defineProperty;var S1=r=>{throw TypeError(r)};var D7=(r,e,t)=>e in r?E7(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var Ce=(r,e,t)=>D7(r,typeof e!="symbol"?e+"":e,t),nd=(r,e,t)=>e.has(r)||S1("Cannot "+t);var C=(r,e,t)=>(nd(r,e,"read from private field"),t?t.call(r):e.get(r)),_=(r,e,t)=>e.has(r)?S1("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),F=(r,e,t,n)=>(nd(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),Wi=(r,e,t)=>(nd(r,e,"access private method"),t);import{pv as C1,pw as O7,px as _2,py as gh,pz as R7,pA as I7,pB as z7,r as R,R as j2,e6 as bc,pC as yh,pD as vh,pE as $s,pF as M1,pG as V2,pH as L7,pI as ol,pJ as al,pK as T1,pL as es,pM as B7,pN as P7,pO as F7,pP as f0,pQ as W2,pR as Ua,gE as $7,pS as q7,pT as ns,pU as Tr,pV as Ui,pW as Hc,pX as je,ep as H7,pY as _7,pZ as j7,p_ as Wr,p$ as tu,q0 as Mi,q1 as U2,q2 as A1,j as L,gD as V7,G as W7,aX as U7}from"./index-C3cvP8Fo.js";import{p as zf}from"./index-BIB-maE5.js";import{aw as K7,ax as G7,ab as J7,ac as Y7,ad as X7,ae as Z7,af as Q7,ag as K2,ah as eb,q as p0,ai as tb,aj as G2,ar as rb,ak as nb,al as ib,am as sb,an as ob,ao as ab,ap as lb,aq as cb,Z as Lf,a4 as ub,a5 as J2,a6 as db,a7 as hb,a8 as fb,a9 as pb,aa as mb,m as gb,a as yb,ay as vb,E as Fa,as as bb,t as ht,n as wb,at as kb,C as N1,az as xb}from"./index-DabU6r9W.js";const Sb={}.hasOwnProperty;function Y2(r,e){let t=-1,n;if(e.extensions)for(;++t<e.extensions.length;)Y2(r,e.extensions[t]);for(n in e)if(Sb.call(e,n))switch(n){case"extensions":break;case"unsafe":{E1(r[n],e[n]);break}case"join":{E1(r[n],e[n]);break}case"handlers":{Cb(r[n],e[n]);break}default:r.options[n]=e[n]}return r}function E1(r,e){e&&r.push(...e)}function Cb(r,e){e&&Object.assign(r,e)}const Mb=[Tb];function Tb(r,e,t,n){if(e.type==="code"&&C1(e,n)&&(r.type==="list"||r.type===e.type&&C1(r,n)))return!1;if("spread"in t&&typeof t.spread=="boolean")return r.type==="paragraph"&&(r.type===e.type||e.type==="definition"||e.type==="heading"&&O7(e,n))?void 0:t.spread?1:0}const Ki=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"],Ab=[{character:" ",after:"[\\r\\n]",inConstruct:"phrasing"},{character:" ",before:"[\\r\\n]",inConstruct:"phrasing"},{character:" ",inConstruct:["codeFencedLangGraveAccent","codeFencedLangTilde"]},{character:"\r",inConstruct:["codeFencedLangGraveAccent","codeFencedLangTilde","codeFencedMetaGraveAccent","codeFencedMetaTilde","destinationLiteral","headingAtx"]},{character:`
3
3
  `,inConstruct:["codeFencedLangGraveAccent","codeFencedLangTilde","codeFencedMetaGraveAccent","codeFencedMetaTilde","destinationLiteral","headingAtx"]},{character:" ",after:"[\\r\\n]",inConstruct:"phrasing"},{character:" ",before:"[\\r\\n]",inConstruct:"phrasing"},{character:" ",inConstruct:["codeFencedLangGraveAccent","codeFencedLangTilde"]},{character:"!",after:"\\[",inConstruct:"phrasing",notInConstruct:Ki},{character:'"',inConstruct:"titleQuote"},{atBreak:!0,character:"#"},{character:"#",inConstruct:"headingAtx",after:`(?:[\r
4
4
  ]|$)`},{character:"&",after:"[#A-Za-z]",inConstruct:"phrasing"},{character:"'",inConstruct:"titleApostrophe"},{character:"(",inConstruct:"destinationRaw"},{before:"\\]",character:"(",inConstruct:"phrasing",notInConstruct:Ki},{atBreak:!0,before:"\\d+",character:")"},{character:")",inConstruct:"destinationRaw"},{atBreak:!0,character:"*",after:`(?:[ \r
5
5
  *])`},{character:"*",inConstruct:"phrasing",notInConstruct:Ki},{atBreak:!0,character:"+",after:`(?:[ \r
@@ -1228,4 +1228,4 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
1228
1228
  fill: hsl(var(--muted-foreground)) !important;
1229
1229
  stroke: hsl(var(--muted-foreground)) !important;
1230
1230
  }
1231
- `,hz={look:"classic",fontFamily:"var(--font-sans)",themeCSS:dz},fz=()=>U7(()=>import("./mermaid.core-x3Hh6iut.js").then(r=>r.bm),__vite__mapDeps([0,1,2,3])).then(r=>(r.default.initialize(hz),r));function pz({value:r,editable:e,onChange:t,className:n,sourceRevision:i,onSourceReady:s,onSourceSelection:o,onTaskToggleRequest:a,wikiLinks:l}){const c=V7();return L.jsx("div",{"data-theme":c,className:"dorkos-markdown contents",children:L.jsx(cz,{value:r,theme:c,editable:e,onChange:t,sourceRevision:i,onSourceReady:s,onSourceSelection:o,onTaskToggleRequest:a,wikiLinks:l,mermaid:fz,className:W7("desktop:select-text",n)})})}const bz=Object.freeze(Object.defineProperty({__proto__:null,BlintzCanvas:pz},Symbol.toStringTag,{value:"Module"}));export{bz as B,G0 as S,nD as a,rD as b,sD as c,UE as f,J0 as i,Iv as p,wv as r,J4 as t};
1231
+ `,hz={look:"classic",fontFamily:"var(--font-sans)",themeCSS:dz},fz=()=>U7(()=>import("./mermaid.core-SX8SzrsU.js").then(r=>r.bm),__vite__mapDeps([0,1,2,3])).then(r=>(r.default.initialize(hz),r));function pz({value:r,editable:e,onChange:t,className:n,sourceRevision:i,onSourceReady:s,onSourceSelection:o,onTaskToggleRequest:a,wikiLinks:l}){const c=V7();return L.jsx("div",{"data-theme":c,className:"dorkos-markdown contents",children:L.jsx(cz,{value:r,theme:c,editable:e,onChange:t,sourceRevision:i,onSourceReady:s,onSourceSelection:o,onTaskToggleRequest:a,wikiLinks:l,mermaid:fz,className:W7("desktop:select-text",n)})})}const bz=Object.freeze(Object.defineProperty({__proto__:null,BlintzCanvas:pz},Symbol.toStringTag,{value:"Module"}));export{bz as B,G0 as S,nD as a,rD as b,sD as c,UE as f,J0 as i,Iv as p,wv as r,J4 as t};
@@ -1,4 +1,4 @@
1
- import{em as Ee,a1 as xe,aW as Re,r as ve,a2 as Se,j,G as Ce}from"./index-8-iQ6PnT.js";import{u as Oe}from"./index-gIQ7FrL9.js";import{r as Te}from"./use-session-canvas-awPngMKg.js";import"./rotate-cw-DvoxWwSx.js";import"./query-keys-DeYqUDia.js";import"./index.esm-bLeQzVWT.js";import"./WidgetErrorCard-BfgGzyqg.js";import"./index-D5zUdnZM.js";import"./card-Dj6ZfRgu.js";import"./progress-DmUieXLn.js";import"./markdown-content-D0FpU2cz.js";import"./table-DvU_oS4E.js";import"./terminal-Dw2QZ7Dh.js";import"./package-B8G7jQm-.js";import"./heart-CRkjVW7-.js";import"./git-branch-DWerghmw.js";import"./file-text-CRw31ZWd.js";import"./file-DEt4KgZG.js";import"./McpAppFrame-5xlga1jD.js";import"./more-details-CadxnGyH.js";var he={exports:{}};/* @license
1
+ import{ep as Ee,a1 as xe,aW as Re,r as ve,a2 as Se,j,G as Ce}from"./index-C3cvP8Fo.js";import{u as Oe}from"./index-pVFjKNjX.js";import{r as Te}from"./use-session-canvas-DRrkNRcL.js";import"./rotate-cw-B4Y0q4GY.js";import"./query-keys-DeYqUDia.js";import"./index.esm-BUPoRUaG.js";import"./WidgetErrorCard-1NyzIJBj.js";import"./index-xAgihCJ7.js";import"./card-DT-vFAns.js";import"./progress-g5kkqvlR.js";import"./markdown-content-DaEVxezf.js";import"./table-CN2HCi4p.js";import"./terminal-BORQniao.js";import"./package-Cb7lEm7t.js";import"./heart-CqwUlIUG.js";import"./git-branch-CONwEYiR.js";import"./file-text-DsnD-A8g.js";import"./file-CiyVL55_.js";import"./McpAppFrame-BM9cNPPd.js";import"./more-details-CdJT0Ehl.js";var he={exports:{}};/* @license
2
2
  Papa Parse
3
3
  v5.7.0
4
4
  https://github.com/mholt/PapaParse
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/CodeMirrorEditor-BUAWGbRo.js","assets/index-8-iQ6PnT.js","assets/index-DUZrTFYD.css","assets/index-CvhR1oZB.js","assets/index-Czm6C7FZ.js","assets/BlintzCanvas-BmfkiUQJ.js","assets/index-CyGRWyhV.js","assets/BlintzCanvas-DCXOV_yN.css"])))=>i.map(i=>d[i]);
2
- import{r as n,aW as B,gC as ne,j as t,B as L,a3 as se,G as ae,J as ie,gp as ce,gD as ue,aX as G,a1 as oe,gE as le,a2 as de}from"./index-8-iQ6PnT.js";import{u as fe,a as he,b as ve}from"./use-session-canvas-awPngMKg.js";import{R as pe}from"./rotate-cw-DvoxWwSx.js";import"./query-keys-DeYqUDia.js";import"./index.esm-bLeQzVWT.js";import"./WidgetErrorCard-BfgGzyqg.js";import"./index-D5zUdnZM.js";import"./card-Dj6ZfRgu.js";import"./progress-DmUieXLn.js";import"./markdown-content-D0FpU2cz.js";import"./table-DvU_oS4E.js";import"./terminal-Dw2QZ7Dh.js";import"./package-B8G7jQm-.js";import"./heart-CRkjVW7-.js";import"./git-branch-DWerghmw.js";import"./file-text-CRw31ZWd.js";import"./file-DEt4KgZG.js";import"./McpAppFrame-5xlga1jD.js";import"./more-details-CadxnGyH.js";function E(e,i){return["canvas-file",e,i]}function me({documentId:e,sourcePath:i,binding:g,save:u,draftRef:y,revisionRef:r,finishAttemptRef:C,timerRef:b,finalSaveRef:x,invalidateConfirmedFile:f}){const p=n.useRef({binding:g,save:u,invalidateConfirmedFile:f}),P=n.useRef(null),o=n.useRef(null);return n.useLayoutEffect(()=>{p.current={binding:g,save:u,invalidateConfirmedFile:f}}),n.useLayoutEffect(()=>{const R=B.getState().openDocuments.find(h=>h.id===e);if(!R||typeof R.openedAt!="number")return;const w=ne(e,R.openedAt,i,{required:()=>!!p.current.binding,current:()=>{const h=o.current;return!!h&&h.revision===r.current&&h.attempt===C.current&&h.binding===p.current.binding&&h.save===p.current.save&&h.binding.current()},invalidateConfirmedFile:()=>p.current.invalidateConfirmedFile(),prepare:async()=>{var a;o.current=null;const{binding:h,save:_}=p.current;if(!(h!=null&&h.current()))return!1;b.current&&(clearTimeout(b.current),b.current=null);const F=y.current,m=r.current,c=++C.current,s=await _(F);return s.status!=="changed"&&s.status!=="no_op"||s.confirmed.content!==F||r.current!==m||C.current!==c||p.current.binding!==h||p.current.save!==_||!h.current()?!1:((a=x.current)==null||a.cancel(),x.current=null,o.current={revision:m,attempt:c,binding:h,save:_},!0)}});return P.current=w,()=>w.retire()},[e,i,y,r,C,b,x]),P}function ye(e,i,g){var c;const u=n.useRef(e),y=n.useRef(null),r=n.useRef(null),[C,b]=n.useState({identity:e.identity,phase:"pending",busy:!1});n.useLayoutEffect(()=>{u.current=e},[e]);const x=n.useCallback((s,a)=>{y.current===s&&u.current.identity===s&&u.current.current()&&b(d=>({identity:s,...a,historical:a.historical??(d.identity===s?d.historical:void 0)}))},[]),f=n.useCallback(s=>{y.current!==s||u.current.identity!==s||b(a=>a.identity===s?{...a,phase:"unavailable",busy:!1}:{identity:s,phase:"unavailable",busy:!1})},[]),p=e.identity,P=e.supported;n.useLayoutEffect(()=>{const s=u.current;r.current=null,y.current=p;let a=!1;return P&&i==="ready"&&s.discover().then(d=>{a||(d.status==="observed"?x(p,{phase:"ready",discovery:d.value,busy:!1}):d.status!=="idle"?x(p,{phase:"unavailable",busy:!1}):f(p))}),()=>{a=!0,r.current=null,y.current===p&&(y.current=null)}},[p,P,i,g,x,f]);const o=C.identity===e.identity?C:void 0,R=n.useCallback(async()=>{const s=u.current,a=s.identity;if(y.current!==a||!s.current())return;r.current=null,b(j=>({identity:a,phase:"pending",busy:!0,historical:j.identity===a?j.historical:void 0}));const d=await s.discover(!0);d.status==="observed"?x(a,{phase:"ready",discovery:d.value,busy:!1}):d.status!=="idle"?x(a,{phase:"unavailable",busy:!1}):f(a)},[x,f]),w=n.useCallback(async s=>{const a=u.current,d=a.identity;if(y.current!==d||!a.current())return;r.current=null,b(l=>({identity:d,phase:"pending",busy:!0,discovery:l.identity===d?l.discovery:void 0,historical:l.identity===d?l.historical:void 0}));const j=await a.recover(s);j.status==="observed"?x(d,{phase:"ready",discovery:j.value.discovery,historical:j.value.result.entry,busy:!1}):j.status!=="idle"?x(d,{phase:j.status==="local_uncertain"?"local_uncertain":"unavailable",busy:!1}):f(d)},[x,f]),h=n.useCallback(async()=>{const s=u.current,a=s.identity;if(y.current!==a||!s.current())return{status:"idle"};const d={};r.current=d,b(l=>l.identity===a?{...l,phase:"pending",busy:!0}:l);const j=await s.inspectCurrent();return r.current!==d?{status:"idle"}:(r.current=null,j.status==="idle"&&f(a),y.current===a&&u.current.identity===a&&s.current()&&j.status!=="idle"&&b(l=>l.identity===a?{...l,phase:j.status==="observed"?"ready":j.status==="local_uncertain"?"local_uncertain":"unavailable",busy:!1}:l),j)},[f]),_=e.supported&&i==="ready",F=i==="pending"?"pending":(o==null?void 0:o.phase)??"pending",m=_&&(F!=="ready"||((c=o==null?void 0:o.discovery)==null?void 0:c.admission)==="blocked");return{supported:_,phase:F,editBlocked:m,busy:(o==null?void 0:o.busy)??F==="pending",discovery:o==null?void 0:o.discovery,historical:o==null?void 0:o.historical,refresh:R,recover:w,inspectCurrent:h}}function xe({recovery:e,editing:i,loadCurrent:g}){var u,y;return e.supported?t.jsxs("section",{"aria-label":"Previous file saves",className:"mx-2 mt-2 rounded border p-2 text-sm",children:[e.phase==="pending"&&t.jsx("p",{role:"status",children:"Checking previous saves…"}),e.phase==="unavailable"&&t.jsx("p",{role:"alert",children:"Previous save evidence is unavailable. New saves stay blocked until it can be checked."}),e.phase==="local_uncertain"&&t.jsx("p",{role:"alert",children:"Use Retry original save. Checking previous saves won’t confirm this save."}),((u=e.discovery)==null?void 0:u.admission)==="blocked"&&t.jsx("p",{role:"alert",children:"An unresolved original save blocks this file. This list may not include the blocking operation."}),e.discovery&&t.jsxs(t.Fragment,{children:[!e.discovery.entries.length&&t.jsx("p",{children:"No matching recent saves."}),e.discovery.hasMore&&t.jsx("p",{children:"Only the latest 25 matching saves are shown. Older evidence is omitted."}),t.jsx("ul",{children:e.discovery.entries.map(r=>t.jsxs("li",{children:[t.jsxs("span",{children:[r.eventId,":"," ",r.state==="receipt"?"Historical save recorded":r.state==="review"?"Original save needs review":r.state==="no_op"?"Original save made no change":"Original save failed before replacement"]}),r.state==="review"&&(r.reason==="prepared_without_replacement"?t.jsx("p",{children:"This save needs manual review. These controls won’t write the file."}):t.jsxs(t.Fragment,{children:[t.jsx("p",{children:"The original saved replacement must be proven before its receipt can be settled."}),t.jsx(L,{type:"button",size:"sm",variant:"ghost",disabled:e.busy||i,onClick:()=>void e.recover(r.eventId),children:"Recover original receipt"})]}))]},r.eventId))})]}),((y=e.historical)==null?void 0:y.state)==="receipt"&&t.jsxs("div",{role:"status",children:[t.jsx("p",{children:"Previous save confirmed. Your current draft may differ."}),t.jsx("p",{children:e.historical.currentFileMatch==="different"?"The current file differs from that historical save.":e.historical.currentFileMatch==="same_saved_replacement"?"The saved replacement matched when checked; current bytes still require a fresh load.":"The current file was not checked."})]}),t.jsxs("div",{className:"flex gap-2",children:[t.jsx(L,{type:"button",size:"sm",variant:"ghost",disabled:e.busy||i,onClick:()=>void e.refresh(),children:"Check previous saves"}),t.jsx(L,{type:"button",size:"sm",variant:"ghost",disabled:i||e.editBlocked||e.busy,onClick:g,children:"Load current file"})]}),t.jsx("p",{children:"These controls don’t resend drafts or confirm agent delivery. Use Load current file."})]}):null}const be=n.lazy(()=>G(()=>import("./CodeMirrorEditor-BUAWGbRo.js"),__vite__mapDeps([0,1,2,3,4])).then(e=>({default:e.CodeMirrorEditor}))),ge=n.lazy(()=>G(()=>import("./BlintzCanvas-BmfkiUQJ.js").then(e=>e.B),__vite__mapDeps([5,1,2,6,4,7])).then(e=>({default:e.BlintzCanvas}))),je=500;function Ce(e,i){return i==="markdown"||/\.(md|markdown|mdx)$/i.test(e)}function ke(e){switch(e){case"saving":return"Saving…";case"saved":return"Saved";case"error":return"Couldn’t save";case"uncertain":return"Save not confirmed";default:return null}}function W({content:e,documentId:i,cwd:g,loaded:u,theme:y,isEditing:r,onEditingChange:C,setDocumentEditing:b,observedBinding:x,fileSaveObservation:f="unavailable",recoveryBinding:p}){const P=e.readOnly!==!0,o=Ce(e.sourcePath,e.language),R=se(),[w,h]=n.useState(u),[_,F]=n.useState(),m=n.useRef(x);n.useLayoutEffect(()=>{m.current=x},[x]);const c=fe({documentId:i,sourcePath:e.sourcePath,cwd:g,loadedContent:u,documentSaveBinding:_,documentRecoveryBinding:p}),s=ye(c.recovery,f,p),a=he({cwd:g,sourcePath:o?e.sourcePath:null,content:w,saved:c.status==="saved"}),d=n.useRef(!1),j=n.useRef(r);n.useLayoutEffect(()=>(d.current=!0,j.current=r,()=>{d.current=!1}),[r]);const l=n.useRef(null),S=n.useRef(w),D=n.useRef(0),O=n.useRef(0),A=n.useRef(c.save),Q=n.useRef(c.prepareFinalSave),U=n.useRef(c.waitForCloseDrain),z=n.useRef(null),H=n.useRef(C),K=me({documentId:i,sourcePath:e.sourcePath,binding:_,save:c.save,draftRef:S,revisionRef:D,finishAttemptRef:O,timerRef:l,finalSaveRef:z,invalidateConfirmedFile:()=>{R.invalidateQueries({queryKey:E(g,e.sourcePath)}).catch(()=>{})}});n.useEffect(()=>{S.current=w,A.current=c.save,Q.current=c.prepareFinalSave,U.current=c.waitForCloseDrain,H.current=C});const V=n.useCallback(v=>{var k;D.current+=1,S.current=v,h(v),(k=z.current)==null||k.cancel(),z.current=Q.current(v),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{l.current=null,A.current(S.current)},je)},[]),J=()=>{var N;if(s.editBlocked||f==="pending"||f==="ready"&&!((N=m.current)!=null&&N.current()))return;const v=m.current,k=v&&Object.freeze({...v.incarnation});F(v!=null&&v.current()&&k?{incarnation:k,current:()=>{const T=m.current;return!!T&&ue(k,T.incarnation)&&T.current()}}:void 0),D.current+=1,S.current=u,h(u),C(!0),b(i,!0)},X=async()=>{l.current&&(clearTimeout(l.current),l.current=null);const v=S.current,k=D.current,N=++O.current,T=await A.current(v);if(T.status!=="changed"&&T.status!=="no_op"||D.current!==k||O.current!==N||T.confirmed.content!==v)return;const M=T.confirmed;M.content===S.current&&R.setQueryData(E(g,e.sourcePath),q=>q&&{...q,content:M.content,hash:M.hash}),C(!1),b(i,!1)},Z=()=>{R.invalidateQueries({queryKey:E(g,e.sourcePath)})};n.useEffect(()=>{var v;r||(l.current&&clearTimeout(l.current),l.current=null,(v=z.current)==null||v.cancel(),z.current=null)},[r]),n.useEffect(()=>{const v=K.current;return()=>{var T;l.current&&(clearTimeout(l.current),l.current=null);const k=(T=z.current)==null?void 0:T.flush(),N=S.current;v==null||v.settleRetirement(Promise.resolve(k).then(()=>U.current(N))),z.current=null,b(i,!1),H.current(!1)}},[i,b,K]);const ee=async()=>{if(r||!d.current||s.editBlocked)return;const v=D.current,k=await s.inspectCurrent();k.status!=="observed"||!d.current||j.current||D.current!==v||!c.recovery.current()||R.setQueryData(E(g,e.sourcePath),N=>N&&{...N,...k.value})},te=()=>{const v=c.adoptDisk();v!=null&&h(v)},re=()=>{c.overwrite(S.current)},Y=c.status==="saved"?c.confirmedContent!==w?"Unsaved changes":c.documentReceipt?"Save recorded":"Saved to file":ke(c.status),$=r?w:u;return t.jsxs("div",{className:"relative flex h-full flex-col",children:[t.jsxs("div",{className:"sticky top-0 z-10 flex h-0 items-start justify-end gap-2 pr-2",children:[P&&Y&&t.jsx("span",{className:ae("mt-3 text-xs",c.status==="error"?"text-destructive":"text-muted-foreground"),"aria-live":"polite",children:Y}),!r&&f==="pending"&&t.jsx("span",{role:"status",children:"Checking document…"}),!r&&t.jsx(L,{type:"button",variant:"ghost",size:"icon-md",className:"text-muted-foreground hover:text-foreground mt-2",onClick:Z,"aria-label":"Refresh from disk",children:t.jsx(pe,{className:"size-4"})}),P&&t.jsx(L,{type:"button",variant:"ghost",size:"icon-md",className:"text-muted-foreground hover:text-foreground mt-2",onClick:r?()=>void X():J,"aria-label":r?"Finish editing":"Edit file",disabled:!r&&(f==="pending"||s.editBlocked),"data-document-save-observation":f,children:r?t.jsx(ie,{className:"size-4"}):t.jsx(ce,{className:"size-4"})})]}),t.jsx(xe,{recovery:s,editing:r,loadCurrent:()=>void ee()}),c.status==="uncertain"&&t.jsxs("div",{role:"status",className:"mx-2 mt-2 flex items-center gap-2 text-sm",children:[t.jsx("span",{children:"Save not confirmed. Retry the original save before saving another draft."}),t.jsx(L,{type:"button",variant:"ghost",size:"sm",onClick:()=>void c.retryUnconfirmed(),children:"Retry original save"})]}),c.status==="conflict"&&t.jsxs("div",{className:"bg-destructive/10 text-destructive mx-2 mt-2 flex flex-wrap items-center gap-x-3 gap-y-1 rounded-md px-3 py-2 text-sm",children:[t.jsx("span",{className:"flex-1",children:"This file changed on disk since you opened it."}),t.jsx(L,{type:"button",variant:"ghost",size:"sm",className:"h-7",onClick:te,children:"Reload"}),t.jsx(L,{type:"button",variant:"destructive",size:"sm",className:"h-7",onClick:re,children:"Overwrite"})]}),t.jsx("div",{className:"min-h-0 flex-1",children:t.jsx(n.Suspense,{fallback:t.jsx("div",{className:"text-muted-foreground p-4 text-sm",children:"Loading editor…"}),children:o?t.jsx("div",{className:"px-2 pb-6",children:t.jsx(ge,{value:$,editable:r,onChange:r?V:void 0,wikiLinks:a})}):t.jsx(be,{value:$,editable:r,filename:e.sourcePath,languageHint:e.language,theme:y,onChange:r?V:void 0})})})]})}function Re(e){const{fileSaveBinding:i,fileSaveObservation:g}=ve(e.documentId);return t.jsx(W,{...e,observedBinding:i,recoveryBinding:i,fileSaveObservation:g})}function we(e){switch(e==null?void 0:e.code){case"NOT_FOUND":return"This file doesn’t exist.";case"NOT_A_FILE":return"This path is a directory, not a file.";case"TOO_LARGE":return"This file is too large to open here.";case"BINARY_FILE":return"This file isn’t text, so the editor can’t show it.";default:return"This file couldn’t be loaded."}}function Ke({content:e,documentId:i}){const g=oe(),u=B(m=>m.selectedCwd),y=B(m=>m.setDocumentEditing),r=B(m=>{var c;return((c=m.openDocuments.find(s=>s.id===i))==null?void 0:c.editing)??!1}),C=le(),b=B(m=>m.canvasSessionId),x=B(m=>m.roomCanvasLiveRoomId),{data:f,error:p,isLoading:P}=de({queryKey:E(u,e.sourcePath),enabled:u!==null,queryFn:()=>g.readFileContent(u,e.sourcePath),staleTime:3e4,retry:!1}),[o,R]=n.useState(null),w=m=>{R(m&&f?{pinnedHash:f.hash}:null)};if(u===null)return t.jsx(I,{children:"Open a chat to view files."});if(P)return t.jsx(I,{children:"Loading file…"});if(p||!f)return t.jsx(I,{children:we(p)});const h=o!==null&&r,_=(h?o==null?void 0:o.pinnedHash:null)??f.hash,F=b&&!x?Re:W;return t.jsx(F,{content:e,documentId:i,cwd:u,loaded:f.content,theme:C,isEditing:h,onEditingChange:w,setDocumentEditing:y},`${e.sourcePath}:${_}`)}function I({children:e}){return t.jsx("div",{className:"text-muted-foreground flex h-full items-center justify-center p-8 text-center",children:t.jsx("p",{children:e})})}export{Ke as CanvasFileContent};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/CodeMirrorEditor-DV6psv19.js","assets/index-C3cvP8Fo.js","assets/index-DyRGZyur.css","assets/index-BDD2EyoW.js","assets/index-DabU6r9W.js","assets/BlintzCanvas-b30dG4gx.js","assets/index-BIB-maE5.js","assets/BlintzCanvas-DCXOV_yN.css"])))=>i.map(i=>d[i]);
2
+ import{r as n,aW as B,gB as ne,j as t,B as L,a3 as se,G as ae,J as ie,go as ce,gC as ue,aX as G,a1 as oe,gD as le,a2 as de}from"./index-C3cvP8Fo.js";import{u as fe,a as he,b as ve}from"./use-session-canvas-DRrkNRcL.js";import{R as pe}from"./rotate-cw-B4Y0q4GY.js";import"./query-keys-DeYqUDia.js";import"./index.esm-BUPoRUaG.js";import"./WidgetErrorCard-1NyzIJBj.js";import"./index-xAgihCJ7.js";import"./card-DT-vFAns.js";import"./progress-g5kkqvlR.js";import"./markdown-content-DaEVxezf.js";import"./table-CN2HCi4p.js";import"./terminal-BORQniao.js";import"./package-Cb7lEm7t.js";import"./heart-CqwUlIUG.js";import"./git-branch-CONwEYiR.js";import"./file-text-DsnD-A8g.js";import"./file-CiyVL55_.js";import"./McpAppFrame-BM9cNPPd.js";import"./more-details-CdJT0Ehl.js";function O(e,i){return["canvas-file",e,i]}function me({documentId:e,sourcePath:i,binding:g,save:u,draftRef:y,revisionRef:r,finishAttemptRef:C,timerRef:b,finalSaveRef:x,invalidateConfirmedFile:f}){const p=n.useRef({binding:g,save:u,invalidateConfirmedFile:f}),P=n.useRef(null),o=n.useRef(null);return n.useLayoutEffect(()=>{p.current={binding:g,save:u,invalidateConfirmedFile:f}}),n.useLayoutEffect(()=>{const R=B.getState().openDocuments.find(h=>h.id===e);if(!R||typeof R.openedAt!="number")return;const w=ne(e,R.openedAt,i,{required:()=>!!p.current.binding,current:()=>{const h=o.current;return!!h&&h.revision===r.current&&h.attempt===C.current&&h.binding===p.current.binding&&h.save===p.current.save&&h.binding.current()},invalidateConfirmedFile:()=>p.current.invalidateConfirmedFile(),prepare:async()=>{var a;o.current=null;const{binding:h,save:_}=p.current;if(!(h!=null&&h.current()))return!1;b.current&&(clearTimeout(b.current),b.current=null);const F=y.current,m=r.current,c=++C.current,s=await _(F);return s.status!=="changed"&&s.status!=="no_op"||s.confirmed.content!==F||r.current!==m||C.current!==c||p.current.binding!==h||p.current.save!==_||!h.current()?!1:((a=x.current)==null||a.cancel(),x.current=null,o.current={revision:m,attempt:c,binding:h,save:_},!0)}});return P.current=w,()=>w.retire()},[e,i,y,r,C,b,x]),P}function ye(e,i,g){var c;const u=n.useRef(e),y=n.useRef(null),r=n.useRef(null),[C,b]=n.useState({identity:e.identity,phase:"pending",busy:!1});n.useLayoutEffect(()=>{u.current=e},[e]);const x=n.useCallback((s,a)=>{y.current===s&&u.current.identity===s&&u.current.current()&&b(d=>({identity:s,...a,historical:a.historical??(d.identity===s?d.historical:void 0)}))},[]),f=n.useCallback(s=>{y.current!==s||u.current.identity!==s||b(a=>a.identity===s?{...a,phase:"unavailable",busy:!1}:{identity:s,phase:"unavailable",busy:!1})},[]),p=e.identity,P=e.supported;n.useLayoutEffect(()=>{const s=u.current;r.current=null,y.current=p;let a=!1;return P&&i==="ready"&&s.discover().then(d=>{a||(d.status==="observed"?x(p,{phase:"ready",discovery:d.value,busy:!1}):d.status!=="idle"?x(p,{phase:"unavailable",busy:!1}):f(p))}),()=>{a=!0,r.current=null,y.current===p&&(y.current=null)}},[p,P,i,g,x,f]);const o=C.identity===e.identity?C:void 0,R=n.useCallback(async()=>{const s=u.current,a=s.identity;if(y.current!==a||!s.current())return;r.current=null,b(j=>({identity:a,phase:"pending",busy:!0,historical:j.identity===a?j.historical:void 0}));const d=await s.discover(!0);d.status==="observed"?x(a,{phase:"ready",discovery:d.value,busy:!1}):d.status!=="idle"?x(a,{phase:"unavailable",busy:!1}):f(a)},[x,f]),w=n.useCallback(async s=>{const a=u.current,d=a.identity;if(y.current!==d||!a.current())return;r.current=null,b(l=>({identity:d,phase:"pending",busy:!0,discovery:l.identity===d?l.discovery:void 0,historical:l.identity===d?l.historical:void 0}));const j=await a.recover(s);j.status==="observed"?x(d,{phase:"ready",discovery:j.value.discovery,historical:j.value.result.entry,busy:!1}):j.status!=="idle"?x(d,{phase:j.status==="local_uncertain"?"local_uncertain":"unavailable",busy:!1}):f(d)},[x,f]),h=n.useCallback(async()=>{const s=u.current,a=s.identity;if(y.current!==a||!s.current())return{status:"idle"};const d={};r.current=d,b(l=>l.identity===a?{...l,phase:"pending",busy:!0}:l);const j=await s.inspectCurrent();return r.current!==d?{status:"idle"}:(r.current=null,j.status==="idle"&&f(a),y.current===a&&u.current.identity===a&&s.current()&&j.status!=="idle"&&b(l=>l.identity===a?{...l,phase:j.status==="observed"?"ready":j.status==="local_uncertain"?"local_uncertain":"unavailable",busy:!1}:l),j)},[f]),_=e.supported&&i==="ready",F=i==="pending"?"pending":(o==null?void 0:o.phase)??"pending",m=_&&(F!=="ready"||((c=o==null?void 0:o.discovery)==null?void 0:c.admission)==="blocked");return{supported:_,phase:F,editBlocked:m,busy:(o==null?void 0:o.busy)??F==="pending",discovery:o==null?void 0:o.discovery,historical:o==null?void 0:o.historical,refresh:R,recover:w,inspectCurrent:h}}function xe({recovery:e,editing:i,loadCurrent:g}){var u,y;return e.supported?t.jsxs("section",{"aria-label":"Previous file saves",className:"mx-2 mt-2 rounded border p-2 text-sm",children:[e.phase==="pending"&&t.jsx("p",{role:"status",children:"Checking previous saves…"}),e.phase==="unavailable"&&t.jsx("p",{role:"alert",children:"Previous save evidence is unavailable. New saves stay blocked until it can be checked."}),e.phase==="local_uncertain"&&t.jsx("p",{role:"alert",children:"Use Retry original save. Checking previous saves won’t confirm this save."}),((u=e.discovery)==null?void 0:u.admission)==="blocked"&&t.jsx("p",{role:"alert",children:"An unresolved original save blocks this file. This list may not include the blocking operation."}),e.discovery&&t.jsxs(t.Fragment,{children:[!e.discovery.entries.length&&t.jsx("p",{children:"No matching recent saves."}),e.discovery.hasMore&&t.jsx("p",{children:"Only the latest 25 matching saves are shown. Older evidence is omitted."}),t.jsx("ul",{children:e.discovery.entries.map(r=>t.jsxs("li",{children:[t.jsxs("span",{children:[r.eventId,":"," ",r.state==="receipt"?"Historical save recorded":r.state==="review"?"Original save needs review":r.state==="no_op"?"Original save made no change":"Original save failed before replacement"]}),r.state==="review"&&(r.reason==="prepared_without_replacement"?t.jsx("p",{children:"This save needs manual review. These controls won’t write the file."}):t.jsxs(t.Fragment,{children:[t.jsx("p",{children:"The original saved replacement must be proven before its receipt can be settled."}),t.jsx(L,{type:"button",size:"sm",variant:"ghost",disabled:e.busy||i,onClick:()=>void e.recover(r.eventId),children:"Recover original receipt"})]}))]},r.eventId))})]}),((y=e.historical)==null?void 0:y.state)==="receipt"&&t.jsxs("div",{role:"status",children:[t.jsx("p",{children:"Previous save confirmed. Your current draft may differ."}),t.jsx("p",{children:e.historical.currentFileMatch==="different"?"The current file differs from that historical save.":e.historical.currentFileMatch==="same_saved_replacement"?"The saved replacement matched when checked; current bytes still require a fresh load.":"The current file was not checked."})]}),t.jsxs("div",{className:"flex gap-2",children:[t.jsx(L,{type:"button",size:"sm",variant:"ghost",disabled:e.busy||i,onClick:()=>void e.refresh(),children:"Check previous saves"}),t.jsx(L,{type:"button",size:"sm",variant:"ghost",disabled:i||e.editBlocked||e.busy,onClick:g,children:"Load current file"})]}),t.jsx("p",{children:"These controls don’t resend drafts or confirm agent delivery. Use Load current file."})]}):null}const be=n.lazy(()=>G(()=>import("./CodeMirrorEditor-DV6psv19.js"),__vite__mapDeps([0,1,2,3,4])).then(e=>({default:e.CodeMirrorEditor}))),ge=n.lazy(()=>G(()=>import("./BlintzCanvas-b30dG4gx.js").then(e=>e.B),__vite__mapDeps([5,1,2,6,4,7])).then(e=>({default:e.BlintzCanvas}))),je=500;function Ce(e,i){return i==="markdown"||/\.(md|markdown|mdx)$/i.test(e)}function ke(e){switch(e){case"saving":return"Saving…";case"saved":return"Saved";case"error":return"Couldn’t save";case"uncertain":return"Save not confirmed";default:return null}}function W({content:e,documentId:i,cwd:g,loaded:u,theme:y,isEditing:r,onEditingChange:C,setDocumentEditing:b,observedBinding:x,fileSaveObservation:f="unavailable",recoveryBinding:p}){const P=e.readOnly!==!0,o=Ce(e.sourcePath,e.language),R=se(),[w,h]=n.useState(u),[_,F]=n.useState(),m=n.useRef(x);n.useLayoutEffect(()=>{m.current=x},[x]);const c=fe({documentId:i,sourcePath:e.sourcePath,cwd:g,loadedContent:u,documentSaveBinding:_,documentRecoveryBinding:p}),s=ye(c.recovery,f,p),a=he({cwd:g,sourcePath:o?e.sourcePath:null,content:w,saved:c.status==="saved"}),d=n.useRef(!1),j=n.useRef(r);n.useLayoutEffect(()=>(d.current=!0,j.current=r,()=>{d.current=!1}),[r]);const l=n.useRef(null),S=n.useRef(w),D=n.useRef(0),E=n.useRef(0),A=n.useRef(c.save),Q=n.useRef(c.prepareFinalSave),U=n.useRef(c.waitForCloseDrain),z=n.useRef(null),H=n.useRef(C),K=me({documentId:i,sourcePath:e.sourcePath,binding:_,save:c.save,draftRef:S,revisionRef:D,finishAttemptRef:E,timerRef:l,finalSaveRef:z,invalidateConfirmedFile:()=>{R.invalidateQueries({queryKey:O(g,e.sourcePath)}).catch(()=>{})}});n.useEffect(()=>{S.current=w,A.current=c.save,Q.current=c.prepareFinalSave,U.current=c.waitForCloseDrain,H.current=C});const V=n.useCallback(v=>{var k;D.current+=1,S.current=v,h(v),(k=z.current)==null||k.cancel(),z.current=Q.current(v),l.current&&clearTimeout(l.current),l.current=setTimeout(()=>{l.current=null,A.current(S.current)},je)},[]),J=()=>{var N;if(s.editBlocked||f==="pending"||f==="ready"&&!((N=m.current)!=null&&N.current()))return;const v=m.current,k=v&&Object.freeze({...v.incarnation});F(v!=null&&v.current()&&k?{incarnation:k,current:()=>{const T=m.current;return!!T&&ue(k,T.incarnation)&&T.current()}}:void 0),D.current+=1,S.current=u,h(u),C(!0),b(i,!0)},X=async()=>{l.current&&(clearTimeout(l.current),l.current=null);const v=S.current,k=D.current,N=++E.current,T=await A.current(v);if(T.status!=="changed"&&T.status!=="no_op"||D.current!==k||E.current!==N||T.confirmed.content!==v)return;const M=T.confirmed;M.content===S.current&&R.setQueryData(O(g,e.sourcePath),q=>q&&{...q,content:M.content,hash:M.hash}),C(!1),b(i,!1)},Z=()=>{R.invalidateQueries({queryKey:O(g,e.sourcePath)})};n.useEffect(()=>{var v;r||(l.current&&clearTimeout(l.current),l.current=null,(v=z.current)==null||v.cancel(),z.current=null)},[r]),n.useEffect(()=>{const v=K.current;return()=>{var T;l.current&&(clearTimeout(l.current),l.current=null);const k=(T=z.current)==null?void 0:T.flush(),N=S.current;v==null||v.settleRetirement(Promise.resolve(k).then(()=>U.current(N))),z.current=null,b(i,!1),H.current(!1)}},[i,b,K]);const ee=async()=>{if(r||!d.current||s.editBlocked)return;const v=D.current,k=await s.inspectCurrent();k.status!=="observed"||!d.current||j.current||D.current!==v||!c.recovery.current()||R.setQueryData(O(g,e.sourcePath),N=>N&&{...N,...k.value})},te=()=>{const v=c.adoptDisk();v!=null&&h(v)},re=()=>{c.overwrite(S.current)},Y=c.status==="saved"?c.confirmedContent!==w?"Unsaved changes":c.documentReceipt?"Save recorded":"Saved to file":ke(c.status),$=r?w:u;return t.jsxs("div",{className:"relative flex h-full flex-col",children:[t.jsxs("div",{className:"sticky top-0 z-10 flex h-0 items-start justify-end gap-2 pr-2",children:[P&&Y&&t.jsx("span",{className:ae("mt-3 text-xs",c.status==="error"?"text-destructive":"text-muted-foreground"),"aria-live":"polite",children:Y}),!r&&f==="pending"&&t.jsx("span",{role:"status",children:"Checking document…"}),!r&&t.jsx(L,{type:"button",variant:"ghost",size:"icon-md",className:"text-muted-foreground hover:text-foreground mt-2",onClick:Z,"aria-label":"Refresh from disk",children:t.jsx(pe,{className:"size-4"})}),P&&t.jsx(L,{type:"button",variant:"ghost",size:"icon-md",className:"text-muted-foreground hover:text-foreground mt-2",onClick:r?()=>void X():J,"aria-label":r?"Finish editing":"Edit file",disabled:!r&&(f==="pending"||s.editBlocked),"data-document-save-observation":f,children:r?t.jsx(ie,{className:"size-4"}):t.jsx(ce,{className:"size-4"})})]}),t.jsx(xe,{recovery:s,editing:r,loadCurrent:()=>void ee()}),c.status==="uncertain"&&t.jsxs("div",{role:"status",className:"mx-2 mt-2 flex items-center gap-2 text-sm",children:[t.jsx("span",{children:"Save not confirmed. Retry the original save before saving another draft."}),t.jsx(L,{type:"button",variant:"ghost",size:"sm",onClick:()=>void c.retryUnconfirmed(),children:"Retry original save"})]}),c.status==="conflict"&&t.jsxs("div",{className:"bg-destructive/10 text-destructive mx-2 mt-2 flex flex-wrap items-center gap-x-3 gap-y-1 rounded-md px-3 py-2 text-sm",children:[t.jsx("span",{className:"flex-1",children:"This file changed on disk since you opened it."}),t.jsx(L,{type:"button",variant:"ghost",size:"sm",className:"h-7",onClick:te,children:"Reload"}),t.jsx(L,{type:"button",variant:"destructive",size:"sm",className:"h-7",onClick:re,children:"Overwrite"})]}),t.jsx("div",{className:"min-h-0 flex-1",children:t.jsx(n.Suspense,{fallback:t.jsx("div",{className:"text-muted-foreground p-4 text-sm",children:"Loading editor…"}),children:o?t.jsx("div",{className:"px-2 pb-6",children:t.jsx(ge,{value:$,editable:r,onChange:r?V:void 0,wikiLinks:a})}):t.jsx(be,{value:$,editable:r,filename:e.sourcePath,languageHint:e.language,theme:y,onChange:r?V:void 0})})})]})}function Re(e){const{fileSaveBinding:i,fileSaveObservation:g}=ve(e.documentId);return t.jsx(W,{...e,observedBinding:i,recoveryBinding:i,fileSaveObservation:g})}function we(e){switch(e==null?void 0:e.code){case"NOT_FOUND":return"This file doesn’t exist.";case"NOT_A_FILE":return"This path is a directory, not a file.";case"TOO_LARGE":return"This file is too large to open here.";case"BINARY_FILE":return"This file isn’t text, so the editor can’t show it.";default:return"This file couldn’t be loaded."}}function Ke({content:e,documentId:i}){const g=oe(),u=B(m=>m.selectedCwd),y=B(m=>m.setDocumentEditing),r=B(m=>{var c;return((c=m.openDocuments.find(s=>s.id===i))==null?void 0:c.editing)??!1}),C=le(),b=B(m=>m.canvasSessionId),x=B(m=>m.roomCanvasLiveRoomId),{data:f,error:p,isLoading:P}=de({queryKey:O(u,e.sourcePath),enabled:u!==null,queryFn:()=>g.readFileContent(u,e.sourcePath),staleTime:3e4,retry:!1}),[o,R]=n.useState(null),w=m=>{R(m&&f?{pinnedHash:f.hash}:null)};if(u===null)return t.jsx(I,{children:"Open a chat to view files."});if(P)return t.jsx(I,{children:"Loading file…"});if(p||!f)return t.jsx(I,{children:we(p)});const h=o!==null&&r,_=(h?o==null?void 0:o.pinnedHash:null)??f.hash,F=b&&!x?Re:W;return t.jsx(F,{content:e,documentId:i,cwd:u,loaded:f.content,theme:C,isEditing:h,onEditingChange:w,setDocumentEditing:y},`${e.sourcePath}:${_}`)}function I({children:e}){return t.jsx("div",{className:"text-muted-foreground flex h-full items-center justify-center p-8 text-center",children:t.jsx("p",{children:e})})}export{Ke as CanvasFileContent};
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Model3dViewer-CQ0sA_kr.js","assets/index-8-iQ6PnT.js","assets/index-DUZrTFYD.css"])))=>i.map(i=>d[i]);
2
- import{a1 as a,aW as n,r as s,j as t,aX as p}from"./index-8-iQ6PnT.js";import{r as u}from"./use-session-canvas-awPngMKg.js";import"./rotate-cw-DvoxWwSx.js";import"./query-keys-DeYqUDia.js";import"./index.esm-bLeQzVWT.js";import"./WidgetErrorCard-BfgGzyqg.js";import"./index-D5zUdnZM.js";import"./card-Dj6ZfRgu.js";import"./progress-DmUieXLn.js";import"./markdown-content-D0FpU2cz.js";import"./table-DvU_oS4E.js";import"./terminal-Dw2QZ7Dh.js";import"./package-B8G7jQm-.js";import"./heart-CRkjVW7-.js";import"./git-branch-DWerghmw.js";import"./file-text-CRw31ZWd.js";import"./file-DEt4KgZG.js";import"./McpAppFrame-5xlga1jD.js";import"./more-details-CadxnGyH.js";const d=s.lazy(()=>p(()=>import("./Model3dViewer-CQ0sA_kr.js"),__vite__mapDeps([0,1,2])).then(e=>({default:e.Model3dViewer})));function f(e){var o;const r=(o=e.split(".").pop())==null?void 0:o.toLowerCase();return r==="glb"||r==="gltf"?"gltf":r==="stl"?"stl":r==="obj"?"obj":r==="3mf"?"3mf":r==="ply"?"ply":r==="fbx"?"fbx":r==="dae"?"dae":null}function O({content:e}){const r=a(),o=n(i=>i.selectedCwd),l=s.useMemo(()=>u(e.src,i=>r.mediaUrl(o??"",i)),[e.src,r,o]),m=s.useMemo(()=>f(e.src),[e.src]);return l.url===null||m===null?t.jsx("div",{className:"text-muted-foreground flex h-full items-center justify-center p-8 text-center",children:t.jsx("p",{children:"This 3D model can’t be displayed here."})}):t.jsx("div",{className:"bg-muted/40 h-full w-full",children:t.jsx(s.Suspense,{fallback:t.jsx("div",{className:"text-muted-foreground p-4 text-sm",children:"Loading 3D viewer…"}),children:t.jsx(d,{url:l.url,format:m,label:e.title??"Canvas 3D model"})})})}export{O as CanvasModel3dContent,f as formatOf};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Model3dViewer-rXSL5y2P.js","assets/index-C3cvP8Fo.js","assets/index-DyRGZyur.css"])))=>i.map(i=>d[i]);
2
+ import{a1 as a,aW as n,r as s,j as t,aX as p}from"./index-C3cvP8Fo.js";import{r as u}from"./use-session-canvas-DRrkNRcL.js";import"./rotate-cw-B4Y0q4GY.js";import"./query-keys-DeYqUDia.js";import"./index.esm-BUPoRUaG.js";import"./WidgetErrorCard-1NyzIJBj.js";import"./index-xAgihCJ7.js";import"./card-DT-vFAns.js";import"./progress-g5kkqvlR.js";import"./markdown-content-DaEVxezf.js";import"./table-CN2HCi4p.js";import"./terminal-BORQniao.js";import"./package-Cb7lEm7t.js";import"./heart-CqwUlIUG.js";import"./git-branch-CONwEYiR.js";import"./file-text-DsnD-A8g.js";import"./file-CiyVL55_.js";import"./McpAppFrame-BM9cNPPd.js";import"./more-details-CdJT0Ehl.js";const d=s.lazy(()=>p(()=>import("./Model3dViewer-rXSL5y2P.js"),__vite__mapDeps([0,1,2])).then(e=>({default:e.Model3dViewer})));function f(e){var o;const r=(o=e.split(".").pop())==null?void 0:o.toLowerCase();return r==="glb"||r==="gltf"?"gltf":r==="stl"?"stl":r==="obj"?"obj":r==="3mf"?"3mf":r==="ply"?"ply":r==="fbx"?"fbx":r==="dae"?"dae":null}function O({content:e}){const r=a(),o=n(i=>i.selectedCwd),l=s.useMemo(()=>u(e.src,i=>r.mediaUrl(o??"",i)),[e.src,r,o]),m=s.useMemo(()=>f(e.src),[e.src]);return l.url===null||m===null?t.jsx("div",{className:"text-muted-foreground flex h-full items-center justify-center p-8 text-center",children:t.jsx("p",{children:"This 3D model can’t be displayed here."})}):t.jsx("div",{className:"bg-muted/40 h-full w-full",children:t.jsx(s.Suspense,{fallback:t.jsx("div",{className:"text-muted-foreground p-4 text-sm",children:"Loading 3D viewer…"}),children:t.jsx(d,{url:l.url,format:m,label:e.title??"Canvas 3D model"})})})}export{O as CanvasModel3dContent,f as formatOf};
@@ -1,4 +1,4 @@
1
- import{W as m,a1 as x,aW as k,r as v,j as t,B as d,G as p,a7 as y}from"./index-8-iQ6PnT.js";import{u as R}from"./use-update-config-DwtH_H9Z.js";import{I as S}from"./inline-code-D9bLKHjY.js";/**
1
+ import{W as m,a1 as x,aW as k,r as v,j as t,B as d,G as p,a7 as y}from"./index-C3cvP8Fo.js";import{u as R}from"./use-update-config-CkWwKNkY.js";import{I as S}from"./inline-code-BIzGDx6z.js";/**
2
2
  * @license lucide-react v1.48.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1,3 +1,3 @@
1
- import{j as J,r as T}from"./index-8-iQ6PnT.js";import{R as lt}from"./index-CvhR1oZB.js";import{o as Q,E as B,q as ne,C as Ge,S as G,r as Ne,u as Fe,v as st,w as H,x as M,V as ot,F as Ve,y as je,R as N,W as Y,G as oe,z as at,A as ft,B as Ie,H as dt,m as ht,n as ct}from"./index-Czm6C7FZ.js";class v{constructor(e,n,l,i){this.fromA=e,this.toA=n,this.fromB=l,this.toB=i}offset(e,n=e){return new v(this.fromA+e,this.toA+e,this.fromB+n,this.toB+n)}}function y(t,e,n,l,i,r){if(t==l)return[];let s=fe(t,e,n,l,i,r),o=de(t,e+s,n,l,i+s,r);e+=s,n-=o,i+=s,r-=o;let f=n-e,h=r-i;if(!f||!h)return[new v(e,n,i,r)];if(f>h){let d=t.slice(e,n).indexOf(l.slice(i,r));if(d>-1)return[new v(e,e+d,i,i),new v(e+d+h,n,r,r)]}else if(h>f){let d=l.slice(i,r).indexOf(t.slice(e,n));if(d>-1)return[new v(e,e,i,i+d),new v(n,n,i+d+f,r)]}if(f==1||h==1)return[new v(e,n,i,r)];let a=He(t,e,n,l,i,r);if(a){let[d,c,u]=a;return y(t,e,d,l,i,c).concat(y(t,d+u,n,l,c+u,r))}return ut(t,e,n,l,i,r)}let I=1e9,U=0,ae=!1;function ut(t,e,n,l,i,r){let s=n-e,o=r-i;if(I<1e9&&Math.min(s,o)>I*16||U>0&&Date.now()>U)return Math.min(s,o)>I*64?[new v(e,n,i,r)]:ge(t,e,n,l,i,r);let f=Math.ceil((s+o)/2);ee.reset(f),te.reset(f);let h=(u,m)=>t.charCodeAt(e+u)==l.charCodeAt(i+m),a=(u,m)=>t.charCodeAt(n-u-1)==l.charCodeAt(r-m-1),d=(s-o)%2!=0?te:null,c=d?null:ee;for(let u=0;u<f;u++){if(u>I||U>0&&!(u&63)&&Date.now()>U)return ge(t,e,n,l,i,r);let m=ee.advance(u,s,o,f,d,!1,h)||te.advance(u,s,o,f,c,!0,a);if(m)return mt(t,e,n,e+m[0],l,i,r,i+m[1])}return[new v(e,n,i,r)]}class Ue{constructor(){this.vec=[]}reset(e){this.len=e<<1;for(let n=0;n<this.len;n++)this.vec[n]=-1;this.vec[e+1]=0,this.start=this.end=0}advance(e,n,l,i,r,s,o){for(let f=-e+this.start;f<=e-this.end;f+=2){let h=i+f,a=f==-e||f!=e&&this.vec[h-1]<this.vec[h+1]?this.vec[h+1]:this.vec[h-1]+1,d=a-f;for(;a<n&&d<l&&o(a,d);)a++,d++;if(this.vec[h]=a,a>n)this.end+=2;else if(d>l)this.start+=2;else if(r){let c=i+(n-l)-f;if(c>=0&&c<this.len&&r.vec[c]!=-1)if(s){let u=r.vec[c];if(u>=n-a)return[u,i+u-c]}else{let u=n-r.vec[c];if(a>=u)return[a,d]}}}return null}}const ee=new Ue,te=new Ue;function mt(t,e,n,l,i,r,s,o){let f=!1;return!F(t,l)&&++l==n&&(f=!0),!F(i,o)&&++o==s&&(f=!0),f?[new v(e,n,r,s)]:y(t,e,l,i,r,o).concat(y(t,l,n,i,o,s))}function We(t,e){let n=1,l=Math.min(t,e);for(;n<l;)n=n<<1;return n}function fe(t,e,n,l,i,r){if(e==n||e==r||t.charCodeAt(e)!=l.charCodeAt(i))return 0;let s=We(n-e,r-i);for(let o=e,f=i;;){let h=o+s,a=f+s;if(h>n||a>r||t.slice(o,h)!=l.slice(f,a)){if(s==1)return o-e-(F(t,o)?0:1);s=s>>1}else{if(h==n||a==r)return h-e;o=h,f=a}}}function de(t,e,n,l,i,r){if(e==n||i==r||t.charCodeAt(n-1)!=l.charCodeAt(r-1))return 0;let s=We(n-e,r-i);for(let o=n,f=r;;){let h=o-s,a=f-s;if(h<e||a<i||t.slice(h,o)!=l.slice(a,f)){if(s==1)return n-o-(F(t,o)?0:1);s=s>>1}else{if(h==e||a==i)return n-h;o=h,f=a}}}function re(t,e,n,l,i,r,s,o){let f=l.slice(i,r),h=null;for(;;){if(h||s<o)return h;for(let a=e+s;;){F(t,a)||a++;let d=a+s;if(F(t,d)||(d+=d==a+1?1:-1),d>=n)break;let c=t.slice(a,d),u=-1;for(;(u=f.indexOf(c,u+1))!=-1;){let m=fe(t,d,n,l,i+u+c.length,r),p=de(t,e,a,l,i,i+u),g=c.length+m+p;(!h||h[2]<g)&&(h=[a-p,i+u-p,g])}a=d}if(o<0)return h;s=s>>1}}function He(t,e,n,l,i,r){let s=n-e,o=r-i;if(s<o){let f=He(l,i,r,t,e,n);return f&&[f[1],f[0],f[2]]}return s<4||o*2<s?null:re(t,e,n,l,i,r,Math.floor(s/4),-1)}function ge(t,e,n,l,i,r){ae=!0;let s=n-e,o=r-i,f;if(s<o){let c=re(l,i,r,t,e,n,Math.floor(s/6),50);f=c&&[c[1],c[0],c[2]]}else f=re(t,e,n,l,i,r,Math.floor(o/6),50);if(!f)return[new v(e,n,i,r)];let[h,a,d]=f;return y(t,e,h,l,i,a).concat(y(t,h+d,n,l,a+d,r))}function ze(t,e){for(let n=1;n<t.length;n++){let l=t[n-1],i=t[n];l.toA>i.fromA-e&&l.toB>i.fromB-e&&(t[n-1]=new v(l.fromA,i.toA,l.fromB,i.toB),t.splice(n--,1))}}function gt(t,e,n){for(;;){ze(n,1);let l=!1;for(let i=0;i<n.length;i++){let r=n[i],s,o;(s=fe(t,r.fromA,r.toA,e,r.fromB,r.toB))&&(r=n[i]=new v(r.fromA+s,r.toA,r.fromB+s,r.toB)),(o=de(t,r.fromA,r.toA,e,r.fromB,r.toB))&&(r=n[i]=new v(r.fromA,r.toA-o,r.fromB,r.toB-o));let f=r.toA-r.fromA,h=r.toB-r.fromB;if(f&&h)continue;let a=r.fromA-(i?n[i-1].toA:0),d=(i<n.length-1?n[i+1].fromA:t.length)-r.toA;if(!a||!d)continue;let c=f?t.slice(r.fromA,r.toA):e.slice(r.fromB,r.toB);a<=c.length&&t.slice(r.fromA-a,r.fromA)==c.slice(c.length-a)?(n[i]=new v(r.fromA-a,r.toA-a,r.fromB-a,r.toB-a),l=!0):d<=c.length&&t.slice(r.toA,r.toA+d)==c.slice(0,d)&&(n[i]=new v(r.fromA+d,r.toA+d,r.fromB+d,r.toB+d),l=!0)}if(!l)break}return n}function pt(t,e,n){for(let l=0,i=0;i<t.length;i++){let r=t[i],s=r.toA-r.fromA,o=r.toB-r.fromB;if(s&&o||s>3||o>3){let f=i==t.length-1?e.length:t[i+1].fromA,h=r.fromA-l,a=f-r.toA,d=Ce(e,r.fromA,h),c=pe(e,r.toA,a),u=r.fromA-d,m=c-r.toA;if((!s||!o)&&u&&m){let p=Math.max(s,o),[g,C,S]=s?[e,r.fromA,r.toA]:[n,r.fromB,r.toB];p>u&&e.slice(d,r.fromA)==g.slice(S-u,S)?(r=t[i]=new v(d,d+s,r.fromB-u,r.toB-u),d=r.fromA,c=pe(e,r.toA,f-r.toA)):p>m&&e.slice(r.toA,c)==g.slice(C,C+m)&&(r=t[i]=new v(c-s,c,r.fromB+m,r.toB+m),c=r.toA,d=Ce(e,r.fromA,r.fromA-l)),u=r.fromA-d,m=c-r.toA}if(u||m)r=t[i]=new v(r.fromA-u,r.toA+m,r.fromB-u,r.toB+m);else if(s){if(!o){let p=Ae(e,r.fromA,r.toA),g,C=p<0?-1:ve(e,r.toA,r.fromA);p>-1&&(g=p-r.fromA)<=a&&e.slice(r.fromA,p)==e.slice(r.toA,r.toA+g)?r=t[i]=r.offset(g):C>-1&&(g=r.toA-C)<=h&&e.slice(r.fromA-g,r.fromA)==e.slice(C,r.toA)&&(r=t[i]=r.offset(-g))}}else{let p=Ae(n,r.fromB,r.toB),g,C=p<0?-1:ve(n,r.toB,r.fromB);p>-1&&(g=p-r.fromB)<=a&&n.slice(r.fromB,p)==n.slice(r.toB,r.toB+g)?r=t[i]=r.offset(g):C>-1&&(g=r.toB-C)<=h&&n.slice(r.fromB-g,r.fromB)==n.slice(C,r.toB)&&(r=t[i]=r.offset(-g))}}l=r.toA}return ze(t,3),t}let E;try{E=new RegExp("[\\p{Alphabetic}\\p{Number}]","u")}catch{}function Pe(t){return t>48&&t<58||t>64&&t<91||t>96&&t<123}function qe(t,e){if(e==t.length)return 0;let n=t.charCodeAt(e);return n<192?Pe(n)?1:0:E?!Je(n)||e==t.length-1?E.test(String.fromCharCode(n))?1:0:E.test(t.slice(e,e+2))?2:0:0}function _e(t,e){if(!e)return 0;let n=t.charCodeAt(e-1);return n<192?Pe(n)?1:0:E?!Ke(n)||e==1?E.test(String.fromCharCode(n))?1:0:E.test(t.slice(e-2,e))?2:0:0}const $e=8;function pe(t,e,n){if(e==t.length||!_e(t,e))return e;for(let l=e,i=e+n,r=0;r<$e;r++){let s=qe(t,l);if(!s||l+s>i)return l;l+=s}return e}function Ce(t,e,n){if(!e||!qe(t,e))return e;for(let l=e,i=e-n,r=0;r<$e;r++){let s=_e(t,l);if(!s||l-s<i)return l;l-=s}return e}function ve(t,e,n){for(;e!=n;e--)if(t.charCodeAt(e-1)==10)return e;return-1}function Ae(t,e,n){for(;e!=n;e++)if(t.charCodeAt(e)==10)return e;return-1}const Je=t=>t>=55296&&t<=56319,Ke=t=>t>=56320&&t<=57343;function F(t,e){return!e||e==t.length||!Je(t.charCodeAt(e-1))||!Ke(t.charCodeAt(e))}function Ct(t,e,n){var l;let i=n==null?void 0:n.override;return i?i(t,e):(I=((l=n==null?void 0:n.scanLimit)!==null&&l!==void 0?l:1e9)>>1,U=n!=null&&n.timeout?Date.now()+n.timeout:0,ae=!1,gt(t,e,y(t,0,t.length,e,0,e.length)))}function Qe(){return!ae}function Ye(t,e,n){return pt(Ct(t,e,n),t,e)}const b=Ve.define({combine:t=>t[0]}),ie=G.define(),Ze=Ve.define(),k=H.define({create(t){return null},update(t,e){for(let n of e.effects)n.is(ie)&&(t=n.value);for(let n of e.state.facet(Ze))t=n(t,e);return t}});function vt(t){let e=t.field(k,!1);if(!e)return null;let n=t.facet(b);return{chunks:e,side:n?n.side:null}}class O{constructor(e,n,l,i,r,s=!0){this.changes=e,this.fromA=n,this.toA=l,this.fromB=i,this.toB=r,this.precise=s}offset(e,n){return e||n?new O(this.changes,this.fromA+e,this.toA+e,this.fromB+n,this.toB+n,this.precise):this}get endA(){return Math.max(this.fromA,this.toA-1)}get endB(){return Math.max(this.fromB,this.toB-1)}static build(e,n,l){let i=Ye(e.toString(),n.toString(),l);return Xe(i,e,n,0,0,Qe())}static updateA(e,n,l,i,r){return be(Be(e,i,!0,l.length),e,n,l,r)}static updateB(e,n,l,i,r){return be(Be(e,i,!1,n.length),e,n,l,r)}}function xe(t,e,n,l){let i=n.lineAt(t),r=l.lineAt(e);return i.to==t&&r.to==e&&t<n.length&&e<l.length?[t+1,e+1]:[i.from,r.from]}function we(t,e,n,l){let i=n.lineAt(t),r=l.lineAt(e);return i.from==t&&r.from==e?[t,e]:[i.to+1,r.to+1]}function Xe(t,e,n,l,i,r){let s=[];for(let o=0;o<t.length;o++){let f=t[o],[h,a]=xe(f.fromA+l,f.fromB+i,e,n),[d,c]=we(f.toA+l,f.toB+i,e,n),u=[f.offset(-h+l,-a+i)];for(;o<t.length-1;){let m=t[o+1],[p,g]=xe(m.fromA+l,m.fromB+i,e,n);if(p>d+1&&g>c+1)break;u.push(m.offset(-h+l,-a+i)),[d,c]=we(m.toA+l,m.toB+i,e,n),o++}s.push(new O(u,h,Math.max(h,d),a,Math.max(a,c),r))}return s}const z=1e3;function ke(t,e,n,l){let i=0,r=t.length;for(;;){if(i==r){let a=0,d=0;i&&({toA:a,toB:d}=t[i-1]);let c=e-(n?a:d);return[a+c,d+c]}let s=i+r>>1,o=t[s],[f,h]=n?[o.fromA,o.toA]:[o.fromB,o.toB];if(f>e)r=s;else if(h<=e)i=s+1;else return l?[o.fromA,o.fromB]:[o.toA,o.toB]}}function Be(t,e,n,l){let i=[];return e.iterChangedRanges((r,s,o,f)=>{let h=0,a=n?e.length:l,d=0,c=n?l:e.length;r>z&&([h,d]=ke(t,r-z,n,!0)),s<e.length-z&&([a,c]=ke(t,s+z,n,!1));let u=f-o-(s-r),m,[p,g]=n?[u,0]:[0,u];i.length&&(m=i[i.length-1]).toA>=h?i[i.length-1]={fromA:m.fromA,fromB:m.fromB,toA:a,toB:c,diffA:m.diffA+p,diffB:m.diffB+g}:i.push({fromA:h,toA:a,fromB:d,toB:c,diffA:p,diffB:g})}),i}function be(t,e,n,l,i){if(!t.length)return e;let r=[];for(let s=0,o=0,f=0,h=0;;s++){let a=s==t.length?null:t[s],d=a?a.fromA+o:n.length,c=a?a.fromB+f:l.length;for(;h<e.length;){let g=e[h];if(a&&(g.toA+o>d||g.toB+f>c))break;r.push(g.offset(o,f)),h++}if(!a)break;let u=a.toA+o+a.diffA,m=a.toB+f+a.diffB,p=Ye(n.sliceString(d,u),l.sliceString(c,m),i);for(let g of Xe(p,n,l,d,c,Qe()))r.push(g);for(o+=a.diffA,f+=a.diffB;h<e.length;){let g=e[h];if(g.fromA+o>u&&g.fromB+f>m)break;h++}}return r}const et={scanLimit:500},Z=ot.fromClass(class{constructor(t){({deco:this.deco,gutter:this.gutter}=Le(t))}update(t){(t.docChanged||t.viewportChanged||At(t.startState,t.state)||xt(t.startState,t.state))&&({deco:this.deco,gutter:this.gutter}=Le(t.view))}},{decorations:t=>t.deco}),P=Q.low(je({class:"cm-changeGutter",markers:t=>{var e;return((e=t.plugin(Z))===null||e===void 0?void 0:e.gutter)||Ie.empty}}));function At(t,e){return t.field(k,!1)!=e.field(k,!1)}function xt(t,e){return t.facet(b)!=e.facet(b)}const Me=M.line({class:"cm-changedLine"}),tt=M.mark({class:"cm-changedText"}),wt=M.mark({tagName:"ins",class:"cm-insertedLine"}),kt=M.mark({tagName:"del",class:"cm-deletedLine"}),De=new class extends oe{constructor(){super(...arguments),this.elementClass="cm-changedLineGutter"}};function Bt(t,e,n,l,i,r){let s=n?t.fromA:t.fromB,o=n?t.toA:t.toB,f=0;if(s!=o){i.add(s,s,Me),i.add(s,o,n?kt:wt),r&&r.add(s,s,De);for(let h=e.iterRange(s,o-1),a=s;!h.next().done;){if(h.lineBreak){a++,i.add(a,a,Me),r&&r.add(a,a,De);continue}let d=a+h.value.length;if(l)for(;f<t.changes.length;){let c=t.changes[f],u=s+(n?c.fromA:c.fromB),m=s+(n?c.toA:c.toB),p=Math.max(a,u),g=Math.min(d,m);if(p<g&&i.add(p,g,tt),m<d)f++;else break}a=d}}}function Le(t){let e=t.state.field(k),{side:n,highlightChanges:l,markGutter:i,overrideChunk:r}=t.state.facet(b),s=n=="a",o=new N,f=i?new N:null,{from:h,to:a}=t.viewport;for(let d of e){if((s?d.fromA:d.fromB)>=a)break;(s?d.toA:d.toB)>h&&(!r||!r(t.state,d,o,f))&&Bt(d,t.state.doc,s,l,o,f)}return{deco:o.finish(),gutter:f&&f.finish()}}class q extends Y{constructor(e){super(),this.height=e}eq(e){return this.height==e.height}toDOM(){let e=document.createElement("div");return e.className="cm-mergeSpacer",e.style.height=this.height+"px",e}updateDOM(e){return e.style.height=this.height+"px",!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}}const K=G.define({map:(t,e)=>t.map(e)}),W=H.define({create:()=>M.none,update:(t,e)=>{for(let n of e.effects)if(n.is(K))return n.value;return t.map(e.changes)},provide:t=>B.decorations.from(t)}),_=.01;function Se(t,e){if(t.size!=e.size)return!1;let n=t.iter(),l=e.iter();for(;n.value;){if(n.from!=l.from||Math.abs(n.value.spec.widget.height-l.value.spec.widget.height)>1)return!1;n.next(),l.next()}return!0}function bt(t,e,n){let l=new N,i=new N,r=t.state.field(W).iter(),s=e.state.field(W).iter(),o=0,f=0,h=0,a=0,d=t.viewport,c=e.viewport;for(let g=0;;g++){let C=g<n.length?n[g]:null,S=C?C.fromA:t.state.doc.length,R=C?C.fromB:e.state.doc.length;if(o<S){let x=t.lineBlockAt(o).top+h,D=e.lineBlockAt(f).top+a,w=x-D;w<-_?(h-=w,l.add(o,o,M.widget({widget:new q(-w),block:!0,side:-1}))):w>_&&(a+=w,i.add(f,f,M.widget({widget:new q(w),block:!0,side:-1})))}if(S>o+1e3&&o<d.from&&S>d.from&&f<c.from&&R>c.from){let x=Math.min(d.from-o,c.from-f);o+=x,f+=x,g--}else if(C)o=C.toA,f=C.toB;else break;for(;r.value&&r.from<o;)h-=r.value.spec.widget.height,r.next();for(;s.value&&s.from<f;)a-=s.value.spec.widget.height,s.next()}for(;r.value;)h-=r.value.spec.widget.height,r.next();for(;s.value;)a-=s.value.spec.widget.height,s.next();let u=t.contentHeight+h-(e.contentHeight+a);u<_?l.add(t.state.doc.length,t.state.doc.length,M.widget({widget:new q(-u),block:!0,side:1})):u>_&&i.add(e.state.doc.length,e.state.doc.length,M.widget({widget:new q(u),block:!0,side:1}));let m=l.finish(),p=i.finish();Se(m,t.state.field(W))||t.dispatch({effects:K.of(m)}),Se(p,e.state.field(W))||e.dispatch({effects:K.of(p)})}const le=G.define({map:(t,e)=>e.mapPos(t)});class Mt extends Y{constructor(e){super(),this.lines=e}eq(e){return this.lines==e.lines}toDOM(e){let n=document.createElement("div");return n.className="cm-collapsedLines",n.textContent=e.state.phrase("$ unchanged lines",this.lines),n.addEventListener("click",l=>{let i=e.posAtDOM(l.target);e.dispatch({effects:le.of(i)});let{side:r,sibling:s}=e.state.facet(b);s&&s().dispatch({effects:le.of(Dt(i,e.state.field(k),r=="a"))})}),n}ignoreEvent(e){return e instanceof MouseEvent}get estimatedHeight(){return 27}get type(){return"collapsed-unchanged-code"}}function Dt(t,e,n){let l=0,i=0;for(let r=0;;r++){let s=r<e.length?e[r]:null;if(!s||(n?s.fromA:s.fromB)>=t)return i+(t-l);[l,i]=n?[s.toA,s.toB]:[s.toB,s.toA]}}const Lt=H.define({create(t){return M.none},update(t,e){t=t.map(e.changes);for(let n of e.effects)n.is(le)&&(t=t.update({filter:l=>l!=n.value}));if(t.size&&e.state.field(k)!=e.startState.field(k,!1)){let n=e.state.facet(b).side=="a",l=[];for(let i of e.state.field(k))t.between(n?i.fromA:i.fromB,n?i.toA:i.toB,r=>{l.push(r)});l.length&&(t=t.update({filter:i=>l.indexOf(i)<0}))}return t},provide:t=>B.decorations.from(t)});function se({margin:t=3,minSize:e=4}){return Lt.init(n=>St(n,t,e))}function St(t,e,n){let l=new N,i=t.facet(b).side=="a",r=t.field(k),s=1;for(let o=0;;o++){let f=o<r.length?r[o]:null,h=o?s+e:1,a=f?t.doc.lineAt(i?f.fromA:f.fromB).number-1-e:t.doc.lines,d=a-h+1;if(d>=n&&l.add(t.doc.line(h).from,t.doc.line(a).to,M.replace({widget:new Mt(d),block:!0})),!f)break;s=t.doc.lineAt(Math.min(t.doc.length,i?f.toA:f.toB)).number}return l.finish()}const Ot=B.styleModule.of(new st({".cm-mergeView":{overflowY:"auto"},".cm-mergeViewEditors":{display:"flex",alignItems:"stretch"},".cm-mergeViewEditor":{flexGrow:1,flexBasis:0,overflow:"hidden"},".cm-merge-revert":{width:"1.6em",flexGrow:0,flexShrink:0,position:"relative"},".cm-merge-revert button":{position:"absolute",display:"block",width:"100%",boxSizing:"border-box",textAlign:"center",background:"none",border:"none",font:"inherit",cursor:"pointer"}})),nt=B.baseTheme({".cm-mergeView & .cm-scroller, .cm-mergeView &":{height:"auto !important",overflowY:"visible !important"},"&.cm-merge-a .cm-changedLine, .cm-deletedChunk":{backgroundColor:"rgba(160, 128, 100, .08)"},"&.cm-merge-b .cm-changedLine, .cm-inlineChangedLine":{backgroundColor:"rgba(100, 160, 128, .08)"},"&light.cm-merge-a .cm-changedText, &light .cm-deletedChunk .cm-deletedText":{background:"linear-gradient(#ee443366, #ee443366) bottom/100% 2px no-repeat"},"&dark.cm-merge-a .cm-changedText, &dark .cm-deletedChunk .cm-deletedText":{background:"linear-gradient(#ffaa9966, #ffaa9966) bottom/100% 2px no-repeat"},"&light.cm-merge-b .cm-changedText":{background:"linear-gradient(#22bb22aa, #22bb22aa) bottom/100% 2px no-repeat"},"&dark.cm-merge-b .cm-changedText":{background:"linear-gradient(#88ff88aa, #88ff88aa) bottom/100% 2px no-repeat"},"&.cm-merge-b .cm-deletedText":{background:"#ff000033"},".cm-insertedLine, .cm-deletedLine, .cm-deletedLine del":{textDecoration:"none"},".cm-deletedChunk":{paddingLeft:"6px","& .cm-chunkButtons":{position:"absolute",insetInlineEnd:"5px"},"& button":{border:"none",cursor:"pointer",color:"white",margin:"0 2px",borderRadius:"3px","&[name=accept]":{background:"#2a2"},"&[name=reject]":{background:"#d43"}}},".cm-collapsedLines":{padding:"5px 5px 5px 10px",cursor:"pointer","&:before":{content:'"⦚"',marginInlineEnd:"7px"},"&:after":{content:'"⦚"',marginInlineStart:"7px"}},"&light .cm-collapsedLines":{color:"#444",background:"linear-gradient(to bottom, transparent 0, #f3f3f3 30%, #f3f3f3 70%, transparent 100%)"},"&dark .cm-collapsedLines":{color:"#ddd",background:"linear-gradient(to bottom, transparent 0, #222 30%, #222 70%, transparent 100%)"},".cm-changeGutter":{width:"3px",paddingLeft:"1px"},"&light.cm-merge-a .cm-changedLineGutter, &light .cm-deletedLineGutter":{background:"#e43"},"&dark.cm-merge-a .cm-changedLineGutter, &dark .cm-deletedLineGutter":{background:"#fa9"},"&light.cm-merge-b .cm-changedLineGutter":{background:"#2b2"},"&dark.cm-merge-b .cm-changedLineGutter":{background:"#8f8"},".cm-inlineChangedLineGutter":{background:"#75d"}}),Oe=new Ge,$=new Ge;class Et{constructor(e){this.revertDOM=null,this.revertToA=!1,this.revertToLeft=!1,this.measuring=-1,this.diffConf=e.diffConfig||et;let n=[Q.low(Z),nt,Ot,W,B.updateListener.of(d=>{this.measuring<0&&(d.heightChanged||d.viewportChanged)&&!d.transactions.some(c=>c.effects.some(u=>u.is(K)))&&this.measure()})],l=[b.of({side:"a",sibling:()=>this.b,highlightChanges:e.highlightChanges!==!1,markGutter:e.gutter!==!1})];e.gutter!==!1&&l.push(P);let i=ne.create({doc:e.a.doc,selection:e.a.selection,extensions:[e.a.extensions||[],B.editorAttributes.of({class:"cm-merge-a"}),$.of(l),n]}),r=[b.of({side:"b",sibling:()=>this.a,highlightChanges:e.highlightChanges!==!1,markGutter:e.gutter!==!1})];e.gutter!==!1&&r.push(P);let s=ne.create({doc:e.b.doc,selection:e.b.selection,extensions:[e.b.extensions||[],B.editorAttributes.of({class:"cm-merge-b"}),$.of(r),n]});this.chunks=O.build(i.doc,s.doc,this.diffConf);let o=[k.init(()=>this.chunks),Oe.of(e.collapseUnchanged?se(e.collapseUnchanged):[])];i=i.update({effects:G.appendConfig.of(o)}).state,s=s.update({effects:G.appendConfig.of(o)}).state,this.dom=document.createElement("div"),this.dom.className="cm-mergeView",this.editorDOM=this.dom.appendChild(document.createElement("div")),this.editorDOM.className="cm-mergeViewEditors";let f=e.orientation||"a-b",h=document.createElement("div");h.className="cm-mergeViewEditor";let a=document.createElement("div");a.className="cm-mergeViewEditor",this.editorDOM.appendChild(f=="a-b"?h:a),this.editorDOM.appendChild(f=="a-b"?a:h),this.a=new B({state:i,parent:h,root:e.root,dispatchTransactions:d=>this.dispatch(d,this.a)}),this.b=new B({state:s,parent:a,root:e.root,dispatchTransactions:d=>this.dispatch(d,this.b)}),this.setupRevertControls(!!e.revertControls,e.revertControls=="b-to-a",e.renderRevertControl),e.parent&&e.parent.appendChild(this.dom),this.scheduleMeasure()}dispatch(e,n){if(e.some(l=>l.docChanged)){let l=e[e.length-1],i=e.reduce((s,o)=>s.compose(o.changes),Ne.empty(e[0].startState.doc.length));this.chunks=n==this.a?O.updateA(this.chunks,l.newDoc,this.b.state.doc,i,this.diffConf):O.updateB(this.chunks,this.a.state.doc,l.newDoc,i,this.diffConf),n.update([...e,l.state.update({effects:ie.of(this.chunks)})]);let r=n==this.a?this.b:this.a;r.update([r.state.update({effects:ie.of(this.chunks)})]),this.scheduleMeasure()}else n.update(e)}reconfigure(e){if("diffConfig"in e&&(this.diffConf=e.diffConfig),"orientation"in e){let r=e.orientation!="b-a";if(r!=(this.editorDOM.firstChild==this.a.dom.parentNode)){let s=this.a.dom.parentNode,o=this.b.dom.parentNode;s.remove(),o.remove(),this.editorDOM.insertBefore(r?s:o,this.editorDOM.firstChild),this.editorDOM.appendChild(r?o:s),this.revertToLeft=!this.revertToLeft,this.revertDOM&&(this.revertDOM.textContent="")}}if("revertControls"in e||"renderRevertControl"in e){let r=!!this.revertDOM,s=this.revertToA,o=this.renderRevert;"revertControls"in e&&(r=!!e.revertControls,s=e.revertControls=="b-to-a"),"renderRevertControl"in e&&(o=e.renderRevertControl),this.setupRevertControls(r,s,o)}let n="highlightChanges"in e,l="gutter"in e,i="collapseUnchanged"in e;if(n||l||i){let r=[],s=[];if(n||l){let o=this.a.state.facet(b),f=l?e.gutter!==!1:o.markGutter,h=n?e.highlightChanges!==!1:o.highlightChanges;r.push($.reconfigure([b.of({side:"a",sibling:()=>this.b,highlightChanges:h,markGutter:f}),f?P:[]])),s.push($.reconfigure([b.of({side:"b",sibling:()=>this.a,highlightChanges:h,markGutter:f}),f?P:[]]))}if(i){let o=Oe.reconfigure(e.collapseUnchanged?se(e.collapseUnchanged):[]);r.push(o),s.push(o)}this.a.dispatch({effects:r}),this.b.dispatch({effects:s})}this.scheduleMeasure()}setupRevertControls(e,n,l){this.revertToA=n,this.revertToLeft=this.revertToA==(this.editorDOM.firstChild==this.a.dom.parentNode),this.renderRevert=l,!e&&this.revertDOM?(this.revertDOM.remove(),this.revertDOM=null):e&&!this.revertDOM?(this.revertDOM=this.editorDOM.insertBefore(document.createElement("div"),this.editorDOM.firstChild.nextSibling),this.revertDOM.addEventListener("mousedown",i=>this.revertClicked(i)),this.revertDOM.className="cm-merge-revert"):this.revertDOM&&(this.revertDOM.textContent="")}scheduleMeasure(){if(this.measuring<0){let e=this.dom.ownerDocument.defaultView||window;this.measuring=e.requestAnimationFrame(()=>{this.measuring=-1,this.measure()})}}measure(){bt(this.a,this.b,this.chunks),this.revertDOM&&this.updateRevertButtons()}updateRevertButtons(){let e=this.revertDOM,n=e.firstChild,l=this.a.viewport,i=this.b.viewport;for(let r=0;r<this.chunks.length;r++){let s=this.chunks[r];if(s.fromA>l.to||s.fromB>i.to)break;if(s.fromA<l.from||s.fromB<i.from)continue;let o=this.a.lineBlockAt(s.fromA).top+"px";for(;n&&+n.dataset.chunk<r;)n=Ee(n);n&&n.dataset.chunk==String(r)?(n.style.top!=o&&(n.style.top=o),n=n.nextSibling):e.insertBefore(this.renderRevertButton(o,r),n)}for(;n;)n=Ee(n)}renderRevertButton(e,n){let l;if(this.renderRevert)l=this.renderRevert();else{l=document.createElement("button");let i=this.a.state.phrase("Revert this chunk");l.setAttribute("aria-label",i),l.setAttribute("title",i),l.textContent=this.revertToLeft?"⇜":"⇝"}return l.style.top=e,l.setAttribute("data-chunk",String(n)),l}revertClicked(e){let n=e.target,l;for(;n&&n.parentNode!=this.revertDOM;)n=n.parentNode;if(n&&(l=this.chunks[n.dataset.chunk])){let[i,r,s,o,f,h]=this.revertToA?[this.b,this.a,l.fromB,l.toB,l.fromA,l.toA]:[this.a,this.b,l.fromA,l.toA,l.fromB,l.toB],a=i.state.sliceDoc(s,Math.max(s,o-1));s!=o&&h<=r.state.doc.length&&(a+=i.state.lineBreak),r.dispatch({changes:{from:f,to:Math.min(r.state.doc.length,h),insert:a},userEvent:"revert"}),e.preventDefault()}}destroy(){this.a.destroy(),this.b.destroy(),this.measuring>-1&&(this.dom.ownerDocument.defaultView||window).cancelAnimationFrame(this.measuring),this.dom.remove()}}function Ee(t){let e=t.nextSibling;return t.remove(),e}const yt=new class extends oe{constructor(){super(...arguments),this.elementClass="cm-deletedLineGutter"}},Rt=Q.low(je({class:"cm-changeGutter",markers:t=>{var e;return((e=t.plugin(Z))===null||e===void 0?void 0:e.gutter)||Ie.empty},widgetMarker:(t,e)=>e instanceof rt?yt:null}));function Tt(t){var e;let n=typeof t.original=="string"?Fe.of(t.original.split(/\r?\n/)):t.original,l=t.diffConfig||et;return[Q.low(Z),Vt,nt,B.editorAttributes.of({class:"cm-merge-b"}),Ze.of((i,r)=>{let s=r.effects.find(o=>o.is(he));return s&&(i=O.updateA(i,s.value.doc,r.startState.doc,s.value.changes,l)),r.docChanged&&(i=O.updateB(i,r.state.field(V),r.newDoc,r.changes,l)),i}),b.of({highlightChanges:t.highlightChanges!==!1,markGutter:t.gutter!==!1,syntaxHighlightDeletions:t.syntaxHighlightDeletions!==!1,syntaxHighlightDeletionsMaxLength:3e3,mergeControls:(e=t.mergeControls)!==null&&e!==void 0?e:!0,overrideChunk:t.allowInlineDiffs?Wt:void 0,side:"b"}),V.init(()=>n),t.gutter!==!1?Rt:[],t.collapseUnchanged?se(t.collapseUnchanged):[],k.init(i=>O.build(n,i.doc,l))]}const he=G.define(),V=H.define({create:()=>Fe.empty,update(t,e){for(let n of e.effects)n.is(he)&&(t=n.value.doc);return t}}),ye=new WeakMap;class rt extends Y{constructor(e){super(),this.buildDOM=e,this.dom=null}eq(e){return this.dom==e.dom}toDOM(e){return this.dom||(this.dom=this.buildDOM(e))}}function Gt(t,e,n){let l=ye.get(e.changes);if(l)return l;let i=s=>{let{highlightChanges:o,syntaxHighlightDeletions:f,syntaxHighlightDeletionsMaxLength:h,mergeControls:a}=t.facet(b),d=document.createElement("div");if(d.className="cm-deletedChunk",a){let x=d.appendChild(document.createElement("div"));x.className="cm-chunkButtons";let D=A=>{A.preventDefault(),Nt(s,s.posAtDOM(d))},w=A=>{A.preventDefault(),Ft(s,s.posAtDOM(d))};if(typeof a=="function")x.appendChild(a("accept",D)),x.appendChild(a("reject",w));else{let A=x.appendChild(document.createElement("button"));A.name="accept",A.textContent=t.phrase("Accept"),A.onmousedown=D;let L=x.appendChild(document.createElement("button"));L.name="reject",L.textContent=t.phrase("Reject"),L.onmousedown=w}}if(n||e.fromA>=e.toA)return d;let c=s.state.field(V).sliceString(e.fromA,e.endA),u=f&&t.facet(at),m=S(),p=e.changes,g=0,C=!1;function S(){let x=d.appendChild(document.createElement("div"));return x.className="cm-deletedLine",x.appendChild(document.createElement("del"))}function R(x,D,w){for(let A=x;A<D;){if(c.charAt(A)==`
1
+ import{j as J,r as T}from"./index-C3cvP8Fo.js";import{R as lt}from"./index-BDD2EyoW.js";import{o as Q,E as B,q as ne,C as Ge,S as G,r as Ne,u as Fe,v as st,w as H,x as M,V as ot,F as Ve,y as je,R as N,W as Y,G as oe,z as at,A as ft,B as Ie,H as dt,m as ht,n as ct}from"./index-DabU6r9W.js";class v{constructor(e,n,l,i){this.fromA=e,this.toA=n,this.fromB=l,this.toB=i}offset(e,n=e){return new v(this.fromA+e,this.toA+e,this.fromB+n,this.toB+n)}}function y(t,e,n,l,i,r){if(t==l)return[];let s=fe(t,e,n,l,i,r),o=de(t,e+s,n,l,i+s,r);e+=s,n-=o,i+=s,r-=o;let f=n-e,h=r-i;if(!f||!h)return[new v(e,n,i,r)];if(f>h){let d=t.slice(e,n).indexOf(l.slice(i,r));if(d>-1)return[new v(e,e+d,i,i),new v(e+d+h,n,r,r)]}else if(h>f){let d=l.slice(i,r).indexOf(t.slice(e,n));if(d>-1)return[new v(e,e,i,i+d),new v(n,n,i+d+f,r)]}if(f==1||h==1)return[new v(e,n,i,r)];let a=He(t,e,n,l,i,r);if(a){let[d,c,u]=a;return y(t,e,d,l,i,c).concat(y(t,d+u,n,l,c+u,r))}return ut(t,e,n,l,i,r)}let I=1e9,U=0,ae=!1;function ut(t,e,n,l,i,r){let s=n-e,o=r-i;if(I<1e9&&Math.min(s,o)>I*16||U>0&&Date.now()>U)return Math.min(s,o)>I*64?[new v(e,n,i,r)]:ge(t,e,n,l,i,r);let f=Math.ceil((s+o)/2);ee.reset(f),te.reset(f);let h=(u,m)=>t.charCodeAt(e+u)==l.charCodeAt(i+m),a=(u,m)=>t.charCodeAt(n-u-1)==l.charCodeAt(r-m-1),d=(s-o)%2!=0?te:null,c=d?null:ee;for(let u=0;u<f;u++){if(u>I||U>0&&!(u&63)&&Date.now()>U)return ge(t,e,n,l,i,r);let m=ee.advance(u,s,o,f,d,!1,h)||te.advance(u,s,o,f,c,!0,a);if(m)return mt(t,e,n,e+m[0],l,i,r,i+m[1])}return[new v(e,n,i,r)]}class Ue{constructor(){this.vec=[]}reset(e){this.len=e<<1;for(let n=0;n<this.len;n++)this.vec[n]=-1;this.vec[e+1]=0,this.start=this.end=0}advance(e,n,l,i,r,s,o){for(let f=-e+this.start;f<=e-this.end;f+=2){let h=i+f,a=f==-e||f!=e&&this.vec[h-1]<this.vec[h+1]?this.vec[h+1]:this.vec[h-1]+1,d=a-f;for(;a<n&&d<l&&o(a,d);)a++,d++;if(this.vec[h]=a,a>n)this.end+=2;else if(d>l)this.start+=2;else if(r){let c=i+(n-l)-f;if(c>=0&&c<this.len&&r.vec[c]!=-1)if(s){let u=r.vec[c];if(u>=n-a)return[u,i+u-c]}else{let u=n-r.vec[c];if(a>=u)return[a,d]}}}return null}}const ee=new Ue,te=new Ue;function mt(t,e,n,l,i,r,s,o){let f=!1;return!F(t,l)&&++l==n&&(f=!0),!F(i,o)&&++o==s&&(f=!0),f?[new v(e,n,r,s)]:y(t,e,l,i,r,o).concat(y(t,l,n,i,o,s))}function We(t,e){let n=1,l=Math.min(t,e);for(;n<l;)n=n<<1;return n}function fe(t,e,n,l,i,r){if(e==n||e==r||t.charCodeAt(e)!=l.charCodeAt(i))return 0;let s=We(n-e,r-i);for(let o=e,f=i;;){let h=o+s,a=f+s;if(h>n||a>r||t.slice(o,h)!=l.slice(f,a)){if(s==1)return o-e-(F(t,o)?0:1);s=s>>1}else{if(h==n||a==r)return h-e;o=h,f=a}}}function de(t,e,n,l,i,r){if(e==n||i==r||t.charCodeAt(n-1)!=l.charCodeAt(r-1))return 0;let s=We(n-e,r-i);for(let o=n,f=r;;){let h=o-s,a=f-s;if(h<e||a<i||t.slice(h,o)!=l.slice(a,f)){if(s==1)return n-o-(F(t,o)?0:1);s=s>>1}else{if(h==e||a==i)return n-h;o=h,f=a}}}function re(t,e,n,l,i,r,s,o){let f=l.slice(i,r),h=null;for(;;){if(h||s<o)return h;for(let a=e+s;;){F(t,a)||a++;let d=a+s;if(F(t,d)||(d+=d==a+1?1:-1),d>=n)break;let c=t.slice(a,d),u=-1;for(;(u=f.indexOf(c,u+1))!=-1;){let m=fe(t,d,n,l,i+u+c.length,r),p=de(t,e,a,l,i,i+u),g=c.length+m+p;(!h||h[2]<g)&&(h=[a-p,i+u-p,g])}a=d}if(o<0)return h;s=s>>1}}function He(t,e,n,l,i,r){let s=n-e,o=r-i;if(s<o){let f=He(l,i,r,t,e,n);return f&&[f[1],f[0],f[2]]}return s<4||o*2<s?null:re(t,e,n,l,i,r,Math.floor(s/4),-1)}function ge(t,e,n,l,i,r){ae=!0;let s=n-e,o=r-i,f;if(s<o){let c=re(l,i,r,t,e,n,Math.floor(s/6),50);f=c&&[c[1],c[0],c[2]]}else f=re(t,e,n,l,i,r,Math.floor(o/6),50);if(!f)return[new v(e,n,i,r)];let[h,a,d]=f;return y(t,e,h,l,i,a).concat(y(t,h+d,n,l,a+d,r))}function ze(t,e){for(let n=1;n<t.length;n++){let l=t[n-1],i=t[n];l.toA>i.fromA-e&&l.toB>i.fromB-e&&(t[n-1]=new v(l.fromA,i.toA,l.fromB,i.toB),t.splice(n--,1))}}function gt(t,e,n){for(;;){ze(n,1);let l=!1;for(let i=0;i<n.length;i++){let r=n[i],s,o;(s=fe(t,r.fromA,r.toA,e,r.fromB,r.toB))&&(r=n[i]=new v(r.fromA+s,r.toA,r.fromB+s,r.toB)),(o=de(t,r.fromA,r.toA,e,r.fromB,r.toB))&&(r=n[i]=new v(r.fromA,r.toA-o,r.fromB,r.toB-o));let f=r.toA-r.fromA,h=r.toB-r.fromB;if(f&&h)continue;let a=r.fromA-(i?n[i-1].toA:0),d=(i<n.length-1?n[i+1].fromA:t.length)-r.toA;if(!a||!d)continue;let c=f?t.slice(r.fromA,r.toA):e.slice(r.fromB,r.toB);a<=c.length&&t.slice(r.fromA-a,r.fromA)==c.slice(c.length-a)?(n[i]=new v(r.fromA-a,r.toA-a,r.fromB-a,r.toB-a),l=!0):d<=c.length&&t.slice(r.toA,r.toA+d)==c.slice(0,d)&&(n[i]=new v(r.fromA+d,r.toA+d,r.fromB+d,r.toB+d),l=!0)}if(!l)break}return n}function pt(t,e,n){for(let l=0,i=0;i<t.length;i++){let r=t[i],s=r.toA-r.fromA,o=r.toB-r.fromB;if(s&&o||s>3||o>3){let f=i==t.length-1?e.length:t[i+1].fromA,h=r.fromA-l,a=f-r.toA,d=Ce(e,r.fromA,h),c=pe(e,r.toA,a),u=r.fromA-d,m=c-r.toA;if((!s||!o)&&u&&m){let p=Math.max(s,o),[g,C,S]=s?[e,r.fromA,r.toA]:[n,r.fromB,r.toB];p>u&&e.slice(d,r.fromA)==g.slice(S-u,S)?(r=t[i]=new v(d,d+s,r.fromB-u,r.toB-u),d=r.fromA,c=pe(e,r.toA,f-r.toA)):p>m&&e.slice(r.toA,c)==g.slice(C,C+m)&&(r=t[i]=new v(c-s,c,r.fromB+m,r.toB+m),c=r.toA,d=Ce(e,r.fromA,r.fromA-l)),u=r.fromA-d,m=c-r.toA}if(u||m)r=t[i]=new v(r.fromA-u,r.toA+m,r.fromB-u,r.toB+m);else if(s){if(!o){let p=Ae(e,r.fromA,r.toA),g,C=p<0?-1:ve(e,r.toA,r.fromA);p>-1&&(g=p-r.fromA)<=a&&e.slice(r.fromA,p)==e.slice(r.toA,r.toA+g)?r=t[i]=r.offset(g):C>-1&&(g=r.toA-C)<=h&&e.slice(r.fromA-g,r.fromA)==e.slice(C,r.toA)&&(r=t[i]=r.offset(-g))}}else{let p=Ae(n,r.fromB,r.toB),g,C=p<0?-1:ve(n,r.toB,r.fromB);p>-1&&(g=p-r.fromB)<=a&&n.slice(r.fromB,p)==n.slice(r.toB,r.toB+g)?r=t[i]=r.offset(g):C>-1&&(g=r.toB-C)<=h&&n.slice(r.fromB-g,r.fromB)==n.slice(C,r.toB)&&(r=t[i]=r.offset(-g))}}l=r.toA}return ze(t,3),t}let E;try{E=new RegExp("[\\p{Alphabetic}\\p{Number}]","u")}catch{}function Pe(t){return t>48&&t<58||t>64&&t<91||t>96&&t<123}function qe(t,e){if(e==t.length)return 0;let n=t.charCodeAt(e);return n<192?Pe(n)?1:0:E?!Je(n)||e==t.length-1?E.test(String.fromCharCode(n))?1:0:E.test(t.slice(e,e+2))?2:0:0}function _e(t,e){if(!e)return 0;let n=t.charCodeAt(e-1);return n<192?Pe(n)?1:0:E?!Ke(n)||e==1?E.test(String.fromCharCode(n))?1:0:E.test(t.slice(e-2,e))?2:0:0}const $e=8;function pe(t,e,n){if(e==t.length||!_e(t,e))return e;for(let l=e,i=e+n,r=0;r<$e;r++){let s=qe(t,l);if(!s||l+s>i)return l;l+=s}return e}function Ce(t,e,n){if(!e||!qe(t,e))return e;for(let l=e,i=e-n,r=0;r<$e;r++){let s=_e(t,l);if(!s||l-s<i)return l;l-=s}return e}function ve(t,e,n){for(;e!=n;e--)if(t.charCodeAt(e-1)==10)return e;return-1}function Ae(t,e,n){for(;e!=n;e++)if(t.charCodeAt(e)==10)return e;return-1}const Je=t=>t>=55296&&t<=56319,Ke=t=>t>=56320&&t<=57343;function F(t,e){return!e||e==t.length||!Je(t.charCodeAt(e-1))||!Ke(t.charCodeAt(e))}function Ct(t,e,n){var l;let i=n==null?void 0:n.override;return i?i(t,e):(I=((l=n==null?void 0:n.scanLimit)!==null&&l!==void 0?l:1e9)>>1,U=n!=null&&n.timeout?Date.now()+n.timeout:0,ae=!1,gt(t,e,y(t,0,t.length,e,0,e.length)))}function Qe(){return!ae}function Ye(t,e,n){return pt(Ct(t,e,n),t,e)}const b=Ve.define({combine:t=>t[0]}),ie=G.define(),Ze=Ve.define(),k=H.define({create(t){return null},update(t,e){for(let n of e.effects)n.is(ie)&&(t=n.value);for(let n of e.state.facet(Ze))t=n(t,e);return t}});function vt(t){let e=t.field(k,!1);if(!e)return null;let n=t.facet(b);return{chunks:e,side:n?n.side:null}}class O{constructor(e,n,l,i,r,s=!0){this.changes=e,this.fromA=n,this.toA=l,this.fromB=i,this.toB=r,this.precise=s}offset(e,n){return e||n?new O(this.changes,this.fromA+e,this.toA+e,this.fromB+n,this.toB+n,this.precise):this}get endA(){return Math.max(this.fromA,this.toA-1)}get endB(){return Math.max(this.fromB,this.toB-1)}static build(e,n,l){let i=Ye(e.toString(),n.toString(),l);return Xe(i,e,n,0,0,Qe())}static updateA(e,n,l,i,r){return be(Be(e,i,!0,l.length),e,n,l,r)}static updateB(e,n,l,i,r){return be(Be(e,i,!1,n.length),e,n,l,r)}}function xe(t,e,n,l){let i=n.lineAt(t),r=l.lineAt(e);return i.to==t&&r.to==e&&t<n.length&&e<l.length?[t+1,e+1]:[i.from,r.from]}function we(t,e,n,l){let i=n.lineAt(t),r=l.lineAt(e);return i.from==t&&r.from==e?[t,e]:[i.to+1,r.to+1]}function Xe(t,e,n,l,i,r){let s=[];for(let o=0;o<t.length;o++){let f=t[o],[h,a]=xe(f.fromA+l,f.fromB+i,e,n),[d,c]=we(f.toA+l,f.toB+i,e,n),u=[f.offset(-h+l,-a+i)];for(;o<t.length-1;){let m=t[o+1],[p,g]=xe(m.fromA+l,m.fromB+i,e,n);if(p>d+1&&g>c+1)break;u.push(m.offset(-h+l,-a+i)),[d,c]=we(m.toA+l,m.toB+i,e,n),o++}s.push(new O(u,h,Math.max(h,d),a,Math.max(a,c),r))}return s}const z=1e3;function ke(t,e,n,l){let i=0,r=t.length;for(;;){if(i==r){let a=0,d=0;i&&({toA:a,toB:d}=t[i-1]);let c=e-(n?a:d);return[a+c,d+c]}let s=i+r>>1,o=t[s],[f,h]=n?[o.fromA,o.toA]:[o.fromB,o.toB];if(f>e)r=s;else if(h<=e)i=s+1;else return l?[o.fromA,o.fromB]:[o.toA,o.toB]}}function Be(t,e,n,l){let i=[];return e.iterChangedRanges((r,s,o,f)=>{let h=0,a=n?e.length:l,d=0,c=n?l:e.length;r>z&&([h,d]=ke(t,r-z,n,!0)),s<e.length-z&&([a,c]=ke(t,s+z,n,!1));let u=f-o-(s-r),m,[p,g]=n?[u,0]:[0,u];i.length&&(m=i[i.length-1]).toA>=h?i[i.length-1]={fromA:m.fromA,fromB:m.fromB,toA:a,toB:c,diffA:m.diffA+p,diffB:m.diffB+g}:i.push({fromA:h,toA:a,fromB:d,toB:c,diffA:p,diffB:g})}),i}function be(t,e,n,l,i){if(!t.length)return e;let r=[];for(let s=0,o=0,f=0,h=0;;s++){let a=s==t.length?null:t[s],d=a?a.fromA+o:n.length,c=a?a.fromB+f:l.length;for(;h<e.length;){let g=e[h];if(a&&(g.toA+o>d||g.toB+f>c))break;r.push(g.offset(o,f)),h++}if(!a)break;let u=a.toA+o+a.diffA,m=a.toB+f+a.diffB,p=Ye(n.sliceString(d,u),l.sliceString(c,m),i);for(let g of Xe(p,n,l,d,c,Qe()))r.push(g);for(o+=a.diffA,f+=a.diffB;h<e.length;){let g=e[h];if(g.fromA+o>u&&g.fromB+f>m)break;h++}}return r}const et={scanLimit:500},Z=ot.fromClass(class{constructor(t){({deco:this.deco,gutter:this.gutter}=Le(t))}update(t){(t.docChanged||t.viewportChanged||At(t.startState,t.state)||xt(t.startState,t.state))&&({deco:this.deco,gutter:this.gutter}=Le(t.view))}},{decorations:t=>t.deco}),P=Q.low(je({class:"cm-changeGutter",markers:t=>{var e;return((e=t.plugin(Z))===null||e===void 0?void 0:e.gutter)||Ie.empty}}));function At(t,e){return t.field(k,!1)!=e.field(k,!1)}function xt(t,e){return t.facet(b)!=e.facet(b)}const Me=M.line({class:"cm-changedLine"}),tt=M.mark({class:"cm-changedText"}),wt=M.mark({tagName:"ins",class:"cm-insertedLine"}),kt=M.mark({tagName:"del",class:"cm-deletedLine"}),De=new class extends oe{constructor(){super(...arguments),this.elementClass="cm-changedLineGutter"}};function Bt(t,e,n,l,i,r){let s=n?t.fromA:t.fromB,o=n?t.toA:t.toB,f=0;if(s!=o){i.add(s,s,Me),i.add(s,o,n?kt:wt),r&&r.add(s,s,De);for(let h=e.iterRange(s,o-1),a=s;!h.next().done;){if(h.lineBreak){a++,i.add(a,a,Me),r&&r.add(a,a,De);continue}let d=a+h.value.length;if(l)for(;f<t.changes.length;){let c=t.changes[f],u=s+(n?c.fromA:c.fromB),m=s+(n?c.toA:c.toB),p=Math.max(a,u),g=Math.min(d,m);if(p<g&&i.add(p,g,tt),m<d)f++;else break}a=d}}}function Le(t){let e=t.state.field(k),{side:n,highlightChanges:l,markGutter:i,overrideChunk:r}=t.state.facet(b),s=n=="a",o=new N,f=i?new N:null,{from:h,to:a}=t.viewport;for(let d of e){if((s?d.fromA:d.fromB)>=a)break;(s?d.toA:d.toB)>h&&(!r||!r(t.state,d,o,f))&&Bt(d,t.state.doc,s,l,o,f)}return{deco:o.finish(),gutter:f&&f.finish()}}class q extends Y{constructor(e){super(),this.height=e}eq(e){return this.height==e.height}toDOM(){let e=document.createElement("div");return e.className="cm-mergeSpacer",e.style.height=this.height+"px",e}updateDOM(e){return e.style.height=this.height+"px",!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}}const K=G.define({map:(t,e)=>t.map(e)}),W=H.define({create:()=>M.none,update:(t,e)=>{for(let n of e.effects)if(n.is(K))return n.value;return t.map(e.changes)},provide:t=>B.decorations.from(t)}),_=.01;function Se(t,e){if(t.size!=e.size)return!1;let n=t.iter(),l=e.iter();for(;n.value;){if(n.from!=l.from||Math.abs(n.value.spec.widget.height-l.value.spec.widget.height)>1)return!1;n.next(),l.next()}return!0}function bt(t,e,n){let l=new N,i=new N,r=t.state.field(W).iter(),s=e.state.field(W).iter(),o=0,f=0,h=0,a=0,d=t.viewport,c=e.viewport;for(let g=0;;g++){let C=g<n.length?n[g]:null,S=C?C.fromA:t.state.doc.length,R=C?C.fromB:e.state.doc.length;if(o<S){let x=t.lineBlockAt(o).top+h,D=e.lineBlockAt(f).top+a,w=x-D;w<-_?(h-=w,l.add(o,o,M.widget({widget:new q(-w),block:!0,side:-1}))):w>_&&(a+=w,i.add(f,f,M.widget({widget:new q(w),block:!0,side:-1})))}if(S>o+1e3&&o<d.from&&S>d.from&&f<c.from&&R>c.from){let x=Math.min(d.from-o,c.from-f);o+=x,f+=x,g--}else if(C)o=C.toA,f=C.toB;else break;for(;r.value&&r.from<o;)h-=r.value.spec.widget.height,r.next();for(;s.value&&s.from<f;)a-=s.value.spec.widget.height,s.next()}for(;r.value;)h-=r.value.spec.widget.height,r.next();for(;s.value;)a-=s.value.spec.widget.height,s.next();let u=t.contentHeight+h-(e.contentHeight+a);u<_?l.add(t.state.doc.length,t.state.doc.length,M.widget({widget:new q(-u),block:!0,side:1})):u>_&&i.add(e.state.doc.length,e.state.doc.length,M.widget({widget:new q(u),block:!0,side:1}));let m=l.finish(),p=i.finish();Se(m,t.state.field(W))||t.dispatch({effects:K.of(m)}),Se(p,e.state.field(W))||e.dispatch({effects:K.of(p)})}const le=G.define({map:(t,e)=>e.mapPos(t)});class Mt extends Y{constructor(e){super(),this.lines=e}eq(e){return this.lines==e.lines}toDOM(e){let n=document.createElement("div");return n.className="cm-collapsedLines",n.textContent=e.state.phrase("$ unchanged lines",this.lines),n.addEventListener("click",l=>{let i=e.posAtDOM(l.target);e.dispatch({effects:le.of(i)});let{side:r,sibling:s}=e.state.facet(b);s&&s().dispatch({effects:le.of(Dt(i,e.state.field(k),r=="a"))})}),n}ignoreEvent(e){return e instanceof MouseEvent}get estimatedHeight(){return 27}get type(){return"collapsed-unchanged-code"}}function Dt(t,e,n){let l=0,i=0;for(let r=0;;r++){let s=r<e.length?e[r]:null;if(!s||(n?s.fromA:s.fromB)>=t)return i+(t-l);[l,i]=n?[s.toA,s.toB]:[s.toB,s.toA]}}const Lt=H.define({create(t){return M.none},update(t,e){t=t.map(e.changes);for(let n of e.effects)n.is(le)&&(t=t.update({filter:l=>l!=n.value}));if(t.size&&e.state.field(k)!=e.startState.field(k,!1)){let n=e.state.facet(b).side=="a",l=[];for(let i of e.state.field(k))t.between(n?i.fromA:i.fromB,n?i.toA:i.toB,r=>{l.push(r)});l.length&&(t=t.update({filter:i=>l.indexOf(i)<0}))}return t},provide:t=>B.decorations.from(t)});function se({margin:t=3,minSize:e=4}){return Lt.init(n=>St(n,t,e))}function St(t,e,n){let l=new N,i=t.facet(b).side=="a",r=t.field(k),s=1;for(let o=0;;o++){let f=o<r.length?r[o]:null,h=o?s+e:1,a=f?t.doc.lineAt(i?f.fromA:f.fromB).number-1-e:t.doc.lines,d=a-h+1;if(d>=n&&l.add(t.doc.line(h).from,t.doc.line(a).to,M.replace({widget:new Mt(d),block:!0})),!f)break;s=t.doc.lineAt(Math.min(t.doc.length,i?f.toA:f.toB)).number}return l.finish()}const Ot=B.styleModule.of(new st({".cm-mergeView":{overflowY:"auto"},".cm-mergeViewEditors":{display:"flex",alignItems:"stretch"},".cm-mergeViewEditor":{flexGrow:1,flexBasis:0,overflow:"hidden"},".cm-merge-revert":{width:"1.6em",flexGrow:0,flexShrink:0,position:"relative"},".cm-merge-revert button":{position:"absolute",display:"block",width:"100%",boxSizing:"border-box",textAlign:"center",background:"none",border:"none",font:"inherit",cursor:"pointer"}})),nt=B.baseTheme({".cm-mergeView & .cm-scroller, .cm-mergeView &":{height:"auto !important",overflowY:"visible !important"},"&.cm-merge-a .cm-changedLine, .cm-deletedChunk":{backgroundColor:"rgba(160, 128, 100, .08)"},"&.cm-merge-b .cm-changedLine, .cm-inlineChangedLine":{backgroundColor:"rgba(100, 160, 128, .08)"},"&light.cm-merge-a .cm-changedText, &light .cm-deletedChunk .cm-deletedText":{background:"linear-gradient(#ee443366, #ee443366) bottom/100% 2px no-repeat"},"&dark.cm-merge-a .cm-changedText, &dark .cm-deletedChunk .cm-deletedText":{background:"linear-gradient(#ffaa9966, #ffaa9966) bottom/100% 2px no-repeat"},"&light.cm-merge-b .cm-changedText":{background:"linear-gradient(#22bb22aa, #22bb22aa) bottom/100% 2px no-repeat"},"&dark.cm-merge-b .cm-changedText":{background:"linear-gradient(#88ff88aa, #88ff88aa) bottom/100% 2px no-repeat"},"&.cm-merge-b .cm-deletedText":{background:"#ff000033"},".cm-insertedLine, .cm-deletedLine, .cm-deletedLine del":{textDecoration:"none"},".cm-deletedChunk":{paddingLeft:"6px","& .cm-chunkButtons":{position:"absolute",insetInlineEnd:"5px"},"& button":{border:"none",cursor:"pointer",color:"white",margin:"0 2px",borderRadius:"3px","&[name=accept]":{background:"#2a2"},"&[name=reject]":{background:"#d43"}}},".cm-collapsedLines":{padding:"5px 5px 5px 10px",cursor:"pointer","&:before":{content:'"⦚"',marginInlineEnd:"7px"},"&:after":{content:'"⦚"',marginInlineStart:"7px"}},"&light .cm-collapsedLines":{color:"#444",background:"linear-gradient(to bottom, transparent 0, #f3f3f3 30%, #f3f3f3 70%, transparent 100%)"},"&dark .cm-collapsedLines":{color:"#ddd",background:"linear-gradient(to bottom, transparent 0, #222 30%, #222 70%, transparent 100%)"},".cm-changeGutter":{width:"3px",paddingLeft:"1px"},"&light.cm-merge-a .cm-changedLineGutter, &light .cm-deletedLineGutter":{background:"#e43"},"&dark.cm-merge-a .cm-changedLineGutter, &dark .cm-deletedLineGutter":{background:"#fa9"},"&light.cm-merge-b .cm-changedLineGutter":{background:"#2b2"},"&dark.cm-merge-b .cm-changedLineGutter":{background:"#8f8"},".cm-inlineChangedLineGutter":{background:"#75d"}}),Oe=new Ge,$=new Ge;class Et{constructor(e){this.revertDOM=null,this.revertToA=!1,this.revertToLeft=!1,this.measuring=-1,this.diffConf=e.diffConfig||et;let n=[Q.low(Z),nt,Ot,W,B.updateListener.of(d=>{this.measuring<0&&(d.heightChanged||d.viewportChanged)&&!d.transactions.some(c=>c.effects.some(u=>u.is(K)))&&this.measure()})],l=[b.of({side:"a",sibling:()=>this.b,highlightChanges:e.highlightChanges!==!1,markGutter:e.gutter!==!1})];e.gutter!==!1&&l.push(P);let i=ne.create({doc:e.a.doc,selection:e.a.selection,extensions:[e.a.extensions||[],B.editorAttributes.of({class:"cm-merge-a"}),$.of(l),n]}),r=[b.of({side:"b",sibling:()=>this.a,highlightChanges:e.highlightChanges!==!1,markGutter:e.gutter!==!1})];e.gutter!==!1&&r.push(P);let s=ne.create({doc:e.b.doc,selection:e.b.selection,extensions:[e.b.extensions||[],B.editorAttributes.of({class:"cm-merge-b"}),$.of(r),n]});this.chunks=O.build(i.doc,s.doc,this.diffConf);let o=[k.init(()=>this.chunks),Oe.of(e.collapseUnchanged?se(e.collapseUnchanged):[])];i=i.update({effects:G.appendConfig.of(o)}).state,s=s.update({effects:G.appendConfig.of(o)}).state,this.dom=document.createElement("div"),this.dom.className="cm-mergeView",this.editorDOM=this.dom.appendChild(document.createElement("div")),this.editorDOM.className="cm-mergeViewEditors";let f=e.orientation||"a-b",h=document.createElement("div");h.className="cm-mergeViewEditor";let a=document.createElement("div");a.className="cm-mergeViewEditor",this.editorDOM.appendChild(f=="a-b"?h:a),this.editorDOM.appendChild(f=="a-b"?a:h),this.a=new B({state:i,parent:h,root:e.root,dispatchTransactions:d=>this.dispatch(d,this.a)}),this.b=new B({state:s,parent:a,root:e.root,dispatchTransactions:d=>this.dispatch(d,this.b)}),this.setupRevertControls(!!e.revertControls,e.revertControls=="b-to-a",e.renderRevertControl),e.parent&&e.parent.appendChild(this.dom),this.scheduleMeasure()}dispatch(e,n){if(e.some(l=>l.docChanged)){let l=e[e.length-1],i=e.reduce((s,o)=>s.compose(o.changes),Ne.empty(e[0].startState.doc.length));this.chunks=n==this.a?O.updateA(this.chunks,l.newDoc,this.b.state.doc,i,this.diffConf):O.updateB(this.chunks,this.a.state.doc,l.newDoc,i,this.diffConf),n.update([...e,l.state.update({effects:ie.of(this.chunks)})]);let r=n==this.a?this.b:this.a;r.update([r.state.update({effects:ie.of(this.chunks)})]),this.scheduleMeasure()}else n.update(e)}reconfigure(e){if("diffConfig"in e&&(this.diffConf=e.diffConfig),"orientation"in e){let r=e.orientation!="b-a";if(r!=(this.editorDOM.firstChild==this.a.dom.parentNode)){let s=this.a.dom.parentNode,o=this.b.dom.parentNode;s.remove(),o.remove(),this.editorDOM.insertBefore(r?s:o,this.editorDOM.firstChild),this.editorDOM.appendChild(r?o:s),this.revertToLeft=!this.revertToLeft,this.revertDOM&&(this.revertDOM.textContent="")}}if("revertControls"in e||"renderRevertControl"in e){let r=!!this.revertDOM,s=this.revertToA,o=this.renderRevert;"revertControls"in e&&(r=!!e.revertControls,s=e.revertControls=="b-to-a"),"renderRevertControl"in e&&(o=e.renderRevertControl),this.setupRevertControls(r,s,o)}let n="highlightChanges"in e,l="gutter"in e,i="collapseUnchanged"in e;if(n||l||i){let r=[],s=[];if(n||l){let o=this.a.state.facet(b),f=l?e.gutter!==!1:o.markGutter,h=n?e.highlightChanges!==!1:o.highlightChanges;r.push($.reconfigure([b.of({side:"a",sibling:()=>this.b,highlightChanges:h,markGutter:f}),f?P:[]])),s.push($.reconfigure([b.of({side:"b",sibling:()=>this.a,highlightChanges:h,markGutter:f}),f?P:[]]))}if(i){let o=Oe.reconfigure(e.collapseUnchanged?se(e.collapseUnchanged):[]);r.push(o),s.push(o)}this.a.dispatch({effects:r}),this.b.dispatch({effects:s})}this.scheduleMeasure()}setupRevertControls(e,n,l){this.revertToA=n,this.revertToLeft=this.revertToA==(this.editorDOM.firstChild==this.a.dom.parentNode),this.renderRevert=l,!e&&this.revertDOM?(this.revertDOM.remove(),this.revertDOM=null):e&&!this.revertDOM?(this.revertDOM=this.editorDOM.insertBefore(document.createElement("div"),this.editorDOM.firstChild.nextSibling),this.revertDOM.addEventListener("mousedown",i=>this.revertClicked(i)),this.revertDOM.className="cm-merge-revert"):this.revertDOM&&(this.revertDOM.textContent="")}scheduleMeasure(){if(this.measuring<0){let e=this.dom.ownerDocument.defaultView||window;this.measuring=e.requestAnimationFrame(()=>{this.measuring=-1,this.measure()})}}measure(){bt(this.a,this.b,this.chunks),this.revertDOM&&this.updateRevertButtons()}updateRevertButtons(){let e=this.revertDOM,n=e.firstChild,l=this.a.viewport,i=this.b.viewport;for(let r=0;r<this.chunks.length;r++){let s=this.chunks[r];if(s.fromA>l.to||s.fromB>i.to)break;if(s.fromA<l.from||s.fromB<i.from)continue;let o=this.a.lineBlockAt(s.fromA).top+"px";for(;n&&+n.dataset.chunk<r;)n=Ee(n);n&&n.dataset.chunk==String(r)?(n.style.top!=o&&(n.style.top=o),n=n.nextSibling):e.insertBefore(this.renderRevertButton(o,r),n)}for(;n;)n=Ee(n)}renderRevertButton(e,n){let l;if(this.renderRevert)l=this.renderRevert();else{l=document.createElement("button");let i=this.a.state.phrase("Revert this chunk");l.setAttribute("aria-label",i),l.setAttribute("title",i),l.textContent=this.revertToLeft?"⇜":"⇝"}return l.style.top=e,l.setAttribute("data-chunk",String(n)),l}revertClicked(e){let n=e.target,l;for(;n&&n.parentNode!=this.revertDOM;)n=n.parentNode;if(n&&(l=this.chunks[n.dataset.chunk])){let[i,r,s,o,f,h]=this.revertToA?[this.b,this.a,l.fromB,l.toB,l.fromA,l.toA]:[this.a,this.b,l.fromA,l.toA,l.fromB,l.toB],a=i.state.sliceDoc(s,Math.max(s,o-1));s!=o&&h<=r.state.doc.length&&(a+=i.state.lineBreak),r.dispatch({changes:{from:f,to:Math.min(r.state.doc.length,h),insert:a},userEvent:"revert"}),e.preventDefault()}}destroy(){this.a.destroy(),this.b.destroy(),this.measuring>-1&&(this.dom.ownerDocument.defaultView||window).cancelAnimationFrame(this.measuring),this.dom.remove()}}function Ee(t){let e=t.nextSibling;return t.remove(),e}const yt=new class extends oe{constructor(){super(...arguments),this.elementClass="cm-deletedLineGutter"}},Rt=Q.low(je({class:"cm-changeGutter",markers:t=>{var e;return((e=t.plugin(Z))===null||e===void 0?void 0:e.gutter)||Ie.empty},widgetMarker:(t,e)=>e instanceof rt?yt:null}));function Tt(t){var e;let n=typeof t.original=="string"?Fe.of(t.original.split(/\r?\n/)):t.original,l=t.diffConfig||et;return[Q.low(Z),Vt,nt,B.editorAttributes.of({class:"cm-merge-b"}),Ze.of((i,r)=>{let s=r.effects.find(o=>o.is(he));return s&&(i=O.updateA(i,s.value.doc,r.startState.doc,s.value.changes,l)),r.docChanged&&(i=O.updateB(i,r.state.field(V),r.newDoc,r.changes,l)),i}),b.of({highlightChanges:t.highlightChanges!==!1,markGutter:t.gutter!==!1,syntaxHighlightDeletions:t.syntaxHighlightDeletions!==!1,syntaxHighlightDeletionsMaxLength:3e3,mergeControls:(e=t.mergeControls)!==null&&e!==void 0?e:!0,overrideChunk:t.allowInlineDiffs?Wt:void 0,side:"b"}),V.init(()=>n),t.gutter!==!1?Rt:[],t.collapseUnchanged?se(t.collapseUnchanged):[],k.init(i=>O.build(n,i.doc,l))]}const he=G.define(),V=H.define({create:()=>Fe.empty,update(t,e){for(let n of e.effects)n.is(he)&&(t=n.value.doc);return t}}),ye=new WeakMap;class rt extends Y{constructor(e){super(),this.buildDOM=e,this.dom=null}eq(e){return this.dom==e.dom}toDOM(e){return this.dom||(this.dom=this.buildDOM(e))}}function Gt(t,e,n){let l=ye.get(e.changes);if(l)return l;let i=s=>{let{highlightChanges:o,syntaxHighlightDeletions:f,syntaxHighlightDeletionsMaxLength:h,mergeControls:a}=t.facet(b),d=document.createElement("div");if(d.className="cm-deletedChunk",a){let x=d.appendChild(document.createElement("div"));x.className="cm-chunkButtons";let D=A=>{A.preventDefault(),Nt(s,s.posAtDOM(d))},w=A=>{A.preventDefault(),Ft(s,s.posAtDOM(d))};if(typeof a=="function")x.appendChild(a("accept",D)),x.appendChild(a("reject",w));else{let A=x.appendChild(document.createElement("button"));A.name="accept",A.textContent=t.phrase("Accept"),A.onmousedown=D;let L=x.appendChild(document.createElement("button"));L.name="reject",L.textContent=t.phrase("Reject"),L.onmousedown=w}}if(n||e.fromA>=e.toA)return d;let c=s.state.field(V).sliceString(e.fromA,e.endA),u=f&&t.facet(at),m=S(),p=e.changes,g=0,C=!1;function S(){let x=d.appendChild(document.createElement("div"));return x.className="cm-deletedLine",x.appendChild(document.createElement("del"))}function R(x,D,w){for(let A=x;A<D;){if(c.charAt(A)==`
2
2
  `){m.firstChild||m.appendChild(document.createElement("br")),m=S(),A++;continue}let L=D,ce=w+(C?" cm-deletedText":""),ue=!1,X=c.indexOf(`
3
3
  `,A);if(X>-1&&X<D&&(L=X),o&&g<p.length){let j=Math.max(0,C?p[g].toA:p[g].fromA);j<=L&&(L=j,C&&g++,ue=!0)}if(L>A){let j=document.createTextNode(c.slice(A,L));if(ce){let me=m.appendChild(document.createElement("span"));me.className=ce,me.appendChild(j)}else m.appendChild(j);A=L}ue&&(C=!C)}}if(u&&e.toA-e.fromA<=h){let x=u.parser.parse(c),D=0;ft(x,{style:w=>dt(t,w)},(w,A,L)=>{w>D&&R(D,w,""),R(w,A,L),D=A}),R(D,c.length,"")}else R(0,c.length,"");return m.firstChild||m.appendChild(document.createElement("br")),d},r=M.widget({block:!0,side:-1,widget:new rt(i)});return ye.set(e.changes,r),r}function Nt(t,e){let{state:n}=t,l=e??n.selection.main.head,i=t.state.field(k).find(f=>f.fromB<=l&&f.endB>=l);if(!i)return!1;let r=t.state.sliceDoc(i.fromB,Math.max(i.fromB,i.toB-1)),s=t.state.field(V);i.fromB!=i.toB&&i.toA<=s.length&&(r+=t.state.lineBreak);let o=Ne.of({from:i.fromA,to:Math.min(s.length,i.toA),insert:r},s.length);return t.dispatch({effects:he.of({doc:o.apply(s),changes:o}),userEvent:"accept"}),!0}function Ft(t,e){let{state:n}=t,l=e??n.selection.main.head,i=n.field(k).find(o=>o.fromB<=l&&o.endB>=l);if(!i)return!1;let s=n.field(V).sliceString(i.fromA,Math.max(i.fromA,i.toA-1));return i.fromA!=i.toA&&i.toB<=n.doc.length&&(s+=n.lineBreak),t.dispatch({changes:{from:i.fromB,to:Math.min(n.doc.length,i.toB),insert:s},userEvent:"revert"}),!0}function Re(t){let e=new N;for(let n of t.field(k)){let l=t.facet(b).overrideChunk&&it(t,n);e.add(n.fromB,n.fromB,Gt(t,n,!!l))}return e.finish()}const Vt=H.define({create:t=>Re(t),update(t,e){return e.state.field(k,!1)!=e.startState.field(k,!1)?Re(e.state):t},provide:t=>B.decorations.from(t)}),Te=new WeakMap;function it(t,e){let n=Te.get(e);if(n!==void 0)return n;n=null;let l=t.field(V),i=t.doc,r=l.lineAt(e.endA).number-l.lineAt(e.fromA).number+1,s=i.lineAt(e.endB).number-i.lineAt(e.fromB).number+1;e:if(r==s&&r<10){let o=[],f=0,h=e.fromA,a=e.fromB;for(let d of e.changes){if(d.fromA<d.toA){f+=d.toA-d.fromA;let c=l.sliceString(h+d.fromA,h+d.toA);if(/\n/.test(c))break e;o.push(M.widget({widget:new jt(c),side:-1}).range(a+d.fromB))}d.fromB<d.toB&&o.push(tt.range(a+d.fromB,a+d.toB))}f<e.endA-e.fromA-r*2&&(n=o)}return Te.set(e,n),n}class jt extends Y{constructor(e){super(),this.text=e}eq(e){return this.text==e.text}toDOM(e){let n=document.createElement("del");return n.className="cm-deletedText",n.textContent=this.text,n}}const It=new class extends oe{constructor(){super(...arguments),this.elementClass="cm-inlineChangedLineGutter"}},Ut=M.line({class:"cm-inlineChangedLine"});function Wt(t,e,n,l){let i=it(t,e),r=0;if(!i)return!1;for(let s=t.doc.lineAt(e.fromB);;){for(l&&l.add(s.from,s.from,It),n.add(s.from,s.from,Ut);r<i.length&&i[r].to<=s.to;){let o=i[r++];n.add(o.from,o.to,o.value)}if(s.to>=e.endB)break;s=t.doc.lineAt(s.to+1)}return!0}function Ht(t){const[e,n]=T.useState([]);return T.useEffect(()=>{let l=!1;const i=ht.matchFilename(ct,t);if(!i){n([]);return}return i.load().then(r=>{l||n([r])}).catch(()=>{l||n([])}),()=>{l=!0}},[t]),e}function Kt({baseline:t,current:e,theme:n,filename:l,sideBySide:i,onRejectHunk:r,onHunkCountChange:s}){const o=Ht(l);return i?J.jsx(Pt,{baseline:t,current:e,theme:n,languageExtension:o}):J.jsx(zt,{baseline:t,current:e,theme:n,languageExtension:o,onRejectHunk:r,onHunkCountChange:s})}function zt({baseline:t,current:e,theme:n,languageExtension:l,onRejectHunk:i,onHunkCountChange:r}){const s=T.useRef(-1),o=T.useMemo(()=>[B.lineWrapping,Tt({original:t,gutter:!0,mergeControls:!0,collapseUnchanged:{margin:3,minSize:4}}),...l],[t,l]);return J.jsx(lt,{value:e,editable:!1,readOnly:!0,theme:n,height:"100%",className:"desktop:select-text h-full text-sm",extensions:o,basicSetup:{highlightActiveLine:!1,highlightActiveLineGutter:!1},onChange:f=>i(f),onUpdate:f=>{var a;const h=((a=vt(f.state))==null?void 0:a.chunks.length)??null;h!==null&&h!==s.current&&(s.current=h,r(h))}})}function Pt({baseline:t,current:e,theme:n,languageExtension:l}){const i=T.useRef(null);return T.useEffect(()=>{const r=i.current;if(!r)return;const s=[B.editable.of(!1),ne.readOnly.of(!0),B.lineWrapping,...n==="dark"?[qt()]:[],...l],o=new Et({a:{doc:t,extensions:s},b:{doc:e,extensions:s},parent:r,collapseUnchanged:{margin:3,minSize:4},highlightChanges:!0,gutter:!0});return()=>o.destroy()},[t,e,n,l]),J.jsx("div",{ref:i,className:"cm-diff-split h-full overflow-auto text-sm"})}function qt(){return B.theme({"&":{backgroundColor:"transparent",color:"inherit"}},{dark:!0})}export{Kt as CodeMirrorDiff};
@@ -1 +1 @@
1
- import{r as n,j as f}from"./index-8-iQ6PnT.js";import{R as l}from"./index-CvhR1oZB.js";import{m as a,n as c,E as x}from"./index-Czm6C7FZ.js";function j({value:u,editable:t,filename:i,languageHint:e,theme:h,onChange:m}){const[g,r]=n.useState([]);return n.useEffect(()=>{let s=!1;const o=e?a.matchLanguageName(c,e,!0):a.matchFilename(c,i);if(!o){r([]);return}return o.load().then(p=>{s||r([p])}).catch(()=>{s||r([])}),()=>{s=!0}},[i,e]),f.jsx(l,{value:u,editable:t,readOnly:!t,onChange:m,theme:h,height:"100%",className:"desktop:select-text h-full text-sm",extensions:[x.lineWrapping,...g],basicSetup:{highlightActiveLine:t,highlightActiveLineGutter:t}})}export{j as CodeMirrorEditor};
1
+ import{r as n,j as f}from"./index-C3cvP8Fo.js";import{R as l}from"./index-BDD2EyoW.js";import{m as a,n as c,E as x}from"./index-DabU6r9W.js";function j({value:u,editable:t,filename:i,languageHint:e,theme:h,onChange:m}){const[g,r]=n.useState([]);return n.useEffect(()=>{let s=!1;const o=e?a.matchLanguageName(c,e,!0):a.matchFilename(c,i);if(!o){r([]);return}return o.load().then(p=>{s||r([p])}).catch(()=>{s||r([])}),()=>{s=!0}},[i,e]),f.jsx(l,{value:u,editable:t,readOnly:!t,onChange:m,theme:h,height:"100%",className:"desktop:select-text h-full text-sm",extensions:[x.lineWrapping,...g],basicSetup:{highlightActiveLine:t,highlightActiveLineGutter:t}})}export{j as CodeMirrorEditor};
@@ -1 +1 @@
1
- import{a1 as A,a3 as E,a4 as k,fB as I,fC as $,fD as P,fE as j,fF as o,fG as R,fH as q,fI as z,r as p,j as t,I as y,B as v,G as w,fJ as F,e as U,O as W,Q as X,C as B,U as K,f as Q,a7 as H}from"./index-8-iQ6PnT.js";function G(){const e=A(),s=E();return k({mutationFn:({agentId:n,body:a})=>e.createCommitment(n,a),onSettled:()=>s.invalidateQueries({queryKey:I.all})})}function J(){const e=A(),s=E();return k({mutationFn:({id:n,body:a})=>e.updateCommitment(n,a),onSettled:()=>s.invalidateQueries({queryKey:I.all})})}$();const _=300,O=500,Z=200,D="external:",T=P(["open","kept","missed","dropped"]).openapi("CommitmentState"),V=j({id:o(),agentId:o(),to:o().nullable(),what:o(),dueAt:o().nullable(),state:T,overdue:R(),sourceSessionId:o().nullable(),sourceRoomEntryId:o().nullable(),createdAt:o(),closedAt:o().nullable(),note:o().nullable()}).openapi("Commitment"),L=o().datetime({offset:!0});j({what:o().trim().min(1).max(_),to:o().trim().min(1).max(Z).optional(),dueAt:L.optional()}).openapi("CreateCommitmentRequest");j({state:T,dueAt:L.nullable().optional(),note:o().trim().max(O).optional(),from:T.optional()}).openapi("UpdateCommitmentRequest");const Y=500;j({agentId:o().min(1).optional(),state:T.optional(),to:o().min(1).optional(),limit:q().int().min(1).max(Y).optional()}).openapi("ListCommitmentsQuery");j({commitments:z(V)}).openapi("ListCommitmentsResponse");function ee(e,s=new Date){if(!e)return null;const n=new Date(e);if(Number.isNaN(n.getTime()))return null;const a=n.getTime()<s.getTime()?"Overdue ·":"Due",d=n.toLocaleTimeString(void 0,{hour:"numeric",minute:"2-digit"});return n.toDateString()===s.toDateString()?`${a} ${d}`:Math.abs(n.getTime()-s.getTime())/864e5<6?`${a} ${n.toLocaleDateString(void 0,{weekday:"short"})} ${d}`:`${a} ${n.toLocaleDateString(void 0,{month:"short",day:"numeric"})}`}function te(e,s){return e?e.startsWith(D)?`To ${e.slice(D.length)}`:`To ${(s==null?void 0:s(e))??e}`:null}function se(e){return{open:e.filter(s=>s.state==="open"),closed:e.filter(s=>s.state!=="open")}}const ae={kept:"Kept",missed:"Missed",dropped:"Dropped"};function de(e){var n;const s=new Map;for(const a of e)s.set(a.id,a.displayName),(n=a.agent)!=null&&n.manifestId&&s.set(a.agent.manifestId,a.displayName);return a=>s.get(a)}const ne=6e4;function oe(){const e=new Date;return new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(0,16)}function ie({agentId:e,onDone:s}){var m;const n=G(),[a,d]=p.useState(""),[r,l]=p.useState(""),u=p.useId(),g=p.useId(),x=a.trim(),N=n.isError&&((m=n.error)==null?void 0:m.code)==="PAST_DUE",h=r?new Date(r).getTime():null,[c,S]=p.useState(!1),[b]=p.useState(oe);function i(C){if(C.preventDefault(),!x||c)return;const f=h!==null?new Date(h).toISOString():void 0;n.mutate({agentId:e,body:{what:x,...f?{dueAt:f}:{}}},{onSuccess:s})}return t.jsxs("form",{onSubmit:i,"data-slot":"add-commitment-form",className:"flex flex-col gap-2 rounded-md border p-3",children:[t.jsx("label",{htmlFor:u,className:"text-xs font-medium",children:"What was promised"}),t.jsx(y,{id:u,value:a,maxLength:_,onChange:C=>d(C.target.value),placeholder:"Send Acme the revised quote"}),t.jsx("label",{htmlFor:g,className:"text-xs font-medium",children:"Due (optional)"}),t.jsx(y,{id:g,type:"datetime-local",value:r,min:b,"aria-invalid":c||void 0,onChange:C=>{const f=C.target.value;l(f),S(f!==""&&new Date(f).getTime()<Date.now()-ne)}}),(c||N)&&t.jsx("p",{className:"text-destructive text-xs",children:"That time has passed."}),n.isError&&!N&&t.jsx("p",{role:"alert",className:"text-destructive text-xs",children:"Couldn’t save the commitment. Try again."}),t.jsxs("div",{className:"flex justify-end gap-2",children:[t.jsx(v,{type:"button",size:"sm",variant:"ghost",onClick:s,children:"Cancel"}),t.jsx(v,{type:"submit",size:"sm",disabled:!x||c||n.isPending,children:"Add commitment"})]})]})}function M({commitment:e,agentName:s,nameOf:n,onClose:a,busy:d}){const r=e.state==="open",l=[s,te(e.to,n)].filter(Boolean).join(" · "),u=r?ee(e.dueAt):null;return t.jsxs("li",{"data-slot":"commitment-row","data-state":e.state,"data-overdue":e.overdue||void 0,className:"flex flex-col gap-2 rounded-md px-2 py-2 sm:flex-row sm:items-center sm:gap-3",children:[t.jsxs("div",{className:"min-w-0 flex-1",children:[t.jsx("p",{className:w("text-sm break-words",!r&&"text-muted-foreground",e.state==="dropped"&&"line-through"),children:e.what}),(l||u||!r)&&t.jsxs("div",{className:"text-muted-foreground mt-0.5 flex flex-wrap items-center gap-x-2 gap-y-1 text-xs",children:[e.state!=="open"&&t.jsx("span",{children:ae[e.state]}),l&&t.jsx("span",{className:"min-w-0 truncate",children:l}),u&&t.jsx("span",{className:w(e.overdue&&"text-destructive font-medium"),children:u})]})]}),r&&a&&t.jsxs("div",{className:"flex shrink-0 gap-1",children:[t.jsx(v,{size:"xs",variant:"outline",disabled:d,onClick:()=>a("kept"),"aria-label":`Mark kept: ${e.what}`,children:"Mark kept"}),t.jsx(v,{size:"xs",variant:"ghost",disabled:d,onClick:()=>a("dropped"),"aria-label":`Drop: ${e.what}`,children:"Drop"})]})]})}const re={kept:"Marked kept",dropped:"Commitment dropped"};function ue({agentId:e,nameOf:s,canAdd:n=!1,readOnly:a=!1,canChange:d}){var b;const r=F(e?{agentId:e}:{}),l=J(),[u,g]=p.useState(!1),x=e===void 0;function N(i,m){l.mutate({id:i.id,body:{state:m}},{onSuccess:()=>H.success(re[m],{action:{label:"Undo",onClick:()=>l.mutate({id:i.id,body:{state:"open",from:m}})}})})}if(r.isPending)return t.jsx(U,{className:"h-16 w-full"});if(r.isError)return t.jsx("p",{className:"text-muted-foreground text-sm",children:"Couldn’t read commitments."});const{open:h,closed:c}=se(r.data),S=l.isPending?(b=l.variables)==null?void 0:b.id:void 0;return t.jsxs("div",{"data-slot":"commitment-list",className:"flex flex-col gap-2",children:[h.length===0&&c.length===0&&!u&&t.jsx("p",{className:"text-muted-foreground text-sm",children:"No commitments yet."}),h.length>0&&t.jsx("ul",{className:"flex flex-col","aria-label":"Open commitments",children:h.map(i=>t.jsx(M,{commitment:i,agentName:x?s==null?void 0:s(i.agentId):void 0,nameOf:s,busy:S===i.id,...a||d&&!d(i)?{}:{onClose:m=>N(i,m)}},i.id))}),l.isError&&t.jsx("p",{role:"alert",className:"text-destructive text-xs",children:"Couldn’t change that commitment. Try again."}),c.length>0&&t.jsxs(W,{children:[t.jsxs(X,{className:"focus-ring text-muted-foreground hover:text-foreground group flex items-center gap-1 rounded-md px-2 py-1 text-xs",children:[t.jsx(B,{"aria-hidden":!0,className:"size-3.5 transition-transform group-data-[state=open]:rotate-90"}),"Closed (",c.length,")"]}),t.jsx(K,{children:t.jsx("ul",{className:"flex flex-col","aria-label":"Closed commitments",children:c.map(i=>t.jsx(M,{commitment:i,agentName:x?s==null?void 0:s(i.agentId):void 0,nameOf:s},i.id))})})]}),n&&!a&&e&&u&&t.jsx(ie,{agentId:e,onDone:()=>g(!1)}),n&&!a&&e&&!u&&t.jsxs(v,{size:"sm",variant:"ghost",className:"self-start",onClick:()=>g(!0),children:[t.jsx(Q,{"aria-hidden":!0}),"Add commitment"]})]})}export{ue as C,de as r};
1
+ import{a1 as A,a3 as E,a4 as k,fE as I,fF as $,fG as P,fH as j,fI as o,fJ as R,fK as q,fL as z,r as p,j as t,I as y,B as v,G as w,fM as F,e as U,O as W,Q as K,C as X,U as Q,f as B,a7 as H}from"./index-C3cvP8Fo.js";function G(){const e=A(),s=E();return k({mutationFn:({agentId:n,body:a})=>e.createCommitment(n,a),onSettled:()=>s.invalidateQueries({queryKey:I.all})})}function J(){const e=A(),s=E();return k({mutationFn:({id:n,body:a})=>e.updateCommitment(n,a),onSettled:()=>s.invalidateQueries({queryKey:I.all})})}$();const L=300,O=500,Z=200,M="external:",T=P(["open","kept","missed","dropped"]).openapi("CommitmentState"),V=j({id:o(),agentId:o(),to:o().nullable(),what:o(),dueAt:o().nullable(),state:T,overdue:R(),sourceSessionId:o().nullable(),sourceRoomEntryId:o().nullable(),createdAt:o(),closedAt:o().nullable(),note:o().nullable()}).openapi("Commitment"),_=o().datetime({offset:!0});j({what:o().trim().min(1).max(L),to:o().trim().min(1).max(Z).optional(),dueAt:_.optional()}).openapi("CreateCommitmentRequest");j({state:T,dueAt:_.nullable().optional(),note:o().trim().max(O).optional(),from:T.optional()}).openapi("UpdateCommitmentRequest");const Y=500;j({agentId:o().min(1).optional(),state:T.optional(),to:o().min(1).optional(),limit:q().int().min(1).max(Y).optional()}).openapi("ListCommitmentsQuery");j({commitments:z(V)}).openapi("ListCommitmentsResponse");function ee(e,s=new Date){if(!e)return null;const n=new Date(e);if(Number.isNaN(n.getTime()))return null;const a=n.getTime()<s.getTime()?"Overdue ·":"Due",d=n.toLocaleTimeString(void 0,{hour:"numeric",minute:"2-digit"});return n.toDateString()===s.toDateString()?`${a} ${d}`:Math.abs(n.getTime()-s.getTime())/864e5<6?`${a} ${n.toLocaleDateString(void 0,{weekday:"short"})} ${d}`:`${a} ${n.toLocaleDateString(void 0,{month:"short",day:"numeric"})}`}function te(e,s){return e?e.startsWith(M)?`To ${e.slice(M.length)}`:`To ${(s==null?void 0:s(e))??e}`:null}function se(e){return{open:e.filter(s=>s.state==="open"),closed:e.filter(s=>s.state!=="open")}}const ae={kept:"Kept",missed:"Missed",dropped:"Dropped"};function de(e){var n;const s=new Map;for(const a of e)s.set(a.id,a.displayName),(n=a.agent)!=null&&n.manifestId&&s.set(a.agent.manifestId,a.displayName);return a=>s.get(a)}const ne=6e4;function oe(){const e=new Date;return new Date(e.getTime()-e.getTimezoneOffset()*6e4).toISOString().slice(0,16)}function ie({agentId:e,onDone:s}){var m;const n=G(),[a,d]=p.useState(""),[r,l]=p.useState(""),u=p.useId(),g=p.useId(),x=a.trim(),N=n.isError&&((m=n.error)==null?void 0:m.code)==="PAST_DUE",h=r?new Date(r).getTime():null,[c,S]=p.useState(!1),[b]=p.useState(oe);function i(C){if(C.preventDefault(),!x||c)return;const f=h!==null?new Date(h).toISOString():void 0;n.mutate({agentId:e,body:{what:x,...f?{dueAt:f}:{}}},{onSuccess:s})}return t.jsxs("form",{onSubmit:i,"data-slot":"add-commitment-form",className:"flex flex-col gap-2 rounded-md border p-3",children:[t.jsx("label",{htmlFor:u,className:"text-xs font-medium",children:"What was promised"}),t.jsx(y,{id:u,value:a,maxLength:L,onChange:C=>d(C.target.value),placeholder:"Send Acme the revised quote"}),t.jsx("label",{htmlFor:g,className:"text-xs font-medium",children:"Due (optional)"}),t.jsx(y,{id:g,type:"datetime-local",value:r,min:b,"aria-invalid":c||void 0,onChange:C=>{const f=C.target.value;l(f),S(f!==""&&new Date(f).getTime()<Date.now()-ne)}}),(c||N)&&t.jsx("p",{className:"text-destructive text-xs",children:"That time has passed."}),n.isError&&!N&&t.jsx("p",{role:"alert",className:"text-destructive text-xs",children:"Couldn’t save the commitment. Try again."}),t.jsxs("div",{className:"flex justify-end gap-2",children:[t.jsx(v,{type:"button",size:"sm",variant:"ghost",onClick:s,children:"Cancel"}),t.jsx(v,{type:"submit",size:"sm",disabled:!x||c||n.isPending,children:"Add commitment"})]})]})}function D({commitment:e,agentName:s,nameOf:n,onClose:a,busy:d}){const r=e.state==="open",l=[s,te(e.to,n)].filter(Boolean).join(" · "),u=r?ee(e.dueAt):null;return t.jsxs("li",{"data-slot":"commitment-row","data-state":e.state,"data-overdue":e.overdue||void 0,className:"flex flex-col gap-2 rounded-md px-2 py-2 sm:flex-row sm:items-center sm:gap-3",children:[t.jsxs("div",{className:"min-w-0 flex-1",children:[t.jsx("p",{className:w("text-sm break-words",!r&&"text-muted-foreground",e.state==="dropped"&&"line-through"),children:e.what}),(l||u||!r)&&t.jsxs("div",{className:"text-muted-foreground mt-0.5 flex flex-wrap items-center gap-x-2 gap-y-1 text-xs",children:[e.state!=="open"&&t.jsx("span",{children:ae[e.state]}),l&&t.jsx("span",{className:"min-w-0 truncate",children:l}),u&&t.jsx("span",{className:w(e.overdue&&"text-destructive font-medium"),children:u})]})]}),r&&a&&t.jsxs("div",{className:"flex shrink-0 gap-1",children:[t.jsx(v,{size:"xs",variant:"outline",disabled:d,onClick:()=>a("kept"),"aria-label":`Mark kept: ${e.what}`,children:"Mark kept"}),t.jsx(v,{size:"xs",variant:"ghost",disabled:d,onClick:()=>a("dropped"),"aria-label":`Drop: ${e.what}`,children:"Drop"})]})]})}const re={kept:"Marked kept",dropped:"Commitment dropped"};function ue({agentId:e,nameOf:s,canAdd:n=!1,readOnly:a=!1,canChange:d}){var b;const r=F(e?{agentId:e}:{}),l=J(),[u,g]=p.useState(!1),x=e===void 0;function N(i,m){l.mutate({id:i.id,body:{state:m}},{onSuccess:()=>H.success(re[m],{action:{label:"Undo",onClick:()=>l.mutate({id:i.id,body:{state:"open",from:m}})}})})}if(r.isPending)return t.jsx(U,{className:"h-16 w-full"});if(r.isError)return t.jsx("p",{className:"text-muted-foreground text-sm",children:"Couldn’t read commitments."});const{open:h,closed:c}=se(r.data),S=l.isPending?(b=l.variables)==null?void 0:b.id:void 0;return t.jsxs("div",{"data-slot":"commitment-list",className:"flex flex-col gap-2",children:[h.length===0&&c.length===0&&!u&&t.jsx("p",{className:"text-muted-foreground text-sm",children:"No commitments yet."}),h.length>0&&t.jsx("ul",{className:"flex flex-col","aria-label":"Open commitments",children:h.map(i=>t.jsx(D,{commitment:i,agentName:x?s==null?void 0:s(i.agentId):void 0,nameOf:s,busy:S===i.id,...a||d&&!d(i)?{}:{onClose:m=>N(i,m)}},i.id))}),l.isError&&t.jsx("p",{role:"alert",className:"text-destructive text-xs",children:"Couldn’t change that commitment. Try again."}),c.length>0&&t.jsxs(W,{children:[t.jsxs(K,{className:"focus-ring text-muted-foreground hover:text-foreground group flex items-center gap-1 rounded-md px-2 py-1 text-xs",children:[t.jsx(X,{"aria-hidden":!0,className:"size-3.5 transition-transform group-data-[state=open]:rotate-90"}),"Closed (",c.length,")"]}),t.jsx(Q,{children:t.jsx("ul",{className:"flex flex-col","aria-label":"Closed commitments",children:c.map(i=>t.jsx(D,{commitment:i,agentName:x?s==null?void 0:s(i.agentId):void 0,nameOf:s},i.id))})})]}),n&&!a&&e&&u&&t.jsx(ie,{agentId:e,onDone:()=>g(!1)}),n&&!a&&e&&!u&&t.jsxs(v,{size:"sm",variant:"ghost",className:"self-start",onClick:()=>g(!0),children:[t.jsx(B,{"aria-hidden":!0}),"Add commitment"]})]})}export{ue as C,de as r};
@@ -1 +1 @@
1
- import{r,d,j as m}from"./index-8-iQ6PnT.js";import{r as c,C as l}from"./CommitmentList-uK4CKaz0.js";function u({member:s,roster:t}){var o;const e=(o=s.agent)==null?void 0:o.manifestId,i=r.useMemo(()=>c(t),[t]),n=d(s,t),a=n==="managed"||n==="system";return e?m.jsx("div",{className:"min-h-0 flex-1","data-slot":"profile-commitments",children:m.jsx(l,{agentId:e,nameOf:i,canAdd:a,readOnly:!a})}):null}export{u as CommitmentsPage};
1
+ import{r,d,j as m}from"./index-C3cvP8Fo.js";import{r as c,C as l}from"./CommitmentList-Dx_Ek_Gl.js";function u({member:s,roster:t}){var o;const e=(o=s.agent)==null?void 0:o.manifestId,i=r.useMemo(()=>c(t),[t]),n=d(s,t),a=n==="managed"||n==="system";return e?m.jsx("div",{className:"min-h-0 flex-1","data-slot":"profile-commitments",children:m.jsx(l,{agentId:e,nameOf:i,canAdd:a,readOnly:!a})}):null}export{u as CommitmentsPage};
@@ -1,4 +1,4 @@
1
- import{W as g,a1 as x,aW as o,r as C,j as e,B as d,Y as P}from"./index-8-iQ6PnT.js";import{r as m,u as f,C as w}from"./ComputerViewer-D87LhxwL.js";import{u as v}from"./use-is-below-desktop-DR8FEbRW.js";/**
1
+ import{W as g,a1 as x,aW as o,r as C,j as e,B as d,Y as P}from"./index-C3cvP8Fo.js";import{r as m,u as f,C as w}from"./ComputerViewer-D8SxJdMm.js";import{u as v}from"./use-is-below-desktop-Cu_jKnft.js";/**
2
2
  * @license lucide-react v1.48.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
@@ -1 +1 @@
1
- var R=Object.defineProperty;var S=(i,t,e)=>t in i?R(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e;var o=(i,t,e)=>S(i,typeof t!="symbol"?t+"":t,e);import{a1 as D,a2 as F,r as h,j as a,I as O,B as y,G as I}from"./index-8-iQ6PnT.js";const Y=["computer","local"];function z(){const i=D();return F({queryKey:Y,queryFn:()=>i.getComputer(),networkMode:"always",refetchInterval:2e3,retry:!1})}class B{constructor(t,e,r){o(this,"snapshot",{frame:null,lease:null,owner:null,busy:!1,error:!1,controlError:!1});o(this,"listeners",new Map);o(this,"timer");o(this,"epoch",0);o(this,"acquisition",0);o(this,"queue",Promise.resolve());o(this,"movePending",!1);o(this,"polling",!1);o(this,"retired",!1);o(this,"pendingOwner",null);o(this,"frameRequest",null);o(this,"getSnapshot",()=>this.snapshot);o(this,"subscribe",(t,e)=>(this.listeners.set(t,e),!this.polling&&!this.retired&&this.start(),()=>{this.listeners.delete(t),this.releaseFor(t),this.listeners.size===0&&(this.epoch+=1,this.polling=!1,clearTimeout(this.timer),this.update({frame:null}))}));o(this,"release",async()=>{const t=this.snapshot.lease;this.drop();const e=this.acquisition;if(t)try{await this.transport.releaseComputerControl(t.leaseId)}catch{e===this.acquisition&&this.update({error:!0,frame:null})}});o(this,"releaseFor",t=>this.snapshot.owner===t||this.pendingOwner===t?this.release():Promise.resolve());o(this,"acquire",async t=>{if(this.retired||!this.listeners.has(t)||this.snapshot.busy||!this.snapshot.frame||this.snapshot.lease)return;const e=++this.acquisition;this.pendingOwner=t,this.update({busy:!0,controlError:!1});try{const r=await this.transport.acquireComputerControl();if(!this.listeners.has(t)||e!==this.acquisition||r.generation!==this.generation){await this.transport.releaseComputerControl(r.leaseId);return}this.update({lease:r,owner:t,controlError:!1})}catch{e===this.acquisition&&this.update({controlError:!0})}finally{e===this.acquisition&&(this.pendingOwner=null,this.update({busy:!1}))}});o(this,"send",(t,e)=>{const r=this.snapshot.lease;if(!r||this.snapshot.owner!==t||!this.listeners.has(t))return Promise.resolve(!1);const l=e.kind==="pointer"&&e.action==="move";if(l&&this.movePending)return Promise.resolve(!1);l&&(this.movePending=!0);const n=this.queue.then(async()=>{if(this.snapshot.lease!==r||this.snapshot.owner!==t||!this.listeners.has(t))return l&&(this.movePending=!1),!1;try{return await this.transport.sendComputerInput({...e,...r}),!0}catch{return this.snapshot.lease===r&&this.snapshot.owner===t&&(this.update({error:!0,frame:null}),await this.release()),!1}finally{l&&(this.movePending=!1)}});return this.queue=n.then(()=>{}),n});this.transport=t,this.generation=e,this.previous=r}update(t){this.snapshot={...this.snapshot,...t};for(const e of this.listeners.values())e()}retire(){this.retired=!0,this.epoch+=1,this.polling=!1,clearTimeout(this.timer),this.release(),this.update({frame:null,error:!0})}start(){var r;(r=this.previous)==null||r.retire(),this.previous=void 0,this.polling=!0;const t=++this.epoch,e=async()=>{const l=this.snapshot.lease;try{const n=this.frameRequest??this.transport.getComputerFrame();this.frameRequest=n;const u=await n.finally(()=>{this.frameRequest===n&&(this.frameRequest=null)});if(t!==this.epoch)return;u.generation!==this.generation?(this.update({frame:null,error:!0}),this.release()):(u.controlledByYou===!1&&l&&this.snapshot.lease===l&&this.drop(),this.update({frame:u,error:!1}))}catch{if(t!==this.epoch)return;this.update({frame:null,error:!0}),this.release()}t===this.epoch&&(this.timer=setTimeout(()=>void e(),500))};e()}drop(){this.acquisition+=1,this.movePending=!1,this.pendingOwner=null,this.update({lease:null,owner:null,busy:!1,controlError:!1})}}const k=new WeakMap;function Q(i){var t;return((t=k.get(i))==null?void 0:t.release())??Promise.resolve()}function K(i,t){let e=k.get(i);return(!e||e.generation!==t)&&(e=new B(i,t,e),k.set(i,e)),e}function L(i){const t=D(),e=h.useId(),r=h.useMemo(()=>K(t,i),[t,i]),l=h.useCallback(u=>r.subscribe(e,u),[r,e]),n=h.useSyncExternalStore(l,r.getSnapshot);return{...n,lease:n.owner===e?n.lease:null,controlledElsewhere:!!(n.lease&&n.owner!==e),session:r,owner:e}}function U({send:i}){const[t,e]=h.useState(""),[r,l]=h.useState(!1),n=h.useRef(!0);return h.useEffect(()=>(n.current=!0,()=>{n.current=!1}),[]),a.jsxs("form",{className:"flex flex-wrap gap-2",onSubmit:u=>{if(u.preventDefault(),!t||r)return;const m=t;l(!0),i({kind:"text",text:m}).then(c=>{n.current&&c&&e(d=>d===m?"":d)}).finally(()=>{n.current&&l(!1)})},children:[a.jsx(O,{"aria-label":"Type on computer",placeholder:"Type on computer",value:t,maxLength:4096,autoComplete:"off",autoCorrect:"off",autoCapitalize:"none",spellCheck:!1,className:"min-w-0 flex-1",onChange:u=>e(u.target.value)}),a.jsx(y,{type:"submit","aria-disabled":r||!t,"aria-busy":r,children:"Type"}),a.jsx(y,{type:"button",variant:"outline",onClick:()=>{i({kind:"key",key:"Enter",action:"down"}),i({kind:"key",key:"Enter",action:"up"})},children:"Enter"})]})}function _({generation:i,onClose:t}){const{frame:e,lease:r,busy:l,error:n,controlError:u,controlledElsewhere:m,session:c,owner:d}=L(i),E=h.useRef(null),q=h.useId(),v=c.release,x=s=>c.send(d,s),N=async()=>{var s;await c.acquire(d),(s=E.current)==null||s.focus()};h.useEffect(()=>{const s=()=>{c.releaseFor(d)},g=()=>{document.hidden&&s()};return window.addEventListener("blur",s),document.addEventListener("visibilitychange",g),()=>{window.removeEventListener("blur",s),document.removeEventListener("visibilitychange",g)}},[c,d,v]);const w=(s,g)=>{var j,P,T,M;if(!r||!e)return;const p=s.currentTarget.getBoundingClientRect();if(!p.width||!p.height)return;const f=Math.min(p.width/e.width,p.height/e.height),b=p.left+(p.width-e.width*f)/2,C=p.top+(p.height-e.height*f)/2;(s.clientX<b||s.clientX>b+e.width*f||s.clientY<C||s.clientY>C+e.height*f)&&!((P=(j=s.currentTarget).hasPointerCapture)!=null&&P.call(j,s.pointerId))||(s.preventDefault(),g==="down"&&(s.currentTarget.focus(),(M=(T=s.currentTarget).setPointerCapture)==null||M.call(T,s.pointerId)),x({kind:"pointer",action:g,button:Math.max(0,Math.min(2,s.button)),x:Math.max(0,Math.min(e.width-1,Math.floor((s.clientX-b)/f))),y:Math.max(0,Math.min(e.height-1,Math.floor((s.clientY-C)/f)))}))};return a.jsxs("section",{"data-slot":"computer-viewer","aria-label":"Computer desktop",className:"flex h-full min-h-0 flex-col gap-2 overflow-auto p-3",onBlur:s=>{s.currentTarget.contains(s.relatedTarget)||c.releaseFor(d)},children:[a.jsxs("div",{className:"flex shrink-0 flex-wrap items-center gap-2",children:[a.jsx("p",{className:"text-muted-foreground mr-auto text-sm",role:"status",children:n?"Disconnected":r?"You have control":e?"Watching":"Connecting…"}),r?a.jsx(y,{variant:"outline",onClick:()=>void v(),children:"Return control"}):a.jsx(y,{variant:"outline",disabled:!e||m,"aria-disabled":l||!e||m,"aria-busy":l,onClick:()=>void N(),children:"Take over"}),t&&a.jsx(y,{variant:"ghost",onClick:t,children:"Close view"})]}),n&&a.jsx("p",{role:"alert",className:"text-destructive text-sm",children:"Disconnected. Trying to reconnect…"}),u&&!n&&a.jsx("p",{role:"alert",className:"text-destructive text-sm",children:"Couldn’t take control. Try again."}),e?a.jsx("div",{ref:E,role:"application","aria-label":"Computer desktop control","aria-describedby":q,tabIndex:r?0:-1,className:I("focus-visible:ring-ring block min-h-20 w-full flex-1 rounded-md outline-none select-none focus-visible:ring-2",r?"touch-none":"touch-pan-y"),onDragStart:s=>s.preventDefault(),onContextMenu:s=>s.preventDefault(),onPointerDown:s=>w(s,"down"),onPointerMove:s=>w(s,"move"),onPointerUp:s=>w(s,"up"),onPointerCancel:()=>void c.releaseFor(d),onKeyDown:s=>{if(r){if(s.preventDefault(),s.key==="Escape"&&s.ctrlKey&&s.shiftKey){v();return}s.repeat||x({kind:"key",key:s.key,action:"down"})}},onKeyUp:s=>{r&&(s.preventDefault(),x({kind:"key",key:s.key,action:"up"}))},children:a.jsx("img",{src:e.dataUrl,width:e.width,height:e.height,alt:"Live computer desktop",draggable:!1,className:"block h-full w-full rounded-md object-contain"})}):a.jsx("p",{role:"status",className:"text-muted-foreground py-10 text-center text-sm",children:"Waiting for the desktop…"}),r&&a.jsx(U,{send:x},r.leaseId),a.jsx("p",{id:q,className:I("text-muted-foreground shrink-0 text-xs",!r&&"sr-only"),children:"Press Control + Shift + Escape to return control."}),t&&a.jsx("p",{className:"text-muted-foreground shrink-0 text-xs",children:"Closing this view keeps the computer running."})]})}export{_ as C,Y as a,Q as r,z as u};
1
+ var R=Object.defineProperty;var S=(i,t,e)=>t in i?R(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e;var o=(i,t,e)=>S(i,typeof t!="symbol"?t+"":t,e);import{a1 as D,a2 as F,r as h,j as a,I as O,B as y,G as I}from"./index-C3cvP8Fo.js";const Y=["computer","local"];function z(){const i=D();return F({queryKey:Y,queryFn:()=>i.getComputer(),networkMode:"always",refetchInterval:2e3,retry:!1})}class B{constructor(t,e,r){o(this,"snapshot",{frame:null,lease:null,owner:null,busy:!1,error:!1,controlError:!1});o(this,"listeners",new Map);o(this,"timer");o(this,"epoch",0);o(this,"acquisition",0);o(this,"queue",Promise.resolve());o(this,"movePending",!1);o(this,"polling",!1);o(this,"retired",!1);o(this,"pendingOwner",null);o(this,"frameRequest",null);o(this,"getSnapshot",()=>this.snapshot);o(this,"subscribe",(t,e)=>(this.listeners.set(t,e),!this.polling&&!this.retired&&this.start(),()=>{this.listeners.delete(t),this.releaseFor(t),this.listeners.size===0&&(this.epoch+=1,this.polling=!1,clearTimeout(this.timer),this.update({frame:null}))}));o(this,"release",async()=>{const t=this.snapshot.lease;this.drop();const e=this.acquisition;if(t)try{await this.transport.releaseComputerControl(t.leaseId)}catch{e===this.acquisition&&this.update({error:!0,frame:null})}});o(this,"releaseFor",t=>this.snapshot.owner===t||this.pendingOwner===t?this.release():Promise.resolve());o(this,"acquire",async t=>{if(this.retired||!this.listeners.has(t)||this.snapshot.busy||!this.snapshot.frame||this.snapshot.lease)return;const e=++this.acquisition;this.pendingOwner=t,this.update({busy:!0,controlError:!1});try{const r=await this.transport.acquireComputerControl();if(!this.listeners.has(t)||e!==this.acquisition||r.generation!==this.generation){await this.transport.releaseComputerControl(r.leaseId);return}this.update({lease:r,owner:t,controlError:!1})}catch{e===this.acquisition&&this.update({controlError:!0})}finally{e===this.acquisition&&(this.pendingOwner=null,this.update({busy:!1}))}});o(this,"send",(t,e)=>{const r=this.snapshot.lease;if(!r||this.snapshot.owner!==t||!this.listeners.has(t))return Promise.resolve(!1);const l=e.kind==="pointer"&&e.action==="move";if(l&&this.movePending)return Promise.resolve(!1);l&&(this.movePending=!0);const n=this.queue.then(async()=>{if(this.snapshot.lease!==r||this.snapshot.owner!==t||!this.listeners.has(t))return l&&(this.movePending=!1),!1;try{return await this.transport.sendComputerInput({...e,...r}),!0}catch{return this.snapshot.lease===r&&this.snapshot.owner===t&&(this.update({error:!0,frame:null}),await this.release()),!1}finally{l&&(this.movePending=!1)}});return this.queue=n.then(()=>{}),n});this.transport=t,this.generation=e,this.previous=r}update(t){this.snapshot={...this.snapshot,...t};for(const e of this.listeners.values())e()}retire(){this.retired=!0,this.epoch+=1,this.polling=!1,clearTimeout(this.timer),this.release(),this.update({frame:null,error:!0})}start(){var r;(r=this.previous)==null||r.retire(),this.previous=void 0,this.polling=!0;const t=++this.epoch,e=async()=>{const l=this.snapshot.lease;try{const n=this.frameRequest??this.transport.getComputerFrame();this.frameRequest=n;const u=await n.finally(()=>{this.frameRequest===n&&(this.frameRequest=null)});if(t!==this.epoch)return;u.generation!==this.generation?(this.update({frame:null,error:!0}),this.release()):(u.controlledByYou===!1&&l&&this.snapshot.lease===l&&this.drop(),this.update({frame:u,error:!1}))}catch{if(t!==this.epoch)return;this.update({frame:null,error:!0}),this.release()}t===this.epoch&&(this.timer=setTimeout(()=>void e(),500))};e()}drop(){this.acquisition+=1,this.movePending=!1,this.pendingOwner=null,this.update({lease:null,owner:null,busy:!1,controlError:!1})}}const k=new WeakMap;function Q(i){var t;return((t=k.get(i))==null?void 0:t.release())??Promise.resolve()}function K(i,t){let e=k.get(i);return(!e||e.generation!==t)&&(e=new B(i,t,e),k.set(i,e)),e}function L(i){const t=D(),e=h.useId(),r=h.useMemo(()=>K(t,i),[t,i]),l=h.useCallback(u=>r.subscribe(e,u),[r,e]),n=h.useSyncExternalStore(l,r.getSnapshot);return{...n,lease:n.owner===e?n.lease:null,controlledElsewhere:!!(n.lease&&n.owner!==e),session:r,owner:e}}function U({send:i}){const[t,e]=h.useState(""),[r,l]=h.useState(!1),n=h.useRef(!0);return h.useEffect(()=>(n.current=!0,()=>{n.current=!1}),[]),a.jsxs("form",{className:"flex flex-wrap gap-2",onSubmit:u=>{if(u.preventDefault(),!t||r)return;const m=t;l(!0),i({kind:"text",text:m}).then(c=>{n.current&&c&&e(d=>d===m?"":d)}).finally(()=>{n.current&&l(!1)})},children:[a.jsx(O,{"aria-label":"Type on computer",placeholder:"Type on computer",value:t,maxLength:4096,autoComplete:"off",autoCorrect:"off",autoCapitalize:"none",spellCheck:!1,className:"min-w-0 flex-1",onChange:u=>e(u.target.value)}),a.jsx(y,{type:"submit","aria-disabled":r||!t,"aria-busy":r,children:"Type"}),a.jsx(y,{type:"button",variant:"outline",onClick:()=>{i({kind:"key",key:"Enter",action:"down"}),i({kind:"key",key:"Enter",action:"up"})},children:"Enter"})]})}function _({generation:i,onClose:t}){const{frame:e,lease:r,busy:l,error:n,controlError:u,controlledElsewhere:m,session:c,owner:d}=L(i),E=h.useRef(null),q=h.useId(),v=c.release,x=s=>c.send(d,s),N=async()=>{var s;await c.acquire(d),(s=E.current)==null||s.focus()};h.useEffect(()=>{const s=()=>{c.releaseFor(d)},g=()=>{document.hidden&&s()};return window.addEventListener("blur",s),document.addEventListener("visibilitychange",g),()=>{window.removeEventListener("blur",s),document.removeEventListener("visibilitychange",g)}},[c,d,v]);const w=(s,g)=>{var j,P,T,M;if(!r||!e)return;const p=s.currentTarget.getBoundingClientRect();if(!p.width||!p.height)return;const f=Math.min(p.width/e.width,p.height/e.height),b=p.left+(p.width-e.width*f)/2,C=p.top+(p.height-e.height*f)/2;(s.clientX<b||s.clientX>b+e.width*f||s.clientY<C||s.clientY>C+e.height*f)&&!((P=(j=s.currentTarget).hasPointerCapture)!=null&&P.call(j,s.pointerId))||(s.preventDefault(),g==="down"&&(s.currentTarget.focus(),(M=(T=s.currentTarget).setPointerCapture)==null||M.call(T,s.pointerId)),x({kind:"pointer",action:g,button:Math.max(0,Math.min(2,s.button)),x:Math.max(0,Math.min(e.width-1,Math.floor((s.clientX-b)/f))),y:Math.max(0,Math.min(e.height-1,Math.floor((s.clientY-C)/f)))}))};return a.jsxs("section",{"data-slot":"computer-viewer","aria-label":"Computer desktop",className:"flex h-full min-h-0 flex-col gap-2 overflow-auto p-3",onBlur:s=>{s.currentTarget.contains(s.relatedTarget)||c.releaseFor(d)},children:[a.jsxs("div",{className:"flex shrink-0 flex-wrap items-center gap-2",children:[a.jsx("p",{className:"text-muted-foreground mr-auto text-sm",role:"status",children:n?"Disconnected":r?"You have control":e?"Watching":"Connecting…"}),r?a.jsx(y,{variant:"outline",onClick:()=>void v(),children:"Return control"}):a.jsx(y,{variant:"outline",disabled:!e||m,"aria-disabled":l||!e||m,"aria-busy":l,onClick:()=>void N(),children:"Take over"}),t&&a.jsx(y,{variant:"ghost",onClick:t,children:"Close view"})]}),n&&a.jsx("p",{role:"alert",className:"text-destructive text-sm",children:"Disconnected. Trying to reconnect…"}),u&&!n&&a.jsx("p",{role:"alert",className:"text-destructive text-sm",children:"Couldn’t take control. Try again."}),e?a.jsx("div",{ref:E,role:"application","aria-label":"Computer desktop control","aria-describedby":q,tabIndex:r?0:-1,className:I("focus-visible:ring-ring block min-h-20 w-full flex-1 rounded-md outline-none select-none focus-visible:ring-2",r?"touch-none":"touch-pan-y"),onDragStart:s=>s.preventDefault(),onContextMenu:s=>s.preventDefault(),onPointerDown:s=>w(s,"down"),onPointerMove:s=>w(s,"move"),onPointerUp:s=>w(s,"up"),onPointerCancel:()=>void c.releaseFor(d),onKeyDown:s=>{if(r){if(s.preventDefault(),s.key==="Escape"&&s.ctrlKey&&s.shiftKey){v();return}s.repeat||x({kind:"key",key:s.key,action:"down"})}},onKeyUp:s=>{r&&(s.preventDefault(),x({kind:"key",key:s.key,action:"up"}))},children:a.jsx("img",{src:e.dataUrl,width:e.width,height:e.height,alt:"Live computer desktop",draggable:!1,className:"block h-full w-full rounded-md object-contain"})}):a.jsx("p",{role:"status",className:"text-muted-foreground py-10 text-center text-sm",children:"Waiting for the desktop…"}),r&&a.jsx(U,{send:x},r.leaseId),a.jsx("p",{id:q,className:I("text-muted-foreground shrink-0 text-xs",!r&&"sr-only"),children:"Press Control + Shift + Escape to return control."}),t&&a.jsx("p",{className:"text-muted-foreground shrink-0 text-xs",children:"Closing this view keeps the computer running."})]})}export{_ as C,Y as a,Q as r,z as u};
@@ -1 +1 @@
1
- import{j as s,e as x,B as o,Y as m,Z as u,_ as h,$ as g}from"./index-8-iQ6PnT.js";import{u as p,s as l,a as j,b as f}from"./access-copy-Dj09Xk4b.js";import{Q as N}from"./query-error-state--8AnWSSn.js";const v={agent:"From the agent",this_chat:"Only in this chat"};function k({agentId:n,onManage:e}){var i;const a=p(n);if(a.isPending)return s.jsx(x,{className:"h-24 w-full rounded-lg"});if(a.isError)return s.jsx(N,{title:"Couldn’t load account access",description:"Nothing changed. Try again.",onRetry:()=>void a.refetch(),isRetrying:a.isFetching});const c=((i=a.data)==null?void 0:i.connections)??[];return s.jsxs("section",{"aria-labelledby":"agent-account-access",className:"space-y-3",children:[s.jsxs("div",{className:"flex items-center justify-between gap-3",children:[s.jsxs("div",{children:[s.jsx("h3",{id:"agent-account-access",className:"text-sm font-semibold",children:"Account access"}),s.jsx("p",{className:"text-muted-foreground mt-0.5 text-xs",children:"Accounts this agent can use."})]}),e&&s.jsxs(o,{variant:"ghost",size:"sm",onClick:e,children:["Manage",s.jsx(m,{className:"size-3.5","aria-hidden":!0})]})]}),c.length===0?s.jsxs("div",{className:"bg-muted/40 rounded-lg p-4 text-sm",children:[s.jsx("p",{className:"font-medium",children:"No account access"}),s.jsx("p",{className:"text-muted-foreground mt-1 text-xs",children:"Give access from the Connections page."})]}):s.jsx("ul",{className:"space-y-1.5",children:c.map(t=>{const r=t.readiness.state==="ready";return s.jsxs("li",{"data-testid":`agent-connection-${t.connectionId}`,className:"bg-muted/40 flex min-h-11 items-center gap-3 rounded-lg px-3 py-2",children:[s.jsx(u,{iconKey:t.toolkit,displayName:l(t.toolkit),className:"size-7"}),s.jsxs("div",{className:"min-w-0 flex-1",children:[s.jsxs("p",{className:"truncate text-sm font-medium",children:[l(t.toolkit)," (",t.label,")"]}),s.jsxs("p",{className:"text-muted-foreground text-xs",children:[t.operationRevisionIds.length," approved"," ",t.operationRevisionIds.length===1?"action":"actions",t.everyAgent&&" · given to every agent"]})]}),s.jsx(h,{size:"xs",variant:r?"secondary":"outline",title:r?void 0:t.readiness.copy.owner,children:r?"Available":"Unavailable"})]},t.connectionId)})})]})}const y="This only affects this chat. Turning an app back on never adds access.",C="Couldn’t change access for this chat. Try again.";function b(n){return(n==null?void 0:n.code)==="session_access_other_agent"?n.message:C}function _({sessionId:n,onManage:e,emptyAction:a,footer:c}){var r;const i=j(n);if(i.isPending)return s.jsx(x,{className:"h-16 w-full rounded-lg"});if(i.isError)return s.jsxs("section",{"data-testid":"session-connectors",className:"space-y-2",children:[s.jsx("p",{role:"alert",className:"text-destructive px-1 text-xs",children:"Couldn’t load account access."}),s.jsx(o,{variant:"ghost",size:"sm",onClick:()=>void i.refetch(),children:"Try again"})]});const t=((r=i.data)==null?void 0:r.connections)??[];return s.jsxs("section",{"data-testid":"session-connectors","aria-labelledby":"session-account-access",className:"space-y-1",children:[s.jsxs("div",{className:"flex items-center justify-between gap-2 px-1 pb-1",children:[s.jsx("h3",{id:"session-account-access",className:"text-muted-foreground text-xs font-medium tracking-wide uppercase",children:"Connections"}),e&&s.jsxs(o,{variant:"ghost",size:"xs",onClick:e,children:["Manage agent access",s.jsx(m,{className:"size-3","aria-hidden":!0})]})]}),t.length===0?s.jsxs("div",{className:"bg-muted/40 space-y-2 rounded-md px-2.5 py-3",children:[s.jsxs("div",{children:[s.jsx("p",{className:"text-sm font-medium",children:"No account access"}),s.jsx("p",{className:"text-muted-foreground mt-1 text-xs",children:"Ask this agent to request the access it needs."})]}),a]}):s.jsxs(s.Fragment,{children:[t.some(d=>d.thisChat)&&s.jsx("p",{className:"text-muted-foreground px-1 pb-1 text-xs",children:y}),t.map(d=>s.jsx(S,{sessionId:n,connection:d},d.connectionId))]}),t.length>0&&c]})}function S({sessionId:n,connection:e}){const a=f(n),c=e.readiness.state==="ready",i=`${l(e.toolkit)} (${e.label})`;return s.jsxs("div",{"data-testid":`session-connection-${e.connectionId}`,"data-reason":e.readiness.reason,className:"bg-muted/40 rounded-md px-2.5 py-2",children:[s.jsxs("div",{className:"flex items-start gap-2",children:[s.jsxs("div",{className:"min-w-0 flex-1",children:[s.jsxs("div",{className:"flex flex-wrap items-center gap-1.5",children:[s.jsx("span",{className:"text-sm font-medium",children:i}),s.jsx(h,{size:"xs",variant:c?"secondary":"outline",children:c?v[e.source]:"Not available"})]}),s.jsx("p",{className:c?"text-muted-foreground mt-1 text-xs":"text-status-warning-fg mt-1 text-xs",children:c?`${e.operationRevisionIds.length} ${e.operationRevisionIds.length===1?"action":"actions"} available in this chat.`:e.readiness.copy.owner})]}),e.thisChat&&s.jsx(g,{"aria-label":`${i} in this chat`,"data-testid":`session-connection-switch-${e.connectionId}`,checked:e.thisChat==="on",disabled:a.isPending,onCheckedChange:t=>a.mutate({connectionId:e.connectionId,on:t}),className:"mt-0.5 shrink-0"})]}),a.isError&&e.thisChat&&s.jsx("p",{role:"alert",className:"text-destructive mt-1 text-xs",children:b(a.error)})]})}export{k as A,_ as S};
1
+ import{j as s,e as x,B as o,Y as m,Z as u,_ as h,$ as g}from"./index-C3cvP8Fo.js";import{u as p,s as l,a as j,b as f}from"./access-copy-Dggxx2cX.js";import{Q as N}from"./query-error-state-PuLGD7Jp.js";const v={agent:"From the agent",this_chat:"Only in this chat"};function k({agentId:n,onManage:e}){var i;const a=p(n);if(a.isPending)return s.jsx(x,{className:"h-24 w-full rounded-lg"});if(a.isError)return s.jsx(N,{title:"Couldn’t load account access",description:"Nothing changed. Try again.",onRetry:()=>void a.refetch(),isRetrying:a.isFetching});const c=((i=a.data)==null?void 0:i.connections)??[];return s.jsxs("section",{"aria-labelledby":"agent-account-access",className:"space-y-3",children:[s.jsxs("div",{className:"flex items-center justify-between gap-3",children:[s.jsxs("div",{children:[s.jsx("h3",{id:"agent-account-access",className:"text-sm font-semibold",children:"Account access"}),s.jsx("p",{className:"text-muted-foreground mt-0.5 text-xs",children:"Accounts this agent can use."})]}),e&&s.jsxs(o,{variant:"ghost",size:"sm",onClick:e,children:["Manage",s.jsx(m,{className:"size-3.5","aria-hidden":!0})]})]}),c.length===0?s.jsxs("div",{className:"bg-muted/40 rounded-lg p-4 text-sm",children:[s.jsx("p",{className:"font-medium",children:"No account access"}),s.jsx("p",{className:"text-muted-foreground mt-1 text-xs",children:"Give access from the Connections page."})]}):s.jsx("ul",{className:"space-y-1.5",children:c.map(t=>{const r=t.readiness.state==="ready";return s.jsxs("li",{"data-testid":`agent-connection-${t.connectionId}`,className:"bg-muted/40 flex min-h-11 items-center gap-3 rounded-lg px-3 py-2",children:[s.jsx(u,{iconKey:t.toolkit,displayName:l(t.toolkit),className:"size-7"}),s.jsxs("div",{className:"min-w-0 flex-1",children:[s.jsxs("p",{className:"truncate text-sm font-medium",children:[l(t.toolkit)," (",t.label,")"]}),s.jsxs("p",{className:"text-muted-foreground text-xs",children:[t.operationRevisionIds.length," approved"," ",t.operationRevisionIds.length===1?"action":"actions",t.everyAgent&&" · given to every agent"]})]}),s.jsx(h,{size:"xs",variant:r?"secondary":"outline",title:r?void 0:t.readiness.copy.owner,children:r?"Available":"Unavailable"})]},t.connectionId)})})]})}const y="This only affects this chat. Turning an app back on never adds access.",C="Couldn’t change access for this chat. Try again.";function b(n){return(n==null?void 0:n.code)==="session_access_other_agent"?n.message:C}function _({sessionId:n,onManage:e,emptyAction:a,footer:c}){var r;const i=j(n);if(i.isPending)return s.jsx(x,{className:"h-16 w-full rounded-lg"});if(i.isError)return s.jsxs("section",{"data-testid":"session-connectors",className:"space-y-2",children:[s.jsx("p",{role:"alert",className:"text-destructive px-1 text-xs",children:"Couldn’t load account access."}),s.jsx(o,{variant:"ghost",size:"sm",onClick:()=>void i.refetch(),children:"Try again"})]});const t=((r=i.data)==null?void 0:r.connections)??[];return s.jsxs("section",{"data-testid":"session-connectors","aria-labelledby":"session-account-access",className:"space-y-1",children:[s.jsxs("div",{className:"flex items-center justify-between gap-2 px-1 pb-1",children:[s.jsx("h3",{id:"session-account-access",className:"text-muted-foreground text-xs font-medium tracking-wide uppercase",children:"Connections"}),e&&s.jsxs(o,{variant:"ghost",size:"xs",onClick:e,children:["Manage agent access",s.jsx(m,{className:"size-3","aria-hidden":!0})]})]}),t.length===0?s.jsxs("div",{className:"bg-muted/40 space-y-2 rounded-md px-2.5 py-3",children:[s.jsxs("div",{children:[s.jsx("p",{className:"text-sm font-medium",children:"No account access"}),s.jsx("p",{className:"text-muted-foreground mt-1 text-xs",children:"Ask this agent to request the access it needs."})]}),a]}):s.jsxs(s.Fragment,{children:[t.some(d=>d.thisChat)&&s.jsx("p",{className:"text-muted-foreground px-1 pb-1 text-xs",children:y}),t.map(d=>s.jsx(S,{sessionId:n,connection:d},d.connectionId))]}),t.length>0&&c]})}function S({sessionId:n,connection:e}){const a=f(n),c=e.readiness.state==="ready",i=`${l(e.toolkit)} (${e.label})`;return s.jsxs("div",{"data-testid":`session-connection-${e.connectionId}`,"data-reason":e.readiness.reason,className:"bg-muted/40 rounded-md px-2.5 py-2",children:[s.jsxs("div",{className:"flex items-start gap-2",children:[s.jsxs("div",{className:"min-w-0 flex-1",children:[s.jsxs("div",{className:"flex flex-wrap items-center gap-1.5",children:[s.jsx("span",{className:"text-sm font-medium",children:i}),s.jsx(h,{size:"xs",variant:c?"secondary":"outline",children:c?v[e.source]:"Not available"})]}),s.jsx("p",{className:c?"text-muted-foreground mt-1 text-xs":"text-status-warning-fg mt-1 text-xs",children:c?`${e.operationRevisionIds.length} ${e.operationRevisionIds.length===1?"action":"actions"} available in this chat.`:e.readiness.copy.owner})]}),e.thisChat&&s.jsx(g,{"aria-label":`${i} in this chat`,"data-testid":`session-connection-switch-${e.connectionId}`,checked:e.thisChat==="on",disabled:a.isPending,onCheckedChange:t=>a.mutate({connectionId:e.connectionId,on:t}),className:"mt-0.5 shrink-0"})]}),a.isError&&e.thisChat&&s.jsx("p",{role:"alert",className:"text-destructive mt-1 text-xs",children:b(a.error)})]})}export{k as A,_ as S};
@@ -1,6 +1,6 @@
1
- import{W as Z,a1 as H,a4 as Q,r,b6 as J,j as e,G as I,bD as K,_ as F,cM as X,cN as Y,cO as ee,g0 as se,g1 as te,B,g2 as ae,g3 as ne,g4 as R,x as ie,g5 as re,g6 as L,g7 as ce,g8 as oe,g9 as de,ga as le,gb as me,gc as ue,gd as pe,ge as xe,gf as ge,gg as he,eQ as fe,eR as je,f as ye,eS as ve,gh as U,a7 as N,ak as Ne,b as be,e as Ce}from"./index-8-iQ6PnT.js";import{A as Te}from"./ConnectionAccessLists-BFEFqcSZ.js";import{u as Ie}from"./use-bindings-BV6HA0MD.js";import{b as Ae,u as Se,a as we,t as ke,B as De}from"./BindingDialog-DVyxVXZM.js";import{u as Re}from"./use-delete-binding-CnziYpXo.js";import{u as Me,A as Pe}from"./AdapterSetupWizard-I03EluU5.js";import{u as Be}from"./use-relay-config-1mAMDNbc.js";import{u as Ee}from"./use-external-adapter-catalog-DoGUfa2F.js";import"./relay-trace-schemas-fScydQ3A.js";import{A as _,a as P,b as ze}from"./AdapterIcon-DVgTrgnM.js";import{R as $}from"./radio-mkA-Sqe0.js";import"./access-copy-Dj09Xk4b.js";import"./query-error-state--8AnWSSn.js";import"./empty-state-kISAAp0z.js";import"./form-Bjhk9zOn.js";import"./use-adapter-catalog-BQKfRxXC.js";import"./trust-posture-2MR0ap9o.js";import"./markdown-content-D0FpU2cz.js";/**
1
+ import{W as Z,a1 as H,a4 as Q,r,b6 as J,j as e,G as I,bD as K,_ as F,cO as X,cP as Y,cQ as ee,g3 as se,g4 as te,B,g5 as ae,g6 as ne,g7 as R,x as ie,g8 as re,g9 as L,ga as ce,gb as oe,gc as de,gd as le,ge as me,gf as ue,gg as pe,gh as xe,gi as ge,gj as he,eT as fe,eU as je,f as ye,eV as ve,gk as W,a7 as N,ak as Ne,b as be,e as Ce}from"./index-C3cvP8Fo.js";import{A as Te}from"./ConnectionAccessLists-Bhj1YT15.js";import{u as Ie}from"./use-bindings-CU2RSXOy.js";import{b as Ae,u as we,a as Se,t as ke,B as De}from"./BindingDialog-BAdueON5.js";import{u as Re}from"./use-delete-binding-qeyRkvR1.js";import{u as Me,A as Pe}from"./AdapterSetupWizard-B4I23pBg.js";import{u as Be}from"./use-relay-config-hUB3lVFv.js";import{u as Ee}from"./use-external-adapter-catalog-HiWFZZrW.js";import"./relay-trace-schemas-DF_DfZ7s.js";import{A as _,a as P,b as ze}from"./AdapterIcon-BcfquTja.js";import{R as $}from"./radio-QOLZSBz1.js";import"./access-copy-Dggxx2cX.js";import"./query-error-state-PuLGD7Jp.js";import"./empty-state-CDoXnrKn.js";import"./form-Cru78aT-.js";import"./use-adapter-catalog-BrqVd-47.js";import"./trust-posture-Bcyy5Fub.js";import"./markdown-content-DaEVxezf.js";/**
2
2
  * @license lucide-react v1.48.0 - ISC
3
3
  *
4
4
  * This source code is licensed under the ISC license.
5
5
  * See the LICENSE file in the root directory of this source tree.
6
- */const G={name:"plug-2",size:24,node:[["path",{d:"M9 2v6",key:"17ngun"}],["path",{d:"M15 2v6",key:"s7yy2p"}],["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M5 8h14",key:"pcz4l3"}],["path",{d:"M6 11V8h12v3a6 6 0 1 1-12 0Z",key:"wtfw2c"}]]};G.node;const Oe=Z(G);function _e(){const a=H();return Q({mutationFn:i=>a.testBinding(i),meta:{errorLabel:"Couldn’t test the connection"}})}const Fe={connected:P.connected,disconnected:K.warning,error:P.error,connecting:P.starting};function Le(a){const i=[];return a.canInitiate&&i.push("Can message first"),a.canReply||i.push("Can’t reply"),a.canReceive||i.push("Can’t receive"),i.join(" · ")}function $e({binding:a,integrationName:i,integrationIconId:y,integrationAdapterType:l,adapterState:x,errorMessage:g,chatDisplayName:h,lastMessageAt:d,onTogglePause:f,onTest:n,onEdit:m,onRemove:u}){const[t,o]=r.useState(!1),[j,v]=r.useState(!1),p=a.enabled===!1,[A,S]=r.useState(0);r.useEffect(()=>{if(!d||p)return;const b=setInterval(()=>S(s=>s+1),6e4);return()=>clearInterval(b)},[d,p]);const E=h?`${i} · ${h}`:i,w=Ae({sessionStrategy:a.sessionStrategy,chatDisplayName:h,channelType:a.channelType}),k=a.canInitiate||!a.canReply||!a.canReceive,z=k?Le(a):"",D=r.useMemo(()=>p?"Paused: no messages delivered":d?`Last received ${J(d).toLowerCase()}`:"No recent activity",[p,d,A]),O=async()=>{v(!0);try{await n()}finally{v(!1)}};return e.jsxs("div",{className:I("relative rounded-xl border px-4 py-3 transition-colors",x==="error"&&!p&&"border-red-500/50 bg-red-500/[0.02]",p&&"opacity-60"),children:[e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsxs("div",{className:"relative shrink-0",children:[e.jsx(_,{iconId:y,adapterType:l,size:32}),e.jsx("span",{className:I("ring-background absolute -right-0.5 -bottom-0.5 size-2.5 rounded-full ring-2",p?"bg-muted-foreground/40":Fe[x])})]}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"truncate text-sm font-medium",children:E}),p&&e.jsx(F,{variant:"secondary",children:"Paused"})]}),p?e.jsx("p",{className:"text-muted-foreground mt-1 text-xs",children:D}):x==="error"&&g?e.jsx("p",{className:"text-destructive text-xs",children:g}):e.jsxs(e.Fragment,{children:[w&&e.jsx("p",{className:"text-muted-foreground truncate text-xs italic",children:w}),e.jsx("p",{className:"text-muted-foreground mt-1 text-xs",children:D})]})]}),k&&e.jsxs(X,{children:[e.jsx(Y,{asChild:!0,children:e.jsx(F,{variant:"outline",children:"Restricted"})}),e.jsx(ee,{children:z})]}),e.jsxs(se,{children:[e.jsx(te,{asChild:!0,children:e.jsxs(B,{variant:"ghost",size:"icon-md",responsive:!1,className:"h-8 w-8 shrink-0",children:[e.jsx(ae,{className:"size-4"}),e.jsx("span",{className:"sr-only",children:"Actions"})]})}),e.jsxs(ne,{align:"end",children:[e.jsxs(R,{onClick:O,disabled:j||p,children:[j?e.jsx(ie,{className:"mr-2"}):e.jsx(re,{className:"mr-2 size-(--size-icon-sm)"}),"Send test"]}),e.jsx(L,{}),e.jsx(R,{onClick:()=>f(!a.enabled),children:p?e.jsxs(e.Fragment,{children:[e.jsx(ce,{className:"mr-2 size-4"}),"Resume"]}):e.jsxs(e.Fragment,{children:[e.jsx(oe,{className:"mr-2 size-4"}),"Pause"]})}),e.jsx(L,{}),e.jsx(R,{onClick:m,children:"Edit"}),e.jsx(R,{onClick:()=>o(!0),className:"text-destructive focus:text-destructive",children:"Remove"})]})]})]}),e.jsx(de,{open:t,onOpenChange:o,children:e.jsxs(le,{children:[e.jsxs(me,{children:[e.jsxs(ue,{children:["Remove the ",i," connection?"]}),e.jsx(pe,{children:"This agent stops getting messages from it."})]}),e.jsxs(xe,{children:[e.jsx(ge,{children:"Cancel"}),e.jsx(he,{onClick:()=>{u(),o(!1)},className:"bg-red-600 hover:bg-red-700",children:"Remove connection"})]})]})})]})}function qe({binding:a,integrationName:i,integrationIconId:y,integrationAdapterType:l,adapterState:x,errorMessage:g,onTogglePause:h,onTest:d,onEdit:f,onRemove:n}){const{data:m=[]}=Se(a.adapterId),u=a.chatId?m.find(j=>j.chatId===a.chatId):void 0,t=(u==null?void 0:u.displayName)??(a.chatId?`#${a.chatId.slice(-4)}`:void 0),o=r.useMemo(()=>{if(u)return u.lastMessageAt;if(m.length!==0)return m.reduce((j,v)=>v.lastMessageAt>j?v.lastMessageAt:j,m[0].lastMessageAt)},[u,m]);return e.jsx($e,{binding:a,integrationName:i,integrationIconId:y,integrationAdapterType:l,adapterState:x,errorMessage:g,chatDisplayName:t,lastMessageAt:o,onTogglePause:h,onTest:d,onEdit:f,onRemove:n})}function q({catalog:a,boundAdapterIds:i,onSelectIntegration:y,onRequestSetup:l,disabled:x}){const[g,h]=r.useState(!1),d=r.useMemo(()=>a.flatMap(t=>t.instances.map(o=>({id:o.id,displayName:o.status.displayName??t.manifest.displayName,label:o.label,state:o.status.state,isDisabled:o.status.state==="error"||!o.enabled,alreadyBound:i.has(o.id),iconId:t.manifest.iconId,adapterType:t.manifest.type}))),[a,i]),f=r.useMemo(()=>a.filter(t=>!t.manifest.deprecated&&(t.instances.length===0||t.manifest.multiInstance)),[a]);function n(t){y(t),h(!1)}function m(t){h(!1),l(t)}const u=d.length===0&&f.length===0;return e.jsxs(fe,{open:g,onOpenChange:h,children:[e.jsx(je,{asChild:!0,children:e.jsxs(B,{variant:"outline",size:"sm",disabled:x,children:[e.jsx(ye,{className:"mr-1.5 size-3.5"}),"Add connection"]})}),e.jsx(ve,{className:"w-72 p-0",align:"start",children:e.jsx("div",{className:"max-h-64 overflow-y-auto",children:u?e.jsx("div",{className:"px-3 py-4 text-center",children:e.jsx("p",{className:"text-muted-foreground text-sm",children:"No connections available"})}):e.jsxs(e.Fragment,{children:[d.length>0&&e.jsx("div",{className:"py-1",children:d.map(t=>e.jsxs("button",{disabled:t.isDisabled||t.alreadyBound,onClick:()=>n(t.id),className:I("flex w-full items-center gap-3 px-3 py-2 text-left text-sm transition-colors","hover:bg-accent disabled:cursor-not-allowed disabled:opacity-50"),children:[e.jsxs("div",{className:"relative shrink-0",children:[e.jsx(_,{iconId:t.iconId,adapterType:t.adapterType,size:20,className:"text-muted-foreground"}),e.jsx("span",{className:I("ring-background absolute -right-0.5 -bottom-0.5 size-1.5 rounded-full ring-[1.5px]",P[t.state])})]}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("p",{className:"truncate font-medium",children:t.displayName}),t.label&&e.jsx("p",{className:"text-muted-foreground truncate text-xs",children:t.label})]}),e.jsx("span",{className:"text-muted-foreground/60 text-xs",children:t.alreadyBound?"Connected":ze[t.state]})]},t.id))}),f.length>0&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"border-t"}),e.jsxs("div",{className:"py-1",children:[e.jsx("p",{className:"text-muted-foreground px-3 py-1 text-xs font-medium",children:"Available to set up"}),f.map(t=>e.jsxs("button",{onClick:()=>m(t.manifest),className:I("flex w-full items-center gap-3 px-3 py-2 text-left text-sm transition-colors","hover:bg-accent"),children:[e.jsx(_,{iconId:t.manifest.iconId,adapterType:t.manifest.type,size:14,className:"text-muted-foreground shrink-0"}),e.jsx("span",{className:"truncate font-medium",children:t.manifest.displayName})]},t.manifest.type))]})]})]})})})]})}const M={open:!1,binding:null,adapterName:""},W={open:!1};function We({agent:a}){const i=Be(),{data:y=[]}=Ie(),{data:l=[]}=Ee(i),x=we(),g=Re(),h=_e(),d=Me(),f=U(),[n,m]=r.useState(M),[u,t]=r.useState(W),o=y.filter(s=>s.agentId===a.id),j=r.useMemo(()=>{const s=new Map;for(const c of l)for(const C of c.instances){const T=C.status.state,V=T==="connected"||T==="error"?T:T==="starting"||T==="stopping"||T==="reconnecting"?"connecting":"disconnected";s.set(C.id,{state:V,name:C.status.displayName??c.manifest.displayName,iconId:c.manifest.iconId,adapterType:c.manifest.type,errorMessage:C.status.lastError??void 0})}return s},[l]),v=r.useCallback(s=>j.get(s)??{state:"disconnected",name:s,adapterType:s},[j]),p=r.useMemo(()=>new Set(o.map(s=>s.adapterId)),[o]),A=r.useCallback(async s=>{try{await x.mutateAsync({adapterId:s,agentId:a.id,sessionStrategy:"per-chat",label:"",canInitiate:!1,canReply:!0,canReceive:!0}),N.success("Connection added")}catch{}},[a.id,x]),S=r.useCallback(s=>{t({open:!0,manifest:s})},[]),E=r.useCallback(s=>{m({open:!0,binding:s,adapterName:v(s.adapterId).name})},[v]),w=r.useCallback(async s=>{try{await g.mutateAsync(s),N.success("Connection removed")}catch{}},[g]),k=r.useCallback(async(s,c)=>{try{await d.mutateAsync({id:s,updates:{enabled:c}}),N.success(c?"Connection resumed":"Connection paused")}catch{}},[d]),z=r.useCallback(async s=>{const c=await h.mutateAsync(s);return c.ok?N.success(`Test message delivered in ${c.latencyMs}ms`):N.error(c.reason?`Test message didn’t arrive: ${c.reason}`:"Test message didn’t arrive. Try again."),c},[h]),D=r.useCallback(async s=>{if(n.binding)try{await d.mutateAsync({id:n.binding.id,updates:ke(s)}),N.success("Connection updated"),m(M)}catch{}},[n.binding,d]),O=r.useCallback(async s=>{try{await g.mutateAsync(s),N.success("Connection removed"),m(M)}catch{}},[g]),b=e.jsxs(e.Fragment,{children:[n.binding&&e.jsx(De,{open:n.open,onOpenChange:s=>{s||m(M)},mode:"edit",initialValues:{adapterId:n.binding.adapterId,agentId:n.binding.agentId,sessionStrategy:n.binding.sessionStrategy,label:n.binding.label,permissionMode:n.binding.permissionMode,chatId:n.binding.chatId,channelType:n.binding.channelType,canInitiate:n.binding.canInitiate,canReply:n.binding.canReply,canReceive:n.binding.canReceive,notifyOnTaskComplete:n.binding.notifyOnTaskComplete},adapterName:n.adapterName,agentName:Ne(a),bindingId:n.binding.id,onConfirm:D,onDelete:O,isPending:d.isPending||g.isPending}),u.manifest&&e.jsx(Pe,{open:u.open,onOpenChange:s=>{s||t(W)},manifest:u.manifest,existingAdapterIds:l.flatMap(s=>s.instances.map(c=>c.id))})]});return i?l.length===0?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-col items-center gap-3 rounded-xl border border-dashed px-6 py-10",children:[e.jsx($,{className:"text-muted-foreground/40 size-8"}),e.jsxs("div",{className:"space-y-1 text-center",children:[e.jsx("p",{className:"text-sm font-medium",children:"No connections available"}),e.jsx("p",{className:"text-muted-foreground max-w-xs text-xs leading-relaxed",children:"Add Telegram, Slack or a webhook, then connect it here."})]}),e.jsx(B,{variant:"outline",size:"sm",onClick:()=>f(),children:"Add a connection"})]}),b]}):o.length===0?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-col items-center gap-3 rounded-xl border border-dashed px-6 py-10",children:[e.jsx($,{className:"text-muted-foreground/40 size-8"}),e.jsxs("div",{className:"space-y-1 text-center",children:[e.jsx("p",{className:"text-sm font-medium",children:"Message this agent from anywhere"}),e.jsx("p",{className:"text-muted-foreground max-w-xs text-xs leading-relaxed",children:"Connect a chat app to message it while you’re away."})]}),e.jsx(q,{catalog:l,boundAdapterIds:p,onSelectIntegration:A,onRequestSetup:S,disabled:x.isPending})]}),b]}):e.jsxs("div",{className:"space-y-4",children:[e.jsx("div",{className:"space-y-2",children:o.map(s=>{const c=v(s.adapterId);return e.jsx(qe,{binding:s,integrationName:c.name,integrationIconId:c.iconId,integrationAdapterType:c.adapterType,adapterState:c.state,errorMessage:c.errorMessage,onTogglePause:C=>k(s.id,C),onTest:()=>z(s.id),onEdit:()=>E(s),onRemove:()=>w(s.id)},s.id)})}),e.jsx(q,{catalog:l,boundAdapterIds:p,onSelectIntegration:A,onRequestSetup:S,disabled:x.isPending}),b]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-col items-center gap-3 rounded-xl border border-dashed px-6 py-10",children:[e.jsx(Oe,{className:"text-muted-foreground/40 size-8"}),e.jsxs("div",{className:"space-y-1 text-center",children:[e.jsx("p",{className:"text-sm font-medium",children:"Chat apps are off"}),e.jsx("p",{className:"text-muted-foreground max-w-xs text-xs leading-relaxed",children:"Turn them on in Connections to reach this agent from chat."})]}),e.jsx(B,{variant:"outline",size:"sm",onClick:()=>f(),children:"Open Connections"})]}),b]})}function os({member:a}){const{agent:i,isPending:y}=be(a),l=U();return y?e.jsx(Ce,{className:"h-32 w-full"}):i?e.jsxs("div",{className:"space-y-6",children:[e.jsx(Te,{agentId:i.id,onManage:()=>l()}),e.jsxs("section",{"aria-labelledby":"agent-messaging-access",className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx("h3",{id:"agent-messaging-access",className:"text-sm font-semibold",children:"Messaging"}),e.jsx("p",{className:"text-muted-foreground mt-0.5 text-xs",children:"Places where people can reach this agent."})]}),e.jsx(We,{agent:i})]})]}):e.jsx("p",{className:"text-muted-foreground text-sm",children:"Couldn’t read this agent’s connections."})}export{os as ConnectionsPage};
6
+ */const V={name:"plug-2",size:24,node:[["path",{d:"M9 2v6",key:"17ngun"}],["path",{d:"M15 2v6",key:"s7yy2p"}],["path",{d:"M12 17v5",key:"bb1du9"}],["path",{d:"M5 8h14",key:"pcz4l3"}],["path",{d:"M6 11V8h12v3a6 6 0 1 1-12 0Z",key:"wtfw2c"}]]};V.node;const Oe=Z(V);function _e(){const a=H();return Q({mutationFn:i=>a.testBinding(i),meta:{errorLabel:"Couldn’t test the connection"}})}const Fe={connected:P.connected,disconnected:K.warning,error:P.error,connecting:P.starting};function Le(a){const i=[];return a.canInitiate&&i.push("Can message first"),a.canReply||i.push("Can’t reply"),a.canReceive||i.push("Can’t receive"),i.join(" · ")}function $e({binding:a,integrationName:i,integrationIconId:y,integrationAdapterType:l,adapterState:x,errorMessage:g,chatDisplayName:h,lastMessageAt:d,onTogglePause:f,onTest:n,onEdit:m,onRemove:u}){const[t,o]=r.useState(!1),[j,v]=r.useState(!1),p=a.enabled===!1,[A,w]=r.useState(0);r.useEffect(()=>{if(!d||p)return;const b=setInterval(()=>w(s=>s+1),6e4);return()=>clearInterval(b)},[d,p]);const E=h?`${i} · ${h}`:i,S=Ae({sessionStrategy:a.sessionStrategy,chatDisplayName:h,channelType:a.channelType}),k=a.canInitiate||!a.canReply||!a.canReceive,z=k?Le(a):"",D=r.useMemo(()=>p?"Paused: no messages delivered":d?`Last received ${J(d).toLowerCase()}`:"No recent activity",[p,d,A]),O=async()=>{v(!0);try{await n()}finally{v(!1)}};return e.jsxs("div",{className:I("relative rounded-xl border px-4 py-3 transition-colors",x==="error"&&!p&&"border-red-500/50 bg-red-500/[0.02]",p&&"opacity-60"),children:[e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsxs("div",{className:"relative shrink-0",children:[e.jsx(_,{iconId:y,adapterType:l,size:32}),e.jsx("span",{className:I("ring-background absolute -right-0.5 -bottom-0.5 size-2.5 rounded-full ring-2",p?"bg-muted-foreground/40":Fe[x])})]}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("span",{className:"truncate text-sm font-medium",children:E}),p&&e.jsx(F,{variant:"secondary",children:"Paused"})]}),p?e.jsx("p",{className:"text-muted-foreground mt-1 text-xs",children:D}):x==="error"&&g?e.jsx("p",{className:"text-destructive text-xs",children:g}):e.jsxs(e.Fragment,{children:[S&&e.jsx("p",{className:"text-muted-foreground truncate text-xs italic",children:S}),e.jsx("p",{className:"text-muted-foreground mt-1 text-xs",children:D})]})]}),k&&e.jsxs(X,{children:[e.jsx(Y,{asChild:!0,children:e.jsx(F,{variant:"outline",children:"Restricted"})}),e.jsx(ee,{children:z})]}),e.jsxs(se,{children:[e.jsx(te,{asChild:!0,children:e.jsxs(B,{variant:"ghost",size:"icon-md",responsive:!1,className:"h-8 w-8 shrink-0",children:[e.jsx(ae,{className:"size-4"}),e.jsx("span",{className:"sr-only",children:"Actions"})]})}),e.jsxs(ne,{align:"end",children:[e.jsxs(R,{onClick:O,disabled:j||p,children:[j?e.jsx(ie,{className:"mr-2"}):e.jsx(re,{className:"mr-2 size-(--size-icon-sm)"}),"Send test"]}),e.jsx(L,{}),e.jsx(R,{onClick:()=>f(!a.enabled),children:p?e.jsxs(e.Fragment,{children:[e.jsx(ce,{className:"mr-2 size-4"}),"Resume"]}):e.jsxs(e.Fragment,{children:[e.jsx(oe,{className:"mr-2 size-4"}),"Pause"]})}),e.jsx(L,{}),e.jsx(R,{onClick:m,children:"Edit"}),e.jsx(R,{onClick:()=>o(!0),className:"text-destructive focus:text-destructive",children:"Remove"})]})]})]}),e.jsx(de,{open:t,onOpenChange:o,children:e.jsxs(le,{children:[e.jsxs(me,{children:[e.jsxs(ue,{children:["Remove the ",i," connection?"]}),e.jsx(pe,{children:"This agent stops getting messages from it."})]}),e.jsxs(xe,{children:[e.jsx(ge,{children:"Cancel"}),e.jsx(he,{onClick:()=>{u(),o(!1)},className:"bg-red-600 hover:bg-red-700",children:"Remove connection"})]})]})})]})}function qe({binding:a,integrationName:i,integrationIconId:y,integrationAdapterType:l,adapterState:x,errorMessage:g,onTogglePause:h,onTest:d,onEdit:f,onRemove:n}){const{data:m=[]}=we(a.adapterId),u=a.chatId?m.find(j=>j.chatId===a.chatId):void 0,t=(u==null?void 0:u.displayName)??(a.chatId?`#${a.chatId.slice(-4)}`:void 0),o=r.useMemo(()=>{if(u)return u.lastMessageAt;if(m.length!==0)return m.reduce((j,v)=>v.lastMessageAt>j?v.lastMessageAt:j,m[0].lastMessageAt)},[u,m]);return e.jsx($e,{binding:a,integrationName:i,integrationIconId:y,integrationAdapterType:l,adapterState:x,errorMessage:g,chatDisplayName:t,lastMessageAt:o,onTogglePause:h,onTest:d,onEdit:f,onRemove:n})}function q({catalog:a,boundAdapterIds:i,onSelectIntegration:y,onRequestSetup:l,disabled:x}){const[g,h]=r.useState(!1),d=r.useMemo(()=>a.flatMap(t=>t.instances.map(o=>({id:o.id,displayName:o.status.displayName??t.manifest.displayName,label:o.label,state:o.status.state,isDisabled:o.status.state==="error"||!o.enabled,alreadyBound:i.has(o.id),iconId:t.manifest.iconId,adapterType:t.manifest.type}))),[a,i]),f=r.useMemo(()=>a.filter(t=>!t.manifest.deprecated&&(t.instances.length===0||t.manifest.multiInstance)),[a]);function n(t){y(t),h(!1)}function m(t){h(!1),l(t)}const u=d.length===0&&f.length===0;return e.jsxs(fe,{open:g,onOpenChange:h,children:[e.jsx(je,{asChild:!0,children:e.jsxs(B,{variant:"outline",size:"sm",disabled:x,children:[e.jsx(ye,{className:"mr-1.5 size-3.5"}),"Add connection"]})}),e.jsx(ve,{className:"w-72 p-0",align:"start",children:e.jsx("div",{className:"max-h-64 overflow-y-auto",children:u?e.jsx("div",{className:"px-3 py-4 text-center",children:e.jsx("p",{className:"text-muted-foreground text-sm",children:"No connections available"})}):e.jsxs(e.Fragment,{children:[d.length>0&&e.jsx("div",{className:"py-1",children:d.map(t=>e.jsxs("button",{disabled:t.isDisabled||t.alreadyBound,onClick:()=>n(t.id),className:I("flex w-full items-center gap-3 px-3 py-2 text-left text-sm transition-colors","hover:bg-accent disabled:cursor-not-allowed disabled:opacity-50"),children:[e.jsxs("div",{className:"relative shrink-0",children:[e.jsx(_,{iconId:t.iconId,adapterType:t.adapterType,size:20,className:"text-muted-foreground"}),e.jsx("span",{className:I("ring-background absolute -right-0.5 -bottom-0.5 size-1.5 rounded-full ring-[1.5px]",P[t.state])})]}),e.jsxs("div",{className:"min-w-0 flex-1",children:[e.jsx("p",{className:"truncate font-medium",children:t.displayName}),t.label&&e.jsx("p",{className:"text-muted-foreground truncate text-xs",children:t.label})]}),e.jsx("span",{className:"text-muted-foreground/60 text-xs",children:t.alreadyBound?"Connected":ze[t.state]})]},t.id))}),f.length>0&&e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"border-t"}),e.jsxs("div",{className:"py-1",children:[e.jsx("p",{className:"text-muted-foreground px-3 py-1 text-xs font-medium",children:"Available to set up"}),f.map(t=>e.jsxs("button",{onClick:()=>m(t.manifest),className:I("flex w-full items-center gap-3 px-3 py-2 text-left text-sm transition-colors","hover:bg-accent"),children:[e.jsx(_,{iconId:t.manifest.iconId,adapterType:t.manifest.type,size:14,className:"text-muted-foreground shrink-0"}),e.jsx("span",{className:"truncate font-medium",children:t.manifest.displayName})]},t.manifest.type))]})]})]})})})]})}const M={open:!1,binding:null,adapterName:""},U={open:!1};function Ue({agent:a}){const i=Be(),{data:y=[]}=Ie(),{data:l=[]}=Ee(i),x=Se(),g=Re(),h=_e(),d=Me(),f=W(),[n,m]=r.useState(M),[u,t]=r.useState(U),o=y.filter(s=>s.agentId===a.id),j=r.useMemo(()=>{const s=new Map;for(const c of l)for(const C of c.instances){const T=C.status.state,G=T==="connected"||T==="error"?T:T==="starting"||T==="stopping"||T==="reconnecting"?"connecting":"disconnected";s.set(C.id,{state:G,name:C.status.displayName??c.manifest.displayName,iconId:c.manifest.iconId,adapterType:c.manifest.type,errorMessage:C.status.lastError??void 0})}return s},[l]),v=r.useCallback(s=>j.get(s)??{state:"disconnected",name:s,adapterType:s},[j]),p=r.useMemo(()=>new Set(o.map(s=>s.adapterId)),[o]),A=r.useCallback(async s=>{try{await x.mutateAsync({adapterId:s,agentId:a.id,sessionStrategy:"per-chat",label:"",canInitiate:!1,canReply:!0,canReceive:!0}),N.success("Connection added")}catch{}},[a.id,x]),w=r.useCallback(s=>{t({open:!0,manifest:s})},[]),E=r.useCallback(s=>{m({open:!0,binding:s,adapterName:v(s.adapterId).name})},[v]),S=r.useCallback(async s=>{try{await g.mutateAsync(s),N.success("Connection removed")}catch{}},[g]),k=r.useCallback(async(s,c)=>{try{await d.mutateAsync({id:s,updates:{enabled:c}}),N.success(c?"Connection resumed":"Connection paused")}catch{}},[d]),z=r.useCallback(async s=>{const c=await h.mutateAsync(s);return c.ok?N.success(`Test message delivered in ${c.latencyMs}ms`):N.error(c.reason?`Test message didn’t arrive: ${c.reason}`:"Test message didn’t arrive. Try again."),c},[h]),D=r.useCallback(async s=>{if(n.binding)try{await d.mutateAsync({id:n.binding.id,updates:ke(s)}),N.success("Connection updated"),m(M)}catch{}},[n.binding,d]),O=r.useCallback(async s=>{try{await g.mutateAsync(s),N.success("Connection removed"),m(M)}catch{}},[g]),b=e.jsxs(e.Fragment,{children:[n.binding&&e.jsx(De,{open:n.open,onOpenChange:s=>{s||m(M)},mode:"edit",initialValues:{adapterId:n.binding.adapterId,agentId:n.binding.agentId,sessionStrategy:n.binding.sessionStrategy,label:n.binding.label,permissionMode:n.binding.permissionMode,chatId:n.binding.chatId,channelType:n.binding.channelType,canInitiate:n.binding.canInitiate,canReply:n.binding.canReply,canReceive:n.binding.canReceive,notifyOnTaskComplete:n.binding.notifyOnTaskComplete},adapterName:n.adapterName,agentName:Ne(a),bindingId:n.binding.id,onConfirm:D,onDelete:O,isPending:d.isPending||g.isPending}),u.manifest&&e.jsx(Pe,{open:u.open,onOpenChange:s=>{s||t(U)},manifest:u.manifest,existingAdapterIds:l.flatMap(s=>s.instances.map(c=>c.id))})]});return i?l.length===0?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-col items-center gap-3 rounded-xl border border-dashed px-6 py-10",children:[e.jsx($,{className:"text-muted-foreground/40 size-8"}),e.jsxs("div",{className:"space-y-1 text-center",children:[e.jsx("p",{className:"text-sm font-medium",children:"No connections available"}),e.jsx("p",{className:"text-muted-foreground max-w-xs text-xs leading-relaxed",children:"Add Telegram, Slack or a webhook, then connect it here."})]}),e.jsx(B,{variant:"outline",size:"sm",onClick:()=>f(),children:"Add a connection"})]}),b]}):o.length===0?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-col items-center gap-3 rounded-xl border border-dashed px-6 py-10",children:[e.jsx($,{className:"text-muted-foreground/40 size-8"}),e.jsxs("div",{className:"space-y-1 text-center",children:[e.jsx("p",{className:"text-sm font-medium",children:"Message this agent from anywhere"}),e.jsx("p",{className:"text-muted-foreground max-w-xs text-xs leading-relaxed",children:"Connect a chat app to message it while you’re away."})]}),e.jsx(q,{catalog:l,boundAdapterIds:p,onSelectIntegration:A,onRequestSetup:w,disabled:x.isPending})]}),b]}):e.jsxs("div",{className:"space-y-4",children:[e.jsx("div",{className:"space-y-2",children:o.map(s=>{const c=v(s.adapterId);return e.jsx(qe,{binding:s,integrationName:c.name,integrationIconId:c.iconId,integrationAdapterType:c.adapterType,adapterState:c.state,errorMessage:c.errorMessage,onTogglePause:C=>k(s.id,C),onTest:()=>z(s.id),onEdit:()=>E(s),onRemove:()=>S(s.id)},s.id)})}),e.jsx(q,{catalog:l,boundAdapterIds:p,onSelectIntegration:A,onRequestSetup:w,disabled:x.isPending}),b]}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-col items-center gap-3 rounded-xl border border-dashed px-6 py-10",children:[e.jsx(Oe,{className:"text-muted-foreground/40 size-8"}),e.jsxs("div",{className:"space-y-1 text-center",children:[e.jsx("p",{className:"text-sm font-medium",children:"Chat apps are off"}),e.jsx("p",{className:"text-muted-foreground max-w-xs text-xs leading-relaxed",children:"Turn them on in Connections to reach this agent from chat."})]}),e.jsx(B,{variant:"outline",size:"sm",onClick:()=>f(),children:"Open Connections"})]}),b]})}function os({member:a}){const{agent:i,isPending:y}=be(a),l=W();return y?e.jsx(Ce,{className:"h-32 w-full"}):i?e.jsxs("div",{className:"space-y-6",children:[e.jsx(Te,{agentId:i.id,onManage:()=>l()}),e.jsxs("section",{"aria-labelledby":"agent-messaging-access",className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx("h3",{id:"agent-messaging-access",className:"text-sm font-semibold",children:"Messaging"}),e.jsx("p",{className:"text-muted-foreground mt-0.5 text-xs",children:"Places where people can reach this agent."})]}),e.jsx(Ue,{agent:i})]})]}):e.jsx("p",{className:"text-muted-foreground text-sm",children:"Couldn’t read this agent’s connections."})}export{os as ConnectionsPage};
@@ -1,4 +1,4 @@
1
- import{r as u,j as n,be as D,bf as F,cR as Y,cS as B,$ as G,G as h,O as H,Q as U,C as W,U as X,cT as z,L as T,cU as j,cV as V,cW as K,cX as N,cY as Z,cZ as Q,c_ as q,c$ as J,d0 as ee,d1 as te,b as ne,d2 as se,e as oe,B as S,a7 as ae}from"./index-8-iQ6PnT.js";import{M as re}from"./more-details-CadxnGyH.js";import"./relay-trace-schemas-fScydQ3A.js";import{d as ie,A as ce}from"./untrusted-text-pHjcUwfI.js";import{s as A}from"./soul-file-DgfhKQIK.js";import"./form-Bjhk9zOn.js";function le({title:e,content:t,enabled:s,maxChars:a,charCount:i,disclaimer:o,onChange:x,onBlur:b,onToggle:d,fill:r=!1}){const c=u.useCallback(g=>{x(g.target.value)},[x]);return n.jsx(D,{className:h(!s&&"opacity-60",r&&"flex min-h-0 flex-1 flex-col"),children:n.jsxs(F,{className:h(r&&"flex min-h-0 flex-1 flex-col"),children:[n.jsxs(Y,{orientation:"horizontal",className:"items-center justify-between",children:[n.jsx(B,{className:"text-sm font-medium",children:e}),d&&n.jsx(G,{checked:s,onCheckedChange:d,"aria-label":`Toggle ${e}`})]}),o&&n.jsx("p",{className:"text-muted-foreground text-xs italic",children:o}),n.jsxs("div",{className:h("space-y-2",r&&"flex min-h-0 flex-1 flex-col"),children:[n.jsx("textarea",{value:t,onChange:c,onBlur:b,rows:r?void 0:8,maxLength:a,className:h("border-border bg-background text-foreground placeholder:text-muted-foreground focus-visible:ring-ring w-full resize-none rounded-md border px-3 py-2 font-mono text-sm focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none",r&&"min-h-40 flex-1"),placeholder:s?"Write markdown here…":"Turn this on to use it"}),n.jsxs("p",{className:"text-muted-foreground text-right text-xs",children:[i??t.length," / ",a.toLocaleString()]})]})]})})}const w="[new code each turn]",ue=[...new Set([...Object.values(q),...ce,"system-reminder"])];function de(e){const t=e.length>j,s=t?e.slice(0,j):e,a=ie(s,ue);return["<agent_memory>",V,K,`--- BEGIN ${N} ${w} ---`,Z,...t?[Q]:[],a,`--- END ${N} ${w} ---`,"</agent_memory>"].join(`
1
+ import{r as u,j as n,be as D,bf as F,cT as Y,cU as B,$ as G,G as h,O as H,Q as U,C as W,U as X,cV as z,L as T,cW as j,cX as V,cY as K,cZ as N,c_ as Z,c$ as Q,d0 as q,d1 as J,d2 as ee,d3 as te,b as ne,d4 as se,e as oe,B as S,a7 as ae}from"./index-C3cvP8Fo.js";import{M as re}from"./more-details-CdJT0Ehl.js";import"./relay-trace-schemas-DF_DfZ7s.js";import{d as ie,A as ce}from"./untrusted-text-pHjcUwfI.js";import{s as A}from"./soul-file-BMpVFN7U.js";import"./form-Cru78aT-.js";function le({title:e,content:t,enabled:s,maxChars:a,charCount:i,disclaimer:o,onChange:x,onBlur:b,onToggle:d,fill:r=!1}){const c=u.useCallback(g=>{x(g.target.value)},[x]);return n.jsx(D,{className:h(!s&&"opacity-60",r&&"flex min-h-0 flex-1 flex-col"),children:n.jsxs(F,{className:h(r&&"flex min-h-0 flex-1 flex-col"),children:[n.jsxs(Y,{orientation:"horizontal",className:"items-center justify-between",children:[n.jsx(B,{className:"text-sm font-medium",children:e}),d&&n.jsx(G,{checked:s,onCheckedChange:d,"aria-label":`Toggle ${e}`})]}),o&&n.jsx("p",{className:"text-muted-foreground text-xs italic",children:o}),n.jsxs("div",{className:h("space-y-2",r&&"flex min-h-0 flex-1 flex-col"),children:[n.jsx("textarea",{value:t,onChange:c,onBlur:b,rows:r?void 0:8,maxLength:a,className:h("border-border bg-background text-foreground placeholder:text-muted-foreground focus-visible:ring-ring w-full resize-none rounded-md border px-3 py-2 font-mono text-sm focus-visible:ring-2 focus-visible:ring-offset-2 focus-visible:outline-none",r&&"min-h-40 flex-1"),placeholder:s?"Write markdown here…":"Turn this on to use it"}),n.jsxs("p",{className:"text-muted-foreground text-right text-xs",children:[i??t.length," / ",a.toLocaleString()]})]})]})})}const w="[new code each turn]",ue=[...new Set([...Object.values(q),...ce,"system-reminder"])];function de(e){const t=e.length>j,s=t?e.slice(0,j):e,a=ie(s,ue);return["<agent_memory>",V,K,`--- BEGIN ${N} ${w} ---`,Z,...t?[Q]:[],a,`--- END ${N} ${w} ---`,"</agent_memory>"].join(`
2
2
  `)}function me(e){var a;const s=[`<agent_identity>
3
3
  ${[`Name: ${e.name}`,`ID: ${e.id}`,e.description?`Description: ${e.description}`:null,(a=e.capabilities)!=null&&a.length?`Capabilities: ${e.capabilities.join(", ")}`:null].filter(i=>i!==null).join(`
4
4
  `)}