@myagentroam/server 0.13.4 → 0.13.7

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 (397) hide show
  1. package/dist/quick-start/node-runtime.js +21 -3
  2. package/dist/quick-start/run.js +11 -2
  3. package/node_modules/@myagentroam/protocol/dist/index.d.ts +8 -0
  4. package/node_modules/@myagentroam/protocol/dist/index.js +2 -0
  5. package/node_modules/@myagentroam/protocol/package.json +1 -1
  6. package/node_modules/@myagentroam/server-core/dist/mcp-service.js +5 -3
  7. package/node_modules/@myagentroam/server-core/dist/mysql-node-identity.d.ts +5 -0
  8. package/node_modules/@myagentroam/server-core/dist/mysql-node-identity.js +31 -0
  9. package/node_modules/@myagentroam/server-core/dist/skill-source-service.js +5 -3
  10. package/node_modules/@myagentroam/server-core/package.json +2 -2
  11. package/node_modules/@myagentroam-enterprise/server-implementation/dist/cli-messages.en-US.d.ts +1 -0
  12. package/node_modules/@myagentroam-enterprise/server-implementation/dist/cli-messages.en-US.js +1 -0
  13. package/node_modules/@myagentroam-enterprise/server-implementation/dist/cli-messages.zh-CN.d.ts +1 -0
  14. package/node_modules/@myagentroam-enterprise/server-implementation/dist/cli-messages.zh-CN.js +1 -0
  15. package/node_modules/@myagentroam-enterprise/server-implementation/dist/composition/quick-start-node-bootstrap.d.ts +5 -1
  16. package/node_modules/@myagentroam-enterprise/server-implementation/dist/composition/quick-start-node-bootstrap.js +9 -1
  17. package/node_modules/@myagentroam-enterprise/server-implementation/dist/composition/server-application.js +1 -0
  18. package/node_modules/@myagentroam-enterprise/server-implementation/dist/license/management-gate.js +3 -2
  19. package/node_modules/@myagentroam-enterprise/server-implementation/dist/mysql/server-database.d.ts +4 -0
  20. package/node_modules/@myagentroam-enterprise/server-implementation/dist/mysql/server-database.js +3 -0
  21. package/node_modules/@myagentroam-enterprise/server-implementation/dist/rbac/authorization-service.js +7 -1
  22. package/node_modules/@myagentroam-enterprise/server-implementation/package.json +3 -3
  23. package/package.json +6 -6
  24. package/web/assets/{AuditManagementPage-DnsGADhX.js → AuditManagementPage-fDpTFGAJ.js} +1 -1
  25. package/web/assets/{BusyIndicator-DuQN1wm-.js → BusyIndicator-81gYfHFI.js} +1 -1
  26. package/web/assets/{CodeFileEditor-BIIXeX-W.js → CodeFileEditor-BWA7aZwM.js} +3 -3
  27. package/web/assets/{ConversationTemplateManagementPage-Cq610Ift.js → ConversationTemplateManagementPage-CMwsINqq.js} +1 -1
  28. package/web/assets/{ConversationTemplateManagementPage-Bo4oyW8_.js → ConversationTemplateManagementPage-DM2WlZlh.js} +1 -1
  29. package/web/assets/{EnterpriseUserManagementPage-CaTrDqbs.js → EnterpriseUserManagementPage-BKCNfftS.js} +1 -1
  30. package/web/assets/{EnvironmentSecretManager-BsrTY2rn.js → EnvironmentSecretManager-jWSJQLLY.js} +1 -1
  31. package/web/assets/{FilePreviewLoading-RwWQoi6Y.js → FilePreviewLoading-EXabASKn.js} +1 -1
  32. package/web/assets/HtmlPreviewFrame-DQimcizh.js +5 -0
  33. package/web/assets/{HtmlPreviewFrame-CXd4x0y-.css → HtmlPreviewFrame-D_oKBx6Z.css} +1 -1
  34. package/web/assets/{LicenseManagementPage-7_EsyrhF.js → LicenseManagementPage-li8NTgz0.js} +1 -1
  35. package/web/assets/{ManagementPagination-2xmt9Zfx.js → ManagementPagination-DC_Jtk72.js} +1 -1
  36. package/web/assets/{MarAgentModelManagementPage-B5_l5kMw.js → MarAgentModelManagementPage-BhuEt5ck.js} +1 -1
  37. package/web/assets/{MarAgentModelManagementPage-CjMpM_RC.js → MarAgentModelManagementPage-DtQDSKsm.js} +1 -1
  38. package/web/assets/{MarIcon-Bey6vvFS.js → MarIcon-DRzNI1TJ.js} +1 -1
  39. package/web/assets/{MarkdownFilePreview-DroSJppq.js → MarkdownFilePreview-DRxwzEkP.js} +2 -2
  40. package/web/assets/{McpDetailsDialog-BrklXkCL.js → McpDetailsDialog-C4hLhwaZ.js} +1 -1
  41. package/web/assets/{McpSourceManagementPage-CCugQvg2.js → McpSourceManagementPage-B4o2soUo.js} +1 -1
  42. package/web/assets/{McpSourceManagementPage-BBw8Fnb7.js → McpSourceManagementPage-ChCP_9Wx.js} +1 -1
  43. package/web/assets/{NodeDetailsDialogs-U0lssvGT.js → NodeDetailsDialogs-jvve59Rc.js} +1 -1
  44. package/web/assets/NodeManagementPage-BaoMHEc6.js +1 -0
  45. package/web/assets/NodeManagementPage-DcE_Tno8.js +1 -0
  46. package/web/assets/{OAuthManagementPage-BeiBNSsN.js → OAuthManagementPage-oSorMLvE.js} +1 -1
  47. package/web/assets/{OrganizationManagementPage-CS9sBwhZ.js → OrganizationManagementPage-CEcAvCJe.js} +1 -1
  48. package/web/assets/{ResourceManagementPanel-Ck53eFHZ.js → ResourceManagementPanel-kqq0Svx_.js} +1 -1
  49. package/web/assets/{ResourceManagementPanel.vue_vue_type_script_setup_true_lang-D1vZJR_l.js → ResourceManagementPanel.vue_vue_type_script_setup_true_lang-DWpc58cT.js} +1 -1
  50. package/web/assets/{SecretManagementPage-CkoIPpRk.js → SecretManagementPage-CXmPmuQ7.js} +1 -1
  51. package/web/assets/SecretManagementPage-DnHmkYKn.js +1 -0
  52. package/web/assets/{SecretManagementPage.vue_vue_type_script_setup_true_lang-Bq3JYt0N.js → SecretManagementPage.vue_vue_type_script_setup_true_lang-DBmhix-s.js} +1 -1
  53. package/web/assets/{SessionSharePage-UYao-99J.js → SessionSharePage-Bfibf3C2.js} +2 -2
  54. package/web/assets/{SettingsContent-Cdhq2mMs.js → SettingsContent-BQYXFW0-.js} +1 -1
  55. package/web/assets/{SettingsContent-CxwrhDv3.js → SettingsContent-KFZsk8Yv.js} +1 -1
  56. package/web/assets/{SkillCenterPage-7USQN-DP.js → SkillCenterPage-5lJUA9pl.js} +1 -1
  57. package/web/assets/SkillCenterPage-BmqIek5Q.js +1 -0
  58. package/web/assets/{SkillDetailsDialog-BsiPRfbz.js → SkillDetailsDialog-CrN5o6Jk.js} +1 -1
  59. package/web/assets/{SkillSourceManagementPage-DFnaYnRe.js → SkillSourceManagementPage-Di_lVA5-.js} +1 -1
  60. package/web/assets/{SkillSourceManagementPage-BvOdElvU.js → SkillSourceManagementPage-DpenHp3H.js} +1 -1
  61. package/web/assets/{StandaloneFilePreviewPage-Cb1MpQfh.js → StandaloneFilePreviewPage-_Lh1H6-k.js} +1 -1
  62. package/web/assets/{SystemConfigurationPage-DME6cns0.js → SystemConfigurationPage-BpCsGW-2.js} +1 -1
  63. package/web/assets/SystemConfigurationPage-BqqdmrAK.js +1 -0
  64. package/web/assets/{SystemInformationPage-DGZWfrXE.js → SystemInformationPage-G9WA9kpj.js} +1 -1
  65. package/web/assets/{TerminalTabView-CuQzSev1.js → TerminalTabView-KFAT6dN-.js} +1 -1
  66. package/web/assets/{WorkbenchPage-B7W9kyOw.js → WorkbenchPage-BQdwbvse.js} +15 -15
  67. package/web/assets/WorkbenchPage-ptvzMUTa.css +1 -0
  68. package/web/assets/WorkspaceManagementPage-BYtbXfHc.js +1 -0
  69. package/web/assets/WorkspaceManagementPage-C-9iCpGW.js +1 -0
  70. package/web/assets/{_baseIteratee-3ynz4yPF.js → _baseIteratee-CEjLB6P0.js} +1 -1
  71. package/web/assets/{abnfDiagram-VCTEODGH-DupmQ6Er.js → abnfDiagram-VCTEODGH-DwwJ-B6X.js} +1 -1
  72. package/web/assets/{advancedFormat-Bqm4Kq1b.js → advancedFormat-DwAKrlQQ.js} +1 -1
  73. package/web/assets/{arc-Fq0BJf1Q.js → arc-BhUv0GFi.js} +1 -1
  74. package/web/assets/{architectureDiagram-5GKGNRK7-B4EFAJN2.js → architectureDiagram-5GKGNRK7-BYwr4pOI.js} +1 -1
  75. package/web/assets/{blockDiagram-OSKFZWR5-B75Yxltl.js → blockDiagram-OSKFZWR5-BQ0G5RBd.js} +1 -1
  76. package/web/assets/{c4Diagram-7LVT6UL2-2IJLHGl0.js → c4Diagram-7LVT6UL2-DLmelPF5.js} +1 -1
  77. package/web/assets/{catalog-ownership-service-BMQL4KAM.js → catalog-ownership-service-BQ72dnlA.js} +1 -1
  78. package/web/assets/{catalog-page-service-Cnb4fp1m.js → catalog-page-service-D4eWT4uF.js} +1 -1
  79. package/web/assets/channel-BAHh016e.js +1 -0
  80. package/web/assets/{chunk-2Q5K7J3B-BbIlpi0m.js → chunk-2Q5K7J3B-CQf0ME4y.js} +1 -1
  81. package/web/assets/{chunk-5VM5RSS4-Ds5gdCgX.js → chunk-5VM5RSS4-DQY_-Ks6.js} +1 -1
  82. package/web/assets/{chunk-F27PBJKO-DBafPcM9.js → chunk-F27PBJKO-CklCJyS6.js} +1 -1
  83. package/web/assets/{chunk-HLEWEB6X-Ctl85JUs.js → chunk-HLEWEB6X-Ofa5loFJ.js} +1 -1
  84. package/web/assets/{chunk-JWPE2WC7-Df0cT3j7.js → chunk-JWPE2WC7-Dc7083sU.js} +1 -1
  85. package/web/assets/{chunk-POPQ4Y6H-OSXerjxo.js → chunk-POPQ4Y6H-D4Zc7_fI.js} +1 -1
  86. package/web/assets/{chunk-SVP7TREG-4azsKQ7R.js → chunk-SVP7TREG-DiJC9xJx.js} +1 -1
  87. package/web/assets/{chunk-XXDRQBXY-RCyyudHN.js → chunk-XXDRQBXY-BhYPRykj.js} +1 -1
  88. package/web/assets/{chunk-ZLD2IHE6-CE_CQEwa.js → chunk-ZLD2IHE6-Cc-O9KsT.js} +1 -1
  89. package/web/assets/classDiagram-CYGNFDIV-IKe_y23-.js +1 -0
  90. package/web/assets/classDiagram-v2-TLXNO2FR-IKe_y23-.js +1 -0
  91. package/web/assets/{conversation-history-CUVjobW9.js → conversation-history-DsSE1wLH.js} +1 -1
  92. package/web/assets/{cose-bilkent-JH36ORCC-B4UTqEAs.js → cose-bilkent-JH36ORCC-rFqp0SYn.js} +1 -1
  93. package/web/assets/{cynefin-OW5HDTMX-B9U7i_AE.js → cynefin-OW5HDTMX-deO0LWKC.js} +1 -1
  94. package/web/assets/{cynefinDiagram-5FMLGOSQ-DjOvM95v.js → cynefinDiagram-5FMLGOSQ-BCj0mYAO.js} +1 -1
  95. package/web/assets/{dagre-OS7QT2EB-DC57hRv_.js → dagre-OS7QT2EB-faTq17DR.js} +1 -1
  96. package/web/assets/{diagram-S7CK7UJ4-D6mHX9Fx.js → diagram-S7CK7UJ4-cAbTZ8qd.js} +1 -1
  97. package/web/assets/{diagram-UQ7AKVKN-B2kIa0Jp.js → diagram-UQ7AKVKN-CxoALt7V.js} +1 -1
  98. package/web/assets/{diagram-VSXAHHWV-Bxv36NlF.js → diagram-VSXAHHWV-BcZM5S7Z.js} +1 -1
  99. package/web/assets/{diagram-VX7I27RA-xZ_Rnq6j.js → diagram-VX7I27RA-QIaSkKCU.js} +1 -1
  100. package/web/assets/{diagram-Z3DM3KII-CdSuHCfk.js → diagram-Z3DM3KII-tYE8PEsy.js} +1 -1
  101. package/web/assets/{ebnfDiagram-PWID7BFC-yx8cKpo-.js → ebnfDiagram-PWID7BFC-CQON9X8w.js} +1 -1
  102. package/web/assets/{el-alert-YwFfkzFY.js → el-alert-DQT74Z6k.js} +1 -1
  103. package/web/assets/{el-cascader-DLHPkFf2.js → el-cascader-B52hB1X4.js} +1 -1
  104. package/web/assets/{el-checkbox-D7B8QPnv.js → el-checkbox-D8E82IC3.js} +1 -1
  105. package/web/assets/{el-date-picker-3YbpvR4-.js → el-date-picker-CzlIv3iG.js} +1 -1
  106. package/web/assets/{el-descriptions-pbjjg_nj.js → el-descriptions-CrLOiLtM.js} +1 -1
  107. package/web/assets/{el-form-item-C0hI6zRh.js → el-form-item-CjLvz7IR.js} +1 -1
  108. package/web/assets/{el-input-BBSbjFbs.js → el-input-DsD8wPgd.js} +1 -1
  109. package/web/assets/{el-input-number-BD9kOXXp.js → el-input-number-DYTEBnhp.js} +1 -1
  110. package/web/assets/{el-radio-ByQM3NKI.js → el-radio-rHorotS0.js} +1 -1
  111. package/web/assets/{el-select-BEIvaLbl.js → el-select-vQRSFUuU.js} +1 -1
  112. package/web/assets/{el-switch-DNSjKrx8.js → el-switch-D49n4nYq.js} +1 -1
  113. package/web/assets/{el-tab-pane-P1W8N6RB.js → el-tab-pane-CpoewUFm.js} +1 -1
  114. package/web/assets/{el-table-column-BkxhVRss.js → el-table-column-DIe-Jdox.js} +1 -1
  115. package/web/assets/{enterprise-management-service-C_5GRorU.js → enterprise-management-service-CYSkSkqU.js} +1 -1
  116. package/web/assets/{erDiagram-2YWLMYGG-CysMQY_a.js → erDiagram-2YWLMYGG-D6cLXjx4.js} +1 -1
  117. package/web/assets/{error-presentation-CMcHjWH1.js → error-presentation-CKm32JzU.js} +1 -1
  118. package/web/assets/{flowDiagram-T62WH6J4-D3EWUl6L.js → flowDiagram-T62WH6J4-CWSvQfIj.js} +1 -1
  119. package/web/assets/{ganttDiagram-EL5Y4UJY-D8p3UoZQ.js → ganttDiagram-EL5Y4UJY-Bk9PlmQ0.js} +1 -1
  120. package/web/assets/{gitGraphDiagram-WWUBYQGX-DOStzbFz.js → gitGraphDiagram-WWUBYQGX-JFxyzn2J.js} +1 -1
  121. package/web/assets/{hosted-conversation-template-client-D4Wn8q89.js → hosted-conversation-template-client-CYBI7IvT.js} +1 -1
  122. package/web/assets/{index-D8dMhcz9.js → index-98DLRplS.js} +1 -1
  123. package/web/assets/{index-DkfdzgTk.js → index-BP-OH85t.js} +1 -1
  124. package/web/assets/{index-CM_0TkoS.js → index-BQ4D3lnr.js} +1 -1
  125. package/web/assets/{index-bl_S7WPN.js → index-BS-OsBk1.js} +1 -1
  126. package/web/assets/{index-DbuM3bO4.js → index-BTXpkf3M.js} +1 -1
  127. package/web/assets/{index-DLalpHzD.js → index-BbOzeZis.js} +1 -1
  128. package/web/assets/{index-m9YdF02w.js → index-BzBol34B.js} +1 -1
  129. package/web/assets/{index-DW6tcz5Z.js → index-C-rtGAiQ.js} +1 -1
  130. package/web/assets/{index-CYeXhiRu.js → index-C20Ctqox.js} +1 -1
  131. package/web/assets/{index-BwULrRvu.js → index-C20z2yeK.js} +1 -1
  132. package/web/assets/{index-0Qtks3Zu.js → index-C38uEGP7.js} +1 -1
  133. package/web/assets/{index-DuKtBO_u.js → index-C8HJ-7wK.js} +1 -1
  134. package/web/assets/{index-CwiFFfS1.js → index-CNYQPSEc.js} +1 -1
  135. package/web/assets/{index-BLspLxxD.js → index-CRCrq0fK.js} +1 -1
  136. package/web/assets/{index-nTguJepi.js → index-CeewrlMR.js} +1 -1
  137. package/web/assets/{index-C4XljgeB.js → index-D0gqeuOi.js} +1 -1
  138. package/web/assets/{index-Df8FjIGd.js → index-DCX6wtGf.js} +1 -1
  139. package/web/assets/{index-DswoMecP.js → index-DFYUX44y.js} +1 -1
  140. package/web/assets/{index-CGPHfg1G.js → index-DYEKyod1.js} +1 -1
  141. package/web/assets/{index-DrVPbxCP.js → index-Dmjcd9dH.js} +1 -1
  142. package/web/assets/{index-B35Hh-19.js → index-DqPiRdTW.js} +1 -1
  143. package/web/assets/{index-CvclBhn2.js → index-Dw3xGHpw.js} +1 -1
  144. package/web/assets/{index-B26xf70t.js → index-FxdcMPQK.js} +1 -1
  145. package/web/assets/{index-ft9uuHSX.js → index-GDJZ4nKF.js} +1 -1
  146. package/web/assets/{index-CiC8263F.js → index-QkybH-4Y.js} +1 -1
  147. package/web/assets/{index-dMLXuty7.js → index-X_ZLsJF-.js} +1 -1
  148. package/web/assets/{index-DTE-qCKl.js → index-oJjFup0f.js} +1 -1
  149. package/web/assets/{index-eJcmffyl.js → index-s_IiIj3Q.js} +1 -1
  150. package/web/assets/{index-BCZqekVb.js → index-tebwt16R.js} +3 -3
  151. package/web/assets/infoDiagram-FKFFQAWI-odw5ek8A.js +2 -0
  152. package/web/assets/{isArrayLikeObject-DBTZh06Y.js → isArrayLikeObject-CNIeaAGq.js} +1 -1
  153. package/web/assets/{ishikawaDiagram-5VMMS53U-KdtSHy0d.js → ishikawaDiagram-5VMMS53U-S3I395rk.js} +1 -1
  154. package/web/assets/{journeyDiagram-EYS64GPL-BWm62hPR.js → journeyDiagram-EYS64GPL-CEURtMQT.js} +1 -1
  155. package/web/assets/{kanban-definition-UXKFOSKX-97_o1WCj.js → kanban-definition-UXKFOSKX-B_I_ageX.js} +1 -1
  156. package/web/assets/{layout-6_PY2p7c.js → layout-C28pcZJ3.js} +1 -1
  157. package/web/assets/{linear-BT7Hx9AK.js → linear-B5pI1vN0.js} +1 -1
  158. package/web/assets/{management-url-service-B2_kg7lH.js → management-url-service-BUrqsIPf.js} +1 -1
  159. package/web/assets/{mcp-center-service-Cvb3tmP2.js → mcp-center-service-Bt8KNvBQ.js} +1 -1
  160. package/web/assets/{merge-DaI_T8rv.js → merge-k_TKlNxw.js} +1 -1
  161. package/web/assets/{mermaid.core-DL0NmHpa.js → mermaid.core-DPF_lBS3.js} +5 -5
  162. package/web/assets/{message-box-service-Vs92kolE.js → message-box-service-BzqjQhzH.js} +1 -1
  163. package/web/assets/{mindmap-definition-THT77NOG-CAPKaXNd.js → mindmap-definition-THT77NOG-D1wx2rOh.js} +1 -1
  164. package/web/assets/{mobile-dialog-return-service-3QafxIkr.js → mobile-dialog-return-service-CDghLsut.js} +1 -1
  165. package/web/assets/{oauth-callback-BlSeaEf-.js → oauth-callback-B21gNkv-.js} +1 -1
  166. package/web/assets/{pegDiagram-XKGWAZYB-hJB71Znn.js → pegDiagram-XKGWAZYB-0meuEp8g.js} +1 -1
  167. package/web/assets/{pieDiagram-E7YTZNPT-COeAYSnz.js → pieDiagram-E7YTZNPT-jC3klXwe.js} +1 -1
  168. package/web/assets/{quadrantDiagram-AXDQQJYC-DHTuVvw3.js → quadrantDiagram-AXDQQJYC-DzQbzknx.js} +1 -1
  169. package/web/assets/{railroadDiagram-O6MQD6OU-bKHrlAIG.js → railroadDiagram-O6MQD6OU-DwiX_44I.js} +1 -1
  170. package/web/assets/{requirementDiagram-IS5BZ75X--2VkiRxe.js → requirementDiagram-IS5BZ75X-DdBB28Xn.js} +1 -1
  171. package/web/assets/{runner-presentation-BW-vKSQP.js → runner-presentation-CjPY5Dey.js} +1 -1
  172. package/web/assets/{sankeyDiagram-P5KCCOFB-k5g8_UfF.js → sankeyDiagram-P5KCCOFB-B1WX3WR_.js} +1 -1
  173. package/web/assets/{sequenceDiagram-WJ2MYXX4-3T1cTiKX.js → sequenceDiagram-WJ2MYXX4-Cz_KunCM.js} +1 -1
  174. package/web/assets/{session-share-client-service-BePcCd8T.js → session-share-client-service-C-0DdFRE.js} +1 -1
  175. package/web/assets/{sizeCapture-INFHLROL-CAmN45ar.js → sizeCapture-INFHLROL-sB2YOfNo.js} +1 -1
  176. package/web/assets/{stateDiagram-XQSTLZYL-DyCNMKfm.js → stateDiagram-XQSTLZYL-Bwb7A16z.js} +1 -1
  177. package/web/assets/stateDiagram-v2-IH3M54BS-DY5Ukxza.js +1 -0
  178. package/web/assets/{swimlanes-V6O3JKXN-CShGr_U7.js → swimlanes-V6O3JKXN-BNtAnq9r.js} +1 -1
  179. package/web/assets/swimlanesDiagram-JKAHXJPX-BZu5MiNn.js +8 -0
  180. package/web/assets/{time-presentation-DYGS-swy.js → time-presentation-Cz63DSUv.js} +1 -1
  181. package/web/assets/{timeline-definition-24CTP7MA-CRagiyPI.js → timeline-definition-24CTP7MA-Cs6NtxYd.js} +1 -1
  182. package/web/assets/{union-SQqiJk16.js → union-C5QcR3bq.js} +1 -1
  183. package/web/assets/{use-form-common-props-CiMdMq_M.js → use-form-common-props-C_muwpbj.js} +1 -1
  184. package/web/assets/{use-wheel-BGpTGiSt.js → use-wheel-7n7Aiy_e.js} +1 -1
  185. package/web/assets/{vennDiagram-4TSXK5OY-_jtB4CJn.js → vennDiagram-4TSXK5OY-DQcN4PIp.js} +1 -1
  186. package/web/assets/{wardleyDiagram-VM6X3IG4-Blsdb7g_.js → wardleyDiagram-VM6X3IG4-B5qQJgni.js} +1 -1
  187. package/web/assets/{workbench-composer-interaction-controller-BvnJG4HW.js → workbench-composer-interaction-controller-BFZkEbwV.js} +19 -19
  188. package/web/assets/{workbench-presentation-b_MlZ-jq.js → workbench-presentation-DSjYJkKK.js} +1 -1
  189. package/web/assets/{xychartDiagram-S5SC5T6Z-BTu61LZj.js → xychartDiagram-S5SC5T6Z-B8yJLdGw.js} +1 -1
  190. package/web/docs/404.html +2 -2
  191. package/web/docs/administration/account.html +4 -4
  192. package/web/docs/administration/audit.html +4 -4
  193. package/web/docs/administration/conversation-templates.html +4 -4
  194. package/web/docs/administration/email-notifications.html +4 -4
  195. package/web/docs/administration/license.html +5 -5
  196. package/web/docs/administration/nodes-workspaces.html +4 -4
  197. package/web/docs/administration/oauth.html +4 -4
  198. package/web/docs/administration/secrets.html +4 -4
  199. package/web/docs/administration/template-workspace-maintenance.html +4 -4
  200. package/web/docs/administration/users-organizations.html +4 -4
  201. package/web/docs/assets/administration_license.md.CVLEsGB6.js +1 -0
  202. package/web/docs/assets/{administration_license.md.CdgtKnVd.lean.js → administration_license.md.CVLEsGB6.lean.js} +1 -1
  203. package/web/docs/assets/{app.DQ73g8Ca.js → app.HBmL36pQ.js} +1 -1
  204. package/web/docs/assets/chunks/@localSearchIndexen-US.pxMPDJyo.js +1 -0
  205. package/web/docs/assets/chunks/@localSearchIndexroot.Bmvw1ncU.js +1 -0
  206. package/web/docs/assets/chunks/{VPLocalSearchBox.vP8fXe46.js → VPLocalSearchBox.9e8uHIOt.js} +1 -1
  207. package/web/docs/assets/chunks/{theme.CES2lSYr.js → theme.CXF2ox30.js} +2 -2
  208. package/web/docs/assets/deployment_network.md.Bbi7-zH2.js +1 -0
  209. package/web/docs/assets/deployment_network.md.Bbi7-zH2.lean.js +1 -0
  210. package/web/docs/assets/deployment_upgrade.md.CG_VFxvG.js +1 -0
  211. package/web/docs/assets/deployment_upgrade.md.CG_VFxvG.lean.js +1 -0
  212. package/web/docs/assets/{en-US_administration_license.md.jmAMVJjC.js → en-US_administration_license.md.GCAYq1LT.js} +1 -1
  213. package/web/docs/assets/{en-US_administration_license.md.jmAMVJjC.lean.js → en-US_administration_license.md.GCAYq1LT.lean.js} +1 -1
  214. package/web/docs/assets/en-US_deployment_network.md.770EzfaT.js +1 -0
  215. package/web/docs/assets/en-US_deployment_network.md.770EzfaT.lean.js +1 -0
  216. package/web/docs/assets/en-US_deployment_upgrade.md.DDevql7U.js +1 -0
  217. package/web/docs/assets/{en-US_deployment_upgrade.md.DZiDDiLn.lean.js → en-US_deployment_upgrade.md.DDevql7U.lean.js} +1 -1
  218. package/web/docs/assets/en-US_getting-started_npm-quick-start.md.D46Ec15e.js +3 -0
  219. package/web/docs/assets/en-US_getting-started_npm-quick-start.md.D46Ec15e.lean.js +1 -0
  220. package/web/docs/assets/{en-US_getting-started_overview.md.Bug5sh21.js → en-US_getting-started_overview.md.CB-43rGR.js} +1 -1
  221. package/web/docs/assets/{en-US_getting-started_overview.md.Bug5sh21.lean.js → en-US_getting-started_overview.md.CB-43rGR.lean.js} +1 -1
  222. package/web/docs/assets/en-US_getting-started_prerequisites.md.BFxGOlUy.js +1 -0
  223. package/web/docs/assets/en-US_getting-started_prerequisites.md.BFxGOlUy.lean.js +1 -0
  224. package/web/docs/assets/{en-US_getting-started_server-installation.md._k2XGM85.js → en-US_getting-started_server-installation.md.C7SjGDJt.js} +2 -2
  225. package/web/docs/assets/en-US_workbench_skills.md.xchi27R9.js +1 -0
  226. package/web/docs/assets/{en-US_workbench_skills.md.C4xlXyjC.lean.js → en-US_workbench_skills.md.xchi27R9.lean.js} +1 -1
  227. package/web/docs/assets/getting-started_npm-quick-start.md.CIYjFmiu.js +3 -0
  228. package/web/docs/assets/getting-started_npm-quick-start.md.CIYjFmiu.lean.js +1 -0
  229. package/web/docs/assets/{getting-started_overview.md.CA1CCOBc.js → getting-started_overview.md.Cv-HSfAh.js} +1 -1
  230. package/web/docs/assets/getting-started_prerequisites.md.DjWWTA7V.js +1 -0
  231. package/web/docs/assets/{getting-started_prerequisites.md.D26KU42D.lean.js → getting-started_prerequisites.md.DjWWTA7V.lean.js} +1 -1
  232. package/web/docs/assets/{getting-started_server-installation.md.D3P3Lmc2.js → getting-started_server-installation.md.BsEfVH6b.js} +2 -2
  233. package/web/docs/assets/workbench_skills.md.BQw1Wuiy.js +1 -0
  234. package/web/docs/assets/{workbench_skills.md.rWZ_VuoB.lean.js → workbench_skills.md.BQw1Wuiy.lean.js} +1 -1
  235. package/web/docs/concepts/architecture.html +4 -4
  236. package/web/docs/concepts/data-and-security.html +4 -4
  237. package/web/docs/concepts/files-git-terminal.html +4 -4
  238. package/web/docs/concepts/node-and-workspace.html +4 -4
  239. package/web/docs/concepts/permissions-and-sharing.html +4 -4
  240. package/web/docs/concepts/runner-control.html +4 -4
  241. package/web/docs/concepts/secrets.html +4 -4
  242. package/web/docs/concepts/session-run-turn.html +4 -4
  243. package/web/docs/deployment/backup-restore.html +4 -4
  244. package/web/docs/deployment/network.html +5 -5
  245. package/web/docs/deployment/node-installation.html +4 -4
  246. package/web/docs/deployment/node-linux.html +4 -4
  247. package/web/docs/deployment/node-macos.html +4 -4
  248. package/web/docs/deployment/node-windows.html +4 -4
  249. package/web/docs/deployment/production.html +4 -4
  250. package/web/docs/deployment/security-checklist.html +4 -4
  251. package/web/docs/deployment/upgrade.html +5 -5
  252. package/web/docs/en-US/administration/account.html +4 -4
  253. package/web/docs/en-US/administration/audit.html +4 -4
  254. package/web/docs/en-US/administration/conversation-templates.html +4 -4
  255. package/web/docs/en-US/administration/email-notifications.html +4 -4
  256. package/web/docs/en-US/administration/license.html +5 -5
  257. package/web/docs/en-US/administration/nodes-workspaces.html +4 -4
  258. package/web/docs/en-US/administration/oauth.html +4 -4
  259. package/web/docs/en-US/administration/secrets.html +4 -4
  260. package/web/docs/en-US/administration/template-workspace-maintenance.html +4 -4
  261. package/web/docs/en-US/administration/users-organizations.html +4 -4
  262. package/web/docs/en-US/concepts/architecture.html +4 -4
  263. package/web/docs/en-US/concepts/data-and-security.html +4 -4
  264. package/web/docs/en-US/concepts/files-git-terminal.html +4 -4
  265. package/web/docs/en-US/concepts/node-and-workspace.html +4 -4
  266. package/web/docs/en-US/concepts/permissions-and-sharing.html +4 -4
  267. package/web/docs/en-US/concepts/runner-control.html +4 -4
  268. package/web/docs/en-US/concepts/secrets.html +4 -4
  269. package/web/docs/en-US/concepts/session-run-turn.html +4 -4
  270. package/web/docs/en-US/deployment/backup-restore.html +4 -4
  271. package/web/docs/en-US/deployment/network.html +5 -5
  272. package/web/docs/en-US/deployment/node-installation.html +4 -4
  273. package/web/docs/en-US/deployment/node-linux.html +4 -4
  274. package/web/docs/en-US/deployment/node-macos.html +4 -4
  275. package/web/docs/en-US/deployment/node-windows.html +4 -4
  276. package/web/docs/en-US/deployment/production.html +4 -4
  277. package/web/docs/en-US/deployment/security-checklist.html +4 -4
  278. package/web/docs/en-US/deployment/upgrade.html +5 -5
  279. package/web/docs/en-US/getting-started/connect-node.html +4 -4
  280. package/web/docs/en-US/getting-started/first-agent-session.html +4 -4
  281. package/web/docs/en-US/getting-started/first-login.html +4 -4
  282. package/web/docs/en-US/getting-started/next-steps.html +4 -4
  283. package/web/docs/en-US/getting-started/npm-quick-start.html +7 -7
  284. package/web/docs/en-US/getting-started/overview.html +5 -5
  285. package/web/docs/en-US/getting-started/prerequisites.html +5 -5
  286. package/web/docs/en-US/getting-started/register-workspace.html +4 -4
  287. package/web/docs/en-US/getting-started/server-installation.html +6 -6
  288. package/web/docs/en-US/operations/marctl.html +4 -4
  289. package/web/docs/en-US/reference/configuration.html +4 -4
  290. package/web/docs/en-US/reference/keyboard-shortcuts.html +4 -4
  291. package/web/docs/en-US/reference/limits.html +4 -4
  292. package/web/docs/en-US/reference/ports-paths-data.html +4 -4
  293. package/web/docs/en-US/reference/status-and-errors.html +4 -4
  294. package/web/docs/en-US/runners/claude-code.html +4 -4
  295. package/web/docs/en-US/runners/codex.html +4 -4
  296. package/web/docs/en-US/runners/mar-agent.html +4 -4
  297. package/web/docs/en-US/runners/opencode.html +4 -4
  298. package/web/docs/en-US/runners/overview.html +4 -4
  299. package/web/docs/en-US/runners/runner-troubleshooting.html +4 -4
  300. package/web/docs/en-US/troubleshooting/node-offline.html +4 -4
  301. package/web/docs/en-US/troubleshooting/quick-diagnosis.html +4 -4
  302. package/web/docs/en-US/troubleshooting/session-run.html +4 -4
  303. package/web/docs/en-US/troubleshooting/terminal.html +4 -4
  304. package/web/docs/en-US/troubleshooting/workspace-files.html +4 -4
  305. package/web/docs/en-US/workbench/composer.html +4 -4
  306. package/web/docs/en-US/workbench/context-and-plan.html +4 -4
  307. package/web/docs/en-US/workbench/conversation.html +4 -4
  308. package/web/docs/en-US/workbench/file-reference-and-attachment.html +4 -4
  309. package/web/docs/en-US/workbench/files.html +4 -4
  310. package/web/docs/en-US/workbench/git-changes.html +4 -4
  311. package/web/docs/en-US/workbench/git-history.html +4 -4
  312. package/web/docs/en-US/workbench/hosted-conversations.html +4 -4
  313. package/web/docs/en-US/workbench/mobile.html +4 -4
  314. package/web/docs/en-US/workbench/navigation.html +4 -4
  315. package/web/docs/en-US/workbench/sessions.html +4 -4
  316. package/web/docs/en-US/workbench/skills.html +5 -5
  317. package/web/docs/en-US/workbench/terminal.html +4 -4
  318. package/web/docs/getting-started/connect-node.html +4 -4
  319. package/web/docs/getting-started/first-agent-session.html +4 -4
  320. package/web/docs/getting-started/first-login.html +4 -4
  321. package/web/docs/getting-started/next-steps.html +4 -4
  322. package/web/docs/getting-started/npm-quick-start.html +7 -7
  323. package/web/docs/getting-started/overview.html +5 -5
  324. package/web/docs/getting-started/prerequisites.html +5 -5
  325. package/web/docs/getting-started/register-workspace.html +4 -4
  326. package/web/docs/getting-started/server-installation.html +6 -6
  327. package/web/docs/hashmap.json +1 -1
  328. package/web/docs/operations/marctl.html +4 -4
  329. package/web/docs/reference/configuration.html +4 -4
  330. package/web/docs/reference/keyboard-shortcuts.html +4 -4
  331. package/web/docs/reference/limits.html +4 -4
  332. package/web/docs/reference/ports-paths-data.html +4 -4
  333. package/web/docs/reference/status-and-errors.html +4 -4
  334. package/web/docs/runners/claude-code.html +4 -4
  335. package/web/docs/runners/codex.html +4 -4
  336. package/web/docs/runners/mar-agent.html +4 -4
  337. package/web/docs/runners/opencode.html +4 -4
  338. package/web/docs/runners/overview.html +4 -4
  339. package/web/docs/runners/runner-troubleshooting.html +4 -4
  340. package/web/docs/troubleshooting/node-offline.html +4 -4
  341. package/web/docs/troubleshooting/quick-diagnosis.html +4 -4
  342. package/web/docs/troubleshooting/session-run.html +4 -4
  343. package/web/docs/troubleshooting/terminal.html +4 -4
  344. package/web/docs/troubleshooting/workspace-files.html +4 -4
  345. package/web/docs/workbench/composer.html +4 -4
  346. package/web/docs/workbench/context-and-plan.html +4 -4
  347. package/web/docs/workbench/conversation.html +4 -4
  348. package/web/docs/workbench/file-reference-and-attachment.html +4 -4
  349. package/web/docs/workbench/files.html +4 -4
  350. package/web/docs/workbench/git-changes.html +4 -4
  351. package/web/docs/workbench/git-history.html +4 -4
  352. package/web/docs/workbench/hosted-conversations.html +4 -4
  353. package/web/docs/workbench/mobile.html +4 -4
  354. package/web/docs/workbench/navigation.html +4 -4
  355. package/web/docs/workbench/sessions.html +4 -4
  356. package/web/docs/workbench/skills.html +5 -5
  357. package/web/docs/workbench/terminal.html +4 -4
  358. package/web/index.html +1 -1
  359. package/web/service-worker.js +1 -1
  360. package/web/web-version.json +1 -1
  361. package/web/assets/HtmlPreviewFrame-ClcGdqP1.js +0 -5
  362. package/web/assets/NodeManagementPage-8rxZ_6Zt.js +0 -1
  363. package/web/assets/NodeManagementPage-Ccod7oYU.js +0 -1
  364. package/web/assets/SecretManagementPage-CdgTv3Ov.js +0 -1
  365. package/web/assets/SkillCenterPage-93Mc7S1A.js +0 -1
  366. package/web/assets/SystemConfigurationPage-Dg5txhny.js +0 -1
  367. package/web/assets/WorkbenchPage-C1l73Bo7.css +0 -1
  368. package/web/assets/WorkspaceManagementPage-D_xOZ93I.js +0 -1
  369. package/web/assets/WorkspaceManagementPage-K7-IdW3A.js +0 -1
  370. package/web/assets/channel-Df00MEsi.js +0 -1
  371. package/web/assets/classDiagram-CYGNFDIV-BkPukKVs.js +0 -1
  372. package/web/assets/classDiagram-v2-TLXNO2FR-BkPukKVs.js +0 -1
  373. package/web/assets/infoDiagram-FKFFQAWI-DMowyzbG.js +0 -2
  374. package/web/assets/stateDiagram-v2-IH3M54BS-BEZ0_9G2.js +0 -1
  375. package/web/assets/swimlanesDiagram-JKAHXJPX-2keKlibd.js +0 -8
  376. package/web/docs/assets/administration_license.md.CdgtKnVd.js +0 -1
  377. package/web/docs/assets/chunks/@localSearchIndexen-US.BmMs0yM1.js +0 -1
  378. package/web/docs/assets/chunks/@localSearchIndexroot.BUqMaw8-.js +0 -1
  379. package/web/docs/assets/deployment_network.md.BarghfLt.js +0 -1
  380. package/web/docs/assets/deployment_network.md.BarghfLt.lean.js +0 -1
  381. package/web/docs/assets/deployment_upgrade.md.BESOToM5.js +0 -1
  382. package/web/docs/assets/deployment_upgrade.md.BESOToM5.lean.js +0 -1
  383. package/web/docs/assets/en-US_deployment_network.md.DdOgOLns.js +0 -1
  384. package/web/docs/assets/en-US_deployment_network.md.DdOgOLns.lean.js +0 -1
  385. package/web/docs/assets/en-US_deployment_upgrade.md.DZiDDiLn.js +0 -1
  386. package/web/docs/assets/en-US_getting-started_npm-quick-start.md.CLCHq7k_.js +0 -3
  387. package/web/docs/assets/en-US_getting-started_npm-quick-start.md.CLCHq7k_.lean.js +0 -1
  388. package/web/docs/assets/en-US_getting-started_prerequisites.md.Bpx_AQD1.js +0 -1
  389. package/web/docs/assets/en-US_getting-started_prerequisites.md.Bpx_AQD1.lean.js +0 -1
  390. package/web/docs/assets/en-US_workbench_skills.md.C4xlXyjC.js +0 -1
  391. package/web/docs/assets/getting-started_npm-quick-start.md.B9varoSe.js +0 -3
  392. package/web/docs/assets/getting-started_npm-quick-start.md.B9varoSe.lean.js +0 -1
  393. package/web/docs/assets/getting-started_prerequisites.md.D26KU42D.js +0 -1
  394. package/web/docs/assets/workbench_skills.md.rWZ_VuoB.js +0 -1
  395. /package/web/docs/assets/{en-US_getting-started_server-installation.md._k2XGM85.lean.js → en-US_getting-started_server-installation.md.C7SjGDJt.lean.js} +0 -0
  396. /package/web/docs/assets/{getting-started_overview.md.CA1CCOBc.lean.js → getting-started_overview.md.Cv-HSfAh.lean.js} +0 -0
  397. /package/web/docs/assets/{getting-started_server-installation.md.D3P3Lmc2.lean.js → getting-started_server-installation.md.BsEfVH6b.lean.js} +0 -0
@@ -1,21 +1,21 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/TerminalTabView-CuQzSev1.js","assets/index-BCZqekVb.js","assets/index-By66DnCX.css","assets/MarIcon-Bey6vvFS.js","assets/MarIcon-aPIFZI-D.css","assets/HtmlPreviewFrame-ClcGdqP1.js","assets/FilePreviewLoading-RwWQoi6Y.js","assets/use-form-common-props-CiMdMq_M.js","assets/mobile-dialog-return-service-3QafxIkr.js","assets/el-input-BBSbjFbs.js","assets/el-input-8ehKRrZb.css","assets/mobile-dialog-return-service-pE1w6qia.css","assets/BusyIndicator-DuQN1wm-.js","assets/FilePreviewLoading-BFt-X_61.css","assets/el-form-item-C0hI6zRh.js","assets/el-form-item-D_relxjU.css","assets/el-switch-DNSjKrx8.js","assets/message-box-service-Vs92kolE.js","assets/message-box-service-amIz9eLF.css","assets/el-switch-DpR9-s4E.css","assets/error-presentation-CMcHjWH1.js","assets/file-presentation-Cm7tx53N.js","assets/HtmlPreviewFrame-CXd4x0y-.css","assets/time-presentation-DYGS-swy.js","assets/conversation-history-CUVjobW9.js","assets/workbench-presentation-b_MlZ-jq.js","assets/workbench-presentation-CPQZ-olG.css","assets/workbench-composer-interaction-controller-BvnJG4HW.js","assets/el-checkbox-D7B8QPnv.js","assets/last-DXTTfs9a.js","assets/el-checkbox-CzNtyWdF.css","assets/el-radio-ByQM3NKI.js","assets/el-radio-B4O75OaI.css","assets/el-select-BEIvaLbl.js","assets/index-DuKtBO_u.js","assets/_baseFindIndex-D7XfJLKM.js","assets/_baseIteratee-3ynz4yPF.js","assets/el-select-D5zQ8kOe.css","assets/runner-presentation-BW-vKSQP.js","assets/workbench-composer-interaction-controller-C2fEVYPz.css","assets/el-checkbox-group-D_6SYB2i.css","assets/el-tag-1VV9QMa7.css","assets/hosted-conversation-template-client-D4Wn8q89.js","assets/oauth-callback-BlSeaEf-.js","assets/el-alert-YwFfkzFY.js","assets/el-alert-B6UgayC7.css","assets/code-navigation-target-BlnRe0-a.js","assets/mcp-center-service-Cvb3tmP2.js","assets/catalog-page-service-Cnb4fp1m.js","assets/ManagementPagination-2xmt9Zfx.js","assets/ManagementPagination-BWt9HPYQ.css","assets/el-date-picker-3YbpvR4-.js","assets/index-m9YdF02w.js","assets/el-table-column-BkxhVRss.js","assets/merge-DaI_T8rv.js","assets/isArrayLikeObject-DBTZh06Y.js","assets/el-table-column-Dp73S2HR.css","assets/advancedFormat-Bqm4Kq1b.js","assets/el-date-picker-BsrAVvYx.css","assets/union-SQqiJk16.js","assets/el-input-number-BD9kOXXp.js","assets/el-input-number-DExoAqKP.css","assets/enterprise-management-service-C_5GRorU.js","assets/NodeDetailsDialogs-U0lssvGT.js","assets/el-descriptions-pbjjg_nj.js","assets/el-descriptions-BpDzfuC8.css","assets/EnvironmentSecretManager-BsrTY2rn.js","assets/management-url-service-B2_kg7lH.js","assets/EnvironmentSecretManager-C8dOmosG.css","assets/NodeDetailsDialogs-Bga2VjXd.css","assets/TerminalTabView-rhaLa1jH.css","assets/SettingsContent-Cdhq2mMs.js","assets/SettingsContent-v_lWDRPM.css","assets/SettingsContent-CxwrhDv3.js","assets/SettingsContent-KfsLZ_Eu.css"])))=>i.map(i=>d[i]);
2
- import{a7 as oa,an as $t,d as at,a9 as ll,aa as mn,z as cl,c as j,o as f,b as O,G as K,S as Ke,u as o,H as W,g as B,v as ve,X as ut,d7 as on,aD as $v,aF as Fv,bL as Va,a as x,b_ as dl,U as ra,af as ia,ak as Uv,aj as Vv,ch as qv,cl as Hv,al as Bv,p as we,q as Z,f as Ct,eQ as Gv,ae as hn,w as He,as as Li,ai as ul,at as zv,ao as vl,eR as Kv,I as ke,M as yr,ac as fl,Q as pl,J as rt,E as Le,aK as At,c0 as jv,cF as _v,cr as Yv,em as Qv,av as Jv,O as Ve,P as Je,eS as Ra,eT as Xv,cQ as Wi,cE as Zv,ar as ef,eU as tf,eV as gl,t as c,dv as Dn,D as Dt,ah as ml,_ as dt,eW as Et,A as jt,dM as Xa,dO as ct,e as gt,s as qe,eX as nf,eY as af,eZ as of,cd as Ht,e_ as rf,ce as Zn,bk as xt,K as et,e$ as sf,f0 as lf,f1 as cf,r as Fn,cC as Mi,n as sa,f2 as hl,f3 as df,a0 as wt,be as qa,f4 as uf,f5 as vf,f6 as xi,f7 as ff,dD as Ha,Y as mt,f8 as pf,f9 as gf,fa as mf,fb as hf,fc as yf,fd as wf,fe as kf,ff as ea,fg as $i,fh as bf,fi as If,fj as Aa,fk as Sf,fl as Cf,fm as Tf,fn as No,aL as Ef,fo as Rf,L as St,ad as It,aB as yl,aM as la,cL as wr,fp as Af,F as ca,fq as Fi,fr as Ui,bg as kr,ag as br,R as Nf,fs as Df,bi as Pf,bj as Vi,dP as wl,b5 as kl,$ as bl,cf as Il,dK as Sl,ft as Of,fu as Lf,d0 as Wf}from"./index-BCZqekVb.js";import{U as ta,C as Ir,a as bt,E as Ft}from"./el-input-BBSbjFbs.js";import{f as Gt}from"./time-presentation-DYGS-swy.js";import{q as Mf,d as xf,s as $f,b as Do,g as xa}from"./conversation-history-CUVjobW9.js";import{a as Ff,t as Uf,e as qi,b as Zo,d as Jn,n as $a,f as er,s as Vf,g as Sn,w as qf,h as Hf,i as Bf,W as Po,j as Gf,k as Hi,E as Sr,l as Bi}from"./workbench-presentation-b_MlZ-jq.js";import{o as Gi,c as tr,f as Cl,M as zi,z as zf,E as Xt,u as _t,m as Yt}from"./mobile-dialog-return-service-3QafxIkr.js";import{O as En,P as Kf,Q as jf,R as _f,S as Ba,T as Yf,v as Tl,G as El,J as Rl,K as Al,U as nr,d as Qf,s as Jf,V as Xf,c as Zf,p as ep,i as tp,k as np,g as ap,l as op,j as rp,b as ip,x as sp,h as lp,f as cp,r as dp,n as Nl,W as up,X as vp,w as Dl,a as fp,Y as pp,Z as gp,_ as mp,$ as hp,L as yp,a0 as Ki,a1 as Pl,a2 as wp,a3 as kp,a4 as ji,t as bp,a5 as Ip,a6 as Sp,a7 as Oo,a8 as Cp,a9 as Tp,o as Ep,m as Rp,aa as Ga,ab as Ap,e as Np,ac as Dp,ad as yn,ae as Pp,H as Ol,af as Op,ag as Ll,ah as Wl,C as Ml,z as xl,I as $l,ai as Na,aj as Lp,y as Wp,D as Mp,B as xp,E as $p,A as Fp,F as Up}from"./workbench-composer-interaction-controller-BvnJG4HW.js";import{E as Nt,a as _i}from"./message-box-service-Vs92kolE.js";import{r as $n,l as Fl,a as Ul}from"./runner-presentation-BW-vKSQP.js";import{e as it,f as Cr,a as Tr}from"./error-presentation-CMcHjWH1.js";import{B as Yi,n as Vp,s as za,T as Qi,d as ar,C as qp,u as Er,D as Ji,S as Xi,a as or,w as an,i as Ka,c as Hp,G as Bp,H as Lo,p as Gp,b as rr,f as ir,h as rn,E as sn,g as ln,A as sr,l as Zi,k as es,j as zp,F as Kp}from"./FilePreviewLoading-RwWQoi6Y.js";import{c as jp,o as ts,w as _p,t as ns,f as as,e as Wo,h as Yp,i as Qp,g as lr,d as os,a as rs,r as is,s as Jp,b as Xp,p as Za,u as Zp,I as eg,F as Mo,v as tg,x as ng,l as Vl,W as ql,k as Hl,y as ag,H as og,n as rg,z as Rr,A as ig,M as Bl,B as fn}from"./HtmlPreviewFrame-ClcGdqP1.js";import{c as Gl,f as ja,w as sg}from"./file-presentation-Cm7tx53N.js";import{l as zl}from"./hosted-conversation-template-client-D4Wn8q89.js";import{o as lg}from"./oauth-callback-BlSeaEf-.js";import{E as Ar}from"./el-alert-YwFfkzFY.js";import{M as De}from"./MarIcon-Bey6vvFS.js";import{n as cg}from"./code-navigation-target-BlnRe0-a.js";import{E as da}from"./index-DuKtBO_u.js";/* empty css */import{E as wn,a as Un,b as dg}from"./el-select-BEIvaLbl.js";import{o as Kl,E as jl}from"./el-checkbox-D7B8QPnv.js";import{c as ug}from"./mcp-center-service-Cvb3tmP2.js";import{B as gn}from"./BusyIndicator-DuQN1wm-.js";import{a as ua,E as va}from"./el-form-item-C0hI6zRh.js";import{t as vg,P as fg,u as pg,b as ss,a as gg,c as mg,d as hg,p as yg,e as wg,f as kg,E as bg}from"./el-date-picker-3YbpvR4-.js";import{u as xo}from"./union-SQqiJk16.js";import{d as _l}from"./advancedFormat-Bqm4Kq1b.js";import{a as Ig,b as Sg}from"./el-radio-ByQM3NKI.js";import{E as Cg}from"./ManagementPagination-2xmt9Zfx.js";import{E as Tg}from"./el-switch-DNSjKrx8.js";import{a as Eg}from"./use-form-common-props-CiMdMq_M.js";import{a as Rg,E as Ag}from"./el-table-column-BkxhVRss.js";import{E as Ng}from"./el-input-number-BD9kOXXp.js";import{c as ls}from"./enterprise-management-service-C_5GRorU.js";import{N as Dg}from"./NodeDetailsDialogs-U0lssvGT.js";const Pg=oa({...vg,parsedValue:{type:$t(Array)}}),Og=["disabled"];var Lg=at({__name:"panel-time-range",props:Pg,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,a=t,r=(ne,M)=>{const ee=[];for(let le=ne;le<=M;le++)ee.push(le);return ee},{t:s,lang:i}=ll(),l=mn("time"),v=mn("picker"),u=cl(fg),{arrowControl:d,disabledHours:w,disabledMinutes:k,disabledSeconds:T,defaultValue:p}=u.props,g=j(()=>[l.be("range-picker","body"),l.be("panel","content"),l.is("arrow",d),m.value?"has-seconds":""]),R=j(()=>[l.be("range-picker","body"),l.be("panel","content"),l.is("arrow",d),m.value?"has-seconds":""]),b=j(()=>n.parsedValue[0]),C=j(()=>n.parsedValue[1]),I=pg(n,{modelValue:j(()=>u.props.modelValue),valueOnClear:j(()=>u?.emptyValues?u.emptyValues.valueOnClear.value:null)}),S=()=>{const ne=I.value;a("pick",ne,!1),ut(()=>{I.value=ne})},m=j(()=>n.format.includes("ss")),A=j(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),L=(ne=!1)=>{a("pick",[b.value,C.value],ne)},y=ne=>{H(ne.millisecond(0),C.value)},D=ne=>{H(b.value,ne.millisecond(0))},E=ne=>{const M=ne.map(le=>on(le).locale(i.value)),ee=fe(M);return M[0].isSame(ee[0])&&M[1].isSame(ee[1])},H=(ne,M)=>{n.visible&&a("pick",[ne,M],!0)},X=j(()=>b.value>C.value),_=x([0,2]),U=(ne,M)=>{a("select-range",ne,M,"min"),_.value=[ne,M]},Q=j(()=>m.value?11:8),$=(ne,M)=>{a("select-range",ne,M,"max");const ee=o(Q);_.value=[ne+ee,M+ee]},V=ne=>{const M=m.value?[0,3,6,11,14,17]:[0,3,8,11],ee=["hours","minutes"].concat(m.value?["seconds"]:[]),le=(M.indexOf(_.value[0])+ne+M.length)%M.length,Ee=M.length/2;le<Ee?ce.start_emitSelectRange(ee[le]):ce.end_emitSelectRange(ee[le-Ee])},N=ne=>{const M=$v(ne),{left:ee,right:le,up:Ee,down:xe}=Fv;if([ee,le].includes(M)){V(M===ee?-1:1),ne.preventDefault();return}if([Ee,xe].includes(M)){const Me=M===Ee?-1:1;ce[`${_.value[0]<Q.value?"start":"end"}_scrollDown`](Me),ne.preventDefault();return}},h=(ne,M)=>{const ee=w?w(ne):[],le=ne==="start",Ee=(M||(le?C.value:b.value)).hour();return xo(ee,le?r(Ee+1,23):r(0,Ee-1))},F=(ne,M,ee)=>{const le=k?k(ne,M):[],Ee=M==="start",xe=ee||(Ee?C.value:b.value);if(ne!==xe.hour())return le;const Me=xe.minute();return xo(le,Ee?r(Me+1,59):r(0,Me-1))},z=(ne,M,ee,le)=>{const Ee=T?T(ne,M,ee):[],xe=ee==="start",Me=le||(xe?C.value:b.value),Se=Me.hour(),ye=Me.minute();if(ne!==Se||M!==ye)return Ee;const Fe=Me.second();return xo(Ee,xe?r(Fe+1,59):r(0,Fe-1))},fe=([ne,M])=>[oe(ne,"start",!0,M),oe(M,"end",!1,ne)],{getAvailableHours:J,getAvailableMinutes:re,getAvailableSeconds:ge}=mg(h,F,z),{timePickerOptions:ce,getAvailableTime:oe,onSetOption:P}=gg({getAvailableHours:J,getAvailableMinutes:re,getAvailableSeconds:ge}),G=ne=>ne?Va(ne)?ne.map(M=>on(M,n.format).locale(i.value)):on(ne,n.format).locale(i.value):null,ue=()=>{if(Va(p))return p.map(M=>on(M).locale(i.value));const ne=on(p).locale(i.value);return[ne,ne.add(60,"m")]};return a("set-picker-option",["parseUserInput",G]),a("set-picker-option",["isValidValue",E]),a("set-picker-option",["handleKeydownInput",N]),a("set-picker-option",["getDefaultValue",ue]),a("set-picker-option",["getRangeAvailableTime",fe]),a("set-picker-option",["handleCancel",S]),(ne,M)=>ne.actualVisible?(f(),O("div",{key:0,class:Ke([o(l).b("range-picker"),o(v).b("panel")])},[K("div",{class:Ke(o(l).be("range-picker","content"))},[K("div",{class:Ke(o(l).be("range-picker","cell"))},[K("div",{class:Ke(o(l).be("range-picker","header"))},W(o(s)("el.datepicker.startTime")),3),K("div",{class:Ke(g.value)},[B(ss,{ref:"minSpinner",role:"start","show-seconds":m.value,"am-pm-mode":A.value,"arrow-control":o(d),"spinner-date":b.value,"disabled-hours":h,"disabled-minutes":F,"disabled-seconds":z,onChange:y,onSetOption:o(P),onSelectRange:U},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2),K("div",{class:Ke(o(l).be("range-picker","cell"))},[K("div",{class:Ke(o(l).be("range-picker","header"))},W(o(s)("el.datepicker.endTime")),3),K("div",{class:Ke(R.value)},[B(ss,{ref:"maxSpinner",role:"end","show-seconds":m.value,"am-pm-mode":A.value,"arrow-control":o(d),"spinner-date":C.value,"disabled-hours":h,"disabled-minutes":F,"disabled-seconds":z,onChange:D,onSetOption:o(P),onSelectRange:$},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2)],2),K("div",{class:Ke(o(l).be("panel","footer"))},[K("button",{type:"button",class:Ke([o(l).be("panel","btn"),"cancel"]),onClick:M[0]||(M[0]=ee=>S())},W(o(s)("el.datepicker.cancel")),3),K("button",{type:"button",class:Ke([o(l).be("panel","btn"),"confirm"]),disabled:X.value,onClick:M[1]||(M[1]=ee=>L())},W(o(s)("el.datepicker.confirm")),11,Og)],2)],2)):ve("v-if",!0)}}),Wg=Lg;on.extend(_l);var Mg=at({name:"ElTimePicker",install:null,props:{...hg,isRange:Boolean},emits:[ta],setup(e,t){const n=x(),[a,r]=e.isRange?["timerange",Wg]:["time",yg],s=i=>t.emit(ta,i);return dl(wg,e.popperOptions),t.expose({focus:()=>{n.value?.focus()},blur:()=>{n.value?.blur()},handleOpen:()=>{n.value?.handleOpen()},handleClose:()=>{n.value?.handleClose()}}),()=>B(kg,ra(e,{ref:n,type:a,format:e.format??"HH:mm:ss","onUpdate:modelValue":s}),{default:i=>B(r,i,null)})}});const xg=ia(Mg),cs=e=>Uv(e)||Vv(e)||Va(e),$g=oa({accordion:Boolean,modelValue:{type:$t([Array,String,Number]),default:()=>qv([])},expandIconPosition:{type:$t([String]),default:"right"},beforeCollapse:{type:$t(Function)}}),Fg={[ta]:cs,[Ir]:cs},Yl=Symbol("collapseContextKey"),Ug=oa({title:{type:String,default:""},name:{type:$t([String,Number]),default:void 0},icon:{type:Bv,default:Hv},disabled:Boolean});var Vg=at({name:"ElCollapseTransition",__name:"collapse-transition",setup(e){const t=mn("collapse-transition"),n=r=>{r.style.maxHeight="",r.style.overflow=r.dataset.oldOverflow,r.style.paddingTop=r.dataset.oldPaddingTop,r.style.paddingBottom=r.dataset.oldPaddingBottom},a={beforeEnter(r){r.dataset||(r.dataset={}),r.dataset.oldPaddingTop=r.style.paddingTop,r.dataset.oldPaddingBottom=r.style.paddingBottom,r.style.height&&(r.dataset.elExistsHeight=r.style.height),r.style.maxHeight=0,r.style.paddingTop=0,r.style.paddingBottom=0},enter(r){requestAnimationFrame(()=>{r.dataset.oldOverflow=r.style.overflow,r.dataset.elExistsHeight?r.style.maxHeight=r.dataset.elExistsHeight:r.scrollHeight!==0?r.style.maxHeight=`${r.scrollHeight}px`:r.style.maxHeight=0,r.style.paddingTop=r.dataset.oldPaddingTop,r.style.paddingBottom=r.dataset.oldPaddingBottom,r.style.overflow="hidden"})},afterEnter(r){r.style.maxHeight="",r.style.overflow=r.dataset.oldOverflow},enterCancelled(r){n(r)},beforeLeave(r){r.dataset||(r.dataset={}),r.dataset.oldPaddingTop=r.style.paddingTop,r.dataset.oldPaddingBottom=r.style.paddingBottom,r.dataset.oldOverflow=r.style.overflow,r.style.maxHeight=`${r.scrollHeight}px`,r.style.overflow="hidden"},leave(r){r.scrollHeight!==0&&(r.style.maxHeight=0,r.style.paddingTop=0,r.style.paddingBottom=0)},afterLeave(r){n(r)},leaveCancelled(r){n(r)}};return(r,s)=>(f(),we(hn,ra({name:o(t).b()},Gv(a)),{default:Z(()=>[Ct(r.$slots,"default")]),_:3},16,["name"]))}}),qg=Vg;const Hg=ia(qg),ds="ElCollapse",Bg=(e,t)=>{const n=x(Gi(e.modelValue)),a=i=>{n.value=i;const l=e.accordion?n.value[0]:n.value;t(ta,l),t(Ir,l)},r=i=>{if(e.accordion)a([n.value[0]===i?"":i]);else{const l=[...n.value],v=l.indexOf(i);v>-1?l.splice(v,1):l.push(i),a(l)}},s=async i=>{const{beforeCollapse:l}=e;if(!l){r(i);return}const v=l(i);[Li(v),ul(v)].includes(!0)||zv(ds,"beforeCollapse must return type `Promise<boolean>` or `boolean`"),Li(v)?v.then(u=>{u!==!1&&r(i)}).catch(u=>{vl(ds,`some error occurred: ${u}`)}):v&&r(i)};return He(()=>e.modelValue,()=>n.value=Gi(e.modelValue),{deep:!0}),dl(Yl,{activeNames:n,handleItemClick:s}),{activeNames:n,setActiveNames:a}},Gg=e=>{const t=mn("collapse");return{rootKls:j(()=>[t.b(),t.b(`icon-position-${e.expandIconPosition}`)])}};var zg=at({name:"ElCollapse",__name:"collapse",props:$g,emits:Fg,setup(e,{expose:t,emit:n}){const a=e,{activeNames:r,setActiveNames:s}=Bg(a,n),{rootKls:i}=Gg(a);return t({activeNames:r,setActiveNames:s}),(l,v)=>(f(),O("div",{class:Ke(o(i))},[Ct(l.$slots,"default")],2))}}),Kg=zg;const jg=e=>{const t=cl(Yl),{namespace:n}=mn("collapse"),a=x(!1),r=x(!1),s=Kv(),i=j(()=>s.current++),l=j(()=>e.name??`${n.value}-id-${s.prefix}-${o(i)}`),v=j(()=>t?.activeNames.value.includes(o(l)));return{focusing:a,id:i,isActive:v,handleFocus:()=>{setTimeout(()=>{r.value?r.value=!1:a.value=!0},50)},handleHeaderClick:k=>{e.disabled||k.target?.closest("input, textarea, select")||(t?.handleItemClick(o(l)),a.value=!1,r.value=!0)},handleEnterClick:k=>{k.target?.closest("input, textarea, select")||(k.preventDefault(),t?.handleItemClick(o(l)))}}},_g=(e,{focusing:t,isActive:n,id:a})=>{const r=mn("collapse"),s=j(()=>[r.b("item"),r.is("active",o(n)),r.is("disabled",e.disabled)]),i=j(()=>[r.be("item","header"),r.is("active",o(n)),{focusing:o(t)&&!e.disabled}]),l=j(()=>[r.be("item","arrow"),r.is("active",o(n))]);return{itemTitleKls:j(()=>[r.be("item","title")]),arrowKls:l,headKls:i,rootKls:s,itemWrapperKls:j(()=>r.be("item","wrap")),itemContentKls:j(()=>r.be("item","content")),scopedContentId:j(()=>r.b(`content-${o(a)}`)),scopedHeadId:j(()=>r.b(`head-${o(a)}`))}},Yg=["id","aria-expanded","aria-controls","aria-describedby","tabindex","aria-disabled"],Qg=["id","aria-hidden","aria-labelledby"];var Jg=at({name:"ElCollapseItem",__name:"collapse-item",props:Ug,setup(e,{expose:t}){const n=e,{focusing:a,id:r,isActive:s,handleFocus:i,handleHeaderClick:l,handleEnterClick:v}=jg(n),{arrowKls:u,headKls:d,rootKls:w,itemTitleKls:k,itemWrapperKls:T,itemContentKls:p,scopedContentId:g,scopedHeadId:R}=_g(n,{focusing:a,isActive:s,id:r});return t({isActive:s}),(b,C)=>(f(),O("div",{class:Ke(o(w))},[K("div",{id:o(R),class:Ke(o(d)),"aria-expanded":o(s),"aria-controls":o(g),"aria-describedby":o(g),tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,role:"button",onClick:C[0]||(C[0]=(...I)=>o(l)&&o(l)(...I)),onKeydown:C[1]||(C[1]=pl(rt((...I)=>o(v)&&o(v)(...I),["stop"]),["space","enter"])),onFocus:C[2]||(C[2]=(...I)=>o(i)&&o(i)(...I)),onBlur:C[3]||(C[3]=I=>a.value=!1)},[K("span",{class:Ke(o(k))},[Ct(b.$slots,"title",{isActive:o(s)},()=>[ke(W(e.title),1)])],2),Ct(b.$slots,"icon",{isActive:o(s)},()=>[B(o(fl),{class:Ke(o(u))},{default:Z(()=>[(f(),we(yr(e.icon)))]),_:1},8,["class"])])],42,Yg),B(o(Hg),null,{default:Z(()=>[Le(K("div",{id:o(g),role:"region",class:Ke(o(T)),"aria-hidden":!o(s),"aria-labelledby":o(R)},[K("div",{class:Ke(o(p))},[Ct(b.$slots,"default")],2)],10,Qg),[[At,o(s)]])]),_:3})],2))}}),Ql=Jg;const Xg=ia(Kg,{CollapseItem:Ql}),Zg=jv(Ql),Jl="09:00",Xl="18:00",Zl="00:30",em=oa({format:{type:String,default:"HH:mm"},modelValue:{type:$t(String)},disabled:{type:Boolean,default:void 0},editable:{type:Boolean,default:!0},effect:{type:$t(String),default:"light"},clearable:{type:Boolean,default:!0},size:Jv,placeholder:String,start:{type:String,default:Jl},end:{type:String,default:Xl},step:{type:String,default:Zl},minTime:{type:$t(String)},maxTime:{type:$t(String)},includeEndTime:Boolean,name:String,prefixIcon:{type:$t([String,Object]),default:()=>Qv},clearIcon:{type:$t([String,Object]),default:()=>Yv},popperClass:{type:$t([String,Array,Object,Boolean]),default:""},popperStyle:{type:$t([String,Array,Object,Boolean]),default:void 0},..._v}),An=e=>{const t=(e||"").split(":");if(t.length>=2){let n=Number.parseInt(t[0],10);const a=Number.parseInt(t[1],10);if(Number.isNaN(n)||Number.isNaN(a))return null;const r=e.toUpperCase();return r.includes("AM")&&n===12?n=0:r.includes("PM")&&n!==12&&(n+=12),{hours:n,minutes:a}}return null},tm=e=>!!e&&e.hours>=0&&e.minutes>=0&&!Number.isNaN(e.hours)&&!Number.isNaN(e.minutes),$o=(e,t)=>{const n=An(e);if(!n)return-1;const a=An(t);if(!a)return-1;const r=n.minutes+n.hours*60,s=a.minutes+a.hours*60;return r===s?0:r>s?1:-1},us=e=>`${e}`.padStart(2,"0"),Fa=e=>`${us(e.hours)}:${us(e.minutes)}`,nm=(e,t)=>{const n=An(e);if(!n)return"";const a=An(t);if(!a)return"";const r={hours:n.hours,minutes:n.minutes};return r.minutes+=a.minutes,r.hours+=a.hours,r.hours+=Math.floor(r.minutes/60),r.minutes=r.minutes%60,Fa(r)};var am=at({name:"ElTimeSelect",__name:"time-select",props:em,emits:[Ir,"blur","focus","clear",ta],setup(e,{expose:t}){on.extend(_l);const{Option:n}=wn,a=e,r=mn("input"),s=x(),i=Eg(),{lang:l}=ll(),v=(C,I,S,m=!0)=>{const A=An(C);return!tm(A)||!m&&A.hours===0&&A.minutes===0?(vl("ElTimeSelect",`invalid ${I}, fallback to default ${I} (${S}).`),S):Fa(A)},u=j(()=>a.modelValue),d=j(()=>v(a.start,"start",Jl)),w=j(()=>v(a.end,"end",Xl)),k=j(()=>{const C=An(a.minTime||"");return C?Fa(C):null}),T=j(()=>{const C=An(a.maxTime||"");return C?Fa(C):null}),p=j(()=>v(a.step,"step",Zl,!1)),g=j(()=>{const C=[],I=(m,A)=>{C.push({value:m,rawValue:A,disabled:$o(A,k.value||"-1:-1")<=0||$o(A,T.value||"100:100")>=0})};let S=d.value;for(;$o(S,w.value)<=0;)I(on(S,"HH:mm").locale(l.value).format(a.format),S),S=nm(S,p.value);return a.includeEndTime&&C[C.length-1]?.rawValue!==w.value&&I(on(w.value,"HH:mm").locale(l.value).format(a.format),w.value),C});return t({blur:()=>{s.value?.blur?.()},focus:()=>{s.value?.focus?.()}}),(C,I)=>(f(),we(o(wn),{ref_key:"select",ref:s,name:e.name,"model-value":u.value,disabled:o(i),clearable:e.clearable,"clear-icon":e.clearIcon,size:e.size,effect:e.effect,placeholder:e.placeholder,"default-first-option":"",filterable:e.editable,"empty-values":e.emptyValues,"value-on-clear":e.valueOnClear,"popper-class":e.popperClass,"popper-style":e.popperStyle,"onUpdate:modelValue":I[0]||(I[0]=S=>C.$emit(o("update:modelValue"),S)),onChange:I[1]||(I[1]=S=>C.$emit(o("change"),S)),onBlur:I[2]||(I[2]=S=>C.$emit("blur",S)),onFocus:I[3]||(I[3]=S=>C.$emit("focus",S)),onClear:I[4]||(I[4]=()=>C.$emit("clear"))},{prefix:Z(()=>[e.prefixIcon?(f(),we(o(fl),{key:0,class:Ke(o(r).e("prefix-icon"))},{default:Z(()=>[(f(),we(yr(e.prefixIcon)))]),_:1},8,["class"])):ve("v-if",!0)]),default:Z(()=>[(f(!0),O(Ve,null,Je(g.value,S=>(f(),we(o(n),{key:S.value,label:S.value,value:S.value,disabled:S.disabled},null,8,["label","value","disabled"]))),128))]),_:1},8,["name","model-value","disabled","clearable","clear-icon","size","effect","placeholder","filterable","empty-values","value-on-clear","popper-class","popper-style"]))}}),om=am;const rm=ia(om),im=oa({...Kl(Ra,["ariaLabel","gpuAcceleration","rawContent"]),placement:Yi.placement,tabindex:Yi.tabindex,effect:{...Ra.effect,default:"light"},title:String,width:{type:[String,Number],default:150},offset:{...Ra.offset,default:void 0},persistent:{...Ra.persistent,default:!0}}),sm={"update:visible":e=>ul(e),"before-enter":()=>!0,"before-leave":()=>!0,"after-enter":()=>!0,"after-leave":()=>!0};({...Kl(Xv,["gpuAcceleration"])});var lm=at({name:"ElPopover",__name:"popover",props:im,emits:sm,setup(e,{expose:t,emit:n}){const a=e,r=n,s=j(()=>{const b=Wi.props;return Zv(a,Va(b)?b:Object.keys(b))}),i=mn("popover"),l=x(),v=j(()=>o(l)?.popperRef),u=j(()=>[{width:ef(a.width)},a.popperStyle]),d=j(()=>[i.b(),a.popperClass,{[i.m("plain")]:!!a.content}]),w=j(()=>a.transition===`${i.namespace.value}-fade-in-linear`),k=()=>{l.value?.hide()},T=()=>{r("before-enter")},p=()=>{r("before-leave")},g=()=>{r("after-enter")},R=()=>{r("update:visible",!1),r("after-leave")};return t({popperRef:v,hide:k}),(b,C)=>(f(),we(o(Wi),ra({ref_key:"tooltipRef",ref:l},s.value,{"aria-label":e.title,"popper-class":d.value,"popper-style":u.value,"gpu-acceleration":w.value,onBeforeShow:T,onBeforeHide:p,onShow:g,onHide:R}),{content:Z(()=>[e.title?(f(),O("div",{key:0,class:Ke(o(i).e("title")),role:"title"},W(e.title),3)):ve("v-if",!0),Ct(b.$slots,"default",{hide:k},()=>[ke(W(e.content),1)])]),default:Z(()=>[b.$slots.reference?Ct(b.$slots,"reference",{key:0}):ve("v-if",!0)]),_:3},16,["aria-label","popper-class","popper-style","gpu-acceleration"]))}}),cm=lm;const vs=(e,t)=>{const n=(t.arg||t.value)?.popperRef;n&&(n.triggerRef=e)};var dm={mounted(e,t){vs(e,t)},updated(e,t){vs(e,t)}};const um="popover",vm=tf(dm,um),Nr=ia(cm,{directive:vm});function fm(){return gl()}function pm(e){const t=Math.max(0,Math.floor(e/6e4));if(t===0)return"<1m";const n=t%60,a=Math.floor(t/60),r=a%24,s=Math.floor(a/24);return s>0?`${s}d ${r}h`:r>0?`${r}h ${n}m`:`${n}m`}function Nn(e){return e==="STARTING"||e==="RUNNING"||e==="CANCELLING"}function _a(e){return Nn(e.status)?e.startedAt:e.completedAt??e.updatedAt}function Tn(e){return e.titleSource==="DEFAULT"?c("hostedConversations.temporaryTitle"):e.title}const gm=["aria-label"],mm=at({__name:"EnterpriseLoginExtension",props:{request:{type:Function}},setup(e){const t=e,n=x([]),{t:a}=Dn();return Dt(async()=>{try{n.value=(await t.request("/api/oauth/providers")).providers.filter(r=>/^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$/.test(r.providerKey))}catch{n.value=[]}}),(r,s)=>{const i=bt;return n.value.length>0?(f(),O("div",{key:0,class:"sso-login","aria-label":o(a)("auth.enterpriseLogin")},[K("div",null,[K("span",null,W(o(a)("auth.orEnterprise")),1)]),(f(!0),O(Ve,null,Je(n.value,l=>(f(),we(i,{key:l.providerKey,tag:"a",href:`/api/oauth/${encodeURIComponent(l.providerKey)}/login?locale=${encodeURIComponent(o(ml)())}`},{default:Z(()=>[ke(W(o(a)("auth.loginWith",{provider:l.name})),1)]),_:2},1032,["href"]))),128))],8,gm)):ve("",!0)}}}),hm=dt(mm,[["__scopeId","data-v-260a9012"]]);function ym(e){let t,n;function a(s){return t!==void 0?(n=s,t):(t=s().finally(async()=>{t=void 0;const i=n;n=void 0,i!==void 0&&await a(i)}),t)}function r(){n=void 0,e.workspace.stop()}return{startWorkspace:(s,i)=>(e.extension?.stop(),a(()=>e.workspace.start(s,i))),restartWorkspace:s=>(e.extension?.stop(),a(()=>e.workspace.restart(s))),stopWorkspace:r,beginSession(s,i){return e.extension?.stop(),e.session.beginSelectedSessionWatch(s,i)},restartSession(s){return e.extension?.stop(),e.session.restartSelectedSessionWatch(s)},beginSecondarySession(s,i){return e.extension?.stop(),e.secondary?.beginSelectedSessionWatch(s,i)},restartSecondarySession(s){return e.extension?.stop(),e.secondary?.restartSelectedSessionWatch(s)},stopSecondarySession(){e.secondary?.stopSelectedSessionWatch()},async beginExtension(){if(e.extension===void 0)throw new Error("WEB_WATCH_EXTENSION_REQUIRED");return r(),e.session.stopSelectedSessionWatch(),e.secondary?.stopSelectedSessionWatch(),e.extension.begin()},async restartExtension(){if(e.extension===void 0)throw new Error("WEB_WATCH_EXTENSION_REQUIRED");return r(),e.session.stopSelectedSessionWatch(),e.secondary?.stopSelectedSessionWatch(),e.extension.restart()},pause(){n=void 0,e.workspace.pause(),e.session.pauseSelectedSessionWatch(),e.secondary?.pauseSelectedSessionWatch(),e.extension?.pause()},stopSession:e.session.stopSelectedSessionWatch,stopExtension:()=>e.extension?.stop(),handleVisibility(){r(),e.session.handleSessionWatchVisibility(),e.secondary?.handleSessionWatchVisibility(),e.extension?.handleVisibility()},handleEvent(s){return e.workspace.handleEvent(s)||e.session.handleEvent(s)||(e.secondary?.handleEvent(s)??!1)||(e.extension?.handleEvent(s)??!1)},dispose(){n=void 0,e.extension?.stop(),e.session.stopSelectedSessionWatch(),e.secondary?.stopSelectedSessionWatch(),e.workspace.stop()}}}function wm(e){const t=e.view,n=e.selectedWorkspace,a=e.selectedSessionId,r={get value(){return e.workspaceTarget.value?.nodeId}},s={get value(){return e.workspaceTarget.value?.workspaceId}},i={selectedNodeId:e.hostedNodeId},l={get current(){return e.coordinator()}},v=e.invalidateManifest,u=e.refreshManifest,d=e.reactivate,w=e.discardNodeCache,k=e.refreshSession;function T(R,b=!0){if(v(R),t.value==="conversations"&&i.selectedNodeId.value===R){b&&l.current?.restartHostedConversation().catch(()=>{});return}t.value!=="nodes"||r.value!==R||s.value!==void 0&&n.value===void 0&&d(R)||(u(R),b&&(s.value!==void 0&&l.current?.restartWorkspace(s.value),a.value!==void 0&&k()))}function p(R){if(v(R),t.value==="conversations"&&i.selectedNodeId.value===R){l.current?.restartHostedConversation().catch(()=>{});return}t.value==="nodes"&&(w(R),r.value===R&&u(R),r.value===R&&e.resetSession(),r.value===R&&s.value!==void 0&&l.current?.restartWorkspace(s.value),r.value===R&&a.value!==void 0&&k())}function g(){document.visibilityState==="visible"?(e.direct.connectionLost(),e.live.reconnect()):e.coordinator()?.handleVisibility()}return{connected:T,resync:p,handleVisibility:g}}function km(e){let t=0;async function n(i,l,v){t+=1,e.workspace.selectConversation(i,l,v),e.markRead(i,l),await e.coordinator()?.beginHostedConversation()}function a(i,l){return n(i.nodeId,i.id,l)}function r(){t+=1,e.coordinator()?.stopHostedConversation(),e.workspace.clearSelectedConversation()}async function s(i,l){const v=t+1;try{await n(i.nodeId,i.conversationId)}catch{if(v!==t)return;r(),l()}}return{select:a,openTarget:n,clear:r,restoreTarget:s}}const Da="mar.user.csrf-token",fs=8;function bm(e){const{translate:t,currentLocale:n}=e.presentation;let a=0,r=0,s=0;const i=x(!1),l=x(!1);async function v(I,S){for(;I!==void 0&&S();){const m=n();if(I===m)return;try{await e.request("/api/auth/preferences/locale",{method:"PUT",body:JSON.stringify({locale:m})})}catch{S()&&e.notice(t("common.localeUpdateFailed"),"error");return}I=m}}function u(){return a+=1,r+=1,e.invalidateRequests(),a}async function d(I){try{await e.onAuthenticated()}catch(S){if(I!==a)return;e.notice(t("generated.adminAuthService.workbenchRecoveryFailed",{value0:e.errorMessage(S)}),"error",S)}}function w(){u(),e.admin.value={authenticated:!1,mustChangePassword:!1},e.loaded.value=!0,i.value=!1,l.value=!1,e.loading.value=!1,e.sessions.value=[],e.csrfToken.value="",window.sessionStorage.removeItem(Da),e.onSignedOut()}async function k(){const I=++r,S=a,m=()=>I===r&&S===a;l.value=!0;try{const A=await e.request("/api/auth/me");if(!m())return;if(!A.authenticated){w();return}const L=window.sessionStorage.getItem(Da)??"";if(L.length===0&&await e.renewCsrfToken(),!m()||(L.length>0&&(e.csrfToken.value=L),e.admin.value=A,i.value=!1,e.loaded.value=!0,A.authenticated&&await v(A.locale,m),!m()))return;A.authenticated&&!A.mustChangePassword&&await d(S)}catch(A){if(!m())return;A instanceof jt&&A.code==="UNAUTHENTICATED"?w():(e.admin.value.authenticated||(i.value=!0,e.loaded.value=!0),e.notice(t("generated.adminAuthService.authenticationRecoveryFailed",{value0:e.errorMessage(A)}),"error",A))}finally{m()&&(l.value=!1)}}async function T(){const I=a,S=++s,m=()=>I===a&&S===s;if(!e.admin.value.authenticated||e.admin.value.mustChangePassword){e.sessions.value=[];return}try{const A=await e.request("/api/auth/sessions");m()&&(e.sessions.value=A.sessions)}catch(A){if(!m())return;e.sessions.value=[],e.notice(t("generated.adminAuthService.unableToLoadSignInSessions",{value0:e.errorMessage(A)}),"error",A)}}async function p(I){const S=a;e.loading.value=!0;try{if(await e.request(`/api/auth/sessions/${encodeURIComponent(I.id)}`,{method:"DELETE"}),S!==a)return;I.current?w():await T()}catch(m){if(S!==a)return;e.notice(t("generated.adminAuthService.unableToRevokeTheSignInSession",{value0:e.errorMessage(m)}),"error",m)}finally{S===a&&(e.loading.value=!1)}}async function g(I){const S=u();e.loading.value=!0;try{const m=await e.request("/api/auth/login",{method:"POST",body:JSON.stringify({...I,locale:n()})});if(S!==a||(e.invalidateRequests(),r+=1,e.csrfToken.value=m.csrfToken,window.sessionStorage.setItem(Da,m.csrfToken),e.admin.value=m,i.value=!1,await v(m.locale,()=>S===a),S!==a))return;m.mustChangePassword||await d(S)}catch(m){if(S!==a)return;e.notice(t("generated.adminAuthService.signInFailed",{value0:e.errorMessage(m)}),"error",m)}finally{S===a&&(e.loading.value=!1)}}async function R(I){try{if(await d(I),I!==a)return;await T()}catch(S){if(I!==a)return;e.notice(t("generated.adminAuthService.unableToUpdateThePassword",{value0:e.errorMessage(S)}),"error",S)}finally{I===a&&(e.loading.value=!1)}}async function b(I){if(I.password.length<fs)return e.passwordError.value=t("generated.adminAuthService.theNewPasswordMustContainAtLeast",{value0:fs}),!1;if(I.password!==I.confirmation)return e.passwordError.value=t("generated.adminAuthService.theNewPasswordsDoNotMatch"),!1;const S=u();let m=!1;e.passwordError.value="",e.loading.value=!0;try{const A=await e.request("/api/auth/change-password",{method:"POST",body:JSON.stringify({currentPassword:I.currentPassword,password:I.password})});return S!==a?!1:(e.invalidateRequests(),r+=1,e.csrfToken.value=A.csrfToken,window.sessionStorage.setItem(Da,A.csrfToken),e.admin.value=A,e.password.value="",e.notice(t("generated.adminAuthService.passwordUpdatedPreviousSignInSessionsWere"),"success"),m=!0,R(S),!0)}catch(A){return S!==a||e.notice(t("generated.adminAuthService.unableToUpdateThePassword",{value0:e.errorMessage(A)}),"error",A),!1}finally{!m&&S===a&&(e.loading.value=!1)}}async function C(){const I=a;e.loading.value=!0;try{if(await e.request("/api/auth/logout",{method:"POST"}),I!==a)return;w()}catch(S){if(I!==a)return;e.notice(t("generated.adminAuthService.unableToSignOut",{value0:e.errorMessage(S)}),"error",S)}finally{I===a&&(e.loading.value=!1)}}return{view:Et({admin:e.admin,adminLoaded:e.loaded,authenticationUnknown:i,authenticationRestoring:l,adminSessions:e.sessions,changePassword:b,csrfToken:e.csrfToken,formatSessionTime:Gt,loading:e.loading,locked:j(()=>e.admin.value.authenticated&&e.admin.value.mustChangePassword),login:g,logout:C,logoutAdminSession:p,newPassword:e.password,passwordValidationError:e.passwordError,refreshAdmin:k,refreshAdminSessions:T,renewCsrfToken:e.renewCsrfToken,request:e.request}),authenticationUnknown:i,restoring:l,returnToLogin:w,refresh:k,refreshSessions:T,logoutSession:p,login:g,changePassword:b,logout:C}}function Im(e){const t=x(),n=x(!1);async function a(r){if(!n.value){n.value=!0;try{t.value=(await(e.submit===void 0?e.request("/api/node-registration-tokens",{method:"POST"}):e.submit(e.request,r))).token}catch(s){e.notice(c("generated.workbenchPageController.unableToCreateARegistrationToken",{value0:e.errorMessage(s)}),"error",s)}finally{n.value=!1}}}return{token:j(()=>t.value),pending:j(()=>n.value),create:a}}const ps={"mar-agent":0,codex:1,"claude-code":2,opencode:3};function gs(e){return e.map(t=>({...t,accessOptions:t.accessOptions.map(n=>{const a=hs(t.runner,"access",n.id,n.description);return{...n,label:ms(t.runner,"access",n.id,n.label),...a===void 0?{}:{description:a}}}),commands:t.commands.filter(n=>n.id!=="mission"&&(n.id!=="goal"||n.source==="MAR_RUNTIME")).map(n=>{const a=hs(t.runner,"command",n.id,n.description);return{...n,...n.stateLabel===void 0?{}:{stateLabel:ms(t.runner,"state",n.id,n.stateLabel)},...a===void 0?{}:{description:a}}})})).sort((t,n)=>ps[t.runner]-ps[n.runner])}const Sm={"mar-agent:access:auto":"runnerProfiles.marAgentAccessAuto","mar-agent:access:full-access":"runnerProfiles.marAgentAccessFull","mar-agent:command:compact":"runnerProfiles.marAgentCompact","mar-agent:command:plan":"runnerProfiles.marAgentPlan","mar-agent:command:clear":"runnerProfiles.marAgentClear","mar-agent:command:goal":"runnerProfiles.goal","codex:access:on-request":"runnerProfiles.codexAccessOnRequest","codex:access:workspace-write":"runnerProfiles.codexAccessWorkspaceWrite","codex:access:full-access":"runnerProfiles.codexAccessFull","codex:access:read-only":"runnerProfiles.codexAccessReadOnly","codex:command:compact":"runnerProfiles.codexCompact","codex:command:plan":"runnerProfiles.codexPlan","codex:command:goal":"runnerProfiles.goal","codex:command:fast":"runnerProfiles.codexFast","claude-code:access:default":"runnerProfiles.claudeAccessDefault","claude-code:access:accept-edits":"runnerProfiles.claudeAccessAcceptEdits","claude-code:access:bypass":"runnerProfiles.claudeAccessBypass","claude-code:access:plan":"runnerProfiles.claudeAccessPlan","claude-code:command:compact":"runnerProfiles.codexCompact","claude-code:command:plan":"runnerProfiles.codexPlan","claude-code:command:goal":"runnerProfiles.goal","opencode:access:default":"runnerProfiles.openCodeAccessDefault","opencode:access:auto":"runnerProfiles.openCodeAccessAuto","opencode:command:compact":"runnerProfiles.codexCompact","opencode:command:plan":"runnerProfiles.codexPlan","opencode:command:goal":"runnerProfiles.goal"},Cm={"mar-agent:access:auto":"runnerProfiles.marAgentAccessAutoLabel","mar-agent:access:full-access":"runnerProfiles.marAgentAccessFullLabel","mar-agent:state:goal":"goal.title","codex:access:on-request":"runnerProfiles.codexAccessOnRequestLabel","codex:access:workspace-write":"runnerProfiles.codexAccessWorkspaceWriteLabel","codex:access:full-access":"runnerProfiles.codexAccessFullLabel","codex:access:read-only":"runnerProfiles.codexAccessReadOnlyLabel","codex:state:plan":"runnerProfiles.planModeLabel","codex:state:goal":"goal.title","claude-code:access:default":"runnerProfiles.claudeAccessDefaultLabel","claude-code:access:accept-edits":"runnerProfiles.claudeAccessAcceptEditsLabel","claude-code:access:bypass":"runnerProfiles.claudeAccessBypassLabel","claude-code:access:plan":"runnerProfiles.planModeLabel","claude-code:state:plan":"runnerProfiles.planModeLabel","claude-code:state:goal":"goal.title","opencode:access:default":"runnerProfiles.openCodeAccessDefaultLabel","opencode:access:auto":"runnerProfiles.openCodeAccessAutoLabel","opencode:state:plan":"runnerProfiles.planModeLabel","opencode:state:goal":"goal.title"};function ms(e,t,n,a){const r=Cm[`${e}:${t}:${n}`];return r===void 0?a:c(r)}function hs(e,t,n,a){const r=Sm[`${e}:${t}:${n}`];return r===void 0?a:c(r)}function Tm(e){const t=x([]),n=x(!1),a=x(!1),r=new Map,s=new Map,i=new Map;let l=0,v=Promise.resolve();function u(g){return r.has(g)}function d(g){return gs(r.get(g)??[])}function w(g){t.value=d(g)}async function k(g){const R=e.workspaceTarget.value,b=R?.workspaceId,C=()=>I===l&&e.workspaceTarget.value?.nodeId===g&&e.workspaceTarget.value===R,I=++l;n.value=!0,a.value=!1;const S=i.get(g)??0;let m;try{const A=`/api/runner-profiles?nodeId=${encodeURIComponent(g)}${b===void 0?"":`&workspaceId=${encodeURIComponent(b)}`}&cacheOnly=true`,L=await e.request(A);return m=(D=>{if(!C())return;if(!Array.isArray(D.profiles))throw new Error("RUNNER_PROFILES_INVALID");r.set(g,D.profiles);const E=gs(D.profiles);t.value=E;const H=(i.get(g)??0)===S;return H&&s.set(g,Rm(D.defaults,E)),{profiles:E,defaultsChanged:H}})(L),m}catch{C()&&(w(g),a.value=!0);return}finally{C()&&(n.value=!1)}}function T(g,R){const b=g===void 0?void 0:s.get(g)?.get(R);return b!==void 0&&cr(b,t.value)?b:Em(R,t.value)}function p(g,R){if(!cr(R,t.value))return;const b=new Map(s.get(g));b.set(R.runner,R),s.set(g,b),i.set(g,(i.get(g)??0)+1),v=v.catch(()=>{}).then(async()=>{try{await e.request("/api/runner-defaults",{method:"PUT",body:JSON.stringify({nodeId:g,...R})})}catch(C){e.workspaceTarget.value?.nodeId===g&&e.notice(c("generated.runnerProfileService.unableToSaveTheNodeDefaultSession",{value0:e.errorMessage(C)}),"error",C)}})}return He(()=>e.workspaceTarget.value,()=>{l+=1,n.value=!1,a.value=!1;const g=e.workspaceTarget.value?.nodeId;g!==void 0?w(g):t.value=[]},{flush:"sync"}),He(Xa().locale,()=>{const g=e.workspaceTarget.value?.nodeId;g!==void 0&&w(g)}),{profiles:j(()=>t.value),loading:j(()=>n.value),failed:j(()=>a.value),has:u,cached:d,restore:w,load:k,defaultFor:T,save:p}}function Em(e,t){const n=t.find(r=>r.runner===e),a=n?.models.find(r=>r.isDefault===!0)??n?.models[0];return{runner:e,modelId:a?.id??"",effort:Ya(a),access:n?.accessOptions[0]?.id??""}}function Ya(e){return(e?.defaultEffort!==void 0&&e.defaultEffort.length>0&&(e.supportedEfforts.length===0||e.supportedEfforts.includes(e.defaultEffort))?e.defaultEffort:void 0)??e?.supportedEfforts.find(t=>t==="medium")??e?.supportedEfforts[0]??""}function cr(e,t){const n=t.find(r=>r.runner===e.runner),a=n?.models.find(r=>r.id===e.modelId);return a!==void 0&&(a.supportedEfforts.length===0?e.effort.length>0&&e.effort===a.defaultEffort:a.supportedEfforts.includes(e.effort))&&n?.accessOptions.some(r=>r.id===e.access)===!0}function Rm(e,t){return new Map((Array.isArray(e)?e:[]).filter(n=>cr(n,t)).map(n=>[n.runner,n]))}function Am(e){const t=x(!1),n=x(""),a=x(!1),r=x(""),s=x(),i=x(!1),l=x([]);let v=0;const u=j(()=>{const R=s.value;return R===void 0||n.value.length===0?!1:r.value.length>0?R.selectable&&n.value===ys(R.currentPath,r.value):n.value===R.currentPath?R.selectable:R.entries.some(b=>b.path===n.value&&b.selectable)});function d(R=!1){v+=1,n.value="",a.value=!1,r.value="",s.value=void 0,i.value=!1,l.value=R?["register"]:[]}async function w(R){const b=e.targetNodeId.value;if(b===void 0)return;const C=++v;i.value=!0,r.value="",n.value="";try{const I=new URLSearchParams({nodeId:b});R!==void 0&&I.set("path",R);const S=(await e.request(`/api/workspace-directories?${I.toString()}`)).directory;if(C!==v||e.targetNodeId.value!==b)return;s.value=S,n.value=""}catch(I){if(C!==v||e.targetNodeId.value!==b)return;e.error(c("generated.workspaceRegistrationService.unableToLoadAvailableDirectories",{value0:e.errorMessage(I)}),I)}finally{C===v&&(i.value=!1)}}function k(R){r.value="",n.value=R}function T(R){const b=s.value;b!==void 0&&(r.value=R,n.value=ys(b.currentPath,R))}function p(){r.value.length!==0&&(r.value="",n.value="")}async function g(R){const b=e.targetNodeId.value,C=n.value.trim();if(b===void 0||C.length===0)return;const I=s.value?.currentPath;if(!(r.value.length>0&&I===void 0)){t.value=!0;try{const S={nodeId:b,path:r.value.length>0?I:C,preserveGitConfig:a.value,...r.value.length>0?{createDirectoryName:r.value}:{}},A=(e.submit!==void 0?await e.submit(S,R):await e.request("/api/workspaces",{method:"POST",body:JSON.stringify(S)}))?.workspace?.id;if(typeof A!="string")throw new Error("WORKSPACE_REGISTER_RESPONSE_INVALID");if(e.targetNodeId.value!==b)return;d(),await e.onRegistered(b,A)}catch(S){e.error(Nm(e.errorMessage(S)),S)}finally{t.value=!1}}}return{loading:ct(t),path:n,preserveGitConfig:a,pendingDirectoryName:r,directory:s,loadingDirectory:i,openTools:l,selectedPathValid:u,reset:d,load:w,select:k,selectPendingDirectory:T,discardPendingDirectory:p,register:g}}function ys(e,t){const n=e.includes("\\")&&!e.includes("/")?"\\":"/";return`${e.replace(/[\\/]+$/u,"")}${n}${t}`}function Nm(e){return e==="WORKSPACE_DIRECTORY_EXISTS"?c("generated.workspaceRegistrationService.aDirectoryWithThisNameAlreadyExists"):e==="WORKSPACE_DIRECTORY_NAME_INVALID"?c("generated.workspaceRegistrationService.theDirectoryNameIsInvalidEnterA"):e==="WORKSPACE_DIRECTORY_NOT_ALLOWED"||e==="WORKSPACE_NOT_ALLOWED"?c("generated.workspaceRegistrationService.theSelectedDirectoryIsOutsideTheWorkspace"):c("generated.workspaceRegistrationService.unableToRegisterTheWorkspace",{value0:e})}function Dm(){const e=x([]);return{sessions:j(()=>e.value),replaceAll:t=>{e.value=[...t]},prepend:t=>{e.value=[t,...e.value]},replaceExisting:t=>{e.value=e.value.map(n=>n.id===t.id?t:n)},removeId:t=>{e.value=e.value.filter(n=>n.id!==t)},removeExact:t=>{e.value=e.value.filter(n=>n!==t)},removeWorkspace:t=>{e.value=e.value.filter(n=>n.workspaceId!==t)},retainSelectedInWorkspace:(t,n)=>{e.value=e.value.filter(a=>a.workspaceId!==t||a.id===n)},markManagedActive:t=>{e.value=e.value.map(n=>n.id===t.id&&n.workspaceId===t.workspaceId?{...n,activity:"MANAGED_ACTIVE"}:n)}}}function Pm(e){const t=Dm(),n=x(!1),a=x(new Map);let r=0;const s=x({MAIN:0,CHILD:0}),i=x(new Set),l=j(()=>{const J=e.workspaceTarget.value;if(!(J===void 0||e.groupingSupported?.()!==!0))return a.value.get(e.tabId(J.nodeId,J.workspaceId))??"MAIN"}),v=()=>l.value===void 0?"":`&sessionGroup=${l.value}`;function u(J,re=!1){const ge=e.workspaceTarget.value;if(ge===void 0||l.value===void 0&&!re)return;const ce=e.tabId(ge.nodeId,ge.workspaceId);(a.value.get(ce)??"MAIN")!==J&&(r+=1,a.value.set(ce,J))}const d=x(""),w=x([]),k=x(null),T=x(!1),p=x(!1),g=x(),R=new Map;let b,C,I=0,S,m=0;He(l,()=>{const J=e.workspaceTarget.value;if(J===void 0)return;const re=e.tabId(J.nodeId,J.workspaceId);R.set(re,(R.get(re)??0)+1),b=void 0,C=void 0,m+=1,e.paging.loadingMore.value=!1,e.paging.reset(re),e.paging.nextCursors.value.set(re,null),t.retainSelectedInWorkspace(J.workspaceId,e.selectedSessionId.value),i.value=new Set;const ge=d.value;N(),ge&&V(ge)},{flush:"sync"});function A(J,re){let ge=re;return re.commandStates===void 0&&J?.commandStates!==void 0&&(ge={...ge,commandStates:J.commandStates}),re.runtime===void 0&&J?.runtime!==void 0&&(ge={...ge,runtime:J.runtime}),ge}const L=t.markManagedActive,y=t.replaceAll;function D(J,re){const ge=A(J,re),ce=e.runs.value.some(oe=>["STARTING","RUNNING","CANCELLING"].includes(oe.status)&&(oe.sessionId===J?.id||oe.sessionId===re.id));return J?.activity!=="MANAGED_ACTIVE"||re.activity==="MANAGED_ACTIVE"||!ce?ge:{...ge,activity:J.activity,...J.control===void 0?{}:{control:J.control},...J.runtime===void 0?{}:{runtime:J.runtime}}}function E(J){return J.nativeControl==="MAR_MANAGED"||J.control?.level==="MANAGED"}function H(J,re){if(J.workspaceId!==re.workspaceId||J.runner!==re.runner)return!1;if(J.id===re.id)return!0;const ge=J.externalSessionId,ce=re.externalSessionId;return typeof ge=="string"&&ge.length>0&&ge===ce}function X(J,re,ge=!1){const ce=ge?re:D(J,re);return J!==void 0&&JSON.stringify(J)===JSON.stringify(ce)?J:ce}function _(J,re={}){const ge=t.sessions.value,ce=new Map(ge.map(G=>[G.id,G])),oe=ge.map(G=>G.id);for(const G of J){const ue=ce.get(G.id),ne=[...ce.values()].filter(ee=>H(ee,G)),M=ne.find(E);if(M!==void 0&&!E(G)){for(const ee of ne)ee.id!==M.id&&ce.delete(ee.id);continue}for(const ee of ne)if(ee.id!==G.id){ce.delete(ee.id);const le=oe.indexOf(ee.id);le>=0&&(oe[le]=G.id)}ce.set(G.id,X(ue,G,re.authoritativeActivity===!0)),oe.includes(G.id)||oe.push(G.id),ne.some(ee=>ee.id===e.selectedSessionId.value)&&e.setSelectedSessionId(G.id)}let P;if(re.authoritativeOrder===!0){const G=new Set(J.map(ue=>ue.id));P=[...J.flatMap(ue=>{const ne=ce.get(ue.id);return ne===void 0?[]:[ne]}),...oe.filter(ue=>!G.has(ue)).flatMap(ue=>{const ne=ce.get(ue);return ne===void 0?[]:[ne]})]}else P=oe.flatMap(G=>{const ue=ce.get(G);return ue===void 0?[]:[ue]});P.length===ge.length&&P.every((G,ue)=>G===ge[ue])||t.replaceAll(P)}function U(J,re,ge){ge.runningCounts!==void 0&&(s.value=ge.runningCounts);const ce=e.tabId(J,re),oe=(R.get(ce)??0)+1;R.set(ce,oe),b={id:ce,generation:oe,page:ge};const P=i.value.size,G=e.workspaceTarget.value,ue=G?.nodeId===J&&G.workspaceId===re;C=void 0,ue&&(m+=1,e.paging.loadingMore.value=!1),e.paging.initialize(ce),e.paging.nextCursors.value.set(ce,ge.nextCursor),e.paging.loadMoreErrors.value.delete(ce),ue&&P>ge.sessions.length&&ge.nextCursor!==null?(C={id:ce,generation:oe,page:ge,workspace:G,visibleCount:P},_(ge.sessions,{authoritativeActivity:!0}),Q()):(i.value=new Set(ge.sessions.map(ne=>ne.id)),_(ge.sessions,{authoritativeOrder:!0,authoritativeActivity:!0})),ue&&d.value&&l.value!==void 0&&V(d.value)}async function Q(){const J=C;if(J===void 0)return;const re=++m,ge=()=>C===J&&R.get(J.id)===J.generation&&e.workspaceTarget.value===J.workspace,ce=new Set(J.page.sessions.map(P=>P.id));let oe=J.page.nextCursor;e.paging.loadingMore.value=!0,e.paging.loadMoreErrors.value.delete(J.id);try{for(;ce.size<J.visibleCount&&oe!==null;){const G=new Map(t.sessions.value.map(M=>[M.id,M])),ue=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(J.workspace.nodeId)}&workspaceId=${encodeURIComponent(J.workspace.workspaceId)}&limit=${Math.min(e.pageSize,J.visibleCount-ce.size)}${v()}&cursor=${encodeURIComponent(oe)}`);if(!ge())return;if(ue.nextCursor===oe)throw new Error("SESSION_PAGINATION_NO_PROGRESS");const ne=new Map(t.sessions.value.map(M=>[M.id,M]));_(ue.sessions.filter(M=>ne.get(M.id)===G.get(M.id)));for(const M of ue.sessions)ce.add(M.id);oe=ue.nextCursor}if(!ge())return;const P=new Map(t.sessions.value.map(G=>[G.id,G]));i.value=ce,_([...ce].flatMap(G=>{const ue=P.get(G);return ue===void 0?[]:[ue]}),{authoritativeOrder:!0}),e.paging.nextCursors.value.set(J.id,oe),C=void 0}catch(P){ge()&&e.paging.loadMoreErrors.value.set(J.id,P)}finally{re===m&&(e.paging.loadingMore.value=!1)}}async function $(){const J=e.workspaceTarget.value,re=J?.nodeId,ge=e.workspaceTarget.value?.workspaceId;if(re===void 0||ge===void 0||e.paging.loadingMore.value||n.value)return;const ce=e.tabId(re,ge);if(C?.id===ce)return Q();const oe=e.paging.nextCursors.value.get(ce);if(typeof oe!="string")return;const P=R.get(ce)??0,G=++m,ue=()=>(R.get(ce)??0)===P&&e.workspaceTarget.value===J&&e.workspaceTarget.value?.nodeId===re&&e.workspaceTarget.value?.workspaceId===ge;e.paging.loadingMore.value=!0,e.paging.loadMoreErrors.value.delete(ce);try{const ne=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(re)}&workspaceId=${encodeURIComponent(ge)}&limit=${e.pageSize}${v()}&cursor=${encodeURIComponent(oe)}`);if(!ue())return;if(ne.nextCursor===oe)throw new Error("SESSION_PAGINATION_NO_PROGRESS");_(ne.sessions),i.value=new Set([...i.value,...ne.sessions.map(M=>M.id)]),e.paging.append(ce,ne.sessions.length,ne.nextCursor)}catch(ne){if(!ue())return;e.paging.loadMoreErrors.value.set(ce,ne)}finally{G===m&&(e.paging.loadingMore.value=!1)}}async function V(J){const re=e.workspaceTarget.value,ge=re?.nodeId,ce=e.workspaceTarget.value?.workspaceId,oe=J.trim().slice(0,160),P=++I,G=oe===d.value&&S?.workspace===re&&S?.group===l.value;if(S={workspace:re,group:l.value},d.value=oe,G||(w.value=[],k.value=null),p.value=!1,g.value=void 0,T.value=!1,!(ge===void 0||ce===void 0||oe.length===0)){T.value=!0;try{const ue=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(ge)}&workspaceId=${encodeURIComponent(ce)}&limit=${e.pageSize}${v()}&query=${encodeURIComponent(oe)}`);if(P!==I||e.workspaceTarget.value!==re||e.workspaceTarget.value?.nodeId!==ge||e.workspaceTarget.value?.workspaceId!==ce)return;w.value=ue.sessions,k.value=ue.nextCursor,ue.runningCounts!==void 0&&(s.value=ue.runningCounts)}catch(ue){P===I&&e.notice(e.errorMessage(ue),"error",ue)}finally{P===I&&(T.value=!1)}}}function N(){I+=1,S=void 0,d.value="",w.value=[],k.value=null,T.value=!1,p.value=!1,g.value=void 0}He(e.workspaceTarget,()=>{N(),C=void 0,i.value=new Set,s.value={MAIN:0,CHILD:0},m+=1,e.paging.loadingMore.value=!1});async function h(){const J=e.workspaceTarget.value,re=J?.nodeId,ge=e.workspaceTarget.value?.workspaceId,ce=d.value,oe=k.value;if(re===void 0||ge===void 0||ce.length===0||oe===null||p.value||T.value)return;const P=I,G=()=>P===I&&e.workspaceTarget.value===J&&e.workspaceTarget.value?.nodeId===re&&e.workspaceTarget.value?.workspaceId===ge;p.value=!0,g.value=void 0;try{const ue=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(re)}&workspaceId=${encodeURIComponent(ge)}&limit=${e.pageSize}${v()}&cursor=${encodeURIComponent(oe)}&query=${encodeURIComponent(ce)}`);if(!G())return;if(ue.nextCursor===oe)throw new Error("SESSION_PAGINATION_NO_PROGRESS");const ne=new Map(w.value.map(M=>[M.id,M]));for(const M of ue.sessions)ne.set(M.id,M);w.value=[...ne.values()],k.value=ue.nextCursor}catch(ue){G()&&(g.value=ue)}finally{G()&&(p.value=!1)}}async function F(J,re=!1){const ge=e.workspaceTarget.value,ce=ge?.nodeId;if(ce===void 0)return;const oe=e.tabId(ce,J),P=(R.get(oe)??0)+1;R.set(oe,P),C?.id===oe&&(C={...C,generation:P}),m+=1,e.paging.loadingMore.value=!1;const G=()=>R.get(oe)===P&&e.workspaceTarget.value===ge&&e.workspaceTarget.value?.nodeId===ce&&e.workspaceTarget.value?.workspaceId===J,ue=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(ce)}&workspaceId=${encodeURIComponent(J)}&limit=${e.pageSize}${v()}`).catch(ne=>{if(G()){if(re)throw ne;e.notice(c("generated.workspaceSessionService.unableToSynchronizeSessions",{value0:e.errorMessage(ne)}),"error")}});if(!G()){const ne=b?.id===oe?b:void 0;return re&&ne!==void 0&&e.workspaceTarget.value===ge&&e.workspaceTarget.value?.nodeId===ce&&e.workspaceTarget.value?.workspaceId===J&&ne?.generation===R.get(oe)?ne.page:void 0}if(ue!==void 0&&(C=void 0,e.paging.reset(oe),i.value=new Set(ue.sessions.map(ne=>ne.id)),_(ue.sessions,{authoritativeOrder:!0}),ue.runningCounts!==void 0&&(s.value=ue.runningCounts),e.paging.nextCursors.value.set(oe,ue.nextCursor)),re)return ue}async function z(){const J=e.workspaceTarget.value?.workspaceId;if(!(J===void 0||n.value)){n.value=!0;try{d.value?await V(d.value):await F(J)}finally{n.value=!1}}}function fe(J){const re=j(()=>(d.value.length>0?w.value:J.unfiltered.value).filter(P=>l.value===void 0||(P.sessionGroup??"MAIN")===l.value&&(d.value.length>0||i.value.has(P.id)))),ge=j(()=>d.value.length>0?k.value!==null:J.canLoadMore.value),ce=j(()=>d.value.length>0?p.value:e.paging.loadingMore.value),oe=j(()=>{if(d.value.length>0)return g.value;const P=e.workspaceTarget.value;return P===void 0?void 0:e.paging.loadMoreErrors.value.get(e.tabId(P.nodeId,P.workspaceId))});return{visible:re,canLoadMore:ge,loadingMore:ce,loadMoreError:oe,loadMore:()=>d.value.length>0?h():$()}}return{projection:t,currentGroup:l,createVisibleList:fe,selectGroup:u,groupSelectionRevision:()=>r,runningCounts:s,listedSessionIds:i,refreshing:n,searchQuery:d,searchResults:w,searchNextCursor:k,searching:T,loadingMoreSearchResults:p,loadMoreSearchResultsError:g,preserveManagedActive:D,markManagedActive:L,replaceSessions:y,merge:_,applySnapshot:U,loadMore:$,search:V,clearSearch:N,loadMoreSearchResults:h,synchronize:F,refresh:z}}const Om=["nodes","conversations","settings","management"];function ec(e){const t=new URLSearchParams(e.search),n=u=>t.get(u)||void 0,a=n("node"),r=n("workspace"),s=n("session"),i=n("view"),l=n("conversation"),v=Om.find(u=>u===i);return{...a===void 0?{}:{nodeId:a},...r===void 0?{}:{workspaceId:r},...s===void 0?{}:{sessionId:s},...v===void 0?{}:{view:v},...v==="conversations"&&a!==void 0&&l!==void 0?{hostedConversation:{nodeId:a,conversationId:l}}:{}}}const Qa="mar.workbench.selection.v1";function Lm(e){let t=!1;const n=new Set;async function a(){const i=Wm();if(!e.isWorkbenchActive()||i===void 0||e.workspaceTarget.value!==void 0)return;if(!e.nodes.value.some(w=>w.id===i.workspace.nodeId)){t=!0,s();return}const l=e.activateWorkspace(i.workspace),v=e.workspaceTarget.value,u=e.currentSelectionRevision?.(),d=()=>v!==void 0&&e.workspaceTarget.value===v&&e.selectedSessionId.value===void 0&&e.currentSelectionRevision?.()===u;n.add(d);try{await l&&d()&&await r(i.workspace.workspaceId,i.sessionId)}finally{n.delete(d),s()}}async function r(i,l){const v=e.workspaceTarget.value;if(v===void 0)return;const u=v.nodeId,d=()=>e.nodes.value.some(p=>p.id===u&&p.connected===!1),w=e.selectedSessionId.value,k=e.currentSelectionRevision?.(),T=()=>e.workspaceTarget.value===v&&v.workspaceId===i&&e.selectedSessionId.value===w&&e.currentSelectionRevision?.()===k;n.add(T);try{if(d()){T()&&l!==void 0&&e.setSelectedSessionId(l);return}let p;if(l!==void 0){try{p=await e.lookupSession(u,l)}catch(g){if(!["SESSION_NOT_FOUND","FORBIDDEN","REQUEST_FAILED_404","REQUEST_FAILED_403"].includes(gt(g)??""))throw g}if(!T())return;p?.workspaceId!==i&&(p=void 0)}if(p===void 0){const g=await e.synchronizeSessions(i);if(!T()||g===void 0)return;p=g.find(R=>R.workspaceId===i&&R.id!==l)}p===void 0?e.openDraft():await e.openSession(p.id)}catch(p){T()&&(l!==void 0&&e.setSelectedSessionId(l),(gt(p)!=="NODE_OFFLINE"||!d())&&e.notice(p))}finally{n.delete(T),s()}}function s(){if([...n].some(d=>d()))return;const i=e.workspaceTarget.value;if(!t&&i===void 0)return;t=!0;const l=e.selectedSessionId.value,v=e.sessions.value.find(d=>d.id===l),u=l?.startsWith("draft:")||v!==void 0&&!En(v)?void 0:l;try{if(i===void 0){localStorage.removeItem(Qa);return}localStorage.setItem(Qa,JSON.stringify({workspace:i,...u===void 0?{}:{sessionId:u}})),e.rememberSession?.(i.nodeId,i.workspaceId,u)}catch{}}return{restore:a,restoreSession:r,persist:s}}function Wm(){try{const e=JSON.parse(localStorage.getItem(Qa)??"null");if(Mm(e))return e;e!==null&&localStorage.removeItem(Qa);return}catch{return}}function Mm(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.workspace?.nodeId=="string"&&t.workspace.nodeId.length>0&&typeof t.workspace.workspaceId=="string"&&t.workspace.workspaceId.length>0&&(t.sessionId===void 0||typeof t.sessionId=="string"&&t.sessionId.length>0)}function xm(e){const{restore:t,restoreSession:n,persist:a}=Lm({...e,isWorkbenchActive:()=>e.view.value==="nodes"}),r=ec(window.location).hostedConversation;function s(){a();const i=new URL(window.location.href);if(e.view.value==="nodes"){i.searchParams.delete("view"),i.searchParams.delete("management"),i.searchParams.delete("skill"),i.searchParams.delete("node"),i.searchParams.delete("conversation"),window.history.replaceState(window.history.state,"",`${i.pathname}${i.search}${i.hash}`),tr();return}if(i.searchParams.set("view",e.view.value),e.view.value==="management"?i.searchParams.set("management",e.managementSection.value):i.searchParams.delete("management"),i.searchParams.delete("skill"),e.view.value==="conversations"){const l=e.selectedHostedNodeId?.value,v=e.selectedHostedConversationId?.value;l!==void 0&&v!==void 0?(i.searchParams.set("node",l),i.searchParams.set("conversation",v)):(i.searchParams.delete("node"),i.searchParams.delete("conversation"))}else i.searchParams.delete("node"),i.searchParams.delete("conversation");window.history.replaceState(window.history.state,"",`${i.pathname}${i.search}${i.hash}`),tr()}return{restore:t,restoreSession:n,sync:s,hostedConversationRoute:r}}function $m(e){return Cl({isOpen:e.isOpen,close:()=>{e.close(),e.syncRoute()}})}function Fm(e){const t=x(!1);async function n(d){let w;try{w=(await Nt.prompt(c("generated.workbenchEntityService.leaveBlankToDisplayTheRegisteredAddress"),c("generated.workbenchEntityService.renameNode"),{closeIcon:qe("close"),inputValue:d.displayName??"",inputPlaceholder:d.registeredAddress||c("generated.workbenchEntityService.nodeName"),inputValidator:k=>k.length<=80||c("generated.workbenchEntityService.nodeNameCannotExceed80Characters"),confirmButtonText:c("generated.workbenchEntityService.save"),cancelButtonText:c("generated.workbenchEntityService.cancel")})).value}catch{return}t.value=!0;try{const k=()=>e.request(`/api/nodes/${encodeURIComponent(d.id)}`,{method:"PATCH",body:JSON.stringify({displayName:w.trim()===""?null:w.trim()})});let T;try{T=await k()}catch(p){if(gt(p)!=="CSRF_INVALID")throw p;await e.renewCsrfToken(),T=await k()}return T.node}catch(k){e.notice(c("generated.workbenchEntityService.unableToUpdateTheNodeName",{value0:e.errorMessage(k)}),"error",k)}finally{t.value=!1}}async function a(d){const w=e.workspaceTarget.value?.nodeId;if(w===void 0)return;const k=d.customTitle??d.runnerTitle??"";let T;try{T=(await Nt.prompt(c("generated.workbenchEntityService.enterANonEmptySessionName"),c("generated.workbenchEntityService.renameSession"),{closeIcon:qe("close"),inputValue:k,inputPlaceholder:d.runnerTitle??c("generated.workbenchEntityService.sessionName"),inputValidator:p=>{const g=p.trim().length;return g===0?c("generated.workbenchEntityService.sessionNameCannotBeEmpty"):g<=160||c("generated.workbenchEntityService.sessionNameCannotExceed160Characters")},confirmButtonText:c("generated.workbenchEntityService.save2"),cancelButtonText:c("generated.workbenchEntityService.cancel2")})).value}catch{return}t.value=!0;try{return(await e.request(`/api/agent-sessions/${e.sessionPathId(d.id)}/metadata`,{method:"PATCH",body:JSON.stringify({nodeId:w,customTitle:T.trim()})})).session}catch(p){e.notice(c("generated.workbenchEntityService.unableToUpdateTheSessionName",{value0:e.errorMessage(p)}),"error",p)}finally{t.value=!1}}const r=new Set;async function s(d){const w=e.workspaceTarget.value;if(!(w===void 0||d.sessionGroup!=="CHILD"||r.has(d.id))){r.add(d.id);try{try{await Nt.confirm(c("sessionGroups.description"),c("sessionGroups.move"),{closeIcon:qe("close"),confirmButtonText:c("sessionGroups.confirm"),cancelButtonText:c("sessionGroups.cancel")})}catch{return}if(e.workspaceTarget.value!==w)return;t.value=!0;const k=await e.request(`/api/agent-sessions/${e.sessionPathId(d.id)}/metadata`,{method:"PATCH",body:JSON.stringify({nodeId:w.nodeId,clearParent:!0})});return e.workspaceTarget.value!==w?void 0:(e.notice(c("sessionGroups.moved"),"success"),k.session)}catch(k){e.notice(c("sessionGroups.failed",{reason:e.errorMessage(k)}),"error",k)}finally{r.delete(d.id),t.value=!1}}}async function i(d,w){const k=e.workspaceTarget.value?.nodeId;if(k===void 0)return!1;t.value=!0;try{return await e.request(`/api/agent-sessions/${e.sessionPathId(d.id)}/metadata`,{method:"PATCH",body:JSON.stringify({nodeId:k,pinned:w})}),!0}catch(T){return e.notice(c(w?"common.unableToPinSession":"common.unableToUnpinSession",{reason:e.errorMessage(T)}),"error",T),!1}finally{t.value=!1}}async function l(d,w,k){const T=e.workspaceTarget.value?.nodeId;if(T===void 0)return!1;t.value=!0;try{return await e.request(`/api/agent-sessions/${e.sessionPathId(d.id)}/pin-order`,{method:"PATCH",body:JSON.stringify({nodeId:T,direction:w,...k===void 0?{}:{targetSessionId:k.sessionId,position:k.position}})}),!0}catch(p){return e.notice(c("generated.workbenchEntityService.unableToMoveThePinnedSession",{value0:e.errorMessage(p)}),"error",p),!1}finally{t.value=!1}}async function v(d){const w=e.workspaceTarget.value?.nodeId;if(w===void 0||e.canDeleteSession?.(d)===!1)return!1;try{await Nt.confirm(c("generated.workbenchEntityService.thisPermanentlyDeletesTheNativeSessionAnd",{value0:$n(d.runner),value1:e.sessionTitle(d)}),c("generated.workbenchEntityService.deleteSession"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("generated.workbenchEntityService.deleteSession2"),cancelButtonText:c("generated.workbenchEntityService.cancel3"),confirmButtonClass:"el-button--danger"})}catch{return!1}if(e.workspaceTarget.value?.nodeId!==w||e.canDeleteSession?.(d)===!1)return!1;const k=e.beginSubmission?.(`session:${d.id}`);if(e.beginSubmission!==void 0&&k===void 0)return!1;t.value=!0;try{return await e.request(`/api/agent-sessions/${e.sessionPathId(d.id)}?nodeId=${encodeURIComponent(w)}`,{method:"DELETE"}),e.notice(c("generated.workbenchEntityService.theNativeSessionWasDeleted"),"success"),!0}catch(T){return e.notice(c("generated.workbenchEntityService.unableToDeleteTheSession",{value0:e.errorMessage(T)}),"error",T),!1}finally{k?.(),t.value=!1}}async function u(d){try{await Nt.confirm(c("generated.workbenchEntityService.deletingDisconnectsItAndRemovesItsServer",{value0:e.nodeLabel(d)}),c("generated.workbenchEntityService.deleteNode"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("generated.workbenchEntityService.deleteNode2"),cancelButtonText:c("generated.workbenchEntityService.cancel4"),confirmButtonClass:"el-button--danger"})}catch{return!1}t.value=!0;try{const w=()=>e.request(`/api/nodes/${encodeURIComponent(d.id)}`,{method:"DELETE"});try{await w()}catch(k){if(gt(k)!=="CSRF_INVALID")throw k;await e.renewCsrfToken(),await w()}return e.notice(c("generated.workbenchEntityService.nodeDeletedCreateANewRegistrationToken"),"success"),!0}catch(w){return e.notice(c("generated.workbenchEntityService.unableToDeleteTheNode",{value0:e.errorMessage(w)}),"error",w),!1}finally{t.value=!1}}return{loading:ct(t),renameNode:n,renameSession:a,moveSessionToMain:s,setSessionPinned:i,movePinnedSession:l,deleteSession:v,deleteNode:u}}function Um(e){if(e===null)return null;if(typeof e!="object"||Array.isArray(e)||e===void 0)return;const t=e;if(!(typeof t.attemptId!="string"||typeof t.targetVersion!="string"||!["WAITING_FOR_RUNS","UPGRADING","SUCCEEDED","FAILED"].includes(String(t.state))||typeof t.installed!="boolean"||typeof t.targetOnline!="boolean"||typeof t.createdAt!="number"||typeof t.updatedAt!="number"))return e}const Ln="mar.workspace-upload-tasks",Vm=512*1024,qm=2,Pa=new Map;function ws(e,t){if(typeof e!="object"||e===null)return!1;const n=e;return JSON.stringify(n.status==="INTERRUPTED"?{...n,status:t.status}:n)===JSON.stringify(t)}function Hm(e){return Array.isArray(e)?e.flatMap(t=>typeof t!="object"||t===null||typeof t.id!="string"||typeof t.nodeId!="string"||typeof t.workspaceId!="string"||typeof t.directory!="string"||typeof t.name!="string"||!Number.isSafeInteger(t.size)||t.size<0||typeof t.overwrite!="boolean"||!Number.isSafeInteger(t.receivedBytes)||t.receivedBytes<0||t.receivedBytes>t.size||t.uploadId!==void 0&&typeof t.uploadId!="string"||t.directCleanupPending!==void 0&&typeof t.directCleanupPending!="boolean"||t.cleanupUnconfirmed!==void 0&&typeof t.cleanupUnconfirmed!="boolean"?[]:[{id:t.id,nodeId:t.nodeId,workspaceId:t.workspaceId,directory:t.directory,name:t.name,size:t.size,overwrite:t.overwrite,...typeof t.uploadId=="string"?{uploadId:t.uploadId}:{},receivedBytes:t.receivedBytes,status:"INTERRUPTED",...typeof t.error=="string"?{error:t.error}:{},cancelled:!1,directCleanupPending:t.directCleanupPending===!0||t.directCleanupPending===void 0&&t.uploadId===void 0,cleanupUnconfirmed:t.cleanupUnconfirmed===!0}]):[]}function Bm(e){const t=x([]),n=x(),a=x(),r=new Map,s=new Map,i=new Map,l=new Set,v=new Map,u=crypto.randomUUID(),d=new Map,w={receive:C};let k=!1;const T=j(()=>t.value.filter(h=>h.status==="QUEUED"||h.status==="UPLOADING").length),p=j(()=>{const h=t.value.reduce((F,z)=>F+z.size,0);return h===0?t.value.length===0?0:100:Math.min(100,Math.round(t.value.reduce((F,z)=>F+Math.min(z.receivedBytes,z.size),0)/h*100))});function g(h){return{recoveryOwner:d.get(h.id)??u,id:h.id,nodeId:h.nodeId,workspaceId:h.workspaceId,directory:h.directory,name:h.name,size:h.size,overwrite:h.overwrite,...h.uploadId===void 0?{}:{uploadId:h.uploadId},receivedBytes:h.receivedBytes,directCleanupPending:h.directCleanupPending===!0,cleanupUnconfirmed:h.cleanupUnconfirmed===!0,status:h.status,...h.error===void 0?{}:{error:h.error}}}function R(){const h=t.value.flatMap(F=>["QUEUED","UPLOADING","FAILED","INTERRUPTED"].includes(F.status)?[g(F)]:[]);try{h.length===0?window.sessionStorage.removeItem(Ln):window.sessionStorage.setItem(Ln,JSON.stringify(h))}catch{}return h}function b(h){const F=v.get(h.id);if(!k||F===void 0)return;v.delete(h.id);const z=Pa.get(h.id);if(z!==void 0){z.receive(F,h);return}try{const fe=JSON.parse(window.sessionStorage.getItem(Ln)??"[]");if(!Array.isArray(fe))return;const J=fe.findIndex(re=>ws(re,F));if(J===-1)return;fe[J]={...fe[J],uploadId:h.uploadId,receivedBytes:h.receivedBytes,status:"FAILED",cleanupUnconfirmed:!0,error:h.error},window.sessionStorage.setItem(Ln,JSON.stringify(fe))}catch{}}function C(h,F){if(k)return;const z=t.value.find(fe=>fe.id===h.id);z?.status!=="INTERRUPTED"||!ws(g(z),h)||(Object.assign(z,{uploadId:F.uploadId,receivedBytes:F.receivedBytes,cleanupUnconfirmed:!0,error:F.error}),R())}function I(){for(const h of d.keys())Pa.get(h)===w&&Pa.delete(h)}function S(h){d.set(h.id,crypto.randomUUID())}function m(){if(!k){I(),d.clear();try{const h=JSON.parse(window.sessionStorage.getItem(Ln)??"[]");t.value=Hm(h);for(const F of t.value){const z=Array.isArray(h)?h.find(fe=>fe?.id===F.id):void 0;d.set(F.id,typeof z?.recoveryOwner=="string"?z.recoveryOwner:u),Pa.set(F.id,w)}R()}catch{window.sessionStorage.removeItem(Ln)}}}function A(h){k||!t.value.some(F=>F.id===h.id)||e.onTaskChanged?.(h)}function L(h){return h.status==="UPLOADING"?h.transport==="DIRECT"?c("generated.workspaceUploadService.uploadingDirect"):h.transport==="SERVER"&&h.directFallback===!0?c("generated.workspaceUploadService.uploadingServerFallback"):h.transport==="SERVER"?c("generated.workspaceUploadService.uploadingServer"):c("generated.workspaceUploadService.uploading"):h.status==="QUEUED"?c("generated.workspaceUploadService.queued"):h.status==="COMPLETED"?c("generated.workspaceUploadService.completed"):h.status==="CANCELLED"?c("generated.workspaceUploadService.canceled"):h.status==="INTERRUPTED"?c("generated.workspaceUploadService.interrupted"):c("generated.workspaceUploadService.failed")}function y(h){if(k)return;const F=e.workspaceTarget.value?.nodeId,z=e.workspaceTarget.value?.workspaceId;if(!(F===void 0||z===void 0)){t.value.push(...h.map(fe=>({...fe,id:crypto.randomUUID(),nodeId:F,workspaceId:z,name:fe.file.name,size:fe.file.size,receivedBytes:0,status:"QUEUED",cancelled:!1})));for(const fe of t.value.slice(-h.length))A(fe);D()}}async function D(){for(;!k&&t.value.filter(h=>h.status==="UPLOADING").length<qm;){const h=t.value.find(F=>F.status==="QUEUED");if(h===void 0)return;h.status="UPLOADING",A(h),E(h).finally(()=>{D()})}}async function E(h){try{if(h.file===void 0)throw new Error("UPLOAD_SOURCE_REQUIRED");const F=e.direct?.generation(h.nodeId),z=h.directCleanupPending===!0;if(z&&h.uploadId===void 0&&F===void 0)throw new Error("DIRECT_UNAVAILABLE");if(h.uploadId===void 0&&F!==void 0){const J=new AbortController;s.set(h.id,J);let re=!1;try{h.transport="DIRECT",A(h);const ge=h.directory==="."||h.directory===""?h.name:`${h.directory.replace(/\/+$/u,"")}/${h.name}`,ce=await Kf(h.file);if(k||h.cancelled)throw new Error("UPLOAD_CANCELLED");if(re=!0,h.directCleanupPending=!0,await e.direct.upload({nodeId:h.nodeId,nodeGeneration:F,descriptor:{direction:"UPLOAD",resource:{kind:"WORKSPACE_FILE",workspaceId:h.workspaceId,path:ge},fileName:h.name,size:h.size,sha256:ce,overwrite:h.overwrite},file:h.file,onProgress:oe=>{h.receivedBytes=oe},signal:J.signal}),h.cancelled)throw new Error("UPLOAD_CANCELLED");h.directCleanupPending=!1,h.cleanupUnconfirmed=!1,h.receivedBytes=h.size,h.status="COMPLETED",k||e.onFilesChanged(),A(h);return}catch(ge){const ce=gt(ge);if(k||h.cancelled||ce==="UPLOAD_CANCELLED"||z||re&&ce!=="DIRECT_UNAVAILABLE"&&ce!=="DIRECT_TRANSFER_INVALID"&&ce!=="DIRECT_TRANSFER_UNAVAILABLE"&&ce!=="DIRECT_PREPARE_TIMEOUT"&&ce!=="DIRECT_SESSION_LIMIT_REACHED"&&ce!=="DIRECT_TRANSFER_GRANT_INVALID")throw ge;h.receivedBytes=0,h.directCleanupPending=!1,h.transport="SERVER",h.directFallback=!0,A(h)}finally{s.delete(h.id)}}if(k||h.cancelled)return;if(h.transport="SERVER",h.uploadId!==void 0)try{const J=await e.request(`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads/${encodeURIComponent(h.uploadId)}?nodeId=${encodeURIComponent(h.nodeId)}`);if(J.upload.size!==h.size)throw new Error("UPLOAD_SOURCE_MISMATCH");h.receivedBytes=J.upload.receivedBytes}catch(J){if(gt(J)!=="UPLOAD_NOT_FOUND")throw J;delete h.uploadId,h.receivedBytes=0}if(k||h.cancelled)return;if(h.uploadId===void 0){const J=await e.request(`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads`,{method:"POST",body:JSON.stringify({nodeId:h.nodeId,directory:h.directory,name:h.name,size:h.size,overwrite:h.overwrite})});if(h.uploadId=J.upload.uploadId,h.receivedBytes=J.upload.receivedBytes,k||h.cancelled){await X(h);return}}for(;h.receivedBytes<h.size;){if(k||h.cancelled)throw new Error("UPLOAD_CANCELLED");const J=h.receivedBytes,re=h.file.slice(J,Math.min(h.size,J+Vm)),ge=await H(h,J,re);h.receivedBytes=ge.receivedBytes}if(k||h.cancelled)throw new Error("UPLOAD_CANCELLED");l.add(h.id);const fe=await e.request(`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads/${encodeURIComponent(h.uploadId)}/complete`,{method:"POST",body:JSON.stringify({nodeId:h.nodeId})});h.receivedBytes=fe.upload.receivedBytes,h.status="COMPLETED",k||e.onFilesChanged(),A(h)}catch(F){if(h.cancelled||gt(F)==="UPLOAD_CANCELLED"){h.status=h.directCleanupPending||h.cleanupUnconfirmed?"FAILED":"CANCELLED",h.directCleanupPending&&(h.cleanupUnconfirmed=!0),A(h);return}h.status=k?"INTERRUPTED":"FAILED",h.error=it(F),A(h)}finally{r.delete(h.id),s.delete(h.id),l.delete(h.id)}}async function H(h,F,z){let fe,J=!1;for(let re=0;re<3;re+=1){if(k||h.cancelled)throw new Error("UPLOAD_CANCELLED");try{return await new Promise((ge,ce)=>{const oe=new XMLHttpRequest;r.set(h.id,oe),oe.open("POST",`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads/${encodeURIComponent(h.uploadId??"")}/chunks?nodeId=${encodeURIComponent(h.nodeId)}&offset=${F}`),oe.withCredentials=!0,oe.setRequestHeader("content-type","application/octet-stream"),oe.setRequestHeader("x-csrf-token",e.csrfToken.value),oe.upload.onprogress=P=>{P.lengthComputable&&(h.receivedBytes=Math.min(h.size,F+P.loaded))},oe.onerror=()=>ce(new Error("UPLOAD_NETWORK_FAILED")),oe.onabort=()=>ce(new Error("UPLOAD_CANCELLED")),oe.onload=()=>{if(oe.status<200||oe.status>=300){let P;try{P=JSON.parse(oe.responseText).error?.code}catch{P=void 0}ce(new Error(P??`REQUEST_FAILED_${oe.status}`));return}try{const P=JSON.parse(oe.responseText);if(!Number.isSafeInteger(P.upload?.receivedBytes))throw new Error("NODE_RESPONSE_INVALID");ge({receivedBytes:P.upload?.receivedBytes})}catch(P){ce(P)}},oe.send(z)})}catch(ge){if(fe=ge,k||h.cancelled)throw ge;if(gt(ge)==="CSRF_INVALID"){if(J)throw ge;J=!0,await e.renewCsrfToken()}h.receivedBytes=F}}throw fe instanceof Error?fe:new Error("UPLOAD_CHUNK_FAILED")}async function X(h){const F=i.get(h.id);if(F!==void 0)return F;k||S(h);const z=_(h);if(h.uploadId===void 0)return z;i.set(h.id,z);try{return await z}finally{i.delete(h.id)}}async function _(h){if((h.status==="COMPLETED"||h.status==="CANCELLED")&&h.uploadId===void 0&&!h.directCleanupPending)return!0;if(h.cancelled=!0,s.get(h.id)?.abort(),r.get(h.id)?.abort(),h.uploadId!==void 0){try{await e.request(`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads/${encodeURIComponent(h.uploadId)}/cancel`,{method:"POST",body:JSON.stringify({nodeId:h.nodeId})})}catch(F){if(gt(F)!=="UPLOAD_NOT_FOUND")return h.cleanupUnconfirmed=!0,h.error=it(F),h.status="FAILED",b(h),A(h),!1}delete h.uploadId}return h.directCleanupPending?(h.cleanupUnconfirmed=!0,h.status="FAILED",A(h),!1):(h.cleanupUnconfirmed=!1,h.status="CANCELLED",A(h),!0)}async function U(h){if(!k&&!(h.status!=="FAILED"&&h.status!=="INTERRUPTED")){if(h.file===void 0){a.value=h.id,n.value?.click();return}h.uploadId!==void 0&&!await X(h)||k||(S(h),h.cancelled=!1,delete h.uploadId,h.receivedBytes=0,delete h.error,delete h.directFallback,delete h.transport,h.status="QUEUED",A(h),D())}}function Q(h){if(k)return;const F=h.target,z=F.files?.[0],fe=t.value.find(J=>J.id===a.value);if(F.value="",a.value=void 0,!(z===void 0||fe===void 0)){if(S(fe),z.name!==fe.name||z.size!==fe.size){fe.error=c("generated.workspaceUploadService.selectTheOriginalFileWithTheSame"),A(fe);return}fe.file=z,fe.cancelled=!1,delete fe.error,fe.status="QUEUED",A(fe),D()}}function $(h){X(h).catch(()=>{}),h.status="CANCELLED",A(h),t.value=t.value.filter(F=>F.id!==h.id)}function V(){if(!k){k=!0,N();for(const h of R())v.set(h.id,h);I();for(const h of t.value)h.status==="UPLOADING"&&h.uploadId!==void 0&&!l.has(h.id)&&X(h);for(const h of s.values())h.abort();s.clear();for(const h of r.values())h.abort();r.clear()}}const N=He(t,()=>{R()},{deep:!0});return{tasks:t,recoveryInput:n,activeCount:T,progress:p,restore:m,statusLabel:L,queue:y,cancel:X,retry:U,recover:Q,remove:$,dispose:V}}const Gm=30*6e4;function zm(e){const t=new Map,n=e.activeTtlMs??Gm,a=e.now??Date.now;let r,s;function i(T){const p=a();r!==void 0&&r!==T&&t.set(r,p+n),r=T,T!==void 0&&(t.set(T,p+n),e.activate(T)),w(p),k()}function l(T){return T===r||(t.get(T)??0)>a()}function v(){return w(a()),[...t.keys()].filter(l)}function u(T){t.delete(T),r===T&&(r=void 0),k()}function d(){s!==void 0&&clearTimeout(s),s=void 0;const T=new Set(t.keys());r!==void 0&&T.add(r),t.clear(),r=void 0;for(const p of T)e.release(p)}function w(T){for(const[p,g]of t)p===r||g>T||(t.delete(p),e.release(p))}function k(){s!==void 0&&clearTimeout(s),s=void 0;let T;for(const[p,g]of t)p!==r&&(T=T===void 0?g:Math.min(T,g));T!==void 0&&(s=setTimeout(()=>{s=void 0,w(a()),k()},Math.max(0,T-a())))}return{select:i,isActive:l,activeNodeIds:v,forget:u,clear:d}}class Cn extends Error{constructor(t){super(t),this.code=t}code}function Km(e){const t=new Map,n=new Map;function a(l){if(l.type==="terminal.direct.prepared"){const u=t.get(l.requestId);if(u===void 0){e.send({type:"terminal.direct.cancel",directSessionId:l.directSessionId});return}t.delete(l.requestId),u.resolve(l);return}if(l.type==="terminal.direct.error"){const u=t.get(l.requestId??"");u!==void 0&&(t.delete(l.requestId),u.reject(new Cn(l.code)));return}const v=n.get(l.directSessionId);v!==void 0&&(l.type==="terminal.direct.heartbeat"?v.lastHeartbeat=Date.now():r(l.directSessionId,v,l.code))}function r(l,v,u){v.stopped||(v.stopped=!0,n.delete(l),v.timer!==void 0&&clearInterval(v.timer),v.attachTimer!==void 0&&clearTimeout(v.attachTimer),v.channel.close(),e.send({type:"terminal.direct.cancel",directSessionId:l}),v.transport.release(),u!==void 0&&v.onDisconnected(u))}async function s(l){const v=e.acquire(l.nodeId);if(v===void 0)return;const u=crypto.randomUUID().replaceAll("-","");let d=()=>{},w;try{const k=await new Promise((R,b)=>{const C=setTimeout(()=>{t.delete(u),b(new Cn("TERMINAL_DIRECT_TIMEOUT"))},5e3),I=()=>{t.delete(u),b(new Cn("TERMINAL_DIRECT_CANCELLED"))};d=()=>{clearTimeout(C),l.signal.removeEventListener("abort",I)},l.signal.addEventListener("abort",I,{once:!0}),t.set(u,{transport:v,resolve:R,reject:b}),(l.signal.aborted||!e.send({type:"terminal.direct.prepare",requestId:u,nodeId:l.nodeId,nodeGeneration:v.nodeGeneration,transportSessionId:v.transportSessionId,terminalId:l.terminalId,...l.workspaceId===void 0?{}:{workspaceId:l.workspaceId},afterSequence:l.afterSequence,readonly:l.readonly}))&&I()});if(d(),w=k.directSessionId,l.signal.aborted)throw new Cn("TERMINAL_DIRECT_CANCELLED");const T=v.createChannel(`mar-terminal-${k.directSessionId}`),p={transport:v,channel:T,onFrame:l.onFrame,onAttached:l.onAttached,onDisconnected:l.onDisconnected,attached:!1,stopped:!1,lastHeartbeat:Date.now()};n.set(k.directSessionId,p);const g=R=>r(k.directSessionId,p,R);return T.addEventListener("open",()=>{p.stopped||T.send(JSON.stringify({type:"OPEN",directSessionId:k.directSessionId,grant:k.grant}))}),T.addEventListener("message",R=>{if(p.stopped||typeof R.data!="string"||R.data.length>128*1024){g("TERMINAL_FRAME_INVALID");return}let b;try{b=JSON.parse(R.data)}catch{g("TERMINAL_FRAME_INVALID");return}if(!p.attached){const I=nf.safeParse(b);if(!I.success||I.data.terminalId!==l.terminalId){g("TERMINAL_ATTACH_FAILED");return}p.attached=!0,p.attachTimer!==void 0&&clearTimeout(p.attachTimer),p.onAttached();return}const C=af.safeParse(b);if(!C.success||C.data.terminalId!==l.terminalId){g("TERMINAL_FRAME_INVALID");return}p.onFrame(C.data)}),T.addEventListener("close",()=>g("TERMINAL_DIRECT_CLOSED")),p.attachTimer=setTimeout(()=>g("TERMINAL_DIRECT_TIMEOUT"),15e3),p.timer=setInterval(()=>{(Date.now()-p.lastHeartbeat>3e4||!e.send({type:"terminal.direct.heartbeat",directSessionId:k.directSessionId}))&&g("TERMINAL_DIRECT_CONTROL_UNAVAILABLE")},1e4),l.signal.aborted?g():l.signal.addEventListener("abort",()=>g(),{once:!0}),{send(R){if(!(!p.attached||p.stopped||T.readyState!=="open")){if(T.bufferedAmount>1024*1024){g("TERMINAL_BACKPRESSURE");return}T.send(JSON.stringify(R))}},dispose:()=>g()}}catch(k){throw d(),w!==void 0&&e.send({type:"terminal.direct.cancel",directSessionId:w}),v.release(),k instanceof Cn?k:new Cn("TERMINAL_DIRECT_UNAVAILABLE")}}function i(){for(const[l,v]of t)t.delete(l),v.reject(new Cn("TERMINAL_DIRECT_CONTROL_UNAVAILABLE"));for(const[l,v]of n)r(l,v,"TERMINAL_DIRECT_CONTROL_UNAVAILABLE")}return{attach:s,handle:a,invalidate:i}}function jm(e){const t=x(0),n=()=>{t.value+=1},a=new Map,r=new Map;let s,i=!1;const l=jp({send:E=>s!==void 0&&!i&&e.sendDirect(E),onProbeResultChange:n,shouldRetryProbe:(E,H)=>d(E)&&a.get(E)?.generation===H}),v=Km({send:E=>s!==void 0&&!i&&e.sendTerminalDirect(E),acquire:E=>{const H=a.get(E);return!d(E)||H?.terminalDirect!==!0?void 0:l.acquireTerminalTransport(E,H.generation)}}),u=zm({activate:E=>{k(E)},release:E=>{r.delete(E),a.delete(E),l.releaseTransport(E),n()}});function d(E){return!i&&s!==void 0&&u.isActive(E)&&e.nodes().some(H=>H.id===E&&H.connected&&!H.disabled)}function w(E){r.delete(E),a.delete(E),l.invalidateNode(E),n()}function k(E,H=!1){if(!d(E))return Promise.resolve();const X=r.get(E);if(X!==void 0&&!H)return X;const _=s,U=Promise.resolve().then(async()=>{if(r.get(E)!==U||s!==_||!d(E))return;const Q=await e.discover(E).catch(()=>{});if(!(r.get(E)!==U||s!==_||!d(E))){if(Q?.directTransfer?.apiVersion!==3||Q.directTransfer.transport!==!0||typeof Q.nodeGeneration!="string"){w(E);return}a.set(E,{generation:Q.nodeGeneration,terminalDirect:Q.terminalDirect?.apiVersion===1}),l.ensureTransport(E,Q.nodeGeneration),n()}}).finally(()=>{r.get(E)===U&&r.delete(E)});return r.set(E,U),U}async function T(){if(i)return;for(const X of new Set([...a.keys(),...r.keys(),...l.transportNodeIds()])){const _=e.nodes().find(U=>U.id===X);(_===void 0||!_.connected||_.disabled)&&w(X)}const E=s;if(E===void 0)return;const H=e.nodes().filter(X=>d(X.id)).map(X=>X.id);for(let X=0;X<H.length;X+=3){if(i||s!==E)return;await Promise.all(H.slice(X,X+3).map(_=>k(_)))}}function p(){s!==void 0&&(s=void 0,r.clear(),a.clear(),v.invalidate(),l.invalidateControlConnection(),n())}function g(E,H){i||(s!==void 0&&s.id!==E&&p(),s??={id:E},H||(s={id:E},r.clear(),a.clear(),v.invalidate(),l.invalidateNetwork(),n()),T())}function R(){p(),u.clear(),l.close()}function b(){i||(i=!0,m(),A(),R())}function C(E){const H=a.get(E);return s!==void 0&&!i&&H!==void 0&&l.isConnected(E,H.generation)}function I(E){const H=a.get(E);return H===void 0||!C(E)?void 0:l.networkInfo(E,H.generation)}const S=j(()=>e.nodes().map(E=>`${E.id}\0${E.connected?"1":"0"}\0${E.disabled?"1":"0"}\0${E.nodeAppVersion}`).join(`
3
- `)),m=He(S,()=>{T()}),A=He(e.selectedNode,E=>{u.select(E)},{immediate:!0,flush:"sync"}),L=E=>(t.value,C(E)),y=E=>{if(!L(E))return;const H=I(E);if(H===void 0)return c("workspaceTabs.directAvailable");const X=c(`workspaceTabs.networkScope.${H.scope.toLowerCase()}`),_=H.ipVersion==="UNKNOWN"?"":c(`workspaceTabs.ipVersion.${H.ipVersion.toLowerCase()}`),U=H.protocol==="UNKNOWN"?"":H.protocol,Q=H.interfaceType==="UNKNOWN"||H.scope==="VPN_TUN"&&H.interfaceType==="VPN"||H.scope==="LOOPBACK"&&H.interfaceType==="LOOPBACK"?"":c(`workspaceTabs.interfaceType.${H.interfaceType.toLowerCase()}`);return c("workspaceTabs.directAvailableWithNetwork",{network:[X,_,U,Q].filter(Boolean).join(" ")})},D=j(()=>{t.value;const E=e.selectedNode();return E!==void 0&&I(E)?.scope==="LOOPBACK"});return{workspace:{upload:l.upload,download:l.download},terminal:{attach:v.attach},handleDirect:l.handle,handleTerminalDirect:v.handle,selectNode:E=>{i||u.select(E)},nodeInvalidated:w,refresh:k,reconcileNodes:T,connectionReady:g,connectionLost:p,reset:R,dispose:b,isConnected:C,networkInfo:I,workspaceDirectAvailable:L,workspaceDirectDescription:y,workspaceLocalFileManagerAvailable:D}}const _m=new Set(["STARTING","RUNNING","CANCELLING"]),Kn=1e4,Wn=1e3,Ym=5e3,ks=500,bs=30*6e4,Fo=16,Is="mar.web-performance.severe.v1",Qm=()=>({connectionState:"connecting",health:"idle",messagesPerSecond:0,peakMessagesPerSecond:0,kilobytesPerSecond:0,categories:{},activeRunSessions:0,processing:{averageMs:0,p95Ms:0,maxMs:0},longTasks:{available:!1,count:0,totalDurationMs:0},eventLoopDelayMs:0,domNodes:0,messageCards:0});function Jm(e={}){const t=e.now??(()=>performance.now()),n=x(Qm()),a=[],r=new Map,s=[],i=[],l=[],v=y(),u=v.longTasks,d=v.longAnimationFrames;let w={domNodes:0,messageCards:0,eventLoopDelayMs:0,longTasks:{count:0,totalDurationMs:0}},k="connecting",T,p,g,R,b,C=!1,I,S=0,m=0;function A(){return e.enabled?.()??!0}function L(){return e.context?.()??{}}function y(){const ne={longTasks:[],longAnimationFrames:[]};try{if(typeof sessionStorage>"u")return ne;const M=JSON.parse(sessionStorage.getItem(Is)??"null");if(typeof M!="object"||M===null)return ne;const ee=M,le=Ee=>Array.isArray(Ee)?Ee.filter(xe=>typeof xe=="object"&&xe!==null&&Number.isFinite(xe.capturedAt)&&Date.now()-xe.capturedAt<=bs&&typeof xe.value=="object"&&xe.value!==null).slice(-Fo):[];return{longTasks:le(ee.longTasks),longAnimationFrames:le(ee.longAnimationFrames)}}catch{return ne}}function D(){try{if(typeof sessionStorage>"u")return;sessionStorage.setItem(Is,JSON.stringify({longTasks:u,longAnimationFrames:d}))}catch{}}function E(ne,M){ne.push({capturedAt:Date.now(),value:M}),ne.length>Fo&&ne.splice(0,ne.length-Fo),D()}function H(ne){return ne.filter(M=>Date.now()-M.capturedAt<=bs).map(M=>M.value)}function X(ne){for(;a[0]!==void 0&&a[0].at<ne-Kn;)a.shift();for(;s[0]!==void 0&&s[0].at<ne-Kn;)s.shift();for(;i[0]!==void 0&&i[0].at<ne-Kn;)i.shift();for(;l[0]!==void 0&&l[0].at<ne-Kn;)l.shift()}function _(ne,M){if(k!=="connected")return"idle";if(M<m)return"healthy";const ee=w.heap===void 0||w.heap.limitBytes<=0?0:w.heap.usedBytes/w.heap.limitBytes;return ne>=50||w.longTasks.totalDurationMs>=500||w.eventLoopDelayMs>=200||ee>=.85?"critical":ne>=16||w.longTasks.totalDurationMs>=100||w.eventLoopDelayMs>=50||ee>=.7?"warning":"healthy"}function U(){const ne=t();X(ne);const M=a.filter(ye=>ye.at>=ne-Wn),ee=a.map(ye=>ye.durationMs).sort((ye,Fe)=>ye-Fe),le=ee.reduce((ye,Fe)=>ye+Fe,0),Ee={};for(const ye of M)Ee[ye.category]=(Ee[ye.category]??0)+1;const xe=new Map;for(const ye of a){const Fe=Math.floor(ye.at/Wn);xe.set(Fe,(xe.get(Fe)??0)+1)}const Me=Math.max(0,Math.ceil(ee.length*.95)-1),Se=ee[Me]??0;n.value={connectionState:k,health:_(Se,ne),messagesPerSecond:M.length,peakMessagesPerSecond:Math.max(0,...xe.values()),kilobytesPerSecond:M.reduce((ye,Fe)=>ye+Math.max(0,Fe.bytes),0)/1024,categories:Ee,activeRunSessions:new Set(r.values()).size,processing:{averageMs:ee.length===0?0:le/ee.length,p95Ms:Se,maxMs:ee.at(-1)??0},longTasks:{...w.longTasks,available:C},eventLoopDelayMs:w.eventLoopDelayMs,...p===void 0?{}:{pingLatencyMs:p},domNodes:w.domNodes,messageCards:w.messageCards,...w.heap===void 0?{}:{heap:w.heap},...T===void 0?{}:{lastMessageAt:T}}}function Q(ne){if(typeof ne!="object"||ne===null)return"other";const M=ne;if(M.type==="watch.event")return"watch";if(typeof M.type=="string"&&M.type.startsWith("notification."))return"notification";if(M.type!=="event"||typeof M.event!="object"||M.event===null)return"control";const ee=M.event.category;return typeof ee=="string"?ee:"other"}function $(ne){if(typeof ne!="object"||ne===null)return;const M=ne.event;if(typeof M!="object"||M===null)return;const ee=M;if(ee.category!=="run")return;const le=ee.payload;if(typeof le!="object"||le===null)return;const Ee=le.run;if(typeof Ee!="object"||Ee===null)return;const xe=Ee;typeof xe.id!="string"||typeof xe.sessionId!="string"||typeof xe.status!="string"||(_m.has(xe.status)?r.set(xe.id,xe.sessionId):r.delete(xe.id))}function V(ne){if(!A())return;const M=t();a.push({...ne,at:M,category:Q(ne.message),context:L()}),T=Date.now(),$(ne.message)}function N(ne){k=ne,ne!=="connected"&&(r.clear(),p=void 0),U()}function h(){r.clear(),U()}function F(ne){Number.isFinite(ne)&&(p=Math.max(0,ne),U())}function z(ne){w=ne,l.push({...ne,at:t(),context:L()}),U()}function fe(ne){const M=performance.memory,ee=t();X(ee),w={domNodes:document.getElementsByTagName("*").length,messageCards:document.querySelectorAll(".conversation-item").length,eventLoopDelayMs:Math.max(0,ne),longTasks:{count:s.length,totalDurationMs:s.reduce((le,Ee)=>le+Ee.durationMs,0)},...M===void 0?{}:{heap:{usedBytes:M.usedJSHeapSize,limitBytes:M.jsHeapSizeLimit}}},l.push({...w,at:ee,context:L()}),U()}function J(ne){const M=ne.attribution;return Array.isArray(M)?M.flatMap(ee=>{if(typeof ee!="object"||ee===null)return[];const le=ee,Ee=Ye=>typeof le[Ye]=="string"&&le[Ye]!==""?le[Ye]:void 0,xe=Ee("containerType"),Me=Ee("containerName"),Se=Ee("containerId"),ye=Ee("containerSrc");let Fe;if(ye!==void 0)try{const Ye=new URL(ye,typeof location>"u"?void 0:location.href);Fe=`${Ye.origin}${Ye.pathname}`}catch{Fe=void 0}return[{name:Ee("name")??"",entryType:Ee("entryType")??"",startTimeMs:typeof le.startTime=="number"?le.startTime:0,durationMs:typeof le.duration=="number"?le.duration:0,...xe===void 0?{}:{containerType:xe},...Me===void 0?{}:{containerName:Me},...Se===void 0?{}:{containerId:Se},...Fe===void 0?{}:{containerSrc:Fe}}]}):[]}function re(ne){const M=ne.target;if(typeof HTMLElement>"u"||!(M instanceof HTMLElement))return;const ee=M.id===""?"":`#${M.id}`,le=[...M.classList].slice(0,3).map(Ee=>`.${Ee}`).join("");return`${M.tagName.toLowerCase()}${ee}${le}`}function ge(){const ne=typeof navigator>"u"?void 0:navigator;return{performanceTimeOrigin:typeof performance>"u"?void 0:performance.timeOrigin,visibility:typeof document>"u"?void 0:document.visibilityState,pathname:typeof location>"u"?void 0:location.pathname,viewport:typeof window>"u"?void 0:{width:window.innerWidth,height:window.innerHeight,devicePixelRatio:window.devicePixelRatio},userAgent:ne?.userAgent,language:ne?.language,hardwareConcurrency:ne?.hardwareConcurrency}}function ce(ne){const M=i.map(({at:le,...Ee})=>({startTimeMs:le,...Ee})),ee=a.map(({at:le,bytes:Ee,durationMs:xe,category:Me,context:Se})=>({observedAtMs:le,bytes:Ee,durationMs:xe,category:Me,context:Se}));return{name:ne.name,startTimeMs:ne.at,endTimeMs:ne.at+ne.durationMs,occurredAt:new Date(performance.timeOrigin+ne.at).toISOString(),durationMs:ne.durationMs,context:ne.context,attribution:ne.attribution,relatedInteractions:M.filter(le=>le.startTimeMs<=ne.at+ne.durationMs+250&&le.startTimeMs+le.durationMs>=ne.at-250),relatedFrames:ee.filter(le=>le.observedAtMs>=ne.at-250&&le.observedAtMs<=ne.at+ne.durationMs+250)}}function oe(ne){const M=ne.scripts;return Array.isArray(M)?M.slice(0,8).map(ee=>{const le=typeof ee=="object"&&ee!==null?ee:{},Ee=Me=>typeof le[Me]=="string"?le[Me].slice(0,256):"";let xe="";try{const Me=new URL(Ee("sourceURL"),typeof location>"u"?void 0:location.href);xe=`${Me.origin}${Me.pathname}`}catch{}return{functionName:Ee("sourceFunctionName"),sourceURL:xe,sourceCharPosition:typeof le.sourceCharPosition=="number"?le.sourceCharPosition:0,durationMs:typeof le.duration=="number"?le.duration:0,invoker:Ee("invoker")}}):[]}function P(){const ne=t();X(ne);const M=a.map(({at:Ee,bytes:xe,durationMs:Me,category:Se,context:ye})=>({observedAtMs:Ee,bytes:xe,durationMs:Me,category:Se,context:ye})),ee=i.map(({at:Ee,...xe})=>({startTimeMs:Ee,...xe})),le=s.map(ce);return{schemaVersion:1,generatedAt:new Date().toISOString(),windowMs:Kn,context:L(),snapshot:n.value,longTasks:le,retainedLongTasks:H(u),longAnimationFrames:H(d),interactions:ee,frames:M,browserSamples:l.map(({at:Ee,...xe})=>({sampledAtMs:Ee,...xe})),activeRuns:[...r].map(([Ee,xe])=>({runId:Ee,sessionId:xe})),browser:ge()}}function G(){if(!(!A()||g!==void 0)){if(m=t()+Ym,S=t()+Wn,g=setInterval(()=>{const ne=t();if(document.hidden||!A()){S=ne+Wn;return}fe(ne-S),S=ne+Wn},Wn),typeof PerformanceObserver<"u"){try{PerformanceObserver.supportedEntryTypes?.includes("longtask")&&(R=new PerformanceObserver(ne=>{for(const M of ne.getEntries()){if(M.startTime<m)continue;const ee={at:M.startTime,durationMs:M.duration,name:M.name,context:L(),attribution:J(M)};s.push(ee),M.duration>=ks&&E(u,ce(ee))}}),R.observe({entryTypes:["longtask"]}),C=!0)}catch{R?.disconnect(),R=void 0}try{I=new PerformanceObserver(ne=>{for(const M of ne.getEntries()){const ee=M,le=re(M);i.push({at:M.startTime,name:M.name,durationMs:M.duration,...typeof ee.processingStart=="number"?{processingStartMs:ee.processingStart}:{},...typeof ee.processingEnd=="number"?{processingEndMs:ee.processingEnd}:{},...typeof ee.interactionId=="number"?{interactionId:ee.interactionId}:{},...le===void 0?{}:{target:le},context:L()})}}),I.observe({type:"event",buffered:!0,durationThreshold:16})}catch{I=void 0}try{PerformanceObserver.supportedEntryTypes?.includes("long-animation-frame")&&(b=new PerformanceObserver(ne=>{for(const M of ne.getEntries()){if(M.duration<ks)continue;const ee=M;E(d,{startTimeMs:M.startTime,endTimeMs:M.startTime+M.duration,occurredAt:new Date(performance.timeOrigin+M.startTime).toISOString(),durationMs:M.duration,blockingDurationMs:ee.blockingDuration??0,context:L(),scripts:oe(M)})}}),b.observe({type:"long-animation-frame"}))}catch{b=void 0}}fe(0)}}function ue(){g!==void 0&&clearInterval(g),g=void 0,R?.disconnect(),R=void 0,C=!1,b?.disconnect(),b=void 0,I?.disconnect(),I=void 0,a.length=0,r.clear(),s.length=0,i.length=0,l.length=0,w={domNodes:0,messageCards:0,eventLoopDelayMs:0,longTasks:{count:0,totalDurationMs:0}},T=void 0,p=void 0,U()}return{snapshot:n,observeFrame:V,setConnectionState:N,resetActiveRuns:h,setPingLatency:F,updateBrowserMetrics:z,detail:P,refresh:U,start:G,dispose:ue}}function tc(e,t){return[...e.filter(n=>n.pinned===!0),...e.filter(n=>n.pinned!==!0).slice(0,t)]}function Xm(e){const t=x([]);let n=0;const a=new Set;function r(C){t.value=tc(C,e.maxTabs),a.clear();for(const I of t.value)a.add(I.id);n=t.value.reduce((I,S)=>Math.max(I,S.lastActiveAt),0)}function s(C,I,S){const m=e.tabId(C,S.id);n=Math.max(Date.now(),n+1);const L=t.value.findIndex(E=>E.id===m),y=g(C,I,S,n);if(L>=0){const E=t.value[L],H=I===void 0?E?.nodeLabel:y.nodeLabel;t.value=t.value.map((X,_)=>_===L?{...X,...y,...H===void 0?{}:{nodeLabel:H}}:X),e.onChange();return}const D=[...t.value];i(D,e.maxTabs-1),t.value=[...D,y],e.onChange()}function i(C,I,S){for(;C.filter(m=>m.pinned!==!0).length>I;){const m=C.filter(L=>L.pinned!==!0&&L.id!==S);if(m.length===0)return;const A=m.reduce((L,y)=>y.lastActiveAt<L.lastActiveAt?y:L);e.onEvict(A),a.delete(A.id),C.splice(C.findIndex(L=>L.id===A.id),1)}}function l(C,I){const S=e.tabId(C.nodeId,C.workspaceId);if(t.value.some(A=>A.id===S)){k(S);return}const m=[...t.value];i(m,e.maxTabs-1),n=Math.max(Date.now(),n+1),t.value=[...m,{id:S,...C,...I===void 0?{}:{nodeLabel:e.nodeLabel(I)},label:C.workspaceId,lastActiveAt:n}],e.onChange()}function v(C,I){const S=t.value.find(L=>L.id===C);if(S===void 0||S.pinned===!0===I)return;const m=t.value.filter(L=>L.id!==C),A=m.filter(L=>L.pinned===!0).length;m.splice(A,0,{...S,pinned:I}),i(m,e.maxTabs,C),t.value=m,e.onChange()}function u(C){a.delete(C.id),t.value=t.value.filter(I=>I.id!==C.id),e.onChange()}function d(C,I){const S=t.value.findIndex(H=>H.id===C);if(S<0||t.value.length<2)return;const m=t.value.filter(H=>H.pinned===!0).length,A=Math.max(0,Math.min(I,t.value.length-1));if(S===A)return;const L=[...t.value],[y]=L.splice(S,1);if(y===void 0)return;const D=A<m,E=y.pinned===!0===D?y:{...y,pinned:D};L.splice(A,0,E),i(L,e.maxTabs,C),t.value=L,e.onChange()}function w(C){const I=t.value.filter(C);if(I.length!==0){t.value=t.value.filter(S=>!C(S));for(const S of I)a.delete(S.id),e.onEvict(S);e.onChange()}}function k(C){t.value.some(I=>I.id===C)&&(n=Math.max(Date.now(),n+1),t.value=t.value.map(I=>I.id===C?{...I,lastActiveAt:n}:I),e.onChange())}function T(C=new Set){return t.value.reduce((I,S)=>!C.has(S.id)&&(I===void 0||S.lastActiveAt>I.lastActiveAt)?S:I,void 0)}function p(C,I,S){const m=e.tabId(C,I);t.value.some(A=>A.id===m)&&(t.value=t.value.map(A=>A.id===m?{...A,label:S}:A),e.onChange())}function g(C,I,S,m){return{id:e.tabId(C,S.id),nodeId:C,...I===void 0?{}:{nodeLabel:e.nodeLabel(I)},workspaceId:S.id,label:e.workspaceLabel(S),lastActiveAt:m}}function R(C,I,S){const m=e.tabId(C,I),A=t.value.find(L=>L.id===m);A===void 0||A.selectedSessionId===S||(t.value=t.value.map(L=>{if(L.id!==m)return L;const y={...L};return delete y.selectedSessionId,S===void 0?y:{...y,selectedSessionId:S}}),e.onChange())}function b(C,I){const S=e.tabId(C,I),m=t.value.find(A=>A.id===S);if(a.delete(S)||m?.selectedSessionId!==void 0)return m}return{tabs:t,remember:s,rememberTarget:l,rememberSession:R,takeRestoredSelection:b,remove:u,move:d,setPinned:v,touch:k,mostRecentlyUsed:T,removeWhere:w,updateLabel:p,restore:r}}const Ss="mar.workbench.layout.v1",Cs="mar.workbench.tabs.v1",Uo="mar.workbench.panel-widths.v1",pn={sidebar:{min:220,max:420},compact:{min:275,max:600,defaultWidth:320},content:{min:480,max:960,defaultWidth:640}};function Vo(e,t){if(typeof t!="number"||!Number.isFinite(t))return;const{min:n,max:a}=pn[e];return Math.max(n,Math.min(a,Math.round(t)))}function Zm(e){const t=x({});function n(i,l){const v=Vo(i,l);if(!(v===void 0||t.value[i]===v)){t.value={...t.value,[i]:v};try{localStorage.setItem(Uo,JSON.stringify(t.value))}catch{}}}function a(i,l,v){const u=pn[i],d=l-v;if(!(!Number.isFinite(d)||d<u.min))return Math.min(t.value[i]??u.defaultWidth,u.max,d)}function r(){try{sessionStorage.setItem(Ss,JSON.stringify({sidebarCollapsed:e.sidebarCollapsed.value,expandedNodeIds:e.expandedNodeIds.value,nodeOrder:e.nodeOrder.value,workspaceOrderByNode:e.workspaceOrderByNode.value}))}catch{}try{localStorage.setItem(Cs,JSON.stringify(e.workspaceTabs.value))}catch{}}function s(){t.value={};try{const i=JSON.parse(localStorage.getItem(Uo)??"{}");if(typeof i=="object"&&i!==null&&!Array.isArray(i)){const l=i;for(const v of["sidebar","compact","content"]){const u=Vo(v,l[v]);u!==void 0&&(t.value[v]=u)}if(Object.prototype.hasOwnProperty.call(l,"inspector")){const v=Vo("compact",l.inspector);t.value.compact===void 0&&v!==void 0&&(t.value.compact=v),localStorage.setItem(Uo,JSON.stringify(t.value))}}}catch{}try{const i=JSON.parse(sessionStorage.getItem(Ss)??"{}");if(typeof i=="object"&&i!==null){const l=i;e.sidebarCollapsed.value=l.sidebarCollapsed===!0||l.sidebarCollapsed===void 0&&l.explorerCollapsed===!0,e.restoreTree(Array.isArray(l.expandedNodeIds)?l.expandedNodeIds.filter(v=>typeof v=="string"):[],l.workspaceOrderByNode??{},Array.isArray(l.nodeOrder)?l.nodeOrder.filter(v=>typeof v=="string"):[])}}catch{e.restoreTree([],{},[])}try{const i=JSON.parse(localStorage.getItem(Cs)??"[]");if(!Array.isArray(i))return;e.restoreTabs(tc(i.filter(eh),e.maxWorkspaceTabs))}catch{e.restoreTabs([])}}return{persist:r,restore:s,panelWidths:t,setPanelWidth:n,asideWidth:a}}function eh(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.id=="string"&&typeof t.nodeId=="string"&&typeof t.workspaceId=="string"&&typeof t.label=="string"&&typeof t.lastActiveAt=="number"&&(t.pinned===void 0||typeof t.pinned=="boolean")&&(t.selectedSessionId===void 0||typeof t.selectedSessionId=="string"&&t.selectedSessionId.length>0)}function th(e,t){if(e.kind==="tool_call"&&jf(e.payload))return!0;if(e.kind==="user_input_request"&&e.status==="PENDING"&&!t)return!1;if(e.kind==="user_message"){const n=_f(e.payload);if(n.files.length>0||n.goal!==void 0||n.scheduled||n.restarted||n.sessionOrigin!==void 0||n.channel!==void 0)return!0}return e.kind!=="turn_summary"&&(e.kind==="user_input_request"||e.kind==="approval_request"||Ba(e.kind,e.payload,e.status).trim().length>0)}function nh(e){if(!(e.item.kind!=="plan"||e.steering||!e.canStartTurn||e.turns.flatMap(n=>n.items.filter(a=>a.kind==="plan")).at(-1)?.id!==e.item.id))return e.commandStates?.filter(n=>n.active&&n.continuation!=null).map(Fl)[0]??{commandId:"historical-plan",active:!1,label:c("runnerProfiles.planModeLabel"),detail:c("generated.conversationDomain.thisHistoricalPlanCanBeImplementedDirectly"),closable:!1,closeInput:null,continuation:{label:c("generated.conversationDomain.implement"),prompt:c("generated.conversationDomain.implementThePlanAbove")}}}function ah(e){let t=0,n=0,a,r;e.configurationAvailable!==void 0&&He(e.configurationAvailable,m=>{m&&p()});async function s(m=e.workspaceTarget.value?.nodeId){if(m===void 0||e.workspaceTarget.value?.nodeId!==m)return!1;const A=e.workspaceTarget.value,L=await e.profileService.load(m);return e.workspaceTarget.value!==A?!1:L===void 0?(e.workspaceTarget.value===A&&(e.codexFastEnabled.value=!1),!1):(L.defaultsChanged&&e.draftOpen.value&&e.selectedSession.value===void 0&&u(e.runner.value),e.draftOpen.value&&e.selectedSession.value===void 0&&e.ensureDraftSupported(L.profiles),e.normalize(),await p(),e.workspaceTarget.value!==A?!1:(L.profiles.some(y=>y.runner==="codex"&&y.commands.some(D=>D.id==="fast"))?l(m):e.codexFastEnabled.value=!1,!0))}async function i(m=e.workspaceTarget.value?.nodeId){if(m===void 0)return;const A=e.workspaceTarget.value,L=++n,y=[0,500,1e3,2e3,4e3];for(const D of y)if(L!==n||e.workspaceTarget.value!==A||(D>0&&await(e.retryDelay??(E=>new Promise(H=>setTimeout(H,E))))(D),L!==n||e.workspaceTarget.value!==A)||await s(m))return}async function l(m){const A=e.workspaceTarget.value;try{const L=await e.request("/api/runner-commands",{method:"POST",body:JSON.stringify({nodeId:m,runner:"codex",commandId:"fast",input:"/fast status"})});e.workspaceTarget.value===A&&(e.codexFastEnabled.value=L.enabled)}catch{e.workspaceTarget.value===A&&(e.codexFastEnabled.value=!1)}}function v(m){return e.profileService.defaultFor(e.workspaceTarget.value?.nodeId,m)}function u(m){e.apply(v(m))}function d(){e.normalize()}function w(){const m=e.workspaceTarget.value?.nodeId;m!==void 0&&e.profileService.save(m,{runner:e.runner.value,modelId:e.modelId.value,effort:e.effort.value,access:e.access.value})}function k(m){if(m===void 0)return d();const A=v(m.runner);e.apply({runner:m.runner,modelId:m.modelId??A.modelId,effort:m.effort??A.effort,access:m.access??A.access})}function T(m,A=!0){k(m);const L=e.workspaceTarget.value?.nodeId;if(m===void 0||L===void 0||!A){r=void 0;return}r={nodeId:L,sessionId:m.id},p(m)}async function p(m=e.selectedSession.value){const A=e.workspaceTarget.value?.nodeId;if(m===void 0||m.runner!=="mar-agent"||A===void 0||e.draftOpen.value||e.selectedSession.value?.id!==m.id||r?.nodeId!==A||r.sessionId!==m.id||a===m.id||e.configurationAvailable?.()===!1)return;const L=e.profiles.value.find(E=>E.runner===m.runner),y=Ul(L,m);if(y.length===0||y.some(E=>E.id===m.modelId))return;const D=y[0];e.setModel(D.id,Ya(D)),a=m.id;try{await g()}finally{a===m.id&&(a=void 0)}}async function g(){if(e.draftOpen.value||e.workspaceTarget.value?.nodeId===void 0||e.selectedSession.value===void 0)return d();const m=e.workspaceTarget.value?.nodeId,A=e.selectedSession.value;if(e.configurationAvailable?.()===!1)return k(A);if(await ut(),e.workspaceTarget.value?.nodeId!==m||e.selectedSession.value?.id!==A.id)return;if(e.configurationAvailable?.()===!1)return k(e.selectedSession.value);d();const L=++t;e.loading.value=!0;try{const y=await e.request(`/api/agent-sessions/${e.sessionPathId(A.id)}/config`,{method:"PATCH",body:JSON.stringify({nodeId:m,workspaceId:A.workspaceId,modelId:e.modelId.value,effort:e.effort.value,access:e.access.value})});if(L!==t||e.workspaceTarget.value?.nodeId!==m||e.selectedSession.value?.id!==A.id)return;e.replaceSessionProjection(y.session)}catch(y){if(L!==t||e.workspaceTarget.value?.nodeId!==m||e.selectedSession.value?.id!==A.id)return;k(A),e.notice(c("generated.workbenchComposerController.unableToUpdateTheSessionConfiguration",{value0:e.errorMessage(y)}),"error",y)}finally{L===t&&(e.loading.value=!1)}}function R(m,A){A.includes(m)&&(e.setEffort(m),g(),e.draftOpen.value&&w())}function b(m,A){const L=A.find(y=>y.id===m);L!==void 0&&(e.setModel(L.id,Ya(L)),g(),e.draftOpen.value&&w())}function C(m,A){A.some(L=>L.id===m)&&(e.setAccess(m),g(),e.draftOpen.value&&w())}function I(m){m!=="mar-agent"&&m!=="codex"&&m!=="claude-code"&&m!=="opencode"||e.profiles.value.some(A=>A.runner===m&&A.capabilities.includes("turn.start"))&&(u(m),e.clearRunnerCommand(),e.clearModelEffortSelection(),g())}function S(m,A,L){const y=Array.isArray(m)?m.at(-1):m;if(typeof y=="string"){if(y.startsWith("effort:"))A(y.slice(7));else if(y.startsWith("model:"))L(y.slice(6));else return;ut(()=>{e.clearModelEffortSelection()})}}return{loadProfiles:i,runnerDefaultFor:v,applyDefaults:u,normalize:d,saveDefaults:w,applyConfiguration:T,update:g,selectEffort:R,selectModel:b,selectAccess:C,selectRunner:I,selectModelEffort:S}}function oh(e){let t=0;return{enter(){t+=1,e(!0)},leave(){t=Math.max(0,t-1),t===0&&e(!1)},reset(){t=0,e(!1)}}}const rh=100,ih=1e4;function sh(e){if(e.length>=ih)return!0;let t=1;for(let n=0;n<e.length;n+=1)if((e[n]===`
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/TerminalTabView-KFAT6dN-.js","assets/index-tebwt16R.js","assets/index-By66DnCX.css","assets/MarIcon-DRzNI1TJ.js","assets/MarIcon-aPIFZI-D.css","assets/HtmlPreviewFrame-DQimcizh.js","assets/FilePreviewLoading-EXabASKn.js","assets/use-form-common-props-C_muwpbj.js","assets/mobile-dialog-return-service-CDghLsut.js","assets/el-input-DsD8wPgd.js","assets/el-input-8ehKRrZb.css","assets/mobile-dialog-return-service-pE1w6qia.css","assets/BusyIndicator-81gYfHFI.js","assets/FilePreviewLoading-BFt-X_61.css","assets/el-form-item-CjLvz7IR.js","assets/el-form-item-D_relxjU.css","assets/el-switch-D49n4nYq.js","assets/message-box-service-BzqjQhzH.js","assets/message-box-service-amIz9eLF.css","assets/el-switch-DpR9-s4E.css","assets/error-presentation-CKm32JzU.js","assets/file-presentation-Cm7tx53N.js","assets/HtmlPreviewFrame-D_oKBx6Z.css","assets/time-presentation-Cz63DSUv.js","assets/conversation-history-DsSE1wLH.js","assets/workbench-presentation-DSjYJkKK.js","assets/workbench-presentation-CPQZ-olG.css","assets/workbench-composer-interaction-controller-BFZkEbwV.js","assets/el-checkbox-D8E82IC3.js","assets/last-DXTTfs9a.js","assets/el-checkbox-CzNtyWdF.css","assets/el-radio-rHorotS0.js","assets/el-radio-B4O75OaI.css","assets/el-select-vQRSFUuU.js","assets/index-C8HJ-7wK.js","assets/_baseFindIndex-D7XfJLKM.js","assets/_baseIteratee-CEjLB6P0.js","assets/el-select-D5zQ8kOe.css","assets/runner-presentation-CjPY5Dey.js","assets/workbench-composer-interaction-controller-C2fEVYPz.css","assets/el-checkbox-group-D_6SYB2i.css","assets/el-tag-1VV9QMa7.css","assets/hosted-conversation-template-client-CYBI7IvT.js","assets/oauth-callback-B21gNkv-.js","assets/el-alert-DQT74Z6k.js","assets/el-alert-B6UgayC7.css","assets/code-navigation-target-BlnRe0-a.js","assets/mcp-center-service-Bt8KNvBQ.js","assets/catalog-page-service-D4eWT4uF.js","assets/ManagementPagination-DC_Jtk72.js","assets/ManagementPagination-BWt9HPYQ.css","assets/el-date-picker-CzlIv3iG.js","assets/index-BzBol34B.js","assets/el-table-column-DIe-Jdox.js","assets/merge-k_TKlNxw.js","assets/isArrayLikeObject-CNIeaAGq.js","assets/el-table-column-Dp73S2HR.css","assets/advancedFormat-DwAKrlQQ.js","assets/el-date-picker-BsrAVvYx.css","assets/union-C5QcR3bq.js","assets/el-input-number-DYTEBnhp.js","assets/el-input-number-DExoAqKP.css","assets/enterprise-management-service-CYSkSkqU.js","assets/NodeDetailsDialogs-jvve59Rc.js","assets/el-descriptions-CrLOiLtM.js","assets/el-descriptions-BpDzfuC8.css","assets/EnvironmentSecretManager-jWSJQLLY.js","assets/management-url-service-BUrqsIPf.js","assets/EnvironmentSecretManager-C8dOmosG.css","assets/NodeDetailsDialogs-Bga2VjXd.css","assets/TerminalTabView-rhaLa1jH.css","assets/SettingsContent-BQYXFW0-.js","assets/SettingsContent-v_lWDRPM.css","assets/SettingsContent-KFZsk8Yv.js","assets/SettingsContent-KfsLZ_Eu.css"])))=>i.map(i=>d[i]);
2
+ import{a7 as oa,an as $t,d as at,a9 as ll,aa as mn,z as cl,c as j,o as f,b as O,G as K,S as Ke,u as o,H as W,g as B,v as ve,X as ut,d7 as on,aD as $v,aF as Fv,bL as Va,a as x,b_ as dl,U as ra,af as ia,ak as Uv,aj as Vv,ch as qv,cl as Hv,al as Bv,p as we,q as Z,f as Ct,eQ as Gv,ae as hn,w as He,as as Li,ai as ul,at as zv,ao as vl,eR as Kv,I as ke,M as yr,ac as fl,Q as pl,J as rt,E as Le,aK as At,c0 as jv,cF as _v,cr as Yv,em as Qv,av as Jv,O as Ve,P as Je,eS as Ra,eT as Xv,cQ as Wi,cE as Zv,ar as ef,eU as tf,eV as gl,t as c,dv as Dn,D as Dt,ah as ml,_ as dt,eW as Et,A as jt,dM as Xa,dO as ct,e as gt,s as qe,eX as nf,eY as af,eZ as of,cd as Ht,e_ as rf,ce as Zn,bk as xt,K as et,e$ as sf,f0 as lf,f1 as cf,r as Fn,cC as Mi,n as sa,f2 as hl,f3 as df,a0 as wt,be as qa,f4 as uf,f5 as vf,f6 as xi,f7 as ff,dD as Ha,Y as mt,f8 as pf,f9 as gf,fa as mf,fb as hf,fc as yf,fd as wf,fe as kf,ff as ea,fg as $i,fh as bf,fi as If,fj as Aa,fk as Sf,fl as Cf,fm as Tf,fn as No,aL as Ef,fo as Rf,L as St,ad as It,aB as yl,aM as la,cL as wr,fp as Af,F as ca,fq as Fi,fr as Ui,bg as kr,ag as br,R as Nf,fs as Df,bi as Pf,bj as Vi,dP as wl,b5 as kl,$ as bl,cf as Il,dK as Sl,ft as Of,fu as Lf,d0 as Wf}from"./index-tebwt16R.js";import{U as ta,C as Ir,a as bt,E as Ft}from"./el-input-DsD8wPgd.js";import{f as Gt}from"./time-presentation-Cz63DSUv.js";import{q as Mf,d as xf,s as $f,b as Do,g as xa}from"./conversation-history-DsSE1wLH.js";import{a as Ff,t as Uf,e as qi,b as Zo,d as Jn,n as $a,f as er,s as Vf,g as Sn,w as qf,h as Hf,i as Bf,W as Po,j as Gf,k as Hi,E as Sr,l as Bi}from"./workbench-presentation-DSjYJkKK.js";import{o as Gi,c as tr,f as Cl,M as zi,z as zf,E as Xt,u as _t,m as Yt}from"./mobile-dialog-return-service-CDghLsut.js";import{O as En,P as Kf,Q as jf,R as _f,S as Ba,T as Yf,v as Tl,G as El,J as Rl,K as Al,U as nr,d as Qf,s as Jf,V as Xf,c as Zf,p as ep,i as tp,k as np,g as ap,l as op,j as rp,b as ip,x as sp,h as lp,f as cp,r as dp,n as Nl,W as up,X as vp,w as Dl,a as fp,Y as pp,Z as gp,_ as mp,$ as hp,L as yp,a0 as Ki,a1 as Pl,a2 as wp,a3 as kp,a4 as ji,t as bp,a5 as Ip,a6 as Sp,a7 as Oo,a8 as Cp,a9 as Tp,o as Ep,m as Rp,aa as Ga,ab as Ap,e as Np,ac as Dp,ad as yn,ae as Pp,H as Ol,af as Op,ag as Ll,ah as Wl,C as Ml,z as xl,I as $l,ai as Na,aj as Lp,y as Wp,D as Mp,B as xp,E as $p,A as Fp,F as Up}from"./workbench-composer-interaction-controller-BFZkEbwV.js";import{E as Nt,a as _i}from"./message-box-service-BzqjQhzH.js";import{r as $n,l as Fl,a as Ul}from"./runner-presentation-CjPY5Dey.js";import{e as it,f as Cr,a as Tr}from"./error-presentation-CKm32JzU.js";import{B as Yi,n as Vp,s as za,T as Qi,d as ar,C as qp,u as Er,D as Ji,S as Xi,a as or,w as an,i as Ka,c as Hp,G as Bp,H as Lo,p as Gp,b as rr,f as ir,h as rn,E as sn,g as ln,A as sr,l as Zi,k as es,j as zp,F as Kp}from"./FilePreviewLoading-EXabASKn.js";import{c as jp,o as ts,w as _p,t as ns,f as as,e as Wo,h as Yp,i as Qp,g as lr,d as os,a as rs,r as is,s as Jp,b as Xp,p as Za,u as Zp,I as eg,F as Mo,v as tg,x as ng,l as Vl,W as ql,k as Hl,y as ag,H as og,n as rg,z as Rr,A as ig,M as Bl,B as fn}from"./HtmlPreviewFrame-DQimcizh.js";import{c as Gl,f as ja,w as sg}from"./file-presentation-Cm7tx53N.js";import{l as zl}from"./hosted-conversation-template-client-CYBI7IvT.js";import{o as lg}from"./oauth-callback-B21gNkv-.js";import{E as Ar}from"./el-alert-DQT74Z6k.js";import{M as De}from"./MarIcon-DRzNI1TJ.js";import{n as cg}from"./code-navigation-target-BlnRe0-a.js";import{E as da}from"./index-C8HJ-7wK.js";/* empty css */import{E as wn,a as Un,b as dg}from"./el-select-vQRSFUuU.js";import{o as Kl,E as jl}from"./el-checkbox-D8E82IC3.js";import{c as ug}from"./mcp-center-service-Bt8KNvBQ.js";import{B as gn}from"./BusyIndicator-81gYfHFI.js";import{a as ua,E as va}from"./el-form-item-CjLvz7IR.js";import{t as vg,P as fg,u as pg,b as ss,a as gg,c as mg,d as hg,p as yg,e as wg,f as kg,E as bg}from"./el-date-picker-CzlIv3iG.js";import{u as xo}from"./union-C5QcR3bq.js";import{d as _l}from"./advancedFormat-DwAKrlQQ.js";import{a as Ig,b as Sg}from"./el-radio-rHorotS0.js";import{E as Cg}from"./ManagementPagination-DC_Jtk72.js";import{E as Tg}from"./el-switch-D49n4nYq.js";import{a as Eg}from"./use-form-common-props-C_muwpbj.js";import{a as Rg,E as Ag}from"./el-table-column-DIe-Jdox.js";import{E as Ng}from"./el-input-number-DYTEBnhp.js";import{c as ls}from"./enterprise-management-service-CYSkSkqU.js";import{N as Dg}from"./NodeDetailsDialogs-jvve59Rc.js";const Pg=oa({...vg,parsedValue:{type:$t(Array)}}),Og=["disabled"];var Lg=at({__name:"panel-time-range",props:Pg,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,a=t,r=(ne,M)=>{const ee=[];for(let le=ne;le<=M;le++)ee.push(le);return ee},{t:s,lang:i}=ll(),l=mn("time"),v=mn("picker"),u=cl(fg),{arrowControl:d,disabledHours:w,disabledMinutes:k,disabledSeconds:T,defaultValue:p}=u.props,g=j(()=>[l.be("range-picker","body"),l.be("panel","content"),l.is("arrow",d),m.value?"has-seconds":""]),R=j(()=>[l.be("range-picker","body"),l.be("panel","content"),l.is("arrow",d),m.value?"has-seconds":""]),b=j(()=>n.parsedValue[0]),C=j(()=>n.parsedValue[1]),I=pg(n,{modelValue:j(()=>u.props.modelValue),valueOnClear:j(()=>u?.emptyValues?u.emptyValues.valueOnClear.value:null)}),S=()=>{const ne=I.value;a("pick",ne,!1),ut(()=>{I.value=ne})},m=j(()=>n.format.includes("ss")),A=j(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),L=(ne=!1)=>{a("pick",[b.value,C.value],ne)},y=ne=>{H(ne.millisecond(0),C.value)},D=ne=>{H(b.value,ne.millisecond(0))},E=ne=>{const M=ne.map(le=>on(le).locale(i.value)),ee=fe(M);return M[0].isSame(ee[0])&&M[1].isSame(ee[1])},H=(ne,M)=>{n.visible&&a("pick",[ne,M],!0)},X=j(()=>b.value>C.value),Y=x([0,2]),U=(ne,M)=>{a("select-range",ne,M,"min"),Y.value=[ne,M]},Q=j(()=>m.value?11:8),$=(ne,M)=>{a("select-range",ne,M,"max");const ee=o(Q);Y.value=[ne+ee,M+ee]},V=ne=>{const M=m.value?[0,3,6,11,14,17]:[0,3,8,11],ee=["hours","minutes"].concat(m.value?["seconds"]:[]),le=(M.indexOf(Y.value[0])+ne+M.length)%M.length,Ee=M.length/2;le<Ee?ce.start_emitSelectRange(ee[le]):ce.end_emitSelectRange(ee[le-Ee])},N=ne=>{const M=$v(ne),{left:ee,right:le,up:Ee,down:xe}=Fv;if([ee,le].includes(M)){V(M===ee?-1:1),ne.preventDefault();return}if([Ee,xe].includes(M)){const Me=M===Ee?-1:1;ce[`${Y.value[0]<Q.value?"start":"end"}_scrollDown`](Me),ne.preventDefault();return}},h=(ne,M)=>{const ee=w?w(ne):[],le=ne==="start",Ee=(M||(le?C.value:b.value)).hour();return xo(ee,le?r(Ee+1,23):r(0,Ee-1))},F=(ne,M,ee)=>{const le=k?k(ne,M):[],Ee=M==="start",xe=ee||(Ee?C.value:b.value);if(ne!==xe.hour())return le;const Me=xe.minute();return xo(le,Ee?r(Me+1,59):r(0,Me-1))},z=(ne,M,ee,le)=>{const Ee=T?T(ne,M,ee):[],xe=ee==="start",Me=le||(xe?C.value:b.value),Se=Me.hour(),ye=Me.minute();if(ne!==Se||M!==ye)return Ee;const Fe=Me.second();return xo(Ee,xe?r(Fe+1,59):r(0,Fe-1))},fe=([ne,M])=>[oe(ne,"start",!0,M),oe(M,"end",!1,ne)],{getAvailableHours:J,getAvailableMinutes:re,getAvailableSeconds:ge}=mg(h,F,z),{timePickerOptions:ce,getAvailableTime:oe,onSetOption:P}=gg({getAvailableHours:J,getAvailableMinutes:re,getAvailableSeconds:ge}),G=ne=>ne?Va(ne)?ne.map(M=>on(M,n.format).locale(i.value)):on(ne,n.format).locale(i.value):null,ue=()=>{if(Va(p))return p.map(M=>on(M).locale(i.value));const ne=on(p).locale(i.value);return[ne,ne.add(60,"m")]};return a("set-picker-option",["parseUserInput",G]),a("set-picker-option",["isValidValue",E]),a("set-picker-option",["handleKeydownInput",N]),a("set-picker-option",["getDefaultValue",ue]),a("set-picker-option",["getRangeAvailableTime",fe]),a("set-picker-option",["handleCancel",S]),(ne,M)=>ne.actualVisible?(f(),O("div",{key:0,class:Ke([o(l).b("range-picker"),o(v).b("panel")])},[K("div",{class:Ke(o(l).be("range-picker","content"))},[K("div",{class:Ke(o(l).be("range-picker","cell"))},[K("div",{class:Ke(o(l).be("range-picker","header"))},W(o(s)("el.datepicker.startTime")),3),K("div",{class:Ke(g.value)},[B(ss,{ref:"minSpinner",role:"start","show-seconds":m.value,"am-pm-mode":A.value,"arrow-control":o(d),"spinner-date":b.value,"disabled-hours":h,"disabled-minutes":F,"disabled-seconds":z,onChange:y,onSetOption:o(P),onSelectRange:U},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2),K("div",{class:Ke(o(l).be("range-picker","cell"))},[K("div",{class:Ke(o(l).be("range-picker","header"))},W(o(s)("el.datepicker.endTime")),3),K("div",{class:Ke(R.value)},[B(ss,{ref:"maxSpinner",role:"end","show-seconds":m.value,"am-pm-mode":A.value,"arrow-control":o(d),"spinner-date":C.value,"disabled-hours":h,"disabled-minutes":F,"disabled-seconds":z,onChange:D,onSetOption:o(P),onSelectRange:$},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2)],2),K("div",{class:Ke(o(l).be("panel","footer"))},[K("button",{type:"button",class:Ke([o(l).be("panel","btn"),"cancel"]),onClick:M[0]||(M[0]=ee=>S())},W(o(s)("el.datepicker.cancel")),3),K("button",{type:"button",class:Ke([o(l).be("panel","btn"),"confirm"]),disabled:X.value,onClick:M[1]||(M[1]=ee=>L())},W(o(s)("el.datepicker.confirm")),11,Og)],2)],2)):ve("v-if",!0)}}),Wg=Lg;on.extend(_l);var Mg=at({name:"ElTimePicker",install:null,props:{...hg,isRange:Boolean},emits:[ta],setup(e,t){const n=x(),[a,r]=e.isRange?["timerange",Wg]:["time",yg],s=i=>t.emit(ta,i);return dl(wg,e.popperOptions),t.expose({focus:()=>{n.value?.focus()},blur:()=>{n.value?.blur()},handleOpen:()=>{n.value?.handleOpen()},handleClose:()=>{n.value?.handleClose()}}),()=>B(kg,ra(e,{ref:n,type:a,format:e.format??"HH:mm:ss","onUpdate:modelValue":s}),{default:i=>B(r,i,null)})}});const xg=ia(Mg),cs=e=>Uv(e)||Vv(e)||Va(e),$g=oa({accordion:Boolean,modelValue:{type:$t([Array,String,Number]),default:()=>qv([])},expandIconPosition:{type:$t([String]),default:"right"},beforeCollapse:{type:$t(Function)}}),Fg={[ta]:cs,[Ir]:cs},Yl=Symbol("collapseContextKey"),Ug=oa({title:{type:String,default:""},name:{type:$t([String,Number]),default:void 0},icon:{type:Bv,default:Hv},disabled:Boolean});var Vg=at({name:"ElCollapseTransition",__name:"collapse-transition",setup(e){const t=mn("collapse-transition"),n=r=>{r.style.maxHeight="",r.style.overflow=r.dataset.oldOverflow,r.style.paddingTop=r.dataset.oldPaddingTop,r.style.paddingBottom=r.dataset.oldPaddingBottom},a={beforeEnter(r){r.dataset||(r.dataset={}),r.dataset.oldPaddingTop=r.style.paddingTop,r.dataset.oldPaddingBottom=r.style.paddingBottom,r.style.height&&(r.dataset.elExistsHeight=r.style.height),r.style.maxHeight=0,r.style.paddingTop=0,r.style.paddingBottom=0},enter(r){requestAnimationFrame(()=>{r.dataset.oldOverflow=r.style.overflow,r.dataset.elExistsHeight?r.style.maxHeight=r.dataset.elExistsHeight:r.scrollHeight!==0?r.style.maxHeight=`${r.scrollHeight}px`:r.style.maxHeight=0,r.style.paddingTop=r.dataset.oldPaddingTop,r.style.paddingBottom=r.dataset.oldPaddingBottom,r.style.overflow="hidden"})},afterEnter(r){r.style.maxHeight="",r.style.overflow=r.dataset.oldOverflow},enterCancelled(r){n(r)},beforeLeave(r){r.dataset||(r.dataset={}),r.dataset.oldPaddingTop=r.style.paddingTop,r.dataset.oldPaddingBottom=r.style.paddingBottom,r.dataset.oldOverflow=r.style.overflow,r.style.maxHeight=`${r.scrollHeight}px`,r.style.overflow="hidden"},leave(r){r.scrollHeight!==0&&(r.style.maxHeight=0,r.style.paddingTop=0,r.style.paddingBottom=0)},afterLeave(r){n(r)},leaveCancelled(r){n(r)}};return(r,s)=>(f(),we(hn,ra({name:o(t).b()},Gv(a)),{default:Z(()=>[Ct(r.$slots,"default")]),_:3},16,["name"]))}}),qg=Vg;const Hg=ia(qg),ds="ElCollapse",Bg=(e,t)=>{const n=x(Gi(e.modelValue)),a=i=>{n.value=i;const l=e.accordion?n.value[0]:n.value;t(ta,l),t(Ir,l)},r=i=>{if(e.accordion)a([n.value[0]===i?"":i]);else{const l=[...n.value],v=l.indexOf(i);v>-1?l.splice(v,1):l.push(i),a(l)}},s=async i=>{const{beforeCollapse:l}=e;if(!l){r(i);return}const v=l(i);[Li(v),ul(v)].includes(!0)||zv(ds,"beforeCollapse must return type `Promise<boolean>` or `boolean`"),Li(v)?v.then(u=>{u!==!1&&r(i)}).catch(u=>{vl(ds,`some error occurred: ${u}`)}):v&&r(i)};return He(()=>e.modelValue,()=>n.value=Gi(e.modelValue),{deep:!0}),dl(Yl,{activeNames:n,handleItemClick:s}),{activeNames:n,setActiveNames:a}},Gg=e=>{const t=mn("collapse");return{rootKls:j(()=>[t.b(),t.b(`icon-position-${e.expandIconPosition}`)])}};var zg=at({name:"ElCollapse",__name:"collapse",props:$g,emits:Fg,setup(e,{expose:t,emit:n}){const a=e,{activeNames:r,setActiveNames:s}=Bg(a,n),{rootKls:i}=Gg(a);return t({activeNames:r,setActiveNames:s}),(l,v)=>(f(),O("div",{class:Ke(o(i))},[Ct(l.$slots,"default")],2))}}),Kg=zg;const jg=e=>{const t=cl(Yl),{namespace:n}=mn("collapse"),a=x(!1),r=x(!1),s=Kv(),i=j(()=>s.current++),l=j(()=>e.name??`${n.value}-id-${s.prefix}-${o(i)}`),v=j(()=>t?.activeNames.value.includes(o(l)));return{focusing:a,id:i,isActive:v,handleFocus:()=>{setTimeout(()=>{r.value?r.value=!1:a.value=!0},50)},handleHeaderClick:k=>{e.disabled||k.target?.closest("input, textarea, select")||(t?.handleItemClick(o(l)),a.value=!1,r.value=!0)},handleEnterClick:k=>{k.target?.closest("input, textarea, select")||(k.preventDefault(),t?.handleItemClick(o(l)))}}},_g=(e,{focusing:t,isActive:n,id:a})=>{const r=mn("collapse"),s=j(()=>[r.b("item"),r.is("active",o(n)),r.is("disabled",e.disabled)]),i=j(()=>[r.be("item","header"),r.is("active",o(n)),{focusing:o(t)&&!e.disabled}]),l=j(()=>[r.be("item","arrow"),r.is("active",o(n))]);return{itemTitleKls:j(()=>[r.be("item","title")]),arrowKls:l,headKls:i,rootKls:s,itemWrapperKls:j(()=>r.be("item","wrap")),itemContentKls:j(()=>r.be("item","content")),scopedContentId:j(()=>r.b(`content-${o(a)}`)),scopedHeadId:j(()=>r.b(`head-${o(a)}`))}},Yg=["id","aria-expanded","aria-controls","aria-describedby","tabindex","aria-disabled"],Qg=["id","aria-hidden","aria-labelledby"];var Jg=at({name:"ElCollapseItem",__name:"collapse-item",props:Ug,setup(e,{expose:t}){const n=e,{focusing:a,id:r,isActive:s,handleFocus:i,handleHeaderClick:l,handleEnterClick:v}=jg(n),{arrowKls:u,headKls:d,rootKls:w,itemTitleKls:k,itemWrapperKls:T,itemContentKls:p,scopedContentId:g,scopedHeadId:R}=_g(n,{focusing:a,isActive:s,id:r});return t({isActive:s}),(b,C)=>(f(),O("div",{class:Ke(o(w))},[K("div",{id:o(R),class:Ke(o(d)),"aria-expanded":o(s),"aria-controls":o(g),"aria-describedby":o(g),tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,role:"button",onClick:C[0]||(C[0]=(...I)=>o(l)&&o(l)(...I)),onKeydown:C[1]||(C[1]=pl(rt((...I)=>o(v)&&o(v)(...I),["stop"]),["space","enter"])),onFocus:C[2]||(C[2]=(...I)=>o(i)&&o(i)(...I)),onBlur:C[3]||(C[3]=I=>a.value=!1)},[K("span",{class:Ke(o(k))},[Ct(b.$slots,"title",{isActive:o(s)},()=>[ke(W(e.title),1)])],2),Ct(b.$slots,"icon",{isActive:o(s)},()=>[B(o(fl),{class:Ke(o(u))},{default:Z(()=>[(f(),we(yr(e.icon)))]),_:1},8,["class"])])],42,Yg),B(o(Hg),null,{default:Z(()=>[Le(K("div",{id:o(g),role:"region",class:Ke(o(T)),"aria-hidden":!o(s),"aria-labelledby":o(R)},[K("div",{class:Ke(o(p))},[Ct(b.$slots,"default")],2)],10,Qg),[[At,o(s)]])]),_:3})],2))}}),Ql=Jg;const Xg=ia(Kg,{CollapseItem:Ql}),Zg=jv(Ql),Jl="09:00",Xl="18:00",Zl="00:30",em=oa({format:{type:String,default:"HH:mm"},modelValue:{type:$t(String)},disabled:{type:Boolean,default:void 0},editable:{type:Boolean,default:!0},effect:{type:$t(String),default:"light"},clearable:{type:Boolean,default:!0},size:Jv,placeholder:String,start:{type:String,default:Jl},end:{type:String,default:Xl},step:{type:String,default:Zl},minTime:{type:$t(String)},maxTime:{type:$t(String)},includeEndTime:Boolean,name:String,prefixIcon:{type:$t([String,Object]),default:()=>Qv},clearIcon:{type:$t([String,Object]),default:()=>Yv},popperClass:{type:$t([String,Array,Object,Boolean]),default:""},popperStyle:{type:$t([String,Array,Object,Boolean]),default:void 0},..._v}),An=e=>{const t=(e||"").split(":");if(t.length>=2){let n=Number.parseInt(t[0],10);const a=Number.parseInt(t[1],10);if(Number.isNaN(n)||Number.isNaN(a))return null;const r=e.toUpperCase();return r.includes("AM")&&n===12?n=0:r.includes("PM")&&n!==12&&(n+=12),{hours:n,minutes:a}}return null},tm=e=>!!e&&e.hours>=0&&e.minutes>=0&&!Number.isNaN(e.hours)&&!Number.isNaN(e.minutes),$o=(e,t)=>{const n=An(e);if(!n)return-1;const a=An(t);if(!a)return-1;const r=n.minutes+n.hours*60,s=a.minutes+a.hours*60;return r===s?0:r>s?1:-1},us=e=>`${e}`.padStart(2,"0"),Fa=e=>`${us(e.hours)}:${us(e.minutes)}`,nm=(e,t)=>{const n=An(e);if(!n)return"";const a=An(t);if(!a)return"";const r={hours:n.hours,minutes:n.minutes};return r.minutes+=a.minutes,r.hours+=a.hours,r.hours+=Math.floor(r.minutes/60),r.minutes=r.minutes%60,Fa(r)};var am=at({name:"ElTimeSelect",__name:"time-select",props:em,emits:[Ir,"blur","focus","clear",ta],setup(e,{expose:t}){on.extend(_l);const{Option:n}=wn,a=e,r=mn("input"),s=x(),i=Eg(),{lang:l}=ll(),v=(C,I,S,m=!0)=>{const A=An(C);return!tm(A)||!m&&A.hours===0&&A.minutes===0?(vl("ElTimeSelect",`invalid ${I}, fallback to default ${I} (${S}).`),S):Fa(A)},u=j(()=>a.modelValue),d=j(()=>v(a.start,"start",Jl)),w=j(()=>v(a.end,"end",Xl)),k=j(()=>{const C=An(a.minTime||"");return C?Fa(C):null}),T=j(()=>{const C=An(a.maxTime||"");return C?Fa(C):null}),p=j(()=>v(a.step,"step",Zl,!1)),g=j(()=>{const C=[],I=(m,A)=>{C.push({value:m,rawValue:A,disabled:$o(A,k.value||"-1:-1")<=0||$o(A,T.value||"100:100")>=0})};let S=d.value;for(;$o(S,w.value)<=0;)I(on(S,"HH:mm").locale(l.value).format(a.format),S),S=nm(S,p.value);return a.includeEndTime&&C[C.length-1]?.rawValue!==w.value&&I(on(w.value,"HH:mm").locale(l.value).format(a.format),w.value),C});return t({blur:()=>{s.value?.blur?.()},focus:()=>{s.value?.focus?.()}}),(C,I)=>(f(),we(o(wn),{ref_key:"select",ref:s,name:e.name,"model-value":u.value,disabled:o(i),clearable:e.clearable,"clear-icon":e.clearIcon,size:e.size,effect:e.effect,placeholder:e.placeholder,"default-first-option":"",filterable:e.editable,"empty-values":e.emptyValues,"value-on-clear":e.valueOnClear,"popper-class":e.popperClass,"popper-style":e.popperStyle,"onUpdate:modelValue":I[0]||(I[0]=S=>C.$emit(o("update:modelValue"),S)),onChange:I[1]||(I[1]=S=>C.$emit(o("change"),S)),onBlur:I[2]||(I[2]=S=>C.$emit("blur",S)),onFocus:I[3]||(I[3]=S=>C.$emit("focus",S)),onClear:I[4]||(I[4]=()=>C.$emit("clear"))},{prefix:Z(()=>[e.prefixIcon?(f(),we(o(fl),{key:0,class:Ke(o(r).e("prefix-icon"))},{default:Z(()=>[(f(),we(yr(e.prefixIcon)))]),_:1},8,["class"])):ve("v-if",!0)]),default:Z(()=>[(f(!0),O(Ve,null,Je(g.value,S=>(f(),we(o(n),{key:S.value,label:S.value,value:S.value,disabled:S.disabled},null,8,["label","value","disabled"]))),128))]),_:1},8,["name","model-value","disabled","clearable","clear-icon","size","effect","placeholder","filterable","empty-values","value-on-clear","popper-class","popper-style"]))}}),om=am;const rm=ia(om),im=oa({...Kl(Ra,["ariaLabel","gpuAcceleration","rawContent"]),placement:Yi.placement,tabindex:Yi.tabindex,effect:{...Ra.effect,default:"light"},title:String,width:{type:[String,Number],default:150},offset:{...Ra.offset,default:void 0},persistent:{...Ra.persistent,default:!0}}),sm={"update:visible":e=>ul(e),"before-enter":()=>!0,"before-leave":()=>!0,"after-enter":()=>!0,"after-leave":()=>!0};({...Kl(Xv,["gpuAcceleration"])});var lm=at({name:"ElPopover",__name:"popover",props:im,emits:sm,setup(e,{expose:t,emit:n}){const a=e,r=n,s=j(()=>{const b=Wi.props;return Zv(a,Va(b)?b:Object.keys(b))}),i=mn("popover"),l=x(),v=j(()=>o(l)?.popperRef),u=j(()=>[{width:ef(a.width)},a.popperStyle]),d=j(()=>[i.b(),a.popperClass,{[i.m("plain")]:!!a.content}]),w=j(()=>a.transition===`${i.namespace.value}-fade-in-linear`),k=()=>{l.value?.hide()},T=()=>{r("before-enter")},p=()=>{r("before-leave")},g=()=>{r("after-enter")},R=()=>{r("update:visible",!1),r("after-leave")};return t({popperRef:v,hide:k}),(b,C)=>(f(),we(o(Wi),ra({ref_key:"tooltipRef",ref:l},s.value,{"aria-label":e.title,"popper-class":d.value,"popper-style":u.value,"gpu-acceleration":w.value,onBeforeShow:T,onBeforeHide:p,onShow:g,onHide:R}),{content:Z(()=>[e.title?(f(),O("div",{key:0,class:Ke(o(i).e("title")),role:"title"},W(e.title),3)):ve("v-if",!0),Ct(b.$slots,"default",{hide:k},()=>[ke(W(e.content),1)])]),default:Z(()=>[b.$slots.reference?Ct(b.$slots,"reference",{key:0}):ve("v-if",!0)]),_:3},16,["aria-label","popper-class","popper-style","gpu-acceleration"]))}}),cm=lm;const vs=(e,t)=>{const n=(t.arg||t.value)?.popperRef;n&&(n.triggerRef=e)};var dm={mounted(e,t){vs(e,t)},updated(e,t){vs(e,t)}};const um="popover",vm=tf(dm,um),Nr=ia(cm,{directive:vm});function fm(){return gl()}function pm(e){const t=Math.max(0,Math.floor(e/6e4));if(t===0)return"<1m";const n=t%60,a=Math.floor(t/60),r=a%24,s=Math.floor(a/24);return s>0?`${s}d ${r}h`:r>0?`${r}h ${n}m`:`${n}m`}function Nn(e){return e==="STARTING"||e==="RUNNING"||e==="CANCELLING"}function _a(e){return Nn(e.status)?e.startedAt:e.completedAt??e.updatedAt}function Tn(e){return e.titleSource==="DEFAULT"?c("hostedConversations.temporaryTitle"):e.title}const gm=["aria-label"],mm=at({__name:"EnterpriseLoginExtension",props:{request:{type:Function}},setup(e){const t=e,n=x([]),{t:a}=Dn();return Dt(async()=>{try{n.value=(await t.request("/api/oauth/providers")).providers.filter(r=>/^[a-z0-9](?:[a-z0-9-]{0,62}[a-z0-9])?$/.test(r.providerKey))}catch{n.value=[]}}),(r,s)=>{const i=bt;return n.value.length>0?(f(),O("div",{key:0,class:"sso-login","aria-label":o(a)("auth.enterpriseLogin")},[K("div",null,[K("span",null,W(o(a)("auth.orEnterprise")),1)]),(f(!0),O(Ve,null,Je(n.value,l=>(f(),we(i,{key:l.providerKey,tag:"a",href:`/api/oauth/${encodeURIComponent(l.providerKey)}/login?locale=${encodeURIComponent(o(ml)())}`},{default:Z(()=>[ke(W(o(a)("auth.loginWith",{provider:l.name})),1)]),_:2},1032,["href"]))),128))],8,gm)):ve("",!0)}}}),hm=dt(mm,[["__scopeId","data-v-260a9012"]]);function ym(e){let t,n;function a(s){return t!==void 0?(n=s,t):(t=s().finally(async()=>{t=void 0;const i=n;n=void 0,i!==void 0&&await a(i)}),t)}function r(){n=void 0,e.workspace.stop()}return{startWorkspace:(s,i)=>(e.extension?.stop(),a(()=>e.workspace.start(s,i))),restartWorkspace:s=>(e.extension?.stop(),a(()=>e.workspace.restart(s))),stopWorkspace:r,beginSession(s,i){return e.extension?.stop(),e.session.beginSelectedSessionWatch(s,i)},restartSession(s){return e.extension?.stop(),e.session.restartSelectedSessionWatch(s)},beginSecondarySession(s,i){return e.extension?.stop(),e.secondary?.beginSelectedSessionWatch(s,i)},restartSecondarySession(s){return e.extension?.stop(),e.secondary?.restartSelectedSessionWatch(s)},stopSecondarySession(){e.secondary?.stopSelectedSessionWatch()},async beginExtension(){if(e.extension===void 0)throw new Error("WEB_WATCH_EXTENSION_REQUIRED");return r(),e.session.stopSelectedSessionWatch(),e.secondary?.stopSelectedSessionWatch(),e.extension.begin()},async restartExtension(){if(e.extension===void 0)throw new Error("WEB_WATCH_EXTENSION_REQUIRED");return r(),e.session.stopSelectedSessionWatch(),e.secondary?.stopSelectedSessionWatch(),e.extension.restart()},pause(){n=void 0,e.workspace.pause(),e.session.pauseSelectedSessionWatch(),e.secondary?.pauseSelectedSessionWatch(),e.extension?.pause()},stopSession:e.session.stopSelectedSessionWatch,stopExtension:()=>e.extension?.stop(),handleVisibility(){r(),e.session.handleSessionWatchVisibility(),e.secondary?.handleSessionWatchVisibility(),e.extension?.handleVisibility()},handleEvent(s){return e.workspace.handleEvent(s)||e.session.handleEvent(s)||(e.secondary?.handleEvent(s)??!1)||(e.extension?.handleEvent(s)??!1)},dispose(){n=void 0,e.extension?.stop(),e.session.stopSelectedSessionWatch(),e.secondary?.stopSelectedSessionWatch(),e.workspace.stop()}}}function wm(e){const t=e.view,n=e.selectedWorkspace,a=e.selectedSessionId,r={get value(){return e.workspaceTarget.value?.nodeId}},s={get value(){return e.workspaceTarget.value?.workspaceId}},i={selectedNodeId:e.hostedNodeId},l={get current(){return e.coordinator()}},v=e.invalidateManifest,u=e.refreshManifest,d=e.reactivate,w=e.discardNodeCache,k=e.refreshSession;function T(R,b=!0){if(v(R),t.value==="conversations"&&i.selectedNodeId.value===R){b&&l.current?.restartHostedConversation().catch(()=>{});return}t.value!=="nodes"||r.value!==R||s.value!==void 0&&n.value===void 0&&d(R)||(u(R),b&&(s.value!==void 0&&l.current?.restartWorkspace(s.value),a.value!==void 0&&k()))}function p(R){if(v(R),t.value==="conversations"&&i.selectedNodeId.value===R){l.current?.restartHostedConversation().catch(()=>{});return}t.value==="nodes"&&(w(R),r.value===R&&u(R),r.value===R&&e.resetSession(),r.value===R&&s.value!==void 0&&l.current?.restartWorkspace(s.value),r.value===R&&a.value!==void 0&&k())}function g(){document.visibilityState==="visible"?(e.direct.connectionLost(),e.live.reconnect()):e.coordinator()?.handleVisibility()}return{connected:T,resync:p,handleVisibility:g}}function km(e){let t=0;async function n(i,l,v){t+=1,e.workspace.selectConversation(i,l,v),e.markRead(i,l),await e.coordinator()?.beginHostedConversation()}function a(i,l){return n(i.nodeId,i.id,l)}function r(){t+=1,e.coordinator()?.stopHostedConversation(),e.workspace.clearSelectedConversation()}async function s(i,l){const v=t+1;try{await n(i.nodeId,i.conversationId)}catch{if(v!==t)return;r(),l()}}return{select:a,openTarget:n,clear:r,restoreTarget:s}}const Da="mar.user.csrf-token",fs=8;function bm(e){const{translate:t,currentLocale:n}=e.presentation;let a=0,r=0,s=0;const i=x(!1),l=x(!1);async function v(I,S){for(;I!==void 0&&S();){const m=n();if(I===m)return;try{await e.request("/api/auth/preferences/locale",{method:"PUT",body:JSON.stringify({locale:m})})}catch{S()&&e.notice(t("common.localeUpdateFailed"),"error");return}I=m}}function u(){return a+=1,r+=1,e.invalidateRequests(),a}async function d(I){try{await e.onAuthenticated()}catch(S){if(I!==a)return;e.notice(t("generated.adminAuthService.workbenchRecoveryFailed",{value0:e.errorMessage(S)}),"error",S)}}function w(){u(),e.admin.value={authenticated:!1,mustChangePassword:!1},e.loaded.value=!0,i.value=!1,l.value=!1,e.loading.value=!1,e.sessions.value=[],e.csrfToken.value="",window.sessionStorage.removeItem(Da),e.onSignedOut()}async function k(){const I=++r,S=a,m=()=>I===r&&S===a;l.value=!0;try{const A=await e.request("/api/auth/me");if(!m())return;if(!A.authenticated){w();return}const L=window.sessionStorage.getItem(Da)??"";if(L.length===0&&await e.renewCsrfToken(),!m()||(L.length>0&&(e.csrfToken.value=L),e.admin.value=A,i.value=!1,e.loaded.value=!0,A.authenticated&&await v(A.locale,m),!m()))return;A.authenticated&&!A.mustChangePassword&&await d(S)}catch(A){if(!m())return;A instanceof jt&&A.code==="UNAUTHENTICATED"?w():(e.admin.value.authenticated||(i.value=!0,e.loaded.value=!0),e.notice(t("generated.adminAuthService.authenticationRecoveryFailed",{value0:e.errorMessage(A)}),"error",A))}finally{m()&&(l.value=!1)}}async function T(){const I=a,S=++s,m=()=>I===a&&S===s;if(!e.admin.value.authenticated||e.admin.value.mustChangePassword){e.sessions.value=[];return}try{const A=await e.request("/api/auth/sessions");m()&&(e.sessions.value=A.sessions)}catch(A){if(!m())return;e.sessions.value=[],e.notice(t("generated.adminAuthService.unableToLoadSignInSessions",{value0:e.errorMessage(A)}),"error",A)}}async function p(I){const S=a;e.loading.value=!0;try{if(await e.request(`/api/auth/sessions/${encodeURIComponent(I.id)}`,{method:"DELETE"}),S!==a)return;I.current?w():await T()}catch(m){if(S!==a)return;e.notice(t("generated.adminAuthService.unableToRevokeTheSignInSession",{value0:e.errorMessage(m)}),"error",m)}finally{S===a&&(e.loading.value=!1)}}async function g(I){const S=u();e.loading.value=!0;try{const m=await e.request("/api/auth/login",{method:"POST",body:JSON.stringify({...I,locale:n()})});if(S!==a||(e.invalidateRequests(),r+=1,e.csrfToken.value=m.csrfToken,window.sessionStorage.setItem(Da,m.csrfToken),e.admin.value=m,i.value=!1,await v(m.locale,()=>S===a),S!==a))return;m.mustChangePassword||await d(S)}catch(m){if(S!==a)return;e.notice(t("generated.adminAuthService.signInFailed",{value0:e.errorMessage(m)}),"error",m)}finally{S===a&&(e.loading.value=!1)}}async function R(I){try{if(await d(I),I!==a)return;await T()}catch(S){if(I!==a)return;e.notice(t("generated.adminAuthService.unableToUpdateThePassword",{value0:e.errorMessage(S)}),"error",S)}finally{I===a&&(e.loading.value=!1)}}async function b(I){if(I.password.length<fs)return e.passwordError.value=t("generated.adminAuthService.theNewPasswordMustContainAtLeast",{value0:fs}),!1;if(I.password!==I.confirmation)return e.passwordError.value=t("generated.adminAuthService.theNewPasswordsDoNotMatch"),!1;const S=u();let m=!1;e.passwordError.value="",e.loading.value=!0;try{const A=await e.request("/api/auth/change-password",{method:"POST",body:JSON.stringify({currentPassword:I.currentPassword,password:I.password})});return S!==a?!1:(e.invalidateRequests(),r+=1,e.csrfToken.value=A.csrfToken,window.sessionStorage.setItem(Da,A.csrfToken),e.admin.value=A,e.password.value="",e.notice(t("generated.adminAuthService.passwordUpdatedPreviousSignInSessionsWere"),"success"),m=!0,R(S),!0)}catch(A){return S!==a||e.notice(t("generated.adminAuthService.unableToUpdateThePassword",{value0:e.errorMessage(A)}),"error",A),!1}finally{!m&&S===a&&(e.loading.value=!1)}}async function C(){const I=a;e.loading.value=!0;try{if(await e.request("/api/auth/logout",{method:"POST"}),I!==a)return;w()}catch(S){if(I!==a)return;e.notice(t("generated.adminAuthService.unableToSignOut",{value0:e.errorMessage(S)}),"error",S)}finally{I===a&&(e.loading.value=!1)}}return{view:Et({admin:e.admin,adminLoaded:e.loaded,authenticationUnknown:i,authenticationRestoring:l,adminSessions:e.sessions,changePassword:b,csrfToken:e.csrfToken,formatSessionTime:Gt,loading:e.loading,locked:j(()=>e.admin.value.authenticated&&e.admin.value.mustChangePassword),login:g,logout:C,logoutAdminSession:p,newPassword:e.password,passwordValidationError:e.passwordError,refreshAdmin:k,refreshAdminSessions:T,renewCsrfToken:e.renewCsrfToken,request:e.request}),authenticationUnknown:i,restoring:l,returnToLogin:w,refresh:k,refreshSessions:T,logoutSession:p,login:g,changePassword:b,logout:C}}function Im(e){const t=x(),n=x(!1);async function a(r){if(!n.value){n.value=!0;try{t.value=(await(e.submit===void 0?e.request("/api/node-registration-tokens",{method:"POST"}):e.submit(e.request,r))).token}catch(s){e.notice(c("generated.workbenchPageController.unableToCreateARegistrationToken",{value0:e.errorMessage(s)}),"error",s)}finally{n.value=!1}}}return{token:j(()=>t.value),pending:j(()=>n.value),create:a}}const ps={"mar-agent":0,codex:1,"claude-code":2,opencode:3};function gs(e){return e.map(t=>({...t,accessOptions:t.accessOptions.map(n=>{const a=hs(t.runner,"access",n.id,n.description);return{...n,label:ms(t.runner,"access",n.id,n.label),...a===void 0?{}:{description:a}}}),commands:t.commands.filter(n=>n.id!=="mission"&&(n.id!=="goal"||n.source==="MAR_RUNTIME")).map(n=>{const a=hs(t.runner,"command",n.id,n.description);return{...n,...n.stateLabel===void 0?{}:{stateLabel:ms(t.runner,"state",n.id,n.stateLabel)},...a===void 0?{}:{description:a}}})})).sort((t,n)=>ps[t.runner]-ps[n.runner])}const Sm={"mar-agent:access:auto":"runnerProfiles.marAgentAccessAuto","mar-agent:access:full-access":"runnerProfiles.marAgentAccessFull","mar-agent:command:compact":"runnerProfiles.marAgentCompact","mar-agent:command:plan":"runnerProfiles.marAgentPlan","mar-agent:command:clear":"runnerProfiles.marAgentClear","mar-agent:command:goal":"runnerProfiles.goal","codex:access:on-request":"runnerProfiles.codexAccessOnRequest","codex:access:workspace-write":"runnerProfiles.codexAccessWorkspaceWrite","codex:access:full-access":"runnerProfiles.codexAccessFull","codex:access:read-only":"runnerProfiles.codexAccessReadOnly","codex:command:compact":"runnerProfiles.codexCompact","codex:command:plan":"runnerProfiles.codexPlan","codex:command:goal":"runnerProfiles.goal","codex:command:fast":"runnerProfiles.codexFast","claude-code:access:default":"runnerProfiles.claudeAccessDefault","claude-code:access:accept-edits":"runnerProfiles.claudeAccessAcceptEdits","claude-code:access:bypass":"runnerProfiles.claudeAccessBypass","claude-code:access:plan":"runnerProfiles.claudeAccessPlan","claude-code:command:compact":"runnerProfiles.codexCompact","claude-code:command:plan":"runnerProfiles.codexPlan","claude-code:command:goal":"runnerProfiles.goal","opencode:access:default":"runnerProfiles.openCodeAccessDefault","opencode:access:auto":"runnerProfiles.openCodeAccessAuto","opencode:command:compact":"runnerProfiles.codexCompact","opencode:command:plan":"runnerProfiles.codexPlan","opencode:command:goal":"runnerProfiles.goal"},Cm={"mar-agent:access:auto":"runnerProfiles.marAgentAccessAutoLabel","mar-agent:access:full-access":"runnerProfiles.marAgentAccessFullLabel","mar-agent:state:goal":"goal.title","codex:access:on-request":"runnerProfiles.codexAccessOnRequestLabel","codex:access:workspace-write":"runnerProfiles.codexAccessWorkspaceWriteLabel","codex:access:full-access":"runnerProfiles.codexAccessFullLabel","codex:access:read-only":"runnerProfiles.codexAccessReadOnlyLabel","codex:state:plan":"runnerProfiles.planModeLabel","codex:state:goal":"goal.title","claude-code:access:default":"runnerProfiles.claudeAccessDefaultLabel","claude-code:access:accept-edits":"runnerProfiles.claudeAccessAcceptEditsLabel","claude-code:access:bypass":"runnerProfiles.claudeAccessBypassLabel","claude-code:access:plan":"runnerProfiles.planModeLabel","claude-code:state:plan":"runnerProfiles.planModeLabel","claude-code:state:goal":"goal.title","opencode:access:default":"runnerProfiles.openCodeAccessDefaultLabel","opencode:access:auto":"runnerProfiles.openCodeAccessAutoLabel","opencode:state:plan":"runnerProfiles.planModeLabel","opencode:state:goal":"goal.title"};function ms(e,t,n,a){const r=Cm[`${e}:${t}:${n}`];return r===void 0?a:c(r)}function hs(e,t,n,a){const r=Sm[`${e}:${t}:${n}`];return r===void 0?a:c(r)}function Tm(e){const t=x([]),n=x(!1),a=x(!1),r=new Map,s=new Map,i=new Map;let l=0,v=Promise.resolve();function u(g){return r.has(g)}function d(g){return gs(r.get(g)??[])}function w(g){t.value=d(g)}async function k(g){const R=e.workspaceTarget.value,b=R?.workspaceId,C=()=>I===l&&e.workspaceTarget.value?.nodeId===g&&e.workspaceTarget.value===R,I=++l;n.value=!0,a.value=!1;const S=i.get(g)??0;let m;try{const A=`/api/runner-profiles?nodeId=${encodeURIComponent(g)}${b===void 0?"":`&workspaceId=${encodeURIComponent(b)}`}&cacheOnly=true`,L=await e.request(A);return m=(D=>{if(!C())return;if(!Array.isArray(D.profiles))throw new Error("RUNNER_PROFILES_INVALID");r.set(g,D.profiles);const E=gs(D.profiles);t.value=E;const H=(i.get(g)??0)===S;return H&&s.set(g,Rm(D.defaults,E)),{profiles:E,defaultsChanged:H}})(L),m}catch{C()&&(w(g),a.value=!0);return}finally{C()&&(n.value=!1)}}function T(g,R){const b=g===void 0?void 0:s.get(g)?.get(R);return b!==void 0&&cr(b,t.value)?b:Em(R,t.value)}function p(g,R){if(!cr(R,t.value))return;const b=new Map(s.get(g));b.set(R.runner,R),s.set(g,b),i.set(g,(i.get(g)??0)+1),v=v.catch(()=>{}).then(async()=>{try{await e.request("/api/runner-defaults",{method:"PUT",body:JSON.stringify({nodeId:g,...R})})}catch(C){e.workspaceTarget.value?.nodeId===g&&e.notice(c("generated.runnerProfileService.unableToSaveTheNodeDefaultSession",{value0:e.errorMessage(C)}),"error",C)}})}return He(()=>e.workspaceTarget.value,()=>{l+=1,n.value=!1,a.value=!1;const g=e.workspaceTarget.value?.nodeId;g!==void 0?w(g):t.value=[]},{flush:"sync"}),He(Xa().locale,()=>{const g=e.workspaceTarget.value?.nodeId;g!==void 0&&w(g)}),{profiles:j(()=>t.value),loading:j(()=>n.value),failed:j(()=>a.value),has:u,cached:d,restore:w,load:k,defaultFor:T,save:p}}function Em(e,t){const n=t.find(r=>r.runner===e),a=n?.models.find(r=>r.isDefault===!0)??n?.models[0];return{runner:e,modelId:a?.id??"",effort:Ya(a),access:n?.accessOptions[0]?.id??""}}function Ya(e){return(e?.defaultEffort!==void 0&&e.defaultEffort.length>0&&(e.supportedEfforts.length===0||e.supportedEfforts.includes(e.defaultEffort))?e.defaultEffort:void 0)??e?.supportedEfforts.find(t=>t==="medium")??e?.supportedEfforts[0]??""}function cr(e,t){const n=t.find(r=>r.runner===e.runner),a=n?.models.find(r=>r.id===e.modelId);return a!==void 0&&(a.supportedEfforts.length===0?e.effort.length>0&&e.effort===a.defaultEffort:a.supportedEfforts.includes(e.effort))&&n?.accessOptions.some(r=>r.id===e.access)===!0}function Rm(e,t){return new Map((Array.isArray(e)?e:[]).filter(n=>cr(n,t)).map(n=>[n.runner,n]))}function Am(e){const t=x(!1),n=x(""),a=x(!1),r=x(""),s=x(),i=x(!1),l=x([]);let v=0;const u=j(()=>{const R=s.value;return R===void 0||n.value.length===0?!1:r.value.length>0?R.selectable&&n.value===ys(R.currentPath,r.value):n.value===R.currentPath?R.selectable:R.entries.some(b=>b.path===n.value&&b.selectable)});function d(R=!1){v+=1,n.value="",a.value=!1,r.value="",s.value=void 0,i.value=!1,l.value=R?["register"]:[]}async function w(R){const b=e.targetNodeId.value;if(b===void 0)return;const C=++v;i.value=!0,r.value="",n.value="";try{const I=new URLSearchParams({nodeId:b});R!==void 0&&I.set("path",R);const S=(await e.request(`/api/workspace-directories?${I.toString()}`)).directory;if(C!==v||e.targetNodeId.value!==b)return;s.value=S,n.value=""}catch(I){if(C!==v||e.targetNodeId.value!==b)return;e.error(c("generated.workspaceRegistrationService.unableToLoadAvailableDirectories",{value0:e.errorMessage(I)}),I)}finally{C===v&&(i.value=!1)}}function k(R){r.value="",n.value=R}function T(R){const b=s.value;b!==void 0&&(r.value=R,n.value=ys(b.currentPath,R))}function p(){r.value.length!==0&&(r.value="",n.value="")}async function g(R){const b=e.targetNodeId.value,C=n.value.trim();if(b===void 0||C.length===0)return;const I=s.value?.currentPath;if(!(r.value.length>0&&I===void 0)){t.value=!0;try{const S={nodeId:b,path:r.value.length>0?I:C,preserveGitConfig:a.value,...r.value.length>0?{createDirectoryName:r.value}:{}},A=(e.submit!==void 0?await e.submit(S,R):await e.request("/api/workspaces",{method:"POST",body:JSON.stringify(S)}))?.workspace?.id;if(typeof A!="string")throw new Error("WORKSPACE_REGISTER_RESPONSE_INVALID");if(e.targetNodeId.value!==b)return;d(),await e.onRegistered(b,A)}catch(S){e.error(Nm(e.errorMessage(S)),S)}finally{t.value=!1}}}return{loading:ct(t),path:n,preserveGitConfig:a,pendingDirectoryName:r,directory:s,loadingDirectory:i,openTools:l,selectedPathValid:u,reset:d,load:w,select:k,selectPendingDirectory:T,discardPendingDirectory:p,register:g}}function ys(e,t){const n=e.includes("\\")&&!e.includes("/")?"\\":"/";return`${e.replace(/[\\/]+$/u,"")}${n}${t}`}function Nm(e){return e==="WORKSPACE_DIRECTORY_EXISTS"?c("generated.workspaceRegistrationService.aDirectoryWithThisNameAlreadyExists"):e==="WORKSPACE_DIRECTORY_NAME_INVALID"?c("generated.workspaceRegistrationService.theDirectoryNameIsInvalidEnterA"):e==="WORKSPACE_DIRECTORY_NOT_ALLOWED"||e==="WORKSPACE_NOT_ALLOWED"?c("generated.workspaceRegistrationService.theSelectedDirectoryIsOutsideTheWorkspace"):c("generated.workspaceRegistrationService.unableToRegisterTheWorkspace",{value0:e})}function Dm(){const e=x([]);return{sessions:j(()=>e.value),replaceAll:t=>{e.value=[...t]},prepend:t=>{e.value=[t,...e.value]},replaceExisting:t=>{e.value=e.value.map(n=>n.id===t.id?t:n)},removeId:t=>{e.value=e.value.filter(n=>n.id!==t)},removeExact:t=>{e.value=e.value.filter(n=>n!==t)},removeWorkspace:t=>{e.value=e.value.filter(n=>n.workspaceId!==t)},retainSelectedInWorkspace:(t,n)=>{e.value=e.value.filter(a=>a.workspaceId!==t||a.id===n)},markManagedActive:t=>{e.value=e.value.map(n=>n.id===t.id&&n.workspaceId===t.workspaceId?{...n,activity:"MANAGED_ACTIVE"}:n)}}}function Pm(e){const t=Dm(),n=x(!1),a=x(new Map);let r=0;const s=x({MAIN:0,CHILD:0}),i=x(new Set),l=j(()=>{const J=e.workspaceTarget.value;if(!(J===void 0||e.groupingSupported?.()!==!0))return a.value.get(e.tabId(J.nodeId,J.workspaceId))??"MAIN"}),v=()=>l.value===void 0?"":`&sessionGroup=${l.value}`;function u(J,re=!1){const ge=e.workspaceTarget.value;if(ge===void 0||l.value===void 0&&!re)return;const ce=e.tabId(ge.nodeId,ge.workspaceId);(a.value.get(ce)??"MAIN")!==J&&(r+=1,a.value.set(ce,J))}const d=x(""),w=x([]),k=x(null),T=x(!1),p=x(!1),g=x(),R=new Map;let b,C,I=0,S,m=0;He(l,()=>{const J=e.workspaceTarget.value;if(J===void 0)return;const re=e.tabId(J.nodeId,J.workspaceId);R.set(re,(R.get(re)??0)+1),b=void 0,C=void 0,m+=1,e.paging.loadingMore.value=!1,e.paging.reset(re),e.paging.nextCursors.value.set(re,null),t.retainSelectedInWorkspace(J.workspaceId,e.selectedSessionId.value),i.value=new Set;const ge=d.value;N(),ge&&V(ge)},{flush:"sync"});function A(J,re){let ge=re;return re.commandStates===void 0&&J?.commandStates!==void 0&&(ge={...ge,commandStates:J.commandStates}),re.runtime===void 0&&J?.runtime!==void 0&&(ge={...ge,runtime:J.runtime}),ge}const L=t.markManagedActive,y=t.replaceAll;function D(J,re){const ge=A(J,re),ce=e.runs.value.some(oe=>["STARTING","RUNNING","CANCELLING"].includes(oe.status)&&(oe.sessionId===J?.id||oe.sessionId===re.id));return J?.activity!=="MANAGED_ACTIVE"||re.activity==="MANAGED_ACTIVE"||!ce?ge:{...ge,activity:J.activity,...J.control===void 0?{}:{control:J.control},...J.runtime===void 0?{}:{runtime:J.runtime}}}function E(J){return J.nativeControl==="MAR_MANAGED"||J.control?.level==="MANAGED"}function H(J,re){if(J.workspaceId!==re.workspaceId||J.runner!==re.runner)return!1;if(J.id===re.id)return!0;const ge=J.externalSessionId,ce=re.externalSessionId;return typeof ge=="string"&&ge.length>0&&ge===ce}function X(J,re,ge=!1){const ce=ge?re:D(J,re);return J!==void 0&&JSON.stringify(J)===JSON.stringify(ce)?J:ce}function Y(J,re={}){const ge=t.sessions.value,ce=new Map(ge.map(G=>[G.id,G])),oe=ge.map(G=>G.id);for(const G of J){const ue=ce.get(G.id),ne=[...ce.values()].filter(ee=>H(ee,G)),M=ne.find(E);if(M!==void 0&&!E(G)){for(const ee of ne)ee.id!==M.id&&ce.delete(ee.id);continue}for(const ee of ne)if(ee.id!==G.id){ce.delete(ee.id);const le=oe.indexOf(ee.id);le>=0&&(oe[le]=G.id)}ce.set(G.id,X(ue,G,re.authoritativeActivity===!0)),oe.includes(G.id)||oe.push(G.id),ne.some(ee=>ee.id===e.selectedSessionId.value)&&e.setSelectedSessionId(G.id)}let P;if(re.authoritativeOrder===!0){const G=new Set(J.map(ue=>ue.id));P=[...J.flatMap(ue=>{const ne=ce.get(ue.id);return ne===void 0?[]:[ne]}),...oe.filter(ue=>!G.has(ue)).flatMap(ue=>{const ne=ce.get(ue);return ne===void 0?[]:[ne]})]}else P=oe.flatMap(G=>{const ue=ce.get(G);return ue===void 0?[]:[ue]});P.length===ge.length&&P.every((G,ue)=>G===ge[ue])||t.replaceAll(P)}function U(J,re,ge){ge.runningCounts!==void 0&&(s.value=ge.runningCounts);const ce=e.tabId(J,re),oe=(R.get(ce)??0)+1;R.set(ce,oe),b={id:ce,generation:oe,page:ge};const P=i.value.size,G=e.workspaceTarget.value,ue=G?.nodeId===J&&G.workspaceId===re;C=void 0,ue&&(m+=1,e.paging.loadingMore.value=!1),e.paging.initialize(ce),e.paging.nextCursors.value.set(ce,ge.nextCursor),e.paging.loadMoreErrors.value.delete(ce),ue&&P>ge.sessions.length&&ge.nextCursor!==null?(C={id:ce,generation:oe,page:ge,workspace:G,visibleCount:P},Y(ge.sessions,{authoritativeActivity:!0}),Q()):(i.value=new Set(ge.sessions.map(ne=>ne.id)),Y(ge.sessions,{authoritativeOrder:!0,authoritativeActivity:!0})),ue&&d.value&&l.value!==void 0&&V(d.value)}async function Q(){const J=C;if(J===void 0)return;const re=++m,ge=()=>C===J&&R.get(J.id)===J.generation&&e.workspaceTarget.value===J.workspace,ce=new Set(J.page.sessions.map(P=>P.id));let oe=J.page.nextCursor;e.paging.loadingMore.value=!0,e.paging.loadMoreErrors.value.delete(J.id);try{for(;ce.size<J.visibleCount&&oe!==null;){const G=new Map(t.sessions.value.map(M=>[M.id,M])),ue=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(J.workspace.nodeId)}&workspaceId=${encodeURIComponent(J.workspace.workspaceId)}&limit=${Math.min(e.pageSize,J.visibleCount-ce.size)}${v()}&cursor=${encodeURIComponent(oe)}`);if(!ge())return;if(ue.nextCursor===oe)throw new Error("SESSION_PAGINATION_NO_PROGRESS");const ne=new Map(t.sessions.value.map(M=>[M.id,M]));Y(ue.sessions.filter(M=>ne.get(M.id)===G.get(M.id)));for(const M of ue.sessions)ce.add(M.id);oe=ue.nextCursor}if(!ge())return;const P=new Map(t.sessions.value.map(G=>[G.id,G]));i.value=ce,Y([...ce].flatMap(G=>{const ue=P.get(G);return ue===void 0?[]:[ue]}),{authoritativeOrder:!0}),e.paging.nextCursors.value.set(J.id,oe),C=void 0}catch(P){ge()&&e.paging.loadMoreErrors.value.set(J.id,P)}finally{re===m&&(e.paging.loadingMore.value=!1)}}async function $(){const J=e.workspaceTarget.value,re=J?.nodeId,ge=e.workspaceTarget.value?.workspaceId;if(re===void 0||ge===void 0||e.paging.loadingMore.value||n.value)return;const ce=e.tabId(re,ge);if(C?.id===ce)return Q();const oe=e.paging.nextCursors.value.get(ce);if(typeof oe!="string")return;const P=R.get(ce)??0,G=++m,ue=()=>(R.get(ce)??0)===P&&e.workspaceTarget.value===J&&e.workspaceTarget.value?.nodeId===re&&e.workspaceTarget.value?.workspaceId===ge;e.paging.loadingMore.value=!0,e.paging.loadMoreErrors.value.delete(ce);try{const ne=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(re)}&workspaceId=${encodeURIComponent(ge)}&limit=${e.pageSize}${v()}&cursor=${encodeURIComponent(oe)}`);if(!ue())return;if(ne.nextCursor===oe)throw new Error("SESSION_PAGINATION_NO_PROGRESS");Y(ne.sessions),i.value=new Set([...i.value,...ne.sessions.map(M=>M.id)]),e.paging.append(ce,ne.sessions.length,ne.nextCursor)}catch(ne){if(!ue())return;e.paging.loadMoreErrors.value.set(ce,ne)}finally{G===m&&(e.paging.loadingMore.value=!1)}}async function V(J){const re=e.workspaceTarget.value,ge=re?.nodeId,ce=e.workspaceTarget.value?.workspaceId,oe=J.trim().slice(0,160),P=++I,G=oe===d.value&&S?.workspace===re&&S?.group===l.value;if(S={workspace:re,group:l.value},d.value=oe,G||(w.value=[],k.value=null),p.value=!1,g.value=void 0,T.value=!1,!(ge===void 0||ce===void 0||oe.length===0)){T.value=!0;try{const ue=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(ge)}&workspaceId=${encodeURIComponent(ce)}&limit=${e.pageSize}${v()}&query=${encodeURIComponent(oe)}`);if(P!==I||e.workspaceTarget.value!==re||e.workspaceTarget.value?.nodeId!==ge||e.workspaceTarget.value?.workspaceId!==ce)return;w.value=ue.sessions,k.value=ue.nextCursor,ue.runningCounts!==void 0&&(s.value=ue.runningCounts)}catch(ue){P===I&&e.notice(e.errorMessage(ue),"error",ue)}finally{P===I&&(T.value=!1)}}}function N(){I+=1,S=void 0,d.value="",w.value=[],k.value=null,T.value=!1,p.value=!1,g.value=void 0}He(e.workspaceTarget,()=>{N(),C=void 0,i.value=new Set,s.value={MAIN:0,CHILD:0},m+=1,e.paging.loadingMore.value=!1});async function h(){const J=e.workspaceTarget.value,re=J?.nodeId,ge=e.workspaceTarget.value?.workspaceId,ce=d.value,oe=k.value;if(re===void 0||ge===void 0||ce.length===0||oe===null||p.value||T.value)return;const P=I,G=()=>P===I&&e.workspaceTarget.value===J&&e.workspaceTarget.value?.nodeId===re&&e.workspaceTarget.value?.workspaceId===ge;p.value=!0,g.value=void 0;try{const ue=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(re)}&workspaceId=${encodeURIComponent(ge)}&limit=${e.pageSize}${v()}&cursor=${encodeURIComponent(oe)}&query=${encodeURIComponent(ce)}`);if(!G())return;if(ue.nextCursor===oe)throw new Error("SESSION_PAGINATION_NO_PROGRESS");const ne=new Map(w.value.map(M=>[M.id,M]));for(const M of ue.sessions)ne.set(M.id,M);w.value=[...ne.values()],k.value=ue.nextCursor}catch(ue){G()&&(g.value=ue)}finally{G()&&(p.value=!1)}}async function F(J,re=!1){const ge=e.workspaceTarget.value,ce=ge?.nodeId;if(ce===void 0)return;const oe=e.tabId(ce,J),P=(R.get(oe)??0)+1;R.set(oe,P),C?.id===oe&&(C={...C,generation:P}),m+=1,e.paging.loadingMore.value=!1;const G=()=>R.get(oe)===P&&e.workspaceTarget.value===ge&&e.workspaceTarget.value?.nodeId===ce&&e.workspaceTarget.value?.workspaceId===J,ue=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(ce)}&workspaceId=${encodeURIComponent(J)}&limit=${e.pageSize}${v()}`).catch(ne=>{if(G()){if(re)throw ne;e.notice(c("generated.workspaceSessionService.unableToSynchronizeSessions",{value0:e.errorMessage(ne)}),"error")}});if(!G()){const ne=b?.id===oe?b:void 0;return re&&ne!==void 0&&e.workspaceTarget.value===ge&&e.workspaceTarget.value?.nodeId===ce&&e.workspaceTarget.value?.workspaceId===J&&ne?.generation===R.get(oe)?ne.page:void 0}if(ue!==void 0&&(C=void 0,e.paging.reset(oe),i.value=new Set(ue.sessions.map(ne=>ne.id)),Y(ue.sessions,{authoritativeOrder:!0}),ue.runningCounts!==void 0&&(s.value=ue.runningCounts),e.paging.nextCursors.value.set(oe,ue.nextCursor)),re)return ue}async function z(){const J=e.workspaceTarget.value?.workspaceId;if(!(J===void 0||n.value)){n.value=!0;try{d.value?await V(d.value):await F(J)}finally{n.value=!1}}}function fe(J){const re=j(()=>(d.value.length>0?w.value:J.unfiltered.value).filter(P=>l.value===void 0||(P.sessionGroup??"MAIN")===l.value&&(d.value.length>0||i.value.has(P.id)))),ge=j(()=>d.value.length>0?k.value!==null:J.canLoadMore.value),ce=j(()=>d.value.length>0?p.value:e.paging.loadingMore.value),oe=j(()=>{if(d.value.length>0)return g.value;const P=e.workspaceTarget.value;return P===void 0?void 0:e.paging.loadMoreErrors.value.get(e.tabId(P.nodeId,P.workspaceId))});return{visible:re,canLoadMore:ge,loadingMore:ce,loadMoreError:oe,loadMore:()=>d.value.length>0?h():$()}}return{projection:t,currentGroup:l,createVisibleList:fe,selectGroup:u,groupSelectionRevision:()=>r,runningCounts:s,listedSessionIds:i,refreshing:n,searchQuery:d,searchResults:w,searchNextCursor:k,searching:T,loadingMoreSearchResults:p,loadMoreSearchResultsError:g,preserveManagedActive:D,markManagedActive:L,replaceSessions:y,merge:Y,applySnapshot:U,loadMore:$,search:V,clearSearch:N,loadMoreSearchResults:h,synchronize:F,refresh:z}}const Om=["nodes","conversations","settings","management"];function ec(e){const t=new URLSearchParams(e.search),n=u=>t.get(u)||void 0,a=n("node"),r=n("workspace"),s=n("session"),i=n("view"),l=n("conversation"),v=Om.find(u=>u===i);return{...a===void 0?{}:{nodeId:a},...r===void 0?{}:{workspaceId:r},...s===void 0?{}:{sessionId:s},...v===void 0?{}:{view:v},...v==="conversations"&&a!==void 0&&l!==void 0?{hostedConversation:{nodeId:a,conversationId:l}}:{}}}const Qa="mar.workbench.selection.v1";function Lm(e){let t=!1;const n=new Set;async function a(){const i=Wm();if(!e.isWorkbenchActive()||i===void 0||e.workspaceTarget.value!==void 0)return;if(!e.nodes.value.some(w=>w.id===i.workspace.nodeId)){t=!0,s();return}const l=e.activateWorkspace(i.workspace),v=e.workspaceTarget.value,u=e.currentSelectionRevision?.(),d=()=>v!==void 0&&e.workspaceTarget.value===v&&e.selectedSessionId.value===void 0&&e.currentSelectionRevision?.()===u;n.add(d);try{await l&&d()&&await r(i.workspace.workspaceId,i.sessionId)}finally{n.delete(d),s()}}async function r(i,l){const v=e.workspaceTarget.value;if(v===void 0)return;const u=v.nodeId,d=()=>e.nodes.value.some(p=>p.id===u&&p.connected===!1),w=e.selectedSessionId.value,k=e.currentSelectionRevision?.(),T=()=>e.workspaceTarget.value===v&&v.workspaceId===i&&e.selectedSessionId.value===w&&e.currentSelectionRevision?.()===k;n.add(T);try{if(d()){T()&&l!==void 0&&e.setSelectedSessionId(l);return}let p;if(l!==void 0){try{p=await e.lookupSession(u,l)}catch(g){if(!["SESSION_NOT_FOUND","FORBIDDEN","REQUEST_FAILED_404","REQUEST_FAILED_403"].includes(gt(g)??""))throw g}if(!T())return;p?.workspaceId!==i&&(p=void 0)}if(p===void 0){const g=await e.synchronizeSessions(i);if(!T()||g===void 0)return;p=g.find(R=>R.workspaceId===i&&R.id!==l)}p===void 0?e.openDraft():await e.openSession(p.id)}catch(p){T()&&(l!==void 0&&e.setSelectedSessionId(l),(gt(p)!=="NODE_OFFLINE"||!d())&&e.notice(p))}finally{n.delete(T),s()}}function s(){if([...n].some(d=>d()))return;const i=e.workspaceTarget.value;if(!t&&i===void 0)return;t=!0;const l=e.selectedSessionId.value,v=e.sessions.value.find(d=>d.id===l),u=l?.startsWith("draft:")||v!==void 0&&!En(v)?void 0:l;try{if(i===void 0){localStorage.removeItem(Qa);return}localStorage.setItem(Qa,JSON.stringify({workspace:i,...u===void 0?{}:{sessionId:u}})),e.rememberSession?.(i.nodeId,i.workspaceId,u)}catch{}}return{restore:a,restoreSession:r,persist:s}}function Wm(){try{const e=JSON.parse(localStorage.getItem(Qa)??"null");if(Mm(e))return e;e!==null&&localStorage.removeItem(Qa);return}catch{return}}function Mm(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.workspace?.nodeId=="string"&&t.workspace.nodeId.length>0&&typeof t.workspace.workspaceId=="string"&&t.workspace.workspaceId.length>0&&(t.sessionId===void 0||typeof t.sessionId=="string"&&t.sessionId.length>0)}function xm(e){const{restore:t,restoreSession:n,persist:a}=Lm({...e,isWorkbenchActive:()=>e.view.value==="nodes"}),r=ec(window.location).hostedConversation;function s(){a();const i=new URL(window.location.href);if(e.view.value==="nodes"){i.searchParams.delete("view"),i.searchParams.delete("management"),i.searchParams.delete("skill"),i.searchParams.delete("node"),i.searchParams.delete("conversation"),window.history.replaceState(window.history.state,"",`${i.pathname}${i.search}${i.hash}`),tr();return}if(i.searchParams.set("view",e.view.value),e.view.value==="management"?i.searchParams.set("management",e.managementSection.value):i.searchParams.delete("management"),i.searchParams.delete("skill"),e.view.value==="conversations"){const l=e.selectedHostedNodeId?.value,v=e.selectedHostedConversationId?.value;l!==void 0&&v!==void 0?(i.searchParams.set("node",l),i.searchParams.set("conversation",v)):(i.searchParams.delete("node"),i.searchParams.delete("conversation"))}else i.searchParams.delete("node"),i.searchParams.delete("conversation");window.history.replaceState(window.history.state,"",`${i.pathname}${i.search}${i.hash}`),tr()}return{restore:t,restoreSession:n,sync:s,hostedConversationRoute:r}}function $m(e){return Cl({isOpen:e.isOpen,close:()=>{e.close(),e.syncRoute()}})}function Fm(e){const t=x(!1);async function n(d){let w;try{w=(await Nt.prompt(c("generated.workbenchEntityService.leaveBlankToDisplayTheRegisteredAddress"),c("generated.workbenchEntityService.renameNode"),{closeIcon:qe("close"),inputValue:d.displayName??"",inputPlaceholder:d.registeredAddress||c("generated.workbenchEntityService.nodeName"),inputValidator:k=>k.length<=80||c("generated.workbenchEntityService.nodeNameCannotExceed80Characters"),confirmButtonText:c("generated.workbenchEntityService.save"),cancelButtonText:c("generated.workbenchEntityService.cancel")})).value}catch{return}t.value=!0;try{const k=()=>e.request(`/api/nodes/${encodeURIComponent(d.id)}`,{method:"PATCH",body:JSON.stringify({displayName:w.trim()===""?null:w.trim()})});let T;try{T=await k()}catch(p){if(gt(p)!=="CSRF_INVALID")throw p;await e.renewCsrfToken(),T=await k()}return T.node}catch(k){e.notice(c("generated.workbenchEntityService.unableToUpdateTheNodeName",{value0:e.errorMessage(k)}),"error",k)}finally{t.value=!1}}async function a(d){const w=e.workspaceTarget.value?.nodeId;if(w===void 0)return;const k=d.customTitle??d.runnerTitle??"";let T;try{T=(await Nt.prompt(c("generated.workbenchEntityService.enterANonEmptySessionName"),c("generated.workbenchEntityService.renameSession"),{closeIcon:qe("close"),inputValue:k,inputPlaceholder:d.runnerTitle??c("generated.workbenchEntityService.sessionName"),inputValidator:p=>{const g=p.trim().length;return g===0?c("generated.workbenchEntityService.sessionNameCannotBeEmpty"):g<=160||c("generated.workbenchEntityService.sessionNameCannotExceed160Characters")},confirmButtonText:c("generated.workbenchEntityService.save2"),cancelButtonText:c("generated.workbenchEntityService.cancel2")})).value}catch{return}t.value=!0;try{return(await e.request(`/api/agent-sessions/${e.sessionPathId(d.id)}/metadata`,{method:"PATCH",body:JSON.stringify({nodeId:w,customTitle:T.trim()})})).session}catch(p){e.notice(c("generated.workbenchEntityService.unableToUpdateTheSessionName",{value0:e.errorMessage(p)}),"error",p)}finally{t.value=!1}}const r=new Set;async function s(d){const w=e.workspaceTarget.value;if(!(w===void 0||d.sessionGroup!=="CHILD"||r.has(d.id))){r.add(d.id);try{try{await Nt.confirm(c("sessionGroups.description"),c("sessionGroups.move"),{closeIcon:qe("close"),confirmButtonText:c("sessionGroups.confirm"),cancelButtonText:c("sessionGroups.cancel")})}catch{return}if(e.workspaceTarget.value!==w)return;t.value=!0;const k=await e.request(`/api/agent-sessions/${e.sessionPathId(d.id)}/metadata`,{method:"PATCH",body:JSON.stringify({nodeId:w.nodeId,clearParent:!0})});return e.workspaceTarget.value!==w?void 0:(e.notice(c("sessionGroups.moved"),"success"),k.session)}catch(k){e.notice(c("sessionGroups.failed",{reason:e.errorMessage(k)}),"error",k)}finally{r.delete(d.id),t.value=!1}}}async function i(d,w){const k=e.workspaceTarget.value?.nodeId;if(k===void 0)return!1;t.value=!0;try{return await e.request(`/api/agent-sessions/${e.sessionPathId(d.id)}/metadata`,{method:"PATCH",body:JSON.stringify({nodeId:k,pinned:w})}),!0}catch(T){return e.notice(c(w?"common.unableToPinSession":"common.unableToUnpinSession",{reason:e.errorMessage(T)}),"error",T),!1}finally{t.value=!1}}async function l(d,w,k){const T=e.workspaceTarget.value?.nodeId;if(T===void 0)return!1;t.value=!0;try{return await e.request(`/api/agent-sessions/${e.sessionPathId(d.id)}/pin-order`,{method:"PATCH",body:JSON.stringify({nodeId:T,direction:w,...k===void 0?{}:{targetSessionId:k.sessionId,position:k.position}})}),!0}catch(p){return e.notice(c("generated.workbenchEntityService.unableToMoveThePinnedSession",{value0:e.errorMessage(p)}),"error",p),!1}finally{t.value=!1}}async function v(d){const w=e.workspaceTarget.value?.nodeId;if(w===void 0||e.canDeleteSession?.(d)===!1)return!1;try{await Nt.confirm(c("generated.workbenchEntityService.thisPermanentlyDeletesTheNativeSessionAnd",{value0:$n(d.runner),value1:e.sessionTitle(d)}),c("generated.workbenchEntityService.deleteSession"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("generated.workbenchEntityService.deleteSession2"),cancelButtonText:c("generated.workbenchEntityService.cancel3"),confirmButtonClass:"el-button--danger"})}catch{return!1}if(e.workspaceTarget.value?.nodeId!==w||e.canDeleteSession?.(d)===!1)return!1;const k=e.beginSubmission?.(`session:${d.id}`);if(e.beginSubmission!==void 0&&k===void 0)return!1;t.value=!0;try{return await e.request(`/api/agent-sessions/${e.sessionPathId(d.id)}?nodeId=${encodeURIComponent(w)}`,{method:"DELETE"}),e.notice(c("generated.workbenchEntityService.theNativeSessionWasDeleted"),"success"),!0}catch(T){return e.notice(c("generated.workbenchEntityService.unableToDeleteTheSession",{value0:e.errorMessage(T)}),"error",T),!1}finally{k?.(),t.value=!1}}async function u(d){try{await Nt.confirm(c("generated.workbenchEntityService.deletingDisconnectsItAndRemovesItsServer",{value0:e.nodeLabel(d)}),c("generated.workbenchEntityService.deleteNode"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("generated.workbenchEntityService.deleteNode2"),cancelButtonText:c("generated.workbenchEntityService.cancel4"),confirmButtonClass:"el-button--danger"})}catch{return!1}t.value=!0;try{const w=()=>e.request(`/api/nodes/${encodeURIComponent(d.id)}`,{method:"DELETE"});try{await w()}catch(k){if(gt(k)!=="CSRF_INVALID")throw k;await e.renewCsrfToken(),await w()}return e.notice(c("generated.workbenchEntityService.nodeDeletedCreateANewRegistrationToken"),"success"),!0}catch(w){return e.notice(c("generated.workbenchEntityService.unableToDeleteTheNode",{value0:e.errorMessage(w)}),"error",w),!1}finally{t.value=!1}}return{loading:ct(t),renameNode:n,renameSession:a,moveSessionToMain:s,setSessionPinned:i,movePinnedSession:l,deleteSession:v,deleteNode:u}}function Um(e){if(e===null)return null;if(typeof e!="object"||Array.isArray(e)||e===void 0)return;const t=e;if(!(typeof t.attemptId!="string"||typeof t.targetVersion!="string"||!["WAITING_FOR_RUNS","UPGRADING","SUCCEEDED","FAILED"].includes(String(t.state))||typeof t.installed!="boolean"||typeof t.targetOnline!="boolean"||typeof t.createdAt!="number"||typeof t.updatedAt!="number"))return e}const Ln="mar.workspace-upload-tasks",Vm=512*1024,qm=2,Pa=new Map;function ws(e,t){if(typeof e!="object"||e===null)return!1;const n=e;return JSON.stringify(n.status==="INTERRUPTED"?{...n,status:t.status}:n)===JSON.stringify(t)}function Hm(e){return Array.isArray(e)?e.flatMap(t=>typeof t!="object"||t===null||typeof t.id!="string"||typeof t.nodeId!="string"||typeof t.workspaceId!="string"||typeof t.directory!="string"||typeof t.name!="string"||!Number.isSafeInteger(t.size)||t.size<0||typeof t.overwrite!="boolean"||!Number.isSafeInteger(t.receivedBytes)||t.receivedBytes<0||t.receivedBytes>t.size||t.uploadId!==void 0&&typeof t.uploadId!="string"||t.directCleanupPending!==void 0&&typeof t.directCleanupPending!="boolean"||t.cleanupUnconfirmed!==void 0&&typeof t.cleanupUnconfirmed!="boolean"?[]:[{id:t.id,nodeId:t.nodeId,workspaceId:t.workspaceId,directory:t.directory,name:t.name,size:t.size,overwrite:t.overwrite,...typeof t.uploadId=="string"?{uploadId:t.uploadId}:{},receivedBytes:t.receivedBytes,status:"INTERRUPTED",...typeof t.error=="string"?{error:t.error}:{},cancelled:!1,directCleanupPending:t.directCleanupPending===!0||t.directCleanupPending===void 0&&t.uploadId===void 0,cleanupUnconfirmed:t.cleanupUnconfirmed===!0}]):[]}function Bm(e){const t=x([]),n=x(),a=x(),r=new Map,s=new Map,i=new Map,l=new Set,v=new Map,u=crypto.randomUUID(),d=new Map,w={receive:C};let k=!1;const T=j(()=>t.value.filter(h=>h.status==="QUEUED"||h.status==="UPLOADING").length),p=j(()=>{const h=t.value.reduce((F,z)=>F+z.size,0);return h===0?t.value.length===0?0:100:Math.min(100,Math.round(t.value.reduce((F,z)=>F+Math.min(z.receivedBytes,z.size),0)/h*100))});function g(h){return{recoveryOwner:d.get(h.id)??u,id:h.id,nodeId:h.nodeId,workspaceId:h.workspaceId,directory:h.directory,name:h.name,size:h.size,overwrite:h.overwrite,...h.uploadId===void 0?{}:{uploadId:h.uploadId},receivedBytes:h.receivedBytes,directCleanupPending:h.directCleanupPending===!0,cleanupUnconfirmed:h.cleanupUnconfirmed===!0,status:h.status,...h.error===void 0?{}:{error:h.error}}}function R(){const h=t.value.flatMap(F=>["QUEUED","UPLOADING","FAILED","INTERRUPTED"].includes(F.status)?[g(F)]:[]);try{h.length===0?window.sessionStorage.removeItem(Ln):window.sessionStorage.setItem(Ln,JSON.stringify(h))}catch{}return h}function b(h){const F=v.get(h.id);if(!k||F===void 0)return;v.delete(h.id);const z=Pa.get(h.id);if(z!==void 0){z.receive(F,h);return}try{const fe=JSON.parse(window.sessionStorage.getItem(Ln)??"[]");if(!Array.isArray(fe))return;const J=fe.findIndex(re=>ws(re,F));if(J===-1)return;fe[J]={...fe[J],uploadId:h.uploadId,receivedBytes:h.receivedBytes,status:"FAILED",cleanupUnconfirmed:!0,error:h.error},window.sessionStorage.setItem(Ln,JSON.stringify(fe))}catch{}}function C(h,F){if(k)return;const z=t.value.find(fe=>fe.id===h.id);z?.status!=="INTERRUPTED"||!ws(g(z),h)||(Object.assign(z,{uploadId:F.uploadId,receivedBytes:F.receivedBytes,cleanupUnconfirmed:!0,error:F.error}),R())}function I(){for(const h of d.keys())Pa.get(h)===w&&Pa.delete(h)}function S(h){d.set(h.id,crypto.randomUUID())}function m(){if(!k){I(),d.clear();try{const h=JSON.parse(window.sessionStorage.getItem(Ln)??"[]");t.value=Hm(h);for(const F of t.value){const z=Array.isArray(h)?h.find(fe=>fe?.id===F.id):void 0;d.set(F.id,typeof z?.recoveryOwner=="string"?z.recoveryOwner:u),Pa.set(F.id,w)}R()}catch{window.sessionStorage.removeItem(Ln)}}}function A(h){k||!t.value.some(F=>F.id===h.id)||e.onTaskChanged?.(h)}function L(h){return h.status==="UPLOADING"?h.transport==="DIRECT"?c("generated.workspaceUploadService.uploadingDirect"):h.transport==="SERVER"&&h.directFallback===!0?c("generated.workspaceUploadService.uploadingServerFallback"):h.transport==="SERVER"?c("generated.workspaceUploadService.uploadingServer"):c("generated.workspaceUploadService.uploading"):h.status==="QUEUED"?c("generated.workspaceUploadService.queued"):h.status==="COMPLETED"?c("generated.workspaceUploadService.completed"):h.status==="CANCELLED"?c("generated.workspaceUploadService.canceled"):h.status==="INTERRUPTED"?c("generated.workspaceUploadService.interrupted"):c("generated.workspaceUploadService.failed")}function y(h){if(k)return;const F=e.workspaceTarget.value?.nodeId,z=e.workspaceTarget.value?.workspaceId;if(!(F===void 0||z===void 0)){t.value.push(...h.map(fe=>({...fe,id:crypto.randomUUID(),nodeId:F,workspaceId:z,name:fe.file.name,size:fe.file.size,receivedBytes:0,status:"QUEUED",cancelled:!1})));for(const fe of t.value.slice(-h.length))A(fe);D()}}async function D(){for(;!k&&t.value.filter(h=>h.status==="UPLOADING").length<qm;){const h=t.value.find(F=>F.status==="QUEUED");if(h===void 0)return;h.status="UPLOADING",A(h),E(h).finally(()=>{D()})}}async function E(h){try{if(h.file===void 0)throw new Error("UPLOAD_SOURCE_REQUIRED");const F=e.direct?.generation(h.nodeId),z=h.directCleanupPending===!0;if(z&&h.uploadId===void 0&&F===void 0)throw new Error("DIRECT_UNAVAILABLE");if(h.uploadId===void 0&&F!==void 0){const J=new AbortController;s.set(h.id,J);let re=!1;try{h.transport="DIRECT",A(h);const ge=h.directory==="."||h.directory===""?h.name:`${h.directory.replace(/\/+$/u,"")}/${h.name}`,ce=await Kf(h.file);if(k||h.cancelled)throw new Error("UPLOAD_CANCELLED");if(re=!0,h.directCleanupPending=!0,await e.direct.upload({nodeId:h.nodeId,nodeGeneration:F,descriptor:{direction:"UPLOAD",resource:{kind:"WORKSPACE_FILE",workspaceId:h.workspaceId,path:ge},fileName:h.name,size:h.size,sha256:ce,overwrite:h.overwrite},file:h.file,onProgress:oe=>{h.receivedBytes=oe},signal:J.signal}),h.cancelled)throw new Error("UPLOAD_CANCELLED");h.directCleanupPending=!1,h.cleanupUnconfirmed=!1,h.receivedBytes=h.size,h.status="COMPLETED",k||e.onFilesChanged(),A(h);return}catch(ge){const ce=gt(ge);if(k||h.cancelled||ce==="UPLOAD_CANCELLED"||z||re&&ce!=="DIRECT_UNAVAILABLE"&&ce!=="DIRECT_TRANSFER_INVALID"&&ce!=="DIRECT_TRANSFER_UNAVAILABLE"&&ce!=="DIRECT_PREPARE_TIMEOUT"&&ce!=="DIRECT_SESSION_LIMIT_REACHED"&&ce!=="DIRECT_TRANSFER_GRANT_INVALID")throw ge;h.receivedBytes=0,h.directCleanupPending=!1,h.transport="SERVER",h.directFallback=!0,A(h)}finally{s.delete(h.id)}}if(k||h.cancelled)return;if(h.transport="SERVER",h.uploadId!==void 0)try{const J=await e.request(`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads/${encodeURIComponent(h.uploadId)}?nodeId=${encodeURIComponent(h.nodeId)}`);if(J.upload.size!==h.size)throw new Error("UPLOAD_SOURCE_MISMATCH");h.receivedBytes=J.upload.receivedBytes}catch(J){if(gt(J)!=="UPLOAD_NOT_FOUND")throw J;delete h.uploadId,h.receivedBytes=0}if(k||h.cancelled)return;if(h.uploadId===void 0){const J=await e.request(`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads`,{method:"POST",body:JSON.stringify({nodeId:h.nodeId,directory:h.directory,name:h.name,size:h.size,overwrite:h.overwrite})});if(h.uploadId=J.upload.uploadId,h.receivedBytes=J.upload.receivedBytes,k||h.cancelled){await X(h);return}}for(;h.receivedBytes<h.size;){if(k||h.cancelled)throw new Error("UPLOAD_CANCELLED");const J=h.receivedBytes,re=h.file.slice(J,Math.min(h.size,J+Vm)),ge=await H(h,J,re);h.receivedBytes=ge.receivedBytes}if(k||h.cancelled)throw new Error("UPLOAD_CANCELLED");l.add(h.id);const fe=await e.request(`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads/${encodeURIComponent(h.uploadId)}/complete`,{method:"POST",body:JSON.stringify({nodeId:h.nodeId})});h.receivedBytes=fe.upload.receivedBytes,h.status="COMPLETED",k||e.onFilesChanged(),A(h)}catch(F){if(h.cancelled||gt(F)==="UPLOAD_CANCELLED"){h.status=h.directCleanupPending||h.cleanupUnconfirmed?"FAILED":"CANCELLED",h.directCleanupPending&&(h.cleanupUnconfirmed=!0),A(h);return}h.status=k?"INTERRUPTED":"FAILED",h.error=it(F),A(h)}finally{r.delete(h.id),s.delete(h.id),l.delete(h.id)}}async function H(h,F,z){let fe,J=!1;for(let re=0;re<3;re+=1){if(k||h.cancelled)throw new Error("UPLOAD_CANCELLED");try{return await new Promise((ge,ce)=>{const oe=new XMLHttpRequest;r.set(h.id,oe),oe.open("POST",`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads/${encodeURIComponent(h.uploadId??"")}/chunks?nodeId=${encodeURIComponent(h.nodeId)}&offset=${F}`),oe.withCredentials=!0,oe.setRequestHeader("content-type","application/octet-stream"),oe.setRequestHeader("x-csrf-token",e.csrfToken.value),oe.upload.onprogress=P=>{P.lengthComputable&&(h.receivedBytes=Math.min(h.size,F+P.loaded))},oe.onerror=()=>ce(new Error("UPLOAD_NETWORK_FAILED")),oe.onabort=()=>ce(new Error("UPLOAD_CANCELLED")),oe.onload=()=>{if(oe.status<200||oe.status>=300){let P;try{P=JSON.parse(oe.responseText).error?.code}catch{P=void 0}ce(new Error(P??`REQUEST_FAILED_${oe.status}`));return}try{const P=JSON.parse(oe.responseText);if(!Number.isSafeInteger(P.upload?.receivedBytes))throw new Error("NODE_RESPONSE_INVALID");ge({receivedBytes:P.upload?.receivedBytes})}catch(P){ce(P)}},oe.send(z)})}catch(ge){if(fe=ge,k||h.cancelled)throw ge;if(gt(ge)==="CSRF_INVALID"){if(J)throw ge;J=!0,await e.renewCsrfToken()}h.receivedBytes=F}}throw fe instanceof Error?fe:new Error("UPLOAD_CHUNK_FAILED")}async function X(h){const F=i.get(h.id);if(F!==void 0)return F;k||S(h);const z=Y(h);if(h.uploadId===void 0)return z;i.set(h.id,z);try{return await z}finally{i.delete(h.id)}}async function Y(h){if((h.status==="COMPLETED"||h.status==="CANCELLED")&&h.uploadId===void 0&&!h.directCleanupPending)return!0;if(h.cancelled=!0,s.get(h.id)?.abort(),r.get(h.id)?.abort(),h.uploadId!==void 0){try{await e.request(`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads/${encodeURIComponent(h.uploadId)}/cancel`,{method:"POST",body:JSON.stringify({nodeId:h.nodeId})})}catch(F){if(gt(F)!=="UPLOAD_NOT_FOUND")return h.cleanupUnconfirmed=!0,h.error=it(F),h.status="FAILED",b(h),A(h),!1}delete h.uploadId}return h.directCleanupPending?(h.cleanupUnconfirmed=!0,h.status="FAILED",A(h),!1):(h.cleanupUnconfirmed=!1,h.status="CANCELLED",A(h),!0)}async function U(h){if(!k&&!(h.status!=="FAILED"&&h.status!=="INTERRUPTED")){if(h.file===void 0){a.value=h.id,n.value?.click();return}h.uploadId!==void 0&&!await X(h)||k||(S(h),h.cancelled=!1,delete h.uploadId,h.receivedBytes=0,delete h.error,delete h.directFallback,delete h.transport,h.status="QUEUED",A(h),D())}}function Q(h){if(k)return;const F=h.target,z=F.files?.[0],fe=t.value.find(J=>J.id===a.value);if(F.value="",a.value=void 0,!(z===void 0||fe===void 0)){if(S(fe),z.name!==fe.name||z.size!==fe.size){fe.error=c("generated.workspaceUploadService.selectTheOriginalFileWithTheSame"),A(fe);return}fe.file=z,fe.cancelled=!1,delete fe.error,fe.status="QUEUED",A(fe),D()}}function $(h){X(h).catch(()=>{}),h.status="CANCELLED",A(h),t.value=t.value.filter(F=>F.id!==h.id)}function V(){if(!k){k=!0,N();for(const h of R())v.set(h.id,h);I();for(const h of t.value)h.status==="UPLOADING"&&h.uploadId!==void 0&&!l.has(h.id)&&X(h);for(const h of s.values())h.abort();s.clear();for(const h of r.values())h.abort();r.clear()}}const N=He(t,()=>{R()},{deep:!0});return{tasks:t,recoveryInput:n,activeCount:T,progress:p,restore:m,statusLabel:L,queue:y,cancel:X,retry:U,recover:Q,remove:$,dispose:V}}const Gm=30*6e4;function zm(e){const t=new Map,n=e.activeTtlMs??Gm,a=e.now??Date.now;let r,s;function i(T){const p=a();r!==void 0&&r!==T&&t.set(r,p+n),r=T,T!==void 0&&(t.set(T,p+n),e.activate(T)),w(p),k()}function l(T){return T===r||(t.get(T)??0)>a()}function v(){return w(a()),[...t.keys()].filter(l)}function u(T){t.delete(T),r===T&&(r=void 0),k()}function d(){s!==void 0&&clearTimeout(s),s=void 0;const T=new Set(t.keys());r!==void 0&&T.add(r),t.clear(),r=void 0;for(const p of T)e.release(p)}function w(T){for(const[p,g]of t)p===r||g>T||(t.delete(p),e.release(p))}function k(){s!==void 0&&clearTimeout(s),s=void 0;let T;for(const[p,g]of t)p!==r&&(T=T===void 0?g:Math.min(T,g));T!==void 0&&(s=setTimeout(()=>{s=void 0,w(a()),k()},Math.max(0,T-a())))}return{select:i,isActive:l,activeNodeIds:v,forget:u,clear:d}}class Cn extends Error{constructor(t){super(t),this.code=t}code}function Km(e){const t=new Map,n=new Map;function a(l){if(l.type==="terminal.direct.prepared"){const u=t.get(l.requestId);if(u===void 0){e.send({type:"terminal.direct.cancel",directSessionId:l.directSessionId});return}t.delete(l.requestId),u.resolve(l);return}if(l.type==="terminal.direct.error"){const u=t.get(l.requestId??"");u!==void 0&&(t.delete(l.requestId),u.reject(new Cn(l.code)));return}const v=n.get(l.directSessionId);v!==void 0&&(l.type==="terminal.direct.heartbeat"?v.lastHeartbeat=Date.now():r(l.directSessionId,v,l.code))}function r(l,v,u){v.stopped||(v.stopped=!0,n.delete(l),v.timer!==void 0&&clearInterval(v.timer),v.attachTimer!==void 0&&clearTimeout(v.attachTimer),v.channel.close(),e.send({type:"terminal.direct.cancel",directSessionId:l}),v.transport.release(),u!==void 0&&v.onDisconnected(u))}async function s(l){const v=e.acquire(l.nodeId);if(v===void 0)return;const u=crypto.randomUUID().replaceAll("-","");let d=()=>{},w;try{const k=await new Promise((R,b)=>{const C=setTimeout(()=>{t.delete(u),b(new Cn("TERMINAL_DIRECT_TIMEOUT"))},5e3),I=()=>{t.delete(u),b(new Cn("TERMINAL_DIRECT_CANCELLED"))};d=()=>{clearTimeout(C),l.signal.removeEventListener("abort",I)},l.signal.addEventListener("abort",I,{once:!0}),t.set(u,{transport:v,resolve:R,reject:b}),(l.signal.aborted||!e.send({type:"terminal.direct.prepare",requestId:u,nodeId:l.nodeId,nodeGeneration:v.nodeGeneration,transportSessionId:v.transportSessionId,terminalId:l.terminalId,...l.workspaceId===void 0?{}:{workspaceId:l.workspaceId},afterSequence:l.afterSequence,readonly:l.readonly}))&&I()});if(d(),w=k.directSessionId,l.signal.aborted)throw new Cn("TERMINAL_DIRECT_CANCELLED");const T=v.createChannel(`mar-terminal-${k.directSessionId}`),p={transport:v,channel:T,onFrame:l.onFrame,onAttached:l.onAttached,onDisconnected:l.onDisconnected,attached:!1,stopped:!1,lastHeartbeat:Date.now()};n.set(k.directSessionId,p);const g=R=>r(k.directSessionId,p,R);return T.addEventListener("open",()=>{p.stopped||T.send(JSON.stringify({type:"OPEN",directSessionId:k.directSessionId,grant:k.grant}))}),T.addEventListener("message",R=>{if(p.stopped||typeof R.data!="string"||R.data.length>128*1024){g("TERMINAL_FRAME_INVALID");return}let b;try{b=JSON.parse(R.data)}catch{g("TERMINAL_FRAME_INVALID");return}if(!p.attached){const I=nf.safeParse(b);if(!I.success||I.data.terminalId!==l.terminalId){g("TERMINAL_ATTACH_FAILED");return}p.attached=!0,p.attachTimer!==void 0&&clearTimeout(p.attachTimer),p.onAttached();return}const C=af.safeParse(b);if(!C.success||C.data.terminalId!==l.terminalId){g("TERMINAL_FRAME_INVALID");return}p.onFrame(C.data)}),T.addEventListener("close",()=>g("TERMINAL_DIRECT_CLOSED")),p.attachTimer=setTimeout(()=>g("TERMINAL_DIRECT_TIMEOUT"),15e3),p.timer=setInterval(()=>{(Date.now()-p.lastHeartbeat>3e4||!e.send({type:"terminal.direct.heartbeat",directSessionId:k.directSessionId}))&&g("TERMINAL_DIRECT_CONTROL_UNAVAILABLE")},1e4),l.signal.aborted?g():l.signal.addEventListener("abort",()=>g(),{once:!0}),{send(R){if(!(!p.attached||p.stopped||T.readyState!=="open")){if(T.bufferedAmount>1024*1024){g("TERMINAL_BACKPRESSURE");return}T.send(JSON.stringify(R))}},dispose:()=>g()}}catch(k){throw d(),w!==void 0&&e.send({type:"terminal.direct.cancel",directSessionId:w}),v.release(),k instanceof Cn?k:new Cn("TERMINAL_DIRECT_UNAVAILABLE")}}function i(){for(const[l,v]of t)t.delete(l),v.reject(new Cn("TERMINAL_DIRECT_CONTROL_UNAVAILABLE"));for(const[l,v]of n)r(l,v,"TERMINAL_DIRECT_CONTROL_UNAVAILABLE")}return{attach:s,handle:a,invalidate:i}}function jm(e){const t=x(0),n=()=>{t.value+=1},a=new Map,r=new Map;let s,i=!1;const l=jp({send:E=>s!==void 0&&!i&&e.sendDirect(E),onProbeResultChange:n,shouldRetryProbe:(E,H)=>d(E)&&a.get(E)?.generation===H}),v=Km({send:E=>s!==void 0&&!i&&e.sendTerminalDirect(E),acquire:E=>{const H=a.get(E);return!d(E)||H?.terminalDirect!==!0?void 0:l.acquireTerminalTransport(E,H.generation)}}),u=zm({activate:E=>{k(E)},release:E=>{r.delete(E),a.delete(E),l.releaseTransport(E),n()}});function d(E){return!i&&s!==void 0&&u.isActive(E)&&e.nodes().some(H=>H.id===E&&H.connected&&!H.disabled)}function w(E){r.delete(E),a.delete(E),l.invalidateNode(E),n()}function k(E,H=!1){if(!d(E))return Promise.resolve();const X=r.get(E);if(X!==void 0&&!H)return X;const Y=s,U=Promise.resolve().then(async()=>{if(r.get(E)!==U||s!==Y||!d(E))return;const Q=await e.discover(E).catch(()=>{});if(!(r.get(E)!==U||s!==Y||!d(E))){if(Q?.directTransfer?.apiVersion!==3||Q.directTransfer.transport!==!0||typeof Q.nodeGeneration!="string"){w(E);return}a.set(E,{generation:Q.nodeGeneration,terminalDirect:Q.terminalDirect?.apiVersion===1}),l.ensureTransport(E,Q.nodeGeneration),n()}}).finally(()=>{r.get(E)===U&&r.delete(E)});return r.set(E,U),U}async function T(){if(i)return;for(const X of new Set([...a.keys(),...r.keys(),...l.transportNodeIds()])){const Y=e.nodes().find(U=>U.id===X);(Y===void 0||!Y.connected||Y.disabled)&&w(X)}const E=s;if(E===void 0)return;const H=e.nodes().filter(X=>d(X.id)).map(X=>X.id);for(let X=0;X<H.length;X+=3){if(i||s!==E)return;await Promise.all(H.slice(X,X+3).map(Y=>k(Y)))}}function p(){s!==void 0&&(s=void 0,r.clear(),a.clear(),v.invalidate(),l.invalidateControlConnection(),n())}function g(E,H){i||(s!==void 0&&s.id!==E&&p(),s??={id:E},H||(s={id:E},r.clear(),a.clear(),v.invalidate(),l.invalidateNetwork(),n()),T())}function R(){p(),u.clear(),l.close()}function b(){i||(i=!0,m(),A(),R())}function C(E){const H=a.get(E);return s!==void 0&&!i&&H!==void 0&&l.isConnected(E,H.generation)}function I(E){const H=a.get(E);return H===void 0||!C(E)?void 0:l.networkInfo(E,H.generation)}const S=j(()=>e.nodes().map(E=>`${E.id}\0${E.connected?"1":"0"}\0${E.disabled?"1":"0"}\0${E.nodeAppVersion}`).join(`
3
+ `)),m=He(S,()=>{T()}),A=He(e.selectedNode,E=>{u.select(E)},{immediate:!0,flush:"sync"}),L=E=>(t.value,C(E)),y=E=>{if(!L(E))return;const H=I(E);if(H===void 0)return c("workspaceTabs.directAvailable");const X=c(`workspaceTabs.networkScope.${H.scope.toLowerCase()}`),Y=H.ipVersion==="UNKNOWN"?"":c(`workspaceTabs.ipVersion.${H.ipVersion.toLowerCase()}`),U=H.protocol==="UNKNOWN"?"":H.protocol,Q=H.interfaceType==="UNKNOWN"||H.scope==="VPN_TUN"&&H.interfaceType==="VPN"||H.scope==="LOOPBACK"&&H.interfaceType==="LOOPBACK"?"":c(`workspaceTabs.interfaceType.${H.interfaceType.toLowerCase()}`);return c("workspaceTabs.directAvailableWithNetwork",{network:[X,Y,U,Q].filter(Boolean).join(" ")})},D=j(()=>{t.value;const E=e.selectedNode();return E!==void 0&&I(E)?.scope==="LOOPBACK"});return{workspace:{upload:l.upload,download:l.download},terminal:{attach:v.attach},handleDirect:l.handle,handleTerminalDirect:v.handle,selectNode:E=>{i||u.select(E)},nodeInvalidated:w,refresh:k,reconcileNodes:T,connectionReady:g,connectionLost:p,reset:R,dispose:b,isConnected:C,networkInfo:I,workspaceDirectAvailable:L,workspaceDirectDescription:y,workspaceLocalFileManagerAvailable:D}}const _m=new Set(["STARTING","RUNNING","CANCELLING"]),Kn=1e4,Wn=1e3,Ym=5e3,ks=500,bs=30*6e4,Fo=16,Is="mar.web-performance.severe.v1",Qm=()=>({connectionState:"connecting",health:"idle",messagesPerSecond:0,peakMessagesPerSecond:0,kilobytesPerSecond:0,categories:{},activeRunSessions:0,processing:{averageMs:0,p95Ms:0,maxMs:0},longTasks:{available:!1,count:0,totalDurationMs:0},eventLoopDelayMs:0,domNodes:0,messageCards:0});function Jm(e={}){const t=e.now??(()=>performance.now()),n=x(Qm()),a=[],r=new Map,s=[],i=[],l=[],v=y(),u=v.longTasks,d=v.longAnimationFrames;let w={domNodes:0,messageCards:0,eventLoopDelayMs:0,longTasks:{count:0,totalDurationMs:0}},k="connecting",T,p,g,R,b,C=!1,I,S=0,m=0;function A(){return e.enabled?.()??!0}function L(){return e.context?.()??{}}function y(){const ne={longTasks:[],longAnimationFrames:[]};try{if(typeof sessionStorage>"u")return ne;const M=JSON.parse(sessionStorage.getItem(Is)??"null");if(typeof M!="object"||M===null)return ne;const ee=M,le=Ee=>Array.isArray(Ee)?Ee.filter(xe=>typeof xe=="object"&&xe!==null&&Number.isFinite(xe.capturedAt)&&Date.now()-xe.capturedAt<=bs&&typeof xe.value=="object"&&xe.value!==null).slice(-Fo):[];return{longTasks:le(ee.longTasks),longAnimationFrames:le(ee.longAnimationFrames)}}catch{return ne}}function D(){try{if(typeof sessionStorage>"u")return;sessionStorage.setItem(Is,JSON.stringify({longTasks:u,longAnimationFrames:d}))}catch{}}function E(ne,M){ne.push({capturedAt:Date.now(),value:M}),ne.length>Fo&&ne.splice(0,ne.length-Fo),D()}function H(ne){return ne.filter(M=>Date.now()-M.capturedAt<=bs).map(M=>M.value)}function X(ne){for(;a[0]!==void 0&&a[0].at<ne-Kn;)a.shift();for(;s[0]!==void 0&&s[0].at<ne-Kn;)s.shift();for(;i[0]!==void 0&&i[0].at<ne-Kn;)i.shift();for(;l[0]!==void 0&&l[0].at<ne-Kn;)l.shift()}function Y(ne,M){if(k!=="connected")return"idle";if(M<m)return"healthy";const ee=w.heap===void 0||w.heap.limitBytes<=0?0:w.heap.usedBytes/w.heap.limitBytes;return ne>=50||w.longTasks.totalDurationMs>=500||w.eventLoopDelayMs>=200||ee>=.85?"critical":ne>=16||w.longTasks.totalDurationMs>=100||w.eventLoopDelayMs>=50||ee>=.7?"warning":"healthy"}function U(){const ne=t();X(ne);const M=a.filter(ye=>ye.at>=ne-Wn),ee=a.map(ye=>ye.durationMs).sort((ye,Fe)=>ye-Fe),le=ee.reduce((ye,Fe)=>ye+Fe,0),Ee={};for(const ye of M)Ee[ye.category]=(Ee[ye.category]??0)+1;const xe=new Map;for(const ye of a){const Fe=Math.floor(ye.at/Wn);xe.set(Fe,(xe.get(Fe)??0)+1)}const Me=Math.max(0,Math.ceil(ee.length*.95)-1),Se=ee[Me]??0;n.value={connectionState:k,health:Y(Se,ne),messagesPerSecond:M.length,peakMessagesPerSecond:Math.max(0,...xe.values()),kilobytesPerSecond:M.reduce((ye,Fe)=>ye+Math.max(0,Fe.bytes),0)/1024,categories:Ee,activeRunSessions:new Set(r.values()).size,processing:{averageMs:ee.length===0?0:le/ee.length,p95Ms:Se,maxMs:ee.at(-1)??0},longTasks:{...w.longTasks,available:C},eventLoopDelayMs:w.eventLoopDelayMs,...p===void 0?{}:{pingLatencyMs:p},domNodes:w.domNodes,messageCards:w.messageCards,...w.heap===void 0?{}:{heap:w.heap},...T===void 0?{}:{lastMessageAt:T}}}function Q(ne){if(typeof ne!="object"||ne===null)return"other";const M=ne;if(M.type==="watch.event")return"watch";if(typeof M.type=="string"&&M.type.startsWith("notification."))return"notification";if(M.type!=="event"||typeof M.event!="object"||M.event===null)return"control";const ee=M.event.category;return typeof ee=="string"?ee:"other"}function $(ne){if(typeof ne!="object"||ne===null)return;const M=ne.event;if(typeof M!="object"||M===null)return;const ee=M;if(ee.category!=="run")return;const le=ee.payload;if(typeof le!="object"||le===null)return;const Ee=le.run;if(typeof Ee!="object"||Ee===null)return;const xe=Ee;typeof xe.id!="string"||typeof xe.sessionId!="string"||typeof xe.status!="string"||(_m.has(xe.status)?r.set(xe.id,xe.sessionId):r.delete(xe.id))}function V(ne){if(!A())return;const M=t();a.push({...ne,at:M,category:Q(ne.message),context:L()}),T=Date.now(),$(ne.message)}function N(ne){k=ne,ne!=="connected"&&(r.clear(),p=void 0),U()}function h(){r.clear(),U()}function F(ne){Number.isFinite(ne)&&(p=Math.max(0,ne),U())}function z(ne){w=ne,l.push({...ne,at:t(),context:L()}),U()}function fe(ne){const M=performance.memory,ee=t();X(ee),w={domNodes:document.getElementsByTagName("*").length,messageCards:document.querySelectorAll(".conversation-item").length,eventLoopDelayMs:Math.max(0,ne),longTasks:{count:s.length,totalDurationMs:s.reduce((le,Ee)=>le+Ee.durationMs,0)},...M===void 0?{}:{heap:{usedBytes:M.usedJSHeapSize,limitBytes:M.jsHeapSizeLimit}}},l.push({...w,at:ee,context:L()}),U()}function J(ne){const M=ne.attribution;return Array.isArray(M)?M.flatMap(ee=>{if(typeof ee!="object"||ee===null)return[];const le=ee,Ee=Ye=>typeof le[Ye]=="string"&&le[Ye]!==""?le[Ye]:void 0,xe=Ee("containerType"),Me=Ee("containerName"),Se=Ee("containerId"),ye=Ee("containerSrc");let Fe;if(ye!==void 0)try{const Ye=new URL(ye,typeof location>"u"?void 0:location.href);Fe=`${Ye.origin}${Ye.pathname}`}catch{Fe=void 0}return[{name:Ee("name")??"",entryType:Ee("entryType")??"",startTimeMs:typeof le.startTime=="number"?le.startTime:0,durationMs:typeof le.duration=="number"?le.duration:0,...xe===void 0?{}:{containerType:xe},...Me===void 0?{}:{containerName:Me},...Se===void 0?{}:{containerId:Se},...Fe===void 0?{}:{containerSrc:Fe}}]}):[]}function re(ne){const M=ne.target;if(typeof HTMLElement>"u"||!(M instanceof HTMLElement))return;const ee=M.id===""?"":`#${M.id}`,le=[...M.classList].slice(0,3).map(Ee=>`.${Ee}`).join("");return`${M.tagName.toLowerCase()}${ee}${le}`}function ge(){const ne=typeof navigator>"u"?void 0:navigator;return{performanceTimeOrigin:typeof performance>"u"?void 0:performance.timeOrigin,visibility:typeof document>"u"?void 0:document.visibilityState,pathname:typeof location>"u"?void 0:location.pathname,viewport:typeof window>"u"?void 0:{width:window.innerWidth,height:window.innerHeight,devicePixelRatio:window.devicePixelRatio},userAgent:ne?.userAgent,language:ne?.language,hardwareConcurrency:ne?.hardwareConcurrency}}function ce(ne){const M=i.map(({at:le,...Ee})=>({startTimeMs:le,...Ee})),ee=a.map(({at:le,bytes:Ee,durationMs:xe,category:Me,context:Se})=>({observedAtMs:le,bytes:Ee,durationMs:xe,category:Me,context:Se}));return{name:ne.name,startTimeMs:ne.at,endTimeMs:ne.at+ne.durationMs,occurredAt:new Date(performance.timeOrigin+ne.at).toISOString(),durationMs:ne.durationMs,context:ne.context,attribution:ne.attribution,relatedInteractions:M.filter(le=>le.startTimeMs<=ne.at+ne.durationMs+250&&le.startTimeMs+le.durationMs>=ne.at-250),relatedFrames:ee.filter(le=>le.observedAtMs>=ne.at-250&&le.observedAtMs<=ne.at+ne.durationMs+250)}}function oe(ne){const M=ne.scripts;return Array.isArray(M)?M.slice(0,8).map(ee=>{const le=typeof ee=="object"&&ee!==null?ee:{},Ee=Me=>typeof le[Me]=="string"?le[Me].slice(0,256):"";let xe="";try{const Me=new URL(Ee("sourceURL"),typeof location>"u"?void 0:location.href);xe=`${Me.origin}${Me.pathname}`}catch{}return{functionName:Ee("sourceFunctionName"),sourceURL:xe,sourceCharPosition:typeof le.sourceCharPosition=="number"?le.sourceCharPosition:0,durationMs:typeof le.duration=="number"?le.duration:0,invoker:Ee("invoker")}}):[]}function P(){const ne=t();X(ne);const M=a.map(({at:Ee,bytes:xe,durationMs:Me,category:Se,context:ye})=>({observedAtMs:Ee,bytes:xe,durationMs:Me,category:Se,context:ye})),ee=i.map(({at:Ee,...xe})=>({startTimeMs:Ee,...xe})),le=s.map(ce);return{schemaVersion:1,generatedAt:new Date().toISOString(),windowMs:Kn,context:L(),snapshot:n.value,longTasks:le,retainedLongTasks:H(u),longAnimationFrames:H(d),interactions:ee,frames:M,browserSamples:l.map(({at:Ee,...xe})=>({sampledAtMs:Ee,...xe})),activeRuns:[...r].map(([Ee,xe])=>({runId:Ee,sessionId:xe})),browser:ge()}}function G(){if(!(!A()||g!==void 0)){if(m=t()+Ym,S=t()+Wn,g=setInterval(()=>{const ne=t();if(document.hidden||!A()){S=ne+Wn;return}fe(ne-S),S=ne+Wn},Wn),typeof PerformanceObserver<"u"){try{PerformanceObserver.supportedEntryTypes?.includes("longtask")&&(R=new PerformanceObserver(ne=>{for(const M of ne.getEntries()){if(M.startTime<m)continue;const ee={at:M.startTime,durationMs:M.duration,name:M.name,context:L(),attribution:J(M)};s.push(ee),M.duration>=ks&&E(u,ce(ee))}}),R.observe({entryTypes:["longtask"]}),C=!0)}catch{R?.disconnect(),R=void 0}try{I=new PerformanceObserver(ne=>{for(const M of ne.getEntries()){const ee=M,le=re(M);i.push({at:M.startTime,name:M.name,durationMs:M.duration,...typeof ee.processingStart=="number"?{processingStartMs:ee.processingStart}:{},...typeof ee.processingEnd=="number"?{processingEndMs:ee.processingEnd}:{},...typeof ee.interactionId=="number"?{interactionId:ee.interactionId}:{},...le===void 0?{}:{target:le},context:L()})}}),I.observe({type:"event",buffered:!0,durationThreshold:16})}catch{I=void 0}try{PerformanceObserver.supportedEntryTypes?.includes("long-animation-frame")&&(b=new PerformanceObserver(ne=>{for(const M of ne.getEntries()){if(M.duration<ks)continue;const ee=M;E(d,{startTimeMs:M.startTime,endTimeMs:M.startTime+M.duration,occurredAt:new Date(performance.timeOrigin+M.startTime).toISOString(),durationMs:M.duration,blockingDurationMs:ee.blockingDuration??0,context:L(),scripts:oe(M)})}}),b.observe({type:"long-animation-frame"}))}catch{b=void 0}}fe(0)}}function ue(){g!==void 0&&clearInterval(g),g=void 0,R?.disconnect(),R=void 0,C=!1,b?.disconnect(),b=void 0,I?.disconnect(),I=void 0,a.length=0,r.clear(),s.length=0,i.length=0,l.length=0,w={domNodes:0,messageCards:0,eventLoopDelayMs:0,longTasks:{count:0,totalDurationMs:0}},T=void 0,p=void 0,U()}return{snapshot:n,observeFrame:V,setConnectionState:N,resetActiveRuns:h,setPingLatency:F,updateBrowserMetrics:z,detail:P,refresh:U,start:G,dispose:ue}}function tc(e,t){return[...e.filter(n=>n.pinned===!0),...e.filter(n=>n.pinned!==!0).slice(0,t)]}function Xm(e){const t=x([]);let n=0;const a=new Set;function r(C){t.value=tc(C,e.maxTabs),a.clear();for(const I of t.value)a.add(I.id);n=t.value.reduce((I,S)=>Math.max(I,S.lastActiveAt),0)}function s(C,I,S){const m=e.tabId(C,S.id);n=Math.max(Date.now(),n+1);const L=t.value.findIndex(E=>E.id===m),y=g(C,I,S,n);if(L>=0){const E=t.value[L],H=I===void 0?E?.nodeLabel:y.nodeLabel;t.value=t.value.map((X,Y)=>Y===L?{...X,...y,...H===void 0?{}:{nodeLabel:H}}:X),e.onChange();return}const D=[...t.value];i(D,e.maxTabs-1),t.value=[...D,y],e.onChange()}function i(C,I,S){for(;C.filter(m=>m.pinned!==!0).length>I;){const m=C.filter(L=>L.pinned!==!0&&L.id!==S);if(m.length===0)return;const A=m.reduce((L,y)=>y.lastActiveAt<L.lastActiveAt?y:L);e.onEvict(A),a.delete(A.id),C.splice(C.findIndex(L=>L.id===A.id),1)}}function l(C,I){const S=e.tabId(C.nodeId,C.workspaceId);if(t.value.some(A=>A.id===S)){k(S);return}const m=[...t.value];i(m,e.maxTabs-1),n=Math.max(Date.now(),n+1),t.value=[...m,{id:S,...C,...I===void 0?{}:{nodeLabel:e.nodeLabel(I)},label:C.workspaceId,lastActiveAt:n}],e.onChange()}function v(C,I){const S=t.value.find(L=>L.id===C);if(S===void 0||S.pinned===!0===I)return;const m=t.value.filter(L=>L.id!==C),A=m.filter(L=>L.pinned===!0).length;m.splice(A,0,{...S,pinned:I}),i(m,e.maxTabs,C),t.value=m,e.onChange()}function u(C){a.delete(C.id),t.value=t.value.filter(I=>I.id!==C.id),e.onChange()}function d(C,I){const S=t.value.findIndex(H=>H.id===C);if(S<0||t.value.length<2)return;const m=t.value.filter(H=>H.pinned===!0).length,A=Math.max(0,Math.min(I,t.value.length-1));if(S===A)return;const L=[...t.value],[y]=L.splice(S,1);if(y===void 0)return;const D=A<m,E=y.pinned===!0===D?y:{...y,pinned:D};L.splice(A,0,E),i(L,e.maxTabs,C),t.value=L,e.onChange()}function w(C){const I=t.value.filter(C);if(I.length!==0){t.value=t.value.filter(S=>!C(S));for(const S of I)a.delete(S.id),e.onEvict(S);e.onChange()}}function k(C){t.value.some(I=>I.id===C)&&(n=Math.max(Date.now(),n+1),t.value=t.value.map(I=>I.id===C?{...I,lastActiveAt:n}:I),e.onChange())}function T(C=new Set){return t.value.reduce((I,S)=>!C.has(S.id)&&(I===void 0||S.lastActiveAt>I.lastActiveAt)?S:I,void 0)}function p(C,I,S){const m=e.tabId(C,I);t.value.some(A=>A.id===m)&&(t.value=t.value.map(A=>A.id===m?{...A,label:S}:A),e.onChange())}function g(C,I,S,m){return{id:e.tabId(C,S.id),nodeId:C,...I===void 0?{}:{nodeLabel:e.nodeLabel(I)},workspaceId:S.id,label:e.workspaceLabel(S),lastActiveAt:m}}function R(C,I,S){const m=e.tabId(C,I),A=t.value.find(L=>L.id===m);A===void 0||A.selectedSessionId===S||(t.value=t.value.map(L=>{if(L.id!==m)return L;const y={...L};return delete y.selectedSessionId,S===void 0?y:{...y,selectedSessionId:S}}),e.onChange())}function b(C,I){const S=e.tabId(C,I),m=t.value.find(A=>A.id===S);if(a.delete(S)||m?.selectedSessionId!==void 0)return m}return{tabs:t,remember:s,rememberTarget:l,rememberSession:R,takeRestoredSelection:b,remove:u,move:d,setPinned:v,touch:k,mostRecentlyUsed:T,removeWhere:w,updateLabel:p,restore:r}}const Ss="mar.workbench.layout.v1",Cs="mar.workbench.tabs.v1",Uo="mar.workbench.panel-widths.v1",pn={sidebar:{min:220,max:420},compact:{min:275,max:600,defaultWidth:320},content:{min:480,max:960,defaultWidth:640}};function Vo(e,t){if(typeof t!="number"||!Number.isFinite(t))return;const{min:n,max:a}=pn[e];return Math.max(n,Math.min(a,Math.round(t)))}function Zm(e){const t=x({});function n(i,l){const v=Vo(i,l);if(!(v===void 0||t.value[i]===v)){t.value={...t.value,[i]:v};try{localStorage.setItem(Uo,JSON.stringify(t.value))}catch{}}}function a(i,l,v){const u=pn[i],d=l-v;if(!(!Number.isFinite(d)||d<u.min))return Math.min(t.value[i]??u.defaultWidth,u.max,d)}function r(){try{sessionStorage.setItem(Ss,JSON.stringify({sidebarCollapsed:e.sidebarCollapsed.value,expandedNodeIds:e.expandedNodeIds.value,nodeOrder:e.nodeOrder.value,workspaceOrderByNode:e.workspaceOrderByNode.value}))}catch{}try{localStorage.setItem(Cs,JSON.stringify(e.workspaceTabs.value))}catch{}}function s(){t.value={};try{const i=JSON.parse(localStorage.getItem(Uo)??"{}");if(typeof i=="object"&&i!==null&&!Array.isArray(i)){const l=i;for(const v of["sidebar","compact","content"]){const u=Vo(v,l[v]);u!==void 0&&(t.value[v]=u)}if(Object.prototype.hasOwnProperty.call(l,"inspector")){const v=Vo("compact",l.inspector);t.value.compact===void 0&&v!==void 0&&(t.value.compact=v),localStorage.setItem(Uo,JSON.stringify(t.value))}}}catch{}try{const i=JSON.parse(sessionStorage.getItem(Ss)??"{}");if(typeof i=="object"&&i!==null){const l=i;e.sidebarCollapsed.value=l.sidebarCollapsed===!0||l.sidebarCollapsed===void 0&&l.explorerCollapsed===!0,e.restoreTree(Array.isArray(l.expandedNodeIds)?l.expandedNodeIds.filter(v=>typeof v=="string"):[],l.workspaceOrderByNode??{},Array.isArray(l.nodeOrder)?l.nodeOrder.filter(v=>typeof v=="string"):[])}}catch{e.restoreTree([],{},[])}try{const i=JSON.parse(localStorage.getItem(Cs)??"[]");if(!Array.isArray(i))return;e.restoreTabs(tc(i.filter(eh),e.maxWorkspaceTabs))}catch{e.restoreTabs([])}}return{persist:r,restore:s,panelWidths:t,setPanelWidth:n,asideWidth:a}}function eh(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.id=="string"&&typeof t.nodeId=="string"&&typeof t.workspaceId=="string"&&typeof t.label=="string"&&typeof t.lastActiveAt=="number"&&(t.pinned===void 0||typeof t.pinned=="boolean")&&(t.selectedSessionId===void 0||typeof t.selectedSessionId=="string"&&t.selectedSessionId.length>0)}function th(e,t){if(e.kind==="tool_call"&&jf(e.payload))return!0;if(e.kind==="user_input_request"&&e.status==="PENDING"&&!t)return!1;if(e.kind==="user_message"){const n=_f(e.payload);if(n.files.length>0||n.goal!==void 0||n.scheduled||n.restarted||n.sessionOrigin!==void 0||n.channel!==void 0)return!0}return e.kind!=="turn_summary"&&(e.kind==="user_input_request"||e.kind==="approval_request"||Ba(e.kind,e.payload,e.status).trim().length>0)}function nh(e){if(!(e.item.kind!=="plan"||e.steering||!e.canStartTurn||e.turns.flatMap(n=>n.items.filter(a=>a.kind==="plan")).at(-1)?.id!==e.item.id))return e.commandStates?.filter(n=>n.active&&n.continuation!=null).map(Fl)[0]??{commandId:"historical-plan",active:!1,label:c("runnerProfiles.planModeLabel"),detail:c("generated.conversationDomain.thisHistoricalPlanCanBeImplementedDirectly"),closable:!1,closeInput:null,continuation:{label:c("generated.conversationDomain.implement"),prompt:c("generated.conversationDomain.implementThePlanAbove")}}}function ah(e){let t=0,n=0,a,r;e.configurationAvailable!==void 0&&He(e.configurationAvailable,m=>{m&&p()});async function s(m=e.workspaceTarget.value?.nodeId){if(m===void 0||e.workspaceTarget.value?.nodeId!==m)return!1;const A=e.workspaceTarget.value,L=await e.profileService.load(m);return e.workspaceTarget.value!==A?!1:L===void 0?(e.workspaceTarget.value===A&&(e.codexFastEnabled.value=!1),!1):(L.defaultsChanged&&e.draftOpen.value&&e.selectedSession.value===void 0&&u(e.runner.value),e.draftOpen.value&&e.selectedSession.value===void 0&&e.ensureDraftSupported(L.profiles),e.normalize(),await p(),e.workspaceTarget.value!==A?!1:(L.profiles.some(y=>y.runner==="codex"&&y.commands.some(D=>D.id==="fast"))?l(m):e.codexFastEnabled.value=!1,!0))}async function i(m=e.workspaceTarget.value?.nodeId){if(m===void 0)return;const A=e.workspaceTarget.value,L=++n,y=[0,500,1e3,2e3,4e3];for(const D of y)if(L!==n||e.workspaceTarget.value!==A||(D>0&&await(e.retryDelay??(E=>new Promise(H=>setTimeout(H,E))))(D),L!==n||e.workspaceTarget.value!==A)||await s(m))return}async function l(m){const A=e.workspaceTarget.value;try{const L=await e.request("/api/runner-commands",{method:"POST",body:JSON.stringify({nodeId:m,runner:"codex",commandId:"fast",input:"/fast status"})});e.workspaceTarget.value===A&&(e.codexFastEnabled.value=L.enabled)}catch{e.workspaceTarget.value===A&&(e.codexFastEnabled.value=!1)}}function v(m){return e.profileService.defaultFor(e.workspaceTarget.value?.nodeId,m)}function u(m){e.apply(v(m))}function d(){e.normalize()}function w(){const m=e.workspaceTarget.value?.nodeId;m!==void 0&&e.profileService.save(m,{runner:e.runner.value,modelId:e.modelId.value,effort:e.effort.value,access:e.access.value})}function k(m){if(m===void 0)return d();const A=v(m.runner);e.apply({runner:m.runner,modelId:m.modelId??A.modelId,effort:m.effort??A.effort,access:m.access??A.access})}function T(m,A=!0){k(m);const L=e.workspaceTarget.value?.nodeId;if(m===void 0||L===void 0||!A){r=void 0;return}r={nodeId:L,sessionId:m.id},p(m)}async function p(m=e.selectedSession.value){const A=e.workspaceTarget.value?.nodeId;if(m===void 0||m.runner!=="mar-agent"||A===void 0||e.draftOpen.value||e.selectedSession.value?.id!==m.id||r?.nodeId!==A||r.sessionId!==m.id||a===m.id||e.configurationAvailable?.()===!1)return;const L=e.profiles.value.find(E=>E.runner===m.runner),y=Ul(L,m);if(y.length===0||y.some(E=>E.id===m.modelId))return;const D=y[0];e.setModel(D.id,Ya(D)),a=m.id;try{await g()}finally{a===m.id&&(a=void 0)}}async function g(){if(e.draftOpen.value||e.workspaceTarget.value?.nodeId===void 0||e.selectedSession.value===void 0)return d();const m=e.workspaceTarget.value?.nodeId,A=e.selectedSession.value;if(e.configurationAvailable?.()===!1)return k(A);if(await ut(),e.workspaceTarget.value?.nodeId!==m||e.selectedSession.value?.id!==A.id)return;if(e.configurationAvailable?.()===!1)return k(e.selectedSession.value);d();const L=++t;e.loading.value=!0;try{const y=await e.request(`/api/agent-sessions/${e.sessionPathId(A.id)}/config`,{method:"PATCH",body:JSON.stringify({nodeId:m,workspaceId:A.workspaceId,modelId:e.modelId.value,effort:e.effort.value,access:e.access.value})});if(L!==t||e.workspaceTarget.value?.nodeId!==m||e.selectedSession.value?.id!==A.id)return;e.replaceSessionProjection(y.session)}catch(y){if(L!==t||e.workspaceTarget.value?.nodeId!==m||e.selectedSession.value?.id!==A.id)return;k(A),e.notice(c("generated.workbenchComposerController.unableToUpdateTheSessionConfiguration",{value0:e.errorMessage(y)}),"error",y)}finally{L===t&&(e.loading.value=!1)}}function R(m,A){A.includes(m)&&(e.setEffort(m),g(),e.draftOpen.value&&w())}function b(m,A){const L=A.find(y=>y.id===m);L!==void 0&&(e.setModel(L.id,Ya(L)),g(),e.draftOpen.value&&w())}function C(m,A){A.some(L=>L.id===m)&&(e.setAccess(m),g(),e.draftOpen.value&&w())}function I(m){m!=="mar-agent"&&m!=="codex"&&m!=="claude-code"&&m!=="opencode"||e.profiles.value.some(A=>A.runner===m&&A.capabilities.includes("turn.start"))&&(u(m),e.clearRunnerCommand(),e.clearModelEffortSelection(),g())}function S(m,A,L){const y=Array.isArray(m)?m.at(-1):m;if(typeof y=="string"){if(y.startsWith("effort:"))A(y.slice(7));else if(y.startsWith("model:"))L(y.slice(6));else return;ut(()=>{e.clearModelEffortSelection()})}}return{loadProfiles:i,runnerDefaultFor:v,applyDefaults:u,normalize:d,saveDefaults:w,applyConfiguration:T,update:g,selectEffort:R,selectModel:b,selectAccess:C,selectRunner:I,selectModelEffort:S}}function oh(e){let t=0;return{enter(){t+=1,e(!0)},leave(){t=Math.max(0,t-1),t===0&&e(!1)},reset(){t=0,e(!1)}}}const rh=100,ih=1e4;function sh(e){if(e.length>=ih)return!0;let t=1;for(let n=0;n<e.length;n+=1)if((e[n]===`
4
4
  `||e[n]==="\r"&&e[n+1]!==`
5
5
  `)&&(t+=1),t>=rh)return!0;return!1}function lh(e,t=new Date){const n=[t.getFullYear(),jn(t.getMonth()+1),jn(t.getDate()),"-",jn(t.getHours()),jn(t.getMinutes()),jn(t.getSeconds())].join("");return new File([e],`pasted-text-${n}.txt`,{type:"text/plain;charset=utf-8"})}function jn(e){return String(e).padStart(2,"0")}function nc(e){const t=oh(e.setDragging);function n(i){if(!e.canAcceptFiles())return;const l=[...i.clipboardData?.items??[]],v=l.some(k=>k.kind==="file")||[...i.clipboardData?.types??[]].includes("Files"),u=l.filter(k=>k.kind==="file").map(k=>k.getAsFile()).filter(k=>k!==null),d=u.length>0?u:[...i.clipboardData?.files??[]];if(v||d.length>0){i.preventDefault(),d.length>0&&e.addFiles(d);return}const w=i.clipboardData?.getData("text/plain");w!==void 0&&sh(w)&&(i.preventDefault(),e.addFiles([lh(w)]))}function a(i){!e.canAcceptFiles()||!ch(i.dataTransfer)||t.enter()}function r(){t.leave()}async function s(i){if(t.reset(),!e.canAcceptFiles())return;if(dh(i.dataTransfer)){e.rejectDirectory();return}const l=[...i.dataTransfer?.files??[]];l.length!==0&&(!await(e.confirmDrop?.(l)??!0)||!e.canAcceptFiles()||e.addFiles(l))}return{onPaste:n,onDragEnter:a,onDragLeave:r,onDrop:s}}function ch(e){return e===null?!1:[...e.types].some(t=>t.toLocaleLowerCase()==="files")?!0:[...e.items].some(t=>t.kind==="file")}function dh(e){return[...e?.items??[]].some(t=>t.webkitGetAsEntry?.()?.isDirectory===!0)}async function ac(e,t,n){try{await navigator.clipboard.writeText(e),t()}catch{n(c("generated.workbenchPageInteractionService.copyFailedCheckTheBrowserClipboardPermission"),"error")}}function oc(){const e=x([]),t=x();let n=0;const a=j(()=>e.value.find(T=>T.id===t.value)??e.value.at(-1));function r(T){e.value.some(p=>p.id===T)&&(t.value=T)}function s(T){const p=_p(T),g=e.value.find(b=>b.identity===p);if(g!==void 0){const b={...g,...T.targetLine===void 0?{}:{targetLine:T.targetLine},...T.targetColumn===void 0?{}:{targetColumn:T.targetColumn}};return e.value=e.value.map(C=>C.id===g.id?b:C),t.value=g.id,b}const R={...T,identity:p,id:++n,fileName:ts(T.path)};return e.value=[...e.value,R],t.value=R.id,R}function i(T,p){const g=e.value.findIndex(I=>I.id===T);if(g<0)return;const R=Math.max(0,Math.min(p,e.value.length-1));if(g===R)return;const b=[...e.value],[C]=b.splice(g,1);C!==void 0&&(b.splice(R,0,C),e.value=b)}function l(T){const p=e.value.findIndex(R=>R.id===T);if(p<0)return;const g=t.value===T;e.value=e.value.filter(R=>R.id!==T),g&&(t.value=e.value.at(p-1)?.id??e.value.at(p)?.id)}function v(){e.value=[],t.value=void 0}function u(T,p){e.value=e.value.map(g=>g.identity===T?{...g,path:p,fileName:ts(p)}:g)}function d(T){return e.value.filter(p=>p.path===T)}function w(){return{tabs:e.value,...a.value===void 0?{}:{activeIdentity:a.value.identity}}}function k(T){const p=new Set,g=[];let R=0;for(const b of T.tabs)p.has(b.identity)||(p.add(b.identity),g.push(b),R=Math.max(R,b.id));e.value=g,n=R,t.value=g.find(b=>b.identity===T.activeIdentity)?.id??g.at(-1)?.id}return{tabs:ct(e),activeTabId:ct(t),activeTab:a,open:s,activate:r,move:i,remove:l,clear:v,updatePath:u,findByPath:d,snapshot:w,restore:k}}function Dr(e,t){if(!(e.diff?.status!=="available"||!e.changeId))return{kind:"TOOL_CHANGE_DIFF",nodeId:t.nodeId,workspaceId:t.workspaceId,path:e.path,repositoryPath:"",worktreePath:"",paths:[e.path],toolChange:{scope:t.scope,sessionId:t.sessionId,changeId:e.changeId,diff:e.diff}}}async function rc(e,t,n){const a=e.toolChange;if(e.kind!=="TOOL_CHANGE_DIFF"||!a)throw new Error("TOOL_RESOURCE_INPUT_INVALID");const r=a.scope==="SESSION"?`/api/agent-sessions/${encodeURIComponent(a.sessionId)}/tool-resources/${encodeURIComponent(a.diff.resourceRef)}`:`/api/nodes/${encodeURIComponent(e.nodeId)}/hosted-conversations/${encodeURIComponent(a.sessionId)}/tool-resources/${encodeURIComponent(a.diff.resourceRef)}`,s=[],i=new Set;let l,v=0;const u=new TextEncoder;for(let d=0;d<66;d++){n?.throwIfAborted();const w=new URLSearchParams({maxBytes:String(256*1024)});a.scope==="SESSION"&&(w.set("nodeId",e.nodeId),w.set("workspaceId",e.workspaceId)),l!==void 0&&w.set("cursor",l);const k=of.parse(await t(`${r}?${w}`));n?.throwIfAborted();const T=u.encode(k.content).byteLength;if(k.resourceRef!==a.diff.resourceRef||k.sha256!==a.diff.sha256||k.byteSize!==a.diff.byteSize||T>256*1024||k.nextCursor!==void 0&&T===0)throw new Error("TOOL_RESOURCE_RESPONSE_INVALID");if(v+=T,v>a.diff.byteSize)throw new Error("TOOL_RESOURCE_RESPONSE_INVALID");if(s.push(k.content),k.nextCursor===void 0){if(v!==a.diff.byteSize)throw new Error("TOOL_RESOURCE_RESPONSE_INVALID");const p=s.join("");if(globalThis.crypto?.subtle){const g=await globalThis.crypto.subtle.digest("SHA-256",u.encode(p));if([...new Uint8Array(g)].map(b=>b.toString(16).padStart(2,"0")).join("")!==a.diff.sha256)throw new Error("TOOL_RESOURCE_RESPONSE_INVALID")}return n?.throwIfAborted(),{text:p}}if(i.has(k.nextCursor))throw new Error("TOOL_RESOURCE_RESPONSE_INVALID");i.add(k.nextCursor),l=k.nextCursor}throw new Error("TOOL_RESOURCE_RESPONSE_INVALID")}function uh(e){const t=oc();return{tabs:t,open(n,a){const r=Dr(n,a);r&&t.open(r)},load:(n,a)=>rc(n,e,a),clear:()=>t.restore({tabs:[]})}}function vh(e){async function t(n,a,r,s=!1){const i=e.workspaceTarget.value,l=i?.nodeId,v=l===void 0?void 0:e.captureCacheTarget(l,n.workspaceId);let u=e.currentSelectionRevision();const d=await e.request(`/api/agent-sessions/${e.sessionPathId(n.id)}/commands`,{method:"POST",body:JSON.stringify({nodeId:l,workspaceId:n.workspaceId,commandId:a,input:r,...n.runner==="mar-agent"&&n.modelId?{modelId:n.modelId}:{}})});let w=n.id;const k=()=>l!==void 0&&e.workspaceTarget.value===i&&e.currentSelectionRevision()===u&&(v===void 0||v.isCurrent())&&e.workspaceTarget.value?.nodeId===l&&e.workspaceTarget.value.workspaceId===n.workspaceId&&e.selectedSessionId.value===w;if(d.session!==void 0&&l!==void 0){const T=k();v?.replaceSession(n.id,d.session),(T||v?.isCurrent()===!0)&&e.acceptSession(l,n.workspaceId,n.id,d.session,T),T&&(w=d.session.id,k()&&e.configure(d.session))}if(s&&l!==void 0&&k()){const T=e.resetHistory(l,n),p=e.currentSelectionRevision();(p===u||p===u+1)&&(u=p),await T}return a==="goal"&&d.goalAlreadyActive===!0&&k()&&e.notifyGoalAlreadyActive(),d.run!==void 0&&(k()?(e.acceptRun(d.run),e.openRun(d.run.id)):v?.cacheRun(d.run)),d}return{execute:t}}function fh(e){function t(a,r,s){const i=["STARTING","RUNNING","CANCELLING"].includes(r)?"RUNNING":r;e.syncTurnStatus(a,i),s!==void 0&&e.syncCachedRunStatus(s,a,i)}function n(a){e.workspaceTarget.value?.nodeId!==void 0&&(e.selectedRunId.value=a,e.channelToken.value=void 0,e.refreshChannelToken())}return{openRun:n,syncConversationTurnStatus:t}}function ph(e){const t=Ht();async function n(){const r=e.selectedSession.value,s=e.workspaceTarget.value,i=s?.nodeId;if(s===void 0||i===void 0||r?.runner!=="claude-code")return;const l=e.currentRevision(),v=()=>t?.active!==!1&&e.currentRevision()===l&&e.workspaceTarget.value?.nodeId===i&&e.workspaceTarget.value.workspaceId===s.workspaceId&&e.selectedSession.value?.id===r.id;try{const u=await e.request(`/api/agent-sessions/${e.sessionPathId(r.id)}/channel-token?nodeId=${encodeURIComponent(i)}`);v()&&(e.token.value=u.token)}catch{v()&&(e.token.value=void 0)}}async function a(){const r=e.workspaceTarget.value?.nodeId,s=e.selectedSession.value,i=e.token.value,l=e.input.value.trim();if(!(r===void 0||s===void 0||i===void 0||l.length===0)){e.loading.value=!0;try{const v=await e.request(`/api/agent-sessions/${e.sessionPathId(s.id)}/channel-messages`,{method:"POST",body:JSON.stringify({nodeId:r,token:i,clientMessageId:crypto.randomUUID(),content:l})});e.input.value="",e.notice(v.delivery==="STEERED"?c("generated.workbenchRunnerChannelService.theMessageWasAddedToTheCurrent"):c("generated.workbenchRunnerChannelService.theMessageWasNotDeliveredToThe"),v.delivery==="STEERED"?"info":"error")}catch(v){e.notice(c("generated.workbenchRunnerChannelService.unableToSendThroughTheClaudeChannel",{value0:e.errorMessage(v)}),"error",v)}finally{e.loading.value=!1}}}return{refreshClaudeChannelToken:n,sendClaudeChannelMessage:a}}function gh(e){const t=Ht();async function n(a){const r=e.continuationFor(a),s=e.selectedSession.value,i=e.workspaceTarget.value;if(r?.continuation===null||r?.continuation===void 0||s===void 0||i===void 0)return;const l=e.currentRevision(),v=d=>t?.active!==!1&&e.currentRevision()===l&&e.workspaceTarget.value?.nodeId===i.nodeId&&e.workspaceTarget.value?.workspaceId===i.workspaceId&&e.selectedSessionId.value===d;let u=!0;try{let d=s;if(r.closeInput!==null){const w=e.beginSubmission(`session:${s.id}`);if(w===void 0)return;let k;try{k=await e.execute(s,r.commandId,r.closeInput)}finally{u=w()}if(!u)return;d=k.session??s}v(d.id)&&(e.selectedCommand.value=void 0,e.commandPickerOpen.value=!1,e.input.value=r.continuation.prompt,await e.send())}catch(d){u&&v(s.id)&&e.notice(c("generated.workbenchPlanService.unableToImplementThePlan",{value0:e.errorMessage(d)}),"error",d)}}return{implementPlan:n}}function mh(e){const t=Ht();async function n(){const a=e.workspaceTarget.value,r=e.selectedSession.value,s=e.compactCommand.value;if(a===void 0||r===void 0||s===void 0||!e.canCompact.value)return;const i=e.currentRevision(),l=()=>t?.active!==!1&&e.currentRevision()===i&&e.workspaceTarget.value?.nodeId===a.nodeId&&e.workspaceTarget.value?.workspaceId===a.workspaceId&&e.selectedSession.value?.id===r.id;try{await Nt.confirm([e.contextUsageLabel.value,c("generated.workbenchContextCommandService.compactOlderContextToFreeWindowSpace")].filter(Boolean).join(`
6
6
 
7
7
  `),c("generated.workbenchContextCommandService.compactContext"),{closeIcon:qe("close"),icon:qe("warning"),confirmButtonText:c("generated.workbenchContextCommandService.compact"),cancelButtonText:c("generated.workbenchContextCommandService.cancel"),type:"warning"})}catch{return}if(!l()||!e.canCompact.value)return;const v=e.beginSubmission(`session:${r.id}`);if(v!==void 0)try{await e.execute(r,s,"/compact")}catch(u){v()&&l()&&e.notice(c("generated.workbenchContextCommandService.unableToCompactContext",{value0:e.errorMessage(u)}),"error",u)}finally{v()}}return{compactCurrentContext:n}}function hh(e){const t=x(!1);function n(s,i,l){const v=e.current();return e.currentRevision()===l&&v?.nodeId===s&&v.session.id===i.id&&v.session.workspaceId===i.workspaceId}async function a(s,i){const l=e.current();if(l===void 0||t.value||!e.canRewind()||s.rewind===void 0)return{status:"SKIPPED"};let v=e.currentRevision();const u=i.kind==="user_message",d={nodeId:l.nodeId,turnId:s.turnId??s.id,position:u?"BEFORE":"AFTER",boundary:u?s.rewind.before:s.rewind.after};if(!await e.confirmRewind(u)||!e.canRewind()||!n(l.nodeId,l.session,v))return{status:"SKIPPED"};const w=e.beginSubmission("session:"+l.session.id);if(w===void 0)return{status:"SKIPPED"};const k=e.draft.read(),T=u?Ba(i.kind,i.payload):"";let p;t.value=!0;try{if(p=(await e.request("/api/agent-sessions/"+e.sessionPathId(l.session.id)+"/rewind",{method:"POST",body:JSON.stringify(d)})).session,!n(l.nodeId,l.session,v))return{status:"STALE",session:p};e.replaceSession(p.id,p);const R=e.openSession(p.id);return v=e.currentRevision(),await R,n(l.nodeId,p,v)?(e.draft.fill(T,"rewind"),{status:"APPLIED",session:p}):{status:"STALE",session:p}}catch(g){if(p!==void 0&&n(l.nodeId,p,v)){try{const R=e.openSession(l.session.id,{skipSaveCurrent:!0});v=e.currentRevision(),await R}catch{}n(l.nodeId,l.session,v)&&e.draft.restore(k)}return{status:"FAILED",phase:p===void 0?"REQUEST":"APPLY",error:g,...p===void 0?{}:{session:p}}}finally{t.value=!1,w()}}async function r(s,i){const l=e.current();if(l===void 0||t.value||!e.canRollback()||s.rewind===void 0||i.kind!=="user_message"||i.status!=="COMPLETED"||!["SUCCEEDED","FAILED","CANCELLED","INTERRUPTED","LOST"].includes(s.status))return{status:"SKIPPED"};let v=e.currentRevision();const u={nodeId:l.nodeId,turnId:s.turnId??s.id,itemId:i.id,boundary:s.rewind.before};if(!await e.confirmRollback()||!e.canRollback()||!n(l.nodeId,l.session,v))return{status:"SKIPPED"};const d=e.beginSubmission("session:"+l.session.id);if(d===void 0)return{status:"SKIPPED"};const w=Ba(i.kind,i.payload);let k;t.value=!0;try{if(k=(await e.request("/api/agent-sessions/"+e.sessionPathId(l.session.id)+"/rollback",{method:"POST",body:JSON.stringify(u)})).session,e.invalidateDetail(l.nodeId,l.session),!n(l.nodeId,l.session,v))return{status:"STALE",session:k};e.replaceSession(l.session.id,k),e.clearHistory(l.session.id);const p=e.openSession(l.session.id,{preserveMobileWorkspaceSurface:!0,deferInitialScroll:!0,skipSaveCurrent:!0});return v=e.currentRevision(),await p,n(l.nodeId,l.session,v)?(e.draft.fill(w,"rollback"),{status:"APPLIED",session:k}):{status:"STALE",session:k}}catch(T){return{status:"FAILED",phase:k===void 0?"REQUEST":"APPLY",error:T,...k===void 0?{}:{session:k}}}finally{t.value=!1,d()}}return{pending:t,rewind:a,rollback:r}}function yh(e){const t=x("mar-agent"),n=x(""),a=x("medium"),r=x("on-request"),s=x(),i=j(()=>e.selectedSession.value?.runner??t.value),l=j(()=>e.profiles.value.find(C=>C.runner===i.value)),v=j(()=>Ul(l.value,e.selectedSession.value)),u=j(()=>v.value.find(C=>C.id===n.value)),d=j(()=>u.value?.supportedEfforts??[]),w=j(()=>l.value?.accessOptions??[]),k=j(()=>{const C=n.value||e.selectedSession.value?.modelId,I=u.value?.label??l.value?.models.find(m=>m.id===C)?.label??(C||$n(i.value)),S=e.effortLabel(a.value);return S.length===0?I:`${I} ${S}`}),T=j(()=>$n(i.value)),p=j(()=>w.value.find(C=>C.id===r.value)?.label??r.value);function g(){const C=e.profiles.value.find(m=>m.runner===t.value);if(C===void 0)return;const I=C.runner===i.value?v.value:C.models;I.some(m=>m.id===n.value)||(n.value=I[0]?.id??"");const S=I.find(m=>m.id===n.value);if(S!==void 0){const m=Ya(S);(S.supportedEfforts.length===0?a.value===m:S.supportedEfforts.includes(a.value))||(a.value=m)}C.accessOptions.some(m=>m.id===r.value)||(r.value=C.accessOptions[0]?.id??"on-request")}function R(C){t.value=C.runner,n.value=C.modelId,a.value=C.effort,r.value=C.access,g()}function b(C,I){n.value=C,a.value=I}return{runner:t,modelId:n,effort:a,access:r,modelEffortSelection:s,activeRunner:i,profile:l,models:v,selectedModel:u,efforts:d,accessOptions:w,modelEffortLabel:k,runnerLabel:T,accessLabel:p,normalize:g,apply:R,selectModel:b,selectEffort:C=>a.value=C,selectAccess:C=>r.value=C,clearModelEffortSelection:()=>s.value=void 0}}function wh(e){return async t=>{const n=e.target(),a=e.revision();if(!await e.waitReady()||n===void 0||n!==e.target()||n.sessionId!==t||a!==e.revision()||!e.visible())throw new jt("WATCH_CANCELLED","The session selection was stopped or replaced.");return e.begin(t)}}function ic(e){const t=Ht(),n=e.positioning??x(!1),a=x(!1);let r;function s(){r=void 0,n.value=!1,e.loading.value=!0,e.failed.value=!1,e.failureCause.value=void 0}async function i(u,d){r=u,n.value=!0;try{await ut(),d()&&n.value&&await e.scrollLatest(d)}finally{r===u&&(r=void 0,t?.active!==!1&&(n.value=!1))}}async function l(u){u.initialRender&&await e.beginInitialRender(),u.isCurrent()&&(u.shouldScroll()&&(n.value=!0,await e.scrollLatest(u.isCurrent)),await u.cachedPositioning,u.isCurrent()&&(n.value=!1))}async function v(u){if(e.content===void 0)throw new Error("Pane content is not configured.");u.activeRunId!==void 0&&e.content.openRun(u.activeRunId);const d=e.content.hasContent();a.value=d;const w=u.restored&&d&&!u.deferInitialScroll?i(u.requestId,u.isCurrent):void 0;await u.loader.read({nodeId:u.nodeId,workspaceId:u.workspaceId,sessionId:u.sessionId,isCurrent:u.isCurrent,onResolved:u.onResolved,loading:e.loading,failed:e.failed,failureCause:e.failureCause,throwOnFailure:u.throwOnFailure,beforeFailure:async()=>{await w},onFailure:()=>{n.value=!1},onSettle:u.onSettle,afterLoad:async k=>{await l({isCurrent:u.isCurrent,initialRender:!d,shouldScroll:()=>!d&&(u.switching||k.changed||!u.deferInitialScroll),cachedPositioning:w}),u.isCurrent()&&u.onLoaded(k.session)}})}return{begin:s,setRestoredContent:u=>{a.value=u},loadingContent:j(()=>e.loading.value&&!a.value),positionRestored:i,finish:l,openRestored:v,read:(u,d)=>u.read({...d,loading:e.loading,failed:e.failed,failureCause:e.failureCause}),clearPosition:()=>{n.value=!1}}}function kh(e){async function t(a){const r=await e.readSession(a.nodeId,a.sessionId);if(!a.isCurrent())return;if(a.workspaceId!==void 0&&r.session.workspaceId!==a.workspaceId)throw new jt("SESSION_NOT_FOUND","The session does not belong to the selected Workspace.");if(a.onResolved(r.session),!a.isCurrent())return;const s=e.runs.value.find(u=>u.sessionId===r.session.id&&["STARTING","RUNNING","CANCELLING"].includes(u.status));if(e.replaceSession(a.sessionId,r.session),e.applyComposerConfiguration(r.session,!0),s!==void 0&&(e.markActive(r.session),e.openRun(s.id)),!a.isCurrent())return;const i=e.canWatch(r.session);let l;if(i){if(!await e.beginWatch(a.sessionId))throw new jt("SESSION_HISTORY_INITIAL_FAILED","The initial session snapshot has not been applied.")}else l=await e.readInitialHistory(a.nodeId,a.sessionId);if(!a.isCurrent())return;const v=l===void 0?!1:s===void 0?e.applySnapshot(r.session.id,l):e.mergeTurns(l);return e.saveCurrent(),{session:r.session,changed:v}}const n=bh(t);return{load:t,read:n}}function bh(e){return async function(n){try{const a=await e(n);a!==void 0&&n.isCurrent()&&await n.afterLoad(a)}catch(a){if(await n.beforeFailure?.(),!n.isCurrent())return;if(n.onFailure?.(),gt(a)!=="WATCH_CANCELLED"&&(n.failed.value=!0,n.failureCause.value=a),n.throwOnFailure)throw a}finally{n.onSettle?.(),n.isCurrent()&&(n.loading.value=!1)}}}function Ih(e){const t=Ht();let n,a,r;const s=ic({loading:e.loading,failed:e.failed,failureCause:e.failureCause,beginInitialRender:e.beginInitialRender,scrollLatest:e.scrollLatest}),i=He([()=>e.target.value?.kind,()=>e.target.value?.nodeId,()=>e.target.value?.workspaceId,()=>e.target.value?.kind==="session"?e.target.value.sessionId:void 0,e.visible],([v,u,d,w,k],T,p)=>{const g=e.target.value;if(a!==void 0&&(g?.kind!=="session"||a.nodeId!==g.nodeId||a.workspaceId!==g.workspaceId||a.sessionId!==g.sessionId)&&(a=void 0,r=void 0),!k||g?.kind!=="session")return;const R={...g},b=e.currentRequest();let C=!1;const I=()=>{const L=e.target.value;return!C&&(t===void 0||t.active)&&L?.kind==="session"&&L.nodeId===R.nodeId&&L.workspaceId===R.workspaceId&&L.sessionId===R.sessionId&&e.currentRequest()===b},S=()=>I()&&e.visible.value;p(()=>{I()&&e.save(),C=!0,e.cancel(),e.stopWatch(),e.loading.value=!1,e.loadingContent.value=!1,n=void 0});const m=async()=>{s.begin();const L=e.restore(R);e.loadingContent.value=!L,await s.read(e.loader,{...R,isCurrent:S,onResolved:()=>{},afterLoad:async()=>{let y;await s.finish({isCurrent:S,initialRender:!0,shouldScroll:()=>(y=e.scrollElement(),!(L&&y!==void 0&&y===r&&a?.nodeId===R.nodeId&&a.workspaceId===R.workspaceId&&a.sessionId===R.sessionId))}),S()&&(a=R,r=y,await e.markRead(R.nodeId,R.workspaceId,R.sessionId))},onSettle:()=>{S()&&(e.loadingContent.value=!1)}})};let A;n=()=>{if(!S())return Promise.resolve();if(A!==void 0)return A;const L=m();return A=L,L.finally(()=>{A===L&&(A=void 0)}),L},n()},{immediate:!0,flush:"sync"});async function l(){if(await(n?.()??Promise.resolve()),e.failed.value)throw new jt("SESSION_HISTORY_INITIAL_FAILED","The initial session snapshot has not been applied.")}return{reload:()=>n?.()??Promise.resolve(),reloadChecked:l,stop:i}}function sc(e){const t=j(()=>e.nodes.value.find(s=>s.id===e.workspaceTarget.value?.nodeId)),n=j(()=>t.value?.connected===!0&&t.value.disabled!==!0&&e.nodeManifest.value?.manifestVersion===1&&e.nodeManifest.value.conversation.available),a=j(()=>n.value&&e.nodeManifest.value?.files?.available===!0),r=j(()=>n.value&&e.nodeManifest.value?.terminal?.available===!0&&e.nodeManifest.value.terminal.supportsReplay===!0);return{workspaceHost:t,nodeReady:n,filesReady:a,terminalReady:r}}function Sh(e){return{...sc(e),selectedWorkspace:j(()=>e.workspaces.value.find(t=>t.id===e.workspaceTarget.value?.workspaceId))}}function Ch(e,t){return t===void 0?[]:e.filter(n=>n.workspaceId===t&&En(n))}function Ts(e){return e?.some(t=>t.commandId==="goal"&&t.active&&t.goal?.status==="active")??!1}function Th(e){const t=j(()=>{const z=e.selectedRunId.value;if(z===void 0)return;const fe=e.runs.value.find(J=>J.id===z);return fe!==void 0&&["STARTING","RUNNING","CANCELLING"].includes(fe.status)?fe:void 0}),{workspaceHost:n,nodeReady:a}=sc(e),r=j(()=>e.selectedSession.value===void 0?void 0:nr(e.selectedSession.value)),s=j(()=>new Set(e.selectedSession.value?.control?.capabilities??[])),i=j(()=>new Set(e.selectedSession.value?.runtime?.capabilities??[])),l=j(()=>a.value&&s.value.has("turn.start")),v=j(()=>r.value==="MANAGED_ACTIVE"&&t.value!==void 0),u=j(()=>e.composerProfile.value?.capabilities.includes("turn.start")===!0),d=j(()=>e.draftOpen.value||e.selectedSessionId.value?.startsWith("draft:")===!0),w=j(()=>a.value&&(d.value?e.runnerProfilesLoading.value||e.runnerProfilesFailed.value||u.value:r.value==="MANAGED_ACTIVE"||(v.value?i.value.has("turn.queue"):l.value))),k=j(()=>e.selectedSession.value!==void 0||e.draftOpen.value),T=j(()=>S.value||e.composerModels.value.length===0),p=j(()=>S.value||e.composerAccessOptions.value.length===0),g=j(()=>!w.value),R=j(()=>e.attachments.value.some(z=>z.status!=="COMPLETED")),b=j(()=>e.turns.value.map(z=>({...z,items:z.items.filter(fe=>e.shouldDisplayItem(fe,z.runId))})).filter(z=>z.items.length>0)),C=e.currentSessionQueue,I=j(()=>t.value!==void 0||Ts(e.selectedSession.value?.commandStates)||r.value==="MANAGED_ACTIVE"&&!e.runService.sessionInterruptionSettled(e.selectedSessionId.value)),S=j(()=>I.value||e.selectedSessionId.value?.startsWith("draft:")===!0||r.value==="MANAGED_ACTIVE"||e.loading.value||e.submissionPending.value),m=j(()=>a.value&&e.selectedSession.value!==void 0&&!S.value),A=j(()=>m.value&&i.value.has("session.rollback")&&C.value.items.length===0);function L(z){const fe=e.selectedSession.value?.id===z.id?e.selectedSession.value:e.sessions.value.find(J=>J.id===z.id)??z;return a.value&&!e.loading.value&&!e.submissionPending.value&&nr(fe)==="IDLE"&&!Ts(fe.commandStates)&&!e.runs.value.some(J=>J.sessionId===z.id&&["STARTING","RUNNING","CANCELLING"].includes(J.status))}function y(z){return!(!z.available||e.loading.value||e.submissionPending.value||e.selectedSessionId.value?.startsWith("draft:")===!0||(z.interaction==="IMMEDIATE_ACTION"||z.interaction==="DESTRUCTIVE_ACTION")&&(S.value||z.interaction==="DESTRUCTIVE_ACTION"&&C.value.items.length>0))}const D=j(()=>e.composerProfile.value?.commands.find(z=>z.id==="compact"&&z.available)),E=j(()=>e.selectedSession.value!==void 0&&D.value!==void 0&&a.value&&!S.value),H=j(()=>{const z=e.sessionContextUsage.value,fe=e.formatTokenCount(z?.usedTokens??0),J=z==null?"—":e.formatTokenCount(z.maxTokens),re=`${fe} / ${J} tokens (${e.formatPercentage(z?.percentage??0)})`,ge=c("generated.workbenchPresentationStateService.contextWindow",{value0:re}),ce=c("generated.workbenchPresentationStateService.gcCount",{value0:z?.gcCount??0,value1:e.formatTokenCount(z?.gcReclaimedTokens??0)});return`${ge}
8
- ${ce}`}),{working:X,workingNow:_,workingStartedAt:U}=Tl(e.selectedSessionId,I,t),Q=j(()=>!X.value||!a.value?"":Al(U.value,_.value)),$=j(()=>X.value?Rl(t.value,a.value?e.turns.value:[]):""),V=j(()=>X.value&&a.value&&El(t.value,e.turns.value)),N=j(()=>(t.value!==void 0||r.value==="MANAGED_ACTIVE"&&(e.selectedSessionId.value===void 0||!e.runService.sessionInterruptionSettled(e.selectedSessionId.value)))&&a.value),h=j(()=>N.value&&t.value?.status!=="CANCELLING"),F=j(()=>a.value&&e.selectedSession.value?.runner==="claude-code"&&e.channelToken.value!==void 0);return{activeComposerRun:t,workspaceHost:n,nodeReady:a,selectedSessionActivity:r,selectedCapabilities:s,selectedRuntimeCapabilities:i,canStartTurn:l,mustSteerCurrentTurn:v,draftRunnerProfileSupportsTurns:u,composerDraftOpen:d,canUseComposer:w,composerSessionOpen:k,composerConfigurationDisabled:T,composerAccessDisabled:p,composerInputDisabled:g,composerAttachmentsPending:R,displayedConversationTurns:b,currentSessionQueue:C,composerSessionBusy:I,sessionControlsBusy:S,rewindConversationEnabled:m,rollbackConversationEnabled:A,canExecuteRunnerCommand:y,canDeleteSession:L,compactCommand:D,canCompactContext:E,contextUsageLabel:H,composerWorking:X,workingElapsedLabel:Q,composerWorkingLabel:$,composerWorkingBusy:V,interruptVisible:N,canInterruptTurn:h,canSendClaudeChannel:F}}function Eh(e){const t=Yf(),{selectedWorkspace:n}=e.context,a=j(()=>n.value===void 0?c("common.productName"):`${c("common.productName")} - ${e.workspaceLabel(n.value)}`),r=j(()=>Ch(e.sessions.value,e.workspaceTarget.value?.workspaceId)),s=j(()=>{const v=e.workspaceTarget.value?.nodeId,u=e.workspaceTarget.value?.workspaceId;return v===void 0||u===void 0?[]:r.value.slice(0,e.visibleLimits.value.get(e.tabId(v,u))??e.pageSize)}),i=j(()=>{const v=e.workspaceTarget.value?.nodeId,u=e.workspaceTarget.value?.workspaceId;return v!==void 0&&u!==void 0&&typeof e.nextCursors.value.get(e.tabId(v,u))=="string"}),l=j(()=>e.nodes.value.filter(v=>v.connected&&!v.disabled).length);return{...e.pane,...e.context,sessionActivityClockNow:t,selectedWorkspace:n,documentTitle:a,workspaceSessions:r,visibleWorkspaceSessions:s,canLoadMoreWorkspaceSessions:i,onlineNodeCount:l}}function Rh(e){const t=x(),n=He([e.view,e.nodeId,e.workspaceId,e.sessionId],()=>{t.value=void 0},{flush:"sync"});function a(r,s){if(e.view.value!=="nodes"||r!==e.sessionId.value)return;const i=rf.safeParse(s);i.success&&(t.value={...t.value?.runId===i.data.runId?t.value:{},runId:i.data.runId,...i.data.latencyMs===void 0?{}:{latencyMs:i.data.latencyMs},...i.data.tokensPerSecond===void 0?{}:{tokensPerSecond:i.data.tokensPerSecond}})}return{current:t,receive:a,dispose:n}}function Ah(e){function t(n,a,r="initial"){if(n!==e.selectedSessionId.value)return e.replaceCached(n,a),!1;const s=r==="initial"?e.replaceCurrent(a):e.mergeCurrent(a);return e.replaceCached(n,{...a,...e.currentWindow()}),s}return{apply:t}}function Nh(e){const{projection:t,turns:n,replaceCached:a,...r}=e,s=Ah({selectedSessionId:e.selectedSessionId,replaceCurrent:t.replaceAuthoritative,mergeCurrent:t.mergeLatest,currentWindow:()=>({turns:n.value,nextCursor:e.nextCursor.value}),replaceCached:(l,v)=>a(l,v.turns,v.nextCursor)}),i=Qf({...r,replaceRecent:t.replaceRecent,mergeOlderPage:t.mergeOlderPage,recoverWindow:t.recoverWindow,clearCursor:t.clearCursor});return{applySnapshot:s.apply,paging:i}}function Dh(e,t){return xt.register({command:"composer.openModelMenu",scope:"pane",priority:100,owner:e,keys:Vp,when:()=>!0,execute:()=>t()?"HANDLED":"IGNORED"})}function Ph(){let e;function t(){e?.abort(),e=void 0}async function n(s){t();const i=new AbortController;e=i;try{const l=await s(i.signal);if(!i.signal.aborted)return l}catch(l){if(!i.signal.aborted)throw l}finally{e===i&&(e=void 0)}throw new jt("WATCH_CANCELLED","The session read was stopped or replaced.")}function a(s,i,l,v){return n(u=>l(`/api/agent-sessions/${v(i)}?nodeId=${encodeURIComponent(s)}`,{signal:u}))}async function r(s,i,l,v){const u=await n(d=>l(`/api/agent-sessions/${v(i)}/turns?nodeId=${encodeURIComponent(s)}&limit=${Mf}&unit=SEGMENT`,{signal:d}));return up(u)??vp(u)}return{read:a,readInitialHistory:r,cancel:t}}function Oh(e){const t=Ht();let n=()=>{},a=()=>!1;const r=j(()=>{const U=e.draftTarget.value;return U?.kind==="session"?U.sessionId:void 0}),s=j(U=>{const Q=e.draftTarget.value;if(Q!==void 0)return U?.nodeId===Q.nodeId&&U.workspaceId===Q.workspaceId?U:{nodeId:Q.nodeId,workspaceId:Q.workspaceId}}),i=e.attachments.forTarget(()=>e.draftTarget.value),l=e.drafts.bindTarget(e.draftTarget,e.pane),v=Jf(l.skillTokens);He(l.input,l.persist),He(l.skillTokens,l.persist,{deep:!0}),He(l.references,l.persist,{deep:!0});const u=e.submissions.bind(()=>{const U=e.draftTarget.value;return U===void 0?void 0:e.submissions.forTarget(U)}),d=Nl(),w=dp(r),k=Xf(w.runs),T=Ph(),p=Zf(e.onConversationOverflow);function g(U){return p.projection.flushPendingTextDeltas(),{sessionId:U,runs:w.runs.value,turns:p.turns.value,nextCursor:p.nextCursor.value,contextUsage:p.contextUsage.value??null,lastAccessedAt:Date.now()}}function R(U,Q=void 0){w.replaceRuns(U?.runs??[]),p.projection.restoreWindow(U?.turns??[],U?.nextCursor??null),p.contextUsage.value=U===void 0?Q:U.contextUsage??null}function b(){p.nextDetailRequest(),R(void 0)}function C(){w.selectedRunId.value=void 0,b()}function I(){C(),p.loadingOlder.value=!1,p.loadingInitial.value=!1,p.initialLoadFailed.value=!1}function S(U,Q,$,V){const N=e.draftTarget.value;N?.kind!=="session"||U===void 0||U.id!==N.sessionId||(l.persist(),$.captureSession(N.nodeId,N.workspaceId,U,Q,g(N.sessionId),V))}function m(U,Q,$){return A(U,Q,$,void 0,!1,null).restored}function A(U,Q,$,V,N,h){const F=!N&&U!==void 0?Q.touchDetail(U.nodeId,U.workspaceId,U.sessionId):void 0;$(U===void 0?{version:0,paused:!1,items:[]}:Q.queueFor(U.nodeId,U.workspaceId,U.sessionId)??{version:0,paused:!1,items:[]}),V?.();const z=!N||U===void 0?F:Q.touchDetail(U.nodeId,U.workspaceId,U.sessionId);N&&(w.selectedRunId.value=void 0),R(z,h);const fe=U===void 0?void 0:w.runs.value.find(J=>J.sessionId===U.sessionId&&["STARTING","RUNNING","CANCELLING"].includes(J.status));return{restored:z!==void 0,activeRunId:fe?.id}}function L(U,Q,$,V){return A(U,Q,$,V,!0,void 0)}const y=x();function D(U,Q){const $=s.value;$?.nodeId===U&&$.workspaceId===Q.workspaceId&&r.value===Q.id&&(y.value=Q)}const E=ep({draft:l.queueEdit,persist:l.persist});E.rebind(),He(()=>l.queueEdit.value?.queueItemId,U=>{E.editingQueueItemId.value=U},{flush:"sync"});function H(){T.cancel(),p.cancelInitialRender(),E.rebind()}He([()=>e.draftTarget.value?.kind,()=>e.draftTarget.value?.nodeId,()=>e.draftTarget.value?.workspaceId,()=>e.draftTarget.value?.kind==="session"?e.draftTarget.value.sessionId:void 0],()=>{p.nextDetailRequest(),y.value=void 0,H()},{flush:"sync"}),Ht()!==void 0&&Zn(H);const X=()=>{const U=e.draftTarget.value;if(U===void 0)return;const Q=e.drafts.forTarget(U,e.pane),$=e.submissions.forTarget(U);let V=!1;return{...Q,createdSession:N=>{if(V||U.kind!=="workspace"||U.workspaceId!==N.workspaceId||(V=!0,e.submissions.forTarget(U)!==$))return;const h={...U,kind:"session",sessionId:N.id};e.submissions.transfer($,e.submissions.forTarget(h),"draft:",N.id,!0),e.attachments.moveDraft(U,h)}}};function _(){k.reset(),r.value!==void 0&&p.projection.clearSession(r.value,w.runs.value.map(U=>U.id))}return{resetRealtime:_,clearContent:b,clearSelection:C,prepareDraft:I,clearRuns:()=>w.replaceRuns([]),workspaceTarget:s,sessionId:r,acceptResolvedSession:D,run:w,queueProjection:k,conversation:p,draft:l,attachments:i,skillTokens:v,createReferences:U=>{const Q=cp(l.input,{nodeId:j(()=>s.value?.nodeId),workspaceId:j(()=>s.value?.workspaceId),ready:U.ready,request:U.request,sessions:{ready:U.sessionsReady,currentSessionId:r}},l.references);return Ht()!==void 0&&Zn(Q.cancelSearch),Q},captureDraft:X,createPerformance:U=>{const Q=Rh({view:U,nodeId:j(()=>s.value?.nodeId),workspaceId:j(()=>s.value?.workspaceId),sessionId:r});return Ht()!==void 0&&Zn(Q.dispose),Q},cancelRead:T.cancel,readSession:T.read,readInitialHistory:T.readInitialHistory,createPresentation:U=>{const{provisionalSessionId:Q,...$}=U;return Th({...$,workspaceTarget:s,selectedSessionId:j(()=>r.value??(e.draftTarget.value?.kind==="workspace"?Q.value:void 0)),selectedRunId:w.selectedRunId,runs:w.runs,turns:p.turns,attachments:i.attachments,sessionContextUsage:p.contextUsage,channelToken:p.channelToken,submissionPending:u.pending,runService:w})},createLoader:U=>{const{request:Q,sessionPathId:$,...V}=U;return kh({...V,runs:w.runs,replaceSession:(N,h)=>{const F=s.value?.nodeId;F!==void 0&&D(F,h),V.replaceSession(N,h)},readSession:(N,h)=>T.read(N,h,Q,$),readInitialHistory:(N,h)=>T.readInitialHistory(N,h,Q,$)})},registerShortcuts:Dh,createMessaging:({provisionalSessionId:U,...Q})=>lp({...Q,workspaceTarget:s,selectedSessionId:j(()=>r.value??(e.draftTarget.value?.kind==="workspace"?U.value:void 0)),attachments:i.attachments,attachmentsPending:j(()=>i.attachments.value.some($=>$.status!=="COMPLETED")),captureDraft:X,consumeAttachments:e.attachments.consume,retainAttachments:e.attachments.retainForSubmission,acceptRun:w.acceptRun,beginSubmission:u.begin,scrollToLatest:d.scrollToLatest,scrollToLatestAfterLayout:d.scrollToLatestAfterLayout}),createInteractions:U=>sp({...U,input:l.input,editRange:(Q,$,V)=>a(Q,$,V),handleConversationScroll:Q=>d.handleScroll(()=>{U.canLoadOlder()&&Q()}),scrollToLatest:d.scrollToLatest,scrollToLatestAfterLayout:d.scrollToLatestAfterLayout}),createWatch:U=>ip({...U,workspaceTarget:s,selectedSessionId:r,followConversation:d.following,scrollAfterLayout:d.scrollToLatestAfterLayout,applyRunsSnapshot:Q=>{const $=Q;w.mergeAuthoritativeSnapshot($,[...w.runs.value]);const V=$.find(N=>N.sessionId===r.value&&["STARTING","RUNNING","CANCELLING"].includes(N.status));V!==void 0&&U.openRun(V.id)}}),createQueueActions:U=>rp({...U,workspaceTarget:s,selectedSessionId:r,draggingQueueItemId:E.draggingQueueItemId,editingContent:E.editingContent,serializeEditedContent:E.serializeEditedContent,finishEditing:E.finishEditing,captureEditing:Q=>{const $=e.draftTarget.value,V=$===void 0?void 0:e.drafts.forTarget($,e.pane),N=V?.queueEdit.value;return()=>{V===void 0||N?.queueItemId!==Q||V.queueEdit.value!==N||(V.queueEdit.value=void 0,V.persist())}}}),projectQueue:U=>j(()=>({...U.value,items:r.value===void 0?[]:U.value.items.filter(Q=>Q.sessionId===r.value)})),createApprovals:U=>op({...U,workspaceTarget:s}),createConfiguration:U=>{const{sessions:Q,provisionalSessionId:$,...V}=U,N=j(()=>{const h=r.value??(e.draftTarget.value?.kind==="workspace"?$?.value:void 0);return Q.value.find(F=>F.id===h&&F.workspaceId===s.value?.workspaceId)??y.value});return{selectedSession:N,...yh({...V,selectedSession:N})}},createRunnerInteraction:U=>ap({...U,input:l.input,draftSessionOpen:j(()=>e.draftTarget.value?.kind==="workspace")}),createUserInput:U=>np({...U,workspaceTarget:s}),createRealtime:U=>fh({...U,workspaceTarget:s,selectedSessionId:r,selectedRunId:w.selectedRunId,runs:w.runs,channelToken:p.channelToken}),createRunnerChannel:U=>ph({...U,workspaceTarget:s,token:p.channelToken,input:p.channelInput,currentRevision:p.currentDetailRequest}),createPlan:U=>gh({...U,workspaceTarget:s,selectedSessionId:r,input:l.input,beginSubmission:u.begin,currentRevision:p.currentDetailRequest}),createContextCommands:U=>mh({...U,workspaceTarget:s,beginSubmission:u.begin,currentRevision:p.currentDetailRequest}),createHistoryMutation:U=>{const{selectedSession:Q,onDraftFilled:$,...V}=U;return hh({...V,current:()=>{const N=s.value,h=Q.value;return t?.active===!1||N===void 0||h===void 0||h.id!==r.value||h.workspaceId!==N.workspaceId?void 0:{nodeId:N.nodeId,session:h}},currentRevision:p.currentDetailRequest,beginSubmission:N=>u.begin(N,void 0,null),draft:{read:()=>l.input.value,restore:N=>{l.input.value=N},fill:(N,h)=>{l.input.value=N,$(N,h)}}})},createRunControl:U=>tp({...U,workspaceTarget:s,selectedSessionId:r,selectedRunId:w.selectedRunId,runService:w,currentRevision:p.currentDetailRequest}),createConversationWindow:U=>Nh({...U,workspaceTarget:s,selectedSessionId:r,turns:p.turns,nextCursor:p.nextCursor,loadingOlder:p.loadingOlder,capturePrependAnchor:d.capturePrependAnchor,projection:p.projection}),draggingAttachments:x(!1),captureDetail:g,restoreDetail:R,saveCachedSession:S,restoreCachedSession:m,prepareSession:L,hasContent:()=>p.turns.value.some(U=>U.items.length>0),queue:E,submission:u,scroll:d,setInputFocus:U=>n=U,focusInput:U=>n(U),setRangeEditor:U=>a=U,editRange:(U,Q,$)=>a(U,Q,$)}}function Es(e){const{state:t}=e,n=x(!1),a=x(!1),r=x(!1),s=x();let i;const l=j(()=>t.conversation.loadingInitial.value||a.value),v=e.secondary===void 0?{...e.position,loading:l,initialContentLoading:()=>i?.loadingContent.value??t.conversation.loadingInitial.value}:{provisionalSessionId:s,draftOpen:r,loading:l,initialContentLoading:()=>n.value};function u(){const pe=e.watchConnection.coordinator();e.secondary===void 0?pe?.stopSession():pe?.stopSecondarySession()}async function d(pe){const Ce=e.watchConnection.coordinator();return Ce===void 0?!1:(await(e.secondary===void 0?Ce.beginSession(pe):Ce.beginSecondarySession(pe)),!0)}function w(){return(e.secondary===void 0?e.view.value==="nodes":e.secondary.visible.value)&&(typeof document>"u"||document.visibilityState==="visible")}function k(){const pe=e.secondary?.target.value;pe?.kind!=="session"||!w()||v.draftOpen.value||Promise.resolve(e.watchConnection.coordinator()?.restartSecondarySession(pe.sessionId)).catch(()=>{})}const T=e.discovery.projection.sessions,p={connected:e.watchConnection.connected,nodes:e.capabilities.nodes,nodeManifest:e.capabilities.manifest,manifestLoading:e.capabilities.manifestLoading,skillsLoading:e.skills.loading,skillsFailed:e.skills.failed,promptsLoading:e.prompts.loading,promptsFailed:e.prompts.failed,runnerProfilesLoading:e.profiles.loading,runnerProfilesFailed:e.profiles.failed,shouldDisplayItem:th,formatTokenCount:Uf,formatPercentage:Ff},g={...p,...v,sessions:T},R={...p,initialContentLoading:v.initialContentLoading};function b(pe,Ce,je,ze){const vt=e.secondary,Rt=vt?.target.value;if(vt===void 0||Rt?.kind!=="session"||Rt.nodeId!==pe||Rt.workspaceId!==Ce||Rt.sessionId!==je||ze.workspaceId!==Ce)return;const ht=T.value.some(Qt=>Qt.id===je&&Qt.workspaceId===Ce);je!==ze.id&&(ht||e.identity.transfer(pe,Ce,je,ze.id),!vt.replaceAsideSession(Rt,ze.id))||(t.acceptResolvedSession(pe,ze),ht&&e.identity.replace(pe,Ce,je,ze))}function C(pe,Ce){const je=e.secondary?.target.value;je?.kind==="session"&&b(je.nodeId,je.workspaceId,pe,Ce)}function I(pe){const Ce=t.workspaceTarget.value;if(Ce===void 0)return;if(e.secondary!==void 0)return t.sessionId.value===pe?Ce:void 0;const je=T.value.find(ze=>ze.id===pe);return je===void 0?void 0:{nodeId:Ce.nodeId,workspaceId:je.workspaceId}}const S=t.createConfiguration({sessions:T,profiles:e.profiles.profiles,effortLabel:qi,provisionalSessionId:g.provisionalSessionId}),m=t.createRunnerInteraction({skills:e.skills.skills,quickPrompts:e.prompts.prompts,selectedSession:S.selectedSession,profile:S.profile,commandAvailable:pe=>y.canExecuteRunnerCommand(pe)});function A(){t.prepareDraft(),m.reset()}const L=t.projectQueue(t.queueProjection.queue),y=t.createPresentation({...g,selectedSession:S.selectedSession,composerProfile:S.profile,composerModels:S.models,composerAccessOptions:S.accessOptions,currentSessionQueue:L}),{currentWorkspaceRevision:D,...E}=e.queue,H={notice:E.notice,request:E.request,errorMessage:E.errorMessage,beginSubmission:t.submission.begin},X=Dl(j(()=>t.workspaceTarget.value?.nodeId),{fileAttachments:{target:j(()=>{const pe=t.workspaceTarget.value;return pe===void 0?void 0:JSON.stringify([pe.nodeId,pe.workspaceId,t.sessionId.value])}),revalidate:pe=>e.files.attachments(t.workspaceTarget.value).revalidate(pe),sourceUrl:(pe,Ce)=>e.files.attachments(t.workspaceTarget.value).sourceUrl(pe,Ce),onError:(pe,Ce)=>et(Cr(pe,Ce),"error",pe)}});He(t.conversation.turns,pe=>X.retain(pe),{immediate:!0}),Ht()!==void 0&&Zn(X.dispose);const _=nc({canAcceptFiles:()=>!0,addFiles:t.attachments.add,rejectDirectory:()=>H.notice(c("generated.workbenchNewSessionController.foldersCannotBeAttachedCompressTheFolder"),"warning"),setDragging:pe=>{t.draggingAttachments.value=pe}}),U=t.createQueueActions({...E,queue:t.queueProjection.queue,currentSessionQueue:L,currentSelectionRevision:()=>t.conversation.currentDetailRequest()+D(),beginSubmission:t.submission.begin}),Q=ah({workspaceTarget:t.workspaceTarget,configurationAvailable:()=>!y.sessionControlsBusy.value,selectedSession:S.selectedSession,sessions:T,replaceSessionProjection:e.discovery.projection.replaceExisting,profiles:e.profiles.profiles,draftOpen:g.draftOpen,loading:g.loading,runner:S.runner,modelId:S.modelId,effort:S.effort,access:S.access,setModel:S.selectModel,setEffort:S.selectEffort,setAccess:S.selectAccess,clearModelEffortSelection:S.clearModelEffortSelection,codexFastEnabled:m.codexFastEnabled,profileService:e.profiles,normalize:S.normalize,apply:S.apply,ensureDraftSupported:e.ensureDraftSupported,clearRunnerCommand:m.clearCommand,request:H.request,notice:H.notice,errorMessage:H.errorMessage,sessionPathId:e.sessionPathId}),$=j(()=>e.profiles.profiles.value.filter(pe=>pe.capabilities.includes("turn.start")).map(pe=>({value:pe.runner,label:$n(pe.runner)})));function V(pe){y.composerConfigurationDisabled.value||Q.selectEffort(pe,S.efforts.value)}function N(pe){y.composerConfigurationDisabled.value||Q.selectModel(pe,S.models.value)}function h(pe){y.composerAccessDisabled.value||Q.selectAccess(pe,S.accessOptions.value)}function F(pe){Q.selectModelEffort(pe,V,N)}const z=t.createPerformance(e.view),fe=t.createUserInput({...H,missingRunError:pe=>gt(pe)==="RUN_NOT_FOUND"}),J=t.createApprovals(H),re=t.createRunControl({...H,activeRun:y.activeComposerRun,sessionPathId:e.sessionPathId}),ge=t.createConversationWindow({pageSize:$f,recentSegmentWindowSize:xf,replaceCached:(pe,Ce,je)=>{const ze=I(pe);ze!==void 0&&e.cache.replaceTurns(ze.nodeId,ze.workspaceId,pe,Ce,je)},request:H.request,sessionPathId:e.sessionPathId,notice:H.notice,errorMessage:H.errorMessage}),ce=t.createHistoryMutation({selectedSession:S.selectedSession,canRewind:()=>y.rewindConversationEnabled.value,canRollback:()=>y.rollbackConversationEnabled.value,confirmRewind:async pe=>{try{return await _i.confirm(c(pe?"generated.workbenchPageController.createANewSessionBranchBeforeThis":"generated.workbenchPageController.createANewSessionBranchThatRetains"),c("generated.workbenchPageController.createSessionBranch"),{closeIcon:qe("close"),icon:qe("warning"),confirmButtonText:c("generated.workbenchPageController.createBranch"),cancelButtonText:c("generated.workbenchPageController.cancel"),type:"warning"}),!0}catch{return!1}},confirmRollback:async()=>{try{return await _i.confirm(c("generated.workbenchPageController.rollbackConversationWarning"),c("generated.workbenchPageController.rollbackConversation"),{closeIcon:qe("close"),icon:qe("warning"),confirmButtonText:c("generated.workbenchPageController.confirmRollbackConversation"),cancelButtonText:c("generated.workbenchPageController.cancel"),type:"warning"}),!0}catch{return!1}},request:H.request,sessionPathId:e.sessionPathId,onDraftFilled:e.history.onDraftFilled,replaceSession:e.secondary===void 0?e.history.replaceSession:C,openSession:e.history.openSession,invalidateDetail:(pe,Ce)=>e.cache.invalidateDetail(pe,Ce.workspaceId,Ce.id),clearHistory:pe=>{t.conversation.projection.clearSession(pe,t.run.runs.value.map(Ce=>Ce.id)),t.conversation.projection.restoreWindow([],null),t.run.replaceRuns([]),u()}});He(ce.pending,pe=>{a.value=pe},{flush:"sync"});async function oe(pe,Ce){const je=await ce.rewind(pe,Ce);je.status==="APPLIED"?et(c("generated.workbenchPageController.sessionBranchCreated"),"success"):je.status==="FAILED"&&et(c(je.phase==="REQUEST"?"generated.workbenchPageController.unableToCreateSessionBranch":"generated.workbenchPageController.sessionBranchCreatedButLoadFailed",{value0:H.errorMessage(je.error)}),"error",je.error)}async function P(pe,Ce){const je=await ce.rollback(pe,Ce);je.status==="FAILED"&&et(c(je.phase==="REQUEST"?"generated.workbenchPageController.unableToRollbackConversation":"generated.workbenchPageController.rollbackCompletedButLoadFailed",{value0:H.errorMessage(je.error)}),"error",je.error)}const G=t.createRunnerChannel({selectedSession:S.selectedSession,loading:g.loading,notice:H.notice,request:H.request,sessionPathId:e.sessionPathId,errorMessage:H.errorMessage}),ue=t.createRealtime({syncTurnStatus:t.conversation.projection.syncRunStatus,refreshChannelToken:G.refreshClaudeChannelToken,syncCachedRunStatus:(pe,Ce,je)=>{const ze=I(pe);ze!==void 0&&e.cache.syncRunStatus(ze.nodeId,ze.workspaceId,pe,Ce,je)}}),ne=fp({...e.events,setNodeConnection:e.capabilities.setNodeConnection,cacheQueue:e.cache.cacheQueue,mergeQueue:t.queueProjection.merge,sessions:T,workspaceTarget:t.workspaceTarget,selectedSessionId:t.sessionId,selectedSession:S.selectedSession,conversationNextCursor:t.conversation.nextCursor,mergeSessions:pe=>{const Ce=t.workspaceTarget.value?.nodeId;if(Ce!==void 0)for(const ze of pe)t.acceptResolvedSession(Ce,ze);const je=e.secondary===void 0?pe:pe.filter(ze=>T.value.some(vt=>vt.id===ze.id&&vt.workspaceId===ze.workspaceId));je.length>0&&e.discovery.merge(je)},settleSessionRuns:t.run.settleSessionRuns,observeManagedSessionActive:t.run.observeManagedSessionActive,updateContext:(pe,Ce)=>{const je=t.workspaceTarget.value;je!==void 0&&e.cache.updateContext(je.nodeId,je.workspaceId,pe,Ce),pe===t.sessionId.value&&(t.conversation.contextUsage.value=Ce)},syncTurnStatus:ue.syncConversationTurnStatus,cacheRun:pe=>{const Ce=t.workspaceTarget.value;Ce!==void 0&&e.cache.cacheRun(Ce.nodeId,pe.workspaceId??Ce.workspaceId,pe)},acceptRun:t.run.acceptRun,openRun:ue.openRun,markLiveTurn:t.conversation.projection.markLive,cacheTurn:pe=>{const Ce=t.workspaceTarget.value;Ce!==void 0&&e.cache.cacheTurn(Ce.nodeId,Ce.workspaceId,pe)},mergeTurns:t.conversation.projection.mergeLatest,applyConversationSnapshot:ge.applySnapshot,mergeItem:(pe,Ce,je,ze)=>{const vt=t.conversation.projection.mergeItem(pe,Ce,je,ze);if(vt&&pp(Ce)){const Rt=gp(Ce,t.conversation.contextUsage.value);t.conversation.contextUsage.value=Rt;const ht=t.workspaceTarget.value,Qt=t.sessionId.value;ht!==void 0&&Qt!==void 0&&e.cache.updateContext(ht.nodeId,ht.workspaceId,Qt,Rt)}return vt},mergeTextDelta:t.conversation.projection.mergeTextDelta,receivePerformance:z.receive}),M=t.createWatch({...e.watch,applyEvent:ne.apply,request:H.request,sessionPathId:e.sessionPathId,openRun:ue.openRun,applySnapshot:ge.applySnapshot});function ee(){const pe=j(()=>{const Ce=t.workspaceTarget.value,je=t.sessionId.value;return Ce===void 0||je===void 0?void 0:{...Ce,sessionId:je}});return wh({target:()=>pe.value,revision:t.conversation.currentDetailRequest,visible:w,waitReady:e.watchConnection.waitReady,begin:async Ce=>await d(Ce)&&M.hasInitialSessionSnapshot(Ce)})}function le(pe){const Ce=t.createLoader({request:H.request,sessionPathId:e.sessionPathId,applyComposerConfiguration:Q.applyConfiguration,replaceSession:e.secondary===void 0?e.messaging.replaceSession:C,markActive:pe.markActive,openRun:ue.openRun,canWatch:M.canWatchSessionHistory,beginWatch:ee(),applySnapshot:ge.applySnapshot,mergeTurns:t.conversation.projection.mergeLatest,saveCurrent:pe.saveCurrent}),je=ic({content:{hasContent:t.hasContent,openRun:ue.openRun},loading:t.conversation.loadingInitial,failed:t.conversation.initialLoadFailed,failureCause:t.conversation.initialFailureCause,positioning:t.scroll.positioningInitialConversation,beginInitialRender:t.conversation.beginInitialRender,scrollLatest:()=>{const ze=t.conversation.currentDetailRequest();return t.scroll.scrollToLatestAfterLayout(()=>t.conversation.currentDetailRequest()===ze)}});return Lh({workspaceTarget:t.workspaceTarget,sessionId:t.sessionId,currentRequest:t.conversation.currentDetailRequest,nextRequest:t.conversation.nextDetailRequest,loading:t.conversation.loadingInitial,failed:t.conversation.initialLoadFailed,hasInitialSnapshot:M.hasInitialSessionSnapshot,prepareSession:(ze,vt,Rt,ht)=>t.prepareSession(vt===void 0?void 0:{nodeId:ze,workspaceId:vt,sessionId:Rt},e.cache,t.queueProjection.restore,()=>Q.applyConfiguration(ht,!1)),resetInteraction:()=>{m.composerMode.value="message",m.selectedCommand.value=void 0,m.commandPickerOpen.value=!1},loader:Ce,renderer:je,ports:pe})}i=e.opening===void 0?void 0:le(e.opening);function Ee(pe){const Ce=()=>t.saveCachedSession(S.selectedSession.value,t.queueProjection.queue.value,e.cache,pe.maxDetails),je=t.createLoader({request:H.request,sessionPathId:e.sessionPathId,replaceSession:C,applyComposerConfiguration:Q.applyConfiguration,markActive:vt=>{const Rt=pe.target.value;Rt!==void 0&&t.acceptResolvedSession(Rt.nodeId,{...vt,activity:"MANAGED_ACTIVE"})},openRun:ue.openRun,canWatch:M.canWatchSessionHistory,beginWatch:ee(),applySnapshot:ge.applySnapshot,mergeTurns:t.conversation.projection.mergeLatest,saveCurrent:Ce});return{...Ih({target:pe.target,visible:pe.visible,loading:t.conversation.loadingInitial,loadingContent:n,failed:t.conversation.initialLoadFailed,failureCause:t.conversation.initialFailureCause,currentRequest:t.conversation.currentDetailRequest,loader:je,restore:vt=>t.restoreCachedSession(vt,e.cache,t.queueProjection.restore),save:Ce,cancel:()=>{t.cancelRead(),t.conversation.cancelInitialRender()},stopWatch:u,beginInitialRender:t.conversation.beginInitialRender,scrollElement:()=>t.scroll.element.value,scrollLatest:vt=>t.scroll.scrollToLatestAfterLayout(vt),markRead:pe.markRead}),save:Ce}}const xe=e.secondary===void 0?void 0:Ee(e.secondary),Me=vh({workspaceTarget:t.workspaceTarget,selectedSessionId:t.sessionId,currentSelectionRevision:t.conversation.currentDetailRequest,acceptRun:t.run.acceptRun,captureCacheTarget:e.cache.captureCommandTarget,request:H.request,sessionPathId:e.sessionPathId,acceptSession:(pe,Ce,je,ze,vt)=>{e.secondary!==void 0&&vt?b(pe,Ce,je,ze):e.secondary===void 0&&t.workspaceTarget.value?.nodeId===pe&&t.workspaceTarget.value.workspaceId===Ce&&(t.sessionId.value!==je||vt)?e.identity.replace(pe,Ce,je,ze):e.identity.transfer(pe,Ce,je,ze.id)},configure:Q.applyConfiguration,resetHistory:async(pe,Ce)=>{e.cache.invalidateDetail(pe,Ce.workspaceId,Ce.id),t.conversation.projection.clearSession(Ce.id,t.run.runs.value.map(je=>je.id)),t.conversation.projection.restoreWindow([],null),t.run.replaceRuns([]),u(),await e.commands.reopen(Ce.id)},openRun:ue.openRun,notifyGoalAlreadyActive:()=>et(c("goal.alreadyActive"),"info")}),Se=(pe,Ce,je)=>Me.execute(pe,Ce.id,je,Ce.interaction==="DESTRUCTIVE_ACTION"),ye=t.createMessaging({removeSessionExact:e.discovery.projection.removeExact,...e.messaging,sessions:T,migrateSessionCache:(pe,Ce,je,ze,vt)=>{e.identity.transfer(pe,Ce,je,ze),e.cache.migrateSession(pe,Ce,je,ze,vt)},cacheRun:e.cache.cacheRun,replaceSession:e.secondary===void 0?e.messaging.replaceSession:C,provisionalSessionId:j(()=>{const pe=g.provisionalSessionId.value;return pe?.startsWith("draft:")?pe:void 0}),selectedSession:S.selectedSession,composerOpen:y.composerSessionOpen,composerBusy:y.composerSessionBusy,commandAvailable:y.canExecuteRunnerCommand,submissionAvailable:()=>!g.loading.value,draftOpen:g.draftOpen,selectedCommand:m.selectedCommand,commandPickerOpen:m.commandPickerOpen,deferredCommands:m.deferredDraftCommands,fastEnabled:m.codexFastEnabled,notice:H.notice,request:H.request,stageDraftCommand:(pe,Ce)=>{const je=m.prepareDraftCommand(pe,Ce);je.goalAlreadyActive?et(c("goal.alreadyActive"),"info"):je.access!==void 0&&S.selectAccess(je.access)},executeCommand:Se,sessionPathId:e.sessionPathId,openRun:ue.openRun,errorMessage:H.errorMessage}),Fe=(pe,Ce=!1,je)=>ye.send(pe,Ce,je),Ye=pe=>nh({item:pe,turns:y.displayedConversationTurns.value,commandStates:S.selectedSession.value?.commandStates,steering:y.mustSteerCurrentTurn.value,canStartTurn:y.canStartTurn.value}),nt=j(()=>y.mustSteerCurrentTurn.value?void 0:S.selectedSession.value?.commandStates?.filter(pe=>pe.active&&pe.continuation!==null&&pe.continuation!==void 0).map(Fl)[0]),ae=j(()=>S.selectedSession.value?.commandStates?.find(pe=>pe.commandId==="goal"&&pe.active&&pe.goal?.status==="active")),me=t.createPlan({selectedSession:S.selectedSession,selectedCommand:m.selectedCommand,commandPickerOpen:m.commandPickerOpen,notice:H.notice,continuationFor:Ye,execute:Me.execute,send:Fe,errorMessage:H.errorMessage}),Pe=t.createContextCommands({selectedSession:S.selectedSession,compactCommand:y.compactCommand,canCompact:y.canCompactContext,contextUsageLabel:y.contextUsageLabel,notice:H.notice,request:H.request,execute:Se,errorMessage:H.errorMessage}),Ue=j(()=>y.nodeReady.value&&g.nodeManifest.value?.files?.available===!0),Qe=t.createReferences({request:H.request,ready:()=>Ue.value,sessionsReady:()=>y.nodeReady.value}),Te=j(()=>t.sessionId.value??g.provisionalSessionId.value),Ge=j(()=>!!(e.completion.automaticSupported()&&t.sessionId.value&&!t.conversation.loadingInitial.value&&!t.conversation.initialLoadFailed.value)),_e=e.completion.client.bind({automaticKey:()=>Ge.value?hp(t.conversation.turns.value):void 0,automaticTerminalKey:()=>Ge.value?mp(t.conversation.turns.value):void 0,readContextRevision:()=>{const pe=t.conversation.turns.value.at(-1);return JSON.stringify([pe?.status,pe?.items.length,pe?.items.slice(-32).map(Ce=>[Ce.id,Ce.status,Ce.completedAt]),t.queueProjection.queue.value.version,S.selectedSession.value?.commandStates?.map(Ce=>[Ce.commandId,Ce.active,Ce.detail,Ce.goal?.id,Ce.goal?.revision,Ce.goal?.status]),e.completion.attention()])},attention:e.completion.attention,enabled:e.completion.enabled,target:()=>{const pe=t.workspaceTarget.value;return pe===void 0?void 0:{nodeId:pe.nodeId,target:{kind:"WORKSPACE",workspaceId:pe.workspaceId},runner:S.runner.value,sessionId:t.sessionId.value??null}}}),tt=j(()=>t.run.runs.value.filter(pe=>pe.sessionId===Te.value)),Xe=j(()=>{const pe=S.selectedSession.value;return pe!==void 0&&!t.conversation.initialLoadFailed.value&&M.canWatchSessionHistory(pe)&&!M.hasInitialSessionSnapshot(pe.id)}),Re=j(()=>t.submission.pending.value&&t.submission.context.value===yp(Te.value)),de=j(()=>y.canInterruptTurn.value&&!Re.value),Ae=(pe,Ce)=>{t.skillTokens.select(pe),t.focusInput(Ce)},he=t.createInteractions({mobileViewport:e.mobileViewport,runnerProfilesLoading:e.profiles.loading,runnerProfilesFailed:e.profiles.failed,hasRunnerProfile:e.profiles.has,ensureComposerSkills:e.skills.ensureFresh,ensureQuickPrompts:()=>{e.prompts.refresh()},workspaceTarget:t.workspaceTarget,filesReady:Ue,canInterruptTurn:de,commandPickerOpen:m.commandPickerOpen,fileReferences:Qe,runnerInteractions:m,selectSkill:Ae,stopActiveRun:re.stopActiveRun,sendMessage:(pe,Ce,je)=>{Fe(pe?"REPLACE_CURRENT":void 0,Ce,je)},loadRunnerProfiles:Q.loadProfiles,loadOlderConversationTurns:ge.paging.loadOlderConversationTurns,canLoadOlder:()=>!ge.paging.olderHistoryError.value});function q(pe){m.selectCommand(pe,Ce=>{Fe(void 0,Ce)})}function te(pe){m.selectSkill(pe,Ae)}function Y(pe){m.closeCommandState(pe,(Ce,je)=>{ye.send(void 0,!0,void 0,{command:Ce,input:je})})}async function se(pe){const Ce=S.selectedSession.value;Ce!==void 0&&pe.trim().length>0&&await Me.execute(Ce,"goal",`/goal ${pe.trim()}`)}async function be(){const pe=S.selectedSession.value;pe!==void 0&&await Me.execute(pe,"goal","/goal --clear")}function Oe(pe){const Ce=t.workspaceTarget.value,je=t.sessionId.value;if(Ce===void 0||je===void 0||!y.nodeReady.value)return;const ze=Dr(pe,{...Ce,sessionId:je,scope:"SESSION"});ze!==void 0&&e.files.openChange(ze)}function We(pe,Ce,je,ze=!1,vt){if(!ze&&vt?.mime.startsWith("image/")){X.openFileAttachment(vt);return}e.files.openFile(pe,Ce,je,ze)}const Ie={state:t,opening:i,secondary:xe,configuration:S,runner:m,presentation:y,references:Qe,interactions:he,attachmentInput:_,images:X,completion:_e,events:ne,submitting:Re,canInterrupt:de,filesReady:Ue,status:R,copyMessage:(pe,Ce)=>ac(pe,Ce,H.notice),openFileChange:Oe,openAgentFile:We,terminalReady:j(()=>y.nodeReady.value&&g.nodeManifest.value?.terminal?.available===!0&&g.nodeManifest.value.terminal.supportsReplay===!0),effortLabel:qi,request:H.request,loading:g.loading,draftOpen:g.draftOpen,nodeManifest:g.nodeManifest,runnerProfilesLoading:g.runnerProfilesLoading,runnerProfilesFailed:g.runnerProfilesFailed,mobileViewport:e.mobileViewport,selectedWorkspace:e.messaging.selectedWorkspace,selectedSessionId:Te,conversationRuns:tt,conversationSyncPending:Xe,composer:Q,runnerOptions:$,selectEffort:V,selectModel:N,selectAccess:h,selectModelEffort:F,currentSessionQueue:L,queueActions:U,performance:z,userInput:fe,approvals:J,runControl:re,conversationWindow:ge,history:ce,rewindConversation:oe,rollbackConversation:P,channel:G,realtime:ue,watch:M,commands:Me,messaging:ye,sendMessage:Fe,plan:me,context:Pe,activePlanContinuation:nt,activeGoal:ae,selectCommand:q,selectSkill:te,selectQuickPrompt:he.selectQuickPrompt,closeCommandState:Y,editGoal:se,clearGoal:be},st={imageResourceUrl:j(()=>{const pe=t.workspaceTarget.value;if(pe===void 0)return;const Ce=e.files.attachments(pe);return je=>Ce.sourceUrl({path:je})}),state:{attachments:t.attachments,conversation:t.conversation,draft:t.draft,draggingAttachments:t.draggingAttachments,queue:t.queue,registerShortcuts:t.registerShortcuts,scroll:t.scroll,setInputFocus:t.setInputFocus,setRangeEditor:t.setRangeEditor,skillTokens:t.skillTokens,workspaceTarget:t.workspaceTarget},activeGoal:Ie.activeGoal,activePlanContinuation:Ie.activePlanContinuation,approvals:Ie.approvals,attachmentInput:Ie.attachmentInput,canInterrupt:Ie.canInterrupt,clearGoal:Ie.clearGoal,closeCommandState:Ie.closeCommandState,completion:Ie.completion,composer:Ie.composer,configuration:Ie.configuration,context:Ie.context,conversationRuns:Ie.conversationRuns,conversationSyncPending:Ie.conversationSyncPending,conversationWindow:Ie.conversationWindow,copyMessage:Ie.copyMessage,currentSessionQueue:Ie.currentSessionQueue,draftOpen:Ie.draftOpen,editGoal:Ie.editGoal,effortLabel:Ie.effortLabel,filesReady:Ie.filesReady,images:Ie.images,interactions:Ie.interactions,loading:Ie.loading,mobileViewport:Ie.mobileViewport,nodeManifest:Ie.nodeManifest,openAgentFile:Ie.openAgentFile,openFileChange:Ie.openFileChange,performance:Ie.performance,plan:Ie.plan,presentation:Ie.presentation,queueActions:Ie.queueActions,references:Ie.references,rewindConversation:Ie.rewindConversation,rollbackConversation:Ie.rollbackConversation,runControl:Ie.runControl,runner:Ie.runner,runnerOptions:Ie.runnerOptions,runnerProfilesFailed:Ie.runnerProfilesFailed,runnerProfilesLoading:Ie.runnerProfilesLoading,selectAccess:Ie.selectAccess,selectCommand:Ie.selectCommand,selectModelEffort:Ie.selectModelEffort,selectQuickPrompt:Ie.selectQuickPrompt,selectSkill:Ie.selectSkill,selectedSessionId:Ie.selectedSessionId,selectedWorkspace:Ie.selectedWorkspace,sendMessage:Ie.sendMessage,status:Ie.status,submitting:Ie.submitting,terminalReady:Ie.terminalReady,userInput:Ie.userInput};return{...Ie,view:st,prepareDraft:A,restoreVisibleWatch:k,focusDraft:()=>t.focusInput(t.draft.input.value.length)}}function Lh(e){const t=Ht(),{loader:n,renderer:a,ports:r}=e;let s;const i=(u,d,w,k)=>(t===void 0||t.active)&&u===e.currentRequest()&&e.workspaceTarget.value?.nodeId===d&&(k===void 0||e.workspaceTarget.value.workspaceId===k)&&e.sessionId.value===w;async function l(u,d={}){const w=e.workspaceTarget.value?.nodeId,k=e.workspaceTarget.value?.workspaceId;if(w===void 0)return;const T={requestId:e.nextRequest(),preparing:!0,nodeId:w,workspaceId:k,sessionId:u,markRead:!1};s=T,a.begin();const{switching:p,session:g}=r.navigate(u,w,d);let R=!1,b;if(p){e.resetInteraction(),r.setSession(void 0);const S=e.prepareSession(w,k,u,g);R=S.restored,b=S.activeRunId}if(r.setSession(u),T.preparing=!1,s!==T)return;if(e.workspaceTarget.value?.nodeId!==w||e.sessionId.value!==u){s=void 0;return}const C=e.currentRequest();T.requestId=C;const I=e.workspaceTarget.value.workspaceId;await a.openRestored({loader:n,nodeId:w,workspaceId:I,sessionId:u,requestId:C,switching:p,restored:R,activeRunId:b,deferInitialScroll:d.deferInitialScroll===!0,throwOnFailure:d.throwOnFailure===!0,isCurrent:()=>i(C,w,u,I),onResolved:S=>{T.session=S,d.onSessionResolved?.(S),T.onSessionResolved?.(S),delete T.onSessionResolved},onSettle:()=>{s===T&&(s=void 0)},onLoaded:S=>{I!==void 0&&(d.markReadAfterOpen||T.markRead)&&S.workspaceId===k&&i(C,w,u,k)&&Promise.resolve(r.markRead(w,k,S.id)).catch(()=>{})}})}async function v(u,d){const w=e.workspaceTarget.value;if(w!==void 0){if(e.sessionId.value===u&&!r.draftOpen.value){if(r.closeMobile(),e.loading.value){(s?.preparing===!0||s?.requestId===e.currentRequest())&&s.nodeId===w.nodeId&&s.workspaceId===w.workspaceId&&s.sessionId===u&&(d!==void 0&&(s.session!==void 0?d(s.session):s.onSessionResolved=d),s.markRead=!0);return}if(!e.failed.value&&e.hasInitialSnapshot(u)){const k=r.sessions.value.find(T=>T.id===u&&T.workspaceId===w.workspaceId);if(k===void 0&&d!==void 0){await l(u,{markReadAfterOpen:!0,onSessionResolved:d});return}k!==void 0&&d?.(k),Promise.resolve(r.markRead(w.nodeId,w.workspaceId,u)).catch(()=>{});return}}await l(u,{markReadAfterOpen:!0,...d===void 0?{}:{onSessionResolved:d}})}}return{open:l,openTab:v,loadingContent:a.loadingContent}}function Rs(e){const t=Oh(e);let n;function a(r,s){const i={client:r.completion.client,enabled:()=>r.completion.enabled.value&&r.completion.ready.value&&r.completion.host.value?.capabilities.promptCompletion?.apiVersion===1&&r.completion.host.value?.capabilities.promptCompletion?.contextVersion===3,automaticSupported:()=>r.completion.host.value?.capabilities.promptCompletion?.automaticTriggers===!0,attention:()=>r.completion.host.value?.capabilities.promptCompletion?.contextVersion===3?r.completion.attention():[]},l={heartbeatMs:15e3,requestTimeoutMs:1e4,confirmationTimeoutMs:45e3,enabled:()=>s.visible.value,workbenchConnectionId:r.connectionId,refreshSnapshot:s.refresh,openSession:s.open},v={currentWorkspaceRevision:r.workspaceRevision,request:r.request,notice:r.notice,errorMessage:r.errorMessage,missingQueueItemError:d=>gt(d)==="QUEUE_ITEM_INVALID"},u={...r,watchConnection:{...r.watchConnection,coordinator:()=>n},completion:i,state:t,queue:v,sessionPathId:Zo};return s.kind==="main"?(He(s.visible,d=>{if(!d){n?.stopSession();return}const w=s.selection.sessionId.value;r.view.value==="nodes"&&t.workspaceTarget.value!==void 0&&!t.conversation.loadingInitial.value&&!s.selection.draftOpen.value&&w!==void 0&&(typeof document>"u"||document.visibilityState==="visible")&&Promise.resolve(n?.restartSession(w)).catch(()=>{})},{flush:"sync"}),Es({...u,opening:{navigate:(...d)=>s.navigation().prepareTarget(...d),setSession:s.selection.setSession,sessions:r.discovery.projection.sessions,draftOpen:s.selection.draftOpen,closeMobile:s.closeMobile,saveCurrent:s.saveCurrent,markActive:r.discovery.markManagedActive,markRead:s.markRead},position:{provisionalSessionId:s.selection.sessionId,draftOpen:s.selection.draftOpen},watch:l,commands:{reopen:d=>s.open(d,{preserveMobileWorkspaceSurface:!0,deferInitialScroll:!0})},messaging:{selectedWorkspace:r.selectedWorkspace,draft:{restore:()=>s.navigation().restoreDraftSelection(),create:s.createDraft},replaceSession:s.replaceSession,temporaryTitle:Ki,beginSessionWatch:s.beginWatch},history:{onDraftFilled:(d,w)=>{w==="rollback"&&s.saveCurrent(),t.focusInput(d.length)},replaceSession:s.replaceSession,openSession:(d,w)=>s.open(d,{...w,throwOnFailure:!0})}})):Es({...u,secondary:{target:s.target,visible:s.visible,maxDetails:5,markRead:s.markRead,replaceAsideSession:s.replaceSession},watch:{...l,position:"secondary"},commands:{reopen:s.open},messaging:{selectedWorkspace:r.selectedWorkspace,temporaryTitle:Ki,beginSessionWatch:d=>{n?.restartSecondarySession(d)}},history:{onDraftFilled:d=>{t.draft.persist(),t.focusInput(d.length)},openSession:s.open}})}return{state:t,connect:a,connectWatchCoordinator:r=>{n=r}}}function Wh(e){const t=x([]),n=x(""),a=x([]),r=x(),s=x(!1),i=x({}),l=new Map,v=new Map;let u=0,d=0;function w(E,H){i.value={...i.value,[E]:H},t.value=t.value.map(X=>X.id===E?{...X,upgradeProgress:H}:X)}function k(E){t.value=t.value.map(H=>H.id===E.id?E:H)}function T(E){t.value=t.value.filter(H=>H.id!==E)}function p(E,H){const X=t.value.some(_=>_.id===E&&_.connected);return t.value=t.value.map(_=>_.id===E?{..._,connected:H}:_),X}function g(E){a.value=[...E]}function R(){i.value={}}function b(){t.value=[],n.value="",R()}function C(E){return l.get(E)}function I(E){l.delete(E),e.workspaceTarget.value?.nodeId===E&&(r.value=void 0)}function S(E){v.delete(E),I(E),e.workspaceTarget.value?.nodeId===E&&(s.value=!1)}function m(E){for(const H of new Set([...l.keys(),...v.keys()]))E.has(H)||(l.delete(H),v.delete(H))}async function A(){const E=++d;try{const H=(await e.request("/api/nodes")).nodes;if(E!==d)return;const X=new Set(t.value.filter(_=>!_.connected).map(_=>_.id));t.value=H;for(const _ of H)_.connected&&X.has(_.id)&&e.onNodeConnected?.(_.id)}catch(H){if(E!==d)return;e.notice(c("generated.workbenchCapabilityService.unableToLoadNodes",{value0:e.errorMessage(H)}),"error",H)}}async function L(){try{const E=await e.request("/api/workbench-capabilities");n.value=typeof E.serverVersion=="string"&&E.serverVersion.length>0?`v${E.serverVersion.replace(/^v/i,"")}`:""}catch{n.value=""}}async function y(E){const H=++u;v.set(E,H);const X=()=>v.get(E)===H;e.workspaceTarget.value?.nodeId===E&&(s.value=r.value===void 0);try{const _=await e.request(`/api/nodes/${encodeURIComponent(E)}/workbench-capabilities`);X()&&(l.set(E,_.manifest),e.workspaceTarget.value?.nodeId===E&&(r.value=_.manifest))}catch{X()&&I(E)}finally{X()&&e.workspaceTarget.value?.nodeId===E&&(s.value=!1)}}function D(E){r.value=E===void 0?void 0:C(E),s.value=E!==void 0&&r.value===void 0}return{nodes:j(()=>t.value),serverVersion:j(()=>n.value),workspaces:j(()=>a.value),replaceNode:k,removeNode:T,setNodeConnection:p,replaceWorkspaces:g,manifest:j(()=>r.value),manifestLoading:j(()=>s.value),upgradeProgress:j(()=>i.value),applyUpgrade:w,clearUpgradeProgress:R,resetResources:b,selectNode:D,refreshNodes:A,refreshServerCapabilities:L,refreshNodeManifest:y,restoreNodeManifest:C,invalidateNodeManifest:S,retainNodeManifests:m}}function Mh(e){const t=e.host,n=e.manifest,a=e.loading;return j(()=>{if(t.value===void 0)return c("generated.workbenchPageController.noNodeSelected");if(t.value.disabled)return c("generated.workbenchPageController.theNodeIsDisabledOnlyTheCurrent");if(!t.value.connected)return c("generated.workbenchPageController.theNodeIsOfflineLoadedContentIs");if(!a.value){if(n.value===void 0)return c("generated.workbenchPageController.nodeWorkbenchCapabilitiesAreUnknownTheWorkspace");if(n.value.manifestVersion!==1||!n.value.conversation.available)return c("generated.workbenchPageController.nodeWorkbenchCapabilitiesAreUnavailable",{value0:n.value.conversation.reasonCode??"INCOMPATIBLE_VERSION"})}})}function xh(e){const t=window.matchMedia(zi).matches,n=x(e.initialView),a=x(e.initialSettingsSection),r=x(e.initialManagementSection),s=x(t),i=x(t),l=x(!1),v=x("conversation"),u=x();let d;function w(A,L=!1){const y=zf({mobileViewport:s.value,sidebarCollapsed:i.value,mobileSidebarOpen:l.value,mobileWorkspaceSurface:v.value},A,L);(L||A!==s.value)&&(u.value=void 0),s.value=y.mobileViewport,i.value=y.sidebarCollapsed,l.value=y.mobileSidebarOpen,v.value=y.mobileWorkspaceSurface}function k(A){w(A.matches)}function T(){d===void 0&&(d=window.matchMedia(zi),w(d.matches,!0),d.addEventListener("change",k))}function p(){d?.removeEventListener("change",k),d=void 0}function g(){v.value="conversation"}function R(){u.value=void 0,s.value&&(l.value=!1)}function b(A,L){if(L==="preserve-layout"){n.value=A;return}if(u.value=void 0,n.value=A,s.value){g(),l.value=e.opensMobileSidebar(A);return}i.value=!1}function C(A){a.value=A,R()}function I(A){r.value=A,R()}function S(A){s.value&&(u.value=void 0,R(),v.value=A)}function m(A){if(!s.value)return;const L=u.value!==void 0;if(u.value=A,A===void 0){L&&R();return}l.value=!0,g()}return{view:n,settingsSection:a,managementSection:r,mobileViewport:s,sidebarCollapsed:i,mobileSidebarOpen:l,mobileWorkspaceSurface:v,mobileUtilityPanel:u,start:T,dispose:p,selectView:b,closeMobileSidebar:R,selectSettings:C,selectManagement:I,openMobileWorkspaceSurface:S,closeMobileWorkspaceSurface:g,selectMobileUtilityPanel:m}}function $h(e){const t=e.navigation,{view:n,managementSection:a,mobileViewport:r,mobileSidebarOpen:s,mobileUtilityPanel:i,mobileWorkspaceSurface:l,sidebarCollapsed:v,closeMobileSidebar:u,closeMobileWorkspaceSurface:d,openMobileWorkspaceSurface:w,selectView:k}=t,T=e.management,p=e.admin,g=x(!1),R=x(!1);He(r,D=>{D||(g.value=!1,R.value=!1)});const b=j(()=>[{id:"nodes",label:c("navigation.nodes"),icon:"◫"},{id:"conversations",label:c("navigation.conversations"),icon:"◉"},{id:"management",label:c("navigation.management"),icon:"☷"},{id:"settings",label:c("navigation.settings"),icon:"⚙"}]),C=j(()=>!v.value||s.value),I=j(()=>[{id:"account",label:c("navigation.account")},{id:"usage",label:c("usageStatistics.title")},{id:"appearance",label:c("settings.appearance")},{id:"custom-themes",label:c("customThemes.title")},{id:"notifications",label:c("workbenchNotificationCenter.systemNotifications.title")},{id:"quick-prompts",label:c("quickPrompts.title")},{id:"personal-instructions",label:c("navigation.personalInstructions")},{id:"git",label:c("personalGit.title")},{id:"shortcuts",label:c("navigation.shortcuts")},{id:"about",label:c("navigation.about")}]),S=j(()=>T.items(p.value).map(({id:D,labelKey:E})=>({id:D,label:c(E)})));function m(D){const E=n.value;R.value=!1;const H=r.value&&E===D&&s.value&&i.value===void 0;if(r.value&&D==="conversations"){const X=g.value;if(g.value=E===D&&!X,E===D){t.selectMobileUtilityPanel(void 0),u(),d();return}}else g.value=!1;D==="management"&&!S.value.some(X=>X.id===a.value)&&(a.value=S.value[0]?.id??e.defaultManagement),k(D),(H||r.value&&E!==D&&(D==="nodes"||D==="conversations"))&&u(),E!==D&&(D==="nodes"||D==="conversations")&&e.recoverNotifications().catch(()=>{}),e.transition(E,D)}function A(){g.value=!1}function L(){R.value=!1}function y(D){r.value&&(D!==void 0&&(A(),L()),t.selectMobileUtilityPanel(D))}return{navigationItems:b,settingsItems:I,managementItems:S,selectNavigation:m,selectMobileUtilityPanel:y,hostedConversationMobileFilesOpen:R,hostedConversationMobileHistoryOpen:g,closeHostedConversationMobileHistory:A,closeHostedConversationMobileFiles:L,layoutView:Et({mobileViewport:r,mobileSidebarOpen:s,mobileUtilityPanel:i,mobileWorkspaceSurface:l,closeMobileSidebar:u,closeMobileWorkspaceSurface:d,openMobileWorkspaceSurface:w,selectMobileUtilityPanel:y,sidebarCollapsed:v,sidebarContentVisible:C,panelWidths:e.layout.panelWidths,setPanelWidth:e.layout.setPanelWidth})}}function Mn(){return typeof navigator<"u"&&(/Android|iPhone|iPad|iPod/iu.test(navigator.userAgent)||navigator.platform==="MacIntel"&&navigator.maxTouchPoints>1)}function Fh(){let e;function t(){return e??=new Promise((a,r)=>{const s=indexedDB.open("mar.web-push.v1",1);s.onupgradeneeded=()=>s.result.createObjectStore("bindings"),s.onsuccess=()=>a(s.result),s.onerror=()=>r(s.error),s.onblocked=()=>r(new Error("WEB_PUSH_STORAGE_UNAVAILABLE"))}),e}async function n(a,r){const s=await t();await new Promise((i,l)=>{const v=s.transaction("bindings","readwrite"),u=v.objectStore("bindings");r===void 0?u.delete(a):u.put(r,a),v.oncomplete=()=>i(),v.onabort=()=>l(v.error),v.onerror=()=>l(v.error)})}return{async read(){const a=await t();return new Promise((r,s)=>{const i=a.transaction("bindings").objectStore("bindings").get("client");i.onsuccess=()=>r(i.result),i.onerror=()=>s(i.error)})},write:a=>n("client",a),display:a=>n("display",a),locked:async a=>await navigator.locks.request("mar.web-push.v1",a)}}function Uh(e,t,n=Fh()){const a=x("loading");let r,s,i=null,l=0;const v=x(!1);function u(){return t!==void 0&&globalThis.isSecureContext===!0&&typeof PushManager<"u"&&typeof indexedDB<"u"&&typeof navigator<"u"&&navigator.locks!==void 0&&"serviceWorker"in navigator}const d=(m,A)=>m===l&&e.value===A;function w(m){return Uint8Array.from(atob(m.replaceAll("-","+").replaceAll("_","/")),A=>A.charCodeAt(0))}function k(m){const A=m.toJSON();if(A.endpoint===void 0||A.keys?.p256dh===void 0||A.keys.auth===void 0)throw new Error("WEB_PUSH_SUBSCRIPTION_INVALID");return{endpoint:A.endpoint,expirationTime:A.expirationTime??null,keys:{p256dh:A.keys.p256dh,auth:A.keys.auth}}}async function T(m,A){let L=m.binding;L===void 0&&(L=(await t("/api/notifications/push/clients/resolve",{method:"POST",body:JSON.stringify({clientToken:m.request.clientToken,expectedAccount:A})})).binding??void 0);const{bindingVersion:y,...D}=m.request,E={account:m.account,request:{...D,enabled:!1,...L===void 0?{}:{bindingVersion:L.bindingVersion}}};await n.write(E);const H=await t("/api/notifications/push/clients",{method:"POST",body:JSON.stringify({...E.request,expectedAccount:A})});await n.write({...E,binding:H})}async function p(m,A,L,y,D){await n.locked(async()=>{if(!d(y,m))return;const E=await n.read();if(!d(y,m))return;if(!D&&(E?.request.enabled===!1||E?.binding?.enabled===!1)){await n.display(void 0),d(y,m)&&(a.value="actionRequired");return}const H=k(A);if(E!==void 0&&E.request.subscription.endpoint!==H.endpoint&&!D)throw new Error("WEB_PUSH_SUBSCRIPTION_CHANGED");if(E!==void 0&&E.account!==m&&!D)throw new Error("WEB_PUSH_ACCOUNT_CHANGED");const X=E?.request.clientToken??btoa(String.fromCharCode(...crypto.getRandomValues(new Uint8Array(32)))).replaceAll("+","-").replaceAll("/","_").replaceAll("=","");let _={account:m,request:{clientKind:"mobile",clientToken:X,subscription:H,enabled:L,...E?.binding===void 0?E?.request.bindingVersion===void 0?{}:{bindingVersion:E.request.bindingVersion}:{bindingVersion:E.binding.bindingVersion}}};if(await n.display(void 0),await n.write(_),!d(y,m))return;const U=()=>t("/api/notifications/push/clients",{method:"POST",body:JSON.stringify({..._.request,expectedAccount:m})});let Q;try{Q=await U()}catch($){if(!D||!d(y,m)||!($ instanceof jt)||$.code!=="WEB_PUSH_BINDING_STALE")throw $;const V=await t("/api/notifications/push/clients/resolve",{method:"POST",body:JSON.stringify({clientToken:_.request.clientToken,expectedAccount:m})});if(!d(y,m))return;if(V.binding!==null)throw await n.write({..._,binding:V.binding}),$;const{bindingVersion:N,...h}=_.request;if(_={account:m,request:h},await n.write(_),!d(y,m))return;Q=await U()}if(Q.account!==m)throw new Error("WEB_PUSH_ACCOUNT_CHANGED");await n.write({..._,binding:Q}),Q.enabled&&L&&d(y,m)&&await n.display({...Q,account:m}),d(y,m)||await n.display(void 0),d(y,m)&&(a.value=Q.enabled&&L?"ready":"disabled")})}async function g(m){const A=e.value;if(v.value=!1,!u()||A===void 0){a.value="unsupported";return}const L=!m&&Mn()?C():void 0,y=l;try{if(await L,!d(y,A)||L!==void 0&&a.value==="unavailable")return;const D=await navigator.serviceWorker.getRegistration("/console");if(!d(y,A)||(await n.locked(async()=>{if(!d(y,A))return;const X=await n.read();if(!d(y,A)||X!==void 0&&X.request.clientKind==="mobile")return;await n.display(void 0);const _=await D?.pushManager?.getSubscription();if(d(y,A)){if(_!=null&&!await _.unsubscribe())throw new Error("WEB_PUSH_RETIRE_FAILED");d(y,A)&&await n.write(void 0)}}),!d(y,A)))return;if(!Mn()){a.value="unsupported";return}const E=await t("/api/notifications/push");if(!d(y,A))return;if(r=E,s=D,E.account!==A)throw new Error("WEB_PUSH_ACCOUNT_CHANGED");if(!E.available||E.enabled&&E.publicKey===null){a.value="serverUnavailable";return}if(!E.enabled){a.value="systemDisabled";return}if(D?.active==null||D.pushManager===void 0){a.value="unavailable";return}if(i=await D.pushManager.getSubscription(),!d(y,A))return;const H=await n.read();if(!d(y,A))return;if(H?.account!==A&&await n.display(void 0),i!==null&&H===void 0){if(!await i.unsubscribe())throw new Error("WEB_PUSH_RETIRE_FAILED");i=null}if(v.value=!0,!m){a.value="disabled";return}if(i===null||H===void 0||H.account!==A||H.request.subscription.endpoint!==i.endpoint){a.value="actionRequired";return}await p(A,i,!0,y,!1)}catch{d(y,A)&&(a.value="unavailable")}}function R(){return Mn()&&v.value&&s!==void 0&&r?.enabled===!0&&r.available}function b(){const m=e.value,A=l;return!u()||!Mn()||!v.value||m===void 0||s?.active==null||r?.account!==m||!r.enabled||!r.available||r.publicKey===null?u()&&Mn()&&m!==void 0?g(!0):(a.value="unsupported",Promise.resolve()):(i===null?s.pushManager.subscribe({userVisibleOnly:!0,applicationServerKey:w(r.publicKey)}):Promise.resolve(i)).then(async y=>{d(A,m)&&(i=y,await p(m,y,!0,A,!0))}).catch(()=>{d(A,m)&&(a.value="unavailable")})}async function C(){const m=e.value,A=++l;a.value="disabled";try{if(typeof indexedDB<"u"&&await n.display(void 0),!u()||m===void 0)return;await n.locked(async()=>{if(!d(A,m))return;const L=await n.read();L===void 0||L.account!==m||L.request.clientKind==="mobile"&&(await n.display(void 0),await T(L,m))})}catch{m!==void 0&&d(A,m)&&(a.value="unavailable")}}function I(){l++,v.value=!1,r=void 0,s=void 0,i=null}async function S(){I(),typeof indexedDB<"u"&&await n.display(void 0).catch(()=>{})}return{status:a,canSubscribe:R,refresh:g,enable:b,disable:C,dispose:I,invalidate:S}}function qt(){return typeof document>"u"||document.visibilityState==="visible"&&(document.hasFocus?.()??!0)}function Vh(e,t,n){const a=Uh(e,n),r=Mn()?"mobile-push":"desktop-system",s=new Map,i=x(!1),l=x("default"),v=x(!1),u=x(!1);let d=0,w;const k=Math.random().toString(36).slice(2);let T=0;function p(){return typeof Notification<"u"&&typeof navigator<"u"&&"serviceWorker"in navigator}const g=j(()=>typeof window<"u"&&!globalThis.isSecureContext?"insecure":p()?v.value?"unavailable":l.value==="denied"?"denied":i.value&&l.value==="granted"?"enabled":"disabled":"unsupported");function R(_){return`mar.workbench.system-notifications.v1.${_}`}function b(){p()&&(l.value=Notification.permission)}function C(){b(),r==="mobile-push"&&a.refresh(i.value)}function I(_){try{localStorage.setItem(R(_),String(i.value))}catch{}}async function S(_){if(!p())return;const U=d;try{const $=await(await navigator.serviceWorker.getRegistration("/console"))?.getNotifications();if(d!==U&&w===_)return;for(const V of $??[])V.data?.type==="mar.workbench.notification"&&V.data.account===_&&V.close()}catch{}}async function m(_){const U=e.value;if(U===void 0||_&&u.value||_&&(!p()||!globalThis.isSecureContext))return;const Q=++d,$=()=>d===Q&&e.value===U;if(!_){i.value=!1,u.value=!1,I(U),r==="mobile-push"&&await a.disable(),await S(U);return}u.value=!0,v.value=!1;try{const V=r==="mobile-push";if(V&&!a.canSubscribe()){await a.refresh(i.value);return}const N=V?await a.enable().then(()=>Notification.permission):await Notification.requestPermission();if(!$()||(l.value=N,N!=="granted"))return;const h=await navigator.serviceWorker.getRegistration("/console");if(!$())return;if(h?.active==null||h.showNotification===void 0){v.value=!0;return}i.value=!0,I(U)}catch{$()&&(v.value=!0)}finally{$()&&(u.value=!1)}}async function A(_,U=()=>!0){b();const Q=e.value,$=d,V=()=>d===$&&e.value===Q&&Q!==void 0&&w===Q&&g.value==="enabled"&&r==="desktop-system"&&!qt()&&!_.read&&_.expiresAt>Date.now()&&U();if(V())try{const N=await navigator.serviceWorker.getRegistration("/console");if(!V()||N?.active==null)return;const h=`${k}:${++T}`;s.set(h,V);try{await new Promise(F=>{const z=new MessageChannel,fe=()=>{clearTimeout(J),z.port1.close(),F()},J=setTimeout(fe,2500);z.port1.onmessage=fe,N.active.postMessage({type:"mar.workbench.notification.show",account:Q,id:_.id,title:_.title,body:_.message,expiresAt:_.expiresAt,projectionId:h},[z.port2])})}finally{s.delete(h)}}catch{}}function L(_){const U=_.data;if(U?.type==="mar.workbench.notification.state"){const V=U.account===w&&U.account===e.value,N=V&&(U.projectionId===void 0||s.get(U.projectionId)?.()===!0);_.ports?.[0]?.postMessage({valid:N,foreground:V&&qt()}),_.ports?.[0]?.close();return}if(U?.type!=="mar.workbench.notification.click")return;const Q=typeof U.account=="string"&&U.account===e.value&&U.account===w&&typeof U.id=="string",$=_.ports?.[0];$?.postMessage({accepted:Q}),$?.close(),Q&&t(U.id).catch(()=>{})}function y(_){if(w===void 0||_.key!==R(w))return;const U=_.newValue==="true";i.value===U&&!u.value||(d+=1,u.value=!1,i.value=U,b(),i.value?r==="mobile-push"&&a.refresh(!0):(r==="mobile-push"&&a.disable(),S(w)))}async function D(){if(typeof window>"u")return!1;const _=new URL(window.location.href),U=_.searchParams.get("notification"),Q=_.searchParams.get("notificationAccount");return U===null||(_.searchParams.delete("notification"),_.searchParams.delete("notificationAccount"),window.history.replaceState(window.history.state,"",`${_.pathname}${_.search}${_.hash}`),Q!==e.value)?!1:(await t(U).catch(()=>{}),!0)}function E(){if(typeof window>"u")return!1;const _=new URL(window.location.href);return _.searchParams.has("notification")&&_.searchParams.get("notificationAccount")===e.value}function H(){d+=1,u.value=!1,b(),v.value=!1;const _=e.value;w=_,a.invalidate();try{i.value=_!==void 0&&localStorage.getItem(R(_))==="true"}catch{i.value=!1}p()&&navigator.serviceWorker.addEventListener("message",L),a.refresh(i.value),typeof window<"u"&&(window.addEventListener("focus",C),window.addEventListener("storage",y))}function X(){d+=1,s.clear(),i.value=!1,u.value=!1,p()&&navigator.serviceWorker.removeEventListener("message",L),typeof window<"u"&&(window.removeEventListener("focus",C),window.removeEventListener("storage",y));const _=w;w=void 0,a.dispose(),_!==void 0&&S(_)}return{enabled:i,mode:r,pushReady:a.canSubscribe,status:g,requesting:u,pushStatus:a.status,enablePush:a.enable,invalidatePush:a.invalidate,setEnabled:m,show:A,start:H,dispose:X,openPending:D,hasPending:E}}const As=1440*6e4,qh=5*6e4;function Ns(e,t=Date.now()){for(const[n,a]of e)a<=t&&e.delete(n)}function Ds(e,t,n=Date.now()){const a=e.get(t);return a===void 0?!1:a<=n?(e.delete(t),!1):!0}function Hh(e,t={}){const n=x([]);let a,r=0,s=!1,i,l,v;const u=new Map,d=new Map,w=x(0),k=x(),T=new Map,p=new Map;let g;function R(ae){k.value=ae,w.value+=1}const b=x([]),C=j(()=>n.value.filter(ae=>!ae.read&&ae.expiresAt>Date.now()).length),I=j(()=>{const ae=new Map;for(const me of n.value){if(me.read||me.source!=="server"||me.target?.targetType!=="WORKSPACE_SESSION")continue;const{nodeId:Pe,workspaceId:Ue,sessionId:Qe}=me.target,Te=JSON.stringify([Pe,Ue,Qe]),Ge=ae.get(Te);(Ge===void 0||me.expiresAt>Ge)&&ae.set(Te,me.expiresAt)}return ae}),S=Bh(C);let m=0,A=0;const L=Vh(e,z,t.request);function y(){return e.value===void 0?void 0:`mar.workbench.notifications.v1.${e.value}`}function D(){const ae=y();if(ae!==void 0)try{localStorage.setItem(ae,JSON.stringify(n.value.filter(me=>me.source!=="server"&&(me.kind==="upload"||me.kind==="web-update"))))}catch{}}function E(ae=Date.now()){Ns(u,ae),Ns(d,ae);for(const Pe of T.keys())u.has(Pe)||T.delete(Pe);const me=n.value.filter(Pe=>Pe.expiresAt>ae);me.length!==n.value.length&&(n.value=me,D())}function H(){const ae=y();if(n.value=[],ae!==void 0)try{const me=JSON.parse(localStorage.getItem(ae)??"[]");if(!Array.isArray(me))return;n.value=Kh(me).filter(Pe=>Pe.kind==="upload"||Pe.kind==="web-update").map(Pe=>({...Pe,source:"local",read:Pe.kind==="upload"?!0:Pe.read})),D()}catch{localStorage.removeItem(ae)}}function X(ae){const me=Date.now();if(E(me),ae.expiresAt!==void 0&&ae.expiresAt<=me)return;const Pe=n.value.find(Qe=>Qe.id===ae.id),Ue={...ae,source:"local",createdAt:Pe?.createdAt??ae.createdAt??me,updatedAt:me,expiresAt:ae.expiresAt??Pe?.expiresAt??me+As,read:ae.kind==="upload"?!0:Pe?.read??ae.read??!1};n.value=[Ue,...n.value.filter(Qe=>Qe.id!==ae.id&&(ae.kind!=="web-update"||Qe.kind!=="web-update"))],D(),Pe===void 0&&qt()&&(ae.kind==="upload"||!Ue.read)&&R(Ue.id)}function _(ae){if(ae.status==="CANCELLED"){ye(`upload:${ae.id}`);return}const me=ae.status==="COMPLETED"||ae.status==="FAILED";X({id:`upload:${ae.id}`,kind:"upload",source:"local",title:ae.status==="FAILED"?c("generated.workbenchNotificationService.fileUploadFailed"):ae.status==="COMPLETED"?c("generated.workbenchNotificationService.fileUploadCompleted"):c("generated.workbenchNotificationService.uploadingFile"),message:`${ae.name}${ae.error===void 0?"":` · ${ae.error}`}`,target:{nodeId:ae.nodeId,workspaceId:ae.workspaceId},...me?{}:{expiresAt:Date.now()+As}})}function U(ae){return!1}function Q(ae,me){const Pe=n.value.filter(Ue=>Ue.source!=="server");n.value=[...ae.notifications.flatMap(Ue=>{const Qe=cf.safeParse(Ue);return Qe.success?[{...Qe.data,read:Qe.data.read||me.some(Te=>Te(Qe.data)),source:"server"}]:[]}),...Pe].sort((Ue,Qe)=>Qe.createdAt-Ue.createdAt),b.value=(ae.recentRuns??[]).filter(zh).sort(Gh)}function $(){if(u.size===0)return;const ae=Date.now();for(const[me,Pe]of u){u.delete(me);const Ue=T.get(me);if(T.delete(me),Pe<=ae){d.delete(me);continue}const Qe=n.value.find(Te=>Te.source==="server"&&Te.id===me);if(Qe!==void 0&&Qe.expiresAt<=ae){d.delete(me);continue}Qe?.source==="server"&&!Qe.read&&(Ue===!0&&qt()&&!ge(Qe.target)&&R(me),Ue===!1&&!qt()&&L.show(Qe,()=>n.value.some(Te=>Te.source==="server"&&Te.id===Qe.id&&!Te.read&&Te.expiresAt>Date.now()))),d.set(me,Pe)}}async function V(ae){for(;ae===r&&s;){s=!1;const me=[];g=me;let Pe;try{Pe=await t.request("/api/notifications")}catch(Ue){if(ae!==r)return;if(s)continue;throw Ue}finally{g===me&&(g=void 0)}if(ae!==r)return;Q(Pe,me),S.reconcile(),s||$()}}async function N(){if(t.request!==void 0){if(s=!0,i===void 0){const ae=r,Pe=V(ae).finally(()=>{i===Pe&&(i=void 0,ae===r&&s&&h())});i=Pe}return i}}function h(){N().catch(()=>{})}function F(){e.value!==void 0&&qt()&&fe().catch(()=>{})}async function z(ae){const me=e.value,Pe=r,Ue=++A,Qe=typeof ae=="string"?ae:ae.id;m+=1;try{if((typeof ae=="string"||ae.source==="server")&&await N(),Pe!==r||Ue!==A||me!==e.value)return;const Te=n.value.find(Ge=>Ge.id===Qe&&Ge.expiresAt>Date.now()&&(typeof ae!="string"||Ge.source==="server"));if(Te===void 0)return;oe(Te.id),await t.onNotificationClick?.(Te)}finally{Pe===r&&(m-=1)}}function fe(){if(m>0||L.hasPending())return N();if(v={targets:(qt()?t.activeTargets?.()??[]:[]).map(Qe=>({...Qe})),account:e.value},l!==void 0)return l;const me=r,Ue=(async()=>{for(;me===r&&v!==void 0;){const{targets:Qe,account:Te}=v;v=void 0;try{await N()}catch(Ge){if(me!==r)return;if(v!==void 0)continue;throw Ge}await ee(Qe,Te,me)}})().finally(()=>{l===Ue&&(l=void 0)});return l=Ue,Ue}function J(ae,me,Pe=!1,Ue=()=>!0){if(t.request===void 0)return Promise.resolve();const Qe=r;return t.request(ae,me).catch(async Te=>{Pe&&Qe===r&&Ue()&&gt(Te)!=="UNAUTHENTICATED"&&!(Te instanceof Error&&Te.name==="AbortError")&&await t.request(ae,me).catch(()=>{})}).then(()=>{if(Qe===r)return N().catch(()=>{})})}function re(ae){const me=sf.safeParse(ae);if(me.success){const Ue=me.data,Qe=new Set(Ue.notificationIds);return Se(Te=>{const Ge=Te.target;return!Qe.has(Te.id)||Ge.nodeId!==Ue.nodeId?!1:Ue.type==="notification.session-read"?Ge.targetType==="WORKSPACE_SESSION"&&Ge.workspaceId===Ue.workspaceId&&Ge.sessionId===Ue.sessionId:Ge.targetType==="HOSTED_CONVERSATION"&&Ge.conversationId===Ue.conversationId}),!0}if(na(ae)&&typeof ae.type=="string"&&ae.type.startsWith("recent-run."))return h(),!0;if(!na(ae)||typeof ae.type!="string"||!ae.type.startsWith("notification."))return!1;const Pe=ae.type==="notification.created"?lf.safeParse(ae):void 0;if(Pe?.success){const Ue=Pe.data.notification,Qe=Date.now();return Ue.expiresAt<=Qe||Ds(d,Ue.id,Qe)||Ds(u,Ue.id,Qe)?(h(),!0):(Ue.kind==="run"&&Ue.target.targetType==="WORKSPACE_SESSION"&&t.onWorkspaceRunCompleted?.(Ue.target.nodeId,Ue.target.workspaceId),qt()&&ge(Ue.target)&&!Ue.read?(d.set(Ue.id,Ue.expiresAt),J(`/api/notifications/${encodeURIComponent(Ue.id)}/read`,{method:"POST",body:"{}"},!0,()=>m===0&&!L.hasPending()&&qt()&&Ue.expiresAt>Date.now()&&ge(Ue.target)),!0):Ue.read?(d.set(Ue.id,Ue.expiresAt),h(),!0):(T.set(Ue.id,qt()),u.set(Ue.id,Ue.expiresAt),N().catch(()=>{}),!0))}return h(),!0}function ge(ae){return ae.targetType===void 0?!1:(t.activeTargets?.()??[]).some(me=>ae.targetType==="HOSTED_CONVERSATION"?me.targetType==="HOSTED_CONVERSATION"&&me.nodeId===ae.nodeId&&me.conversationId===ae.conversationId:me.targetType==="WORKSPACE_SESSION"&&me.nodeId===ae.nodeId&&me.workspaceId===ae.workspaceId&&me.sessionId===ae.sessionId)}function ce(){const me=n.value.filter(Pe=>!Pe.read).filter(Pe=>Pe.source!=="server");if(me.length>0){const Pe=new Set(me.map(Ue=>Ue.id));n.value=n.value.map(Ue=>Pe.has(Ue.id)?{...Ue,read:!0}:Ue),D()}t.request!==void 0&&J("/api/notifications/read-all",{method:"POST",body:"{}"})}function oe(ae){const me=n.value.find(Pe=>Pe.id===ae);if(!(me===void 0||me.read)){if(me.source==="server"){J(`/api/notifications/${encodeURIComponent(ae)}/read`,{method:"POST",body:"{}"});return}n.value=n.value.map(Pe=>Pe.id===ae?{...Pe,read:!0}:Pe),D()}}function P(ae,me){return b.value.some(Pe=>Pe.nodeId===ae&&Pe.workspaceId===me&&Nn(Pe.status))}function G(ae,me){return ue(ae,me)!==void 0}function ue(ae,me){const Pe=Date.now(),Ue=n.value.find(Qe=>!Qe.read&&Qe.source==="server"&&Qe.expiresAt>Pe&&Qe.target?.targetType==="WORKSPACE_SESSION"&&Qe.target.nodeId===ae&&Qe.target.workspaceId===me);return Ue?.target?.targetType==="WORKSPACE_SESSION"?Ue.target.sessionId:void 0}function ne(ae,me,Pe){const Ue=I.value.get(JSON.stringify([ae,me,Pe]));return Ue!==void 0&&Ue>Date.now()}function M(ae,me,Pe){return Me({targetType:"WORKSPACE_SESSION",nodeId:ae,workspaceId:me,sessionId:Pe})}async function ee(ae,me,Pe){await Promise.all(ae.map(async Ue=>{const Qe=()=>Pe===r&&m===0&&me===e.value&&ge(Ue)&&qt();if(!Qe())return;(Ue.targetType==="WORKSPACE_SESSION"?ne(Ue.nodeId,Ue.workspaceId,Ue.sessionId):Ee(Ue.nodeId,Ue.conversationId))&&await Me(Ue,!0,Qe)}))}function le(){return ee(t.activeTargets?.()??[],e.value,r)}function Ee(ae,me){const Pe=Date.now();return n.value.some(Ue=>!Ue.read&&Ue.source==="server"&&Ue.expiresAt>Pe&&Ue.target?.targetType==="HOSTED_CONVERSATION"&&Ue.target.nodeId===ae&&Ue.target.conversationId===me)}function xe(ae,me){Me({targetType:"HOSTED_CONVERSATION",nodeId:ae,conversationId:me})}function Me(ae,me=!1,Pe){if(m>0||L.hasPending()||!qt())return Promise.resolve();const{nodeId:Ue}=ae,Qe=ae.targetType==="WORKSPACE_SESSION";if(!(Qe?ne(Ue,ae.workspaceId,ae.sessionId):Ee(Ue,ae.conversationId))||t.request===void 0)return Promise.resolve();const Ge=Qe?{nodeId:Ue,workspaceId:ae.workspaceId,sessionId:ae.sessionId}:{nodeId:Ue,conversationId:ae.conversationId},_e=JSON.stringify([ae.targetType,Ge]),tt=p.get(_e);if(tt!==void 0)return me&&(tt.retry.isCurrent=Pe??(()=>!0)),tt.promise;const Xe={isCurrent:me?Pe??(()=>!0):void 0},Re=new Map(n.value.flatMap(q=>{if(q.source!=="server"||q.read)return[];const te=q.target;return te.nodeId===Ue&&(Qe?te.targetType==="WORKSPACE_SESSION"&&te.workspaceId===ae.workspaceId&&te.sessionId===ae.sessionId:te.targetType==="HOSTED_CONVERSATION"&&te.conversationId===ae.conversationId)?[[q.id,q.updatedAt]]:[]})),de=r,he=(async()=>{const q=`/api/notifications/${Qe?"session":"conversation"}/read`,te={method:"POST",body:JSON.stringify(Ge)};try{try{await t.request(q,te)}catch(Y){if(de!==r||Xe.isCurrent?.()!==!0||gt(Y)==="UNAUTHENTICATED"||Y instanceof Error&&Y.name==="AbortError")return;await t.request(q,te)}de===r&&Se(Y=>Re.get(Y.id)===Y.updatedAt)}catch{}})().finally(()=>{p.get(_e)?.promise===he&&p.delete(_e)});return p.set(_e,{promise:he,retry:Xe}),he}function Se(ae){g?.push(ae),n.value=n.value.map(me=>me.source==="server"&&!me.read&&ae(me)?{...me,read:!0}:me),S.reconcile()}function ye(ae){if(n.value.find(Pe=>Pe.id===ae)?.source==="server"){J(`/api/notifications/${encodeURIComponent(ae)}`,{method:"DELETE"});return}n.value=n.value.filter(Pe=>Pe.id!==ae),D()}function Fe(){const ae=n.value.filter(me=>me.kind!=="web-update");ae.length!==n.value.length&&(n.value=ae,D())}async function Ye(){const ae=r;L.start(),S.start(),typeof window<"u"&&window.addEventListener("focus",F),H(),await N().catch(()=>{}),ae===r&&a===void 0&&(a=setInterval(E,qh))}function nt(){typeof window<"u"&&window.removeEventListener("focus",F),L.dispose(),m=0,S.dispose(),r+=1,s=!1,i=void 0,l=void 0,v=void 0,p.clear(),g=void 0,u.clear(),T.clear(),k.value=void 0,d.clear(),n.value=n.value.filter(ae=>ae.source!=="server"),b.value=[],a!==void 0&&clearInterval(a),a=void 0}return{notifications:n,recentRuns:b,unreadCount:C,notificationRevision:w,previewNotificationId:k,systemNotifications:L,hasActiveWorkspaceRun:P,hasUnreadWorkspace:G,workspaceTabSession:ue,hasUnreadSession:ne,hasUnreadConversation:Ee,notify:X,recordUpload:_,project:U,projectServerMessage:re,load:N,recover:fe,openNotification:z,openPendingSystemNotification:L.openPending,markAllRead:ce,markRead:oe,markSessionRead:M,markVisibleRead:le,markConversationRead:xe,clearWebUpdate:Fe,remove:ye,start:Ye,dispose:nt}}function Bh(e){let t,n,a=!1;async function r(){for(a=!0;n!==void 0;){const u=n;if(n=void 0,typeof navigator>"u")continue;const d=navigator;try{u>0?await d.setAppBadge?.(u):d.clearAppBadge!==void 0?await d.clearAppBadge():await d.setAppBadge?.(0)}catch{}}a=!1}function s(u){n=u,a||r()}function i(){t!==void 0&&s(e.value)}function l(){t===void 0&&(t=He(e,s,{immediate:!0}),typeof window<"u"&&window.addEventListener("focus",i))}function v(){typeof window<"u"&&window.removeEventListener("focus",i),t?.(),t=void 0,s(0)}return{start:l,reconcile:i,dispose:v}}function Gh(e,t){return Number(Nn(t.status))-Number(Nn(e.status))||_a(t)-_a(e)||t.createdAt-e.createdAt||t.runId.localeCompare(e.runId)}function zh(e){return na(e)?typeof e.nodeId=="string"&&typeof e.runId=="string"&&typeof e.workspaceId=="string"&&(e.workspaceName===void 0||typeof e.workspaceName=="string")&&typeof e.sessionId=="string"&&typeof e.sessionTitle=="string"&&(e.sessionGroup===void 0||e.sessionGroup==="MAIN"||e.sessionGroup==="CHILD")&&(e.userMessage===void 0||typeof e.userMessage=="string")&&typeof e.runner=="string"&&["STARTING","RUNNING","CANCELLING","SUCCEEDED","FAILED","CANCELLED","INTERRUPTED"].includes(String(e.status))&&(e.interruptionReason===void 0||e.interruptionReason==="USER_STOP")&&typeof e.createdAt=="number"&&typeof e.startedAt=="number"&&(e.completedAt===null||typeof e.completedAt=="number")&&typeof e.sortAt=="number"&&typeof e.updatedAt=="number"&&typeof e.version=="number":!1}function Kh(e,t=Date.now()){return Array.isArray(e)?e.filter(jh).filter(n=>n.expiresAt>t).map(n=>({...n,source:"local"})):[]}function jh(e){return na(e)?(e.kind==="upload"||e.kind==="web-update")&&typeof e.id=="string"&&typeof e.title=="string"&&typeof e.message=="string"&&typeof e.createdAt=="number"&&typeof e.updatedAt=="number"&&typeof e.expiresAt=="number"&&typeof e.read=="boolean"&&(e.kind==="upload"?e.action===void 0&&(e.target===void 0||_h(e.target)):e.target===void 0&&(e.action===void 0||e.action==="RELOAD_PAGE")):!1}function _h(e){return!na(e)||typeof e.nodeId!="string"?!1:e.targetType===void 0&&e.conversationId===void 0&&(e.workspaceId===void 0||typeof e.workspaceId=="string")&&(e.sessionId===void 0||typeof e.sessionId=="string")&&(e.sessionName===void 0||typeof e.sessionName=="string")}function na(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Yh(e){const t=e.application?.state??x({offline:"online",checked:!1}),n=x(!1);let a;function r(){a!==void 0||e.application===void 0||(a=e.application.subscribe(v=>{if(!v.checked)return;const u=e.notifications.notifications.value.some(w=>w.kind==="web-update"),d=v.update??(u?v.reload:void 0);d===void 0?v.reload===void 0&&e.notifications.clearWebUpdate():e.notifications.notify({id:`web-update:${d.version}:${d.buildId}`,kind:"web-update",source:"local",title:c("webUpdate.title"),message:c("webUpdate.message",{value0:d.version}),action:"RELOAD_PAGE"})}))}function s(){a?.(),a=void 0}async function i(){if(!(n.value||e.application===void 0)){n.value=!0;try{await e.application.checkForUpdate();const v=e.application.state.value;e.message(c(v.update?"webUpdate.available":v.reload?"webUpdate.reloadAvailable":"webUpdate.upToDate"),"info")}catch(v){e.message(c("webUpdate.checkFailed"),"error",v)}finally{n.value=!1}}}async function l(){await e.application?.applyUpdate()!=="APPLIED"&&e.message(c("webUpdate.unavailable"),"warning")}return{state:t,checking:n,start:r,stop:s,check:i,apply:l}}function Qh(e){const{workspaceTarget:t,selectedWorkspace:n,workspaceHost:a,view:r,mainSurfaceVisible:s,draftSessionOpen:i,selectedSessionId:l,asideVisible:v,asideTarget:u,asideLoading:d}=e;function w(T=!1){const p=t.value;if(r.value!=="nodes"||p===void 0||n.value===void 0||a.value?.connected===!1)return[];const g=[];return s.value&&!i.value&&l.value!==void 0&&(T||!e.mainLoading.value)&&g.push({...p,sessionId:l.value}),v.value&&u.value!==void 0&&(T||!d.value)&&!g.some(R=>R.sessionId===u.value?.sessionId)&&g.push({nodeId:u.value.nodeId,workspaceId:u.value.workspaceId,sessionId:u.value.sessionId}),g}function k(T,p,g){if(w(!0).some(R=>R.nodeId===T&&R.workspaceId===p&&R.sessionId===g))return e.markSessionRead(T,p,g)}return{targets:w,markRead:k}}async function Jh(e,t){if(e.targetType==="HOSTED_CONVERSATION"){if(t.showConversations===void 0||t.openHostedConversation===void 0)throw new Error("NOTIFICATION_TARGET_NOT_SELECTED");t.showConversations(),await t.openHostedConversation(e.nodeId,e.conversationId);return}if(t.showNodes(),e.workspaceId===void 0)return;if(!await t.activateWorkspace({nodeId:e.nodeId,workspaceId:e.workspaceId}))throw new Error("NOTIFICATION_TARGET_NOT_SELECTED");const n=t.workspaceTarget();if(n?.nodeId!==e.nodeId||n.workspaceId!==e.workspaceId)throw new Error("NOTIFICATION_TARGET_NOT_SELECTED");e.sessionId!==void 0&&(t.hasSession(e.sessionId)||await t.synchronizeSessions(e.workspaceId),t.workspaceTarget()===n&&await t.openSession(e.sessionId))}function Xh(e){const{workspaceTarget:t,selectedSessionId:n,sessions:a,selectView:r,applyWebUpdate:s,closeMobileSidebar:i,selectWorkspace:l,syncWorkspaceSessions:v,openHostedConversationTarget:u,notice:d,openSession:w}=e,k=e.discovery,T=e.discovery.selectGroup;async function p(I){if(I.action==="RELOAD_PAGE"){await s();return}const S=I.target;S!==void 0&&await g(S,!0)}async function g(I,S=!1){try{let m;await Jh(I,{workspaceTarget:()=>t.value,hasSession:A=>a.value.some(L=>L.id===A&&(!("workspaceId"in I)||I.workspaceId===void 0||L.workspaceId===I.workspaceId)),showNodes:()=>r("nodes"),showConversations:()=>r("conversations"),activateWorkspace:async A=>{const L=t.value,y="sessionId"in I&&I.sessionId!==void 0;if(y&&L?.nodeId===A.nodeId&&L.workspaceId===A.workspaceId)return i(),m=k.groupSelectionRevision(),!0;const D=await l(A,!y);return D&&(m=k.groupSelectionRevision()),D},synchronizeSessions:v,openSession:A=>C(A,S,m),openHostedConversation:u})}catch(m){d(c("generated.workbenchPageController.unableToOpenTheSessionLinkedTo",{value0:it(m)}),"error",m)}}async function R(I){await p({id:`recent-run:${I.nodeId}:${I.runId}`,title:I.sessionTitle,createdAt:I.createdAt,updatedAt:I.updatedAt,target:{targetType:"WORKSPACE_SESSION",nodeId:I.nodeId,workspaceId:I.workspaceId,sessionId:I.sessionId,sessionName:I.sessionTitle}})}async function b(I){await g({targetType:"WORKSPACE_SESSION",...I},!0)}function C(I,S,m=k.groupSelectionRevision()){const A=t.value,L=y=>{A!==void 0&&t.value?.nodeId===A.nodeId&&t.value.workspaceId===A.workspaceId&&y.workspaceId===A.workspaceId&&n.value===y.id&&k.groupSelectionRevision()===m&&T(y.sessionGroup??"MAIN",!0)};return S?e.selection().openWorkspaceTabSession(I,L):w(I,{onSessionResolved:L})}return{openWorkbenchNotification:p,openRecentRun:R,openSessionGroupTarget:b,openNavigatedSession:C}}function Zh(e){let t,n=!1,a;async function r(l){if(!(e.selectedSessionId.value!==l.sessionId||e.workspaceTarget.value!==l.workspace)){if(n){a=l;return}n=!0;try{await e.refresh(l.sessionId,l.deferInitialScroll)}finally{n=!1;const v=a;a=void 0,v!==void 0&&await r(v)}}}function s(l=0,v=!1){if(t!==void 0){if(l!==0)return;clearTimeout(t)}const u=e.selectedSessionId.value,d=e.workspaceTarget.value;u===void 0||d===void 0||(t=setTimeout(()=>{t=void 0,r({workspace:d,sessionId:u,deferInitialScroll:v})},l))}function i(){t!==void 0&&clearTimeout(t),t=void 0,a=void 0}return{schedule:s,clear:i}}function ey(e){const t=Fn({sessions:"idle",files:"idle",changes:"idle",sessionNavigation:"idle"}),n={sessions:-1,files:-1,changes:-1,sessionNavigation:-1};let a,r;const s={sessions:0,files:0,changes:0,sessionNavigation:0};let i=0,l=!1;const v=()=>e.workbenchConnectionId===void 0?"local-test-connection":e.workbenchConnectionId();function u(y){return`${y.connectionId}:${y.nodeId}:${y.workspaceId}:${y.directory}:${y.git?"git":"directory"}:${y.sessionGroup??"ALL"}`}function d(y){const D=a;return D!==void 0&&u(D)===y&&e.enabled?.()!==!1&&e.workspaceTarget.value?.nodeId===D.nodeId&&e.workspaceTarget.value?.workspaceId===D.workspaceId&&e.sessionGroup?.()===D.sessionGroup&&xn(e.sessionNavigation?.(),D.sessionNavigation)&&v()===D.connectionId}function w(y,D,E=!1,H=!1){t.sessions=(D||H)&&t.sessions==="ready"?"ready":"loading";const X=D||E;t.files=X&&t.files==="ready"?"ready":"loading",t.changes=y.git?X&&t.changes==="ready"?"ready":"loading":"idle",n.sessions=-1,n.files=-1,n.changes=-1,n.sessionNavigation=-1,t.sessionNavigation=y.sessionNavigation===void 0?"idle":"loading"}async function k(y,D,E){const H=a;if(H===void 0||u(H)!==y)return;const X=await e.request(`/api/workspaces/${encodeURIComponent(H.workspaceId)}/watch`,{method:"POST",signal:D,body:JSON.stringify({nodeId:H.nodeId,workbenchConnectionId:H.connectionId,watchId:H.watchId,mode:E,...E==="renew"?{}:{...e.prepareFiles?.()===!0?{prepareFiles:!0}:{},topics:{sessions:!0,...H.sessionGroup===void 0?{}:{sessionGroup:H.sessionGroup},files:{path:H.directory,limit:200},...H.sessionNavigation===void 0?{}:{sessionNavigation:H.sessionNavigation},...H.git?{changes:!0}:{}}}})});if(!(!d(y)||a?.watchId!==H.watchId)){if(typeof X.nodeGeneration=="string"&&H.nodeGeneration!==void 0&&H.nodeGeneration!==X.nodeGeneration)throw new Error("WORKSPACE_WATCH_GENERATION_CHANGED");typeof X.nodeGeneration=="string"&&(H.nodeGeneration=X.nodeGeneration),i=0}}const T=Pl({heartbeatMs:e.heartbeatMs,requestTimeoutMs:e.requestTimeoutMs??1e4,confirmationTimeoutMs:e.confirmationTimeoutMs??e.heartbeatMs*3,maxFailures:3,eligible:d,renew:k,onExpired:()=>{const y=a;y!==void 0&&R(y.workspaceId)}});async function p(y,D,E){if(e.enabled?.()===!1)return;const H=e.workspaceTarget.value?.nodeId,X=e.workspaces.value.find(z=>z.id===y),_=v();if(H===void 0||X===void 0||_===void 0)return;const U=e.sessionGroup?.(),Q=e.sessionNavigation?.(),$=Q===void 0?void 0:{...Q,sessionIds:[...Q.sessionIds],summaryAnchors:[...Q.summaryAnchors]},V=`${_}:${H}:${y}:${D}:${X.kind==="GIT_WORKSPACE"?"git":"directory"}:${U??"ALL"}`;if(E&&!l&&a!==void 0&&u(a)===V&&xn(a.sessionNavigation,$))return;const N=!l&&a!==void 0&&a.connectionId===_&&a.nodeId===H&&a.workspaceId===y&&a.directory===D&&a.git===(X.kind==="GIT_WORKSPACE")&&a.sessionGroup!==U,h=!l&&a!==void 0&&u(a)===V&&!xn(a.sessionNavigation,$);I(),E&&(i=0,s.sessions=0,s.files=0,s.changes=0,s.sessionNavigation=0);const F={nodeId:H,workspaceId:y,directory:D,watchId:crypto.randomUUID().replace(/-/g,""),connectionId:_,git:X.kind==="GIT_WORKSPACE",...U===void 0?{}:{sessionGroup:U},...$===void 0?{}:{sessionNavigation:$}};a=F,l=!1,w(F,!E,N||h,h);try{await T.start(u(F))}catch{if(a?.watchId!==F.watchId)return;t.sessions!=="ready"&&(t.sessions="failed"),t.files!=="ready"&&(t.files="failed"),F.git&&t.changes!=="ready"&&(t.changes="failed"),F.sessionNavigation!==void 0&&t.sessionNavigation!=="ready"&&(t.sessionNavigation="failed"),i+=1,i<=3&&(r=setTimeout(()=>{r=void 0,p(y,D,!1)},Math.min(e.heartbeatMs,1e3*2**(i-1))))}}function g(y,D){const E=a?.workspaceId===y&&a.nodeId===e.workspaceTarget.value?.nodeId?a.directory:".";return p(y,D??E,!0)}async function R(y){const D=a?.directory??".";I(),await p(y,D,!0)}function b(){const y=a;return y===void 0||!Object.values(t).includes("failed")?Promise.resolve():(s.sessions=0,s.files=0,s.changes=0,s.sessionNavigation=0,i=0,p(y.workspaceId,y.directory,!1))}function C(){l=!0,r!==void 0&&clearTimeout(r),r=void 0,T.pause()}function I(){r!==void 0&&clearTimeout(r),r=void 0,T.stop(),a=void 0}function S(){const y=a;I(),l=!1,t.sessions="idle",t.files="idle",t.changes="idle",t.sessionNavigation="idle",y!==void 0&&e.request(`/api/workspaces/${encodeURIComponent(y.workspaceId)}/watch`,{method:"DELETE",body:JSON.stringify({nodeId:y.nodeId,workbenchConnectionId:y.connectionId,watchId:y.watchId})}).catch(()=>{})}function m(y){const D=a;if(!(D===void 0||y.workbenchConnectionId!==D.connectionId||y.watchId!==D.watchId||y.nodeId!==D.nodeId||y.workspaceId!==D.workspaceId||e.sessionGroup?.()!==D.sessionGroup||!xn(e.sessionNavigation?.(),D.sessionNavigation)||typeof y.nodeGeneration!="string"||D.nodeGeneration!==void 0&&y.nodeGeneration!==D.nodeGeneration))return D.nodeGeneration??=y.nodeGeneration,T.confirm(u(D)),D}function A(y){if(y.type!=="watch.workspace.snapshot"||!Ps(y.topic)||!Number.isInteger(y.revision)||y.revision<0)return!1;const D=m(y);if(D===void 0)return!1;const E=y.revision;return E<=n[y.topic]||(n[y.topic]=E,s[y.topic]=0,t[y.topic]="ready",y.topic==="sessions"?e.onSnapshot(D.nodeId,D.workspaceId,{sessions:y.payload},y.topic,E):y.topic==="files"?e.onSnapshot(D.nodeId,D.workspaceId,{files:y.payload},y.topic,E):y.topic==="changes"?e.onSnapshot(D.nodeId,D.workspaceId,{changes:y.payload},y.topic,E):e.onSnapshot(D.nodeId,D.workspaceId,{sessionNavigation:y.payload},y.topic,E,D.sessionNavigation)),!0}function L(y){if(y.type!=="watch.failed"||y.watchType!=="workspace"||!Ps(y.topic))return!1;const D=m(y);if(D===void 0)return!1;if(t[y.topic]="failed",s[y.topic]+=1,s[y.topic]>3)return!0;r!==void 0&&clearTimeout(r);const E=D.workspaceId;return r=setTimeout(()=>{r=void 0,p(E,D.directory,!1)},Math.min(e.heartbeatMs,1e3*2**(s[y.topic]-1))),!0}return{start:g,restart:R,retryFailed:b,pause:C,stop:S,topicStatus:ct(t),handleEvent(y){if(typeof y!="object"||y===null)return!1;const D=y;return L(D)||A(D)}}}function Ps(e){return e==="sessions"||e==="files"||e==="changes"||e==="sessionNavigation"}function xn(e,t){return e===t||e!==void 0&&t!==void 0&&e.limit===t.limit&&e.treeAnchor===t.treeAnchor&&e.sessionIds.length===t.sessionIds.length&&e.sessionIds.every((n,a)=>n===t.sessionIds[a])&&e.summaryAnchors.length===t.summaryAnchors.length&&e.summaryAnchors.every((n,a)=>n===t.summaryAnchors[a])}function ty(e){const t=()=>e.sessions.current.value.find(a=>a.id===e.sessions.selectedId.value);return{accept:(a,r,s,i,l,v)=>{if(i==="sessionNavigation"){e.workspaceTarget.value?.nodeId===a&&e.workspaceTarget.value.workspaceId===r&&v!==void 0&&xn(e.navigation.query(),v)&&e.navigation.accept({nodeId:a,workspaceId:r},v,s.sessionNavigation);return}e.files.acceptWatch(a,r,s,{topic:i,revision:l});const u=Gl(s.changes);u!==void 0&&e.updateBranch(a,r,u);const d=s.sessions;if(!Array.isArray(d?.sessions))return;const w=t();e.sessions.applySnapshot(a,r,{sessions:[...d.sessions],...d.runningCounts===void 0?{}:{runningCounts:d.runningCounts},nextCursor:d.nextCursor??null}),e.sessions.reconcile(w,t())}}}function ny(e){let t=!1;function n(r){if(!(e.workspaceTarget()===void 0||e.selectedSessionId()!==r)){if(e.currentSurface()!=="workbench"){t=!0;return}e.coordinator()?.beginSession(r)}}function a(r,s){const i=e.coordinator();if(s==="extension"){t=!0,i?.stopWorkspace(),i?.stopSession(),e.hasSelectedExtensionTarget()&&i?.beginExtension().catch(()=>{});return}if(r==="extension"&&(t=!0,i?.stopExtension()),s!=="workbench"||!t)return;t=!1;const l=e.workspaceTarget()?.workspaceId;i===void 0||l===void 0||i.startWorkspace(l).then(()=>{const v=e.selectedSessionId();e.currentSurface()==="workbench"&&v!==void 0&&i.beginSession(v)})}return{transition:a,requestSessionWatch:n}}function ay(e){const t=a=>a==="nodes"?"workbench":a==="conversations"?"extension":"other",n=ny({coordinator:()=>{const a=e.coordinator();if(a!==void 0)return{stopWorkspace:()=>a.stopWorkspace(),stopSession:()=>a.stopSession(),startWorkspace:r=>a.startWorkspace(r),beginSession:r=>a.beginSession(r),beginExtension:()=>a.beginHostedConversation(),stopExtension:()=>a.stopHostedConversation()}},currentSurface:()=>t(e.currentView()),workspaceTarget:e.workspaceTarget,selectedSessionId:e.selectedSessionId,hasSelectedExtensionTarget:()=>e.selectedHostedConversationId()!==void 0});return{requestSessionWatch:n.requestSessionWatch,transition:(a,r)=>n.transition(t(a),t(r))}}function oy(e){const{hosted:t,...n}=e,{beginExtension:a,restartExtension:r,stopExtension:s,...i}=ym({...n,extension:{begin:()=>t.beginSelectedConversationWatch(),restart:()=>t.restartSelectedConversationWatch(),pause:()=>t.pauseSelectedConversationWatch(),stop:()=>t.stopSelectedConversationWatch(),handleVisibility:()=>t.handleVisibility(),handleEvent:l=>t.handleWatchEvent(l)}});return{...i,beginHostedConversation:a,restartHostedConversation:r,stopHostedConversation:s}}function ry(e){async function t(s,i,l){const v=new URLSearchParams({nodeId:s.nodeId,path:i,limit:"200"});l!==void 0&&v.set("cursor",l);const u=await e.http.request(`/api/workspaces/${encodeURIComponent(s.workspaceId)}/files?${v}`);if(!lc(u))throw new Error("NODE_RESPONSE_INVALID");const d=Pr(u.workspace);return{...u.files,...d===void 0?{}:{workspace:d}}}async function n(s,i,l){const u=(await e.http.request(`/api/workspaces/${encodeURIComponent(s.workspaceId)}/uploads/preflight`,{method:"POST",body:JSON.stringify({nodeId:s.nodeId,directory:i,files:l.map(d=>({name:d}))})})).uploads;if(!Array.isArray(u))throw new Error("NODE_RESPONSE_INVALID");return l.map((d,w)=>{const k=u[w];return{status:k?.status==="READY"||k?.status==="EXISTS_FILE"||k?.status==="EXISTS_DIRECTORY"?k.status:"INVALID_NAME",path:typeof k?.path=="string"?k.path:null}})}async function a(s,i,l,v,u){s={...s};const d=await e.http.request(`/api/workspaces/${encodeURIComponent(s.workspaceId)}/files/mutate`,{method:"POST",body:JSON.stringify({nodeId:s.nodeId,action:i,path:l,...v===void 0?{}:{destination:v}})});try{u?.()!==!1&&(u===void 0?await e.onWritten(s):await e.onWritten(s,u))}catch{}return typeof d.file?.path=="string"?d.file.path:void 0}async function r(s,i){s={...s},await e.http.request(`/api/workspaces/${encodeURIComponent(s.workspaceId)}/files/reveal`,{method:"POST",body:JSON.stringify({nodeId:s.nodeId,path:i})})}return{list:t,preflight:n,mutate:a,reveal:r}}function lc(e){if(typeof e!="object"||e===null||!("files"in e))return!1;const t=e.files;return typeof t=="object"&&t!==null&&Array.isArray(t.entries)&&(t.nextCursor===null||typeof t.nextCursor=="string")}function Pr(e){if(typeof e!="object"||e===null)return;const t=e;if(typeof t.id!="string"||typeof t.path!="string"||t.kind!=="DIRECTORY"&&t.kind!=="GIT_WORKSPACE")return;const n=t.gitSummary?.branch;return{id:t.id,path:t.path,kind:t.kind,...typeof n=="string"||n===null?{gitSummary:{branch:n}}:{}}}function iy(e){const t=x(qo(e.workspaceName())),n=x(),a=x();let r=0,s=0;const i=new WeakMap;async function l(m,A=!1){const L=i.get(m);if(L!==void 0)return L;const y=v(m,A);i.set(m,y);try{return await y}finally{i.get(m)===y&&i.delete(m)}}async function v(m,A=!1){if(m.kind!=="DIRECTORY"||m.loading)return;const L=r,y=m===t.value?s:void 0,D=()=>L===r&&(y===void 0||y===s);m.loading=!0;try{const E=await e.list(m.path,A?m.nextCursor??void 0:void 0);return D()?(m.children=Os(A?m.children:[],E.entries),m.nextCursor=E.nextCursor,m.loaded=!0,m.failedAppend=void 0,m.failure=void 0,m.placeholder=!1,E):void 0}catch(E){D()&&(m.failedAppend=A,m.failure=E);return}finally{D()&&(m.loading=!1)}}async function u(m){m.kind==="DIRECTORY"&&(m.expanded=!m.expanded,m.expanded&&!m.loaded&&await l(m))}function d(){r+=1,t.value=qo(e.workspaceName()),n.value=void 0,a.value=void 0}async function w(){const m=dc(t.value),A=cy(t.value),L=n.value;r+=1;const y=r,D=qo(e.workspaceName()),E=X=>{y===r&&(a.value={cause:X.failure})},H=await l(D);if(H===void 0||!await k(D,A.get(".")??0))return E(D);for(const X of m.filter(_=>_!==".")){const _=Xn(D,X);if(_?.kind==="DIRECTORY"&&(_.expanded=!0,await l(_)===void 0||!await k(_,A.get(X)??0)))return E(_)}if(y===r)return t.value=D,a.value=void 0,n.value=L!==void 0&&Xn(D,L)?L:void 0,H}async function k(m,A){for(;m.children.length<A&&m.nextCursor!==null;){const L=m.nextCursor;if(await l(m,!0)===void 0)return!1;if(m.nextCursor===L)break}return!0}async function T(m,A=()=>!0){const L=Ls(m);if(L===void 0||!A())return;t.value.expanded=!0;const y=t.value;if(!y.loaded&&await l(y)===void 0){if(y===t.value&&A()&&gt(y.failure)==="PERMISSION_DENIED")throw y.failure;if(y!==t.value||!y.loaded)return}if(!A())return;const D=L.split("/");let E=t.value,H="";for(const X of D.slice(0,-1)){H=H===""?X:`${H}/${X}`,Ho(E,H)||(E.children=ur([...E.children,dr(H,"DIRECTORY")]));const _=Ho(E,H);if(_===void 0)throw new Error("FILE_TREE_NODE_INVALID");if(_.expanded=!0,!_.loaded&&await l(_)===void 0){if(y===t.value&&A()&&gt(_.failure)==="PERMISSION_DENIED")throw _.failure;return}if(!A())return;E=_}Ho(E,L)||(E.children=ur([...E.children,dr(L,"FILE")]))}function p(m){n.value=m.path}function g(m){const A=Ls(m);A!==void 0&&Xn(t.value,A)!==void 0&&(n.value=A)}function R(m){s+=1,i.delete(t.value),t.value.children=Os(t.value.children,m.entries),t.value.nextCursor=m.nextCursor,t.value.loaded=!0,t.value.loading=!1,t.value.failedAppend=void 0,t.value.failure=void 0}function b(m){t.value.name=m}function C(){const m=n.value===void 0?void 0:Xn(t.value,n.value);if(m===void 0)return".";if(m.kind==="DIRECTORY")return m.path;const A=m.path.lastIndexOf("/");return A<0?".":m.path.slice(0,A)}function I(){return{root:vr(t.value),...n.value===void 0?{}:{selectedPath:n.value}}}function S(m){r+=1,t.value=vr(m.root),n.value=m.selectedPath,a.value=void 0}return{root:t,selectedPath:n,refreshError:a,applyRootPage:R,loadMore:m=>l(m,m.failedAppend??!0),refresh:w,reset:d,restore:S,reveal:T,select:p,selectPath:g,setRootName:b,snapshot:I,toggle:u,uploadDirectory:C}}function cc(e,t){const n=t.trim().toLocaleLowerCase();return n.length===0||e.toLocaleLowerCase().includes(n)}function sy(e,t){const n=[],a=(i,l)=>{if(n.push({node:i,depth:l,loadMore:!1}),!(i.kind!=="DIRECTORY"||!i.expanded)){for(const v of i.children)a(v,l+1);(i.nextCursor!==null||i.failedAppend!==void 0||i.loading&&!i.loaded)&&n.push({node:i,depth:l+1,loadMore:!0})}};a(e,0);const r=t.trim();if(r.length===0)return n;const s=new Set(["."]);for(const i of n){if(i.loadMore||!cc(i.node.path,r))continue;let l=i.node.path;for(s.add(l);l!==".";){const v=l.lastIndexOf("/");l=v<0?".":l.slice(0,v),s.add(l)}}return n.filter(i=>s.has(i.node.path))}function ly(e,t,n,a,r){const s=Math.max(0,Math.floor(e)),i=Math.max(1,a),l=Math.max(0,n),v=s*i,u=Math.max(0,v-l),d=Math.max(0,Math.min(t,u)),w=Math.floor(d/i),k=Math.ceil((d+l)/i),T=Math.max(0,Math.floor(r)),p=Math.max(0,w-T),g=Math.min(s,k+T);return{start:p,end:g,offset:p*i,totalHeight:v}}function qo(e){return{path:".",name:e,kind:"DIRECTORY",size:null,children:[],expanded:!0,loaded:!1,loading:!1,nextCursor:null,placeholder:!1}}function dr(e,t){return{path:e,name:e.split("/").at(-1)??e,kind:t,size:null,children:[],expanded:!1,loaded:!1,loading:!1,nextCursor:null,placeholder:!0}}function Os(e,t){const n=new Map(e.map(a=>[a.path,a]));for(const a of t){const r=n.get(a.path);r===void 0?n.set(a.path,{...dr(a.path,a.kind),...a,placeholder:!1}):(r.placeholder=!1,Object.assign(r,a))}return ur([...n.values()])}function ur(e){return e.sort((t,n)=>+(n.kind==="DIRECTORY")-+(t.kind==="DIRECTORY")||t.name.localeCompare(n.name))}function Ho(e,t){return e.children.find(n=>n.path===t)}function Xn(e,t){if(e.path===t)return e;for(const n of e.children){const a=Xn(n,t);if(a!==void 0)return a}}function dc(e){return[...e.expanded?[e.path]:[],...e.children.flatMap(t=>dc(t))]}function cy(e){const t=new Map,n=a=>{a.kind==="DIRECTORY"&&(t.set(a.path,a.children.length),a.children.forEach(n))};return n(e),t}function vr(e){const t=Mi(e);return{...t,loading:!1,children:Mi(t.children).map(vr)}}function dy(e){return e.replaceAll("\\","/").replace(/^\.\//,"").replace(/^\/+|\/+$/g,"")}function Ls(e){const t=e.replaceAll("\\","/");if(sa(t)||t.startsWith("/")||/^[a-z]:/iu.test(t))return;const n=dy(t);if(!(n===""||n.split("/").some(a=>a==="..")))return n}function uc(e){let t,n=!1;return{request(){return n=!0,t!==void 0||(t=(async()=>{try{for(;n;)n=!1,await e()}finally{t=void 0}})()),t},running(){return t!==void 0}}}function uy(e,t){return e?/^[a-z]:[\\/]+$/iu.test(e)?e:e.split(/[\\/]/u).filter(Boolean).at(-1)??e:t}function vy(e){let t=0;const n=x(!1),a=x(!1);let r=0;function s(){const S=e.target();return S===void 0?void 0:{target:{...S},generation:r}}function i(S){const m=e.target();return S.generation===r&&m?.nodeId===S.target.nodeId&&m.workspaceId===S.target.workspaceId}async function l(S,m,A,L,y="operation"){if(!i(S))return;const D=()=>i(S),E=u.selectedPath.value;let H;try{H=await e.mutate(S.target,m,A,L,D)}catch(X){e.onMutationFailure(X,y,S.target,A);return}try{if(!D())return;if(m==="DELETE")(E===A||E?.startsWith(`${A}/`))&&e.onDeletedSelection();else if(H!==void 0){const X=m==="MOVE"&&E?.startsWith(`${A}/`)?`${H}${E.slice(A.length)}`:H;if(await u.reveal(X,D),!D())return;u.selectPath(X),await e.onRevealSelection(X,D)}return D()?H:void 0}catch(X){D()&&e.onMutationFailure(X,y,S.target,A);return}}async function v(S,m){i(S)&&await e.revealLocal(S.target,m)}const u=iy({workspaceName:e.workspaceName,async list(S,m){const A=e.target();if(A===void 0)throw new Error("FILE_TREE_NOT_READY");return e.list({...A},S,m)}});async function d(){const S=r,m=e.target();if(m===void 0)return;const A=await u.refresh(),L=e.target();S===r&&L?.nodeId===m.nodeId&&L.workspaceId===m.workspaceId&&A?.workspace!==void 0&&e.onWorkspace(A.workspace)}function w(){const S=r;return uc(async()=>{if(S===r){a.value=!0;try{await d()}finally{S===r&&(a.value=!1)}}})}let k=w();function T(){r+=1,a.value=!1,k=w()}function p(){T(),u.reset()}function g(S){T(),u.restore(S),u.setRootName(e.workspaceName())}function R(){t+=1,n.value=!1}function b(S){const m=e.target();return S.generation===t&&m?.nodeId===S.target.nodeId&&m.workspaceId===S.target.workspaceId}async function C(S,m){const A=e.target();if(A===void 0||S.length===0)return;const L={target:{...A},generation:++t},y=[...S];n.value=!0;try{const D=await e.preflight(L.target,m,y.map(E=>E.name));return b(L)?{...L,directory:m,files:y,candidates:D}:void 0}catch(D){b(L)&&e.onFailure(D);return}finally{b(L)&&(n.value=!1)}}function I(S,m){if(!b(S))return;const A=S.files.flatMap((L,y)=>{const D=S.candidates[y],E=m[y]===!0;return D?.status==="READY"||D?.status==="EXISTS_FILE"&&E?[{file:L,directory:S.directory,overwrite:E}]:[]});return R(),A.length>0&&e.queue(A),S.files.length-A.length}return{tree:u,captureTarget:s,isCurrentTarget:i,mutate:l,revealLocal:v,refreshing:ct(a),refresh:d,requestRefresh:()=>k.request(),resetTree:p,invalidateTree:T,restoreTree:g,preflight:C,submit:I,invalidate:R,isCurrentPreflight:b,preparing:ct(n)}}function Or(e,t,n,a){if(t===void 0)return typeof n=="string"&&(e!==""||n!==a)?e:void 0}function fy(e,t,n,a,r){const s=t.filter(i=>i.repositoryPath===e.repositoryPath&&(i.worktreePath??"")===(e.worktreePath??"")).map(i=>i.path);return{kind:"WORKTREE_DIFF",...Or(e.repositoryPath,e.worktreePath,a,r)===void 0?{}:{gitFile:!0},...n,path:e.path,repositoryPath:e.repositoryPath,worktreePath:e.worktreePath??"",paths:s}}function py(e,t,n){const a=Or(e.repositoryPath,e.worktreePath,t,n);return{path:a===void 0&&e.worktreePath===void 0?vn(e):e.path,...e.worktreePath===void 0?{}:{worktreePath:e.worktreePath},...a===void 0?{}:{repositoryPath:a}}}function gy(e,t,n,a){return{kind:"HISTORY_DIFF",...e,path:n.path,repositoryPath:a.repositoryPath,worktreePath:"",commit:t.hash,...n.previousPath===void 0?{}:{previousPath:n.previousPath},refs:[...a.refs],paths:[n.path]}}function my(e,t){return e.find(n=>n.diffAvailable&&vn(n)===t)}function hy(e,t,n){const a=e.filter(s=>s.diffAvailable&&s.repositoryPath===t.repositoryPath&&(s.worktreePath??"")===t.worktreePath);if(a.length===0)return;const r=a.findIndex(s=>s.path===t.path);return a[(Math.max(r,0)+n+a.length)%a.length]}function yy(e,t,n,a,r){if(typeof e!="object"||e===null)return[];const s=e.changes;return Array.isArray(s)?s.flatMap(i=>{if(typeof i!="object"||i===null)return[];const l=i;return typeof l.path=="string"?[{repositoryPath:t,repositoryName:n,source:a,...r===void 0?{}:{worktreePath:r},path:l.path,state:l.state==="STAGED"||l.state==="UNSTAGED"||l.state==="UNTRACKED"?l.state:"UNTRACKED",change:typeof l.change=="string"?l.change:"MODIFIED",diffAvailable:l.diffAvailable===!0}]:[]}):[]}function vc(e){if(typeof e!="object"||e===null)return[];const t=e;if(!Array.isArray(t.repositories))return[];const n=t.repositories.flatMap(r=>{if(typeof r!="object"||r===null)return[];const s=r;if(typeof s.repositoryPath!="string")return[];if(s.source!=="ROOT"&&s.source!=="SUBMODULE"&&s.source!=="WORKTREE")return[];const i=s.source,l=i==="WORKTREE"&&typeof s.worktreePath=="string"?s.worktreePath:void 0;if(i==="WORKTREE"&&l===void 0)return[];const v=typeof s.repositoryName=="string"&&s.repositoryName.length>0?s.repositoryName:s.repositoryPath,u=hl.safeParse(s.error),d=df.safeParse(s.tracking);return[{repositoryPath:s.repositoryPath,repositoryName:v,source:i,...l===void 0?{}:{worktreePath:l},...typeof s.physicalPath=="string"?{physicalPath:s.physicalPath}:{},current:s.current===!0||i==="ROOT",branch:typeof s.branch=="string"?s.branch:null,...d.success&&s.status!=="UNAVAILABLE"?{tracking:d.data}:{},...typeof s.head=="string"?{head:s.head}:{},...s.status==="CLEAN"||s.status==="DIRTY"||s.status==="UNAVAILABLE"?{status:s.status}:{},locked:s.locked===!0,prunable:s.prunable===!0,...u.success?{error:u.data}:{},...s.changesTruncated===!0?{changesTruncated:!0}:{},changes:s.status==="UNAVAILABLE"?[]:yy(s,s.repositoryPath,v,i,l)}]}),a=n.find(r=>r.source==="ROOT");return a===void 0?n:[a,...n.filter(r=>r!==a)]}function wy(e){return vc(e).flatMap(t=>t.changes)}function ky(e,t){let n=t;return e.flatMap(a=>{if(a.changes.length===0)return[a];if(n<=0)return[];const r=a.changes.slice(0,n);return n-=r.length,[{...a,changes:r}]})}function by(e){if(typeof e!="object"||e===null)return!1;const t=e.repositories;return Array.isArray(t)?t.some(n=>typeof n=="object"&&n!==null&&(n.source==="ROOT"||n.source==="SUBMODULE"||n.source==="WORKTREE")):!1}function Iy(e){if(typeof e!="object"||e===null)return[];const t=e.worktrees;return Array.isArray(t)?t.flatMap(n=>{if(typeof n!="object"||n===null)return[];const a=n;return typeof a.directoryName!="string"||a.directoryName.length===0||typeof a.branch!="string"&&a.branch!==null||typeof a.head!="string"||!/^[0-9a-f]{40,64}$/u.test(a.head)||typeof a.current!="boolean"||a.status!=="CLEAN"&&a.status!=="DIRTY"&&a.status!=="UNAVAILABLE"||typeof a.locked!="boolean"||typeof a.prunable!="boolean"?[]:[a]}):[]}function Sy(e){return typeof e=="object"&&e!==null&&e.worktreesTruncated===!0}function vn(e){return e.worktreePath!==void 0?`${e.worktreePath.replace(/[\\/]+$/u,"")}/${e.path}`:e.repositoryPath.length===0?e.path:`${e.repositoryPath}/${e.path}`}function fc(e){return{ADDED:"A",MODIFIED:"M",DELETED:"D",RENAMED:"R",COPIED:"C",TYPE_CHANGED:"T"}[e]??"?"}function fr(e){return e.split("/").at(-1)??e}function Ws(e){const t=e.lastIndexOf("/");return t>0?e.slice(0,t):""}const Cy=3e4;function Ty(e){const t=wt(),n=x(!1),a=x(!1),r=wt();let s=!1;const i=x(!1),l=x(!1);let v=!1;const u=new Map,d=x(),w=x(""),k=x([]),T=wt([]),p=wt([]),g=x(null),R=x(!1),b=x(),C=wt(),I=wt({}),S=x([]),m=x([]),A=wt({}),L=wt({repositoryPath:"",refs:[]});let y,D,E=0,H=0,X=-1,_;const U=new Map,Q=j(()=>wy(t.value)),$=j(()=>vc(t.value)),V=j(()=>by(t.value)?[]:Iy(t.value)),N=j(()=>Sy(t.value)),h=j(()=>{const Te=t.value?.errors;return Array.isArray(Te)?Te.flatMap(Ge=>{const _e=hl.safeParse(Ge);return _e.success?[_e.data]:[]}):[]});function F(Te,Ge){const _e=e.target();return Ge===E&&_e?.nodeId===Te.nodeId&&_e.workspaceId===Te.workspaceId}function z(Te,Ge,_e={},tt){const Xe=new URLSearchParams({nodeId:Te.nodeId,..._e});tt?.repositoryPath&&Xe.set("repositoryPath",tt.repositoryPath);for(const Re of tt?.refs??[])Xe.append("refs",Re);return`/api/workspaces/${encodeURIComponent(Te.workspaceId)}${Ge}?${Xe}`}function fe(Te,Ge){a.value=!1,r.value=void 0;const _e=Pr(Te?.workspace);if(_e!==void 0&&e.onWorkspace(_e),_e?.kind==="DIRECTORY"){ye(!0);return}t.value=Te;const tt=Gl(Te);tt!==void 0&&e.onBranch(Ge.workspaceId,tt)}function J(Te){return uc(async()=>{const Ge=e.target();if(Ge===void 0||Te!==E||!e.gitEnabled())return;const _e=v;v=!1,n.value=!0;const tt=X;try{const Xe=await e.http.request(z(Ge,"/changes"));F(Ge,Te)&&tt===X&&fe(Xe,Ge)}catch(Xe){F(Ge,Te)&&tt===X&&(a.value=!0,r.value=Xe,s=_e,e.onFailure(Xe,"CHANGES"))}finally{F(Ge,Te)&&(n.value=!1)}_e&&F(Ge,Te)&&e.gitEnabled()&&oe(Ge,Te)})}let re=J(E);function ge(Te=e.target()){return Te?.nodeId===_?.nodeId&&Te?.workspaceId===_?.workspaceId}async function ce(Te,Ge){try{const _e=await e.http.request(z(Te,"/git/fetch"),{method:"POST",body:JSON.stringify({nodeId:Te.nodeId,...Ge===void 0?{}:{repositoryPath:Ge}})});return{fetchFailed:_e.fetchFailed!==!1,updated:_e.updated!==!1}}catch{return{fetchFailed:!0,updated:!0}}}function oe(Te,Ge){const _e=JSON.stringify([Te.nodeId,Te.workspaceId]);let tt=u.get(_e);if(tt?.pending===void 0){v=!1,tt={startedAt:performance.now(),failed:!1},u.set(_e,tt);const Xe=tt;Xe.pending=ce(Te).then(Re=>(Xe.failed=Re.fetchFailed,delete Xe.pending,Re))}tt.generation!==Ge&&(tt.generation=Ge,tt.pending.then(Xe=>{if(!(!F(Te,Ge)||!e.gitEnabled())&&(i.value=Xe.fetchFailed,Xe.updated))return P()}))}function P(Te=!1){ge()||ye();const Ge=e.target();if(Te&&Ge!==void 0&&e.gitEnabled()){const _e=u.get(JSON.stringify([Ge.nodeId,Ge.workspaceId]));_e?.pending!==void 0?(oe(Ge,E),Te=!1):_e!==void 0&&performance.now()-_e.startedAt<Cy&&(i.value=_e.failed,Te=!1)}return v||=Te,re.request()}function G(Te,Ge){const _e=e.target();return ge(_e)||ye(),_e===void 0||(Ge===void 0?X>=0:!Number.isInteger(Ge)||Ge<=X)?!1:(X=Ge??0,fe(Te,_e),!0)}function ue(){I.value={},S.value=[],m.value=[],A.value={},U.clear()}function ne(){H+=1,R.value=!1,S.value=[],U.clear()}async function M(Te=!1,Ge=!1){const _e=e.target();if(_e===void 0||!e.historyEnabled()||!Te&&R.value)return;const tt=E,Xe=Te?++H:H,Re=Te?{repositoryPath:w.value,refs:[...k.value]}:{...L.value,refs:[...L.value.refs]},de=()=>F(_e,tt)&&Xe===H&&e.historyEnabled(),Ae=Te?null:g.value;R.value=!0;try{Ge&&D?.repositoryPath!==Re.repositoryPath&&(D={repositoryPath:Re.repositoryPath,promise:ce(_e,Re.repositoryPath).then(be=>be.fetchFailed)});const he=D?.repositoryPath===Re.repositoryPath?D:void 0;if(he!==void 0){const be=await he.promise;if(D===he&&(D=void 0),!de())return;l.value=be,y=void 0}let q;if(Te&&y!==Re.repositoryPath){const be=await e.http.request(z(_e,"/git/refs",{},Re));if(!de())return;if(!Array.isArray(be.refs))throw new Error("NODE_RESPONSE_INVALID");q=be.refs.filter(Ey),T.value=q,y=Re.repositoryPath;const Oe=new Set(q.map(We=>We.name));Re.refs=Re.refs.filter(We=>Oe.has(We)),k.value=[...Re.refs]}const te=await e.http.request(z(_e,"/git/history",{limit:"50",...Ae===null?{}:{cursor:Ae}},Re));if(!de())return;if(!Array.isArray(te.commits)||!te.commits.every(Ms))throw new Error("NODE_RESPONSE_INVALID");const Y=Te?[]:p.value,se=new Set(Y.map(be=>be.hash));p.value=[...Y,...te.commits.filter(be=>se.has(be.hash)?!1:(se.add(be.hash),!0))],g.value=typeof te.nextCursor=="string"?te.nextCursor:null,b.value=void 0,C.value=void 0,Te&&(L.value=Re,ue())}catch(he){de()&&(b.value={resetPage:Te,fetch:Ge},C.value=he,e.onFailure(he,"HISTORY"))}finally{de()&&(R.value=!1)}}function ee(Te,Ge){const _e=Te!==w.value;return w.value=Te,k.value=[...Ge],_e&&(l.value=!1),M(!0,_e)}async function le(){ge()||ye();const Te=e.target(),Ge=E,_e=H;if(Te===void 0||!e.historyEnabled()||(t.value===void 0&&await P(),!F(Te,Ge)||_e!==H||!e.historyEnabled()))return;const tt=$.value.filter(Xe=>Xe.source!=="WORKTREE");tt.some(Xe=>Xe.repositoryPath===w.value)||(w.value=tt[0]?.repositoryPath??""),y=void 0,await M(!0,!0)}function Ee(Te){const Ge=e.target(),_e=E;if(Ge===void 0||!e.historyEnabled())return Promise.resolve(!1);if(I.value[Te.hash]!==void 0)return Promise.resolve(!0);const tt=U.get(Te.hash);if(tt?.promise!==void 0)return tt.promise;const Xe={};U.set(Te.hash,Xe);const Re=L.value,de={...Re,refs:[...Re.refs]},Ae=()=>F(Ge,_e)&&U.get(Te.hash)===Xe&&e.historyEnabled()&&Re===L.value;S.value=[...S.value,Te.hash];const he=(async()=>{try{if(!Ae())return!1;const q=await e.http.request(z(Ge,`/git/commits/${encodeURIComponent(Te.hash)}/files`,{},de));if(!Ae())return!1;if(!Array.isArray(q.files)||!q.files.every(Ry))throw new Error("NODE_RESPONSE_INVALID");I.value={...I.value,[Te.hash]:q.files},m.value=m.value.filter(se=>se!==Te.hash);const{[Te.hash]:te,...Y}=A.value;return A.value=Y,!0}catch(q){return Ae()&&(m.value.includes(Te.hash)||(m.value=[...m.value,Te.hash]),A.value={...A.value,[Te.hash]:q},e.onFailure(q,"FILES")),!1}finally{Ae()&&(S.value=S.value.filter(q=>q!==Te.hash),U.delete(Te.hash))}})();return Xe.promise=he,he}async function xe(Te,Ge){const _e={nodeId:Te.nodeId,workspaceId:Te.workspaceId};let tt;if(Te.kind==="HISTORY_DIFF"&&Te.commit!==void 0)tt=z(_e,`/git/commits/${encodeURIComponent(Te.commit)}/diff`,{path:Te.path,...Te.previousPath===void 0?{}:{previousPath:Te.previousPath}},{repositoryPath:Te.repositoryPath,refs:Te.refs??[]});else if(Te.kind==="WORKTREE_DIFF")tt=z(_e,"/changes/diff",{path:Te.path,...Te.repositoryPath===""?{}:{repositoryPath:Te.repositoryPath},...Te.worktreePath===""?{}:{worktreePath:Te.worktreePath}});else throw new Error("NODE_RESPONSE_INVALID");const Xe=await e.http.request(tt,Ge===void 0?{}:{signal:Ge});if(typeof Xe!="object"||Xe===null||!("diff"in Xe))throw new Error("NODE_RESPONSE_INVALID");return Xe.diff}async function Me(Te,Ge=e.target()){const _e=E;if(Ge===void 0||!e.gitEnabled()||!F(Ge,_e)||d.value!==void 0)return!1;d.value=pr(Te);try{return await e.http.request(z(Ge,"/changes/restore"),{method:"POST",body:JSON.stringify({nodeId:Ge.nodeId,path:Te.path,state:Te.state,...Te.repositoryPath===""?{}:{repositoryPath:Te.repositoryPath},...Te.worktreePath===void 0?{}:{worktreePath:Te.worktreePath}})}),F(Ge,_e)&&await P(),!0}catch(tt){return e.onFailure(tt,"RESTORE"),!1}finally{F(Ge,_e)&&(d.value=void 0)}}function Se(){return{changes:t.value,historyRepositoryPath:w.value,selectedHistoryRefs:[...k.value],historyCommits:[...p.value],historyNextCursor:g.value,historySource:{...L.value,refs:[...L.value.refs]}}}function ye(Te=!1){E+=1,H+=1,(!Te||!ge())&&(X=-1);const Ge=e.target();_=Ge===void 0?void 0:{...Ge},re=J(E),t.value=void 0,n.value=!1,a.value=!1,r.value=void 0,s=!1,v=!1,i.value=!1,l.value=!1,d.value=void 0,w.value="",k.value=[],T.value=[],y=void 0,p.value=[],D=void 0,g.value=null,R.value=!1,b.value=void 0,C.value=void 0,L.value={repositoryPath:"",refs:[]},ue()}function Fe(Te){const Ge=t.value,_e=ge()&&X>=0;ye(!0),!(e.target()===void 0||!e.gitEnabled())&&(t.value=_e?Ge:Te.changes,w.value=typeof Te.historyRepositoryPath=="string"?Te.historyRepositoryPath:"",k.value=Array.isArray(Te.selectedHistoryRefs)?Te.selectedHistoryRefs.filter(tt=>typeof tt=="string"):[],p.value=Array.isArray(Te.historyCommits)?Te.historyCommits.filter(Ms):[],g.value=typeof Te.historyNextCursor=="string"?Te.historyNextCursor:null,L.value=Te.historySource??{repositoryPath:w.value,refs:[...k.value]})}function Ye(){return t.value?.repositoryRoot}function nt(Te){const Ge=e.target();return Ge===void 0?void 0:fy(Te,Q.value.filter(_e=>_e.diffAvailable),Ge,Ye(),e.workspacePath?.())}function ae(Te){return py(Te,Ye(),e.workspacePath?.())}function me(Te,Ge){const _e=e.target();return _e===void 0?void 0:gy(_e,Te,Ge,L.value)}function Pe(Te,Ge){return Or(Te,Ge,Ye(),e.workspacePath?.())}async function Ue(Te){if(!e.gitEnabled())return;await P();const Ge=my(Q.value,Te);return Ge===void 0?void 0:nt(Ge)}function Qe(Te,Ge){const _e=hy(Q.value,Te,Ge);return _e===void 0?void 0:nt(_e)}return{changes:ct(t),changesRefreshing:ct(n),changesError:ct(a),changesFailureCause:ct(r),changesFetchFailed:ct(i),historyFetchFailed:ct(l),restoringPath:ct(d),visibleChanges:Q,changeIntent:nt,changeLocation:ae,historyIntent:me,resolveRepositoryPath:Pe,comparison:Ue,adjacentDiff:Qe,repositories:$,worktrees:V,worktreesTruncated:N,discoveryErrors:h,historyRepositoryPath:ct(w),selectedHistoryRefs:ct(k),historyRefs:ct(T),historyCommits:ct(p),historyNextCursor:ct(g),historyLoading:ct(R),historyError:ct(b),historyFailureCause:ct(C),historyFiles:ct(I),historyFilesLoading:ct(S),historyFilesErrors:ct(m),historyFilesFailureCauses:ct(A),historySource:ct(L),loadChanges:P,retryChanges:()=>P(s),applyWatch:G,loadHistory:M,selectHistory:ee,openHistory:le,cancelHistoryPending:ne,loadHistoryFiles:Ee,loadDiff:xe,restoreChange:Me,snapshot:Se,restore:Fe,reset:ye}}function pr(e){return`${e.repositoryPath}:${e.worktreePath??""}:${e.state}:${e.path}`}function Ey(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.name=="string"&&typeof t.displayName=="string"&&typeof t.hash=="string"&&typeof t.current=="boolean"&&(t.kind==="LOCAL"||t.kind==="REMOTE")}function Ms(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.hash=="string"&&Array.isArray(t.parents)&&t.parents.every(n=>typeof n=="string")&&typeof t.subject=="string"&&typeof t.authorName=="string"&&typeof t.authorEmail=="string"&&typeof t.committedAt=="number"&&Array.isArray(t.refs)&&t.refs.every(n=>typeof n=="string")}function Ry(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.path=="string"&&typeof t.change=="string"&&(t.previousPath===void 0||typeof t.previousPath=="string")}function xs(e){if(typeof e!="object"||e===null)return!1;const t=e;return Array.isArray(t.matches)&&t.matches.every(n=>typeof n=="object"&&n!==null&&typeof n.path=="string"&&Number.isInteger(n.line)&&n.line>0&&Number.isInteger(n.column)&&n.column>0&&typeof n.preview=="string")&&typeof t.truncated=="boolean"}function Ay(e){const t=wt([]),n=x(!1),a=x(""),r=x(!1),s=x(!1),i=wt();let l,v=0;async function u(T,p=!1){if(T.query==="")return;const g=++v,{nodeId:R,workspaceId:b,query:C,useRegex:I}=T;s.value=!0,p||(i.value=void 0);try{const S=new URLSearchParams({nodeId:R,q:C});I&&S.set("regex","true");const m=await e.http.request(`/api/workspaces/${encodeURIComponent(b)}/content/search?${S}`);if(g!==v)return;if(!xs(m?.search))throw new Error("NODE_RESPONSE_INVALID");t.value=[...m.search.matches],n.value=m.search.truncated,a.value=C,r.value=I,i.value=void 0,l=void 0}catch(S){if(g!==v)return;i.value=S,l={nodeId:R,workspaceId:b,query:C,useRegex:I},e.onFailure(S)}finally{g===v&&(s.value=!1)}}function d(){v+=1,s.value=!1}function w(){d(),t.value=[],n.value=!1,a.value="",r.value=!1,i.value=void 0,l=void 0}function k(T){w(),t.value=Array.isArray(T.contentMatches)?T.contentMatches.filter(p=>xs({matches:[p],truncated:!1})):[],n.value=T.contentSearchTruncated===!0,a.value=typeof T.contentAppliedQuery=="string"?T.contentAppliedQuery:"",r.value=T.contentAppliedUseRegex===!0}return{matches:ct(t),truncated:ct(n),appliedQuery:ct(a),appliedUseRegex:ct(r),loading:ct(s),error:ct(i),search:u,cancelPending:d,snapshot:()=>({contentAppliedQuery:a.value,contentAppliedUseRegex:r.value,contentMatches:[...t.value],contentSearchTruncated:n.value}),retry:()=>l===void 0||s.value?Promise.resolve():u(l,!0),restore:k,reset:w}}function Ny(e,t,n,a,r){const s=e?.nodeId===t&&e.workspaceId===n?e:void 0;return{...s,nodeId:t,workspaceId:n,...a.files===void 0?{}:{files:a.files,...r?.topic==="files"?{filesWatchRevision:(s?.filesWatchRevision??0)+1}:{}},...a.changes===void 0?{}:{changes:a.changes,...r?.topic==="changes"?{changesWatchRevision:(s?.changesWatchRevision??0)+1}:{}}}}function Dy(e){const t=wt(),n=j(()=>{const ce=e.workspace();return uy(ce?.path,ce===void 0?"":Jn(ce))}),a=(ce,oe)=>e.notice(c("generated.workspaceInspector.unableToLoad",{value0:oe,value1:e.errorMessage(ce)}),"error",ce),r=ry({http:e.http,onWritten:async(ce,oe)=>{oe?.()!==!1&&(await i.refresh(),oe?.()!==!1&&e.isGit()&&await s.loadChanges())}}),s=Ty({http:e.http,target:()=>e.ready()?e.target.value:void 0,gitEnabled:e.isGit,workspacePath:e.workspacePath,historyEnabled:()=>e.isGit()&&e.historySupported(),onWorkspace:ce=>e.updateWorkspace(e.target.value?.nodeId??"",ce),onBranch:e.updateBranch,onFailure:(ce,oe)=>{oe==="RESTORE"&&a(ce,c("generated.workspaceInspector.revertingChanges"))}}),i=vy({target:()=>e.ready()?e.target.value:void 0,workspaceName:()=>n.value,list:r.list,onWorkspace:ce=>e.updateWorkspace(e.target.value?.nodeId??"",ce),onDeletedSelection:()=>e.workbench.invalidateDeletedSelection(),onRevealSelection:async(ce,oe)=>{await t.value?.reveal(ce,oe)},onMutationFailure:(ce,oe,P,G)=>a(ce,`${c(oe==="move"?"generated.workspaceInspector.movingFile":"generated.workspaceInspector.fileOperation")} (${P.nodeId}/${P.workspaceId}: ${G})`),mutate:r.mutate,revealLocal:r.reveal,preflight:r.preflight,queue:e.queueUploads,onFailure:ce=>a(ce,c("generated.workspaceInspector.uploadPreflight"))}),l=Ay({http:e.http,onFailure:ce=>{gt(ce)==="CAPABILITY_UNAVAILABLE"&&a(ce,c("generated.workspaceInspector.contentSearch"))}}),v=x(0),u=x(0),d=x(),w=wt();let k=-1,T;function p(){const ce=d.value,oe=e.target.value;if(ce===void 0||oe===void 0||ce.nodeId!==oe.nodeId||ce.workspaceId!==oe.workspaceId)return;const P=ce.filesWatchRevision;if(lc(ce.files)&&(P===void 0?k<0:Number.isInteger(P)&&P>k)){i.tree.applyRootPage(ce.files.files);const G=Pr(ce.files.workspace);G!==void 0&&e.updateWorkspace(oe.nodeId,G),k=P===void 0||!Number.isInteger(P)?0:P}ce.changes!==void 0&&s.applyWatch(ce.changes,ce.changesWatchRevision)}const g=He(d,p);let R=[];function b(){if(R.length>0)return;const ce=j(()=>e.visible()&&e.ready()&&e.activeTool()==="files"),oe=j(()=>e.visible()&&e.ready()&&e.searchReady()&&e.activeTool()==="search"),P=j(()=>e.visible()&&e.ready()&&e.isGit()&&e.historySupported()&&e.activeTool()==="history"),G=()=>{!e.visible()||!e.ready()||(e.activeTool()==="changes"?s.loadChanges(!0):P.value&&s.openHistory())};R=[He([ce,()=>e.target.value?.nodeId,()=>e.target.value?.workspaceId],([ue,ne,M],[ee,le,Ee])=>{ee&&!ue&&ne===le&&M===Ee&&i.invalidate(),ue&&(!ee||ne!==le||M!==Ee)&&i.requestRefresh()},{flush:"sync"}),He(v,()=>{ce.value&&i.requestRefresh()}),He(oe,(ue,ne)=>{ne&&!ue&&l.cancelPending()},{flush:"sync"}),He(P,(ue,ne)=>{ne&&!ue&&s.cancelHistoryPending()},{flush:"sync"}),He([e.visible,e.ready,()=>e.target.value?.nodeId,()=>e.target.value?.workspaceId,e.isGit,e.historySupported,e.activeTool],G,{flush:"post"}),He(u,()=>{e.visible()&&e.activeTool()==="changes"&&s.loadChanges()})],G(),ce.value&&i.requestRefresh()}function C(){R.forEach(ce=>ce()),R=[]}function I(ce,oe,P,G){d.value=Ny(d.value,ce,oe,P,G)}function S(){T=void 0,k=-1}function m(){if(T===void 0||!e.ready()||!e.isGit())return;const ce=T;T=void 0,p(),s.restore(ce)}function A(ce){ce===void 0?i.resetTree():i.restoreTree(ce),i.tree.setRootName(n.value),k=-1,p()}function L(ce){T=ce,ce!==void 0&&m()}function y(){i.requestRefresh(),e.isGit()&&s.loadChanges()}function D(){S(),i.invalidate(),i.resetTree(),s.reset(),l.reset(),w.value?.restore({})}function E(ce){const oe=w.value;if(oe===ce)return;const P=e.target.value,G=e.cache();oe!==void 0&&P!==void 0&&G.isActive(P.nodeId,P.workspaceId)&&G.updateSearch(P.nodeId,P.workspaceId,{...l.snapshot(),...oe.snapshot()}),w.value=ce??void 0,ce!==null&&P!==void 0&&ce.restore(G.view(P.nodeId,P.workspaceId).search??{})}function H(ce){return{...l.snapshot(),...w.value?.snapshot()??(ce===void 0?{}:{...ce.contentQuery===void 0?{}:{contentQuery:ce.contentQuery},...ce.contentUseRegex===void 0?{}:{contentUseRegex:ce.contentUseRegex}})}}function X(ce){l.restore(ce??{}),w.value?.restore(ce??{})}function _(){w.value?.focus()}function U(){i.invalidate(),i.invalidateTree()}const Q=He(n,ce=>i.tree.setRootName(ce)),$=He(()=>[e.target.value?.nodeId,e.target.value?.workspaceId],([ce,oe],[P,G])=>{ce===P&&oe===G||D()},{flush:"sync"}),V=He([e.ready,e.workspaceKind],([ce,oe],[P,G])=>{G==="GIT_WORKSPACE"&&oe!==void 0&&oe!=="GIT_WORKSPACE"&&(S(),s.reset(!0)),P&&!ce&&U(),ce&&(p(),m())},{flush:"sync"});function N(){C(),g(),Q(),$(),V(),s.reset(),i.invalidate(),i.resetTree(),l.reset()}function h(ce){ce==="changes"?s.loadChanges():i.requestRefresh()}async function F(ce,oe=()=>!0){const P=i.captureTarget(),G=()=>P!==void 0&&i.isCurrentTarget(P)&&oe();G()&&(await i.tree.reveal(ce,G),G()&&(i.tree.selectPath(ce),await t.value?.reveal(ce,G)))}function z(ce,oe=!1){const P=e.target.value;if(!e.ready()||P===void 0)return;const G=ce.diffAvailable?s.changeIntent(ce):void 0,ue=s.changeLocation(ce);e.workbench.openToolIntent({...P,...ue,...G===void 0?{}:{tab:G}},oe)}function fe(ce,oe,P=!1){const G=e.target.value;if(!e.ready()||G===void 0)return;const ue=s.historyIntent(ce,oe);ue!==void 0&&e.workbench.openToolIntent({...G,path:ue.path,tab:ue},P)}function J(ce,oe){return ce.kind==="TOOL_CHANGE_DIFF"?rc(ce,P=>e.http.request(P),oe):s.loadDiff(ce,oe)}function re(ce){ce==="files"?v.value+=1:u.value+=1}function ge(ce,oe,P){e.target.value?.nodeId!==ce||e.target.value.workspaceId!==oe||(P==="files"||P==="changes")&&re(P)}return{invalidateWorkspace:ge,files:i,git:s,search:l,reportFailure:a,revealFileTree:F,loadDiff:J,setFilesPanel:ce=>{t.value=ce??void 0},mountSurface:b,unmountSurface:C,acceptWatch:I,applyWatch:p,resetTarget:S,restorePendingGit:m,restoreFiles:A,restoreGit:L,refreshAfterWrite:y,invalidate:re,activateTarget:D,suspendFiles:U,dispose:N,refreshVisible:h,openGitChange:z,openHistoryDiff:fe,setSearchPanel:E,searchSnapshot:H,restoreSearch:X,focusSearch:_}}function Py(e){function t(){return{target:wt(),fileContent:wt(),contentUrl:x(),loading:x(!1),error:wt(),downloading:x(!1),readController:void 0,operation:0}}const n=new Map;function a(p){let g=n.get(p);return g===void 0&&(g=t(),n.set(p,g)),g}function r(p){const g=a(p);return{target:ct(g.target),fileContent:ct(g.fileContent),contentUrl:ct(g.contentUrl),loading:ct(g.loading),error:ct(g.error),downloading:ct(g.downloading)}}function s(p){p.contentUrl.value?.startsWith("blob:")&&Wo(p.contentUrl.value),p.contentUrl.value=void 0}function i(p){const g=n.get(p);g!==void 0&&(g.operation+=1,g.readController?.abort(),g.loading.value=!1,g.downloading.value=!1,s(g),n.delete(p))}function l(){for(const p of n.keys())i(p)}async function v(p,g,R={}){const b=a(p);b.readController?.abort();const C=new AbortController;b.readController=C;const I=++b.operation,S=()=>n.get(p)===b&&b.operation===I,m={...g,...g.history===void 0?{}:{history:{...g.history,refs:[...g.history.refs]}}};g=m;const A={...e.access(g)};b.target.value=m,b.downloading.value=!1,s(b);const L=R.textPreview??za(g.path);b.fileContent.value={path:g.path,...R.size===void 0?{}:{size:R.size},encoding:L?"utf-8":"base64",content:"",truncated:!1},b.loading.value=!0,b.error.value=void 0;try{if(m.history!==void 0){const X=m.history,_=A.contentUrl(m);if(L){const $=R.serverOnly?void 0:await A.directGitFileReadRange?.(X.commit,g.path,X.repositoryPath,X.refs,0,Qi,void 0,C.signal);if(!S())return;let V,N;if($!==void 0)V=$.bytes,N=$.size;else{const F=await A.fetchFile(m,{signal:C.signal,headers:{range:`bytes=0-${Qi-1}`}});if(!F.ok)throw qa(await F.json().catch(()=>({})),F.status);V=new Uint8Array(await F.arrayBuffer());const z=F.headers.get("content-range")?.match(/\/(\d+)$/u)?.[1];N=z===void 0?V.byteLength:Number(z)}if(!Number.isSafeInteger(N)||N<V.byteLength)throw new Error("NODE_RESPONSE_INVALID");const h=ar(V,g.path,V.byteLength===N);return S()&&(b.fileContent.value={path:g.path,size:N,...h,truncated:h.encoding==="utf-8"&&V.byteLength<N}),S()?b.fileContent.value:void 0}if(qp(g.path)==="unsupported")return b.fileContent.value;const U=await u(m,A,C.signal,R.serverOnly).catch(()=>{});if(!S())return;b.fileContent.value={path:g.path,...U===void 0?{}:{size:U},encoding:"base64",content:"",truncated:!1};const Q=R.serverOnly?void 0:await as(g.path,async()=>A.directGitFileObjectUrl?.(X.commit,g.path,X.repositoryPath,X.refs,C.signal));if(!S()){Q?.startsWith("blob:")&&Wo(Q);return}return b.contentUrl.value=Q??_,b.fileContent.value}if(Er(g.path)){const X=R.serverOnly?void 0:await as(g.path,async()=>A.directFileObjectUrl?.(g.path,g.worktreePath,g.repositoryPath,C.signal));if(!S()){X?.startsWith("blob:")&&Wo(X);return}return b.contentUrl.value=X??A.contentUrl(m),b.fileContent.value}let y=!1,D;async function E(X,_){const U=_?await A.directFileReadRange?.(g.path,0,X,g.worktreePath,D,g.repositoryPath,C.signal):void 0;if(C.signal.throwIfAborted(),U!==void 0){y=!0,D={revision:U.revision,size:U.size};const $=await Yp(U);return{...ar(U.bytes,g.path,U.nextOffset===null),size:U.size,nextOffset:U.nextOffset,...$===void 0?{}:{revision:$}}}if(_&&y)throw new Error("DIRECT_FILE_READ_FAILED");const Q=await A.read(g,X,C.signal);if(!$s(Q))throw new Error("NODE_RESPONSE_INVALID");return Qp(Q.file,g.path)}let H;try{H=await lr(X=>E(X,!R.serverOnly),S)}catch(X){if(!y||R.serverOnly||!S())throw X;D=void 0,H=await lr(_=>E(_,!1),S)}return S()?(b.fileContent.value={path:g.path,size:H.size,encoding:H.encoding,...H.previewEncoding===void 0?{}:{previewEncoding:H.previewEncoding},content:H.encoding==="base64"?"":H.content,truncated:H.encoding!=="base64"&&H.nextOffset!==null,...H.revision===void 0?{}:{revision:H.revision}},b.fileContent.value):void 0}catch(y){if(!S())return;gt(y)==="FILE_TOO_LARGE"?b.fileContent.value={path:g.path,...R.size===void 0?{}:{size:R.size},encoding:"base64",content:"",truncated:!1}:b.error.value=y}finally{S()&&(b.loading.value=!1,b.readController=void 0)}}async function u(p,g,R,b=!1){const C=p.history,I=b?void 0:await g.directGitFileReadRange?.(C.commit,p.path,C.repositoryPath,C.refs,0,1,void 0,R);if(I!==void 0)return I.size;R.throwIfAborted();const S=await g.fetchFile(p,{signal:R,headers:{range:"bytes=0-0"}});if(!S.ok)throw qa(await S.json().catch(()=>({})),S.status);const m=S.headers.get("content-range")?.match(/\/(\d+)$/u)?.[1],A=Number(m??S.headers.get("content-length"));if(!Number.isSafeInteger(A)||A<0)throw new Error("NODE_RESPONSE_INVALID");return A}async function d(p,g,R){const b=n.get(p),C=b?.target.value,I=b?.fileContent.value;if(b===void 0||b.loading.value||C===void 0||I===void 0||I.encoding!=="utf-8"||I.previewEncoding!==void 0||I.truncated||I.revision===void 0||C.history!==void 0||C.repositoryPath!==void 0||C.worktreePath!==void 0||sa(C.path))throw new Error("FILE_WRITE_INVALID");const S=b.operation,m=await e.access(C).write(C.path,g,R),A=m.file?.revision,L=m.file?.size;if(typeof A!="string"||typeof L!="number"||!Number.isSafeInteger(L)||L<0)throw new Error("NODE_RESPONSE_INVALID");n.get(p)===b&&b.operation===S&&b.fileContent.value===I&&(b.fileContent.value={...I,content:g,revision:A,size:L});try{Promise.resolve(e.onWritten(C)).catch(()=>{})}catch{}return A}async function w(p){const g=await e.access(p).read(p,1);if(!$s(g))throw new Error("NODE_RESPONSE_INVALID")}async function k(p){const g=n.get(p),R=g?.target.value;if(g===void 0||R===void 0)return;const b=e.access(R),C=g.contentUrl.value,I=g.operation;g.downloading.value=!0;try{if(C?.startsWith("blob:")){ns(C,R.path.split("/").at(-1)??"download");return}await T(R,b)}finally{n.get(p)===g&&I===g.operation&&(g.downloading.value=!1)}}async function T(p,g=e.access(p)){p={...p,...p.history===void 0?{}:{history:{...p.history,refs:[...p.history.refs]}}},g={...g};const R=p.history,b=R===void 0?await g.directFileDownload?.(p.path,p.worktreePath,p.repositoryPath):await g.directGitFileDownload?.(R.commit,p.path,R.repositoryPath,R.refs);b!==void 0&&b!=="UNAVAILABLE"||ns(g.contentUrl(p,!0),p.path.split("/").at(-1)??"download")}return{page:r,open:v,save:d,checkReadable:w,download:k,downloadTarget:T,close:i,reset:l}}function $s(e){if(typeof e!="object"||e===null||!("file"in e))return!1;const t=e.file;return typeof t=="object"&&t!==null&&(t.encoding==="utf-8"||t.encoding==="base64")&&typeof t.size=="number"&&Number.isSafeInteger(t.size)&&t.size>=0&&typeof t.content=="string"&&(t.nextOffset===null||Number.isSafeInteger(t.nextOffset))}function Oy(){return{navigationLoading:x(!1),navigationTargets:wt([]),navigationNoDefinition:x(!1),navigationNotice:x()}}function Bo(e){if(e.state==="UNAVAILABLE")return"UNAVAILABLE";if(e.state==="FAILED"&&e.failureCode==="SYMBOL_INDEX_LIMIT_EXCEEDED")return"LIMITED"}function Ly(e){const t=new Map;let n=0,a,r;function s(g){let R=t.get(g);return R===void 0&&(R=Oy(),t.set(g,R)),{navigationLoading:ct(R.navigationLoading),navigationTargets:ct(R.navigationTargets),navigationNoDefinition:ct(R.navigationNoDefinition),navigationNotice:ct(R.navigationNotice)}}function i(){n+=1,r?.();const g=a===void 0?void 0:t.get(a);g!==void 0&&(g.navigationLoading.value=!1),a=void 0}function l(g){i();const R=g===void 0?void 0:t.get(g);R!==void 0&&(R.navigationLoading.value=!1,R.navigationTargets.value=[],R.navigationNoDefinition.value=!1,R.navigationNotice.value=void 0)}function v(g){l(g),t.delete(g)}function u(){i(),t.clear()}function d(){return new Promise(g=>{const R=setTimeout(b,1e3);function b(){clearTimeout(R),r=void 0,g()}r=b})}function w(g){return`/api/workspaces/${encodeURIComponent(g.workspaceId)}/symbols`}async function k(g,R){for(let b=0;b<120&&R();b+=1){const C=await g();if(!R())return;const I=vf.safeParse(C?.definition);if(!I.success)throw new Error("NODE_RESPONSE_INVALID");if(I.data.state==="BUILDING"){await d();continue}if(I.data.state==="FAILED"&&Bo(I.data)===void 0)throw new Error(I.data.failureCode??"SYMBOL_INDEX_BUILD_FAILED");return I.data}if(R())throw new Error("SYMBOL_INDEX_BUILD_FAILED")}async function T(g,R){const b={...g},C="symbol"in R?R.symbol:void 0,I="symbol"in R?null:JSON.stringify({nodeId:b.nodeId,path:b.path,reference:{...R.reference,sourceContext:R.sourceContext}});l(b.pageId);const S=t.get(b.pageId);if(S===void 0)return;a=b.pageId;const m=n,A=()=>m===n;S.navigationLoading.value=!0;const L=(y,D)=>e.http.request(`${w(b)}/definition?${new URLSearchParams({nodeId:b.nodeId,path:b.path,symbol:y,references:D})}`);try{const y=await k(C!==void 0?()=>L(C,"0"):()=>e.http.request(`${w(b)}/definition`,{method:"POST",body:I}),A);if(y===void 0||!A())return;const D=Bo(y);if(D!==void 0){S.navigationNotice.value=D;return}if(C!==void 0){const E=y.targets.map(X=>({...X,source:"DEFINITION"}));S.navigationTargets.value=E,S.navigationLoading.value=E.length===0;const H=async()=>{try{const X=await k(()=>L(C,"1"),A);if(X===void 0||!A()||(S.navigationNotice.value=Bo(X),S.navigationNotice.value!==void 0))return;const _=X.targets.length===0?E:X.targets.map(Q=>({...Q,source:"DEFINITION"})),U=X.references.map(Q=>({...Q,source:"REFERENCE"}));S.navigationTargets.value=[..._,...U],S.navigationNoDefinition.value=_.length===0&&U.length===0}catch(X){A()&&e.onFailure(X)}};E.length===0?await H():H()}else{const E=y.paths.map(H=>({...H,source:"FILE"}));E.length===0?S.navigationNoDefinition.value=!0:E.length===1?e.onFileTarget(E[0],b.pageId):S.navigationTargets.value=E}}catch(y){A()&&e.onFailure(y)}finally{A()&&(S.navigationLoading.value=!1)}}async function p(g){try{const R=await e.http.request(`${w(g)}/prepare?${new URLSearchParams({nodeId:g.nodeId,path:g.path})}`);if(!uf.safeParse(R?.preparation).success)throw new Error("NODE_RESPONSE_INVALID")}catch{}}return{page:s,navigate:T,prewarm:p,cancel:i,clear:l,release:v,reset:u}}function Wy(){let e=[],t=-1;function n(l,v){l!==void 0&&(t<0?(e=[l],t=0):e[t]=l,!(l.tabId===v.tabId&&l.line===v.line&&l.column===v.column)&&(e=[...e.slice(0,t+1),v],t+=1))}function a(l,v){const u=t+l;if(!(u<0||u>=e.length))return v!==void 0&&(e[t]=v),t=u,e[t]}function r(l){return t+l>=0&&t+l<e.length}function s(l){const v=e.slice(0,t+1).filter(u=>u.tabId!==l).length;e=e.filter(u=>u.tabId!==l),t=Math.min(e.length-1,v-1)}function i(){e=[],t=-1}return{record:n,travel:a,canTravel:r,remove:s,clear:i}}function My(e){const t=typeof location>"u"?void 0:Ji(location.href),n=x(t!==void 0),a=x(t!==void 0),r=x(!1),s=x(t);let i=typeof location>"u"?void 0:location.href,l=!1,v=!1;function u(T){const p=T.detail?.url;if(typeof p!="string")return;const g=Ji(p);g!==void 0&&(T.preventDefault(),n.value=!0,a.value=!0,r.value=!1,s.value=g,i=p)}async function d(){const T=s.value,p=i;if(v||T===void 0||l||!e.authenticated()||!e.hasNodes())return;l=!0,r.value=!1;let g=!1;try{if(e.nodeId()!==T.nodeId||e.workspaceId()!==T.workspaceId){if(await e.selectWorkspace({nodeId:T.nodeId,workspaceId:T.workspaceId}),v||s.value!==T)return;if(e.nodeId()!==T.nodeId||e.workspaceId()!==T.workspaceId){s.value=void 0,g=!0,r.value=!0;return}}if(!e.filesReady()){if(e.manifestLoading())return;s.value=void 0,g=!0,r.value=!0;return}if(s.value!==T)return;if(s.value=void 0,g=!0,await e.open(T),!v&&s.value===void 0&&e.nodeId()===T.nodeId&&e.workspaceId()===T.workspaceId&&p!==void 0&&typeof location<"u"&&typeof history<"u"){const R=new URL(p,location.href);R.origin===location.origin&&R.pathname===location.pathname&&(history.replaceState(history.state,"",R),e.captureRoute())}}catch{if(v)return;s.value===T?(s.value=void 0,r.value=!0):g&&s.value===void 0&&e.nodeId()===T.nodeId&&e.workspaceId()===T.workspaceId&&(r.value=!0),g=!0}finally{g&&s.value===void 0&&(a.value=!1),l=!1,!v&&s.value!==void 0&&s.value!==T&&Promise.resolve().then(d)}}typeof window<"u"&&window.addEventListener(Xi,u);const w=He([s,()=>e.authenticated(),e.hasNodes,e.nodeId,e.workspaceId,e.filesReady,e.manifestLoading],()=>{d()},{immediate:!0,flush:"post"});function k(){v=!0,w(),typeof window<"u"&&window.removeEventListener(Xi,u)}return Ht()!==void 0&&Zn(k),{standaloneFileMode:n,standaloneFileLoading:a,standaloneFileError:r,dispose:k}}function xy(e){const t=wt(),n=()=>t.value??e.page(),a=oc(),r=Wy(),s=Py({...e.preview,access:e.access}),i=Ly(e.navigation),l=or(),v=or();function u(q,te,Y,se,be,Oe){const We=e.externalTarget();if(We===void 0)return;const Ie=new URLSearchParams({standaloneFile:"1",...We,path:q,rawContent:"1",...e.fileWriteEnabled()&&be===void 0&&Oe===void 0?{write:"1"}:{},...Oe===void 0?{}:{repositoryPath:Oe},...be===void 0?{}:{worktreePath:be},...se==="markdown"?{markdownPreview:"1"}:{},...se==="html"?{htmlPreview:"1"}:{},...te===void 0?{}:{line:String(te)},...Y===void 0?{}:{column:String(Y)}});l.open(`/console?${Ie}`)===void 0&&e.onPopupBlocked()}function d(q){if(q.kind!=="WORKTREE_DIFF"&&q.kind!=="HISTORY_DIFF")return;const te=e.externalTarget();if(te===void 0)return;const Y=new URLSearchParams({standaloneFile:"1",...te,fileTabKind:q.kind,path:q.path,...q.gitFile?{gitFile:"1"}:{},...q.repositoryPath===""?{}:{repositoryPath:q.repositoryPath},...q.worktreePath===""?{}:{worktreePath:q.worktreePath},...q.commit===void 0?{}:{commit:q.commit},...q.previousPath===void 0?{}:{previousPath:q.previousPath}});for(const se of q.refs??[])Y.append("refs",se);for(const se of q.paths??[q.path])Y.append("paths",se);l.open(`/console?${Y}`)===void 0&&e.onPopupBlocked()}function w(q,te){te?u(q.path,void 0,void 0,void 0,q.worktreePath,q.repositoryPath):re(q.path,void 0,q.worktreePath,!1,void 0,q.repositoryPath)}function k(q){const te=e.externalTarget();if(te===void 0)return;const Y=new URLSearchParams({standaloneFile:"1",...te,path:q,htmlPreview:"1"});v.openNew(`/console?${Y}`)===void 0&&e.onPopupBlocked()}const T=He(a.activeTabId,()=>i.cancel(),{flush:"sync"}),p=wt([]),g=x(!1),R=new Map;let b=0,C=0,I=!1,S;function m(){return S=void 0,++b}function A(q){return q===b}function L(){b+=1,S=void 0}function y(q){const te=S;if(te===void 0||q!==void 0&&q!==te.tab.id)return;const Y=e.target();if(te.generation!==b||a.activeTab.value!==te.tab||Y?.nodeId!==te.tab.nodeId||Y.workspaceId!==te.tab.workspaceId){S=void 0;return}const se=n();se===void 0||!se.focusPage(te.tab.id)||(S=void 0,te.line!==void 0&&se.navigateTo(te.tab.id,te.line,te.column))}function D(q,te){q===void 0||!A(te)||a.activeTab.value!==q||(S={tab:q,generation:te},ut(()=>y(q.id)))}function E(){L(),C+=1,I=!1}function H(q){g.value=q}function X(q){return typeof q=="object"&&q!==null&&typeof q.tabIdentity=="string"&&typeof q.path=="string"&&typeof q.content=="string"&&typeof q.expectedRevision=="string"}function _(){const q=new Set(a.tabs.value.map(Y=>Y.identity)),te=new Map([...R].filter(([Y])=>q.has(Y)));for(const Y of n()?.captureDirtyDrafts()??[])X(Y)&&q.has(Y.tabIdentity)&&te.set(Y.tabIdentity,Y);return te}function U(){if(n()?.hasPendingSave())return!1;for(const[q,te]of _())R.set(q,te);for(const q of p.value){const te=n()?.cursorPosition(q.id);te!==void 0&&(q.targetLine.value=te.line,q.targetColumn.value=te.column)}return L(),i.cancel(),H(!0),!0}function Q(){const q=a.snapshot();return{fileTabs:{...q,tabs:q.tabs.map(te=>{const Y=p.value.find(We=>We.id===te.id),se=n()?.cursorPosition(te.id),be=se?.line??Y?.targetLine.value,Oe=se?.column??Y?.targetColumn.value;return{...te,...be===void 0?{}:{targetLine:be},...Oe===void 0?{}:{targetColumn:Oe}}})},dirtyTextDrafts:[..._().values()],fileWindowSuspended:g.value}}function $(q){R.clear();for(const te of q)X(te)&&R.set(te.tabIdentity,te)}function V(q,te,Y){L();const se=++C;Fe(),a.restore(q),$(te),H(Y),N(se)}async function N(q){if(e.target()===void 0){I=!0;return}I=!1;for(const te of a.tabs.value){if(q!==C)return;if(!a.tabs.value.some(be=>be.id===te.id&&be.identity===te.identity))continue;const Y=a.activeTabId.value;let se;if(te.kind==="WORKTREE_TEXT"||te.kind==="WORKTREE_PREVIEW")se=re(te.path,te.targetLine,te.worktreePath===""?void 0:te.worktreePath,!0,te.targetColumn,te.gitFile?te.repositoryPath:void 0,!1,!0);else if(te.kind==="HISTORY_TEXT"&&te.commit!==void 0){const{previousPath:be,...Oe}=te;se=J({...Oe,kind:"HISTORY_DIFF",paths:[te.path]},void 0,!1)}else continue;Y!==void 0&&a.activate(Y),await se}}function h(){I&&e.target()!==void 0&&N(C)}function F(q){const te=s.page(q);return{...te,id:q,get repositoryPath(){return te.target.value?.repositoryPath},worktreePath:j(()=>te.target.value?.worktreePath),get historySource(){return te.target.value?.history},targetLine:x(),targetColumn:x(),...i.page(q)}}function z(q){const te=p.value.find(se=>se.id===q);if(te!==void 0)return te;const Y=F(q);return p.value=[...p.value,Y],Y}async function fe(q,te){const Y=e.target();if(Y===void 0)return;const se=za(q.path),be=a.open({kind:se?"WORKTREE_TEXT":"WORKTREE_PREVIEW",...Y,path:q.path,repositoryPath:te.repositoryPath??"",...te.repositoryPath===void 0?{}:{gitFile:!0},worktreePath:te.worktreePath??"",...te.line===void 0?{}:{targetLine:te.line},...te.column===void 0?{}:{targetColumn:te.column}}),Oe=te.existingPreview??z(be.id);i.clear(Oe.id),Oe.targetLine.value=te.line,Oe.targetColumn.value=te.column;const We=await s.open(Oe.id,{...Y,path:q.path,...te.worktreePath===void 0?{}:{worktreePath:te.worktreePath},...te.repositoryPath===void 0?{}:{repositoryPath:te.repositoryPath}},{textPreview:se,serverOnly:te.serverOnly}),Ie=e.target();Ie?.nodeId===Y.nodeId&&Ie.workspaceId===Y.workspaceId&&We?.encoding==="utf-8"&&p.value.includes(Oe)&&te.worktreePath===void 0&&te.repositoryPath===void 0&&e.prewarmEnabled()&&i.prewarm({nodeId:Y.nodeId,workspaceId:Y.workspaceId,path:q.path})}async function J(q,te,Y=!0){const se=e.target();if(se===void 0||q.kind!=="HISTORY_DIFF"&&q.kind!=="HISTORY_TEXT"||q.commit===void 0)return;const be=le(),Oe=a.open({kind:"HISTORY_TEXT",...se,path:q.path,repositoryPath:q.repositoryPath,worktreePath:"",commit:q.commit,refs:q.refs??[],...q.targetLine===void 0?{}:{targetLine:q.targetLine},...q.targetColumn===void 0?{}:{targetColumn:q.targetColumn}});Y&&Ee(be,Oe.id,q.targetLine,q.targetColumn);const We=z(Oe.id);i.clear(We.id),We.targetLine.value=q.targetLine,We.targetColumn.value=q.targetColumn;const Ie=typeof te=="object"&&te!==null&&te.binary===!0;await s.open(Oe.id,{...se,path:q.path,history:{commit:q.commit,repositoryPath:q.repositoryPath,refs:q.refs??[]}},{textPreview:!Ie&&za(q.path)})}function re(q,te,Y,se=!1,be,Oe,We=!0,Ie=!1){const st=We&&!Ie?m():void 0;We&&H(!1);const pe=fe({path:q,name:q.split("/").at(-1)??q},{serverOnly:!1,...te===void 0?{}:{line:te},...be===void 0?{}:{column:be},...Y===void 0?{}:{worktreePath:Y},...Oe===void 0?{}:{repositoryPath:Oe}});return st!==void 0&&D(a.activeTab.value,st),pe}async function ge(q,te=!1){if(q.kind!=="WORKTREE_DIFF")return;te||m();const Y=le(),se=q.gitFile?q.repositoryPath:e.resolveRepositoryPath(q.repositoryPath,q.worktreePath||void 0),be=se!==void 0?q.path:q.worktreePath===""&&q.repositoryPath!==""?`${q.repositoryPath}/${q.path}`:q.path,Oe=re(be,void 0,q.worktreePath||void 0,!0,void 0,se,!0,!0),We=a.activeTabId.value;We!==void 0&&Ee(Y,We),await Oe}async function ce(q){const te=e.target();if(te===void 0||te.nodeId!==q.nodeId||te.workspaceId!==q.workspaceId)return;const Y=m();if(H(!1),Er(q.path)&&(q.kind==="WORKTREE_DIFF"||q.kind==="HISTORY_DIFF"||q.kind==="HISTORY_TEXT")){if(q.kind!=="WORKTREE_DIFF"&&!q.commit)return;const Oe=q.kind==="WORKTREE_DIFF"?ge(q,!0):J(q),We=a.activeTab.value;D(We,Y),await Oe;return}if(q.kind==="HISTORY_TEXT"){if(!q.commit)return;const Oe=J(q);D(a.activeTab.value,Y),await Oe;return}const se=le(),be=a.open(q);Ee(se,be.id,q.targetLine,q.targetColumn),D(a.activeTab.value,Y),await ut()}async function oe(q,te,Y){const se=m(),be=e.target();if(be===void 0)return;const Oe=le(),We=()=>{const ze=e.target();return A(se)&&ze?.nodeId===be.nodeId&&ze.workspaceId===be.workspaceId};if(sa(q)||q.startsWith(".mar/temp-files/")){try{await s.checkReadable({...be,path:q})}catch(ze){We()&&e.onOpenFailure(ze,q);return}if(!We())return}H(!1);const Ie=p.value.find(ze=>ze.worktreePath.value===void 0&&ze.fileContent.value?.path===q);Ie!==void 0&&(a.activate(Ie.id),te!==void 0&&(Ie.targetLine.value=te),Y!==void 0&&(Ie.targetColumn.value=Y));const st=Ie===void 0?re(q,te,void 0,!0,Y,void 0,!0,!0):Promise.resolve(),pe=a.activeTab.value,Ce=pe?.id,je=()=>We()&&Ce!==void 0&&a.activeTab.value===pe&&a.activeTabId.value===Ce;je()&&Ce!==void 0&&(Ee(Oe,Ce,te,Y),S={tab:pe,generation:se,...Ie!==void 0&&te!==void 0?{line:te}:{},...Ie!==void 0&&Y!==void 0?{column:Y}:{}},ut(()=>{je()&&y(Ce)})),e.reveal(q,je).catch(ze=>{je()&&e.onRevealFailure(ze)}),await st}async function P(q,te,Y){const se=m(),be=e.target();if(be===void 0)return;const Oe=await e.comparison(q),We=e.target();!A(se)||We?.nodeId!==be.nodeId||We.workspaceId!==be.workspaceId||(Oe!==void 0?await ce(Oe):await oe(q,te,Y))}async function G(q){return q.tab!==void 0?ce(q.tab):q.worktreePath===void 0&&q.repositoryPath===void 0?oe(q.path,q.line,q.column):re(q.path,q.line,q.worktreePath,!1,q.column,q.repositoryPath)}function ue(q,te){const Y=e.target();Y?.nodeId!==q.nodeId||Y.workspaceId!==q.workspaceId||(q.tab===void 0?w(q,te):te?d(q.tab):G(q))}const ne=x(0),M=j(()=>(ne.value,r.canTravel(-1))),ee=j(()=>(ne.value,r.canTravel(1)));function le(){const q=a.activeTabId.value;return q===void 0?void 0:{tabId:q,...n()?.cursorPosition(q)}}function Ee(q,te,Y,se){q?.tabId===te&&Y===void 0||(r.record(q,{tabId:te,...Y===void 0?{}:{line:Y},...se===void 0?{}:{column:se}}),ne.value+=1)}function xe(q){const te=r.travel(q,le());if(te===void 0||!a.tabs.value.some(be=>be.id===te.tabId))return;a.activate(te.tabId);const Y=a.activeTab.value,se=n();ut(()=>{Y===void 0||a.activeTab.value!==Y||n()!==se||(te.line!==void 0?se?.navigateTo(te.tabId,te.line,te.column):se?.focusPage(te.tabId))}),ne.value+=1}function Me(q){r.remove(q),ne.value+=1}function Se(){r.clear(),ne.value+=1}function ye(q){const te=p.value.indexOf(q);if(te<0)return;const Y=a.tabs.value.find(be=>be.id===q.id);Y!==void 0&&R.delete(Y.identity);const se=a.activeTabId.value===q.id;s.close(q.id),i.release(q.id),p.value=p.value.filter(be=>be!==q),a.remove(q.id),Me(q.id),se&&a.activate(p.value.at(te-1)?.id??p.value.at(te)?.id??-1)}function Fe(){Se();for(const q of p.value){const te=a.tabs.value.find(Y=>Y.id===q.id);te!==void 0&&R.delete(te.identity),s.close(q.id),a.remove(q.id)}p.value=[],i.reset()}function Ye(q){for(const te of q){const Y=a.tabs.value.find(be=>be.id===te);if(Y===void 0)continue;R.delete(Y.identity);const se=p.value.find(be=>be.id===te);se!==void 0?ye(se):(a.remove(te),Me(te))}}function nt(){E(),H(!1),R.clear(),Fe(),a.clear()}function ae(){E(),H(!1),R.clear(),Fe()}function me(){Ye(a.tabs.value.filter(q=>q.gitFile===!0||q.worktreePath!==""||q.kind==="WORKTREE_DIFF"||q.kind==="HISTORY_DIFF"||q.kind==="HISTORY_TEXT").map(q=>q.id))}function Pe(q){const te=le();if(a.activate(q),a.activeTabId.value!==q)return;const Y=n()?.cursorPosition(q);Ee(te,q,Y?.line,Y?.column)}function Ue(q,te,Y){const se=p.value.find(Oe=>Oe.id===q);if(se===void 0)return;const be=le();se.targetLine.value=te,se.targetColumn.value=Y,n()?.navigateTo(q,te,Y),Ee(be,q,te,Y)}function Qe(q,te){const Y=p.value.find(se=>se.id===te);Y!==void 0&&(i.clear(te),Y.fileContent.value?.path===q.path?Ue(te,q.line,q.column):oe(q.path,q.line,q.column))}async function Te(q){const te=p.value.find(Oe=>Oe.id===q),Y=te?.target.value;if(te===void 0||Y===void 0||te.loading.value)return;const se=n()?.cursorPosition(q);se!==void 0&&(te.targetLine.value=se.line,te.targetColumn.value=se.column),i.clear(q);const be=te.fileContent.value?.size;await s.open(q,Y,{serverOnly:!0,...be===void 0?{}:{size:be}})}async function Ge(q){const te=e.externalTarget();if(te!==void 0)try{await s.downloadTarget({...te,path:q})}catch(Y){(e.onDownloadFailure??e.onOpenFailure)(Y,q)}}function _e(q){if(typeof q!="object"||q===null)return;const te=q;E(),te.fileTabs!==void 0&&Array.isArray(te.fileTabs.tabs)?V(te.fileTabs,te.dirtyTextDrafts??[],te.fileWindowSuspended===!0):$(te.dirtyTextDrafts??[])}function tt(){he?.dispose(),e.lifecycle!==void 0&&typeof window<"u"&&window.removeEventListener("beforeunload",Re);for(const q of de)q();T(),E(),s.reset(),i.reset()}function Xe(q,te){q!==void 0?(t.value=q,y()):t.value===te&&(t.value=void 0)}function Re(q){!g.value||R.size===0||e.lifecycle?.isReloadingForUpdate()||(q.preventDefault(),q.returnValue="")}const de=[],Ae=e.lifecycle,he=Ae===void 0?void 0:My({...Ae.bootstrap,nodeId:()=>e.externalTarget()?.nodeId,workspaceId:()=>e.externalTarget()?.workspaceId,filesReady:Ae.ready,open:G});return Ae!==void 0&&(de.push(He(()=>[e.externalTarget()?.nodeId,e.externalTarget()?.workspaceId],([q,te],[Y,se])=>{q===Y&&te===se||(t.value=void 0,nt())},{flush:"sync"})),de.push(He([Ae.ready,Ae.workspaceKind],([q,te],[,Y])=>{Y==="GIT_WORKSPACE"&&te!==void 0&&te!=="GIT_WORKSPACE"&&me(),q&&h()},{flush:"sync"})),typeof window<"u"&&window.addEventListener("beforeunload",Re)),{standalone:he,setPage:Xe,tabList:a.tabs,activeTabId:a.activeTabId,activeTab:a.activeTab,activateTab:Pe,openNavigationTarget:Qe,saveFile:s.save,reloadFile:Te,downloadFile:s.download,downloadTarget:s.downloadTarget,downloadPath:Ge,navigate:i.navigate,clearNavigationResult:i.clear,restore:_e,resumeRestoration:h,pageReady:y,frames:xi(p),suspended:xi(g),suspendForHtml:U,snapshot:Q,draftFor:q=>R.get(q),consumeDraft:q=>R.delete(q),hasDraft:q=>R.has(q),hasSuspendedDrafts:()=>g.value&&R.size>0,openHistoryText:J,openWorkspaceFile:re,openWorktreeDiffText:ge,openTab:ce,openFile:oe,openExternal:u,openDiffExternal:d,openLocation:w,openHtmlExternal:k,openComparison:P,openStandalone:G,openToolIntent:ue,canGoBack:M,canGoForward:ee,travel:xe,closeTabs:Ye,reset:nt,invalidateDeletedSelection:ae,removeGitTabs:me,dispose:tt}}function $y(e,t=!1){const n=new URLSearchParams({nodeId:e.nodeId,path:e.path}),a=e.history,r=a?.repositoryPath??e.repositoryPath;r!==void 0&&(a===void 0||r!=="")&&n.set("repositoryPath",r),e.worktreePath!==void 0&&n.set("worktreePath",e.worktreePath);for(const i of a?.refs??[])n.append("refs",i);return t&&n.set("download","1"),`${`/api/workspaces/${encodeURIComponent(e.workspaceId)}`}${a===void 0?"/files/content":`/git/commits/${encodeURIComponent(a.commit)}/files/content`}?${n}`}function Fy(e){function t(n){const a={nodeId:n.nodeId,workspaceId:n.workspaceId};function r(C,I=!1){return $y({...C,...a},I)}function s(C,I){const S=new URLSearchParams({nodeId:a.nodeId,path:C.path,offset:"0",limit:String(I)});return C.repositoryPath!==void 0&&S.set("repositoryPath",C.repositoryPath),C.worktreePath!==void 0&&S.set("worktreePath",C.worktreePath),`/api/workspaces/${encodeURIComponent(a.workspaceId)}/files/read?${S}`}function i(C,I,S){const m=s(C,I);return S===void 0?e.http.request(m):e.http.request(m,{signal:S})}const l={revalidate:C=>e.request(s(C,1),{cache:"no-store"}),sourceUrl:(C,I)=>{const S=r(C);return I===void 0?S:`${S}&preview=${encodeURIComponent(I)}`}};function v(C,I,S){return e.http.request(`/api/workspaces/${encodeURIComponent(a.workspaceId)}/files/write`,{method:"PUT",body:JSON.stringify({nodeId:a.nodeId,path:C,content:I,expectedRevision:S})})}function u(C,I){return(e.fetchContent??fetch)(r(C),{credentials:"same-origin",...I})}function d(C,I,S,m){if(sa(C))return;const{nodeId:A,workspaceId:L}=a,y=e.manifest(A),D=y?.nodeGeneration;if(D===void 0||!e.available(A))return;const E={kind:"WORKSPACE_FILE",workspaceId:L,path:C,...S===void 0?{}:{repositoryPath:S},...I===void 0?{}:{worktreePath:I}};return{direct:e.direct,nodeId:A,nodeGeneration:D,resource:E,metadata:()=>y?.directTransfer?.download===!0?Xp({request:e.request,nodeId:A,resource:E,...m===void 0?{}:{signal:m}}):Promise.resolve(void 0)}}function w(C,I,S,m,A){const{nodeId:L,workspaceId:y}=a,D=e.manifest(L),E=D?.nodeGeneration;if(E===void 0||D?.directTransfer?.gitCommitBlob!==!0||!e.available(L))return;const H={kind:"GIT_COMMIT_BLOB",workspaceId:y,commit:C,path:I,...S.length===0?{}:{repositoryPath:S}},X=[...m];return{direct:e.direct,nodeId:L,nodeGeneration:E,resource:H,metadata:()=>Jp({request:e.request,nodeId:L,resource:H,refs:X,...A===void 0?{}:{signal:A}})}}async function k(C,I,S,m,A,L,y){if(e.manifest(a.nodeId)?.directTransfer?.range!==!0)return;const D=d(C,m,L,y);if(D!==void 0)return is({...D,fileName:C.split("/").at(-1)??"file",offset:I,length:S,...y===void 0?{}:{signal:y},...A===void 0?{}:{identity:A}}).catch(()=>{})}async function T(C,I,S,m,A,L,y,D){if(e.manifest(a.nodeId)?.directTransfer?.range!==!0)return;const E=w(C,I,S,m,D);if(E!==void 0)return is({...E,fileName:I.split("/").at(-1)??"file",offset:A,length:L,...D===void 0?{}:{signal:D},...y===void 0?{}:{identity:y}}).catch(()=>{})}async function p(C,I,S,m){const A=d(C,I,S,m);return A===void 0?void 0:(await rs({...A,...m===void 0?{}:{signal:m}}))?.url}async function g(C,I,S){if(e.manifest(a.nodeId)?.directTransfer?.download!==!0)return"UNAVAILABLE";const m=d(C,I,S);return m===void 0||e.activeWorker===void 0?"UNAVAILABLE":os({...m,activeWorker:e.activeWorker})}async function R(C,I,S,m,A){const L=w(C,I,S,m,A);return L===void 0?void 0:(await rs({...L,...A===void 0?{}:{signal:A}}))?.url}async function b(C,I,S,m){if(e.manifest(a.nodeId)?.directTransfer?.download!==!0)return"UNAVAILABLE";const A=w(C,I,S,m);return A===void 0||e.activeWorker===void 0?"UNAVAILABLE":os({...A,activeWorker:e.activeWorker})}return{attachments:l,contentUrl:r,read:i,write:v,fetchFile:u,directFileReadRange:k,directFileObjectUrl:p,directFileDownload:g,directGitFileReadRange:T,directGitFileObjectUrl:R,directGitFileDownload:b}}return{forWorkspace:t}}function Uy(e){const t=x(),n=x(!1),a=j(()=>{const r=e.value;if(r===void 0)return;const s=t.value;return n.value||s===void 0||s.startsWith("draft:")?{kind:"workspace",...r}:{kind:"session",...r,sessionId:s}});return{sessionId:j(()=>t.value),draftOpen:j(()=>n.value),draftTarget:a,setSession:r=>{t.value=r},setDraftOpen:r=>{n.value=r}}}function Vy(e){async function t(l){const v=e.secondaryPane.target.value;v!==void 0&&(v.sessionId!==l&&!n({...v,sessionId:l})||await e.secondaryPane.reloadChecked())}function n(l){const v=e.workspaceTarget.value;if(v?.nodeId!==l.nodeId||v.workspaceId!==l.workspaceId)return!1;const{sessionId:u}=l;if(!e.canOpenAside())return!1;const d=e.aside.current(v).active;return d?.kind==="session"&&d.sessionId===u||(e.saveAside(),e.aside.openSession(l)),!0}function a(l){const v=e.workspaceTarget.value;if(v?.nodeId!==l.nodeId||v.workspaceId!==l.workspaceId)return;const{sessionId:u}=l;if(!e.aside.current(v).sessions.includes(u))return;const d=e.aside.current(v).active;d?.kind==="session"&&d.sessionId===u&&e.saveAside(),e.aside.closeSession(l)}function r(l,v){const u=e.workspaceTarget.value;if(u?.nodeId!==l.nodeId||u.workspaceId!==l.workspaceId||!e.aside.current(u).sessions.includes(l.sessionId))return!1;if(v===l.sessionId)return!0;const d=e.aside.current(u).active;return d?.kind==="session"&&d.sessionId===l.sessionId&&e.saveAside(),e.aside.replaceSession(l,v)}function s(l,v){const u=e.workspaceTarget.value,d=e.aside.current(l).active;u?.nodeId===l.nodeId&&u.workspaceId===l.workspaceId&&d?.kind==="session"&&v.includes(d.sessionId)&&e.saveAside(),e.aside.removeMissing(l,v)}function i(l,v,u){u.preserveMobileWorkspaceSurface||e.closeMobileSurface();const d=e.selectedSessionId.value!==l,w=e.sessions.value.find(k=>k.id===l&&(!u.markReadAfterOpen||k.workspaceId===e.workspaceTarget.value?.workspaceId));if(d&&w!==void 0&&!u.markReadAfterOpen&&e.markSessionRead(v,w.workspaceId,l),w!==void 0){const k=e.workspaceTabId(v,w.workspaceId),T=e.sessions.value.filter(p=>p.workspaceId===w.workspaceId).findIndex(p=>p.id===w.id);e.ensureSessionVisible(k,T)}return u.skipSaveCurrent||e.saveCurrent(),w!==void 0&&e.workspaceTarget.value?.workspaceId!==w.workspaceId&&e.selectWorkspace({nodeId:v,workspaceId:w.workspaceId},!1),e.setDraftOpen(!1),{switching:d,session:w}}return{restoreDraftSelection:()=>{e.setDraftOpen(!0),e.setSelectedSessionId(void 0)},prepareTarget:i,openSession:e.pane.open,selectSession:e.pane.openTab,openWorkspaceTabSession:e.pane.openTab,openAsideSession:n,openAsideTarget:t,closeAsideSession:a,replaceAsideSession:r,removeMissingAside:s,loadingInitialContent:e.pane.loadingContent}}function qy(e){const t=Uy(e);return{...t,connect(n){return Vy({...n,workspaceTarget:e,selectedSessionId:t.sessionId,setSelectedSessionId:t.setSession,draftOpen:t.draftOpen,setDraftOpen:t.setDraftOpen})}}}function Hy(e){const t=e.storage??sessionStorage;function n(b,C="main"){return b===void 0?void 0:C==="main"?`mar.workbench.draft.${b.nodeId}.${b.workspaceId}`:`mar.workbench.aside-draft.${JSON.stringify([b.nodeId,b.workspaceId])}`}const a=()=>n(e.target.value),r=b=>b.kind==="session"?`mar.workbench.session-draft.${JSON.stringify([b.nodeId,b.workspaceId,b.sessionId])}`:n(b),s=new Map,i=new Set,l=new Map,v=new Map,u=new Map;function d(){return{input:x(""),skillTokens:x([]),references:x([])}}function w(b,C="main"){const I=n(b,C),S=`mar.workbench.queue-edit.${JSON.stringify([b.nodeId,b.workspaceId,b.kind,b.kind==="session"?b.sessionId:null])}`,m=`${S}.${C}`;let A=v.get(m);if(A===void 0){let L=s.get(I);L===void 0&&(L=d(),s.set(I,L),g(I,L)),p(b,C,I,L);const y=l.get(S),D=y??x(),E=()=>{let H=!1;try{const X=t.getItem(S),_=X===null?JSON.parse(t.getItem(r(b))??"null"):void 0;D.value=By(X===null?_?.queueEdit:JSON.parse(X)),H=X===null&&D.value!==void 0}catch{D.value=void 0}if(H)try{t.setItem(S,JSON.stringify(D.value))}catch{}};y===void 0&&(l.set(S,D),E()),A={...L,queueEdit:D,restore:()=>{g(I,L),E()},persist:()=>{R(I,L);try{D.value!==void 0?t.setItem(S,JSON.stringify(D.value)):t.getItem(S)!==null&&t.setItem(S,"null")}catch{}}},v.set(m,A)}return A}function k(b,C="main"){const I=()=>{if(b.value!==void 0)return w(b.value,C);let S=u.get(C);return S===void 0&&(S={...d(),queueEdit:x(),restore:()=>{},persist:()=>{}},u.set(C,S)),S};return{slot:j(()=>I()),input:j({get:()=>I().input.value,set:S=>I().input.value=S}),skillTokens:j({get:()=>I().skillTokens.value,set:S=>I().skillTokens.value=S}),references:j({get:()=>I().references.value,set:S=>I().references.value=S}),queueEdit:j({get:()=>I().queueEdit.value,set:S=>I().queueEdit.value=S}),restore:()=>I().restore(),persist:()=>I().persist()}}const T=k(e.target);function p(b,C,I,S){if(!(C!=="main"||b.kind!=="session"||i.has(I)))try{if(t.getItem(I)===null&&S.input.value.length===0&&S.skillTokens.value.length===0&&S.references.value.length===0){const m=t.getItem(r(b));m!==null&&g(I,S,m)}i.add(I),R(I,S)}catch{}}function g(b,C,I){const{input:S,skillTokens:m,references:A}=C;try{const L=I??t.getItem(b);if(L===null){S.value="",m.value=[],A.value=[];return}try{const y=JSON.parse(L);y.sessionDraftsMigrated===!0&&i.add(b),A.value=wp(y.references);const D=typeof y.input=="string"?y.input:"",E=kp(y.skillTokens).map(X=>({...X,available:!1})),H=[...D].filter(X=>X===ji).length;m.value=H>0?E.slice(0,H):E,S.value=D.replaceAll(ji,"")}catch{S.value=L,m.value=[],A.value=[]}}catch{S.value="",m.value=[],A.value=[]}}function R(b,C){const{input:I,skillTokens:S,references:m}=C;try{I.value.length===0&&S.value.length===0&&m.value.length===0&&!i.has(b)?t.removeItem(b):t.setItem(b,JSON.stringify({input:I.value,skillTokens:S.value,references:m.value,...i.has(b)?{sessionDraftsMigrated:!0}:{}}))}catch{}}return{...T,key:a,restoreFor:b=>{b!==void 0&&w(b).restore()},persistFor:b=>{b!==void 0&&w(b).persist()},bindTarget:k,forTarget:w}}function By(e){if(typeof e!="object"||e===null)return;const t=e;return typeof t.queueItemId=="string"&&t.queueItemId.length>0&&typeof t.content=="string"&&typeof t.tags=="string"&&typeof t.origin=="string"?{queueItemId:t.queueItemId,content:t.content,tags:t.tags,origin:t.origin}:void 0}const Fs=["files","search","changes","history","terminal"],Gy={tools:[],sessions:[]};function zy(e){return e?.kind==="session"||e?.kind==="browser"||e?.kind==="tool"&&e.id==="terminal"?"content":"compact"}function Ky(e=1){const t=wt(new Map);function n(y){const D=y.workspace,E=y.manifest,H=y.selectedWorkspace;He([D,E,()=>H.value?.kind],([X,_,U])=>{if(X===void 0||_===void 0)return;const Q=[];_.files?.available===!0&&Q.push("files","search"),U==="GIT_WORKSPACE"&&(Q.push("changes"),_.git?.supportsHistory===!0&&Q.push("history")),_.terminal?.available===!0&&_.terminal.supportsReplay===!0&&Q.push("terminal"),l(X,Q)},{immediate:!0})}function a(y){return t.value.get(y.nodeId)?.get(y.workspaceId)??Gy}function r(y,D){if(D.sessions.length>e){const X=D.active?.kind==="session"&&s(D,D.active)?D.active.sessionId:D.terminalReturn?.kind==="session"?D.terminalReturn.sessionId:void 0,_=new Set(D.sessions.filter(U=>U!==X).slice(0,D.sessions.length-e));D={...D,sessions:D.sessions.filter(U=>!_.has(U))}}D.terminalReturn!==void 0&&!s(D,D.terminalReturn)&&(D={...D,terminalReturn:void 0});const E=new Map(t.value),H=new Map(E.get(y.nodeId));H.set(y.workspaceId,D),E.set(y.nodeId,H),t.value=E}function s(y,D){return D!==void 0&&(D.kind==="tool"?y.tools.includes(D.id):D.kind==="browser"?y.tools.includes("files")&&y.htmlPath!==void 0:y.sessions.includes(D.sessionId))}function i(y){const D=y.recentTool&&y.tools.includes(y.recentTool)?y.recentTool:y.tools.find(E=>E!=="terminal");return D===void 0?void 0:{kind:"tool",id:D}}function l(y,D){const E=Fs.filter(_=>D.includes(_)),H=a(y),X={...H,tools:E};r(y,{...X,active:s(X,H.active)?H.active:i(X)??(E.includes("terminal")?{kind:"tool",id:"terminal"}:void 0)})}function v(y,D){const E=a(y);if(!E.tools.includes(D))return!1;const H=D==="terminal"&&E.active?.kind!==void 0&&!(E.active.kind==="tool"&&E.active.id==="terminal")?E.active:E.terminalReturn;return r(y,{...E,active:{kind:"tool",id:D},terminalReturn:H,...D==="terminal"?{}:{recentTool:D}}),!0}function u(y){const D=a(y);r(y,{...D,sessions:D.sessions.includes(y.sessionId)?D.sessions:[...D.sessions,y.sessionId],active:{kind:"session",sessionId:y.sessionId}})}function d(y,D){const E=a(y);return E.tools.includes("files")?(r(y,{...E,htmlPath:D,active:{kind:"browser"}}),!0):!1}function w(y){const D=a(y);return s(D,{kind:"browser"})?(r(y,{...D,active:{kind:"browser"}}),!0):!1}function k(y,D){const E=a(y);if(!E.sessions.includes(y.sessionId))return!1;const H=X=>X?.kind==="session"&&X.sessionId===y.sessionId?{kind:"session",sessionId:D}:X;return r(y,{...E,sessions:[...new Set(E.sessions.map(X=>X===y.sessionId?D:X))],active:H(E.active),terminalReturn:H(E.terminalReturn)}),!0}function T(y){return a(y).sessions.includes(y.sessionId)?(u(y),!0):!1}function p(y){g(y,[y.sessionId])}function g(y,D){const E=a(y),H=new Set(D);if(!E.sessions.some(U=>H.has(U)))return;const X=E.sessions.filter(U=>!H.has(U)),_={...E,sessions:X,terminalReturn:E.terminalReturn?.kind==="session"&&H.has(E.terminalReturn.sessionId)?void 0:E.terminalReturn};if(E.active?.kind==="session"&&H.has(E.active.sessionId)){const U=E.sessions.indexOf(E.active.sessionId),Q=E.sessions.slice(0,U).reverse().find($=>!H.has($))??E.sessions.slice(U+1).find($=>!H.has($));r(y,{..._,active:Q!==void 0?{kind:"session",sessionId:Q}:s(_,{kind:"browser"})?{kind:"browser"}:i(_)})}else r(y,_)}function R(y){const D=a(y);return D.tools.includes("terminal")?D.active?.kind!=="tool"||D.active.id!=="terminal"?v(y,"terminal"):(r(y,{...D,active:s(D,D.terminalReturn)?D.terminalReturn:i(D)}),!0):!1}function b(y){const{sessions:D,active:E,recentTool:H,terminalReturn:X,htmlPath:_}=a(y);return{sessions:[...D],active:E,recentTool:H,terminalReturn:X,htmlPath:_}}function C(y,D,E){const H=[...new Set(D.sessions.filter(X=>typeof X=="string"&&X.length>0))];r(y,{tools:Fs.filter(X=>E.includes(X)),sessions:H,active:D.active,recentTool:D.recentTool,terminalReturn:D.terminalReturn,htmlPath:D.htmlPath}),l(y,E)}function I(y){const D=t.value.get(y.nodeId)?.get(y.workspaceId);if(D?.htmlPath===void 0)return;const E={...D,htmlPath:void 0},H=D.sessions.at(-1);r(y,{...E,active:D.active?.kind!=="browser"?D.active:H!==void 0?{kind:"session",sessionId:H}:i(E)})}function S(y){for(const D of t.value.get(y)?.keys()??[])I({nodeId:y,workspaceId:D})}function m(){for(const y of t.value.keys())S(y)}function A(y){const D=new Map(t.value),E=new Map(D.get(y.nodeId));E.delete(y.workspaceId),E.size===0?D.delete(y.nodeId):D.set(y.nodeId,E),t.value=D}function L(y){function D(Q){const $=y.workspace.value;return $?.nodeId===Q.nodeId&&$.workspaceId===Q.workspaceId}function E(Q){a(Q).active?.kind==="session"&&y.saveSession()}function H(Q){D(Q)&&(E(Q),v(Q,Q.id),y.mobile.value&&y.openMobile(Q.id==="terminal"?"terminal":"inspector"))}function X(Q){D(Q)&&(E(Q),w(Q)&&y.mobile.value&&y.openMobile("inspector"))}function _(Q){D(Q)&&I(Q)}function U(){const Q=y.workspace.value;if(Q!==void 0){if(E(Q),y.mobile.value&&y.mobileSurface.value!=="inspector"&&y.mobileSurface.value!=="terminal"){v(Q,"terminal")&&y.openMobile("terminal");return}if(R(Q)&&y.mobile.value){const $=a(Q).active;y.openMobile($?.kind==="tool"&&$.id==="terminal"?"terminal":"inspector")}}}return{select:H,openBrowser:X,closeBrowser:_,toggleTerminal:U}}return{observeCapabilities:n,createInteraction:L,current:a,ensure:l,selectTool:v,openHtml:d,activateHtml:w,openSession:u,replaceSession:k,activateSession:T,closeSession:p,removeMissing:g,toggleTerminal:R,snapshot:b,restore:C,removeWorkspace:A,clearHtmlWorkspace:I,clearHtmlNode:S,clearHtml:m}}function jy(e){if(e.enabled)return{sessionIds:[...new Set(e.asideSessionIds)],summaryAnchors:[...new Set([...e.visibleTreeAnchors,...e.treeAnchor===void 0?[]:[e.treeAnchor]])],...e.treeAnchor===void 0?{}:{treeAnchor:e.treeAnchor},limit:100}}function Ja(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Go(e){return Ja(e)&&typeof e.id=="string"&&(e.parentSessionId===null||typeof e.parentSessionId=="string")&&typeof e.title=="string"&&typeof e.runner=="string"&&typeof e.activity=="string"&&typeof e.status=="string"&&typeof e.lastActivityAt=="number"}function _y(e){return Ja(e)&&typeof e.anchorSessionId=="string"&&typeof e.descendantCount=="number"&&typeof e.activeCount=="number"&&typeof e.runningCount=="number"&&typeof e.sleepingCount=="number"&&typeof e.hasActiveDescendants=="boolean"}function Yy(e){const t=wt();let n;function a(i,l,v){return!Ja(v)||!Array.isArray(v.sessions)||!v.sessions.every(Go)||!Array.isArray(v.summaries)||!v.summaries.every(_y)||!Array.isArray(v.missingSessionIds)||!v.missingSessionIds.every(u=>typeof u=="string")||v.tree!==null&&(!Ja(v.tree)||typeof v.tree.anchorSessionId!="string"||v.tree.anchorSessionId!==l.treeAnchor||v.tree.parent!==null&&!Go(v.tree.parent)||!Array.isArray(v.tree.nodes)||!v.tree.nodes.every(Go)||typeof v.tree.truncated!="boolean")?!1:(n=l,t.value={...v,...i},e(i,v.missingSessionIds),!0)}function r(i,l){const v=t.value;return i!==void 0&&l!==void 0&&i.nodeId===v?.nodeId&&i.workspaceId===v.workspaceId&&xn(l,n)?v:void 0}function s(i,l){const v=t.value;if(i===void 0||v===void 0||i.nodeId!==v.nodeId||i.workspaceId!==v.workspaceId)return[];const u=[...v.sessions,...v.tree?.parent===null||v.tree?.parent===void 0?[]:[v.tree.parent],...v.tree?.nodes??[]];return l.flatMap(d=>{if(v.missingSessionIds.includes(d))return[];const w=u.find(k=>k.id===d);return w===void 0?[]:[w]})}return{snapshot:t,accept:a,current:r,knownSessions:s}}const Qy="__feature-demo__",pc="sessionAside",Jy={[Qy]:{introducedIn:"0.9.119"},[pc]:{introducedIn:"0.11.69"}},Xy=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/u;function zo(e){const t=Xy.exec(e);if(t===null)return;const n=t.slice(1).map(Number);if(n.every(Number.isSafeInteger))return n}function Us(e,t){for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return e[n]-t[n];return 0}function Zy(e,t){const n=zo(e),a=zo(t.introducedIn),r=t.removedIn===void 0?void 0:zo(t.removedIn);return n===void 0||a===void 0||t.removedIn!==void 0&&r===void 0||Us(n,a)<0?!1:r===void 0||Us(n,r)<0}function ew(e,t){const n=Jy[t];return n!==void 0&&Zy(e,n)}function Oa(e,t){return e!==void 0&&t?.apiVersion===1&&ew(e,pc)}function tw(e,t,n){const a=e.sessions.value.find(l=>l.id===t),r=e.preserveManagedActive(a,n),s=e.selectedSessionId.value===t,i=e.currentSelectionRevision();e.mergeSessions([r]),t!==r.id&&e.transferSubmission(t,r.id),t!==r.id&&a!==void 0&&e.sessions.value.includes(a)&&!(e.selectedSessionId.value===t&&e.currentSelectionRevision()!==i)&&e.removeSessionExact(a),s&&(e.selectedSessionId.value===t||e.selectedSessionId.value===r.id)&&e.currentSelectionRevision()===i&&e.selectedSessionId.value===t&&e.currentSelectionRevision()===i&&e.setSelectedSessionId(r.id)}function nw(e){const{sessions:t,selectedSessionId:n,setSelectedSessionId:a,currentSelectionRevision:r,preserveManagedActive:s,mergeSessions:i,removeSessionExact:l}=e.projection,v=e.submissions,u=e.workspaceTarget;function d(T,p,g,R){if(g===R)return;const b={kind:"session",nodeId:T,workspaceId:p};v.transfer(v.forTarget({...b,sessionId:g}),v.forTarget({...b,sessionId:R}),g,R)}function w(T,p,g,R){tw({sessions:t,removeSessionExact:l,selectedSessionId:n,setSelectedSessionId:a,currentSelectionRevision:r,preserveManagedActive:s,mergeSessions:i,transferSubmission:(b,C)=>d(T,p,b,C)},g,R)}function k(T,p){const g=u.value?.nodeId;g!==void 0&&w(g,p.workspaceId,T,p)}return{transfer:d,replace:w,replaceCurrent:k}}function aw(){const e=x();return{...gc(),target:j(()=>e.value),setTarget:t=>{e.value=t}}}function gc(){let e=0;return{currentSelectionRevision:()=>e,nextSelectionRevision:()=>++e}}function ow(e,t=gc()){const n=x(!1);function a(){t.nextSelectionRevision(),n.value=!1,e.stopWatch(),e.deactivateCache(),e.setWorkspaceTarget(void 0),e.setSelectedSessionId(void 0),e.replaceWorkspaces([]),e.replaceSessions([]),e.selectManifestNode(),e.setDraftOpen(!1),e.clearContent(),e.resetQueue()}async function r(i,l=!0){if(!e.hasNode(i.nodeId))return e.invalidateWorkspace(i),!1;const v=t.nextSelectionRevision();n.value=!1;const u=e.workspaceTarget.value,d=u?.nodeId!==i.nodeId||u.workspaceId!==i.workspaceId;d&&(e.saveCurrent(),e.stopWatch(),e.deactivateCache(),e.setSelectedSessionId(void 0),e.setDraftOpen(!1),e.clearContent(),e.setWorkspaceTarget({nodeId:i.nodeId,workspaceId:i.workspaceId}),e.restoreProfiles(i.nodeId));const w=e.workspaceTarget.value,k=()=>t.currentSelectionRevision()===v&&e.workspaceTarget.value===w;e.closeSidebar(),e.showWorkbench(),e.replaceWorkspaces([...e.cachedWorkspaces(i.nodeId)]);const T=e.workspaces.value.find(I=>I.id===i.workspaceId);if(T===void 0?e.rememberTarget(i):e.rememberWorkspace(i.nodeId,T),!e.isHostAvailable(i.nodeId))return e.stopWatch(),e.deactivateCache(),e.replaceWorkspaces([]),e.replaceSessions([]),e.setSelectedSessionId(void 0),e.clearContent(),e.selectManifestNode(),!0;e.selectManifestNode(i.nodeId);const p=e.viewCache(i.nodeId,i.workspaceId),g=d||!e.isCacheActive(i.nodeId,i.workspaceId);g&&(e.activateCache(i.nodeId,i.workspaceId),e.restoreWorkspaceView(i.nodeId,i.workspaceId),(p.files!==void 0||p.git!==void 0)&&e.refreshVisibleTool(i.nodeId,i.workspaceId),e.replaceSessions(p.sessions),e.restoreDraft(p)),e.initializePaging(e.tabId(i.nodeId,i.workspaceId)),e.resetQueue();const R=!d&&e.selectedSessionId.value!==void 0&&e.sessions.value.some(I=>I.id===e.selectedSessionId.value),b=e.takeRestoredSelection(i.nodeId,i.workspaceId),C=p.sessions.find(I=>I.id===p.selectedSessionId);return l&&g&&C!==void 0&&En(C)?e.openSession(C.id,{skipSaveCurrent:!0}):l&&b!==void 0?(e.openDraft(),e.restoreSession(i.workspaceId,b.selectedSessionId)):l&&!R&&e.openDraft(),T!==void 0&&e.startWatch(i.workspaceId),(g||!e.hasProfiles(i.nodeId)&&!e.profilesLoading.value)&&e.loadProfiles(i.nodeId),e.refreshManifest(i.nodeId),e.refreshTransport(i.nodeId),n.value=!0,s(w,k,T===void 0),!0}async function s(i,l,v){try{const u=await e.request(`/api/workspaces?nodeId=${encodeURIComponent(i.nodeId)}`);if(!l())return;e.cacheWorkspaces(i.nodeId,u.workspaces);const d=u.workspaces.find(w=>w.id===i.workspaceId);if(d===void 0){e.invalidateWorkspace(i),e.notice(c("generated.workbenchWorkspaceSelectionService.thisWorkspaceIsNoLongerInThe"),"error");return}e.replaceWorkspaces([...u.workspaces]),e.rememberWorkspace(i.nodeId,d),v&&e.startWatch(i.workspaceId)}catch(u){if(!l()||gt(u)==="NODE_OFFLINE"&&!e.isHostAvailable(i.nodeId))return;["FORBIDDEN","NODE_NOT_FOUND","WORKSPACE_NOT_FOUND","REQUEST_FAILED_403","REQUEST_FAILED_404"].includes(gt(u)??"")&&e.invalidateWorkspace(i),e.notice(c("generated.workbenchWorkspaceSelectionService.unableToLoadNodeWorkspaces",{value0:e.errorMessage(u)}),"error",u)}finally{l()&&(n.value=!1)}}return{select:r,clear:a,loading:n,currentSelectionRevision:t.currentSelectionRevision}}function rw(){const e=aw();return{target:e.target,currentSelectionRevision:e.currentSelectionRevision,connect(t){return ow({...t,workspaceTarget:e.target,setWorkspaceTarget:e.setTarget},e)}}}function iw(e){const t=new Map,n=wt();function a($,V){const N=e($,V),h=t.get(N);if(h!==void 0)return h;const F={nodeId:$,workspaceId:V,sessions:[],queues:new Map,sessionDetails:new Map};return t.set(N,F),F}function r($,V){const N=e($,V);n.value?.nodeId===$&&n.value.workspaceId===V&&(n.value=void 0),t.delete(N)}function s($,V,N){const h=t.get(e($,V));h!==void 0&&(h.sessions=h.sessions.filter(F=>F.id!==N),h.sessionDetails.delete(N),h.queues.delete(N),h.selectedSessionId===N&&delete h.selectedSessionId)}function i($,V,N){return t.get(e($,V))?.queues.get(N)}function l($,V,N){t.get(e($,V))?.sessionDetails.delete(N)}function v($,V,N,h){if(N!==h.id){X($,V,N,h.id,h);return}const F=t.get(e($,V));F!==void 0&&(F.sessions=F.sessions.map(z=>z.id===N?h:z))}function u($){n.value?.nodeId===$&&(n.value=void 0);for(const V of t.keys())V.startsWith(`${$}:`)&&t.delete(V)}function d($,V){n.value=a($,V)}function w(){n.value=void 0}function k($,V){const N=a($,V);return{nodeId:N.nodeId,workspaceId:N.workspaceId,sessions:N.sessions,...N.selectedSessionId===void 0?{}:{selectedSessionId:N.selectedSessionId},...N.draft===void 0?{}:{draft:N.draft},...N.fileWorkbench===void 0?{}:{fileWorkbench:N.fileWorkbench},...N.search===void 0?{}:{search:N.search},...N.files===void 0?{}:{files:N.files},...N.git===void 0?{}:{git:N.git}}}function T($,V){return n.value?.nodeId===$&&n.value.workspaceId===V}function p(){return n.value!==void 0}function g($,V){return t.has(e($,V))}function R($,V,N){const h=t.get(e($,V));h!==void 0&&(h.search=N)}function b($,V){const N=e($,V),h=t.get(N);if(h!==void 0)return{isCurrent:()=>t.get(N)===h,replaceSession(F,z){t.get(N)===h&&v($,V,F,z)},cacheRun(F){t.get(N)===h&&_($,V,F)}}}function C($,V,N,h,F){const z=t.get(e($,V));z!==void 0&&z.queues.set(N,bp(z.queues.get(N),h,F))}function I($,V,N,h,F=!1){const z=F?V.turns:xa(V.turns),fe=Do(z);for($.sessionDetails.set(V.sessionId,{...V,turns:fe,nextCursor:fe.length<z.length?null:V.nextCursor});$.sessionDetails.size>N;){const J=[...$.sessionDetails.values()].filter(re=>!h.has(re.sessionId)).reduce((re,ge)=>re===void 0||ge.lastAccessedAt<re.lastAccessedAt?ge:re,void 0);if(J===void 0)break;$.sessionDetails.delete(J.sessionId)}}function S($,V,N,h){$.sessions=V.sessions.filter(z=>z.workspaceId===$.workspaceId&&En(z)),$.fileWorkbench=V.fileWorkbench,"search"in V&&(V.search===void 0?delete $.search:$.search=V.search),"files"in V&&(V.files===void 0?delete $.files:$.files=V.files),"git"in V&&(V.git===void 0?delete $.git:$.git=V.git),V.draft===void 0?delete $.draft:$.draft=V.draft;const F=V.sessions.find(z=>z.id===V.selectedSessionId);if(!En(F)){delete $.selectedSessionId,V.selectedSessionId!==void 0&&($.queues.delete(V.selectedSessionId),$.sessionDetails.delete(V.selectedSessionId));return}$.selectedSessionId=F.id,V.queue!==void 0&&$.queues.set(F.id,Oo($.queues.get(F.id),V.queue)),V.detail!==void 0&&I($,V.detail,N,new Set(h===void 0?[F.id]:[F.id,h]),V.detailHistoryAlreadyBounded===!0)}function m($,V,N,h,F,z){const fe=t.get(e($,V));if(fe===void 0||N.workspaceId!==V||N.id!==F.sessionId||!En(N))return;fe.queues.set(N.id,Oo(fe.queues.get(N.id),h));const J=new Set([N.id]);fe.selectedSessionId!==void 0&&J.add(fe.selectedSessionId),I(fe,F,z,J,!0)}function A($,V,N){const h=n.value;h!==void 0&&S(h,{...$,fileWorkbench:"fileWorkbench"in $?$.fileWorkbench:h.fileWorkbench},V,N)}function L($,V,N,h=Date.now()){const F=t.get(e($,V))?.sessionDetails.get(N);return F!==void 0&&(F.lastAccessedAt=h),F}function y($,V,N){return t.get(e($,V))?.sessionDetails.get(N)}function D($,V,N){return y($,V,N)}function E($,V,N,h){const F=y($,V,N);F!==void 0&&(F.contextUsage=h)}function H($,V,N,h,F){const z=y($,V,N);z!==void 0&&(z.turns=Cp(z.turns,h,F))}function X($,V,N,h,F){if(N===h||!En(F))return;const z=t.get(e($,V));if(z===void 0)return;F!==void 0&&(z.sessions=z.sessions.map(re=>re.id===N?F:re));const fe=z.sessionDetails.get(N);fe!==void 0&&(z.sessionDetails.delete(N),z.sessionDetails.set(h,{...fe,sessionId:h,turns:fe.turns.map(re=>re.sessionId===N?{...re,sessionId:h}:re)}));const J=z.queues.get(N);J!==void 0&&(z.queues.delete(N),z.queues.set(h,Oo(z.queues.get(h),J))),z.selectedSessionId===N&&(z.selectedSessionId=h)}function _($,V,N){if(N.sessionId===void 0)return;const h=y($,V,N.sessionId);if(h===void 0)return;const F=h.runs.find(fe=>fe.id===N.id),z=Sp(F,N);h.runs=[z,...h.runs.filter(fe=>fe.id!==N.id)]}function U($,V,N){const h=y($,V,N.sessionId);if(h===void 0)return;const F=xa(Ip(h.turns,[N]));h.turns=Do(F),h.turns.length<F.length&&(h.nextCursor=null)}function Q($,V,N,h,F){const z=y($,V,N);z!==void 0&&(z.turns=Do(xa(h)),z.nextCursor=F)}return{view:k,isActive:T,hasActive:p,has:g,updateSearch:R,captureCommandTarget:b,captureActive:A,captureSession:m,activate:d,deactivate:w,remove:r,removeSession:s,queueFor:i,invalidateDetail:l,replaceSession:v,removeNode:u,detail:D,updateContext:E,syncRunStatus:H,touchDetail:L,migrateSession:X,cacheRun:_,cacheTurn:U,cacheQueue:C,replaceTurns:Q}}function sw(e){const t=(p,g)=>e.cacheService.view(p,g);function n(p,g){e.cacheService.remove(p,g),e.paging.remove(e.tabId(p,g))}function a(p){e.cacheService.removeNode(p),e.paging.removeNode(p)}function r(){if(e.persistDraft(),!e.cacheService.hasActive())return;const p=e.selectedSessionId.value;p===void 0&&e.flushConversation(),e.cacheService.captureActive({sessions:e.sessions.value,fileWorkbench:e.fileWorkbench.snapshot(),...e.search===void 0?{}:{search:e.search.snapshot(e.workspaceTarget.value===void 0?void 0:t(e.workspaceTarget.value.nodeId,e.workspaceTarget.value.workspaceId).search)},...e.files===void 0?{}:{files:e.files.snapshot()},...e.git===void 0?{}:{git:e.git.snapshot()},draft:{runner:e.runner.value,modelId:e.modelId.value,effort:e.effort.value,access:e.access.value},...p===void 0?{}:{selectedSessionId:p,queue:e.queue.value,detail:e.captureDetail(p),detailHistoryAlreadyBounded:!0}},e.maximumDetails,e.otherVisibleSessionId?.())}function s(p,g){if(e.workspaceTarget.value?.nodeId!==p||e.workspaceTarget.value.workspaceId!==g)return;const R=t(p,g);e.files?.restore(R.files),e.git?.restore(R.git),e.search?.restore(R.search);const b=R.fileWorkbench;b!==void 0&&e.fileWorkbench.restore(b)}function i(p){const g=p?.draft;g!==void 0&&e.restoreDraftConfiguration(g)}function l(p){const g=e.sessions.value.find(b=>b.id===p),R=e.workspaceTarget.value?.nodeId;if(!(g===void 0||R===void 0))return{nodeId:R,workspaceId:g.workspaceId}}function v(p,g){const R=l(p);R!==void 0&&e.cacheService.updateContext(R.nodeId,R.workspaceId,p,g)}function u(p,g,R){const b=l(p);b!==void 0&&e.cacheService.syncRunStatus(b.nodeId,b.workspaceId,p,g,R)}const d=(p,g,R)=>e.cacheService.cacheRun(p,g,R);function w(p){const g=e.workspaceTarget.value?.nodeId;if(p.sessionId===void 0||g===void 0)return;const R=p.workspaceId??e.sessions.value.find(b=>b.id===p.sessionId)?.workspaceId;R!==void 0&&d(g,R,p)}function k(p){const g=e.sessions.value.find(b=>b.id===p.sessionId),R=e.workspaceTarget.value?.nodeId;g!==void 0&&R!==void 0&&e.cacheService.cacheTurn(R,g.workspaceId,p)}function T(p,g,R){const b=e.sessions.value.find(I=>I.id===p),C=e.workspaceTarget.value?.nodeId;b!==void 0&&C!==void 0&&e.cacheService.replaceTurns(C,b.workspaceId,p,g,R)}return{workspaceViewCache:t,discardWorkspaceViewCache:n,discardNodeViewCaches:a,saveCurrentWorkspaceView:r,restoreWorkspaceView:s,restoreWorkspaceDraft:i,updateCachedContext:v,syncCachedRunStatus:u,cacheRunSnapshotFor:d,cacheRunSnapshot:w,cacheConversationTurn:k,replaceConversationTurns:T}}function lw(e){const t=iw(e);return{cache:t,connect:n=>sw({...n,cacheService:t,tabId:e})}}function cw(e){const t=x(!1),n=new Map;let a=0,r,s=0;const i=($,V)=>e.tree.cacheWorkspaces($,V),l=$=>e.tree.workspacesForNode($),v=$=>e.tree.orderedWorkspaces($);function u($,V,N){const h=l($).map(F=>F.id===V?{...F,gitSummary:{...F.gitSummary??{},branch:N}}:F);$===e.workspaceTarget.value?.nodeId&&e.replaceWorkspaces([...h]),i($,h)}function d($,V){const N=l($).map(h=>{if(h.id!==V.id)return h;const F={...h};return Reflect.deleteProperty(F,"gitSummary"),{...F,path:V.path,kind:V.kind,...V.gitSummary===void 0?{}:{gitSummary:V.gitSummary}}});$===e.workspaceTarget.value?.nodeId&&e.replaceWorkspaces([...N]),i($,N)}function w($,V){const N=e.nodes.value.find(h=>h.id===$);e.tabs.remember($,N,V)}function k($,V=!1){const N=e.tabs.tabs.value.find(h=>h.id===$.id);N===void 0||!V&&N.pinned===!0||T([N],!V)}function T($,V=!0){const N=$.some(F=>e.activeTabId.value===F.id),h=V&&s===e.currentSelectionRevision()&&$.some(F=>r===F.id);N&&e.saveCurrent();for(const F of $)e.releaseTerminalDock(F.id),e.deleteTerminalDock(F.id),e.tabs.remove(F),e.discardCache(F.nodeId,F.workspaceId);!N&&!h||(e.clearWorkspace(),p())}async function p(){const $=++a,V=new Set;for(r=void 0;;){const N=e.tabs.mostRecentlyUsed(V);if(N===void 0)return;V.add(N.id),r=N.id;const h=R(N),F=e.currentSelectionRevision();s=F;const z=await h;if($!==a||(r=void 0,z||F!==e.currentSelectionRevision()))return}}function g(){const $=e.activeTabId.value,V=e.tabs.tabs.value.filter(h=>h.pinned!==!0),N=V.find(h=>h.id===$);T([...V.filter(h=>h.id!==$),...N===void 0?[]:[N]])}async function R($){return e.nodes.value.find(N=>N.id===$.nodeId)===void 0?(k($,!0),!1):C($)}async function b($){const V=e.nodes.value.find(fe=>fe.id===$.nodeId);if(V===void 0){k($,!0);return}const N=e.workspaceTabSession($.nodeId,$.workspaceId),h=C($,N===void 0),F=e.currentSelectionRevision();if(!await h||F!==e.currentSelectionRevision())return;const z=e.workspaceTarget.value;z?.nodeId!==$.nodeId||z.workspaceId!==$.workspaceId||!V.connected||V.disabled||N!==void 0&&await e.openWorkspaceTabSession(N)}function C($,V=!0){const N=e.workspaceTarget.value,h=N?.nodeId===$.nodeId&&N.workspaceId===$.workspaceId?Promise.resolve(!0):V?e.activateWorkspace($):e.activateWorkspace($,!1);return e.tree.revealWorkspace($),e.closeMobileSidebar(),e.showWorkbench(),h}async function I($){e.tree.toggleNode($)&&($===e.workspaceTarget.value?.nodeId||$ in e.workspacesByNode.value||await S($))}async function S($){const V=e.workspaceTarget.value,N=e.currentSelectionRevision(),h=()=>e.workspaceTarget.value===V&&e.currentSelectionRevision()===N,F=(n.get($)??0)+1;n.set($,F);try{const z=await e.request(`/api/workspaces?nodeId=${encodeURIComponent($)}`);if(n.get($)!==F)return;i($,z.workspaces),h()&&e.workspaceTarget.value?.nodeId===$&&e.replaceWorkspaces(z.workspaces)}catch(z){if(n.get($)!==F||!h())return;e.notice(c("generated.workbenchWorkspaceTreeController.unableToLoadNodeWorkspaces",{value0:e.errorMessage(z)}),"error",z)}}async function m(){await e.refreshNodes();const $=new Set([...e.tree.expandedNodeIds.value,...Object.keys(e.workspacesByNode.value),...e.workspaceTarget.value?.nodeId===void 0?[]:[e.workspaceTarget.value?.nodeId]]);await Promise.all(e.nodes.value.filter(V=>$.has(V.id)).map(V=>S(V.id)))}async function A($,V){e.closeMobileWorkspaceSurface(),await C({nodeId:$,workspaceId:V})}const L=($,V,N)=>e.tree.startDrag($,V,N);function y($){return e.nodes.value.find(N=>N.id===$)?.workspaceCreatable===!0}async function D($,V,N){if(!(!y($)||V.groupName===N)){t.value=!0;try{await e.request(`/api/workspaces/${encodeURIComponent(V.id)}?nodeId=${encodeURIComponent($)}`,{method:"PATCH",body:JSON.stringify({groupName:N})});const h={...V,groupName:N},F=l($).map(z=>z.id===V.id?h:z);i($,F),e.workspaceTarget.value?.nodeId===$&&e.replaceWorkspaces([...F])}catch(h){e.notice(e.errorMessage(h),"error",h)}finally{t.value=!1}}}async function E($,V,N){await D($,V,N)}function H($,V,N){const h=e.tree.draggingWorkspace.value;if(h===void 0||h.nodeId!==$)return;const F=l($).find(J=>J.id===h.workspaceId);if(F===void 0){e.tree.endDrag();return}const z=F.groupName?.trim()||null,fe=V.groupName?.trim()||null;if(z===fe){e.tree.reorder($,V.id,N);return}e.tree.endDrag(),D($,F,fe)}function X($,V){const N=e.tree.draggingWorkspace.value;if(N===void 0||N.nodeId!==$)return;e.tree.endDrag();const h=l($).find(F=>F.id===N.workspaceId);h!==void 0&&D($,h,V)}async function _($,V){if(V.manageable===!1)return;let N;try{N=(await Nt.prompt(c("generated.workspaceTree.enterWorkspaceName"),c("generated.workspaceTree.renameWorkspace"),{closeIcon:qe("close"),inputValue:e.tabLabel(V),inputValidator:h=>{const F=h.trim().length;return F===0?c("generated.workspaceTree.workspaceNameRequired"):F<=255||c("generated.workspaceTree.workspaceNameTooLong")},confirmButtonText:c("generated.workspaceTree.save"),cancelButtonText:c("generated.workspaceTree.cancel")})).value.trim()}catch{return}t.value=!0;try{await e.request(`/api/workspaces/${encodeURIComponent(V.id)}?nodeId=${encodeURIComponent($)}`,{method:"PATCH",body:JSON.stringify({displayName:N})});const h={...V,displayName:N},F=l($).map(z=>z.id===V.id?h:z);i($,F),e.workspaceTarget.value?.nodeId===$&&e.replaceWorkspaces([...F]),e.tabs.updateLabel($,V.id,e.tabLabel(h))}catch(h){e.notice(e.errorMessage(h),"error",h)}finally{t.value=!1}}async function U($,V){if(V.manageable===!0){try{await Nt.confirm(c("generated.workbenchWorkspaceTreeController.unregisterThisDoesNotDeleteTheLocal",{value0:e.tabLabel(V)}),c("generated.workbenchWorkspaceTreeController.unregisterWorkspace"),{closeIcon:qe("close"),icon:qe("warning"),confirmButtonText:c("generated.workbenchWorkspaceTreeController.unregister"),cancelButtonText:c("generated.workbenchWorkspaceTreeController.cancel"),type:"warning"})}catch{return}t.value=!0;try{await e.request(`/api/workspaces/${encodeURIComponent(V.id)}?nodeId=${encodeURIComponent($)}`,{method:"DELETE"});const N=l($).filter(h=>h.id!==V.id);i($,N),e.workspaceTarget.value?.nodeId===$&&(e.replaceWorkspaces(N),e.removeWorkspaceSessions(V.id),e.workspaceTarget.value?.workspaceId===V.id&&e.clearWorkspace()),e.tabs.removeWhere(h=>h.nodeId===$&&h.workspaceId===V.id),e.notice(c("generated.workbenchWorkspaceTreeController.theWorkspaceWasUnregisteredItsLocalDirectory"),"success")}catch(N){e.notice(c("generated.workbenchWorkspaceTreeController.unableToUnregisterTheWorkspace",{value0:e.errorMessage(N)}),"error",N)}finally{t.value=!1}}}async function Q($,V,N){if(!(V.manageable===!1||!e.cleanupSessionsEnabled($))){t.value=!0;try{const h=await e.request(`/api/workspaces/${encodeURIComponent(V.id)}/sessions/cleanup`,{method:"POST",body:JSON.stringify({nodeId:$,inactiveDays:N})});return e.workspaceTarget.value?.nodeId===$&&e.workspaceTarget.value?.workspaceId===V.id&&await e.refreshWorkspaceSessions(V.id),h}catch(h){throw new Error(e.errorMessage(h))}finally{t.value=!1}}}return{loading:ct(t),updateWorkspaceBranch:u,updateWorkspaceMetadata:d,rememberWorkspace:w,closeWorkspaceTab:k,closeUnpinnedWorkspaceTabs:g,activateWorkspaceTab:R,openWorkspaceTab:b,cacheNodeWorkspaces:i,workspacesForNode:l,orderedWorkspaces:v,toggleNodeExpansion:I,refreshNodeWorkspaces:S,refreshWorkspaceTree:m,openWorkspaceFromTree:A,startWorkspaceDrag:L,reorderWorkspace:H,moveWorkspaceToGroup:X,moveWorkspaceGroup:E,renameWorkspace:_,cleanupWorkspaceSessions:Q,removeWorkspace:U}}function dw(e){async function t(u){const d=await e.actions.renameNode(u);d!==void 0&&e.replaceNode(d)}async function n(u){const d=await e.actions.renameSession(u);d!==void 0&&e.replaceSession(u.id,d)}async function a(u,d){await e.actions.setSessionPinned(u,d)&&await e.refreshSessions()}async function r(u){const d=await e.actions.moveSessionToMain(u);d!==void 0&&(e.replaceSession(u.id,d),await e.refreshSessions())}async function s(u,d){await e.actions.movePinnedSession(u,d)&&await e.refreshSessions()}async function i(u,d,w){if(u.id===d.id)return;const k=u.pinOrder>d.pinOrder?"up":"down";await e.actions.movePinnedSession(u,k,{sessionId:d.id,position:w}),await e.refreshSessions()}async function l(u){const d=e.workspaceTarget.value?.nodeId;if(!await e.actions.deleteSession(u)||(d!==void 0&&e.caches.removeSession(d,u.workspaceId,u.id),e.workspaceTarget.value?.nodeId!==d))return;const w=e.selectedSessionId.value===u.id;e.removeSessionId(u.id),w&&(e.setSelectedSessionId(void 0),e.clearActiveSelection(),e.openDraft()),e.replaceUrl()}async function v(u){await e.actions.deleteNode(u)&&(e.removeNode(u.id),e.tabs.removeWhere(d=>d.nodeId===u.id),e.discardNodeCaches(u.id),e.tree.removeNode(u.id),e.workspaceTarget.value?.nodeId===u.id&&(e.clearWorkspace(),e.setSelectedSessionId(void 0),e.replaceWorkspaces([]),e.clearSessions(),e.clearRuns()),e.clearNodeDetails())}return{renameNode:t,renameSession:n,moveSessionToMain:r,setSessionPinned:a,movePinnedSession:s,movePinnedSessionTo:i,deleteSession:l,deleteNode:v}}function uw(){return{admin:x({authenticated:!1,mustChangePassword:!1,isAdmin:!1}),loaded:x(!1),loading:x(!1),sessions:x([]),newPassword:x(""),passwordValidationError:x(""),csrfToken:x("")}}function vw(e){const t=x(new Map),n=x(new Map),a=x(new Map),r=x(!1);function s(w){t.value.has(w)||t.value.set(w,e)}function i(w){t.value.set(w,e),n.value.delete(w),a.value.delete(w)}function l(w,k,T){a.value.delete(w),n.value.set(w,T),t.value.set(w,(t.value.get(w)??e)+k)}function v(w){t.value.delete(w),n.value.delete(w),a.value.delete(w)}function u(w){for(const k of t.value.keys())k.startsWith(`${w}:`)&&t.value.delete(k);for(const k of n.value.keys())k.startsWith(`${w}:`)&&n.value.delete(k);for(const k of a.value.keys())k.startsWith(`${w}:`)&&a.value.delete(k)}function d(w,k){const T=t.value.get(w)??e;k>=T&&t.value.set(w,k+1)}return{visibleLimits:t,nextCursors:n,loadMoreErrors:a,loadingMore:r,initialize:s,reset:i,append:l,remove:v,removeNode:u,ensureVisible:d}}const fw="mar.user.csrf-token";function pw(e){const t=uw(),n=ff({csrfToken:t.csrfToken,csrfStorageKey:fw,onUnauthenticated:e.onUnauthenticated}),a=vw(e.sessionPageSize);return{admin:t,http:n,paging:a}}function gw(e){const t=e.navigation,n=pw(e),{admin:a,http:r}=n,s=Hh(j(()=>a.admin.value.username),{request:r.request,...e.onWorkspaceRunCompleted===void 0?{}:{onWorkspaceRunCompleted:e.onWorkspaceRunCompleted},...e.onNotificationClick===void 0?{}:{onNotificationClick:e.onNotificationClick},activeTargets:()=>{if(t.view.value==="conversations"){const i=e.visibleHostedTarget();return i===void 0?[]:[{targetType:"HOSTED_CONVERSATION",...i}]}return t.view.value!=="nodes"?[]:e.visibleWorkspaceTargets().map(i=>({targetType:"WORKSPACE_SESSION",...i}))}});return{...n,navigation:t,notifications:s}}function mw(e,t,n){const a=s=>{const i=s.target,l=i instanceof Element&&(i.closest('[role="dialog"], [aria-modal="true"]')!==null||i.closest('input, textarea, select, [contenteditable]:not([contenteditable="false"])')!==null&&!xt.isWithin("pane",i));return e.view.value==="nodes"&&!n.value&&!l},r=(s,i,l)=>({command:s,keys:i,execute:l,priority:10,scope:"workspace",when:a});return[r("workspace.closeTab",an.close,s=>{const i=e.workspaceTabs.value.find(l=>l.id===e.activeWorkspaceTabId.value);return e.workspaceTabs.value.length===0?"IGNORED":(s.repeat||(s.shiftKey?e.closeUnpinnedWorkspaceTabs():i!==void 0&&i.pinned!==!0&&e.closeWorkspaceTab(i)),"HANDLED")}),r("workspace.newSession",an.newSession,s=>s.repeat||!e.nodeReady.value||e.workspaceTarget.value?.workspaceId===void 0?"IGNORED":(e.openNewSessionComposer(),"HANDLED")),r("workspace.cycleTab",an.cycle,s=>{const i=e.workspaceTabs.value,l=i.findIndex(d=>d.id===e.activeWorkspaceTabId.value);if(i.length===0||l<0)return"IGNORED";if(s.repeat||i.length===1)return"HANDLED";const v=s.key==="ArrowLeft"||s.key==="Tab"&&s.shiftKey?-1:1,u=i[(l+v+i.length)%i.length];return u===void 0?"IGNORED":(e.activateWorkspaceTab(u),"HANDLED")}),r("workspace.numberedTab",an.numbered,s=>{const i=/^Digit([0-9])$/.exec(s.code)?.[1]??s.key,l=i==="0"?9:Number(i)-1,v=e.workspaceTabs.value[l];return v===void 0?"IGNORED":(s.repeat||e.activateWorkspaceTab(v),"HANDLED")}),{command:"workspace.renderedPreview",priority:10,scope:"workspace",keys:an.preview,when:s=>!(s.target instanceof HTMLElement&&(s.target.isContentEditable||s.target.matches("input, textarea, select"))),execute:()=>e.workspaceFileWorkbench.value?.openCurrentRenderedPreview()===!0?"HANDLED":"IGNORED"},{command:"workspace.quickOpen",priority:10,scope:"workspace",keys:an.quickOpen,when:()=>e.view.value==="nodes"&&e.nodes.value.some(s=>s.connected&&!s.disabled),execute:()=>(t(),"HANDLED")},{command:"workspace.search",priority:10,scope:"workspace",keys:an.search,when:()=>e.contentSearchReady.value&&e.workspaceTarget.value!==void 0,execute:()=>(e.showAsideTool("search"),"HANDLED")},{command:"workspace.changes",priority:10,scope:"workspace",keys:an.changes,when:()=>e.selectedWorkspace.value?.kind==="GIT_WORKSPACE"&&e.filesReady.value&&e.workspaceTarget.value!==void 0,execute:s=>(s.repeat||e.showAsideTool("changes"),"HANDLED")},{command:"workspace.terminal",priority:10,scope:"workspace",allowedInBlockedScopes:["terminal"],keys:an.terminal,when:()=>e.terminalReady.value,execute:()=>(e.toggleTerminal(),"HANDLED")}]}const hw="/assets/runner-claude-code-hOhJ8xv9.png",yw="/assets/runner-codex-D2SXdx8Y.png",ww="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2032%2032'%20role='img'%20aria-label='OpenCode'%3e%3crect%20width='32'%20height='32'%20rx='7'%20fill='%23111827'/%3e%3cpath%20d='M10.8%209.5a6.5%206.5%200%201%200%200%2013h2.1v-3h-2.1a3.5%203.5%200%201%201%200-7h2.1v-3h-2.1Zm10.4%200h-4.1v13h4.1a6.5%206.5%200%200%200%200-13Zm0%203a3.5%203.5%200%200%201%200%207h-1.1v-7h1.1Z'%20fill='%23fff'/%3e%3c/svg%3e";function mc(e){return e==="mar-agent"?Ha:e==="codex"?yw:e==="claude-code"?hw:ww}function kw(e){const t=x(!1);function n(p){const g=e.workspaceTarget.value,R=e.selectedSessionId?.value;if(!g||!R||!e.nodeReady.value)return;const b=Dr(p,{...g,sessionId:R,scope:"SESSION"});b&&e.fileWorkbench.openTab(b)}let a;function r(p){const g=e.nodes.value.find(R=>R.id===p.nodeId);return g===void 0?p.nodeLabel??p.nodeId:$a(g)}function s(p){return p.externalDiscovered===!1?"—":er(p.lastActivityAt,e.sessionActivityClockNow.value)}function i(p){return Vf(p,e.formatSessionTime)}function l(p,g,R,b=!1,C){if(!b&&C?.mime.startsWith("image/")&&e.openAttachmentImage!==void 0){e.openAttachmentImage(C);return}u(p,g,R,b,!0)}function v(p,g,R,b=!1){u(p,g,R,b)}function u(p,g,R,b,C=!1){const I=e.selectedWorkspace.value?.path.replaceAll("\\","/").replace(/\/+$/,""),S=p.replaceAll("\\","/"),m=I!==void 0&&/^[a-z]:\//i.test(I),A=m?S.toLocaleLowerCase():S,L=m?I.toLocaleLowerCase():I,y=I!==void 0&&L!==void 0&&A.startsWith(`${L}/`)?S.slice(I.length+1):S;if(C&&Ka(y)&&!y.startsWith("/")&&!/^[a-z]:\//i.test(y)&&!y.split("/").some(D=>D===".."||D==="")){b?e.openHtmlExternal(y):e.openHtml(y);return}if(!e.filesReady.value){e.notice(c("generated.workbenchPageInteractionService.filePreviewIsCurrentlyUnavailable"),"error");return}if(b){e.openWorkspaceFileExternal(y,g,R);return}C?e.fileWorkbench.openComparison(y,g,R):e.fileWorkbench.openFile(y,g,R)}function d(){e.view.value!=="nodes"||!e.nodes.value.some(p=>p.connected&&!p.disabled)||(a=document.activeElement instanceof HTMLElement?document.activeElement:void 0,t.value=!0)}function w(p=!1){t.value=!1,p||ut(()=>a?.focus())}const k=mw(e,d,t),T=(p,g)=>ac(p,g,e.notice);return{quickOpenFileVisible:j(()=>t.value),openAgentFileChange:n,closeQuickOpenFile:w,copyConversationMessage:T,workspaceShortcuts:k,openAgentWorkspaceFile:l,openQuickWorkspaceFile:v,openQuickOpenFile:d,runnerBrandIcon:mc,sessionActivityTitle:i,sessionRelativeActivity:s,workspaceTabNodeLabel:r}}function bw(e){function t(r=e.runnerProfiles.value){const s=r.find(i=>i.capabilities.includes("turn.start"));s!==void 0&&!r.some(i=>i.runner===e.newSessionRunner.value&&i.capabilities.includes("turn.start"))&&e.applyRunnerDefaults(s.runner)}async function n(r){if(e.workspaceTarget.value?.nodeId===void 0||e.selectedWorkspace.value===void 0)return;const s={id:`draft:${crypto.randomUUID()}`,workspaceId:e.selectedWorkspace.value.id,runner:e.newSessionRunner.value,nativeControl:"MAR_MANAGED",runnerTitle:r,modelId:e.newSessionModel.value??null,effort:e.newSessionEffort.value??null,access:e.newSessionAccess.value??null,activity:"IDLE"};return e.prependSession(s),e.setDraftOpen(!1),e.setSelectedSessionId(s.id),s}function a(){e.closeMobileWorkspaceSurface(),e.draftSessionOpen.value||(e.saveCurrent(),e.stopSelectedSessionWatch(),t(),e.applyRunnerDefaults(e.newSessionRunner.value),e.setDraftOpen(!0),e.setSelectedSessionId(void 0),e.prepareDraft()),ut(e.focusDraft)}return{createDraftSession:n,ensureDraftRunnerSupported:t,openNewSessionComposer:a}}function Iw(e){let t,n,a=[];function r(){n===void 0&&(n=setTimeout(()=>{n=void 0,e.saveCurrentWorkspaceView()},0))}He(e.persistenceSources,e.persistWorkbenchState,{deep:!0}),He(e.documentTitle,s=>document.title=s,{immediate:!0}),He(e.routeSources,e.syncWorkbenchRoute),He(e.newSessionRunner,()=>{e.normalizeNewSessionOptions(),e.clearRunnerCommand(),e.clearComposerModelEffort()}),He(e.newSessionModel,e.normalizeNewSessionOptions),He(e.workspaceTarget,e.closeFileReferences),He(e.cacheSources,r,{flush:"post"}),He(e.conversationTurns,()=>{e.followConversation.value&&e.scrollConversationToLatest()},{flush:"post"}),He(e.conversationScroll,s=>{t?.disconnect(),s!==void 0&&(t=new ResizeObserver(()=>{e.followConversation.value&&e.scrollConversationToLatest()}),t.observe(s))}),He(e.selectedSessionId,(s,i)=>{s!==i&&e.stopSelectedSessionWatch()},{flush:"sync"}),Dt(()=>{e.restoreWorkbenchState(),e.restoreWorkbenchEventCursors(),e.restoreWorkspaceUploads(),e.startNavigation(),document.addEventListener("visibilitychange",e.handleSessionWatchVisibility),window.addEventListener("online",e.recoverAuthentication),a=e.workspaceShortcuts.map(s=>xt.register(s)),e.refreshAdmin()}),mt(()=>{n!==void 0&&clearTimeout(n),e.cancelFileReferenceSearch(),e.disposeNavigation(),document.removeEventListener("visibilitychange",e.handleSessionWatchVisibility),window.removeEventListener("online",e.recoverAuthentication);for(const s of a)s();e.disposeWorkspaceUploads(),e.disposeWorkbenchNotifications(),e.disposeWebVersionUpdateCheck(),t?.disconnect(),e.stopSelectedSessionWatch(),e.stopWorkspaceWatch(),e.disposeDirectTransport(),e.closeWorkbenchLive(),e.clearNewSessionAttachments(),e.releaseRunImagePreviews()})}function Sw(e){const t=x([]),n=x(!1),a=x(!1);let r;async function s(){return r!==void 0||(n.value=!0,a.value=!1,r=e.request("/api/quick-prompts").then(i=>{t.value=Array.isArray(i.prompts)?i.prompts:[]}).catch(()=>{a.value=!0}).finally(()=>{n.value=!1,r=void 0})),r}return{prompts:j(()=>t.value),loading:j(()=>n.value),failed:j(()=>a.value),refresh:s}}function Cw(e){const{selectedNodeId:t,selectedConversationId:n,pageSize:a}=e,r=x([]),s=x(!1),i=x(!1),l=x(!1),v=x(),u=x(!1);let d=0,w=0,k=null;const T=new Map;let p=0;function g(){return new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}function R(y){const D=gf.safeParse(y);if(!D.success)throw g();return D.data}function b(y,D){const E=Bt(y.nodeId,y.id),H=T.get(E);return H!==void 0&&H.revision>D&&H.activity.version>y.activity.version?{...y,activity:H.activity}:(T.set(E,{activity:y.activity,revision:D}),y)}function C(y){const D=pf.safeParse(y);if(!D.success)return!1;const E=D.data,H=Bt(E.nodeId,E.conversationId),X=T.get(H);return X!==void 0&&E.activity.version<=X.activity.version||(T.set(H,{activity:E.activity,revision:++p}),r.value=r.value.map(_=>_.nodeId===E.nodeId&&_.id===E.conversationId?{..._,activity:E.activity}:_),e.onActivity(E.nodeId,E.conversationId,E.activity)),!0}function I(y){return["STARTING","RUNNING","CANCELLING"].includes(y.activity.status)}async function S(){const y=++d,D=p;w+=1,i.value=!0,l.value=!1,v.value=void 0;try{const E=R(await e.request(`/api/hosted-conversations?limit=${a}`));if(y!==d)return;const H=r.value,X=new Map(H.map(Q=>[Bt(Q.nodeId,Q.id),Q])),_=H.find(Q=>Q.nodeId===t.value&&Q.id===n.value),U=E.items.map(Q=>{Q=b(Q,D);const $=X.get(Bt(Q.nodeId,Q.id));if($===void 0)return Q;const V=Rn(Q,$);return V.activity===Q.activity?V:{...V,activity:Q.activity}});E.items.length>0&&_!==void 0&&!E.items.some(Q=>Q.nodeId===_.nodeId&&Q.id===_.id)&&U.push(_),r.value=Vs(U),k=E.nextCursor,s.value=k!==null,u.value=!0}finally{y===d&&(i.value=!1)}}async function m(){const y=k;if(y===null||l.value||i.value)return;const D=d,E=++w,H=p;l.value=!0,v.value=void 0;try{const X=R(await e.request(`/api/hosted-conversations?limit=${a}&cursor=${encodeURIComponent(y)}`));if(D!==d)return;if(X.nextCursor===y)throw new Error("SESSION_PAGINATION_NO_PROGRESS");r.value=Vs([...r.value,...X.items.map(_=>b(_,H))]),k=X.nextCursor,s.value=k!==null}catch(X){D===d&&(v.value=X)}finally{E===w&&(l.value=!1)}}function A(y){const D=r.value.findIndex(E=>E.nodeId===y.nodeId&&E.id===y.id);if(D<0)r.value=gr([y,...r.value]);else{const E=[...r.value];E.splice(D,1,Rn(y,E[D])),r.value=gr(E)}}function L(y,D){r.value=r.value.filter(E=>E.id!==D||E.nodeId!==y)}return{conversations:r,hasMoreConversations:s,loadingConversations:i,loadingMoreConversations:l,loadMoreConversationsError:v,conversationsLoaded:u,loadConversations:S,loadMoreConversations:m,projectActivityMessage:C,conversationIsRunning:I,upsertConversation:A,remove:L}}function Rn(e,t){const n=e.updatedAt<t.updatedAt||e.lastActivityAt<t.lastActivityAt?t:e,a=e.activity,r=t.activity,s=a.version>r.version?a:r;return n.activity===s?n:{...n,activity:s}}function Vs(e){const t=new Map;for(const n of e){const a=Bt(n.nodeId,n.id),r=t.get(a);t.set(a,r===void 0?n:Rn(n,r))}return gr([...t.values()])}function gr(e){return[...e].sort((t,n)=>+(n.pinnedAt!==null)-+(t.pinnedAt!==null)||n.lastActivityAt-t.lastActivityAt||t.nodeId.localeCompare(n.nodeId,"en-US")||t.id.localeCompare(n.id,"en-US"))}function Bt(e,t){return`${e}\0${t}`}function Tw(e){function t(){return new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}function n(l){return`/api/nodes/${encodeURIComponent(l.nodeId)}/hosted-conversations/${encodeURIComponent(l.conversationId)}`}async function a(l){const v=e.requireContext();if(e.templateChanging())throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const u=yf.safeParse(await e.request(`${n(v)}/files/${encodeURIComponent(l)}`,{method:"DELETE",body:"{}"}));if(!u.success||u.data.deletedFileId!==l||u.data.files.some(d=>d.conversationId!==v.conversationId))throw t();return e.removeFile(v,l),u.data}async function r(l,v=0,u=512*1024){const d=e.requireContext(),w=await e.request(`${n(d)}/files/${encodeURIComponent(l)}?offset=${v}&limit=${u}`),k=hf.safeParse(w);if(!k.success||k.data.file.id!==l||k.data.file.conversationId!==d.conversationId||k.data.offset!==v)throw t();const T=Aw(k.data.content),p=v+T;if(T>u||p>k.data.file.size||(k.data.eof?k.data.nextOffset!==null||p!==k.data.file.size:k.data.nextOffset!==p))throw t();return k.data}function s(l,v=!1){const u=e.requireContext();if(l.conversationId!==u.conversationId)throw t();return`${n(u)}/files/${encodeURIComponent(l.id)}/content${v?"?download=1":""}`}async function i(l,v,u,d){const w=e.requireContext();if(e.templateChanging())throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const k=l.type.trim()||"application/octet-stream";d?.throwIfAborted();const T=mf.safeParse(await e.request(`${n(w)}/uploads/preflight`,{method:"POST",body:JSON.stringify({files:[{name:l.name,size:l.size,mimeType:k}]}),...d===void 0?{}:{signal:d}}));if(!T.success||T.data.files.length!==1||T.data.files[0]?.name!==l.name)throw t();if(T.data.files[0].status!=="READY")throw new Error(`HOSTED_CONVERSATION_UPLOAD_${T.data.files[0].status}`);let p=Ko(await e.request(`${n(w)}/uploads`,{method:"POST",body:JSON.stringify({name:l.name,size:l.size,mimeType:k,clientRequestId:v}),...d===void 0?{}:{signal:d}}),w.conversationId);u?.(p);const g=512*1024;try{for(let R=p.receivedBytes;R<l.size;R+=g){const b=Math.min(l.size,R+g),C=new Uint8Array(await l.slice(R,b).arrayBuffer());if(d?.throwIfAborted(),C.byteLength!==b-R||(p=Ko(await e.request(`${n(w)}/uploads/${encodeURIComponent(p.uploadId)}/chunks`,{method:"POST",body:JSON.stringify({offset:R,dataBase64:Rw(C)}),...d===void 0?{}:{signal:d}}),w.conversationId),p.receivedBytes!==b))throw t();u?.(p)}if(p=Ko(await e.request(`${n(w)}/uploads/${encodeURIComponent(p.uploadId)}/complete`,{method:"POST",body:"{}",...d===void 0?{}:{signal:d}}),w.conversationId),p.status!=="COMPLETED"||p.file===void 0)throw t()}catch(R){throw await e.request(`${n(w)}/uploads/${encodeURIComponent(p.uploadId)}/cancel`,{method:"POST",body:"{}"}).catch(()=>{}),R}return e.acceptFile(w,p.file),u?.(p),p}return{deleteFile:a,readFile:r,contentUrl:s,uploadFile:i}}function Ew(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Ko(e,t){if(!Ew(e)||Object.keys(e).length!==1||!Object.hasOwn(e,"upload"))throw new Error("HOSTED_CONVERSATION_RESPONSE_INVALID");const n=wf.safeParse(e.upload);if(!n.success||n.data.conversationId!==t)throw new Error("HOSTED_CONVERSATION_RESPONSE_INVALID");return n.data}function Rw(e){let t="";for(let a=0;a<e.length;a+=32768)t+=String.fromCharCode(...e.subarray(a,Math.min(e.length,a+32768)));return btoa(t)}function Aw(e){if(e.length===0)return 0;const t=e.endsWith("==")?2:e.endsWith("=")?1:0;return e.length*3/4-t}function Nw(e){const{selectedNodeId:t,selectedConversationId:n}=e,a=x(!1),r=x(),s=wt(),i=x(!1);let l,v=!1,u,d,w,k,T=0,p=0,g;function R(Q="HOSTED_CONVERSATION_WATCH_INITIAL_FAILED",$=new Error(Q)){const V=g;V!==void 0&&(g=void 0,clearTimeout(V.timer),V.removeAbortListener(),V.reject($))}function b(Q,$,V,N){return R(),new Promise((h,F)=>{const z=()=>{g?.watchId===V&&R()};N.addEventListener("abort",z,{once:!0});const fe=setTimeout(z,e.requestTimeoutMs);g={nodeId:Q,conversationId:$,watchId:V,resolve:h,reject:F,timer:fe,removeAbortListener:()=>N.removeEventListener("abort",z)},N.aborted&&z()})}function C(Q){const $=t.value;return Q===m()&&$!==void 0&&e.workbenchConnectionId()!==void 0&&(typeof document>"u"||document.visibilityState==="visible")}async function I(Q,$,V){const N=t.value,h=n.value,F=e.workbenchConnectionId();if(N===void 0||h===void 0||F===void 0||Q!==Bt(N,h))return;V==="initial"&&(a.value=!1,i.value=!0,v=!0,l=Hs(),u=N,d=h,w=F,k=void 0,T=0,p=0);const z=l??Hs();l=z;const fe=V==="initial"?b(N,h,z,$):void 0;fe?.catch(()=>{});try{const J=await e.request(`/api/nodes/${encodeURIComponent(N)}/hosted-conversations/${encodeURIComponent(h)}/watch`,{method:"POST",body:JSON.stringify({mode:V,workbenchConnectionId:F,watchId:z}),signal:$});if(m()!==Q||w!==F||l!==z){g?.watchId===z&&R();return}if(V==="initial"){const re=kf.safeParse(J);if(!re.success||re.data.watchId!==z||k!==void 0&&re.data.nodeGeneration!==k)throw R("HOSTED_CONVERSATION_RESPONSE_INVALID"),qs();k=re.data.nodeGeneration}await fe}catch(J){throw g?.watchId===z&&R(),await fe?.catch(()=>{}),l===z&&w===F&&m()===Q&&C(Q)&&(!$.aborted||gt($.reason)!==void 0)&&U($.aborted?$.reason:J),J}}const S=Pl({heartbeatMs:e.heartbeatMs,requestTimeoutMs:e.requestTimeoutMs,confirmationTimeoutMs:e.confirmationTimeoutMs,maxFailures:3,eligible:C,renew:I,recovery:{retryable:Q=>{const $=gt(Q);return $!==void 0?["HOSTED_CONVERSATION_TEMPLATE_CONFLICT","SESSION_WATCH_NOT_FOUND","HOSTED_CONVERSATION_WATCH_INITIAL_FAILED","NODE_OFFLINE","NODE_REQUEST_TIMEOUT","WATCH_REQUEST_TIMEOUT","REQUEST_FAILED_408","REQUEST_FAILED_429","REQUEST_FAILED_502","REQUEST_FAILED_503","REQUEST_FAILED_504"].includes($):Q instanceof TypeError||Q instanceof Error&&Q.name==="AbortError"},onFailure:Q=>{v=!1,i.value=!0,s.value=Q,r.value=gt(Q)??"HOSTED_CONVERSATION_WATCH_EXPIRED"}},onExpired:()=>{i.value=!1,r.value??="HOSTED_CONVERSATION_WATCH_EXPIRED",e.onWatchExpired?.()}});function m(){const Q=t.value,$=n.value;return Q===void 0||$===void 0?void 0:Bt(Q,$)}function A(){const Q=m();if(Q===void 0)return Promise.reject(new Error("HOSTED_CONVERSATION_REQUIRED"));const $=S.start(Q);return $===void 0?Promise.resolve():($.catch(()=>{}),$)}function L(){a.value=!1,i.value=!1,R(),S.stop();const Q=u,$=d,V=w,N=l;u=void 0,d=void 0,w=void 0,l=void 0,v=!1,k=void 0,T=0,p=0,!(Q===void 0||$===void 0||V===void 0||N===void 0)&&e.request(`/api/nodes/${encodeURIComponent(Q)}/hosted-conversations/${encodeURIComponent($)}/watch`,{method:"DELETE",body:JSON.stringify({workbenchConnectionId:V,watchId:N})}).catch(()=>{})}function y(){return L(),A()}function D(){a.value=!1,i.value=!1,S.pause()}function E(){document.visibilityState!=="visible"&&L()}function H(Q){if(!jo(Q))return!1;if(Q.type==="watch.failed")return _(Q);if(Q.type!=="watch.hosted-conversation.snapshot"&&Q.type!=="watch.hosted-conversation.event"||!X(Q))return!1;if(k??=Q.nodeGeneration,Q.type==="watch.hosted-conversation.snapshot"){if(!Number.isInteger(Q.snapshotSequence)||Q.snapshotSequence<=T)return!1;const N=ea.safeParse(Q.payload);if(!N.success||N.data.conversation.id!==d||N.data.conversation.nodeId!==u)return R("HOSTED_CONVERSATION_RESPONSE_INVALID"),U(qs()),!0;if(T=Q.snapshotSequence,e.installSnapshot(u,d,N.data),!X(Q)||(a.value=!0,!X(Q))||(r.value=void 0,s.value=void 0,i.value=!1,!X(Q)))return!0;const h=g;return h?.nodeId===u&&h.conversationId===d&&h.watchId===l&&(g=void 0,clearTimeout(h.timer),h.removeAbortListener(),h.resolve()),S.confirm(Bt(u,d)),!0}const $=jo(Q.event)?Q.event:void 0;if($===void 0||$.category!=="hosted-conversation"||!Number.isInteger($.sequence)||$.sequence<=p)return!1;const V=jo($.payload)?$.payload:void 0;return V===void 0||V.conversationId!==d?!1:(p=$.sequence,e.applyHostedPayload(V,$.sequence),X(Q)&&S.confirm(Bt(u,d)),!0)}function X(Q){return v&&Q.workbenchConnectionId===e.workbenchConnectionId()&&Q.workbenchConnectionId===w&&Q.watchId===l&&Q.nodeId===u&&Q.conversationId===d&&typeof Q.nodeGeneration=="string"&&(k===void 0||Q.nodeGeneration===k)&&t.value===u&&n.value===d}function _(Q){if(Q.watchType!=="hosted-conversation"||!X(Q)||typeof Q.code!="string")return!1;k??=Q.nodeGeneration,r.value=Q.code;const $=qa({error:Q},500);return s.value=$,i.value=!1,v=!1,R(Q.code,$),S.pause(),!0}function U(Q){a.value=!1,i.value=!1,s.value=Q,r.value=gt(Q)??"HOSTED_CONVERSATION_WATCH_EXPIRED"}return{watchReady:a,watchFailureCode:r,watchFailure:s,watchLoading:i,clearFailure:()=>{r.value=void 0,s.value=void 0},selectedWatchId:()=>l,beginSelectedConversationWatch:A,restartSelectedConversationWatch:y,pauseSelectedConversationWatch:D,stopSelectedConversationWatch:L,handleVisibility:E,handleWatchEvent:H,markRestartFailure:U}}function qs(){return new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}function Hs(){return crypto.randomUUID().replace(/-/g,"")}function jo(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function _o(e,t){const n=t.replaceAll("\\","/"),a=n.startsWith("/"),s=n.replace(/^\/+/u,"").split("/");if(s.length===0||s.some(d=>d.length===0||d==="."||d===".."))return;if(a){if(s[0]!=="workspace")return;s.shift()}const i=s[0],l=i==="output"?"OUTPUT":i==="inbox"?"UPLOAD":void 0;if(l!==void 0){const d=s.slice(1).join("/");return d.length===0?void 0:e.find(w=>w.category===l&&w.relativePath===d)}if(a)return;const v=s.join("/"),u=e.filter(d=>d.relativePath===v);return u.length===1?u[0]:void 0}function Dw(e){const t=x(),n=x(),a=x(),r=x(!1),s=x(),{turns:i,nextCursor:l,projection:v}=Tp({onRecentWindowOverflow:()=>{J+=1,s.value=void 0,r.value=!1,fe=!1,re=void 0,ne()},limitHistory:xa}),u=j(()=>a.value===void 0?void 0:{...a.value,turns:i.value}),d=Cw({request:e.request,selectedNodeId:t,selectedConversationId:n,pageSize:e.pageSize??20,onActivity:(he,q,te)=>{const Y=u.value;Y?.conversation.nodeId===he&&Y.conversation.id===q&&te.version>Y.conversation.activity.version&&xe({...Y,conversation:{...Y.conversation,activity:te}})}}),{conversations:w,hasMoreConversations:k,loadingConversations:T,loadingMoreConversations:p,loadMoreConversationsError:g,conversationsLoaded:R,loadConversations:b,loadMoreConversations:C,projectActivityMessage:I,conversationIsRunning:S,upsertConversation:m}=d,A=Nw({request:e.request,workbenchConnectionId:e.workbenchConnectionId,selectedNodeId:t,selectedConversationId:n,heartbeatMs:e.heartbeatMs,requestTimeoutMs:e.requestTimeoutMs,confirmationTimeoutMs:e.confirmationTimeoutMs,...e.onWatchExpired===void 0?{}:{onWatchExpired:e.onWatchExpired},installSnapshot:G,applyHostedPayload:M}),{watchReady:L,watchFailureCode:y,watchFailure:D,watchLoading:E,selectedWatchId:H,beginSelectedConversationWatch:X,restartSelectedConversationWatch:_,pauseSelectedConversationWatch:U,stopSelectedConversationWatch:Q,handleVisibility:$,handleWatchEvent:V}=A,N=Ep(),h=x(new Set),F=j(()=>{const he=ce();return he!==void 0&&h.value.has(he)});let z=0,fe=!1,J=0,re;function ge(){return new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}function ce(){const he=t.value,q=n.value;return he===void 0||q===void 0?void 0:Bt(he,q)}function oe(he,q,te){if(te!==void 0&&(te.conversation.nodeId!==he||te.conversation.id!==q))throw ge();if(t.value===he&&n.value===q){te!==void 0&&G(he,q,te);return}Q(),n.value=void 0,a.value=void 0,v.restoreWindow([],null),r.value=!1,fe=!1,J+=1,s.value=void 0,re=void 0,A.clearFailure(),te!==void 0&&G(he,q,te),t.value=he,n.value=q}function P(){Q(),n.value=void 0,t.value=void 0,a.value=void 0,v.restoreWindow([],null),r.value=!1,fe=!1,J+=1,s.value=void 0,re=void 0,A.clearFailure()}function G(he,q,te,Y=u.value===void 0){if(te.conversation.nodeId!==he||te.conversation.id!==q)throw ge();const se={turns:Yo(te.turns),nextCursor:te.historyNextCursor,source:"official",snapshotSequence:te.snapshotSequence,readAt:Date.now()};Y?(J+=1,r.value=!1,s.value=void 0,fe=!1,v.replaceAuthoritative(se)):v.mergeLatest({...se,nextCursor:fe?l.value:se.nextCursor}),xe({...te,turns:i.value,historyNextCursor:l.value},!0),m(te.conversation)}async function ue(){const he=Me(),q=l.value,te=J;if(!(q===null||r.value)){r.value=!0,s.value=void 0;try{const Y=$i.safeParse(await e.request(`${ye(he)}/history?limit=10&cursor=${encodeURIComponent(q)}`));if(!Y.success)throw ge();if(!Se(he)||J!==te||u.value===void 0||l.value!==q)return;const se=Yo(Y.data.turns);v.mergeOlderPage({turns:se,nextCursor:Y.data.nextCursor}),fe=!0,v.restore(i.value),Ee({...u.value,historyNextCursor:Y.data.nextCursor})}catch(Y){Se(he)&&J===te&&l.value===q&&(s.value=Y)}finally{J===te&&(r.value=!1)}}}function ne(){if(re!==void 0)return re;const he=J,q=(async()=>{const te=Me(),Y=$i.safeParse(await e.request(`${ye(te)}/history?limit=10`));!Y.success||!Se(te)||J!==he||u.value===void 0||(v.replaceAuthoritative({turns:Yo(Y.data.turns),nextCursor:Y.data.nextCursor,source:"official",readAt:Date.now()}),Ee({...u.value,historyNextCursor:Y.data.nextCursor}))})().catch(()=>{}).finally(()=>{re===q&&(re=void 0)});return re=q,q}function M(he,q){const te=u.value;if(te!==void 0){if(he.kind==="template-changed"&&he.conversationId===te.conversation.id){_e(Me(),H());return}if(he.kind==="runtime"&&Jt(he.runtimeEvent)){ee(te,he.runtimeEvent,q);return}if(he.kind==="files"&&Array.isArray(he.files)){const Y=new Map;for(const se of he.files){const be=Sf.safeParse(se);if(!be.success||be.data.conversationId!==te.conversation.id)return;Y.set(be.data.id,be.data)}if(he.error!==null&&!zs(he.error))return;xe({...te,files:[...Y.values()],error:he.error});return}if((he.kind==="configuration"||he.kind==="conversation")&&he.conversation!==void 0){const Y=Aa.safeParse(he.conversation);if(!Y.success||Y.data.id!==te.conversation.id||Y.data.nodeId!==te.conversation.nodeId)return;xe({...te,conversation:Y.data}),m(Y.data);return}if(he.kind==="upgrade"&&Jt(he.upgrade)){const Y=Aa.safeParse(he.upgrade.conversation);if(!Y.success||Y.data.id!==te.conversation.id||Y.data.nodeId!==te.conversation.nodeId||he.upgrade.error!==null&&!zs(he.upgrade.error))return;xe({...te,conversation:Y.data,error:he.upgrade.error}),m(Y.data);return}if(he.kind==="run"){const Y=ea.innerType().shape.run.safeParse(Bs(he.run,te.run));Y.success&&xe({...te,run:Y.data},!0)}}}function ee(he,q,te){if(q.kind!=="RUN"&&q.kind!=="ITEM"&&q.kind!=="DELTA"||typeof q.executionId!="string"||q.executionId.length===0||!Number.isInteger(q.sequence)||q.sequence<0||!Number.isInteger(q.createdAt)||!Jt(q.payload))return;const Y=q.executionId,se=typeof q.turnId=="string"&&q.turnId.length>0?q.turnId:Y,be=Math.max(0,q.createdAt);le(he,Y,se,be,te);const Oe=i.value.findLast(st=>st.id===se||st.runId===Y);if(Oe===void 0)return;if(q.kind==="ITEM"){if(v.mergeItem(Y,q.payload.item,te,be)){const st=Jt(q.payload.item)?q.payload.item:void 0,pe=st===void 0||!Jt(st.payload)?void 0:st.payload;if(st?.kind==="user_message"&&typeof pe?.clientMessageId=="string"&&pe.clientMessageId.length>0){const Ce=i.value.findLast(je=>je.id===se||je.runId===Y);Ce!==void 0&&v.mergeLatest({turns:[Ce],nextCursor:null,source:"runtime",snapshotSequence:te,readAt:be})}Ee(he)}return}if(q.kind==="DELTA"){v.mergeTextDelta(Y,q.payload,te,be)&&Ee(he);return}const We=Ow(q.payload.status);if(We===void 0)return;const Ie=Lw(We);v.mergeLatest({turns:[{...Oe,status:We,items:Ie?Oe.items.map(st=>st.kind==="assistant_message"&&st.status==="IN_PROGRESS"?{...st,status:"COMPLETED",completedAt:be}:st):Oe.items,completedAt:Ie?be:null}],nextCursor:null,source:"runtime",snapshotSequence:te,readAt:be}),Ee(he)}function le(he,q,te,Y,se){i.value.some(be=>be.id===te||be.runId===q&&be.id===te)||v.mergeLatest({turns:[{id:te,sessionId:he.conversation.sessionId,runId:q,status:"RUNNING",items:[],startedAt:Y,completedAt:null}],nextCursor:null,source:"runtime",snapshotSequence:se,readAt:Y})}function Ee(he){xe({...he,historyNextCursor:l.value},!0)}function xe(he,q=!1){const{turns:te,...Y}=he;a.value=Y,q&&(z+=1)}function Me(){const he=t.value,q=n.value,te=u.value;if(he===void 0||q===void 0||te===void 0||te.conversation.nodeId!==he||te.conversation.id!==q)throw new Error("HOSTED_CONVERSATION_REQUIRED");return{nodeId:he,conversationId:q,snapshot:te,historyRevision:z}}function Se(he){return t.value===he.nodeId&&n.value===he.conversationId}function ye(he){return`/api/nodes/${encodeURIComponent(he.nodeId)}/hosted-conversations/${encodeURIComponent(he.conversationId)}`}function Fe(he,q,te){if(!Jt(he)||!Ua(he,te?["conversation","run"]:["conversation"]))throw ge();const Y=Aa.safeParse(he.conversation),se=ea.innerType().shape.run.safeParse(te?he.run:q.snapshot.run);if(!Y.success||!se.success||Y.data.nodeId!==q.nodeId||Y.data.id!==q.conversationId)throw ge();return{conversation:Y.data,run:se.data}}function Ye(he,q,te){if(!Jt(he)||!Ua(he,["conversation"]))throw ge();const Y=Aa.safeParse(he.conversation);if(!Y.success||Y.data.nodeId!==q||Y.data.id!==te)throw ge();return Y.data}async function nt(he){const q=Me();if(F.value)throw new Error("HOSTED_CONVERSATION_STATE_INVALID");if(!L.value)throw new Error("HOSTED_CONVERSATION_WATCH_NOT_READY");const te=N.begin(mr(q.nodeId,q.conversationId));if(te===void 0)throw new Error("HOSTED_CONVERSATION_MESSAGE_SUBMISSION_ACTIVE");ae(q.snapshot,he);try{const Y=await e.request(`${ye(q)}/messages`,{method:"POST",body:JSON.stringify({clientMessageId:he.clientMessageId,prompt:he.prompt,attachmentIds:[...he.attachmentIds],...he.modelId===void 0?{}:{modelId:he.modelId},...he.deliveryIntent===void 0?{}:{deliveryIntent:he.deliveryIntent}})}),se=Fe(Y,q,!0);if(se.run===null)throw ge();if(Se(q)&&u.value!==void 0){v.updateOptimisticUserMessage(he.clientMessageId)&&Ee(u.value);const be=Rn(se.conversation,u.value.conversation);xe({...u.value,conversation:be,run:Bs(se.run,u.value.run)},!0),m(be)}return se.run}catch(Y){throw Se(q)&&u.value!==void 0&&v.removeOptimisticUserMessage(he.clientMessageId)&&Ee(u.value),Y}finally{te()}}function ae(he,q){const te=Date.now();v.mergeLatest({turns:[{id:q.clientMessageId,sessionId:he.conversation.sessionId,runId:null,status:"PREPARING",items:[{id:q.clientMessageId,kind:"user_message",status:"COMPLETED",payload:{clientMessageId:q.clientMessageId,text:q.prompt,contexts:[],delivery:"PENDING"},startedAt:te,completedAt:te}],startedAt:te,completedAt:null}],nextCursor:null,source:"runtime",readAt:te}),Ee(he)}async function me(he){const q=Me();if(F.value)throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const te=await e.request(`${ye(q)}/config`,{method:"PATCH",body:JSON.stringify({modelId:he.modelId})}),Y=Fe(te,q,!1);if(Se(q)&&u.value!==void 0){const se=Rn(Y.conversation,u.value.conversation);xe({...u.value,conversation:se}),m(se)}return Y.conversation}async function Pe(he,q,te){const Y=Me();if(F.value)throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const se=ea.safeParse(await e.request(`${ye(Y)}/rollback`,{method:"POST",body:JSON.stringify({turnId:he,boundary:q,...te===void 0?{}:{itemId:te}})}));if(!se.success||se.data.conversation.nodeId!==Y.nodeId||se.data.conversation.id!==Y.conversationId||se.data.conversation.sessionId!==Y.snapshot.conversation.sessionId||se.data.conversation.templateId!==Y.snapshot.conversation.templateId||se.data.template.id!==Y.snapshot.template.id||se.data.template.nodeId!==Y.nodeId)throw ge();const be=u.value;return Se(Y)&&be!==void 0&&(be===Y.snapshot?G(Y.nodeId,Y.conversationId,se.data,!0):be.conversation.nodeId===Y.nodeId&&be.conversation.id===Y.conversationId&&z===Y.historyRevision&&G(Y.nodeId,Y.conversationId,{...se.data,nodeAppVersion:be.nodeAppVersion??se.data.nodeAppVersion,conversation:Rn(se.data.conversation,be.conversation),template:be.template,files:be.files,models:be.models,error:be.error},!0)),se.data}async function Ue(he,q=t.value,te=n.value){if(q===void 0||te===void 0)throw new Error("HOSTED_CONVERSATION_REQUIRED");const Y={nodeId:q,conversationId:te},se=await e.request(ye(Y),{method:"PATCH",body:JSON.stringify({...he.title===void 0?{}:{title:he.title},...he.pinned===void 0?{}:{pinned:he.pinned}})}),be=Ye(se,q,te);if(Se(Y)&&u.value!==void 0){const Oe=Rn(be,u.value.conversation);return xe({...u.value,conversation:Oe}),m(Oe),Oe}return m(be),be}async function Qe(){const he=Me(),q=await e.request(`${ye(he)}/interrupt`,{method:"POST",body:"{}"});if(!Jt(q)||!Ua(q,["interrupted"])||typeof q.interrupted!="boolean")throw ge();return q.interrupted}async function Te(he=t.value,q=n.value){if(he===void 0||q===void 0)throw new Error("HOSTED_CONVERSATION_REQUIRED");const te={nodeId:he,conversationId:q},Y=Se(te)&&H()!==void 0;Se(te)&&Q();let se;try{const be=bf.safeParse(await e.request(ye(te),{method:"DELETE",body:"{}"}));if(!be.success||be.data.deletedConversationId!==q)throw ge();se=be.data.deletedConversationId}catch(be){throw Y&&Se(te)&&_().catch(()=>{}),be}return d.remove(he,q),Se(te)&&P(),{deletedConversationId:se}}async function Ge(){const he=Me();return(await zl(e.request)).filter(te=>te.nodeId===he.nodeId&&te.available)}async function _e(he,q){if(!(!Se(he)||H()!==q))try{await _()}catch(te){Se(he)&&A.markRestartFailure(te)}}async function tt(he,q){const te=Me(),Y=te.snapshot.conversation;if(Y.templateId===he)return;if(Y.templateId!==q)throw new Error("HOSTED_CONVERSATION_TEMPLATE_CONFLICT");if(Y.status!=="ACTIVE"||!L.value||te.snapshot.run!==null||Y.activity.status!=="IDLE"||F.value||N.pending.value&&N.context.value===mr(te.nodeId,te.conversationId))throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const se=Bt(te.nodeId,te.conversationId),be=H();h.value.add(se);try{const Oe=If.safeParse(await e.request(`${ye(te)}/template`,{method:"POST",body:JSON.stringify({templateId:he,expectedTemplateId:q})}));if(!Oe.success||Oe.data.conversation.id!==te.conversationId||Oe.data.conversation.nodeId!==te.nodeId||Oe.data.conversation.sessionId!==Y.sessionId||Oe.data.template.id!==he)throw ge();await _e(te,be)}catch(Oe){const We=gt(Oe);throw(We===void 0||["HOSTED_CONVERSATION_TEMPLATE_CONFLICT","HOSTED_CONVERSATION_RESPONSE_INVALID","NODE_REQUEST_TIMEOUT","NODE_OFFLINE","NODE_SEND_FAILED","NODE_CONTROL_CLOSED","NODE_RESPONSE_INVALID","INTERNAL_ERROR","REQUEST_FAILED_500","REQUEST_FAILED_502","REQUEST_FAILED_503","REQUEST_FAILED_504"].includes(We))&&await _e(te,be),Oe}finally{h.value.delete(se)}}const{deleteFile:Xe,readFile:Re,contentUrl:de,uploadFile:Ae}=Tw({request:e.request,requireContext:Me,templateChanging:()=>F.value,removeFile:(he,q)=>{Se(he)&&u.value!==void 0&&xe({...u.value,files:u.value.files.filter(te=>te.id!==q)})},acceptFile:(he,q)=>{if(Se(he)&&u.value!==void 0){const te=new Map(u.value.files.map(Y=>[Y.id,Y]));te.set(q.id,q),xe({...u.value,files:[...te.values()]})}}});return{conversations:w,hasMoreConversations:k,loadingConversations:T,loadingMoreConversations:p,loadMoreConversationsError:g,conversationsLoaded:R,selectedNodeId:t,selectedConversationId:n,snapshot:u,turns:i,historyNextCursor:l,loadingOlderHistory:r,olderHistoryError:s,watchReady:L,watchFailureCode:y,selectedWatchId:H,watchFailure:D,watchLoading:E,messageSubmitting:N.pending,messageSubmissionContext:N.context,templateChanging:F,listTemplateOptions:Ge,switchTemplate:tt,loadConversations:b,loadMoreConversations:C,projectActivityMessage:I,conversationIsRunning:S,rememberConversation:m,selectConversation:oe,clearSelectedConversation:P,beginSelectedConversationWatch:X,restartSelectedConversationWatch:_,pauseSelectedConversationWatch:U,stopSelectedConversationWatch:Q,handleWatchEvent:V,handleVisibility:$,loadOlderHistory:ue,sendMessage:nt,rollback:Pe,updateConfiguration:me,updateMetadata:Ue,interrupt:Qe,deleteConversation:Te,deleteFile:Xe,readFile:Re,contentUrl:de,uploadFile:Ae}}function Bs(e,t){if(!Jt(e)||typeof e.id!="string")return t;const n=Pw(e.status);if(n===void 0)return t;if(t?.id===e.id){const s=Gs(t.status);if(s===3||Gs(n)<s)return t}const a=e.startedAt===null||Number.isInteger(e.startedAt)&&e.startedAt>=0?e.startedAt:t?.startedAt??null,r=e.completedAt===null||Number.isInteger(e.completedAt)&&e.completedAt>=0?e.completedAt:t?.completedAt??null;return{id:e.id,status:n,startedAt:a,completedAt:r}}function Gs(e){return e==="STARTING"?0:e==="RUNNING"?1:e==="CANCELLING"?2:3}function Pw(e){if(e==="STARTING"||e==="RUNNING"||e==="CANCELLING"||e==="SUCCEEDED"||e==="FAILED"||e==="CANCELLED"||e==="INTERRUPTED")return e}function zs(e){return Jt(e)&&Ua(e,["code","message"])&&typeof e.code=="string"&&/^[A-Z][A-Z0-9_]{0,79}$/.test(e.code)&&typeof e.message=="string"&&e.message.length>0&&e.message.length<=1e3}function Yo(e){return e.map(t=>{const n={id:t.id,sessionId:t.sessionId,runId:t.runId,status:t.status,...t.rewind===void 0?{}:{rewind:t.rewind},items:t.items.map(a=>{const r={id:a.id,kind:a.kind,status:a.status,payload:a.payload,startedAt:a.startedAt,completedAt:a.completedAt,...a.processGroup===void 0?{}:{processGroup:a.processGroup},...a.segmentId===void 0?{}:{segmentId:a.segmentId},...a.segmentIndex===void 0?{}:{segmentIndex:a.segmentIndex}};return Object.assign(r,{sessionId:a.sessionId,turnId:a.turnId,runId:a.runId,parentItemId:a.parentItemId,sourceSequence:a.sourceSequence,revision:a.revision})}),startedAt:t.startedAt,completedAt:t.completedAt};return Object.assign(n,{userItemId:t.userItemId,model:t.model,effort:t.effort,access:t.access})})}function Ow(e){if(e==="RUNNING"||e==="SUCCEEDED"||e==="FAILED"||e==="INTERRUPTED")return e}function Lw(e){return["SUCCEEDED","FAILED","CANCELLED","INTERRUPTED","LOST"].includes(e)}function Ua(e,t){const n=Object.keys(e).sort(),a=[...t].sort();return n.length===a.length&&n.every((r,s)=>r===a[s])}function mr(e,t){return Bt(e,t)}function Jt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Ks="mar.prompt-completion.enabled";function Ww(){let e=!0;try{e=localStorage.getItem(Ks)!=="false"}catch{}const t=wt(e);return{enabled:ct(t),setEnabled(n){localStorage.setItem(Ks,String(n)),t.value=n}}}let js;function Mw(){return js??=Ww(),js}class xw{constructor(t){this.options=t}options;connection;pageEpoch="";sequence=0;bind(t){return j(()=>{const n=t.target(),a=this.options.connectionId(),r=JSON.stringify([a,n]),s=()=>t.enabled()&&a===this.options.connectionId()&&r===JSON.stringify([this.options.connectionId(),t.target()]);return{enabled:!!(n&&a&&t.enabled()),contextKey:r,automaticKey:t.automaticKey?.(),automaticTerminalKey:t.automaticTerminalKey?.(),...t.readContextRevision?{readContextRevision:t.readContextRevision}:{},request:(i,l,v,u="MANUAL")=>!n||!a||!s()||l.aborted?Promise.reject(Qo()):this.complete(n,a,i,l,s,u,v??t.attention?.())}})}async complete(t,n,a,r,s,i,l){this.connection!==n&&(this.connection=n,this.pageEpoch=crypto.randomUUID(),this.sequence=0);const v={requestId:crypto.randomUUID(),pageEpoch:this.pageEpoch,intentSequence:++this.sequence},u=new AbortController,d=()=>u.abort(),w=()=>{const T=new AbortController,p=setTimeout(()=>T.abort(),2e3);this.post(t.nodeId,"cancel",{target:t.target,workbenchConnectionId:n,request:v},T.signal,!0).catch(()=>{}).finally(()=>clearTimeout(p))};r.addEventListener("abort",d,{once:!0}),u.signal.addEventListener("abort",w,{once:!0});const k=setTimeout(d,12e3);try{const T=Cf.parse(await this.post(t.nodeId,"context",{target:t.target,runner:t.runner,sessionId:t.sessionId,pageEpoch:v.pageEpoch,workbenchConnectionId:n},u.signal));if(u.signal.throwIfAborted(),!s())throw u.abort(),Qo();const p={...v,trigger:i,completionMode:a.text.length===0?"NEXT":"REWRITE",...l?.length?{attention:l}:{},draft:a.text,cursorPosition:a.cursor,draftRevision:v.intentSequence,runner:t.runner,sessionId:t.sessionId,contextVersion:T.contextVersion,historyGeneration:T.historyGeneration},g=Tf.parse(await this.post(t.nodeId,"generate",{target:t.target,workbenchConnectionId:n,request:p},u.signal));if(u.signal.throwIfAborted(),!s()||g.requestId!==v.requestId||g.cursorPosition!==a.cursor||g.draftRevision!==p.draftRevision||g.contextVersion!==T.contextVersion||g.historyGeneration!==T.historyGeneration)throw Qo();return g}finally{clearTimeout(k),r.removeEventListener("abort",d),u.signal.removeEventListener("abort",w)}}post(t,n,a,r,s=!1){return this.options.request(`/api/nodes/${encodeURIComponent(t)}/prompt-completion/${n}`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(a),signal:r,keepalive:s})}}function Qo(){return new DOMException("Prompt completion was cancelled.","AbortError")}function $w(e){const t=x([]),n=x(),a=x([]),r=x({}),s=x({}),i=x();function l(m,A,L=[]){t.value=[...m],a.value=[...new Set(L.filter(y=>typeof y=="string"&&y.length>0))],s.value=Object.fromEntries(Object.entries(A).flatMap(([y,D])=>typeof y=="string"&&Array.isArray(D)?[[y,D.filter(E=>typeof E=="string")]]:[]))}function v(m){const A=new Map(a.value.map((L,y)=>[L,y]));return[...m].sort((L,y)=>(A.get(L.id)??Number.MAX_SAFE_INTEGER)-(A.get(y.id)??Number.MAX_SAFE_INTEGER))}function u(m,A,L){const y=v(m).map(E=>E.id),D=y.indexOf(A);!Number.isInteger(L)||D<0||L<0||L>=y.length||D===L||(y.splice(D,1),y.splice(L,0,A),a.value=y,e.persist())}function d(m,A){r.value={...r.value,[m]:A};const L=A.map(D=>D.id),y=s.value[m]??[];s.value={...s.value,[m]:[...y.filter(D=>L.includes(D)),...L.filter(D=>!y.includes(D))]}}function w(m){return r.value[m]??[]}function k(m){const A=s.value[m]??[],L=new Map(A.map((y,D)=>[y,D]));return[...w(m)].sort((y,D)=>(L.get(y.id)??Number.MAX_SAFE_INTEGER)-(L.get(D.id)??Number.MAX_SAFE_INTEGER))}function T(m){return t.value.includes(m)?(t.value=t.value.filter(A=>A!==m),!1):(t.value=[...t.value,m],!0)}function p(m){(t.value.length!==1||t.value[0]!==m.nodeId)&&(t.value=[m.nodeId]),n.value={nodeId:m.nodeId,workspaceId:m.workspaceId}}function g(m,A,L){i.value={nodeId:A,workspaceId:L};const y=m.dataTransfer;y!==null&&(y.setData("text/plain",L),y.effectAllowed="move")}function R(){i.value=void 0}function b(m,A,L){const y=i.value;R(),!(y===void 0||y.nodeId!==m||y.workspaceId===A)&&I(m,y.workspaceId,A,L)}function C(m,A,L){const y=k(m),D=y.find(_=>_.id===A);if(D===void 0||L!==-1&&L!==1)return;const E=D.groupName?.trim()||null,H=y.filter(_=>(_.groupName?.trim()||null)===E),X=H[H.indexOf(D)+L];X!==void 0&&I(m,A,X.id)}function I(m,A,L,y){const D=k(m).map(_=>_.id),E=D.indexOf(A),H=D.indexOf(L);if(E<0||H<0||E===H)return;const X=y===void 0?H:H+(y==="after"?1:0)-(E<H?1:0);X!==E&&(D.splice(E,1),D.splice(X,0,A),s.value={...s.value,[m]:D},e.persist())}function S(m){a.value=a.value.filter(y=>y!==m);const A={...r.value};delete A[m],r.value=A;const L={...s.value};delete L[m],s.value=L,t.value=t.value.filter(y=>y!==m)}return{expandedNodeIds:t,revealTarget:n,revealWorkspace:p,nodeOrder:a,orderedNodes:v,moveNode:u,moveWorkspace:C,workspacesByNode:r,workspaceOrderByNode:s,draggingWorkspace:i,restore:l,cacheWorkspaces:d,workspacesForNode:w,orderedWorkspaces:k,toggleNode:T,startDrag:g,endDrag:R,reorder:b,removeNode:S}}const _s=8,Fw=5,Uw=15e3,Vw=15e3,qw=45e3,Hw=1e4;function Bw(e){const t=e.management;function n(){return Vd.refreshRecentConversationTurns()}const a=gw({navigation:e.navigation,sessionPageSize:Po,onUnauthenticated:()=>mo(),onWorkspaceRunCompleted:ri,onNotificationClick:Pd,visibleWorkspaceTargets:()=>ed(),visibleHostedTarget:()=>{const ie=Ue.selectedNodeId.value,$e=Ue.selectedConversationId.value;return ie===void 0||$e===void 0?void 0:{nodeId:ie,conversationId:$e}}}),r=a.navigation;let s=()=>{};const{view:i,settingsSection:l,managementSection:v,mobileViewport:u,sidebarCollapsed:d,mobileSidebarOpen:w,mobileWorkspaceSurface:k,start:T,dispose:p,closeMobileSidebar:g,selectSettings:R,selectManagement:b,openMobileWorkspaceSurface:C,closeMobileWorkspaceSurface:I}=r,S=a.admin,{admin:m,loaded:A,loading:L,sessions:y,newPassword:D,passwordValidationError:E,csrfToken:H}=S,X=a.http,{request:_,renewCsrfToken:U}=X,Q=Za({csrfToken:()=>H.value,renewCsrfToken:U}),$=et;mt(No);const V=Dp(),N=rw(),h=N.target,F=qy(h),z=F.sessionId,fe=F.draftOpen,J=F.draftTarget,re=Hy({target:J}),ge=Wh({workspaceTarget:h,onNodeConnected:ie=>Oi(ie,!1),request:_,notice:$,errorMessage:it}),{nodes:ce,serverVersion:oe,workspaces:P,manifest:G,manifestLoading:ue}=ge,ne=Sh({workspaceTarget:h,nodes:ce,workspaces:P,nodeManifest:G}),{selectedWorkspace:M,workspaceHost:ee,nodeReady:le,filesReady:Ee,terminalReady:xe}=ne,Me=j(()=>Ee.value),Se=j(()=>Ee.value),ye=j(()=>Se.value),Fe=j(()=>Ee.value),Ye=j(()=>h.value?.nodeId),nt=j(()=>h.value?.workspaceId),ae=j(()=>!u.value||k.value==="conversation"),me=x(),Pe={},Ue=Dw({request:_,workbenchConnectionId:()=>me.value,heartbeatMs:Vw,requestTimeoutMs:Hw,confirmationTimeoutMs:qw}),Qe=Jm({enabled:()=>!u.value,context:()=>({view:i.value,...Ye.value===void 0?{}:{nodeId:Ye.value},...nt.value===void 0?{}:{workspaceId:nt.value},...z.value===void 0?{}:{sessionId:z.value}})}),Te=Hp({diagnostics:Qe,canConnect:()=>m.value.authenticated&&!m.value.mustChangePassword,onEvent:ie=>{Oe.project(ie)||Tt.events.applyBroadcast(ie)},onNotificationMessage:ie=>Oe.projectServerMessage(ie)||Ue.projectActivityMessage(ie),onResyncRequired:Wv,onNodeConnection:(ie,$e)=>{qd(ie,$e),$e?Bn().then(()=>Xe.refresh(ie,!0)):Xe.nodeInvalidated(ie)},onNodeUpgrade:(ie,$e)=>{const ft=$e===null?null:Um($e);ft!==void 0&&ge.applyUpgrade(ie,ft)},onNodeReplaced:ie=>{Xe.nodeInvalidated(ie),ie===Ye.value&&et(c("generated.workbenchPageController.aNewerInstanceWithTheSameIdentity"),"warning")},onReconnect:()=>{if(i.value==="conversations"&&Ue.selectedConversationId.value!==void 0){Pe.current?.restartHostedConversation().catch(()=>{});return}i.value==="nodes"&&(nt.value!==void 0&&Pe.current?.restartWorkspace(nt.value),z.value!==void 0&&Ea(0,!0),cn.restoreVisibleWatch())},onConnectionRestored:()=>{ge.clearUpgradeProgress(),Bn(),Oe.recover().catch(()=>{})},onDisconnected:()=>{Pe.current?.pause(),Xe.connectionLost()},onReady:(ie,$e)=>{if(me.value=ie,Xe.connectionReady(ie,$e),!$e&&i.value==="conversations"&&Ue.selectedConversationId.value!==void 0){Pe.current?.beginHostedConversation().catch(()=>{});return}i.value==="nodes"&&(!$e&&nt.value!==void 0&&Pe.current?.startWorkspace(nt.value),!$e&&z.value!==void 0&&Ea(0,!0),$e||cn.restoreVisibleWatch())},onWatchEvent:ie=>{Pe.current?.handleEvent(ie)},onDirectMessage:ie=>Xe.handleDirect(ie),onTerminalDirectMessage:ie=>Xe.handleTerminalDirect(ie),onUnauthenticated:()=>mo(),onInvalidMessage:()=>$(c("generated.workbenchPageController.receivedAnUnreadableLiveUpdate"),"error")}),{restore:Ge,connect:_e,close:tt}=Te,Xe=jm({nodes:()=>ce.value,selectedNode:()=>Ye.value,discover:async ie=>(await _("/api/nodes/"+encodeURIComponent(ie)+"/workbench-capabilities")).manifest,sendDirect:ie=>Te.sendDirect(ie),sendTerminalDirect:ie=>Te.sendTerminalDirect(ie)}),{workspace:Re,terminal:de}=Xe,{workspaceDirectAvailable:Ae,workspaceDirectDescription:he,workspaceLocalFileManagerAvailable:q}=Xe,te=Fy({request:_,http:Q,manifest:ie=>ge.restoreNodeManifest(ie),available:ie=>Ae(ie),direct:Re,...e.pwaApplication===void 0?{}:{activeWorker:e.pwaApplication.activeWorker}}),Y=a.paging,{visibleLimits:se,nextCursors:be}=Y,Oe=a.notifications,{start:We,dispose:Ie}=Oe,st=Yh({application:e.pwaApplication,notifications:Oe,message:et}),{state:pe,checking:Ce,start:je,check:ze,apply:vt}=st,Rt=Np({context:()=>J.value,notice:$,request:_,csrfToken:H,renewCsrfToken:U,direct:{generation:ie=>ie===Ye.value&&G.value?.directTransfer?.upload===!0?G.value.nodeGeneration:void 0,upload:ie=>Re.upload(ie)},onUnauthenticated:()=>mo()}),ht=Ky();function Qt(ie){const $e=h.value;if($e===void 0||!ht.current($e).tools.includes("files")){$(c("generated.workbenchPageInteractionService.filePreviewIsCurrentlyUnavailable"),"error");return}ht.current($e).active?.kind==="session"&&Ta(),ht.openHtml($e,ie)&&u.value&&C("inspector")}const Zt=j(()=>{const ie=h.value;if(ie===void 0)return;const $e=ht.current(ie).active;return $e?.kind==="session"?{kind:"session",...ie,sessionId:$e.sessionId}:void 0}),Vn=Rs({draftTarget:J,drafts:re,attachments:Rt,submissions:V,onConversationOverflow:()=>{n()}}),qn=Rs({pane:"aside",draftTarget:Zt,drafts:re,attachments:Rt,submissions:V,onConversationOverflow:()=>Eo()}),Lt=Vn.state,fa=qn.state,pa=Lt.submission,{skillTokens:ga,references:ma,persist:eo}=Lt.draft,to=Lt.skillTokens,Wt=Lt.run,{runs:ha}=Wt,Ne=Pm({groupingSupported:()=>G.value?.sessionGroups?.apiVersion===1,runs:ha,workspaceTarget:h,selectedSessionId:z,setSelectedSessionId:F.setSession,paging:Y,pageSize:Po,tabId:Sn,request:_,notice:$,errorMessage:it}),Be=Ne.projection,Ze=Be.sessions,ot=Lt.conversation,{turns:yt,contextUsage:Ut,currentDetailRequest:Mt}=ot,Pt=x(),zt=new Map,{preview:ya,previewOpen:lt,clearAll:pt,openPreview:wa}=Rt,ka=Tm({workspaceTarget:h,request:_,notice:$,errorMessage:it}),{profiles:Nc,loading:Dc}=ka,Lr=Lt.queueProjection,Wr=Lr.queue,Pc=ot.projection,Oc=Lt.scroll,{element:Lc,following:Wc}=Oc,Mr=lw(Sn),kn=Mr.cache,Kt=$w({persist:ko}),{expandedNodeIds:no,nodeOrder:xr,workspacesByNode:$r,workspaceOrderByNode:Fr,draggingWorkspace:Mc}=Kt,xc=j(()=>Kt.orderedNodes(ce.value));function $c(ie,$e){Kt.moveNode(ce.value,ie,$e)}const en=Xm({maxTabs:_s,tabId:Sn,workspaceLabel:Jn,nodeLabel:$a,onEvict:ie=>{go(ie.nodeId,ie.workspaceId),ht.clearHtmlWorkspace(ie),zt.get(ie.id)?.release()},onChange:ko}),bn=en.tabs,ba=Zm({sidebarCollapsed:d,expandedNodeIds:no,nodeOrder:xr,workspaceOrderByNode:Fr,workspaceTabs:bn,maxWorkspaceTabs:_s,restoreTree:Kt.restore,restoreTabs:en.restore}),Ur=$h({navigation:r,management:t,admin:m,defaultManagement:e.systemManagementSection,layout:ba,transition:(ie,$e)=>ii.transition(ie,$e),recoverNotifications:()=>Oe.recover()}),{navigationItems:Fc,settingsItems:Uc,managementItems:Vc,selectNavigation:qc,hostedConversationMobileFilesOpen:Vr,hostedConversationMobileHistoryOpen:qr,closeHostedConversationMobileHistory:Hr,closeHostedConversationMobileFiles:Hc}=Ur,ao=Rp({workspaceTarget:h,request:_}),Bc=ao,oo=Sw({request:_}),ro=oo,Gc=Mw(),zc=new xw({request:_,connectionId:()=>me.value}),Hn=x(!1),Vt=xy({page:()=>{},externalTarget:()=>h.value,target:()=>Ee.value?h.value:void 0,fileWriteEnabled:()=>Fe.value,prewarmEnabled:()=>ye.value,onPopupBlocked:()=>$(c("generated.workspaceInspector.theBrowserBlockedTheFilePreviewWindow"),"error"),resolveRepositoryPath:(ie,$e)=>kt.git.resolveRepositoryPath(ie,$e),reveal:(ie,$e)=>kt.revealFileTree(ie,$e),comparison:ie=>kt.git.comparison(ie),onOpenFailure:(ie,$e)=>$(Cr(ie,$e),"error",ie),onDownloadFailure:(ie,$e)=>kt.reportFailure(ie,$e),onRevealFailure:ie=>$(it(ie),"error",ie),access:ie=>te.forWorkspace(ie),preview:{onWritten:ie=>{h.value?.nodeId===ie.nodeId&&h.value.workspaceId===ie.workspaceId&&kt.refreshAfterWrite()}},navigation:{http:Q,onFailure:ie=>kt.reportFailure(ie,c("fileEditor.definitions")),onFileTarget:(ie,$e)=>Vt.openNavigationTarget(ie,$e)},lifecycle:{ready:()=>Ee.value,workspaceKind:()=>M.value?.kind,isReloadingForUpdate:()=>e.pwaApplication?.isReloadingForUpdate()===!0,bootstrap:{authenticated:()=>m.value.authenticated,hasNodes:()=>ce.value.length>0,manifestLoading:()=>ue.value,selectWorkspace:tn,captureRoute:tr}}}),kt=Dy({target:h,http:Q,workspacePath:()=>M.value?.path,workspaceKind:()=>M.value?.kind,workbench:Vt,updateBranch:(ie,$e)=>yi(h.value?.nodeId??"",ie,$e),queueUploads:ie=>Td(ie),notice:$,errorMessage:it,cache:()=>kn,ready:()=>Ee.value,visible:()=>Hn.value,activeTool:()=>{const ie=h.value,$e=ie===void 0?void 0:ht.current(ie).active;return $e?.kind==="tool"?$e.id:void 0},searchReady:()=>Me.value,historySupported:()=>G.value?.git?.supportsHistory===!0,isGit:()=>M.value?.kind==="GIT_WORKSPACE",workspace:()=>M.value,updateWorkspace:Ku}),{files:Br,git:io,search:Kc}=kt,jc=kt.openGitChange,_c=kt.openHistoryDiff,Yc=io.adjacentDiff,Qc=kt.reportFailure,Jc=kt.loadDiff,Xc=Vt.downloadPath,Gr=Vt.openExternal,zr=Vt.openHtmlExternal;mt(()=>{kt.dispose(),Vt.dispose()});const Kr={view:i,cache:kn,capabilities:ge,profiles:ka,skills:ao,prompts:oo,discovery:Ne,mobileViewport:u,selectedWorkspace:M,request:_,notice:$,errorMessage:it,ensureDraftSupported:ie=>kv(ie),connectionId:()=>me.value,workspaceRevision:N.currentSelectionRevision,completion:{client:zc,enabled:Gc.enabled,ready:le,host:ee,attention:()=>Pt.value?.predictionAttention?.()??[]},files:{attachments:ie=>te.forWorkspace(ie).attachments,openChange:ie=>Vt.openTab(ie),openFile:(...ie)=>Qu(...ie)},identity:{replace:Ov,transfer:Pv},events:{invalidateWorkspace:kt.invalidateWorkspace,onNodeConnected:Oi},watchConnection:{waitReady:Te.waitForReady,connected:()=>Te.connected.value}},Tt=Vn.connect(Kr,{kind:"main",visible:ae,refresh:()=>Ea(),open:On,markRead:so,navigation:()=>nn,selection:F,saveCurrent:Pn,closeMobile:I,createDraft:ie=>wv(ie),beginWatch:ie=>ii.requestSessionWatch(ie),replaceSession:Ni}),Zc=fa.conversation.loadingInitial,jr=j(()=>Hn.value&&Zt.value!==void 0&&i.value==="nodes"&&(!u.value||k.value==="inspector")&&Oa(ce.value.find(ie=>ie.id===Zt.value?.nodeId)?.nodeAppVersion,G.value?.sessionAside)),_r=Qh({workspaceTarget:h,selectedWorkspace:M,workspaceHost:j(()=>ee.value),view:i,mainSurfaceVisible:ae,draftSessionOpen:fe,selectedSessionId:z,mainLoading:Lt.conversation.loadingInitial,asideVisible:jr,asideTarget:Zt,asideLoading:Zc,markSessionRead:Oe.markSessionRead});function ed(){return _r.targets()}function so(ie,$e,ft){return _r.markRead(ie,$e,ft)}const cn=qn.connect(Kr,{kind:"aside",target:Zt,visible:jr,refresh:Eo,open:Rv,markRead:so,replaceSession:(ie,$e)=>nn.replaceAsideSession(ie,$e)}),lo=Tt.images,dn=wt(lo);for(const ie of[Tt.images,cn.images])He(ie.previewOpen,$e=>{!$e||dn.value===ie||(dn.value.previewOpen.value=!1,dn.value=ie)},{flush:"sync"});const td=j({get:()=>dn.value.preview.value,set:ie=>dn.value.preview.value=ie}),nd=j({get:()=>dn.value.previewOpen.value,set:ie=>dn.value.previewOpen.value=ie}),{retain:ad}=lo,co=Tt.configuration,{selectedSession:od}=co,{runner:uo,modelId:vo,effort:Yr,access:Qr,apply:rd}=co,id=Tt.runner,fo=Tt.references,sd=Tt.presentation,{canUseComposer:ld,canDeleteSession:Jr,sessionActivityClockNow:cd,documentTitle:dd,visibleWorkspaceSessions:ud,canLoadMoreWorkspaceSessions:vd,onlineNodeCount:fd}=Eh({context:ne,workspaceTarget:h,sessions:Ze,nodes:ce,visibleLimits:se,nextCursors:be,pageSize:Po,tabId:Sn,workspaceLabel:Jn,pane:sd}),Xr=!0,pd=!0,gd=!0,{ensureFresh:md}=ao;He(Bc.skills,to.reconcile),He(ga,ie=>{ie.length>0&&md()},{immediate:!0});const{refreshNodes:Bn,refreshServerCapabilities:hd,refreshNodeManifest:Zr,invalidateNodeManifest:yd,retainNodeManifests:ei}=ge;He([bn,Ye],([ie,$e])=>ei(new Set([...ie.map(ft=>ft.nodeId),...$e===void 0?[]:[$e]])),{flush:"sync"});const po=j(()=>Ye.value===void 0||nt.value===void 0?void 0:Sn(Ye.value,nt.value)),wd=Mh({host:ee,manifest:G,loading:ue}),ti=Fm({canDeleteSession:Jr,beginSubmission:pa.begin,workspaceTarget:h,request:_,renewCsrfToken:U,sessionPathId:Zo,nodeLabel:$a,sessionTitle:Ga,notice:$,errorMessage:it}),kd=Bm({workspaceTarget:h,csrfToken:H,request:_,renewCsrfToken:U,direct:{generation:ie=>ie===Ye.value&&G.value?.directTransfer?.upload===!0?G.value.nodeGeneration:void 0,upload:ie=>Re.upload(ie)},onFilesChanged:()=>kt.invalidate("files"),onTaskChanged:Oe.recordUpload}),{tasks:bd,recoveryInput:Id,restore:Sd,statusLabel:Cd,queue:Td,cancel:Ed,retry:Rd,recover:Ad,remove:Nd,dispose:Dd}=kd,ni=Xh({workspaceTarget:h,selectedSessionId:z,sessions:Ze,selectView:ie=>r.selectView(ie,"preserve-layout"),applyWebUpdate:vt,closeMobileSidebar:g,selectWorkspace:tn,syncWorkspaceSessions:(...ie)=>Ne.synchronize(...ie),openHostedConversationTarget:(...ie)=>Bd(...ie),discovery:Ne,selection:()=>nn,openSession:On,notice:$});function Pd(ie){return ni.openWorkbenchNotification(ie)}const{openRecentRun:Od,openSessionGroupTarget:Ld,openNavigatedSession:Wd}=ni;async function Md(ie){await nn.selectSession(ie)}const{workspaceViewCache:xd,discardWorkspaceViewCache:go,discardNodeViewCaches:ai,saveCurrentWorkspaceView:$d,restoreWorkspaceView:Fd,restoreWorkspaceDraft:Ud}=Mr.connect({paging:Y,sessions:Ze,captureDetail:Lt.captureDetail,queue:Wr,runner:uo,modelId:vo,effort:Yr,access:Qr,workspaceTarget:h,selectedSessionId:z,fileWorkbench:Vt,files:{snapshot:()=>Br.tree.snapshot(),restore:kt.restoreFiles},git:{snapshot:()=>io.snapshot(),restore:kt.restoreGit},search:{snapshot:kt.searchSnapshot,restore:kt.restoreSearch},restoreDraftConfiguration:rd,persistDraft:eo,flushConversation:Pc.flushPendingTextDeltas,maximumDetails:Fw,otherVisibleSessionId:()=>i.value==="nodes"&&(!u.value||k.value==="inspector")?Zt.value?.sessionId:void 0});function Pn(){Ta(),$d()}const{paging:Vd}=Tt.conversationWindow;let oi=ie=>!1;function ri(ie,$e){if(i.value!=="nodes"||Ye.value!==ie||nt.value!==$e)return;const ft=ht.current({nodeId:ie,workspaceId:$e}).active;!Hn.value||ft?.kind!=="tool"||(ft.id==="changes"||ft.id==="files")&&kt.refreshVisible(ft.id)}const{updateNodeConnection:qd}=Tt.events,ii=ay({coordinator:()=>Pe.current,currentView:()=>i.value,workspaceTarget:()=>h.value,selectedSessionId:()=>z.value,selectedHostedConversationId:()=>Ue.selectedConversationId.value}),Ia=km({workspace:Ue,markRead:(ie,$e)=>Oe.markConversationRead(ie,$e),coordinator:()=>Pe.current}),Hd=Ia.select,Bd=Ia.openTarget,Gd=Ia.clear;async function zd(){const ie=Co;if(!(ie===void 0||i.value!=="conversations"))try{await Ia.restoreTarget(ie,Sa)}finally{Si.value=!1}}const si=bm({presentation:{translate:c,currentLocale:ml,setLocale:ie=>Xa().setLocale(ie)},admin:m,loaded:A,sessions:y,password:D,passwordError:E,csrfToken:H,loading:L,request:_,renewCsrfToken:U,onAuthenticated:Eu,invalidateRequests:()=>{No(),X.invalidateAuthentication()},onSignedOut:Ru,notice:$,errorMessage:it}),{authenticationUnknown:Kd,restoring:jd,returnToLogin:mo,refresh:li,refreshSessions:_d}=si,Yd=Gf({request:_,error:(ie,$e)=>et(ie,"error",$e),errorMessage:it}),{nodeDetails:Qd,detailsOpen:Jd,loading:Xd,details:Zd,usageOpen:eu,openNode:tu,disabledReason:nu,show:au,clearNode:ou}=Yd,Gn=x(),ho=j(()=>ce.value.find(ie=>ie.id===Gn.value)),ru=j(()=>ho.value?.connected===!0&&ho.value.disabled!==!0),ci=Am({...e.submitWorkspaceRegistration===void 0?{}:{submit:(ie,$e)=>e.submitWorkspaceRegistration(_,ie,$e)},targetNodeId:Gn,request:_,onRegistered:async(ie,$e)=>{Ci(),await tn({nodeId:ie,workspaceId:$e})},notice:$,error:(ie,$e)=>et(ie,"error",$e),errorMessage:it}),{path:iu,preserveGitConfig:su,pendingDirectoryName:lu,directory:di,loadingDirectory:ui,openTools:vi,selectedPathValid:cu,reset:fi,load:yo,select:du,selectPendingDirectory:uu,discardPendingDirectory:pi,register:vu}=ci,{currentGroup:wo,selectGroup:gi,refreshing:fu,searchQuery:pu,searching:gu,preserveManagedActive:mu,merge:hu,applySnapshot:yu,loadMore:oN,search:wu,synchronize:mi,refresh:hi}=Ne,{visible:ku,canLoadMore:bu,loadingMore:Iu,loadMoreError:Su,loadMore:Cu}=Ne.createVisibleList({unfiltered:ud,canLoadMore:vd});let In=0;async function Tu(ie){await Bn(),ie===In&&(_e(),!(!await Te.waitForReady()||ie!==In)&&(await uv(),ie===In&&await zd()))}async function Eu(){const ie=++In;if(je(),hd(),await Promise.all([We(),Tu(ie)]),ie!==In)return;const $e=await Oe.openPendingSystemNotification();ie===In&&!$e&&i.value==="nodes"&&Oe.markVisibleRead()}function Ru(){ht.clearHtml(),No(),In+=1,Oe.systemNotifications.invalidatePush(),Ie(),st.stop(),Pe.current?.dispose(),Ue.clearSelectedConversation(),Xe.reset(),Pi(),ge.resetResources(),un.clear(),ei(new Set)}function ko(){ba.persist()}function Au(){ba.restore()}const{loading:Nu,updateWorkspaceBranch:yi,updateWorkspaceMetadata:Du,rememberWorkspace:Pu,closeWorkspaceTab:bo,closeUnpinnedWorkspaceTabs:Ou,activateWorkspaceTab:wi,openWorkspaceTab:Lu,orderedWorkspaces:Wu,toggleNodeExpansion:Mu,refreshNodeWorkspaces:xu,refreshWorkspaceTree:$u,openWorkspaceFromTree:Fu,startWorkspaceDrag:Uu,reorderWorkspace:Vu,moveWorkspaceToGroup:qu,moveWorkspaceGroup:Hu,renameWorkspace:Bu,cleanupWorkspaceSessions:Gu,removeWorkspace:zu}=cw({nodes:ce,workspaces:P,replaceWorkspaces:ge.replaceWorkspaces,sessions:Ze,removeWorkspaceSessions:Be.removeWorkspace,workspaceTarget:h,selectedSessionId:z,activeTabId:po,showWorkbench:()=>{r.selectView("nodes","preserve-layout")},notice:$,workspacesByNode:$r,tabs:en,tree:Kt,releaseTerminalDock:ie=>{zt.get(ie)?.release()},deleteTerminalDock:ie=>zt.delete(ie),request:_,saveCurrent:Pn,discardCache:(ie,$e)=>{go(ie,$e),ht.clearHtmlWorkspace({nodeId:ie,workspaceId:$e})},activateWorkspace:(ie,$e)=>tn(ie,$e),workspaceTabSession:Oe.workspaceTabSession,openWorkspaceTabSession:ie=>Wd(ie,!0),clearWorkspace:()=>un.clear(),currentSelectionRevision:()=>un.currentSelectionRevision(),cleanupSessionsEnabled:()=>Xr,refreshWorkspaceSessions:mi,refreshNodes:Bn,closeMobileSidebar:g,closeMobileWorkspaceSurface:I,errorMessage:it,tabLabel:Jn});function Ku(ie,$e){const ft=(ie===Ye.value?P.value:$r.value[ie]??[]).find(Ot=>Ot.id===$e.id);Du(ie,$e),ie===Ye.value&&$e.id===nt.value&&ft?.kind!==$e.kind&&Pe.current?.restartWorkspace($e.id)}const{closeQuickOpenFile:ju,quickOpenFileVisible:_u,workspaceShortcuts:Yu,openAgentWorkspaceFile:Qu,openQuickWorkspaceFile:Ju,runnerBrandIcon:Xu,sessionActivityTitle:Zu,sessionRelativeActivity:ev,workspaceTabNodeLabel:tv}=kw({selectedSessionId:z,view:i,nodes:ce,workspaceTabs:bn,activeWorkspaceTabId:po,activateWorkspaceTab:wi,closeWorkspaceTab:bo,closeUnpinnedWorkspaceTabs:Ou,workspaceTarget:h,selectedWorkspace:M,nodeReady:le,openNewSessionComposer:()=>s(),filesReady:Ee,contentSearchReady:Me,terminalReady:xe,workspaceFileWorkbench:Pt,fileWorkbench:Vt,openWorkspaceFileExternal:Gr,showAsideTool:ie=>{const $e=h.value;if($e===void 0)return;const ft=ht.current($e).active,Ot=ie==="changes"&&Hn.value&&ft?.kind==="tool"&&ft.id==="changes";Ei({...$e,id:ie}),Ot&&kt.git.loadChanges(!0),ut(()=>{ie==="search"&&kt.focusSearch()})},openAttachmentImage:lo.openFileAttachment,openHtml:Qt,openHtmlExternal:zr,toggleTerminal:()=>Ri(),sessionActivityClockNow:cd,notice:$,formatSessionTime:Gt});async function nv(ie,$e){const ft=bn.value.find(Ot=>Ot.nodeId===ie&&Ot.workspaceId===$e);return ft!==void 0?wi(ft):tn({nodeId:ie,workspaceId:$e})}const av=Tt.composer,{loadProfiles:ov,applyDefaults:rv,normalize:iv}=av,ki=x(),Io=Yy((ie,$e)=>{nn.removeMissingAside(ie,$e)}),zn=j(()=>{const ie=h.value;if(ie===void 0)return;const $e=ht.current(ie),ft=[];return(!u.value||k.value==="conversation")&&!fe.value&&z.value!==void 0&&ft.push(z.value),(!u.value||k.value==="inspector")&&$e.active?.kind==="session"&&ft.push($e.active.sessionId),jy({enabled:Oa(ce.value.find(Ot=>Ot.id===ie.nodeId)?.nodeAppVersion,G.value?.sessionAside),asideSessionIds:$e.sessions,visibleTreeAnchors:ft,treeAnchor:ki.value})}),sv=ty({workspaceTarget:h,navigation:{query:()=>zn.value,accept:Io.accept},files:kt,updateBranch:yi,sessions:{current:Ze,selectedId:z,applySnapshot:yu,reconcile:Tt.watch.reconcileWorkspaceSnapshot}}),So=ey({sessionGroup:()=>wo.value,sessionNavigation:()=>zn.value,workspaceTarget:h,workspaces:P,heartbeatMs:Uw,enabled:()=>!0,workbenchConnectionId:()=>me.value,request:_,onSnapshot:sv.accept});He([h,wo],([ie,$e],[ft,Ot])=>{ie!==void 0&&ie.nodeId===ft?.nodeId&&ie.workspaceId===ft?.workspaceId&&$e!==Ot&&Pe.current?.startWorkspace(ie.workspaceId)});function tn(ie,$e=!0){return un.select(ie,$e)}const un=N.connect({selectedSessionId:z,setSelectedSessionId:F.setSession,workspaces:P,replaceWorkspaces:ge.replaceWorkspaces,sessions:Ze,replaceSessions:Ne.replaceSessions,draftOpen:fe,setDraftOpen:F.setDraftOpen,profilesLoading:Dc,isCacheActive:kn.isActive,hasNode:ie=>ce.value.some($e=>$e.id===ie),isHostAvailable:ie=>ce.value.some($e=>$e.id===ie&&$e.connected&&!$e.disabled),cachedWorkspaces:Kt.workspacesForNode,cacheWorkspaces:Kt.cacheWorkspaces,rememberTarget:ie=>en.rememberTarget(ie,ce.value.find($e=>$e.id===ie.nodeId)),invalidateWorkspace:ie=>{const $e=bn.value.find(ft=>ft.nodeId===ie.nodeId&&ft.workspaceId===ie.workspaceId);h.value?.nodeId===ie.nodeId&&h.value.workspaceId===ie.workspaceId&&(kn.deactivate(),Pe.current?.stopWorkspace(),Pe.current?.stopSession()),go(ie.nodeId,ie.workspaceId),ht.clearHtmlWorkspace(ie),$e!==void 0?bo($e,!0):h.value?.nodeId===ie.nodeId&&h.value.workspaceId===ie.workspaceId&&un.clear()},deactivateCache:kn.deactivate,clearContent:Lt.clearSelection,showWorkbench:()=>{r.selectView("nodes","preserve-layout")},closeSidebar:g,restoreProfiles:ka.restore,selectManifestNode:ge.selectNode,refreshManifest:Zr,refreshTransport:ie=>{Xe.refresh(ie,!0)},request:_,notice:$,errorMessage:it,stopWatch:()=>{Pe.current?.stopWorkspace(),Pe.current?.stopSession()},startWatch:ie=>Pe.current?.startWorkspace(ie)??Promise.resolve(),saveCurrent:Pn,activateCache:kn.activate,restoreWorkspaceView:Fd,refreshVisibleTool:(ie,$e)=>{ut(()=>{ri(ie,$e)})},initializePaging:Y.initialize,tabId:Sn,rememberWorkspace:Pu,viewCache:xd,resetQueue:Lr.reset,openSession:On,openDraft:()=>Ca(),restoreDraft:ie=>{Ud(ie)},hasProfiles:ka.has,loadProfiles:ov,takeRestoredSelection:en.takeRestoredSelection,restoreSession:(ie,$e)=>bi.restoreSession(ie,$e)});oi=ie=>{const $e=h.value;return $e?.nodeId!==ie?!1:(tn($e),!0)};const{standaloneFileMode:lv,standaloneFileLoading:cv,standaloneFileError:dv}=Vt.standalone,nn=F.connect({secondaryPane:{target:Zt,reloadChecked:()=>cn.secondary.reloadChecked()},pane:Tt.opening,aside:ht,canOpenAside:()=>Oa(ce.value.find(ie=>ie.id===Ye.value)?.nodeAppVersion,G.value?.sessionAside),saveAside:()=>Ta(),sessions:Ze,closeMobileSurface:I,workspaceTabId:Sn,ensureSessionVisible:Y.ensureVisible,markSessionRead:so,saveCurrent:Pn,selectWorkspace:tn}),bi=xm({nodes:ce,sessions:Ze,workspaceTarget:h,selectedSessionId:z,setSelectedSessionId:F.setSession,selectedHostedNodeId:Ue.selectedNodeId,selectedHostedConversationId:Ue.selectedConversationId,view:i,managementSection:v,activateWorkspace:ie=>tn(ie,!1),synchronizeSessions:async ie=>(await mi(ie,!0))?.sessions,openSession:On,lookupSession:async(ie,$e)=>(await _(`/api/agent-sessions/${Zo($e)}?nodeId=${encodeURIComponent(ie)}`)).session,openDraft:()=>Ca(),notice:ie=>$(it(ie),"error",ie),currentSelectionRevision:()=>Mt()+un.currentSelectionRevision(),rememberSession:en.rememberSession}),{restore:uv,sync:Sa,hostedConversationRoute:Co}=bi,Ii=$m({isOpen:()=>u.value&&(w.value||qr.value||Vr.value||k.value!=="conversation"),close:()=>{g(),Hr(),Hc(),I()},syncRoute:Sa}),Si=x(Co!==void 0),{renameSession:vv,setSessionPinned:fv,movePinnedSession:pv,movePinnedSessionTo:gv,deleteSession:mv}=dw({actions:ti,replaceNode:ge.replaceNode,removeNode:ge.removeNode,sessions:Ze,removeSessionId:Be.removeId,clearSessions:()=>Be.replaceAll([]),clearActiveSelection:Lt.clearSelection,clearRuns:Lt.clearRuns,workspaceTarget:h,selectedSessionId:z,setSelectedSessionId:F.setSession,workspaces:P,replaceWorkspaces:ge.replaceWorkspaces,clearWorkspace:()=>un.clear(),caches:kn,tabs:en,tree:Kt,replaceSession:Ni,refreshSessions:hi,discardNodeCaches:ie=>{ai(ie),ht.clearHtmlNode(ie)},openDraft:()=>Ca(),replaceUrl:Sa,clearNodeDetails:ou});function hv(){r.selectView("management","preserve-layout"),b(e.nodeManagementSection)}function Ci(){Gn.value=void 0,fi()}async function yv(ie){g(),r.selectView("nodes","preserve-layout"),Gn.value=ie,fi(!0),await yo()}const{createDraftSession:wv,ensureDraftRunnerSupported:kv,openNewSessionComposer:Ca}=bw({workspaceTarget:h,selectedSessionId:z,setSelectedSessionId:F.setSession,selectedWorkspace:M,sessions:Ze,prependSession:Be.prepend,prepareDraft:Tt.prepareDraft,focusDraft:Tt.focusDraft,draftSessionOpen:fe,setDraftOpen:F.setDraftOpen,newSessionRunner:uo,newSessionModel:vo,newSessionEffort:Yr,newSessionAccess:Qr,runnerProfiles:Nc,canUseComposer:ld,closeMobileWorkspaceSurface:I,saveCurrent:Pn,stopSelectedSessionWatch:Ai,applyRunnerDefaults:rv});function Ti(){gi("MAIN"),Ca()}s=Ti;const To=Im({request:_,...e.submitNodeRegistration===void 0?{}:{submit:e.submitNodeRegistration},notice:$,errorMessage:it}),bv=To.token,Iv=To.pending,Sv=To.create;He([i,l,()=>m.value.authenticated,()=>m.value.mustChangePassword],([ie,$e,ft,Ot])=>{ie==="settings"&&$e==="account"&&ft&&!Ot&&_d()},{immediate:!0});async function On(ie,$e={}){return nn.openSession(ie,$e)}function Cv(){z.value!==void 0&&On(z.value)}Tt.history;const Tv=Tt.watch;Pe.current=oy({workspace:So,session:Tv,secondary:cn.watch,hosted:Ue}),Vn.connectWatchCoordinator(Pe.current),qn.connectWatchCoordinator(Pe.current);function Ta(){cn.secondary.save()}const Ev=cn.secondary;function Eo(){Ev.reload()}function Rv(ie){return nn.openAsideTarget(ie)}ht.observeCapabilities({workspace:h,manifest:G,selectedWorkspace:M});const{select:Ei,openBrowser:Av,closeBrowser:Nv,toggleTerminal:Ri}=ht.createInteraction({workspace:h,mobile:u,mobileSurface:k,saveSession:Ta,openMobile:C});He(zn,()=>{const ie=h.value;ie!==void 0&&i.value==="nodes"&&Te.connected.value&&me.value!==void 0&&Pe.current?.startWorkspace(ie.workspaceId)},{deep:!0});function Ai(){Pe.current?.stopSession()}function Dv(){Ao.handleVisibility()}const Ro=nw({workspaceTarget:h,submissions:V,projection:{sessions:Ze,selectedSessionId:z,setSelectedSessionId:F.setSession,removeSessionExact:Be.removeExact,currentSelectionRevision:Mt,preserveManagedActive:mu,mergeSessions:hu}});function Pv(ie,$e,ft,Ot){Ro.transfer(ie,$e,ft,Ot)}function Ov(ie,$e,ft,Ot){Ro.replace(ie,$e,ft,Ot)}function Ni(ie,$e){Ro.replaceCurrent(ie,$e)}function Lv(){xv.scrollConversationToLatest()}Tt.realtime;const Di=Zh({workspaceTarget:h,selectedSessionId:z,refresh:(ie,$e)=>On(ie,{preserveMobileWorkspaceSurface:!0,deferInitialScroll:$e})});function Ea(ie=0,$e=!1){Di.schedule(ie,$e)}function Pi(){Di.clear(),Xe.connectionLost(),tt()}const Ao=wm({view:i,workspaceTarget:h,selectedWorkspace:M,selectedSessionId:z,hostedNodeId:Ue.selectedNodeId,coordinator:()=>Pe.current,invalidateManifest:yd,refreshManifest:Zr,reactivate:ie=>oi(ie),discardNodeCache:ai,resetSession:Lt.resetRealtime,refreshSession:Ea,direct:Xe,live:Te});function Oi(ie,$e=!0){Ao.connected(ie,$e)}function Wv(ie){Ao.resync(ie)}const Mv=Tt.completion,xv=Tt.interactions;return He(vi,ie=>{if(!ie.includes("register")){pi();return}di.value===void 0&&!ui.value&&yo()}),Iw({persistenceSources:[d,bn,no,xr,Fr],cacheSources:[ha,yt,Wr,Ut,ga,ma],routeSources:[i,v,Ye,nt,z,()=>od.value?.externalSessionId,Ue.selectedNodeId,Ue.selectedConversationId],documentTitle:dd,newSessionRunner:uo,newSessionModel:vo,workspaceTarget:h,selectedSessionId:z,conversationTurns:yt,conversationScroll:Lc,followConversation:Wc,persistWorkbenchState:ko,syncWorkbenchRoute:Sa,normalizeNewSessionOptions:iv,clearRunnerCommand:id.reset,clearComposerModelEffort:co.clearModelEffortSelection,closeFileReferences:()=>{fo.cancelSearch(),fo.close()},saveCurrentWorkspaceView:Pn,scrollConversationToLatest:Lv,stopSelectedSessionWatch:Ai,restoreWorkbenchState:Au,restoreWorkbenchEventCursors:Ge,restoreWorkspaceUploads:Sd,startNavigation:()=>{T(),Ii.start()},handleSessionWatchVisibility:Dv,workspaceShortcuts:Yu,refreshAdmin:li,recoverAuthentication:()=>{Kd.value&&!jd.value&&li()},cancelFileReferenceSearch:fo.cancelSearch,disposeNavigation:()=>{Ii.dispose(),p()},disposeWorkspaceUploads:Dd,disposeWorkbenchNotifications:Ie,disposeWebVersionUpdateCheck:st.stop,stopWorkspaceWatch:()=>Pe.current?.stopWorkspace(),closeWorkbenchLive:Pi,disposeDirectTransport:Xe.dispose,clearNewSessionAttachments:pt,releaseRunImagePreviews:()=>ad([])}),{layout:Ur.layoutView,tree:Et({draggingWorkspace:Mc,expandedNodeIds:no,workspaceTreeRevealTarget:Kt.revealTarget,moveTreeWorkspace:Kt.moveWorkspace,endWorkspaceDrag:Kt.endDrag,orderedNodes:xc,moveNode:$c,refreshNodeWorkspaces:xu,refreshWorkspaceTree:$u,orderedWorkspaces:Wu,toggleNodeExpansion:Mu,addWorkspaceForNode:yv,openWorkspaceFromTree:Fu,reorderWorkspace:Vu,moveWorkspaceToGroup:qu,moveWorkspaceGroup:Hu,renameWorkspace:Bu,removeWorkspace:zu,startWorkspaceDrag:Uu}),terminal:Et({terminalDocks:zt,terminalDirectClient:de,terminalReady:xe}),hosted:Et({clearHostedConversation:Gd,closeHostedConversationMobileHistory:Hr,hostedConversationMobileHistoryOpen:qr,hostedConversationMobileFilesOpen:Vr,hostedConversationRoute:Co,hostedConversationWorkspace:Ue,restoringHostedConversationRoute:Si,selectHostedConversation:Hd}),sessionList:Et({mutationLoading:j(()=>ti.loading.value||Nu.value),sessions:Ze,visibleWorkspaceSessions:ku,canLoadMoreWorkspaceSessions:bu,loadMoreWorkspaceSessionsError:Su,loadMoreWorkspaceSessions:Cu,loadingMoreWorkspaceSessions:Iu,refreshWorkspaceSessions:hi,refreshingWorkspaceSessions:fu,searchingWorkspaceSessions:gu,searchWorkspaceSessions:wu,workspaceSessionSearchEnabled:gd,workspaceSessionSearchQuery:pu,workspaceSessionGroup:wo,selectWorkspaceSessionGroup:gi,deleteSession:mv,canDeleteSession:Jr,cleanupWorkspaceSessions:Gu,cleanupSessionsEnabled:Xr,renameSession:vv,movePinnedSession:pv,movePinnedSessionTo:gv,setSessionPinned:fv,setSessionTreeAnchor:ie=>{ki.value=ie},sessionNavigationSnapshot:j(()=>Io.current(h.value,zn.value)),sessionActivity:nr,sessionActivityDateTime:Bf,sessionActivityLabel:Ap,sessionActivityTitle:Zu,sessionRelativeActivity:ev,sessionTitle:Ga,reloadSelectedSession:Cv}),selection:Et({activateWorkspaceTab:Lu,activeWorkspaceTabId:po,closeWorkspaceTab:bo,workspaceTarget:h,workspaceTabs:bn,workspaceTabLabel:Jn,workspaceTabNodeLabel:tv,moveWorkspaceTab:en.move,pinWorkspaceTab:en.setPinned,workspaceSelectionLoading:un.loading,retryWorkspaceSelection:()=>{h.value!==void 0&&tn(h.value)},selectedSessionId:z,openSessionFromList:Md,openSessionGroupTarget:Ld,openNewSessionComposer:Ti,draftSessionOpen:fe}),aside:Et({asidePaneController:cn.view,asideSessionMetadata:j(()=>{const ie=h.value;return zn.value===void 0||ie===void 0?[]:Io.knownSessions(ie,ht.current(ie).sessions)}),asideState:j(()=>{const ie=h.value;return ie===void 0?void 0:ht.current(ie)}),asideSupported:j(()=>Oa(ce.value.find(ie=>ie.id===Ye.value)?.nodeAppVersion,G.value?.sessionAside)),asideViewMode:zy,asideWidth:ba.asideWidth,closeAsideBrowser:Nv,closeAsideSession:nn.closeAsideSession,openAsideSession:nn.openAsideSession,openHtmlAside:Qt,reloadAsideSession:Eo,selectAsideBrowser:Av,selectAsideTool:Ei,setAsideSurfaceVisible:ie=>{Hn.value=ie},toggleAsideTerminal:Ri}),files:Et({fileWorkbench:Vt,workspaceFileWorkbench:Pt,mountSurface:kt.mountSurface,unmountSurface:kt.unmountSurface,workspaceFiles:Br,workspaceGit:io,workspaceSearch:Kc,setWorkspaceFilePage:Vt.setPage,setWorkspaceFilesPanel:kt.setFilesPanel,setWorkspaceSearchPanel:kt.setSearchPanel,downloadWorkspaceFile:Xc,openWorkspaceFileExternal:Gr,openWorkspaceGitChange:jc,openWorkspaceHistoryDiff:_c,loadWorkspaceDiff:Jc,adjacentWorkspaceDiff:Yc,reportWorkspaceFileFailure:Qc,fileWriteReady:Fe,contentSearchReady:Me,filesReady:Ee,standaloneFileMode:lv,standaloneFileLoading:cv,standaloneFileError:dv}),mainPaneController:Tt.view,notifications:Oe,identity:si.view,application:Et({workPromptCompletion:Mv,webVersion:e.webVersion,pwaState:pe,checkingForUpdates:Ce,checkForUpdates:ze,applyWebUpdate:vt,retryWorkspaceWatch:()=>So.retryFailed(),liveConnected:Te.connected,codeNavigationReady:Se,managementItems:Vc,managementSection:v,navigationItems:Fc,notice:$,openHtmlExternal:zr,openWorkbenchNotification:Oe.openNotification,openRecentRun:Od,runnerBrandIcon:Xu,selectManagementSection:b,selectNavigation:qc,selectSettingsSection:R,settingsItems:Uc,settingsSection:l,view:i,webPerformanceDiagnostics:Qe,workspaceWatchTopicStatus:So.topicStatus}),resources:Et({onlineNodeCount:fd,serverVersion:oe,nodeUpgradeProgress:ge.upgradeProgress,nodeDetails:Qd,nodeDetailsDialogOpen:Jd,nodeLabel:$a,nodeManifest:G,nodeManifestLoading:ue,nodeReady:le,nodes:ce,refreshNodes:Bn,runnerUsageDetails:Zd,runnerUsageDialogOpen:eu,runnerUsageDisabledReason:nu,runnerUsageLoading:Xd,workspaceHost:ee,selectedNodeStatus:wd,selectedWorkspace:M,showNodeDetails:tu,showRunnerUsage:au,workspaceBranchLabel:Hf,workspaceDirectAvailable:Ae,workspaceDirectDescription:he,workspaceLocalFileManagerAvailable:q,workspaceKindLabel:qf,workspacePath:iu}),registration:Et({loadWorkspaceDirectories:yo,loadingWorkspaceDirectory:ui,registrationLoading:ci.loading,pendingWorkspaceDirectoryName:lu,openNodeRegistration:hv,openWorkspaceTools:vi,registerWorkspace:vu,workspacePreserveGitConfig:su,workspaceGitPolicySupported:pd,selectWorkspaceDirectory:du,selectPendingWorkspaceDirectory:uu,discardPendingWorkspaceDirectory:pi,selectedWorkspaceDirectorySelectable:cu,workspaceDirectory:di,workspaceRegistrationNodeId:Gn,workspaceRegistrationNode:ho,workspaceRegistrationReady:ru,closeWorkspaceRegistration:Ci}),settings:Et({quickPrompts:ro.prompts,quickPromptsLoading:ro.loading,quickPromptsFailed:ro.failed,refreshQuickPrompts:oo.refresh,createRegistrationToken:Sv,registrationToken:bv,registrationLoading:Iv}),interactions:Et({attachmentPreview:ya,attachmentPreviewOpen:lt,closeQuickOpenFile:ju,conversationImagePreview:td,conversationImagePreviewOpen:nd,handleConversationImagePreviewError:ie=>dn.value.previewFailed(ie),openQuickWorkspaceFile:Ju,openQuickWorkspace:nv,openAttachmentPreview:wa,quickOpenFileVisible:_u}),uploads:Et({cancelWorkspaceUpload:Ed,deleteWorkspaceUpload:Nd,recoverWorkspaceUpload:Ad,retryWorkspaceUpload:Rd,workspaceUploadRecoveryInput:Id,workspaceUploadStatusLabel:Cd,workspaceUploadTasks:bd})}}const Gw=["organizations","users","resource-nodes","resource-workspaces","skill-config","skill-sources","mcp-sources","secrets","oauth","mar-agent-models","conversation-templates","audit","configuration","system"];function zw(e){const t=ec(e),n=new URLSearchParams(e.search).get("management"),a=Gw.find(r=>r===n);return{...t,...a===void 0?{}:{managementSection:a}}}function Kw(){const e=zw(window.location);return xh({initialView:e.view??"nodes",initialSettingsSection:"account",initialManagementSection:e.managementSection??"users",opensMobileSidebar:t=>t!=="conversations"})}function jw(e,t,n){return e("/api/workspaces",{method:"POST",body:JSON.stringify({...t,...n?.ownerType==="ORGANIZATION"?{ownership:n}:{}})})}function _w(){const e=Ef();return Bw({navigation:Kw(),management:fm(),systemManagementSection:"system",nodeManagementSection:"resource-nodes",webVersion:"0.13.4",pwaApplication:e,submitWorkspaceRegistration:jw,submitNodeRegistration:(t,n)=>t("/api/node-registration-tokens",{method:"POST",...n===void 0?{}:{body:JSON.stringify({ownership:n})}})})}class Yw{constructor(t=Date.now){this.now=t}now;entries=[];clear(){this.entries=[]}record(t,n){this.prune(),this.entries=this.entries.filter(a=>a.scope!==t||a.value.path!==n.path||a.value.kind!==n.kind),this.entries.push({scope:t,value:{...n,observedAt:this.now()}}),this.entries=this.entries.slice(-20)}snapshot(t){return this.prune(),this.entries.filter(n=>n.scope===t).map(n=>({...n.value}))}prune(){const t=this.now();this.entries=this.entries.filter(n=>t-n.value.observedAt<18e4&&n.value.observedAt<=t)}}const Qw=["aria-label"],Jw={class:"diff-mobile-action-row diff-mobile-navigation"},Xw={class:"diff-mobile-action-row diff-mobile-utilities"},Zw=["aria-label"],ek={class:"diff-toolbar-count"},tk={class:"diff-toolbar-count"},nk={class:"mar-tooltip-control"},ak={key:2,class:"unified-diff-pane"},ok={key:0,class:"unified-diff-truncation"},rk=["aria-label"],ik={key:0},sk=["data-diff-index","data-diff-row"],lk={class:"unified-diff-line-number"},ck={class:"unified-diff-line-prefix"},dk=["data-inline-find-index"],uk={key:0,class:"diff-code-navigation-target"},vk={key:1,class:"unified-diff-empty"},fk={key:0,class:"diff-fallback-message"},pk=["data-inline-find-index"],gk=["aria-label"],mk={class:"diff-minimap-content","aria-hidden":"true"},hk=["innerHTML"],yk=180,wk=at({__name:"GitDiffViewer",props:{path:{},diff:{},paths:{},loading:{type:Boolean},loadFailed:{type:Boolean},loadErrorMessage:{},source:{},previewEnabled:{type:Boolean},active:{type:Boolean},embedded:{type:Boolean},codeNavigationEnabled:{type:Boolean}},emits:["close","download","moveFile","preview","edit","navigateSymbol","navigateFile","retry"],setup(e,{expose:t,emit:n}){Rf(Y=>({f656e64a:re.value.length}));const a=e,r=n,s=x(-1),i=x(),l=x(),v=x(),u=x(!1),d=x(""),w=x(0),k=x(0),T=x(0),p=x(0),g=x(0),R=x(0),b=x(),C=x();let I;const S=x();He(()=>a.active,Y=>{Y===!1&&S.value?.close()});const m=x(!1),A=ng();let L;const y=x(),D=j(()=>typeof a.diff=="object"&&a.diff!==null?a.diff:void 0),E=j(()=>typeof D.value?.text=="string"?D.value.text:typeof D.value?.summary=="string"?D.value.summary:""),H=j(()=>E.value.length>0),X=j(()=>ne(E.value)),_=j(()=>typeof D.value?.afterText=="string"),U=j(()=>D.value?.binary!==!0&&_.value),Q=j(()=>typeof D.value?.afterText=="string"?oe(D.value.afterText):[]),$=j(()=>ue(E.value)),V=j(()=>{const Y=new Map;$.value.forEach((be,Oe)=>{for(const We of be.deletedLines){const Ie=Y.get(We.insertBefore)??[];Ie.push({kind:"deleted",lineNumber:null,text:We.text,diffIndex:Oe}),Y.set(We.insertBefore,Ie)}});const se=[];return Q.value.forEach((be,Oe)=>{const We=Oe+1;se.push(...Y.get(We)??[]),se.push({kind:M(We)===void 0?"context":"added",lineNumber:We,text:be,diffIndex:M(We)})}),se.push(...Y.get(Q.value.length+1)??[]),se}),N=j(()=>a.loading||a.loadFailed?[]:U.value?V.value.map(Y=>Y.text):H.value&&D.value?.binary!==!0?E.value.split(`
9
- `):[]),h=j(()=>Bp(N.value,d.value)),F=j(()=>h.value.total===0?0:w.value+1),z=j(()=>N.value.length>0),fe=j(()=>s.value<0?0:s.value+1),J=j(()=>a.paths.findIndex(Y=>Y===a.path)+1),re=j(()=>{if(!U.value)return[];const Y=V.value;if(Y.length===0)return[];const se=G(Q.value.join(`
10
- `),a.path),be=Math.min(yk,Y.length);return Array.from({length:be},(Oe,We)=>{const Ie=Math.floor(We*Y.length/be),st=Math.floor((We+1)*Y.length/be),pe=Y.slice(Ie,Math.max(Ie+1,st)),Ce=pe.some(vt=>vt.kind==="added"),je=pe.some(vt=>vt.kind==="deleted"),ze=pe.find(vt=>vt.lineNumber!==null)??pe[0];return{kind:Ce&&je?"mixed":Ce?"added":je?"deleted":"context",html:ze?.lineNumber===null?P(ze.text):se[(ze?.lineNumber??1)-1]??P(ze?.text??"")}})}),ge=j(()=>{const Y=Math.max(0,p.value-T.value),se=p.value>0?Math.min(1,T.value/p.value):1,be=Math.max(6,se*100),Oe=Y>0?(100-be)*k.value/Y:0;return{height:`${be}%`,top:`${Math.min(100-be,Math.max(0,Oe))}%`}}),ce=j(()=>({right:`calc(var(--diff-content-inset) + ${g.value}px)`,bottom:`calc(var(--diff-content-inset) + ${R.value}px)`}));function oe(Y){return Y.length===0?[]:Y.endsWith(`
11
- `)?Y.slice(0,-1).split(`
12
- `):Y.split(`
13
- `)}function P(Y){return Y.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll('"',"&quot;").replaceAll("'","&#39;")}function G(Y,se){const be=se.split(".").at(-1)?.toLocaleLowerCase(),Oe={ts:"typescript",tsx:"typescript",js:"javascript",jsx:"javascript",vue:"xml",html:"xml",css:"css",scss:"scss",json:"json",md:"markdown",py:"python",java:"java",go:"go",rs:"rust",sh:"bash",yml:"yaml",yaml:"yaml"}[be??""]??void 0;return(Oe!==void 0&&Lo.getLanguage(Oe)?Lo.highlight(Y,{language:Oe,ignoreIllegals:!0}).value:Lo.highlightAuto(Y).value).split(`
14
- `).map(Ie=>Gp.sanitize(Ie,{ALLOWED_TAGS:["span"],ALLOWED_ATTR:["class"]}))}function ue(Y){const se=[];let be;const Oe=()=>{be!==void 0&&se.push({addedLines:be.addedLines,deletedLines:be.deletedLines})};for(const We of Y.split(`
15
- `)){const Ie=/^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/.exec(We);if(Ie!==null){Oe(),be={beforeLine:Number(Ie[1]),afterLine:Number(Ie[3]),addedLines:[],deletedLines:[]};continue}if(be!==void 0){if(We.startsWith("-")&&!We.startsWith("---")){be.deletedLines.push({text:We.slice(1),insertBefore:be.afterLine}),be.beforeLine+=1;continue}if(We.startsWith("+")&&!We.startsWith("+++")){be.addedLines.push(be.afterLine),be.afterLine+=1;continue}We.startsWith(" ")&&(be.beforeLine+=1,be.afterLine+=1)}}return Oe(),se}function ne(Y){let se=0;return Y.split(`
16
- `).map(be=>{if(be.startsWith("diff "))return se=0,"is-meta";const Oe=/^(@{2,})\s/u.exec(be);if(Oe!==null){const We=Oe[1];return We===void 0?"is-meta":(se=We.length-1,"is-hunk")}if(be.startsWith("\\ No newline"))return"is-meta";if(se>0){const We=be.slice(0,se);return We.includes("+")&&We.includes("-")?"is-mixed":We.includes("+")?"is-added":We.includes("-")?"is-deleted":void 0}if(/^\+\+\+\s/u.test(be))return"is-added";if(/^---\s/u.test(be))return"is-deleted";if(be.startsWith("index ")||be.startsWith("mode ")||be.startsWith("old mode ")||be.startsWith("new mode ")||be.startsWith("new file ")||be.startsWith("deleted file ")||be.startsWith("similarity ")||be.startsWith("dissimilarity ")||be.startsWith("rename ")||be.startsWith("copy ")||be.startsWith("Binary files ")||be.startsWith("GIT binary patch")||be.startsWith("literal ")||be.startsWith("delta "))return"is-meta"})}function M(Y){const se=$.value.findIndex(be=>be.addedLines.includes(Y));return se<0?void 0:se}function ee(Y){return Y.diffIndex===s.value}function le(Y,se){const be=y.value;if(be?.rowIndex!==se)return[Y.text];const{from:Oe,to:We}=be.target;return[Y.text.slice(0,Oe),Y.text.slice(Oe,We),Y.text.slice(We)]}function Ee(Y){const se=Y.target instanceof Element?Y.target.closest("[data-diff-row]"):null,be=Number(se?.dataset.diffRow),Oe=V.value[be];return Number.isSafeInteger(be)&&Oe!==void 0?{row:Oe,index:be}:void 0}function xe(Y,se){const be=document,Oe=be.caretPositionFromPoint?.(se.clientX,se.clientY),We=Oe===void 0?be.caretRangeFromPoint?.(se.clientX,se.clientY):Oe===null?null:(()=>{const st=document.createRange();return st.setStart(Oe.offsetNode,Oe.offset),st.collapse(!0),st})();if(We==null||!Y.contains(We.startContainer))return;const Ie=document.createRange();return Ie.selectNodeContents(Y),Ie.setEnd(We.startContainer,We.startOffset),Ie.toString().length}function Me(Y){if(a.codeNavigationEnabled!==!0||!Y.ctrlKey&&!Y.metaKey||Y.altKey||Y.shiftKey)return;const se=Ee(Y);if(se===void 0||se.row.lineNumber===null)return;const be=Y.target.closest("[data-diff-line-content]");if(be===null)return;const Oe=xe(be,Y);if(Oe===void 0)return;const We=cg(a.path,se.row.text,Oe);return We===void 0?void 0:{rowIndex:se.index,target:We}}function Se(Y){y.value=Me(Y)}function ye(){y.value=void 0}function Fe(Y){if(Y.button!==0)return;const se=Me(Y);if(se!==void 0){if(Y.preventDefault(),Y.stopPropagation(),y.value=void 0,se.target.kind==="symbol"){r("navigateSymbol",se.target.value);return}r("navigateFile",{reference:se.target.reference,sourceContext:{text:Ye(Y)??"",position:se.target.from}})}}function Ye(Y){return Ee(Y)?.row.text}async function nt(Y){const se=$.value.length;if(se===0){s.value=-1;return}s.value=(Y+se)%se,await ut(),i.value?.querySelector(`[data-diff-index="${s.value}"]`)?.scrollIntoView({block:"center"})}function ae(Y){nt(s.value+Y)}function me(){const Y=i.value;Y!==void 0&&(k.value=Y.scrollTop,T.value=Y.clientHeight,p.value=Y.scrollHeight,g.value=Y.offsetWidth-Y.clientWidth,R.value=Y.offsetHeight-Y.clientHeight)}function Pe(Y){i.value!==void 0&&(m.value=!0,Qe(Y.clientY),Y.currentTarget.setPointerCapture(Y.pointerId),Y.preventDefault())}function Ue(Y){m.value&&(Qe(Y.clientY),Y.preventDefault())}function Qe(Y){if(i.value===void 0||b.value===void 0)return;const se=p.value-T.value,be=p.value>0?Math.min(1,T.value/p.value):1,Oe=b.value.clientHeight*Math.max(.06,be),We=b.value.clientHeight-Oe;if(se<=0||We<=0)return;const Ie=Y-b.value.getBoundingClientRect().top-Oe/2;i.value.scrollTop=Math.min(We,Math.max(0,Ie))/We*se,me()}function Te(Y){m.value=!1;const se=Y.currentTarget;se.hasPointerCapture(Y.pointerId)&&se.releasePointerCapture(Y.pointerId)}async function Ge(){u.value=!0,await ut(),await v.value?.focus()}function _e(){u.value=!1,Xe()}function tt(){return z.value?(Ge(),!0):!1}function Xe(){C.value?.root?.focus()}function Re(){const Y=U.value?i.value:l.value;if(!z.value||Y===void 0||typeof window>"u")return!1;const se=window.getSelection();return se===null?!1:(se.removeAllRanges(),se.selectAllChildren(Y),!0)}async function de(){const Y=window.getSelection(),se=C.value?.root;if(!(!Y||Y.isCollapsed||!se?.contains(Y.anchorNode)||!se.contains(Y.focusNode)))try{await navigator.clipboard.writeText(Y.toString())}catch{et(c("filePreviewContext.clipboardFailed"),"error")}}function Ae(){return r("edit"),"CHANGED"}async function he(){return!0}async function q(Y){const se=h.value.total;if(se===0)return;w.value=(w.value+Y+se)%se,await ut(),(_.value?i.value:l.value)?.querySelector(`[data-inline-find-index="${w.value}"]`)?.scrollIntoView({block:"center",inline:"nearest"})}He(d,()=>{w.value=0,ut(()=>{(_.value?i.value:l.value)?.querySelector('[data-inline-find-index="0"]')?.scrollIntoView({block:"center",inline:"nearest"})})}),He(()=>[a.path,a.diff],async()=>{u.value=!1,d.value="",await nt(0),await ut(),me()},{immediate:!0,flush:"post"}),He(()=>a.active!==!1,Y=>{typeof document>"u"||a.embedded===!0||(document.documentElement.classList.toggle("file-preview-open",Y),document.body.classList.toggle("file-preview-open",Y))},{immediate:!0});let te=[];return Dt(()=>{te=["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].map(Y=>xt.register({command:`diff.navigate.${Y}`,scope:"file-preview",priority:120,owner:()=>C.value?.root,keys:[{key:Y}],when:se=>a.active!==!1&&!se.target?.closest('input, textarea, [contenteditable="true"]'),execute:()=>(Y==="ArrowLeft"||Y==="ArrowRight"?a.paths.length>1&&!a.loading&&r("moveFile",Y==="ArrowLeft"?-1:1):ae(Y==="ArrowUp"?-1:1),"HANDLED")})),I=xt.register({command:"diff.dismissFind",scope:"file-preview",priority:120,owner:()=>C.value?.root,keys:[{key:"Escape"}],when:()=>a.active!==!1&&u.value,execute:()=>(_e(),"HANDLED")}),a.active!==!1&&Xe(),me(),i.value!==void 0&&(L=new ResizeObserver(me),L.observe(i.value))}),mt(()=>{I?.(),te.forEach(Y=>Y()),a.embedded!==!0&&a.active!==!1&&(document.documentElement.classList.remove("file-preview-open"),document.body.classList.remove("file-preview-open")),L?.disconnect()}),t({focus:Xe,openFind:tt,selectAll:Re,toggleEdit:Ae,canClose:he}),(Y,se)=>{const be=bt,Oe=St("tooltip");return f(),we(Zp,{ref_key:"diffRoot",ref:C,tabindex:"-1",role:e.embedded?"region":"dialog","aria-modal":e.embedded?void 0:!0,class:Ke({"has-inline-find":u.value,"is-embedded":e.embedded}),"file-name":e.path.split("/").at(-1)??e.path,path:e.path,loading:a.loading,"source-label":o(c)(a.source==="TOOL_CHANGE"?"presentation.thisChange":"common.gitDiff"),"mobile-actions-layout":"stacked","mobile-actions-label":o(c)("generated.gitDiffViewer.diffPreviewActions"),"aria-label":`${e.path} ${o(c)(a.source==="TOOL_CHANGE"?"presentation.thisChange":"common.gitDiff")}`},{status:Z(()=>[K("div",{class:"diff-mobile-summary","aria-label":o(c)("gitDiffViewer.mobileSummary")},[Le((f(),O("span",null,[ke(W(o(c)("gitDiffViewer.mobileFileSummary",{value0:J.value,value1:e.paths.length})),1)])),[[Oe,o(c)("generated.gitDiffViewer.filesAvailable",{value0:e.paths.length})]]),Le((f(),O("span",null,[ke(W(o(c)("gitDiffViewer.mobileChangeSummary",{value0:fe.value,value1:$.value.length})),1)])),[[Oe,o(c)("generated.gitDiffViewer.changes",{value0:$.value.length})]])],8,Qw)]),"mobile-actions":Z(()=>[K("div",Jw,[Le((f(),we(be,{class:"file-toolbar-control",circle:"",size:"small",disabled:a.paths.length<2||a.loading,"aria-label":o(c)("generated.gitDiffViewer.previousFile"),onClick:se[0]||(se[0]=We=>r("moveFile",-1))},{default:Z(()=>[B(De,{name:"chevron-left"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.previousFile")]]),Le((f(),we(be,{class:"file-toolbar-control",circle:"",size:"small",disabled:$.value.length===0,"aria-label":o(c)("generated.gitDiffViewer.previousChange"),onClick:se[1]||(se[1]=We=>ae(-1))},{default:Z(()=>[B(De,{name:"chevron-up"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.previousChange")]]),Le((f(),we(be,{class:"file-toolbar-control",circle:"",size:"small",disabled:$.value.length===0,"aria-label":o(c)("generated.gitDiffViewer.nextChange"),onClick:se[2]||(se[2]=We=>ae(1))},{default:Z(()=>[B(De,{name:"chevron-down"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.nextChange")]]),Le((f(),we(be,{class:"file-toolbar-control",circle:"",size:"small",disabled:a.paths.length<2||a.loading,"aria-label":o(c)("generated.gitDiffViewer.nextFile"),onClick:se[3]||(se[3]=We=>r("moveFile",1))},{default:Z(()=>[B(De,{name:"chevron-right"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.nextFile")]])]),K("div",Xw,[Le((f(),we(be,{class:"file-toolbar-control",circle:"",size:"small","aria-label":o(c)("fileEditor.openSource"),onClick:Ae},{default:Z(()=>[B(De,{name:"source-code"})]),_:1},8,["aria-label"])),[[Oe,o(c)("fileEditor.openSourceShortcut")]]),z.value?Le((f(),we(be,{key:0,class:"file-toolbar-control",circle:"",size:"small","aria-label":o(c)("inlineFind.label"),onClick:tt},{default:Z(()=>[B(De,{name:"search"})]),_:1},8,["aria-label"])),[[Oe,o(c)("inlineFind.label")]]):ve("",!0),Le((f(),we(be,{class:"file-toolbar-control","aria-label":o(c)("generated.gitDiffViewer.downloadDiff"),circle:"",size:"small",onClick:se[4]||(se[4]=We=>r("download"))},{default:Z(()=>[B(De,{name:"download"})]),_:1},8,["aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.downloadDiff")]]),e.embedded?ve("",!0):Le((f(),we(be,{key:1,class:"file-toolbar-control","aria-label":o(c)("generated.gitDiffViewer.closeDiffPreview2"),circle:"",size:"small",onClick:se[5]||(se[5]=We=>r("close"))},{default:Z(()=>[B(De,{name:"close"})]),_:1},8,["aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.closeDiffPreview2")]])])]),"primary-actions":Z(()=>[K("div",{class:"file-preview-actions diff-preview-toolbar","aria-label":o(c)("generated.gitDiffViewer.diffToolbar")},[Le((f(),we(be,{class:"file-toolbar-control",circle:"",size:"small","aria-label":o(c)("fileEditor.openSource"),onClick:Ae},{default:Z(()=>[B(De,{name:"source-code"})]),_:1},8,["aria-label"])),[[Oe,o(c)("fileEditor.openSourceShortcut")]]),Le((f(),we(be,{class:"file-toolbar-control",disabled:e.paths.length<2||e.loading,"aria-label":o(c)("generated.gitDiffViewer.previousFile"),circle:"",size:"small",onClick:se[6]||(se[6]=We=>r("moveFile",-1))},{default:Z(()=>[B(De,{name:"chevron-left"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.previousFile2")]]),Le((f(),O("span",ek,[ke(W(J.value)+" / "+W(e.paths.length),1)])),[[Oe,o(c)("generated.gitDiffViewer.filesAvailable",{value0:e.paths.length})]]),Le((f(),we(be,{class:"file-toolbar-control",disabled:e.paths.length<2||e.loading,"aria-label":o(c)("generated.gitDiffViewer.nextFile"),circle:"",size:"small",onClick:se[7]||(se[7]=We=>r("moveFile",1))},{default:Z(()=>[B(De,{name:"chevron-right"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.nextFile2")]]),se[23]||(se[23]=K("span",{class:"diff-toolbar-divider","aria-hidden":"true"},null,-1)),Le((f(),we(be,{class:"file-toolbar-control",disabled:$.value.length===0,"aria-label":o(c)("generated.gitDiffViewer.previousChange"),circle:"",size:"small",onClick:se[8]||(se[8]=We=>ae(-1))},{default:Z(()=>[B(De,{name:"chevron-up"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.previousChange2")]]),Le((f(),O("span",tk,[ke(W(fe.value)+" / "+W($.value.length),1)])),[[Oe,o(c)("generated.gitDiffViewer.changes",{value0:$.value.length})]]),Le((f(),we(be,{class:"file-toolbar-control",disabled:$.value.length===0,"aria-label":o(c)("generated.gitDiffViewer.nextChange"),circle:"",size:"small",onClick:se[9]||(se[9]=We=>ae(1))},{default:Z(()=>[B(De,{name:"chevron-down"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.nextChange2")]]),e.embedded?ve("",!0):Le((f(),we(be,{key:0,class:"file-toolbar-control diff-close-button","aria-label":o(c)("generated.gitDiffViewer.closeDiffPreview"),circle:"",size:"small",onClick:se[10]||(se[10]=We=>r("close"))},{default:Z(()=>[B(De,{name:"close"})]),_:1},8,["aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.closeDiffPreview")]])],8,Zw)]),default:Z(()=>[u.value&&z.value?(f(),we(eg,{key:0,ref_key:"findBar",ref:v,modelValue:d.value,"onUpdate:modelValue":se[11]||(se[11]=We=>d.value=We),current:F.value,total:h.value.total,truncated:h.value.truncated,onPrevious:se[12]||(se[12]=We=>q(-1)),onNext:se[13]||(se[13]=We=>q(1)),onClose:_e},null,8,["modelValue","current","total","truncated"])):ve("",!0),K("main",{class:"file-preview-content unified-diff-content",onClick:Xe,onContextmenu:se[21]||(se[21]=We=>S.value?.open(We))},[a.loading?ve("",!0):(f(),O(Ve,{key:0},[a.loadFailed?(f(),we(Mo,{key:0,retryable:"",message:a.loadErrorMessage??o(c)("generated.gitDiffViewer.gitDiffLoadFailed"),onRetry:se[14]||(se[14]=We=>r("retry"))},null,8,["message"])):D.value?.binary===!0?(f(),we(Mo,{key:1,message:o(c)("generated.gitDiffViewer.binaryFilesDoNotSupportDiff")},{actions:Z(()=>[Le((f(),O("span",nk,[B(be,{size:"small",disabled:!e.previewEnabled,"aria-description":e.previewEnabled?void 0:o(c)("generated.gitDiffViewer.filePreviewRequiresNewerNode"),onClick:se[15]||(se[15]=We=>r("preview"))},{default:Z(()=>[ke(W(o(c)("generated.gitDiffViewer.openFilePreview")),1)]),_:1},8,["disabled","aria-description"])])),[[Oe,{content:e.previewEnabled?void 0:o(c)("generated.gitDiffViewer.filePreviewRequiresNewerNode"),disabled:e.previewEnabled}]])]),_:1},8,["message"])):U.value?(f(),O("section",ak,[D.value?.afterTruncated===!0?(f(),O("small",ok,W(o(c)("generated.gitDiffViewer.showingTheFirst512KiB")),1)):ve("",!0),K("pre",{ref_key:"workingTreePane",ref:i,class:"unified-diff-code","aria-label":o(c)("generated.gitDiffViewer.fullWorkingTreeFile"),style:It(o(A).style.value),onScroll:me,onPointerdown:se[16]||(se[16]=(...We)=>o(A).pointerDown&&o(A).pointerDown(...We)),onPointermove:se[17]||(se[17]=(...We)=>o(A).pointerMove&&o(A).pointerMove(...We)),onPointerup:se[18]||(se[18]=(...We)=>o(A).pointerEnd&&o(A).pointerEnd(...We)),onPointercancel:se[19]||(se[19]=(...We)=>o(A).pointerEnd&&o(A).pointerEnd(...We))},[V.value.length>0?(f(),O("code",ik,[(f(!0),O(Ve,null,Je(V.value,(We,Ie)=>(f(),O("span",{key:Ie,class:Ke(["unified-diff-line",`is-${We.kind}`,{"is-active":ee(We)}]),"data-diff-index":We.diffIndex,"data-diff-row":Ie},[K("span",lk,W(We.lineNumber??"−"),1),K("span",ck,W(We.kind==="deleted"?"−":We.kind==="added"?"+":" "),1),K("span",{class:"unified-diff-line-content","data-diff-line-content":"",onMousedown:Fe,onMousemove:Se,onMouseleave:ye},[u.value&&d.value?(f(!0),O(Ve,{key:0},Je(h.value.lines[Ie],(st,pe)=>(f(),O(Ve,{key:pe},[st.matchIndex!==void 0?(f(),O("mark",{key:0,class:Ke({"is-current":st.matchIndex===w.value}),"data-inline-find-index":st.matchIndex},W(st.text),11,dk)):(f(),O(Ve,{key:1},[ke(W(st.text),1)],64))],64))),128)):y.value?.rowIndex===Ie?(f(!0),O(Ve,{key:1},Je(le(We,Ie),(st,pe)=>(f(),O(Ve,{key:pe},[pe===1?(f(),O("span",uk,W(st),1)):(f(),O(Ve,{key:1},[ke(W(st),1)],64))],64))),128)):(f(),O(Ve,{key:2},[ke(W(We.text),1)],64))],32)],10,sk))),128))])):(f(),O("span",vk,W(o(c)("generated.gitDiffViewer.emptyFile")),1))],44,rk)])):H.value?(f(),O(Ve,{key:3},[a.source!=="HISTORY"&&a.source!=="TOOL_CHANGE"?(f(),O("p",fk,W(o(c)("generated.gitDiffViewer.theCurrentNodeDidNotReturnThe")),1)):ve("",!0),K("pre",{ref_key:"historyDiffPane",ref:l,class:"unified-history-diff"},[K("code",null,[(f(!0),O(Ve,null,Je(E.value.split(`
17
- `),(We,Ie)=>(f(),O("span",{key:Ie,class:Ke(X.value[Ie])},[u.value&&d.value?(f(!0),O(Ve,{key:0},Je(h.value.lines[Ie],(st,pe)=>(f(),O(Ve,{key:pe},[st.matchIndex!==void 0?(f(),O("mark",{key:0,class:Ke({"is-current":st.matchIndex===w.value}),"data-inline-find-index":st.matchIndex},W(st.text),11,pk)):(f(),O(Ve,{key:1},[ke(W(st.text),1)],64))],64))),128)):(f(),O(Ve,{key:1},[ke(W(We),1)],64))],2))),128))])],512)],64)):(f(),we(Mo,{key:4,message:o(c)("generated.gitDiffViewer.gitDiffHasNoDisplayableTextContent")},yl({_:2},[e.previewEnabled?{name:"actions",fn:Z(()=>[B(be,{size:"small",onClick:se[20]||(se[20]=We=>r("preview"))},{default:Z(()=>[ke(W(o(c)("generated.gitDiffViewer.openFilePreview")),1)]),_:1})]),key:"0"}:void 0]),1032,["message"])),U.value&&re.value.length?(f(),O("aside",{key:5,ref_key:"minimap",ref:b,class:Ke(["diff-minimap",{"is-dragging":m.value}]),"aria-label":o(c)("generated.gitDiffViewer.diffCodeMinimap"),style:It(ce.value),onPointerdown:Pe,onPointermove:Ue,onPointerup:Te,onPointercancel:Te},[K("div",mk,[(f(!0),O(Ve,null,Je(re.value,(We,Ie)=>(f(),O("span",{key:Ie,class:Ke(["diff-minimap-row",`is-${We.kind}`])},[K("span",{innerHTML:We.html},null,8,hk)],2))),128))]),K("span",{class:"diff-minimap-viewport","aria-hidden":"true",style:It(ge.value)},null,4)],46,gk)):ve("",!0)],64))],32),B(tg,{ref_key:"contextMenu",ref:S,"paste-enabled":!1,onCopy:de,onReload:se[22]||(se[22]=We=>r("retry"))},null,512)]),_:1},8,["role","aria-modal","class","file-name","path","loading","source-label","mobile-actions-label","aria-label"])}}}),kk=dt(wk,[["__scopeId","data-v-be0cf3e1"]]),hc=at({__name:"WorkspaceGitDiffPage",props:{tab:{},active:{type:Boolean},load:{type:Function},codeNavigationEnabled:{type:Boolean}},emits:["viewed","close","download","moveFile","preview","edit","navigateSymbol","navigateFile"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=x(),i=x(),l=x(!1),v=wt();He(()=>[a.active,s.value],()=>{a.active&&s.value&&i.value?.$el?.getClientRects().length&&document.visibilityState==="visible"&&document.hasFocus()&&r("viewed")},{flush:"post"});let u=0,d;async function w(){d?.abort(),d=new AbortController;const k=++u;s.value=void 0,v.value=void 0,l.value=!0;try{const T=await a.load(a.tab,d.signal);k===u&&(s.value=T)}catch(T){k===u&&(v.value=T)}finally{k===u&&(l.value=!1)}}return He(()=>a.tab.identity,()=>{w()},{immediate:!0}),mt(()=>{d?.abort(),u+=1}),t({focus:()=>i.value?.focus(),openFind:()=>i.value?.openFind()??!1,selectAll:()=>i.value?.selectAll()??!1,toggleEdit:()=>i.value?.toggleEdit()??"UNAVAILABLE",canClose:()=>i.value?.canClose()??Promise.resolve(!0)}),(k,T)=>(f(),we(kk,{ref_key:"viewer",ref:i,active:a.active,"code-navigation-enabled":a.codeNavigationEnabled===!0&&a.tab.kind==="WORKTREE_DIFF",diff:s.value,embedded:!0,onPointerup:T[0]||(T[0]=p=>a.active&&!l.value&&r("viewed")),"load-failed":v.value!==void 0,"load-error-message":v.value===void 0?void 0:o(Tr)(v.value,a.tab.path),loading:l.value,path:a.tab.path,paths:a.tab.paths??[a.tab.path],"preview-enabled":a.tab.kind!=="TOOL_CHANGE_DIFF",source:a.tab.kind==="TOOL_CHANGE_DIFF"?"TOOL_CHANGE":a.tab.kind==="HISTORY_DIFF"?"HISTORY":"WORKING_TREE",onClose:T[1]||(T[1]=p=>r("close")),onDownload:T[2]||(T[2]=p=>r("download",s.value)),onEdit:T[3]||(T[3]=p=>r("edit")),onMoveFile:T[4]||(T[4]=p=>r("moveFile",p)),onNavigateFile:T[5]||(T[5]=p=>r("navigateFile",p)),onNavigateSymbol:T[6]||(T[6]=p=>r("navigateSymbol",p)),onPreview:T[7]||(T[7]=p=>r("preview",s.value)),onRetry:w},null,8,["active","code-navigation-enabled","diff","load-failed","load-error-message","loading","path","paths","preview-enabled","source"]))}}),bk=at({__name:"WorkspaceFileWorkbench",props:{predictionEnabled:{type:Boolean},nodeId:{},workspaceId:{},controller:{},registerPage:{type:Function},adjacentDiff:{type:Function},loadDiff:{type:Function},openExternal:{type:Function},enabled:{type:Boolean},codeNavigationEnabled:{type:Boolean},standaloneFileMode:{type:Boolean},fileWriteEnabled:{type:Boolean}},emits:["notice","openHtmlPreview"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=x(),i=a.controller;He(s,(Se,ye)=>a.registerPage(Se,ye),{flush:"sync"}),mt(()=>a.registerPage(void 0,s.value));const{frames:l}=i,v=i.suspended,{canGoBack:u,canGoForward:d,travel:w}=i,k=i.activeTabId,T=j(()=>l.value.find(Se=>Se.id===k.value)),p=i.tabList,g=new Yw;He(()=>a.predictionEnabled,Se=>{Se||g.clear()});function R(Se,ye,Fe){if(!a.predictionEnabled||Se.gitFile===!0||Se.id!==i.activeTabId.value||document.visibilityState!=="visible"||!document.hasFocus())return;const Ye=Se.kind==="WORKTREE_TEXT"||Se.kind==="HISTORY_TEXT";g.record(`${a.nodeId}:${a.workspaceId}`,{kind:Ye?"FILE":"DIFF",path:Se.path,worktreePath:Se.worktreePath,...ye??{},...Fe?{revision:Fe}:{},...Ye?{}:{source:Se.kind==="HISTORY_DIFF"?"HISTORY":Se.kind==="TOOL_CHANGE_DIFF"?"TOOL_CHANGE":"WORKING_TREE"}})}const b=i.activeTabId,C=j(()=>T.value?.fileContent.value),I=j(()=>T.value?.targetLine.value),S=Se=>a.fileWriteEnabled&&Se.historySource===void 0&&Se.worktreePath.value===void 0&&Se.repositoryPath===void 0&&!sa(Se.fileContent.value?.path??"");function m(Se){const ye=Se.fileContent.value;return ye===void 0?"unsupported":ir(ye.path,ye.encoding)}const A=j(()=>{if(!(a.nodeId===void 0||a.workspaceId===void 0))return`/api/workspaces/${encodeURIComponent(a.workspaceId)}`}),L=j(()=>a.enabled&&A.value!==void 0);function y(Se,ye,Fe){r("notice",c("generated.workspaceInspector.unableToLoad",{value0:ye,value1:it(Se,Fe)}),"error",Se)}function D(){const Se=T.value;if(!(!a.codeNavigationEnabled||Se?.repositoryPath!==void 0||Se?.worktreePath.value!==void 0||Se?.fileContent.value===void 0||a.nodeId===void 0||a.workspaceId===void 0))return{pageId:Se.id,nodeId:a.nodeId,workspaceId:a.workspaceId,path:Se.fileContent.value.path}}async function E(Se){const ye=D();ye!==void 0&&Se.length>0&&await i.navigate(ye,{symbol:Se})}async function H(Se){const ye=D();ye!==void 0&&Se.reference.value.length>0&&await i.navigate(ye,Se)}function X(Se,ye=T.value){ye!==void 0&&i.openNavigationTarget(Se,ye.id)}function _(Se=T.value){i.clearNavigationResult(Se?.id)}i.openWorkspaceFile;const U=i.openTab;async function Q(Se){await i.reloadFile(Se.id)}function $(Se){return Se.error.value===void 0?void 0:Tr(Se.error.value,Se.target.value?.path??"")}async function V(Se,ye,Fe){await i.openFile(Se,ye,Fe)}const N=a.openExternal;function h(){if(C.value===void 0)return!1;const Se=C.value.path,ye=rr(Se)?"markdown":Ka(Se)?"html":void 0;return ye===void 0||T.value?.repositoryPath!==void 0||ye==="html"&&T.value?.worktreePath.value!==void 0||ye==="html"&&a.standaloneFileMode!==!0&&(Se.startsWith("/")||/^[a-z]:[\\/]/i.test(Se)||Se.split(/[\\/]/).includes(".."))?!1:ye==="html"&&a.standaloneFileMode!==!0?(F(Se),!0):(N(Se,I.value,void 0,ye,T.value?.worktreePath.value,T.value?.repositoryPath),!0)}function F(Se){if(!L.value){r("notice",c("generated.workbenchPageInteractionService.filePreviewIsCurrentlyUnavailable"),"error");return}if(!i.suspendForHtml()){r("notice",c("htmlPreview.saving"),"info");return}r("openHtmlPreview",Se)}async function z(Se){const ye=i.tabList.value.find(Fe=>Fe.id===Se);return ye===void 0||!i.hasDraft(ye.identity)||ag()}t({predictionAttention:()=>g.snapshot(`${a.nodeId}:${a.workspaceId}`),openCurrentRenderedPreview:h,downloadFile:J});async function fe(Se,ye,Fe){if(!L.value||!a.fileWriteEnabled)throw new Error("FILE_WRITE_INVALID");return i.saveFile(Se.id,ye,Fe)}async function J(Se,ye,Fe){if(!(!L.value||a.nodeId===void 0||a.workspaceId===void 0))try{Fe?.fileContent.value?.path===Se?await i.downloadFile(Fe.id):await i.downloadTarget({nodeId:a.nodeId,workspaceId:a.workspaceId,path:Se,...ye===void 0?{}:{worktreePath:ye}})}catch(Ye){y(Ye,Se)}}async function re(Se){try{await i.downloadFile(Se.id)}catch(ye){y(ye,c("generated.workspaceInspector.fileDownload"))}}function ge(Se){i.closeTabs([Se])}function ce(){a.standaloneFileMode===!0&&window.close()}function oe(Se){i.closeTabs(Se)}const P=i.activateTab;function G(Se,ye){const Fe=typeof Se=="object"&&Se!==null&&typeof Se.text=="string"?Se.text:typeof Se=="object"&&Se!==null&&typeof Se.summary=="string"?Se.summary:c("generated.workspaceInspector.gitDiffHasNoDownloadableTextContent"),Ye=URL.createObjectURL(new Blob([Fe],{type:"text/plain;charset=utf-8"})),nt=document.createElement("a");nt.href=Ye,nt.download=`${ye.split("/").at(-1)??"changes"}.diff`,nt.click(),URL.revokeObjectURL(Ye)}const ue=i.openWorktreeDiffText;function ne(Se){if(Se.kind==="TOOL_CHANGE_DIFF"){V(Se.path);return}if(Se.kind==="WORKTREE_DIFF"){ue(Se);return}ee(Se)}async function M(Se,ye){if(Se.kind!=="HISTORY_DIFF"){ne(Se);return}await ee(Se,ye)}const ee=i.openHistoryText;async function le(Se,ye){Se.kind==="WORKTREE_DIFF"&&(await ue(Se),await E(ye))}async function Ee(Se,ye){Se.kind==="WORKTREE_DIFF"&&(await ue(Se),await H(ye))}async function xe(Se,ye){return a.loadDiff(Se,ye)}async function Me(Se,ye){if(Se.kind!=="WORKTREE_DIFF")return;const Fe=a.adjacentDiff(Se,ye);Fe!==void 0&&L.value&&A.value!==void 0&&await U(Fe)}return(Se,ye)=>(f(),we(la,{to:"body"},[o(p).length>0&&!o(v)?(f(),we(Vl,{key:0,ref_key:"workspaceFileTabsRef",ref:s,tabs:o(p),presentation:e.standaloneFileMode?"window":"overlay","active-tab-id":o(b),"can-go-back":o(u),"can-go-forward":o(d),"can-close-unmounted-tab":z,onBack:ye[1]||(ye[1]=Fe=>o(w)(-1)),onForward:ye[2]||(ye[2]=Fe=>o(w)(1)),onActivate:o(P),onPageReady:o(i).pageReady,onClose:ge,onCloseAll:oe,onCloseLast:ce},{default:Z(({tab:Fe,active:Ye,registerPageHandle:nt,requestClose:ae})=>[(f(!0),O(Ve,null,Je(o(l),me=>(f(),O(Ve,{key:me.id},[Fe.id===me.id&&me.fileContent.value!==void 0&&m(me)==="text"?Le((f(),we(ql,{key:0,ref_for:!0,ref:nt,active:Ye,downloading:me.downloading.value,file:me.fileContent.value,kind:m(me),loading:me.loading.value,"load-error":$(me),markdown:me.repositoryPath===void 0&&me.worktreePath.value===void 0&&me.fileContent.value.encoding==="utf-8"&&o(rr)(me.fileContent.value.path),html:me.repositoryPath===void 0&&me.worktreePath.value===void 0&&me.fileContent.value.encoding==="utf-8"&&(e.standaloneFileMode||!me.fileContent.value.path.startsWith("/")&&!/^[a-z]:[\\/]/i.test(me.fileContent.value.path)&&!me.fileContent.value.path.split(/[\\/]/).includes(".."))&&o(Ka)(me.fileContent.value.path),"write-enabled":S(me),"save-file":(Pe,Ue)=>fe(me,Pe,Ue),"target-line":me.targetLine.value,"target-column":me.targetColumn.value,"code-navigation-enabled":e.codeNavigationEnabled&&me.worktreePath.value===void 0&&me.repositoryPath===void 0,"navigation-loading":me.navigationLoading.value,"navigation-targets":me.navigationTargets.value,"navigation-no-definition":me.navigationNoDefinition.value,"navigation-notice":me.navigationNotice.value,"editor-identity":me.id,"tab-identity":Fe.identity,"initial-dirty-draft":o(i).draftFor(Fe.identity),onClose:ae,onDownload:Pe=>re(me),onOpenMarkdownPreview:Pe=>o(N)(me.fileContent.value.path,me.targetLine.value,me.targetColumn.value,"markdown"),onOpenHtmlPreview:Pe=>e.standaloneFileMode?o(N)(me.fileContent.value.path,void 0,void 0,"html"):F(me.fileContent.value.path),onNavigateSymbol:E,onNavigateFile:H,onDismissNavigation:Pe=>_(me),onOpenNavigationTarget:Pe=>X(Pe,me),onReload:Pe=>Q(me),onDirtyDraftApplied:ye[0]||(ye[0]=Pe=>o(i).consumeDraft(Pe)),onViewed:Pe=>Ye&&R(Fe,Pe,me.fileContent.value?.revision)},null,8,["active","downloading","file","kind","loading","load-error","markdown","html","write-enabled","save-file","target-line","target-column","code-navigation-enabled","navigation-loading","navigation-targets","navigation-no-definition","navigation-notice","editor-identity","tab-identity","initial-dirty-draft","onClose","onDownload","onOpenMarkdownPreview","onOpenHtmlPreview","onDismissNavigation","onOpenNavigationTarget","onReload","onViewed"])),[[At,Ye]]):Fe.id===me.id&&me.fileContent.value!==void 0?Le((f(),we(Hl,{key:1,ref_for:!0,ref:nt,active:Ye,"content-url":me.contentUrl.value,downloading:me.downloading.value,file:me.fileContent.value,kind:m(me),loading:me.loading.value,"load-error":$(me),onReload:Pe=>Q(me),onClose:ae,onDownload:Pe=>re(me)},null,8,["active","content-url","downloading","file","kind","loading","load-error","onReload","onClose","onDownload"])),[[At,Ye]]):ve("",!0)],64))),128)),Fe.kind==="WORKTREE_DIFF"||Fe.kind==="HISTORY_DIFF"||Fe.kind==="TOOL_CHANGE_DIFF"?Le((f(),we(hc,{key:0,ref:nt,active:Ye,"code-navigation-enabled":e.codeNavigationEnabled&&Fe.gitFile!==!0,load:xe,onViewed:me=>Ye&&R(Fe),tab:Fe,onClose:ae,onDownload:me=>G(me,Fe.path),onEdit:me=>ne(Fe),onMoveFile:me=>Me(Fe,me),onPreview:me=>M(Fe,me),onNavigateSymbol:me=>le(Fe,me),onNavigateFile:me=>Ee(Fe,me)},null,8,["active","code-navigation-enabled","onViewed","tab","onClose","onDownload","onEdit","onMoveFile","onPreview","onNavigateSymbol","onNavigateFile"])),[[At,Ye]]):ve("",!0)]),_:1},8,["tabs","presentation","active-tab-id","can-go-back","can-go-forward","onActivate","onPageReady"])):ve("",!0)]))}}),Ik={class:"current-changes"},Sk={key:0,class:"changes-read-state"},Ck={key:1,class:"changes-read-state",role:"status"},Tk={key:2,class:"git-fetch-notice",role:"status"},Ek={key:3,class:"git-worktrees"},Rk={class:"git-worktree-heading"},Ak={key:0},Nk=["aria-label"],Dk={class:"git-worktree-name"},Pk={class:"git-worktree-statuses"},Ok={key:4,class:"git-worktrees-truncated",role:"status"},Lk={key:5,class:"changes-refresh-row"},Wk=["disabled","aria-label","aria-busy"],Mk={key:6,class:"empty"},xk=["data-repository-path"],$k={class:"repository-heading-content"},Fk={class:"repository-title-row"},Uk={key:0,class:"repository-branch current-branch"},Vk={class:"repository-tags-row"},qk={"aria-hidden":"true"},Hk={key:0,class:"repository-relative-path"},Bk={key:1,class:"repository-physical-path"},Gk={key:0,class:"change-repository-empty"},zk={key:1,class:"change-repository-empty",role:"status"},Kk=["aria-label","onClick"],jk={class:"change-path-content"},_k={class:"change-file-heading"},Yk={class:"change-file-name"},Qk={key:0,class:"change-directory"},Jk={class:"change-status"},Xk={class:"change-status"},Jo=200,Zk=at({__name:"WorkspaceGitChanges",props:{service:{},target:{},watchStatus:{}},emits:["open","notice","retryWatch"],setup(e,{emit:t}){const n=e,a=t,{repositories:r,worktrees:s,worktreesTruncated:i,discoveryErrors:l,changesRefreshing:v,restoringPath:u,loadChanges:d}=n.service,w=j(()=>v.value||n.watchStatus==="loading"),k=j(()=>n.service.changesError.value||n.watchStatus==="failed"),T=x(!1),p=j(()=>k.value||T.value&&w.value);He([w,k],([N,h])=>{!N&&!h&&(T.value=!1)}),He([()=>n.target?.nodeId,()=>n.target?.workspaceId],()=>{T.value=!1});const g=j(()=>r.value.some(N=>N.source==="ROOT"));function R(){w.value||(T.value=!0,n.watchStatus==="failed"?a("retryWatch"):n.service.changesError.value&&n.service.retryChanges())}const b=x(Jo),C=x(),I=x([]),S=j(()=>ky(r.value,b.value)),m=j(()=>S.value.reduce((N,h)=>N+h.changes.length,0)),A=j(()=>r.value.reduce((N,h)=>N+h.changes.length,0)),L=j(()=>m.value<A.value),y=j(()=>L.value?S.value.filter(N=>N.changes.length>0).at(-1):void 0);He(r,()=>{b.value=Jo}),wr(N=>{const h=I.value[0],F=C.value,z=b.value;if(!h||!F||typeof IntersectionObserver>"u")return;let fe=!0;const J=new IntersectionObserver(re=>{fe&&b.value===z&&re.some(ge=>ge.isIntersecting)&&(b.value+=Jo)},{root:F});J.observe(h),N(()=>{fe=!1,J.disconnect()})},{flush:"post"});function D(N){return N.branch??c("gitWorktrees.detachedHead",{head:N.head.slice(0,8)})}function E(N){return N==="CLEAN"?c("gitWorktrees.clean"):N==="DIRTY"?c("gitWorktrees.dirty"):c("gitWorktrees.unavailable")}function H(N){return N==="CLEAN"?"success":N==="DIRTY"?"warning":"info"}function X(N){return`${N.source}:${N.worktreePath??N.repositoryPath}`}function _(N){return N==="ROOT"?c("gitWorktrees.rootRepository"):N==="SUBMODULE"?c("gitWorktrees.submodule"):c("gitWorktrees.worktree")}function U(N){if(N.branch!==null)return N.branch;if(N.head!==void 0)return c("gitWorktrees.detachedHead",{head:N.head.slice(0,8)})}function Q(N){return{STAGED:"S",UNSTAGED:"W",UNTRACKED:"?"}[N]}function $(N){return it(new jt(N.code,N.message,N.parameters,N.details))}async function V(N){const h=n.target;if(h===void 0||u.value!==void 0)return;const F=vn(N),z=N.state==="UNTRACKED"?c("generated.workspaceInspector.deleteUntrackedFile"):c("generated.workspaceInspector.revertChanges");try{await Nt.confirm(c("generated.workspaceInspector.thisActionCannotBeUndone",{value0:z,value1:F}),z,{confirmButtonText:N.state==="UNTRACKED"?c("generated.workspaceInspector.delete2"):c("generated.workspaceInspector.revert"),cancelButtonText:c("generated.workspaceInspector.cancel3"),type:"warning"})}catch{return}!await n.service.restoreChange(N,h)||n.target?.nodeId!==h.nodeId||n.target.workspaceId!==h.workspaceId||a("notice",N.state==="UNTRACKED"?c("generated.workspaceInspector.deleted",{value0:F}):c("generated.workspaceInspector.reverted",{value0:F}),"success")}return(N,h)=>{const F=bt,z=da,fe=St("tooltip");return f(),O("section",Ik,[p.value?(f(),O("div",Sk,[Le((f(),we(F,{link:"","aria-description":!w.value&&e.service.changesError.value?o(it)(e.service.changesFailureCause.value):void 0,"aria-disabled":w.value,"aria-busy":w.value||void 0,onClick:R},{default:Z(()=>[w.value?(f(),we(De,{key:0,name:"loading-action"})):ve("",!0),ke(" "+W(o(c)("common.loadFailedRetry")),1)]),_:1},8,["aria-description","aria-disabled","aria-busy"])),[[fe,!w.value&&e.service.changesError.value?o(it)(e.service.changesFailureCause.value):""]])])):w.value&&!g.value?(f(),O("div",Ck,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)])):ve("",!0),e.service.changesFetchFailed.value?(f(),O("p",Tk,W(o(c)("gitSync.fetchFailed")),1)):ve("",!0),o(s).length>0?(f(),O("div",Ek,[K("div",Rk,[K("strong",null,W(o(c)("gitWorktrees.title")),1),o(i)?(f(),O("small",Ak,W(o(c)("gitWorktrees.truncated")),1)):ve("",!0)]),K("ul",{class:"git-worktree-list","aria-label":o(c)("gitWorktrees.title")},[(f(!0),O(Ve,null,Je(o(s),(J,re)=>(f(),O("li",{key:`${J.directoryName}:${J.head}:${re}`},[Le((f(),O("strong",Dk,[ke(W(J.directoryName),1)])),[[fe,J.directoryName]]),Le((f(),O("code",null,[ke(W(D(J)),1)])),[[fe,D(J)]]),K("span",Pk,[J.current?(f(),we(z,{key:0,class:"repository-current",type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(o(c)("gitWorktrees.current")),1)]),_:1})):ve("",!0),B(z,{type:H(J.status),effect:"plain",size:"small"},{default:Z(()=>[ke(W(E(J.status)),1)]),_:2},1032,["type"]),J.locked?(f(),we(z,{key:1,type:"warning",effect:"plain",size:"small"},{default:Z(()=>[ke(W(o(c)("gitWorktrees.locked")),1)]),_:1})):ve("",!0),J.prunable?(f(),we(z,{key:2,type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(o(c)("gitWorktrees.prunable")),1)]),_:1})):ve("",!0)])]))),128))],8,Nk)])):o(i)?(f(),O("p",Ok,W(o(c)("gitWorktrees.truncated")),1)):ve("",!0),(f(!0),O(Ve,null,Je(o(l),(J,re)=>(f(),O("p",{key:re,class:"change-repository-empty",role:"status"},W($(J)),1))),128)),g.value?(f(),O("div",Lk,[Le((f(),O("button",{class:"changes-refresh-button file-explorer-utility-button utility-control",disabled:w.value,"aria-label":o(c)("generated.workspaceInspector.refreshGitChanges"),"aria-busy":w.value||void 0,type:"button",onClick:h[0]||(h[0]=J=>o(d)(!0))},[B(De,{name:w.value&&!p.value?"loading-action":"refresh"},null,8,["name"])],8,Wk)),[[fe,o(c)("generated.workspaceInspector.refreshGitChanges2")]])])):ve("",!0),o(r).length===0&&!w.value&&!k.value?(f(),O("p",Mk,W(o(c)("generated.workspaceInspector.theWorkspaceHasNoRepositoriesToDisplay")),1)):o(r).length>0?(f(),O("ul",{key:7,ref_key:"changeListElement",ref:C,class:"change-list"},[(f(!0),O(Ve,null,Je(S.value,J=>(f(),O(Ve,{key:X(J)},[K("li",{class:"change-repository-heading","data-repository-path":J.repositoryPath},[K("div",$k,[K("div",Fk,[Le((f(),O("strong",null,[ke(W(J.repositoryName||o(c)("generated.workspaceInspector.rootRepository")),1)])),[[fe,J.physicalPath||J.repositoryPath]]),U(J)?Le((f(),O("code",Uk,[ke(W(U(J)),1)])),[[fe,U(J)]]):ve("",!0)]),K("div",Vk,[B(z,{class:"repository-kind",type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(_(J.source)),1)]),_:2},1024),J.current?(f(),we(z,{key:0,class:"repository-current",type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(o(c)("gitWorktrees.current")),1)]),_:1})):ve("",!0),J.status?(f(),we(z,{key:1,type:H(J.status),effect:"plain",size:"small"},{default:Z(()=>[ke(W(E(J.status)),1)]),_:2},1032,["type"])):ve("",!0),J.locked?(f(),we(z,{key:2,type:"warning",effect:"plain",size:"small"},{default:Z(()=>[ke(W(o(c)("gitWorktrees.locked")),1)]),_:1})):ve("",!0),J.prunable?(f(),we(z,{key:3,type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(o(c)("gitWorktrees.prunable")),1)]),_:1})):ve("",!0),J.tracking&&(J.tracking.ahead>0||J.tracking.behind>0)?Le((f(),we(z,{key:4,class:"repository-sync-tag",effect:"plain",size:"small","aria-label":o(c)("gitSync.description",J.tracking)},{default:Z(()=>[K("span",qk,"↓ "+W(J.tracking.behind)+" ↑ "+W(J.tracking.ahead),1)]),_:2},1032,["aria-label"])),[[fe,o(c)("gitSync.description",J.tracking)]]):ve("",!0)]),J.source==="SUBMODULE"&&J.repositoryPath?Le((f(),O("code",Hk,[ke(W(J.repositoryPath),1)])),[[fe,J.repositoryPath]]):ve("",!0),(J.source==="WORKTREE"||J.source==="ROOT")&&J.physicalPath?Le((f(),O("code",Bk,[ke(W(J.physicalPath),1)])),[[fe,J.physicalPath]]):ve("",!0)])],8,xk),J.changes.length===0&&!J.changesTruncated?(f(),O("li",Gk,W(J.error!==void 0?$(J.error):J.status==="UNAVAILABLE"?o(c)("gitWorktrees.unavailable"):o(c)("generated.workspaceInspector.noUncommittedChanges")),1)):ve("",!0),J.changesTruncated?(f(),O("li",zk,W(o(c)("gitWorktrees.changesTruncated")),1)):ve("",!0),(f(!0),O(Ve,null,Je(J.changes,re=>(f(),O("li",{key:o(pr)(re),class:"change-entry"},[Le((f(),O("button",{class:"change-path",type:"button","aria-label":re.diffAvailable&&!o(Er)(re.path)?o(c)("generated.workspaceInspector.viewDiffFor",{value0:o(vn)(re)}):o(c)("generated.workspaceInspector.preview",{value0:o(vn)(re)}),onClick:ge=>a("open",re,ge.ctrlKey||ge.metaKey)},[K("span",jk,[K("span",_k,[B(yn,{name:o(fr)(re.path)},null,8,["name"]),K("strong",Yk,W(o(fr)(re.path)),1)]),o(Ws)(re.path)?(f(),O("small",Qk,W(o(Ws)(re.path)),1)):ve("",!0)])],8,Kk)),[[fe,o(vn)(re)]]),Le((f(),O("span",Jk,[ke(W(o(fc)(re.change)),1)])),[[fe,re.change]]),Le((f(),O("small",Xk,[ke(W(Q(re.state)),1)])),[[fe,re.state]]),Le(B(F,{class:"change-restore utility-control",text:"",icon:o(qe)("undo"),"loading-icon":o(qe)("loading-action"),loading:o(u)===o(pr)(re),disabled:o(u)!==void 0,"aria-label":re.state==="UNTRACKED"?o(c)("generated.workspaceInspector.deleteChangesTo",{value0:o(vn)(re)}):o(c)("generated.workspaceInspector.revertChangesTo",{value0:o(vn)(re)}),size:"small",onClick:ge=>V(re)},null,8,["icon","loading-icon","loading","disabled","aria-label","onClick"]),[[fe,re.state==="UNTRACKED"?o(c)("generated.workspaceInspector.deleteUntrackedFile2"):o(c)("generated.workspaceInspector.revertChanges2")]])]))),128)),J===y.value?(f(),O("li",{key:2,ref_for:!0,ref_key:"loadMoreElements",ref:I,class:"change-append-state","aria-hidden":"true"},null,512)):ve("",!0)],64))),128))],512)):ve("",!0)])}}}),eb=dt(Zk,[["__scopeId","data-v-1aa89d8d"]]),hr=14,Ys=19,Qs=38;function aa(e){return e*hr+hr/2}function Js(e,t,n,a){const r=aa(e),s=aa(n),i=(t+a)/2;return`M ${r} ${t} C ${r} ${i}, ${s} ${i}, ${s} ${a}`}function Xo(e){return e.filter((t,n)=>e.indexOf(t)===n)}function tb(e){let t=[];return e.map(n=>{let a=t.indexOf(n.hash);const r=a>=0;r||(a=t.length,t=[...t,n.hash]);const s=[...t],i=[...s];i.splice(a,1,...Xo(n.parents));const l=Xo(i),v=[];for(const[d,w]of s.entries()){if(d===a)continue;const k=l.indexOf(w);k>=0&&v.push({path:Js(d,0,k,Qs),color:d})}r&&v.push({path:`M ${aa(a)} 0 L ${aa(a)} ${Ys}`,color:a});for(const d of Xo(n.parents)){const w=l.indexOf(d);w>=0&&v.push({path:Js(a,Ys,w,Qs),color:w})}const u=Math.max(s.length,l.length,1);return t=l,{lane:a,laneCount:u,outgoingLaneCount:t.length,edges:v}})}function La(e){return e.laneCount*hr}function Xs(e){return aa(e.lane)}const nb={class:"history-toolbar"},ab=["disabled","aria-label","aria-busy"],ob={key:0,class:"git-fetch-notice",role:"status"},rb={key:1,class:"empty"},ib={key:2,class:"history-list"},sb=["aria-label","onClick","onContextmenu"],lb=["viewBox"],cb=["d"],db=["cx"],ub=["cx"],vb={class:"history-content"},fb={class:"history-title-row"},pb={class:"history-subject"},gb=["x1","x2"],mb={class:"history-files"},hb={key:0,class:"empty",role:"status"},yb={key:1,class:"empty"},wb={key:0,class:"mar-tooltip-control"},kb={class:"history-file-status"},bb={class:"history-file-path"},Ib={key:4,class:"history-load-more",role:"status"},Sb=at({__name:"WorkspaceGitHistory",props:{service:{}},emits:["open","notice"],setup(e,{emit:t}){const n=e,a=t,{historyRefs:r,historyCommits:s,historyNextCursor:i,historyLoading:l,historyError:v,historyFiles:u,historyFilesLoading:d,historyFilesErrors:w,loadHistory:k}=n.service,T=x(),p=x();wr(F=>{const z=T.value,fe=p.value;if(!z||!fe||l.value||v.value||typeof IntersectionObserver>"u")return;const J=new IntersectionObserver(re=>{re.some(ge=>ge.isIntersecting)&&k(!1)},{root:fe,rootMargin:"0px 0px 96px 0px"});J.observe(z),F(()=>J.disconnect())},{flush:"post"});const g=x(n.service.historyRepositoryPath.value),R=x([...n.service.selectedHistoryRefs.value]),b=x([]),C=x({}),I=x();He(n.service.historyRepositoryPath,F=>{g.value=F}),He(n.service.selectedHistoryRefs,F=>{R.value=[...F]}),He(n.service.historySource,()=>{b.value=[],C.value={},X()});const S=j({get:()=>g.value===""?"__ROOT_REPOSITORY__":g.value,set:F=>{g.value=F==="__ROOT_REPOSITORY__"?"":F}}),m=j(()=>n.service.repositories.value.filter(F=>F.source!=="WORKTREE"&&F.status!=="UNAVAILABLE").map(F=>({value:F.repositoryPath===""?"__ROOT_REPOSITORY__":F.repositoryPath,label:F.repositoryName||c("generated.workspaceInspector.rootRepository")}))),A=j(()=>{const F=tb(s.value);return s.value.map((z,fe)=>({commit:z,graph:F[fe]}))});function L(){return n.service.selectHistory(g.value,R.value)}function y(){return R.value=[],L()}async function D(F){if(b.value.includes(F.hash)){b.value=b.value.filter(z=>z!==F.hash);return}b.value=[...b.value,F.hash],C.value[F.hash]===void 0&&(C.value={...C.value,[F.hash]:[]}),await n.service.loadHistoryFiles(F)}function E(F){return Number.isFinite(F)?Gt(F):"-"}function H(F,z){z.preventDefault();const fe=176,J=38;I.value={commit:F,x:Math.max(6,Math.min(z.clientX,window.innerWidth-fe-6)),y:Math.max(6,Math.min(z.clientY,window.innerHeight-J-6))}}function X(){I.value=void 0}function _(F){F.target instanceof Element&&F.target.closest(".history-context-menu")!==null||X()}async function U(){const F=I.value?.commit;if(F!==void 0){X();try{await navigator.clipboard.writeText(F.hash),a("notice",c("generated.workspaceInspector.commitIdCopied"),"info")}catch(z){a("notice",it(z),"error",z)}}}function Q(F){return`${Math.min(8,Math.max(0,F))*10+2}px`}function $(F,z){const fe=F.split("/").filter(Boolean);return fe.slice(0,-1).every((J,re)=>z.includes(fe.slice(0,re+1).join("/")))}function V(F,z){const fe=new Set,J=[];for(const re of[...F].sort((ge,ce)=>ge.path.localeCompare(ce.path))){const ge=re.path.split("/").filter(Boolean);for(let ce=0;ce<ge.length-1;ce+=1){const oe=ge.slice(0,ce+1).join("/");fe.has(oe)||(fe.add(oe),$(oe,z)&&J.push({kind:"DIRECTORY",path:oe,name:ge[ce]??oe,depth:ce}))}$(re.path,z)&&J.push({kind:"FILE",file:re,name:ge.at(-1)??re.path,depth:ge.length-1})}return J}function N(F,z){const fe=C.value[F]??[];C.value={...C.value,[F]:fe.includes(z)?fe.filter(J=>J!==z):[...fe,z]}}let h;return Dt(()=>{h=xt.register({command:"gitHistory.dismissMenu",scope:"overlay",priority:150,keys:[{key:"Escape"}],when:()=>I.value!==void 0,execute:()=>(X(),"HANDLED")}),window.addEventListener("pointerdown",_),window.addEventListener("resize",X),window.addEventListener("scroll",X,!0)}),mt(()=>{h?.(),window.removeEventListener("pointerdown",_),window.removeEventListener("resize",X),window.removeEventListener("scroll",X,!0)}),(F,z)=>{const fe=Un,J=wn,re=dg,ge=bt,ce=St("tooltip");return f(),O("section",{ref_key:"historyContainer",ref:p,class:"git-history"},[K("div",nb,[B(J,{modelValue:S.value,"onUpdate:modelValue":z[0]||(z[0]=oe=>S.value=oe),class:"history-filter","clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down"),"aria-label":o(c)("generated.workspaceInspector.selectGitRepository"),placeholder:o(c)("generated.workspaceInspector.selectAGitRepository"),size:"small",onChange:y},{default:Z(()=>[(f(!0),O(Ve,null,Je(m.value,oe=>(f(),we(fe,{key:oe.value,label:oe.label,value:oe.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","clear-icon","suffix-icon","aria-label","placeholder"]),B(J,{modelValue:R.value,"onUpdate:modelValue":z[1]||(z[1]=oe=>R.value=oe),class:"history-filter","clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down"),"aria-label":o(c)("generated.workspaceInspector.selectGitBranch"),placeholder:o(c)("generated.workspaceInspector.allBranches"),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",clearable:"",size:"small",onChange:L},{default:Z(()=>[B(re,{label:o(c)("generated.workspaceInspector.localBranches")},{default:Z(()=>[(f(!0),O(Ve,null,Je(o(r).filter(oe=>oe.kind==="LOCAL"),oe=>(f(),we(fe,{key:oe.name,label:oe.displayName,value:oe.name},null,8,["label","value"]))),128))]),_:1},8,["label"]),B(re,{label:o(c)("generated.workspaceInspector.remoteBranches")},{default:Z(()=>[(f(!0),O(Ve,null,Je(o(r).filter(oe=>oe.kind==="REMOTE"),oe=>(f(),we(fe,{key:oe.name,label:oe.displayName,value:oe.name},null,8,["label","value"]))),128))]),_:1},8,["label"])]),_:1},8,["modelValue","clear-icon","suffix-icon","aria-label","placeholder"]),Le((f(),O("button",{class:"history-refresh file-explorer-utility-button utility-control",disabled:o(l),"aria-label":o(c)("generated.workspaceInspector.refreshGitHistory"),"aria-busy":o(l)||void 0,type:"button",onClick:z[2]||(z[2]=oe=>o(k)(!0,!0))},[B(De,{name:"refresh"})],8,ab)),[[ce,o(c)("generated.workspaceInspector.refreshGitHistory2")]])]),e.service.historyFetchFailed.value?(f(),O("p",ob,W(o(c)("gitSync.fetchFailed")),1)):ve("",!0),!o(l)&&!o(v)&&o(s).length===0?(f(),O("p",rb,W(o(c)("generated.workspaceInspector.noGitCommitHistory")),1)):(f(),O("ul",ib,[(f(!0),O(Ve,null,Je(A.value,({commit:oe,graph:P})=>(f(),O("li",{key:oe.hash,class:"history-commit"},[Le((f(),O("button",{"aria-label":`${oe.subject||o(c)("generated.workspaceInspector.untitled")}
8
+ ${ce}`}),{working:X,workingNow:Y,workingStartedAt:U}=Tl(e.selectedSessionId,I,t),Q=j(()=>!X.value||!a.value?"":Al(U.value,Y.value)),$=j(()=>X.value?Rl(t.value,a.value?e.turns.value:[]):""),V=j(()=>X.value&&a.value&&El(t.value,e.turns.value)),N=j(()=>(t.value!==void 0||r.value==="MANAGED_ACTIVE"&&(e.selectedSessionId.value===void 0||!e.runService.sessionInterruptionSettled(e.selectedSessionId.value)))&&a.value),h=j(()=>N.value&&t.value?.status!=="CANCELLING"),F=j(()=>a.value&&e.selectedSession.value?.runner==="claude-code"&&e.channelToken.value!==void 0);return{activeComposerRun:t,workspaceHost:n,nodeReady:a,selectedSessionActivity:r,selectedCapabilities:s,selectedRuntimeCapabilities:i,canStartTurn:l,mustSteerCurrentTurn:v,draftRunnerProfileSupportsTurns:u,composerDraftOpen:d,canUseComposer:w,composerSessionOpen:k,composerConfigurationDisabled:T,composerAccessDisabled:p,composerInputDisabled:g,composerAttachmentsPending:R,displayedConversationTurns:b,currentSessionQueue:C,composerSessionBusy:I,sessionControlsBusy:S,rewindConversationEnabled:m,rollbackConversationEnabled:A,canExecuteRunnerCommand:y,canDeleteSession:L,compactCommand:D,canCompactContext:E,contextUsageLabel:H,composerWorking:X,workingElapsedLabel:Q,composerWorkingLabel:$,composerWorkingBusy:V,interruptVisible:N,canInterruptTurn:h,canSendClaudeChannel:F}}function Eh(e){const t=Yf(),{selectedWorkspace:n}=e.context,a=j(()=>n.value===void 0?c("common.productName"):`${c("common.productName")} - ${e.workspaceLabel(n.value)}`),r=j(()=>Ch(e.sessions.value,e.workspaceTarget.value?.workspaceId)),s=j(()=>{const v=e.workspaceTarget.value?.nodeId,u=e.workspaceTarget.value?.workspaceId;return v===void 0||u===void 0?[]:r.value.slice(0,e.visibleLimits.value.get(e.tabId(v,u))??e.pageSize)}),i=j(()=>{const v=e.workspaceTarget.value?.nodeId,u=e.workspaceTarget.value?.workspaceId;return v!==void 0&&u!==void 0&&typeof e.nextCursors.value.get(e.tabId(v,u))=="string"}),l=j(()=>e.nodes.value.filter(v=>v.connected&&!v.disabled).length);return{...e.pane,...e.context,sessionActivityClockNow:t,selectedWorkspace:n,documentTitle:a,workspaceSessions:r,visibleWorkspaceSessions:s,canLoadMoreWorkspaceSessions:i,onlineNodeCount:l}}function Rh(e){const t=x(),n=He([e.view,e.nodeId,e.workspaceId,e.sessionId],()=>{t.value=void 0},{flush:"sync"});function a(r,s){if(e.view.value!=="nodes"||r!==e.sessionId.value)return;const i=rf.safeParse(s);i.success&&(t.value={...t.value?.runId===i.data.runId?t.value:{},runId:i.data.runId,...i.data.latencyMs===void 0?{}:{latencyMs:i.data.latencyMs},...i.data.tokensPerSecond===void 0?{}:{tokensPerSecond:i.data.tokensPerSecond}})}return{current:t,receive:a,dispose:n}}function Ah(e){function t(n,a,r="initial"){if(n!==e.selectedSessionId.value)return e.replaceCached(n,a),!1;r!=="refresh"&&e.resetCurrent?.(r);const s=r==="refresh"?e.mergeCurrent(a):e.replaceCurrent(a);return e.replaceCached(n,{...a,...e.currentWindow()}),s}return{apply:t}}function Nh(e){const{projection:t,turns:n,replaceCached:a,...r}=e,s=Ah({selectedSessionId:e.selectedSessionId,replaceCurrent:t.replaceAuthoritative,mergeCurrent:t.mergeLatest,resetCurrent:l=>{i.resetWindow(),l==="reset"&&t.resetHistory()},currentWindow:()=>({turns:n.value,nextCursor:e.nextCursor.value}),replaceCached:(l,v)=>a(l,v.turns,v.nextCursor)}),i=Qf({...r,replaceRecent:t.replaceRecent,mergeOlderPage:t.mergeOlderPage,recoverWindow:t.recoverWindow,clearCursor:t.clearCursor});return{applySnapshot:s.apply,paging:i}}function Dh(e,t){return xt.register({command:"composer.openModelMenu",scope:"pane",priority:100,owner:e,keys:Vp,when:()=>!0,execute:()=>t()?"HANDLED":"IGNORED"})}function Ph(){let e;function t(){e?.abort(),e=void 0}async function n(s){t();const i=new AbortController;e=i;try{const l=await s(i.signal);if(!i.signal.aborted)return l}catch(l){if(!i.signal.aborted)throw l}finally{e===i&&(e=void 0)}throw new jt("WATCH_CANCELLED","The session read was stopped or replaced.")}function a(s,i,l,v){return n(u=>l(`/api/agent-sessions/${v(i)}?nodeId=${encodeURIComponent(s)}`,{signal:u}))}async function r(s,i,l,v){const u=await n(d=>l(`/api/agent-sessions/${v(i)}/turns?nodeId=${encodeURIComponent(s)}&limit=${Mf}&unit=SEGMENT`,{signal:d}));return up(u)??vp(u)}return{read:a,readInitialHistory:r,cancel:t}}function Oh(e){const t=Ht();let n=()=>{},a=()=>!1;const r=j(()=>{const U=e.draftTarget.value;return U?.kind==="session"?U.sessionId:void 0}),s=j(U=>{const Q=e.draftTarget.value;if(Q!==void 0)return U?.nodeId===Q.nodeId&&U.workspaceId===Q.workspaceId?U:{nodeId:Q.nodeId,workspaceId:Q.workspaceId}}),i=e.attachments.forTarget(()=>e.draftTarget.value),l=e.drafts.bindTarget(e.draftTarget,e.pane),v=Jf(l.skillTokens);He(l.input,l.persist),He(l.skillTokens,l.persist,{deep:!0}),He(l.references,l.persist,{deep:!0});const u=e.submissions.bind(()=>{const U=e.draftTarget.value;return U===void 0?void 0:e.submissions.forTarget(U)}),d=Nl(),w=dp(r),k=Xf(w.runs),T=Ph(),p=Zf(e.onConversationOverflow);function g(U){return p.projection.flushPendingTextDeltas(),{sessionId:U,runs:w.runs.value,turns:p.turns.value,nextCursor:p.nextCursor.value,contextUsage:p.contextUsage.value??null,lastAccessedAt:Date.now()}}function R(U,Q=void 0){w.replaceRuns(U?.runs??[]),p.projection.restoreWindow(U?.turns??[],U?.nextCursor??null),p.contextUsage.value=U===void 0?Q:U.contextUsage??null}function b(){p.nextDetailRequest(),R(void 0)}function C(){w.selectedRunId.value=void 0,b()}function I(){C(),p.loadingOlder.value=!1,p.loadingInitial.value=!1,p.initialLoadFailed.value=!1}function S(U,Q,$,V){const N=e.draftTarget.value;N?.kind!=="session"||U===void 0||U.id!==N.sessionId||(l.persist(),$.captureSession(N.nodeId,N.workspaceId,U,Q,g(N.sessionId),V))}function m(U,Q,$){return A(U,Q,$,void 0,!1,null).restored}function A(U,Q,$,V,N,h){const F=!N&&U!==void 0?Q.touchDetail(U.nodeId,U.workspaceId,U.sessionId):void 0;$(U===void 0?{version:0,paused:!1,items:[]}:Q.queueFor(U.nodeId,U.workspaceId,U.sessionId)??{version:0,paused:!1,items:[]}),V?.();const z=!N||U===void 0?F:Q.touchDetail(U.nodeId,U.workspaceId,U.sessionId);N&&(w.selectedRunId.value=void 0),R(z,h);const fe=U===void 0?void 0:w.runs.value.find(J=>J.sessionId===U.sessionId&&["STARTING","RUNNING","CANCELLING"].includes(J.status));return{restored:z!==void 0,activeRunId:fe?.id}}function L(U,Q,$,V){return A(U,Q,$,V,!0,void 0)}const y=x();function D(U,Q){const $=s.value;$?.nodeId===U&&$.workspaceId===Q.workspaceId&&r.value===Q.id&&(y.value=Q)}const E=ep({draft:l.queueEdit,persist:l.persist});E.rebind(),He(()=>l.queueEdit.value?.queueItemId,U=>{E.editingQueueItemId.value=U},{flush:"sync"});function H(){T.cancel(),p.cancelInitialRender(),E.rebind()}He([()=>e.draftTarget.value?.kind,()=>e.draftTarget.value?.nodeId,()=>e.draftTarget.value?.workspaceId,()=>e.draftTarget.value?.kind==="session"?e.draftTarget.value.sessionId:void 0],()=>{p.nextDetailRequest(),y.value=void 0,H()},{flush:"sync"}),Ht()!==void 0&&Zn(H);const X=()=>{const U=e.draftTarget.value;if(U===void 0)return;const Q=e.drafts.forTarget(U,e.pane),$=e.submissions.forTarget(U);let V=!1;return{...Q,createdSession:N=>{if(V||U.kind!=="workspace"||U.workspaceId!==N.workspaceId||(V=!0,e.submissions.forTarget(U)!==$))return;const h={...U,kind:"session",sessionId:N.id};e.submissions.transfer($,e.submissions.forTarget(h),"draft:",N.id,!0),e.attachments.moveDraft(U,h)}}};function Y(){k.reset(),r.value!==void 0&&p.projection.clearSession(r.value,w.runs.value.map(U=>U.id))}return{resetRealtime:Y,clearContent:b,clearSelection:C,prepareDraft:I,clearRuns:()=>w.replaceRuns([]),workspaceTarget:s,sessionId:r,acceptResolvedSession:D,run:w,queueProjection:k,conversation:p,draft:l,attachments:i,skillTokens:v,createReferences:U=>{const Q=cp(l.input,{nodeId:j(()=>s.value?.nodeId),workspaceId:j(()=>s.value?.workspaceId),ready:U.ready,request:U.request,sessions:{ready:U.sessionsReady,currentSessionId:r}},l.references);return Ht()!==void 0&&Zn(Q.cancelSearch),Q},captureDraft:X,createPerformance:U=>{const Q=Rh({view:U,nodeId:j(()=>s.value?.nodeId),workspaceId:j(()=>s.value?.workspaceId),sessionId:r});return Ht()!==void 0&&Zn(Q.dispose),Q},cancelRead:T.cancel,readSession:T.read,readInitialHistory:T.readInitialHistory,createPresentation:U=>{const{provisionalSessionId:Q,...$}=U;return Th({...$,workspaceTarget:s,selectedSessionId:j(()=>r.value??(e.draftTarget.value?.kind==="workspace"?Q.value:void 0)),selectedRunId:w.selectedRunId,runs:w.runs,turns:p.turns,attachments:i.attachments,sessionContextUsage:p.contextUsage,channelToken:p.channelToken,submissionPending:u.pending,runService:w})},createLoader:U=>{const{request:Q,sessionPathId:$,...V}=U;return kh({...V,runs:w.runs,replaceSession:(N,h)=>{const F=s.value?.nodeId;F!==void 0&&D(F,h),V.replaceSession(N,h)},readSession:(N,h)=>T.read(N,h,Q,$),readInitialHistory:(N,h)=>T.readInitialHistory(N,h,Q,$)})},registerShortcuts:Dh,createMessaging:({provisionalSessionId:U,...Q})=>lp({...Q,workspaceTarget:s,selectedSessionId:j(()=>r.value??(e.draftTarget.value?.kind==="workspace"?U.value:void 0)),attachments:i.attachments,attachmentsPending:j(()=>i.attachments.value.some($=>$.status!=="COMPLETED")),captureDraft:X,consumeAttachments:e.attachments.consume,retainAttachments:e.attachments.retainForSubmission,acceptRun:w.acceptRun,beginSubmission:u.begin,scrollToLatest:d.scrollToLatest,scrollToLatestAfterLayout:d.scrollToLatestAfterLayout}),createInteractions:U=>sp({...U,input:l.input,editRange:(Q,$,V)=>a(Q,$,V),handleConversationScroll:Q=>d.handleScroll(()=>{U.canLoadOlder()&&Q()}),scrollToLatest:d.scrollToLatest,scrollToLatestAfterLayout:d.scrollToLatestAfterLayout}),createWatch:U=>ip({...U,workspaceTarget:s,selectedSessionId:r,followConversation:d.following,scrollAfterLayout:d.scrollToLatestAfterLayout,applyRunsSnapshot:Q=>{const $=Q;w.mergeAuthoritativeSnapshot($,[...w.runs.value]);const V=$.find(N=>N.sessionId===r.value&&["STARTING","RUNNING","CANCELLING"].includes(N.status));V!==void 0&&U.openRun(V.id)}}),createQueueActions:U=>rp({...U,workspaceTarget:s,selectedSessionId:r,draggingQueueItemId:E.draggingQueueItemId,editingContent:E.editingContent,serializeEditedContent:E.serializeEditedContent,finishEditing:E.finishEditing,captureEditing:Q=>{const $=e.draftTarget.value,V=$===void 0?void 0:e.drafts.forTarget($,e.pane),N=V?.queueEdit.value;return()=>{V===void 0||N?.queueItemId!==Q||V.queueEdit.value!==N||(V.queueEdit.value=void 0,V.persist())}}}),projectQueue:U=>j(()=>({...U.value,items:r.value===void 0?[]:U.value.items.filter(Q=>Q.sessionId===r.value)})),createApprovals:U=>op({...U,workspaceTarget:s}),createConfiguration:U=>{const{sessions:Q,provisionalSessionId:$,...V}=U,N=j(()=>{const h=r.value??(e.draftTarget.value?.kind==="workspace"?$?.value:void 0);return Q.value.find(F=>F.id===h&&F.workspaceId===s.value?.workspaceId)??y.value});return{selectedSession:N,...yh({...V,selectedSession:N})}},createRunnerInteraction:U=>ap({...U,input:l.input,draftSessionOpen:j(()=>e.draftTarget.value?.kind==="workspace")}),createUserInput:U=>np({...U,workspaceTarget:s}),createRealtime:U=>fh({...U,workspaceTarget:s,selectedSessionId:r,selectedRunId:w.selectedRunId,runs:w.runs,channelToken:p.channelToken}),createRunnerChannel:U=>ph({...U,workspaceTarget:s,token:p.channelToken,input:p.channelInput,currentRevision:p.currentDetailRequest}),createPlan:U=>gh({...U,workspaceTarget:s,selectedSessionId:r,input:l.input,beginSubmission:u.begin,currentRevision:p.currentDetailRequest}),createContextCommands:U=>mh({...U,workspaceTarget:s,beginSubmission:u.begin,currentRevision:p.currentDetailRequest}),createHistoryMutation:U=>{const{selectedSession:Q,onDraftFilled:$,...V}=U;return hh({...V,current:()=>{const N=s.value,h=Q.value;return t?.active===!1||N===void 0||h===void 0||h.id!==r.value||h.workspaceId!==N.workspaceId?void 0:{nodeId:N.nodeId,session:h}},currentRevision:p.currentDetailRequest,beginSubmission:N=>u.begin(N,void 0,null),draft:{read:()=>l.input.value,restore:N=>{l.input.value=N},fill:(N,h)=>{l.input.value=N,$(N,h)}}})},createRunControl:U=>tp({...U,workspaceTarget:s,selectedSessionId:r,selectedRunId:w.selectedRunId,runService:w,currentRevision:p.currentDetailRequest}),createConversationWindow:U=>Nh({...U,workspaceTarget:s,selectedSessionId:r,turns:p.turns,nextCursor:p.nextCursor,loadingOlder:p.loadingOlder,capturePrependAnchor:d.capturePrependAnchor,projection:p.projection}),draggingAttachments:x(!1),captureDetail:g,restoreDetail:R,saveCachedSession:S,restoreCachedSession:m,prepareSession:L,hasContent:()=>p.turns.value.some(U=>U.items.length>0),queue:E,submission:u,scroll:d,setInputFocus:U=>n=U,focusInput:U=>n(U),setRangeEditor:U=>a=U,editRange:(U,Q,$)=>a(U,Q,$)}}function Es(e){const{state:t}=e,n=x(!1),a=x(!1),r=x(!1),s=x();let i;const l=j(()=>t.conversation.loadingInitial.value||a.value),v=e.secondary===void 0?{...e.position,loading:l,initialContentLoading:()=>i?.loadingContent.value??t.conversation.loadingInitial.value}:{provisionalSessionId:s,draftOpen:r,loading:l,initialContentLoading:()=>n.value};function u(){const pe=e.watchConnection.coordinator();e.secondary===void 0?pe?.stopSession():pe?.stopSecondarySession()}async function d(pe){const Ce=e.watchConnection.coordinator();return Ce===void 0?!1:(await(e.secondary===void 0?Ce.beginSession(pe):Ce.beginSecondarySession(pe)),!0)}function w(){return(e.secondary===void 0?e.view.value==="nodes":e.secondary.visible.value)&&(typeof document>"u"||document.visibilityState==="visible")}function k(){const pe=e.secondary?.target.value;pe?.kind!=="session"||!w()||v.draftOpen.value||Promise.resolve(e.watchConnection.coordinator()?.restartSecondarySession(pe.sessionId)).catch(()=>{})}const T=e.discovery.projection.sessions,p={connected:e.watchConnection.connected,nodes:e.capabilities.nodes,nodeManifest:e.capabilities.manifest,manifestLoading:e.capabilities.manifestLoading,skillsLoading:e.skills.loading,skillsFailed:e.skills.failed,promptsLoading:e.prompts.loading,promptsFailed:e.prompts.failed,runnerProfilesLoading:e.profiles.loading,runnerProfilesFailed:e.profiles.failed,shouldDisplayItem:th,formatTokenCount:Uf,formatPercentage:Ff},g={...p,...v,sessions:T},R={...p,initialContentLoading:v.initialContentLoading};function b(pe,Ce,je,ze){const vt=e.secondary,Rt=vt?.target.value;if(vt===void 0||Rt?.kind!=="session"||Rt.nodeId!==pe||Rt.workspaceId!==Ce||Rt.sessionId!==je||ze.workspaceId!==Ce)return;const ht=T.value.some(Qt=>Qt.id===je&&Qt.workspaceId===Ce);je!==ze.id&&(ht||e.identity.transfer(pe,Ce,je,ze.id),!vt.replaceAsideSession(Rt,ze.id))||(t.acceptResolvedSession(pe,ze),ht&&e.identity.replace(pe,Ce,je,ze))}function C(pe,Ce){const je=e.secondary?.target.value;je?.kind==="session"&&b(je.nodeId,je.workspaceId,pe,Ce)}function I(pe){const Ce=t.workspaceTarget.value;if(Ce===void 0)return;if(e.secondary!==void 0)return t.sessionId.value===pe?Ce:void 0;const je=T.value.find(ze=>ze.id===pe);return je===void 0?void 0:{nodeId:Ce.nodeId,workspaceId:je.workspaceId}}const S=t.createConfiguration({sessions:T,profiles:e.profiles.profiles,effortLabel:qi,provisionalSessionId:g.provisionalSessionId}),m=t.createRunnerInteraction({skills:e.skills.skills,quickPrompts:e.prompts.prompts,selectedSession:S.selectedSession,profile:S.profile,commandAvailable:pe=>y.canExecuteRunnerCommand(pe)});function A(){t.prepareDraft(),m.reset()}const L=t.projectQueue(t.queueProjection.queue),y=t.createPresentation({...g,selectedSession:S.selectedSession,composerProfile:S.profile,composerModels:S.models,composerAccessOptions:S.accessOptions,currentSessionQueue:L}),{currentWorkspaceRevision:D,...E}=e.queue,H={notice:E.notice,request:E.request,errorMessage:E.errorMessage,beginSubmission:t.submission.begin},X=Dl(j(()=>t.workspaceTarget.value?.nodeId),{fileAttachments:{target:j(()=>{const pe=t.workspaceTarget.value;return pe===void 0?void 0:JSON.stringify([pe.nodeId,pe.workspaceId,t.sessionId.value])}),revalidate:pe=>e.files.attachments(t.workspaceTarget.value).revalidate(pe),sourceUrl:(pe,Ce)=>e.files.attachments(t.workspaceTarget.value).sourceUrl(pe,Ce),onError:(pe,Ce)=>et(Cr(pe,Ce),"error",pe)}});He(t.conversation.turns,pe=>X.retain(pe),{immediate:!0}),Ht()!==void 0&&Zn(X.dispose);const Y=nc({canAcceptFiles:()=>!0,addFiles:t.attachments.add,rejectDirectory:()=>H.notice(c("generated.workbenchNewSessionController.foldersCannotBeAttachedCompressTheFolder"),"warning"),setDragging:pe=>{t.draggingAttachments.value=pe}}),U=t.createQueueActions({...E,queue:t.queueProjection.queue,currentSessionQueue:L,currentSelectionRevision:()=>t.conversation.currentDetailRequest()+D(),beginSubmission:t.submission.begin}),Q=ah({workspaceTarget:t.workspaceTarget,configurationAvailable:()=>!y.sessionControlsBusy.value,selectedSession:S.selectedSession,sessions:T,replaceSessionProjection:e.discovery.projection.replaceExisting,profiles:e.profiles.profiles,draftOpen:g.draftOpen,loading:g.loading,runner:S.runner,modelId:S.modelId,effort:S.effort,access:S.access,setModel:S.selectModel,setEffort:S.selectEffort,setAccess:S.selectAccess,clearModelEffortSelection:S.clearModelEffortSelection,codexFastEnabled:m.codexFastEnabled,profileService:e.profiles,normalize:S.normalize,apply:S.apply,ensureDraftSupported:e.ensureDraftSupported,clearRunnerCommand:m.clearCommand,request:H.request,notice:H.notice,errorMessage:H.errorMessage,sessionPathId:e.sessionPathId}),$=j(()=>e.profiles.profiles.value.filter(pe=>pe.capabilities.includes("turn.start")).map(pe=>({value:pe.runner,label:$n(pe.runner)})));function V(pe){y.composerConfigurationDisabled.value||Q.selectEffort(pe,S.efforts.value)}function N(pe){y.composerConfigurationDisabled.value||Q.selectModel(pe,S.models.value)}function h(pe){y.composerAccessDisabled.value||Q.selectAccess(pe,S.accessOptions.value)}function F(pe){Q.selectModelEffort(pe,V,N)}const z=t.createPerformance(e.view),fe=t.createUserInput({...H,missingRunError:pe=>gt(pe)==="RUN_NOT_FOUND"}),J=t.createApprovals(H),re=t.createRunControl({...H,activeRun:y.activeComposerRun,sessionPathId:e.sessionPathId}),ge=t.createConversationWindow({pageSize:$f,recentSegmentWindowSize:xf,replaceCached:(pe,Ce,je)=>{const ze=I(pe);ze!==void 0&&e.cache.replaceTurns(ze.nodeId,ze.workspaceId,pe,Ce,je)},request:H.request,sessionPathId:e.sessionPathId,notice:H.notice,errorMessage:H.errorMessage}),ce=t.createHistoryMutation({selectedSession:S.selectedSession,canRewind:()=>y.rewindConversationEnabled.value,canRollback:()=>y.rollbackConversationEnabled.value,confirmRewind:async pe=>{try{return await _i.confirm(c(pe?"generated.workbenchPageController.createANewSessionBranchBeforeThis":"generated.workbenchPageController.createANewSessionBranchThatRetains"),c("generated.workbenchPageController.createSessionBranch"),{closeIcon:qe("close"),icon:qe("warning"),confirmButtonText:c("generated.workbenchPageController.createBranch"),cancelButtonText:c("generated.workbenchPageController.cancel"),type:"warning"}),!0}catch{return!1}},confirmRollback:async()=>{try{return await _i.confirm(c("generated.workbenchPageController.rollbackConversationWarning"),c("generated.workbenchPageController.rollbackConversation"),{closeIcon:qe("close"),icon:qe("warning"),confirmButtonText:c("generated.workbenchPageController.confirmRollbackConversation"),cancelButtonText:c("generated.workbenchPageController.cancel"),type:"warning"}),!0}catch{return!1}},request:H.request,sessionPathId:e.sessionPathId,onDraftFilled:e.history.onDraftFilled,replaceSession:e.secondary===void 0?e.history.replaceSession:C,openSession:e.history.openSession,invalidateDetail:(pe,Ce)=>e.cache.invalidateDetail(pe,Ce.workspaceId,Ce.id),clearHistory:pe=>{t.conversation.projection.clearSession(pe,t.run.runs.value.map(Ce=>Ce.id)),t.conversation.projection.restoreWindow([],null),t.run.replaceRuns([]),u()}});He(ce.pending,pe=>{a.value=pe},{flush:"sync"});async function oe(pe,Ce){const je=await ce.rewind(pe,Ce);je.status==="APPLIED"?et(c("generated.workbenchPageController.sessionBranchCreated"),"success"):je.status==="FAILED"&&et(c(je.phase==="REQUEST"?"generated.workbenchPageController.unableToCreateSessionBranch":"generated.workbenchPageController.sessionBranchCreatedButLoadFailed",{value0:H.errorMessage(je.error)}),"error",je.error)}async function P(pe,Ce){const je=await ce.rollback(pe,Ce);je.status==="FAILED"&&et(c(je.phase==="REQUEST"?"generated.workbenchPageController.unableToRollbackConversation":"generated.workbenchPageController.rollbackCompletedButLoadFailed",{value0:H.errorMessage(je.error)}),"error",je.error)}const G=t.createRunnerChannel({selectedSession:S.selectedSession,loading:g.loading,notice:H.notice,request:H.request,sessionPathId:e.sessionPathId,errorMessage:H.errorMessage}),ue=t.createRealtime({syncTurnStatus:t.conversation.projection.syncRunStatus,refreshChannelToken:G.refreshClaudeChannelToken,syncCachedRunStatus:(pe,Ce,je)=>{const ze=I(pe);ze!==void 0&&e.cache.syncRunStatus(ze.nodeId,ze.workspaceId,pe,Ce,je)}}),ne=fp({...e.events,setNodeConnection:e.capabilities.setNodeConnection,cacheQueue:e.cache.cacheQueue,mergeQueue:t.queueProjection.merge,sessions:T,workspaceTarget:t.workspaceTarget,selectedSessionId:t.sessionId,selectedSession:S.selectedSession,conversationNextCursor:t.conversation.nextCursor,mergeSessions:pe=>{const Ce=t.workspaceTarget.value?.nodeId;if(Ce!==void 0)for(const ze of pe)t.acceptResolvedSession(Ce,ze);const je=e.secondary===void 0?pe:pe.filter(ze=>T.value.some(vt=>vt.id===ze.id&&vt.workspaceId===ze.workspaceId));je.length>0&&e.discovery.merge(je)},settleSessionRuns:t.run.settleSessionRuns,observeManagedSessionActive:t.run.observeManagedSessionActive,updateContext:(pe,Ce)=>{const je=t.workspaceTarget.value;je!==void 0&&e.cache.updateContext(je.nodeId,je.workspaceId,pe,Ce),pe===t.sessionId.value&&(t.conversation.contextUsage.value=Ce)},syncTurnStatus:ue.syncConversationTurnStatus,cacheRun:pe=>{const Ce=t.workspaceTarget.value;Ce!==void 0&&e.cache.cacheRun(Ce.nodeId,pe.workspaceId??Ce.workspaceId,pe)},acceptRun:t.run.acceptRun,openRun:ue.openRun,markLiveTurn:t.conversation.projection.markLive,cacheTurn:pe=>{const Ce=t.workspaceTarget.value;Ce!==void 0&&e.cache.cacheTurn(Ce.nodeId,Ce.workspaceId,pe)},mergeTurns:t.conversation.projection.mergeLatest,applyConversationSnapshot:ge.applySnapshot,mergeItem:(pe,Ce,je,ze)=>{const vt=t.conversation.projection.mergeItem(pe,Ce,je,ze);if(vt&&pp(Ce)){const Rt=gp(Ce,t.conversation.contextUsage.value);t.conversation.contextUsage.value=Rt;const ht=t.workspaceTarget.value,Qt=t.sessionId.value;ht!==void 0&&Qt!==void 0&&e.cache.updateContext(ht.nodeId,ht.workspaceId,Qt,Rt)}return vt},mergeTextDelta:t.conversation.projection.mergeTextDelta,receivePerformance:z.receive}),M=t.createWatch({...e.watch,applyEvent:ne.apply,request:H.request,sessionPathId:e.sessionPathId,openRun:ue.openRun,applySnapshot:ge.applySnapshot});function ee(){const pe=j(()=>{const Ce=t.workspaceTarget.value,je=t.sessionId.value;return Ce===void 0||je===void 0?void 0:{...Ce,sessionId:je}});return wh({target:()=>pe.value,revision:t.conversation.currentDetailRequest,visible:w,waitReady:e.watchConnection.waitReady,begin:async Ce=>await d(Ce)&&M.hasInitialSessionSnapshot(Ce)})}function le(pe){const Ce=t.createLoader({request:H.request,sessionPathId:e.sessionPathId,applyComposerConfiguration:Q.applyConfiguration,replaceSession:e.secondary===void 0?e.messaging.replaceSession:C,markActive:pe.markActive,openRun:ue.openRun,canWatch:M.canWatchSessionHistory,beginWatch:ee(),applySnapshot:ge.applySnapshot,mergeTurns:t.conversation.projection.mergeLatest,saveCurrent:pe.saveCurrent}),je=ic({content:{hasContent:t.hasContent,openRun:ue.openRun},loading:t.conversation.loadingInitial,failed:t.conversation.initialLoadFailed,failureCause:t.conversation.initialFailureCause,positioning:t.scroll.positioningInitialConversation,beginInitialRender:t.conversation.beginInitialRender,scrollLatest:()=>{const ze=t.conversation.currentDetailRequest();return t.scroll.scrollToLatestAfterLayout(()=>t.conversation.currentDetailRequest()===ze)}});return Lh({workspaceTarget:t.workspaceTarget,sessionId:t.sessionId,currentRequest:t.conversation.currentDetailRequest,nextRequest:t.conversation.nextDetailRequest,loading:t.conversation.loadingInitial,failed:t.conversation.initialLoadFailed,hasInitialSnapshot:M.hasInitialSessionSnapshot,prepareSession:(ze,vt,Rt,ht)=>t.prepareSession(vt===void 0?void 0:{nodeId:ze,workspaceId:vt,sessionId:Rt},e.cache,t.queueProjection.restore,()=>Q.applyConfiguration(ht,!1)),resetInteraction:()=>{m.composerMode.value="message",m.selectedCommand.value=void 0,m.commandPickerOpen.value=!1},loader:Ce,renderer:je,ports:pe})}i=e.opening===void 0?void 0:le(e.opening);function Ee(pe){const Ce=()=>t.saveCachedSession(S.selectedSession.value,t.queueProjection.queue.value,e.cache,pe.maxDetails),je=t.createLoader({request:H.request,sessionPathId:e.sessionPathId,replaceSession:C,applyComposerConfiguration:Q.applyConfiguration,markActive:vt=>{const Rt=pe.target.value;Rt!==void 0&&t.acceptResolvedSession(Rt.nodeId,{...vt,activity:"MANAGED_ACTIVE"})},openRun:ue.openRun,canWatch:M.canWatchSessionHistory,beginWatch:ee(),applySnapshot:ge.applySnapshot,mergeTurns:t.conversation.projection.mergeLatest,saveCurrent:Ce});return{...Ih({target:pe.target,visible:pe.visible,loading:t.conversation.loadingInitial,loadingContent:n,failed:t.conversation.initialLoadFailed,failureCause:t.conversation.initialFailureCause,currentRequest:t.conversation.currentDetailRequest,loader:je,restore:vt=>t.restoreCachedSession(vt,e.cache,t.queueProjection.restore),save:Ce,cancel:()=>{t.cancelRead(),t.conversation.cancelInitialRender()},stopWatch:u,beginInitialRender:t.conversation.beginInitialRender,scrollElement:()=>t.scroll.element.value,scrollLatest:vt=>t.scroll.scrollToLatestAfterLayout(vt),markRead:pe.markRead}),save:Ce}}const xe=e.secondary===void 0?void 0:Ee(e.secondary),Me=vh({workspaceTarget:t.workspaceTarget,selectedSessionId:t.sessionId,currentSelectionRevision:t.conversation.currentDetailRequest,acceptRun:t.run.acceptRun,captureCacheTarget:e.cache.captureCommandTarget,request:H.request,sessionPathId:e.sessionPathId,acceptSession:(pe,Ce,je,ze,vt)=>{e.secondary!==void 0&&vt?b(pe,Ce,je,ze):e.secondary===void 0&&t.workspaceTarget.value?.nodeId===pe&&t.workspaceTarget.value.workspaceId===Ce&&(t.sessionId.value!==je||vt)?e.identity.replace(pe,Ce,je,ze):e.identity.transfer(pe,Ce,je,ze.id)},configure:Q.applyConfiguration,resetHistory:async(pe,Ce)=>{e.cache.invalidateDetail(pe,Ce.workspaceId,Ce.id),t.conversation.projection.clearSession(Ce.id,t.run.runs.value.map(je=>je.id)),t.conversation.projection.restoreWindow([],null),t.run.replaceRuns([]),u(),await e.commands.reopen(Ce.id)},openRun:ue.openRun,notifyGoalAlreadyActive:()=>et(c("goal.alreadyActive"),"info")}),Se=(pe,Ce,je)=>Me.execute(pe,Ce.id,je,Ce.interaction==="DESTRUCTIVE_ACTION"),ye=t.createMessaging({removeSessionExact:e.discovery.projection.removeExact,...e.messaging,sessions:T,migrateSessionCache:(pe,Ce,je,ze,vt)=>{e.identity.transfer(pe,Ce,je,ze),e.cache.migrateSession(pe,Ce,je,ze,vt)},cacheRun:e.cache.cacheRun,replaceSession:e.secondary===void 0?e.messaging.replaceSession:C,provisionalSessionId:j(()=>{const pe=g.provisionalSessionId.value;return pe?.startsWith("draft:")?pe:void 0}),selectedSession:S.selectedSession,composerOpen:y.composerSessionOpen,composerBusy:y.composerSessionBusy,commandAvailable:y.canExecuteRunnerCommand,submissionAvailable:()=>!g.loading.value,draftOpen:g.draftOpen,selectedCommand:m.selectedCommand,commandPickerOpen:m.commandPickerOpen,deferredCommands:m.deferredDraftCommands,fastEnabled:m.codexFastEnabled,notice:H.notice,request:H.request,stageDraftCommand:(pe,Ce)=>{const je=m.prepareDraftCommand(pe,Ce);je.goalAlreadyActive?et(c("goal.alreadyActive"),"info"):je.access!==void 0&&S.selectAccess(je.access)},executeCommand:Se,sessionPathId:e.sessionPathId,openRun:ue.openRun,errorMessage:H.errorMessage}),Fe=(pe,Ce=!1,je)=>ye.send(pe,Ce,je),Ye=pe=>nh({item:pe,turns:y.displayedConversationTurns.value,commandStates:S.selectedSession.value?.commandStates,steering:y.mustSteerCurrentTurn.value,canStartTurn:y.canStartTurn.value}),nt=j(()=>y.mustSteerCurrentTurn.value?void 0:S.selectedSession.value?.commandStates?.filter(pe=>pe.active&&pe.continuation!==null&&pe.continuation!==void 0).map(Fl)[0]),ae=j(()=>S.selectedSession.value?.commandStates?.find(pe=>pe.commandId==="goal"&&pe.active&&pe.goal?.status==="active")),me=t.createPlan({selectedSession:S.selectedSession,selectedCommand:m.selectedCommand,commandPickerOpen:m.commandPickerOpen,notice:H.notice,continuationFor:Ye,execute:Me.execute,send:Fe,errorMessage:H.errorMessage}),Pe=t.createContextCommands({selectedSession:S.selectedSession,compactCommand:y.compactCommand,canCompact:y.canCompactContext,contextUsageLabel:y.contextUsageLabel,notice:H.notice,request:H.request,execute:Se,errorMessage:H.errorMessage}),Ue=j(()=>y.nodeReady.value&&g.nodeManifest.value?.files?.available===!0),Qe=t.createReferences({request:H.request,ready:()=>Ue.value,sessionsReady:()=>y.nodeReady.value}),Te=j(()=>t.sessionId.value??g.provisionalSessionId.value),Ge=j(()=>!!(e.completion.automaticSupported()&&t.sessionId.value&&!t.conversation.loadingInitial.value&&!t.conversation.initialLoadFailed.value)),_e=e.completion.client.bind({automaticKey:()=>Ge.value?hp(t.conversation.turns.value):void 0,automaticTerminalKey:()=>Ge.value?mp(t.conversation.turns.value):void 0,readContextRevision:()=>{const pe=t.conversation.turns.value.at(-1);return JSON.stringify([pe?.status,pe?.items.length,pe?.items.slice(-32).map(Ce=>[Ce.id,Ce.status,Ce.completedAt]),t.queueProjection.queue.value.version,S.selectedSession.value?.commandStates?.map(Ce=>[Ce.commandId,Ce.active,Ce.detail,Ce.goal?.id,Ce.goal?.revision,Ce.goal?.status]),e.completion.attention()])},attention:e.completion.attention,enabled:e.completion.enabled,target:()=>{const pe=t.workspaceTarget.value;return pe===void 0?void 0:{nodeId:pe.nodeId,target:{kind:"WORKSPACE",workspaceId:pe.workspaceId},runner:S.runner.value,sessionId:t.sessionId.value??null}}}),tt=j(()=>t.run.runs.value.filter(pe=>pe.sessionId===Te.value)),Xe=j(()=>{const pe=S.selectedSession.value;return pe!==void 0&&!t.conversation.initialLoadFailed.value&&M.canWatchSessionHistory(pe)&&!M.hasInitialSessionSnapshot(pe.id)}),Re=j(()=>t.submission.pending.value&&t.submission.context.value===yp(Te.value)),de=j(()=>y.canInterruptTurn.value&&!Re.value),Ae=(pe,Ce)=>{t.skillTokens.select(pe),t.focusInput(Ce)},he=t.createInteractions({mobileViewport:e.mobileViewport,runnerProfilesLoading:e.profiles.loading,runnerProfilesFailed:e.profiles.failed,hasRunnerProfile:e.profiles.has,ensureComposerSkills:e.skills.ensureFresh,ensureQuickPrompts:()=>{e.prompts.refresh()},workspaceTarget:t.workspaceTarget,filesReady:Ue,canInterruptTurn:de,commandPickerOpen:m.commandPickerOpen,fileReferences:Qe,runnerInteractions:m,selectSkill:Ae,stopActiveRun:re.stopActiveRun,sendMessage:(pe,Ce,je)=>{Fe(pe?"REPLACE_CURRENT":void 0,Ce,je)},loadRunnerProfiles:Q.loadProfiles,loadOlderConversationTurns:ge.paging.loadOlderConversationTurns,canLoadOlder:()=>!ge.paging.olderHistoryError.value});function q(pe){m.selectCommand(pe,Ce=>{Fe(void 0,Ce)})}function te(pe){m.selectSkill(pe,Ae)}function _(pe){m.closeCommandState(pe,(Ce,je)=>{ye.send(void 0,!0,void 0,{command:Ce,input:je})})}async function se(pe){const Ce=S.selectedSession.value;Ce!==void 0&&pe.trim().length>0&&await Me.execute(Ce,"goal",`/goal ${pe.trim()}`)}async function be(){const pe=S.selectedSession.value;pe!==void 0&&await Me.execute(pe,"goal","/goal --clear")}function Oe(pe){const Ce=t.workspaceTarget.value,je=t.sessionId.value;if(Ce===void 0||je===void 0||!y.nodeReady.value)return;const ze=Dr(pe,{...Ce,sessionId:je,scope:"SESSION"});ze!==void 0&&e.files.openChange(ze)}function We(pe,Ce,je,ze=!1,vt){if(!ze&&vt?.mime.startsWith("image/")){X.openFileAttachment(vt);return}e.files.openFile(pe,Ce,je,ze)}const Ie={state:t,opening:i,secondary:xe,configuration:S,runner:m,presentation:y,references:Qe,interactions:he,attachmentInput:Y,images:X,completion:_e,events:ne,submitting:Re,canInterrupt:de,filesReady:Ue,status:R,copyMessage:(pe,Ce)=>ac(pe,Ce,H.notice),openFileChange:Oe,openAgentFile:We,terminalReady:j(()=>y.nodeReady.value&&g.nodeManifest.value?.terminal?.available===!0&&g.nodeManifest.value.terminal.supportsReplay===!0),effortLabel:qi,request:H.request,loading:g.loading,draftOpen:g.draftOpen,nodeManifest:g.nodeManifest,runnerProfilesLoading:g.runnerProfilesLoading,runnerProfilesFailed:g.runnerProfilesFailed,mobileViewport:e.mobileViewport,selectedWorkspace:e.messaging.selectedWorkspace,selectedSessionId:Te,conversationRuns:tt,conversationSyncPending:Xe,composer:Q,runnerOptions:$,selectEffort:V,selectModel:N,selectAccess:h,selectModelEffort:F,currentSessionQueue:L,queueActions:U,performance:z,userInput:fe,approvals:J,runControl:re,conversationWindow:ge,history:ce,rewindConversation:oe,rollbackConversation:P,channel:G,realtime:ue,watch:M,commands:Me,messaging:ye,sendMessage:Fe,plan:me,context:Pe,activePlanContinuation:nt,activeGoal:ae,selectCommand:q,selectSkill:te,selectQuickPrompt:he.selectQuickPrompt,closeCommandState:_,editGoal:se,clearGoal:be},st={imageResourceUrl:j(()=>{const pe=t.workspaceTarget.value;if(pe===void 0)return;const Ce=e.files.attachments(pe);return je=>Ce.sourceUrl({path:je})}),state:{attachments:t.attachments,conversation:t.conversation,draft:t.draft,draggingAttachments:t.draggingAttachments,queue:t.queue,registerShortcuts:t.registerShortcuts,scroll:t.scroll,setInputFocus:t.setInputFocus,setRangeEditor:t.setRangeEditor,skillTokens:t.skillTokens,workspaceTarget:t.workspaceTarget},activeGoal:Ie.activeGoal,activePlanContinuation:Ie.activePlanContinuation,approvals:Ie.approvals,attachmentInput:Ie.attachmentInput,canInterrupt:Ie.canInterrupt,clearGoal:Ie.clearGoal,closeCommandState:Ie.closeCommandState,completion:Ie.completion,composer:Ie.composer,configuration:Ie.configuration,context:Ie.context,conversationRuns:Ie.conversationRuns,conversationSyncPending:Ie.conversationSyncPending,conversationWindow:Ie.conversationWindow,copyMessage:Ie.copyMessage,currentSessionQueue:Ie.currentSessionQueue,draftOpen:Ie.draftOpen,editGoal:Ie.editGoal,effortLabel:Ie.effortLabel,filesReady:Ie.filesReady,images:Ie.images,interactions:Ie.interactions,loading:Ie.loading,mobileViewport:Ie.mobileViewport,nodeManifest:Ie.nodeManifest,openAgentFile:Ie.openAgentFile,openFileChange:Ie.openFileChange,performance:Ie.performance,plan:Ie.plan,presentation:Ie.presentation,queueActions:Ie.queueActions,references:Ie.references,rewindConversation:Ie.rewindConversation,rollbackConversation:Ie.rollbackConversation,runControl:Ie.runControl,runner:Ie.runner,runnerOptions:Ie.runnerOptions,runnerProfilesFailed:Ie.runnerProfilesFailed,runnerProfilesLoading:Ie.runnerProfilesLoading,selectAccess:Ie.selectAccess,selectCommand:Ie.selectCommand,selectModelEffort:Ie.selectModelEffort,selectQuickPrompt:Ie.selectQuickPrompt,selectSkill:Ie.selectSkill,selectedSessionId:Ie.selectedSessionId,selectedWorkspace:Ie.selectedWorkspace,sendMessage:Ie.sendMessage,status:Ie.status,submitting:Ie.submitting,terminalReady:Ie.terminalReady,userInput:Ie.userInput};return{...Ie,view:st,prepareDraft:A,restoreVisibleWatch:k,focusDraft:()=>t.focusInput(t.draft.input.value.length)}}function Lh(e){const t=Ht(),{loader:n,renderer:a,ports:r}=e;let s;const i=(u,d,w,k)=>(t===void 0||t.active)&&u===e.currentRequest()&&e.workspaceTarget.value?.nodeId===d&&(k===void 0||e.workspaceTarget.value.workspaceId===k)&&e.sessionId.value===w;async function l(u,d={}){const w=e.workspaceTarget.value?.nodeId,k=e.workspaceTarget.value?.workspaceId;if(w===void 0)return;const T={requestId:e.nextRequest(),preparing:!0,nodeId:w,workspaceId:k,sessionId:u,markRead:!1};s=T,a.begin();const{switching:p,session:g}=r.navigate(u,w,d);let R=!1,b;if(p){e.resetInteraction(),r.setSession(void 0);const S=e.prepareSession(w,k,u,g);R=S.restored,b=S.activeRunId}if(r.setSession(u),T.preparing=!1,s!==T)return;if(e.workspaceTarget.value?.nodeId!==w||e.sessionId.value!==u){s=void 0;return}const C=e.currentRequest();T.requestId=C;const I=e.workspaceTarget.value.workspaceId;await a.openRestored({loader:n,nodeId:w,workspaceId:I,sessionId:u,requestId:C,switching:p,restored:R,activeRunId:b,deferInitialScroll:d.deferInitialScroll===!0,throwOnFailure:d.throwOnFailure===!0,isCurrent:()=>i(C,w,u,I),onResolved:S=>{T.session=S,d.onSessionResolved?.(S),T.onSessionResolved?.(S),delete T.onSessionResolved},onSettle:()=>{s===T&&(s=void 0)},onLoaded:S=>{I!==void 0&&(d.markReadAfterOpen||T.markRead)&&S.workspaceId===k&&i(C,w,u,k)&&Promise.resolve(r.markRead(w,k,S.id)).catch(()=>{})}})}async function v(u,d){const w=e.workspaceTarget.value;if(w!==void 0){if(e.sessionId.value===u&&!r.draftOpen.value){if(r.closeMobile(),e.loading.value){(s?.preparing===!0||s?.requestId===e.currentRequest())&&s.nodeId===w.nodeId&&s.workspaceId===w.workspaceId&&s.sessionId===u&&(d!==void 0&&(s.session!==void 0?d(s.session):s.onSessionResolved=d),s.markRead=!0);return}if(!e.failed.value&&e.hasInitialSnapshot(u)){const k=r.sessions.value.find(T=>T.id===u&&T.workspaceId===w.workspaceId);if(k===void 0&&d!==void 0){await l(u,{markReadAfterOpen:!0,onSessionResolved:d});return}k!==void 0&&d?.(k),Promise.resolve(r.markRead(w.nodeId,w.workspaceId,u)).catch(()=>{});return}}await l(u,{markReadAfterOpen:!0,...d===void 0?{}:{onSessionResolved:d}})}}return{open:l,openTab:v,loadingContent:a.loadingContent}}function Rs(e){const t=Oh(e);let n;function a(r,s){const i={client:r.completion.client,enabled:()=>r.completion.enabled.value&&r.completion.ready.value&&r.completion.host.value?.capabilities.promptCompletion?.apiVersion===1&&r.completion.host.value?.capabilities.promptCompletion?.contextVersion===3,automaticSupported:()=>r.completion.host.value?.capabilities.promptCompletion?.automaticTriggers===!0,attention:()=>r.completion.host.value?.capabilities.promptCompletion?.contextVersion===3?r.completion.attention():[]},l={heartbeatMs:15e3,requestTimeoutMs:1e4,confirmationTimeoutMs:45e3,enabled:()=>s.visible.value,workbenchConnectionId:r.connectionId,refreshSnapshot:s.refresh,openSession:s.open},v={currentWorkspaceRevision:r.workspaceRevision,request:r.request,notice:r.notice,errorMessage:r.errorMessage,missingQueueItemError:d=>gt(d)==="QUEUE_ITEM_INVALID"},u={...r,watchConnection:{...r.watchConnection,coordinator:()=>n},completion:i,state:t,queue:v,sessionPathId:Zo};return s.kind==="main"?(He(s.visible,d=>{if(!d){n?.stopSession();return}const w=s.selection.sessionId.value;r.view.value==="nodes"&&t.workspaceTarget.value!==void 0&&!t.conversation.loadingInitial.value&&!s.selection.draftOpen.value&&w!==void 0&&(typeof document>"u"||document.visibilityState==="visible")&&Promise.resolve(n?.restartSession(w)).catch(()=>{})},{flush:"sync"}),Es({...u,opening:{navigate:(...d)=>s.navigation().prepareTarget(...d),setSession:s.selection.setSession,sessions:r.discovery.projection.sessions,draftOpen:s.selection.draftOpen,closeMobile:s.closeMobile,saveCurrent:s.saveCurrent,markActive:r.discovery.markManagedActive,markRead:s.markRead},position:{provisionalSessionId:s.selection.sessionId,draftOpen:s.selection.draftOpen},watch:l,commands:{reopen:d=>s.open(d,{preserveMobileWorkspaceSurface:!0,deferInitialScroll:!0})},messaging:{selectedWorkspace:r.selectedWorkspace,draft:{restore:()=>s.navigation().restoreDraftSelection(),create:s.createDraft},replaceSession:s.replaceSession,temporaryTitle:Ki,beginSessionWatch:s.beginWatch},history:{onDraftFilled:(d,w)=>{w==="rollback"&&s.saveCurrent(),t.focusInput(d.length)},replaceSession:s.replaceSession,openSession:(d,w)=>s.open(d,{...w,throwOnFailure:!0})}})):Es({...u,secondary:{target:s.target,visible:s.visible,maxDetails:5,markRead:s.markRead,replaceAsideSession:s.replaceSession},watch:{...l,position:"secondary"},commands:{reopen:s.open},messaging:{selectedWorkspace:r.selectedWorkspace,temporaryTitle:Ki,beginSessionWatch:d=>{n?.restartSecondarySession(d)}},history:{onDraftFilled:d=>{t.draft.persist(),t.focusInput(d.length)},openSession:s.open}})}return{state:t,connect:a,connectWatchCoordinator:r=>{n=r}}}function Wh(e){const t=x([]),n=x(""),a=x([]),r=x(),s=x(!1),i=x({}),l=new Map,v=new Map;let u=0,d=0;function w(E,H){i.value={...i.value,[E]:H},t.value=t.value.map(X=>X.id===E?{...X,upgradeProgress:H}:X)}function k(E){t.value=t.value.map(H=>H.id===E.id?E:H)}function T(E){t.value=t.value.filter(H=>H.id!==E)}function p(E,H){const X=t.value.some(Y=>Y.id===E&&Y.connected);return t.value=t.value.map(Y=>Y.id===E?{...Y,connected:H}:Y),X}function g(E){a.value=[...E]}function R(){i.value={}}function b(){t.value=[],n.value="",R()}function C(E){return l.get(E)}function I(E){l.delete(E),e.workspaceTarget.value?.nodeId===E&&(r.value=void 0)}function S(E){v.delete(E),I(E),e.workspaceTarget.value?.nodeId===E&&(s.value=!1)}function m(E){for(const H of new Set([...l.keys(),...v.keys()]))E.has(H)||(l.delete(H),v.delete(H))}async function A(){const E=++d;try{const H=(await e.request("/api/nodes")).nodes;if(E!==d)return;const X=new Set(t.value.filter(Y=>!Y.connected).map(Y=>Y.id));t.value=H;for(const Y of H)Y.connected&&X.has(Y.id)&&e.onNodeConnected?.(Y.id)}catch(H){if(E!==d)return;e.notice(c("generated.workbenchCapabilityService.unableToLoadNodes",{value0:e.errorMessage(H)}),"error",H)}}async function L(){try{const E=await e.request("/api/workbench-capabilities");n.value=typeof E.serverVersion=="string"&&E.serverVersion.length>0?`v${E.serverVersion.replace(/^v/i,"")}`:""}catch{n.value=""}}async function y(E){const H=++u;v.set(E,H);const X=()=>v.get(E)===H;e.workspaceTarget.value?.nodeId===E&&(s.value=r.value===void 0);try{const Y=await e.request(`/api/nodes/${encodeURIComponent(E)}/workbench-capabilities`);X()&&(l.set(E,Y.manifest),e.workspaceTarget.value?.nodeId===E&&(r.value=Y.manifest))}catch{X()&&I(E)}finally{X()&&e.workspaceTarget.value?.nodeId===E&&(s.value=!1)}}function D(E){r.value=E===void 0?void 0:C(E),s.value=E!==void 0&&r.value===void 0}return{nodes:j(()=>t.value),serverVersion:j(()=>n.value),workspaces:j(()=>a.value),replaceNode:k,removeNode:T,setNodeConnection:p,replaceWorkspaces:g,manifest:j(()=>r.value),manifestLoading:j(()=>s.value),upgradeProgress:j(()=>i.value),applyUpgrade:w,clearUpgradeProgress:R,resetResources:b,selectNode:D,refreshNodes:A,refreshServerCapabilities:L,refreshNodeManifest:y,restoreNodeManifest:C,invalidateNodeManifest:S,retainNodeManifests:m}}function Mh(e){const t=e.host,n=e.manifest,a=e.loading;return j(()=>{if(t.value===void 0)return c("generated.workbenchPageController.noNodeSelected");if(t.value.disabled)return c("generated.workbenchPageController.theNodeIsDisabledOnlyTheCurrent");if(!t.value.connected)return c("generated.workbenchPageController.theNodeIsOfflineLoadedContentIs");if(!a.value){if(n.value===void 0)return c("generated.workbenchPageController.nodeWorkbenchCapabilitiesAreUnknownTheWorkspace");if(n.value.manifestVersion!==1||!n.value.conversation.available)return c("generated.workbenchPageController.nodeWorkbenchCapabilitiesAreUnavailable",{value0:n.value.conversation.reasonCode??"INCOMPATIBLE_VERSION"})}})}function xh(e){const t=window.matchMedia(zi).matches,n=x(e.initialView),a=x(e.initialSettingsSection),r=x(e.initialManagementSection),s=x(t),i=x(t),l=x(!1),v=x("conversation"),u=x();let d;function w(A,L=!1){const y=zf({mobileViewport:s.value,sidebarCollapsed:i.value,mobileSidebarOpen:l.value,mobileWorkspaceSurface:v.value},A,L);(L||A!==s.value)&&(u.value=void 0),s.value=y.mobileViewport,i.value=y.sidebarCollapsed,l.value=y.mobileSidebarOpen,v.value=y.mobileWorkspaceSurface}function k(A){w(A.matches)}function T(){d===void 0&&(d=window.matchMedia(zi),w(d.matches,!0),d.addEventListener("change",k))}function p(){d?.removeEventListener("change",k),d=void 0}function g(){v.value="conversation"}function R(){u.value=void 0,s.value&&(l.value=!1)}function b(A,L){if(L==="preserve-layout"){n.value=A;return}if(u.value=void 0,n.value=A,s.value){g(),l.value=e.opensMobileSidebar(A);return}i.value=!1}function C(A){a.value=A,R()}function I(A){r.value=A,R()}function S(A){s.value&&(u.value=void 0,R(),v.value=A)}function m(A){if(!s.value)return;const L=u.value!==void 0;if(u.value=A,A===void 0){L&&R();return}l.value=!0,g()}return{view:n,settingsSection:a,managementSection:r,mobileViewport:s,sidebarCollapsed:i,mobileSidebarOpen:l,mobileWorkspaceSurface:v,mobileUtilityPanel:u,start:T,dispose:p,selectView:b,closeMobileSidebar:R,selectSettings:C,selectManagement:I,openMobileWorkspaceSurface:S,closeMobileWorkspaceSurface:g,selectMobileUtilityPanel:m}}function $h(e){const t=e.navigation,{view:n,managementSection:a,mobileViewport:r,mobileSidebarOpen:s,mobileUtilityPanel:i,mobileWorkspaceSurface:l,sidebarCollapsed:v,closeMobileSidebar:u,closeMobileWorkspaceSurface:d,openMobileWorkspaceSurface:w,selectView:k}=t,T=e.management,p=e.admin,g=x(!1),R=x(!1);He(r,D=>{D||(g.value=!1,R.value=!1)});const b=j(()=>[{id:"nodes",label:c("navigation.nodes"),icon:"◫"},{id:"conversations",label:c("navigation.conversations"),icon:"◉"},{id:"management",label:c("navigation.management"),icon:"☷"},{id:"settings",label:c("navigation.settings"),icon:"⚙"}]),C=j(()=>!v.value||s.value),I=j(()=>[{id:"account",label:c("navigation.account")},{id:"usage",label:c("usageStatistics.title")},{id:"appearance",label:c("settings.appearance")},{id:"custom-themes",label:c("customThemes.title")},{id:"notifications",label:c("workbenchNotificationCenter.systemNotifications.title")},{id:"quick-prompts",label:c("quickPrompts.title")},{id:"personal-instructions",label:c("navigation.personalInstructions")},{id:"git",label:c("personalGit.title")},{id:"shortcuts",label:c("navigation.shortcuts")},{id:"about",label:c("navigation.about")}]),S=j(()=>T.items(p.value).map(({id:D,labelKey:E})=>({id:D,label:c(E)})));function m(D){const E=n.value;R.value=!1;const H=r.value&&E===D&&s.value&&i.value===void 0;if(r.value&&D==="conversations"){const X=g.value;if(g.value=E===D&&!X,E===D){t.selectMobileUtilityPanel(void 0),u(),d();return}}else g.value=!1;D==="management"&&!S.value.some(X=>X.id===a.value)&&(a.value=S.value[0]?.id??e.defaultManagement),k(D),(H||r.value&&E!==D&&(D==="nodes"||D==="conversations"))&&u(),E!==D&&(D==="nodes"||D==="conversations")&&e.recoverNotifications().catch(()=>{}),e.transition(E,D)}function A(){g.value=!1}function L(){R.value=!1}function y(D){r.value&&(D!==void 0&&(A(),L()),t.selectMobileUtilityPanel(D))}return{navigationItems:b,settingsItems:I,managementItems:S,selectNavigation:m,selectMobileUtilityPanel:y,hostedConversationMobileFilesOpen:R,hostedConversationMobileHistoryOpen:g,closeHostedConversationMobileHistory:A,closeHostedConversationMobileFiles:L,layoutView:Et({mobileViewport:r,mobileSidebarOpen:s,mobileUtilityPanel:i,mobileWorkspaceSurface:l,closeMobileSidebar:u,closeMobileWorkspaceSurface:d,openMobileWorkspaceSurface:w,selectMobileUtilityPanel:y,sidebarCollapsed:v,sidebarContentVisible:C,panelWidths:e.layout.panelWidths,setPanelWidth:e.layout.setPanelWidth})}}function Mn(){return typeof navigator<"u"&&(/Android|iPhone|iPad|iPod/iu.test(navigator.userAgent)||navigator.platform==="MacIntel"&&navigator.maxTouchPoints>1)}function Fh(){let e;function t(){return e??=new Promise((a,r)=>{const s=indexedDB.open("mar.web-push.v1",1);s.onupgradeneeded=()=>s.result.createObjectStore("bindings"),s.onsuccess=()=>a(s.result),s.onerror=()=>r(s.error),s.onblocked=()=>r(new Error("WEB_PUSH_STORAGE_UNAVAILABLE"))}),e}async function n(a,r){const s=await t();await new Promise((i,l)=>{const v=s.transaction("bindings","readwrite"),u=v.objectStore("bindings");r===void 0?u.delete(a):u.put(r,a),v.oncomplete=()=>i(),v.onabort=()=>l(v.error),v.onerror=()=>l(v.error)})}return{async read(){const a=await t();return new Promise((r,s)=>{const i=a.transaction("bindings").objectStore("bindings").get("client");i.onsuccess=()=>r(i.result),i.onerror=()=>s(i.error)})},write:a=>n("client",a),display:a=>n("display",a),locked:async a=>await navigator.locks.request("mar.web-push.v1",a)}}function Uh(e,t,n=Fh()){const a=x("loading");let r,s,i=null,l=0;const v=x(!1);function u(){return t!==void 0&&globalThis.isSecureContext===!0&&typeof PushManager<"u"&&typeof indexedDB<"u"&&typeof navigator<"u"&&navigator.locks!==void 0&&"serviceWorker"in navigator}const d=(m,A)=>m===l&&e.value===A;function w(m){return Uint8Array.from(atob(m.replaceAll("-","+").replaceAll("_","/")),A=>A.charCodeAt(0))}function k(m){const A=m.toJSON();if(A.endpoint===void 0||A.keys?.p256dh===void 0||A.keys.auth===void 0)throw new Error("WEB_PUSH_SUBSCRIPTION_INVALID");return{endpoint:A.endpoint,expirationTime:A.expirationTime??null,keys:{p256dh:A.keys.p256dh,auth:A.keys.auth}}}async function T(m,A){let L=m.binding;L===void 0&&(L=(await t("/api/notifications/push/clients/resolve",{method:"POST",body:JSON.stringify({clientToken:m.request.clientToken,expectedAccount:A})})).binding??void 0);const{bindingVersion:y,...D}=m.request,E={account:m.account,request:{...D,enabled:!1,...L===void 0?{}:{bindingVersion:L.bindingVersion}}};await n.write(E);const H=await t("/api/notifications/push/clients",{method:"POST",body:JSON.stringify({...E.request,expectedAccount:A})});await n.write({...E,binding:H})}async function p(m,A,L,y,D){await n.locked(async()=>{if(!d(y,m))return;const E=await n.read();if(!d(y,m))return;if(!D&&(E?.request.enabled===!1||E?.binding?.enabled===!1)){await n.display(void 0),d(y,m)&&(a.value="actionRequired");return}const H=k(A);if(E!==void 0&&E.request.subscription.endpoint!==H.endpoint&&!D)throw new Error("WEB_PUSH_SUBSCRIPTION_CHANGED");if(E!==void 0&&E.account!==m&&!D)throw new Error("WEB_PUSH_ACCOUNT_CHANGED");const X=E?.request.clientToken??btoa(String.fromCharCode(...crypto.getRandomValues(new Uint8Array(32)))).replaceAll("+","-").replaceAll("/","_").replaceAll("=","");let Y={account:m,request:{clientKind:"mobile",clientToken:X,subscription:H,enabled:L,...E?.binding===void 0?E?.request.bindingVersion===void 0?{}:{bindingVersion:E.request.bindingVersion}:{bindingVersion:E.binding.bindingVersion}}};if(await n.display(void 0),await n.write(Y),!d(y,m))return;const U=()=>t("/api/notifications/push/clients",{method:"POST",body:JSON.stringify({...Y.request,expectedAccount:m})});let Q;try{Q=await U()}catch($){if(!D||!d(y,m)||!($ instanceof jt)||$.code!=="WEB_PUSH_BINDING_STALE")throw $;const V=await t("/api/notifications/push/clients/resolve",{method:"POST",body:JSON.stringify({clientToken:Y.request.clientToken,expectedAccount:m})});if(!d(y,m))return;if(V.binding!==null)throw await n.write({...Y,binding:V.binding}),$;const{bindingVersion:N,...h}=Y.request;if(Y={account:m,request:h},await n.write(Y),!d(y,m))return;Q=await U()}if(Q.account!==m)throw new Error("WEB_PUSH_ACCOUNT_CHANGED");await n.write({...Y,binding:Q}),Q.enabled&&L&&d(y,m)&&await n.display({...Q,account:m}),d(y,m)||await n.display(void 0),d(y,m)&&(a.value=Q.enabled&&L?"ready":"disabled")})}async function g(m){const A=e.value;if(v.value=!1,!u()||A===void 0){a.value="unsupported";return}const L=!m&&Mn()?C():void 0,y=l;try{if(await L,!d(y,A)||L!==void 0&&a.value==="unavailable")return;const D=await navigator.serviceWorker.getRegistration("/console");if(!d(y,A)||(await n.locked(async()=>{if(!d(y,A))return;const X=await n.read();if(!d(y,A)||X!==void 0&&X.request.clientKind==="mobile")return;await n.display(void 0);const Y=await D?.pushManager?.getSubscription();if(d(y,A)){if(Y!=null&&!await Y.unsubscribe())throw new Error("WEB_PUSH_RETIRE_FAILED");d(y,A)&&await n.write(void 0)}}),!d(y,A)))return;if(!Mn()){a.value="unsupported";return}const E=await t("/api/notifications/push");if(!d(y,A))return;if(r=E,s=D,E.account!==A)throw new Error("WEB_PUSH_ACCOUNT_CHANGED");if(!E.available||E.enabled&&E.publicKey===null){a.value="serverUnavailable";return}if(!E.enabled){a.value="systemDisabled";return}if(D?.active==null||D.pushManager===void 0){a.value="unavailable";return}if(i=await D.pushManager.getSubscription(),!d(y,A))return;const H=await n.read();if(!d(y,A))return;if(H?.account!==A&&await n.display(void 0),i!==null&&H===void 0){if(!await i.unsubscribe())throw new Error("WEB_PUSH_RETIRE_FAILED");i=null}if(v.value=!0,!m){a.value="disabled";return}if(i===null||H===void 0||H.account!==A||H.request.subscription.endpoint!==i.endpoint){a.value="actionRequired";return}await p(A,i,!0,y,!1)}catch{d(y,A)&&(a.value="unavailable")}}function R(){return Mn()&&v.value&&s!==void 0&&r?.enabled===!0&&r.available}function b(){const m=e.value,A=l;return!u()||!Mn()||!v.value||m===void 0||s?.active==null||r?.account!==m||!r.enabled||!r.available||r.publicKey===null?u()&&Mn()&&m!==void 0?g(!0):(a.value="unsupported",Promise.resolve()):(i===null?s.pushManager.subscribe({userVisibleOnly:!0,applicationServerKey:w(r.publicKey)}):Promise.resolve(i)).then(async y=>{d(A,m)&&(i=y,await p(m,y,!0,A,!0))}).catch(()=>{d(A,m)&&(a.value="unavailable")})}async function C(){const m=e.value,A=++l;a.value="disabled";try{if(typeof indexedDB<"u"&&await n.display(void 0),!u()||m===void 0)return;await n.locked(async()=>{if(!d(A,m))return;const L=await n.read();L===void 0||L.account!==m||L.request.clientKind==="mobile"&&(await n.display(void 0),await T(L,m))})}catch{m!==void 0&&d(A,m)&&(a.value="unavailable")}}function I(){l++,v.value=!1,r=void 0,s=void 0,i=null}async function S(){I(),typeof indexedDB<"u"&&await n.display(void 0).catch(()=>{})}return{status:a,canSubscribe:R,refresh:g,enable:b,disable:C,dispose:I,invalidate:S}}function qt(){return typeof document>"u"||document.visibilityState==="visible"&&(document.hasFocus?.()??!0)}function Vh(e,t,n){const a=Uh(e,n),r=Mn()?"mobile-push":"desktop-system",s=new Map,i=x(!1),l=x("default"),v=x(!1),u=x(!1);let d=0,w;const k=Math.random().toString(36).slice(2);let T=0;function p(){return typeof Notification<"u"&&typeof navigator<"u"&&"serviceWorker"in navigator}const g=j(()=>typeof window<"u"&&!globalThis.isSecureContext?"insecure":p()?v.value?"unavailable":l.value==="denied"?"denied":i.value&&l.value==="granted"?"enabled":"disabled":"unsupported");function R(Y){return`mar.workbench.system-notifications.v1.${Y}`}function b(){p()&&(l.value=Notification.permission)}function C(){b(),r==="mobile-push"&&a.refresh(i.value)}function I(Y){try{localStorage.setItem(R(Y),String(i.value))}catch{}}async function S(Y){if(!p())return;const U=d;try{const $=await(await navigator.serviceWorker.getRegistration("/console"))?.getNotifications();if(d!==U&&w===Y)return;for(const V of $??[])V.data?.type==="mar.workbench.notification"&&V.data.account===Y&&V.close()}catch{}}async function m(Y){const U=e.value;if(U===void 0||Y&&u.value||Y&&(!p()||!globalThis.isSecureContext))return;const Q=++d,$=()=>d===Q&&e.value===U;if(!Y){i.value=!1,u.value=!1,I(U),r==="mobile-push"&&await a.disable(),await S(U);return}u.value=!0,v.value=!1;try{const V=r==="mobile-push";if(V&&!a.canSubscribe()){await a.refresh(i.value);return}const N=V?await a.enable().then(()=>Notification.permission):await Notification.requestPermission();if(!$()||(l.value=N,N!=="granted"))return;const h=await navigator.serviceWorker.getRegistration("/console");if(!$())return;if(h?.active==null||h.showNotification===void 0){v.value=!0;return}i.value=!0,I(U)}catch{$()&&(v.value=!0)}finally{$()&&(u.value=!1)}}async function A(Y,U=()=>!0){b();const Q=e.value,$=d,V=()=>d===$&&e.value===Q&&Q!==void 0&&w===Q&&g.value==="enabled"&&r==="desktop-system"&&!qt()&&!Y.read&&Y.expiresAt>Date.now()&&U();if(V())try{const N=await navigator.serviceWorker.getRegistration("/console");if(!V()||N?.active==null)return;const h=`${k}:${++T}`;s.set(h,V);try{await new Promise(F=>{const z=new MessageChannel,fe=()=>{clearTimeout(J),z.port1.close(),F()},J=setTimeout(fe,2500);z.port1.onmessage=fe,N.active.postMessage({type:"mar.workbench.notification.show",account:Q,id:Y.id,title:Y.title,body:Y.message,expiresAt:Y.expiresAt,projectionId:h},[z.port2])})}finally{s.delete(h)}}catch{}}function L(Y){const U=Y.data;if(U?.type==="mar.workbench.notification.state"){const V=U.account===w&&U.account===e.value,N=V&&(U.projectionId===void 0||s.get(U.projectionId)?.()===!0);Y.ports?.[0]?.postMessage({valid:N,foreground:V&&qt()}),Y.ports?.[0]?.close();return}if(U?.type!=="mar.workbench.notification.click")return;const Q=typeof U.account=="string"&&U.account===e.value&&U.account===w&&typeof U.id=="string",$=Y.ports?.[0];$?.postMessage({accepted:Q}),$?.close(),Q&&t(U.id).catch(()=>{})}function y(Y){if(w===void 0||Y.key!==R(w))return;const U=Y.newValue==="true";i.value===U&&!u.value||(d+=1,u.value=!1,i.value=U,b(),i.value?r==="mobile-push"&&a.refresh(!0):(r==="mobile-push"&&a.disable(),S(w)))}async function D(){if(typeof window>"u")return!1;const Y=new URL(window.location.href),U=Y.searchParams.get("notification"),Q=Y.searchParams.get("notificationAccount");return U===null||(Y.searchParams.delete("notification"),Y.searchParams.delete("notificationAccount"),window.history.replaceState(window.history.state,"",`${Y.pathname}${Y.search}${Y.hash}`),Q!==e.value)?!1:(await t(U).catch(()=>{}),!0)}function E(){if(typeof window>"u")return!1;const Y=new URL(window.location.href);return Y.searchParams.has("notification")&&Y.searchParams.get("notificationAccount")===e.value}function H(){d+=1,u.value=!1,b(),v.value=!1;const Y=e.value;w=Y,a.invalidate();try{i.value=Y!==void 0&&localStorage.getItem(R(Y))==="true"}catch{i.value=!1}p()&&navigator.serviceWorker.addEventListener("message",L),a.refresh(i.value),typeof window<"u"&&(window.addEventListener("focus",C),window.addEventListener("storage",y))}function X(){d+=1,s.clear(),i.value=!1,u.value=!1,p()&&navigator.serviceWorker.removeEventListener("message",L),typeof window<"u"&&(window.removeEventListener("focus",C),window.removeEventListener("storage",y));const Y=w;w=void 0,a.dispose(),Y!==void 0&&S(Y)}return{enabled:i,mode:r,pushReady:a.canSubscribe,status:g,requesting:u,pushStatus:a.status,enablePush:a.enable,invalidatePush:a.invalidate,setEnabled:m,show:A,start:H,dispose:X,openPending:D,hasPending:E}}const As=1440*6e4,qh=5*6e4;function Ns(e,t=Date.now()){for(const[n,a]of e)a<=t&&e.delete(n)}function Ds(e,t,n=Date.now()){const a=e.get(t);return a===void 0?!1:a<=n?(e.delete(t),!1):!0}function Hh(e,t={}){const n=x([]);let a,r=0,s=!1,i,l,v;const u=new Map,d=new Map,w=x(0),k=x(),T=new Map,p=new Map;let g;function R(ae){k.value=ae,w.value+=1}const b=x([]),C=j(()=>n.value.filter(ae=>!ae.read&&ae.expiresAt>Date.now()).length),I=j(()=>{const ae=new Map;for(const me of n.value){if(me.read||me.source!=="server"||me.target?.targetType!=="WORKSPACE_SESSION")continue;const{nodeId:Pe,workspaceId:Ue,sessionId:Qe}=me.target,Te=JSON.stringify([Pe,Ue,Qe]),Ge=ae.get(Te);(Ge===void 0||me.expiresAt>Ge)&&ae.set(Te,me.expiresAt)}return ae}),S=Bh(C);let m=0,A=0;const L=Vh(e,z,t.request);function y(){return e.value===void 0?void 0:`mar.workbench.notifications.v1.${e.value}`}function D(){const ae=y();if(ae!==void 0)try{localStorage.setItem(ae,JSON.stringify(n.value.filter(me=>me.source!=="server"&&(me.kind==="upload"||me.kind==="web-update"))))}catch{}}function E(ae=Date.now()){Ns(u,ae),Ns(d,ae);for(const Pe of T.keys())u.has(Pe)||T.delete(Pe);const me=n.value.filter(Pe=>Pe.expiresAt>ae);me.length!==n.value.length&&(n.value=me,D())}function H(){const ae=y();if(n.value=[],ae!==void 0)try{const me=JSON.parse(localStorage.getItem(ae)??"[]");if(!Array.isArray(me))return;n.value=Kh(me).filter(Pe=>Pe.kind==="upload"||Pe.kind==="web-update").map(Pe=>({...Pe,source:"local",read:Pe.kind==="upload"?!0:Pe.read})),D()}catch{localStorage.removeItem(ae)}}function X(ae){const me=Date.now();if(E(me),ae.expiresAt!==void 0&&ae.expiresAt<=me)return;const Pe=n.value.find(Qe=>Qe.id===ae.id),Ue={...ae,source:"local",createdAt:Pe?.createdAt??ae.createdAt??me,updatedAt:me,expiresAt:ae.expiresAt??Pe?.expiresAt??me+As,read:ae.kind==="upload"?!0:Pe?.read??ae.read??!1};n.value=[Ue,...n.value.filter(Qe=>Qe.id!==ae.id&&(ae.kind!=="web-update"||Qe.kind!=="web-update"))],D(),Pe===void 0&&qt()&&(ae.kind==="upload"||!Ue.read)&&R(Ue.id)}function Y(ae){if(ae.status==="CANCELLED"){ye(`upload:${ae.id}`);return}const me=ae.status==="COMPLETED"||ae.status==="FAILED";X({id:`upload:${ae.id}`,kind:"upload",source:"local",title:ae.status==="FAILED"?c("generated.workbenchNotificationService.fileUploadFailed"):ae.status==="COMPLETED"?c("generated.workbenchNotificationService.fileUploadCompleted"):c("generated.workbenchNotificationService.uploadingFile"),message:`${ae.name}${ae.error===void 0?"":` · ${ae.error}`}`,target:{nodeId:ae.nodeId,workspaceId:ae.workspaceId},...me?{}:{expiresAt:Date.now()+As}})}function U(ae){return!1}function Q(ae,me){const Pe=n.value.filter(Ue=>Ue.source!=="server");n.value=[...ae.notifications.flatMap(Ue=>{const Qe=cf.safeParse(Ue);return Qe.success?[{...Qe.data,read:Qe.data.read||me.some(Te=>Te(Qe.data)),source:"server"}]:[]}),...Pe].sort((Ue,Qe)=>Qe.createdAt-Ue.createdAt),b.value=(ae.recentRuns??[]).filter(zh).sort(Gh)}function $(){if(u.size===0)return;const ae=Date.now();for(const[me,Pe]of u){u.delete(me);const Ue=T.get(me);if(T.delete(me),Pe<=ae){d.delete(me);continue}const Qe=n.value.find(Te=>Te.source==="server"&&Te.id===me);if(Qe!==void 0&&Qe.expiresAt<=ae){d.delete(me);continue}Qe?.source==="server"&&!Qe.read&&(Ue===!0&&qt()&&!ge(Qe.target)&&R(me),Ue===!1&&!qt()&&L.show(Qe,()=>n.value.some(Te=>Te.source==="server"&&Te.id===Qe.id&&!Te.read&&Te.expiresAt>Date.now()))),d.set(me,Pe)}}async function V(ae){for(;ae===r&&s;){s=!1;const me=[];g=me;let Pe;try{Pe=await t.request("/api/notifications")}catch(Ue){if(ae!==r)return;if(s)continue;throw Ue}finally{g===me&&(g=void 0)}if(ae!==r)return;Q(Pe,me),S.reconcile(),s||$()}}async function N(){if(t.request!==void 0){if(s=!0,i===void 0){const ae=r,Pe=V(ae).finally(()=>{i===Pe&&(i=void 0,ae===r&&s&&h())});i=Pe}return i}}function h(){N().catch(()=>{})}function F(){e.value!==void 0&&qt()&&fe().catch(()=>{})}async function z(ae){const me=e.value,Pe=r,Ue=++A,Qe=typeof ae=="string"?ae:ae.id;m+=1;try{if((typeof ae=="string"||ae.source==="server")&&await N(),Pe!==r||Ue!==A||me!==e.value)return;const Te=n.value.find(Ge=>Ge.id===Qe&&Ge.expiresAt>Date.now()&&(typeof ae!="string"||Ge.source==="server"));if(Te===void 0)return;oe(Te.id),await t.onNotificationClick?.(Te)}finally{Pe===r&&(m-=1)}}function fe(){if(m>0||L.hasPending())return N();if(v={targets:(qt()?t.activeTargets?.()??[]:[]).map(Qe=>({...Qe})),account:e.value},l!==void 0)return l;const me=r,Ue=(async()=>{for(;me===r&&v!==void 0;){const{targets:Qe,account:Te}=v;v=void 0;try{await N()}catch(Ge){if(me!==r)return;if(v!==void 0)continue;throw Ge}await ee(Qe,Te,me)}})().finally(()=>{l===Ue&&(l=void 0)});return l=Ue,Ue}function J(ae,me,Pe=!1,Ue=()=>!0){if(t.request===void 0)return Promise.resolve();const Qe=r;return t.request(ae,me).catch(async Te=>{Pe&&Qe===r&&Ue()&&gt(Te)!=="UNAUTHENTICATED"&&!(Te instanceof Error&&Te.name==="AbortError")&&await t.request(ae,me).catch(()=>{})}).then(()=>{if(Qe===r)return N().catch(()=>{})})}function re(ae){const me=sf.safeParse(ae);if(me.success){const Ue=me.data,Qe=new Set(Ue.notificationIds);return Se(Te=>{const Ge=Te.target;return!Qe.has(Te.id)||Ge.nodeId!==Ue.nodeId?!1:Ue.type==="notification.session-read"?Ge.targetType==="WORKSPACE_SESSION"&&Ge.workspaceId===Ue.workspaceId&&Ge.sessionId===Ue.sessionId:Ge.targetType==="HOSTED_CONVERSATION"&&Ge.conversationId===Ue.conversationId}),!0}if(na(ae)&&typeof ae.type=="string"&&ae.type.startsWith("recent-run."))return h(),!0;if(!na(ae)||typeof ae.type!="string"||!ae.type.startsWith("notification."))return!1;const Pe=ae.type==="notification.created"?lf.safeParse(ae):void 0;if(Pe?.success){const Ue=Pe.data.notification,Qe=Date.now();return Ue.expiresAt<=Qe||Ds(d,Ue.id,Qe)||Ds(u,Ue.id,Qe)?(h(),!0):(Ue.kind==="run"&&Ue.target.targetType==="WORKSPACE_SESSION"&&t.onWorkspaceRunCompleted?.(Ue.target.nodeId,Ue.target.workspaceId),qt()&&ge(Ue.target)&&!Ue.read?(d.set(Ue.id,Ue.expiresAt),J(`/api/notifications/${encodeURIComponent(Ue.id)}/read`,{method:"POST",body:"{}"},!0,()=>m===0&&!L.hasPending()&&qt()&&Ue.expiresAt>Date.now()&&ge(Ue.target)),!0):Ue.read?(d.set(Ue.id,Ue.expiresAt),h(),!0):(T.set(Ue.id,qt()),u.set(Ue.id,Ue.expiresAt),N().catch(()=>{}),!0))}return h(),!0}function ge(ae){return ae.targetType===void 0?!1:(t.activeTargets?.()??[]).some(me=>ae.targetType==="HOSTED_CONVERSATION"?me.targetType==="HOSTED_CONVERSATION"&&me.nodeId===ae.nodeId&&me.conversationId===ae.conversationId:me.targetType==="WORKSPACE_SESSION"&&me.nodeId===ae.nodeId&&me.workspaceId===ae.workspaceId&&me.sessionId===ae.sessionId)}function ce(){const me=n.value.filter(Pe=>!Pe.read).filter(Pe=>Pe.source!=="server");if(me.length>0){const Pe=new Set(me.map(Ue=>Ue.id));n.value=n.value.map(Ue=>Pe.has(Ue.id)?{...Ue,read:!0}:Ue),D()}t.request!==void 0&&J("/api/notifications/read-all",{method:"POST",body:"{}"})}function oe(ae){const me=n.value.find(Pe=>Pe.id===ae);if(!(me===void 0||me.read)){if(me.source==="server"){J(`/api/notifications/${encodeURIComponent(ae)}/read`,{method:"POST",body:"{}"});return}n.value=n.value.map(Pe=>Pe.id===ae?{...Pe,read:!0}:Pe),D()}}function P(ae,me){return b.value.some(Pe=>Pe.nodeId===ae&&Pe.workspaceId===me&&Nn(Pe.status))}function G(ae,me){return ue(ae,me)!==void 0}function ue(ae,me){const Pe=Date.now(),Ue=n.value.find(Qe=>!Qe.read&&Qe.source==="server"&&Qe.expiresAt>Pe&&Qe.target?.targetType==="WORKSPACE_SESSION"&&Qe.target.nodeId===ae&&Qe.target.workspaceId===me);return Ue?.target?.targetType==="WORKSPACE_SESSION"?Ue.target.sessionId:void 0}function ne(ae,me,Pe){const Ue=I.value.get(JSON.stringify([ae,me,Pe]));return Ue!==void 0&&Ue>Date.now()}function M(ae,me,Pe){return Me({targetType:"WORKSPACE_SESSION",nodeId:ae,workspaceId:me,sessionId:Pe})}async function ee(ae,me,Pe){await Promise.all(ae.map(async Ue=>{const Qe=()=>Pe===r&&m===0&&me===e.value&&ge(Ue)&&qt();if(!Qe())return;(Ue.targetType==="WORKSPACE_SESSION"?ne(Ue.nodeId,Ue.workspaceId,Ue.sessionId):Ee(Ue.nodeId,Ue.conversationId))&&await Me(Ue,!0,Qe)}))}function le(){return ee(t.activeTargets?.()??[],e.value,r)}function Ee(ae,me){const Pe=Date.now();return n.value.some(Ue=>!Ue.read&&Ue.source==="server"&&Ue.expiresAt>Pe&&Ue.target?.targetType==="HOSTED_CONVERSATION"&&Ue.target.nodeId===ae&&Ue.target.conversationId===me)}function xe(ae,me){Me({targetType:"HOSTED_CONVERSATION",nodeId:ae,conversationId:me})}function Me(ae,me=!1,Pe){if(m>0||L.hasPending()||!qt())return Promise.resolve();const{nodeId:Ue}=ae,Qe=ae.targetType==="WORKSPACE_SESSION";if(!(Qe?ne(Ue,ae.workspaceId,ae.sessionId):Ee(Ue,ae.conversationId))||t.request===void 0)return Promise.resolve();const Ge=Qe?{nodeId:Ue,workspaceId:ae.workspaceId,sessionId:ae.sessionId}:{nodeId:Ue,conversationId:ae.conversationId},_e=JSON.stringify([ae.targetType,Ge]),tt=p.get(_e);if(tt!==void 0)return me&&(tt.retry.isCurrent=Pe??(()=>!0)),tt.promise;const Xe={isCurrent:me?Pe??(()=>!0):void 0},Re=new Map(n.value.flatMap(q=>{if(q.source!=="server"||q.read)return[];const te=q.target;return te.nodeId===Ue&&(Qe?te.targetType==="WORKSPACE_SESSION"&&te.workspaceId===ae.workspaceId&&te.sessionId===ae.sessionId:te.targetType==="HOSTED_CONVERSATION"&&te.conversationId===ae.conversationId)?[[q.id,q.updatedAt]]:[]})),de=r,he=(async()=>{const q=`/api/notifications/${Qe?"session":"conversation"}/read`,te={method:"POST",body:JSON.stringify(Ge)};try{try{await t.request(q,te)}catch(_){if(de!==r||Xe.isCurrent?.()!==!0||gt(_)==="UNAUTHENTICATED"||_ instanceof Error&&_.name==="AbortError")return;await t.request(q,te)}de===r&&Se(_=>Re.get(_.id)===_.updatedAt)}catch{}})().finally(()=>{p.get(_e)?.promise===he&&p.delete(_e)});return p.set(_e,{promise:he,retry:Xe}),he}function Se(ae){g?.push(ae),n.value=n.value.map(me=>me.source==="server"&&!me.read&&ae(me)?{...me,read:!0}:me),S.reconcile()}function ye(ae){if(n.value.find(Pe=>Pe.id===ae)?.source==="server"){J(`/api/notifications/${encodeURIComponent(ae)}`,{method:"DELETE"});return}n.value=n.value.filter(Pe=>Pe.id!==ae),D()}function Fe(){const ae=n.value.filter(me=>me.kind!=="web-update");ae.length!==n.value.length&&(n.value=ae,D())}async function Ye(){const ae=r;L.start(),S.start(),typeof window<"u"&&window.addEventListener("focus",F),H(),await N().catch(()=>{}),ae===r&&a===void 0&&(a=setInterval(E,qh))}function nt(){typeof window<"u"&&window.removeEventListener("focus",F),L.dispose(),m=0,S.dispose(),r+=1,s=!1,i=void 0,l=void 0,v=void 0,p.clear(),g=void 0,u.clear(),T.clear(),k.value=void 0,d.clear(),n.value=n.value.filter(ae=>ae.source!=="server"),b.value=[],a!==void 0&&clearInterval(a),a=void 0}return{notifications:n,recentRuns:b,unreadCount:C,notificationRevision:w,previewNotificationId:k,systemNotifications:L,hasActiveWorkspaceRun:P,hasUnreadWorkspace:G,workspaceTabSession:ue,hasUnreadSession:ne,hasUnreadConversation:Ee,notify:X,recordUpload:Y,project:U,projectServerMessage:re,load:N,recover:fe,openNotification:z,openPendingSystemNotification:L.openPending,markAllRead:ce,markRead:oe,markSessionRead:M,markVisibleRead:le,markConversationRead:xe,clearWebUpdate:Fe,remove:ye,start:Ye,dispose:nt}}function Bh(e){let t,n,a=!1;async function r(){for(a=!0;n!==void 0;){const u=n;if(n=void 0,typeof navigator>"u")continue;const d=navigator;try{u>0?await d.setAppBadge?.(u):d.clearAppBadge!==void 0?await d.clearAppBadge():await d.setAppBadge?.(0)}catch{}}a=!1}function s(u){n=u,a||r()}function i(){t!==void 0&&s(e.value)}function l(){t===void 0&&(t=He(e,s,{immediate:!0}),typeof window<"u"&&window.addEventListener("focus",i))}function v(){typeof window<"u"&&window.removeEventListener("focus",i),t?.(),t=void 0,s(0)}return{start:l,reconcile:i,dispose:v}}function Gh(e,t){return Number(Nn(t.status))-Number(Nn(e.status))||_a(t)-_a(e)||t.createdAt-e.createdAt||t.runId.localeCompare(e.runId)}function zh(e){return na(e)?typeof e.nodeId=="string"&&typeof e.runId=="string"&&typeof e.workspaceId=="string"&&(e.workspaceName===void 0||typeof e.workspaceName=="string")&&typeof e.sessionId=="string"&&typeof e.sessionTitle=="string"&&(e.sessionGroup===void 0||e.sessionGroup==="MAIN"||e.sessionGroup==="CHILD")&&(e.userMessage===void 0||typeof e.userMessage=="string")&&typeof e.runner=="string"&&["STARTING","RUNNING","CANCELLING","SUCCEEDED","FAILED","CANCELLED","INTERRUPTED"].includes(String(e.status))&&(e.interruptionReason===void 0||e.interruptionReason==="USER_STOP")&&typeof e.createdAt=="number"&&typeof e.startedAt=="number"&&(e.completedAt===null||typeof e.completedAt=="number")&&typeof e.sortAt=="number"&&typeof e.updatedAt=="number"&&typeof e.version=="number":!1}function Kh(e,t=Date.now()){return Array.isArray(e)?e.filter(jh).filter(n=>n.expiresAt>t).map(n=>({...n,source:"local"})):[]}function jh(e){return na(e)?(e.kind==="upload"||e.kind==="web-update")&&typeof e.id=="string"&&typeof e.title=="string"&&typeof e.message=="string"&&typeof e.createdAt=="number"&&typeof e.updatedAt=="number"&&typeof e.expiresAt=="number"&&typeof e.read=="boolean"&&(e.kind==="upload"?e.action===void 0&&(e.target===void 0||_h(e.target)):e.target===void 0&&(e.action===void 0||e.action==="RELOAD_PAGE")):!1}function _h(e){return!na(e)||typeof e.nodeId!="string"?!1:e.targetType===void 0&&e.conversationId===void 0&&(e.workspaceId===void 0||typeof e.workspaceId=="string")&&(e.sessionId===void 0||typeof e.sessionId=="string")&&(e.sessionName===void 0||typeof e.sessionName=="string")}function na(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Yh(e){const t=e.application?.state??x({offline:"online",checked:!1}),n=x(!1);let a;function r(){a!==void 0||e.application===void 0||(a=e.application.subscribe(v=>{if(!v.checked)return;const u=e.notifications.notifications.value.some(w=>w.kind==="web-update"),d=v.update??(u?v.reload:void 0);d===void 0?v.reload===void 0&&e.notifications.clearWebUpdate():e.notifications.notify({id:`web-update:${d.version}:${d.buildId}`,kind:"web-update",source:"local",title:c("webUpdate.title"),message:c("webUpdate.message",{value0:d.version}),action:"RELOAD_PAGE"})}))}function s(){a?.(),a=void 0}async function i(){if(!(n.value||e.application===void 0)){n.value=!0;try{await e.application.checkForUpdate();const v=e.application.state.value;e.message(c(v.update?"webUpdate.available":v.reload?"webUpdate.reloadAvailable":"webUpdate.upToDate"),"info")}catch(v){e.message(c("webUpdate.checkFailed"),"error",v)}finally{n.value=!1}}}async function l(){await e.application?.applyUpdate()!=="APPLIED"&&e.message(c("webUpdate.unavailable"),"warning")}return{state:t,checking:n,start:r,stop:s,check:i,apply:l}}function Qh(e){const{workspaceTarget:t,selectedWorkspace:n,workspaceHost:a,view:r,mainSurfaceVisible:s,draftSessionOpen:i,selectedSessionId:l,asideVisible:v,asideTarget:u,asideLoading:d}=e;function w(T=!1){const p=t.value;if(r.value!=="nodes"||p===void 0||n.value===void 0||a.value?.connected===!1)return[];const g=[];return s.value&&!i.value&&l.value!==void 0&&(T||!e.mainLoading.value)&&g.push({...p,sessionId:l.value}),v.value&&u.value!==void 0&&(T||!d.value)&&!g.some(R=>R.sessionId===u.value?.sessionId)&&g.push({nodeId:u.value.nodeId,workspaceId:u.value.workspaceId,sessionId:u.value.sessionId}),g}function k(T,p,g){if(w(!0).some(R=>R.nodeId===T&&R.workspaceId===p&&R.sessionId===g))return e.markSessionRead(T,p,g)}return{targets:w,markRead:k}}async function Jh(e,t){if(e.targetType==="HOSTED_CONVERSATION"){if(t.showConversations===void 0||t.openHostedConversation===void 0)throw new Error("NOTIFICATION_TARGET_NOT_SELECTED");t.showConversations(),await t.openHostedConversation(e.nodeId,e.conversationId);return}if(t.showNodes(),e.workspaceId===void 0)return;if(!await t.activateWorkspace({nodeId:e.nodeId,workspaceId:e.workspaceId}))throw new Error("NOTIFICATION_TARGET_NOT_SELECTED");const n=t.workspaceTarget();if(n?.nodeId!==e.nodeId||n.workspaceId!==e.workspaceId)throw new Error("NOTIFICATION_TARGET_NOT_SELECTED");e.sessionId!==void 0&&(t.hasSession(e.sessionId)||await t.synchronizeSessions(e.workspaceId),t.workspaceTarget()===n&&await t.openSession(e.sessionId))}function Xh(e){const{workspaceTarget:t,selectedSessionId:n,sessions:a,selectView:r,applyWebUpdate:s,closeMobileSidebar:i,selectWorkspace:l,syncWorkspaceSessions:v,openHostedConversationTarget:u,notice:d,openSession:w}=e,k=e.discovery,T=e.discovery.selectGroup;async function p(I){if(I.action==="RELOAD_PAGE"){await s();return}const S=I.target;S!==void 0&&await g(S,!0)}async function g(I,S=!1){try{let m;await Jh(I,{workspaceTarget:()=>t.value,hasSession:A=>a.value.some(L=>L.id===A&&(!("workspaceId"in I)||I.workspaceId===void 0||L.workspaceId===I.workspaceId)),showNodes:()=>r("nodes"),showConversations:()=>r("conversations"),activateWorkspace:async A=>{const L=t.value,y="sessionId"in I&&I.sessionId!==void 0;if(y&&L?.nodeId===A.nodeId&&L.workspaceId===A.workspaceId)return i(),m=k.groupSelectionRevision(),!0;const D=await l(A,!y);return D&&(m=k.groupSelectionRevision()),D},synchronizeSessions:v,openSession:A=>C(A,S,m),openHostedConversation:u})}catch(m){d(c("generated.workbenchPageController.unableToOpenTheSessionLinkedTo",{value0:it(m)}),"error",m)}}async function R(I){await p({id:`recent-run:${I.nodeId}:${I.runId}`,title:I.sessionTitle,createdAt:I.createdAt,updatedAt:I.updatedAt,target:{targetType:"WORKSPACE_SESSION",nodeId:I.nodeId,workspaceId:I.workspaceId,sessionId:I.sessionId,sessionName:I.sessionTitle}})}async function b(I){await g({targetType:"WORKSPACE_SESSION",...I},!0)}function C(I,S,m=k.groupSelectionRevision()){const A=t.value,L=y=>{A!==void 0&&t.value?.nodeId===A.nodeId&&t.value.workspaceId===A.workspaceId&&y.workspaceId===A.workspaceId&&n.value===y.id&&k.groupSelectionRevision()===m&&T(y.sessionGroup??"MAIN",!0)};return S?e.selection().openWorkspaceTabSession(I,L):w(I,{onSessionResolved:L})}return{openWorkbenchNotification:p,openRecentRun:R,openSessionGroupTarget:b,openNavigatedSession:C}}function Zh(e){let t,n=!1,a;async function r(l){if(!(e.selectedSessionId.value!==l.sessionId||e.workspaceTarget.value!==l.workspace)){if(n){a=l;return}n=!0;try{await e.refresh(l.sessionId,l.deferInitialScroll)}finally{n=!1;const v=a;a=void 0,v!==void 0&&await r(v)}}}function s(l=0,v=!1){if(t!==void 0){if(l!==0)return;clearTimeout(t)}const u=e.selectedSessionId.value,d=e.workspaceTarget.value;u===void 0||d===void 0||(t=setTimeout(()=>{t=void 0,r({workspace:d,sessionId:u,deferInitialScroll:v})},l))}function i(){t!==void 0&&clearTimeout(t),t=void 0,a=void 0}return{schedule:s,clear:i}}function ey(e){const t=Fn({sessions:"idle",files:"idle",changes:"idle",sessionNavigation:"idle"}),n={sessions:-1,files:-1,changes:-1,sessionNavigation:-1};let a,r;const s={sessions:0,files:0,changes:0,sessionNavigation:0};let i=0,l=!1;const v=()=>e.workbenchConnectionId===void 0?"local-test-connection":e.workbenchConnectionId();function u(y){return`${y.connectionId}:${y.nodeId}:${y.workspaceId}:${y.directory}:${y.git?"git":"directory"}:${y.sessionGroup??"ALL"}`}function d(y){const D=a;return D!==void 0&&u(D)===y&&e.enabled?.()!==!1&&e.workspaceTarget.value?.nodeId===D.nodeId&&e.workspaceTarget.value?.workspaceId===D.workspaceId&&e.sessionGroup?.()===D.sessionGroup&&xn(e.sessionNavigation?.(),D.sessionNavigation)&&v()===D.connectionId}function w(y,D,E=!1,H=!1){t.sessions=(D||H)&&t.sessions==="ready"?"ready":"loading";const X=D||E;t.files=X&&t.files==="ready"?"ready":"loading",t.changes=y.git?X&&t.changes==="ready"?"ready":"loading":"idle",n.sessions=-1,n.files=-1,n.changes=-1,n.sessionNavigation=-1,t.sessionNavigation=y.sessionNavigation===void 0?"idle":"loading"}async function k(y,D,E){const H=a;if(H===void 0||u(H)!==y)return;const X=await e.request(`/api/workspaces/${encodeURIComponent(H.workspaceId)}/watch`,{method:"POST",signal:D,body:JSON.stringify({nodeId:H.nodeId,workbenchConnectionId:H.connectionId,watchId:H.watchId,mode:E,...E==="renew"?{}:{...e.prepareFiles?.()===!0?{prepareFiles:!0}:{},topics:{sessions:!0,...H.sessionGroup===void 0?{}:{sessionGroup:H.sessionGroup},files:{path:H.directory,limit:200},...H.sessionNavigation===void 0?{}:{sessionNavigation:H.sessionNavigation},...H.git?{changes:!0}:{}}}})});if(!(!d(y)||a?.watchId!==H.watchId)){if(typeof X.nodeGeneration=="string"&&H.nodeGeneration!==void 0&&H.nodeGeneration!==X.nodeGeneration)throw new Error("WORKSPACE_WATCH_GENERATION_CHANGED");typeof X.nodeGeneration=="string"&&(H.nodeGeneration=X.nodeGeneration),i=0}}const T=Pl({heartbeatMs:e.heartbeatMs,requestTimeoutMs:e.requestTimeoutMs??1e4,confirmationTimeoutMs:e.confirmationTimeoutMs??e.heartbeatMs*3,maxFailures:3,eligible:d,renew:k,onExpired:()=>{const y=a;y!==void 0&&R(y.workspaceId)}});async function p(y,D,E){if(e.enabled?.()===!1)return;const H=e.workspaceTarget.value?.nodeId,X=e.workspaces.value.find(z=>z.id===y),Y=v();if(H===void 0||X===void 0||Y===void 0)return;const U=e.sessionGroup?.(),Q=e.sessionNavigation?.(),$=Q===void 0?void 0:{...Q,sessionIds:[...Q.sessionIds],summaryAnchors:[...Q.summaryAnchors]},V=`${Y}:${H}:${y}:${D}:${X.kind==="GIT_WORKSPACE"?"git":"directory"}:${U??"ALL"}`;if(E&&!l&&a!==void 0&&u(a)===V&&xn(a.sessionNavigation,$))return;const N=!l&&a!==void 0&&a.connectionId===Y&&a.nodeId===H&&a.workspaceId===y&&a.directory===D&&a.git===(X.kind==="GIT_WORKSPACE")&&a.sessionGroup!==U,h=!l&&a!==void 0&&u(a)===V&&!xn(a.sessionNavigation,$);I(),E&&(i=0,s.sessions=0,s.files=0,s.changes=0,s.sessionNavigation=0);const F={nodeId:H,workspaceId:y,directory:D,watchId:crypto.randomUUID().replace(/-/g,""),connectionId:Y,git:X.kind==="GIT_WORKSPACE",...U===void 0?{}:{sessionGroup:U},...$===void 0?{}:{sessionNavigation:$}};a=F,l=!1,w(F,!E,N||h,h);try{await T.start(u(F))}catch{if(a?.watchId!==F.watchId)return;t.sessions!=="ready"&&(t.sessions="failed"),t.files!=="ready"&&(t.files="failed"),F.git&&t.changes!=="ready"&&(t.changes="failed"),F.sessionNavigation!==void 0&&t.sessionNavigation!=="ready"&&(t.sessionNavigation="failed"),i+=1,i<=3&&(r=setTimeout(()=>{r=void 0,p(y,D,!1)},Math.min(e.heartbeatMs,1e3*2**(i-1))))}}function g(y,D){const E=a?.workspaceId===y&&a.nodeId===e.workspaceTarget.value?.nodeId?a.directory:".";return p(y,D??E,!0)}async function R(y){const D=a?.directory??".";I(),await p(y,D,!0)}function b(){const y=a;return y===void 0||!Object.values(t).includes("failed")?Promise.resolve():(s.sessions=0,s.files=0,s.changes=0,s.sessionNavigation=0,i=0,p(y.workspaceId,y.directory,!1))}function C(){l=!0,r!==void 0&&clearTimeout(r),r=void 0,T.pause()}function I(){r!==void 0&&clearTimeout(r),r=void 0,T.stop(),a=void 0}function S(){const y=a;I(),l=!1,t.sessions="idle",t.files="idle",t.changes="idle",t.sessionNavigation="idle",y!==void 0&&e.request(`/api/workspaces/${encodeURIComponent(y.workspaceId)}/watch`,{method:"DELETE",body:JSON.stringify({nodeId:y.nodeId,workbenchConnectionId:y.connectionId,watchId:y.watchId})}).catch(()=>{})}function m(y){const D=a;if(!(D===void 0||y.workbenchConnectionId!==D.connectionId||y.watchId!==D.watchId||y.nodeId!==D.nodeId||y.workspaceId!==D.workspaceId||e.sessionGroup?.()!==D.sessionGroup||!xn(e.sessionNavigation?.(),D.sessionNavigation)||typeof y.nodeGeneration!="string"||D.nodeGeneration!==void 0&&y.nodeGeneration!==D.nodeGeneration))return D.nodeGeneration??=y.nodeGeneration,T.confirm(u(D)),D}function A(y){if(y.type!=="watch.workspace.snapshot"||!Ps(y.topic)||!Number.isInteger(y.revision)||y.revision<0)return!1;const D=m(y);if(D===void 0)return!1;const E=y.revision;return E<=n[y.topic]||(n[y.topic]=E,s[y.topic]=0,t[y.topic]="ready",y.topic==="sessions"?e.onSnapshot(D.nodeId,D.workspaceId,{sessions:y.payload},y.topic,E):y.topic==="files"?e.onSnapshot(D.nodeId,D.workspaceId,{files:y.payload},y.topic,E):y.topic==="changes"?e.onSnapshot(D.nodeId,D.workspaceId,{changes:y.payload},y.topic,E):e.onSnapshot(D.nodeId,D.workspaceId,{sessionNavigation:y.payload},y.topic,E,D.sessionNavigation)),!0}function L(y){if(y.type!=="watch.failed"||y.watchType!=="workspace"||!Ps(y.topic))return!1;const D=m(y);if(D===void 0)return!1;if(t[y.topic]="failed",s[y.topic]+=1,s[y.topic]>3)return!0;r!==void 0&&clearTimeout(r);const E=D.workspaceId;return r=setTimeout(()=>{r=void 0,p(E,D.directory,!1)},Math.min(e.heartbeatMs,1e3*2**(s[y.topic]-1))),!0}return{start:g,restart:R,retryFailed:b,pause:C,stop:S,topicStatus:ct(t),handleEvent(y){if(typeof y!="object"||y===null)return!1;const D=y;return L(D)||A(D)}}}function Ps(e){return e==="sessions"||e==="files"||e==="changes"||e==="sessionNavigation"}function xn(e,t){return e===t||e!==void 0&&t!==void 0&&e.limit===t.limit&&e.treeAnchor===t.treeAnchor&&e.sessionIds.length===t.sessionIds.length&&e.sessionIds.every((n,a)=>n===t.sessionIds[a])&&e.summaryAnchors.length===t.summaryAnchors.length&&e.summaryAnchors.every((n,a)=>n===t.summaryAnchors[a])}function ty(e){const t=()=>e.sessions.current.value.find(a=>a.id===e.sessions.selectedId.value);return{accept:(a,r,s,i,l,v)=>{if(i==="sessionNavigation"){e.workspaceTarget.value?.nodeId===a&&e.workspaceTarget.value.workspaceId===r&&v!==void 0&&xn(e.navigation.query(),v)&&e.navigation.accept({nodeId:a,workspaceId:r},v,s.sessionNavigation);return}e.files.acceptWatch(a,r,s,{topic:i,revision:l});const u=Gl(s.changes);u!==void 0&&e.updateBranch(a,r,u);const d=s.sessions;if(!Array.isArray(d?.sessions))return;const w=t();e.sessions.applySnapshot(a,r,{sessions:[...d.sessions],...d.runningCounts===void 0?{}:{runningCounts:d.runningCounts},nextCursor:d.nextCursor??null}),e.sessions.reconcile(w,t())}}}function ny(e){let t=!1;function n(r){if(!(e.workspaceTarget()===void 0||e.selectedSessionId()!==r)){if(e.currentSurface()!=="workbench"){t=!0;return}e.coordinator()?.beginSession(r)}}function a(r,s){const i=e.coordinator();if(s==="extension"){t=!0,i?.stopWorkspace(),i?.stopSession(),e.hasSelectedExtensionTarget()&&i?.beginExtension().catch(()=>{});return}if(r==="extension"&&(t=!0,i?.stopExtension()),s!=="workbench"||!t)return;t=!1;const l=e.workspaceTarget()?.workspaceId;i===void 0||l===void 0||i.startWorkspace(l).then(()=>{const v=e.selectedSessionId();e.currentSurface()==="workbench"&&v!==void 0&&i.beginSession(v)})}return{transition:a,requestSessionWatch:n}}function ay(e){const t=a=>a==="nodes"?"workbench":a==="conversations"?"extension":"other",n=ny({coordinator:()=>{const a=e.coordinator();if(a!==void 0)return{stopWorkspace:()=>a.stopWorkspace(),stopSession:()=>a.stopSession(),startWorkspace:r=>a.startWorkspace(r),beginSession:r=>a.beginSession(r),beginExtension:()=>a.beginHostedConversation(),stopExtension:()=>a.stopHostedConversation()}},currentSurface:()=>t(e.currentView()),workspaceTarget:e.workspaceTarget,selectedSessionId:e.selectedSessionId,hasSelectedExtensionTarget:()=>e.selectedHostedConversationId()!==void 0});return{requestSessionWatch:n.requestSessionWatch,transition:(a,r)=>n.transition(t(a),t(r))}}function oy(e){const{hosted:t,...n}=e,{beginExtension:a,restartExtension:r,stopExtension:s,...i}=ym({...n,extension:{begin:()=>t.beginSelectedConversationWatch(),restart:()=>t.restartSelectedConversationWatch(),pause:()=>t.pauseSelectedConversationWatch(),stop:()=>t.stopSelectedConversationWatch(),handleVisibility:()=>t.handleVisibility(),handleEvent:l=>t.handleWatchEvent(l)}});return{...i,beginHostedConversation:a,restartHostedConversation:r,stopHostedConversation:s}}function ry(e){async function t(s,i,l){const v=new URLSearchParams({nodeId:s.nodeId,path:i,limit:"200"});l!==void 0&&v.set("cursor",l);const u=await e.http.request(`/api/workspaces/${encodeURIComponent(s.workspaceId)}/files?${v}`);if(!lc(u))throw new Error("NODE_RESPONSE_INVALID");const d=Pr(u.workspace);return{...u.files,...d===void 0?{}:{workspace:d}}}async function n(s,i,l){const u=(await e.http.request(`/api/workspaces/${encodeURIComponent(s.workspaceId)}/uploads/preflight`,{method:"POST",body:JSON.stringify({nodeId:s.nodeId,directory:i,files:l.map(d=>({name:d}))})})).uploads;if(!Array.isArray(u))throw new Error("NODE_RESPONSE_INVALID");return l.map((d,w)=>{const k=u[w];return{status:k?.status==="READY"||k?.status==="EXISTS_FILE"||k?.status==="EXISTS_DIRECTORY"?k.status:"INVALID_NAME",path:typeof k?.path=="string"?k.path:null}})}async function a(s,i,l,v,u){s={...s};const d=await e.http.request(`/api/workspaces/${encodeURIComponent(s.workspaceId)}/files/mutate`,{method:"POST",body:JSON.stringify({nodeId:s.nodeId,action:i,path:l,...v===void 0?{}:{destination:v}})});try{u?.()!==!1&&(u===void 0?await e.onWritten(s):await e.onWritten(s,u))}catch{}return typeof d.file?.path=="string"?d.file.path:void 0}async function r(s,i){s={...s},await e.http.request(`/api/workspaces/${encodeURIComponent(s.workspaceId)}/files/reveal`,{method:"POST",body:JSON.stringify({nodeId:s.nodeId,path:i})})}return{list:t,preflight:n,mutate:a,reveal:r}}function lc(e){if(typeof e!="object"||e===null||!("files"in e))return!1;const t=e.files;return typeof t=="object"&&t!==null&&Array.isArray(t.entries)&&(t.nextCursor===null||typeof t.nextCursor=="string")}function Pr(e){if(typeof e!="object"||e===null)return;const t=e;if(typeof t.id!="string"||typeof t.path!="string"||t.kind!=="DIRECTORY"&&t.kind!=="GIT_WORKSPACE")return;const n=t.gitSummary?.branch;return{id:t.id,path:t.path,kind:t.kind,...typeof n=="string"||n===null?{gitSummary:{branch:n}}:{}}}function iy(e){const t=x(qo(e.workspaceName())),n=x(),a=x();let r=0,s=0;const i=new WeakMap;async function l(m,A=!1){const L=i.get(m);if(L!==void 0)return L;const y=v(m,A);i.set(m,y);try{return await y}finally{i.get(m)===y&&i.delete(m)}}async function v(m,A=!1){if(m.kind!=="DIRECTORY"||m.loading)return;const L=r,y=m===t.value?s:void 0,D=()=>L===r&&(y===void 0||y===s);m.loading=!0;try{const E=await e.list(m.path,A?m.nextCursor??void 0:void 0);return D()?(m.children=Os(A?m.children:[],E.entries),m.nextCursor=E.nextCursor,m.loaded=!0,m.failedAppend=void 0,m.failure=void 0,m.placeholder=!1,E):void 0}catch(E){D()&&(m.failedAppend=A,m.failure=E);return}finally{D()&&(m.loading=!1)}}async function u(m){m.kind==="DIRECTORY"&&(m.expanded=!m.expanded,m.expanded&&!m.loaded&&await l(m))}function d(){r+=1,t.value=qo(e.workspaceName()),n.value=void 0,a.value=void 0}async function w(){const m=dc(t.value),A=cy(t.value),L=n.value;r+=1;const y=r,D=qo(e.workspaceName()),E=X=>{y===r&&(a.value={cause:X.failure})},H=await l(D);if(H===void 0||!await k(D,A.get(".")??0))return E(D);for(const X of m.filter(Y=>Y!==".")){const Y=Xn(D,X);if(Y?.kind==="DIRECTORY"&&(Y.expanded=!0,await l(Y)===void 0||!await k(Y,A.get(X)??0)))return E(Y)}if(y===r)return t.value=D,a.value=void 0,n.value=L!==void 0&&Xn(D,L)?L:void 0,H}async function k(m,A){for(;m.children.length<A&&m.nextCursor!==null;){const L=m.nextCursor;if(await l(m,!0)===void 0)return!1;if(m.nextCursor===L)break}return!0}async function T(m,A=()=>!0){const L=Ls(m);if(L===void 0||!A())return;t.value.expanded=!0;const y=t.value;if(!y.loaded&&await l(y)===void 0){if(y===t.value&&A()&&gt(y.failure)==="PERMISSION_DENIED")throw y.failure;if(y!==t.value||!y.loaded)return}if(!A())return;const D=L.split("/");let E=t.value,H="";for(const X of D.slice(0,-1)){H=H===""?X:`${H}/${X}`,Ho(E,H)||(E.children=ur([...E.children,dr(H,"DIRECTORY")]));const Y=Ho(E,H);if(Y===void 0)throw new Error("FILE_TREE_NODE_INVALID");if(Y.expanded=!0,!Y.loaded&&await l(Y)===void 0){if(y===t.value&&A()&&gt(Y.failure)==="PERMISSION_DENIED")throw Y.failure;return}if(!A())return;E=Y}Ho(E,L)||(E.children=ur([...E.children,dr(L,"FILE")]))}function p(m){n.value=m.path}function g(m){const A=Ls(m);A!==void 0&&Xn(t.value,A)!==void 0&&(n.value=A)}function R(m){s+=1,i.delete(t.value),t.value.children=Os(t.value.children,m.entries),t.value.nextCursor=m.nextCursor,t.value.loaded=!0,t.value.loading=!1,t.value.failedAppend=void 0,t.value.failure=void 0}function b(m){t.value.name=m}function C(){const m=n.value===void 0?void 0:Xn(t.value,n.value);if(m===void 0)return".";if(m.kind==="DIRECTORY")return m.path;const A=m.path.lastIndexOf("/");return A<0?".":m.path.slice(0,A)}function I(){return{root:vr(t.value),...n.value===void 0?{}:{selectedPath:n.value}}}function S(m){r+=1,t.value=vr(m.root),n.value=m.selectedPath,a.value=void 0}return{root:t,selectedPath:n,refreshError:a,applyRootPage:R,loadMore:m=>l(m,m.failedAppend??!0),refresh:w,reset:d,restore:S,reveal:T,select:p,selectPath:g,setRootName:b,snapshot:I,toggle:u,uploadDirectory:C}}function cc(e,t){const n=t.trim().toLocaleLowerCase();return n.length===0||e.toLocaleLowerCase().includes(n)}function sy(e,t){const n=[],a=(i,l)=>{if(n.push({node:i,depth:l,loadMore:!1}),!(i.kind!=="DIRECTORY"||!i.expanded)){for(const v of i.children)a(v,l+1);(i.nextCursor!==null||i.failedAppend!==void 0||i.loading&&!i.loaded)&&n.push({node:i,depth:l+1,loadMore:!0})}};a(e,0);const r=t.trim();if(r.length===0)return n;const s=new Set(["."]);for(const i of n){if(i.loadMore||!cc(i.node.path,r))continue;let l=i.node.path;for(s.add(l);l!==".";){const v=l.lastIndexOf("/");l=v<0?".":l.slice(0,v),s.add(l)}}return n.filter(i=>s.has(i.node.path))}function ly(e,t,n,a,r){const s=Math.max(0,Math.floor(e)),i=Math.max(1,a),l=Math.max(0,n),v=s*i,u=Math.max(0,v-l),d=Math.max(0,Math.min(t,u)),w=Math.floor(d/i),k=Math.ceil((d+l)/i),T=Math.max(0,Math.floor(r)),p=Math.max(0,w-T),g=Math.min(s,k+T);return{start:p,end:g,offset:p*i,totalHeight:v}}function qo(e){return{path:".",name:e,kind:"DIRECTORY",size:null,children:[],expanded:!0,loaded:!1,loading:!1,nextCursor:null,placeholder:!1}}function dr(e,t){return{path:e,name:e.split("/").at(-1)??e,kind:t,size:null,children:[],expanded:!1,loaded:!1,loading:!1,nextCursor:null,placeholder:!0}}function Os(e,t){const n=new Map(e.map(a=>[a.path,a]));for(const a of t){const r=n.get(a.path);r===void 0?n.set(a.path,{...dr(a.path,a.kind),...a,placeholder:!1}):(r.placeholder=!1,Object.assign(r,a))}return ur([...n.values()])}function ur(e){return e.sort((t,n)=>+(n.kind==="DIRECTORY")-+(t.kind==="DIRECTORY")||t.name.localeCompare(n.name))}function Ho(e,t){return e.children.find(n=>n.path===t)}function Xn(e,t){if(e.path===t)return e;for(const n of e.children){const a=Xn(n,t);if(a!==void 0)return a}}function dc(e){return[...e.expanded?[e.path]:[],...e.children.flatMap(t=>dc(t))]}function cy(e){const t=new Map,n=a=>{a.kind==="DIRECTORY"&&(t.set(a.path,a.children.length),a.children.forEach(n))};return n(e),t}function vr(e){const t=Mi(e);return{...t,loading:!1,children:Mi(t.children).map(vr)}}function dy(e){return e.replaceAll("\\","/").replace(/^\.\//,"").replace(/^\/+|\/+$/g,"")}function Ls(e){const t=e.replaceAll("\\","/");if(sa(t)||t.startsWith("/")||/^[a-z]:/iu.test(t))return;const n=dy(t);if(!(n===""||n.split("/").some(a=>a==="..")))return n}function uc(e){let t,n=!1;return{request(){return n=!0,t!==void 0||(t=(async()=>{try{for(;n;)n=!1,await e()}finally{t=void 0}})()),t},running(){return t!==void 0}}}function uy(e,t){return e?/^[a-z]:[\\/]+$/iu.test(e)?e:e.split(/[\\/]/u).filter(Boolean).at(-1)??e:t}function vy(e){let t=0;const n=x(!1),a=x(!1);let r=0;function s(){const S=e.target();return S===void 0?void 0:{target:{...S},generation:r}}function i(S){const m=e.target();return S.generation===r&&m?.nodeId===S.target.nodeId&&m.workspaceId===S.target.workspaceId}async function l(S,m,A,L,y="operation"){if(!i(S))return;const D=()=>i(S),E=u.selectedPath.value;let H;try{H=await e.mutate(S.target,m,A,L,D)}catch(X){e.onMutationFailure(X,y,S.target,A);return}try{if(!D())return;if(m==="DELETE")(E===A||E?.startsWith(`${A}/`))&&e.onDeletedSelection();else if(H!==void 0){const X=m==="MOVE"&&E?.startsWith(`${A}/`)?`${H}${E.slice(A.length)}`:H;if(await u.reveal(X,D),!D())return;u.selectPath(X),await e.onRevealSelection(X,D)}return D()?H:void 0}catch(X){D()&&e.onMutationFailure(X,y,S.target,A);return}}async function v(S,m){i(S)&&await e.revealLocal(S.target,m)}const u=iy({workspaceName:e.workspaceName,async list(S,m){const A=e.target();if(A===void 0)throw new Error("FILE_TREE_NOT_READY");return e.list({...A},S,m)}});async function d(){const S=r,m=e.target();if(m===void 0)return;const A=await u.refresh(),L=e.target();S===r&&L?.nodeId===m.nodeId&&L.workspaceId===m.workspaceId&&A?.workspace!==void 0&&e.onWorkspace(A.workspace)}function w(){const S=r;return uc(async()=>{if(S===r){a.value=!0;try{await d()}finally{S===r&&(a.value=!1)}}})}let k=w();function T(){r+=1,a.value=!1,k=w()}function p(){T(),u.reset()}function g(S){T(),u.restore(S),u.setRootName(e.workspaceName())}function R(){t+=1,n.value=!1}function b(S){const m=e.target();return S.generation===t&&m?.nodeId===S.target.nodeId&&m.workspaceId===S.target.workspaceId}async function C(S,m){const A=e.target();if(A===void 0||S.length===0)return;const L={target:{...A},generation:++t},y=[...S];n.value=!0;try{const D=await e.preflight(L.target,m,y.map(E=>E.name));return b(L)?{...L,directory:m,files:y,candidates:D}:void 0}catch(D){b(L)&&e.onFailure(D);return}finally{b(L)&&(n.value=!1)}}function I(S,m){if(!b(S))return;const A=S.files.flatMap((L,y)=>{const D=S.candidates[y],E=m[y]===!0;return D?.status==="READY"||D?.status==="EXISTS_FILE"&&E?[{file:L,directory:S.directory,overwrite:E}]:[]});return R(),A.length>0&&e.queue(A),S.files.length-A.length}return{tree:u,captureTarget:s,isCurrentTarget:i,mutate:l,revealLocal:v,refreshing:ct(a),refresh:d,requestRefresh:()=>k.request(),resetTree:p,invalidateTree:T,restoreTree:g,preflight:C,submit:I,invalidate:R,isCurrentPreflight:b,preparing:ct(n)}}function Or(e,t,n,a){if(t===void 0)return typeof n=="string"&&(e!==""||n!==a)?e:void 0}function fy(e,t,n,a,r){const s=t.filter(i=>i.repositoryPath===e.repositoryPath&&(i.worktreePath??"")===(e.worktreePath??"")).map(i=>i.path);return{kind:"WORKTREE_DIFF",...Or(e.repositoryPath,e.worktreePath,a,r)===void 0?{}:{gitFile:!0},...n,path:e.path,repositoryPath:e.repositoryPath,worktreePath:e.worktreePath??"",paths:s}}function py(e,t,n){const a=Or(e.repositoryPath,e.worktreePath,t,n);return{path:a===void 0&&e.worktreePath===void 0?vn(e):e.path,...e.worktreePath===void 0?{}:{worktreePath:e.worktreePath},...a===void 0?{}:{repositoryPath:a}}}function gy(e,t,n,a){return{kind:"HISTORY_DIFF",...e,path:n.path,repositoryPath:a.repositoryPath,worktreePath:"",commit:t.hash,...n.previousPath===void 0?{}:{previousPath:n.previousPath},refs:[...a.refs],paths:[n.path]}}function my(e,t){return e.find(n=>n.diffAvailable&&vn(n)===t)}function hy(e,t,n){const a=e.filter(s=>s.diffAvailable&&s.repositoryPath===t.repositoryPath&&(s.worktreePath??"")===t.worktreePath);if(a.length===0)return;const r=a.findIndex(s=>s.path===t.path);return a[(Math.max(r,0)+n+a.length)%a.length]}function yy(e,t,n,a,r){if(typeof e!="object"||e===null)return[];const s=e.changes;return Array.isArray(s)?s.flatMap(i=>{if(typeof i!="object"||i===null)return[];const l=i;return typeof l.path=="string"?[{repositoryPath:t,repositoryName:n,source:a,...r===void 0?{}:{worktreePath:r},path:l.path,state:l.state==="STAGED"||l.state==="UNSTAGED"||l.state==="UNTRACKED"?l.state:"UNTRACKED",change:typeof l.change=="string"?l.change:"MODIFIED",diffAvailable:l.diffAvailable===!0}]:[]}):[]}function vc(e){if(typeof e!="object"||e===null)return[];const t=e;if(!Array.isArray(t.repositories))return[];const n=t.repositories.flatMap(r=>{if(typeof r!="object"||r===null)return[];const s=r;if(typeof s.repositoryPath!="string")return[];if(s.source!=="ROOT"&&s.source!=="SUBMODULE"&&s.source!=="WORKTREE")return[];const i=s.source,l=i==="WORKTREE"&&typeof s.worktreePath=="string"?s.worktreePath:void 0;if(i==="WORKTREE"&&l===void 0)return[];const v=typeof s.repositoryName=="string"&&s.repositoryName.length>0?s.repositoryName:s.repositoryPath,u=hl.safeParse(s.error),d=df.safeParse(s.tracking);return[{repositoryPath:s.repositoryPath,repositoryName:v,source:i,...l===void 0?{}:{worktreePath:l},...typeof s.physicalPath=="string"?{physicalPath:s.physicalPath}:{},current:s.current===!0||i==="ROOT",branch:typeof s.branch=="string"?s.branch:null,...d.success&&s.status!=="UNAVAILABLE"?{tracking:d.data}:{},...typeof s.head=="string"?{head:s.head}:{},...s.status==="CLEAN"||s.status==="DIRTY"||s.status==="UNAVAILABLE"?{status:s.status}:{},locked:s.locked===!0,prunable:s.prunable===!0,...u.success?{error:u.data}:{},...s.changesTruncated===!0?{changesTruncated:!0}:{},changes:s.status==="UNAVAILABLE"?[]:yy(s,s.repositoryPath,v,i,l)}]}),a=n.find(r=>r.source==="ROOT");return a===void 0?n:[a,...n.filter(r=>r!==a)]}function wy(e){return vc(e).flatMap(t=>t.changes)}function ky(e,t){let n=t;return e.flatMap(a=>{if(a.changes.length===0)return[a];if(n<=0)return[];const r=a.changes.slice(0,n);return n-=r.length,[{...a,changes:r}]})}function by(e){if(typeof e!="object"||e===null)return!1;const t=e.repositories;return Array.isArray(t)?t.some(n=>typeof n=="object"&&n!==null&&(n.source==="ROOT"||n.source==="SUBMODULE"||n.source==="WORKTREE")):!1}function Iy(e){if(typeof e!="object"||e===null)return[];const t=e.worktrees;return Array.isArray(t)?t.flatMap(n=>{if(typeof n!="object"||n===null)return[];const a=n;return typeof a.directoryName!="string"||a.directoryName.length===0||typeof a.branch!="string"&&a.branch!==null||typeof a.head!="string"||!/^[0-9a-f]{40,64}$/u.test(a.head)||typeof a.current!="boolean"||a.status!=="CLEAN"&&a.status!=="DIRTY"&&a.status!=="UNAVAILABLE"||typeof a.locked!="boolean"||typeof a.prunable!="boolean"?[]:[a]}):[]}function Sy(e){return typeof e=="object"&&e!==null&&e.worktreesTruncated===!0}function vn(e){return e.worktreePath!==void 0?`${e.worktreePath.replace(/[\\/]+$/u,"")}/${e.path}`:e.repositoryPath.length===0?e.path:`${e.repositoryPath}/${e.path}`}function fc(e){return{ADDED:"A",MODIFIED:"M",DELETED:"D",RENAMED:"R",COPIED:"C",TYPE_CHANGED:"T"}[e]??"?"}function fr(e){return e.split("/").at(-1)??e}function Ws(e){const t=e.lastIndexOf("/");return t>0?e.slice(0,t):""}const Cy=3e4;function Ty(e){const t=wt(),n=x(!1),a=x(!1),r=wt();let s=!1;const i=x(!1),l=x(!1);let v=!1;const u=new Map,d=x(),w=x(""),k=x([]),T=wt([]),p=wt([]),g=x(null),R=x(!1),b=x(),C=wt(),I=wt({}),S=x([]),m=x([]),A=wt({}),L=wt({repositoryPath:"",refs:[]});let y,D,E=0,H=0,X=-1,Y;const U=new Map,Q=j(()=>wy(t.value)),$=j(()=>vc(t.value)),V=j(()=>by(t.value)?[]:Iy(t.value)),N=j(()=>Sy(t.value)),h=j(()=>{const Te=t.value?.errors;return Array.isArray(Te)?Te.flatMap(Ge=>{const _e=hl.safeParse(Ge);return _e.success?[_e.data]:[]}):[]});function F(Te,Ge){const _e=e.target();return Ge===E&&_e?.nodeId===Te.nodeId&&_e.workspaceId===Te.workspaceId}function z(Te,Ge,_e={},tt){const Xe=new URLSearchParams({nodeId:Te.nodeId,..._e});tt?.repositoryPath&&Xe.set("repositoryPath",tt.repositoryPath);for(const Re of tt?.refs??[])Xe.append("refs",Re);return`/api/workspaces/${encodeURIComponent(Te.workspaceId)}${Ge}?${Xe}`}function fe(Te,Ge){a.value=!1,r.value=void 0;const _e=Pr(Te?.workspace);if(_e!==void 0&&e.onWorkspace(_e),_e?.kind==="DIRECTORY"){ye(!0);return}t.value=Te;const tt=Gl(Te);tt!==void 0&&e.onBranch(Ge.workspaceId,tt)}function J(Te){return uc(async()=>{const Ge=e.target();if(Ge===void 0||Te!==E||!e.gitEnabled())return;const _e=v;v=!1,n.value=!0;const tt=X;try{const Xe=await e.http.request(z(Ge,"/changes"));F(Ge,Te)&&tt===X&&fe(Xe,Ge)}catch(Xe){F(Ge,Te)&&tt===X&&(a.value=!0,r.value=Xe,s=_e,e.onFailure(Xe,"CHANGES"))}finally{F(Ge,Te)&&(n.value=!1)}_e&&F(Ge,Te)&&e.gitEnabled()&&oe(Ge,Te)})}let re=J(E);function ge(Te=e.target()){return Te?.nodeId===Y?.nodeId&&Te?.workspaceId===Y?.workspaceId}async function ce(Te,Ge){try{const _e=await e.http.request(z(Te,"/git/fetch"),{method:"POST",body:JSON.stringify({nodeId:Te.nodeId,...Ge===void 0?{}:{repositoryPath:Ge}})});return{fetchFailed:_e.fetchFailed!==!1,updated:_e.updated!==!1}}catch{return{fetchFailed:!0,updated:!0}}}function oe(Te,Ge){const _e=JSON.stringify([Te.nodeId,Te.workspaceId]);let tt=u.get(_e);if(tt?.pending===void 0){v=!1,tt={startedAt:performance.now(),failed:!1},u.set(_e,tt);const Xe=tt;Xe.pending=ce(Te).then(Re=>(Xe.failed=Re.fetchFailed,delete Xe.pending,Re))}tt.generation!==Ge&&(tt.generation=Ge,tt.pending.then(Xe=>{if(!(!F(Te,Ge)||!e.gitEnabled())&&(i.value=Xe.fetchFailed,Xe.updated))return P()}))}function P(Te=!1){ge()||ye();const Ge=e.target();if(Te&&Ge!==void 0&&e.gitEnabled()){const _e=u.get(JSON.stringify([Ge.nodeId,Ge.workspaceId]));_e?.pending!==void 0?(oe(Ge,E),Te=!1):_e!==void 0&&performance.now()-_e.startedAt<Cy&&(i.value=_e.failed,Te=!1)}return v||=Te,re.request()}function G(Te,Ge){const _e=e.target();return ge(_e)||ye(),_e===void 0||(Ge===void 0?X>=0:!Number.isInteger(Ge)||Ge<=X)?!1:(X=Ge??0,fe(Te,_e),!0)}function ue(){I.value={},S.value=[],m.value=[],A.value={},U.clear()}function ne(){H+=1,R.value=!1,S.value=[],U.clear()}async function M(Te=!1,Ge=!1){const _e=e.target();if(_e===void 0||!e.historyEnabled()||!Te&&R.value)return;const tt=E,Xe=Te?++H:H,Re=Te?{repositoryPath:w.value,refs:[...k.value]}:{...L.value,refs:[...L.value.refs]},de=()=>F(_e,tt)&&Xe===H&&e.historyEnabled(),Ae=Te?null:g.value;R.value=!0;try{Ge&&D?.repositoryPath!==Re.repositoryPath&&(D={repositoryPath:Re.repositoryPath,promise:ce(_e,Re.repositoryPath).then(be=>be.fetchFailed)});const he=D?.repositoryPath===Re.repositoryPath?D:void 0;if(he!==void 0){const be=await he.promise;if(D===he&&(D=void 0),!de())return;l.value=be,y=void 0}let q;if(Te&&y!==Re.repositoryPath){const be=await e.http.request(z(_e,"/git/refs",{},Re));if(!de())return;if(!Array.isArray(be.refs))throw new Error("NODE_RESPONSE_INVALID");q=be.refs.filter(Ey),T.value=q,y=Re.repositoryPath;const Oe=new Set(q.map(We=>We.name));Re.refs=Re.refs.filter(We=>Oe.has(We)),k.value=[...Re.refs]}const te=await e.http.request(z(_e,"/git/history",{limit:"50",...Ae===null?{}:{cursor:Ae}},Re));if(!de())return;if(!Array.isArray(te.commits)||!te.commits.every(Ms))throw new Error("NODE_RESPONSE_INVALID");const _=Te?[]:p.value,se=new Set(_.map(be=>be.hash));p.value=[..._,...te.commits.filter(be=>se.has(be.hash)?!1:(se.add(be.hash),!0))],g.value=typeof te.nextCursor=="string"?te.nextCursor:null,b.value=void 0,C.value=void 0,Te&&(L.value=Re,ue())}catch(he){de()&&(b.value={resetPage:Te,fetch:Ge},C.value=he,e.onFailure(he,"HISTORY"))}finally{de()&&(R.value=!1)}}function ee(Te,Ge){const _e=Te!==w.value;return w.value=Te,k.value=[...Ge],_e&&(l.value=!1),M(!0,_e)}async function le(){ge()||ye();const Te=e.target(),Ge=E,_e=H;if(Te===void 0||!e.historyEnabled()||(t.value===void 0&&await P(),!F(Te,Ge)||_e!==H||!e.historyEnabled()))return;const tt=$.value.filter(Xe=>Xe.source!=="WORKTREE");tt.some(Xe=>Xe.repositoryPath===w.value)||(w.value=tt[0]?.repositoryPath??""),y=void 0,await M(!0,!0)}function Ee(Te){const Ge=e.target(),_e=E;if(Ge===void 0||!e.historyEnabled())return Promise.resolve(!1);if(I.value[Te.hash]!==void 0)return Promise.resolve(!0);const tt=U.get(Te.hash);if(tt?.promise!==void 0)return tt.promise;const Xe={};U.set(Te.hash,Xe);const Re=L.value,de={...Re,refs:[...Re.refs]},Ae=()=>F(Ge,_e)&&U.get(Te.hash)===Xe&&e.historyEnabled()&&Re===L.value;S.value=[...S.value,Te.hash];const he=(async()=>{try{if(!Ae())return!1;const q=await e.http.request(z(Ge,`/git/commits/${encodeURIComponent(Te.hash)}/files`,{},de));if(!Ae())return!1;if(!Array.isArray(q.files)||!q.files.every(Ry))throw new Error("NODE_RESPONSE_INVALID");I.value={...I.value,[Te.hash]:q.files},m.value=m.value.filter(se=>se!==Te.hash);const{[Te.hash]:te,..._}=A.value;return A.value=_,!0}catch(q){return Ae()&&(m.value.includes(Te.hash)||(m.value=[...m.value,Te.hash]),A.value={...A.value,[Te.hash]:q},e.onFailure(q,"FILES")),!1}finally{Ae()&&(S.value=S.value.filter(q=>q!==Te.hash),U.delete(Te.hash))}})();return Xe.promise=he,he}async function xe(Te,Ge){const _e={nodeId:Te.nodeId,workspaceId:Te.workspaceId};let tt;if(Te.kind==="HISTORY_DIFF"&&Te.commit!==void 0)tt=z(_e,`/git/commits/${encodeURIComponent(Te.commit)}/diff`,{path:Te.path,...Te.previousPath===void 0?{}:{previousPath:Te.previousPath}},{repositoryPath:Te.repositoryPath,refs:Te.refs??[]});else if(Te.kind==="WORKTREE_DIFF")tt=z(_e,"/changes/diff",{path:Te.path,...Te.repositoryPath===""?{}:{repositoryPath:Te.repositoryPath},...Te.worktreePath===""?{}:{worktreePath:Te.worktreePath}});else throw new Error("NODE_RESPONSE_INVALID");const Xe=await e.http.request(tt,Ge===void 0?{}:{signal:Ge});if(typeof Xe!="object"||Xe===null||!("diff"in Xe))throw new Error("NODE_RESPONSE_INVALID");return Xe.diff}async function Me(Te,Ge=e.target()){const _e=E;if(Ge===void 0||!e.gitEnabled()||!F(Ge,_e)||d.value!==void 0)return!1;d.value=pr(Te);try{return await e.http.request(z(Ge,"/changes/restore"),{method:"POST",body:JSON.stringify({nodeId:Ge.nodeId,path:Te.path,state:Te.state,...Te.repositoryPath===""?{}:{repositoryPath:Te.repositoryPath},...Te.worktreePath===void 0?{}:{worktreePath:Te.worktreePath}})}),F(Ge,_e)&&await P(),!0}catch(tt){return e.onFailure(tt,"RESTORE"),!1}finally{F(Ge,_e)&&(d.value=void 0)}}function Se(){return{changes:t.value,historyRepositoryPath:w.value,selectedHistoryRefs:[...k.value],historyCommits:[...p.value],historyNextCursor:g.value,historySource:{...L.value,refs:[...L.value.refs]}}}function ye(Te=!1){E+=1,H+=1,(!Te||!ge())&&(X=-1);const Ge=e.target();Y=Ge===void 0?void 0:{...Ge},re=J(E),t.value=void 0,n.value=!1,a.value=!1,r.value=void 0,s=!1,v=!1,i.value=!1,l.value=!1,d.value=void 0,w.value="",k.value=[],T.value=[],y=void 0,p.value=[],D=void 0,g.value=null,R.value=!1,b.value=void 0,C.value=void 0,L.value={repositoryPath:"",refs:[]},ue()}function Fe(Te){const Ge=t.value,_e=ge()&&X>=0;ye(!0),!(e.target()===void 0||!e.gitEnabled())&&(t.value=_e?Ge:Te.changes,w.value=typeof Te.historyRepositoryPath=="string"?Te.historyRepositoryPath:"",k.value=Array.isArray(Te.selectedHistoryRefs)?Te.selectedHistoryRefs.filter(tt=>typeof tt=="string"):[],p.value=Array.isArray(Te.historyCommits)?Te.historyCommits.filter(Ms):[],g.value=typeof Te.historyNextCursor=="string"?Te.historyNextCursor:null,L.value=Te.historySource??{repositoryPath:w.value,refs:[...k.value]})}function Ye(){return t.value?.repositoryRoot}function nt(Te){const Ge=e.target();return Ge===void 0?void 0:fy(Te,Q.value.filter(_e=>_e.diffAvailable),Ge,Ye(),e.workspacePath?.())}function ae(Te){return py(Te,Ye(),e.workspacePath?.())}function me(Te,Ge){const _e=e.target();return _e===void 0?void 0:gy(_e,Te,Ge,L.value)}function Pe(Te,Ge){return Or(Te,Ge,Ye(),e.workspacePath?.())}async function Ue(Te){if(!e.gitEnabled())return;await P();const Ge=my(Q.value,Te);return Ge===void 0?void 0:nt(Ge)}function Qe(Te,Ge){const _e=hy(Q.value,Te,Ge);return _e===void 0?void 0:nt(_e)}return{changes:ct(t),changesRefreshing:ct(n),changesError:ct(a),changesFailureCause:ct(r),changesFetchFailed:ct(i),historyFetchFailed:ct(l),restoringPath:ct(d),visibleChanges:Q,changeIntent:nt,changeLocation:ae,historyIntent:me,resolveRepositoryPath:Pe,comparison:Ue,adjacentDiff:Qe,repositories:$,worktrees:V,worktreesTruncated:N,discoveryErrors:h,historyRepositoryPath:ct(w),selectedHistoryRefs:ct(k),historyRefs:ct(T),historyCommits:ct(p),historyNextCursor:ct(g),historyLoading:ct(R),historyError:ct(b),historyFailureCause:ct(C),historyFiles:ct(I),historyFilesLoading:ct(S),historyFilesErrors:ct(m),historyFilesFailureCauses:ct(A),historySource:ct(L),loadChanges:P,retryChanges:()=>P(s),applyWatch:G,loadHistory:M,selectHistory:ee,openHistory:le,cancelHistoryPending:ne,loadHistoryFiles:Ee,loadDiff:xe,restoreChange:Me,snapshot:Se,restore:Fe,reset:ye}}function pr(e){return`${e.repositoryPath}:${e.worktreePath??""}:${e.state}:${e.path}`}function Ey(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.name=="string"&&typeof t.displayName=="string"&&typeof t.hash=="string"&&typeof t.current=="boolean"&&(t.kind==="LOCAL"||t.kind==="REMOTE")}function Ms(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.hash=="string"&&Array.isArray(t.parents)&&t.parents.every(n=>typeof n=="string")&&typeof t.subject=="string"&&typeof t.authorName=="string"&&typeof t.authorEmail=="string"&&typeof t.committedAt=="number"&&Array.isArray(t.refs)&&t.refs.every(n=>typeof n=="string")}function Ry(e){if(typeof e!="object"||e===null)return!1;const t=e;return typeof t.path=="string"&&typeof t.change=="string"&&(t.previousPath===void 0||typeof t.previousPath=="string")}function xs(e){if(typeof e!="object"||e===null)return!1;const t=e;return Array.isArray(t.matches)&&t.matches.every(n=>typeof n=="object"&&n!==null&&typeof n.path=="string"&&Number.isInteger(n.line)&&n.line>0&&Number.isInteger(n.column)&&n.column>0&&typeof n.preview=="string")&&typeof t.truncated=="boolean"}function Ay(e){const t=wt([]),n=x(!1),a=x(""),r=x(!1),s=x(!1),i=wt();let l,v=0;async function u(T,p=!1){if(T.query==="")return;const g=++v,{nodeId:R,workspaceId:b,query:C,useRegex:I}=T;s.value=!0,p||(i.value=void 0);try{const S=new URLSearchParams({nodeId:R,q:C});I&&S.set("regex","true");const m=await e.http.request(`/api/workspaces/${encodeURIComponent(b)}/content/search?${S}`);if(g!==v)return;if(!xs(m?.search))throw new Error("NODE_RESPONSE_INVALID");t.value=[...m.search.matches],n.value=m.search.truncated,a.value=C,r.value=I,i.value=void 0,l=void 0}catch(S){if(g!==v)return;i.value=S,l={nodeId:R,workspaceId:b,query:C,useRegex:I},e.onFailure(S)}finally{g===v&&(s.value=!1)}}function d(){v+=1,s.value=!1}function w(){d(),t.value=[],n.value=!1,a.value="",r.value=!1,i.value=void 0,l=void 0}function k(T){w(),t.value=Array.isArray(T.contentMatches)?T.contentMatches.filter(p=>xs({matches:[p],truncated:!1})):[],n.value=T.contentSearchTruncated===!0,a.value=typeof T.contentAppliedQuery=="string"?T.contentAppliedQuery:"",r.value=T.contentAppliedUseRegex===!0}return{matches:ct(t),truncated:ct(n),appliedQuery:ct(a),appliedUseRegex:ct(r),loading:ct(s),error:ct(i),search:u,cancelPending:d,snapshot:()=>({contentAppliedQuery:a.value,contentAppliedUseRegex:r.value,contentMatches:[...t.value],contentSearchTruncated:n.value}),retry:()=>l===void 0||s.value?Promise.resolve():u(l,!0),restore:k,reset:w}}function Ny(e,t,n,a,r){const s=e?.nodeId===t&&e.workspaceId===n?e:void 0;return{...s,nodeId:t,workspaceId:n,...a.files===void 0?{}:{files:a.files,...r?.topic==="files"?{filesWatchRevision:(s?.filesWatchRevision??0)+1}:{}},...a.changes===void 0?{}:{changes:a.changes,...r?.topic==="changes"?{changesWatchRevision:(s?.changesWatchRevision??0)+1}:{}}}}function Dy(e){const t=wt(),n=j(()=>{const ce=e.workspace();return uy(ce?.path,ce===void 0?"":Jn(ce))}),a=(ce,oe)=>e.notice(c("generated.workspaceInspector.unableToLoad",{value0:oe,value1:e.errorMessage(ce)}),"error",ce),r=ry({http:e.http,onWritten:async(ce,oe)=>{oe?.()!==!1&&(await i.refresh(),oe?.()!==!1&&e.isGit()&&await s.loadChanges())}}),s=Ty({http:e.http,target:()=>e.ready()?e.target.value:void 0,gitEnabled:e.isGit,workspacePath:e.workspacePath,historyEnabled:()=>e.isGit()&&e.historySupported(),onWorkspace:ce=>e.updateWorkspace(e.target.value?.nodeId??"",ce),onBranch:e.updateBranch,onFailure:(ce,oe)=>{oe==="RESTORE"&&a(ce,c("generated.workspaceInspector.revertingChanges"))}}),i=vy({target:()=>e.ready()?e.target.value:void 0,workspaceName:()=>n.value,list:r.list,onWorkspace:ce=>e.updateWorkspace(e.target.value?.nodeId??"",ce),onDeletedSelection:()=>e.workbench.invalidateDeletedSelection(),onRevealSelection:async(ce,oe)=>{await t.value?.reveal(ce,oe)},onMutationFailure:(ce,oe,P,G)=>a(ce,`${c(oe==="move"?"generated.workspaceInspector.movingFile":"generated.workspaceInspector.fileOperation")} (${P.nodeId}/${P.workspaceId}: ${G})`),mutate:r.mutate,revealLocal:r.reveal,preflight:r.preflight,queue:e.queueUploads,onFailure:ce=>a(ce,c("generated.workspaceInspector.uploadPreflight"))}),l=Ay({http:e.http,onFailure:ce=>{gt(ce)==="CAPABILITY_UNAVAILABLE"&&a(ce,c("generated.workspaceInspector.contentSearch"))}}),v=x(0),u=x(0),d=x(),w=wt();let k=-1,T;function p(){const ce=d.value,oe=e.target.value;if(ce===void 0||oe===void 0||ce.nodeId!==oe.nodeId||ce.workspaceId!==oe.workspaceId)return;const P=ce.filesWatchRevision;if(lc(ce.files)&&(P===void 0?k<0:Number.isInteger(P)&&P>k)){i.tree.applyRootPage(ce.files.files);const G=Pr(ce.files.workspace);G!==void 0&&e.updateWorkspace(oe.nodeId,G),k=P===void 0||!Number.isInteger(P)?0:P}ce.changes!==void 0&&s.applyWatch(ce.changes,ce.changesWatchRevision)}const g=He(d,p);let R=[];function b(){if(R.length>0)return;const ce=j(()=>e.visible()&&e.ready()&&e.activeTool()==="files"),oe=j(()=>e.visible()&&e.ready()&&e.searchReady()&&e.activeTool()==="search"),P=j(()=>e.visible()&&e.ready()&&e.isGit()&&e.historySupported()&&e.activeTool()==="history"),G=()=>{!e.visible()||!e.ready()||(e.activeTool()==="changes"?s.loadChanges(!0):P.value&&s.openHistory())};R=[He([ce,()=>e.target.value?.nodeId,()=>e.target.value?.workspaceId],([ue,ne,M],[ee,le,Ee])=>{ee&&!ue&&ne===le&&M===Ee&&i.invalidate(),ue&&(!ee||ne!==le||M!==Ee)&&i.requestRefresh()},{flush:"sync"}),He(v,()=>{ce.value&&i.requestRefresh()}),He(oe,(ue,ne)=>{ne&&!ue&&l.cancelPending()},{flush:"sync"}),He(P,(ue,ne)=>{ne&&!ue&&s.cancelHistoryPending()},{flush:"sync"}),He([e.visible,e.ready,()=>e.target.value?.nodeId,()=>e.target.value?.workspaceId,e.isGit,e.historySupported,e.activeTool],G,{flush:"post"}),He(u,()=>{e.visible()&&e.activeTool()==="changes"&&s.loadChanges()})],G(),ce.value&&i.requestRefresh()}function C(){R.forEach(ce=>ce()),R=[]}function I(ce,oe,P,G){d.value=Ny(d.value,ce,oe,P,G)}function S(){T=void 0,k=-1}function m(){if(T===void 0||!e.ready()||!e.isGit())return;const ce=T;T=void 0,p(),s.restore(ce)}function A(ce){ce===void 0?i.resetTree():i.restoreTree(ce),i.tree.setRootName(n.value),k=-1,p()}function L(ce){T=ce,ce!==void 0&&m()}function y(){i.requestRefresh(),e.isGit()&&s.loadChanges()}function D(){S(),i.invalidate(),i.resetTree(),s.reset(),l.reset(),w.value?.restore({})}function E(ce){const oe=w.value;if(oe===ce)return;const P=e.target.value,G=e.cache();oe!==void 0&&P!==void 0&&G.isActive(P.nodeId,P.workspaceId)&&G.updateSearch(P.nodeId,P.workspaceId,{...l.snapshot(),...oe.snapshot()}),w.value=ce??void 0,ce!==null&&P!==void 0&&ce.restore(G.view(P.nodeId,P.workspaceId).search??{})}function H(ce){return{...l.snapshot(),...w.value?.snapshot()??(ce===void 0?{}:{...ce.contentQuery===void 0?{}:{contentQuery:ce.contentQuery},...ce.contentUseRegex===void 0?{}:{contentUseRegex:ce.contentUseRegex}})}}function X(ce){l.restore(ce??{}),w.value?.restore(ce??{})}function Y(){w.value?.focus()}function U(){i.invalidate(),i.invalidateTree()}const Q=He(n,ce=>i.tree.setRootName(ce)),$=He(()=>[e.target.value?.nodeId,e.target.value?.workspaceId],([ce,oe],[P,G])=>{ce===P&&oe===G||D()},{flush:"sync"}),V=He([e.ready,e.workspaceKind],([ce,oe],[P,G])=>{G==="GIT_WORKSPACE"&&oe!==void 0&&oe!=="GIT_WORKSPACE"&&(S(),s.reset(!0)),P&&!ce&&U(),ce&&(p(),m())},{flush:"sync"});function N(){C(),g(),Q(),$(),V(),s.reset(),i.invalidate(),i.resetTree(),l.reset()}function h(ce){ce==="changes"?s.loadChanges():i.requestRefresh()}async function F(ce,oe=()=>!0){const P=i.captureTarget(),G=()=>P!==void 0&&i.isCurrentTarget(P)&&oe();G()&&(await i.tree.reveal(ce,G),G()&&(i.tree.selectPath(ce),await t.value?.reveal(ce,G)))}function z(ce,oe=!1){const P=e.target.value;if(!e.ready()||P===void 0)return;const G=ce.diffAvailable?s.changeIntent(ce):void 0,ue=s.changeLocation(ce);e.workbench.openToolIntent({...P,...ue,...G===void 0?{}:{tab:G}},oe)}function fe(ce,oe,P=!1){const G=e.target.value;if(!e.ready()||G===void 0)return;const ue=s.historyIntent(ce,oe);ue!==void 0&&e.workbench.openToolIntent({...G,path:ue.path,tab:ue},P)}function J(ce,oe){return ce.kind==="TOOL_CHANGE_DIFF"?rc(ce,P=>e.http.request(P),oe):s.loadDiff(ce,oe)}function re(ce){ce==="files"?v.value+=1:u.value+=1}function ge(ce,oe,P){e.target.value?.nodeId!==ce||e.target.value.workspaceId!==oe||(P==="files"||P==="changes")&&re(P)}return{invalidateWorkspace:ge,files:i,git:s,search:l,reportFailure:a,revealFileTree:F,loadDiff:J,setFilesPanel:ce=>{t.value=ce??void 0},mountSurface:b,unmountSurface:C,acceptWatch:I,applyWatch:p,resetTarget:S,restorePendingGit:m,restoreFiles:A,restoreGit:L,refreshAfterWrite:y,invalidate:re,activateTarget:D,suspendFiles:U,dispose:N,refreshVisible:h,openGitChange:z,openHistoryDiff:fe,setSearchPanel:E,searchSnapshot:H,restoreSearch:X,focusSearch:Y}}function Py(e){function t(){return{target:wt(),fileContent:wt(),contentUrl:x(),loading:x(!1),error:wt(),downloading:x(!1),readController:void 0,operation:0}}const n=new Map;function a(p){let g=n.get(p);return g===void 0&&(g=t(),n.set(p,g)),g}function r(p){const g=a(p);return{target:ct(g.target),fileContent:ct(g.fileContent),contentUrl:ct(g.contentUrl),loading:ct(g.loading),error:ct(g.error),downloading:ct(g.downloading)}}function s(p){p.contentUrl.value?.startsWith("blob:")&&Wo(p.contentUrl.value),p.contentUrl.value=void 0}function i(p){const g=n.get(p);g!==void 0&&(g.operation+=1,g.readController?.abort(),g.loading.value=!1,g.downloading.value=!1,s(g),n.delete(p))}function l(){for(const p of n.keys())i(p)}async function v(p,g,R={}){const b=a(p);b.readController?.abort();const C=new AbortController;b.readController=C;const I=++b.operation,S=()=>n.get(p)===b&&b.operation===I,m={...g,...g.history===void 0?{}:{history:{...g.history,refs:[...g.history.refs]}}};g=m;const A={...e.access(g)};b.target.value=m,b.downloading.value=!1,s(b);const L=R.textPreview??za(g.path);b.fileContent.value={path:g.path,...R.size===void 0?{}:{size:R.size},encoding:L?"utf-8":"base64",content:"",truncated:!1},b.loading.value=!0,b.error.value=void 0;try{if(m.history!==void 0){const X=m.history,Y=A.contentUrl(m);if(L){const $=R.serverOnly?void 0:await A.directGitFileReadRange?.(X.commit,g.path,X.repositoryPath,X.refs,0,Qi,void 0,C.signal);if(!S())return;let V,N;if($!==void 0)V=$.bytes,N=$.size;else{const F=await A.fetchFile(m,{signal:C.signal,headers:{range:`bytes=0-${Qi-1}`}});if(!F.ok)throw qa(await F.json().catch(()=>({})),F.status);V=new Uint8Array(await F.arrayBuffer());const z=F.headers.get("content-range")?.match(/\/(\d+)$/u)?.[1];N=z===void 0?V.byteLength:Number(z)}if(!Number.isSafeInteger(N)||N<V.byteLength)throw new Error("NODE_RESPONSE_INVALID");const h=ar(V,g.path,V.byteLength===N);return S()&&(b.fileContent.value={path:g.path,size:N,...h,truncated:h.encoding==="utf-8"&&V.byteLength<N}),S()?b.fileContent.value:void 0}if(qp(g.path)==="unsupported")return b.fileContent.value;const U=await u(m,A,C.signal,R.serverOnly).catch(()=>{});if(!S())return;b.fileContent.value={path:g.path,...U===void 0?{}:{size:U},encoding:"base64",content:"",truncated:!1};const Q=R.serverOnly?void 0:await as(g.path,async()=>A.directGitFileObjectUrl?.(X.commit,g.path,X.repositoryPath,X.refs,C.signal));if(!S()){Q?.startsWith("blob:")&&Wo(Q);return}return b.contentUrl.value=Q??Y,b.fileContent.value}if(Er(g.path)){const X=R.serverOnly?void 0:await as(g.path,async()=>A.directFileObjectUrl?.(g.path,g.worktreePath,g.repositoryPath,C.signal));if(!S()){X?.startsWith("blob:")&&Wo(X);return}return b.contentUrl.value=X??A.contentUrl(m),b.fileContent.value}let y=!1,D;async function E(X,Y){const U=Y?await A.directFileReadRange?.(g.path,0,X,g.worktreePath,D,g.repositoryPath,C.signal):void 0;if(C.signal.throwIfAborted(),U!==void 0){y=!0,D={revision:U.revision,size:U.size};const $=await Yp(U);return{...ar(U.bytes,g.path,U.nextOffset===null),size:U.size,nextOffset:U.nextOffset,...$===void 0?{}:{revision:$}}}if(Y&&y)throw new Error("DIRECT_FILE_READ_FAILED");const Q=await A.read(g,X,C.signal);if(!$s(Q))throw new Error("NODE_RESPONSE_INVALID");return Qp(Q.file,g.path)}let H;try{H=await lr(X=>E(X,!R.serverOnly),S)}catch(X){if(!y||R.serverOnly||!S())throw X;D=void 0,H=await lr(Y=>E(Y,!1),S)}return S()?(b.fileContent.value={path:g.path,size:H.size,encoding:H.encoding,...H.previewEncoding===void 0?{}:{previewEncoding:H.previewEncoding},content:H.encoding==="base64"?"":H.content,truncated:H.encoding!=="base64"&&H.nextOffset!==null,...H.revision===void 0?{}:{revision:H.revision}},b.fileContent.value):void 0}catch(y){if(!S())return;gt(y)==="FILE_TOO_LARGE"?b.fileContent.value={path:g.path,...R.size===void 0?{}:{size:R.size},encoding:"base64",content:"",truncated:!1}:b.error.value=y}finally{S()&&(b.loading.value=!1,b.readController=void 0)}}async function u(p,g,R,b=!1){const C=p.history,I=b?void 0:await g.directGitFileReadRange?.(C.commit,p.path,C.repositoryPath,C.refs,0,1,void 0,R);if(I!==void 0)return I.size;R.throwIfAborted();const S=await g.fetchFile(p,{signal:R,headers:{range:"bytes=0-0"}});if(!S.ok)throw qa(await S.json().catch(()=>({})),S.status);const m=S.headers.get("content-range")?.match(/\/(\d+)$/u)?.[1],A=Number(m??S.headers.get("content-length"));if(!Number.isSafeInteger(A)||A<0)throw new Error("NODE_RESPONSE_INVALID");return A}async function d(p,g,R){const b=n.get(p),C=b?.target.value,I=b?.fileContent.value;if(b===void 0||b.loading.value||C===void 0||I===void 0||I.encoding!=="utf-8"||I.previewEncoding!==void 0||I.truncated||I.revision===void 0||C.history!==void 0||C.repositoryPath!==void 0||C.worktreePath!==void 0||sa(C.path))throw new Error("FILE_WRITE_INVALID");const S=b.operation,m=await e.access(C).write(C.path,g,R),A=m.file?.revision,L=m.file?.size;if(typeof A!="string"||typeof L!="number"||!Number.isSafeInteger(L)||L<0)throw new Error("NODE_RESPONSE_INVALID");n.get(p)===b&&b.operation===S&&b.fileContent.value===I&&(b.fileContent.value={...I,content:g,revision:A,size:L});try{Promise.resolve(e.onWritten(C)).catch(()=>{})}catch{}return A}async function w(p){const g=await e.access(p).read(p,1);if(!$s(g))throw new Error("NODE_RESPONSE_INVALID")}async function k(p){const g=n.get(p),R=g?.target.value;if(g===void 0||R===void 0)return;const b=e.access(R),C=g.contentUrl.value,I=g.operation;g.downloading.value=!0;try{if(C?.startsWith("blob:")){ns(C,R.path.split("/").at(-1)??"download");return}await T(R,b)}finally{n.get(p)===g&&I===g.operation&&(g.downloading.value=!1)}}async function T(p,g=e.access(p)){p={...p,...p.history===void 0?{}:{history:{...p.history,refs:[...p.history.refs]}}},g={...g};const R=p.history,b=R===void 0?await g.directFileDownload?.(p.path,p.worktreePath,p.repositoryPath):await g.directGitFileDownload?.(R.commit,p.path,R.repositoryPath,R.refs);b!==void 0&&b!=="UNAVAILABLE"||ns(g.contentUrl(p,!0),p.path.split("/").at(-1)??"download")}return{page:r,open:v,save:d,checkReadable:w,download:k,downloadTarget:T,close:i,reset:l}}function $s(e){if(typeof e!="object"||e===null||!("file"in e))return!1;const t=e.file;return typeof t=="object"&&t!==null&&(t.encoding==="utf-8"||t.encoding==="base64")&&typeof t.size=="number"&&Number.isSafeInteger(t.size)&&t.size>=0&&typeof t.content=="string"&&(t.nextOffset===null||Number.isSafeInteger(t.nextOffset))}function Oy(){return{navigationLoading:x(!1),navigationTargets:wt([]),navigationNoDefinition:x(!1),navigationNotice:x()}}function Bo(e){if(e.state==="UNAVAILABLE")return"UNAVAILABLE";if(e.state==="FAILED"&&e.failureCode==="SYMBOL_INDEX_LIMIT_EXCEEDED")return"LIMITED"}function Ly(e){const t=new Map;let n=0,a,r;function s(g){let R=t.get(g);return R===void 0&&(R=Oy(),t.set(g,R)),{navigationLoading:ct(R.navigationLoading),navigationTargets:ct(R.navigationTargets),navigationNoDefinition:ct(R.navigationNoDefinition),navigationNotice:ct(R.navigationNotice)}}function i(){n+=1,r?.();const g=a===void 0?void 0:t.get(a);g!==void 0&&(g.navigationLoading.value=!1),a=void 0}function l(g){i();const R=g===void 0?void 0:t.get(g);R!==void 0&&(R.navigationLoading.value=!1,R.navigationTargets.value=[],R.navigationNoDefinition.value=!1,R.navigationNotice.value=void 0)}function v(g){l(g),t.delete(g)}function u(){i(),t.clear()}function d(){return new Promise(g=>{const R=setTimeout(b,1e3);function b(){clearTimeout(R),r=void 0,g()}r=b})}function w(g){return`/api/workspaces/${encodeURIComponent(g.workspaceId)}/symbols`}async function k(g,R){for(let b=0;b<120&&R();b+=1){const C=await g();if(!R())return;const I=vf.safeParse(C?.definition);if(!I.success)throw new Error("NODE_RESPONSE_INVALID");if(I.data.state==="BUILDING"){await d();continue}if(I.data.state==="FAILED"&&Bo(I.data)===void 0)throw new Error(I.data.failureCode??"SYMBOL_INDEX_BUILD_FAILED");return I.data}if(R())throw new Error("SYMBOL_INDEX_BUILD_FAILED")}async function T(g,R){const b={...g},C="symbol"in R?R.symbol:void 0,I="symbol"in R?null:JSON.stringify({nodeId:b.nodeId,path:b.path,reference:{...R.reference,sourceContext:R.sourceContext}});l(b.pageId);const S=t.get(b.pageId);if(S===void 0)return;a=b.pageId;const m=n,A=()=>m===n;S.navigationLoading.value=!0;const L=(y,D)=>e.http.request(`${w(b)}/definition?${new URLSearchParams({nodeId:b.nodeId,path:b.path,symbol:y,references:D})}`);try{const y=await k(C!==void 0?()=>L(C,"0"):()=>e.http.request(`${w(b)}/definition`,{method:"POST",body:I}),A);if(y===void 0||!A())return;const D=Bo(y);if(D!==void 0){S.navigationNotice.value=D;return}if(C!==void 0){const E=y.targets.map(X=>({...X,source:"DEFINITION"}));S.navigationTargets.value=E,S.navigationLoading.value=E.length===0;const H=async()=>{try{const X=await k(()=>L(C,"1"),A);if(X===void 0||!A()||(S.navigationNotice.value=Bo(X),S.navigationNotice.value!==void 0))return;const Y=X.targets.length===0?E:X.targets.map(Q=>({...Q,source:"DEFINITION"})),U=X.references.map(Q=>({...Q,source:"REFERENCE"}));S.navigationTargets.value=[...Y,...U],S.navigationNoDefinition.value=Y.length===0&&U.length===0}catch(X){A()&&e.onFailure(X)}};E.length===0?await H():H()}else{const E=y.paths.map(H=>({...H,source:"FILE"}));E.length===0?S.navigationNoDefinition.value=!0:E.length===1?e.onFileTarget(E[0],b.pageId):S.navigationTargets.value=E}}catch(y){A()&&e.onFailure(y)}finally{A()&&(S.navigationLoading.value=!1)}}async function p(g){try{const R=await e.http.request(`${w(g)}/prepare?${new URLSearchParams({nodeId:g.nodeId,path:g.path})}`);if(!uf.safeParse(R?.preparation).success)throw new Error("NODE_RESPONSE_INVALID")}catch{}}return{page:s,navigate:T,prewarm:p,cancel:i,clear:l,release:v,reset:u}}function Wy(){let e=[],t=-1;function n(l,v){l!==void 0&&(t<0?(e=[l],t=0):e[t]=l,!(l.tabId===v.tabId&&l.line===v.line&&l.column===v.column)&&(e=[...e.slice(0,t+1),v],t+=1))}function a(l,v){const u=t+l;if(!(u<0||u>=e.length))return v!==void 0&&(e[t]=v),t=u,e[t]}function r(l){return t+l>=0&&t+l<e.length}function s(l){const v=e.slice(0,t+1).filter(u=>u.tabId!==l).length;e=e.filter(u=>u.tabId!==l),t=Math.min(e.length-1,v-1)}function i(){e=[],t=-1}return{record:n,travel:a,canTravel:r,remove:s,clear:i}}function My(e){const t=typeof location>"u"?void 0:Ji(location.href),n=x(t!==void 0),a=x(t!==void 0),r=x(!1),s=x(t);let i=typeof location>"u"?void 0:location.href,l=!1,v=!1;function u(T){const p=T.detail?.url;if(typeof p!="string")return;const g=Ji(p);g!==void 0&&(T.preventDefault(),n.value=!0,a.value=!0,r.value=!1,s.value=g,i=p)}async function d(){const T=s.value,p=i;if(v||T===void 0||l||!e.authenticated()||!e.hasNodes())return;l=!0,r.value=!1;let g=!1;try{if(e.nodeId()!==T.nodeId||e.workspaceId()!==T.workspaceId){if(await e.selectWorkspace({nodeId:T.nodeId,workspaceId:T.workspaceId}),v||s.value!==T)return;if(e.nodeId()!==T.nodeId||e.workspaceId()!==T.workspaceId){s.value=void 0,g=!0,r.value=!0;return}}if(!e.filesReady()){if(e.manifestLoading())return;s.value=void 0,g=!0,r.value=!0;return}if(s.value!==T)return;if(s.value=void 0,g=!0,await e.open(T),!v&&s.value===void 0&&e.nodeId()===T.nodeId&&e.workspaceId()===T.workspaceId&&p!==void 0&&typeof location<"u"&&typeof history<"u"){const R=new URL(p,location.href);R.origin===location.origin&&R.pathname===location.pathname&&(history.replaceState(history.state,"",R),e.captureRoute())}}catch{if(v)return;s.value===T?(s.value=void 0,r.value=!0):g&&s.value===void 0&&e.nodeId()===T.nodeId&&e.workspaceId()===T.workspaceId&&(r.value=!0),g=!0}finally{g&&s.value===void 0&&(a.value=!1),l=!1,!v&&s.value!==void 0&&s.value!==T&&Promise.resolve().then(d)}}typeof window<"u"&&window.addEventListener(Xi,u);const w=He([s,()=>e.authenticated(),e.hasNodes,e.nodeId,e.workspaceId,e.filesReady,e.manifestLoading],()=>{d()},{immediate:!0,flush:"post"});function k(){v=!0,w(),typeof window<"u"&&window.removeEventListener(Xi,u)}return Ht()!==void 0&&Zn(k),{standaloneFileMode:n,standaloneFileLoading:a,standaloneFileError:r,dispose:k}}function xy(e){const t=wt(),n=()=>t.value??e.page(),a=oc(),r=Wy(),s=Py({...e.preview,access:e.access}),i=Ly(e.navigation),l=or(),v=or();function u(q,te,_,se,be,Oe){const We=e.externalTarget();if(We===void 0)return;const Ie=new URLSearchParams({standaloneFile:"1",...We,path:q,rawContent:"1",...e.fileWriteEnabled()&&be===void 0&&Oe===void 0?{write:"1"}:{},...Oe===void 0?{}:{repositoryPath:Oe},...be===void 0?{}:{worktreePath:be},...se==="markdown"?{markdownPreview:"1"}:{},...se==="html"?{htmlPreview:"1"}:{},...te===void 0?{}:{line:String(te)},..._===void 0?{}:{column:String(_)}});l.open(`/console?${Ie}`)===void 0&&e.onPopupBlocked()}function d(q){if(q.kind!=="WORKTREE_DIFF"&&q.kind!=="HISTORY_DIFF")return;const te=e.externalTarget();if(te===void 0)return;const _=new URLSearchParams({standaloneFile:"1",...te,fileTabKind:q.kind,path:q.path,...q.gitFile?{gitFile:"1"}:{},...q.repositoryPath===""?{}:{repositoryPath:q.repositoryPath},...q.worktreePath===""?{}:{worktreePath:q.worktreePath},...q.commit===void 0?{}:{commit:q.commit},...q.previousPath===void 0?{}:{previousPath:q.previousPath}});for(const se of q.refs??[])_.append("refs",se);for(const se of q.paths??[q.path])_.append("paths",se);l.open(`/console?${_}`)===void 0&&e.onPopupBlocked()}function w(q,te){te?u(q.path,void 0,void 0,void 0,q.worktreePath,q.repositoryPath):re(q.path,void 0,q.worktreePath,!1,void 0,q.repositoryPath)}function k(q){const te=e.externalTarget();if(te===void 0)return;const _=new URLSearchParams({standaloneFile:"1",...te,path:q,htmlPreview:"1"});v.openNew(`/console?${_}`)===void 0&&e.onPopupBlocked()}const T=He(a.activeTabId,()=>i.cancel(),{flush:"sync"}),p=wt([]),g=x(!1),R=new Map;let b=0,C=0,I=!1,S;function m(){return S=void 0,++b}function A(q){return q===b}function L(){b+=1,S=void 0}function y(q){const te=S;if(te===void 0||q!==void 0&&q!==te.tab.id)return;const _=e.target();if(te.generation!==b||a.activeTab.value!==te.tab||_?.nodeId!==te.tab.nodeId||_.workspaceId!==te.tab.workspaceId){S=void 0;return}const se=n();se===void 0||!se.focusPage(te.tab.id)||(S=void 0,te.line!==void 0&&se.navigateTo(te.tab.id,te.line,te.column))}function D(q,te){q===void 0||!A(te)||a.activeTab.value!==q||(S={tab:q,generation:te},ut(()=>y(q.id)))}function E(){L(),C+=1,I=!1}function H(q){g.value=q}function X(q){return typeof q=="object"&&q!==null&&typeof q.tabIdentity=="string"&&typeof q.path=="string"&&typeof q.content=="string"&&typeof q.expectedRevision=="string"}function Y(){const q=new Set(a.tabs.value.map(_=>_.identity)),te=new Map([...R].filter(([_])=>q.has(_)));for(const _ of n()?.captureDirtyDrafts()??[])X(_)&&q.has(_.tabIdentity)&&te.set(_.tabIdentity,_);return te}function U(){if(n()?.hasPendingSave())return!1;for(const[q,te]of Y())R.set(q,te);for(const q of p.value){const te=n()?.cursorPosition(q.id);te!==void 0&&(q.targetLine.value=te.line,q.targetColumn.value=te.column)}return L(),i.cancel(),H(!0),!0}function Q(){const q=a.snapshot();return{fileTabs:{...q,tabs:q.tabs.map(te=>{const _=p.value.find(We=>We.id===te.id),se=n()?.cursorPosition(te.id),be=se?.line??_?.targetLine.value,Oe=se?.column??_?.targetColumn.value;return{...te,...be===void 0?{}:{targetLine:be},...Oe===void 0?{}:{targetColumn:Oe}}})},dirtyTextDrafts:[...Y().values()],fileWindowSuspended:g.value}}function $(q){R.clear();for(const te of q)X(te)&&R.set(te.tabIdentity,te)}function V(q,te,_){L();const se=++C;Fe(),a.restore(q),$(te),H(_),N(se)}async function N(q){if(e.target()===void 0){I=!0;return}I=!1;for(const te of a.tabs.value){if(q!==C)return;if(!a.tabs.value.some(be=>be.id===te.id&&be.identity===te.identity))continue;const _=a.activeTabId.value;let se;if(te.kind==="WORKTREE_TEXT"||te.kind==="WORKTREE_PREVIEW")se=re(te.path,te.targetLine,te.worktreePath===""?void 0:te.worktreePath,!0,te.targetColumn,te.gitFile?te.repositoryPath:void 0,!1,!0);else if(te.kind==="HISTORY_TEXT"&&te.commit!==void 0){const{previousPath:be,...Oe}=te;se=J({...Oe,kind:"HISTORY_DIFF",paths:[te.path]},void 0,!1)}else continue;_!==void 0&&a.activate(_),await se}}function h(){I&&e.target()!==void 0&&N(C)}function F(q){const te=s.page(q);return{...te,id:q,get repositoryPath(){return te.target.value?.repositoryPath},worktreePath:j(()=>te.target.value?.worktreePath),get historySource(){return te.target.value?.history},targetLine:x(),targetColumn:x(),...i.page(q)}}function z(q){const te=p.value.find(se=>se.id===q);if(te!==void 0)return te;const _=F(q);return p.value=[...p.value,_],_}async function fe(q,te){const _=e.target();if(_===void 0)return;const se=za(q.path),be=a.open({kind:se?"WORKTREE_TEXT":"WORKTREE_PREVIEW",..._,path:q.path,repositoryPath:te.repositoryPath??"",...te.repositoryPath===void 0?{}:{gitFile:!0},worktreePath:te.worktreePath??"",...te.line===void 0?{}:{targetLine:te.line},...te.column===void 0?{}:{targetColumn:te.column}}),Oe=te.existingPreview??z(be.id);i.clear(Oe.id),Oe.targetLine.value=te.line,Oe.targetColumn.value=te.column;const We=await s.open(Oe.id,{..._,path:q.path,...te.worktreePath===void 0?{}:{worktreePath:te.worktreePath},...te.repositoryPath===void 0?{}:{repositoryPath:te.repositoryPath}},{textPreview:se,serverOnly:te.serverOnly}),Ie=e.target();Ie?.nodeId===_.nodeId&&Ie.workspaceId===_.workspaceId&&We?.encoding==="utf-8"&&p.value.includes(Oe)&&te.worktreePath===void 0&&te.repositoryPath===void 0&&e.prewarmEnabled()&&i.prewarm({nodeId:_.nodeId,workspaceId:_.workspaceId,path:q.path})}async function J(q,te,_=!0){const se=e.target();if(se===void 0||q.kind!=="HISTORY_DIFF"&&q.kind!=="HISTORY_TEXT"||q.commit===void 0)return;const be=le(),Oe=a.open({kind:"HISTORY_TEXT",...se,path:q.path,repositoryPath:q.repositoryPath,worktreePath:"",commit:q.commit,refs:q.refs??[],...q.targetLine===void 0?{}:{targetLine:q.targetLine},...q.targetColumn===void 0?{}:{targetColumn:q.targetColumn}});_&&Ee(be,Oe.id,q.targetLine,q.targetColumn);const We=z(Oe.id);i.clear(We.id),We.targetLine.value=q.targetLine,We.targetColumn.value=q.targetColumn;const Ie=typeof te=="object"&&te!==null&&te.binary===!0;await s.open(Oe.id,{...se,path:q.path,history:{commit:q.commit,repositoryPath:q.repositoryPath,refs:q.refs??[]}},{textPreview:!Ie&&za(q.path)})}function re(q,te,_,se=!1,be,Oe,We=!0,Ie=!1){const st=We&&!Ie?m():void 0;We&&H(!1);const pe=fe({path:q,name:q.split("/").at(-1)??q},{serverOnly:!1,...te===void 0?{}:{line:te},...be===void 0?{}:{column:be},..._===void 0?{}:{worktreePath:_},...Oe===void 0?{}:{repositoryPath:Oe}});return st!==void 0&&D(a.activeTab.value,st),pe}async function ge(q,te=!1){if(q.kind!=="WORKTREE_DIFF")return;te||m();const _=le(),se=q.gitFile?q.repositoryPath:e.resolveRepositoryPath(q.repositoryPath,q.worktreePath||void 0),be=se!==void 0?q.path:q.worktreePath===""&&q.repositoryPath!==""?`${q.repositoryPath}/${q.path}`:q.path,Oe=re(be,void 0,q.worktreePath||void 0,!0,void 0,se,!0,!0),We=a.activeTabId.value;We!==void 0&&Ee(_,We),await Oe}async function ce(q){const te=e.target();if(te===void 0||te.nodeId!==q.nodeId||te.workspaceId!==q.workspaceId)return;const _=m();if(H(!1),Er(q.path)&&(q.kind==="WORKTREE_DIFF"||q.kind==="HISTORY_DIFF"||q.kind==="HISTORY_TEXT")){if(q.kind!=="WORKTREE_DIFF"&&!q.commit)return;const Oe=q.kind==="WORKTREE_DIFF"?ge(q,!0):J(q),We=a.activeTab.value;D(We,_),await Oe;return}if(q.kind==="HISTORY_TEXT"){if(!q.commit)return;const Oe=J(q);D(a.activeTab.value,_),await Oe;return}const se=le(),be=a.open(q);Ee(se,be.id,q.targetLine,q.targetColumn),D(a.activeTab.value,_),await ut()}async function oe(q,te,_){const se=m(),be=e.target();if(be===void 0)return;const Oe=le(),We=()=>{const ze=e.target();return A(se)&&ze?.nodeId===be.nodeId&&ze.workspaceId===be.workspaceId};if(sa(q)||q.startsWith(".mar/temp-files/")){try{await s.checkReadable({...be,path:q})}catch(ze){We()&&e.onOpenFailure(ze,q);return}if(!We())return}H(!1);const Ie=p.value.find(ze=>ze.worktreePath.value===void 0&&ze.fileContent.value?.path===q);Ie!==void 0&&(a.activate(Ie.id),te!==void 0&&(Ie.targetLine.value=te),_!==void 0&&(Ie.targetColumn.value=_));const st=Ie===void 0?re(q,te,void 0,!0,_,void 0,!0,!0):Promise.resolve(),pe=a.activeTab.value,Ce=pe?.id,je=()=>We()&&Ce!==void 0&&a.activeTab.value===pe&&a.activeTabId.value===Ce;je()&&Ce!==void 0&&(Ee(Oe,Ce,te,_),S={tab:pe,generation:se,...Ie!==void 0&&te!==void 0?{line:te}:{},...Ie!==void 0&&_!==void 0?{column:_}:{}},ut(()=>{je()&&y(Ce)})),e.reveal(q,je).catch(ze=>{je()&&e.onRevealFailure(ze)}),await st}async function P(q,te,_){const se=m(),be=e.target();if(be===void 0)return;const Oe=await e.comparison(q),We=e.target();!A(se)||We?.nodeId!==be.nodeId||We.workspaceId!==be.workspaceId||(Oe!==void 0?await ce(Oe):await oe(q,te,_))}async function G(q){return q.tab!==void 0?ce(q.tab):q.worktreePath===void 0&&q.repositoryPath===void 0?oe(q.path,q.line,q.column):re(q.path,q.line,q.worktreePath,!1,q.column,q.repositoryPath)}function ue(q,te){const _=e.target();_?.nodeId!==q.nodeId||_.workspaceId!==q.workspaceId||(q.tab===void 0?w(q,te):te?d(q.tab):G(q))}const ne=x(0),M=j(()=>(ne.value,r.canTravel(-1))),ee=j(()=>(ne.value,r.canTravel(1)));function le(){const q=a.activeTabId.value;return q===void 0?void 0:{tabId:q,...n()?.cursorPosition(q)}}function Ee(q,te,_,se){q?.tabId===te&&_===void 0||(r.record(q,{tabId:te,..._===void 0?{}:{line:_},...se===void 0?{}:{column:se}}),ne.value+=1)}function xe(q){const te=r.travel(q,le());if(te===void 0||!a.tabs.value.some(be=>be.id===te.tabId))return;a.activate(te.tabId);const _=a.activeTab.value,se=n();ut(()=>{_===void 0||a.activeTab.value!==_||n()!==se||(te.line!==void 0?se?.navigateTo(te.tabId,te.line,te.column):se?.focusPage(te.tabId))}),ne.value+=1}function Me(q){r.remove(q),ne.value+=1}function Se(){r.clear(),ne.value+=1}function ye(q){const te=p.value.indexOf(q);if(te<0)return;const _=a.tabs.value.find(be=>be.id===q.id);_!==void 0&&R.delete(_.identity);const se=a.activeTabId.value===q.id;s.close(q.id),i.release(q.id),p.value=p.value.filter(be=>be!==q),a.remove(q.id),Me(q.id),se&&a.activate(p.value.at(te-1)?.id??p.value.at(te)?.id??-1)}function Fe(){Se();for(const q of p.value){const te=a.tabs.value.find(_=>_.id===q.id);te!==void 0&&R.delete(te.identity),s.close(q.id),a.remove(q.id)}p.value=[],i.reset()}function Ye(q){for(const te of q){const _=a.tabs.value.find(be=>be.id===te);if(_===void 0)continue;R.delete(_.identity);const se=p.value.find(be=>be.id===te);se!==void 0?ye(se):(a.remove(te),Me(te))}}function nt(){E(),H(!1),R.clear(),Fe(),a.clear()}function ae(){E(),H(!1),R.clear(),Fe()}function me(){Ye(a.tabs.value.filter(q=>q.gitFile===!0||q.worktreePath!==""||q.kind==="WORKTREE_DIFF"||q.kind==="HISTORY_DIFF"||q.kind==="HISTORY_TEXT").map(q=>q.id))}function Pe(q){const te=le();if(a.activate(q),a.activeTabId.value!==q)return;const _=n()?.cursorPosition(q);Ee(te,q,_?.line,_?.column)}function Ue(q,te,_){const se=p.value.find(Oe=>Oe.id===q);if(se===void 0)return;const be=le();se.targetLine.value=te,se.targetColumn.value=_,n()?.navigateTo(q,te,_),Ee(be,q,te,_)}function Qe(q,te){const _=p.value.find(se=>se.id===te);_!==void 0&&(i.clear(te),_.fileContent.value?.path===q.path?Ue(te,q.line,q.column):oe(q.path,q.line,q.column))}async function Te(q){const te=p.value.find(Oe=>Oe.id===q),_=te?.target.value;if(te===void 0||_===void 0||te.loading.value)return;const se=n()?.cursorPosition(q);se!==void 0&&(te.targetLine.value=se.line,te.targetColumn.value=se.column),i.clear(q);const be=te.fileContent.value?.size;await s.open(q,_,{serverOnly:!0,...be===void 0?{}:{size:be}})}async function Ge(q){const te=e.externalTarget();if(te!==void 0)try{await s.downloadTarget({...te,path:q})}catch(_){(e.onDownloadFailure??e.onOpenFailure)(_,q)}}function _e(q){if(typeof q!="object"||q===null)return;const te=q;E(),te.fileTabs!==void 0&&Array.isArray(te.fileTabs.tabs)?V(te.fileTabs,te.dirtyTextDrafts??[],te.fileWindowSuspended===!0):$(te.dirtyTextDrafts??[])}function tt(){he?.dispose(),e.lifecycle!==void 0&&typeof window<"u"&&window.removeEventListener("beforeunload",Re);for(const q of de)q();T(),E(),s.reset(),i.reset()}function Xe(q,te){q!==void 0?(t.value=q,y()):t.value===te&&(t.value=void 0)}function Re(q){!g.value||R.size===0||e.lifecycle?.isReloadingForUpdate()||(q.preventDefault(),q.returnValue="")}const de=[],Ae=e.lifecycle,he=Ae===void 0?void 0:My({...Ae.bootstrap,nodeId:()=>e.externalTarget()?.nodeId,workspaceId:()=>e.externalTarget()?.workspaceId,filesReady:Ae.ready,open:G});return Ae!==void 0&&(de.push(He(()=>[e.externalTarget()?.nodeId,e.externalTarget()?.workspaceId],([q,te],[_,se])=>{q===_&&te===se||(t.value=void 0,nt())},{flush:"sync"})),de.push(He([Ae.ready,Ae.workspaceKind],([q,te],[,_])=>{_==="GIT_WORKSPACE"&&te!==void 0&&te!=="GIT_WORKSPACE"&&me(),q&&h()},{flush:"sync"})),typeof window<"u"&&window.addEventListener("beforeunload",Re)),{standalone:he,setPage:Xe,tabList:a.tabs,activeTabId:a.activeTabId,activeTab:a.activeTab,activateTab:Pe,openNavigationTarget:Qe,saveFile:s.save,reloadFile:Te,downloadFile:s.download,downloadTarget:s.downloadTarget,downloadPath:Ge,navigate:i.navigate,clearNavigationResult:i.clear,restore:_e,resumeRestoration:h,pageReady:y,frames:xi(p),suspended:xi(g),suspendForHtml:U,snapshot:Q,draftFor:q=>R.get(q),consumeDraft:q=>R.delete(q),hasDraft:q=>R.has(q),hasSuspendedDrafts:()=>g.value&&R.size>0,openHistoryText:J,openWorkspaceFile:re,openWorktreeDiffText:ge,openTab:ce,openFile:oe,openExternal:u,openDiffExternal:d,openLocation:w,openHtmlExternal:k,openComparison:P,openStandalone:G,openToolIntent:ue,canGoBack:M,canGoForward:ee,travel:xe,closeTabs:Ye,reset:nt,invalidateDeletedSelection:ae,removeGitTabs:me,dispose:tt}}function $y(e,t=!1){const n=new URLSearchParams({nodeId:e.nodeId,path:e.path}),a=e.history,r=a?.repositoryPath??e.repositoryPath;r!==void 0&&(a===void 0||r!=="")&&n.set("repositoryPath",r),e.worktreePath!==void 0&&n.set("worktreePath",e.worktreePath);for(const i of a?.refs??[])n.append("refs",i);return t&&n.set("download","1"),`${`/api/workspaces/${encodeURIComponent(e.workspaceId)}`}${a===void 0?"/files/content":`/git/commits/${encodeURIComponent(a.commit)}/files/content`}?${n}`}function Fy(e){function t(n){const a={nodeId:n.nodeId,workspaceId:n.workspaceId};function r(C,I=!1){return $y({...C,...a},I)}function s(C,I){const S=new URLSearchParams({nodeId:a.nodeId,path:C.path,offset:"0",limit:String(I)});return C.repositoryPath!==void 0&&S.set("repositoryPath",C.repositoryPath),C.worktreePath!==void 0&&S.set("worktreePath",C.worktreePath),`/api/workspaces/${encodeURIComponent(a.workspaceId)}/files/read?${S}`}function i(C,I,S){const m=s(C,I);return S===void 0?e.http.request(m):e.http.request(m,{signal:S})}const l={revalidate:C=>e.request(s(C,1),{cache:"no-store"}),sourceUrl:(C,I)=>{const S=r(C);return I===void 0?S:`${S}&preview=${encodeURIComponent(I)}`}};function v(C,I,S){return e.http.request(`/api/workspaces/${encodeURIComponent(a.workspaceId)}/files/write`,{method:"PUT",body:JSON.stringify({nodeId:a.nodeId,path:C,content:I,expectedRevision:S})})}function u(C,I){return(e.fetchContent??fetch)(r(C),{credentials:"same-origin",...I})}function d(C,I,S,m){if(sa(C))return;const{nodeId:A,workspaceId:L}=a,y=e.manifest(A),D=y?.nodeGeneration;if(D===void 0||!e.available(A))return;const E={kind:"WORKSPACE_FILE",workspaceId:L,path:C,...S===void 0?{}:{repositoryPath:S},...I===void 0?{}:{worktreePath:I}};return{direct:e.direct,nodeId:A,nodeGeneration:D,resource:E,metadata:()=>y?.directTransfer?.download===!0?Xp({request:e.request,nodeId:A,resource:E,...m===void 0?{}:{signal:m}}):Promise.resolve(void 0)}}function w(C,I,S,m,A){const{nodeId:L,workspaceId:y}=a,D=e.manifest(L),E=D?.nodeGeneration;if(E===void 0||D?.directTransfer?.gitCommitBlob!==!0||!e.available(L))return;const H={kind:"GIT_COMMIT_BLOB",workspaceId:y,commit:C,path:I,...S.length===0?{}:{repositoryPath:S}},X=[...m];return{direct:e.direct,nodeId:L,nodeGeneration:E,resource:H,metadata:()=>Jp({request:e.request,nodeId:L,resource:H,refs:X,...A===void 0?{}:{signal:A}})}}async function k(C,I,S,m,A,L,y){if(e.manifest(a.nodeId)?.directTransfer?.range!==!0)return;const D=d(C,m,L,y);if(D!==void 0)return is({...D,fileName:C.split("/").at(-1)??"file",offset:I,length:S,...y===void 0?{}:{signal:y},...A===void 0?{}:{identity:A}}).catch(()=>{})}async function T(C,I,S,m,A,L,y,D){if(e.manifest(a.nodeId)?.directTransfer?.range!==!0)return;const E=w(C,I,S,m,D);if(E!==void 0)return is({...E,fileName:I.split("/").at(-1)??"file",offset:A,length:L,...D===void 0?{}:{signal:D},...y===void 0?{}:{identity:y}}).catch(()=>{})}async function p(C,I,S,m){const A=d(C,I,S,m);return A===void 0?void 0:(await rs({...A,...m===void 0?{}:{signal:m}}))?.url}async function g(C,I,S){if(e.manifest(a.nodeId)?.directTransfer?.download!==!0)return"UNAVAILABLE";const m=d(C,I,S);return m===void 0||e.activeWorker===void 0?"UNAVAILABLE":os({...m,activeWorker:e.activeWorker})}async function R(C,I,S,m,A){const L=w(C,I,S,m,A);return L===void 0?void 0:(await rs({...L,...A===void 0?{}:{signal:A}}))?.url}async function b(C,I,S,m){if(e.manifest(a.nodeId)?.directTransfer?.download!==!0)return"UNAVAILABLE";const A=w(C,I,S,m);return A===void 0||e.activeWorker===void 0?"UNAVAILABLE":os({...A,activeWorker:e.activeWorker})}return{attachments:l,contentUrl:r,read:i,write:v,fetchFile:u,directFileReadRange:k,directFileObjectUrl:p,directFileDownload:g,directGitFileReadRange:T,directGitFileObjectUrl:R,directGitFileDownload:b}}return{forWorkspace:t}}function Uy(e){const t=x(),n=x(!1),a=j(()=>{const r=e.value;if(r===void 0)return;const s=t.value;return n.value||s===void 0||s.startsWith("draft:")?{kind:"workspace",...r}:{kind:"session",...r,sessionId:s}});return{sessionId:j(()=>t.value),draftOpen:j(()=>n.value),draftTarget:a,setSession:r=>{t.value=r},setDraftOpen:r=>{n.value=r}}}function Vy(e){async function t(l){const v=e.secondaryPane.target.value;v!==void 0&&(v.sessionId!==l&&!n({...v,sessionId:l})||await e.secondaryPane.reloadChecked())}function n(l){const v=e.workspaceTarget.value;if(v?.nodeId!==l.nodeId||v.workspaceId!==l.workspaceId)return!1;const{sessionId:u}=l;if(!e.canOpenAside())return!1;const d=e.aside.current(v).active;return d?.kind==="session"&&d.sessionId===u||(e.saveAside(),e.aside.openSession(l)),!0}function a(l){const v=e.workspaceTarget.value;if(v?.nodeId!==l.nodeId||v.workspaceId!==l.workspaceId)return;const{sessionId:u}=l;if(!e.aside.current(v).sessions.includes(u))return;const d=e.aside.current(v).active;d?.kind==="session"&&d.sessionId===u&&e.saveAside(),e.aside.closeSession(l)}function r(l,v){const u=e.workspaceTarget.value;if(u?.nodeId!==l.nodeId||u.workspaceId!==l.workspaceId||!e.aside.current(u).sessions.includes(l.sessionId))return!1;if(v===l.sessionId)return!0;const d=e.aside.current(u).active;return d?.kind==="session"&&d.sessionId===l.sessionId&&e.saveAside(),e.aside.replaceSession(l,v)}function s(l,v){const u=e.workspaceTarget.value,d=e.aside.current(l).active;u?.nodeId===l.nodeId&&u.workspaceId===l.workspaceId&&d?.kind==="session"&&v.includes(d.sessionId)&&e.saveAside(),e.aside.removeMissing(l,v)}function i(l,v,u){u.preserveMobileWorkspaceSurface||e.closeMobileSurface();const d=e.selectedSessionId.value!==l,w=e.sessions.value.find(k=>k.id===l&&(!u.markReadAfterOpen||k.workspaceId===e.workspaceTarget.value?.workspaceId));if(d&&w!==void 0&&!u.markReadAfterOpen&&e.markSessionRead(v,w.workspaceId,l),w!==void 0){const k=e.workspaceTabId(v,w.workspaceId),T=e.sessions.value.filter(p=>p.workspaceId===w.workspaceId).findIndex(p=>p.id===w.id);e.ensureSessionVisible(k,T)}return u.skipSaveCurrent||e.saveCurrent(),w!==void 0&&e.workspaceTarget.value?.workspaceId!==w.workspaceId&&e.selectWorkspace({nodeId:v,workspaceId:w.workspaceId},!1),e.setDraftOpen(!1),{switching:d,session:w}}return{restoreDraftSelection:()=>{e.setDraftOpen(!0),e.setSelectedSessionId(void 0)},prepareTarget:i,openSession:e.pane.open,selectSession:e.pane.openTab,openWorkspaceTabSession:e.pane.openTab,openAsideSession:n,openAsideTarget:t,closeAsideSession:a,replaceAsideSession:r,removeMissingAside:s,loadingInitialContent:e.pane.loadingContent}}function qy(e){const t=Uy(e);return{...t,connect(n){return Vy({...n,workspaceTarget:e,selectedSessionId:t.sessionId,setSelectedSessionId:t.setSession,draftOpen:t.draftOpen,setDraftOpen:t.setDraftOpen})}}}function Hy(e){const t=e.storage??sessionStorage;function n(b,C="main"){return b===void 0?void 0:C==="main"?`mar.workbench.draft.${b.nodeId}.${b.workspaceId}`:`mar.workbench.aside-draft.${JSON.stringify([b.nodeId,b.workspaceId])}`}const a=()=>n(e.target.value),r=b=>b.kind==="session"?`mar.workbench.session-draft.${JSON.stringify([b.nodeId,b.workspaceId,b.sessionId])}`:n(b),s=new Map,i=new Set,l=new Map,v=new Map,u=new Map;function d(){return{input:x(""),skillTokens:x([]),references:x([])}}function w(b,C="main"){const I=n(b,C),S=`mar.workbench.queue-edit.${JSON.stringify([b.nodeId,b.workspaceId,b.kind,b.kind==="session"?b.sessionId:null])}`,m=`${S}.${C}`;let A=v.get(m);if(A===void 0){let L=s.get(I);L===void 0&&(L=d(),s.set(I,L),g(I,L)),p(b,C,I,L);const y=l.get(S),D=y??x(),E=()=>{let H=!1;try{const X=t.getItem(S),Y=X===null?JSON.parse(t.getItem(r(b))??"null"):void 0;D.value=By(X===null?Y?.queueEdit:JSON.parse(X)),H=X===null&&D.value!==void 0}catch{D.value=void 0}if(H)try{t.setItem(S,JSON.stringify(D.value))}catch{}};y===void 0&&(l.set(S,D),E()),A={...L,queueEdit:D,restore:()=>{g(I,L),E()},persist:()=>{R(I,L);try{D.value!==void 0?t.setItem(S,JSON.stringify(D.value)):t.getItem(S)!==null&&t.setItem(S,"null")}catch{}}},v.set(m,A)}return A}function k(b,C="main"){const I=()=>{if(b.value!==void 0)return w(b.value,C);let S=u.get(C);return S===void 0&&(S={...d(),queueEdit:x(),restore:()=>{},persist:()=>{}},u.set(C,S)),S};return{slot:j(()=>I()),input:j({get:()=>I().input.value,set:S=>I().input.value=S}),skillTokens:j({get:()=>I().skillTokens.value,set:S=>I().skillTokens.value=S}),references:j({get:()=>I().references.value,set:S=>I().references.value=S}),queueEdit:j({get:()=>I().queueEdit.value,set:S=>I().queueEdit.value=S}),restore:()=>I().restore(),persist:()=>I().persist()}}const T=k(e.target);function p(b,C,I,S){if(!(C!=="main"||b.kind!=="session"||i.has(I)))try{if(t.getItem(I)===null&&S.input.value.length===0&&S.skillTokens.value.length===0&&S.references.value.length===0){const m=t.getItem(r(b));m!==null&&g(I,S,m)}i.add(I),R(I,S)}catch{}}function g(b,C,I){const{input:S,skillTokens:m,references:A}=C;try{const L=I??t.getItem(b);if(L===null){S.value="",m.value=[],A.value=[];return}try{const y=JSON.parse(L);y.sessionDraftsMigrated===!0&&i.add(b),A.value=wp(y.references);const D=typeof y.input=="string"?y.input:"",E=kp(y.skillTokens).map(X=>({...X,available:!1})),H=[...D].filter(X=>X===ji).length;m.value=H>0?E.slice(0,H):E,S.value=D.replaceAll(ji,"")}catch{S.value=L,m.value=[],A.value=[]}}catch{S.value="",m.value=[],A.value=[]}}function R(b,C){const{input:I,skillTokens:S,references:m}=C;try{I.value.length===0&&S.value.length===0&&m.value.length===0&&!i.has(b)?t.removeItem(b):t.setItem(b,JSON.stringify({input:I.value,skillTokens:S.value,references:m.value,...i.has(b)?{sessionDraftsMigrated:!0}:{}}))}catch{}}return{...T,key:a,restoreFor:b=>{b!==void 0&&w(b).restore()},persistFor:b=>{b!==void 0&&w(b).persist()},bindTarget:k,forTarget:w}}function By(e){if(typeof e!="object"||e===null)return;const t=e;return typeof t.queueItemId=="string"&&t.queueItemId.length>0&&typeof t.content=="string"&&typeof t.tags=="string"&&typeof t.origin=="string"?{queueItemId:t.queueItemId,content:t.content,tags:t.tags,origin:t.origin}:void 0}const Fs=["files","search","changes","history","terminal"],Gy={tools:[],sessions:[]};function zy(e){return e?.kind==="session"||e?.kind==="browser"||e?.kind==="tool"&&e.id==="terminal"?"content":"compact"}function Ky(e=1){const t=wt(new Map);function n(y){const D=y.workspace,E=y.manifest,H=y.selectedWorkspace;He([D,E,()=>H.value?.kind],([X,Y,U])=>{if(X===void 0||Y===void 0)return;const Q=[];Y.files?.available===!0&&Q.push("files","search"),U==="GIT_WORKSPACE"&&(Q.push("changes"),Y.git?.supportsHistory===!0&&Q.push("history")),Y.terminal?.available===!0&&Y.terminal.supportsReplay===!0&&Q.push("terminal"),l(X,Q)},{immediate:!0})}function a(y){return t.value.get(y.nodeId)?.get(y.workspaceId)??Gy}function r(y,D){if(D.sessions.length>e){const X=D.active?.kind==="session"&&s(D,D.active)?D.active.sessionId:D.terminalReturn?.kind==="session"?D.terminalReturn.sessionId:void 0,Y=new Set(D.sessions.filter(U=>U!==X).slice(0,D.sessions.length-e));D={...D,sessions:D.sessions.filter(U=>!Y.has(U))}}D.terminalReturn!==void 0&&!s(D,D.terminalReturn)&&(D={...D,terminalReturn:void 0});const E=new Map(t.value),H=new Map(E.get(y.nodeId));H.set(y.workspaceId,D),E.set(y.nodeId,H),t.value=E}function s(y,D){return D!==void 0&&(D.kind==="tool"?y.tools.includes(D.id):D.kind==="browser"?y.tools.includes("files")&&y.htmlPath!==void 0:y.sessions.includes(D.sessionId))}function i(y){const D=y.recentTool&&y.tools.includes(y.recentTool)?y.recentTool:y.tools.find(E=>E!=="terminal");return D===void 0?void 0:{kind:"tool",id:D}}function l(y,D){const E=Fs.filter(Y=>D.includes(Y)),H=a(y),X={...H,tools:E};r(y,{...X,active:s(X,H.active)?H.active:i(X)??(E.includes("terminal")?{kind:"tool",id:"terminal"}:void 0)})}function v(y,D){const E=a(y);if(!E.tools.includes(D))return!1;const H=D==="terminal"&&E.active?.kind!==void 0&&!(E.active.kind==="tool"&&E.active.id==="terminal")?E.active:E.terminalReturn;return r(y,{...E,active:{kind:"tool",id:D},terminalReturn:H,...D==="terminal"?{}:{recentTool:D}}),!0}function u(y){const D=a(y);r(y,{...D,sessions:D.sessions.includes(y.sessionId)?D.sessions:[...D.sessions,y.sessionId],active:{kind:"session",sessionId:y.sessionId}})}function d(y,D){const E=a(y);return E.tools.includes("files")?(r(y,{...E,htmlPath:D,active:{kind:"browser"}}),!0):!1}function w(y){const D=a(y);return s(D,{kind:"browser"})?(r(y,{...D,active:{kind:"browser"}}),!0):!1}function k(y,D){const E=a(y);if(!E.sessions.includes(y.sessionId))return!1;const H=X=>X?.kind==="session"&&X.sessionId===y.sessionId?{kind:"session",sessionId:D}:X;return r(y,{...E,sessions:[...new Set(E.sessions.map(X=>X===y.sessionId?D:X))],active:H(E.active),terminalReturn:H(E.terminalReturn)}),!0}function T(y){return a(y).sessions.includes(y.sessionId)?(u(y),!0):!1}function p(y){g(y,[y.sessionId])}function g(y,D){const E=a(y),H=new Set(D);if(!E.sessions.some(U=>H.has(U)))return;const X=E.sessions.filter(U=>!H.has(U)),Y={...E,sessions:X,terminalReturn:E.terminalReturn?.kind==="session"&&H.has(E.terminalReturn.sessionId)?void 0:E.terminalReturn};if(E.active?.kind==="session"&&H.has(E.active.sessionId)){const U=E.sessions.indexOf(E.active.sessionId),Q=E.sessions.slice(0,U).reverse().find($=>!H.has($))??E.sessions.slice(U+1).find($=>!H.has($));r(y,{...Y,active:Q!==void 0?{kind:"session",sessionId:Q}:s(Y,{kind:"browser"})?{kind:"browser"}:i(Y)})}else r(y,Y)}function R(y){const D=a(y);return D.tools.includes("terminal")?D.active?.kind!=="tool"||D.active.id!=="terminal"?v(y,"terminal"):(r(y,{...D,active:s(D,D.terminalReturn)?D.terminalReturn:i(D)}),!0):!1}function b(y){const{sessions:D,active:E,recentTool:H,terminalReturn:X,htmlPath:Y}=a(y);return{sessions:[...D],active:E,recentTool:H,terminalReturn:X,htmlPath:Y}}function C(y,D,E){const H=[...new Set(D.sessions.filter(X=>typeof X=="string"&&X.length>0))];r(y,{tools:Fs.filter(X=>E.includes(X)),sessions:H,active:D.active,recentTool:D.recentTool,terminalReturn:D.terminalReturn,htmlPath:D.htmlPath}),l(y,E)}function I(y){const D=t.value.get(y.nodeId)?.get(y.workspaceId);if(D?.htmlPath===void 0)return;const E={...D,htmlPath:void 0},H=D.sessions.at(-1);r(y,{...E,active:D.active?.kind!=="browser"?D.active:H!==void 0?{kind:"session",sessionId:H}:i(E)})}function S(y){for(const D of t.value.get(y)?.keys()??[])I({nodeId:y,workspaceId:D})}function m(){for(const y of t.value.keys())S(y)}function A(y){const D=new Map(t.value),E=new Map(D.get(y.nodeId));E.delete(y.workspaceId),E.size===0?D.delete(y.nodeId):D.set(y.nodeId,E),t.value=D}function L(y){function D(Q){const $=y.workspace.value;return $?.nodeId===Q.nodeId&&$.workspaceId===Q.workspaceId}function E(Q){a(Q).active?.kind==="session"&&y.saveSession()}function H(Q){D(Q)&&(E(Q),v(Q,Q.id),y.mobile.value&&y.openMobile(Q.id==="terminal"?"terminal":"inspector"))}function X(Q){D(Q)&&(E(Q),w(Q)&&y.mobile.value&&y.openMobile("inspector"))}function Y(Q){D(Q)&&I(Q)}function U(){const Q=y.workspace.value;if(Q!==void 0){if(E(Q),y.mobile.value&&y.mobileSurface.value!=="inspector"&&y.mobileSurface.value!=="terminal"){v(Q,"terminal")&&y.openMobile("terminal");return}if(R(Q)&&y.mobile.value){const $=a(Q).active;y.openMobile($?.kind==="tool"&&$.id==="terminal"?"terminal":"inspector")}}}return{select:H,openBrowser:X,closeBrowser:Y,toggleTerminal:U}}return{observeCapabilities:n,createInteraction:L,current:a,ensure:l,selectTool:v,openHtml:d,activateHtml:w,openSession:u,replaceSession:k,activateSession:T,closeSession:p,removeMissing:g,toggleTerminal:R,snapshot:b,restore:C,removeWorkspace:A,clearHtmlWorkspace:I,clearHtmlNode:S,clearHtml:m}}function jy(e){if(e.enabled)return{sessionIds:[...new Set(e.asideSessionIds)],summaryAnchors:[...new Set([...e.visibleTreeAnchors,...e.treeAnchor===void 0?[]:[e.treeAnchor]])],...e.treeAnchor===void 0?{}:{treeAnchor:e.treeAnchor},limit:100}}function Ja(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Go(e){return Ja(e)&&typeof e.id=="string"&&(e.parentSessionId===null||typeof e.parentSessionId=="string")&&typeof e.title=="string"&&typeof e.runner=="string"&&typeof e.activity=="string"&&typeof e.status=="string"&&typeof e.lastActivityAt=="number"}function _y(e){return Ja(e)&&typeof e.anchorSessionId=="string"&&typeof e.descendantCount=="number"&&typeof e.activeCount=="number"&&typeof e.runningCount=="number"&&typeof e.sleepingCount=="number"&&typeof e.hasActiveDescendants=="boolean"}function Yy(e){const t=wt();let n;function a(i,l,v){return!Ja(v)||!Array.isArray(v.sessions)||!v.sessions.every(Go)||!Array.isArray(v.summaries)||!v.summaries.every(_y)||!Array.isArray(v.missingSessionIds)||!v.missingSessionIds.every(u=>typeof u=="string")||v.tree!==null&&(!Ja(v.tree)||typeof v.tree.anchorSessionId!="string"||v.tree.anchorSessionId!==l.treeAnchor||v.tree.parent!==null&&!Go(v.tree.parent)||!Array.isArray(v.tree.nodes)||!v.tree.nodes.every(Go)||typeof v.tree.truncated!="boolean")?!1:(n=l,t.value={...v,...i},e(i,v.missingSessionIds),!0)}function r(i,l){const v=t.value;return i!==void 0&&l!==void 0&&i.nodeId===v?.nodeId&&i.workspaceId===v.workspaceId&&xn(l,n)?v:void 0}function s(i,l){const v=t.value;if(i===void 0||v===void 0||i.nodeId!==v.nodeId||i.workspaceId!==v.workspaceId)return[];const u=[...v.sessions,...v.tree?.parent===null||v.tree?.parent===void 0?[]:[v.tree.parent],...v.tree?.nodes??[]];return l.flatMap(d=>{if(v.missingSessionIds.includes(d))return[];const w=u.find(k=>k.id===d);return w===void 0?[]:[w]})}return{snapshot:t,accept:a,current:r,knownSessions:s}}const Qy="__feature-demo__",pc="sessionAside",Jy={[Qy]:{introducedIn:"0.9.119"},[pc]:{introducedIn:"0.11.69"}},Xy=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/u;function zo(e){const t=Xy.exec(e);if(t===null)return;const n=t.slice(1).map(Number);if(n.every(Number.isSafeInteger))return n}function Us(e,t){for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return e[n]-t[n];return 0}function Zy(e,t){const n=zo(e),a=zo(t.introducedIn),r=t.removedIn===void 0?void 0:zo(t.removedIn);return n===void 0||a===void 0||t.removedIn!==void 0&&r===void 0||Us(n,a)<0?!1:r===void 0||Us(n,r)<0}function ew(e,t){const n=Jy[t];return n!==void 0&&Zy(e,n)}function Oa(e,t){return e!==void 0&&t?.apiVersion===1&&ew(e,pc)}function tw(e,t,n){const a=e.sessions.value.find(l=>l.id===t),r=e.preserveManagedActive(a,n),s=e.selectedSessionId.value===t,i=e.currentSelectionRevision();e.mergeSessions([r]),t!==r.id&&e.transferSubmission(t,r.id),t!==r.id&&a!==void 0&&e.sessions.value.includes(a)&&!(e.selectedSessionId.value===t&&e.currentSelectionRevision()!==i)&&e.removeSessionExact(a),s&&(e.selectedSessionId.value===t||e.selectedSessionId.value===r.id)&&e.currentSelectionRevision()===i&&e.selectedSessionId.value===t&&e.currentSelectionRevision()===i&&e.setSelectedSessionId(r.id)}function nw(e){const{sessions:t,selectedSessionId:n,setSelectedSessionId:a,currentSelectionRevision:r,preserveManagedActive:s,mergeSessions:i,removeSessionExact:l}=e.projection,v=e.submissions,u=e.workspaceTarget;function d(T,p,g,R){if(g===R)return;const b={kind:"session",nodeId:T,workspaceId:p};v.transfer(v.forTarget({...b,sessionId:g}),v.forTarget({...b,sessionId:R}),g,R)}function w(T,p,g,R){tw({sessions:t,removeSessionExact:l,selectedSessionId:n,setSelectedSessionId:a,currentSelectionRevision:r,preserveManagedActive:s,mergeSessions:i,transferSubmission:(b,C)=>d(T,p,b,C)},g,R)}function k(T,p){const g=u.value?.nodeId;g!==void 0&&w(g,p.workspaceId,T,p)}return{transfer:d,replace:w,replaceCurrent:k}}function aw(){const e=x();return{...gc(),target:j(()=>e.value),setTarget:t=>{e.value=t}}}function gc(){let e=0;return{currentSelectionRevision:()=>e,nextSelectionRevision:()=>++e}}function ow(e,t=gc()){const n=x(!1);function a(){t.nextSelectionRevision(),n.value=!1,e.stopWatch(),e.deactivateCache(),e.setWorkspaceTarget(void 0),e.setSelectedSessionId(void 0),e.replaceWorkspaces([]),e.replaceSessions([]),e.selectManifestNode(),e.setDraftOpen(!1),e.clearContent(),e.resetQueue()}async function r(i,l=!0){if(!e.hasNode(i.nodeId))return e.invalidateWorkspace(i),!1;const v=t.nextSelectionRevision();n.value=!1;const u=e.workspaceTarget.value,d=u?.nodeId!==i.nodeId||u.workspaceId!==i.workspaceId;d&&(e.saveCurrent(),e.stopWatch(),e.deactivateCache(),e.setSelectedSessionId(void 0),e.setDraftOpen(!1),e.clearContent(),e.setWorkspaceTarget({nodeId:i.nodeId,workspaceId:i.workspaceId}),e.restoreProfiles(i.nodeId));const w=e.workspaceTarget.value,k=()=>t.currentSelectionRevision()===v&&e.workspaceTarget.value===w;e.closeSidebar(),e.showWorkbench(),e.replaceWorkspaces([...e.cachedWorkspaces(i.nodeId)]);const T=e.workspaces.value.find(I=>I.id===i.workspaceId);if(T===void 0?e.rememberTarget(i):e.rememberWorkspace(i.nodeId,T),!e.isHostAvailable(i.nodeId))return e.stopWatch(),e.deactivateCache(),e.replaceWorkspaces([]),e.replaceSessions([]),e.setSelectedSessionId(void 0),e.clearContent(),e.selectManifestNode(),!0;e.selectManifestNode(i.nodeId);const p=e.viewCache(i.nodeId,i.workspaceId),g=d||!e.isCacheActive(i.nodeId,i.workspaceId);g&&(e.activateCache(i.nodeId,i.workspaceId),e.restoreWorkspaceView(i.nodeId,i.workspaceId),(p.files!==void 0||p.git!==void 0)&&e.refreshVisibleTool(i.nodeId,i.workspaceId),e.replaceSessions(p.sessions),e.restoreDraft(p)),e.initializePaging(e.tabId(i.nodeId,i.workspaceId)),e.resetQueue();const R=!d&&e.selectedSessionId.value!==void 0&&e.sessions.value.some(I=>I.id===e.selectedSessionId.value),b=e.takeRestoredSelection(i.nodeId,i.workspaceId),C=p.sessions.find(I=>I.id===p.selectedSessionId);return l&&g&&C!==void 0&&En(C)?e.openSession(C.id,{skipSaveCurrent:!0}):l&&b!==void 0?(e.openDraft(),e.restoreSession(i.workspaceId,b.selectedSessionId)):l&&!R&&e.openDraft(),T!==void 0&&e.startWatch(i.workspaceId),(g||!e.hasProfiles(i.nodeId)&&!e.profilesLoading.value)&&e.loadProfiles(i.nodeId),e.refreshManifest(i.nodeId),e.refreshTransport(i.nodeId),n.value=!0,s(w,k,T===void 0),!0}async function s(i,l,v){try{const u=await e.request(`/api/workspaces?nodeId=${encodeURIComponent(i.nodeId)}`);if(!l())return;e.cacheWorkspaces(i.nodeId,u.workspaces);const d=u.workspaces.find(w=>w.id===i.workspaceId);if(d===void 0){e.invalidateWorkspace(i),e.notice(c("generated.workbenchWorkspaceSelectionService.thisWorkspaceIsNoLongerInThe"),"error");return}e.replaceWorkspaces([...u.workspaces]),e.rememberWorkspace(i.nodeId,d),v&&e.startWatch(i.workspaceId)}catch(u){if(!l()||gt(u)==="NODE_OFFLINE"&&!e.isHostAvailable(i.nodeId))return;["FORBIDDEN","NODE_NOT_FOUND","WORKSPACE_NOT_FOUND","REQUEST_FAILED_403","REQUEST_FAILED_404"].includes(gt(u)??"")&&e.invalidateWorkspace(i),e.notice(c("generated.workbenchWorkspaceSelectionService.unableToLoadNodeWorkspaces",{value0:e.errorMessage(u)}),"error",u)}finally{l()&&(n.value=!1)}}return{select:r,clear:a,loading:n,currentSelectionRevision:t.currentSelectionRevision}}function rw(){const e=aw();return{target:e.target,currentSelectionRevision:e.currentSelectionRevision,connect(t){return ow({...t,workspaceTarget:e.target,setWorkspaceTarget:e.setTarget},e)}}}function iw(e){const t=new Map,n=wt();function a($,V){const N=e($,V),h=t.get(N);if(h!==void 0)return h;const F={nodeId:$,workspaceId:V,sessions:[],queues:new Map,sessionDetails:new Map};return t.set(N,F),F}function r($,V){const N=e($,V);n.value?.nodeId===$&&n.value.workspaceId===V&&(n.value=void 0),t.delete(N)}function s($,V,N){const h=t.get(e($,V));h!==void 0&&(h.sessions=h.sessions.filter(F=>F.id!==N),h.sessionDetails.delete(N),h.queues.delete(N),h.selectedSessionId===N&&delete h.selectedSessionId)}function i($,V,N){return t.get(e($,V))?.queues.get(N)}function l($,V,N){t.get(e($,V))?.sessionDetails.delete(N)}function v($,V,N,h){if(N!==h.id){X($,V,N,h.id,h);return}const F=t.get(e($,V));F!==void 0&&(F.sessions=F.sessions.map(z=>z.id===N?h:z))}function u($){n.value?.nodeId===$&&(n.value=void 0);for(const V of t.keys())V.startsWith(`${$}:`)&&t.delete(V)}function d($,V){n.value=a($,V)}function w(){n.value=void 0}function k($,V){const N=a($,V);return{nodeId:N.nodeId,workspaceId:N.workspaceId,sessions:N.sessions,...N.selectedSessionId===void 0?{}:{selectedSessionId:N.selectedSessionId},...N.draft===void 0?{}:{draft:N.draft},...N.fileWorkbench===void 0?{}:{fileWorkbench:N.fileWorkbench},...N.search===void 0?{}:{search:N.search},...N.files===void 0?{}:{files:N.files},...N.git===void 0?{}:{git:N.git}}}function T($,V){return n.value?.nodeId===$&&n.value.workspaceId===V}function p(){return n.value!==void 0}function g($,V){return t.has(e($,V))}function R($,V,N){const h=t.get(e($,V));h!==void 0&&(h.search=N)}function b($,V){const N=e($,V),h=t.get(N);if(h!==void 0)return{isCurrent:()=>t.get(N)===h,replaceSession(F,z){t.get(N)===h&&v($,V,F,z)},cacheRun(F){t.get(N)===h&&Y($,V,F)}}}function C($,V,N,h,F){const z=t.get(e($,V));z!==void 0&&z.queues.set(N,bp(z.queues.get(N),h,F))}function I($,V,N,h,F=!1){const z=F?V.turns:xa(V.turns),fe=Do(z);for($.sessionDetails.set(V.sessionId,{...V,turns:fe,nextCursor:fe.length<z.length?null:V.nextCursor});$.sessionDetails.size>N;){const J=[...$.sessionDetails.values()].filter(re=>!h.has(re.sessionId)).reduce((re,ge)=>re===void 0||ge.lastAccessedAt<re.lastAccessedAt?ge:re,void 0);if(J===void 0)break;$.sessionDetails.delete(J.sessionId)}}function S($,V,N,h){$.sessions=V.sessions.filter(z=>z.workspaceId===$.workspaceId&&En(z)),$.fileWorkbench=V.fileWorkbench,"search"in V&&(V.search===void 0?delete $.search:$.search=V.search),"files"in V&&(V.files===void 0?delete $.files:$.files=V.files),"git"in V&&(V.git===void 0?delete $.git:$.git=V.git),V.draft===void 0?delete $.draft:$.draft=V.draft;const F=V.sessions.find(z=>z.id===V.selectedSessionId);if(!En(F)){delete $.selectedSessionId,V.selectedSessionId!==void 0&&($.queues.delete(V.selectedSessionId),$.sessionDetails.delete(V.selectedSessionId));return}$.selectedSessionId=F.id,V.queue!==void 0&&$.queues.set(F.id,Oo($.queues.get(F.id),V.queue)),V.detail!==void 0&&I($,V.detail,N,new Set(h===void 0?[F.id]:[F.id,h]),V.detailHistoryAlreadyBounded===!0)}function m($,V,N,h,F,z){const fe=t.get(e($,V));if(fe===void 0||N.workspaceId!==V||N.id!==F.sessionId||!En(N))return;fe.queues.set(N.id,Oo(fe.queues.get(N.id),h));const J=new Set([N.id]);fe.selectedSessionId!==void 0&&J.add(fe.selectedSessionId),I(fe,F,z,J,!0)}function A($,V,N){const h=n.value;h!==void 0&&S(h,{...$,fileWorkbench:"fileWorkbench"in $?$.fileWorkbench:h.fileWorkbench},V,N)}function L($,V,N,h=Date.now()){const F=t.get(e($,V))?.sessionDetails.get(N);return F!==void 0&&(F.lastAccessedAt=h),F}function y($,V,N){return t.get(e($,V))?.sessionDetails.get(N)}function D($,V,N){return y($,V,N)}function E($,V,N,h){const F=y($,V,N);F!==void 0&&(F.contextUsage=h)}function H($,V,N,h,F){const z=y($,V,N);z!==void 0&&(z.turns=Cp(z.turns,h,F))}function X($,V,N,h,F){if(N===h||!En(F))return;const z=t.get(e($,V));if(z===void 0)return;F!==void 0&&(z.sessions=z.sessions.map(re=>re.id===N?F:re));const fe=z.sessionDetails.get(N);fe!==void 0&&(z.sessionDetails.delete(N),z.sessionDetails.set(h,{...fe,sessionId:h,turns:fe.turns.map(re=>re.sessionId===N?{...re,sessionId:h}:re)}));const J=z.queues.get(N);J!==void 0&&(z.queues.delete(N),z.queues.set(h,Oo(z.queues.get(h),J))),z.selectedSessionId===N&&(z.selectedSessionId=h)}function Y($,V,N){if(N.sessionId===void 0)return;const h=y($,V,N.sessionId);if(h===void 0)return;const F=h.runs.find(fe=>fe.id===N.id),z=Sp(F,N);h.runs=[z,...h.runs.filter(fe=>fe.id!==N.id)]}function U($,V,N){const h=y($,V,N.sessionId);if(h===void 0)return;const F=xa(Ip(h.turns,[N]));h.turns=Do(F),h.turns.length<F.length&&(h.nextCursor=null)}function Q($,V,N,h,F){const z=y($,V,N);z!==void 0&&(z.turns=Do(xa(h)),z.nextCursor=F)}return{view:k,isActive:T,hasActive:p,has:g,updateSearch:R,captureCommandTarget:b,captureActive:A,captureSession:m,activate:d,deactivate:w,remove:r,removeSession:s,queueFor:i,invalidateDetail:l,replaceSession:v,removeNode:u,detail:D,updateContext:E,syncRunStatus:H,touchDetail:L,migrateSession:X,cacheRun:Y,cacheTurn:U,cacheQueue:C,replaceTurns:Q}}function sw(e){const t=(p,g)=>e.cacheService.view(p,g);function n(p,g){e.cacheService.remove(p,g),e.paging.remove(e.tabId(p,g))}function a(p){e.cacheService.removeNode(p),e.paging.removeNode(p)}function r(){if(e.persistDraft(),!e.cacheService.hasActive())return;const p=e.selectedSessionId.value;p===void 0&&e.flushConversation(),e.cacheService.captureActive({sessions:e.sessions.value,fileWorkbench:e.fileWorkbench.snapshot(),...e.search===void 0?{}:{search:e.search.snapshot(e.workspaceTarget.value===void 0?void 0:t(e.workspaceTarget.value.nodeId,e.workspaceTarget.value.workspaceId).search)},...e.files===void 0?{}:{files:e.files.snapshot()},...e.git===void 0?{}:{git:e.git.snapshot()},draft:{runner:e.runner.value,modelId:e.modelId.value,effort:e.effort.value,access:e.access.value},...p===void 0?{}:{selectedSessionId:p,queue:e.queue.value,detail:e.captureDetail(p),detailHistoryAlreadyBounded:!0}},e.maximumDetails,e.otherVisibleSessionId?.())}function s(p,g){if(e.workspaceTarget.value?.nodeId!==p||e.workspaceTarget.value.workspaceId!==g)return;const R=t(p,g);e.files?.restore(R.files),e.git?.restore(R.git),e.search?.restore(R.search);const b=R.fileWorkbench;b!==void 0&&e.fileWorkbench.restore(b)}function i(p){const g=p?.draft;g!==void 0&&e.restoreDraftConfiguration(g)}function l(p){const g=e.sessions.value.find(b=>b.id===p),R=e.workspaceTarget.value?.nodeId;if(!(g===void 0||R===void 0))return{nodeId:R,workspaceId:g.workspaceId}}function v(p,g){const R=l(p);R!==void 0&&e.cacheService.updateContext(R.nodeId,R.workspaceId,p,g)}function u(p,g,R){const b=l(p);b!==void 0&&e.cacheService.syncRunStatus(b.nodeId,b.workspaceId,p,g,R)}const d=(p,g,R)=>e.cacheService.cacheRun(p,g,R);function w(p){const g=e.workspaceTarget.value?.nodeId;if(p.sessionId===void 0||g===void 0)return;const R=p.workspaceId??e.sessions.value.find(b=>b.id===p.sessionId)?.workspaceId;R!==void 0&&d(g,R,p)}function k(p){const g=e.sessions.value.find(b=>b.id===p.sessionId),R=e.workspaceTarget.value?.nodeId;g!==void 0&&R!==void 0&&e.cacheService.cacheTurn(R,g.workspaceId,p)}function T(p,g,R){const b=e.sessions.value.find(I=>I.id===p),C=e.workspaceTarget.value?.nodeId;b!==void 0&&C!==void 0&&e.cacheService.replaceTurns(C,b.workspaceId,p,g,R)}return{workspaceViewCache:t,discardWorkspaceViewCache:n,discardNodeViewCaches:a,saveCurrentWorkspaceView:r,restoreWorkspaceView:s,restoreWorkspaceDraft:i,updateCachedContext:v,syncCachedRunStatus:u,cacheRunSnapshotFor:d,cacheRunSnapshot:w,cacheConversationTurn:k,replaceConversationTurns:T}}function lw(e){const t=iw(e);return{cache:t,connect:n=>sw({...n,cacheService:t,tabId:e})}}function cw(e){const t=x(!1),n=new Map;let a=0,r,s=0;const i=($,V)=>e.tree.cacheWorkspaces($,V),l=$=>e.tree.workspacesForNode($),v=$=>e.tree.orderedWorkspaces($);function u($,V,N){const h=l($).map(F=>F.id===V?{...F,gitSummary:{...F.gitSummary??{},branch:N}}:F);$===e.workspaceTarget.value?.nodeId&&e.replaceWorkspaces([...h]),i($,h)}function d($,V){const N=l($).map(h=>{if(h.id!==V.id)return h;const F={...h};return Reflect.deleteProperty(F,"gitSummary"),{...F,path:V.path,kind:V.kind,...V.gitSummary===void 0?{}:{gitSummary:V.gitSummary}}});$===e.workspaceTarget.value?.nodeId&&e.replaceWorkspaces([...N]),i($,N)}function w($,V){const N=e.nodes.value.find(h=>h.id===$);e.tabs.remember($,N,V)}function k($,V=!1){const N=e.tabs.tabs.value.find(h=>h.id===$.id);N===void 0||!V&&N.pinned===!0||T([N],!V)}function T($,V=!0){const N=$.some(F=>e.activeTabId.value===F.id),h=V&&s===e.currentSelectionRevision()&&$.some(F=>r===F.id);N&&e.saveCurrent();for(const F of $)e.releaseTerminalDock(F.id),e.deleteTerminalDock(F.id),e.tabs.remove(F),e.discardCache(F.nodeId,F.workspaceId);!N&&!h||(e.clearWorkspace(),p())}async function p(){const $=++a,V=new Set;for(r=void 0;;){const N=e.tabs.mostRecentlyUsed(V);if(N===void 0)return;V.add(N.id),r=N.id;const h=R(N),F=e.currentSelectionRevision();s=F;const z=await h;if($!==a||(r=void 0,z||F!==e.currentSelectionRevision()))return}}function g(){const $=e.activeTabId.value,V=e.tabs.tabs.value.filter(h=>h.pinned!==!0),N=V.find(h=>h.id===$);T([...V.filter(h=>h.id!==$),...N===void 0?[]:[N]])}async function R($){return e.nodes.value.find(N=>N.id===$.nodeId)===void 0?(k($,!0),!1):C($)}async function b($){const V=e.nodes.value.find(fe=>fe.id===$.nodeId);if(V===void 0){k($,!0);return}const N=e.workspaceTabSession($.nodeId,$.workspaceId),h=C($,N===void 0),F=e.currentSelectionRevision();if(!await h||F!==e.currentSelectionRevision())return;const z=e.workspaceTarget.value;z?.nodeId!==$.nodeId||z.workspaceId!==$.workspaceId||!V.connected||V.disabled||N!==void 0&&await e.openWorkspaceTabSession(N)}function C($,V=!0){const N=e.workspaceTarget.value,h=N?.nodeId===$.nodeId&&N.workspaceId===$.workspaceId?Promise.resolve(!0):V?e.activateWorkspace($):e.activateWorkspace($,!1);return e.tree.revealWorkspace($),e.closeMobileSidebar(),e.showWorkbench(),h}async function I($){e.tree.toggleNode($)&&($===e.workspaceTarget.value?.nodeId||$ in e.workspacesByNode.value||await S($))}async function S($){const V=e.workspaceTarget.value,N=e.currentSelectionRevision(),h=()=>e.workspaceTarget.value===V&&e.currentSelectionRevision()===N,F=(n.get($)??0)+1;n.set($,F);try{const z=await e.request(`/api/workspaces?nodeId=${encodeURIComponent($)}`);if(n.get($)!==F)return;i($,z.workspaces),h()&&e.workspaceTarget.value?.nodeId===$&&e.replaceWorkspaces(z.workspaces)}catch(z){if(n.get($)!==F||!h())return;e.notice(c("generated.workbenchWorkspaceTreeController.unableToLoadNodeWorkspaces",{value0:e.errorMessage(z)}),"error",z)}}async function m(){await e.refreshNodes();const $=new Set([...e.tree.expandedNodeIds.value,...Object.keys(e.workspacesByNode.value),...e.workspaceTarget.value?.nodeId===void 0?[]:[e.workspaceTarget.value?.nodeId]]);await Promise.all(e.nodes.value.filter(V=>$.has(V.id)).map(V=>S(V.id)))}async function A($,V){e.closeMobileWorkspaceSurface(),await C({nodeId:$,workspaceId:V})}const L=($,V,N)=>e.tree.startDrag($,V,N);function y($){return e.nodes.value.find(N=>N.id===$)?.workspaceCreatable===!0}async function D($,V,N){if(!(!y($)||V.groupName===N)){t.value=!0;try{await e.request(`/api/workspaces/${encodeURIComponent(V.id)}?nodeId=${encodeURIComponent($)}`,{method:"PATCH",body:JSON.stringify({groupName:N})});const h={...V,groupName:N},F=l($).map(z=>z.id===V.id?h:z);i($,F),e.workspaceTarget.value?.nodeId===$&&e.replaceWorkspaces([...F])}catch(h){e.notice(e.errorMessage(h),"error",h)}finally{t.value=!1}}}async function E($,V,N){await D($,V,N)}function H($,V,N){const h=e.tree.draggingWorkspace.value;if(h===void 0||h.nodeId!==$)return;const F=l($).find(J=>J.id===h.workspaceId);if(F===void 0){e.tree.endDrag();return}const z=F.groupName?.trim()||null,fe=V.groupName?.trim()||null;if(z===fe){e.tree.reorder($,V.id,N);return}e.tree.endDrag(),D($,F,fe)}function X($,V){const N=e.tree.draggingWorkspace.value;if(N===void 0||N.nodeId!==$)return;e.tree.endDrag();const h=l($).find(F=>F.id===N.workspaceId);h!==void 0&&D($,h,V)}async function Y($,V){if(V.manageable===!1)return;let N;try{N=(await Nt.prompt(c("generated.workspaceTree.enterWorkspaceName"),c("generated.workspaceTree.renameWorkspace"),{closeIcon:qe("close"),inputValue:e.tabLabel(V),inputValidator:h=>{const F=h.trim().length;return F===0?c("generated.workspaceTree.workspaceNameRequired"):F<=255||c("generated.workspaceTree.workspaceNameTooLong")},confirmButtonText:c("generated.workspaceTree.save"),cancelButtonText:c("generated.workspaceTree.cancel")})).value.trim()}catch{return}t.value=!0;try{await e.request(`/api/workspaces/${encodeURIComponent(V.id)}?nodeId=${encodeURIComponent($)}`,{method:"PATCH",body:JSON.stringify({displayName:N})});const h={...V,displayName:N},F=l($).map(z=>z.id===V.id?h:z);i($,F),e.workspaceTarget.value?.nodeId===$&&e.replaceWorkspaces([...F]),e.tabs.updateLabel($,V.id,e.tabLabel(h))}catch(h){e.notice(e.errorMessage(h),"error",h)}finally{t.value=!1}}async function U($,V){if(V.manageable===!0){try{await Nt.confirm(c("generated.workbenchWorkspaceTreeController.unregisterThisDoesNotDeleteTheLocal",{value0:e.tabLabel(V)}),c("generated.workbenchWorkspaceTreeController.unregisterWorkspace"),{closeIcon:qe("close"),icon:qe("warning"),confirmButtonText:c("generated.workbenchWorkspaceTreeController.unregister"),cancelButtonText:c("generated.workbenchWorkspaceTreeController.cancel"),type:"warning"})}catch{return}t.value=!0;try{await e.request(`/api/workspaces/${encodeURIComponent(V.id)}?nodeId=${encodeURIComponent($)}`,{method:"DELETE"});const N=l($).filter(h=>h.id!==V.id);i($,N),e.workspaceTarget.value?.nodeId===$&&(e.replaceWorkspaces(N),e.removeWorkspaceSessions(V.id),e.workspaceTarget.value?.workspaceId===V.id&&e.clearWorkspace()),e.tabs.removeWhere(h=>h.nodeId===$&&h.workspaceId===V.id),e.notice(c("generated.workbenchWorkspaceTreeController.theWorkspaceWasUnregisteredItsLocalDirectory"),"success")}catch(N){e.notice(c("generated.workbenchWorkspaceTreeController.unableToUnregisterTheWorkspace",{value0:e.errorMessage(N)}),"error",N)}finally{t.value=!1}}}async function Q($,V,N){if(!(V.manageable===!1||!e.cleanupSessionsEnabled($))){t.value=!0;try{const h=await e.request(`/api/workspaces/${encodeURIComponent(V.id)}/sessions/cleanup`,{method:"POST",body:JSON.stringify({nodeId:$,inactiveDays:N})});return e.workspaceTarget.value?.nodeId===$&&e.workspaceTarget.value?.workspaceId===V.id&&await e.refreshWorkspaceSessions(V.id),h}catch(h){throw new Error(e.errorMessage(h))}finally{t.value=!1}}}return{loading:ct(t),updateWorkspaceBranch:u,updateWorkspaceMetadata:d,rememberWorkspace:w,closeWorkspaceTab:k,closeUnpinnedWorkspaceTabs:g,activateWorkspaceTab:R,openWorkspaceTab:b,cacheNodeWorkspaces:i,workspacesForNode:l,orderedWorkspaces:v,toggleNodeExpansion:I,refreshNodeWorkspaces:S,refreshWorkspaceTree:m,openWorkspaceFromTree:A,startWorkspaceDrag:L,reorderWorkspace:H,moveWorkspaceToGroup:X,moveWorkspaceGroup:E,renameWorkspace:Y,cleanupWorkspaceSessions:Q,removeWorkspace:U}}function dw(e){async function t(u){const d=await e.actions.renameNode(u);d!==void 0&&e.replaceNode(d)}async function n(u){const d=await e.actions.renameSession(u);d!==void 0&&e.replaceSession(u.id,d)}async function a(u,d){await e.actions.setSessionPinned(u,d)&&await e.refreshSessions()}async function r(u){const d=await e.actions.moveSessionToMain(u);d!==void 0&&(e.replaceSession(u.id,d),await e.refreshSessions())}async function s(u,d){await e.actions.movePinnedSession(u,d)&&await e.refreshSessions()}async function i(u,d,w){if(u.id===d.id)return;const k=u.pinOrder>d.pinOrder?"up":"down";await e.actions.movePinnedSession(u,k,{sessionId:d.id,position:w}),await e.refreshSessions()}async function l(u){const d=e.workspaceTarget.value?.nodeId;if(!await e.actions.deleteSession(u)||(d!==void 0&&e.caches.removeSession(d,u.workspaceId,u.id),e.workspaceTarget.value?.nodeId!==d))return;const w=e.selectedSessionId.value===u.id;e.removeSessionId(u.id),w&&(e.setSelectedSessionId(void 0),e.clearActiveSelection(),e.openDraft()),e.replaceUrl()}async function v(u){await e.actions.deleteNode(u)&&(e.removeNode(u.id),e.tabs.removeWhere(d=>d.nodeId===u.id),e.discardNodeCaches(u.id),e.tree.removeNode(u.id),e.workspaceTarget.value?.nodeId===u.id&&(e.clearWorkspace(),e.setSelectedSessionId(void 0),e.replaceWorkspaces([]),e.clearSessions(),e.clearRuns()),e.clearNodeDetails())}return{renameNode:t,renameSession:n,moveSessionToMain:r,setSessionPinned:a,movePinnedSession:s,movePinnedSessionTo:i,deleteSession:l,deleteNode:v}}function uw(){return{admin:x({authenticated:!1,mustChangePassword:!1,isAdmin:!1}),loaded:x(!1),loading:x(!1),sessions:x([]),newPassword:x(""),passwordValidationError:x(""),csrfToken:x("")}}function vw(e){const t=x(new Map),n=x(new Map),a=x(new Map),r=x(!1);function s(w){t.value.has(w)||t.value.set(w,e)}function i(w){t.value.set(w,e),n.value.delete(w),a.value.delete(w)}function l(w,k,T){a.value.delete(w),n.value.set(w,T),t.value.set(w,(t.value.get(w)??e)+k)}function v(w){t.value.delete(w),n.value.delete(w),a.value.delete(w)}function u(w){for(const k of t.value.keys())k.startsWith(`${w}:`)&&t.value.delete(k);for(const k of n.value.keys())k.startsWith(`${w}:`)&&n.value.delete(k);for(const k of a.value.keys())k.startsWith(`${w}:`)&&a.value.delete(k)}function d(w,k){const T=t.value.get(w)??e;k>=T&&t.value.set(w,k+1)}return{visibleLimits:t,nextCursors:n,loadMoreErrors:a,loadingMore:r,initialize:s,reset:i,append:l,remove:v,removeNode:u,ensureVisible:d}}const fw="mar.user.csrf-token";function pw(e){const t=uw(),n=ff({csrfToken:t.csrfToken,csrfStorageKey:fw,onUnauthenticated:e.onUnauthenticated}),a=vw(e.sessionPageSize);return{admin:t,http:n,paging:a}}function gw(e){const t=e.navigation,n=pw(e),{admin:a,http:r}=n,s=Hh(j(()=>a.admin.value.username),{request:r.request,...e.onWorkspaceRunCompleted===void 0?{}:{onWorkspaceRunCompleted:e.onWorkspaceRunCompleted},...e.onNotificationClick===void 0?{}:{onNotificationClick:e.onNotificationClick},activeTargets:()=>{if(t.view.value==="conversations"){const i=e.visibleHostedTarget();return i===void 0?[]:[{targetType:"HOSTED_CONVERSATION",...i}]}return t.view.value!=="nodes"?[]:e.visibleWorkspaceTargets().map(i=>({targetType:"WORKSPACE_SESSION",...i}))}});return{...n,navigation:t,notifications:s}}function mw(e,t,n){const a=s=>{const i=s.target,l=i instanceof Element&&(i.closest('[role="dialog"], [aria-modal="true"]')!==null||i.closest('input, textarea, select, [contenteditable]:not([contenteditable="false"])')!==null&&!xt.isWithin("pane",i));return e.view.value==="nodes"&&!n.value&&!l},r=(s,i,l)=>({command:s,keys:i,execute:l,priority:10,scope:"workspace",when:a});return[r("workspace.closeTab",an.close,s=>{const i=e.workspaceTabs.value.find(l=>l.id===e.activeWorkspaceTabId.value);return e.workspaceTabs.value.length===0?"IGNORED":(s.repeat||(s.shiftKey?e.closeUnpinnedWorkspaceTabs():i!==void 0&&i.pinned!==!0&&e.closeWorkspaceTab(i)),"HANDLED")}),r("workspace.newSession",an.newSession,s=>s.repeat||!e.nodeReady.value||e.workspaceTarget.value?.workspaceId===void 0?"IGNORED":(e.openNewSessionComposer(),"HANDLED")),r("workspace.cycleTab",an.cycle,s=>{const i=e.workspaceTabs.value,l=i.findIndex(d=>d.id===e.activeWorkspaceTabId.value);if(i.length===0||l<0)return"IGNORED";if(s.repeat||i.length===1)return"HANDLED";const v=s.key==="ArrowLeft"||s.key==="Tab"&&s.shiftKey?-1:1,u=i[(l+v+i.length)%i.length];return u===void 0?"IGNORED":(e.activateWorkspaceTab(u),"HANDLED")}),r("workspace.numberedTab",an.numbered,s=>{const i=/^Digit([0-9])$/.exec(s.code)?.[1]??s.key,l=i==="0"?9:Number(i)-1,v=e.workspaceTabs.value[l];return v===void 0?"IGNORED":(s.repeat||e.activateWorkspaceTab(v),"HANDLED")}),{command:"workspace.renderedPreview",priority:10,scope:"workspace",keys:an.preview,when:s=>!(s.target instanceof HTMLElement&&(s.target.isContentEditable||s.target.matches("input, textarea, select"))),execute:()=>e.workspaceFileWorkbench.value?.openCurrentRenderedPreview()===!0?"HANDLED":"IGNORED"},{command:"workspace.quickOpen",priority:10,scope:"workspace",keys:an.quickOpen,when:()=>e.view.value==="nodes"&&e.nodes.value.some(s=>s.connected&&!s.disabled),execute:()=>(t(),"HANDLED")},{command:"workspace.search",priority:10,scope:"workspace",keys:an.search,when:()=>e.contentSearchReady.value&&e.workspaceTarget.value!==void 0,execute:()=>(e.showAsideTool("search"),"HANDLED")},{command:"workspace.changes",priority:10,scope:"workspace",keys:an.changes,when:()=>e.selectedWorkspace.value?.kind==="GIT_WORKSPACE"&&e.filesReady.value&&e.workspaceTarget.value!==void 0,execute:s=>(s.repeat||e.showAsideTool("changes"),"HANDLED")},{command:"workspace.terminal",priority:10,scope:"workspace",allowedInBlockedScopes:["terminal"],keys:an.terminal,when:()=>e.terminalReady.value,execute:()=>(e.toggleTerminal(),"HANDLED")}]}const hw="/assets/runner-claude-code-hOhJ8xv9.png",yw="/assets/runner-codex-D2SXdx8Y.png",ww="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2032%2032'%20role='img'%20aria-label='OpenCode'%3e%3crect%20width='32'%20height='32'%20rx='7'%20fill='%23111827'/%3e%3cpath%20d='M10.8%209.5a6.5%206.5%200%201%200%200%2013h2.1v-3h-2.1a3.5%203.5%200%201%201%200-7h2.1v-3h-2.1Zm10.4%200h-4.1v13h4.1a6.5%206.5%200%200%200%200-13Zm0%203a3.5%203.5%200%200%201%200%207h-1.1v-7h1.1Z'%20fill='%23fff'/%3e%3c/svg%3e";function mc(e){return e==="mar-agent"?Ha:e==="codex"?yw:e==="claude-code"?hw:ww}function kw(e){const t=x(!1);function n(p){const g=e.workspaceTarget.value,R=e.selectedSessionId?.value;if(!g||!R||!e.nodeReady.value)return;const b=Dr(p,{...g,sessionId:R,scope:"SESSION"});b&&e.fileWorkbench.openTab(b)}let a;function r(p){const g=e.nodes.value.find(R=>R.id===p.nodeId);return g===void 0?p.nodeLabel??p.nodeId:$a(g)}function s(p){return p.externalDiscovered===!1?"—":er(p.lastActivityAt,e.sessionActivityClockNow.value)}function i(p){return Vf(p,e.formatSessionTime)}function l(p,g,R,b=!1,C){if(!b&&C?.mime.startsWith("image/")&&e.openAttachmentImage!==void 0){e.openAttachmentImage(C);return}u(p,g,R,b,!0)}function v(p,g,R,b=!1){u(p,g,R,b)}function u(p,g,R,b,C=!1){const I=e.selectedWorkspace.value?.path.replaceAll("\\","/").replace(/\/+$/,""),S=p.replaceAll("\\","/"),m=I!==void 0&&/^[a-z]:\//i.test(I),A=m?S.toLocaleLowerCase():S,L=m?I.toLocaleLowerCase():I,y=I!==void 0&&L!==void 0&&A.startsWith(`${L}/`)?S.slice(I.length+1):S;if(C&&Ka(y)&&!y.startsWith("/")&&!/^[a-z]:\//i.test(y)&&!y.split("/").some(D=>D===".."||D==="")){b?e.openHtmlExternal(y):e.openHtml(y);return}if(!e.filesReady.value){e.notice(c("generated.workbenchPageInteractionService.filePreviewIsCurrentlyUnavailable"),"error");return}if(b){e.openWorkspaceFileExternal(y,g,R);return}C?e.fileWorkbench.openComparison(y,g,R):e.fileWorkbench.openFile(y,g,R)}function d(){e.view.value!=="nodes"||!e.nodes.value.some(p=>p.connected&&!p.disabled)||(a=document.activeElement instanceof HTMLElement?document.activeElement:void 0,t.value=!0)}function w(p=!1){t.value=!1,p||ut(()=>a?.focus())}const k=mw(e,d,t),T=(p,g)=>ac(p,g,e.notice);return{quickOpenFileVisible:j(()=>t.value),openAgentFileChange:n,closeQuickOpenFile:w,copyConversationMessage:T,workspaceShortcuts:k,openAgentWorkspaceFile:l,openQuickWorkspaceFile:v,openQuickOpenFile:d,runnerBrandIcon:mc,sessionActivityTitle:i,sessionRelativeActivity:s,workspaceTabNodeLabel:r}}function bw(e){function t(r=e.runnerProfiles.value){const s=r.find(i=>i.capabilities.includes("turn.start"));s!==void 0&&!r.some(i=>i.runner===e.newSessionRunner.value&&i.capabilities.includes("turn.start"))&&e.applyRunnerDefaults(s.runner)}async function n(r){if(e.workspaceTarget.value?.nodeId===void 0||e.selectedWorkspace.value===void 0)return;const s={id:`draft:${crypto.randomUUID()}`,workspaceId:e.selectedWorkspace.value.id,runner:e.newSessionRunner.value,nativeControl:"MAR_MANAGED",runnerTitle:r,modelId:e.newSessionModel.value??null,effort:e.newSessionEffort.value??null,access:e.newSessionAccess.value??null,activity:"IDLE"};return e.prependSession(s),e.setDraftOpen(!1),e.setSelectedSessionId(s.id),s}function a(){e.closeMobileWorkspaceSurface(),e.draftSessionOpen.value||(e.saveCurrent(),e.stopSelectedSessionWatch(),t(),e.applyRunnerDefaults(e.newSessionRunner.value),e.setDraftOpen(!0),e.setSelectedSessionId(void 0),e.prepareDraft()),ut(e.focusDraft)}return{createDraftSession:n,ensureDraftRunnerSupported:t,openNewSessionComposer:a}}function Iw(e){let t,n,a=[];function r(){n===void 0&&(n=setTimeout(()=>{n=void 0,e.saveCurrentWorkspaceView()},0))}He(e.persistenceSources,e.persistWorkbenchState,{deep:!0}),He(e.documentTitle,s=>document.title=s,{immediate:!0}),He(e.routeSources,e.syncWorkbenchRoute),He(e.newSessionRunner,()=>{e.normalizeNewSessionOptions(),e.clearRunnerCommand(),e.clearComposerModelEffort()}),He(e.newSessionModel,e.normalizeNewSessionOptions),He(e.workspaceTarget,e.closeFileReferences),He(e.cacheSources,r,{flush:"post"}),He(e.conversationTurns,()=>{e.followConversation.value&&e.scrollConversationToLatest()},{flush:"post"}),He(e.conversationScroll,s=>{t?.disconnect(),s!==void 0&&(t=new ResizeObserver(()=>{e.followConversation.value&&e.scrollConversationToLatest()}),t.observe(s))}),He(e.selectedSessionId,(s,i)=>{s!==i&&e.stopSelectedSessionWatch()},{flush:"sync"}),Dt(()=>{e.restoreWorkbenchState(),e.restoreWorkbenchEventCursors(),e.restoreWorkspaceUploads(),e.startNavigation(),document.addEventListener("visibilitychange",e.handleSessionWatchVisibility),window.addEventListener("online",e.recoverAuthentication),a=e.workspaceShortcuts.map(s=>xt.register(s)),e.refreshAdmin()}),mt(()=>{n!==void 0&&clearTimeout(n),e.cancelFileReferenceSearch(),e.disposeNavigation(),document.removeEventListener("visibilitychange",e.handleSessionWatchVisibility),window.removeEventListener("online",e.recoverAuthentication);for(const s of a)s();e.disposeWorkspaceUploads(),e.disposeWorkbenchNotifications(),e.disposeWebVersionUpdateCheck(),t?.disconnect(),e.stopSelectedSessionWatch(),e.stopWorkspaceWatch(),e.disposeDirectTransport(),e.closeWorkbenchLive(),e.clearNewSessionAttachments(),e.releaseRunImagePreviews()})}function Sw(e){const t=x([]),n=x(!1),a=x(!1);let r;async function s(){return r!==void 0||(n.value=!0,a.value=!1,r=e.request("/api/quick-prompts").then(i=>{t.value=Array.isArray(i.prompts)?i.prompts:[]}).catch(()=>{a.value=!0}).finally(()=>{n.value=!1,r=void 0})),r}return{prompts:j(()=>t.value),loading:j(()=>n.value),failed:j(()=>a.value),refresh:s}}function Cw(e){const{selectedNodeId:t,selectedConversationId:n,pageSize:a}=e,r=x([]),s=x(!1),i=x(!1),l=x(!1),v=x(),u=x(!1);let d=0,w=0,k=null;const T=new Map;let p=0;function g(){return new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}function R(y){const D=gf.safeParse(y);if(!D.success)throw g();return D.data}function b(y,D){const E=Bt(y.nodeId,y.id),H=T.get(E);return H!==void 0&&H.revision>D&&H.activity.version>y.activity.version?{...y,activity:H.activity}:(T.set(E,{activity:y.activity,revision:D}),y)}function C(y){const D=pf.safeParse(y);if(!D.success)return!1;const E=D.data,H=Bt(E.nodeId,E.conversationId),X=T.get(H);return X!==void 0&&E.activity.version<=X.activity.version||(T.set(H,{activity:E.activity,revision:++p}),r.value=r.value.map(Y=>Y.nodeId===E.nodeId&&Y.id===E.conversationId?{...Y,activity:E.activity}:Y),e.onActivity(E.nodeId,E.conversationId,E.activity)),!0}function I(y){return["STARTING","RUNNING","CANCELLING"].includes(y.activity.status)}async function S(){const y=++d,D=p;w+=1,i.value=!0,l.value=!1,v.value=void 0;try{const E=R(await e.request(`/api/hosted-conversations?limit=${a}`));if(y!==d)return;const H=r.value,X=new Map(H.map(Q=>[Bt(Q.nodeId,Q.id),Q])),Y=H.find(Q=>Q.nodeId===t.value&&Q.id===n.value),U=E.items.map(Q=>{Q=b(Q,D);const $=X.get(Bt(Q.nodeId,Q.id));if($===void 0)return Q;const V=Rn(Q,$);return V.activity===Q.activity?V:{...V,activity:Q.activity}});E.items.length>0&&Y!==void 0&&!E.items.some(Q=>Q.nodeId===Y.nodeId&&Q.id===Y.id)&&U.push(Y),r.value=Vs(U),k=E.nextCursor,s.value=k!==null,u.value=!0}finally{y===d&&(i.value=!1)}}async function m(){const y=k;if(y===null||l.value||i.value)return;const D=d,E=++w,H=p;l.value=!0,v.value=void 0;try{const X=R(await e.request(`/api/hosted-conversations?limit=${a}&cursor=${encodeURIComponent(y)}`));if(D!==d)return;if(X.nextCursor===y)throw new Error("SESSION_PAGINATION_NO_PROGRESS");r.value=Vs([...r.value,...X.items.map(Y=>b(Y,H))]),k=X.nextCursor,s.value=k!==null}catch(X){D===d&&(v.value=X)}finally{E===w&&(l.value=!1)}}function A(y){const D=r.value.findIndex(E=>E.nodeId===y.nodeId&&E.id===y.id);if(D<0)r.value=gr([y,...r.value]);else{const E=[...r.value];E.splice(D,1,Rn(y,E[D])),r.value=gr(E)}}function L(y,D){r.value=r.value.filter(E=>E.id!==D||E.nodeId!==y)}return{conversations:r,hasMoreConversations:s,loadingConversations:i,loadingMoreConversations:l,loadMoreConversationsError:v,conversationsLoaded:u,loadConversations:S,loadMoreConversations:m,projectActivityMessage:C,conversationIsRunning:I,upsertConversation:A,remove:L}}function Rn(e,t){const n=e.updatedAt<t.updatedAt||e.lastActivityAt<t.lastActivityAt?t:e,a=e.activity,r=t.activity,s=a.version>r.version?a:r;return n.activity===s?n:{...n,activity:s}}function Vs(e){const t=new Map;for(const n of e){const a=Bt(n.nodeId,n.id),r=t.get(a);t.set(a,r===void 0?n:Rn(n,r))}return gr([...t.values()])}function gr(e){return[...e].sort((t,n)=>+(n.pinnedAt!==null)-+(t.pinnedAt!==null)||n.lastActivityAt-t.lastActivityAt||t.nodeId.localeCompare(n.nodeId,"en-US")||t.id.localeCompare(n.id,"en-US"))}function Bt(e,t){return`${e}\0${t}`}function Tw(e){function t(){return new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}function n(l){return`/api/nodes/${encodeURIComponent(l.nodeId)}/hosted-conversations/${encodeURIComponent(l.conversationId)}`}async function a(l){const v=e.requireContext();if(e.templateChanging())throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const u=yf.safeParse(await e.request(`${n(v)}/files/${encodeURIComponent(l)}`,{method:"DELETE",body:"{}"}));if(!u.success||u.data.deletedFileId!==l||u.data.files.some(d=>d.conversationId!==v.conversationId))throw t();return e.removeFile(v,l),u.data}async function r(l,v=0,u=512*1024){const d=e.requireContext(),w=await e.request(`${n(d)}/files/${encodeURIComponent(l)}?offset=${v}&limit=${u}`),k=hf.safeParse(w);if(!k.success||k.data.file.id!==l||k.data.file.conversationId!==d.conversationId||k.data.offset!==v)throw t();const T=Aw(k.data.content),p=v+T;if(T>u||p>k.data.file.size||(k.data.eof?k.data.nextOffset!==null||p!==k.data.file.size:k.data.nextOffset!==p))throw t();return k.data}function s(l,v=!1){const u=e.requireContext();if(l.conversationId!==u.conversationId)throw t();return`${n(u)}/files/${encodeURIComponent(l.id)}/content${v?"?download=1":""}`}async function i(l,v,u,d){const w=e.requireContext();if(e.templateChanging())throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const k=l.type.trim()||"application/octet-stream";d?.throwIfAborted();const T=mf.safeParse(await e.request(`${n(w)}/uploads/preflight`,{method:"POST",body:JSON.stringify({files:[{name:l.name,size:l.size,mimeType:k}]}),...d===void 0?{}:{signal:d}}));if(!T.success||T.data.files.length!==1||T.data.files[0]?.name!==l.name)throw t();if(T.data.files[0].status!=="READY")throw new Error(`HOSTED_CONVERSATION_UPLOAD_${T.data.files[0].status}`);let p=Ko(await e.request(`${n(w)}/uploads`,{method:"POST",body:JSON.stringify({name:l.name,size:l.size,mimeType:k,clientRequestId:v}),...d===void 0?{}:{signal:d}}),w.conversationId);u?.(p);const g=512*1024;try{for(let R=p.receivedBytes;R<l.size;R+=g){const b=Math.min(l.size,R+g),C=new Uint8Array(await l.slice(R,b).arrayBuffer());if(d?.throwIfAborted(),C.byteLength!==b-R||(p=Ko(await e.request(`${n(w)}/uploads/${encodeURIComponent(p.uploadId)}/chunks`,{method:"POST",body:JSON.stringify({offset:R,dataBase64:Rw(C)}),...d===void 0?{}:{signal:d}}),w.conversationId),p.receivedBytes!==b))throw t();u?.(p)}if(p=Ko(await e.request(`${n(w)}/uploads/${encodeURIComponent(p.uploadId)}/complete`,{method:"POST",body:"{}",...d===void 0?{}:{signal:d}}),w.conversationId),p.status!=="COMPLETED"||p.file===void 0)throw t()}catch(R){throw await e.request(`${n(w)}/uploads/${encodeURIComponent(p.uploadId)}/cancel`,{method:"POST",body:"{}"}).catch(()=>{}),R}return e.acceptFile(w,p.file),u?.(p),p}return{deleteFile:a,readFile:r,contentUrl:s,uploadFile:i}}function Ew(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Ko(e,t){if(!Ew(e)||Object.keys(e).length!==1||!Object.hasOwn(e,"upload"))throw new Error("HOSTED_CONVERSATION_RESPONSE_INVALID");const n=wf.safeParse(e.upload);if(!n.success||n.data.conversationId!==t)throw new Error("HOSTED_CONVERSATION_RESPONSE_INVALID");return n.data}function Rw(e){let t="";for(let a=0;a<e.length;a+=32768)t+=String.fromCharCode(...e.subarray(a,Math.min(e.length,a+32768)));return btoa(t)}function Aw(e){if(e.length===0)return 0;const t=e.endsWith("==")?2:e.endsWith("=")?1:0;return e.length*3/4-t}function Nw(e){const{selectedNodeId:t,selectedConversationId:n}=e,a=x(!1),r=x(),s=wt(),i=x(!1);let l,v=!1,u,d,w,k,T=0,p=0,g;function R(Q="HOSTED_CONVERSATION_WATCH_INITIAL_FAILED",$=new Error(Q)){const V=g;V!==void 0&&(g=void 0,clearTimeout(V.timer),V.removeAbortListener(),V.reject($))}function b(Q,$,V,N){return R(),new Promise((h,F)=>{const z=()=>{g?.watchId===V&&R()};N.addEventListener("abort",z,{once:!0});const fe=setTimeout(z,e.requestTimeoutMs);g={nodeId:Q,conversationId:$,watchId:V,resolve:h,reject:F,timer:fe,removeAbortListener:()=>N.removeEventListener("abort",z)},N.aborted&&z()})}function C(Q){const $=t.value;return Q===m()&&$!==void 0&&e.workbenchConnectionId()!==void 0&&(typeof document>"u"||document.visibilityState==="visible")}async function I(Q,$,V){const N=t.value,h=n.value,F=e.workbenchConnectionId();if(N===void 0||h===void 0||F===void 0||Q!==Bt(N,h))return;V==="initial"&&(a.value=!1,i.value=!0,v=!0,l=Hs(),u=N,d=h,w=F,k=void 0,T=0,p=0);const z=l??Hs();l=z;const fe=V==="initial"?b(N,h,z,$):void 0;fe?.catch(()=>{});try{const J=await e.request(`/api/nodes/${encodeURIComponent(N)}/hosted-conversations/${encodeURIComponent(h)}/watch`,{method:"POST",body:JSON.stringify({mode:V,workbenchConnectionId:F,watchId:z}),signal:$});if(m()!==Q||w!==F||l!==z){g?.watchId===z&&R();return}if(V==="initial"){const re=kf.safeParse(J);if(!re.success||re.data.watchId!==z||k!==void 0&&re.data.nodeGeneration!==k)throw R("HOSTED_CONVERSATION_RESPONSE_INVALID"),qs();k=re.data.nodeGeneration}await fe}catch(J){throw g?.watchId===z&&R(),await fe?.catch(()=>{}),l===z&&w===F&&m()===Q&&C(Q)&&(!$.aborted||gt($.reason)!==void 0)&&U($.aborted?$.reason:J),J}}const S=Pl({heartbeatMs:e.heartbeatMs,requestTimeoutMs:e.requestTimeoutMs,confirmationTimeoutMs:e.confirmationTimeoutMs,maxFailures:3,eligible:C,renew:I,recovery:{retryable:Q=>{const $=gt(Q);return $!==void 0?["HOSTED_CONVERSATION_TEMPLATE_CONFLICT","SESSION_WATCH_NOT_FOUND","HOSTED_CONVERSATION_WATCH_INITIAL_FAILED","NODE_OFFLINE","NODE_REQUEST_TIMEOUT","WATCH_REQUEST_TIMEOUT","REQUEST_FAILED_408","REQUEST_FAILED_429","REQUEST_FAILED_502","REQUEST_FAILED_503","REQUEST_FAILED_504"].includes($):Q instanceof TypeError||Q instanceof Error&&Q.name==="AbortError"},onFailure:Q=>{v=!1,i.value=!0,s.value=Q,r.value=gt(Q)??"HOSTED_CONVERSATION_WATCH_EXPIRED"}},onExpired:()=>{i.value=!1,r.value??="HOSTED_CONVERSATION_WATCH_EXPIRED",e.onWatchExpired?.()}});function m(){const Q=t.value,$=n.value;return Q===void 0||$===void 0?void 0:Bt(Q,$)}function A(){const Q=m();if(Q===void 0)return Promise.reject(new Error("HOSTED_CONVERSATION_REQUIRED"));const $=S.start(Q);return $===void 0?Promise.resolve():($.catch(()=>{}),$)}function L(){a.value=!1,i.value=!1,R(),S.stop();const Q=u,$=d,V=w,N=l;u=void 0,d=void 0,w=void 0,l=void 0,v=!1,k=void 0,T=0,p=0,!(Q===void 0||$===void 0||V===void 0||N===void 0)&&e.request(`/api/nodes/${encodeURIComponent(Q)}/hosted-conversations/${encodeURIComponent($)}/watch`,{method:"DELETE",body:JSON.stringify({workbenchConnectionId:V,watchId:N})}).catch(()=>{})}function y(){return L(),A()}function D(){a.value=!1,i.value=!1,S.pause()}function E(){document.visibilityState!=="visible"&&L()}function H(Q){if(!jo(Q))return!1;if(Q.type==="watch.failed")return Y(Q);if(Q.type!=="watch.hosted-conversation.snapshot"&&Q.type!=="watch.hosted-conversation.event"||!X(Q))return!1;if(k??=Q.nodeGeneration,Q.type==="watch.hosted-conversation.snapshot"){if(!Number.isInteger(Q.snapshotSequence)||Q.snapshotSequence<=T)return!1;const N=ea.safeParse(Q.payload);if(!N.success||N.data.conversation.id!==d||N.data.conversation.nodeId!==u)return R("HOSTED_CONVERSATION_RESPONSE_INVALID"),U(qs()),!0;if(T=Q.snapshotSequence,e.installSnapshot(u,d,N.data),!X(Q)||(a.value=!0,!X(Q))||(r.value=void 0,s.value=void 0,i.value=!1,!X(Q)))return!0;const h=g;return h?.nodeId===u&&h.conversationId===d&&h.watchId===l&&(g=void 0,clearTimeout(h.timer),h.removeAbortListener(),h.resolve()),S.confirm(Bt(u,d)),!0}const $=jo(Q.event)?Q.event:void 0;if($===void 0||$.category!=="hosted-conversation"||!Number.isInteger($.sequence)||$.sequence<=p)return!1;const V=jo($.payload)?$.payload:void 0;return V===void 0||V.conversationId!==d?!1:(p=$.sequence,e.applyHostedPayload(V,$.sequence),X(Q)&&S.confirm(Bt(u,d)),!0)}function X(Q){return v&&Q.workbenchConnectionId===e.workbenchConnectionId()&&Q.workbenchConnectionId===w&&Q.watchId===l&&Q.nodeId===u&&Q.conversationId===d&&typeof Q.nodeGeneration=="string"&&(k===void 0||Q.nodeGeneration===k)&&t.value===u&&n.value===d}function Y(Q){if(Q.watchType!=="hosted-conversation"||!X(Q)||typeof Q.code!="string")return!1;k??=Q.nodeGeneration,r.value=Q.code;const $=qa({error:Q},500);return s.value=$,i.value=!1,v=!1,R(Q.code,$),S.pause(),!0}function U(Q){a.value=!1,i.value=!1,s.value=Q,r.value=gt(Q)??"HOSTED_CONVERSATION_WATCH_EXPIRED"}return{watchReady:a,watchFailureCode:r,watchFailure:s,watchLoading:i,clearFailure:()=>{r.value=void 0,s.value=void 0},selectedWatchId:()=>l,beginSelectedConversationWatch:A,restartSelectedConversationWatch:y,pauseSelectedConversationWatch:D,stopSelectedConversationWatch:L,handleVisibility:E,handleWatchEvent:H,markRestartFailure:U}}function qs(){return new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}function Hs(){return crypto.randomUUID().replace(/-/g,"")}function jo(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function _o(e,t){const n=t.replaceAll("\\","/"),a=n.startsWith("/"),s=n.replace(/^\/+/u,"").split("/");if(s.length===0||s.some(d=>d.length===0||d==="."||d===".."))return;if(a){if(s[0]!=="workspace")return;s.shift()}const i=s[0],l=i==="output"?"OUTPUT":i==="inbox"?"UPLOAD":void 0;if(l!==void 0){const d=s.slice(1).join("/");return d.length===0?void 0:e.find(w=>w.category===l&&w.relativePath===d)}if(a)return;const v=s.join("/"),u=e.filter(d=>d.relativePath===v);return u.length===1?u[0]:void 0}function Dw(e){const t=x(),n=x(),a=x(),r=x(!1),s=x(),{turns:i,nextCursor:l,projection:v}=Tp({onRecentWindowOverflow:()=>{J+=1,s.value=void 0,r.value=!1,fe=!1,re=void 0,ne()},limitHistory:xa}),u=j(()=>a.value===void 0?void 0:{...a.value,turns:i.value}),d=Cw({request:e.request,selectedNodeId:t,selectedConversationId:n,pageSize:e.pageSize??20,onActivity:(he,q,te)=>{const _=u.value;_?.conversation.nodeId===he&&_.conversation.id===q&&te.version>_.conversation.activity.version&&xe({..._,conversation:{..._.conversation,activity:te}})}}),{conversations:w,hasMoreConversations:k,loadingConversations:T,loadingMoreConversations:p,loadMoreConversationsError:g,conversationsLoaded:R,loadConversations:b,loadMoreConversations:C,projectActivityMessage:I,conversationIsRunning:S,upsertConversation:m}=d,A=Nw({request:e.request,workbenchConnectionId:e.workbenchConnectionId,selectedNodeId:t,selectedConversationId:n,heartbeatMs:e.heartbeatMs,requestTimeoutMs:e.requestTimeoutMs,confirmationTimeoutMs:e.confirmationTimeoutMs,...e.onWatchExpired===void 0?{}:{onWatchExpired:e.onWatchExpired},installSnapshot:G,applyHostedPayload:M}),{watchReady:L,watchFailureCode:y,watchFailure:D,watchLoading:E,selectedWatchId:H,beginSelectedConversationWatch:X,restartSelectedConversationWatch:Y,pauseSelectedConversationWatch:U,stopSelectedConversationWatch:Q,handleVisibility:$,handleWatchEvent:V}=A,N=Ep(),h=x(new Set),F=j(()=>{const he=ce();return he!==void 0&&h.value.has(he)});let z=0,fe=!1,J=0,re;function ge(){return new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}function ce(){const he=t.value,q=n.value;return he===void 0||q===void 0?void 0:Bt(he,q)}function oe(he,q,te){if(te!==void 0&&(te.conversation.nodeId!==he||te.conversation.id!==q))throw ge();if(t.value===he&&n.value===q){te!==void 0&&G(he,q,te);return}Q(),n.value=void 0,a.value=void 0,v.restoreWindow([],null),r.value=!1,fe=!1,J+=1,s.value=void 0,re=void 0,A.clearFailure(),te!==void 0&&G(he,q,te),t.value=he,n.value=q}function P(){Q(),n.value=void 0,t.value=void 0,a.value=void 0,v.restoreWindow([],null),r.value=!1,fe=!1,J+=1,s.value=void 0,re=void 0,A.clearFailure()}function G(he,q,te,_=u.value===void 0){if(te.conversation.nodeId!==he||te.conversation.id!==q)throw ge();const se=te.historyVersion!==u.value?.historyVersion;_||=se;const be={turns:Yo(te.turns),nextCursor:te.historyNextCursor,source:"official",snapshotSequence:te.snapshotSequence,readAt:Date.now()};_?(J+=1,r.value=!1,s.value=void 0,fe=!1,se&&v.resetHistory(),v.replaceAuthoritative(be)):v.mergeLatest({...be,nextCursor:fe?l.value:be.nextCursor}),xe({...te,turns:i.value,historyNextCursor:l.value},!0),m(te.conversation)}async function ue(){const he=Me(),q=l.value,te=J;if(!(q===null||r.value)){r.value=!0,s.value=void 0;try{const _=$i.safeParse(await e.request(`${ye(he)}/history?limit=10&cursor=${encodeURIComponent(q)}`));if(!_.success)throw ge();if(!Se(he)||J!==te||u.value===void 0||l.value!==q)return;const se=Yo(_.data.turns);v.mergeOlderPage({turns:se,nextCursor:_.data.nextCursor}),fe=!0,v.restore(i.value),Ee({...u.value,historyNextCursor:_.data.nextCursor})}catch(_){Se(he)&&J===te&&l.value===q&&(s.value=_)}finally{J===te&&(r.value=!1)}}}function ne(){if(re!==void 0)return re;const he=J,q=(async()=>{const te=Me(),_=$i.safeParse(await e.request(`${ye(te)}/history?limit=10`));!_.success||!Se(te)||J!==he||u.value===void 0||(v.replaceAuthoritative({turns:Yo(_.data.turns),nextCursor:_.data.nextCursor,source:"official",readAt:Date.now()}),Ee({...u.value,historyNextCursor:_.data.nextCursor}))})().catch(()=>{}).finally(()=>{re===q&&(re=void 0)});return re=q,q}function M(he,q){const te=u.value;if(te!==void 0){if(he.kind==="template-changed"&&he.conversationId===te.conversation.id){_e(Me(),H());return}if(he.kind==="runtime"&&Jt(he.runtimeEvent)){ee(te,he.runtimeEvent,q);return}if(he.kind==="files"&&Array.isArray(he.files)){const _=new Map;for(const se of he.files){const be=Sf.safeParse(se);if(!be.success||be.data.conversationId!==te.conversation.id)return;_.set(be.data.id,be.data)}if(he.error!==null&&!zs(he.error))return;xe({...te,files:[..._.values()],error:he.error});return}if((he.kind==="configuration"||he.kind==="conversation")&&he.conversation!==void 0){const _=Aa.safeParse(he.conversation);if(!_.success||_.data.id!==te.conversation.id||_.data.nodeId!==te.conversation.nodeId)return;xe({...te,conversation:_.data}),m(_.data);return}if(he.kind==="upgrade"&&Jt(he.upgrade)){const _=Aa.safeParse(he.upgrade.conversation);if(!_.success||_.data.id!==te.conversation.id||_.data.nodeId!==te.conversation.nodeId||he.upgrade.error!==null&&!zs(he.upgrade.error))return;xe({...te,conversation:_.data,error:he.upgrade.error}),m(_.data);return}if(he.kind==="run"){const _=ea.innerType().shape.run.safeParse(Bs(he.run,te.run));_.success&&xe({...te,run:_.data},!0)}}}function ee(he,q,te){if(q.kind!=="RUN"&&q.kind!=="ITEM"&&q.kind!=="DELTA"||typeof q.executionId!="string"||q.executionId.length===0||!Number.isInteger(q.sequence)||q.sequence<0||!Number.isInteger(q.createdAt)||!Jt(q.payload))return;const _=q.executionId,se=typeof q.turnId=="string"&&q.turnId.length>0?q.turnId:_,be=Math.max(0,q.createdAt);le(he,_,se,be,te);const Oe=i.value.findLast(st=>st.id===se||st.runId===_);if(Oe===void 0)return;if(q.kind==="ITEM"){if(v.mergeItem(_,q.payload.item,te,be)){const st=Jt(q.payload.item)?q.payload.item:void 0,pe=st===void 0||!Jt(st.payload)?void 0:st.payload;if(st?.kind==="user_message"&&typeof pe?.clientMessageId=="string"&&pe.clientMessageId.length>0){const Ce=i.value.findLast(je=>je.id===se||je.runId===_);Ce!==void 0&&v.mergeLatest({turns:[Ce],nextCursor:null,source:"runtime",snapshotSequence:te,readAt:be})}Ee(he)}return}if(q.kind==="DELTA"){v.mergeTextDelta(_,q.payload,te,be)&&Ee(he);return}const We=Ow(q.payload.status);if(We===void 0)return;const Ie=Lw(We);v.mergeLatest({turns:[{...Oe,status:We,items:Ie?Oe.items.map(st=>st.kind==="assistant_message"&&st.status==="IN_PROGRESS"?{...st,status:"COMPLETED",completedAt:be}:st):Oe.items,completedAt:Ie?be:null}],nextCursor:null,source:"runtime",snapshotSequence:te,readAt:be}),Ee(he)}function le(he,q,te,_,se){i.value.some(be=>be.id===te||be.runId===q&&be.id===te)||v.mergeLatest({turns:[{id:te,sessionId:he.conversation.sessionId,runId:q,status:"RUNNING",items:[],startedAt:_,completedAt:null}],nextCursor:null,source:"runtime",snapshotSequence:se,readAt:_})}function Ee(he){xe({...he,historyNextCursor:l.value},!0)}function xe(he,q=!1){const{turns:te,..._}=he;a.value=_,q&&(z+=1)}function Me(){const he=t.value,q=n.value,te=u.value;if(he===void 0||q===void 0||te===void 0||te.conversation.nodeId!==he||te.conversation.id!==q)throw new Error("HOSTED_CONVERSATION_REQUIRED");return{nodeId:he,conversationId:q,snapshot:te,historyRevision:z}}function Se(he){return t.value===he.nodeId&&n.value===he.conversationId}function ye(he){return`/api/nodes/${encodeURIComponent(he.nodeId)}/hosted-conversations/${encodeURIComponent(he.conversationId)}`}function Fe(he,q,te){if(!Jt(he)||!Ua(he,te?["conversation","run"]:["conversation"]))throw ge();const _=Aa.safeParse(he.conversation),se=ea.innerType().shape.run.safeParse(te?he.run:q.snapshot.run);if(!_.success||!se.success||_.data.nodeId!==q.nodeId||_.data.id!==q.conversationId)throw ge();return{conversation:_.data,run:se.data}}function Ye(he,q,te){if(!Jt(he)||!Ua(he,["conversation"]))throw ge();const _=Aa.safeParse(he.conversation);if(!_.success||_.data.nodeId!==q||_.data.id!==te)throw ge();return _.data}async function nt(he){const q=Me();if(F.value)throw new Error("HOSTED_CONVERSATION_STATE_INVALID");if(!L.value)throw new Error("HOSTED_CONVERSATION_WATCH_NOT_READY");const te=N.begin(mr(q.nodeId,q.conversationId));if(te===void 0)throw new Error("HOSTED_CONVERSATION_MESSAGE_SUBMISSION_ACTIVE");ae(q.snapshot,he);try{const _=await e.request(`${ye(q)}/messages`,{method:"POST",body:JSON.stringify({clientMessageId:he.clientMessageId,prompt:he.prompt,attachmentIds:[...he.attachmentIds],...he.modelId===void 0?{}:{modelId:he.modelId},...he.deliveryIntent===void 0?{}:{deliveryIntent:he.deliveryIntent}})}),se=Fe(_,q,!0);if(se.run===null)throw ge();if(Se(q)&&u.value!==void 0){v.updateOptimisticUserMessage(he.clientMessageId)&&Ee(u.value);const be=Rn(se.conversation,u.value.conversation);xe({...u.value,conversation:be,run:Bs(se.run,u.value.run)},!0),m(be)}return se.run}catch(_){throw Se(q)&&u.value!==void 0&&v.removeOptimisticUserMessage(he.clientMessageId)&&Ee(u.value),_}finally{te()}}function ae(he,q){const te=Date.now();v.mergeLatest({turns:[{id:q.clientMessageId,sessionId:he.conversation.sessionId,runId:null,status:"PREPARING",items:[{id:q.clientMessageId,kind:"user_message",status:"COMPLETED",payload:{clientMessageId:q.clientMessageId,text:q.prompt,contexts:[],delivery:"PENDING"},startedAt:te,completedAt:te}],startedAt:te,completedAt:null}],nextCursor:null,source:"runtime",readAt:te}),Ee(he)}async function me(he){const q=Me();if(F.value)throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const te=await e.request(`${ye(q)}/config`,{method:"PATCH",body:JSON.stringify({modelId:he.modelId})}),_=Fe(te,q,!1);if(Se(q)&&u.value!==void 0){const se=Rn(_.conversation,u.value.conversation);xe({...u.value,conversation:se}),m(se)}return _.conversation}async function Pe(he,q,te){const _=Me();if(F.value)throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const se=ea.safeParse(await e.request(`${ye(_)}/rollback`,{method:"POST",body:JSON.stringify({turnId:he,boundary:q,...te===void 0?{}:{itemId:te}})}));if(!se.success||se.data.conversation.nodeId!==_.nodeId||se.data.conversation.id!==_.conversationId||se.data.conversation.sessionId!==_.snapshot.conversation.sessionId||se.data.conversation.templateId!==_.snapshot.conversation.templateId||se.data.template.id!==_.snapshot.template.id||se.data.template.nodeId!==_.nodeId)throw ge();const be=u.value;return Se(_)&&be!==void 0&&(be===_.snapshot?G(_.nodeId,_.conversationId,se.data,!0):be.conversation.nodeId===_.nodeId&&be.conversation.id===_.conversationId&&z===_.historyRevision&&G(_.nodeId,_.conversationId,{...se.data,nodeAppVersion:be.nodeAppVersion??se.data.nodeAppVersion,conversation:Rn(se.data.conversation,be.conversation),template:be.template,files:be.files,models:be.models,error:be.error},!0)),se.data}async function Ue(he,q=t.value,te=n.value){if(q===void 0||te===void 0)throw new Error("HOSTED_CONVERSATION_REQUIRED");const _={nodeId:q,conversationId:te},se=await e.request(ye(_),{method:"PATCH",body:JSON.stringify({...he.title===void 0?{}:{title:he.title},...he.pinned===void 0?{}:{pinned:he.pinned}})}),be=Ye(se,q,te);if(Se(_)&&u.value!==void 0){const Oe=Rn(be,u.value.conversation);return xe({...u.value,conversation:Oe}),m(Oe),Oe}return m(be),be}async function Qe(){const he=Me(),q=await e.request(`${ye(he)}/interrupt`,{method:"POST",body:"{}"});if(!Jt(q)||!Ua(q,["interrupted"])||typeof q.interrupted!="boolean")throw ge();return q.interrupted}async function Te(he=t.value,q=n.value){if(he===void 0||q===void 0)throw new Error("HOSTED_CONVERSATION_REQUIRED");const te={nodeId:he,conversationId:q},_=Se(te)&&H()!==void 0;Se(te)&&Q();let se;try{const be=bf.safeParse(await e.request(ye(te),{method:"DELETE",body:"{}"}));if(!be.success||be.data.deletedConversationId!==q)throw ge();se=be.data.deletedConversationId}catch(be){throw _&&Se(te)&&Y().catch(()=>{}),be}return d.remove(he,q),Se(te)&&P(),{deletedConversationId:se}}async function Ge(){const he=Me();return(await zl(e.request)).filter(te=>te.nodeId===he.nodeId&&te.available)}async function _e(he,q){if(!(!Se(he)||H()!==q))try{await Y()}catch(te){Se(he)&&A.markRestartFailure(te)}}async function tt(he,q){const te=Me(),_=te.snapshot.conversation;if(_.templateId===he)return;if(_.templateId!==q)throw new Error("HOSTED_CONVERSATION_TEMPLATE_CONFLICT");if(_.status!=="ACTIVE"||!L.value||te.snapshot.run!==null||_.activity.status!=="IDLE"||F.value||N.pending.value&&N.context.value===mr(te.nodeId,te.conversationId))throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const se=Bt(te.nodeId,te.conversationId),be=H();h.value.add(se);try{const Oe=If.safeParse(await e.request(`${ye(te)}/template`,{method:"POST",body:JSON.stringify({templateId:he,expectedTemplateId:q})}));if(!Oe.success||Oe.data.conversation.id!==te.conversationId||Oe.data.conversation.nodeId!==te.nodeId||Oe.data.conversation.sessionId!==_.sessionId||Oe.data.template.id!==he)throw ge();await _e(te,be)}catch(Oe){const We=gt(Oe);throw(We===void 0||["HOSTED_CONVERSATION_TEMPLATE_CONFLICT","HOSTED_CONVERSATION_RESPONSE_INVALID","NODE_REQUEST_TIMEOUT","NODE_OFFLINE","NODE_SEND_FAILED","NODE_CONTROL_CLOSED","NODE_RESPONSE_INVALID","INTERNAL_ERROR","REQUEST_FAILED_500","REQUEST_FAILED_502","REQUEST_FAILED_503","REQUEST_FAILED_504"].includes(We))&&await _e(te,be),Oe}finally{h.value.delete(se)}}const{deleteFile:Xe,readFile:Re,contentUrl:de,uploadFile:Ae}=Tw({request:e.request,requireContext:Me,templateChanging:()=>F.value,removeFile:(he,q)=>{Se(he)&&u.value!==void 0&&xe({...u.value,files:u.value.files.filter(te=>te.id!==q)})},acceptFile:(he,q)=>{if(Se(he)&&u.value!==void 0){const te=new Map(u.value.files.map(_=>[_.id,_]));te.set(q.id,q),xe({...u.value,files:[...te.values()]})}}});return{conversations:w,hasMoreConversations:k,loadingConversations:T,loadingMoreConversations:p,loadMoreConversationsError:g,conversationsLoaded:R,selectedNodeId:t,selectedConversationId:n,snapshot:u,turns:i,historyNextCursor:l,loadingOlderHistory:r,olderHistoryError:s,watchReady:L,watchFailureCode:y,selectedWatchId:H,watchFailure:D,watchLoading:E,messageSubmitting:N.pending,messageSubmissionContext:N.context,templateChanging:F,listTemplateOptions:Ge,switchTemplate:tt,loadConversations:b,loadMoreConversations:C,projectActivityMessage:I,conversationIsRunning:S,rememberConversation:m,selectConversation:oe,clearSelectedConversation:P,beginSelectedConversationWatch:X,restartSelectedConversationWatch:Y,pauseSelectedConversationWatch:U,stopSelectedConversationWatch:Q,handleWatchEvent:V,handleVisibility:$,loadOlderHistory:ue,sendMessage:nt,rollback:Pe,updateConfiguration:me,updateMetadata:Ue,interrupt:Qe,deleteConversation:Te,deleteFile:Xe,readFile:Re,contentUrl:de,uploadFile:Ae}}function Bs(e,t){if(!Jt(e)||typeof e.id!="string")return t;const n=Pw(e.status);if(n===void 0)return t;if(t?.id===e.id){const s=Gs(t.status);if(s===3||Gs(n)<s)return t}const a=e.startedAt===null||Number.isInteger(e.startedAt)&&e.startedAt>=0?e.startedAt:t?.startedAt??null,r=e.completedAt===null||Number.isInteger(e.completedAt)&&e.completedAt>=0?e.completedAt:t?.completedAt??null;return{id:e.id,status:n,startedAt:a,completedAt:r}}function Gs(e){return e==="STARTING"?0:e==="RUNNING"?1:e==="CANCELLING"?2:3}function Pw(e){if(e==="STARTING"||e==="RUNNING"||e==="CANCELLING"||e==="SUCCEEDED"||e==="FAILED"||e==="CANCELLED"||e==="INTERRUPTED")return e}function zs(e){return Jt(e)&&Ua(e,["code","message"])&&typeof e.code=="string"&&/^[A-Z][A-Z0-9_]{0,79}$/.test(e.code)&&typeof e.message=="string"&&e.message.length>0&&e.message.length<=1e3}function Yo(e){return e.map(t=>{const n={id:t.id,sessionId:t.sessionId,runId:t.runId,status:t.status,...t.rewind===void 0?{}:{rewind:t.rewind},items:t.items.map(a=>{const r={id:a.id,kind:a.kind,status:a.status,payload:a.payload,startedAt:a.startedAt,completedAt:a.completedAt,...a.processGroup===void 0?{}:{processGroup:a.processGroup},...a.segmentId===void 0?{}:{segmentId:a.segmentId},...a.segmentIndex===void 0?{}:{segmentIndex:a.segmentIndex}};return Object.assign(r,{sessionId:a.sessionId,turnId:a.turnId,runId:a.runId,parentItemId:a.parentItemId,sourceSequence:a.sourceSequence,revision:a.revision})}),startedAt:t.startedAt,completedAt:t.completedAt};return Object.assign(n,{userItemId:t.userItemId,model:t.model,effort:t.effort,access:t.access})})}function Ow(e){if(e==="RUNNING"||e==="SUCCEEDED"||e==="FAILED"||e==="INTERRUPTED")return e}function Lw(e){return["SUCCEEDED","FAILED","CANCELLED","INTERRUPTED","LOST"].includes(e)}function Ua(e,t){const n=Object.keys(e).sort(),a=[...t].sort();return n.length===a.length&&n.every((r,s)=>r===a[s])}function mr(e,t){return Bt(e,t)}function Jt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Ks="mar.prompt-completion.enabled";function Ww(){let e=!0;try{e=localStorage.getItem(Ks)!=="false"}catch{}const t=wt(e);return{enabled:ct(t),setEnabled(n){localStorage.setItem(Ks,String(n)),t.value=n}}}let js;function Mw(){return js??=Ww(),js}class xw{constructor(t){this.options=t}options;connection;pageEpoch="";sequence=0;bind(t){return j(()=>{const n=t.target(),a=this.options.connectionId(),r=JSON.stringify([a,n]),s=()=>t.enabled()&&a===this.options.connectionId()&&r===JSON.stringify([this.options.connectionId(),t.target()]);return{enabled:!!(n&&a&&t.enabled()),contextKey:r,automaticKey:t.automaticKey?.(),automaticTerminalKey:t.automaticTerminalKey?.(),...t.readContextRevision?{readContextRevision:t.readContextRevision}:{},request:(i,l,v,u="MANUAL")=>!n||!a||!s()||l.aborted?Promise.reject(Qo()):this.complete(n,a,i,l,s,u,v??t.attention?.())}})}async complete(t,n,a,r,s,i,l){this.connection!==n&&(this.connection=n,this.pageEpoch=crypto.randomUUID(),this.sequence=0);const v={requestId:crypto.randomUUID(),pageEpoch:this.pageEpoch,intentSequence:++this.sequence},u=new AbortController,d=()=>u.abort(),w=()=>{const T=new AbortController,p=setTimeout(()=>T.abort(),2e3);this.post(t.nodeId,"cancel",{target:t.target,workbenchConnectionId:n,request:v},T.signal,!0).catch(()=>{}).finally(()=>clearTimeout(p))};r.addEventListener("abort",d,{once:!0}),u.signal.addEventListener("abort",w,{once:!0});const k=setTimeout(d,12e3);try{const T=Cf.parse(await this.post(t.nodeId,"context",{target:t.target,runner:t.runner,sessionId:t.sessionId,pageEpoch:v.pageEpoch,workbenchConnectionId:n},u.signal));if(u.signal.throwIfAborted(),!s())throw u.abort(),Qo();const p={...v,trigger:i,completionMode:a.text.length===0?"NEXT":"REWRITE",...l?.length?{attention:l}:{},draft:a.text,cursorPosition:a.cursor,draftRevision:v.intentSequence,runner:t.runner,sessionId:t.sessionId,contextVersion:T.contextVersion,historyGeneration:T.historyGeneration},g=Tf.parse(await this.post(t.nodeId,"generate",{target:t.target,workbenchConnectionId:n,request:p},u.signal));if(u.signal.throwIfAborted(),!s()||g.requestId!==v.requestId||g.cursorPosition!==a.cursor||g.draftRevision!==p.draftRevision||g.contextVersion!==T.contextVersion||g.historyGeneration!==T.historyGeneration)throw Qo();return g}finally{clearTimeout(k),r.removeEventListener("abort",d),u.signal.removeEventListener("abort",w)}}post(t,n,a,r,s=!1){return this.options.request(`/api/nodes/${encodeURIComponent(t)}/prompt-completion/${n}`,{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(a),signal:r,keepalive:s})}}function Qo(){return new DOMException("Prompt completion was cancelled.","AbortError")}function $w(e){const t=x([]),n=x(),a=x([]),r=x({}),s=x({}),i=x();function l(m,A,L=[]){t.value=[...m],a.value=[...new Set(L.filter(y=>typeof y=="string"&&y.length>0))],s.value=Object.fromEntries(Object.entries(A).flatMap(([y,D])=>typeof y=="string"&&Array.isArray(D)?[[y,D.filter(E=>typeof E=="string")]]:[]))}function v(m){const A=new Map(a.value.map((L,y)=>[L,y]));return[...m].sort((L,y)=>(A.get(L.id)??Number.MAX_SAFE_INTEGER)-(A.get(y.id)??Number.MAX_SAFE_INTEGER))}function u(m,A,L){const y=v(m).map(E=>E.id),D=y.indexOf(A);!Number.isInteger(L)||D<0||L<0||L>=y.length||D===L||(y.splice(D,1),y.splice(L,0,A),a.value=y,e.persist())}function d(m,A){r.value={...r.value,[m]:A};const L=A.map(D=>D.id),y=s.value[m]??[];s.value={...s.value,[m]:[...y.filter(D=>L.includes(D)),...L.filter(D=>!y.includes(D))]}}function w(m){return r.value[m]??[]}function k(m){const A=s.value[m]??[],L=new Map(A.map((y,D)=>[y,D]));return[...w(m)].sort((y,D)=>(L.get(y.id)??Number.MAX_SAFE_INTEGER)-(L.get(D.id)??Number.MAX_SAFE_INTEGER))}function T(m){return t.value.includes(m)?(t.value=t.value.filter(A=>A!==m),!1):(t.value=[...t.value,m],!0)}function p(m){(t.value.length!==1||t.value[0]!==m.nodeId)&&(t.value=[m.nodeId]),n.value={nodeId:m.nodeId,workspaceId:m.workspaceId}}function g(m,A,L){i.value={nodeId:A,workspaceId:L};const y=m.dataTransfer;y!==null&&(y.setData("text/plain",L),y.effectAllowed="move")}function R(){i.value=void 0}function b(m,A,L){const y=i.value;R(),!(y===void 0||y.nodeId!==m||y.workspaceId===A)&&I(m,y.workspaceId,A,L)}function C(m,A,L){const y=k(m),D=y.find(Y=>Y.id===A);if(D===void 0||L!==-1&&L!==1)return;const E=D.groupName?.trim()||null,H=y.filter(Y=>(Y.groupName?.trim()||null)===E),X=H[H.indexOf(D)+L];X!==void 0&&I(m,A,X.id)}function I(m,A,L,y){const D=k(m).map(Y=>Y.id),E=D.indexOf(A),H=D.indexOf(L);if(E<0||H<0||E===H)return;const X=y===void 0?H:H+(y==="after"?1:0)-(E<H?1:0);X!==E&&(D.splice(E,1),D.splice(X,0,A),s.value={...s.value,[m]:D},e.persist())}function S(m){a.value=a.value.filter(y=>y!==m);const A={...r.value};delete A[m],r.value=A;const L={...s.value};delete L[m],s.value=L,t.value=t.value.filter(y=>y!==m)}return{expandedNodeIds:t,revealTarget:n,revealWorkspace:p,nodeOrder:a,orderedNodes:v,moveNode:u,moveWorkspace:C,workspacesByNode:r,workspaceOrderByNode:s,draggingWorkspace:i,restore:l,cacheWorkspaces:d,workspacesForNode:w,orderedWorkspaces:k,toggleNode:T,startDrag:g,endDrag:R,reorder:b,removeNode:S}}const _s=8,Fw=5,Uw=15e3,Vw=15e3,qw=45e3,Hw=1e4;function Bw(e){const t=e.management;function n(){return Vd.refreshRecentConversationTurns()}const a=gw({navigation:e.navigation,sessionPageSize:Po,onUnauthenticated:()=>mo(),onWorkspaceRunCompleted:ri,onNotificationClick:Pd,visibleWorkspaceTargets:()=>ed(),visibleHostedTarget:()=>{const ie=Ue.selectedNodeId.value,$e=Ue.selectedConversationId.value;return ie===void 0||$e===void 0?void 0:{nodeId:ie,conversationId:$e}}}),r=a.navigation;let s=()=>{};const{view:i,settingsSection:l,managementSection:v,mobileViewport:u,sidebarCollapsed:d,mobileSidebarOpen:w,mobileWorkspaceSurface:k,start:T,dispose:p,closeMobileSidebar:g,selectSettings:R,selectManagement:b,openMobileWorkspaceSurface:C,closeMobileWorkspaceSurface:I}=r,S=a.admin,{admin:m,loaded:A,loading:L,sessions:y,newPassword:D,passwordValidationError:E,csrfToken:H}=S,X=a.http,{request:Y,renewCsrfToken:U}=X,Q=Za({csrfToken:()=>H.value,renewCsrfToken:U}),$=et;mt(No);const V=Dp(),N=rw(),h=N.target,F=qy(h),z=F.sessionId,fe=F.draftOpen,J=F.draftTarget,re=Hy({target:J}),ge=Wh({workspaceTarget:h,onNodeConnected:ie=>Oi(ie,!1),request:Y,notice:$,errorMessage:it}),{nodes:ce,serverVersion:oe,workspaces:P,manifest:G,manifestLoading:ue}=ge,ne=Sh({workspaceTarget:h,nodes:ce,workspaces:P,nodeManifest:G}),{selectedWorkspace:M,workspaceHost:ee,nodeReady:le,filesReady:Ee,terminalReady:xe}=ne,Me=j(()=>Ee.value),Se=j(()=>Ee.value),ye=j(()=>Se.value),Fe=j(()=>Ee.value),Ye=j(()=>h.value?.nodeId),nt=j(()=>h.value?.workspaceId),ae=j(()=>!u.value||k.value==="conversation"),me=x(),Pe={},Ue=Dw({request:Y,workbenchConnectionId:()=>me.value,heartbeatMs:Vw,requestTimeoutMs:Hw,confirmationTimeoutMs:qw}),Qe=Jm({enabled:()=>!u.value,context:()=>({view:i.value,...Ye.value===void 0?{}:{nodeId:Ye.value},...nt.value===void 0?{}:{workspaceId:nt.value},...z.value===void 0?{}:{sessionId:z.value}})}),Te=Hp({diagnostics:Qe,canConnect:()=>m.value.authenticated&&!m.value.mustChangePassword,onEvent:ie=>{Oe.project(ie)||Tt.events.applyBroadcast(ie)},onNotificationMessage:ie=>Oe.projectServerMessage(ie)||Ue.projectActivityMessage(ie),onResyncRequired:Wv,onNodeConnection:(ie,$e)=>{qd(ie,$e),$e?Bn().then(()=>Xe.refresh(ie,!0)):Xe.nodeInvalidated(ie)},onNodeUpgrade:(ie,$e)=>{const ft=$e===null?null:Um($e);ft!==void 0&&ge.applyUpgrade(ie,ft)},onNodeReplaced:ie=>{Xe.nodeInvalidated(ie),ie===Ye.value&&et(c("generated.workbenchPageController.aNewerInstanceWithTheSameIdentity"),"warning")},onReconnect:()=>{if(i.value==="conversations"&&Ue.selectedConversationId.value!==void 0){Pe.current?.restartHostedConversation().catch(()=>{});return}i.value==="nodes"&&(nt.value!==void 0&&Pe.current?.restartWorkspace(nt.value),z.value!==void 0&&Ea(0,!0),cn.restoreVisibleWatch())},onConnectionRestored:()=>{ge.clearUpgradeProgress(),Bn(),Oe.recover().catch(()=>{})},onDisconnected:()=>{Pe.current?.pause(),Xe.connectionLost()},onReady:(ie,$e)=>{if(me.value=ie,Xe.connectionReady(ie,$e),!$e&&i.value==="conversations"&&Ue.selectedConversationId.value!==void 0){Pe.current?.beginHostedConversation().catch(()=>{});return}i.value==="nodes"&&(!$e&&nt.value!==void 0&&Pe.current?.startWorkspace(nt.value),!$e&&z.value!==void 0&&Ea(0,!0),$e||cn.restoreVisibleWatch())},onWatchEvent:ie=>{Pe.current?.handleEvent(ie)},onDirectMessage:ie=>Xe.handleDirect(ie),onTerminalDirectMessage:ie=>Xe.handleTerminalDirect(ie),onUnauthenticated:()=>mo(),onInvalidMessage:()=>$(c("generated.workbenchPageController.receivedAnUnreadableLiveUpdate"),"error")}),{restore:Ge,connect:_e,close:tt}=Te,Xe=jm({nodes:()=>ce.value,selectedNode:()=>Ye.value,discover:async ie=>(await Y("/api/nodes/"+encodeURIComponent(ie)+"/workbench-capabilities")).manifest,sendDirect:ie=>Te.sendDirect(ie),sendTerminalDirect:ie=>Te.sendTerminalDirect(ie)}),{workspace:Re,terminal:de}=Xe,{workspaceDirectAvailable:Ae,workspaceDirectDescription:he,workspaceLocalFileManagerAvailable:q}=Xe,te=Fy({request:Y,http:Q,manifest:ie=>ge.restoreNodeManifest(ie),available:ie=>Ae(ie),direct:Re,...e.pwaApplication===void 0?{}:{activeWorker:e.pwaApplication.activeWorker}}),_=a.paging,{visibleLimits:se,nextCursors:be}=_,Oe=a.notifications,{start:We,dispose:Ie}=Oe,st=Yh({application:e.pwaApplication,notifications:Oe,message:et}),{state:pe,checking:Ce,start:je,check:ze,apply:vt}=st,Rt=Np({context:()=>J.value,notice:$,request:Y,csrfToken:H,renewCsrfToken:U,direct:{generation:ie=>ie===Ye.value&&G.value?.directTransfer?.upload===!0?G.value.nodeGeneration:void 0,upload:ie=>Re.upload(ie)},onUnauthenticated:()=>mo()}),ht=Ky();function Qt(ie){const $e=h.value;if($e===void 0||!ht.current($e).tools.includes("files")){$(c("generated.workbenchPageInteractionService.filePreviewIsCurrentlyUnavailable"),"error");return}ht.current($e).active?.kind==="session"&&Ta(),ht.openHtml($e,ie)&&u.value&&C("inspector")}const Zt=j(()=>{const ie=h.value;if(ie===void 0)return;const $e=ht.current(ie).active;return $e?.kind==="session"?{kind:"session",...ie,sessionId:$e.sessionId}:void 0}),Vn=Rs({draftTarget:J,drafts:re,attachments:Rt,submissions:V,onConversationOverflow:()=>{n()}}),qn=Rs({pane:"aside",draftTarget:Zt,drafts:re,attachments:Rt,submissions:V,onConversationOverflow:()=>Eo()}),Lt=Vn.state,fa=qn.state,pa=Lt.submission,{skillTokens:ga,references:ma,persist:eo}=Lt.draft,to=Lt.skillTokens,Wt=Lt.run,{runs:ha}=Wt,Ne=Pm({groupingSupported:()=>G.value?.sessionGroups?.apiVersion===1,runs:ha,workspaceTarget:h,selectedSessionId:z,setSelectedSessionId:F.setSession,paging:_,pageSize:Po,tabId:Sn,request:Y,notice:$,errorMessage:it}),Be=Ne.projection,Ze=Be.sessions,ot=Lt.conversation,{turns:yt,contextUsage:Ut,currentDetailRequest:Mt}=ot,Pt=x(),zt=new Map,{preview:ya,previewOpen:lt,clearAll:pt,openPreview:wa}=Rt,ka=Tm({workspaceTarget:h,request:Y,notice:$,errorMessage:it}),{profiles:Nc,loading:Dc}=ka,Lr=Lt.queueProjection,Wr=Lr.queue,Pc=ot.projection,Oc=Lt.scroll,{element:Lc,following:Wc}=Oc,Mr=lw(Sn),kn=Mr.cache,Kt=$w({persist:ko}),{expandedNodeIds:no,nodeOrder:xr,workspacesByNode:$r,workspaceOrderByNode:Fr,draggingWorkspace:Mc}=Kt,xc=j(()=>Kt.orderedNodes(ce.value));function $c(ie,$e){Kt.moveNode(ce.value,ie,$e)}const en=Xm({maxTabs:_s,tabId:Sn,workspaceLabel:Jn,nodeLabel:$a,onEvict:ie=>{go(ie.nodeId,ie.workspaceId),ht.clearHtmlWorkspace(ie),zt.get(ie.id)?.release()},onChange:ko}),bn=en.tabs,ba=Zm({sidebarCollapsed:d,expandedNodeIds:no,nodeOrder:xr,workspaceOrderByNode:Fr,workspaceTabs:bn,maxWorkspaceTabs:_s,restoreTree:Kt.restore,restoreTabs:en.restore}),Ur=$h({navigation:r,management:t,admin:m,defaultManagement:e.systemManagementSection,layout:ba,transition:(ie,$e)=>ii.transition(ie,$e),recoverNotifications:()=>Oe.recover()}),{navigationItems:Fc,settingsItems:Uc,managementItems:Vc,selectNavigation:qc,hostedConversationMobileFilesOpen:Vr,hostedConversationMobileHistoryOpen:qr,closeHostedConversationMobileHistory:Hr,closeHostedConversationMobileFiles:Hc}=Ur,ao=Rp({workspaceTarget:h,request:Y}),Bc=ao,oo=Sw({request:Y}),ro=oo,Gc=Mw(),zc=new xw({request:Y,connectionId:()=>me.value}),Hn=x(!1),Vt=xy({page:()=>{},externalTarget:()=>h.value,target:()=>Ee.value?h.value:void 0,fileWriteEnabled:()=>Fe.value,prewarmEnabled:()=>ye.value,onPopupBlocked:()=>$(c("generated.workspaceInspector.theBrowserBlockedTheFilePreviewWindow"),"error"),resolveRepositoryPath:(ie,$e)=>kt.git.resolveRepositoryPath(ie,$e),reveal:(ie,$e)=>kt.revealFileTree(ie,$e),comparison:ie=>kt.git.comparison(ie),onOpenFailure:(ie,$e)=>$(Cr(ie,$e),"error",ie),onDownloadFailure:(ie,$e)=>kt.reportFailure(ie,$e),onRevealFailure:ie=>$(it(ie),"error",ie),access:ie=>te.forWorkspace(ie),preview:{onWritten:ie=>{h.value?.nodeId===ie.nodeId&&h.value.workspaceId===ie.workspaceId&&kt.refreshAfterWrite()}},navigation:{http:Q,onFailure:ie=>kt.reportFailure(ie,c("fileEditor.definitions")),onFileTarget:(ie,$e)=>Vt.openNavigationTarget(ie,$e)},lifecycle:{ready:()=>Ee.value,workspaceKind:()=>M.value?.kind,isReloadingForUpdate:()=>e.pwaApplication?.isReloadingForUpdate()===!0,bootstrap:{authenticated:()=>m.value.authenticated,hasNodes:()=>ce.value.length>0,manifestLoading:()=>ue.value,selectWorkspace:tn,captureRoute:tr}}}),kt=Dy({target:h,http:Q,workspacePath:()=>M.value?.path,workspaceKind:()=>M.value?.kind,workbench:Vt,updateBranch:(ie,$e)=>yi(h.value?.nodeId??"",ie,$e),queueUploads:ie=>Td(ie),notice:$,errorMessage:it,cache:()=>kn,ready:()=>Ee.value,visible:()=>Hn.value,activeTool:()=>{const ie=h.value,$e=ie===void 0?void 0:ht.current(ie).active;return $e?.kind==="tool"?$e.id:void 0},searchReady:()=>Me.value,historySupported:()=>G.value?.git?.supportsHistory===!0,isGit:()=>M.value?.kind==="GIT_WORKSPACE",workspace:()=>M.value,updateWorkspace:Ku}),{files:Br,git:io,search:Kc}=kt,jc=kt.openGitChange,_c=kt.openHistoryDiff,Yc=io.adjacentDiff,Qc=kt.reportFailure,Jc=kt.loadDiff,Xc=Vt.downloadPath,Gr=Vt.openExternal,zr=Vt.openHtmlExternal;mt(()=>{kt.dispose(),Vt.dispose()});const Kr={view:i,cache:kn,capabilities:ge,profiles:ka,skills:ao,prompts:oo,discovery:Ne,mobileViewport:u,selectedWorkspace:M,request:Y,notice:$,errorMessage:it,ensureDraftSupported:ie=>kv(ie),connectionId:()=>me.value,workspaceRevision:N.currentSelectionRevision,completion:{client:zc,enabled:Gc.enabled,ready:le,host:ee,attention:()=>Pt.value?.predictionAttention?.()??[]},files:{attachments:ie=>te.forWorkspace(ie).attachments,openChange:ie=>Vt.openTab(ie),openFile:(...ie)=>Qu(...ie)},identity:{replace:Ov,transfer:Pv},events:{invalidateWorkspace:kt.invalidateWorkspace,onNodeConnected:Oi},watchConnection:{waitReady:Te.waitForReady,connected:()=>Te.connected.value}},Tt=Vn.connect(Kr,{kind:"main",visible:ae,refresh:()=>Ea(),open:On,markRead:so,navigation:()=>nn,selection:F,saveCurrent:Pn,closeMobile:I,createDraft:ie=>wv(ie),beginWatch:ie=>ii.requestSessionWatch(ie),replaceSession:Ni}),Zc=fa.conversation.loadingInitial,jr=j(()=>Hn.value&&Zt.value!==void 0&&i.value==="nodes"&&(!u.value||k.value==="inspector")&&Oa(ce.value.find(ie=>ie.id===Zt.value?.nodeId)?.nodeAppVersion,G.value?.sessionAside)),_r=Qh({workspaceTarget:h,selectedWorkspace:M,workspaceHost:j(()=>ee.value),view:i,mainSurfaceVisible:ae,draftSessionOpen:fe,selectedSessionId:z,mainLoading:Lt.conversation.loadingInitial,asideVisible:jr,asideTarget:Zt,asideLoading:Zc,markSessionRead:Oe.markSessionRead});function ed(){return _r.targets()}function so(ie,$e,ft){return _r.markRead(ie,$e,ft)}const cn=qn.connect(Kr,{kind:"aside",target:Zt,visible:jr,refresh:Eo,open:Rv,markRead:so,replaceSession:(ie,$e)=>nn.replaceAsideSession(ie,$e)}),lo=Tt.images,dn=wt(lo);for(const ie of[Tt.images,cn.images])He(ie.previewOpen,$e=>{!$e||dn.value===ie||(dn.value.previewOpen.value=!1,dn.value=ie)},{flush:"sync"});const td=j({get:()=>dn.value.preview.value,set:ie=>dn.value.preview.value=ie}),nd=j({get:()=>dn.value.previewOpen.value,set:ie=>dn.value.previewOpen.value=ie}),{retain:ad}=lo,co=Tt.configuration,{selectedSession:od}=co,{runner:uo,modelId:vo,effort:Yr,access:Qr,apply:rd}=co,id=Tt.runner,fo=Tt.references,sd=Tt.presentation,{canUseComposer:ld,canDeleteSession:Jr,sessionActivityClockNow:cd,documentTitle:dd,visibleWorkspaceSessions:ud,canLoadMoreWorkspaceSessions:vd,onlineNodeCount:fd}=Eh({context:ne,workspaceTarget:h,sessions:Ze,nodes:ce,visibleLimits:se,nextCursors:be,pageSize:Po,tabId:Sn,workspaceLabel:Jn,pane:sd}),Xr=!0,pd=!0,gd=!0,{ensureFresh:md}=ao;He(Bc.skills,to.reconcile),He(ga,ie=>{ie.length>0&&md()},{immediate:!0});const{refreshNodes:Bn,refreshServerCapabilities:hd,refreshNodeManifest:Zr,invalidateNodeManifest:yd,retainNodeManifests:ei}=ge;He([bn,Ye],([ie,$e])=>ei(new Set([...ie.map(ft=>ft.nodeId),...$e===void 0?[]:[$e]])),{flush:"sync"});const po=j(()=>Ye.value===void 0||nt.value===void 0?void 0:Sn(Ye.value,nt.value)),wd=Mh({host:ee,manifest:G,loading:ue}),ti=Fm({canDeleteSession:Jr,beginSubmission:pa.begin,workspaceTarget:h,request:Y,renewCsrfToken:U,sessionPathId:Zo,nodeLabel:$a,sessionTitle:Ga,notice:$,errorMessage:it}),kd=Bm({workspaceTarget:h,csrfToken:H,request:Y,renewCsrfToken:U,direct:{generation:ie=>ie===Ye.value&&G.value?.directTransfer?.upload===!0?G.value.nodeGeneration:void 0,upload:ie=>Re.upload(ie)},onFilesChanged:()=>kt.invalidate("files"),onTaskChanged:Oe.recordUpload}),{tasks:bd,recoveryInput:Id,restore:Sd,statusLabel:Cd,queue:Td,cancel:Ed,retry:Rd,recover:Ad,remove:Nd,dispose:Dd}=kd,ni=Xh({workspaceTarget:h,selectedSessionId:z,sessions:Ze,selectView:ie=>r.selectView(ie,"preserve-layout"),applyWebUpdate:vt,closeMobileSidebar:g,selectWorkspace:tn,syncWorkspaceSessions:(...ie)=>Ne.synchronize(...ie),openHostedConversationTarget:(...ie)=>Bd(...ie),discovery:Ne,selection:()=>nn,openSession:On,notice:$});function Pd(ie){return ni.openWorkbenchNotification(ie)}const{openRecentRun:Od,openSessionGroupTarget:Ld,openNavigatedSession:Wd}=ni;async function Md(ie){await nn.selectSession(ie)}const{workspaceViewCache:xd,discardWorkspaceViewCache:go,discardNodeViewCaches:ai,saveCurrentWorkspaceView:$d,restoreWorkspaceView:Fd,restoreWorkspaceDraft:Ud}=Mr.connect({paging:_,sessions:Ze,captureDetail:Lt.captureDetail,queue:Wr,runner:uo,modelId:vo,effort:Yr,access:Qr,workspaceTarget:h,selectedSessionId:z,fileWorkbench:Vt,files:{snapshot:()=>Br.tree.snapshot(),restore:kt.restoreFiles},git:{snapshot:()=>io.snapshot(),restore:kt.restoreGit},search:{snapshot:kt.searchSnapshot,restore:kt.restoreSearch},restoreDraftConfiguration:rd,persistDraft:eo,flushConversation:Pc.flushPendingTextDeltas,maximumDetails:Fw,otherVisibleSessionId:()=>i.value==="nodes"&&(!u.value||k.value==="inspector")?Zt.value?.sessionId:void 0});function Pn(){Ta(),$d()}const{paging:Vd}=Tt.conversationWindow;let oi=ie=>!1;function ri(ie,$e){if(i.value!=="nodes"||Ye.value!==ie||nt.value!==$e)return;const ft=ht.current({nodeId:ie,workspaceId:$e}).active;!Hn.value||ft?.kind!=="tool"||(ft.id==="changes"||ft.id==="files")&&kt.refreshVisible(ft.id)}const{updateNodeConnection:qd}=Tt.events,ii=ay({coordinator:()=>Pe.current,currentView:()=>i.value,workspaceTarget:()=>h.value,selectedSessionId:()=>z.value,selectedHostedConversationId:()=>Ue.selectedConversationId.value}),Ia=km({workspace:Ue,markRead:(ie,$e)=>Oe.markConversationRead(ie,$e),coordinator:()=>Pe.current}),Hd=Ia.select,Bd=Ia.openTarget,Gd=Ia.clear;async function zd(){const ie=Co;if(!(ie===void 0||i.value!=="conversations"))try{await Ia.restoreTarget(ie,Sa)}finally{Si.value=!1}}const si=bm({presentation:{translate:c,currentLocale:ml,setLocale:ie=>Xa().setLocale(ie)},admin:m,loaded:A,sessions:y,password:D,passwordError:E,csrfToken:H,loading:L,request:Y,renewCsrfToken:U,onAuthenticated:Eu,invalidateRequests:()=>{No(),X.invalidateAuthentication()},onSignedOut:Ru,notice:$,errorMessage:it}),{authenticationUnknown:Kd,restoring:jd,returnToLogin:mo,refresh:li,refreshSessions:_d}=si,Yd=Gf({request:Y,error:(ie,$e)=>et(ie,"error",$e),errorMessage:it}),{nodeDetails:Qd,detailsOpen:Jd,loading:Xd,details:Zd,usageOpen:eu,openNode:tu,disabledReason:nu,show:au,clearNode:ou}=Yd,Gn=x(),ho=j(()=>ce.value.find(ie=>ie.id===Gn.value)),ru=j(()=>ho.value?.connected===!0&&ho.value.disabled!==!0),ci=Am({...e.submitWorkspaceRegistration===void 0?{}:{submit:(ie,$e)=>e.submitWorkspaceRegistration(Y,ie,$e)},targetNodeId:Gn,request:Y,onRegistered:async(ie,$e)=>{Ci(),await tn({nodeId:ie,workspaceId:$e})},notice:$,error:(ie,$e)=>et(ie,"error",$e),errorMessage:it}),{path:iu,preserveGitConfig:su,pendingDirectoryName:lu,directory:di,loadingDirectory:ui,openTools:vi,selectedPathValid:cu,reset:fi,load:yo,select:du,selectPendingDirectory:uu,discardPendingDirectory:pi,register:vu}=ci,{currentGroup:wo,selectGroup:gi,refreshing:fu,searchQuery:pu,searching:gu,preserveManagedActive:mu,merge:hu,applySnapshot:yu,loadMore:aN,search:wu,synchronize:mi,refresh:hi}=Ne,{visible:ku,canLoadMore:bu,loadingMore:Iu,loadMoreError:Su,loadMore:Cu}=Ne.createVisibleList({unfiltered:ud,canLoadMore:vd});let In=0;async function Tu(ie){await Bn(),ie===In&&(_e(),!(!await Te.waitForReady()||ie!==In)&&(await uv(),ie===In&&await zd()))}async function Eu(){const ie=++In;if(je(),hd(),await Promise.all([We(),Tu(ie)]),ie!==In)return;const $e=await Oe.openPendingSystemNotification();ie===In&&!$e&&i.value==="nodes"&&Oe.markVisibleRead()}function Ru(){ht.clearHtml(),No(),In+=1,Oe.systemNotifications.invalidatePush(),Ie(),st.stop(),Pe.current?.dispose(),Ue.clearSelectedConversation(),Xe.reset(),Pi(),ge.resetResources(),un.clear(),ei(new Set)}function ko(){ba.persist()}function Au(){ba.restore()}const{loading:Nu,updateWorkspaceBranch:yi,updateWorkspaceMetadata:Du,rememberWorkspace:Pu,closeWorkspaceTab:bo,closeUnpinnedWorkspaceTabs:Ou,activateWorkspaceTab:wi,openWorkspaceTab:Lu,orderedWorkspaces:Wu,toggleNodeExpansion:Mu,refreshNodeWorkspaces:xu,refreshWorkspaceTree:$u,openWorkspaceFromTree:Fu,startWorkspaceDrag:Uu,reorderWorkspace:Vu,moveWorkspaceToGroup:qu,moveWorkspaceGroup:Hu,renameWorkspace:Bu,cleanupWorkspaceSessions:Gu,removeWorkspace:zu}=cw({nodes:ce,workspaces:P,replaceWorkspaces:ge.replaceWorkspaces,sessions:Ze,removeWorkspaceSessions:Be.removeWorkspace,workspaceTarget:h,selectedSessionId:z,activeTabId:po,showWorkbench:()=>{r.selectView("nodes","preserve-layout")},notice:$,workspacesByNode:$r,tabs:en,tree:Kt,releaseTerminalDock:ie=>{zt.get(ie)?.release()},deleteTerminalDock:ie=>zt.delete(ie),request:Y,saveCurrent:Pn,discardCache:(ie,$e)=>{go(ie,$e),ht.clearHtmlWorkspace({nodeId:ie,workspaceId:$e})},activateWorkspace:(ie,$e)=>tn(ie,$e),workspaceTabSession:Oe.workspaceTabSession,openWorkspaceTabSession:ie=>Wd(ie,!0),clearWorkspace:()=>un.clear(),currentSelectionRevision:()=>un.currentSelectionRevision(),cleanupSessionsEnabled:()=>Xr,refreshWorkspaceSessions:mi,refreshNodes:Bn,closeMobileSidebar:g,closeMobileWorkspaceSurface:I,errorMessage:it,tabLabel:Jn});function Ku(ie,$e){const ft=(ie===Ye.value?P.value:$r.value[ie]??[]).find(Ot=>Ot.id===$e.id);Du(ie,$e),ie===Ye.value&&$e.id===nt.value&&ft?.kind!==$e.kind&&Pe.current?.restartWorkspace($e.id)}const{closeQuickOpenFile:ju,quickOpenFileVisible:_u,workspaceShortcuts:Yu,openAgentWorkspaceFile:Qu,openQuickWorkspaceFile:Ju,runnerBrandIcon:Xu,sessionActivityTitle:Zu,sessionRelativeActivity:ev,workspaceTabNodeLabel:tv}=kw({selectedSessionId:z,view:i,nodes:ce,workspaceTabs:bn,activeWorkspaceTabId:po,activateWorkspaceTab:wi,closeWorkspaceTab:bo,closeUnpinnedWorkspaceTabs:Ou,workspaceTarget:h,selectedWorkspace:M,nodeReady:le,openNewSessionComposer:()=>s(),filesReady:Ee,contentSearchReady:Me,terminalReady:xe,workspaceFileWorkbench:Pt,fileWorkbench:Vt,openWorkspaceFileExternal:Gr,showAsideTool:ie=>{const $e=h.value;if($e===void 0)return;const ft=ht.current($e).active,Ot=ie==="changes"&&Hn.value&&ft?.kind==="tool"&&ft.id==="changes";Ei({...$e,id:ie}),Ot&&kt.git.loadChanges(!0),ut(()=>{ie==="search"&&kt.focusSearch()})},openAttachmentImage:lo.openFileAttachment,openHtml:Qt,openHtmlExternal:zr,toggleTerminal:()=>Ri(),sessionActivityClockNow:cd,notice:$,formatSessionTime:Gt});async function nv(ie,$e){const ft=bn.value.find(Ot=>Ot.nodeId===ie&&Ot.workspaceId===$e);return ft!==void 0?wi(ft):tn({nodeId:ie,workspaceId:$e})}const av=Tt.composer,{loadProfiles:ov,applyDefaults:rv,normalize:iv}=av,ki=x(),Io=Yy((ie,$e)=>{nn.removeMissingAside(ie,$e)}),zn=j(()=>{const ie=h.value;if(ie===void 0)return;const $e=ht.current(ie),ft=[];return(!u.value||k.value==="conversation")&&!fe.value&&z.value!==void 0&&ft.push(z.value),(!u.value||k.value==="inspector")&&$e.active?.kind==="session"&&ft.push($e.active.sessionId),jy({enabled:Oa(ce.value.find(Ot=>Ot.id===ie.nodeId)?.nodeAppVersion,G.value?.sessionAside),asideSessionIds:$e.sessions,visibleTreeAnchors:ft,treeAnchor:ki.value})}),sv=ty({workspaceTarget:h,navigation:{query:()=>zn.value,accept:Io.accept},files:kt,updateBranch:yi,sessions:{current:Ze,selectedId:z,applySnapshot:yu,reconcile:Tt.watch.reconcileWorkspaceSnapshot}}),So=ey({sessionGroup:()=>wo.value,sessionNavigation:()=>zn.value,workspaceTarget:h,workspaces:P,heartbeatMs:Uw,enabled:()=>!0,workbenchConnectionId:()=>me.value,request:Y,onSnapshot:sv.accept});He([h,wo],([ie,$e],[ft,Ot])=>{ie!==void 0&&ie.nodeId===ft?.nodeId&&ie.workspaceId===ft?.workspaceId&&$e!==Ot&&Pe.current?.startWorkspace(ie.workspaceId)});function tn(ie,$e=!0){return un.select(ie,$e)}const un=N.connect({selectedSessionId:z,setSelectedSessionId:F.setSession,workspaces:P,replaceWorkspaces:ge.replaceWorkspaces,sessions:Ze,replaceSessions:Ne.replaceSessions,draftOpen:fe,setDraftOpen:F.setDraftOpen,profilesLoading:Dc,isCacheActive:kn.isActive,hasNode:ie=>ce.value.some($e=>$e.id===ie),isHostAvailable:ie=>ce.value.some($e=>$e.id===ie&&$e.connected&&!$e.disabled),cachedWorkspaces:Kt.workspacesForNode,cacheWorkspaces:Kt.cacheWorkspaces,rememberTarget:ie=>en.rememberTarget(ie,ce.value.find($e=>$e.id===ie.nodeId)),invalidateWorkspace:ie=>{const $e=bn.value.find(ft=>ft.nodeId===ie.nodeId&&ft.workspaceId===ie.workspaceId);h.value?.nodeId===ie.nodeId&&h.value.workspaceId===ie.workspaceId&&(kn.deactivate(),Pe.current?.stopWorkspace(),Pe.current?.stopSession()),go(ie.nodeId,ie.workspaceId),ht.clearHtmlWorkspace(ie),$e!==void 0?bo($e,!0):h.value?.nodeId===ie.nodeId&&h.value.workspaceId===ie.workspaceId&&un.clear()},deactivateCache:kn.deactivate,clearContent:Lt.clearSelection,showWorkbench:()=>{r.selectView("nodes","preserve-layout")},closeSidebar:g,restoreProfiles:ka.restore,selectManifestNode:ge.selectNode,refreshManifest:Zr,refreshTransport:ie=>{Xe.refresh(ie,!0)},request:Y,notice:$,errorMessage:it,stopWatch:()=>{Pe.current?.stopWorkspace(),Pe.current?.stopSession()},startWatch:ie=>Pe.current?.startWorkspace(ie)??Promise.resolve(),saveCurrent:Pn,activateCache:kn.activate,restoreWorkspaceView:Fd,refreshVisibleTool:(ie,$e)=>{ut(()=>{ri(ie,$e)})},initializePaging:_.initialize,tabId:Sn,rememberWorkspace:Pu,viewCache:xd,resetQueue:Lr.reset,openSession:On,openDraft:()=>Ca(),restoreDraft:ie=>{Ud(ie)},hasProfiles:ka.has,loadProfiles:ov,takeRestoredSelection:en.takeRestoredSelection,restoreSession:(ie,$e)=>bi.restoreSession(ie,$e)});oi=ie=>{const $e=h.value;return $e?.nodeId!==ie?!1:(tn($e),!0)};const{standaloneFileMode:lv,standaloneFileLoading:cv,standaloneFileError:dv}=Vt.standalone,nn=F.connect({secondaryPane:{target:Zt,reloadChecked:()=>cn.secondary.reloadChecked()},pane:Tt.opening,aside:ht,canOpenAside:()=>Oa(ce.value.find(ie=>ie.id===Ye.value)?.nodeAppVersion,G.value?.sessionAside),saveAside:()=>Ta(),sessions:Ze,closeMobileSurface:I,workspaceTabId:Sn,ensureSessionVisible:_.ensureVisible,markSessionRead:so,saveCurrent:Pn,selectWorkspace:tn}),bi=xm({nodes:ce,sessions:Ze,workspaceTarget:h,selectedSessionId:z,setSelectedSessionId:F.setSession,selectedHostedNodeId:Ue.selectedNodeId,selectedHostedConversationId:Ue.selectedConversationId,view:i,managementSection:v,activateWorkspace:ie=>tn(ie,!1),synchronizeSessions:async ie=>(await mi(ie,!0))?.sessions,openSession:On,lookupSession:async(ie,$e)=>(await Y(`/api/agent-sessions/${Zo($e)}?nodeId=${encodeURIComponent(ie)}`)).session,openDraft:()=>Ca(),notice:ie=>$(it(ie),"error",ie),currentSelectionRevision:()=>Mt()+un.currentSelectionRevision(),rememberSession:en.rememberSession}),{restore:uv,sync:Sa,hostedConversationRoute:Co}=bi,Ii=$m({isOpen:()=>u.value&&(w.value||qr.value||Vr.value||k.value!=="conversation"),close:()=>{g(),Hr(),Hc(),I()},syncRoute:Sa}),Si=x(Co!==void 0),{renameSession:vv,setSessionPinned:fv,movePinnedSession:pv,movePinnedSessionTo:gv,deleteSession:mv}=dw({actions:ti,replaceNode:ge.replaceNode,removeNode:ge.removeNode,sessions:Ze,removeSessionId:Be.removeId,clearSessions:()=>Be.replaceAll([]),clearActiveSelection:Lt.clearSelection,clearRuns:Lt.clearRuns,workspaceTarget:h,selectedSessionId:z,setSelectedSessionId:F.setSession,workspaces:P,replaceWorkspaces:ge.replaceWorkspaces,clearWorkspace:()=>un.clear(),caches:kn,tabs:en,tree:Kt,replaceSession:Ni,refreshSessions:hi,discardNodeCaches:ie=>{ai(ie),ht.clearHtmlNode(ie)},openDraft:()=>Ca(),replaceUrl:Sa,clearNodeDetails:ou});function hv(){r.selectView("management","preserve-layout"),b(e.nodeManagementSection)}function Ci(){Gn.value=void 0,fi()}async function yv(ie){g(),r.selectView("nodes","preserve-layout"),Gn.value=ie,fi(!0),await yo()}const{createDraftSession:wv,ensureDraftRunnerSupported:kv,openNewSessionComposer:Ca}=bw({workspaceTarget:h,selectedSessionId:z,setSelectedSessionId:F.setSession,selectedWorkspace:M,sessions:Ze,prependSession:Be.prepend,prepareDraft:Tt.prepareDraft,focusDraft:Tt.focusDraft,draftSessionOpen:fe,setDraftOpen:F.setDraftOpen,newSessionRunner:uo,newSessionModel:vo,newSessionEffort:Yr,newSessionAccess:Qr,runnerProfiles:Nc,canUseComposer:ld,closeMobileWorkspaceSurface:I,saveCurrent:Pn,stopSelectedSessionWatch:Ai,applyRunnerDefaults:rv});function Ti(){gi("MAIN"),Ca()}s=Ti;const To=Im({request:Y,...e.submitNodeRegistration===void 0?{}:{submit:e.submitNodeRegistration},notice:$,errorMessage:it}),bv=To.token,Iv=To.pending,Sv=To.create;He([i,l,()=>m.value.authenticated,()=>m.value.mustChangePassword],([ie,$e,ft,Ot])=>{ie==="settings"&&$e==="account"&&ft&&!Ot&&_d()},{immediate:!0});async function On(ie,$e={}){return nn.openSession(ie,$e)}function Cv(){z.value!==void 0&&On(z.value)}Tt.history;const Tv=Tt.watch;Pe.current=oy({workspace:So,session:Tv,secondary:cn.watch,hosted:Ue}),Vn.connectWatchCoordinator(Pe.current),qn.connectWatchCoordinator(Pe.current);function Ta(){cn.secondary.save()}const Ev=cn.secondary;function Eo(){Ev.reload()}function Rv(ie){return nn.openAsideTarget(ie)}ht.observeCapabilities({workspace:h,manifest:G,selectedWorkspace:M});const{select:Ei,openBrowser:Av,closeBrowser:Nv,toggleTerminal:Ri}=ht.createInteraction({workspace:h,mobile:u,mobileSurface:k,saveSession:Ta,openMobile:C});He(zn,()=>{const ie=h.value;ie!==void 0&&i.value==="nodes"&&Te.connected.value&&me.value!==void 0&&Pe.current?.startWorkspace(ie.workspaceId)},{deep:!0});function Ai(){Pe.current?.stopSession()}function Dv(){Ao.handleVisibility()}const Ro=nw({workspaceTarget:h,submissions:V,projection:{sessions:Ze,selectedSessionId:z,setSelectedSessionId:F.setSession,removeSessionExact:Be.removeExact,currentSelectionRevision:Mt,preserveManagedActive:mu,mergeSessions:hu}});function Pv(ie,$e,ft,Ot){Ro.transfer(ie,$e,ft,Ot)}function Ov(ie,$e,ft,Ot){Ro.replace(ie,$e,ft,Ot)}function Ni(ie,$e){Ro.replaceCurrent(ie,$e)}function Lv(){xv.scrollConversationToLatest()}Tt.realtime;const Di=Zh({workspaceTarget:h,selectedSessionId:z,refresh:(ie,$e)=>On(ie,{preserveMobileWorkspaceSurface:!0,deferInitialScroll:$e})});function Ea(ie=0,$e=!1){Di.schedule(ie,$e)}function Pi(){Di.clear(),Xe.connectionLost(),tt()}const Ao=wm({view:i,workspaceTarget:h,selectedWorkspace:M,selectedSessionId:z,hostedNodeId:Ue.selectedNodeId,coordinator:()=>Pe.current,invalidateManifest:yd,refreshManifest:Zr,reactivate:ie=>oi(ie),discardNodeCache:ai,resetSession:Lt.resetRealtime,refreshSession:Ea,direct:Xe,live:Te});function Oi(ie,$e=!0){Ao.connected(ie,$e)}function Wv(ie){Ao.resync(ie)}const Mv=Tt.completion,xv=Tt.interactions;return He(vi,ie=>{if(!ie.includes("register")){pi();return}di.value===void 0&&!ui.value&&yo()}),Iw({persistenceSources:[d,bn,no,xr,Fr],cacheSources:[ha,yt,Wr,Ut,ga,ma],routeSources:[i,v,Ye,nt,z,()=>od.value?.externalSessionId,Ue.selectedNodeId,Ue.selectedConversationId],documentTitle:dd,newSessionRunner:uo,newSessionModel:vo,workspaceTarget:h,selectedSessionId:z,conversationTurns:yt,conversationScroll:Lc,followConversation:Wc,persistWorkbenchState:ko,syncWorkbenchRoute:Sa,normalizeNewSessionOptions:iv,clearRunnerCommand:id.reset,clearComposerModelEffort:co.clearModelEffortSelection,closeFileReferences:()=>{fo.cancelSearch(),fo.close()},saveCurrentWorkspaceView:Pn,scrollConversationToLatest:Lv,stopSelectedSessionWatch:Ai,restoreWorkbenchState:Au,restoreWorkbenchEventCursors:Ge,restoreWorkspaceUploads:Sd,startNavigation:()=>{T(),Ii.start()},handleSessionWatchVisibility:Dv,workspaceShortcuts:Yu,refreshAdmin:li,recoverAuthentication:()=>{Kd.value&&!jd.value&&li()},cancelFileReferenceSearch:fo.cancelSearch,disposeNavigation:()=>{Ii.dispose(),p()},disposeWorkspaceUploads:Dd,disposeWorkbenchNotifications:Ie,disposeWebVersionUpdateCheck:st.stop,stopWorkspaceWatch:()=>Pe.current?.stopWorkspace(),closeWorkbenchLive:Pi,disposeDirectTransport:Xe.dispose,clearNewSessionAttachments:pt,releaseRunImagePreviews:()=>ad([])}),{layout:Ur.layoutView,tree:Et({draggingWorkspace:Mc,expandedNodeIds:no,workspaceTreeRevealTarget:Kt.revealTarget,moveTreeWorkspace:Kt.moveWorkspace,endWorkspaceDrag:Kt.endDrag,orderedNodes:xc,moveNode:$c,refreshNodeWorkspaces:xu,refreshWorkspaceTree:$u,orderedWorkspaces:Wu,toggleNodeExpansion:Mu,addWorkspaceForNode:yv,openWorkspaceFromTree:Fu,reorderWorkspace:Vu,moveWorkspaceToGroup:qu,moveWorkspaceGroup:Hu,renameWorkspace:Bu,removeWorkspace:zu,startWorkspaceDrag:Uu}),terminal:Et({terminalDocks:zt,terminalDirectClient:de,terminalReady:xe}),hosted:Et({clearHostedConversation:Gd,closeHostedConversationMobileHistory:Hr,hostedConversationMobileHistoryOpen:qr,hostedConversationMobileFilesOpen:Vr,hostedConversationRoute:Co,hostedConversationWorkspace:Ue,restoringHostedConversationRoute:Si,selectHostedConversation:Hd}),sessionList:Et({mutationLoading:j(()=>ti.loading.value||Nu.value),sessions:Ze,visibleWorkspaceSessions:ku,canLoadMoreWorkspaceSessions:bu,loadMoreWorkspaceSessionsError:Su,loadMoreWorkspaceSessions:Cu,loadingMoreWorkspaceSessions:Iu,refreshWorkspaceSessions:hi,refreshingWorkspaceSessions:fu,searchingWorkspaceSessions:gu,searchWorkspaceSessions:wu,workspaceSessionSearchEnabled:gd,workspaceSessionSearchQuery:pu,workspaceSessionGroup:wo,selectWorkspaceSessionGroup:gi,deleteSession:mv,canDeleteSession:Jr,cleanupWorkspaceSessions:Gu,cleanupSessionsEnabled:Xr,renameSession:vv,movePinnedSession:pv,movePinnedSessionTo:gv,setSessionPinned:fv,setSessionTreeAnchor:ie=>{ki.value=ie},sessionNavigationSnapshot:j(()=>Io.current(h.value,zn.value)),sessionActivity:nr,sessionActivityDateTime:Bf,sessionActivityLabel:Ap,sessionActivityTitle:Zu,sessionRelativeActivity:ev,sessionTitle:Ga,reloadSelectedSession:Cv}),selection:Et({activateWorkspaceTab:Lu,activeWorkspaceTabId:po,closeWorkspaceTab:bo,workspaceTarget:h,workspaceTabs:bn,workspaceTabLabel:Jn,workspaceTabNodeLabel:tv,moveWorkspaceTab:en.move,pinWorkspaceTab:en.setPinned,workspaceSelectionLoading:un.loading,retryWorkspaceSelection:()=>{h.value!==void 0&&tn(h.value)},selectedSessionId:z,openSessionFromList:Md,openSessionGroupTarget:Ld,openNewSessionComposer:Ti,draftSessionOpen:fe}),aside:Et({asidePaneController:cn.view,asideSessionMetadata:j(()=>{const ie=h.value;return zn.value===void 0||ie===void 0?[]:Io.knownSessions(ie,ht.current(ie).sessions)}),asideState:j(()=>{const ie=h.value;return ie===void 0?void 0:ht.current(ie)}),asideSupported:j(()=>Oa(ce.value.find(ie=>ie.id===Ye.value)?.nodeAppVersion,G.value?.sessionAside)),asideViewMode:zy,asideWidth:ba.asideWidth,closeAsideBrowser:Nv,closeAsideSession:nn.closeAsideSession,openAsideSession:nn.openAsideSession,openHtmlAside:Qt,reloadAsideSession:Eo,selectAsideBrowser:Av,selectAsideTool:Ei,setAsideSurfaceVisible:ie=>{Hn.value=ie},toggleAsideTerminal:Ri}),files:Et({fileWorkbench:Vt,workspaceFileWorkbench:Pt,mountSurface:kt.mountSurface,unmountSurface:kt.unmountSurface,workspaceFiles:Br,workspaceGit:io,workspaceSearch:Kc,setWorkspaceFilePage:Vt.setPage,setWorkspaceFilesPanel:kt.setFilesPanel,setWorkspaceSearchPanel:kt.setSearchPanel,downloadWorkspaceFile:Xc,openWorkspaceFileExternal:Gr,openWorkspaceGitChange:jc,openWorkspaceHistoryDiff:_c,loadWorkspaceDiff:Jc,adjacentWorkspaceDiff:Yc,reportWorkspaceFileFailure:Qc,fileWriteReady:Fe,contentSearchReady:Me,filesReady:Ee,standaloneFileMode:lv,standaloneFileLoading:cv,standaloneFileError:dv}),mainPaneController:Tt.view,notifications:Oe,identity:si.view,application:Et({workPromptCompletion:Mv,webVersion:e.webVersion,pwaState:pe,checkingForUpdates:Ce,checkForUpdates:ze,applyWebUpdate:vt,retryWorkspaceWatch:()=>So.retryFailed(),liveConnected:Te.connected,codeNavigationReady:Se,managementItems:Vc,managementSection:v,navigationItems:Fc,notice:$,openHtmlExternal:zr,openWorkbenchNotification:Oe.openNotification,openRecentRun:Od,runnerBrandIcon:Xu,selectManagementSection:b,selectNavigation:qc,selectSettingsSection:R,settingsItems:Uc,settingsSection:l,view:i,webPerformanceDiagnostics:Qe,workspaceWatchTopicStatus:So.topicStatus}),resources:Et({onlineNodeCount:fd,serverVersion:oe,nodeUpgradeProgress:ge.upgradeProgress,nodeDetails:Qd,nodeDetailsDialogOpen:Jd,nodeLabel:$a,nodeManifest:G,nodeManifestLoading:ue,nodeReady:le,nodes:ce,refreshNodes:Bn,runnerUsageDetails:Zd,runnerUsageDialogOpen:eu,runnerUsageDisabledReason:nu,runnerUsageLoading:Xd,workspaceHost:ee,selectedNodeStatus:wd,selectedWorkspace:M,showNodeDetails:tu,showRunnerUsage:au,workspaceBranchLabel:Hf,workspaceDirectAvailable:Ae,workspaceDirectDescription:he,workspaceLocalFileManagerAvailable:q,workspaceKindLabel:qf,workspacePath:iu}),registration:Et({loadWorkspaceDirectories:yo,loadingWorkspaceDirectory:ui,registrationLoading:ci.loading,pendingWorkspaceDirectoryName:lu,openNodeRegistration:hv,openWorkspaceTools:vi,registerWorkspace:vu,workspacePreserveGitConfig:su,workspaceGitPolicySupported:pd,selectWorkspaceDirectory:du,selectPendingWorkspaceDirectory:uu,discardPendingWorkspaceDirectory:pi,selectedWorkspaceDirectorySelectable:cu,workspaceDirectory:di,workspaceRegistrationNodeId:Gn,workspaceRegistrationNode:ho,workspaceRegistrationReady:ru,closeWorkspaceRegistration:Ci}),settings:Et({quickPrompts:ro.prompts,quickPromptsLoading:ro.loading,quickPromptsFailed:ro.failed,refreshQuickPrompts:oo.refresh,createRegistrationToken:Sv,registrationToken:bv,registrationLoading:Iv}),interactions:Et({attachmentPreview:ya,attachmentPreviewOpen:lt,closeQuickOpenFile:ju,conversationImagePreview:td,conversationImagePreviewOpen:nd,handleConversationImagePreviewError:ie=>dn.value.previewFailed(ie),openQuickWorkspaceFile:Ju,openQuickWorkspace:nv,openAttachmentPreview:wa,quickOpenFileVisible:_u}),uploads:Et({cancelWorkspaceUpload:Ed,deleteWorkspaceUpload:Nd,recoverWorkspaceUpload:Ad,retryWorkspaceUpload:Rd,workspaceUploadRecoveryInput:Id,workspaceUploadStatusLabel:Cd,workspaceUploadTasks:bd})}}const Gw=["organizations","users","resource-nodes","resource-workspaces","skill-config","skill-sources","mcp-sources","secrets","oauth","mar-agent-models","conversation-templates","audit","configuration","system"];function zw(e){const t=ec(e),n=new URLSearchParams(e.search).get("management"),a=Gw.find(r=>r===n);return{...t,...a===void 0?{}:{managementSection:a}}}function Kw(){const e=zw(window.location);return xh({initialView:e.view??"nodes",initialSettingsSection:"account",initialManagementSection:e.managementSection??"users",opensMobileSidebar:t=>t!=="conversations"})}function jw(e,t,n){return e("/api/workspaces",{method:"POST",body:JSON.stringify({...t,...n?.ownerType==="ORGANIZATION"?{ownership:n}:{}})})}function _w(){const e=Ef();return Bw({navigation:Kw(),management:fm(),systemManagementSection:"system",nodeManagementSection:"resource-nodes",webVersion:"0.13.7",pwaApplication:e,submitWorkspaceRegistration:jw,submitNodeRegistration:(t,n)=>t("/api/node-registration-tokens",{method:"POST",...n===void 0?{}:{body:JSON.stringify({ownership:n})}})})}class Yw{constructor(t=Date.now){this.now=t}now;entries=[];clear(){this.entries=[]}record(t,n){this.prune(),this.entries=this.entries.filter(a=>a.scope!==t||a.value.path!==n.path||a.value.kind!==n.kind),this.entries.push({scope:t,value:{...n,observedAt:this.now()}}),this.entries=this.entries.slice(-20)}snapshot(t){return this.prune(),this.entries.filter(n=>n.scope===t).map(n=>({...n.value}))}prune(){const t=this.now();this.entries=this.entries.filter(n=>t-n.value.observedAt<18e4&&n.value.observedAt<=t)}}const Qw=["aria-label"],Jw={class:"diff-mobile-action-row diff-mobile-navigation"},Xw={class:"diff-mobile-action-row diff-mobile-utilities"},Zw=["aria-label"],ek={class:"diff-toolbar-count"},tk={class:"diff-toolbar-count"},nk={class:"mar-tooltip-control"},ak={key:2,class:"unified-diff-pane"},ok={key:0,class:"unified-diff-truncation"},rk=["aria-label"],ik={key:0},sk=["data-diff-index","data-diff-row"],lk={class:"unified-diff-line-number"},ck={class:"unified-diff-line-prefix"},dk=["data-inline-find-index"],uk={key:0,class:"diff-code-navigation-target"},vk={key:1,class:"unified-diff-empty"},fk={key:0,class:"diff-fallback-message"},pk=["data-inline-find-index"],gk=["aria-label"],mk={class:"diff-minimap-content","aria-hidden":"true"},hk=["innerHTML"],yk=180,wk=at({__name:"GitDiffViewer",props:{path:{},diff:{},paths:{},loading:{type:Boolean},loadFailed:{type:Boolean},loadErrorMessage:{},source:{},previewEnabled:{type:Boolean},active:{type:Boolean},embedded:{type:Boolean},codeNavigationEnabled:{type:Boolean}},emits:["close","download","moveFile","preview","edit","navigateSymbol","navigateFile","retry"],setup(e,{expose:t,emit:n}){Rf(_=>({f656e64a:re.value.length}));const a=e,r=n,s=x(-1),i=x(),l=x(),v=x(),u=x(!1),d=x(""),w=x(0),k=x(0),T=x(0),p=x(0),g=x(0),R=x(0),b=x(),C=x();let I;const S=x();He(()=>a.active,_=>{_===!1&&S.value?.close()});const m=x(!1),A=ng();let L;const y=x(),D=j(()=>typeof a.diff=="object"&&a.diff!==null?a.diff:void 0),E=j(()=>typeof D.value?.text=="string"?D.value.text:typeof D.value?.summary=="string"?D.value.summary:""),H=j(()=>E.value.length>0),X=j(()=>ne(E.value)),Y=j(()=>typeof D.value?.afterText=="string"),U=j(()=>D.value?.binary!==!0&&Y.value),Q=j(()=>typeof D.value?.afterText=="string"?oe(D.value.afterText):[]),$=j(()=>ue(E.value)),V=j(()=>{const _=new Map;$.value.forEach((be,Oe)=>{for(const We of be.deletedLines){const Ie=_.get(We.insertBefore)??[];Ie.push({kind:"deleted",lineNumber:null,text:We.text,diffIndex:Oe}),_.set(We.insertBefore,Ie)}});const se=[];return Q.value.forEach((be,Oe)=>{const We=Oe+1;se.push(..._.get(We)??[]),se.push({kind:M(We)===void 0?"context":"added",lineNumber:We,text:be,diffIndex:M(We)})}),se.push(..._.get(Q.value.length+1)??[]),se}),N=j(()=>a.loading||a.loadFailed?[]:U.value?V.value.map(_=>_.text):H.value&&D.value?.binary!==!0?E.value.split(`
9
+ `):[]),h=j(()=>Bp(N.value,d.value)),F=j(()=>h.value.total===0?0:w.value+1),z=j(()=>N.value.length>0),fe=j(()=>s.value<0?0:s.value+1),J=j(()=>a.paths.findIndex(_=>_===a.path)+1),re=j(()=>{if(!U.value)return[];const _=V.value;if(_.length===0)return[];const se=G(Q.value.join(`
10
+ `),a.path),be=Math.min(yk,_.length);return Array.from({length:be},(Oe,We)=>{const Ie=Math.floor(We*_.length/be),st=Math.floor((We+1)*_.length/be),pe=_.slice(Ie,Math.max(Ie+1,st)),Ce=pe.some(vt=>vt.kind==="added"),je=pe.some(vt=>vt.kind==="deleted"),ze=pe.find(vt=>vt.lineNumber!==null)??pe[0];return{kind:Ce&&je?"mixed":Ce?"added":je?"deleted":"context",html:ze?.lineNumber===null?P(ze.text):se[(ze?.lineNumber??1)-1]??P(ze?.text??"")}})}),ge=j(()=>{const _=Math.max(0,p.value-T.value),se=p.value>0?Math.min(1,T.value/p.value):1,be=Math.max(6,se*100),Oe=_>0?(100-be)*k.value/_:0;return{height:`${be}%`,top:`${Math.min(100-be,Math.max(0,Oe))}%`}}),ce=j(()=>({right:`calc(var(--diff-content-inset) + ${g.value}px)`,bottom:`calc(var(--diff-content-inset) + ${R.value}px)`}));function oe(_){return _.length===0?[]:_.endsWith(`
11
+ `)?_.slice(0,-1).split(`
12
+ `):_.split(`
13
+ `)}function P(_){return _.replaceAll("&","&amp;").replaceAll("<","&lt;").replaceAll(">","&gt;").replaceAll('"',"&quot;").replaceAll("'","&#39;")}function G(_,se){const be=se.split(".").at(-1)?.toLocaleLowerCase(),Oe={ts:"typescript",tsx:"typescript",js:"javascript",jsx:"javascript",vue:"xml",html:"xml",css:"css",scss:"scss",json:"json",md:"markdown",py:"python",java:"java",go:"go",rs:"rust",sh:"bash",yml:"yaml",yaml:"yaml"}[be??""]??void 0;return(Oe!==void 0&&Lo.getLanguage(Oe)?Lo.highlight(_,{language:Oe,ignoreIllegals:!0}).value:Lo.highlightAuto(_).value).split(`
14
+ `).map(Ie=>Gp.sanitize(Ie,{ALLOWED_TAGS:["span"],ALLOWED_ATTR:["class"]}))}function ue(_){const se=[];let be;const Oe=()=>{be!==void 0&&se.push({addedLines:be.addedLines,deletedLines:be.deletedLines})};for(const We of _.split(`
15
+ `)){const Ie=/^@@ -(\d+)(?:,(\d+))? \+(\d+)(?:,(\d+))? @@/.exec(We);if(Ie!==null){Oe(),be={beforeLine:Number(Ie[1]),afterLine:Number(Ie[3]),addedLines:[],deletedLines:[]};continue}if(be!==void 0){if(We.startsWith("-")&&!We.startsWith("---")){be.deletedLines.push({text:We.slice(1),insertBefore:be.afterLine}),be.beforeLine+=1;continue}if(We.startsWith("+")&&!We.startsWith("+++")){be.addedLines.push(be.afterLine),be.afterLine+=1;continue}We.startsWith(" ")&&(be.beforeLine+=1,be.afterLine+=1)}}return Oe(),se}function ne(_){let se=0;return _.split(`
16
+ `).map(be=>{if(be.startsWith("diff "))return se=0,"is-meta";const Oe=/^(@{2,})\s/u.exec(be);if(Oe!==null){const We=Oe[1];return We===void 0?"is-meta":(se=We.length-1,"is-hunk")}if(be.startsWith("\\ No newline"))return"is-meta";if(se>0){const We=be.slice(0,se);return We.includes("+")&&We.includes("-")?"is-mixed":We.includes("+")?"is-added":We.includes("-")?"is-deleted":void 0}if(/^\+\+\+\s/u.test(be))return"is-added";if(/^---\s/u.test(be))return"is-deleted";if(be.startsWith("index ")||be.startsWith("mode ")||be.startsWith("old mode ")||be.startsWith("new mode ")||be.startsWith("new file ")||be.startsWith("deleted file ")||be.startsWith("similarity ")||be.startsWith("dissimilarity ")||be.startsWith("rename ")||be.startsWith("copy ")||be.startsWith("Binary files ")||be.startsWith("GIT binary patch")||be.startsWith("literal ")||be.startsWith("delta "))return"is-meta"})}function M(_){const se=$.value.findIndex(be=>be.addedLines.includes(_));return se<0?void 0:se}function ee(_){return _.diffIndex===s.value}function le(_,se){const be=y.value;if(be?.rowIndex!==se)return[_.text];const{from:Oe,to:We}=be.target;return[_.text.slice(0,Oe),_.text.slice(Oe,We),_.text.slice(We)]}function Ee(_){const se=_.target instanceof Element?_.target.closest("[data-diff-row]"):null,be=Number(se?.dataset.diffRow),Oe=V.value[be];return Number.isSafeInteger(be)&&Oe!==void 0?{row:Oe,index:be}:void 0}function xe(_,se){const be=document,Oe=be.caretPositionFromPoint?.(se.clientX,se.clientY),We=Oe===void 0?be.caretRangeFromPoint?.(se.clientX,se.clientY):Oe===null?null:(()=>{const st=document.createRange();return st.setStart(Oe.offsetNode,Oe.offset),st.collapse(!0),st})();if(We==null||!_.contains(We.startContainer))return;const Ie=document.createRange();return Ie.selectNodeContents(_),Ie.setEnd(We.startContainer,We.startOffset),Ie.toString().length}function Me(_){if(a.codeNavigationEnabled!==!0||!_.ctrlKey&&!_.metaKey||_.altKey||_.shiftKey)return;const se=Ee(_);if(se===void 0||se.row.lineNumber===null)return;const be=_.target.closest("[data-diff-line-content]");if(be===null)return;const Oe=xe(be,_);if(Oe===void 0)return;const We=cg(a.path,se.row.text,Oe);return We===void 0?void 0:{rowIndex:se.index,target:We}}function Se(_){y.value=Me(_)}function ye(){y.value=void 0}function Fe(_){if(_.button!==0)return;const se=Me(_);if(se!==void 0){if(_.preventDefault(),_.stopPropagation(),y.value=void 0,se.target.kind==="symbol"){r("navigateSymbol",se.target.value);return}r("navigateFile",{reference:se.target.reference,sourceContext:{text:Ye(_)??"",position:se.target.from}})}}function Ye(_){return Ee(_)?.row.text}async function nt(_){const se=$.value.length;if(se===0){s.value=-1;return}s.value=(_+se)%se,await ut(),i.value?.querySelector(`[data-diff-index="${s.value}"]`)?.scrollIntoView({block:"center"})}function ae(_){nt(s.value+_)}function me(){const _=i.value;_!==void 0&&(k.value=_.scrollTop,T.value=_.clientHeight,p.value=_.scrollHeight,g.value=_.offsetWidth-_.clientWidth,R.value=_.offsetHeight-_.clientHeight)}function Pe(_){i.value!==void 0&&(m.value=!0,Qe(_.clientY),_.currentTarget.setPointerCapture(_.pointerId),_.preventDefault())}function Ue(_){m.value&&(Qe(_.clientY),_.preventDefault())}function Qe(_){if(i.value===void 0||b.value===void 0)return;const se=p.value-T.value,be=p.value>0?Math.min(1,T.value/p.value):1,Oe=b.value.clientHeight*Math.max(.06,be),We=b.value.clientHeight-Oe;if(se<=0||We<=0)return;const Ie=_-b.value.getBoundingClientRect().top-Oe/2;i.value.scrollTop=Math.min(We,Math.max(0,Ie))/We*se,me()}function Te(_){m.value=!1;const se=_.currentTarget;se.hasPointerCapture(_.pointerId)&&se.releasePointerCapture(_.pointerId)}async function Ge(){u.value=!0,await ut(),await v.value?.focus()}function _e(){u.value=!1,Xe()}function tt(){return z.value?(Ge(),!0):!1}function Xe(){C.value?.root?.focus()}function Re(){const _=U.value?i.value:l.value;if(!z.value||_===void 0||typeof window>"u")return!1;const se=window.getSelection();return se===null?!1:(se.removeAllRanges(),se.selectAllChildren(_),!0)}async function de(){const _=window.getSelection(),se=C.value?.root;if(!(!_||_.isCollapsed||!se?.contains(_.anchorNode)||!se.contains(_.focusNode)))try{await navigator.clipboard.writeText(_.toString())}catch{et(c("filePreviewContext.clipboardFailed"),"error")}}function Ae(){return r("edit"),"CHANGED"}async function he(){return!0}async function q(_){const se=h.value.total;if(se===0)return;w.value=(w.value+_+se)%se,await ut(),(Y.value?i.value:l.value)?.querySelector(`[data-inline-find-index="${w.value}"]`)?.scrollIntoView({block:"center",inline:"nearest"})}He(d,()=>{w.value=0,ut(()=>{(Y.value?i.value:l.value)?.querySelector('[data-inline-find-index="0"]')?.scrollIntoView({block:"center",inline:"nearest"})})}),He(()=>[a.path,a.diff],async()=>{u.value=!1,d.value="",await nt(0),await ut(),me()},{immediate:!0,flush:"post"}),He(()=>a.active!==!1,_=>{typeof document>"u"||a.embedded===!0||(document.documentElement.classList.toggle("file-preview-open",_),document.body.classList.toggle("file-preview-open",_))},{immediate:!0});let te=[];return Dt(()=>{te=["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].map(_=>xt.register({command:`diff.navigate.${_}`,scope:"file-preview",priority:120,owner:()=>C.value?.root,keys:[{key:_}],when:se=>a.active!==!1&&!se.target?.closest('input, textarea, [contenteditable="true"]'),execute:()=>(_==="ArrowLeft"||_==="ArrowRight"?a.paths.length>1&&!a.loading&&r("moveFile",_==="ArrowLeft"?-1:1):ae(_==="ArrowUp"?-1:1),"HANDLED")})),I=xt.register({command:"diff.dismissFind",scope:"file-preview",priority:120,owner:()=>C.value?.root,keys:[{key:"Escape"}],when:()=>a.active!==!1&&u.value,execute:()=>(_e(),"HANDLED")}),a.active!==!1&&Xe(),me(),i.value!==void 0&&(L=new ResizeObserver(me),L.observe(i.value))}),mt(()=>{I?.(),te.forEach(_=>_()),a.embedded!==!0&&a.active!==!1&&(document.documentElement.classList.remove("file-preview-open"),document.body.classList.remove("file-preview-open")),L?.disconnect()}),t({focus:Xe,openFind:tt,selectAll:Re,toggleEdit:Ae,canClose:he}),(_,se)=>{const be=bt,Oe=St("tooltip");return f(),we(Zp,{ref_key:"diffRoot",ref:C,tabindex:"-1",role:e.embedded?"region":"dialog","aria-modal":e.embedded?void 0:!0,class:Ke({"has-inline-find":u.value,"is-embedded":e.embedded}),"file-name":e.path.split("/").at(-1)??e.path,path:e.path,loading:a.loading,"source-label":o(c)(a.source==="TOOL_CHANGE"?"presentation.thisChange":"common.gitDiff"),"mobile-actions-layout":"stacked","mobile-actions-label":o(c)("generated.gitDiffViewer.diffPreviewActions"),"aria-label":`${e.path} ${o(c)(a.source==="TOOL_CHANGE"?"presentation.thisChange":"common.gitDiff")}`},{status:Z(()=>[K("div",{class:"diff-mobile-summary","aria-label":o(c)("gitDiffViewer.mobileSummary")},[Le((f(),O("span",null,[ke(W(o(c)("gitDiffViewer.mobileFileSummary",{value0:J.value,value1:e.paths.length})),1)])),[[Oe,o(c)("generated.gitDiffViewer.filesAvailable",{value0:e.paths.length})]]),Le((f(),O("span",null,[ke(W(o(c)("gitDiffViewer.mobileChangeSummary",{value0:fe.value,value1:$.value.length})),1)])),[[Oe,o(c)("generated.gitDiffViewer.changes",{value0:$.value.length})]])],8,Qw)]),"mobile-actions":Z(()=>[K("div",Jw,[Le((f(),we(be,{class:"file-toolbar-control",circle:"",size:"small",disabled:a.paths.length<2||a.loading,"aria-label":o(c)("generated.gitDiffViewer.previousFile"),onClick:se[0]||(se[0]=We=>r("moveFile",-1))},{default:Z(()=>[B(De,{name:"chevron-left"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.previousFile")]]),Le((f(),we(be,{class:"file-toolbar-control",circle:"",size:"small",disabled:$.value.length===0,"aria-label":o(c)("generated.gitDiffViewer.previousChange"),onClick:se[1]||(se[1]=We=>ae(-1))},{default:Z(()=>[B(De,{name:"chevron-up"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.previousChange")]]),Le((f(),we(be,{class:"file-toolbar-control",circle:"",size:"small",disabled:$.value.length===0,"aria-label":o(c)("generated.gitDiffViewer.nextChange"),onClick:se[2]||(se[2]=We=>ae(1))},{default:Z(()=>[B(De,{name:"chevron-down"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.nextChange")]]),Le((f(),we(be,{class:"file-toolbar-control",circle:"",size:"small",disabled:a.paths.length<2||a.loading,"aria-label":o(c)("generated.gitDiffViewer.nextFile"),onClick:se[3]||(se[3]=We=>r("moveFile",1))},{default:Z(()=>[B(De,{name:"chevron-right"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.nextFile")]])]),K("div",Xw,[Le((f(),we(be,{class:"file-toolbar-control",circle:"",size:"small","aria-label":o(c)("fileEditor.openSource"),onClick:Ae},{default:Z(()=>[B(De,{name:"source-code"})]),_:1},8,["aria-label"])),[[Oe,o(c)("fileEditor.openSourceShortcut")]]),z.value?Le((f(),we(be,{key:0,class:"file-toolbar-control",circle:"",size:"small","aria-label":o(c)("inlineFind.label"),onClick:tt},{default:Z(()=>[B(De,{name:"search"})]),_:1},8,["aria-label"])),[[Oe,o(c)("inlineFind.label")]]):ve("",!0),Le((f(),we(be,{class:"file-toolbar-control","aria-label":o(c)("generated.gitDiffViewer.downloadDiff"),circle:"",size:"small",onClick:se[4]||(se[4]=We=>r("download"))},{default:Z(()=>[B(De,{name:"download"})]),_:1},8,["aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.downloadDiff")]]),e.embedded?ve("",!0):Le((f(),we(be,{key:1,class:"file-toolbar-control","aria-label":o(c)("generated.gitDiffViewer.closeDiffPreview2"),circle:"",size:"small",onClick:se[5]||(se[5]=We=>r("close"))},{default:Z(()=>[B(De,{name:"close"})]),_:1},8,["aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.closeDiffPreview2")]])])]),"primary-actions":Z(()=>[K("div",{class:"file-preview-actions diff-preview-toolbar","aria-label":o(c)("generated.gitDiffViewer.diffToolbar")},[Le((f(),we(be,{class:"file-toolbar-control",circle:"",size:"small","aria-label":o(c)("fileEditor.openSource"),onClick:Ae},{default:Z(()=>[B(De,{name:"source-code"})]),_:1},8,["aria-label"])),[[Oe,o(c)("fileEditor.openSourceShortcut")]]),Le((f(),we(be,{class:"file-toolbar-control",disabled:e.paths.length<2||e.loading,"aria-label":o(c)("generated.gitDiffViewer.previousFile"),circle:"",size:"small",onClick:se[6]||(se[6]=We=>r("moveFile",-1))},{default:Z(()=>[B(De,{name:"chevron-left"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.previousFile2")]]),Le((f(),O("span",ek,[ke(W(J.value)+" / "+W(e.paths.length),1)])),[[Oe,o(c)("generated.gitDiffViewer.filesAvailable",{value0:e.paths.length})]]),Le((f(),we(be,{class:"file-toolbar-control",disabled:e.paths.length<2||e.loading,"aria-label":o(c)("generated.gitDiffViewer.nextFile"),circle:"",size:"small",onClick:se[7]||(se[7]=We=>r("moveFile",1))},{default:Z(()=>[B(De,{name:"chevron-right"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.nextFile2")]]),se[23]||(se[23]=K("span",{class:"diff-toolbar-divider","aria-hidden":"true"},null,-1)),Le((f(),we(be,{class:"file-toolbar-control",disabled:$.value.length===0,"aria-label":o(c)("generated.gitDiffViewer.previousChange"),circle:"",size:"small",onClick:se[8]||(se[8]=We=>ae(-1))},{default:Z(()=>[B(De,{name:"chevron-up"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.previousChange2")]]),Le((f(),O("span",tk,[ke(W(fe.value)+" / "+W($.value.length),1)])),[[Oe,o(c)("generated.gitDiffViewer.changes",{value0:$.value.length})]]),Le((f(),we(be,{class:"file-toolbar-control",disabled:$.value.length===0,"aria-label":o(c)("generated.gitDiffViewer.nextChange"),circle:"",size:"small",onClick:se[9]||(se[9]=We=>ae(1))},{default:Z(()=>[B(De,{name:"chevron-down"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.nextChange2")]]),e.embedded?ve("",!0):Le((f(),we(be,{key:0,class:"file-toolbar-control diff-close-button","aria-label":o(c)("generated.gitDiffViewer.closeDiffPreview"),circle:"",size:"small",onClick:se[10]||(se[10]=We=>r("close"))},{default:Z(()=>[B(De,{name:"close"})]),_:1},8,["aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.closeDiffPreview")]])],8,Zw)]),default:Z(()=>[u.value&&z.value?(f(),we(eg,{key:0,ref_key:"findBar",ref:v,modelValue:d.value,"onUpdate:modelValue":se[11]||(se[11]=We=>d.value=We),current:F.value,total:h.value.total,truncated:h.value.truncated,onPrevious:se[12]||(se[12]=We=>q(-1)),onNext:se[13]||(se[13]=We=>q(1)),onClose:_e},null,8,["modelValue","current","total","truncated"])):ve("",!0),K("main",{class:"file-preview-content unified-diff-content",onClick:Xe,onContextmenu:se[21]||(se[21]=We=>S.value?.open(We))},[a.loading?ve("",!0):(f(),O(Ve,{key:0},[a.loadFailed?(f(),we(Mo,{key:0,retryable:"",message:a.loadErrorMessage??o(c)("generated.gitDiffViewer.gitDiffLoadFailed"),onRetry:se[14]||(se[14]=We=>r("retry"))},null,8,["message"])):D.value?.binary===!0?(f(),we(Mo,{key:1,message:o(c)("generated.gitDiffViewer.binaryFilesDoNotSupportDiff")},{actions:Z(()=>[Le((f(),O("span",nk,[B(be,{size:"small",disabled:!e.previewEnabled,"aria-description":e.previewEnabled?void 0:o(c)("generated.gitDiffViewer.filePreviewRequiresNewerNode"),onClick:se[15]||(se[15]=We=>r("preview"))},{default:Z(()=>[ke(W(o(c)("generated.gitDiffViewer.openFilePreview")),1)]),_:1},8,["disabled","aria-description"])])),[[Oe,{content:e.previewEnabled?void 0:o(c)("generated.gitDiffViewer.filePreviewRequiresNewerNode"),disabled:e.previewEnabled}]])]),_:1},8,["message"])):U.value?(f(),O("section",ak,[D.value?.afterTruncated===!0?(f(),O("small",ok,W(o(c)("generated.gitDiffViewer.showingTheFirst512KiB")),1)):ve("",!0),K("pre",{ref_key:"workingTreePane",ref:i,class:"unified-diff-code","aria-label":o(c)("generated.gitDiffViewer.fullWorkingTreeFile"),style:It(o(A).style.value),onScroll:me,onPointerdown:se[16]||(se[16]=(...We)=>o(A).pointerDown&&o(A).pointerDown(...We)),onPointermove:se[17]||(se[17]=(...We)=>o(A).pointerMove&&o(A).pointerMove(...We)),onPointerup:se[18]||(se[18]=(...We)=>o(A).pointerEnd&&o(A).pointerEnd(...We)),onPointercancel:se[19]||(se[19]=(...We)=>o(A).pointerEnd&&o(A).pointerEnd(...We))},[V.value.length>0?(f(),O("code",ik,[(f(!0),O(Ve,null,Je(V.value,(We,Ie)=>(f(),O("span",{key:Ie,class:Ke(["unified-diff-line",`is-${We.kind}`,{"is-active":ee(We)}]),"data-diff-index":We.diffIndex,"data-diff-row":Ie},[K("span",lk,W(We.lineNumber??"−"),1),K("span",ck,W(We.kind==="deleted"?"−":We.kind==="added"?"+":" "),1),K("span",{class:"unified-diff-line-content","data-diff-line-content":"",onMousedown:Fe,onMousemove:Se,onMouseleave:ye},[u.value&&d.value?(f(!0),O(Ve,{key:0},Je(h.value.lines[Ie],(st,pe)=>(f(),O(Ve,{key:pe},[st.matchIndex!==void 0?(f(),O("mark",{key:0,class:Ke({"is-current":st.matchIndex===w.value}),"data-inline-find-index":st.matchIndex},W(st.text),11,dk)):(f(),O(Ve,{key:1},[ke(W(st.text),1)],64))],64))),128)):y.value?.rowIndex===Ie?(f(!0),O(Ve,{key:1},Je(le(We,Ie),(st,pe)=>(f(),O(Ve,{key:pe},[pe===1?(f(),O("span",uk,W(st),1)):(f(),O(Ve,{key:1},[ke(W(st),1)],64))],64))),128)):(f(),O(Ve,{key:2},[ke(W(We.text),1)],64))],32)],10,sk))),128))])):(f(),O("span",vk,W(o(c)("generated.gitDiffViewer.emptyFile")),1))],44,rk)])):H.value?(f(),O(Ve,{key:3},[a.source!=="HISTORY"&&a.source!=="TOOL_CHANGE"?(f(),O("p",fk,W(o(c)("generated.gitDiffViewer.theCurrentNodeDidNotReturnThe")),1)):ve("",!0),K("pre",{ref_key:"historyDiffPane",ref:l,class:"unified-history-diff"},[K("code",null,[(f(!0),O(Ve,null,Je(E.value.split(`
17
+ `),(We,Ie)=>(f(),O("span",{key:Ie,class:Ke(X.value[Ie])},[u.value&&d.value?(f(!0),O(Ve,{key:0},Je(h.value.lines[Ie],(st,pe)=>(f(),O(Ve,{key:pe},[st.matchIndex!==void 0?(f(),O("mark",{key:0,class:Ke({"is-current":st.matchIndex===w.value}),"data-inline-find-index":st.matchIndex},W(st.text),11,pk)):(f(),O(Ve,{key:1},[ke(W(st.text),1)],64))],64))),128)):(f(),O(Ve,{key:1},[ke(W(We),1)],64))],2))),128))])],512)],64)):(f(),we(Mo,{key:4,message:o(c)("generated.gitDiffViewer.gitDiffHasNoDisplayableTextContent")},yl({_:2},[e.previewEnabled?{name:"actions",fn:Z(()=>[B(be,{size:"small",onClick:se[20]||(se[20]=We=>r("preview"))},{default:Z(()=>[ke(W(o(c)("generated.gitDiffViewer.openFilePreview")),1)]),_:1})]),key:"0"}:void 0]),1032,["message"])),U.value&&re.value.length?(f(),O("aside",{key:5,ref_key:"minimap",ref:b,class:Ke(["diff-minimap",{"is-dragging":m.value}]),"aria-label":o(c)("generated.gitDiffViewer.diffCodeMinimap"),style:It(ce.value),onPointerdown:Pe,onPointermove:Ue,onPointerup:Te,onPointercancel:Te},[K("div",mk,[(f(!0),O(Ve,null,Je(re.value,(We,Ie)=>(f(),O("span",{key:Ie,class:Ke(["diff-minimap-row",`is-${We.kind}`])},[K("span",{innerHTML:We.html},null,8,hk)],2))),128))]),K("span",{class:"diff-minimap-viewport","aria-hidden":"true",style:It(ge.value)},null,4)],46,gk)):ve("",!0)],64))],32),B(tg,{ref_key:"contextMenu",ref:S,"paste-enabled":!1,onCopy:de,onReload:se[22]||(se[22]=We=>r("retry"))},null,512)]),_:1},8,["role","aria-modal","class","file-name","path","loading","source-label","mobile-actions-label","aria-label"])}}}),kk=dt(wk,[["__scopeId","data-v-be0cf3e1"]]),hc=at({__name:"WorkspaceGitDiffPage",props:{tab:{},active:{type:Boolean},load:{type:Function},codeNavigationEnabled:{type:Boolean}},emits:["viewed","close","download","moveFile","preview","edit","navigateSymbol","navigateFile"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=x(),i=x(),l=x(!1),v=wt();He(()=>[a.active,s.value],()=>{a.active&&s.value&&i.value?.$el?.getClientRects().length&&document.visibilityState==="visible"&&document.hasFocus()&&r("viewed")},{flush:"post"});let u=0,d;async function w(){d?.abort(),d=new AbortController;const k=++u;s.value=void 0,v.value=void 0,l.value=!0;try{const T=await a.load(a.tab,d.signal);k===u&&(s.value=T)}catch(T){k===u&&(v.value=T)}finally{k===u&&(l.value=!1)}}return He(()=>a.tab.identity,()=>{w()},{immediate:!0}),mt(()=>{d?.abort(),u+=1}),t({focus:()=>i.value?.focus(),openFind:()=>i.value?.openFind()??!1,selectAll:()=>i.value?.selectAll()??!1,toggleEdit:()=>i.value?.toggleEdit()??"UNAVAILABLE",canClose:()=>i.value?.canClose()??Promise.resolve(!0)}),(k,T)=>(f(),we(kk,{ref_key:"viewer",ref:i,active:a.active,"code-navigation-enabled":a.codeNavigationEnabled===!0&&a.tab.kind==="WORKTREE_DIFF",diff:s.value,embedded:!0,onPointerup:T[0]||(T[0]=p=>a.active&&!l.value&&r("viewed")),"load-failed":v.value!==void 0,"load-error-message":v.value===void 0?void 0:o(Tr)(v.value,a.tab.path),loading:l.value,path:a.tab.path,paths:a.tab.paths??[a.tab.path],"preview-enabled":a.tab.kind!=="TOOL_CHANGE_DIFF",source:a.tab.kind==="TOOL_CHANGE_DIFF"?"TOOL_CHANGE":a.tab.kind==="HISTORY_DIFF"?"HISTORY":"WORKING_TREE",onClose:T[1]||(T[1]=p=>r("close")),onDownload:T[2]||(T[2]=p=>r("download",s.value)),onEdit:T[3]||(T[3]=p=>r("edit")),onMoveFile:T[4]||(T[4]=p=>r("moveFile",p)),onNavigateFile:T[5]||(T[5]=p=>r("navigateFile",p)),onNavigateSymbol:T[6]||(T[6]=p=>r("navigateSymbol",p)),onPreview:T[7]||(T[7]=p=>r("preview",s.value)),onRetry:w},null,8,["active","code-navigation-enabled","diff","load-failed","load-error-message","loading","path","paths","preview-enabled","source"]))}}),bk=at({__name:"WorkspaceFileWorkbench",props:{predictionEnabled:{type:Boolean},nodeId:{},workspaceId:{},controller:{},registerPage:{type:Function},adjacentDiff:{type:Function},loadDiff:{type:Function},openExternal:{type:Function},enabled:{type:Boolean},codeNavigationEnabled:{type:Boolean},standaloneFileMode:{type:Boolean},fileWriteEnabled:{type:Boolean}},emits:["notice","openHtmlPreview"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=x(),i=a.controller;He(s,(Se,ye)=>a.registerPage(Se,ye),{flush:"sync"}),mt(()=>a.registerPage(void 0,s.value));const{frames:l}=i,v=i.suspended,{canGoBack:u,canGoForward:d,travel:w}=i,k=i.activeTabId,T=j(()=>l.value.find(Se=>Se.id===k.value)),p=i.tabList,g=new Yw;He(()=>a.predictionEnabled,Se=>{Se||g.clear()});function R(Se,ye,Fe){if(!a.predictionEnabled||Se.gitFile===!0||Se.id!==i.activeTabId.value||document.visibilityState!=="visible"||!document.hasFocus())return;const Ye=Se.kind==="WORKTREE_TEXT"||Se.kind==="HISTORY_TEXT";g.record(`${a.nodeId}:${a.workspaceId}`,{kind:Ye?"FILE":"DIFF",path:Se.path,worktreePath:Se.worktreePath,...ye??{},...Fe?{revision:Fe}:{},...Ye?{}:{source:Se.kind==="HISTORY_DIFF"?"HISTORY":Se.kind==="TOOL_CHANGE_DIFF"?"TOOL_CHANGE":"WORKING_TREE"}})}const b=i.activeTabId,C=j(()=>T.value?.fileContent.value),I=j(()=>T.value?.targetLine.value),S=Se=>a.fileWriteEnabled&&Se.historySource===void 0&&Se.worktreePath.value===void 0&&Se.repositoryPath===void 0&&!sa(Se.fileContent.value?.path??"");function m(Se){const ye=Se.fileContent.value;return ye===void 0?"unsupported":ir(ye.path,ye.encoding)}const A=j(()=>{if(!(a.nodeId===void 0||a.workspaceId===void 0))return`/api/workspaces/${encodeURIComponent(a.workspaceId)}`}),L=j(()=>a.enabled&&A.value!==void 0);function y(Se,ye,Fe){r("notice",c("generated.workspaceInspector.unableToLoad",{value0:ye,value1:it(Se,Fe)}),"error",Se)}function D(){const Se=T.value;if(!(!a.codeNavigationEnabled||Se?.repositoryPath!==void 0||Se?.worktreePath.value!==void 0||Se?.fileContent.value===void 0||a.nodeId===void 0||a.workspaceId===void 0))return{pageId:Se.id,nodeId:a.nodeId,workspaceId:a.workspaceId,path:Se.fileContent.value.path}}async function E(Se){const ye=D();ye!==void 0&&Se.length>0&&await i.navigate(ye,{symbol:Se})}async function H(Se){const ye=D();ye!==void 0&&Se.reference.value.length>0&&await i.navigate(ye,Se)}function X(Se,ye=T.value){ye!==void 0&&i.openNavigationTarget(Se,ye.id)}function Y(Se=T.value){i.clearNavigationResult(Se?.id)}i.openWorkspaceFile;const U=i.openTab;async function Q(Se){await i.reloadFile(Se.id)}function $(Se){return Se.error.value===void 0?void 0:Tr(Se.error.value,Se.target.value?.path??"")}async function V(Se,ye,Fe){await i.openFile(Se,ye,Fe)}const N=a.openExternal;function h(){if(C.value===void 0)return!1;const Se=C.value.path,ye=rr(Se)?"markdown":Ka(Se)?"html":void 0;return ye===void 0||T.value?.repositoryPath!==void 0||ye==="html"&&T.value?.worktreePath.value!==void 0||ye==="html"&&a.standaloneFileMode!==!0&&(Se.startsWith("/")||/^[a-z]:[\\/]/i.test(Se)||Se.split(/[\\/]/).includes(".."))?!1:ye==="html"&&a.standaloneFileMode!==!0?(F(Se),!0):(N(Se,I.value,void 0,ye,T.value?.worktreePath.value,T.value?.repositoryPath),!0)}function F(Se){if(!L.value){r("notice",c("generated.workbenchPageInteractionService.filePreviewIsCurrentlyUnavailable"),"error");return}if(!i.suspendForHtml()){r("notice",c("htmlPreview.saving"),"info");return}r("openHtmlPreview",Se)}async function z(Se){const ye=i.tabList.value.find(Fe=>Fe.id===Se);return ye===void 0||!i.hasDraft(ye.identity)||ag()}t({predictionAttention:()=>g.snapshot(`${a.nodeId}:${a.workspaceId}`),openCurrentRenderedPreview:h,downloadFile:J});async function fe(Se,ye,Fe){if(!L.value||!a.fileWriteEnabled)throw new Error("FILE_WRITE_INVALID");return i.saveFile(Se.id,ye,Fe)}async function J(Se,ye,Fe){if(!(!L.value||a.nodeId===void 0||a.workspaceId===void 0))try{Fe?.fileContent.value?.path===Se?await i.downloadFile(Fe.id):await i.downloadTarget({nodeId:a.nodeId,workspaceId:a.workspaceId,path:Se,...ye===void 0?{}:{worktreePath:ye}})}catch(Ye){y(Ye,Se)}}async function re(Se){try{await i.downloadFile(Se.id)}catch(ye){y(ye,c("generated.workspaceInspector.fileDownload"))}}function ge(Se){i.closeTabs([Se])}function ce(){a.standaloneFileMode===!0&&window.close()}function oe(Se){i.closeTabs(Se)}const P=i.activateTab;function G(Se,ye){const Fe=typeof Se=="object"&&Se!==null&&typeof Se.text=="string"?Se.text:typeof Se=="object"&&Se!==null&&typeof Se.summary=="string"?Se.summary:c("generated.workspaceInspector.gitDiffHasNoDownloadableTextContent"),Ye=URL.createObjectURL(new Blob([Fe],{type:"text/plain;charset=utf-8"})),nt=document.createElement("a");nt.href=Ye,nt.download=`${ye.split("/").at(-1)??"changes"}.diff`,nt.click(),URL.revokeObjectURL(Ye)}const ue=i.openWorktreeDiffText;function ne(Se){if(Se.kind==="TOOL_CHANGE_DIFF"){V(Se.path);return}if(Se.kind==="WORKTREE_DIFF"){ue(Se);return}ee(Se)}async function M(Se,ye){if(Se.kind!=="HISTORY_DIFF"){ne(Se);return}await ee(Se,ye)}const ee=i.openHistoryText;async function le(Se,ye){Se.kind==="WORKTREE_DIFF"&&(await ue(Se),await E(ye))}async function Ee(Se,ye){Se.kind==="WORKTREE_DIFF"&&(await ue(Se),await H(ye))}async function xe(Se,ye){return a.loadDiff(Se,ye)}async function Me(Se,ye){if(Se.kind!=="WORKTREE_DIFF")return;const Fe=a.adjacentDiff(Se,ye);Fe!==void 0&&L.value&&A.value!==void 0&&await U(Fe)}return(Se,ye)=>(f(),we(la,{to:"body"},[o(p).length>0&&!o(v)?(f(),we(Vl,{key:0,ref_key:"workspaceFileTabsRef",ref:s,tabs:o(p),presentation:e.standaloneFileMode?"window":"overlay","active-tab-id":o(b),"can-go-back":o(u),"can-go-forward":o(d),"can-close-unmounted-tab":z,onBack:ye[1]||(ye[1]=Fe=>o(w)(-1)),onForward:ye[2]||(ye[2]=Fe=>o(w)(1)),onActivate:o(P),onPageReady:o(i).pageReady,onClose:ge,onCloseAll:oe,onCloseLast:ce},{default:Z(({tab:Fe,active:Ye,registerPageHandle:nt,requestClose:ae})=>[(f(!0),O(Ve,null,Je(o(l),me=>(f(),O(Ve,{key:me.id},[Fe.id===me.id&&me.fileContent.value!==void 0&&m(me)==="text"?Le((f(),we(ql,{key:0,ref_for:!0,ref:nt,active:Ye,downloading:me.downloading.value,file:me.fileContent.value,kind:m(me),loading:me.loading.value,"load-error":$(me),markdown:me.repositoryPath===void 0&&me.worktreePath.value===void 0&&me.fileContent.value.encoding==="utf-8"&&o(rr)(me.fileContent.value.path),html:me.repositoryPath===void 0&&me.worktreePath.value===void 0&&me.fileContent.value.encoding==="utf-8"&&(e.standaloneFileMode||!me.fileContent.value.path.startsWith("/")&&!/^[a-z]:[\\/]/i.test(me.fileContent.value.path)&&!me.fileContent.value.path.split(/[\\/]/).includes(".."))&&o(Ka)(me.fileContent.value.path),"write-enabled":S(me),"save-file":(Pe,Ue)=>fe(me,Pe,Ue),"target-line":me.targetLine.value,"target-column":me.targetColumn.value,"code-navigation-enabled":e.codeNavigationEnabled&&me.worktreePath.value===void 0&&me.repositoryPath===void 0,"navigation-loading":me.navigationLoading.value,"navigation-targets":me.navigationTargets.value,"navigation-no-definition":me.navigationNoDefinition.value,"navigation-notice":me.navigationNotice.value,"editor-identity":me.id,"tab-identity":Fe.identity,"initial-dirty-draft":o(i).draftFor(Fe.identity),onClose:ae,onDownload:Pe=>re(me),onOpenMarkdownPreview:Pe=>o(N)(me.fileContent.value.path,me.targetLine.value,me.targetColumn.value,"markdown"),onOpenHtmlPreview:Pe=>e.standaloneFileMode?o(N)(me.fileContent.value.path,void 0,void 0,"html"):F(me.fileContent.value.path),onNavigateSymbol:E,onNavigateFile:H,onDismissNavigation:Pe=>Y(me),onOpenNavigationTarget:Pe=>X(Pe,me),onReload:Pe=>Q(me),onDirtyDraftApplied:ye[0]||(ye[0]=Pe=>o(i).consumeDraft(Pe)),onViewed:Pe=>Ye&&R(Fe,Pe,me.fileContent.value?.revision)},null,8,["active","downloading","file","kind","loading","load-error","markdown","html","write-enabled","save-file","target-line","target-column","code-navigation-enabled","navigation-loading","navigation-targets","navigation-no-definition","navigation-notice","editor-identity","tab-identity","initial-dirty-draft","onClose","onDownload","onOpenMarkdownPreview","onOpenHtmlPreview","onDismissNavigation","onOpenNavigationTarget","onReload","onViewed"])),[[At,Ye]]):Fe.id===me.id&&me.fileContent.value!==void 0?Le((f(),we(Hl,{key:1,ref_for:!0,ref:nt,active:Ye,"content-url":me.contentUrl.value,downloading:me.downloading.value,file:me.fileContent.value,kind:m(me),loading:me.loading.value,"load-error":$(me),onReload:Pe=>Q(me),onClose:ae,onDownload:Pe=>re(me)},null,8,["active","content-url","downloading","file","kind","loading","load-error","onReload","onClose","onDownload"])),[[At,Ye]]):ve("",!0)],64))),128)),Fe.kind==="WORKTREE_DIFF"||Fe.kind==="HISTORY_DIFF"||Fe.kind==="TOOL_CHANGE_DIFF"?Le((f(),we(hc,{key:0,ref:nt,active:Ye,"code-navigation-enabled":e.codeNavigationEnabled&&Fe.gitFile!==!0,load:xe,onViewed:me=>Ye&&R(Fe),tab:Fe,onClose:ae,onDownload:me=>G(me,Fe.path),onEdit:me=>ne(Fe),onMoveFile:me=>Me(Fe,me),onPreview:me=>M(Fe,me),onNavigateSymbol:me=>le(Fe,me),onNavigateFile:me=>Ee(Fe,me)},null,8,["active","code-navigation-enabled","onViewed","tab","onClose","onDownload","onEdit","onMoveFile","onPreview","onNavigateSymbol","onNavigateFile"])),[[At,Ye]]):ve("",!0)]),_:1},8,["tabs","presentation","active-tab-id","can-go-back","can-go-forward","onActivate","onPageReady"])):ve("",!0)]))}}),Ik={class:"current-changes"},Sk={key:0,class:"changes-read-state"},Ck={key:1,class:"changes-read-state",role:"status"},Tk={key:2,class:"git-fetch-notice",role:"status"},Ek={key:3,class:"git-worktrees"},Rk={class:"git-worktree-heading"},Ak={key:0},Nk=["aria-label"],Dk={class:"git-worktree-name"},Pk={class:"git-worktree-statuses"},Ok={key:4,class:"git-worktrees-truncated",role:"status"},Lk={key:5,class:"empty"},Wk=["data-repository-path"],Mk={class:"repository-heading-content"},xk={class:"repository-title-row"},$k={key:0,class:"repository-branch current-branch"},Fk=["disabled","aria-label","aria-busy"],Uk={class:"repository-tags-row"},Vk={"aria-hidden":"true"},qk={key:0,class:"repository-relative-path"},Hk={key:1,class:"repository-physical-path"},Bk={key:0,class:"change-repository-empty"},Gk={key:1,class:"change-repository-empty",role:"status"},zk=["aria-label","onClick"],Kk={class:"change-path-content"},jk={class:"change-file-heading"},_k={class:"change-file-name"},Yk={key:0,class:"change-directory"},Qk={class:"change-status"},Jk={class:"change-status"},Jo=200,Xk=at({__name:"WorkspaceGitChanges",props:{service:{},target:{},watchStatus:{}},emits:["open","notice","retryWatch"],setup(e,{emit:t}){const n=e,a=t,{repositories:r,worktrees:s,worktreesTruncated:i,discoveryErrors:l,changesRefreshing:v,restoringPath:u,loadChanges:d}=n.service,w=j(()=>v.value||n.watchStatus==="loading"),k=j(()=>n.service.changesError.value||n.watchStatus==="failed"),T=x(!1),p=j(()=>k.value||T.value&&w.value);He([w,k],([N,h])=>{!N&&!h&&(T.value=!1)}),He([()=>n.target?.nodeId,()=>n.target?.workspaceId],()=>{T.value=!1});const g=j(()=>r.value.some(N=>N.source==="ROOT"));function R(){w.value||(T.value=!0,n.watchStatus==="failed"?a("retryWatch"):n.service.changesError.value&&n.service.retryChanges())}const b=x(Jo),C=x(),I=x([]),S=j(()=>ky(r.value,b.value)),m=j(()=>S.value.reduce((N,h)=>N+h.changes.length,0)),A=j(()=>r.value.reduce((N,h)=>N+h.changes.length,0)),L=j(()=>m.value<A.value),y=j(()=>L.value?S.value.filter(N=>N.changes.length>0).at(-1):void 0);He(r,()=>{b.value=Jo}),wr(N=>{const h=I.value[0],F=C.value,z=b.value;if(!h||!F||typeof IntersectionObserver>"u")return;let fe=!0;const J=new IntersectionObserver(re=>{fe&&b.value===z&&re.some(ge=>ge.isIntersecting)&&(b.value+=Jo)},{root:F});J.observe(h),N(()=>{fe=!1,J.disconnect()})},{flush:"post"});function D(N){return N.branch??c("gitWorktrees.detachedHead",{head:N.head.slice(0,8)})}function E(N){return N==="CLEAN"?c("gitWorktrees.clean"):N==="DIRTY"?c("gitWorktrees.dirty"):c("gitWorktrees.unavailable")}function H(N){return N==="CLEAN"?"success":N==="DIRTY"?"warning":"info"}function X(N){return`${N.source}:${N.worktreePath??N.repositoryPath}`}function Y(N){return N==="ROOT"?c("gitWorktrees.rootRepository"):N==="SUBMODULE"?c("gitWorktrees.submodule"):c("gitWorktrees.worktree")}function U(N){if(N.branch!==null)return N.branch;if(N.head!==void 0)return c("gitWorktrees.detachedHead",{head:N.head.slice(0,8)})}function Q(N){return{STAGED:"S",UNSTAGED:"W",UNTRACKED:"?"}[N]}function $(N){return it(new jt(N.code,N.message,N.parameters,N.details))}async function V(N){const h=n.target;if(h===void 0||u.value!==void 0)return;const F=vn(N),z=N.state==="UNTRACKED"?c("generated.workspaceInspector.deleteUntrackedFile"):c("generated.workspaceInspector.revertChanges");try{await Nt.confirm(c("generated.workspaceInspector.thisActionCannotBeUndone",{value0:z,value1:F}),z,{confirmButtonText:N.state==="UNTRACKED"?c("generated.workspaceInspector.delete2"):c("generated.workspaceInspector.revert"),cancelButtonText:c("generated.workspaceInspector.cancel3"),type:"warning"})}catch{return}!await n.service.restoreChange(N,h)||n.target?.nodeId!==h.nodeId||n.target.workspaceId!==h.workspaceId||a("notice",N.state==="UNTRACKED"?c("generated.workspaceInspector.deleted",{value0:F}):c("generated.workspaceInspector.reverted",{value0:F}),"success")}return(N,h)=>{const F=bt,z=da,fe=St("tooltip");return f(),O("section",Ik,[p.value?(f(),O("div",Sk,[Le((f(),we(F,{link:"","aria-description":!w.value&&e.service.changesError.value?o(it)(e.service.changesFailureCause.value):void 0,"aria-disabled":w.value,"aria-busy":w.value||void 0,onClick:R},{default:Z(()=>[w.value?(f(),we(De,{key:0,name:"loading-action"})):ve("",!0),ke(" "+W(o(c)("common.loadFailedRetry")),1)]),_:1},8,["aria-description","aria-disabled","aria-busy"])),[[fe,!w.value&&e.service.changesError.value?o(it)(e.service.changesFailureCause.value):""]])])):w.value&&!g.value?(f(),O("div",Ck,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)])):ve("",!0),e.service.changesFetchFailed.value?(f(),O("p",Tk,W(o(c)("gitSync.fetchFailed")),1)):ve("",!0),o(s).length>0?(f(),O("div",Ek,[K("div",Rk,[K("strong",null,W(o(c)("gitWorktrees.title")),1),o(i)?(f(),O("small",Ak,W(o(c)("gitWorktrees.truncated")),1)):ve("",!0)]),K("ul",{class:"git-worktree-list","aria-label":o(c)("gitWorktrees.title")},[(f(!0),O(Ve,null,Je(o(s),(J,re)=>(f(),O("li",{key:`${J.directoryName}:${J.head}:${re}`},[Le((f(),O("strong",Dk,[ke(W(J.directoryName),1)])),[[fe,J.directoryName]]),Le((f(),O("code",null,[ke(W(D(J)),1)])),[[fe,D(J)]]),K("span",Pk,[J.current?(f(),we(z,{key:0,class:"repository-current",type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(o(c)("gitWorktrees.current")),1)]),_:1})):ve("",!0),B(z,{type:H(J.status),effect:"plain",size:"small"},{default:Z(()=>[ke(W(E(J.status)),1)]),_:2},1032,["type"]),J.locked?(f(),we(z,{key:1,type:"warning",effect:"plain",size:"small"},{default:Z(()=>[ke(W(o(c)("gitWorktrees.locked")),1)]),_:1})):ve("",!0),J.prunable?(f(),we(z,{key:2,type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(o(c)("gitWorktrees.prunable")),1)]),_:1})):ve("",!0)])]))),128))],8,Nk)])):o(i)?(f(),O("p",Ok,W(o(c)("gitWorktrees.truncated")),1)):ve("",!0),(f(!0),O(Ve,null,Je(o(l),(J,re)=>(f(),O("p",{key:re,class:"change-repository-empty",role:"status"},W($(J)),1))),128)),o(r).length===0&&!w.value&&!k.value?(f(),O("p",Lk,W(o(c)("generated.workspaceInspector.theWorkspaceHasNoRepositoriesToDisplay")),1)):o(r).length>0?(f(),O("ul",{key:6,ref_key:"changeListElement",ref:C,class:"change-list"},[(f(!0),O(Ve,null,Je(S.value,J=>(f(),O(Ve,{key:X(J)},[K("li",{class:"change-repository-heading","data-repository-path":J.repositoryPath},[K("div",Mk,[K("div",xk,[Le((f(),O("strong",null,[ke(W(J.repositoryName||o(c)("generated.workspaceInspector.rootRepository")),1)])),[[fe,J.physicalPath||J.repositoryPath]]),U(J)?Le((f(),O("code",$k,[ke(W(U(J)),1)])),[[fe,U(J)]]):ve("",!0),J.source==="ROOT"?Le((f(),O("button",{key:1,class:"changes-refresh-button file-explorer-utility-button utility-control",disabled:w.value,"aria-label":o(c)("generated.workspaceInspector.refreshGitChanges"),"aria-busy":w.value||void 0,type:"button",onClick:h[0]||(h[0]=re=>o(d)(!0))},[B(De,{name:w.value&&!p.value?"loading-action":"refresh"},null,8,["name"])],8,Fk)),[[fe,o(c)("generated.workspaceInspector.refreshGitChanges2")]]):ve("",!0)]),K("div",Uk,[B(z,{class:"repository-kind",type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(Y(J.source)),1)]),_:2},1024),J.current?(f(),we(z,{key:0,class:"repository-current",type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(o(c)("gitWorktrees.current")),1)]),_:1})):ve("",!0),J.status?(f(),we(z,{key:1,type:H(J.status),effect:"plain",size:"small"},{default:Z(()=>[ke(W(E(J.status)),1)]),_:2},1032,["type"])):ve("",!0),J.locked?(f(),we(z,{key:2,type:"warning",effect:"plain",size:"small"},{default:Z(()=>[ke(W(o(c)("gitWorktrees.locked")),1)]),_:1})):ve("",!0),J.prunable?(f(),we(z,{key:3,type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(o(c)("gitWorktrees.prunable")),1)]),_:1})):ve("",!0),J.tracking&&(J.tracking.ahead>0||J.tracking.behind>0)?Le((f(),we(z,{key:4,class:"repository-sync-tag",effect:"plain",size:"small","aria-label":o(c)("gitSync.description",J.tracking)},{default:Z(()=>[K("span",Vk,"↓ "+W(J.tracking.behind)+" ↑ "+W(J.tracking.ahead),1)]),_:2},1032,["aria-label"])),[[fe,o(c)("gitSync.description",J.tracking)]]):ve("",!0)]),J.source==="SUBMODULE"&&J.repositoryPath?Le((f(),O("code",qk,[ke(W(J.repositoryPath),1)])),[[fe,J.repositoryPath]]):ve("",!0),(J.source==="WORKTREE"||J.source==="ROOT")&&J.physicalPath?Le((f(),O("code",Hk,[ke(W(J.physicalPath),1)])),[[fe,J.physicalPath]]):ve("",!0)])],8,Wk),J.changes.length===0&&!J.changesTruncated?(f(),O("li",Bk,W(J.error!==void 0?$(J.error):J.status==="UNAVAILABLE"?o(c)("gitWorktrees.unavailable"):o(c)("generated.workspaceInspector.noUncommittedChanges")),1)):ve("",!0),J.changesTruncated?(f(),O("li",Gk,W(o(c)("gitWorktrees.changesTruncated")),1)):ve("",!0),(f(!0),O(Ve,null,Je(J.changes,re=>(f(),O("li",{key:o(pr)(re),class:"change-entry"},[Le((f(),O("button",{class:"change-path",type:"button","aria-label":re.diffAvailable&&!o(Er)(re.path)?o(c)("generated.workspaceInspector.viewDiffFor",{value0:o(vn)(re)}):o(c)("generated.workspaceInspector.preview",{value0:o(vn)(re)}),onClick:ge=>a("open",re,ge.ctrlKey||ge.metaKey)},[K("span",Kk,[K("span",jk,[B(yn,{name:o(fr)(re.path)},null,8,["name"]),K("strong",_k,W(o(fr)(re.path)),1)]),o(Ws)(re.path)?(f(),O("small",Yk,W(o(Ws)(re.path)),1)):ve("",!0)])],8,zk)),[[fe,o(vn)(re)]]),Le((f(),O("span",Qk,[ke(W(o(fc)(re.change)),1)])),[[fe,re.change]]),Le((f(),O("small",Jk,[ke(W(Q(re.state)),1)])),[[fe,re.state]]),Le(B(F,{class:"change-restore utility-control",text:"",icon:o(qe)("undo"),"loading-icon":o(qe)("loading-action"),loading:o(u)===o(pr)(re),disabled:o(u)!==void 0,"aria-label":re.state==="UNTRACKED"?o(c)("generated.workspaceInspector.deleteChangesTo",{value0:o(vn)(re)}):o(c)("generated.workspaceInspector.revertChangesTo",{value0:o(vn)(re)}),size:"small",onClick:ge=>V(re)},null,8,["icon","loading-icon","loading","disabled","aria-label","onClick"]),[[fe,re.state==="UNTRACKED"?o(c)("generated.workspaceInspector.deleteUntrackedFile2"):o(c)("generated.workspaceInspector.revertChanges2")]])]))),128)),J===y.value?(f(),O("li",{key:2,ref_for:!0,ref_key:"loadMoreElements",ref:I,class:"change-append-state","aria-hidden":"true"},null,512)):ve("",!0)],64))),128))],512)):ve("",!0)])}}}),Zk=dt(Xk,[["__scopeId","data-v-646d1a6b"]]),hr=14,Ys=19,Qs=38;function aa(e){return e*hr+hr/2}function Js(e,t,n,a){const r=aa(e),s=aa(n),i=(t+a)/2;return`M ${r} ${t} C ${r} ${i}, ${s} ${i}, ${s} ${a}`}function Xo(e){return e.filter((t,n)=>e.indexOf(t)===n)}function eb(e){let t=[];return e.map(n=>{let a=t.indexOf(n.hash);const r=a>=0;r||(a=t.length,t=[...t,n.hash]);const s=[...t],i=[...s];i.splice(a,1,...Xo(n.parents));const l=Xo(i),v=[];for(const[d,w]of s.entries()){if(d===a)continue;const k=l.indexOf(w);k>=0&&v.push({path:Js(d,0,k,Qs),color:d})}r&&v.push({path:`M ${aa(a)} 0 L ${aa(a)} ${Ys}`,color:a});for(const d of Xo(n.parents)){const w=l.indexOf(d);w>=0&&v.push({path:Js(a,Ys,w,Qs),color:w})}const u=Math.max(s.length,l.length,1);return t=l,{lane:a,laneCount:u,outgoingLaneCount:t.length,edges:v}})}function La(e){return e.laneCount*hr}function Xs(e){return aa(e.lane)}const tb={class:"history-toolbar"},nb=["disabled","aria-label","aria-busy"],ab={key:0,class:"git-fetch-notice",role:"status"},ob={key:1,class:"empty"},rb={key:2,class:"history-list"},ib=["aria-label","onClick","onContextmenu"],sb=["viewBox"],lb=["d"],cb=["cx"],db=["cx"],ub={class:"history-content"},vb={class:"history-title-row"},fb={class:"history-subject"},pb=["x1","x2"],gb={class:"history-files"},mb={key:0,class:"empty",role:"status"},hb={key:1,class:"empty"},yb={key:0,class:"mar-tooltip-control"},wb={class:"history-file-status"},kb={class:"history-file-path"},bb={key:4,class:"history-load-more",role:"status"},Ib=at({__name:"WorkspaceGitHistory",props:{service:{}},emits:["open","notice"],setup(e,{emit:t}){const n=e,a=t,{historyRefs:r,historyCommits:s,historyNextCursor:i,historyLoading:l,historyError:v,historyFiles:u,historyFilesLoading:d,historyFilesErrors:w,loadHistory:k}=n.service,T=x(),p=x();wr(F=>{const z=T.value,fe=p.value;if(!z||!fe||l.value||v.value||typeof IntersectionObserver>"u")return;const J=new IntersectionObserver(re=>{re.some(ge=>ge.isIntersecting)&&k(!1)},{root:fe,rootMargin:"0px 0px 96px 0px"});J.observe(z),F(()=>J.disconnect())},{flush:"post"});const g=x(n.service.historyRepositoryPath.value),R=x([...n.service.selectedHistoryRefs.value]),b=x([]),C=x({}),I=x();He(n.service.historyRepositoryPath,F=>{g.value=F}),He(n.service.selectedHistoryRefs,F=>{R.value=[...F]}),He(n.service.historySource,()=>{b.value=[],C.value={},X()});const S=j({get:()=>g.value===""?"__ROOT_REPOSITORY__":g.value,set:F=>{g.value=F==="__ROOT_REPOSITORY__"?"":F}}),m=j(()=>n.service.repositories.value.filter(F=>F.source!=="WORKTREE"&&F.status!=="UNAVAILABLE").map(F=>({value:F.repositoryPath===""?"__ROOT_REPOSITORY__":F.repositoryPath,label:F.repositoryName||c("generated.workspaceInspector.rootRepository")}))),A=j(()=>{const F=eb(s.value);return s.value.map((z,fe)=>({commit:z,graph:F[fe]}))});function L(){return n.service.selectHistory(g.value,R.value)}function y(){return R.value=[],L()}async function D(F){if(b.value.includes(F.hash)){b.value=b.value.filter(z=>z!==F.hash);return}b.value=[...b.value,F.hash],C.value[F.hash]===void 0&&(C.value={...C.value,[F.hash]:[]}),await n.service.loadHistoryFiles(F)}function E(F){return Number.isFinite(F)?Gt(F):"-"}function H(F,z){z.preventDefault();const fe=176,J=38;I.value={commit:F,x:Math.max(6,Math.min(z.clientX,window.innerWidth-fe-6)),y:Math.max(6,Math.min(z.clientY,window.innerHeight-J-6))}}function X(){I.value=void 0}function Y(F){F.target instanceof Element&&F.target.closest(".history-context-menu")!==null||X()}async function U(){const F=I.value?.commit;if(F!==void 0){X();try{await navigator.clipboard.writeText(F.hash),a("notice",c("generated.workspaceInspector.commitIdCopied"),"info")}catch(z){a("notice",it(z),"error",z)}}}function Q(F){return`${Math.min(8,Math.max(0,F))*10+2}px`}function $(F,z){const fe=F.split("/").filter(Boolean);return fe.slice(0,-1).every((J,re)=>z.includes(fe.slice(0,re+1).join("/")))}function V(F,z){const fe=new Set,J=[];for(const re of[...F].sort((ge,ce)=>ge.path.localeCompare(ce.path))){const ge=re.path.split("/").filter(Boolean);for(let ce=0;ce<ge.length-1;ce+=1){const oe=ge.slice(0,ce+1).join("/");fe.has(oe)||(fe.add(oe),$(oe,z)&&J.push({kind:"DIRECTORY",path:oe,name:ge[ce]??oe,depth:ce}))}$(re.path,z)&&J.push({kind:"FILE",file:re,name:ge.at(-1)??re.path,depth:ge.length-1})}return J}function N(F,z){const fe=C.value[F]??[];C.value={...C.value,[F]:fe.includes(z)?fe.filter(J=>J!==z):[...fe,z]}}let h;return Dt(()=>{h=xt.register({command:"gitHistory.dismissMenu",scope:"overlay",priority:150,keys:[{key:"Escape"}],when:()=>I.value!==void 0,execute:()=>(X(),"HANDLED")}),window.addEventListener("pointerdown",Y),window.addEventListener("resize",X),window.addEventListener("scroll",X,!0)}),mt(()=>{h?.(),window.removeEventListener("pointerdown",Y),window.removeEventListener("resize",X),window.removeEventListener("scroll",X,!0)}),(F,z)=>{const fe=Un,J=wn,re=dg,ge=bt,ce=St("tooltip");return f(),O("section",{ref_key:"historyContainer",ref:p,class:"git-history"},[K("div",tb,[B(J,{modelValue:S.value,"onUpdate:modelValue":z[0]||(z[0]=oe=>S.value=oe),class:"history-filter","clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down"),"aria-label":o(c)("generated.workspaceInspector.selectGitRepository"),placeholder:o(c)("generated.workspaceInspector.selectAGitRepository"),size:"small",onChange:y},{default:Z(()=>[(f(!0),O(Ve,null,Je(m.value,oe=>(f(),we(fe,{key:oe.value,label:oe.label,value:oe.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","clear-icon","suffix-icon","aria-label","placeholder"]),B(J,{modelValue:R.value,"onUpdate:modelValue":z[1]||(z[1]=oe=>R.value=oe),class:"history-filter","clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down"),"aria-label":o(c)("generated.workspaceInspector.selectGitBranch"),placeholder:o(c)("generated.workspaceInspector.allBranches"),multiple:"","collapse-tags":"","collapse-tags-tooltip":"",clearable:"",size:"small",onChange:L},{default:Z(()=>[B(re,{label:o(c)("generated.workspaceInspector.localBranches")},{default:Z(()=>[(f(!0),O(Ve,null,Je(o(r).filter(oe=>oe.kind==="LOCAL"),oe=>(f(),we(fe,{key:oe.name,label:oe.displayName,value:oe.name},null,8,["label","value"]))),128))]),_:1},8,["label"]),B(re,{label:o(c)("generated.workspaceInspector.remoteBranches")},{default:Z(()=>[(f(!0),O(Ve,null,Je(o(r).filter(oe=>oe.kind==="REMOTE"),oe=>(f(),we(fe,{key:oe.name,label:oe.displayName,value:oe.name},null,8,["label","value"]))),128))]),_:1},8,["label"])]),_:1},8,["modelValue","clear-icon","suffix-icon","aria-label","placeholder"]),Le((f(),O("button",{class:"history-refresh file-explorer-utility-button utility-control",disabled:o(l),"aria-label":o(c)("generated.workspaceInspector.refreshGitHistory"),"aria-busy":o(l)||void 0,type:"button",onClick:z[2]||(z[2]=oe=>o(k)(!0,!0))},[B(De,{name:"refresh"})],8,nb)),[[ce,o(c)("generated.workspaceInspector.refreshGitHistory2")]])]),e.service.historyFetchFailed.value?(f(),O("p",ab,W(o(c)("gitSync.fetchFailed")),1)):ve("",!0),!o(l)&&!o(v)&&o(s).length===0?(f(),O("p",ob,W(o(c)("generated.workspaceInspector.noGitCommitHistory")),1)):(f(),O("ul",rb,[(f(!0),O(Ve,null,Je(A.value,({commit:oe,graph:P})=>(f(),O("li",{key:oe.hash,class:"history-commit"},[Le((f(),O("button",{"aria-label":`${oe.subject||o(c)("generated.workspaceInspector.untitled")}
18
18
  ${oe.authorName} · ${E(oe.committedAt)}${oe.refs.length>0?`
19
- ${oe.refs.join(", ")}`:""}`,class:"history-commit-row",type:"button",onClick:G=>D(oe),onContextmenu:G=>H(oe,G)},[(f(),O("svg",{class:"history-graph",style:It({width:`${o(La)(P)}px`}),viewBox:`0 0 ${o(La)(P)} 38`,"aria-hidden":"true"},[(f(!0),O(Ve,null,Je(P.edges,(G,ue)=>(f(),O("path",{key:`${oe.hash}:${ue}`,class:Ke(["history-graph-edge",`history-graph-color-${G.color%6}`]),d:G.path},null,10,cb))),128)),K("circle",{class:"history-graph-node-ring",cx:o(Xs)(P),cy:"19",r:"4.5"},null,8,db),K("circle",{class:Ke(["history-graph-node",`history-graph-color-${P.lane%6}`]),cx:o(Xs)(P),cy:"19",r:"3"},null,10,ub)],12,lb)),K("span",vb,[K("span",fb,[K("span",pb,W(oe.subject||o(c)("generated.workspaceInspector.untitled2")),1),(f(!0),O(Ve,null,Je(oe.refs,G=>Le((f(),O("span",{key:G,class:"history-ref"},[ke(W(G),1)])),[[ce,G]])),128))]),K("small",null,W(oe.authorName)+" · "+W(E(oe.committedAt)),1)])],40,sb)),[[ce,`${oe.subject||o(c)("generated.workspaceInspector.untitled")}
19
+ ${oe.refs.join(", ")}`:""}`,class:"history-commit-row",type:"button",onClick:G=>D(oe),onContextmenu:G=>H(oe,G)},[(f(),O("svg",{class:"history-graph",style:It({width:`${o(La)(P)}px`}),viewBox:`0 0 ${o(La)(P)} 38`,"aria-hidden":"true"},[(f(!0),O(Ve,null,Je(P.edges,(G,ue)=>(f(),O("path",{key:`${oe.hash}:${ue}`,class:Ke(["history-graph-edge",`history-graph-color-${G.color%6}`]),d:G.path},null,10,lb))),128)),K("circle",{class:"history-graph-node-ring",cx:o(Xs)(P),cy:"19",r:"4.5"},null,8,cb),K("circle",{class:Ke(["history-graph-node",`history-graph-color-${P.lane%6}`]),cx:o(Xs)(P),cy:"19",r:"3"},null,10,db)],12,sb)),K("span",ub,[K("span",vb,[K("span",fb,W(oe.subject||o(c)("generated.workspaceInspector.untitled2")),1),(f(!0),O(Ve,null,Je(oe.refs,G=>Le((f(),O("span",{key:G,class:"history-ref"},[ke(W(G),1)])),[[ce,G]])),128))]),K("small",null,W(oe.authorName)+" · "+W(E(oe.committedAt)),1)])],40,ib)),[[ce,`${oe.subject||o(c)("generated.workspaceInspector.untitled")}
20
20
  ${oe.authorName} · ${E(oe.committedAt)}${oe.refs.length>0?`
21
- ${oe.refs.join(", ")}`:""}`]]),b.value.includes(oe.hash)?(f(),O("div",{key:0,class:"history-expanded",style:It({gridTemplateColumns:`${o(La)(P)}px minmax(0, 1fr)`})},[(f(),O("svg",{class:"history-graph-continuation",style:It({width:`${o(La)(P)}px`}),"aria-hidden":"true"},[(f(!0),O(Ve,null,Je(P.outgoingLaneCount,G=>(f(),O("line",{key:G,class:Ke(`history-graph-color-${(G-1)%6}`),x1:(G-1)*14+7,y1:"0",x2:(G-1)*14+7,y2:"100%"},null,10,gb))),128))],4)),K("ul",mb,[o(d).includes(oe.hash)&&!o(w).includes(oe.hash)?(f(),O("li",hb,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)])):ve("",!0),o(w).includes(oe.hash)?(f(),O("li",yb,[Le((f(),we(ge,{link:"","aria-description":o(d).includes(oe.hash)?void 0:o(it)(e.service.historyFilesFailureCauses.value[oe.hash]),"aria-disabled":o(d).includes(oe.hash),"aria-busy":o(d).includes(oe.hash)||void 0,onClick:G=>!o(d).includes(oe.hash)&&e.service.loadHistoryFiles(oe)},{default:Z(()=>[o(d).includes(oe.hash)?(f(),O(Ve,{key:0},[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:2},1032,["aria-description","aria-disabled","aria-busy","onClick"])),[[ce,o(d).includes(oe.hash)?"":o(it)(e.service.historyFilesFailureCauses.value[oe.hash])]])])):ve("",!0),(f(!0),O(Ve,null,Je(V(o(u)[oe.hash]??[],C.value[oe.hash]??[]),G=>(f(),O("li",{key:G.kind==="DIRECTORY"?`directory:${G.path}`:`file:${G.file.previousPath??""}:${G.file.path}`},[G.kind==="DIRECTORY"?Le((f(),O("span",wb,[B(ge,{text:"",size:"small",class:"history-directory",style:It({paddingLeft:Q(G.depth)}),"aria-expanded":(C.value[oe.hash]??[]).includes(G.path),onClick:rt(ue=>N(oe.hash,G.path),["stop"])},{default:Z(()=>[B(De,{name:"chevron-right",class:Ke(["history-directory-toggle",{"is-expanded":(C.value[oe.hash]??[]).includes(G.path)}])},null,8,["class"]),B(yn,{name:G.name,kind:"DIRECTORY"},null,8,["name"]),ke(W(G.name),1)]),_:2},1032,["style","aria-expanded","onClick"])])),[[ce,G.path]]):Le((f(),we(ge,{key:1,text:"",size:"small",style:It({paddingLeft:Q(G.depth)}),onClick:rt(ue=>a("open",oe,G.file,ue.ctrlKey||ue.metaKey),["stop"])},{default:Z(()=>[K("span",kb,W(o(fc)(G.file.change)),1),B(yn,{name:G.name},null,8,["name"]),K("span",bb,W(G.name),1)]),_:2},1032,["style","onClick"])),[[ce,G.file.previousPath?`${G.file.previousPath} → ${G.file.path}`:G.file.path]])]))),128))])],4)):ve("",!0)]))),128))])),(f(),we(la,{to:"body"},[I.value!==void 0?(f(),O("div",{key:0,class:"history-context-menu",style:It({left:`${I.value.x}px`,top:`${I.value.y}px`}),role:"menu"},[K("button",{type:"button",role:"menuitem",onClick:U},[B(De,{name:"paste"}),ke(" "+W(o(c)("generated.workspaceInspector.copyCommitId")),1)])],4)):ve("",!0)])),o(v)?Le((f(),we(ge,{key:3,link:"","aria-description":o(l)?void 0:o(it)(e.service.historyFailureCause.value),class:"history-load-more","aria-disabled":o(l),"aria-busy":o(l)||void 0,onClick:z[3]||(z[3]=oe=>!o(l)&&o(k)(o(v).resetPage,o(v).fetch))},{default:Z(()=>[o(l)?(f(),O(Ve,{key:0},[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-description","aria-disabled","aria-busy"])),[[ce,o(l)?"":o(it)(e.service.historyFailureCause.value)]]):o(l)?(f(),O("div",Ib,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)])):ve("",!0),o(i)!==null&&!o(v)?(f(),O("div",{key:5,ref_key:"historyBoundary",ref:T,class:"history-boundary","aria-hidden":"true"},null,512)):ve("",!0)],512)}}}),Cb=dt(Sb,[["__scopeId","data-v-2917cf3c"]]),Tb={class:"content-search"},Eb={class:"content-search-options"},Rb=["disabled","aria-label","aria-busy"],Ab={key:1,class:"watch-status",role:"status"},Nb={key:2,class:"content-search-warning"},Db=["aria-label"],Pb=["aria-label","onClick"],Ob={class:"content-search-name"},Lb={key:0},Wb={key:0,class:"file-search-empty"},Mb=at({__name:"WorkspaceContentSearch",props:{service:{},enabled:{type:Boolean},nodeId:{},workspaceId:{}},emits:["open"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=x(""),i=x(!1),l=x(),v=a.service,u=v.appliedQuery,d=v.appliedUseRegex,w=v.matches,k=v.loading,T=v.error,p=v.truncated;async function g(){!a.enabled||a.nodeId===void 0||a.workspaceId===void 0||await v.search({nodeId:a.nodeId,workspaceId:a.workspaceId,query:s.value,useRegex:i.value})}function R(b){if(d.value)return[{text:b,match:!1}];const C=b.toLocaleLowerCase().indexOf(u.value.toLocaleLowerCase());if(C<0||u.value==="")return[{text:b,match:!1}];const I=C+u.value.length;return[{text:b.slice(0,C),match:!1},{text:b.slice(C,I),match:!0},{text:b.slice(I),match:!1}].filter(S=>S.text!=="")}return t({focus:()=>ut(()=>l.value?.focus()),snapshot:()=>({contentQuery:s.value,contentUseRegex:i.value}),restore:b=>{s.value=typeof b.contentQuery=="string"?b.contentQuery:"",i.value=b.contentUseRegex===!0}}),(b,C)=>{const I=jl,S=Ft,m=bt,A=St("tooltip");return f(),O("section",Tb,[K("div",Eb,[B(I,{modelValue:i.value,"onUpdate:modelValue":C[0]||(C[0]=L=>i.value=L),size:"small"},{default:Z(()=>[ke(W(o(c)("generated.workspaceInspector.useRegularExpression")),1)]),_:1},8,["modelValue"])]),K("form",{class:"explorer-toolbar content-search-toolbar",onSubmit:rt(g,["prevent"])},[B(S,{ref_key:"contentSearchInput",ref:l,modelValue:s.value,"onUpdate:modelValue":C[1]||(C[1]=L=>s.value=L),"aria-label":o(c)("generated.workspaceInspector.searchFileContents"),maxlength:"256",placeholder:o(c)("generated.workspaceInspector.searchFileContents2"),size:"small"},null,8,["modelValue","aria-label","placeholder"]),Le((f(),O("button",{class:"content-search-button file-explorer-utility-button utility-control",disabled:o(k),"aria-label":o(c)("generated.workspaceInspector.runContentSearch"),"aria-busy":o(k)||void 0,type:"submit"},[B(De,{name:"search"})],8,Rb)),[[A,o(c)("generated.workspaceInspector.runContentSearch2")]])],32),o(T)!==void 0?Le((f(),we(m,{key:0,"aria-description":o(k)?void 0:o(it)(o(T)),class:Ke(["watch-status",{failed:!o(k)}]),link:"","aria-disabled":o(k),"aria-busy":o(k)||void 0,onClick:C[2]||(C[2]=L=>o(v).retry())},{default:Z(()=>[o(k)?(f(),O(Ve,{key:0},[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-description","class","aria-disabled","aria-busy"])),[[A,o(k)?"":o(it)(o(T))]]):o(k)?(f(),O("p",Ab,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)])):ve("",!0),o(p)?(f(),O("p",Nb,W(o(c)("generated.workspaceInspector.resultsAreIncompleteNarrowTheSearchScope")),1)):ve("",!0),K("ul",{class:"content-search-results","aria-label":o(c)("generated.workspaceInspector.contentSearchResults")},[(f(!0),O(Ve,null,Je(o(w),L=>(f(),O("li",{key:`${L.path}:${L.line}:${L.column}`},[Le((f(),O("button",{"aria-label":L.path,type:"button",onClick:y=>r("open",L.path,L.line,L.column,y.ctrlKey||y.metaKey)},[K("span",Ob,[B(yn,{name:o(fr)(L.path)},null,8,["name"]),K("strong",null,W(L.path),1)]),K("small",null,W(o(c)("generated.workspaceInspector.line",{value0:L.line})),1),K("code",null,[(f(!0),O(Ve,null,Je(R(L.preview),(y,D)=>(f(),O(Ve,{key:D},[y.match?(f(),O("mark",Lb,W(y.text),1)):(f(),O(Ve,{key:1},[ke(W(y.text),1)],64))],64))),128))])],8,Pb)),[[A,L.path]])]))),128)),o(u)!==""&&o(w).length===0&&!o(k)&&o(T)===void 0?(f(),O("li",Wb,W(o(c)("generated.workspaceInspector.noMatchingContent")),1)):ve("",!0)],8,Db)])}}}),xb=dt(Mb,[["__scopeId","data-v-1ed20ddc"]]),$b=["aria-label"],Fb=["onDragenter","onDragleave","onDrop","onMouseenter","onFocusin","onContextmenu"],Ub=["aria-label","data-file-path","aria-expanded","aria-selected","aria-level","disabled","tabindex","draggable","onClick","onKeydown","onDragstart"],Vb={key:1,class:"tree-chevron"},qb={class:"tree-name"},Hb=["aria-label","disabled","tabindex"],Bb={key:1,class:"file-tree-more","aria-hidden":"true"},Gb={key:1,role:"status"},zb={key:0,class:"file-tree-empty"},Kb=500,jb=at({__name:"WorkspaceFileTree",props:{root:{},rootPath:{},filter:{},selectedPath:{},disabled:{type:Boolean},mutationsEnabled:{type:Boolean},localFileManagerEnabled:{type:Boolean},mobileViewport:{type:Boolean}},emits:["toggle","open","openExternal","action","move","loadMore","select","dropFiles","invalidDrop"],setup(e,{expose:t,emit:n}){const a=e,r=Xa().locale,s=n,i=x(),l=x("."),v=x(),u=x(),d=x(),w=x(!1),k=x(),T=x(),p=j(()=>sy(a.root,a.filter)),g=x(0),R=x(0),b=x(24);let C,I;const S=j(()=>{const M=ly(p.value.length,g.value,R.value,b.value,8);return{...M,rows:p.value.slice(M.start,M.end)}});wr(()=>{if(a.disabled||a.filter.trim()!==""||R.value<=0)return;const M=Math.floor(g.value/b.value),ee=Math.ceil((g.value+R.value)/b.value),le=p.value.slice(M,ee).find(Ee=>Ee.loadMore&&Ee.node.expanded&&!Ee.node.loading&&Ee.node.failedAppend===void 0);le&&s("loadMore",le.node)});const m=j(()=>a.filter.trim().length===0||p.value.some(M=>M.node.path!=="."));function A(M,ee){l.value=M.path,M.kind==="DIRECTORY"?(s("select",M),s("toggle",M)):ee?.ctrlKey===!0||ee?.metaKey===!0?s("openExternal",M):s("open",M)}function L(M,ee){const le=p.value.filter(xe=>!xe.loadMore),Ee=le.findIndex(xe=>xe.node.path===ee.node.path);if(M.key==="ArrowDown"||M.key==="ArrowUp"){M.preventDefault();const xe=M.key==="ArrowDown"?1:-1,Me=le[Math.max(0,Math.min(le.length-1,Ee+xe))];Me!==void 0&&y(Me.node.path);return}M.key==="ArrowRight"&&ee.node.kind==="DIRECTORY"&&!ee.node.expanded||M.key==="ArrowLeft"&&ee.node.kind==="DIRECTORY"&&ee.node.expanded?(M.preventDefault(),s("toggle",ee.node)):(M.key==="Enter"||M.key===" ")&&(M.preventDefault(),A(ee.node))}function y(M){l.value=M,H(M),ut(()=>D(M)?.focus())}function D(M){const ee=CSS.escape(M);return i.value?.querySelector(`[data-file-path="${ee}"]`)??void 0}async function E(M,ee=()=>!0){ee()&&(H(M),await ut(),ee()&&D(M)?.scrollIntoView({block:"nearest",inline:"nearest"}))}function H(M){const ee=p.value.findIndex(Me=>!Me.loadMore&&Me.node.path===M),le=i.value;if(ee<0||le===void 0)return;const Ee=ee*b.value,xe=Ee+b.value;Ee<le.scrollTop?le.scrollTop=Ee:xe>le.scrollTop+le.clientHeight&&(le.scrollTop=xe-le.clientHeight),g.value=le.scrollTop}function X(){const M=i.value;if(M===void 0)return;g.value=M.scrollTop,R.value=M.clientHeight;const ee=Number.parseFloat(getComputedStyle(M).getPropertyValue("--mar-compact-row-size"));Number.isFinite(ee)&&ee>0&&(b.value=ee)}let _,U;Dt(()=>{X(),a.selectedPath!==void 0&&E(a.selectedPath),_=new ResizeObserver(X),i.value!==void 0&&_.observe(i.value),U=xt.register({command:"workspaceFileTree.dismissMenu",scope:"overlay",priority:100,modalOwner:()=>i.value,keys:[{key:"Escape"}],when:M=>{const ee=i.value?.querySelector('.file-tree-more[aria-expanded="true"]');if(!w.value||!ee||!(M.target instanceof Node))return!1;const le=document.getElementById(ee.getAttribute("aria-controls")??"");return ee.contains(M.target)||le?.contains(M.target)===!0||M.target instanceof Element&&M.target.closest(".file-tree-row-shell")?.contains(ee)===!0},execute:()=>{const M=i.value?.querySelector('.file-tree-more[aria-expanded="true"]');return M?(M.click(),M.focus({preventScroll:!0}),"HANDLED"):"IGNORED"}})}),mt(()=>{_?.disconnect(),U?.(),V()}),He(()=>p.value.length,()=>{ut(X)});function Q(M,ee){if(V(),v.value=void 0,u.value!==void 0){const Me=u.value;if(u.value=void 0,a.mobileViewport)return;ee?.kind==="DIRECTORY"&&ee.path!==Me.path?s("move",Me,ee):s("invalidDrop");return}if([...M.dataTransfer?.items??[]].some(Me=>Me.webkitGetAsEntry?.()?.isDirectory===!0)){s("invalidDrop");return}const Ee=[...M.dataTransfer?.files??[]];if(Ee.length===0){s("invalidDrop");return}const xe=ee?.kind==="DIRECTORY"?ee.path:".";s("dropFiles",xe,Ee)}function $(M){const ee=M.dataTransfer;return ee!==null&&(Array.from(ee.types).includes("Files")||[...ee.items].some(le=>le.kind==="file"))}function V(M){M!==void 0&&I!==M||(C!==void 0&&clearTimeout(C),C=void 0,I=void 0)}function N(M){I!==M.path&&(V(),I=M.path,C=setTimeout(()=>{I===M.path&&(C=void 0,I=void 0,M.kind==="DIRECTORY"&&!M.expanded&&s("toggle",M))},Kb))}function h(){V(),v.value="."}function F(){V(),v.value=void 0}function z(M,ee){v.value=ee.path,I!==ee.path&&V(),ee.kind==="DIRECTORY"&&!ee.expanded?u.value!==void 0?(V(),s("toggle",ee)):$(M)?N(ee):(V(),s("toggle",ee)):V(ee.path),M.stopPropagation(),M.preventDefault()}function fe(M,ee){const le=M.currentTarget,Ee=M.relatedTarget;le instanceof HTMLElement&&Ee instanceof Node&&le.contains(Ee)||(V(ee),v.value===ee&&(v.value=void 0))}function J(M){return a.mutationsEnabled&&!a.mobileViewport&&M.path!=="."}function re(M,ee){if(!J(ee)){M.preventDefault();return}V(),u.value=ee,M.dataTransfer?.setData("application/x-mar-workspace-path",ee.path),M.dataTransfer!==null&&(M.dataTransfer.effectAllowed="move")}function ge(){V(),u.value=void 0}function ce(M,ee){(M==="OPEN"||M==="OPEN_EXTERNAL"||M==="PREVIEW_HTML"||M==="CREATE_FILE"||M==="CREATE_DIRECTORY"||M==="DOWNLOAD"||M==="COPY_PATH"||M==="COPY_ABSOLUTE_PATH"||M==="REVEAL_LOCAL"||M==="RENAME"||M==="DELETE"||M==="UPLOAD")&&s("action",M,ee)}function oe(M){return a.mobileViewport||k.value===M||T.value===M||w.value&&d.value===M}function P(M){const ee=M.currentTarget;ee instanceof HTMLElement&&M.relatedTarget instanceof Node&&ee.contains(M.relatedTarget)||(T.value=void 0)}function G(M,ee){k.value=M,ut(()=>ee.querySelector(".file-tree-more")?.click())}function ue(M,ee){ee.preventDefault();const le=ee.currentTarget.closest(".file-tree-row-shell");d.value=M,le!==null&&G(M,le)}function ne(M,ee){!M&&d.value!==ee||(w.value=M,d.value=M?ee:void 0)}return t({reveal:E}),(M,ee)=>{const le=ln,Ee=sn,xe=rn,Me=bt,Se=St("tooltip");return f(),O("div",{ref_key:"container",ref:i,class:Ke(["workspace-file-tree",{"is-root-drop-target":v.value==="."}]),role:"tree","aria-label":o(c)("generated.workspaceFileTree.fileTree"),onDragenter:rt(h,["prevent"]),onDragleave:rt(F,["self"]),onDragover:ee[5]||(ee[5]=rt(()=>{},["prevent"])),onDrop:ee[6]||(ee[6]=rt(ye=>Q(ye),["prevent"])),onScroll:X},[K("div",{class:"file-tree-virtual-space",style:It({height:`${S.value.totalHeight}px`})},[K("div",{class:"file-tree-virtual-window",style:It({transform:`translateY(${S.value.offset}px)`})},[(f(!0),O(Ve,null,Je(S.value.rows,(ye,Fe,Ye,nt)=>{const ae=[ye.node,ye.node.name,e.rootPath,ye.node.kind,ye.node.expanded,ye.node.loading,ye.node.failedAppend,ye.depth,ye.loadMore,e.selectedPath===ye.node.path,v.value===ye.node.path,l.value===ye.node.path,oe(ye.node.path),e.disabled,e.mutationsEnabled,e.mobileViewport,o(r)];if(nt&&nt.el&&nt.key===`${ye.node.path}:${ye.loadMore?"more":"node"}`&&Af(nt,ae))return nt;const me=(f(),O(Ve,{key:`${ye.node.path}:${ye.loadMore?"more":"node"}`},[ye.loadMore?(f(),O("div",{key:1,class:"file-tree-load-more",style:It({"--tree-depth":ye.depth})},[ye.node.failedAppend!==void 0?Le((f(),we(Me,{key:0,class:"utility-control",link:"","aria-description":ye.node.loading?void 0:o(it)(ye.node.failure),"aria-disabled":ye.node.loading||e.disabled,"aria-busy":ye.node.loading||void 0,onClick:Pe=>!ye.node.loading&&!e.disabled&&s("loadMore",ye.node)},{default:Z(()=>[ye.node.loading?(f(),O(Ve,{key:0},[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:2},1032,["aria-description","aria-disabled","aria-busy","onClick"])),[[Se,ye.node.loading?"":o(it)(ye.node.failure)]]):ye.node.loading?(f(),O("span",Gb,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)])):ve("",!0)],4)):(f(),O("div",{key:0,class:Ke(["file-tree-row-shell",{selected:e.selectedPath===ye.node.path,"drop-target":v.value===ye.node.path}]),onDragenter:rt(Pe=>z(Pe,ye.node),["stop","prevent"]),onDragleave:rt(Pe=>fe(Pe,ye.node.path),["stop"]),onDragover:ee[1]||(ee[1]=rt(()=>{},["stop","prevent"])),onDrop:rt(Pe=>Q(Pe,ye.node),["stop","prevent"]),onMouseenter:Pe=>k.value=ye.node.path,onMouseleave:ee[2]||(ee[2]=Pe=>k.value=void 0),onFocusin:Pe=>T.value=ye.node.path,onFocusout:P,onContextmenu:Pe=>ue(ye.node.path,Pe)},[Le((f(),O("button",{"aria-label":ye.node.path==="."?e.rootPath??ye.node.name:ye.node.path,class:"file-tree-row",type:"button",role:"treeitem","data-file-path":ye.node.path,"aria-expanded":ye.node.kind==="DIRECTORY"?ye.node.expanded:void 0,"aria-selected":e.selectedPath===ye.node.path,"aria-level":ye.depth+1,disabled:e.disabled,tabindex:l.value===ye.node.path?0:-1,style:It({"--tree-depth":ye.depth}),draggable:J(ye.node),onClick:Pe=>A(ye.node,Pe),onKeydown:Pe=>L(Pe,ye),onDragstart:Pe=>re(Pe,ye.node),onDragend:ge},[ye.node.kind==="DIRECTORY"?(f(),we(De,{key:0,name:"chevron-right",class:Ke(["tree-chevron",{expanded:ye.node.expanded}])},null,8,["class"])):(f(),O("span",Vb)),B(yn,{class:"tree-kind",name:ye.node.name,kind:ye.node.kind},null,8,["name","kind"]),K("span",qb,W(ye.node.name),1)],44,Ub)),[[Se,ye.node.path==="."?e.rootPath??ye.node.name:ye.node.path]]),oe(ye.node.path)?(f(),we(xe,{key:0,trigger:"click",placement:"bottom-start",persistent:!1,onCommand:Pe=>ce(Pe,ye.node),onVisibleChange:Pe=>ne(Pe,ye.node.path)},{dropdown:Z(()=>[B(Ee,null,{default:Z(()=>[ye.node.kind==="FILE"?(f(),we(le,{key:0,command:"OPEN"},{default:Z(()=>[B(De,{name:"view"}),ke(W(o(c)("generated.workspaceFileTree.open")),1)]),_:1})):ve("",!0),ye.node.kind==="FILE"?(f(),we(le,{key:1,command:"OPEN_EXTERNAL"},{default:Z(()=>[B(De,{name:"external-link"}),ke(W(o(c)("generated.workspaceFileTree.openInNewWindow")),1)]),_:1})):ve("",!0),ye.node.kind==="FILE"&&o(Ka)(ye.node.path)?(f(),we(le,{key:2,command:"PREVIEW_HTML"},{default:Z(()=>[B(De,{name:"view"}),ke(W(o(c)("htmlPreview.preview")),1)]),_:1})):ve("",!0),ye.node.kind==="FILE"?(f(),we(le,{key:3,command:"DOWNLOAD"},{default:Z(()=>[B(De,{name:"download"}),ke(W(o(c)("generated.workspaceFileTree.download")),1)]),_:1})):ve("",!0),e.mutationsEnabled&&ye.node.kind==="DIRECTORY"?(f(),we(le,{key:4,command:"CREATE_FILE"},{default:Z(()=>[B(De,{name:"document-add"}),ke(W(o(c)("generated.workspaceFileTree.newFile")),1)]),_:1})):ve("",!0),e.mutationsEnabled&&ye.node.kind==="DIRECTORY"?(f(),we(le,{key:5,command:"CREATE_DIRECTORY"},{default:Z(()=>[B(De,{name:"folder-add"}),ke(W(o(c)("generated.workspaceFileTree.newFolder")),1)]),_:1})):ve("",!0),ye.node.kind==="DIRECTORY"?(f(),we(le,{key:6,command:"UPLOAD"},{default:Z(()=>[B(De,{name:"upload"}),ke(W(o(c)("generated.workspaceFileTree.uploadFiles")),1)]),_:1})):ve("",!0),B(le,{command:"COPY_PATH"},{default:Z(()=>[B(De,{name:"copy"}),ke(W(o(c)("generated.workspaceFileTree.copyRelativePath")),1)]),_:1}),B(le,{command:"COPY_ABSOLUTE_PATH",disabled:!e.rootPath},{default:Z(()=>[B(De,{name:"copy"}),ke(W(o(c)("generated.workspaceFileTree.copyAbsolutePath")),1)]),_:1},8,["disabled"]),e.localFileManagerEnabled?(f(),we(le,{key:7,command:"REVEAL_LOCAL"},{default:Z(()=>[B(De,{name:"folder-open"}),ke(W(o(c)("generated.workspaceFileTree.openInLocalFileManager")),1)]),_:1})):ve("",!0),e.mutationsEnabled&&ye.node.path!=="."?(f(),we(le,{key:8,command:"RENAME"},{default:Z(()=>[B(De,{name:"edit"}),ke(W(o(c)("generated.workspaceFileTree.rename")),1)]),_:1})):ve("",!0),e.mutationsEnabled&&ye.node.path!=="."?(f(),we(le,{key:9,command:"DELETE",divided:""},{default:Z(()=>[B(De,{name:"delete"}),ke(W(o(c)("generated.workspaceFileTree.delete")),1)]),_:1})):ve("",!0)]),_:2},1024)]),default:Z(()=>[K("button",{class:Ke(["file-tree-more utility-control",{"is-visible":oe(ye.node.path)}]),type:"button","aria-label":o(c)("generated.workspaceFileTree.moreActionsFor",{value0:ye.node.name}),disabled:e.disabled,tabindex:oe(ye.node.path)?0:-1,onClick:ee[0]||(ee[0]=rt(()=>{},["stop"]))},[B(De,{name:"more"})],10,Hb)]),_:2},1032,["onCommand","onVisibleChange"])):(f(),O("span",Bb))],42,Fb))],64));return me.memo=ae,me},ee,3),128))],4)],4),m.value?ve("",!0):(f(),O("p",zb,W(o(c)("workspaceDisplayFilter.empty")),1))],42,$b)}}}),_b=dt(jb,[["__scopeId","data-v-ae226bb2"]]),Yb={class:"file-explorer"},Qb={class:"explorer-toolbar"},Jb=["disabled","aria-label","aria-busy"],Xb=["disabled","aria-label","aria-busy"],Zb={key:2,class:"watch-status",role:"status"},eI={class:"upload-dialog-target"},tI={class:"upload-dialog-list"},nI={key:1},aI={key:2},oI=at({__name:"WorkspaceFilesPanel",props:{service:{},workspacePath:{},localFileManagerEnabled:{type:Boolean},mobileViewport:{type:Boolean},visible:{type:Boolean},watchStatus:{}},emits:["refresh","retryWatch","open","html","download","failure","notice"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=a.service,i=s.tree,l=s.refreshing,v=s.preparing,u=x(""),d=x(),w=x(),k=x(!1),T=x([]),p=x("."),g=x();function R(D,E){return D==="."?E:`${D}/${E}`}async function b(D,E=""){try{return(await Nt.prompt("",D,{closeIcon:qe("close"),inputValue:E,inputPlaceholder:c("generated.workspaceInspector.enterAName"),confirmButtonText:c("generated.workspaceInspector.confirm"),cancelButtonText:c("generated.workspaceInspector.cancel"),inputValidator:X=>X.trim().length>0&&X===X.trim()&&!X.includes("/")&&!X.includes("\\")&&X!=="."&&X!==".."&&X!==".git"?!0:c("generated.workspaceInspector.enterAValidSingleLevelName")})).value}catch{return}}async function C(D,E){const H=s.captureTarget();if(H===void 0)return;const X=()=>s.isCurrentTarget(H);try{if(D==="OPEN"){r("open",E.path,!1);return}if(D==="OPEN_EXTERNAL"){r("open",E.path,!0);return}if(D==="PREVIEW_HTML"){r("html",E.path);return}if(D==="COPY_PATH"){await navigator.clipboard.writeText(E.path),X()&&r("notice",c("generated.workspaceInspector.relativePathCopied"),"info");return}if(D==="COPY_ABSOLUTE_PATH"){if(!a.workspacePath)return;await navigator.clipboard.writeText(sg(a.workspacePath,E.path)),X()&&r("notice",c("generated.workspaceInspector.absolutePathCopied"),"info");return}if(D==="REVEAL_LOCAL"){a.localFileManagerEnabled===!0&&await s.revealLocal(H,E.path);return}if(D==="DOWNLOAD"){r("download",E.path);return}if(D==="UPLOAD"){i.select(E),S();return}if(D==="CREATE_FILE"||D==="CREATE_DIRECTORY"){const _=await b(D==="CREATE_FILE"?c("generated.workspaceInspector.newFile"):c("generated.workspaceInspector.newFolder"));if(_===void 0||!X())return;await s.mutate(H,D,R(E.path,_));return}if(D==="RENAME"){const _=await b(c("generated.workspaceInspector.rename"),E.name);if(_===void 0||_===E.name||!X())return;const U=E.path.includes("/")?E.path.slice(0,E.path.lastIndexOf("/")):".";await s.mutate(H,"MOVE",E.path,R(U,_));return}if(await Nt.confirm(E.kind==="DIRECTORY"?c("generated.workspaceInspector.deleteFolderAndAllOfItsContents",{value0:E.name}):c("generated.workspaceInspector.deleteFile",{value0:E.name}),c("generated.workspaceInspector.confirmDeletion"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("generated.workspaceInspector.delete"),cancelButtonText:c("generated.workspaceInspector.cancel2")}),!X())return;await s.mutate(H,"DELETE",E.path)}catch(_){if(_==="cancel"||_==="close")return;X()&&r("failure",_,c("generated.workspaceInspector.fileOperation"))}}async function I(D,E){const H=s.captureTarget();H!==void 0&&await s.mutate(H,"MOVE",D.path,R(E.path,D.name),"move")}function S(){d.value?.click()}async function m(D,E=i.uploadDirectory()){const H=await s.preflight([...D],E);H===void 0||!a.visible||!s.isCurrentPreflight(H)||(g.value=H,T.value=H.files.map((X,_)=>({...H.candidates[_],id:crypto.randomUUID(),file:X,overwrite:!1})),p.value=E,k.value=!0)}function A(D){const E=D.target;E.files!==null&&m(E.files),E.value=""}function L(D,E){if(E.length===0){r("notice",c("generated.workspaceInspector.onlyFilesCanBeDroppedCompressFolders"),"warning");return}m(E,D)}function y(){const D=g.value,E=D===void 0?void 0:s.submit(D,T.value.map(H=>H.overwrite));E!==void 0&&E>0&&r("notice",c("generated.workspaceInspector.filesWereNotUploadedBecauseOfConflicts",{value0:E}),"warning"),k.value=!1,T.value=[],g.value=void 0}return He(()=>a.visible,(D,E)=>{E&&!D&&(k.value=!1,T.value=[],g.value=void 0)},{flush:"sync"}),t({chooseUploadFiles:S,reveal:(D,E)=>w.value?.reveal(D,E),invalidate:()=>{g.value=void 0},reset:()=>{k.value=!1,T.value=[],g.value=void 0,u.value=""}}),(D,E)=>{const H=Ft,X=bt,_=Un,U=wn,Q=Xt,$=St("tooltip");return f(),O("section",Yb,[K("div",Qb,[K("input",{ref_key:"uploadInput",ref:d,class:"workspace-upload-input",type:"file",multiple:"",onChange:A},null,544),B(H,{modelValue:u.value,"onUpdate:modelValue":E[0]||(E[0]=V=>u.value=V),class:"file-display-filter","aria-label":o(c)("workspaceDisplayFilter.label"),clearable:"",placeholder:o(c)("workspaceDisplayFilter.placeholder"),size:"small","clear-icon":o(qe)("clear-input")},{prefix:Z(()=>[B(De,{name:"search"})]),_:1},8,["modelValue","aria-label","placeholder","clear-icon"]),Le((f(),O("button",{class:"file-explorer-utility-button utility-control",disabled:o(l),"aria-label":o(c)("generated.workspaceInspector.refreshFiles"),"aria-busy":o(l)||void 0,type:"button",onClick:E[1]||(E[1]=V=>r("refresh"))},[B(De,{name:"refresh"})],8,Jb)),[[$,o(c)("generated.workspaceInspector.refreshFiles2")]]),Le((f(),O("button",{class:"file-explorer-utility-button utility-control",disabled:o(v),"aria-label":o(c)("generated.workspaceInspector.uploadFiles"),"aria-busy":o(v)||void 0,type:"button",onClick:S},[o(v)?(f(),we(De,{key:0,name:"loading-action"})):(f(),we(De,{key:1,name:"document-add"}))],8,Xb)),[[$,o(c)("generated.workspaceInspector.uploadFiles2")]])]),(e.watchStatus==="loading"||e.watchStatus==="failed")&&!o(l)&&!o(i).refreshError.value?(f(),we(X,{key:0,class:Ke(["watch-status",{failed:e.watchStatus==="failed"}]),link:"","aria-disabled":e.watchStatus==="loading","aria-busy":e.watchStatus==="loading"||void 0,onClick:E[2]||(E[2]=V=>e.watchStatus==="failed"&&r("retryWatch"))},{default:Z(()=>[e.watchStatus==="loading"?(f(),O(Ve,{key:0},[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["class","aria-disabled","aria-busy"])):ve("",!0),o(i).refreshError.value?Le((f(),we(X,{key:1,"aria-description":o(l)?void 0:o(it)(o(i).refreshError.value.cause),class:Ke(["watch-status",{failed:!o(l)}]),link:"","aria-disabled":o(l),"aria-busy":o(l)||void 0,onClick:E[3]||(E[3]=V=>!o(l)&&r("refresh"))},{default:Z(()=>[o(l)?(f(),O(Ve,{key:0},[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-description","class","aria-disabled","aria-busy"])),[[$,o(l)?"":o(it)(o(i).refreshError.value.cause)]]):o(l)?(f(),O("p",Zb,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)])):ve("",!0),e.visible?(f(),we(_b,{key:3,ref_key:"fileTreeView",ref:w,root:o(i).root.value,"root-path":e.workspacePath,filter:u.value,"selected-path":o(i).selectedPath.value,disabled:o(l),"mutations-enabled":!0,"local-file-manager-enabled":e.localFileManagerEnabled,"mobile-viewport":e.mobileViewport,onToggle:o(i).toggle,onOpen:E[4]||(E[4]=V=>r("open",V.path,!1)),onOpenExternal:E[5]||(E[5]=V=>r("open",V.path,!0)),onAction:C,onMove:I,onLoadMore:o(i).loadMore,onSelect:o(i).select,onDropFiles:L,onInvalidDrop:E[6]||(E[6]=V=>r("notice",o(c)("generated.workspaceInspector.foldersCannotBeDroppedCompressThemBefore"),"warning"))},null,8,["root","root-path","filter","selected-path","disabled","local-file-manager-enabled","mobile-viewport","onToggle","onLoadMore","onSelect"])):ve("",!0),k.value?(f(),we(Q,{key:4,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),modelValue:k.value,"onUpdate:modelValue":E[8]||(E[8]=V=>k.value=V),class:"upload-confirm-dialog",title:o(c)("generated.workspaceInspector.confirmFileUpload"),"append-to-body":"",width:"560px","close-icon":o(qe)("close")},{footer:Z(()=>[B(X,{onClick:E[7]||(E[7]=V=>k.value=!1)},{default:Z(()=>[ke(W(o(c)("generated.workspaceInspector.cancel4")),1)]),_:1}),B(X,{type:"primary",onClick:y},{default:Z(()=>[ke(W(o(c)("generated.workspaceInspector.startUpload")),1)]),_:1})]),default:Z(()=>[K("p",eI,[ke(W(o(c)("generated.workspaceInspector.targetDirectory"))+": ",1),K("code",null,W(p.value),1)]),K("ul",tI,[(f(!0),O(Ve,null,Je(T.value,V=>(f(),O("li",{key:V.id},[K("span",null,[K("strong",null,W(V.file.name),1),K("small",null,W(o(ja)(V.file.size)),1)]),V.status==="EXISTS_FILE"?(f(),we(U,{key:0,modelValue:V.overwrite,"onUpdate:modelValue":N=>V.overwrite=N,"aria-label":o(c)("generated.workspaceInspector.existingFileHandling"),size:"small","clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down")},{default:Z(()=>[B(_,{value:!1,label:o(c)("generated.workspaceInspector.skip")},null,8,["label"]),B(_,{value:!0,label:o(c)("generated.workspaceInspector.overwrite")},null,8,["label"])]),_:1},8,["modelValue","onUpdate:modelValue","aria-label","clear-icon","suffix-icon"])):V.status==="READY"?(f(),O("small",nI,W(o(c)("generated.workspaceInspector.newFile2")),1)):(f(),O("small",aI,W(o(c)("generated.workspaceInspector.cannotUpload"))+": "+W(V.status==="EXISTS_DIRECTORY"?o(c)("generated.workspaceInspector.aDirectoryHasTheSameName"):o(c)("generated.workspaceInspector.invalidNameOrDuplicateInBatch")),1))]))),128))])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ve("",!0)])}}}),rI=dt(oI,[["__scopeId","data-v-d6b296ea"]]),iI={class:"html-browser"},sI={class:"html-browser-file-name"},lI={class:"html-browser-actions"},cI={key:0,class:"html-browser-error",role:"alert"},dI=at({__name:"WorkspaceHtmlBrowser",props:{nodeId:{},workspaceId:{},path:{},csrfToken:{},renewCsrfToken:{type:Function}},emits:["source","external"],setup(e,{emit:t}){const n=e,a=t,r=rg(Za({csrfToken:()=>n.csrfToken,renewCsrfToken:()=>n.renewCsrfToken()})),s=r.state;function i(){r.open({nodeId:n.nodeId,workspaceId:n.workspaceId,path:n.path})}return He(()=>[n.nodeId,n.workspaceId,n.path],i,{immediate:!0}),mt(r.release),(l,v)=>{const u=bt,d=St("tooltip");return f(),O("section",iI,[K("header",null,[Le((f(),O("span",sI,[ke(W(e.path.split("/").at(-1)),1)])),[[d,e.path]]),K("div",lI,[Le((f(),we(u,{text:"",circle:"",size:"small","aria-label":o(c)("htmlPreview.reload"),onClick:i},{default:Z(()=>[B(De,{name:"refresh"})]),_:1},8,["aria-label"])),[[d,o(c)("htmlPreview.reload")]]),Le((f(),we(u,{text:"",circle:"",size:"small","aria-label":o(c)("htmlPreview.source"),onClick:v[0]||(v[0]=w=>a("source",e.path))},{default:Z(()=>[B(De,{name:"document"})]),_:1},8,["aria-label"])),[[d,o(c)("htmlPreview.source")]]),Le((f(),we(u,{text:"",circle:"",size:"small","aria-label":o(c)("htmlPreview.external"),onClick:v[1]||(v[1]=w=>a("external",e.path))},{default:Z(()=>[B(De,{name:"external-link"})]),_:1},8,["aria-label"])),[[d,o(c)("htmlPreview.external")]])])]),o(s).error!==void 0?(f(),O("p",cI,W(o(Cr)(o(s).error,e.path)),1)):ve("",!0),B(og,{url:o(s).url,loading:o(s).loading,title:e.path},null,8,["url","loading","title"])])}}}),uI=dt(dI,[["__scopeId","data-v-d1ed0624"]]),vI={class:"session-group-tabs"},fI=["aria-label"],pI=["data-group","aria-selected","tabindex","aria-label","onClick","onKeydown"],gI={class:"group-label"},mI=at({__name:"SessionGroupTabs",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=t,a=["MAIN","CHILD"];function r(i){return c(i==="MAIN"?"sessionGroups.main":"sessionGroups.child")}function s(i,l){if(!["ArrowLeft","ArrowRight","Home","End"].includes(i.key))return;i.preventDefault();const v=i.key==="Home"?"MAIN":i.key==="End"||l==="MAIN"?"CHILD":"MAIN";n("update:modelValue",v),i.currentTarget.parentElement?.querySelector(`[data-group="${v}"]`)?.focus()}return(i,l)=>(f(),O("div",vI,[K("div",{class:"group-options",role:"tablist","aria-label":o(c)("sessionGroups.label")},[(f(),O(Ve,null,Je(a,v=>K("button",{key:v,type:"button",role:"tab","data-group":v,"aria-selected":e.modelValue===v,tabindex:e.modelValue===v?0:-1,"aria-label":r(v),onClick:u=>n("update:modelValue",v),onKeydown:u=>s(u,v)},[K("span",gI,W(o(c)(v==="MAIN"?"sessionGroups.mainTab":"sessionGroups.childTab")),1)],40,pI)),64))],8,fI)]))}}),yc=dt(mI,[["__scopeId","data-v-54b2f30b"]]);function hI(e){const t=x([]),n=x(!1);async function a(r,s){n.value=!0;try{const i=await e(`/api/workspaces/${encodeURIComponent(s)}/effective-skills?nodeId=${encodeURIComponent(r)}`);t.value=i.skills}finally{n.value=!1}}return{skills:t,loading:n,load:a}}const _n=new WeakMap;function Zs(e,t){const n=Array.from(e.children).filter(a=>a instanceof HTMLElement&&a.classList.contains("mar-session-reorder-item"));return t.items.flatMap((a,r)=>{const s=n[r];return s===void 0?[]:[{key:a.key,element:s}]})}function Yn(e){for(const t of e.animations)t.cancel();e.animations.clear()}const wc={mounted(e,t){const n=window.matchMedia("(prefers-reduced-motion: reduce)"),a={rendered:t.value,animations:new Set,motionPreference:n,onMotionPreferenceChange(r){r.matches&&Yn(a)},onPointerDown(r){const s=r.target.closest('.mar-session-reorder-item[draggable="true"]');r.button===0&&s?.parentElement===e&&Yn(a)}};n.addEventListener("change",a.onMotionPreferenceChange),e.addEventListener("pointerdown",a.onPointerDown,!0),_n.set(e,a)},beforeUpdate(e,t){const n=_n.get(e);if(n===void 0)return;const a=n.pending?.next??n.rendered,r=n.pending??={previous:n.rendered,next:t.value};if(r.next=t.value,r.positions!==void 0||!Hi(r.previous,r.next)||n.motionPreference.matches)return;const s=e.getBoundingClientRect().top;r.positions=new Map(Zs(e,a).map(i=>[i.key,i.element.getBoundingClientRect().top-s]))},updated(e){const t=_n.get(e);if(t===void 0)return;const n=t.pending;if(n===void 0)return;delete t.pending;const{previous:a,next:r,positions:s}=n;t.rendered=r;const i=t.motionPreference.matches;if(!Hi(a,r)||i||s===void 0){(!(a.ready&&r.ready&&a.context===r.context&&a.items.length===r.items.length&&a.items.every((d,w)=>d.key===r.items[w]?.key&&d.pin===r.items[w]?.pin))||i)&&Yn(t);return}Yn(t);const l=e.getBoundingClientRect().top,v=Zs(e,r).flatMap(u=>{const d=s.get(u.key);return d===void 0?[]:[{element:u.element,delta:d-(u.element.getBoundingClientRect().top-l)}]});for(const u of v){if(Math.abs(u.delta)<.5)continue;const d=u.element.animate([{transform:`translateY(${u.delta}px)`},{transform:"translateY(0px)"}],{duration:220,easing:"cubic-bezier(0.2, 0, 0, 1)"});t.animations.add(d);const w=()=>t.animations.delete(d);d.finished.then(w,w)}},beforeUnmount(e){const t=_n.get(e);t!==void 0&&(t.motionPreference.removeEventListener("change",t.onMotionPreferenceChange),e.removeEventListener("pointerdown",t.onPointerDown,!0),Yn(t),_n.delete(e))}},yI={class:"schedule-time-fields"},wI={class:"schedule-timezone"},kI={class:"schedule-timezone"},bI={class:"schedule-enabled"},II={class:"schedule-timezone"},SI={key:3,class:"schedule-history"},CI={key:0},TI={key:1},EI={key:2},RI={key:3},AI={key:4,class:"schedule-history"},NI={key:0},DI=at({__name:"SessionScheduleDialog",props:{modelValue:{type:Boolean},session:{},nodeId:{},workspaceId:{},request:{type:Function}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,a=t,r=j({get:()=>n.modelValue,set:oe=>{l.value||a("update:modelValue",oe)}}),s=x(!1),i=x(),l=j(()=>i.value!==void 0),v=x(null),u=x(!1),d=x(""),w=x(null),k=x([]),T=x(1),p=x(0),g=x([]),R=x(!1),b=x(),C=Fn({objective:"",time:"09:00",hourlyTime:"00:00",cronExpression:""}),I={objective:[{validator:(oe,P,G)=>P.trim().length>0&&P.trim().length<=2e4?G():G(new Error(c("generated.scheduledSession.objectiveRequired"))),trigger:"blur"}],time:[{validator:(oe,P,G)=>P?G():G(new Error(c("generated.scheduledSession.timeRequired")))}],hourlyTime:[{validator:(oe,P,G)=>P?G():G(new Error(c("generated.scheduledSession.timeRequired")))}],cronExpression:[{validator:(oe,P,G)=>P!==null&&N(P)?G():G(new Error(c("generated.scheduledSession.cronRequired"))),trigger:"blur"}]},S=x("SIMPLE"),m=x("DAILY"),A=x(1),L=x("UTC"),y=x(!1),D=x(!1),E=j(()=>u.value?c(v.value===null?"generated.scheduledSession.notConfigured":y.value?"generated.scheduledSession.enabled":"generated.scheduledSession.paused"):"");let H=0,X=!1;mt(()=>{X=!0,H++}),He(()=>[n.modelValue,n.session?.id,n.nodeId,n.workspaceId],()=>{H++,v.value=null,u.value=!1,y.value=!1,d.value="",w.value=null,k.value=[],T.value=1,p.value=0,s.value=!1,g.value=[],C.objective="",C.cronExpression="",S.value="SIMPLE",n.modelValue&&n.session!==void 0&&U()},{immediate:!0});function _(){return`/api/agent-sessions/${encodeURIComponent(n.session.id)}/schedule`}async function U(oe=1,P=!0){if(X||n.session===void 0)return;const G=++H,ue=n.session.id;s.value=!0,P&&(u.value=!1);try{const ne=new URLSearchParams({nodeId:n.nodeId,workspaceId:n.workspaceId,occurrencePage:String(oe)}),M=await n.request(`/api/agent-sessions/${encodeURIComponent(ue)}/schedule?${ne}`);if(G!==H||!n.modelValue||n.session?.id!==ue||(k.value=M.occurrences,T.value=M.occurrencePage??1,p.value=M.occurrenceTotal??0,!P))return;if(v.value=M.task,d.value=M.currentUserName,w.value=M.notifyUserName,g.value=M.proposals,R.value=M.canResolveProposals,L.value=M.nodeTimezone,M.task!==null){C.objective=M.task.objective,y.value=M.task.enabled,D.value=M.task.notifyOnTerminal,C.cronExpression=M.task.cron;const ee=V(M.task.cron);ee===void 0?S.value="CRON":(S.value="SIMPLE",m.value=ee.cadence,C.time=ee.time,C.hourlyTime=ee.hourlyTime,A.value=ee.weekday)}else C.objective="",C.cronExpression="",S.value="SIMPLE",m.value="DAILY",C.time="09:00",C.hourlyTime="00:00",A.value=1,y.value=!1,D.value=!1;u.value=!0}catch(ne){G===H&&et(it(ne,c("generated.scheduledSession.loadFailed")),"error",ne)}finally{G===H&&(s.value=!1)}}function Q(oe){!s.value&&!l.value&&U(oe,!1)}function $(){if(S.value==="CRON")return C.cronExpression.trim();const[oe,P]=C.time.split(":").map(Number);return m.value==="HOURLY"?`${Number(C.hourlyTime.split(":")[1])} * * * *`:m.value==="DAILY"?`${P} ${oe} * * *`:`${P} ${oe} * * ${A.value}`}function V(oe){const P=oe.trim().split(/\s+/);if(P.length!==5||!/^\d+$/.test(P[0]??"")||P[1]!=="*"&&!/^\d+$/.test(P[1]??"")||P[2]!=="*"||P[3]!=="*"||P[4]!=="*"&&!/^\d+$/.test(P[4]??""))return;const G=Number(P[0]),ue=P[1]==="*"?9:Number(P[1]),ne=P[4]==="*"?1:Number(P[4]);if(!(G>59||ue>23||ne>6))return{cadence:P[1]==="*"?"HOURLY":P[4]==="*"?"DAILY":"WEEKLY",time:`${String(ue).padStart(2,"0")}:${String(G).padStart(2,"0")}`,hourlyTime:`00:${String(G).padStart(2,"0")}`,weekday:ne}}function N(oe){const P=oe.trim();if(P.length===0||P.length>64)return!1;const G=P.split(/\s+/);if(G.length!==5||G.some(ne=>ne.length===0))return!1;const ue=[[0,59],[0,23],[1,31],[1,12],[0,7]];return G.every((ne,M)=>h(ne,ue[M][0],ue[M][1]))}function h(oe,P,G){const ue=new Set;for(const ne of oe.split(",")){const M=ne.split("/");if(M.length>2||M.some(Me=>Me.length===0))return!1;const ee=M[0]??"",le=M[1]===void 0?1:F(M[1],1,G-P+1);if(le===void 0)return!1;let Ee,xe;if(ee==="*")Ee=P,xe=G;else if(/^\d+-\d+$/.test(ee)){const Me=ee.split("-"),Se=F(Me[0],P,G),ye=F(Me[1],P,G);if(Se===void 0||ye===void 0||Se>ye)return!1;Ee=Se,xe=ye}else if(M.length===1){const Me=F(ee,P,G);if(Me===void 0)return!1;Ee=Me,xe=Me}else return!1;if(M[1]!==void 0&&Ee===xe)return!1;for(let Me=Ee;Me<=xe;Me+=le)ue.add(Me)}return ue.size>0}function F(oe,P,G){if(oe===void 0||!/^(0|[1-9][0-9]*)$/.test(oe))return;const ue=Number(oe);return Number.isSafeInteger(ue)&&ue>=P&&ue<=G?ue:void 0}async function z(){if(!(l.value||s.value||n.session===void 0||!u.value||!await b.value?.validate().catch(()=>!1))&&!(l.value||s.value)){i.value="save";try{await n.request(_(),{method:"PUT",body:JSON.stringify({nodeId:n.nodeId,workspaceId:n.workspaceId,objective:C.objective.trim(),cron:$(),enabled:y.value,notifyOnTerminal:D.value,...v.value===null?{}:{expectedRevision:v.value.revision}})}),et(c("generated.scheduledSession.saved"),"success")}catch(oe){et(it(oe,c("generated.scheduledSession.saveFailed")),"error",oe);return}finally{i.value=void 0}await U()}}async function fe(){if(!(v.value===null||!u.value||l.value||s.value)){i.value="remove";try{await n.request(_(),{method:"DELETE",body:JSON.stringify({nodeId:n.nodeId,workspaceId:n.workspaceId,expectedRevision:v.value.revision})}),et(c("generated.scheduledSession.removed"),"success")}catch(oe){et(it(oe,c("generated.scheduledSession.removeFailed")),"error",oe);return}finally{i.value=void 0}await U()}}async function J(oe,P){if(!(n.session===void 0||l.value||s.value)){i.value=`${P?"accept":"reject"}:${oe}`;try{await n.request(`${_()}/proposals/${encodeURIComponent(oe)}/resolve`,{method:"POST",body:JSON.stringify({nodeId:n.nodeId,workspaceId:n.workspaceId,accept:P})})}catch(G){et(it(G,c("generated.scheduledSession.proposalFailed")),"error",G);return}finally{i.value=void 0}await U()}}function re(oe){l.value||oe()}function ge(oe){return oe===null?"—":Gt(oe,v.value?.timezone??L.value)}function ce(oe){const G={CLAIMED:"occurrenceClaimed",SUBMITTED:"occurrenceSubmitted",SUCCEEDED:"occurrenceSucceeded",SKIPPED:"occurrenceSkipped",FAILED:"occurrenceFailed"}[oe];return G===void 0?oe:c(`generated.scheduledSession.${G}`)}return(oe,P)=>{const G=Ft,ue=va,ne=Sg,M=Ig,ee=Un,le=wn,Ee=rm,xe=xg,Me=Tg,Se=bt,ye=Cg,Fe=ua,Ye=Xt,nt=ca;return r.value?(f(),we(Ye,{key:0,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),modelValue:r.value,"onUpdate:modelValue":P[10]||(P[10]=ae=>r.value=ae),"before-close":re,"show-close":!l.value,"close-on-click-modal":!l.value,"close-on-press-escape":!l.value,title:o(c)("generated.scheduledSession.title"),width:"min(560px, calc(100vw - 32px))","append-to-body":"","close-icon":o(qe)("close")},{footer:Z(()=>[v.value!==null?(f(),we(Se,{key:0,disabled:l.value||s.value||!u.value,loading:i.value==="remove","loading-icon":o(qe)("loading-action"),type:"danger",onClick:fe},{default:Z(()=>[ke(W(o(c)("generated.scheduledSession.remove")),1)]),_:1},8,["disabled","loading","loading-icon"])):ve("",!0),B(Se,{disabled:l.value,onClick:P[9]||(P[9]=ae=>r.value=!1)},{default:Z(()=>[ke(W(o(c)("common.close")),1)]),_:1},8,["disabled"]),B(Se,{type:"primary",loading:i.value==="save",disabled:l.value||s.value||!u.value,onClick:z,"loading-icon":o(qe)("loading-action")},{default:Z(()=>[ke(W(o(c)("generated.scheduledSession.save")),1)]),_:1},8,["loading","disabled","loading-icon"])]),default:Z(()=>[Le((f(),we(Fe,{ref_key:"formRef",ref:b,"aria-busy":s.value,model:C,rules:I,disabled:l.value||s.value||!u.value,class:"schedule-form","label-position":"left","label-width":"116px"},{default:Z(()=>[B(ue,{label:o(c)("generated.scheduledSession.objective"),prop:"objective"},{default:Z(()=>[B(G,{modelValue:C.objective,"onUpdate:modelValue":P[0]||(P[0]=ae=>C.objective=ae),type:"textarea",rows:4,maxlength:2e4,placeholder:o(c)("generated.scheduledSession.objective"),"aria-label":o(c)("generated.scheduledSession.objective")},null,8,["modelValue","placeholder","aria-label"])]),_:1},8,["label"]),B(ue,{label:o(c)("generated.scheduledSession.mode")},{default:Z(()=>[B(M,{modelValue:S.value,"onUpdate:modelValue":P[1]||(P[1]=ae=>S.value=ae),"aria-label":o(c)("generated.scheduledSession.mode")},{default:Z(()=>[B(ne,{value:"SIMPLE"},{default:Z(()=>[ke(W(o(c)("generated.scheduledSession.simpleMode")),1)]),_:1}),B(ne,{value:"CRON"},{default:Z(()=>[ke(W(o(c)("generated.scheduledSession.cronMode")),1)]),_:1})]),_:1},8,["modelValue","aria-label"])]),_:1},8,["label"]),S.value==="SIMPLE"?(f(),O(Ve,{key:0},[B(ue,{label:o(c)("generated.scheduledSession.repeat")},{default:Z(()=>[B(le,{modelValue:m.value,"onUpdate:modelValue":P[2]||(P[2]=ae=>m.value=ae),"aria-label":o(c)("generated.scheduledSession.repeat"),"clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down")},{default:Z(()=>[B(ee,{value:"HOURLY",label:o(c)("generated.scheduledSession.hourly")},null,8,["label"]),B(ee,{value:"DAILY",label:o(c)("generated.scheduledSession.daily")},null,8,["label"]),B(ee,{value:"WEEKLY",label:o(c)("generated.scheduledSession.weekly")},null,8,["label"])]),_:1},8,["modelValue","aria-label","clear-icon","suffix-icon"])]),_:1},8,["label"]),K("div",yI,[m.value==="WEEKLY"?(f(),we(ue,{key:0,label:o(c)("generated.scheduledSession.weekday")},{default:Z(()=>[B(le,{modelValue:A.value,"onUpdate:modelValue":P[3]||(P[3]=ae=>A.value=ae),"aria-label":o(c)("generated.scheduledSession.weekday"),"clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down")},{default:Z(()=>[(f(),O(Ve,null,Je(7,ae=>B(ee,{key:ae,value:ae-1,label:o(c)(`generated.scheduledSession.weekday${ae-1}`)},null,8,["value","label"])),64))]),_:1},8,["modelValue","aria-label","clear-icon","suffix-icon"])]),_:1},8,["label"])):ve("",!0),m.value==="HOURLY"?(f(),we(ue,{key:1,label:o(c)("generated.scheduledSession.minute"),prop:"hourlyTime"},{default:Z(()=>[B(Ee,{modelValue:C.hourlyTime,"onUpdate:modelValue":P[4]||(P[4]=ae=>C.hourlyTime=ae),start:"00:00",step:"00:01",end:"00:59","aria-label":o(c)("generated.scheduledSession.minute"),"prefix-icon":o(qe)("clock"),"clear-icon":o(qe)("clear-input")},null,8,["modelValue","aria-label","prefix-icon","clear-icon"])]),_:1},8,["label"])):(f(),we(ue,{key:2,label:o(c)("generated.scheduledSession.time"),prop:"time"},{default:Z(()=>[B(xe,{modelValue:C.time,"onUpdate:modelValue":P[5]||(P[5]=ae=>C.time=ae),format:"HH:mm","value-format":"HH:mm","aria-label":o(c)("generated.scheduledSession.time"),"prefix-icon":o(qe)("clock"),"clear-icon":o(qe)("clear-input")},null,8,["modelValue","aria-label","prefix-icon","clear-icon"])]),_:1},8,["label"]))])],64)):(f(),O(Ve,{key:1},[B(ue,{label:o(c)("generated.scheduledSession.cronExpression"),prop:"cronExpression"},{default:Z(()=>[B(G,{modelValue:C.cronExpression,"onUpdate:modelValue":P[6]||(P[6]=ae=>C.cronExpression=ae),maxlength:"64",placeholder:o(c)("generated.scheduledSession.cronPlaceholder"),"aria-label":o(c)("generated.scheduledSession.cronExpression")},null,8,["modelValue","placeholder","aria-label"])]),_:1},8,["label"]),K("p",wI,W(o(c)("generated.scheduledSession.cronHint")),1)],64)),K("p",kI,W(o(c)("generated.scheduledSession.nodeTimezone",{timezone:L.value})),1),B(ue,{label:o(c)("generated.scheduledSession.status")},{default:Z(()=>[K("div",bI,[B(Me,{modelValue:y.value,"onUpdate:modelValue":P[7]||(P[7]=ae=>y.value=ae),disabled:!u.value,"aria-label":o(c)("generated.scheduledSession.enabled")},null,8,["modelValue","disabled","aria-label"]),K("span",null,W(E.value),1)])]),_:1},8,["label"]),B(ue,{label:o(c)("generated.scheduledSession.notifyUser")},{default:Z(()=>[K("span",null,W(v.value===null?d.value:w.value??o(c)("generated.scheduledSession.userUnavailable")),1)]),_:1},8,["label"]),B(ue,{label:o(c)("generated.scheduledSession.terminalNotifications")},{default:Z(()=>[B(Me,{modelValue:D.value,"onUpdate:modelValue":P[8]||(P[8]=ae=>D.value=ae),"aria-label":o(c)("generated.scheduledSession.terminalNotifications")},null,8,["modelValue","aria-label"])]),_:1},8,["label"]),K("p",II,W(o(c)("generated.scheduledSession.notifyUserHint")),1),v.value!==null?(f(),we(ue,{key:2,label:o(c)("generated.scheduledSession.nextRun")},{default:Z(()=>[K("span",null,W(ge(v.value.nextRunAt)),1)]),_:1},8,["label"])):ve("",!0),g.value.length>0?(f(),O("div",SI,[K("strong",null,W(o(c)("generated.scheduledSession.proposals")),1),(f(!0),O(Ve,null,Je(g.value,ae=>(f(),O("div",{key:ae.id,class:"schedule-proposal"},[K("p",null,W(ge(ae.created_at))+" · "+W(o(c)("generated.scheduledSession.proposedBy",{userId:ae.proposed_by_user_id})),1),ae.objective?(f(),O("p",CI,W(o(c)("generated.scheduledSession.objective"))+":"+W(ae.objective),1)):ve("",!0),ae.cron?(f(),O("p",TI,W(o(c)("generated.scheduledSession.repeat"))+":"+W(ae.cron),1)):ve("",!0),ae.timezone?(f(),O("p",EI,W(o(c)("generated.scheduledSession.timezone"))+":"+W(ae.timezone),1)):ve("",!0),R.value?(f(),O("div",RI,[B(Se,{size:"small",disabled:l.value,loading:i.value===`reject:${ae.id}`,"loading-icon":o(qe)("loading-action"),onClick:me=>J(ae.id,!1)},{default:Z(()=>[ke(W(o(c)("generated.scheduledSession.reject")),1)]),_:1},8,["disabled","loading","loading-icon","onClick"]),B(Se,{size:"small",type:"primary",disabled:l.value,loading:i.value===`accept:${ae.id}`,"loading-icon":o(qe)("loading-action"),onClick:me=>J(ae.id,!0)},{default:Z(()=>[ke(W(o(c)("generated.scheduledSession.accept")),1)]),_:1},8,["disabled","loading","loading-icon","onClick"])])):ve("",!0)]))),128))])):ve("",!0),k.value.length>0?(f(),O("div",AI,[K("strong",null,W(o(c)("generated.scheduledSession.history")),1),(f(!0),O(Ve,null,Je(k.value,ae=>(f(),O("p",{key:ae.id},[ke(W(ge(ae.due_at))+" · "+W(ce(ae.status)),1),ae.code?(f(),O("span",NI," · "+W(ae.code),1)):ve("",!0)]))),128)),p.value>0?(f(),we(ye,{key:0,"current-page":T.value,"page-size":10,total:p.value,disabled:s.value||l.value,"pager-count":5,layout:"prev, pager, next",onCurrentChange:Q,"prev-icon":o(qe)("chevron-left"),"next-icon":o(qe)("chevron-right")},null,8,["current-page","total","disabled","prev-icon","next-icon"])):ve("",!0)])):ve("",!0)]),_:1},8,["aria-busy","model","disabled"])),[[nt,s.value]])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","show-close","close-on-click-modal","close-on-press-escape","title","close-icon"])):ve("",!0)}}}),PI=dt(DI,[["__scopeId","data-v-3ff30b52"]]);function OI(e){const t=e.nodeId,n=`/api/agent-sessions/${encodeURIComponent(e.sessionId)}`;return{async read(){return(await e.request(`${n}?nodeId=${encodeURIComponent(t)}`)).session.sessionPrompt??""},async save(a){await e.request(`${n}/metadata`,{method:"PATCH",body:JSON.stringify({nodeId:t,sessionPrompt:a.trim()||null})})}}}const LI={class:"session-prompt-description"},WI=at({__name:"SessionPromptDialog",props:{nodeId:{},sessionId:{},request:{type:Function}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,r=OI(n),s=x(),i=Fn({prompt:""}),l=x(!0),v=x(!1),u=x(!1);let d=!1;mt(()=>{d=!0});const w={prompt:[{validator:(T,p,g)=>{p.trim().length<=2e4?g():g(new Error(c("generated.sessionPrompt.tooLong")))},trigger:"blur"}]};Dt(async()=>{try{const T=await r.read();d||(i.prompt=T,u.value=!0)}catch(T){d||et(it(T),"error",T)}finally{d||(l.value=!1)}});async function k(){if(!(!u.value||v.value)){v.value=!0;try{if(!await s.value?.validate().catch(()=>!1))return;await r.save(i.prompt),d||a("close")}catch(T){d||et(it(T),"error",T)}finally{d||(v.value=!1)}}}return(T,p)=>{const g=Ft,R=va,b=ua,C=bt,I=Xt,S=ca;return f(),we(I,{onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),"model-value":!0,title:o(c)("generated.sessionPrompt.title"),width:"min(640px, calc(100vw - 32px))","append-to-body":"","close-on-click-modal":!1,"before-close":m=>{v.value||m()},onClosed:p[2]||(p[2]=m=>a("close")),"close-icon":o(qe)("close")},{footer:Z(()=>[B(C,{disabled:v.value,onClick:p[1]||(p[1]=m=>a("close"))},{default:Z(()=>[ke(W(o(c)("generated.sessionPrompt.cancel")),1)]),_:1},8,["disabled"]),B(C,{type:"primary",disabled:!u.value,loading:v.value,onClick:k,"loading-icon":o(qe)("loading-action")},{default:Z(()=>[ke(W(o(c)("generated.sessionPrompt.save")),1)]),_:1},8,["disabled","loading","loading-icon"])]),default:Z(()=>[K("p",LI,W(o(c)("generated.sessionPrompt.description")),1),Le((f(),we(b,{ref_key:"formRef",ref:s,model:i,rules:w,"label-position":"top",onSubmit:rt(k,["prevent"])},{default:Z(()=>[B(R,{prop:"prompt",label:o(c)("generated.sessionPrompt.title")},{default:Z(()=>[B(g,{modelValue:i.prompt,"onUpdate:modelValue":p[0]||(p[0]=m=>i.prompt=m),type:"textarea",rows:10,disabled:!u.value||v.value,placeholder:o(c)("generated.sessionPrompt.placeholder")},null,8,["modelValue","disabled","placeholder"])]),_:1},8,["label"])]),_:1},8,["model"])),[[S,l.value]])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","title","before-close","close-icon"])}}}),MI=dt(WI,[["__scopeId","data-v-139b2f42"]]);function xI(e,t){const n=x([]),a=x(),r=x(!1),s=`/api/agent-sessions/${encodeURIComponent(e.sessionId)}/shares`,i=new URLSearchParams({nodeId:e.nodeId,workspaceId:e.workspaceId});async function l(){const w=await t(`${s}?${i}`);n.value=Ui.array().parse(w.shares)}async function v(w){r.value=!0;try{const k=await t(s,{method:"POST",body:JSON.stringify({nodeId:e.nodeId,workspaceId:e.workspaceId,expiresAt:w})}),T={share:Ui.parse(k.share),password:Fi.parse(k.password)};a.value=T,n.value=[T.share,...n.value]}finally{r.value=!1}}async function u(w){r.value=!0;try{await t(`${s}/${encodeURIComponent(w)}?${i}`,{method:"DELETE"}),n.value=n.value.filter(k=>k.id!==w),a.value?.share.id===w&&(a.value=void 0)}finally{r.value=!1}}async function d(w,k){const T=await t(`${s}/${encodeURIComponent(w)}/copy?${i}`,{method:"POST",body:JSON.stringify(k===void 0?{}:{password:k})});return Fi.nullable().parse(T.password)}return{shares:n,created:a,busy:r,load:l,create:v,remove:u,copyPassword:d}}const $I={key:0,class:"created-share","aria-live":"polite"},FI={class:"share-text"},UI=at({__name:"SessionShareDialog",props:{target:{},request:{type:Function}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,r=xI(n.target,n.request),{shares:s,created:i,busy:l}=r,v=x(),u=x({expiresAt:null}),d={expiresAt:[{validator:(b,C,I)=>I(C!==null&&(!Number.isFinite(+C)||+C<=Date.now())?new Error(c("sessionShare.futureTime")):void 0),trigger:"change"}]},w=b=>new URL(`/share/${encodeURIComponent(b)}`,location.origin).toString(),k=j(()=>i.value?c("sessionShare.shareText",{link:w(i.value.share.id),password:i.value.password}):"");async function T(){if(await v.value?.validate().catch(()=>!1))try{await r.create(u.value.expiresAt?.toISOString()??null)}catch(b){et(it(b),"error",b)}}async function p(b){try{await Nt.confirm(c("sessionShare.deleteWarning"),c("sessionShare.delete"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning"})}catch{return}try{await r.remove(b),et(c("sessionShare.deleted"),"success")}catch(C){et(it(C),"error",C)}}async function g(b){try{await navigator.clipboard.writeText(b),et(c("sessionShare.copied"),"info")}catch(C){et(it(C),"error",C)}}Dt(()=>{r.load().catch(b=>et(it(b),"error",b))});async function R(b){try{let C=await r.copyPassword(b);if(C===null){const I=await Nt.prompt(c("sessionShare.restorePassword"),c("sessionShare.password"),{closeIcon:qe("close"),inputType:"password",inputPattern:/^[0-9]{6}$/u,inputErrorMessage:c("sessionShare.passwordFormat")});C=await r.copyPassword(b,I.value)}C!==null&&await g(c("sessionShare.shareText",{link:w(b),password:C}))}catch(C){C!=="cancel"&&C!=="close"&&et(it(C),"error",C)}}return(b,C)=>{const I=bg,S=va,m=bt,A=ua,L=Sr,y=Ag,D=da,E=Rg,H=Xt;return f(),we(H,{onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),"model-value":!0,title:o(c)("sessionShare.title"),width:"min(1000px, calc(100vw - 32px))","append-to-body":"",onClose:C[2]||(C[2]=X=>a("close")),"close-icon":o(qe)("close")},{default:Z(()=>[B(A,{ref_key:"form",ref:v,model:u.value,rules:d,"label-position":"top",onSubmit:rt(T,["prevent"])},{default:Z(()=>[B(S,{prop:"expiresAt",label:o(c)("sessionShare.expiresAt")},{default:Z(()=>[B(I,{modelValue:u.value.expiresAt,"onUpdate:modelValue":C[0]||(C[0]=X=>u.value.expiresAt=X),type:"datetime",placeholder:o(c)("sessionShare.permanent"),clearable:"","prefix-icon":o(qe)("calendar"),"clear-icon":o(qe)("clear-input")},{"prev-month":Z(()=>[B(De,{name:"chevron-left"})]),"next-month":Z(()=>[B(De,{name:"chevron-right"})]),"prev-year":Z(()=>[B(De,{name:"chevrons-left"})]),"next-year":Z(()=>[B(De,{name:"chevrons-right"})]),_:1},8,["modelValue","placeholder","prefix-icon","clear-icon"])]),_:1},8,["label"]),B(m,{type:"primary","native-type":"submit",loading:o(l),"loading-icon":o(qe)("loading-action")},{default:Z(()=>[ke(W(o(c)("sessionShare.create")),1)]),_:1},8,["loading","loading-icon"])]),_:1},8,["model"]),o(i)?(f(),O("section",$I,[K("p",FI,W(k.value),1),B(m,{icon:o(qe)("copy"),onClick:C[1]||(C[1]=X=>g(k.value))},{default:Z(()=>[ke(W(o(c)("sessionShare.copy")),1)]),_:1},8,["icon"])])):ve("",!0),K("h3",null,W(o(c)("sessionShare.records")),1),B(E,{data:o(s),"empty-text":o(c)("sessionShare.noRecords")},{default:Z(()=>[B(y,{label:o(c)("sessionShare.link"),"min-width":"230"},{default:Z(({row:X})=>[B(L,{href:w(X.id),target:"_blank",rel:"noopener"},{default:Z(()=>[ke(W(w(X.id)),1)]),_:2},1032,["href"])]),_:1},8,["label"]),B(y,{label:o(c)("sessionShare.createdAt"),prop:"createdAt",sortable:"","min-width":"215"},{default:Z(({row:X})=>[ke(W(o(Gt)(X.createdAt)),1)]),_:1},8,["label"]),B(y,{label:o(c)("sessionShare.expiresAt"),prop:"expiresAt",sortable:"","min-width":"215"},{default:Z(({row:X})=>[ke(W(X.expiresAt===null?o(c)("sessionShare.permanent"):o(Gt)(X.expiresAt)),1)]),_:1},8,["label"]),B(y,{label:o(c)("sessionShare.status"),"min-width":"100"},{default:Z(({row:X})=>[B(D,{type:X.expiresAt!==null&&X.expiresAt<=Date.now()?"info":"success"},{default:Z(()=>[ke(W(o(c)(X.expiresAt!==null&&X.expiresAt<=Date.now()?"sessionShare.expired":"sessionShare.active")),1)]),_:2},1032,["type"])]),_:1},8,["label"]),B(y,{label:o(c)("sessionShare.actions"),"min-width":"180"},{default:Z(({row:X})=>[B(m,{link:"",icon:o(qe)("copy"),disabled:o(l),onClick:_=>R(X.id)},{default:Z(()=>[ke(W(o(c)("sessionShare.copy")),1)]),_:1},8,["icon","disabled","onClick"]),B(m,{link:"",type:"danger",icon:o(qe)("delete"),disabled:o(l),onClick:_=>p(X.id)},{default:Z(()=>[ke(W(o(c)("sessionShare.delete")),1)]),_:1},8,["icon","disabled","onClick"])]),_:1},8,["label"])]),_:1},8,["data","empty-text"])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","title","close-icon"])}}}),VI=dt(UI,[["__scopeId","data-v-e5a69738"]]),qI=["inert","aria-label"],HI={class:"sidebar-heading session-heading"},BI={class:"session-heading-meta"},GI=["aria-label","aria-busy","disabled"],zI={class:"new-session-form"},KI=["aria-label","disabled"],jI=["aria-label"],_I={key:3,class:"watch-status failed"},YI=["draggable","onDragover","onDrop","onDragstart","onMouseenter","onFocusin"],QI=["data-session-id","onContextmenu"],JI=["onClick"],XI={class:"session-link-content"},ZI={class:"session-title-row"},e0=["src","data-runner"],t0=["aria-label"],n0=["aria-label"],a0=["datetime"],o0=["disabled","aria-label"],r0=["aria-busy"],i0=["aria-label"],s0={key:5,class:"empty sidebar-empty"},l0={class:"effective-skill-list"},c0={key:0},d0={class:"effective-skill-tags"},u0={class:"effective-skill-list"},v0={key:0},f0={class:"effective-mcp-meta"},p0={class:"effective-skill-tags"},g0={class:"effective-mcp-meta"},m0={class:"effective-skill-tags"},h0=at({__name:"WorkspaceSessionList",props:{sessionGroup:{},sessions:{},selectedSessionId:{},mobileViewport:{type:Boolean},canLoadMore:{type:Boolean},loadingMore:{type:Boolean},loadMoreError:{},active:{type:Boolean},watchStatus:{},nodeReady:{type:Boolean},loading:{type:Boolean},workspaceKind:{},workspaceKindLabel:{},workspaceBranch:{},title:{type:Function},runnerIcon:{type:Function},activity:{type:Function},canDeleteSession:{type:Function},activityLabel:{type:Function},activityDateTime:{type:Function},activityTitle:{type:Function},relativeActivity:{type:Function},nodeId:{},workspaceId:{},skillSupported:{type:Boolean},mcpSupported:{type:Boolean},cleanupSessionsSupported:{type:Boolean},searchSupported:{type:Boolean},searchQuery:{},searching:{type:Boolean},refreshing:{type:Boolean},workspaceManageable:{type:Boolean},request:{type:Function},hasUnread:{type:Function},asideSupported:{type:Boolean}},emits:["selectGroup","openTree","openAside","create","open","rename","pin","movePin","movePinTo","deleteSession","cleanupSessions","loadMore","search","refresh"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=x();function i(M,ee){S.value=M?ee.id:void 0,M&&(s.value={nodeId:n.nodeId,workspaceId:ee.workspaceId,sessionId:ee.id})}const l=x(),v=x(),u=x(!1);let d;function w(){return n.active!==!1&&n.nodeReady&&n.watchStatus==="ready"&&n.canLoadMore&&!n.loading&&!n.searching&&!n.refreshing&&!n.loadingMore&&n.loadMoreError===void 0}He(()=>[l.value,v.value,n.active,n.sessions,n.canLoadMore,n.loading,n.searching,n.refreshing,n.loadingMore,n.loadMoreError,n.watchStatus,n.nodeReady,n.searchQuery],()=>{d?.disconnect(),!n.loadingMore&&n.loadMoreError===void 0&&(u.value=!1);const M=l.value,ee=v.value;!w()||M===void 0||ee===void 0||typeof IntersectionObserver>"u"||(d=new IntersectionObserver(le=>{le.some(Ee=>Ee.isIntersecting)&&w()&&M.getClientRects().length>0&&a("loadMore")},{root:M,rootMargin:"0px 0px 96px 0px"}),d.observe(ee))},{flush:"post"});function k(){n.loadingMore||!n.canLoadMore||(u.value=!0,a("loadMore"))}mt(()=>d?.disconnect());const T=j(()=>({context:JSON.stringify([n.nodeId,n.workspaceId,n.searchQuery]),ready:n.watchStatus==="ready"&&!n.loading&&!n.searching&&!n.refreshing&&!n.loadingMore&&r.value===void 0,items:n.sessions.map(M=>({key:M.id,lastActivityAt:M.lastActivityAt,pin:M.pinOrder??null}))})),p=x(),g=x();He(()=>[n.nodeId,n.workspaceId],()=>{g.value=void 0}),He(()=>[n.nodeId,n.workspaceId],()=>{p.value=void 0});const R=x(),b=x("before"),C=x(),I=x(),S=x(),m=x(n.searchQuery);He(()=>n.searchQuery,M=>m.value=M);const A=x(!1),L=hI(n.request),y=x(!1),D=x(),E=x(!1),H=ug(n.request),X=H.loadedInstallations,_=j(()=>H.inspection.value?.executionBuiltIns??[]);async function U(){A.value=!0;try{await L.load(n.nodeId,n.workspaceId)}catch{et(c("generated.workspaceSessionList.unableToLoadCurrentSkillsTryAgain"),"error")}}async function Q(){y.value=!0;try{await H.run(()=>H.loadWorkspace(n.nodeId,n.workspaceId))}catch{et(c("generated.workspaceSessionList.unableToLoadCurrentMCPServersTry"),"error")}}function $(M){return M==="VALID"?c("generated.workspaceSessionList.available"):M==="PARTIAL"?c("generated.workspaceSessionList.incompleteInstallation"):M==="UNKNOWN_VERSION"?c("generated.workspaceSessionList.unknownVersion"):M==="GIT_EXCLUDE_BROKEN"?c("generated.workspaceSessionList.invalidGitRules"):c("generated.workspaceSessionList.invalidDirectory")}function V(M){return M.pinOrder!==null&&M.pinOrder!==void 0}function N(M){return n.sessions.filter(V).findIndex(ee=>ee.id===M.id)}function h(M,ee){const le=ee==="up"?M.canMovePinUp:M.canMovePinDown;if(le!==void 0)return le;const Ee=N(M),xe=n.sessions.filter(V).length;return Ee>=0&&(ee==="up"?Ee>0:Ee<xe-1)}function F(M,ee){if(!z(ee)){M.preventDefault();return}r.value=ee.id,M.dataTransfer!==null&&(M.dataTransfer.effectAllowed="move",M.dataTransfer.setData("text/plain",ee.id))}function z(M){return!n.mobileViewport&&V(M)&&!n.loading}function fe(){r.value=void 0,R.value=void 0}function J(M,ee){if(!z(ee)||r.value===void 0)return;M.preventDefault(),M.dataTransfer!==null&&(M.dataTransfer.dropEffect="move"),R.value=ee.id;const le=M.currentTarget.getBoundingClientRect();b.value=M.clientY<le.top+le.height/2?"before":"after"}function re(M){if(!z(M)){fe();return}const ee=n.sessions.find(Ee=>Ee.id===r.value),le=b.value;fe(),!(ee===void 0||ee.id===M.id)&&a("movePinTo",ee,M,le)}function ge(M){return C.value===M||I.value===M||S.value===M}function ce(M,ee){const le=M.currentTarget;le instanceof HTMLElement&&M.relatedTarget instanceof Node&&le.contains(M.relatedTarget)||ee()}function oe(M,ee){C.value=M,ut(()=>ee.querySelector(".session-more-button")?.click())}function P(M,ee){ee.preventDefault();const le=ee.currentTarget.closest(".session-row");le!==null&&oe(M,le)}function G(M){a("open",M)}function ue(M){const le=[...l.value?.querySelectorAll(".session-row")??[]].find(xe=>xe.dataset.sessionId===M)?.querySelector(".session-link"),Ee=n.sessions.find(xe=>xe.id===M);le&&Ee&&a("openTree",M,le,n.title(Ee))}function ne(){if(m.value.trim()!==""){a("search",m.value);return}n.searchQuery!==""&&a("search",""),a("refresh")}return(M,ee)=>{const le=da,Ee=Ft,xe=bt,Me=ln,Se=sn,ye=rn,Fe=Xt,Ye=St("tooltip"),nt=ca;return f(),O("aside",{tabindex:"-1",inert:e.mobileViewport&&!e.active,class:"conversation-sidebar","aria-label":o(c)("generated.workspaceSessionList.workspaceSessions")},[K("div",HI,[K("div",BI,[K("h2",null,W(o(c)("generated.workspaceSessionList.sessions")),1),e.workspaceKind==="GIT_WORKSPACE"?(f(),we(le,{key:0,class:"workspace-kind-tag",type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(e.workspaceKindLabel),1)]),_:1})):ve("",!0),e.workspaceBranch!==void 0?(f(),we(le,{key:1,class:"workspace-branch-tag",type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(e.workspaceBranch),1)]),_:1})):ve("",!0)])]),e.searchSupported?(f(),O("form",{key:0,class:"session-search",role:"search",onSubmit:rt(ne,["prevent"])},[B(Ee,{modelValue:m.value,"onUpdate:modelValue":ee[0]||(ee[0]=ae=>m.value=ae),placeholder:o(c)("workspaceSessions.searchPlaceholder"),"aria-label":o(c)("workspaceSessions.searchLabel"),"prefix-icon":o(qe)("search"),clearable:"",size:"small",onClear:ee[1]||(ee[1]=ae=>a("search","")),"clear-icon":o(qe)("clear-input")},null,8,["modelValue","placeholder","aria-label","prefix-icon","clear-icon"]),Le((f(),O("button",{class:"session-search-button utility-control","aria-label":o(c)(m.value.trim()?"workspaceSessions.searchAction":"generated.workspaceSessionList.refreshWorkspaceSessions"),"aria-busy":e.searching||e.refreshing||void 0,disabled:!e.nodeReady||e.searching||e.refreshing,type:"submit"},[e.searching||e.refreshing?(f(),we(De,{key:0,name:"loading-action"})):(f(),we(De,{key:1,name:"refresh"}))],8,GI)),[[Ye,o(c)(m.value.trim()?"workspaceSessions.searchAction":"generated.workspaceSessionList.refreshWorkspaceSessions")]])],32)):ve("",!0),K("div",zI,[B(xe,{class:"new-session-button",disabled:!e.nodeReady,type:"primary",onClick:ee[2]||(ee[2]=ae=>a("create"))},{default:Z(()=>[B(De,{name:"session-add"}),K("span",null,W(o(c)("generated.workspaceSessionList.newSession")),1)]),_:1},8,["disabled"]),B(ye,{trigger:"click","popper-class":"workspace-tool-menu"},{dropdown:Z(()=>[B(Se,null,{default:Z(()=>[e.skillSupported?(f(),we(Me,{key:0,onClick:U},{default:Z(()=>[B(De,{name:"collection"}),K("span",null,W(o(c)("generated.workspaceSessionList.loadedSkills")),1)]),_:1})):ve("",!0),e.mcpSupported?(f(),we(Me,{key:1,onClick:Q},{default:Z(()=>[B(De,{name:"connection"}),K("span",null,W(o(c)("generated.workspaceSessionList.loadedMCP")),1)]),_:1})):ve("",!0),e.cleanupSessionsSupported?(f(),we(Me,{key:2,disabled:e.loading||!e.nodeReady||!e.workspaceManageable,onClick:ee[3]||(ee[3]=ae=>a("cleanupSessions"))},{default:Z(()=>[B(De,{name:"delete"}),K("span",null,W(o(c)("generated.workspaceSessionList.cleanupSessions")),1)]),_:1},8,["disabled"])):ve("",!0)]),_:1})]),default:Z(()=>[K("button",{class:"workspace-more-button utility-control","aria-label":o(c)("generated.workspaceSessionList.moreWorkspaceActions"),disabled:!e.nodeReady,type:"button"},[B(De,{name:"more"})],8,KI)]),_:1})]),e.sessionGroup?(f(),we(yc,{key:1,"model-value":e.sessionGroup,"onUpdate:modelValue":ee[4]||(ee[4]=ae=>a("selectGroup",ae))},null,8,["model-value"])):ve("",!0),e.watchStatus==="loading"?(f(),O("div",{key:2,class:"watch-status",role:"status","aria-label":o(c)("workspaceWatch.loadingSessions")},[B(gn,{class:"read-loading-indicator"})],8,jI)):e.watchStatus==="failed"?(f(),O("p",_I,W(o(c)("workspaceWatch.sessionsFailed")),1)):ve("",!0),e.sessions.length||e.canLoadMore||e.loadMoreError!==void 0?Le((f(),O("ul",{key:4,ref_key:"sessionListElement",ref:l,class:"session-list"},[(f(!0),O(Ve,null,Je(e.sessions,ae=>(f(),O("li",{key:ae.id,class:Ke(["mar-session-reorder-item",{"dragging-pinned":r.value===ae.id,"drag-over-pinned":R.value===ae.id,"drag-over-pinned-after":R.value===ae.id&&b.value==="after"}]),draggable:z(ae),onDragend:fe,onDragover:me=>J(me,ae),onDrop:rt(me=>re(ae),["prevent"]),onDragstart:me=>F(me,ae),onMouseenter:me=>C.value=ae.id,onMouseleave:ee[6]||(ee[6]=me=>C.value=void 0),onFocusin:me=>I.value=ae.id,onFocusout:ee[7]||(ee[7]=me=>ce(me,()=>I.value=void 0))},[K("div",{"data-session-id":ae.id,class:Ke(["session-row",{pinned:V(ae),selected:e.selectedSessionId===ae.id}]),onContextmenu:me=>P(ae.id,me)},[Le((f(),O("button",{class:Ke(["session-link",{selected:e.selectedSessionId===ae.id}]),type:"button",onClick:me=>G(ae.id)},[K("span",XI,[K("span",ZI,[K("img",{src:e.runnerIcon(ae.runner),"data-runner":ae.runner,alt:"","aria-hidden":"true",class:"runner-brand-icon session-title-runner-icon"},null,8,e0),ae.schedule?Le((f(),we(De,{key:0,name:"clock",class:Ke(["session-pin-indicator",{"schedule-paused":!ae.schedule.enabled}]),"aria-label":o(c)(ae.schedule.enabled?"generated.scheduledSession.enabled":"generated.scheduledSession.paused")},null,8,["class","aria-label"])),[[Ye,o(c)(ae.schedule.enabled?"generated.scheduledSession.enabled":"generated.scheduledSession.paused")]]):V(ae)?Le((f(),we(De,{key:1,name:"star-filled",class:"session-pin-indicator","aria-label":o(c)("generated.workspaceSessionList.pinned")},null,8,["aria-label"])),[[Ye,o(c)("generated.workspaceSessionList.pinned2")]]):ve("",!0),K("strong",null,W(e.title(ae)),1),e.hasUnread(ae.id)?Le((f(),O("span",{key:2,class:"session-unread-label mar-unread-label","aria-label":o(c)("generated.workspaceSessionList.hasUnreadNotifications")},[ke(W(o(c)("generated.workspaceSessionList.unread")),1)],8,t0)),[[Ye,o(c)("generated.workspaceSessionList.hasUnreadNotifications2")]]):ve("",!0),e.nodeReady&&e.activity(ae)==="MANAGED_ACTIVE"?Le((f(),O("span",{key:3,class:Ke(["session-activity",e.activity(ae).toLocaleLowerCase()]),"aria-label":e.activityLabel(ae),role:"img"},[...ee[13]||(ee[13]=[K("i",{"aria-hidden":"true"},null,-1)])],10,n0)),[[Ye,e.activityLabel(ae)]]):ve("",!0),Le((f(),O("time",{class:"session-relative-time",datetime:e.activityDateTime(ae)},[ke(W(e.relativeActivity(ae)),1)],8,a0)),[[Ye,e.activityTitle(ae)]])])])],10,JI)),[[Ye,e.title(ae)]]),ge(ae.id)?(f(),we(ye,{key:0,class:"session-row-actions",placement:"bottom-end","popper-class":"session-action-menu",trigger:"click",onVisibleChange:me=>i(me,ae),onCommand:me=>me==="tree"&&ue(ae.id)},{dropdown:Z(()=>[B(Se,null,{default:Z(()=>[e.asideSupported?(f(),we(Me,{key:0,disabled:e.loading||!e.nodeReady,onClick:ee[5]||(ee[5]=me=>s.value&&a("openAside",s.value))},{default:Z(()=>[B(De,{name:"split"}),ke(" "+W(o(c)("generated.workbenchAside.openSession")),1)]),_:1},8,["disabled"])):ve("",!0),V(ae)?(f(),O(Ve,{key:2},[B(Me,{disabled:ae.schedule?.enabled===!0,onClick:me=>a("pin",ae,!1)},{default:Z(()=>[B(De,{name:"pin"}),ke(W(o(c)("generated.workspaceSessionList.unpin")),1)]),_:1},8,["disabled","onClick"]),B(Me,{disabled:!h(ae,"up"),onClick:me=>a("movePin",ae,"up")},{default:Z(()=>[B(De,{name:"chevron-up"}),ke(W(o(c)("generated.workspaceSessionList.moveUp")),1)]),_:1},8,["disabled","onClick"]),B(Me,{disabled:!h(ae,"down"),onClick:me=>a("movePin",ae,"down")},{default:Z(()=>[B(De,{name:"chevron-down"}),ke(W(o(c)("generated.workspaceSessionList.moveDown")),1)]),_:1},8,["disabled","onClick"])],64)):(f(),we(Me,{key:1,onClick:me=>a("pin",ae,!0)},{default:Z(()=>[B(De,{name:"pin"}),ke(W(o(c)("generated.workspaceSessionList.pin")),1)]),_:1},8,["onClick"])),B(Me,{onClick:me=>g.value=ae},{default:Z(()=>[B(De,{name:"share"}),ke(W(o(c)("sessionShare.title")),1)]),_:1},8,["onClick"]),B(Me,{onClick:me=>a("rename",ae)},{default:Z(()=>[B(De,{name:"edit"}),ke(W(o(c)("generated.workspaceSessionList.rename")),1)]),_:1},8,["onClick"]),e.asideSupported?(f(),we(Me,{key:3,disabled:e.loading||!e.nodeReady,command:"tree"},{default:Z(()=>[B(De,{name:"session-tree"}),ke(W(o(c)("sessionGroups.tree")),1)]),_:1},8,["disabled"])):ve("",!0),ae.runtime?.capabilities?.includes("session.prompt")?(f(),we(Me,{key:4,onClick:me=>p.value=ae},{default:Z(()=>[B(De,{name:"document"}),ke(W(o(c)("generated.sessionPrompt.title")),1)]),_:1},8,["onClick"])):ve("",!0),ae.runtime?.capabilities?.includes("session.schedule")?(f(),we(Me,{key:5,onClick:me=>{D.value=ae,E.value=!0}},{default:Z(()=>[B(De,{name:"clock"}),ke(W(o(c)("generated.scheduledSession.title")),1)]),_:1},8,["onClick"])):ve("",!0),n.canDeleteSession?.(ae)!==!1?(f(),we(Me,{key:6,divided:"",onClick:me=>a("deleteSession",ae)},{default:Z(()=>[B(De,{name:"delete"}),ke(W(o(c)("generated.workspaceSessionList.delete")),1)]),_:1},8,["onClick"])):ve("",!0)]),_:2},1024)]),default:Z(()=>[Le((f(),O("button",{class:"session-more-button utility-control",disabled:e.loading,"aria-label":o(c)("generated.workspaceSessionList.moreSessionActions",{value0:e.title(ae)}),type:"button"},[B(De,{name:"more"})],8,o0)),[[Ye,o(c)("generated.workspaceSessionList.moreSessionActions2")]])]),_:2},1032,["onVisibleChange","onCommand"])):ve("",!0)],42,QI)],42,YI))),128)),e.canLoadMore||e.loadMoreError!==void 0?(f(),O("li",{key:0,ref_key:"appendMarker",ref:v,class:"list-append-state","aria-busy":e.loadingMore},[e.loadingMore&&!u.value?(f(),O("span",{key:0,role:"status","aria-label":o(c)("generated.workspaceSessionList.loading")},[B(gn,{class:"read-loading-indicator"})],8,i0)):ve("",!0),u.value||e.loadMoreError!==void 0&&!e.loadingMore?(f(),we(xe,{key:1,link:"","aria-disabled":e.loadingMore,"aria-busy":e.loadingMore,"aria-label":e.loadingMore?o(c)("common.loading"):void 0,onClick:k},{default:Z(()=>[e.loadingMore?(f(),we(gn,{key:0,class:"read-loading-indicator"})):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-disabled","aria-busy","aria-label"])):ve("",!0)],8,r0)):ve("",!0)])),[[o(wc),T.value]]):e.watchStatus!=="loading"&&e.watchStatus!=="failed"?(f(),O("p",s0,W(o(c)(e.searchQuery?"sessionGroups.noResults":e.sessionGroup==="MAIN"?"sessionGroups.emptyMain":e.sessionGroup==="CHILD"?"sessionGroups.emptyChild":"generated.workspaceSessionList.syncingOpenCodeCodexAndClaudeCodeSessions")),1)):ve("",!0),A.value?(f(),we(Fe,{key:6,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),modelValue:A.value,"onUpdate:modelValue":ee[8]||(ee[8]=ae=>A.value=ae),title:o(c)("generated.workspaceSessionList.currentSkills"),width:"min(560px, calc(100vw - 32px))","append-to-body":"","close-icon":o(qe)("close")},{default:Z(()=>[Le((f(),O("div",l0,[!o(L).loading.value&&o(L).skills.value.length===0?(f(),O("p",c0,W(o(c)("generated.workspaceSessionList.thisWorkspaceHasNoAvailableSkills")),1)):ve("",!0),(f(!0),O(Ve,null,Je(o(L).skills.value,ae=>(f(),O("div",{key:ae.name,class:"effective-skill-row"},[K("div",null,[K("strong",null,W(ae.name),1),K("p",null,W(ae.description||o(c)("generated.workspaceSessionList.noDescription")),1)]),K("span",d0,[B(le,{effect:"plain",type:ae.localStatus==="VALID"?"success":"warning"},{default:Z(()=>[ke(W($(ae.localStatus)),1)]),_:2},1032,["type"]),B(le,{effect:"plain",type:ae.source==="WORKSPACE"?"primary":"info"},{default:Z(()=>[ke(W(ae.source==="WORKSPACE"?o(c)("common.workspace"):o(c)("common.nodeHome")),1)]),_:2},1032,["type"])])]))),128))])),[[nt,o(L).loading.value]])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ve("",!0),y.value?(f(),we(Fe,{key:7,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),modelValue:y.value,"onUpdate:modelValue":ee[9]||(ee[9]=ae=>y.value=ae),title:o(c)("generated.workspaceSessionList.loadedMCP2"),width:"min(560px, calc(100vw - 32px))","append-to-body":"","close-icon":o(qe)("close")},{default:Z(()=>[Le((f(),O("div",u0,[!o(H).loading.value&&o(X).length===0&&_.value.length===0?(f(),O("p",v0,W(o(c)("generated.workspaceSessionList.thisWorkspaceHasNoLoadedMCPServers")),1)):ve("",!0),(f(!0),O(Ve,null,Je(o(X),ae=>(f(),O("div",{key:ae.serverName,class:"effective-skill-row"},[K("div",null,[K("strong",null,W(ae.displayName),1),K("p",null,W(ae.description||o(c)("generated.workspaceSessionList.noDescription")),1),K("p",f0,W(ae.serverName)+" · "+W(ae.version),1)]),K("span",p0,[B(le,{effect:"plain",type:"success"},{default:Z(()=>[ke(W(o(c)("generated.workspaceSessionList.loaded")),1)]),_:1}),B(le,{effect:"plain",type:ae.origin==="WORKSPACE"?"primary":"info"},{default:Z(()=>[ke(W(ae.origin==="WORKSPACE"?o(c)("common.workspace"):o(c)("common.node")),1)]),_:2},1032,["type"])])]))),128)),_.value.length>0?(f(!0),O(Ve,{key:1},Je(_.value,ae=>(f(),O("div",{key:ae,class:"effective-skill-row"},[K("div",null,[K("strong",null,W(o(c)(ae==="mar_schedule"?"generated.workspaceSessionList.marScheduleMcp":"generated.workspaceSessionList.marNotificationMcp")),1),K("p",null,W(o(c)(ae==="mar_schedule"?"generated.workspaceSessionList.marScheduleMcpDescription":"generated.workspaceSessionList.marNotificationMcpDescription")),1),K("p",g0,W(ae),1)]),K("span",m0,[B(le,{effect:"plain",type:"info"},{default:Z(()=>[ke(W(o(c)("generated.workspaceSessionList.executionInjected")),1)]),_:1}),B(le,{effect:"plain",type:"info"},{default:Z(()=>[ke(W(o(c)("generated.workspaceSessionList.builtInMcp")),1)]),_:1})])]))),128)):ve("",!0)])),[[nt,o(H).loading.value]])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ve("",!0),g.value?(f(),we(VI,{key:`${e.nodeId}:${e.workspaceId}:${g.value.id}`,target:{nodeId:e.nodeId,workspaceId:e.workspaceId,sessionId:g.value.id},request:e.request,onClose:ee[10]||(ee[10]=ae=>g.value=void 0)},null,8,["target","request"])):ve("",!0),p.value!==void 0?(f(),we(MI,{key:`${e.nodeId}:${p.value.id}`,"node-id":e.nodeId,"session-id":p.value.id,request:e.request,onClose:ee[11]||(ee[11]=ae=>p.value=void 0)},null,8,["node-id","session-id","request"])):ve("",!0),E.value?(f(),we(PI,{key:10,modelValue:E.value,"onUpdate:modelValue":ee[12]||(ee[12]=ae=>E.value=ae),session:D.value,"node-id":e.nodeId,"workspace-id":e.workspaceId,request:e.request},null,8,["modelValue","session","node-id","workspace-id","request"])):ve("",!0)],8,qI)}}}),y0=dt(h0,[["__scopeId","data-v-c1053782"]]),w0=["aria-busy"],k0={class:"workspace-session-cleanup-description"},b0=["aria-label"],I0={key:0,class:"workspace-session-cleanup-description"},S0={key:0},C0={key:1,class:"workspace-session-cleanup-by-runner"},T0=at({__name:"WorkspaceSessionCleanupDialog",props:{modelValue:{type:Boolean},cleanup:{type:Function}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=Fn({inactiveDays:30}),i=x(!1),l=x(),v=j(()=>c(l.value?.timedOut?"generated.workspaceSessionCleanupDialog.partiallyCompleted":"generated.workspaceSessionCleanupDialog.completed")),u={inactiveDays:[{validator:(p,g,R)=>{if(typeof g=="number"&&Number.isInteger(g)&&g>=1&&g<=365){R();return}R(new Error(c("generated.workspaceSessionCleanupDialog.inactiveDaysInvalid")))},trigger:"change"}]},d=j(()=>{const p=l.value;return p===void 0?[]:Object.entries(p.deletedByRunner).filter(g=>g[1]!==void 0).filter(([,g])=>g>0).map(([g,R])=>`${$n(g)} ${R}`)});function w(p){i.value||p()}function k(){i.value||a("update:modelValue",!1)}async function T(){if(!(!await r.value?.validate().catch(()=>!1)||i.value||s.inactiveDays===void 0)){i.value=!0;try{const g=await n.cleanup(s.inactiveDays);g!==void 0&&(l.value=g)}catch(g){et(g instanceof Error?it(g):c("generated.workspaceSessionCleanupDialog.cleanupFailed"),"error",g)}finally{i.value=!1}}}return(p,g)=>{const R=Ng,b=va,C=ua,I=bt,S=Xt;return e.modelValue?(f(),we(S,{key:0,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),class:"workspace-session-cleanup-dialog","before-close":w,"close-on-click-modal":!i.value,"close-on-press-escape":!i.value,"show-close":!i.value,"model-value":e.modelValue,title:o(c)("generated.workspaceSessionCleanupDialog.title"),width:"min(480px, calc(100vw - 32px))","onUpdate:modelValue":g[1]||(g[1]=m=>a("update:modelValue",m)),"close-icon":o(qe)("close")},{footer:Z(()=>[l.value===void 0?(f(),O(Ve,{key:0},[B(I,{disabled:i.value,onClick:k},{default:Z(()=>[ke(W(o(c)("generated.workspaceSessionCleanupDialog.cancel")),1)]),_:1},8,["disabled"]),B(I,{type:"danger",loading:i.value,"loading-icon":o(qe)("loading-action"),onClick:T},{default:Z(()=>[ke(W(o(c)("generated.workspaceSessionCleanupDialog.cleanup")),1)]),_:1},8,["loading","loading-icon"])],64)):(f(),we(I,{key:1,onClick:k},{default:Z(()=>[ke(W(o(c)("common.close")),1)]),_:1}))]),default:Z(()=>[K("div",{class:"workspace-session-cleanup-content","aria-busy":i.value},[l.value===void 0?(f(),O(Ve,{key:0},[K("p",k0,W(o(c)("generated.workspaceSessionCleanupDialog.description")),1),B(C,{ref_key:"formRef",ref:r,model:s,rules:u,"label-position":"top"},{default:Z(()=>[B(b,{label:o(c)("generated.workspaceSessionCleanupDialog.inactiveDays"),prop:"inactiveDays"},{default:Z(()=>[B(R,{modelValue:s.inactiveDays,"onUpdate:modelValue":g[0]||(g[0]=m=>s.inactiveDays=m),disabled:i.value,max:365,min:1,step:1,"step-strictly":""},{"decrease-icon":Z(()=>[B(De,{name:"subtract"})]),"increase-icon":Z(()=>[B(De,{name:"plus"})]),_:1},8,["modelValue","disabled"])]),_:1},8,["label"])]),_:1},8,["model"])],64)):(f(),O("section",{key:1,class:"workspace-session-cleanup-result","aria-label":v.value},[K("h3",null,W(v.value),1),l.value.timedOut?(f(),O("p",I0,W(o(c)("generated.workspaceSessionCleanupDialog.timeLimitReached")),1)):ve("",!0),K("dl",{class:Ke(["workspace-session-cleanup-statistics",{"has-remaining":l.value.remaining!==void 0}])},[K("div",null,[K("dt",null,W(o(c)("generated.workspaceSessionCleanupDialog.deleted")),1),K("dd",null,W(l.value.deleted),1)]),K("div",null,[K("dt",null,W(o(c)("generated.workspaceSessionCleanupDialog.skipped")),1),K("dd",null,W(l.value.skipped),1)]),K("div",{class:Ke({failed:l.value.failed>0})},[K("dt",null,W(o(c)("generated.workspaceSessionCleanupDialog.failed")),1),K("dd",null,W(l.value.failed),1)],2),l.value.remaining!==void 0?(f(),O("div",S0,[K("dt",null,W(o(c)("generated.workspaceSessionCleanupDialog.remaining")),1),K("dd",null,W(l.value.remaining),1)])):ve("",!0)],2),d.value.length>0?(f(),O("dl",C0,[K("dt",null,W(o(c)("generated.workspaceSessionCleanupDialog.byRunner")),1),K("dd",null,W(d.value.join(", ")),1)])):ve("",!0)],8,b0))],8,w0)]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","close-on-click-modal","close-on-press-escape","show-close","model-value","title","close-icon"])):ve("",!0)}}}),E0=dt(T0,[["__scopeId","data-v-5e951efe"]]),R0=["aria-label","disabled"],A0=["aria-label"],N0={key:0,class:"workspace-tab workspace-tab-placeholder active",role:"tab","aria-selected":"true"},D0={class:"workspace-tab-content"},P0={key:0},O0=["data-tab-id","onPointerdown","onContextmenu","onFocusin"],L0=["aria-label","aria-selected","onClick"],W0={class:"workspace-tab-content"},M0={class:"workspace-tab-meta"},x0=["aria-description"],$0={class:"workspace-tab-node-label"},F0={key:1,class:"workspace-tab-node"},U0=["aria-label"],V0=["aria-label"],q0=["aria-label","onClick"],H0=["aria-label","onClick"],B0={key:1,class:"workspace-tab-overflow-actions"},G0=["aria-label","disabled"],z0=["aria-label"],K0={class:"workspace-tab-meta"},j0=["aria-description"],_0={class:"workspace-tab-node-label"},Y0={key:1,class:"workspace-tab-node"},Q0=["aria-label"],J0=["aria-label"],X0=at({__name:"WorkspaceTabs",props:{placement:{},tabs:{},activeTabId:{},emptyLabel:{},emptyContext:{},nodeLabel:{type:Function},directAvailable:{type:Function},directDescription:{type:Function},hasActiveRun:{type:Function},hasUnread:{type:Function}},emits:["activate","close","reorder","pin"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=x(),i=x(!1),l=x(),v=x(!1),u=x(!1),d=x(!1),w=x({}),k=x(0),T=x(),p=x(),g=j(()=>n.tabs.findIndex(P=>P.id===T.value?.tabId)),R=j(()=>n.tabs[g.value]?.pinned===!0);let b,C=0,I=0,S=!1,m,A;function L(){return window.matchMedia("(max-width: 767px)").matches}function y(){const P=l.value;if(P===void 0)return;const G=P.scrollWidth>P.clientWidth+1;d.value=G,v.value=G&&P.scrollLeft>1,u.value=G&&P.scrollLeft+P.clientWidth<P.scrollWidth-1}function D(){const P=l.value,G={};let ue=0;if(P!==void 0&&!L()){const ne=P.querySelector(".workspace-tab:not(.pinned)"),M=getComputedStyle(P),ee=Number.parseFloat(M.columnGap)||0,le=Number.parseFloat(M.paddingLeft)||0;ue=le;for(const xe of P.querySelectorAll(".workspace-tab.pinned"))xe.dataset.tabId!==void 0&&(G[xe.dataset.tabId]=ue-le,ue+=xe.getBoundingClientRect().width+ee);const Ee=ne===null?0:Number.parseFloat(getComputedStyle(ne).minWidth);if(ne===null||Object.keys(G).length===0||P.clientWidth-ue-(Number.parseFloat(M.paddingRight)||0)<Ee){ue=0;for(const xe of Object.keys(G))delete G[xe]}}w.value=G,k.value=ue,y()}function E(){const P=l.value;if(A?.disconnect(),P!==void 0){A??=new ResizeObserver(()=>{D(),X()}),A.observe(P);for(const G of P.querySelectorAll(".workspace-tab"))A.observe(G)}}function H(P){const G=P===void 0?void 0:l.value?.querySelector(`[data-tab-id="${CSS.escape(P)}"]`),ue=l.value;if(G==null||ue===void 0||P!==void 0&&w.value[P]!==void 0)return;const ne=G.getBoundingClientRect(),M=ue.getBoundingClientRect(),ee=getComputedStyle(ue),le=ue.querySelectorAll(".workspace-tab.sticky-pinned"),Ee=le.item(le.length-1),xe=Ee?Ee.getBoundingClientRect().right+(Number.parseFloat(ee.columnGap)||0):M.left+(Number.parseFloat(ee.paddingLeft)||0),Me=M.right-(Number.parseFloat(ee.paddingRight)||0),Se=ne.left<xe?ne.left-xe:ne.right>Me?ne.right-Me:0;Se!==0&&ue.scrollBy({left:Se,behavior:"smooth"})}function X(){H(n.activeTabId)}function _(P,G){const ue=P.currentTarget;requestAnimationFrame(()=>{ue.isConnected&&ue.contains(document.activeElement)&&H(G)})}function U(P){const G=l.value;G!==void 0&&G.scrollBy({left:P*Math.max(180,Math.floor((G.clientWidth-k.value)*.7)),behavior:"smooth"})}function Q(P){if(typeof P!="string")return;const G=n.tabs.find(ue=>ue.id===P);G!==void 0&&a("activate",G)}async function $(P,G){P.preventDefault(),P.stopPropagation(),T.value=void 0,await ut();const ue={tabId:G.id,x:Math.max(6,Math.min(P.clientX,window.innerWidth-180)),y:Math.max(6,Math.min(P.clientY,window.innerHeight-154))};T.value=ue,await ut(),T.value?.tabId===ue.tabId&&p.value?.click()}function V(P){const G=g.value,ue=n.tabs[G];if(T.value=void 0,ue!==void 0)if(P==="pin")a("pin",ue.id,ue.pinned!==!0);else if(P==="close")ue.pinned!==!0&&a("close",ue);else{const ne=G+(P==="previous"?-1:1);ne>=0&&ne<n.tabs.length&&a("reorder",ue.id,ne)}}let N;function h(P=!1){ut(()=>{E(),D(),P&&X()})}He(()=>n.tabs,()=>{g.value<0&&(T.value=void 0),h(!0)},{flush:"post",immediate:!0}),He(()=>n.activeTabId,()=>h(!0),{flush:"post"}),Dt(()=>{N=xt.register({command:"workspaceTabs.dismissMenu",priority:150,scope:"overlay",allowedInBlockedScopes:["file-preview","terminal"],keys:[{key:"Escape"}],when:()=>T.value!==void 0,execute:()=>(T.value=void 0,"HANDLED")})}),mt(()=>{A?.disconnect(),N?.()});function F(){r.value=void 0,s.value=void 0,b=void 0,S=!1,m=void 0}function z(P,G,ue){b=G.pointerId,C=G.clientX,I=G.clientY,S=!1,m=ue,r.value=P.dataset.tabId,P.setPointerCapture(G.pointerId)}function fe(){i.value=!0,window.setTimeout(()=>{i.value=!1},0)}function J(P,G){P.button!==0||P.target.closest(".tab-close, .tab-pin")!==null||L()||z(P.currentTarget,P,G)}function re(P){if(b!==P.pointerId||r.value===void 0||(S||(S=Math.hypot(P.clientX-C,P.clientY-I)>=4),!S))return;const G=document.elementFromPoint(P.clientX,P.clientY);s.value=G?.closest(".workspace-tab")?.dataset.tabId,P.preventDefault()}function ge(P){if(b!==P.pointerId||r.value===void 0)return;const G=r.value,ue=document.elementFromPoint(P.clientX,P.clientY)?.closest(".workspace-tab"),ne=ue?.dataset.tabId,M=ue?.parentElement;if(!S&&m!==void 0&&(oe(m),fe()),S&&ue!==void 0&&ue!==null&&ne!==void 0&&M!==null&&M!==void 0){const ee=[...M.children],le=ee.findIndex(Se=>Se.dataset.tabId===ne),Ee=ee.findIndex(Se=>Se.dataset.tabId===G),xe=ue.getBoundingClientRect().left+ue.offsetWidth/2,Me=P.clientX>xe?le+1:le;a("reorder",G,Me>Ee?Me-1:Me),fe()}F()}function ce(P){b===P.pointerId&&F()}function oe(P){i.value||a("activate",P)}return(P,G)=>{const ue=ln,ne=sn,M=rn,ee=St("tooltip");return e.tabs.length>0||e.placement==="header"&&e.emptyLabel!==void 0?(f(),O("section",{key:0,class:Ke(["workspace-tab-strip",`workspace-tab-strip-${e.placement}`])},[d.value?(f(),O("button",{key:0,class:"tab-strip-scroll","aria-label":o(c)("workspaceTabs.scrollPrevious"),disabled:!v.value,type:"button",onClick:G[0]||(G[0]=le=>U(-1))},[B(De,{name:"chevron-left"})],8,R0)):ve("",!0),K("div",{ref_key:"tabList",ref:l,class:"workspace-tabs",role:"tablist","aria-label":o(c)("generated.workspaceTabs.openWorkspaces"),onScrollPassive:y},[e.tabs.length===0&&e.emptyLabel!==void 0?(f(),O("div",N0,[K("span",D0,[K("span",null,W(e.emptyLabel),1),e.emptyContext?(f(),O("small",P0,W(e.emptyContext),1)):ve("",!0)])])):ve("",!0),(f(!0),O(Ve,null,Je(e.tabs,le=>(f(),O("div",{key:le.id,class:Ke(["workspace-tab",{active:e.activeTabId===le.id,pinned:le.pinned===!0,"sticky-pinned":w.value[le.id]!==void 0,dragging:r.value===le.id,"drag-over":s.value===le.id&&r.value!==le.id}]),"data-tab-id":le.id,style:It(w.value[le.id]===void 0?void 0:{left:`${w.value[le.id]}px`}),onPointerdown:Ee=>J(Ee,le),onPointermove:re,onPointerup:ge,onPointercancel:ce,onContextmenu:Ee=>$(Ee,le),onFocusin:Ee=>_(Ee,le.id)},[Le((f(),O("button",{"aria-label":le.label,role:"tab","aria-selected":e.activeTabId===le.id,type:"button",onClick:Ee=>oe(le)},[K("span",W0,[K("span",null,W(le.label),1),K("small",M0,[e.activeTabId===le.id&&e.directAvailable(le.nodeId)?Le((f(),O("span",{key:0,class:"workspace-tab-node direct-available-node","aria-description":e.directDescription(le.nodeId)},[K("span",$0,W(e.nodeLabel(le)),1),B(De,{name:"link",class:"workspace-tab-direct-icon","aria-hidden":"true"})],8,x0)),[[ee,e.directDescription(le.nodeId)]]):(f(),O("span",F0,W(e.nodeLabel(le)),1)),e.hasActiveRun(le.nodeId,le.workspaceId)?Le((f(),O("span",{key:2,class:"workspace-tab-running session-activity managed_active",role:"img","aria-label":o(c)("workspaceTabs.running")},[...G[3]||(G[3]=[K("i",{"aria-hidden":"true"},null,-1)])],8,U0)),[[ee,o(c)("generated.sessionPresentation.managed")]]):ve("",!0),e.hasUnread(le.nodeId,le.workspaceId)?Le((f(),O("span",{key:3,class:"workspace-tab-unread mar-unread-label","aria-label":o(c)("workspaceTabs.unreadDescription")},[ke(W(o(c)("workspaceTabs.unread")),1)],8,V0)),[[ee,o(c)("workspaceTabs.unreadDescription")]]):ve("",!0)])])],8,L0)),[[ee,le.label]]),le.pinned===!0?Le((f(),O("button",{key:0,class:"tab-pin icon-button utility-control","aria-label":o(c)("workspaceTabs.unpinLabel",{label:le.label}),type:"button",onClick:rt(Ee=>a("pin",le.id,!1),["stop"])},[B(De,{name:"pin"})],8,q0)),[[ee,o(c)("workspaceTabs.unpin")]]):(f(),O("button",{key:1,class:"tab-close icon-button utility-control","aria-label":o(c)("generated.workspaceTabs.close",{value0:le.label}),type:"button",onClick:Ee=>a("close",le)},[B(De,{name:"close"})],8,H0))],46,O0))),128))],40,A0),d.value?(f(),O("div",B0,[K("button",{class:"tab-strip-scroll","aria-label":o(c)("workspaceTabs.scrollNext"),disabled:!u.value,type:"button",onClick:G[1]||(G[1]=le=>U(1))},[B(De,{name:"chevron-right"})],8,G0),B(M,{trigger:"click",onCommand:Q},{dropdown:Z(()=>[B(ne,{class:"workspace-tab-menu-list"},{default:Z(()=>[(f(!0),O(Ve,null,Je(e.tabs,le=>(f(),we(ue,{key:le.id,class:Ke({active:e.activeTabId===le.id}),command:le.id},{default:Z(()=>[K("span",null,W(le.label),1),K("small",K0,[e.activeTabId===le.id&&e.directAvailable(le.nodeId)?Le((f(),O("span",{key:0,class:"workspace-tab-node direct-available-node","aria-description":e.directDescription(le.nodeId)},[K("span",_0,W(e.nodeLabel(le)),1),B(De,{name:"link",class:"workspace-tab-direct-icon","aria-hidden":"true"})],8,j0)),[[ee,e.directDescription(le.nodeId)]]):(f(),O("span",Y0,W(e.nodeLabel(le)),1)),e.hasActiveRun(le.nodeId,le.workspaceId)?Le((f(),O("span",{key:2,class:"workspace-tab-running session-activity managed_active",role:"img","aria-label":o(c)("workspaceTabs.running")},[...G[4]||(G[4]=[K("i",{"aria-hidden":"true"},null,-1)])],8,Q0)),[[ee,o(c)("generated.sessionPresentation.managed")]]):ve("",!0),e.hasUnread(le.nodeId,le.workspaceId)?Le((f(),O("span",{key:3,class:"workspace-tab-unread mar-unread-label","aria-label":o(c)("workspaceTabs.unreadDescription")},[ke(W(o(c)("workspaceTabs.unread")),1)],8,J0)),[[ee,o(c)("workspaceTabs.unreadDescription")]]):ve("",!0)])]),_:2},1032,["class","command"]))),128))]),_:1})]),default:Z(()=>[K("button",{class:"workspace-tab-menu","aria-label":o(c)("workspaceTabs.allOpenWorkspaces"),type:"button"},[B(De,{name:"chevron-down"})],8,z0)]),_:1})])):ve("",!0),T.value!==void 0?(f(),O("div",{key:2,class:"workspace-tab-context-anchor",style:It({left:`${T.value.x}px`,top:`${T.value.y}px`})},[B(M,{trigger:"click",placement:"bottom-start",onCommand:V,onVisibleChange:G[2]||(G[2]=le=>!le&&(T.value=void 0))},{dropdown:Z(()=>[B(ne,null,{default:Z(()=>[B(ue,{command:"pin"},{default:Z(()=>[B(De,{name:"pin"}),ke(W(o(c)(R.value?"workspaceTabs.unpin":"workspaceTabs.pin")),1)]),_:1}),B(ue,{command:"previous",disabled:g.value<=0},{default:Z(()=>[B(De,{name:"chevron-left"}),ke(W(o(c)("workspaceTabs.movePrevious")),1)]),_:1},8,["disabled"]),B(ue,{command:"next",disabled:g.value<0||g.value>=e.tabs.length-1},{default:Z(()=>[B(De,{name:"chevron-right"}),ke(W(o(c)("workspaceTabs.moveNext")),1)]),_:1},8,["disabled"]),B(ue,{command:"close",divided:"",disabled:R.value},{default:Z(()=>[B(De,{name:"close"}),ke(W(o(c)("workspaceTabs.close")),1)]),_:1},8,["disabled"])]),_:1})]),default:Z(()=>[K("button",{ref_key:"contextMenuTrigger",ref:p,class:"workspace-tab-context-trigger",type:"button",tabindex:"-1"},null,512)]),_:1})],4)):ve("",!0)],2)):ve("",!0)}}}),el=dt(X0,[["__scopeId","data-v-5e123e97"]]),Z0={key:0,class:"workspace-picker-toolbar"},eS=["aria-label"],tS={key:0},nS={key:2},aS={class:"workspace-picker-toolbar-actions"},oS={key:2,class:"workspace-directory-list"},rS={key:0,class:"pending-directory"},iS={type:"button"},sS=["aria-label"],lS=["disabled","onClick","onDblclick"],cS={key:0},dS=["aria-label","disabled","onClick"],uS={key:1,class:"workspace-directory-empty"},vS={key:3,class:"workspace-picker-empty"},fS={key:4,class:"workspace-picker-empty"},pS={key:5,class:"workspace-picker-empty"},gS={class:"workspace-picker-actions"},mS={key:0},hS={key:1},yS=at({__name:"WorkspaceRegistrationPicker",props:{modelValue:{},directory:{},selectedPath:{},pendingDirectoryName:{},loadingDirectory:{type:Boolean},loading:{type:Boolean},nodeReady:{type:Boolean},selectedPathValid:{type:Boolean},registrationDisabled:{type:Boolean},preserveGitConfig:{type:Boolean}},emits:["update:modelValue","update:preserveGitConfig","navigate","select","select-pending","discard-pending","register"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=x(!1),i=x(""),l=Fn({name:""}),v=j(()=>({name:[{required:!0,message:c("generated.workspaceRegistrationPicker.enterADirectoryName"),trigger:"blur"},{validator:(g,R,b)=>{const C=R.trim();if(C.length===0||C.length>255||C==="."||C===".."||/[\\/\0]/u.test(C)){b(new Error(c("generated.workspaceRegistrationPicker.enterASingleDirectoryNameWithoutPath")));return}b()},trigger:["blur","change"]}]})),u=j(()=>n.nodeReady&&n.directory?.selectable===!0),d=j(()=>p(n.directory)),w=j(()=>n.directory?.entries.filter(g=>cc(g.path,i.value))??[]);He(()=>n.directory,g=>{g===void 0&&(s.value=!1,i.value="")});function k(){l.name="",s.value=!0}async function T(){await r.value?.validate().catch(()=>!1)&&(a("select-pending",l.name.trim()),s.value=!1)}function p(g){if(g===void 0)return[];const R=g.currentPath.includes("\\"),b=R?"\\":"/",C=D=>R?D.toLocaleLowerCase():D,I=C(g.currentPath),S=[...g.browseRoots].sort((D,E)=>E.length-D.length).find(D=>{const E=C(D).replace(/[\\/]+$/u,"");return I===E||I.startsWith(`${E}${b}`)});if(S===void 0)return[{label:g.currentPath,path:g.currentPath}];const m=S.replace(/[\\/]+$/u,""),A=g.currentPath.slice(m.length).replace(/^[\\/]+/u,""),L=[{label:S,path:S}];let y=m;for(const D of A.split(/[\\/]/u).filter(Boolean))y=`${y}${b}${D}`,L.push({label:D,path:y});return L}return(g,R)=>{const b=bt,C=ln,I=sn,S=rn,m=Ft,A=da,L=jl,y=Zg,D=Xg,E=va,H=ua,X=Xt,_=St("tooltip");return f(),O(Ve,null,[B(D,{"model-value":e.modelValue,class:"workspace-tools","onUpdate:modelValue":R[8]||(R[8]=U=>a("update:modelValue",U))},{default:Z(()=>[B(y,{name:"register",title:o(c)("generated.workspaceRegistrationPicker.registerANewWorkspace"),icon:o(qe)("chevron-right")},{default:Z(()=>[K("form",{class:"workspace-picker",onSubmit:R[7]||(R[7]=rt(U=>a("register"),["prevent"]))},[Ct(g.$slots,"ownership",{},void 0,!0),e.directory!==void 0?(f(),O("div",Z0,[Le((f(),we(b,{"aria-label":o(c)("generated.workspaceRegistrationPicker.goToParentDirectory"),icon:o(qe)("chevron-left"),disabled:e.directory.parentPath===null||e.loadingDirectory,"native-type":"button",text:"",onClick:R[0]||(R[0]=U=>a("navigate",e.directory.parentPath??void 0))},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.up")),1)]),_:1},8,["aria-label","icon","disabled"])),[[_,o(c)("generated.workspaceRegistrationPicker.goToParentDirectory2")]]),e.directory.browseRoots.length>1?(f(),we(S,{key:0,disabled:e.loadingDirectory,trigger:"click",onCommand:R[1]||(R[1]=U=>a("navigate",U))},{dropdown:Z(()=>[B(I,null,{default:Z(()=>[(f(!0),O(Ve,null,Je(e.directory.browseRoots,U=>(f(),we(C,{key:U,command:U},{default:Z(()=>[ke(W(U),1)]),_:2},1032,["command"]))),128))]),_:1})]),default:Z(()=>[B(b,{"native-type":"button",text:""},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.roots")),1),B(De,{name:"chevron-down",class:"mar-icon--right"})]),_:1})]),_:1},8,["disabled"])):ve("",!0),K("nav",{class:"workspace-picker-breadcrumbs","aria-label":o(c)("generated.workspaceRegistrationPicker.currentDirectory")},[(f(!0),O(Ve,null,Je(d.value,(U,Q)=>(f(),O(Ve,{key:U.path},[Q>0?(f(),O("span",tS,"/")):ve("",!0),Q<d.value.length-1?Le((f(),we(b,{key:1,disabled:e.loadingDirectory,text:"",onClick:$=>a("navigate",U.path)},{default:Z(()=>[ke(W(U.label),1)]),_:2},1032,["disabled","onClick"])),[[_,U.path]]):Le((f(),O("strong",nS,[ke(W(U.label),1)])),[[_,U.path]])],64))),128))],8,eS),K("div",aS,[Le(B(b,{class:"utility-control","aria-label":o(c)("generated.workspaceRegistrationPicker.refreshDirectory"),icon:o(qe)("refresh"),disabled:e.loadingDirectory,"native-type":"button",text:"",onClick:R[2]||(R[2]=U=>a("navigate",e.directory.currentPath))},null,8,["aria-label","icon","disabled"]),[[_,o(c)("generated.workspaceRegistrationPicker.refreshDirectory2")]]),B(b,{icon:o(qe)("folder-add"),disabled:!u.value||e.loadingDirectory,"native-type":"button",onClick:k},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.newDirectory")),1)]),_:1},8,["icon","disabled"]),B(b,{class:Ke({selected:e.selectedPath===e.directory.currentPath}),disabled:e.loadingDirectory||!e.directory.selectable,icon:o(qe)("check"),"native-type":"button",onClick:R[3]||(R[3]=U=>a("select",e.directory.currentPath))},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.selectCurrentDirectory")),1)]),_:1},8,["class","disabled","icon"])])])):ve("",!0),e.directory!==void 0?(f(),we(m,{key:1,modelValue:i.value,"onUpdate:modelValue":R[4]||(R[4]=U=>i.value=U),class:"workspace-picker-filter","aria-label":o(c)("workspaceDisplayFilter.label"),clearable:"",placeholder:o(c)("workspaceDisplayFilter.placeholder"),size:"small","clear-icon":o(qe)("clear-input")},{prefix:Z(()=>[B(De,{name:"search"})]),_:1},8,["modelValue","aria-label","placeholder","clear-icon"])):ve("",!0),e.directory!==void 0?(f(),O("ul",oS,[e.pendingDirectoryName?(f(),O("li",rS,[K("button",iS,[B(yn,{name:e.pendingDirectoryName,kind:"DIRECTORY"},null,8,["name"]),K("span",null,W(e.pendingDirectoryName),1),B(A,{type:"warning"},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.pending")),1)]),_:1})]),Le((f(),O("button",{"aria-label":o(c)("generated.workspaceRegistrationPicker.cancelNewDirectory"),type:"button",onClick:R[5]||(R[5]=U=>a("discard-pending"))},[B(De,{name:"close"})],8,sS)),[[_,o(c)("generated.workspaceRegistrationPicker.cancelNewDirectory2")]])])):ve("",!0),(f(!0),O(Ve,null,Je(w.value,U=>(f(),O("li",{key:U.path},[K("button",{class:Ke({selected:e.selectedPath===U.path}),disabled:e.loadingDirectory||!U.selectable,type:"button",onClick:Q=>a("select",U.path),onDblclick:Q=>a("navigate",U.path)},[B(yn,{name:U.name,kind:"DIRECTORY"},null,8,["name"]),K("span",null,W(U.name),1),U.selectable?ve("",!0):(f(),O("small",cS,W(o(c)("generated.workspaceRegistrationPicker.outsideAllowedRoots")),1))],42,lS),Le((f(),O("button",{"aria-label":o(c)("generated.workspaceRegistrationPicker.open",{value0:U.name}),disabled:e.loadingDirectory,type:"button",onClick:Q=>a("navigate",U.path)},[B(De,{name:"chevron-right"})],8,dS)),[[_,o(c)("generated.workspaceRegistrationPicker.open2",{value0:U.name})]])]))),128)),i.value.trim().length>0&&w.value.length===0&&e.pendingDirectoryName.length===0?(f(),O("li",uS,W(o(c)("workspaceDisplayFilter.empty")),1)):ve("",!0)])):e.loadingDirectory?(f(),O("p",vS,W(o(c)("generated.workspaceRegistrationPicker.loadingAllowedRoots")),1)):(f(),O("p",fS,W(o(c)("generated.workspaceRegistrationPicker.expandAndSelectADirectoryToRegister")),1)),e.directory?.truncated?(f(),O("p",pS,W(o(c)("generated.workspaceRegistrationPicker.onlyTheFirst200ChildDirectoriesAre")),1)):ve("",!0),B(L,{"model-value":e.preserveGitConfig??!1,disabled:e.loading||!e.nodeReady,"onUpdate:modelValue":R[6]||(R[6]=U=>a("update:preserveGitConfig",U===!0))},{default:Z(()=>[ke(W(o(c)("personalGit.preserve")),1)]),_:1},8,["model-value","disabled"]),K("div",gS,[e.selectedPath?Le((f(),O("code",mS,[ke(W(o(c)("generated.workspaceRegistrationPicker.selected"))+" "+W(e.selectedPath),1)])),[[_,e.selectedPath]]):(f(),O("span",hS)),B(b,{disabled:e.loading||e.loadingDirectory||!e.nodeReady||!e.selectedPathValid||e.registrationDisabled,loading:e.loading,"native-type":"submit",type:"primary","loading-icon":o(qe)("loading-action")},{default:Z(()=>[ke(W(e.pendingDirectoryName?o(c)("generated.workspaceRegistrationPicker.createAndRegister"):o(c)("generated.workspaceRegistrationPicker.registerWorkspace")),1)]),_:1},8,["disabled","loading","loading-icon"])])],32)]),_:3},8,["title","icon"])]),_:3},8,["model-value"]),s.value?(f(),we(X,{key:0,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),modelValue:s.value,"onUpdate:modelValue":R[11]||(R[11]=U=>s.value=U),title:o(c)("generated.workspaceRegistrationPicker.newDirectory2"),width:"min(460px, calc(100vw - 32px))","close-icon":o(qe)("close")},{footer:Z(()=>[B(b,{"native-type":"button",onClick:R[10]||(R[10]=U=>s.value=!1)},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.cancel")),1)]),_:1}),B(b,{"native-type":"button",type:"primary",onClick:T},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.confirm")),1)]),_:1})]),default:Z(()=>[B(H,{ref_key:"directoryForm",ref:r,model:l,rules:v.value,"label-position":"top"},{default:Z(()=>[B(E,{label:o(c)("generated.workspaceRegistrationPicker.directoryName"),prop:"name"},{default:Z(()=>[B(m,{modelValue:l.name,"onUpdate:modelValue":R[9]||(R[9]=U=>l.name=U),maxlength:"255",placeholder:o(c)("generated.workspaceRegistrationPicker.enterADirectoryName2"),onKeydown:pl(rt(T,["prevent","stop"]),["enter"])},null,8,["modelValue","placeholder","onKeydown"])]),_:1},8,["label"])]),_:1},8,["model","rules"])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ve("",!0)],64)}}}),kc=dt(yS,[["__scopeId","data-v-800c8074"]]),wS=["aria-label","aria-expanded"],kS=["aria-label"],bS={key:2,class:"workspace-tabs-slot"},IS=["aria-label"],SS={key:0},CS={key:1},TS=at({__name:"WorkbenchHeader",props:{mobileViewport:{type:Boolean},view:{},sidebarCollapsed:{type:Boolean},settingsSection:{},managementSection:{},settingsItems:{},managementItems:{},conversationTitle:{}},emits:["toggleSidebar"],setup(e,{emit:t}){const n=t;return(a,r)=>{const s=St("tooltip");return!e.mobileViewport||e.view!=="nodes"?(f(),O("header",{key:0,class:Ke(["workbench-header",{"workspace-tabs-active":e.view==="nodes"}])},[e.mobileViewport?ve("",!0):(f(),O("button",{key:0,class:"workbench-tree-toggle icon-button utility-control","aria-label":e.sidebarCollapsed?a.$t("navigation.expandSidebar"):a.$t("navigation.collapseSidebar"),"aria-expanded":!e.sidebarCollapsed,type:"button",onClick:r[0]||(r[0]=i=>n("toggleSidebar"))},[e.sidebarCollapsed?(f(),we(De,{key:0,name:"menu"})):(f(),we(De,{key:1,name:"menu"}))],8,wS)),e.view==="conversations"&&e.conversationTitle?(f(),O("div",{key:1,class:"breadcrumb","aria-label":a.$t("navigation.currentLocation")},[K("span",null,W(a.$t("navigation.conversations")),1),Le((f(),O("strong",null,[ke(W(e.conversationTitle),1)])),[[s,e.conversationTitle]])],8,kS)):e.view==="nodes"?(f(),O("div",bS,[Ct(a.$slots,"workspace-tabs",{},void 0,!0)])):(f(),O("div",{key:3,class:"breadcrumb","aria-label":a.$t("navigation.currentLocation")},[K("span",null,W(e.view==="settings"?a.$t("navigation.settings"):e.view==="conversations"?a.$t("navigation.conversations"):a.$t("navigation.management")),1),e.view==="settings"?(f(),O("strong",SS,W(e.settingsItems.find(i=>i.id===e.settingsSection)?.label),1)):e.view==="management"?(f(),O("strong",CS,W(e.managementItems.find(i=>i.id===e.managementSection)?.label),1)):ve("",!0)],8,IS))],2)):ve("",!0)}}}),ES=dt(TS,[["__scopeId","data-v-b9909a6a"]]),RS=["aria-label"],AS={class:"admin-terminal-header"},NS=["aria-label"],DS=["aria-selected","onClick"],PS=["aria-label","disabled","onClick"],OS=["aria-label","disabled"],LS={key:1,class:"admin-terminal-actions"},WS={key:0,class:"terminal-profile"},MS={key:0,class:"admin-terminal-content"},xS={class:"terminal-context-cache"},$S=at({__name:"TerminalDock",props:{errorMessage:{type:Function},nodeId:{},direct:{},workspaceId:{},csrfToken:{},renewCsrfToken:{type:Function},enabled:{type:Boolean},capability:{},nodeOsRelease:{},visible:{type:Boolean},embedded:{type:Boolean},mobileMode:{type:Boolean},active:{type:Boolean}},emits:["notice","collapse"],setup(e,{expose:t,emit:n}){const a=kr(()=>br(()=>import("./TerminalTabView-CuQzSev1.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70]))),r=e,s=n,i=x(),l=x();let v;const u=x(!1),d=x(),w=x(!1),k=x(!1),T=x(!1),p=x(!1);let g=0,R=0,b=!1,C=!1;const I=x([]),S=x(),m=new Map,A=Za({csrfToken:()=>r.csrfToken,renewCsrfToken:r.renewCsrfToken}),L=j(()=>r.enabled&&r.nodeId!==void 0&&r.capability?.available===!0),y=j(()=>{if(r.capability?.supportsConPty!==!0||r.nodeOsRelease===void 0)return;const P=/^\d+\.\d+\.(\d+)(?:\.|$)/u.exec(r.nodeOsRelease)?.[1];if(P===void 0)return;const G=Number(P);return Number.isSafeInteger(G)&&G>0?G:void 0}),D=j(()=>(r.capability?.profiles??[]).map(P=>{const G=P.label.replace(/\s*\(Tab completion supported\)$/u,""),ue={"User Shell":"nodeMessages.userShell","Windows Command Prompt":"nodeMessages.windowsCommandPrompt"}[G];return{...P,label:ue===void 0?G:c(ue)}})),E=j(()=>r.workspaceId===void 0?c("generated.terminalDock.nodeTerminal"):c("generated.terminalDock.workspaceTerminal")),H=j(()=>L.value?c("generated.terminalDock.newTerminal"):r.nodeId===void 0?c("generated.terminalDock.selectAnOnlineNodeFirst"):r.capability?.reasonCode??c("generated.terminalDock.theTargetNodeDoesNotProvideA"));function X(P){S.value!==P&&(S.value=P)}function _(P){I.value=[...I.value.filter(G=>G.id!==P.id),P].filter(G=>G.state==="RUNNING")}function U(P){P&&!w.value&&(T.value=!1),w.value=P,P&&(k.value=!0)}function Q(){U(!w.value)}async function $(){C=!0,U(!0),await z(),await N()}async function V(){if(w.value){C=!1,U(!1);return}await $()}async function N(){if(await ut(),b||!C||!w.value||!r.active||!r.visible)return;const P=S.value,G=P===void 0?void 0:m.get(P);G!==void 0&&(G.focus(),C=!1)}async function h(){if(b||!r.active||r.nodeId===void 0||r.capability===void 0)return;const P=++g;if(!L.value){I.value=[],S.value=void 0,p.value=!1;return}p.value=!0;try{const G=await A.request(`/api/terminals?nodeId=${encodeURIComponent(r.nodeId)}`);if(P!==g)return;const ue=new Set(I.value.map(ne=>ne.id));I.value=G.terminals.filter(ne=>ue.has(ne.id)&&ne.state==="RUNNING"&&ne.workspaceId===(r.workspaceId??null)),I.value.some(ne=>ne.id===S.value)||(S.value=I.value[0]?.id)}catch(G){if(P!==g)return;s("notice",c("generated.terminalDock.unableToLoadTerminals",{value0:ge(G)}),"error",G)}finally{if(P!==g)return;p.value=!1,z()}}async function F(){if(b||!r.active||!L.value||r.nodeId===void 0||u.value)return;U(!0),T.value=!0;const P=r.nodeId,G=r.workspaceId,ue=R;u.value=!0;try{const ne=await A.request("/api/terminals",{method:"POST",body:JSON.stringify({nodeId:P,...G===void 0?{}:{workspaceId:G},...i.value===void 0?{}:{profileId:i.value},rows:18,cols:100})});if(b||ue!==R){await ce(P,[ne.terminal]);return}g+=1,p.value=!1,_(ne.terminal),X(ne.terminal.id)}catch(ne){if(b||ue!==R||!r.active)return;s("notice",c("generated.terminalDock.unableToCreateATerminal",{value0:ge(ne)}),"error",ne)}finally{u.value=!1,z()}}async function z(){b||!r.active||!w.value||!r.visible||p.value||u.value||T.value||!L.value||r.workspaceId===void 0||I.value.length>0||await F()}function fe(){U(!1),s("collapse")}async function J(P){if(r.nodeId!==void 0){d.value=P;try{if(await A.request(`/api/terminals/${encodeURIComponent(P)}`,{method:"DELETE",body:JSON.stringify({nodeId:r.nodeId})}),I.value=I.value.filter(G=>G.id!==P),S.value===P){S.value=void 0;const G=I.value[0];G!==void 0&&X(G.id)}I.value.length===0&&fe()}catch(G){s("notice",c("generated.terminalDock.unableToCloseTheTerminal",{value0:ge(G)}),"error",G)}finally{d.value=void 0}}}function re(P){const G=S.value===P;I.value=I.value.filter(ue=>ue.id!==P),G&&(S.value=I.value[0]?.id),I.value.length===0&&w.value&&fe()}function ge(P){return r.errorMessage(P)}He(()=>[r.nodeId,r.workspaceId],()=>{R+=1,T.value=!1},{flush:"sync"}),He(()=>r.capability?.profiles,P=>{i.value=P?.find(G=>G.isDefault)?.id??P?.[0]?.id},{immediate:!0}),He(()=>[r.nodeId,r.workspaceId,r.enabled,r.capability?.available,r.active,r.embedded?r.visible:!0],()=>{r.embedded&&!r.visible||h()},{immediate:!0}),He(()=>[r.mobileMode,r.embedded,r.visible],([P,G,ue])=>{(P||G)&&ue&&U(!0)},{immediate:!0}),He(()=>[w.value,r.visible,L.value,I.value.length,S.value,p.value,u.value],()=>{z(),N()},{immediate:!0});async function ce(P,G){const ne=(await Promise.allSettled(G.map(ee=>A.request(`/api/terminals/${encodeURIComponent(ee.id)}`,{method:"DELETE",body:JSON.stringify({nodeId:P})})))).filter(ee=>ee.status==="rejected"),M=ne[0];M!==void 0&&s("notice",c("generated.terminalDock.unableToReleaseTerminals",{value0:ne.length,value1:ge(M.reason)}),"error")}async function oe(){if(!b){b=!0,g+=1,w.value=!1,C=!1;try{await ce(r.nodeId,I.value)}finally{I.value=[],S.value=void 0}}}return Dt(()=>{v=xt.registerRegion({scope:"terminal",root:()=>l.value,blocksOtherScopes:!0})}),mt(()=>{v?.(),oe()}),t({release:oe,toggle:V}),(P,G)=>{const ue=Un,ne=wn,M=bt,ee=St("tooltip");return f(),O("section",{ref_key:"terminalRoot",ref:l,class:Ke(["admin-terminal",{"is-embedded":e.embedded}]),"aria-label":o(c)("common.adminTerminal")},[K("header",AS,[K("h2",null,W(E.value),1),k.value?Le((f(),O("div",{key:0,class:"terminal-tabs",role:"tablist","aria-label":o(c)("generated.terminalDock.list",{value0:E.value})},[(f(!0),O(Ve,null,Je(I.value,(le,Ee)=>(f(),O("div",{key:le.id,class:Ke(["terminal-tab",{active:le.id===S.value}])},[K("button",{class:"terminal-tab-select",type:"button",role:"tab","aria-selected":le.id===S.value,onClick:xe=>X(le.id)},[K("span",null,"Terminal "+W(Ee+1),1)],8,DS),K("button",{class:"terminal-tab-close icon-button utility-control",type:"button","aria-label":o(c)("generated.terminalDock.closeTerminal",{value0:Ee+1}),disabled:d.value===le.id,onClick:xe=>J(le.id)},[B(De,{name:"close"})],8,PS)],2))),128)),Le((f(),O("button",{class:"terminal-tab terminal-tab-add",type:"button","aria-label":o(c)("generated.terminalDock.newTerminal2"),disabled:!L.value||u.value,onClick:F},[B(De,{name:"plus"})],8,OS)),[[ee,H.value]])],8,NS)),[[At,w.value||I.value.length===0]]):ve("",!0),D.value.length>1||!e.mobileMode?(f(),O("div",LS,[D.value.length>1?(f(),O("label",WS,[ke(W(o(c)("generated.terminalDock.terminalProfile"))+" ",1),B(ne,{modelValue:i.value,"onUpdate:modelValue":G[0]||(G[0]=le=>i.value=le),"aria-label":o(c)("generated.terminalDock.terminalProfile2"),size:"small",disabled:!L.value||u.value,"clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down")},{default:Z(()=>[(f(!0),O(Ve,null,Je(D.value,le=>(f(),we(ue,{key:le.id,value:le.id,label:le.label},null,8,["value","label"]))),128))]),_:1},8,["modelValue","aria-label","disabled","clear-icon","suffix-icon"])])):ve("",!0),!e.mobileMode&&!e.embedded?Le((f(),we(M,{key:1,size:"small","aria-label":w.value?o(c)("generated.terminalDock.collapseTerminal"):o(c)("generated.terminalDock.expandTerminal"),onClick:Q},{default:Z(()=>[K("span",null,W(w.value?o(c)("generated.terminalDock.collapseTerminal3"):o(c)("generated.terminalDock.expandTerminal3")),1)]),_:1},8,["aria-label"])),[[ee,w.value?o(c)("generated.terminalDock.collapseTerminal2"):o(c)("generated.terminalDock.expandTerminal2")]]):ve("",!0)])):ve("",!0)]),k.value?Le((f(),O("div",MS,[K("div",xS,[(f(!0),O(Ve,null,Je(I.value,le=>(f(),we(o(a),{key:le.id,ref_for:!0,ref:Ee=>{Ee===null?o(m).delete(le.id):(o(m).set(le.id,Ee),N())},"terminal-id":le.id,"node-id":e.nodeId??"",direct:e.direct,"workspace-id":e.workspaceId,"csrf-token":e.csrfToken,"renew-csrf-token":e.renewCsrfToken,"windows-con-pty":e.capability?.supportsConPty===!0,"windows-build-number":y.value,active:le.id===S.value,"fill-available":e.embedded===!0,visible:e.active&&e.visible&&w.value,onExited:re,onNotice:G[1]||(G[1]=(Ee,xe,Me)=>s("notice",Ee,xe,Me))},null,8,["terminal-id","node-id","direct","workspace-id","csrf-token","renew-csrf-token","windows-con-pty","windows-build-number","active","fill-available","visible"]))),128))])],512)),[[At,w.value]]):ve("",!0)],10,RS)}}}),FS=dt($S,[["__scopeId","data-v-9799c5d0"]]);function US(e){const t=tl("","");for(const n of e){const a=n.relativePath.split("/");let r=t,s="";for(const i of a.slice(0,-1)){s=s===""?i:`${s}/${i}`;const l=r.directories.get(i);if(l!==void 0){r=l;continue}const v=tl(i,s);r.directories.set(i,v),r=v}r.files.push(n)}return Ic(t)}function VS(e,t){const n=[];return bc(e,0,t,n),n}function bc(e,t,n,a){for(const r of e)a.push({node:r,depth:t}),r.kind==="DIRECTORY"&&n(r.path)&&bc(r.children,t+1,n,a)}function tl(e,t){return{name:e,path:t,directories:new Map,files:[]}}function Ic(e){const t=[...e.directories.values()].sort((a,r)=>nl(a.name,r.name)).map(a=>({kind:"DIRECTORY",name:a.name,path:a.path,children:Ic(a)})),n=[...e.files].sort((a,r)=>nl(a.relativePath,r.relativePath)).map(a=>({kind:"FILE",name:a.displayName,path:a.relativePath,file:a}));return[...t,...n]}function nl(e,t){return e.localeCompare(t,"en-US")}function qS(e){const t=x(!1),n=x(!1),a=wt(),r=x(!1),s=x(),i=x(),l=x(),v=x(),u=x(),d=j(()=>{const C=i.value;return C===void 0?"unsupported":ir(C.path,C.encoding)}),w=e.triggerDownload??((C,I)=>{const S=document.createElement("a");S.href=C,S.download=I,S.click()});let k=0;async function T(C,I,S){const m=++k,A=Sc(C),L=za(A,C.mimeType);r.value=!1,s.value=C,t.value=!0,n.value=!0,a.value=void 0,i.value={path:A,size:C.size,encoding:L?"utf-8":"base64",content:"",truncated:!1},v.value=I,u.value=S,l.value=void 0;try{if(L){const y=await lr(async D=>{const E=await e.source.readFile(C.id,0,D),H=ar(HS(E.content),A,E.eof,C.mimeType);return{path:A,size:E.file.size,...H,truncated:H.encoding==="utf-8"&&!E.eof,nextOffset:H.encoding==="base64"?null:E.nextOffset,revision:String(E.file.updatedAt)}},()=>b(m,C));if(!b(m,C))return;i.value=y}else i.value={path:A,size:C.size,encoding:"base64",content:"",truncated:!1};i.value.encoding==="base64"&&ir(A,"base64")!=="unsupported"&&(l.value=e.source.contentUrl(C)),t.value=!0}catch(y){b(m,C)&&(a.value=y)}finally{b(m,C)&&(n.value=!1)}}async function p(){s.value!==void 0&&s.value.conversationId===e.source.selectedConversationId.value&&!n.value&&await T(s.value,v.value,u.value)}function g(){k+=1,t.value=!1,n.value=!1,a.value=void 0,r.value=!1,s.value=void 0,i.value=void 0,v.value=void 0,u.value=void 0,l.value=void 0}function R(){const C=s.value,I=e.source.selectedConversationId.value;C===void 0||I===void 0||C.conversationId!==I||r.value||w(e.source.contentUrl(C,!0),C.displayName)}function b(C,I){return C===k&&e.source.selectedConversationId.value===I.conversationId&&s.value?.id===I.id}return{visible:t,loading:n,error:a,downloading:r,file:s,content:i,contentUrl:l,targetLine:v,targetColumn:u,kind:d,openFile:T,retry:p,close:g,download:R,dispose:g}}function Sc(e){return`${e.category==="OUTPUT"?"output":"inbox"}/${e.relativePath.replaceAll("\\","/")}`}function HS(e){return Uint8Array.from(atob(e),t=>t.charCodeAt(0))}const BS=at({__name:"ToolChangeReviewWindow",props:{review:{}},emits:["openSource","error"],setup(e,{emit:t}){const n=e,a=t;function r(s,i){const l=s?.text;if(typeof l!="string")return;const v=URL.createObjectURL(new Blob([l],{type:"text/plain;charset=utf-8"})),u=document.createElement("a");u.href=v,u.download=`${i.split("/").at(-1)??"changes"}.diff`,u.click(),URL.revokeObjectURL(v)}return(s,i)=>e.review.tabs.tabs.value.length?(f(),we(Vl,{key:0,tabs:e.review.tabs.tabs.value,"active-tab-id":e.review.tabs.activeTabId.value,onActivate:e.review.tabs.activate,onClose:e.review.tabs.remove,onCloseAll:e.review.clear,onMove:e.review.tabs.move},{default:Z(({tab:l,active:v,registerPageHandle:u,requestClose:d})=>[Le(B(hc,{ref:u,tab:l,active:v,load:n.review.load,onClose:d,onEdit:w=>a("openSource",l.path),onLoadError:i[0]||(i[0]=w=>a("error",w)),onDownload:w=>r(w,l.path)},null,8,["tab","active","load","onClose","onEdit","onDownload"]),[[At,v]])]),_:1},8,["tabs","active-tab-id","onActivate","onClose","onCloseAll","onMove"])):ve("",!0)}}),GS={key:0,class:"hosted-attachments"},zS=["src","alt"],KS={key:1,role:"status","aria-live":"polite"},jS={key:2,role:"status","aria-live":"polite"},_S={key:3,role:"status","aria-live":"polite"},YS={key:4,class:"attachment-error",role:"alert"},QS=["disabled","aria-label","onClick"],JS=["aria-label","onClick"],XS=["disabled","aria-label"],ZS=["disabled","aria-label","aria-description"],eC=["aria-label"],tC={key:2,class:"hosted-model-slot"},nC=["disabled","aria-label","aria-description"],aC={key:3,class:"hosted-model-unavailable","aria-live":"polite"},oC={key:4,class:"hosted-replace-hint",role:"status"},rC={key:5,class:"composer-submitting",role:"status"},iC=["disabled","aria-label"],sC=at({__name:"HostedConversationComposer",props:{connected:{type:Boolean},workspace:{},mobileViewport:{type:Boolean},readonly:{type:Boolean},readonlyReason:{},templateChangeBlocked:{type:Boolean},draft:{type:Boolean},entry:{},reloadTemplates:{type:Function},reloadModels:{type:Function}},emits:["started"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=a.draft&&a.entry?a.entry.prompt:x(""),i=x(),l=a.draft&&a.entry?a.entry.attachments:x([]),v=x(!1),u=x(),d=x(!1),w=x([]);let k=!1;const T=x(!1),p=x(!1);let g;function R(de){s.value=de,g=void 0,i.value?.focusAt(de.length)}t({restoreMessage:R});const b=j(()=>{if(!a.draft||!a.entry)return a.workspace.snapshot.value;const de=a.entry.target.value;if(de!==void 0)return a.workspace.selectedNodeId.value===de.conversation.nodeId&&a.workspace.selectedConversationId.value===de.conversation.id?a.workspace.snapshot.value??de:de}),C=j(()=>{const de=b.value?.conversation;return de===void 0?void 0:mr(de.nodeId,de.id)}),I=j(()=>a.draft===!0&&a.entry?.submitting.value===!0||a.workspace.messageSubmitting.value&&a.workspace.messageSubmissionContext.value===C.value),S=j(()=>{const de=b.value?.run;return de!=null&&["STARTING","RUNNING","CANCELLING"].includes(de.status)?de:void 0}),m=j(()=>{const de=S.value,Ae=b.value?.conversation;if(!(de===void 0||Ae===void 0))return{sessionId:Ae.sessionId,startedAt:de.startedAt}}),A=j(()=>S.value!==void 0),{working:L,workingNow:y,workingStartedAt:D}=Tl(j(()=>b.value?.conversation.sessionId),A,m),E=j(()=>l.value.some(de=>de.status==="UPLOADING")),H=j(()=>a.draft===!0&&l.value.some(de=>de.status==="FAILED")),X=j(()=>l.value.flatMap(de=>de.status==="COMPLETED"&&de.fileId!==void 0?[de.fileId]:[])),_=j(()=>s.value.trim().length>0||X.value.length>0||l.value.some(de=>de.status==="PENDING")),U=j(()=>S.value!==void 0&&S.value.status!=="CANCELLING"),Q=j(()=>S.value!==void 0&&S.value.status!=="CANCELLING"&&!I.value),$=j(()=>a.readonly||a.workspace.templateChanging.value||!a.draft&&b.value!==void 0&&!a.workspace.watchReady.value||a.draft===!0&&a.entry?.writable.value===!1||I.value||S.value!==void 0&&!U.value),V=j(()=>!a.draft&&a.connected!==!1&&b.value!==void 0&&!a.workspace.watchReady.value&&a.workspace.watchFailureCode.value===void 0&&!a.readonly&&!a.workspace.templateChanging.value&&!I.value&&(S.value===void 0||U.value)),N=L,h=j(()=>Rl(S.value,a.readonly?[]:a.workspace.turns.value)),F=j(()=>a.readonly?"":Al(D.value,y.value)),z=j(()=>b.value?.models??(a.draft?a.entry?.models.value??[]:[])),fe=j(()=>b.value?.conversation.modelId??(a.draft?a.entry?.selectedModelId.value??"":"")),J=j(()=>(b.value!==void 0||a.draft===!0&&a.entry?.modelOptionsLoaded.value===!0)&&z.value.length===0),re=j(()=>a.readonly||a.draft===!0&&a.entry?.writable.value===!1||I.value||S.value!==void 0||d.value||a.workspace.templateChanging.value||J.value||a.draft===!0&&b.value===void 0&&a.entry?.modelOptionsLoaded.value!==!0),ge=j(()=>z.value.find(de=>de.id===fe.value)?.name??(fe.value||c("hostedConversations.model"))),ce=j(()=>b.value?.conversation.templateName??""),oe=j(()=>a.entry?.templates.value??[]),P=j(()=>a.entry?.selectedTemplateId.value??""),G=j(()=>oe.value.find(de=>de.id===P.value)?.name??c("hostedConversations.templatePlaceholder")),ue=j(()=>a.draft?a.readonly||I.value:a.readonly||a.connected===!1||a.templateChangeBlocked===!0||!a.workspace.watchReady.value||b.value?.conversation.status!=="ACTIVE"||b.value.conversation.activity.status!=="IDLE"||S.value!==void 0||I.value||E.value||d.value||a.workspace.templateChanging.value),ne=j(()=>a.draft?oe.value:w.value),M=j(()=>a.draft?P.value:b.value?.conversation.templateId),ee=j(()=>a.draft?G.value:ce.value),le=j(()=>ce.value===""?"":c("hostedConversations.loadedTemplateNamed",{name:ce.value})),Ee=nc({canAcceptFiles:()=>!$.value,addFiles:Se,confirmDrop:Qe,rejectDirectory:()=>et(c("hostedConversations.folderAttachmentUnsupported"),"warning"),setDragging:de=>v.value=de});He(s,()=>{g=void 0});function xe(){$.value||u.value?.click()}function Me(de){const Ae=de.target;Ae.files!==null&&Se(Ae.files),Ae.value=""}function Se(de){if(a.draft&&a.entry){a.entry.addFiles(de);return}for(const Ae of de){if(l.value.length>=32){et(c("hostedConversations.attachmentLimit"),"warning");break}const he={id:crypto.randomUUID(),file:Ae,previewUrl:Ae.type.startsWith("image/")?URL.createObjectURL(Ae):null,name:Ae.name,clientRequestId:crypto.randomUUID(),controller:new AbortController,receivedBytes:0,status:a.draft&&b.value===void 0?"PENDING":"UPLOADING"};l.value=[...l.value,he],g=void 0,he.status==="UPLOADING"&&ye(he)}}async function ye(de){try{if(Ll(de.file)){const he=await Wl(de.file);de.controller.signal.throwIfAborted(),de.file=he,de.name=he.name}const Ae=await a.workspace.uploadFile(de.file,de.clientRequestId,he=>Ye(de.id,he),de.controller.signal);nt(de.id,{receivedBytes:Ae.receivedBytes,status:"COMPLETED",name:Ae.name,...Ae.file===void 0?{}:{fileId:Ae.file.id}})}catch(Ae){nt(de.id,{status:"FAILED",error:Re(Ae)})}}function Fe(de){if($.value)return;if(a.draft&&a.entry){a.entry.retryAttachment(de).catch(q=>et(Re(q),"error",q));return}const Ae=l.value.find(q=>q.id===de);if(Ae===void 0||Ae.status!=="FAILED")return;const he={id:Ae.id,file:Ae.file,previewUrl:Ae.previewUrl,name:Ae.name,clientRequestId:crypto.randomUUID(),controller:new AbortController,receivedBytes:0,status:"UPLOADING"};l.value=l.value.map(q=>q.id===de?he:q),g=void 0,ye(he)}function Ye(de,Ae){nt(de,{receivedBytes:Ae.receivedBytes,status:Ae.status==="COMPLETED"?"COMPLETED":"UPLOADING",name:Ae.name,...Ae.file===void 0?{}:{fileId:Ae.file.id}})}function nt(de,Ae){l.value=l.value.map(he=>he.id===de?{...he,...Ae}:he)}function ae(de){if(a.draft&&a.entry){a.entry.removeAttachment(de);return}const Ae=l.value.find(he=>he.id===de);Ae?.controller.abort(),Ae?.previewUrl!==null&&Ae?.previewUrl!==void 0&&URL.revokeObjectURL(Ae.previewUrl),l.value=l.value.filter(he=>he.id!==de),g=void 0}function me(){return JSON.stringify({input:s.value,attachments:X.value,modelId:fe.value,templateId:b.value?.conversation.templateId??P.value})}async function Pe(de){if(a.draft){a.entry?.selectTemplate(de),g=void 0,a.reloadModels?.(!0);return}const Ae=b.value?.conversation,he=w.value.find(te=>te.id===de);if(ue.value||Ae===void 0||he===void 0||de===Ae.templateId)return;const q=a.workspace.selectedWatchId();try{await Nt.confirm(c("hostedConversations.templateSwitchConfirmation",{name:he.name}),c("hostedConversations.templateSwitchTitle"),{closeIcon:qe("close"),confirmButtonText:c("hostedConversations.switchTemplate"),cancelButtonText:c("common.cancel")})}catch{return}if(!(k||ue.value||a.workspace.selectedWatchId()!==q||b.value?.conversation.id!==Ae.id||b.value.conversation.nodeId!==Ae.nodeId||b.value.conversation.templateId!==Ae.templateId||b.value.conversation.activeVersionId!==Ae.activeVersionId))try{await a.workspace.switchTemplate(de,Ae.templateId),g=void 0}catch(te){et(Re(te),"error",te)}}async function Ue(de){if(!de)return;if(a.draft){a.reloadTemplates?.(!0);return}const Ae=b.value?.conversation;if(!(Ae===void 0||T.value)){T.value=!0,p.value=!1;try{const he=await a.workspace.listTemplateOptions();b.value?.conversation.id===Ae.id&&b.value.conversation.nodeId===Ae.nodeId&&(w.value=he)}catch(he){p.value=!0,et(Re(he),"error",he)}finally{T.value=!1}}}async function Qe(de){try{return await Nt.confirm(c("hostedConversations.confirmDroppedAttachments",{count:de.length}),c("hostedConversations.confirmDroppedAttachmentsTitle"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("hostedConversations.confirmUpload"),cancelButtonText:c("hostedConversations.cancel")}),!0}catch{return!1}}async function Te(de){if($.value||E.value||H.value||!_.value)return;if(a.draft&&a.entry){try{await a.entry.submit()&&r("started")}catch(he){et(Re(he),"error",he)}return}let Ae;try{if(b.value===void 0)return;const he=me(),q=l.value,te=JSON.stringify({deliveryIntent:de,message:he});if(g?.fingerprint!==te&&(g={fingerprint:te,clientMessageId:crypto.randomUUID()}),Ae=g,await a.workspace.sendMessage({prompt:s.value,attachmentIds:X.value,clientMessageId:Ae.clientMessageId,modelId:fe.value,...de===void 0?{}:{deliveryIntent:de}}),g!==Ae||me()!==he||l.value!==q)return;s.value="";for(const Y of l.value)Y.previewUrl!==null&&URL.revokeObjectURL(Y.previewUrl);l.value=[],g=void 0}catch(he){g===Ae&&gt(he)!==void 0&&(g=void 0),et(Re(he),"error",he)}}let Ge;Dt(()=>{Ge=Pp({owner:()=>i.value?.$el.querySelector("textarea")??void 0,canSend:()=>!a.mobileViewport,canReplace:()=>!$.value,canStop:()=>Q.value,send:de=>{Te(de?"REPLACE_CURRENT":void 0)},stop:()=>{tt()}})});async function _e(de){if(!(re.value||de===fe.value)){if(a.draft===!0&&b.value===void 0){try{a.entry?.selectModel(de),g=void 0}catch(Ae){et(Re(Ae),"error",Ae)}return}d.value=!0;try{await a.workspace.updateConfiguration({modelId:de}),g=void 0}catch(Ae){et(Re(Ae),"error",Ae)}finally{d.value=!1}}}async function tt(){try{await a.workspace.interrupt()}catch(de){et(Re(de),"error",de)}}function Xe(de){return a.draft&&de.error!==void 0?Re(new Error(de.error)):de.error}function Re(de){switch(gt(de)){case"COMPOSER_IMAGE_CONVERSION_FAILED":case"COMPOSER_IMAGE_LIMIT_EXCEEDED":return it(de);case"HOSTED_CONVERSATION_DRAFT_PAUSED":return c("hostedConversations.firstMessagePaused");case"HOSTED_CONVERSATION_DRAFT_DISPOSED":return c("hostedConversations.firstMessageDisposed");case"HOSTED_CONVERSATION_WATCH_NOT_READY":return c("hostedConversations.firstMessageWatchRequired");case"HOSTED_CONVERSATION_TEMPLATE_REQUIRED":return c("hostedConversations.templateRequired");case"HOSTED_CONVERSATION_MODEL_REQUIRED":return c("hostedConversations.modelUnavailable");case"HOSTED_CONVERSATION_QUOTA_EXCEEDED":case"HOSTED_CONVERSATION_UPLOAD_QUOTA_EXCEEDED":return c("hostedConversations.quotaExceeded");case"HOSTED_CONVERSATION_UPLOAD_TOO_LARGE":return c("hostedConversations.attachmentTooLarge");case"HOSTED_CONVERSATION_UPLOAD_INVALID_NAME":return c("hostedConversations.attachmentInvalidName");case"HOSTED_CONVERSATION_UPLOAD_CONFLICT":return c("hostedConversations.attachmentConflict");case"CONVERSATION_HOSTING_STORAGE_FULL":return c("hostedConversations.storageFull");case"HOSTED_CONVERSATION_RUN_ACTIVE":return c("hostedConversations.runActive");case"HOSTED_CONVERSATION_REPLACE_UNSUPPORTED":return c("hostedConversations.replaceCurrentUnsupported");case"HOSTED_CONVERSATION_UPGRADE_FAILED":return c("hostedConversations.upgradeFailed");default:return de instanceof Error?de.message:c("hostedConversations.operationFailed")}}return mt(()=>{if(Ge?.(),k=!0,!(a.draft&&a.entry))for(const de of l.value)de.controller.abort(),de.previewUrl!==null&&URL.revokeObjectURL(de.previewUrl)}),(de,Ae)=>{const he=ln,q=sn,te=rn,Y=St("tooltip");return f(),we(Ol,{ref_key:"composer",ref:i,class:Ke({"hosted-draft-composer":e.draft,"hosted-syncing":V.value}),input:o(s),"onUpdate:input":Ae[4]||(Ae[4]=se=>Nf(s)?s.value=se:null),placeholder:e.readonly?e.readonlyReason:o(c)("hostedConversations.messagePlaceholder"),working:o(N),"working-label":h.value,"working-busy":!e.readonly&&o(El)(S.value,e.workspace.turns.value),"elapsed-label":F.value,"connection-busy":e.connected===!1||!e.draft&&!e.workspace.watchReady.value&&!e.workspace.watchFailureCode.value,"connection-label":e.connected===!1?o(c)("conversationActivity.reconnecting"):!e.draft&&!e.workspace.watchReady.value&&!e.workspace.watchFailureCode.value?o(c)("conversationActivity.syncing"):"",readonly:$.value,"drop-target":v.value,"mobile-viewport":e.mobileViewport,"command-states":[],loading:I.value||d.value||e.workspace.templateChanging.value,"skill-tokens":[],onSubmit:Te,onPaste:o(Ee).onPaste,onDragenter:o(Ee).onDragEnter,onDragleave:o(Ee).onDragLeave,onDrop:o(Ee).onDrop},{attachments:Z(()=>[o(l).length?(f(),O("ul",GS,[(f(!0),O(Ve,null,Je(o(l),se=>(f(),O("li",{key:se.id},[se.previewUrl?(f(),O("img",{key:0,src:se.previewUrl,alt:se.name},null,8,zS)):ve("",!0),Le((f(),O("span",null,[ke(W(se.name),1)])),[[Y,se.name]]),se.status==="PENDING"?(f(),O("small",KS,W(o(c)("hostedConversations.uploadAfterCreate")),1)):se.status==="UPLOADING"?(f(),O("small",jS,W(o(c)("hostedConversations.uploadProgress",{value:Math.round(se.receivedBytes/Math.max(1,se.file.size)*100)})),1)):se.status==="COMPLETED"?(f(),O("small",_S,W(o(c)("hostedConversations.uploaded")),1)):(f(),O("small",YS,W(Xe(se)),1)),se.status==="FAILED"?(f(),O("button",{key:5,class:"utility-control",type:"button",disabled:$.value,"aria-label":o(c)("hostedConversations.retryAttachmentNamed",{name:se.name}),onClick:be=>Fe(se.id)},W(o(c)("hostedConversations.retryAttachment")),9,QS)):ve("",!0),K("button",{type:"button",class:"utility-control","aria-label":o(c)("hostedConversations.removeAttachment",{name:se.name}),onClick:be=>ae(se.id)},[B(De,{name:"close"})],8,JS)]))),128))])):ve("",!0)]),toolbar:Z(()=>[K("div",{class:Ke(["hosted-composer-toolbar",{"has-mobile-send":e.mobileViewport&&U.value&&_.value}])},[K("input",{ref_key:"fileInput",ref:u,class:"hosted-file-input",type:"file",multiple:"",onChange:Me},null,544),Le((f(),O("button",{class:"hosted-icon-button utility-control",type:"button",disabled:$.value,"aria-label":o(c)("hostedConversations.addAttachment"),onClick:xe},[B(De,{name:"attachment"})],8,XS)),[[Y,o(c)("hostedConversations.addAttachment")]]),!e.draft||!b.value?(f(),we(te,{key:0,class:"hosted-template-menu hosted-model-menu",disabled:ue.value,trigger:"click",onCommand:Ae[0]||(Ae[0]=se=>Pe(String(se))),onVisibleChange:Ue},{dropdown:Z(()=>[B(q,null,{default:Z(()=>[T.value?(f(),we(he,{key:0,disabled:""},{default:Z(()=>[ke(W(o(c)("common.loading")),1)]),_:1})):p.value?(f(),we(he,{key:1,disabled:""},{default:Z(()=>[ke(W(o(c)("hostedConversations.templateOptionsFailed")),1)]),_:1})):ve("",!0),(f(!0),O(Ve,null,Je(T.value||p.value?[]:ne.value,se=>(f(),we(he,{key:se.id,command:se.id,disabled:!se.available||!e.draft&&se.id===M.value,class:Ke({"is-selected":se.id===M.value})},{default:Z(()=>[ke(W(se.name),1)]),_:2},1032,["command","disabled","class"]))),128)),!T.value&&!p.value&&ne.value.length===0?(f(),we(he,{key:2,disabled:""},{default:Z(()=>[ke(W(o(c)(e.draft?"hostedConversations.noTemplates":"hostedConversations.noSameNodeTemplates")),1)]),_:1})):ve("",!0)]),_:1})]),default:Z(()=>[Le((f(),O("button",{class:"hosted-template-trigger hosted-model-trigger",type:"button",disabled:ue.value,"aria-label":o(c)("hostedConversations.chooseTemplate"),"aria-description":ee.value},[B(De,{name:"document","aria-hidden":"true"}),K("span",null,W(ee.value),1),B(De,{name:"chevron-down","aria-hidden":"true"})],8,ZS)),[[Y,ee.value]])]),_:1},8,["disabled"])):ce.value?Le((f(),O("span",{key:1,class:"hosted-template-name","aria-label":le.value},[B(De,{name:"document","aria-hidden":"true"}),K("span",null,W(ce.value),1)],8,eC)),[[Y,le.value]]):ve("",!0),b.value||e.draft&&P.value?(f(),O("div",tC,[B(te,{class:"hosted-model-menu",disabled:re.value,trigger:"click",onCommand:Ae[1]||(Ae[1]=se=>_e(String(se)))},{dropdown:Z(()=>[B(q,null,{default:Z(()=>[(f(!0),O(Ve,null,Je(z.value,se=>(f(),we(he,{key:se.id,command:se.id,class:Ke({"is-selected":se.id===fe.value})},{default:Z(()=>[ke(W(se.name),1)]),_:2},1032,["command","class"]))),128))]),_:1})]),default:Z(()=>[K("button",{class:"hosted-model-trigger",type:"button",disabled:re.value,"aria-label":o(c)("hostedConversations.model"),"aria-description":ge.value},[K("span",null,W(ge.value),1),B(De,{name:"chevron-down","aria-hidden":"true"})],8,nC)]),_:1},8,["disabled"])])):ve("",!0),J.value?(f(),O("span",aC,W(o(c)("hostedConversations.modelUnavailable")),1)):ve("",!0),U.value||e.mobileViewport&&_.value?(f(),O("span",oC,W(o(c)(e.mobileViewport?U.value?"composerSend.holdHint":"composerSend.holdSendHint":"hostedConversations.replaceCurrentHint")),1)):ve("",!0),I.value?(f(),O("span",rC,W(o(c)("workbench.sending")),1)):ve("",!0),S.value?Le((f(),O("button",{key:6,class:"hosted-stop-button",type:"button",disabled:!Q.value,"aria-label":o(c)("hostedConversations.stopWithEsc"),onClick:tt},[...Ae[5]||(Ae[5]=[K("i",{"aria-hidden":"true"},null,-1)])],8,iC)),[[Y,o(c)("hostedConversations.stopWithEsc")]]):ve("",!0),!S.value||e.mobileViewport&&U.value&&_.value?(f(),we(Op,{key:7,class:"hosted-send-button",disabled:$.value||E.value||H.value||!_.value||d.value||J.value,"mobile-viewport":e.mobileViewport,"can-steer":U.value,"context-key":`${C.value??P.value}:${S.value?.id??""}`,submitting:I.value,label:o(c)(e.mobileViewport&&U.value?"composerSend.steer":"hostedConversations.send"),onSend:Ae[2]||(Ae[2]=se=>Te(e.mobileViewport&&U.value?"REPLACE_CURRENT":void 0)),onSteer:Ae[3]||(Ae[3]=se=>Te("REPLACE_CURRENT"))},null,8,["disabled","mobile-viewport","can-steer","context-key","submitting","label"])):ve("",!0)],2)]),_:1},8,["class","input","placeholder","working","working-label","working-busy","elapsed-label","connection-busy","connection-label","readonly","drop-target","mobile-viewport","loading","onPaste","onDragenter","onDragleave","onDrop"])}}}),Cc=dt(sC,[["__scopeId","data-v-bbd597aa"]]),lC=["aria-busy"],cC={class:"conversation-create-panel"},dC={class:"conversation-create-heading"},uC=at({__name:"HostedConversationEntryPage",props:{request:{type:Function},workspace:{},mobileViewport:{type:Boolean},connected:{type:Boolean},entry:{}},emits:["started"],setup(e,{emit:t}){const n=e,a=t,r=n.entry,s=x(!1),i=x(!1);let l=0,v=0;async function u(){const T=++l;s.value=!0;try{if(await r.loadTemplates(),T!==l)return;i.value=!0,await d()}catch(p){if(T!==l)return;et(p instanceof Error?it(p):c("hostedConversations.loadFailed"),"error",p)}finally{T===l&&(s.value=!1)}}async function d(){const T=++v;try{await r.loadModelOptions()}catch(p){if(T!==v)return;et(p instanceof Error?it(p):c("hostedConversations.loadFailed"),"error",p)}}function w(T){T&&!s.value&&u()}function k(T){T&&d()}return Dt(()=>{r.templates.value.length===0?u():r.modelOptionsLoaded.value||d()}),(T,p)=>{const g=ca;return Le((f(),O("section",{"element-loading-custom-class":"mar-page-loading",class:"hosted-entry-page","aria-busy":s.value},[K("div",cC,[K("div",dC,[K("h2",null,W(o(c)("conversationEmpty.hosted.title")),1),K("p",null,W(o(c)("hostedConversations.chooseTemplateHint")),1)]),B(Cc,{connected:e.connected,workspace:e.workspace,"mobile-viewport":e.mobileViewport,readonly:!1,"readonly-reason":"",draft:"",entry:o(r),"reload-templates":w,"reload-models":k,onStarted:p[0]||(p[0]=R=>a("started"))},null,8,["connected","workspace","mobile-viewport","entry"])])],8,lC)),[[g,s.value&&!i.value]])}}}),vC=dt(uC,[["__scopeId","data-v-9d98b669"]]),Tc="mar.hosted-conversations.last-template-id.v1";function fC(e,t={}){const n=x([]),a=x(),r=t.storage??(typeof localStorage>"u"?void 0:localStorage);let s=pC(r),i,l,v=0,u=0,d=0;const w=wt([]),k=x(!1),T=x();function p(){d+=1,w.value=[],k.value=!1,T.value=void 0}const g=x(""),R=x([]),b=x(!1),C=x();let I=!0,S=0,m=!1,A;const L=j(()=>{const P=t.submission?.workspace;return C.value===void 0||!y()||P?.watchReady.value===!0});function y(){const P=t.submission?.workspace;return C.value!==void 0&&P?.selectedNodeId.value===C.value.conversation.nodeId&&P.selectedConversationId.value===C.value.conversation.id}function D(P){if(m)throw new Error("HOSTED_CONVERSATION_DRAFT_DISPOSED");if(!I||S!==P)throw new Error("HOSTED_CONVERSATION_DRAFT_PAUSED")}function E(){if(!y()||t.submission?.workspace.watchReady.value!==!0)throw new Error("HOSTED_CONVERSATION_WATCH_NOT_READY")}function H(P){if(!(b.value||m))for(const G of P){if(R.value.length>=32)break;R.value.push({id:crypto.randomUUID(),file:G,name:G.name,previewUrl:G.type.startsWith("image/")?URL.createObjectURL(G):null,clientRequestId:crypto.randomUUID(),controller:new AbortController,receivedBytes:0,status:"PENDING"})}}function X(){for(const P of R.value)P.previewUrl!==null&&URL.revokeObjectURL(P.previewUrl);R.value=[]}function _(P){if(b.value)return;const G=R.value.find(ue=>ue.id===P);G?.controller.abort(),G?.previewUrl!=null&&URL.revokeObjectURL(G.previewUrl),R.value=R.value.filter(ue=>ue.id!==P)}async function U(P){const G=t.submission.workspace,ue=S;E(),P.status==="FAILED"&&P.error!==void 0&&/^[A-Z][A-Z0-9_]+$/u.test(P.error)&&(P.clientRequestId=crypto.randomUUID()),P.status="UPLOADING";const ne=M=>{P.receivedBytes=M.receivedBytes,P.name=M.name,M.file!==void 0&&(P.fileId=M.file.id)};try{if(Ll(P.file)){const ee=await Wl(P.file);P.controller.signal.throwIfAborted(),D(ue),E(),P.file=ee,P.name=ee.name}const M=await G.uploadFile(P.file,P.clientRequestId,ne,P.controller.signal);ne(M),P.status="COMPLETED",delete P.error}catch(M){throw P.status="FAILED",P.error=gt(M)??(M instanceof Error?M.message:"HOSTED_CONVERSATION_UPLOAD_FAILED"),M}}async function Q(P){if(b.value||m)return;const G=R.value.find(M=>M.id===P);if(G?.status!=="FAILED")return;const ue=t.submission;if(C.value===void 0||ue===void 0)return;const ne=S;b.value=!0;try{D(ne),y()||await ue.select(C.value),D(ne),await U(G)}finally{b.value=!1,m&&X()}}async function $(){if(b.value||m||g.value.trim()===""&&R.value.length===0)return!1;const P=t.submission;if(P===void 0)throw new Error("HOSTED_CONVERSATION_REQUIRED");const G=S;D(G),b.value=!0;let ue;try{C.value===void 0&&(C.value=await oe(),P.workspace.rememberConversation(C.value.conversation)),D(G),y()||await P.select(C.value),D(G),E();for(const le of R.value)le.status!=="COMPLETED"&&(D(G),await U(le));D(G),E();const ne=P.workspace.snapshot.value;if(ne.models.length===0)throw new Error("HOSTED_CONVERSATION_MODEL_REQUIRED");const M={prompt:g.value,attachmentIds:R.value.flatMap(le=>le.fileId===void 0?[]:[le.fileId]),modelId:ne.conversation.modelId},ee=JSON.stringify(M);return A?.fingerprint!==ee&&(A={fingerprint:ee,clientMessageId:crypto.randomUUID()}),ue=A,await P.workspace.sendMessage({...M,clientMessageId:ue.clientMessageId}),g.value="",X(),A=void 0,C.value=void 0,I&&G===S}catch(ne){throw ue!==void 0&&A===ue&&gt(ne)!==void 0&&(A=void 0),ne}finally{b.value=!1,m&&X()}}function V(){I=!1,S+=1}function N(){m||(I=!0)}function h(){V(),m=!0,b.value||X()}function F(){i=void 0,l=void 0,v+=1}async function z(){const P=++u,G=v;try{const ue=await zl(e);if(P!==u)return;J(ue,G)}catch(ue){if(P===u)throw ue}}function fe(P){J(P,v)}function J(P,G){n.value=[...P];const ue=a.value;a.value=al(P,ue)??al(P,s)??(P.length===1?P[0]?.id:void 0),a.value!==ue&&p(),(a.value!==ue||v===G)&&F()}async function re(){const P=a.value,G=n.value.find(ne=>ne.id===P);if(P===void 0||G===void 0){p();return}const ue=++d;k.value=!1;try{const ne=Df.safeParse(await e(`/api/nodes/${encodeURIComponent(G.nodeId)}/conversation-templates/${encodeURIComponent(P)}/model-options`));if(!ne.success)throw new Error("HOSTED_CONVERSATION_RESPONSE_INVALID");const M=ne.data;if(ue!==d||a.value!==P)return;const ee=T.value,le=M.models.some(Ee=>Ee.id===ee)?ee:M.defaultModelId??void 0;ee!==void 0&&le!==ee&&F(),w.value=M.models,T.value=le,k.value=!0}catch(ne){if(ue===d&&a.value===P)throw ne}}function ge(P){if(!n.value.some(G=>G.id===P))throw new Error("HOSTED_CONVERSATION_TEMPLATE_NOT_AVAILABLE");a.value!==P&&(F(),p()),a.value=P,s=P,gC(r,P)}function ce(P){if(!w.value.some(G=>G.id===P))throw new Error("HOSTED_CONVERSATION_MODEL_NOT_AVAILABLE");T.value!==P&&F(),T.value=P}async function oe(P){const G=a.value;if(G===void 0)throw new Error("HOSTED_CONVERSATION_TEMPLATE_REQUIRED");const ue=n.value.find(ee=>ee.id===G);if(ue===void 0||!ue.available)throw new Error("HOSTED_CONVERSATION_TEMPLATE_NOT_AVAILABLE");i===void 0&&(i=P??crypto.randomUUID(),l=T.value);const ne=++v,M=await e(`/api/nodes/${encodeURIComponent(ue.nodeId)}/hosted-conversations`,{method:"POST",body:JSON.stringify({templateId:G,clientRequestId:i,modelId:l})});try{const ee=ea.parse(M);return v===ne&&F(),ee}catch{throw new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}}return{templates:n,selectedTemplateId:a,models:w,modelOptionsLoaded:k,selectedModelId:T,prompt:g,attachments:R,submitting:b,target:C,writable:L,loadTemplates:z,loadModelOptions:re,setTemplates:fe,selectTemplate:ge,selectModel:ce,create:oe,addFiles:H,removeAttachment:_,retryAttachment:Q,submit:$,suspend:V,resume:N,dispose:h}}function al(e,t){return t!==void 0&&e.some(n=>n.id===t)?t:void 0}function pC(e){try{const t=e?.getItem(Tc)?.trim();return t===void 0||t.length===0?void 0:t}catch{return}}function gC(e,t){try{e?.setItem(Tc,t)}catch{}}const mC=["aria-label"],hC=["inert","aria-label"],yC={class:"sidebar-heading session-heading history-header"},wC={class:"session-heading-meta"},kC={class:"history-controls"},bC={class:"history-search-row"},IC={key:0,class:"history-empty-text"},SC=["onMouseenter","onFocusin","onContextmenu"],CC=["aria-current","onClick"],TC={class:"history-title-row"},EC={key:1,class:"history-run-indicator","aria-hidden":"true"},RC={key:2,class:"history-unread-label mar-unread-label"},AC=["datetime"],NC=["disabled","aria-label"],DC={key:1,class:"history-filter-note"},PC=["aria-busy"],OC=["aria-label"],LC=["inert"],WC=["aria-label"],MC={key:3,class:"conversation-draft"},xC=["inert","aria-label"],$C={class:"pane-header files-header"},FC=["disabled"],UC=["aria-disabled","disabled"],VC={class:"files-list"},qC={key:0},HC={key:0,class:"mar-tooltip-control"},BC=["aria-expanded","aria-label","onClick"],GC=["aria-label","onClick"],zC=["disabled","aria-label","onClick"],KC={key:1,class:"files-draft-empty"},jC=at({__name:"HostedConversationWorkspacePage",props:Vi({connected:{type:Boolean},workspace:{},request:{type:Function},mobileViewport:{type:Boolean},mobileHistoryOpen:{type:Boolean},sidebarCollapsed:{type:Boolean},selectConversation:{type:Function},routeTarget:{},restoringRoute:{type:Boolean},clearConversation:{type:Function},hasUnreadConversation:{type:Function}},{mobileFilesOpen:{type:Boolean,default:!1},mobileFilesOpenModifiers:{}}),emits:Vi(["closeMobileHistory"],["update:mobileFilesOpen"]),setup(e,{emit:t}){const n=e,a=or(),r=uh(n.request),s=j(()=>G.value);function i(Ne){const Be=n.workspace.selectedNodeId.value,Ze=n.workspace.selectedConversationId.value;!Be||!Ze||!s.value||r.open(Ne,{nodeId:Be,sessionId:Ze,workspaceId:"",scope:"HOSTED"})}async function l(Ne){const Be=_o(n.workspace.snapshot.value?.files??[],Ne);if(!Be){et(c("presentation.currentFileUnavailable"),"error");return}await Fe.openFile(Be),Fe.visible.value&&r.clear()}const v=t,u=x(""),d=x(!1),w=x(),k=x(),T=x(!1);let p;function g(){return!n.workspace.loadingConversations.value&&!n.workspace.loadingMoreConversations.value&&n.workspace.loadMoreConversationsError.value===void 0&&n.workspace.hasMoreConversations.value&&n.connected!==!1&&u.value.trim()===""&&(n.mobileViewport?n.mobileHistoryOpen:!n.sidebarCollapsed)}He(()=>[w.value,k.value,n.workspace.conversations.value,n.workspace.loadingMoreConversations.value,n.workspace.loadMoreConversationsError.value,n.workspace.hasMoreConversations.value,n.connected,n.mobileViewport,n.mobileHistoryOpen,n.sidebarCollapsed,n.workspace.loadingConversations.value,u.value],()=>{p?.disconnect(),n.workspace.loadingMoreConversations.value||(T.value=!1),!(!w.value||!k.value||!g()||typeof IntersectionObserver>"u")&&(p=new IntersectionObserver(Ne=>{Ne.some(Be=>Be.isIntersecting)&&g()&&(w.value?.getClientRects().length??0)>0&&(p?.disconnect(),n.workspace.loadMoreConversations())},{root:w.value,rootMargin:"0px 0px 120px 0px"}),p.observe(k.value))},{flush:"post"});function R(){n.workspace.loadingMoreConversations.value||(T.value=!0,n.workspace.loadMoreConversations())}const b=x(),C=wt();let I=0;const S=j(()=>n.connected!==!1&&(n.workspace.watchLoading.value||n.workspace.watchFailureCode.value===void 0&&(b.value!==void 0||n.restoringRoute))),m=j(()=>n.workspace.watchFailureCode.value!==void 0||!n.workspace.watchReady.value&&C.value?.key===xe.value),A=j(()=>{const Ne=n.workspace.watchFailure.value??(C.value?.key===xe.value?C.value.error:void 0);if(Ne!==void 0)return Wt(Ne);const Be=n.workspace.watchFailureCode.value;return Be===void 0?void 0:Wt(new Error(Be))}),L=x(),y=x(),D=x(!1),E=x(),H=x(),X=x(!1),_=fC(n.request,{submission:{workspace:n.workspace,select:Ne=>n.selectConversation(Ne.conversation,Ne)}}),U=Pf(e,"mobileFilesOpen"),Q=x(!1),$=x(!1),V=x(),N=x(),h=x(!1),F=x(),z=x(),fe=x(new Set);let J=0,re=0,ge;const ce=j(()=>{const Ne=u.value.trim().toLocaleLowerCase();return Ne===""?n.workspace.conversations.value:n.workspace.conversations.value.filter(Be=>Tn(Be).toLocaleLowerCase().includes(Ne))}),oe=j(()=>({context:u.value.trim().toLocaleLowerCase(),ready:n.connected!==!1&&!d.value&&!n.workspace.loadingMoreConversations.value,items:ce.value.map(Ne=>({key:Oe(Ne),lastActivityAt:Ne.lastActivityAt,pin:Ne.pinnedAt}))})),P=j(()=>n.workspace.snapshot.value?.conversation??n.workspace.conversations.value.find(Ne=>Ne.nodeId===n.workspace.selectedNodeId.value&&Ne.id===n.workspace.selectedConversationId.value)),G=j(()=>{const Ne=n.workspace.snapshot.value?.conversation;return n.workspace.watchFailureCode.value===void 0&&Ne!==void 0&&Ne.status==="ACTIVE"}),ue=j(()=>G.value&&n.workspace.snapshot.value?.conversation.activity.status==="IDLE"&&n.workspace.snapshot.value!==void 0),ne=j(()=>G.value&&!n.workspace.templateChanging.value),M=j(()=>P.value===void 0?!1:n.workspace.watchFailureCode.value!==void 0?!0:n.workspace.snapshot.value!==void 0&&!G.value),ee=j(()=>n.workspace.watchFailureCode.value!==void 0?c("hostedConversations.watchUnavailableReadonly"):c("hostedConversations.readonly")),le=j(()=>{const Ne=new Map([["UPLOAD",[]],["OUTPUT",[]]]);for(const Be of n.workspace.snapshot.value?.files??[])Ne.get(Be.category).push(Be);return[...Ne.entries()].map(([Be,Ze])=>{const ot=US(Ze);return{category:Be,files:Ze,rows:VS(ot,yt=>fe.value.has(Pe(Be,yt)))}})}),Ee=j(()=>n.workspace.turns.value),xe=j(()=>`${n.workspace.selectedNodeId.value??""}:${n.workspace.selectedConversationId.value??""}`),Me=Nl(),Se=Dl(n.workspace.selectedNodeId,{sourceUrl:({nodeId:Ne,runId:Be,imageSelector:Ze})=>{const ot=n.workspace.selectedConversationId.value;if(ot!==void 0)return`/api/nodes/${encodeURIComponent(Ne)}/hosted-conversations/${encodeURIComponent(ot)}/runs/${encodeURIComponent(Be)}/images/${encodeURIComponent(Ze)}`}}),ye=x(),Fe=qS({source:n.workspace}),Ye=j(()=>Fe.error.value===void 0?void 0:Tr(Fe.error.value,Fe.file.value?.relativePath??""));function nt(){v("closeMobileHistory")}function ae(){U.value=!1,nt()}function me(){nt(),U.value=!0}function Pe(Ne,Be){return`${Ne}:${Be}`}function Ue(Ne,Be){return fe.value.has(Pe(Ne,Be))}function Qe(Ne,Be){const Ze=Pe(Ne,Be),ot=new Set(fe.value);ot.has(Ze)?ot.delete(Ze):ot.add(Ze),fe.value=ot}function Te(Ne,Be){return c(Ue(Ne,Be)?"hostedConversations.collapseFileDirectory":"hostedConversations.expandFileDirectory",{category:ze(Ne),path:Be})}function Ge(){Me.handleScroll(()=>{n.workspace.olderHistoryError.value===void 0&&tt()})}function _e(Ne){ge?.disconnect(),z.value=Ne,Me.setElement(Ne),Ne!==void 0&&(ge=new ResizeObserver(()=>Me.handleResize()),ge.observe(Ne),Me.following.value&&Me.scrollToLatestAfterLayout())}async function tt(){const Ne=z.value,Be=Ne?.scrollHeight??0,Ze=xe.value;await n.workspace.loadOlderHistory(),await ut(),Ze===xe.value&&Ne===z.value&&Ne!==void 0&&n.workspace.olderHistoryError.value===void 0&&(Ne.scrollTop+=Ne.scrollHeight-Be)}async function Xe(){await Re()}async function Re(){const Ne=++J;d.value=!0;try{if(await n.workspace.loadConversations(),Ne!==J||X.value)return;const Be=n.workspace.selectedConversationId.value,Ze=n.routeTarget!==void 0&&n.workspace.selectedNodeId.value===n.routeTarget.nodeId&&Be===n.routeTarget.conversationId,ot=n.restoringRoute||Ze&&n.workspace.snapshot.value===void 0&&n.workspace.watchFailureCode.value===void 0,yt=n.workspace.selectedNodeId.value!==void 0&&n.workspace.conversations.value.some(Mt=>Mt.nodeId===n.workspace.selectedNodeId.value&&Mt.id===Be);if(ot||yt)return;n.clearConversation();const Ut=n.workspace.conversations.value[0];Ut!==void 0?await Ae(Ut,!1):(_.resume(),X.value=!0)}catch(Be){Ne===J&&et(Wt(Be),"error",Be)}finally{Ne===J&&(d.value=!1)}}async function de(){await Re()}async function Ae(Ne,Be=!0){const Ze=Oe(Ne);if(b.value===Ze)return;const ot=++I;b.value=Ze,C.value=void 0,_.suspend(),X.value=!1,Be&&ae();try{await n.selectConversation(Ne)}catch(yt){ot===I&&(C.value={key:`${Ne.nodeId}:${Ne.id}`,error:yt})}finally{ot===I&&(b.value=void 0)}}function he(){const Ne=P.value;Ne===void 0||S.value||n.connected===!1||Ae(Ne,!1)}function q(){_.resume(),X.value=!0,n.clearConversation(),ae()}function te(){X.value=!1,ae()}async function Y(Ne){if(L.value!==void 0)return;let Be;try{Be=(await Nt.prompt(c("hostedConversations.titlePrompt"),c("hostedConversations.editTitle"),{closeIcon:qe("close"),inputValue:Tn(Ne),inputPlaceholder:c("hostedConversations.titlePlaceholder"),inputValidator:ot=>{const yt=ot.trim().length;return yt===0?c("hostedConversations.titleRequired"):yt<=160||c("hostedConversations.titleTooLong")},confirmButtonText:c("common.save"),cancelButtonText:c("common.cancel")})).value}catch{return}const Ze=Oe(Ne);L.value=Ze;try{await n.workspace.updateMetadata({title:Be.trim()},Ne.nodeId,Ne.id)}catch(ot){et(Wt(ot),"error",ot)}finally{L.value===Ze&&(L.value=void 0)}}async function se(Ne,Be){if(L.value!==void 0)return;const Ze=Oe(Ne);L.value=Ze;try{await n.workspace.updateMetadata({pinned:Be},Ne.nodeId,Ne.id)}catch(ot){et(Wt(ot),"error",ot)}finally{L.value===Ze&&(L.value=void 0)}}async function be(Ne){if(L.value!==void 0)return;try{await Nt.confirm(c("hostedConversations.deleteConfirmation",{title:Tn(Ne)}),c("hostedConversations.deleteTitle"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("hostedConversations.delete"),cancelButtonText:c("hostedConversations.cancel")})}catch{return}const Be=Oe(Ne),Ze=Ne.nodeId===n.workspace.selectedNodeId.value&&Ne.id===n.workspace.selectedConversationId.value;L.value=Be;try{await n.workspace.deleteConversation(Ne.nodeId,Ne.id),Ze&&n.workspace.selectedConversationId.value===void 0&&(n.clearConversation(),_.resume(),X.value=!0,ae()),await de(),et(c("hostedConversations.deleted"),"success")}catch(ot){et(Wt(ot),"error",ot)}finally{L.value===Be&&(L.value=void 0)}}function Oe(Ne){return`${Ne.nodeId}\0${Ne.id}`}function We(Ne){return E.value===Ne||H.value===Ne||D.value&&y.value===Ne}function Ie(Ne){const Be=Ne.currentTarget;Be instanceof HTMLElement&&Ne.relatedTarget instanceof Node&&Be.contains(Ne.relatedTarget)||(H.value=void 0)}function st(Ne,Be){E.value=Ne,y.value=Ne,ut(()=>Be.querySelector(".history-more-button")?.click())}function pe(Ne,Be){Be.preventDefault();const Ze=Be.currentTarget;Ze instanceof HTMLElement&&st(Oe(Ne),Ze)}function Ce(Ne){Ae(Ne)}function je(Ne,Be){Ne?(y.value=Be,D.value=!0):y.value===Be&&(D.value=!1,y.value=void 0)}function ze(Ne){switch(Ne){case"UPLOAD":return c("hostedConversations.fileCategoryUPLOAD");case"OUTPUT":return c("hostedConversations.fileCategoryOUTPUT")}}async function vt(Ne,Be){try{if(navigator.clipboard?.writeText===void 0)throw new Error("CLIPBOARD_UNAVAILABLE");await navigator.clipboard.writeText(Ne),Be()}catch{et(c("hostedConversations.copyFailed"),"error")}}async function Rt(Ne,Be){if(h.value||!ue.value||Be.kind!=="user_message"||Be.status!=="COMPLETED"||!["SUCCEEDED","FAILED","CANCELLED","INTERRUPTED","LOST"].includes(Ne.status)||Ne.rewind===void 0)return;const Ze=Ba(Be.kind,Be.payload),ot=Ne.rewind.before,yt=xe.value;try{await Nt.confirm(c("hostedConversations.rollbackConfirmation"),c("hostedConversations.rollbackTitle"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("hostedConversations.rollback"),cancelButtonText:c("common.cancel")})}catch{return}const Ut=Ee.value.find(Pt=>Pt.id===Ne.id),Mt=Ut?.items.find(Pt=>Pt.id===Be.id);if(!(h.value||!ue.value||xe.value!==yt||Ut?.rewind?.before!==ot||Mt?.kind!=="user_message"||Mt.status!=="COMPLETED")){h.value=!0;try{await n.workspace.rollback(Ne.id,ot,Be.id),xe.value===yt&&F.value?.restoreMessage(Ze)}catch(Pt){et(Wt(Pt),"error",Pt)}finally{h.value=!1}}}function ht(Ne){!ne.value||!pa(Ne)||(re+=1,Q.value=!0)}function Qt(Ne){Ne.dataTransfer!==null&&(Ne.dataTransfer.dropEffect=ne.value&&pa(Ne)?"copy":"none")}function Zt(){re=Math.max(0,re-1),re===0&&(Q.value=!1)}async function Vn(Ne){re=0,Q.value=!1,!(!ne.value||$.value)&&await fa(Ne.dataTransfer?.files??[])}function qn(){!ne.value||$.value||V.value?.click()}function Lt(Ne){const Be=Ne.target,Ze=Array.from(Be.files??[]);Be.value="",fa(Ze)}async function fa(Ne){if(!ne.value||$.value)return;const Be=Array.from(Ne);if(Be.length===0)return;$.value=!0;let Ze=0;try{for(const ot of Be)try{await n.workspace.uploadFile(ot,crypto.randomUUID()),Ze+=1}catch(yt){et(c("hostedConversations.fileUploadFailed",{name:ot.name,message:Wt(yt)}),"error",yt)}}finally{$.value=!1}Ze>0&&et(c("hostedConversations.filesUploaded",{count:Ze}),"success")}function pa(Ne){return Array.from(Ne.dataTransfer?.types??[]).includes("Files")}async function ga(Ne){if(!(!ne.value||N.value!==void 0)){try{await Nt.confirm(c("hostedConversations.fileDeleteConfirmation",{name:Ne.displayName}),c("hostedConversations.fileDeleteTitle"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("hostedConversations.fileDelete"),cancelButtonText:c("common.cancel")})}catch{return}N.value=Ne.id;try{await n.workspace.deleteFile(Ne.id),Fe.file.value?.id===Ne.id&&Fe.close(),et(c("hostedConversations.fileDeleted",{name:Ne.displayName}),"success")}catch(Be){et(Wt(Be),"error",Be)}finally{N.value===Ne.id&&(N.value=void 0)}}}function ma(Ne,Be,Ze,ot){const yt=_o(n.workspace.snapshot.value?.files??[],Ne);if(yt!==void 0){if(ot){const Ut=n.workspace.selectedNodeId.value,Mt=n.workspace.selectedConversationId.value;if(Ut===void 0||Mt===void 0)return;const Pt=new URLSearchParams({standaloneFile:"1",source:"hosted",nodeId:Ut,workspaceId:Mt,conversationId:Mt,fileId:yt.id,path:Sc(yt),mimeType:yt.mimeType,size:String(yt.size)});Be!==void 0&&Pt.set("line",String(Be)),Ze!==void 0&&Pt.set("column",String(Ze)),a.open(`/console?${Pt.toString()}`);return}Fe.openFile(yt,Be,Ze)}}function eo(Ne){const Be=_o(n.workspace.snapshot.value?.files??[],Ne);return Be===void 0?"":n.workspace.contentUrl(Be)}function to(){Fe.close(),Se.previewOpen.value=!1,Se.preview.value=void 0}function Wt(Ne){const Be=typeof Ne=="object"&&Ne!==null&&!Array.isArray(Ne)?Ne:void 0,Ze=gt(Ne)??(typeof Be?.code=="string"?Be.code:void 0);let ot;switch(Ze){case"CONVERSATION_HOSTING_STORAGE_FULL":ot=c("hostedConversations.storageFull");break;case"HOSTED_CONVERSATION_FILE_RECONCILE_FAILED":ot=c("hostedConversations.fileProjectionFailed");break;case"HOSTED_CONVERSATION_FILE_NOT_FOUND":ot=c("hostedConversations.fileNotFound");break;case"HOSTED_CONVERSATION_FILE_CONFLICT":case"HOSTED_CONVERSATION_FILE_INVALID":ot=c("hostedConversations.fileConflict");break;case"HOSTED_CONVERSATION_UPGRADE_FAILED":ot=c("hostedConversations.upgradeFailed");break;case"HOSTED_CONVERSATION_NOT_FOUND":ot=c("hostedConversations.notFound");break;case"HOSTED_CONVERSATION_RUN_ACTIVE":ot=c("hostedConversations.runActive");break;case"HOSTED_CONVERSATION_STATE_INVALID":ot=c("hostedConversations.stateInvalid");break;case"HOSTED_CONVERSATION_ROLLBACK_TARGET_INVALID":ot=c("hostedConversations.rollbackTargetInvalid");break;case"HOSTED_CONVERSATION_RESPONSE_INVALID":ot=c("hostedConversations.responseInvalid");break;case"HOSTED_CONVERSATION_WATCH_INITIAL_FAILED":case"HOSTED_CONVERSATION_WATCH_FAILED":ot=c("hostedConversations.watchFailed");break;default:ot=Ne instanceof Error&&Ne.message.trim().length>0?Ne.message:typeof Be?.message=="string"&&Be.message.trim().length>0?Be.message.trim():c("hostedConversations.operationFailed")}return it(Ne,ot)}He(()=>n.restoringRoute,(Ne,Be)=>{!Ne&&Be&&Re()}),He(xe,to),He(xe,r.clear),He(Ee,Ne=>Se.retain(Ne),{immediate:!0}),He(xe,()=>{fe.value=new Set,Me.following.value=!0,Me.scrollToLatestAfterLayout()}),He(()=>n.workspace.snapshot.value,()=>{Me.following.value&&Me.scrollToLatestAfterLayout()},{flush:"post"}),He(()=>n.mobileHistoryOpen,Ne=>{Ne&&(U.value=!1)}),He(()=>n.mobileViewport,Ne=>{if(!Ne){ae();return}Me.following.value&&Me.scrollToLatestAfterLayout()});const ha=Rr({isOpen:()=>n.mobileViewport&&(n.mobileHistoryOpen||U.value),regions:()=>[document.getElementById(n.mobileHistoryOpen?"hosted-pane-history":"hosted-pane-files"),document.querySelector(".activity-rail")],close:ae});return mt(ha.dispose),mt(_.dispose),Dt(Xe),mt(()=>{p?.disconnect(),ge?.disconnect(),Fe.dispose()}),(Ne,Be)=>{const Ze=bt,ot=Ft,yt=ln,Ut=sn,Mt=rn,Pt=Ar,zt=St("tooltip"),ya=ca;return f(),O("section",{class:Ke(["hosted-workspace",{"history-collapsed":e.sidebarCollapsed}])},[B(hn,{name:"mobile-surface-scrim"},{default:Z(()=>[e.mobileViewport&&(e.mobileHistoryOpen||U.value)?(f(),O("button",{key:0,class:"hosted-conversation-scrim",type:"button","aria-label":e.mobileHistoryOpen?o(c)("hostedConversations.closeHistory"):o(c)("hostedConversations.closeFiles"),onClick:ae},null,8,mC)):ve("",!0)]),_:1}),K("aside",{id:"hosted-pane-history",tabindex:"-1",class:Ke(["hosted-conversation-history",{"mobile-open":e.mobileViewport&&e.mobileHistoryOpen}]),inert:e.mobileViewport?!e.mobileHistoryOpen:e.sidebarCollapsed,"aria-label":o(c)("hostedConversations.historyTitle")},[K("header",yC,[K("div",wC,[K("h2",null,W(o(c)("hostedConversations.historyTitle")),1)])]),K("div",kC,[B(Ze,{class:"history-create-button",type:"primary",onClick:q},{default:Z(()=>[B(De,{name:"session-add"}),K("span",null,W(o(c)("hostedConversations.create")),1)]),_:1}),K("div",bC,[B(ot,{modelValue:u.value,"onUpdate:modelValue":Be[0]||(Be[0]=lt=>u.value=lt),clearable:"","prefix-icon":o(qe)("search"),placeholder:o(c)("hostedConversations.searchHistory"),"aria-label":o(c)("hostedConversations.searchHistory"),"clear-icon":o(qe)("clear-input")},null,8,["modelValue","prefix-icon","placeholder","aria-label","clear-icon"]),Le(B(Ze,{class:"history-refresh-button utility-control","aria-label":o(c)("hostedConversations.refreshHistory"),disabled:d.value,loading:e.workspace.loadingConversations.value&&e.workspace.conversationsLoaded.value,"aria-busy":e.workspace.loadingConversations.value&&e.workspace.conversationsLoaded.value,icon:o(qe)("refresh"),size:"small",text:"",onClick:de,"loading-icon":o(qe)("loading-action")},null,8,["aria-label","disabled","loading","aria-busy","icon","loading-icon"]),[[zt,o(c)("hostedConversations.refreshHistory")]])])]),Le((f(),O("div",{ref_key:"historyList",ref:w,class:"history-list"},[!d.value&&ce.value.length===0?(f(),O("p",IC,W(o(c)(u.value.trim()?"hostedConversations.noLoadedHistoryMatches":"hostedConversations.noHistory")),1)):ve("",!0),(f(!0),O(Ve,null,Je(ce.value,lt=>(f(),O("article",{key:Oe(lt),class:Ke(["mar-session-reorder-item",{selected:lt.nodeId===e.workspace.selectedNodeId.value&&lt.id===e.workspace.selectedConversationId.value}]),onMouseenter:pt=>E.value=Oe(lt),onMouseleave:Be[1]||(Be[1]=pt=>E.value=void 0),onFocusin:pt=>H.value=Oe(lt),onFocusout:Ie,onContextmenu:pt=>pe(lt,pt)},[K("button",{class:"history-open",type:"button","aria-current":lt.nodeId===e.workspace.selectedNodeId.value&&lt.id===e.workspace.selectedConversationId.value?"page":void 0,onClick:pt=>Ce(lt)},[K("span",TC,[lt.pinnedAt!==null?(f(),we(De,{key:0,name:"star-filled",class:"history-pin-indicator","aria-label":o(c)("hostedConversations.pinnedLabel")},null,8,["aria-label"])):ve("",!0),e.workspace.conversationIsRunning(lt)?(f(),O("span",EC)):ve("",!0),e.hasUnreadConversation(lt.nodeId,lt.id)?(f(),O("span",RC,W(o(c)("hostedConversations.unreadLabel")),1)):ve("",!0),K("strong",null,W(o(Tn)(lt)),1)]),K("time",{datetime:new Date(lt.lastActivityAt).toISOString()},W(o(c)("presentation.lastActivity",{value:o(Gt)(lt.lastActivityAt)})),9,AC)],8,CC),We(Oe(lt))?(f(),we(Mt,{key:0,class:"history-row-actions",placement:"bottom-end","popper-class":"session-action-menu",trigger:"click",onVisibleChange:pt=>je(pt,Oe(lt))},{dropdown:Z(()=>[B(Ut,null,{default:Z(()=>[B(yt,{onClick:pt=>se(lt,lt.pinnedAt===null)},{default:Z(()=>[B(De,{name:"pin"}),ke(" "+W(o(c)(lt.pinnedAt===null?"hostedConversations.pin":"hostedConversations.unpin")),1)]),_:2},1032,["onClick"]),B(yt,{onClick:pt=>Y(lt)},{default:Z(()=>[B(De,{name:"edit"}),ke(" "+W(o(c)("hostedConversations.editTitle")),1)]),_:1},8,["onClick"]),B(yt,{divided:"",onClick:pt=>be(lt)},{default:Z(()=>[B(De,{name:"delete"}),ke(" "+W(o(c)("hostedConversations.delete")),1)]),_:1},8,["onClick"])]),_:2},1024)]),default:Z(()=>[Le((f(),O("button",{class:"history-more-button utility-control",type:"button",disabled:L.value!==void 0,"aria-label":o(c)("hostedConversations.moreActions",{title:o(Tn)(lt)})},[B(De,{name:"more"})],8,NC)),[[zt,o(c)("hostedConversations.moreActions",{title:o(Tn)(lt)})]])]),_:2},1032,["onVisibleChange"])):ve("",!0)],42,SC))),128)),u.value.trim()?(f(),O("p",DC,W(o(c)("hostedConversations.filterLoadedOnly")),1)):ve("",!0),e.workspace.hasMoreConversations.value?(f(),O("div",{key:2,ref_key:"historyAppendMarker",ref:k,class:"list-append-state","aria-busy":e.workspace.loadingMoreConversations.value},[e.workspace.loadingMoreConversations.value&&!T.value?(f(),O("span",{key:0,role:"status","aria-label":o(c)("common.loading")},[B(gn,{class:"read-loading-indicator"})],8,OC)):ve("",!0),T.value||e.workspace.loadMoreConversationsError.value&&!e.workspace.loadingMoreConversations.value?(f(),we(Ze,{key:1,link:"","aria-disabled":e.workspace.loadingMoreConversations.value,"aria-busy":e.workspace.loadingMoreConversations.value,"aria-label":e.workspace.loadingMoreConversations.value?o(c)("common.loading"):void 0,onClick:R},{default:Z(()=>[e.workspace.loadingMoreConversations.value?(f(),we(gn,{key:0,class:"read-loading-indicator"})):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-disabled","aria-busy","aria-label"])):ve("",!0)],8,PC)):ve("",!0)])),[[ya,e.workspace.loadingConversations.value&&!e.workspace.conversationsLoaded.value],[o(wc),oe.value]])],10,hC),K("main",{id:"hosted-pane-conversation",class:"hosted-conversation-main",inert:e.mobileViewport&&(e.mobileHistoryOpen||U.value)},[e.mobileViewport?Le((f(),O("button",{key:0,class:"hosted-mobile-files-button",type:"button","aria-label":o(c)("hostedConversations.mobileFiles"),onClick:me},[B(De,{name:"folder-open"})],8,WC)),[[zt,o(c)("hostedConversations.mobileFiles")]]):ve("",!0),e.workspace.snapshot.value?.error?(f(),we(Pt,{key:1,class:"snapshot-error-alert",closable:!1,"show-icon":"",type:"error",title:Wt(e.workspace.snapshot.value.error)},{icon:Z(()=>[B(De,{name:"error"})]),_:1},8,["title"])):ve("",!0),M.value?(f(),we(Pt,{key:2,class:"readonly-alert",closable:!1,"show-icon":"",type:"warning",title:ee.value},{icon:Z(()=>[B(De,{name:"warning"})]),_:1},8,["title"])):ve("",!0),X.value||P.value===void 0?(f(),O("section",MC,[B(vC,{request:e.request,workspace:e.workspace,"mobile-viewport":e.mobileViewport,connected:e.connected,entry:o(_),onStarted:te},null,8,["request","workspace","mobile-viewport","connected","entry"])])):(f(),O(Ve,{key:4},[B(xl,{class:"hosted-timeline-scroll","context-key":xe.value,"has-older":e.workspace.historyNextCursor.value!==null,"loading-initial":S.value,"initial-sync-pending":S.value,"initial-load-failed":m.value,"initial-error":A.value,"loading-older":e.workspace.loadingOlderHistory.value,"older-error":e.workspace.olderHistoryError.value===void 0?"":Wt(e.workspace.olderHistoryError.value),"has-turns":Ee.value.length>0,following:o(Me).following.value,"empty-prompt":G.value&&!e.workspace.snapshot.value?.run?"hosted":void 0,onScrollElement:_e,onScroll:Ge,onScrollIntent:o(Me).stopFollowing,onLoadOlder:tt,onReload:he,onLatest:o(Me).scrollToLatest},{default:Z(()=>[e.workspace.snapshot.value!==void 0?(f(),we(Ml,{key:0,runs:e.workspace.snapshot.value?.run?[e.workspace.snapshot.value.run]:[],turns:Ee.value,"workspace-root":"/workspace",loading:h.value,initializing:b.value!==void 0,"initial-render-version":0,"capture-render-anchor":o(Me).captureRenderAnchor,"image-attachments":o(Se).attachments,"user-input-questions":()=>[],"user-input-answer":()=>"","user-input-submitted":()=>!1,"plan-continuation":void 0,"node-ready":G.value,synchronized:e.connected!==!1&&e.workspace.watchReady.value,"tool-change-enabled":s.value,"rewind-enabled":!1,"rollback-enabled":ue.value,onCopy:vt,onRollback:Rt,onOpenImage:o(Se).open,onImageUnavailable:o(Se).markUnavailable,onOpenFile:ma,onOpenFileChange:i},null,8,["runs","turns","loading","initializing","capture-render-anchor","image-attachments","node-ready","synchronized","tool-change-enabled","rollback-enabled","onOpenImage","onImageUnavailable"])):ve("",!0)]),_:1},8,["context-key","has-older","loading-initial","initial-sync-pending","initial-load-failed","initial-error","loading-older","older-error","has-turns","following","empty-prompt","onScrollIntent","onLatest"]),e.workspace.snapshot.value!==void 0?(f(),we(Cc,{connected:e.connected,ref_key:"composer",ref:F,key:xe.value,workspace:e.workspace,"mobile-viewport":e.mobileViewport,readonly:!G.value||h.value,"readonly-reason":ee.value,"template-change-blocked":h.value||$.value},null,8,["connected","workspace","mobile-viewport","readonly","readonly-reason","template-change-blocked"])):ve("",!0)],64))],8,LC),K("aside",{id:"hosted-pane-files",tabindex:"-1",inert:e.mobileViewport&&!U.value,class:Ke(["hosted-conversation-files",{"mobile-open":e.mobileViewport&&U.value,"is-file-dragging":Q.value}]),"aria-label":o(c)("hostedConversations.filesTitle"),onDragenter:rt(ht,["prevent"]),onDragover:rt(Qt,["prevent"]),onDragleave:rt(Zt,["prevent"]),onDrop:rt(Vn,["prevent"])},[K("header",$C,[K("h2",null,W(o(c)("hostedConversations.filesTitle")),1)]),P.value!==void 0?(f(),O(Ve,{key:0},[K("input",{ref_key:"relatedFilesInput",ref:V,class:"related-files-input",type:"file",multiple:"",disabled:!ne.value||$.value,onChange:Lt},null,40,FC),K("button",{class:Ke(["files-drop-target",{active:Q.value,disabled:!ne.value}]),"aria-disabled":!ne.value,type:"button",disabled:!ne.value||$.value,onClick:qn},[B(De,{name:"upload"}),K("span",null,W(Q.value?o(c)("hostedConversations.filesDropNow"):o(c)("hostedConversations.filesDropHint")),1)],10,UC),Le((f(),O("div",VC,[(f(!0),O(Ve,null,Je(le.value,lt=>(f(),O("section",{key:lt.category},[K("h3",null,W(ze(lt.category)),1),lt.files.length===0?(f(),O("p",qC,W(o(c)("hostedConversations.noFiles")),1)):ve("",!0),(f(!0),O(Ve,null,Je(lt.rows,pt=>(f(),O("div",{key:`${lt.category}:${pt.node.kind}:${pt.node.path}`,class:Ke(["file-row",{"is-directory":pt.node.kind==="DIRECTORY"}]),style:It({"--file-depth":pt.depth})},[pt.node.kind==="DIRECTORY"?Le((f(),O("span",HC,[K("button",{class:"file-directory",type:"button","aria-expanded":Ue(lt.category,pt.node.path),"aria-label":Te(lt.category,pt.node.path),onClick:wa=>Qe(lt.category,pt.node.path)},[B(De,{name:"chevron-right",class:Ke(["file-directory-chevron",{expanded:Ue(lt.category,pt.node.path)}])},null,8,["class"]),B(De,{name:"folder-open",class:"file-directory-kind"}),K("span",null,W(pt.node.name),1)],8,BC)])),[[zt,pt.node.path]]):(f(),O(Ve,{key:1},[Le((f(),O("button",{"aria-label":pt.node.file.relativePath,class:"file-open",type:"button",onClick:wa=>o(Fe).openFile(pt.node.file)},[K("span",null,W(pt.node.file.displayName),1),K("small",null,W(o(ja)(pt.node.file.size)),1)],8,GC)),[[zt,pt.node.file.relativePath]]),Le((f(),O("button",{class:"file-delete",type:"button",disabled:!ne.value||N.value!==void 0,"aria-label":o(c)("hostedConversations.fileDeleteNamed",{name:pt.node.file.displayName}),onClick:wa=>ga(pt.node.file)},[B(De,{name:"delete"})],8,zC)),[[zt,o(c)("hostedConversations.fileDeleteNamed",{name:pt.node.file.displayName})]])],64))],6))),128))]))),128))])),[[ya,$.value]])],64)):(f(),O("div",KC,[K("p",null,W(o(c)("hostedConversations.filesAvailableAfterCreate")),1)]))],42,xC),(f(),we(la,{to:"body"},[B(BS,{review:o(r),onOpenSource:l,onError:Be[2]||(Be[2]=lt=>o(et)(Wt(lt),"error",lt))},null,8,["review"]),B($l,{"attachment-open":!1,attachment:void 0,"conversation-open":o(Se).previewOpen.value,conversation:o(Se).preview.value,"onUpdate:conversationOpen":Be[3]||(Be[3]=lt=>o(Se).previewOpen.value=lt),onClearConversation:Be[4]||(Be[4]=lt=>o(Se).preview.value=void 0)},null,8,["conversation-open","conversation"]),o(Fe).visible.value&&o(Fe).content.value?(f(),we(ig,{key:0,overlay:!0,label:o(c)("generated.filePreviewDialog.filePreview",{value0:o(Fe).content.value.path}),onFocus:Be[6]||(Be[6]=lt=>ye.value?.focus()),onClose:o(Fe).close},{default:Z(()=>[o(Fe).visible.value&&o(Fe).content.value&&o(Fe).kind.value==="text"?(f(),we(ql,{key:0,ref_key:"filePage",ref:ye,downloading:o(Fe).downloading.value,file:o(Fe).content.value,loading:o(Fe).loading.value,"load-error":Ye.value,onReload:o(Fe).retry,fullscreen:!0,contained:!0,kind:o(Fe).kind.value,markdown:o(Fe).content.value.encoding==="utf-8"&&o(rr)(o(Fe).content.value.path),"render-markdown":!0,"markdown-resource-url":eo,"target-line":o(Fe).targetLine.value,"target-column":o(Fe).targetColumn.value,"write-enabled":!1,onClose:o(Fe).close,onDownload:o(Fe).download,onOpenMarkdownFile:Be[5]||(Be[5]=(lt,pt)=>ma(lt,void 0,void 0,pt))},null,8,["downloading","file","loading","load-error","onReload","kind","markdown","target-line","target-column","onClose","onDownload"])):o(Fe).visible.value&&o(Fe).content.value?(f(),we(Hl,{key:1,ref_key:"filePage",ref:ye,"content-url":o(Fe).contentUrl.value,downloading:o(Fe).downloading.value,file:o(Fe).content.value,loading:o(Fe).loading.value,"load-error":Ye.value,onReload:o(Fe).retry,fullscreen:!0,contained:!0,kind:o(Fe).kind.value,onClose:o(Fe).close,onDownload:o(Fe).download},null,8,["content-url","downloading","file","loading","load-error","onReload","kind","onClose","onDownload"])):ve("",!0)]),_:1},8,["label","onClose"])):ve("",!0)]))],2)}}}),_C=dt(jC,[["__scopeId","data-v-1737ee5b"]]),YC=["aria-description","aria-label","aria-expanded"],QC=at({__name:"WorkspaceSessionTreeButton",props:{sessionId:{},open:{type:Boolean},summary:{},status:{}},emits:["show"],setup(e,{emit:t}){const n=t;return(a,r)=>(f(),O("button",{type:"button",class:"icon-button utility-control conversation-tree-button","aria-description":e.status==="failed"?o(c)("sessionGroups.treeSyncUnavailable"):e.summary?.hasActiveDescendants?o(c)("sessionGroups.activeDescendants",{count:e.summary.activeCount}):void 0,"aria-label":o(c)("sessionGroups.tree"),"aria-expanded":e.open,"aria-haspopup":"dialog",onClick:r[0]||(r[0]=s=>n("show",e.sessionId,s.currentTarget))},[B(De,{name:"session-tree"}),e.summary?.hasActiveDescendants?(f(),O("span",{key:0,class:Ke(["tree-active-indicator mar-icon-status-badge",{paused:e.status!=="ready"}]),"aria-hidden":"true"},null,2)):ve("",!0)],8,YC))}}),JC=dt(QC,[["__scopeId","data-v-e3897b4d"]]),XC={class:"conversation-header-title"},ZC={class:"conversation-title-row"},eT=["src","data-runner"],tT={key:0,class:"conversation-session-id"},nT=["aria-label"],aT=["aria-label"],oT=["aria-label"],rT=["aria-label"],iT=at({__name:"ConversationHeader",props:{session:{},runner:{},filesReady:{type:Boolean},terminalReady:{type:Boolean},asideReady:{type:Boolean},contentSearchReady:{type:Boolean},runnerIcon:{type:Function},sessionTitle:{type:Function}},emits:["openSurface"],setup(e,{emit:t}){const n=t;async function a(r){try{await navigator.clipboard.writeText(r),et(c("generated.conversationHeader.sessionIdCopied"),"info")}catch{et(c("generated.conversationHeader.copySessionIdFailed"),"error")}}return(r,s)=>{const i=St("tooltip");return f(),O("header",{class:Ke(["conversation-header",{"conversation-header-draft":o(Na)(e.session)}])},[K("div",XC,[K("div",ZC,[K("img",{src:e.runnerIcon(e.session?.runner??e.runner),"data-runner":e.session?.runner??e.runner,alt:"","aria-hidden":"true",class:"runner-brand-icon conversation-title-runner-icon"},null,8,eT),Le((f(),O("h2",null,[ke(W(o(Na)(e.session)?o(c)("generated.conversationHeader.newSession2"):e.sessionTitle(e.session)),1)])),[[i,{content:o(Na)(e.session)?o(c)("generated.conversationHeader.newSession"):e.sessionTitle(e.session),touch:!0}]])]),e.session&&!o(Na)(e.session)?(f(),O("p",tT,[Le((f(),O("button",{class:"utility-control conversation-session-id-copy",type:"button","aria-label":o(c)("generated.conversationHeader.copySessionId",{sessionId:e.session.id}),onClick:s[0]||(s[0]=l=>a(e.session.id))},[K("code",null,W(e.session.id),1)],8,nT)),[[i,o(c)("generated.conversationHeader.copySessionId",{sessionId:e.session.id})]]),Ct(r.$slots,"tree",{sessionId:e.session.id},void 0,!0)])):ve("",!0)]),K("div",{class:"mobile-conversation-tools","aria-label":o(c)("generated.conversationHeader.workspaceTools")},[K("button",{class:"utility-control",type:"button","aria-label":o(c)("generated.conversationHeader.openSessionList"),onClick:s[1]||(s[1]=l=>n("openSurface","sessions"))},W(o(c)("generated.conversationHeader.sessions")),9,oT),e.asideReady||e.filesReady||e.terminalReady?(f(),O("button",{key:0,class:"utility-control",type:"button","aria-label":o(c)("generated.conversationHeader.openAside"),onClick:s[2]||(s[2]=l=>n("openSurface","inspector"))},W(o(c)("generated.conversationHeader.more")),9,rT)):ve("",!0)],8,aT)],2)}}}),sT=dt(iT,[["__scopeId","data-v-761ce659"]]),lT=["aria-label"],cT=at({__name:"SessionPerformanceInfo",props:{performance:{}},setup(e){const t=e,n=j(()=>Lp(t.performance));return(a,r)=>{const s=St("tooltip");return n.value?Le((f(),O("button",{key:0,class:"session-performance-info icon-button utility-control",type:"button","aria-label":`${o(c)("generated.conversationTimeline.modelPerformanceDetails")}: ${n.value}`},[B(De,{name:"info"})],8,lT)),[[s,{content:n.value,placement:"top",touch:!0}]]):ve("",!0)}}}),dT=dt(cT,[["__scopeId","data-v-359b0644"]]),uT=["aria-label"],ol=at({__name:"WorkspaceSessionPane",props:{controller:{},treeSupported:{type:Boolean},asideReady:{type:Boolean},treeOpenSessionId:{},treeSummaries:{},treeStatus:{}},emits:["openTree","openSurface","previewAttachment","reload"],setup(e,{emit:t}){const n=e,a=n.controller.state,r=a.workspaceTarget,s=Et(n.controller.presentation),i=Et(n.controller.configuration),l=Et(n.controller.runner),v=n.controller.interactions,u=Et(n.controller.references),d=n.controller.currentSessionQueue,w=n.controller.submitting,k=n.controller.canInterrupt,T=n.controller.performance.current,p=n.controller.conversationWindow.paging.olderHistoryError,g=j(()=>JSON.stringify([a.workspaceTarget.value?.nodeId,a.workspaceTarget.value?.workspaceId,n.controller.selectedSessionId.value])),R=t,b=x(),C=x();let I,S;Dt(()=>{I=a.registerShortcuts(()=>b.value?.$el,()=>C.value?.openModelMenu()===!0),S=n.controller.interactions.registerShortcuts(()=>b.value?.$el.querySelector("textarea")??void 0)});function m(A){n.controller.selectModelEffort(A),b.value?.focus()}return a.setInputFocus(A=>b.value?.focusAt(A)),a.setRangeEditor((A,L,y)=>b.value?.replaceRange(A,L,y)??!1),mt(()=>{I?.(),S?.(),a.setInputFocus(()=>{}),a.setRangeEditor(()=>!1)}),(A,L)=>(f(),O("section",{class:"conversation-panel","aria-label":o(c)("generated.workbenchSurface.agentConversation")},[o(s).composerSessionOpen?(f(),O(Ve,{key:0},[B(sT,{session:o(i).selectedSession,runner:o(i).activeRunner,"files-ready":e.controller.filesReady.value,"terminal-ready":e.controller.terminalReady.value,"aside-ready":e.asideReady,"runner-icon":o(mc),"session-title":o(Ga),"content-search-ready":e.controller.filesReady.value,onOpenSurface:L[1]||(L[1]=y=>R("openSurface",y))},{tree:Z(({sessionId:y})=>[o(r)&&e.treeSupported?(f(),we(JC,{key:y,"session-id":y,open:e.treeOpenSessionId===y,summary:e.treeSummaries?.find(D=>D.anchorSessionId===y),status:e.treeStatus??"idle",onShow:L[0]||(L[0]=(D,E)=>R("openTree",D,E,o(i).selectedSession?o(Ga)(o(i).selectedSession):D))},null,8,["session-id","open","summary","status"])):ve("",!0)]),_:1},8,["session","runner","files-ready","terminal-ready","aside-ready","runner-icon","session-title","content-search-ready"]),B(xl,{"context-key":g.value,"has-older":o(a).conversation.nextCursor.value!==null,"loading-initial":e.controller.status.initialContentLoading(),"initial-sync-pending":o(a).conversation.loadingInitial.value,"initial-load-failed":o(a).conversation.initialLoadFailed.value,"initial-error":o(a).conversation.initialLoadFailed.value?o(it)(o(a).conversation.initialFailureCause.value):void 0,"loading-older":o(a).conversation.loadingOlder.value,"older-error":o(p),"has-turns":o(a).conversation.turns.value.length>0,following:o(a).scroll.following.value,"empty-prompt":e.controller.draftOpen.value?"workspace":void 0,onScrollElement:L[2]||(L[2]=y=>o(a).scroll.setElement(y)),onScroll:o(v).onComposerScroll,onScrollIntent:o(a).scroll.stopFollowing,onLoadOlder:e.controller.conversationWindow.paging.loadOlderConversationTurns,onLatest:o(v).scrollConversationToLatest,onReload:L[3]||(L[3]=y=>R("reload"))},{status:Z(()=>[B(dT,{performance:o(T)},null,8,["performance"])]),default:Z(()=>[B(Ml,{runs:e.controller.conversationRuns.value,turns:o(s).displayedConversationTurns,performance:o(T),initializing:e.controller.status.initialContentLoading(),"initial-render-version":o(a).conversation.initialRenderVersion.value,"capture-render-anchor":o(a).scroll.captureRenderAnchor,"workspace-root":e.controller.selectedWorkspace.value?.path,"image-resource-url":e.controller.imageResourceUrl.value,loading:e.controller.loading.value||o(w),"image-attachments":e.controller.images.attachments,"user-input-questions":o(Wp),"user-input-answer":e.controller.userInput.answer,"user-input-submitted":e.controller.userInput.submitted,"plan-continuation":e.controller.activePlanContinuation.value,"node-ready":o(s).nodeReady,synchronized:e.controller.status.connected()&&!e.controller.conversationSyncPending.value,"tool-change-enabled":o(s).nodeReady,"rewind-enabled":o(s).rewindConversationEnabled,"rollback-enabled":o(s).rollbackConversationEnabled,onInitialRendered:o(a).conversation.confirmInitialRender,onOpenImage:e.controller.images.open,onImageUnavailable:e.controller.images.markUnavailable,onOpenFile:e.controller.openAgentFile,onOpenFileChange:e.controller.openFileChange,onSetAnswer:e.controller.userInput.setAnswer,onSubmitInput:e.controller.userInput.submit,onImplementPlan:e.controller.plan.implementPlan,onCopy:e.controller.copyMessage,onRewind:e.controller.rewindConversation,onRollback:e.controller.rollbackConversation,onDecideApproval:e.controller.approvals.decideApproval},null,8,["runs","turns","performance","initializing","initial-render-version","capture-render-anchor","workspace-root","image-resource-url","loading","image-attachments","user-input-questions","user-input-answer","user-input-submitted","plan-continuation","node-ready","synchronized","tool-change-enabled","rewind-enabled","rollback-enabled","onInitialRendered","onOpenImage","onImageUnavailable","onOpenFile","onOpenFileChange","onSetAnswer","onSubmitInput","onImplementPlan","onCopy","onRewind","onRollback","onDecideApproval"])]),_:1},8,["context-key","has-older","loading-initial","initial-sync-pending","initial-load-failed","initial-error","loading-older","older-error","has-turns","following","empty-prompt","onScroll","onScrollIntent","onLoadOlder","onLatest"]),B(Ol,{ref_key:"composer",ref:b,input:o(a).draft.input.value,"onUpdate:input":L[14]||(L[14]=y=>o(a).draft.input.value=y),placeholder:o(l).selectedCommand?o(c)("generated.workbenchSurface.run",{value0:o(l).selectedCommand.id}):e.controller.nodeManifest.value===void 0&&o(s).workspaceHost?.connected===!0&&o(s).workspaceHost.disabled!==!0?e.controller.status.manifestLoading.value?o(c)("generated.workspaceInspector.loading"):o(c)("generated.workbenchSurface.nodeWorkbenchCapabilitiesAreUnavailable"):o(c)("generated.workbenchSurface.typeForCommandsToReferenceWorkspaceFiles",{value0:o($n)(o(i).activeRunner)}),working:o(s).composerWorking,"working-label":o(s).composerWorkingLabel,"working-busy":o(s).composerWorkingBusy,"elapsed-label":o(s).workingElapsedLabel,"connection-busy":!e.controller.status.connected()||e.controller.conversationSyncPending.value,"connection-label":e.controller.status.connected()?e.controller.conversationSyncPending.value?o(c)("conversationActivity.syncing"):"":o(c)("conversationActivity.reconnecting"),readonly:o(s).composerInputDisabled,"drop-target":o(a).draggingAttachments.value,"mobile-viewport":e.controller.mobileViewport.value,"command-states":o(l).activeCommandStates,loading:e.controller.loading.value||o(w),"skill-tokens":o(a).draft.skillTokens.value,"file-references":o(a).draft.references.value,completion:e.controller.completion.value,"completion-blocked":o(l).commandPickerOpen||o(u).open||o(l).selectedCommand!==void 0||o(s).composerAttachmentsPending,onSubmit:e.controller.sendMessage,onInput:o(v).onComposerInput,onKeydown:o(v).onComposerKeydown,onCursor:o(v).onComposerCursor,onPaste:e.controller.attachmentInput.onPaste,onDragenter:e.controller.attachmentInput.onDragEnter,onDragleave:e.controller.attachmentInput.onDragLeave,onDrop:e.controller.attachmentInput.onDrop,onCloseCommand:e.controller.closeCommandState,onRemoveSkill:o(a).skillTokens.remove,onRemoveReference:e.controller.references.remove},{queue:Z(()=>[B(Up,{items:o(d).items,paused:o(d).paused,loading:e.controller.loading.value||o(w),"editing-queue-item-id":o(a).queue.editingQueueItemId.value,"editing-content":o(a).queue.editingContent.value,goal:e.controller.activeGoal.value,onDragStart:L[4]||(L[4]=y=>o(a).queue.draggingQueueItemId.value=y),onReorder:e.controller.queueActions.reorder,onEdit:L[5]||(L[5]=y=>o(a).queue.startEditing(y)),onCancelEdit:L[6]||(L[6]=y=>o(a).queue.finishEditing()),onUpdateContent:L[7]||(L[7]=y=>o(a).queue.editingContent.value=y),onSave:e.controller.queueActions.save,onExecute:L[8]||(L[8]=(y,D)=>e.controller.queueActions.execute(y,D)),onDeleteItem:e.controller.queueActions.remove,onSaveGoal:e.controller.editGoal,onClearGoal:e.controller.clearGoal},null,8,["items","paused","loading","editing-queue-item-id","editing-content","goal","onReorder","onSave","onDeleteItem","onSaveGoal","onClearGoal"])]),toolbar:Z(()=>[o(s).canUseComposer?(f(),we(Fp,{key:0,submitting:o(w),ref_key:"composerToolbar",ref:C,"draft-session-open":o(s).composerDraftOpen,runner:o(i).runner,"runner-options":e.controller.runnerOptions.value,"runner-loading":e.controller.runnerProfilesLoading.value,"runner-disabled":!e.controller.draftOpen.value||e.controller.loading.value||o(w),"runner-label":o(i).runnerLabel,"model-effort-selection":o(i).modelEffortSelection,"model-effort-label":o(i).modelEffortLabel,"selected-model":o(i).modelId,"selected-effort":o(i).effort,models:o(i).models,efforts:o(i).efforts,access:o(i).access,"access-label":o(i).accessLabel,"access-options":o(i).accessOptions,"configuration-disabled":o(s).composerConfigurationDisabled,"access-disabled":o(s).composerAccessDisabled,"fast-enabled":o(l).codexFastEnabled,"context-usage":o(a).conversation.contextUsage.value,"context-usage-label":o(s).contextUsageLabel,"can-compact-context":o(s).canCompactContext,"mobile-viewport":e.controller.mobileViewport.value,"active-run":o(s).activeComposerRun,"context-key":g.value,"interrupt-visible":o(s).interruptVisible,"can-interrupt":o(k),"input-has-content":o(a).draft.input.value.trim().length>0||o(a).draft.skillTokens.value.length>0||o(a).draft.references.value.length>0||o(a).attachments.attachments.value.length>0,"has-selected-command":o(l).selectedCommand!==void 0,loading:e.controller.loading.value||o(w),"attachments-pending":o(s).composerAttachmentsPending,"effort-label":e.controller.effortLabel,onFiles:o(a).attachments.add,onUpdateRunner:e.controller.composer.selectRunner,onUpdateModelEffort:m,onUpdateAccess:e.controller.selectAccess,onCompact:e.controller.context.compactCurrentContext,onStop:e.controller.runControl.stopActiveRun,onSend:L[9]||(L[9]=y=>e.controller.sendMessage()),onSteer:L[10]||(L[10]=y=>e.controller.sendMessage("REPLACE_CURRENT"))},null,8,["submitting","draft-session-open","runner","runner-options","runner-loading","runner-disabled","runner-label","model-effort-selection","model-effort-label","selected-model","selected-effort","models","efforts","access","access-label","access-options","configuration-disabled","access-disabled","fast-enabled","context-usage","context-usage-label","can-compact-context","mobile-viewport","active-run","context-key","interrupt-visible","can-interrupt","input-has-content","has-selected-command","loading","attachments-pending","effort-label","onFiles","onUpdateRunner","onUpdateAccess","onCompact","onStop"])):ve("",!0)]),attachments:Z(()=>[B($p,{attachments:o(a).attachments.attachments.value,onPreview:L[11]||(L[11]=y=>R("previewAttachment",y)),onRemoveAttachment:o(a).attachments.remove},null,8,["attachments","onRemoveAttachment"])]),picker:Z(()=>[B(Mp,{open:o(l).commandPickerOpen,commands:o(l).pickerKind==="runner"?o(l).visibleCommands:[],skills:o(l).pickerKind==="runner"?o(l).visibleSkills:[],"quick-prompts":o(l).pickerKind==="quick-prompt"?o(l).visibleQuickPrompts:[],"quick-prompts-loading":e.controller.status.promptsLoading.value,"quick-prompts-failed":e.controller.status.promptsFailed.value,"picker-kind":o(l).pickerKind,"skills-enabled":!0,"skills-loading":e.controller.status.skillsLoading.value,"skills-failed":e.controller.status.skillsFailed.value,"active-index":o(l).activeCommandIndex,loading:e.controller.runnerProfilesLoading.value,failed:e.controller.runnerProfilesFailed.value,onActivate:L[12]||(L[12]=y=>o(l).activeCommandIndex=y),onSelect:e.controller.selectCommand,onSelectSkill:e.controller.selectSkill,onSelectQuickPrompt:e.controller.selectQuickPrompt},null,8,["open","commands","skills","quick-prompts","quick-prompts-loading","quick-prompts-failed","picker-kind","skills-loading","skills-failed","active-index","loading","failed","onSelect","onSelectSkill","onSelectQuickPrompt"]),B(xp,{open:o(u).open,candidates:o(u).candidates,"active-index":o(u).activeIndex,loading:o(u).loading,query:o(u).match?.query??"","session-enabled":!0,"session-ready":o(u).sessionAvailable(),"file-ready":e.controller.filesReady.value,"session-only":o(u).match?.sessionOnly??!1,"session-loading":o(u).sessionLoading,"file-error":o(u).fileError,"session-error":o(u).sessionError,"file-more":o(u).fileMore,"session-more":o(u).sessionMore,onActivate:L[13]||(L[13]=y=>o(u).activeIndex=y),onSelect:o(v).selectReference},null,8,["open","candidates","active-index","loading","query","session-ready","file-ready","session-only","session-loading","file-error","session-error","file-more","session-more","onSelect"])]),_:1},8,["input","placeholder","working","working-label","working-busy","elapsed-label","connection-busy","connection-label","readonly","drop-target","mobile-viewport","command-states","loading","skill-tokens","file-references","completion","completion-blocked","onSubmit","onInput","onKeydown","onCursor","onPaste","onDragenter","onDragleave","onDrop","onCloseCommand","onRemoveSkill","onRemoveReference"])],64)):ve("",!0)],8,uT))}}),vT=["aria-label","aria-valuemin","aria-valuemax","aria-valuenow"],fT=at({__name:"PanelResizeHandle",props:{target:{},label:{},min:{},max:{},direction:{},width:{},gestureKey:{type:[String,Number,Boolean]}},emits:["resize"],setup(e,{emit:t}){const n=e,a=t,r=x(!1),s=x(),i=x();let l;function v(g){const R=Math.max(n.min,Math.min(n.max,g));i.value=R,a("resize",R)}function u(){if(n.target!==void 0){for(const g of n.target.getAnimations())g instanceof CSSTransition&&g.transitionProperty==="width"&&g.finish();return n.target.getBoundingClientRect().width}}function d(g){if(g.button!==0||l!==void 0)return;const R=u();if(R===void 0)return;g.preventDefault(),g.currentTarget.setPointerCapture(g.pointerId),l={pointerId:g.pointerId,x:g.clientX,width:R},r.value=!0}function w(g){l?.pointerId===g.pointerId&&v(l.width+n.direction*(g.clientX-l.x))}function k(g){if(l?.pointerId!==g.pointerId)return;l=void 0,r.value=!1;const R=g.currentTarget;R.hasPointerCapture(g.pointerId)&&R.releasePointerCapture(g.pointerId)}function T(){const g=l?.pointerId;l=void 0,r.value=!1,g!==void 0&&s.value?.hasPointerCapture(g)&&s.value.releasePointerCapture(g)}function p(g){const R=u();if(R===void 0)return;let b;if(g.key==="Home")b=n.min;else if(g.key==="End")b=n.max;else if(g.key==="ArrowLeft")b=R-n.direction*10;else if(g.key==="ArrowRight")b=R+n.direction*10;else return;g.preventDefault(),v(b)}return He(()=>n.gestureKey,T,{flush:"sync"}),mt(T),(g,R)=>{const b=St("tooltip");return Le((f(),O("div",{ref_key:"handle",ref:s,class:Ke(["panel-resize-handle",{dragging:r.value}]),role:"separator",tabindex:"0","aria-orientation":"vertical","aria-label":e.label,"aria-valuemin":e.min,"aria-valuemax":e.max,"aria-valuenow":e.width??i.value,onFocus:R[0]||(R[0]=C=>i.value=e.target?.getBoundingClientRect().width),onKeydown:p,onPointerdown:d,onPointermove:w,onPointerup:k,onPointercancel:k,onLostpointercapture:k},null,42,vT)),[[b,e.label]])}}}),Ec=dt(fT,[["__scopeId","data-v-5bff4995"]]),pT={class:"workbench-aside-header"},gT=["aria-label"],mT={class:"workbench-aside-label"},hT={key:0,class:"workbench-aside-activity session-activity managed_active","aria-hidden":"true"},yT={class:"workbench-aside-content"},wT=["id","aria-labelledby"],kT=["id","aria-labelledby"],bT=at({__name:"WorkbenchAside",props:{workspace:{},state:{},tools:{},browserLabel:{},sessions:{},tabLabel:{},closeLabel:{type:Function},resizeLabel:{},width:{},minWidth:{},maxWidth:{},mode:{},mobile:{type:Boolean},closeSurfaceLabel:{}},emits:["selectTool","selectBrowser","closeBrowser","selectSession","closeSession","resize","closeSurface"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=`aside-${wl()}`,i=j(()=>[...n.tools.filter(d=>n.state.tools.includes(d.id)).map(d=>({id:`tool:${d.id}`,label:d.label,active:!1,target:{kind:"tool",id:d.id}})),...n.state.sessions.map((d,w)=>{const k=n.sessions.find(p=>p.sessionId===d),T=k?.title??d;return{id:`session:${d}`,label:T,closeLabel:n.closeLabel(T),separatorBefore:w===0&&n.tools.some(p=>n.state.tools.includes(p.id)),target:{kind:"session",sessionId:d},active:k?.active??!1}}),...n.state.htmlPath!==void 0&&n.state.tools.includes("files")?[{id:"browser",label:n.browserLabel,closeLabel:n.closeLabel(n.browserLabel),separatorBefore:n.state.sessions.length===0&&n.state.tools.length>0,target:{kind:"browser"},active:!1}]:[]]),l=j(()=>{const d=n.state.active;return d?.kind==="tool"?`tool:${d.id}`:d?.kind==="browser"?"browser":d?.kind==="session"?`session:${d.sessionId}`:void 0});function v(d){const w=i.value.find(k=>k.id===d)?.target;w?.kind==="tool"?a("selectTool",{...n.workspace,id:w.id}):w?.kind==="browser"?a("selectBrowser",n.workspace):w?.kind==="session"&&a("selectSession",{...n.workspace,sessionId:w.sessionId})}function u(d){const w=i.value.find(k=>k.id===d)?.target;w?.kind==="browser"?a("closeBrowser",n.workspace):w?.kind==="session"&&a("closeSession",{...n.workspace,sessionId:w.sessionId})}return(d,w)=>(f(),O("aside",{ref_key:"element",ref:r,class:"workbench-aside",style:It({width:`${e.width}px`})},[B(Ec,{class:"workbench-aside-resize",target:r.value,label:e.resizeLabel,min:e.minWidth,max:e.maxWidth,width:e.width,direction:-1,"gesture-key":e.mode,onResize:w[0]||(w[0]=k=>a("resize",k))},null,8,["target","label","min","max","width","gesture-key"]),K("header",pT,[e.mobile?(f(),O("button",{key:0,type:"button",class:"workbench-aside-back","aria-label":e.closeSurfaceLabel,onClick:w[1]||(w[1]=k=>a("closeSurface"))},[B(De,{name:"chevron-left"})],8,gT)):ve("",!0),B(Bl,{class:"workbench-aside-tabs",size:"small",items:i.value,"id-prefix":s,"active-id":l.value,label:e.tabLabel,onActivate:v,onClose:u},{label:Z(({item:k})=>[K("span",mT,W(k.label),1),i.value.find(T=>T.id===k.id)?.active?(f(),O("span",hT,[...w[2]||(w[2]=[K("i",null,null,-1)])])):ve("",!0)]),_:1},8,["items","active-id","label"])]),K("div",yT,[(f(!0),O(Ve,null,Je(i.value.filter(k=>k.target.kind==="tool"&&k.target.id!=="terminal"),k=>Le((f(),O("div",{id:o(fn)(s,k.id).panel,key:k.id,class:"workbench-aside-panel",role:"tabpanel","aria-labelledby":o(fn)(s,k.id).tab},[Ct(d.$slots,"tool",{tool:k.target.kind==="tool"?k.target.id:void 0,visible:k.id===l.value},void 0,!0)],8,wT)),[[At,k.id===l.value]])),128)),(f(!0),O(Ve,null,Je(i.value.filter(k=>k.target.kind!=="tool"||k.target.id==="terminal"),k=>Le((f(),O("div",{id:o(fn)(s,k.id).panel,key:k.id,class:"workbench-aside-panel",role:"tabpanel","aria-labelledby":o(fn)(s,k.id).tab},[k.target.kind==="browser"&&k.id===l.value?Ct(d.$slots,"browser",{},void 0,!0,0):ve("",!0),k.target.kind==="tool"&&k.target.id==="terminal"?Ct(d.$slots,"terminal",{visible:k.id===l.value},void 0,!0,1):ve("",!0),k.target.kind==="session"&&k.id===l.value?Ct(d.$slots,"session",{target:{...e.workspace,sessionId:k.target.sessionId}},void 0,!0,2):ve("",!0)],8,kT)),[[At,k.id===l.value]])),128))])],4))}}),IT=dt(bT,[["__scopeId","data-v-3083b526"]]),ST=["aria-busy"],CT=["aria-label"],TT={key:1,role:"status"},ET=["aria-current","aria-label"],RT={class:"session-tree-title"},AT=["datetime"],NT={key:0,class:"session-tree-location"},DT={key:1,class:"session-tree-location"},PT={key:2,class:"session-tree-location"},OT=["aria-label"],LT={key:3},WT={key:4,class:"session-tree-list"},MT={key:0,class:"session-tree-origin","aria-hidden":"true"},xT={key:0,class:"session-tree-origin-stem is-incoming"},$T={key:1,class:"session-tree-origin-stem"},FT=["aria-current","aria-label","onClick"],UT={class:"session-tree-title"},VT={key:0,class:"session-tree-location"},qT={key:1,class:"session-tree-location"},HT={key:2,class:"session-tree-location"},BT=["datetime"],GT=["aria-label"],zT={key:5,class:"session-tree-truncated"},KT=at({__name:"WorkspaceSessionTree",props:{sessionId:{},tree:{},status:{},mainSessionId:{},asideSessionIds:{},activeAsideId:{}},emits:["open","retry","menu"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=x(),i=x([]);function l(){s.value?.handleClose();for(const k of i.value)k.handleClose()}t({closeMenu:l});const v=j(()=>{const k=a.tree;if(!k)return[];const T=new Set(k.nodes.map(b=>b.id)),p=new Map;for(const b of k.nodes){const C=b.parentSessionId===k.anchorSessionId||!T.has(b.parentSessionId??"")?null:b.parentSessionId,I=p.get(C)??[];I.push(b),p.set(C,I)}const g=[];function R(b,C,I=!1){const S=p.get(b)??[];for(const[m,A]of S.entries()){const L=m<S.length-1,y=b===null?[]:[...C,L];I&&y.length>0&&(y[0]=!0),g.push({node:A,branches:y,hasChildren:p.has(A.id),hasPreviousSibling:m>0,hasNextSibling:L}),R(A.id,y,b===null?L:I)}}return R(null,[]),g});function u(k){return Bi(k.lastActivityAt)?new Date(k.lastActivityAt).toISOString():void 0}function d(k){return Bi(k.lastActivityAt)?c("presentation.lastActivity",{value:Gt(k.lastActivityAt)}):void 0}function w(k){k.preventDefault(),k.currentTarget.querySelector(".session-tree-actions")?.click()}return(k,T)=>{const p=bt,g=ln,R=sn,b=rn,C=St("tooltip");return f(),O("div",{class:"session-tree","aria-busy":e.tree===void 0&&e.status!=="failed"},[e.tree===void 0&&e.status!=="failed"?(f(),O("div",{key:0,class:"session-tree-loading",role:"status","aria-label":o(c)("common.loading")},[B(gn,{class:"read-loading-indicator"})],8,CT)):ve("",!0),e.status==="failed"||e.status==="ready"&&e.tree===null?(f(),O("p",TT,[ke(W(o(c)("sessionGroups.treeUnavailable"))+" ",1),B(p,{link:"",onClick:T[0]||(T[0]=I=>r("retry"))},{default:Z(()=>[ke(W(o(c)("sessionGroups.retry")),1)]),_:1})])):ve("",!0),e.tree?.parent?(f(),O("div",{key:2,class:"session-tree-parent",onContextmenu:w},[K("span",null,W(o(c)("sessionGroups.parent")),1),K("div",{class:Ke(["session-tree-item",{"is-current":e.tree.parent.id===e.mainSessionId}])},[K("button",{type:"button",class:"session-tree-node","aria-current":e.tree.parent.id===e.mainSessionId?"true":void 0,"aria-label":`${e.tree.parent.title}, ${o(c)(`sessionGroups.status${e.tree.parent.status}`)}`,onClick:T[1]||(T[1]=I=>r("open",e.tree.parent.id,"aside"))},[Le((f(),O("span",RT,[ke(W(e.tree.parent.title),1)])),[[C,e.tree.parent.title]]),e.tree.parent.status!=="IDLE"?(f(),O("span",{key:0,class:Ke(["session-activity",e.tree.parent.status==="RUNNING"?"managed_active":"tree-sleeping"]),"aria-hidden":"true"},[...T[6]||(T[6]=[K("i",null,null,-1)])],2)):ve("",!0),Le((f(),O("time",{class:"session-tree-time",datetime:u(e.tree.parent)},[ke(W(o(er)(e.tree.parent.lastActivityAt)),1)],8,AT)),[[C,d(e.tree.parent)]])],8,ET),e.tree.parent.id===e.mainSessionId?(f(),O("span",NT,W(o(c)("sessionGroups.inMain")),1)):e.tree.parent.id===e.activeAsideId?(f(),O("span",DT,W(o(c)("sessionGroups.inActiveAside")),1)):e.asideSessionIds.includes(e.tree.parent.id)?(f(),O("span",PT,W(o(c)("sessionGroups.inAside")),1)):ve("",!0),B(b,{ref_key:"parentMenu",ref:s,trigger:"click","popper-class":"session-tree-menu",onVisibleChange:T[2]||(T[2]=I=>r("menu",I)),onCommand:T[3]||(T[3]=I=>r("open",e.tree.parent.id,I))},{dropdown:Z(()=>[B(R,null,{default:Z(()=>[B(g,{command:"aside"},{default:Z(()=>[B(De,{name:"split"}),ke(W(o(c)("sessionGroups.openAside")),1)]),_:1}),B(g,{command:"main"},{default:Z(()=>[B(De,{name:"conversation"}),ke(W(o(c)("sessionGroups.openMain")),1)]),_:1})]),_:1})]),default:Z(()=>[Le((f(),O("button",{type:"button",class:"icon-button utility-control session-tree-actions","aria-label":o(c)("sessionGroups.actions")},[B(De,{name:"more"})],8,OT)),[[C,o(c)("sessionGroups.actions")]])]),_:1},512)],2)],32)):ve("",!0),e.tree&&v.value.length===0?(f(),O("p",LT,W(o(c)("sessionGroups.noDescendants")),1)):ve("",!0),e.tree&&v.value.length>0?(f(),O("ul",WT,[(f(!0),O(Ve,null,Je(v.value,I=>(f(),O("li",{key:I.node.id,class:"session-tree-row",onContextmenu:w},[I.branches.length===0?(f(),O("span",MT,[I.hasPreviousSibling?(f(),O("span",xT)):ve("",!0),I.hasNextSibling||I.hasChildren?(f(),O("span",$T)):ve("",!0)])):ve("",!0),(f(!0),O(Ve,null,Je(I.branches,(S,m)=>(f(),O("span",{key:m,"aria-hidden":"true",class:Ke(["session-tree-branch",{"is-continuing":S,"is-leaf":m===I.branches.length-1}]),style:It({insetInlineStart:`${m*1.25+.75}rem`})},null,6))),128)),I.branches.length>0&&I.hasChildren?(f(),O("span",{key:1,class:"session-tree-child-stem","aria-hidden":"true",style:It({insetInlineStart:`${I.branches.length*1.25+.75}rem`})},null,4)):ve("",!0),K("span",{class:"session-tree-marker","aria-hidden":"true",style:It({insetInlineStart:`${I.branches.length*1.25+.75}rem`})},null,4),K("div",{class:Ke(["session-tree-item",{"is-current":I.node.id===e.mainSessionId}]),style:It({marginInlineStart:`${(I.branches.length+1)*1.25}rem`})},[K("button",{type:"button",class:"session-tree-node","aria-current":I.node.id===e.mainSessionId?"true":void 0,"aria-label":`${I.node.title}, ${o(c)(`sessionGroups.status${I.node.status}`)}`,onClick:S=>r("open",I.node.id,"aside")},[Le((f(),O("span",UT,[ke(W(I.node.title),1)])),[[C,I.node.title]]),I.node.id===e.mainSessionId?(f(),O("span",VT,W(o(c)("sessionGroups.inMain")),1)):I.node.id===e.activeAsideId?(f(),O("span",qT,W(o(c)("sessionGroups.inActiveAside")),1)):e.asideSessionIds.includes(I.node.id)?(f(),O("span",HT,W(o(c)("sessionGroups.inAside")),1)):ve("",!0),I.node.status!=="IDLE"?(f(),O("span",{key:3,class:Ke(["session-activity",I.node.status==="RUNNING"?"managed_active":"tree-sleeping"]),"aria-hidden":"true"},[...T[7]||(T[7]=[K("i",null,null,-1)])],2)):ve("",!0),Le((f(),O("time",{class:"session-tree-time",datetime:u(I.node)},[ke(W(o(er)(I.node.lastActivityAt)),1)],8,BT)),[[C,d(I.node)]])],8,FT),B(b,{ref_for:!0,ref_key:"nodeMenus",ref:i,trigger:"click","popper-class":"session-tree-menu",onVisibleChange:T[5]||(T[5]=S=>r("menu",S)),onCommand:S=>r("open",I.node.id,S)},{dropdown:Z(()=>[B(R,null,{default:Z(()=>[B(g,{command:"aside"},{default:Z(()=>[B(De,{name:"split"}),ke(W(o(c)("sessionGroups.openAside")),1)]),_:1}),B(g,{command:"main"},{default:Z(()=>[B(De,{name:"conversation"}),ke(W(o(c)("sessionGroups.openMain")),1)]),_:1})]),_:1})]),default:Z(()=>[Le((f(),O("button",{type:"button",class:"icon-button utility-control session-tree-actions","aria-label":o(c)("sessionGroups.actions"),onClick:T[4]||(T[4]=rt(()=>{},["stop"]))},[B(De,{name:"more"})],8,GT)),[[C,o(c)("sessionGroups.actions")]])]),_:1},8,["onCommand"])],6)],32))),128))])):ve("",!0),e.tree?.truncated?(f(),O("p",zT,W(o(c)("sessionGroups.treeTruncated")),1)):ve("",!0)],8,ST)}}}),jT=dt(KT,[["__scopeId","data-v-2c6676ba"]]),_T=["aria-label"],YT={class:"session-tree-header"},QT={class:"session-tree-scroll"},JT=at({__name:"WorkspaceSessionTreePopover",props:{anchor:{},sessionId:{},title:{},tree:{},status:{},mainSessionId:{},asideSessionIds:{},activeAsideId:{}},emits:["close","open","retry"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=x(),i=x(!1);let l;const v=Cl({isOpen:()=>!0,close:()=>a("close",!0)});function u(d){const w=d.composedPath();w.includes(n.anchor)||r.value&&w.includes(r.value)||w.some(k=>k instanceof Element&&k.classList.contains("session-tree-menu"))||a("close",!1)}return Dt(()=>{document.addEventListener("pointerdown",u,!0),v.start(),l=xt.register({command:"sessionTree.dismiss",scope:"overlay",priority:140,keys:[{key:"Escape"}],when:()=>!0,execute:()=>(i.value?s.value?.closeMenu():a("close",!0),"HANDLED")})}),mt(()=>{document.removeEventListener("pointerdown",u,!0),v.dispose(),l?.()}),(d,w)=>{const k=Nr;return f(),we(k,{visible:!0,"virtual-ref":e.anchor,"virtual-triggering":"",placement:"bottom-start","show-arrow":!1,"popper-class":"session-tree-popover",width:"min(480px, calc(100vw - 24px))","popper-options":{modifiers:[{name:"preventOverflow",options:{padding:12,tether:!1}}]}},{default:Z(()=>[K("section",{ref_key:"root",ref:r,class:"session-tree-popup",role:"dialog","aria-label":e.title},[K("header",YT,W(e.title),1),K("div",QT,[B(jT,{ref_key:"treeComponent",ref:s,"session-id":e.sessionId,tree:e.tree,status:e.status,"main-session-id":e.mainSessionId,"aside-session-ids":e.asideSessionIds,"active-aside-id":e.activeAsideId,onOpen:w[0]||(w[0]=(T,p)=>a("open",T,p)),onMenu:w[1]||(w[1]=T=>i.value=T),onRetry:w[2]||(w[2]=T=>a("retry"))},null,8,["session-id","tree","status","main-session-id","aside-session-ids","active-aside-id"])])],8,_T)]),_:1},8,["virtual-ref"])}}}),XT=dt(JT,[["__scopeId","data-v-983d1c4f"]]),ZT={class:"session-layout"},eE={key:0,class:"welcome-panel compact-welcome"},tE={class:"workspace-selection-hint"},nE={key:2,class:"workspace-offline-placeholder",role:"status"},aE={class:"workspace-offline-message"},oE={key:3,class:"welcome-panel compact-welcome workspace-selection-panel workspace-recovery-panel"},rE=["aria-label"],iE={key:1,class:"workspace-recovery-state"},sE={role:"status"},lE=["aria-hidden"],cE=["role"],dE=["role"],uE=["inert"],vE=at({__name:"WorkbenchSurface",props:{page:{}},setup(e){const n=kr({loader:()=>br(()=>import("./SettingsContent-Cdhq2mMs.js"),__vite__mapDeps([71,14,1,2,7,8,9,10,11,15,33,28,29,30,34,35,36,37,64,65,25,23,24,26,17,18,6,12,13,27,20,3,4,31,32,38,39,40,41,5,16,19,21,22,44,45,53,54,55,56,63,66,49,50,67,68,69,51,52,57,58,42,43,46,47,48,59,60,61,62,72])),loadingComponent:{render:()=>kl(bl,{loading:!0,variant:"page","aria-label":c("common.loading")})},delay:0}),a=e,r=gl(),s=j(()=>r.resolve(a.page.application.managementSection,a.page.identity.admin)),i=x(!1),l=x(),v=x(),u=x(0);He(l,(V,N,h)=>{if(V==null)return;const F=()=>{const J=V.querySelector(".conversation-sidebar")?.getBoundingClientRect().width??0;u.value=Math.max(0,V.clientWidth-(a.page.layout.mobileViewport?0:J))},z=new ResizeObserver(F);z.observe(V);const fe=V.querySelector(".conversation-sidebar");fe&&z.observe(fe),F(),h(()=>z.disconnect())},{flush:"post"});const d=j(()=>a.page.aside.asideViewMode(a.page.aside.asideState?.active)),w=j(()=>a.page.resources.nodeManifestLoading&&a.page.resources.nodeManifest===void 0),k=j(()=>a.page.layout.mobileViewport?u.value:a.page.aside.asideWidth(d.value,u.value,360)),T=j(()=>a.page.resources.workspaceHost?.connected===!1?"failed":a.page.application.workspaceWatchTopicStatus.sessionNavigation),p=j(()=>a.page.application.view==="nodes"&&a.page.selection.workspaceTarget!==void 0&&a.page.aside.asideState!==void 0&&k.value!==void 0&&k.value>0&&(!a.page.layout.mobileViewport||a.page.layout.mobileWorkspaceSurface==="inspector"||a.page.layout.mobileWorkspaceSurface==="terminal"));He(p,V=>a.page.aside.setAsideSurfaceVisible(V),{immediate:!0}),mt(()=>a.page.aside.setAsideSurfaceVisible(!1));const g=j(()=>p.value&&a.page.aside.asideState?.active?.kind==="tool"&&a.page.aside.asideState.active.id==="terminal");function R(V){V==="terminal"?a.page.aside.toggleAsideTerminal():a.page.layout.openMobileWorkspaceSurface(V)}const b=j(()=>[{id:"files",label:c("generated.workspaceInspector.files3")},{id:"search",label:c("generated.workspaceInspector.search")},{id:"changes",label:c("generated.workspaceInspector.gitChanges")},{id:"history",label:c("generated.workspaceInspector.gitHistory")},{id:"terminal",label:c("generated.terminalDock.workspaceTerminal")}]),C=j(()=>(a.page.aside.asideState?.sessions??[]).map(V=>{const N=a.page.aside.asideSessionMetadata.find(h=>h.id===V);return{sessionId:V,title:N?.title??V,active:N?.activity==="MANAGED_ACTIVE"}}));function I(V){const N=a.page.aside.asideState?.active;return!p.value||N?.kind!=="tool"||N.id!==V||V==="terminal"?null:V}const S=j(()=>p.value&&a.page.files.filesReady&&I("files")==="files"),m=j(()=>{const V=a.page.aside.asideState?.active;return p.value&&a.page.files.filesReady&&a.page.files.contentSearchReady&&V?.kind==="tool"&&V.id==="search"});Dt(()=>a.page.files.mountSurface()),mt(()=>a.page.files.unmountSurface());const A=x(),L=x();function y(V=!1){const N=L.value;L.value=void 0,a.page.sessionList.setSessionTreeAnchor(void 0),V&&N&&ut(()=>{N.anchor.isConnected&&N.anchor.focus()})}function D(V,N,h){const F=a.page.selection.workspaceTarget;if(!(!F||!a.page.aside.asideSupported)){if(L.value?.anchor===N){y(!0);return}L.value={...F,sessionId:V,anchor:N,title:h},a.page.sessionList.setSessionTreeAnchor(V)}}function E(V){const N=a.page.aside.openAsideSession(V);return N&&a.page.layout.mobileViewport&&a.page.layout.openMobileWorkspaceSurface("inspector"),N}function H(V,N){const h=L.value,F=a.page.selection.workspaceTarget;if(!h||!F||h.nodeId!==F.nodeId||h.workspaceId!==F.workspaceId)return;const z={nodeId:h.nodeId,workspaceId:h.workspaceId,sessionId:V};N==="aside"?E(z)&&y(!1):(a.page.selection.openSessionGroupTarget(z),y(!1))}He(()=>[a.page.selection.workspaceTarget?.nodeId,a.page.selection.workspaceTarget?.workspaceId,a.page.application.view,a.page.aside.asideSupported],()=>{const V=L.value;V&&(a.page.application.view!=="nodes"||!a.page.aside.asideSupported||a.page.selection.workspaceTarget?.nodeId!==V.nodeId||a.page.selection.workspaceTarget.workspaceId!==V.workspaceId)&&y()}),mt(()=>{L.value&&y()});const X=j(()=>{const V=a.page.hosted.hostedConversationWorkspace;return V.snapshot.value?.conversation??V.conversations.value.find(N=>N.nodeId===V.selectedNodeId.value&&N.id===V.selectedConversationId.value)});function _(){const V=a.page.selection.workspaceTarget?.nodeId,N=a.page.resources.selectedWorkspace;V===void 0||N===void 0||(A.value={nodeId:V,workspace:N},i.value=!0)}async function U(V){const N=A.value;if(N!==void 0)return a.page.sessionList.cleanupWorkspaceSessions(N.nodeId,N.workspace,V)}function Q(V){i.value=V,V||(A.value=void 0)}const $=Rr({isOpen:()=>a.page.layout.mobileViewport&&a.page.layout.mobileWorkspaceSurface!=="conversation",regions:()=>[document.querySelector(a.page.layout.mobileWorkspaceSurface==="sessions"?".workspace-grid.mobile-surface-sessions .conversation-sidebar":".workspace-grid .workspace-aside"),document.querySelector(".activity-rail")],close:()=>a.page.layout.closeMobileWorkspaceSurface(),terminal:()=>g.value});return mt($.dispose),(V,N)=>{const h=Xt,F=bt,z=Ar;return f(),O("section",{class:Ke(["workbench",{settings:e.page.application.view!=="nodes"&&e.page.application.view!=="conversations",standalone:e.page.application.view==="conversations",compact:e.page.layout.sidebarCollapsed}])},[e.page.registration.workspaceRegistrationNodeId!==void 0?(f(),we(h,{key:0,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),"model-value":!0,title:o(c)("generated.workbenchSurface.registerWorkspace"),width:"min(980px, calc(100vw - 32px))","destroy-on-close":"","onUpdate:modelValue":N[2]||(N[2]=fe=>{fe||e.page.registration.closeWorkspaceRegistration()}),"close-icon":o(qe)("close")},{default:Z(()=>[Ct(V.$slots,"workspace-registration",{},()=>[B(kc,{modelValue:e.page.registration.openWorkspaceTools,"onUpdate:modelValue":N[0]||(N[0]=fe=>e.page.registration.openWorkspaceTools=fe),"preserve-git-config":e.page.registration.workspacePreserveGitConfig,"onUpdate:preserveGitConfig":N[1]||(N[1]=fe=>e.page.registration.workspacePreserveGitConfig=fe),directory:e.page.registration.workspaceDirectory,"selected-path":e.page.resources.workspacePath,"pending-directory-name":e.page.registration.pendingWorkspaceDirectoryName,"loading-directory":e.page.registration.loadingWorkspaceDirectory,loading:e.page.registration.registrationLoading,"node-ready":e.page.registration.workspaceRegistrationReady,"selected-path-valid":e.page.registration.selectedWorkspaceDirectorySelectable,onNavigate:e.page.registration.loadWorkspaceDirectories,onSelect:e.page.registration.selectWorkspaceDirectory,onSelectPending:e.page.registration.selectPendingWorkspaceDirectory,onDiscardPending:e.page.registration.discardPendingWorkspaceDirectory,onRegister:e.page.registration.registerWorkspace},null,8,["modelValue","preserve-git-config","directory","selected-path","pending-directory-name","loading-directory","loading","node-ready","selected-path-valid","onNavigate","onSelect","onSelectPending","onDiscardPending","onRegister"])],!0)]),_:3},8,["onVnodeMounted","onVnodeBeforeUnmount","title","close-icon"])):ve("",!0),B(ES,{"mobile-viewport":e.page.layout.mobileViewport,view:e.page.application.view,"sidebar-collapsed":e.page.layout.sidebarCollapsed,"settings-section":e.page.application.settingsSection,"management-section":e.page.application.managementSection,"settings-items":e.page.application.settingsItems,"management-items":e.page.application.managementItems,"conversation-title":X.value===void 0?o(c)("hostedConversations.temporaryTitle"):o(Tn)(X.value),onToggleSidebar:N[3]||(N[3]=fe=>e.page.layout.sidebarCollapsed=!e.page.layout.sidebarCollapsed)},yl({_:2},[e.page.application.view==="nodes"&&!e.page.layout.mobileViewport?{name:"workspace-tabs",fn:Z(()=>[B(el,{placement:"header",tabs:e.page.selection.workspaceTabs,"active-tab-id":e.page.selection.activeWorkspaceTabId,"empty-label":e.page.resources.workspaceHost===void 0?o(c)("workspaceTabs.newTab"):e.page.resources.nodeLabel(e.page.resources.workspaceHost),"empty-context":o(c)("navigation.selectWorkspace"),"node-label":e.page.selection.workspaceTabNodeLabel,"direct-available":e.page.resources.workspaceDirectAvailable,"direct-description":e.page.resources.workspaceDirectDescription,"has-active-run":e.page.notifications.hasActiveWorkspaceRun,"has-unread":e.page.notifications.hasUnreadWorkspace,onActivate:e.page.selection.activateWorkspaceTab,onClose:e.page.selection.closeWorkspaceTab,onReorder:e.page.selection.moveWorkspaceTab,onPin:e.page.selection.pinWorkspaceTab},null,8,["tabs","active-tab-id","empty-label","empty-context","node-label","direct-available","direct-description","has-active-run","has-unread","onActivate","onClose","onReorder","onPin"])]),key:"0"}:void 0]),1032,["mobile-viewport","view","sidebar-collapsed","settings-section","management-section","settings-items","management-items","conversation-title"]),Le(K("section",ZT,[e.page.application.view==="nodes"&&e.page.selection.workspaceTarget===void 0?(f(),O("section",eE,[K("h1",null,W(o(c)("generated.workbenchSurface.selectAWorkspace")),1),K("p",null,W(o(c)("generated.workbenchSurface.selectANodeInTheResourceExplorer")),1),K("p",tE,[ke(W(o(c)("generated.workbenchSurface.noNodeConnectedYetCreateARegistration"))+" ",1),B(F,{link:"",type:"primary",onClick:e.page.registration.openNodeRegistration},{default:Z(()=>[ke(W(o(c)("generated.workbenchSurface.openNodeManagement")),1)]),_:1},8,["onClick"])])])):e.page.application.view==="nodes"&&e.page.selection.workspaceTarget!==void 0?(f(),O(Ve,{key:1},[e.page.layout.mobileViewport?(f(),we(el,{key:0,placement:"body",tabs:e.page.selection.workspaceTabs,"active-tab-id":e.page.selection.activeWorkspaceTabId,"node-label":e.page.selection.workspaceTabNodeLabel,"direct-available":e.page.resources.workspaceDirectAvailable,"direct-description":e.page.resources.workspaceDirectDescription,"has-active-run":e.page.notifications.hasActiveWorkspaceRun,"has-unread":e.page.notifications.hasUnreadWorkspace,onActivate:e.page.selection.activateWorkspaceTab,onClose:e.page.selection.closeWorkspaceTab,onReorder:e.page.selection.moveWorkspaceTab,onPin:e.page.selection.pinWorkspaceTab},null,8,["tabs","active-tab-id","node-label","direct-available","direct-description","has-active-run","has-unread","onActivate","onClose","onReorder","onPin"])):ve("",!0),e.page.resources.workspaceHost?.connected!==!1&&!e.page.resources.nodeReady&&e.page.resources.selectedNodeStatus!==void 0?(f(),we(z,{key:1,class:"readonly-banner",closable:!1,"show-icon":"",title:e.page.resources.selectedNodeStatus??o(c)("generated.workbenchSurface.nodeWorkbenchCapabilitiesAreUnavailable"),type:"error"},{icon:Z(()=>[B(De,{name:"error"})]),_:1},8,["title"])):ve("",!0),e.page.resources.workspaceHost?.connected===!1?(f(),O("section",nE,[K("div",aE,[B(De,{name:"connection-off",class:"workspace-offline-icon","aria-hidden":"true"}),K("p",null,W(o(c)("generated.workbenchSurface.offlineWorkspace")),1)])])):ve("",!0),e.page.resources.workspaceHost?.connected!==!1&&e.page.selection.workspaceTarget!==void 0&&e.page.resources.selectedWorkspace===void 0?(f(),O("section",oE,[e.page.selection.workspaceSelectionLoading?(f(),O("div",{key:0,class:"page-loading-state",role:"status","aria-label":o(c)("common.loading")},[B(gn)],8,rE)):(f(),O("div",iE,[K("p",sE,W(o(c)("generated.workbenchSurface.workspaceMetadataUnavailable")),1),B(F,{link:"",size:"small",onClick:e.page.selection.retryWorkspaceSelection},{default:Z(()=>[ke(W(o(c)("common.loadFailedRetry")),1)]),_:1},8,["onClick"])]))])):e.page.resources.selectedWorkspace!==void 0?Le((f(),O("div",{key:4,ref_key:"workspaceGrid",ref:l,class:Ke(["workspace-grid",`mobile-surface-${e.page.layout.mobileWorkspaceSurface}`]),style:It({"--aside-width":`${k.value??0}px`})},[B(y0,{"aside-supported":e.page.aside.asideSupported,onOpenAside:E,"session-group":e.page.sessionList.workspaceSessionGroup,onSelectGroup:e.page.sessionList.selectWorkspaceSessionGroup,onOpenTree:D,sessions:e.page.sessionList.visibleWorkspaceSessions,"selected-session-id":e.page.selection.selectedSessionId,"mobile-viewport":e.page.layout.mobileViewport,"can-load-more":e.page.sessionList.canLoadMoreWorkspaceSessions,"loading-more":e.page.sessionList.loadingMoreWorkspaceSessions,"load-more-error":e.page.sessionList.loadMoreWorkspaceSessionsError,active:(!e.page.layout.mobileViewport||e.page.layout.mobileWorkspaceSurface==="sessions")&&e.page.resources.workspaceHost?.connected!==!1,"watch-status":e.page.application.workspaceWatchTopicStatus.sessions,"node-ready":e.page.resources.nodeReady,loading:e.page.sessionList.mutationLoading,"workspace-kind":e.page.resources.selectedWorkspace?.kind,"workspace-kind-label":e.page.resources.workspaceKindLabel(e.page.resources.selectedWorkspace),"workspace-branch":e.page.resources.workspaceBranchLabel(e.page.resources.selectedWorkspace),title:e.page.sessionList.sessionTitle,"runner-icon":e.page.application.runnerBrandIcon,activity:e.page.sessionList.sessionActivity,"can-delete-session":e.page.sessionList.canDeleteSession,"activity-label":e.page.sessionList.sessionActivityLabel,"activity-date-time":e.page.sessionList.sessionActivityDateTime,"activity-title":e.page.sessionList.sessionActivityTitle,"relative-activity":e.page.sessionList.sessionRelativeActivity,"node-id":e.page.selection.workspaceTarget?.nodeId,"workspace-id":e.page.resources.selectedWorkspace.id,"skill-supported":!0,"mcp-supported":!0,"cleanup-sessions-supported":e.page.sessionList.cleanupSessionsEnabled,"search-supported":e.page.sessionList.workspaceSessionSearchEnabled,"search-query":e.page.sessionList.workspaceSessionSearchQuery,searching:e.page.sessionList.searchingWorkspaceSessions,refreshing:e.page.sessionList.refreshingWorkspaceSessions,"workspace-manageable":e.page.resources.selectedWorkspace.manageable!==!1,request:e.page.identity.request,"has-unread":fe=>e.page.notifications.hasUnreadSession(e.page.selection.workspaceTarget?.nodeId,e.page.resources.selectedWorkspace.id,fe),onCreate:e.page.selection.openNewSessionComposer,onOpen:e.page.selection.openSessionFromList,onRename:e.page.sessionList.renameSession,onPin:e.page.sessionList.setSessionPinned,onMovePin:e.page.sessionList.movePinnedSession,onMovePinTo:e.page.sessionList.movePinnedSessionTo,onDeleteSession:e.page.sessionList.deleteSession,onCleanupSessions:_,onLoadMore:e.page.sessionList.loadMoreWorkspaceSessions,onSearch:e.page.sessionList.searchWorkspaceSessions,onRefresh:e.page.sessionList.refreshWorkspaceSessions},null,8,["aside-supported","session-group","onSelectGroup","sessions","selected-session-id","mobile-viewport","can-load-more","loading-more","load-more-error","active","watch-status","node-ready","loading","workspace-kind","workspace-kind-label","workspace-branch","title","runner-icon","activity","can-delete-session","activity-label","activity-date-time","activity-title","relative-activity","node-id","workspace-id","cleanup-sessions-supported","search-supported","search-query","searching","refreshing","workspace-manageable","request","has-unread","onCreate","onOpen","onRename","onPin","onMovePin","onMovePinTo","onDeleteSession","onLoadMore","onSearch","onRefresh"]),i.value&&A.value!==void 0?(f(),we(E0,{key:0,"model-value":i.value,cleanup:U,"onUpdate:modelValue":Q},null,8,["model-value"])):ve("",!0),B(ol,{controller:e.page.mainPaneController,"aside-ready":e.page.aside.asideState?.active!==void 0,"tree-supported":e.page.aside.asideSupported,"tree-open-session-id":L.value?.sessionId,"tree-summaries":e.page.sessionList.sessionNavigationSnapshot?.summaries,"tree-status":T.value,onOpenTree:D,onOpenSurface:R,onPreviewAttachment:e.page.interactions.openAttachmentPreview,onReload:e.page.sessionList.reloadSelectedSession},null,8,["controller","aside-ready","tree-supported","tree-open-session-id","tree-summaries","tree-status","onPreviewAttachment","onReload"]),(f(),we(bk,{key:`${e.page.selection.workspaceTarget?.nodeId}:${e.page.selection.workspaceTarget?.workspaceId}`,ref:fe=>e.page.files.workspaceFileWorkbench=fe,"node-id":e.page.selection.workspaceTarget?.nodeId,"workspace-id":e.page.selection.workspaceTarget?.workspaceId,controller:e.page.files.fileWorkbench,"register-page":e.page.files.setWorkspaceFilePage,"adjacent-diff":e.page.files.adjacentWorkspaceDiff,"load-diff":e.page.files.loadWorkspaceDiff,"open-external":e.page.files.openWorkspaceFileExternal,enabled:e.page.files.filesReady,"prediction-enabled":e.page.application.workPromptCompletion.enabled,"code-navigation-enabled":e.page.application.codeNavigationReady,"file-write-enabled":e.page.files.fileWriteReady,"standalone-file-mode":e.page.files.standaloneFileMode,onOpenHtmlPreview:e.page.aside.openHtmlAside,onNotice:e.page.application.notice},null,8,["node-id","workspace-id","controller","register-page","adjacent-diff","load-diff","open-external","enabled","prediction-enabled","code-navigation-enabled","file-write-enabled","standalone-file-mode","onOpenHtmlPreview","onNotice"])),B(hn,{name:"workspace-aside",css:e.page.layout.mobileViewport&&e.page.selection.workspaceTarget!==void 0&&e.page.resources.workspaceHost?.connected!==!1},{default:Z(()=>[e.page.aside.asideState?Le((f(),O("div",{key:0,class:"workspace-aside",tabindex:"-1","aria-hidden":!p.value},[B(IT,{inert:!p.value,workspace:e.page.selection.workspaceTarget,state:e.page.aside.asideState,tools:b.value,"browser-label":o(c)("htmlPreview.browser"),sessions:C.value,"tab-label":o(c)("generated.workbenchAside.tabs"),"close-label":fe=>o(c)("generated.workbenchAside.close",{value0:fe}),"resize-label":o(c)("generated.workbenchAside.resize"),width:k.value??o(pn)[d.value].min,mobile:e.page.layout.mobileViewport,"close-surface-label":o(c)("workbench.closeWorkspaceTools"),"min-width":o(pn)[d.value].min,"max-width":Math.max(o(pn)[d.value].min,Math.min(o(pn)[d.value].max,u.value-360)),mode:d.value,onSelectTool:e.page.aside.selectAsideTool,onSelectBrowser:e.page.aside.selectAsideBrowser,onCloseBrowser:e.page.aside.closeAsideBrowser,onSelectSession:e.page.aside.openAsideSession,onCloseSession:e.page.aside.closeAsideSession,onResize:N[13]||(N[13]=fe=>e.page.layout.setPanelWidth(d.value,fe)),onCloseSurface:e.page.layout.closeMobileWorkspaceSurface},{browser:Z(()=>[p.value&&e.page.selection.workspaceTarget&&e.page.aside.asideState.htmlPath!==void 0&&e.page.aside.asideState.active?.kind==="browser"?(f(),we(uI,{key:0,"node-id":e.page.selection.workspaceTarget.nodeId,"workspace-id":e.page.selection.workspaceTarget.workspaceId,path:e.page.aside.asideState.htmlPath,"csrf-token":e.page.identity.csrfToken,"renew-csrf-token":e.page.identity.renewCsrfToken,onSource:N[4]||(N[4]=fe=>e.page.files.fileWorkbench.openFile(fe)),onExternal:N[5]||(N[5]=fe=>e.page.application.openHtmlExternal(fe))},null,8,["node-id","workspace-id","path","csrf-token","renew-csrf-token"])):ve("",!0)]),tool:Z(({tool:fe})=>[fe==="files"&&e.page.selection.workspaceTarget!==void 0?Le((f(),we(rI,{key:`${e.page.selection.workspaceTarget.nodeId}:${e.page.selection.workspaceTarget.workspaceId}`,ref:J=>e.page.files.setWorkspaceFilesPanel(J),service:e.page.files.workspaceFiles,visible:S.value,"watch-status":e.page.application.workspaceWatchTopicStatus.files,"workspace-path":e.page.resources.selectedWorkspace?.path,"local-file-manager-enabled":e.page.resources.workspaceLocalFileManagerAvailable,"mobile-viewport":e.page.layout.mobileViewport,onRefresh:N[6]||(N[6]=J=>e.page.files.workspaceFiles.requestRefresh()),onOpen:N[7]||(N[7]=(J,re)=>re?e.page.files.openWorkspaceFileExternal(J):e.page.files.fileWorkbench.openFile(J)),onHtml:e.page.aside.openHtmlAside,onDownload:N[8]||(N[8]=J=>e.page.files.downloadWorkspaceFile(J)),onFailure:N[9]||(N[9]=(J,re)=>e.page.files.reportWorkspaceFileFailure(J,re)),onNotice:N[10]||(N[10]=(J,re)=>e.page.application.notice(J,re)),onRetryWatch:e.page.application.retryWorkspaceWatch},null,8,["service","visible","watch-status","workspace-path","local-file-manager-enabled","mobile-viewport","onHtml","onRetryWatch"])),[[At,S.value]]):ve("",!0),fe==="search"&&e.page.selection.workspaceTarget!==void 0?Le((f(),we(xb,{key:`${e.page.selection.workspaceTarget.nodeId}:${e.page.selection.workspaceTarget.workspaceId}`,ref:J=>e.page.files.setWorkspaceSearchPanel(J),service:e.page.files.workspaceSearch,enabled:e.page.files.contentSearchReady,"node-id":e.page.selection.workspaceTarget?.nodeId,"workspace-id":e.page.selection.workspaceTarget?.workspaceId,onOpen:N[11]||(N[11]=(J,re,ge,ce)=>ce?e.page.files.openWorkspaceFileExternal(J,re,ge):e.page.files.fileWorkbench.openFile(J,re,ge))},null,8,["service","enabled","node-id","workspace-id"])),[[At,m.value]]):ve("",!0),(I(fe)==="files"||I(fe)==="search")&&!e.page.files.filesReady?(f(),O("p",{key:2,class:Ke(["workspace-tool-unavailable",{"workspace-tool-loading":w.value}]),role:w.value?"status":void 0},[w.value?(f(),we(De,{key:0,name:"loading-action"})):ve("",!0),ke(" "+W(w.value?o(c)("generated.workspaceInspector.loading"):e.page.resources.workspaceHost?.connected===!0&&e.page.resources.workspaceHost.disabled!==!0?o(c)("generated.workspaceInspector.capabilityUnavailable"):o(c)("generated.workspaceInspector.theNodeIsOfflineOrDoesNot")),1)],10,cE)):ve("",!0),I(fe)==="changes"||I(fe)==="history"?(f(),O("section",{key:JSON.stringify([e.page.selection.workspaceTarget?.nodeId,e.page.selection.workspaceTarget?.workspaceId]),class:"workspace-git-panel"},[e.page.files.filesReady?(f(),O(Ve,{key:1},[I(fe)==="changes"?(f(),we(eb,{key:0,service:e.page.files.workspaceGit,target:e.page.selection.workspaceTarget,"watch-status":e.page.application.workspaceWatchTopicStatus.changes,onRetryWatch:N[12]||(N[12]=J=>e.page.application.retryWorkspaceWatch()),onOpen:e.page.files.openWorkspaceGitChange,onNotice:e.page.application.notice},null,8,["service","target","watch-status","onOpen","onNotice"])):(f(),we(Cb,{key:1,service:e.page.files.workspaceGit,onOpen:e.page.files.openWorkspaceHistoryDiff,onNotice:e.page.application.notice},null,8,["service","onOpen","onNotice"]))],64)):(f(),O("p",{key:0,class:Ke(["empty",{"workspace-tool-loading":w.value}]),role:w.value?"status":void 0},[w.value?(f(),we(De,{key:0,name:"loading-action"})):ve("",!0),ke(" "+W(w.value?o(c)("generated.workspaceInspector.loading"):e.page.resources.workspaceHost?.connected===!0&&e.page.resources.workspaceHost.disabled!==!0?o(c)("generated.workspaceInspector.capabilityUnavailable"):o(c)("generated.workspaceInspector.theNodeIsOfflineOrDoesNot")),1)],10,dE))])):ve("",!0)]),session:Z(()=>[B(ol,{controller:e.page.aside.asidePaneController,"aside-ready":e.page.aside.asideState?.active!==void 0,"tree-supported":e.page.aside.asideSupported,"tree-open-session-id":L.value?.sessionId,"tree-summaries":e.page.sessionList.sessionNavigationSnapshot?.summaries,"tree-status":T.value,onOpenTree:D,onOpenSurface:R,onPreviewAttachment:e.page.interactions.openAttachmentPreview,onReload:e.page.aside.reloadAsideSession},null,8,["controller","aside-ready","tree-supported","tree-open-session-id","tree-summaries","tree-status","onPreviewAttachment","onReload"])]),terminal:Z(()=>[K("div",{ref_key:"terminalMount",ref:v,class:"aside-terminal-mount"},null,512)]),_:1},8,["inert","workspace","state","tools","browser-label","sessions","tab-label","close-label","resize-label","width","mobile","close-surface-label","min-width","max-width","mode","onSelectTool","onSelectBrowser","onCloseBrowser","onSelectSession","onCloseSession","onCloseSurface"])],8,lE)),[[At,p.value]]):ve("",!0)]),_:1},8,["css"])],6)),[[At,e.page.resources.workspaceHost?.connected!==!1]]):ve("",!0)],64)):ve("",!0),(f(),we(la,{to:v.value??"body",disabled:v.value===void 0},[(f(!0),O(Ve,null,Je(e.page.selection.workspaceTabs,fe=>Le((f(),O("div",{key:fe.id,tabindex:"-1",inert:!g.value,class:"terminal-dock"},[B(FS,{"error-message":o(it),embedded:"",ref_for:!0,ref:J=>{J===null?e.page.terminal.terminalDocks.delete(fe.id):e.page.terminal.terminalDocks.set(fe.id,J)},"node-id":fe.nodeId,direct:e.page.terminal.terminalDirectClient,"workspace-id":fe.workspaceId,"csrf-token":e.page.identity.csrfToken,"renew-csrf-token":e.page.identity.renewCsrfToken,enabled:e.page.application.view==="nodes"&&fe.id===e.page.selection.activeWorkspaceTabId&&e.page.terminal.terminalReady,capability:e.page.resources.nodeManifest?.terminal,"node-os-release":e.page.resources.nodes.find(J=>J.id===fe.nodeId)?.metadata?.osRelease,visible:e.page.application.view==="nodes"&&fe.id===e.page.selection.activeWorkspaceTabId&&e.page.terminal.terminalReady&&g.value,"mobile-mode":e.page.layout.mobileViewport,active:e.page.application.view==="nodes"&&fe.id===e.page.selection.activeWorkspaceTabId,onCollapse:N[14]||(N[14]=J=>e.page.layout.mobileViewport&&e.page.layout.closeMobileWorkspaceSurface()),onNotice:e.page.application.notice},null,8,["error-message","node-id","direct","workspace-id","csrf-token","renew-csrf-token","enabled","capability","node-os-release","visible","mobile-mode","active","onNotice"])],8,uE)),[[At,g.value&&fe.id===e.page.selection.activeWorkspaceTabId&&e.page.terminal.terminalReady]])),128))],8,["to","disabled"]))],512),[[At,e.page.application.view==="nodes"]]),e.page.application.view==="conversations"?(f(),we(_C,{key:1,connected:e.page.application.liveConnected,workspace:e.page.hosted.hostedConversationWorkspace,request:e.page.identity.request,"mobile-viewport":e.page.layout.mobileViewport,"mobile-history-open":e.page.hosted.hostedConversationMobileHistoryOpen,"mobile-files-open":e.page.hosted.hostedConversationMobileFilesOpen,"onUpdate:mobileFilesOpen":N[15]||(N[15]=fe=>e.page.hosted.hostedConversationMobileFilesOpen=fe),"sidebar-collapsed":e.page.layout.sidebarCollapsed,"select-conversation":e.page.hosted.selectHostedConversation,"route-target":e.page.hosted.hostedConversationRoute,"restoring-route":e.page.hosted.restoringHostedConversationRoute,"clear-conversation":e.page.hosted.clearHostedConversation,"has-unread-conversation":e.page.notifications.hasUnreadConversation,onCloseMobileHistory:e.page.hosted.closeHostedConversationMobileHistory},null,8,["connected","workspace","request","mobile-viewport","mobile-history-open","mobile-files-open","sidebar-collapsed","select-conversation","route-target","restoring-route","clear-conversation","has-unread-conversation","onCloseMobileHistory"])):e.page.application.view==="settings"?Ct(V.$slots,"settings",{},()=>[B(o(n),{"web-version":e.page.application.webVersion,"pwa-state":e.page.application.pwaState,"checking-for-updates":e.page.application.checkingForUpdates,"new-password":e.page.identity.newPassword,"onUpdate:newPassword":N[16]||(N[16]=fe=>e.page.identity.newPassword=fe),section:e.page.application.settingsSection,sessions:e.page.identity.adminSessions,"password-validation-error":e.page.identity.passwordValidationError,"registration-token":e.page.settings.registrationToken,"registration-loading":e.page.settings.registrationLoading,loading:e.page.identity.loading,"format-session-time":e.page.identity.formatSessionTime,request:e.page.identity.request,"quick-prompts":e.page.settings.quickPrompts,"quick-prompts-loading":e.page.settings.quickPromptsLoading,"quick-prompts-failed":e.page.settings.quickPromptsFailed,"refresh-quick-prompts":e.page.settings.refreshQuickPrompts,"system-notifications":e.page.notifications.systemNotifications,onClearPasswordError:N[17]||(N[17]=fe=>e.page.identity.passwordValidationError=""),onRefreshSessions:e.page.identity.refreshAdminSessions,onLogoutSession:e.page.identity.logoutAdminSession,"change-password":e.page.identity.changePassword,onLogout:e.page.identity.logout,onCreateRegistrationToken:e.page.settings.createRegistrationToken,onCheckForUpdates:e.page.application.checkForUpdates,onApplyWebUpdate:e.page.application.applyWebUpdate},null,8,["web-version","pwa-state","checking-for-updates","new-password","section","sessions","password-validation-error","registration-token","registration-loading","loading","format-session-time","request","quick-prompts","quick-prompts-loading","quick-prompts-failed","refresh-quick-prompts","system-notifications","onRefreshSessions","onLogoutSession","change-password","onLogout","onCreateRegistrationToken","onCheckForUpdates","onApplyWebUpdate"])],!0,2):e.page.application.view==="management"?(f(),O(Ve,{key:3},[Ct(V.$slots,"management-notice",{},void 0,!0),(f(),we(yr(s.value.component),ra({key:s.value.id},s.value.props({admin:e.page.identity.admin,request:e.page.identity.request,nodes:e.page.resources.nodes,nodeUpgradeProgress:e.page.resources.nodeUpgradeProgress,onlineNodeCount:e.page.resources.onlineNodeCount,serverVersion:e.page.resources.serverVersion}),{onChanged:e.page.resources.refreshNodes,onExtensionChanged:e.page.identity.refreshAdmin}),null,16,["onChanged","onExtensionChanged"]))],64)):ve("",!0),L.value?(f(),we(XT,{key:L.value.sessionId,anchor:L.value.anchor,"session-id":L.value.sessionId,title:L.value.title,tree:e.page.sessionList.sessionNavigationSnapshot?.tree,status:T.value,"main-session-id":e.page.selection.draftSessionOpen?void 0:e.page.selection.selectedSessionId,"aside-session-ids":e.page.aside.asideState?.sessions??[],"active-aside-id":e.page.aside.asideState?.active?.kind==="session"?e.page.aside.asideState.active.sessionId:void 0,onClose:y,onOpen:H,onRetry:e.page.application.retryWorkspaceWatch},null,8,["anchor","session-id","title","tree","status","main-session-id","aside-session-ids","active-aside-id","onRetry"])):ve("",!0)],2)}}}),Rc=dt(vE,[["__scopeId","data-v-5f5882bd"]]),fE={key:0,class:"workspace-picker-ownership"},pE={key:0},gE={key:1},mE={key:3},hE=at({inheritAttrs:!1,__name:"WorkspaceRegistrationPicker",props:{modelValue:{},directory:{},selectedPath:{},pendingDirectoryName:{},loadingDirectory:{type:Boolean},loading:{type:Boolean},nodeReady:{type:Boolean},selectedPathValid:{type:Boolean},enterprise:{type:Boolean},role:{},nodeOwnership:{},nodeManageable:{type:Boolean},workspaceCreatable:{type:Boolean},request:{type:Function}},emits:["register"],setup(e,{emit:t}){const n=e,a=t,r=x([]),s=x(),i=j(()=>{if(n.nodeOwnership?.ownerType!=="ORGANIZATION")return[];const d=n.nodeOwnership.ownerOrganizationId,w=new Map;for(const p of r.value){if(p.parentOrganizationId===null)continue;const g=w.get(p.parentOrganizationId)??[];g.push(p.id),w.set(p.parentOrganizationId,g)}const k=new Set([d]),T=[d];for(;T.length>0;)for(const p of w.get(T.shift())??[])k.has(p)||(k.add(p),T.push(p));return r.value.filter(p=>k.has(p.id))}),l=j(()=>n.nodeOwnership?.ownerType==="ORGANIZATION"&&n.workspaceCreatable===!0&&n.nodeManageable===!1),v=j(()=>l.value||n.nodeOwnership?.ownerType!=="ORGANIZATION"||n.role!=="MEMBER"&&s.value!==void 0);He(()=>n.nodeOwnership,d=>{s.value=d?.ownerType==="ORGANIZATION"?d.ownerOrganizationId:void 0},{immediate:!0}),He(()=>n.enterprise,async d=>{if(!(!d||n.role==="MEMBER"))try{r.value=(await n.request("/api/organizations")).organizations}catch{r.value=[]}},{immediate:!0});function u(){if(l.value){a("register");return}if(n.nodeOwnership?.ownerType==="ORGANIZATION"){if(s.value===void 0)return;a("register",{ownerType:"ORGANIZATION",ownerOrganizationId:s.value});return}a("register")}return(d,w)=>{const k=Un,T=wn;return f(),we(kc,ra(d.$attrs,{"model-value":e.modelValue,directory:e.directory,"selected-path":e.selectedPath,"pending-directory-name":e.pendingDirectoryName,"loading-directory":e.loadingDirectory,loading:e.loading,"node-ready":e.nodeReady,"selected-path-valid":e.selectedPathValid,"registration-disabled":!v.value,onRegister:u}),{ownership:Z(()=>[e.enterprise?(f(),O("div",fE,[K("span",null,W(o(c)("generated.workspaceRegistrationPicker.resourceOwner")),1),e.nodeOwnership?.ownerType!=="ORGANIZATION"?(f(),O("strong",pE,W(o(c)("generated.workspaceRegistrationPicker.personal")),1)):l.value?(f(),O("strong",gE,W(o(ls)(r.value,e.nodeOwnership.ownerOrganizationId)),1)):(f(),we(T,{key:2,modelValue:s.value,"onUpdate:modelValue":w[0]||(w[0]=p=>s.value=p),disabled:e.role==="MEMBER","clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down")},{default:Z(()=>[(f(!0),O(Ve,null,Je(i.value,p=>(f(),we(k,{key:p.id,value:p.id,label:o(ls)(r.value,p.id)},null,8,["value","label"]))),128))]),_:1},8,["modelValue","disabled","clear-icon","suffix-icon"])),e.nodeOwnership?.ownerType==="ORGANIZATION"&&e.role==="MEMBER"&&!l.value?(f(),O("small",mE,W(o(c)("generated.workspaceRegistrationPicker.mEMBERUsersCannotCreateOrganizationWorkspaces")),1)):ve("",!0)])):ve("",!0)]),_:1},16,["model-value","directory","selected-path","pending-directory-name","loading-directory","loading","node-ready","selected-path-valid","registration-disabled"])}}}),yE=dt(hE,[["__scopeId","data-v-1d694991"]]),wE=at({__name:"WorkbenchSurface",props:{page:{}},setup(e){const n=kr({loader:()=>br(()=>import("./SettingsContent-CxwrhDv3.js"),__vite__mapDeps([73,9,1,2,7,10,34,33,8,11,28,29,30,35,36,37,53,54,55,56,17,18,62,43,71,14,15,64,65,25,23,24,26,6,12,13,27,20,3,4,31,32,38,39,40,41,5,16,19,21,22,44,45,63,66,49,50,67,68,69,51,52,57,58,42,46,47,48,59,60,61,72,74])),loadingComponent:{render:()=>kl(bl,{loading:!0,variant:"page","aria-label":c("common.loading")})},delay:0});return(a,r)=>{const s=Ar;return f(),we(Rc,{page:e.page},{"workspace-registration":Z(()=>[B(yE,{modelValue:e.page.registration.openWorkspaceTools,"onUpdate:modelValue":r[0]||(r[0]=i=>e.page.registration.openWorkspaceTools=i),"preserve-git-config":e.page.registration.workspacePreserveGitConfig,"onUpdate:preserveGitConfig":r[1]||(r[1]=i=>e.page.registration.workspacePreserveGitConfig=i),"git-policy-supported":e.page.registration.workspaceGitPolicySupported,directory:e.page.registration.workspaceDirectory,"selected-path":e.page.resources.workspacePath,"pending-directory-name":e.page.registration.pendingWorkspaceDirectoryName,"loading-directory":e.page.registration.loadingWorkspaceDirectory,loading:e.page.identity.loading,"node-ready":e.page.registration.workspaceRegistrationReady,"selected-path-valid":e.page.registration.selectedWorkspaceDirectorySelectable,enterprise:e.page.identity.admin.edition==="ENTERPRISE",role:e.page.identity.admin.role,"node-ownership":e.page.registration.workspaceRegistrationNode?.ownership,"node-manageable":e.page.registration.workspaceRegistrationNode?.manageable,"workspace-creatable":e.page.registration.workspaceRegistrationNode?.workspaceCreatable,request:e.page.identity.request,onNavigate:e.page.registration.loadWorkspaceDirectories,onSelect:e.page.registration.selectWorkspaceDirectory,onSelectPending:e.page.registration.selectPendingWorkspaceDirectory,onDiscardPending:e.page.registration.discardPendingWorkspaceDirectory,onRegister:e.page.registration.registerWorkspace},null,8,["modelValue","preserve-git-config","git-policy-supported","directory","selected-path","pending-directory-name","loading-directory","loading","node-ready","selected-path-valid","enterprise","role","node-ownership","node-manageable","workspace-creatable","request","onNavigate","onSelect","onSelectPending","onDiscardPending","onRegister"])]),settings:Z(()=>[B(o(n),{"new-password":e.page.identity.newPassword,"onUpdate:newPassword":r[2]||(r[2]=i=>e.page.identity.newPassword=i),section:e.page.application.settingsSection,sessions:e.page.identity.adminSessions,"password-validation-error":e.page.identity.passwordValidationError,"registration-token":e.page.settings.registrationToken,"registration-loading":e.page.settings.registrationLoading,loading:e.page.identity.loading,"format-session-time":e.page.identity.formatSessionTime,request:e.page.identity.request,edition:e.page.identity.admin.edition??"COMMUNITY",role:e.page.identity.admin.role??null,"management-writable":e.page.identity.admin.managementWritable??!0,"quick-prompts":e.page.settings.quickPrompts,"quick-prompts-loading":e.page.settings.quickPromptsLoading,"quick-prompts-failed":e.page.settings.quickPromptsFailed,"refresh-quick-prompts":e.page.settings.refreshQuickPrompts,"system-notifications":e.page.notifications.systemNotifications,onClearPasswordError:r[3]||(r[3]=i=>e.page.identity.passwordValidationError=""),onRefreshSessions:e.page.identity.refreshAdminSessions,onLogoutSession:e.page.identity.logoutAdminSession,"change-password":e.page.identity.changePassword,onLogout:e.page.identity.logout,onCreateRegistrationToken:e.page.settings.createRegistrationToken},null,8,["new-password","section","sessions","password-validation-error","registration-token","registration-loading","loading","format-session-time","request","edition","role","management-writable","quick-prompts","quick-prompts-loading","quick-prompts-failed","refresh-quick-prompts","system-notifications","onRefreshSessions","onLogoutSession","change-password","onLogout","onCreateRegistrationToken"])]),"management-notice":Z(()=>[e.page.identity.admin.licenseState==="ENTERPRISE_FROZEN"?(f(),we(s,{key:0,class:"enterprise-frozen-banner",type:"warning",closable:!1,"show-icon":"",title:e.page.identity.admin.role==="ADMIN"?o(c)("generated.workbenchSurface.theEnterpriseLicenseIsFrozenConfiguredResources"):o(c)("generated.workbenchSurface.theEnterpriseLicenseIsFrozenConfiguredResources2")},{icon:Z(()=>[B(De,{name:"warning"})]),_:1},8,["title"])):ve("",!0)]),_:1},8,["page"])}}}),kE={class:"gate-panel","aria-labelledby":"login-title"},bE=["aria-label"],IE=["src"],SE={id:"login-title"},CE={class:"lede"},TE=at({__name:"LoginPage",props:{loading:{type:Boolean},logoUrl:{}},emits:["login"],setup(e,{emit:t}){const n=t,a=x(""),r=x(""),{t:s}=Dn();function i(){n("login",{username:a.value,password:r.value}),r.value=""}return(l,v)=>(f(),O("section",kE,[K("div",{class:"login-brand","aria-label":o(s)("common.productName")},[K("img",{src:e.logoUrl,alt:""},null,8,IE),K("strong",null,W(o(s)("common.productName")),1)],8,bE),K("h1",SE,W(o(s)("auth.title")),1),K("p",CE,W(o(s)("auth.summary")),1),K("form",{class:"auth-form",onSubmit:rt(i,["prevent"])},[K("label",null,[ke(W(o(s)("auth.username")),1),B(o(Ft),{modelValue:a.value,"onUpdate:modelValue":v[0]||(v[0]=u=>a.value=u),autocomplete:"username"},null,8,["modelValue"])]),K("label",null,[ke(W(o(s)("auth.password")),1),B(o(Ft),{modelValue:r.value,"onUpdate:modelValue":v[1]||(v[1]=u=>r.value=u),type:"password",autocomplete:"current-password"},null,8,["modelValue"])]),B(o(bt),{loading:e.loading,"native-type":"submit",type:"primary","loading-icon":o(qe)("loading-action")},{default:Z(()=>[ke(W(o(s)("auth.login")),1)]),_:1},8,["loading","loading-icon"])],32),Ct(l.$slots,"identity-extension",{},void 0,!0)]))}}),EE=dt(TE,[["__scopeId","data-v-7bb17748"]]),RE={class:"auth-unavailable","aria-labelledby":"auth-unavailable-title"},AE={class:"brand"},NE=["src"],DE={id:"auth-unavailable-title"},PE={class:"actions"},OE=at({__name:"AuthenticationUnavailable",props:{loading:{type:Boolean},logoUrl:{}},emits:["retry"],setup(e){const{t,locale:n}=Dn(),a=Il(),r=j(()=>Sl(Of(n.value)??Lf,"getting-started/overview"));return(s,i)=>(f(),O("section",RE,[K("div",AE,[K("img",{src:e.logoUrl,alt:""},null,8,NE),K("strong",null,W(o(t)("common.productName")),1)]),K("h1",DE,W(o(t)("auth.unavailableTitle")),1),K("p",null,W(o(t)("auth.unavailableSummary")),1),K("div",PE,[B(o(bt),{type:"primary",loading:e.loading,"loading-icon":o(qe)("loading-action"),onClick:i[0]||(i[0]=l=>s.$emit("retry"))},{default:Z(()=>[ke(W(o(t)("auth.retry")),1)]),_:1},8,["loading","loading-icon"]),o(a)?(f(),we(o(Sr),{key:0,href:r.value},{default:Z(()=>[ke(W(o(t)("auth.help")),1)]),_:1},8,["href"])):ve("",!0)])]))}}),LE=dt(OE,[["__scopeId","data-v-46fb6879"]]);function WE(e,t){let n=0;for(const a of t){const r=e.indexOf(a,n);if(r<0)return!1;n=r+1}return!0}function ME(e,t){return e===t?1e3:e.startsWith(t)?700:e.includes(t)?500:WE(e,t)?100:void 0}function Wa(e,t){const n=t.trim().toLocaleLowerCase().split(/\s+/u).filter(Boolean);if(n.length===0)return 0;const a=e.map(s=>s.toLocaleLowerCase());let r=0;for(const s of n){const i=a.reduce((l,v)=>{const u=ME(v,s);return u===void 0?l:Math.max(l??u,u)},void 0);if(i===void 0)return;r+=i}return r}function xE(e,t){return e.kind==="WORKSPACE"?Wa([e.workspaceLabel],t):e.kind==="SYMBOL"?Wa([e.symbol,e.path],t):e.kind==="SESSION"?Wa([e.title],t):e.score!==void 0?e.score:Wa([e.name,e.path],t)}function rl(e){return e.kind==="WORKSPACE"?0:e.kind==="SESSION"?1:e.kind==="FILE"?2:3}function Qn(e,t){return e.flatMap(n=>{const a=xE(n,t);return a===void 0?[]:[{candidate:n,score:a}]}).sort((n,a)=>{if(n.score!==a.score)return a.score-n.score;const r=rl(n.candidate)-rl(a.candidate);if(r!==0)return r;if(n.candidate.kind==="WORKSPACE"&&a.candidate.kind==="WORKSPACE"){const s=(n.candidate.openTabIndex??Number.MAX_SAFE_INTEGER)-(a.candidate.openTabIndex??Number.MAX_SAFE_INTEGER);if(s!==0)return s}return n.candidate.kind==="SYMBOL"&&a.candidate.kind==="SYMBOL"&&n.candidate.source!==a.candidate.source?n.candidate.source==="DEFINITION"?-1:1:n.candidate.stableIndex-a.candidate.stableIndex}).map(({candidate:n})=>n)}function $E(e,t,n){const a=e.findIndex(r=>r.nodeId===t&&r.workspaceId===n);return a<0?void 0:a}function FE(e){const t=x([]),n=x([]),a=x([]),r=x(null),s=()=>Fn({phase:"IDLE",error:void 0,truncated:!1}),i=s(),l=s(),v=s(),u=s();let d,w,k,T,p=!1;const g=new Map;function R(N,h="IDLE"){N.phase=h,N.error=void 0,N.truncated=!1}function b(N){return!p&&w===N&&!N.controller.signal.aborted&&e.open()&&N.query===e.query().trim()&&N.tab===e.tab()&&N.nodeId===e.nodeId()&&N.workspaceId===e.workspaceId()}function C(N,h){return b(N)?new Promise(F=>{const z=N.controller.signal,fe=ge=>{clearTimeout(re),z.removeEventListener("abort",J),F(ge&&b(N))},J=()=>fe(!1),re=setTimeout(()=>fe(!0),h);z.addEventListener("abort",J,{once:!0})}):Promise.resolve(!1)}function I(){d!==void 0&&clearTimeout(d),d=void 0,w!==void 0&&(clearTimeout(w.deadline),w.controller.abort(),w=void 0)}function S(){I(),k?.abort(),k=void 0,T!==void 0&&clearTimeout(T),T=void 0,[i,l,v,u].forEach(N=>R(N))}function m(N){if(b(N)){for(const h of[l,v,u])(h.phase==="SEARCHING"||h.phase==="BUILDING")&&(h.phase="TIMED_OUT");N.controller.abort()}}async function A(N,h){N.pending+=1;try{await h()}finally{N.pending-=1,N.pending===0&&clearTimeout(N.deadline)}}function L(){const N=w!==void 0&&w.query===e.query().trim()&&w.nodeId===e.nodeId()&&w.workspaceId===e.workspaceId()&&w.tab===e.tab();if(I(),N||(n.value=[],a.value=[]),r.value=null,[l,v,u].forEach(re=>R(re)),p||!e.open()||e.query().trim()==="")return;const h=e.tab(),F=e.nodeId()!==void 0&&e.workspaceId()!==void 0,z=(h==="ALL"||h==="FILE")&&e.filesReady()&&F,fe=/^-*[\p{L}_$][\p{L}\p{N}_$-]*$/u.test(e.query().trim()),J=(h==="ALL"||h==="SYMBOL")&&e.symbolsReady()&&F&&fe;z?l.phase="SEARCHING":h==="FILE"&&(l.phase="UNAVAILABLE"),J?v.phase="SEARCHING":h==="SYMBOL"&&(v.phase=fe?"UNAVAILABLE":"INVALID"),!(!z&&!J)&&(d=setTimeout(()=>{if(d=void 0,p||!e.open()||!F)return;const re={controller:new AbortController,nodeId:e.nodeId(),workspaceId:e.workspaceId(),query:e.query().trim(),tab:e.tab(),pending:0,deadline:setTimeout(()=>m(re),e.deadlineMs??3e4)};w=re,z&&A(re,()=>y(re)),J&&A(re,async()=>{re.tab==="ALL"&&!await C(re,180)||await _(re)})},120))}async function y(N){const h=sr(N.query,void 0,e.origin()),F=new URLSearchParams({nodeId:N.nodeId,q:h?.path??N.query});F.set("waitForIndex","false");try{for(let z=0;b(N);z+=1){const fe=await e.http.request(`/api/workspaces/${encodeURIComponent(N.workspaceId)}/files/search?${F}`,{signal:N.controller.signal});if(!b(N))return;if(!Array.isArray(fe.files?.entries))throw new jt("NODE_RESPONSE_INVALID","The Node returned an invalid file search result.");if(fe.files.indexState==="BUILDING"){if(l.phase="BUILDING",!await C(N,Math.min(250*2**z,2e3)))return;continue}n.value=fe.files.entries.flatMap((J,re)=>J.kind==="FILE"?[{kind:"FILE",key:`file\0${N.nodeId}\0${N.workspaceId}\0${J.path}`,nodeId:N.nodeId,workspaceId:N.workspaceId,path:J.path,name:J.name,...J.score===void 0?{}:{score:J.score},...h?.line===void 0?{}:{line:h.line},...h?.column===void 0?{}:{column:h.column},stableIndex:re}]:[]),r.value=fe.files.nextCursor??null,l.truncated=fe.files.truncated===!0||r.value!==null,l.phase="READY";return}}catch(z){b(N)&&(l.phase="FAILED",l.error=z)}}function D(N,h){return h.targets.map((F,z)=>({kind:"SYMBOL",source:"DEFINITION",key:`symbol\0definition\0${F.path}\0${F.line}\0${N.query}`,nodeId:N.nodeId,workspaceId:N.workspaceId,symbol:N.query,path:F.path,line:F.line,detail:[F.kind,F.scope].filter(Boolean).join(" · ")||F.preview,stableIndex:z}))}function E(N,h){const F=a.value.filter(z=>z.source==="DEFINITION");a.value=[...F,...h.references.map((z,fe)=>({kind:"SYMBOL",source:"REFERENCE",key:`symbol\0reference\0${z.path}\0${z.line}\0${z.column}\0${N.query}`,nodeId:N.nodeId,workspaceId:N.workspaceId,symbol:N.query,path:z.path,line:z.line,column:z.column,detail:z.preview,stableIndex:F.length+fe}))],u.truncated=h.referenceTruncated===!0}function H(N,h){return h.state==="UNAVAILABLE"?(N.phase="UNAVAILABLE",!0):h.state!=="FAILED"?!1:h.failureCode==="SYMBOL_INDEX_LIMIT_EXCEEDED"?(N.phase="LIMITED",!0):(N.phase="FAILED",N.error=qa({error:h.failureCode??"SYMBOL_INDEX_BUILD_FAILED"},503),!0)}async function X(N,h){const F=new URLSearchParams({nodeId:N.nodeId,path:".",symbol:N.query,references:h?"1":"0"}),z=await e.http.request(`/api/workspaces/${encodeURIComponent(N.workspaceId)}/symbols/definition?${F}`,{signal:N.controller.signal});if(!z.definition||!Array.isArray(z.definition.targets)||!Array.isArray(z.definition.references))throw new jt("NODE_RESPONSE_INVALID","The Node returned an invalid symbol result.");return z.definition}async function _(N){try{for(let h=0;b(N);h+=1){const F=await X(N,!1);if(!b(N)||H(v,F))return;if((F.targets.length>0||F.state==="READY")&&(a.value=D(N,F)),v.truncated=F.truncated===!0,F.state==="READY"){v.phase="READY",u.phase="SEARCHING",await U(N);return}if(v.phase="BUILDING",!await C(N,Math.min(250*2**h,2e3)))return}}catch(h){b(N)&&(v.phase="FAILED",v.error=h)}}async function U(N){try{for(let h=0;b(N);h+=1){const F=await X(N,!0);if(!b(N)||H(u,F))return;if((F.references.length>0||F.state==="READY")&&E(N,F),F.state==="READY"){u.phase="READY";return}if(u.phase="BUILDING",!await C(N,Math.min(250*2**h,2e3)))return}}catch(h){b(N)&&(u.phase="FAILED",u.error=h)}}function Q(N,h,F){const z=$E(e.workspaceTabs(),N.id,h.id);return{kind:"WORKSPACE",key:`workspace\0${N.id}\0${h.id}`,nodeId:N.id,nodeLabel:N.displayName?.trim()||N.registeredAddress||N.id,workspaceId:h.id,workspaceLabel:h.displayName?.trim()||h.path,path:h.path,...z===void 0?{}:{openTabIndex:z},stableIndex:F}}async function $(){if(k?.abort(),T!==void 0&&clearTimeout(T),p||!e.open())return;R(i);const N=e.nodes().filter(oe=>oe.connected&&!oe.disabled),h=new Map(N.map(oe=>[oe.id,oe])),F=new Map;e.workspaceTabs().forEach((oe,P)=>{const G=h.get(oe.nodeId);if(G!==void 0){const ue=Q(G,{id:oe.workspaceId,displayName:oe.label,path:oe.label},P);F.set(ue.key,ue)}});function z(oe,P,G){P.forEach((ue,ne)=>{const M=Q(oe,ue,e.workspaceTabs().length+G*1e5+ne),ee=F.get(M.key);F.set(M.key,ee?.openTabIndex===void 0?M:{...M,stableIndex:ee.stableIndex})}),t.value=[...F.values()]}const fe=[];if(N.forEach((oe,P)=>{const G=g.get(oe.id);G!==void 0&&Date.now()-G.at<3e4?z(oe,G.entries,P):fe.push({node:oe,index:P})}),t.value=[...F.values()],fe.length===0){i.phase="READY";return}const J=new AbortController;k=J;const re=()=>!p&&k===J&&!J.signal.aborted&&e.open();i.phase="SEARCHING",T=setTimeout(()=>{re()&&(i.phase="TIMED_OUT",J.abort())},e.deadlineMs??3e4);let ge=0;const ce=async()=>{for(;re();){const oe=fe[ge++];if(oe===void 0)return;try{const P=await e.http.request(`/api/workspaces?nodeId=${encodeURIComponent(oe.node.id)}`,{signal:J.signal});if(!re())return;if(!Array.isArray(P.workspaces))throw new jt("NODE_RESPONSE_INVALID","The Node returned an invalid Workspace list.");g.delete(oe.node.id),g.set(oe.node.id,{at:Date.now(),entries:P.workspaces}),g.size>32&&g.delete(g.keys().next().value),z(oe.node,P.workspaces,oe.index)}catch(P){re()&&(i.error=P)}}};await Promise.all(Array.from({length:Math.min(4,fe.length)},ce)),k===J&&(clearTimeout(T),T=void 0,re()&&(i.phase=i.error===void 0?"READY":"FAILED"))}function V(){p=!0,S(),g.clear()}return{workspaces:t,files:n,symbols:a,fileCursor:r,workspaceStatus:i,fileStatus:l,symbolStatus:v,referenceStatus:u,scheduleSearch:L,loadWorkspaces:$,cancel:S,dispose:V}}const UE=["aria-label"],VE=["aria-selected","onClick"],qE=["aria-label","placeholder"],HE=["aria-selected"],BE=["onClick"],GE={class:"entry-main"},zE={class:"entry-name"},KE={key:0},jE={key:0},_E={key:0},YE={key:1},QE={key:2},JE={key:1,class:"empty",role:"status"},XE={key:2,class:"empty"},ZE={class:"quick-open-statuses",role:"status","aria-live":"polite"},eR=["data-source"],tR={key:0},nR={class:"mar-disclosure-summary"},aR=at({__name:"QuickOpenDialog",props:{open:{type:Boolean},nodeId:{},workspaceId:{},filesReady:{type:Boolean},symbolsReady:{type:Boolean},nodes:{},sessions:{},sessionTitle:{type:Function},openSession:{type:Function},openWorkspace:{type:Function},workspaceTabs:{}},emits:["close","openFile"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=x(),i=x("ALL"),l=x(""),v=x(),u=x(!1),d=Za(),w=FE({open:()=>n.open,query:()=>l.value,tab:()=>i.value,nodeId:()=>n.nodeId,workspaceId:()=>n.workspaceId,filesReady:()=>n.filesReady,symbolsReady:()=>n.symbolsReady,nodes:()=>n.nodes,workspaceTabs:()=>n.workspaceTabs,origin:()=>typeof window>"u"?"http://localhost":window.location.origin,http:d}),{workspaces:k,files:T,symbols:p,workspaceStatus:g,fileStatus:R,symbolStatus:b,referenceStatus:C}=w,I=w.scheduleSearch,S=w.loadWorkspaces,m=re=>re.phase==="SEARCHING"||re.phase==="BUILDING",A=j(()=>m(g)),L=j(()=>m(R)),y=j(()=>m(b)),D=j(()=>sr(l.value.trim(),void 0,typeof window>"u"?"http://localhost":window.location.origin)?.path??l.value),E=j(()=>n.sessions.map((re,ge)=>({kind:"SESSION",key:`session\0${re.id}`,sessionId:re.id,title:n.sessionTitle(re),runner:re.runner,stableIndex:ge}))),H=j(()=>{const re=Qn(k.value,D.value),ge=Qn(T.value,D.value),ce=Qn(p.value,D.value),oe=Qn(E.value,D.value);return i.value==="WORKSPACE"?re:i.value==="SESSION"?oe:i.value==="SYMBOL"?ce:i.value==="FILE"?ge:Qn([...re,...oe,...ce,...ge],D.value)}),X=j(()=>{const re=H.value.findIndex(ge=>ge.key===v.value);return re<0?0:re}),_=j(()=>(i.value==="ALL"||i.value==="WORKSPACE")&&A.value||(i.value==="ALL"||i.value==="FILE")&&L.value||(i.value==="ALL"||i.value==="SYMBOL")&&y.value),U=j(()=>{const re=[];return(i.value==="ALL"||i.value==="WORKSPACE")&&re.push({kind:"WORKSPACE",label:"generated.quickOpenDialog.workspace",status:g}),(i.value==="ALL"||i.value==="FILE")&&re.push({kind:"FILE",label:"generated.quickOpenDialog.file",status:R}),(i.value==="ALL"||i.value==="SYMBOL")&&re.push({kind:"SYMBOL",label:"generated.quickOpenDialog.definition",status:b},{kind:"REFERENCE",label:"generated.quickOpenDialog.reference",status:C}),re.filter(({status:ge})=>ge.phase!=="IDLE"&&(ge.phase!=="READY"||ge.truncated))});function Q(re){return re.phase==="READY"&&re.truncated?c("generated.quickOpenDialog.incomplete"):c({IDLE:"generated.quickOpenDialog.searching",READY:"generated.quickOpenDialog.searching",SEARCHING:"generated.quickOpenDialog.searching",BUILDING:"generated.quickOpenDialog.preparing",FAILED:"generated.quickOpenDialog.failed",UNAVAILABLE:"generated.quickOpenDialog.unavailable",LIMITED:"fileEditor.navigationLimited",TIMED_OUT:"generated.quickOpenDialog.timedOut",INVALID:"generated.quickOpenDialog.completeSymbolRequired"}[re.phase])}function $(re){re==="WORKSPACE"?S():I()}He(H,re=>{re.length===0?v.value=void 0:re.some(ge=>ge.key===v.value)||(v.value=re[0]?.key)}),He(()=>n.open,re=>{if(!re){V();return}i.value="ALL",l.value="",u.value=!1,T.value=[],p.value=[],v.value=void 0,S(),ut(()=>r.value?.focus())}),He(l,I),He(i,()=>{v.value=H.value[0]?.key,I()}),He([()=>n.nodeId,()=>n.workspaceId,()=>n.filesReady,()=>n.symbolsReady],I);function V(){w.cancel()}function N(){document.visibilityState==="hidden"?V():n.open&&(S(),I())}let h=[];Dt(()=>{const re=()=>r.value?.closest('[role="dialog"]')??void 0;h=[xt.register({command:"quickOpen.choose",scope:"overlay",priority:130,owner:()=>r.value,keys:Zi.choose,when:()=>n.open&&!u.value&&H.value[X.value]!==void 0,execute:ge=>(F(void 0,ge.ctrlKey||ge.metaKey),"HANDLED")}),xt.register({command:"quickOpen.dismiss",scope:"overlay",priority:130,owner:re,keys:Zi.dismiss,when:()=>n.open,execute:()=>(a("close"),"HANDLED")})],typeof document<"u"&&typeof document.addEventListener=="function"&&document.addEventListener("visibilitychange",N)}),mt(()=>{h.forEach(re=>re()),w.dispose(),typeof document<"u"&&typeof document.removeEventListener=="function"&&document.removeEventListener("visibilitychange",N)});function F(re=H.value[X.value],ge=!1){if(!(re===void 0||u.value)&&!((re.kind==="FILE"||re.kind==="SYMBOL")&&(re.nodeId!==n.nodeId||re.workspaceId!==n.workspaceId))){if(u.value=!0,a("close",!0),re.kind==="FILE"||re.kind==="SYMBOL"){a("openFile",re.path,re.line,re.column,ge);return}if(re.kind==="SESSION"){n.openSession(re.sessionId);return}n.openWorkspace(re.nodeId,re.workspaceId)}}function z(re){const ce=(sr(l.value.trim(),void 0,typeof window>"u"?"http://localhost":window.location.origin)?.path??l.value.trim()).toLocaleLowerCase().split(/\s+/u).filter(Boolean),oe=re.toLocaleLowerCase(),P=new Set;for(const ue of ce){let ne=0;const M=[];for(const ee of ue){const le=oe.indexOf(ee,ne);if(le<0){M.length=0;break}M.push(le),ne=le+1}for(const ee of M)P.add(ee)}const G=[];for(let ue=0;ue<re.length;ue+=1){const ne={text:re[ue]??"",matched:P.has(ue)},M=G.at(-1);M?.matched===ne.matched?M.text+=ne.text:G.push(ne)}return G}function fe(re){v.value=re,ut(()=>{s.value?.querySelector('li[aria-selected="true"]')?.scrollIntoView({block:"nearest"})})}function J(re){re.isComposing||re.keyCode===229||(re.key==="ArrowDown"&&H.value.length>0?(re.preventDefault(),fe(H.value[(X.value+1)%H.value.length]?.key)):re.key==="ArrowUp"&&H.value.length>0&&(re.preventDefault(),fe(H.value[(X.value-1+H.value.length)%H.value.length]?.key)))}return(re,ge)=>{const ce=bt,oe=Xt;return e.open?(f(),we(oe,{key:0,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),"model-value":e.open,title:o(c)("generated.quickOpenDialog.quickOpen"),class:Ke(["quick-open-dialog",{"has-status-notices":U.value.length>0}]),width:"min(680px, calc(100vw - 32px))","show-close":!1,onClose:ge[1]||(ge[1]=P=>a("close")),onOpened:ge[2]||(ge[2]=P=>r.value?.focus()),"close-icon":o(qe)("close")},{default:Z(()=>[K("div",{class:"quick-open-tabs",role:"tablist","aria-label":o(c)("generated.quickOpenDialog.resultTypes")},[(f(),O(Ve,null,Je(["ALL","WORKSPACE","SESSION","FILE","SYMBOL"],P=>K("button",{key:P,type:"button",role:"tab","aria-selected":i.value===P,onClick:G=>i.value=P},W(o(c)(`generated.quickOpenDialog.${P.toLocaleLowerCase()}`)),9,VE)),64))],8,UE),Le(K("input",{ref_key:"input",ref:r,"onUpdate:modelValue":ge[0]||(ge[0]=P=>l.value=P),class:"quick-open-input","aria-label":o(c)("generated.quickOpenDialog.quickOpen"),autocomplete:"off",placeholder:o(c)("generated.quickOpenDialog.enterANameOrPath"),onKeydown:J},null,40,qE),[[Wf,l.value]]),H.value.length>0?(f(),O("ul",{key:0,ref_key:"results",ref:s,class:"quick-open-results",role:"listbox"},[(f(!0),O(Ve,null,Je(H.value,(P,G)=>(f(),O("li",{key:P.key,role:"option","aria-selected":G===X.value},[K("button",{type:"button",onClick:ue=>F(P,ue.ctrlKey||ue.metaKey)},[B(yn,{name:P.kind==="WORKSPACE"?P.workspaceLabel:P.kind==="FILE"?P.name:P.kind==="SESSION"?P.title:P.path},null,8,["name"]),K("span",GE,[K("span",zE,[(f(!0),O(Ve,null,Je(z(P.kind==="FILE"?P.name:P.kind==="SYMBOL"?P.symbol:P.kind==="SESSION"?P.title:P.workspaceLabel),(ue,ne)=>(f(),O("span",{key:ne,class:Ke({"quick-open-match":ue.matched})},W(ue.text),3))),128))]),P.kind!=="SESSION"?(f(),O("code",KE,[(f(!0),O(Ve,null,Je(z(P.path),(ue,ne)=>(f(),O("span",{key:ne,class:Ke({"quick-open-match":ue.matched})},W(ue.text),3))),128)),P.kind==="SYMBOL"?(f(),O("span",jE,":"+W(P.line)+W(P.column===void 0?"":`:${P.column}`),1)):ve("",!0)])):ve("",!0)]),K("span",{class:Ke(["entry-kind",{"entry-kind-workspace":P.kind==="WORKSPACE","entry-kind-session":P.kind==="SESSION","entry-kind-file":P.kind==="FILE","entry-kind-definition":P.kind==="SYMBOL"&&P.source==="DEFINITION","entry-kind-reference":P.kind==="SYMBOL"&&P.source==="REFERENCE"}])},W(o(c)(P.kind==="SYMBOL"?P.source==="DEFINITION"?"generated.quickOpenDialog.definition":"generated.quickOpenDialog.reference":P.kind==="FILE"?"generated.quickOpenDialog.file":P.kind==="SESSION"?"generated.quickOpenDialog.session":"generated.quickOpenDialog.workspace")),3),P.kind==="WORKSPACE"?(f(),O("small",_E,W(P.nodeLabel),1)):P.kind==="SESSION"?(f(),O("small",YE,W(P.runner),1)):P.kind==="SYMBOL"&&P.detail?(f(),O("small",QE,W(P.detail),1)):ve("",!0)],8,BE)],8,HE))),128))],512)):_.value?(f(),O("p",JE,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.quickOpenDialog.searching")),1)])):U.value.length===0?(f(),O("p",XE,W(o(c)("generated.quickOpenDialog.noMatches")),1)):ve("",!0),K("div",ZE,[(f(!0),O(Ve,null,Je(U.value,P=>(f(),O("div",{key:P.kind,class:"quick-open-status","data-source":P.kind},[K("span",null,W(o(c)(P.label))+": "+W(Q(P.status)),1),P.status.error!==void 0?(f(),O("details",tR,[K("summary",nR,[B(De,{class:"mar-disclosure-icon",name:"chevron-right"}),ke(W(o(c)("generated.quickOpenDialog.details")),1)]),K("pre",null,W(o(it)(P.status.error)),1)])):ve("",!0),P.status.phase==="FAILED"||P.status.phase==="TIMED_OUT"?(f(),we(ce,{key:1,link:"",onClick:G=>$(P.kind)},{default:Z(()=>[ke(W(o(c)("generated.quickOpenDialog.retry")),1)]),_:1},8,["onClick"])):ve("",!0)],8,eR))),128))])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","model-value","title","class","close-icon"])):ve("",!0)}}}),oR=dt(aR,[["__scopeId","data-v-627aea6d"]]),rR=["aria-label"],iR={key:0,class:"recent-sessions-empty"},sR={key:1,class:"recent-sessions-list"},lR=["onClick"],cR={class:"recent-session-heading"},dR={class:"recent-session-title"},uR={key:0,class:"recent-session-unread mar-unread-label"},vR=["datetime"],fR=at({__name:"WorkbenchRecentSessionList",props:{sessionGroup:{},runs:{},hasUnreadSession:{type:Function},mobileMode:{type:Boolean},runTime:{type:Function}},emits:["openRecentRun","selectGroup"],setup(e,{emit:t}){const n=t,a={STARTING:"workbenchNotificationCenter.runStatus.STARTING",RUNNING:"workbenchNotificationCenter.runStatus.RUNNING",CANCELLING:"workbenchNotificationCenter.runStatus.CANCELLING",SUCCEEDED:"workbenchNotificationCenter.runStatus.SUCCEEDED",FAILED:"workbenchNotificationCenter.runStatus.FAILED",CANCELLED:"workbenchNotificationCenter.runStatus.CANCELLED",INTERRUPTED:"workbenchNotificationCenter.runStatus.INTERRUPTED"};function r(i){return i.status==="INTERRUPTED"&&i.interruptionReason==="USER_STOP"?"CANCELLED":i.status}function s(i){const l=r(i);return l==="SUCCEEDED"?"info":l==="FAILED"?"danger":l==="STARTING"||l==="RUNNING"?"success":l==="CANCELLING"||l==="INTERRUPTED"?"warning":"info"}return(i,l)=>{const v=da,u=St("tooltip");return f(),O("section",{class:Ke(["recent-sessions-panel",{"drawer-mode":e.mobileMode}]),"aria-label":o(c)("workbenchNotificationCenter.recentSessions")},[B(yc,{class:"recent-session-groups","model-value":e.sessionGroup,"onUpdate:modelValue":l[0]||(l[0]=d=>n("selectGroup",d))},null,8,["model-value"]),e.runs.length===0?(f(),O("p",iR,W(o(c)("workbenchNotificationCenter.noRecentSessions")),1)):(f(),O("ul",sR,[(f(!0),O(Ve,null,Je(e.runs,d=>(f(),O("li",{key:`${d.nodeId}:${d.runId}`},[Le((f(),O("button",{type:"button",onClick:w=>n("openRecentRun",d)},[K("span",cR,[K("span",dR,W(o(c)("workbenchNotificationCenter.recentRunTitle",{value0:d.workspaceName??d.workspaceId,value1:d.sessionTitle})),1),e.hasUnreadSession(d.nodeId,d.workspaceId,d.sessionId)?(f(),O("span",uR,W(o(c)("sessionGroups.unread")),1)):ve("",!0)]),B(v,{size:"small",type:s(d)},{default:Z(()=>[ke(W(o(c)(a[r(d)])),1)]),_:2},1032,["type"]),Le((f(),O("small",null,[ke(W(d.userMessage),1)])),[[u,d.userMessage]]),K("time",{datetime:new Date(o(_a)(d)).toISOString()},W(e.runTime(d)),9,vR)],8,lR)),[[u,o(c)("workbenchNotificationCenter.recentRunTitle",{value0:d.workspaceName??d.workspaceId,value1:d.sessionTitle})]])]))),128))]))],10,rR)}}}),pR=dt(fR,[["__scopeId","data-v-de885255"]]),gR=["aria-label"],mR={key:0,class:"workbench-notification-toolbar"},hR={class:"workbench-notification-section"},yR=["aria-label"],wR={class:"workbench-upload-size"},kR=["value","max"],bR={class:"workbench-notification-upload-actions"},IR=["aria-label","onClick"],SR={key:1,class:"workbench-notification-empty"},CR={key:2,class:"workbench-notification-list"},TR=["onClick"],ER={class:"workbench-notification-title"},RR={key:0,class:"notification-unread-label mar-unread-label"},AR=["datetime"],NR=["aria-label","onClick"],DR=at({__name:"WorkbenchNotificationList",props:{service:{},uploads:{},statusLabel:{type:Function},previewId:{}},emits:["openNotification","retryUpload","cancelUpload","removeUpload"],setup(e,{emit:t}){const n=e,a=t,r=j(()=>n.uploads.filter(i=>["QUEUED","UPLOADING","FAILED","INTERRUPTED"].includes(i.status)&&(n.previewId===void 0||`upload:${i.id}`===n.previewId))),s=j(()=>{const i=new Set(r.value.map(l=>`upload:${l.id}`));return n.service.notifications.value.filter(l=>!i.has(l.id)&&(n.previewId===void 0||l.id===n.previewId))});return(i,l)=>{const v=bt,u=St("tooltip");return f(),O("section",{class:"workbench-notification-content","aria-label":o(c)("generated.workbenchNotificationCenter.notifications")},[e.previewId===void 0?(f(),O("header",mR,[K("span",null,W(o(c)("activityCenter.unreadCount",{count:e.service.unreadCount.value})),1),e.service.unreadCount.value>0?(f(),we(v,{key:0,class:"workbench-notification-mark-all utility-control",link:"",onClick:l[0]||(l[0]=d=>e.service.markAllRead())},{default:Z(()=>[ke(W(o(c)("generated.workbenchNotificationCenter.markAllRead")),1)]),_:1})):ve("",!0)])):ve("",!0),K("div",hR,[r.value.length?(f(),O("section",{key:0,class:"workbench-notification-upload-list","aria-label":o(c)("generated.workbenchNotificationCenter.fileTransfers")},[(f(!0),O(Ve,null,Je(r.value,d=>(f(),O("div",{key:d.id,class:"workbench-notification-upload"},[B(De,{name:"upload"}),K("div",null,[Le((f(),O("strong",null,[ke(W(d.name),1)])),[[u,d.name]]),K("small",null,[K("span",wR,W(o(ja)(d.receivedBytes))+" / "+W(o(ja)(d.size)),1),ke(" · "+W(e.statusLabel(d))+" ",1),d.error?(f(),O(Ve,{key:0},[ke(" · "+W(d.error),1)],64)):ve("",!0),d.cleanupUnconfirmed?(f(),O(Ve,{key:1},[ke(" · "+W(o(c)("errors.UPLOAD_CLEANUP_UNCONFIRMED")),1)],64)):ve("",!0)]),K("progress",{value:d.receivedBytes,max:Math.max(d.size,1)},null,8,kR)]),K("div",bR,[d.status==="FAILED"||d.status==="INTERRUPTED"?(f(),we(v,{key:0,class:"utility-control",link:"",onClick:w=>a("retryUpload",d)},{default:Z(()=>[ke(W(d.file===void 0?o(c)("generated.workbenchNotificationCenter.resume"):o(c)("generated.workbenchNotificationCenter.retry")),1)]),_:2},1032,["onClick"])):ve("",!0),d.status==="FAILED"||d.status==="INTERRUPTED"?(f(),O("button",{key:1,type:"button",class:"icon-button utility-control workbench-notification-delete","aria-label":o(c)("generated.workbenchNotificationCenter.delete",{value0:d.name}),onClick:w=>a("removeUpload",d)},[B(De,{name:"delete"})],8,IR)):(f(),we(v,{key:2,class:"utility-control",link:"",onClick:w=>a("cancelUpload",d)},{default:Z(()=>[ke(W(o(c)("generated.workbenchNotificationCenter.cancel")),1)]),_:1},8,["onClick"]))])]))),128))],8,yR)):ve("",!0),s.value.length===0&&r.value.length===0?(f(),O("p",SR,W(o(c)("generated.workbenchNotificationCenter.noNotifications")),1)):(f(),O("ul",CR,[(f(!0),O(Ve,null,Je(s.value,d=>(f(),O("li",{key:d.id,class:Ke({unread:!d.read})},[K("button",{type:"button",onClick:w=>a("openNotification",d)},[K("span",ER,[K("strong",null,W(d.title),1),d.read?ve("",!0):(f(),O("span",RR,W(o(c)("generated.workbenchNotificationCenter.unread")),1))]),K("small",null,W(d.message),1),K("time",{datetime:new Date(d.updatedAt).toISOString()},W(o(Gt)(d.updatedAt)),9,AR)],8,TR),K("button",{class:"icon-button utility-control workbench-notification-delete","aria-label":o(c)("generated.workbenchNotificationCenter.deleteNotification",{value0:d.title}),type:"button",onClick:w=>e.service.remove(d.id)},[B(De,{name:"delete"})],8,NR)],2))),128))]))])],8,gR)}}}),Ac=dt(DR,[["__scopeId","data-v-bfe2757c"]]),PR=["aria-label"],OR={key:0,class:"activity-unread-count mar-activity-count-badge","aria-hidden":"true"},LR=["id","aria-labelledby","aria-label"],WR={class:"activity-running-count"},MR=["id","aria-labelledby"],xR=at({__name:"WorkbenchActivityPanel",props:{service:{},uploads:{},statusLabel:{type:Function},page:{},sessionGroup:{},mobileMode:{type:Boolean}},emits:["update:page","update:sessionGroup","openRecentRun","openNotification","retryUpload","cancelUpload","removeUpload"],setup(e,{emit:t}){const n=e,a=t,r=`activity-${wl()}`,s=j(()=>[{id:"recent-sessions",label:c("workbenchNotificationCenter.recentSessions")},{id:"notifications",label:c("generated.workbenchNotificationCenter.notifications"),description:c("activityCenter.unreadCount",{count:n.service.unreadCount.value})}]),i=j(()=>n.service.recentRuns.value.filter(k=>(k.sessionGroup??"MAIN")===n.sessionGroup)),l=j(()=>n.service.recentRuns.value.filter(k=>Nn(k.status)).length),v=x(Date.now()),u=setInterval(()=>{v.value=Date.now()},1e3);mt(()=>clearInterval(u));function d(k){return Nn(k.status)?c("workbenchNotificationCenter.runningElapsed",{duration:pm(v.value-k.startedAt),startedAt:Gt(k.startedAt)}):Gt(_a(k))}function w(k){(k==="recent-sessions"||k==="notifications")&&a("update:page",k)}return(k,T)=>(f(),O("section",{class:Ke(["workbench-activity-panel",{"mobile-mode":e.mobileMode}]),"aria-label":o(c)("activityCenter.title")},[B(Bl,{class:"activity-tabs",size:"small","activation-mode":"automatic",items:s.value,"active-id":e.page,"id-prefix":r,label:o(c)("activityCenter.title"),onActivate:w},{label:Z(({item:p})=>[K("span",null,W(p.label),1),p.id==="notifications"&&e.service.unreadCount.value>0?(f(),O("span",OR,W(e.service.unreadCount.value>99?"99+":e.service.unreadCount.value),1)):ve("",!0)]),_:1},8,["items","active-id","label"]),Le(K("div",{class:"activity-tabpanel activity-recent-content",role:"tabpanel",id:o(fn)(r,"recent-sessions").panel,"aria-labelledby":o(fn)(r,"recent-sessions").tab,"aria-label":o(c)("workbenchNotificationCenter.recentSessions")},[e.page==="recent-sessions"?(f(),O(Ve,{key:0},[K("p",WR,W(o(c)("activityCenter.runningCount",{count:l.value})),1),B(pR,{runs:i.value,"has-unread-session":e.service.hasUnreadSession,"session-group":e.sessionGroup,"mobile-mode":e.mobileMode,"run-time":d,onSelectGroup:T[0]||(T[0]=p=>a("update:sessionGroup",p)),onOpenRecentRun:T[1]||(T[1]=p=>a("openRecentRun",p))},null,8,["runs","has-unread-session","session-group","mobile-mode"])],64)):ve("",!0)],8,LR),[[At,e.page==="recent-sessions"]]),Le(K("div",{class:"activity-tabpanel activity-notification-content",role:"tabpanel",id:o(fn)(r,"notifications").panel,"aria-labelledby":o(fn)(r,"notifications").tab},[e.page==="notifications"?(f(),we(Ac,{key:0,service:e.service,uploads:e.uploads,"status-label":e.statusLabel,onOpenNotification:T[2]||(T[2]=p=>a("openNotification",p)),onRetryUpload:T[3]||(T[3]=p=>a("retryUpload",p)),onCancelUpload:T[4]||(T[4]=p=>a("cancelUpload",p)),onRemoveUpload:T[5]||(T[5]=p=>a("removeUpload",p))},null,8,["service","uploads","status-label"])):ve("",!0)],8,MR),[[At,e.page==="notifications"]])],10,PR))}}),il=dt(xR,[["__scopeId","data-v-d7d33967"]]),$R=["aria-label","aria-description","aria-keyshortcuts","aria-expanded"],FR={key:0,class:"activity-entry-count mar-activity-count-badge","aria-hidden":"true"},UR={key:1,class:"activity-entry-running mar-icon-status-badge","aria-hidden":"true"},VR=at({__name:"WorkbenchActivityCenter",props:{service:{},uploads:{},statusLabel:{},mobileMode:{type:Boolean},mobileOpen:{type:Boolean},mobilePresented:{type:Boolean,default:void 0},mobilePanelTarget:{},previewSuppressed:{type:Boolean}},emits:["update:mobileOpen","openRecentRun","openNotification","retryUpload","cancelUpload","removeUpload"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=x(!1),i=x("recent-sessions"),l=x("MAIN"),v=x(),u=x(!1);let d;const w=j({get:()=>n.mobileMode?n.mobileOpen===!0:s.value,set:m=>{n.mobileMode?a("update:mobileOpen",m):s.value=m}}),k=j({get:()=>u.value||!n.mobileMode&&w.value,set:m=>{m||(g(),n.mobileMode||(w.value=!1))}}),T=j(()=>n.service.recentRuns.value.filter(m=>Nn(m.status)).length),p=j(()=>[c("activityCenter.runningCount",{count:T.value}),c("activityCenter.unreadCount",{count:n.service.unreadCount.value})].join(", "));function g(){d!==void 0&&clearTimeout(d),d=void 0,u.value=!1}He(w,m=>{g(),m&&(v.value=void 0,i.value=n.service.unreadCount.value>0?"notifications":"recent-sessions",n.service.load().catch(()=>{}))},{immediate:!0}),He(()=>n.service.notificationRevision.value,()=>{if(w.value||n.previewSuppressed)return;const m=n.service.previewNotificationId.value;m!==void 0&&(g(),v.value=m,u.value=!0,d=setTimeout(g,8e3))}),He(()=>n.previewSuppressed,m=>{m&&g()}),He(()=>n.service.notifications.value,m=>{v.value!==void 0&&!m.some(A=>A.id===v.value)&&g()}),He(()=>n.mobileMode,()=>{s.value=!1,g()});function R(){g(),w.value=!w.value}function b(m){g(),w.value=!1,a("openNotification",m)}function C(m){w.value=!1,a("openRecentRun",m)}let I,S;return Dt(()=>{I=xt.register({command:"activityCenter.toggle",priority:30,scope:"global",keys:es,when:()=>!0,execute:m=>(m.repeat||(!n.mobileMode&&!s.value&&r.value?.querySelector("button")?.focus(),R()),"HANDLED")}),S=xt.register({command:"activityCenter.dismiss",priority:110,scope:"overlay",keys:[{key:"Escape"}],when:()=>k.value,execute:()=>(k.value=!1,"HANDLED")})}),mt(()=>{g(),I?.(),S?.()}),(m,A)=>(f(),O("div",{class:Ke(["workbench-activity-center",{"mobile-mode":e.mobileMode}])},[K("span",{ref_key:"trigger",ref:r,class:"activity-reference"},[K("button",{class:Ke(["activity-center-trigger",{active:w.value}]),type:"button","aria-label":o(c)("activityCenter.title"),"aria-description":p.value,"aria-keyshortcuts":o(es).map(L=>o(zp)(L,!0)).join(" "),"aria-expanded":w.value,onClick:rt(R,["stop"])},[B(De,{name:"recent-sessions","aria-hidden":"true"}),e.service.unreadCount.value>0?(f(),O("span",FR,W(e.service.unreadCount.value>99?"99+":e.service.unreadCount.value),1)):ve("",!0),T.value>0?(f(),O("span",UR)):ve("",!0)],10,$R)],512),r.value?(f(),we(o(Nr),{key:0,visible:k.value,"onUpdate:visible":A[8]||(A[8]=L=>k.value=L),"virtual-triggering":"","virtual-ref":r.value,trigger:"click","trigger-keys":[],"hide-after":0,placement:e.mobileMode?"bottom-start":"right-start",width:"min(390px, calc(100vw - 16px))","show-arrow":!e.mobileMode&&v.value!==void 0,"popper-options":{modifiers:[{name:"preventOverflow",options:{padding:8}}]},persistent:!1,"popper-class":v.value!==void 0?"workbench-activity-popover is-preview":"workbench-activity-popover"},{default:Z(()=>[v.value!==void 0?(f(),we(Ac,{key:0,class:"activity-preview",service:e.service,uploads:e.uploads,"status-label":e.statusLabel,"preview-id":v.value,onOpenNotification:b,onRetryUpload:A[0]||(A[0]=L=>a("retryUpload",L)),onCancelUpload:A[1]||(A[1]=L=>a("cancelUpload",L)),onRemoveUpload:A[2]||(A[2]=L=>a("removeUpload",L))},null,8,["service","uploads","status-label","preview-id"])):e.mobileMode?ve("",!0):(f(),we(il,{key:1,page:i.value,"onUpdate:page":A[3]||(A[3]=L=>i.value=L),"session-group":l.value,"onUpdate:sessionGroup":A[4]||(A[4]=L=>l.value=L),service:e.service,uploads:e.uploads,"status-label":e.statusLabel,"mobile-mode":!1,onOpenRecentRun:C,onOpenNotification:b,onRetryUpload:A[5]||(A[5]=L=>a("retryUpload",L)),onCancelUpload:A[6]||(A[6]=L=>a("cancelUpload",L)),onRemoveUpload:A[7]||(A[7]=L=>a("removeUpload",L))},null,8,["page","session-group","service","uploads","status-label"]))]),_:1},8,["visible","virtual-ref","placement","show-arrow","popper-class"])):ve("",!0),e.mobileMode&&(e.mobilePresented??w.value)&&e.mobilePanelTarget?(f(),we(la,{key:1,to:e.mobilePanelTarget},[B(il,{page:i.value,"onUpdate:page":A[9]||(A[9]=L=>i.value=L),"session-group":l.value,"onUpdate:sessionGroup":A[10]||(A[10]=L=>l.value=L),service:e.service,uploads:e.uploads,"status-label":e.statusLabel,"mobile-mode":!0,onOpenRecentRun:C,onOpenNotification:b,onRetryUpload:A[11]||(A[11]=L=>a("retryUpload",L)),onCancelUpload:A[12]||(A[12]=L=>a("cancelUpload",L)),onRemoveUpload:A[13]||(A[13]=L=>a("removeUpload",L))},null,8,["page","session-group","service","uploads","status-label"])],8,["to"])):ve("",!0)],2))}}),qR=dt(VR,[["__scopeId","data-v-ff98e261"]]),HR=["aria-label"],BR=["aria-label"],GR={class:"panel-heading-actions"},zR={class:"category-values"},KR={key:1},jR=at({__name:"WebPerformanceIndicator",props:{diagnostics:{}},setup(e){const t=e,{t:n,locale:a}=Dn(),r=t.diagnostics.snapshot,s=["run","conversation","watch","notification","queue","workspace","session","node","control","other"],i=j(()=>s.map(p=>({category:p,count:r.value.categories[p]??0})).filter(p=>p.count>0)),l=j(()=>n(`performanceDiagnostics.health.${r.value.health}`)),v=j(()=>n(`performanceDiagnostics.connection.${r.value.connectionState}`));function u(p){return new Intl.NumberFormat(a.value,{maximumFractionDigits:1}).format(p)}function d(){const p=r.value.heap;return p===void 0?n("common.unavailable"):n("performanceDiagnostics.heapValue",{used:u(p.usedBytes/1048576),limit:u(p.limitBytes/1048576),percentage:u(p.limitBytes<=0?0:p.usedBytes/p.limitBytes*100)})}function w(){const p=r.value.pingLatencyMs;return p===void 0?n("common.unavailable"):n("performanceDiagnostics.pingLatencyValue",{duration:u(p)})}function k(){return r.value.lastMessageAt===void 0?n("common.unavailable"):Gt(r.value.lastMessageAt)}async function T(){try{await navigator.clipboard.writeText(JSON.stringify(t.diagnostics.detail(),null,2)),et(n("performanceDiagnostics.copySucceeded"),"info")}catch{et(n("performanceDiagnostics.copyFailed"),"error")}}return Dt(t.diagnostics.start),mt(t.diagnostics.dispose),(p,g)=>{const R=bt,b=Nr,C=St("tooltip");return f(),we(b,{placement:"right-end",trigger:["hover","focus"],width:320,"show-after":180,"hide-after":80},{reference:Z(()=>[K("button",{class:"web-performance-indicator icon-button utility-control",type:"button","aria-label":o(n)("performanceDiagnostics.title")},[B(De,{"aria-hidden":"true",name:"info"})],8,HR)]),default:Z(()=>[K("section",{class:"web-performance-panel","aria-label":o(n)("performanceDiagnostics.title")},[K("header",null,[K("strong",null,W(o(n)("performanceDiagnostics.title")),1),K("div",GR,[K("span",{class:Ke(`is-${o(r).health}`)},W(l.value),3),Le((f(),we(R,{link:"","aria-label":o(n)("performanceDiagnostics.copy"),onClick:T},{default:Z(()=>[B(De,{name:"copy"})]),_:1},8,["aria-label"])),[[C,o(n)("performanceDiagnostics.copy")]])])]),K("dl",null,[K("dt",null,W(o(n)("performanceDiagnostics.connectionLabel")),1),K("dd",null,W(v.value),1),K("dt",null,W(o(n)("performanceDiagnostics.pingLatency")),1),K("dd",null,W(w()),1),K("dt",null,W(o(n)("performanceDiagnostics.lastMessage")),1),K("dd",null,W(k()),1),K("dt",null,W(o(n)("performanceDiagnostics.messageRate")),1),K("dd",null,W(o(n)("performanceDiagnostics.rateValue",{current:o(r).messagesPerSecond,peak:o(r).peakMessagesPerSecond,kilobytes:u(o(r).kilobytesPerSecond)})),1),K("dt",null,W(o(n)("performanceDiagnostics.categories")),1),K("dd",zR,[i.value.length?(f(!0),O(Ve,{key:0},Je(i.value,I=>(f(),O("span",{key:I.category},W(o(n)(`performanceDiagnostics.category.${I.category}`))+" "+W(I.count)+"/s ",1))),128)):(f(),O("span",KR,W(o(n)("performanceDiagnostics.noRealtimeMessages")),1))]),K("dt",null,W(o(n)("performanceDiagnostics.activeRunSessions")),1),K("dd",null,W(o(r).activeRunSessions),1),K("dt",null,W(o(n)("performanceDiagnostics.processing")),1),K("dd",null,W(o(n)("performanceDiagnostics.processingValue",{average:u(o(r).processing.averageMs),p95:u(o(r).processing.p95Ms),maximum:u(o(r).processing.maxMs)})),1),K("dt",null,W(o(n)("performanceDiagnostics.longTasks")),1),K("dd",null,W(o(r).longTasks.available?o(n)("performanceDiagnostics.longTaskValue",{count:o(r).longTasks.count,duration:u(o(r).longTasks.totalDurationMs)}):o(n)("common.unavailable")),1),K("dt",null,W(o(n)("performanceDiagnostics.mainThreadDelay")),1),K("dd",null,W(u(o(r).eventLoopDelayMs))+" ms",1),K("dt",null,W(o(n)("performanceDiagnostics.pageScale")),1),K("dd",null,W(o(n)("performanceDiagnostics.pageScaleValue",{dom:o(r).domNodes,messages:o(r).messageCards})),1),K("dt",null,W(o(n)("performanceDiagnostics.jsHeap")),1),K("dd",null,W(d()),1)]),K("p",null,W(o(n)("performanceDiagnostics.scopeHint")),1)],8,BR)]),_:1})}}}),_R=dt(jR,[["__scopeId","data-v-5c2d70a5"]]);function YR(e,t,n,a,r){const s=r.trim().toLocaleLowerCase();return s.length===0?e.map(i=>({node:i,workspaces:t(i.id)})):e.flatMap(i=>{const l=Ma(n(i),s),u=t(i.id).filter(d=>Ma(a(d),s)||Ma(d.path,s)||Ma(d.groupName??"",s));return l||u.length>0?[{node:i,workspaces:u}]:[]})}function sl(e){const t=new Map;for(const n of e){const a=n.groupName?.trim()||null,r=t.get(a)??[];r.push(n),t.set(a,r)}return[...t.entries()].sort(([n],[a])=>n===null?a===null?0:1:a===null?-1:n.localeCompare(a)).map(([n,a])=>({groupName:n,workspaces:a}))}function Ma(e,t){return e.toLocaleLowerCase().includes(t)}const QR={class:"workspace-tree-filter"},JR=["onMouseenter","onFocusin","onContextmenu","onDragover","onDrop"],XR=["aria-expanded","aria-label","onClick"],ZR={key:1,class:"node-expand-spacer","aria-hidden":"true"},eA=["aria-label","draggable","onDragstart","onClick"],tA={class:"tree-node-content"},nA={class:"tree-node-icon","aria-hidden":"true"},aA=["aria-label"],oA={key:0,class:"workspace-branches"},rA=["draggable","onMouseenter","onFocusin","onContextmenu","onDragenter","onDragover","onDrop","onDragstart"],iA=["aria-label","onClick"],sA={class:"workspace-branch-content"},lA=["aria-label"],cA=["aria-label","aria-expanded","onDragenter","onDragover","onDrop","onClick"],dA={key:0,class:"workspace-branches workspace-group-branches"},uA=["draggable","onMouseenter","onFocusin","onContextmenu","onDragenter","onDragover","onDrop","onDragstart"],vA=["aria-label","onClick"],fA={class:"workspace-branch-content"},pA=["aria-label"],gA={key:1,class:"tree-filter-empty"},mA={key:2,class:"tree-foot"},hA={key:1,class:"tree-empty"},yA={class:"workspace-group-move-control"},wA={class:"workspace-group-move-hint"},kA={key:0,class:"workspace-group-move-error"},bA=at({__name:"WorkspaceTree",props:{nodes:{},expandedNodeIds:{},workspaceTarget:{},revealTarget:{},visible:{type:Boolean},draggingWorkspace:{},mobileViewport:{type:Boolean},loading:{type:Boolean},nodeLabel:{type:Function},workspaceLabel:{type:Function},workspaces:{type:Function}},emits:["moveNode","moveWorkspace","toggleNode","refreshNodeWorkspaces","addWorkspace","openNodeDetails","openWorkspace","startWorkspaceDrag","endWorkspaceDrag","reorderWorkspace","moveWorkspaceToGroup","moveWorkspaceGroup","removeWorkspace","openWorkspaceDetails","renameWorkspace"],setup(e,{emit:t}){const n=e,a=x(""),r=x(),s=x(!1);function i(){s.value=!window.matchMedia("(prefers-reduced-motion: reduce)").matches,ut(()=>s.value=!1)}function l(Re){const de=Re;de.inert=!1,de.style.setProperty("--workspace-branch-height",`${de.scrollHeight}px`)}function v(Re){const de=Re;de.style.setProperty("--workspace-branch-height",`${de.getBoundingClientRect().height}px`),de.inert=!0}function u(Re){const de=Re;de.style.removeProperty("--workspace-branch-height"),de.inert=!1}const d=j(()=>a.value.trim().length>0),w=j(()=>YR(n.nodes,n.workspaces,n.nodeLabel,n.workspaceLabel,a.value)),k=j(()=>w.value.map(Re=>({...Re,groups:sl(Re.workspaces)}))),T=Re=>d.value||n.expandedNodeIds.includes(Re),p=x([]),g=x(),R=x(),b=x(),C=x(),I=x(),S=x(),m=x(),A=j(()=>!n.mobileViewport&&!d.value),L=x(),y=x(),D=x(),E=x(),H=x(),X=x();He(()=>n.visible,Re=>{Re===!1&&(H.value=void 0,X.value=void 0)});const _=x(!1),U=x(),Q=x("");function $(Re,de){return`${Re}:${de}`}function V(Re,de){return`${Re}:${de}`}function N(Re){return Re.workspaceCreatable===!0}function h(Re,de){const Ae=n.draggingWorkspace;if(!A.value||Ae?.nodeId!==Re.id)return!1;const he=n.workspaces(Re.id).find(q=>q.id===Ae.workspaceId);return he===void 0||he.id===de?.id?!1:de===void 0||N(Re)||(he.groupName?.trim()||null)===(de.groupName?.trim()||null)}function F(Re,de,Ae){if(J(),!h(de,Ae))return;Re.preventDefault(),g.value=V(de.id,Ae.id),(n.workspaces(de.id).find(q=>q.id===n.draggingWorkspace?.workspaceId)?.groupName?.trim()||null)===(Ae.groupName?.trim()||null)&&(R.value=Me(Re))}function z(Re,de,Ae){J(),!(!h(de)||!N(de))&&(Re.preventDefault(),b.value=$(de.id,Ae))}function fe(Re){const de=Re.currentTarget;Re.relatedTarget instanceof Node&&de.contains(Re.relatedTarget)||J()}function J(){g.value=void 0,R.value=void 0,b.value=void 0,m.value=void 0}function re(Re,de){return d.value||p.value.includes($(Re,de))}function ge(Re,de){i();const Ae=$(Re,de);p.value=p.value.includes(Ae)?p.value.filter(he=>he!==Ae):[...p.value,Ae]}const ce=j(()=>{const Re=n.revealTarget;if(Re===void 0||Re.nodeId!==n.workspaceTarget?.nodeId||Re.workspaceId!==n.workspaceTarget.workspaceId)return;const de=n.workspaces(Re.nodeId).find(Ae=>Ae.id===Re.workspaceId);return de===void 0?void 0:de.groupName?.trim()||""});He([()=>n.revealTarget,ce],([Re,de])=>{Re===void 0||de===void 0||(p.value=de?[$(Re.nodeId,de)]:[])},{immediate:!0}),He([()=>n.revealTarget,ce,()=>n.visible],async(Re,de,Ae)=>{let he=!1;if(Ae(()=>he=!0),await ut(),he||n.visible===!1||ce.value===void 0)return;const q=r.value?.querySelector(".workspace-branches li.selected > .workspace-branch-button");q?.getClientRects().length&&q.scrollIntoView({block:"nearest",inline:"nearest",behavior:"instant"})},{immediate:!0,flush:"post"});const oe=j(()=>{const Re=U.value;return Re===void 0?[]:sl(n.workspaces(Re.nodeId)).map(de=>de.groupName).filter(de=>de!==null)}),P=j(()=>(Q.value?.trim().length??0)>128);function G(Re,de){U.value={nodeId:Re,workspace:de},Q.value=de.groupName?.trim()??"",_.value=!0}function ue(){_.value=!1,U.value=void 0,Q.value=""}function ne(){const Re=U.value;if(Re===void 0||P.value)return;const de=Q.value?.trim()||null;M("moveWorkspaceGroup",Re.nodeId,Re.workspace,de),ue()}const M=t;function ee(Re,de){de==="details"?M("openNodeDetails",Re):de==="add"?M("addWorkspace",Re.id):de==="refresh"?M("refreshNodeWorkspaces",Re.id):!d.value&&(de==="up"||de==="down")&&M("moveNode",Re.id,n.nodes.findIndex(Ae=>Ae.id===Re.id)+(de==="up"?-1:1))}function le(Re,de){if(!A.value){Re.preventDefault();return}C.value=de,Re.dataTransfer!==null&&(Re.dataTransfer.setData("application/x-mar-node",de),Re.dataTransfer.effectAllowed="move")}function Ee(){C.value=void 0,I.value=void 0,S.value=void 0}function xe(Re,de){if(h(de)&&N(de)){Re.preventDefault(),J(),m.value=de.id;return}!A.value||C.value===void 0||C.value===de.id||(Re.preventDefault(),I.value=de.id,S.value=Me(Re))}function Me(Re){const de=Re.currentTarget.getBoundingClientRect();return Re.clientY<de.top+de.height/2?"before":"after"}function Se(Re){const de=Re.currentTarget;Re.relatedTarget instanceof Node&&de.contains(Re.relatedTarget)||(I.value=void 0,S.value=void 0,J())}function ye(Re,de){if(h(de)&&N(de)){ae(de,null);return}const Ae=C.value;if(Ee(),!A.value||Ae===void 0||Ae===de.id)return;const he=n.nodes.findIndex(Y=>Y.id===Ae),q=n.nodes.findIndex(Y=>Y.id===de.id);if(he<0||q<0)return;const te=q+(Me(Re)==="after"?1:0);M("moveNode",Ae,te-(he<te?1:0))}function Fe(Re,de,Ae){Ae==="details"?M("openWorkspaceDetails",Re.id,de):Ae==="rename"?M("renameWorkspace",Re.id,de):Ae==="delete"?M("removeWorkspace",Re.id,de):Ae==="move-group"?G(Re.id,de):!d.value&&(Ae==="up"||Ae==="down")&&M("moveWorkspace",Re.id,de.id,Ae==="up"?-1:1)}function Ye(Re,de,Ae){if(!A.value){Re.preventDefault();return}M("startWorkspaceDrag",Re,de.id,Ae.id)}function nt(Re,de,Ae){J(),h(de,Ae)&&M("reorderWorkspace",de.id,Ae,Me(Re))}function ae(Re,de){J(),h(Re)&&N(Re)&&M("moveWorkspaceToGroup",Re.id,de)}function me(Re){return n.visible===!1?!1:n.mobileViewport||L.value===Re||y.value===Re||H.value===Re}function Pe(Re,de){if(n.visible===!1)return!1;const Ae=V(Re,de);return n.mobileViewport||D.value===Ae||E.value===Ae||X.value===Ae}function Ue(Re,de){const Ae=Re.currentTarget;Ae instanceof HTMLElement&&Re.relatedTarget instanceof Node&&Ae.contains(Re.relatedTarget)||de()}function Qe(Re,de){L.value=Re,ut(()=>de.querySelector(".tree-more-button")?.click())}function Te(Re,de,Ae){D.value=V(Re,de),ut(()=>Ae.querySelector(".tree-more-button")?.click())}function Ge(Re,de){Re.preventDefault();const Ae=Re.currentTarget;Ae instanceof HTMLElement&&Qe(de,Ae)}function _e(Re,de,Ae){Re.preventDefault();const he=Re.currentTarget;he instanceof HTMLElement&&Te(de,Ae,he)}function tt(Re){i(),M("toggleNode",Re)}function Xe(Re,de){M("openWorkspace",Re,de)}return(Re,de)=>{const Ae=Ft,he=ln,q=sn,te=rn,Y=Un,se=wn,be=bt,Oe=Xt,We=St("tooltip");return f(),O(Ve,null,[e.nodes.length?(f(),O(Ve,{key:0},[K("div",QR,[B(Ae,{modelValue:a.value,"onUpdate:modelValue":de[0]||(de[0]=Ie=>a.value=Ie),clearable:"","aria-label":o(c)("generated.workspaceTree.filterNodeWorkspaces"),placeholder:o(c)("generated.workspaceTree.filterNodeWorkspaces"),size:"small","clear-icon":o(qe)("clear-input")},{prefix:Z(()=>[B(De,{name:"search"})]),_:1},8,["modelValue","aria-label","placeholder","clear-icon"])]),w.value.length?(f(),O("ul",{key:0,ref_key:"nodeTreeElement",ref:r,class:"node-tree"},[(f(!0),O(Ve,null,Je(k.value,(Ie,st)=>(f(),O("li",{key:Ie.node.id},[K("div",{class:Ke(["tree-node-row",{dragging:C.value===Ie.node.id,"drop-before":I.value===Ie.node.id&&S.value==="before","drop-after":I.value===Ie.node.id&&S.value==="after","drop-target":m.value===Ie.node.id,"actions-visible":me(Ie.node.id)}]),onMouseenter:pe=>L.value=Ie.node.id,onMouseleave:de[2]||(de[2]=pe=>L.value=void 0),onFocusin:pe=>y.value=Ie.node.id,onFocusout:de[3]||(de[3]=pe=>Ue(pe,()=>y.value=void 0)),onContextmenu:pe=>Ge(pe,Ie.node.id),onDragover:rt(pe=>xe(pe,Ie.node),["stop"]),onDragleave:Se,onDrop:rt(pe=>ye(pe,Ie.node),["prevent","stop"])},[d.value?(f(),O("span",ZR)):(f(),O("button",{key:0,class:Ke(["node-expand-button",{expanded:e.expandedNodeIds.includes(Ie.node.id)}]),"aria-expanded":T(Ie.node.id),"aria-label":e.expandedNodeIds.includes(Ie.node.id)?o(c)("generated.workspaceTree.collapseWorkspaces"):o(c)("generated.workspaceTree.expandWorkspaces"),type:"button",onClick:pe=>tt(Ie.node.id)},[B(De,{name:"chevron-right",class:"tree-chevron"})],10,XR)),Le((f(),O("button",{"aria-label":e.nodeLabel(Ie.node),class:"tree-node",draggable:A.value,onDragstart:rt(pe=>le(pe,Ie.node.id),["stop"]),onDragend:rt(Ee,["stop"]),type:"button",onClick:pe=>tt(Ie.node.id)},[K("span",tA,[K("span",nA,[B(De,{name:"node",class:"tree-type-icon"}),K("span",{class:Ke(["state-dot","mar-icon-status-badge",Ie.node.connected&&!Ie.node.disabled?"ready":"offline"])},null,2)]),K("span",null,W(e.nodeLabel(Ie.node)),1)])],40,eA)),[[We,e.nodeLabel(Ie.node)]]),me(Ie.node.id)?(f(),we(te,{key:2,class:"tree-row-menu node-tree-actions",trigger:"click",onCommand:pe=>ee(Ie.node,pe),onVisibleChange:pe=>H.value=pe?Ie.node.id:void 0},{dropdown:Z(()=>[B(q,null,{default:Z(()=>[B(he,{command:"details",icon:o(qe)("view")},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.nodeDetails")),1)]),_:1},8,["icon"]),B(he,{command:"up",icon:o(qe)("chevron-up"),disabled:d.value||st===0},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveUp")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"down",icon:o(qe)("chevron-down"),disabled:d.value||st===k.value.length-1},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveDown")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"refresh",icon:o(qe)("refresh")},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.refreshWorkspaces")),1)]),_:1},8,["icon"]),B(he,{command:"add",icon:o(qe)("folder-add"),disabled:Ie.node.disabled||!Ie.node.connected||(Ie.node.workspaceCreatable??Ie.node.manageable)===!1},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.addWorkspace")),1)]),_:1},8,["icon","disabled"])]),_:2},1024)]),default:Z(()=>[K("button",{class:"tree-more-button utility-control","aria-label":o(c)("generated.workspaceTree.nodeActions"),type:"button",onClick:de[1]||(de[1]=rt(()=>{},["stop"]))},[B(De,{name:"more"})],8,aA)]),_:2},1032,["onCommand","onVisibleChange"])):ve("",!0)],42,JR),(f(),we(hn,{key:d.value?"filtered":"browsing",name:"workspace-branch",css:s.value,onEnter:l,onBeforeLeave:v,onAfterEnter:u,onAfterLeave:u},{default:Z(()=>[T(Ie.node.id)?(f(),O("ul",oA,[(f(!0),O(Ve,null,Je(Ie.groups,pe=>(f(),O(Ve,{key:pe.groupName??"__ungrouped__"},[pe.groupName===null?(f(!0),O(Ve,{key:0},Je(pe.workspaces,(Ce,je)=>(f(),O("li",{key:Ce.id,class:Ke({dragging:e.draggingWorkspace?.workspaceId===Ce.id,"drop-target":g.value===V(Ie.node.id,Ce.id)&&R.value===void 0,"drop-before":g.value===V(Ie.node.id,Ce.id)&&R.value==="before","drop-after":g.value===V(Ie.node.id,Ce.id)&&R.value==="after",selected:e.workspaceTarget?.nodeId===Ie.node.id&&e.workspaceTarget.workspaceId===Ce.id}),draggable:A.value,onMouseenter:ze=>D.value=V(Ie.node.id,Ce.id),onMouseleave:de[5]||(de[5]=ze=>D.value=void 0),onFocusin:ze=>E.value=V(Ie.node.id,Ce.id),onFocusout:de[6]||(de[6]=ze=>Ue(ze,()=>E.value=void 0)),onContextmenu:ze=>_e(ze,Ie.node.id,Ce.id),onDragend:de[7]||(de[7]=rt(ze=>{J(),M("endWorkspaceDrag")},["stop"])),onDragenter:rt(ze=>F(ze,Ie.node,Ce),["stop"]),onDragleave:rt(fe,["stop"]),onDragover:rt(ze=>F(ze,Ie.node,Ce),["stop"]),onDrop:rt(ze=>nt(ze,Ie.node,Ce),["prevent","stop"]),onDragstart:rt(ze=>Ye(ze,Ie.node,Ce),["stop"])},[Le((f(),O("button",{"aria-label":e.workspaceLabel(Ce),class:Ke([{selected:e.workspaceTarget?.nodeId===Ie.node.id&&e.workspaceTarget.workspaceId===Ce.id},"workspace-branch-button"]),type:"button",onClick:ze=>Xe(Ie.node.id,Ce.id)},[K("span",sA,[K("span",null,W(e.workspaceLabel(Ce)),1)])],10,iA)),[[We,e.workspaceLabel(Ce)]]),Pe(Ie.node.id,Ce.id)?(f(),we(te,{key:0,class:"tree-row-menu workspace-row-actions",trigger:"click",onCommand:ze=>Fe(Ie.node,Ce,ze),onVisibleChange:ze=>X.value=ze?V(Ie.node.id,Ce.id):void 0},{dropdown:Z(()=>[B(q,null,{default:Z(()=>[B(he,{command:"details",icon:o(qe)("view")},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.workspaceDetails")),1)]),_:1},8,["icon"]),B(he,{command:"up",icon:o(qe)("chevron-up"),disabled:d.value||je===0},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveUp")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"down",icon:o(qe)("chevron-down"),disabled:d.value||je===pe.workspaces.length-1},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveDown")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"rename",icon:o(qe)("edit"),disabled:Ce.manageable===!1},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.rename")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"move-group",icon:o(qe)("folder-add"),disabled:e.loading||!N(Ie.node)},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveWorkspaceToGroup")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"delete",icon:o(qe)("delete"),disabled:e.loading||Ce.manageable!==!0,divided:""},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.delete")),1)]),_:1},8,["icon","disabled"])]),_:2},1024)]),default:Z(()=>[K("button",{class:"tree-more-button utility-control","aria-label":o(c)("generated.workspaceTree.workspaceActions"),type:"button",onClick:de[4]||(de[4]=rt(()=>{},["stop"]))},[B(De,{name:"more"})],8,lA)]),_:2},1032,["onCommand","onVisibleChange"])):ve("",!0)],42,rA))),128)):(f(),O("li",{key:1,class:Ke(["workspace-group",{"drop-target":b.value===$(Ie.node.id,pe.groupName)}])},[Le((f(),O("button",{class:Ke(["workspace-group-toggle",{expanded:re(Ie.node.id,pe.groupName)}]),"aria-label":re(Ie.node.id,pe.groupName)?o(c)("generated.workspaceTree.collapseWorkspaceGroup",{value0:pe.groupName}):o(c)("generated.workspaceTree.expandWorkspaceGroup",{value0:pe.groupName}),"aria-expanded":re(Ie.node.id,pe.groupName),onDragenter:rt(Ce=>z(Ce,Ie.node,pe.groupName),["stop"]),onDragleave:rt(fe,["stop"]),onDragover:rt(Ce=>z(Ce,Ie.node,pe.groupName),["stop"]),onDrop:rt(Ce=>ae(Ie.node,pe.groupName),["prevent","stop"]),type:"button",onClick:Ce=>ge(Ie.node.id,pe.groupName)},[B(De,{name:"chevron-right",class:"tree-chevron"}),re(Ie.node.id,pe.groupName)?(f(),we(De,{key:0,name:"folder-open",class:"tree-type-icon","aria-hidden":"true"})):(f(),we(De,{key:1,name:"folder",class:"tree-type-icon","aria-hidden":"true"})),K("span",null,W(pe.groupName),1)],42,cA)),[[We,pe.groupName]]),B(hn,{name:"workspace-branch",css:s.value,onEnter:l,onBeforeLeave:v,onAfterEnter:u,onAfterLeave:u},{default:Z(()=>[re(Ie.node.id,pe.groupName)?(f(),O("ul",dA,[(f(!0),O(Ve,null,Je(pe.workspaces,(Ce,je)=>(f(),O("li",{key:Ce.id,class:Ke({dragging:e.draggingWorkspace?.workspaceId===Ce.id,"drop-target":g.value===V(Ie.node.id,Ce.id)&&R.value===void 0,"drop-before":g.value===V(Ie.node.id,Ce.id)&&R.value==="before","drop-after":g.value===V(Ie.node.id,Ce.id)&&R.value==="after",selected:e.workspaceTarget?.nodeId===Ie.node.id&&e.workspaceTarget.workspaceId===Ce.id}),draggable:A.value,onMouseenter:ze=>D.value=V(Ie.node.id,Ce.id),onMouseleave:de[9]||(de[9]=ze=>D.value=void 0),onFocusin:ze=>E.value=V(Ie.node.id,Ce.id),onFocusout:de[10]||(de[10]=ze=>Ue(ze,()=>E.value=void 0)),onContextmenu:ze=>_e(ze,Ie.node.id,Ce.id),onDragend:de[11]||(de[11]=rt(ze=>{J(),M("endWorkspaceDrag")},["stop"])),onDragenter:rt(ze=>F(ze,Ie.node,Ce),["stop"]),onDragleave:rt(fe,["stop"]),onDragover:rt(ze=>F(ze,Ie.node,Ce),["stop"]),onDrop:rt(ze=>nt(ze,Ie.node,Ce),["prevent","stop"]),onDragstart:rt(ze=>Ye(ze,Ie.node,Ce),["stop"])},[Le((f(),O("button",{"aria-label":e.workspaceLabel(Ce),class:Ke([{selected:e.workspaceTarget?.nodeId===Ie.node.id&&e.workspaceTarget.workspaceId===Ce.id},"workspace-branch-button"]),type:"button",onClick:ze=>Xe(Ie.node.id,Ce.id)},[K("span",fA,[K("span",null,W(e.workspaceLabel(Ce)),1)])],10,vA)),[[We,e.workspaceLabel(Ce)]]),Pe(Ie.node.id,Ce.id)?(f(),we(te,{key:0,class:"tree-row-menu workspace-row-actions",trigger:"click",onCommand:ze=>Fe(Ie.node,Ce,ze),onVisibleChange:ze=>X.value=ze?V(Ie.node.id,Ce.id):void 0},{dropdown:Z(()=>[B(q,null,{default:Z(()=>[B(he,{command:"details",icon:o(qe)("view")},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.workspaceDetails")),1)]),_:1},8,["icon"]),B(he,{command:"up",icon:o(qe)("chevron-up"),disabled:d.value||je===0},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveUp")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"down",icon:o(qe)("chevron-down"),disabled:d.value||je===pe.workspaces.length-1},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveDown")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"rename",icon:o(qe)("edit"),disabled:Ce.manageable===!1},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.rename")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"move-group",icon:o(qe)("folder-add"),disabled:e.loading||!N(Ie.node)},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveWorkspaceToGroup")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"delete",icon:o(qe)("delete"),disabled:e.loading||Ce.manageable!==!0,divided:""},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.delete")),1)]),_:1},8,["icon","disabled"])]),_:2},1024)]),default:Z(()=>[K("button",{class:"tree-more-button utility-control","aria-label":o(c)("generated.workspaceTree.workspaceActions"),type:"button",onClick:de[8]||(de[8]=rt(()=>{},["stop"]))},[B(De,{name:"more"})],8,pA)]),_:2},1032,["onCommand","onVisibleChange"])):ve("",!0)],42,uA))),128))])):ve("",!0)]),_:2},1032,["css"])],2))],64))),128))])):ve("",!0)]),_:2},1032,["css"]))]))),128))],512)):(f(),O("p",gA,W(o(c)("generated.workspaceTree.noMatchingResources")),1)),w.value.length&&e.workspaceTarget?.workspaceId===void 0?(f(),O("p",mA,W(o(c)("generated.workspaceTree.selectAWorkspaceToContinueInThe")),1)):ve("",!0)],64)):(f(),O("p",hA,W(o(c)("generated.workspaceTree.noNodes")),1)),_.value?(f(),we(Oe,{key:2,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),modelValue:_.value,"onUpdate:modelValue":de[13]||(de[13]=Ie=>_.value=Ie),title:o(c)("generated.workspaceTree.moveWorkspaceToGroup"),width:"min(440px, calc(100vw - 32px))",onClosed:ue,"close-icon":o(qe)("close")},{footer:Z(()=>[B(be,{onClick:ue},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.cancel")),1)]),_:1}),B(be,{type:"primary",disabled:P.value,onClick:ne},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.save")),1)]),_:1},8,["disabled"])]),default:Z(()=>[K("div",yA,[B(se,{modelValue:Q.value,"onUpdate:modelValue":de[12]||(de[12]=Ie=>Q.value=Ie),"allow-create":"",clearable:"","default-first-option":"",filterable:"","aria-label":o(c)("generated.workspaceTree.workspaceGroupName"),placeholder:o(c)("generated.workspaceTree.workspaceGroupMovePlaceholder"),"clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down")},{default:Z(()=>[(f(!0),O(Ve,null,Je(oe.value,Ie=>(f(),we(Y,{key:Ie,label:Ie,value:Ie},null,8,["label","value"]))),128))]),_:1},8,["modelValue","aria-label","placeholder","clear-icon","suffix-icon"])]),K("p",wA,W(o(c)("generated.workspaceTree.emptyWorkspaceGroupLeavesUngrouped")),1),P.value?(f(),O("p",kA,W(o(c)("generated.workspaceTree.workspaceGroupNameTooLong")),1)):ve("",!0)]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ve("",!0)],64)}}}),IA=dt(bA,[["__scopeId","data-v-cc254857"]]),SA=["aria-label"],CA=["src","alt"],TA={class:"brand-copy"},EA={class:"brand-heading"},RA={class:"brand-version"},AA=["aria-label"],NA=["aria-label"],DA=["aria-label","aria-current","aria-expanded","onClick"],PA={class:"nav-item-content"},OA={class:"nav-item-content"},LA={class:"rail-label"},WA=["aria-label"],MA=["inert","aria-label"],xA=["aria-label"],$A=["aria-current","onClick"],FA=["aria-label"],UA=["aria-current","onClick"],VA=at({__name:"WorkbenchNavigation",props:{webVersion:{},view:{},navigationItems:{},settingsSection:{},settingsItems:{},managementSection:{},managementItems:{},sidebarCollapsed:{type:Boolean},mobileSidebarOpen:{type:Boolean},sidebarContentVisible:{type:Boolean},nodes:{},expandedNodeIds:{},workspaceTreeRevealTarget:{},workspaceTarget:{},draggingWorkspace:{},loading:{type:Boolean},nodeLabel:{type:Function},workspaceLabel:{type:Function},workspaces:{type:Function},mobileViewport:{type:Boolean},mobileUtilityPanel:{},mobileHistoryOpen:{type:Boolean},notificationService:{},performanceDiagnostics:{},uploads:{},uploadStatusLabel:{type:Function}},emits:["resizeSidebar","moveNode","moveWorkspace","selectNavigation","selectMobileUtilityPanel","closeMobileSidebar","selectSettings","selectManagement","toggleNode","refreshNodeWorkspaces","refreshWorkspaceTree","addWorkspace","openNodeDetails","openWorkspace","startWorkspaceDrag","endWorkspaceDrag","reorderWorkspace","moveWorkspaceToGroup","moveWorkspaceGroup","removeWorkspace","openWorkspaceDetails","renameWorkspace","openNotification","openRecentRun","retryUpload","cancelUpload","removeUpload"],setup(e,{emit:t}){const n=Il(),a=Xa().locale,r=x(),s=x(),i=e,l=x(i.view),v=x(i.mobileUtilityPanel),u=new Map,d=j(()=>v.value??l.value);function w(){l.value=i.view,v.value=i.mobileUtilityPanel}He([()=>i.view,()=>i.mobileUtilityPanel,()=>i.mobileSidebarOpen],async(_,U)=>{const Q=r.value;Q&&U[2]&&u.set(d.value,Q.scrollTop),!(i.mobileViewport&&!i.mobileSidebarOpen)&&(l.value=i.view,v.value=i.mobileUtilityPanel,await ut(),r.value&&(r.value.scrollTop=u.get(d.value)??0))});const k=t;function T(_,U){(U||i.mobileUtilityPanel===_)&&k("selectMobileUtilityPanel",U?_:void 0)}const p=j(()=>c(v.value==="activity"?"activityCenter.title":l.value==="settings"?"navigation.settingsCategories":l.value==="management"?"navigation.managementCategories":"navigation.nodeWorkspace")),g=Rr({isOpen:()=>i.mobileViewport&&i.mobileSidebarOpen,regions:()=>[r.value,document.querySelector(".activity-rail")],close:()=>k("closeMobileSidebar")});mt(g.dispose);const R=(_,U)=>k("openWorkspace",_,U),b=(_,U)=>k("moveNode",_,U),C=(_,U,Q)=>k("moveWorkspace",_,U,Q),I=(_,U,Q)=>k("startWorkspaceDrag",_,U,Q),S=(_,U,Q)=>k("reorderWorkspace",_,U,Q),m=(_,U)=>k("moveWorkspaceToGroup",_,U),A=(_,U,Q)=>k("moveWorkspaceGroup",_,U,Q),L=(_,U)=>k("removeWorkspace",_,U),y=(_,U)=>k("openWorkspaceDetails",_,U),D=(_,U)=>k("renameWorkspace",_,U),E=x(),H=x({left:0,top:0});function X(_){if(_.target instanceof Element&&_.target.closest(".tree-node-row, .workspace-branches li, .workspace-tree-filter, .tree-filter-empty, .tree-foot"))return;_.preventDefault();const U=_.currentTarget;if(!(U instanceof HTMLElement))return;const Q=U.getBoundingClientRect();H.value={left:_.clientX-Q.left,top:_.clientY-Q.top+U.scrollTop},ut(()=>E.value?.click())}return(_,U)=>{const Q=Sr,$=ln,V=sn,N=rn,h=St("tooltip");return f(),O(Ve,null,[K("header",{class:Ke(["workbench-brand",{collapsed:e.sidebarCollapsed}]),"data-testid":"workbench-brand"},[Le((f(),O("a",{class:"brand-home-link",href:"/","aria-label":_.$t("navigation.home")},[K("img",{src:o(Ha),alt:_.$t("common.productName")},null,8,CA)],8,SA)),[[h,_.$t("common.productVersion",{version:e.webVersion})]]),K("div",TA,[K("div",EA,[K("strong",null,W(_.$t("common.productName")),1),K("span",RA,W(e.webVersion),1)]),K("span",null,W(_.$t("navigation.brandSummary")),1)])],2),K("aside",{class:"activity-rail","aria-label":_.$t("navigation.main")},[K("nav",{"aria-label":_.$t("navigation.main")},[(f(!0),O(Ve,null,Je(e.navigationItems,F=>(f(),O(Ve,{key:F.id},[Le((f(),O("button",{class:Ke(["nav-menu-button",{active:e.view===F.id,utility:F.id==="management"||F.id==="settings"}]),"aria-label":F.label,"aria-current":e.view===F.id?"page":void 0,"aria-expanded":e.mobileViewport?e.view===F.id&&(F.id==="conversations"?e.mobileHistoryOpen===!0:e.mobileSidebarOpen&&e.mobileUtilityPanel===void 0):void 0,type:"button",onClick:z=>k("selectNavigation",F.id)},[K("span",PA,[F.id==="nodes"?(f(),we(De,{key:0,name:"workspace","aria-hidden":"true"})):F.id==="conversations"?(f(),we(De,{key:1,name:"conversation","aria-hidden":"true"})):F.id==="settings"?(f(),we(De,{key:2,name:"settings","aria-hidden":"true"})):(f(),we(De,{key:3,name:"administration","aria-hidden":"true"}))])],10,DA)),[[h,{content:F.label,placement:e.mobileViewport?"bottom":"right"}]]),F.id==="conversations"?(f(),we(qR,{key:0,service:e.notificationService,uploads:e.uploads,"status-label":e.uploadStatusLabel,"mobile-mode":e.mobileViewport,"mobile-open":e.mobileUtilityPanel==="activity","mobile-presented":v.value==="activity","mobile-panel-target":s.value,"preview-suppressed":e.mobileViewport&&(e.mobileSidebarOpen||e.mobileHistoryOpen),"onUpdate:mobileOpen":U[0]||(U[0]=z=>T("activity",z)),onOpenRecentRun:U[1]||(U[1]=z=>k("openRecentRun",z)),onOpenNotification:U[2]||(U[2]=z=>k("openNotification",z)),onRetryUpload:U[3]||(U[3]=z=>k("retryUpload",z)),onCancelUpload:U[4]||(U[4]=z=>k("cancelUpload",z)),onRemoveUpload:U[5]||(U[5]=z=>k("removeUpload",z))},null,8,["service","uploads","status-label","mobile-mode","mobile-open","mobile-presented","mobile-panel-target","preview-suppressed"])):ve("",!0)],64))),128)),o(n)?Le((f(),we(Q,{key:0,class:"nav-menu-button documentation-link utility-control",href:o(Sl)(o(a),"getting-started/overview"),underline:"never",target:"_blank",rel:"noopener noreferrer","aria-label":_.$t("navigation.help")},{default:Z(()=>[K("span",OA,[B(De,{class:"documentation-icon","aria-hidden":"true",name:"help"}),K("span",LA,W(_.$t("navigation.help")),1)])]),_:1},8,["href","aria-label"])),[[h,_.$t("navigation.help")]]):ve("",!0)],8,NA),e.mobileViewport?ve("",!0):(f(),we(_R,{key:0,diagnostics:e.performanceDiagnostics},null,8,["diagnostics"]))],8,AA),B(hn,{name:"mobile-menu-scrim"},{default:Z(()=>[e.mobileViewport&&e.mobileSidebarOpen?(f(),O("button",{key:0,class:"sidebar-scrim",type:"button","aria-label":_.$t("workbench.closeSidebar"),tabindex:"-1",onClick:U[6]||(U[6]=F=>k("closeMobileSidebar"))},null,8,WA)):ve("",!0)]),_:1}),B(hn,{name:e.mobileViewport?"mobile-menu":"desktop-menu",onAfterLeave:w},{default:Z(()=>[Le(K("aside",{ref_key:"treeElement",ref:r,class:Ke(["workspace-tree",{collapsed:e.sidebarCollapsed,"mobile-open":e.mobileSidebarOpen}]),inert:e.mobileViewport&&!e.mobileSidebarOpen,"aria-label":p.value,tabindex:"-1",onContextmenu:U[13]||(U[13]=F=>e.view==="nodes"&&e.mobileUtilityPanel===void 0&&X(F))},[Le(K("div",{ref_key:"mobilePanelTarget",ref:s,class:"mobile-menu-content"},null,512),[[At,v.value!==void 0]]),v.value===void 0&&l.value==="nodes"?(f(),O(Ve,{key:0},[B(N,{trigger:"click",class:"workspace-tree-blank-menu",style:It(H.value),onCommand:U[7]||(U[7]=F=>k("refreshWorkspaceTree"))},{dropdown:Z(()=>[B(V,null,{default:Z(()=>[B($,{command:"refresh",icon:o(qe)("refresh")},{default:Z(()=>[ke(W(_.$t("generated.workspaceTree.refreshWorkspaces")),1)]),_:1},8,["icon"])]),_:1})]),default:Z(()=>[K("button",{ref_key:"blankMenuButton",ref:E,type:"button",tabindex:"-1","aria-hidden":"true"},null,512)]),_:1},8,["style"]),e.sidebarContentVisible||e.mobileViewport?(f(),we(IA,{key:0,nodes:e.nodes,"expanded-node-ids":e.expandedNodeIds,"reveal-target":e.workspaceTreeRevealTarget,visible:e.mobileViewport?e.mobileSidebarOpen:!e.sidebarCollapsed,"workspace-target":e.workspaceTarget,"dragging-workspace":e.draggingWorkspace,"mobile-viewport":e.mobileViewport,loading:e.loading,"node-label":e.nodeLabel,"workspace-label":e.workspaceLabel,workspaces:e.workspaces,onMoveNode:b,onMoveWorkspace:C,onToggleNode:U[8]||(U[8]=F=>k("toggleNode",F)),onRefreshNodeWorkspaces:U[9]||(U[9]=F=>k("refreshNodeWorkspaces",F)),onAddWorkspace:U[10]||(U[10]=F=>k("addWorkspace",F)),onOpenNodeDetails:U[11]||(U[11]=F=>k("openNodeDetails",F)),onOpenWorkspace:R,onStartWorkspaceDrag:I,onEndWorkspaceDrag:U[12]||(U[12]=F=>k("endWorkspaceDrag")),onReorderWorkspace:S,onMoveWorkspaceToGroup:m,onMoveWorkspaceGroup:A,onRemoveWorkspace:L,onOpenWorkspaceDetails:y,onRenameWorkspace:D},null,8,["nodes","expanded-node-ids","reveal-target","visible","workspace-target","dragging-workspace","mobile-viewport","loading","node-label","workspace-label","workspaces"])):ve("",!0)],64)):v.value===void 0?(f(),O(Ve,{key:1},[(e.sidebarContentVisible||e.mobileViewport)&&l.value==="settings"?(f(),O("nav",{key:l.value,class:"settings-nav","aria-label":_.$t("navigation.settingsMenu")},[(f(!0),O(Ve,null,Je(e.settingsItems,F=>(f(),O("button",{key:F.id,class:Ke({active:e.settingsSection===F.id}),"aria-current":e.settingsSection===F.id?"page":void 0,type:"button",onClick:z=>k("selectSettings",F.id)},W(F.label),11,$A))),128))],8,xA)):(e.sidebarContentVisible||e.mobileViewport)&&l.value==="management"?(f(),O("nav",{key:l.value,class:"settings-nav","aria-label":_.$t("navigation.managementMenu")},[(f(!0),O(Ve,null,Je(e.managementItems,F=>(f(),O("button",{key:F.id,class:Ke({active:e.managementSection===F.id}),"aria-current":e.managementSection===F.id?"page":void 0,type:"button",onClick:z=>k("selectManagement",F.id)},W(F.label),11,UA))),128))],8,FA)):ve("",!0)],64)):ve("",!0)],42,MA),[[At,e.mobileViewport?e.mobileSidebarOpen:e.view!=="conversations"]])]),_:1},8,["name"]),e.view==="nodes"&&!e.sidebarCollapsed&&!e.mobileViewport?(f(),we(Ec,{key:0,class:"workspace-tree-resize",target:r.value,label:_.$t("generated.panelResize.workspaceTree"),min:o(pn).sidebar.min,max:o(pn).sidebar.max,direction:1,onResize:U[14]||(U[14]=F=>k("resizeSidebar",F))},null,8,["target","label","min","max"])):ve("",!0)],64)}}}),qA=dt(VA,[["__scopeId","data-v-6c1d2621"]]),HA={class:"gate-panel","aria-labelledby":"password-title"},BA={class:"eyebrow"},GA={id:"password-title"},zA={class:"lede"},KA={class:"lede"},jA={key:0,class:"password-form-error",role:"alert"},_A=at({__name:"PasswordGate",props:{password:{},validationError:{},loading:{type:Boolean}},emits:["update:password","clearError","submit"],setup(e,{emit:t}){const n=e,a=t,r=x(""),s=x(""),{t:i}=Dn();function l(){a("submit",{currentPassword:r.value,password:n.password,confirmation:s.value})}return(v,u)=>(f(),O("section",HA,[K("p",BA,W(o(i)("passwordGate.firstUse")),1),K("h1",GA,W(o(i)("passwordGate.title")),1),K("p",zA,W(o(i)("passwordGate.summary")),1),K("p",KA,W(o(i)("passwordGate.requirement")),1),K("form",{class:"auth-form",novalidate:"",onSubmit:rt(l,["prevent"])},[K("label",null,[ke(W(o(i)("passwordGate.current")),1),B(o(Ft),{modelValue:r.value,"onUpdate:modelValue":u[0]||(u[0]=d=>r.value=d),type:"password",autocomplete:"current-password",onInput:u[1]||(u[1]=d=>a("clearError"))},null,8,["modelValue"])]),K("label",null,[ke(W(o(i)("passwordGate.next")),1),B(o(Ft),{"model-value":e.password,type:"password",autocomplete:"new-password","onUpdate:modelValue":u[2]||(u[2]=d=>a("update:password",String(d))),onInput:u[3]||(u[3]=d=>a("clearError"))},null,8,["model-value"])]),K("label",null,[ke(W(o(i)("passwordGate.confirmation")),1),B(o(Ft),{modelValue:s.value,"onUpdate:modelValue":u[4]||(u[4]=d=>s.value=d),type:"password",autocomplete:"new-password",onInput:u[5]||(u[5]=d=>a("clearError"))},null,8,["modelValue"])]),e.validationError?(f(),O("p",jA,W(e.validationError),1)):ve("",!0),B(o(bt),{disabled:e.password.length<8||r.value.length===0||s.value.length===0,loading:e.loading,"native-type":"submit",type:"primary","loading-icon":o(qe)("loading-action")},{default:Z(()=>[ke(W(o(i)("passwordGate.submit")),1)]),_:1},8,["disabled","loading","loading-icon"])],32)]))}}),YA=dt(_A,[["__scopeId","data-v-38495fe1"]]),QA=["aria-label"],JA=["aria-label"],XA=["aria-label"],ZA=["aria-busy"],eN={class:"sr-only","data-testid":"web-health"},tN=at({__name:"WorkbenchPage",props:{page:{},surface:{}},emits:["openWorkspaceDetails"],setup(e,{emit:t}){const n=e,a=t,{t:r}=Dn(),s=j(()=>{const R=n.page.layout.panelWidths.sidebar,b=n.page.layout.panelWidths.compact;return{...R===void 0?{}:{"--mar-workbench-sidebar-width":`min(${R}px, var(--mar-sidebar-available-width))`,"--mar-workbench-sidebar-total-width":"calc(var(--mar-activity-rail-width) + var(--mar-workbench-sidebar-width))"},...b===void 0?{}:{"--mar-inspector-width":`${b}px`}}}),i=x(),l=x(!1),v=x(!1);function u(R,b){a("openWorkspaceDetails",R,b),i.value={nodeId:R,workspace:b},l.value=!0}function d(){return n.page.resources.nodes.find(R=>R.id===i.value?.nodeId)}function w(){const R=d();return R===void 0?void 0:n.page.resources.nodeLabel(R)}const k=j(()=>{const R=n.page.resources.nodeDetails;if(R===void 0)return;const b=n.page.resources.nodes.find(C=>C.id===R.id)??R;return{...b,label:n.page.resources.nodeLabel(b)}});async function T(){if(!(v.value||n.page.resources.nodeDetails===void 0)){v.value=!0;try{await n.page.resources.refreshNodes()}finally{v.value=!1}}}const p=j(()=>{const R=i.value?.workspace;if(R!==void 0)return{...R,label:R.displayName||R.path}});function g(){window.close()}return(R,b)=>{const C=bt;return f(),O("main",{class:Ke(["console-shell",{"console-shell--gate":!e.page.identity.adminLoaded||!e.page.identity.admin.authenticated||e.page.identity.locked}]),style:It(s.value)},[e.page.identity.adminLoaded?e.page.identity.authenticationUnknown?(f(),we(LE,{key:1,loading:e.page.identity.authenticationRestoring,"logo-url":o(Ha),onRetry:e.page.identity.refreshAdmin},null,8,["loading","logo-url","onRetry"])):e.page.identity.admin.authenticated?e.page.identity.locked?(f(),we(YA,{key:3,password:e.page.identity.newPassword,"onUpdate:password":b[0]||(b[0]=I=>e.page.identity.newPassword=I),"validation-error":e.page.identity.passwordValidationError,loading:e.page.identity.loading,onClearError:b[1]||(b[1]=I=>e.page.identity.passwordValidationError=""),onSubmit:e.page.identity.changePassword},null,8,["password","validation-error","loading","onSubmit"])):(f(),O(Ve,{key:4},[K("input",{ref:I=>e.page.uploads.workspaceUploadRecoveryInput=I,class:"workspace-upload-input",type:"file","aria-label":o(r)("workbench.recoverUpload"),onChange:b[2]||(b[2]=(...I)=>e.page.uploads.recoverWorkspaceUpload&&e.page.uploads.recoverWorkspaceUpload(...I))},null,40,JA),B(qA,{"aria-hidden":e.page.files.standaloneFileMode||void 0,inert:e.page.files.standaloneFileMode,"web-version":e.page.application.webVersion,view:e.page.application.view,"navigation-items":e.page.application.navigationItems,"settings-section":e.page.application.settingsSection,"settings-items":e.page.application.settingsItems,"management-section":e.page.application.managementSection,"management-items":e.page.application.managementItems,"sidebar-collapsed":e.page.layout.sidebarCollapsed,"mobile-sidebar-open":e.page.layout.mobileSidebarOpen,"sidebar-content-visible":e.page.layout.sidebarContentVisible,nodes:e.page.tree.orderedNodes,"mobile-viewport":e.page.layout.mobileViewport,"mobile-utility-panel":e.page.layout.mobileUtilityPanel,"mobile-history-open":e.page.hosted.hostedConversationMobileHistoryOpen,"expanded-node-ids":e.page.tree.expandedNodeIds,"workspace-tree-reveal-target":e.page.tree.workspaceTreeRevealTarget,"workspace-target":e.page.selection.workspaceTarget,"dragging-workspace":e.page.tree.draggingWorkspace,loading:e.page.identity.loading,"notification-service":e.page.notifications,"performance-diagnostics":e.page.application.webPerformanceDiagnostics,uploads:e.page.uploads.workspaceUploadTasks,"upload-status-label":e.page.uploads.workspaceUploadStatusLabel,"node-label":e.page.resources.nodeLabel,"workspace-label":e.page.selection.workspaceTabLabel,workspaces:e.page.tree.orderedWorkspaces,onResizeSidebar:b[3]||(b[3]=I=>e.page.layout.setPanelWidth("sidebar",I)),onSelectNavigation:e.page.application.selectNavigation,onSelectMobileUtilityPanel:e.page.layout.selectMobileUtilityPanel,onCloseMobileSidebar:e.page.layout.closeMobileSidebar,onSelectSettings:e.page.application.selectSettingsSection,onSelectManagement:e.page.application.selectManagementSection,onMoveNode:e.page.tree.moveNode,onMoveWorkspace:e.page.tree.moveTreeWorkspace,onToggleNode:e.page.tree.toggleNodeExpansion,onRefreshNodeWorkspaces:e.page.tree.refreshNodeWorkspaces,onRefreshWorkspaceTree:e.page.tree.refreshWorkspaceTree,onAddWorkspace:e.page.tree.addWorkspaceForNode,onOpenNodeDetails:e.page.resources.showNodeDetails,onOpenWorkspace:e.page.tree.openWorkspaceFromTree,onStartWorkspaceDrag:e.page.tree.startWorkspaceDrag,onEndWorkspaceDrag:e.page.tree.endWorkspaceDrag,onReorderWorkspace:e.page.tree.reorderWorkspace,onMoveWorkspaceToGroup:e.page.tree.moveWorkspaceToGroup,onMoveWorkspaceGroup:e.page.tree.moveWorkspaceGroup,onRemoveWorkspace:e.page.tree.removeWorkspace,onOpenWorkspaceDetails:u,onRenameWorkspace:e.page.tree.renameWorkspace,onOpenNotification:e.page.application.openWorkbenchNotification,onOpenRecentRun:e.page.application.openRecentRun,onOpenSessionTarget:e.page.selection.openSessionGroupTarget,onRetryUpload:e.page.uploads.retryWorkspaceUpload,onCancelUpload:e.page.uploads.cancelWorkspaceUpload,onRemoveUpload:e.page.uploads.deleteWorkspaceUpload},null,8,["aria-hidden","inert","web-version","view","navigation-items","settings-section","settings-items","management-section","management-items","sidebar-collapsed","mobile-sidebar-open","sidebar-content-visible","nodes","mobile-viewport","mobile-utility-panel","mobile-history-open","expanded-node-ids","workspace-tree-reveal-target","workspace-target","dragging-workspace","loading","notification-service","performance-diagnostics","uploads","upload-status-label","node-label","workspace-label","workspaces","onSelectNavigation","onSelectMobileUtilityPanel","onCloseMobileSidebar","onSelectSettings","onSelectManagement","onMoveNode","onMoveWorkspace","onToggleNode","onRefreshNodeWorkspaces","onRefreshWorkspaceTree","onAddWorkspace","onOpenNodeDetails","onOpenWorkspace","onStartWorkspaceDrag","onEndWorkspaceDrag","onReorderWorkspace","onMoveWorkspaceToGroup","onMoveWorkspaceGroup","onRemoveWorkspace","onRenameWorkspace","onOpenNotification","onOpenRecentRun","onOpenSessionTarget","onRetryUpload","onCancelUpload","onRemoveUpload"]),B(hn,{name:"workspace-scrim"},{default:Z(()=>[e.page.layout.mobileViewport&&e.page.layout.mobileWorkspaceSurface!=="conversation"?(f(),O("button",{key:0,class:"workspace-surface-scrim","aria-label":o(r)("workbench.closeWorkspaceTools"),type:"button",onClick:b[4]||(b[4]=(...I)=>e.page.layout.closeMobileWorkspaceSurface&&e.page.layout.closeMobileWorkspaceSurface(...I))},null,8,XA)):ve("",!0)]),_:1}),Ct(R.$slots,"surface",{},()=>[B(Rc,{page:e.surface,"aria-hidden":e.page.files.standaloneFileMode||void 0,inert:e.page.files.standaloneFileMode},null,8,["page","aria-hidden","inert"])],!0),e.page.files.standaloneFileMode&&(e.page.files.standaloneFileLoading||e.page.files.standaloneFileError)?(f(),O("div",{key:0,class:"standalone-file-loading","aria-busy":e.page.files.standaloneFileLoading,"aria-live":"polite"},[e.page.files.standaloneFileError?(f(),O(Ve,{key:0},[K("p",null,W(o(r)("generated.standaloneFilePreviewPage.unableToReadTheFileCheckYour")),1),B(C,{onClick:g},{default:Z(()=>[ke(W(o(r)("generated.filePreviewDialog.closePreview")),1)]),_:1})],64)):(f(),we(Kp,{key:1,variant:"page"}))],8,ZA)):ve("",!0),Ct(R.$slots,"resource-details",{},()=>[B(Dg,{"node-open":e.page.resources.nodeDetailsDialogOpen,"onUpdate:nodeOpen":b[5]||(b[5]=I=>e.page.resources.nodeDetailsDialogOpen=I),"workspace-open":l.value,"onUpdate:workspaceOpen":b[6]||(b[6]=I=>l.value=I),"usage-open":e.page.resources.runnerUsageDialogOpen,"onUpdate:usageOpen":b[7]||(b[7]=I=>e.page.resources.runnerUsageDialogOpen=I),node:k.value,workspace:p.value,"workspace-node-id":d()?.id,"workspace-node-connected":d()?.connected,"workspace-git-manageable":i.value?.workspace.manageable,"workspace-secret-manageable":i.value?.workspace.manageable,"workspace-node-label":w(),usage:e.page.resources.runnerUsageDetails,"usage-loading":e.page.resources.runnerUsageLoading,"usage-disabled-reason":e.page.resources.runnerUsageDisabledReason,"node-refreshable":e.page.resources.nodeDetails!==void 0,"node-refreshing":v.value,"secret-writable":!0,request:e.page.identity.request,onRefreshNode:T,onUsage:e.page.resources.showRunnerUsage},null,8,["node-open","workspace-open","usage-open","node","workspace","workspace-node-id","workspace-node-connected","workspace-git-manageable","workspace-secret-manageable","workspace-node-label","usage","usage-loading","usage-disabled-reason","node-refreshable","node-refreshing","request","onUsage"])],!0)],64)):(f(),we(EE,{key:2,loading:e.page.identity.loading,"logo-url":o(Ha),onLogin:e.page.identity.login},{"identity-extension":Z(()=>[Ct(R.$slots,"identity-extension",{},void 0,!0)]),_:3},8,["loading","logo-url","onLogin"])):(f(),O("div",{key:0,class:"page-loading-state",role:"status","aria-busy":"true","aria-label":o(r)("common.loading")},[B(gn)],8,QA)),B($l,{"attachment-open":e.page.interactions.attachmentPreviewOpen,"onUpdate:attachmentOpen":b[8]||(b[8]=I=>e.page.interactions.attachmentPreviewOpen=I),"conversation-open":e.page.interactions.conversationImagePreviewOpen,"onUpdate:conversationOpen":b[9]||(b[9]=I=>e.page.interactions.conversationImagePreviewOpen=I),attachment:e.page.interactions.attachmentPreview,conversation:e.page.interactions.conversationImagePreview,onClearAttachment:b[10]||(b[10]=I=>e.page.interactions.attachmentPreview=void 0),onClearConversation:b[11]||(b[11]=I=>e.page.interactions.conversationImagePreview=void 0),onConversationError:e.page.interactions.handleConversationImagePreviewError},null,8,["attachment-open","conversation-open","attachment","conversation","onConversationError"]),B(oR,{open:e.page.interactions.quickOpenFileVisible,"node-id":e.page.selection.workspaceTarget?.nodeId,"workspace-id":e.page.selection.workspaceTarget?.workspaceId,"files-ready":e.page.files.filesReady,"symbols-ready":e.page.application.codeNavigationReady,nodes:e.page.resources.nodes,sessions:e.page.sessionList.sessions,"session-title":e.page.sessionList.sessionTitle,"open-session":e.page.selection.openSessionFromList,"open-workspace":e.page.interactions.openQuickWorkspace,"workspace-tabs":e.page.selection.workspaceTabs,onClose:e.page.interactions.closeQuickOpenFile,onOpenFile:e.page.interactions.openQuickWorkspaceFile},null,8,["open","node-id","workspace-id","files-ready","symbols-ready","nodes","sessions","session-title","open-session","open-workspace","workspace-tabs","onClose","onOpenFile"]),K("p",eN,W(o(r)("common.webReady")),1)],6)}}}),nN=dt(tN,[["__scopeId","data-v-3edf2b7d"]]),aN=at({__name:"WorkbenchPage",setup(e){const t=Et(_w()),{t:n}=Dn(),a=new URLSearchParams(window.location.search).get("oauthError");let r=!1;return He(()=>t.identity.adminLoaded,s=>{if(!s||r||a===null)return;r=!0,et(lg(a,n("workbench.oauthFailure")),"error");const i=new URL(window.location.href);i.searchParams.delete("oauthError"),window.history.replaceState(null,"",`${i.pathname}${i.search}${i.hash}`)},{immediate:!0}),(s,i)=>(f(),we(nN,{page:o(t),surface:o(t)},{"identity-extension":Z(()=>[B(hm,{request:o(t).identity.request},null,8,["request"])]),surface:Z(()=>[B(wE,{page:o(t)},null,8,["page"])]),_:1},8,["page","surface"]))}}),qN=Object.freeze(Object.defineProperty({__proto__:null,default:aN},Symbol.toStringTag,{value:"Module"}));export{Cn as T,qN as W,hw as a,yw as c,ww as o,Mw as p};
21
+ ${oe.refs.join(", ")}`:""}`]]),b.value.includes(oe.hash)?(f(),O("div",{key:0,class:"history-expanded",style:It({gridTemplateColumns:`${o(La)(P)}px minmax(0, 1fr)`})},[(f(),O("svg",{class:"history-graph-continuation",style:It({width:`${o(La)(P)}px`}),"aria-hidden":"true"},[(f(!0),O(Ve,null,Je(P.outgoingLaneCount,G=>(f(),O("line",{key:G,class:Ke(`history-graph-color-${(G-1)%6}`),x1:(G-1)*14+7,y1:"0",x2:(G-1)*14+7,y2:"100%"},null,10,pb))),128))],4)),K("ul",gb,[o(d).includes(oe.hash)&&!o(w).includes(oe.hash)?(f(),O("li",mb,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)])):ve("",!0),o(w).includes(oe.hash)?(f(),O("li",hb,[Le((f(),we(ge,{link:"","aria-description":o(d).includes(oe.hash)?void 0:o(it)(e.service.historyFilesFailureCauses.value[oe.hash]),"aria-disabled":o(d).includes(oe.hash),"aria-busy":o(d).includes(oe.hash)||void 0,onClick:G=>!o(d).includes(oe.hash)&&e.service.loadHistoryFiles(oe)},{default:Z(()=>[o(d).includes(oe.hash)?(f(),O(Ve,{key:0},[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:2},1032,["aria-description","aria-disabled","aria-busy","onClick"])),[[ce,o(d).includes(oe.hash)?"":o(it)(e.service.historyFilesFailureCauses.value[oe.hash])]])])):ve("",!0),(f(!0),O(Ve,null,Je(V(o(u)[oe.hash]??[],C.value[oe.hash]??[]),G=>(f(),O("li",{key:G.kind==="DIRECTORY"?`directory:${G.path}`:`file:${G.file.previousPath??""}:${G.file.path}`},[G.kind==="DIRECTORY"?Le((f(),O("span",yb,[B(ge,{text:"",size:"small",class:"history-directory",style:It({paddingLeft:Q(G.depth)}),"aria-expanded":(C.value[oe.hash]??[]).includes(G.path),onClick:rt(ue=>N(oe.hash,G.path),["stop"])},{default:Z(()=>[B(De,{name:"chevron-right",class:Ke(["history-directory-toggle",{"is-expanded":(C.value[oe.hash]??[]).includes(G.path)}])},null,8,["class"]),B(yn,{name:G.name,kind:"DIRECTORY"},null,8,["name"]),ke(W(G.name),1)]),_:2},1032,["style","aria-expanded","onClick"])])),[[ce,G.path]]):Le((f(),we(ge,{key:1,text:"",size:"small",style:It({paddingLeft:Q(G.depth)}),onClick:rt(ue=>a("open",oe,G.file,ue.ctrlKey||ue.metaKey),["stop"])},{default:Z(()=>[K("span",wb,W(o(fc)(G.file.change)),1),B(yn,{name:G.name},null,8,["name"]),K("span",kb,W(G.name),1)]),_:2},1032,["style","onClick"])),[[ce,G.file.previousPath?`${G.file.previousPath} → ${G.file.path}`:G.file.path]])]))),128))])],4)):ve("",!0)]))),128))])),(f(),we(la,{to:"body"},[I.value!==void 0?(f(),O("div",{key:0,class:"history-context-menu",style:It({left:`${I.value.x}px`,top:`${I.value.y}px`}),role:"menu"},[K("button",{type:"button",role:"menuitem",onClick:U},[B(De,{name:"paste"}),ke(" "+W(o(c)("generated.workspaceInspector.copyCommitId")),1)])],4)):ve("",!0)])),o(v)?Le((f(),we(ge,{key:3,link:"","aria-description":o(l)?void 0:o(it)(e.service.historyFailureCause.value),class:"history-load-more","aria-disabled":o(l),"aria-busy":o(l)||void 0,onClick:z[3]||(z[3]=oe=>!o(l)&&o(k)(o(v).resetPage,o(v).fetch))},{default:Z(()=>[o(l)?(f(),O(Ve,{key:0},[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-description","aria-disabled","aria-busy"])),[[ce,o(l)?"":o(it)(e.service.historyFailureCause.value)]]):o(l)?(f(),O("div",bb,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)])):ve("",!0),o(i)!==null&&!o(v)?(f(),O("div",{key:5,ref_key:"historyBoundary",ref:T,class:"history-boundary","aria-hidden":"true"},null,512)):ve("",!0)],512)}}}),Sb=dt(Ib,[["__scopeId","data-v-2917cf3c"]]),Cb={class:"content-search"},Tb={class:"content-search-options"},Eb=["disabled","aria-label","aria-busy"],Rb={key:1,class:"watch-status",role:"status"},Ab={key:2,class:"content-search-warning"},Nb=["aria-label"],Db=["aria-label","onClick"],Pb={class:"content-search-name"},Ob={key:0},Lb={key:0,class:"file-search-empty"},Wb=at({__name:"WorkspaceContentSearch",props:{service:{},enabled:{type:Boolean},nodeId:{},workspaceId:{}},emits:["open"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=x(""),i=x(!1),l=x(),v=a.service,u=v.appliedQuery,d=v.appliedUseRegex,w=v.matches,k=v.loading,T=v.error,p=v.truncated;async function g(){!a.enabled||a.nodeId===void 0||a.workspaceId===void 0||await v.search({nodeId:a.nodeId,workspaceId:a.workspaceId,query:s.value,useRegex:i.value})}function R(b){if(d.value)return[{text:b,match:!1}];const C=b.toLocaleLowerCase().indexOf(u.value.toLocaleLowerCase());if(C<0||u.value==="")return[{text:b,match:!1}];const I=C+u.value.length;return[{text:b.slice(0,C),match:!1},{text:b.slice(C,I),match:!0},{text:b.slice(I),match:!1}].filter(S=>S.text!=="")}return t({focus:()=>ut(()=>l.value?.focus()),snapshot:()=>({contentQuery:s.value,contentUseRegex:i.value}),restore:b=>{s.value=typeof b.contentQuery=="string"?b.contentQuery:"",i.value=b.contentUseRegex===!0}}),(b,C)=>{const I=jl,S=Ft,m=bt,A=St("tooltip");return f(),O("section",Cb,[K("div",Tb,[B(I,{modelValue:i.value,"onUpdate:modelValue":C[0]||(C[0]=L=>i.value=L),size:"small"},{default:Z(()=>[ke(W(o(c)("generated.workspaceInspector.useRegularExpression")),1)]),_:1},8,["modelValue"])]),K("form",{class:"explorer-toolbar content-search-toolbar",onSubmit:rt(g,["prevent"])},[B(S,{ref_key:"contentSearchInput",ref:l,modelValue:s.value,"onUpdate:modelValue":C[1]||(C[1]=L=>s.value=L),"aria-label":o(c)("generated.workspaceInspector.searchFileContents"),maxlength:"256",placeholder:o(c)("generated.workspaceInspector.searchFileContents2"),size:"small"},null,8,["modelValue","aria-label","placeholder"]),Le((f(),O("button",{class:"content-search-button file-explorer-utility-button utility-control",disabled:o(k),"aria-label":o(c)("generated.workspaceInspector.runContentSearch"),"aria-busy":o(k)||void 0,type:"submit"},[B(De,{name:"search"})],8,Eb)),[[A,o(c)("generated.workspaceInspector.runContentSearch2")]])],32),o(T)!==void 0?Le((f(),we(m,{key:0,"aria-description":o(k)?void 0:o(it)(o(T)),class:Ke(["watch-status",{failed:!o(k)}]),link:"","aria-disabled":o(k),"aria-busy":o(k)||void 0,onClick:C[2]||(C[2]=L=>o(v).retry())},{default:Z(()=>[o(k)?(f(),O(Ve,{key:0},[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-description","class","aria-disabled","aria-busy"])),[[A,o(k)?"":o(it)(o(T))]]):o(k)?(f(),O("p",Rb,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)])):ve("",!0),o(p)?(f(),O("p",Ab,W(o(c)("generated.workspaceInspector.resultsAreIncompleteNarrowTheSearchScope")),1)):ve("",!0),K("ul",{class:"content-search-results","aria-label":o(c)("generated.workspaceInspector.contentSearchResults")},[(f(!0),O(Ve,null,Je(o(w),L=>(f(),O("li",{key:`${L.path}:${L.line}:${L.column}`},[Le((f(),O("button",{"aria-label":L.path,type:"button",onClick:y=>r("open",L.path,L.line,L.column,y.ctrlKey||y.metaKey)},[K("span",Pb,[B(yn,{name:o(fr)(L.path)},null,8,["name"]),K("strong",null,W(L.path),1)]),K("small",null,W(o(c)("generated.workspaceInspector.line",{value0:L.line})),1),K("code",null,[(f(!0),O(Ve,null,Je(R(L.preview),(y,D)=>(f(),O(Ve,{key:D},[y.match?(f(),O("mark",Ob,W(y.text),1)):(f(),O(Ve,{key:1},[ke(W(y.text),1)],64))],64))),128))])],8,Db)),[[A,L.path]])]))),128)),o(u)!==""&&o(w).length===0&&!o(k)&&o(T)===void 0?(f(),O("li",Lb,W(o(c)("generated.workspaceInspector.noMatchingContent")),1)):ve("",!0)],8,Nb)])}}}),Mb=dt(Wb,[["__scopeId","data-v-1ed20ddc"]]),xb=["aria-label"],$b=["onDragenter","onDragleave","onDrop","onMouseenter","onFocusin","onContextmenu"],Fb=["aria-label","data-file-path","aria-expanded","aria-selected","aria-level","disabled","tabindex","draggable","onClick","onKeydown","onDragstart"],Ub={key:1,class:"tree-chevron"},Vb={class:"tree-name"},qb=["aria-label","disabled","tabindex"],Hb={key:1,class:"file-tree-more","aria-hidden":"true"},Bb={key:1,role:"status"},Gb={key:0,class:"file-tree-empty"},zb=500,Kb=at({__name:"WorkspaceFileTree",props:{root:{},rootPath:{},filter:{},selectedPath:{},disabled:{type:Boolean},mutationsEnabled:{type:Boolean},localFileManagerEnabled:{type:Boolean},mobileViewport:{type:Boolean}},emits:["toggle","open","openExternal","action","move","loadMore","select","dropFiles","invalidDrop"],setup(e,{expose:t,emit:n}){const a=e,r=Xa().locale,s=n,i=x(),l=x("."),v=x(),u=x(),d=x(),w=x(!1),k=x(),T=x(),p=j(()=>sy(a.root,a.filter)),g=x(0),R=x(0),b=x(24);let C,I;const S=j(()=>{const M=ly(p.value.length,g.value,R.value,b.value,8);return{...M,rows:p.value.slice(M.start,M.end)}});wr(()=>{if(a.disabled||a.filter.trim()!==""||R.value<=0)return;const M=Math.floor(g.value/b.value),ee=Math.ceil((g.value+R.value)/b.value),le=p.value.slice(M,ee).find(Ee=>Ee.loadMore&&Ee.node.expanded&&!Ee.node.loading&&Ee.node.failedAppend===void 0);le&&s("loadMore",le.node)});const m=j(()=>a.filter.trim().length===0||p.value.some(M=>M.node.path!=="."));function A(M,ee){l.value=M.path,M.kind==="DIRECTORY"?(s("select",M),s("toggle",M)):ee?.ctrlKey===!0||ee?.metaKey===!0?s("openExternal",M):s("open",M)}function L(M,ee){const le=p.value.filter(xe=>!xe.loadMore),Ee=le.findIndex(xe=>xe.node.path===ee.node.path);if(M.key==="ArrowDown"||M.key==="ArrowUp"){M.preventDefault();const xe=M.key==="ArrowDown"?1:-1,Me=le[Math.max(0,Math.min(le.length-1,Ee+xe))];Me!==void 0&&y(Me.node.path);return}M.key==="ArrowRight"&&ee.node.kind==="DIRECTORY"&&!ee.node.expanded||M.key==="ArrowLeft"&&ee.node.kind==="DIRECTORY"&&ee.node.expanded?(M.preventDefault(),s("toggle",ee.node)):(M.key==="Enter"||M.key===" ")&&(M.preventDefault(),A(ee.node))}function y(M){l.value=M,H(M),ut(()=>D(M)?.focus())}function D(M){const ee=CSS.escape(M);return i.value?.querySelector(`[data-file-path="${ee}"]`)??void 0}async function E(M,ee=()=>!0){ee()&&(H(M),await ut(),ee()&&D(M)?.scrollIntoView({block:"nearest",inline:"nearest"}))}function H(M){const ee=p.value.findIndex(Me=>!Me.loadMore&&Me.node.path===M),le=i.value;if(ee<0||le===void 0)return;const Ee=ee*b.value,xe=Ee+b.value;Ee<le.scrollTop?le.scrollTop=Ee:xe>le.scrollTop+le.clientHeight&&(le.scrollTop=xe-le.clientHeight),g.value=le.scrollTop}function X(){const M=i.value;if(M===void 0)return;g.value=M.scrollTop,R.value=M.clientHeight;const ee=Number.parseFloat(getComputedStyle(M).getPropertyValue("--mar-compact-row-size"));Number.isFinite(ee)&&ee>0&&(b.value=ee)}let Y,U;Dt(()=>{X(),a.selectedPath!==void 0&&E(a.selectedPath),Y=new ResizeObserver(X),i.value!==void 0&&Y.observe(i.value),U=xt.register({command:"workspaceFileTree.dismissMenu",scope:"overlay",priority:100,modalOwner:()=>i.value,keys:[{key:"Escape"}],when:M=>{const ee=i.value?.querySelector('.file-tree-more[aria-expanded="true"]');if(!w.value||!ee||!(M.target instanceof Node))return!1;const le=document.getElementById(ee.getAttribute("aria-controls")??"");return ee.contains(M.target)||le?.contains(M.target)===!0||M.target instanceof Element&&M.target.closest(".file-tree-row-shell")?.contains(ee)===!0},execute:()=>{const M=i.value?.querySelector('.file-tree-more[aria-expanded="true"]');return M?(M.click(),M.focus({preventScroll:!0}),"HANDLED"):"IGNORED"}})}),mt(()=>{Y?.disconnect(),U?.(),V()}),He(()=>p.value.length,()=>{ut(X)});function Q(M,ee){if(V(),v.value=void 0,u.value!==void 0){const Me=u.value;if(u.value=void 0,a.mobileViewport)return;ee?.kind==="DIRECTORY"&&ee.path!==Me.path?s("move",Me,ee):s("invalidDrop");return}if([...M.dataTransfer?.items??[]].some(Me=>Me.webkitGetAsEntry?.()?.isDirectory===!0)){s("invalidDrop");return}const Ee=[...M.dataTransfer?.files??[]];if(Ee.length===0){s("invalidDrop");return}const xe=ee?.kind==="DIRECTORY"?ee.path:".";s("dropFiles",xe,Ee)}function $(M){const ee=M.dataTransfer;return ee!==null&&(Array.from(ee.types).includes("Files")||[...ee.items].some(le=>le.kind==="file"))}function V(M){M!==void 0&&I!==M||(C!==void 0&&clearTimeout(C),C=void 0,I=void 0)}function N(M){I!==M.path&&(V(),I=M.path,C=setTimeout(()=>{I===M.path&&(C=void 0,I=void 0,M.kind==="DIRECTORY"&&!M.expanded&&s("toggle",M))},zb))}function h(){V(),v.value="."}function F(){V(),v.value=void 0}function z(M,ee){v.value=ee.path,I!==ee.path&&V(),ee.kind==="DIRECTORY"&&!ee.expanded?u.value!==void 0?(V(),s("toggle",ee)):$(M)?N(ee):(V(),s("toggle",ee)):V(ee.path),M.stopPropagation(),M.preventDefault()}function fe(M,ee){const le=M.currentTarget,Ee=M.relatedTarget;le instanceof HTMLElement&&Ee instanceof Node&&le.contains(Ee)||(V(ee),v.value===ee&&(v.value=void 0))}function J(M){return a.mutationsEnabled&&!a.mobileViewport&&M.path!=="."}function re(M,ee){if(!J(ee)){M.preventDefault();return}V(),u.value=ee,M.dataTransfer?.setData("application/x-mar-workspace-path",ee.path),M.dataTransfer!==null&&(M.dataTransfer.effectAllowed="move")}function ge(){V(),u.value=void 0}function ce(M,ee){(M==="OPEN"||M==="OPEN_EXTERNAL"||M==="PREVIEW_HTML"||M==="CREATE_FILE"||M==="CREATE_DIRECTORY"||M==="DOWNLOAD"||M==="COPY_PATH"||M==="COPY_ABSOLUTE_PATH"||M==="REVEAL_LOCAL"||M==="RENAME"||M==="DELETE"||M==="UPLOAD")&&s("action",M,ee)}function oe(M){return a.mobileViewport||k.value===M||T.value===M||w.value&&d.value===M}function P(M){const ee=M.currentTarget;ee instanceof HTMLElement&&M.relatedTarget instanceof Node&&ee.contains(M.relatedTarget)||(T.value=void 0)}function G(M,ee){k.value=M,ut(()=>ee.querySelector(".file-tree-more")?.click())}function ue(M,ee){ee.preventDefault();const le=ee.currentTarget.closest(".file-tree-row-shell");d.value=M,le!==null&&G(M,le)}function ne(M,ee){!M&&d.value!==ee||(w.value=M,d.value=M?ee:void 0)}return t({reveal:E}),(M,ee)=>{const le=ln,Ee=sn,xe=rn,Me=bt,Se=St("tooltip");return f(),O("div",{ref_key:"container",ref:i,class:Ke(["workspace-file-tree",{"is-root-drop-target":v.value==="."}]),role:"tree","aria-label":o(c)("generated.workspaceFileTree.fileTree"),onDragenter:rt(h,["prevent"]),onDragleave:rt(F,["self"]),onDragover:ee[5]||(ee[5]=rt(()=>{},["prevent"])),onDrop:ee[6]||(ee[6]=rt(ye=>Q(ye),["prevent"])),onScroll:X},[K("div",{class:"file-tree-virtual-space",style:It({height:`${S.value.totalHeight}px`})},[K("div",{class:"file-tree-virtual-window",style:It({transform:`translateY(${S.value.offset}px)`})},[(f(!0),O(Ve,null,Je(S.value.rows,(ye,Fe,Ye,nt)=>{const ae=[ye.node,ye.node.name,e.rootPath,ye.node.kind,ye.node.expanded,ye.node.loading,ye.node.failedAppend,ye.depth,ye.loadMore,e.selectedPath===ye.node.path,v.value===ye.node.path,l.value===ye.node.path,oe(ye.node.path),e.disabled,e.mutationsEnabled,e.mobileViewport,o(r)];if(nt&&nt.el&&nt.key===`${ye.node.path}:${ye.loadMore?"more":"node"}`&&Af(nt,ae))return nt;const me=(f(),O(Ve,{key:`${ye.node.path}:${ye.loadMore?"more":"node"}`},[ye.loadMore?(f(),O("div",{key:1,class:"file-tree-load-more",style:It({"--tree-depth":ye.depth})},[ye.node.failedAppend!==void 0?Le((f(),we(Me,{key:0,class:"utility-control",link:"","aria-description":ye.node.loading?void 0:o(it)(ye.node.failure),"aria-disabled":ye.node.loading||e.disabled,"aria-busy":ye.node.loading||void 0,onClick:Pe=>!ye.node.loading&&!e.disabled&&s("loadMore",ye.node)},{default:Z(()=>[ye.node.loading?(f(),O(Ve,{key:0},[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:2},1032,["aria-description","aria-disabled","aria-busy","onClick"])),[[Se,ye.node.loading?"":o(it)(ye.node.failure)]]):ye.node.loading?(f(),O("span",Bb,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)])):ve("",!0)],4)):(f(),O("div",{key:0,class:Ke(["file-tree-row-shell",{selected:e.selectedPath===ye.node.path,"drop-target":v.value===ye.node.path}]),onDragenter:rt(Pe=>z(Pe,ye.node),["stop","prevent"]),onDragleave:rt(Pe=>fe(Pe,ye.node.path),["stop"]),onDragover:ee[1]||(ee[1]=rt(()=>{},["stop","prevent"])),onDrop:rt(Pe=>Q(Pe,ye.node),["stop","prevent"]),onMouseenter:Pe=>k.value=ye.node.path,onMouseleave:ee[2]||(ee[2]=Pe=>k.value=void 0),onFocusin:Pe=>T.value=ye.node.path,onFocusout:P,onContextmenu:Pe=>ue(ye.node.path,Pe)},[Le((f(),O("button",{"aria-label":ye.node.path==="."?e.rootPath??ye.node.name:ye.node.path,class:"file-tree-row",type:"button",role:"treeitem","data-file-path":ye.node.path,"aria-expanded":ye.node.kind==="DIRECTORY"?ye.node.expanded:void 0,"aria-selected":e.selectedPath===ye.node.path,"aria-level":ye.depth+1,disabled:e.disabled,tabindex:l.value===ye.node.path?0:-1,style:It({"--tree-depth":ye.depth}),draggable:J(ye.node),onClick:Pe=>A(ye.node,Pe),onKeydown:Pe=>L(Pe,ye),onDragstart:Pe=>re(Pe,ye.node),onDragend:ge},[ye.node.kind==="DIRECTORY"?(f(),we(De,{key:0,name:"chevron-right",class:Ke(["tree-chevron",{expanded:ye.node.expanded}])},null,8,["class"])):(f(),O("span",Ub)),B(yn,{class:"tree-kind",name:ye.node.name,kind:ye.node.kind},null,8,["name","kind"]),K("span",Vb,W(ye.node.name),1)],44,Fb)),[[Se,ye.node.path==="."?e.rootPath??ye.node.name:ye.node.path]]),oe(ye.node.path)?(f(),we(xe,{key:0,trigger:"click",placement:"bottom-start",persistent:!1,onCommand:Pe=>ce(Pe,ye.node),onVisibleChange:Pe=>ne(Pe,ye.node.path)},{dropdown:Z(()=>[B(Ee,null,{default:Z(()=>[ye.node.kind==="FILE"?(f(),we(le,{key:0,command:"OPEN"},{default:Z(()=>[B(De,{name:"view"}),ke(W(o(c)("generated.workspaceFileTree.open")),1)]),_:1})):ve("",!0),ye.node.kind==="FILE"?(f(),we(le,{key:1,command:"OPEN_EXTERNAL"},{default:Z(()=>[B(De,{name:"external-link"}),ke(W(o(c)("generated.workspaceFileTree.openInNewWindow")),1)]),_:1})):ve("",!0),ye.node.kind==="FILE"&&o(Ka)(ye.node.path)?(f(),we(le,{key:2,command:"PREVIEW_HTML"},{default:Z(()=>[B(De,{name:"view"}),ke(W(o(c)("htmlPreview.preview")),1)]),_:1})):ve("",!0),ye.node.kind==="FILE"?(f(),we(le,{key:3,command:"DOWNLOAD"},{default:Z(()=>[B(De,{name:"download"}),ke(W(o(c)("generated.workspaceFileTree.download")),1)]),_:1})):ve("",!0),e.mutationsEnabled&&ye.node.kind==="DIRECTORY"?(f(),we(le,{key:4,command:"CREATE_FILE"},{default:Z(()=>[B(De,{name:"document-add"}),ke(W(o(c)("generated.workspaceFileTree.newFile")),1)]),_:1})):ve("",!0),e.mutationsEnabled&&ye.node.kind==="DIRECTORY"?(f(),we(le,{key:5,command:"CREATE_DIRECTORY"},{default:Z(()=>[B(De,{name:"folder-add"}),ke(W(o(c)("generated.workspaceFileTree.newFolder")),1)]),_:1})):ve("",!0),ye.node.kind==="DIRECTORY"?(f(),we(le,{key:6,command:"UPLOAD"},{default:Z(()=>[B(De,{name:"upload"}),ke(W(o(c)("generated.workspaceFileTree.uploadFiles")),1)]),_:1})):ve("",!0),B(le,{command:"COPY_PATH"},{default:Z(()=>[B(De,{name:"copy"}),ke(W(o(c)("generated.workspaceFileTree.copyRelativePath")),1)]),_:1}),B(le,{command:"COPY_ABSOLUTE_PATH",disabled:!e.rootPath},{default:Z(()=>[B(De,{name:"copy"}),ke(W(o(c)("generated.workspaceFileTree.copyAbsolutePath")),1)]),_:1},8,["disabled"]),e.localFileManagerEnabled?(f(),we(le,{key:7,command:"REVEAL_LOCAL"},{default:Z(()=>[B(De,{name:"folder-open"}),ke(W(o(c)("generated.workspaceFileTree.openInLocalFileManager")),1)]),_:1})):ve("",!0),e.mutationsEnabled&&ye.node.path!=="."?(f(),we(le,{key:8,command:"RENAME"},{default:Z(()=>[B(De,{name:"edit"}),ke(W(o(c)("generated.workspaceFileTree.rename")),1)]),_:1})):ve("",!0),e.mutationsEnabled&&ye.node.path!=="."?(f(),we(le,{key:9,command:"DELETE",divided:""},{default:Z(()=>[B(De,{name:"delete"}),ke(W(o(c)("generated.workspaceFileTree.delete")),1)]),_:1})):ve("",!0)]),_:2},1024)]),default:Z(()=>[K("button",{class:Ke(["file-tree-more utility-control",{"is-visible":oe(ye.node.path)}]),type:"button","aria-label":o(c)("generated.workspaceFileTree.moreActionsFor",{value0:ye.node.name}),disabled:e.disabled,tabindex:oe(ye.node.path)?0:-1,onClick:ee[0]||(ee[0]=rt(()=>{},["stop"]))},[B(De,{name:"more"})],10,qb)]),_:2},1032,["onCommand","onVisibleChange"])):(f(),O("span",Hb))],42,$b))],64));return me.memo=ae,me},ee,3),128))],4)],4),m.value?ve("",!0):(f(),O("p",Gb,W(o(c)("workspaceDisplayFilter.empty")),1))],42,xb)}}}),jb=dt(Kb,[["__scopeId","data-v-ae226bb2"]]),_b={class:"file-explorer"},Yb={class:"explorer-toolbar"},Qb=["disabled","aria-label","aria-busy"],Jb=["disabled","aria-label","aria-busy"],Xb={key:2,class:"watch-status",role:"status"},Zb={class:"upload-dialog-target"},eI={class:"upload-dialog-list"},tI={key:1},nI={key:2},aI=at({__name:"WorkspaceFilesPanel",props:{service:{},workspacePath:{},localFileManagerEnabled:{type:Boolean},mobileViewport:{type:Boolean},visible:{type:Boolean},watchStatus:{}},emits:["refresh","retryWatch","open","html","download","failure","notice"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=a.service,i=s.tree,l=s.refreshing,v=s.preparing,u=x(""),d=x(),w=x(),k=x(!1),T=x([]),p=x("."),g=x();function R(D,E){return D==="."?E:`${D}/${E}`}async function b(D,E=""){try{return(await Nt.prompt("",D,{closeIcon:qe("close"),inputValue:E,inputPlaceholder:c("generated.workspaceInspector.enterAName"),confirmButtonText:c("generated.workspaceInspector.confirm"),cancelButtonText:c("generated.workspaceInspector.cancel"),inputValidator:X=>X.trim().length>0&&X===X.trim()&&!X.includes("/")&&!X.includes("\\")&&X!=="."&&X!==".."&&X!==".git"?!0:c("generated.workspaceInspector.enterAValidSingleLevelName")})).value}catch{return}}async function C(D,E){const H=s.captureTarget();if(H===void 0)return;const X=()=>s.isCurrentTarget(H);try{if(D==="OPEN"){r("open",E.path,!1);return}if(D==="OPEN_EXTERNAL"){r("open",E.path,!0);return}if(D==="PREVIEW_HTML"){r("html",E.path);return}if(D==="COPY_PATH"){await navigator.clipboard.writeText(E.path),X()&&r("notice",c("generated.workspaceInspector.relativePathCopied"),"info");return}if(D==="COPY_ABSOLUTE_PATH"){if(!a.workspacePath)return;await navigator.clipboard.writeText(sg(a.workspacePath,E.path)),X()&&r("notice",c("generated.workspaceInspector.absolutePathCopied"),"info");return}if(D==="REVEAL_LOCAL"){a.localFileManagerEnabled===!0&&await s.revealLocal(H,E.path);return}if(D==="DOWNLOAD"){r("download",E.path);return}if(D==="UPLOAD"){i.select(E),S();return}if(D==="CREATE_FILE"||D==="CREATE_DIRECTORY"){const Y=await b(D==="CREATE_FILE"?c("generated.workspaceInspector.newFile"):c("generated.workspaceInspector.newFolder"));if(Y===void 0||!X())return;await s.mutate(H,D,R(E.path,Y));return}if(D==="RENAME"){const Y=await b(c("generated.workspaceInspector.rename"),E.name);if(Y===void 0||Y===E.name||!X())return;const U=E.path.includes("/")?E.path.slice(0,E.path.lastIndexOf("/")):".";await s.mutate(H,"MOVE",E.path,R(U,Y));return}if(await Nt.confirm(E.kind==="DIRECTORY"?c("generated.workspaceInspector.deleteFolderAndAllOfItsContents",{value0:E.name}):c("generated.workspaceInspector.deleteFile",{value0:E.name}),c("generated.workspaceInspector.confirmDeletion"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("generated.workspaceInspector.delete"),cancelButtonText:c("generated.workspaceInspector.cancel2")}),!X())return;await s.mutate(H,"DELETE",E.path)}catch(Y){if(Y==="cancel"||Y==="close")return;X()&&r("failure",Y,c("generated.workspaceInspector.fileOperation"))}}async function I(D,E){const H=s.captureTarget();H!==void 0&&await s.mutate(H,"MOVE",D.path,R(E.path,D.name),"move")}function S(){d.value?.click()}async function m(D,E=i.uploadDirectory()){const H=await s.preflight([...D],E);H===void 0||!a.visible||!s.isCurrentPreflight(H)||(g.value=H,T.value=H.files.map((X,Y)=>({...H.candidates[Y],id:crypto.randomUUID(),file:X,overwrite:!1})),p.value=E,k.value=!0)}function A(D){const E=D.target;E.files!==null&&m(E.files),E.value=""}function L(D,E){if(E.length===0){r("notice",c("generated.workspaceInspector.onlyFilesCanBeDroppedCompressFolders"),"warning");return}m(E,D)}function y(){const D=g.value,E=D===void 0?void 0:s.submit(D,T.value.map(H=>H.overwrite));E!==void 0&&E>0&&r("notice",c("generated.workspaceInspector.filesWereNotUploadedBecauseOfConflicts",{value0:E}),"warning"),k.value=!1,T.value=[],g.value=void 0}return He(()=>a.visible,(D,E)=>{E&&!D&&(k.value=!1,T.value=[],g.value=void 0)},{flush:"sync"}),t({chooseUploadFiles:S,reveal:(D,E)=>w.value?.reveal(D,E),invalidate:()=>{g.value=void 0},reset:()=>{k.value=!1,T.value=[],g.value=void 0,u.value=""}}),(D,E)=>{const H=Ft,X=bt,Y=Un,U=wn,Q=Xt,$=St("tooltip");return f(),O("section",_b,[K("div",Yb,[K("input",{ref_key:"uploadInput",ref:d,class:"workspace-upload-input",type:"file",multiple:"",onChange:A},null,544),B(H,{modelValue:u.value,"onUpdate:modelValue":E[0]||(E[0]=V=>u.value=V),class:"file-display-filter","aria-label":o(c)("workspaceDisplayFilter.label"),clearable:"",placeholder:o(c)("workspaceDisplayFilter.placeholder"),size:"small","clear-icon":o(qe)("clear-input")},{prefix:Z(()=>[B(De,{name:"search"})]),_:1},8,["modelValue","aria-label","placeholder","clear-icon"]),Le((f(),O("button",{class:"file-explorer-utility-button utility-control",disabled:o(l),"aria-label":o(c)("generated.workspaceInspector.refreshFiles"),"aria-busy":o(l)||void 0,type:"button",onClick:E[1]||(E[1]=V=>r("refresh"))},[B(De,{name:"refresh"})],8,Qb)),[[$,o(c)("generated.workspaceInspector.refreshFiles2")]]),Le((f(),O("button",{class:"file-explorer-utility-button utility-control",disabled:o(v),"aria-label":o(c)("generated.workspaceInspector.uploadFiles"),"aria-busy":o(v)||void 0,type:"button",onClick:S},[o(v)?(f(),we(De,{key:0,name:"loading-action"})):(f(),we(De,{key:1,name:"document-add"}))],8,Jb)),[[$,o(c)("generated.workspaceInspector.uploadFiles2")]])]),(e.watchStatus==="loading"||e.watchStatus==="failed")&&!o(l)&&!o(i).refreshError.value?(f(),we(X,{key:0,class:Ke(["watch-status",{failed:e.watchStatus==="failed"}]),link:"","aria-disabled":e.watchStatus==="loading","aria-busy":e.watchStatus==="loading"||void 0,onClick:E[2]||(E[2]=V=>e.watchStatus==="failed"&&r("retryWatch"))},{default:Z(()=>[e.watchStatus==="loading"?(f(),O(Ve,{key:0},[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["class","aria-disabled","aria-busy"])):ve("",!0),o(i).refreshError.value?Le((f(),we(X,{key:1,"aria-description":o(l)?void 0:o(it)(o(i).refreshError.value.cause),class:Ke(["watch-status",{failed:!o(l)}]),link:"","aria-disabled":o(l),"aria-busy":o(l)||void 0,onClick:E[3]||(E[3]=V=>!o(l)&&r("refresh"))},{default:Z(()=>[o(l)?(f(),O(Ve,{key:0},[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-description","class","aria-disabled","aria-busy"])),[[$,o(l)?"":o(it)(o(i).refreshError.value.cause)]]):o(l)?(f(),O("p",Xb,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.workspaceInspector.loading")),1)])):ve("",!0),e.visible?(f(),we(jb,{key:3,ref_key:"fileTreeView",ref:w,root:o(i).root.value,"root-path":e.workspacePath,filter:u.value,"selected-path":o(i).selectedPath.value,disabled:o(l),"mutations-enabled":!0,"local-file-manager-enabled":e.localFileManagerEnabled,"mobile-viewport":e.mobileViewport,onToggle:o(i).toggle,onOpen:E[4]||(E[4]=V=>r("open",V.path,!1)),onOpenExternal:E[5]||(E[5]=V=>r("open",V.path,!0)),onAction:C,onMove:I,onLoadMore:o(i).loadMore,onSelect:o(i).select,onDropFiles:L,onInvalidDrop:E[6]||(E[6]=V=>r("notice",o(c)("generated.workspaceInspector.foldersCannotBeDroppedCompressThemBefore"),"warning"))},null,8,["root","root-path","filter","selected-path","disabled","local-file-manager-enabled","mobile-viewport","onToggle","onLoadMore","onSelect"])):ve("",!0),k.value?(f(),we(Q,{key:4,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),modelValue:k.value,"onUpdate:modelValue":E[8]||(E[8]=V=>k.value=V),class:"upload-confirm-dialog",title:o(c)("generated.workspaceInspector.confirmFileUpload"),"append-to-body":"",width:"560px","close-icon":o(qe)("close")},{footer:Z(()=>[B(X,{onClick:E[7]||(E[7]=V=>k.value=!1)},{default:Z(()=>[ke(W(o(c)("generated.workspaceInspector.cancel4")),1)]),_:1}),B(X,{type:"primary",onClick:y},{default:Z(()=>[ke(W(o(c)("generated.workspaceInspector.startUpload")),1)]),_:1})]),default:Z(()=>[K("p",Zb,[ke(W(o(c)("generated.workspaceInspector.targetDirectory"))+": ",1),K("code",null,W(p.value),1)]),K("ul",eI,[(f(!0),O(Ve,null,Je(T.value,V=>(f(),O("li",{key:V.id},[K("span",null,[K("strong",null,W(V.file.name),1),K("small",null,W(o(ja)(V.file.size)),1)]),V.status==="EXISTS_FILE"?(f(),we(U,{key:0,modelValue:V.overwrite,"onUpdate:modelValue":N=>V.overwrite=N,"aria-label":o(c)("generated.workspaceInspector.existingFileHandling"),size:"small","clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down")},{default:Z(()=>[B(Y,{value:!1,label:o(c)("generated.workspaceInspector.skip")},null,8,["label"]),B(Y,{value:!0,label:o(c)("generated.workspaceInspector.overwrite")},null,8,["label"])]),_:1},8,["modelValue","onUpdate:modelValue","aria-label","clear-icon","suffix-icon"])):V.status==="READY"?(f(),O("small",tI,W(o(c)("generated.workspaceInspector.newFile2")),1)):(f(),O("small",nI,W(o(c)("generated.workspaceInspector.cannotUpload"))+": "+W(V.status==="EXISTS_DIRECTORY"?o(c)("generated.workspaceInspector.aDirectoryHasTheSameName"):o(c)("generated.workspaceInspector.invalidNameOrDuplicateInBatch")),1))]))),128))])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ve("",!0)])}}}),oI=dt(aI,[["__scopeId","data-v-d6b296ea"]]),rI={class:"html-browser"},iI={class:"html-browser-file-name"},sI={class:"html-browser-actions"},lI={key:0,class:"html-browser-error",role:"alert"},cI=at({__name:"WorkspaceHtmlBrowser",props:{nodeId:{},workspaceId:{},path:{},csrfToken:{},renewCsrfToken:{type:Function}},emits:["source","external"],setup(e,{emit:t}){const n=e,a=t,r=rg(Za({csrfToken:()=>n.csrfToken,renewCsrfToken:()=>n.renewCsrfToken()})),s=r.state;function i(){r.open({nodeId:n.nodeId,workspaceId:n.workspaceId,path:n.path})}return He(()=>[n.nodeId,n.workspaceId,n.path],i,{immediate:!0}),mt(r.release),(l,v)=>{const u=bt,d=St("tooltip");return f(),O("section",rI,[K("header",null,[Le((f(),O("span",iI,[ke(W(e.path.split("/").at(-1)),1)])),[[d,e.path]]),K("div",sI,[Le((f(),we(u,{text:"",circle:"",size:"small","aria-label":o(c)("htmlPreview.reload"),onClick:i},{default:Z(()=>[B(De,{name:"refresh"})]),_:1},8,["aria-label"])),[[d,o(c)("htmlPreview.reload")]]),Le((f(),we(u,{text:"",circle:"",size:"small","aria-label":o(c)("htmlPreview.source"),onClick:v[0]||(v[0]=w=>a("source",e.path))},{default:Z(()=>[B(De,{name:"document"})]),_:1},8,["aria-label"])),[[d,o(c)("htmlPreview.source")]]),Le((f(),we(u,{text:"",circle:"",size:"small","aria-label":o(c)("htmlPreview.external"),onClick:v[1]||(v[1]=w=>a("external",e.path))},{default:Z(()=>[B(De,{name:"external-link"})]),_:1},8,["aria-label"])),[[d,o(c)("htmlPreview.external")]])])]),o(s).error!==void 0?(f(),O("p",lI,W(o(Cr)(o(s).error,e.path)),1)):ve("",!0),B(og,{url:o(s).url,loading:o(s).loading,title:e.path},null,8,["url","loading","title"])])}}}),dI=dt(cI,[["__scopeId","data-v-d1ed0624"]]),uI={class:"session-group-tabs"},vI=["aria-label"],fI=["data-group","aria-selected","tabindex","aria-label","onClick","onKeydown"],pI={class:"group-label"},gI=at({__name:"SessionGroupTabs",props:{modelValue:{}},emits:["update:modelValue"],setup(e,{emit:t}){const n=t,a=["MAIN","CHILD"];function r(i){return c(i==="MAIN"?"sessionGroups.main":"sessionGroups.child")}function s(i,l){if(!["ArrowLeft","ArrowRight","Home","End"].includes(i.key))return;i.preventDefault();const v=i.key==="Home"?"MAIN":i.key==="End"||l==="MAIN"?"CHILD":"MAIN";n("update:modelValue",v),i.currentTarget.parentElement?.querySelector(`[data-group="${v}"]`)?.focus()}return(i,l)=>(f(),O("div",uI,[K("div",{class:"group-options",role:"tablist","aria-label":o(c)("sessionGroups.label")},[(f(),O(Ve,null,Je(a,v=>K("button",{key:v,type:"button",role:"tab","data-group":v,"aria-selected":e.modelValue===v,tabindex:e.modelValue===v?0:-1,"aria-label":r(v),onClick:u=>n("update:modelValue",v),onKeydown:u=>s(u,v)},[K("span",pI,W(o(c)(v==="MAIN"?"sessionGroups.mainTab":"sessionGroups.childTab")),1)],40,fI)),64))],8,vI)]))}}),yc=dt(gI,[["__scopeId","data-v-54b2f30b"]]);function mI(e){const t=x([]),n=x(!1);async function a(r,s){n.value=!0;try{const i=await e(`/api/workspaces/${encodeURIComponent(s)}/effective-skills?nodeId=${encodeURIComponent(r)}`);t.value=i.skills}finally{n.value=!1}}return{skills:t,loading:n,load:a}}const _n=new WeakMap;function Zs(e,t){const n=Array.from(e.children).filter(a=>a instanceof HTMLElement&&a.classList.contains("mar-session-reorder-item"));return t.items.flatMap((a,r)=>{const s=n[r];return s===void 0?[]:[{key:a.key,element:s}]})}function Yn(e){for(const t of e.animations)t.cancel();e.animations.clear()}const wc={mounted(e,t){const n=window.matchMedia("(prefers-reduced-motion: reduce)"),a={rendered:t.value,animations:new Set,motionPreference:n,onMotionPreferenceChange(r){r.matches&&Yn(a)},onPointerDown(r){const s=r.target.closest('.mar-session-reorder-item[draggable="true"]');r.button===0&&s?.parentElement===e&&Yn(a)}};n.addEventListener("change",a.onMotionPreferenceChange),e.addEventListener("pointerdown",a.onPointerDown,!0),_n.set(e,a)},beforeUpdate(e,t){const n=_n.get(e);if(n===void 0)return;const a=n.pending?.next??n.rendered,r=n.pending??={previous:n.rendered,next:t.value};if(r.next=t.value,r.positions!==void 0||!Hi(r.previous,r.next)||n.motionPreference.matches)return;const s=e.getBoundingClientRect().top;r.positions=new Map(Zs(e,a).map(i=>[i.key,i.element.getBoundingClientRect().top-s]))},updated(e){const t=_n.get(e);if(t===void 0)return;const n=t.pending;if(n===void 0)return;delete t.pending;const{previous:a,next:r,positions:s}=n;t.rendered=r;const i=t.motionPreference.matches;if(!Hi(a,r)||i||s===void 0){(!(a.ready&&r.ready&&a.context===r.context&&a.items.length===r.items.length&&a.items.every((d,w)=>d.key===r.items[w]?.key&&d.pin===r.items[w]?.pin))||i)&&Yn(t);return}Yn(t);const l=e.getBoundingClientRect().top,v=Zs(e,r).flatMap(u=>{const d=s.get(u.key);return d===void 0?[]:[{element:u.element,delta:d-(u.element.getBoundingClientRect().top-l)}]});for(const u of v){if(Math.abs(u.delta)<.5)continue;const d=u.element.animate([{transform:`translateY(${u.delta}px)`},{transform:"translateY(0px)"}],{duration:220,easing:"cubic-bezier(0.2, 0, 0, 1)"});t.animations.add(d);const w=()=>t.animations.delete(d);d.finished.then(w,w)}},beforeUnmount(e){const t=_n.get(e);t!==void 0&&(t.motionPreference.removeEventListener("change",t.onMotionPreferenceChange),e.removeEventListener("pointerdown",t.onPointerDown,!0),Yn(t),_n.delete(e))}},hI={class:"schedule-time-fields"},yI={class:"schedule-timezone"},wI={class:"schedule-timezone"},kI={class:"schedule-enabled"},bI={class:"schedule-timezone"},II={key:3,class:"schedule-history"},SI={key:0},CI={key:1},TI={key:2},EI={key:3},RI={key:4,class:"schedule-history"},AI={key:0},NI=at({__name:"SessionScheduleDialog",props:{modelValue:{type:Boolean},session:{},nodeId:{},workspaceId:{},request:{type:Function}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,a=t,r=j({get:()=>n.modelValue,set:oe=>{l.value||a("update:modelValue",oe)}}),s=x(!1),i=x(),l=j(()=>i.value!==void 0),v=x(null),u=x(!1),d=x(""),w=x(null),k=x([]),T=x(1),p=x(0),g=x([]),R=x(!1),b=x(),C=Fn({objective:"",time:"09:00",hourlyTime:"00:00",cronExpression:""}),I={objective:[{validator:(oe,P,G)=>P.trim().length>0&&P.trim().length<=2e4?G():G(new Error(c("generated.scheduledSession.objectiveRequired"))),trigger:"blur"}],time:[{validator:(oe,P,G)=>P?G():G(new Error(c("generated.scheduledSession.timeRequired")))}],hourlyTime:[{validator:(oe,P,G)=>P?G():G(new Error(c("generated.scheduledSession.timeRequired")))}],cronExpression:[{validator:(oe,P,G)=>P!==null&&N(P)?G():G(new Error(c("generated.scheduledSession.cronRequired"))),trigger:"blur"}]},S=x("SIMPLE"),m=x("DAILY"),A=x(1),L=x("UTC"),y=x(!1),D=x(!1),E=j(()=>u.value?c(v.value===null?"generated.scheduledSession.notConfigured":y.value?"generated.scheduledSession.enabled":"generated.scheduledSession.paused"):"");let H=0,X=!1;mt(()=>{X=!0,H++}),He(()=>[n.modelValue,n.session?.id,n.nodeId,n.workspaceId],()=>{H++,v.value=null,u.value=!1,y.value=!1,d.value="",w.value=null,k.value=[],T.value=1,p.value=0,s.value=!1,g.value=[],C.objective="",C.cronExpression="",S.value="SIMPLE",n.modelValue&&n.session!==void 0&&U()},{immediate:!0});function Y(){return`/api/agent-sessions/${encodeURIComponent(n.session.id)}/schedule`}async function U(oe=1,P=!0){if(X||n.session===void 0)return;const G=++H,ue=n.session.id;s.value=!0,P&&(u.value=!1);try{const ne=new URLSearchParams({nodeId:n.nodeId,workspaceId:n.workspaceId,occurrencePage:String(oe)}),M=await n.request(`/api/agent-sessions/${encodeURIComponent(ue)}/schedule?${ne}`);if(G!==H||!n.modelValue||n.session?.id!==ue||(k.value=M.occurrences,T.value=M.occurrencePage??1,p.value=M.occurrenceTotal??0,!P))return;if(v.value=M.task,d.value=M.currentUserName,w.value=M.notifyUserName,g.value=M.proposals,R.value=M.canResolveProposals,L.value=M.nodeTimezone,M.task!==null){C.objective=M.task.objective,y.value=M.task.enabled,D.value=M.task.notifyOnTerminal,C.cronExpression=M.task.cron;const ee=V(M.task.cron);ee===void 0?S.value="CRON":(S.value="SIMPLE",m.value=ee.cadence,C.time=ee.time,C.hourlyTime=ee.hourlyTime,A.value=ee.weekday)}else C.objective="",C.cronExpression="",S.value="SIMPLE",m.value="DAILY",C.time="09:00",C.hourlyTime="00:00",A.value=1,y.value=!1,D.value=!1;u.value=!0}catch(ne){G===H&&et(it(ne,c("generated.scheduledSession.loadFailed")),"error",ne)}finally{G===H&&(s.value=!1)}}function Q(oe){!s.value&&!l.value&&U(oe,!1)}function $(){if(S.value==="CRON")return C.cronExpression.trim();const[oe,P]=C.time.split(":").map(Number);return m.value==="HOURLY"?`${Number(C.hourlyTime.split(":")[1])} * * * *`:m.value==="DAILY"?`${P} ${oe} * * *`:`${P} ${oe} * * ${A.value}`}function V(oe){const P=oe.trim().split(/\s+/);if(P.length!==5||!/^\d+$/.test(P[0]??"")||P[1]!=="*"&&!/^\d+$/.test(P[1]??"")||P[2]!=="*"||P[3]!=="*"||P[4]!=="*"&&!/^\d+$/.test(P[4]??""))return;const G=Number(P[0]),ue=P[1]==="*"?9:Number(P[1]),ne=P[4]==="*"?1:Number(P[4]);if(!(G>59||ue>23||ne>6))return{cadence:P[1]==="*"?"HOURLY":P[4]==="*"?"DAILY":"WEEKLY",time:`${String(ue).padStart(2,"0")}:${String(G).padStart(2,"0")}`,hourlyTime:`00:${String(G).padStart(2,"0")}`,weekday:ne}}function N(oe){const P=oe.trim();if(P.length===0||P.length>64)return!1;const G=P.split(/\s+/);if(G.length!==5||G.some(ne=>ne.length===0))return!1;const ue=[[0,59],[0,23],[1,31],[1,12],[0,7]];return G.every((ne,M)=>h(ne,ue[M][0],ue[M][1]))}function h(oe,P,G){const ue=new Set;for(const ne of oe.split(",")){const M=ne.split("/");if(M.length>2||M.some(Me=>Me.length===0))return!1;const ee=M[0]??"",le=M[1]===void 0?1:F(M[1],1,G-P+1);if(le===void 0)return!1;let Ee,xe;if(ee==="*")Ee=P,xe=G;else if(/^\d+-\d+$/.test(ee)){const Me=ee.split("-"),Se=F(Me[0],P,G),ye=F(Me[1],P,G);if(Se===void 0||ye===void 0||Se>ye)return!1;Ee=Se,xe=ye}else if(M.length===1){const Me=F(ee,P,G);if(Me===void 0)return!1;Ee=Me,xe=Me}else return!1;if(M[1]!==void 0&&Ee===xe)return!1;for(let Me=Ee;Me<=xe;Me+=le)ue.add(Me)}return ue.size>0}function F(oe,P,G){if(oe===void 0||!/^(0|[1-9][0-9]*)$/.test(oe))return;const ue=Number(oe);return Number.isSafeInteger(ue)&&ue>=P&&ue<=G?ue:void 0}async function z(){if(!(l.value||s.value||n.session===void 0||!u.value||!await b.value?.validate().catch(()=>!1))&&!(l.value||s.value)){i.value="save";try{await n.request(Y(),{method:"PUT",body:JSON.stringify({nodeId:n.nodeId,workspaceId:n.workspaceId,objective:C.objective.trim(),cron:$(),enabled:y.value,notifyOnTerminal:D.value,...v.value===null?{}:{expectedRevision:v.value.revision}})}),et(c("generated.scheduledSession.saved"),"success")}catch(oe){et(it(oe,c("generated.scheduledSession.saveFailed")),"error",oe);return}finally{i.value=void 0}await U()}}async function fe(){if(!(v.value===null||!u.value||l.value||s.value)){i.value="remove";try{await n.request(Y(),{method:"DELETE",body:JSON.stringify({nodeId:n.nodeId,workspaceId:n.workspaceId,expectedRevision:v.value.revision})}),et(c("generated.scheduledSession.removed"),"success")}catch(oe){et(it(oe,c("generated.scheduledSession.removeFailed")),"error",oe);return}finally{i.value=void 0}await U()}}async function J(oe,P){if(!(n.session===void 0||l.value||s.value)){i.value=`${P?"accept":"reject"}:${oe}`;try{await n.request(`${Y()}/proposals/${encodeURIComponent(oe)}/resolve`,{method:"POST",body:JSON.stringify({nodeId:n.nodeId,workspaceId:n.workspaceId,accept:P})})}catch(G){et(it(G,c("generated.scheduledSession.proposalFailed")),"error",G);return}finally{i.value=void 0}await U()}}function re(oe){l.value||oe()}function ge(oe){return oe===null?"—":Gt(oe,v.value?.timezone??L.value)}function ce(oe){const G={CLAIMED:"occurrenceClaimed",SUBMITTED:"occurrenceSubmitted",SUCCEEDED:"occurrenceSucceeded",SKIPPED:"occurrenceSkipped",FAILED:"occurrenceFailed"}[oe];return G===void 0?oe:c(`generated.scheduledSession.${G}`)}return(oe,P)=>{const G=Ft,ue=va,ne=Sg,M=Ig,ee=Un,le=wn,Ee=rm,xe=xg,Me=Tg,Se=bt,ye=Cg,Fe=ua,Ye=Xt,nt=ca;return r.value?(f(),we(Ye,{key:0,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),modelValue:r.value,"onUpdate:modelValue":P[10]||(P[10]=ae=>r.value=ae),"before-close":re,"show-close":!l.value,"close-on-click-modal":!l.value,"close-on-press-escape":!l.value,title:o(c)("generated.scheduledSession.title"),width:"min(560px, calc(100vw - 32px))","append-to-body":"","close-icon":o(qe)("close")},{footer:Z(()=>[v.value!==null?(f(),we(Se,{key:0,disabled:l.value||s.value||!u.value,loading:i.value==="remove","loading-icon":o(qe)("loading-action"),type:"danger",onClick:fe},{default:Z(()=>[ke(W(o(c)("generated.scheduledSession.remove")),1)]),_:1},8,["disabled","loading","loading-icon"])):ve("",!0),B(Se,{disabled:l.value,onClick:P[9]||(P[9]=ae=>r.value=!1)},{default:Z(()=>[ke(W(o(c)("common.close")),1)]),_:1},8,["disabled"]),B(Se,{type:"primary",loading:i.value==="save",disabled:l.value||s.value||!u.value,onClick:z,"loading-icon":o(qe)("loading-action")},{default:Z(()=>[ke(W(o(c)("generated.scheduledSession.save")),1)]),_:1},8,["loading","disabled","loading-icon"])]),default:Z(()=>[Le((f(),we(Fe,{ref_key:"formRef",ref:b,"aria-busy":s.value,model:C,rules:I,disabled:l.value||s.value||!u.value,class:"schedule-form","label-position":"left","label-width":"116px"},{default:Z(()=>[B(ue,{label:o(c)("generated.scheduledSession.objective"),prop:"objective"},{default:Z(()=>[B(G,{modelValue:C.objective,"onUpdate:modelValue":P[0]||(P[0]=ae=>C.objective=ae),type:"textarea",rows:4,maxlength:2e4,placeholder:o(c)("generated.scheduledSession.objective"),"aria-label":o(c)("generated.scheduledSession.objective")},null,8,["modelValue","placeholder","aria-label"])]),_:1},8,["label"]),B(ue,{label:o(c)("generated.scheduledSession.mode")},{default:Z(()=>[B(M,{modelValue:S.value,"onUpdate:modelValue":P[1]||(P[1]=ae=>S.value=ae),"aria-label":o(c)("generated.scheduledSession.mode")},{default:Z(()=>[B(ne,{value:"SIMPLE"},{default:Z(()=>[ke(W(o(c)("generated.scheduledSession.simpleMode")),1)]),_:1}),B(ne,{value:"CRON"},{default:Z(()=>[ke(W(o(c)("generated.scheduledSession.cronMode")),1)]),_:1})]),_:1},8,["modelValue","aria-label"])]),_:1},8,["label"]),S.value==="SIMPLE"?(f(),O(Ve,{key:0},[B(ue,{label:o(c)("generated.scheduledSession.repeat")},{default:Z(()=>[B(le,{modelValue:m.value,"onUpdate:modelValue":P[2]||(P[2]=ae=>m.value=ae),"aria-label":o(c)("generated.scheduledSession.repeat"),"clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down")},{default:Z(()=>[B(ee,{value:"HOURLY",label:o(c)("generated.scheduledSession.hourly")},null,8,["label"]),B(ee,{value:"DAILY",label:o(c)("generated.scheduledSession.daily")},null,8,["label"]),B(ee,{value:"WEEKLY",label:o(c)("generated.scheduledSession.weekly")},null,8,["label"])]),_:1},8,["modelValue","aria-label","clear-icon","suffix-icon"])]),_:1},8,["label"]),K("div",hI,[m.value==="WEEKLY"?(f(),we(ue,{key:0,label:o(c)("generated.scheduledSession.weekday")},{default:Z(()=>[B(le,{modelValue:A.value,"onUpdate:modelValue":P[3]||(P[3]=ae=>A.value=ae),"aria-label":o(c)("generated.scheduledSession.weekday"),"clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down")},{default:Z(()=>[(f(),O(Ve,null,Je(7,ae=>B(ee,{key:ae,value:ae-1,label:o(c)(`generated.scheduledSession.weekday${ae-1}`)},null,8,["value","label"])),64))]),_:1},8,["modelValue","aria-label","clear-icon","suffix-icon"])]),_:1},8,["label"])):ve("",!0),m.value==="HOURLY"?(f(),we(ue,{key:1,label:o(c)("generated.scheduledSession.minute"),prop:"hourlyTime"},{default:Z(()=>[B(Ee,{modelValue:C.hourlyTime,"onUpdate:modelValue":P[4]||(P[4]=ae=>C.hourlyTime=ae),start:"00:00",step:"00:01",end:"00:59","aria-label":o(c)("generated.scheduledSession.minute"),"prefix-icon":o(qe)("clock"),"clear-icon":o(qe)("clear-input")},null,8,["modelValue","aria-label","prefix-icon","clear-icon"])]),_:1},8,["label"])):(f(),we(ue,{key:2,label:o(c)("generated.scheduledSession.time"),prop:"time"},{default:Z(()=>[B(xe,{modelValue:C.time,"onUpdate:modelValue":P[5]||(P[5]=ae=>C.time=ae),format:"HH:mm","value-format":"HH:mm","aria-label":o(c)("generated.scheduledSession.time"),"prefix-icon":o(qe)("clock"),"clear-icon":o(qe)("clear-input")},null,8,["modelValue","aria-label","prefix-icon","clear-icon"])]),_:1},8,["label"]))])],64)):(f(),O(Ve,{key:1},[B(ue,{label:o(c)("generated.scheduledSession.cronExpression"),prop:"cronExpression"},{default:Z(()=>[B(G,{modelValue:C.cronExpression,"onUpdate:modelValue":P[6]||(P[6]=ae=>C.cronExpression=ae),maxlength:"64",placeholder:o(c)("generated.scheduledSession.cronPlaceholder"),"aria-label":o(c)("generated.scheduledSession.cronExpression")},null,8,["modelValue","placeholder","aria-label"])]),_:1},8,["label"]),K("p",yI,W(o(c)("generated.scheduledSession.cronHint")),1)],64)),K("p",wI,W(o(c)("generated.scheduledSession.nodeTimezone",{timezone:L.value})),1),B(ue,{label:o(c)("generated.scheduledSession.status")},{default:Z(()=>[K("div",kI,[B(Me,{modelValue:y.value,"onUpdate:modelValue":P[7]||(P[7]=ae=>y.value=ae),disabled:!u.value,"aria-label":o(c)("generated.scheduledSession.enabled")},null,8,["modelValue","disabled","aria-label"]),K("span",null,W(E.value),1)])]),_:1},8,["label"]),B(ue,{label:o(c)("generated.scheduledSession.notifyUser")},{default:Z(()=>[K("span",null,W(v.value===null?d.value:w.value??o(c)("generated.scheduledSession.userUnavailable")),1)]),_:1},8,["label"]),B(ue,{label:o(c)("generated.scheduledSession.terminalNotifications")},{default:Z(()=>[B(Me,{modelValue:D.value,"onUpdate:modelValue":P[8]||(P[8]=ae=>D.value=ae),"aria-label":o(c)("generated.scheduledSession.terminalNotifications")},null,8,["modelValue","aria-label"])]),_:1},8,["label"]),K("p",bI,W(o(c)("generated.scheduledSession.notifyUserHint")),1),v.value!==null?(f(),we(ue,{key:2,label:o(c)("generated.scheduledSession.nextRun")},{default:Z(()=>[K("span",null,W(ge(v.value.nextRunAt)),1)]),_:1},8,["label"])):ve("",!0),g.value.length>0?(f(),O("div",II,[K("strong",null,W(o(c)("generated.scheduledSession.proposals")),1),(f(!0),O(Ve,null,Je(g.value,ae=>(f(),O("div",{key:ae.id,class:"schedule-proposal"},[K("p",null,W(ge(ae.created_at))+" · "+W(o(c)("generated.scheduledSession.proposedBy",{userId:ae.proposed_by_user_id})),1),ae.objective?(f(),O("p",SI,W(o(c)("generated.scheduledSession.objective"))+":"+W(ae.objective),1)):ve("",!0),ae.cron?(f(),O("p",CI,W(o(c)("generated.scheduledSession.repeat"))+":"+W(ae.cron),1)):ve("",!0),ae.timezone?(f(),O("p",TI,W(o(c)("generated.scheduledSession.timezone"))+":"+W(ae.timezone),1)):ve("",!0),R.value?(f(),O("div",EI,[B(Se,{size:"small",disabled:l.value,loading:i.value===`reject:${ae.id}`,"loading-icon":o(qe)("loading-action"),onClick:me=>J(ae.id,!1)},{default:Z(()=>[ke(W(o(c)("generated.scheduledSession.reject")),1)]),_:1},8,["disabled","loading","loading-icon","onClick"]),B(Se,{size:"small",type:"primary",disabled:l.value,loading:i.value===`accept:${ae.id}`,"loading-icon":o(qe)("loading-action"),onClick:me=>J(ae.id,!0)},{default:Z(()=>[ke(W(o(c)("generated.scheduledSession.accept")),1)]),_:1},8,["disabled","loading","loading-icon","onClick"])])):ve("",!0)]))),128))])):ve("",!0),k.value.length>0?(f(),O("div",RI,[K("strong",null,W(o(c)("generated.scheduledSession.history")),1),(f(!0),O(Ve,null,Je(k.value,ae=>(f(),O("p",{key:ae.id},[ke(W(ge(ae.due_at))+" · "+W(ce(ae.status)),1),ae.code?(f(),O("span",AI," · "+W(ae.code),1)):ve("",!0)]))),128)),p.value>0?(f(),we(ye,{key:0,"current-page":T.value,"page-size":10,total:p.value,disabled:s.value||l.value,"pager-count":5,layout:"prev, pager, next",onCurrentChange:Q,"prev-icon":o(qe)("chevron-left"),"next-icon":o(qe)("chevron-right")},null,8,["current-page","total","disabled","prev-icon","next-icon"])):ve("",!0)])):ve("",!0)]),_:1},8,["aria-busy","model","disabled"])),[[nt,s.value]])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","show-close","close-on-click-modal","close-on-press-escape","title","close-icon"])):ve("",!0)}}}),DI=dt(NI,[["__scopeId","data-v-3ff30b52"]]);function PI(e){const t=e.nodeId,n=`/api/agent-sessions/${encodeURIComponent(e.sessionId)}`;return{async read(){return(await e.request(`${n}?nodeId=${encodeURIComponent(t)}`)).session.sessionPrompt??""},async save(a){await e.request(`${n}/metadata`,{method:"PATCH",body:JSON.stringify({nodeId:t,sessionPrompt:a.trim()||null})})}}}const OI={class:"session-prompt-description"},LI=at({__name:"SessionPromptDialog",props:{nodeId:{},sessionId:{},request:{type:Function}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,r=PI(n),s=x(),i=Fn({prompt:""}),l=x(!0),v=x(!1),u=x(!1);let d=!1;mt(()=>{d=!0});const w={prompt:[{validator:(T,p,g)=>{p.trim().length<=2e4?g():g(new Error(c("generated.sessionPrompt.tooLong")))},trigger:"blur"}]};Dt(async()=>{try{const T=await r.read();d||(i.prompt=T,u.value=!0)}catch(T){d||et(it(T),"error",T)}finally{d||(l.value=!1)}});async function k(){if(!(!u.value||v.value)){v.value=!0;try{if(!await s.value?.validate().catch(()=>!1))return;await r.save(i.prompt),d||a("close")}catch(T){d||et(it(T),"error",T)}finally{d||(v.value=!1)}}}return(T,p)=>{const g=Ft,R=va,b=ua,C=bt,I=Xt,S=ca;return f(),we(I,{onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),"model-value":!0,title:o(c)("generated.sessionPrompt.title"),width:"min(640px, calc(100vw - 32px))","append-to-body":"","close-on-click-modal":!1,"before-close":m=>{v.value||m()},onClosed:p[2]||(p[2]=m=>a("close")),"close-icon":o(qe)("close")},{footer:Z(()=>[B(C,{disabled:v.value,onClick:p[1]||(p[1]=m=>a("close"))},{default:Z(()=>[ke(W(o(c)("generated.sessionPrompt.cancel")),1)]),_:1},8,["disabled"]),B(C,{type:"primary",disabled:!u.value,loading:v.value,onClick:k,"loading-icon":o(qe)("loading-action")},{default:Z(()=>[ke(W(o(c)("generated.sessionPrompt.save")),1)]),_:1},8,["disabled","loading","loading-icon"])]),default:Z(()=>[K("p",OI,W(o(c)("generated.sessionPrompt.description")),1),Le((f(),we(b,{ref_key:"formRef",ref:s,model:i,rules:w,"label-position":"top",onSubmit:rt(k,["prevent"])},{default:Z(()=>[B(R,{prop:"prompt",label:o(c)("generated.sessionPrompt.title")},{default:Z(()=>[B(g,{modelValue:i.prompt,"onUpdate:modelValue":p[0]||(p[0]=m=>i.prompt=m),type:"textarea",rows:10,disabled:!u.value||v.value,placeholder:o(c)("generated.sessionPrompt.placeholder")},null,8,["modelValue","disabled","placeholder"])]),_:1},8,["label"])]),_:1},8,["model"])),[[S,l.value]])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","title","before-close","close-icon"])}}}),WI=dt(LI,[["__scopeId","data-v-139b2f42"]]);function MI(e,t){const n=x([]),a=x(),r=x(!1),s=`/api/agent-sessions/${encodeURIComponent(e.sessionId)}/shares`,i=new URLSearchParams({nodeId:e.nodeId,workspaceId:e.workspaceId});async function l(){const w=await t(`${s}?${i}`);n.value=Ui.array().parse(w.shares)}async function v(w){r.value=!0;try{const k=await t(s,{method:"POST",body:JSON.stringify({nodeId:e.nodeId,workspaceId:e.workspaceId,expiresAt:w})}),T={share:Ui.parse(k.share),password:Fi.parse(k.password)};a.value=T,n.value=[T.share,...n.value]}finally{r.value=!1}}async function u(w){r.value=!0;try{await t(`${s}/${encodeURIComponent(w)}?${i}`,{method:"DELETE"}),n.value=n.value.filter(k=>k.id!==w),a.value?.share.id===w&&(a.value=void 0)}finally{r.value=!1}}async function d(w,k){const T=await t(`${s}/${encodeURIComponent(w)}/copy?${i}`,{method:"POST",body:JSON.stringify(k===void 0?{}:{password:k})});return Fi.nullable().parse(T.password)}return{shares:n,created:a,busy:r,load:l,create:v,remove:u,copyPassword:d}}const xI={key:0,class:"created-share","aria-live":"polite"},$I={class:"share-text"},FI=at({__name:"SessionShareDialog",props:{target:{},request:{type:Function}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,r=MI(n.target,n.request),{shares:s,created:i,busy:l}=r,v=x(),u=x({expiresAt:null}),d={expiresAt:[{validator:(b,C,I)=>I(C!==null&&(!Number.isFinite(+C)||+C<=Date.now())?new Error(c("sessionShare.futureTime")):void 0),trigger:"change"}]},w=b=>new URL(`/share/${encodeURIComponent(b)}`,location.origin).toString(),k=j(()=>i.value?c("sessionShare.shareText",{link:w(i.value.share.id),password:i.value.password}):"");async function T(){if(await v.value?.validate().catch(()=>!1))try{await r.create(u.value.expiresAt?.toISOString()??null)}catch(b){et(it(b),"error",b)}}async function p(b){try{await Nt.confirm(c("sessionShare.deleteWarning"),c("sessionShare.delete"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning"})}catch{return}try{await r.remove(b),et(c("sessionShare.deleted"),"success")}catch(C){et(it(C),"error",C)}}async function g(b){try{await navigator.clipboard.writeText(b),et(c("sessionShare.copied"),"info")}catch(C){et(it(C),"error",C)}}Dt(()=>{r.load().catch(b=>et(it(b),"error",b))});async function R(b){try{let C=await r.copyPassword(b);if(C===null){const I=await Nt.prompt(c("sessionShare.restorePassword"),c("sessionShare.password"),{closeIcon:qe("close"),inputType:"password",inputPattern:/^[0-9]{6}$/u,inputErrorMessage:c("sessionShare.passwordFormat")});C=await r.copyPassword(b,I.value)}C!==null&&await g(c("sessionShare.shareText",{link:w(b),password:C}))}catch(C){C!=="cancel"&&C!=="close"&&et(it(C),"error",C)}}return(b,C)=>{const I=bg,S=va,m=bt,A=ua,L=Sr,y=Ag,D=da,E=Rg,H=Xt;return f(),we(H,{onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),"model-value":!0,title:o(c)("sessionShare.title"),width:"min(1000px, calc(100vw - 32px))","append-to-body":"",onClose:C[2]||(C[2]=X=>a("close")),"close-icon":o(qe)("close")},{default:Z(()=>[B(A,{ref_key:"form",ref:v,model:u.value,rules:d,"label-position":"top",onSubmit:rt(T,["prevent"])},{default:Z(()=>[B(S,{prop:"expiresAt",label:o(c)("sessionShare.expiresAt")},{default:Z(()=>[B(I,{modelValue:u.value.expiresAt,"onUpdate:modelValue":C[0]||(C[0]=X=>u.value.expiresAt=X),type:"datetime",placeholder:o(c)("sessionShare.permanent"),clearable:"","prefix-icon":o(qe)("calendar"),"clear-icon":o(qe)("clear-input")},{"prev-month":Z(()=>[B(De,{name:"chevron-left"})]),"next-month":Z(()=>[B(De,{name:"chevron-right"})]),"prev-year":Z(()=>[B(De,{name:"chevrons-left"})]),"next-year":Z(()=>[B(De,{name:"chevrons-right"})]),_:1},8,["modelValue","placeholder","prefix-icon","clear-icon"])]),_:1},8,["label"]),B(m,{type:"primary","native-type":"submit",loading:o(l),"loading-icon":o(qe)("loading-action")},{default:Z(()=>[ke(W(o(c)("sessionShare.create")),1)]),_:1},8,["loading","loading-icon"])]),_:1},8,["model"]),o(i)?(f(),O("section",xI,[K("p",$I,W(k.value),1),B(m,{icon:o(qe)("copy"),onClick:C[1]||(C[1]=X=>g(k.value))},{default:Z(()=>[ke(W(o(c)("sessionShare.copy")),1)]),_:1},8,["icon"])])):ve("",!0),K("h3",null,W(o(c)("sessionShare.records")),1),B(E,{data:o(s),"empty-text":o(c)("sessionShare.noRecords")},{default:Z(()=>[B(y,{label:o(c)("sessionShare.link"),"min-width":"230"},{default:Z(({row:X})=>[B(L,{href:w(X.id),target:"_blank",rel:"noopener"},{default:Z(()=>[ke(W(w(X.id)),1)]),_:2},1032,["href"])]),_:1},8,["label"]),B(y,{label:o(c)("sessionShare.createdAt"),prop:"createdAt",sortable:"","min-width":"215"},{default:Z(({row:X})=>[ke(W(o(Gt)(X.createdAt)),1)]),_:1},8,["label"]),B(y,{label:o(c)("sessionShare.expiresAt"),prop:"expiresAt",sortable:"","min-width":"215"},{default:Z(({row:X})=>[ke(W(X.expiresAt===null?o(c)("sessionShare.permanent"):o(Gt)(X.expiresAt)),1)]),_:1},8,["label"]),B(y,{label:o(c)("sessionShare.status"),"min-width":"100"},{default:Z(({row:X})=>[B(D,{type:X.expiresAt!==null&&X.expiresAt<=Date.now()?"info":"success"},{default:Z(()=>[ke(W(o(c)(X.expiresAt!==null&&X.expiresAt<=Date.now()?"sessionShare.expired":"sessionShare.active")),1)]),_:2},1032,["type"])]),_:1},8,["label"]),B(y,{label:o(c)("sessionShare.actions"),"min-width":"180"},{default:Z(({row:X})=>[B(m,{link:"",icon:o(qe)("copy"),disabled:o(l),onClick:Y=>R(X.id)},{default:Z(()=>[ke(W(o(c)("sessionShare.copy")),1)]),_:1},8,["icon","disabled","onClick"]),B(m,{link:"",type:"danger",icon:o(qe)("delete"),disabled:o(l),onClick:Y=>p(X.id)},{default:Z(()=>[ke(W(o(c)("sessionShare.delete")),1)]),_:1},8,["icon","disabled","onClick"])]),_:1},8,["label"])]),_:1},8,["data","empty-text"])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","title","close-icon"])}}}),UI=dt(FI,[["__scopeId","data-v-e5a69738"]]),VI=["inert","aria-label"],qI={class:"sidebar-heading session-heading"},HI={class:"session-heading-meta"},BI=["aria-label","aria-busy","disabled"],GI={class:"new-session-form"},zI=["aria-label","disabled"],KI=["aria-label"],jI={key:3,class:"watch-status failed"},_I=["draggable","onDragover","onDrop","onDragstart","onMouseenter","onFocusin"],YI=["data-session-id","onContextmenu"],QI=["onClick"],JI={class:"session-link-content"},XI={class:"session-title-row"},ZI=["src","data-runner"],e0=["aria-label"],t0=["aria-label"],n0=["datetime"],a0=["disabled","aria-label"],o0=["aria-busy"],r0=["aria-label"],i0={key:5,class:"empty sidebar-empty"},s0={class:"effective-skill-list"},l0={key:0},c0={class:"effective-skill-tags"},d0={class:"effective-skill-list"},u0={key:0},v0={class:"effective-mcp-meta"},f0={class:"effective-skill-tags"},p0={class:"effective-mcp-meta"},g0={class:"effective-skill-tags"},m0=at({__name:"WorkspaceSessionList",props:{sessionGroup:{},sessions:{},selectedSessionId:{},mobileViewport:{type:Boolean},canLoadMore:{type:Boolean},loadingMore:{type:Boolean},loadMoreError:{},active:{type:Boolean},watchStatus:{},nodeReady:{type:Boolean},loading:{type:Boolean},workspaceKind:{},workspaceKindLabel:{},workspaceBranch:{},title:{type:Function},runnerIcon:{type:Function},activity:{type:Function},canDeleteSession:{type:Function},activityLabel:{type:Function},activityDateTime:{type:Function},activityTitle:{type:Function},relativeActivity:{type:Function},nodeId:{},workspaceId:{},skillSupported:{type:Boolean},mcpSupported:{type:Boolean},cleanupSessionsSupported:{type:Boolean},searchSupported:{type:Boolean},searchQuery:{},searching:{type:Boolean},refreshing:{type:Boolean},workspaceManageable:{type:Boolean},request:{type:Function},hasUnread:{type:Function},asideSupported:{type:Boolean}},emits:["selectGroup","openTree","openAside","create","open","rename","pin","movePin","movePinTo","deleteSession","cleanupSessions","loadMore","search","refresh"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=x();function i(M,ee){S.value=M?ee.id:void 0,M&&(s.value={nodeId:n.nodeId,workspaceId:ee.workspaceId,sessionId:ee.id})}const l=x(),v=x(),u=x(!1);let d;function w(){return n.active!==!1&&n.nodeReady&&n.watchStatus==="ready"&&n.canLoadMore&&!n.loading&&!n.searching&&!n.refreshing&&!n.loadingMore&&n.loadMoreError===void 0}He(()=>[l.value,v.value,n.active,n.sessions,n.canLoadMore,n.loading,n.searching,n.refreshing,n.loadingMore,n.loadMoreError,n.watchStatus,n.nodeReady,n.searchQuery],()=>{d?.disconnect(),!n.loadingMore&&n.loadMoreError===void 0&&(u.value=!1);const M=l.value,ee=v.value;!w()||M===void 0||ee===void 0||typeof IntersectionObserver>"u"||(d=new IntersectionObserver(le=>{le.some(Ee=>Ee.isIntersecting)&&w()&&M.getClientRects().length>0&&a("loadMore")},{root:M,rootMargin:"0px 0px 96px 0px"}),d.observe(ee))},{flush:"post"});function k(){n.loadingMore||!n.canLoadMore||(u.value=!0,a("loadMore"))}mt(()=>d?.disconnect());const T=j(()=>({context:JSON.stringify([n.nodeId,n.workspaceId,n.searchQuery]),ready:n.watchStatus==="ready"&&!n.loading&&!n.searching&&!n.refreshing&&!n.loadingMore&&r.value===void 0,items:n.sessions.map(M=>({key:M.id,lastActivityAt:M.lastActivityAt,pin:M.pinOrder??null}))})),p=x(),g=x();He(()=>[n.nodeId,n.workspaceId],()=>{g.value=void 0}),He(()=>[n.nodeId,n.workspaceId],()=>{p.value=void 0});const R=x(),b=x("before"),C=x(),I=x(),S=x(),m=x(n.searchQuery);He(()=>n.searchQuery,M=>m.value=M);const A=x(!1),L=mI(n.request),y=x(!1),D=x(),E=x(!1),H=ug(n.request),X=H.loadedInstallations,Y=j(()=>H.inspection.value?.executionBuiltIns??[]);async function U(){A.value=!0;try{await L.load(n.nodeId,n.workspaceId)}catch{et(c("generated.workspaceSessionList.unableToLoadCurrentSkillsTryAgain"),"error")}}async function Q(){y.value=!0;try{await H.run(()=>H.loadWorkspace(n.nodeId,n.workspaceId))}catch{et(c("generated.workspaceSessionList.unableToLoadCurrentMCPServersTry"),"error")}}function $(M){return M==="VALID"?c("generated.workspaceSessionList.available"):M==="PARTIAL"?c("generated.workspaceSessionList.incompleteInstallation"):M==="UNKNOWN_VERSION"?c("generated.workspaceSessionList.unknownVersion"):M==="GIT_EXCLUDE_BROKEN"?c("generated.workspaceSessionList.invalidGitRules"):c("generated.workspaceSessionList.invalidDirectory")}function V(M){return M.pinOrder!==null&&M.pinOrder!==void 0}function N(M){return n.sessions.filter(V).findIndex(ee=>ee.id===M.id)}function h(M,ee){const le=ee==="up"?M.canMovePinUp:M.canMovePinDown;if(le!==void 0)return le;const Ee=N(M),xe=n.sessions.filter(V).length;return Ee>=0&&(ee==="up"?Ee>0:Ee<xe-1)}function F(M,ee){if(!z(ee)){M.preventDefault();return}r.value=ee.id,M.dataTransfer!==null&&(M.dataTransfer.effectAllowed="move",M.dataTransfer.setData("text/plain",ee.id))}function z(M){return!n.mobileViewport&&V(M)&&!n.loading}function fe(){r.value=void 0,R.value=void 0}function J(M,ee){if(!z(ee)||r.value===void 0)return;M.preventDefault(),M.dataTransfer!==null&&(M.dataTransfer.dropEffect="move"),R.value=ee.id;const le=M.currentTarget.getBoundingClientRect();b.value=M.clientY<le.top+le.height/2?"before":"after"}function re(M){if(!z(M)){fe();return}const ee=n.sessions.find(Ee=>Ee.id===r.value),le=b.value;fe(),!(ee===void 0||ee.id===M.id)&&a("movePinTo",ee,M,le)}function ge(M){return C.value===M||I.value===M||S.value===M}function ce(M,ee){const le=M.currentTarget;le instanceof HTMLElement&&M.relatedTarget instanceof Node&&le.contains(M.relatedTarget)||ee()}function oe(M,ee){C.value=M,ut(()=>ee.querySelector(".session-more-button")?.click())}function P(M,ee){ee.preventDefault();const le=ee.currentTarget.closest(".session-row");le!==null&&oe(M,le)}function G(M){a("open",M)}function ue(M){const le=[...l.value?.querySelectorAll(".session-row")??[]].find(xe=>xe.dataset.sessionId===M)?.querySelector(".session-link"),Ee=n.sessions.find(xe=>xe.id===M);le&&Ee&&a("openTree",M,le,n.title(Ee))}function ne(){if(m.value.trim()!==""){a("search",m.value);return}n.searchQuery!==""&&a("search",""),a("refresh")}return(M,ee)=>{const le=da,Ee=Ft,xe=bt,Me=ln,Se=sn,ye=rn,Fe=Xt,Ye=St("tooltip"),nt=ca;return f(),O("aside",{tabindex:"-1",inert:e.mobileViewport&&!e.active,class:"conversation-sidebar","aria-label":o(c)("generated.workspaceSessionList.workspaceSessions")},[K("div",qI,[K("div",HI,[K("h2",null,W(o(c)("generated.workspaceSessionList.sessions")),1),e.workspaceKind==="GIT_WORKSPACE"?(f(),we(le,{key:0,class:"workspace-kind-tag",type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(e.workspaceKindLabel),1)]),_:1})):ve("",!0),e.workspaceBranch!==void 0?(f(),we(le,{key:1,class:"workspace-branch-tag",type:"info",effect:"plain",size:"small"},{default:Z(()=>[ke(W(e.workspaceBranch),1)]),_:1})):ve("",!0)])]),e.searchSupported?(f(),O("form",{key:0,class:"session-search",role:"search",onSubmit:rt(ne,["prevent"])},[B(Ee,{modelValue:m.value,"onUpdate:modelValue":ee[0]||(ee[0]=ae=>m.value=ae),placeholder:o(c)("workspaceSessions.searchPlaceholder"),"aria-label":o(c)("workspaceSessions.searchLabel"),"prefix-icon":o(qe)("search"),clearable:"",size:"small",onClear:ee[1]||(ee[1]=ae=>a("search","")),"clear-icon":o(qe)("clear-input")},null,8,["modelValue","placeholder","aria-label","prefix-icon","clear-icon"]),Le((f(),O("button",{class:"session-search-button utility-control","aria-label":o(c)(m.value.trim()?"workspaceSessions.searchAction":"generated.workspaceSessionList.refreshWorkspaceSessions"),"aria-busy":e.searching||e.refreshing||void 0,disabled:!e.nodeReady||e.searching||e.refreshing,type:"submit"},[e.searching||e.refreshing?(f(),we(De,{key:0,name:"loading-action"})):(f(),we(De,{key:1,name:"refresh"}))],8,BI)),[[Ye,o(c)(m.value.trim()?"workspaceSessions.searchAction":"generated.workspaceSessionList.refreshWorkspaceSessions")]])],32)):ve("",!0),K("div",GI,[B(xe,{class:"new-session-button",disabled:!e.nodeReady,type:"primary",onClick:ee[2]||(ee[2]=ae=>a("create"))},{default:Z(()=>[B(De,{name:"session-add"}),K("span",null,W(o(c)("generated.workspaceSessionList.newSession")),1)]),_:1},8,["disabled"]),B(ye,{trigger:"click","popper-class":"workspace-tool-menu"},{dropdown:Z(()=>[B(Se,null,{default:Z(()=>[e.skillSupported?(f(),we(Me,{key:0,onClick:U},{default:Z(()=>[B(De,{name:"collection"}),K("span",null,W(o(c)("generated.workspaceSessionList.loadedSkills")),1)]),_:1})):ve("",!0),e.mcpSupported?(f(),we(Me,{key:1,onClick:Q},{default:Z(()=>[B(De,{name:"connection"}),K("span",null,W(o(c)("generated.workspaceSessionList.loadedMCP")),1)]),_:1})):ve("",!0),e.cleanupSessionsSupported?(f(),we(Me,{key:2,disabled:e.loading||!e.nodeReady||!e.workspaceManageable,onClick:ee[3]||(ee[3]=ae=>a("cleanupSessions"))},{default:Z(()=>[B(De,{name:"delete"}),K("span",null,W(o(c)("generated.workspaceSessionList.cleanupSessions")),1)]),_:1},8,["disabled"])):ve("",!0)]),_:1})]),default:Z(()=>[K("button",{class:"workspace-more-button utility-control","aria-label":o(c)("generated.workspaceSessionList.moreWorkspaceActions"),disabled:!e.nodeReady,type:"button"},[B(De,{name:"more"})],8,zI)]),_:1})]),e.sessionGroup?(f(),we(yc,{key:1,"model-value":e.sessionGroup,"onUpdate:modelValue":ee[4]||(ee[4]=ae=>a("selectGroup",ae))},null,8,["model-value"])):ve("",!0),e.watchStatus==="loading"?(f(),O("div",{key:2,class:"watch-status",role:"status","aria-label":o(c)("workspaceWatch.loadingSessions")},[B(gn,{class:"read-loading-indicator"})],8,KI)):e.watchStatus==="failed"?(f(),O("p",jI,W(o(c)("workspaceWatch.sessionsFailed")),1)):ve("",!0),e.sessions.length||e.canLoadMore||e.loadMoreError!==void 0?Le((f(),O("ul",{key:4,ref_key:"sessionListElement",ref:l,class:"session-list"},[(f(!0),O(Ve,null,Je(e.sessions,ae=>(f(),O("li",{key:ae.id,class:Ke(["mar-session-reorder-item",{"dragging-pinned":r.value===ae.id,"drag-over-pinned":R.value===ae.id,"drag-over-pinned-after":R.value===ae.id&&b.value==="after"}]),draggable:z(ae),onDragend:fe,onDragover:me=>J(me,ae),onDrop:rt(me=>re(ae),["prevent"]),onDragstart:me=>F(me,ae),onMouseenter:me=>C.value=ae.id,onMouseleave:ee[6]||(ee[6]=me=>C.value=void 0),onFocusin:me=>I.value=ae.id,onFocusout:ee[7]||(ee[7]=me=>ce(me,()=>I.value=void 0))},[K("div",{"data-session-id":ae.id,class:Ke(["session-row",{pinned:V(ae),selected:e.selectedSessionId===ae.id}]),onContextmenu:me=>P(ae.id,me)},[Le((f(),O("button",{class:Ke(["session-link",{selected:e.selectedSessionId===ae.id}]),type:"button",onClick:me=>G(ae.id)},[K("span",JI,[K("span",XI,[K("img",{src:e.runnerIcon(ae.runner),"data-runner":ae.runner,alt:"","aria-hidden":"true",class:"runner-brand-icon session-title-runner-icon"},null,8,ZI),ae.schedule?Le((f(),we(De,{key:0,name:"clock",class:Ke(["session-pin-indicator",{"schedule-paused":!ae.schedule.enabled}]),"aria-label":o(c)(ae.schedule.enabled?"generated.scheduledSession.enabled":"generated.scheduledSession.paused")},null,8,["class","aria-label"])),[[Ye,o(c)(ae.schedule.enabled?"generated.scheduledSession.enabled":"generated.scheduledSession.paused")]]):V(ae)?Le((f(),we(De,{key:1,name:"star-filled",class:"session-pin-indicator","aria-label":o(c)("generated.workspaceSessionList.pinned")},null,8,["aria-label"])),[[Ye,o(c)("generated.workspaceSessionList.pinned2")]]):ve("",!0),K("strong",null,W(e.title(ae)),1),e.hasUnread(ae.id)?Le((f(),O("span",{key:2,class:"session-unread-label mar-unread-label","aria-label":o(c)("generated.workspaceSessionList.hasUnreadNotifications")},[ke(W(o(c)("generated.workspaceSessionList.unread")),1)],8,e0)),[[Ye,o(c)("generated.workspaceSessionList.hasUnreadNotifications2")]]):ve("",!0),e.nodeReady&&e.activity(ae)==="MANAGED_ACTIVE"?Le((f(),O("span",{key:3,class:Ke(["session-activity",e.activity(ae).toLocaleLowerCase()]),"aria-label":e.activityLabel(ae),role:"img"},[...ee[13]||(ee[13]=[K("i",{"aria-hidden":"true"},null,-1)])],10,t0)),[[Ye,e.activityLabel(ae)]]):ve("",!0),Le((f(),O("time",{class:"session-relative-time",datetime:e.activityDateTime(ae)},[ke(W(e.relativeActivity(ae)),1)],8,n0)),[[Ye,e.activityTitle(ae)]])])])],10,QI)),[[Ye,e.title(ae)]]),ge(ae.id)?(f(),we(ye,{key:0,class:"session-row-actions",placement:"bottom-end","popper-class":"session-action-menu",trigger:"click",onVisibleChange:me=>i(me,ae),onCommand:me=>me==="tree"&&ue(ae.id)},{dropdown:Z(()=>[B(Se,null,{default:Z(()=>[e.asideSupported?(f(),we(Me,{key:0,disabled:e.loading||!e.nodeReady,onClick:ee[5]||(ee[5]=me=>s.value&&a("openAside",s.value))},{default:Z(()=>[B(De,{name:"split"}),ke(" "+W(o(c)("generated.workbenchAside.openSession")),1)]),_:1},8,["disabled"])):ve("",!0),V(ae)?(f(),O(Ve,{key:2},[B(Me,{disabled:ae.schedule?.enabled===!0,onClick:me=>a("pin",ae,!1)},{default:Z(()=>[B(De,{name:"pin"}),ke(W(o(c)("generated.workspaceSessionList.unpin")),1)]),_:1},8,["disabled","onClick"]),B(Me,{disabled:!h(ae,"up"),onClick:me=>a("movePin",ae,"up")},{default:Z(()=>[B(De,{name:"chevron-up"}),ke(W(o(c)("generated.workspaceSessionList.moveUp")),1)]),_:1},8,["disabled","onClick"]),B(Me,{disabled:!h(ae,"down"),onClick:me=>a("movePin",ae,"down")},{default:Z(()=>[B(De,{name:"chevron-down"}),ke(W(o(c)("generated.workspaceSessionList.moveDown")),1)]),_:1},8,["disabled","onClick"])],64)):(f(),we(Me,{key:1,onClick:me=>a("pin",ae,!0)},{default:Z(()=>[B(De,{name:"pin"}),ke(W(o(c)("generated.workspaceSessionList.pin")),1)]),_:1},8,["onClick"])),B(Me,{onClick:me=>g.value=ae},{default:Z(()=>[B(De,{name:"share"}),ke(W(o(c)("sessionShare.title")),1)]),_:1},8,["onClick"]),B(Me,{onClick:me=>a("rename",ae)},{default:Z(()=>[B(De,{name:"edit"}),ke(W(o(c)("generated.workspaceSessionList.rename")),1)]),_:1},8,["onClick"]),e.asideSupported?(f(),we(Me,{key:3,disabled:e.loading||!e.nodeReady,command:"tree"},{default:Z(()=>[B(De,{name:"session-tree"}),ke(W(o(c)("sessionGroups.tree")),1)]),_:1},8,["disabled"])):ve("",!0),ae.runtime?.capabilities?.includes("session.prompt")?(f(),we(Me,{key:4,onClick:me=>p.value=ae},{default:Z(()=>[B(De,{name:"document"}),ke(W(o(c)("generated.sessionPrompt.title")),1)]),_:1},8,["onClick"])):ve("",!0),ae.runtime?.capabilities?.includes("session.schedule")?(f(),we(Me,{key:5,onClick:me=>{D.value=ae,E.value=!0}},{default:Z(()=>[B(De,{name:"clock"}),ke(W(o(c)("generated.scheduledSession.title")),1)]),_:1},8,["onClick"])):ve("",!0),n.canDeleteSession?.(ae)!==!1?(f(),we(Me,{key:6,divided:"",onClick:me=>a("deleteSession",ae)},{default:Z(()=>[B(De,{name:"delete"}),ke(W(o(c)("generated.workspaceSessionList.delete")),1)]),_:1},8,["onClick"])):ve("",!0)]),_:2},1024)]),default:Z(()=>[Le((f(),O("button",{class:"session-more-button utility-control",disabled:e.loading,"aria-label":o(c)("generated.workspaceSessionList.moreSessionActions",{value0:e.title(ae)}),type:"button"},[B(De,{name:"more"})],8,a0)),[[Ye,o(c)("generated.workspaceSessionList.moreSessionActions2")]])]),_:2},1032,["onVisibleChange","onCommand"])):ve("",!0)],42,YI)],42,_I))),128)),e.canLoadMore||e.loadMoreError!==void 0?(f(),O("li",{key:0,ref_key:"appendMarker",ref:v,class:"list-append-state","aria-busy":e.loadingMore},[e.loadingMore&&!u.value?(f(),O("span",{key:0,role:"status","aria-label":o(c)("generated.workspaceSessionList.loading")},[B(gn,{class:"read-loading-indicator"})],8,r0)):ve("",!0),u.value||e.loadMoreError!==void 0&&!e.loadingMore?(f(),we(xe,{key:1,link:"","aria-disabled":e.loadingMore,"aria-busy":e.loadingMore,"aria-label":e.loadingMore?o(c)("common.loading"):void 0,onClick:k},{default:Z(()=>[e.loadingMore?(f(),we(gn,{key:0,class:"read-loading-indicator"})):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-disabled","aria-busy","aria-label"])):ve("",!0)],8,o0)):ve("",!0)])),[[o(wc),T.value]]):e.watchStatus!=="loading"&&e.watchStatus!=="failed"?(f(),O("p",i0,W(o(c)(e.searchQuery?"sessionGroups.noResults":e.sessionGroup==="MAIN"?"sessionGroups.emptyMain":e.sessionGroup==="CHILD"?"sessionGroups.emptyChild":"generated.workspaceSessionList.syncingOpenCodeCodexAndClaudeCodeSessions")),1)):ve("",!0),A.value?(f(),we(Fe,{key:6,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),modelValue:A.value,"onUpdate:modelValue":ee[8]||(ee[8]=ae=>A.value=ae),title:o(c)("generated.workspaceSessionList.currentSkills"),width:"min(560px, calc(100vw - 32px))","append-to-body":"","close-icon":o(qe)("close")},{default:Z(()=>[Le((f(),O("div",s0,[!o(L).loading.value&&o(L).skills.value.length===0?(f(),O("p",l0,W(o(c)("generated.workspaceSessionList.thisWorkspaceHasNoAvailableSkills")),1)):ve("",!0),(f(!0),O(Ve,null,Je(o(L).skills.value,ae=>(f(),O("div",{key:ae.name,class:"effective-skill-row"},[K("div",null,[K("strong",null,W(ae.name),1),K("p",null,W(ae.description||o(c)("generated.workspaceSessionList.noDescription")),1)]),K("span",c0,[B(le,{effect:"plain",type:ae.localStatus==="VALID"?"success":"warning"},{default:Z(()=>[ke(W($(ae.localStatus)),1)]),_:2},1032,["type"]),B(le,{effect:"plain",type:ae.source==="WORKSPACE"?"primary":"info"},{default:Z(()=>[ke(W(ae.source==="WORKSPACE"?o(c)("common.workspace"):o(c)("common.nodeHome")),1)]),_:2},1032,["type"])])]))),128))])),[[nt,o(L).loading.value]])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ve("",!0),y.value?(f(),we(Fe,{key:7,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),modelValue:y.value,"onUpdate:modelValue":ee[9]||(ee[9]=ae=>y.value=ae),title:o(c)("generated.workspaceSessionList.loadedMCP2"),width:"min(560px, calc(100vw - 32px))","append-to-body":"","close-icon":o(qe)("close")},{default:Z(()=>[Le((f(),O("div",d0,[!o(H).loading.value&&o(X).length===0&&Y.value.length===0?(f(),O("p",u0,W(o(c)("generated.workspaceSessionList.thisWorkspaceHasNoLoadedMCPServers")),1)):ve("",!0),(f(!0),O(Ve,null,Je(o(X),ae=>(f(),O("div",{key:ae.serverName,class:"effective-skill-row"},[K("div",null,[K("strong",null,W(ae.displayName),1),K("p",null,W(ae.description||o(c)("generated.workspaceSessionList.noDescription")),1),K("p",v0,W(ae.serverName)+" · "+W(ae.version),1)]),K("span",f0,[B(le,{effect:"plain",type:"success"},{default:Z(()=>[ke(W(o(c)("generated.workspaceSessionList.loaded")),1)]),_:1}),B(le,{effect:"plain",type:ae.origin==="WORKSPACE"?"primary":"info"},{default:Z(()=>[ke(W(ae.origin==="WORKSPACE"?o(c)("common.workspace"):o(c)("common.node")),1)]),_:2},1032,["type"])])]))),128)),Y.value.length>0?(f(!0),O(Ve,{key:1},Je(Y.value,ae=>(f(),O("div",{key:ae,class:"effective-skill-row"},[K("div",null,[K("strong",null,W(o(c)(ae==="mar_schedule"?"generated.workspaceSessionList.marScheduleMcp":"generated.workspaceSessionList.marNotificationMcp")),1),K("p",null,W(o(c)(ae==="mar_schedule"?"generated.workspaceSessionList.marScheduleMcpDescription":"generated.workspaceSessionList.marNotificationMcpDescription")),1),K("p",p0,W(ae),1)]),K("span",g0,[B(le,{effect:"plain",type:"info"},{default:Z(()=>[ke(W(o(c)("generated.workspaceSessionList.executionInjected")),1)]),_:1}),B(le,{effect:"plain",type:"info"},{default:Z(()=>[ke(W(o(c)("generated.workspaceSessionList.builtInMcp")),1)]),_:1})])]))),128)):ve("",!0)])),[[nt,o(H).loading.value]])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ve("",!0),g.value?(f(),we(UI,{key:`${e.nodeId}:${e.workspaceId}:${g.value.id}`,target:{nodeId:e.nodeId,workspaceId:e.workspaceId,sessionId:g.value.id},request:e.request,onClose:ee[10]||(ee[10]=ae=>g.value=void 0)},null,8,["target","request"])):ve("",!0),p.value!==void 0?(f(),we(WI,{key:`${e.nodeId}:${p.value.id}`,"node-id":e.nodeId,"session-id":p.value.id,request:e.request,onClose:ee[11]||(ee[11]=ae=>p.value=void 0)},null,8,["node-id","session-id","request"])):ve("",!0),E.value?(f(),we(DI,{key:10,modelValue:E.value,"onUpdate:modelValue":ee[12]||(ee[12]=ae=>E.value=ae),session:D.value,"node-id":e.nodeId,"workspace-id":e.workspaceId,request:e.request},null,8,["modelValue","session","node-id","workspace-id","request"])):ve("",!0)],8,VI)}}}),h0=dt(m0,[["__scopeId","data-v-c1053782"]]),y0=["aria-busy"],w0={class:"workspace-session-cleanup-description"},k0=["aria-label"],b0={key:0,class:"workspace-session-cleanup-description"},I0={key:0},S0={key:1,class:"workspace-session-cleanup-by-runner"},C0=at({__name:"WorkspaceSessionCleanupDialog",props:{modelValue:{type:Boolean},cleanup:{type:Function}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=Fn({inactiveDays:30}),i=x(!1),l=x(),v=j(()=>c(l.value?.timedOut?"generated.workspaceSessionCleanupDialog.partiallyCompleted":"generated.workspaceSessionCleanupDialog.completed")),u={inactiveDays:[{validator:(p,g,R)=>{if(typeof g=="number"&&Number.isInteger(g)&&g>=1&&g<=365){R();return}R(new Error(c("generated.workspaceSessionCleanupDialog.inactiveDaysInvalid")))},trigger:"change"}]},d=j(()=>{const p=l.value;return p===void 0?[]:Object.entries(p.deletedByRunner).filter(g=>g[1]!==void 0).filter(([,g])=>g>0).map(([g,R])=>`${$n(g)} ${R}`)});function w(p){i.value||p()}function k(){i.value||a("update:modelValue",!1)}async function T(){if(!(!await r.value?.validate().catch(()=>!1)||i.value||s.inactiveDays===void 0)){i.value=!0;try{const g=await n.cleanup(s.inactiveDays);g!==void 0&&(l.value=g)}catch(g){et(g instanceof Error?it(g):c("generated.workspaceSessionCleanupDialog.cleanupFailed"),"error",g)}finally{i.value=!1}}}return(p,g)=>{const R=Ng,b=va,C=ua,I=bt,S=Xt;return e.modelValue?(f(),we(S,{key:0,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),class:"workspace-session-cleanup-dialog","before-close":w,"close-on-click-modal":!i.value,"close-on-press-escape":!i.value,"show-close":!i.value,"model-value":e.modelValue,title:o(c)("generated.workspaceSessionCleanupDialog.title"),width:"min(480px, calc(100vw - 32px))","onUpdate:modelValue":g[1]||(g[1]=m=>a("update:modelValue",m)),"close-icon":o(qe)("close")},{footer:Z(()=>[l.value===void 0?(f(),O(Ve,{key:0},[B(I,{disabled:i.value,onClick:k},{default:Z(()=>[ke(W(o(c)("generated.workspaceSessionCleanupDialog.cancel")),1)]),_:1},8,["disabled"]),B(I,{type:"danger",loading:i.value,"loading-icon":o(qe)("loading-action"),onClick:T},{default:Z(()=>[ke(W(o(c)("generated.workspaceSessionCleanupDialog.cleanup")),1)]),_:1},8,["loading","loading-icon"])],64)):(f(),we(I,{key:1,onClick:k},{default:Z(()=>[ke(W(o(c)("common.close")),1)]),_:1}))]),default:Z(()=>[K("div",{class:"workspace-session-cleanup-content","aria-busy":i.value},[l.value===void 0?(f(),O(Ve,{key:0},[K("p",w0,W(o(c)("generated.workspaceSessionCleanupDialog.description")),1),B(C,{ref_key:"formRef",ref:r,model:s,rules:u,"label-position":"top"},{default:Z(()=>[B(b,{label:o(c)("generated.workspaceSessionCleanupDialog.inactiveDays"),prop:"inactiveDays"},{default:Z(()=>[B(R,{modelValue:s.inactiveDays,"onUpdate:modelValue":g[0]||(g[0]=m=>s.inactiveDays=m),disabled:i.value,max:365,min:1,step:1,"step-strictly":""},{"decrease-icon":Z(()=>[B(De,{name:"subtract"})]),"increase-icon":Z(()=>[B(De,{name:"plus"})]),_:1},8,["modelValue","disabled"])]),_:1},8,["label"])]),_:1},8,["model"])],64)):(f(),O("section",{key:1,class:"workspace-session-cleanup-result","aria-label":v.value},[K("h3",null,W(v.value),1),l.value.timedOut?(f(),O("p",b0,W(o(c)("generated.workspaceSessionCleanupDialog.timeLimitReached")),1)):ve("",!0),K("dl",{class:Ke(["workspace-session-cleanup-statistics",{"has-remaining":l.value.remaining!==void 0}])},[K("div",null,[K("dt",null,W(o(c)("generated.workspaceSessionCleanupDialog.deleted")),1),K("dd",null,W(l.value.deleted),1)]),K("div",null,[K("dt",null,W(o(c)("generated.workspaceSessionCleanupDialog.skipped")),1),K("dd",null,W(l.value.skipped),1)]),K("div",{class:Ke({failed:l.value.failed>0})},[K("dt",null,W(o(c)("generated.workspaceSessionCleanupDialog.failed")),1),K("dd",null,W(l.value.failed),1)],2),l.value.remaining!==void 0?(f(),O("div",I0,[K("dt",null,W(o(c)("generated.workspaceSessionCleanupDialog.remaining")),1),K("dd",null,W(l.value.remaining),1)])):ve("",!0)],2),d.value.length>0?(f(),O("dl",S0,[K("dt",null,W(o(c)("generated.workspaceSessionCleanupDialog.byRunner")),1),K("dd",null,W(d.value.join(", ")),1)])):ve("",!0)],8,k0))],8,y0)]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","close-on-click-modal","close-on-press-escape","show-close","model-value","title","close-icon"])):ve("",!0)}}}),T0=dt(C0,[["__scopeId","data-v-5e951efe"]]),E0=["aria-label","disabled"],R0=["aria-label"],A0={key:0,class:"workspace-tab workspace-tab-placeholder active",role:"tab","aria-selected":"true"},N0={class:"workspace-tab-content"},D0={key:0},P0=["data-tab-id","onPointerdown","onContextmenu","onFocusin"],O0=["aria-label","aria-selected","onClick"],L0={class:"workspace-tab-content"},W0={class:"workspace-tab-meta"},M0=["aria-description"],x0={class:"workspace-tab-node-label"},$0={key:1,class:"workspace-tab-node"},F0=["aria-label"],U0=["aria-label"],V0=["aria-label","onClick"],q0=["aria-label","onClick"],H0={key:1,class:"workspace-tab-overflow-actions"},B0=["aria-label","disabled"],G0=["aria-label"],z0={class:"workspace-tab-meta"},K0=["aria-description"],j0={class:"workspace-tab-node-label"},_0={key:1,class:"workspace-tab-node"},Y0=["aria-label"],Q0=["aria-label"],J0=at({__name:"WorkspaceTabs",props:{placement:{},tabs:{},activeTabId:{},emptyLabel:{},emptyContext:{},nodeLabel:{type:Function},directAvailable:{type:Function},directDescription:{type:Function},hasActiveRun:{type:Function},hasUnread:{type:Function}},emits:["activate","close","reorder","pin"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=x(),i=x(!1),l=x(),v=x(!1),u=x(!1),d=x(!1),w=x({}),k=x(0),T=x(),p=x(),g=j(()=>n.tabs.findIndex(P=>P.id===T.value?.tabId)),R=j(()=>n.tabs[g.value]?.pinned===!0);let b,C=0,I=0,S=!1,m,A;function L(){return window.matchMedia("(max-width: 767px)").matches}function y(){const P=l.value;if(P===void 0)return;const G=P.scrollWidth>P.clientWidth+1;d.value=G,v.value=G&&P.scrollLeft>1,u.value=G&&P.scrollLeft+P.clientWidth<P.scrollWidth-1}function D(){const P=l.value,G={};let ue=0;if(P!==void 0&&!L()){const ne=P.querySelector(".workspace-tab:not(.pinned)"),M=getComputedStyle(P),ee=Number.parseFloat(M.columnGap)||0,le=Number.parseFloat(M.paddingLeft)||0;ue=le;for(const xe of P.querySelectorAll(".workspace-tab.pinned"))xe.dataset.tabId!==void 0&&(G[xe.dataset.tabId]=ue-le,ue+=xe.getBoundingClientRect().width+ee);const Ee=ne===null?0:Number.parseFloat(getComputedStyle(ne).minWidth);if(ne===null||Object.keys(G).length===0||P.clientWidth-ue-(Number.parseFloat(M.paddingRight)||0)<Ee){ue=0;for(const xe of Object.keys(G))delete G[xe]}}w.value=G,k.value=ue,y()}function E(){const P=l.value;if(A?.disconnect(),P!==void 0){A??=new ResizeObserver(()=>{D(),X()}),A.observe(P);for(const G of P.querySelectorAll(".workspace-tab"))A.observe(G)}}function H(P){const G=P===void 0?void 0:l.value?.querySelector(`[data-tab-id="${CSS.escape(P)}"]`),ue=l.value;if(G==null||ue===void 0||P!==void 0&&w.value[P]!==void 0)return;const ne=G.getBoundingClientRect(),M=ue.getBoundingClientRect(),ee=getComputedStyle(ue),le=ue.querySelectorAll(".workspace-tab.sticky-pinned"),Ee=le.item(le.length-1),xe=Ee?Ee.getBoundingClientRect().right+(Number.parseFloat(ee.columnGap)||0):M.left+(Number.parseFloat(ee.paddingLeft)||0),Me=M.right-(Number.parseFloat(ee.paddingRight)||0),Se=ne.left<xe?ne.left-xe:ne.right>Me?ne.right-Me:0;Se!==0&&ue.scrollBy({left:Se,behavior:"smooth"})}function X(){H(n.activeTabId)}function Y(P,G){const ue=P.currentTarget;requestAnimationFrame(()=>{ue.isConnected&&ue.contains(document.activeElement)&&H(G)})}function U(P){const G=l.value;G!==void 0&&G.scrollBy({left:P*Math.max(180,Math.floor((G.clientWidth-k.value)*.7)),behavior:"smooth"})}function Q(P){if(typeof P!="string")return;const G=n.tabs.find(ue=>ue.id===P);G!==void 0&&a("activate",G)}async function $(P,G){P.preventDefault(),P.stopPropagation(),T.value=void 0,await ut();const ue={tabId:G.id,x:Math.max(6,Math.min(P.clientX,window.innerWidth-180)),y:Math.max(6,Math.min(P.clientY,window.innerHeight-154))};T.value=ue,await ut(),T.value?.tabId===ue.tabId&&p.value?.click()}function V(P){const G=g.value,ue=n.tabs[G];if(T.value=void 0,ue!==void 0)if(P==="pin")a("pin",ue.id,ue.pinned!==!0);else if(P==="close")ue.pinned!==!0&&a("close",ue);else{const ne=G+(P==="previous"?-1:1);ne>=0&&ne<n.tabs.length&&a("reorder",ue.id,ne)}}let N;function h(P=!1){ut(()=>{E(),D(),P&&X()})}He(()=>n.tabs,()=>{g.value<0&&(T.value=void 0),h(!0)},{flush:"post",immediate:!0}),He(()=>n.activeTabId,()=>h(!0),{flush:"post"}),Dt(()=>{N=xt.register({command:"workspaceTabs.dismissMenu",priority:150,scope:"overlay",allowedInBlockedScopes:["file-preview","terminal"],keys:[{key:"Escape"}],when:()=>T.value!==void 0,execute:()=>(T.value=void 0,"HANDLED")})}),mt(()=>{A?.disconnect(),N?.()});function F(){r.value=void 0,s.value=void 0,b=void 0,S=!1,m=void 0}function z(P,G,ue){b=G.pointerId,C=G.clientX,I=G.clientY,S=!1,m=ue,r.value=P.dataset.tabId,P.setPointerCapture(G.pointerId)}function fe(){i.value=!0,window.setTimeout(()=>{i.value=!1},0)}function J(P,G){P.button!==0||P.target.closest(".tab-close, .tab-pin")!==null||L()||z(P.currentTarget,P,G)}function re(P){if(b!==P.pointerId||r.value===void 0||(S||(S=Math.hypot(P.clientX-C,P.clientY-I)>=4),!S))return;const G=document.elementFromPoint(P.clientX,P.clientY);s.value=G?.closest(".workspace-tab")?.dataset.tabId,P.preventDefault()}function ge(P){if(b!==P.pointerId||r.value===void 0)return;const G=r.value,ue=document.elementFromPoint(P.clientX,P.clientY)?.closest(".workspace-tab"),ne=ue?.dataset.tabId,M=ue?.parentElement;if(!S&&m!==void 0&&(oe(m),fe()),S&&ue!==void 0&&ue!==null&&ne!==void 0&&M!==null&&M!==void 0){const ee=[...M.children],le=ee.findIndex(Se=>Se.dataset.tabId===ne),Ee=ee.findIndex(Se=>Se.dataset.tabId===G),xe=ue.getBoundingClientRect().left+ue.offsetWidth/2,Me=P.clientX>xe?le+1:le;a("reorder",G,Me>Ee?Me-1:Me),fe()}F()}function ce(P){b===P.pointerId&&F()}function oe(P){i.value||a("activate",P)}return(P,G)=>{const ue=ln,ne=sn,M=rn,ee=St("tooltip");return e.tabs.length>0||e.placement==="header"&&e.emptyLabel!==void 0?(f(),O("section",{key:0,class:Ke(["workspace-tab-strip",`workspace-tab-strip-${e.placement}`])},[d.value?(f(),O("button",{key:0,class:"tab-strip-scroll","aria-label":o(c)("workspaceTabs.scrollPrevious"),disabled:!v.value,type:"button",onClick:G[0]||(G[0]=le=>U(-1))},[B(De,{name:"chevron-left"})],8,E0)):ve("",!0),K("div",{ref_key:"tabList",ref:l,class:"workspace-tabs",role:"tablist","aria-label":o(c)("generated.workspaceTabs.openWorkspaces"),onScrollPassive:y},[e.tabs.length===0&&e.emptyLabel!==void 0?(f(),O("div",A0,[K("span",N0,[K("span",null,W(e.emptyLabel),1),e.emptyContext?(f(),O("small",D0,W(e.emptyContext),1)):ve("",!0)])])):ve("",!0),(f(!0),O(Ve,null,Je(e.tabs,le=>(f(),O("div",{key:le.id,class:Ke(["workspace-tab",{active:e.activeTabId===le.id,pinned:le.pinned===!0,"sticky-pinned":w.value[le.id]!==void 0,dragging:r.value===le.id,"drag-over":s.value===le.id&&r.value!==le.id}]),"data-tab-id":le.id,style:It(w.value[le.id]===void 0?void 0:{left:`${w.value[le.id]}px`}),onPointerdown:Ee=>J(Ee,le),onPointermove:re,onPointerup:ge,onPointercancel:ce,onContextmenu:Ee=>$(Ee,le),onFocusin:Ee=>Y(Ee,le.id)},[Le((f(),O("button",{"aria-label":le.label,role:"tab","aria-selected":e.activeTabId===le.id,type:"button",onClick:Ee=>oe(le)},[K("span",L0,[K("span",null,W(le.label),1),K("small",W0,[e.activeTabId===le.id&&e.directAvailable(le.nodeId)?Le((f(),O("span",{key:0,class:"workspace-tab-node direct-available-node","aria-description":e.directDescription(le.nodeId)},[K("span",x0,W(e.nodeLabel(le)),1),B(De,{name:"link",class:"workspace-tab-direct-icon","aria-hidden":"true"})],8,M0)),[[ee,e.directDescription(le.nodeId)]]):(f(),O("span",$0,W(e.nodeLabel(le)),1)),e.hasActiveRun(le.nodeId,le.workspaceId)?Le((f(),O("span",{key:2,class:"workspace-tab-running session-activity managed_active",role:"img","aria-label":o(c)("workspaceTabs.running")},[...G[3]||(G[3]=[K("i",{"aria-hidden":"true"},null,-1)])],8,F0)),[[ee,o(c)("generated.sessionPresentation.managed")]]):ve("",!0),e.hasUnread(le.nodeId,le.workspaceId)?Le((f(),O("span",{key:3,class:"workspace-tab-unread mar-unread-label","aria-label":o(c)("workspaceTabs.unreadDescription")},[ke(W(o(c)("workspaceTabs.unread")),1)],8,U0)),[[ee,o(c)("workspaceTabs.unreadDescription")]]):ve("",!0)])])],8,O0)),[[ee,le.label]]),le.pinned===!0?Le((f(),O("button",{key:0,class:"tab-pin icon-button utility-control","aria-label":o(c)("workspaceTabs.unpinLabel",{label:le.label}),type:"button",onClick:rt(Ee=>a("pin",le.id,!1),["stop"])},[B(De,{name:"pin"})],8,V0)),[[ee,o(c)("workspaceTabs.unpin")]]):(f(),O("button",{key:1,class:"tab-close icon-button utility-control","aria-label":o(c)("generated.workspaceTabs.close",{value0:le.label}),type:"button",onClick:Ee=>a("close",le)},[B(De,{name:"close"})],8,q0))],46,P0))),128))],40,R0),d.value?(f(),O("div",H0,[K("button",{class:"tab-strip-scroll","aria-label":o(c)("workspaceTabs.scrollNext"),disabled:!u.value,type:"button",onClick:G[1]||(G[1]=le=>U(1))},[B(De,{name:"chevron-right"})],8,B0),B(M,{trigger:"click",onCommand:Q},{dropdown:Z(()=>[B(ne,{class:"workspace-tab-menu-list"},{default:Z(()=>[(f(!0),O(Ve,null,Je(e.tabs,le=>(f(),we(ue,{key:le.id,class:Ke({active:e.activeTabId===le.id}),command:le.id},{default:Z(()=>[K("span",null,W(le.label),1),K("small",z0,[e.activeTabId===le.id&&e.directAvailable(le.nodeId)?Le((f(),O("span",{key:0,class:"workspace-tab-node direct-available-node","aria-description":e.directDescription(le.nodeId)},[K("span",j0,W(e.nodeLabel(le)),1),B(De,{name:"link",class:"workspace-tab-direct-icon","aria-hidden":"true"})],8,K0)),[[ee,e.directDescription(le.nodeId)]]):(f(),O("span",_0,W(e.nodeLabel(le)),1)),e.hasActiveRun(le.nodeId,le.workspaceId)?Le((f(),O("span",{key:2,class:"workspace-tab-running session-activity managed_active",role:"img","aria-label":o(c)("workspaceTabs.running")},[...G[4]||(G[4]=[K("i",{"aria-hidden":"true"},null,-1)])],8,Y0)),[[ee,o(c)("generated.sessionPresentation.managed")]]):ve("",!0),e.hasUnread(le.nodeId,le.workspaceId)?Le((f(),O("span",{key:3,class:"workspace-tab-unread mar-unread-label","aria-label":o(c)("workspaceTabs.unreadDescription")},[ke(W(o(c)("workspaceTabs.unread")),1)],8,Q0)),[[ee,o(c)("workspaceTabs.unreadDescription")]]):ve("",!0)])]),_:2},1032,["class","command"]))),128))]),_:1})]),default:Z(()=>[K("button",{class:"workspace-tab-menu","aria-label":o(c)("workspaceTabs.allOpenWorkspaces"),type:"button"},[B(De,{name:"chevron-down"})],8,G0)]),_:1})])):ve("",!0),T.value!==void 0?(f(),O("div",{key:2,class:"workspace-tab-context-anchor",style:It({left:`${T.value.x}px`,top:`${T.value.y}px`})},[B(M,{trigger:"click",placement:"bottom-start",onCommand:V,onVisibleChange:G[2]||(G[2]=le=>!le&&(T.value=void 0))},{dropdown:Z(()=>[B(ne,null,{default:Z(()=>[B(ue,{command:"pin"},{default:Z(()=>[B(De,{name:"pin"}),ke(W(o(c)(R.value?"workspaceTabs.unpin":"workspaceTabs.pin")),1)]),_:1}),B(ue,{command:"previous",disabled:g.value<=0},{default:Z(()=>[B(De,{name:"chevron-left"}),ke(W(o(c)("workspaceTabs.movePrevious")),1)]),_:1},8,["disabled"]),B(ue,{command:"next",disabled:g.value<0||g.value>=e.tabs.length-1},{default:Z(()=>[B(De,{name:"chevron-right"}),ke(W(o(c)("workspaceTabs.moveNext")),1)]),_:1},8,["disabled"]),B(ue,{command:"close",divided:"",disabled:R.value},{default:Z(()=>[B(De,{name:"close"}),ke(W(o(c)("workspaceTabs.close")),1)]),_:1},8,["disabled"])]),_:1})]),default:Z(()=>[K("button",{ref_key:"contextMenuTrigger",ref:p,class:"workspace-tab-context-trigger",type:"button",tabindex:"-1"},null,512)]),_:1})],4)):ve("",!0)],2)):ve("",!0)}}}),el=dt(J0,[["__scopeId","data-v-5e123e97"]]),X0={key:0,class:"workspace-picker-toolbar"},Z0=["aria-label"],eS={key:0},tS={key:2},nS={class:"workspace-picker-toolbar-actions"},aS={key:2,class:"workspace-directory-list"},oS={key:0,class:"pending-directory"},rS={type:"button"},iS=["aria-label"],sS=["disabled","onClick","onDblclick"],lS={key:0},cS=["aria-label","disabled","onClick"],dS={key:1,class:"workspace-directory-empty"},uS={key:3,class:"workspace-picker-empty"},vS={key:4,class:"workspace-picker-empty"},fS={key:5,class:"workspace-picker-empty"},pS={class:"workspace-picker-actions"},gS={key:0},mS={key:1},hS=at({__name:"WorkspaceRegistrationPicker",props:{modelValue:{},directory:{},selectedPath:{},pendingDirectoryName:{},loadingDirectory:{type:Boolean},loading:{type:Boolean},nodeReady:{type:Boolean},selectedPathValid:{type:Boolean},registrationDisabled:{type:Boolean},preserveGitConfig:{type:Boolean}},emits:["update:modelValue","update:preserveGitConfig","navigate","select","select-pending","discard-pending","register"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=x(!1),i=x(""),l=Fn({name:""}),v=j(()=>({name:[{required:!0,message:c("generated.workspaceRegistrationPicker.enterADirectoryName"),trigger:"blur"},{validator:(g,R,b)=>{const C=R.trim();if(C.length===0||C.length>255||C==="."||C===".."||/[\\/\0]/u.test(C)){b(new Error(c("generated.workspaceRegistrationPicker.enterASingleDirectoryNameWithoutPath")));return}b()},trigger:["blur","change"]}]})),u=j(()=>n.nodeReady&&n.directory?.selectable===!0),d=j(()=>p(n.directory)),w=j(()=>n.directory?.entries.filter(g=>cc(g.path,i.value))??[]);He(()=>n.directory,g=>{g===void 0&&(s.value=!1,i.value="")});function k(){l.name="",s.value=!0}async function T(){await r.value?.validate().catch(()=>!1)&&(a("select-pending",l.name.trim()),s.value=!1)}function p(g){if(g===void 0)return[];const R=g.currentPath.includes("\\"),b=R?"\\":"/",C=D=>R?D.toLocaleLowerCase():D,I=C(g.currentPath),S=[...g.browseRoots].sort((D,E)=>E.length-D.length).find(D=>{const E=C(D).replace(/[\\/]+$/u,"");return I===E||I.startsWith(`${E}${b}`)});if(S===void 0)return[{label:g.currentPath,path:g.currentPath}];const m=S.replace(/[\\/]+$/u,""),A=g.currentPath.slice(m.length).replace(/^[\\/]+/u,""),L=[{label:S,path:S}];let y=m;for(const D of A.split(/[\\/]/u).filter(Boolean))y=`${y}${b}${D}`,L.push({label:D,path:y});return L}return(g,R)=>{const b=bt,C=ln,I=sn,S=rn,m=Ft,A=da,L=jl,y=Zg,D=Xg,E=va,H=ua,X=Xt,Y=St("tooltip");return f(),O(Ve,null,[B(D,{"model-value":e.modelValue,class:"workspace-tools","onUpdate:modelValue":R[8]||(R[8]=U=>a("update:modelValue",U))},{default:Z(()=>[B(y,{name:"register",title:o(c)("generated.workspaceRegistrationPicker.registerANewWorkspace"),icon:o(qe)("chevron-right")},{default:Z(()=>[K("form",{class:"workspace-picker",onSubmit:R[7]||(R[7]=rt(U=>a("register"),["prevent"]))},[Ct(g.$slots,"ownership",{},void 0,!0),e.directory!==void 0?(f(),O("div",X0,[Le((f(),we(b,{"aria-label":o(c)("generated.workspaceRegistrationPicker.goToParentDirectory"),icon:o(qe)("chevron-left"),disabled:e.directory.parentPath===null||e.loadingDirectory,"native-type":"button",text:"",onClick:R[0]||(R[0]=U=>a("navigate",e.directory.parentPath??void 0))},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.up")),1)]),_:1},8,["aria-label","icon","disabled"])),[[Y,o(c)("generated.workspaceRegistrationPicker.goToParentDirectory2")]]),e.directory.browseRoots.length>1?(f(),we(S,{key:0,disabled:e.loadingDirectory,trigger:"click",onCommand:R[1]||(R[1]=U=>a("navigate",U))},{dropdown:Z(()=>[B(I,null,{default:Z(()=>[(f(!0),O(Ve,null,Je(e.directory.browseRoots,U=>(f(),we(C,{key:U,command:U},{default:Z(()=>[ke(W(U),1)]),_:2},1032,["command"]))),128))]),_:1})]),default:Z(()=>[B(b,{"native-type":"button",text:""},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.roots")),1),B(De,{name:"chevron-down",class:"mar-icon--right"})]),_:1})]),_:1},8,["disabled"])):ve("",!0),K("nav",{class:"workspace-picker-breadcrumbs","aria-label":o(c)("generated.workspaceRegistrationPicker.currentDirectory")},[(f(!0),O(Ve,null,Je(d.value,(U,Q)=>(f(),O(Ve,{key:U.path},[Q>0?(f(),O("span",eS,"/")):ve("",!0),Q<d.value.length-1?Le((f(),we(b,{key:1,disabled:e.loadingDirectory,text:"",onClick:$=>a("navigate",U.path)},{default:Z(()=>[ke(W(U.label),1)]),_:2},1032,["disabled","onClick"])),[[Y,U.path]]):Le((f(),O("strong",tS,[ke(W(U.label),1)])),[[Y,U.path]])],64))),128))],8,Z0),K("div",nS,[Le(B(b,{class:"utility-control","aria-label":o(c)("generated.workspaceRegistrationPicker.refreshDirectory"),icon:o(qe)("refresh"),disabled:e.loadingDirectory,"native-type":"button",text:"",onClick:R[2]||(R[2]=U=>a("navigate",e.directory.currentPath))},null,8,["aria-label","icon","disabled"]),[[Y,o(c)("generated.workspaceRegistrationPicker.refreshDirectory2")]]),B(b,{icon:o(qe)("folder-add"),disabled:!u.value||e.loadingDirectory,"native-type":"button",onClick:k},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.newDirectory")),1)]),_:1},8,["icon","disabled"]),B(b,{class:Ke({selected:e.selectedPath===e.directory.currentPath}),disabled:e.loadingDirectory||!e.directory.selectable,icon:o(qe)("check"),"native-type":"button",onClick:R[3]||(R[3]=U=>a("select",e.directory.currentPath))},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.selectCurrentDirectory")),1)]),_:1},8,["class","disabled","icon"])])])):ve("",!0),e.directory!==void 0?(f(),we(m,{key:1,modelValue:i.value,"onUpdate:modelValue":R[4]||(R[4]=U=>i.value=U),class:"workspace-picker-filter","aria-label":o(c)("workspaceDisplayFilter.label"),clearable:"",placeholder:o(c)("workspaceDisplayFilter.placeholder"),size:"small","clear-icon":o(qe)("clear-input")},{prefix:Z(()=>[B(De,{name:"search"})]),_:1},8,["modelValue","aria-label","placeholder","clear-icon"])):ve("",!0),e.directory!==void 0?(f(),O("ul",aS,[e.pendingDirectoryName?(f(),O("li",oS,[K("button",rS,[B(yn,{name:e.pendingDirectoryName,kind:"DIRECTORY"},null,8,["name"]),K("span",null,W(e.pendingDirectoryName),1),B(A,{type:"warning"},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.pending")),1)]),_:1})]),Le((f(),O("button",{"aria-label":o(c)("generated.workspaceRegistrationPicker.cancelNewDirectory"),type:"button",onClick:R[5]||(R[5]=U=>a("discard-pending"))},[B(De,{name:"close"})],8,iS)),[[Y,o(c)("generated.workspaceRegistrationPicker.cancelNewDirectory2")]])])):ve("",!0),(f(!0),O(Ve,null,Je(w.value,U=>(f(),O("li",{key:U.path},[K("button",{class:Ke({selected:e.selectedPath===U.path}),disabled:e.loadingDirectory||!U.selectable,type:"button",onClick:Q=>a("select",U.path),onDblclick:Q=>a("navigate",U.path)},[B(yn,{name:U.name,kind:"DIRECTORY"},null,8,["name"]),K("span",null,W(U.name),1),U.selectable?ve("",!0):(f(),O("small",lS,W(o(c)("generated.workspaceRegistrationPicker.outsideAllowedRoots")),1))],42,sS),Le((f(),O("button",{"aria-label":o(c)("generated.workspaceRegistrationPicker.open",{value0:U.name}),disabled:e.loadingDirectory,type:"button",onClick:Q=>a("navigate",U.path)},[B(De,{name:"chevron-right"})],8,cS)),[[Y,o(c)("generated.workspaceRegistrationPicker.open2",{value0:U.name})]])]))),128)),i.value.trim().length>0&&w.value.length===0&&e.pendingDirectoryName.length===0?(f(),O("li",dS,W(o(c)("workspaceDisplayFilter.empty")),1)):ve("",!0)])):e.loadingDirectory?(f(),O("p",uS,W(o(c)("generated.workspaceRegistrationPicker.loadingAllowedRoots")),1)):(f(),O("p",vS,W(o(c)("generated.workspaceRegistrationPicker.expandAndSelectADirectoryToRegister")),1)),e.directory?.truncated?(f(),O("p",fS,W(o(c)("generated.workspaceRegistrationPicker.onlyTheFirst200ChildDirectoriesAre")),1)):ve("",!0),B(L,{"model-value":e.preserveGitConfig??!1,disabled:e.loading||!e.nodeReady,"onUpdate:modelValue":R[6]||(R[6]=U=>a("update:preserveGitConfig",U===!0))},{default:Z(()=>[ke(W(o(c)("personalGit.preserve")),1)]),_:1},8,["model-value","disabled"]),K("div",pS,[e.selectedPath?Le((f(),O("code",gS,[ke(W(o(c)("generated.workspaceRegistrationPicker.selected"))+" "+W(e.selectedPath),1)])),[[Y,e.selectedPath]]):(f(),O("span",mS)),B(b,{disabled:e.loading||e.loadingDirectory||!e.nodeReady||!e.selectedPathValid||e.registrationDisabled,loading:e.loading,"native-type":"submit",type:"primary","loading-icon":o(qe)("loading-action")},{default:Z(()=>[ke(W(e.pendingDirectoryName?o(c)("generated.workspaceRegistrationPicker.createAndRegister"):o(c)("generated.workspaceRegistrationPicker.registerWorkspace")),1)]),_:1},8,["disabled","loading","loading-icon"])])],32)]),_:3},8,["title","icon"])]),_:3},8,["model-value"]),s.value?(f(),we(X,{key:0,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),modelValue:s.value,"onUpdate:modelValue":R[11]||(R[11]=U=>s.value=U),title:o(c)("generated.workspaceRegistrationPicker.newDirectory2"),width:"min(460px, calc(100vw - 32px))","close-icon":o(qe)("close")},{footer:Z(()=>[B(b,{"native-type":"button",onClick:R[10]||(R[10]=U=>s.value=!1)},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.cancel")),1)]),_:1}),B(b,{"native-type":"button",type:"primary",onClick:T},{default:Z(()=>[ke(W(o(c)("generated.workspaceRegistrationPicker.confirm")),1)]),_:1})]),default:Z(()=>[B(H,{ref_key:"directoryForm",ref:r,model:l,rules:v.value,"label-position":"top"},{default:Z(()=>[B(E,{label:o(c)("generated.workspaceRegistrationPicker.directoryName"),prop:"name"},{default:Z(()=>[B(m,{modelValue:l.name,"onUpdate:modelValue":R[9]||(R[9]=U=>l.name=U),maxlength:"255",placeholder:o(c)("generated.workspaceRegistrationPicker.enterADirectoryName2"),onKeydown:pl(rt(T,["prevent","stop"]),["enter"])},null,8,["modelValue","placeholder","onKeydown"])]),_:1},8,["label"])]),_:1},8,["model","rules"])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ve("",!0)],64)}}}),kc=dt(hS,[["__scopeId","data-v-800c8074"]]),yS=["aria-label","aria-expanded"],wS=["aria-label"],kS={key:2,class:"workspace-tabs-slot"},bS=["aria-label"],IS={key:0},SS={key:1},CS=at({__name:"WorkbenchHeader",props:{mobileViewport:{type:Boolean},view:{},sidebarCollapsed:{type:Boolean},settingsSection:{},managementSection:{},settingsItems:{},managementItems:{},conversationTitle:{}},emits:["toggleSidebar"],setup(e,{emit:t}){const n=t;return(a,r)=>{const s=St("tooltip");return!e.mobileViewport||e.view!=="nodes"?(f(),O("header",{key:0,class:Ke(["workbench-header",{"workspace-tabs-active":e.view==="nodes"}])},[e.mobileViewport?ve("",!0):(f(),O("button",{key:0,class:"workbench-tree-toggle icon-button utility-control","aria-label":e.sidebarCollapsed?a.$t("navigation.expandSidebar"):a.$t("navigation.collapseSidebar"),"aria-expanded":!e.sidebarCollapsed,type:"button",onClick:r[0]||(r[0]=i=>n("toggleSidebar"))},[e.sidebarCollapsed?(f(),we(De,{key:0,name:"menu"})):(f(),we(De,{key:1,name:"menu"}))],8,yS)),e.view==="conversations"&&e.conversationTitle?(f(),O("div",{key:1,class:"breadcrumb","aria-label":a.$t("navigation.currentLocation")},[K("span",null,W(a.$t("navigation.conversations")),1),Le((f(),O("strong",null,[ke(W(e.conversationTitle),1)])),[[s,e.conversationTitle]])],8,wS)):e.view==="nodes"?(f(),O("div",kS,[Ct(a.$slots,"workspace-tabs",{},void 0,!0)])):(f(),O("div",{key:3,class:"breadcrumb","aria-label":a.$t("navigation.currentLocation")},[K("span",null,W(e.view==="settings"?a.$t("navigation.settings"):e.view==="conversations"?a.$t("navigation.conversations"):a.$t("navigation.management")),1),e.view==="settings"?(f(),O("strong",IS,W(e.settingsItems.find(i=>i.id===e.settingsSection)?.label),1)):e.view==="management"?(f(),O("strong",SS,W(e.managementItems.find(i=>i.id===e.managementSection)?.label),1)):ve("",!0)],8,bS))],2)):ve("",!0)}}}),TS=dt(CS,[["__scopeId","data-v-b9909a6a"]]),ES=["aria-label"],RS={class:"admin-terminal-header"},AS=["aria-label"],NS=["aria-selected","onClick"],DS=["aria-label","disabled","onClick"],PS=["aria-label","disabled"],OS={key:1,class:"admin-terminal-actions"},LS={key:0,class:"terminal-profile"},WS={key:0,class:"admin-terminal-content"},MS={class:"terminal-context-cache"},xS=at({__name:"TerminalDock",props:{errorMessage:{type:Function},nodeId:{},direct:{},workspaceId:{},csrfToken:{},renewCsrfToken:{type:Function},enabled:{type:Boolean},capability:{},nodeOsRelease:{},visible:{type:Boolean},embedded:{type:Boolean},mobileMode:{type:Boolean},active:{type:Boolean}},emits:["notice","collapse"],setup(e,{expose:t,emit:n}){const a=kr(()=>br(()=>import("./TerminalTabView-KFAT6dN-.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70]))),r=e,s=n,i=x(),l=x();let v;const u=x(!1),d=x(),w=x(!1),k=x(!1),T=x(!1),p=x(!1);let g=0,R=0,b=!1,C=!1;const I=x([]),S=x(),m=new Map,A=Za({csrfToken:()=>r.csrfToken,renewCsrfToken:r.renewCsrfToken}),L=j(()=>r.enabled&&r.nodeId!==void 0&&r.capability?.available===!0),y=j(()=>{if(r.capability?.supportsConPty!==!0||r.nodeOsRelease===void 0)return;const P=/^\d+\.\d+\.(\d+)(?:\.|$)/u.exec(r.nodeOsRelease)?.[1];if(P===void 0)return;const G=Number(P);return Number.isSafeInteger(G)&&G>0?G:void 0}),D=j(()=>(r.capability?.profiles??[]).map(P=>{const G=P.label.replace(/\s*\(Tab completion supported\)$/u,""),ue={"User Shell":"nodeMessages.userShell","Windows Command Prompt":"nodeMessages.windowsCommandPrompt"}[G];return{...P,label:ue===void 0?G:c(ue)}})),E=j(()=>r.workspaceId===void 0?c("generated.terminalDock.nodeTerminal"):c("generated.terminalDock.workspaceTerminal")),H=j(()=>L.value?c("generated.terminalDock.newTerminal"):r.nodeId===void 0?c("generated.terminalDock.selectAnOnlineNodeFirst"):r.capability?.reasonCode??c("generated.terminalDock.theTargetNodeDoesNotProvideA"));function X(P){S.value!==P&&(S.value=P)}function Y(P){I.value=[...I.value.filter(G=>G.id!==P.id),P].filter(G=>G.state==="RUNNING")}function U(P){P&&!w.value&&(T.value=!1),w.value=P,P&&(k.value=!0)}function Q(){U(!w.value)}async function $(){C=!0,U(!0),await z(),await N()}async function V(){if(w.value){C=!1,U(!1);return}await $()}async function N(){if(await ut(),b||!C||!w.value||!r.active||!r.visible)return;const P=S.value,G=P===void 0?void 0:m.get(P);G!==void 0&&(G.focus(),C=!1)}async function h(){if(b||!r.active||r.nodeId===void 0||r.capability===void 0)return;const P=++g;if(!L.value){I.value=[],S.value=void 0,p.value=!1;return}p.value=!0;try{const G=await A.request(`/api/terminals?nodeId=${encodeURIComponent(r.nodeId)}`);if(P!==g)return;const ue=new Set(I.value.map(ne=>ne.id));I.value=G.terminals.filter(ne=>ue.has(ne.id)&&ne.state==="RUNNING"&&ne.workspaceId===(r.workspaceId??null)),I.value.some(ne=>ne.id===S.value)||(S.value=I.value[0]?.id)}catch(G){if(P!==g)return;s("notice",c("generated.terminalDock.unableToLoadTerminals",{value0:ge(G)}),"error",G)}finally{if(P!==g)return;p.value=!1,z()}}async function F(){if(b||!r.active||!L.value||r.nodeId===void 0||u.value)return;U(!0),T.value=!0;const P=r.nodeId,G=r.workspaceId,ue=R;u.value=!0;try{const ne=await A.request("/api/terminals",{method:"POST",body:JSON.stringify({nodeId:P,...G===void 0?{}:{workspaceId:G},...i.value===void 0?{}:{profileId:i.value},rows:18,cols:100})});if(b||ue!==R){await ce(P,[ne.terminal]);return}g+=1,p.value=!1,Y(ne.terminal),X(ne.terminal.id)}catch(ne){if(b||ue!==R||!r.active)return;s("notice",c("generated.terminalDock.unableToCreateATerminal",{value0:ge(ne)}),"error",ne)}finally{u.value=!1,z()}}async function z(){b||!r.active||!w.value||!r.visible||p.value||u.value||T.value||!L.value||r.workspaceId===void 0||I.value.length>0||await F()}function fe(){U(!1),s("collapse")}async function J(P){if(r.nodeId!==void 0){d.value=P;try{if(await A.request(`/api/terminals/${encodeURIComponent(P)}`,{method:"DELETE",body:JSON.stringify({nodeId:r.nodeId})}),I.value=I.value.filter(G=>G.id!==P),S.value===P){S.value=void 0;const G=I.value[0];G!==void 0&&X(G.id)}I.value.length===0&&fe()}catch(G){s("notice",c("generated.terminalDock.unableToCloseTheTerminal",{value0:ge(G)}),"error",G)}finally{d.value=void 0}}}function re(P){const G=S.value===P;I.value=I.value.filter(ue=>ue.id!==P),G&&(S.value=I.value[0]?.id),I.value.length===0&&w.value&&fe()}function ge(P){return r.errorMessage(P)}He(()=>[r.nodeId,r.workspaceId],()=>{R+=1,T.value=!1},{flush:"sync"}),He(()=>r.capability?.profiles,P=>{i.value=P?.find(G=>G.isDefault)?.id??P?.[0]?.id},{immediate:!0}),He(()=>[r.nodeId,r.workspaceId,r.enabled,r.capability?.available,r.active,r.embedded?r.visible:!0],()=>{r.embedded&&!r.visible||h()},{immediate:!0}),He(()=>[r.mobileMode,r.embedded,r.visible],([P,G,ue])=>{(P||G)&&ue&&U(!0)},{immediate:!0}),He(()=>[w.value,r.visible,L.value,I.value.length,S.value,p.value,u.value],()=>{z(),N()},{immediate:!0});async function ce(P,G){const ne=(await Promise.allSettled(G.map(ee=>A.request(`/api/terminals/${encodeURIComponent(ee.id)}`,{method:"DELETE",body:JSON.stringify({nodeId:P})})))).filter(ee=>ee.status==="rejected"),M=ne[0];M!==void 0&&s("notice",c("generated.terminalDock.unableToReleaseTerminals",{value0:ne.length,value1:ge(M.reason)}),"error")}async function oe(){if(!b){b=!0,g+=1,w.value=!1,C=!1;try{await ce(r.nodeId,I.value)}finally{I.value=[],S.value=void 0}}}return Dt(()=>{v=xt.registerRegion({scope:"terminal",root:()=>l.value,blocksOtherScopes:!0})}),mt(()=>{v?.(),oe()}),t({release:oe,toggle:V}),(P,G)=>{const ue=Un,ne=wn,M=bt,ee=St("tooltip");return f(),O("section",{ref_key:"terminalRoot",ref:l,class:Ke(["admin-terminal",{"is-embedded":e.embedded}]),"aria-label":o(c)("common.adminTerminal")},[K("header",RS,[K("h2",null,W(E.value),1),k.value?Le((f(),O("div",{key:0,class:"terminal-tabs",role:"tablist","aria-label":o(c)("generated.terminalDock.list",{value0:E.value})},[(f(!0),O(Ve,null,Je(I.value,(le,Ee)=>(f(),O("div",{key:le.id,class:Ke(["terminal-tab",{active:le.id===S.value}])},[K("button",{class:"terminal-tab-select",type:"button",role:"tab","aria-selected":le.id===S.value,onClick:xe=>X(le.id)},[K("span",null,"Terminal "+W(Ee+1),1)],8,NS),K("button",{class:"terminal-tab-close icon-button utility-control",type:"button","aria-label":o(c)("generated.terminalDock.closeTerminal",{value0:Ee+1}),disabled:d.value===le.id,onClick:xe=>J(le.id)},[B(De,{name:"close"})],8,DS)],2))),128)),Le((f(),O("button",{class:"terminal-tab terminal-tab-add",type:"button","aria-label":o(c)("generated.terminalDock.newTerminal2"),disabled:!L.value||u.value,onClick:F},[B(De,{name:"plus"})],8,PS)),[[ee,H.value]])],8,AS)),[[At,w.value||I.value.length===0]]):ve("",!0),D.value.length>1||!e.mobileMode?(f(),O("div",OS,[D.value.length>1?(f(),O("label",LS,[ke(W(o(c)("generated.terminalDock.terminalProfile"))+" ",1),B(ne,{modelValue:i.value,"onUpdate:modelValue":G[0]||(G[0]=le=>i.value=le),"aria-label":o(c)("generated.terminalDock.terminalProfile2"),size:"small",disabled:!L.value||u.value,"clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down")},{default:Z(()=>[(f(!0),O(Ve,null,Je(D.value,le=>(f(),we(ue,{key:le.id,value:le.id,label:le.label},null,8,["value","label"]))),128))]),_:1},8,["modelValue","aria-label","disabled","clear-icon","suffix-icon"])])):ve("",!0),!e.mobileMode&&!e.embedded?Le((f(),we(M,{key:1,size:"small","aria-label":w.value?o(c)("generated.terminalDock.collapseTerminal"):o(c)("generated.terminalDock.expandTerminal"),onClick:Q},{default:Z(()=>[K("span",null,W(w.value?o(c)("generated.terminalDock.collapseTerminal3"):o(c)("generated.terminalDock.expandTerminal3")),1)]),_:1},8,["aria-label"])),[[ee,w.value?o(c)("generated.terminalDock.collapseTerminal2"):o(c)("generated.terminalDock.expandTerminal2")]]):ve("",!0)])):ve("",!0)]),k.value?Le((f(),O("div",WS,[K("div",MS,[(f(!0),O(Ve,null,Je(I.value,le=>(f(),we(o(a),{key:le.id,ref_for:!0,ref:Ee=>{Ee===null?o(m).delete(le.id):(o(m).set(le.id,Ee),N())},"terminal-id":le.id,"node-id":e.nodeId??"",direct:e.direct,"workspace-id":e.workspaceId,"csrf-token":e.csrfToken,"renew-csrf-token":e.renewCsrfToken,"windows-con-pty":e.capability?.supportsConPty===!0,"windows-build-number":y.value,active:le.id===S.value,"fill-available":e.embedded===!0,visible:e.active&&e.visible&&w.value,onExited:re,onNotice:G[1]||(G[1]=(Ee,xe,Me)=>s("notice",Ee,xe,Me))},null,8,["terminal-id","node-id","direct","workspace-id","csrf-token","renew-csrf-token","windows-con-pty","windows-build-number","active","fill-available","visible"]))),128))])],512)),[[At,w.value]]):ve("",!0)],10,ES)}}}),$S=dt(xS,[["__scopeId","data-v-9799c5d0"]]);function FS(e){const t=tl("","");for(const n of e){const a=n.relativePath.split("/");let r=t,s="";for(const i of a.slice(0,-1)){s=s===""?i:`${s}/${i}`;const l=r.directories.get(i);if(l!==void 0){r=l;continue}const v=tl(i,s);r.directories.set(i,v),r=v}r.files.push(n)}return Ic(t)}function US(e,t){const n=[];return bc(e,0,t,n),n}function bc(e,t,n,a){for(const r of e)a.push({node:r,depth:t}),r.kind==="DIRECTORY"&&n(r.path)&&bc(r.children,t+1,n,a)}function tl(e,t){return{name:e,path:t,directories:new Map,files:[]}}function Ic(e){const t=[...e.directories.values()].sort((a,r)=>nl(a.name,r.name)).map(a=>({kind:"DIRECTORY",name:a.name,path:a.path,children:Ic(a)})),n=[...e.files].sort((a,r)=>nl(a.relativePath,r.relativePath)).map(a=>({kind:"FILE",name:a.displayName,path:a.relativePath,file:a}));return[...t,...n]}function nl(e,t){return e.localeCompare(t,"en-US")}function VS(e){const t=x(!1),n=x(!1),a=wt(),r=x(!1),s=x(),i=x(),l=x(),v=x(),u=x(),d=j(()=>{const C=i.value;return C===void 0?"unsupported":ir(C.path,C.encoding)}),w=e.triggerDownload??((C,I)=>{const S=document.createElement("a");S.href=C,S.download=I,S.click()});let k=0;async function T(C,I,S){const m=++k,A=Sc(C),L=za(A,C.mimeType);r.value=!1,s.value=C,t.value=!0,n.value=!0,a.value=void 0,i.value={path:A,size:C.size,encoding:L?"utf-8":"base64",content:"",truncated:!1},v.value=I,u.value=S,l.value=void 0;try{if(L){const y=await lr(async D=>{const E=await e.source.readFile(C.id,0,D),H=ar(qS(E.content),A,E.eof,C.mimeType);return{path:A,size:E.file.size,...H,truncated:H.encoding==="utf-8"&&!E.eof,nextOffset:H.encoding==="base64"?null:E.nextOffset,revision:String(E.file.updatedAt)}},()=>b(m,C));if(!b(m,C))return;i.value=y}else i.value={path:A,size:C.size,encoding:"base64",content:"",truncated:!1};i.value.encoding==="base64"&&ir(A,"base64")!=="unsupported"&&(l.value=e.source.contentUrl(C)),t.value=!0}catch(y){b(m,C)&&(a.value=y)}finally{b(m,C)&&(n.value=!1)}}async function p(){s.value!==void 0&&s.value.conversationId===e.source.selectedConversationId.value&&!n.value&&await T(s.value,v.value,u.value)}function g(){k+=1,t.value=!1,n.value=!1,a.value=void 0,r.value=!1,s.value=void 0,i.value=void 0,v.value=void 0,u.value=void 0,l.value=void 0}function R(){const C=s.value,I=e.source.selectedConversationId.value;C===void 0||I===void 0||C.conversationId!==I||r.value||w(e.source.contentUrl(C,!0),C.displayName)}function b(C,I){return C===k&&e.source.selectedConversationId.value===I.conversationId&&s.value?.id===I.id}return{visible:t,loading:n,error:a,downloading:r,file:s,content:i,contentUrl:l,targetLine:v,targetColumn:u,kind:d,openFile:T,retry:p,close:g,download:R,dispose:g}}function Sc(e){return`${e.category==="OUTPUT"?"output":"inbox"}/${e.relativePath.replaceAll("\\","/")}`}function qS(e){return Uint8Array.from(atob(e),t=>t.charCodeAt(0))}const HS=at({__name:"ToolChangeReviewWindow",props:{review:{}},emits:["openSource","error"],setup(e,{emit:t}){const n=e,a=t;function r(s,i){const l=s?.text;if(typeof l!="string")return;const v=URL.createObjectURL(new Blob([l],{type:"text/plain;charset=utf-8"})),u=document.createElement("a");u.href=v,u.download=`${i.split("/").at(-1)??"changes"}.diff`,u.click(),URL.revokeObjectURL(v)}return(s,i)=>e.review.tabs.tabs.value.length?(f(),we(Vl,{key:0,tabs:e.review.tabs.tabs.value,"active-tab-id":e.review.tabs.activeTabId.value,onActivate:e.review.tabs.activate,onClose:e.review.tabs.remove,onCloseAll:e.review.clear,onMove:e.review.tabs.move},{default:Z(({tab:l,active:v,registerPageHandle:u,requestClose:d})=>[Le(B(hc,{ref:u,tab:l,active:v,load:n.review.load,onClose:d,onEdit:w=>a("openSource",l.path),onLoadError:i[0]||(i[0]=w=>a("error",w)),onDownload:w=>r(w,l.path)},null,8,["tab","active","load","onClose","onEdit","onDownload"]),[[At,v]])]),_:1},8,["tabs","active-tab-id","onActivate","onClose","onCloseAll","onMove"])):ve("",!0)}}),BS={key:0,class:"hosted-attachments"},GS=["src","alt"],zS={key:1,role:"status","aria-live":"polite"},KS={key:2,role:"status","aria-live":"polite"},jS={key:3,role:"status","aria-live":"polite"},_S={key:4,class:"attachment-error",role:"alert"},YS=["disabled","aria-label","onClick"],QS=["aria-label","onClick"],JS=["disabled","aria-label"],XS=["disabled","aria-label","aria-description"],ZS=["aria-label"],eC={key:2,class:"hosted-model-slot"},tC=["disabled","aria-label","aria-description"],nC={key:3,class:"hosted-model-unavailable","aria-live":"polite"},aC={key:4,class:"hosted-replace-hint",role:"status"},oC={key:5,class:"composer-submitting",role:"status"},rC=["disabled","aria-label"],iC=at({__name:"HostedConversationComposer",props:{connected:{type:Boolean},workspace:{},mobileViewport:{type:Boolean},readonly:{type:Boolean},readonlyReason:{},templateChangeBlocked:{type:Boolean},draft:{type:Boolean},entry:{},reloadTemplates:{type:Function},reloadModels:{type:Function}},emits:["started"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=a.draft&&a.entry?a.entry.prompt:x(""),i=x(),l=a.draft&&a.entry?a.entry.attachments:x([]),v=x(!1),u=x(),d=x(!1),w=x([]);let k=!1;const T=x(!1),p=x(!1);let g;function R(de){s.value=de,g=void 0,i.value?.focusAt(de.length)}t({restoreMessage:R});const b=j(()=>{if(!a.draft||!a.entry)return a.workspace.snapshot.value;const de=a.entry.target.value;if(de!==void 0)return a.workspace.selectedNodeId.value===de.conversation.nodeId&&a.workspace.selectedConversationId.value===de.conversation.id?a.workspace.snapshot.value??de:de}),C=j(()=>{const de=b.value?.conversation;return de===void 0?void 0:mr(de.nodeId,de.id)}),I=j(()=>a.draft===!0&&a.entry?.submitting.value===!0||a.workspace.messageSubmitting.value&&a.workspace.messageSubmissionContext.value===C.value),S=j(()=>{const de=b.value?.run;return de!=null&&["STARTING","RUNNING","CANCELLING"].includes(de.status)?de:void 0}),m=j(()=>{const de=S.value,Ae=b.value?.conversation;if(!(de===void 0||Ae===void 0))return{sessionId:Ae.sessionId,startedAt:de.startedAt}}),A=j(()=>S.value!==void 0),{working:L,workingNow:y,workingStartedAt:D}=Tl(j(()=>b.value?.conversation.sessionId),A,m),E=j(()=>l.value.some(de=>de.status==="UPLOADING")),H=j(()=>a.draft===!0&&l.value.some(de=>de.status==="FAILED")),X=j(()=>l.value.flatMap(de=>de.status==="COMPLETED"&&de.fileId!==void 0?[de.fileId]:[])),Y=j(()=>s.value.trim().length>0||X.value.length>0||l.value.some(de=>de.status==="PENDING")),U=j(()=>S.value!==void 0&&S.value.status!=="CANCELLING"),Q=j(()=>S.value!==void 0&&S.value.status!=="CANCELLING"&&!I.value),$=j(()=>a.readonly||a.workspace.templateChanging.value||!a.draft&&b.value!==void 0&&!a.workspace.watchReady.value||a.draft===!0&&a.entry?.writable.value===!1||I.value||S.value!==void 0&&!U.value),V=j(()=>!a.draft&&a.connected!==!1&&b.value!==void 0&&!a.workspace.watchReady.value&&a.workspace.watchFailureCode.value===void 0&&!a.readonly&&!a.workspace.templateChanging.value&&!I.value&&(S.value===void 0||U.value)),N=L,h=j(()=>Rl(S.value,a.readonly?[]:a.workspace.turns.value)),F=j(()=>a.readonly?"":Al(D.value,y.value)),z=j(()=>b.value?.models??(a.draft?a.entry?.models.value??[]:[])),fe=j(()=>b.value?.conversation.modelId??(a.draft?a.entry?.selectedModelId.value??"":"")),J=j(()=>(b.value!==void 0||a.draft===!0&&a.entry?.modelOptionsLoaded.value===!0)&&z.value.length===0),re=j(()=>a.readonly||a.draft===!0&&a.entry?.writable.value===!1||I.value||S.value!==void 0||d.value||a.workspace.templateChanging.value||J.value||a.draft===!0&&b.value===void 0&&a.entry?.modelOptionsLoaded.value!==!0),ge=j(()=>z.value.find(de=>de.id===fe.value)?.name??(fe.value||c("hostedConversations.model"))),ce=j(()=>b.value?.conversation.templateName??""),oe=j(()=>a.entry?.templates.value??[]),P=j(()=>a.entry?.selectedTemplateId.value??""),G=j(()=>oe.value.find(de=>de.id===P.value)?.name??c("hostedConversations.templatePlaceholder")),ue=j(()=>a.draft?a.readonly||I.value:a.readonly||a.connected===!1||a.templateChangeBlocked===!0||!a.workspace.watchReady.value||b.value?.conversation.status!=="ACTIVE"||b.value.conversation.activity.status!=="IDLE"||S.value!==void 0||I.value||E.value||d.value||a.workspace.templateChanging.value),ne=j(()=>a.draft?oe.value:w.value),M=j(()=>a.draft?P.value:b.value?.conversation.templateId),ee=j(()=>a.draft?G.value:ce.value),le=j(()=>ce.value===""?"":c("hostedConversations.loadedTemplateNamed",{name:ce.value})),Ee=nc({canAcceptFiles:()=>!$.value,addFiles:Se,confirmDrop:Qe,rejectDirectory:()=>et(c("hostedConversations.folderAttachmentUnsupported"),"warning"),setDragging:de=>v.value=de});He(s,()=>{g=void 0});function xe(){$.value||u.value?.click()}function Me(de){const Ae=de.target;Ae.files!==null&&Se(Ae.files),Ae.value=""}function Se(de){if(a.draft&&a.entry){a.entry.addFiles(de);return}for(const Ae of de){if(l.value.length>=32){et(c("hostedConversations.attachmentLimit"),"warning");break}const he={id:crypto.randomUUID(),file:Ae,previewUrl:Ae.type.startsWith("image/")?URL.createObjectURL(Ae):null,name:Ae.name,clientRequestId:crypto.randomUUID(),controller:new AbortController,receivedBytes:0,status:a.draft&&b.value===void 0?"PENDING":"UPLOADING"};l.value=[...l.value,he],g=void 0,he.status==="UPLOADING"&&ye(he)}}async function ye(de){try{if(Ll(de.file)){const he=await Wl(de.file);de.controller.signal.throwIfAborted(),de.file=he,de.name=he.name}const Ae=await a.workspace.uploadFile(de.file,de.clientRequestId,he=>Ye(de.id,he),de.controller.signal);nt(de.id,{receivedBytes:Ae.receivedBytes,status:"COMPLETED",name:Ae.name,...Ae.file===void 0?{}:{fileId:Ae.file.id}})}catch(Ae){nt(de.id,{status:"FAILED",error:Re(Ae)})}}function Fe(de){if($.value)return;if(a.draft&&a.entry){a.entry.retryAttachment(de).catch(q=>et(Re(q),"error",q));return}const Ae=l.value.find(q=>q.id===de);if(Ae===void 0||Ae.status!=="FAILED")return;const he={id:Ae.id,file:Ae.file,previewUrl:Ae.previewUrl,name:Ae.name,clientRequestId:crypto.randomUUID(),controller:new AbortController,receivedBytes:0,status:"UPLOADING"};l.value=l.value.map(q=>q.id===de?he:q),g=void 0,ye(he)}function Ye(de,Ae){nt(de,{receivedBytes:Ae.receivedBytes,status:Ae.status==="COMPLETED"?"COMPLETED":"UPLOADING",name:Ae.name,...Ae.file===void 0?{}:{fileId:Ae.file.id}})}function nt(de,Ae){l.value=l.value.map(he=>he.id===de?{...he,...Ae}:he)}function ae(de){if(a.draft&&a.entry){a.entry.removeAttachment(de);return}const Ae=l.value.find(he=>he.id===de);Ae?.controller.abort(),Ae?.previewUrl!==null&&Ae?.previewUrl!==void 0&&URL.revokeObjectURL(Ae.previewUrl),l.value=l.value.filter(he=>he.id!==de),g=void 0}function me(){return JSON.stringify({input:s.value,attachments:X.value,modelId:fe.value,templateId:b.value?.conversation.templateId??P.value})}async function Pe(de){if(a.draft){a.entry?.selectTemplate(de),g=void 0,a.reloadModels?.(!0);return}const Ae=b.value?.conversation,he=w.value.find(te=>te.id===de);if(ue.value||Ae===void 0||he===void 0||de===Ae.templateId)return;const q=a.workspace.selectedWatchId();try{await Nt.confirm(c("hostedConversations.templateSwitchConfirmation",{name:he.name}),c("hostedConversations.templateSwitchTitle"),{closeIcon:qe("close"),confirmButtonText:c("hostedConversations.switchTemplate"),cancelButtonText:c("common.cancel")})}catch{return}if(!(k||ue.value||a.workspace.selectedWatchId()!==q||b.value?.conversation.id!==Ae.id||b.value.conversation.nodeId!==Ae.nodeId||b.value.conversation.templateId!==Ae.templateId||b.value.conversation.activeVersionId!==Ae.activeVersionId))try{await a.workspace.switchTemplate(de,Ae.templateId),g=void 0}catch(te){et(Re(te),"error",te)}}async function Ue(de){if(!de)return;if(a.draft){a.reloadTemplates?.(!0);return}const Ae=b.value?.conversation;if(!(Ae===void 0||T.value)){T.value=!0,p.value=!1;try{const he=await a.workspace.listTemplateOptions();b.value?.conversation.id===Ae.id&&b.value.conversation.nodeId===Ae.nodeId&&(w.value=he)}catch(he){p.value=!0,et(Re(he),"error",he)}finally{T.value=!1}}}async function Qe(de){try{return await Nt.confirm(c("hostedConversations.confirmDroppedAttachments",{count:de.length}),c("hostedConversations.confirmDroppedAttachmentsTitle"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("hostedConversations.confirmUpload"),cancelButtonText:c("hostedConversations.cancel")}),!0}catch{return!1}}async function Te(de){if($.value||E.value||H.value||!Y.value)return;if(a.draft&&a.entry){try{await a.entry.submit()&&r("started")}catch(he){et(Re(he),"error",he)}return}let Ae;try{if(b.value===void 0)return;const he=me(),q=l.value,te=JSON.stringify({deliveryIntent:de,message:he});if(g?.fingerprint!==te&&(g={fingerprint:te,clientMessageId:crypto.randomUUID()}),Ae=g,await a.workspace.sendMessage({prompt:s.value,attachmentIds:X.value,clientMessageId:Ae.clientMessageId,modelId:fe.value,...de===void 0?{}:{deliveryIntent:de}}),g!==Ae||me()!==he||l.value!==q)return;s.value="";for(const _ of l.value)_.previewUrl!==null&&URL.revokeObjectURL(_.previewUrl);l.value=[],g=void 0}catch(he){g===Ae&&gt(he)!==void 0&&(g=void 0),et(Re(he),"error",he)}}let Ge;Dt(()=>{Ge=Pp({owner:()=>i.value?.$el.querySelector("textarea")??void 0,canSend:()=>!a.mobileViewport,canReplace:()=>!$.value,canStop:()=>Q.value,send:de=>{Te(de?"REPLACE_CURRENT":void 0)},stop:()=>{tt()}})});async function _e(de){if(!(re.value||de===fe.value)){if(a.draft===!0&&b.value===void 0){try{a.entry?.selectModel(de),g=void 0}catch(Ae){et(Re(Ae),"error",Ae)}return}d.value=!0;try{await a.workspace.updateConfiguration({modelId:de}),g=void 0}catch(Ae){et(Re(Ae),"error",Ae)}finally{d.value=!1}}}async function tt(){try{await a.workspace.interrupt()}catch(de){et(Re(de),"error",de)}}function Xe(de){return a.draft&&de.error!==void 0?Re(new Error(de.error)):de.error}function Re(de){switch(gt(de)){case"COMPOSER_IMAGE_CONVERSION_FAILED":case"COMPOSER_IMAGE_LIMIT_EXCEEDED":return it(de);case"HOSTED_CONVERSATION_DRAFT_PAUSED":return c("hostedConversations.firstMessagePaused");case"HOSTED_CONVERSATION_DRAFT_DISPOSED":return c("hostedConversations.firstMessageDisposed");case"HOSTED_CONVERSATION_WATCH_NOT_READY":return c("hostedConversations.firstMessageWatchRequired");case"HOSTED_CONVERSATION_TEMPLATE_REQUIRED":return c("hostedConversations.templateRequired");case"HOSTED_CONVERSATION_MODEL_REQUIRED":return c("hostedConversations.modelUnavailable");case"HOSTED_CONVERSATION_QUOTA_EXCEEDED":case"HOSTED_CONVERSATION_UPLOAD_QUOTA_EXCEEDED":return c("hostedConversations.quotaExceeded");case"HOSTED_CONVERSATION_UPLOAD_TOO_LARGE":return c("hostedConversations.attachmentTooLarge");case"HOSTED_CONVERSATION_UPLOAD_INVALID_NAME":return c("hostedConversations.attachmentInvalidName");case"HOSTED_CONVERSATION_UPLOAD_CONFLICT":return c("hostedConversations.attachmentConflict");case"CONVERSATION_HOSTING_STORAGE_FULL":return c("hostedConversations.storageFull");case"HOSTED_CONVERSATION_RUN_ACTIVE":return c("hostedConversations.runActive");case"HOSTED_CONVERSATION_REPLACE_UNSUPPORTED":return c("hostedConversations.replaceCurrentUnsupported");case"HOSTED_CONVERSATION_UPGRADE_FAILED":return c("hostedConversations.upgradeFailed");default:return de instanceof Error?de.message:c("hostedConversations.operationFailed")}}return mt(()=>{if(Ge?.(),k=!0,!(a.draft&&a.entry))for(const de of l.value)de.controller.abort(),de.previewUrl!==null&&URL.revokeObjectURL(de.previewUrl)}),(de,Ae)=>{const he=ln,q=sn,te=rn,_=St("tooltip");return f(),we(Ol,{ref_key:"composer",ref:i,class:Ke({"hosted-draft-composer":e.draft,"hosted-syncing":V.value}),input:o(s),"onUpdate:input":Ae[4]||(Ae[4]=se=>Nf(s)?s.value=se:null),placeholder:e.readonly?e.readonlyReason:o(c)("hostedConversations.messagePlaceholder"),working:o(N),"working-label":h.value,"working-busy":!e.readonly&&o(El)(S.value,e.workspace.turns.value),"elapsed-label":F.value,"connection-busy":e.connected===!1||!e.draft&&!e.workspace.watchReady.value&&!e.workspace.watchFailureCode.value,"connection-label":e.connected===!1?o(c)("conversationActivity.reconnecting"):!e.draft&&!e.workspace.watchReady.value&&!e.workspace.watchFailureCode.value?o(c)("conversationActivity.syncing"):"",readonly:$.value,"drop-target":v.value,"mobile-viewport":e.mobileViewport,"command-states":[],loading:I.value||d.value||e.workspace.templateChanging.value,"skill-tokens":[],onSubmit:Te,onPaste:o(Ee).onPaste,onDragenter:o(Ee).onDragEnter,onDragleave:o(Ee).onDragLeave,onDrop:o(Ee).onDrop},{attachments:Z(()=>[o(l).length?(f(),O("ul",BS,[(f(!0),O(Ve,null,Je(o(l),se=>(f(),O("li",{key:se.id},[se.previewUrl?(f(),O("img",{key:0,src:se.previewUrl,alt:se.name},null,8,GS)):ve("",!0),Le((f(),O("span",null,[ke(W(se.name),1)])),[[_,se.name]]),se.status==="PENDING"?(f(),O("small",zS,W(o(c)("hostedConversations.uploadAfterCreate")),1)):se.status==="UPLOADING"?(f(),O("small",KS,W(o(c)("hostedConversations.uploadProgress",{value:Math.round(se.receivedBytes/Math.max(1,se.file.size)*100)})),1)):se.status==="COMPLETED"?(f(),O("small",jS,W(o(c)("hostedConversations.uploaded")),1)):(f(),O("small",_S,W(Xe(se)),1)),se.status==="FAILED"?(f(),O("button",{key:5,class:"utility-control",type:"button",disabled:$.value,"aria-label":o(c)("hostedConversations.retryAttachmentNamed",{name:se.name}),onClick:be=>Fe(se.id)},W(o(c)("hostedConversations.retryAttachment")),9,YS)):ve("",!0),K("button",{type:"button",class:"utility-control","aria-label":o(c)("hostedConversations.removeAttachment",{name:se.name}),onClick:be=>ae(se.id)},[B(De,{name:"close"})],8,QS)]))),128))])):ve("",!0)]),toolbar:Z(()=>[K("div",{class:Ke(["hosted-composer-toolbar",{"has-mobile-send":e.mobileViewport&&U.value&&Y.value}])},[K("input",{ref_key:"fileInput",ref:u,class:"hosted-file-input",type:"file",multiple:"",onChange:Me},null,544),Le((f(),O("button",{class:"hosted-icon-button utility-control",type:"button",disabled:$.value,"aria-label":o(c)("hostedConversations.addAttachment"),onClick:xe},[B(De,{name:"attachment"})],8,JS)),[[_,o(c)("hostedConversations.addAttachment")]]),!e.draft||!b.value?(f(),we(te,{key:0,class:"hosted-template-menu hosted-model-menu",disabled:ue.value,trigger:"click",onCommand:Ae[0]||(Ae[0]=se=>Pe(String(se))),onVisibleChange:Ue},{dropdown:Z(()=>[B(q,null,{default:Z(()=>[T.value?(f(),we(he,{key:0,disabled:""},{default:Z(()=>[ke(W(o(c)("common.loading")),1)]),_:1})):p.value?(f(),we(he,{key:1,disabled:""},{default:Z(()=>[ke(W(o(c)("hostedConversations.templateOptionsFailed")),1)]),_:1})):ve("",!0),(f(!0),O(Ve,null,Je(T.value||p.value?[]:ne.value,se=>(f(),we(he,{key:se.id,command:se.id,disabled:!se.available||!e.draft&&se.id===M.value,class:Ke({"is-selected":se.id===M.value})},{default:Z(()=>[ke(W(se.name),1)]),_:2},1032,["command","disabled","class"]))),128)),!T.value&&!p.value&&ne.value.length===0?(f(),we(he,{key:2,disabled:""},{default:Z(()=>[ke(W(o(c)(e.draft?"hostedConversations.noTemplates":"hostedConversations.noSameNodeTemplates")),1)]),_:1})):ve("",!0)]),_:1})]),default:Z(()=>[Le((f(),O("button",{class:"hosted-template-trigger hosted-model-trigger",type:"button",disabled:ue.value,"aria-label":o(c)("hostedConversations.chooseTemplate"),"aria-description":ee.value},[B(De,{name:"document","aria-hidden":"true"}),K("span",null,W(ee.value),1),B(De,{name:"chevron-down","aria-hidden":"true"})],8,XS)),[[_,ee.value]])]),_:1},8,["disabled"])):ce.value?Le((f(),O("span",{key:1,class:"hosted-template-name","aria-label":le.value},[B(De,{name:"document","aria-hidden":"true"}),K("span",null,W(ce.value),1)],8,ZS)),[[_,le.value]]):ve("",!0),b.value||e.draft&&P.value?(f(),O("div",eC,[B(te,{class:"hosted-model-menu",disabled:re.value,trigger:"click",onCommand:Ae[1]||(Ae[1]=se=>_e(String(se)))},{dropdown:Z(()=>[B(q,null,{default:Z(()=>[(f(!0),O(Ve,null,Je(z.value,se=>(f(),we(he,{key:se.id,command:se.id,class:Ke({"is-selected":se.id===fe.value})},{default:Z(()=>[ke(W(se.name),1)]),_:2},1032,["command","class"]))),128))]),_:1})]),default:Z(()=>[K("button",{class:"hosted-model-trigger",type:"button",disabled:re.value,"aria-label":o(c)("hostedConversations.model"),"aria-description":ge.value},[K("span",null,W(ge.value),1),B(De,{name:"chevron-down","aria-hidden":"true"})],8,tC)]),_:1},8,["disabled"])])):ve("",!0),J.value?(f(),O("span",nC,W(o(c)("hostedConversations.modelUnavailable")),1)):ve("",!0),U.value||e.mobileViewport&&Y.value?(f(),O("span",aC,W(o(c)(e.mobileViewport?U.value?"composerSend.holdHint":"composerSend.holdSendHint":"hostedConversations.replaceCurrentHint")),1)):ve("",!0),I.value?(f(),O("span",oC,W(o(c)("workbench.sending")),1)):ve("",!0),S.value?Le((f(),O("button",{key:6,class:"hosted-stop-button",type:"button",disabled:!Q.value,"aria-label":o(c)("hostedConversations.stopWithEsc"),onClick:tt},[...Ae[5]||(Ae[5]=[K("i",{"aria-hidden":"true"},null,-1)])],8,rC)),[[_,o(c)("hostedConversations.stopWithEsc")]]):ve("",!0),!S.value||e.mobileViewport&&U.value&&Y.value?(f(),we(Op,{key:7,class:"hosted-send-button",disabled:$.value||E.value||H.value||!Y.value||d.value||J.value,"mobile-viewport":e.mobileViewport,"can-steer":U.value,"context-key":`${C.value??P.value}:${S.value?.id??""}`,submitting:I.value,label:o(c)(e.mobileViewport&&U.value?"composerSend.steer":"hostedConversations.send"),onSend:Ae[2]||(Ae[2]=se=>Te(e.mobileViewport&&U.value?"REPLACE_CURRENT":void 0)),onSteer:Ae[3]||(Ae[3]=se=>Te("REPLACE_CURRENT"))},null,8,["disabled","mobile-viewport","can-steer","context-key","submitting","label"])):ve("",!0)],2)]),_:1},8,["class","input","placeholder","working","working-label","working-busy","elapsed-label","connection-busy","connection-label","readonly","drop-target","mobile-viewport","loading","onPaste","onDragenter","onDragleave","onDrop"])}}}),Cc=dt(iC,[["__scopeId","data-v-bbd597aa"]]),sC=["aria-busy"],lC={class:"conversation-create-panel"},cC={class:"conversation-create-heading"},dC=at({__name:"HostedConversationEntryPage",props:{request:{type:Function},workspace:{},mobileViewport:{type:Boolean},connected:{type:Boolean},entry:{}},emits:["started"],setup(e,{emit:t}){const n=e,a=t,r=n.entry,s=x(!1),i=x(!1);let l=0,v=0;async function u(){const T=++l;s.value=!0;try{if(await r.loadTemplates(),T!==l)return;i.value=!0,await d()}catch(p){if(T!==l)return;et(p instanceof Error?it(p):c("hostedConversations.loadFailed"),"error",p)}finally{T===l&&(s.value=!1)}}async function d(){const T=++v;try{await r.loadModelOptions()}catch(p){if(T!==v)return;et(p instanceof Error?it(p):c("hostedConversations.loadFailed"),"error",p)}}function w(T){T&&!s.value&&u()}function k(T){T&&d()}return Dt(()=>{r.templates.value.length===0?u():r.modelOptionsLoaded.value||d()}),(T,p)=>{const g=ca;return Le((f(),O("section",{"element-loading-custom-class":"mar-page-loading",class:"hosted-entry-page","aria-busy":s.value},[K("div",lC,[K("div",cC,[K("h2",null,W(o(c)("conversationEmpty.hosted.title")),1),K("p",null,W(o(c)("hostedConversations.chooseTemplateHint")),1)]),B(Cc,{connected:e.connected,workspace:e.workspace,"mobile-viewport":e.mobileViewport,readonly:!1,"readonly-reason":"",draft:"",entry:o(r),"reload-templates":w,"reload-models":k,onStarted:p[0]||(p[0]=R=>a("started"))},null,8,["connected","workspace","mobile-viewport","entry"])])],8,sC)),[[g,s.value&&!i.value]])}}}),uC=dt(dC,[["__scopeId","data-v-9d98b669"]]),Tc="mar.hosted-conversations.last-template-id.v1";function vC(e,t={}){const n=x([]),a=x(),r=t.storage??(typeof localStorage>"u"?void 0:localStorage);let s=fC(r),i,l,v=0,u=0,d=0;const w=wt([]),k=x(!1),T=x();function p(){d+=1,w.value=[],k.value=!1,T.value=void 0}const g=x(""),R=x([]),b=x(!1),C=x();let I=!0,S=0,m=!1,A;const L=j(()=>{const P=t.submission?.workspace;return C.value===void 0||!y()||P?.watchReady.value===!0});function y(){const P=t.submission?.workspace;return C.value!==void 0&&P?.selectedNodeId.value===C.value.conversation.nodeId&&P.selectedConversationId.value===C.value.conversation.id}function D(P){if(m)throw new Error("HOSTED_CONVERSATION_DRAFT_DISPOSED");if(!I||S!==P)throw new Error("HOSTED_CONVERSATION_DRAFT_PAUSED")}function E(){if(!y()||t.submission?.workspace.watchReady.value!==!0)throw new Error("HOSTED_CONVERSATION_WATCH_NOT_READY")}function H(P){if(!(b.value||m))for(const G of P){if(R.value.length>=32)break;R.value.push({id:crypto.randomUUID(),file:G,name:G.name,previewUrl:G.type.startsWith("image/")?URL.createObjectURL(G):null,clientRequestId:crypto.randomUUID(),controller:new AbortController,receivedBytes:0,status:"PENDING"})}}function X(){for(const P of R.value)P.previewUrl!==null&&URL.revokeObjectURL(P.previewUrl);R.value=[]}function Y(P){if(b.value)return;const G=R.value.find(ue=>ue.id===P);G?.controller.abort(),G?.previewUrl!=null&&URL.revokeObjectURL(G.previewUrl),R.value=R.value.filter(ue=>ue.id!==P)}async function U(P){const G=t.submission.workspace,ue=S;E(),P.status==="FAILED"&&P.error!==void 0&&/^[A-Z][A-Z0-9_]+$/u.test(P.error)&&(P.clientRequestId=crypto.randomUUID()),P.status="UPLOADING";const ne=M=>{P.receivedBytes=M.receivedBytes,P.name=M.name,M.file!==void 0&&(P.fileId=M.file.id)};try{if(Ll(P.file)){const ee=await Wl(P.file);P.controller.signal.throwIfAborted(),D(ue),E(),P.file=ee,P.name=ee.name}const M=await G.uploadFile(P.file,P.clientRequestId,ne,P.controller.signal);ne(M),P.status="COMPLETED",delete P.error}catch(M){throw P.status="FAILED",P.error=gt(M)??(M instanceof Error?M.message:"HOSTED_CONVERSATION_UPLOAD_FAILED"),M}}async function Q(P){if(b.value||m)return;const G=R.value.find(M=>M.id===P);if(G?.status!=="FAILED")return;const ue=t.submission;if(C.value===void 0||ue===void 0)return;const ne=S;b.value=!0;try{D(ne),y()||await ue.select(C.value),D(ne),await U(G)}finally{b.value=!1,m&&X()}}async function $(){if(b.value||m||g.value.trim()===""&&R.value.length===0)return!1;const P=t.submission;if(P===void 0)throw new Error("HOSTED_CONVERSATION_REQUIRED");const G=S;D(G),b.value=!0;let ue;try{C.value===void 0&&(C.value=await oe(),P.workspace.rememberConversation(C.value.conversation)),D(G),y()||await P.select(C.value),D(G),E();for(const le of R.value)le.status!=="COMPLETED"&&(D(G),await U(le));D(G),E();const ne=P.workspace.snapshot.value;if(ne.models.length===0)throw new Error("HOSTED_CONVERSATION_MODEL_REQUIRED");const M={prompt:g.value,attachmentIds:R.value.flatMap(le=>le.fileId===void 0?[]:[le.fileId]),modelId:ne.conversation.modelId},ee=JSON.stringify(M);return A?.fingerprint!==ee&&(A={fingerprint:ee,clientMessageId:crypto.randomUUID()}),ue=A,await P.workspace.sendMessage({...M,clientMessageId:ue.clientMessageId}),g.value="",X(),A=void 0,C.value=void 0,I&&G===S}catch(ne){throw ue!==void 0&&A===ue&&gt(ne)!==void 0&&(A=void 0),ne}finally{b.value=!1,m&&X()}}function V(){I=!1,S+=1}function N(){m||(I=!0)}function h(){V(),m=!0,b.value||X()}function F(){i=void 0,l=void 0,v+=1}async function z(){const P=++u,G=v;try{const ue=await zl(e);if(P!==u)return;J(ue,G)}catch(ue){if(P===u)throw ue}}function fe(P){J(P,v)}function J(P,G){n.value=[...P];const ue=a.value;a.value=al(P,ue)??al(P,s)??(P.length===1?P[0]?.id:void 0),a.value!==ue&&p(),(a.value!==ue||v===G)&&F()}async function re(){const P=a.value,G=n.value.find(ne=>ne.id===P);if(P===void 0||G===void 0){p();return}const ue=++d;k.value=!1;try{const ne=Df.safeParse(await e(`/api/nodes/${encodeURIComponent(G.nodeId)}/conversation-templates/${encodeURIComponent(P)}/model-options`));if(!ne.success)throw new Error("HOSTED_CONVERSATION_RESPONSE_INVALID");const M=ne.data;if(ue!==d||a.value!==P)return;const ee=T.value,le=M.models.some(Ee=>Ee.id===ee)?ee:M.defaultModelId??void 0;ee!==void 0&&le!==ee&&F(),w.value=M.models,T.value=le,k.value=!0}catch(ne){if(ue===d&&a.value===P)throw ne}}function ge(P){if(!n.value.some(G=>G.id===P))throw new Error("HOSTED_CONVERSATION_TEMPLATE_NOT_AVAILABLE");a.value!==P&&(F(),p()),a.value=P,s=P,pC(r,P)}function ce(P){if(!w.value.some(G=>G.id===P))throw new Error("HOSTED_CONVERSATION_MODEL_NOT_AVAILABLE");T.value!==P&&F(),T.value=P}async function oe(P){const G=a.value;if(G===void 0)throw new Error("HOSTED_CONVERSATION_TEMPLATE_REQUIRED");const ue=n.value.find(ee=>ee.id===G);if(ue===void 0||!ue.available)throw new Error("HOSTED_CONVERSATION_TEMPLATE_NOT_AVAILABLE");i===void 0&&(i=P??crypto.randomUUID(),l=T.value);const ne=++v,M=await e(`/api/nodes/${encodeURIComponent(ue.nodeId)}/hosted-conversations`,{method:"POST",body:JSON.stringify({templateId:G,clientRequestId:i,modelId:l})});try{const ee=ea.parse(M);return v===ne&&F(),ee}catch{throw new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}}return{templates:n,selectedTemplateId:a,models:w,modelOptionsLoaded:k,selectedModelId:T,prompt:g,attachments:R,submitting:b,target:C,writable:L,loadTemplates:z,loadModelOptions:re,setTemplates:fe,selectTemplate:ge,selectModel:ce,create:oe,addFiles:H,removeAttachment:Y,retryAttachment:Q,submit:$,suspend:V,resume:N,dispose:h}}function al(e,t){return t!==void 0&&e.some(n=>n.id===t)?t:void 0}function fC(e){try{const t=e?.getItem(Tc)?.trim();return t===void 0||t.length===0?void 0:t}catch{return}}function pC(e,t){try{e?.setItem(Tc,t)}catch{}}const gC=["aria-label"],mC=["inert","aria-label"],hC={class:"sidebar-heading session-heading history-header"},yC={class:"session-heading-meta"},wC={class:"history-controls"},kC={class:"history-search-row"},bC={key:0,class:"history-empty-text"},IC=["onMouseenter","onFocusin","onContextmenu"],SC=["aria-current","onClick"],CC={class:"history-title-row"},TC={key:1,class:"history-run-indicator","aria-hidden":"true"},EC={key:2,class:"history-unread-label mar-unread-label"},RC=["datetime"],AC=["disabled","aria-label"],NC={key:1,class:"history-filter-note"},DC=["aria-busy"],PC=["aria-label"],OC=["inert"],LC=["aria-label"],WC={key:3,class:"conversation-draft"},MC=["inert","aria-label"],xC={class:"pane-header files-header"},$C=["disabled"],FC=["aria-disabled","disabled"],UC={class:"files-list"},VC={key:0},qC={key:0,class:"mar-tooltip-control"},HC=["aria-expanded","aria-label","onClick"],BC=["aria-label","onClick"],GC=["disabled","aria-label","onClick"],zC={key:1,class:"files-draft-empty"},KC=at({__name:"HostedConversationWorkspacePage",props:Vi({connected:{type:Boolean},workspace:{},request:{type:Function},mobileViewport:{type:Boolean},mobileHistoryOpen:{type:Boolean},sidebarCollapsed:{type:Boolean},selectConversation:{type:Function},routeTarget:{},restoringRoute:{type:Boolean},clearConversation:{type:Function},hasUnreadConversation:{type:Function}},{mobileFilesOpen:{type:Boolean,default:!1},mobileFilesOpenModifiers:{}}),emits:Vi(["closeMobileHistory"],["update:mobileFilesOpen"]),setup(e,{emit:t}){const n=e,a=or(),r=uh(n.request),s=j(()=>G.value);function i(Ne){const Be=n.workspace.selectedNodeId.value,Ze=n.workspace.selectedConversationId.value;!Be||!Ze||!s.value||r.open(Ne,{nodeId:Be,sessionId:Ze,workspaceId:"",scope:"HOSTED"})}async function l(Ne){const Be=_o(n.workspace.snapshot.value?.files??[],Ne);if(!Be){et(c("presentation.currentFileUnavailable"),"error");return}await Fe.openFile(Be),Fe.visible.value&&r.clear()}const v=t,u=x(""),d=x(!1),w=x(),k=x(),T=x(!1);let p;function g(){return!n.workspace.loadingConversations.value&&!n.workspace.loadingMoreConversations.value&&n.workspace.loadMoreConversationsError.value===void 0&&n.workspace.hasMoreConversations.value&&n.connected!==!1&&u.value.trim()===""&&(n.mobileViewport?n.mobileHistoryOpen:!n.sidebarCollapsed)}He(()=>[w.value,k.value,n.workspace.conversations.value,n.workspace.loadingMoreConversations.value,n.workspace.loadMoreConversationsError.value,n.workspace.hasMoreConversations.value,n.connected,n.mobileViewport,n.mobileHistoryOpen,n.sidebarCollapsed,n.workspace.loadingConversations.value,u.value],()=>{p?.disconnect(),n.workspace.loadingMoreConversations.value||(T.value=!1),!(!w.value||!k.value||!g()||typeof IntersectionObserver>"u")&&(p=new IntersectionObserver(Ne=>{Ne.some(Be=>Be.isIntersecting)&&g()&&(w.value?.getClientRects().length??0)>0&&(p?.disconnect(),n.workspace.loadMoreConversations())},{root:w.value,rootMargin:"0px 0px 120px 0px"}),p.observe(k.value))},{flush:"post"});function R(){n.workspace.loadingMoreConversations.value||(T.value=!0,n.workspace.loadMoreConversations())}const b=x(),C=wt();let I=0;const S=j(()=>n.connected!==!1&&(n.workspace.watchLoading.value||n.workspace.watchFailureCode.value===void 0&&(b.value!==void 0||n.restoringRoute))),m=j(()=>n.workspace.watchFailureCode.value!==void 0||!n.workspace.watchReady.value&&C.value?.key===xe.value),A=j(()=>{const Ne=n.workspace.watchFailure.value??(C.value?.key===xe.value?C.value.error:void 0);if(Ne!==void 0)return Wt(Ne);const Be=n.workspace.watchFailureCode.value;return Be===void 0?void 0:Wt(new Error(Be))}),L=x(),y=x(),D=x(!1),E=x(),H=x(),X=x(!1),Y=vC(n.request,{submission:{workspace:n.workspace,select:Ne=>n.selectConversation(Ne.conversation,Ne)}}),U=Pf(e,"mobileFilesOpen"),Q=x(!1),$=x(!1),V=x(),N=x(),h=x(!1),F=x(),z=x(),fe=x(new Set);let J=0,re=0,ge;const ce=j(()=>{const Ne=u.value.trim().toLocaleLowerCase();return Ne===""?n.workspace.conversations.value:n.workspace.conversations.value.filter(Be=>Tn(Be).toLocaleLowerCase().includes(Ne))}),oe=j(()=>({context:u.value.trim().toLocaleLowerCase(),ready:n.connected!==!1&&!d.value&&!n.workspace.loadingMoreConversations.value,items:ce.value.map(Ne=>({key:Oe(Ne),lastActivityAt:Ne.lastActivityAt,pin:Ne.pinnedAt}))})),P=j(()=>n.workspace.snapshot.value?.conversation??n.workspace.conversations.value.find(Ne=>Ne.nodeId===n.workspace.selectedNodeId.value&&Ne.id===n.workspace.selectedConversationId.value)),G=j(()=>{const Ne=n.workspace.snapshot.value?.conversation;return n.workspace.watchFailureCode.value===void 0&&Ne!==void 0&&Ne.status==="ACTIVE"}),ue=j(()=>G.value&&n.workspace.snapshot.value?.conversation.activity.status==="IDLE"&&n.workspace.snapshot.value!==void 0),ne=j(()=>G.value&&!n.workspace.templateChanging.value),M=j(()=>P.value===void 0?!1:n.workspace.watchFailureCode.value!==void 0?!0:n.workspace.snapshot.value!==void 0&&!G.value),ee=j(()=>n.workspace.watchFailureCode.value!==void 0?c("hostedConversations.watchUnavailableReadonly"):c("hostedConversations.readonly")),le=j(()=>{const Ne=new Map([["UPLOAD",[]],["OUTPUT",[]]]);for(const Be of n.workspace.snapshot.value?.files??[])Ne.get(Be.category).push(Be);return[...Ne.entries()].map(([Be,Ze])=>{const ot=FS(Ze);return{category:Be,files:Ze,rows:US(ot,yt=>fe.value.has(Pe(Be,yt)))}})}),Ee=j(()=>n.workspace.turns.value),xe=j(()=>`${n.workspace.selectedNodeId.value??""}:${n.workspace.selectedConversationId.value??""}`),Me=Nl(),Se=Dl(n.workspace.selectedNodeId,{sourceUrl:({nodeId:Ne,runId:Be,imageSelector:Ze})=>{const ot=n.workspace.selectedConversationId.value;if(ot!==void 0)return`/api/nodes/${encodeURIComponent(Ne)}/hosted-conversations/${encodeURIComponent(ot)}/runs/${encodeURIComponent(Be)}/images/${encodeURIComponent(Ze)}`}}),ye=x(),Fe=VS({source:n.workspace}),Ye=j(()=>Fe.error.value===void 0?void 0:Tr(Fe.error.value,Fe.file.value?.relativePath??""));function nt(){v("closeMobileHistory")}function ae(){U.value=!1,nt()}function me(){nt(),U.value=!0}function Pe(Ne,Be){return`${Ne}:${Be}`}function Ue(Ne,Be){return fe.value.has(Pe(Ne,Be))}function Qe(Ne,Be){const Ze=Pe(Ne,Be),ot=new Set(fe.value);ot.has(Ze)?ot.delete(Ze):ot.add(Ze),fe.value=ot}function Te(Ne,Be){return c(Ue(Ne,Be)?"hostedConversations.collapseFileDirectory":"hostedConversations.expandFileDirectory",{category:ze(Ne),path:Be})}function Ge(){Me.handleScroll(()=>{n.workspace.olderHistoryError.value===void 0&&tt()})}function _e(Ne){ge?.disconnect(),z.value=Ne,Me.setElement(Ne),Ne!==void 0&&(ge=new ResizeObserver(()=>Me.handleResize()),ge.observe(Ne),Me.following.value&&Me.scrollToLatestAfterLayout())}async function tt(){const Ne=z.value,Be=Ne?.scrollHeight??0,Ze=xe.value;await n.workspace.loadOlderHistory(),await ut(),Ze===xe.value&&Ne===z.value&&Ne!==void 0&&n.workspace.olderHistoryError.value===void 0&&(Ne.scrollTop+=Ne.scrollHeight-Be)}async function Xe(){await Re()}async function Re(){const Ne=++J;d.value=!0;try{if(await n.workspace.loadConversations(),Ne!==J||X.value)return;const Be=n.workspace.selectedConversationId.value,Ze=n.routeTarget!==void 0&&n.workspace.selectedNodeId.value===n.routeTarget.nodeId&&Be===n.routeTarget.conversationId,ot=n.restoringRoute||Ze&&n.workspace.snapshot.value===void 0&&n.workspace.watchFailureCode.value===void 0,yt=n.workspace.selectedNodeId.value!==void 0&&n.workspace.conversations.value.some(Mt=>Mt.nodeId===n.workspace.selectedNodeId.value&&Mt.id===Be);if(ot||yt)return;n.clearConversation();const Ut=n.workspace.conversations.value[0];Ut!==void 0?await Ae(Ut,!1):(Y.resume(),X.value=!0)}catch(Be){Ne===J&&et(Wt(Be),"error",Be)}finally{Ne===J&&(d.value=!1)}}async function de(){await Re()}async function Ae(Ne,Be=!0){const Ze=Oe(Ne);if(b.value===Ze)return;const ot=++I;b.value=Ze,C.value=void 0,Y.suspend(),X.value=!1,Be&&ae();try{await n.selectConversation(Ne)}catch(yt){ot===I&&(C.value={key:`${Ne.nodeId}:${Ne.id}`,error:yt})}finally{ot===I&&(b.value=void 0)}}function he(){const Ne=P.value;Ne===void 0||S.value||n.connected===!1||Ae(Ne,!1)}function q(){Y.resume(),X.value=!0,n.clearConversation(),ae()}function te(){X.value=!1,ae()}async function _(Ne){if(L.value!==void 0)return;let Be;try{Be=(await Nt.prompt(c("hostedConversations.titlePrompt"),c("hostedConversations.editTitle"),{closeIcon:qe("close"),inputValue:Tn(Ne),inputPlaceholder:c("hostedConversations.titlePlaceholder"),inputValidator:ot=>{const yt=ot.trim().length;return yt===0?c("hostedConversations.titleRequired"):yt<=160||c("hostedConversations.titleTooLong")},confirmButtonText:c("common.save"),cancelButtonText:c("common.cancel")})).value}catch{return}const Ze=Oe(Ne);L.value=Ze;try{await n.workspace.updateMetadata({title:Be.trim()},Ne.nodeId,Ne.id)}catch(ot){et(Wt(ot),"error",ot)}finally{L.value===Ze&&(L.value=void 0)}}async function se(Ne,Be){if(L.value!==void 0)return;const Ze=Oe(Ne);L.value=Ze;try{await n.workspace.updateMetadata({pinned:Be},Ne.nodeId,Ne.id)}catch(ot){et(Wt(ot),"error",ot)}finally{L.value===Ze&&(L.value=void 0)}}async function be(Ne){if(L.value!==void 0)return;try{await Nt.confirm(c("hostedConversations.deleteConfirmation",{title:Tn(Ne)}),c("hostedConversations.deleteTitle"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("hostedConversations.delete"),cancelButtonText:c("hostedConversations.cancel")})}catch{return}const Be=Oe(Ne),Ze=Ne.nodeId===n.workspace.selectedNodeId.value&&Ne.id===n.workspace.selectedConversationId.value;L.value=Be;try{await n.workspace.deleteConversation(Ne.nodeId,Ne.id),Ze&&n.workspace.selectedConversationId.value===void 0&&(n.clearConversation(),Y.resume(),X.value=!0,ae()),await de(),et(c("hostedConversations.deleted"),"success")}catch(ot){et(Wt(ot),"error",ot)}finally{L.value===Be&&(L.value=void 0)}}function Oe(Ne){return`${Ne.nodeId}\0${Ne.id}`}function We(Ne){return E.value===Ne||H.value===Ne||D.value&&y.value===Ne}function Ie(Ne){const Be=Ne.currentTarget;Be instanceof HTMLElement&&Ne.relatedTarget instanceof Node&&Be.contains(Ne.relatedTarget)||(H.value=void 0)}function st(Ne,Be){E.value=Ne,y.value=Ne,ut(()=>Be.querySelector(".history-more-button")?.click())}function pe(Ne,Be){Be.preventDefault();const Ze=Be.currentTarget;Ze instanceof HTMLElement&&st(Oe(Ne),Ze)}function Ce(Ne){Ae(Ne)}function je(Ne,Be){Ne?(y.value=Be,D.value=!0):y.value===Be&&(D.value=!1,y.value=void 0)}function ze(Ne){switch(Ne){case"UPLOAD":return c("hostedConversations.fileCategoryUPLOAD");case"OUTPUT":return c("hostedConversations.fileCategoryOUTPUT")}}async function vt(Ne,Be){try{if(navigator.clipboard?.writeText===void 0)throw new Error("CLIPBOARD_UNAVAILABLE");await navigator.clipboard.writeText(Ne),Be()}catch{et(c("hostedConversations.copyFailed"),"error")}}async function Rt(Ne,Be){if(h.value||!ue.value||Be.kind!=="user_message"||Be.status!=="COMPLETED"||!["SUCCEEDED","FAILED","CANCELLED","INTERRUPTED","LOST"].includes(Ne.status)||Ne.rewind===void 0)return;const Ze=Ba(Be.kind,Be.payload),ot=Ne.rewind.before,yt=xe.value;try{await Nt.confirm(c("hostedConversations.rollbackConfirmation"),c("hostedConversations.rollbackTitle"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("hostedConversations.rollback"),cancelButtonText:c("common.cancel")})}catch{return}const Ut=Ee.value.find(Pt=>Pt.id===Ne.id),Mt=Ut?.items.find(Pt=>Pt.id===Be.id);if(!(h.value||!ue.value||xe.value!==yt||Ut?.rewind?.before!==ot||Mt?.kind!=="user_message"||Mt.status!=="COMPLETED")){h.value=!0;try{await n.workspace.rollback(Ne.id,ot,Be.id),xe.value===yt&&F.value?.restoreMessage(Ze)}catch(Pt){et(Wt(Pt),"error",Pt)}finally{h.value=!1}}}function ht(Ne){!ne.value||!pa(Ne)||(re+=1,Q.value=!0)}function Qt(Ne){Ne.dataTransfer!==null&&(Ne.dataTransfer.dropEffect=ne.value&&pa(Ne)?"copy":"none")}function Zt(){re=Math.max(0,re-1),re===0&&(Q.value=!1)}async function Vn(Ne){re=0,Q.value=!1,!(!ne.value||$.value)&&await fa(Ne.dataTransfer?.files??[])}function qn(){!ne.value||$.value||V.value?.click()}function Lt(Ne){const Be=Ne.target,Ze=Array.from(Be.files??[]);Be.value="",fa(Ze)}async function fa(Ne){if(!ne.value||$.value)return;const Be=Array.from(Ne);if(Be.length===0)return;$.value=!0;let Ze=0;try{for(const ot of Be)try{await n.workspace.uploadFile(ot,crypto.randomUUID()),Ze+=1}catch(yt){et(c("hostedConversations.fileUploadFailed",{name:ot.name,message:Wt(yt)}),"error",yt)}}finally{$.value=!1}Ze>0&&et(c("hostedConversations.filesUploaded",{count:Ze}),"success")}function pa(Ne){return Array.from(Ne.dataTransfer?.types??[]).includes("Files")}async function ga(Ne){if(!(!ne.value||N.value!==void 0)){try{await Nt.confirm(c("hostedConversations.fileDeleteConfirmation",{name:Ne.displayName}),c("hostedConversations.fileDeleteTitle"),{closeIcon:qe("close"),icon:qe("warning"),type:"warning",confirmButtonText:c("hostedConversations.fileDelete"),cancelButtonText:c("common.cancel")})}catch{return}N.value=Ne.id;try{await n.workspace.deleteFile(Ne.id),Fe.file.value?.id===Ne.id&&Fe.close(),et(c("hostedConversations.fileDeleted",{name:Ne.displayName}),"success")}catch(Be){et(Wt(Be),"error",Be)}finally{N.value===Ne.id&&(N.value=void 0)}}}function ma(Ne,Be,Ze,ot){const yt=_o(n.workspace.snapshot.value?.files??[],Ne);if(yt!==void 0){if(ot){const Ut=n.workspace.selectedNodeId.value,Mt=n.workspace.selectedConversationId.value;if(Ut===void 0||Mt===void 0)return;const Pt=new URLSearchParams({standaloneFile:"1",source:"hosted",nodeId:Ut,workspaceId:Mt,conversationId:Mt,fileId:yt.id,path:Sc(yt),mimeType:yt.mimeType,size:String(yt.size)});Be!==void 0&&Pt.set("line",String(Be)),Ze!==void 0&&Pt.set("column",String(Ze)),a.open(`/console?${Pt.toString()}`);return}Fe.openFile(yt,Be,Ze)}}function eo(Ne){const Be=_o(n.workspace.snapshot.value?.files??[],Ne);return Be===void 0?"":n.workspace.contentUrl(Be)}function to(){Fe.close(),Se.previewOpen.value=!1,Se.preview.value=void 0}function Wt(Ne){const Be=typeof Ne=="object"&&Ne!==null&&!Array.isArray(Ne)?Ne:void 0,Ze=gt(Ne)??(typeof Be?.code=="string"?Be.code:void 0);let ot;switch(Ze){case"CONVERSATION_HOSTING_STORAGE_FULL":ot=c("hostedConversations.storageFull");break;case"HOSTED_CONVERSATION_FILE_RECONCILE_FAILED":ot=c("hostedConversations.fileProjectionFailed");break;case"HOSTED_CONVERSATION_FILE_NOT_FOUND":ot=c("hostedConversations.fileNotFound");break;case"HOSTED_CONVERSATION_FILE_CONFLICT":case"HOSTED_CONVERSATION_FILE_INVALID":ot=c("hostedConversations.fileConflict");break;case"HOSTED_CONVERSATION_UPGRADE_FAILED":ot=c("hostedConversations.upgradeFailed");break;case"HOSTED_CONVERSATION_NOT_FOUND":ot=c("hostedConversations.notFound");break;case"HOSTED_CONVERSATION_RUN_ACTIVE":ot=c("hostedConversations.runActive");break;case"HOSTED_CONVERSATION_STATE_INVALID":ot=c("hostedConversations.stateInvalid");break;case"HOSTED_CONVERSATION_ROLLBACK_TARGET_INVALID":ot=c("hostedConversations.rollbackTargetInvalid");break;case"HOSTED_CONVERSATION_RESPONSE_INVALID":ot=c("hostedConversations.responseInvalid");break;case"HOSTED_CONVERSATION_WATCH_INITIAL_FAILED":case"HOSTED_CONVERSATION_WATCH_FAILED":ot=c("hostedConversations.watchFailed");break;default:ot=Ne instanceof Error&&Ne.message.trim().length>0?Ne.message:typeof Be?.message=="string"&&Be.message.trim().length>0?Be.message.trim():c("hostedConversations.operationFailed")}return it(Ne,ot)}He(()=>n.restoringRoute,(Ne,Be)=>{!Ne&&Be&&Re()}),He(xe,to),He(xe,r.clear),He(Ee,Ne=>Se.retain(Ne),{immediate:!0}),He(xe,()=>{fe.value=new Set,Me.following.value=!0,Me.scrollToLatestAfterLayout()}),He(()=>n.workspace.snapshot.value,()=>{Me.following.value&&Me.scrollToLatestAfterLayout()},{flush:"post"}),He(()=>n.mobileHistoryOpen,Ne=>{Ne&&(U.value=!1)}),He(()=>n.mobileViewport,Ne=>{if(!Ne){ae();return}Me.following.value&&Me.scrollToLatestAfterLayout()});const ha=Rr({isOpen:()=>n.mobileViewport&&(n.mobileHistoryOpen||U.value),regions:()=>[document.getElementById(n.mobileHistoryOpen?"hosted-pane-history":"hosted-pane-files"),document.querySelector(".activity-rail")],close:ae});return mt(ha.dispose),mt(Y.dispose),Dt(Xe),mt(()=>{p?.disconnect(),ge?.disconnect(),Fe.dispose()}),(Ne,Be)=>{const Ze=bt,ot=Ft,yt=ln,Ut=sn,Mt=rn,Pt=Ar,zt=St("tooltip"),ya=ca;return f(),O("section",{class:Ke(["hosted-workspace",{"history-collapsed":e.sidebarCollapsed}])},[B(hn,{name:"mobile-surface-scrim"},{default:Z(()=>[e.mobileViewport&&(e.mobileHistoryOpen||U.value)?(f(),O("button",{key:0,class:"hosted-conversation-scrim",type:"button","aria-label":e.mobileHistoryOpen?o(c)("hostedConversations.closeHistory"):o(c)("hostedConversations.closeFiles"),onClick:ae},null,8,gC)):ve("",!0)]),_:1}),K("aside",{id:"hosted-pane-history",tabindex:"-1",class:Ke(["hosted-conversation-history",{"mobile-open":e.mobileViewport&&e.mobileHistoryOpen}]),inert:e.mobileViewport?!e.mobileHistoryOpen:e.sidebarCollapsed,"aria-label":o(c)("hostedConversations.historyTitle")},[K("header",hC,[K("div",yC,[K("h2",null,W(o(c)("hostedConversations.historyTitle")),1)])]),K("div",wC,[B(Ze,{class:"history-create-button",type:"primary",onClick:q},{default:Z(()=>[B(De,{name:"session-add"}),K("span",null,W(o(c)("hostedConversations.create")),1)]),_:1}),K("div",kC,[B(ot,{modelValue:u.value,"onUpdate:modelValue":Be[0]||(Be[0]=lt=>u.value=lt),clearable:"","prefix-icon":o(qe)("search"),placeholder:o(c)("hostedConversations.searchHistory"),"aria-label":o(c)("hostedConversations.searchHistory"),"clear-icon":o(qe)("clear-input")},null,8,["modelValue","prefix-icon","placeholder","aria-label","clear-icon"]),Le(B(Ze,{class:"history-refresh-button utility-control","aria-label":o(c)("hostedConversations.refreshHistory"),disabled:d.value,loading:e.workspace.loadingConversations.value&&e.workspace.conversationsLoaded.value,"aria-busy":e.workspace.loadingConversations.value&&e.workspace.conversationsLoaded.value,icon:o(qe)("refresh"),size:"small",text:"",onClick:de,"loading-icon":o(qe)("loading-action")},null,8,["aria-label","disabled","loading","aria-busy","icon","loading-icon"]),[[zt,o(c)("hostedConversations.refreshHistory")]])])]),Le((f(),O("div",{ref_key:"historyList",ref:w,class:"history-list"},[!d.value&&ce.value.length===0?(f(),O("p",bC,W(o(c)(u.value.trim()?"hostedConversations.noLoadedHistoryMatches":"hostedConversations.noHistory")),1)):ve("",!0),(f(!0),O(Ve,null,Je(ce.value,lt=>(f(),O("article",{key:Oe(lt),class:Ke(["mar-session-reorder-item",{selected:lt.nodeId===e.workspace.selectedNodeId.value&&lt.id===e.workspace.selectedConversationId.value}]),onMouseenter:pt=>E.value=Oe(lt),onMouseleave:Be[1]||(Be[1]=pt=>E.value=void 0),onFocusin:pt=>H.value=Oe(lt),onFocusout:Ie,onContextmenu:pt=>pe(lt,pt)},[K("button",{class:"history-open",type:"button","aria-current":lt.nodeId===e.workspace.selectedNodeId.value&&lt.id===e.workspace.selectedConversationId.value?"page":void 0,onClick:pt=>Ce(lt)},[K("span",CC,[lt.pinnedAt!==null?(f(),we(De,{key:0,name:"star-filled",class:"history-pin-indicator","aria-label":o(c)("hostedConversations.pinnedLabel")},null,8,["aria-label"])):ve("",!0),e.workspace.conversationIsRunning(lt)?(f(),O("span",TC)):ve("",!0),e.hasUnreadConversation(lt.nodeId,lt.id)?(f(),O("span",EC,W(o(c)("hostedConversations.unreadLabel")),1)):ve("",!0),K("strong",null,W(o(Tn)(lt)),1)]),K("time",{datetime:new Date(lt.lastActivityAt).toISOString()},W(o(c)("presentation.lastActivity",{value:o(Gt)(lt.lastActivityAt)})),9,RC)],8,SC),We(Oe(lt))?(f(),we(Mt,{key:0,class:"history-row-actions",placement:"bottom-end","popper-class":"session-action-menu",trigger:"click",onVisibleChange:pt=>je(pt,Oe(lt))},{dropdown:Z(()=>[B(Ut,null,{default:Z(()=>[B(yt,{onClick:pt=>se(lt,lt.pinnedAt===null)},{default:Z(()=>[B(De,{name:"pin"}),ke(" "+W(o(c)(lt.pinnedAt===null?"hostedConversations.pin":"hostedConversations.unpin")),1)]),_:2},1032,["onClick"]),B(yt,{onClick:pt=>_(lt)},{default:Z(()=>[B(De,{name:"edit"}),ke(" "+W(o(c)("hostedConversations.editTitle")),1)]),_:1},8,["onClick"]),B(yt,{divided:"",onClick:pt=>be(lt)},{default:Z(()=>[B(De,{name:"delete"}),ke(" "+W(o(c)("hostedConversations.delete")),1)]),_:1},8,["onClick"])]),_:2},1024)]),default:Z(()=>[Le((f(),O("button",{class:"history-more-button utility-control",type:"button",disabled:L.value!==void 0,"aria-label":o(c)("hostedConversations.moreActions",{title:o(Tn)(lt)})},[B(De,{name:"more"})],8,AC)),[[zt,o(c)("hostedConversations.moreActions",{title:o(Tn)(lt)})]])]),_:2},1032,["onVisibleChange"])):ve("",!0)],42,IC))),128)),u.value.trim()?(f(),O("p",NC,W(o(c)("hostedConversations.filterLoadedOnly")),1)):ve("",!0),e.workspace.hasMoreConversations.value?(f(),O("div",{key:2,ref_key:"historyAppendMarker",ref:k,class:"list-append-state","aria-busy":e.workspace.loadingMoreConversations.value},[e.workspace.loadingMoreConversations.value&&!T.value?(f(),O("span",{key:0,role:"status","aria-label":o(c)("common.loading")},[B(gn,{class:"read-loading-indicator"})],8,PC)):ve("",!0),T.value||e.workspace.loadMoreConversationsError.value&&!e.workspace.loadingMoreConversations.value?(f(),we(Ze,{key:1,link:"","aria-disabled":e.workspace.loadingMoreConversations.value,"aria-busy":e.workspace.loadingMoreConversations.value,"aria-label":e.workspace.loadingMoreConversations.value?o(c)("common.loading"):void 0,onClick:R},{default:Z(()=>[e.workspace.loadingMoreConversations.value?(f(),we(gn,{key:0,class:"read-loading-indicator"})):(f(),O(Ve,{key:1},[ke(W(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-disabled","aria-busy","aria-label"])):ve("",!0)],8,DC)):ve("",!0)])),[[ya,e.workspace.loadingConversations.value&&!e.workspace.conversationsLoaded.value],[o(wc),oe.value]])],10,mC),K("main",{id:"hosted-pane-conversation",class:"hosted-conversation-main",inert:e.mobileViewport&&(e.mobileHistoryOpen||U.value)},[e.mobileViewport?Le((f(),O("button",{key:0,class:"hosted-mobile-files-button",type:"button","aria-label":o(c)("hostedConversations.mobileFiles"),onClick:me},[B(De,{name:"folder-open"})],8,LC)),[[zt,o(c)("hostedConversations.mobileFiles")]]):ve("",!0),e.workspace.snapshot.value?.error?(f(),we(Pt,{key:1,class:"snapshot-error-alert",closable:!1,"show-icon":"",type:"error",title:Wt(e.workspace.snapshot.value.error)},{icon:Z(()=>[B(De,{name:"error"})]),_:1},8,["title"])):ve("",!0),M.value?(f(),we(Pt,{key:2,class:"readonly-alert",closable:!1,"show-icon":"",type:"warning",title:ee.value},{icon:Z(()=>[B(De,{name:"warning"})]),_:1},8,["title"])):ve("",!0),X.value||P.value===void 0?(f(),O("section",WC,[B(uC,{request:e.request,workspace:e.workspace,"mobile-viewport":e.mobileViewport,connected:e.connected,entry:o(Y),onStarted:te},null,8,["request","workspace","mobile-viewport","connected","entry"])])):(f(),O(Ve,{key:4},[B(xl,{class:"hosted-timeline-scroll","context-key":xe.value,"has-older":e.workspace.historyNextCursor.value!==null,"loading-initial":S.value,"initial-sync-pending":S.value,"initial-load-failed":m.value,"initial-error":A.value,"loading-older":e.workspace.loadingOlderHistory.value,"older-error":e.workspace.olderHistoryError.value===void 0?"":Wt(e.workspace.olderHistoryError.value),"has-turns":Ee.value.length>0,following:o(Me).following.value,"empty-prompt":G.value&&!e.workspace.snapshot.value?.run?"hosted":void 0,onScrollElement:_e,onScroll:Ge,onScrollIntent:o(Me).stopFollowing,onLoadOlder:tt,onReload:he,onLatest:o(Me).scrollToLatest},{default:Z(()=>[e.workspace.snapshot.value!==void 0?(f(),we(Ml,{key:0,runs:e.workspace.snapshot.value?.run?[e.workspace.snapshot.value.run]:[],turns:Ee.value,"workspace-root":"/workspace",loading:h.value,initializing:b.value!==void 0,"initial-render-version":0,"capture-render-anchor":o(Me).captureRenderAnchor,"image-attachments":o(Se).attachments,"user-input-questions":()=>[],"user-input-answer":()=>"","user-input-submitted":()=>!1,"plan-continuation":void 0,"node-ready":G.value,synchronized:e.connected!==!1&&e.workspace.watchReady.value,"tool-change-enabled":s.value,"rewind-enabled":!1,"rollback-enabled":ue.value,onCopy:vt,onRollback:Rt,onOpenImage:o(Se).open,onImageUnavailable:o(Se).markUnavailable,onOpenFile:ma,onOpenFileChange:i},null,8,["runs","turns","loading","initializing","capture-render-anchor","image-attachments","node-ready","synchronized","tool-change-enabled","rollback-enabled","onOpenImage","onImageUnavailable"])):ve("",!0)]),_:1},8,["context-key","has-older","loading-initial","initial-sync-pending","initial-load-failed","initial-error","loading-older","older-error","has-turns","following","empty-prompt","onScrollIntent","onLatest"]),e.workspace.snapshot.value!==void 0?(f(),we(Cc,{connected:e.connected,ref_key:"composer",ref:F,key:xe.value,workspace:e.workspace,"mobile-viewport":e.mobileViewport,readonly:!G.value||h.value,"readonly-reason":ee.value,"template-change-blocked":h.value||$.value},null,8,["connected","workspace","mobile-viewport","readonly","readonly-reason","template-change-blocked"])):ve("",!0)],64))],8,OC),K("aside",{id:"hosted-pane-files",tabindex:"-1",inert:e.mobileViewport&&!U.value,class:Ke(["hosted-conversation-files",{"mobile-open":e.mobileViewport&&U.value,"is-file-dragging":Q.value}]),"aria-label":o(c)("hostedConversations.filesTitle"),onDragenter:rt(ht,["prevent"]),onDragover:rt(Qt,["prevent"]),onDragleave:rt(Zt,["prevent"]),onDrop:rt(Vn,["prevent"])},[K("header",xC,[K("h2",null,W(o(c)("hostedConversations.filesTitle")),1)]),P.value!==void 0?(f(),O(Ve,{key:0},[K("input",{ref_key:"relatedFilesInput",ref:V,class:"related-files-input",type:"file",multiple:"",disabled:!ne.value||$.value,onChange:Lt},null,40,$C),K("button",{class:Ke(["files-drop-target",{active:Q.value,disabled:!ne.value}]),"aria-disabled":!ne.value,type:"button",disabled:!ne.value||$.value,onClick:qn},[B(De,{name:"upload"}),K("span",null,W(Q.value?o(c)("hostedConversations.filesDropNow"):o(c)("hostedConversations.filesDropHint")),1)],10,FC),Le((f(),O("div",UC,[(f(!0),O(Ve,null,Je(le.value,lt=>(f(),O("section",{key:lt.category},[K("h3",null,W(ze(lt.category)),1),lt.files.length===0?(f(),O("p",VC,W(o(c)("hostedConversations.noFiles")),1)):ve("",!0),(f(!0),O(Ve,null,Je(lt.rows,pt=>(f(),O("div",{key:`${lt.category}:${pt.node.kind}:${pt.node.path}`,class:Ke(["file-row",{"is-directory":pt.node.kind==="DIRECTORY"}]),style:It({"--file-depth":pt.depth})},[pt.node.kind==="DIRECTORY"?Le((f(),O("span",qC,[K("button",{class:"file-directory",type:"button","aria-expanded":Ue(lt.category,pt.node.path),"aria-label":Te(lt.category,pt.node.path),onClick:wa=>Qe(lt.category,pt.node.path)},[B(De,{name:"chevron-right",class:Ke(["file-directory-chevron",{expanded:Ue(lt.category,pt.node.path)}])},null,8,["class"]),B(De,{name:"folder-open",class:"file-directory-kind"}),K("span",null,W(pt.node.name),1)],8,HC)])),[[zt,pt.node.path]]):(f(),O(Ve,{key:1},[Le((f(),O("button",{"aria-label":pt.node.file.relativePath,class:"file-open",type:"button",onClick:wa=>o(Fe).openFile(pt.node.file)},[K("span",null,W(pt.node.file.displayName),1),K("small",null,W(o(ja)(pt.node.file.size)),1)],8,BC)),[[zt,pt.node.file.relativePath]]),Le((f(),O("button",{class:"file-delete",type:"button",disabled:!ne.value||N.value!==void 0,"aria-label":o(c)("hostedConversations.fileDeleteNamed",{name:pt.node.file.displayName}),onClick:wa=>ga(pt.node.file)},[B(De,{name:"delete"})],8,GC)),[[zt,o(c)("hostedConversations.fileDeleteNamed",{name:pt.node.file.displayName})]])],64))],6))),128))]))),128))])),[[ya,$.value]])],64)):(f(),O("div",zC,[K("p",null,W(o(c)("hostedConversations.filesAvailableAfterCreate")),1)]))],42,MC),(f(),we(la,{to:"body"},[B(HS,{review:o(r),onOpenSource:l,onError:Be[2]||(Be[2]=lt=>o(et)(Wt(lt),"error",lt))},null,8,["review"]),B($l,{"attachment-open":!1,attachment:void 0,"conversation-open":o(Se).previewOpen.value,conversation:o(Se).preview.value,"onUpdate:conversationOpen":Be[3]||(Be[3]=lt=>o(Se).previewOpen.value=lt),onClearConversation:Be[4]||(Be[4]=lt=>o(Se).preview.value=void 0)},null,8,["conversation-open","conversation"]),o(Fe).visible.value&&o(Fe).content.value?(f(),we(ig,{key:0,overlay:!0,label:o(c)("generated.filePreviewDialog.filePreview",{value0:o(Fe).content.value.path}),onFocus:Be[6]||(Be[6]=lt=>ye.value?.focus()),onClose:o(Fe).close},{default:Z(()=>[o(Fe).visible.value&&o(Fe).content.value&&o(Fe).kind.value==="text"?(f(),we(ql,{key:0,ref_key:"filePage",ref:ye,downloading:o(Fe).downloading.value,file:o(Fe).content.value,loading:o(Fe).loading.value,"load-error":Ye.value,onReload:o(Fe).retry,fullscreen:!0,contained:!0,kind:o(Fe).kind.value,markdown:o(Fe).content.value.encoding==="utf-8"&&o(rr)(o(Fe).content.value.path),"render-markdown":!0,"markdown-resource-url":eo,"target-line":o(Fe).targetLine.value,"target-column":o(Fe).targetColumn.value,"write-enabled":!1,onClose:o(Fe).close,onDownload:o(Fe).download,onOpenMarkdownFile:Be[5]||(Be[5]=(lt,pt)=>ma(lt,void 0,void 0,pt))},null,8,["downloading","file","loading","load-error","onReload","kind","markdown","target-line","target-column","onClose","onDownload"])):o(Fe).visible.value&&o(Fe).content.value?(f(),we(Hl,{key:1,ref_key:"filePage",ref:ye,"content-url":o(Fe).contentUrl.value,downloading:o(Fe).downloading.value,file:o(Fe).content.value,loading:o(Fe).loading.value,"load-error":Ye.value,onReload:o(Fe).retry,fullscreen:!0,contained:!0,kind:o(Fe).kind.value,onClose:o(Fe).close,onDownload:o(Fe).download},null,8,["content-url","downloading","file","loading","load-error","onReload","kind","onClose","onDownload"])):ve("",!0)]),_:1},8,["label","onClose"])):ve("",!0)]))],2)}}}),jC=dt(KC,[["__scopeId","data-v-1737ee5b"]]),_C=["aria-description","aria-label","aria-expanded"],YC=at({__name:"WorkspaceSessionTreeButton",props:{sessionId:{},open:{type:Boolean},summary:{},status:{}},emits:["show"],setup(e,{emit:t}){const n=t;return(a,r)=>(f(),O("button",{type:"button",class:"icon-button utility-control conversation-tree-button","aria-description":e.status==="failed"?o(c)("sessionGroups.treeSyncUnavailable"):e.summary?.hasActiveDescendants?o(c)("sessionGroups.activeDescendants",{count:e.summary.activeCount}):void 0,"aria-label":o(c)("sessionGroups.tree"),"aria-expanded":e.open,"aria-haspopup":"dialog",onClick:r[0]||(r[0]=s=>n("show",e.sessionId,s.currentTarget))},[B(De,{name:"session-tree"}),e.summary?.hasActiveDescendants?(f(),O("span",{key:0,class:Ke(["tree-active-indicator mar-icon-status-badge",{paused:e.status!=="ready"}]),"aria-hidden":"true"},null,2)):ve("",!0)],8,_C))}}),QC=dt(YC,[["__scopeId","data-v-e3897b4d"]]),JC={class:"conversation-header-title"},XC={class:"conversation-title-row"},ZC=["src","data-runner"],eT={key:0,class:"conversation-session-id"},tT=["aria-label"],nT=["aria-label"],aT=["aria-label"],oT=["aria-label"],rT=at({__name:"ConversationHeader",props:{session:{},runner:{},filesReady:{type:Boolean},terminalReady:{type:Boolean},asideReady:{type:Boolean},contentSearchReady:{type:Boolean},runnerIcon:{type:Function},sessionTitle:{type:Function}},emits:["openSurface"],setup(e,{emit:t}){const n=t;async function a(r){try{await navigator.clipboard.writeText(r),et(c("generated.conversationHeader.sessionIdCopied"),"info")}catch{et(c("generated.conversationHeader.copySessionIdFailed"),"error")}}return(r,s)=>{const i=St("tooltip");return f(),O("header",{class:Ke(["conversation-header",{"conversation-header-draft":o(Na)(e.session)}])},[K("div",JC,[K("div",XC,[K("img",{src:e.runnerIcon(e.session?.runner??e.runner),"data-runner":e.session?.runner??e.runner,alt:"","aria-hidden":"true",class:"runner-brand-icon conversation-title-runner-icon"},null,8,ZC),Le((f(),O("h2",null,[ke(W(o(Na)(e.session)?o(c)("generated.conversationHeader.newSession2"):e.sessionTitle(e.session)),1)])),[[i,{content:o(Na)(e.session)?o(c)("generated.conversationHeader.newSession"):e.sessionTitle(e.session),touch:!0}]])]),e.session&&!o(Na)(e.session)?(f(),O("p",eT,[Le((f(),O("button",{class:"utility-control conversation-session-id-copy",type:"button","aria-label":o(c)("generated.conversationHeader.copySessionId",{sessionId:e.session.id}),onClick:s[0]||(s[0]=l=>a(e.session.id))},[K("code",null,W(e.session.id),1)],8,tT)),[[i,o(c)("generated.conversationHeader.copySessionId",{sessionId:e.session.id})]]),Ct(r.$slots,"tree",{sessionId:e.session.id},void 0,!0)])):ve("",!0)]),K("div",{class:"mobile-conversation-tools","aria-label":o(c)("generated.conversationHeader.workspaceTools")},[K("button",{class:"utility-control",type:"button","aria-label":o(c)("generated.conversationHeader.openSessionList"),onClick:s[1]||(s[1]=l=>n("openSurface","sessions"))},W(o(c)("generated.conversationHeader.sessions")),9,aT),e.asideReady||e.filesReady||e.terminalReady?(f(),O("button",{key:0,class:"utility-control",type:"button","aria-label":o(c)("generated.conversationHeader.openAside"),onClick:s[2]||(s[2]=l=>n("openSurface","inspector"))},W(o(c)("generated.conversationHeader.more")),9,oT)):ve("",!0)],8,nT)],2)}}}),iT=dt(rT,[["__scopeId","data-v-761ce659"]]),sT=["aria-label"],lT=at({__name:"SessionPerformanceInfo",props:{performance:{}},setup(e){const t=e,n=j(()=>Lp(t.performance));return(a,r)=>{const s=St("tooltip");return n.value?Le((f(),O("button",{key:0,class:"session-performance-info icon-button utility-control",type:"button","aria-label":`${o(c)("generated.conversationTimeline.modelPerformanceDetails")}: ${n.value}`},[B(De,{name:"info"})],8,sT)),[[s,{content:n.value,placement:"top",touch:!0}]]):ve("",!0)}}}),cT=dt(lT,[["__scopeId","data-v-359b0644"]]),dT=["aria-label"],ol=at({__name:"WorkspaceSessionPane",props:{controller:{},treeSupported:{type:Boolean},asideReady:{type:Boolean},treeOpenSessionId:{},treeSummaries:{},treeStatus:{}},emits:["openTree","openSurface","previewAttachment","reload"],setup(e,{emit:t}){const n=e,a=n.controller.state,r=a.workspaceTarget,s=Et(n.controller.presentation),i=Et(n.controller.configuration),l=Et(n.controller.runner),v=n.controller.interactions,u=Et(n.controller.references),d=n.controller.currentSessionQueue,w=n.controller.submitting,k=n.controller.canInterrupt,T=n.controller.performance.current,p=n.controller.conversationWindow.paging.olderHistoryError,g=j(()=>JSON.stringify([a.workspaceTarget.value?.nodeId,a.workspaceTarget.value?.workspaceId,n.controller.selectedSessionId.value])),R=t,b=x(),C=x();let I,S;Dt(()=>{I=a.registerShortcuts(()=>b.value?.$el,()=>C.value?.openModelMenu()===!0),S=n.controller.interactions.registerShortcuts(()=>b.value?.$el.querySelector("textarea")??void 0)});function m(A){n.controller.selectModelEffort(A),b.value?.focus()}return a.setInputFocus(A=>b.value?.focusAt(A)),a.setRangeEditor((A,L,y)=>b.value?.replaceRange(A,L,y)??!1),mt(()=>{I?.(),S?.(),a.setInputFocus(()=>{}),a.setRangeEditor(()=>!1)}),(A,L)=>(f(),O("section",{class:"conversation-panel","aria-label":o(c)("generated.workbenchSurface.agentConversation")},[o(s).composerSessionOpen?(f(),O(Ve,{key:0},[B(iT,{session:o(i).selectedSession,runner:o(i).activeRunner,"files-ready":e.controller.filesReady.value,"terminal-ready":e.controller.terminalReady.value,"aside-ready":e.asideReady,"runner-icon":o(mc),"session-title":o(Ga),"content-search-ready":e.controller.filesReady.value,onOpenSurface:L[1]||(L[1]=y=>R("openSurface",y))},{tree:Z(({sessionId:y})=>[o(r)&&e.treeSupported?(f(),we(QC,{key:y,"session-id":y,open:e.treeOpenSessionId===y,summary:e.treeSummaries?.find(D=>D.anchorSessionId===y),status:e.treeStatus??"idle",onShow:L[0]||(L[0]=(D,E)=>R("openTree",D,E,o(i).selectedSession?o(Ga)(o(i).selectedSession):D))},null,8,["session-id","open","summary","status"])):ve("",!0)]),_:1},8,["session","runner","files-ready","terminal-ready","aside-ready","runner-icon","session-title","content-search-ready"]),B(xl,{"context-key":g.value,"has-older":o(a).conversation.nextCursor.value!==null,"loading-initial":e.controller.status.initialContentLoading(),"initial-sync-pending":o(a).conversation.loadingInitial.value,"initial-load-failed":o(a).conversation.initialLoadFailed.value,"initial-error":o(a).conversation.initialLoadFailed.value?o(it)(o(a).conversation.initialFailureCause.value):void 0,"loading-older":o(a).conversation.loadingOlder.value,"older-error":o(p),"has-turns":o(a).conversation.turns.value.length>0,following:o(a).scroll.following.value,"empty-prompt":e.controller.draftOpen.value?"workspace":void 0,onScrollElement:L[2]||(L[2]=y=>o(a).scroll.setElement(y)),onScroll:o(v).onComposerScroll,onScrollIntent:o(a).scroll.stopFollowing,onLoadOlder:e.controller.conversationWindow.paging.loadOlderConversationTurns,onLatest:o(v).scrollConversationToLatest,onReload:L[3]||(L[3]=y=>R("reload"))},{status:Z(()=>[B(cT,{performance:o(T)},null,8,["performance"])]),default:Z(()=>[B(Ml,{runs:e.controller.conversationRuns.value,turns:o(s).displayedConversationTurns,performance:o(T),initializing:e.controller.status.initialContentLoading(),"initial-render-version":o(a).conversation.initialRenderVersion.value,"capture-render-anchor":o(a).scroll.captureRenderAnchor,"workspace-root":e.controller.selectedWorkspace.value?.path,"image-resource-url":e.controller.imageResourceUrl.value,loading:e.controller.loading.value||o(w),"image-attachments":e.controller.images.attachments,"user-input-questions":o(Wp),"user-input-answer":e.controller.userInput.answer,"user-input-submitted":e.controller.userInput.submitted,"plan-continuation":e.controller.activePlanContinuation.value,"node-ready":o(s).nodeReady,synchronized:e.controller.status.connected()&&!e.controller.conversationSyncPending.value,"tool-change-enabled":o(s).nodeReady,"rewind-enabled":o(s).rewindConversationEnabled,"rollback-enabled":o(s).rollbackConversationEnabled,onInitialRendered:o(a).conversation.confirmInitialRender,onOpenImage:e.controller.images.open,onImageUnavailable:e.controller.images.markUnavailable,onOpenFile:e.controller.openAgentFile,onOpenFileChange:e.controller.openFileChange,onSetAnswer:e.controller.userInput.setAnswer,onSubmitInput:e.controller.userInput.submit,onImplementPlan:e.controller.plan.implementPlan,onCopy:e.controller.copyMessage,onRewind:e.controller.rewindConversation,onRollback:e.controller.rollbackConversation,onDecideApproval:e.controller.approvals.decideApproval},null,8,["runs","turns","performance","initializing","initial-render-version","capture-render-anchor","workspace-root","image-resource-url","loading","image-attachments","user-input-questions","user-input-answer","user-input-submitted","plan-continuation","node-ready","synchronized","tool-change-enabled","rewind-enabled","rollback-enabled","onInitialRendered","onOpenImage","onImageUnavailable","onOpenFile","onOpenFileChange","onSetAnswer","onSubmitInput","onImplementPlan","onCopy","onRewind","onRollback","onDecideApproval"])]),_:1},8,["context-key","has-older","loading-initial","initial-sync-pending","initial-load-failed","initial-error","loading-older","older-error","has-turns","following","empty-prompt","onScroll","onScrollIntent","onLoadOlder","onLatest"]),B(Ol,{ref_key:"composer",ref:b,input:o(a).draft.input.value,"onUpdate:input":L[14]||(L[14]=y=>o(a).draft.input.value=y),placeholder:o(l).selectedCommand?o(c)("generated.workbenchSurface.run",{value0:o(l).selectedCommand.id}):e.controller.nodeManifest.value===void 0&&o(s).workspaceHost?.connected===!0&&o(s).workspaceHost.disabled!==!0?e.controller.status.manifestLoading.value?o(c)("generated.workspaceInspector.loading"):o(c)("generated.workbenchSurface.nodeWorkbenchCapabilitiesAreUnavailable"):o(c)("generated.workbenchSurface.typeForCommandsToReferenceWorkspaceFiles",{value0:o($n)(o(i).activeRunner)}),working:o(s).composerWorking,"working-label":o(s).composerWorkingLabel,"working-busy":o(s).composerWorkingBusy,"elapsed-label":o(s).workingElapsedLabel,"connection-busy":!e.controller.status.connected()||e.controller.conversationSyncPending.value,"connection-label":e.controller.status.connected()?e.controller.conversationSyncPending.value?o(c)("conversationActivity.syncing"):"":o(c)("conversationActivity.reconnecting"),readonly:o(s).composerInputDisabled,"drop-target":o(a).draggingAttachments.value,"mobile-viewport":e.controller.mobileViewport.value,"command-states":o(l).activeCommandStates,loading:e.controller.loading.value||o(w),"skill-tokens":o(a).draft.skillTokens.value,"file-references":o(a).draft.references.value,completion:e.controller.completion.value,"completion-blocked":o(l).commandPickerOpen||o(u).open||o(l).selectedCommand!==void 0||o(s).composerAttachmentsPending,onSubmit:e.controller.sendMessage,onInput:o(v).onComposerInput,onKeydown:o(v).onComposerKeydown,onCursor:o(v).onComposerCursor,onPaste:e.controller.attachmentInput.onPaste,onDragenter:e.controller.attachmentInput.onDragEnter,onDragleave:e.controller.attachmentInput.onDragLeave,onDrop:e.controller.attachmentInput.onDrop,onCloseCommand:e.controller.closeCommandState,onRemoveSkill:o(a).skillTokens.remove,onRemoveReference:e.controller.references.remove},{queue:Z(()=>[B(Up,{items:o(d).items,paused:o(d).paused,loading:e.controller.loading.value||o(w),"editing-queue-item-id":o(a).queue.editingQueueItemId.value,"editing-content":o(a).queue.editingContent.value,goal:e.controller.activeGoal.value,onDragStart:L[4]||(L[4]=y=>o(a).queue.draggingQueueItemId.value=y),onReorder:e.controller.queueActions.reorder,onEdit:L[5]||(L[5]=y=>o(a).queue.startEditing(y)),onCancelEdit:L[6]||(L[6]=y=>o(a).queue.finishEditing()),onUpdateContent:L[7]||(L[7]=y=>o(a).queue.editingContent.value=y),onSave:e.controller.queueActions.save,onExecute:L[8]||(L[8]=(y,D)=>e.controller.queueActions.execute(y,D)),onDeleteItem:e.controller.queueActions.remove,onSaveGoal:e.controller.editGoal,onClearGoal:e.controller.clearGoal},null,8,["items","paused","loading","editing-queue-item-id","editing-content","goal","onReorder","onSave","onDeleteItem","onSaveGoal","onClearGoal"])]),toolbar:Z(()=>[o(s).canUseComposer?(f(),we(Fp,{key:0,submitting:o(w),ref_key:"composerToolbar",ref:C,"draft-session-open":o(s).composerDraftOpen,runner:o(i).runner,"runner-options":e.controller.runnerOptions.value,"runner-loading":e.controller.runnerProfilesLoading.value,"runner-disabled":!e.controller.draftOpen.value||e.controller.loading.value||o(w),"runner-label":o(i).runnerLabel,"model-effort-selection":o(i).modelEffortSelection,"model-effort-label":o(i).modelEffortLabel,"selected-model":o(i).modelId,"selected-effort":o(i).effort,models:o(i).models,efforts:o(i).efforts,access:o(i).access,"access-label":o(i).accessLabel,"access-options":o(i).accessOptions,"configuration-disabled":o(s).composerConfigurationDisabled,"access-disabled":o(s).composerAccessDisabled,"fast-enabled":o(l).codexFastEnabled,"context-usage":o(a).conversation.contextUsage.value,"context-usage-label":o(s).contextUsageLabel,"can-compact-context":o(s).canCompactContext,"mobile-viewport":e.controller.mobileViewport.value,"active-run":o(s).activeComposerRun,"context-key":g.value,"interrupt-visible":o(s).interruptVisible,"can-interrupt":o(k),"input-has-content":o(a).draft.input.value.trim().length>0||o(a).draft.skillTokens.value.length>0||o(a).draft.references.value.length>0||o(a).attachments.attachments.value.length>0,"has-selected-command":o(l).selectedCommand!==void 0,loading:e.controller.loading.value||o(w),"attachments-pending":o(s).composerAttachmentsPending,"effort-label":e.controller.effortLabel,onFiles:o(a).attachments.add,onUpdateRunner:e.controller.composer.selectRunner,onUpdateModelEffort:m,onUpdateAccess:e.controller.selectAccess,onCompact:e.controller.context.compactCurrentContext,onStop:e.controller.runControl.stopActiveRun,onSend:L[9]||(L[9]=y=>e.controller.sendMessage()),onSteer:L[10]||(L[10]=y=>e.controller.sendMessage("REPLACE_CURRENT"))},null,8,["submitting","draft-session-open","runner","runner-options","runner-loading","runner-disabled","runner-label","model-effort-selection","model-effort-label","selected-model","selected-effort","models","efforts","access","access-label","access-options","configuration-disabled","access-disabled","fast-enabled","context-usage","context-usage-label","can-compact-context","mobile-viewport","active-run","context-key","interrupt-visible","can-interrupt","input-has-content","has-selected-command","loading","attachments-pending","effort-label","onFiles","onUpdateRunner","onUpdateAccess","onCompact","onStop"])):ve("",!0)]),attachments:Z(()=>[B($p,{attachments:o(a).attachments.attachments.value,onPreview:L[11]||(L[11]=y=>R("previewAttachment",y)),onRemoveAttachment:o(a).attachments.remove},null,8,["attachments","onRemoveAttachment"])]),picker:Z(()=>[B(Mp,{open:o(l).commandPickerOpen,commands:o(l).pickerKind==="runner"?o(l).visibleCommands:[],skills:o(l).pickerKind==="runner"?o(l).visibleSkills:[],"quick-prompts":o(l).pickerKind==="quick-prompt"?o(l).visibleQuickPrompts:[],"quick-prompts-loading":e.controller.status.promptsLoading.value,"quick-prompts-failed":e.controller.status.promptsFailed.value,"picker-kind":o(l).pickerKind,"skills-enabled":!0,"skills-loading":e.controller.status.skillsLoading.value,"skills-failed":e.controller.status.skillsFailed.value,"active-index":o(l).activeCommandIndex,loading:e.controller.runnerProfilesLoading.value,failed:e.controller.runnerProfilesFailed.value,onActivate:L[12]||(L[12]=y=>o(l).activeCommandIndex=y),onSelect:e.controller.selectCommand,onSelectSkill:e.controller.selectSkill,onSelectQuickPrompt:e.controller.selectQuickPrompt},null,8,["open","commands","skills","quick-prompts","quick-prompts-loading","quick-prompts-failed","picker-kind","skills-loading","skills-failed","active-index","loading","failed","onSelect","onSelectSkill","onSelectQuickPrompt"]),B(xp,{open:o(u).open,candidates:o(u).candidates,"active-index":o(u).activeIndex,loading:o(u).loading,query:o(u).match?.query??"","session-enabled":!0,"session-ready":o(u).sessionAvailable(),"file-ready":e.controller.filesReady.value,"session-only":o(u).match?.sessionOnly??!1,"session-loading":o(u).sessionLoading,"file-error":o(u).fileError,"session-error":o(u).sessionError,"file-more":o(u).fileMore,"session-more":o(u).sessionMore,onActivate:L[13]||(L[13]=y=>o(u).activeIndex=y),onSelect:o(v).selectReference},null,8,["open","candidates","active-index","loading","query","session-ready","file-ready","session-only","session-loading","file-error","session-error","file-more","session-more","onSelect"])]),_:1},8,["input","placeholder","working","working-label","working-busy","elapsed-label","connection-busy","connection-label","readonly","drop-target","mobile-viewport","command-states","loading","skill-tokens","file-references","completion","completion-blocked","onSubmit","onInput","onKeydown","onCursor","onPaste","onDragenter","onDragleave","onDrop","onCloseCommand","onRemoveSkill","onRemoveReference"])],64)):ve("",!0)],8,dT))}}),uT=["aria-label","aria-valuemin","aria-valuemax","aria-valuenow"],vT=at({__name:"PanelResizeHandle",props:{target:{},label:{},min:{},max:{},direction:{},width:{},gestureKey:{type:[String,Number,Boolean]}},emits:["resize"],setup(e,{emit:t}){const n=e,a=t,r=x(!1),s=x(),i=x();let l;function v(g){const R=Math.max(n.min,Math.min(n.max,g));i.value=R,a("resize",R)}function u(){if(n.target!==void 0){for(const g of n.target.getAnimations())g instanceof CSSTransition&&g.transitionProperty==="width"&&g.finish();return n.target.getBoundingClientRect().width}}function d(g){if(g.button!==0||l!==void 0)return;const R=u();if(R===void 0)return;g.preventDefault(),g.currentTarget.setPointerCapture(g.pointerId),l={pointerId:g.pointerId,x:g.clientX,width:R},r.value=!0}function w(g){l?.pointerId===g.pointerId&&v(l.width+n.direction*(g.clientX-l.x))}function k(g){if(l?.pointerId!==g.pointerId)return;l=void 0,r.value=!1;const R=g.currentTarget;R.hasPointerCapture(g.pointerId)&&R.releasePointerCapture(g.pointerId)}function T(){const g=l?.pointerId;l=void 0,r.value=!1,g!==void 0&&s.value?.hasPointerCapture(g)&&s.value.releasePointerCapture(g)}function p(g){const R=u();if(R===void 0)return;let b;if(g.key==="Home")b=n.min;else if(g.key==="End")b=n.max;else if(g.key==="ArrowLeft")b=R-n.direction*10;else if(g.key==="ArrowRight")b=R+n.direction*10;else return;g.preventDefault(),v(b)}return He(()=>n.gestureKey,T,{flush:"sync"}),mt(T),(g,R)=>{const b=St("tooltip");return Le((f(),O("div",{ref_key:"handle",ref:s,class:Ke(["panel-resize-handle",{dragging:r.value}]),role:"separator",tabindex:"0","aria-orientation":"vertical","aria-label":e.label,"aria-valuemin":e.min,"aria-valuemax":e.max,"aria-valuenow":e.width??i.value,onFocus:R[0]||(R[0]=C=>i.value=e.target?.getBoundingClientRect().width),onKeydown:p,onPointerdown:d,onPointermove:w,onPointerup:k,onPointercancel:k,onLostpointercapture:k},null,42,uT)),[[b,e.label]])}}}),Ec=dt(vT,[["__scopeId","data-v-5bff4995"]]),fT={class:"workbench-aside-header"},pT=["aria-label"],gT={class:"workbench-aside-label"},mT={key:0,class:"workbench-aside-activity session-activity managed_active","aria-hidden":"true"},hT={class:"workbench-aside-content"},yT=["id","aria-labelledby"],wT=["id","aria-labelledby"],kT=at({__name:"WorkbenchAside",props:{workspace:{},state:{},tools:{},browserLabel:{},sessions:{},tabLabel:{},closeLabel:{type:Function},resizeLabel:{},width:{},minWidth:{},maxWidth:{},mode:{},mobile:{type:Boolean},closeSurfaceLabel:{}},emits:["selectTool","selectBrowser","closeBrowser","selectSession","closeSession","resize","closeSurface"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=`aside-${wl()}`,i=j(()=>[...n.tools.filter(d=>n.state.tools.includes(d.id)).map(d=>({id:`tool:${d.id}`,label:d.label,active:!1,target:{kind:"tool",id:d.id}})),...n.state.sessions.map((d,w)=>{const k=n.sessions.find(p=>p.sessionId===d),T=k?.title??d;return{id:`session:${d}`,label:T,closeLabel:n.closeLabel(T),separatorBefore:w===0&&n.tools.some(p=>n.state.tools.includes(p.id)),target:{kind:"session",sessionId:d},active:k?.active??!1}}),...n.state.htmlPath!==void 0&&n.state.tools.includes("files")?[{id:"browser",label:n.browserLabel,closeLabel:n.closeLabel(n.browserLabel),separatorBefore:n.state.sessions.length===0&&n.state.tools.length>0,target:{kind:"browser"},active:!1}]:[]]),l=j(()=>{const d=n.state.active;return d?.kind==="tool"?`tool:${d.id}`:d?.kind==="browser"?"browser":d?.kind==="session"?`session:${d.sessionId}`:void 0});function v(d){const w=i.value.find(k=>k.id===d)?.target;w?.kind==="tool"?a("selectTool",{...n.workspace,id:w.id}):w?.kind==="browser"?a("selectBrowser",n.workspace):w?.kind==="session"&&a("selectSession",{...n.workspace,sessionId:w.sessionId})}function u(d){const w=i.value.find(k=>k.id===d)?.target;w?.kind==="browser"?a("closeBrowser",n.workspace):w?.kind==="session"&&a("closeSession",{...n.workspace,sessionId:w.sessionId})}return(d,w)=>(f(),O("aside",{ref_key:"element",ref:r,class:"workbench-aside",style:It({width:`${e.width}px`})},[B(Ec,{class:"workbench-aside-resize",target:r.value,label:e.resizeLabel,min:e.minWidth,max:e.maxWidth,width:e.width,direction:-1,"gesture-key":e.mode,onResize:w[0]||(w[0]=k=>a("resize",k))},null,8,["target","label","min","max","width","gesture-key"]),K("header",fT,[e.mobile?(f(),O("button",{key:0,type:"button",class:"workbench-aside-back","aria-label":e.closeSurfaceLabel,onClick:w[1]||(w[1]=k=>a("closeSurface"))},[B(De,{name:"chevron-left"})],8,pT)):ve("",!0),B(Bl,{class:"workbench-aside-tabs",size:"small",items:i.value,"id-prefix":s,"active-id":l.value,label:e.tabLabel,onActivate:v,onClose:u},{label:Z(({item:k})=>[K("span",gT,W(k.label),1),i.value.find(T=>T.id===k.id)?.active?(f(),O("span",mT,[...w[2]||(w[2]=[K("i",null,null,-1)])])):ve("",!0)]),_:1},8,["items","active-id","label"])]),K("div",hT,[(f(!0),O(Ve,null,Je(i.value.filter(k=>k.target.kind==="tool"&&k.target.id!=="terminal"),k=>Le((f(),O("div",{id:o(fn)(s,k.id).panel,key:k.id,class:"workbench-aside-panel",role:"tabpanel","aria-labelledby":o(fn)(s,k.id).tab},[Ct(d.$slots,"tool",{tool:k.target.kind==="tool"?k.target.id:void 0,visible:k.id===l.value},void 0,!0)],8,yT)),[[At,k.id===l.value]])),128)),(f(!0),O(Ve,null,Je(i.value.filter(k=>k.target.kind!=="tool"||k.target.id==="terminal"),k=>Le((f(),O("div",{id:o(fn)(s,k.id).panel,key:k.id,class:"workbench-aside-panel",role:"tabpanel","aria-labelledby":o(fn)(s,k.id).tab},[k.target.kind==="browser"&&k.id===l.value?Ct(d.$slots,"browser",{},void 0,!0,0):ve("",!0),k.target.kind==="tool"&&k.target.id==="terminal"?Ct(d.$slots,"terminal",{visible:k.id===l.value},void 0,!0,1):ve("",!0),k.target.kind==="session"&&k.id===l.value?Ct(d.$slots,"session",{target:{...e.workspace,sessionId:k.target.sessionId}},void 0,!0,2):ve("",!0)],8,wT)),[[At,k.id===l.value]])),128))])],4))}}),bT=dt(kT,[["__scopeId","data-v-3083b526"]]),IT=["aria-busy"],ST=["aria-label"],CT={key:1,role:"status"},TT=["aria-current","aria-label"],ET={class:"session-tree-title"},RT=["datetime"],AT={key:0,class:"session-tree-location"},NT={key:1,class:"session-tree-location"},DT={key:2,class:"session-tree-location"},PT=["aria-label"],OT={key:3},LT={key:4,class:"session-tree-list"},WT={key:0,class:"session-tree-origin","aria-hidden":"true"},MT={key:0,class:"session-tree-origin-stem is-incoming"},xT={key:1,class:"session-tree-origin-stem"},$T=["aria-current","aria-label","onClick"],FT={class:"session-tree-title"},UT={key:0,class:"session-tree-location"},VT={key:1,class:"session-tree-location"},qT={key:2,class:"session-tree-location"},HT=["datetime"],BT=["aria-label"],GT={key:5,class:"session-tree-truncated"},zT=at({__name:"WorkspaceSessionTree",props:{sessionId:{},tree:{},status:{},mainSessionId:{},asideSessionIds:{},activeAsideId:{}},emits:["open","retry","menu"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=x(),i=x([]);function l(){s.value?.handleClose();for(const k of i.value)k.handleClose()}t({closeMenu:l});const v=j(()=>{const k=a.tree;if(!k)return[];const T=new Set(k.nodes.map(b=>b.id)),p=new Map;for(const b of k.nodes){const C=b.parentSessionId===k.anchorSessionId||!T.has(b.parentSessionId??"")?null:b.parentSessionId,I=p.get(C)??[];I.push(b),p.set(C,I)}const g=[];function R(b,C,I=!1){const S=p.get(b)??[];for(const[m,A]of S.entries()){const L=m<S.length-1,y=b===null?[]:[...C,L];I&&y.length>0&&(y[0]=!0),g.push({node:A,branches:y,hasChildren:p.has(A.id),hasPreviousSibling:m>0,hasNextSibling:L}),R(A.id,y,b===null?L:I)}}return R(null,[]),g});function u(k){return Bi(k.lastActivityAt)?new Date(k.lastActivityAt).toISOString():void 0}function d(k){return Bi(k.lastActivityAt)?c("presentation.lastActivity",{value:Gt(k.lastActivityAt)}):void 0}function w(k){k.preventDefault(),k.currentTarget.querySelector(".session-tree-actions")?.click()}return(k,T)=>{const p=bt,g=ln,R=sn,b=rn,C=St("tooltip");return f(),O("div",{class:"session-tree","aria-busy":e.tree===void 0&&e.status!=="failed"},[e.tree===void 0&&e.status!=="failed"?(f(),O("div",{key:0,class:"session-tree-loading",role:"status","aria-label":o(c)("common.loading")},[B(gn,{class:"read-loading-indicator"})],8,ST)):ve("",!0),e.status==="failed"||e.status==="ready"&&e.tree===null?(f(),O("p",CT,[ke(W(o(c)("sessionGroups.treeUnavailable"))+" ",1),B(p,{link:"",onClick:T[0]||(T[0]=I=>r("retry"))},{default:Z(()=>[ke(W(o(c)("sessionGroups.retry")),1)]),_:1})])):ve("",!0),e.tree?.parent?(f(),O("div",{key:2,class:"session-tree-parent",onContextmenu:w},[K("span",null,W(o(c)("sessionGroups.parent")),1),K("div",{class:Ke(["session-tree-item",{"is-current":e.tree.parent.id===e.mainSessionId}])},[K("button",{type:"button",class:"session-tree-node","aria-current":e.tree.parent.id===e.mainSessionId?"true":void 0,"aria-label":`${e.tree.parent.title}, ${o(c)(`sessionGroups.status${e.tree.parent.status}`)}`,onClick:T[1]||(T[1]=I=>r("open",e.tree.parent.id,"aside"))},[Le((f(),O("span",ET,[ke(W(e.tree.parent.title),1)])),[[C,e.tree.parent.title]]),e.tree.parent.status!=="IDLE"?(f(),O("span",{key:0,class:Ke(["session-activity",e.tree.parent.status==="RUNNING"?"managed_active":"tree-sleeping"]),"aria-hidden":"true"},[...T[6]||(T[6]=[K("i",null,null,-1)])],2)):ve("",!0),Le((f(),O("time",{class:"session-tree-time",datetime:u(e.tree.parent)},[ke(W(o(er)(e.tree.parent.lastActivityAt)),1)],8,RT)),[[C,d(e.tree.parent)]])],8,TT),e.tree.parent.id===e.mainSessionId?(f(),O("span",AT,W(o(c)("sessionGroups.inMain")),1)):e.tree.parent.id===e.activeAsideId?(f(),O("span",NT,W(o(c)("sessionGroups.inActiveAside")),1)):e.asideSessionIds.includes(e.tree.parent.id)?(f(),O("span",DT,W(o(c)("sessionGroups.inAside")),1)):ve("",!0),B(b,{ref_key:"parentMenu",ref:s,trigger:"click","popper-class":"session-tree-menu",onVisibleChange:T[2]||(T[2]=I=>r("menu",I)),onCommand:T[3]||(T[3]=I=>r("open",e.tree.parent.id,I))},{dropdown:Z(()=>[B(R,null,{default:Z(()=>[B(g,{command:"aside"},{default:Z(()=>[B(De,{name:"split"}),ke(W(o(c)("sessionGroups.openAside")),1)]),_:1}),B(g,{command:"main"},{default:Z(()=>[B(De,{name:"conversation"}),ke(W(o(c)("sessionGroups.openMain")),1)]),_:1})]),_:1})]),default:Z(()=>[Le((f(),O("button",{type:"button",class:"icon-button utility-control session-tree-actions","aria-label":o(c)("sessionGroups.actions")},[B(De,{name:"more"})],8,PT)),[[C,o(c)("sessionGroups.actions")]])]),_:1},512)],2)],32)):ve("",!0),e.tree&&v.value.length===0?(f(),O("p",OT,W(o(c)("sessionGroups.noDescendants")),1)):ve("",!0),e.tree&&v.value.length>0?(f(),O("ul",LT,[(f(!0),O(Ve,null,Je(v.value,I=>(f(),O("li",{key:I.node.id,class:"session-tree-row",onContextmenu:w},[I.branches.length===0?(f(),O("span",WT,[I.hasPreviousSibling?(f(),O("span",MT)):ve("",!0),I.hasNextSibling||I.hasChildren?(f(),O("span",xT)):ve("",!0)])):ve("",!0),(f(!0),O(Ve,null,Je(I.branches,(S,m)=>(f(),O("span",{key:m,"aria-hidden":"true",class:Ke(["session-tree-branch",{"is-continuing":S,"is-leaf":m===I.branches.length-1}]),style:It({insetInlineStart:`${m*1.25+.75}rem`})},null,6))),128)),I.branches.length>0&&I.hasChildren?(f(),O("span",{key:1,class:"session-tree-child-stem","aria-hidden":"true",style:It({insetInlineStart:`${I.branches.length*1.25+.75}rem`})},null,4)):ve("",!0),K("span",{class:"session-tree-marker","aria-hidden":"true",style:It({insetInlineStart:`${I.branches.length*1.25+.75}rem`})},null,4),K("div",{class:Ke(["session-tree-item",{"is-current":I.node.id===e.mainSessionId}]),style:It({marginInlineStart:`${(I.branches.length+1)*1.25}rem`})},[K("button",{type:"button",class:"session-tree-node","aria-current":I.node.id===e.mainSessionId?"true":void 0,"aria-label":`${I.node.title}, ${o(c)(`sessionGroups.status${I.node.status}`)}`,onClick:S=>r("open",I.node.id,"aside")},[Le((f(),O("span",FT,[ke(W(I.node.title),1)])),[[C,I.node.title]]),I.node.id===e.mainSessionId?(f(),O("span",UT,W(o(c)("sessionGroups.inMain")),1)):I.node.id===e.activeAsideId?(f(),O("span",VT,W(o(c)("sessionGroups.inActiveAside")),1)):e.asideSessionIds.includes(I.node.id)?(f(),O("span",qT,W(o(c)("sessionGroups.inAside")),1)):ve("",!0),I.node.status!=="IDLE"?(f(),O("span",{key:3,class:Ke(["session-activity",I.node.status==="RUNNING"?"managed_active":"tree-sleeping"]),"aria-hidden":"true"},[...T[7]||(T[7]=[K("i",null,null,-1)])],2)):ve("",!0),Le((f(),O("time",{class:"session-tree-time",datetime:u(I.node)},[ke(W(o(er)(I.node.lastActivityAt)),1)],8,HT)),[[C,d(I.node)]])],8,$T),B(b,{ref_for:!0,ref_key:"nodeMenus",ref:i,trigger:"click","popper-class":"session-tree-menu",onVisibleChange:T[5]||(T[5]=S=>r("menu",S)),onCommand:S=>r("open",I.node.id,S)},{dropdown:Z(()=>[B(R,null,{default:Z(()=>[B(g,{command:"aside"},{default:Z(()=>[B(De,{name:"split"}),ke(W(o(c)("sessionGroups.openAside")),1)]),_:1}),B(g,{command:"main"},{default:Z(()=>[B(De,{name:"conversation"}),ke(W(o(c)("sessionGroups.openMain")),1)]),_:1})]),_:1})]),default:Z(()=>[Le((f(),O("button",{type:"button",class:"icon-button utility-control session-tree-actions","aria-label":o(c)("sessionGroups.actions"),onClick:T[4]||(T[4]=rt(()=>{},["stop"]))},[B(De,{name:"more"})],8,BT)),[[C,o(c)("sessionGroups.actions")]])]),_:1},8,["onCommand"])],6)],32))),128))])):ve("",!0),e.tree?.truncated?(f(),O("p",GT,W(o(c)("sessionGroups.treeTruncated")),1)):ve("",!0)],8,IT)}}}),KT=dt(zT,[["__scopeId","data-v-2c6676ba"]]),jT=["aria-label"],_T={class:"session-tree-header"},YT={class:"session-tree-scroll"},QT=at({__name:"WorkspaceSessionTreePopover",props:{anchor:{},sessionId:{},title:{},tree:{},status:{},mainSessionId:{},asideSessionIds:{},activeAsideId:{}},emits:["close","open","retry"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=x(),i=x(!1);let l;const v=Cl({isOpen:()=>!0,close:()=>a("close",!0)});function u(d){const w=d.composedPath();w.includes(n.anchor)||r.value&&w.includes(r.value)||w.some(k=>k instanceof Element&&k.classList.contains("session-tree-menu"))||a("close",!1)}return Dt(()=>{document.addEventListener("pointerdown",u,!0),v.start(),l=xt.register({command:"sessionTree.dismiss",scope:"overlay",priority:140,keys:[{key:"Escape"}],when:()=>!0,execute:()=>(i.value?s.value?.closeMenu():a("close",!0),"HANDLED")})}),mt(()=>{document.removeEventListener("pointerdown",u,!0),v.dispose(),l?.()}),(d,w)=>{const k=Nr;return f(),we(k,{visible:!0,"virtual-ref":e.anchor,"virtual-triggering":"",placement:"bottom-start","show-arrow":!1,"popper-class":"session-tree-popover",width:"min(480px, calc(100vw - 24px))","popper-options":{modifiers:[{name:"preventOverflow",options:{padding:12,tether:!1}}]}},{default:Z(()=>[K("section",{ref_key:"root",ref:r,class:"session-tree-popup",role:"dialog","aria-label":e.title},[K("header",_T,W(e.title),1),K("div",YT,[B(KT,{ref_key:"treeComponent",ref:s,"session-id":e.sessionId,tree:e.tree,status:e.status,"main-session-id":e.mainSessionId,"aside-session-ids":e.asideSessionIds,"active-aside-id":e.activeAsideId,onOpen:w[0]||(w[0]=(T,p)=>a("open",T,p)),onMenu:w[1]||(w[1]=T=>i.value=T),onRetry:w[2]||(w[2]=T=>a("retry"))},null,8,["session-id","tree","status","main-session-id","aside-session-ids","active-aside-id"])])],8,jT)]),_:1},8,["virtual-ref"])}}}),JT=dt(QT,[["__scopeId","data-v-983d1c4f"]]),XT={class:"session-layout"},ZT={key:0,class:"welcome-panel compact-welcome"},eE={class:"workspace-selection-hint"},tE={key:2,class:"workspace-offline-placeholder",role:"status"},nE={class:"workspace-offline-message"},aE={key:3,class:"welcome-panel compact-welcome workspace-selection-panel workspace-recovery-panel"},oE=["aria-label"],rE={key:1,class:"workspace-recovery-state"},iE={role:"status"},sE=["aria-hidden"],lE=["role"],cE=["role"],dE=["inert"],uE=at({__name:"WorkbenchSurface",props:{page:{}},setup(e){const n=kr({loader:()=>br(()=>import("./SettingsContent-BQYXFW0-.js"),__vite__mapDeps([71,14,1,2,7,8,9,10,11,15,33,28,29,30,34,35,36,37,64,65,25,23,24,26,17,18,6,12,13,27,20,3,4,31,32,38,39,40,41,5,16,19,21,22,44,45,53,54,55,56,63,66,49,50,67,68,69,51,52,57,58,42,43,46,47,48,59,60,61,62,72])),loadingComponent:{render:()=>kl(bl,{loading:!0,variant:"page","aria-label":c("common.loading")})},delay:0}),a=e,r=gl(),s=j(()=>r.resolve(a.page.application.managementSection,a.page.identity.admin)),i=x(!1),l=x(),v=x(),u=x(0);He(l,(V,N,h)=>{if(V==null)return;const F=()=>{const J=V.querySelector(".conversation-sidebar")?.getBoundingClientRect().width??0;u.value=Math.max(0,V.clientWidth-(a.page.layout.mobileViewport?0:J))},z=new ResizeObserver(F);z.observe(V);const fe=V.querySelector(".conversation-sidebar");fe&&z.observe(fe),F(),h(()=>z.disconnect())},{flush:"post"});const d=j(()=>a.page.aside.asideViewMode(a.page.aside.asideState?.active)),w=j(()=>a.page.resources.nodeManifestLoading&&a.page.resources.nodeManifest===void 0),k=j(()=>a.page.layout.mobileViewport?u.value:a.page.aside.asideWidth(d.value,u.value,360)),T=j(()=>a.page.resources.workspaceHost?.connected===!1?"failed":a.page.application.workspaceWatchTopicStatus.sessionNavigation),p=j(()=>a.page.application.view==="nodes"&&a.page.selection.workspaceTarget!==void 0&&a.page.aside.asideState!==void 0&&k.value!==void 0&&k.value>0&&(!a.page.layout.mobileViewport||a.page.layout.mobileWorkspaceSurface==="inspector"||a.page.layout.mobileWorkspaceSurface==="terminal"));He(p,V=>a.page.aside.setAsideSurfaceVisible(V),{immediate:!0}),mt(()=>a.page.aside.setAsideSurfaceVisible(!1));const g=j(()=>p.value&&a.page.aside.asideState?.active?.kind==="tool"&&a.page.aside.asideState.active.id==="terminal");function R(V){V==="terminal"?a.page.aside.toggleAsideTerminal():a.page.layout.openMobileWorkspaceSurface(V)}const b=j(()=>[{id:"files",label:c("generated.workspaceInspector.files3")},{id:"search",label:c("generated.workspaceInspector.search")},{id:"changes",label:c("generated.workspaceInspector.gitChanges")},{id:"history",label:c("generated.workspaceInspector.gitHistory")},{id:"terminal",label:c("generated.terminalDock.workspaceTerminal")}]),C=j(()=>(a.page.aside.asideState?.sessions??[]).map(V=>{const N=a.page.aside.asideSessionMetadata.find(h=>h.id===V);return{sessionId:V,title:N?.title??V,active:N?.activity==="MANAGED_ACTIVE"}}));function I(V){const N=a.page.aside.asideState?.active;return!p.value||N?.kind!=="tool"||N.id!==V||V==="terminal"?null:V}const S=j(()=>p.value&&a.page.files.filesReady&&I("files")==="files"),m=j(()=>{const V=a.page.aside.asideState?.active;return p.value&&a.page.files.filesReady&&a.page.files.contentSearchReady&&V?.kind==="tool"&&V.id==="search"});Dt(()=>a.page.files.mountSurface()),mt(()=>a.page.files.unmountSurface());const A=x(),L=x();function y(V=!1){const N=L.value;L.value=void 0,a.page.sessionList.setSessionTreeAnchor(void 0),V&&N&&ut(()=>{N.anchor.isConnected&&N.anchor.focus()})}function D(V,N,h){const F=a.page.selection.workspaceTarget;if(!(!F||!a.page.aside.asideSupported)){if(L.value?.anchor===N){y(!0);return}L.value={...F,sessionId:V,anchor:N,title:h},a.page.sessionList.setSessionTreeAnchor(V)}}function E(V){const N=a.page.aside.openAsideSession(V);return N&&a.page.layout.mobileViewport&&a.page.layout.openMobileWorkspaceSurface("inspector"),N}function H(V,N){const h=L.value,F=a.page.selection.workspaceTarget;if(!h||!F||h.nodeId!==F.nodeId||h.workspaceId!==F.workspaceId)return;const z={nodeId:h.nodeId,workspaceId:h.workspaceId,sessionId:V};N==="aside"?E(z)&&y(!1):(a.page.selection.openSessionGroupTarget(z),y(!1))}He(()=>[a.page.selection.workspaceTarget?.nodeId,a.page.selection.workspaceTarget?.workspaceId,a.page.application.view,a.page.aside.asideSupported],()=>{const V=L.value;V&&(a.page.application.view!=="nodes"||!a.page.aside.asideSupported||a.page.selection.workspaceTarget?.nodeId!==V.nodeId||a.page.selection.workspaceTarget.workspaceId!==V.workspaceId)&&y()}),mt(()=>{L.value&&y()});const X=j(()=>{const V=a.page.hosted.hostedConversationWorkspace;return V.snapshot.value?.conversation??V.conversations.value.find(N=>N.nodeId===V.selectedNodeId.value&&N.id===V.selectedConversationId.value)});function Y(){const V=a.page.selection.workspaceTarget?.nodeId,N=a.page.resources.selectedWorkspace;V===void 0||N===void 0||(A.value={nodeId:V,workspace:N},i.value=!0)}async function U(V){const N=A.value;if(N!==void 0)return a.page.sessionList.cleanupWorkspaceSessions(N.nodeId,N.workspace,V)}function Q(V){i.value=V,V||(A.value=void 0)}const $=Rr({isOpen:()=>a.page.layout.mobileViewport&&a.page.layout.mobileWorkspaceSurface!=="conversation",regions:()=>[document.querySelector(a.page.layout.mobileWorkspaceSurface==="sessions"?".workspace-grid.mobile-surface-sessions .conversation-sidebar":".workspace-grid .workspace-aside"),document.querySelector(".activity-rail")],close:()=>a.page.layout.closeMobileWorkspaceSurface(),terminal:()=>g.value});return mt($.dispose),(V,N)=>{const h=Xt,F=bt,z=Ar;return f(),O("section",{class:Ke(["workbench",{settings:e.page.application.view!=="nodes"&&e.page.application.view!=="conversations",standalone:e.page.application.view==="conversations",compact:e.page.layout.sidebarCollapsed}])},[e.page.registration.workspaceRegistrationNodeId!==void 0?(f(),we(h,{key:0,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),"model-value":!0,title:o(c)("generated.workbenchSurface.registerWorkspace"),width:"min(980px, calc(100vw - 32px))","destroy-on-close":"","onUpdate:modelValue":N[2]||(N[2]=fe=>{fe||e.page.registration.closeWorkspaceRegistration()}),"close-icon":o(qe)("close")},{default:Z(()=>[Ct(V.$slots,"workspace-registration",{},()=>[B(kc,{modelValue:e.page.registration.openWorkspaceTools,"onUpdate:modelValue":N[0]||(N[0]=fe=>e.page.registration.openWorkspaceTools=fe),"preserve-git-config":e.page.registration.workspacePreserveGitConfig,"onUpdate:preserveGitConfig":N[1]||(N[1]=fe=>e.page.registration.workspacePreserveGitConfig=fe),directory:e.page.registration.workspaceDirectory,"selected-path":e.page.resources.workspacePath,"pending-directory-name":e.page.registration.pendingWorkspaceDirectoryName,"loading-directory":e.page.registration.loadingWorkspaceDirectory,loading:e.page.registration.registrationLoading,"node-ready":e.page.registration.workspaceRegistrationReady,"selected-path-valid":e.page.registration.selectedWorkspaceDirectorySelectable,onNavigate:e.page.registration.loadWorkspaceDirectories,onSelect:e.page.registration.selectWorkspaceDirectory,onSelectPending:e.page.registration.selectPendingWorkspaceDirectory,onDiscardPending:e.page.registration.discardPendingWorkspaceDirectory,onRegister:e.page.registration.registerWorkspace},null,8,["modelValue","preserve-git-config","directory","selected-path","pending-directory-name","loading-directory","loading","node-ready","selected-path-valid","onNavigate","onSelect","onSelectPending","onDiscardPending","onRegister"])],!0)]),_:3},8,["onVnodeMounted","onVnodeBeforeUnmount","title","close-icon"])):ve("",!0),B(TS,{"mobile-viewport":e.page.layout.mobileViewport,view:e.page.application.view,"sidebar-collapsed":e.page.layout.sidebarCollapsed,"settings-section":e.page.application.settingsSection,"management-section":e.page.application.managementSection,"settings-items":e.page.application.settingsItems,"management-items":e.page.application.managementItems,"conversation-title":X.value===void 0?o(c)("hostedConversations.temporaryTitle"):o(Tn)(X.value),onToggleSidebar:N[3]||(N[3]=fe=>e.page.layout.sidebarCollapsed=!e.page.layout.sidebarCollapsed)},yl({_:2},[e.page.application.view==="nodes"&&!e.page.layout.mobileViewport?{name:"workspace-tabs",fn:Z(()=>[B(el,{placement:"header",tabs:e.page.selection.workspaceTabs,"active-tab-id":e.page.selection.activeWorkspaceTabId,"empty-label":e.page.resources.workspaceHost===void 0?o(c)("workspaceTabs.newTab"):e.page.resources.nodeLabel(e.page.resources.workspaceHost),"empty-context":o(c)("navigation.selectWorkspace"),"node-label":e.page.selection.workspaceTabNodeLabel,"direct-available":e.page.resources.workspaceDirectAvailable,"direct-description":e.page.resources.workspaceDirectDescription,"has-active-run":e.page.notifications.hasActiveWorkspaceRun,"has-unread":e.page.notifications.hasUnreadWorkspace,onActivate:e.page.selection.activateWorkspaceTab,onClose:e.page.selection.closeWorkspaceTab,onReorder:e.page.selection.moveWorkspaceTab,onPin:e.page.selection.pinWorkspaceTab},null,8,["tabs","active-tab-id","empty-label","empty-context","node-label","direct-available","direct-description","has-active-run","has-unread","onActivate","onClose","onReorder","onPin"])]),key:"0"}:void 0]),1032,["mobile-viewport","view","sidebar-collapsed","settings-section","management-section","settings-items","management-items","conversation-title"]),Le(K("section",XT,[e.page.application.view==="nodes"&&e.page.selection.workspaceTarget===void 0?(f(),O("section",ZT,[K("h1",null,W(o(c)("generated.workbenchSurface.selectAWorkspace")),1),K("p",null,W(o(c)("generated.workbenchSurface.selectANodeInTheResourceExplorer")),1),K("p",eE,[ke(W(o(c)("generated.workbenchSurface.noNodeConnectedYetCreateARegistration"))+" ",1),B(F,{link:"",type:"primary",onClick:e.page.registration.openNodeRegistration},{default:Z(()=>[ke(W(o(c)("generated.workbenchSurface.openNodeManagement")),1)]),_:1},8,["onClick"])])])):e.page.application.view==="nodes"&&e.page.selection.workspaceTarget!==void 0?(f(),O(Ve,{key:1},[e.page.layout.mobileViewport?(f(),we(el,{key:0,placement:"body",tabs:e.page.selection.workspaceTabs,"active-tab-id":e.page.selection.activeWorkspaceTabId,"node-label":e.page.selection.workspaceTabNodeLabel,"direct-available":e.page.resources.workspaceDirectAvailable,"direct-description":e.page.resources.workspaceDirectDescription,"has-active-run":e.page.notifications.hasActiveWorkspaceRun,"has-unread":e.page.notifications.hasUnreadWorkspace,onActivate:e.page.selection.activateWorkspaceTab,onClose:e.page.selection.closeWorkspaceTab,onReorder:e.page.selection.moveWorkspaceTab,onPin:e.page.selection.pinWorkspaceTab},null,8,["tabs","active-tab-id","node-label","direct-available","direct-description","has-active-run","has-unread","onActivate","onClose","onReorder","onPin"])):ve("",!0),e.page.resources.workspaceHost?.connected!==!1&&!e.page.resources.nodeReady&&e.page.resources.selectedNodeStatus!==void 0?(f(),we(z,{key:1,class:"readonly-banner",closable:!1,"show-icon":"",title:e.page.resources.selectedNodeStatus??o(c)("generated.workbenchSurface.nodeWorkbenchCapabilitiesAreUnavailable"),type:"error"},{icon:Z(()=>[B(De,{name:"error"})]),_:1},8,["title"])):ve("",!0),e.page.resources.workspaceHost?.connected===!1?(f(),O("section",tE,[K("div",nE,[B(De,{name:"connection-off",class:"workspace-offline-icon","aria-hidden":"true"}),K("p",null,W(o(c)("generated.workbenchSurface.offlineWorkspace")),1)])])):ve("",!0),e.page.resources.workspaceHost?.connected!==!1&&e.page.selection.workspaceTarget!==void 0&&e.page.resources.selectedWorkspace===void 0?(f(),O("section",aE,[e.page.selection.workspaceSelectionLoading?(f(),O("div",{key:0,class:"page-loading-state",role:"status","aria-label":o(c)("common.loading")},[B(gn)],8,oE)):(f(),O("div",rE,[K("p",iE,W(o(c)("generated.workbenchSurface.workspaceMetadataUnavailable")),1),B(F,{link:"",size:"small",onClick:e.page.selection.retryWorkspaceSelection},{default:Z(()=>[ke(W(o(c)("common.loadFailedRetry")),1)]),_:1},8,["onClick"])]))])):e.page.resources.selectedWorkspace!==void 0?Le((f(),O("div",{key:4,ref_key:"workspaceGrid",ref:l,class:Ke(["workspace-grid",`mobile-surface-${e.page.layout.mobileWorkspaceSurface}`]),style:It({"--aside-width":`${k.value??0}px`})},[B(h0,{"aside-supported":e.page.aside.asideSupported,onOpenAside:E,"session-group":e.page.sessionList.workspaceSessionGroup,onSelectGroup:e.page.sessionList.selectWorkspaceSessionGroup,onOpenTree:D,sessions:e.page.sessionList.visibleWorkspaceSessions,"selected-session-id":e.page.selection.selectedSessionId,"mobile-viewport":e.page.layout.mobileViewport,"can-load-more":e.page.sessionList.canLoadMoreWorkspaceSessions,"loading-more":e.page.sessionList.loadingMoreWorkspaceSessions,"load-more-error":e.page.sessionList.loadMoreWorkspaceSessionsError,active:(!e.page.layout.mobileViewport||e.page.layout.mobileWorkspaceSurface==="sessions")&&e.page.resources.workspaceHost?.connected!==!1,"watch-status":e.page.application.workspaceWatchTopicStatus.sessions,"node-ready":e.page.resources.nodeReady,loading:e.page.sessionList.mutationLoading,"workspace-kind":e.page.resources.selectedWorkspace?.kind,"workspace-kind-label":e.page.resources.workspaceKindLabel(e.page.resources.selectedWorkspace),"workspace-branch":e.page.resources.workspaceBranchLabel(e.page.resources.selectedWorkspace),title:e.page.sessionList.sessionTitle,"runner-icon":e.page.application.runnerBrandIcon,activity:e.page.sessionList.sessionActivity,"can-delete-session":e.page.sessionList.canDeleteSession,"activity-label":e.page.sessionList.sessionActivityLabel,"activity-date-time":e.page.sessionList.sessionActivityDateTime,"activity-title":e.page.sessionList.sessionActivityTitle,"relative-activity":e.page.sessionList.sessionRelativeActivity,"node-id":e.page.selection.workspaceTarget?.nodeId,"workspace-id":e.page.resources.selectedWorkspace.id,"skill-supported":!0,"mcp-supported":!0,"cleanup-sessions-supported":e.page.sessionList.cleanupSessionsEnabled,"search-supported":e.page.sessionList.workspaceSessionSearchEnabled,"search-query":e.page.sessionList.workspaceSessionSearchQuery,searching:e.page.sessionList.searchingWorkspaceSessions,refreshing:e.page.sessionList.refreshingWorkspaceSessions,"workspace-manageable":e.page.resources.selectedWorkspace.manageable!==!1,request:e.page.identity.request,"has-unread":fe=>e.page.notifications.hasUnreadSession(e.page.selection.workspaceTarget?.nodeId,e.page.resources.selectedWorkspace.id,fe),onCreate:e.page.selection.openNewSessionComposer,onOpen:e.page.selection.openSessionFromList,onRename:e.page.sessionList.renameSession,onPin:e.page.sessionList.setSessionPinned,onMovePin:e.page.sessionList.movePinnedSession,onMovePinTo:e.page.sessionList.movePinnedSessionTo,onDeleteSession:e.page.sessionList.deleteSession,onCleanupSessions:Y,onLoadMore:e.page.sessionList.loadMoreWorkspaceSessions,onSearch:e.page.sessionList.searchWorkspaceSessions,onRefresh:e.page.sessionList.refreshWorkspaceSessions},null,8,["aside-supported","session-group","onSelectGroup","sessions","selected-session-id","mobile-viewport","can-load-more","loading-more","load-more-error","active","watch-status","node-ready","loading","workspace-kind","workspace-kind-label","workspace-branch","title","runner-icon","activity","can-delete-session","activity-label","activity-date-time","activity-title","relative-activity","node-id","workspace-id","cleanup-sessions-supported","search-supported","search-query","searching","refreshing","workspace-manageable","request","has-unread","onCreate","onOpen","onRename","onPin","onMovePin","onMovePinTo","onDeleteSession","onLoadMore","onSearch","onRefresh"]),i.value&&A.value!==void 0?(f(),we(T0,{key:0,"model-value":i.value,cleanup:U,"onUpdate:modelValue":Q},null,8,["model-value"])):ve("",!0),B(ol,{controller:e.page.mainPaneController,"aside-ready":e.page.aside.asideState?.active!==void 0,"tree-supported":e.page.aside.asideSupported,"tree-open-session-id":L.value?.sessionId,"tree-summaries":e.page.sessionList.sessionNavigationSnapshot?.summaries,"tree-status":T.value,onOpenTree:D,onOpenSurface:R,onPreviewAttachment:e.page.interactions.openAttachmentPreview,onReload:e.page.sessionList.reloadSelectedSession},null,8,["controller","aside-ready","tree-supported","tree-open-session-id","tree-summaries","tree-status","onPreviewAttachment","onReload"]),(f(),we(bk,{key:`${e.page.selection.workspaceTarget?.nodeId}:${e.page.selection.workspaceTarget?.workspaceId}`,ref:fe=>e.page.files.workspaceFileWorkbench=fe,"node-id":e.page.selection.workspaceTarget?.nodeId,"workspace-id":e.page.selection.workspaceTarget?.workspaceId,controller:e.page.files.fileWorkbench,"register-page":e.page.files.setWorkspaceFilePage,"adjacent-diff":e.page.files.adjacentWorkspaceDiff,"load-diff":e.page.files.loadWorkspaceDiff,"open-external":e.page.files.openWorkspaceFileExternal,enabled:e.page.files.filesReady,"prediction-enabled":e.page.application.workPromptCompletion.enabled,"code-navigation-enabled":e.page.application.codeNavigationReady,"file-write-enabled":e.page.files.fileWriteReady,"standalone-file-mode":e.page.files.standaloneFileMode,onOpenHtmlPreview:e.page.aside.openHtmlAside,onNotice:e.page.application.notice},null,8,["node-id","workspace-id","controller","register-page","adjacent-diff","load-diff","open-external","enabled","prediction-enabled","code-navigation-enabled","file-write-enabled","standalone-file-mode","onOpenHtmlPreview","onNotice"])),B(hn,{name:"workspace-aside",css:e.page.layout.mobileViewport&&e.page.selection.workspaceTarget!==void 0&&e.page.resources.workspaceHost?.connected!==!1},{default:Z(()=>[e.page.aside.asideState?Le((f(),O("div",{key:0,class:"workspace-aside",tabindex:"-1","aria-hidden":!p.value},[B(bT,{inert:!p.value,workspace:e.page.selection.workspaceTarget,state:e.page.aside.asideState,tools:b.value,"browser-label":o(c)("htmlPreview.browser"),sessions:C.value,"tab-label":o(c)("generated.workbenchAside.tabs"),"close-label":fe=>o(c)("generated.workbenchAside.close",{value0:fe}),"resize-label":o(c)("generated.workbenchAside.resize"),width:k.value??o(pn)[d.value].min,mobile:e.page.layout.mobileViewport,"close-surface-label":o(c)("workbench.closeWorkspaceTools"),"min-width":o(pn)[d.value].min,"max-width":Math.max(o(pn)[d.value].min,Math.min(o(pn)[d.value].max,u.value-360)),mode:d.value,onSelectTool:e.page.aside.selectAsideTool,onSelectBrowser:e.page.aside.selectAsideBrowser,onCloseBrowser:e.page.aside.closeAsideBrowser,onSelectSession:e.page.aside.openAsideSession,onCloseSession:e.page.aside.closeAsideSession,onResize:N[13]||(N[13]=fe=>e.page.layout.setPanelWidth(d.value,fe)),onCloseSurface:e.page.layout.closeMobileWorkspaceSurface},{browser:Z(()=>[p.value&&e.page.selection.workspaceTarget&&e.page.aside.asideState.htmlPath!==void 0&&e.page.aside.asideState.active?.kind==="browser"?(f(),we(dI,{key:0,"node-id":e.page.selection.workspaceTarget.nodeId,"workspace-id":e.page.selection.workspaceTarget.workspaceId,path:e.page.aside.asideState.htmlPath,"csrf-token":e.page.identity.csrfToken,"renew-csrf-token":e.page.identity.renewCsrfToken,onSource:N[4]||(N[4]=fe=>e.page.files.fileWorkbench.openFile(fe)),onExternal:N[5]||(N[5]=fe=>e.page.application.openHtmlExternal(fe))},null,8,["node-id","workspace-id","path","csrf-token","renew-csrf-token"])):ve("",!0)]),tool:Z(({tool:fe})=>[fe==="files"&&e.page.selection.workspaceTarget!==void 0?Le((f(),we(oI,{key:`${e.page.selection.workspaceTarget.nodeId}:${e.page.selection.workspaceTarget.workspaceId}`,ref:J=>e.page.files.setWorkspaceFilesPanel(J),service:e.page.files.workspaceFiles,visible:S.value,"watch-status":e.page.application.workspaceWatchTopicStatus.files,"workspace-path":e.page.resources.selectedWorkspace?.path,"local-file-manager-enabled":e.page.resources.workspaceLocalFileManagerAvailable,"mobile-viewport":e.page.layout.mobileViewport,onRefresh:N[6]||(N[6]=J=>e.page.files.workspaceFiles.requestRefresh()),onOpen:N[7]||(N[7]=(J,re)=>re?e.page.files.openWorkspaceFileExternal(J):e.page.files.fileWorkbench.openFile(J)),onHtml:e.page.aside.openHtmlAside,onDownload:N[8]||(N[8]=J=>e.page.files.downloadWorkspaceFile(J)),onFailure:N[9]||(N[9]=(J,re)=>e.page.files.reportWorkspaceFileFailure(J,re)),onNotice:N[10]||(N[10]=(J,re)=>e.page.application.notice(J,re)),onRetryWatch:e.page.application.retryWorkspaceWatch},null,8,["service","visible","watch-status","workspace-path","local-file-manager-enabled","mobile-viewport","onHtml","onRetryWatch"])),[[At,S.value]]):ve("",!0),fe==="search"&&e.page.selection.workspaceTarget!==void 0?Le((f(),we(Mb,{key:`${e.page.selection.workspaceTarget.nodeId}:${e.page.selection.workspaceTarget.workspaceId}`,ref:J=>e.page.files.setWorkspaceSearchPanel(J),service:e.page.files.workspaceSearch,enabled:e.page.files.contentSearchReady,"node-id":e.page.selection.workspaceTarget?.nodeId,"workspace-id":e.page.selection.workspaceTarget?.workspaceId,onOpen:N[11]||(N[11]=(J,re,ge,ce)=>ce?e.page.files.openWorkspaceFileExternal(J,re,ge):e.page.files.fileWorkbench.openFile(J,re,ge))},null,8,["service","enabled","node-id","workspace-id"])),[[At,m.value]]):ve("",!0),(I(fe)==="files"||I(fe)==="search")&&!e.page.files.filesReady?(f(),O("p",{key:2,class:Ke(["workspace-tool-unavailable",{"workspace-tool-loading":w.value}]),role:w.value?"status":void 0},[w.value?(f(),we(De,{key:0,name:"loading-action"})):ve("",!0),ke(" "+W(w.value?o(c)("generated.workspaceInspector.loading"):e.page.resources.workspaceHost?.connected===!0&&e.page.resources.workspaceHost.disabled!==!0?o(c)("generated.workspaceInspector.capabilityUnavailable"):o(c)("generated.workspaceInspector.theNodeIsOfflineOrDoesNot")),1)],10,lE)):ve("",!0),I(fe)==="changes"||I(fe)==="history"?(f(),O("section",{key:JSON.stringify([e.page.selection.workspaceTarget?.nodeId,e.page.selection.workspaceTarget?.workspaceId]),class:"workspace-git-panel"},[e.page.files.filesReady?(f(),O(Ve,{key:1},[I(fe)==="changes"?(f(),we(Zk,{key:0,service:e.page.files.workspaceGit,target:e.page.selection.workspaceTarget,"watch-status":e.page.application.workspaceWatchTopicStatus.changes,onRetryWatch:N[12]||(N[12]=J=>e.page.application.retryWorkspaceWatch()),onOpen:e.page.files.openWorkspaceGitChange,onNotice:e.page.application.notice},null,8,["service","target","watch-status","onOpen","onNotice"])):(f(),we(Sb,{key:1,service:e.page.files.workspaceGit,onOpen:e.page.files.openWorkspaceHistoryDiff,onNotice:e.page.application.notice},null,8,["service","onOpen","onNotice"]))],64)):(f(),O("p",{key:0,class:Ke(["empty",{"workspace-tool-loading":w.value}]),role:w.value?"status":void 0},[w.value?(f(),we(De,{key:0,name:"loading-action"})):ve("",!0),ke(" "+W(w.value?o(c)("generated.workspaceInspector.loading"):e.page.resources.workspaceHost?.connected===!0&&e.page.resources.workspaceHost.disabled!==!0?o(c)("generated.workspaceInspector.capabilityUnavailable"):o(c)("generated.workspaceInspector.theNodeIsOfflineOrDoesNot")),1)],10,cE))])):ve("",!0)]),session:Z(()=>[B(ol,{controller:e.page.aside.asidePaneController,"aside-ready":e.page.aside.asideState?.active!==void 0,"tree-supported":e.page.aside.asideSupported,"tree-open-session-id":L.value?.sessionId,"tree-summaries":e.page.sessionList.sessionNavigationSnapshot?.summaries,"tree-status":T.value,onOpenTree:D,onOpenSurface:R,onPreviewAttachment:e.page.interactions.openAttachmentPreview,onReload:e.page.aside.reloadAsideSession},null,8,["controller","aside-ready","tree-supported","tree-open-session-id","tree-summaries","tree-status","onPreviewAttachment","onReload"])]),terminal:Z(()=>[K("div",{ref_key:"terminalMount",ref:v,class:"aside-terminal-mount"},null,512)]),_:1},8,["inert","workspace","state","tools","browser-label","sessions","tab-label","close-label","resize-label","width","mobile","close-surface-label","min-width","max-width","mode","onSelectTool","onSelectBrowser","onCloseBrowser","onSelectSession","onCloseSession","onCloseSurface"])],8,sE)),[[At,p.value]]):ve("",!0)]),_:1},8,["css"])],6)),[[At,e.page.resources.workspaceHost?.connected!==!1]]):ve("",!0)],64)):ve("",!0),(f(),we(la,{to:v.value??"body",disabled:v.value===void 0},[(f(!0),O(Ve,null,Je(e.page.selection.workspaceTabs,fe=>Le((f(),O("div",{key:fe.id,tabindex:"-1",inert:!g.value,class:"terminal-dock"},[B($S,{"error-message":o(it),embedded:"",ref_for:!0,ref:J=>{J===null?e.page.terminal.terminalDocks.delete(fe.id):e.page.terminal.terminalDocks.set(fe.id,J)},"node-id":fe.nodeId,direct:e.page.terminal.terminalDirectClient,"workspace-id":fe.workspaceId,"csrf-token":e.page.identity.csrfToken,"renew-csrf-token":e.page.identity.renewCsrfToken,enabled:e.page.application.view==="nodes"&&fe.id===e.page.selection.activeWorkspaceTabId&&e.page.terminal.terminalReady,capability:e.page.resources.nodeManifest?.terminal,"node-os-release":e.page.resources.nodes.find(J=>J.id===fe.nodeId)?.metadata?.osRelease,visible:e.page.application.view==="nodes"&&fe.id===e.page.selection.activeWorkspaceTabId&&e.page.terminal.terminalReady&&g.value,"mobile-mode":e.page.layout.mobileViewport,active:e.page.application.view==="nodes"&&fe.id===e.page.selection.activeWorkspaceTabId,onCollapse:N[14]||(N[14]=J=>e.page.layout.mobileViewport&&e.page.layout.closeMobileWorkspaceSurface()),onNotice:e.page.application.notice},null,8,["error-message","node-id","direct","workspace-id","csrf-token","renew-csrf-token","enabled","capability","node-os-release","visible","mobile-mode","active","onNotice"])],8,dE)),[[At,g.value&&fe.id===e.page.selection.activeWorkspaceTabId&&e.page.terminal.terminalReady]])),128))],8,["to","disabled"]))],512),[[At,e.page.application.view==="nodes"]]),e.page.application.view==="conversations"?(f(),we(jC,{key:1,connected:e.page.application.liveConnected,workspace:e.page.hosted.hostedConversationWorkspace,request:e.page.identity.request,"mobile-viewport":e.page.layout.mobileViewport,"mobile-history-open":e.page.hosted.hostedConversationMobileHistoryOpen,"mobile-files-open":e.page.hosted.hostedConversationMobileFilesOpen,"onUpdate:mobileFilesOpen":N[15]||(N[15]=fe=>e.page.hosted.hostedConversationMobileFilesOpen=fe),"sidebar-collapsed":e.page.layout.sidebarCollapsed,"select-conversation":e.page.hosted.selectHostedConversation,"route-target":e.page.hosted.hostedConversationRoute,"restoring-route":e.page.hosted.restoringHostedConversationRoute,"clear-conversation":e.page.hosted.clearHostedConversation,"has-unread-conversation":e.page.notifications.hasUnreadConversation,onCloseMobileHistory:e.page.hosted.closeHostedConversationMobileHistory},null,8,["connected","workspace","request","mobile-viewport","mobile-history-open","mobile-files-open","sidebar-collapsed","select-conversation","route-target","restoring-route","clear-conversation","has-unread-conversation","onCloseMobileHistory"])):e.page.application.view==="settings"?Ct(V.$slots,"settings",{},()=>[B(o(n),{"web-version":e.page.application.webVersion,"pwa-state":e.page.application.pwaState,"checking-for-updates":e.page.application.checkingForUpdates,"new-password":e.page.identity.newPassword,"onUpdate:newPassword":N[16]||(N[16]=fe=>e.page.identity.newPassword=fe),section:e.page.application.settingsSection,sessions:e.page.identity.adminSessions,"password-validation-error":e.page.identity.passwordValidationError,"registration-token":e.page.settings.registrationToken,"registration-loading":e.page.settings.registrationLoading,loading:e.page.identity.loading,"format-session-time":e.page.identity.formatSessionTime,request:e.page.identity.request,"quick-prompts":e.page.settings.quickPrompts,"quick-prompts-loading":e.page.settings.quickPromptsLoading,"quick-prompts-failed":e.page.settings.quickPromptsFailed,"refresh-quick-prompts":e.page.settings.refreshQuickPrompts,"system-notifications":e.page.notifications.systemNotifications,onClearPasswordError:N[17]||(N[17]=fe=>e.page.identity.passwordValidationError=""),onRefreshSessions:e.page.identity.refreshAdminSessions,onLogoutSession:e.page.identity.logoutAdminSession,"change-password":e.page.identity.changePassword,onLogout:e.page.identity.logout,onCreateRegistrationToken:e.page.settings.createRegistrationToken,onCheckForUpdates:e.page.application.checkForUpdates,onApplyWebUpdate:e.page.application.applyWebUpdate},null,8,["web-version","pwa-state","checking-for-updates","new-password","section","sessions","password-validation-error","registration-token","registration-loading","loading","format-session-time","request","quick-prompts","quick-prompts-loading","quick-prompts-failed","refresh-quick-prompts","system-notifications","onRefreshSessions","onLogoutSession","change-password","onLogout","onCreateRegistrationToken","onCheckForUpdates","onApplyWebUpdate"])],!0,2):e.page.application.view==="management"?(f(),O(Ve,{key:3},[Ct(V.$slots,"management-notice",{},void 0,!0),(f(),we(yr(s.value.component),ra({key:s.value.id},s.value.props({admin:e.page.identity.admin,request:e.page.identity.request,nodes:e.page.resources.nodes,nodeUpgradeProgress:e.page.resources.nodeUpgradeProgress,onlineNodeCount:e.page.resources.onlineNodeCount,serverVersion:e.page.resources.serverVersion}),{onChanged:e.page.resources.refreshNodes,onExtensionChanged:e.page.identity.refreshAdmin}),null,16,["onChanged","onExtensionChanged"]))],64)):ve("",!0),L.value?(f(),we(JT,{key:L.value.sessionId,anchor:L.value.anchor,"session-id":L.value.sessionId,title:L.value.title,tree:e.page.sessionList.sessionNavigationSnapshot?.tree,status:T.value,"main-session-id":e.page.selection.draftSessionOpen?void 0:e.page.selection.selectedSessionId,"aside-session-ids":e.page.aside.asideState?.sessions??[],"active-aside-id":e.page.aside.asideState?.active?.kind==="session"?e.page.aside.asideState.active.sessionId:void 0,onClose:y,onOpen:H,onRetry:e.page.application.retryWorkspaceWatch},null,8,["anchor","session-id","title","tree","status","main-session-id","aside-session-ids","active-aside-id","onRetry"])):ve("",!0)],2)}}}),Rc=dt(uE,[["__scopeId","data-v-5f5882bd"]]),vE={key:0,class:"workspace-picker-ownership"},fE={key:0},pE={key:1},gE={key:3},mE=at({inheritAttrs:!1,__name:"WorkspaceRegistrationPicker",props:{modelValue:{},directory:{},selectedPath:{},pendingDirectoryName:{},loadingDirectory:{type:Boolean},loading:{type:Boolean},nodeReady:{type:Boolean},selectedPathValid:{type:Boolean},enterprise:{type:Boolean},role:{},nodeOwnership:{},nodeManageable:{type:Boolean},workspaceCreatable:{type:Boolean},request:{type:Function}},emits:["register"],setup(e,{emit:t}){const n=e,a=t,r=x([]),s=x(),i=j(()=>{if(n.nodeOwnership?.ownerType!=="ORGANIZATION")return[];const d=n.nodeOwnership.ownerOrganizationId,w=new Map;for(const p of r.value){if(p.parentOrganizationId===null)continue;const g=w.get(p.parentOrganizationId)??[];g.push(p.id),w.set(p.parentOrganizationId,g)}const k=new Set([d]),T=[d];for(;T.length>0;)for(const p of w.get(T.shift())??[])k.has(p)||(k.add(p),T.push(p));return r.value.filter(p=>k.has(p.id))}),l=j(()=>n.nodeOwnership?.ownerType==="ORGANIZATION"&&n.workspaceCreatable===!0&&n.nodeManageable===!1),v=j(()=>l.value||n.nodeOwnership?.ownerType!=="ORGANIZATION"||n.role!=="MEMBER"&&s.value!==void 0);He(()=>n.nodeOwnership,d=>{s.value=d?.ownerType==="ORGANIZATION"?d.ownerOrganizationId:void 0},{immediate:!0}),He(()=>n.enterprise,async d=>{if(!(!d||n.role==="MEMBER"))try{r.value=(await n.request("/api/organizations")).organizations}catch{r.value=[]}},{immediate:!0});function u(){if(l.value){a("register");return}if(n.nodeOwnership?.ownerType==="ORGANIZATION"){if(s.value===void 0)return;a("register",{ownerType:"ORGANIZATION",ownerOrganizationId:s.value});return}a("register")}return(d,w)=>{const k=Un,T=wn;return f(),we(kc,ra(d.$attrs,{"model-value":e.modelValue,directory:e.directory,"selected-path":e.selectedPath,"pending-directory-name":e.pendingDirectoryName,"loading-directory":e.loadingDirectory,loading:e.loading,"node-ready":e.nodeReady,"selected-path-valid":e.selectedPathValid,"registration-disabled":!v.value,onRegister:u}),{ownership:Z(()=>[e.enterprise?(f(),O("div",vE,[K("span",null,W(o(c)("generated.workspaceRegistrationPicker.resourceOwner")),1),e.nodeOwnership?.ownerType!=="ORGANIZATION"?(f(),O("strong",fE,W(o(c)("generated.workspaceRegistrationPicker.personal")),1)):l.value?(f(),O("strong",pE,W(o(ls)(r.value,e.nodeOwnership.ownerOrganizationId)),1)):(f(),we(T,{key:2,modelValue:s.value,"onUpdate:modelValue":w[0]||(w[0]=p=>s.value=p),disabled:e.role==="MEMBER","clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down")},{default:Z(()=>[(f(!0),O(Ve,null,Je(i.value,p=>(f(),we(k,{key:p.id,value:p.id,label:o(ls)(r.value,p.id)},null,8,["value","label"]))),128))]),_:1},8,["modelValue","disabled","clear-icon","suffix-icon"])),e.nodeOwnership?.ownerType==="ORGANIZATION"&&e.role==="MEMBER"&&!l.value?(f(),O("small",gE,W(o(c)("generated.workspaceRegistrationPicker.mEMBERUsersCannotCreateOrganizationWorkspaces")),1)):ve("",!0)])):ve("",!0)]),_:1},16,["model-value","directory","selected-path","pending-directory-name","loading-directory","loading","node-ready","selected-path-valid","registration-disabled"])}}}),hE=dt(mE,[["__scopeId","data-v-1d694991"]]),yE=at({__name:"WorkbenchSurface",props:{page:{}},setup(e){const n=kr({loader:()=>br(()=>import("./SettingsContent-KFZsk8Yv.js"),__vite__mapDeps([73,9,1,2,7,10,34,33,8,11,28,29,30,35,36,37,53,54,55,56,17,18,62,43,71,14,15,64,65,25,23,24,26,6,12,13,27,20,3,4,31,32,38,39,40,41,5,16,19,21,22,44,45,63,66,49,50,67,68,69,51,52,57,58,42,46,47,48,59,60,61,72,74])),loadingComponent:{render:()=>kl(bl,{loading:!0,variant:"page","aria-label":c("common.loading")})},delay:0});return(a,r)=>{const s=Ar;return f(),we(Rc,{page:e.page},{"workspace-registration":Z(()=>[B(hE,{modelValue:e.page.registration.openWorkspaceTools,"onUpdate:modelValue":r[0]||(r[0]=i=>e.page.registration.openWorkspaceTools=i),"preserve-git-config":e.page.registration.workspacePreserveGitConfig,"onUpdate:preserveGitConfig":r[1]||(r[1]=i=>e.page.registration.workspacePreserveGitConfig=i),"git-policy-supported":e.page.registration.workspaceGitPolicySupported,directory:e.page.registration.workspaceDirectory,"selected-path":e.page.resources.workspacePath,"pending-directory-name":e.page.registration.pendingWorkspaceDirectoryName,"loading-directory":e.page.registration.loadingWorkspaceDirectory,loading:e.page.identity.loading,"node-ready":e.page.registration.workspaceRegistrationReady,"selected-path-valid":e.page.registration.selectedWorkspaceDirectorySelectable,enterprise:e.page.identity.admin.edition==="ENTERPRISE",role:e.page.identity.admin.role,"node-ownership":e.page.registration.workspaceRegistrationNode?.ownership,"node-manageable":e.page.registration.workspaceRegistrationNode?.manageable,"workspace-creatable":e.page.registration.workspaceRegistrationNode?.workspaceCreatable,request:e.page.identity.request,onNavigate:e.page.registration.loadWorkspaceDirectories,onSelect:e.page.registration.selectWorkspaceDirectory,onSelectPending:e.page.registration.selectPendingWorkspaceDirectory,onDiscardPending:e.page.registration.discardPendingWorkspaceDirectory,onRegister:e.page.registration.registerWorkspace},null,8,["modelValue","preserve-git-config","git-policy-supported","directory","selected-path","pending-directory-name","loading-directory","loading","node-ready","selected-path-valid","enterprise","role","node-ownership","node-manageable","workspace-creatable","request","onNavigate","onSelect","onSelectPending","onDiscardPending","onRegister"])]),settings:Z(()=>[B(o(n),{"new-password":e.page.identity.newPassword,"onUpdate:newPassword":r[2]||(r[2]=i=>e.page.identity.newPassword=i),section:e.page.application.settingsSection,sessions:e.page.identity.adminSessions,"password-validation-error":e.page.identity.passwordValidationError,"registration-token":e.page.settings.registrationToken,"registration-loading":e.page.settings.registrationLoading,loading:e.page.identity.loading,"format-session-time":e.page.identity.formatSessionTime,request:e.page.identity.request,edition:e.page.identity.admin.edition??"COMMUNITY",role:e.page.identity.admin.role??null,"management-writable":e.page.identity.admin.managementWritable??!0,"quick-prompts":e.page.settings.quickPrompts,"quick-prompts-loading":e.page.settings.quickPromptsLoading,"quick-prompts-failed":e.page.settings.quickPromptsFailed,"refresh-quick-prompts":e.page.settings.refreshQuickPrompts,"system-notifications":e.page.notifications.systemNotifications,onClearPasswordError:r[3]||(r[3]=i=>e.page.identity.passwordValidationError=""),onRefreshSessions:e.page.identity.refreshAdminSessions,onLogoutSession:e.page.identity.logoutAdminSession,"change-password":e.page.identity.changePassword,onLogout:e.page.identity.logout,onCreateRegistrationToken:e.page.settings.createRegistrationToken},null,8,["new-password","section","sessions","password-validation-error","registration-token","registration-loading","loading","format-session-time","request","edition","role","management-writable","quick-prompts","quick-prompts-loading","quick-prompts-failed","refresh-quick-prompts","system-notifications","onRefreshSessions","onLogoutSession","change-password","onLogout","onCreateRegistrationToken"])]),"management-notice":Z(()=>[e.page.identity.admin.licenseState==="ENTERPRISE_FROZEN"?(f(),we(s,{key:0,class:"enterprise-frozen-banner",type:"warning",closable:!1,"show-icon":"",title:e.page.identity.admin.role==="ADMIN"?o(c)("generated.workbenchSurface.theEnterpriseLicenseIsFrozenConfiguredResources"):o(c)("generated.workbenchSurface.theEnterpriseLicenseIsFrozenConfiguredResources2")},{icon:Z(()=>[B(De,{name:"warning"})]),_:1},8,["title"])):ve("",!0)]),_:1},8,["page"])}}}),wE={class:"gate-panel","aria-labelledby":"login-title"},kE=["aria-label"],bE=["src"],IE={id:"login-title"},SE={class:"lede"},CE=at({__name:"LoginPage",props:{loading:{type:Boolean},logoUrl:{}},emits:["login"],setup(e,{emit:t}){const n=t,a=x(""),r=x(""),{t:s}=Dn();function i(){n("login",{username:a.value,password:r.value}),r.value=""}return(l,v)=>(f(),O("section",wE,[K("div",{class:"login-brand","aria-label":o(s)("common.productName")},[K("img",{src:e.logoUrl,alt:""},null,8,bE),K("strong",null,W(o(s)("common.productName")),1)],8,kE),K("h1",IE,W(o(s)("auth.title")),1),K("p",SE,W(o(s)("auth.summary")),1),K("form",{class:"auth-form",onSubmit:rt(i,["prevent"])},[K("label",null,[ke(W(o(s)("auth.username")),1),B(o(Ft),{modelValue:a.value,"onUpdate:modelValue":v[0]||(v[0]=u=>a.value=u),autocomplete:"username"},null,8,["modelValue"])]),K("label",null,[ke(W(o(s)("auth.password")),1),B(o(Ft),{modelValue:r.value,"onUpdate:modelValue":v[1]||(v[1]=u=>r.value=u),type:"password",autocomplete:"current-password"},null,8,["modelValue"])]),B(o(bt),{loading:e.loading,"native-type":"submit",type:"primary","loading-icon":o(qe)("loading-action")},{default:Z(()=>[ke(W(o(s)("auth.login")),1)]),_:1},8,["loading","loading-icon"])],32),Ct(l.$slots,"identity-extension",{},void 0,!0)]))}}),TE=dt(CE,[["__scopeId","data-v-7bb17748"]]),EE={class:"auth-unavailable","aria-labelledby":"auth-unavailable-title"},RE={class:"brand"},AE=["src"],NE={id:"auth-unavailable-title"},DE={class:"actions"},PE=at({__name:"AuthenticationUnavailable",props:{loading:{type:Boolean},logoUrl:{}},emits:["retry"],setup(e){const{t,locale:n}=Dn(),a=Il(),r=j(()=>Sl(Of(n.value)??Lf,"getting-started/overview"));return(s,i)=>(f(),O("section",EE,[K("div",RE,[K("img",{src:e.logoUrl,alt:""},null,8,AE),K("strong",null,W(o(t)("common.productName")),1)]),K("h1",NE,W(o(t)("auth.unavailableTitle")),1),K("p",null,W(o(t)("auth.unavailableSummary")),1),K("div",DE,[B(o(bt),{type:"primary",loading:e.loading,"loading-icon":o(qe)("loading-action"),onClick:i[0]||(i[0]=l=>s.$emit("retry"))},{default:Z(()=>[ke(W(o(t)("auth.retry")),1)]),_:1},8,["loading","loading-icon"]),o(a)?(f(),we(o(Sr),{key:0,href:r.value},{default:Z(()=>[ke(W(o(t)("auth.help")),1)]),_:1},8,["href"])):ve("",!0)])]))}}),OE=dt(PE,[["__scopeId","data-v-46fb6879"]]);function LE(e,t){let n=0;for(const a of t){const r=e.indexOf(a,n);if(r<0)return!1;n=r+1}return!0}function WE(e,t){return e===t?1e3:e.startsWith(t)?700:e.includes(t)?500:LE(e,t)?100:void 0}function Wa(e,t){const n=t.trim().toLocaleLowerCase().split(/\s+/u).filter(Boolean);if(n.length===0)return 0;const a=e.map(s=>s.toLocaleLowerCase());let r=0;for(const s of n){const i=a.reduce((l,v)=>{const u=WE(v,s);return u===void 0?l:Math.max(l??u,u)},void 0);if(i===void 0)return;r+=i}return r}function ME(e,t){return e.kind==="WORKSPACE"?Wa([e.workspaceLabel],t):e.kind==="SYMBOL"?Wa([e.symbol,e.path],t):e.kind==="SESSION"?Wa([e.title],t):e.score!==void 0?e.score:Wa([e.name,e.path],t)}function rl(e){return e.kind==="WORKSPACE"?0:e.kind==="SESSION"?1:e.kind==="FILE"?2:3}function Qn(e,t){return e.flatMap(n=>{const a=ME(n,t);return a===void 0?[]:[{candidate:n,score:a}]}).sort((n,a)=>{if(n.score!==a.score)return a.score-n.score;const r=rl(n.candidate)-rl(a.candidate);if(r!==0)return r;if(n.candidate.kind==="WORKSPACE"&&a.candidate.kind==="WORKSPACE"){const s=(n.candidate.openTabIndex??Number.MAX_SAFE_INTEGER)-(a.candidate.openTabIndex??Number.MAX_SAFE_INTEGER);if(s!==0)return s}return n.candidate.kind==="SYMBOL"&&a.candidate.kind==="SYMBOL"&&n.candidate.source!==a.candidate.source?n.candidate.source==="DEFINITION"?-1:1:n.candidate.stableIndex-a.candidate.stableIndex}).map(({candidate:n})=>n)}function xE(e,t,n){const a=e.findIndex(r=>r.nodeId===t&&r.workspaceId===n);return a<0?void 0:a}function $E(e){const t=x([]),n=x([]),a=x([]),r=x(null),s=()=>Fn({phase:"IDLE",error:void 0,truncated:!1}),i=s(),l=s(),v=s(),u=s();let d,w,k,T,p=!1;const g=new Map;function R(N,h="IDLE"){N.phase=h,N.error=void 0,N.truncated=!1}function b(N){return!p&&w===N&&!N.controller.signal.aborted&&e.open()&&N.query===e.query().trim()&&N.tab===e.tab()&&N.nodeId===e.nodeId()&&N.workspaceId===e.workspaceId()}function C(N,h){return b(N)?new Promise(F=>{const z=N.controller.signal,fe=ge=>{clearTimeout(re),z.removeEventListener("abort",J),F(ge&&b(N))},J=()=>fe(!1),re=setTimeout(()=>fe(!0),h);z.addEventListener("abort",J,{once:!0})}):Promise.resolve(!1)}function I(){d!==void 0&&clearTimeout(d),d=void 0,w!==void 0&&(clearTimeout(w.deadline),w.controller.abort(),w=void 0)}function S(){I(),k?.abort(),k=void 0,T!==void 0&&clearTimeout(T),T=void 0,[i,l,v,u].forEach(N=>R(N))}function m(N){if(b(N)){for(const h of[l,v,u])(h.phase==="SEARCHING"||h.phase==="BUILDING")&&(h.phase="TIMED_OUT");N.controller.abort()}}async function A(N,h){N.pending+=1;try{await h()}finally{N.pending-=1,N.pending===0&&clearTimeout(N.deadline)}}function L(){const N=w!==void 0&&w.query===e.query().trim()&&w.nodeId===e.nodeId()&&w.workspaceId===e.workspaceId()&&w.tab===e.tab();if(I(),N||(n.value=[],a.value=[]),r.value=null,[l,v,u].forEach(re=>R(re)),p||!e.open()||e.query().trim()==="")return;const h=e.tab(),F=e.nodeId()!==void 0&&e.workspaceId()!==void 0,z=(h==="ALL"||h==="FILE")&&e.filesReady()&&F,fe=/^-*[\p{L}_$][\p{L}\p{N}_$-]*$/u.test(e.query().trim()),J=(h==="ALL"||h==="SYMBOL")&&e.symbolsReady()&&F&&fe;z?l.phase="SEARCHING":h==="FILE"&&(l.phase="UNAVAILABLE"),J?v.phase="SEARCHING":h==="SYMBOL"&&(v.phase=fe?"UNAVAILABLE":"INVALID"),!(!z&&!J)&&(d=setTimeout(()=>{if(d=void 0,p||!e.open()||!F)return;const re={controller:new AbortController,nodeId:e.nodeId(),workspaceId:e.workspaceId(),query:e.query().trim(),tab:e.tab(),pending:0,deadline:setTimeout(()=>m(re),e.deadlineMs??3e4)};w=re,z&&A(re,()=>y(re)),J&&A(re,async()=>{re.tab==="ALL"&&!await C(re,180)||await Y(re)})},120))}async function y(N){const h=sr(N.query,void 0,e.origin()),F=new URLSearchParams({nodeId:N.nodeId,q:h?.path??N.query});F.set("waitForIndex","false");try{for(let z=0;b(N);z+=1){const fe=await e.http.request(`/api/workspaces/${encodeURIComponent(N.workspaceId)}/files/search?${F}`,{signal:N.controller.signal});if(!b(N))return;if(!Array.isArray(fe.files?.entries))throw new jt("NODE_RESPONSE_INVALID","The Node returned an invalid file search result.");if(fe.files.indexState==="BUILDING"){if(l.phase="BUILDING",!await C(N,Math.min(250*2**z,2e3)))return;continue}n.value=fe.files.entries.flatMap((J,re)=>J.kind==="FILE"?[{kind:"FILE",key:`file\0${N.nodeId}\0${N.workspaceId}\0${J.path}`,nodeId:N.nodeId,workspaceId:N.workspaceId,path:J.path,name:J.name,...J.score===void 0?{}:{score:J.score},...h?.line===void 0?{}:{line:h.line},...h?.column===void 0?{}:{column:h.column},stableIndex:re}]:[]),r.value=fe.files.nextCursor??null,l.truncated=fe.files.truncated===!0||r.value!==null,l.phase="READY";return}}catch(z){b(N)&&(l.phase="FAILED",l.error=z)}}function D(N,h){return h.targets.map((F,z)=>({kind:"SYMBOL",source:"DEFINITION",key:`symbol\0definition\0${F.path}\0${F.line}\0${N.query}`,nodeId:N.nodeId,workspaceId:N.workspaceId,symbol:N.query,path:F.path,line:F.line,detail:[F.kind,F.scope].filter(Boolean).join(" · ")||F.preview,stableIndex:z}))}function E(N,h){const F=a.value.filter(z=>z.source==="DEFINITION");a.value=[...F,...h.references.map((z,fe)=>({kind:"SYMBOL",source:"REFERENCE",key:`symbol\0reference\0${z.path}\0${z.line}\0${z.column}\0${N.query}`,nodeId:N.nodeId,workspaceId:N.workspaceId,symbol:N.query,path:z.path,line:z.line,column:z.column,detail:z.preview,stableIndex:F.length+fe}))],u.truncated=h.referenceTruncated===!0}function H(N,h){return h.state==="UNAVAILABLE"?(N.phase="UNAVAILABLE",!0):h.state!=="FAILED"?!1:h.failureCode==="SYMBOL_INDEX_LIMIT_EXCEEDED"?(N.phase="LIMITED",!0):(N.phase="FAILED",N.error=qa({error:h.failureCode??"SYMBOL_INDEX_BUILD_FAILED"},503),!0)}async function X(N,h){const F=new URLSearchParams({nodeId:N.nodeId,path:".",symbol:N.query,references:h?"1":"0"}),z=await e.http.request(`/api/workspaces/${encodeURIComponent(N.workspaceId)}/symbols/definition?${F}`,{signal:N.controller.signal});if(!z.definition||!Array.isArray(z.definition.targets)||!Array.isArray(z.definition.references))throw new jt("NODE_RESPONSE_INVALID","The Node returned an invalid symbol result.");return z.definition}async function Y(N){try{for(let h=0;b(N);h+=1){const F=await X(N,!1);if(!b(N)||H(v,F))return;if((F.targets.length>0||F.state==="READY")&&(a.value=D(N,F)),v.truncated=F.truncated===!0,F.state==="READY"){v.phase="READY",u.phase="SEARCHING",await U(N);return}if(v.phase="BUILDING",!await C(N,Math.min(250*2**h,2e3)))return}}catch(h){b(N)&&(v.phase="FAILED",v.error=h)}}async function U(N){try{for(let h=0;b(N);h+=1){const F=await X(N,!0);if(!b(N)||H(u,F))return;if((F.references.length>0||F.state==="READY")&&E(N,F),F.state==="READY"){u.phase="READY";return}if(u.phase="BUILDING",!await C(N,Math.min(250*2**h,2e3)))return}}catch(h){b(N)&&(u.phase="FAILED",u.error=h)}}function Q(N,h,F){const z=xE(e.workspaceTabs(),N.id,h.id);return{kind:"WORKSPACE",key:`workspace\0${N.id}\0${h.id}`,nodeId:N.id,nodeLabel:N.displayName?.trim()||N.registeredAddress||N.id,workspaceId:h.id,workspaceLabel:h.displayName?.trim()||h.path,path:h.path,...z===void 0?{}:{openTabIndex:z},stableIndex:F}}async function $(){if(k?.abort(),T!==void 0&&clearTimeout(T),p||!e.open())return;R(i);const N=e.nodes().filter(oe=>oe.connected&&!oe.disabled),h=new Map(N.map(oe=>[oe.id,oe])),F=new Map;e.workspaceTabs().forEach((oe,P)=>{const G=h.get(oe.nodeId);if(G!==void 0){const ue=Q(G,{id:oe.workspaceId,displayName:oe.label,path:oe.label},P);F.set(ue.key,ue)}});function z(oe,P,G){P.forEach((ue,ne)=>{const M=Q(oe,ue,e.workspaceTabs().length+G*1e5+ne),ee=F.get(M.key);F.set(M.key,ee?.openTabIndex===void 0?M:{...M,stableIndex:ee.stableIndex})}),t.value=[...F.values()]}const fe=[];if(N.forEach((oe,P)=>{const G=g.get(oe.id);G!==void 0&&Date.now()-G.at<3e4?z(oe,G.entries,P):fe.push({node:oe,index:P})}),t.value=[...F.values()],fe.length===0){i.phase="READY";return}const J=new AbortController;k=J;const re=()=>!p&&k===J&&!J.signal.aborted&&e.open();i.phase="SEARCHING",T=setTimeout(()=>{re()&&(i.phase="TIMED_OUT",J.abort())},e.deadlineMs??3e4);let ge=0;const ce=async()=>{for(;re();){const oe=fe[ge++];if(oe===void 0)return;try{const P=await e.http.request(`/api/workspaces?nodeId=${encodeURIComponent(oe.node.id)}`,{signal:J.signal});if(!re())return;if(!Array.isArray(P.workspaces))throw new jt("NODE_RESPONSE_INVALID","The Node returned an invalid Workspace list.");g.delete(oe.node.id),g.set(oe.node.id,{at:Date.now(),entries:P.workspaces}),g.size>32&&g.delete(g.keys().next().value),z(oe.node,P.workspaces,oe.index)}catch(P){re()&&(i.error=P)}}};await Promise.all(Array.from({length:Math.min(4,fe.length)},ce)),k===J&&(clearTimeout(T),T=void 0,re()&&(i.phase=i.error===void 0?"READY":"FAILED"))}function V(){p=!0,S(),g.clear()}return{workspaces:t,files:n,symbols:a,fileCursor:r,workspaceStatus:i,fileStatus:l,symbolStatus:v,referenceStatus:u,scheduleSearch:L,loadWorkspaces:$,cancel:S,dispose:V}}const FE=["aria-label"],UE=["aria-selected","onClick"],VE=["aria-label","placeholder"],qE=["aria-selected"],HE=["onClick"],BE={class:"entry-main"},GE={class:"entry-name"},zE={key:0},KE={key:0},jE={key:0},_E={key:1},YE={key:2},QE={key:1,class:"empty",role:"status"},JE={key:2,class:"empty"},XE={class:"quick-open-statuses",role:"status","aria-live":"polite"},ZE=["data-source"],eR={key:0},tR={class:"mar-disclosure-summary"},nR=at({__name:"QuickOpenDialog",props:{open:{type:Boolean},nodeId:{},workspaceId:{},filesReady:{type:Boolean},symbolsReady:{type:Boolean},nodes:{},sessions:{},sessionTitle:{type:Function},openSession:{type:Function},openWorkspace:{type:Function},workspaceTabs:{}},emits:["close","openFile"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=x(),i=x("ALL"),l=x(""),v=x(),u=x(!1),d=Za(),w=$E({open:()=>n.open,query:()=>l.value,tab:()=>i.value,nodeId:()=>n.nodeId,workspaceId:()=>n.workspaceId,filesReady:()=>n.filesReady,symbolsReady:()=>n.symbolsReady,nodes:()=>n.nodes,workspaceTabs:()=>n.workspaceTabs,origin:()=>typeof window>"u"?"http://localhost":window.location.origin,http:d}),{workspaces:k,files:T,symbols:p,workspaceStatus:g,fileStatus:R,symbolStatus:b,referenceStatus:C}=w,I=w.scheduleSearch,S=w.loadWorkspaces,m=re=>re.phase==="SEARCHING"||re.phase==="BUILDING",A=j(()=>m(g)),L=j(()=>m(R)),y=j(()=>m(b)),D=j(()=>sr(l.value.trim(),void 0,typeof window>"u"?"http://localhost":window.location.origin)?.path??l.value),E=j(()=>n.sessions.map((re,ge)=>({kind:"SESSION",key:`session\0${re.id}`,sessionId:re.id,title:n.sessionTitle(re),runner:re.runner,stableIndex:ge}))),H=j(()=>{const re=Qn(k.value,D.value),ge=Qn(T.value,D.value),ce=Qn(p.value,D.value),oe=Qn(E.value,D.value);return i.value==="WORKSPACE"?re:i.value==="SESSION"?oe:i.value==="SYMBOL"?ce:i.value==="FILE"?ge:Qn([...re,...oe,...ce,...ge],D.value)}),X=j(()=>{const re=H.value.findIndex(ge=>ge.key===v.value);return re<0?0:re}),Y=j(()=>(i.value==="ALL"||i.value==="WORKSPACE")&&A.value||(i.value==="ALL"||i.value==="FILE")&&L.value||(i.value==="ALL"||i.value==="SYMBOL")&&y.value),U=j(()=>{const re=[];return(i.value==="ALL"||i.value==="WORKSPACE")&&re.push({kind:"WORKSPACE",label:"generated.quickOpenDialog.workspace",status:g}),(i.value==="ALL"||i.value==="FILE")&&re.push({kind:"FILE",label:"generated.quickOpenDialog.file",status:R}),(i.value==="ALL"||i.value==="SYMBOL")&&re.push({kind:"SYMBOL",label:"generated.quickOpenDialog.definition",status:b},{kind:"REFERENCE",label:"generated.quickOpenDialog.reference",status:C}),re.filter(({status:ge})=>ge.phase!=="IDLE"&&(ge.phase!=="READY"||ge.truncated))});function Q(re){return re.phase==="READY"&&re.truncated?c("generated.quickOpenDialog.incomplete"):c({IDLE:"generated.quickOpenDialog.searching",READY:"generated.quickOpenDialog.searching",SEARCHING:"generated.quickOpenDialog.searching",BUILDING:"generated.quickOpenDialog.preparing",FAILED:"generated.quickOpenDialog.failed",UNAVAILABLE:"generated.quickOpenDialog.unavailable",LIMITED:"fileEditor.navigationLimited",TIMED_OUT:"generated.quickOpenDialog.timedOut",INVALID:"generated.quickOpenDialog.completeSymbolRequired"}[re.phase])}function $(re){re==="WORKSPACE"?S():I()}He(H,re=>{re.length===0?v.value=void 0:re.some(ge=>ge.key===v.value)||(v.value=re[0]?.key)}),He(()=>n.open,re=>{if(!re){V();return}i.value="ALL",l.value="",u.value=!1,T.value=[],p.value=[],v.value=void 0,S(),ut(()=>r.value?.focus())}),He(l,I),He(i,()=>{v.value=H.value[0]?.key,I()}),He([()=>n.nodeId,()=>n.workspaceId,()=>n.filesReady,()=>n.symbolsReady],I);function V(){w.cancel()}function N(){document.visibilityState==="hidden"?V():n.open&&(S(),I())}let h=[];Dt(()=>{const re=()=>r.value?.closest('[role="dialog"]')??void 0;h=[xt.register({command:"quickOpen.choose",scope:"overlay",priority:130,owner:()=>r.value,keys:Zi.choose,when:()=>n.open&&!u.value&&H.value[X.value]!==void 0,execute:ge=>(F(void 0,ge.ctrlKey||ge.metaKey),"HANDLED")}),xt.register({command:"quickOpen.dismiss",scope:"overlay",priority:130,owner:re,keys:Zi.dismiss,when:()=>n.open,execute:()=>(a("close"),"HANDLED")})],typeof document<"u"&&typeof document.addEventListener=="function"&&document.addEventListener("visibilitychange",N)}),mt(()=>{h.forEach(re=>re()),w.dispose(),typeof document<"u"&&typeof document.removeEventListener=="function"&&document.removeEventListener("visibilitychange",N)});function F(re=H.value[X.value],ge=!1){if(!(re===void 0||u.value)&&!((re.kind==="FILE"||re.kind==="SYMBOL")&&(re.nodeId!==n.nodeId||re.workspaceId!==n.workspaceId))){if(u.value=!0,a("close",!0),re.kind==="FILE"||re.kind==="SYMBOL"){a("openFile",re.path,re.line,re.column,ge);return}if(re.kind==="SESSION"){n.openSession(re.sessionId);return}n.openWorkspace(re.nodeId,re.workspaceId)}}function z(re){const ce=(sr(l.value.trim(),void 0,typeof window>"u"?"http://localhost":window.location.origin)?.path??l.value.trim()).toLocaleLowerCase().split(/\s+/u).filter(Boolean),oe=re.toLocaleLowerCase(),P=new Set;for(const ue of ce){let ne=0;const M=[];for(const ee of ue){const le=oe.indexOf(ee,ne);if(le<0){M.length=0;break}M.push(le),ne=le+1}for(const ee of M)P.add(ee)}const G=[];for(let ue=0;ue<re.length;ue+=1){const ne={text:re[ue]??"",matched:P.has(ue)},M=G.at(-1);M?.matched===ne.matched?M.text+=ne.text:G.push(ne)}return G}function fe(re){v.value=re,ut(()=>{s.value?.querySelector('li[aria-selected="true"]')?.scrollIntoView({block:"nearest"})})}function J(re){re.isComposing||re.keyCode===229||(re.key==="ArrowDown"&&H.value.length>0?(re.preventDefault(),fe(H.value[(X.value+1)%H.value.length]?.key)):re.key==="ArrowUp"&&H.value.length>0&&(re.preventDefault(),fe(H.value[(X.value-1+H.value.length)%H.value.length]?.key)))}return(re,ge)=>{const ce=bt,oe=Xt;return e.open?(f(),we(oe,{key:0,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),"model-value":e.open,title:o(c)("generated.quickOpenDialog.quickOpen"),class:Ke(["quick-open-dialog",{"has-status-notices":U.value.length>0}]),width:"min(680px, calc(100vw - 32px))","show-close":!1,onClose:ge[1]||(ge[1]=P=>a("close")),onOpened:ge[2]||(ge[2]=P=>r.value?.focus()),"close-icon":o(qe)("close")},{default:Z(()=>[K("div",{class:"quick-open-tabs",role:"tablist","aria-label":o(c)("generated.quickOpenDialog.resultTypes")},[(f(),O(Ve,null,Je(["ALL","WORKSPACE","SESSION","FILE","SYMBOL"],P=>K("button",{key:P,type:"button",role:"tab","aria-selected":i.value===P,onClick:G=>i.value=P},W(o(c)(`generated.quickOpenDialog.${P.toLocaleLowerCase()}`)),9,UE)),64))],8,FE),Le(K("input",{ref_key:"input",ref:r,"onUpdate:modelValue":ge[0]||(ge[0]=P=>l.value=P),class:"quick-open-input","aria-label":o(c)("generated.quickOpenDialog.quickOpen"),autocomplete:"off",placeholder:o(c)("generated.quickOpenDialog.enterANameOrPath"),onKeydown:J},null,40,VE),[[Wf,l.value]]),H.value.length>0?(f(),O("ul",{key:0,ref_key:"results",ref:s,class:"quick-open-results",role:"listbox"},[(f(!0),O(Ve,null,Je(H.value,(P,G)=>(f(),O("li",{key:P.key,role:"option","aria-selected":G===X.value},[K("button",{type:"button",onClick:ue=>F(P,ue.ctrlKey||ue.metaKey)},[B(yn,{name:P.kind==="WORKSPACE"?P.workspaceLabel:P.kind==="FILE"?P.name:P.kind==="SESSION"?P.title:P.path},null,8,["name"]),K("span",BE,[K("span",GE,[(f(!0),O(Ve,null,Je(z(P.kind==="FILE"?P.name:P.kind==="SYMBOL"?P.symbol:P.kind==="SESSION"?P.title:P.workspaceLabel),(ue,ne)=>(f(),O("span",{key:ne,class:Ke({"quick-open-match":ue.matched})},W(ue.text),3))),128))]),P.kind!=="SESSION"?(f(),O("code",zE,[(f(!0),O(Ve,null,Je(z(P.path),(ue,ne)=>(f(),O("span",{key:ne,class:Ke({"quick-open-match":ue.matched})},W(ue.text),3))),128)),P.kind==="SYMBOL"?(f(),O("span",KE,":"+W(P.line)+W(P.column===void 0?"":`:${P.column}`),1)):ve("",!0)])):ve("",!0)]),K("span",{class:Ke(["entry-kind",{"entry-kind-workspace":P.kind==="WORKSPACE","entry-kind-session":P.kind==="SESSION","entry-kind-file":P.kind==="FILE","entry-kind-definition":P.kind==="SYMBOL"&&P.source==="DEFINITION","entry-kind-reference":P.kind==="SYMBOL"&&P.source==="REFERENCE"}])},W(o(c)(P.kind==="SYMBOL"?P.source==="DEFINITION"?"generated.quickOpenDialog.definition":"generated.quickOpenDialog.reference":P.kind==="FILE"?"generated.quickOpenDialog.file":P.kind==="SESSION"?"generated.quickOpenDialog.session":"generated.quickOpenDialog.workspace")),3),P.kind==="WORKSPACE"?(f(),O("small",jE,W(P.nodeLabel),1)):P.kind==="SESSION"?(f(),O("small",_E,W(P.runner),1)):P.kind==="SYMBOL"&&P.detail?(f(),O("small",YE,W(P.detail),1)):ve("",!0)],8,HE)],8,qE))),128))],512)):Y.value?(f(),O("p",QE,[B(De,{name:"loading-action"}),ke(" "+W(o(c)("generated.quickOpenDialog.searching")),1)])):U.value.length===0?(f(),O("p",JE,W(o(c)("generated.quickOpenDialog.noMatches")),1)):ve("",!0),K("div",XE,[(f(!0),O(Ve,null,Je(U.value,P=>(f(),O("div",{key:P.kind,class:"quick-open-status","data-source":P.kind},[K("span",null,W(o(c)(P.label))+": "+W(Q(P.status)),1),P.status.error!==void 0?(f(),O("details",eR,[K("summary",tR,[B(De,{class:"mar-disclosure-icon",name:"chevron-right"}),ke(W(o(c)("generated.quickOpenDialog.details")),1)]),K("pre",null,W(o(it)(P.status.error)),1)])):ve("",!0),P.status.phase==="FAILED"||P.status.phase==="TIMED_OUT"?(f(),we(ce,{key:1,link:"",onClick:G=>$(P.kind)},{default:Z(()=>[ke(W(o(c)("generated.quickOpenDialog.retry")),1)]),_:1},8,["onClick"])):ve("",!0)],8,ZE))),128))])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","model-value","title","class","close-icon"])):ve("",!0)}}}),aR=dt(nR,[["__scopeId","data-v-627aea6d"]]),oR=["aria-label"],rR={key:0,class:"recent-sessions-empty"},iR={key:1,class:"recent-sessions-list"},sR=["onClick"],lR={class:"recent-session-heading"},cR={class:"recent-session-title"},dR={key:0,class:"recent-session-unread mar-unread-label"},uR=["datetime"],vR=at({__name:"WorkbenchRecentSessionList",props:{sessionGroup:{},runs:{},hasUnreadSession:{type:Function},mobileMode:{type:Boolean},runTime:{type:Function}},emits:["openRecentRun","selectGroup"],setup(e,{emit:t}){const n=t,a={STARTING:"workbenchNotificationCenter.runStatus.STARTING",RUNNING:"workbenchNotificationCenter.runStatus.RUNNING",CANCELLING:"workbenchNotificationCenter.runStatus.CANCELLING",SUCCEEDED:"workbenchNotificationCenter.runStatus.SUCCEEDED",FAILED:"workbenchNotificationCenter.runStatus.FAILED",CANCELLED:"workbenchNotificationCenter.runStatus.CANCELLED",INTERRUPTED:"workbenchNotificationCenter.runStatus.INTERRUPTED"};function r(i){return i.status==="INTERRUPTED"&&i.interruptionReason==="USER_STOP"?"CANCELLED":i.status}function s(i){const l=r(i);return l==="SUCCEEDED"?"info":l==="FAILED"?"danger":l==="STARTING"||l==="RUNNING"?"success":l==="CANCELLING"||l==="INTERRUPTED"?"warning":"info"}return(i,l)=>{const v=da,u=St("tooltip");return f(),O("section",{class:Ke(["recent-sessions-panel",{"drawer-mode":e.mobileMode}]),"aria-label":o(c)("workbenchNotificationCenter.recentSessions")},[B(yc,{class:"recent-session-groups","model-value":e.sessionGroup,"onUpdate:modelValue":l[0]||(l[0]=d=>n("selectGroup",d))},null,8,["model-value"]),e.runs.length===0?(f(),O("p",rR,W(o(c)("workbenchNotificationCenter.noRecentSessions")),1)):(f(),O("ul",iR,[(f(!0),O(Ve,null,Je(e.runs,d=>(f(),O("li",{key:`${d.nodeId}:${d.runId}`},[Le((f(),O("button",{type:"button",onClick:w=>n("openRecentRun",d)},[K("span",lR,[K("span",cR,W(o(c)("workbenchNotificationCenter.recentRunTitle",{value0:d.workspaceName??d.workspaceId,value1:d.sessionTitle})),1),e.hasUnreadSession(d.nodeId,d.workspaceId,d.sessionId)?(f(),O("span",dR,W(o(c)("sessionGroups.unread")),1)):ve("",!0)]),B(v,{size:"small",type:s(d)},{default:Z(()=>[ke(W(o(c)(a[r(d)])),1)]),_:2},1032,["type"]),Le((f(),O("small",null,[ke(W(d.userMessage),1)])),[[u,d.userMessage]]),K("time",{datetime:new Date(o(_a)(d)).toISOString()},W(e.runTime(d)),9,uR)],8,sR)),[[u,o(c)("workbenchNotificationCenter.recentRunTitle",{value0:d.workspaceName??d.workspaceId,value1:d.sessionTitle})]])]))),128))]))],10,oR)}}}),fR=dt(vR,[["__scopeId","data-v-de885255"]]),pR=["aria-label"],gR={key:0,class:"workbench-notification-toolbar"},mR={class:"workbench-notification-section"},hR=["aria-label"],yR={class:"workbench-upload-size"},wR=["value","max"],kR={class:"workbench-notification-upload-actions"},bR=["aria-label","onClick"],IR={key:1,class:"workbench-notification-empty"},SR={key:2,class:"workbench-notification-list"},CR=["onClick"],TR={class:"workbench-notification-title"},ER={key:0,class:"notification-unread-label mar-unread-label"},RR=["datetime"],AR=["aria-label","onClick"],NR=at({__name:"WorkbenchNotificationList",props:{service:{},uploads:{},statusLabel:{type:Function},previewId:{}},emits:["openNotification","retryUpload","cancelUpload","removeUpload"],setup(e,{emit:t}){const n=e,a=t,r=j(()=>n.uploads.filter(i=>["QUEUED","UPLOADING","FAILED","INTERRUPTED"].includes(i.status)&&(n.previewId===void 0||`upload:${i.id}`===n.previewId))),s=j(()=>{const i=new Set(r.value.map(l=>`upload:${l.id}`));return n.service.notifications.value.filter(l=>!i.has(l.id)&&(n.previewId===void 0||l.id===n.previewId))});return(i,l)=>{const v=bt,u=St("tooltip");return f(),O("section",{class:"workbench-notification-content","aria-label":o(c)("generated.workbenchNotificationCenter.notifications")},[e.previewId===void 0?(f(),O("header",gR,[K("span",null,W(o(c)("activityCenter.unreadCount",{count:e.service.unreadCount.value})),1),e.service.unreadCount.value>0?(f(),we(v,{key:0,class:"workbench-notification-mark-all utility-control",link:"",onClick:l[0]||(l[0]=d=>e.service.markAllRead())},{default:Z(()=>[ke(W(o(c)("generated.workbenchNotificationCenter.markAllRead")),1)]),_:1})):ve("",!0)])):ve("",!0),K("div",mR,[r.value.length?(f(),O("section",{key:0,class:"workbench-notification-upload-list","aria-label":o(c)("generated.workbenchNotificationCenter.fileTransfers")},[(f(!0),O(Ve,null,Je(r.value,d=>(f(),O("div",{key:d.id,class:"workbench-notification-upload"},[B(De,{name:"upload"}),K("div",null,[Le((f(),O("strong",null,[ke(W(d.name),1)])),[[u,d.name]]),K("small",null,[K("span",yR,W(o(ja)(d.receivedBytes))+" / "+W(o(ja)(d.size)),1),ke(" · "+W(e.statusLabel(d))+" ",1),d.error?(f(),O(Ve,{key:0},[ke(" · "+W(d.error),1)],64)):ve("",!0),d.cleanupUnconfirmed?(f(),O(Ve,{key:1},[ke(" · "+W(o(c)("errors.UPLOAD_CLEANUP_UNCONFIRMED")),1)],64)):ve("",!0)]),K("progress",{value:d.receivedBytes,max:Math.max(d.size,1)},null,8,wR)]),K("div",kR,[d.status==="FAILED"||d.status==="INTERRUPTED"?(f(),we(v,{key:0,class:"utility-control",link:"",onClick:w=>a("retryUpload",d)},{default:Z(()=>[ke(W(d.file===void 0?o(c)("generated.workbenchNotificationCenter.resume"):o(c)("generated.workbenchNotificationCenter.retry")),1)]),_:2},1032,["onClick"])):ve("",!0),d.status==="FAILED"||d.status==="INTERRUPTED"?(f(),O("button",{key:1,type:"button",class:"icon-button utility-control workbench-notification-delete","aria-label":o(c)("generated.workbenchNotificationCenter.delete",{value0:d.name}),onClick:w=>a("removeUpload",d)},[B(De,{name:"delete"})],8,bR)):(f(),we(v,{key:2,class:"utility-control",link:"",onClick:w=>a("cancelUpload",d)},{default:Z(()=>[ke(W(o(c)("generated.workbenchNotificationCenter.cancel")),1)]),_:1},8,["onClick"]))])]))),128))],8,hR)):ve("",!0),s.value.length===0&&r.value.length===0?(f(),O("p",IR,W(o(c)("generated.workbenchNotificationCenter.noNotifications")),1)):(f(),O("ul",SR,[(f(!0),O(Ve,null,Je(s.value,d=>(f(),O("li",{key:d.id,class:Ke({unread:!d.read})},[K("button",{type:"button",onClick:w=>a("openNotification",d)},[K("span",TR,[K("strong",null,W(d.title),1),d.read?ve("",!0):(f(),O("span",ER,W(o(c)("generated.workbenchNotificationCenter.unread")),1))]),K("small",null,W(d.message),1),K("time",{datetime:new Date(d.updatedAt).toISOString()},W(o(Gt)(d.updatedAt)),9,RR)],8,CR),K("button",{class:"icon-button utility-control workbench-notification-delete","aria-label":o(c)("generated.workbenchNotificationCenter.deleteNotification",{value0:d.title}),type:"button",onClick:w=>e.service.remove(d.id)},[B(De,{name:"delete"})],8,AR)],2))),128))]))])],8,pR)}}}),Ac=dt(NR,[["__scopeId","data-v-bfe2757c"]]),DR=["aria-label"],PR={key:0,class:"activity-unread-count mar-activity-count-badge","aria-hidden":"true"},OR=["id","aria-labelledby","aria-label"],LR={class:"activity-running-count"},WR=["id","aria-labelledby"],MR=at({__name:"WorkbenchActivityPanel",props:{service:{},uploads:{},statusLabel:{type:Function},page:{},sessionGroup:{},mobileMode:{type:Boolean}},emits:["update:page","update:sessionGroup","openRecentRun","openNotification","retryUpload","cancelUpload","removeUpload"],setup(e,{emit:t}){const n=e,a=t,r=`activity-${wl()}`,s=j(()=>[{id:"recent-sessions",label:c("workbenchNotificationCenter.recentSessions")},{id:"notifications",label:c("generated.workbenchNotificationCenter.notifications"),description:c("activityCenter.unreadCount",{count:n.service.unreadCount.value})}]),i=j(()=>n.service.recentRuns.value.filter(k=>(k.sessionGroup??"MAIN")===n.sessionGroup)),l=j(()=>n.service.recentRuns.value.filter(k=>Nn(k.status)).length),v=x(Date.now()),u=setInterval(()=>{v.value=Date.now()},1e3);mt(()=>clearInterval(u));function d(k){return Nn(k.status)?c("workbenchNotificationCenter.runningElapsed",{duration:pm(v.value-k.startedAt),startedAt:Gt(k.startedAt)}):Gt(_a(k))}function w(k){(k==="recent-sessions"||k==="notifications")&&a("update:page",k)}return(k,T)=>(f(),O("section",{class:Ke(["workbench-activity-panel",{"mobile-mode":e.mobileMode}]),"aria-label":o(c)("activityCenter.title")},[B(Bl,{class:"activity-tabs",size:"small","activation-mode":"automatic",items:s.value,"active-id":e.page,"id-prefix":r,label:o(c)("activityCenter.title"),onActivate:w},{label:Z(({item:p})=>[K("span",null,W(p.label),1),p.id==="notifications"&&e.service.unreadCount.value>0?(f(),O("span",PR,W(e.service.unreadCount.value>99?"99+":e.service.unreadCount.value),1)):ve("",!0)]),_:1},8,["items","active-id","label"]),Le(K("div",{class:"activity-tabpanel activity-recent-content",role:"tabpanel",id:o(fn)(r,"recent-sessions").panel,"aria-labelledby":o(fn)(r,"recent-sessions").tab,"aria-label":o(c)("workbenchNotificationCenter.recentSessions")},[e.page==="recent-sessions"?(f(),O(Ve,{key:0},[K("p",LR,W(o(c)("activityCenter.runningCount",{count:l.value})),1),B(fR,{runs:i.value,"has-unread-session":e.service.hasUnreadSession,"session-group":e.sessionGroup,"mobile-mode":e.mobileMode,"run-time":d,onSelectGroup:T[0]||(T[0]=p=>a("update:sessionGroup",p)),onOpenRecentRun:T[1]||(T[1]=p=>a("openRecentRun",p))},null,8,["runs","has-unread-session","session-group","mobile-mode"])],64)):ve("",!0)],8,OR),[[At,e.page==="recent-sessions"]]),Le(K("div",{class:"activity-tabpanel activity-notification-content",role:"tabpanel",id:o(fn)(r,"notifications").panel,"aria-labelledby":o(fn)(r,"notifications").tab},[e.page==="notifications"?(f(),we(Ac,{key:0,service:e.service,uploads:e.uploads,"status-label":e.statusLabel,onOpenNotification:T[2]||(T[2]=p=>a("openNotification",p)),onRetryUpload:T[3]||(T[3]=p=>a("retryUpload",p)),onCancelUpload:T[4]||(T[4]=p=>a("cancelUpload",p)),onRemoveUpload:T[5]||(T[5]=p=>a("removeUpload",p))},null,8,["service","uploads","status-label"])):ve("",!0)],8,WR),[[At,e.page==="notifications"]])],10,DR))}}),il=dt(MR,[["__scopeId","data-v-d7d33967"]]),xR=["aria-label","aria-description","aria-keyshortcuts","aria-expanded"],$R={key:0,class:"activity-entry-count mar-activity-count-badge","aria-hidden":"true"},FR={key:1,class:"activity-entry-running mar-icon-status-badge","aria-hidden":"true"},UR=at({__name:"WorkbenchActivityCenter",props:{service:{},uploads:{},statusLabel:{},mobileMode:{type:Boolean},mobileOpen:{type:Boolean},mobilePresented:{type:Boolean,default:void 0},mobilePanelTarget:{},previewSuppressed:{type:Boolean}},emits:["update:mobileOpen","openRecentRun","openNotification","retryUpload","cancelUpload","removeUpload"],setup(e,{emit:t}){const n=e,a=t,r=x(),s=x(!1),i=x("recent-sessions"),l=x("MAIN"),v=x(),u=x(!1);let d;const w=j({get:()=>n.mobileMode?n.mobileOpen===!0:s.value,set:m=>{n.mobileMode?a("update:mobileOpen",m):s.value=m}}),k=j({get:()=>u.value||!n.mobileMode&&w.value,set:m=>{m||(g(),n.mobileMode||(w.value=!1))}}),T=j(()=>n.service.recentRuns.value.filter(m=>Nn(m.status)).length),p=j(()=>[c("activityCenter.runningCount",{count:T.value}),c("activityCenter.unreadCount",{count:n.service.unreadCount.value})].join(", "));function g(){d!==void 0&&clearTimeout(d),d=void 0,u.value=!1}He(w,m=>{g(),m&&(v.value=void 0,i.value=n.service.unreadCount.value>0?"notifications":"recent-sessions",n.service.load().catch(()=>{}))},{immediate:!0}),He(()=>n.service.notificationRevision.value,()=>{if(w.value||n.previewSuppressed)return;const m=n.service.previewNotificationId.value;m!==void 0&&(g(),v.value=m,u.value=!0,d=setTimeout(g,8e3))}),He(()=>n.previewSuppressed,m=>{m&&g()}),He(()=>n.service.notifications.value,m=>{v.value!==void 0&&!m.some(A=>A.id===v.value)&&g()}),He(()=>n.mobileMode,()=>{s.value=!1,g()});function R(){g(),w.value=!w.value}function b(m){g(),w.value=!1,a("openNotification",m)}function C(m){w.value=!1,a("openRecentRun",m)}let I,S;return Dt(()=>{I=xt.register({command:"activityCenter.toggle",priority:30,scope:"global",keys:es,when:()=>!0,execute:m=>(m.repeat||(!n.mobileMode&&!s.value&&r.value?.querySelector("button")?.focus(),R()),"HANDLED")}),S=xt.register({command:"activityCenter.dismiss",priority:110,scope:"overlay",keys:[{key:"Escape"}],when:()=>k.value,execute:()=>(k.value=!1,"HANDLED")})}),mt(()=>{g(),I?.(),S?.()}),(m,A)=>(f(),O("div",{class:Ke(["workbench-activity-center",{"mobile-mode":e.mobileMode}])},[K("span",{ref_key:"trigger",ref:r,class:"activity-reference"},[K("button",{class:Ke(["activity-center-trigger",{active:w.value}]),type:"button","aria-label":o(c)("activityCenter.title"),"aria-description":p.value,"aria-keyshortcuts":o(es).map(L=>o(zp)(L,!0)).join(" "),"aria-expanded":w.value,onClick:rt(R,["stop"])},[B(De,{name:"recent-sessions","aria-hidden":"true"}),e.service.unreadCount.value>0?(f(),O("span",$R,W(e.service.unreadCount.value>99?"99+":e.service.unreadCount.value),1)):ve("",!0),T.value>0?(f(),O("span",FR)):ve("",!0)],10,xR)],512),r.value?(f(),we(o(Nr),{key:0,visible:k.value,"onUpdate:visible":A[8]||(A[8]=L=>k.value=L),"virtual-triggering":"","virtual-ref":r.value,trigger:"click","trigger-keys":[],"hide-after":0,placement:e.mobileMode?"bottom-start":"right-start",width:"min(390px, calc(100vw - 16px))","show-arrow":!e.mobileMode&&v.value!==void 0,"popper-options":{modifiers:[{name:"preventOverflow",options:{padding:8}}]},persistent:!1,"popper-class":v.value!==void 0?"workbench-activity-popover is-preview":"workbench-activity-popover"},{default:Z(()=>[v.value!==void 0?(f(),we(Ac,{key:0,class:"activity-preview",service:e.service,uploads:e.uploads,"status-label":e.statusLabel,"preview-id":v.value,onOpenNotification:b,onRetryUpload:A[0]||(A[0]=L=>a("retryUpload",L)),onCancelUpload:A[1]||(A[1]=L=>a("cancelUpload",L)),onRemoveUpload:A[2]||(A[2]=L=>a("removeUpload",L))},null,8,["service","uploads","status-label","preview-id"])):e.mobileMode?ve("",!0):(f(),we(il,{key:1,page:i.value,"onUpdate:page":A[3]||(A[3]=L=>i.value=L),"session-group":l.value,"onUpdate:sessionGroup":A[4]||(A[4]=L=>l.value=L),service:e.service,uploads:e.uploads,"status-label":e.statusLabel,"mobile-mode":!1,onOpenRecentRun:C,onOpenNotification:b,onRetryUpload:A[5]||(A[5]=L=>a("retryUpload",L)),onCancelUpload:A[6]||(A[6]=L=>a("cancelUpload",L)),onRemoveUpload:A[7]||(A[7]=L=>a("removeUpload",L))},null,8,["page","session-group","service","uploads","status-label"]))]),_:1},8,["visible","virtual-ref","placement","show-arrow","popper-class"])):ve("",!0),e.mobileMode&&(e.mobilePresented??w.value)&&e.mobilePanelTarget?(f(),we(la,{key:1,to:e.mobilePanelTarget},[B(il,{page:i.value,"onUpdate:page":A[9]||(A[9]=L=>i.value=L),"session-group":l.value,"onUpdate:sessionGroup":A[10]||(A[10]=L=>l.value=L),service:e.service,uploads:e.uploads,"status-label":e.statusLabel,"mobile-mode":!0,onOpenRecentRun:C,onOpenNotification:b,onRetryUpload:A[11]||(A[11]=L=>a("retryUpload",L)),onCancelUpload:A[12]||(A[12]=L=>a("cancelUpload",L)),onRemoveUpload:A[13]||(A[13]=L=>a("removeUpload",L))},null,8,["page","session-group","service","uploads","status-label"])],8,["to"])):ve("",!0)],2))}}),VR=dt(UR,[["__scopeId","data-v-ff98e261"]]),qR=["aria-label"],HR=["aria-label"],BR={class:"panel-heading-actions"},GR={class:"category-values"},zR={key:1},KR=at({__name:"WebPerformanceIndicator",props:{diagnostics:{}},setup(e){const t=e,{t:n,locale:a}=Dn(),r=t.diagnostics.snapshot,s=["run","conversation","watch","notification","queue","workspace","session","node","control","other"],i=j(()=>s.map(p=>({category:p,count:r.value.categories[p]??0})).filter(p=>p.count>0)),l=j(()=>n(`performanceDiagnostics.health.${r.value.health}`)),v=j(()=>n(`performanceDiagnostics.connection.${r.value.connectionState}`));function u(p){return new Intl.NumberFormat(a.value,{maximumFractionDigits:1}).format(p)}function d(){const p=r.value.heap;return p===void 0?n("common.unavailable"):n("performanceDiagnostics.heapValue",{used:u(p.usedBytes/1048576),limit:u(p.limitBytes/1048576),percentage:u(p.limitBytes<=0?0:p.usedBytes/p.limitBytes*100)})}function w(){const p=r.value.pingLatencyMs;return p===void 0?n("common.unavailable"):n("performanceDiagnostics.pingLatencyValue",{duration:u(p)})}function k(){return r.value.lastMessageAt===void 0?n("common.unavailable"):Gt(r.value.lastMessageAt)}async function T(){try{await navigator.clipboard.writeText(JSON.stringify(t.diagnostics.detail(),null,2)),et(n("performanceDiagnostics.copySucceeded"),"info")}catch{et(n("performanceDiagnostics.copyFailed"),"error")}}return Dt(t.diagnostics.start),mt(t.diagnostics.dispose),(p,g)=>{const R=bt,b=Nr,C=St("tooltip");return f(),we(b,{placement:"right-end",trigger:["hover","focus"],width:320,"show-after":180,"hide-after":80},{reference:Z(()=>[K("button",{class:"web-performance-indicator icon-button utility-control",type:"button","aria-label":o(n)("performanceDiagnostics.title")},[B(De,{"aria-hidden":"true",name:"info"})],8,qR)]),default:Z(()=>[K("section",{class:"web-performance-panel","aria-label":o(n)("performanceDiagnostics.title")},[K("header",null,[K("strong",null,W(o(n)("performanceDiagnostics.title")),1),K("div",BR,[K("span",{class:Ke(`is-${o(r).health}`)},W(l.value),3),Le((f(),we(R,{link:"","aria-label":o(n)("performanceDiagnostics.copy"),onClick:T},{default:Z(()=>[B(De,{name:"copy"})]),_:1},8,["aria-label"])),[[C,o(n)("performanceDiagnostics.copy")]])])]),K("dl",null,[K("dt",null,W(o(n)("performanceDiagnostics.connectionLabel")),1),K("dd",null,W(v.value),1),K("dt",null,W(o(n)("performanceDiagnostics.pingLatency")),1),K("dd",null,W(w()),1),K("dt",null,W(o(n)("performanceDiagnostics.lastMessage")),1),K("dd",null,W(k()),1),K("dt",null,W(o(n)("performanceDiagnostics.messageRate")),1),K("dd",null,W(o(n)("performanceDiagnostics.rateValue",{current:o(r).messagesPerSecond,peak:o(r).peakMessagesPerSecond,kilobytes:u(o(r).kilobytesPerSecond)})),1),K("dt",null,W(o(n)("performanceDiagnostics.categories")),1),K("dd",GR,[i.value.length?(f(!0),O(Ve,{key:0},Je(i.value,I=>(f(),O("span",{key:I.category},W(o(n)(`performanceDiagnostics.category.${I.category}`))+" "+W(I.count)+"/s ",1))),128)):(f(),O("span",zR,W(o(n)("performanceDiagnostics.noRealtimeMessages")),1))]),K("dt",null,W(o(n)("performanceDiagnostics.activeRunSessions")),1),K("dd",null,W(o(r).activeRunSessions),1),K("dt",null,W(o(n)("performanceDiagnostics.processing")),1),K("dd",null,W(o(n)("performanceDiagnostics.processingValue",{average:u(o(r).processing.averageMs),p95:u(o(r).processing.p95Ms),maximum:u(o(r).processing.maxMs)})),1),K("dt",null,W(o(n)("performanceDiagnostics.longTasks")),1),K("dd",null,W(o(r).longTasks.available?o(n)("performanceDiagnostics.longTaskValue",{count:o(r).longTasks.count,duration:u(o(r).longTasks.totalDurationMs)}):o(n)("common.unavailable")),1),K("dt",null,W(o(n)("performanceDiagnostics.mainThreadDelay")),1),K("dd",null,W(u(o(r).eventLoopDelayMs))+" ms",1),K("dt",null,W(o(n)("performanceDiagnostics.pageScale")),1),K("dd",null,W(o(n)("performanceDiagnostics.pageScaleValue",{dom:o(r).domNodes,messages:o(r).messageCards})),1),K("dt",null,W(o(n)("performanceDiagnostics.jsHeap")),1),K("dd",null,W(d()),1)]),K("p",null,W(o(n)("performanceDiagnostics.scopeHint")),1)],8,HR)]),_:1})}}}),jR=dt(KR,[["__scopeId","data-v-5c2d70a5"]]);function _R(e,t,n,a,r){const s=r.trim().toLocaleLowerCase();return s.length===0?e.map(i=>({node:i,workspaces:t(i.id)})):e.flatMap(i=>{const l=Ma(n(i),s),u=t(i.id).filter(d=>Ma(a(d),s)||Ma(d.path,s)||Ma(d.groupName??"",s));return l||u.length>0?[{node:i,workspaces:u}]:[]})}function sl(e){const t=new Map;for(const n of e){const a=n.groupName?.trim()||null,r=t.get(a)??[];r.push(n),t.set(a,r)}return[...t.entries()].sort(([n],[a])=>n===null?a===null?0:1:a===null?-1:n.localeCompare(a)).map(([n,a])=>({groupName:n,workspaces:a}))}function Ma(e,t){return e.toLocaleLowerCase().includes(t)}const YR={class:"workspace-tree-filter"},QR=["onMouseenter","onFocusin","onContextmenu","onDragover","onDrop"],JR=["aria-expanded","aria-label","onClick"],XR={key:1,class:"node-expand-spacer","aria-hidden":"true"},ZR=["aria-label","draggable","onDragstart","onClick"],eA={class:"tree-node-content"},tA={class:"tree-node-icon","aria-hidden":"true"},nA=["aria-label"],aA={key:0,class:"workspace-branches"},oA=["draggable","onMouseenter","onFocusin","onContextmenu","onDragenter","onDragover","onDrop","onDragstart"],rA=["aria-label","onClick"],iA={class:"workspace-branch-content"},sA=["aria-label"],lA=["aria-label","aria-expanded","onDragenter","onDragover","onDrop","onClick"],cA={key:0,class:"workspace-branches workspace-group-branches"},dA=["draggable","onMouseenter","onFocusin","onContextmenu","onDragenter","onDragover","onDrop","onDragstart"],uA=["aria-label","onClick"],vA={class:"workspace-branch-content"},fA=["aria-label"],pA={key:1,class:"tree-filter-empty"},gA={key:2,class:"tree-foot"},mA={key:1,class:"tree-empty"},hA={class:"workspace-group-move-control"},yA={class:"workspace-group-move-hint"},wA={key:0,class:"workspace-group-move-error"},kA=at({__name:"WorkspaceTree",props:{nodes:{},expandedNodeIds:{},workspaceTarget:{},revealTarget:{},visible:{type:Boolean},draggingWorkspace:{},mobileViewport:{type:Boolean},loading:{type:Boolean},nodeLabel:{type:Function},workspaceLabel:{type:Function},workspaces:{type:Function}},emits:["moveNode","moveWorkspace","toggleNode","refreshNodeWorkspaces","addWorkspace","openNodeDetails","openWorkspace","startWorkspaceDrag","endWorkspaceDrag","reorderWorkspace","moveWorkspaceToGroup","moveWorkspaceGroup","removeWorkspace","openWorkspaceDetails","renameWorkspace"],setup(e,{emit:t}){const n=e,a=x(""),r=x(),s=x(!1);function i(){s.value=!window.matchMedia("(prefers-reduced-motion: reduce)").matches,ut(()=>s.value=!1)}function l(Re){const de=Re;de.inert=!1,de.style.setProperty("--workspace-branch-height",`${de.scrollHeight}px`)}function v(Re){const de=Re;de.style.setProperty("--workspace-branch-height",`${de.getBoundingClientRect().height}px`),de.inert=!0}function u(Re){const de=Re;de.style.removeProperty("--workspace-branch-height"),de.inert=!1}const d=j(()=>a.value.trim().length>0),w=j(()=>_R(n.nodes,n.workspaces,n.nodeLabel,n.workspaceLabel,a.value)),k=j(()=>w.value.map(Re=>({...Re,groups:sl(Re.workspaces)}))),T=Re=>d.value||n.expandedNodeIds.includes(Re),p=x([]),g=x(),R=x(),b=x(),C=x(),I=x(),S=x(),m=x(),A=j(()=>!n.mobileViewport&&!d.value),L=x(),y=x(),D=x(),E=x(),H=x(),X=x();He(()=>n.visible,Re=>{Re===!1&&(H.value=void 0,X.value=void 0)});const Y=x(!1),U=x(),Q=x("");function $(Re,de){return`${Re}:${de}`}function V(Re,de){return`${Re}:${de}`}function N(Re){return Re.workspaceCreatable===!0}function h(Re,de){const Ae=n.draggingWorkspace;if(!A.value||Ae?.nodeId!==Re.id)return!1;const he=n.workspaces(Re.id).find(q=>q.id===Ae.workspaceId);return he===void 0||he.id===de?.id?!1:de===void 0||N(Re)||(he.groupName?.trim()||null)===(de.groupName?.trim()||null)}function F(Re,de,Ae){if(J(),!h(de,Ae))return;Re.preventDefault(),g.value=V(de.id,Ae.id),(n.workspaces(de.id).find(q=>q.id===n.draggingWorkspace?.workspaceId)?.groupName?.trim()||null)===(Ae.groupName?.trim()||null)&&(R.value=Me(Re))}function z(Re,de,Ae){J(),!(!h(de)||!N(de))&&(Re.preventDefault(),b.value=$(de.id,Ae))}function fe(Re){const de=Re.currentTarget;Re.relatedTarget instanceof Node&&de.contains(Re.relatedTarget)||J()}function J(){g.value=void 0,R.value=void 0,b.value=void 0,m.value=void 0}function re(Re,de){return d.value||p.value.includes($(Re,de))}function ge(Re,de){i();const Ae=$(Re,de);p.value=p.value.includes(Ae)?p.value.filter(he=>he!==Ae):[...p.value,Ae]}const ce=j(()=>{const Re=n.revealTarget;if(Re===void 0||Re.nodeId!==n.workspaceTarget?.nodeId||Re.workspaceId!==n.workspaceTarget.workspaceId)return;const de=n.workspaces(Re.nodeId).find(Ae=>Ae.id===Re.workspaceId);return de===void 0?void 0:de.groupName?.trim()||""});He([()=>n.revealTarget,ce],([Re,de])=>{Re===void 0||de===void 0||(p.value=de?[$(Re.nodeId,de)]:[])},{immediate:!0}),He([()=>n.revealTarget,ce,()=>n.visible],async(Re,de,Ae)=>{let he=!1;if(Ae(()=>he=!0),await ut(),he||n.visible===!1||ce.value===void 0)return;const q=r.value?.querySelector(".workspace-branches li.selected > .workspace-branch-button");q?.getClientRects().length&&q.scrollIntoView({block:"nearest",inline:"nearest",behavior:"instant"})},{immediate:!0,flush:"post"});const oe=j(()=>{const Re=U.value;return Re===void 0?[]:sl(n.workspaces(Re.nodeId)).map(de=>de.groupName).filter(de=>de!==null)}),P=j(()=>(Q.value?.trim().length??0)>128);function G(Re,de){U.value={nodeId:Re,workspace:de},Q.value=de.groupName?.trim()??"",Y.value=!0}function ue(){Y.value=!1,U.value=void 0,Q.value=""}function ne(){const Re=U.value;if(Re===void 0||P.value)return;const de=Q.value?.trim()||null;M("moveWorkspaceGroup",Re.nodeId,Re.workspace,de),ue()}const M=t;function ee(Re,de){de==="details"?M("openNodeDetails",Re):de==="add"?M("addWorkspace",Re.id):de==="refresh"?M("refreshNodeWorkspaces",Re.id):!d.value&&(de==="up"||de==="down")&&M("moveNode",Re.id,n.nodes.findIndex(Ae=>Ae.id===Re.id)+(de==="up"?-1:1))}function le(Re,de){if(!A.value){Re.preventDefault();return}C.value=de,Re.dataTransfer!==null&&(Re.dataTransfer.setData("application/x-mar-node",de),Re.dataTransfer.effectAllowed="move")}function Ee(){C.value=void 0,I.value=void 0,S.value=void 0}function xe(Re,de){if(h(de)&&N(de)){Re.preventDefault(),J(),m.value=de.id;return}!A.value||C.value===void 0||C.value===de.id||(Re.preventDefault(),I.value=de.id,S.value=Me(Re))}function Me(Re){const de=Re.currentTarget.getBoundingClientRect();return Re.clientY<de.top+de.height/2?"before":"after"}function Se(Re){const de=Re.currentTarget;Re.relatedTarget instanceof Node&&de.contains(Re.relatedTarget)||(I.value=void 0,S.value=void 0,J())}function ye(Re,de){if(h(de)&&N(de)){ae(de,null);return}const Ae=C.value;if(Ee(),!A.value||Ae===void 0||Ae===de.id)return;const he=n.nodes.findIndex(_=>_.id===Ae),q=n.nodes.findIndex(_=>_.id===de.id);if(he<0||q<0)return;const te=q+(Me(Re)==="after"?1:0);M("moveNode",Ae,te-(he<te?1:0))}function Fe(Re,de,Ae){Ae==="details"?M("openWorkspaceDetails",Re.id,de):Ae==="rename"?M("renameWorkspace",Re.id,de):Ae==="delete"?M("removeWorkspace",Re.id,de):Ae==="move-group"?G(Re.id,de):!d.value&&(Ae==="up"||Ae==="down")&&M("moveWorkspace",Re.id,de.id,Ae==="up"?-1:1)}function Ye(Re,de,Ae){if(!A.value){Re.preventDefault();return}M("startWorkspaceDrag",Re,de.id,Ae.id)}function nt(Re,de,Ae){J(),h(de,Ae)&&M("reorderWorkspace",de.id,Ae,Me(Re))}function ae(Re,de){J(),h(Re)&&N(Re)&&M("moveWorkspaceToGroup",Re.id,de)}function me(Re){return n.visible===!1?!1:n.mobileViewport||L.value===Re||y.value===Re||H.value===Re}function Pe(Re,de){if(n.visible===!1)return!1;const Ae=V(Re,de);return n.mobileViewport||D.value===Ae||E.value===Ae||X.value===Ae}function Ue(Re,de){const Ae=Re.currentTarget;Ae instanceof HTMLElement&&Re.relatedTarget instanceof Node&&Ae.contains(Re.relatedTarget)||de()}function Qe(Re,de){L.value=Re,ut(()=>de.querySelector(".tree-more-button")?.click())}function Te(Re,de,Ae){D.value=V(Re,de),ut(()=>Ae.querySelector(".tree-more-button")?.click())}function Ge(Re,de){Re.preventDefault();const Ae=Re.currentTarget;Ae instanceof HTMLElement&&Qe(de,Ae)}function _e(Re,de,Ae){Re.preventDefault();const he=Re.currentTarget;he instanceof HTMLElement&&Te(de,Ae,he)}function tt(Re){i(),M("toggleNode",Re)}function Xe(Re,de){M("openWorkspace",Re,de)}return(Re,de)=>{const Ae=Ft,he=ln,q=sn,te=rn,_=Un,se=wn,be=bt,Oe=Xt,We=St("tooltip");return f(),O(Ve,null,[e.nodes.length?(f(),O(Ve,{key:0},[K("div",YR,[B(Ae,{modelValue:a.value,"onUpdate:modelValue":de[0]||(de[0]=Ie=>a.value=Ie),clearable:"","aria-label":o(c)("generated.workspaceTree.filterNodeWorkspaces"),placeholder:o(c)("generated.workspaceTree.filterNodeWorkspaces"),size:"small","clear-icon":o(qe)("clear-input")},{prefix:Z(()=>[B(De,{name:"search"})]),_:1},8,["modelValue","aria-label","placeholder","clear-icon"])]),w.value.length?(f(),O("ul",{key:0,ref_key:"nodeTreeElement",ref:r,class:"node-tree"},[(f(!0),O(Ve,null,Je(k.value,(Ie,st)=>(f(),O("li",{key:Ie.node.id},[K("div",{class:Ke(["tree-node-row",{dragging:C.value===Ie.node.id,"drop-before":I.value===Ie.node.id&&S.value==="before","drop-after":I.value===Ie.node.id&&S.value==="after","drop-target":m.value===Ie.node.id,"actions-visible":me(Ie.node.id)}]),onMouseenter:pe=>L.value=Ie.node.id,onMouseleave:de[2]||(de[2]=pe=>L.value=void 0),onFocusin:pe=>y.value=Ie.node.id,onFocusout:de[3]||(de[3]=pe=>Ue(pe,()=>y.value=void 0)),onContextmenu:pe=>Ge(pe,Ie.node.id),onDragover:rt(pe=>xe(pe,Ie.node),["stop"]),onDragleave:Se,onDrop:rt(pe=>ye(pe,Ie.node),["prevent","stop"])},[d.value?(f(),O("span",XR)):(f(),O("button",{key:0,class:Ke(["node-expand-button",{expanded:e.expandedNodeIds.includes(Ie.node.id)}]),"aria-expanded":T(Ie.node.id),"aria-label":e.expandedNodeIds.includes(Ie.node.id)?o(c)("generated.workspaceTree.collapseWorkspaces"):o(c)("generated.workspaceTree.expandWorkspaces"),type:"button",onClick:pe=>tt(Ie.node.id)},[B(De,{name:"chevron-right",class:"tree-chevron"})],10,JR)),Le((f(),O("button",{"aria-label":e.nodeLabel(Ie.node),class:"tree-node",draggable:A.value,onDragstart:rt(pe=>le(pe,Ie.node.id),["stop"]),onDragend:rt(Ee,["stop"]),type:"button",onClick:pe=>tt(Ie.node.id)},[K("span",eA,[K("span",tA,[B(De,{name:"node",class:"tree-type-icon"}),K("span",{class:Ke(["state-dot","mar-icon-status-badge",Ie.node.connected&&!Ie.node.disabled?"ready":"offline"])},null,2)]),K("span",null,W(e.nodeLabel(Ie.node)),1)])],40,ZR)),[[We,e.nodeLabel(Ie.node)]]),me(Ie.node.id)?(f(),we(te,{key:2,class:"tree-row-menu node-tree-actions",trigger:"click",onCommand:pe=>ee(Ie.node,pe),onVisibleChange:pe=>H.value=pe?Ie.node.id:void 0},{dropdown:Z(()=>[B(q,null,{default:Z(()=>[B(he,{command:"details",icon:o(qe)("view")},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.nodeDetails")),1)]),_:1},8,["icon"]),B(he,{command:"up",icon:o(qe)("chevron-up"),disabled:d.value||st===0},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveUp")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"down",icon:o(qe)("chevron-down"),disabled:d.value||st===k.value.length-1},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveDown")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"refresh",icon:o(qe)("refresh")},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.refreshWorkspaces")),1)]),_:1},8,["icon"]),B(he,{command:"add",icon:o(qe)("folder-add"),disabled:Ie.node.disabled||!Ie.node.connected||(Ie.node.workspaceCreatable??Ie.node.manageable)===!1},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.addWorkspace")),1)]),_:1},8,["icon","disabled"])]),_:2},1024)]),default:Z(()=>[K("button",{class:"tree-more-button utility-control","aria-label":o(c)("generated.workspaceTree.nodeActions"),type:"button",onClick:de[1]||(de[1]=rt(()=>{},["stop"]))},[B(De,{name:"more"})],8,nA)]),_:2},1032,["onCommand","onVisibleChange"])):ve("",!0)],42,QR),(f(),we(hn,{key:d.value?"filtered":"browsing",name:"workspace-branch",css:s.value,onEnter:l,onBeforeLeave:v,onAfterEnter:u,onAfterLeave:u},{default:Z(()=>[T(Ie.node.id)?(f(),O("ul",aA,[(f(!0),O(Ve,null,Je(Ie.groups,pe=>(f(),O(Ve,{key:pe.groupName??"__ungrouped__"},[pe.groupName===null?(f(!0),O(Ve,{key:0},Je(pe.workspaces,(Ce,je)=>(f(),O("li",{key:Ce.id,class:Ke({dragging:e.draggingWorkspace?.workspaceId===Ce.id,"drop-target":g.value===V(Ie.node.id,Ce.id)&&R.value===void 0,"drop-before":g.value===V(Ie.node.id,Ce.id)&&R.value==="before","drop-after":g.value===V(Ie.node.id,Ce.id)&&R.value==="after",selected:e.workspaceTarget?.nodeId===Ie.node.id&&e.workspaceTarget.workspaceId===Ce.id}),draggable:A.value,onMouseenter:ze=>D.value=V(Ie.node.id,Ce.id),onMouseleave:de[5]||(de[5]=ze=>D.value=void 0),onFocusin:ze=>E.value=V(Ie.node.id,Ce.id),onFocusout:de[6]||(de[6]=ze=>Ue(ze,()=>E.value=void 0)),onContextmenu:ze=>_e(ze,Ie.node.id,Ce.id),onDragend:de[7]||(de[7]=rt(ze=>{J(),M("endWorkspaceDrag")},["stop"])),onDragenter:rt(ze=>F(ze,Ie.node,Ce),["stop"]),onDragleave:rt(fe,["stop"]),onDragover:rt(ze=>F(ze,Ie.node,Ce),["stop"]),onDrop:rt(ze=>nt(ze,Ie.node,Ce),["prevent","stop"]),onDragstart:rt(ze=>Ye(ze,Ie.node,Ce),["stop"])},[Le((f(),O("button",{"aria-label":e.workspaceLabel(Ce),class:Ke([{selected:e.workspaceTarget?.nodeId===Ie.node.id&&e.workspaceTarget.workspaceId===Ce.id},"workspace-branch-button"]),type:"button",onClick:ze=>Xe(Ie.node.id,Ce.id)},[K("span",iA,[K("span",null,W(e.workspaceLabel(Ce)),1)])],10,rA)),[[We,e.workspaceLabel(Ce)]]),Pe(Ie.node.id,Ce.id)?(f(),we(te,{key:0,class:"tree-row-menu workspace-row-actions",trigger:"click",onCommand:ze=>Fe(Ie.node,Ce,ze),onVisibleChange:ze=>X.value=ze?V(Ie.node.id,Ce.id):void 0},{dropdown:Z(()=>[B(q,null,{default:Z(()=>[B(he,{command:"details",icon:o(qe)("view")},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.workspaceDetails")),1)]),_:1},8,["icon"]),B(he,{command:"up",icon:o(qe)("chevron-up"),disabled:d.value||je===0},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveUp")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"down",icon:o(qe)("chevron-down"),disabled:d.value||je===pe.workspaces.length-1},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveDown")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"rename",icon:o(qe)("edit"),disabled:Ce.manageable===!1},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.rename")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"move-group",icon:o(qe)("folder-add"),disabled:e.loading||!N(Ie.node)},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveWorkspaceToGroup")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"delete",icon:o(qe)("delete"),disabled:e.loading||Ce.manageable!==!0,divided:""},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.delete")),1)]),_:1},8,["icon","disabled"])]),_:2},1024)]),default:Z(()=>[K("button",{class:"tree-more-button utility-control","aria-label":o(c)("generated.workspaceTree.workspaceActions"),type:"button",onClick:de[4]||(de[4]=rt(()=>{},["stop"]))},[B(De,{name:"more"})],8,sA)]),_:2},1032,["onCommand","onVisibleChange"])):ve("",!0)],42,oA))),128)):(f(),O("li",{key:1,class:Ke(["workspace-group",{"drop-target":b.value===$(Ie.node.id,pe.groupName)}])},[Le((f(),O("button",{class:Ke(["workspace-group-toggle",{expanded:re(Ie.node.id,pe.groupName)}]),"aria-label":re(Ie.node.id,pe.groupName)?o(c)("generated.workspaceTree.collapseWorkspaceGroup",{value0:pe.groupName}):o(c)("generated.workspaceTree.expandWorkspaceGroup",{value0:pe.groupName}),"aria-expanded":re(Ie.node.id,pe.groupName),onDragenter:rt(Ce=>z(Ce,Ie.node,pe.groupName),["stop"]),onDragleave:rt(fe,["stop"]),onDragover:rt(Ce=>z(Ce,Ie.node,pe.groupName),["stop"]),onDrop:rt(Ce=>ae(Ie.node,pe.groupName),["prevent","stop"]),type:"button",onClick:Ce=>ge(Ie.node.id,pe.groupName)},[B(De,{name:"chevron-right",class:"tree-chevron"}),re(Ie.node.id,pe.groupName)?(f(),we(De,{key:0,name:"folder-open",class:"tree-type-icon","aria-hidden":"true"})):(f(),we(De,{key:1,name:"folder",class:"tree-type-icon","aria-hidden":"true"})),K("span",null,W(pe.groupName),1)],42,lA)),[[We,pe.groupName]]),B(hn,{name:"workspace-branch",css:s.value,onEnter:l,onBeforeLeave:v,onAfterEnter:u,onAfterLeave:u},{default:Z(()=>[re(Ie.node.id,pe.groupName)?(f(),O("ul",cA,[(f(!0),O(Ve,null,Je(pe.workspaces,(Ce,je)=>(f(),O("li",{key:Ce.id,class:Ke({dragging:e.draggingWorkspace?.workspaceId===Ce.id,"drop-target":g.value===V(Ie.node.id,Ce.id)&&R.value===void 0,"drop-before":g.value===V(Ie.node.id,Ce.id)&&R.value==="before","drop-after":g.value===V(Ie.node.id,Ce.id)&&R.value==="after",selected:e.workspaceTarget?.nodeId===Ie.node.id&&e.workspaceTarget.workspaceId===Ce.id}),draggable:A.value,onMouseenter:ze=>D.value=V(Ie.node.id,Ce.id),onMouseleave:de[9]||(de[9]=ze=>D.value=void 0),onFocusin:ze=>E.value=V(Ie.node.id,Ce.id),onFocusout:de[10]||(de[10]=ze=>Ue(ze,()=>E.value=void 0)),onContextmenu:ze=>_e(ze,Ie.node.id,Ce.id),onDragend:de[11]||(de[11]=rt(ze=>{J(),M("endWorkspaceDrag")},["stop"])),onDragenter:rt(ze=>F(ze,Ie.node,Ce),["stop"]),onDragleave:rt(fe,["stop"]),onDragover:rt(ze=>F(ze,Ie.node,Ce),["stop"]),onDrop:rt(ze=>nt(ze,Ie.node,Ce),["prevent","stop"]),onDragstart:rt(ze=>Ye(ze,Ie.node,Ce),["stop"])},[Le((f(),O("button",{"aria-label":e.workspaceLabel(Ce),class:Ke([{selected:e.workspaceTarget?.nodeId===Ie.node.id&&e.workspaceTarget.workspaceId===Ce.id},"workspace-branch-button"]),type:"button",onClick:ze=>Xe(Ie.node.id,Ce.id)},[K("span",vA,[K("span",null,W(e.workspaceLabel(Ce)),1)])],10,uA)),[[We,e.workspaceLabel(Ce)]]),Pe(Ie.node.id,Ce.id)?(f(),we(te,{key:0,class:"tree-row-menu workspace-row-actions",trigger:"click",onCommand:ze=>Fe(Ie.node,Ce,ze),onVisibleChange:ze=>X.value=ze?V(Ie.node.id,Ce.id):void 0},{dropdown:Z(()=>[B(q,null,{default:Z(()=>[B(he,{command:"details",icon:o(qe)("view")},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.workspaceDetails")),1)]),_:1},8,["icon"]),B(he,{command:"up",icon:o(qe)("chevron-up"),disabled:d.value||je===0},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveUp")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"down",icon:o(qe)("chevron-down"),disabled:d.value||je===pe.workspaces.length-1},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveDown")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"rename",icon:o(qe)("edit"),disabled:Ce.manageable===!1},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.rename")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"move-group",icon:o(qe)("folder-add"),disabled:e.loading||!N(Ie.node)},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.moveWorkspaceToGroup")),1)]),_:1},8,["icon","disabled"]),B(he,{command:"delete",icon:o(qe)("delete"),disabled:e.loading||Ce.manageable!==!0,divided:""},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.delete")),1)]),_:1},8,["icon","disabled"])]),_:2},1024)]),default:Z(()=>[K("button",{class:"tree-more-button utility-control","aria-label":o(c)("generated.workspaceTree.workspaceActions"),type:"button",onClick:de[8]||(de[8]=rt(()=>{},["stop"]))},[B(De,{name:"more"})],8,fA)]),_:2},1032,["onCommand","onVisibleChange"])):ve("",!0)],42,dA))),128))])):ve("",!0)]),_:2},1032,["css"])],2))],64))),128))])):ve("",!0)]),_:2},1032,["css"]))]))),128))],512)):(f(),O("p",pA,W(o(c)("generated.workspaceTree.noMatchingResources")),1)),w.value.length&&e.workspaceTarget?.workspaceId===void 0?(f(),O("p",gA,W(o(c)("generated.workspaceTree.selectAWorkspaceToContinueInThe")),1)):ve("",!0)],64)):(f(),O("p",mA,W(o(c)("generated.workspaceTree.noNodes")),1)),Y.value?(f(),we(Oe,{key:2,onVnodeMounted:o(Yt),onVnodeBeforeUnmount:o(_t),modelValue:Y.value,"onUpdate:modelValue":de[13]||(de[13]=Ie=>Y.value=Ie),title:o(c)("generated.workspaceTree.moveWorkspaceToGroup"),width:"min(440px, calc(100vw - 32px))",onClosed:ue,"close-icon":o(qe)("close")},{footer:Z(()=>[B(be,{onClick:ue},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.cancel")),1)]),_:1}),B(be,{type:"primary",disabled:P.value,onClick:ne},{default:Z(()=>[ke(W(o(c)("generated.workspaceTree.save")),1)]),_:1},8,["disabled"])]),default:Z(()=>[K("div",hA,[B(se,{modelValue:Q.value,"onUpdate:modelValue":de[12]||(de[12]=Ie=>Q.value=Ie),"allow-create":"",clearable:"","default-first-option":"",filterable:"","aria-label":o(c)("generated.workspaceTree.workspaceGroupName"),placeholder:o(c)("generated.workspaceTree.workspaceGroupMovePlaceholder"),"clear-icon":o(qe)("clear-input"),"suffix-icon":o(qe)("chevron-down")},{default:Z(()=>[(f(!0),O(Ve,null,Je(oe.value,Ie=>(f(),we(_,{key:Ie,label:Ie,value:Ie},null,8,["label","value"]))),128))]),_:1},8,["modelValue","aria-label","placeholder","clear-icon","suffix-icon"])]),K("p",yA,W(o(c)("generated.workspaceTree.emptyWorkspaceGroupLeavesUngrouped")),1),P.value?(f(),O("p",wA,W(o(c)("generated.workspaceTree.workspaceGroupNameTooLong")),1)):ve("",!0)]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ve("",!0)],64)}}}),bA=dt(kA,[["__scopeId","data-v-cc254857"]]),IA=["aria-label"],SA=["src","alt"],CA={class:"brand-copy"},TA={class:"brand-heading"},EA={class:"brand-version"},RA=["aria-label"],AA=["aria-label"],NA=["aria-label","aria-current","aria-expanded","onClick"],DA={class:"nav-item-content"},PA={class:"nav-item-content"},OA={class:"rail-label"},LA=["aria-label"],WA=["inert","aria-label"],MA=["aria-label"],xA=["aria-current","onClick"],$A=["aria-label"],FA=["aria-current","onClick"],UA=at({__name:"WorkbenchNavigation",props:{webVersion:{},view:{},navigationItems:{},settingsSection:{},settingsItems:{},managementSection:{},managementItems:{},sidebarCollapsed:{type:Boolean},mobileSidebarOpen:{type:Boolean},sidebarContentVisible:{type:Boolean},nodes:{},expandedNodeIds:{},workspaceTreeRevealTarget:{},workspaceTarget:{},draggingWorkspace:{},loading:{type:Boolean},nodeLabel:{type:Function},workspaceLabel:{type:Function},workspaces:{type:Function},mobileViewport:{type:Boolean},mobileUtilityPanel:{},mobileHistoryOpen:{type:Boolean},notificationService:{},performanceDiagnostics:{},uploads:{},uploadStatusLabel:{type:Function}},emits:["resizeSidebar","moveNode","moveWorkspace","selectNavigation","selectMobileUtilityPanel","closeMobileSidebar","selectSettings","selectManagement","toggleNode","refreshNodeWorkspaces","refreshWorkspaceTree","addWorkspace","openNodeDetails","openWorkspace","startWorkspaceDrag","endWorkspaceDrag","reorderWorkspace","moveWorkspaceToGroup","moveWorkspaceGroup","removeWorkspace","openWorkspaceDetails","renameWorkspace","openNotification","openRecentRun","retryUpload","cancelUpload","removeUpload"],setup(e,{emit:t}){const n=Il(),a=Xa().locale,r=x(),s=x(),i=e,l=x(i.view),v=x(i.mobileUtilityPanel),u=new Map,d=j(()=>v.value??l.value);function w(){l.value=i.view,v.value=i.mobileUtilityPanel}He([()=>i.view,()=>i.mobileUtilityPanel,()=>i.mobileSidebarOpen],async(Y,U)=>{const Q=r.value;Q&&U[2]&&u.set(d.value,Q.scrollTop),!(i.mobileViewport&&!i.mobileSidebarOpen)&&(l.value=i.view,v.value=i.mobileUtilityPanel,await ut(),r.value&&(r.value.scrollTop=u.get(d.value)??0))});const k=t;function T(Y,U){(U||i.mobileUtilityPanel===Y)&&k("selectMobileUtilityPanel",U?Y:void 0)}const p=j(()=>c(v.value==="activity"?"activityCenter.title":l.value==="settings"?"navigation.settingsCategories":l.value==="management"?"navigation.managementCategories":"navigation.nodeWorkspace")),g=Rr({isOpen:()=>i.mobileViewport&&i.mobileSidebarOpen,regions:()=>[r.value,document.querySelector(".activity-rail")],close:()=>k("closeMobileSidebar")});mt(g.dispose);const R=(Y,U)=>k("openWorkspace",Y,U),b=(Y,U)=>k("moveNode",Y,U),C=(Y,U,Q)=>k("moveWorkspace",Y,U,Q),I=(Y,U,Q)=>k("startWorkspaceDrag",Y,U,Q),S=(Y,U,Q)=>k("reorderWorkspace",Y,U,Q),m=(Y,U)=>k("moveWorkspaceToGroup",Y,U),A=(Y,U,Q)=>k("moveWorkspaceGroup",Y,U,Q),L=(Y,U)=>k("removeWorkspace",Y,U),y=(Y,U)=>k("openWorkspaceDetails",Y,U),D=(Y,U)=>k("renameWorkspace",Y,U),E=x(),H=x({left:0,top:0});function X(Y){if(Y.target instanceof Element&&Y.target.closest(".tree-node-row, .workspace-branches li, .workspace-tree-filter, .tree-filter-empty, .tree-foot"))return;Y.preventDefault();const U=Y.currentTarget;if(!(U instanceof HTMLElement))return;const Q=U.getBoundingClientRect();H.value={left:Y.clientX-Q.left,top:Y.clientY-Q.top+U.scrollTop},ut(()=>E.value?.click())}return(Y,U)=>{const Q=Sr,$=ln,V=sn,N=rn,h=St("tooltip");return f(),O(Ve,null,[K("header",{class:Ke(["workbench-brand",{collapsed:e.sidebarCollapsed}]),"data-testid":"workbench-brand"},[Le((f(),O("a",{class:"brand-home-link",href:"/","aria-label":Y.$t("navigation.home")},[K("img",{src:o(Ha),alt:Y.$t("common.productName")},null,8,SA)],8,IA)),[[h,Y.$t("common.productVersion",{version:e.webVersion})]]),K("div",CA,[K("div",TA,[K("strong",null,W(Y.$t("common.productName")),1),K("span",EA,W(e.webVersion),1)]),K("span",null,W(Y.$t("navigation.brandSummary")),1)])],2),K("aside",{class:"activity-rail","aria-label":Y.$t("navigation.main")},[K("nav",{"aria-label":Y.$t("navigation.main")},[(f(!0),O(Ve,null,Je(e.navigationItems,F=>(f(),O(Ve,{key:F.id},[Le((f(),O("button",{class:Ke(["nav-menu-button",{active:e.view===F.id,utility:F.id==="management"||F.id==="settings"}]),"aria-label":F.label,"aria-current":e.view===F.id?"page":void 0,"aria-expanded":e.mobileViewport?e.view===F.id&&(F.id==="conversations"?e.mobileHistoryOpen===!0:e.mobileSidebarOpen&&e.mobileUtilityPanel===void 0):void 0,type:"button",onClick:z=>k("selectNavigation",F.id)},[K("span",DA,[F.id==="nodes"?(f(),we(De,{key:0,name:"workspace","aria-hidden":"true"})):F.id==="conversations"?(f(),we(De,{key:1,name:"conversation","aria-hidden":"true"})):F.id==="settings"?(f(),we(De,{key:2,name:"settings","aria-hidden":"true"})):(f(),we(De,{key:3,name:"administration","aria-hidden":"true"}))])],10,NA)),[[h,{content:F.label,placement:e.mobileViewport?"bottom":"right"}]]),F.id==="conversations"?(f(),we(VR,{key:0,service:e.notificationService,uploads:e.uploads,"status-label":e.uploadStatusLabel,"mobile-mode":e.mobileViewport,"mobile-open":e.mobileUtilityPanel==="activity","mobile-presented":v.value==="activity","mobile-panel-target":s.value,"preview-suppressed":e.mobileViewport&&(e.mobileSidebarOpen||e.mobileHistoryOpen),"onUpdate:mobileOpen":U[0]||(U[0]=z=>T("activity",z)),onOpenRecentRun:U[1]||(U[1]=z=>k("openRecentRun",z)),onOpenNotification:U[2]||(U[2]=z=>k("openNotification",z)),onRetryUpload:U[3]||(U[3]=z=>k("retryUpload",z)),onCancelUpload:U[4]||(U[4]=z=>k("cancelUpload",z)),onRemoveUpload:U[5]||(U[5]=z=>k("removeUpload",z))},null,8,["service","uploads","status-label","mobile-mode","mobile-open","mobile-presented","mobile-panel-target","preview-suppressed"])):ve("",!0)],64))),128)),o(n)?Le((f(),we(Q,{key:0,class:"nav-menu-button documentation-link utility-control",href:o(Sl)(o(a),"getting-started/overview"),underline:"never",target:"_blank",rel:"noopener noreferrer","aria-label":Y.$t("navigation.help")},{default:Z(()=>[K("span",PA,[B(De,{class:"documentation-icon","aria-hidden":"true",name:"help"}),K("span",OA,W(Y.$t("navigation.help")),1)])]),_:1},8,["href","aria-label"])),[[h,Y.$t("navigation.help")]]):ve("",!0)],8,AA),e.mobileViewport?ve("",!0):(f(),we(jR,{key:0,diagnostics:e.performanceDiagnostics},null,8,["diagnostics"]))],8,RA),B(hn,{name:"mobile-menu-scrim"},{default:Z(()=>[e.mobileViewport&&e.mobileSidebarOpen?(f(),O("button",{key:0,class:"sidebar-scrim",type:"button","aria-label":Y.$t("workbench.closeSidebar"),tabindex:"-1",onClick:U[6]||(U[6]=F=>k("closeMobileSidebar"))},null,8,LA)):ve("",!0)]),_:1}),B(hn,{name:e.mobileViewport?"mobile-menu":"desktop-menu",onAfterLeave:w},{default:Z(()=>[Le(K("aside",{ref_key:"treeElement",ref:r,class:Ke(["workspace-tree",{collapsed:e.sidebarCollapsed,"mobile-open":e.mobileSidebarOpen}]),inert:e.mobileViewport&&!e.mobileSidebarOpen,"aria-label":p.value,tabindex:"-1",onContextmenu:U[13]||(U[13]=F=>e.view==="nodes"&&e.mobileUtilityPanel===void 0&&X(F))},[Le(K("div",{ref_key:"mobilePanelTarget",ref:s,class:"mobile-menu-content"},null,512),[[At,v.value!==void 0]]),v.value===void 0&&l.value==="nodes"?(f(),O(Ve,{key:0},[B(N,{trigger:"click",class:"workspace-tree-blank-menu",style:It(H.value),onCommand:U[7]||(U[7]=F=>k("refreshWorkspaceTree"))},{dropdown:Z(()=>[B(V,null,{default:Z(()=>[B($,{command:"refresh",icon:o(qe)("refresh")},{default:Z(()=>[ke(W(Y.$t("generated.workspaceTree.refreshWorkspaces")),1)]),_:1},8,["icon"])]),_:1})]),default:Z(()=>[K("button",{ref_key:"blankMenuButton",ref:E,type:"button",tabindex:"-1","aria-hidden":"true"},null,512)]),_:1},8,["style"]),e.sidebarContentVisible||e.mobileViewport?(f(),we(bA,{key:0,nodes:e.nodes,"expanded-node-ids":e.expandedNodeIds,"reveal-target":e.workspaceTreeRevealTarget,visible:e.mobileViewport?e.mobileSidebarOpen:!e.sidebarCollapsed,"workspace-target":e.workspaceTarget,"dragging-workspace":e.draggingWorkspace,"mobile-viewport":e.mobileViewport,loading:e.loading,"node-label":e.nodeLabel,"workspace-label":e.workspaceLabel,workspaces:e.workspaces,onMoveNode:b,onMoveWorkspace:C,onToggleNode:U[8]||(U[8]=F=>k("toggleNode",F)),onRefreshNodeWorkspaces:U[9]||(U[9]=F=>k("refreshNodeWorkspaces",F)),onAddWorkspace:U[10]||(U[10]=F=>k("addWorkspace",F)),onOpenNodeDetails:U[11]||(U[11]=F=>k("openNodeDetails",F)),onOpenWorkspace:R,onStartWorkspaceDrag:I,onEndWorkspaceDrag:U[12]||(U[12]=F=>k("endWorkspaceDrag")),onReorderWorkspace:S,onMoveWorkspaceToGroup:m,onMoveWorkspaceGroup:A,onRemoveWorkspace:L,onOpenWorkspaceDetails:y,onRenameWorkspace:D},null,8,["nodes","expanded-node-ids","reveal-target","visible","workspace-target","dragging-workspace","mobile-viewport","loading","node-label","workspace-label","workspaces"])):ve("",!0)],64)):v.value===void 0?(f(),O(Ve,{key:1},[(e.sidebarContentVisible||e.mobileViewport)&&l.value==="settings"?(f(),O("nav",{key:l.value,class:"settings-nav","aria-label":Y.$t("navigation.settingsMenu")},[(f(!0),O(Ve,null,Je(e.settingsItems,F=>(f(),O("button",{key:F.id,class:Ke({active:e.settingsSection===F.id}),"aria-current":e.settingsSection===F.id?"page":void 0,type:"button",onClick:z=>k("selectSettings",F.id)},W(F.label),11,xA))),128))],8,MA)):(e.sidebarContentVisible||e.mobileViewport)&&l.value==="management"?(f(),O("nav",{key:l.value,class:"settings-nav","aria-label":Y.$t("navigation.managementMenu")},[(f(!0),O(Ve,null,Je(e.managementItems,F=>(f(),O("button",{key:F.id,class:Ke({active:e.managementSection===F.id}),"aria-current":e.managementSection===F.id?"page":void 0,type:"button",onClick:z=>k("selectManagement",F.id)},W(F.label),11,FA))),128))],8,$A)):ve("",!0)],64)):ve("",!0)],42,WA),[[At,e.mobileViewport?e.mobileSidebarOpen:e.view!=="conversations"]])]),_:1},8,["name"]),e.view==="nodes"&&!e.sidebarCollapsed&&!e.mobileViewport?(f(),we(Ec,{key:0,class:"workspace-tree-resize",target:r.value,label:Y.$t("generated.panelResize.workspaceTree"),min:o(pn).sidebar.min,max:o(pn).sidebar.max,direction:1,onResize:U[14]||(U[14]=F=>k("resizeSidebar",F))},null,8,["target","label","min","max"])):ve("",!0)],64)}}}),VA=dt(UA,[["__scopeId","data-v-6c1d2621"]]),qA={class:"gate-panel","aria-labelledby":"password-title"},HA={class:"eyebrow"},BA={id:"password-title"},GA={class:"lede"},zA={class:"lede"},KA={key:0,class:"password-form-error",role:"alert"},jA=at({__name:"PasswordGate",props:{password:{},validationError:{},loading:{type:Boolean}},emits:["update:password","clearError","submit"],setup(e,{emit:t}){const n=e,a=t,r=x(""),s=x(""),{t:i}=Dn();function l(){a("submit",{currentPassword:r.value,password:n.password,confirmation:s.value})}return(v,u)=>(f(),O("section",qA,[K("p",HA,W(o(i)("passwordGate.firstUse")),1),K("h1",BA,W(o(i)("passwordGate.title")),1),K("p",GA,W(o(i)("passwordGate.summary")),1),K("p",zA,W(o(i)("passwordGate.requirement")),1),K("form",{class:"auth-form",novalidate:"",onSubmit:rt(l,["prevent"])},[K("label",null,[ke(W(o(i)("passwordGate.current")),1),B(o(Ft),{modelValue:r.value,"onUpdate:modelValue":u[0]||(u[0]=d=>r.value=d),type:"password",autocomplete:"current-password",onInput:u[1]||(u[1]=d=>a("clearError"))},null,8,["modelValue"])]),K("label",null,[ke(W(o(i)("passwordGate.next")),1),B(o(Ft),{"model-value":e.password,type:"password",autocomplete:"new-password","onUpdate:modelValue":u[2]||(u[2]=d=>a("update:password",String(d))),onInput:u[3]||(u[3]=d=>a("clearError"))},null,8,["model-value"])]),K("label",null,[ke(W(o(i)("passwordGate.confirmation")),1),B(o(Ft),{modelValue:s.value,"onUpdate:modelValue":u[4]||(u[4]=d=>s.value=d),type:"password",autocomplete:"new-password",onInput:u[5]||(u[5]=d=>a("clearError"))},null,8,["modelValue"])]),e.validationError?(f(),O("p",KA,W(e.validationError),1)):ve("",!0),B(o(bt),{disabled:e.password.length<8||r.value.length===0||s.value.length===0,loading:e.loading,"native-type":"submit",type:"primary","loading-icon":o(qe)("loading-action")},{default:Z(()=>[ke(W(o(i)("passwordGate.submit")),1)]),_:1},8,["disabled","loading","loading-icon"])],32)]))}}),_A=dt(jA,[["__scopeId","data-v-38495fe1"]]),YA=["aria-label"],QA=["aria-label"],JA=["aria-label"],XA=["aria-busy"],ZA={class:"sr-only","data-testid":"web-health"},eN=at({__name:"WorkbenchPage",props:{page:{},surface:{}},emits:["openWorkspaceDetails"],setup(e,{emit:t}){const n=e,a=t,{t:r}=Dn(),s=j(()=>{const R=n.page.layout.panelWidths.sidebar,b=n.page.layout.panelWidths.compact;return{...R===void 0?{}:{"--mar-workbench-sidebar-width":`min(${R}px, var(--mar-sidebar-available-width))`,"--mar-workbench-sidebar-total-width":"calc(var(--mar-activity-rail-width) + var(--mar-workbench-sidebar-width))"},...b===void 0?{}:{"--mar-inspector-width":`${b}px`}}}),i=x(),l=x(!1),v=x(!1);function u(R,b){a("openWorkspaceDetails",R,b),i.value={nodeId:R,workspace:b},l.value=!0}function d(){return n.page.resources.nodes.find(R=>R.id===i.value?.nodeId)}function w(){const R=d();return R===void 0?void 0:n.page.resources.nodeLabel(R)}const k=j(()=>{const R=n.page.resources.nodeDetails;if(R===void 0)return;const b=n.page.resources.nodes.find(C=>C.id===R.id)??R;return{...b,label:n.page.resources.nodeLabel(b)}});async function T(){if(!(v.value||n.page.resources.nodeDetails===void 0)){v.value=!0;try{await n.page.resources.refreshNodes()}finally{v.value=!1}}}const p=j(()=>{const R=i.value?.workspace;if(R!==void 0)return{...R,label:R.displayName||R.path}});function g(){window.close()}return(R,b)=>{const C=bt;return f(),O("main",{class:Ke(["console-shell",{"console-shell--gate":!e.page.identity.adminLoaded||!e.page.identity.admin.authenticated||e.page.identity.locked}]),style:It(s.value)},[e.page.identity.adminLoaded?e.page.identity.authenticationUnknown?(f(),we(OE,{key:1,loading:e.page.identity.authenticationRestoring,"logo-url":o(Ha),onRetry:e.page.identity.refreshAdmin},null,8,["loading","logo-url","onRetry"])):e.page.identity.admin.authenticated?e.page.identity.locked?(f(),we(_A,{key:3,password:e.page.identity.newPassword,"onUpdate:password":b[0]||(b[0]=I=>e.page.identity.newPassword=I),"validation-error":e.page.identity.passwordValidationError,loading:e.page.identity.loading,onClearError:b[1]||(b[1]=I=>e.page.identity.passwordValidationError=""),onSubmit:e.page.identity.changePassword},null,8,["password","validation-error","loading","onSubmit"])):(f(),O(Ve,{key:4},[K("input",{ref:I=>e.page.uploads.workspaceUploadRecoveryInput=I,class:"workspace-upload-input",type:"file","aria-label":o(r)("workbench.recoverUpload"),onChange:b[2]||(b[2]=(...I)=>e.page.uploads.recoverWorkspaceUpload&&e.page.uploads.recoverWorkspaceUpload(...I))},null,40,QA),B(VA,{"aria-hidden":e.page.files.standaloneFileMode||void 0,inert:e.page.files.standaloneFileMode,"web-version":e.page.application.webVersion,view:e.page.application.view,"navigation-items":e.page.application.navigationItems,"settings-section":e.page.application.settingsSection,"settings-items":e.page.application.settingsItems,"management-section":e.page.application.managementSection,"management-items":e.page.application.managementItems,"sidebar-collapsed":e.page.layout.sidebarCollapsed,"mobile-sidebar-open":e.page.layout.mobileSidebarOpen,"sidebar-content-visible":e.page.layout.sidebarContentVisible,nodes:e.page.tree.orderedNodes,"mobile-viewport":e.page.layout.mobileViewport,"mobile-utility-panel":e.page.layout.mobileUtilityPanel,"mobile-history-open":e.page.hosted.hostedConversationMobileHistoryOpen,"expanded-node-ids":e.page.tree.expandedNodeIds,"workspace-tree-reveal-target":e.page.tree.workspaceTreeRevealTarget,"workspace-target":e.page.selection.workspaceTarget,"dragging-workspace":e.page.tree.draggingWorkspace,loading:e.page.identity.loading,"notification-service":e.page.notifications,"performance-diagnostics":e.page.application.webPerformanceDiagnostics,uploads:e.page.uploads.workspaceUploadTasks,"upload-status-label":e.page.uploads.workspaceUploadStatusLabel,"node-label":e.page.resources.nodeLabel,"workspace-label":e.page.selection.workspaceTabLabel,workspaces:e.page.tree.orderedWorkspaces,onResizeSidebar:b[3]||(b[3]=I=>e.page.layout.setPanelWidth("sidebar",I)),onSelectNavigation:e.page.application.selectNavigation,onSelectMobileUtilityPanel:e.page.layout.selectMobileUtilityPanel,onCloseMobileSidebar:e.page.layout.closeMobileSidebar,onSelectSettings:e.page.application.selectSettingsSection,onSelectManagement:e.page.application.selectManagementSection,onMoveNode:e.page.tree.moveNode,onMoveWorkspace:e.page.tree.moveTreeWorkspace,onToggleNode:e.page.tree.toggleNodeExpansion,onRefreshNodeWorkspaces:e.page.tree.refreshNodeWorkspaces,onRefreshWorkspaceTree:e.page.tree.refreshWorkspaceTree,onAddWorkspace:e.page.tree.addWorkspaceForNode,onOpenNodeDetails:e.page.resources.showNodeDetails,onOpenWorkspace:e.page.tree.openWorkspaceFromTree,onStartWorkspaceDrag:e.page.tree.startWorkspaceDrag,onEndWorkspaceDrag:e.page.tree.endWorkspaceDrag,onReorderWorkspace:e.page.tree.reorderWorkspace,onMoveWorkspaceToGroup:e.page.tree.moveWorkspaceToGroup,onMoveWorkspaceGroup:e.page.tree.moveWorkspaceGroup,onRemoveWorkspace:e.page.tree.removeWorkspace,onOpenWorkspaceDetails:u,onRenameWorkspace:e.page.tree.renameWorkspace,onOpenNotification:e.page.application.openWorkbenchNotification,onOpenRecentRun:e.page.application.openRecentRun,onOpenSessionTarget:e.page.selection.openSessionGroupTarget,onRetryUpload:e.page.uploads.retryWorkspaceUpload,onCancelUpload:e.page.uploads.cancelWorkspaceUpload,onRemoveUpload:e.page.uploads.deleteWorkspaceUpload},null,8,["aria-hidden","inert","web-version","view","navigation-items","settings-section","settings-items","management-section","management-items","sidebar-collapsed","mobile-sidebar-open","sidebar-content-visible","nodes","mobile-viewport","mobile-utility-panel","mobile-history-open","expanded-node-ids","workspace-tree-reveal-target","workspace-target","dragging-workspace","loading","notification-service","performance-diagnostics","uploads","upload-status-label","node-label","workspace-label","workspaces","onSelectNavigation","onSelectMobileUtilityPanel","onCloseMobileSidebar","onSelectSettings","onSelectManagement","onMoveNode","onMoveWorkspace","onToggleNode","onRefreshNodeWorkspaces","onRefreshWorkspaceTree","onAddWorkspace","onOpenNodeDetails","onOpenWorkspace","onStartWorkspaceDrag","onEndWorkspaceDrag","onReorderWorkspace","onMoveWorkspaceToGroup","onMoveWorkspaceGroup","onRemoveWorkspace","onRenameWorkspace","onOpenNotification","onOpenRecentRun","onOpenSessionTarget","onRetryUpload","onCancelUpload","onRemoveUpload"]),B(hn,{name:"workspace-scrim"},{default:Z(()=>[e.page.layout.mobileViewport&&e.page.layout.mobileWorkspaceSurface!=="conversation"?(f(),O("button",{key:0,class:"workspace-surface-scrim","aria-label":o(r)("workbench.closeWorkspaceTools"),type:"button",onClick:b[4]||(b[4]=(...I)=>e.page.layout.closeMobileWorkspaceSurface&&e.page.layout.closeMobileWorkspaceSurface(...I))},null,8,JA)):ve("",!0)]),_:1}),Ct(R.$slots,"surface",{},()=>[B(Rc,{page:e.surface,"aria-hidden":e.page.files.standaloneFileMode||void 0,inert:e.page.files.standaloneFileMode},null,8,["page","aria-hidden","inert"])],!0),e.page.files.standaloneFileMode&&(e.page.files.standaloneFileLoading||e.page.files.standaloneFileError)?(f(),O("div",{key:0,class:"standalone-file-loading","aria-busy":e.page.files.standaloneFileLoading,"aria-live":"polite"},[e.page.files.standaloneFileError?(f(),O(Ve,{key:0},[K("p",null,W(o(r)("generated.standaloneFilePreviewPage.unableToReadTheFileCheckYour")),1),B(C,{onClick:g},{default:Z(()=>[ke(W(o(r)("generated.filePreviewDialog.closePreview")),1)]),_:1})],64)):(f(),we(Kp,{key:1,variant:"page"}))],8,XA)):ve("",!0),Ct(R.$slots,"resource-details",{},()=>[B(Dg,{"node-open":e.page.resources.nodeDetailsDialogOpen,"onUpdate:nodeOpen":b[5]||(b[5]=I=>e.page.resources.nodeDetailsDialogOpen=I),"workspace-open":l.value,"onUpdate:workspaceOpen":b[6]||(b[6]=I=>l.value=I),"usage-open":e.page.resources.runnerUsageDialogOpen,"onUpdate:usageOpen":b[7]||(b[7]=I=>e.page.resources.runnerUsageDialogOpen=I),node:k.value,workspace:p.value,"workspace-node-id":d()?.id,"workspace-node-connected":d()?.connected,"workspace-git-manageable":i.value?.workspace.manageable,"workspace-secret-manageable":i.value?.workspace.manageable,"workspace-node-label":w(),usage:e.page.resources.runnerUsageDetails,"usage-loading":e.page.resources.runnerUsageLoading,"usage-disabled-reason":e.page.resources.runnerUsageDisabledReason,"node-refreshable":e.page.resources.nodeDetails!==void 0,"node-refreshing":v.value,"secret-writable":!0,request:e.page.identity.request,onRefreshNode:T,onUsage:e.page.resources.showRunnerUsage},null,8,["node-open","workspace-open","usage-open","node","workspace","workspace-node-id","workspace-node-connected","workspace-git-manageable","workspace-secret-manageable","workspace-node-label","usage","usage-loading","usage-disabled-reason","node-refreshable","node-refreshing","request","onUsage"])],!0)],64)):(f(),we(TE,{key:2,loading:e.page.identity.loading,"logo-url":o(Ha),onLogin:e.page.identity.login},{"identity-extension":Z(()=>[Ct(R.$slots,"identity-extension",{},void 0,!0)]),_:3},8,["loading","logo-url","onLogin"])):(f(),O("div",{key:0,class:"page-loading-state",role:"status","aria-busy":"true","aria-label":o(r)("common.loading")},[B(gn)],8,YA)),B($l,{"attachment-open":e.page.interactions.attachmentPreviewOpen,"onUpdate:attachmentOpen":b[8]||(b[8]=I=>e.page.interactions.attachmentPreviewOpen=I),"conversation-open":e.page.interactions.conversationImagePreviewOpen,"onUpdate:conversationOpen":b[9]||(b[9]=I=>e.page.interactions.conversationImagePreviewOpen=I),attachment:e.page.interactions.attachmentPreview,conversation:e.page.interactions.conversationImagePreview,onClearAttachment:b[10]||(b[10]=I=>e.page.interactions.attachmentPreview=void 0),onClearConversation:b[11]||(b[11]=I=>e.page.interactions.conversationImagePreview=void 0),onConversationError:e.page.interactions.handleConversationImagePreviewError},null,8,["attachment-open","conversation-open","attachment","conversation","onConversationError"]),B(aR,{open:e.page.interactions.quickOpenFileVisible,"node-id":e.page.selection.workspaceTarget?.nodeId,"workspace-id":e.page.selection.workspaceTarget?.workspaceId,"files-ready":e.page.files.filesReady,"symbols-ready":e.page.application.codeNavigationReady,nodes:e.page.resources.nodes,sessions:e.page.sessionList.sessions,"session-title":e.page.sessionList.sessionTitle,"open-session":e.page.selection.openSessionFromList,"open-workspace":e.page.interactions.openQuickWorkspace,"workspace-tabs":e.page.selection.workspaceTabs,onClose:e.page.interactions.closeQuickOpenFile,onOpenFile:e.page.interactions.openQuickWorkspaceFile},null,8,["open","node-id","workspace-id","files-ready","symbols-ready","nodes","sessions","session-title","open-session","open-workspace","workspace-tabs","onClose","onOpenFile"]),K("p",ZA,W(o(r)("common.webReady")),1)],6)}}}),tN=dt(eN,[["__scopeId","data-v-3edf2b7d"]]),nN=at({__name:"WorkbenchPage",setup(e){const t=Et(_w()),{t:n}=Dn(),a=new URLSearchParams(window.location.search).get("oauthError");let r=!1;return He(()=>t.identity.adminLoaded,s=>{if(!s||r||a===null)return;r=!0,et(lg(a,n("workbench.oauthFailure")),"error");const i=new URL(window.location.href);i.searchParams.delete("oauthError"),window.history.replaceState(null,"",`${i.pathname}${i.search}${i.hash}`)},{immediate:!0}),(s,i)=>(f(),we(tN,{page:o(t),surface:o(t)},{"identity-extension":Z(()=>[B(hm,{request:o(t).identity.request},null,8,["request"])]),surface:Z(()=>[B(yE,{page:o(t)},null,8,["page"])]),_:1},8,["page","surface"]))}}),VN=Object.freeze(Object.defineProperty({__proto__:null,default:nN},Symbol.toStringTag,{value:"Module"}));export{Cn as T,VN as W,hw as a,yw as c,ww as o,Mw as p};