@myagentroam/server 0.13.6 → 0.13.8
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.
- package/node_modules/@myagentroam/protocol/dist/composer-tags.d.ts +431 -5
- package/node_modules/@myagentroam/protocol/dist/composer-tags.js +88 -5
- package/node_modules/@myagentroam/protocol/dist/direct-transfer.d.ts +52 -52
- package/node_modules/@myagentroam/protocol/dist/index.d.ts +1692 -1684
- package/node_modules/@myagentroam/protocol/dist/index.js +2 -0
- package/node_modules/@myagentroam/protocol/dist/mcp.d.ts +6 -6
- package/node_modules/@myagentroam/protocol/dist/model-usage.d.ts +12 -12
- package/node_modules/@myagentroam/protocol/dist/session-shares.d.ts +6 -6
- package/node_modules/@myagentroam/protocol/dist/skill.d.ts +2 -2
- package/node_modules/@myagentroam/protocol/dist/workbench-notification.d.ts +6 -6
- package/node_modules/@myagentroam/protocol/package.json +1 -1
- package/node_modules/@myagentroam/server-core/dist/model-usage-record.d.ts +1 -1
- package/node_modules/@myagentroam/server-core/dist/workbench-notification-service.d.ts +1 -1
- package/node_modules/@myagentroam/server-core/package.json +2 -2
- package/node_modules/@myagentroam-enterprise/server-implementation/package.json +3 -3
- package/package.json +6 -6
- package/web/assets/{AuditManagementPage-DdhzZJJz.js → AuditManagementPage-DHf_d3lr.js} +1 -1
- package/web/assets/{BusyIndicator-DJEYrwl2.js → BusyIndicator-CJepRD30.js} +1 -1
- package/web/assets/{CodeFileEditor-t-S2RxFj.js → CodeFileEditor-2B9V-ZHh.js} +14 -14
- package/web/assets/{CodeFileEditor-LbH8kxiW.css → CodeFileEditor-B8IGF27H.css} +1 -1
- package/web/assets/{ConversationTemplateManagementPage-DtnCxKPr.js → ConversationTemplateManagementPage-C2Fl5gpu.js} +1 -1
- package/web/assets/{ConversationTemplateManagementPage-8cWdT1rl.js → ConversationTemplateManagementPage-DhjVzYYH.js} +1 -1
- package/web/assets/{EnterpriseUserManagementPage-CVpJzsVL.js → EnterpriseUserManagementPage-D7UBm6rn.js} +1 -1
- package/web/assets/{EnvironmentSecretManager-DaMtII6x.js → EnvironmentSecretManager-6TsEyKME.js} +1 -1
- package/web/assets/{FilePreviewLoading-CqXCVUDH.js → FilePreviewLoading-xWmLA-hX.js} +2 -2
- package/web/assets/HtmlPreviewFrame-BWUJugCe.js +7 -0
- package/web/assets/{HtmlPreviewFrame-CXd4x0y-.css → HtmlPreviewFrame-D_Jf4aL-.css} +1 -1
- package/web/assets/{LicenseManagementPage-C-25sen8.js → LicenseManagementPage-mbLC76Sb.js} +1 -1
- package/web/assets/{ManagementPagination-BwZo73aV.js → ManagementPagination-COGUI_6N.js} +1 -1
- package/web/assets/{MarAgentModelManagementPage-DkncBptD.js → MarAgentModelManagementPage-C0NTB_eR.js} +1 -1
- package/web/assets/{MarAgentModelManagementPage-B9lHTQtV.js → MarAgentModelManagementPage-D_LEBwAO.js} +1 -1
- package/web/assets/{MarIcon-0cJTzTai.js → MarIcon-7ATHlb9_.js} +1 -1
- package/web/assets/{MarkdownFilePreview-CnWvYfKN.js → MarkdownFilePreview-CGEzm91C.js} +2 -2
- package/web/assets/{McpDetailsDialog-nt3by9E1.js → McpDetailsDialog-DKlmenK5.js} +1 -1
- package/web/assets/{McpSourceManagementPage-Bg2wxoSB.js → McpSourceManagementPage-BRSoTQJy.js} +1 -1
- package/web/assets/{McpSourceManagementPage-BVjVO0Tb.js → McpSourceManagementPage-DXrw10o-.js} +1 -1
- package/web/assets/{NodeDetailsDialogs-D4wBwUzA.js → NodeDetailsDialogs-BXghz6Vq.js} +1 -1
- package/web/assets/NodeManagementPage-B6sbUg2M.js +1 -0
- package/web/assets/NodeManagementPage-BywB3ak3.js +1 -0
- package/web/assets/{OAuthManagementPage-D9cBB-vX.js → OAuthManagementPage-BzDB8DRk.js} +1 -1
- package/web/assets/{OrganizationManagementPage-N8HwbTY5.js → OrganizationManagementPage-DIKK7Apz.js} +1 -1
- package/web/assets/{ResourceManagementPanel-D80V3ZdZ.js → ResourceManagementPanel-CAAVs5tS.js} +1 -1
- package/web/assets/{ResourceManagementPanel.vue_vue_type_script_setup_true_lang-DfCWa6fA.js → ResourceManagementPanel.vue_vue_type_script_setup_true_lang-SibtEfaZ.js} +1 -1
- package/web/assets/SecretManagementPage-BoxMy2kF.js +1 -0
- package/web/assets/{SecretManagementPage-tsgbjSvn.js → SecretManagementPage-NWQ8ilK9.js} +1 -1
- package/web/assets/{SecretManagementPage.vue_vue_type_script_setup_true_lang-CmSoYQ3n.js → SecretManagementPage.vue_vue_type_script_setup_true_lang-Dv-Lkrgj.js} +1 -1
- package/web/assets/SessionSharePage-B9Ig9miU.css +1 -0
- package/web/assets/SessionSharePage-PXCto604.js +2 -0
- package/web/assets/{SettingsContent-WLH3DkgW.js → SettingsContent-lmlrCtzr.js} +1 -1
- package/web/assets/{SettingsContent-Dsw7sGr4.js → SettingsContent-t4Hhk6bN.js} +1 -1
- package/web/assets/{SkillCenterPage-yDU-t2cT.js → SkillCenterPage-BGdx7_t-.js} +1 -1
- package/web/assets/SkillCenterPage-yUFJvXBZ.js +1 -0
- package/web/assets/{SkillDetailsDialog-BUfNxAjf.js → SkillDetailsDialog-Ck3sWYTZ.js} +1 -1
- package/web/assets/{SkillSourceManagementPage-BCHgTDXJ.js → SkillSourceManagementPage-DCzjgChL.js} +1 -1
- package/web/assets/{SkillSourceManagementPage-B7yjgXR8.js → SkillSourceManagementPage-MfPC03pb.js} +1 -1
- package/web/assets/{StandaloneFilePreviewPage-DRGcF74V.css → StandaloneFilePreviewPage-Bv_3Hwts.css} +1 -1
- package/web/assets/StandaloneFilePreviewPage-Bzrh7-zx.js +1 -0
- package/web/assets/SystemConfigurationPage-0EO7rEmk.js +1 -0
- package/web/assets/{SystemConfigurationPage-C2Ecb0Su.js → SystemConfigurationPage-C8ekLRUo.js} +1 -1
- package/web/assets/{SystemInformationPage-CBWjqG43.js → SystemInformationPage-O2QdJcSO.js} +1 -1
- package/web/assets/{TerminalTabView-CeX2SVcm.js → TerminalTabView-DvEnQt4Q.js} +1 -1
- package/web/assets/WorkbenchPage-BuXwAqL9.css +1 -0
- package/web/assets/WorkbenchPage-C03cutMf.js +22 -0
- package/web/assets/WorkspaceManagementPage-DeDYwU3j.js +1 -0
- package/web/assets/WorkspaceManagementPage-Ijsn-mPC.js +1 -0
- package/web/assets/{_baseIteratee-CnCgfzqY.js → _baseIteratee-eYBSuzub.js} +1 -1
- package/web/assets/{abnfDiagram-VCTEODGH-C8MLlCYr.js → abnfDiagram-VCTEODGH-b26cs6fq.js} +1 -1
- package/web/assets/{advancedFormat-tqE8I04X.js → advancedFormat-CSQIetpu.js} +1 -1
- package/web/assets/{arc-ChGPMlfM.js → arc-0gq-FCD-.js} +1 -1
- package/web/assets/{architectureDiagram-5GKGNRK7-UNKWS80q.js → architectureDiagram-5GKGNRK7-BkGnMYjk.js} +1 -1
- package/web/assets/{blockDiagram-OSKFZWR5-DaoKTWzi.js → blockDiagram-OSKFZWR5-Cxoqg89Y.js} +1 -1
- package/web/assets/{c4Diagram-7LVT6UL2-DeJ38tJ4.js → c4Diagram-7LVT6UL2-CAdK6Y96.js} +1 -1
- package/web/assets/{catalog-ownership-service-ppl9SdO8.js → catalog-ownership-service-PJaj-KyM.js} +1 -1
- package/web/assets/{catalog-page-service-CA6TP1Er.js → catalog-page-service-YyYk6Ggw.js} +1 -1
- package/web/assets/channel-C8Lmpt34.js +1 -0
- package/web/assets/{chunk-2Q5K7J3B-Cie4-T_4.js → chunk-2Q5K7J3B-BOp-yla_.js} +1 -1
- package/web/assets/{chunk-5VM5RSS4-C02e2HuJ.js → chunk-5VM5RSS4-BuyWVwKe.js} +1 -1
- package/web/assets/{chunk-F27PBJKO-CYE4axjh.js → chunk-F27PBJKO-Cx18VPfs.js} +1 -1
- package/web/assets/{chunk-HLEWEB6X-Qcd3DJvW.js → chunk-HLEWEB6X-C5g9_TfO.js} +1 -1
- package/web/assets/{chunk-JWPE2WC7-BIlv53mX.js → chunk-JWPE2WC7-Rjhz-D2X.js} +1 -1
- package/web/assets/{chunk-POPQ4Y6H-C1FzI22y.js → chunk-POPQ4Y6H--VZI-f_3.js} +1 -1
- package/web/assets/{chunk-SVP7TREG-B5A4JoXo.js → chunk-SVP7TREG-BEjnZUJI.js} +1 -1
- package/web/assets/{chunk-XXDRQBXY-FdosaHEW.js → chunk-XXDRQBXY-CKr0cjux.js} +1 -1
- package/web/assets/{chunk-ZLD2IHE6-BzhAoouo.js → chunk-ZLD2IHE6-L7hK5KvT.js} +1 -1
- package/web/assets/classDiagram-CYGNFDIV-DKDqMZKD.js +1 -0
- package/web/assets/classDiagram-v2-TLXNO2FR-DKDqMZKD.js +1 -0
- package/web/assets/{conversation-history-D9993EDO.js → conversation-history-Crx4ncHc.js} +1 -1
- package/web/assets/{cose-bilkent-JH36ORCC-C4ZjK8dC.js → cose-bilkent-JH36ORCC-CRvOV0K8.js} +1 -1
- package/web/assets/{cynefin-OW5HDTMX-D-6QhPjX.js → cynefin-OW5HDTMX-CF1dNtGE.js} +1 -1
- package/web/assets/{cynefinDiagram-5FMLGOSQ-Bwsk5LdU.js → cynefinDiagram-5FMLGOSQ-Dw7WCbhJ.js} +1 -1
- package/web/assets/{dagre-OS7QT2EB-DoA_-lbd.js → dagre-OS7QT2EB-DDQAautM.js} +1 -1
- package/web/assets/{diagram-S7CK7UJ4-sgObxZyi.js → diagram-S7CK7UJ4-CV9I70h1.js} +1 -1
- package/web/assets/{diagram-UQ7AKVKN-BdMjAaVk.js → diagram-UQ7AKVKN-C5yw9_lD.js} +1 -1
- package/web/assets/{diagram-VSXAHHWV-BCH9zwo1.js → diagram-VSXAHHWV-BEyCZDi6.js} +1 -1
- package/web/assets/{diagram-VX7I27RA-Z6LSJKeQ.js → diagram-VX7I27RA-4KzLfGxp.js} +1 -1
- package/web/assets/{diagram-Z3DM3KII-CcbM5hsL.js → diagram-Z3DM3KII-CaRUqcJa.js} +1 -1
- package/web/assets/{ebnfDiagram-PWID7BFC-CWP32uDq.js → ebnfDiagram-PWID7BFC-7yDVGhmX.js} +1 -1
- package/web/assets/{el-alert-8VKFJYUv.js → el-alert-DQS8ZePt.js} +1 -1
- package/web/assets/{el-cascader-CJR-DJLi.js → el-cascader-DQU5md40.js} +1 -1
- package/web/assets/{el-checkbox-D7CsqiQq.js → el-checkbox-D0efHW4S.js} +1 -1
- package/web/assets/{el-date-picker-Lb4E2Nje.js → el-date-picker-Bku-3B7K.js} +1 -1
- package/web/assets/{el-descriptions-B48GJeGA.js → el-descriptions-CBHVTmYh.js} +1 -1
- package/web/assets/{el-form-item-Fjp3w344.js → el-form-item-Dq_bK-Q9.js} +1 -1
- package/web/assets/{el-input-DRF3bOe1.js → el-input-C5zWHdoA.js} +1 -1
- package/web/assets/{el-input-number-e6T9QIje.js → el-input-number-BJUCiZru.js} +1 -1
- package/web/assets/{el-radio-DO8joult.js → el-radio-DKbfSkAS.js} +1 -1
- package/web/assets/{el-select-BSaB1c5h.js → el-select-pINM-mXh.js} +1 -1
- package/web/assets/{el-switch-Cpl2xxJc.js → el-switch-BBMCqiRH.js} +1 -1
- package/web/assets/{el-tab-pane-CQyfpTgD.js → el-tab-pane-y4NQADY5.js} +1 -1
- package/web/assets/{el-table-column-BRybrdLI.js → el-table-column-BcasE3gG.js} +1 -1
- package/web/assets/{enterprise-management-service-Qtmnf50C.js → enterprise-management-service-B0orfFAW.js} +1 -1
- package/web/assets/{erDiagram-2YWLMYGG-BOtd6Wuq.js → erDiagram-2YWLMYGG-o6dRiWdB.js} +1 -1
- package/web/assets/{error-presentation-CJfLHEK_.js → error-presentation-uG_Pz-4V.js} +1 -1
- package/web/assets/{flowDiagram-T62WH6J4-DGRqBn-8.js → flowDiagram-T62WH6J4-Dnjw8CC9.js} +1 -1
- package/web/assets/{ganttDiagram-EL5Y4UJY-D84r1V0Q.js → ganttDiagram-EL5Y4UJY-Crx3v_bM.js} +1 -1
- package/web/assets/{gitGraphDiagram-WWUBYQGX-FANv-qDA.js → gitGraphDiagram-WWUBYQGX-DdXK5-FC.js} +1 -1
- package/web/assets/{hosted-conversation-template-client-CeOnupVC.js → hosted-conversation-template-client-BBChWnuL.js} +1 -1
- package/web/assets/{index-C90_sIrz.js → index-B2ZMoChP.js} +1 -1
- package/web/assets/{index-C_F0LgDO.js → index-B8mI7i5P.js} +1 -1
- package/web/assets/{index-hP6Cb_NE.js → index-B9d9bEMV.js} +1 -1
- package/web/assets/{index-Bokwz5PA.js → index-BH4u84Zl.js} +1 -1
- package/web/assets/{index-Tv4HGgSj.js → index-BLbqv2VV.js} +1 -1
- package/web/assets/{index-CBs38naL.js → index-BOx63eOY.js} +1 -1
- package/web/assets/{index-zG9SJlS3.js → index-BX86S34Z.js} +1 -1
- package/web/assets/{index-NReuiFej.js → index-B_0I1pfq.js} +1 -1
- package/web/assets/{index-B8rWDVmR.js → index-Bxxnybu9.js} +1 -1
- package/web/assets/{index-BsG4OGs3.js → index-C2ailIoH.js} +1 -1
- package/web/assets/{index-sctirQW0.js → index-C6Xr9IrJ.js} +1 -1
- package/web/assets/{index-BeipYJv6.js → index-CL6leDY2.js} +1 -1
- package/web/assets/{index-9ks2AQTi.js → index-CRzIdYuU.js} +1 -1
- package/web/assets/{index-DsgwAvJA.js → index-CkdgQdyk.js} +18 -18
- package/web/assets/{index-D6945seh.js → index-Ckk9V4oe.js} +1 -1
- package/web/assets/{index-B7tnVSor.js → index-CyzAAgQ3.js} +1 -1
- package/web/assets/{index-DGlioDXJ.js → index-D0uXVWoS.js} +1 -1
- package/web/assets/{index-DwQqO2fH.js → index-D6oS93p2.js} +1 -1
- package/web/assets/{index-W6jp3JVA.js → index-D83C03lZ.js} +1 -1
- package/web/assets/{index-BkC7CnZA.js → index-DIal99Mw.js} +1 -1
- package/web/assets/{index-C8DbmG_l.js → index-DUAZ34cY.js} +1 -1
- package/web/assets/{index-C_EAvnDF.js → index-DWWBJN55.js} +1 -1
- package/web/assets/{index-x2OEXKrc.js → index-Da1hjESP.js} +1 -1
- package/web/assets/{index-BYYx_GrI.js → index-DhQ5ZiJY.js} +1 -1
- package/web/assets/{index-B0P8j1yb.js → index-DqicP4lu.js} +1 -1
- package/web/assets/{index-BOhe9vs1.js → index-DzNFJV2b.js} +1 -1
- package/web/assets/{index-DU209g6d.js → index-Q1-bojqH.js} +1 -1
- package/web/assets/{index-eU6FSd70.js → index-X_1JWEzD.js} +1 -1
- package/web/assets/{index-x9JuBH-H.js → index-gIbLvEUk.js} +1 -1
- package/web/assets/infoDiagram-FKFFQAWI-B-GXbxgz.js +2 -0
- package/web/assets/{isArrayLikeObject-Bg1E4S9y.js → isArrayLikeObject-gY0T7koT.js} +1 -1
- package/web/assets/{ishikawaDiagram-5VMMS53U-B0FDzCa4.js → ishikawaDiagram-5VMMS53U-Dm_z4AVs.js} +1 -1
- package/web/assets/{journeyDiagram-EYS64GPL-CIM_LxZU.js → journeyDiagram-EYS64GPL-u6PbiRAS.js} +1 -1
- package/web/assets/{kanban-definition-UXKFOSKX-DKxBi_r0.js → kanban-definition-UXKFOSKX-jt4qK-jA.js} +1 -1
- package/web/assets/{layout-DU0JsES_.js → layout-B0-7CKhq.js} +1 -1
- package/web/assets/{linear-C3UCzYem.js → linear-Cn3EJ6UG.js} +1 -1
- package/web/assets/{management-url-service-DsBUOSH4.js → management-url-service-CqDpOe_M.js} +1 -1
- package/web/assets/{mcp-center-service-BluNkyx-.js → mcp-center-service-CLyFS3Va.js} +1 -1
- package/web/assets/{merge-B-E3iBqN.js → merge-BEHLop1o.js} +1 -1
- package/web/assets/{mermaid.core-CMc9IFVw.js → mermaid.core-BYLr5KI5.js} +5 -5
- package/web/assets/{message-box-service-CszgyilP.js → message-box-service-p64-2ZLT.js} +1 -1
- package/web/assets/{mindmap-definition-THT77NOG-BJyPV49z.js → mindmap-definition-THT77NOG-D64kSxGe.js} +1 -1
- package/web/assets/{mobile-dialog-return-service-Csexw-by.js → mobile-dialog-return-service-CTr7uf3K.js} +1 -1
- package/web/assets/{oauth-callback-3M1eIOPT.js → oauth-callback-CM7WkzLQ.js} +1 -1
- package/web/assets/{pegDiagram-XKGWAZYB-jpfn2XMn.js → pegDiagram-XKGWAZYB-YIPunerp.js} +1 -1
- package/web/assets/{pieDiagram-E7YTZNPT-B2jQ3Egj.js → pieDiagram-E7YTZNPT-DBfAVvKg.js} +1 -1
- package/web/assets/{quadrantDiagram-AXDQQJYC-BXSOa8Vi.js → quadrantDiagram-AXDQQJYC-CkwhedA2.js} +1 -1
- package/web/assets/{railroadDiagram-O6MQD6OU-BTy8Z6ZL.js → railroadDiagram-O6MQD6OU-BZnG7UBR.js} +1 -1
- package/web/assets/{requirementDiagram-IS5BZ75X-eqVPnJ-z.js → requirementDiagram-IS5BZ75X-D5weBa8z.js} +1 -1
- package/web/assets/{runner-presentation-D66Z9p-O.js → runner-presentation-D4sxHhdR.js} +1 -1
- package/web/assets/{sankeyDiagram-P5KCCOFB-BI5fAwMJ.js → sankeyDiagram-P5KCCOFB-Dui8-H4S.js} +1 -1
- package/web/assets/{sequenceDiagram-WJ2MYXX4-CZ7Un31z.js → sequenceDiagram-WJ2MYXX4-Cwk3Et5G.js} +1 -1
- package/web/assets/{session-share-client-service-W0XDwceC.js → session-share-client-service-CsDa4v0N.js} +1 -1
- package/web/assets/{sizeCapture-INFHLROL-7gQRW3HD.js → sizeCapture-INFHLROL-Bnyq906w.js} +1 -1
- package/web/assets/{stateDiagram-XQSTLZYL-D23AlrmH.js → stateDiagram-XQSTLZYL-Cp8L5BzA.js} +1 -1
- package/web/assets/stateDiagram-v2-IH3M54BS-CSEcK-Jc.js +1 -0
- package/web/assets/{swimlanes-V6O3JKXN-By9JzeNC.js → swimlanes-V6O3JKXN-Bg9PykpX.js} +1 -1
- package/web/assets/swimlanesDiagram-JKAHXJPX-BDvzhxyu.js +8 -0
- package/web/assets/{time-presentation-BRvT6nTd.js → time-presentation-DoNuOMmH.js} +1 -1
- package/web/assets/{timeline-definition-24CTP7MA-CyydVD-f.js → timeline-definition-24CTP7MA-DpvHaXX2.js} +1 -1
- package/web/assets/{union-BSveQIrm.js → union-E1iOItEy.js} +1 -1
- package/web/assets/{use-form-common-props-BJ2vZd_0.js → use-form-common-props-BOlG14S9.js} +1 -1
- package/web/assets/{use-wheel-TWRoHAF5.js → use-wheel-C3KIpcYO.js} +1 -1
- package/web/assets/{vennDiagram-4TSXK5OY-3OEbunrh.js → vennDiagram-4TSXK5OY-QJMcXLBe.js} +1 -1
- package/web/assets/{wardleyDiagram-VM6X3IG4-BuZvJTn0.js → wardleyDiagram-VM6X3IG4-ByP28shL.js} +1 -1
- package/web/assets/workbench-composer-interaction-controller-BaGSbCxC.js +41 -0
- package/web/assets/workbench-composer-interaction-controller-DRyjmQHD.css +1 -0
- package/web/assets/{workbench-presentation-DblBOxzZ.js → workbench-presentation-DRcAJQ63.js} +1 -1
- package/web/assets/{xychartDiagram-S5SC5T6Z-CQzJStra.js → xychartDiagram-S5SC5T6Z-B-5cq3LN.js} +1 -1
- package/web/docs/404.html +2 -2
- package/web/docs/administration/account.html +4 -4
- package/web/docs/administration/audit.html +4 -4
- package/web/docs/administration/conversation-templates.html +4 -4
- package/web/docs/administration/email-notifications.html +4 -4
- package/web/docs/administration/license.html +5 -5
- package/web/docs/administration/nodes-workspaces.html +4 -4
- package/web/docs/administration/oauth.html +4 -4
- package/web/docs/administration/secrets.html +4 -4
- package/web/docs/administration/template-workspace-maintenance.html +4 -4
- package/web/docs/administration/users-organizations.html +4 -4
- package/web/docs/assets/administration_license.md.CVLEsGB6.js +1 -0
- package/web/docs/assets/{app.DFdypnML.js → app.DO5uKi5F.js} +1 -1
- package/web/docs/assets/chunks/@localSearchIndexen-US.BzVDCXSP.js +1 -0
- package/web/docs/assets/chunks/@localSearchIndexroot.XPo_yBWv.js +1 -0
- package/web/docs/assets/chunks/{VPLocalSearchBox.P9CapR4-.js → VPLocalSearchBox.YAT0tY5c.js} +1 -1
- package/web/docs/assets/chunks/{theme.DLnKtfGY.js → theme.D5hAjTv8.js} +2 -2
- package/web/docs/assets/deployment_network.md.Bbi7-zH2.js +1 -0
- package/web/docs/assets/deployment_network.md.Bbi7-zH2.lean.js +1 -0
- package/web/docs/assets/deployment_upgrade.md.CG_VFxvG.js +1 -0
- package/web/docs/assets/deployment_upgrade.md.CG_VFxvG.lean.js +1 -0
- package/web/docs/assets/en-US_administration_license.md.GCAYq1LT.js +1 -0
- package/web/docs/assets/en-US_deployment_network.md.770EzfaT.js +1 -0
- package/web/docs/assets/en-US_deployment_network.md.770EzfaT.lean.js +1 -0
- package/web/docs/assets/en-US_deployment_upgrade.md.DDevql7U.js +1 -0
- package/web/docs/assets/{en-US_deployment_upgrade.md.DZiDDiLn.lean.js → en-US_deployment_upgrade.md.DDevql7U.lean.js} +1 -1
- package/web/docs/assets/en-US_getting-started_npm-quick-start.md.D46Ec15e.js +3 -0
- package/web/docs/assets/en-US_getting-started_npm-quick-start.md.D46Ec15e.lean.js +1 -0
- package/web/docs/assets/{en-US_getting-started_overview.md.Bug5sh21.js → en-US_getting-started_overview.md.CB-43rGR.js} +1 -1
- 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
- package/web/docs/assets/en-US_getting-started_prerequisites.md.BFxGOlUy.js +1 -0
- package/web/docs/assets/en-US_getting-started_prerequisites.md.BFxGOlUy.lean.js +1 -0
- package/web/docs/assets/{en-US_getting-started_server-installation.md._k2XGM85.js → en-US_getting-started_server-installation.md.C7SjGDJt.js} +2 -2
- package/web/docs/assets/en-US_workbench_file-reference-and-attachment.md.DmGpnorE.js +1 -0
- package/web/docs/assets/en-US_workbench_file-reference-and-attachment.md.DmGpnorE.lean.js +1 -0
- package/web/docs/assets/en-US_workbench_files.md.C8TPSXY9.js +1 -0
- package/web/docs/assets/{en-US_workbench_files.md.C5byBZOZ.lean.js → en-US_workbench_files.md.C8TPSXY9.lean.js} +1 -1
- package/web/docs/assets/getting-started_npm-quick-start.md.CIYjFmiu.js +3 -0
- package/web/docs/assets/getting-started_npm-quick-start.md.CIYjFmiu.lean.js +1 -0
- package/web/docs/assets/{getting-started_overview.md.CA1CCOBc.js → getting-started_overview.md.Cv-HSfAh.js} +1 -1
- package/web/docs/assets/getting-started_prerequisites.md.DjWWTA7V.js +1 -0
- package/web/docs/assets/{getting-started_prerequisites.md.D26KU42D.lean.js → getting-started_prerequisites.md.DjWWTA7V.lean.js} +1 -1
- package/web/docs/assets/{getting-started_server-installation.md.D3P3Lmc2.js → getting-started_server-installation.md.BsEfVH6b.js} +2 -2
- package/web/docs/assets/workbench_file-reference-and-attachment.md.BiQVVks4.js +1 -0
- package/web/docs/assets/workbench_file-reference-and-attachment.md.BiQVVks4.lean.js +1 -0
- package/web/docs/assets/workbench_files.md.D1inV8ws.js +1 -0
- package/web/docs/assets/{workbench_files.md.B5xE7YGc.lean.js → workbench_files.md.D1inV8ws.lean.js} +1 -1
- package/web/docs/concepts/architecture.html +4 -4
- package/web/docs/concepts/data-and-security.html +4 -4
- package/web/docs/concepts/files-git-terminal.html +4 -4
- package/web/docs/concepts/node-and-workspace.html +4 -4
- package/web/docs/concepts/permissions-and-sharing.html +4 -4
- package/web/docs/concepts/runner-control.html +4 -4
- package/web/docs/concepts/secrets.html +4 -4
- package/web/docs/concepts/session-run-turn.html +4 -4
- package/web/docs/deployment/backup-restore.html +4 -4
- package/web/docs/deployment/network.html +5 -5
- package/web/docs/deployment/node-installation.html +4 -4
- package/web/docs/deployment/node-linux.html +4 -4
- package/web/docs/deployment/node-macos.html +4 -4
- package/web/docs/deployment/node-windows.html +4 -4
- package/web/docs/deployment/production.html +4 -4
- package/web/docs/deployment/security-checklist.html +4 -4
- package/web/docs/deployment/upgrade.html +5 -5
- package/web/docs/en-US/administration/account.html +4 -4
- package/web/docs/en-US/administration/audit.html +4 -4
- package/web/docs/en-US/administration/conversation-templates.html +4 -4
- package/web/docs/en-US/administration/email-notifications.html +4 -4
- package/web/docs/en-US/administration/license.html +5 -5
- package/web/docs/en-US/administration/nodes-workspaces.html +4 -4
- package/web/docs/en-US/administration/oauth.html +4 -4
- package/web/docs/en-US/administration/secrets.html +4 -4
- package/web/docs/en-US/administration/template-workspace-maintenance.html +4 -4
- package/web/docs/en-US/administration/users-organizations.html +4 -4
- package/web/docs/en-US/concepts/architecture.html +4 -4
- package/web/docs/en-US/concepts/data-and-security.html +4 -4
- package/web/docs/en-US/concepts/files-git-terminal.html +4 -4
- package/web/docs/en-US/concepts/node-and-workspace.html +4 -4
- package/web/docs/en-US/concepts/permissions-and-sharing.html +4 -4
- package/web/docs/en-US/concepts/runner-control.html +4 -4
- package/web/docs/en-US/concepts/secrets.html +4 -4
- package/web/docs/en-US/concepts/session-run-turn.html +4 -4
- package/web/docs/en-US/deployment/backup-restore.html +4 -4
- package/web/docs/en-US/deployment/network.html +5 -5
- package/web/docs/en-US/deployment/node-installation.html +4 -4
- package/web/docs/en-US/deployment/node-linux.html +4 -4
- package/web/docs/en-US/deployment/node-macos.html +4 -4
- package/web/docs/en-US/deployment/node-windows.html +4 -4
- package/web/docs/en-US/deployment/production.html +4 -4
- package/web/docs/en-US/deployment/security-checklist.html +4 -4
- package/web/docs/en-US/deployment/upgrade.html +5 -5
- package/web/docs/en-US/getting-started/connect-node.html +4 -4
- package/web/docs/en-US/getting-started/first-agent-session.html +4 -4
- package/web/docs/en-US/getting-started/first-login.html +4 -4
- package/web/docs/en-US/getting-started/next-steps.html +4 -4
- package/web/docs/en-US/getting-started/npm-quick-start.html +7 -7
- package/web/docs/en-US/getting-started/overview.html +5 -5
- package/web/docs/en-US/getting-started/prerequisites.html +5 -5
- package/web/docs/en-US/getting-started/register-workspace.html +4 -4
- package/web/docs/en-US/getting-started/server-installation.html +6 -6
- package/web/docs/en-US/operations/marctl.html +4 -4
- package/web/docs/en-US/reference/configuration.html +4 -4
- package/web/docs/en-US/reference/keyboard-shortcuts.html +4 -4
- package/web/docs/en-US/reference/limits.html +4 -4
- package/web/docs/en-US/reference/ports-paths-data.html +4 -4
- package/web/docs/en-US/reference/status-and-errors.html +4 -4
- package/web/docs/en-US/runners/claude-code.html +4 -4
- package/web/docs/en-US/runners/codex.html +4 -4
- package/web/docs/en-US/runners/mar-agent.html +4 -4
- package/web/docs/en-US/runners/opencode.html +4 -4
- package/web/docs/en-US/runners/overview.html +4 -4
- package/web/docs/en-US/runners/runner-troubleshooting.html +4 -4
- package/web/docs/en-US/troubleshooting/node-offline.html +4 -4
- package/web/docs/en-US/troubleshooting/quick-diagnosis.html +4 -4
- package/web/docs/en-US/troubleshooting/session-run.html +4 -4
- package/web/docs/en-US/troubleshooting/terminal.html +4 -4
- package/web/docs/en-US/troubleshooting/workspace-files.html +4 -4
- package/web/docs/en-US/workbench/composer.html +4 -4
- package/web/docs/en-US/workbench/context-and-plan.html +4 -4
- package/web/docs/en-US/workbench/conversation.html +4 -4
- package/web/docs/en-US/workbench/file-reference-and-attachment.html +5 -5
- package/web/docs/en-US/workbench/files.html +5 -5
- package/web/docs/en-US/workbench/git-changes.html +4 -4
- package/web/docs/en-US/workbench/git-history.html +4 -4
- package/web/docs/en-US/workbench/hosted-conversations.html +4 -4
- package/web/docs/en-US/workbench/mobile.html +4 -4
- package/web/docs/en-US/workbench/navigation.html +4 -4
- package/web/docs/en-US/workbench/sessions.html +4 -4
- package/web/docs/en-US/workbench/skills.html +4 -4
- package/web/docs/en-US/workbench/terminal.html +4 -4
- package/web/docs/getting-started/connect-node.html +4 -4
- package/web/docs/getting-started/first-agent-session.html +4 -4
- package/web/docs/getting-started/first-login.html +4 -4
- package/web/docs/getting-started/next-steps.html +4 -4
- package/web/docs/getting-started/npm-quick-start.html +7 -7
- package/web/docs/getting-started/overview.html +5 -5
- package/web/docs/getting-started/prerequisites.html +5 -5
- package/web/docs/getting-started/register-workspace.html +4 -4
- package/web/docs/getting-started/server-installation.html +6 -6
- package/web/docs/hashmap.json +1 -1
- package/web/docs/operations/marctl.html +4 -4
- package/web/docs/reference/configuration.html +4 -4
- package/web/docs/reference/keyboard-shortcuts.html +4 -4
- package/web/docs/reference/limits.html +4 -4
- package/web/docs/reference/ports-paths-data.html +4 -4
- package/web/docs/reference/status-and-errors.html +4 -4
- package/web/docs/runners/claude-code.html +4 -4
- package/web/docs/runners/codex.html +4 -4
- package/web/docs/runners/mar-agent.html +4 -4
- package/web/docs/runners/opencode.html +4 -4
- package/web/docs/runners/overview.html +4 -4
- package/web/docs/runners/runner-troubleshooting.html +4 -4
- package/web/docs/troubleshooting/node-offline.html +4 -4
- package/web/docs/troubleshooting/quick-diagnosis.html +4 -4
- package/web/docs/troubleshooting/session-run.html +4 -4
- package/web/docs/troubleshooting/terminal.html +4 -4
- package/web/docs/troubleshooting/workspace-files.html +4 -4
- package/web/docs/workbench/composer.html +4 -4
- package/web/docs/workbench/context-and-plan.html +4 -4
- package/web/docs/workbench/conversation.html +4 -4
- package/web/docs/workbench/file-reference-and-attachment.html +5 -5
- package/web/docs/workbench/files.html +5 -5
- package/web/docs/workbench/git-changes.html +4 -4
- package/web/docs/workbench/git-history.html +4 -4
- package/web/docs/workbench/hosted-conversations.html +4 -4
- package/web/docs/workbench/mobile.html +4 -4
- package/web/docs/workbench/navigation.html +4 -4
- package/web/docs/workbench/sessions.html +4 -4
- package/web/docs/workbench/skills.html +4 -4
- package/web/docs/workbench/terminal.html +4 -4
- package/web/index.html +1 -1
- package/web/service-worker.js +1 -1
- package/web/web-version.json +1 -1
- package/web/assets/HtmlPreviewFrame-xgqXo3bD.js +0 -5
- package/web/assets/NodeManagementPage-C1Cj7rex.js +0 -1
- package/web/assets/NodeManagementPage-DRBCipFy.js +0 -1
- package/web/assets/SecretManagementPage-BDo50Fo5.js +0 -1
- package/web/assets/SessionSharePage-1Iv_l9w_.css +0 -1
- package/web/assets/SessionSharePage-whJFT3cw.js +0 -2
- package/web/assets/SkillCenterPage-Dl-aKzxp.js +0 -1
- package/web/assets/StandaloneFilePreviewPage-b-piNuN1.js +0 -1
- package/web/assets/SystemConfigurationPage-CUI3Icws.js +0 -1
- package/web/assets/WorkbenchPage-C1l73Bo7.css +0 -1
- package/web/assets/WorkbenchPage-D4X4qerH.js +0 -21
- package/web/assets/WorkspaceManagementPage-0uM3HF3o.js +0 -1
- package/web/assets/WorkspaceManagementPage-DlcAgYsx.js +0 -1
- package/web/assets/channel-D5Au5X55.js +0 -1
- package/web/assets/classDiagram-CYGNFDIV-CplRLUOK.js +0 -1
- package/web/assets/classDiagram-v2-TLXNO2FR-CplRLUOK.js +0 -1
- package/web/assets/infoDiagram-FKFFQAWI-ZeaWiVDx.js +0 -2
- package/web/assets/stateDiagram-v2-IH3M54BS-D93lsHZ8.js +0 -1
- package/web/assets/swimlanesDiagram-JKAHXJPX-C3UEWonA.js +0 -8
- package/web/assets/workbench-composer-interaction-controller-BJZsGMk-.js +0 -41
- package/web/assets/workbench-composer-interaction-controller-C2fEVYPz.css +0 -1
- package/web/docs/assets/administration_license.md.Bf1iyuKG.js +0 -1
- package/web/docs/assets/chunks/@localSearchIndexen-US.BEf68FQA.js +0 -1
- package/web/docs/assets/chunks/@localSearchIndexroot.Dw4g7XXs.js +0 -1
- package/web/docs/assets/deployment_network.md.BarghfLt.js +0 -1
- package/web/docs/assets/deployment_network.md.BarghfLt.lean.js +0 -1
- package/web/docs/assets/deployment_upgrade.md.BESOToM5.js +0 -1
- package/web/docs/assets/deployment_upgrade.md.BESOToM5.lean.js +0 -1
- package/web/docs/assets/en-US_administration_license.md.Dmg8rNEl.js +0 -1
- package/web/docs/assets/en-US_deployment_network.md.DdOgOLns.js +0 -1
- package/web/docs/assets/en-US_deployment_network.md.DdOgOLns.lean.js +0 -1
- package/web/docs/assets/en-US_deployment_upgrade.md.DZiDDiLn.js +0 -1
- package/web/docs/assets/en-US_getting-started_npm-quick-start.md.Dwsi-ffA.js +0 -3
- package/web/docs/assets/en-US_getting-started_npm-quick-start.md.Dwsi-ffA.lean.js +0 -1
- package/web/docs/assets/en-US_getting-started_prerequisites.md.Bpx_AQD1.js +0 -1
- package/web/docs/assets/en-US_getting-started_prerequisites.md.Bpx_AQD1.lean.js +0 -1
- package/web/docs/assets/en-US_workbench_file-reference-and-attachment.md.Xzbr8MRS.js +0 -1
- package/web/docs/assets/en-US_workbench_file-reference-and-attachment.md.Xzbr8MRS.lean.js +0 -1
- package/web/docs/assets/en-US_workbench_files.md.C5byBZOZ.js +0 -1
- package/web/docs/assets/getting-started_npm-quick-start.md.CcxMwUgz.js +0 -3
- package/web/docs/assets/getting-started_npm-quick-start.md.CcxMwUgz.lean.js +0 -1
- package/web/docs/assets/getting-started_prerequisites.md.D26KU42D.js +0 -1
- package/web/docs/assets/workbench_file-reference-and-attachment.md.CSLMm-nL.js +0 -1
- package/web/docs/assets/workbench_file-reference-and-attachment.md.CSLMm-nL.lean.js +0 -1
- package/web/docs/assets/workbench_files.md.B5xE7YGc.js +0 -1
- /package/web/docs/assets/{administration_license.md.Bf1iyuKG.lean.js → administration_license.md.CVLEsGB6.lean.js} +0 -0
- /package/web/docs/assets/{en-US_administration_license.md.Dmg8rNEl.lean.js → en-US_administration_license.md.GCAYq1LT.lean.js} +0 -0
- /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
- /package/web/docs/assets/{getting-started_overview.md.CA1CCOBc.lean.js → getting-started_overview.md.Cv-HSfAh.lean.js} +0 -0
- /package/web/docs/assets/{getting-started_server-installation.md.D3P3Lmc2.lean.js → getting-started_server-installation.md.BsEfVH6b.lean.js} +0 -0
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/TerminalTabView-DvEnQt4Q.js","assets/index-CkdgQdyk.js","assets/index-By66DnCX.css","assets/MarIcon-7ATHlb9_.js","assets/MarIcon-aPIFZI-D.css","assets/HtmlPreviewFrame-BWUJugCe.js","assets/FilePreviewLoading-xWmLA-hX.js","assets/use-form-common-props-BOlG14S9.js","assets/mobile-dialog-return-service-CTr7uf3K.js","assets/el-input-C5zWHdoA.js","assets/el-input-8ehKRrZb.css","assets/mobile-dialog-return-service-pE1w6qia.css","assets/BusyIndicator-CJepRD30.js","assets/FilePreviewLoading-BFt-X_61.css","assets/el-form-item-Dq_bK-Q9.js","assets/el-form-item-D_relxjU.css","assets/el-switch-BBMCqiRH.js","assets/message-box-service-p64-2ZLT.js","assets/message-box-service-amIz9eLF.css","assets/el-switch-DpR9-s4E.css","assets/error-presentation-uG_Pz-4V.js","assets/file-presentation-Cm7tx53N.js","assets/HtmlPreviewFrame-D_Jf4aL-.css","assets/time-presentation-DoNuOMmH.js","assets/conversation-history-Crx4ncHc.js","assets/workbench-presentation-DRcAJQ63.js","assets/workbench-presentation-CPQZ-olG.css","assets/workbench-composer-interaction-controller-BaGSbCxC.js","assets/el-checkbox-D0efHW4S.js","assets/last-DXTTfs9a.js","assets/el-checkbox-CzNtyWdF.css","assets/el-radio-DKbfSkAS.js","assets/el-radio-B4O75OaI.css","assets/el-select-pINM-mXh.js","assets/index-CyzAAgQ3.js","assets/_baseFindIndex-D7XfJLKM.js","assets/_baseIteratee-eYBSuzub.js","assets/el-select-D5zQ8kOe.css","assets/runner-presentation-D4sxHhdR.js","assets/workbench-composer-interaction-controller-DRyjmQHD.css","assets/el-checkbox-group-D_6SYB2i.css","assets/el-tag-1VV9QMa7.css","assets/hosted-conversation-template-client-BBChWnuL.js","assets/oauth-callback-CM7WkzLQ.js","assets/el-alert-DQS8ZePt.js","assets/el-alert-B6UgayC7.css","assets/code-navigation-target-BlnRe0-a.js","assets/mcp-center-service-CLyFS3Va.js","assets/catalog-page-service-YyYk6Ggw.js","assets/ManagementPagination-COGUI_6N.js","assets/ManagementPagination-BWt9HPYQ.css","assets/el-date-picker-Bku-3B7K.js","assets/index-B2ZMoChP.js","assets/el-table-column-BcasE3gG.js","assets/merge-BEHLop1o.js","assets/isArrayLikeObject-gY0T7koT.js","assets/el-table-column-Dp73S2HR.css","assets/advancedFormat-CSQIetpu.js","assets/el-date-picker-BsrAVvYx.css","assets/union-E1iOItEy.js","assets/el-input-number-BJUCiZru.js","assets/el-input-number-DExoAqKP.css","assets/enterprise-management-service-B0orfFAW.js","assets/NodeDetailsDialogs-BXghz6Vq.js","assets/el-descriptions-CBHVTmYh.js","assets/el-descriptions-BpDzfuC8.css","assets/EnvironmentSecretManager-6TsEyKME.js","assets/management-url-service-CqDpOe_M.js","assets/EnvironmentSecretManager-C8dOmosG.css","assets/NodeDetailsDialogs-Bga2VjXd.css","assets/TerminalTabView-rhaLa1jH.css","assets/SettingsContent-lmlrCtzr.js","assets/SettingsContent-v_lWDRPM.css","assets/SettingsContent-t4Hhk6bN.js","assets/SettingsContent-KfsLZ_Eu.css"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{a7 as ja,an as Ut,d as ot,a9 as il,aa as Nn,z as sl,c as _,o as f,b as L,G as j,S as je,u as o,H as M,g as B,v as ue,X as gt,d7 as rn,aD as Wv,aF as Mv,bL as Jo,a as $,b_ as ll,U as _a,af as Ya,ak as xv,aj as $v,ch as Fv,cl as Uv,al as Vv,p as ye,q as Z,f as Dt,eV as qv,ae as mn,w as Ge,as as Li,ai as Hv,at as Bv,ao as cl,eW as Gv,I as we,M as hr,ac as dl,Q as ul,J as it,E as Me,aK as At,c0 as zv,cF as Kv,cr as jv,em as _v,av as Yv,O as qe,P as Xe,eX as vl,t as c,dv as Pn,D as Ot,ah as fl,_ as ut,eY as Rt,A as Yt,dM as Qa,dO as dt,e as yt,s as Be,eZ as Qv,e_ as Jv,e$ as Xv,cd as Gt,f0 as Zv,ce as Zn,bk as Ft,K as tt,f1 as ef,f2 as tf,f3 as nf,r as Un,cC as Wi,n as oa,f4 as pl,f5 as af,a0 as bt,be as xa,f6 as of,f7 as rf,f8 as Mi,f9 as sf,dD as $a,Y as wt,fa as lf,fb as cf,fc as df,fd as uf,fe as vf,ff,fg as pf,fh as ea,fi as xi,fj as gf,fk as mf,fl as Ca,fm as hf,fn as yf,fo as wf,fp as Ro,aL as kf,fq as bf,L as Tt,ad as Ct,aB as gl,aM as ra,cL as yr,fr as If,F as ia,fs as $i,ft as Fi,bg as wr,ag as kr,R as Sf,eK as Cf,fu as Tf,bi as Ef,bj as Ui,dP as ml,b5 as hl,$ as yl,cf as wl,dK as kl,fv as Rf,fw as Af,d0 as Nf}from"./index-CkdgQdyk.js";import{U as ta,C as br,a as St,E as Vt}from"./el-input-C5zWHdoA.js";import{f as Kt}from"./time-presentation-DoNuOMmH.js";import{q as Df,d as Pf,s as Of,b as Ao,g as Oa}from"./conversation-history-Crx4ncHc.js";import{a as Lf,t as Wf,e as Vi,b as Xo,d as Jn,n as La,f as Zo,s as Mf,g as Sn,w as xf,h as $f,i as Ff,W as No,j as Uf,k as qi,E as Ir,l as Hi}from"./workbench-presentation-DRcAJQ63.js";import{o as Bi,c as er,f as bl,M as Gi,z as Vf,E as Zt,u as Qt,m as Jt}from"./mobile-dialog-return-service-CTr7uf3K.js";import{P as En,Q as qf,R as Hf,S as Bf,T as Fa,U as Gf,w as Il,H as Sl,K as Cl,L as Tl,V as tr,d as zf,s as Kf,W as jf,c as _f,p as Yf,i as Qf,k as Jf,g as Xf,l as Zf,j as ep,b as tp,y as np,h as ap,f as op,t as El,r as rp,n as Rl,X as ip,Y as sp,x as Al,a as lp,Z as cp,_ as dp,$ as up,a0 as vp,M as fp,a1 as zi,a2 as Nl,a3 as pp,a4 as gp,a5 as Ki,u as mp,a6 as hp,a7 as yp,a8 as Do,a9 as wp,aa as kp,o as bp,m as Ip,ab as Ua,ac as Sp,e as Cp,ad as Tp,ae as hn,af as Ep,I as Dl,ag as Rp,ah as Ap,ai as Pl,aj as Ol,ak as Np,C as Ll,A as Wl,J as Ml,al as Ta,am as Dp,z as Pp,E as Op,D as Lp,F as Wp,B as Mp,G as xp,an as Sr}from"./workbench-composer-interaction-controller-BaGSbCxC.js";import{E as Nt,a as ji}from"./message-box-service-p64-2ZLT.js";import{r as Fn,l as xl,a as $l}from"./runner-presentation-D4sxHhdR.js";import{e as lt,f as Cr,a as Tr}from"./error-presentation-uG_Pz-4V.js";import{n as $p,s as Va,T as _i,d as nr,C as Fp,u as Er,D as Yi,S as Qi,a as ar,w as on,i as qa,c as Up,G as Vp,H as Po,p as qp,b as or,f as rr,h as sn,E as ln,g as cn,B as ir,l as Ji,k as Xi,j as Hp,F as Bp}from"./FilePreviewLoading-xWmLA-hX.js";import{c as Gp,o as Zi,w as zp,t as es,f as ts,e as Oo,h as Kp,i as jp,g as sr,d as ns,a as as,r as os,s as _p,b as Yp,p as Ja,u as Qp,I as Jp,F as Lo,v as Xp,x as Zp,l as Fl,W as Ul,k as Vl,y as eg,H as tg,n as ng,z as Rr,A as ag,M as ql,B as fn}from"./HtmlPreviewFrame-BWUJugCe.js";import{c as Hl,f as Ha,w as og}from"./file-presentation-Cm7tx53N.js";import{l as Bl}from"./hosted-conversation-template-client-BBChWnuL.js";import{o as rg}from"./oauth-callback-CM7WkzLQ.js";import{E as Ar}from"./el-alert-DQS8ZePt.js";import{M as De}from"./MarIcon-7ATHlb9_.js";import{n as ig}from"./code-navigation-target-BlnRe0-a.js";import{E as sa}from"./index-CyzAAgQ3.js";/* empty css */import{E as yn,a as Vn,b as sg}from"./el-select-pINM-mXh.js";import{E as Gl}from"./el-checkbox-D0efHW4S.js";import{c as lg}from"./mcp-center-service-CLyFS3Va.js";import{B as gn}from"./BusyIndicator-CJepRD30.js";import{a as la,E as ca}from"./el-form-item-Dq_bK-Q9.js";import{t as cg,P as dg,u as ug,b as rs,a as vg,c as fg,d as pg,p as gg,e as mg,f as hg,E as yg}from"./el-date-picker-Bku-3B7K.js";import{u as Wo}from"./union-E1iOItEy.js";import{d as zl}from"./advancedFormat-CSQIetpu.js";import{a as wg,b as kg}from"./el-radio-DKbfSkAS.js";import{E as bg}from"./ManagementPagination-COGUI_6N.js";import{E as Ig}from"./el-switch-BBMCqiRH.js";import{a as Sg}from"./use-form-common-props-BOlG14S9.js";import{a as Cg,E as Tg}from"./el-table-column-BcasE3gG.js";import{E as Eg}from"./el-input-number-BJUCiZru.js";import{c as is}from"./enterprise-management-service-B0orfFAW.js";import{N as Rg}from"./NodeDetailsDialogs-BXghz6Vq.js";const Ag=ja({...cg,parsedValue:{type:Ut(Array)}}),Ng=["disabled"];var Dg=ot({__name:"panel-time-range",props:Ag,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,a=t,r=(te,x)=>{const ee=[];for(let se=te;se<=x;se++)ee.push(se);return ee},{t:s,lang:i}=il(),l=Nn("time"),d=Nn("picker"),v=sl(dg),{arrowControl:u,disabledHours:y,disabledMinutes:k,disabledSeconds:T,defaultValue:p}=v.props,m=_(()=>[l.be("range-picker","body"),l.be("panel","content"),l.is("arrow",u),g.value?"has-seconds":""]),S=_(()=>[l.be("range-picker","body"),l.be("panel","content"),l.is("arrow",u),g.value?"has-seconds":""]),N=_(()=>n.parsedValue[0]),I=_(()=>n.parsedValue[1]),b=ug(n,{modelValue:_(()=>v.props.modelValue),valueOnClear:_(()=>v?.emptyValues?v.emptyValues.valueOnClear.value:null)}),C=()=>{const te=b.value;a("pick",te,!1),gt(()=>{b.value=te})},g=_(()=>n.format.includes("ss")),R=_(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),W=(te=!1)=>{a("pick",[N.value,I.value],te)},w=te=>{H(te.millisecond(0),I.value)},D=te=>{H(N.value,te.millisecond(0))},E=te=>{const x=te.map(se=>rn(se).locale(i.value)),ee=ve(x);return x[0].isSame(ee[0])&&x[1].isSame(ee[1])},H=(te,x)=>{n.visible&&a("pick",[te,x],!0)},J=_(()=>N.value>I.value),Y=$([0,2]),q=(te,x)=>{a("select-range",te,x,"min"),Y.value=[te,x]},Q=_(()=>g.value?11:8),V=(te,x)=>{a("select-range",te,x,"max");const ee=o(Q);Y.value=[te+ee,x+ee]},U=te=>{const x=g.value?[0,3,6,11,14,17]:[0,3,8,11],ee=["hours","minutes"].concat(g.value?["seconds"]:[]),se=(x.indexOf(Y.value[0])+te+x.length)%x.length,Se=x.length/2;se<Se?le.start_emitSelectRange(ee[se]):le.end_emitSelectRange(ee[se-Se])},A=te=>{const x=Wv(te),{left:ee,right:se,up:Se,down:Fe}=Mv;if([ee,se].includes(x)){U(x===ee?-1:1),te.preventDefault();return}if([Se,Fe].includes(x)){const We=x===Se?-1:1;le[`${Y.value[0]<Q.value?"start":"end"}_scrollDown`](We),te.preventDefault();return}},h=(te,x)=>{const ee=y?y(te):[],se=te==="start",Se=(x||(se?I.value:N.value)).hour();return Wo(ee,se?r(Se+1,23):r(0,Se-1))},F=(te,x,ee)=>{const se=k?k(te,x):[],Se=x==="start",Fe=ee||(Se?I.value:N.value);if(te!==Fe.hour())return se;const We=Fe.minute();return Wo(se,Se?r(We+1,59):r(0,We-1))},K=(te,x,ee,se)=>{const Se=T?T(te,x,ee):[],Fe=ee==="start",We=se||(Fe?I.value:N.value),be=We.hour(),he=We.minute();if(te!==be||x!==he)return Se;const Ue=We.second();return Wo(Se,Fe?r(Ue+1,59):r(0,Ue-1))},ve=([te,x])=>[ae(te,"start",!0,x),ae(x,"end",!1,te)],{getAvailableHours:X,getAvailableMinutes:oe,getAvailableSeconds:ge}=fg(h,F,K),{timePickerOptions:le,getAvailableTime:ae,onSetOption:P}=vg({getAvailableHours:X,getAvailableMinutes:oe,getAvailableSeconds:ge}),z=te=>te?Jo(te)?te.map(x=>rn(x,n.format).locale(i.value)):rn(te,n.format).locale(i.value):null,ce=()=>{if(Jo(p))return p.map(x=>rn(x).locale(i.value));const te=rn(p).locale(i.value);return[te,te.add(60,"m")]};return a("set-picker-option",["parseUserInput",z]),a("set-picker-option",["isValidValue",E]),a("set-picker-option",["handleKeydownInput",A]),a("set-picker-option",["getDefaultValue",ce]),a("set-picker-option",["getRangeAvailableTime",ve]),a("set-picker-option",["handleCancel",C]),(te,x)=>te.actualVisible?(f(),L("div",{key:0,class:je([o(l).b("range-picker"),o(d).b("panel")])},[j("div",{class:je(o(l).be("range-picker","content"))},[j("div",{class:je(o(l).be("range-picker","cell"))},[j("div",{class:je(o(l).be("range-picker","header"))},M(o(s)("el.datepicker.startTime")),3),j("div",{class:je(m.value)},[B(rs,{ref:"minSpinner",role:"start","show-seconds":g.value,"am-pm-mode":R.value,"arrow-control":o(u),"spinner-date":N.value,"disabled-hours":h,"disabled-minutes":F,"disabled-seconds":K,onChange:w,onSetOption:o(P),onSelectRange:q},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2),j("div",{class:je(o(l).be("range-picker","cell"))},[j("div",{class:je(o(l).be("range-picker","header"))},M(o(s)("el.datepicker.endTime")),3),j("div",{class:je(S.value)},[B(rs,{ref:"maxSpinner",role:"end","show-seconds":g.value,"am-pm-mode":R.value,"arrow-control":o(u),"spinner-date":I.value,"disabled-hours":h,"disabled-minutes":F,"disabled-seconds":K,onChange:D,onSetOption:o(P),onSelectRange:V},null,8,["show-seconds","am-pm-mode","arrow-control","spinner-date","onSetOption"])],2)],2)],2),j("div",{class:je(o(l).be("panel","footer"))},[j("button",{type:"button",class:je([o(l).be("panel","btn"),"cancel"]),onClick:x[0]||(x[0]=ee=>C())},M(o(s)("el.datepicker.cancel")),3),j("button",{type:"button",class:je([o(l).be("panel","btn"),"confirm"]),disabled:J.value,onClick:x[1]||(x[1]=ee=>W())},M(o(s)("el.datepicker.confirm")),11,Ng)],2)],2)):ue("v-if",!0)}}),Pg=Dg;rn.extend(zl);var Og=ot({name:"ElTimePicker",install:null,props:{...pg,isRange:Boolean},emits:[ta],setup(e,t){const n=$(),[a,r]=e.isRange?["timerange",Pg]:["time",gg],s=i=>t.emit(ta,i);return ll(mg,e.popperOptions),t.expose({focus:()=>{n.value?.focus()},blur:()=>{n.value?.blur()},handleOpen:()=>{n.value?.handleOpen()},handleClose:()=>{n.value?.handleClose()}}),()=>B(hg,_a(e,{ref:n,type:a,format:e.format??"HH:mm:ss","onUpdate:modelValue":s}),{default:i=>B(r,i,null)})}});const Lg=Ya(Og),ss=e=>xv(e)||$v(e)||Jo(e),Wg=ja({accordion:Boolean,modelValue:{type:Ut([Array,String,Number]),default:()=>Fv([])},expandIconPosition:{type:Ut([String]),default:"right"},beforeCollapse:{type:Ut(Function)}}),Mg={[ta]:ss,[br]:ss},Kl=Symbol("collapseContextKey"),xg=ja({title:{type:String,default:""},name:{type:Ut([String,Number]),default:void 0},icon:{type:Vv,default:Uv},disabled:Boolean});var $g=ot({name:"ElCollapseTransition",__name:"collapse-transition",setup(e){const t=Nn("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(),ye(mn,_a({name:o(t).b()},qv(a)),{default:Z(()=>[Dt(r.$slots,"default")]),_:3},16,["name"]))}}),Fg=$g;const Ug=Ya(Fg),ls="ElCollapse",Vg=(e,t)=>{const n=$(Bi(e.modelValue)),a=i=>{n.value=i;const l=e.accordion?n.value[0]:n.value;t(ta,l),t(br,l)},r=i=>{if(e.accordion)a([n.value[0]===i?"":i]);else{const l=[...n.value],d=l.indexOf(i);d>-1?l.splice(d,1):l.push(i),a(l)}},s=async i=>{const{beforeCollapse:l}=e;if(!l){r(i);return}const d=l(i);[Li(d),Hv(d)].includes(!0)||Bv(ls,"beforeCollapse must return type `Promise<boolean>` or `boolean`"),Li(d)?d.then(v=>{v!==!1&&r(i)}).catch(v=>{cl(ls,`some error occurred: ${v}`)}):d&&r(i)};return Ge(()=>e.modelValue,()=>n.value=Bi(e.modelValue),{deep:!0}),ll(Kl,{activeNames:n,handleItemClick:s}),{activeNames:n,setActiveNames:a}},qg=e=>{const t=Nn("collapse");return{rootKls:_(()=>[t.b(),t.b(`icon-position-${e.expandIconPosition}`)])}};var Hg=ot({name:"ElCollapse",__name:"collapse",props:Wg,emits:Mg,setup(e,{expose:t,emit:n}){const a=e,{activeNames:r,setActiveNames:s}=Vg(a,n),{rootKls:i}=qg(a);return t({activeNames:r,setActiveNames:s}),(l,d)=>(f(),L("div",{class:je(o(i))},[Dt(l.$slots,"default")],2))}}),Bg=Hg;const Gg=e=>{const t=sl(Kl),{namespace:n}=Nn("collapse"),a=$(!1),r=$(!1),s=Gv(),i=_(()=>s.current++),l=_(()=>e.name??`${n.value}-id-${s.prefix}-${o(i)}`),d=_(()=>t?.activeNames.value.includes(o(l)));return{focusing:a,id:i,isActive:d,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)))}}},zg=(e,{focusing:t,isActive:n,id:a})=>{const r=Nn("collapse"),s=_(()=>[r.b("item"),r.is("active",o(n)),r.is("disabled",e.disabled)]),i=_(()=>[r.be("item","header"),r.is("active",o(n)),{focusing:o(t)&&!e.disabled}]),l=_(()=>[r.be("item","arrow"),r.is("active",o(n))]);return{itemTitleKls:_(()=>[r.be("item","title")]),arrowKls:l,headKls:i,rootKls:s,itemWrapperKls:_(()=>r.be("item","wrap")),itemContentKls:_(()=>r.be("item","content")),scopedContentId:_(()=>r.b(`content-${o(a)}`)),scopedHeadId:_(()=>r.b(`head-${o(a)}`))}},Kg=["id","aria-expanded","aria-controls","aria-describedby","tabindex","aria-disabled"],jg=["id","aria-hidden","aria-labelledby"];var _g=ot({name:"ElCollapseItem",__name:"collapse-item",props:xg,setup(e,{expose:t}){const n=e,{focusing:a,id:r,isActive:s,handleFocus:i,handleHeaderClick:l,handleEnterClick:d}=Gg(n),{arrowKls:v,headKls:u,rootKls:y,itemTitleKls:k,itemWrapperKls:T,itemContentKls:p,scopedContentId:m,scopedHeadId:S}=zg(n,{focusing:a,isActive:s,id:r});return t({isActive:s}),(N,I)=>(f(),L("div",{class:je(o(y))},[j("div",{id:o(S),class:je(o(u)),"aria-expanded":o(s),"aria-controls":o(m),"aria-describedby":o(m),tabindex:e.disabled?void 0:0,"aria-disabled":e.disabled,role:"button",onClick:I[0]||(I[0]=(...b)=>o(l)&&o(l)(...b)),onKeydown:I[1]||(I[1]=ul(it((...b)=>o(d)&&o(d)(...b),["stop"]),["space","enter"])),onFocus:I[2]||(I[2]=(...b)=>o(i)&&o(i)(...b)),onBlur:I[3]||(I[3]=b=>a.value=!1)},[j("span",{class:je(o(k))},[Dt(N.$slots,"title",{isActive:o(s)},()=>[we(M(e.title),1)])],2),Dt(N.$slots,"icon",{isActive:o(s)},()=>[B(o(dl),{class:je(o(v))},{default:Z(()=>[(f(),ye(hr(e.icon)))]),_:1},8,["class"])])],42,Kg),B(o(Ug),null,{default:Z(()=>[Me(j("div",{id:o(m),role:"region",class:je(o(T)),"aria-hidden":!o(s),"aria-labelledby":o(S)},[j("div",{class:je(o(p))},[Dt(N.$slots,"default")],2)],10,jg),[[At,o(s)]])]),_:3})],2))}}),jl=_g;const Yg=Ya(Bg,{CollapseItem:jl}),Qg=zv(jl),_l="09:00",Yl="18:00",Ql="00:30",Jg=ja({format:{type:String,default:"HH:mm"},modelValue:{type:Ut(String)},disabled:{type:Boolean,default:void 0},editable:{type:Boolean,default:!0},effect:{type:Ut(String),default:"light"},clearable:{type:Boolean,default:!0},size:Yv,placeholder:String,start:{type:String,default:_l},end:{type:String,default:Yl},step:{type:String,default:Ql},minTime:{type:Ut(String)},maxTime:{type:Ut(String)},includeEndTime:Boolean,name:String,prefixIcon:{type:Ut([String,Object]),default:()=>_v},clearIcon:{type:Ut([String,Object]),default:()=>jv},popperClass:{type:Ut([String,Array,Object,Boolean]),default:""},popperStyle:{type:Ut([String,Array,Object,Boolean]),default:void 0},...Kv}),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},Xg=e=>!!e&&e.hours>=0&&e.minutes>=0&&!Number.isNaN(e.hours)&&!Number.isNaN(e.minutes),Mo=(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},cs=e=>`${e}`.padStart(2,"0"),Wa=e=>`${cs(e.hours)}:${cs(e.minutes)}`,Zg=(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,Wa(r)};var em=ot({name:"ElTimeSelect",__name:"time-select",props:Jg,emits:[br,"blur","focus","clear",ta],setup(e,{expose:t}){rn.extend(zl);const{Option:n}=yn,a=e,r=Nn("input"),s=$(),i=Sg(),{lang:l}=il(),d=(I,b,C,g=!0)=>{const R=An(I);return!Xg(R)||!g&&R.hours===0&&R.minutes===0?(cl("ElTimeSelect",`invalid ${b}, fallback to default ${b} (${C}).`),C):Wa(R)},v=_(()=>a.modelValue),u=_(()=>d(a.start,"start",_l)),y=_(()=>d(a.end,"end",Yl)),k=_(()=>{const I=An(a.minTime||"");return I?Wa(I):null}),T=_(()=>{const I=An(a.maxTime||"");return I?Wa(I):null}),p=_(()=>d(a.step,"step",Ql,!1)),m=_(()=>{const I=[],b=(g,R)=>{I.push({value:g,rawValue:R,disabled:Mo(R,k.value||"-1:-1")<=0||Mo(R,T.value||"100:100")>=0})};let C=u.value;for(;Mo(C,y.value)<=0;)b(rn(C,"HH:mm").locale(l.value).format(a.format),C),C=Zg(C,p.value);return a.includeEndTime&&I[I.length-1]?.rawValue!==y.value&&b(rn(y.value,"HH:mm").locale(l.value).format(a.format),y.value),I});return t({blur:()=>{s.value?.blur?.()},focus:()=>{s.value?.focus?.()}}),(I,b)=>(f(),ye(o(yn),{ref_key:"select",ref:s,name:e.name,"model-value":v.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":b[0]||(b[0]=C=>I.$emit(o("update:modelValue"),C)),onChange:b[1]||(b[1]=C=>I.$emit(o("change"),C)),onBlur:b[2]||(b[2]=C=>I.$emit("blur",C)),onFocus:b[3]||(b[3]=C=>I.$emit("focus",C)),onClear:b[4]||(b[4]=()=>I.$emit("clear"))},{prefix:Z(()=>[e.prefixIcon?(f(),ye(o(dl),{key:0,class:je(o(r).e("prefix-icon"))},{default:Z(()=>[(f(),ye(hr(e.prefixIcon)))]),_:1},8,["class"])):ue("v-if",!0)]),default:Z(()=>[(f(!0),L(qe,null,Xe(m.value,C=>(f(),ye(o(n),{key:C.value,label:C.value,value:C.value,disabled:C.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"]))}}),tm=em;const nm=Ya(tm);function am(){return vl()}function om(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 Dn(e){return e==="STARTING"||e==="RUNNING"||e==="CANCELLING"}function Ba(e){return Dn(e.status)?e.startedAt:e.completedAt??e.updatedAt}function Tn(e){return e.titleSource==="DEFAULT"?c("hostedConversations.temporaryTitle"):e.title}const rm=["aria-label"],im=ot({__name:"EnterpriseLoginExtension",props:{request:{type:Function}},setup(e){const t=e,n=$([]),{t:a}=Pn();return Ot(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=St;return n.value.length>0?(f(),L("div",{key:0,class:"sso-login","aria-label":o(a)("auth.enterpriseLogin")},[j("div",null,[j("span",null,M(o(a)("auth.orEnterprise")),1)]),(f(!0),L(qe,null,Xe(n.value,l=>(f(),ye(i,{key:l.providerKey,tag:"a",href:`/api/oauth/${encodeURIComponent(l.providerKey)}/login?locale=${encodeURIComponent(o(fl)())}`},{default:Z(()=>[we(M(o(a)("auth.loginWith",{provider:l.name})),1)]),_:2},1032,["href"]))),128))],8,rm)):ue("",!0)}}}),sm=ut(im,[["__scopeId","data-v-260a9012"]]);function lm(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 cm(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()}},d=e.invalidateManifest,v=e.refreshManifest,u=e.reactivate,y=e.discardNodeCache,k=e.refreshSession;function T(S,N=!0){if(d(S),t.value==="conversations"&&i.selectedNodeId.value===S){N&&l.current?.restartHostedConversation().catch(()=>{});return}t.value!=="nodes"||r.value!==S||s.value!==void 0&&n.value===void 0&&u(S)||(v(S),N&&(s.value!==void 0&&l.current?.restartWorkspace(s.value),a.value!==void 0&&k()))}function p(S){if(d(S),t.value==="conversations"&&i.selectedNodeId.value===S){l.current?.restartHostedConversation().catch(()=>{});return}t.value==="nodes"&&(y(S),r.value===S&&v(S),r.value===S&&e.resetSession(),r.value===S&&s.value!==void 0&&l.current?.restartWorkspace(s.value),r.value===S&&a.value!==void 0&&k())}function m(){document.visibilityState==="visible"?(e.direct.connectionLost(),e.live.reconnect()):e.coordinator()?.handleVisibility()}return{connected:T,resync:p,handleVisibility:m}}function dm(e){let t=0;async function n(i,l,d){t+=1,e.workspace.selectConversation(i,l,d),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 d=t+1;try{await n(i.nodeId,i.conversationId)}catch{if(d!==t)return;r(),l()}}return{select:a,openTarget:n,clear:r,restoreTarget:s}}const Ea="mar.user.csrf-token",ds=8;function um(e){const{translate:t,currentLocale:n}=e.presentation;let a=0,r=0,s=0;const i=$(!1),l=$(!1);async function d(b,C){for(;b!==void 0&&C();){const g=n();if(b===g)return;try{await e.request("/api/auth/preferences/locale",{method:"PUT",body:JSON.stringify({locale:g})})}catch{C()&&e.notice(t("common.localeUpdateFailed"),"error");return}b=g}}function v(){return a+=1,r+=1,e.invalidateRequests(),a}async function u(b){try{await e.onAuthenticated()}catch(C){if(b!==a)return;e.notice(t("generated.adminAuthService.workbenchRecoveryFailed",{value0:e.errorMessage(C)}),"error",C)}}function y(){v(),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(Ea),e.onSignedOut()}async function k(){const b=++r,C=a,g=()=>b===r&&C===a;l.value=!0;try{const R=await e.request("/api/auth/me");if(!g())return;if(!R.authenticated){y();return}const W=window.sessionStorage.getItem(Ea)??"";if(W.length===0&&await e.renewCsrfToken(),!g()||(W.length>0&&(e.csrfToken.value=W),e.admin.value=R,i.value=!1,e.loaded.value=!0,R.authenticated&&await d(R.locale,g),!g()))return;R.authenticated&&!R.mustChangePassword&&await u(C)}catch(R){if(!g())return;R instanceof Yt&&R.code==="UNAUTHENTICATED"?y():(e.admin.value.authenticated||(i.value=!0,e.loaded.value=!0),e.notice(t("generated.adminAuthService.authenticationRecoveryFailed",{value0:e.errorMessage(R)}),"error",R))}finally{g()&&(l.value=!1)}}async function T(){const b=a,C=++s,g=()=>b===a&&C===s;if(!e.admin.value.authenticated||e.admin.value.mustChangePassword){e.sessions.value=[];return}try{const R=await e.request("/api/auth/sessions");g()&&(e.sessions.value=R.sessions)}catch(R){if(!g())return;e.sessions.value=[],e.notice(t("generated.adminAuthService.unableToLoadSignInSessions",{value0:e.errorMessage(R)}),"error",R)}}async function p(b){const C=a;e.loading.value=!0;try{if(await e.request(`/api/auth/sessions/${encodeURIComponent(b.id)}`,{method:"DELETE"}),C!==a)return;b.current?y():await T()}catch(g){if(C!==a)return;e.notice(t("generated.adminAuthService.unableToRevokeTheSignInSession",{value0:e.errorMessage(g)}),"error",g)}finally{C===a&&(e.loading.value=!1)}}async function m(b){const C=v();e.loading.value=!0;try{const g=await e.request("/api/auth/login",{method:"POST",body:JSON.stringify({...b,locale:n()})});if(C!==a||(e.invalidateRequests(),r+=1,e.csrfToken.value=g.csrfToken,window.sessionStorage.setItem(Ea,g.csrfToken),e.admin.value=g,i.value=!1,await d(g.locale,()=>C===a),C!==a))return;g.mustChangePassword||await u(C)}catch(g){if(C!==a)return;e.notice(t("generated.adminAuthService.signInFailed",{value0:e.errorMessage(g)}),"error",g)}finally{C===a&&(e.loading.value=!1)}}async function S(b){try{if(await u(b),b!==a)return;await T()}catch(C){if(b!==a)return;e.notice(t("generated.adminAuthService.unableToUpdateThePassword",{value0:e.errorMessage(C)}),"error",C)}finally{b===a&&(e.loading.value=!1)}}async function N(b){if(b.password.length<ds)return e.passwordError.value=t("generated.adminAuthService.theNewPasswordMustContainAtLeast",{value0:ds}),!1;if(b.password!==b.confirmation)return e.passwordError.value=t("generated.adminAuthService.theNewPasswordsDoNotMatch"),!1;const C=v();let g=!1;e.passwordError.value="",e.loading.value=!0;try{const R=await e.request("/api/auth/change-password",{method:"POST",body:JSON.stringify({currentPassword:b.currentPassword,password:b.password})});return C!==a?!1:(e.invalidateRequests(),r+=1,e.csrfToken.value=R.csrfToken,window.sessionStorage.setItem(Ea,R.csrfToken),e.admin.value=R,e.password.value="",e.notice(t("generated.adminAuthService.passwordUpdatedPreviousSignInSessionsWere"),"success"),g=!0,S(C),!0)}catch(R){return C!==a||e.notice(t("generated.adminAuthService.unableToUpdateThePassword",{value0:e.errorMessage(R)}),"error",R),!1}finally{!g&&C===a&&(e.loading.value=!1)}}async function I(){const b=a;e.loading.value=!0;try{if(await e.request("/api/auth/logout",{method:"POST"}),b!==a)return;y()}catch(C){if(b!==a)return;e.notice(t("generated.adminAuthService.unableToSignOut",{value0:e.errorMessage(C)}),"error",C)}finally{b===a&&(e.loading.value=!1)}}return{view:Rt({admin:e.admin,adminLoaded:e.loaded,authenticationUnknown:i,authenticationRestoring:l,adminSessions:e.sessions,changePassword:N,csrfToken:e.csrfToken,formatSessionTime:Kt,loading:e.loading,locked:_(()=>e.admin.value.authenticated&&e.admin.value.mustChangePassword),login:m,logout:I,logoutAdminSession:p,newPassword:e.password,passwordValidationError:e.passwordError,refreshAdmin:k,refreshAdminSessions:T,renewCsrfToken:e.renewCsrfToken,request:e.request}),authenticationUnknown:i,restoring:l,returnToLogin:y,refresh:k,refreshSessions:T,logoutSession:p,login:m,changePassword:N,logout:I}}function vm(e){const t=$(),n=$(!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:_(()=>t.value),pending:_(()=>n.value),create:a}}const us={"mar-agent":0,codex:1,"claude-code":2,opencode:3};function vs(e){return e.map(t=>({...t,accessOptions:t.accessOptions.map(n=>{const a=ps(t.runner,"access",n.id,n.description);return{...n,label:fs(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=ps(t.runner,"command",n.id,n.description);return{...n,...n.stateLabel===void 0?{}:{stateLabel:fs(t.runner,"state",n.id,n.stateLabel)},...a===void 0?{}:{description:a}}})})).sort((t,n)=>us[t.runner]-us[n.runner])}const fm={"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"},pm={"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 fs(e,t,n,a){const r=pm[`${e}:${t}:${n}`];return r===void 0?a:c(r)}function ps(e,t,n,a){const r=fm[`${e}:${t}:${n}`];return r===void 0?a:c(r)}function gm(e){const t=$([]),n=$(!1),a=$(!1),r=new Map,s=new Map,i=new Map;let l=0,d=Promise.resolve();function v(m){return r.has(m)}function u(m){return vs(r.get(m)??[])}function y(m){t.value=u(m)}async function k(m){const S=e.workspaceTarget.value,N=S?.workspaceId,I=()=>b===l&&e.workspaceTarget.value?.nodeId===m&&e.workspaceTarget.value===S,b=++l;n.value=!0,a.value=!1;const C=i.get(m)??0;let g;try{const R=`/api/runner-profiles?nodeId=${encodeURIComponent(m)}${N===void 0?"":`&workspaceId=${encodeURIComponent(N)}`}&cacheOnly=true`,W=await e.request(R);return g=(D=>{if(!I())return;if(!Array.isArray(D.profiles))throw new Error("RUNNER_PROFILES_INVALID");r.set(m,D.profiles);const E=vs(D.profiles);t.value=E;const H=(i.get(m)??0)===C;return H&&s.set(m,hm(D.defaults,E)),{profiles:E,defaultsChanged:H}})(W),g}catch{I()&&(y(m),a.value=!0);return}finally{I()&&(n.value=!1)}}function T(m,S){const N=m===void 0?void 0:s.get(m)?.get(S);return N!==void 0&&lr(N,t.value)?N:mm(S,t.value)}function p(m,S){if(!lr(S,t.value))return;const N=new Map(s.get(m));N.set(S.runner,S),s.set(m,N),i.set(m,(i.get(m)??0)+1),d=d.catch(()=>{}).then(async()=>{try{await e.request("/api/runner-defaults",{method:"PUT",body:JSON.stringify({nodeId:m,...S})})}catch(I){e.workspaceTarget.value?.nodeId===m&&e.notice(c("generated.runnerProfileService.unableToSaveTheNodeDefaultSession",{value0:e.errorMessage(I)}),"error",I)}})}return Ge(()=>e.workspaceTarget.value,()=>{l+=1,n.value=!1,a.value=!1;const m=e.workspaceTarget.value?.nodeId;m!==void 0?y(m):t.value=[]},{flush:"sync"}),Ge(Qa().locale,()=>{const m=e.workspaceTarget.value?.nodeId;m!==void 0&&y(m)}),{profiles:_(()=>t.value),loading:_(()=>n.value),failed:_(()=>a.value),has:v,cached:u,restore:y,load:k,defaultFor:T,save:p}}function mm(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:Ga(a),access:n?.accessOptions[0]?.id??""}}function Ga(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 lr(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 hm(e,t){return new Map((Array.isArray(e)?e:[]).filter(n=>lr(n,t)).map(n=>[n.runner,n]))}function ym(e){const t=$(!1),n=$(""),a=$(!1),r=$(""),s=$(),i=$(!1),l=$([]);let d=0;const v=_(()=>{const S=s.value;return S===void 0||n.value.length===0?!1:r.value.length>0?S.selectable&&n.value===gs(S.currentPath,r.value):n.value===S.currentPath?S.selectable:S.entries.some(N=>N.path===n.value&&N.selectable)});function u(S=!1){d+=1,n.value="",a.value=!1,r.value="",s.value=void 0,i.value=!1,l.value=S?["register"]:[]}async function y(S){const N=e.targetNodeId.value;if(N===void 0)return;const I=++d;i.value=!0,r.value="",n.value="";try{const b=new URLSearchParams({nodeId:N});S!==void 0&&b.set("path",S);const C=(await e.request(`/api/workspace-directories?${b.toString()}`)).directory;if(I!==d||e.targetNodeId.value!==N)return;s.value=C,n.value=""}catch(b){if(I!==d||e.targetNodeId.value!==N)return;e.error(c("generated.workspaceRegistrationService.unableToLoadAvailableDirectories",{value0:e.errorMessage(b)}),b)}finally{I===d&&(i.value=!1)}}function k(S){r.value="",n.value=S}function T(S){const N=s.value;N!==void 0&&(r.value=S,n.value=gs(N.currentPath,S))}function p(){r.value.length!==0&&(r.value="",n.value="")}async function m(S){const N=e.targetNodeId.value,I=n.value.trim();if(N===void 0||I.length===0)return;const b=s.value?.currentPath;if(!(r.value.length>0&&b===void 0)){t.value=!0;try{const C={nodeId:N,path:r.value.length>0?b:I,preserveGitConfig:a.value,...r.value.length>0?{createDirectoryName:r.value}:{}},R=(e.submit!==void 0?await e.submit(C,S):await e.request("/api/workspaces",{method:"POST",body:JSON.stringify(C)}))?.workspace?.id;if(typeof R!="string")throw new Error("WORKSPACE_REGISTER_RESPONSE_INVALID");if(e.targetNodeId.value!==N)return;u(),await e.onRegistered(N,R)}catch(C){e.error(wm(e.errorMessage(C)),C)}finally{t.value=!1}}}return{loading:dt(t),path:n,preserveGitConfig:a,pendingDirectoryName:r,directory:s,loadingDirectory:i,openTools:l,selectedPathValid:v,reset:u,load:y,select:k,selectPendingDirectory:T,discardPendingDirectory:p,register:m}}function gs(e,t){const n=e.includes("\\")&&!e.includes("/")?"\\":"/";return`${e.replace(/[\\/]+$/u,"")}${n}${t}`}function wm(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 km(){const e=$([]);return{sessions:_(()=>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 bm(e){const t=km(),n=$(!1),a=$(new Map);let r=0;const s=$({MAIN:0,CHILD:0}),i=$(new Set),l=_(()=>{const X=e.workspaceTarget.value;if(!(X===void 0||e.groupingSupported?.()!==!0))return a.value.get(e.tabId(X.nodeId,X.workspaceId))??"MAIN"}),d=()=>l.value===void 0?"":`&sessionGroup=${l.value}`;function v(X,oe=!1){const ge=e.workspaceTarget.value;if(ge===void 0||l.value===void 0&&!oe)return;const le=e.tabId(ge.nodeId,ge.workspaceId);(a.value.get(le)??"MAIN")!==X&&(r+=1,a.value.set(le,X))}const u=$(""),y=$([]),k=$(null),T=$(!1),p=$(!1),m=$(),S=new Map;let N,I,b=0,C,g=0;Ge(l,()=>{const X=e.workspaceTarget.value;if(X===void 0)return;const oe=e.tabId(X.nodeId,X.workspaceId);S.set(oe,(S.get(oe)??0)+1),N=void 0,I=void 0,g+=1,e.paging.loadingMore.value=!1,e.paging.reset(oe),e.paging.nextCursors.value.set(oe,null),t.retainSelectedInWorkspace(X.workspaceId,e.selectedSessionId.value),i.value=new Set;const ge=u.value;A(),ge&&U(ge)},{flush:"sync"});function R(X,oe){let ge=oe;return oe.commandStates===void 0&&X?.commandStates!==void 0&&(ge={...ge,commandStates:X.commandStates}),oe.runtime===void 0&&X?.runtime!==void 0&&(ge={...ge,runtime:X.runtime}),ge}const W=t.markManagedActive,w=t.replaceAll;function D(X,oe){const ge=R(X,oe),le=e.runs.value.some(ae=>["STARTING","RUNNING","CANCELLING"].includes(ae.status)&&(ae.sessionId===X?.id||ae.sessionId===oe.id));return X?.activity!=="MANAGED_ACTIVE"||oe.activity==="MANAGED_ACTIVE"||!le?ge:{...ge,activity:X.activity,...X.control===void 0?{}:{control:X.control},...X.runtime===void 0?{}:{runtime:X.runtime}}}function E(X){return X.nativeControl==="MAR_MANAGED"||X.control?.level==="MANAGED"}function H(X,oe){if(X.workspaceId!==oe.workspaceId||X.runner!==oe.runner)return!1;if(X.id===oe.id)return!0;const ge=X.externalSessionId,le=oe.externalSessionId;return typeof ge=="string"&&ge.length>0&&ge===le}function J(X,oe,ge=!1){const le=ge?oe:D(X,oe);return X!==void 0&&JSON.stringify(X)===JSON.stringify(le)?X:le}function Y(X,oe={}){const ge=t.sessions.value,le=new Map(ge.map(z=>[z.id,z])),ae=ge.map(z=>z.id);for(const z of X){const ce=le.get(z.id),te=[...le.values()].filter(ee=>H(ee,z)),x=te.find(E);if(x!==void 0&&!E(z)){for(const ee of te)ee.id!==x.id&&le.delete(ee.id);continue}for(const ee of te)if(ee.id!==z.id){le.delete(ee.id);const se=ae.indexOf(ee.id);se>=0&&(ae[se]=z.id)}le.set(z.id,J(ce,z,oe.authoritativeActivity===!0)),ae.includes(z.id)||ae.push(z.id),te.some(ee=>ee.id===e.selectedSessionId.value)&&e.setSelectedSessionId(z.id)}let P;if(oe.authoritativeOrder===!0){const z=new Set(X.map(ce=>ce.id));P=[...X.flatMap(ce=>{const te=le.get(ce.id);return te===void 0?[]:[te]}),...ae.filter(ce=>!z.has(ce)).flatMap(ce=>{const te=le.get(ce);return te===void 0?[]:[te]})]}else P=ae.flatMap(z=>{const ce=le.get(z);return ce===void 0?[]:[ce]});P.length===ge.length&&P.every((z,ce)=>z===ge[ce])||t.replaceAll(P)}function q(X,oe,ge){ge.runningCounts!==void 0&&(s.value=ge.runningCounts);const le=e.tabId(X,oe),ae=(S.get(le)??0)+1;S.set(le,ae),N={id:le,generation:ae,page:ge};const P=i.value.size,z=e.workspaceTarget.value,ce=z?.nodeId===X&&z.workspaceId===oe;I=void 0,ce&&(g+=1,e.paging.loadingMore.value=!1),e.paging.initialize(le),e.paging.nextCursors.value.set(le,ge.nextCursor),e.paging.loadMoreErrors.value.delete(le),ce&&P>ge.sessions.length&&ge.nextCursor!==null?(I={id:le,generation:ae,page:ge,workspace:z,visibleCount:P},Y(ge.sessions,{authoritativeActivity:!0}),Q()):(i.value=new Set(ge.sessions.map(te=>te.id)),Y(ge.sessions,{authoritativeOrder:!0,authoritativeActivity:!0})),ce&&u.value&&l.value!==void 0&&U(u.value)}async function Q(){const X=I;if(X===void 0)return;const oe=++g,ge=()=>I===X&&S.get(X.id)===X.generation&&e.workspaceTarget.value===X.workspace,le=new Set(X.page.sessions.map(P=>P.id));let ae=X.page.nextCursor;e.paging.loadingMore.value=!0,e.paging.loadMoreErrors.value.delete(X.id);try{for(;le.size<X.visibleCount&&ae!==null;){const z=new Map(t.sessions.value.map(x=>[x.id,x])),ce=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(X.workspace.nodeId)}&workspaceId=${encodeURIComponent(X.workspace.workspaceId)}&limit=${Math.min(e.pageSize,X.visibleCount-le.size)}${d()}&cursor=${encodeURIComponent(ae)}`);if(!ge())return;if(ce.nextCursor===ae)throw new Error("SESSION_PAGINATION_NO_PROGRESS");const te=new Map(t.sessions.value.map(x=>[x.id,x]));Y(ce.sessions.filter(x=>te.get(x.id)===z.get(x.id)));for(const x of ce.sessions)le.add(x.id);ae=ce.nextCursor}if(!ge())return;const P=new Map(t.sessions.value.map(z=>[z.id,z]));i.value=le,Y([...le].flatMap(z=>{const ce=P.get(z);return ce===void 0?[]:[ce]}),{authoritativeOrder:!0}),e.paging.nextCursors.value.set(X.id,ae),I=void 0}catch(P){ge()&&e.paging.loadMoreErrors.value.set(X.id,P)}finally{oe===g&&(e.paging.loadingMore.value=!1)}}async function V(){const X=e.workspaceTarget.value,oe=X?.nodeId,ge=e.workspaceTarget.value?.workspaceId;if(oe===void 0||ge===void 0||e.paging.loadingMore.value||n.value)return;const le=e.tabId(oe,ge);if(I?.id===le)return Q();const ae=e.paging.nextCursors.value.get(le);if(typeof ae!="string")return;const P=S.get(le)??0,z=++g,ce=()=>(S.get(le)??0)===P&&e.workspaceTarget.value===X&&e.workspaceTarget.value?.nodeId===oe&&e.workspaceTarget.value?.workspaceId===ge;e.paging.loadingMore.value=!0,e.paging.loadMoreErrors.value.delete(le);try{const te=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(oe)}&workspaceId=${encodeURIComponent(ge)}&limit=${e.pageSize}${d()}&cursor=${encodeURIComponent(ae)}`);if(!ce())return;if(te.nextCursor===ae)throw new Error("SESSION_PAGINATION_NO_PROGRESS");Y(te.sessions),i.value=new Set([...i.value,...te.sessions.map(x=>x.id)]),e.paging.append(le,te.sessions.length,te.nextCursor)}catch(te){if(!ce())return;e.paging.loadMoreErrors.value.set(le,te)}finally{z===g&&(e.paging.loadingMore.value=!1)}}async function U(X){const oe=e.workspaceTarget.value,ge=oe?.nodeId,le=e.workspaceTarget.value?.workspaceId,ae=X.trim().slice(0,160),P=++b,z=ae===u.value&&C?.workspace===oe&&C?.group===l.value;if(C={workspace:oe,group:l.value},u.value=ae,z||(y.value=[],k.value=null),p.value=!1,m.value=void 0,T.value=!1,!(ge===void 0||le===void 0||ae.length===0)){T.value=!0;try{const ce=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(ge)}&workspaceId=${encodeURIComponent(le)}&limit=${e.pageSize}${d()}&query=${encodeURIComponent(ae)}`);if(P!==b||e.workspaceTarget.value!==oe||e.workspaceTarget.value?.nodeId!==ge||e.workspaceTarget.value?.workspaceId!==le)return;y.value=ce.sessions,k.value=ce.nextCursor,ce.runningCounts!==void 0&&(s.value=ce.runningCounts)}catch(ce){P===b&&e.notice(e.errorMessage(ce),"error",ce)}finally{P===b&&(T.value=!1)}}}function A(){b+=1,C=void 0,u.value="",y.value=[],k.value=null,T.value=!1,p.value=!1,m.value=void 0}Ge(e.workspaceTarget,()=>{A(),I=void 0,i.value=new Set,s.value={MAIN:0,CHILD:0},g+=1,e.paging.loadingMore.value=!1});async function h(){const X=e.workspaceTarget.value,oe=X?.nodeId,ge=e.workspaceTarget.value?.workspaceId,le=u.value,ae=k.value;if(oe===void 0||ge===void 0||le.length===0||ae===null||p.value||T.value)return;const P=b,z=()=>P===b&&e.workspaceTarget.value===X&&e.workspaceTarget.value?.nodeId===oe&&e.workspaceTarget.value?.workspaceId===ge;p.value=!0,m.value=void 0;try{const ce=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(oe)}&workspaceId=${encodeURIComponent(ge)}&limit=${e.pageSize}${d()}&cursor=${encodeURIComponent(ae)}&query=${encodeURIComponent(le)}`);if(!z())return;if(ce.nextCursor===ae)throw new Error("SESSION_PAGINATION_NO_PROGRESS");const te=new Map(y.value.map(x=>[x.id,x]));for(const x of ce.sessions)te.set(x.id,x);y.value=[...te.values()],k.value=ce.nextCursor}catch(ce){z()&&(m.value=ce)}finally{z()&&(p.value=!1)}}async function F(X,oe=!1){const ge=e.workspaceTarget.value,le=ge?.nodeId;if(le===void 0)return;const ae=e.tabId(le,X),P=(S.get(ae)??0)+1;S.set(ae,P),I?.id===ae&&(I={...I,generation:P}),g+=1,e.paging.loadingMore.value=!1;const z=()=>S.get(ae)===P&&e.workspaceTarget.value===ge&&e.workspaceTarget.value?.nodeId===le&&e.workspaceTarget.value?.workspaceId===X,ce=await e.request(`/api/agent-sessions?nodeId=${encodeURIComponent(le)}&workspaceId=${encodeURIComponent(X)}&limit=${e.pageSize}${d()}`).catch(te=>{if(z()){if(oe)throw te;e.notice(c("generated.workspaceSessionService.unableToSynchronizeSessions",{value0:e.errorMessage(te)}),"error")}});if(!z()){const te=N?.id===ae?N:void 0;return oe&&te!==void 0&&e.workspaceTarget.value===ge&&e.workspaceTarget.value?.nodeId===le&&e.workspaceTarget.value?.workspaceId===X&&te?.generation===S.get(ae)?te.page:void 0}if(ce!==void 0&&(I=void 0,e.paging.reset(ae),i.value=new Set(ce.sessions.map(te=>te.id)),Y(ce.sessions,{authoritativeOrder:!0}),ce.runningCounts!==void 0&&(s.value=ce.runningCounts),e.paging.nextCursors.value.set(ae,ce.nextCursor)),oe)return ce}async function K(){const X=e.workspaceTarget.value?.workspaceId;if(!(X===void 0||n.value)){n.value=!0;try{u.value?await U(u.value):await F(X)}finally{n.value=!1}}}function ve(X){const oe=_(()=>(u.value.length>0?y.value:X.unfiltered.value).filter(P=>l.value===void 0||(P.sessionGroup??"MAIN")===l.value&&(u.value.length>0||i.value.has(P.id)))),ge=_(()=>u.value.length>0?k.value!==null:X.canLoadMore.value),le=_(()=>u.value.length>0?p.value:e.paging.loadingMore.value),ae=_(()=>{if(u.value.length>0)return m.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:oe,canLoadMore:ge,loadingMore:le,loadMoreError:ae,loadMore:()=>u.value.length>0?h():V()}}return{projection:t,currentGroup:l,createVisibleList:ve,selectGroup:v,groupSelectionRevision:()=>r,runningCounts:s,listedSessionIds:i,refreshing:n,searchQuery:u,searchResults:y,searchNextCursor:k,searching:T,loadingMoreSearchResults:p,loadMoreSearchResultsError:m,preserveManagedActive:D,markManagedActive:W,replaceSessions:w,merge:Y,applySnapshot:q,loadMore:V,search:U,clearSearch:A,loadMoreSearchResults:h,synchronize:F,refresh:K}}const Im=["nodes","conversations","settings","management"];function Jl(e){const t=new URLSearchParams(e.search),n=v=>t.get(v)||void 0,a=n("node"),r=n("workspace"),s=n("session"),i=n("view"),l=n("conversation"),d=Im.find(v=>v===i);return{...a===void 0?{}:{nodeId:a},...r===void 0?{}:{workspaceId:r},...s===void 0?{}:{sessionId:s},...d===void 0?{}:{view:d},...d==="conversations"&&a!==void 0&&l!==void 0?{hostedConversation:{nodeId:a,conversationId:l}}:{}}}const za="mar.workbench.selection.v1";function Sm(e){let t=!1;const n=new Set;async function a(){const i=Cm();if(!e.isWorkbenchActive()||i===void 0||e.workspaceTarget.value!==void 0)return;if(!e.nodes.value.some(y=>y.id===i.workspace.nodeId)){t=!0,s();return}const l=e.activateWorkspace(i.workspace),d=e.workspaceTarget.value,v=e.currentSelectionRevision?.(),u=()=>d!==void 0&&e.workspaceTarget.value===d&&e.selectedSessionId.value===void 0&&e.currentSelectionRevision?.()===v;n.add(u);try{await l&&u()&&await r(i.workspace.workspaceId,i.sessionId)}finally{n.delete(u),s()}}async function r(i,l){const d=e.workspaceTarget.value;if(d===void 0)return;const v=d.nodeId,u=()=>e.nodes.value.some(p=>p.id===v&&p.connected===!1),y=e.selectedSessionId.value,k=e.currentSelectionRevision?.(),T=()=>e.workspaceTarget.value===d&&d.workspaceId===i&&e.selectedSessionId.value===y&&e.currentSelectionRevision?.()===k;n.add(T);try{if(u()){T()&&l!==void 0&&e.setSelectedSessionId(l);return}let p;if(l!==void 0){try{p=await e.lookupSession(v,l)}catch(m){if(!["SESSION_NOT_FOUND","FORBIDDEN","REQUEST_FAILED_404","REQUEST_FAILED_403"].includes(yt(m)??""))throw m}if(!T())return;p?.workspaceId!==i&&(p=void 0)}if(p===void 0){const m=await e.synchronizeSessions(i);if(!T()||m===void 0)return;p=m.find(S=>S.workspaceId===i&&S.id!==l)}p===void 0?e.openDraft():await e.openSession(p.id)}catch(p){T()&&(l!==void 0&&e.setSelectedSessionId(l),(yt(p)!=="NODE_OFFLINE"||!u())&&e.notice(p))}finally{n.delete(T),s()}}function s(){if([...n].some(u=>u()))return;const i=e.workspaceTarget.value;if(!t&&i===void 0)return;t=!0;const l=e.selectedSessionId.value,d=e.sessions.value.find(u=>u.id===l),v=l?.startsWith("draft:")||d!==void 0&&!En(d)?void 0:l;try{if(i===void 0){localStorage.removeItem(za);return}localStorage.setItem(za,JSON.stringify({workspace:i,...v===void 0?{}:{sessionId:v}})),e.rememberSession?.(i.nodeId,i.workspaceId,v)}catch{}}return{restore:a,restoreSession:r,persist:s}}function Cm(){try{const e=JSON.parse(localStorage.getItem(za)??"null");if(Tm(e))return e;e!==null&&localStorage.removeItem(za);return}catch{return}}function Tm(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 Em(e){const{restore:t,restoreSession:n,persist:a}=Sm({...e,isWorkbenchActive:()=>e.view.value==="nodes"}),r=Jl(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}`),er();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,d=e.selectedHostedConversationId?.value;l!==void 0&&d!==void 0?(i.searchParams.set("node",l),i.searchParams.set("conversation",d)):(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}`),er()}return{restore:t,restoreSession:n,sync:s,hostedConversationRoute:r}}function Rm(e){return bl({isOpen:e.isOpen,close:()=>{e.close(),e.syncRoute()}})}function Am(e){const t=$(!1);async function n(u){let y;try{y=(await Nt.prompt(c("generated.workbenchEntityService.leaveBlankToDisplayTheRegisteredAddress"),c("generated.workbenchEntityService.renameNode"),{closeIcon:Be("close"),inputValue:u.displayName??"",inputPlaceholder:u.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(u.id)}`,{method:"PATCH",body:JSON.stringify({displayName:y.trim()===""?null:y.trim()})});let T;try{T=await k()}catch(p){if(yt(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(u){const y=e.workspaceTarget.value?.nodeId;if(y===void 0)return;const k=u.customTitle??u.runnerTitle??"";let T;try{T=(await Nt.prompt(c("generated.workbenchEntityService.enterANonEmptySessionName"),c("generated.workbenchEntityService.renameSession"),{closeIcon:Be("close"),inputValue:k,inputPlaceholder:u.runnerTitle??c("generated.workbenchEntityService.sessionName"),inputValidator:p=>{const m=p.trim().length;return m===0?c("generated.workbenchEntityService.sessionNameCannotBeEmpty"):m<=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(u.id)}/metadata`,{method:"PATCH",body:JSON.stringify({nodeId:y,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(u){const y=e.workspaceTarget.value;if(!(y===void 0||u.sessionGroup!=="CHILD"||r.has(u.id))){r.add(u.id);try{try{await Nt.confirm(c("sessionGroups.description"),c("sessionGroups.move"),{closeIcon:Be("close"),confirmButtonText:c("sessionGroups.confirm"),cancelButtonText:c("sessionGroups.cancel")})}catch{return}if(e.workspaceTarget.value!==y)return;t.value=!0;const k=await e.request(`/api/agent-sessions/${e.sessionPathId(u.id)}/metadata`,{method:"PATCH",body:JSON.stringify({nodeId:y.nodeId,clearParent:!0})});return e.workspaceTarget.value!==y?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(u.id),t.value=!1}}}async function i(u,y){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(u.id)}/metadata`,{method:"PATCH",body:JSON.stringify({nodeId:k,pinned:y})}),!0}catch(T){return e.notice(c(y?"common.unableToPinSession":"common.unableToUnpinSession",{reason:e.errorMessage(T)}),"error",T),!1}finally{t.value=!1}}async function l(u,y,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(u.id)}/pin-order`,{method:"PATCH",body:JSON.stringify({nodeId:T,direction:y,...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 d(u){const y=e.workspaceTarget.value?.nodeId;if(y===void 0||e.canDeleteSession?.(u)===!1)return!1;try{await Nt.confirm(c("generated.workbenchEntityService.thisPermanentlyDeletesTheNativeSessionAnd",{value0:Fn(u.runner),value1:e.sessionTitle(u)}),c("generated.workbenchEntityService.deleteSession"),{closeIcon:Be("close"),icon:Be("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!==y||e.canDeleteSession?.(u)===!1)return!1;const k=e.beginSubmission?.(`session:${u.id}`);if(e.beginSubmission!==void 0&&k===void 0)return!1;t.value=!0;try{return await e.request(`/api/agent-sessions/${e.sessionPathId(u.id)}?nodeId=${encodeURIComponent(y)}`,{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 v(u){try{await Nt.confirm(c("generated.workbenchEntityService.deletingDisconnectsItAndRemovesItsServer",{value0:e.nodeLabel(u)}),c("generated.workbenchEntityService.deleteNode"),{closeIcon:Be("close"),icon:Be("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 y=()=>e.request(`/api/nodes/${encodeURIComponent(u.id)}`,{method:"DELETE"});try{await y()}catch(k){if(yt(k)!=="CSRF_INVALID")throw k;await e.renewCsrfToken(),await y()}return e.notice(c("generated.workbenchEntityService.nodeDeletedCreateANewRegistrationToken"),"success"),!0}catch(y){return e.notice(c("generated.workbenchEntityService.unableToDeleteTheNode",{value0:e.errorMessage(y)}),"error",y),!1}finally{t.value=!1}}return{loading:dt(t),renameNode:n,renameSession:a,moveSessionToMain:s,setSessionPinned:i,movePinnedSession:l,deleteSession:d,deleteNode:v}}function Nm(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 Wn="mar.workspace-upload-tasks",Dm=512*1024,Pm=2,Ra=new Map;function ms(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 Om(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 Lm(e){const t=$([]),n=$(),a=$(),r=new Map,s=new Map,i=new Map,l=new Set,d=new Map,v=crypto.randomUUID(),u=new Map,y={receive:I};let k=!1;const T=_(()=>t.value.filter(h=>h.status==="QUEUED"||h.status==="UPLOADING").length),p=_(()=>{const h=t.value.reduce((F,K)=>F+K.size,0);return h===0?t.value.length===0?0:100:Math.min(100,Math.round(t.value.reduce((F,K)=>F+Math.min(K.receivedBytes,K.size),0)/h*100))});function m(h){return{recoveryOwner:u.get(h.id)??v,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 S(){const h=t.value.flatMap(F=>["QUEUED","UPLOADING","FAILED","INTERRUPTED"].includes(F.status)?[m(F)]:[]);try{h.length===0?window.sessionStorage.removeItem(Wn):window.sessionStorage.setItem(Wn,JSON.stringify(h))}catch{}return h}function N(h){const F=d.get(h.id);if(!k||F===void 0)return;d.delete(h.id);const K=Ra.get(h.id);if(K!==void 0){K.receive(F,h);return}try{const ve=JSON.parse(window.sessionStorage.getItem(Wn)??"[]");if(!Array.isArray(ve))return;const X=ve.findIndex(oe=>ms(oe,F));if(X===-1)return;ve[X]={...ve[X],uploadId:h.uploadId,receivedBytes:h.receivedBytes,status:"FAILED",cleanupUnconfirmed:!0,error:h.error},window.sessionStorage.setItem(Wn,JSON.stringify(ve))}catch{}}function I(h,F){if(k)return;const K=t.value.find(ve=>ve.id===h.id);K?.status!=="INTERRUPTED"||!ms(m(K),h)||(Object.assign(K,{uploadId:F.uploadId,receivedBytes:F.receivedBytes,cleanupUnconfirmed:!0,error:F.error}),S())}function b(){for(const h of u.keys())Ra.get(h)===y&&Ra.delete(h)}function C(h){u.set(h.id,crypto.randomUUID())}function g(){if(!k){b(),u.clear();try{const h=JSON.parse(window.sessionStorage.getItem(Wn)??"[]");t.value=Om(h);for(const F of t.value){const K=Array.isArray(h)?h.find(ve=>ve?.id===F.id):void 0;u.set(F.id,typeof K?.recoveryOwner=="string"?K.recoveryOwner:v),Ra.set(F.id,y)}S()}catch{window.sessionStorage.removeItem(Wn)}}}function R(h){k||!t.value.some(F=>F.id===h.id)||e.onTaskChanged?.(h)}function W(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 w(h){if(k)return;const F=e.workspaceTarget.value?.nodeId,K=e.workspaceTarget.value?.workspaceId;if(!(F===void 0||K===void 0)){t.value.push(...h.map(ve=>({...ve,id:crypto.randomUUID(),nodeId:F,workspaceId:K,name:ve.file.name,size:ve.file.size,receivedBytes:0,status:"QUEUED",cancelled:!1})));for(const ve of t.value.slice(-h.length))R(ve);D()}}async function D(){for(;!k&&t.value.filter(h=>h.status==="UPLOADING").length<Pm;){const h=t.value.find(F=>F.status==="QUEUED");if(h===void 0)return;h.status="UPLOADING",R(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),K=h.directCleanupPending===!0;if(K&&h.uploadId===void 0&&F===void 0)throw new Error("DIRECT_UNAVAILABLE");if(h.uploadId===void 0&&F!==void 0){const X=new AbortController;s.set(h.id,X);let oe=!1;try{h.transport="DIRECT",R(h);const ge=h.directory==="."||h.directory===""?h.name:`${h.directory.replace(/\/+$/u,"")}/${h.name}`,le=await qf(h.file);if(k||h.cancelled)throw new Error("UPLOAD_CANCELLED");if(oe=!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:le,overwrite:h.overwrite},file:h.file,onProgress:ae=>{h.receivedBytes=ae},signal:X.signal}),h.cancelled)throw new Error("UPLOAD_CANCELLED");h.directCleanupPending=!1,h.cleanupUnconfirmed=!1,h.receivedBytes=h.size,h.status="COMPLETED",k||e.onFilesChanged(),R(h);return}catch(ge){const le=yt(ge);if(k||h.cancelled||le==="UPLOAD_CANCELLED"||K||oe&&le!=="DIRECT_UNAVAILABLE"&&le!=="DIRECT_TRANSFER_INVALID"&&le!=="DIRECT_TRANSFER_UNAVAILABLE"&&le!=="DIRECT_PREPARE_TIMEOUT"&&le!=="DIRECT_SESSION_LIMIT_REACHED"&&le!=="DIRECT_TRANSFER_GRANT_INVALID")throw ge;h.receivedBytes=0,h.directCleanupPending=!1,h.transport="SERVER",h.directFallback=!0,R(h)}finally{s.delete(h.id)}}if(k||h.cancelled)return;if(h.transport="SERVER",h.uploadId!==void 0)try{const X=await e.request(`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads/${encodeURIComponent(h.uploadId)}?nodeId=${encodeURIComponent(h.nodeId)}`);if(X.upload.size!==h.size)throw new Error("UPLOAD_SOURCE_MISMATCH");h.receivedBytes=X.upload.receivedBytes}catch(X){if(yt(X)!=="UPLOAD_NOT_FOUND")throw X;delete h.uploadId,h.receivedBytes=0}if(k||h.cancelled)return;if(h.uploadId===void 0){const X=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=X.upload.uploadId,h.receivedBytes=X.upload.receivedBytes,k||h.cancelled){await J(h);return}}for(;h.receivedBytes<h.size;){if(k||h.cancelled)throw new Error("UPLOAD_CANCELLED");const X=h.receivedBytes,oe=h.file.slice(X,Math.min(h.size,X+Dm)),ge=await H(h,X,oe);h.receivedBytes=ge.receivedBytes}if(k||h.cancelled)throw new Error("UPLOAD_CANCELLED");l.add(h.id);const ve=await e.request(`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads/${encodeURIComponent(h.uploadId)}/complete`,{method:"POST",body:JSON.stringify({nodeId:h.nodeId})});h.receivedBytes=ve.upload.receivedBytes,h.status="COMPLETED",k||e.onFilesChanged(),R(h)}catch(F){if(h.cancelled||yt(F)==="UPLOAD_CANCELLED"){h.status=h.directCleanupPending||h.cleanupUnconfirmed?"FAILED":"CANCELLED",h.directCleanupPending&&(h.cleanupUnconfirmed=!0),R(h);return}h.status=k?"INTERRUPTED":"FAILED",h.error=lt(F),R(h)}finally{r.delete(h.id),s.delete(h.id),l.delete(h.id)}}async function H(h,F,K){let ve,X=!1;for(let oe=0;oe<3;oe+=1){if(k||h.cancelled)throw new Error("UPLOAD_CANCELLED");try{return await new Promise((ge,le)=>{const ae=new XMLHttpRequest;r.set(h.id,ae),ae.open("POST",`/api/workspaces/${encodeURIComponent(h.workspaceId)}/uploads/${encodeURIComponent(h.uploadId??"")}/chunks?nodeId=${encodeURIComponent(h.nodeId)}&offset=${F}`),ae.withCredentials=!0,ae.setRequestHeader("content-type","application/octet-stream"),ae.setRequestHeader("x-csrf-token",e.csrfToken.value),ae.upload.onprogress=P=>{P.lengthComputable&&(h.receivedBytes=Math.min(h.size,F+P.loaded))},ae.onerror=()=>le(new Error("UPLOAD_NETWORK_FAILED")),ae.onabort=()=>le(new Error("UPLOAD_CANCELLED")),ae.onload=()=>{if(ae.status<200||ae.status>=300){let P;try{P=JSON.parse(ae.responseText).error?.code}catch{P=void 0}le(new Error(P??`REQUEST_FAILED_${ae.status}`));return}try{const P=JSON.parse(ae.responseText);if(!Number.isSafeInteger(P.upload?.receivedBytes))throw new Error("NODE_RESPONSE_INVALID");ge({receivedBytes:P.upload?.receivedBytes})}catch(P){le(P)}},ae.send(K)})}catch(ge){if(ve=ge,k||h.cancelled)throw ge;if(yt(ge)==="CSRF_INVALID"){if(X)throw ge;X=!0,await e.renewCsrfToken()}h.receivedBytes=F}}throw ve instanceof Error?ve:new Error("UPLOAD_CHUNK_FAILED")}async function J(h){const F=i.get(h.id);if(F!==void 0)return F;k||C(h);const K=Y(h);if(h.uploadId===void 0)return K;i.set(h.id,K);try{return await K}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(yt(F)!=="UPLOAD_NOT_FOUND")return h.cleanupUnconfirmed=!0,h.error=lt(F),h.status="FAILED",N(h),R(h),!1}delete h.uploadId}return h.directCleanupPending?(h.cleanupUnconfirmed=!0,h.status="FAILED",R(h),!1):(h.cleanupUnconfirmed=!1,h.status="CANCELLED",R(h),!0)}async function q(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 J(h)||k||(C(h),h.cancelled=!1,delete h.uploadId,h.receivedBytes=0,delete h.error,delete h.directFallback,delete h.transport,h.status="QUEUED",R(h),D())}}function Q(h){if(k)return;const F=h.target,K=F.files?.[0],ve=t.value.find(X=>X.id===a.value);if(F.value="",a.value=void 0,!(K===void 0||ve===void 0)){if(C(ve),K.name!==ve.name||K.size!==ve.size){ve.error=c("generated.workspaceUploadService.selectTheOriginalFileWithTheSame"),R(ve);return}ve.file=K,ve.cancelled=!1,delete ve.error,ve.status="QUEUED",R(ve),D()}}function V(h){J(h).catch(()=>{}),h.status="CANCELLED",R(h),t.value=t.value.filter(F=>F.id!==h.id)}function U(){if(!k){k=!0,A();for(const h of S())d.set(h.id,h);b();for(const h of t.value)h.status==="UPLOADING"&&h.uploadId!==void 0&&!l.has(h.id)&&J(h);for(const h of s.values())h.abort();s.clear();for(const h of r.values())h.abort();r.clear()}}const A=Ge(t,()=>{S()},{deep:!0});return{tasks:t,recoveryInput:n,activeCount:T,progress:p,restore:g,statusLabel:W,queue:w,cancel:J,retry:q,recover:Q,remove:V,dispose:U}}const Wm=30*6e4;function Mm(e){const t=new Map,n=e.activeTtlMs??Wm,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)),y(p),k()}function l(T){return T===r||(t.get(T)??0)>a()}function d(){return y(a()),[...t.keys()].filter(l)}function v(T){t.delete(T),r===T&&(r=void 0),k()}function u(){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 y(T){for(const[p,m]of t)p===r||m>T||(t.delete(p),e.release(p))}function k(){s!==void 0&&clearTimeout(s),s=void 0;let T;for(const[p,m]of t)p!==r&&(T=T===void 0?m:Math.min(T,m));T!==void 0&&(s=setTimeout(()=>{s=void 0,y(a()),k()},Math.max(0,T-a())))}return{select:i,isActive:l,activeNodeIds:d,forget:v,clear:u}}class Cn extends Error{constructor(t){super(t),this.code=t}code}function xm(e){const t=new Map,n=new Map;function a(l){if(l.type==="terminal.direct.prepared"){const v=t.get(l.requestId);if(v===void 0){e.send({type:"terminal.direct.cancel",directSessionId:l.directSessionId});return}t.delete(l.requestId),v.resolve(l);return}if(l.type==="terminal.direct.error"){const v=t.get(l.requestId??"");v!==void 0&&(t.delete(l.requestId),v.reject(new Cn(l.code)));return}const d=n.get(l.directSessionId);d!==void 0&&(l.type==="terminal.direct.heartbeat"?d.lastHeartbeat=Date.now():r(l.directSessionId,d,l.code))}function r(l,d,v){d.stopped||(d.stopped=!0,n.delete(l),d.timer!==void 0&&clearInterval(d.timer),d.attachTimer!==void 0&&clearTimeout(d.attachTimer),d.channel.close(),e.send({type:"terminal.direct.cancel",directSessionId:l}),d.transport.release(),v!==void 0&&d.onDisconnected(v))}async function s(l){const d=e.acquire(l.nodeId);if(d===void 0)return;const v=crypto.randomUUID().replaceAll("-","");let u=()=>{},y;try{const k=await new Promise((S,N)=>{const I=setTimeout(()=>{t.delete(v),N(new Cn("TERMINAL_DIRECT_TIMEOUT"))},5e3),b=()=>{t.delete(v),N(new Cn("TERMINAL_DIRECT_CANCELLED"))};u=()=>{clearTimeout(I),l.signal.removeEventListener("abort",b)},l.signal.addEventListener("abort",b,{once:!0}),t.set(v,{transport:d,resolve:S,reject:N}),(l.signal.aborted||!e.send({type:"terminal.direct.prepare",requestId:v,nodeId:l.nodeId,nodeGeneration:d.nodeGeneration,transportSessionId:d.transportSessionId,terminalId:l.terminalId,...l.workspaceId===void 0?{}:{workspaceId:l.workspaceId},afterSequence:l.afterSequence,readonly:l.readonly}))&&b()});if(u(),y=k.directSessionId,l.signal.aborted)throw new Cn("TERMINAL_DIRECT_CANCELLED");const T=d.createChannel(`mar-terminal-${k.directSessionId}`),p={transport:d,channel:T,onFrame:l.onFrame,onAttached:l.onAttached,onDisconnected:l.onDisconnected,attached:!1,stopped:!1,lastHeartbeat:Date.now()};n.set(k.directSessionId,p);const m=S=>r(k.directSessionId,p,S);return T.addEventListener("open",()=>{p.stopped||T.send(JSON.stringify({type:"OPEN",directSessionId:k.directSessionId,grant:k.grant}))}),T.addEventListener("message",S=>{if(p.stopped||typeof S.data!="string"||S.data.length>128*1024){m("TERMINAL_FRAME_INVALID");return}let N;try{N=JSON.parse(S.data)}catch{m("TERMINAL_FRAME_INVALID");return}if(!p.attached){const b=Qv.safeParse(N);if(!b.success||b.data.terminalId!==l.terminalId){m("TERMINAL_ATTACH_FAILED");return}p.attached=!0,p.attachTimer!==void 0&&clearTimeout(p.attachTimer),p.onAttached();return}const I=Jv.safeParse(N);if(!I.success||I.data.terminalId!==l.terminalId){m("TERMINAL_FRAME_INVALID");return}p.onFrame(I.data)}),T.addEventListener("close",()=>m("TERMINAL_DIRECT_CLOSED")),p.attachTimer=setTimeout(()=>m("TERMINAL_DIRECT_TIMEOUT"),15e3),p.timer=setInterval(()=>{(Date.now()-p.lastHeartbeat>3e4||!e.send({type:"terminal.direct.heartbeat",directSessionId:k.directSessionId}))&&m("TERMINAL_DIRECT_CONTROL_UNAVAILABLE")},1e4),l.signal.aborted?m():l.signal.addEventListener("abort",()=>m(),{once:!0}),{send(S){if(!(!p.attached||p.stopped||T.readyState!=="open")){if(T.bufferedAmount>1024*1024){m("TERMINAL_BACKPRESSURE");return}T.send(JSON.stringify(S))}},dispose:()=>m()}}catch(k){throw u(),y!==void 0&&e.send({type:"terminal.direct.cancel",directSessionId:y}),d.release(),k instanceof Cn?k:new Cn("TERMINAL_DIRECT_UNAVAILABLE")}}function i(){for(const[l,d]of t)t.delete(l),d.reject(new Cn("TERMINAL_DIRECT_CONTROL_UNAVAILABLE"));for(const[l,d]of n)r(l,d,"TERMINAL_DIRECT_CONTROL_UNAVAILABLE")}return{attach:s,handle:a,invalidate:i}}function $m(e){const t=$(0),n=()=>{t.value+=1},a=new Map,r=new Map;let s,i=!1;const l=Gp({send:E=>s!==void 0&&!i&&e.sendDirect(E),onProbeResultChange:n,shouldRetryProbe:(E,H)=>u(E)&&a.get(E)?.generation===H}),d=xm({send:E=>s!==void 0&&!i&&e.sendTerminalDirect(E),acquire:E=>{const H=a.get(E);return!u(E)||H?.terminalDirect!==!0?void 0:l.acquireTerminalTransport(E,H.generation)}}),v=Mm({activate:E=>{k(E)},release:E=>{r.delete(E),a.delete(E),l.releaseTransport(E),n()}});function u(E){return!i&&s!==void 0&&v.isActive(E)&&e.nodes().some(H=>H.id===E&&H.connected&&!H.disabled)}function y(E){r.delete(E),a.delete(E),l.invalidateNode(E),n()}function k(E,H=!1){if(!u(E))return Promise.resolve();const J=r.get(E);if(J!==void 0&&!H)return J;const Y=s,q=Promise.resolve().then(async()=>{if(r.get(E)!==q||s!==Y||!u(E))return;const Q=await e.discover(E).catch(()=>{});if(!(r.get(E)!==q||s!==Y||!u(E))){if(Q?.directTransfer?.apiVersion!==3||Q.directTransfer.transport!==!0||typeof Q.nodeGeneration!="string"){y(E);return}a.set(E,{generation:Q.nodeGeneration,terminalDirect:Q.terminalDirect?.apiVersion===1}),l.ensureTransport(E,Q.nodeGeneration),n()}}).finally(()=>{r.get(E)===q&&r.delete(E)});return r.set(E,q),q}async function T(){if(i)return;for(const J of new Set([...a.keys(),...r.keys(),...l.transportNodeIds()])){const Y=e.nodes().find(q=>q.id===J);(Y===void 0||!Y.connected||Y.disabled)&&y(J)}const E=s;if(E===void 0)return;const H=e.nodes().filter(J=>u(J.id)).map(J=>J.id);for(let J=0;J<H.length;J+=3){if(i||s!==E)return;await Promise.all(H.slice(J,J+3).map(Y=>k(Y)))}}function p(){s!==void 0&&(s=void 0,r.clear(),a.clear(),d.invalidate(),l.invalidateControlConnection(),n())}function m(E,H){i||(s!==void 0&&s.id!==E&&p(),s??={id:E},H||(s={id:E},r.clear(),a.clear(),d.invalidate(),l.invalidateNetwork(),n()),T())}function S(){p(),v.clear(),l.close()}function N(){i||(i=!0,g(),R(),S())}function I(E){const H=a.get(E);return s!==void 0&&!i&&H!==void 0&&l.isConnected(E,H.generation)}function b(E){const H=a.get(E);return H===void 0||!I(E)?void 0:l.networkInfo(E,H.generation)}const C=_(()=>e.nodes().map(E=>`${E.id}\0${E.connected?"1":"0"}\0${E.disabled?"1":"0"}\0${E.nodeAppVersion}`).join(`
|
|
3
|
+
`)),g=Ge(C,()=>{T()}),R=Ge(e.selectedNode,E=>{v.select(E)},{immediate:!0,flush:"sync"}),W=E=>(t.value,I(E)),w=E=>{if(!W(E))return;const H=b(E);if(H===void 0)return c("workspaceTabs.directAvailable");const J=c(`workspaceTabs.networkScope.${H.scope.toLowerCase()}`),Y=H.ipVersion==="UNKNOWN"?"":c(`workspaceTabs.ipVersion.${H.ipVersion.toLowerCase()}`),q=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:[J,Y,q,Q].filter(Boolean).join(" ")})},D=_(()=>{t.value;const E=e.selectedNode();return E!==void 0&&b(E)?.scope==="LOOPBACK"});return{workspace:{upload:l.upload,download:l.download},terminal:{attach:d.attach},handleDirect:l.handle,handleTerminalDirect:d.handle,selectNode:E=>{i||v.select(E)},nodeInvalidated:y,refresh:k,reconcileNodes:T,connectionReady:m,connectionLost:p,reset:S,dispose:N,isConnected:I,networkInfo:b,workspaceDirectAvailable:W,workspaceDirectDescription:w,workspaceLocalFileManagerAvailable:D}}const Fm=new Set(["STARTING","RUNNING","CANCELLING"]),Kn=1e4,Mn=1e3,Um=5e3,hs=500,ys=30*6e4,xo=16,ws="mar.web-performance.severe.v1",Vm=()=>({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 qm(e={}){const t=e.now??(()=>performance.now()),n=$(Vm()),a=[],r=new Map,s=[],i=[],l=[],d=w(),v=d.longTasks,u=d.longAnimationFrames;let y={domNodes:0,messageCards:0,eventLoopDelayMs:0,longTasks:{count:0,totalDurationMs:0}},k="connecting",T,p,m,S,N,I=!1,b,C=0,g=0;function R(){return e.enabled?.()??!0}function W(){return e.context?.()??{}}function w(){const te={longTasks:[],longAnimationFrames:[]};try{if(typeof sessionStorage>"u")return te;const x=JSON.parse(sessionStorage.getItem(ws)??"null");if(typeof x!="object"||x===null)return te;const ee=x,se=Se=>Array.isArray(Se)?Se.filter(Fe=>typeof Fe=="object"&&Fe!==null&&Number.isFinite(Fe.capturedAt)&&Date.now()-Fe.capturedAt<=ys&&typeof Fe.value=="object"&&Fe.value!==null).slice(-xo):[];return{longTasks:se(ee.longTasks),longAnimationFrames:se(ee.longAnimationFrames)}}catch{return te}}function D(){try{if(typeof sessionStorage>"u")return;sessionStorage.setItem(ws,JSON.stringify({longTasks:v,longAnimationFrames:u}))}catch{}}function E(te,x){te.push({capturedAt:Date.now(),value:x}),te.length>xo&&te.splice(0,te.length-xo),D()}function H(te){return te.filter(x=>Date.now()-x.capturedAt<=ys).map(x=>x.value)}function J(te){for(;a[0]!==void 0&&a[0].at<te-Kn;)a.shift();for(;s[0]!==void 0&&s[0].at<te-Kn;)s.shift();for(;i[0]!==void 0&&i[0].at<te-Kn;)i.shift();for(;l[0]!==void 0&&l[0].at<te-Kn;)l.shift()}function Y(te,x){if(k!=="connected")return"idle";if(x<g)return"healthy";const ee=y.heap===void 0||y.heap.limitBytes<=0?0:y.heap.usedBytes/y.heap.limitBytes;return te>=50||y.longTasks.totalDurationMs>=500||y.eventLoopDelayMs>=200||ee>=.85?"critical":te>=16||y.longTasks.totalDurationMs>=100||y.eventLoopDelayMs>=50||ee>=.7?"warning":"healthy"}function q(){const te=t();J(te);const x=a.filter(he=>he.at>=te-Mn),ee=a.map(he=>he.durationMs).sort((he,Ue)=>he-Ue),se=ee.reduce((he,Ue)=>he+Ue,0),Se={};for(const he of x)Se[he.category]=(Se[he.category]??0)+1;const Fe=new Map;for(const he of a){const Ue=Math.floor(he.at/Mn);Fe.set(Ue,(Fe.get(Ue)??0)+1)}const We=Math.max(0,Math.ceil(ee.length*.95)-1),be=ee[We]??0;n.value={connectionState:k,health:Y(be,te),messagesPerSecond:x.length,peakMessagesPerSecond:Math.max(0,...Fe.values()),kilobytesPerSecond:x.reduce((he,Ue)=>he+Math.max(0,Ue.bytes),0)/1024,categories:Se,activeRunSessions:new Set(r.values()).size,processing:{averageMs:ee.length===0?0:se/ee.length,p95Ms:be,maxMs:ee.at(-1)??0},longTasks:{...y.longTasks,available:I},eventLoopDelayMs:y.eventLoopDelayMs,...p===void 0?{}:{pingLatencyMs:p},domNodes:y.domNodes,messageCards:y.messageCards,...y.heap===void 0?{}:{heap:y.heap},...T===void 0?{}:{lastMessageAt:T}}}function Q(te){if(typeof te!="object"||te===null)return"other";const x=te;if(x.type==="watch.event")return"watch";if(typeof x.type=="string"&&x.type.startsWith("notification."))return"notification";if(x.type!=="event"||typeof x.event!="object"||x.event===null)return"control";const ee=x.event.category;return typeof ee=="string"?ee:"other"}function V(te){if(typeof te!="object"||te===null)return;const x=te.event;if(typeof x!="object"||x===null)return;const ee=x;if(ee.category!=="run")return;const se=ee.payload;if(typeof se!="object"||se===null)return;const Se=se.run;if(typeof Se!="object"||Se===null)return;const Fe=Se;typeof Fe.id!="string"||typeof Fe.sessionId!="string"||typeof Fe.status!="string"||(Fm.has(Fe.status)?r.set(Fe.id,Fe.sessionId):r.delete(Fe.id))}function U(te){if(!R())return;const x=t();a.push({...te,at:x,category:Q(te.message),context:W()}),T=Date.now(),V(te.message)}function A(te){k=te,te!=="connected"&&(r.clear(),p=void 0),q()}function h(){r.clear(),q()}function F(te){Number.isFinite(te)&&(p=Math.max(0,te),q())}function K(te){y=te,l.push({...te,at:t(),context:W()}),q()}function ve(te){const x=performance.memory,ee=t();J(ee),y={domNodes:document.getElementsByTagName("*").length,messageCards:document.querySelectorAll(".conversation-item").length,eventLoopDelayMs:Math.max(0,te),longTasks:{count:s.length,totalDurationMs:s.reduce((se,Se)=>se+Se.durationMs,0)},...x===void 0?{}:{heap:{usedBytes:x.usedJSHeapSize,limitBytes:x.jsHeapSizeLimit}}},l.push({...y,at:ee,context:W()}),q()}function X(te){const x=te.attribution;return Array.isArray(x)?x.flatMap(ee=>{if(typeof ee!="object"||ee===null)return[];const se=ee,Se=Qe=>typeof se[Qe]=="string"&&se[Qe]!==""?se[Qe]:void 0,Fe=Se("containerType"),We=Se("containerName"),be=Se("containerId"),he=Se("containerSrc");let Ue;if(he!==void 0)try{const Qe=new URL(he,typeof location>"u"?void 0:location.href);Ue=`${Qe.origin}${Qe.pathname}`}catch{Ue=void 0}return[{name:Se("name")??"",entryType:Se("entryType")??"",startTimeMs:typeof se.startTime=="number"?se.startTime:0,durationMs:typeof se.duration=="number"?se.duration:0,...Fe===void 0?{}:{containerType:Fe},...We===void 0?{}:{containerName:We},...be===void 0?{}:{containerId:be},...Ue===void 0?{}:{containerSrc:Ue}}]}):[]}function oe(te){const x=te.target;if(typeof HTMLElement>"u"||!(x instanceof HTMLElement))return;const ee=x.id===""?"":`#${x.id}`,se=[...x.classList].slice(0,3).map(Se=>`.${Se}`).join("");return`${x.tagName.toLowerCase()}${ee}${se}`}function ge(){const te=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:te?.userAgent,language:te?.language,hardwareConcurrency:te?.hardwareConcurrency}}function le(te){const x=i.map(({at:se,...Se})=>({startTimeMs:se,...Se})),ee=a.map(({at:se,bytes:Se,durationMs:Fe,category:We,context:be})=>({observedAtMs:se,bytes:Se,durationMs:Fe,category:We,context:be}));return{name:te.name,startTimeMs:te.at,endTimeMs:te.at+te.durationMs,occurredAt:new Date(performance.timeOrigin+te.at).toISOString(),durationMs:te.durationMs,context:te.context,attribution:te.attribution,relatedInteractions:x.filter(se=>se.startTimeMs<=te.at+te.durationMs+250&&se.startTimeMs+se.durationMs>=te.at-250),relatedFrames:ee.filter(se=>se.observedAtMs>=te.at-250&&se.observedAtMs<=te.at+te.durationMs+250)}}function ae(te){const x=te.scripts;return Array.isArray(x)?x.slice(0,8).map(ee=>{const se=typeof ee=="object"&&ee!==null?ee:{},Se=We=>typeof se[We]=="string"?se[We].slice(0,256):"";let Fe="";try{const We=new URL(Se("sourceURL"),typeof location>"u"?void 0:location.href);Fe=`${We.origin}${We.pathname}`}catch{}return{functionName:Se("sourceFunctionName"),sourceURL:Fe,sourceCharPosition:typeof se.sourceCharPosition=="number"?se.sourceCharPosition:0,durationMs:typeof se.duration=="number"?se.duration:0,invoker:Se("invoker")}}):[]}function P(){const te=t();J(te);const x=a.map(({at:Se,bytes:Fe,durationMs:We,category:be,context:he})=>({observedAtMs:Se,bytes:Fe,durationMs:We,category:be,context:he})),ee=i.map(({at:Se,...Fe})=>({startTimeMs:Se,...Fe})),se=s.map(le);return{schemaVersion:1,generatedAt:new Date().toISOString(),windowMs:Kn,context:W(),snapshot:n.value,longTasks:se,retainedLongTasks:H(v),longAnimationFrames:H(u),interactions:ee,frames:x,browserSamples:l.map(({at:Se,...Fe})=>({sampledAtMs:Se,...Fe})),activeRuns:[...r].map(([Se,Fe])=>({runId:Se,sessionId:Fe})),browser:ge()}}function z(){if(!(!R()||m!==void 0)){if(g=t()+Um,C=t()+Mn,m=setInterval(()=>{const te=t();if(document.hidden||!R()){C=te+Mn;return}ve(te-C),C=te+Mn},Mn),typeof PerformanceObserver<"u"){try{PerformanceObserver.supportedEntryTypes?.includes("longtask")&&(S=new PerformanceObserver(te=>{for(const x of te.getEntries()){if(x.startTime<g)continue;const ee={at:x.startTime,durationMs:x.duration,name:x.name,context:W(),attribution:X(x)};s.push(ee),x.duration>=hs&&E(v,le(ee))}}),S.observe({entryTypes:["longtask"]}),I=!0)}catch{S?.disconnect(),S=void 0}try{b=new PerformanceObserver(te=>{for(const x of te.getEntries()){const ee=x,se=oe(x);i.push({at:x.startTime,name:x.name,durationMs:x.duration,...typeof ee.processingStart=="number"?{processingStartMs:ee.processingStart}:{},...typeof ee.processingEnd=="number"?{processingEndMs:ee.processingEnd}:{},...typeof ee.interactionId=="number"?{interactionId:ee.interactionId}:{},...se===void 0?{}:{target:se},context:W()})}}),b.observe({type:"event",buffered:!0,durationThreshold:16})}catch{b=void 0}try{PerformanceObserver.supportedEntryTypes?.includes("long-animation-frame")&&(N=new PerformanceObserver(te=>{for(const x of te.getEntries()){if(x.duration<hs)continue;const ee=x;E(u,{startTimeMs:x.startTime,endTimeMs:x.startTime+x.duration,occurredAt:new Date(performance.timeOrigin+x.startTime).toISOString(),durationMs:x.duration,blockingDurationMs:ee.blockingDuration??0,context:W(),scripts:ae(x)})}}),N.observe({type:"long-animation-frame"}))}catch{N=void 0}}ve(0)}}function ce(){m!==void 0&&clearInterval(m),m=void 0,S?.disconnect(),S=void 0,I=!1,N?.disconnect(),N=void 0,b?.disconnect(),b=void 0,a.length=0,r.clear(),s.length=0,i.length=0,l.length=0,y={domNodes:0,messageCards:0,eventLoopDelayMs:0,longTasks:{count:0,totalDurationMs:0}},T=void 0,p=void 0,q()}return{snapshot:n,observeFrame:U,setConnectionState:A,resetActiveRuns:h,setPingLatency:F,updateBrowserMetrics:K,detail:P,refresh:q,start:z,dispose:ce}}function Xl(e,t){return[...e.filter(n=>n.pinned===!0),...e.filter(n=>n.pinned!==!0).slice(0,t)]}function Hm(e){const t=$([]);let n=0;const a=new Set;function r(I){t.value=Xl(I,e.maxTabs),a.clear();for(const b of t.value)a.add(b.id);n=t.value.reduce((b,C)=>Math.max(b,C.lastActiveAt),0)}function s(I,b,C){const g=e.tabId(I,C.id);n=Math.max(Date.now(),n+1);const W=t.value.findIndex(E=>E.id===g),w=m(I,b,C,n);if(W>=0){const E=t.value[W],H=b===void 0?E?.nodeLabel:w.nodeLabel;t.value=t.value.map((J,Y)=>Y===W?{...J,...w,...H===void 0?{}:{nodeLabel:H}}:J),e.onChange();return}const D=[...t.value];i(D,e.maxTabs-1),t.value=[...D,w],e.onChange()}function i(I,b,C){for(;I.filter(g=>g.pinned!==!0).length>b;){const g=I.filter(W=>W.pinned!==!0&&W.id!==C);if(g.length===0)return;const R=g.reduce((W,w)=>w.lastActiveAt<W.lastActiveAt?w:W);e.onEvict(R),a.delete(R.id),I.splice(I.findIndex(W=>W.id===R.id),1)}}function l(I,b){const C=e.tabId(I.nodeId,I.workspaceId);if(t.value.some(R=>R.id===C)){k(C);return}const g=[...t.value];i(g,e.maxTabs-1),n=Math.max(Date.now(),n+1),t.value=[...g,{id:C,...I,...b===void 0?{}:{nodeLabel:e.nodeLabel(b)},label:I.workspaceId,lastActiveAt:n}],e.onChange()}function d(I,b){const C=t.value.find(W=>W.id===I);if(C===void 0||C.pinned===!0===b)return;const g=t.value.filter(W=>W.id!==I),R=g.filter(W=>W.pinned===!0).length;g.splice(R,0,{...C,pinned:b}),i(g,e.maxTabs,I),t.value=g,e.onChange()}function v(I){a.delete(I.id),t.value=t.value.filter(b=>b.id!==I.id),e.onChange()}function u(I,b){const C=t.value.findIndex(H=>H.id===I);if(C<0||t.value.length<2)return;const g=t.value.filter(H=>H.pinned===!0).length,R=Math.max(0,Math.min(b,t.value.length-1));if(C===R)return;const W=[...t.value],[w]=W.splice(C,1);if(w===void 0)return;const D=R<g,E=w.pinned===!0===D?w:{...w,pinned:D};W.splice(R,0,E),i(W,e.maxTabs,I),t.value=W,e.onChange()}function y(I){const b=t.value.filter(I);if(b.length!==0){t.value=t.value.filter(C=>!I(C));for(const C of b)a.delete(C.id),e.onEvict(C);e.onChange()}}function k(I){t.value.some(b=>b.id===I)&&(n=Math.max(Date.now(),n+1),t.value=t.value.map(b=>b.id===I?{...b,lastActiveAt:n}:b),e.onChange())}function T(I=new Set){return t.value.reduce((b,C)=>!I.has(C.id)&&(b===void 0||C.lastActiveAt>b.lastActiveAt)?C:b,void 0)}function p(I,b,C){const g=e.tabId(I,b);t.value.some(R=>R.id===g)&&(t.value=t.value.map(R=>R.id===g?{...R,label:C}:R),e.onChange())}function m(I,b,C,g){return{id:e.tabId(I,C.id),nodeId:I,...b===void 0?{}:{nodeLabel:e.nodeLabel(b)},workspaceId:C.id,label:e.workspaceLabel(C),lastActiveAt:g}}function S(I,b,C){const g=e.tabId(I,b),R=t.value.find(W=>W.id===g);R===void 0||R.selectedSessionId===C||(t.value=t.value.map(W=>{if(W.id!==g)return W;const w={...W};return delete w.selectedSessionId,C===void 0?w:{...w,selectedSessionId:C}}),e.onChange())}function N(I,b){const C=e.tabId(I,b),g=t.value.find(R=>R.id===C);if(a.delete(C)||g?.selectedSessionId!==void 0)return g}return{tabs:t,remember:s,rememberTarget:l,rememberSession:S,takeRestoredSelection:N,remove:v,move:u,setPinned:d,touch:k,mostRecentlyUsed:T,removeWhere:y,updateLabel:p,restore:r}}const ks="mar.workbench.layout.v1",bs="mar.workbench.tabs.v1",$o="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 Fo(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 Bm(e){const t=$({});function n(i,l){const d=Fo(i,l);if(!(d===void 0||t.value[i]===d)){t.value={...t.value,[i]:d};try{localStorage.setItem($o,JSON.stringify(t.value))}catch{}}}function a(i,l,d){const v=pn[i],u=l-d;if(!(!Number.isFinite(u)||u<v.min))return Math.min(t.value[i]??v.defaultWidth,v.max,u)}function r(){try{sessionStorage.setItem(ks,JSON.stringify({sidebarCollapsed:e.sidebarCollapsed.value,expandedNodeIds:e.expandedNodeIds.value,nodeOrder:e.nodeOrder.value,workspaceOrderByNode:e.workspaceOrderByNode.value}))}catch{}try{localStorage.setItem(bs,JSON.stringify(e.workspaceTabs.value))}catch{}}function s(){t.value={};try{const i=JSON.parse(localStorage.getItem($o)??"{}");if(typeof i=="object"&&i!==null&&!Array.isArray(i)){const l=i;for(const d of["sidebar","compact","content"]){const v=Fo(d,l[d]);v!==void 0&&(t.value[d]=v)}if(Object.prototype.hasOwnProperty.call(l,"inspector")){const d=Fo("compact",l.inspector);t.value.compact===void 0&&d!==void 0&&(t.value.compact=d),localStorage.setItem($o,JSON.stringify(t.value))}}}catch{}try{const i=JSON.parse(sessionStorage.getItem(ks)??"{}");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(d=>typeof d=="string"):[],l.workspaceOrderByNode??{},Array.isArray(l.nodeOrder)?l.nodeOrder.filter(d=>typeof d=="string"):[])}}catch{e.restoreTree([],{},[])}try{const i=JSON.parse(localStorage.getItem(bs)??"[]");if(!Array.isArray(i))return;e.restoreTabs(Xl(i.filter(Gm),e.maxWorkspaceTabs))}catch{e.restoreTabs([])}}return{persist:r,restore:s,panelWidths:t,setPanelWidth:n,asideWidth:a}}function Gm(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 zm(e,t){if(e.kind==="tool_call"&&Hf(e.payload))return!0;if(e.kind==="user_input_request"&&e.status==="PENDING"&&!t)return!1;if(e.kind==="user_message"){const n=Bf(e.payload);if(n.files.length>0||n.references.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"||Fa(e.kind,e.payload,e.status).trim().length>0)}function Km(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(xl)[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 jm(e){let t=0,n=0,a,r;e.configurationAvailable!==void 0&&Ge(e.configurationAvailable,g=>{g&&p()});async function s(g=e.workspaceTarget.value?.nodeId){if(g===void 0||e.workspaceTarget.value?.nodeId!==g)return!1;const R=e.workspaceTarget.value,W=await e.profileService.load(g);return e.workspaceTarget.value!==R?!1:W===void 0?(e.workspaceTarget.value===R&&(e.codexFastEnabled.value=!1),!1):(W.defaultsChanged&&e.draftOpen.value&&e.selectedSession.value===void 0&&v(e.runner.value),e.draftOpen.value&&e.selectedSession.value===void 0&&e.ensureDraftSupported(W.profiles),e.normalize(),await p(),e.workspaceTarget.value!==R?!1:(W.profiles.some(w=>w.runner==="codex"&&w.commands.some(D=>D.id==="fast"))?l(g):e.codexFastEnabled.value=!1,!0))}async function i(g=e.workspaceTarget.value?.nodeId){if(g===void 0)return;const R=e.workspaceTarget.value,W=++n,w=[0,500,1e3,2e3,4e3];for(const D of w)if(W!==n||e.workspaceTarget.value!==R||(D>0&&await(e.retryDelay??(E=>new Promise(H=>setTimeout(H,E))))(D),W!==n||e.workspaceTarget.value!==R)||await s(g))return}async function l(g){const R=e.workspaceTarget.value;try{const W=await e.request("/api/runner-commands",{method:"POST",body:JSON.stringify({nodeId:g,runner:"codex",commandId:"fast",input:"/fast status"})});e.workspaceTarget.value===R&&(e.codexFastEnabled.value=W.enabled)}catch{e.workspaceTarget.value===R&&(e.codexFastEnabled.value=!1)}}function d(g){return e.profileService.defaultFor(e.workspaceTarget.value?.nodeId,g)}function v(g){e.apply(d(g))}function u(){e.normalize()}function y(){const g=e.workspaceTarget.value?.nodeId;g!==void 0&&e.profileService.save(g,{runner:e.runner.value,modelId:e.modelId.value,effort:e.effort.value,access:e.access.value})}function k(g){if(g===void 0)return u();const R=d(g.runner);e.apply({runner:g.runner,modelId:g.modelId??R.modelId,effort:g.effort??R.effort,access:g.access??R.access})}function T(g,R=!0){k(g);const W=e.workspaceTarget.value?.nodeId;if(g===void 0||W===void 0||!R){r=void 0;return}r={nodeId:W,sessionId:g.id},p(g)}async function p(g=e.selectedSession.value){const R=e.workspaceTarget.value?.nodeId;if(g===void 0||g.runner!=="mar-agent"||R===void 0||e.draftOpen.value||e.selectedSession.value?.id!==g.id||r?.nodeId!==R||r.sessionId!==g.id||a===g.id||e.configurationAvailable?.()===!1)return;const W=e.profiles.value.find(E=>E.runner===g.runner),w=$l(W,g);if(w.length===0||w.some(E=>E.id===g.modelId))return;const D=w[0];e.setModel(D.id,Ga(D)),a=g.id;try{await m()}finally{a===g.id&&(a=void 0)}}async function m(){if(e.draftOpen.value||e.workspaceTarget.value?.nodeId===void 0||e.selectedSession.value===void 0)return u();const g=e.workspaceTarget.value?.nodeId,R=e.selectedSession.value;if(e.configurationAvailable?.()===!1)return k(R);if(await gt(),e.workspaceTarget.value?.nodeId!==g||e.selectedSession.value?.id!==R.id)return;if(e.configurationAvailable?.()===!1)return k(e.selectedSession.value);u();const W=++t;e.loading.value=!0;try{const w=await e.request(`/api/agent-sessions/${e.sessionPathId(R.id)}/config`,{method:"PATCH",body:JSON.stringify({nodeId:g,workspaceId:R.workspaceId,modelId:e.modelId.value,effort:e.effort.value,access:e.access.value})});if(W!==t||e.workspaceTarget.value?.nodeId!==g||e.selectedSession.value?.id!==R.id)return;e.replaceSessionProjection(w.session)}catch(w){if(W!==t||e.workspaceTarget.value?.nodeId!==g||e.selectedSession.value?.id!==R.id)return;k(R),e.notice(c("generated.workbenchComposerController.unableToUpdateTheSessionConfiguration",{value0:e.errorMessage(w)}),"error",w)}finally{W===t&&(e.loading.value=!1)}}function S(g,R){R.includes(g)&&(e.setEffort(g),m(),e.draftOpen.value&&y())}function N(g,R){const W=R.find(w=>w.id===g);W!==void 0&&(e.setModel(W.id,Ga(W)),m(),e.draftOpen.value&&y())}function I(g,R){R.some(W=>W.id===g)&&(e.setAccess(g),m(),e.draftOpen.value&&y())}function b(g){g!=="mar-agent"&&g!=="codex"&&g!=="claude-code"&&g!=="opencode"||e.profiles.value.some(R=>R.runner===g&&R.capabilities.includes("turn.start"))&&(v(g),e.clearRunnerCommand(),e.clearModelEffortSelection(),m())}function C(g,R,W){const w=Array.isArray(g)?g.at(-1):g;if(typeof w=="string"){if(w.startsWith("effort:"))R(w.slice(7));else if(w.startsWith("model:"))W(w.slice(6));else return;gt(()=>{e.clearModelEffortSelection()})}}return{loadProfiles:i,runnerDefaultFor:d,applyDefaults:v,normalize:u,saveDefaults:y,applyConfiguration:T,update:m,selectEffort:S,selectModel:N,selectAccess:I,selectRunner:b,selectModelEffort:C}}function _m(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 Ym=100,Qm=1e4;function Jm(e){if(e.length>=Qm)return!0;let t=1;for(let n=0;n<e.length;n+=1)if((e[n]===`
|
|
4
|
+
`||e[n]==="\r"&&e[n+1]!==`
|
|
5
|
+
`)&&(t+=1),t>=Ym)return!0;return!1}function Xm(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 Zl(e){const t=_m(e.setDragging);function n(i){if(!e.canAcceptFiles())return;const l=[...i.clipboardData?.items??[]],d=l.some(k=>k.kind==="file")||[...i.clipboardData?.types??[]].includes("Files"),v=l.filter(k=>k.kind==="file").map(k=>k.getAsFile()).filter(k=>k!==null),u=v.length>0?v:[...i.clipboardData?.files??[]];if(d||u.length>0){i.preventDefault(),u.length>0&&e.addFiles(u);return}const y=i.clipboardData?.getData("text/plain");y!==void 0&&Jm(y)&&(i.preventDefault(),e.addFiles([Xm(y)]))}function a(i){!e.canAcceptFiles()||!Zm(i.dataTransfer)||t.enter()}function r(){t.leave()}async function s(i){if(t.reset(),!e.canAcceptFiles())return;if(eh(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 Zm(e){return e===null?!1:[...e.types].some(t=>t.toLocaleLowerCase()==="files")?!0:[...e.items].some(t=>t.kind==="file")}function eh(e){return[...e?.items??[]].some(t=>t.webkitGetAsEntry?.()?.isDirectory===!0)}async function ec(e,t,n){try{await navigator.clipboard.writeText(e),t()}catch{n(c("generated.workbenchPageInteractionService.copyFailedCheckTheBrowserClipboardPermission"),"error")}}function tc(){const e=$([]),t=$();let n=0;const a=_(()=>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=zp(T),m=e.value.find(N=>N.identity===p);if(m!==void 0){const N={...m,quotePane:T.quotePane??"main",...T.targetLine===void 0?{}:{targetLine:T.targetLine},...T.targetColumn===void 0?{}:{targetColumn:T.targetColumn}};return e.value=e.value.map(I=>I.id===m.id?N:I),t.value=m.id,N}const S={...T,identity:p,id:++n,fileName:Zi(T.path)};return e.value=[...e.value,S],t.value=S.id,S}function i(T,p){const m=e.value.findIndex(b=>b.id===T);if(m<0)return;const S=Math.max(0,Math.min(p,e.value.length-1));if(m===S)return;const N=[...e.value],[I]=N.splice(m,1);I!==void 0&&(N.splice(S,0,I),e.value=N)}function l(T){const p=e.value.findIndex(S=>S.id===T);if(p<0)return;const m=t.value===T;e.value=e.value.filter(S=>S.id!==T),m&&(t.value=e.value.at(p-1)?.id??e.value.at(p)?.id)}function d(){e.value=[],t.value=void 0}function v(T,p){e.value=e.value.map(m=>m.identity===T?{...m,path:p,fileName:Zi(p)}:m)}function u(T){return e.value.filter(p=>p.path===T)}function y(){return{tabs:e.value,...a.value===void 0?{}:{activeIdentity:a.value.identity}}}function k(T){const p=new Set,m=[];let S=0;for(const N of T.tabs)p.has(N.identity)||(p.add(N.identity),m.push(N),S=Math.max(S,N.id));e.value=m,n=S,t.value=m.find(N=>N.identity===T.activeIdentity)?.id??m.at(-1)?.id}return{tabs:dt(e),activeTabId:dt(t),activeTab:a,open:s,activate:r,setQuotePane:(T,p)=>{e.value=e.value.map(m=>m.id===T?{...m,quotePane:p}:m)},move:i,remove:l,clear:d,updatePath:v,findByPath:u,snapshot:y,restore:k}}function Nr(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 nc(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,d=0;const v=new TextEncoder;for(let u=0;u<66;u++){n?.throwIfAborted();const y=new URLSearchParams({maxBytes:String(256*1024)});a.scope==="SESSION"&&(y.set("nodeId",e.nodeId),y.set("workspaceId",e.workspaceId)),l!==void 0&&y.set("cursor",l);const k=Xv.parse(await t(`${r}?${y}`));n?.throwIfAborted();const T=v.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(d+=T,d>a.diff.byteSize)throw new Error("TOOL_RESOURCE_RESPONSE_INVALID");if(s.push(k.content),k.nextCursor===void 0){if(d!==a.diff.byteSize)throw new Error("TOOL_RESOURCE_RESPONSE_INVALID");const p=s.join("");if(globalThis.crypto?.subtle){const m=await globalThis.crypto.subtle.digest("SHA-256",v.encode(p));if([...new Uint8Array(m)].map(N=>N.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 th(e){const t=tc();return{tabs:t,open(n,a){const r=Nr(n,a);r&&t.open(r)},load:(n,a)=>nc(n,e,a),clear:()=>t.restore({tabs:[]})}}function nh(e){async function t(n,a,r,s=!1){const i=e.workspaceTarget.value,l=i?.nodeId,d=l===void 0?void 0:e.captureCacheTarget(l,n.workspaceId);let v=e.currentSelectionRevision();const u=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 y=n.id;const k=()=>l!==void 0&&e.workspaceTarget.value===i&&e.currentSelectionRevision()===v&&(d===void 0||d.isCurrent())&&e.workspaceTarget.value?.nodeId===l&&e.workspaceTarget.value.workspaceId===n.workspaceId&&e.selectedSessionId.value===y;if(u.session!==void 0&&l!==void 0){const T=k();d?.replaceSession(n.id,u.session),(T||d?.isCurrent()===!0)&&e.acceptSession(l,n.workspaceId,n.id,u.session,T),T&&(y=u.session.id,k()&&e.configure(u.session))}if(s&&l!==void 0&&k()){const T=e.resetHistory(l,n),p=e.currentSelectionRevision();(p===v||p===v+1)&&(v=p),await T}return a==="goal"&&u.goalAlreadyActive===!0&&k()&&e.notifyGoalAlreadyActive(),u.run!==void 0&&(k()?(e.acceptRun(u.run),e.openRun(u.run.id)):d?.cacheRun(u.run)),u}return{execute:t}}function ah(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 oh(e){const t=Gt();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(),d=()=>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 v=await e.request(`/api/agent-sessions/${e.sessionPathId(r.id)}/channel-token?nodeId=${encodeURIComponent(i)}`);d()&&(e.token.value=v.token)}catch{d()&&(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 d=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(d.delivery==="STEERED"?c("generated.workbenchRunnerChannelService.theMessageWasAddedToTheCurrent"):c("generated.workbenchRunnerChannelService.theMessageWasNotDeliveredToThe"),d.delivery==="STEERED"?"info":"error")}catch(d){e.notice(c("generated.workbenchRunnerChannelService.unableToSendThroughTheClaudeChannel",{value0:e.errorMessage(d)}),"error",d)}finally{e.loading.value=!1}}}return{refreshClaudeChannelToken:n,sendClaudeChannelMessage:a}}function rh(e){const t=Gt();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(),d=u=>t?.active!==!1&&e.currentRevision()===l&&e.workspaceTarget.value?.nodeId===i.nodeId&&e.workspaceTarget.value?.workspaceId===i.workspaceId&&e.selectedSessionId.value===u;let v=!0;try{let u=s;if(r.closeInput!==null){const y=e.beginSubmission(`session:${s.id}`);if(y===void 0)return;let k;try{k=await e.execute(s,r.commandId,r.closeInput)}finally{v=y()}if(!v)return;u=k.session??s}d(u.id)&&(e.selectedCommand.value=void 0,e.commandPickerOpen.value=!1,e.input.value=r.continuation.prompt,await e.send())}catch(u){v&&d(s.id)&&e.notice(c("generated.workbenchPlanService.unableToImplementThePlan",{value0:e.errorMessage(u)}),"error",u)}}return{implementPlan:n}}function ih(e){const t=Gt();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
|
+
|
|
7
|
+
`),c("generated.workbenchContextCommandService.compactContext"),{closeIcon:Be("close"),icon:Be("warning"),confirmButtonText:c("generated.workbenchContextCommandService.compact"),cancelButtonText:c("generated.workbenchContextCommandService.cancel"),type:"warning"})}catch{return}if(!l()||!e.canCompact.value)return;const d=e.beginSubmission(`session:${r.id}`);if(d!==void 0)try{await e.execute(r,s,"/compact")}catch(v){d()&&l()&&e.notice(c("generated.workbenchContextCommandService.unableToCompactContext",{value0:e.errorMessage(v)}),"error",v)}finally{d()}}return{compactCurrentContext:n}}function sh(e){const t=$(!1);function n(s,i,l){const d=e.current();return e.currentRevision()===l&&d?.nodeId===s&&d.session.id===i.id&&d.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 d=e.currentRevision();const v=i.kind==="user_message",u={nodeId:l.nodeId,turnId:s.turnId??s.id,position:v?"BEFORE":"AFTER",boundary:v?s.rewind.before:s.rewind.after};if(!await e.confirmRewind(v)||!e.canRewind()||!n(l.nodeId,l.session,d))return{status:"SKIPPED"};const y=e.beginSubmission("session:"+l.session.id);if(y===void 0)return{status:"SKIPPED"};const k=e.draft.read(),T=v?Fa(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(u)})).session,!n(l.nodeId,l.session,d))return{status:"STALE",session:p};e.replaceSession(p.id,p);const S=e.openSession(p.id);return d=e.currentRevision(),await S,n(l.nodeId,p,d)?(e.draft.fill(T,"rewind"),{status:"APPLIED",session:p}):{status:"STALE",session:p}}catch(m){if(p!==void 0&&n(l.nodeId,p,d)){try{const S=e.openSession(l.session.id,{skipSaveCurrent:!0});d=e.currentRevision(),await S}catch{}n(l.nodeId,l.session,d)&&e.draft.restore(k)}return{status:"FAILED",phase:p===void 0?"REQUEST":"APPLY",error:m,...p===void 0?{}:{session:p}}}finally{t.value=!1,y()}}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 d=e.currentRevision();const v={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,d))return{status:"SKIPPED"};const u=e.beginSubmission("session:"+l.session.id);if(u===void 0)return{status:"SKIPPED"};const y=Fa(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(v)})).session,e.invalidateDetail(l.nodeId,l.session),!n(l.nodeId,l.session,d))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 d=e.currentRevision(),await p,n(l.nodeId,l.session,d)?(e.draft.fill(y,"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,u()}}return{pending:t,rewind:a,rollback:r}}function lh(e){const t=$("mar-agent"),n=$(""),a=$("medium"),r=$("on-request"),s=$(),i=_(()=>e.selectedSession.value?.runner??t.value),l=_(()=>e.profiles.value.find(I=>I.runner===i.value)),d=_(()=>$l(l.value,e.selectedSession.value)),v=_(()=>d.value.find(I=>I.id===n.value)),u=_(()=>v.value?.supportedEfforts??[]),y=_(()=>l.value?.accessOptions??[]),k=_(()=>{const I=n.value||e.selectedSession.value?.modelId,b=v.value?.label??l.value?.models.find(g=>g.id===I)?.label??(I||Fn(i.value)),C=e.effortLabel(a.value);return C.length===0?b:`${b} ${C}`}),T=_(()=>Fn(i.value)),p=_(()=>y.value.find(I=>I.id===r.value)?.label??r.value);function m(){const I=e.profiles.value.find(g=>g.runner===t.value);if(I===void 0)return;const b=I.runner===i.value?d.value:I.models;b.some(g=>g.id===n.value)||(n.value=b[0]?.id??"");const C=b.find(g=>g.id===n.value);if(C!==void 0){const g=Ga(C);(C.supportedEfforts.length===0?a.value===g:C.supportedEfforts.includes(a.value))||(a.value=g)}I.accessOptions.some(g=>g.id===r.value)||(r.value=I.accessOptions[0]?.id??"on-request")}function S(I){t.value=I.runner,n.value=I.modelId,a.value=I.effort,r.value=I.access,m()}function N(I,b){n.value=I,a.value=b}return{runner:t,modelId:n,effort:a,access:r,modelEffortSelection:s,activeRunner:i,profile:l,models:d,selectedModel:v,efforts:u,accessOptions:y,modelEffortLabel:k,runnerLabel:T,accessLabel:p,normalize:m,apply:S,selectModel:N,selectEffort:I=>a.value=I,selectAccess:I=>r.value=I,clearModelEffortSelection:()=>s.value=void 0}}function ch(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 Yt("WATCH_CANCELLED","The session selection was stopped or replaced.");return e.begin(t)}}function ac(e){const t=Gt(),n=e.positioning??$(!1),a=$(!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(v,u){r=v,n.value=!0;try{await gt(),u()&&n.value&&await e.scrollLatest(u)}finally{r===v&&(r=void 0,t?.active!==!1&&(n.value=!1))}}async function l(v){v.initialRender&&await e.beginInitialRender(),v.isCurrent()&&(v.shouldScroll()&&(n.value=!0,await e.scrollLatest(v.isCurrent)),await v.cachedPositioning,v.isCurrent()&&(n.value=!1))}async function d(v){if(e.content===void 0)throw new Error("Pane content is not configured.");v.activeRunId!==void 0&&e.content.openRun(v.activeRunId);const u=e.content.hasContent();a.value=u;const y=v.restored&&u&&!v.deferInitialScroll?i(v.requestId,v.isCurrent):void 0;await v.loader.read({nodeId:v.nodeId,workspaceId:v.workspaceId,sessionId:v.sessionId,isCurrent:v.isCurrent,onResolved:v.onResolved,loading:e.loading,failed:e.failed,failureCause:e.failureCause,throwOnFailure:v.throwOnFailure,beforeFailure:async()=>{await y},onFailure:()=>{n.value=!1},onSettle:v.onSettle,afterLoad:async k=>{await l({isCurrent:v.isCurrent,initialRender:!u,shouldScroll:()=>!u&&(v.switching||k.changed||!v.deferInitialScroll),cachedPositioning:y}),v.isCurrent()&&v.onLoaded(k.session)}})}return{begin:s,setRestoredContent:v=>{a.value=v},loadingContent:_(()=>e.loading.value&&!a.value),positionRestored:i,finish:l,openRestored:d,read:(v,u)=>v.read({...u,loading:e.loading,failed:e.failed,failureCause:e.failureCause}),clearPosition:()=>{n.value=!1}}}function dh(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 Yt("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(v=>v.sessionId===r.session.id&&["STARTING","RUNNING","CANCELLING"].includes(v.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 Yt("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 d=l===void 0?!1:s===void 0?e.applySnapshot(r.session.id,l):e.mergeTurns(l);return e.saveCurrent(),{session:r.session,changed:d}}const n=uh(t);return{load:t,read:n}}function uh(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?.(),yt(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 vh(e){const t=Gt();let n,a,r;const s=ac({loading:e.loading,failed:e.failed,failureCause:e.failureCause,beginInitialRender:e.beginInitialRender,scrollLatest:e.scrollLatest}),i=Ge([()=>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],([d,v,u,y,k],T,p)=>{const m=e.target.value;if(a!==void 0&&(m?.kind!=="session"||a.nodeId!==m.nodeId||a.workspaceId!==m.workspaceId||a.sessionId!==m.sessionId)&&(a=void 0,r=void 0),!k||m?.kind!=="session")return;const S={...m},N=e.currentRequest();let I=!1;const b=()=>{const W=e.target.value;return!I&&(t===void 0||t.active)&&W?.kind==="session"&&W.nodeId===S.nodeId&&W.workspaceId===S.workspaceId&&W.sessionId===S.sessionId&&e.currentRequest()===N},C=()=>b()&&e.visible.value;p(()=>{b()&&e.save(),I=!0,e.cancel(),e.stopWatch(),e.loading.value=!1,e.loadingContent.value=!1,n=void 0});const g=async()=>{s.begin();const W=e.restore(S);e.loadingContent.value=!W,await s.read(e.loader,{...S,isCurrent:C,onResolved:()=>{},afterLoad:async()=>{let w;await s.finish({isCurrent:C,initialRender:!0,shouldScroll:()=>(w=e.scrollElement(),!(W&&w!==void 0&&w===r&&a?.nodeId===S.nodeId&&a.workspaceId===S.workspaceId&&a.sessionId===S.sessionId))}),C()&&(a=S,r=w,await e.markRead(S.nodeId,S.workspaceId,S.sessionId))},onSettle:()=>{C()&&(e.loadingContent.value=!1)}})};let R;n=()=>{if(!C())return Promise.resolve();if(R!==void 0)return R;const W=g();return R=W,W.finally(()=>{R===W&&(R=void 0)}),W},n()},{immediate:!0,flush:"sync"});async function l(){if(await(n?.()??Promise.resolve()),e.failed.value)throw new Yt("SESSION_HISTORY_INITIAL_FAILED","The initial session snapshot has not been applied.")}return{reload:()=>n?.()??Promise.resolve(),reloadChecked:l,stop:i}}function oc(e){const t=_(()=>e.nodes.value.find(s=>s.id===e.workspaceTarget.value?.nodeId)),n=_(()=>t.value?.connected===!0&&t.value.disabled!==!0&&e.nodeManifest.value?.manifestVersion===1&&e.nodeManifest.value.conversation.available),a=_(()=>n.value&&e.nodeManifest.value?.files?.available===!0),r=_(()=>n.value&&e.nodeManifest.value?.terminal?.available===!0&&e.nodeManifest.value.terminal.supportsReplay===!0);return{workspaceHost:t,nodeReady:n,filesReady:a,terminalReady:r}}function fh(e){return{...oc(e),selectedWorkspace:_(()=>e.workspaces.value.find(t=>t.id===e.workspaceTarget.value?.workspaceId))}}function ph(e,t){return t===void 0?[]:e.filter(n=>n.workspaceId===t&&En(n))}function Is(e){return e?.some(t=>t.commandId==="goal"&&t.active&&t.goal?.status==="active")??!1}function gh(e){const t=_(()=>{const K=e.selectedRunId.value;if(K===void 0)return;const ve=e.runs.value.find(X=>X.id===K);return ve!==void 0&&["STARTING","RUNNING","CANCELLING"].includes(ve.status)?ve:void 0}),{workspaceHost:n,nodeReady:a}=oc(e),r=_(()=>e.selectedSession.value===void 0?void 0:tr(e.selectedSession.value)),s=_(()=>new Set(e.selectedSession.value?.control?.capabilities??[])),i=_(()=>new Set(e.selectedSession.value?.runtime?.capabilities??[])),l=_(()=>a.value&&s.value.has("turn.start")),d=_(()=>r.value==="MANAGED_ACTIVE"&&t.value!==void 0),v=_(()=>e.composerProfile.value?.capabilities.includes("turn.start")===!0),u=_(()=>e.draftOpen.value||e.selectedSessionId.value?.startsWith("draft:")===!0),y=_(()=>a.value&&(u.value?e.runnerProfilesLoading.value||e.runnerProfilesFailed.value||v.value:r.value==="MANAGED_ACTIVE"||(d.value?i.value.has("turn.queue"):l.value))),k=_(()=>e.selectedSession.value!==void 0||e.draftOpen.value),T=_(()=>C.value||e.composerModels.value.length===0),p=_(()=>C.value||e.composerAccessOptions.value.length===0),m=_(()=>!y.value),S=_(()=>e.attachments.value.some(K=>K.status!=="COMPLETED")),N=_(()=>e.turns.value.map(K=>({...K,items:K.items.filter(ve=>e.shouldDisplayItem(ve,K.runId))})).filter(K=>K.items.length>0)),I=e.currentSessionQueue,b=_(()=>t.value!==void 0||Is(e.selectedSession.value?.commandStates)||r.value==="MANAGED_ACTIVE"&&!e.runService.sessionInterruptionSettled(e.selectedSessionId.value)),C=_(()=>b.value||e.selectedSessionId.value?.startsWith("draft:")===!0||r.value==="MANAGED_ACTIVE"||e.loading.value||e.submissionPending.value),g=_(()=>a.value&&e.selectedSession.value!==void 0&&!C.value),R=_(()=>g.value&&i.value.has("session.rollback")&&I.value.items.length===0);function W(K){const ve=e.selectedSession.value?.id===K.id?e.selectedSession.value:e.sessions.value.find(X=>X.id===K.id)??K;return a.value&&!e.loading.value&&!e.submissionPending.value&&tr(ve)==="IDLE"&&!Is(ve.commandStates)&&!e.runs.value.some(X=>X.sessionId===K.id&&["STARTING","RUNNING","CANCELLING"].includes(X.status))}function w(K){return!(!K.available||e.loading.value||e.submissionPending.value||e.selectedSessionId.value?.startsWith("draft:")===!0||(K.interaction==="IMMEDIATE_ACTION"||K.interaction==="DESTRUCTIVE_ACTION")&&(C.value||K.interaction==="DESTRUCTIVE_ACTION"&&I.value.items.length>0))}const D=_(()=>e.composerProfile.value?.commands.find(K=>K.id==="compact"&&K.available)),E=_(()=>e.selectedSession.value!==void 0&&D.value!==void 0&&a.value&&!C.value),H=_(()=>{const K=e.sessionContextUsage.value,ve=e.formatTokenCount(K?.usedTokens??0),X=K==null?"—":e.formatTokenCount(K.maxTokens),oe=`${ve} / ${X} tokens (${e.formatPercentage(K?.percentage??0)})`,ge=c("generated.workbenchPresentationStateService.contextWindow",{value0:oe}),le=c("generated.workbenchPresentationStateService.gcCount",{value0:K?.gcCount??0,value1:e.formatTokenCount(K?.gcReclaimedTokens??0)});return`${ge}
|
|
8
|
+
${le}`}),{working:J,workingNow:Y,workingStartedAt:q}=Il(e.selectedSessionId,b,t),Q=_(()=>!J.value||!a.value?"":Tl(q.value,Y.value)),V=_(()=>J.value?Cl(t.value,a.value?e.turns.value:[]):""),U=_(()=>J.value&&a.value&&Sl(t.value,e.turns.value)),A=_(()=>(t.value!==void 0||r.value==="MANAGED_ACTIVE"&&(e.selectedSessionId.value===void 0||!e.runService.sessionInterruptionSettled(e.selectedSessionId.value)))&&a.value),h=_(()=>A.value&&t.value?.status!=="CANCELLING"),F=_(()=>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:d,draftRunnerProfileSupportsTurns:v,composerDraftOpen:u,canUseComposer:y,composerSessionOpen:k,composerConfigurationDisabled:T,composerAccessDisabled:p,composerInputDisabled:m,composerAttachmentsPending:S,displayedConversationTurns:N,currentSessionQueue:I,composerSessionBusy:b,sessionControlsBusy:C,rewindConversationEnabled:g,rollbackConversationEnabled:R,canExecuteRunnerCommand:w,canDeleteSession:W,compactCommand:D,canCompactContext:E,contextUsageLabel:H,composerWorking:J,workingElapsedLabel:Q,composerWorkingLabel:V,composerWorkingBusy:U,interruptVisible:A,canInterruptTurn:h,canSendClaudeChannel:F}}function mh(e){const t=Gf(),{selectedWorkspace:n}=e.context,a=_(()=>n.value===void 0?c("common.productName"):`${c("common.productName")} - ${e.workspaceLabel(n.value)}`),r=_(()=>ph(e.sessions.value,e.workspaceTarget.value?.workspaceId)),s=_(()=>{const d=e.workspaceTarget.value?.nodeId,v=e.workspaceTarget.value?.workspaceId;return d===void 0||v===void 0?[]:r.value.slice(0,e.visibleLimits.value.get(e.tabId(d,v))??e.pageSize)}),i=_(()=>{const d=e.workspaceTarget.value?.nodeId,v=e.workspaceTarget.value?.workspaceId;return d!==void 0&&v!==void 0&&typeof e.nextCursors.value.get(e.tabId(d,v))=="string"}),l=_(()=>e.nodes.value.filter(d=>d.connected&&!d.disabled).length);return{...e.pane,...e.context,sessionActivityClockNow:t,selectedWorkspace:n,documentTitle:a,workspaceSessions:r,visibleWorkspaceSessions:s,canLoadMoreWorkspaceSessions:i,onlineNodeCount:l}}function hh(e){const t=$(),n=Ge([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=Zv.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 yh(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 wh(e){const{projection:t,turns:n,replaceCached:a,...r}=e,s=yh({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,d)=>a(l,d.turns,d.nextCursor)}),i=zf({...r,replaceRecent:t.replaceRecent,mergeOlderPage:t.mergeOlderPage,recoverWindow:t.recoverWindow,clearCursor:t.clearCursor});return{applySnapshot:s.apply,paging:i}}function kh(e,t){return Ft.register({command:"composer.openModelMenu",scope:"pane",priority:100,owner:e,keys:$p,when:()=>!0,execute:()=>t()?"HANDLED":"IGNORED"})}function bh(){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 Yt("WATCH_CANCELLED","The session read was stopped or replaced.")}function a(s,i,l,d){return n(v=>l(`/api/agent-sessions/${d(i)}?nodeId=${encodeURIComponent(s)}`,{signal:v}))}async function r(s,i,l,d){const v=await n(u=>l(`/api/agent-sessions/${d(i)}/turns?nodeId=${encodeURIComponent(s)}&limit=${Df}&unit=SEGMENT`,{signal:u}));return ip(v)??sp(v)}return{read:a,readInitialHistory:r,cancel:t}}function Ih(e){const t=Gt();let n=()=>{},a=()=>!1;const r=_(()=>{const q=e.draftTarget.value;return q?.kind==="session"?q.sessionId:void 0}),s=_(q=>{const Q=e.draftTarget.value;if(Q!==void 0)return q?.nodeId===Q.nodeId&&q.workspaceId===Q.workspaceId?q:{nodeId:Q.nodeId,workspaceId:Q.workspaceId}}),i=e.attachments.forTarget(()=>e.draftTarget.value),l=e.drafts.bindTarget(e.draftTarget,e.pane),d=Kf(l.skillTokens);Ge(l.input,l.persist),Ge(l.skillTokens,l.persist,{deep:!0}),Ge(l.references,l.persist,{deep:!0});const v=e.submissions.bind(()=>{const q=e.draftTarget.value;return q===void 0?void 0:e.submissions.forTarget(q)}),u=Rl(),y=rp(r),k=jf(y.runs),T=bh(),p=_f(e.onConversationOverflow);function m(q){return p.projection.flushPendingTextDeltas(),{sessionId:q,runs:y.runs.value,turns:p.turns.value,nextCursor:p.nextCursor.value,contextUsage:p.contextUsage.value??null,lastAccessedAt:Date.now()}}function S(q,Q=void 0){y.replaceRuns(q?.runs??[]),p.projection.restoreWindow(q?.turns??[],q?.nextCursor??null),p.contextUsage.value=q===void 0?Q:q.contextUsage??null}function N(){p.nextDetailRequest(),S(void 0)}function I(){y.selectedRunId.value=void 0,N()}function b(){I(),p.loadingOlder.value=!1,p.loadingInitial.value=!1,p.initialLoadFailed.value=!1}function C(q,Q,V,U){const A=e.draftTarget.value;A?.kind!=="session"||q===void 0||q.id!==A.sessionId||(l.persist(),V.captureSession(A.nodeId,A.workspaceId,q,Q,m(A.sessionId),U))}function g(q,Q,V){return R(q,Q,V,void 0,!1,null).restored}function R(q,Q,V,U,A,h){const F=!A&&q!==void 0?Q.touchDetail(q.nodeId,q.workspaceId,q.sessionId):void 0;V(q===void 0?{version:0,paused:!1,items:[]}:Q.queueFor(q.nodeId,q.workspaceId,q.sessionId)??{version:0,paused:!1,items:[]}),U?.();const K=!A||q===void 0?F:Q.touchDetail(q.nodeId,q.workspaceId,q.sessionId);A&&(y.selectedRunId.value=void 0),S(K,h);const ve=q===void 0?void 0:y.runs.value.find(X=>X.sessionId===q.sessionId&&["STARTING","RUNNING","CANCELLING"].includes(X.status));return{restored:K!==void 0,activeRunId:ve?.id}}function W(q,Q,V,U){return R(q,Q,V,U,!0,void 0)}const w=$();function D(q,Q){const V=s.value;V?.nodeId===q&&V.workspaceId===Q.workspaceId&&r.value===Q.id&&(w.value=Q)}const E=Yf({draft:l.queueEdit,persist:l.persist});E.rebind(),Ge(()=>l.queueEdit.value?.queueItemId,q=>{E.editingQueueItemId.value=q},{flush:"sync"});function H(){T.cancel(),p.cancelInitialRender(),E.rebind()}Ge([()=>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(),w.value=void 0,H()},{flush:"sync"}),Gt()!==void 0&&Zn(H);const J=()=>{const q=e.draftTarget.value;if(q===void 0)return;const Q=e.drafts.forTarget(q,e.pane),V=e.submissions.forTarget(q);let U=!1;return{...Q,createdSession:A=>{if(U||q.kind!=="workspace"||q.workspaceId!==A.workspaceId||(U=!0,e.submissions.forTarget(q)!==V))return;const h={...q,kind:"session",sessionId:A.id};e.submissions.transfer(V,e.submissions.forTarget(h),"draft:",A.id,!0),e.attachments.moveDraft(q,h)}}};function Y(){k.reset(),r.value!==void 0&&p.projection.clearSession(r.value,y.runs.value.map(q=>q.id))}return{resetRealtime:Y,clearContent:N,clearSelection:I,prepareDraft:b,clearRuns:()=>y.replaceRuns([]),workspaceTarget:s,sessionId:r,acceptResolvedSession:D,run:y,queueProjection:k,conversation:p,draft:l,captureQuote:(q,Q)=>{const V=e.draftTarget.value;if(!V||!q())return;const U=e.drafts.forTarget(V,e.pane);return A=>{if(!(e.draftTarget.value!==V||!q()))try{U.references.value=El(U.references.value,A,U.input.value),U.persist()}catch{Q()}}},attachments:i,skillTokens:d,createReferences:q=>{const Q=op(l.input,{nodeId:_(()=>s.value?.nodeId),workspaceId:_(()=>s.value?.workspaceId),ready:q.ready,request:q.request,sessions:{ready:q.sessionsReady,currentSessionId:r}},l.references);return Gt()!==void 0&&Zn(Q.cancelSearch),Q},captureDraft:J,createPerformance:q=>{const Q=hh({view:q,nodeId:_(()=>s.value?.nodeId),workspaceId:_(()=>s.value?.workspaceId),sessionId:r});return Gt()!==void 0&&Zn(Q.dispose),Q},cancelRead:T.cancel,readSession:T.read,readInitialHistory:T.readInitialHistory,createPresentation:q=>{const{provisionalSessionId:Q,...V}=q;return gh({...V,workspaceTarget:s,selectedSessionId:_(()=>r.value??(e.draftTarget.value?.kind==="workspace"?Q.value:void 0)),selectedRunId:y.selectedRunId,runs:y.runs,turns:p.turns,attachments:i.attachments,sessionContextUsage:p.contextUsage,channelToken:p.channelToken,submissionPending:v.pending,runService:y})},createLoader:q=>{const{request:Q,sessionPathId:V,...U}=q;return dh({...U,runs:y.runs,replaceSession:(A,h)=>{const F=s.value?.nodeId;F!==void 0&&D(F,h),U.replaceSession(A,h)},readSession:(A,h)=>T.read(A,h,Q,V),readInitialHistory:(A,h)=>T.readInitialHistory(A,h,Q,V)})},registerShortcuts:kh,createMessaging:({provisionalSessionId:q,...Q})=>ap({...Q,workspaceTarget:s,selectedSessionId:_(()=>r.value??(e.draftTarget.value?.kind==="workspace"?q.value:void 0)),attachments:i.attachments,attachmentsPending:_(()=>i.attachments.value.some(V=>V.status!=="COMPLETED")),captureDraft:J,consumeAttachments:e.attachments.consume,retainAttachments:e.attachments.retainForSubmission,acceptRun:y.acceptRun,beginSubmission:v.begin,scrollToLatest:u.scrollToLatest,scrollToLatestAfterLayout:u.scrollToLatestAfterLayout}),createInteractions:q=>np({...q,input:l.input,editRange:(Q,V,U)=>a(Q,V,U),handleConversationScroll:Q=>u.handleScroll(()=>{q.canLoadOlder()&&Q()}),scrollToLatest:u.scrollToLatest,scrollToLatestAfterLayout:u.scrollToLatestAfterLayout}),createWatch:q=>tp({...q,workspaceTarget:s,selectedSessionId:r,followConversation:u.following,scrollAfterLayout:u.scrollToLatestAfterLayout,applyRunsSnapshot:Q=>{const V=Q;y.mergeAuthoritativeSnapshot(V,[...y.runs.value]);const U=V.find(A=>A.sessionId===r.value&&["STARTING","RUNNING","CANCELLING"].includes(A.status));U!==void 0&&q.openRun(U.id)}}),createQueueActions:q=>ep({...q,workspaceTarget:s,selectedSessionId:r,draggingQueueItemId:E.draggingQueueItemId,editingContent:E.editingContent,serializeEditedContent:E.serializeEditedContent,finishEditing:E.finishEditing,captureEditing:Q=>{const V=e.draftTarget.value,U=V===void 0?void 0:e.drafts.forTarget(V,e.pane),A=U?.queueEdit.value;return()=>{U===void 0||A?.queueItemId!==Q||U.queueEdit.value!==A||(U.queueEdit.value=void 0,U.persist())}}}),projectQueue:q=>_(()=>({...q.value,items:r.value===void 0?[]:q.value.items.filter(Q=>Q.sessionId===r.value)})),createApprovals:q=>Zf({...q,workspaceTarget:s}),createConfiguration:q=>{const{sessions:Q,provisionalSessionId:V,...U}=q,A=_(()=>{const h=r.value??(e.draftTarget.value?.kind==="workspace"?V?.value:void 0);return Q.value.find(F=>F.id===h&&F.workspaceId===s.value?.workspaceId)??w.value});return{selectedSession:A,...lh({...U,selectedSession:A})}},createRunnerInteraction:q=>Xf({...q,input:l.input,draftSessionOpen:_(()=>e.draftTarget.value?.kind==="workspace")}),createUserInput:q=>Jf({...q,workspaceTarget:s}),createRealtime:q=>ah({...q,workspaceTarget:s,selectedSessionId:r,selectedRunId:y.selectedRunId,runs:y.runs,channelToken:p.channelToken}),createRunnerChannel:q=>oh({...q,workspaceTarget:s,token:p.channelToken,input:p.channelInput,currentRevision:p.currentDetailRequest}),createPlan:q=>rh({...q,workspaceTarget:s,selectedSessionId:r,input:l.input,beginSubmission:v.begin,currentRevision:p.currentDetailRequest}),createContextCommands:q=>ih({...q,workspaceTarget:s,beginSubmission:v.begin,currentRevision:p.currentDetailRequest}),createHistoryMutation:q=>{const{selectedSession:Q,onDraftFilled:V,...U}=q;return sh({...U,current:()=>{const A=s.value,h=Q.value;return t?.active===!1||A===void 0||h===void 0||h.id!==r.value||h.workspaceId!==A.workspaceId?void 0:{nodeId:A.nodeId,session:h}},currentRevision:p.currentDetailRequest,beginSubmission:A=>v.begin(A,void 0,null),draft:{read:()=>l.input.value,restore:A=>{l.input.value=A},fill:(A,h)=>{l.input.value=A,V(A,h)}}})},createRunControl:q=>Qf({...q,workspaceTarget:s,selectedSessionId:r,selectedRunId:y.selectedRunId,runService:y,currentRevision:p.currentDetailRequest}),createConversationWindow:q=>wh({...q,workspaceTarget:s,selectedSessionId:r,turns:p.turns,nextCursor:p.nextCursor,loadingOlder:p.loadingOlder,capturePrependAnchor:u.capturePrependAnchor,projection:p.projection}),draggingAttachments:$(!1),captureDetail:m,restoreDetail:S,saveCachedSession:C,restoreCachedSession:g,prepareSession:W,hasContent:()=>p.turns.value.some(q=>q.items.length>0),queue:E,submission:v,scroll:u,setInputFocus:q=>n=q,focusInput:q=>n(q),setRangeEditor:q=>a=q,editRange:(q,Q,V)=>a(q,Q,V)}}function Ss(e){const{state:t}=e,n=$(!1),a=$(!1),r=$(!1),s=$();let i;const l=_(()=>t.conversation.loadingInitial.value||a.value),d=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 v(){const de=e.watchConnection.coordinator();e.secondary===void 0?de?.stopSession():de?.stopSecondarySession()}async function u(de){const Re=e.watchConnection.coordinator();return Re===void 0?!1:(await(e.secondary===void 0?Re.beginSession(de):Re.beginSecondarySession(de)),!0)}function y(){return(e.secondary===void 0?e.view.value==="nodes":e.secondary.visible.value)&&(typeof document>"u"||document.visibilityState==="visible")}function k(){const de=e.secondary?.target.value;de?.kind!=="session"||!y()||d.draftOpen.value||Promise.resolve(e.watchConnection.coordinator()?.restartSecondarySession(de.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:zm,formatTokenCount:Wf,formatPercentage:Lf},m={...p,...d,sessions:T},S={...p,initialContentLoading:d.initialContentLoading};function N(de,Re,Le,et){const mt=e.secondary,vt=mt?.target.value;if(mt===void 0||vt?.kind!=="session"||vt.nodeId!==de||vt.workspaceId!==Re||vt.sessionId!==Le||et.workspaceId!==Re)return;const pt=T.value.some(Lt=>Lt.id===Le&&Lt.workspaceId===Re);Le!==et.id&&(pt||e.identity.transfer(de,Re,Le,et.id),!mt.replaceAsideSession(vt,et.id))||(t.acceptResolvedSession(de,et),pt&&e.identity.replace(de,Re,Le,et))}function I(de,Re){const Le=e.secondary?.target.value;Le?.kind==="session"&&N(Le.nodeId,Le.workspaceId,de,Re)}function b(de){const Re=t.workspaceTarget.value;if(Re===void 0)return;if(e.secondary!==void 0)return t.sessionId.value===de?Re:void 0;const Le=T.value.find(et=>et.id===de);return Le===void 0?void 0:{nodeId:Re.nodeId,workspaceId:Le.workspaceId}}const C=t.createConfiguration({sessions:T,profiles:e.profiles.profiles,effortLabel:Vi,provisionalSessionId:m.provisionalSessionId}),g=t.createRunnerInteraction({skills:e.skills.skills,quickPrompts:e.prompts.prompts,selectedSession:C.selectedSession,profile:C.profile,commandAvailable:de=>w.canExecuteRunnerCommand(de)});function R(){t.prepareDraft(),g.reset()}const W=t.projectQueue(t.queueProjection.queue),w=t.createPresentation({...m,selectedSession:C.selectedSession,composerProfile:C.profile,composerModels:C.models,composerAccessOptions:C.accessOptions,currentSessionQueue:W}),{currentWorkspaceRevision:D,...E}=e.queue,H={notice:E.notice,request:E.request,errorMessage:E.errorMessage,beginSubmission:t.submission.begin},J=Al(_(()=>t.workspaceTarget.value?.nodeId),{fileAttachments:{target:_(()=>{const de=t.workspaceTarget.value;return de===void 0?void 0:JSON.stringify([de.nodeId,de.workspaceId,t.sessionId.value])}),revalidate:de=>e.files.attachments(t.workspaceTarget.value).revalidate(de),sourceUrl:(de,Re)=>e.files.attachments(t.workspaceTarget.value).sourceUrl(de,Re),onError:(de,Re)=>tt(Cr(de,Re),"error",de)}});Ge(t.conversation.turns,de=>J.retain(de),{immediate:!0}),Gt()!==void 0&&Zn(J.dispose);const Y=Zl({canAcceptFiles:()=>!0,addFiles:t.attachments.add,rejectDirectory:()=>H.notice(c("generated.workbenchNewSessionController.foldersCannotBeAttachedCompressTheFolder"),"warning"),setDragging:de=>{t.draggingAttachments.value=de}}),q=t.createQueueActions({...E,queue:t.queueProjection.queue,currentSessionQueue:W,currentSelectionRevision:()=>t.conversation.currentDetailRequest()+D(),beginSubmission:t.submission.begin}),Q=jm({workspaceTarget:t.workspaceTarget,configurationAvailable:()=>!w.sessionControlsBusy.value,selectedSession:C.selectedSession,sessions:T,replaceSessionProjection:e.discovery.projection.replaceExisting,profiles:e.profiles.profiles,draftOpen:m.draftOpen,loading:m.loading,runner:C.runner,modelId:C.modelId,effort:C.effort,access:C.access,setModel:C.selectModel,setEffort:C.selectEffort,setAccess:C.selectAccess,clearModelEffortSelection:C.clearModelEffortSelection,codexFastEnabled:g.codexFastEnabled,profileService:e.profiles,normalize:C.normalize,apply:C.apply,ensureDraftSupported:e.ensureDraftSupported,clearRunnerCommand:g.clearCommand,request:H.request,notice:H.notice,errorMessage:H.errorMessage,sessionPathId:e.sessionPathId}),V=_(()=>e.profiles.profiles.value.filter(de=>de.capabilities.includes("turn.start")).map(de=>({value:de.runner,label:Fn(de.runner)})));function U(de){w.composerConfigurationDisabled.value||Q.selectEffort(de,C.efforts.value)}function A(de){w.composerConfigurationDisabled.value||Q.selectModel(de,C.models.value)}function h(de){w.composerAccessDisabled.value||Q.selectAccess(de,C.accessOptions.value)}function F(de){Q.selectModelEffort(de,U,A)}const K=t.createPerformance(e.view),ve=t.createUserInput({...H,missingRunError:de=>yt(de)==="RUN_NOT_FOUND"}),X=t.createApprovals(H),oe=t.createRunControl({...H,activeRun:w.activeComposerRun,sessionPathId:e.sessionPathId}),ge=t.createConversationWindow({pageSize:Of,recentSegmentWindowSize:Pf,replaceCached:(de,Re,Le)=>{const et=b(de);et!==void 0&&e.cache.replaceTurns(et.nodeId,et.workspaceId,de,Re,Le)},request:H.request,sessionPathId:e.sessionPathId,notice:H.notice,errorMessage:H.errorMessage}),le=t.createHistoryMutation({selectedSession:C.selectedSession,canRewind:()=>w.rewindConversationEnabled.value,canRollback:()=>w.rollbackConversationEnabled.value,confirmRewind:async de=>{try{return await ji.confirm(c(de?"generated.workbenchPageController.createANewSessionBranchBeforeThis":"generated.workbenchPageController.createANewSessionBranchThatRetains"),c("generated.workbenchPageController.createSessionBranch"),{closeIcon:Be("close"),icon:Be("warning"),confirmButtonText:c("generated.workbenchPageController.createBranch"),cancelButtonText:c("generated.workbenchPageController.cancel"),type:"warning"}),!0}catch{return!1}},confirmRollback:async()=>{try{return await ji.confirm(c("generated.workbenchPageController.rollbackConversationWarning"),c("generated.workbenchPageController.rollbackConversation"),{closeIcon:Be("close"),icon:Be("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:I,openSession:e.history.openSession,invalidateDetail:(de,Re)=>e.cache.invalidateDetail(de,Re.workspaceId,Re.id),clearHistory:de=>{t.conversation.projection.clearSession(de,t.run.runs.value.map(Re=>Re.id)),t.conversation.projection.restoreWindow([],null),t.run.replaceRuns([]),v()}});Ge(le.pending,de=>{a.value=de},{flush:"sync"});async function ae(de,Re){const Le=await le.rewind(de,Re);Le.status==="APPLIED"?tt(c("generated.workbenchPageController.sessionBranchCreated"),"success"):Le.status==="FAILED"&&tt(c(Le.phase==="REQUEST"?"generated.workbenchPageController.unableToCreateSessionBranch":"generated.workbenchPageController.sessionBranchCreatedButLoadFailed",{value0:H.errorMessage(Le.error)}),"error",Le.error)}async function P(de,Re){const Le=await le.rollback(de,Re);Le.status==="FAILED"&&tt(c(Le.phase==="REQUEST"?"generated.workbenchPageController.unableToRollbackConversation":"generated.workbenchPageController.rollbackCompletedButLoadFailed",{value0:H.errorMessage(Le.error)}),"error",Le.error)}const z=t.createRunnerChannel({selectedSession:C.selectedSession,loading:m.loading,notice:H.notice,request:H.request,sessionPathId:e.sessionPathId,errorMessage:H.errorMessage}),ce=t.createRealtime({syncTurnStatus:t.conversation.projection.syncRunStatus,refreshChannelToken:z.refreshClaudeChannelToken,syncCachedRunStatus:(de,Re,Le)=>{const et=b(de);et!==void 0&&e.cache.syncRunStatus(et.nodeId,et.workspaceId,de,Re,Le)}}),te=lp({...e.events,setNodeConnection:e.capabilities.setNodeConnection,cacheQueue:e.cache.cacheQueue,mergeQueue:t.queueProjection.merge,sessions:T,workspaceTarget:t.workspaceTarget,selectedSessionId:t.sessionId,selectedSession:C.selectedSession,conversationNextCursor:t.conversation.nextCursor,mergeSessions:de=>{const Re=t.workspaceTarget.value?.nodeId;if(Re!==void 0)for(const et of de)t.acceptResolvedSession(Re,et);const Le=e.secondary===void 0?de:de.filter(et=>T.value.some(mt=>mt.id===et.id&&mt.workspaceId===et.workspaceId));Le.length>0&&e.discovery.merge(Le)},settleSessionRuns:t.run.settleSessionRuns,observeManagedSessionActive:t.run.observeManagedSessionActive,updateContext:(de,Re)=>{const Le=t.workspaceTarget.value;Le!==void 0&&e.cache.updateContext(Le.nodeId,Le.workspaceId,de,Re),de===t.sessionId.value&&(t.conversation.contextUsage.value=Re)},syncTurnStatus:ce.syncConversationTurnStatus,cacheRun:de=>{const Re=t.workspaceTarget.value;Re!==void 0&&e.cache.cacheRun(Re.nodeId,de.workspaceId??Re.workspaceId,de)},acceptRun:t.run.acceptRun,openRun:ce.openRun,markLiveTurn:t.conversation.projection.markLive,cacheTurn:de=>{const Re=t.workspaceTarget.value;Re!==void 0&&e.cache.cacheTurn(Re.nodeId,Re.workspaceId,de)},mergeTurns:t.conversation.projection.mergeLatest,applyConversationSnapshot:ge.applySnapshot,mergeItem:(de,Re,Le,et)=>{const mt=t.conversation.projection.mergeItem(de,Re,Le,et);if(mt&&cp(Re)){const vt=dp(Re,t.conversation.contextUsage.value);t.conversation.contextUsage.value=vt;const pt=t.workspaceTarget.value,Lt=t.sessionId.value;pt!==void 0&&Lt!==void 0&&e.cache.updateContext(pt.nodeId,pt.workspaceId,Lt,vt)}return mt},mergeTextDelta:t.conversation.projection.mergeTextDelta,receivePerformance:K.receive}),x=t.createWatch({...e.watch,applyEvent:te.apply,request:H.request,sessionPathId:e.sessionPathId,openRun:ce.openRun,applySnapshot:ge.applySnapshot});function ee(){const de=_(()=>{const Re=t.workspaceTarget.value,Le=t.sessionId.value;return Re===void 0||Le===void 0?void 0:{...Re,sessionId:Le}});return ch({target:()=>de.value,revision:t.conversation.currentDetailRequest,visible:y,waitReady:e.watchConnection.waitReady,begin:async Re=>await u(Re)&&x.hasInitialSessionSnapshot(Re)})}function se(de){const Re=t.createLoader({request:H.request,sessionPathId:e.sessionPathId,applyComposerConfiguration:Q.applyConfiguration,replaceSession:e.secondary===void 0?e.messaging.replaceSession:I,markActive:de.markActive,openRun:ce.openRun,canWatch:x.canWatchSessionHistory,beginWatch:ee(),applySnapshot:ge.applySnapshot,mergeTurns:t.conversation.projection.mergeLatest,saveCurrent:de.saveCurrent}),Le=ac({content:{hasContent:t.hasContent,openRun:ce.openRun},loading:t.conversation.loadingInitial,failed:t.conversation.initialLoadFailed,failureCause:t.conversation.initialFailureCause,positioning:t.scroll.positioningInitialConversation,beginInitialRender:t.conversation.beginInitialRender,scrollLatest:()=>{const et=t.conversation.currentDetailRequest();return t.scroll.scrollToLatestAfterLayout(()=>t.conversation.currentDetailRequest()===et)}});return Sh({workspaceTarget:t.workspaceTarget,sessionId:t.sessionId,currentRequest:t.conversation.currentDetailRequest,nextRequest:t.conversation.nextDetailRequest,loading:t.conversation.loadingInitial,failed:t.conversation.initialLoadFailed,hasInitialSnapshot:x.hasInitialSessionSnapshot,prepareSession:(et,mt,vt,pt)=>t.prepareSession(mt===void 0?void 0:{nodeId:et,workspaceId:mt,sessionId:vt},e.cache,t.queueProjection.restore,()=>Q.applyConfiguration(pt,!1)),resetInteraction:()=>{g.composerMode.value="message",g.selectedCommand.value=void 0,g.commandPickerOpen.value=!1},loader:Re,renderer:Le,ports:de})}i=e.opening===void 0?void 0:se(e.opening);function Se(de){const Re=()=>t.saveCachedSession(C.selectedSession.value,t.queueProjection.queue.value,e.cache,de.maxDetails),Le=t.createLoader({request:H.request,sessionPathId:e.sessionPathId,replaceSession:I,applyComposerConfiguration:Q.applyConfiguration,markActive:mt=>{const vt=de.target.value;vt!==void 0&&t.acceptResolvedSession(vt.nodeId,{...mt,activity:"MANAGED_ACTIVE"})},openRun:ce.openRun,canWatch:x.canWatchSessionHistory,beginWatch:ee(),applySnapshot:ge.applySnapshot,mergeTurns:t.conversation.projection.mergeLatest,saveCurrent:Re});return{...vh({target:de.target,visible:de.visible,loading:t.conversation.loadingInitial,loadingContent:n,failed:t.conversation.initialLoadFailed,failureCause:t.conversation.initialFailureCause,currentRequest:t.conversation.currentDetailRequest,loader:Le,restore:mt=>t.restoreCachedSession(mt,e.cache,t.queueProjection.restore),save:Re,cancel:()=>{t.cancelRead(),t.conversation.cancelInitialRender()},stopWatch:v,beginInitialRender:t.conversation.beginInitialRender,scrollElement:()=>t.scroll.element.value,scrollLatest:mt=>t.scroll.scrollToLatestAfterLayout(mt),markRead:de.markRead}),save:Re}}const Fe=e.secondary===void 0?void 0:Se(e.secondary),We=nh({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:(de,Re,Le,et,mt)=>{e.secondary!==void 0&&mt?N(de,Re,Le,et):e.secondary===void 0&&t.workspaceTarget.value?.nodeId===de&&t.workspaceTarget.value.workspaceId===Re&&(t.sessionId.value!==Le||mt)?e.identity.replace(de,Re,Le,et):e.identity.transfer(de,Re,Le,et.id)},configure:Q.applyConfiguration,resetHistory:async(de,Re)=>{e.cache.invalidateDetail(de,Re.workspaceId,Re.id),t.conversation.projection.clearSession(Re.id,t.run.runs.value.map(Le=>Le.id)),t.conversation.projection.restoreWindow([],null),t.run.replaceRuns([]),v(),await e.commands.reopen(Re.id)},openRun:ce.openRun,notifyGoalAlreadyActive:()=>tt(c("goal.alreadyActive"),"info")}),be=(de,Re,Le)=>We.execute(de,Re.id,Le,Re.interaction==="DESTRUCTIVE_ACTION"),he=t.createMessaging({removeSessionExact:e.discovery.projection.removeExact,...e.messaging,sessions:T,migrateSessionCache:(de,Re,Le,et,mt)=>{e.identity.transfer(de,Re,Le,et),e.cache.migrateSession(de,Re,Le,et,mt)},cacheRun:e.cache.cacheRun,replaceSession:e.secondary===void 0?e.messaging.replaceSession:I,provisionalSessionId:_(()=>{const de=m.provisionalSessionId.value;return de?.startsWith("draft:")?de:void 0}),selectedSession:C.selectedSession,composerOpen:w.composerSessionOpen,composerBusy:w.composerSessionBusy,commandAvailable:w.canExecuteRunnerCommand,submissionAvailable:()=>!m.loading.value,draftOpen:m.draftOpen,selectedCommand:g.selectedCommand,commandPickerOpen:g.commandPickerOpen,deferredCommands:g.deferredDraftCommands,fastEnabled:g.codexFastEnabled,notice:H.notice,request:H.request,stageDraftCommand:(de,Re)=>{const Le=g.prepareDraftCommand(de,Re);Le.goalAlreadyActive?tt(c("goal.alreadyActive"),"info"):Le.access!==void 0&&C.selectAccess(Le.access)},executeCommand:be,sessionPathId:e.sessionPathId,openRun:ce.openRun,errorMessage:H.errorMessage}),Ue=(de,Re=!1,Le)=>he.send(de,Re,Le),Qe=de=>Km({item:de,turns:w.displayedConversationTurns.value,commandStates:C.selectedSession.value?.commandStates,steering:w.mustSteerCurrentTurn.value,canStartTurn:w.canStartTurn.value}),rt=_(()=>w.mustSteerCurrentTurn.value?void 0:C.selectedSession.value?.commandStates?.filter(de=>de.active&&de.continuation!==null&&de.continuation!==void 0).map(xl)[0]),ne=_(()=>C.selectedSession.value?.commandStates?.find(de=>de.commandId==="goal"&&de.active&&de.goal?.status==="active")),me=t.createPlan({selectedSession:C.selectedSession,selectedCommand:g.selectedCommand,commandPickerOpen:g.commandPickerOpen,notice:H.notice,continuationFor:Qe,execute:We.execute,send:Ue,errorMessage:H.errorMessage}),Ne=t.createContextCommands({selectedSession:C.selectedSession,compactCommand:w.compactCommand,canCompact:w.canCompactContext,contextUsageLabel:w.contextUsageLabel,notice:H.notice,request:H.request,execute:be,errorMessage:H.errorMessage}),Ve=_(()=>w.nodeReady.value&&m.nodeManifest.value?.files?.available===!0),Je=t.createReferences({request:H.request,ready:()=>Ve.value,sessionsReady:()=>w.nodeReady.value}),Ie=_(()=>t.sessionId.value??m.provisionalSessionId.value),Ke=_(()=>!!(e.completion.automaticSupported()&&t.sessionId.value&&!t.conversation.loadingInitial.value&&!t.conversation.initialLoadFailed.value)),Ye=e.completion.client.bind({automaticKey:()=>Ke.value?vp(t.conversation.turns.value):void 0,automaticTerminalKey:()=>Ke.value?up(t.conversation.turns.value):void 0,readContextRevision:()=>{const de=t.conversation.turns.value.at(-1);return JSON.stringify([de?.status,de?.items.length,de?.items.slice(-32).map(Re=>[Re.id,Re.status,Re.completedAt]),t.queueProjection.queue.value.version,C.selectedSession.value?.commandStates?.map(Re=>[Re.commandId,Re.active,Re.detail,Re.goal?.id,Re.goal?.revision,Re.goal?.status]),e.completion.attention()])},attention:e.completion.attention,enabled:e.completion.enabled,target:()=>{const de=t.workspaceTarget.value;return de===void 0?void 0:{nodeId:de.nodeId,target:{kind:"WORKSPACE",workspaceId:de.workspaceId},runner:C.runner.value,sessionId:t.sessionId.value??null}}}),at=_(()=>t.run.runs.value.filter(de=>de.sessionId===Ie.value)),Ze=_(()=>{const de=C.selectedSession.value;return de!==void 0&&!t.conversation.initialLoadFailed.value&&x.canWatchSessionHistory(de)&&!x.hasInitialSessionSnapshot(de.id)}),Te=_(()=>t.submission.pending.value&&t.submission.context.value===fp(Ie.value)),Ee=_(()=>w.canInterruptTurn.value&&!Te.value),_e={capture:()=>t.captureQuote(()=>!w.composerInputDisabled.value&&!Te.value,()=>H.notice(c("composer.quoteTooLarge"),"warning"))},ie=(de,Re)=>{t.skillTokens.select(de),t.focusInput(Re)},O=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:Ve,canInterruptTurn:Ee,commandPickerOpen:g.commandPickerOpen,fileReferences:Je,runnerInteractions:g,selectSkill:ie,stopActiveRun:oe.stopActiveRun,sendMessage:(de,Re,Le)=>{Ue(de?"REPLACE_CURRENT":void 0,Re,Le)},loadRunnerProfiles:Q.loadProfiles,loadOlderConversationTurns:ge.paging.loadOlderConversationTurns,canLoadOlder:()=>!ge.paging.olderHistoryError.value});function G(de){g.selectCommand(de,Re=>{Ue(void 0,Re)})}function pe(de){g.selectSkill(de,ie)}function xe(de){g.closeCommandState(de,(Re,Le)=>{he.send(void 0,!0,void 0,{command:Re,input:Le})})}async function He(de){const Re=C.selectedSession.value;Re!==void 0&&de.trim().length>0&&await We.execute(Re,"goal",`/goal ${de.trim()}`)}async function fe(){const de=C.selectedSession.value;de!==void 0&&await We.execute(de,"goal","/goal --clear")}function Ce(de){const Re=t.workspaceTarget.value,Le=t.sessionId.value;if(Re===void 0||Le===void 0||!w.nodeReady.value)return;const et=Nr(de,{...Re,sessionId:Le,scope:"SESSION"});et!==void 0&&e.files.openChange(et)}function ke(de,Re,Le,et=!1,mt){if(!et&&mt?.mime.startsWith("image/")){J.openFileAttachment(mt);return}e.files.openFile(de,Re,Le,et)}const Oe={state:t,opening:i,secondary:Fe,configuration:C,runner:g,presentation:w,references:Je,interactions:O,quoteTarget:_e,attachmentInput:Y,images:J,completion:Ye,events:te,submitting:Te,canInterrupt:Ee,filesReady:Ve,status:S,copyMessage:(de,Re)=>ec(de,Re,H.notice),openFileChange:Ce,openAgentFile:ke,terminalReady:_(()=>w.nodeReady.value&&m.nodeManifest.value?.terminal?.available===!0&&m.nodeManifest.value.terminal.supportsReplay===!0),effortLabel:Vi,request:H.request,loading:m.loading,draftOpen:m.draftOpen,nodeManifest:m.nodeManifest,runnerProfilesLoading:m.runnerProfilesLoading,runnerProfilesFailed:m.runnerProfilesFailed,mobileViewport:e.mobileViewport,selectedWorkspace:e.messaging.selectedWorkspace,selectedSessionId:Ie,conversationRuns:at,conversationSyncPending:Ze,composer:Q,runnerOptions:V,selectEffort:U,selectModel:A,selectAccess:h,selectModelEffort:F,currentSessionQueue:W,queueActions:q,performance:K,userInput:ve,approvals:X,runControl:oe,conversationWindow:ge,history:le,rewindConversation:ae,rollbackConversation:P,channel:z,realtime:ce,watch:x,commands:We,messaging:he,sendMessage:Ue,plan:me,context:Ne,activePlanContinuation:rt,activeGoal:ne,selectCommand:G,selectSkill:pe,selectQuickPrompt:O.selectQuickPrompt,closeCommandState:xe,editGoal:He,clearGoal:fe},Pe={imageResourceUrl:_(()=>{const de=t.workspaceTarget.value;if(de===void 0)return;const Re=e.files.attachments(de);return Le=>Re.sourceUrl({path:Le})}),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:Oe.activeGoal,activePlanContinuation:Oe.activePlanContinuation,approvals:Oe.approvals,attachmentInput:Oe.attachmentInput,canInterrupt:Oe.canInterrupt,clearGoal:Oe.clearGoal,closeCommandState:Oe.closeCommandState,completion:Oe.completion,composer:Oe.composer,configuration:Oe.configuration,context:Oe.context,conversationRuns:Oe.conversationRuns,conversationSyncPending:Oe.conversationSyncPending,conversationWindow:Oe.conversationWindow,copyMessage:Oe.copyMessage,currentSessionQueue:Oe.currentSessionQueue,draftOpen:Oe.draftOpen,editGoal:Oe.editGoal,effortLabel:Oe.effortLabel,filesReady:Oe.filesReady,images:Oe.images,interactions:Oe.interactions,loading:Oe.loading,mobileViewport:Oe.mobileViewport,nodeManifest:Oe.nodeManifest,openAgentFile:Oe.openAgentFile,openFileChange:Oe.openFileChange,performance:Oe.performance,plan:Oe.plan,presentation:Oe.presentation,queueActions:Oe.queueActions,references:Oe.references,quoteTarget:Oe.quoteTarget,rewindConversation:Oe.rewindConversation,rollbackConversation:Oe.rollbackConversation,runControl:Oe.runControl,runner:Oe.runner,runnerOptions:Oe.runnerOptions,runnerProfilesFailed:Oe.runnerProfilesFailed,runnerProfilesLoading:Oe.runnerProfilesLoading,selectAccess:Oe.selectAccess,selectCommand:Oe.selectCommand,selectModelEffort:Oe.selectModelEffort,selectQuickPrompt:Oe.selectQuickPrompt,selectSkill:Oe.selectSkill,selectedSessionId:Oe.selectedSessionId,selectedWorkspace:Oe.selectedWorkspace,sendMessage:Oe.sendMessage,status:Oe.status,submitting:Oe.submitting,terminalReady:Oe.terminalReady,userInput:Oe.userInput};return{...Oe,view:Pe,prepareDraft:R,restoreVisibleWatch:k,focusDraft:()=>t.focusInput(t.draft.input.value.length)}}function Sh(e){const t=Gt(),{loader:n,renderer:a,ports:r}=e;let s;const i=(v,u,y,k)=>(t===void 0||t.active)&&v===e.currentRequest()&&e.workspaceTarget.value?.nodeId===u&&(k===void 0||e.workspaceTarget.value.workspaceId===k)&&e.sessionId.value===y;async function l(v,u={}){const y=e.workspaceTarget.value?.nodeId,k=e.workspaceTarget.value?.workspaceId;if(y===void 0)return;const T={requestId:e.nextRequest(),preparing:!0,nodeId:y,workspaceId:k,sessionId:v,markRead:!1};s=T,a.begin();const{switching:p,session:m}=r.navigate(v,y,u);let S=!1,N;if(p){e.resetInteraction(),r.setSession(void 0);const C=e.prepareSession(y,k,v,m);S=C.restored,N=C.activeRunId}if(r.setSession(v),T.preparing=!1,s!==T)return;if(e.workspaceTarget.value?.nodeId!==y||e.sessionId.value!==v){s=void 0;return}const I=e.currentRequest();T.requestId=I;const b=e.workspaceTarget.value.workspaceId;await a.openRestored({loader:n,nodeId:y,workspaceId:b,sessionId:v,requestId:I,switching:p,restored:S,activeRunId:N,deferInitialScroll:u.deferInitialScroll===!0,throwOnFailure:u.throwOnFailure===!0,isCurrent:()=>i(I,y,v,b),onResolved:C=>{T.session=C,u.onSessionResolved?.(C),T.onSessionResolved?.(C),delete T.onSessionResolved},onSettle:()=>{s===T&&(s=void 0)},onLoaded:C=>{b!==void 0&&(u.markReadAfterOpen||T.markRead)&&C.workspaceId===k&&i(I,y,v,k)&&Promise.resolve(r.markRead(y,k,C.id)).catch(()=>{})}})}async function d(v,u){const y=e.workspaceTarget.value;if(y!==void 0){if(e.sessionId.value===v&&!r.draftOpen.value){if(r.closeMobile(),e.loading.value){(s?.preparing===!0||s?.requestId===e.currentRequest())&&s.nodeId===y.nodeId&&s.workspaceId===y.workspaceId&&s.sessionId===v&&(u!==void 0&&(s.session!==void 0?u(s.session):s.onSessionResolved=u),s.markRead=!0);return}if(!e.failed.value&&e.hasInitialSnapshot(v)){const k=r.sessions.value.find(T=>T.id===v&&T.workspaceId===y.workspaceId);if(k===void 0&&u!==void 0){await l(v,{markReadAfterOpen:!0,onSessionResolved:u});return}k!==void 0&&u?.(k),Promise.resolve(r.markRead(y.nodeId,y.workspaceId,v)).catch(()=>{});return}}await l(v,{markReadAfterOpen:!0,...u===void 0?{}:{onSessionResolved:u}})}}return{open:l,openTab:d,loadingContent:a.loadingContent}}function Cs(e){const t=Ih(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},d={currentWorkspaceRevision:r.workspaceRevision,request:r.request,notice:r.notice,errorMessage:r.errorMessage,missingQueueItemError:u=>yt(u)==="QUEUE_ITEM_INVALID"},v={...r,files:{...r.files,openFile:(u,y,k,T)=>r.files.openFile(u,y,k,T,s.kind),openChange:u=>r.files.openChange({...u,quotePane:s.kind})},watchConnection:{...r.watchConnection,coordinator:()=>n},completion:i,state:t,queue:d,sessionPathId:Xo};return s.kind==="main"?(Ge(s.visible,u=>{if(!u){n?.stopSession();return}const y=s.selection.sessionId.value;r.view.value==="nodes"&&t.workspaceTarget.value!==void 0&&!t.conversation.loadingInitial.value&&!s.selection.draftOpen.value&&y!==void 0&&(typeof document>"u"||document.visibilityState==="visible")&&Promise.resolve(n?.restartSession(y)).catch(()=>{})},{flush:"sync"}),Ss({...v,opening:{navigate:(...u)=>s.navigation().prepareTarget(...u),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:u=>s.open(u,{preserveMobileWorkspaceSurface:!0,deferInitialScroll:!0})},messaging:{selectedWorkspace:r.selectedWorkspace,draft:{restore:()=>s.navigation().restoreDraftSelection(),create:s.createDraft},replaceSession:s.replaceSession,temporaryTitle:zi,beginSessionWatch:s.beginWatch},history:{onDraftFilled:(u,y)=>{y==="rollback"&&s.saveCurrent(),t.focusInput(u.length)},replaceSession:s.replaceSession,openSession:(u,y)=>s.open(u,{...y,throwOnFailure:!0})}})):Ss({...v,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:zi,beginSessionWatch:u=>{n?.restartSecondarySession(u)}},history:{onDraftFilled:u=>{t.draft.persist(),t.focusInput(u.length)},openSession:s.open}})}return{state:t,connect:a,connectWatchCoordinator:r=>{n=r}}}function Ch(e){const t=$([]),n=$(""),a=$([]),r=$(),s=$(!1),i=$({}),l=new Map,d=new Map;let v=0,u=0;function y(E,H){i.value={...i.value,[E]:H},t.value=t.value.map(J=>J.id===E?{...J,upgradeProgress:H}:J)}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 J=t.value.some(Y=>Y.id===E&&Y.connected);return t.value=t.value.map(Y=>Y.id===E?{...Y,connected:H}:Y),J}function m(E){a.value=[...E]}function S(){i.value={}}function N(){t.value=[],n.value="",S()}function I(E){return l.get(E)}function b(E){l.delete(E),e.workspaceTarget.value?.nodeId===E&&(r.value=void 0)}function C(E){d.delete(E),b(E),e.workspaceTarget.value?.nodeId===E&&(s.value=!1)}function g(E){for(const H of new Set([...l.keys(),...d.keys()]))E.has(H)||(l.delete(H),d.delete(H))}async function R(){const E=++u;try{const H=(await e.request("/api/nodes")).nodes;if(E!==u)return;const J=new Set(t.value.filter(Y=>!Y.connected).map(Y=>Y.id));t.value=H;for(const Y of H)Y.connected&&J.has(Y.id)&&e.onNodeConnected?.(Y.id)}catch(H){if(E!==u)return;e.notice(c("generated.workbenchCapabilityService.unableToLoadNodes",{value0:e.errorMessage(H)}),"error",H)}}async function W(){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 w(E){const H=++v;d.set(E,H);const J=()=>d.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`);J()&&(l.set(E,Y.manifest),e.workspaceTarget.value?.nodeId===E&&(r.value=Y.manifest))}catch{J()&&b(E)}finally{J()&&e.workspaceTarget.value?.nodeId===E&&(s.value=!1)}}function D(E){r.value=E===void 0?void 0:I(E),s.value=E!==void 0&&r.value===void 0}return{nodes:_(()=>t.value),serverVersion:_(()=>n.value),workspaces:_(()=>a.value),replaceNode:k,removeNode:T,setNodeConnection:p,replaceWorkspaces:m,manifest:_(()=>r.value),manifestLoading:_(()=>s.value),upgradeProgress:_(()=>i.value),applyUpgrade:y,clearUpgradeProgress:S,resetResources:N,selectNode:D,refreshNodes:R,refreshServerCapabilities:W,refreshNodeManifest:w,restoreNodeManifest:I,invalidateNodeManifest:C,retainNodeManifests:g}}function Th(e){const t=e.host,n=e.manifest,a=e.loading;return _(()=>{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 Eh(e){const t=window.matchMedia(Gi).matches,n=$(e.initialView),a=$(e.initialSettingsSection),r=$(e.initialManagementSection),s=$(t),i=$(t),l=$(!1),d=$("conversation"),v=$();let u;function y(R,W=!1){const w=Vf({mobileViewport:s.value,sidebarCollapsed:i.value,mobileSidebarOpen:l.value,mobileWorkspaceSurface:d.value},R,W);(W||R!==s.value)&&(v.value=void 0),s.value=w.mobileViewport,i.value=w.sidebarCollapsed,l.value=w.mobileSidebarOpen,d.value=w.mobileWorkspaceSurface}function k(R){y(R.matches)}function T(){u===void 0&&(u=window.matchMedia(Gi),y(u.matches,!0),u.addEventListener("change",k))}function p(){u?.removeEventListener("change",k),u=void 0}function m(){d.value="conversation"}function S(){v.value=void 0,s.value&&(l.value=!1)}function N(R,W){if(W==="preserve-layout"){n.value=R;return}if(v.value=void 0,n.value=R,s.value){m(),l.value=e.opensMobileSidebar(R);return}i.value=!1}function I(R){a.value=R,S()}function b(R){r.value=R,S()}function C(R){s.value&&(v.value=void 0,S(),d.value=R)}function g(R){if(!s.value)return;const W=v.value!==void 0;if(v.value=R,R===void 0){W&&S();return}l.value=!0,m()}return{view:n,settingsSection:a,managementSection:r,mobileViewport:s,sidebarCollapsed:i,mobileSidebarOpen:l,mobileWorkspaceSurface:d,mobileUtilityPanel:v,start:T,dispose:p,selectView:N,closeMobileSidebar:S,selectSettings:I,selectManagement:b,openMobileWorkspaceSurface:C,closeMobileWorkspaceSurface:m,selectMobileUtilityPanel:g}}function Rh(e){const t=e.navigation,{view:n,managementSection:a,mobileViewport:r,mobileSidebarOpen:s,mobileUtilityPanel:i,mobileWorkspaceSurface:l,sidebarCollapsed:d,closeMobileSidebar:v,closeMobileWorkspaceSurface:u,openMobileWorkspaceSurface:y,selectView:k}=t,T=e.management,p=e.admin,m=$(!1),S=$(!1);Ge(r,D=>{D||(m.value=!1,S.value=!1)});const N=_(()=>[{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:"⚙"}]),I=_(()=>!d.value||s.value),b=_(()=>[{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")}]),C=_(()=>T.items(p.value).map(({id:D,labelKey:E})=>({id:D,label:c(E)})));function g(D){const E=n.value;S.value=!1;const H=r.value&&E===D&&s.value&&i.value===void 0;if(r.value&&D==="conversations"){const J=m.value;if(m.value=E===D&&!J,E===D){t.selectMobileUtilityPanel(void 0),v(),u();return}}else m.value=!1;D==="management"&&!C.value.some(J=>J.id===a.value)&&(a.value=C.value[0]?.id??e.defaultManagement),k(D),(H||r.value&&E!==D&&(D==="nodes"||D==="conversations"))&&v(),E!==D&&(D==="nodes"||D==="conversations")&&e.recoverNotifications().catch(()=>{}),e.transition(E,D)}function R(){m.value=!1}function W(){S.value=!1}function w(D){r.value&&(D!==void 0&&(R(),W()),t.selectMobileUtilityPanel(D))}return{navigationItems:N,settingsItems:b,managementItems:C,selectNavigation:g,selectMobileUtilityPanel:w,hostedConversationMobileFilesOpen:S,hostedConversationMobileHistoryOpen:m,closeHostedConversationMobileHistory:R,closeHostedConversationMobileFiles:W,layoutView:Rt({mobileViewport:r,mobileSidebarOpen:s,mobileUtilityPanel:i,mobileWorkspaceSurface:l,closeMobileSidebar:v,closeMobileWorkspaceSurface:u,openMobileWorkspaceSurface:y,selectMobileUtilityPanel:w,sidebarCollapsed:d,sidebarContentVisible:I,panelWidths:e.layout.panelWidths,setPanelWidth:e.layout.setPanelWidth})}}function xn(){return typeof navigator<"u"&&(/Android|iPhone|iPad|iPod/iu.test(navigator.userAgent)||navigator.platform==="MacIntel"&&navigator.maxTouchPoints>1)}function Ah(){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 d=s.transaction("bindings","readwrite"),v=d.objectStore("bindings");r===void 0?v.delete(a):v.put(r,a),d.oncomplete=()=>i(),d.onabort=()=>l(d.error),d.onerror=()=>l(d.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 Nh(e,t,n=Ah()){const a=$("loading");let r,s,i=null,l=0;const d=$(!1);function v(){return t!==void 0&&globalThis.isSecureContext===!0&&typeof PushManager<"u"&&typeof indexedDB<"u"&&typeof navigator<"u"&&navigator.locks!==void 0&&"serviceWorker"in navigator}const u=(g,R)=>g===l&&e.value===R;function y(g){return Uint8Array.from(atob(g.replaceAll("-","+").replaceAll("_","/")),R=>R.charCodeAt(0))}function k(g){const R=g.toJSON();if(R.endpoint===void 0||R.keys?.p256dh===void 0||R.keys.auth===void 0)throw new Error("WEB_PUSH_SUBSCRIPTION_INVALID");return{endpoint:R.endpoint,expirationTime:R.expirationTime??null,keys:{p256dh:R.keys.p256dh,auth:R.keys.auth}}}async function T(g,R){let W=g.binding;W===void 0&&(W=(await t("/api/notifications/push/clients/resolve",{method:"POST",body:JSON.stringify({clientToken:g.request.clientToken,expectedAccount:R})})).binding??void 0);const{bindingVersion:w,...D}=g.request,E={account:g.account,request:{...D,enabled:!1,...W===void 0?{}:{bindingVersion:W.bindingVersion}}};await n.write(E);const H=await t("/api/notifications/push/clients",{method:"POST",body:JSON.stringify({...E.request,expectedAccount:R})});await n.write({...E,binding:H})}async function p(g,R,W,w,D){await n.locked(async()=>{if(!u(w,g))return;const E=await n.read();if(!u(w,g))return;if(!D&&(E?.request.enabled===!1||E?.binding?.enabled===!1)){await n.display(void 0),u(w,g)&&(a.value="actionRequired");return}const H=k(R);if(E!==void 0&&E.request.subscription.endpoint!==H.endpoint&&!D)throw new Error("WEB_PUSH_SUBSCRIPTION_CHANGED");if(E!==void 0&&E.account!==g&&!D)throw new Error("WEB_PUSH_ACCOUNT_CHANGED");const J=E?.request.clientToken??btoa(String.fromCharCode(...crypto.getRandomValues(new Uint8Array(32)))).replaceAll("+","-").replaceAll("/","_").replaceAll("=","");let Y={account:g,request:{clientKind:"mobile",clientToken:J,subscription:H,enabled:W,...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),!u(w,g))return;const q=()=>t("/api/notifications/push/clients",{method:"POST",body:JSON.stringify({...Y.request,expectedAccount:g})});let Q;try{Q=await q()}catch(V){if(!D||!u(w,g)||!(V instanceof Yt)||V.code!=="WEB_PUSH_BINDING_STALE")throw V;const U=await t("/api/notifications/push/clients/resolve",{method:"POST",body:JSON.stringify({clientToken:Y.request.clientToken,expectedAccount:g})});if(!u(w,g))return;if(U.binding!==null)throw await n.write({...Y,binding:U.binding}),V;const{bindingVersion:A,...h}=Y.request;if(Y={account:g,request:h},await n.write(Y),!u(w,g))return;Q=await q()}if(Q.account!==g)throw new Error("WEB_PUSH_ACCOUNT_CHANGED");await n.write({...Y,binding:Q}),Q.enabled&&W&&u(w,g)&&await n.display({...Q,account:g}),u(w,g)||await n.display(void 0),u(w,g)&&(a.value=Q.enabled&&W?"ready":"disabled")})}async function m(g){const R=e.value;if(d.value=!1,!v()||R===void 0){a.value="unsupported";return}const W=!g&&xn()?I():void 0,w=l;try{if(await W,!u(w,R)||W!==void 0&&a.value==="unavailable")return;const D=await navigator.serviceWorker.getRegistration("/console");if(!u(w,R)||(await n.locked(async()=>{if(!u(w,R))return;const J=await n.read();if(!u(w,R)||J!==void 0&&J.request.clientKind==="mobile")return;await n.display(void 0);const Y=await D?.pushManager?.getSubscription();if(u(w,R)){if(Y!=null&&!await Y.unsubscribe())throw new Error("WEB_PUSH_RETIRE_FAILED");u(w,R)&&await n.write(void 0)}}),!u(w,R)))return;if(!xn()){a.value="unsupported";return}const E=await t("/api/notifications/push");if(!u(w,R))return;if(r=E,s=D,E.account!==R)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(),!u(w,R))return;const H=await n.read();if(!u(w,R))return;if(H?.account!==R&&await n.display(void 0),i!==null&&H===void 0){if(!await i.unsubscribe())throw new Error("WEB_PUSH_RETIRE_FAILED");i=null}if(d.value=!0,!g){a.value="disabled";return}if(i===null||H===void 0||H.account!==R||H.request.subscription.endpoint!==i.endpoint){a.value="actionRequired";return}await p(R,i,!0,w,!1)}catch{u(w,R)&&(a.value="unavailable")}}function S(){return xn()&&d.value&&s!==void 0&&r?.enabled===!0&&r.available}function N(){const g=e.value,R=l;return!v()||!xn()||!d.value||g===void 0||s?.active==null||r?.account!==g||!r.enabled||!r.available||r.publicKey===null?v()&&xn()&&g!==void 0?m(!0):(a.value="unsupported",Promise.resolve()):(i===null?s.pushManager.subscribe({userVisibleOnly:!0,applicationServerKey:y(r.publicKey)}):Promise.resolve(i)).then(async w=>{u(R,g)&&(i=w,await p(g,w,!0,R,!0))}).catch(()=>{u(R,g)&&(a.value="unavailable")})}async function I(){const g=e.value,R=++l;a.value="disabled";try{if(typeof indexedDB<"u"&&await n.display(void 0),!v()||g===void 0)return;await n.locked(async()=>{if(!u(R,g))return;const W=await n.read();W===void 0||W.account!==g||W.request.clientKind==="mobile"&&(await n.display(void 0),await T(W,g))})}catch{g!==void 0&&u(R,g)&&(a.value="unavailable")}}function b(){l++,d.value=!1,r=void 0,s=void 0,i=null}async function C(){b(),typeof indexedDB<"u"&&await n.display(void 0).catch(()=>{})}return{status:a,canSubscribe:S,refresh:m,enable:N,disable:I,dispose:b,invalidate:C}}function Bt(){return typeof document>"u"||document.visibilityState==="visible"&&(document.hasFocus?.()??!0)}function Dh(e,t,n){const a=Nh(e,n),r=xn()?"mobile-push":"desktop-system",s=new Map,i=$(!1),l=$("default"),d=$(!1),v=$(!1);let u=0,y;const k=Math.random().toString(36).slice(2);let T=0;function p(){return typeof Notification<"u"&&typeof navigator<"u"&&"serviceWorker"in navigator}const m=_(()=>typeof window<"u"&&!globalThis.isSecureContext?"insecure":p()?d.value?"unavailable":l.value==="denied"?"denied":i.value&&l.value==="granted"?"enabled":"disabled":"unsupported");function S(Y){return`mar.workbench.system-notifications.v1.${Y}`}function N(){p()&&(l.value=Notification.permission)}function I(){N(),r==="mobile-push"&&a.refresh(i.value)}function b(Y){try{localStorage.setItem(S(Y),String(i.value))}catch{}}async function C(Y){if(!p())return;const q=u;try{const V=await(await navigator.serviceWorker.getRegistration("/console"))?.getNotifications();if(u!==q&&y===Y)return;for(const U of V??[])U.data?.type==="mar.workbench.notification"&&U.data.account===Y&&U.close()}catch{}}async function g(Y){const q=e.value;if(q===void 0||Y&&v.value||Y&&(!p()||!globalThis.isSecureContext))return;const Q=++u,V=()=>u===Q&&e.value===q;if(!Y){i.value=!1,v.value=!1,b(q),r==="mobile-push"&&await a.disable(),await C(q);return}v.value=!0,d.value=!1;try{const U=r==="mobile-push";if(U&&!a.canSubscribe()){await a.refresh(i.value);return}const A=U?await a.enable().then(()=>Notification.permission):await Notification.requestPermission();if(!V()||(l.value=A,A!=="granted"))return;const h=await navigator.serviceWorker.getRegistration("/console");if(!V())return;if(h?.active==null||h.showNotification===void 0){d.value=!0;return}i.value=!0,b(q)}catch{V()&&(d.value=!0)}finally{V()&&(v.value=!1)}}async function R(Y,q=()=>!0){N();const Q=e.value,V=u,U=()=>u===V&&e.value===Q&&Q!==void 0&&y===Q&&m.value==="enabled"&&r==="desktop-system"&&!Bt()&&!Y.read&&Y.expiresAt>Date.now()&&q();if(U())try{const A=await navigator.serviceWorker.getRegistration("/console");if(!U()||A?.active==null)return;const h=`${k}:${++T}`;s.set(h,U);try{await new Promise(F=>{const K=new MessageChannel,ve=()=>{clearTimeout(X),K.port1.close(),F()},X=setTimeout(ve,2500);K.port1.onmessage=ve,A.active.postMessage({type:"mar.workbench.notification.show",account:Q,id:Y.id,title:Y.title,body:Y.message,expiresAt:Y.expiresAt,projectionId:h},[K.port2])})}finally{s.delete(h)}}catch{}}function W(Y){const q=Y.data;if(q?.type==="mar.workbench.notification.state"){const U=q.account===y&&q.account===e.value,A=U&&(q.projectionId===void 0||s.get(q.projectionId)?.()===!0);Y.ports?.[0]?.postMessage({valid:A,foreground:U&&Bt()}),Y.ports?.[0]?.close();return}if(q?.type!=="mar.workbench.notification.click")return;const Q=typeof q.account=="string"&&q.account===e.value&&q.account===y&&typeof q.id=="string",V=Y.ports?.[0];V?.postMessage({accepted:Q}),V?.close(),Q&&t(q.id).catch(()=>{})}function w(Y){if(y===void 0||Y.key!==S(y))return;const q=Y.newValue==="true";i.value===q&&!v.value||(u+=1,v.value=!1,i.value=q,N(),i.value?r==="mobile-push"&&a.refresh(!0):(r==="mobile-push"&&a.disable(),C(y)))}async function D(){if(typeof window>"u")return!1;const Y=new URL(window.location.href),q=Y.searchParams.get("notification"),Q=Y.searchParams.get("notificationAccount");return q===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(q).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(){u+=1,v.value=!1,N(),d.value=!1;const Y=e.value;y=Y,a.invalidate();try{i.value=Y!==void 0&&localStorage.getItem(S(Y))==="true"}catch{i.value=!1}p()&&navigator.serviceWorker.addEventListener("message",W),a.refresh(i.value),typeof window<"u"&&(window.addEventListener("focus",I),window.addEventListener("storage",w))}function J(){u+=1,s.clear(),i.value=!1,v.value=!1,p()&&navigator.serviceWorker.removeEventListener("message",W),typeof window<"u"&&(window.removeEventListener("focus",I),window.removeEventListener("storage",w));const Y=y;y=void 0,a.dispose(),Y!==void 0&&C(Y)}return{enabled:i,mode:r,pushReady:a.canSubscribe,status:m,requesting:v,pushStatus:a.status,enablePush:a.enable,invalidatePush:a.invalidate,setEnabled:g,show:R,start:H,dispose:J,openPending:D,hasPending:E}}const Ts=1440*6e4,Ph=5*6e4;function Es(e,t=Date.now()){for(const[n,a]of e)a<=t&&e.delete(n)}function Rs(e,t,n=Date.now()){const a=e.get(t);return a===void 0?!1:a<=n?(e.delete(t),!1):!0}function Oh(e,t={}){const n=$([]);let a,r=0,s=!1,i,l,d;const v=new Map,u=new Map,y=$(0),k=$(),T=new Map,p=new Map;let m;function S(ne){k.value=ne,y.value+=1}const N=$([]),I=_(()=>n.value.filter(ne=>!ne.read&&ne.expiresAt>Date.now()).length),b=_(()=>{const ne=new Map;for(const me of n.value){if(me.read||me.source!=="server"||me.target?.targetType!=="WORKSPACE_SESSION")continue;const{nodeId:Ne,workspaceId:Ve,sessionId:Je}=me.target,Ie=JSON.stringify([Ne,Ve,Je]),Ke=ne.get(Ie);(Ke===void 0||me.expiresAt>Ke)&&ne.set(Ie,me.expiresAt)}return ne}),C=Lh(I);let g=0,R=0;const W=Dh(e,K,t.request);function w(){return e.value===void 0?void 0:`mar.workbench.notifications.v1.${e.value}`}function D(){const ne=w();if(ne!==void 0)try{localStorage.setItem(ne,JSON.stringify(n.value.filter(me=>me.source!=="server"&&(me.kind==="upload"||me.kind==="web-update"))))}catch{}}function E(ne=Date.now()){Es(v,ne),Es(u,ne);for(const Ne of T.keys())v.has(Ne)||T.delete(Ne);const me=n.value.filter(Ne=>Ne.expiresAt>ne);me.length!==n.value.length&&(n.value=me,D())}function H(){const ne=w();if(n.value=[],ne!==void 0)try{const me=JSON.parse(localStorage.getItem(ne)??"[]");if(!Array.isArray(me))return;n.value=xh(me).filter(Ne=>Ne.kind==="upload"||Ne.kind==="web-update").map(Ne=>({...Ne,source:"local",read:Ne.kind==="upload"?!0:Ne.read})),D()}catch{localStorage.removeItem(ne)}}function J(ne){const me=Date.now();if(E(me),ne.expiresAt!==void 0&&ne.expiresAt<=me)return;const Ne=n.value.find(Je=>Je.id===ne.id),Ve={...ne,source:"local",createdAt:Ne?.createdAt??ne.createdAt??me,updatedAt:me,expiresAt:ne.expiresAt??Ne?.expiresAt??me+Ts,read:ne.kind==="upload"?!0:Ne?.read??ne.read??!1};n.value=[Ve,...n.value.filter(Je=>Je.id!==ne.id&&(ne.kind!=="web-update"||Je.kind!=="web-update"))],D(),Ne===void 0&&Bt()&&(ne.kind==="upload"||!Ve.read)&&S(Ve.id)}function Y(ne){if(ne.status==="CANCELLED"){he(`upload:${ne.id}`);return}const me=ne.status==="COMPLETED"||ne.status==="FAILED";J({id:`upload:${ne.id}`,kind:"upload",source:"local",title:ne.status==="FAILED"?c("generated.workbenchNotificationService.fileUploadFailed"):ne.status==="COMPLETED"?c("generated.workbenchNotificationService.fileUploadCompleted"):c("generated.workbenchNotificationService.uploadingFile"),message:`${ne.name}${ne.error===void 0?"":` · ${ne.error}`}`,target:{nodeId:ne.nodeId,workspaceId:ne.workspaceId},...me?{}:{expiresAt:Date.now()+Ts}})}function q(ne){return!1}function Q(ne,me){const Ne=n.value.filter(Ve=>Ve.source!=="server");n.value=[...ne.notifications.flatMap(Ve=>{const Je=nf.safeParse(Ve);return Je.success?[{...Je.data,read:Je.data.read||me.some(Ie=>Ie(Je.data)),source:"server"}]:[]}),...Ne].sort((Ve,Je)=>Je.createdAt-Ve.createdAt),N.value=(ne.recentRuns??[]).filter(Mh).sort(Wh)}function V(){if(v.size===0)return;const ne=Date.now();for(const[me,Ne]of v){v.delete(me);const Ve=T.get(me);if(T.delete(me),Ne<=ne){u.delete(me);continue}const Je=n.value.find(Ie=>Ie.source==="server"&&Ie.id===me);if(Je!==void 0&&Je.expiresAt<=ne){u.delete(me);continue}Je?.source==="server"&&!Je.read&&(Ve===!0&&Bt()&&!ge(Je.target)&&S(me),Ve===!1&&!Bt()&&W.show(Je,()=>n.value.some(Ie=>Ie.source==="server"&&Ie.id===Je.id&&!Ie.read&&Ie.expiresAt>Date.now()))),u.set(me,Ne)}}async function U(ne){for(;ne===r&&s;){s=!1;const me=[];m=me;let Ne;try{Ne=await t.request("/api/notifications")}catch(Ve){if(ne!==r)return;if(s)continue;throw Ve}finally{m===me&&(m=void 0)}if(ne!==r)return;Q(Ne,me),C.reconcile(),s||V()}}async function A(){if(t.request!==void 0){if(s=!0,i===void 0){const ne=r,Ne=U(ne).finally(()=>{i===Ne&&(i=void 0,ne===r&&s&&h())});i=Ne}return i}}function h(){A().catch(()=>{})}function F(){e.value!==void 0&&Bt()&&ve().catch(()=>{})}async function K(ne){const me=e.value,Ne=r,Ve=++R,Je=typeof ne=="string"?ne:ne.id;g+=1;try{if((typeof ne=="string"||ne.source==="server")&&await A(),Ne!==r||Ve!==R||me!==e.value)return;const Ie=n.value.find(Ke=>Ke.id===Je&&Ke.expiresAt>Date.now()&&(typeof ne!="string"||Ke.source==="server"));if(Ie===void 0)return;ae(Ie.id),await t.onNotificationClick?.(Ie)}finally{Ne===r&&(g-=1)}}function ve(){if(g>0||W.hasPending())return A();if(d={targets:(Bt()?t.activeTargets?.()??[]:[]).map(Je=>({...Je})),account:e.value},l!==void 0)return l;const me=r,Ve=(async()=>{for(;me===r&&d!==void 0;){const{targets:Je,account:Ie}=d;d=void 0;try{await A()}catch(Ke){if(me!==r)return;if(d!==void 0)continue;throw Ke}await ee(Je,Ie,me)}})().finally(()=>{l===Ve&&(l=void 0)});return l=Ve,Ve}function X(ne,me,Ne=!1,Ve=()=>!0){if(t.request===void 0)return Promise.resolve();const Je=r;return t.request(ne,me).catch(async Ie=>{Ne&&Je===r&&Ve()&&yt(Ie)!=="UNAUTHENTICATED"&&!(Ie instanceof Error&&Ie.name==="AbortError")&&await t.request(ne,me).catch(()=>{})}).then(()=>{if(Je===r)return A().catch(()=>{})})}function oe(ne){const me=ef.safeParse(ne);if(me.success){const Ve=me.data,Je=new Set(Ve.notificationIds);return be(Ie=>{const Ke=Ie.target;return!Je.has(Ie.id)||Ke.nodeId!==Ve.nodeId?!1:Ve.type==="notification.session-read"?Ke.targetType==="WORKSPACE_SESSION"&&Ke.workspaceId===Ve.workspaceId&&Ke.sessionId===Ve.sessionId:Ke.targetType==="HOSTED_CONVERSATION"&&Ke.conversationId===Ve.conversationId}),!0}if(na(ne)&&typeof ne.type=="string"&&ne.type.startsWith("recent-run."))return h(),!0;if(!na(ne)||typeof ne.type!="string"||!ne.type.startsWith("notification."))return!1;const Ne=ne.type==="notification.created"?tf.safeParse(ne):void 0;if(Ne?.success){const Ve=Ne.data.notification,Je=Date.now();return Ve.expiresAt<=Je||Rs(u,Ve.id,Je)||Rs(v,Ve.id,Je)?(h(),!0):(Ve.kind==="run"&&Ve.target.targetType==="WORKSPACE_SESSION"&&t.onWorkspaceRunCompleted?.(Ve.target.nodeId,Ve.target.workspaceId),Bt()&&ge(Ve.target)&&!Ve.read?(u.set(Ve.id,Ve.expiresAt),X(`/api/notifications/${encodeURIComponent(Ve.id)}/read`,{method:"POST",body:"{}"},!0,()=>g===0&&!W.hasPending()&&Bt()&&Ve.expiresAt>Date.now()&&ge(Ve.target)),!0):Ve.read?(u.set(Ve.id,Ve.expiresAt),h(),!0):(T.set(Ve.id,Bt()),v.set(Ve.id,Ve.expiresAt),A().catch(()=>{}),!0))}return h(),!0}function ge(ne){return ne.targetType===void 0?!1:(t.activeTargets?.()??[]).some(me=>ne.targetType==="HOSTED_CONVERSATION"?me.targetType==="HOSTED_CONVERSATION"&&me.nodeId===ne.nodeId&&me.conversationId===ne.conversationId:me.targetType==="WORKSPACE_SESSION"&&me.nodeId===ne.nodeId&&me.workspaceId===ne.workspaceId&&me.sessionId===ne.sessionId)}function le(){const me=n.value.filter(Ne=>!Ne.read).filter(Ne=>Ne.source!=="server");if(me.length>0){const Ne=new Set(me.map(Ve=>Ve.id));n.value=n.value.map(Ve=>Ne.has(Ve.id)?{...Ve,read:!0}:Ve),D()}t.request!==void 0&&X("/api/notifications/read-all",{method:"POST",body:"{}"})}function ae(ne){const me=n.value.find(Ne=>Ne.id===ne);if(!(me===void 0||me.read)){if(me.source==="server"){X(`/api/notifications/${encodeURIComponent(ne)}/read`,{method:"POST",body:"{}"});return}n.value=n.value.map(Ne=>Ne.id===ne?{...Ne,read:!0}:Ne),D()}}function P(ne,me){return N.value.some(Ne=>Ne.nodeId===ne&&Ne.workspaceId===me&&Dn(Ne.status))}function z(ne,me){return ce(ne,me)!==void 0}function ce(ne,me){const Ne=Date.now(),Ve=n.value.find(Je=>!Je.read&&Je.source==="server"&&Je.expiresAt>Ne&&Je.target?.targetType==="WORKSPACE_SESSION"&&Je.target.nodeId===ne&&Je.target.workspaceId===me);return Ve?.target?.targetType==="WORKSPACE_SESSION"?Ve.target.sessionId:void 0}function te(ne,me,Ne){const Ve=b.value.get(JSON.stringify([ne,me,Ne]));return Ve!==void 0&&Ve>Date.now()}function x(ne,me,Ne){return We({targetType:"WORKSPACE_SESSION",nodeId:ne,workspaceId:me,sessionId:Ne})}async function ee(ne,me,Ne){await Promise.all(ne.map(async Ve=>{const Je=()=>Ne===r&&g===0&&me===e.value&&ge(Ve)&&Bt();if(!Je())return;(Ve.targetType==="WORKSPACE_SESSION"?te(Ve.nodeId,Ve.workspaceId,Ve.sessionId):Se(Ve.nodeId,Ve.conversationId))&&await We(Ve,!0,Je)}))}function se(){return ee(t.activeTargets?.()??[],e.value,r)}function Se(ne,me){const Ne=Date.now();return n.value.some(Ve=>!Ve.read&&Ve.source==="server"&&Ve.expiresAt>Ne&&Ve.target?.targetType==="HOSTED_CONVERSATION"&&Ve.target.nodeId===ne&&Ve.target.conversationId===me)}function Fe(ne,me){We({targetType:"HOSTED_CONVERSATION",nodeId:ne,conversationId:me})}function We(ne,me=!1,Ne){if(g>0||W.hasPending()||!Bt())return Promise.resolve();const{nodeId:Ve}=ne,Je=ne.targetType==="WORKSPACE_SESSION";if(!(Je?te(Ve,ne.workspaceId,ne.sessionId):Se(Ve,ne.conversationId))||t.request===void 0)return Promise.resolve();const Ke=Je?{nodeId:Ve,workspaceId:ne.workspaceId,sessionId:ne.sessionId}:{nodeId:Ve,conversationId:ne.conversationId},Ye=JSON.stringify([ne.targetType,Ke]),at=p.get(Ye);if(at!==void 0)return me&&(at.retry.isCurrent=Ne??(()=>!0)),at.promise;const Ze={isCurrent:me?Ne??(()=>!0):void 0},Te=new Map(n.value.flatMap(O=>{if(O.source!=="server"||O.read)return[];const G=O.target;return G.nodeId===Ve&&(Je?G.targetType==="WORKSPACE_SESSION"&&G.workspaceId===ne.workspaceId&&G.sessionId===ne.sessionId:G.targetType==="HOSTED_CONVERSATION"&&G.conversationId===ne.conversationId)?[[O.id,O.updatedAt]]:[]})),Ee=r,ie=(async()=>{const O=`/api/notifications/${Je?"session":"conversation"}/read`,G={method:"POST",body:JSON.stringify(Ke)};try{try{await t.request(O,G)}catch(pe){if(Ee!==r||Ze.isCurrent?.()!==!0||yt(pe)==="UNAUTHENTICATED"||pe instanceof Error&&pe.name==="AbortError")return;await t.request(O,G)}Ee===r&&be(pe=>Te.get(pe.id)===pe.updatedAt)}catch{}})().finally(()=>{p.get(Ye)?.promise===ie&&p.delete(Ye)});return p.set(Ye,{promise:ie,retry:Ze}),ie}function be(ne){m?.push(ne),n.value=n.value.map(me=>me.source==="server"&&!me.read&&ne(me)?{...me,read:!0}:me),C.reconcile()}function he(ne){if(n.value.find(Ne=>Ne.id===ne)?.source==="server"){X(`/api/notifications/${encodeURIComponent(ne)}`,{method:"DELETE"});return}n.value=n.value.filter(Ne=>Ne.id!==ne),D()}function Ue(){const ne=n.value.filter(me=>me.kind!=="web-update");ne.length!==n.value.length&&(n.value=ne,D())}async function Qe(){const ne=r;W.start(),C.start(),typeof window<"u"&&window.addEventListener("focus",F),H(),await A().catch(()=>{}),ne===r&&a===void 0&&(a=setInterval(E,Ph))}function rt(){typeof window<"u"&&window.removeEventListener("focus",F),W.dispose(),g=0,C.dispose(),r+=1,s=!1,i=void 0,l=void 0,d=void 0,p.clear(),m=void 0,v.clear(),T.clear(),k.value=void 0,u.clear(),n.value=n.value.filter(ne=>ne.source!=="server"),N.value=[],a!==void 0&&clearInterval(a),a=void 0}return{notifications:n,recentRuns:N,unreadCount:I,notificationRevision:y,previewNotificationId:k,systemNotifications:W,hasActiveWorkspaceRun:P,hasUnreadWorkspace:z,workspaceTabSession:ce,hasUnreadSession:te,hasUnreadConversation:Se,notify:J,recordUpload:Y,project:q,projectServerMessage:oe,load:A,recover:ve,openNotification:K,openPendingSystemNotification:W.openPending,markAllRead:le,markRead:ae,markSessionRead:x,markVisibleRead:se,markConversationRead:Fe,clearWebUpdate:Ue,remove:he,start:Qe,dispose:rt}}function Lh(e){let t,n,a=!1;async function r(){for(a=!0;n!==void 0;){const v=n;if(n=void 0,typeof navigator>"u")continue;const u=navigator;try{v>0?await u.setAppBadge?.(v):u.clearAppBadge!==void 0?await u.clearAppBadge():await u.setAppBadge?.(0)}catch{}}a=!1}function s(v){n=v,a||r()}function i(){t!==void 0&&s(e.value)}function l(){t===void 0&&(t=Ge(e,s,{immediate:!0}),typeof window<"u"&&window.addEventListener("focus",i))}function d(){typeof window<"u"&&window.removeEventListener("focus",i),t?.(),t=void 0,s(0)}return{start:l,reconcile:i,dispose:d}}function Wh(e,t){return Number(Dn(t.status))-Number(Dn(e.status))||Ba(t)-Ba(e)||t.createdAt-e.createdAt||t.runId.localeCompare(e.runId)}function Mh(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 xh(e,t=Date.now()){return Array.isArray(e)?e.filter($h).filter(n=>n.expiresAt>t).map(n=>({...n,source:"local"})):[]}function $h(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||Fh(e.target)):e.target===void 0&&(e.action===void 0||e.action==="RELOAD_PAGE")):!1}function Fh(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 Uh(e){const t=e.application?.state??$({offline:"online",checked:!1}),n=$(!1);let a;function r(){a!==void 0||e.application===void 0||(a=e.application.subscribe(d=>{if(!d.checked)return;const v=e.notifications.notifications.value.some(y=>y.kind==="web-update"),u=d.update??(v?d.reload:void 0);u===void 0?d.reload===void 0&&e.notifications.clearWebUpdate():e.notifications.notify({id:`web-update:${u.version}:${u.buildId}`,kind:"web-update",source:"local",title:c("webUpdate.title"),message:c("webUpdate.message",{value0:u.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 d=e.application.state.value;e.message(c(d.update?"webUpdate.available":d.reload?"webUpdate.reloadAvailable":"webUpdate.upToDate"),"info")}catch(d){e.message(c("webUpdate.checkFailed"),"error",d)}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 Vh(e){const{workspaceTarget:t,selectedWorkspace:n,workspaceHost:a,view:r,mainSurfaceVisible:s,draftSessionOpen:i,selectedSessionId:l,asideVisible:d,asideTarget:v,asideLoading:u}=e;function y(T=!1){const p=t.value;if(r.value!=="nodes"||p===void 0||n.value===void 0||a.value?.connected===!1)return[];const m=[];return s.value&&!i.value&&l.value!==void 0&&(T||!e.mainLoading.value)&&m.push({...p,sessionId:l.value}),d.value&&v.value!==void 0&&(T||!u.value)&&!m.some(S=>S.sessionId===v.value?.sessionId)&&m.push({nodeId:v.value.nodeId,workspaceId:v.value.workspaceId,sessionId:v.value.sessionId}),m}function k(T,p,m){if(y(!0).some(S=>S.nodeId===T&&S.workspaceId===p&&S.sessionId===m))return e.markSessionRead(T,p,m)}return{targets:y,markRead:k}}async function qh(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 Hh(e){const{workspaceTarget:t,selectedSessionId:n,sessions:a,selectView:r,applyWebUpdate:s,closeMobileSidebar:i,selectWorkspace:l,syncWorkspaceSessions:d,openHostedConversationTarget:v,notice:u,openSession:y}=e,k=e.discovery,T=e.discovery.selectGroup;async function p(b){if(b.action==="RELOAD_PAGE"){await s();return}const C=b.target;C!==void 0&&await m(C,!0)}async function m(b,C=!1){try{let g;await qh(b,{workspaceTarget:()=>t.value,hasSession:R=>a.value.some(W=>W.id===R&&(!("workspaceId"in b)||b.workspaceId===void 0||W.workspaceId===b.workspaceId)),showNodes:()=>r("nodes"),showConversations:()=>r("conversations"),activateWorkspace:async R=>{const W=t.value,w="sessionId"in b&&b.sessionId!==void 0;if(w&&W?.nodeId===R.nodeId&&W.workspaceId===R.workspaceId)return i(),g=k.groupSelectionRevision(),!0;const D=await l(R,!w);return D&&(g=k.groupSelectionRevision()),D},synchronizeSessions:d,openSession:R=>I(R,C,g),openHostedConversation:v})}catch(g){u(c("generated.workbenchPageController.unableToOpenTheSessionLinkedTo",{value0:lt(g)}),"error",g)}}async function S(b){await p({id:`recent-run:${b.nodeId}:${b.runId}`,title:b.sessionTitle,createdAt:b.createdAt,updatedAt:b.updatedAt,target:{targetType:"WORKSPACE_SESSION",nodeId:b.nodeId,workspaceId:b.workspaceId,sessionId:b.sessionId,sessionName:b.sessionTitle}})}async function N(b){await m({targetType:"WORKSPACE_SESSION",...b},!0)}function I(b,C,g=k.groupSelectionRevision()){const R=t.value,W=w=>{R!==void 0&&t.value?.nodeId===R.nodeId&&t.value.workspaceId===R.workspaceId&&w.workspaceId===R.workspaceId&&n.value===w.id&&k.groupSelectionRevision()===g&&T(w.sessionGroup??"MAIN",!0)};return C?e.selection().openWorkspaceTabSession(b,W):y(b,{onSessionResolved:W})}return{openWorkbenchNotification:p,openRecentRun:S,openSessionGroupTarget:N,openNavigatedSession:I}}function Bh(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 d=a;a=void 0,d!==void 0&&await r(d)}}}function s(l=0,d=!1){if(t!==void 0){if(l!==0)return;clearTimeout(t)}const v=e.selectedSessionId.value,u=e.workspaceTarget.value;v===void 0||u===void 0||(t=setTimeout(()=>{t=void 0,r({workspace:u,sessionId:v,deferInitialScroll:d})},l))}function i(){t!==void 0&&clearTimeout(t),t=void 0,a=void 0}return{schedule:s,clear:i}}function Gh(e){const t=Un({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 d=()=>e.workbenchConnectionId===void 0?"local-test-connection":e.workbenchConnectionId();function v(w){return`${w.connectionId}:${w.nodeId}:${w.workspaceId}:${w.directory}:${w.git?"git":"directory"}:${w.sessionGroup??"ALL"}`}function u(w){const D=a;return D!==void 0&&v(D)===w&&e.enabled?.()!==!1&&e.workspaceTarget.value?.nodeId===D.nodeId&&e.workspaceTarget.value?.workspaceId===D.workspaceId&&e.sessionGroup?.()===D.sessionGroup&&$n(e.sessionNavigation?.(),D.sessionNavigation)&&d()===D.connectionId}function y(w,D,E=!1,H=!1){t.sessions=(D||H)&&t.sessions==="ready"?"ready":"loading";const J=D||E;t.files=J&&t.files==="ready"?"ready":"loading",t.changes=w.git?J&&t.changes==="ready"?"ready":"loading":"idle",n.sessions=-1,n.files=-1,n.changes=-1,n.sessionNavigation=-1,t.sessionNavigation=w.sessionNavigation===void 0?"idle":"loading"}async function k(w,D,E){const H=a;if(H===void 0||v(H)!==w)return;const J=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(!(!u(w)||a?.watchId!==H.watchId)){if(typeof J.nodeGeneration=="string"&&H.nodeGeneration!==void 0&&H.nodeGeneration!==J.nodeGeneration)throw new Error("WORKSPACE_WATCH_GENERATION_CHANGED");typeof J.nodeGeneration=="string"&&(H.nodeGeneration=J.nodeGeneration),i=0}}const T=Nl({heartbeatMs:e.heartbeatMs,requestTimeoutMs:e.requestTimeoutMs??1e4,confirmationTimeoutMs:e.confirmationTimeoutMs??e.heartbeatMs*3,maxFailures:3,eligible:u,renew:k,onExpired:()=>{const w=a;w!==void 0&&S(w.workspaceId)}});async function p(w,D,E){if(e.enabled?.()===!1)return;const H=e.workspaceTarget.value?.nodeId,J=e.workspaces.value.find(K=>K.id===w),Y=d();if(H===void 0||J===void 0||Y===void 0)return;const q=e.sessionGroup?.(),Q=e.sessionNavigation?.(),V=Q===void 0?void 0:{...Q,sessionIds:[...Q.sessionIds],summaryAnchors:[...Q.summaryAnchors]},U=`${Y}:${H}:${w}:${D}:${J.kind==="GIT_WORKSPACE"?"git":"directory"}:${q??"ALL"}`;if(E&&!l&&a!==void 0&&v(a)===U&&$n(a.sessionNavigation,V))return;const A=!l&&a!==void 0&&a.connectionId===Y&&a.nodeId===H&&a.workspaceId===w&&a.directory===D&&a.git===(J.kind==="GIT_WORKSPACE")&&a.sessionGroup!==q,h=!l&&a!==void 0&&v(a)===U&&!$n(a.sessionNavigation,V);b(),E&&(i=0,s.sessions=0,s.files=0,s.changes=0,s.sessionNavigation=0);const F={nodeId:H,workspaceId:w,directory:D,watchId:crypto.randomUUID().replace(/-/g,""),connectionId:Y,git:J.kind==="GIT_WORKSPACE",...q===void 0?{}:{sessionGroup:q},...V===void 0?{}:{sessionNavigation:V}};a=F,l=!1,y(F,!E,A||h,h);try{await T.start(v(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(w,D,!1)},Math.min(e.heartbeatMs,1e3*2**(i-1))))}}function m(w,D){const E=a?.workspaceId===w&&a.nodeId===e.workspaceTarget.value?.nodeId?a.directory:".";return p(w,D??E,!0)}async function S(w){const D=a?.directory??".";b(),await p(w,D,!0)}function N(){const w=a;return w===void 0||!Object.values(t).includes("failed")?Promise.resolve():(s.sessions=0,s.files=0,s.changes=0,s.sessionNavigation=0,i=0,p(w.workspaceId,w.directory,!1))}function I(){l=!0,r!==void 0&&clearTimeout(r),r=void 0,T.pause()}function b(){r!==void 0&&clearTimeout(r),r=void 0,T.stop(),a=void 0}function C(){const w=a;b(),l=!1,t.sessions="idle",t.files="idle",t.changes="idle",t.sessionNavigation="idle",w!==void 0&&e.request(`/api/workspaces/${encodeURIComponent(w.workspaceId)}/watch`,{method:"DELETE",body:JSON.stringify({nodeId:w.nodeId,workbenchConnectionId:w.connectionId,watchId:w.watchId})}).catch(()=>{})}function g(w){const D=a;if(!(D===void 0||w.workbenchConnectionId!==D.connectionId||w.watchId!==D.watchId||w.nodeId!==D.nodeId||w.workspaceId!==D.workspaceId||e.sessionGroup?.()!==D.sessionGroup||!$n(e.sessionNavigation?.(),D.sessionNavigation)||typeof w.nodeGeneration!="string"||D.nodeGeneration!==void 0&&w.nodeGeneration!==D.nodeGeneration))return D.nodeGeneration??=w.nodeGeneration,T.confirm(v(D)),D}function R(w){if(w.type!=="watch.workspace.snapshot"||!As(w.topic)||!Number.isInteger(w.revision)||w.revision<0)return!1;const D=g(w);if(D===void 0)return!1;const E=w.revision;return E<=n[w.topic]||(n[w.topic]=E,s[w.topic]=0,t[w.topic]="ready",w.topic==="sessions"?e.onSnapshot(D.nodeId,D.workspaceId,{sessions:w.payload},w.topic,E):w.topic==="files"?e.onSnapshot(D.nodeId,D.workspaceId,{files:w.payload},w.topic,E):w.topic==="changes"?e.onSnapshot(D.nodeId,D.workspaceId,{changes:w.payload},w.topic,E):e.onSnapshot(D.nodeId,D.workspaceId,{sessionNavigation:w.payload},w.topic,E,D.sessionNavigation)),!0}function W(w){if(w.type!=="watch.failed"||w.watchType!=="workspace"||!As(w.topic))return!1;const D=g(w);if(D===void 0)return!1;if(t[w.topic]="failed",s[w.topic]+=1,s[w.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[w.topic]-1))),!0}return{start:m,restart:S,retryFailed:N,pause:I,stop:C,topicStatus:dt(t),handleEvent(w){if(typeof w!="object"||w===null)return!1;const D=w;return W(D)||R(D)}}}function As(e){return e==="sessions"||e==="files"||e==="changes"||e==="sessionNavigation"}function $n(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 zh(e){const t=()=>e.sessions.current.value.find(a=>a.id===e.sessions.selectedId.value);return{accept:(a,r,s,i,l,d)=>{if(i==="sessionNavigation"){e.workspaceTarget.value?.nodeId===a&&e.workspaceTarget.value.workspaceId===r&&d!==void 0&&$n(e.navigation.query(),d)&&e.navigation.accept({nodeId:a,workspaceId:r},d,s.sessionNavigation);return}e.files.acceptWatch(a,r,s,{topic:i,revision:l});const v=Hl(s.changes);v!==void 0&&e.updateBranch(a,r,v);const u=s.sessions;if(!Array.isArray(u?.sessions))return;const y=t();e.sessions.applySnapshot(a,r,{sessions:[...u.sessions],...u.runningCounts===void 0?{}:{runningCounts:u.runningCounts},nextCursor:u.nextCursor??null}),e.sessions.reconcile(y,t())}}}function Kh(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 d=e.selectedSessionId();e.currentSurface()==="workbench"&&d!==void 0&&i.beginSession(d)})}return{transition:a,requestSessionWatch:n}}function jh(e){const t=a=>a==="nodes"?"workbench":a==="conversations"?"extension":"other",n=Kh({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 _h(e){const{hosted:t,...n}=e,{beginExtension:a,restartExtension:r,stopExtension:s,...i}=lm({...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 Yh(e){async function t(s,i,l){const d=new URLSearchParams({nodeId:s.nodeId,path:i,limit:"200"});l!==void 0&&d.set("cursor",l);const v=await e.http.request(`/api/workspaces/${encodeURIComponent(s.workspaceId)}/files?${d}`);if(!rc(v))throw new Error("NODE_RESPONSE_INVALID");const u=Dr(v.workspace);return{...v.files,...u===void 0?{}:{workspace:u}}}async function n(s,i,l){const v=(await e.http.request(`/api/workspaces/${encodeURIComponent(s.workspaceId)}/uploads/preflight`,{method:"POST",body:JSON.stringify({nodeId:s.nodeId,directory:i,files:l.map(u=>({name:u}))})})).uploads;if(!Array.isArray(v))throw new Error("NODE_RESPONSE_INVALID");return l.map((u,y)=>{const k=v[y];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,d,v){s={...s};const u=await e.http.request(`/api/workspaces/${encodeURIComponent(s.workspaceId)}/files/mutate`,{method:"POST",body:JSON.stringify({nodeId:s.nodeId,action:i,path:l,...d===void 0?{}:{destination:d}})});try{v?.()!==!1&&(v===void 0?await e.onWritten(s):await e.onWritten(s,v))}catch{}return typeof u.file?.path=="string"?u.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 rc(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 Dr(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 Qh(e){const t=$(Uo(e.workspaceName())),n=$(),a=$();let r=0,s=0;const i=new WeakMap;async function l(g,R=!1){const W=i.get(g);if(W!==void 0)return W;const w=d(g,R);i.set(g,w);try{return await w}finally{i.get(g)===w&&i.delete(g)}}async function d(g,R=!1){if(g.kind!=="DIRECTORY"||g.loading)return;const W=r,w=g===t.value?s:void 0,D=()=>W===r&&(w===void 0||w===s);g.loading=!0;try{const E=await e.list(g.path,R?g.nextCursor??void 0:void 0);return D()?(g.children=Ns(R?g.children:[],E.entries),g.nextCursor=E.nextCursor,g.loaded=!0,g.failedAppend=void 0,g.failure=void 0,g.placeholder=!1,E):void 0}catch(E){D()&&(g.failedAppend=R,g.failure=E);return}finally{D()&&(g.loading=!1)}}async function v(g){g.kind==="DIRECTORY"&&(g.expanded=!g.expanded,g.expanded&&!g.loaded&&await l(g))}function u(){r+=1,t.value=Uo(e.workspaceName()),n.value=void 0,a.value=void 0}async function y(){const g=sc(t.value),R=Zh(t.value),W=n.value;r+=1;const w=r,D=Uo(e.workspaceName()),E=J=>{w===r&&(a.value={cause:J.failure})},H=await l(D);if(H===void 0||!await k(D,R.get(".")??0))return E(D);for(const J of g.filter(Y=>Y!==".")){const Y=Xn(D,J);if(Y?.kind==="DIRECTORY"&&(Y.expanded=!0,await l(Y)===void 0||!await k(Y,R.get(J)??0)))return E(Y)}if(w===r)return t.value=D,a.value=void 0,n.value=W!==void 0&&Xn(D,W)?W:void 0,H}async function k(g,R){for(;g.children.length<R&&g.nextCursor!==null;){const W=g.nextCursor;if(await l(g,!0)===void 0)return!1;if(g.nextCursor===W)break}return!0}async function T(g,R=()=>!0){const W=Ds(g);if(W===void 0||!R())return;t.value.expanded=!0;const w=t.value;if(!w.loaded&&await l(w)===void 0){if(w===t.value&&R()&&yt(w.failure)==="PERMISSION_DENIED")throw w.failure;if(w!==t.value||!w.loaded)return}if(!R())return;const D=W.split("/");let E=t.value,H="";for(const J of D.slice(0,-1)){H=H===""?J:`${H}/${J}`,Vo(E,H)||(E.children=dr([...E.children,cr(H,"DIRECTORY")]));const Y=Vo(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(w===t.value&&R()&&yt(Y.failure)==="PERMISSION_DENIED")throw Y.failure;return}if(!R())return;E=Y}Vo(E,W)||(E.children=dr([...E.children,cr(W,"FILE")]))}function p(g){n.value=g.path}function m(g){const R=Ds(g);R!==void 0&&Xn(t.value,R)!==void 0&&(n.value=R)}function S(g){s+=1,i.delete(t.value),t.value.children=Ns(t.value.children,g.entries),t.value.nextCursor=g.nextCursor,t.value.loaded=!0,t.value.loading=!1,t.value.failedAppend=void 0,t.value.failure=void 0}function N(g){t.value.name=g}function I(){const g=n.value===void 0?void 0:Xn(t.value,n.value);if(g===void 0)return".";if(g.kind==="DIRECTORY")return g.path;const R=g.path.lastIndexOf("/");return R<0?".":g.path.slice(0,R)}function b(){return{root:ur(t.value),...n.value===void 0?{}:{selectedPath:n.value}}}function C(g){r+=1,t.value=ur(g.root),n.value=g.selectedPath,a.value=void 0}return{root:t,selectedPath:n,refreshError:a,applyRootPage:S,loadMore:g=>l(g,g.failedAppend??!0),refresh:y,reset:u,restore:C,reveal:T,select:p,selectPath:m,setRootName:N,snapshot:b,toggle:v,uploadDirectory:I}}function ic(e,t){const n=t.trim().toLocaleLowerCase();return n.length===0||e.toLocaleLowerCase().includes(n)}function Jh(e,t){const n=[],a=(i,l)=>{if(n.push({node:i,depth:l,loadMore:!1}),!(i.kind!=="DIRECTORY"||!i.expanded)){for(const d of i.children)a(d,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||!ic(i.node.path,r))continue;let l=i.node.path;for(s.add(l);l!==".";){const d=l.lastIndexOf("/");l=d<0?".":l.slice(0,d),s.add(l)}}return n.filter(i=>s.has(i.node.path))}function Xh(e,t,n,a,r){const s=Math.max(0,Math.floor(e)),i=Math.max(1,a),l=Math.max(0,n),d=s*i,v=Math.max(0,d-l),u=Math.max(0,Math.min(t,v)),y=Math.floor(u/i),k=Math.ceil((u+l)/i),T=Math.max(0,Math.floor(r)),p=Math.max(0,y-T),m=Math.min(s,k+T);return{start:p,end:m,offset:p*i,totalHeight:d}}function Uo(e){return{path:".",name:e,kind:"DIRECTORY",size:null,children:[],expanded:!0,loaded:!1,loading:!1,nextCursor:null,placeholder:!1}}function cr(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 Ns(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,{...cr(a.path,a.kind),...a,placeholder:!1}):(r.placeholder=!1,Object.assign(r,a))}return dr([...n.values()])}function dr(e){return e.sort((t,n)=>+(n.kind==="DIRECTORY")-+(t.kind==="DIRECTORY")||t.name.localeCompare(n.name))}function Vo(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 sc(e){return[...e.expanded?[e.path]:[],...e.children.flatMap(t=>sc(t))]}function Zh(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 ur(e){const t=Wi(e);return{...t,loading:!1,children:Wi(t.children).map(ur)}}function ey(e){return e.replaceAll("\\","/").replace(/^\.\//,"").replace(/^\/+|\/+$/g,"")}function Ds(e){const t=e.replaceAll("\\","/");if(oa(t)||t.startsWith("/")||/^[a-z]:/iu.test(t))return;const n=ey(t);if(!(n===""||n.split("/").some(a=>a==="..")))return n}function lc(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 ty(e,t){return e?/^[a-z]:[\\/]+$/iu.test(e)?e:e.split(/[\\/]/u).filter(Boolean).at(-1)??e:t}function ny(e){let t=0;const n=$(!1),a=$(!1);let r=0;function s(){const C=e.target();return C===void 0?void 0:{target:{...C},generation:r}}function i(C){const g=e.target();return C.generation===r&&g?.nodeId===C.target.nodeId&&g.workspaceId===C.target.workspaceId}async function l(C,g,R,W,w="operation"){if(!i(C))return;const D=()=>i(C),E=v.selectedPath.value;let H;try{H=await e.mutate(C.target,g,R,W,D)}catch(J){e.onMutationFailure(J,w,C.target,R);return}try{if(!D())return;if(g==="DELETE")(E===R||E?.startsWith(`${R}/`))&&e.onDeletedSelection();else if(H!==void 0){const J=g==="MOVE"&&E?.startsWith(`${R}/`)?`${H}${E.slice(R.length)}`:H;if(await v.reveal(J,D),!D())return;v.selectPath(J),await e.onRevealSelection(J,D)}return D()?H:void 0}catch(J){D()&&e.onMutationFailure(J,w,C.target,R);return}}async function d(C,g){i(C)&&await e.revealLocal(C.target,g)}const v=Qh({workspaceName:e.workspaceName,async list(C,g){const R=e.target();if(R===void 0)throw new Error("FILE_TREE_NOT_READY");return e.list({...R},C,g)}});async function u(){const C=r,g=e.target();if(g===void 0)return;const R=await v.refresh(),W=e.target();C===r&&W?.nodeId===g.nodeId&&W.workspaceId===g.workspaceId&&R?.workspace!==void 0&&e.onWorkspace(R.workspace)}function y(){const C=r;return lc(async()=>{if(C===r){a.value=!0;try{await u()}finally{C===r&&(a.value=!1)}}})}let k=y();function T(){r+=1,a.value=!1,k=y()}function p(){T(),v.reset()}function m(C){T(),v.restore(C),v.setRootName(e.workspaceName())}function S(){t+=1,n.value=!1}function N(C){const g=e.target();return C.generation===t&&g?.nodeId===C.target.nodeId&&g.workspaceId===C.target.workspaceId}async function I(C,g){const R=e.target();if(R===void 0||C.length===0)return;const W={target:{...R},generation:++t},w=[...C];n.value=!0;try{const D=await e.preflight(W.target,g,w.map(E=>E.name));return N(W)?{...W,directory:g,files:w,candidates:D}:void 0}catch(D){N(W)&&e.onFailure(D);return}finally{N(W)&&(n.value=!1)}}function b(C,g){if(!N(C))return;const R=C.files.flatMap((W,w)=>{const D=C.candidates[w],E=g[w]===!0;return D?.status==="READY"||D?.status==="EXISTS_FILE"&&E?[{file:W,directory:C.directory,overwrite:E}]:[]});return S(),R.length>0&&e.queue(R),C.files.length-R.length}return{tree:v,captureTarget:s,isCurrentTarget:i,mutate:l,revealLocal:d,refreshing:dt(a),refresh:u,requestRefresh:()=>k.request(),resetTree:p,invalidateTree:T,restoreTree:m,preflight:I,submit:b,invalidate:S,isCurrentPreflight:N,preparing:dt(n)}}function Pr(e,t,n,a){if(t===void 0)return typeof n=="string"&&(e!==""||n!==a)?e:void 0}function ay(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",...Pr(e.repositoryPath,e.worktreePath,a,r)===void 0?{}:{gitFile:!0},...n,path:e.path,repositoryPath:e.repositoryPath,worktreePath:e.worktreePath??"",paths:s}}function oy(e,t,n){const a=Pr(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 ry(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 iy(e,t){return e.find(n=>n.diffAvailable&&vn(n)===t)}function sy(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 ly(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 cc(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 d=typeof s.repositoryName=="string"&&s.repositoryName.length>0?s.repositoryName:s.repositoryPath,v=pl.safeParse(s.error),u=af.safeParse(s.tracking);return[{repositoryPath:s.repositoryPath,repositoryName:d,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,...u.success&&s.status!=="UNAVAILABLE"?{tracking:u.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,...v.success?{error:v.data}:{},...s.changesTruncated===!0?{changesTruncated:!0}:{},changes:s.status==="UNAVAILABLE"?[]:ly(s,s.repositoryPath,d,i,l)}]}),a=n.find(r=>r.source==="ROOT");return a===void 0?n:[a,...n.filter(r=>r!==a)]}function cy(e){return cc(e).flatMap(t=>t.changes)}function dy(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 uy(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 vy(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 fy(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 dc(e){return{ADDED:"A",MODIFIED:"M",DELETED:"D",RENAMED:"R",COPIED:"C",TYPE_CHANGED:"T"}[e]??"?"}function vr(e){return e.split("/").at(-1)??e}function Ps(e){const t=e.lastIndexOf("/");return t>0?e.slice(0,t):""}const py=3e4;function gy(e){const t=bt(),n=$(!1),a=$(!1),r=bt();let s=!1;const i=$(!1),l=$(!1);let d=!1;const v=new Map,u=$(),y=$(""),k=$([]),T=bt([]),p=bt([]),m=$(null),S=$(!1),N=$(),I=bt(),b=bt({}),C=$([]),g=$([]),R=bt({}),W=bt({repositoryPath:"",refs:[]});let w,D,E=0,H=0,J=-1,Y;const q=new Map,Q=_(()=>cy(t.value)),V=_(()=>cc(t.value)),U=_(()=>uy(t.value)?[]:vy(t.value)),A=_(()=>fy(t.value)),h=_(()=>{const Ie=t.value?.errors;return Array.isArray(Ie)?Ie.flatMap(Ke=>{const Ye=pl.safeParse(Ke);return Ye.success?[Ye.data]:[]}):[]});function F(Ie,Ke){const Ye=e.target();return Ke===E&&Ye?.nodeId===Ie.nodeId&&Ye.workspaceId===Ie.workspaceId}function K(Ie,Ke,Ye={},at){const Ze=new URLSearchParams({nodeId:Ie.nodeId,...Ye});at?.repositoryPath&&Ze.set("repositoryPath",at.repositoryPath);for(const Te of at?.refs??[])Ze.append("refs",Te);return`/api/workspaces/${encodeURIComponent(Ie.workspaceId)}${Ke}?${Ze}`}function ve(Ie,Ke){a.value=!1,r.value=void 0;const Ye=Dr(Ie?.workspace);if(Ye!==void 0&&e.onWorkspace(Ye),Ye?.kind==="DIRECTORY"){he(!0);return}t.value=Ie;const at=Hl(Ie);at!==void 0&&e.onBranch(Ke.workspaceId,at)}function X(Ie){return lc(async()=>{const Ke=e.target();if(Ke===void 0||Ie!==E||!e.gitEnabled())return;const Ye=d;d=!1,n.value=!0;const at=J;try{const Ze=await e.http.request(K(Ke,"/changes"));F(Ke,Ie)&&at===J&&ve(Ze,Ke)}catch(Ze){F(Ke,Ie)&&at===J&&(a.value=!0,r.value=Ze,s=Ye,e.onFailure(Ze,"CHANGES"))}finally{F(Ke,Ie)&&(n.value=!1)}Ye&&F(Ke,Ie)&&e.gitEnabled()&&ae(Ke,Ie)})}let oe=X(E);function ge(Ie=e.target()){return Ie?.nodeId===Y?.nodeId&&Ie?.workspaceId===Y?.workspaceId}async function le(Ie,Ke){try{const Ye=await e.http.request(K(Ie,"/git/fetch"),{method:"POST",body:JSON.stringify({nodeId:Ie.nodeId,...Ke===void 0?{}:{repositoryPath:Ke}})});return{fetchFailed:Ye.fetchFailed!==!1,updated:Ye.updated!==!1}}catch{return{fetchFailed:!0,updated:!0}}}function ae(Ie,Ke){const Ye=JSON.stringify([Ie.nodeId,Ie.workspaceId]);let at=v.get(Ye);if(at?.pending===void 0){d=!1,at={startedAt:performance.now(),failed:!1},v.set(Ye,at);const Ze=at;Ze.pending=le(Ie).then(Te=>(Ze.failed=Te.fetchFailed,delete Ze.pending,Te))}at.generation!==Ke&&(at.generation=Ke,at.pending.then(Ze=>{if(!(!F(Ie,Ke)||!e.gitEnabled())&&(i.value=Ze.fetchFailed,Ze.updated))return P()}))}function P(Ie=!1){ge()||he();const Ke=e.target();if(Ie&&Ke!==void 0&&e.gitEnabled()){const Ye=v.get(JSON.stringify([Ke.nodeId,Ke.workspaceId]));Ye?.pending!==void 0?(ae(Ke,E),Ie=!1):Ye!==void 0&&performance.now()-Ye.startedAt<py&&(i.value=Ye.failed,Ie=!1)}return d||=Ie,oe.request()}function z(Ie,Ke){const Ye=e.target();return ge(Ye)||he(),Ye===void 0||(Ke===void 0?J>=0:!Number.isInteger(Ke)||Ke<=J)?!1:(J=Ke??0,ve(Ie,Ye),!0)}function ce(){b.value={},C.value=[],g.value=[],R.value={},q.clear()}function te(){H+=1,S.value=!1,C.value=[],q.clear()}async function x(Ie=!1,Ke=!1){const Ye=e.target();if(Ye===void 0||!e.historyEnabled()||!Ie&&S.value)return;const at=E,Ze=Ie?++H:H,Te=Ie?{repositoryPath:y.value,refs:[...k.value]}:{...W.value,refs:[...W.value.refs]},Ee=()=>F(Ye,at)&&Ze===H&&e.historyEnabled(),_e=Ie?null:m.value;S.value=!0;try{Ke&&D?.repositoryPath!==Te.repositoryPath&&(D={repositoryPath:Te.repositoryPath,promise:le(Ye,Te.repositoryPath).then(He=>He.fetchFailed)});const ie=D?.repositoryPath===Te.repositoryPath?D:void 0;if(ie!==void 0){const He=await ie.promise;if(D===ie&&(D=void 0),!Ee())return;l.value=He,w=void 0}let O;if(Ie&&w!==Te.repositoryPath){const He=await e.http.request(K(Ye,"/git/refs",{},Te));if(!Ee())return;if(!Array.isArray(He.refs))throw new Error("NODE_RESPONSE_INVALID");O=He.refs.filter(my),T.value=O,w=Te.repositoryPath;const fe=new Set(O.map(Ce=>Ce.name));Te.refs=Te.refs.filter(Ce=>fe.has(Ce)),k.value=[...Te.refs]}const G=await e.http.request(K(Ye,"/git/history",{limit:"50",..._e===null?{}:{cursor:_e}},Te));if(!Ee())return;if(!Array.isArray(G.commits)||!G.commits.every(Os))throw new Error("NODE_RESPONSE_INVALID");const pe=Ie?[]:p.value,xe=new Set(pe.map(He=>He.hash));p.value=[...pe,...G.commits.filter(He=>xe.has(He.hash)?!1:(xe.add(He.hash),!0))],m.value=typeof G.nextCursor=="string"?G.nextCursor:null,N.value=void 0,I.value=void 0,Ie&&(W.value=Te,ce())}catch(ie){Ee()&&(N.value={resetPage:Ie,fetch:Ke},I.value=ie,e.onFailure(ie,"HISTORY"))}finally{Ee()&&(S.value=!1)}}function ee(Ie,Ke){const Ye=Ie!==y.value;return y.value=Ie,k.value=[...Ke],Ye&&(l.value=!1),x(!0,Ye)}async function se(){ge()||he();const Ie=e.target(),Ke=E,Ye=H;if(Ie===void 0||!e.historyEnabled()||(t.value===void 0&&await P(),!F(Ie,Ke)||Ye!==H||!e.historyEnabled()))return;const at=V.value.filter(Ze=>Ze.source!=="WORKTREE");at.some(Ze=>Ze.repositoryPath===y.value)||(y.value=at[0]?.repositoryPath??""),w=void 0,await x(!0,!0)}function Se(Ie){const Ke=e.target(),Ye=E;if(Ke===void 0||!e.historyEnabled())return Promise.resolve(!1);if(b.value[Ie.hash]!==void 0)return Promise.resolve(!0);const at=q.get(Ie.hash);if(at?.promise!==void 0)return at.promise;const Ze={};q.set(Ie.hash,Ze);const Te=W.value,Ee={...Te,refs:[...Te.refs]},_e=()=>F(Ke,Ye)&&q.get(Ie.hash)===Ze&&e.historyEnabled()&&Te===W.value;C.value=[...C.value,Ie.hash];const ie=(async()=>{try{if(!_e())return!1;const O=await e.http.request(K(Ke,`/git/commits/${encodeURIComponent(Ie.hash)}/files`,{},Ee));if(!_e())return!1;if(!Array.isArray(O.files)||!O.files.every(hy))throw new Error("NODE_RESPONSE_INVALID");b.value={...b.value,[Ie.hash]:O.files},g.value=g.value.filter(xe=>xe!==Ie.hash);const{[Ie.hash]:G,...pe}=R.value;return R.value=pe,!0}catch(O){return _e()&&(g.value.includes(Ie.hash)||(g.value=[...g.value,Ie.hash]),R.value={...R.value,[Ie.hash]:O},e.onFailure(O,"FILES")),!1}finally{_e()&&(C.value=C.value.filter(O=>O!==Ie.hash),q.delete(Ie.hash))}})();return Ze.promise=ie,ie}async function Fe(Ie,Ke){const Ye={nodeId:Ie.nodeId,workspaceId:Ie.workspaceId};let at;if(Ie.kind==="HISTORY_DIFF"&&Ie.commit!==void 0)at=K(Ye,`/git/commits/${encodeURIComponent(Ie.commit)}/diff`,{path:Ie.path,...Ie.previousPath===void 0?{}:{previousPath:Ie.previousPath}},{repositoryPath:Ie.repositoryPath,refs:Ie.refs??[]});else if(Ie.kind==="WORKTREE_DIFF")at=K(Ye,"/changes/diff",{path:Ie.path,...Ie.repositoryPath===""?{}:{repositoryPath:Ie.repositoryPath},...Ie.worktreePath===""?{}:{worktreePath:Ie.worktreePath}});else throw new Error("NODE_RESPONSE_INVALID");const Ze=await e.http.request(at,Ke===void 0?{}:{signal:Ke});if(typeof Ze!="object"||Ze===null||!("diff"in Ze))throw new Error("NODE_RESPONSE_INVALID");return Ze.diff}async function We(Ie,Ke=e.target()){const Ye=E;if(Ke===void 0||!e.gitEnabled()||!F(Ke,Ye)||u.value!==void 0)return!1;u.value=fr(Ie);try{return await e.http.request(K(Ke,"/changes/restore"),{method:"POST",body:JSON.stringify({nodeId:Ke.nodeId,path:Ie.path,state:Ie.state,...Ie.repositoryPath===""?{}:{repositoryPath:Ie.repositoryPath},...Ie.worktreePath===void 0?{}:{worktreePath:Ie.worktreePath}})}),F(Ke,Ye)&&await P(),!0}catch(at){return e.onFailure(at,"RESTORE"),!1}finally{F(Ke,Ye)&&(u.value=void 0)}}function be(){return{changes:t.value,historyRepositoryPath:y.value,selectedHistoryRefs:[...k.value],historyCommits:[...p.value],historyNextCursor:m.value,historySource:{...W.value,refs:[...W.value.refs]}}}function he(Ie=!1){E+=1,H+=1,(!Ie||!ge())&&(J=-1);const Ke=e.target();Y=Ke===void 0?void 0:{...Ke},oe=X(E),t.value=void 0,n.value=!1,a.value=!1,r.value=void 0,s=!1,d=!1,i.value=!1,l.value=!1,u.value=void 0,y.value="",k.value=[],T.value=[],w=void 0,p.value=[],D=void 0,m.value=null,S.value=!1,N.value=void 0,I.value=void 0,W.value={repositoryPath:"",refs:[]},ce()}function Ue(Ie){const Ke=t.value,Ye=ge()&&J>=0;he(!0),!(e.target()===void 0||!e.gitEnabled())&&(t.value=Ye?Ke:Ie.changes,y.value=typeof Ie.historyRepositoryPath=="string"?Ie.historyRepositoryPath:"",k.value=Array.isArray(Ie.selectedHistoryRefs)?Ie.selectedHistoryRefs.filter(at=>typeof at=="string"):[],p.value=Array.isArray(Ie.historyCommits)?Ie.historyCommits.filter(Os):[],m.value=typeof Ie.historyNextCursor=="string"?Ie.historyNextCursor:null,W.value=Ie.historySource??{repositoryPath:y.value,refs:[...k.value]})}function Qe(){return t.value?.repositoryRoot}function rt(Ie){const Ke=e.target();return Ke===void 0?void 0:ay(Ie,Q.value.filter(Ye=>Ye.diffAvailable),Ke,Qe(),e.workspacePath?.())}function ne(Ie){return oy(Ie,Qe(),e.workspacePath?.())}function me(Ie,Ke){const Ye=e.target();return Ye===void 0?void 0:ry(Ye,Ie,Ke,W.value)}function Ne(Ie,Ke){return Pr(Ie,Ke,Qe(),e.workspacePath?.())}async function Ve(Ie){if(!e.gitEnabled())return;await P();const Ke=iy(Q.value,Ie);return Ke===void 0?void 0:rt(Ke)}function Je(Ie,Ke){const Ye=sy(Q.value,Ie,Ke);return Ye===void 0?void 0:rt(Ye)}return{changes:dt(t),changesRefreshing:dt(n),changesError:dt(a),changesFailureCause:dt(r),changesFetchFailed:dt(i),historyFetchFailed:dt(l),restoringPath:dt(u),visibleChanges:Q,changeIntent:rt,changeLocation:ne,historyIntent:me,resolveRepositoryPath:Ne,comparison:Ve,adjacentDiff:Je,repositories:V,worktrees:U,worktreesTruncated:A,discoveryErrors:h,historyRepositoryPath:dt(y),selectedHistoryRefs:dt(k),historyRefs:dt(T),historyCommits:dt(p),historyNextCursor:dt(m),historyLoading:dt(S),historyError:dt(N),historyFailureCause:dt(I),historyFiles:dt(b),historyFilesLoading:dt(C),historyFilesErrors:dt(g),historyFilesFailureCauses:dt(R),historySource:dt(W),loadChanges:P,retryChanges:()=>P(s),applyWatch:z,loadHistory:x,selectHistory:ee,openHistory:se,cancelHistoryPending:te,loadHistoryFiles:Se,loadDiff:Fe,restoreChange:We,snapshot:be,restore:Ue,reset:he}}function fr(e){return`${e.repositoryPath}:${e.worktreePath??""}:${e.state}:${e.path}`}function my(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 Os(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 hy(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 Ls(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 yy(e){const t=bt([]),n=$(!1),a=$(""),r=$(!1),s=$(!1),i=bt();let l,d=0;async function v(T,p=!1){if(T.query==="")return;const m=++d,{nodeId:S,workspaceId:N,query:I,useRegex:b}=T;s.value=!0,p||(i.value=void 0);try{const C=new URLSearchParams({nodeId:S,q:I});b&&C.set("regex","true");const g=await e.http.request(`/api/workspaces/${encodeURIComponent(N)}/content/search?${C}`);if(m!==d)return;if(!Ls(g?.search))throw new Error("NODE_RESPONSE_INVALID");t.value=[...g.search.matches],n.value=g.search.truncated,a.value=I,r.value=b,i.value=void 0,l=void 0}catch(C){if(m!==d)return;i.value=C,l={nodeId:S,workspaceId:N,query:I,useRegex:b},e.onFailure(C)}finally{m===d&&(s.value=!1)}}function u(){d+=1,s.value=!1}function y(){u(),t.value=[],n.value=!1,a.value="",r.value=!1,i.value=void 0,l=void 0}function k(T){y(),t.value=Array.isArray(T.contentMatches)?T.contentMatches.filter(p=>Ls({matches:[p],truncated:!1})):[],n.value=T.contentSearchTruncated===!0,a.value=typeof T.contentAppliedQuery=="string"?T.contentAppliedQuery:"",r.value=T.contentAppliedUseRegex===!0}return{matches:dt(t),truncated:dt(n),appliedQuery:dt(a),appliedUseRegex:dt(r),loading:dt(s),error:dt(i),search:v,cancelPending:u,snapshot:()=>({contentAppliedQuery:a.value,contentAppliedUseRegex:r.value,contentMatches:[...t.value],contentSearchTruncated:n.value}),retry:()=>l===void 0||s.value?Promise.resolve():v(l,!0),restore:k,reset:y}}function wy(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 ky(e){const t=bt(),n=_(()=>{const le=e.workspace();return ty(le?.path,le===void 0?"":Jn(le))}),a=(le,ae)=>e.notice(c("generated.workspaceInspector.unableToLoad",{value0:ae,value1:e.errorMessage(le)}),"error",le),r=Yh({http:e.http,onWritten:async(le,ae)=>{ae?.()!==!1&&(await i.refresh(),ae?.()!==!1&&e.isGit()&&await s.loadChanges())}}),s=gy({http:e.http,target:()=>e.ready()?e.target.value:void 0,gitEnabled:e.isGit,workspacePath:e.workspacePath,historyEnabled:()=>e.isGit()&&e.historySupported(),onWorkspace:le=>e.updateWorkspace(e.target.value?.nodeId??"",le),onBranch:e.updateBranch,onFailure:(le,ae)=>{ae==="RESTORE"&&a(le,c("generated.workspaceInspector.revertingChanges"))}}),i=ny({target:()=>e.ready()?e.target.value:void 0,workspaceName:()=>n.value,list:r.list,onWorkspace:le=>e.updateWorkspace(e.target.value?.nodeId??"",le),onDeletedSelection:()=>e.workbench.invalidateDeletedSelection(),onRevealSelection:async(le,ae)=>{await t.value?.reveal(le,ae)},onMutationFailure:(le,ae,P,z)=>a(le,`${c(ae==="move"?"generated.workspaceInspector.movingFile":"generated.workspaceInspector.fileOperation")} (${P.nodeId}/${P.workspaceId}: ${z})`),mutate:r.mutate,revealLocal:r.reveal,preflight:r.preflight,queue:e.queueUploads,onFailure:le=>a(le,c("generated.workspaceInspector.uploadPreflight"))}),l=yy({http:e.http,onFailure:le=>{yt(le)==="CAPABILITY_UNAVAILABLE"&&a(le,c("generated.workspaceInspector.contentSearch"))}}),d=$(0),v=$(0),u=$(),y=bt();let k=-1,T;function p(){const le=u.value,ae=e.target.value;if(le===void 0||ae===void 0||le.nodeId!==ae.nodeId||le.workspaceId!==ae.workspaceId)return;const P=le.filesWatchRevision;if(rc(le.files)&&(P===void 0?k<0:Number.isInteger(P)&&P>k)){i.tree.applyRootPage(le.files.files);const z=Dr(le.files.workspace);z!==void 0&&e.updateWorkspace(ae.nodeId,z),k=P===void 0||!Number.isInteger(P)?0:P}le.changes!==void 0&&s.applyWatch(le.changes,le.changesWatchRevision)}const m=Ge(u,p);let S=[];function N(){if(S.length>0)return;const le=_(()=>e.visible()&&e.ready()&&e.activeTool()==="files"),ae=_(()=>e.visible()&&e.ready()&&e.searchReady()&&e.activeTool()==="search"),P=_(()=>e.visible()&&e.ready()&&e.isGit()&&e.historySupported()&&e.activeTool()==="history"),z=()=>{!e.visible()||!e.ready()||(e.activeTool()==="changes"?s.loadChanges(!0):P.value&&s.openHistory())};S=[Ge([le,()=>e.target.value?.nodeId,()=>e.target.value?.workspaceId],([ce,te,x],[ee,se,Se])=>{ee&&!ce&&te===se&&x===Se&&i.invalidate(),ce&&(!ee||te!==se||x!==Se)&&i.requestRefresh()},{flush:"sync"}),Ge(d,()=>{le.value&&i.requestRefresh()}),Ge(ae,(ce,te)=>{te&&!ce&&l.cancelPending()},{flush:"sync"}),Ge(P,(ce,te)=>{te&&!ce&&s.cancelHistoryPending()},{flush:"sync"}),Ge([e.visible,e.ready,()=>e.target.value?.nodeId,()=>e.target.value?.workspaceId,e.isGit,e.historySupported,e.activeTool],z,{flush:"post"}),Ge(v,()=>{e.visible()&&e.activeTool()==="changes"&&s.loadChanges()})],z(),le.value&&i.requestRefresh()}function I(){S.forEach(le=>le()),S=[]}function b(le,ae,P,z){u.value=wy(u.value,le,ae,P,z)}function C(){T=void 0,k=-1}function g(){if(T===void 0||!e.ready()||!e.isGit())return;const le=T;T=void 0,p(),s.restore(le)}function R(le){le===void 0?i.resetTree():i.restoreTree(le),i.tree.setRootName(n.value),k=-1,p()}function W(le){T=le,le!==void 0&&g()}function w(){i.requestRefresh(),e.isGit()&&s.loadChanges()}function D(){C(),i.invalidate(),i.resetTree(),s.reset(),l.reset(),y.value?.restore({})}function E(le){const ae=y.value;if(ae===le)return;const P=e.target.value,z=e.cache();ae!==void 0&&P!==void 0&&z.isActive(P.nodeId,P.workspaceId)&&z.updateSearch(P.nodeId,P.workspaceId,{...l.snapshot(),...ae.snapshot()}),y.value=le??void 0,le!==null&&P!==void 0&&le.restore(z.view(P.nodeId,P.workspaceId).search??{})}function H(le){return{...l.snapshot(),...y.value?.snapshot()??(le===void 0?{}:{...le.contentQuery===void 0?{}:{contentQuery:le.contentQuery},...le.contentUseRegex===void 0?{}:{contentUseRegex:le.contentUseRegex}})}}function J(le){l.restore(le??{}),y.value?.restore(le??{})}function Y(){y.value?.focus()}function q(){i.invalidate(),i.invalidateTree()}const Q=Ge(n,le=>i.tree.setRootName(le)),V=Ge(()=>[e.target.value?.nodeId,e.target.value?.workspaceId],([le,ae],[P,z])=>{le===P&&ae===z||D()},{flush:"sync"}),U=Ge([e.ready,e.workspaceKind],([le,ae],[P,z])=>{z==="GIT_WORKSPACE"&&ae!==void 0&&ae!=="GIT_WORKSPACE"&&(C(),s.reset(!0)),P&&!le&&q(),le&&(p(),g())},{flush:"sync"});function A(){I(),m(),Q(),V(),U(),s.reset(),i.invalidate(),i.resetTree(),l.reset()}function h(le){le==="changes"?s.loadChanges():i.requestRefresh()}async function F(le,ae=()=>!0){const P=i.captureTarget(),z=()=>P!==void 0&&i.isCurrentTarget(P)&&ae();z()&&(await i.tree.reveal(le,z),z()&&(i.tree.selectPath(le),await t.value?.reveal(le,z)))}function K(le,ae=!1){const P=e.target.value;if(!e.ready()||P===void 0)return;const z=le.diffAvailable?s.changeIntent(le):void 0,ce=s.changeLocation(le);e.workbench.openToolIntent({...P,...ce,...z===void 0?{}:{tab:z}},ae)}function ve(le,ae,P=!1){const z=e.target.value;if(!e.ready()||z===void 0)return;const ce=s.historyIntent(le,ae);ce!==void 0&&e.workbench.openToolIntent({...z,path:ce.path,tab:ce},P)}function X(le,ae){return le.kind==="TOOL_CHANGE_DIFF"?nc(le,P=>e.http.request(P),ae):s.loadDiff(le,ae)}function oe(le){le==="files"?d.value+=1:v.value+=1}function ge(le,ae,P){e.target.value?.nodeId!==le||e.target.value.workspaceId!==ae||(P==="files"||P==="changes")&&oe(P)}return{invalidateWorkspace:ge,files:i,git:s,search:l,reportFailure:a,revealFileTree:F,loadDiff:X,setFilesPanel:le=>{t.value=le??void 0},mountSurface:N,unmountSurface:I,acceptWatch:b,applyWatch:p,resetTarget:C,restorePendingGit:g,restoreFiles:R,restoreGit:W,refreshAfterWrite:w,invalidate:oe,activateTarget:D,suspendFiles:q,dispose:A,refreshVisible:h,openGitChange:K,openHistoryDiff:ve,setSearchPanel:E,searchSnapshot:H,restoreSearch:J,focusSearch:Y}}function by(e){function t(){return{target:bt(),fileContent:bt(),contentUrl:$(),loading:$(!1),error:bt(),downloading:$(!1),readController:void 0,operation:0}}const n=new Map;function a(p){let m=n.get(p);return m===void 0&&(m=t(),n.set(p,m)),m}function r(p){const m=a(p);return{target:dt(m.target),fileContent:dt(m.fileContent),contentUrl:dt(m.contentUrl),loading:dt(m.loading),error:dt(m.error),downloading:dt(m.downloading)}}function s(p){p.contentUrl.value?.startsWith("blob:")&&Oo(p.contentUrl.value),p.contentUrl.value=void 0}function i(p){const m=n.get(p);m!==void 0&&(m.operation+=1,m.readController?.abort(),m.loading.value=!1,m.downloading.value=!1,s(m),n.delete(p))}function l(){for(const p of n.keys())i(p)}async function d(p,m,S={}){const N=a(p);N.readController?.abort();const I=new AbortController;N.readController=I;const b=++N.operation,C=()=>n.get(p)===N&&N.operation===b,g={...m,...m.history===void 0?{}:{history:{...m.history,refs:[...m.history.refs]}}};m=g;const R={...e.access(m)};N.target.value=g,N.downloading.value=!1,s(N);const W=S.textPreview??Va(m.path);N.fileContent.value={path:m.path,...S.size===void 0?{}:{size:S.size},encoding:W?"utf-8":"base64",content:"",truncated:!1},N.loading.value=!0,N.error.value=void 0;try{if(g.history!==void 0){const J=g.history,Y=R.contentUrl(g);if(W){const V=S.serverOnly?void 0:await R.directGitFileReadRange?.(J.commit,m.path,J.repositoryPath,J.refs,0,_i,void 0,I.signal);if(!C())return;let U,A;if(V!==void 0)U=V.bytes,A=V.size;else{const F=await R.fetchFile(g,{signal:I.signal,headers:{range:`bytes=0-${_i-1}`}});if(!F.ok)throw xa(await F.json().catch(()=>({})),F.status);U=new Uint8Array(await F.arrayBuffer());const K=F.headers.get("content-range")?.match(/\/(\d+)$/u)?.[1];A=K===void 0?U.byteLength:Number(K)}if(!Number.isSafeInteger(A)||A<U.byteLength)throw new Error("NODE_RESPONSE_INVALID");const h=nr(U,m.path,U.byteLength===A);return C()&&(N.fileContent.value={path:m.path,size:A,...h,truncated:h.encoding==="utf-8"&&U.byteLength<A}),C()?N.fileContent.value:void 0}if(Fp(m.path)==="unsupported")return N.fileContent.value;const q=await v(g,R,I.signal,S.serverOnly).catch(()=>{});if(!C())return;N.fileContent.value={path:m.path,...q===void 0?{}:{size:q},encoding:"base64",content:"",truncated:!1};const Q=S.serverOnly?void 0:await ts(m.path,async()=>R.directGitFileObjectUrl?.(J.commit,m.path,J.repositoryPath,J.refs,I.signal));if(!C()){Q?.startsWith("blob:")&&Oo(Q);return}return N.contentUrl.value=Q??Y,N.fileContent.value}if(Er(m.path)){const J=S.serverOnly?void 0:await ts(m.path,async()=>R.directFileObjectUrl?.(m.path,m.worktreePath,m.repositoryPath,I.signal));if(!C()){J?.startsWith("blob:")&&Oo(J);return}return N.contentUrl.value=J??R.contentUrl(g),N.fileContent.value}let w=!1,D;async function E(J,Y){const q=Y?await R.directFileReadRange?.(m.path,0,J,m.worktreePath,D,m.repositoryPath,I.signal):void 0;if(I.signal.throwIfAborted(),q!==void 0){w=!0,D={revision:q.revision,size:q.size};const V=await Kp(q);return{...nr(q.bytes,m.path,q.nextOffset===null),size:q.size,nextOffset:q.nextOffset,...V===void 0?{}:{revision:V}}}if(Y&&w)throw new Error("DIRECT_FILE_READ_FAILED");const Q=await R.read(m,J,I.signal);if(!Ws(Q))throw new Error("NODE_RESPONSE_INVALID");return jp(Q.file,m.path)}let H;try{H=await sr(J=>E(J,!S.serverOnly),C)}catch(J){if(!w||S.serverOnly||!C())throw J;D=void 0,H=await sr(Y=>E(Y,!1),C)}return C()?(N.fileContent.value={path:m.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}},N.fileContent.value):void 0}catch(w){if(!C())return;yt(w)==="FILE_TOO_LARGE"?N.fileContent.value={path:m.path,...S.size===void 0?{}:{size:S.size},encoding:"base64",content:"",truncated:!1}:N.error.value=w}finally{C()&&(N.loading.value=!1,N.readController=void 0)}}async function v(p,m,S,N=!1){const I=p.history,b=N?void 0:await m.directGitFileReadRange?.(I.commit,p.path,I.repositoryPath,I.refs,0,1,void 0,S);if(b!==void 0)return b.size;S.throwIfAborted();const C=await m.fetchFile(p,{signal:S,headers:{range:"bytes=0-0"}});if(!C.ok)throw xa(await C.json().catch(()=>({})),C.status);const g=C.headers.get("content-range")?.match(/\/(\d+)$/u)?.[1],R=Number(g??C.headers.get("content-length"));if(!Number.isSafeInteger(R)||R<0)throw new Error("NODE_RESPONSE_INVALID");return R}async function u(p,m,S){const N=n.get(p),I=N?.target.value,b=N?.fileContent.value;if(N===void 0||N.loading.value||I===void 0||b===void 0||b.encoding!=="utf-8"||b.previewEncoding!==void 0||b.truncated||b.revision===void 0||I.history!==void 0||I.repositoryPath!==void 0||I.worktreePath!==void 0||oa(I.path))throw new Error("FILE_WRITE_INVALID");const C=N.operation,g=await e.access(I).write(I.path,m,S),R=g.file?.revision,W=g.file?.size;if(typeof R!="string"||typeof W!="number"||!Number.isSafeInteger(W)||W<0)throw new Error("NODE_RESPONSE_INVALID");n.get(p)===N&&N.operation===C&&N.fileContent.value===b&&(N.fileContent.value={...b,content:m,revision:R,size:W});try{Promise.resolve(e.onWritten(I)).catch(()=>{})}catch{}return R}async function y(p){const m=await e.access(p).read(p,1);if(!Ws(m))throw new Error("NODE_RESPONSE_INVALID")}async function k(p){const m=n.get(p),S=m?.target.value;if(m===void 0||S===void 0)return;const N=e.access(S),I=m.contentUrl.value,b=m.operation;m.downloading.value=!0;try{if(I?.startsWith("blob:")){es(I,S.path.split("/").at(-1)??"download");return}await T(S,N)}finally{n.get(p)===m&&b===m.operation&&(m.downloading.value=!1)}}async function T(p,m=e.access(p)){p={...p,...p.history===void 0?{}:{history:{...p.history,refs:[...p.history.refs]}}},m={...m};const S=p.history,N=S===void 0?await m.directFileDownload?.(p.path,p.worktreePath,p.repositoryPath):await m.directGitFileDownload?.(S.commit,p.path,S.repositoryPath,S.refs);N!==void 0&&N!=="UNAVAILABLE"||es(m.contentUrl(p,!0),p.path.split("/").at(-1)??"download")}return{page:r,open:d,save:u,checkReadable:y,download:k,downloadTarget:T,close:i,reset:l}}function Ws(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 Iy(){return{navigationLoading:$(!1),navigationTargets:bt([]),navigationNoDefinition:$(!1),navigationNotice:$()}}function qo(e){if(e.state==="UNAVAILABLE")return"UNAVAILABLE";if(e.state==="FAILED"&&e.failureCode==="SYMBOL_INDEX_LIMIT_EXCEEDED")return"LIMITED"}function Sy(e){const t=new Map;let n=0,a,r;function s(m){let S=t.get(m);return S===void 0&&(S=Iy(),t.set(m,S)),{navigationLoading:dt(S.navigationLoading),navigationTargets:dt(S.navigationTargets),navigationNoDefinition:dt(S.navigationNoDefinition),navigationNotice:dt(S.navigationNotice)}}function i(){n+=1,r?.();const m=a===void 0?void 0:t.get(a);m!==void 0&&(m.navigationLoading.value=!1),a=void 0}function l(m){i();const S=m===void 0?void 0:t.get(m);S!==void 0&&(S.navigationLoading.value=!1,S.navigationTargets.value=[],S.navigationNoDefinition.value=!1,S.navigationNotice.value=void 0)}function d(m){l(m),t.delete(m)}function v(){i(),t.clear()}function u(){return new Promise(m=>{const S=setTimeout(N,1e3);function N(){clearTimeout(S),r=void 0,m()}r=N})}function y(m){return`/api/workspaces/${encodeURIComponent(m.workspaceId)}/symbols`}async function k(m,S){for(let N=0;N<120&&S();N+=1){const I=await m();if(!S())return;const b=rf.safeParse(I?.definition);if(!b.success)throw new Error("NODE_RESPONSE_INVALID");if(b.data.state==="BUILDING"){await u();continue}if(b.data.state==="FAILED"&&qo(b.data)===void 0)throw new Error(b.data.failureCode??"SYMBOL_INDEX_BUILD_FAILED");return b.data}if(S())throw new Error("SYMBOL_INDEX_BUILD_FAILED")}async function T(m,S){const N={...m},I="symbol"in S?S.symbol:void 0,b="symbol"in S?null:JSON.stringify({nodeId:N.nodeId,path:N.path,reference:{...S.reference,sourceContext:S.sourceContext}});l(N.pageId);const C=t.get(N.pageId);if(C===void 0)return;a=N.pageId;const g=n,R=()=>g===n;C.navigationLoading.value=!0;const W=(w,D)=>e.http.request(`${y(N)}/definition?${new URLSearchParams({nodeId:N.nodeId,path:N.path,symbol:w,references:D})}`);try{const w=await k(I!==void 0?()=>W(I,"0"):()=>e.http.request(`${y(N)}/definition`,{method:"POST",body:b}),R);if(w===void 0||!R())return;const D=qo(w);if(D!==void 0){C.navigationNotice.value=D;return}if(I!==void 0){const E=w.targets.map(J=>({...J,source:"DEFINITION"}));C.navigationTargets.value=E,C.navigationLoading.value=E.length===0;const H=async()=>{try{const J=await k(()=>W(I,"1"),R);if(J===void 0||!R()||(C.navigationNotice.value=qo(J),C.navigationNotice.value!==void 0))return;const Y=J.targets.length===0?E:J.targets.map(Q=>({...Q,source:"DEFINITION"})),q=J.references.map(Q=>({...Q,source:"REFERENCE"}));C.navigationTargets.value=[...Y,...q],C.navigationNoDefinition.value=Y.length===0&&q.length===0}catch(J){R()&&e.onFailure(J)}};E.length===0?await H():H()}else{const E=w.paths.map(H=>({...H,source:"FILE"}));E.length===0?C.navigationNoDefinition.value=!0:E.length===1?e.onFileTarget(E[0],N.pageId):C.navigationTargets.value=E}}catch(w){R()&&e.onFailure(w)}finally{R()&&(C.navigationLoading.value=!1)}}async function p(m){try{const S=await e.http.request(`${y(m)}/prepare?${new URLSearchParams({nodeId:m.nodeId,path:m.path})}`);if(!of.safeParse(S?.preparation).success)throw new Error("NODE_RESPONSE_INVALID")}catch{}}return{page:s,navigate:T,prewarm:p,cancel:i,clear:l,release:d,reset:v}}function Cy(){let e=[],t=-1;function n(l,d){l!==void 0&&(t<0?(e=[l],t=0):e[t]=l,!(l.tabId===d.tabId&&l.line===d.line&&l.column===d.column)&&(e=[...e.slice(0,t+1),d],t+=1))}function a(l,d){const v=t+l;if(!(v<0||v>=e.length))return d!==void 0&&(e[t]=d),t=v,e[t]}function r(l){return t+l>=0&&t+l<e.length}function s(l){const d=e.slice(0,t+1).filter(v=>v.tabId!==l).length;e=e.filter(v=>v.tabId!==l),t=Math.min(e.length-1,d-1)}function i(){e=[],t=-1}return{record:n,travel:a,canTravel:r,remove:s,clear:i}}function Ty(e){const t=typeof location>"u"?void 0:Yi(location.href),n=$(t!==void 0),a=$(t!==void 0),r=$(!1),s=$(t);let i=typeof location>"u"?void 0:location.href,l=!1,d=!1;function v(T){const p=T.detail?.url;if(typeof p!="string")return;const m=Yi(p);m!==void 0&&(T.preventDefault(),n.value=!0,a.value=!0,r.value=!1,s.value=m,i=p)}async function u(){const T=s.value,p=i;if(d||T===void 0||l||!e.authenticated()||!e.hasNodes())return;l=!0,r.value=!1;let m=!1;try{if(e.nodeId()!==T.nodeId||e.workspaceId()!==T.workspaceId){if(await e.selectWorkspace({nodeId:T.nodeId,workspaceId:T.workspaceId}),d||s.value!==T)return;if(e.nodeId()!==T.nodeId||e.workspaceId()!==T.workspaceId){s.value=void 0,m=!0,r.value=!0;return}}if(!e.filesReady()){if(e.manifestLoading())return;s.value=void 0,m=!0,r.value=!0;return}if(s.value!==T)return;if(s.value=void 0,m=!0,await e.open(T),!d&&s.value===void 0&&e.nodeId()===T.nodeId&&e.workspaceId()===T.workspaceId&&p!==void 0&&typeof location<"u"&&typeof history<"u"){const S=new URL(p,location.href);S.origin===location.origin&&S.pathname===location.pathname&&(history.replaceState(history.state,"",S),e.captureRoute())}}catch{if(d)return;s.value===T?(s.value=void 0,r.value=!0):m&&s.value===void 0&&e.nodeId()===T.nodeId&&e.workspaceId()===T.workspaceId&&(r.value=!0),m=!0}finally{m&&s.value===void 0&&(a.value=!1),l=!1,!d&&s.value!==void 0&&s.value!==T&&Promise.resolve().then(u)}}typeof window<"u"&&window.addEventListener(Qi,v);const y=Ge([s,()=>e.authenticated(),e.hasNodes,e.nodeId,e.workspaceId,e.filesReady,e.manifestLoading],()=>{u()},{immediate:!0,flush:"post"});function k(){d=!0,y(),typeof window<"u"&&window.removeEventListener(Qi,v)}return Gt()!==void 0&&Zn(k),{standaloneFileMode:n,standaloneFileLoading:a,standaloneFileError:r,dispose:k}}function Ey(e){const t=bt(),n=()=>t.value??e.page(),a=tc(),r=Cy(),s=by({...e.preview,access:e.access}),i=Sy(e.navigation),l=ar(),d=ar();function v(O,G,pe,xe,He,fe){const Ce=e.externalTarget();if(Ce===void 0)return;const ke=new URLSearchParams({standaloneFile:"1",...Ce,path:O,rawContent:"1",...e.fileWriteEnabled()&&He===void 0&&fe===void 0?{write:"1"}:{},...fe===void 0?{}:{repositoryPath:fe},...He===void 0?{}:{worktreePath:He},...xe==="markdown"?{markdownPreview:"1"}:{},...xe==="html"?{htmlPreview:"1"}:{},...G===void 0?{}:{line:String(G)},...pe===void 0?{}:{column:String(pe)}});l.open(`/console?${ke}`)===void 0&&e.onPopupBlocked()}function u(O){if(O.kind!=="WORKTREE_DIFF"&&O.kind!=="HISTORY_DIFF")return;const G=e.externalTarget();if(G===void 0)return;const pe=new URLSearchParams({standaloneFile:"1",...G,fileTabKind:O.kind,path:O.path,...O.gitFile?{gitFile:"1"}:{},...O.repositoryPath===""?{}:{repositoryPath:O.repositoryPath},...O.worktreePath===""?{}:{worktreePath:O.worktreePath},...O.commit===void 0?{}:{commit:O.commit},...O.previousPath===void 0?{}:{previousPath:O.previousPath}});for(const xe of O.refs??[])pe.append("refs",xe);for(const xe of O.paths??[O.path])pe.append("paths",xe);l.open(`/console?${pe}`)===void 0&&e.onPopupBlocked()}function y(O,G){G?v(O.path,void 0,void 0,void 0,O.worktreePath,O.repositoryPath):oe(O.path,void 0,O.worktreePath,!1,void 0,O.repositoryPath)}function k(O){const G=e.externalTarget();if(G===void 0)return;const pe=new URLSearchParams({standaloneFile:"1",...G,path:O,htmlPreview:"1"});d.openNew(`/console?${pe}`)===void 0&&e.onPopupBlocked()}const T=Ge(a.activeTabId,()=>i.cancel(),{flush:"sync"}),p=bt([]),m=$(!1),S=new Map;let N=0,I=0,b=!1,C;function g(){return C=void 0,++N}function R(O){return O===N}function W(){N+=1,C=void 0}function w(O){const G=C;if(G===void 0||O!==void 0&&O!==G.tab.id)return;const pe=e.target();if(G.generation!==N||a.activeTab.value!==G.tab||pe?.nodeId!==G.tab.nodeId||pe.workspaceId!==G.tab.workspaceId){C=void 0;return}const xe=n();xe===void 0||!xe.focusPage(G.tab.id)||(C=void 0,G.line!==void 0&&xe.navigateTo(G.tab.id,G.line,G.column))}function D(O,G){O===void 0||!R(G)||a.activeTab.value!==O||(C={tab:O,generation:G},gt(()=>w(O.id)))}function E(){W(),I+=1,b=!1}function H(O){m.value=O}function J(O){return typeof O=="object"&&O!==null&&typeof O.tabIdentity=="string"&&typeof O.path=="string"&&typeof O.content=="string"&&typeof O.expectedRevision=="string"}function Y(){const O=new Set(a.tabs.value.map(pe=>pe.identity)),G=new Map([...S].filter(([pe])=>O.has(pe)));for(const pe of n()?.captureDirtyDrafts()??[])J(pe)&&O.has(pe.tabIdentity)&&G.set(pe.tabIdentity,pe);return G}function q(){if(n()?.hasPendingSave())return!1;for(const[O,G]of Y())S.set(O,G);for(const O of p.value){const G=n()?.cursorPosition(O.id);G!==void 0&&(O.targetLine.value=G.line,O.targetColumn.value=G.column)}return W(),i.cancel(),H(!0),!0}function Q(){const O=a.snapshot();return{fileTabs:{...O,tabs:O.tabs.map(G=>{const pe=p.value.find(Ce=>Ce.id===G.id),xe=n()?.cursorPosition(G.id),He=xe?.line??pe?.targetLine.value,fe=xe?.column??pe?.targetColumn.value;return{...G,...He===void 0?{}:{targetLine:He},...fe===void 0?{}:{targetColumn:fe}}})},dirtyTextDrafts:[...Y().values()],fileWindowSuspended:m.value}}function V(O){S.clear();for(const G of O)J(G)&&S.set(G.tabIdentity,G)}function U(O,G,pe){W();const xe=++I;Ue(),a.restore(O),V(G),H(pe),A(xe)}async function A(O){if(e.target()===void 0){b=!0;return}b=!1;for(const G of a.tabs.value){if(O!==I)return;if(!a.tabs.value.some(He=>He.id===G.id&&He.identity===G.identity))continue;const pe=a.activeTabId.value;let xe;if(G.kind==="WORKTREE_TEXT"||G.kind==="WORKTREE_PREVIEW")xe=oe(G.path,G.targetLine,G.worktreePath===""?void 0:G.worktreePath,!0,G.targetColumn,G.gitFile?G.repositoryPath:void 0,!1,!0);else if(G.kind==="HISTORY_TEXT"&&G.commit!==void 0){const{previousPath:He,...fe}=G;xe=X({...fe,kind:"HISTORY_DIFF",paths:[G.path]},void 0,!1)}else continue;pe!==void 0&&a.activate(pe),await xe}}function h(){b&&e.target()!==void 0&&A(I)}function F(O){const G=s.page(O);return{...G,id:O,get repositoryPath(){return G.target.value?.repositoryPath},worktreePath:_(()=>G.target.value?.worktreePath),get historySource(){return G.target.value?.history},targetLine:$(),targetColumn:$(),...i.page(O)}}function K(O){const G=p.value.find(xe=>xe.id===O);if(G!==void 0)return G;const pe=F(O);return p.value=[...p.value,pe],pe}async function ve(O,G){const pe=e.target();if(pe===void 0)return;const xe=Va(O.path),He=a.open({kind:xe?"WORKTREE_TEXT":"WORKTREE_PREVIEW",...pe,path:O.path,repositoryPath:G.repositoryPath??"",...G.repositoryPath===void 0?{}:{gitFile:!0},worktreePath:G.worktreePath??"",...G.line===void 0?{}:{targetLine:G.line},...G.column===void 0?{}:{targetColumn:G.column}}),fe=G.existingPreview??K(He.id);i.clear(fe.id),fe.targetLine.value=G.line,fe.targetColumn.value=G.column;const Ce=await s.open(fe.id,{...pe,path:O.path,...G.worktreePath===void 0?{}:{worktreePath:G.worktreePath},...G.repositoryPath===void 0?{}:{repositoryPath:G.repositoryPath}},{textPreview:xe,serverOnly:G.serverOnly}),ke=e.target();ke?.nodeId===pe.nodeId&&ke.workspaceId===pe.workspaceId&&Ce?.encoding==="utf-8"&&p.value.includes(fe)&&G.worktreePath===void 0&&G.repositoryPath===void 0&&e.prewarmEnabled()&&i.prewarm({nodeId:pe.nodeId,workspaceId:pe.workspaceId,path:O.path})}async function X(O,G,pe=!0){const xe=e.target();if(xe===void 0||O.kind!=="HISTORY_DIFF"&&O.kind!=="HISTORY_TEXT"||O.commit===void 0)return;const He=se(),fe=a.open({kind:"HISTORY_TEXT",...xe,path:O.path,repositoryPath:O.repositoryPath,worktreePath:"",commit:O.commit,refs:O.refs??[],...O.targetLine===void 0?{}:{targetLine:O.targetLine},...O.targetColumn===void 0?{}:{targetColumn:O.targetColumn}});pe&&Se(He,fe.id,O.targetLine,O.targetColumn);const Ce=K(fe.id);i.clear(Ce.id),Ce.targetLine.value=O.targetLine,Ce.targetColumn.value=O.targetColumn;const ke=typeof G=="object"&&G!==null&&G.binary===!0;await s.open(fe.id,{...xe,path:O.path,history:{commit:O.commit,repositoryPath:O.repositoryPath,refs:O.refs??[]}},{textPreview:!ke&&Va(O.path)})}function oe(O,G,pe,xe=!1,He,fe,Ce=!0,ke=!1){const Oe=Ce&&!ke?g():void 0;Ce&&H(!1);const Pe=ve({path:O,name:O.split("/").at(-1)??O},{serverOnly:!1,...G===void 0?{}:{line:G},...He===void 0?{}:{column:He},...pe===void 0?{}:{worktreePath:pe},...fe===void 0?{}:{repositoryPath:fe}});return Oe!==void 0&&D(a.activeTab.value,Oe),Pe}async function ge(O,G=!1){if(O.kind!=="WORKTREE_DIFF")return;G||g();const pe=se(),xe=O.gitFile?O.repositoryPath:e.resolveRepositoryPath(O.repositoryPath,O.worktreePath||void 0),He=xe!==void 0?O.path:O.worktreePath===""&&O.repositoryPath!==""?`${O.repositoryPath}/${O.path}`:O.path,fe=oe(He,void 0,O.worktreePath||void 0,!0,void 0,xe,!0,!0),Ce=a.activeTabId.value;Ce!==void 0&&Se(pe,Ce),await fe}async function le(O){const G=e.target();if(G===void 0||G.nodeId!==O.nodeId||G.workspaceId!==O.workspaceId)return;const pe=g();if(H(!1),Er(O.path)&&(O.kind==="WORKTREE_DIFF"||O.kind==="HISTORY_DIFF"||O.kind==="HISTORY_TEXT")){if(O.kind!=="WORKTREE_DIFF"&&!O.commit)return;const fe=O.kind==="WORKTREE_DIFF"?ge(O,!0):X(O),Ce=a.activeTab.value;D(Ce,pe),await fe;return}if(O.kind==="HISTORY_TEXT"){if(!O.commit)return;const fe=X(O);D(a.activeTab.value,pe),await fe;return}const xe=se(),He=a.open(O);Se(xe,He.id,O.targetLine,O.targetColumn),D(a.activeTab.value,pe),await gt()}async function ae(O,G,pe,xe="main"){const He=g(),fe=e.target();if(fe===void 0)return;const Ce=se(),ke=()=>{const et=e.target();return R(He)&&et?.nodeId===fe.nodeId&&et.workspaceId===fe.workspaceId};if(oa(O)||O.startsWith(".mar/temp-files/")){try{await s.checkReadable({...fe,path:O})}catch(et){ke()&&e.onOpenFailure(et,O);return}if(!ke())return}H(!1);const Oe=p.value.find(et=>et.worktreePath.value===void 0&&et.fileContent.value?.path===O);Oe!==void 0&&(a.activate(Oe.id),G!==void 0&&(Oe.targetLine.value=G),pe!==void 0&&(Oe.targetColumn.value=pe));const Pe=Oe===void 0?oe(O,G,void 0,!0,pe,void 0,!0,!0):Promise.resolve();a.activeTabId.value!==void 0&&a.setQuotePane(a.activeTabId.value,xe);const de=a.activeTab.value,Re=de?.id,Le=()=>ke()&&Re!==void 0&&a.activeTab.value===de&&a.activeTabId.value===Re;Le()&&Re!==void 0&&(Se(Ce,Re,G,pe),C={tab:de,generation:He,...Oe!==void 0&&G!==void 0?{line:G}:{},...Oe!==void 0&&pe!==void 0?{column:pe}:{}},gt(()=>{Le()&&w(Re)})),e.reveal(O,Le).catch(et=>{Le()&&e.onRevealFailure(et)}),await Pe}async function P(O,G,pe,xe="main"){const He=g(),fe=e.target();if(fe===void 0)return;const Ce=await e.comparison(O),ke=e.target();!R(He)||ke?.nodeId!==fe.nodeId||ke.workspaceId!==fe.workspaceId||(Ce!==void 0?await le({...Ce,quotePane:xe}):await ae(O,G,pe,xe))}async function z(O){return O.tab!==void 0?le(O.tab):O.worktreePath===void 0&&O.repositoryPath===void 0?ae(O.path,O.line,O.column):oe(O.path,O.line,O.worktreePath,!1,O.column,O.repositoryPath)}function ce(O,G){const pe=e.target();pe?.nodeId!==O.nodeId||pe.workspaceId!==O.workspaceId||(O.tab===void 0?y(O,G):G?u(O.tab):z(O))}const te=$(0),x=_(()=>(te.value,r.canTravel(-1))),ee=_(()=>(te.value,r.canTravel(1)));function se(){const O=a.activeTabId.value;return O===void 0?void 0:{tabId:O,...n()?.cursorPosition(O)}}function Se(O,G,pe,xe){O?.tabId===G&&pe===void 0||(r.record(O,{tabId:G,...pe===void 0?{}:{line:pe},...xe===void 0?{}:{column:xe}}),te.value+=1)}function Fe(O){const G=r.travel(O,se());if(G===void 0||!a.tabs.value.some(He=>He.id===G.tabId))return;a.activate(G.tabId);const pe=a.activeTab.value,xe=n();gt(()=>{pe===void 0||a.activeTab.value!==pe||n()!==xe||(G.line!==void 0?xe?.navigateTo(G.tabId,G.line,G.column):xe?.focusPage(G.tabId))}),te.value+=1}function We(O){r.remove(O),te.value+=1}function be(){r.clear(),te.value+=1}function he(O){const G=p.value.indexOf(O);if(G<0)return;const pe=a.tabs.value.find(He=>He.id===O.id);pe!==void 0&&S.delete(pe.identity);const xe=a.activeTabId.value===O.id;s.close(O.id),i.release(O.id),p.value=p.value.filter(He=>He!==O),a.remove(O.id),We(O.id),xe&&a.activate(p.value.at(G-1)?.id??p.value.at(G)?.id??-1)}function Ue(){be();for(const O of p.value){const G=a.tabs.value.find(pe=>pe.id===O.id);G!==void 0&&S.delete(G.identity),s.close(O.id),a.remove(O.id)}p.value=[],i.reset()}function Qe(O){for(const G of O){const pe=a.tabs.value.find(He=>He.id===G);if(pe===void 0)continue;S.delete(pe.identity);const xe=p.value.find(He=>He.id===G);xe!==void 0?he(xe):(a.remove(G),We(G))}}function rt(){E(),H(!1),S.clear(),Ue(),a.clear()}function ne(){E(),H(!1),S.clear(),Ue()}function me(){Qe(a.tabs.value.filter(O=>O.gitFile===!0||O.worktreePath!==""||O.kind==="WORKTREE_DIFF"||O.kind==="HISTORY_DIFF"||O.kind==="HISTORY_TEXT").map(O=>O.id))}function Ne(O){const G=se();if(a.activate(O),a.activeTabId.value!==O)return;const pe=n()?.cursorPosition(O);Se(G,O,pe?.line,pe?.column)}function Ve(O,G,pe){const xe=p.value.find(fe=>fe.id===O);if(xe===void 0)return;const He=se();xe.targetLine.value=G,xe.targetColumn.value=pe,n()?.navigateTo(O,G,pe),Se(He,O,G,pe)}function Je(O,G){const pe=p.value.find(xe=>xe.id===G);pe!==void 0&&(i.clear(G),pe.fileContent.value?.path===O.path?Ve(G,O.line,O.column):ae(O.path,O.line,O.column))}async function Ie(O){const G=p.value.find(fe=>fe.id===O),pe=G?.target.value;if(G===void 0||pe===void 0||G.loading.value)return;const xe=n()?.cursorPosition(O);xe!==void 0&&(G.targetLine.value=xe.line,G.targetColumn.value=xe.column),i.clear(O);const He=G.fileContent.value?.size;await s.open(O,pe,{serverOnly:!0,...He===void 0?{}:{size:He}})}async function Ke(O){const G=e.externalTarget();if(G!==void 0)try{await s.downloadTarget({...G,path:O})}catch(pe){(e.onDownloadFailure??e.onOpenFailure)(pe,O)}}function Ye(O){if(typeof O!="object"||O===null)return;const G=O;E(),G.fileTabs!==void 0&&Array.isArray(G.fileTabs.tabs)?U(G.fileTabs,G.dirtyTextDrafts??[],G.fileWindowSuspended===!0):V(G.dirtyTextDrafts??[])}function at(){ie?.dispose(),e.lifecycle!==void 0&&typeof window<"u"&&window.removeEventListener("beforeunload",Te);for(const O of Ee)O();T(),E(),s.reset(),i.reset()}function Ze(O,G){O!==void 0?(t.value=O,w()):t.value===G&&(t.value=void 0)}function Te(O){!m.value||S.size===0||e.lifecycle?.isReloadingForUpdate()||(O.preventDefault(),O.returnValue="")}const Ee=[],_e=e.lifecycle,ie=_e===void 0?void 0:Ty({..._e.bootstrap,nodeId:()=>e.externalTarget()?.nodeId,workspaceId:()=>e.externalTarget()?.workspaceId,filesReady:_e.ready,open:z});return _e!==void 0&&(Ee.push(Ge(()=>[e.externalTarget()?.nodeId,e.externalTarget()?.workspaceId],([O,G],[pe,xe])=>{O===pe&&G===xe||(t.value=void 0,rt())},{flush:"sync"})),Ee.push(Ge([_e.ready,_e.workspaceKind],([O,G],[,pe])=>{pe==="GIT_WORKSPACE"&&G!==void 0&&G!=="GIT_WORKSPACE"&&me(),O&&h()},{flush:"sync"})),typeof window<"u"&&window.addEventListener("beforeunload",Te)),{standalone:ie,setPage:Ze,tabList:a.tabs,activeTabId:a.activeTabId,activeTab:a.activeTab,activateTab:Ne,openNavigationTarget:Je,saveFile:s.save,reloadFile:Ie,downloadFile:s.download,downloadTarget:s.downloadTarget,downloadPath:Ke,navigate:i.navigate,clearNavigationResult:i.clear,restore:Ye,resumeRestoration:h,pageReady:w,frames:Mi(p),suspended:Mi(m),suspendForHtml:q,snapshot:Q,draftFor:O=>S.get(O),consumeDraft:O=>S.delete(O),hasDraft:O=>S.has(O),hasSuspendedDrafts:()=>m.value&&S.size>0,openHistoryText:X,openWorkspaceFile:oe,openWorktreeDiffText:ge,openTab:le,openFile:ae,openExternal:v,openDiffExternal:u,openLocation:y,openHtmlExternal:k,openComparison:P,openStandalone:z,openToolIntent:ce,canGoBack:x,canGoForward:ee,travel:Fe,closeTabs:Qe,reset:rt,invalidateDeletedSelection:ne,removeGitTabs:me,dispose:at}}function Ry(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 Ay(e){function t(n){const a={nodeId:n.nodeId,workspaceId:n.workspaceId};function r(I,b=!1){return Ry({...I,...a},b)}function s(I,b){const C=new URLSearchParams({nodeId:a.nodeId,path:I.path,offset:"0",limit:String(b)});return I.repositoryPath!==void 0&&C.set("repositoryPath",I.repositoryPath),I.worktreePath!==void 0&&C.set("worktreePath",I.worktreePath),`/api/workspaces/${encodeURIComponent(a.workspaceId)}/files/read?${C}`}function i(I,b,C){const g=s(I,b);return C===void 0?e.http.request(g):e.http.request(g,{signal:C})}const l={revalidate:I=>e.request(s(I,1),{cache:"no-store"}),sourceUrl:(I,b)=>{const C=r(I);return b===void 0?C:`${C}&preview=${encodeURIComponent(b)}`}};function d(I,b,C){return e.http.request(`/api/workspaces/${encodeURIComponent(a.workspaceId)}/files/write`,{method:"PUT",body:JSON.stringify({nodeId:a.nodeId,path:I,content:b,expectedRevision:C})})}function v(I,b){return(e.fetchContent??fetch)(r(I),{credentials:"same-origin",...b})}function u(I,b,C,g){if(oa(I))return;const{nodeId:R,workspaceId:W}=a,w=e.manifest(R),D=w?.nodeGeneration;if(D===void 0||!e.available(R))return;const E={kind:"WORKSPACE_FILE",workspaceId:W,path:I,...C===void 0?{}:{repositoryPath:C},...b===void 0?{}:{worktreePath:b}};return{direct:e.direct,nodeId:R,nodeGeneration:D,resource:E,metadata:()=>w?.directTransfer?.download===!0?Yp({request:e.request,nodeId:R,resource:E,...g===void 0?{}:{signal:g}}):Promise.resolve(void 0)}}function y(I,b,C,g,R){const{nodeId:W,workspaceId:w}=a,D=e.manifest(W),E=D?.nodeGeneration;if(E===void 0||D?.directTransfer?.gitCommitBlob!==!0||!e.available(W))return;const H={kind:"GIT_COMMIT_BLOB",workspaceId:w,commit:I,path:b,...C.length===0?{}:{repositoryPath:C}},J=[...g];return{direct:e.direct,nodeId:W,nodeGeneration:E,resource:H,metadata:()=>_p({request:e.request,nodeId:W,resource:H,refs:J,...R===void 0?{}:{signal:R}})}}async function k(I,b,C,g,R,W,w){if(e.manifest(a.nodeId)?.directTransfer?.range!==!0)return;const D=u(I,g,W,w);if(D!==void 0)return os({...D,fileName:I.split("/").at(-1)??"file",offset:b,length:C,...w===void 0?{}:{signal:w},...R===void 0?{}:{identity:R}}).catch(()=>{})}async function T(I,b,C,g,R,W,w,D){if(e.manifest(a.nodeId)?.directTransfer?.range!==!0)return;const E=y(I,b,C,g,D);if(E!==void 0)return os({...E,fileName:b.split("/").at(-1)??"file",offset:R,length:W,...D===void 0?{}:{signal:D},...w===void 0?{}:{identity:w}}).catch(()=>{})}async function p(I,b,C,g){const R=u(I,b,C,g);return R===void 0?void 0:(await as({...R,...g===void 0?{}:{signal:g}}))?.url}async function m(I,b,C){if(e.manifest(a.nodeId)?.directTransfer?.download!==!0)return"UNAVAILABLE";const g=u(I,b,C);return g===void 0||e.activeWorker===void 0?"UNAVAILABLE":ns({...g,activeWorker:e.activeWorker})}async function S(I,b,C,g,R){const W=y(I,b,C,g,R);return W===void 0?void 0:(await as({...W,...R===void 0?{}:{signal:R}}))?.url}async function N(I,b,C,g){if(e.manifest(a.nodeId)?.directTransfer?.download!==!0)return"UNAVAILABLE";const R=y(I,b,C,g);return R===void 0||e.activeWorker===void 0?"UNAVAILABLE":ns({...R,activeWorker:e.activeWorker})}return{attachments:l,contentUrl:r,read:i,write:d,fetchFile:v,directFileReadRange:k,directFileObjectUrl:p,directFileDownload:m,directGitFileReadRange:T,directGitFileObjectUrl:S,directGitFileDownload:N}}return{forWorkspace:t}}function Ny(e){const t=$(),n=$(!1),a=_(()=>{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:_(()=>t.value),draftOpen:_(()=>n.value),draftTarget:a,setSession:r=>{t.value=r},setDraftOpen:r=>{n.value=r}}}function Dy(e){async function t(l){const d=e.secondaryPane.target.value;d!==void 0&&(d.sessionId!==l&&!n({...d,sessionId:l})||await e.secondaryPane.reloadChecked())}function n(l){const d=e.workspaceTarget.value;if(d?.nodeId!==l.nodeId||d.workspaceId!==l.workspaceId)return!1;const{sessionId:v}=l;if(!e.canOpenAside())return!1;const u=e.aside.current(d).active;return u?.kind==="session"&&u.sessionId===v||(e.saveAside(),e.aside.openSession(l)),!0}function a(l){const d=e.workspaceTarget.value;if(d?.nodeId!==l.nodeId||d.workspaceId!==l.workspaceId)return;const{sessionId:v}=l;if(!e.aside.current(d).sessions.includes(v))return;const u=e.aside.current(d).active;u?.kind==="session"&&u.sessionId===v&&e.saveAside(),e.aside.closeSession(l)}function r(l,d){const v=e.workspaceTarget.value;if(v?.nodeId!==l.nodeId||v.workspaceId!==l.workspaceId||!e.aside.current(v).sessions.includes(l.sessionId))return!1;if(d===l.sessionId)return!0;const u=e.aside.current(v).active;return u?.kind==="session"&&u.sessionId===l.sessionId&&e.saveAside(),e.aside.replaceSession(l,d)}function s(l,d){const v=e.workspaceTarget.value,u=e.aside.current(l).active;v?.nodeId===l.nodeId&&v.workspaceId===l.workspaceId&&u?.kind==="session"&&d.includes(u.sessionId)&&e.saveAside(),e.aside.removeMissing(l,d)}function i(l,d,v){v.preserveMobileWorkspaceSurface||e.closeMobileSurface();const u=e.selectedSessionId.value!==l,y=e.sessions.value.find(k=>k.id===l&&(!v.markReadAfterOpen||k.workspaceId===e.workspaceTarget.value?.workspaceId));if(u&&y!==void 0&&!v.markReadAfterOpen&&e.markSessionRead(d,y.workspaceId,l),y!==void 0){const k=e.workspaceTabId(d,y.workspaceId),T=e.sessions.value.filter(p=>p.workspaceId===y.workspaceId).findIndex(p=>p.id===y.id);e.ensureSessionVisible(k,T)}return v.skipSaveCurrent||e.saveCurrent(),y!==void 0&&e.workspaceTarget.value?.workspaceId!==y.workspaceId&&e.selectWorkspace({nodeId:d,workspaceId:y.workspaceId},!1),e.setDraftOpen(!1),{switching:u,session:y}}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 Py(e){const t=Ny(e);return{...t,connect(n){return Dy({...n,workspaceTarget:e,selectedSessionId:t.sessionId,setSelectedSessionId:t.setSession,draftOpen:t.draftOpen,setDraftOpen:t.setDraftOpen})}}}function Oy(e){const t=e.storage??sessionStorage;function n(N,I="main"){return N===void 0?void 0:I==="main"?`mar.workbench.draft.${N.nodeId}.${N.workspaceId}`:`mar.workbench.aside-draft.${JSON.stringify([N.nodeId,N.workspaceId])}`}const a=()=>n(e.target.value),r=N=>N.kind==="session"?`mar.workbench.session-draft.${JSON.stringify([N.nodeId,N.workspaceId,N.sessionId])}`:n(N),s=new Map,i=new Set,l=new Map,d=new Map,v=new Map;function u(){return{input:$(""),skillTokens:$([]),references:$([])}}function y(N,I="main"){const b=n(N,I),C=`mar.workbench.queue-edit.${JSON.stringify([N.nodeId,N.workspaceId,N.kind,N.kind==="session"?N.sessionId:null])}`,g=`${C}.${I}`;let R=d.get(g);if(R===void 0){let W=s.get(b);W===void 0&&(W=u(),s.set(b,W),m(b,W)),p(N,I,b,W);const w=l.get(C),D=w??$(),E=()=>{let H=!1;try{const J=t.getItem(C),Y=J===null?JSON.parse(t.getItem(r(N))??"null"):void 0;D.value=Ly(J===null?Y?.queueEdit:JSON.parse(J)),H=J===null&&D.value!==void 0}catch{D.value=void 0}if(H)try{t.setItem(C,JSON.stringify(D.value))}catch{}};w===void 0&&(l.set(C,D),E()),R={...W,queueEdit:D,restore:()=>{m(b,W),E()},persist:()=>{S(b,W);try{D.value!==void 0?t.setItem(C,JSON.stringify(D.value)):t.getItem(C)!==null&&t.setItem(C,"null")}catch{}}},d.set(g,R)}return R}function k(N,I="main"){const b=()=>{if(N.value!==void 0)return y(N.value,I);let C=v.get(I);return C===void 0&&(C={...u(),queueEdit:$(),restore:()=>{},persist:()=>{}},v.set(I,C)),C};return{slot:_(()=>b()),input:_({get:()=>b().input.value,set:C=>b().input.value=C}),skillTokens:_({get:()=>b().skillTokens.value,set:C=>b().skillTokens.value=C}),references:_({get:()=>b().references.value,set:C=>b().references.value=C}),queueEdit:_({get:()=>b().queueEdit.value,set:C=>b().queueEdit.value=C}),restore:()=>b().restore(),persist:()=>b().persist()}}const T=k(e.target);function p(N,I,b,C){if(!(I!=="main"||N.kind!=="session"||i.has(b)))try{if(t.getItem(b)===null&&C.input.value.length===0&&C.skillTokens.value.length===0&&C.references.value.length===0){const g=t.getItem(r(N));g!==null&&m(b,C,g)}i.add(b),S(b,C)}catch{}}function m(N,I,b){const{input:C,skillTokens:g,references:R}=I;try{const W=b??t.getItem(N);if(W===null){C.value="",g.value=[],R.value=[];return}try{const w=JSON.parse(W);w.sessionDraftsMigrated===!0&&i.add(N),R.value=pp(w.references);const D=typeof w.input=="string"?w.input:"",E=gp(w.skillTokens).map(J=>({...J,available:!1})),H=[...D].filter(J=>J===Ki).length;g.value=H>0?E.slice(0,H):E,C.value=D.replaceAll(Ki,"")}catch{C.value=W,g.value=[],R.value=[]}}catch{C.value="",g.value=[],R.value=[]}}function S(N,I){const{input:b,skillTokens:C,references:g}=I;try{b.value.length===0&&C.value.length===0&&g.value.length===0&&!i.has(N)?t.removeItem(N):t.setItem(N,JSON.stringify({input:b.value,skillTokens:C.value,references:g.value,...i.has(N)?{sessionDraftsMigrated:!0}:{}}))}catch{}}return{...T,key:a,restoreFor:N=>{N!==void 0&&y(N).restore()},persistFor:N=>{N!==void 0&&y(N).persist()},bindTarget:k,forTarget:y}}function Ly(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 Ms=["files","search","changes","history","terminal"],Wy={tools:[],sessions:[]};function My(e){return e?.kind==="session"||e?.kind==="browser"||e?.kind==="tool"&&e.id==="terminal"?"content":"compact"}function xy(e=1){const t=bt(new Map);function n(w){const D=w.workspace,E=w.manifest,H=w.selectedWorkspace;Ge([D,E,()=>H.value?.kind],([J,Y,q])=>{if(J===void 0||Y===void 0)return;const Q=[];Y.files?.available===!0&&Q.push("files","search"),q==="GIT_WORKSPACE"&&(Q.push("changes"),Y.git?.supportsHistory===!0&&Q.push("history")),Y.terminal?.available===!0&&Y.terminal.supportsReplay===!0&&Q.push("terminal"),l(J,Q)},{immediate:!0})}function a(w){return t.value.get(w.nodeId)?.get(w.workspaceId)??Wy}function r(w,D){if(D.sessions.length>e){const J=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(q=>q!==J).slice(0,D.sessions.length-e));D={...D,sessions:D.sessions.filter(q=>!Y.has(q))}}D.terminalReturn!==void 0&&!s(D,D.terminalReturn)&&(D={...D,terminalReturn:void 0});const E=new Map(t.value),H=new Map(E.get(w.nodeId));H.set(w.workspaceId,D),E.set(w.nodeId,H),t.value=E}function s(w,D){return D!==void 0&&(D.kind==="tool"?w.tools.includes(D.id):D.kind==="browser"?w.tools.includes("files")&&w.htmlPath!==void 0:w.sessions.includes(D.sessionId))}function i(w){const D=w.recentTool&&w.tools.includes(w.recentTool)?w.recentTool:w.tools.find(E=>E!=="terminal");return D===void 0?void 0:{kind:"tool",id:D}}function l(w,D){const E=Ms.filter(Y=>D.includes(Y)),H=a(w),J={...H,tools:E};r(w,{...J,active:s(J,H.active)?H.active:i(J)??(E.includes("terminal")?{kind:"tool",id:"terminal"}:void 0)})}function d(w,D){const E=a(w);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(w,{...E,active:{kind:"tool",id:D},terminalReturn:H,...D==="terminal"?{}:{recentTool:D}}),!0}function v(w){const D=a(w);r(w,{...D,sessions:D.sessions.includes(w.sessionId)?D.sessions:[...D.sessions,w.sessionId],active:{kind:"session",sessionId:w.sessionId}})}function u(w,D){const E=a(w);return E.tools.includes("files")?(r(w,{...E,htmlPath:D,active:{kind:"browser"}}),!0):!1}function y(w){const D=a(w);return s(D,{kind:"browser"})?(r(w,{...D,active:{kind:"browser"}}),!0):!1}function k(w,D){const E=a(w);if(!E.sessions.includes(w.sessionId))return!1;const H=J=>J?.kind==="session"&&J.sessionId===w.sessionId?{kind:"session",sessionId:D}:J;return r(w,{...E,sessions:[...new Set(E.sessions.map(J=>J===w.sessionId?D:J))],active:H(E.active),terminalReturn:H(E.terminalReturn)}),!0}function T(w){return a(w).sessions.includes(w.sessionId)?(v(w),!0):!1}function p(w){m(w,[w.sessionId])}function m(w,D){const E=a(w),H=new Set(D);if(!E.sessions.some(q=>H.has(q)))return;const J=E.sessions.filter(q=>!H.has(q)),Y={...E,sessions:J,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 q=E.sessions.indexOf(E.active.sessionId),Q=E.sessions.slice(0,q).reverse().find(V=>!H.has(V))??E.sessions.slice(q+1).find(V=>!H.has(V));r(w,{...Y,active:Q!==void 0?{kind:"session",sessionId:Q}:s(Y,{kind:"browser"})?{kind:"browser"}:i(Y)})}else r(w,Y)}function S(w){const D=a(w);return D.tools.includes("terminal")?D.active?.kind!=="tool"||D.active.id!=="terminal"?d(w,"terminal"):(r(w,{...D,active:s(D,D.terminalReturn)?D.terminalReturn:i(D)}),!0):!1}function N(w){const{sessions:D,active:E,recentTool:H,terminalReturn:J,htmlPath:Y}=a(w);return{sessions:[...D],active:E,recentTool:H,terminalReturn:J,htmlPath:Y}}function I(w,D,E){const H=[...new Set(D.sessions.filter(J=>typeof J=="string"&&J.length>0))];r(w,{tools:Ms.filter(J=>E.includes(J)),sessions:H,active:D.active,recentTool:D.recentTool,terminalReturn:D.terminalReturn,htmlPath:D.htmlPath}),l(w,E)}function b(w){const D=t.value.get(w.nodeId)?.get(w.workspaceId);if(D?.htmlPath===void 0)return;const E={...D,htmlPath:void 0},H=D.sessions.at(-1);r(w,{...E,active:D.active?.kind!=="browser"?D.active:H!==void 0?{kind:"session",sessionId:H}:i(E)})}function C(w){for(const D of t.value.get(w)?.keys()??[])b({nodeId:w,workspaceId:D})}function g(){for(const w of t.value.keys())C(w)}function R(w){const D=new Map(t.value),E=new Map(D.get(w.nodeId));E.delete(w.workspaceId),E.size===0?D.delete(w.nodeId):D.set(w.nodeId,E),t.value=D}function W(w){function D(Q){const V=w.workspace.value;return V?.nodeId===Q.nodeId&&V.workspaceId===Q.workspaceId}function E(Q){a(Q).active?.kind==="session"&&w.saveSession()}function H(Q){D(Q)&&(E(Q),d(Q,Q.id),w.mobile.value&&w.openMobile(Q.id==="terminal"?"terminal":"inspector"))}function J(Q){D(Q)&&(E(Q),y(Q)&&w.mobile.value&&w.openMobile("inspector"))}function Y(Q){D(Q)&&b(Q)}function q(){const Q=w.workspace.value;if(Q!==void 0){if(E(Q),w.mobile.value&&w.mobileSurface.value!=="inspector"&&w.mobileSurface.value!=="terminal"){d(Q,"terminal")&&w.openMobile("terminal");return}if(S(Q)&&w.mobile.value){const V=a(Q).active;w.openMobile(V?.kind==="tool"&&V.id==="terminal"?"terminal":"inspector")}}}return{select:H,openBrowser:J,closeBrowser:Y,toggleTerminal:q}}return{observeCapabilities:n,createInteraction:W,current:a,ensure:l,selectTool:d,openHtml:u,activateHtml:y,openSession:v,replaceSession:k,activateSession:T,closeSession:p,removeMissing:m,toggleTerminal:S,snapshot:N,restore:I,removeWorkspace:R,clearHtmlWorkspace:b,clearHtmlNode:C,clearHtml:g}}function $y(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 Ka(e){return e!==null&&typeof e=="object"&&!Array.isArray(e)}function Ho(e){return Ka(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 Fy(e){return Ka(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 Uy(e){const t=bt();let n;function a(i,l,d){return!Ka(d)||!Array.isArray(d.sessions)||!d.sessions.every(Ho)||!Array.isArray(d.summaries)||!d.summaries.every(Fy)||!Array.isArray(d.missingSessionIds)||!d.missingSessionIds.every(v=>typeof v=="string")||d.tree!==null&&(!Ka(d.tree)||typeof d.tree.anchorSessionId!="string"||d.tree.anchorSessionId!==l.treeAnchor||d.tree.parent!==null&&!Ho(d.tree.parent)||!Array.isArray(d.tree.nodes)||!d.tree.nodes.every(Ho)||typeof d.tree.truncated!="boolean")?!1:(n=l,t.value={...d,...i},e(i,d.missingSessionIds),!0)}function r(i,l){const d=t.value;return i!==void 0&&l!==void 0&&i.nodeId===d?.nodeId&&i.workspaceId===d.workspaceId&&$n(l,n)?d:void 0}function s(i,l){const d=t.value;if(i===void 0||d===void 0||i.nodeId!==d.nodeId||i.workspaceId!==d.workspaceId)return[];const v=[...d.sessions,...d.tree?.parent===null||d.tree?.parent===void 0?[]:[d.tree.parent],...d.tree?.nodes??[]];return l.flatMap(u=>{if(d.missingSessionIds.includes(u))return[];const y=v.find(k=>k.id===u);return y===void 0?[]:[y]})}return{snapshot:t,accept:a,current:r,knownSessions:s}}const Vy="__feature-demo__",uc="sessionAside",qy={[Vy]:{introducedIn:"0.9.119"},[uc]:{introducedIn:"0.11.69"}},Hy=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/u;function Bo(e){const t=Hy.exec(e);if(t===null)return;const n=t.slice(1).map(Number);if(n.every(Number.isSafeInteger))return n}function xs(e,t){for(let n=0;n<e.length;n+=1)if(e[n]!==t[n])return e[n]-t[n];return 0}function By(e,t){const n=Bo(e),a=Bo(t.introducedIn),r=t.removedIn===void 0?void 0:Bo(t.removedIn);return n===void 0||a===void 0||t.removedIn!==void 0&&r===void 0||xs(n,a)<0?!1:r===void 0||xs(n,r)<0}function Gy(e,t){const n=qy[t];return n!==void 0&&By(e,n)}function Aa(e,t){return e!==void 0&&t?.apiVersion===1&&Gy(e,uc)}function zy(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 Ky(e){const{sessions:t,selectedSessionId:n,setSelectedSessionId:a,currentSelectionRevision:r,preserveManagedActive:s,mergeSessions:i,removeSessionExact:l}=e.projection,d=e.submissions,v=e.workspaceTarget;function u(T,p,m,S){if(m===S)return;const N={kind:"session",nodeId:T,workspaceId:p};d.transfer(d.forTarget({...N,sessionId:m}),d.forTarget({...N,sessionId:S}),m,S)}function y(T,p,m,S){zy({sessions:t,removeSessionExact:l,selectedSessionId:n,setSelectedSessionId:a,currentSelectionRevision:r,preserveManagedActive:s,mergeSessions:i,transferSubmission:(N,I)=>u(T,p,N,I)},m,S)}function k(T,p){const m=v.value?.nodeId;m!==void 0&&y(m,p.workspaceId,T,p)}return{transfer:u,replace:y,replaceCurrent:k}}function jy(){const e=$();return{...vc(),target:_(()=>e.value),setTarget:t=>{e.value=t}}}function vc(){let e=0;return{currentSelectionRevision:()=>e,nextSelectionRevision:()=>++e}}function _y(e,t=vc()){const n=$(!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 d=t.nextSelectionRevision();n.value=!1;const v=e.workspaceTarget.value,u=v?.nodeId!==i.nodeId||v.workspaceId!==i.workspaceId;u&&(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 y=e.workspaceTarget.value,k=()=>t.currentSelectionRevision()===d&&e.workspaceTarget.value===y;e.closeSidebar(),e.showWorkbench(),e.replaceWorkspaces([...e.cachedWorkspaces(i.nodeId)]);const T=e.workspaces.value.find(b=>b.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),m=u||!e.isCacheActive(i.nodeId,i.workspaceId);m&&(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 S=!u&&e.selectedSessionId.value!==void 0&&e.sessions.value.some(b=>b.id===e.selectedSessionId.value),N=e.takeRestoredSelection(i.nodeId,i.workspaceId),I=p.sessions.find(b=>b.id===p.selectedSessionId);return l&&m&&I!==void 0&&En(I)?e.openSession(I.id,{skipSaveCurrent:!0}):l&&N!==void 0?(e.openDraft(),e.restoreSession(i.workspaceId,N.selectedSessionId)):l&&!S&&e.openDraft(),T!==void 0&&e.startWatch(i.workspaceId),(m||!e.hasProfiles(i.nodeId)&&!e.profilesLoading.value)&&e.loadProfiles(i.nodeId),e.refreshManifest(i.nodeId),e.refreshTransport(i.nodeId),n.value=!0,s(y,k,T===void 0),!0}async function s(i,l,d){try{const v=await e.request(`/api/workspaces?nodeId=${encodeURIComponent(i.nodeId)}`);if(!l())return;e.cacheWorkspaces(i.nodeId,v.workspaces);const u=v.workspaces.find(y=>y.id===i.workspaceId);if(u===void 0){e.invalidateWorkspace(i),e.notice(c("generated.workbenchWorkspaceSelectionService.thisWorkspaceIsNoLongerInThe"),"error");return}e.replaceWorkspaces([...v.workspaces]),e.rememberWorkspace(i.nodeId,u),d&&e.startWatch(i.workspaceId)}catch(v){if(!l()||yt(v)==="NODE_OFFLINE"&&!e.isHostAvailable(i.nodeId))return;["FORBIDDEN","NODE_NOT_FOUND","WORKSPACE_NOT_FOUND","REQUEST_FAILED_403","REQUEST_FAILED_404"].includes(yt(v)??"")&&e.invalidateWorkspace(i),e.notice(c("generated.workbenchWorkspaceSelectionService.unableToLoadNodeWorkspaces",{value0:e.errorMessage(v)}),"error",v)}finally{l()&&(n.value=!1)}}return{select:r,clear:a,loading:n,currentSelectionRevision:t.currentSelectionRevision}}function Yy(){const e=jy();return{target:e.target,currentSelectionRevision:e.currentSelectionRevision,connect(t){return _y({...t,workspaceTarget:e.target,setWorkspaceTarget:e.setTarget},e)}}}function Qy(e){const t=new Map,n=bt();function a(V,U){const A=e(V,U),h=t.get(A);if(h!==void 0)return h;const F={nodeId:V,workspaceId:U,sessions:[],queues:new Map,sessionDetails:new Map};return t.set(A,F),F}function r(V,U){const A=e(V,U);n.value?.nodeId===V&&n.value.workspaceId===U&&(n.value=void 0),t.delete(A)}function s(V,U,A){const h=t.get(e(V,U));h!==void 0&&(h.sessions=h.sessions.filter(F=>F.id!==A),h.sessionDetails.delete(A),h.queues.delete(A),h.selectedSessionId===A&&delete h.selectedSessionId)}function i(V,U,A){return t.get(e(V,U))?.queues.get(A)}function l(V,U,A){t.get(e(V,U))?.sessionDetails.delete(A)}function d(V,U,A,h){if(A!==h.id){J(V,U,A,h.id,h);return}const F=t.get(e(V,U));F!==void 0&&(F.sessions=F.sessions.map(K=>K.id===A?h:K))}function v(V){n.value?.nodeId===V&&(n.value=void 0);for(const U of t.keys())U.startsWith(`${V}:`)&&t.delete(U)}function u(V,U){n.value=a(V,U)}function y(){n.value=void 0}function k(V,U){const A=a(V,U);return{nodeId:A.nodeId,workspaceId:A.workspaceId,sessions:A.sessions,...A.selectedSessionId===void 0?{}:{selectedSessionId:A.selectedSessionId},...A.draft===void 0?{}:{draft:A.draft},...A.fileWorkbench===void 0?{}:{fileWorkbench:A.fileWorkbench},...A.search===void 0?{}:{search:A.search},...A.files===void 0?{}:{files:A.files},...A.git===void 0?{}:{git:A.git}}}function T(V,U){return n.value?.nodeId===V&&n.value.workspaceId===U}function p(){return n.value!==void 0}function m(V,U){return t.has(e(V,U))}function S(V,U,A){const h=t.get(e(V,U));h!==void 0&&(h.search=A)}function N(V,U){const A=e(V,U),h=t.get(A);if(h!==void 0)return{isCurrent:()=>t.get(A)===h,replaceSession(F,K){t.get(A)===h&&d(V,U,F,K)},cacheRun(F){t.get(A)===h&&Y(V,U,F)}}}function I(V,U,A,h,F){const K=t.get(e(V,U));K!==void 0&&K.queues.set(A,mp(K.queues.get(A),h,F))}function b(V,U,A,h,F=!1){const K=F?U.turns:Oa(U.turns),ve=Ao(K);for(V.sessionDetails.set(U.sessionId,{...U,turns:ve,nextCursor:ve.length<K.length?null:U.nextCursor});V.sessionDetails.size>A;){const X=[...V.sessionDetails.values()].filter(oe=>!h.has(oe.sessionId)).reduce((oe,ge)=>oe===void 0||ge.lastAccessedAt<oe.lastAccessedAt?ge:oe,void 0);if(X===void 0)break;V.sessionDetails.delete(X.sessionId)}}function C(V,U,A,h){V.sessions=U.sessions.filter(K=>K.workspaceId===V.workspaceId&&En(K)),V.fileWorkbench=U.fileWorkbench,"search"in U&&(U.search===void 0?delete V.search:V.search=U.search),"files"in U&&(U.files===void 0?delete V.files:V.files=U.files),"git"in U&&(U.git===void 0?delete V.git:V.git=U.git),U.draft===void 0?delete V.draft:V.draft=U.draft;const F=U.sessions.find(K=>K.id===U.selectedSessionId);if(!En(F)){delete V.selectedSessionId,U.selectedSessionId!==void 0&&(V.queues.delete(U.selectedSessionId),V.sessionDetails.delete(U.selectedSessionId));return}V.selectedSessionId=F.id,U.queue!==void 0&&V.queues.set(F.id,Do(V.queues.get(F.id),U.queue)),U.detail!==void 0&&b(V,U.detail,A,new Set(h===void 0?[F.id]:[F.id,h]),U.detailHistoryAlreadyBounded===!0)}function g(V,U,A,h,F,K){const ve=t.get(e(V,U));if(ve===void 0||A.workspaceId!==U||A.id!==F.sessionId||!En(A))return;ve.queues.set(A.id,Do(ve.queues.get(A.id),h));const X=new Set([A.id]);ve.selectedSessionId!==void 0&&X.add(ve.selectedSessionId),b(ve,F,K,X,!0)}function R(V,U,A){const h=n.value;h!==void 0&&C(h,{...V,fileWorkbench:"fileWorkbench"in V?V.fileWorkbench:h.fileWorkbench},U,A)}function W(V,U,A,h=Date.now()){const F=t.get(e(V,U))?.sessionDetails.get(A);return F!==void 0&&(F.lastAccessedAt=h),F}function w(V,U,A){return t.get(e(V,U))?.sessionDetails.get(A)}function D(V,U,A){return w(V,U,A)}function E(V,U,A,h){const F=w(V,U,A);F!==void 0&&(F.contextUsage=h)}function H(V,U,A,h,F){const K=w(V,U,A);K!==void 0&&(K.turns=wp(K.turns,h,F))}function J(V,U,A,h,F){if(A===h||!En(F))return;const K=t.get(e(V,U));if(K===void 0)return;F!==void 0&&(K.sessions=K.sessions.map(oe=>oe.id===A?F:oe));const ve=K.sessionDetails.get(A);ve!==void 0&&(K.sessionDetails.delete(A),K.sessionDetails.set(h,{...ve,sessionId:h,turns:ve.turns.map(oe=>oe.sessionId===A?{...oe,sessionId:h}:oe)}));const X=K.queues.get(A);X!==void 0&&(K.queues.delete(A),K.queues.set(h,Do(K.queues.get(h),X))),K.selectedSessionId===A&&(K.selectedSessionId=h)}function Y(V,U,A){if(A.sessionId===void 0)return;const h=w(V,U,A.sessionId);if(h===void 0)return;const F=h.runs.find(ve=>ve.id===A.id),K=yp(F,A);h.runs=[K,...h.runs.filter(ve=>ve.id!==A.id)]}function q(V,U,A){const h=w(V,U,A.sessionId);if(h===void 0)return;const F=Oa(hp(h.turns,[A]));h.turns=Ao(F),h.turns.length<F.length&&(h.nextCursor=null)}function Q(V,U,A,h,F){const K=w(V,U,A);K!==void 0&&(K.turns=Ao(Oa(h)),K.nextCursor=F)}return{view:k,isActive:T,hasActive:p,has:m,updateSearch:S,captureCommandTarget:N,captureActive:R,captureSession:g,activate:u,deactivate:y,remove:r,removeSession:s,queueFor:i,invalidateDetail:l,replaceSession:d,removeNode:v,detail:D,updateContext:E,syncRunStatus:H,touchDetail:W,migrateSession:J,cacheRun:Y,cacheTurn:q,cacheQueue:I,replaceTurns:Q}}function Jy(e){const t=(p,m)=>e.cacheService.view(p,m);function n(p,m){e.cacheService.remove(p,m),e.paging.remove(e.tabId(p,m))}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,m){if(e.workspaceTarget.value?.nodeId!==p||e.workspaceTarget.value.workspaceId!==m)return;const S=t(p,m);e.files?.restore(S.files),e.git?.restore(S.git),e.search?.restore(S.search);const N=S.fileWorkbench;N!==void 0&&e.fileWorkbench.restore(N)}function i(p){const m=p?.draft;m!==void 0&&e.restoreDraftConfiguration(m)}function l(p){const m=e.sessions.value.find(N=>N.id===p),S=e.workspaceTarget.value?.nodeId;if(!(m===void 0||S===void 0))return{nodeId:S,workspaceId:m.workspaceId}}function d(p,m){const S=l(p);S!==void 0&&e.cacheService.updateContext(S.nodeId,S.workspaceId,p,m)}function v(p,m,S){const N=l(p);N!==void 0&&e.cacheService.syncRunStatus(N.nodeId,N.workspaceId,p,m,S)}const u=(p,m,S)=>e.cacheService.cacheRun(p,m,S);function y(p){const m=e.workspaceTarget.value?.nodeId;if(p.sessionId===void 0||m===void 0)return;const S=p.workspaceId??e.sessions.value.find(N=>N.id===p.sessionId)?.workspaceId;S!==void 0&&u(m,S,p)}function k(p){const m=e.sessions.value.find(N=>N.id===p.sessionId),S=e.workspaceTarget.value?.nodeId;m!==void 0&&S!==void 0&&e.cacheService.cacheTurn(S,m.workspaceId,p)}function T(p,m,S){const N=e.sessions.value.find(b=>b.id===p),I=e.workspaceTarget.value?.nodeId;N!==void 0&&I!==void 0&&e.cacheService.replaceTurns(I,N.workspaceId,p,m,S)}return{workspaceViewCache:t,discardWorkspaceViewCache:n,discardNodeViewCaches:a,saveCurrentWorkspaceView:r,restoreWorkspaceView:s,restoreWorkspaceDraft:i,updateCachedContext:d,syncCachedRunStatus:v,cacheRunSnapshotFor:u,cacheRunSnapshot:y,cacheConversationTurn:k,replaceConversationTurns:T}}function Xy(e){const t=Qy(e);return{cache:t,connect:n=>Jy({...n,cacheService:t,tabId:e})}}function Zy(e){const t=$(!1),n=new Map;let a=0,r,s=0;const i=(V,U)=>e.tree.cacheWorkspaces(V,U),l=V=>e.tree.workspacesForNode(V),d=V=>e.tree.orderedWorkspaces(V);function v(V,U,A){const h=l(V).map(F=>F.id===U?{...F,gitSummary:{...F.gitSummary??{},branch:A}}:F);V===e.workspaceTarget.value?.nodeId&&e.replaceWorkspaces([...h]),i(V,h)}function u(V,U){const A=l(V).map(h=>{if(h.id!==U.id)return h;const F={...h};return Reflect.deleteProperty(F,"gitSummary"),{...F,path:U.path,kind:U.kind,...U.gitSummary===void 0?{}:{gitSummary:U.gitSummary}}});V===e.workspaceTarget.value?.nodeId&&e.replaceWorkspaces([...A]),i(V,A)}function y(V,U){const A=e.nodes.value.find(h=>h.id===V);e.tabs.remember(V,A,U)}function k(V,U=!1){const A=e.tabs.tabs.value.find(h=>h.id===V.id);A===void 0||!U&&A.pinned===!0||T([A],!U)}function T(V,U=!0){const A=V.some(F=>e.activeTabId.value===F.id),h=U&&s===e.currentSelectionRevision()&&V.some(F=>r===F.id);A&&e.saveCurrent();for(const F of V)e.releaseTerminalDock(F.id),e.deleteTerminalDock(F.id),e.tabs.remove(F),e.discardCache(F.nodeId,F.workspaceId);!A&&!h||(e.clearWorkspace(),p())}async function p(){const V=++a,U=new Set;for(r=void 0;;){const A=e.tabs.mostRecentlyUsed(U);if(A===void 0)return;U.add(A.id),r=A.id;const h=S(A),F=e.currentSelectionRevision();s=F;const K=await h;if(V!==a||(r=void 0,K||F!==e.currentSelectionRevision()))return}}function m(){const V=e.activeTabId.value,U=e.tabs.tabs.value.filter(h=>h.pinned!==!0),A=U.find(h=>h.id===V);T([...U.filter(h=>h.id!==V),...A===void 0?[]:[A]])}async function S(V){return e.nodes.value.find(A=>A.id===V.nodeId)===void 0?(k(V,!0),!1):I(V)}async function N(V){const U=e.nodes.value.find(ve=>ve.id===V.nodeId);if(U===void 0){k(V,!0);return}const A=e.workspaceTabSession(V.nodeId,V.workspaceId),h=I(V,A===void 0),F=e.currentSelectionRevision();if(!await h||F!==e.currentSelectionRevision())return;const K=e.workspaceTarget.value;K?.nodeId!==V.nodeId||K.workspaceId!==V.workspaceId||!U.connected||U.disabled||A!==void 0&&await e.openWorkspaceTabSession(A)}function I(V,U=!0){const A=e.workspaceTarget.value,h=A?.nodeId===V.nodeId&&A.workspaceId===V.workspaceId?Promise.resolve(!0):U?e.activateWorkspace(V):e.activateWorkspace(V,!1);return e.tree.revealWorkspace(V),e.closeMobileSidebar(),e.showWorkbench(),h}async function b(V){e.tree.toggleNode(V)&&(V===e.workspaceTarget.value?.nodeId||V in e.workspacesByNode.value||await C(V))}async function C(V){const U=e.workspaceTarget.value,A=e.currentSelectionRevision(),h=()=>e.workspaceTarget.value===U&&e.currentSelectionRevision()===A,F=(n.get(V)??0)+1;n.set(V,F);try{const K=await e.request(`/api/workspaces?nodeId=${encodeURIComponent(V)}`);if(n.get(V)!==F)return;i(V,K.workspaces),h()&&e.workspaceTarget.value?.nodeId===V&&e.replaceWorkspaces(K.workspaces)}catch(K){if(n.get(V)!==F||!h())return;e.notice(c("generated.workbenchWorkspaceTreeController.unableToLoadNodeWorkspaces",{value0:e.errorMessage(K)}),"error",K)}}async function g(){await e.refreshNodes();const V=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(U=>V.has(U.id)).map(U=>C(U.id)))}async function R(V,U){e.closeMobileWorkspaceSurface(),await I({nodeId:V,workspaceId:U})}const W=(V,U,A)=>e.tree.startDrag(V,U,A);function w(V){return e.nodes.value.find(A=>A.id===V)?.workspaceCreatable===!0}async function D(V,U,A){if(!(!w(V)||U.groupName===A)){t.value=!0;try{await e.request(`/api/workspaces/${encodeURIComponent(U.id)}?nodeId=${encodeURIComponent(V)}`,{method:"PATCH",body:JSON.stringify({groupName:A})});const h={...U,groupName:A},F=l(V).map(K=>K.id===U.id?h:K);i(V,F),e.workspaceTarget.value?.nodeId===V&&e.replaceWorkspaces([...F])}catch(h){e.notice(e.errorMessage(h),"error",h)}finally{t.value=!1}}}async function E(V,U,A){await D(V,U,A)}function H(V,U,A){const h=e.tree.draggingWorkspace.value;if(h===void 0||h.nodeId!==V)return;const F=l(V).find(X=>X.id===h.workspaceId);if(F===void 0){e.tree.endDrag();return}const K=F.groupName?.trim()||null,ve=U.groupName?.trim()||null;if(K===ve){e.tree.reorder(V,U.id,A);return}e.tree.endDrag(),D(V,F,ve)}function J(V,U){const A=e.tree.draggingWorkspace.value;if(A===void 0||A.nodeId!==V)return;e.tree.endDrag();const h=l(V).find(F=>F.id===A.workspaceId);h!==void 0&&D(V,h,U)}async function Y(V,U){if(U.manageable===!1)return;let A;try{A=(await Nt.prompt(c("generated.workspaceTree.enterWorkspaceName"),c("generated.workspaceTree.renameWorkspace"),{closeIcon:Be("close"),inputValue:e.tabLabel(U),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(U.id)}?nodeId=${encodeURIComponent(V)}`,{method:"PATCH",body:JSON.stringify({displayName:A})});const h={...U,displayName:A},F=l(V).map(K=>K.id===U.id?h:K);i(V,F),e.workspaceTarget.value?.nodeId===V&&e.replaceWorkspaces([...F]),e.tabs.updateLabel(V,U.id,e.tabLabel(h))}catch(h){e.notice(e.errorMessage(h),"error",h)}finally{t.value=!1}}async function q(V,U){if(U.manageable===!0){try{await Nt.confirm(c("generated.workbenchWorkspaceTreeController.unregisterThisDoesNotDeleteTheLocal",{value0:e.tabLabel(U)}),c("generated.workbenchWorkspaceTreeController.unregisterWorkspace"),{closeIcon:Be("close"),icon:Be("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(U.id)}?nodeId=${encodeURIComponent(V)}`,{method:"DELETE"});const A=l(V).filter(h=>h.id!==U.id);i(V,A),e.workspaceTarget.value?.nodeId===V&&(e.replaceWorkspaces(A),e.removeWorkspaceSessions(U.id),e.workspaceTarget.value?.workspaceId===U.id&&e.clearWorkspace()),e.tabs.removeWhere(h=>h.nodeId===V&&h.workspaceId===U.id),e.notice(c("generated.workbenchWorkspaceTreeController.theWorkspaceWasUnregisteredItsLocalDirectory"),"success")}catch(A){e.notice(c("generated.workbenchWorkspaceTreeController.unableToUnregisterTheWorkspace",{value0:e.errorMessage(A)}),"error",A)}finally{t.value=!1}}}async function Q(V,U,A){if(!(U.manageable===!1||!e.cleanupSessionsEnabled(V))){t.value=!0;try{const h=await e.request(`/api/workspaces/${encodeURIComponent(U.id)}/sessions/cleanup`,{method:"POST",body:JSON.stringify({nodeId:V,inactiveDays:A})});return e.workspaceTarget.value?.nodeId===V&&e.workspaceTarget.value?.workspaceId===U.id&&await e.refreshWorkspaceSessions(U.id),h}catch(h){throw new Error(e.errorMessage(h))}finally{t.value=!1}}}return{loading:dt(t),updateWorkspaceBranch:v,updateWorkspaceMetadata:u,rememberWorkspace:y,closeWorkspaceTab:k,closeUnpinnedWorkspaceTabs:m,activateWorkspaceTab:S,openWorkspaceTab:N,cacheNodeWorkspaces:i,workspacesForNode:l,orderedWorkspaces:d,toggleNodeExpansion:b,refreshNodeWorkspaces:C,refreshWorkspaceTree:g,openWorkspaceFromTree:R,startWorkspaceDrag:W,reorderWorkspace:H,moveWorkspaceToGroup:J,moveWorkspaceGroup:E,renameWorkspace:Y,cleanupWorkspaceSessions:Q,removeWorkspace:q}}function ew(e){async function t(v){const u=await e.actions.renameNode(v);u!==void 0&&e.replaceNode(u)}async function n(v){const u=await e.actions.renameSession(v);u!==void 0&&e.replaceSession(v.id,u)}async function a(v,u){await e.actions.setSessionPinned(v,u)&&await e.refreshSessions()}async function r(v){const u=await e.actions.moveSessionToMain(v);u!==void 0&&(e.replaceSession(v.id,u),await e.refreshSessions())}async function s(v,u){await e.actions.movePinnedSession(v,u)&&await e.refreshSessions()}async function i(v,u,y){if(v.id===u.id)return;const k=v.pinOrder>u.pinOrder?"up":"down";await e.actions.movePinnedSession(v,k,{sessionId:u.id,position:y}),await e.refreshSessions()}async function l(v){const u=e.workspaceTarget.value?.nodeId;if(!await e.actions.deleteSession(v)||(u!==void 0&&e.caches.removeSession(u,v.workspaceId,v.id),e.workspaceTarget.value?.nodeId!==u))return;const y=e.selectedSessionId.value===v.id;e.removeSessionId(v.id),y&&(e.setSelectedSessionId(void 0),e.clearActiveSelection(),e.openDraft()),e.replaceUrl()}async function d(v){await e.actions.deleteNode(v)&&(e.removeNode(v.id),e.tabs.removeWhere(u=>u.nodeId===v.id),e.discardNodeCaches(v.id),e.tree.removeNode(v.id),e.workspaceTarget.value?.nodeId===v.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:d}}function tw(){return{admin:$({authenticated:!1,mustChangePassword:!1,isAdmin:!1}),loaded:$(!1),loading:$(!1),sessions:$([]),newPassword:$(""),passwordValidationError:$(""),csrfToken:$("")}}function nw(e){const t=$(new Map),n=$(new Map),a=$(new Map),r=$(!1);function s(y){t.value.has(y)||t.value.set(y,e)}function i(y){t.value.set(y,e),n.value.delete(y),a.value.delete(y)}function l(y,k,T){a.value.delete(y),n.value.set(y,T),t.value.set(y,(t.value.get(y)??e)+k)}function d(y){t.value.delete(y),n.value.delete(y),a.value.delete(y)}function v(y){for(const k of t.value.keys())k.startsWith(`${y}:`)&&t.value.delete(k);for(const k of n.value.keys())k.startsWith(`${y}:`)&&n.value.delete(k);for(const k of a.value.keys())k.startsWith(`${y}:`)&&a.value.delete(k)}function u(y,k){const T=t.value.get(y)??e;k>=T&&t.value.set(y,k+1)}return{visibleLimits:t,nextCursors:n,loadMoreErrors:a,loadingMore:r,initialize:s,reset:i,append:l,remove:d,removeNode:v,ensureVisible:u}}const aw="mar.user.csrf-token";function ow(e){const t=tw(),n=sf({csrfToken:t.csrfToken,csrfStorageKey:aw,onUnauthenticated:e.onUnauthenticated}),a=nw(e.sessionPageSize);return{admin:t,http:n,paging:a}}function rw(e){const t=e.navigation,n=ow(e),{admin:a,http:r}=n,s=Oh(_(()=>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 iw(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&&!Ft.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",on.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",on.newSession,s=>s.repeat||!e.nodeReady.value||e.workspaceTarget.value?.workspaceId===void 0?"IGNORED":(e.openNewSessionComposer(),"HANDLED")),r("workspace.cycleTab",on.cycle,s=>{const i=e.workspaceTabs.value,l=i.findIndex(u=>u.id===e.activeWorkspaceTabId.value);if(i.length===0||l<0)return"IGNORED";if(s.repeat||i.length===1)return"HANDLED";const d=s.key==="ArrowLeft"||s.key==="Tab"&&s.shiftKey?-1:1,v=i[(l+d+i.length)%i.length];return v===void 0?"IGNORED":(e.activateWorkspaceTab(v),"HANDLED")}),r("workspace.numberedTab",on.numbered,s=>{const i=/^Digit([0-9])$/.exec(s.code)?.[1]??s.key,l=i==="0"?9:Number(i)-1,d=e.workspaceTabs.value[l];return d===void 0?"IGNORED":(s.repeat||e.activateWorkspaceTab(d),"HANDLED")}),{command:"workspace.renderedPreview",priority:10,scope:"workspace",keys:on.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:on.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:on.search,when:()=>e.contentSearchReady.value&&e.workspaceTarget.value!==void 0,execute:()=>(e.showAsideTool("search"),"HANDLED")},{command:"workspace.changes",priority:10,scope:"workspace",keys:on.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:on.terminal,when:()=>e.terminalReady.value,execute:()=>(e.toggleTerminal(),"HANDLED")}]}const sw="/assets/runner-claude-code-hOhJ8xv9.png",lw="/assets/runner-codex-D2SXdx8Y.png",cw="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 fc(e){return e==="mar-agent"?$a:e==="codex"?lw:e==="claude-code"?sw:cw}function dw(e){const t=$(!1);function n(p){const m=e.workspaceTarget.value,S=e.selectedSessionId?.value;if(!m||!S||!e.nodeReady.value)return;const N=Nr(p,{...m,sessionId:S,scope:"SESSION"});N&&e.fileWorkbench.openTab(N)}let a;function r(p){const m=e.nodes.value.find(S=>S.id===p.nodeId);return m===void 0?p.nodeLabel??p.nodeId:La(m)}function s(p){return p.externalDiscovered===!1?"—":Zo(p.lastActivityAt,e.sessionActivityClockNow.value)}function i(p){return Mf(p,e.formatSessionTime)}function l(p,m,S,N=!1,I,b="main"){if(!N&&I?.mime.startsWith("image/")&&e.openAttachmentImage!==void 0){e.openAttachmentImage(I);return}v(p,m,S,N,!0,b)}function d(p,m,S,N=!1){v(p,m,S,N)}function v(p,m,S,N,I=!1,b="main"){const C=e.selectedWorkspace.value?.path.replaceAll("\\","/").replace(/\/+$/,""),g=p.replaceAll("\\","/"),R=C!==void 0&&/^[a-z]:\//i.test(C),W=R?g.toLocaleLowerCase():g,w=R?C.toLocaleLowerCase():C,D=C!==void 0&&w!==void 0&&W.startsWith(`${w}/`)?g.slice(C.length+1):g;if(I&&qa(D)&&!D.startsWith("/")&&!/^[a-z]:\//i.test(D)&&!D.split("/").some(E=>E===".."||E==="")){N?e.openHtmlExternal(D):e.openHtml(D);return}if(!e.filesReady.value){e.notice(c("generated.workbenchPageInteractionService.filePreviewIsCurrentlyUnavailable"),"error");return}if(N){e.openWorkspaceFileExternal(D,m,S);return}I?e.fileWorkbench.openComparison(D,m,S,b):e.fileWorkbench.openFile(D,m,S,b)}function u(){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 y(p=!1){t.value=!1,p||gt(()=>a?.focus())}const k=iw(e,u,t),T=(p,m)=>ec(p,m,e.notice);return{quickOpenFileVisible:_(()=>t.value),openAgentFileChange:n,closeQuickOpenFile:y,copyConversationMessage:T,workspaceShortcuts:k,openAgentWorkspaceFile:l,openQuickWorkspaceFile:d,openQuickOpenFile:u,runnerBrandIcon:fc,sessionActivityTitle:i,sessionRelativeActivity:s,workspaceTabNodeLabel:r}}function uw(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()),gt(e.focusDraft)}return{createDraftSession:n,ensureDraftRunnerSupported:t,openNewSessionComposer:a}}function vw(e){let t,n,a=[];function r(){n===void 0&&(n=setTimeout(()=>{n=void 0,e.saveCurrentWorkspaceView()},0))}Ge(e.persistenceSources,e.persistWorkbenchState,{deep:!0}),Ge(e.documentTitle,s=>document.title=s,{immediate:!0}),Ge(e.routeSources,e.syncWorkbenchRoute),Ge(e.newSessionRunner,()=>{e.normalizeNewSessionOptions(),e.clearRunnerCommand(),e.clearComposerModelEffort()}),Ge(e.newSessionModel,e.normalizeNewSessionOptions),Ge(e.workspaceTarget,e.closeFileReferences),Ge(e.cacheSources,r,{flush:"post"}),Ge(e.conversationTurns,()=>{e.followConversation.value&&e.scrollConversationToLatest()},{flush:"post"}),Ge(e.conversationScroll,s=>{t?.disconnect(),s!==void 0&&(t=new ResizeObserver(()=>{e.followConversation.value&&e.scrollConversationToLatest()}),t.observe(s))}),Ge(e.selectedSessionId,(s,i)=>{s!==i&&e.stopSelectedSessionWatch()},{flush:"sync"}),Ot(()=>{e.restoreWorkbenchState(),e.restoreWorkbenchEventCursors(),e.restoreWorkspaceUploads(),e.startNavigation(),document.addEventListener("visibilitychange",e.handleSessionWatchVisibility),window.addEventListener("online",e.recoverAuthentication),a=e.workspaceShortcuts.map(s=>Ft.register(s)),e.refreshAdmin()}),wt(()=>{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 fw(e){const t=$([]),n=$(!1),a=$(!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:_(()=>t.value),loading:_(()=>n.value),failed:_(()=>a.value),refresh:s}}function pw(e){const{selectedNodeId:t,selectedConversationId:n,pageSize:a}=e,r=$([]),s=$(!1),i=$(!1),l=$(!1),d=$(),v=$(!1);let u=0,y=0,k=null;const T=new Map;let p=0;function m(){return new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}function S(w){const D=cf.safeParse(w);if(!D.success)throw m();return D.data}function N(w,D){const E=zt(w.nodeId,w.id),H=T.get(E);return H!==void 0&&H.revision>D&&H.activity.version>w.activity.version?{...w,activity:H.activity}:(T.set(E,{activity:w.activity,revision:D}),w)}function I(w){const D=lf.safeParse(w);if(!D.success)return!1;const E=D.data,H=zt(E.nodeId,E.conversationId),J=T.get(H);return J!==void 0&&E.activity.version<=J.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 b(w){return["STARTING","RUNNING","CANCELLING"].includes(w.activity.status)}async function C(){const w=++u,D=p;y+=1,i.value=!0,l.value=!1,d.value=void 0;try{const E=S(await e.request(`/api/hosted-conversations?limit=${a}`));if(w!==u)return;const H=r.value,J=new Map(H.map(Q=>[zt(Q.nodeId,Q.id),Q])),Y=H.find(Q=>Q.nodeId===t.value&&Q.id===n.value),q=E.items.map(Q=>{Q=N(Q,D);const V=J.get(zt(Q.nodeId,Q.id));if(V===void 0)return Q;const U=Rn(Q,V);return U.activity===Q.activity?U:{...U,activity:Q.activity}});E.items.length>0&&Y!==void 0&&!E.items.some(Q=>Q.nodeId===Y.nodeId&&Q.id===Y.id)&&q.push(Y),r.value=$s(q),k=E.nextCursor,s.value=k!==null,v.value=!0}finally{w===u&&(i.value=!1)}}async function g(){const w=k;if(w===null||l.value||i.value)return;const D=u,E=++y,H=p;l.value=!0,d.value=void 0;try{const J=S(await e.request(`/api/hosted-conversations?limit=${a}&cursor=${encodeURIComponent(w)}`));if(D!==u)return;if(J.nextCursor===w)throw new Error("SESSION_PAGINATION_NO_PROGRESS");r.value=$s([...r.value,...J.items.map(Y=>N(Y,H))]),k=J.nextCursor,s.value=k!==null}catch(J){D===u&&(d.value=J)}finally{E===y&&(l.value=!1)}}function R(w){const D=r.value.findIndex(E=>E.nodeId===w.nodeId&&E.id===w.id);if(D<0)r.value=pr([w,...r.value]);else{const E=[...r.value];E.splice(D,1,Rn(w,E[D])),r.value=pr(E)}}function W(w,D){r.value=r.value.filter(E=>E.id!==D||E.nodeId!==w)}return{conversations:r,hasMoreConversations:s,loadingConversations:i,loadingMoreConversations:l,loadMoreConversationsError:d,conversationsLoaded:v,loadConversations:C,loadMoreConversations:g,projectActivityMessage:I,conversationIsRunning:b,upsertConversation:R,remove:W}}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 $s(e){const t=new Map;for(const n of e){const a=zt(n.nodeId,n.id),r=t.get(a);t.set(a,r===void 0?n:Rn(n,r))}return pr([...t.values()])}function pr(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 zt(e,t){return`${e}\0${t}`}function gw(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 d=e.requireContext();if(e.templateChanging())throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const v=vf.safeParse(await e.request(`${n(d)}/files/${encodeURIComponent(l)}`,{method:"DELETE",body:"{}"}));if(!v.success||v.data.deletedFileId!==l||v.data.files.some(u=>u.conversationId!==d.conversationId))throw t();return e.removeFile(d,l),v.data}async function r(l,d=0,v=512*1024){const u=e.requireContext(),y=await e.request(`${n(u)}/files/${encodeURIComponent(l)}?offset=${d}&limit=${v}`),k=uf.safeParse(y);if(!k.success||k.data.file.id!==l||k.data.file.conversationId!==u.conversationId||k.data.offset!==d)throw t();const T=yw(k.data.content),p=d+T;if(T>v||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,d=!1){const v=e.requireContext();if(l.conversationId!==v.conversationId)throw t();return`${n(v)}/files/${encodeURIComponent(l.id)}/content${d?"?download=1":""}`}async function i(l,d,v,u){const y=e.requireContext();if(e.templateChanging())throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const k=l.type.trim()||"application/octet-stream";u?.throwIfAborted();const T=df.safeParse(await e.request(`${n(y)}/uploads/preflight`,{method:"POST",body:JSON.stringify({files:[{name:l.name,size:l.size,mimeType:k}]}),...u===void 0?{}:{signal:u}}));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=Go(await e.request(`${n(y)}/uploads`,{method:"POST",body:JSON.stringify({name:l.name,size:l.size,mimeType:k,clientRequestId:d}),...u===void 0?{}:{signal:u}}),y.conversationId);v?.(p);const m=512*1024;try{for(let S=p.receivedBytes;S<l.size;S+=m){const N=Math.min(l.size,S+m),I=new Uint8Array(await l.slice(S,N).arrayBuffer());if(u?.throwIfAborted(),I.byteLength!==N-S||(p=Go(await e.request(`${n(y)}/uploads/${encodeURIComponent(p.uploadId)}/chunks`,{method:"POST",body:JSON.stringify({offset:S,dataBase64:hw(I)}),...u===void 0?{}:{signal:u}}),y.conversationId),p.receivedBytes!==N))throw t();v?.(p)}if(p=Go(await e.request(`${n(y)}/uploads/${encodeURIComponent(p.uploadId)}/complete`,{method:"POST",body:"{}",...u===void 0?{}:{signal:u}}),y.conversationId),p.status!=="COMPLETED"||p.file===void 0)throw t()}catch(S){throw await e.request(`${n(y)}/uploads/${encodeURIComponent(p.uploadId)}/cancel`,{method:"POST",body:"{}"}).catch(()=>{}),S}return e.acceptFile(y,p.file),v?.(p),p}return{deleteFile:a,readFile:r,contentUrl:s,uploadFile:i}}function mw(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Go(e,t){if(!mw(e)||Object.keys(e).length!==1||!Object.hasOwn(e,"upload"))throw new Error("HOSTED_CONVERSATION_RESPONSE_INVALID");const n=ff.safeParse(e.upload);if(!n.success||n.data.conversationId!==t)throw new Error("HOSTED_CONVERSATION_RESPONSE_INVALID");return n.data}function hw(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 yw(e){if(e.length===0)return 0;const t=e.endsWith("==")?2:e.endsWith("=")?1:0;return e.length*3/4-t}function ww(e){const{selectedNodeId:t,selectedConversationId:n}=e,a=$(!1),r=$(),s=bt(),i=$(!1);let l,d=!1,v,u,y,k,T=0,p=0,m;function S(Q="HOSTED_CONVERSATION_WATCH_INITIAL_FAILED",V=new Error(Q)){const U=m;U!==void 0&&(m=void 0,clearTimeout(U.timer),U.removeAbortListener(),U.reject(V))}function N(Q,V,U,A){return S(),new Promise((h,F)=>{const K=()=>{m?.watchId===U&&S()};A.addEventListener("abort",K,{once:!0});const ve=setTimeout(K,e.requestTimeoutMs);m={nodeId:Q,conversationId:V,watchId:U,resolve:h,reject:F,timer:ve,removeAbortListener:()=>A.removeEventListener("abort",K)},A.aborted&&K()})}function I(Q){const V=t.value;return Q===g()&&V!==void 0&&e.workbenchConnectionId()!==void 0&&(typeof document>"u"||document.visibilityState==="visible")}async function b(Q,V,U){const A=t.value,h=n.value,F=e.workbenchConnectionId();if(A===void 0||h===void 0||F===void 0||Q!==zt(A,h))return;U==="initial"&&(a.value=!1,i.value=!0,d=!0,l=Us(),v=A,u=h,y=F,k=void 0,T=0,p=0);const K=l??Us();l=K;const ve=U==="initial"?N(A,h,K,V):void 0;ve?.catch(()=>{});try{const X=await e.request(`/api/nodes/${encodeURIComponent(A)}/hosted-conversations/${encodeURIComponent(h)}/watch`,{method:"POST",body:JSON.stringify({mode:U,workbenchConnectionId:F,watchId:K}),signal:V});if(g()!==Q||y!==F||l!==K){m?.watchId===K&&S();return}if(U==="initial"){const oe=pf.safeParse(X);if(!oe.success||oe.data.watchId!==K||k!==void 0&&oe.data.nodeGeneration!==k)throw S("HOSTED_CONVERSATION_RESPONSE_INVALID"),Fs();k=oe.data.nodeGeneration}await ve}catch(X){throw m?.watchId===K&&S(),await ve?.catch(()=>{}),l===K&&y===F&&g()===Q&&I(Q)&&(!V.aborted||yt(V.reason)!==void 0)&&q(V.aborted?V.reason:X),X}}const C=Nl({heartbeatMs:e.heartbeatMs,requestTimeoutMs:e.requestTimeoutMs,confirmationTimeoutMs:e.confirmationTimeoutMs,maxFailures:3,eligible:I,renew:b,recovery:{retryable:Q=>{const V=yt(Q);return V!==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(V):Q instanceof TypeError||Q instanceof Error&&Q.name==="AbortError"},onFailure:Q=>{d=!1,i.value=!0,s.value=Q,r.value=yt(Q)??"HOSTED_CONVERSATION_WATCH_EXPIRED"}},onExpired:()=>{i.value=!1,r.value??="HOSTED_CONVERSATION_WATCH_EXPIRED",e.onWatchExpired?.()}});function g(){const Q=t.value,V=n.value;return Q===void 0||V===void 0?void 0:zt(Q,V)}function R(){const Q=g();if(Q===void 0)return Promise.reject(new Error("HOSTED_CONVERSATION_REQUIRED"));const V=C.start(Q);return V===void 0?Promise.resolve():(V.catch(()=>{}),V)}function W(){a.value=!1,i.value=!1,S(),C.stop();const Q=v,V=u,U=y,A=l;v=void 0,u=void 0,y=void 0,l=void 0,d=!1,k=void 0,T=0,p=0,!(Q===void 0||V===void 0||U===void 0||A===void 0)&&e.request(`/api/nodes/${encodeURIComponent(Q)}/hosted-conversations/${encodeURIComponent(V)}/watch`,{method:"DELETE",body:JSON.stringify({workbenchConnectionId:U,watchId:A})}).catch(()=>{})}function w(){return W(),R()}function D(){a.value=!1,i.value=!1,C.pause()}function E(){document.visibilityState!=="visible"&&W()}function H(Q){if(!zo(Q))return!1;if(Q.type==="watch.failed")return Y(Q);if(Q.type!=="watch.hosted-conversation.snapshot"&&Q.type!=="watch.hosted-conversation.event"||!J(Q))return!1;if(k??=Q.nodeGeneration,Q.type==="watch.hosted-conversation.snapshot"){if(!Number.isInteger(Q.snapshotSequence)||Q.snapshotSequence<=T)return!1;const A=ea.safeParse(Q.payload);if(!A.success||A.data.conversation.id!==u||A.data.conversation.nodeId!==v)return S("HOSTED_CONVERSATION_RESPONSE_INVALID"),q(Fs()),!0;if(T=Q.snapshotSequence,e.installSnapshot(v,u,A.data),!J(Q)||(a.value=!0,!J(Q))||(r.value=void 0,s.value=void 0,i.value=!1,!J(Q)))return!0;const h=m;return h?.nodeId===v&&h.conversationId===u&&h.watchId===l&&(m=void 0,clearTimeout(h.timer),h.removeAbortListener(),h.resolve()),C.confirm(zt(v,u)),!0}const V=zo(Q.event)?Q.event:void 0;if(V===void 0||V.category!=="hosted-conversation"||!Number.isInteger(V.sequence)||V.sequence<=p)return!1;const U=zo(V.payload)?V.payload:void 0;return U===void 0||U.conversationId!==u?!1:(p=V.sequence,e.applyHostedPayload(U,V.sequence),J(Q)&&C.confirm(zt(v,u)),!0)}function J(Q){return d&&Q.workbenchConnectionId===e.workbenchConnectionId()&&Q.workbenchConnectionId===y&&Q.watchId===l&&Q.nodeId===v&&Q.conversationId===u&&typeof Q.nodeGeneration=="string"&&(k===void 0||Q.nodeGeneration===k)&&t.value===v&&n.value===u}function Y(Q){if(Q.watchType!=="hosted-conversation"||!J(Q)||typeof Q.code!="string")return!1;k??=Q.nodeGeneration,r.value=Q.code;const V=xa({error:Q},500);return s.value=V,i.value=!1,d=!1,S(Q.code,V),C.pause(),!0}function q(Q){a.value=!1,i.value=!1,s.value=Q,r.value=yt(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:R,restartSelectedConversationWatch:w,pauseSelectedConversationWatch:D,stopSelectedConversationWatch:W,handleVisibility:E,handleWatchEvent:H,markRestartFailure:q}}function Fs(){return new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}function Us(){return crypto.randomUUID().replace(/-/g,"")}function zo(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Ko(e,t){const n=t.replaceAll("\\","/"),a=n.startsWith("/"),s=n.replace(/^\/+/u,"").split("/");if(s.length===0||s.some(u=>u.length===0||u==="."||u===".."))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 u=s.slice(1).join("/");return u.length===0?void 0:e.find(y=>y.category===l&&y.relativePath===u)}if(a)return;const d=s.join("/"),v=e.filter(u=>u.relativePath===d);return v.length===1?v[0]:void 0}function kw(e){const t=$(),n=$(),a=$(),r=$(!1),s=$(),{turns:i,nextCursor:l,projection:d}=kp({onRecentWindowOverflow:()=>{X+=1,s.value=void 0,r.value=!1,ve=!1,oe=void 0,te()},limitHistory:Oa}),v=_(()=>a.value===void 0?void 0:{...a.value,turns:i.value}),u=pw({request:e.request,selectedNodeId:t,selectedConversationId:n,pageSize:e.pageSize??20,onActivity:(ie,O,G)=>{const pe=v.value;pe?.conversation.nodeId===ie&&pe.conversation.id===O&&G.version>pe.conversation.activity.version&&Fe({...pe,conversation:{...pe.conversation,activity:G}})}}),{conversations:y,hasMoreConversations:k,loadingConversations:T,loadingMoreConversations:p,loadMoreConversationsError:m,conversationsLoaded:S,loadConversations:N,loadMoreConversations:I,projectActivityMessage:b,conversationIsRunning:C,upsertConversation:g}=u,R=ww({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:z,applyHostedPayload:x}),{watchReady:W,watchFailureCode:w,watchFailure:D,watchLoading:E,selectedWatchId:H,beginSelectedConversationWatch:J,restartSelectedConversationWatch:Y,pauseSelectedConversationWatch:q,stopSelectedConversationWatch:Q,handleVisibility:V,handleWatchEvent:U}=R,A=bp(),h=$(new Set),F=_(()=>{const ie=le();return ie!==void 0&&h.value.has(ie)});let K=0,ve=!1,X=0,oe;function ge(){return new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}function le(){const ie=t.value,O=n.value;return ie===void 0||O===void 0?void 0:zt(ie,O)}function ae(ie,O,G){if(G!==void 0&&(G.conversation.nodeId!==ie||G.conversation.id!==O))throw ge();if(t.value===ie&&n.value===O){G!==void 0&&z(ie,O,G);return}Q(),n.value=void 0,a.value=void 0,d.restoreWindow([],null),r.value=!1,ve=!1,X+=1,s.value=void 0,oe=void 0,R.clearFailure(),G!==void 0&&z(ie,O,G),t.value=ie,n.value=O}function P(){Q(),n.value=void 0,t.value=void 0,a.value=void 0,d.restoreWindow([],null),r.value=!1,ve=!1,X+=1,s.value=void 0,oe=void 0,R.clearFailure()}function z(ie,O,G,pe=v.value===void 0){if(G.conversation.nodeId!==ie||G.conversation.id!==O)throw ge();const xe=G.historyVersion!==v.value?.historyVersion;pe||=xe;const He={turns:jo(G.turns),nextCursor:G.historyNextCursor,source:"official",snapshotSequence:G.snapshotSequence,readAt:Date.now()};pe?(X+=1,r.value=!1,s.value=void 0,ve=!1,xe&&d.resetHistory(),d.replaceAuthoritative(He)):d.mergeLatest({...He,nextCursor:ve?l.value:He.nextCursor}),Fe({...G,turns:i.value,historyNextCursor:l.value},!0),g(G.conversation)}async function ce(){const ie=We(),O=l.value,G=X;if(!(O===null||r.value)){r.value=!0,s.value=void 0;try{const pe=xi.safeParse(await e.request(`${he(ie)}/history?limit=10&cursor=${encodeURIComponent(O)}`));if(!pe.success)throw ge();if(!be(ie)||X!==G||v.value===void 0||l.value!==O)return;const xe=jo(pe.data.turns);d.mergeOlderPage({turns:xe,nextCursor:pe.data.nextCursor}),ve=!0,d.restore(i.value),Se({...v.value,historyNextCursor:pe.data.nextCursor})}catch(pe){be(ie)&&X===G&&l.value===O&&(s.value=pe)}finally{X===G&&(r.value=!1)}}}function te(){if(oe!==void 0)return oe;const ie=X,O=(async()=>{const G=We(),pe=xi.safeParse(await e.request(`${he(G)}/history?limit=10`));!pe.success||!be(G)||X!==ie||v.value===void 0||(d.replaceAuthoritative({turns:jo(pe.data.turns),nextCursor:pe.data.nextCursor,source:"official",readAt:Date.now()}),Se({...v.value,historyNextCursor:pe.data.nextCursor}))})().catch(()=>{}).finally(()=>{oe===O&&(oe=void 0)});return oe=O,O}function x(ie,O){const G=v.value;if(G!==void 0){if(ie.kind==="template-changed"&&ie.conversationId===G.conversation.id){Ye(We(),H());return}if(ie.kind==="runtime"&&Xt(ie.runtimeEvent)){ee(G,ie.runtimeEvent,O);return}if(ie.kind==="files"&&Array.isArray(ie.files)){const pe=new Map;for(const xe of ie.files){const He=hf.safeParse(xe);if(!He.success||He.data.conversationId!==G.conversation.id)return;pe.set(He.data.id,He.data)}if(ie.error!==null&&!Hs(ie.error))return;Fe({...G,files:[...pe.values()],error:ie.error});return}if((ie.kind==="configuration"||ie.kind==="conversation")&&ie.conversation!==void 0){const pe=Ca.safeParse(ie.conversation);if(!pe.success||pe.data.id!==G.conversation.id||pe.data.nodeId!==G.conversation.nodeId)return;Fe({...G,conversation:pe.data}),g(pe.data);return}if(ie.kind==="upgrade"&&Xt(ie.upgrade)){const pe=Ca.safeParse(ie.upgrade.conversation);if(!pe.success||pe.data.id!==G.conversation.id||pe.data.nodeId!==G.conversation.nodeId||ie.upgrade.error!==null&&!Hs(ie.upgrade.error))return;Fe({...G,conversation:pe.data,error:ie.upgrade.error}),g(pe.data);return}if(ie.kind==="run"){const pe=ea.innerType().shape.run.safeParse(Vs(ie.run,G.run));pe.success&&Fe({...G,run:pe.data},!0)}}}function ee(ie,O,G){if(O.kind!=="RUN"&&O.kind!=="ITEM"&&O.kind!=="DELTA"||typeof O.executionId!="string"||O.executionId.length===0||!Number.isInteger(O.sequence)||O.sequence<0||!Number.isInteger(O.createdAt)||!Xt(O.payload))return;const pe=O.executionId,xe=typeof O.turnId=="string"&&O.turnId.length>0?O.turnId:pe,He=Math.max(0,O.createdAt);se(ie,pe,xe,He,G);const fe=i.value.findLast(Oe=>Oe.id===xe||Oe.runId===pe);if(fe===void 0)return;if(O.kind==="ITEM"){if(d.mergeItem(pe,O.payload.item,G,He)){const Oe=Xt(O.payload.item)?O.payload.item:void 0,Pe=Oe===void 0||!Xt(Oe.payload)?void 0:Oe.payload;if(Oe?.kind==="user_message"&&typeof Pe?.clientMessageId=="string"&&Pe.clientMessageId.length>0){const de=i.value.findLast(Re=>Re.id===xe||Re.runId===pe);de!==void 0&&d.mergeLatest({turns:[de],nextCursor:null,source:"runtime",snapshotSequence:G,readAt:He})}Se(ie)}return}if(O.kind==="DELTA"){d.mergeTextDelta(pe,O.payload,G,He)&&Se(ie);return}const Ce=Iw(O.payload.status);if(Ce===void 0)return;const ke=Sw(Ce);d.mergeLatest({turns:[{...fe,status:Ce,items:ke?fe.items.map(Oe=>Oe.kind==="assistant_message"&&Oe.status==="IN_PROGRESS"?{...Oe,status:"COMPLETED",completedAt:He}:Oe):fe.items,completedAt:ke?He:null}],nextCursor:null,source:"runtime",snapshotSequence:G,readAt:He}),Se(ie)}function se(ie,O,G,pe,xe){i.value.some(He=>He.id===G||He.runId===O&&He.id===G)||d.mergeLatest({turns:[{id:G,sessionId:ie.conversation.sessionId,runId:O,status:"RUNNING",items:[],startedAt:pe,completedAt:null}],nextCursor:null,source:"runtime",snapshotSequence:xe,readAt:pe})}function Se(ie){Fe({...ie,historyNextCursor:l.value},!0)}function Fe(ie,O=!1){const{turns:G,...pe}=ie;a.value=pe,O&&(K+=1)}function We(){const ie=t.value,O=n.value,G=v.value;if(ie===void 0||O===void 0||G===void 0||G.conversation.nodeId!==ie||G.conversation.id!==O)throw new Error("HOSTED_CONVERSATION_REQUIRED");return{nodeId:ie,conversationId:O,snapshot:G,historyRevision:K}}function be(ie){return t.value===ie.nodeId&&n.value===ie.conversationId}function he(ie){return`/api/nodes/${encodeURIComponent(ie.nodeId)}/hosted-conversations/${encodeURIComponent(ie.conversationId)}`}function Ue(ie,O,G){if(!Xt(ie)||!Ma(ie,G?["conversation","run"]:["conversation"]))throw ge();const pe=Ca.safeParse(ie.conversation),xe=ea.innerType().shape.run.safeParse(G?ie.run:O.snapshot.run);if(!pe.success||!xe.success||pe.data.nodeId!==O.nodeId||pe.data.id!==O.conversationId)throw ge();return{conversation:pe.data,run:xe.data}}function Qe(ie,O,G){if(!Xt(ie)||!Ma(ie,["conversation"]))throw ge();const pe=Ca.safeParse(ie.conversation);if(!pe.success||pe.data.nodeId!==O||pe.data.id!==G)throw ge();return pe.data}async function rt(ie){const O=We();if(F.value)throw new Error("HOSTED_CONVERSATION_STATE_INVALID");if(!W.value)throw new Error("HOSTED_CONVERSATION_WATCH_NOT_READY");const G=A.begin(gr(O.nodeId,O.conversationId));if(G===void 0)throw new Error("HOSTED_CONVERSATION_MESSAGE_SUBMISSION_ACTIVE");ne(O.snapshot,ie);try{const pe=await e.request(`${he(O)}/messages`,{method:"POST",body:JSON.stringify({clientMessageId:ie.clientMessageId,prompt:ie.prompt,attachmentIds:[...ie.attachmentIds],...ie.modelId===void 0?{}:{modelId:ie.modelId},...ie.deliveryIntent===void 0?{}:{deliveryIntent:ie.deliveryIntent}})}),xe=Ue(pe,O,!0);if(xe.run===null)throw ge();if(be(O)&&v.value!==void 0){d.updateOptimisticUserMessage(ie.clientMessageId)&&Se(v.value);const He=Rn(xe.conversation,v.value.conversation);Fe({...v.value,conversation:He,run:Vs(xe.run,v.value.run)},!0),g(He)}return xe.run}catch(pe){throw be(O)&&v.value!==void 0&&d.removeOptimisticUserMessage(ie.clientMessageId)&&Se(v.value),pe}finally{G()}}function ne(ie,O){const G=Date.now();d.mergeLatest({turns:[{id:O.clientMessageId,sessionId:ie.conversation.sessionId,runId:null,status:"PREPARING",items:[{id:O.clientMessageId,kind:"user_message",status:"COMPLETED",payload:{clientMessageId:O.clientMessageId,text:O.prompt,contexts:[],delivery:"PENDING"},startedAt:G,completedAt:G}],startedAt:G,completedAt:null}],nextCursor:null,source:"runtime",readAt:G}),Se(ie)}async function me(ie){const O=We();if(F.value)throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const G=await e.request(`${he(O)}/config`,{method:"PATCH",body:JSON.stringify({modelId:ie.modelId})}),pe=Ue(G,O,!1);if(be(O)&&v.value!==void 0){const xe=Rn(pe.conversation,v.value.conversation);Fe({...v.value,conversation:xe}),g(xe)}return pe.conversation}async function Ne(ie,O,G){const pe=We();if(F.value)throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const xe=ea.safeParse(await e.request(`${he(pe)}/rollback`,{method:"POST",body:JSON.stringify({turnId:ie,boundary:O,...G===void 0?{}:{itemId:G}})}));if(!xe.success||xe.data.conversation.nodeId!==pe.nodeId||xe.data.conversation.id!==pe.conversationId||xe.data.conversation.sessionId!==pe.snapshot.conversation.sessionId||xe.data.conversation.templateId!==pe.snapshot.conversation.templateId||xe.data.template.id!==pe.snapshot.template.id||xe.data.template.nodeId!==pe.nodeId)throw ge();const He=v.value;return be(pe)&&He!==void 0&&(He===pe.snapshot?z(pe.nodeId,pe.conversationId,xe.data,!0):He.conversation.nodeId===pe.nodeId&&He.conversation.id===pe.conversationId&&K===pe.historyRevision&&z(pe.nodeId,pe.conversationId,{...xe.data,nodeAppVersion:He.nodeAppVersion??xe.data.nodeAppVersion,conversation:Rn(xe.data.conversation,He.conversation),template:He.template,files:He.files,models:He.models,error:He.error},!0)),xe.data}async function Ve(ie,O=t.value,G=n.value){if(O===void 0||G===void 0)throw new Error("HOSTED_CONVERSATION_REQUIRED");const pe={nodeId:O,conversationId:G},xe=await e.request(he(pe),{method:"PATCH",body:JSON.stringify({...ie.title===void 0?{}:{title:ie.title},...ie.pinned===void 0?{}:{pinned:ie.pinned}})}),He=Qe(xe,O,G);if(be(pe)&&v.value!==void 0){const fe=Rn(He,v.value.conversation);return Fe({...v.value,conversation:fe}),g(fe),fe}return g(He),He}async function Je(){const ie=We(),O=await e.request(`${he(ie)}/interrupt`,{method:"POST",body:"{}"});if(!Xt(O)||!Ma(O,["interrupted"])||typeof O.interrupted!="boolean")throw ge();return O.interrupted}async function Ie(ie=t.value,O=n.value){if(ie===void 0||O===void 0)throw new Error("HOSTED_CONVERSATION_REQUIRED");const G={nodeId:ie,conversationId:O},pe=be(G)&&H()!==void 0;be(G)&&Q();let xe;try{const He=gf.safeParse(await e.request(he(G),{method:"DELETE",body:"{}"}));if(!He.success||He.data.deletedConversationId!==O)throw ge();xe=He.data.deletedConversationId}catch(He){throw pe&&be(G)&&Y().catch(()=>{}),He}return u.remove(ie,O),be(G)&&P(),{deletedConversationId:xe}}async function Ke(){const ie=We();return(await Bl(e.request)).filter(G=>G.nodeId===ie.nodeId&&G.available)}async function Ye(ie,O){if(!(!be(ie)||H()!==O))try{await Y()}catch(G){be(ie)&&R.markRestartFailure(G)}}async function at(ie,O){const G=We(),pe=G.snapshot.conversation;if(pe.templateId===ie)return;if(pe.templateId!==O)throw new Error("HOSTED_CONVERSATION_TEMPLATE_CONFLICT");if(pe.status!=="ACTIVE"||!W.value||G.snapshot.run!==null||pe.activity.status!=="IDLE"||F.value||A.pending.value&&A.context.value===gr(G.nodeId,G.conversationId))throw new Error("HOSTED_CONVERSATION_STATE_INVALID");const xe=zt(G.nodeId,G.conversationId),He=H();h.value.add(xe);try{const fe=mf.safeParse(await e.request(`${he(G)}/template`,{method:"POST",body:JSON.stringify({templateId:ie,expectedTemplateId:O})}));if(!fe.success||fe.data.conversation.id!==G.conversationId||fe.data.conversation.nodeId!==G.nodeId||fe.data.conversation.sessionId!==pe.sessionId||fe.data.template.id!==ie)throw ge();await Ye(G,He)}catch(fe){const Ce=yt(fe);throw(Ce===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(Ce))&&await Ye(G,He),fe}finally{h.value.delete(xe)}}const{deleteFile:Ze,readFile:Te,contentUrl:Ee,uploadFile:_e}=gw({request:e.request,requireContext:We,templateChanging:()=>F.value,removeFile:(ie,O)=>{be(ie)&&v.value!==void 0&&Fe({...v.value,files:v.value.files.filter(G=>G.id!==O)})},acceptFile:(ie,O)=>{if(be(ie)&&v.value!==void 0){const G=new Map(v.value.files.map(pe=>[pe.id,pe]));G.set(O.id,O),Fe({...v.value,files:[...G.values()]})}}});return{conversations:y,hasMoreConversations:k,loadingConversations:T,loadingMoreConversations:p,loadMoreConversationsError:m,conversationsLoaded:S,selectedNodeId:t,selectedConversationId:n,snapshot:v,turns:i,historyNextCursor:l,loadingOlderHistory:r,olderHistoryError:s,watchReady:W,watchFailureCode:w,selectedWatchId:H,watchFailure:D,watchLoading:E,messageSubmitting:A.pending,messageSubmissionContext:A.context,templateChanging:F,listTemplateOptions:Ke,switchTemplate:at,loadConversations:N,loadMoreConversations:I,projectActivityMessage:b,conversationIsRunning:C,rememberConversation:g,selectConversation:ae,clearSelectedConversation:P,beginSelectedConversationWatch:J,restartSelectedConversationWatch:Y,pauseSelectedConversationWatch:q,stopSelectedConversationWatch:Q,handleWatchEvent:U,handleVisibility:V,loadOlderHistory:ce,sendMessage:rt,rollback:Ne,updateConfiguration:me,updateMetadata:Ve,interrupt:Je,deleteConversation:Ie,deleteFile:Ze,readFile:Te,contentUrl:Ee,uploadFile:_e}}function Vs(e,t){if(!Xt(e)||typeof e.id!="string")return t;const n=bw(e.status);if(n===void 0)return t;if(t?.id===e.id){const s=qs(t.status);if(s===3||qs(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 qs(e){return e==="STARTING"?0:e==="RUNNING"?1:e==="CANCELLING"?2:3}function bw(e){if(e==="STARTING"||e==="RUNNING"||e==="CANCELLING"||e==="SUCCEEDED"||e==="FAILED"||e==="CANCELLED"||e==="INTERRUPTED")return e}function Hs(e){return Xt(e)&&Ma(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 jo(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 Iw(e){if(e==="RUNNING"||e==="SUCCEEDED"||e==="FAILED"||e==="INTERRUPTED")return e}function Sw(e){return["SUCCEEDED","FAILED","CANCELLED","INTERRUPTED","LOST"].includes(e)}function Ma(e,t){const n=Object.keys(e).sort(),a=[...t].sort();return n.length===a.length&&n.every((r,s)=>r===a[s])}function gr(e,t){return zt(e,t)}function Xt(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}const Bs="mar.prompt-completion.enabled";function Cw(){let e=!0;try{e=localStorage.getItem(Bs)!=="false"}catch{}const t=bt(e);return{enabled:dt(t),setEnabled(n){localStorage.setItem(Bs,String(n)),t.value=n}}}let Gs;function Tw(){return Gs??=Cw(),Gs}class Ew{constructor(t){this.options=t}options;connection;pageEpoch="";sequence=0;bind(t){return _(()=>{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,d,v="MANUAL")=>!n||!a||!s()||l.aborted?Promise.reject(_o()):this.complete(n,a,i,l,s,v,d??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 d={requestId:crypto.randomUUID(),pageEpoch:this.pageEpoch,intentSequence:++this.sequence},v=new AbortController,u=()=>v.abort(),y=()=>{const T=new AbortController,p=setTimeout(()=>T.abort(),2e3);this.post(t.nodeId,"cancel",{target:t.target,workbenchConnectionId:n,request:d},T.signal,!0).catch(()=>{}).finally(()=>clearTimeout(p))};r.addEventListener("abort",u,{once:!0}),v.signal.addEventListener("abort",y,{once:!0});const k=setTimeout(u,12e3);try{const T=yf.parse(await this.post(t.nodeId,"context",{target:t.target,runner:t.runner,sessionId:t.sessionId,pageEpoch:d.pageEpoch,workbenchConnectionId:n},v.signal));if(v.signal.throwIfAborted(),!s())throw v.abort(),_o();const p={...d,trigger:i,completionMode:a.text.length===0?"NEXT":"REWRITE",...l?.length?{attention:l}:{},draft:a.text,cursorPosition:a.cursor,draftRevision:d.intentSequence,runner:t.runner,sessionId:t.sessionId,contextVersion:T.contextVersion,historyGeneration:T.historyGeneration},m=wf.parse(await this.post(t.nodeId,"generate",{target:t.target,workbenchConnectionId:n,request:p},v.signal));if(v.signal.throwIfAborted(),!s()||m.requestId!==d.requestId||m.cursorPosition!==a.cursor||m.draftRevision!==p.draftRevision||m.contextVersion!==T.contextVersion||m.historyGeneration!==T.historyGeneration)throw _o();return m}finally{clearTimeout(k),r.removeEventListener("abort",u),v.signal.removeEventListener("abort",y)}}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 _o(){return new DOMException("Prompt completion was cancelled.","AbortError")}function Rw(e){const t=$([]),n=$(),a=$([]),r=$({}),s=$({}),i=$();function l(g,R,W=[]){t.value=[...g],a.value=[...new Set(W.filter(w=>typeof w=="string"&&w.length>0))],s.value=Object.fromEntries(Object.entries(R).flatMap(([w,D])=>typeof w=="string"&&Array.isArray(D)?[[w,D.filter(E=>typeof E=="string")]]:[]))}function d(g){const R=new Map(a.value.map((W,w)=>[W,w]));return[...g].sort((W,w)=>(R.get(W.id)??Number.MAX_SAFE_INTEGER)-(R.get(w.id)??Number.MAX_SAFE_INTEGER))}function v(g,R,W){const w=d(g).map(E=>E.id),D=w.indexOf(R);!Number.isInteger(W)||D<0||W<0||W>=w.length||D===W||(w.splice(D,1),w.splice(W,0,R),a.value=w,e.persist())}function u(g,R){r.value={...r.value,[g]:R};const W=R.map(D=>D.id),w=s.value[g]??[];s.value={...s.value,[g]:[...w.filter(D=>W.includes(D)),...W.filter(D=>!w.includes(D))]}}function y(g){return r.value[g]??[]}function k(g){const R=s.value[g]??[],W=new Map(R.map((w,D)=>[w,D]));return[...y(g)].sort((w,D)=>(W.get(w.id)??Number.MAX_SAFE_INTEGER)-(W.get(D.id)??Number.MAX_SAFE_INTEGER))}function T(g){return t.value.includes(g)?(t.value=t.value.filter(R=>R!==g),!1):(t.value=[...t.value,g],!0)}function p(g){(t.value.length!==1||t.value[0]!==g.nodeId)&&(t.value=[g.nodeId]),n.value={nodeId:g.nodeId,workspaceId:g.workspaceId}}function m(g,R,W){i.value={nodeId:R,workspaceId:W};const w=g.dataTransfer;w!==null&&(w.setData("text/plain",W),w.effectAllowed="move")}function S(){i.value=void 0}function N(g,R,W){const w=i.value;S(),!(w===void 0||w.nodeId!==g||w.workspaceId===R)&&b(g,w.workspaceId,R,W)}function I(g,R,W){const w=k(g),D=w.find(Y=>Y.id===R);if(D===void 0||W!==-1&&W!==1)return;const E=D.groupName?.trim()||null,H=w.filter(Y=>(Y.groupName?.trim()||null)===E),J=H[H.indexOf(D)+W];J!==void 0&&b(g,R,J.id)}function b(g,R,W,w){const D=k(g).map(Y=>Y.id),E=D.indexOf(R),H=D.indexOf(W);if(E<0||H<0||E===H)return;const J=w===void 0?H:H+(w==="after"?1:0)-(E<H?1:0);J!==E&&(D.splice(E,1),D.splice(J,0,R),s.value={...s.value,[g]:D},e.persist())}function C(g){a.value=a.value.filter(w=>w!==g);const R={...r.value};delete R[g],r.value=R;const W={...s.value};delete W[g],s.value=W,t.value=t.value.filter(w=>w!==g)}return{expandedNodeIds:t,revealTarget:n,revealWorkspace:p,nodeOrder:a,orderedNodes:d,moveNode:v,moveWorkspace:I,workspacesByNode:r,workspaceOrderByNode:s,draggingWorkspace:i,restore:l,cacheWorkspaces:u,workspacesForNode:y,orderedWorkspaces:k,toggleNode:T,startDrag:m,endDrag:S,reorder:N,removeNode:C}}const zs=8,Aw=5,Nw=15e3,Dw=15e3,Pw=45e3,Ow=1e4;function Lw(e){const t=e.management;function n(){return $d.refreshRecentConversationTurns()}const a=rw({navigation:e.navigation,sessionPageSize:No,onUnauthenticated:()=>po(),onWorkspaceRunCompleted:oi,onNotificationClick:Ad,visibleWorkspaceTargets:()=>Jc(),visibleHostedTarget:()=>{const re=Ve.selectedNodeId.value,$e=Ve.selectedConversationId.value;return re===void 0||$e===void 0?void 0:{nodeId:re,conversationId:$e}}}),r=a.navigation;let s=()=>{};const{view:i,settingsSection:l,managementSection:d,mobileViewport:v,sidebarCollapsed:u,mobileSidebarOpen:y,mobileWorkspaceSurface:k,start:T,dispose:p,closeMobileSidebar:m,selectSettings:S,selectManagement:N,openMobileWorkspaceSurface:I,closeMobileWorkspaceSurface:b}=r,C=a.admin,{admin:g,loaded:R,loading:W,sessions:w,newPassword:D,passwordValidationError:E,csrfToken:H}=C,J=a.http,{request:Y,renewCsrfToken:q}=J,Q=Ja({csrfToken:()=>H.value,renewCsrfToken:q}),V=tt;wt(Ro);const U=Tp(),A=Yy(),h=A.target,F=Py(h),K=F.sessionId,ve=F.draftOpen,X=F.draftTarget,oe=Oy({target:X}),ge=Ch({workspaceTarget:h,onNodeConnected:re=>Oi(re,!1),request:Y,notice:V,errorMessage:lt}),{nodes:le,serverVersion:ae,workspaces:P,manifest:z,manifestLoading:ce}=ge,te=fh({workspaceTarget:h,nodes:le,workspaces:P,nodeManifest:z}),{selectedWorkspace:x,workspaceHost:ee,nodeReady:se,filesReady:Se,terminalReady:Fe}=te,We=_(()=>Se.value),be=_(()=>Se.value),he=_(()=>be.value),Ue=_(()=>Se.value),Qe=_(()=>h.value?.nodeId),rt=_(()=>h.value?.workspaceId),ne=_(()=>!v.value||k.value==="conversation"),me=$(),Ne={},Ve=kw({request:Y,workbenchConnectionId:()=>me.value,heartbeatMs:Dw,requestTimeoutMs:Ow,confirmationTimeoutMs:Pw}),Je=qm({enabled:()=>!v.value,context:()=>({view:i.value,...Qe.value===void 0?{}:{nodeId:Qe.value},...rt.value===void 0?{}:{workspaceId:rt.value},...K.value===void 0?{}:{sessionId:K.value}})}),Ie=Up({diagnostics:Je,canConnect:()=>g.value.authenticated&&!g.value.mustChangePassword,onEvent:re=>{fe.project(re)||Et.events.applyBroadcast(re)},onNotificationMessage:re=>fe.projectServerMessage(re)||Ve.projectActivityMessage(re),onResyncRequired:Dv,onNodeConnection:(re,$e)=>{Fd(re,$e),$e?Bn().then(()=>Ze.refresh(re,!0)):Ze.nodeInvalidated(re)},onNodeUpgrade:(re,$e)=>{const ft=$e===null?null:Nm($e);ft!==void 0&&ge.applyUpgrade(re,ft)},onNodeReplaced:re=>{Ze.nodeInvalidated(re),re===Qe.value&&tt(c("generated.workbenchPageController.aNewerInstanceWithTheSameIdentity"),"warning")},onReconnect:()=>{if(i.value==="conversations"&&Ve.selectedConversationId.value!==void 0){Ne.current?.restartHostedConversation().catch(()=>{});return}i.value==="nodes"&&(rt.value!==void 0&&Ne.current?.restartWorkspace(rt.value),K.value!==void 0&&Sa(0,!0),tn.restoreVisibleWatch())},onConnectionRestored:()=>{ge.clearUpgradeProgress(),Bn(),fe.recover().catch(()=>{})},onDisconnected:()=>{Ne.current?.pause(),Ze.connectionLost()},onReady:(re,$e)=>{if(me.value=re,Ze.connectionReady(re,$e),!$e&&i.value==="conversations"&&Ve.selectedConversationId.value!==void 0){Ne.current?.beginHostedConversation().catch(()=>{});return}i.value==="nodes"&&(!$e&&rt.value!==void 0&&Ne.current?.startWorkspace(rt.value),!$e&&K.value!==void 0&&Sa(0,!0),$e||tn.restoreVisibleWatch())},onWatchEvent:re=>{Ne.current?.handleEvent(re)},onDirectMessage:re=>Ze.handleDirect(re),onTerminalDirectMessage:re=>Ze.handleTerminalDirect(re),onUnauthenticated:()=>po(),onInvalidMessage:()=>V(c("generated.workbenchPageController.receivedAnUnreadableLiveUpdate"),"error")}),{restore:Ke,connect:Ye,close:at}=Ie,Ze=$m({nodes:()=>le.value,selectedNode:()=>Qe.value,discover:async re=>(await Y("/api/nodes/"+encodeURIComponent(re)+"/workbench-capabilities")).manifest,sendDirect:re=>Ie.sendDirect(re),sendTerminalDirect:re=>Ie.sendTerminalDirect(re)}),{workspace:Te,terminal:Ee}=Ze,{workspaceDirectAvailable:_e,workspaceDirectDescription:ie,workspaceLocalFileManagerAvailable:O}=Ze,G=Ay({request:Y,http:Q,manifest:re=>ge.restoreNodeManifest(re),available:re=>_e(re),direct:Te,...e.pwaApplication===void 0?{}:{activeWorker:e.pwaApplication.activeWorker}}),pe=a.paging,{visibleLimits:xe,nextCursors:He}=pe,fe=a.notifications,{start:Ce,dispose:ke}=fe,Oe=Uh({application:e.pwaApplication,notifications:fe,message:tt}),{state:Pe,checking:de,start:Re,check:Le,apply:et}=Oe,mt=Cp({context:()=>X.value,notice:V,request:Y,csrfToken:H,renewCsrfToken:q,direct:{generation:re=>re===Qe.value&&z.value?.directTransfer?.upload===!0?z.value.nodeGeneration:void 0,upload:re=>Te.upload(re)},onUnauthenticated:()=>po()}),vt=xy();function pt(re){const $e=h.value;if($e===void 0||!vt.current($e).tools.includes("files")){V(c("generated.workbenchPageInteractionService.filePreviewIsCurrentlyUnavailable"),"error");return}vt.current($e).active?.kind==="session"&&Ia(),vt.openHtml($e,re)&&v.value&&I("inspector")}const Lt=_(()=>{const re=h.value;if(re===void 0)return;const $e=vt.current(re).active;return $e?.kind==="session"?{kind:"session",...re,sessionId:$e.sessionId}:void 0}),wn=Cs({draftTarget:X,drafts:oe,attachments:mt,submissions:U,onConversationOverflow:()=>{n()}}),qn=Cs({pane:"aside",draftTarget:Lt,drafts:oe,attachments:mt,submissions:U,onConversationOverflow:()=>Co()}),Mt=wn.state,da=qn.state,ua=Mt.submission,{skillTokens:va,references:fa,persist:Xa}=Mt.draft,Za=Mt.skillTokens,xt=Mt.run,{runs:pa}=xt,Ae=bm({groupingSupported:()=>z.value?.sessionGroups?.apiVersion===1,runs:pa,workspaceTarget:h,selectedSessionId:K,setSelectedSessionId:F.setSession,paging:pe,pageSize:No,tabId:Sn,request:Y,notice:V,errorMessage:lt}),ze=Ae.projection,nt=ze.sessions,st=Mt.conversation,{turns:kt,contextUsage:qt,currentDetailRequest:$t}=st,Wt=$(),jt=new Map,{preview:ga,previewOpen:ct,clearAll:ht,openPreview:ma}=mt,ha=gm({workspaceTarget:h,request:Y,notice:V,errorMessage:lt}),{profiles:Ec,loading:Rc}=ha,Or=Mt.queueProjection,Lr=Or.queue,Ac=st.projection,Nc=Mt.scroll,{element:Dc,following:Pc}=Nc,Wr=Xy(Sn),kn=Wr.cache,_t=Rw({persist:yo}),{expandedNodeIds:eo,nodeOrder:Mr,workspacesByNode:xr,workspaceOrderByNode:$r,draggingWorkspace:Oc}=_t,Lc=_(()=>_t.orderedNodes(le.value));function Wc(re,$e){_t.moveNode(le.value,re,$e)}const en=Hm({maxTabs:zs,tabId:Sn,workspaceLabel:Jn,nodeLabel:La,onEvict:re=>{fo(re.nodeId,re.workspaceId),vt.clearHtmlWorkspace(re),jt.get(re.id)?.release()},onChange:yo}),bn=en.tabs,ya=Bm({sidebarCollapsed:u,expandedNodeIds:eo,nodeOrder:Mr,workspaceOrderByNode:$r,workspaceTabs:bn,maxWorkspaceTabs:zs,restoreTree:_t.restore,restoreTabs:en.restore}),Fr=Rh({navigation:r,management:t,admin:g,defaultManagement:e.systemManagementSection,layout:ya,transition:(re,$e)=>ri.transition(re,$e),recoverNotifications:()=>fe.recover()}),{navigationItems:Mc,settingsItems:xc,managementItems:$c,selectNavigation:Fc,hostedConversationMobileFilesOpen:Ur,hostedConversationMobileHistoryOpen:Vr,closeHostedConversationMobileHistory:qr,closeHostedConversationMobileFiles:Uc}=Fr,to=Ip({workspaceTarget:h,request:Y}),Vc=to,no=fw({request:Y}),ao=no,qc=Tw(),Hc=new Ew({request:Y,connectionId:()=>me.value}),Hn=$(!1),Ht=Ey({page:()=>{},externalTarget:()=>h.value,target:()=>Se.value?h.value:void 0,fileWriteEnabled:()=>Ue.value,prewarmEnabled:()=>he.value,onPopupBlocked:()=>V(c("generated.workspaceInspector.theBrowserBlockedTheFilePreviewWindow"),"error"),resolveRepositoryPath:(re,$e)=>It.git.resolveRepositoryPath(re,$e),reveal:(re,$e)=>It.revealFileTree(re,$e),comparison:re=>It.git.comparison(re),onOpenFailure:(re,$e)=>V(Cr(re,$e),"error",re),onDownloadFailure:(re,$e)=>It.reportFailure(re,$e),onRevealFailure:re=>V(lt(re),"error",re),access:re=>G.forWorkspace(re),preview:{onWritten:re=>{h.value?.nodeId===re.nodeId&&h.value.workspaceId===re.workspaceId&&It.refreshAfterWrite()}},navigation:{http:Q,onFailure:re=>It.reportFailure(re,c("fileEditor.definitions")),onFileTarget:(re,$e)=>Ht.openNavigationTarget(re,$e)},lifecycle:{ready:()=>Se.value,workspaceKind:()=>x.value?.kind,isReloadingForUpdate:()=>e.pwaApplication?.isReloadingForUpdate()===!0,bootstrap:{authenticated:()=>g.value.authenticated,hasNodes:()=>le.value.length>0,manifestLoading:()=>ce.value,selectWorkspace:nn,captureRoute:er}}}),It=ky({target:h,http:Q,workspacePath:()=>x.value?.path,workspaceKind:()=>x.value?.kind,workbench:Ht,updateBranch:(re,$e)=>hi(h.value?.nodeId??"",re,$e),queueUploads:re=>Id(re),notice:V,errorMessage:lt,cache:()=>kn,ready:()=>Se.value,visible:()=>Hn.value,activeTool:()=>{const re=h.value,$e=re===void 0?void 0:vt.current(re).active;return $e?.kind==="tool"?$e.id:void 0},searchReady:()=>We.value,historySupported:()=>z.value?.git?.supportsHistory===!0,isGit:()=>x.value?.kind==="GIT_WORKSPACE",workspace:()=>x.value,updateWorkspace:Bu}),{files:Hr,git:oo,search:Bc}=It,Gc=It.openGitChange,zc=It.openHistoryDiff,Kc=oo.adjacentDiff,jc=It.reportFailure,_c=It.loadDiff,Yc=Ht.downloadPath,Br=Ht.openExternal,Gr=Ht.openHtmlExternal;wt(()=>{It.dispose(),Ht.dispose()});const zr={view:i,cache:kn,capabilities:ge,profiles:ha,skills:to,prompts:no,discovery:Ae,mobileViewport:v,selectedWorkspace:x,request:Y,notice:V,errorMessage:lt,ensureDraftSupported:re=>mv(re),connectionId:()=>me.value,workspaceRevision:A.currentSelectionRevision,completion:{client:Hc,enabled:qc.enabled,ready:se,host:ee,attention:()=>Wt.value?.predictionAttention?.()??[]},files:{attachments:re=>G.forWorkspace(re).attachments,openChange:re=>Ht.openTab(re),openFile:(re,$e,ft,Pt,Lv)=>ju(re,$e,ft,Pt,void 0,Lv)},identity:{replace:Av,transfer:Rv},events:{invalidateWorkspace:It.invalidateWorkspace,onNodeConnected:Oi},watchConnection:{waitReady:Ie.waitForReady,connected:()=>Ie.connected.value}},Et=wn.connect(zr,{kind:"main",visible:ne,refresh:()=>Sa(),open:Ln,markRead:ro,navigation:()=>an,selection:F,saveCurrent:On,closeMobile:b,createDraft:re=>gv(re),beginWatch:re=>ri.requestSessionWatch(re),replaceSession:Ni}),Qc=da.conversation.loadingInitial,Kr=_(()=>Hn.value&&Lt.value!==void 0&&i.value==="nodes"&&(!v.value||k.value==="inspector")&&Aa(le.value.find(re=>re.id===Lt.value?.nodeId)?.nodeAppVersion,z.value?.sessionAside)),jr=Vh({workspaceTarget:h,selectedWorkspace:x,workspaceHost:_(()=>ee.value),view:i,mainSurfaceVisible:ne,draftSessionOpen:ve,selectedSessionId:K,mainLoading:Mt.conversation.loadingInitial,asideVisible:Kr,asideTarget:Lt,asideLoading:Qc,markSessionRead:fe.markSessionRead});function Jc(){return jr.targets()}function ro(re,$e,ft){return jr.markRead(re,$e,ft)}const tn=qn.connect(zr,{kind:"aside",target:Lt,visible:Kr,refresh:Co,open:Sv,markRead:ro,replaceSession:(re,$e)=>an.replaceAsideSession(re,$e)}),io=Et.images,dn=bt(io);for(const re of[Et.images,tn.images])Ge(re.previewOpen,$e=>{!$e||dn.value===re||(dn.value.previewOpen.value=!1,dn.value=re)},{flush:"sync"});const Xc=_({get:()=>dn.value.preview.value,set:re=>dn.value.preview.value=re}),Zc=_({get:()=>dn.value.previewOpen.value,set:re=>dn.value.previewOpen.value=re}),{retain:ed}=io,so=Et.configuration,{selectedSession:td}=so,{runner:lo,modelId:co,effort:_r,access:Yr,apply:nd}=so,ad=Et.runner,uo=Et.references,od=Et.presentation,{canUseComposer:rd,canDeleteSession:Qr,sessionActivityClockNow:id,documentTitle:sd,visibleWorkspaceSessions:ld,canLoadMoreWorkspaceSessions:cd,onlineNodeCount:dd}=mh({context:te,workspaceTarget:h,sessions:nt,nodes:le,visibleLimits:xe,nextCursors:He,pageSize:No,tabId:Sn,workspaceLabel:Jn,pane:od}),Jr=!0,ud=!0,vd=!0,{ensureFresh:fd}=to;Ge(Vc.skills,Za.reconcile),Ge(va,re=>{re.length>0&&fd()},{immediate:!0});const{refreshNodes:Bn,refreshServerCapabilities:pd,refreshNodeManifest:Xr,invalidateNodeManifest:gd,retainNodeManifests:Zr}=ge;Ge([bn,Qe],([re,$e])=>Zr(new Set([...re.map(ft=>ft.nodeId),...$e===void 0?[]:[$e]])),{flush:"sync"});const vo=_(()=>Qe.value===void 0||rt.value===void 0?void 0:Sn(Qe.value,rt.value)),md=Th({host:ee,manifest:z,loading:ce}),ei=Am({canDeleteSession:Qr,beginSubmission:ua.begin,workspaceTarget:h,request:Y,renewCsrfToken:q,sessionPathId:Xo,nodeLabel:La,sessionTitle:Ua,notice:V,errorMessage:lt}),hd=Lm({workspaceTarget:h,csrfToken:H,request:Y,renewCsrfToken:q,direct:{generation:re=>re===Qe.value&&z.value?.directTransfer?.upload===!0?z.value.nodeGeneration:void 0,upload:re=>Te.upload(re)},onFilesChanged:()=>It.invalidate("files"),onTaskChanged:fe.recordUpload}),{tasks:yd,recoveryInput:wd,restore:kd,statusLabel:bd,queue:Id,cancel:Sd,retry:Cd,recover:Td,remove:Ed,dispose:Rd}=hd,ti=Hh({workspaceTarget:h,selectedSessionId:K,sessions:nt,selectView:re=>r.selectView(re,"preserve-layout"),applyWebUpdate:et,closeMobileSidebar:m,selectWorkspace:nn,syncWorkspaceSessions:(...re)=>Ae.synchronize(...re),openHostedConversationTarget:(...re)=>Vd(...re),discovery:Ae,selection:()=>an,openSession:Ln,notice:V});function Ad(re){return ti.openWorkbenchNotification(re)}const{openRecentRun:Nd,openSessionGroupTarget:Dd,openNavigatedSession:Pd}=ti;async function Od(re){await an.selectSession(re)}const{workspaceViewCache:Ld,discardWorkspaceViewCache:fo,discardNodeViewCaches:ni,saveCurrentWorkspaceView:Wd,restoreWorkspaceView:Md,restoreWorkspaceDraft:xd}=Wr.connect({paging:pe,sessions:nt,captureDetail:Mt.captureDetail,queue:Lr,runner:lo,modelId:co,effort:_r,access:Yr,workspaceTarget:h,selectedSessionId:K,fileWorkbench:Ht,files:{snapshot:()=>Hr.tree.snapshot(),restore:It.restoreFiles},git:{snapshot:()=>oo.snapshot(),restore:It.restoreGit},search:{snapshot:It.searchSnapshot,restore:It.restoreSearch},restoreDraftConfiguration:nd,persistDraft:Xa,flushConversation:Ac.flushPendingTextDeltas,maximumDetails:Aw,otherVisibleSessionId:()=>i.value==="nodes"&&(!v.value||k.value==="inspector")?Lt.value?.sessionId:void 0});function On(){Ia(),Wd()}const{paging:$d}=Et.conversationWindow;let ai=re=>!1;function oi(re,$e){if(i.value!=="nodes"||Qe.value!==re||rt.value!==$e)return;const ft=vt.current({nodeId:re,workspaceId:$e}).active;!Hn.value||ft?.kind!=="tool"||(ft.id==="changes"||ft.id==="files")&&It.refreshVisible(ft.id)}const{updateNodeConnection:Fd}=Et.events,ri=jh({coordinator:()=>Ne.current,currentView:()=>i.value,workspaceTarget:()=>h.value,selectedSessionId:()=>K.value,selectedHostedConversationId:()=>Ve.selectedConversationId.value}),wa=dm({workspace:Ve,markRead:(re,$e)=>fe.markConversationRead(re,$e),coordinator:()=>Ne.current}),Ud=wa.select,Vd=wa.openTarget,qd=wa.clear;async function Hd(){const re=Io;if(!(re===void 0||i.value!=="conversations"))try{await wa.restoreTarget(re,ka)}finally{Si.value=!1}}const ii=um({presentation:{translate:c,currentLocale:fl,setLocale:re=>Qa().setLocale(re)},admin:g,loaded:R,sessions:w,password:D,passwordError:E,csrfToken:H,loading:W,request:Y,renewCsrfToken:q,onAuthenticated:Su,invalidateRequests:()=>{Ro(),J.invalidateAuthentication()},onSignedOut:Cu,notice:V,errorMessage:lt}),{authenticationUnknown:Bd,restoring:Gd,returnToLogin:po,refresh:si,refreshSessions:zd}=ii,Kd=Uf({request:Y,error:(re,$e)=>tt(re,"error",$e),errorMessage:lt}),{nodeDetails:jd,detailsOpen:_d,loading:Yd,details:Qd,usageOpen:Jd,openNode:Xd,disabledReason:Zd,show:eu,clearNode:tu}=Kd,Gn=$(),go=_(()=>le.value.find(re=>re.id===Gn.value)),nu=_(()=>go.value?.connected===!0&&go.value.disabled!==!0),li=ym({...e.submitWorkspaceRegistration===void 0?{}:{submit:(re,$e)=>e.submitWorkspaceRegistration(Y,re,$e)},targetNodeId:Gn,request:Y,onRegistered:async(re,$e)=>{Ci(),await nn({nodeId:re,workspaceId:$e})},notice:V,error:(re,$e)=>tt(re,"error",$e),errorMessage:lt}),{path:au,preserveGitConfig:ou,pendingDirectoryName:ru,directory:ci,loadingDirectory:di,openTools:ui,selectedPathValid:iu,reset:vi,load:mo,select:su,selectPendingDirectory:lu,discardPendingDirectory:fi,register:cu}=li,{currentGroup:ho,selectGroup:pi,refreshing:du,searchQuery:uu,searching:vu,preserveManagedActive:fu,merge:pu,applySnapshot:gu,loadMore:_A,search:mu,synchronize:gi,refresh:mi}=Ae,{visible:hu,canLoadMore:yu,loadingMore:wu,loadMoreError:ku,loadMore:bu}=Ae.createVisibleList({unfiltered:ld,canLoadMore:cd});let In=0;async function Iu(re){await Bn(),re===In&&(Ye(),!(!await Ie.waitForReady()||re!==In)&&(await sv(),re===In&&await Hd()))}async function Su(){const re=++In;if(Re(),pd(),await Promise.all([Ce(),Iu(re)]),re!==In)return;const $e=await fe.openPendingSystemNotification();re===In&&!$e&&i.value==="nodes"&&fe.markVisibleRead()}function Cu(){vt.clearHtml(),Ro(),In+=1,fe.systemNotifications.invalidatePush(),ke(),Oe.stop(),Ne.current?.dispose(),Ve.clearSelectedConversation(),Ze.reset(),Pi(),ge.resetResources(),un.clear(),Zr(new Set)}function yo(){ya.persist()}function Tu(){ya.restore()}const{loading:Eu,updateWorkspaceBranch:hi,updateWorkspaceMetadata:Ru,rememberWorkspace:Au,closeWorkspaceTab:wo,closeUnpinnedWorkspaceTabs:Nu,activateWorkspaceTab:yi,openWorkspaceTab:Du,orderedWorkspaces:Pu,toggleNodeExpansion:Ou,refreshNodeWorkspaces:Lu,refreshWorkspaceTree:Wu,openWorkspaceFromTree:Mu,startWorkspaceDrag:xu,reorderWorkspace:$u,moveWorkspaceToGroup:Fu,moveWorkspaceGroup:Uu,renameWorkspace:Vu,cleanupWorkspaceSessions:qu,removeWorkspace:Hu}=Zy({nodes:le,workspaces:P,replaceWorkspaces:ge.replaceWorkspaces,sessions:nt,removeWorkspaceSessions:ze.removeWorkspace,workspaceTarget:h,selectedSessionId:K,activeTabId:vo,showWorkbench:()=>{r.selectView("nodes","preserve-layout")},notice:V,workspacesByNode:xr,tabs:en,tree:_t,releaseTerminalDock:re=>{jt.get(re)?.release()},deleteTerminalDock:re=>jt.delete(re),request:Y,saveCurrent:On,discardCache:(re,$e)=>{fo(re,$e),vt.clearHtmlWorkspace({nodeId:re,workspaceId:$e})},activateWorkspace:(re,$e)=>nn(re,$e),workspaceTabSession:fe.workspaceTabSession,openWorkspaceTabSession:re=>Pd(re,!0),clearWorkspace:()=>un.clear(),currentSelectionRevision:()=>un.currentSelectionRevision(),cleanupSessionsEnabled:()=>Jr,refreshWorkspaceSessions:gi,refreshNodes:Bn,closeMobileSidebar:m,closeMobileWorkspaceSurface:b,errorMessage:lt,tabLabel:Jn});function Bu(re,$e){const ft=(re===Qe.value?P.value:xr.value[re]??[]).find(Pt=>Pt.id===$e.id);Ru(re,$e),re===Qe.value&&$e.id===rt.value&&ft?.kind!==$e.kind&&Ne.current?.restartWorkspace($e.id)}const{closeQuickOpenFile:Gu,quickOpenFileVisible:zu,workspaceShortcuts:Ku,openAgentWorkspaceFile:ju,openQuickWorkspaceFile:_u,runnerBrandIcon:Yu,sessionActivityTitle:Qu,sessionRelativeActivity:Ju,workspaceTabNodeLabel:Xu}=dw({selectedSessionId:K,view:i,nodes:le,workspaceTabs:bn,activeWorkspaceTabId:vo,activateWorkspaceTab:yi,closeWorkspaceTab:wo,closeUnpinnedWorkspaceTabs:Nu,workspaceTarget:h,selectedWorkspace:x,nodeReady:se,openNewSessionComposer:()=>s(),filesReady:Se,contentSearchReady:We,terminalReady:Fe,workspaceFileWorkbench:Wt,fileWorkbench:Ht,openWorkspaceFileExternal:Br,showAsideTool:re=>{const $e=h.value;if($e===void 0)return;const ft=vt.current($e).active,Pt=re==="changes"&&Hn.value&&ft?.kind==="tool"&&ft.id==="changes";Ei({...$e,id:re}),Pt&&It.git.loadChanges(!0),gt(()=>{re==="search"&&It.focusSearch()})},openAttachmentImage:io.openFileAttachment,openHtml:pt,openHtmlExternal:Gr,toggleTerminal:()=>Ri(),sessionActivityClockNow:id,notice:V,formatSessionTime:Kt});async function Zu(re,$e){const ft=bn.value.find(Pt=>Pt.nodeId===re&&Pt.workspaceId===$e);return ft!==void 0?yi(ft):nn({nodeId:re,workspaceId:$e})}const ev=Et.composer,{loadProfiles:tv,applyDefaults:nv,normalize:av}=ev,wi=$(),ko=Uy((re,$e)=>{an.removeMissingAside(re,$e)}),zn=_(()=>{const re=h.value;if(re===void 0)return;const $e=vt.current(re),ft=[];return(!v.value||k.value==="conversation")&&!ve.value&&K.value!==void 0&&ft.push(K.value),(!v.value||k.value==="inspector")&&$e.active?.kind==="session"&&ft.push($e.active.sessionId),$y({enabled:Aa(le.value.find(Pt=>Pt.id===re.nodeId)?.nodeAppVersion,z.value?.sessionAside),asideSessionIds:$e.sessions,visibleTreeAnchors:ft,treeAnchor:wi.value})}),ov=zh({workspaceTarget:h,navigation:{query:()=>zn.value,accept:ko.accept},files:It,updateBranch:hi,sessions:{current:nt,selectedId:K,applySnapshot:gu,reconcile:Et.watch.reconcileWorkspaceSnapshot}}),bo=Gh({sessionGroup:()=>ho.value,sessionNavigation:()=>zn.value,workspaceTarget:h,workspaces:P,heartbeatMs:Nw,enabled:()=>!0,workbenchConnectionId:()=>me.value,request:Y,onSnapshot:ov.accept});Ge([h,ho],([re,$e],[ft,Pt])=>{re!==void 0&&re.nodeId===ft?.nodeId&&re.workspaceId===ft?.workspaceId&&$e!==Pt&&Ne.current?.startWorkspace(re.workspaceId)});function nn(re,$e=!0){return un.select(re,$e)}const un=A.connect({selectedSessionId:K,setSelectedSessionId:F.setSession,workspaces:P,replaceWorkspaces:ge.replaceWorkspaces,sessions:nt,replaceSessions:Ae.replaceSessions,draftOpen:ve,setDraftOpen:F.setDraftOpen,profilesLoading:Rc,isCacheActive:kn.isActive,hasNode:re=>le.value.some($e=>$e.id===re),isHostAvailable:re=>le.value.some($e=>$e.id===re&&$e.connected&&!$e.disabled),cachedWorkspaces:_t.workspacesForNode,cacheWorkspaces:_t.cacheWorkspaces,rememberTarget:re=>en.rememberTarget(re,le.value.find($e=>$e.id===re.nodeId)),invalidateWorkspace:re=>{const $e=bn.value.find(ft=>ft.nodeId===re.nodeId&&ft.workspaceId===re.workspaceId);h.value?.nodeId===re.nodeId&&h.value.workspaceId===re.workspaceId&&(kn.deactivate(),Ne.current?.stopWorkspace(),Ne.current?.stopSession()),fo(re.nodeId,re.workspaceId),vt.clearHtmlWorkspace(re),$e!==void 0?wo($e,!0):h.value?.nodeId===re.nodeId&&h.value.workspaceId===re.workspaceId&&un.clear()},deactivateCache:kn.deactivate,clearContent:Mt.clearSelection,showWorkbench:()=>{r.selectView("nodes","preserve-layout")},closeSidebar:m,restoreProfiles:ha.restore,selectManifestNode:ge.selectNode,refreshManifest:Xr,refreshTransport:re=>{Ze.refresh(re,!0)},request:Y,notice:V,errorMessage:lt,stopWatch:()=>{Ne.current?.stopWorkspace(),Ne.current?.stopSession()},startWatch:re=>Ne.current?.startWorkspace(re)??Promise.resolve(),saveCurrent:On,activateCache:kn.activate,restoreWorkspaceView:Md,refreshVisibleTool:(re,$e)=>{gt(()=>{oi(re,$e)})},initializePaging:pe.initialize,tabId:Sn,rememberWorkspace:Au,viewCache:Ld,resetQueue:Or.reset,openSession:Ln,openDraft:()=>ba(),restoreDraft:re=>{xd(re)},hasProfiles:ha.has,loadProfiles:tv,takeRestoredSelection:en.takeRestoredSelection,restoreSession:(re,$e)=>bi.restoreSession(re,$e)});ai=re=>{const $e=h.value;return $e?.nodeId!==re?!1:(nn($e),!0)};const{standaloneFileMode:ki,standaloneFileLoading:rv,standaloneFileError:iv}=Ht.standalone,an=F.connect({secondaryPane:{target:Lt,reloadChecked:()=>tn.secondary.reloadChecked()},pane:Et.opening,aside:vt,canOpenAside:()=>Aa(le.value.find(re=>re.id===Qe.value)?.nodeAppVersion,z.value?.sessionAside),saveAside:()=>Ia(),sessions:nt,closeMobileSurface:b,workspaceTabId:Sn,ensureSessionVisible:pe.ensureVisible,markSessionRead:ro,saveCurrent:On,selectWorkspace:nn}),bi=Em({nodes:le,sessions:nt,workspaceTarget:h,selectedSessionId:K,setSelectedSessionId:F.setSession,selectedHostedNodeId:Ve.selectedNodeId,selectedHostedConversationId:Ve.selectedConversationId,view:i,managementSection:d,activateWorkspace:re=>nn(re,!1),synchronizeSessions:async re=>(await gi(re,!0))?.sessions,openSession:Ln,lookupSession:async(re,$e)=>(await Y(`/api/agent-sessions/${Xo($e)}?nodeId=${encodeURIComponent(re)}`)).session,openDraft:()=>ba(),notice:re=>V(lt(re),"error",re),currentSelectionRevision:()=>$t()+un.currentSelectionRevision(),rememberSession:en.rememberSession}),{restore:sv,sync:ka,hostedConversationRoute:Io}=bi,Ii=Rm({isOpen:()=>v.value&&(y.value||Vr.value||Ur.value||k.value!=="conversation"),close:()=>{m(),qr(),Uc(),b()},syncRoute:ka}),Si=$(Io!==void 0),{renameSession:lv,setSessionPinned:cv,movePinnedSession:dv,movePinnedSessionTo:uv,deleteSession:vv}=ew({actions:ei,replaceNode:ge.replaceNode,removeNode:ge.removeNode,sessions:nt,removeSessionId:ze.removeId,clearSessions:()=>ze.replaceAll([]),clearActiveSelection:Mt.clearSelection,clearRuns:Mt.clearRuns,workspaceTarget:h,selectedSessionId:K,setSelectedSessionId:F.setSession,workspaces:P,replaceWorkspaces:ge.replaceWorkspaces,clearWorkspace:()=>un.clear(),caches:kn,tabs:en,tree:_t,replaceSession:Ni,refreshSessions:mi,discardNodeCaches:re=>{ni(re),vt.clearHtmlNode(re)},openDraft:()=>ba(),replaceUrl:ka,clearNodeDetails:tu});function fv(){r.selectView("management","preserve-layout"),N(e.nodeManagementSection)}function Ci(){Gn.value=void 0,vi()}async function pv(re){m(),r.selectView("nodes","preserve-layout"),Gn.value=re,vi(!0),await mo()}const{createDraftSession:gv,ensureDraftRunnerSupported:mv,openNewSessionComposer:ba}=uw({workspaceTarget:h,selectedSessionId:K,setSelectedSessionId:F.setSession,selectedWorkspace:x,sessions:nt,prependSession:ze.prepend,prepareDraft:Et.prepareDraft,focusDraft:Et.focusDraft,draftSessionOpen:ve,setDraftOpen:F.setDraftOpen,newSessionRunner:lo,newSessionModel:co,newSessionEffort:_r,newSessionAccess:Yr,runnerProfiles:Ec,canUseComposer:rd,closeMobileWorkspaceSurface:b,saveCurrent:On,stopSelectedSessionWatch:Ai,applyRunnerDefaults:nv});function Ti(){pi("MAIN"),ba()}s=Ti;const So=vm({request:Y,...e.submitNodeRegistration===void 0?{}:{submit:e.submitNodeRegistration},notice:V,errorMessage:lt}),hv=So.token,yv=So.pending,wv=So.create;Ge([i,l,()=>g.value.authenticated,()=>g.value.mustChangePassword],([re,$e,ft,Pt])=>{re==="settings"&&$e==="account"&&ft&&!Pt&&zd()},{immediate:!0});async function Ln(re,$e={}){return an.openSession(re,$e)}function kv(){K.value!==void 0&&Ln(K.value)}Et.history;const bv=Et.watch;Ne.current=_h({workspace:bo,session:bv,secondary:tn.watch,hosted:Ve}),wn.connectWatchCoordinator(Ne.current),qn.connectWatchCoordinator(Ne.current);function Ia(){tn.secondary.save()}const Iv=tn.secondary;function Co(){Iv.reload()}function Sv(re){return an.openAsideTarget(re)}vt.observeCapabilities({workspace:h,manifest:z,selectedWorkspace:x});const{select:Ei,openBrowser:Cv,closeBrowser:Tv,toggleTerminal:Ri}=vt.createInteraction({workspace:h,mobile:v,mobileSurface:k,saveSession:Ia,openMobile:I});Ge(zn,()=>{const re=h.value;re!==void 0&&i.value==="nodes"&&Ie.connected.value&&me.value!==void 0&&Ne.current?.startWorkspace(re.workspaceId)},{deep:!0});function Ai(){Ne.current?.stopSession()}function Ev(){Eo.handleVisibility()}const To=Ky({workspaceTarget:h,submissions:U,projection:{sessions:nt,selectedSessionId:K,setSelectedSessionId:F.setSession,removeSessionExact:ze.removeExact,currentSelectionRevision:$t,preserveManagedActive:fu,mergeSessions:pu}});function Rv(re,$e,ft,Pt){To.transfer(re,$e,ft,Pt)}function Av(re,$e,ft,Pt){To.replace(re,$e,ft,Pt)}function Ni(re,$e){To.replaceCurrent(re,$e)}function Nv(){Ov.scrollConversationToLatest()}Et.realtime;const Di=Bh({workspaceTarget:h,selectedSessionId:K,refresh:(re,$e)=>Ln(re,{preserveMobileWorkspaceSurface:!0,deferInitialScroll:$e})});function Sa(re=0,$e=!1){Di.schedule(re,$e)}function Pi(){Di.clear(),Ze.connectionLost(),at()}const Eo=cm({view:i,workspaceTarget:h,selectedWorkspace:x,selectedSessionId:K,hostedNodeId:Ve.selectedNodeId,coordinator:()=>Ne.current,invalidateManifest:gd,refreshManifest:Xr,reactivate:re=>ai(re),discardNodeCache:ni,resetSession:Mt.resetRealtime,refreshSession:Sa,direct:Ze,live:Ie});function Oi(re,$e=!0){Eo.connected(re,$e)}function Dv(re){Eo.resync(re)}const Pv=Et.completion,Ov=Et.interactions;return Ge(ui,re=>{if(!re.includes("register")){fi();return}ci.value===void 0&&!di.value&&mo()}),vw({persistenceSources:[u,bn,eo,Mr,$r],cacheSources:[pa,kt,Lr,qt,va,fa],routeSources:[i,d,Qe,rt,K,()=>td.value?.externalSessionId,Ve.selectedNodeId,Ve.selectedConversationId],documentTitle:sd,newSessionRunner:lo,newSessionModel:co,workspaceTarget:h,selectedSessionId:K,conversationTurns:kt,conversationScroll:Dc,followConversation:Pc,persistWorkbenchState:yo,syncWorkbenchRoute:ka,normalizeNewSessionOptions:av,clearRunnerCommand:ad.reset,clearComposerModelEffort:so.clearModelEffortSelection,closeFileReferences:()=>{uo.cancelSearch(),uo.close()},saveCurrentWorkspaceView:On,scrollConversationToLatest:Nv,stopSelectedSessionWatch:Ai,restoreWorkbenchState:Tu,restoreWorkbenchEventCursors:Ke,restoreWorkspaceUploads:kd,startNavigation:()=>{T(),Ii.start()},handleSessionWatchVisibility:Ev,workspaceShortcuts:Ku,refreshAdmin:si,recoverAuthentication:()=>{Bd.value&&!Gd.value&&si()},cancelFileReferenceSearch:uo.cancelSearch,disposeNavigation:()=>{Ii.dispose(),p()},disposeWorkspaceUploads:Rd,disposeWorkbenchNotifications:ke,disposeWebVersionUpdateCheck:Oe.stop,stopWorkspaceWatch:()=>Ne.current?.stopWorkspace(),closeWorkbenchLive:Pi,disposeDirectTransport:Ze.dispose,clearNewSessionAttachments:ht,releaseRunImagePreviews:()=>ed([])}),{layout:Fr.layoutView,tree:Rt({draggingWorkspace:Oc,expandedNodeIds:eo,workspaceTreeRevealTarget:_t.revealTarget,moveTreeWorkspace:_t.moveWorkspace,endWorkspaceDrag:_t.endDrag,orderedNodes:Lc,moveNode:Wc,refreshNodeWorkspaces:Lu,refreshWorkspaceTree:Wu,orderedWorkspaces:Pu,toggleNodeExpansion:Ou,addWorkspaceForNode:pv,openWorkspaceFromTree:Mu,reorderWorkspace:$u,moveWorkspaceToGroup:Fu,moveWorkspaceGroup:Uu,renameWorkspace:Vu,removeWorkspace:Hu,startWorkspaceDrag:xu}),terminal:Rt({terminalDocks:jt,terminalDirectClient:Ee,terminalReady:Fe}),hosted:Rt({clearHostedConversation:qd,closeHostedConversationMobileHistory:qr,hostedConversationMobileHistoryOpen:Vr,hostedConversationMobileFilesOpen:Ur,hostedConversationRoute:Io,hostedConversationWorkspace:Ve,restoringHostedConversationRoute:Si,selectHostedConversation:Ud}),sessionList:Rt({mutationLoading:_(()=>ei.loading.value||Eu.value),sessions:nt,visibleWorkspaceSessions:hu,canLoadMoreWorkspaceSessions:yu,loadMoreWorkspaceSessionsError:ku,loadMoreWorkspaceSessions:bu,loadingMoreWorkspaceSessions:wu,refreshWorkspaceSessions:mi,refreshingWorkspaceSessions:du,searchingWorkspaceSessions:vu,searchWorkspaceSessions:mu,workspaceSessionSearchEnabled:vd,workspaceSessionSearchQuery:uu,workspaceSessionGroup:ho,selectWorkspaceSessionGroup:pi,deleteSession:vv,canDeleteSession:Qr,cleanupWorkspaceSessions:qu,cleanupSessionsEnabled:Jr,renameSession:lv,movePinnedSession:dv,movePinnedSessionTo:uv,setSessionPinned:cv,setSessionTreeAnchor:re=>{wi.value=re},sessionNavigationSnapshot:_(()=>ko.current(h.value,zn.value)),sessionActivity:tr,sessionActivityDateTime:Ff,sessionActivityLabel:Sp,sessionActivityTitle:Qu,sessionRelativeActivity:Ju,sessionTitle:Ua,reloadSelectedSession:kv}),selection:Rt({activateWorkspaceTab:Du,activeWorkspaceTabId:vo,closeWorkspaceTab:wo,workspaceTarget:h,workspaceTabs:bn,workspaceTabLabel:Jn,workspaceTabNodeLabel:Xu,moveWorkspaceTab:en.move,pinWorkspaceTab:en.setPinned,workspaceSelectionLoading:un.loading,retryWorkspaceSelection:()=>{h.value!==void 0&&nn(h.value)},selectedSessionId:K,openSessionFromList:Od,openSessionGroupTarget:Dd,openNewSessionComposer:Ti,draftSessionOpen:ve}),aside:Rt({asidePaneController:tn.view,asideSessionMetadata:_(()=>{const re=h.value;return zn.value===void 0||re===void 0?[]:ko.knownSessions(re,vt.current(re).sessions)}),asideState:_(()=>{const re=h.value;return re===void 0?void 0:vt.current(re)}),asideSupported:_(()=>Aa(le.value.find(re=>re.id===Qe.value)?.nodeAppVersion,z.value?.sessionAside)),asideViewMode:My,asideWidth:ya.asideWidth,closeAsideBrowser:Tv,closeAsideSession:an.closeAsideSession,openAsideSession:an.openAsideSession,openHtmlAside:pt,reloadAsideSession:Co,selectAsideBrowser:Cv,selectAsideTool:Ei,setAsideSurfaceVisible:re=>{Hn.value=re},toggleAsideTerminal:Ri}),files:Rt({fileWorkbench:Ht,quoteTargetFor:re=>{if(ki.value)return;const $e=re.quotePane==="aside"?tn:Et,ft=$e.state.workspaceTarget.value;return ft?.nodeId===re.nodeId&&ft.workspaceId===re.workspaceId?$e.quoteTarget:void 0},workspaceFileWorkbench:Wt,mountSurface:It.mountSurface,unmountSurface:It.unmountSurface,workspaceFiles:Hr,workspaceGit:oo,workspaceSearch:Bc,setWorkspaceFilePage:Ht.setPage,setWorkspaceFilesPanel:It.setFilesPanel,setWorkspaceSearchPanel:It.setSearchPanel,downloadWorkspaceFile:Yc,openWorkspaceFileExternal:Br,openWorkspaceGitChange:Gc,openWorkspaceHistoryDiff:zc,loadWorkspaceDiff:_c,adjacentWorkspaceDiff:Kc,reportWorkspaceFileFailure:jc,fileWriteReady:Ue,contentSearchReady:We,filesReady:Se,standaloneFileMode:ki,standaloneFileLoading:rv,standaloneFileError:iv}),mainPaneController:Et.view,notifications:fe,identity:ii.view,application:Rt({workPromptCompletion:Pv,webVersion:e.webVersion,pwaState:Pe,checkingForUpdates:de,checkForUpdates:Le,applyWebUpdate:et,retryWorkspaceWatch:()=>bo.retryFailed(),liveConnected:Ie.connected,codeNavigationReady:be,managementItems:$c,managementSection:d,navigationItems:Mc,notice:V,openHtmlExternal:Gr,openWorkbenchNotification:fe.openNotification,openRecentRun:Nd,runnerBrandIcon:Yu,selectManagementSection:N,selectNavigation:Fc,selectSettingsSection:S,settingsItems:xc,settingsSection:l,view:i,webPerformanceDiagnostics:Je,workspaceWatchTopicStatus:bo.topicStatus}),resources:Rt({onlineNodeCount:dd,serverVersion:ae,nodeUpgradeProgress:ge.upgradeProgress,nodeDetails:jd,nodeDetailsDialogOpen:_d,nodeLabel:La,nodeManifest:z,nodeManifestLoading:ce,nodeReady:se,nodes:le,refreshNodes:Bn,runnerUsageDetails:Qd,runnerUsageDialogOpen:Jd,runnerUsageDisabledReason:Zd,runnerUsageLoading:Yd,workspaceHost:ee,selectedNodeStatus:md,selectedWorkspace:x,showNodeDetails:Xd,showRunnerUsage:eu,workspaceBranchLabel:$f,workspaceDirectAvailable:_e,workspaceDirectDescription:ie,workspaceLocalFileManagerAvailable:O,workspaceKindLabel:xf,workspacePath:au}),registration:Rt({loadWorkspaceDirectories:mo,loadingWorkspaceDirectory:di,registrationLoading:li.loading,pendingWorkspaceDirectoryName:ru,openNodeRegistration:fv,openWorkspaceTools:ui,registerWorkspace:cu,workspacePreserveGitConfig:ou,workspaceGitPolicySupported:ud,selectWorkspaceDirectory:su,selectPendingWorkspaceDirectory:lu,discardPendingWorkspaceDirectory:fi,selectedWorkspaceDirectorySelectable:iu,workspaceDirectory:ci,workspaceRegistrationNodeId:Gn,workspaceRegistrationNode:go,workspaceRegistrationReady:nu,closeWorkspaceRegistration:Ci}),settings:Rt({quickPrompts:ao.prompts,quickPromptsLoading:ao.loading,quickPromptsFailed:ao.failed,refreshQuickPrompts:no.refresh,createRegistrationToken:wv,registrationToken:hv,registrationLoading:yv}),interactions:Rt({attachmentPreview:ga,attachmentPreviewOpen:ct,closeQuickOpenFile:Gu,conversationImagePreview:Xc,conversationImagePreviewOpen:Zc,handleConversationImagePreviewError:re=>dn.value.previewFailed(re),openQuickWorkspaceFile:_u,openQuickWorkspace:Zu,openAttachmentPreview:ma,quickOpenFileVisible:zu}),uploads:Rt({cancelWorkspaceUpload:Sd,deleteWorkspaceUpload:Ed,recoverWorkspaceUpload:Td,retryWorkspaceUpload:Cd,workspaceUploadRecoveryInput:wd,workspaceUploadStatusLabel:bd,workspaceUploadTasks:yd})}}const Ww=["organizations","users","resource-nodes","resource-workspaces","skill-config","skill-sources","mcp-sources","secrets","oauth","mar-agent-models","conversation-templates","audit","configuration","system"];function Mw(e){const t=Jl(e),n=new URLSearchParams(e.search).get("management"),a=Ww.find(r=>r===n);return{...t,...a===void 0?{}:{managementSection:a}}}function xw(){const e=Mw(window.location);return Eh({initialView:e.view??"nodes",initialSettingsSection:"account",initialManagementSection:e.managementSection??"users",opensMobileSidebar:t=>t!=="conversations"})}function $w(e,t,n){return e("/api/workspaces",{method:"POST",body:JSON.stringify({...t,...n?.ownerType==="ORGANIZATION"?{ownership:n}:{}})})}function Fw(){const e=kf();return Lw({navigation:xw(),management:am(),systemManagementSection:"system",nodeManagementSection:"resource-nodes",webVersion:"0.13.8",pwaApplication:e,submitWorkspaceRegistration:$w,submitNodeRegistration:(t,n)=>t("/api/node-registration-tokens",{method:"POST",...n===void 0?{}:{body:JSON.stringify({ownership:n})}})})}class Uw{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)}}function Vw(e,t){const n=e.ownerDocument.getSelection();if(!n||n.rangeCount!==1||n.isCollapsed)return[];const a=n.getRangeAt(0);return!e.contains(a.startContainer)||!e.contains(a.endContainer)?[]:t.flatMap((r,s)=>{if(!a.intersectsNode(r))return[];const i=e.ownerDocument.createRange();i.selectNodeContents(r);const l=i.toString().length;let d=0,v=l;return r.contains(a.startContainer)&&(i.setEnd(a.startContainer,a.startOffset),d=i.toString().length),r.contains(a.endContainer)&&(i.selectNodeContents(r),i.setEnd(a.endContainer,a.endOffset),v=i.toString().length),v>d||l===0?[{index:s,from:d,to:v}]:[]})}function Ks(e){let t,n;return e.split(`
|
|
9
|
+
`).map(a=>{const r=/^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@/.exec(a);return r?(t=Number(r[1]),n=Number(r[2]),{text:a,hunk:!0}):(a.startsWith("diff ")&&(t=n=void 0),t===void 0||n===void 0?{text:a}:a.startsWith("-")?{text:a,oldLine:t++}:a.startsWith("+")?{text:a,newLine:n++}:a.startsWith(" ")?{text:a,oldLine:t++,newLine:n++}:{text:a})})}const qw=["aria-label"],Hw={class:"diff-mobile-action-row diff-mobile-navigation"},Bw={class:"diff-mobile-action-row diff-mobile-utilities"},Gw=["aria-label"],zw={class:"diff-toolbar-count"},Kw={class:"diff-toolbar-count"},jw={class:"mar-tooltip-control"},_w={key:2,class:"unified-diff-pane"},Yw={key:0,class:"unified-diff-truncation"},Qw=["aria-label"],Jw={key:0},Xw=["data-diff-index","data-diff-row"],Zw={class:"unified-diff-line-number"},ek={class:"unified-diff-line-prefix"},tk=["data-inline-find-index"],nk={key:0,class:"diff-code-navigation-target"},ak={key:1,class:"unified-diff-empty"},ok={key:0,class:"diff-fallback-message"},rk=["data-inline-find-index"],ik=["aria-label"],sk={class:"diff-minimap-content","aria-hidden":"true"},lk=["innerHTML"],ck=180,dk=ot({__name:"GitDiffViewer",props:{path:{},quoteTarget:{},revision:{},diff:{},paths:{},loading:{type:Boolean},loadFailed:{type:Boolean},loadErrorMessage:{},source:{},previewEnabled:{type:Boolean},active:{type:Boolean,default:!0},embedded:{type:Boolean},codeNavigationEnabled:{type:Boolean}},emits:["close","download","moveFile","preview","edit","navigateSymbol","navigateFile","retry"],setup(e,{expose:t,emit:n}){bf(fe=>({v0955b0f5:le.value.length}));const a=e,r=n,s=$(-1),i=$(),l=$(),d=$(),v=$(!1),u=$(""),y=$(0),k=$(0),T=$(0),p=$(0),m=$(0),S=$(0),N=$(),I=$();let b;const C=$(),g=$();let R="";Ge(()=>a.active,fe=>{fe===!1&&C.value?.close()});const W=$(!1),w=Zp();let D;const E=$(),H=_(()=>typeof a.diff=="object"&&a.diff!==null?a.diff:void 0),J=_(()=>typeof H.value?.text=="string"?H.value.text:typeof H.value?.summary=="string"?H.value.summary:""),Y=_(()=>J.value.length>0),q=_(()=>ee(J.value)),Q=_(()=>typeof H.value?.afterText=="string"),V=_(()=>H.value?.binary!==!0&&Q.value),U=_(()=>typeof H.value?.afterText=="string"?z(H.value.afterText):[]),A=_(()=>x(J.value)),h=_(()=>{const fe=new Map;A.value.forEach((ke,Oe)=>{for(const Pe of ke.deletedLines){const de=fe.get(Pe.insertBefore)??[];de.push({kind:"deleted",lineNumber:null,oldLine:Pe.oldLine,text:Pe.text,diffIndex:Oe}),fe.set(Pe.insertBefore,de)}});const Ce=[];return U.value.forEach((ke,Oe)=>{const Pe=Oe+1;Ce.push(...fe.get(Pe)??[]),Ce.push({kind:se(Pe)===void 0?"context":"added",lineNumber:Pe,text:ke,diffIndex:se(Pe)})}),Ce.push(...fe.get(U.value.length+1)??[]),Ce}),F=_(()=>a.loading||a.loadFailed?[]:V.value?h.value.map(fe=>fe.text):Y.value&&H.value?.binary!==!0?J.value.split(`
|
|
10
|
+
`):[]),K=_(()=>Vp(F.value,u.value)),ve=_(()=>K.value.total===0?0:y.value+1),X=_(()=>F.value.length>0),oe=_(()=>s.value<0?0:s.value+1),ge=_(()=>a.paths.findIndex(fe=>fe===a.path)+1),le=_(()=>{if(!V.value)return[];const fe=h.value;if(fe.length===0)return[];const Ce=te(U.value.join(`
|
|
11
|
+
`),a.path),ke=Math.min(ck,fe.length);return Array.from({length:ke},(Oe,Pe)=>{const de=Math.floor(Pe*fe.length/ke),Re=Math.floor((Pe+1)*fe.length/ke),Le=fe.slice(de,Math.max(de+1,Re)),et=Le.some(pt=>pt.kind==="added"),mt=Le.some(pt=>pt.kind==="deleted"),vt=Le.find(pt=>pt.lineNumber!==null)??Le[0];return{kind:et&&mt?"mixed":et?"added":mt?"deleted":"context",html:vt?.lineNumber===null?ce(vt.text):Ce[(vt?.lineNumber??1)-1]??ce(vt?.text??"")}})}),ae=_(()=>{const fe=Math.max(0,p.value-T.value),Ce=p.value>0?Math.min(1,T.value/p.value):1,ke=Math.max(6,Ce*100),Oe=fe>0?(100-ke)*k.value/fe:0;return{height:`${ke}%`,top:`${Math.min(100-ke,Math.max(0,Oe))}%`}}),P=_(()=>({right:`calc(var(--diff-content-inset) + ${m.value}px)`,bottom:`calc(var(--diff-content-inset) + ${S.value}px)`}));function z(fe){return fe.length===0?[]:fe.endsWith(`
|
|
12
|
+
`)?fe.slice(0,-1).split(`
|
|
13
|
+
`):fe.split(`
|
|
14
|
+
`)}function ce(fe){return fe.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'")}function te(fe,Ce){const ke=Ce.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"}[ke??""]??void 0;return(Oe!==void 0&&Po.getLanguage(Oe)?Po.highlight(fe,{language:Oe,ignoreIllegals:!0}).value:Po.highlightAuto(fe).value).split(`
|
|
15
|
+
`).map(de=>qp.sanitize(de,{ALLOWED_TAGS:["span"],ALLOWED_ATTR:["class"]}))}function x(fe){const Ce=[];let ke,Oe=1;for(const Pe of Ks(fe))Pe.hunk?(ke={addedLines:[],deletedLines:[]},Ce.push(ke),Oe=Number(/\+(\d+)/.exec(Pe.text)?.[1]??1)):ke&&Pe.oldLine!==void 0&&Pe.newLine===void 0?ke.deletedLines.push({text:Pe.text.slice(1),insertBefore:Oe,oldLine:Pe.oldLine}):Pe.newLine!==void 0&&(Pe.oldLine===void 0&&ke?.addedLines.push(Pe.newLine),Oe=Pe.newLine+1);return Ce}function ee(fe){let Ce=0;return fe.split(`
|
|
16
|
+
`).map(ke=>{if(ke.startsWith("diff "))return Ce=0,"is-meta";const Oe=/^(@{2,})\s/u.exec(ke);if(Oe!==null){const Pe=Oe[1];return Pe===void 0?"is-meta":(Ce=Pe.length-1,"is-hunk")}if(ke.startsWith("\\ No newline"))return"is-meta";if(Ce>0){const Pe=ke.slice(0,Ce);return Pe.includes("+")&&Pe.includes("-")?"is-mixed":Pe.includes("+")?"is-added":Pe.includes("-")?"is-deleted":void 0}if(/^\+\+\+\s/u.test(ke))return"is-added";if(/^---\s/u.test(ke))return"is-deleted";if(ke.startsWith("index ")||ke.startsWith("mode ")||ke.startsWith("old mode ")||ke.startsWith("new mode ")||ke.startsWith("new file ")||ke.startsWith("deleted file ")||ke.startsWith("similarity ")||ke.startsWith("dissimilarity ")||ke.startsWith("rename ")||ke.startsWith("copy ")||ke.startsWith("Binary files ")||ke.startsWith("GIT binary patch")||ke.startsWith("literal ")||ke.startsWith("delta "))return"is-meta"})}function se(fe){const Ce=A.value.findIndex(ke=>ke.addedLines.includes(fe));return Ce<0?void 0:Ce}function Se(fe){return fe.diffIndex===s.value}function Fe(fe,Ce){const ke=E.value;if(ke?.rowIndex!==Ce)return[fe.text];const{from:Oe,to:Pe}=ke.target;return[fe.text.slice(0,Oe),fe.text.slice(Oe,Pe),fe.text.slice(Pe)]}function We(fe){const Ce=fe.target instanceof Element?fe.target.closest("[data-diff-row]"):null,ke=Number(Ce?.dataset.diffRow),Oe=h.value[ke];return Number.isSafeInteger(ke)&&Oe!==void 0?{row:Oe,index:ke}:void 0}function be(fe,Ce){const ke=document,Oe=ke.caretPositionFromPoint?.(Ce.clientX,Ce.clientY),Pe=Oe===void 0?ke.caretRangeFromPoint?.(Ce.clientX,Ce.clientY):Oe===null?null:(()=>{const Re=document.createRange();return Re.setStart(Oe.offsetNode,Oe.offset),Re.collapse(!0),Re})();if(Pe==null||!fe.contains(Pe.startContainer))return;const de=document.createRange();return de.selectNodeContents(fe),de.setEnd(Pe.startContainer,Pe.startOffset),de.toString().length}function he(fe){if(a.codeNavigationEnabled!==!0||!fe.ctrlKey&&!fe.metaKey||fe.altKey||fe.shiftKey)return;const Ce=We(fe);if(Ce===void 0||Ce.row.lineNumber===null)return;const ke=fe.target.closest("[data-diff-line-content]");if(ke===null)return;const Oe=be(ke,fe);if(Oe===void 0)return;const Pe=ig(a.path,Ce.row.text,Oe);return Pe===void 0?void 0:{rowIndex:Ce.index,target:Pe}}function Ue(fe){E.value=he(fe)}function Qe(){E.value=void 0}function rt(fe){if(fe.button!==0)return;const Ce=he(fe);if(Ce!==void 0){if(fe.preventDefault(),fe.stopPropagation(),E.value=void 0,Ce.target.kind==="symbol"){r("navigateSymbol",Ce.target.value);return}r("navigateFile",{reference:Ce.target.reference,sourceContext:{text:ne(fe)??"",position:Ce.target.from}})}}function ne(fe){return We(fe)?.row.text}async function me(fe){const Ce=A.value.length;if(Ce===0){s.value=-1;return}s.value=(fe+Ce)%Ce,await gt(),i.value?.querySelector(`[data-diff-index="${s.value}"]`)?.scrollIntoView({block:"center"})}function Ne(fe){me(s.value+fe)}function Ve(){const fe=i.value;fe!==void 0&&(k.value=fe.scrollTop,T.value=fe.clientHeight,p.value=fe.scrollHeight,m.value=fe.offsetWidth-fe.clientWidth,S.value=fe.offsetHeight-fe.clientHeight)}function Je(fe){i.value!==void 0&&(W.value=!0,Ke(fe.clientY),fe.currentTarget.setPointerCapture(fe.pointerId),fe.preventDefault())}function Ie(fe){W.value&&(Ke(fe.clientY),fe.preventDefault())}function Ke(fe){if(i.value===void 0||N.value===void 0)return;const Ce=p.value-T.value,ke=p.value>0?Math.min(1,T.value/p.value):1,Oe=N.value.clientHeight*Math.max(.06,ke),Pe=N.value.clientHeight-Oe;if(Ce<=0||Pe<=0)return;const de=fe-N.value.getBoundingClientRect().top-Oe/2;i.value.scrollTop=Math.min(Pe,Math.max(0,de))/Pe*Ce,Ve()}function Ye(fe){W.value=!1;const Ce=fe.currentTarget;Ce.hasPointerCapture(fe.pointerId)&&Ce.releasePointerCapture(fe.pointerId)}async function at(){v.value=!0,await gt(),await d.value?.focus()}function Ze(){v.value=!1,Ee()}function Te(){return X.value?(at(),!0):!1}function Ee(){I.value?.root?.focus()}function _e(fe=!1){const Ce=V.value?i.value:l.value;if(!X.value||Ce===void 0||typeof window>"u"||!fe&&document.activeElement!==I.value?.root&&!Ce.contains(document.activeElement))return!1;const ke=window.getSelection();return ke===null?!1:(ke.removeAllRanges(),ke.selectAllChildren(Ce),!0)}async function ie(){if(R)try{await navigator.clipboard.writeText(R)}catch{tt(c("filePreviewContext.clipboardFailed"),"error")}}function O(fe){const Ce=V.value,ke=Ce?i.value:l.value,Oe=Ce?h.value.map(pt=>({text:pt.text,prefix:pt.kind==="deleted"?"-":pt.kind==="added"?"+":" ",oldLine:pt.oldLine,newLine:pt.lineNumber??void 0})):Ks(J.value).map(pt=>({...pt,prefix:""})),Pe=ke?Vw(ke,[...ke.querySelectorAll(Ce?"[data-diff-line-content]":"code > span")]).map(({index:pt,from:Lt,to:wn})=>({...Oe[pt],text:Oe[pt].prefix+Oe[pt].text.slice(Lt,wn)})):[];R=Pe.map(pt=>pt.text).join(`
|
|
17
|
+
`);const de=Pe.flatMap(pt=>pt.oldLine===void 0?[]:[pt.oldLine]),Re=Pe.flatMap(pt=>pt.newLine===void 0?[]:[pt.newLine]),Le=a.quoteTarget?.capture(),et=a.path,mt=a.diff,vt={type:"quote",source:"diff",path:et,label:`${et.split("/").at(-1)} · Diff`,origin:a.source??"WORKING_TREE",...a.revision?{revision:a.revision}:{},side:de.length?Re.length?"mixed":"old":"new",...Re.length?{startLine:Re[0],endLine:Re.at(-1)}:{},...de.length?{oldStartLine:de[0],oldEndLine:de.at(-1)}:{},text:R};g.value=Le&&R.trim()&&(de.length||Re.length)?()=>{a.active!==!1&&a.path===et&&a.diff===mt&&Le(vt),g.value=void 0}:void 0,C.value?.open(fe)}function G(){return r("edit"),"CHANGED"}async function pe(){return!0}async function xe(fe){const Ce=K.value.total;if(Ce===0)return;y.value=(y.value+fe+Ce)%Ce,await gt(),(Q.value?i.value:l.value)?.querySelector(`[data-inline-find-index="${y.value}"]`)?.scrollIntoView({block:"center",inline:"nearest"})}Ge(u,()=>{y.value=0,gt(()=>{(Q.value?i.value:l.value)?.querySelector('[data-inline-find-index="0"]')?.scrollIntoView({block:"center",inline:"nearest"})})}),Ge(()=>[a.path,a.diff],async()=>{v.value=!1,u.value="",await me(0),await gt(),Ve()},{immediate:!0,flush:"post"}),Ge(()=>a.active!==!1,fe=>{typeof document>"u"||a.embedded===!0||(document.documentElement.classList.toggle("file-preview-open",fe),document.body.classList.toggle("file-preview-open",fe))},{immediate:!0});let He=[];return Ot(()=>{He=["ArrowLeft","ArrowRight","ArrowUp","ArrowDown"].map(fe=>Ft.register({command:`diff.navigate.${fe}`,scope:"file-preview",priority:120,owner:()=>I.value?.root,keys:[{key:fe}],when:Ce=>a.active!==!1&&!Ce.target?.closest('input, textarea, [contenteditable="true"]'),execute:()=>(fe==="ArrowLeft"||fe==="ArrowRight"?a.paths.length>1&&!a.loading&&r("moveFile",fe==="ArrowLeft"?-1:1):Ne(fe==="ArrowUp"?-1:1),"HANDLED")})),b=Ft.register({command:"diff.dismissFind",scope:"file-preview",priority:120,owner:()=>I.value?.root,keys:[{key:"Escape"}],when:()=>a.active!==!1&&v.value,execute:()=>(Ze(),"HANDLED")}),a.active!==!1&&Ee(),Ve(),i.value!==void 0&&(D=new ResizeObserver(Ve),D.observe(i.value))}),wt(()=>{b?.(),He.forEach(fe=>fe()),a.embedded!==!0&&a.active!==!1&&(document.documentElement.classList.remove("file-preview-open"),document.body.classList.remove("file-preview-open")),D?.disconnect()}),t({focus:Ee,openFind:Te,selectAll:_e,toggleEdit:G,canClose:pe}),(fe,Ce)=>{const ke=St,Oe=Tt("tooltip");return f(),ye(Qp,{ref_key:"diffRoot",ref:I,tabindex:"-1",role:e.embedded?"region":"dialog","aria-modal":e.embedded?void 0:!0,class:je({"has-inline-find":v.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")}`,onContextmenu:it(O,["self"])},{status:Z(()=>[j("div",{class:"diff-mobile-summary","aria-label":o(c)("gitDiffViewer.mobileSummary")},[Me((f(),L("span",null,[we(M(o(c)("gitDiffViewer.mobileFileSummary",{value0:ge.value,value1:e.paths.length})),1)])),[[Oe,o(c)("generated.gitDiffViewer.filesAvailable",{value0:e.paths.length})]]),Me((f(),L("span",null,[we(M(o(c)("gitDiffViewer.mobileChangeSummary",{value0:oe.value,value1:A.value.length})),1)])),[[Oe,o(c)("generated.gitDiffViewer.changes",{value0:A.value.length})]])],8,qw)]),"mobile-actions":Z(()=>[j("div",Hw,[Me((f(),ye(ke,{class:"file-toolbar-control",circle:"",size:"small",disabled:a.paths.length<2||a.loading,"aria-label":o(c)("generated.gitDiffViewer.previousFile"),onClick:Ce[0]||(Ce[0]=Pe=>r("moveFile",-1))},{default:Z(()=>[B(De,{name:"chevron-left"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.previousFile")]]),Me((f(),ye(ke,{class:"file-toolbar-control",circle:"",size:"small",disabled:A.value.length===0,"aria-label":o(c)("generated.gitDiffViewer.previousChange"),onClick:Ce[1]||(Ce[1]=Pe=>Ne(-1))},{default:Z(()=>[B(De,{name:"chevron-up"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.previousChange")]]),Me((f(),ye(ke,{class:"file-toolbar-control",circle:"",size:"small",disabled:A.value.length===0,"aria-label":o(c)("generated.gitDiffViewer.nextChange"),onClick:Ce[2]||(Ce[2]=Pe=>Ne(1))},{default:Z(()=>[B(De,{name:"chevron-down"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.nextChange")]]),Me((f(),ye(ke,{class:"file-toolbar-control",circle:"",size:"small",disabled:a.paths.length<2||a.loading,"aria-label":o(c)("generated.gitDiffViewer.nextFile"),onClick:Ce[3]||(Ce[3]=Pe=>r("moveFile",1))},{default:Z(()=>[B(De,{name:"chevron-right"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.nextFile")]])]),j("div",Bw,[B(ke,{class:"file-toolbar-control",circle:"",size:"small",disabled:!X.value,"aria-label":o(c)("filePreviewContext.actions"),onPointerdown:Ce[4]||(Ce[4]=it(()=>{},["prevent"])),onClick:O},{default:Z(()=>[B(De,{name:"more"})]),_:1},8,["disabled","aria-label"]),Me((f(),ye(ke,{class:"file-toolbar-control",circle:"",size:"small","aria-label":o(c)("fileEditor.openSource"),onClick:G},{default:Z(()=>[B(De,{name:"source-code"})]),_:1},8,["aria-label"])),[[Oe,o(c)("fileEditor.openSourceShortcut")]]),X.value?Me((f(),ye(ke,{key:0,class:"file-toolbar-control",circle:"",size:"small","aria-label":o(c)("inlineFind.label"),onClick:Te},{default:Z(()=>[B(De,{name:"search"})]),_:1},8,["aria-label"])),[[Oe,o(c)("inlineFind.label")]]):ue("",!0),Me((f(),ye(ke,{class:"file-toolbar-control","aria-label":o(c)("generated.gitDiffViewer.downloadDiff"),circle:"",size:"small",onClick:Ce[5]||(Ce[5]=Pe=>r("download"))},{default:Z(()=>[B(De,{name:"download"})]),_:1},8,["aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.downloadDiff")]]),e.embedded?ue("",!0):Me((f(),ye(ke,{key:1,class:"file-toolbar-control","aria-label":o(c)("generated.gitDiffViewer.closeDiffPreview2"),circle:"",size:"small",onClick:Ce[6]||(Ce[6]=Pe=>r("close"))},{default:Z(()=>[B(De,{name:"close"})]),_:1},8,["aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.closeDiffPreview2")]])])]),"primary-actions":Z(()=>[j("div",{class:"file-preview-actions diff-preview-toolbar","aria-label":o(c)("generated.gitDiffViewer.diffToolbar")},[Me((f(),ye(ke,{class:"file-toolbar-control",circle:"",size:"small","aria-label":o(c)("fileEditor.openSource"),onClick:G},{default:Z(()=>[B(De,{name:"source-code"})]),_:1},8,["aria-label"])),[[Oe,o(c)("fileEditor.openSourceShortcut")]]),Me((f(),ye(ke,{class:"file-toolbar-control",disabled:e.paths.length<2||e.loading,"aria-label":o(c)("generated.gitDiffViewer.previousFile"),circle:"",size:"small",onClick:Ce[7]||(Ce[7]=Pe=>r("moveFile",-1))},{default:Z(()=>[B(De,{name:"chevron-left"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.previousFile2")]]),Me((f(),L("span",zw,[we(M(ge.value)+" / "+M(e.paths.length),1)])),[[Oe,o(c)("generated.gitDiffViewer.filesAvailable",{value0:e.paths.length})]]),Me((f(),ye(ke,{class:"file-toolbar-control",disabled:e.paths.length<2||e.loading,"aria-label":o(c)("generated.gitDiffViewer.nextFile"),circle:"",size:"small",onClick:Ce[8]||(Ce[8]=Pe=>r("moveFile",1))},{default:Z(()=>[B(De,{name:"chevron-right"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.nextFile2")]]),Ce[25]||(Ce[25]=j("span",{class:"diff-toolbar-divider","aria-hidden":"true"},null,-1)),Me((f(),ye(ke,{class:"file-toolbar-control",disabled:A.value.length===0,"aria-label":o(c)("generated.gitDiffViewer.previousChange"),circle:"",size:"small",onClick:Ce[9]||(Ce[9]=Pe=>Ne(-1))},{default:Z(()=>[B(De,{name:"chevron-up"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.previousChange2")]]),Me((f(),L("span",Kw,[we(M(oe.value)+" / "+M(A.value.length),1)])),[[Oe,o(c)("generated.gitDiffViewer.changes",{value0:A.value.length})]]),Me((f(),ye(ke,{class:"file-toolbar-control",disabled:A.value.length===0,"aria-label":o(c)("generated.gitDiffViewer.nextChange"),circle:"",size:"small",onClick:Ce[10]||(Ce[10]=Pe=>Ne(1))},{default:Z(()=>[B(De,{name:"chevron-down"})]),_:1},8,["disabled","aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.nextChange2")]]),e.embedded?ue("",!0):Me((f(),ye(ke,{key:0,class:"file-toolbar-control diff-close-button","aria-label":o(c)("generated.gitDiffViewer.closeDiffPreview"),circle:"",size:"small",onClick:Ce[11]||(Ce[11]=Pe=>r("close"))},{default:Z(()=>[B(De,{name:"close"})]),_:1},8,["aria-label"])),[[Oe,o(c)("generated.gitDiffViewer.closeDiffPreview")]])],8,Gw)]),default:Z(()=>[v.value&&X.value?(f(),ye(Jp,{key:0,ref_key:"findBar",ref:d,modelValue:u.value,"onUpdate:modelValue":Ce[12]||(Ce[12]=Pe=>u.value=Pe),current:ve.value,total:K.value.total,truncated:K.value.truncated,onPrevious:Ce[13]||(Ce[13]=Pe=>xe(-1)),onNext:Ce[14]||(Ce[14]=Pe=>xe(1)),onClose:Ze},null,8,["modelValue","current","total","truncated"])):ue("",!0),j("main",{class:"file-preview-content unified-diff-content",onClick:Ee,onContextmenu:O},[a.loading?ue("",!0):(f(),L(qe,{key:0},[a.loadFailed?(f(),ye(Lo,{key:0,retryable:"",message:a.loadErrorMessage??o(c)("generated.gitDiffViewer.gitDiffLoadFailed"),onRetry:Ce[15]||(Ce[15]=Pe=>r("retry"))},null,8,["message"])):H.value?.binary===!0?(f(),ye(Lo,{key:1,message:o(c)("generated.gitDiffViewer.binaryFilesDoNotSupportDiff")},{actions:Z(()=>[Me((f(),L("span",jw,[B(ke,{size:"small",disabled:!e.previewEnabled,"aria-description":e.previewEnabled?void 0:o(c)("generated.gitDiffViewer.filePreviewRequiresNewerNode"),onClick:Ce[16]||(Ce[16]=Pe=>r("preview"))},{default:Z(()=>[we(M(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"])):V.value?(f(),L("section",_w,[H.value?.afterTruncated===!0?(f(),L("small",Yw,M(o(c)("generated.gitDiffViewer.showingTheFirst512KiB")),1)):ue("",!0),j("pre",{ref_key:"workingTreePane",ref:i,class:"unified-diff-code","aria-label":o(c)("generated.gitDiffViewer.fullWorkingTreeFile"),style:Ct(o(w).style.value),onScroll:Ve,onPointerdown:Ce[17]||(Ce[17]=(...Pe)=>o(w).pointerDown&&o(w).pointerDown(...Pe)),onPointermove:Ce[18]||(Ce[18]=(...Pe)=>o(w).pointerMove&&o(w).pointerMove(...Pe)),onPointerup:Ce[19]||(Ce[19]=(...Pe)=>o(w).pointerEnd&&o(w).pointerEnd(...Pe)),onPointercancel:Ce[20]||(Ce[20]=(...Pe)=>o(w).pointerEnd&&o(w).pointerEnd(...Pe))},[h.value.length>0?(f(),L("code",Jw,[(f(!0),L(qe,null,Xe(h.value,(Pe,de)=>(f(),L("span",{key:de,class:je(["unified-diff-line",`is-${Pe.kind}`,{"is-active":Se(Pe)}]),"data-diff-index":Pe.diffIndex,"data-diff-row":de},[j("span",Zw,M(Pe.lineNumber??"−"),1),j("span",ek,M(Pe.kind==="deleted"?"−":Pe.kind==="added"?"+":" "),1),j("span",{class:"unified-diff-line-content","data-diff-line-content":"",onMousedown:rt,onMousemove:Ue,onMouseleave:Qe},[v.value&&u.value?(f(!0),L(qe,{key:0},Xe(K.value.lines[de],(Re,Le)=>(f(),L(qe,{key:Le},[Re.matchIndex!==void 0?(f(),L("mark",{key:0,class:je({"is-current":Re.matchIndex===y.value}),"data-inline-find-index":Re.matchIndex},M(Re.text),11,tk)):(f(),L(qe,{key:1},[we(M(Re.text),1)],64))],64))),128)):E.value?.rowIndex===de?(f(!0),L(qe,{key:1},Xe(Fe(Pe,de),(Re,Le)=>(f(),L(qe,{key:Le},[Le===1?(f(),L("span",nk,M(Re),1)):(f(),L(qe,{key:1},[we(M(Re),1)],64))],64))),128)):(f(),L(qe,{key:2},[we(M(Pe.text),1)],64))],32)],10,Xw))),128))])):(f(),L("span",ak,M(o(c)("generated.gitDiffViewer.emptyFile")),1))],44,Qw)])):Y.value?(f(),L(qe,{key:3},[a.source!=="HISTORY"&&a.source!=="TOOL_CHANGE"?(f(),L("p",ok,M(o(c)("generated.gitDiffViewer.theCurrentNodeDidNotReturnThe")),1)):ue("",!0),j("pre",{ref_key:"historyDiffPane",ref:l,class:"unified-history-diff"},[j("code",null,[(f(!0),L(qe,null,Xe(J.value.split(`
|
|
18
|
+
`),(Pe,de)=>(f(),L("span",{key:de,class:je(q.value[de])},[v.value&&u.value?(f(!0),L(qe,{key:0},Xe(K.value.lines[de],(Re,Le)=>(f(),L(qe,{key:Le},[Re.matchIndex!==void 0?(f(),L("mark",{key:0,class:je({"is-current":Re.matchIndex===y.value}),"data-inline-find-index":Re.matchIndex},M(Re.text),11,rk)):(f(),L(qe,{key:1},[we(M(Re.text),1)],64))],64))),128)):(f(),L(qe,{key:1},[we(M(Pe),1)],64))],2))),128))])],512)],64)):(f(),ye(Lo,{key:4,message:o(c)("generated.gitDiffViewer.gitDiffHasNoDisplayableTextContent")},gl({_:2},[e.previewEnabled?{name:"actions",fn:Z(()=>[B(ke,{size:"small",onClick:Ce[21]||(Ce[21]=Pe=>r("preview"))},{default:Z(()=>[we(M(o(c)("generated.gitDiffViewer.openFilePreview")),1)]),_:1})]),key:"0"}:void 0]),1032,["message"])),V.value&&le.value.length?(f(),L("aside",{key:5,ref_key:"minimap",ref:N,class:je(["diff-minimap",{"is-dragging":W.value}]),"aria-label":o(c)("generated.gitDiffViewer.diffCodeMinimap"),style:Ct(P.value),onPointerdown:Je,onPointermove:Ie,onPointerup:Ye,onPointercancel:Ye},[j("div",sk,[(f(!0),L(qe,null,Xe(le.value,(Pe,de)=>(f(),L("span",{key:de,class:je(["diff-minimap-row",`is-${Pe.kind}`])},[j("span",{innerHTML:Pe.html},null,8,lk)],2))),128))]),j("span",{class:"diff-minimap-viewport","aria-hidden":"true",style:Ct(ae.value)},null,4)],46,ik)):ue("",!0)],64))],32),B(Xp,{ref_key:"contextMenu",ref:C,"paste-enabled":!1,"select-all-enabled":X.value,"quote-enabled":g.value!==void 0,onSelectAll:Ce[22]||(Ce[22]=Pe=>_e(!0)),onQuote:Ce[23]||(Ce[23]=Pe=>g.value?.()),onCopy:ie,onReload:Ce[24]||(Ce[24]=Pe=>r("retry"))},null,8,["select-all-enabled","quote-enabled"])]),_:1},8,["role","aria-modal","class","file-name","path","loading","source-label","mobile-actions-label","aria-label"])}}}),uk=ut(dk,[["__scopeId","data-v-3e057b18"]]),pc=ot({__name:"WorkspaceGitDiffPage",props:{quoteTarget:{},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=$(),i=$(),l=$(!1),d=bt();Ge(()=>[a.active,s.value],()=>{a.active&&s.value&&i.value?.$el?.getClientRects().length&&document.visibilityState==="visible"&&document.hasFocus()&&r("viewed")},{flush:"post"});let v=0,u;async function y(){u?.abort(),u=new AbortController;const k=++v;s.value=void 0,d.value=void 0,l.value=!0;try{const T=await a.load(a.tab,u.signal);k===v&&(s.value=T)}catch(T){k===v&&(d.value=T)}finally{k===v&&(l.value=!1)}}return Ge(()=>a.tab.identity,()=>{y()},{immediate:!0}),wt(()=>{u?.abort(),v+=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(),ye(uk,{"quote-target":a.quoteTarget,revision:a.tab.commit,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":d.value!==void 0,"load-error-message":d.value===void 0?void 0:o(Tr)(d.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:y},null,8,["quote-target","revision","active","code-navigation-enabled","diff","load-failed","load-error-message","loading","path","paths","preview-enabled","source"]))}}),vk=ot({__name:"WorkspaceFileWorkbench",props:{quoteTargetFor:{type:Function},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=$(),i=a.controller;Ge(s,(be,he)=>a.registerPage(be,he),{flush:"sync"}),wt(()=>a.registerPage(void 0,s.value));const{frames:l}=i,d=i.suspended,{canGoBack:v,canGoForward:u,travel:y}=i,k=i.activeTabId,T=_(()=>l.value.find(be=>be.id===k.value)),p=i.tabList,m=new Uw;Ge(()=>a.predictionEnabled,be=>{be||m.clear()});function S(be,he,Ue){if(!a.predictionEnabled||be.gitFile===!0||be.id!==i.activeTabId.value||document.visibilityState!=="visible"||!document.hasFocus())return;const Qe=be.kind==="WORKTREE_TEXT"||be.kind==="HISTORY_TEXT";m.record(`${a.nodeId}:${a.workspaceId}`,{kind:Qe?"FILE":"DIFF",path:be.path,worktreePath:be.worktreePath,...he??{},...Ue?{revision:Ue}:{},...Qe?{}:{source:be.kind==="HISTORY_DIFF"?"HISTORY":be.kind==="TOOL_CHANGE_DIFF"?"TOOL_CHANGE":"WORKING_TREE"}})}const N=i.activeTabId,I=_(()=>T.value?.fileContent.value),b=_(()=>T.value?.targetLine.value),C=be=>a.fileWriteEnabled&&be.historySource===void 0&&be.worktreePath.value===void 0&&be.repositoryPath===void 0&&!oa(be.fileContent.value?.path??"");function g(be){const he=be.fileContent.value;return he===void 0?"unsupported":rr(he.path,he.encoding)}const R=_(()=>{if(!(a.nodeId===void 0||a.workspaceId===void 0))return`/api/workspaces/${encodeURIComponent(a.workspaceId)}`}),W=_(()=>a.enabled&&R.value!==void 0);function w(be,he,Ue){r("notice",c("generated.workspaceInspector.unableToLoad",{value0:he,value1:lt(be,Ue)}),"error",be)}function D(){const be=T.value;if(!(!a.codeNavigationEnabled||be?.repositoryPath!==void 0||be?.worktreePath.value!==void 0||be?.fileContent.value===void 0||a.nodeId===void 0||a.workspaceId===void 0))return{pageId:be.id,nodeId:a.nodeId,workspaceId:a.workspaceId,path:be.fileContent.value.path}}async function E(be){const he=D();he!==void 0&&be.length>0&&await i.navigate(he,{symbol:be})}async function H(be){const he=D();he!==void 0&&be.reference.value.length>0&&await i.navigate(he,be)}function J(be,he=T.value){he!==void 0&&i.openNavigationTarget(be,he.id)}function Y(be=T.value){i.clearNavigationResult(be?.id)}i.openWorkspaceFile;const q=i.openTab;async function Q(be){await i.reloadFile(be.id)}function V(be){return be.error.value===void 0?void 0:Tr(be.error.value,be.target.value?.path??"")}async function U(be,he,Ue){await i.openFile(be,he,Ue)}const A=a.openExternal;function h(){if(I.value===void 0)return!1;const be=I.value.path,he=or(be)?"markdown":qa(be)?"html":void 0;return he===void 0||T.value?.repositoryPath!==void 0||he==="html"&&T.value?.worktreePath.value!==void 0||he==="html"&&a.standaloneFileMode!==!0&&(be.startsWith("/")||/^[a-z]:[\\/]/i.test(be)||be.split(/[\\/]/).includes(".."))?!1:he==="html"&&a.standaloneFileMode!==!0?(F(be),!0):(A(be,b.value,void 0,he,T.value?.worktreePath.value,T.value?.repositoryPath),!0)}function F(be){if(!W.value){r("notice",c("generated.workbenchPageInteractionService.filePreviewIsCurrentlyUnavailable"),"error");return}if(!i.suspendForHtml()){r("notice",c("htmlPreview.saving"),"info");return}r("openHtmlPreview",be)}async function K(be){const he=i.tabList.value.find(Ue=>Ue.id===be);return he===void 0||!i.hasDraft(he.identity)||eg()}t({predictionAttention:()=>m.snapshot(`${a.nodeId}:${a.workspaceId}`),openCurrentRenderedPreview:h,downloadFile:X});async function ve(be,he,Ue){if(!W.value||!a.fileWriteEnabled)throw new Error("FILE_WRITE_INVALID");return i.saveFile(be.id,he,Ue)}async function X(be,he,Ue){if(!(!W.value||a.nodeId===void 0||a.workspaceId===void 0))try{Ue?.fileContent.value?.path===be?await i.downloadFile(Ue.id):await i.downloadTarget({nodeId:a.nodeId,workspaceId:a.workspaceId,path:be,...he===void 0?{}:{worktreePath:he}})}catch(Qe){w(Qe,be)}}async function oe(be){try{await i.downloadFile(be.id)}catch(he){w(he,c("generated.workspaceInspector.fileDownload"))}}function ge(be){i.closeTabs([be])}function le(){a.standaloneFileMode===!0&&window.close()}function ae(be){i.closeTabs(be)}const P=i.activateTab;function z(be,he){const Ue=typeof be=="object"&&be!==null&&typeof be.text=="string"?be.text:typeof be=="object"&&be!==null&&typeof be.summary=="string"?be.summary:c("generated.workspaceInspector.gitDiffHasNoDownloadableTextContent"),Qe=URL.createObjectURL(new Blob([Ue],{type:"text/plain;charset=utf-8"})),rt=document.createElement("a");rt.href=Qe,rt.download=`${he.split("/").at(-1)??"changes"}.diff`,rt.click(),URL.revokeObjectURL(Qe)}const ce=i.openWorktreeDiffText;function te(be){if(be.kind==="TOOL_CHANGE_DIFF"){U(be.path);return}if(be.kind==="WORKTREE_DIFF"){ce(be);return}ee(be)}async function x(be,he){if(be.kind!=="HISTORY_DIFF"){te(be);return}await ee(be,he)}const ee=i.openHistoryText;async function se(be,he){be.kind==="WORKTREE_DIFF"&&(await ce(be),await E(he))}async function Se(be,he){be.kind==="WORKTREE_DIFF"&&(await ce(be),await H(he))}async function Fe(be,he){return a.loadDiff(be,he)}async function We(be,he){if(be.kind!=="WORKTREE_DIFF")return;const Ue=a.adjacentDiff(be,he);Ue!==void 0&&W.value&&R.value!==void 0&&await q(Ue)}return(be,he)=>(f(),ye(ra,{to:"body"},[o(p).length>0&&!o(d)?(f(),ye(Fl,{key:0,ref_key:"workspaceFileTabsRef",ref:s,tabs:o(p),presentation:e.standaloneFileMode?"window":"overlay","active-tab-id":o(N),"can-go-back":o(v),"can-go-forward":o(u),"can-close-unmounted-tab":K,onBack:he[1]||(he[1]=Ue=>o(y)(-1)),onForward:he[2]||(he[2]=Ue=>o(y)(1)),onActivate:o(P),onPageReady:o(i).pageReady,onClose:ge,onCloseAll:ae,onCloseLast:le},{default:Z(({tab:Ue,active:Qe,registerPageHandle:rt,requestClose:ne})=>[(f(!0),L(qe,null,Xe(o(l),me=>(f(),L(qe,{key:me.id},[Ue.id===me.id&&me.fileContent.value!==void 0&&g(me)==="text"?Me((f(),ye(Ul,{key:0,"quote-target":a.quoteTargetFor?.(Ue),"quote-origin":Ue.kind==="HISTORY_TEXT"?"HISTORY":"WORKING_TREE","quote-revision":Ue.commit,ref_for:!0,ref:rt,active:Qe,downloading:me.downloading.value,file:me.fileContent.value,kind:g(me),loading:me.loading.value,"load-error":V(me),markdown:me.repositoryPath===void 0&&me.worktreePath.value===void 0&&me.fileContent.value.encoding==="utf-8"&&o(or)(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(qa)(me.fileContent.value.path),"write-enabled":C(me),"save-file":(Ne,Ve)=>ve(me,Ne,Ve),"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":Ue.identity,"initial-dirty-draft":o(i).draftFor(Ue.identity),onClose:ne,onDownload:Ne=>oe(me),onOpenMarkdownPreview:Ne=>o(A)(me.fileContent.value.path,me.targetLine.value,me.targetColumn.value,"markdown"),onOpenHtmlPreview:Ne=>e.standaloneFileMode?o(A)(me.fileContent.value.path,void 0,void 0,"html"):F(me.fileContent.value.path),onNavigateSymbol:E,onNavigateFile:H,onDismissNavigation:Ne=>Y(me),onOpenNavigationTarget:Ne=>J(Ne,me),onReload:Ne=>Q(me),onDirtyDraftApplied:he[0]||(he[0]=Ne=>o(i).consumeDraft(Ne)),onViewed:Ne=>Qe&&S(Ue,Ne,me.fileContent.value?.revision)},null,8,["quote-target","quote-origin","quote-revision","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,Qe]]):Ue.id===me.id&&me.fileContent.value!==void 0?Me((f(),ye(Vl,{key:1,ref_for:!0,ref:rt,active:Qe,"content-url":me.contentUrl.value,downloading:me.downloading.value,file:me.fileContent.value,kind:g(me),loading:me.loading.value,"load-error":V(me),onReload:Ne=>Q(me),onClose:ne,onDownload:Ne=>oe(me)},null,8,["active","content-url","downloading","file","kind","loading","load-error","onReload","onClose","onDownload"])),[[At,Qe]]):ue("",!0)],64))),128)),Ue.kind==="WORKTREE_DIFF"||Ue.kind==="HISTORY_DIFF"||Ue.kind==="TOOL_CHANGE_DIFF"?Me((f(),ye(pc,{key:0,"quote-target":a.quoteTargetFor?.(Ue),ref:rt,active:Qe,"code-navigation-enabled":e.codeNavigationEnabled&&Ue.gitFile!==!0,load:Fe,onViewed:me=>Qe&&S(Ue),tab:Ue,onClose:ne,onDownload:me=>z(me,Ue.path),onEdit:me=>te(Ue),onMoveFile:me=>We(Ue,me),onPreview:me=>x(Ue,me),onNavigateSymbol:me=>se(Ue,me),onNavigateFile:me=>Se(Ue,me)},null,8,["quote-target","active","code-navigation-enabled","onViewed","tab","onClose","onDownload","onEdit","onMoveFile","onPreview","onNavigateSymbol","onNavigateFile"])),[[At,Qe]]):ue("",!0)]),_:1},8,["tabs","presentation","active-tab-id","can-go-back","can-go-forward","onActivate","onPageReady"])):ue("",!0)]))}}),fk={class:"current-changes"},pk={key:0,class:"changes-read-state"},gk={key:1,class:"changes-read-state",role:"status"},mk={key:2,class:"git-fetch-notice",role:"status"},hk={key:3,class:"git-worktrees"},yk={class:"git-worktree-heading"},wk={key:0},kk=["aria-label"],bk={class:"git-worktree-name"},Ik={class:"git-worktree-statuses"},Sk={key:4,class:"git-worktrees-truncated",role:"status"},Ck={key:5,class:"empty"},Tk=["data-repository-path"],Ek={class:"repository-heading-content"},Rk={class:"repository-title-row"},Ak={key:0,class:"repository-branch current-branch"},Nk=["disabled","aria-label","aria-busy"],Dk={class:"repository-tags-row"},Pk={"aria-hidden":"true"},Ok={key:0,class:"repository-relative-path"},Lk={key:1,class:"repository-physical-path"},Wk={key:0,class:"change-repository-empty"},Mk={key:1,class:"change-repository-empty",role:"status"},xk=["aria-label","onClick"],$k={class:"change-path-content"},Fk={class:"change-file-heading"},Uk={class:"change-file-name"},Vk={key:0,class:"change-directory"},qk={class:"change-status"},Hk={class:"change-status"},Yo=200,Bk=ot({__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:d,restoringPath:v,loadChanges:u}=n.service,y=_(()=>d.value||n.watchStatus==="loading"),k=_(()=>n.service.changesError.value||n.watchStatus==="failed"),T=$(!1),p=_(()=>k.value||T.value&&y.value);Ge([y,k],([A,h])=>{!A&&!h&&(T.value=!1)}),Ge([()=>n.target?.nodeId,()=>n.target?.workspaceId],()=>{T.value=!1});const m=_(()=>r.value.some(A=>A.source==="ROOT"));function S(){y.value||(T.value=!0,n.watchStatus==="failed"?a("retryWatch"):n.service.changesError.value&&n.service.retryChanges())}const N=$(Yo),I=$(),b=$([]),C=_(()=>dy(r.value,N.value)),g=_(()=>C.value.reduce((A,h)=>A+h.changes.length,0)),R=_(()=>r.value.reduce((A,h)=>A+h.changes.length,0)),W=_(()=>g.value<R.value),w=_(()=>W.value?C.value.filter(A=>A.changes.length>0).at(-1):void 0);Ge(r,()=>{N.value=Yo}),yr(A=>{const h=b.value[0],F=I.value,K=N.value;if(!h||!F||typeof IntersectionObserver>"u")return;let ve=!0;const X=new IntersectionObserver(oe=>{ve&&N.value===K&&oe.some(ge=>ge.isIntersecting)&&(N.value+=Yo)},{root:F});X.observe(h),A(()=>{ve=!1,X.disconnect()})},{flush:"post"});function D(A){return A.branch??c("gitWorktrees.detachedHead",{head:A.head.slice(0,8)})}function E(A){return A==="CLEAN"?c("gitWorktrees.clean"):A==="DIRTY"?c("gitWorktrees.dirty"):c("gitWorktrees.unavailable")}function H(A){return A==="CLEAN"?"success":A==="DIRTY"?"warning":"info"}function J(A){return`${A.source}:${A.worktreePath??A.repositoryPath}`}function Y(A){return A==="ROOT"?c("gitWorktrees.rootRepository"):A==="SUBMODULE"?c("gitWorktrees.submodule"):c("gitWorktrees.worktree")}function q(A){if(A.branch!==null)return A.branch;if(A.head!==void 0)return c("gitWorktrees.detachedHead",{head:A.head.slice(0,8)})}function Q(A){return{STAGED:"S",UNSTAGED:"W",UNTRACKED:"?"}[A]}function V(A){return lt(new Yt(A.code,A.message,A.parameters,A.details))}async function U(A){const h=n.target;if(h===void 0||v.value!==void 0)return;const F=vn(A),K=A.state==="UNTRACKED"?c("generated.workspaceInspector.deleteUntrackedFile"):c("generated.workspaceInspector.revertChanges");try{await Nt.confirm(c("generated.workspaceInspector.thisActionCannotBeUndone",{value0:K,value1:F}),K,{confirmButtonText:A.state==="UNTRACKED"?c("generated.workspaceInspector.delete2"):c("generated.workspaceInspector.revert"),cancelButtonText:c("generated.workspaceInspector.cancel3"),type:"warning"})}catch{return}!await n.service.restoreChange(A,h)||n.target?.nodeId!==h.nodeId||n.target.workspaceId!==h.workspaceId||a("notice",A.state==="UNTRACKED"?c("generated.workspaceInspector.deleted",{value0:F}):c("generated.workspaceInspector.reverted",{value0:F}),"success")}return(A,h)=>{const F=St,K=sa,ve=Tt("tooltip");return f(),L("section",fk,[p.value?(f(),L("div",pk,[Me((f(),ye(F,{link:"","aria-description":!y.value&&e.service.changesError.value?o(lt)(e.service.changesFailureCause.value):void 0,"aria-disabled":y.value,"aria-busy":y.value||void 0,onClick:S},{default:Z(()=>[y.value?(f(),ye(De,{key:0,name:"loading-action"})):ue("",!0),we(" "+M(o(c)("common.loadFailedRetry")),1)]),_:1},8,["aria-description","aria-disabled","aria-busy"])),[[ve,!y.value&&e.service.changesError.value?o(lt)(e.service.changesFailureCause.value):""]])])):y.value&&!m.value?(f(),L("div",gk,[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.workspaceInspector.loading")),1)])):ue("",!0),e.service.changesFetchFailed.value?(f(),L("p",mk,M(o(c)("gitSync.fetchFailed")),1)):ue("",!0),o(s).length>0?(f(),L("div",hk,[j("div",yk,[j("strong",null,M(o(c)("gitWorktrees.title")),1),o(i)?(f(),L("small",wk,M(o(c)("gitWorktrees.truncated")),1)):ue("",!0)]),j("ul",{class:"git-worktree-list","aria-label":o(c)("gitWorktrees.title")},[(f(!0),L(qe,null,Xe(o(s),(X,oe)=>(f(),L("li",{key:`${X.directoryName}:${X.head}:${oe}`},[Me((f(),L("strong",bk,[we(M(X.directoryName),1)])),[[ve,X.directoryName]]),Me((f(),L("code",null,[we(M(D(X)),1)])),[[ve,D(X)]]),j("span",Ik,[X.current?(f(),ye(K,{key:0,class:"repository-current",type:"info",effect:"plain",size:"small"},{default:Z(()=>[we(M(o(c)("gitWorktrees.current")),1)]),_:1})):ue("",!0),B(K,{type:H(X.status),effect:"plain",size:"small"},{default:Z(()=>[we(M(E(X.status)),1)]),_:2},1032,["type"]),X.locked?(f(),ye(K,{key:1,type:"warning",effect:"plain",size:"small"},{default:Z(()=>[we(M(o(c)("gitWorktrees.locked")),1)]),_:1})):ue("",!0),X.prunable?(f(),ye(K,{key:2,type:"info",effect:"plain",size:"small"},{default:Z(()=>[we(M(o(c)("gitWorktrees.prunable")),1)]),_:1})):ue("",!0)])]))),128))],8,kk)])):o(i)?(f(),L("p",Sk,M(o(c)("gitWorktrees.truncated")),1)):ue("",!0),(f(!0),L(qe,null,Xe(o(l),(X,oe)=>(f(),L("p",{key:oe,class:"change-repository-empty",role:"status"},M(V(X)),1))),128)),o(r).length===0&&!y.value&&!k.value?(f(),L("p",Ck,M(o(c)("generated.workspaceInspector.theWorkspaceHasNoRepositoriesToDisplay")),1)):o(r).length>0?(f(),L("ul",{key:6,ref_key:"changeListElement",ref:I,class:"change-list"},[(f(!0),L(qe,null,Xe(C.value,X=>(f(),L(qe,{key:J(X)},[j("li",{class:"change-repository-heading","data-repository-path":X.repositoryPath},[j("div",Ek,[j("div",Rk,[Me((f(),L("strong",null,[we(M(X.repositoryName||o(c)("generated.workspaceInspector.rootRepository")),1)])),[[ve,X.physicalPath||X.repositoryPath]]),q(X)?Me((f(),L("code",Ak,[we(M(q(X)),1)])),[[ve,q(X)]]):ue("",!0),X.source==="ROOT"?Me((f(),L("button",{key:1,class:"changes-refresh-button file-explorer-utility-button utility-control",disabled:y.value,"aria-label":o(c)("generated.workspaceInspector.refreshGitChanges"),"aria-busy":y.value||void 0,type:"button",onClick:h[0]||(h[0]=oe=>o(u)(!0))},[B(De,{name:y.value&&!p.value?"loading-action":"refresh"},null,8,["name"])],8,Nk)),[[ve,o(c)("generated.workspaceInspector.refreshGitChanges2")]]):ue("",!0)]),j("div",Dk,[B(K,{class:"repository-kind",type:"info",effect:"plain",size:"small"},{default:Z(()=>[we(M(Y(X.source)),1)]),_:2},1024),X.current?(f(),ye(K,{key:0,class:"repository-current",type:"info",effect:"plain",size:"small"},{default:Z(()=>[we(M(o(c)("gitWorktrees.current")),1)]),_:1})):ue("",!0),X.status?(f(),ye(K,{key:1,type:H(X.status),effect:"plain",size:"small"},{default:Z(()=>[we(M(E(X.status)),1)]),_:2},1032,["type"])):ue("",!0),X.locked?(f(),ye(K,{key:2,type:"warning",effect:"plain",size:"small"},{default:Z(()=>[we(M(o(c)("gitWorktrees.locked")),1)]),_:1})):ue("",!0),X.prunable?(f(),ye(K,{key:3,type:"info",effect:"plain",size:"small"},{default:Z(()=>[we(M(o(c)("gitWorktrees.prunable")),1)]),_:1})):ue("",!0),X.tracking&&(X.tracking.ahead>0||X.tracking.behind>0)?Me((f(),ye(K,{key:4,class:"repository-sync-tag",effect:"plain",size:"small","aria-label":o(c)("gitSync.description",X.tracking)},{default:Z(()=>[j("span",Pk,"↓ "+M(X.tracking.behind)+" ↑ "+M(X.tracking.ahead),1)]),_:2},1032,["aria-label"])),[[ve,o(c)("gitSync.description",X.tracking)]]):ue("",!0)]),X.source==="SUBMODULE"&&X.repositoryPath?Me((f(),L("code",Ok,[we(M(X.repositoryPath),1)])),[[ve,X.repositoryPath]]):ue("",!0),(X.source==="WORKTREE"||X.source==="ROOT")&&X.physicalPath?Me((f(),L("code",Lk,[we(M(X.physicalPath),1)])),[[ve,X.physicalPath]]):ue("",!0)])],8,Tk),X.changes.length===0&&!X.changesTruncated?(f(),L("li",Wk,M(X.error!==void 0?V(X.error):X.status==="UNAVAILABLE"?o(c)("gitWorktrees.unavailable"):o(c)("generated.workspaceInspector.noUncommittedChanges")),1)):ue("",!0),X.changesTruncated?(f(),L("li",Mk,M(o(c)("gitWorktrees.changesTruncated")),1)):ue("",!0),(f(!0),L(qe,null,Xe(X.changes,oe=>(f(),L("li",{key:o(fr)(oe),class:"change-entry"},[Me((f(),L("button",{class:"change-path",type:"button","aria-label":oe.diffAvailable&&!o(Er)(oe.path)?o(c)("generated.workspaceInspector.viewDiffFor",{value0:o(vn)(oe)}):o(c)("generated.workspaceInspector.preview",{value0:o(vn)(oe)}),onClick:ge=>a("open",oe,ge.ctrlKey||ge.metaKey)},[j("span",$k,[j("span",Fk,[B(hn,{name:o(vr)(oe.path)},null,8,["name"]),j("strong",Uk,M(o(vr)(oe.path)),1)]),o(Ps)(oe.path)?(f(),L("small",Vk,M(o(Ps)(oe.path)),1)):ue("",!0)])],8,xk)),[[ve,o(vn)(oe)]]),Me((f(),L("span",qk,[we(M(o(dc)(oe.change)),1)])),[[ve,oe.change]]),Me((f(),L("small",Hk,[we(M(Q(oe.state)),1)])),[[ve,oe.state]]),Me(B(F,{class:"change-restore utility-control",text:"",icon:o(Be)("undo"),"loading-icon":o(Be)("loading-action"),loading:o(v)===o(fr)(oe),disabled:o(v)!==void 0,"aria-label":oe.state==="UNTRACKED"?o(c)("generated.workspaceInspector.deleteChangesTo",{value0:o(vn)(oe)}):o(c)("generated.workspaceInspector.revertChangesTo",{value0:o(vn)(oe)}),size:"small",onClick:ge=>U(oe)},null,8,["icon","loading-icon","loading","disabled","aria-label","onClick"]),[[ve,oe.state==="UNTRACKED"?o(c)("generated.workspaceInspector.deleteUntrackedFile2"):o(c)("generated.workspaceInspector.revertChanges2")]])]))),128)),X===w.value?(f(),L("li",{key:2,ref_for:!0,ref_key:"loadMoreElements",ref:b,class:"change-append-state","aria-hidden":"true"},null,512)):ue("",!0)],64))),128))],512)):ue("",!0)])}}}),Gk=ut(Bk,[["__scopeId","data-v-646d1a6b"]]),mr=14,js=19,_s=38;function aa(e){return e*mr+mr/2}function Ys(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 Qo(e){return e.filter((t,n)=>e.indexOf(t)===n)}function zk(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,...Qo(n.parents));const l=Qo(i),d=[];for(const[u,y]of s.entries()){if(u===a)continue;const k=l.indexOf(y);k>=0&&d.push({path:Ys(u,0,k,_s),color:u})}r&&d.push({path:`M ${aa(a)} 0 L ${aa(a)} ${js}`,color:a});for(const u of Qo(n.parents)){const y=l.indexOf(u);y>=0&&d.push({path:Ys(a,js,y,_s),color:y})}const v=Math.max(s.length,l.length,1);return t=l,{lane:a,laneCount:v,outgoingLaneCount:t.length,edges:d}})}function Na(e){return e.laneCount*mr}function Qs(e){return aa(e.lane)}const Kk={class:"history-toolbar"},jk=["disabled","aria-label","aria-busy"],_k={key:0,class:"git-fetch-notice",role:"status"},Yk={key:1,class:"empty"},Qk={key:2,class:"history-list"},Jk=["aria-label","onClick","onContextmenu"],Xk=["viewBox"],Zk=["d"],eb=["cx"],tb=["cx"],nb={class:"history-content"},ab={class:"history-title-row"},ob={class:"history-subject"},rb=["x1","x2"],ib={class:"history-files"},sb={key:0,class:"empty",role:"status"},lb={key:1,class:"empty"},cb={key:0,class:"mar-tooltip-control"},db={class:"history-file-status"},ub={class:"history-file-path"},vb={key:4,class:"history-load-more",role:"status"},fb=ot({__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:d,historyFiles:v,historyFilesLoading:u,historyFilesErrors:y,loadHistory:k}=n.service,T=$(),p=$();yr(F=>{const K=T.value,ve=p.value;if(!K||!ve||l.value||d.value||typeof IntersectionObserver>"u")return;const X=new IntersectionObserver(oe=>{oe.some(ge=>ge.isIntersecting)&&k(!1)},{root:ve,rootMargin:"0px 0px 96px 0px"});X.observe(K),F(()=>X.disconnect())},{flush:"post"});const m=$(n.service.historyRepositoryPath.value),S=$([...n.service.selectedHistoryRefs.value]),N=$([]),I=$({}),b=$();Ge(n.service.historyRepositoryPath,F=>{m.value=F}),Ge(n.service.selectedHistoryRefs,F=>{S.value=[...F]}),Ge(n.service.historySource,()=>{N.value=[],I.value={},J()});const C=_({get:()=>m.value===""?"__ROOT_REPOSITORY__":m.value,set:F=>{m.value=F==="__ROOT_REPOSITORY__"?"":F}}),g=_(()=>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")}))),R=_(()=>{const F=zk(s.value);return s.value.map((K,ve)=>({commit:K,graph:F[ve]}))});function W(){return n.service.selectHistory(m.value,S.value)}function w(){return S.value=[],W()}async function D(F){if(N.value.includes(F.hash)){N.value=N.value.filter(K=>K!==F.hash);return}N.value=[...N.value,F.hash],I.value[F.hash]===void 0&&(I.value={...I.value,[F.hash]:[]}),await n.service.loadHistoryFiles(F)}function E(F){return Number.isFinite(F)?Kt(F):"-"}function H(F,K){K.preventDefault();const ve=176,X=38;b.value={commit:F,x:Math.max(6,Math.min(K.clientX,window.innerWidth-ve-6)),y:Math.max(6,Math.min(K.clientY,window.innerHeight-X-6))}}function J(){b.value=void 0}function Y(F){F.target instanceof Element&&F.target.closest(".history-context-menu")!==null||J()}async function q(){const F=b.value?.commit;if(F!==void 0){J();try{await navigator.clipboard.writeText(F.hash),a("notice",c("generated.workspaceInspector.commitIdCopied"),"info")}catch(K){a("notice",lt(K),"error",K)}}}function Q(F){return`${Math.min(8,Math.max(0,F))*10+2}px`}function V(F,K){const ve=F.split("/").filter(Boolean);return ve.slice(0,-1).every((X,oe)=>K.includes(ve.slice(0,oe+1).join("/")))}function U(F,K){const ve=new Set,X=[];for(const oe of[...F].sort((ge,le)=>ge.path.localeCompare(le.path))){const ge=oe.path.split("/").filter(Boolean);for(let le=0;le<ge.length-1;le+=1){const ae=ge.slice(0,le+1).join("/");ve.has(ae)||(ve.add(ae),V(ae,K)&&X.push({kind:"DIRECTORY",path:ae,name:ge[le]??ae,depth:le}))}V(oe.path,K)&&X.push({kind:"FILE",file:oe,name:ge.at(-1)??oe.path,depth:ge.length-1})}return X}function A(F,K){const ve=I.value[F]??[];I.value={...I.value,[F]:ve.includes(K)?ve.filter(X=>X!==K):[...ve,K]}}let h;return Ot(()=>{h=Ft.register({command:"gitHistory.dismissMenu",scope:"overlay",priority:150,keys:[{key:"Escape"}],when:()=>b.value!==void 0,execute:()=>(J(),"HANDLED")}),window.addEventListener("pointerdown",Y),window.addEventListener("resize",J),window.addEventListener("scroll",J,!0)}),wt(()=>{h?.(),window.removeEventListener("pointerdown",Y),window.removeEventListener("resize",J),window.removeEventListener("scroll",J,!0)}),(F,K)=>{const ve=Vn,X=yn,oe=sg,ge=St,le=Tt("tooltip");return f(),L("section",{ref_key:"historyContainer",ref:p,class:"git-history"},[j("div",Kk,[B(X,{modelValue:C.value,"onUpdate:modelValue":K[0]||(K[0]=ae=>C.value=ae),class:"history-filter","clear-icon":o(Be)("clear-input"),"suffix-icon":o(Be)("chevron-down"),"aria-label":o(c)("generated.workspaceInspector.selectGitRepository"),placeholder:o(c)("generated.workspaceInspector.selectAGitRepository"),size:"small",onChange:w},{default:Z(()=>[(f(!0),L(qe,null,Xe(g.value,ae=>(f(),ye(ve,{key:ae.value,label:ae.label,value:ae.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue","clear-icon","suffix-icon","aria-label","placeholder"]),B(X,{modelValue:S.value,"onUpdate:modelValue":K[1]||(K[1]=ae=>S.value=ae),class:"history-filter","clear-icon":o(Be)("clear-input"),"suffix-icon":o(Be)("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:W},{default:Z(()=>[B(oe,{label:o(c)("generated.workspaceInspector.localBranches")},{default:Z(()=>[(f(!0),L(qe,null,Xe(o(r).filter(ae=>ae.kind==="LOCAL"),ae=>(f(),ye(ve,{key:ae.name,label:ae.displayName,value:ae.name},null,8,["label","value"]))),128))]),_:1},8,["label"]),B(oe,{label:o(c)("generated.workspaceInspector.remoteBranches")},{default:Z(()=>[(f(!0),L(qe,null,Xe(o(r).filter(ae=>ae.kind==="REMOTE"),ae=>(f(),ye(ve,{key:ae.name,label:ae.displayName,value:ae.name},null,8,["label","value"]))),128))]),_:1},8,["label"])]),_:1},8,["modelValue","clear-icon","suffix-icon","aria-label","placeholder"]),Me((f(),L("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:K[2]||(K[2]=ae=>o(k)(!0,!0))},[B(De,{name:"refresh"})],8,jk)),[[le,o(c)("generated.workspaceInspector.refreshGitHistory2")]])]),e.service.historyFetchFailed.value?(f(),L("p",_k,M(o(c)("gitSync.fetchFailed")),1)):ue("",!0),!o(l)&&!o(d)&&o(s).length===0?(f(),L("p",Yk,M(o(c)("generated.workspaceInspector.noGitCommitHistory")),1)):(f(),L("ul",Qk,[(f(!0),L(qe,null,Xe(R.value,({commit:ae,graph:P})=>(f(),L("li",{key:ae.hash,class:"history-commit"},[Me((f(),L("button",{"aria-label":`${ae.subject||o(c)("generated.workspaceInspector.untitled")}
|
|
19
|
+
${ae.authorName} · ${E(ae.committedAt)}${ae.refs.length>0?`
|
|
20
|
+
${ae.refs.join(", ")}`:""}`,class:"history-commit-row",type:"button",onClick:z=>D(ae),onContextmenu:z=>H(ae,z)},[(f(),L("svg",{class:"history-graph",style:Ct({width:`${o(Na)(P)}px`}),viewBox:`0 0 ${o(Na)(P)} 38`,"aria-hidden":"true"},[(f(!0),L(qe,null,Xe(P.edges,(z,ce)=>(f(),L("path",{key:`${ae.hash}:${ce}`,class:je(["history-graph-edge",`history-graph-color-${z.color%6}`]),d:z.path},null,10,Zk))),128)),j("circle",{class:"history-graph-node-ring",cx:o(Qs)(P),cy:"19",r:"4.5"},null,8,eb),j("circle",{class:je(["history-graph-node",`history-graph-color-${P.lane%6}`]),cx:o(Qs)(P),cy:"19",r:"3"},null,10,tb)],12,Xk)),j("span",nb,[j("span",ab,[j("span",ob,M(ae.subject||o(c)("generated.workspaceInspector.untitled2")),1),(f(!0),L(qe,null,Xe(ae.refs,z=>Me((f(),L("span",{key:z,class:"history-ref"},[we(M(z),1)])),[[le,z]])),128))]),j("small",null,M(ae.authorName)+" · "+M(E(ae.committedAt)),1)])],40,Jk)),[[le,`${ae.subject||o(c)("generated.workspaceInspector.untitled")}
|
|
21
|
+
${ae.authorName} · ${E(ae.committedAt)}${ae.refs.length>0?`
|
|
22
|
+
${ae.refs.join(", ")}`:""}`]]),N.value.includes(ae.hash)?(f(),L("div",{key:0,class:"history-expanded",style:Ct({gridTemplateColumns:`${o(Na)(P)}px minmax(0, 1fr)`})},[(f(),L("svg",{class:"history-graph-continuation",style:Ct({width:`${o(Na)(P)}px`}),"aria-hidden":"true"},[(f(!0),L(qe,null,Xe(P.outgoingLaneCount,z=>(f(),L("line",{key:z,class:je(`history-graph-color-${(z-1)%6}`),x1:(z-1)*14+7,y1:"0",x2:(z-1)*14+7,y2:"100%"},null,10,rb))),128))],4)),j("ul",ib,[o(u).includes(ae.hash)&&!o(y).includes(ae.hash)?(f(),L("li",sb,[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.workspaceInspector.loading")),1)])):ue("",!0),o(y).includes(ae.hash)?(f(),L("li",lb,[Me((f(),ye(ge,{link:"","aria-description":o(u).includes(ae.hash)?void 0:o(lt)(e.service.historyFilesFailureCauses.value[ae.hash]),"aria-disabled":o(u).includes(ae.hash),"aria-busy":o(u).includes(ae.hash)||void 0,onClick:z=>!o(u).includes(ae.hash)&&e.service.loadHistoryFiles(ae)},{default:Z(()=>[o(u).includes(ae.hash)?(f(),L(qe,{key:0},[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),L(qe,{key:1},[we(M(o(c)("common.loadFailedRetry")),1)],64))]),_:2},1032,["aria-description","aria-disabled","aria-busy","onClick"])),[[le,o(u).includes(ae.hash)?"":o(lt)(e.service.historyFilesFailureCauses.value[ae.hash])]])])):ue("",!0),(f(!0),L(qe,null,Xe(U(o(v)[ae.hash]??[],I.value[ae.hash]??[]),z=>(f(),L("li",{key:z.kind==="DIRECTORY"?`directory:${z.path}`:`file:${z.file.previousPath??""}:${z.file.path}`},[z.kind==="DIRECTORY"?Me((f(),L("span",cb,[B(ge,{text:"",size:"small",class:"history-directory",style:Ct({paddingLeft:Q(z.depth)}),"aria-expanded":(I.value[ae.hash]??[]).includes(z.path),onClick:it(ce=>A(ae.hash,z.path),["stop"])},{default:Z(()=>[B(De,{name:"chevron-right",class:je(["history-directory-toggle",{"is-expanded":(I.value[ae.hash]??[]).includes(z.path)}])},null,8,["class"]),B(hn,{name:z.name,kind:"DIRECTORY"},null,8,["name"]),we(M(z.name),1)]),_:2},1032,["style","aria-expanded","onClick"])])),[[le,z.path]]):Me((f(),ye(ge,{key:1,text:"",size:"small",style:Ct({paddingLeft:Q(z.depth)}),onClick:it(ce=>a("open",ae,z.file,ce.ctrlKey||ce.metaKey),["stop"])},{default:Z(()=>[j("span",db,M(o(dc)(z.file.change)),1),B(hn,{name:z.name},null,8,["name"]),j("span",ub,M(z.name),1)]),_:2},1032,["style","onClick"])),[[le,z.file.previousPath?`${z.file.previousPath} → ${z.file.path}`:z.file.path]])]))),128))])],4)):ue("",!0)]))),128))])),(f(),ye(ra,{to:"body"},[b.value!==void 0?(f(),L("div",{key:0,class:"history-context-menu",style:Ct({left:`${b.value.x}px`,top:`${b.value.y}px`}),role:"menu"},[j("button",{type:"button",role:"menuitem",onClick:q},[B(De,{name:"paste"}),we(" "+M(o(c)("generated.workspaceInspector.copyCommitId")),1)])],4)):ue("",!0)])),o(d)?Me((f(),ye(ge,{key:3,link:"","aria-description":o(l)?void 0:o(lt)(e.service.historyFailureCause.value),class:"history-load-more","aria-disabled":o(l),"aria-busy":o(l)||void 0,onClick:K[3]||(K[3]=ae=>!o(l)&&o(k)(o(d).resetPage,o(d).fetch))},{default:Z(()=>[o(l)?(f(),L(qe,{key:0},[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),L(qe,{key:1},[we(M(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-description","aria-disabled","aria-busy"])),[[le,o(l)?"":o(lt)(e.service.historyFailureCause.value)]]):o(l)?(f(),L("div",vb,[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.workspaceInspector.loading")),1)])):ue("",!0),o(i)!==null&&!o(d)?(f(),L("div",{key:5,ref_key:"historyBoundary",ref:T,class:"history-boundary","aria-hidden":"true"},null,512)):ue("",!0)],512)}}}),pb=ut(fb,[["__scopeId","data-v-2917cf3c"]]),gb={class:"content-search"},mb={class:"content-search-options"},hb=["disabled","aria-label","aria-busy"],yb={key:1,class:"watch-status",role:"status"},wb={key:2,class:"content-search-warning"},kb=["aria-label"],bb=["aria-label","onClick"],Ib={class:"content-search-name"},Sb={key:0},Cb={key:0,class:"file-search-empty"},Tb=ot({__name:"WorkspaceContentSearch",props:{service:{},enabled:{type:Boolean},nodeId:{},workspaceId:{}},emits:["open"],setup(e,{expose:t,emit:n}){const a=e,r=n,s=$(""),i=$(!1),l=$(),d=a.service,v=d.appliedQuery,u=d.appliedUseRegex,y=d.matches,k=d.loading,T=d.error,p=d.truncated;async function m(){!a.enabled||a.nodeId===void 0||a.workspaceId===void 0||await d.search({nodeId:a.nodeId,workspaceId:a.workspaceId,query:s.value,useRegex:i.value})}function S(N){if(u.value)return[{text:N,match:!1}];const I=N.toLocaleLowerCase().indexOf(v.value.toLocaleLowerCase());if(I<0||v.value==="")return[{text:N,match:!1}];const b=I+v.value.length;return[{text:N.slice(0,I),match:!1},{text:N.slice(I,b),match:!0},{text:N.slice(b),match:!1}].filter(C=>C.text!=="")}return t({focus:()=>gt(()=>l.value?.focus()),snapshot:()=>({contentQuery:s.value,contentUseRegex:i.value}),restore:N=>{s.value=typeof N.contentQuery=="string"?N.contentQuery:"",i.value=N.contentUseRegex===!0}}),(N,I)=>{const b=Gl,C=Vt,g=St,R=Tt("tooltip");return f(),L("section",gb,[j("div",mb,[B(b,{modelValue:i.value,"onUpdate:modelValue":I[0]||(I[0]=W=>i.value=W),size:"small"},{default:Z(()=>[we(M(o(c)("generated.workspaceInspector.useRegularExpression")),1)]),_:1},8,["modelValue"])]),j("form",{class:"explorer-toolbar content-search-toolbar",onSubmit:it(m,["prevent"])},[B(C,{ref_key:"contentSearchInput",ref:l,modelValue:s.value,"onUpdate:modelValue":I[1]||(I[1]=W=>s.value=W),"aria-label":o(c)("generated.workspaceInspector.searchFileContents"),maxlength:"256",placeholder:o(c)("generated.workspaceInspector.searchFileContents2"),size:"small"},null,8,["modelValue","aria-label","placeholder"]),Me((f(),L("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,hb)),[[R,o(c)("generated.workspaceInspector.runContentSearch2")]])],32),o(T)!==void 0?Me((f(),ye(g,{key:0,"aria-description":o(k)?void 0:o(lt)(o(T)),class:je(["watch-status",{failed:!o(k)}]),link:"","aria-disabled":o(k),"aria-busy":o(k)||void 0,onClick:I[2]||(I[2]=W=>o(d).retry())},{default:Z(()=>[o(k)?(f(),L(qe,{key:0},[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),L(qe,{key:1},[we(M(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-description","class","aria-disabled","aria-busy"])),[[R,o(k)?"":o(lt)(o(T))]]):o(k)?(f(),L("p",yb,[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.workspaceInspector.loading")),1)])):ue("",!0),o(p)?(f(),L("p",wb,M(o(c)("generated.workspaceInspector.resultsAreIncompleteNarrowTheSearchScope")),1)):ue("",!0),j("ul",{class:"content-search-results","aria-label":o(c)("generated.workspaceInspector.contentSearchResults")},[(f(!0),L(qe,null,Xe(o(y),W=>(f(),L("li",{key:`${W.path}:${W.line}:${W.column}`},[Me((f(),L("button",{"aria-label":W.path,type:"button",onClick:w=>r("open",W.path,W.line,W.column,w.ctrlKey||w.metaKey)},[j("span",Ib,[B(hn,{name:o(vr)(W.path)},null,8,["name"]),j("strong",null,M(W.path),1)]),j("small",null,M(o(c)("generated.workspaceInspector.line",{value0:W.line})),1),j("code",null,[(f(!0),L(qe,null,Xe(S(W.preview),(w,D)=>(f(),L(qe,{key:D},[w.match?(f(),L("mark",Sb,M(w.text),1)):(f(),L(qe,{key:1},[we(M(w.text),1)],64))],64))),128))])],8,bb)),[[R,W.path]])]))),128)),o(v)!==""&&o(y).length===0&&!o(k)&&o(T)===void 0?(f(),L("li",Cb,M(o(c)("generated.workspaceInspector.noMatchingContent")),1)):ue("",!0)],8,kb)])}}}),Eb=ut(Tb,[["__scopeId","data-v-1ed20ddc"]]),Rb=["aria-label"],Ab=["onDragenter","onDragleave","onDrop","onMouseenter","onFocusin","onContextmenu"],Nb=["aria-label","data-file-path","aria-expanded","aria-selected","aria-level","disabled","tabindex","draggable","onClick","onKeydown","onDragstart"],Db={key:1,class:"tree-chevron"},Pb={class:"tree-name"},Ob=["aria-label","disabled","tabindex"],Lb={key:1,class:"file-tree-more","aria-hidden":"true"},Wb={key:1,role:"status"},Mb={key:0,class:"file-tree-empty"},xb=500,$b=ot({__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=Qa().locale,s=n,i=$(),l=$("."),d=$(),v=$(),u=$(),y=$(!1),k=$(),T=$(),p=_(()=>Jh(a.root,a.filter)),m=$(0),S=$(0),N=$(24);let I,b;const C=_(()=>{const x=Xh(p.value.length,m.value,S.value,N.value,8);return{...x,rows:p.value.slice(x.start,x.end)}});yr(()=>{if(a.disabled||a.filter.trim()!==""||S.value<=0)return;const x=Math.floor(m.value/N.value),ee=Math.ceil((m.value+S.value)/N.value),se=p.value.slice(x,ee).find(Se=>Se.loadMore&&Se.node.expanded&&!Se.node.loading&&Se.node.failedAppend===void 0);se&&s("loadMore",se.node)});const g=_(()=>a.filter.trim().length===0||p.value.some(x=>x.node.path!=="."));function R(x,ee){l.value=x.path,x.kind==="DIRECTORY"?(s("select",x),s("toggle",x)):ee?.ctrlKey===!0||ee?.metaKey===!0?s("openExternal",x):s("open",x)}function W(x,ee){const se=p.value.filter(Fe=>!Fe.loadMore),Se=se.findIndex(Fe=>Fe.node.path===ee.node.path);if(x.key==="ArrowDown"||x.key==="ArrowUp"){x.preventDefault();const Fe=x.key==="ArrowDown"?1:-1,We=se[Math.max(0,Math.min(se.length-1,Se+Fe))];We!==void 0&&w(We.node.path);return}x.key==="ArrowRight"&&ee.node.kind==="DIRECTORY"&&!ee.node.expanded||x.key==="ArrowLeft"&&ee.node.kind==="DIRECTORY"&&ee.node.expanded?(x.preventDefault(),s("toggle",ee.node)):(x.key==="Enter"||x.key===" ")&&(x.preventDefault(),R(ee.node))}function w(x){l.value=x,H(x),gt(()=>D(x)?.focus())}function D(x){const ee=CSS.escape(x);return i.value?.querySelector(`[data-file-path="${ee}"]`)??void 0}async function E(x,ee=()=>!0){ee()&&(H(x),await gt(),ee()&&D(x)?.scrollIntoView({block:"nearest",inline:"nearest"}))}function H(x){const ee=p.value.findIndex(We=>!We.loadMore&&We.node.path===x),se=i.value;if(ee<0||se===void 0)return;const Se=ee*N.value,Fe=Se+N.value;Se<se.scrollTop?se.scrollTop=Se:Fe>se.scrollTop+se.clientHeight&&(se.scrollTop=Fe-se.clientHeight),m.value=se.scrollTop}function J(){const x=i.value;if(x===void 0)return;m.value=x.scrollTop,S.value=x.clientHeight;const ee=Number.parseFloat(getComputedStyle(x).getPropertyValue("--mar-compact-row-size"));Number.isFinite(ee)&&ee>0&&(N.value=ee)}let Y,q;Ot(()=>{J(),a.selectedPath!==void 0&&E(a.selectedPath),Y=new ResizeObserver(J),i.value!==void 0&&Y.observe(i.value),q=Ft.register({command:"workspaceFileTree.dismissMenu",scope:"overlay",priority:100,modalOwner:()=>i.value,keys:[{key:"Escape"}],when:x=>{const ee=i.value?.querySelector('.file-tree-more[aria-expanded="true"]');if(!y.value||!ee||!(x.target instanceof Node))return!1;const se=document.getElementById(ee.getAttribute("aria-controls")??"");return ee.contains(x.target)||se?.contains(x.target)===!0||x.target instanceof Element&&x.target.closest(".file-tree-row-shell")?.contains(ee)===!0},execute:()=>{const x=i.value?.querySelector('.file-tree-more[aria-expanded="true"]');return x?(x.click(),x.focus({preventScroll:!0}),"HANDLED"):"IGNORED"}})}),wt(()=>{Y?.disconnect(),q?.(),U()}),Ge(()=>p.value.length,()=>{gt(J)});function Q(x,ee){if(U(),d.value=void 0,v.value!==void 0){const We=v.value;if(v.value=void 0,a.mobileViewport)return;ee?.kind==="DIRECTORY"&&ee.path!==We.path?s("move",We,ee):s("invalidDrop");return}if([...x.dataTransfer?.items??[]].some(We=>We.webkitGetAsEntry?.()?.isDirectory===!0)){s("invalidDrop");return}const Se=[...x.dataTransfer?.files??[]];if(Se.length===0){s("invalidDrop");return}const Fe=ee?.kind==="DIRECTORY"?ee.path:".";s("dropFiles",Fe,Se)}function V(x){const ee=x.dataTransfer;return ee!==null&&(Array.from(ee.types).includes("Files")||[...ee.items].some(se=>se.kind==="file"))}function U(x){x!==void 0&&b!==x||(I!==void 0&&clearTimeout(I),I=void 0,b=void 0)}function A(x){b!==x.path&&(U(),b=x.path,I=setTimeout(()=>{b===x.path&&(I=void 0,b=void 0,x.kind==="DIRECTORY"&&!x.expanded&&s("toggle",x))},xb))}function h(){U(),d.value="."}function F(){U(),d.value=void 0}function K(x,ee){d.value=ee.path,b!==ee.path&&U(),ee.kind==="DIRECTORY"&&!ee.expanded?v.value!==void 0?(U(),s("toggle",ee)):V(x)?A(ee):(U(),s("toggle",ee)):U(ee.path),x.stopPropagation(),x.preventDefault()}function ve(x,ee){const se=x.currentTarget,Se=x.relatedTarget;se instanceof HTMLElement&&Se instanceof Node&&se.contains(Se)||(U(ee),d.value===ee&&(d.value=void 0))}function X(x){return a.mutationsEnabled&&!a.mobileViewport&&x.path!=="."}function oe(x,ee){if(!X(ee)){x.preventDefault();return}U(),v.value=ee,x.dataTransfer?.setData("application/x-mar-workspace-path",ee.path),x.dataTransfer!==null&&(x.dataTransfer.effectAllowed="move")}function ge(){U(),v.value=void 0}function le(x,ee){(x==="OPEN"||x==="OPEN_EXTERNAL"||x==="PREVIEW_HTML"||x==="CREATE_FILE"||x==="CREATE_DIRECTORY"||x==="DOWNLOAD"||x==="COPY_PATH"||x==="COPY_ABSOLUTE_PATH"||x==="REVEAL_LOCAL"||x==="RENAME"||x==="DELETE"||x==="UPLOAD")&&s("action",x,ee)}function ae(x){return a.mobileViewport||k.value===x||T.value===x||y.value&&u.value===x}function P(x){const ee=x.currentTarget;ee instanceof HTMLElement&&x.relatedTarget instanceof Node&&ee.contains(x.relatedTarget)||(T.value=void 0)}function z(x,ee){k.value=x,gt(()=>ee.querySelector(".file-tree-more")?.click())}function ce(x,ee){ee.preventDefault();const se=ee.currentTarget.closest(".file-tree-row-shell");u.value=x,se!==null&&z(x,se)}function te(x,ee){!x&&u.value!==ee||(y.value=x,u.value=x?ee:void 0)}return t({reveal:E}),(x,ee)=>{const se=cn,Se=ln,Fe=sn,We=St,be=Tt("tooltip");return f(),L("div",{ref_key:"container",ref:i,class:je(["workspace-file-tree",{"is-root-drop-target":d.value==="."}]),role:"tree","aria-label":o(c)("generated.workspaceFileTree.fileTree"),onDragenter:it(h,["prevent"]),onDragleave:it(F,["self"]),onDragover:ee[5]||(ee[5]=it(()=>{},["prevent"])),onDrop:ee[6]||(ee[6]=it(he=>Q(he),["prevent"])),onScroll:J},[j("div",{class:"file-tree-virtual-space",style:Ct({height:`${C.value.totalHeight}px`})},[j("div",{class:"file-tree-virtual-window",style:Ct({transform:`translateY(${C.value.offset}px)`})},[(f(!0),L(qe,null,Xe(C.value.rows,(he,Ue,Qe,rt)=>{const ne=[he.node,he.node.name,e.rootPath,he.node.kind,he.node.expanded,he.node.loading,he.node.failedAppend,he.depth,he.loadMore,e.selectedPath===he.node.path,d.value===he.node.path,l.value===he.node.path,ae(he.node.path),e.disabled,e.mutationsEnabled,e.mobileViewport,o(r)];if(rt&&rt.el&&rt.key===`${he.node.path}:${he.loadMore?"more":"node"}`&&If(rt,ne))return rt;const me=(f(),L(qe,{key:`${he.node.path}:${he.loadMore?"more":"node"}`},[he.loadMore?(f(),L("div",{key:1,class:"file-tree-load-more",style:Ct({"--tree-depth":he.depth})},[he.node.failedAppend!==void 0?Me((f(),ye(We,{key:0,class:"utility-control",link:"","aria-description":he.node.loading?void 0:o(lt)(he.node.failure),"aria-disabled":he.node.loading||e.disabled,"aria-busy":he.node.loading||void 0,onClick:Ne=>!he.node.loading&&!e.disabled&&s("loadMore",he.node)},{default:Z(()=>[he.node.loading?(f(),L(qe,{key:0},[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),L(qe,{key:1},[we(M(o(c)("common.loadFailedRetry")),1)],64))]),_:2},1032,["aria-description","aria-disabled","aria-busy","onClick"])),[[be,he.node.loading?"":o(lt)(he.node.failure)]]):he.node.loading?(f(),L("span",Wb,[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.workspaceInspector.loading")),1)])):ue("",!0)],4)):(f(),L("div",{key:0,class:je(["file-tree-row-shell",{selected:e.selectedPath===he.node.path,"drop-target":d.value===he.node.path}]),onDragenter:it(Ne=>K(Ne,he.node),["stop","prevent"]),onDragleave:it(Ne=>ve(Ne,he.node.path),["stop"]),onDragover:ee[1]||(ee[1]=it(()=>{},["stop","prevent"])),onDrop:it(Ne=>Q(Ne,he.node),["stop","prevent"]),onMouseenter:Ne=>k.value=he.node.path,onMouseleave:ee[2]||(ee[2]=Ne=>k.value=void 0),onFocusin:Ne=>T.value=he.node.path,onFocusout:P,onContextmenu:Ne=>ce(he.node.path,Ne)},[Me((f(),L("button",{"aria-label":he.node.path==="."?e.rootPath??he.node.name:he.node.path,class:"file-tree-row",type:"button",role:"treeitem","data-file-path":he.node.path,"aria-expanded":he.node.kind==="DIRECTORY"?he.node.expanded:void 0,"aria-selected":e.selectedPath===he.node.path,"aria-level":he.depth+1,disabled:e.disabled,tabindex:l.value===he.node.path?0:-1,style:Ct({"--tree-depth":he.depth}),draggable:X(he.node),onClick:Ne=>R(he.node,Ne),onKeydown:Ne=>W(Ne,he),onDragstart:Ne=>oe(Ne,he.node),onDragend:ge},[he.node.kind==="DIRECTORY"?(f(),ye(De,{key:0,name:"chevron-right",class:je(["tree-chevron",{expanded:he.node.expanded}])},null,8,["class"])):(f(),L("span",Db)),B(hn,{class:"tree-kind",name:he.node.name,kind:he.node.kind},null,8,["name","kind"]),j("span",Pb,M(he.node.name),1)],44,Nb)),[[be,he.node.path==="."?e.rootPath??he.node.name:he.node.path]]),ae(he.node.path)?(f(),ye(Fe,{key:0,trigger:"click",placement:"bottom-start",persistent:!1,onCommand:Ne=>le(Ne,he.node),onVisibleChange:Ne=>te(Ne,he.node.path)},{dropdown:Z(()=>[B(Se,null,{default:Z(()=>[he.node.kind==="FILE"?(f(),ye(se,{key:0,command:"OPEN"},{default:Z(()=>[B(De,{name:"view"}),we(M(o(c)("generated.workspaceFileTree.open")),1)]),_:1})):ue("",!0),he.node.kind==="FILE"?(f(),ye(se,{key:1,command:"OPEN_EXTERNAL"},{default:Z(()=>[B(De,{name:"external-link"}),we(M(o(c)("generated.workspaceFileTree.openInNewWindow")),1)]),_:1})):ue("",!0),he.node.kind==="FILE"&&o(qa)(he.node.path)?(f(),ye(se,{key:2,command:"PREVIEW_HTML"},{default:Z(()=>[B(De,{name:"view"}),we(M(o(c)("htmlPreview.preview")),1)]),_:1})):ue("",!0),he.node.kind==="FILE"?(f(),ye(se,{key:3,command:"DOWNLOAD"},{default:Z(()=>[B(De,{name:"download"}),we(M(o(c)("generated.workspaceFileTree.download")),1)]),_:1})):ue("",!0),e.mutationsEnabled&&he.node.kind==="DIRECTORY"?(f(),ye(se,{key:4,command:"CREATE_FILE"},{default:Z(()=>[B(De,{name:"document-add"}),we(M(o(c)("generated.workspaceFileTree.newFile")),1)]),_:1})):ue("",!0),e.mutationsEnabled&&he.node.kind==="DIRECTORY"?(f(),ye(se,{key:5,command:"CREATE_DIRECTORY"},{default:Z(()=>[B(De,{name:"folder-add"}),we(M(o(c)("generated.workspaceFileTree.newFolder")),1)]),_:1})):ue("",!0),he.node.kind==="DIRECTORY"?(f(),ye(se,{key:6,command:"UPLOAD"},{default:Z(()=>[B(De,{name:"upload"}),we(M(o(c)("generated.workspaceFileTree.uploadFiles")),1)]),_:1})):ue("",!0),B(se,{command:"COPY_PATH"},{default:Z(()=>[B(De,{name:"copy"}),we(M(o(c)("generated.workspaceFileTree.copyRelativePath")),1)]),_:1}),B(se,{command:"COPY_ABSOLUTE_PATH",disabled:!e.rootPath},{default:Z(()=>[B(De,{name:"copy"}),we(M(o(c)("generated.workspaceFileTree.copyAbsolutePath")),1)]),_:1},8,["disabled"]),e.localFileManagerEnabled?(f(),ye(se,{key:7,command:"REVEAL_LOCAL"},{default:Z(()=>[B(De,{name:"folder-open"}),we(M(o(c)("generated.workspaceFileTree.openInLocalFileManager")),1)]),_:1})):ue("",!0),e.mutationsEnabled&&he.node.path!=="."?(f(),ye(se,{key:8,command:"RENAME"},{default:Z(()=>[B(De,{name:"edit"}),we(M(o(c)("generated.workspaceFileTree.rename")),1)]),_:1})):ue("",!0),e.mutationsEnabled&&he.node.path!=="."?(f(),ye(se,{key:9,command:"DELETE",divided:""},{default:Z(()=>[B(De,{name:"delete"}),we(M(o(c)("generated.workspaceFileTree.delete")),1)]),_:1})):ue("",!0)]),_:2},1024)]),default:Z(()=>[j("button",{class:je(["file-tree-more utility-control",{"is-visible":ae(he.node.path)}]),type:"button","aria-label":o(c)("generated.workspaceFileTree.moreActionsFor",{value0:he.node.name}),disabled:e.disabled,tabindex:ae(he.node.path)?0:-1,onClick:ee[0]||(ee[0]=it(()=>{},["stop"]))},[B(De,{name:"more"})],10,Ob)]),_:2},1032,["onCommand","onVisibleChange"])):(f(),L("span",Lb))],42,Ab))],64));return me.memo=ne,me},ee,3),128))],4)],4),g.value?ue("",!0):(f(),L("p",Mb,M(o(c)("workspaceDisplayFilter.empty")),1))],42,Rb)}}}),Fb=ut($b,[["__scopeId","data-v-ae226bb2"]]),Ub={class:"file-explorer"},Vb={class:"explorer-toolbar"},qb=["disabled","aria-label","aria-busy"],Hb=["disabled","aria-label","aria-busy"],Bb={key:2,class:"watch-status",role:"status"},Gb={class:"upload-dialog-target"},zb={class:"upload-dialog-list"},Kb={key:1},jb={key:2},_b=ot({__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,d=s.preparing,v=$(""),u=$(),y=$(),k=$(!1),T=$([]),p=$("."),m=$();function S(D,E){return D==="."?E:`${D}/${E}`}async function N(D,E=""){try{return(await Nt.prompt("",D,{closeIcon:Be("close"),inputValue:E,inputPlaceholder:c("generated.workspaceInspector.enterAName"),confirmButtonText:c("generated.workspaceInspector.confirm"),cancelButtonText:c("generated.workspaceInspector.cancel"),inputValidator:J=>J.trim().length>0&&J===J.trim()&&!J.includes("/")&&!J.includes("\\")&&J!=="."&&J!==".."&&J!==".git"?!0:c("generated.workspaceInspector.enterAValidSingleLevelName")})).value}catch{return}}async function I(D,E){const H=s.captureTarget();if(H===void 0)return;const J=()=>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),J()&&r("notice",c("generated.workspaceInspector.relativePathCopied"),"info");return}if(D==="COPY_ABSOLUTE_PATH"){if(!a.workspacePath)return;await navigator.clipboard.writeText(og(a.workspacePath,E.path)),J()&&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),C();return}if(D==="CREATE_FILE"||D==="CREATE_DIRECTORY"){const Y=await N(D==="CREATE_FILE"?c("generated.workspaceInspector.newFile"):c("generated.workspaceInspector.newFolder"));if(Y===void 0||!J())return;await s.mutate(H,D,S(E.path,Y));return}if(D==="RENAME"){const Y=await N(c("generated.workspaceInspector.rename"),E.name);if(Y===void 0||Y===E.name||!J())return;const q=E.path.includes("/")?E.path.slice(0,E.path.lastIndexOf("/")):".";await s.mutate(H,"MOVE",E.path,S(q,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:Be("close"),icon:Be("warning"),type:"warning",confirmButtonText:c("generated.workspaceInspector.delete"),cancelButtonText:c("generated.workspaceInspector.cancel2")}),!J())return;await s.mutate(H,"DELETE",E.path)}catch(Y){if(Y==="cancel"||Y==="close")return;J()&&r("failure",Y,c("generated.workspaceInspector.fileOperation"))}}async function b(D,E){const H=s.captureTarget();H!==void 0&&await s.mutate(H,"MOVE",D.path,S(E.path,D.name),"move")}function C(){u.value?.click()}async function g(D,E=i.uploadDirectory()){const H=await s.preflight([...D],E);H===void 0||!a.visible||!s.isCurrentPreflight(H)||(m.value=H,T.value=H.files.map((J,Y)=>({...H.candidates[Y],id:crypto.randomUUID(),file:J,overwrite:!1})),p.value=E,k.value=!0)}function R(D){const E=D.target;E.files!==null&&g(E.files),E.value=""}function W(D,E){if(E.length===0){r("notice",c("generated.workspaceInspector.onlyFilesCanBeDroppedCompressFolders"),"warning");return}g(E,D)}function w(){const D=m.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=[],m.value=void 0}return Ge(()=>a.visible,(D,E)=>{E&&!D&&(k.value=!1,T.value=[],m.value=void 0)},{flush:"sync"}),t({chooseUploadFiles:C,reveal:(D,E)=>y.value?.reveal(D,E),invalidate:()=>{m.value=void 0},reset:()=>{k.value=!1,T.value=[],m.value=void 0,v.value=""}}),(D,E)=>{const H=Vt,J=St,Y=Vn,q=yn,Q=Zt,V=Tt("tooltip");return f(),L("section",Ub,[j("div",Vb,[j("input",{ref_key:"uploadInput",ref:u,class:"workspace-upload-input",type:"file",multiple:"",onChange:R},null,544),B(H,{modelValue:v.value,"onUpdate:modelValue":E[0]||(E[0]=U=>v.value=U),class:"file-display-filter","aria-label":o(c)("workspaceDisplayFilter.label"),clearable:"",placeholder:o(c)("workspaceDisplayFilter.placeholder"),size:"small","clear-icon":o(Be)("clear-input")},{prefix:Z(()=>[B(De,{name:"search"})]),_:1},8,["modelValue","aria-label","placeholder","clear-icon"]),Me((f(),L("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]=U=>r("refresh"))},[B(De,{name:"refresh"})],8,qb)),[[V,o(c)("generated.workspaceInspector.refreshFiles2")]]),Me((f(),L("button",{class:"file-explorer-utility-button utility-control",disabled:o(d),"aria-label":o(c)("generated.workspaceInspector.uploadFiles"),"aria-busy":o(d)||void 0,type:"button",onClick:C},[o(d)?(f(),ye(De,{key:0,name:"loading-action"})):(f(),ye(De,{key:1,name:"document-add"}))],8,Hb)),[[V,o(c)("generated.workspaceInspector.uploadFiles2")]])]),(e.watchStatus==="loading"||e.watchStatus==="failed")&&!o(l)&&!o(i).refreshError.value?(f(),ye(J,{key:0,class:je(["watch-status",{failed:e.watchStatus==="failed"}]),link:"","aria-disabled":e.watchStatus==="loading","aria-busy":e.watchStatus==="loading"||void 0,onClick:E[2]||(E[2]=U=>e.watchStatus==="failed"&&r("retryWatch"))},{default:Z(()=>[e.watchStatus==="loading"?(f(),L(qe,{key:0},[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),L(qe,{key:1},[we(M(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["class","aria-disabled","aria-busy"])):ue("",!0),o(i).refreshError.value?Me((f(),ye(J,{key:1,"aria-description":o(l)?void 0:o(lt)(o(i).refreshError.value.cause),class:je(["watch-status",{failed:!o(l)}]),link:"","aria-disabled":o(l),"aria-busy":o(l)||void 0,onClick:E[3]||(E[3]=U=>!o(l)&&r("refresh"))},{default:Z(()=>[o(l)?(f(),L(qe,{key:0},[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.workspaceInspector.loading")),1)],64)):(f(),L(qe,{key:1},[we(M(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-description","class","aria-disabled","aria-busy"])),[[V,o(l)?"":o(lt)(o(i).refreshError.value.cause)]]):o(l)?(f(),L("p",Bb,[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.workspaceInspector.loading")),1)])):ue("",!0),e.visible?(f(),ye(Fb,{key:3,ref_key:"fileTreeView",ref:y,root:o(i).root.value,"root-path":e.workspacePath,filter:v.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]=U=>r("open",U.path,!1)),onOpenExternal:E[5]||(E[5]=U=>r("open",U.path,!0)),onAction:I,onMove:b,onLoadMore:o(i).loadMore,onSelect:o(i).select,onDropFiles:W,onInvalidDrop:E[6]||(E[6]=U=>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"])):ue("",!0),k.value?(f(),ye(Q,{key:4,onVnodeMounted:o(Jt),onVnodeBeforeUnmount:o(Qt),modelValue:k.value,"onUpdate:modelValue":E[8]||(E[8]=U=>k.value=U),class:"upload-confirm-dialog",title:o(c)("generated.workspaceInspector.confirmFileUpload"),"append-to-body":"",width:"560px","close-icon":o(Be)("close")},{footer:Z(()=>[B(J,{onClick:E[7]||(E[7]=U=>k.value=!1)},{default:Z(()=>[we(M(o(c)("generated.workspaceInspector.cancel4")),1)]),_:1}),B(J,{type:"primary",onClick:w},{default:Z(()=>[we(M(o(c)("generated.workspaceInspector.startUpload")),1)]),_:1})]),default:Z(()=>[j("p",Gb,[we(M(o(c)("generated.workspaceInspector.targetDirectory"))+": ",1),j("code",null,M(p.value),1)]),j("ul",zb,[(f(!0),L(qe,null,Xe(T.value,U=>(f(),L("li",{key:U.id},[j("span",null,[j("strong",null,M(U.file.name),1),j("small",null,M(o(Ha)(U.file.size)),1)]),U.status==="EXISTS_FILE"?(f(),ye(q,{key:0,modelValue:U.overwrite,"onUpdate:modelValue":A=>U.overwrite=A,"aria-label":o(c)("generated.workspaceInspector.existingFileHandling"),size:"small","clear-icon":o(Be)("clear-input"),"suffix-icon":o(Be)("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"])):U.status==="READY"?(f(),L("small",Kb,M(o(c)("generated.workspaceInspector.newFile2")),1)):(f(),L("small",jb,M(o(c)("generated.workspaceInspector.cannotUpload"))+": "+M(U.status==="EXISTS_DIRECTORY"?o(c)("generated.workspaceInspector.aDirectoryHasTheSameName"):o(c)("generated.workspaceInspector.invalidNameOrDuplicateInBatch")),1))]))),128))])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ue("",!0)])}}}),Yb=ut(_b,[["__scopeId","data-v-d6b296ea"]]),Qb={class:"html-browser"},Jb={class:"html-browser-file-name"},Xb={class:"html-browser-actions"},Zb={key:0,class:"html-browser-error",role:"alert"},eI=ot({__name:"WorkspaceHtmlBrowser",props:{nodeId:{},workspaceId:{},path:{},csrfToken:{},renewCsrfToken:{type:Function}},emits:["source","external"],setup(e,{emit:t}){const n=e,a=t,r=ng(Ja({csrfToken:()=>n.csrfToken,renewCsrfToken:()=>n.renewCsrfToken()})),s=r.state;function i(){r.open({nodeId:n.nodeId,workspaceId:n.workspaceId,path:n.path})}return Ge(()=>[n.nodeId,n.workspaceId,n.path],i,{immediate:!0}),wt(r.release),(l,d)=>{const v=St,u=Tt("tooltip");return f(),L("section",Qb,[j("header",null,[Me((f(),L("span",Jb,[we(M(e.path.split("/").at(-1)),1)])),[[u,e.path]]),j("div",Xb,[Me((f(),ye(v,{text:"",circle:"",size:"small","aria-label":o(c)("htmlPreview.reload"),onClick:i},{default:Z(()=>[B(De,{name:"refresh"})]),_:1},8,["aria-label"])),[[u,o(c)("htmlPreview.reload")]]),Me((f(),ye(v,{text:"",circle:"",size:"small","aria-label":o(c)("htmlPreview.source"),onClick:d[0]||(d[0]=y=>a("source",e.path))},{default:Z(()=>[B(De,{name:"document"})]),_:1},8,["aria-label"])),[[u,o(c)("htmlPreview.source")]]),Me((f(),ye(v,{text:"",circle:"",size:"small","aria-label":o(c)("htmlPreview.external"),onClick:d[1]||(d[1]=y=>a("external",e.path))},{default:Z(()=>[B(De,{name:"external-link"})]),_:1},8,["aria-label"])),[[u,o(c)("htmlPreview.external")]])])]),o(s).error!==void 0?(f(),L("p",Zb,M(o(Cr)(o(s).error,e.path)),1)):ue("",!0),B(tg,{url:o(s).url,loading:o(s).loading,title:e.path},null,8,["url","loading","title"])])}}}),tI=ut(eI,[["__scopeId","data-v-d1ed0624"]]),nI={class:"session-group-tabs"},aI=["aria-label"],oI=["data-group","aria-selected","tabindex","aria-label","onClick","onKeydown"],rI={class:"group-label"},iI=ot({__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 d=i.key==="Home"?"MAIN":i.key==="End"||l==="MAIN"?"CHILD":"MAIN";n("update:modelValue",d),i.currentTarget.parentElement?.querySelector(`[data-group="${d}"]`)?.focus()}return(i,l)=>(f(),L("div",nI,[j("div",{class:"group-options",role:"tablist","aria-label":o(c)("sessionGroups.label")},[(f(),L(qe,null,Xe(a,d=>j("button",{key:d,type:"button",role:"tab","data-group":d,"aria-selected":e.modelValue===d,tabindex:e.modelValue===d?0:-1,"aria-label":r(d),onClick:v=>n("update:modelValue",d),onKeydown:v=>s(v,d)},[j("span",rI,M(o(c)(d==="MAIN"?"sessionGroups.mainTab":"sessionGroups.childTab")),1)],40,oI)),64))],8,aI)]))}}),gc=ut(iI,[["__scopeId","data-v-27f8edb9"]]);function sI(e){const t=$([]),n=$(!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 Js(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 mc={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||!qi(r.previous,r.next)||n.motionPreference.matches)return;const s=e.getBoundingClientRect().top;r.positions=new Map(Js(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(!qi(a,r)||i||s===void 0){(!(a.ready&&r.ready&&a.context===r.context&&a.items.length===r.items.length&&a.items.every((u,y)=>u.key===r.items[y]?.key&&u.pin===r.items[y]?.pin))||i)&&Yn(t);return}Yn(t);const l=e.getBoundingClientRect().top,d=Js(e,r).flatMap(v=>{const u=s.get(v.key);return u===void 0?[]:[{element:v.element,delta:u-(v.element.getBoundingClientRect().top-l)}]});for(const v of d){if(Math.abs(v.delta)<.5)continue;const u=v.element.animate([{transform:`translateY(${v.delta}px)`},{transform:"translateY(0px)"}],{duration:220,easing:"cubic-bezier(0.2, 0, 0, 1)"});t.animations.add(u);const y=()=>t.animations.delete(u);u.finished.then(y,y)}},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))}},lI={class:"schedule-time-fields"},cI={class:"schedule-timezone"},dI={class:"schedule-timezone"},uI={class:"schedule-enabled"},vI={class:"schedule-timezone"},fI={key:3,class:"schedule-history"},pI={key:0},gI={key:1},mI={key:2},hI={key:3},yI={key:4,class:"schedule-history"},wI={key:0},kI=ot({__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=_({get:()=>n.modelValue,set:ae=>{l.value||a("update:modelValue",ae)}}),s=$(!1),i=$(),l=_(()=>i.value!==void 0),d=$(null),v=$(!1),u=$(""),y=$(null),k=$([]),T=$(1),p=$(0),m=$([]),S=$(!1),N=$(),I=Un({objective:"",time:"09:00",hourlyTime:"00:00",cronExpression:""}),b={objective:[{validator:(ae,P,z)=>P.trim().length>0&&P.trim().length<=2e4?z():z(new Error(c("generated.scheduledSession.objectiveRequired"))),trigger:"blur"}],time:[{validator:(ae,P,z)=>P?z():z(new Error(c("generated.scheduledSession.timeRequired")))}],hourlyTime:[{validator:(ae,P,z)=>P?z():z(new Error(c("generated.scheduledSession.timeRequired")))}],cronExpression:[{validator:(ae,P,z)=>P!==null&&A(P)?z():z(new Error(c("generated.scheduledSession.cronRequired"))),trigger:"blur"}]},C=$("SIMPLE"),g=$("DAILY"),R=$(1),W=$("UTC"),w=$(!1),D=$(!1),E=_(()=>v.value?c(d.value===null?"generated.scheduledSession.notConfigured":w.value?"generated.scheduledSession.enabled":"generated.scheduledSession.paused"):"");let H=0,J=!1;wt(()=>{J=!0,H++}),Ge(()=>[n.modelValue,n.session?.id,n.nodeId,n.workspaceId],()=>{H++,d.value=null,v.value=!1,w.value=!1,u.value="",y.value=null,k.value=[],T.value=1,p.value=0,s.value=!1,m.value=[],I.objective="",I.cronExpression="",C.value="SIMPLE",n.modelValue&&n.session!==void 0&&q()},{immediate:!0});function Y(){return`/api/agent-sessions/${encodeURIComponent(n.session.id)}/schedule`}async function q(ae=1,P=!0){if(J||n.session===void 0)return;const z=++H,ce=n.session.id;s.value=!0,P&&(v.value=!1);try{const te=new URLSearchParams({nodeId:n.nodeId,workspaceId:n.workspaceId,occurrencePage:String(ae)}),x=await n.request(`/api/agent-sessions/${encodeURIComponent(ce)}/schedule?${te}`);if(z!==H||!n.modelValue||n.session?.id!==ce||(k.value=x.occurrences,T.value=x.occurrencePage??1,p.value=x.occurrenceTotal??0,!P))return;if(d.value=x.task,u.value=x.currentUserName,y.value=x.notifyUserName,m.value=x.proposals,S.value=x.canResolveProposals,W.value=x.nodeTimezone,x.task!==null){I.objective=x.task.objective,w.value=x.task.enabled,D.value=x.task.notifyOnTerminal,I.cronExpression=x.task.cron;const ee=U(x.task.cron);ee===void 0?C.value="CRON":(C.value="SIMPLE",g.value=ee.cadence,I.time=ee.time,I.hourlyTime=ee.hourlyTime,R.value=ee.weekday)}else I.objective="",I.cronExpression="",C.value="SIMPLE",g.value="DAILY",I.time="09:00",I.hourlyTime="00:00",R.value=1,w.value=!1,D.value=!1;v.value=!0}catch(te){z===H&&tt(lt(te,c("generated.scheduledSession.loadFailed")),"error",te)}finally{z===H&&(s.value=!1)}}function Q(ae){!s.value&&!l.value&&q(ae,!1)}function V(){if(C.value==="CRON")return I.cronExpression.trim();const[ae,P]=I.time.split(":").map(Number);return g.value==="HOURLY"?`${Number(I.hourlyTime.split(":")[1])} * * * *`:g.value==="DAILY"?`${P} ${ae} * * *`:`${P} ${ae} * * ${R.value}`}function U(ae){const P=ae.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 z=Number(P[0]),ce=P[1]==="*"?9:Number(P[1]),te=P[4]==="*"?1:Number(P[4]);if(!(z>59||ce>23||te>6))return{cadence:P[1]==="*"?"HOURLY":P[4]==="*"?"DAILY":"WEEKLY",time:`${String(ce).padStart(2,"0")}:${String(z).padStart(2,"0")}`,hourlyTime:`00:${String(z).padStart(2,"0")}`,weekday:te}}function A(ae){const P=ae.trim();if(P.length===0||P.length>64)return!1;const z=P.split(/\s+/);if(z.length!==5||z.some(te=>te.length===0))return!1;const ce=[[0,59],[0,23],[1,31],[1,12],[0,7]];return z.every((te,x)=>h(te,ce[x][0],ce[x][1]))}function h(ae,P,z){const ce=new Set;for(const te of ae.split(",")){const x=te.split("/");if(x.length>2||x.some(We=>We.length===0))return!1;const ee=x[0]??"",se=x[1]===void 0?1:F(x[1],1,z-P+1);if(se===void 0)return!1;let Se,Fe;if(ee==="*")Se=P,Fe=z;else if(/^\d+-\d+$/.test(ee)){const We=ee.split("-"),be=F(We[0],P,z),he=F(We[1],P,z);if(be===void 0||he===void 0||be>he)return!1;Se=be,Fe=he}else if(x.length===1){const We=F(ee,P,z);if(We===void 0)return!1;Se=We,Fe=We}else return!1;if(x[1]!==void 0&&Se===Fe)return!1;for(let We=Se;We<=Fe;We+=se)ce.add(We)}return ce.size>0}function F(ae,P,z){if(ae===void 0||!/^(0|[1-9][0-9]*)$/.test(ae))return;const ce=Number(ae);return Number.isSafeInteger(ce)&&ce>=P&&ce<=z?ce:void 0}async function K(){if(!(l.value||s.value||n.session===void 0||!v.value||!await N.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:I.objective.trim(),cron:V(),enabled:w.value,notifyOnTerminal:D.value,...d.value===null?{}:{expectedRevision:d.value.revision}})}),tt(c("generated.scheduledSession.saved"),"success")}catch(ae){tt(lt(ae,c("generated.scheduledSession.saveFailed")),"error",ae);return}finally{i.value=void 0}await q()}}async function ve(){if(!(d.value===null||!v.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:d.value.revision})}),tt(c("generated.scheduledSession.removed"),"success")}catch(ae){tt(lt(ae,c("generated.scheduledSession.removeFailed")),"error",ae);return}finally{i.value=void 0}await q()}}async function X(ae,P){if(!(n.session===void 0||l.value||s.value)){i.value=`${P?"accept":"reject"}:${ae}`;try{await n.request(`${Y()}/proposals/${encodeURIComponent(ae)}/resolve`,{method:"POST",body:JSON.stringify({nodeId:n.nodeId,workspaceId:n.workspaceId,accept:P})})}catch(z){tt(lt(z,c("generated.scheduledSession.proposalFailed")),"error",z);return}finally{i.value=void 0}await q()}}function oe(ae){l.value||ae()}function ge(ae){return ae===null?"—":Kt(ae,d.value?.timezone??W.value)}function le(ae){const z={CLAIMED:"occurrenceClaimed",SUBMITTED:"occurrenceSubmitted",SUCCEEDED:"occurrenceSucceeded",SKIPPED:"occurrenceSkipped",FAILED:"occurrenceFailed"}[ae];return z===void 0?ae:c(`generated.scheduledSession.${z}`)}return(ae,P)=>{const z=Vt,ce=ca,te=kg,x=wg,ee=Vn,se=yn,Se=nm,Fe=Lg,We=Ig,be=St,he=bg,Ue=la,Qe=Zt,rt=ia;return r.value?(f(),ye(Qe,{key:0,onVnodeMounted:o(Jt),onVnodeBeforeUnmount:o(Qt),modelValue:r.value,"onUpdate:modelValue":P[10]||(P[10]=ne=>r.value=ne),"before-close":oe,"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(Be)("close")},{footer:Z(()=>[d.value!==null?(f(),ye(be,{key:0,disabled:l.value||s.value||!v.value,loading:i.value==="remove","loading-icon":o(Be)("loading-action"),type:"danger",onClick:ve},{default:Z(()=>[we(M(o(c)("generated.scheduledSession.remove")),1)]),_:1},8,["disabled","loading","loading-icon"])):ue("",!0),B(be,{disabled:l.value,onClick:P[9]||(P[9]=ne=>r.value=!1)},{default:Z(()=>[we(M(o(c)("common.close")),1)]),_:1},8,["disabled"]),B(be,{type:"primary",loading:i.value==="save",disabled:l.value||s.value||!v.value,onClick:K,"loading-icon":o(Be)("loading-action")},{default:Z(()=>[we(M(o(c)("generated.scheduledSession.save")),1)]),_:1},8,["loading","disabled","loading-icon"])]),default:Z(()=>[Me((f(),ye(Ue,{ref_key:"formRef",ref:N,"aria-busy":s.value,model:I,rules:b,disabled:l.value||s.value||!v.value,class:"schedule-form","label-position":"left","label-width":"116px"},{default:Z(()=>[B(ce,{label:o(c)("generated.scheduledSession.objective"),prop:"objective"},{default:Z(()=>[B(z,{modelValue:I.objective,"onUpdate:modelValue":P[0]||(P[0]=ne=>I.objective=ne),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(ce,{label:o(c)("generated.scheduledSession.mode")},{default:Z(()=>[B(x,{modelValue:C.value,"onUpdate:modelValue":P[1]||(P[1]=ne=>C.value=ne),"aria-label":o(c)("generated.scheduledSession.mode")},{default:Z(()=>[B(te,{value:"SIMPLE"},{default:Z(()=>[we(M(o(c)("generated.scheduledSession.simpleMode")),1)]),_:1}),B(te,{value:"CRON"},{default:Z(()=>[we(M(o(c)("generated.scheduledSession.cronMode")),1)]),_:1})]),_:1},8,["modelValue","aria-label"])]),_:1},8,["label"]),C.value==="SIMPLE"?(f(),L(qe,{key:0},[B(ce,{label:o(c)("generated.scheduledSession.repeat")},{default:Z(()=>[B(se,{modelValue:g.value,"onUpdate:modelValue":P[2]||(P[2]=ne=>g.value=ne),"aria-label":o(c)("generated.scheduledSession.repeat"),"clear-icon":o(Be)("clear-input"),"suffix-icon":o(Be)("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"]),j("div",lI,[g.value==="WEEKLY"?(f(),ye(ce,{key:0,label:o(c)("generated.scheduledSession.weekday")},{default:Z(()=>[B(se,{modelValue:R.value,"onUpdate:modelValue":P[3]||(P[3]=ne=>R.value=ne),"aria-label":o(c)("generated.scheduledSession.weekday"),"clear-icon":o(Be)("clear-input"),"suffix-icon":o(Be)("chevron-down")},{default:Z(()=>[(f(),L(qe,null,Xe(7,ne=>B(ee,{key:ne,value:ne-1,label:o(c)(`generated.scheduledSession.weekday${ne-1}`)},null,8,["value","label"])),64))]),_:1},8,["modelValue","aria-label","clear-icon","suffix-icon"])]),_:1},8,["label"])):ue("",!0),g.value==="HOURLY"?(f(),ye(ce,{key:1,label:o(c)("generated.scheduledSession.minute"),prop:"hourlyTime"},{default:Z(()=>[B(Se,{modelValue:I.hourlyTime,"onUpdate:modelValue":P[4]||(P[4]=ne=>I.hourlyTime=ne),start:"00:00",step:"00:01",end:"00:59","aria-label":o(c)("generated.scheduledSession.minute"),"prefix-icon":o(Be)("clock"),"clear-icon":o(Be)("clear-input")},null,8,["modelValue","aria-label","prefix-icon","clear-icon"])]),_:1},8,["label"])):(f(),ye(ce,{key:2,label:o(c)("generated.scheduledSession.time"),prop:"time"},{default:Z(()=>[B(Fe,{modelValue:I.time,"onUpdate:modelValue":P[5]||(P[5]=ne=>I.time=ne),format:"HH:mm","value-format":"HH:mm","aria-label":o(c)("generated.scheduledSession.time"),"prefix-icon":o(Be)("clock"),"clear-icon":o(Be)("clear-input")},null,8,["modelValue","aria-label","prefix-icon","clear-icon"])]),_:1},8,["label"]))])],64)):(f(),L(qe,{key:1},[B(ce,{label:o(c)("generated.scheduledSession.cronExpression"),prop:"cronExpression"},{default:Z(()=>[B(z,{modelValue:I.cronExpression,"onUpdate:modelValue":P[6]||(P[6]=ne=>I.cronExpression=ne),maxlength:"64",placeholder:o(c)("generated.scheduledSession.cronPlaceholder"),"aria-label":o(c)("generated.scheduledSession.cronExpression")},null,8,["modelValue","placeholder","aria-label"])]),_:1},8,["label"]),j("p",cI,M(o(c)("generated.scheduledSession.cronHint")),1)],64)),j("p",dI,M(o(c)("generated.scheduledSession.nodeTimezone",{timezone:W.value})),1),B(ce,{label:o(c)("generated.scheduledSession.status")},{default:Z(()=>[j("div",uI,[B(We,{modelValue:w.value,"onUpdate:modelValue":P[7]||(P[7]=ne=>w.value=ne),disabled:!v.value,"aria-label":o(c)("generated.scheduledSession.enabled")},null,8,["modelValue","disabled","aria-label"]),j("span",null,M(E.value),1)])]),_:1},8,["label"]),B(ce,{label:o(c)("generated.scheduledSession.notifyUser")},{default:Z(()=>[j("span",null,M(d.value===null?u.value:y.value??o(c)("generated.scheduledSession.userUnavailable")),1)]),_:1},8,["label"]),B(ce,{label:o(c)("generated.scheduledSession.terminalNotifications")},{default:Z(()=>[B(We,{modelValue:D.value,"onUpdate:modelValue":P[8]||(P[8]=ne=>D.value=ne),"aria-label":o(c)("generated.scheduledSession.terminalNotifications")},null,8,["modelValue","aria-label"])]),_:1},8,["label"]),j("p",vI,M(o(c)("generated.scheduledSession.notifyUserHint")),1),d.value!==null?(f(),ye(ce,{key:2,label:o(c)("generated.scheduledSession.nextRun")},{default:Z(()=>[j("span",null,M(ge(d.value.nextRunAt)),1)]),_:1},8,["label"])):ue("",!0),m.value.length>0?(f(),L("div",fI,[j("strong",null,M(o(c)("generated.scheduledSession.proposals")),1),(f(!0),L(qe,null,Xe(m.value,ne=>(f(),L("div",{key:ne.id,class:"schedule-proposal"},[j("p",null,M(ge(ne.created_at))+" · "+M(o(c)("generated.scheduledSession.proposedBy",{userId:ne.proposed_by_user_id})),1),ne.objective?(f(),L("p",pI,M(o(c)("generated.scheduledSession.objective"))+":"+M(ne.objective),1)):ue("",!0),ne.cron?(f(),L("p",gI,M(o(c)("generated.scheduledSession.repeat"))+":"+M(ne.cron),1)):ue("",!0),ne.timezone?(f(),L("p",mI,M(o(c)("generated.scheduledSession.timezone"))+":"+M(ne.timezone),1)):ue("",!0),S.value?(f(),L("div",hI,[B(be,{size:"small",disabled:l.value,loading:i.value===`reject:${ne.id}`,"loading-icon":o(Be)("loading-action"),onClick:me=>X(ne.id,!1)},{default:Z(()=>[we(M(o(c)("generated.scheduledSession.reject")),1)]),_:1},8,["disabled","loading","loading-icon","onClick"]),B(be,{size:"small",type:"primary",disabled:l.value,loading:i.value===`accept:${ne.id}`,"loading-icon":o(Be)("loading-action"),onClick:me=>X(ne.id,!0)},{default:Z(()=>[we(M(o(c)("generated.scheduledSession.accept")),1)]),_:1},8,["disabled","loading","loading-icon","onClick"])])):ue("",!0)]))),128))])):ue("",!0),k.value.length>0?(f(),L("div",yI,[j("strong",null,M(o(c)("generated.scheduledSession.history")),1),(f(!0),L(qe,null,Xe(k.value,ne=>(f(),L("p",{key:ne.id},[we(M(ge(ne.due_at))+" · "+M(le(ne.status)),1),ne.code?(f(),L("span",wI," · "+M(ne.code),1)):ue("",!0)]))),128)),p.value>0?(f(),ye(he,{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(Be)("chevron-left"),"next-icon":o(Be)("chevron-right")},null,8,["current-page","total","disabled","prev-icon","next-icon"])):ue("",!0)])):ue("",!0)]),_:1},8,["aria-busy","model","disabled"])),[[rt,s.value]])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","show-close","close-on-click-modal","close-on-press-escape","title","close-icon"])):ue("",!0)}}}),bI=ut(kI,[["__scopeId","data-v-3ff30b52"]]);function II(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 SI={class:"session-prompt-description"},CI=ot({__name:"SessionPromptDialog",props:{nodeId:{},sessionId:{},request:{type:Function}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,r=II(n),s=$(),i=Un({prompt:""}),l=$(!0),d=$(!1),v=$(!1);let u=!1;wt(()=>{u=!0});const y={prompt:[{validator:(T,p,m)=>{p.trim().length<=2e4?m():m(new Error(c("generated.sessionPrompt.tooLong")))},trigger:"blur"}]};Ot(async()=>{try{const T=await r.read();u||(i.prompt=T,v.value=!0)}catch(T){u||tt(lt(T),"error",T)}finally{u||(l.value=!1)}});async function k(){if(!(!v.value||d.value)){d.value=!0;try{if(!await s.value?.validate().catch(()=>!1))return;await r.save(i.prompt),u||a("close")}catch(T){u||tt(lt(T),"error",T)}finally{u||(d.value=!1)}}}return(T,p)=>{const m=Vt,S=ca,N=la,I=St,b=Zt,C=ia;return f(),ye(b,{onVnodeMounted:o(Jt),onVnodeBeforeUnmount:o(Qt),"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":g=>{d.value||g()},onClosed:p[2]||(p[2]=g=>a("close")),"close-icon":o(Be)("close")},{footer:Z(()=>[B(I,{disabled:d.value,onClick:p[1]||(p[1]=g=>a("close"))},{default:Z(()=>[we(M(o(c)("generated.sessionPrompt.cancel")),1)]),_:1},8,["disabled"]),B(I,{type:"primary",disabled:!v.value,loading:d.value,onClick:k,"loading-icon":o(Be)("loading-action")},{default:Z(()=>[we(M(o(c)("generated.sessionPrompt.save")),1)]),_:1},8,["disabled","loading","loading-icon"])]),default:Z(()=>[j("p",SI,M(o(c)("generated.sessionPrompt.description")),1),Me((f(),ye(N,{ref_key:"formRef",ref:s,model:i,rules:y,"label-position":"top",onSubmit:it(k,["prevent"])},{default:Z(()=>[B(S,{prop:"prompt",label:o(c)("generated.sessionPrompt.title")},{default:Z(()=>[B(m,{modelValue:i.prompt,"onUpdate:modelValue":p[0]||(p[0]=g=>i.prompt=g),type:"textarea",rows:10,disabled:!v.value||d.value,placeholder:o(c)("generated.sessionPrompt.placeholder")},null,8,["modelValue","disabled","placeholder"])]),_:1},8,["label"])]),_:1},8,["model"])),[[C,l.value]])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","title","before-close","close-icon"])}}}),TI=ut(CI,[["__scopeId","data-v-139b2f42"]]);function EI(e,t){const n=$([]),a=$(),r=$(!1),s=`/api/agent-sessions/${encodeURIComponent(e.sessionId)}/shares`,i=new URLSearchParams({nodeId:e.nodeId,workspaceId:e.workspaceId});async function l(){const y=await t(`${s}?${i}`);n.value=Fi.array().parse(y.shares)}async function d(y){r.value=!0;try{const k=await t(s,{method:"POST",body:JSON.stringify({nodeId:e.nodeId,workspaceId:e.workspaceId,expiresAt:y})}),T={share:Fi.parse(k.share),password:$i.parse(k.password)};a.value=T,n.value=[T.share,...n.value]}finally{r.value=!1}}async function v(y){r.value=!0;try{await t(`${s}/${encodeURIComponent(y)}?${i}`,{method:"DELETE"}),n.value=n.value.filter(k=>k.id!==y),a.value?.share.id===y&&(a.value=void 0)}finally{r.value=!1}}async function u(y,k){const T=await t(`${s}/${encodeURIComponent(y)}/copy?${i}`,{method:"POST",body:JSON.stringify(k===void 0?{}:{password:k})});return $i.nullable().parse(T.password)}return{shares:n,created:a,busy:r,load:l,create:d,remove:v,copyPassword:u}}const RI={key:0,class:"created-share","aria-live":"polite"},AI={class:"share-text"},NI=ot({__name:"SessionShareDialog",props:{target:{},request:{type:Function}},emits:["close"],setup(e,{emit:t}){const n=e,a=t,r=EI(n.target,n.request),{shares:s,created:i,busy:l}=r,d=$(),v=$({expiresAt:null}),u={expiresAt:[{validator:(N,I,b)=>b(I!==null&&(!Number.isFinite(+I)||+I<=Date.now())?new Error(c("sessionShare.futureTime")):void 0),trigger:"change"}]},y=N=>new URL(`/share/${encodeURIComponent(N)}`,location.origin).toString(),k=_(()=>i.value?c("sessionShare.shareText",{link:y(i.value.share.id),password:i.value.password}):"");async function T(){if(await d.value?.validate().catch(()=>!1))try{await r.create(v.value.expiresAt?.toISOString()??null)}catch(N){tt(lt(N),"error",N)}}async function p(N){try{await Nt.confirm(c("sessionShare.deleteWarning"),c("sessionShare.delete"),{closeIcon:Be("close"),icon:Be("warning"),type:"warning"})}catch{return}try{await r.remove(N),tt(c("sessionShare.deleted"),"success")}catch(I){tt(lt(I),"error",I)}}async function m(N){try{await navigator.clipboard.writeText(N),tt(c("sessionShare.copied"),"info")}catch(I){tt(lt(I),"error",I)}}Ot(()=>{r.load().catch(N=>tt(lt(N),"error",N))});async function S(N){try{let I=await r.copyPassword(N);if(I===null){const b=await Nt.prompt(c("sessionShare.restorePassword"),c("sessionShare.password"),{closeIcon:Be("close"),inputType:"password",inputPattern:/^[0-9]{6}$/u,inputErrorMessage:c("sessionShare.passwordFormat")});I=await r.copyPassword(N,b.value)}I!==null&&await m(c("sessionShare.shareText",{link:y(N),password:I}))}catch(I){I!=="cancel"&&I!=="close"&&tt(lt(I),"error",I)}}return(N,I)=>{const b=yg,C=ca,g=St,R=la,W=Ir,w=Tg,D=sa,E=Cg,H=Zt;return f(),ye(H,{onVnodeMounted:o(Jt),onVnodeBeforeUnmount:o(Qt),"model-value":!0,title:o(c)("sessionShare.title"),width:"min(1000px, calc(100vw - 32px))","append-to-body":"",onClose:I[2]||(I[2]=J=>a("close")),"close-icon":o(Be)("close")},{default:Z(()=>[B(R,{ref_key:"form",ref:d,model:v.value,rules:u,"label-position":"top",onSubmit:it(T,["prevent"])},{default:Z(()=>[B(C,{prop:"expiresAt",label:o(c)("sessionShare.expiresAt")},{default:Z(()=>[B(b,{modelValue:v.value.expiresAt,"onUpdate:modelValue":I[0]||(I[0]=J=>v.value.expiresAt=J),type:"datetime",placeholder:o(c)("sessionShare.permanent"),clearable:"","prefix-icon":o(Be)("calendar"),"clear-icon":o(Be)("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(g,{type:"primary","native-type":"submit",loading:o(l),"loading-icon":o(Be)("loading-action")},{default:Z(()=>[we(M(o(c)("sessionShare.create")),1)]),_:1},8,["loading","loading-icon"])]),_:1},8,["model"]),o(i)?(f(),L("section",RI,[j("p",AI,M(k.value),1),B(g,{icon:o(Be)("copy"),onClick:I[1]||(I[1]=J=>m(k.value))},{default:Z(()=>[we(M(o(c)("sessionShare.copy")),1)]),_:1},8,["icon"])])):ue("",!0),j("h3",null,M(o(c)("sessionShare.records")),1),B(E,{data:o(s),"empty-text":o(c)("sessionShare.noRecords")},{default:Z(()=>[B(w,{label:o(c)("sessionShare.link"),"min-width":"230"},{default:Z(({row:J})=>[B(W,{href:y(J.id),target:"_blank",rel:"noopener"},{default:Z(()=>[we(M(y(J.id)),1)]),_:2},1032,["href"])]),_:1},8,["label"]),B(w,{label:o(c)("sessionShare.createdAt"),prop:"createdAt",sortable:"","min-width":"215"},{default:Z(({row:J})=>[we(M(o(Kt)(J.createdAt)),1)]),_:1},8,["label"]),B(w,{label:o(c)("sessionShare.expiresAt"),prop:"expiresAt",sortable:"","min-width":"215"},{default:Z(({row:J})=>[we(M(J.expiresAt===null?o(c)("sessionShare.permanent"):o(Kt)(J.expiresAt)),1)]),_:1},8,["label"]),B(w,{label:o(c)("sessionShare.status"),"min-width":"100"},{default:Z(({row:J})=>[B(D,{type:J.expiresAt!==null&&J.expiresAt<=Date.now()?"info":"success"},{default:Z(()=>[we(M(o(c)(J.expiresAt!==null&&J.expiresAt<=Date.now()?"sessionShare.expired":"sessionShare.active")),1)]),_:2},1032,["type"])]),_:1},8,["label"]),B(w,{label:o(c)("sessionShare.actions"),"min-width":"180"},{default:Z(({row:J})=>[B(g,{link:"",icon:o(Be)("copy"),disabled:o(l),onClick:Y=>S(J.id)},{default:Z(()=>[we(M(o(c)("sessionShare.copy")),1)]),_:1},8,["icon","disabled","onClick"]),B(g,{link:"",type:"danger",icon:o(Be)("delete"),disabled:o(l),onClick:Y=>p(J.id)},{default:Z(()=>[we(M(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"])}}}),DI=ut(NI,[["__scopeId","data-v-e5a69738"]]),PI=["inert","aria-label"],OI={class:"sidebar-heading session-heading"},LI={class:"session-heading-meta"},WI=["aria-label","aria-busy","disabled"],MI={class:"new-session-form"},xI=["aria-label","disabled"],$I=["aria-label"],FI={key:3,class:"watch-status failed"},UI=["draggable","onDragover","onDrop","onDragstart","onMouseenter","onFocusin"],VI=["data-session-id","onContextmenu"],qI=["onClick"],HI={class:"session-link-content"},BI={class:"session-title-row"},GI=["src","data-runner"],zI=["aria-label"],KI=["aria-label"],jI=["datetime"],_I=["disabled","aria-label"],YI=["aria-busy"],QI=["aria-label"],JI={key:5,class:"empty sidebar-empty"},XI={class:"effective-skill-list"},ZI={key:0},e0={class:"effective-skill-tags"},t0={class:"effective-skill-list"},n0={key:0},a0={class:"effective-mcp-meta"},o0={class:"effective-skill-tags"},r0={class:"effective-mcp-meta"},i0={class:"effective-skill-tags"},s0=ot({__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=$(),s=$();function i(x,ee){C.value=x?ee.id:void 0,x&&(s.value={nodeId:n.nodeId,workspaceId:ee.workspaceId,sessionId:ee.id})}const l=$(),d=$(),v=$(!1);let u;function y(){return n.active!==!1&&n.nodeReady&&n.watchStatus==="ready"&&n.canLoadMore&&!n.loading&&!n.searching&&!n.refreshing&&!n.loadingMore&&n.loadMoreError===void 0}Ge(()=>[l.value,d.value,n.active,n.sessions,n.canLoadMore,n.loading,n.searching,n.refreshing,n.loadingMore,n.loadMoreError,n.watchStatus,n.nodeReady,n.searchQuery],()=>{u?.disconnect(),!n.loadingMore&&n.loadMoreError===void 0&&(v.value=!1);const x=l.value,ee=d.value;!y()||x===void 0||ee===void 0||typeof IntersectionObserver>"u"||(u=new IntersectionObserver(se=>{se.some(Se=>Se.isIntersecting)&&y()&&x.getClientRects().length>0&&a("loadMore")},{root:x,rootMargin:"0px 0px 96px 0px"}),u.observe(ee))},{flush:"post"});function k(){n.loadingMore||!n.canLoadMore||(v.value=!0,a("loadMore"))}wt(()=>u?.disconnect());const T=_(()=>({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(x=>({key:x.id,lastActivityAt:x.lastActivityAt,pin:x.pinOrder??null}))})),p=$(),m=$();Ge(()=>[n.nodeId,n.workspaceId],()=>{m.value=void 0}),Ge(()=>[n.nodeId,n.workspaceId],()=>{p.value=void 0});const S=$(),N=$("before"),I=$(),b=$(),C=$(),g=$(n.searchQuery);Ge(()=>n.searchQuery,x=>g.value=x);const R=$(!1),W=sI(n.request),w=$(!1),D=$(),E=$(!1),H=lg(n.request),J=H.loadedInstallations,Y=_(()=>H.inspection.value?.executionBuiltIns??[]);async function q(){R.value=!0;try{await W.load(n.nodeId,n.workspaceId)}catch{tt(c("generated.workspaceSessionList.unableToLoadCurrentSkillsTryAgain"),"error")}}async function Q(){w.value=!0;try{await H.run(()=>H.loadWorkspace(n.nodeId,n.workspaceId))}catch{tt(c("generated.workspaceSessionList.unableToLoadCurrentMCPServersTry"),"error")}}function V(x){return x==="VALID"?c("generated.workspaceSessionList.available"):x==="PARTIAL"?c("generated.workspaceSessionList.incompleteInstallation"):x==="UNKNOWN_VERSION"?c("generated.workspaceSessionList.unknownVersion"):x==="GIT_EXCLUDE_BROKEN"?c("generated.workspaceSessionList.invalidGitRules"):c("generated.workspaceSessionList.invalidDirectory")}function U(x){return x.pinOrder!==null&&x.pinOrder!==void 0}function A(x){return n.sessions.filter(U).findIndex(ee=>ee.id===x.id)}function h(x,ee){const se=ee==="up"?x.canMovePinUp:x.canMovePinDown;if(se!==void 0)return se;const Se=A(x),Fe=n.sessions.filter(U).length;return Se>=0&&(ee==="up"?Se>0:Se<Fe-1)}function F(x,ee){if(!K(ee)){x.preventDefault();return}r.value=ee.id,x.dataTransfer!==null&&(x.dataTransfer.effectAllowed="move",x.dataTransfer.setData("text/plain",ee.id))}function K(x){return!n.mobileViewport&&U(x)&&!n.loading}function ve(){r.value=void 0,S.value=void 0}function X(x,ee){if(!K(ee)||r.value===void 0)return;x.preventDefault(),x.dataTransfer!==null&&(x.dataTransfer.dropEffect="move"),S.value=ee.id;const se=x.currentTarget.getBoundingClientRect();N.value=x.clientY<se.top+se.height/2?"before":"after"}function oe(x){if(!K(x)){ve();return}const ee=n.sessions.find(Se=>Se.id===r.value),se=N.value;ve(),!(ee===void 0||ee.id===x.id)&&a("movePinTo",ee,x,se)}function ge(x){return I.value===x||b.value===x||C.value===x}function le(x,ee){const se=x.currentTarget;se instanceof HTMLElement&&x.relatedTarget instanceof Node&&se.contains(x.relatedTarget)||ee()}function ae(x,ee){I.value=x,gt(()=>ee.querySelector(".session-more-button")?.click())}function P(x,ee){ee.preventDefault();const se=ee.currentTarget.closest(".session-row");se!==null&&ae(x,se)}function z(x){a("open",x)}function ce(x){const se=[...l.value?.querySelectorAll(".session-row")??[]].find(Fe=>Fe.dataset.sessionId===x)?.querySelector(".session-link"),Se=n.sessions.find(Fe=>Fe.id===x);se&&Se&&a("openTree",x,se,n.title(Se))}function te(){if(g.value.trim()!==""){a("search",g.value);return}n.searchQuery!==""&&a("search",""),a("refresh")}return(x,ee)=>{const se=sa,Se=Vt,Fe=St,We=cn,be=ln,he=sn,Ue=Zt,Qe=Tt("tooltip"),rt=ia;return f(),L("aside",{tabindex:"-1",inert:e.mobileViewport&&!e.active,class:"conversation-sidebar","aria-label":o(c)("generated.workspaceSessionList.workspaceSessions")},[j("div",OI,[j("div",LI,[j("h2",null,M(o(c)("generated.workspaceSessionList.sessions")),1),e.workspaceKind==="GIT_WORKSPACE"?(f(),ye(se,{key:0,class:"workspace-kind-tag",type:"info",effect:"plain",size:"small"},{default:Z(()=>[we(M(e.workspaceKindLabel),1)]),_:1})):ue("",!0),e.workspaceBranch!==void 0?(f(),ye(se,{key:1,class:"workspace-branch-tag",type:"info",effect:"plain",size:"small"},{default:Z(()=>[we(M(e.workspaceBranch),1)]),_:1})):ue("",!0)])]),e.searchSupported?(f(),L("form",{key:0,class:"session-search",role:"search",onSubmit:it(te,["prevent"])},[B(Se,{modelValue:g.value,"onUpdate:modelValue":ee[0]||(ee[0]=ne=>g.value=ne),placeholder:o(c)("workspaceSessions.searchPlaceholder"),"aria-label":o(c)("workspaceSessions.searchLabel"),"prefix-icon":o(Be)("search"),clearable:"",size:"small",onClear:ee[1]||(ee[1]=ne=>a("search","")),"clear-icon":o(Be)("clear-input")},null,8,["modelValue","placeholder","aria-label","prefix-icon","clear-icon"]),Me((f(),L("button",{class:"session-search-button utility-control","aria-label":o(c)(g.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(),ye(De,{key:0,name:"loading-action"})):(f(),ye(De,{key:1,name:"refresh"}))],8,WI)),[[Qe,o(c)(g.value.trim()?"workspaceSessions.searchAction":"generated.workspaceSessionList.refreshWorkspaceSessions")]])],32)):ue("",!0),j("div",MI,[B(Fe,{class:"new-session-button",disabled:!e.nodeReady,type:"primary",onClick:ee[2]||(ee[2]=ne=>a("create"))},{default:Z(()=>[B(De,{name:"session-add"}),j("span",null,M(o(c)("generated.workspaceSessionList.newSession")),1)]),_:1},8,["disabled"]),B(he,{trigger:"click","popper-class":"workspace-tool-menu"},{dropdown:Z(()=>[B(be,null,{default:Z(()=>[e.skillSupported?(f(),ye(We,{key:0,onClick:q},{default:Z(()=>[B(De,{name:"collection"}),j("span",null,M(o(c)("generated.workspaceSessionList.loadedSkills")),1)]),_:1})):ue("",!0),e.mcpSupported?(f(),ye(We,{key:1,onClick:Q},{default:Z(()=>[B(De,{name:"connection"}),j("span",null,M(o(c)("generated.workspaceSessionList.loadedMCP")),1)]),_:1})):ue("",!0),e.cleanupSessionsSupported?(f(),ye(We,{key:2,disabled:e.loading||!e.nodeReady||!e.workspaceManageable,onClick:ee[3]||(ee[3]=ne=>a("cleanupSessions"))},{default:Z(()=>[B(De,{name:"delete"}),j("span",null,M(o(c)("generated.workspaceSessionList.cleanupSessions")),1)]),_:1},8,["disabled"])):ue("",!0)]),_:1})]),default:Z(()=>[j("button",{class:"workspace-more-button utility-control","aria-label":o(c)("generated.workspaceSessionList.moreWorkspaceActions"),disabled:!e.nodeReady,type:"button"},[B(De,{name:"more"})],8,xI)]),_:1})]),e.sessionGroup?(f(),ye(gc,{key:1,"model-value":e.sessionGroup,"onUpdate:modelValue":ee[4]||(ee[4]=ne=>a("selectGroup",ne))},null,8,["model-value"])):ue("",!0),e.watchStatus==="loading"?(f(),L("div",{key:2,class:"watch-status",role:"status","aria-label":o(c)("workspaceWatch.loadingSessions")},[B(gn,{class:"read-loading-indicator"})],8,$I)):e.watchStatus==="failed"?(f(),L("p",FI,M(o(c)("workspaceWatch.sessionsFailed")),1)):ue("",!0),e.sessions.length||e.canLoadMore||e.loadMoreError!==void 0?Me((f(),L("ul",{key:4,ref_key:"sessionListElement",ref:l,class:"session-list"},[(f(!0),L(qe,null,Xe(e.sessions,ne=>(f(),L("li",{key:ne.id,class:je(["mar-session-reorder-item",{"dragging-pinned":r.value===ne.id,"drag-over-pinned":S.value===ne.id,"drag-over-pinned-after":S.value===ne.id&&N.value==="after"}]),draggable:K(ne),onDragend:ve,onDragover:me=>X(me,ne),onDrop:it(me=>oe(ne),["prevent"]),onDragstart:me=>F(me,ne),onMouseenter:me=>I.value=ne.id,onMouseleave:ee[6]||(ee[6]=me=>I.value=void 0),onFocusin:me=>b.value=ne.id,onFocusout:ee[7]||(ee[7]=me=>le(me,()=>b.value=void 0))},[j("div",{"data-session-id":ne.id,class:je(["session-row",{pinned:U(ne),selected:e.selectedSessionId===ne.id}]),onContextmenu:me=>P(ne.id,me)},[Me((f(),L("button",{class:je(["session-link",{selected:e.selectedSessionId===ne.id}]),type:"button",onClick:me=>z(ne.id)},[j("span",HI,[j("span",BI,[j("img",{src:e.runnerIcon(ne.runner),"data-runner":ne.runner,alt:"","aria-hidden":"true",class:"runner-brand-icon session-title-runner-icon"},null,8,GI),ne.schedule?Me((f(),ye(De,{key:0,name:"clock",class:je(["session-pin-indicator",{"schedule-paused":!ne.schedule.enabled}]),"aria-label":o(c)(ne.schedule.enabled?"generated.scheduledSession.enabled":"generated.scheduledSession.paused")},null,8,["class","aria-label"])),[[Qe,o(c)(ne.schedule.enabled?"generated.scheduledSession.enabled":"generated.scheduledSession.paused")]]):U(ne)?Me((f(),ye(De,{key:1,name:"star-filled",class:"session-pin-indicator","aria-label":o(c)("generated.workspaceSessionList.pinned")},null,8,["aria-label"])),[[Qe,o(c)("generated.workspaceSessionList.pinned2")]]):ue("",!0),j("strong",null,M(e.title(ne)),1),e.hasUnread(ne.id)?Me((f(),L("span",{key:2,class:"session-unread-label mar-unread-label","aria-label":o(c)("generated.workspaceSessionList.hasUnreadNotifications")},[we(M(o(c)("generated.workspaceSessionList.unread")),1)],8,zI)),[[Qe,o(c)("generated.workspaceSessionList.hasUnreadNotifications2")]]):ue("",!0),e.nodeReady&&e.activity(ne)==="MANAGED_ACTIVE"?Me((f(),L("span",{key:3,class:je(["session-activity",e.activity(ne).toLocaleLowerCase()]),"aria-label":e.activityLabel(ne),role:"img"},[...ee[13]||(ee[13]=[j("i",{"aria-hidden":"true"},null,-1)])],10,KI)),[[Qe,e.activityLabel(ne)]]):ue("",!0),Me((f(),L("time",{class:"session-relative-time",datetime:e.activityDateTime(ne)},[we(M(e.relativeActivity(ne)),1)],8,jI)),[[Qe,e.activityTitle(ne)]])])])],10,qI)),[[Qe,e.title(ne)]]),ge(ne.id)?(f(),ye(he,{key:0,class:"session-row-actions",placement:"bottom-end","popper-class":"session-action-menu",trigger:"click",onVisibleChange:me=>i(me,ne),onCommand:me=>me==="tree"&&ce(ne.id)},{dropdown:Z(()=>[B(be,null,{default:Z(()=>[e.asideSupported?(f(),ye(We,{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"}),we(" "+M(o(c)("generated.workbenchAside.openSession")),1)]),_:1},8,["disabled"])):ue("",!0),U(ne)?(f(),L(qe,{key:2},[B(We,{disabled:ne.schedule?.enabled===!0,onClick:me=>a("pin",ne,!1)},{default:Z(()=>[B(De,{name:"pin"}),we(M(o(c)("generated.workspaceSessionList.unpin")),1)]),_:1},8,["disabled","onClick"]),B(We,{disabled:!h(ne,"up"),onClick:me=>a("movePin",ne,"up")},{default:Z(()=>[B(De,{name:"chevron-up"}),we(M(o(c)("generated.workspaceSessionList.moveUp")),1)]),_:1},8,["disabled","onClick"]),B(We,{disabled:!h(ne,"down"),onClick:me=>a("movePin",ne,"down")},{default:Z(()=>[B(De,{name:"chevron-down"}),we(M(o(c)("generated.workspaceSessionList.moveDown")),1)]),_:1},8,["disabled","onClick"])],64)):(f(),ye(We,{key:1,onClick:me=>a("pin",ne,!0)},{default:Z(()=>[B(De,{name:"pin"}),we(M(o(c)("generated.workspaceSessionList.pin")),1)]),_:1},8,["onClick"])),B(We,{onClick:me=>m.value=ne},{default:Z(()=>[B(De,{name:"share"}),we(M(o(c)("sessionShare.title")),1)]),_:1},8,["onClick"]),B(We,{onClick:me=>a("rename",ne)},{default:Z(()=>[B(De,{name:"edit"}),we(M(o(c)("generated.workspaceSessionList.rename")),1)]),_:1},8,["onClick"]),e.asideSupported?(f(),ye(We,{key:3,disabled:e.loading||!e.nodeReady,command:"tree"},{default:Z(()=>[B(De,{name:"session-tree"}),we(M(o(c)("sessionGroups.tree")),1)]),_:1},8,["disabled"])):ue("",!0),ne.runtime?.capabilities?.includes("session.prompt")?(f(),ye(We,{key:4,onClick:me=>p.value=ne},{default:Z(()=>[B(De,{name:"document"}),we(M(o(c)("generated.sessionPrompt.title")),1)]),_:1},8,["onClick"])):ue("",!0),ne.runtime?.capabilities?.includes("session.schedule")?(f(),ye(We,{key:5,onClick:me=>{D.value=ne,E.value=!0}},{default:Z(()=>[B(De,{name:"clock"}),we(M(o(c)("generated.scheduledSession.title")),1)]),_:1},8,["onClick"])):ue("",!0),n.canDeleteSession?.(ne)!==!1?(f(),ye(We,{key:6,divided:"",onClick:me=>a("deleteSession",ne)},{default:Z(()=>[B(De,{name:"delete"}),we(M(o(c)("generated.workspaceSessionList.delete")),1)]),_:1},8,["onClick"])):ue("",!0)]),_:2},1024)]),default:Z(()=>[Me((f(),L("button",{class:"session-more-button utility-control",disabled:e.loading,"aria-label":o(c)("generated.workspaceSessionList.moreSessionActions",{value0:e.title(ne)}),type:"button"},[B(De,{name:"more"})],8,_I)),[[Qe,o(c)("generated.workspaceSessionList.moreSessionActions2")]])]),_:2},1032,["onVisibleChange","onCommand"])):ue("",!0)],42,VI)],42,UI))),128)),e.canLoadMore||e.loadMoreError!==void 0?(f(),L("li",{key:0,ref_key:"appendMarker",ref:d,class:"list-append-state","aria-busy":e.loadingMore},[e.loadingMore&&!v.value?(f(),L("span",{key:0,role:"status","aria-label":o(c)("generated.workspaceSessionList.loading")},[B(gn,{class:"read-loading-indicator"})],8,QI)):ue("",!0),v.value||e.loadMoreError!==void 0&&!e.loadingMore?(f(),ye(Fe,{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(),ye(gn,{key:0,class:"read-loading-indicator"})):(f(),L(qe,{key:1},[we(M(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-disabled","aria-busy","aria-label"])):ue("",!0)],8,YI)):ue("",!0)])),[[o(mc),T.value]]):e.watchStatus!=="loading"&&e.watchStatus!=="failed"?(f(),L("p",JI,M(o(c)(e.searchQuery?"sessionGroups.noResults":e.sessionGroup==="MAIN"?"sessionGroups.emptyMain":e.sessionGroup==="CHILD"?"sessionGroups.emptyChild":"generated.workspaceSessionList.syncingOpenCodeCodexAndClaudeCodeSessions")),1)):ue("",!0),R.value?(f(),ye(Ue,{key:6,onVnodeMounted:o(Jt),onVnodeBeforeUnmount:o(Qt),modelValue:R.value,"onUpdate:modelValue":ee[8]||(ee[8]=ne=>R.value=ne),title:o(c)("generated.workspaceSessionList.currentSkills"),width:"min(560px, calc(100vw - 32px))","append-to-body":"","close-icon":o(Be)("close")},{default:Z(()=>[Me((f(),L("div",XI,[!o(W).loading.value&&o(W).skills.value.length===0?(f(),L("p",ZI,M(o(c)("generated.workspaceSessionList.thisWorkspaceHasNoAvailableSkills")),1)):ue("",!0),(f(!0),L(qe,null,Xe(o(W).skills.value,ne=>(f(),L("div",{key:ne.name,class:"effective-skill-row"},[j("div",null,[j("strong",null,M(ne.name),1),j("p",null,M(ne.description||o(c)("generated.workspaceSessionList.noDescription")),1)]),j("span",e0,[B(se,{effect:"plain",type:ne.localStatus==="VALID"?"success":"warning"},{default:Z(()=>[we(M(V(ne.localStatus)),1)]),_:2},1032,["type"]),B(se,{effect:"plain",type:ne.source==="WORKSPACE"?"primary":"info"},{default:Z(()=>[we(M(ne.source==="WORKSPACE"?o(c)("common.workspace"):o(c)("common.nodeHome")),1)]),_:2},1032,["type"])])]))),128))])),[[rt,o(W).loading.value]])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ue("",!0),w.value?(f(),ye(Ue,{key:7,onVnodeMounted:o(Jt),onVnodeBeforeUnmount:o(Qt),modelValue:w.value,"onUpdate:modelValue":ee[9]||(ee[9]=ne=>w.value=ne),title:o(c)("generated.workspaceSessionList.loadedMCP2"),width:"min(560px, calc(100vw - 32px))","append-to-body":"","close-icon":o(Be)("close")},{default:Z(()=>[Me((f(),L("div",t0,[!o(H).loading.value&&o(J).length===0&&Y.value.length===0?(f(),L("p",n0,M(o(c)("generated.workspaceSessionList.thisWorkspaceHasNoLoadedMCPServers")),1)):ue("",!0),(f(!0),L(qe,null,Xe(o(J),ne=>(f(),L("div",{key:ne.serverName,class:"effective-skill-row"},[j("div",null,[j("strong",null,M(ne.displayName),1),j("p",null,M(ne.description||o(c)("generated.workspaceSessionList.noDescription")),1),j("p",a0,M(ne.serverName)+" · "+M(ne.version),1)]),j("span",o0,[B(se,{effect:"plain",type:"success"},{default:Z(()=>[we(M(o(c)("generated.workspaceSessionList.loaded")),1)]),_:1}),B(se,{effect:"plain",type:ne.origin==="WORKSPACE"?"primary":"info"},{default:Z(()=>[we(M(ne.origin==="WORKSPACE"?o(c)("common.workspace"):o(c)("common.node")),1)]),_:2},1032,["type"])])]))),128)),Y.value.length>0?(f(!0),L(qe,{key:1},Xe(Y.value,ne=>(f(),L("div",{key:ne,class:"effective-skill-row"},[j("div",null,[j("strong",null,M(o(c)(ne==="mar_schedule"?"generated.workspaceSessionList.marScheduleMcp":"generated.workspaceSessionList.marNotificationMcp")),1),j("p",null,M(o(c)(ne==="mar_schedule"?"generated.workspaceSessionList.marScheduleMcpDescription":"generated.workspaceSessionList.marNotificationMcpDescription")),1),j("p",r0,M(ne),1)]),j("span",i0,[B(se,{effect:"plain",type:"info"},{default:Z(()=>[we(M(o(c)("generated.workspaceSessionList.executionInjected")),1)]),_:1}),B(se,{effect:"plain",type:"info"},{default:Z(()=>[we(M(o(c)("generated.workspaceSessionList.builtInMcp")),1)]),_:1})])]))),128)):ue("",!0)])),[[rt,o(H).loading.value]])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ue("",!0),m.value?(f(),ye(DI,{key:`${e.nodeId}:${e.workspaceId}:${m.value.id}`,target:{nodeId:e.nodeId,workspaceId:e.workspaceId,sessionId:m.value.id},request:e.request,onClose:ee[10]||(ee[10]=ne=>m.value=void 0)},null,8,["target","request"])):ue("",!0),p.value!==void 0?(f(),ye(TI,{key:`${e.nodeId}:${p.value.id}`,"node-id":e.nodeId,"session-id":p.value.id,request:e.request,onClose:ee[11]||(ee[11]=ne=>p.value=void 0)},null,8,["node-id","session-id","request"])):ue("",!0),E.value?(f(),ye(bI,{key:10,modelValue:E.value,"onUpdate:modelValue":ee[12]||(ee[12]=ne=>E.value=ne),session:D.value,"node-id":e.nodeId,"workspace-id":e.workspaceId,request:e.request},null,8,["modelValue","session","node-id","workspace-id","request"])):ue("",!0)],8,PI)}}}),l0=ut(s0,[["__scopeId","data-v-db03cb2b"]]),c0=["aria-busy"],d0={class:"workspace-session-cleanup-description"},u0=["aria-label"],v0={key:0,class:"workspace-session-cleanup-description"},f0={key:0},p0={key:1,class:"workspace-session-cleanup-by-runner"},g0=ot({__name:"WorkspaceSessionCleanupDialog",props:{modelValue:{type:Boolean},cleanup:{type:Function}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,a=t,r=$(),s=Un({inactiveDays:30}),i=$(!1),l=$(),d=_(()=>c(l.value?.timedOut?"generated.workspaceSessionCleanupDialog.partiallyCompleted":"generated.workspaceSessionCleanupDialog.completed")),v={inactiveDays:[{validator:(p,m,S)=>{if(typeof m=="number"&&Number.isInteger(m)&&m>=1&&m<=365){S();return}S(new Error(c("generated.workspaceSessionCleanupDialog.inactiveDaysInvalid")))},trigger:"change"}]},u=_(()=>{const p=l.value;return p===void 0?[]:Object.entries(p.deletedByRunner).filter(m=>m[1]!==void 0).filter(([,m])=>m>0).map(([m,S])=>`${Fn(m)} ${S}`)});function y(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 m=await n.cleanup(s.inactiveDays);m!==void 0&&(l.value=m)}catch(m){tt(m instanceof Error?lt(m):c("generated.workspaceSessionCleanupDialog.cleanupFailed"),"error",m)}finally{i.value=!1}}}return(p,m)=>{const S=Eg,N=ca,I=la,b=St,C=Zt;return e.modelValue?(f(),ye(C,{key:0,onVnodeMounted:o(Jt),onVnodeBeforeUnmount:o(Qt),class:"workspace-session-cleanup-dialog","before-close":y,"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":m[1]||(m[1]=g=>a("update:modelValue",g)),"close-icon":o(Be)("close")},{footer:Z(()=>[l.value===void 0?(f(),L(qe,{key:0},[B(b,{disabled:i.value,onClick:k},{default:Z(()=>[we(M(o(c)("generated.workspaceSessionCleanupDialog.cancel")),1)]),_:1},8,["disabled"]),B(b,{type:"danger",loading:i.value,"loading-icon":o(Be)("loading-action"),onClick:T},{default:Z(()=>[we(M(o(c)("generated.workspaceSessionCleanupDialog.cleanup")),1)]),_:1},8,["loading","loading-icon"])],64)):(f(),ye(b,{key:1,onClick:k},{default:Z(()=>[we(M(o(c)("common.close")),1)]),_:1}))]),default:Z(()=>[j("div",{class:"workspace-session-cleanup-content","aria-busy":i.value},[l.value===void 0?(f(),L(qe,{key:0},[j("p",d0,M(o(c)("generated.workspaceSessionCleanupDialog.description")),1),B(I,{ref_key:"formRef",ref:r,model:s,rules:v,"label-position":"top"},{default:Z(()=>[B(N,{label:o(c)("generated.workspaceSessionCleanupDialog.inactiveDays"),prop:"inactiveDays"},{default:Z(()=>[B(S,{modelValue:s.inactiveDays,"onUpdate:modelValue":m[0]||(m[0]=g=>s.inactiveDays=g),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(),L("section",{key:1,class:"workspace-session-cleanup-result","aria-label":d.value},[j("h3",null,M(d.value),1),l.value.timedOut?(f(),L("p",v0,M(o(c)("generated.workspaceSessionCleanupDialog.timeLimitReached")),1)):ue("",!0),j("dl",{class:je(["workspace-session-cleanup-statistics",{"has-remaining":l.value.remaining!==void 0}])},[j("div",null,[j("dt",null,M(o(c)("generated.workspaceSessionCleanupDialog.deleted")),1),j("dd",null,M(l.value.deleted),1)]),j("div",null,[j("dt",null,M(o(c)("generated.workspaceSessionCleanupDialog.skipped")),1),j("dd",null,M(l.value.skipped),1)]),j("div",{class:je({failed:l.value.failed>0})},[j("dt",null,M(o(c)("generated.workspaceSessionCleanupDialog.failed")),1),j("dd",null,M(l.value.failed),1)],2),l.value.remaining!==void 0?(f(),L("div",f0,[j("dt",null,M(o(c)("generated.workspaceSessionCleanupDialog.remaining")),1),j("dd",null,M(l.value.remaining),1)])):ue("",!0)],2),u.value.length>0?(f(),L("dl",p0,[j("dt",null,M(o(c)("generated.workspaceSessionCleanupDialog.byRunner")),1),j("dd",null,M(u.value.join(", ")),1)])):ue("",!0)],8,u0))],8,c0)]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","close-on-click-modal","close-on-press-escape","show-close","model-value","title","close-icon"])):ue("",!0)}}}),m0=ut(g0,[["__scopeId","data-v-5e951efe"]]),h0=["aria-label","disabled"],y0=["aria-label"],w0={key:0,class:"workspace-tab workspace-tab-placeholder active",role:"tab","aria-selected":"true"},k0={class:"workspace-tab-content"},b0={key:0},I0=["data-tab-id","onPointerdown","onContextmenu","onFocusin"],S0=["aria-label","aria-selected","onClick"],C0={class:"workspace-tab-content"},T0={class:"workspace-tab-meta"},E0=["aria-description"],R0={class:"workspace-tab-node-label"},A0={key:1,class:"workspace-tab-node"},N0=["aria-label"],D0=["aria-label"],P0=["aria-label","onClick"],O0=["aria-label","onClick"],L0={key:1,class:"workspace-tab-overflow-actions"},W0=["aria-label","disabled"],M0=["aria-label"],x0={class:"workspace-tab-meta"},$0=["aria-description"],F0={class:"workspace-tab-node-label"},U0={key:1,class:"workspace-tab-node"},V0=["aria-label"],q0=["aria-label"],H0=ot({__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=$(),s=$(),i=$(!1),l=$(),d=$(!1),v=$(!1),u=$(!1),y=$({}),k=$(0),T=$(),p=$(),m=_(()=>n.tabs.findIndex(P=>P.id===T.value?.tabId)),S=_(()=>n.tabs[m.value]?.pinned===!0);let N,I=0,b=0,C=!1,g,R;function W(){return window.matchMedia("(max-width: 767px)").matches}function w(){const P=l.value;if(P===void 0)return;const z=P.scrollWidth>P.clientWidth+1;u.value=z,d.value=z&&P.scrollLeft>1,v.value=z&&P.scrollLeft+P.clientWidth<P.scrollWidth-1}function D(){const P=l.value,z={};let ce=0;if(P!==void 0&&!W()){const te=P.querySelector(".workspace-tab:not(.pinned)"),x=getComputedStyle(P),ee=Number.parseFloat(x.columnGap)||0,se=Number.parseFloat(x.paddingLeft)||0;ce=se;for(const Fe of P.querySelectorAll(".workspace-tab.pinned"))Fe.dataset.tabId!==void 0&&(z[Fe.dataset.tabId]=ce-se,ce+=Fe.getBoundingClientRect().width+ee);const Se=te===null?0:Number.parseFloat(getComputedStyle(te).minWidth);if(te===null||Object.keys(z).length===0||P.clientWidth-ce-(Number.parseFloat(x.paddingRight)||0)<Se){ce=0;for(const Fe of Object.keys(z))delete z[Fe]}}y.value=z,k.value=ce,w()}function E(){const P=l.value;if(R?.disconnect(),P!==void 0){R??=new ResizeObserver(()=>{D(),J()}),R.observe(P);for(const z of P.querySelectorAll(".workspace-tab"))R.observe(z)}}function H(P){const z=P===void 0?void 0:l.value?.querySelector(`[data-tab-id="${CSS.escape(P)}"]`),ce=l.value;if(z==null||ce===void 0||P!==void 0&&y.value[P]!==void 0)return;const te=z.getBoundingClientRect(),x=ce.getBoundingClientRect(),ee=getComputedStyle(ce),se=ce.querySelectorAll(".workspace-tab.sticky-pinned"),Se=se.item(se.length-1),Fe=Se?Se.getBoundingClientRect().right+(Number.parseFloat(ee.columnGap)||0):x.left+(Number.parseFloat(ee.paddingLeft)||0),We=x.right-(Number.parseFloat(ee.paddingRight)||0),be=te.left<Fe?te.left-Fe:te.right>We?te.right-We:0;be!==0&&ce.scrollBy({left:be,behavior:"smooth"})}function J(){H(n.activeTabId)}function Y(P,z){const ce=P.currentTarget;requestAnimationFrame(()=>{ce.isConnected&&ce.contains(document.activeElement)&&H(z)})}function q(P){const z=l.value;z!==void 0&&z.scrollBy({left:P*Math.max(180,Math.floor((z.clientWidth-k.value)*.7)),behavior:"smooth"})}function Q(P){if(typeof P!="string")return;const z=n.tabs.find(ce=>ce.id===P);z!==void 0&&a("activate",z)}async function V(P,z){P.preventDefault(),P.stopPropagation(),T.value=void 0,await gt();const ce={tabId:z.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=ce,await gt(),T.value?.tabId===ce.tabId&&p.value?.click()}function U(P){const z=m.value,ce=n.tabs[z];if(T.value=void 0,ce!==void 0)if(P==="pin")a("pin",ce.id,ce.pinned!==!0);else if(P==="close")ce.pinned!==!0&&a("close",ce);else{const te=z+(P==="previous"?-1:1);te>=0&&te<n.tabs.length&&a("reorder",ce.id,te)}}let A;function h(P=!1){gt(()=>{E(),D(),P&&J()})}Ge(()=>n.tabs,()=>{m.value<0&&(T.value=void 0),h(!0)},{flush:"post",immediate:!0}),Ge(()=>n.activeTabId,()=>h(!0),{flush:"post"}),Ot(()=>{A=Ft.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")})}),wt(()=>{R?.disconnect(),A?.()});function F(){r.value=void 0,s.value=void 0,N=void 0,C=!1,g=void 0}function K(P,z,ce){N=z.pointerId,I=z.clientX,b=z.clientY,C=!1,g=ce,r.value=P.dataset.tabId,P.setPointerCapture(z.pointerId)}function ve(){i.value=!0,window.setTimeout(()=>{i.value=!1},0)}function X(P,z){P.button!==0||P.target.closest(".tab-close, .tab-pin")!==null||W()||K(P.currentTarget,P,z)}function oe(P){if(N!==P.pointerId||r.value===void 0||(C||(C=Math.hypot(P.clientX-I,P.clientY-b)>=4),!C))return;const z=document.elementFromPoint(P.clientX,P.clientY);s.value=z?.closest(".workspace-tab")?.dataset.tabId,P.preventDefault()}function ge(P){if(N!==P.pointerId||r.value===void 0)return;const z=r.value,ce=document.elementFromPoint(P.clientX,P.clientY)?.closest(".workspace-tab"),te=ce?.dataset.tabId,x=ce?.parentElement;if(!C&&g!==void 0&&(ae(g),ve()),C&&ce!==void 0&&ce!==null&&te!==void 0&&x!==null&&x!==void 0){const ee=[...x.children],se=ee.findIndex(be=>be.dataset.tabId===te),Se=ee.findIndex(be=>be.dataset.tabId===z),Fe=ce.getBoundingClientRect().left+ce.offsetWidth/2,We=P.clientX>Fe?se+1:se;a("reorder",z,We>Se?We-1:We),ve()}F()}function le(P){N===P.pointerId&&F()}function ae(P){i.value||a("activate",P)}return(P,z)=>{const ce=cn,te=ln,x=sn,ee=Tt("tooltip");return e.tabs.length>0||e.placement==="header"&&e.emptyLabel!==void 0?(f(),L("section",{key:0,class:je(["workspace-tab-strip",`workspace-tab-strip-${e.placement}`])},[u.value?(f(),L("button",{key:0,class:"tab-strip-scroll","aria-label":o(c)("workspaceTabs.scrollPrevious"),disabled:!d.value,type:"button",onClick:z[0]||(z[0]=se=>q(-1))},[B(De,{name:"chevron-left"})],8,h0)):ue("",!0),j("div",{ref_key:"tabList",ref:l,class:"workspace-tabs",role:"tablist","aria-label":o(c)("generated.workspaceTabs.openWorkspaces"),onScrollPassive:w},[e.tabs.length===0&&e.emptyLabel!==void 0?(f(),L("div",w0,[j("span",k0,[j("span",null,M(e.emptyLabel),1),e.emptyContext?(f(),L("small",b0,M(e.emptyContext),1)):ue("",!0)])])):ue("",!0),(f(!0),L(qe,null,Xe(e.tabs,se=>(f(),L("div",{key:se.id,class:je(["workspace-tab",{active:e.activeTabId===se.id,"menu-open":T.value?.tabId===se.id,pinned:se.pinned===!0,"sticky-pinned":y.value[se.id]!==void 0,dragging:r.value===se.id,"drag-over":s.value===se.id&&r.value!==se.id}]),"data-tab-id":se.id,style:Ct(y.value[se.id]===void 0?void 0:{left:`${y.value[se.id]}px`}),onPointerdown:Se=>X(Se,se),onPointermove:oe,onPointerup:ge,onPointercancel:le,onContextmenu:Se=>V(Se,se),onFocusin:Se=>Y(Se,se.id)},[Me((f(),L("button",{"aria-label":se.label,role:"tab","aria-selected":e.activeTabId===se.id,type:"button",onClick:Se=>ae(se)},[j("span",C0,[j("span",null,M(se.label),1),j("small",T0,[e.activeTabId===se.id&&e.directAvailable(se.nodeId)?Me((f(),L("span",{key:0,class:"workspace-tab-node direct-available-node","aria-description":e.directDescription(se.nodeId)},[j("span",R0,M(e.nodeLabel(se)),1),B(De,{name:"link",class:"workspace-tab-direct-icon","aria-hidden":"true"})],8,E0)),[[ee,e.directDescription(se.nodeId)]]):(f(),L("span",A0,M(e.nodeLabel(se)),1)),e.hasActiveRun(se.nodeId,se.workspaceId)?Me((f(),L("span",{key:2,class:"workspace-tab-running session-activity managed_active",role:"img","aria-label":o(c)("workspaceTabs.running")},[...z[3]||(z[3]=[j("i",{"aria-hidden":"true"},null,-1)])],8,N0)),[[ee,o(c)("generated.sessionPresentation.managed")]]):ue("",!0),e.hasUnread(se.nodeId,se.workspaceId)?Me((f(),L("span",{key:3,class:"workspace-tab-unread mar-unread-label","aria-label":o(c)("workspaceTabs.unreadDescription")},[we(M(o(c)("workspaceTabs.unread")),1)],8,D0)),[[ee,o(c)("workspaceTabs.unreadDescription")]]):ue("",!0)])])],8,S0)),[[ee,se.label]]),se.pinned===!0?Me((f(),L("button",{key:0,class:"tab-pin icon-button utility-control","aria-label":o(c)("workspaceTabs.unpinLabel",{label:se.label}),type:"button",onClick:it(Se=>a("pin",se.id,!1),["stop"])},[B(De,{name:"pin"})],8,P0)),[[ee,o(c)("workspaceTabs.unpin")]]):(f(),L("button",{key:1,class:"tab-close icon-button utility-control","aria-label":o(c)("generated.workspaceTabs.close",{value0:se.label}),type:"button",onClick:Se=>a("close",se)},[B(De,{name:"close"})],8,O0))],46,I0))),128))],40,y0),u.value?(f(),L("div",L0,[j("button",{class:"tab-strip-scroll","aria-label":o(c)("workspaceTabs.scrollNext"),disabled:!v.value,type:"button",onClick:z[1]||(z[1]=se=>q(1))},[B(De,{name:"chevron-right"})],8,W0),B(x,{trigger:"click",onCommand:Q},{dropdown:Z(()=>[B(te,{class:"workspace-tab-menu-list"},{default:Z(()=>[(f(!0),L(qe,null,Xe(e.tabs,se=>(f(),ye(ce,{key:se.id,class:je({active:e.activeTabId===se.id}),command:se.id},{default:Z(()=>[j("span",null,M(se.label),1),j("small",x0,[e.activeTabId===se.id&&e.directAvailable(se.nodeId)?Me((f(),L("span",{key:0,class:"workspace-tab-node direct-available-node","aria-description":e.directDescription(se.nodeId)},[j("span",F0,M(e.nodeLabel(se)),1),B(De,{name:"link",class:"workspace-tab-direct-icon","aria-hidden":"true"})],8,$0)),[[ee,e.directDescription(se.nodeId)]]):(f(),L("span",U0,M(e.nodeLabel(se)),1)),e.hasActiveRun(se.nodeId,se.workspaceId)?Me((f(),L("span",{key:2,class:"workspace-tab-running session-activity managed_active",role:"img","aria-label":o(c)("workspaceTabs.running")},[...z[4]||(z[4]=[j("i",{"aria-hidden":"true"},null,-1)])],8,V0)),[[ee,o(c)("generated.sessionPresentation.managed")]]):ue("",!0),e.hasUnread(se.nodeId,se.workspaceId)?Me((f(),L("span",{key:3,class:"workspace-tab-unread mar-unread-label","aria-label":o(c)("workspaceTabs.unreadDescription")},[we(M(o(c)("workspaceTabs.unread")),1)],8,q0)),[[ee,o(c)("workspaceTabs.unreadDescription")]]):ue("",!0)])]),_:2},1032,["class","command"]))),128))]),_:1})]),default:Z(()=>[j("button",{class:"workspace-tab-menu","aria-label":o(c)("workspaceTabs.allOpenWorkspaces"),type:"button"},[B(De,{name:"chevron-down"})],8,M0)]),_:1})])):ue("",!0),T.value!==void 0?(f(),L("div",{key:2,class:"workspace-tab-context-anchor",style:Ct({left:`${T.value.x}px`,top:`${T.value.y}px`})},[B(x,{trigger:"click",placement:"bottom-start",onCommand:U,onVisibleChange:z[2]||(z[2]=se=>!se&&(T.value=void 0))},{dropdown:Z(()=>[B(te,null,{default:Z(()=>[B(ce,{command:"pin"},{default:Z(()=>[B(De,{name:"pin"}),we(M(o(c)(S.value?"workspaceTabs.unpin":"workspaceTabs.pin")),1)]),_:1}),B(ce,{command:"previous",disabled:m.value<=0},{default:Z(()=>[B(De,{name:"chevron-left"}),we(M(o(c)("workspaceTabs.movePrevious")),1)]),_:1},8,["disabled"]),B(ce,{command:"next",disabled:m.value<0||m.value>=e.tabs.length-1},{default:Z(()=>[B(De,{name:"chevron-right"}),we(M(o(c)("workspaceTabs.moveNext")),1)]),_:1},8,["disabled"]),B(ce,{command:"close",divided:"",disabled:S.value},{default:Z(()=>[B(De,{name:"close"}),we(M(o(c)("workspaceTabs.close")),1)]),_:1},8,["disabled"])]),_:1})]),default:Z(()=>[j("button",{ref_key:"contextMenuTrigger",ref:p,class:"workspace-tab-context-trigger",type:"button",tabindex:"-1"},null,512)]),_:1})],4)):ue("",!0)],2)):ue("",!0)}}}),Xs=ut(H0,[["__scopeId","data-v-f802afcc"]]),B0={key:0,class:"workspace-picker-toolbar"},G0=["aria-label"],z0={key:0},K0={key:2},j0={class:"workspace-picker-toolbar-actions"},_0={key:2,class:"workspace-directory-list"},Y0={key:0,class:"pending-directory"},Q0={type:"button"},J0=["aria-label"],X0=["disabled","onClick","onDblclick"],Z0={key:0},eS=["aria-label","disabled","onClick"],tS={key:1,class:"workspace-directory-empty"},nS={key:3,class:"workspace-picker-empty"},aS={key:4,class:"workspace-picker-empty"},oS={key:5,class:"workspace-picker-empty"},rS={class:"workspace-picker-actions"},iS={key:0},sS={key:1},lS=ot({__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=$(),s=$(!1),i=$(""),l=Un({name:""}),d=_(()=>({name:[{required:!0,message:c("generated.workspaceRegistrationPicker.enterADirectoryName"),trigger:"blur"},{validator:(m,S,N)=>{const I=S.trim();if(I.length===0||I.length>255||I==="."||I===".."||/[\\/\0]/u.test(I)){N(new Error(c("generated.workspaceRegistrationPicker.enterASingleDirectoryNameWithoutPath")));return}N()},trigger:["blur","change"]}]})),v=_(()=>n.nodeReady&&n.directory?.selectable===!0),u=_(()=>p(n.directory)),y=_(()=>n.directory?.entries.filter(m=>ic(m.path,i.value))??[]);Ge(()=>n.directory,m=>{m===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(m){if(m===void 0)return[];const S=m.currentPath.includes("\\"),N=S?"\\":"/",I=D=>S?D.toLocaleLowerCase():D,b=I(m.currentPath),C=[...m.browseRoots].sort((D,E)=>E.length-D.length).find(D=>{const E=I(D).replace(/[\\/]+$/u,"");return b===E||b.startsWith(`${E}${N}`)});if(C===void 0)return[{label:m.currentPath,path:m.currentPath}];const g=C.replace(/[\\/]+$/u,""),R=m.currentPath.slice(g.length).replace(/^[\\/]+/u,""),W=[{label:C,path:C}];let w=g;for(const D of R.split(/[\\/]/u).filter(Boolean))w=`${w}${N}${D}`,W.push({label:D,path:w});return W}return(m,S)=>{const N=St,I=cn,b=ln,C=sn,g=Vt,R=sa,W=Gl,w=Qg,D=Yg,E=ca,H=la,J=Zt,Y=Tt("tooltip");return f(),L(qe,null,[B(D,{"model-value":e.modelValue,class:"workspace-tools","onUpdate:modelValue":S[8]||(S[8]=q=>a("update:modelValue",q))},{default:Z(()=>[B(w,{name:"register",title:o(c)("generated.workspaceRegistrationPicker.registerANewWorkspace"),icon:o(Be)("chevron-right")},{default:Z(()=>[j("form",{class:"workspace-picker",onSubmit:S[7]||(S[7]=it(q=>a("register"),["prevent"]))},[Dt(m.$slots,"ownership",{},void 0,!0),e.directory!==void 0?(f(),L("div",B0,[Me((f(),ye(N,{"aria-label":o(c)("generated.workspaceRegistrationPicker.goToParentDirectory"),icon:o(Be)("chevron-left"),disabled:e.directory.parentPath===null||e.loadingDirectory,"native-type":"button",text:"",onClick:S[0]||(S[0]=q=>a("navigate",e.directory.parentPath??void 0))},{default:Z(()=>[we(M(o(c)("generated.workspaceRegistrationPicker.up")),1)]),_:1},8,["aria-label","icon","disabled"])),[[Y,o(c)("generated.workspaceRegistrationPicker.goToParentDirectory2")]]),e.directory.browseRoots.length>1?(f(),ye(C,{key:0,disabled:e.loadingDirectory,trigger:"click",onCommand:S[1]||(S[1]=q=>a("navigate",q))},{dropdown:Z(()=>[B(b,null,{default:Z(()=>[(f(!0),L(qe,null,Xe(e.directory.browseRoots,q=>(f(),ye(I,{key:q,command:q},{default:Z(()=>[we(M(q),1)]),_:2},1032,["command"]))),128))]),_:1})]),default:Z(()=>[B(N,{"native-type":"button",text:""},{default:Z(()=>[we(M(o(c)("generated.workspaceRegistrationPicker.roots")),1),B(De,{name:"chevron-down",class:"mar-icon--right"})]),_:1})]),_:1},8,["disabled"])):ue("",!0),j("nav",{class:"workspace-picker-breadcrumbs","aria-label":o(c)("generated.workspaceRegistrationPicker.currentDirectory")},[(f(!0),L(qe,null,Xe(u.value,(q,Q)=>(f(),L(qe,{key:q.path},[Q>0?(f(),L("span",z0,"/")):ue("",!0),Q<u.value.length-1?Me((f(),ye(N,{key:1,disabled:e.loadingDirectory,text:"",onClick:V=>a("navigate",q.path)},{default:Z(()=>[we(M(q.label),1)]),_:2},1032,["disabled","onClick"])),[[Y,q.path]]):Me((f(),L("strong",K0,[we(M(q.label),1)])),[[Y,q.path]])],64))),128))],8,G0),j("div",j0,[Me(B(N,{class:"utility-control","aria-label":o(c)("generated.workspaceRegistrationPicker.refreshDirectory"),icon:o(Be)("refresh"),disabled:e.loadingDirectory,"native-type":"button",text:"",onClick:S[2]||(S[2]=q=>a("navigate",e.directory.currentPath))},null,8,["aria-label","icon","disabled"]),[[Y,o(c)("generated.workspaceRegistrationPicker.refreshDirectory2")]]),B(N,{icon:o(Be)("folder-add"),disabled:!v.value||e.loadingDirectory,"native-type":"button",onClick:k},{default:Z(()=>[we(M(o(c)("generated.workspaceRegistrationPicker.newDirectory")),1)]),_:1},8,["icon","disabled"]),B(N,{class:je({selected:e.selectedPath===e.directory.currentPath}),disabled:e.loadingDirectory||!e.directory.selectable,icon:o(Be)("check"),"native-type":"button",onClick:S[3]||(S[3]=q=>a("select",e.directory.currentPath))},{default:Z(()=>[we(M(o(c)("generated.workspaceRegistrationPicker.selectCurrentDirectory")),1)]),_:1},8,["class","disabled","icon"])])])):ue("",!0),e.directory!==void 0?(f(),ye(g,{key:1,modelValue:i.value,"onUpdate:modelValue":S[4]||(S[4]=q=>i.value=q),class:"workspace-picker-filter","aria-label":o(c)("workspaceDisplayFilter.label"),clearable:"",placeholder:o(c)("workspaceDisplayFilter.placeholder"),size:"small","clear-icon":o(Be)("clear-input")},{prefix:Z(()=>[B(De,{name:"search"})]),_:1},8,["modelValue","aria-label","placeholder","clear-icon"])):ue("",!0),e.directory!==void 0?(f(),L("ul",_0,[e.pendingDirectoryName?(f(),L("li",Y0,[j("button",Q0,[B(hn,{name:e.pendingDirectoryName,kind:"DIRECTORY"},null,8,["name"]),j("span",null,M(e.pendingDirectoryName),1),B(R,{type:"warning"},{default:Z(()=>[we(M(o(c)("generated.workspaceRegistrationPicker.pending")),1)]),_:1})]),Me((f(),L("button",{"aria-label":o(c)("generated.workspaceRegistrationPicker.cancelNewDirectory"),type:"button",onClick:S[5]||(S[5]=q=>a("discard-pending"))},[B(De,{name:"close"})],8,J0)),[[Y,o(c)("generated.workspaceRegistrationPicker.cancelNewDirectory2")]])])):ue("",!0),(f(!0),L(qe,null,Xe(y.value,q=>(f(),L("li",{key:q.path},[j("button",{class:je({selected:e.selectedPath===q.path}),disabled:e.loadingDirectory||!q.selectable,type:"button",onClick:Q=>a("select",q.path),onDblclick:Q=>a("navigate",q.path)},[B(hn,{name:q.name,kind:"DIRECTORY"},null,8,["name"]),j("span",null,M(q.name),1),q.selectable?ue("",!0):(f(),L("small",Z0,M(o(c)("generated.workspaceRegistrationPicker.outsideAllowedRoots")),1))],42,X0),Me((f(),L("button",{"aria-label":o(c)("generated.workspaceRegistrationPicker.open",{value0:q.name}),disabled:e.loadingDirectory,type:"button",onClick:Q=>a("navigate",q.path)},[B(De,{name:"chevron-right"})],8,eS)),[[Y,o(c)("generated.workspaceRegistrationPicker.open2",{value0:q.name})]])]))),128)),i.value.trim().length>0&&y.value.length===0&&e.pendingDirectoryName.length===0?(f(),L("li",tS,M(o(c)("workspaceDisplayFilter.empty")),1)):ue("",!0)])):e.loadingDirectory?(f(),L("p",nS,M(o(c)("generated.workspaceRegistrationPicker.loadingAllowedRoots")),1)):(f(),L("p",aS,M(o(c)("generated.workspaceRegistrationPicker.expandAndSelectADirectoryToRegister")),1)),e.directory?.truncated?(f(),L("p",oS,M(o(c)("generated.workspaceRegistrationPicker.onlyTheFirst200ChildDirectoriesAre")),1)):ue("",!0),B(W,{"model-value":e.preserveGitConfig??!1,disabled:e.loading||!e.nodeReady,"onUpdate:modelValue":S[6]||(S[6]=q=>a("update:preserveGitConfig",q===!0))},{default:Z(()=>[we(M(o(c)("personalGit.preserve")),1)]),_:1},8,["model-value","disabled"]),j("div",rS,[e.selectedPath?Me((f(),L("code",iS,[we(M(o(c)("generated.workspaceRegistrationPicker.selected"))+" "+M(e.selectedPath),1)])),[[Y,e.selectedPath]]):(f(),L("span",sS)),B(N,{disabled:e.loading||e.loadingDirectory||!e.nodeReady||!e.selectedPathValid||e.registrationDisabled,loading:e.loading,"native-type":"submit",type:"primary","loading-icon":o(Be)("loading-action")},{default:Z(()=>[we(M(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(),ye(J,{key:0,onVnodeMounted:o(Jt),onVnodeBeforeUnmount:o(Qt),modelValue:s.value,"onUpdate:modelValue":S[11]||(S[11]=q=>s.value=q),title:o(c)("generated.workspaceRegistrationPicker.newDirectory2"),width:"min(460px, calc(100vw - 32px))","close-icon":o(Be)("close")},{footer:Z(()=>[B(N,{"native-type":"button",onClick:S[10]||(S[10]=q=>s.value=!1)},{default:Z(()=>[we(M(o(c)("generated.workspaceRegistrationPicker.cancel")),1)]),_:1}),B(N,{"native-type":"button",type:"primary",onClick:T},{default:Z(()=>[we(M(o(c)("generated.workspaceRegistrationPicker.confirm")),1)]),_:1})]),default:Z(()=>[B(H,{ref_key:"directoryForm",ref:r,model:l,rules:d.value,"label-position":"top"},{default:Z(()=>[B(E,{label:o(c)("generated.workspaceRegistrationPicker.directoryName"),prop:"name"},{default:Z(()=>[B(g,{modelValue:l.name,"onUpdate:modelValue":S[9]||(S[9]=q=>l.name=q),maxlength:"255",placeholder:o(c)("generated.workspaceRegistrationPicker.enterADirectoryName2"),onKeydown:ul(it(T,["prevent","stop"]),["enter"])},null,8,["modelValue","placeholder","onKeydown"])]),_:1},8,["label"])]),_:1},8,["model","rules"])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ue("",!0)],64)}}}),hc=ut(lS,[["__scopeId","data-v-800c8074"]]),cS=["aria-label","aria-expanded"],dS=["aria-label"],uS={key:2,class:"workspace-tabs-slot"},vS=["aria-label"],fS={key:0},pS={key:1},gS=ot({__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=Tt("tooltip");return!e.mobileViewport||e.view!=="nodes"?(f(),L("header",{key:0,class:je(["workbench-header",{"workspace-tabs-active":e.view==="nodes"}])},[e.mobileViewport?ue("",!0):(f(),L("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(),ye(De,{key:0,name:"menu"})):(f(),ye(De,{key:1,name:"menu"}))],8,cS)),e.view==="conversations"&&e.conversationTitle?(f(),L("div",{key:1,class:"breadcrumb","aria-label":a.$t("navigation.currentLocation")},[j("span",null,M(a.$t("navigation.conversations")),1),Me((f(),L("strong",null,[we(M(e.conversationTitle),1)])),[[s,e.conversationTitle]])],8,dS)):e.view==="nodes"?(f(),L("div",uS,[Dt(a.$slots,"workspace-tabs",{},void 0,!0)])):(f(),L("div",{key:3,class:"breadcrumb","aria-label":a.$t("navigation.currentLocation")},[j("span",null,M(e.view==="settings"?a.$t("navigation.settings"):e.view==="conversations"?a.$t("navigation.conversations"):a.$t("navigation.management")),1),e.view==="settings"?(f(),L("strong",fS,M(e.settingsItems.find(i=>i.id===e.settingsSection)?.label),1)):e.view==="management"?(f(),L("strong",pS,M(e.managementItems.find(i=>i.id===e.managementSection)?.label),1)):ue("",!0)],8,vS))],2)):ue("",!0)}}}),mS=ut(gS,[["__scopeId","data-v-b9909a6a"]]),hS=["aria-label"],yS={class:"admin-terminal-header"},wS=["aria-label"],kS=["aria-selected","onClick"],bS=["aria-label","disabled","onClick"],IS=["aria-label","disabled"],SS={key:1,class:"admin-terminal-actions"},CS={key:0,class:"terminal-profile"},TS={key:0,class:"admin-terminal-content"},ES={class:"terminal-context-cache"},RS=ot({__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=wr(()=>kr(()=>import("./TerminalTabView-DvEnQt4Q.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=$(),l=$();let d;const v=$(!1),u=$(),y=$(!1),k=$(!1),T=$(!1),p=$(!1);let m=0,S=0,N=!1,I=!1;const b=$([]),C=$(),g=new Map,R=Ja({csrfToken:()=>r.csrfToken,renewCsrfToken:r.renewCsrfToken}),W=_(()=>r.enabled&&r.nodeId!==void 0&&r.capability?.available===!0),w=_(()=>{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 z=Number(P);return Number.isSafeInteger(z)&&z>0?z:void 0}),D=_(()=>(r.capability?.profiles??[]).map(P=>{const z=P.label.replace(/\s*\(Tab completion supported\)$/u,""),ce={"User Shell":"nodeMessages.userShell","Windows Command Prompt":"nodeMessages.windowsCommandPrompt"}[z];return{...P,label:ce===void 0?z:c(ce)}})),E=_(()=>r.workspaceId===void 0?c("generated.terminalDock.nodeTerminal"):c("generated.terminalDock.workspaceTerminal")),H=_(()=>W.value?c("generated.terminalDock.newTerminal"):r.nodeId===void 0?c("generated.terminalDock.selectAnOnlineNodeFirst"):r.capability?.reasonCode??c("generated.terminalDock.theTargetNodeDoesNotProvideA"));function J(P){C.value!==P&&(C.value=P)}function Y(P){b.value=[...b.value.filter(z=>z.id!==P.id),P].filter(z=>z.state==="RUNNING")}function q(P){P&&!y.value&&(T.value=!1),y.value=P,P&&(k.value=!0)}function Q(){q(!y.value)}async function V(){I=!0,q(!0),await K(),await A()}async function U(){if(y.value){I=!1,q(!1);return}await V()}async function A(){if(await gt(),N||!I||!y.value||!r.active||!r.visible)return;const P=C.value,z=P===void 0?void 0:g.get(P);z!==void 0&&(z.focus(),I=!1)}async function h(){if(N||!r.active||r.nodeId===void 0||r.capability===void 0)return;const P=++m;if(!W.value){b.value=[],C.value=void 0,p.value=!1;return}p.value=!0;try{const z=await R.request(`/api/terminals?nodeId=${encodeURIComponent(r.nodeId)}`);if(P!==m)return;const ce=new Set(b.value.map(te=>te.id));b.value=z.terminals.filter(te=>ce.has(te.id)&&te.state==="RUNNING"&&te.workspaceId===(r.workspaceId??null)),b.value.some(te=>te.id===C.value)||(C.value=b.value[0]?.id)}catch(z){if(P!==m)return;s("notice",c("generated.terminalDock.unableToLoadTerminals",{value0:ge(z)}),"error",z)}finally{if(P!==m)return;p.value=!1,K()}}async function F(){if(N||!r.active||!W.value||r.nodeId===void 0||v.value)return;q(!0),T.value=!0;const P=r.nodeId,z=r.workspaceId,ce=S;v.value=!0;try{const te=await R.request("/api/terminals",{method:"POST",body:JSON.stringify({nodeId:P,...z===void 0?{}:{workspaceId:z},...i.value===void 0?{}:{profileId:i.value},rows:18,cols:100})});if(N||ce!==S){await le(P,[te.terminal]);return}m+=1,p.value=!1,Y(te.terminal),J(te.terminal.id)}catch(te){if(N||ce!==S||!r.active)return;s("notice",c("generated.terminalDock.unableToCreateATerminal",{value0:ge(te)}),"error",te)}finally{v.value=!1,K()}}async function K(){N||!r.active||!y.value||!r.visible||p.value||v.value||T.value||!W.value||r.workspaceId===void 0||b.value.length>0||await F()}function ve(){q(!1),s("collapse")}async function X(P){if(r.nodeId!==void 0){u.value=P;try{if(await R.request(`/api/terminals/${encodeURIComponent(P)}`,{method:"DELETE",body:JSON.stringify({nodeId:r.nodeId})}),b.value=b.value.filter(z=>z.id!==P),C.value===P){C.value=void 0;const z=b.value[0];z!==void 0&&J(z.id)}b.value.length===0&&ve()}catch(z){s("notice",c("generated.terminalDock.unableToCloseTheTerminal",{value0:ge(z)}),"error",z)}finally{u.value=void 0}}}function oe(P){const z=C.value===P;b.value=b.value.filter(ce=>ce.id!==P),z&&(C.value=b.value[0]?.id),b.value.length===0&&y.value&&ve()}function ge(P){return r.errorMessage(P)}Ge(()=>[r.nodeId,r.workspaceId],()=>{S+=1,T.value=!1},{flush:"sync"}),Ge(()=>r.capability?.profiles,P=>{i.value=P?.find(z=>z.isDefault)?.id??P?.[0]?.id},{immediate:!0}),Ge(()=>[r.nodeId,r.workspaceId,r.enabled,r.capability?.available,r.active,r.embedded?r.visible:!0],()=>{r.embedded&&!r.visible||h()},{immediate:!0}),Ge(()=>[r.mobileMode,r.embedded,r.visible],([P,z,ce])=>{(P||z)&&ce&&q(!0)},{immediate:!0}),Ge(()=>[y.value,r.visible,W.value,b.value.length,C.value,p.value,v.value],()=>{K(),A()},{immediate:!0});async function le(P,z){const te=(await Promise.allSettled(z.map(ee=>R.request(`/api/terminals/${encodeURIComponent(ee.id)}`,{method:"DELETE",body:JSON.stringify({nodeId:P})})))).filter(ee=>ee.status==="rejected"),x=te[0];x!==void 0&&s("notice",c("generated.terminalDock.unableToReleaseTerminals",{value0:te.length,value1:ge(x.reason)}),"error")}async function ae(){if(!N){N=!0,m+=1,y.value=!1,I=!1;try{await le(r.nodeId,b.value)}finally{b.value=[],C.value=void 0}}}return Ot(()=>{d=Ft.registerRegion({scope:"terminal",root:()=>l.value,blocksOtherScopes:!0})}),wt(()=>{d?.(),ae()}),t({release:ae,toggle:U}),(P,z)=>{const ce=Vn,te=yn,x=St,ee=Tt("tooltip");return f(),L("section",{ref_key:"terminalRoot",ref:l,class:je(["admin-terminal",{"is-embedded":e.embedded}]),"aria-label":o(c)("common.adminTerminal")},[j("header",yS,[j("h2",null,M(E.value),1),k.value?Me((f(),L("div",{key:0,class:"terminal-tabs",role:"tablist","aria-label":o(c)("generated.terminalDock.list",{value0:E.value})},[(f(!0),L(qe,null,Xe(b.value,(se,Se)=>(f(),L("div",{key:se.id,class:je(["terminal-tab",{active:se.id===C.value}])},[j("button",{class:"terminal-tab-select",type:"button",role:"tab","aria-selected":se.id===C.value,onClick:Fe=>J(se.id)},[j("span",null,"Terminal "+M(Se+1),1)],8,kS),j("button",{class:"terminal-tab-close icon-button utility-control",type:"button","aria-label":o(c)("generated.terminalDock.closeTerminal",{value0:Se+1}),disabled:u.value===se.id,onClick:Fe=>X(se.id)},[B(De,{name:"close"})],8,bS)],2))),128)),Me((f(),L("button",{class:"terminal-tab terminal-tab-add",type:"button","aria-label":o(c)("generated.terminalDock.newTerminal2"),disabled:!W.value||v.value,onClick:F},[B(De,{name:"plus"})],8,IS)),[[ee,H.value]])],8,wS)),[[At,y.value||b.value.length===0]]):ue("",!0),D.value.length>1||!e.mobileMode?(f(),L("div",SS,[D.value.length>1?(f(),L("label",CS,[we(M(o(c)("generated.terminalDock.terminalProfile"))+" ",1),B(te,{modelValue:i.value,"onUpdate:modelValue":z[0]||(z[0]=se=>i.value=se),"aria-label":o(c)("generated.terminalDock.terminalProfile2"),size:"small",disabled:!W.value||v.value,"clear-icon":o(Be)("clear-input"),"suffix-icon":o(Be)("chevron-down")},{default:Z(()=>[(f(!0),L(qe,null,Xe(D.value,se=>(f(),ye(ce,{key:se.id,value:se.id,label:se.label},null,8,["value","label"]))),128))]),_:1},8,["modelValue","aria-label","disabled","clear-icon","suffix-icon"])])):ue("",!0),!e.mobileMode&&!e.embedded?Me((f(),ye(x,{key:1,size:"small","aria-label":y.value?o(c)("generated.terminalDock.collapseTerminal"):o(c)("generated.terminalDock.expandTerminal"),onClick:Q},{default:Z(()=>[j("span",null,M(y.value?o(c)("generated.terminalDock.collapseTerminal3"):o(c)("generated.terminalDock.expandTerminal3")),1)]),_:1},8,["aria-label"])),[[ee,y.value?o(c)("generated.terminalDock.collapseTerminal2"):o(c)("generated.terminalDock.expandTerminal2")]]):ue("",!0)])):ue("",!0)]),k.value?Me((f(),L("div",TS,[j("div",ES,[(f(!0),L(qe,null,Xe(b.value,se=>(f(),ye(o(a),{key:se.id,ref_for:!0,ref:Se=>{Se===null?o(g).delete(se.id):(o(g).set(se.id,Se),A())},"terminal-id":se.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":w.value,active:se.id===C.value,"fill-available":e.embedded===!0,visible:e.active&&e.visible&&y.value,onExited:oe,onNotice:z[1]||(z[1]=(Se,Fe,We)=>s("notice",Se,Fe,We))},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,y.value]]):ue("",!0)],10,hS)}}}),AS=ut(RS,[["__scopeId","data-v-9799c5d0"]]);function NS(e){const t=Zs("","");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 d=Zs(i,s);r.directories.set(i,d),r=d}r.files.push(n)}return wc(t)}function DS(e,t){const n=[];return yc(e,0,t,n),n}function yc(e,t,n,a){for(const r of e)a.push({node:r,depth:t}),r.kind==="DIRECTORY"&&n(r.path)&&yc(r.children,t+1,n,a)}function Zs(e,t){return{name:e,path:t,directories:new Map,files:[]}}function wc(e){const t=[...e.directories.values()].sort((a,r)=>el(a.name,r.name)).map(a=>({kind:"DIRECTORY",name:a.name,path:a.path,children:wc(a)})),n=[...e.files].sort((a,r)=>el(a.relativePath,r.relativePath)).map(a=>({kind:"FILE",name:a.displayName,path:a.relativePath,file:a}));return[...t,...n]}function el(e,t){return e.localeCompare(t,"en-US")}function PS(e){const t=$(!1),n=$(!1),a=bt(),r=$(!1),s=$(),i=$(),l=$(),d=$(),v=$(),u=_(()=>{const I=i.value;return I===void 0?"unsupported":rr(I.path,I.encoding)}),y=e.triggerDownload??((I,b)=>{const C=document.createElement("a");C.href=I,C.download=b,C.click()});let k=0;async function T(I,b,C){const g=++k,R=kc(I),W=Va(R,I.mimeType);r.value=!1,s.value=I,t.value=!0,n.value=!0,a.value=void 0,i.value={path:R,size:I.size,encoding:W?"utf-8":"base64",content:"",truncated:!1},d.value=b,v.value=C,l.value=void 0;try{if(W){const w=await sr(async D=>{const E=await e.source.readFile(I.id,0,D),H=nr(OS(E.content),R,E.eof,I.mimeType);return{path:R,size:E.file.size,...H,truncated:H.encoding==="utf-8"&&!E.eof,nextOffset:H.encoding==="base64"?null:E.nextOffset,revision:String(E.file.updatedAt)}},()=>N(g,I));if(!N(g,I))return;i.value=w}else i.value={path:R,size:I.size,encoding:"base64",content:"",truncated:!1};i.value.encoding==="base64"&&rr(R,"base64")!=="unsupported"&&(l.value=e.source.contentUrl(I)),t.value=!0}catch(w){N(g,I)&&(a.value=w)}finally{N(g,I)&&(n.value=!1)}}async function p(){s.value!==void 0&&s.value.conversationId===e.source.selectedConversationId.value&&!n.value&&await T(s.value,d.value,v.value)}function m(){k+=1,t.value=!1,n.value=!1,a.value=void 0,r.value=!1,s.value=void 0,i.value=void 0,d.value=void 0,v.value=void 0,l.value=void 0}function S(){const I=s.value,b=e.source.selectedConversationId.value;I===void 0||b===void 0||I.conversationId!==b||r.value||y(e.source.contentUrl(I,!0),I.displayName)}function N(I,b){return I===k&&e.source.selectedConversationId.value===b.conversationId&&s.value?.id===b.id}return{visible:t,loading:n,error:a,downloading:r,file:s,content:i,contentUrl:l,targetLine:d,targetColumn:v,kind:u,openFile:T,retry:p,close:m,download:S,dispose:m}}function kc(e){return`${e.category==="OUTPUT"?"output":"inbox"}/${e.relativePath.replaceAll("\\","/")}`}function OS(e){return Uint8Array.from(atob(e),t=>t.charCodeAt(0))}const LS=ot({__name:"ToolChangeReviewWindow",props:{review:{},quoteTarget:{}},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 d=URL.createObjectURL(new Blob([l],{type:"text/plain;charset=utf-8"})),v=document.createElement("a");v.href=d,v.download=`${i.split("/").at(-1)??"changes"}.diff`,v.click(),URL.revokeObjectURL(d)}return(s,i)=>e.review.tabs.tabs.value.length?(f(),ye(Fl,{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:d,registerPageHandle:v,requestClose:u})=>[Me(B(pc,{"quote-target":n.quoteTarget,ref:v,tab:l,active:d,load:n.review.load,onClose:u,onEdit:y=>a("openSource",l.path),onLoadError:i[0]||(i[0]=y=>a("error",y)),onDownload:y=>r(y,l.path)},null,8,["quote-target","tab","active","load","onClose","onEdit","onDownload"]),[[At,d]])]),_:1},8,["tabs","active-tab-id","onActivate","onClose","onCloseAll","onMove"])):ue("",!0)}}),WS={key:0,class:"hosted-attachments"},MS=["src","alt"],xS={key:1,role:"status","aria-live":"polite"},$S={key:2,role:"status","aria-live":"polite"},FS={key:3,role:"status","aria-live":"polite"},US={key:4,class:"attachment-error",role:"alert"},VS=["disabled","aria-label","onClick"],qS=["aria-label","onClick"],HS=["disabled","aria-label"],BS=["disabled","aria-label","aria-description"],GS=["aria-label"],zS={key:2,class:"hosted-model-slot"},KS=["disabled","aria-label","aria-description"],jS={key:3,class:"hosted-model-unavailable","aria-live":"polite"},_S={key:4,class:"hosted-replace-hint",role:"status"},YS={key:5,class:"composer-submitting",role:"status"},QS=["disabled","aria-label"],JS=ot({__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:$(""),i=$([]),l=$(),d=a.draft&&a.entry?a.entry.attachments:$([]),v=$(!1),u=$(),y=$(!1),k=$([]);let T=!1;const p=$(!1),m=$(!1);let S;function N(ie){const O=Cf(ie);i.value=O.flatMap(G=>G.kind==="mar_references"?G.payload.references:[]),s.value=O.map(G=>G.kind==="mar_references"?"":G.kind==="text"?G.text:G.raw).join("").trim(),S=void 0,l.value?.focusAt(ie.length)}t({restoreMessage:N,quoteTarget:{capture(){const ie=a.workspace.selectedWatchId();if(!(a.draft||A.value||T||ie===void 0))return O=>{if(!(A.value||T||ie!==a.workspace.selectedWatchId()))try{i.value=El(i.value,O,s.value)}catch{tt(c("composer.quoteTooLarge"),"warning")}}}}});const b=_(()=>{if(!a.draft||!a.entry)return a.workspace.snapshot.value;const ie=a.entry.target.value;if(ie!==void 0)return a.workspace.selectedNodeId.value===ie.conversation.nodeId&&a.workspace.selectedConversationId.value===ie.conversation.id?a.workspace.snapshot.value??ie:ie}),C=_(()=>{const ie=b.value?.conversation;return ie===void 0?void 0:gr(ie.nodeId,ie.id)}),g=_(()=>a.draft===!0&&a.entry?.submitting.value===!0||a.workspace.messageSubmitting.value&&a.workspace.messageSubmissionContext.value===C.value),R=_(()=>{const ie=b.value?.run;return ie!=null&&["STARTING","RUNNING","CANCELLING"].includes(ie.status)?ie:void 0}),W=_(()=>{const ie=R.value,O=b.value?.conversation;if(!(ie===void 0||O===void 0))return{sessionId:O.sessionId,startedAt:ie.startedAt}}),w=_(()=>R.value!==void 0),{working:D,workingNow:E,workingStartedAt:H}=Il(_(()=>b.value?.conversation.sessionId),w,W),J=_(()=>d.value.some(ie=>ie.status==="UPLOADING")),Y=_(()=>a.draft===!0&&d.value.some(ie=>ie.status==="FAILED")),q=_(()=>d.value.flatMap(ie=>ie.status==="COMPLETED"&&ie.fileId!==void 0?[ie.fileId]:[])),Q=_(()=>s.value.trim().length>0||i.value.length>0||q.value.length>0||d.value.some(ie=>ie.status==="PENDING")),V=_(()=>R.value!==void 0&&R.value.status!=="CANCELLING"),U=_(()=>R.value!==void 0&&R.value.status!=="CANCELLING"&&!g.value),A=_(()=>a.readonly||a.workspace.templateChanging.value||!a.draft&&b.value!==void 0&&!a.workspace.watchReady.value||a.draft===!0&&a.entry?.writable.value===!1||g.value||R.value!==void 0&&!V.value),h=_(()=>!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&&!g.value&&(R.value===void 0||V.value)),F=D,K=_(()=>Cl(R.value,a.readonly?[]:a.workspace.turns.value)),ve=_(()=>a.readonly?"":Tl(H.value,E.value)),X=_(()=>b.value?.models??(a.draft?a.entry?.models.value??[]:[])),oe=_(()=>b.value?.conversation.modelId??(a.draft?a.entry?.selectedModelId.value??"":"")),ge=_(()=>(b.value!==void 0||a.draft===!0&&a.entry?.modelOptionsLoaded.value===!0)&&X.value.length===0),le=_(()=>a.readonly||a.draft===!0&&a.entry?.writable.value===!1||g.value||R.value!==void 0||y.value||a.workspace.templateChanging.value||ge.value||a.draft===!0&&b.value===void 0&&a.entry?.modelOptionsLoaded.value!==!0),ae=_(()=>X.value.find(ie=>ie.id===oe.value)?.name??(oe.value||c("hostedConversations.model"))),P=_(()=>b.value?.conversation.templateName??""),z=_(()=>a.entry?.templates.value??[]),ce=_(()=>a.entry?.selectedTemplateId.value??""),te=_(()=>z.value.find(ie=>ie.id===ce.value)?.name??c("hostedConversations.templatePlaceholder")),x=_(()=>a.draft?a.readonly||g.value:a.readonly||a.connected===!1||a.templateChangeBlocked===!0||!a.workspace.watchReady.value||b.value?.conversation.status!=="ACTIVE"||b.value.conversation.activity.status!=="IDLE"||R.value!==void 0||g.value||J.value||y.value||a.workspace.templateChanging.value),ee=_(()=>a.draft?z.value:k.value),se=_(()=>a.draft?ce.value:b.value?.conversation.templateId),Se=_(()=>a.draft?te.value:P.value),Fe=_(()=>P.value===""?"":c("hostedConversations.loadedTemplateNamed",{name:P.value})),We=Zl({canAcceptFiles:()=>!A.value,addFiles:Ue,confirmDrop:Ke,rejectDirectory:()=>tt(c("hostedConversations.folderAttachmentUnsupported"),"warning"),setDragging:ie=>v.value=ie});Ge(s,()=>{S=void 0});function be(){A.value||u.value?.click()}function he(ie){const O=ie.target;O.files!==null&&Ue(O.files),O.value=""}function Ue(ie){if(a.draft&&a.entry){a.entry.addFiles(ie);return}for(const O of ie){if(d.value.length>=32){tt(c("hostedConversations.attachmentLimit"),"warning");break}const G={id:crypto.randomUUID(),file:O,previewUrl:O.type.startsWith("image/")?URL.createObjectURL(O):null,name:O.name,clientRequestId:crypto.randomUUID(),controller:new AbortController,receivedBytes:0,status:a.draft&&b.value===void 0?"PENDING":"UPLOADING"};d.value=[...d.value,G],S=void 0,G.status==="UPLOADING"&&Qe(G)}}async function Qe(ie){try{if(Pl(ie.file)){const G=await Ol(ie.file);ie.controller.signal.throwIfAborted(),ie.file=G,ie.name=G.name}const O=await a.workspace.uploadFile(ie.file,ie.clientRequestId,G=>ne(ie.id,G),ie.controller.signal);me(ie.id,{receivedBytes:O.receivedBytes,status:"COMPLETED",name:O.name,...O.file===void 0?{}:{fileId:O.file.id}})}catch(O){me(ie.id,{status:"FAILED",error:_e(O)})}}function rt(ie){if(A.value)return;if(a.draft&&a.entry){a.entry.retryAttachment(ie).catch(pe=>tt(_e(pe),"error",pe));return}const O=d.value.find(pe=>pe.id===ie);if(O===void 0||O.status!=="FAILED")return;const G={id:O.id,file:O.file,previewUrl:O.previewUrl,name:O.name,clientRequestId:crypto.randomUUID(),controller:new AbortController,receivedBytes:0,status:"UPLOADING"};d.value=d.value.map(pe=>pe.id===ie?G:pe),S=void 0,Qe(G)}function ne(ie,O){me(ie,{receivedBytes:O.receivedBytes,status:O.status==="COMPLETED"?"COMPLETED":"UPLOADING",name:O.name,...O.file===void 0?{}:{fileId:O.file.id}})}function me(ie,O){d.value=d.value.map(G=>G.id===ie?{...G,...O}:G)}function Ne(ie){if(a.draft&&a.entry){a.entry.removeAttachment(ie);return}const O=d.value.find(G=>G.id===ie);O?.controller.abort(),O?.previewUrl!==null&&O?.previewUrl!==void 0&&URL.revokeObjectURL(O.previewUrl),d.value=d.value.filter(G=>G.id!==ie),S=void 0}function Ve(){return JSON.stringify({input:s.value,references:i.value,attachments:q.value,modelId:oe.value,templateId:b.value?.conversation.templateId??ce.value})}async function Je(ie){if(a.draft){a.entry?.selectTemplate(ie),S=void 0,a.reloadModels?.(!0);return}const O=b.value?.conversation,G=k.value.find(xe=>xe.id===ie);if(x.value||O===void 0||G===void 0||ie===O.templateId)return;const pe=a.workspace.selectedWatchId();try{await Nt.confirm(c("hostedConversations.templateSwitchConfirmation",{name:G.name}),c("hostedConversations.templateSwitchTitle"),{closeIcon:Be("close"),confirmButtonText:c("hostedConversations.switchTemplate"),cancelButtonText:c("common.cancel")})}catch{return}if(!(T||x.value||a.workspace.selectedWatchId()!==pe||b.value?.conversation.id!==O.id||b.value.conversation.nodeId!==O.nodeId||b.value.conversation.templateId!==O.templateId||b.value.conversation.activeVersionId!==O.activeVersionId))try{await a.workspace.switchTemplate(ie,O.templateId),S=void 0}catch(xe){tt(_e(xe),"error",xe)}}async function Ie(ie){if(!ie)return;if(a.draft){a.reloadTemplates?.(!0);return}const O=b.value?.conversation;if(!(O===void 0||p.value)){p.value=!0,m.value=!1;try{const G=await a.workspace.listTemplateOptions();b.value?.conversation.id===O.id&&b.value.conversation.nodeId===O.nodeId&&(k.value=G)}catch(G){m.value=!0,tt(_e(G),"error",G)}finally{p.value=!1}}}async function Ke(ie){try{return await Nt.confirm(c("hostedConversations.confirmDroppedAttachments",{count:ie.length}),c("hostedConversations.confirmDroppedAttachmentsTitle"),{closeIcon:Be("close"),icon:Be("warning"),type:"warning",confirmButtonText:c("hostedConversations.confirmUpload"),cancelButtonText:c("hostedConversations.cancel")}),!0}catch{return!1}}async function Ye(ie){if(A.value||J.value||Y.value||!Q.value)return;if(a.draft&&a.entry){try{await a.entry.submit()&&r("started")}catch(G){tt(_e(G),"error",G)}return}let O;try{if(b.value===void 0)return;const G=Ve(),pe=d.value,xe=JSON.stringify({deliveryIntent:ie,message:G});if(S?.fingerprint!==xe&&(S={fingerprint:xe,clientMessageId:crypto.randomUUID()}),O=S,await a.workspace.sendMessage({prompt:Np([],s.value,i.value),attachmentIds:q.value,clientMessageId:O.clientMessageId,modelId:oe.value,...ie===void 0?{}:{deliveryIntent:ie}}),S!==O||Ve()!==G||d.value!==pe)return;s.value="",i.value=[];for(const He of d.value)He.previewUrl!==null&&URL.revokeObjectURL(He.previewUrl);d.value=[],S=void 0}catch(G){S===O&&yt(G)!==void 0&&(S=void 0),tt(_e(G),"error",G)}}let at;Ot(()=>{at=Ep({owner:()=>l.value?.$el.querySelector("textarea")??void 0,canSend:()=>!a.mobileViewport,canReplace:()=>!A.value,canStop:()=>U.value,send:ie=>{Ye(ie?"REPLACE_CURRENT":void 0)},stop:()=>{Te()}})});async function Ze(ie){if(!(le.value||ie===oe.value)){if(a.draft===!0&&b.value===void 0){try{a.entry?.selectModel(ie),S=void 0}catch(O){tt(_e(O),"error",O)}return}y.value=!0;try{await a.workspace.updateConfiguration({modelId:ie}),S=void 0}catch(O){tt(_e(O),"error",O)}finally{y.value=!1}}}async function Te(){try{await a.workspace.interrupt()}catch(ie){tt(_e(ie),"error",ie)}}function Ee(ie){return a.draft&&ie.error!==void 0?_e(new Error(ie.error)):ie.error}function _e(ie){switch(yt(ie)){case"COMPOSER_IMAGE_CONVERSION_FAILED":case"COMPOSER_IMAGE_LIMIT_EXCEEDED":return lt(ie);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 ie instanceof Error?ie.message:c("hostedConversations.operationFailed")}}return wt(()=>{if(at?.(),T=!0,!(a.draft&&a.entry))for(const ie of d.value)ie.controller.abort(),ie.previewUrl!==null&&URL.revokeObjectURL(ie.previewUrl)}),(ie,O)=>{const G=cn,pe=ln,xe=sn,He=Tt("tooltip");return f(),ye(Dl,{ref_key:"composer",ref:l,class:je({"hosted-draft-composer":e.draft,"hosted-syncing":h.value}),input:o(s),"onUpdate:input":O[4]||(O[4]=fe=>Sf(s)?s.value=fe:null),placeholder:e.readonly?e.readonlyReason:o(c)("hostedConversations.messagePlaceholder"),working:o(F),"working-label":K.value,"working-busy":!e.readonly&&o(Sl)(R.value,e.workspace.turns.value),"elapsed-label":ve.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:A.value,"drop-target":v.value,"mobile-viewport":e.mobileViewport,"command-states":[],loading:g.value||y.value||e.workspace.templateChanging.value,"skill-tokens":[],"file-references":i.value,onRemoveFileReference:O[5]||(O[5]=fe=>i.value=i.value.filter(Ce=>o(Rp)(Ce)!==fe)),onSubmit:Ye,onPaste:o(We).onPaste,onDragenter:o(We).onDragEnter,onDragleave:o(We).onDragLeave,onDrop:o(We).onDrop},{attachments:Z(()=>[o(d).length?(f(),L("ul",WS,[(f(!0),L(qe,null,Xe(o(d),fe=>(f(),L("li",{key:fe.id},[fe.previewUrl?(f(),L("img",{key:0,src:fe.previewUrl,alt:fe.name},null,8,MS)):ue("",!0),Me((f(),L("span",null,[we(M(fe.name),1)])),[[He,fe.name]]),fe.status==="PENDING"?(f(),L("small",xS,M(o(c)("hostedConversations.uploadAfterCreate")),1)):fe.status==="UPLOADING"?(f(),L("small",$S,M(o(c)("hostedConversations.uploadProgress",{value:Math.round(fe.receivedBytes/Math.max(1,fe.file.size)*100)})),1)):fe.status==="COMPLETED"?(f(),L("small",FS,M(o(c)("hostedConversations.uploaded")),1)):(f(),L("small",US,M(Ee(fe)),1)),fe.status==="FAILED"?(f(),L("button",{key:5,class:"utility-control",type:"button",disabled:A.value,"aria-label":o(c)("hostedConversations.retryAttachmentNamed",{name:fe.name}),onClick:Ce=>rt(fe.id)},M(o(c)("hostedConversations.retryAttachment")),9,VS)):ue("",!0),j("button",{type:"button",class:"utility-control","aria-label":o(c)("hostedConversations.removeAttachment",{name:fe.name}),onClick:Ce=>Ne(fe.id)},[B(De,{name:"close"})],8,qS)]))),128))])):ue("",!0)]),toolbar:Z(()=>[j("div",{class:je(["hosted-composer-toolbar",{"has-mobile-send":e.mobileViewport&&V.value&&Q.value}])},[j("input",{ref_key:"fileInput",ref:u,class:"hosted-file-input",type:"file",multiple:"",onChange:he},null,544),Me((f(),L("button",{class:"hosted-icon-button utility-control",type:"button",disabled:A.value,"aria-label":o(c)("hostedConversations.addAttachment"),onClick:be},[B(De,{name:"attachment"})],8,HS)),[[He,o(c)("hostedConversations.addAttachment")]]),!e.draft||!b.value?(f(),ye(xe,{key:0,class:"hosted-template-menu hosted-model-menu",disabled:x.value,trigger:"click",onCommand:O[0]||(O[0]=fe=>Je(String(fe))),onVisibleChange:Ie},{dropdown:Z(()=>[B(pe,null,{default:Z(()=>[p.value?(f(),ye(G,{key:0,disabled:""},{default:Z(()=>[we(M(o(c)("common.loading")),1)]),_:1})):m.value?(f(),ye(G,{key:1,disabled:""},{default:Z(()=>[we(M(o(c)("hostedConversations.templateOptionsFailed")),1)]),_:1})):ue("",!0),(f(!0),L(qe,null,Xe(p.value||m.value?[]:ee.value,fe=>(f(),ye(G,{key:fe.id,command:fe.id,disabled:!fe.available||!e.draft&&fe.id===se.value,class:je({"is-selected":fe.id===se.value})},{default:Z(()=>[we(M(fe.name),1)]),_:2},1032,["command","disabled","class"]))),128)),!p.value&&!m.value&&ee.value.length===0?(f(),ye(G,{key:2,disabled:""},{default:Z(()=>[we(M(o(c)(e.draft?"hostedConversations.noTemplates":"hostedConversations.noSameNodeTemplates")),1)]),_:1})):ue("",!0)]),_:1})]),default:Z(()=>[Me((f(),L("button",{class:"hosted-template-trigger hosted-model-trigger",type:"button",disabled:x.value,"aria-label":o(c)("hostedConversations.chooseTemplate"),"aria-description":Se.value},[B(De,{name:"document","aria-hidden":"true"}),j("span",null,M(Se.value),1),B(De,{name:"chevron-down","aria-hidden":"true"})],8,BS)),[[He,Se.value]])]),_:1},8,["disabled"])):P.value?Me((f(),L("span",{key:1,class:"hosted-template-name","aria-label":Fe.value},[B(De,{name:"document","aria-hidden":"true"}),j("span",null,M(P.value),1)],8,GS)),[[He,Fe.value]]):ue("",!0),b.value||e.draft&&ce.value?(f(),L("div",zS,[B(xe,{class:"hosted-model-menu",disabled:le.value,trigger:"click",onCommand:O[1]||(O[1]=fe=>Ze(String(fe)))},{dropdown:Z(()=>[B(pe,null,{default:Z(()=>[(f(!0),L(qe,null,Xe(X.value,fe=>(f(),ye(G,{key:fe.id,command:fe.id,class:je({"is-selected":fe.id===oe.value})},{default:Z(()=>[we(M(fe.name),1)]),_:2},1032,["command","class"]))),128))]),_:1})]),default:Z(()=>[j("button",{class:"hosted-model-trigger",type:"button",disabled:le.value,"aria-label":o(c)("hostedConversations.model"),"aria-description":ae.value},[j("span",null,M(ae.value),1),B(De,{name:"chevron-down","aria-hidden":"true"})],8,KS)]),_:1},8,["disabled"])])):ue("",!0),ge.value?(f(),L("span",jS,M(o(c)("hostedConversations.modelUnavailable")),1)):ue("",!0),V.value||e.mobileViewport&&Q.value?(f(),L("span",_S,M(o(c)(e.mobileViewport?V.value?"composerSend.holdHint":"composerSend.holdSendHint":"hostedConversations.replaceCurrentHint")),1)):ue("",!0),g.value?(f(),L("span",YS,M(o(c)("workbench.sending")),1)):ue("",!0),R.value?Me((f(),L("button",{key:6,class:"hosted-stop-button",type:"button",disabled:!U.value,"aria-label":o(c)("hostedConversations.stopWithEsc"),onClick:Te},[...O[6]||(O[6]=[j("i",{"aria-hidden":"true"},null,-1)])],8,QS)),[[He,o(c)("hostedConversations.stopWithEsc")]]):ue("",!0),!R.value||e.mobileViewport&&V.value&&Q.value?(f(),ye(Ap,{key:7,class:"hosted-send-button",disabled:A.value||J.value||Y.value||!Q.value||y.value||ge.value,"mobile-viewport":e.mobileViewport,"can-steer":V.value,"context-key":`${C.value??ce.value}:${R.value?.id??""}`,submitting:g.value,label:o(c)(e.mobileViewport&&V.value?"composerSend.steer":"hostedConversations.send"),onSend:O[2]||(O[2]=fe=>Ye(e.mobileViewport&&V.value?"REPLACE_CURRENT":void 0)),onSteer:O[3]||(O[3]=fe=>Ye("REPLACE_CURRENT"))},null,8,["disabled","mobile-viewport","can-steer","context-key","submitting","label"])):ue("",!0)],2)]),_:1},8,["class","input","placeholder","working","working-label","working-busy","elapsed-label","connection-busy","connection-label","readonly","drop-target","mobile-viewport","loading","file-references","onPaste","onDragenter","onDragleave","onDrop"])}}}),bc=ut(JS,[["__scopeId","data-v-3c3287dc"]]),XS=["aria-busy"],ZS={class:"conversation-create-panel"},eC={class:"conversation-create-heading"},tC=ot({__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=$(!1),i=$(!1);let l=0,d=0;async function v(){const T=++l;s.value=!0;try{if(await r.loadTemplates(),T!==l)return;i.value=!0,await u()}catch(p){if(T!==l)return;tt(p instanceof Error?lt(p):c("hostedConversations.loadFailed"),"error",p)}finally{T===l&&(s.value=!1)}}async function u(){const T=++d;try{await r.loadModelOptions()}catch(p){if(T!==d)return;tt(p instanceof Error?lt(p):c("hostedConversations.loadFailed"),"error",p)}}function y(T){T&&!s.value&&v()}function k(T){T&&u()}return Ot(()=>{r.templates.value.length===0?v():r.modelOptionsLoaded.value||u()}),(T,p)=>{const m=ia;return Me((f(),L("section",{"element-loading-custom-class":"mar-page-loading",class:"hosted-entry-page","aria-busy":s.value},[j("div",ZS,[j("div",eC,[j("h2",null,M(o(c)("conversationEmpty.hosted.title")),1),j("p",null,M(o(c)("hostedConversations.chooseTemplateHint")),1)]),B(bc,{connected:e.connected,workspace:e.workspace,"mobile-viewport":e.mobileViewport,readonly:!1,"readonly-reason":"",draft:"",entry:o(r),"reload-templates":y,"reload-models":k,onStarted:p[0]||(p[0]=S=>a("started"))},null,8,["connected","workspace","mobile-viewport","entry"])])],8,XS)),[[m,s.value&&!i.value]])}}}),nC=ut(tC,[["__scopeId","data-v-9d98b669"]]),Ic="mar.hosted-conversations.last-template-id.v1";function aC(e,t={}){const n=$([]),a=$(),r=t.storage??(typeof localStorage>"u"?void 0:localStorage);let s=oC(r),i,l,d=0,v=0,u=0;const y=bt([]),k=$(!1),T=$();function p(){u+=1,y.value=[],k.value=!1,T.value=void 0}const m=$(""),S=$([]),N=$(!1),I=$();let b=!0,C=0,g=!1,R;const W=_(()=>{const P=t.submission?.workspace;return I.value===void 0||!w()||P?.watchReady.value===!0});function w(){const P=t.submission?.workspace;return I.value!==void 0&&P?.selectedNodeId.value===I.value.conversation.nodeId&&P.selectedConversationId.value===I.value.conversation.id}function D(P){if(g)throw new Error("HOSTED_CONVERSATION_DRAFT_DISPOSED");if(!b||C!==P)throw new Error("HOSTED_CONVERSATION_DRAFT_PAUSED")}function E(){if(!w()||t.submission?.workspace.watchReady.value!==!0)throw new Error("HOSTED_CONVERSATION_WATCH_NOT_READY")}function H(P){if(!(N.value||g))for(const z of P){if(S.value.length>=32)break;S.value.push({id:crypto.randomUUID(),file:z,name:z.name,previewUrl:z.type.startsWith("image/")?URL.createObjectURL(z):null,clientRequestId:crypto.randomUUID(),controller:new AbortController,receivedBytes:0,status:"PENDING"})}}function J(){for(const P of S.value)P.previewUrl!==null&&URL.revokeObjectURL(P.previewUrl);S.value=[]}function Y(P){if(N.value)return;const z=S.value.find(ce=>ce.id===P);z?.controller.abort(),z?.previewUrl!=null&&URL.revokeObjectURL(z.previewUrl),S.value=S.value.filter(ce=>ce.id!==P)}async function q(P){const z=t.submission.workspace,ce=C;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 te=x=>{P.receivedBytes=x.receivedBytes,P.name=x.name,x.file!==void 0&&(P.fileId=x.file.id)};try{if(Pl(P.file)){const ee=await Ol(P.file);P.controller.signal.throwIfAborted(),D(ce),E(),P.file=ee,P.name=ee.name}const x=await z.uploadFile(P.file,P.clientRequestId,te,P.controller.signal);te(x),P.status="COMPLETED",delete P.error}catch(x){throw P.status="FAILED",P.error=yt(x)??(x instanceof Error?x.message:"HOSTED_CONVERSATION_UPLOAD_FAILED"),x}}async function Q(P){if(N.value||g)return;const z=S.value.find(x=>x.id===P);if(z?.status!=="FAILED")return;const ce=t.submission;if(I.value===void 0||ce===void 0)return;const te=C;N.value=!0;try{D(te),w()||await ce.select(I.value),D(te),await q(z)}finally{N.value=!1,g&&J()}}async function V(){if(N.value||g||m.value.trim()===""&&S.value.length===0)return!1;const P=t.submission;if(P===void 0)throw new Error("HOSTED_CONVERSATION_REQUIRED");const z=C;D(z),N.value=!0;let ce;try{I.value===void 0&&(I.value=await ae(),P.workspace.rememberConversation(I.value.conversation)),D(z),w()||await P.select(I.value),D(z),E();for(const se of S.value)se.status!=="COMPLETED"&&(D(z),await q(se));D(z),E();const te=P.workspace.snapshot.value;if(te.models.length===0)throw new Error("HOSTED_CONVERSATION_MODEL_REQUIRED");const x={prompt:m.value,attachmentIds:S.value.flatMap(se=>se.fileId===void 0?[]:[se.fileId]),modelId:te.conversation.modelId},ee=JSON.stringify(x);return R?.fingerprint!==ee&&(R={fingerprint:ee,clientMessageId:crypto.randomUUID()}),ce=R,await P.workspace.sendMessage({...x,clientMessageId:ce.clientMessageId}),m.value="",J(),R=void 0,I.value=void 0,b&&z===C}catch(te){throw ce!==void 0&&R===ce&&yt(te)!==void 0&&(R=void 0),te}finally{N.value=!1,g&&J()}}function U(){b=!1,C+=1}function A(){g||(b=!0)}function h(){U(),g=!0,N.value||J()}function F(){i=void 0,l=void 0,d+=1}async function K(){const P=++v,z=d;try{const ce=await Bl(e);if(P!==v)return;X(ce,z)}catch(ce){if(P===v)throw ce}}function ve(P){X(P,d)}function X(P,z){n.value=[...P];const ce=a.value;a.value=tl(P,ce)??tl(P,s)??(P.length===1?P[0]?.id:void 0),a.value!==ce&&p(),(a.value!==ce||d===z)&&F()}async function oe(){const P=a.value,z=n.value.find(te=>te.id===P);if(P===void 0||z===void 0){p();return}const ce=++u;k.value=!1;try{const te=Tf.safeParse(await e(`/api/nodes/${encodeURIComponent(z.nodeId)}/conversation-templates/${encodeURIComponent(P)}/model-options`));if(!te.success)throw new Error("HOSTED_CONVERSATION_RESPONSE_INVALID");const x=te.data;if(ce!==u||a.value!==P)return;const ee=T.value,se=x.models.some(Se=>Se.id===ee)?ee:x.defaultModelId??void 0;ee!==void 0&&se!==ee&&F(),y.value=x.models,T.value=se,k.value=!0}catch(te){if(ce===u&&a.value===P)throw te}}function ge(P){if(!n.value.some(z=>z.id===P))throw new Error("HOSTED_CONVERSATION_TEMPLATE_NOT_AVAILABLE");a.value!==P&&(F(),p()),a.value=P,s=P,rC(r,P)}function le(P){if(!y.value.some(z=>z.id===P))throw new Error("HOSTED_CONVERSATION_MODEL_NOT_AVAILABLE");T.value!==P&&F(),T.value=P}async function ae(P){const z=a.value;if(z===void 0)throw new Error("HOSTED_CONVERSATION_TEMPLATE_REQUIRED");const ce=n.value.find(ee=>ee.id===z);if(ce===void 0||!ce.available)throw new Error("HOSTED_CONVERSATION_TEMPLATE_NOT_AVAILABLE");i===void 0&&(i=P??crypto.randomUUID(),l=T.value);const te=++d,x=await e(`/api/nodes/${encodeURIComponent(ce.nodeId)}/hosted-conversations`,{method:"POST",body:JSON.stringify({templateId:z,clientRequestId:i,modelId:l})});try{const ee=ea.parse(x);return d===te&&F(),ee}catch{throw new Error("HOSTED_CONVERSATION_RESPONSE_INVALID")}}return{templates:n,selectedTemplateId:a,models:y,modelOptionsLoaded:k,selectedModelId:T,prompt:m,attachments:S,submitting:N,target:I,writable:W,loadTemplates:K,loadModelOptions:oe,setTemplates:ve,selectTemplate:ge,selectModel:le,create:ae,addFiles:H,removeAttachment:Y,retryAttachment:Q,submit:V,suspend:U,resume:A,dispose:h}}function tl(e,t){return t!==void 0&&e.some(n=>n.id===t)?t:void 0}function oC(e){try{const t=e?.getItem(Ic)?.trim();return t===void 0||t.length===0?void 0:t}catch{return}}function rC(e,t){try{e?.setItem(Ic,t)}catch{}}const iC=["aria-label"],sC=["inert","aria-label"],lC={class:"sidebar-heading session-heading history-header"},cC={class:"session-heading-meta"},dC={class:"history-controls"},uC={class:"history-search-row"},vC={key:0,class:"history-empty-text"},fC=["onMouseenter","onFocusin","onContextmenu"],pC=["aria-current","onClick"],gC={class:"history-title-row"},mC={key:1,class:"history-run-indicator","aria-hidden":"true"},hC={key:2,class:"history-unread-label mar-unread-label"},yC=["datetime"],wC=["disabled","aria-label"],kC={key:1,class:"history-filter-note"},bC=["aria-busy"],IC=["aria-label"],SC=["inert"],CC=["aria-label"],TC={key:3,class:"conversation-draft"},EC=["inert","aria-label"],RC={class:"pane-header files-header"},AC=["disabled"],NC=["aria-disabled","disabled"],DC={class:"files-list"},PC={key:0},OC={key:0,class:"mar-tooltip-control"},LC=["aria-expanded","aria-label","onClick"],WC=["aria-label","onClick"],MC=["disabled","aria-label","onClick"],xC={key:1,class:"files-draft-empty"},$C=ot({__name:"HostedConversationWorkspacePage",props:Ui({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:Ui(["closeMobileHistory"],["update:mobileFilesOpen"]),setup(e,{emit:t}){const n=e,a=ar(),r=th(n.request),s=_(()=>z.value);function i(Ae){const ze=n.workspace.selectedNodeId.value,nt=n.workspace.selectedConversationId.value;!ze||!nt||!s.value||r.open(Ae,{nodeId:ze,sessionId:nt,workspaceId:"",scope:"HOSTED"})}async function l(Ae){const ze=Ko(n.workspace.snapshot.value?.files??[],Ae);if(!ze){tt(c("presentation.currentFileUnavailable"),"error");return}await Ue.openFile(ze),Ue.visible.value&&r.clear()}const d=t,v=$(""),u=$(!1),y=$(),k=$(),T=$(!1);let p;function m(){return!n.workspace.loadingConversations.value&&!n.workspace.loadingMoreConversations.value&&n.workspace.loadMoreConversationsError.value===void 0&&n.workspace.hasMoreConversations.value&&n.connected!==!1&&v.value.trim()===""&&(n.mobileViewport?n.mobileHistoryOpen:!n.sidebarCollapsed)}Ge(()=>[y.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,v.value],()=>{p?.disconnect(),n.workspace.loadingMoreConversations.value||(T.value=!1),!(!y.value||!k.value||!m()||typeof IntersectionObserver>"u")&&(p=new IntersectionObserver(Ae=>{Ae.some(ze=>ze.isIntersecting)&&m()&&(y.value?.getClientRects().length??0)>0&&(p?.disconnect(),n.workspace.loadMoreConversations())},{root:y.value,rootMargin:"0px 0px 120px 0px"}),p.observe(k.value))},{flush:"post"});function S(){n.workspace.loadingMoreConversations.value||(T.value=!0,n.workspace.loadMoreConversations())}const N=$(),I=bt();let b=0;const C=_(()=>n.connected!==!1&&(n.workspace.watchLoading.value||n.workspace.watchFailureCode.value===void 0&&(N.value!==void 0||n.restoringRoute))),g=_(()=>n.workspace.watchFailureCode.value!==void 0||!n.workspace.watchReady.value&&I.value?.key===Fe.value),R=_(()=>{const Ae=n.workspace.watchFailure.value??(I.value?.key===Fe.value?I.value.error:void 0);if(Ae!==void 0)return xt(Ae);const ze=n.workspace.watchFailureCode.value;return ze===void 0?void 0:xt(new Error(ze))}),W=$(),w=$(),D=$(!1),E=$(),H=$(),J=$(!1),Y=aC(n.request,{submission:{workspace:n.workspace,select:Ae=>n.selectConversation(Ae.conversation,Ae)}}),q=Ef(e,"mobileFilesOpen"),Q=$(!1),V=$(!1),U=$(),A=$(),h=$(!1),F=$(),K=$(),ve=$(new Set);let X=0,oe=0,ge;const le=_(()=>{const Ae=v.value.trim().toLocaleLowerCase();return Ae===""?n.workspace.conversations.value:n.workspace.conversations.value.filter(ze=>Tn(ze).toLocaleLowerCase().includes(Ae))}),ae=_(()=>({context:v.value.trim().toLocaleLowerCase(),ready:n.connected!==!1&&!u.value&&!n.workspace.loadingMoreConversations.value,items:le.value.map(Ae=>({key:fe(Ae),lastActivityAt:Ae.lastActivityAt,pin:Ae.pinnedAt}))})),P=_(()=>n.workspace.snapshot.value?.conversation??n.workspace.conversations.value.find(Ae=>Ae.nodeId===n.workspace.selectedNodeId.value&&Ae.id===n.workspace.selectedConversationId.value)),z=_(()=>{const Ae=n.workspace.snapshot.value?.conversation;return n.workspace.watchFailureCode.value===void 0&&Ae!==void 0&&Ae.status==="ACTIVE"}),ce=_(()=>z.value&&n.workspace.snapshot.value?.conversation.activity.status==="IDLE"&&n.workspace.snapshot.value!==void 0),te=_(()=>z.value&&!n.workspace.templateChanging.value),x=_(()=>P.value===void 0?!1:n.workspace.watchFailureCode.value!==void 0?!0:n.workspace.snapshot.value!==void 0&&!z.value),ee=_(()=>n.workspace.watchFailureCode.value!==void 0?c("hostedConversations.watchUnavailableReadonly"):c("hostedConversations.readonly")),se=_(()=>{const Ae=new Map([["UPLOAD",[]],["OUTPUT",[]]]);for(const ze of n.workspace.snapshot.value?.files??[])Ae.get(ze.category).push(ze);return[...Ae.entries()].map(([ze,nt])=>{const st=NS(nt);return{category:ze,files:nt,rows:DS(st,kt=>ve.value.has(Ne(ze,kt)))}})}),Se=_(()=>n.workspace.turns.value),Fe=_(()=>`${n.workspace.selectedNodeId.value??""}:${n.workspace.selectedConversationId.value??""}`),We=Rl(),be=Al(n.workspace.selectedNodeId,{sourceUrl:({nodeId:Ae,runId:ze,imageSelector:nt})=>{const st=n.workspace.selectedConversationId.value;if(st!==void 0)return`/api/nodes/${encodeURIComponent(Ae)}/hosted-conversations/${encodeURIComponent(st)}/runs/${encodeURIComponent(ze)}/images/${encodeURIComponent(nt)}`}}),he=$(),Ue=PS({source:n.workspace}),Qe=_(()=>Ue.error.value===void 0?void 0:Tr(Ue.error.value,Ue.file.value?.relativePath??""));function rt(){d("closeMobileHistory")}function ne(){q.value=!1,rt()}function me(){rt(),q.value=!0}function Ne(Ae,ze){return`${Ae}:${ze}`}function Ve(Ae,ze){return ve.value.has(Ne(Ae,ze))}function Je(Ae,ze){const nt=Ne(Ae,ze),st=new Set(ve.value);st.has(nt)?st.delete(nt):st.add(nt),ve.value=st}function Ie(Ae,ze){return c(Ve(Ae,ze)?"hostedConversations.collapseFileDirectory":"hostedConversations.expandFileDirectory",{category:Le(Ae),path:ze})}function Ke(){We.handleScroll(()=>{n.workspace.olderHistoryError.value===void 0&&at()})}function Ye(Ae){ge?.disconnect(),K.value=Ae,We.setElement(Ae),Ae!==void 0&&(ge=new ResizeObserver(()=>We.handleResize()),ge.observe(Ae),We.following.value&&We.scrollToLatestAfterLayout())}async function at(){const Ae=K.value,ze=Ae?.scrollHeight??0,nt=Fe.value;await n.workspace.loadOlderHistory(),await gt(),nt===Fe.value&&Ae===K.value&&Ae!==void 0&&n.workspace.olderHistoryError.value===void 0&&(Ae.scrollTop+=Ae.scrollHeight-ze)}async function Ze(){await Te()}async function Te(){const Ae=++X;u.value=!0;try{if(await n.workspace.loadConversations(),Ae!==X||J.value)return;const ze=n.workspace.selectedConversationId.value,nt=n.routeTarget!==void 0&&n.workspace.selectedNodeId.value===n.routeTarget.nodeId&&ze===n.routeTarget.conversationId,st=n.restoringRoute||nt&&n.workspace.snapshot.value===void 0&&n.workspace.watchFailureCode.value===void 0,kt=n.workspace.selectedNodeId.value!==void 0&&n.workspace.conversations.value.some($t=>$t.nodeId===n.workspace.selectedNodeId.value&&$t.id===ze);if(st||kt)return;n.clearConversation();const qt=n.workspace.conversations.value[0];qt!==void 0?await _e(qt,!1):(Y.resume(),J.value=!0)}catch(ze){Ae===X&&tt(xt(ze),"error",ze)}finally{Ae===X&&(u.value=!1)}}async function Ee(){await Te()}async function _e(Ae,ze=!0){const nt=fe(Ae);if(N.value===nt)return;const st=++b;N.value=nt,I.value=void 0,Y.suspend(),J.value=!1,ze&&ne();try{await n.selectConversation(Ae)}catch(kt){st===b&&(I.value={key:`${Ae.nodeId}:${Ae.id}`,error:kt})}finally{st===b&&(N.value=void 0)}}function ie(){const Ae=P.value;Ae===void 0||C.value||n.connected===!1||_e(Ae,!1)}function O(){Y.resume(),J.value=!0,n.clearConversation(),ne()}function G(){J.value=!1,ne()}async function pe(Ae){if(W.value!==void 0)return;let ze;try{ze=(await Nt.prompt(c("hostedConversations.titlePrompt"),c("hostedConversations.editTitle"),{closeIcon:Be("close"),inputValue:Tn(Ae),inputPlaceholder:c("hostedConversations.titlePlaceholder"),inputValidator:st=>{const kt=st.trim().length;return kt===0?c("hostedConversations.titleRequired"):kt<=160||c("hostedConversations.titleTooLong")},confirmButtonText:c("common.save"),cancelButtonText:c("common.cancel")})).value}catch{return}const nt=fe(Ae);W.value=nt;try{await n.workspace.updateMetadata({title:ze.trim()},Ae.nodeId,Ae.id)}catch(st){tt(xt(st),"error",st)}finally{W.value===nt&&(W.value=void 0)}}async function xe(Ae,ze){if(W.value!==void 0)return;const nt=fe(Ae);W.value=nt;try{await n.workspace.updateMetadata({pinned:ze},Ae.nodeId,Ae.id)}catch(st){tt(xt(st),"error",st)}finally{W.value===nt&&(W.value=void 0)}}async function He(Ae){if(W.value!==void 0)return;try{await Nt.confirm(c("hostedConversations.deleteConfirmation",{title:Tn(Ae)}),c("hostedConversations.deleteTitle"),{closeIcon:Be("close"),icon:Be("warning"),type:"warning",confirmButtonText:c("hostedConversations.delete"),cancelButtonText:c("hostedConversations.cancel")})}catch{return}const ze=fe(Ae),nt=Ae.nodeId===n.workspace.selectedNodeId.value&&Ae.id===n.workspace.selectedConversationId.value;W.value=ze;try{await n.workspace.deleteConversation(Ae.nodeId,Ae.id),nt&&n.workspace.selectedConversationId.value===void 0&&(n.clearConversation(),Y.resume(),J.value=!0,ne()),await Ee(),tt(c("hostedConversations.deleted"),"success")}catch(st){tt(xt(st),"error",st)}finally{W.value===ze&&(W.value=void 0)}}function fe(Ae){return`${Ae.nodeId}\0${Ae.id}`}function Ce(Ae){return E.value===Ae||H.value===Ae||D.value&&w.value===Ae}function ke(Ae){const ze=Ae.currentTarget;ze instanceof HTMLElement&&Ae.relatedTarget instanceof Node&&ze.contains(Ae.relatedTarget)||(H.value=void 0)}function Oe(Ae,ze){E.value=Ae,w.value=Ae,gt(()=>ze.querySelector(".history-more-button")?.click())}function Pe(Ae,ze){ze.preventDefault();const nt=ze.currentTarget;nt instanceof HTMLElement&&Oe(fe(Ae),nt)}function de(Ae){_e(Ae)}function Re(Ae,ze){Ae?(w.value=ze,D.value=!0):w.value===ze&&(D.value=!1,w.value=void 0)}function Le(Ae){switch(Ae){case"UPLOAD":return c("hostedConversations.fileCategoryUPLOAD");case"OUTPUT":return c("hostedConversations.fileCategoryOUTPUT")}}async function et(Ae,ze){try{if(navigator.clipboard?.writeText===void 0)throw new Error("CLIPBOARD_UNAVAILABLE");await navigator.clipboard.writeText(Ae),ze()}catch{tt(c("hostedConversations.copyFailed"),"error")}}async function mt(Ae,ze){if(h.value||!ce.value||ze.kind!=="user_message"||ze.status!=="COMPLETED"||!["SUCCEEDED","FAILED","CANCELLED","INTERRUPTED","LOST"].includes(Ae.status)||Ae.rewind===void 0)return;const nt=Fa(ze.kind,ze.payload),st=Ae.rewind.before,kt=Fe.value;try{await Nt.confirm(c("hostedConversations.rollbackConfirmation"),c("hostedConversations.rollbackTitle"),{closeIcon:Be("close"),icon:Be("warning"),type:"warning",confirmButtonText:c("hostedConversations.rollback"),cancelButtonText:c("common.cancel")})}catch{return}const qt=Se.value.find(Wt=>Wt.id===Ae.id),$t=qt?.items.find(Wt=>Wt.id===ze.id);if(!(h.value||!ce.value||Fe.value!==kt||qt?.rewind?.before!==st||$t?.kind!=="user_message"||$t.status!=="COMPLETED")){h.value=!0;try{await n.workspace.rollback(Ae.id,st,ze.id),Fe.value===kt&&F.value?.restoreMessage(nt)}catch(Wt){tt(xt(Wt),"error",Wt)}finally{h.value=!1}}}function vt(Ae){!te.value||!ua(Ae)||(oe+=1,Q.value=!0)}function pt(Ae){Ae.dataTransfer!==null&&(Ae.dataTransfer.dropEffect=te.value&&ua(Ae)?"copy":"none")}function Lt(){oe=Math.max(0,oe-1),oe===0&&(Q.value=!1)}async function wn(Ae){oe=0,Q.value=!1,!(!te.value||V.value)&&await da(Ae.dataTransfer?.files??[])}function qn(){!te.value||V.value||U.value?.click()}function Mt(Ae){const ze=Ae.target,nt=Array.from(ze.files??[]);ze.value="",da(nt)}async function da(Ae){if(!te.value||V.value)return;const ze=Array.from(Ae);if(ze.length===0)return;V.value=!0;let nt=0;try{for(const st of ze)try{await n.workspace.uploadFile(st,crypto.randomUUID()),nt+=1}catch(kt){tt(c("hostedConversations.fileUploadFailed",{name:st.name,message:xt(kt)}),"error",kt)}}finally{V.value=!1}nt>0&&tt(c("hostedConversations.filesUploaded",{count:nt}),"success")}function ua(Ae){return Array.from(Ae.dataTransfer?.types??[]).includes("Files")}async function va(Ae){if(!(!te.value||A.value!==void 0)){try{await Nt.confirm(c("hostedConversations.fileDeleteConfirmation",{name:Ae.displayName}),c("hostedConversations.fileDeleteTitle"),{closeIcon:Be("close"),icon:Be("warning"),type:"warning",confirmButtonText:c("hostedConversations.fileDelete"),cancelButtonText:c("common.cancel")})}catch{return}A.value=Ae.id;try{await n.workspace.deleteFile(Ae.id),Ue.file.value?.id===Ae.id&&Ue.close(),tt(c("hostedConversations.fileDeleted",{name:Ae.displayName}),"success")}catch(ze){tt(xt(ze),"error",ze)}finally{A.value===Ae.id&&(A.value=void 0)}}}function fa(Ae,ze,nt,st){const kt=Ko(n.workspace.snapshot.value?.files??[],Ae);if(kt!==void 0){if(st){const qt=n.workspace.selectedNodeId.value,$t=n.workspace.selectedConversationId.value;if(qt===void 0||$t===void 0)return;const Wt=new URLSearchParams({standaloneFile:"1",source:"hosted",nodeId:qt,workspaceId:$t,conversationId:$t,fileId:kt.id,path:kc(kt),mimeType:kt.mimeType,size:String(kt.size)});ze!==void 0&&Wt.set("line",String(ze)),nt!==void 0&&Wt.set("column",String(nt)),a.open(`/console?${Wt.toString()}`);return}Ue.openFile(kt,ze,nt)}}function Xa(Ae){const ze=Ko(n.workspace.snapshot.value?.files??[],Ae);return ze===void 0?"":n.workspace.contentUrl(ze)}function Za(){Ue.close(),be.previewOpen.value=!1,be.preview.value=void 0}function xt(Ae){const ze=typeof Ae=="object"&&Ae!==null&&!Array.isArray(Ae)?Ae:void 0,nt=yt(Ae)??(typeof ze?.code=="string"?ze.code:void 0);let st;switch(nt){case"CONVERSATION_HOSTING_STORAGE_FULL":st=c("hostedConversations.storageFull");break;case"HOSTED_CONVERSATION_FILE_RECONCILE_FAILED":st=c("hostedConversations.fileProjectionFailed");break;case"HOSTED_CONVERSATION_FILE_NOT_FOUND":st=c("hostedConversations.fileNotFound");break;case"HOSTED_CONVERSATION_FILE_CONFLICT":case"HOSTED_CONVERSATION_FILE_INVALID":st=c("hostedConversations.fileConflict");break;case"HOSTED_CONVERSATION_UPGRADE_FAILED":st=c("hostedConversations.upgradeFailed");break;case"HOSTED_CONVERSATION_NOT_FOUND":st=c("hostedConversations.notFound");break;case"HOSTED_CONVERSATION_RUN_ACTIVE":st=c("hostedConversations.runActive");break;case"HOSTED_CONVERSATION_STATE_INVALID":st=c("hostedConversations.stateInvalid");break;case"HOSTED_CONVERSATION_ROLLBACK_TARGET_INVALID":st=c("hostedConversations.rollbackTargetInvalid");break;case"HOSTED_CONVERSATION_RESPONSE_INVALID":st=c("hostedConversations.responseInvalid");break;case"HOSTED_CONVERSATION_WATCH_INITIAL_FAILED":case"HOSTED_CONVERSATION_WATCH_FAILED":st=c("hostedConversations.watchFailed");break;default:st=Ae instanceof Error&&Ae.message.trim().length>0?Ae.message:typeof ze?.message=="string"&&ze.message.trim().length>0?ze.message.trim():c("hostedConversations.operationFailed")}return lt(Ae,st)}Ge(()=>n.restoringRoute,(Ae,ze)=>{!Ae&&ze&&Te()}),Ge(Fe,Za),Ge(Fe,r.clear),Ge(Se,Ae=>be.retain(Ae),{immediate:!0}),Ge(Fe,()=>{ve.value=new Set,We.following.value=!0,We.scrollToLatestAfterLayout()}),Ge(()=>n.workspace.snapshot.value,()=>{We.following.value&&We.scrollToLatestAfterLayout()},{flush:"post"}),Ge(()=>n.mobileHistoryOpen,Ae=>{Ae&&(q.value=!1)}),Ge(()=>n.mobileViewport,Ae=>{if(!Ae){ne();return}We.following.value&&We.scrollToLatestAfterLayout()});const pa=Rr({isOpen:()=>n.mobileViewport&&(n.mobileHistoryOpen||q.value),regions:()=>[document.getElementById(n.mobileHistoryOpen?"hosted-pane-history":"hosted-pane-files"),document.querySelector(".activity-rail")],close:ne});return wt(pa.dispose),wt(Y.dispose),Ot(Ze),wt(()=>{p?.disconnect(),ge?.disconnect(),Ue.dispose()}),(Ae,ze)=>{const nt=St,st=Vt,kt=cn,qt=ln,$t=sn,Wt=Ar,jt=Tt("tooltip"),ga=ia;return f(),L("section",{class:je(["hosted-workspace",{"history-collapsed":e.sidebarCollapsed}])},[B(mn,{name:"mobile-surface-scrim"},{default:Z(()=>[e.mobileViewport&&(e.mobileHistoryOpen||q.value)?(f(),L("button",{key:0,class:"hosted-conversation-scrim",type:"button","aria-label":e.mobileHistoryOpen?o(c)("hostedConversations.closeHistory"):o(c)("hostedConversations.closeFiles"),onClick:ne},null,8,iC)):ue("",!0)]),_:1}),j("aside",{id:"hosted-pane-history",tabindex:"-1",class:je(["hosted-conversation-history",{"mobile-open":e.mobileViewport&&e.mobileHistoryOpen}]),inert:e.mobileViewport?!e.mobileHistoryOpen:e.sidebarCollapsed,"aria-label":o(c)("hostedConversations.historyTitle")},[j("header",lC,[j("div",cC,[j("h2",null,M(o(c)("hostedConversations.historyTitle")),1)])]),j("div",dC,[B(nt,{class:"history-create-button",type:"primary",onClick:O},{default:Z(()=>[B(De,{name:"session-add"}),j("span",null,M(o(c)("hostedConversations.create")),1)]),_:1}),j("div",uC,[B(st,{modelValue:v.value,"onUpdate:modelValue":ze[0]||(ze[0]=ct=>v.value=ct),clearable:"","prefix-icon":o(Be)("search"),placeholder:o(c)("hostedConversations.searchHistory"),"aria-label":o(c)("hostedConversations.searchHistory"),"clear-icon":o(Be)("clear-input")},null,8,["modelValue","prefix-icon","placeholder","aria-label","clear-icon"]),Me(B(nt,{class:"history-refresh-button utility-control","aria-label":o(c)("hostedConversations.refreshHistory"),disabled:u.value,loading:e.workspace.loadingConversations.value&&e.workspace.conversationsLoaded.value,"aria-busy":e.workspace.loadingConversations.value&&e.workspace.conversationsLoaded.value,icon:o(Be)("refresh"),size:"small",text:"",onClick:Ee,"loading-icon":o(Be)("loading-action")},null,8,["aria-label","disabled","loading","aria-busy","icon","loading-icon"]),[[jt,o(c)("hostedConversations.refreshHistory")]])])]),Me((f(),L("div",{ref_key:"historyList",ref:y,class:"history-list"},[!u.value&&le.value.length===0?(f(),L("p",vC,M(o(c)(v.value.trim()?"hostedConversations.noLoadedHistoryMatches":"hostedConversations.noHistory")),1)):ue("",!0),(f(!0),L(qe,null,Xe(le.value,ct=>(f(),L("article",{key:fe(ct),class:je(["mar-session-reorder-item",{selected:ct.nodeId===e.workspace.selectedNodeId.value&&ct.id===e.workspace.selectedConversationId.value}]),onMouseenter:ht=>E.value=fe(ct),onMouseleave:ze[1]||(ze[1]=ht=>E.value=void 0),onFocusin:ht=>H.value=fe(ct),onFocusout:ke,onContextmenu:ht=>Pe(ct,ht)},[j("button",{class:"history-open",type:"button","aria-current":ct.nodeId===e.workspace.selectedNodeId.value&&ct.id===e.workspace.selectedConversationId.value?"page":void 0,onClick:ht=>de(ct)},[j("span",gC,[ct.pinnedAt!==null?(f(),ye(De,{key:0,name:"star-filled",class:"history-pin-indicator","aria-label":o(c)("hostedConversations.pinnedLabel")},null,8,["aria-label"])):ue("",!0),e.workspace.conversationIsRunning(ct)?(f(),L("span",mC)):ue("",!0),e.hasUnreadConversation(ct.nodeId,ct.id)?(f(),L("span",hC,M(o(c)("hostedConversations.unreadLabel")),1)):ue("",!0),j("strong",null,M(o(Tn)(ct)),1)]),j("time",{datetime:new Date(ct.lastActivityAt).toISOString()},M(o(c)("presentation.lastActivity",{value:o(Kt)(ct.lastActivityAt)})),9,yC)],8,pC),Ce(fe(ct))?(f(),ye($t,{key:0,class:"history-row-actions",placement:"bottom-end","popper-class":"session-action-menu",trigger:"click",onVisibleChange:ht=>Re(ht,fe(ct))},{dropdown:Z(()=>[B(qt,null,{default:Z(()=>[B(kt,{onClick:ht=>xe(ct,ct.pinnedAt===null)},{default:Z(()=>[B(De,{name:"pin"}),we(" "+M(o(c)(ct.pinnedAt===null?"hostedConversations.pin":"hostedConversations.unpin")),1)]),_:2},1032,["onClick"]),B(kt,{onClick:ht=>pe(ct)},{default:Z(()=>[B(De,{name:"edit"}),we(" "+M(o(c)("hostedConversations.editTitle")),1)]),_:1},8,["onClick"]),B(kt,{divided:"",onClick:ht=>He(ct)},{default:Z(()=>[B(De,{name:"delete"}),we(" "+M(o(c)("hostedConversations.delete")),1)]),_:1},8,["onClick"])]),_:2},1024)]),default:Z(()=>[Me((f(),L("button",{class:"history-more-button utility-control",type:"button",disabled:W.value!==void 0,"aria-label":o(c)("hostedConversations.moreActions",{title:o(Tn)(ct)})},[B(De,{name:"more"})],8,wC)),[[jt,o(c)("hostedConversations.moreActions",{title:o(Tn)(ct)})]])]),_:2},1032,["onVisibleChange"])):ue("",!0)],42,fC))),128)),v.value.trim()?(f(),L("p",kC,M(o(c)("hostedConversations.filterLoadedOnly")),1)):ue("",!0),e.workspace.hasMoreConversations.value?(f(),L("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(),L("span",{key:0,role:"status","aria-label":o(c)("common.loading")},[B(gn,{class:"read-loading-indicator"})],8,IC)):ue("",!0),T.value||e.workspace.loadMoreConversationsError.value&&!e.workspace.loadingMoreConversations.value?(f(),ye(nt,{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:S},{default:Z(()=>[e.workspace.loadingMoreConversations.value?(f(),ye(gn,{key:0,class:"read-loading-indicator"})):(f(),L(qe,{key:1},[we(M(o(c)("common.loadFailedRetry")),1)],64))]),_:1},8,["aria-disabled","aria-busy","aria-label"])):ue("",!0)],8,bC)):ue("",!0)])),[[ga,e.workspace.loadingConversations.value&&!e.workspace.conversationsLoaded.value],[o(mc),ae.value]])],10,sC),j("main",{id:"hosted-pane-conversation",class:"hosted-conversation-main",inert:e.mobileViewport&&(e.mobileHistoryOpen||q.value)},[e.mobileViewport?Me((f(),L("button",{key:0,class:"hosted-mobile-files-button",type:"button","aria-label":o(c)("hostedConversations.mobileFiles"),onClick:me},[B(De,{name:"folder-open"})],8,CC)),[[jt,o(c)("hostedConversations.mobileFiles")]]):ue("",!0),e.workspace.snapshot.value?.error?(f(),ye(Wt,{key:1,class:"snapshot-error-alert",closable:!1,"show-icon":"",type:"error",title:xt(e.workspace.snapshot.value.error)},{icon:Z(()=>[B(De,{name:"error"})]),_:1},8,["title"])):ue("",!0),x.value?(f(),ye(Wt,{key:2,class:"readonly-alert",closable:!1,"show-icon":"",type:"warning",title:ee.value},{icon:Z(()=>[B(De,{name:"warning"})]),_:1},8,["title"])):ue("",!0),J.value||P.value===void 0?(f(),L("section",TC,[B(nC,{request:e.request,workspace:e.workspace,"mobile-viewport":e.mobileViewport,connected:e.connected,entry:o(Y),onStarted:G},null,8,["request","workspace","mobile-viewport","connected","entry"])])):(f(),L(qe,{key:4},[B(Wl,{class:"hosted-timeline-scroll","context-key":Fe.value,"has-older":e.workspace.historyNextCursor.value!==null,"loading-initial":C.value,"initial-sync-pending":C.value,"initial-load-failed":g.value,"initial-error":R.value,"loading-older":e.workspace.loadingOlderHistory.value,"older-error":e.workspace.olderHistoryError.value===void 0?"":xt(e.workspace.olderHistoryError.value),"has-turns":Se.value.length>0,following:o(We).following.value,"empty-prompt":z.value&&!e.workspace.snapshot.value?.run?"hosted":void 0,onScrollElement:Ye,onScroll:Ke,onScrollIntent:o(We).stopFollowing,onLoadOlder:at,onReload:ie,onLatest:o(We).scrollToLatest},{default:Z(()=>[e.workspace.snapshot.value!==void 0?(f(),ye(Ll,{key:0,"quote-target":F.value?.quoteTarget,runs:e.workspace.snapshot.value?.run?[e.workspace.snapshot.value.run]:[],turns:Se.value,"workspace-root":"/workspace",loading:h.value,initializing:N.value!==void 0,"initial-render-version":0,"capture-render-anchor":o(We).captureRenderAnchor,"image-attachments":o(be).attachments,"user-input-questions":()=>[],"user-input-answer":()=>"","user-input-submitted":()=>!1,"plan-continuation":void 0,"node-ready":z.value,synchronized:e.connected!==!1&&e.workspace.watchReady.value,"tool-change-enabled":s.value,"rewind-enabled":!1,"rollback-enabled":ce.value,onCopy:et,onRollback:mt,onOpenImage:o(be).open,onImageUnavailable:o(be).markUnavailable,onOpenFile:fa,onOpenFileChange:i},null,8,["quote-target","runs","turns","loading","initializing","capture-render-anchor","image-attachments","node-ready","synchronized","tool-change-enabled","rollback-enabled","onOpenImage","onImageUnavailable"])):ue("",!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(),ye(bc,{connected:e.connected,ref_key:"composer",ref:F,key:Fe.value,workspace:e.workspace,"mobile-viewport":e.mobileViewport,readonly:!z.value||h.value,"readonly-reason":ee.value,"template-change-blocked":h.value||V.value},null,8,["connected","workspace","mobile-viewport","readonly","readonly-reason","template-change-blocked"])):ue("",!0)],64))],8,SC),j("aside",{id:"hosted-pane-files",tabindex:"-1",inert:e.mobileViewport&&!q.value,class:je(["hosted-conversation-files",{"mobile-open":e.mobileViewport&&q.value,"is-file-dragging":Q.value}]),"aria-label":o(c)("hostedConversations.filesTitle"),onDragenter:it(vt,["prevent"]),onDragover:it(pt,["prevent"]),onDragleave:it(Lt,["prevent"]),onDrop:it(wn,["prevent"])},[j("header",RC,[j("h2",null,M(o(c)("hostedConversations.filesTitle")),1)]),P.value!==void 0?(f(),L(qe,{key:0},[j("input",{ref_key:"relatedFilesInput",ref:U,class:"related-files-input",type:"file",multiple:"",disabled:!te.value||V.value,onChange:Mt},null,40,AC),j("button",{class:je(["files-drop-target",{active:Q.value,disabled:!te.value}]),"aria-disabled":!te.value,type:"button",disabled:!te.value||V.value,onClick:qn},[B(De,{name:"upload"}),j("span",null,M(Q.value?o(c)("hostedConversations.filesDropNow"):o(c)("hostedConversations.filesDropHint")),1)],10,NC),Me((f(),L("div",DC,[(f(!0),L(qe,null,Xe(se.value,ct=>(f(),L("section",{key:ct.category},[j("h3",null,M(Le(ct.category)),1),ct.files.length===0?(f(),L("p",PC,M(o(c)("hostedConversations.noFiles")),1)):ue("",!0),(f(!0),L(qe,null,Xe(ct.rows,ht=>(f(),L("div",{key:`${ct.category}:${ht.node.kind}:${ht.node.path}`,class:je(["file-row",{"is-directory":ht.node.kind==="DIRECTORY"}]),style:Ct({"--file-depth":ht.depth})},[ht.node.kind==="DIRECTORY"?Me((f(),L("span",OC,[j("button",{class:"file-directory",type:"button","aria-expanded":Ve(ct.category,ht.node.path),"aria-label":Ie(ct.category,ht.node.path),onClick:ma=>Je(ct.category,ht.node.path)},[B(De,{name:"chevron-right",class:je(["file-directory-chevron",{expanded:Ve(ct.category,ht.node.path)}])},null,8,["class"]),B(De,{name:"folder-open",class:"file-directory-kind"}),j("span",null,M(ht.node.name),1)],8,LC)])),[[jt,ht.node.path]]):(f(),L(qe,{key:1},[Me((f(),L("button",{"aria-label":ht.node.file.relativePath,class:"file-open",type:"button",onClick:ma=>o(Ue).openFile(ht.node.file)},[j("span",null,M(ht.node.file.displayName),1),j("small",null,M(o(Ha)(ht.node.file.size)),1)],8,WC)),[[jt,ht.node.file.relativePath]]),Me((f(),L("button",{class:"file-delete",type:"button",disabled:!te.value||A.value!==void 0,"aria-label":o(c)("hostedConversations.fileDeleteNamed",{name:ht.node.file.displayName}),onClick:ma=>va(ht.node.file)},[B(De,{name:"delete"})],8,MC)),[[jt,o(c)("hostedConversations.fileDeleteNamed",{name:ht.node.file.displayName})]])],64))],6))),128))]))),128))])),[[ga,V.value]])],64)):(f(),L("div",xC,[j("p",null,M(o(c)("hostedConversations.filesAvailableAfterCreate")),1)]))],42,EC),(f(),ye(ra,{to:"body"},[B(LS,{"quote-target":F.value?.quoteTarget,review:o(r),onOpenSource:l,onError:ze[2]||(ze[2]=ct=>o(tt)(xt(ct),"error",ct))},null,8,["quote-target","review"]),B(Ml,{"attachment-open":!1,attachment:void 0,"conversation-open":o(be).previewOpen.value,conversation:o(be).preview.value,"onUpdate:conversationOpen":ze[3]||(ze[3]=ct=>o(be).previewOpen.value=ct),onClearConversation:ze[4]||(ze[4]=ct=>o(be).preview.value=void 0)},null,8,["conversation-open","conversation"]),o(Ue).visible.value&&o(Ue).content.value?(f(),ye(ag,{key:0,overlay:!0,label:o(c)("generated.filePreviewDialog.filePreview",{value0:o(Ue).content.value.path}),onFocus:ze[6]||(ze[6]=ct=>he.value?.focus()),onClose:o(Ue).close},{default:Z(()=>[o(Ue).visible.value&&o(Ue).content.value&&o(Ue).kind.value==="text"?(f(),ye(Ul,{key:0,"quote-target":F.value?.quoteTarget,ref_key:"filePage",ref:he,downloading:o(Ue).downloading.value,file:o(Ue).content.value,loading:o(Ue).loading.value,"load-error":Qe.value,onReload:o(Ue).retry,fullscreen:!0,contained:!0,kind:o(Ue).kind.value,markdown:o(Ue).content.value.encoding==="utf-8"&&o(or)(o(Ue).content.value.path),"render-markdown":!0,"markdown-resource-url":Xa,"target-line":o(Ue).targetLine.value,"target-column":o(Ue).targetColumn.value,"write-enabled":!1,onClose:o(Ue).close,onDownload:o(Ue).download,onOpenMarkdownFile:ze[5]||(ze[5]=(ct,ht)=>fa(ct,void 0,void 0,ht))},null,8,["quote-target","downloading","file","loading","load-error","onReload","kind","markdown","target-line","target-column","onClose","onDownload"])):o(Ue).visible.value&&o(Ue).content.value?(f(),ye(Vl,{key:1,ref_key:"filePage",ref:he,"content-url":o(Ue).contentUrl.value,downloading:o(Ue).downloading.value,file:o(Ue).content.value,loading:o(Ue).loading.value,"load-error":Qe.value,onReload:o(Ue).retry,fullscreen:!0,contained:!0,kind:o(Ue).kind.value,onClose:o(Ue).close,onDownload:o(Ue).download},null,8,["content-url","downloading","file","loading","load-error","onReload","kind","onClose","onDownload"])):ue("",!0)]),_:1},8,["label","onClose"])):ue("",!0)]))],2)}}}),FC=ut($C,[["__scopeId","data-v-67f71e47"]]),UC=["aria-description","aria-label","aria-expanded"],VC=ot({__name:"WorkspaceSessionTreeButton",props:{sessionId:{},open:{type:Boolean},summary:{},status:{}},emits:["show"],setup(e,{emit:t}){const n=t;return(a,r)=>(f(),L("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(),L("span",{key:0,class:je(["tree-active-indicator mar-icon-status-badge",{paused:e.status!=="ready"}]),"aria-hidden":"true"},null,2)):ue("",!0)],8,UC))}}),qC=ut(VC,[["__scopeId","data-v-e3897b4d"]]),HC={class:"conversation-header-title"},BC={class:"conversation-title-row"},GC=["src","data-runner"],zC={key:0,class:"conversation-session-id"},KC=["aria-label"],jC=["aria-label"],_C=["aria-label"],YC=["aria-label"],QC=ot({__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),tt(c("generated.conversationHeader.sessionIdCopied"),"info")}catch{tt(c("generated.conversationHeader.copySessionIdFailed"),"error")}}return(r,s)=>{const i=Tt("tooltip");return f(),L("header",{class:je(["conversation-header",{"conversation-header-draft":o(Ta)(e.session)}])},[j("div",HC,[j("div",BC,[j("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,GC),Me((f(),L("h2",null,[we(M(o(Ta)(e.session)?o(c)("generated.conversationHeader.newSession2"):e.sessionTitle(e.session)),1)])),[[i,{content:o(Ta)(e.session)?o(c)("generated.conversationHeader.newSession"):e.sessionTitle(e.session),touch:!0}]])]),e.session&&!o(Ta)(e.session)?(f(),L("p",zC,[Me((f(),L("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))},[j("code",null,M(e.session.id),1)],8,KC)),[[i,o(c)("generated.conversationHeader.copySessionId",{sessionId:e.session.id})]]),Dt(r.$slots,"tree",{sessionId:e.session.id},void 0,!0)])):ue("",!0)]),j("div",{class:"mobile-conversation-tools","aria-label":o(c)("generated.conversationHeader.workspaceTools")},[j("button",{class:"utility-control",type:"button","aria-label":o(c)("generated.conversationHeader.openSessionList"),onClick:s[1]||(s[1]=l=>n("openSurface","sessions"))},M(o(c)("generated.conversationHeader.sessions")),9,_C),e.asideReady||e.filesReady||e.terminalReady?(f(),L("button",{key:0,class:"utility-control",type:"button","aria-label":o(c)("generated.conversationHeader.openAside"),onClick:s[2]||(s[2]=l=>n("openSurface","inspector"))},M(o(c)("generated.conversationHeader.more")),9,YC)):ue("",!0)],8,jC)],2)}}}),JC=ut(QC,[["__scopeId","data-v-761ce659"]]),XC=["aria-label"],ZC=ot({__name:"SessionPerformanceInfo",props:{performance:{}},setup(e){const t=e,n=_(()=>Dp(t.performance));return(a,r)=>{const s=Tt("tooltip");return n.value?Me((f(),L("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,XC)),[[s,{content:n.value,placement:"top",touch:!0}]]):ue("",!0)}}}),eT=ut(ZC,[["__scopeId","data-v-359b0644"]]),tT=["aria-label"],nl=ot({__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=Rt(n.controller.presentation),i=Rt(n.controller.configuration),l=Rt(n.controller.runner),d=n.controller.interactions,v=Rt(n.controller.references),u=n.controller.currentSessionQueue,y=n.controller.submitting,k=n.controller.canInterrupt,T=n.controller.performance.current,p=n.controller.conversationWindow.paging.olderHistoryError,m=_(()=>JSON.stringify([a.workspaceTarget.value?.nodeId,a.workspaceTarget.value?.workspaceId,n.controller.selectedSessionId.value])),S=t,N=$(),I=$();let b,C;Ot(()=>{b=a.registerShortcuts(()=>N.value?.$el,()=>I.value?.openModelMenu()===!0),C=n.controller.interactions.registerShortcuts(()=>N.value?.$el.querySelector("textarea")??void 0)});function g(R){n.controller.selectModelEffort(R),N.value?.focus()}return a.setInputFocus(R=>N.value?.focusAt(R)),a.setRangeEditor((R,W,w)=>N.value?.replaceRange(R,W,w)??!1),wt(()=>{b?.(),C?.(),a.setInputFocus(()=>{}),a.setRangeEditor(()=>!1)}),(R,W)=>(f(),L("section",{class:"conversation-panel","aria-label":o(c)("generated.workbenchSurface.agentConversation")},[o(s).composerSessionOpen?(f(),L(qe,{key:0},[B(JC,{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(fc),"session-title":o(Ua),"content-search-ready":e.controller.filesReady.value,onOpenSurface:W[1]||(W[1]=w=>S("openSurface",w))},{tree:Z(({sessionId:w})=>[o(r)&&e.treeSupported?(f(),ye(qC,{key:w,"session-id":w,open:e.treeOpenSessionId===w,summary:e.treeSummaries?.find(D=>D.anchorSessionId===w),status:e.treeStatus??"idle",onShow:W[0]||(W[0]=(D,E)=>S("openTree",D,E,o(i).selectedSession?o(Ua)(o(i).selectedSession):D))},null,8,["session-id","open","summary","status"])):ue("",!0)]),_:1},8,["session","runner","files-ready","terminal-ready","aside-ready","runner-icon","session-title","content-search-ready"]),B(Wl,{"context-key":m.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(lt)(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:W[2]||(W[2]=w=>o(a).scroll.setElement(w)),onScroll:o(d).onComposerScroll,onScrollIntent:o(a).scroll.stopFollowing,onLoadOlder:e.controller.conversationWindow.paging.loadOlderConversationTurns,onLatest:o(d).scrollConversationToLatest,onReload:W[3]||(W[3]=w=>S("reload"))},{status:Z(()=>[B(eT,{performance:o(T)},null,8,["performance"])]),default:Z(()=>[B(Ll,{"quote-target":e.controller.quoteTarget,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(y),"image-attachments":e.controller.images.attachments,"user-input-questions":o(Pp),"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,["quote-target","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(Dl,{ref_key:"composer",ref:N,input:o(a).draft.input.value,"onUpdate:input":W[14]||(W[14]=w=>o(a).draft.input.value=w),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(Fn)(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(y),"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(v).open||o(l).selectedCommand!==void 0||o(s).composerAttachmentsPending,onSubmit:e.controller.sendMessage,onInput:o(d).onComposerInput,onKeydown:o(d).onComposerKeydown,onCursor:o(d).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(xp,{items:o(u).items,paused:o(u).paused,loading:e.controller.loading.value||o(y),"editing-queue-item-id":o(a).queue.editingQueueItemId.value,"editing-content":o(a).queue.editingContent.value,goal:e.controller.activeGoal.value,onDragStart:W[4]||(W[4]=w=>o(a).queue.draggingQueueItemId.value=w),onReorder:e.controller.queueActions.reorder,onEdit:W[5]||(W[5]=w=>o(a).queue.startEditing(w)),onCancelEdit:W[6]||(W[6]=w=>o(a).queue.finishEditing()),onUpdateContent:W[7]||(W[7]=w=>o(a).queue.editingContent.value=w),onSave:e.controller.queueActions.save,onExecute:W[8]||(W[8]=(w,D)=>e.controller.queueActions.execute(w,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(),ye(Mp,{key:0,submitting:o(y),ref_key:"composerToolbar",ref:I,"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(y),"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":m.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(y),"attachments-pending":o(s).composerAttachmentsPending,"effort-label":e.controller.effortLabel,onFiles:o(a).attachments.add,onUpdateRunner:e.controller.composer.selectRunner,onUpdateModelEffort:g,onUpdateAccess:e.controller.selectAccess,onCompact:e.controller.context.compactCurrentContext,onStop:e.controller.runControl.stopActiveRun,onSend:W[9]||(W[9]=w=>e.controller.sendMessage()),onSteer:W[10]||(W[10]=w=>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"])):ue("",!0)]),attachments:Z(()=>[B(Wp,{attachments:o(a).attachments.attachments.value,onPreview:W[11]||(W[11]=w=>S("previewAttachment",w)),onRemoveAttachment:o(a).attachments.remove},null,8,["attachments","onRemoveAttachment"])]),picker:Z(()=>[B(Op,{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:W[12]||(W[12]=w=>o(l).activeCommandIndex=w),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(Lp,{open:o(v).open,candidates:o(v).candidates,"active-index":o(v).activeIndex,loading:o(v).loading,query:o(v).match?.query??"","session-enabled":!0,"session-ready":o(v).sessionAvailable(),"file-ready":e.controller.filesReady.value,"session-only":o(v).match?.sessionOnly??!1,"session-loading":o(v).sessionLoading,"file-error":o(v).fileError,"capacity-exceeded":o(v).capacityExceeded,"session-error":o(v).sessionError,"file-more":o(v).fileMore,"session-more":o(v).sessionMore,onActivate:W[13]||(W[13]=w=>o(v).activeIndex=w),onSelect:o(d).selectReference},null,8,["open","candidates","active-index","loading","query","session-ready","file-ready","session-only","session-loading","file-error","capacity-exceeded","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)):ue("",!0)],8,tT))}}),nT=["aria-label","aria-valuemin","aria-valuemax","aria-valuenow"],aT=ot({__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=$(!1),s=$(),i=$();let l;function d(m){const S=Math.max(n.min,Math.min(n.max,m));i.value=S,a("resize",S)}function v(){if(n.target!==void 0){for(const m of n.target.getAnimations())m instanceof CSSTransition&&m.transitionProperty==="width"&&m.finish();return n.target.getBoundingClientRect().width}}function u(m){if(m.button!==0||l!==void 0)return;const S=v();if(S===void 0)return;m.preventDefault(),m.currentTarget.setPointerCapture(m.pointerId),l={pointerId:m.pointerId,x:m.clientX,width:S},r.value=!0}function y(m){l?.pointerId===m.pointerId&&d(l.width+n.direction*(m.clientX-l.x))}function k(m){if(l?.pointerId!==m.pointerId)return;l=void 0,r.value=!1;const S=m.currentTarget;S.hasPointerCapture(m.pointerId)&&S.releasePointerCapture(m.pointerId)}function T(){const m=l?.pointerId;l=void 0,r.value=!1,m!==void 0&&s.value?.hasPointerCapture(m)&&s.value.releasePointerCapture(m)}function p(m){const S=v();if(S===void 0)return;let N;if(m.key==="Home")N=n.min;else if(m.key==="End")N=n.max;else if(m.key==="ArrowLeft")N=S-n.direction*10;else if(m.key==="ArrowRight")N=S+n.direction*10;else return;m.preventDefault(),d(N)}return Ge(()=>n.gestureKey,T,{flush:"sync"}),wt(T),(m,S)=>{const N=Tt("tooltip");return Me((f(),L("div",{ref_key:"handle",ref:s,class:je(["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:S[0]||(S[0]=I=>i.value=e.target?.getBoundingClientRect().width),onKeydown:p,onPointerdown:u,onPointermove:y,onPointerup:k,onPointercancel:k,onLostpointercapture:k},null,42,nT)),[[N,e.label]])}}}),Sc=ut(aT,[["__scopeId","data-v-5bff4995"]]),oT={class:"workbench-aside-header"},rT=["aria-label"],iT={class:"workbench-aside-label"},sT={key:0,class:"workbench-aside-activity session-activity managed_active","aria-hidden":"true"},lT={class:"workbench-aside-content"},cT=["id","aria-labelledby"],dT=["id","aria-labelledby"],uT=ot({__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=$(),s=`aside-${ml()}`,i=_(()=>[...n.tools.filter(u=>n.state.tools.includes(u.id)).map(u=>({id:`tool:${u.id}`,label:u.label,active:!1,target:{kind:"tool",id:u.id}})),...n.state.sessions.map((u,y)=>{const k=n.sessions.find(p=>p.sessionId===u),T=k?.title??u;return{id:`session:${u}`,label:T,closeLabel:n.closeLabel(T),separatorBefore:y===0&&n.tools.some(p=>n.state.tools.includes(p.id)),target:{kind:"session",sessionId:u},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=_(()=>{const u=n.state.active;return u?.kind==="tool"?`tool:${u.id}`:u?.kind==="browser"?"browser":u?.kind==="session"?`session:${u.sessionId}`:void 0});function d(u){const y=i.value.find(k=>k.id===u)?.target;y?.kind==="tool"?a("selectTool",{...n.workspace,id:y.id}):y?.kind==="browser"?a("selectBrowser",n.workspace):y?.kind==="session"&&a("selectSession",{...n.workspace,sessionId:y.sessionId})}function v(u){const y=i.value.find(k=>k.id===u)?.target;y?.kind==="browser"?a("closeBrowser",n.workspace):y?.kind==="session"&&a("closeSession",{...n.workspace,sessionId:y.sessionId})}return(u,y)=>(f(),L("aside",{ref_key:"element",ref:r,class:"workbench-aside",style:Ct({width:`${e.width}px`})},[B(Sc,{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:y[0]||(y[0]=k=>a("resize",k))},null,8,["target","label","min","max","width","gesture-key"]),j("header",oT,[e.mobile?(f(),L("button",{key:0,type:"button",class:"workbench-aside-back","aria-label":e.closeSurfaceLabel,onClick:y[1]||(y[1]=k=>a("closeSurface"))},[B(De,{name:"chevron-left"})],8,rT)):ue("",!0),B(ql,{class:"workbench-aside-tabs",size:"small",items:i.value,"id-prefix":s,"active-id":l.value,label:e.tabLabel,onActivate:d,onClose:v},{label:Z(({item:k})=>[j("span",iT,M(k.label),1),i.value.find(T=>T.id===k.id)?.active?(f(),L("span",sT,[...y[2]||(y[2]=[j("i",null,null,-1)])])):ue("",!0)]),_:1},8,["items","active-id","label"])]),j("div",lT,[(f(!0),L(qe,null,Xe(i.value.filter(k=>k.target.kind==="tool"&&k.target.id!=="terminal"),k=>Me((f(),L("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},[Dt(u.$slots,"tool",{tool:k.target.kind==="tool"?k.target.id:void 0,visible:k.id===l.value},void 0,!0)],8,cT)),[[At,k.id===l.value]])),128)),(f(!0),L(qe,null,Xe(i.value.filter(k=>k.target.kind!=="tool"||k.target.id==="terminal"),k=>Me((f(),L("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?Dt(u.$slots,"browser",{},void 0,!0,0):ue("",!0),k.target.kind==="tool"&&k.target.id==="terminal"?Dt(u.$slots,"terminal",{visible:k.id===l.value},void 0,!0,1):ue("",!0),k.target.kind==="session"&&k.id===l.value?Dt(u.$slots,"session",{target:{...e.workspace,sessionId:k.target.sessionId}},void 0,!0,2):ue("",!0)],8,dT)),[[At,k.id===l.value]])),128))])],4))}}),vT=ut(uT,[["__scopeId","data-v-c4363fc8"]]),fT=["aria-busy"],pT=["aria-label"],gT={key:1,role:"status"},mT=["aria-current","aria-label"],hT={class:"session-tree-title"},yT=["datetime"],wT={key:0,class:"session-tree-location"},kT={key:1,class:"session-tree-location"},bT={key:2,class:"session-tree-location"},IT=["aria-label"],ST={key:3},CT={key:4,class:"session-tree-list"},TT={key:0,class:"session-tree-origin","aria-hidden":"true"},ET={key:0,class:"session-tree-origin-stem is-incoming"},RT={key:1,class:"session-tree-origin-stem"},AT=["aria-current","aria-label","onClick"],NT={class:"session-tree-title"},DT={key:0,class:"session-tree-location"},PT={key:1,class:"session-tree-location"},OT={key:2,class:"session-tree-location"},LT=["datetime"],WT=["aria-label"],MT={key:5,class:"session-tree-truncated"},xT=ot({__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=$(),i=$([]);function l(){s.value?.handleClose();for(const k of i.value)k.handleClose()}t({closeMenu:l});const d=_(()=>{const k=a.tree;if(!k)return[];const T=new Set(k.nodes.map(N=>N.id)),p=new Map;for(const N of k.nodes){const I=N.parentSessionId===k.anchorSessionId||!T.has(N.parentSessionId??"")?null:N.parentSessionId,b=p.get(I)??[];b.push(N),p.set(I,b)}const m=[];function S(N,I,b=!1){const C=p.get(N)??[];for(const[g,R]of C.entries()){const W=g<C.length-1,w=N===null?[]:[...I,W];b&&w.length>0&&(w[0]=!0),m.push({node:R,branches:w,hasChildren:p.has(R.id),hasPreviousSibling:g>0,hasNextSibling:W}),S(R.id,w,N===null?W:b)}}return S(null,[]),m});function v(k){return Hi(k.lastActivityAt)?new Date(k.lastActivityAt).toISOString():void 0}function u(k){return Hi(k.lastActivityAt)?c("presentation.lastActivity",{value:Kt(k.lastActivityAt)}):void 0}function y(k){k.preventDefault(),k.currentTarget.querySelector(".session-tree-actions")?.click()}return(k,T)=>{const p=St,m=cn,S=ln,N=sn,I=Tt("tooltip");return f(),L("div",{class:"session-tree","aria-busy":e.tree===void 0&&e.status!=="failed"},[e.tree===void 0&&e.status!=="failed"?(f(),L("div",{key:0,class:"session-tree-loading",role:"status","aria-label":o(c)("common.loading")},[B(gn,{class:"read-loading-indicator"})],8,pT)):ue("",!0),e.status==="failed"||e.status==="ready"&&e.tree===null?(f(),L("p",gT,[we(M(o(c)("sessionGroups.treeUnavailable"))+" ",1),B(p,{link:"",onClick:T[0]||(T[0]=b=>r("retry"))},{default:Z(()=>[we(M(o(c)("sessionGroups.retry")),1)]),_:1})])):ue("",!0),e.tree?.parent?(f(),L("div",{key:2,class:"session-tree-parent",onContextmenu:y},[j("span",null,M(o(c)("sessionGroups.parent")),1),j("div",{class:je(["session-tree-item",{"is-current":e.tree.parent.id===e.mainSessionId}])},[j("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]=b=>r("open",e.tree.parent.id,"aside"))},[Me((f(),L("span",hT,[we(M(e.tree.parent.title),1)])),[[I,e.tree.parent.title]]),e.tree.parent.status!=="IDLE"?(f(),L("span",{key:0,class:je(["session-activity",e.tree.parent.status==="RUNNING"?"managed_active":"tree-sleeping"]),"aria-hidden":"true"},[...T[6]||(T[6]=[j("i",null,null,-1)])],2)):ue("",!0),Me((f(),L("time",{class:"session-tree-time",datetime:v(e.tree.parent)},[we(M(o(Zo)(e.tree.parent.lastActivityAt)),1)],8,yT)),[[I,u(e.tree.parent)]])],8,mT),e.tree.parent.id===e.mainSessionId?(f(),L("span",wT,M(o(c)("sessionGroups.inMain")),1)):e.tree.parent.id===e.activeAsideId?(f(),L("span",kT,M(o(c)("sessionGroups.inActiveAside")),1)):e.asideSessionIds.includes(e.tree.parent.id)?(f(),L("span",bT,M(o(c)("sessionGroups.inAside")),1)):ue("",!0),B(N,{ref_key:"parentMenu",ref:s,trigger:"click","popper-class":"session-tree-menu",onVisibleChange:T[2]||(T[2]=b=>r("menu",b)),onCommand:T[3]||(T[3]=b=>r("open",e.tree.parent.id,b))},{dropdown:Z(()=>[B(S,null,{default:Z(()=>[B(m,{command:"aside"},{default:Z(()=>[B(De,{name:"split"}),we(M(o(c)("sessionGroups.openAside")),1)]),_:1}),B(m,{command:"main"},{default:Z(()=>[B(De,{name:"conversation"}),we(M(o(c)("sessionGroups.openMain")),1)]),_:1})]),_:1})]),default:Z(()=>[Me((f(),L("button",{type:"button",class:"icon-button utility-control session-tree-actions","aria-label":o(c)("sessionGroups.actions")},[B(De,{name:"more"})],8,IT)),[[I,o(c)("sessionGroups.actions")]])]),_:1},512)],2)],32)):ue("",!0),e.tree&&d.value.length===0?(f(),L("p",ST,M(o(c)("sessionGroups.noDescendants")),1)):ue("",!0),e.tree&&d.value.length>0?(f(),L("ul",CT,[(f(!0),L(qe,null,Xe(d.value,b=>(f(),L("li",{key:b.node.id,class:"session-tree-row",onContextmenu:y},[b.branches.length===0?(f(),L("span",TT,[b.hasPreviousSibling?(f(),L("span",ET)):ue("",!0),b.hasNextSibling||b.hasChildren?(f(),L("span",RT)):ue("",!0)])):ue("",!0),(f(!0),L(qe,null,Xe(b.branches,(C,g)=>(f(),L("span",{key:g,"aria-hidden":"true",class:je(["session-tree-branch",{"is-continuing":C,"is-leaf":g===b.branches.length-1}]),style:Ct({insetInlineStart:`${g*1.25+.75}rem`})},null,6))),128)),b.branches.length>0&&b.hasChildren?(f(),L("span",{key:1,class:"session-tree-child-stem","aria-hidden":"true",style:Ct({insetInlineStart:`${b.branches.length*1.25+.75}rem`})},null,4)):ue("",!0),j("span",{class:"session-tree-marker","aria-hidden":"true",style:Ct({insetInlineStart:`${b.branches.length*1.25+.75}rem`})},null,4),j("div",{class:je(["session-tree-item",{"is-current":b.node.id===e.mainSessionId}]),style:Ct({marginInlineStart:`${(b.branches.length+1)*1.25}rem`})},[j("button",{type:"button",class:"session-tree-node","aria-current":b.node.id===e.mainSessionId?"true":void 0,"aria-label":`${b.node.title}, ${o(c)(`sessionGroups.status${b.node.status}`)}`,onClick:C=>r("open",b.node.id,"aside")},[Me((f(),L("span",NT,[we(M(b.node.title),1)])),[[I,b.node.title]]),b.node.id===e.mainSessionId?(f(),L("span",DT,M(o(c)("sessionGroups.inMain")),1)):b.node.id===e.activeAsideId?(f(),L("span",PT,M(o(c)("sessionGroups.inActiveAside")),1)):e.asideSessionIds.includes(b.node.id)?(f(),L("span",OT,M(o(c)("sessionGroups.inAside")),1)):ue("",!0),b.node.status!=="IDLE"?(f(),L("span",{key:3,class:je(["session-activity",b.node.status==="RUNNING"?"managed_active":"tree-sleeping"]),"aria-hidden":"true"},[...T[7]||(T[7]=[j("i",null,null,-1)])],2)):ue("",!0),Me((f(),L("time",{class:"session-tree-time",datetime:v(b.node)},[we(M(o(Zo)(b.node.lastActivityAt)),1)],8,LT)),[[I,u(b.node)]])],8,AT),B(N,{ref_for:!0,ref_key:"nodeMenus",ref:i,trigger:"click","popper-class":"session-tree-menu",onVisibleChange:T[5]||(T[5]=C=>r("menu",C)),onCommand:C=>r("open",b.node.id,C)},{dropdown:Z(()=>[B(S,null,{default:Z(()=>[B(m,{command:"aside"},{default:Z(()=>[B(De,{name:"split"}),we(M(o(c)("sessionGroups.openAside")),1)]),_:1}),B(m,{command:"main"},{default:Z(()=>[B(De,{name:"conversation"}),we(M(o(c)("sessionGroups.openMain")),1)]),_:1})]),_:1})]),default:Z(()=>[Me((f(),L("button",{type:"button",class:"icon-button utility-control session-tree-actions","aria-label":o(c)("sessionGroups.actions"),onClick:T[4]||(T[4]=it(()=>{},["stop"]))},[B(De,{name:"more"})],8,WT)),[[I,o(c)("sessionGroups.actions")]])]),_:1},8,["onCommand"])],6)],32))),128))])):ue("",!0),e.tree?.truncated?(f(),L("p",MT,M(o(c)("sessionGroups.treeTruncated")),1)):ue("",!0)],8,fT)}}}),$T=ut(xT,[["__scopeId","data-v-2c6676ba"]]),FT=["aria-label"],UT={class:"session-tree-header"},VT={class:"session-tree-scroll"},qT=ot({__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=$(),s=$(),i=$(!1);let l;const d=bl({isOpen:()=>!0,close:()=>a("close",!0)});function v(u){const y=u.composedPath();y.includes(n.anchor)||r.value&&y.includes(r.value)||y.some(k=>k instanceof Element&&k.classList.contains("session-tree-menu"))||a("close",!1)}return Ot(()=>{document.addEventListener("pointerdown",v,!0),d.start(),l=Ft.register({command:"sessionTree.dismiss",scope:"overlay",priority:140,keys:[{key:"Escape"}],when:()=>!0,execute:()=>(i.value?s.value?.closeMenu():a("close",!0),"HANDLED")})}),wt(()=>{document.removeEventListener("pointerdown",v,!0),d.dispose(),l?.()}),(u,y)=>{const k=Sr;return f(),ye(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(()=>[j("section",{ref_key:"root",ref:r,class:"session-tree-popup",role:"dialog","aria-label":e.title},[j("header",UT,M(e.title),1),j("div",VT,[B($T,{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:y[0]||(y[0]=(T,p)=>a("open",T,p)),onMenu:y[1]||(y[1]=T=>i.value=T),onRetry:y[2]||(y[2]=T=>a("retry"))},null,8,["session-id","tree","status","main-session-id","aside-session-ids","active-aside-id"])])],8,FT)]),_:1},8,["virtual-ref"])}}}),HT=ut(qT,[["__scopeId","data-v-983d1c4f"]]),BT={class:"session-layout"},GT={key:0,class:"welcome-panel compact-welcome"},zT={class:"workspace-selection-hint"},KT={key:2,class:"workspace-offline-placeholder",role:"status"},jT={class:"workspace-offline-message"},_T={key:3,class:"welcome-panel compact-welcome workspace-selection-panel workspace-recovery-panel"},YT=["aria-label"],QT={key:1,class:"workspace-recovery-state"},JT={role:"status"},XT=["aria-hidden"],ZT=["role"],eE=["role"],tE=["inert"],nE=ot({__name:"WorkbenchSurface",props:{page:{}},setup(e){const n=wr({loader:()=>kr(()=>import("./SettingsContent-lmlrCtzr.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:()=>hl(yl,{loading:!0,variant:"page","aria-label":c("common.loading")})},delay:0}),a=e,r=vl(),s=_(()=>r.resolve(a.page.application.managementSection,a.page.identity.admin)),i=$(!1),l=$(),d=$(),v=$(0);Ge(l,(U,A,h)=>{if(U==null)return;const F=()=>{const X=U.querySelector(".conversation-sidebar")?.getBoundingClientRect().width??0;v.value=Math.max(0,U.clientWidth-(a.page.layout.mobileViewport?0:X))},K=new ResizeObserver(F);K.observe(U);const ve=U.querySelector(".conversation-sidebar");ve&&K.observe(ve),F(),h(()=>K.disconnect())},{flush:"post"});const u=_(()=>a.page.aside.asideViewMode(a.page.aside.asideState?.active)),y=_(()=>a.page.resources.nodeManifestLoading&&a.page.resources.nodeManifest===void 0),k=_(()=>a.page.layout.mobileViewport?v.value:a.page.aside.asideWidth(u.value,v.value,360)),T=_(()=>a.page.resources.workspaceHost?.connected===!1?"failed":a.page.application.workspaceWatchTopicStatus.sessionNavigation),p=_(()=>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"));Ge(p,U=>a.page.aside.setAsideSurfaceVisible(U),{immediate:!0}),wt(()=>a.page.aside.setAsideSurfaceVisible(!1));const m=_(()=>p.value&&a.page.aside.asideState?.active?.kind==="tool"&&a.page.aside.asideState.active.id==="terminal");function S(U){U==="terminal"?a.page.aside.toggleAsideTerminal():a.page.layout.openMobileWorkspaceSurface(U)}const N=_(()=>[{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")}]),I=_(()=>(a.page.aside.asideState?.sessions??[]).map(U=>{const A=a.page.aside.asideSessionMetadata.find(h=>h.id===U);return{sessionId:U,title:A?.title??U,active:A?.activity==="MANAGED_ACTIVE"}}));function b(U){const A=a.page.aside.asideState?.active;return!p.value||A?.kind!=="tool"||A.id!==U||U==="terminal"?null:U}const C=_(()=>p.value&&a.page.files.filesReady&&b("files")==="files"),g=_(()=>{const U=a.page.aside.asideState?.active;return p.value&&a.page.files.filesReady&&a.page.files.contentSearchReady&&U?.kind==="tool"&&U.id==="search"});Ot(()=>a.page.files.mountSurface()),wt(()=>a.page.files.unmountSurface());const R=$(),W=$();function w(U=!1){const A=W.value;W.value=void 0,a.page.sessionList.setSessionTreeAnchor(void 0),U&&A&>(()=>{A.anchor.isConnected&&A.anchor.focus()})}function D(U,A,h){const F=a.page.selection.workspaceTarget;if(!(!F||!a.page.aside.asideSupported)){if(W.value?.anchor===A){w(!0);return}W.value={...F,sessionId:U,anchor:A,title:h},a.page.sessionList.setSessionTreeAnchor(U)}}function E(U){const A=a.page.aside.openAsideSession(U);return A&&a.page.layout.mobileViewport&&a.page.layout.openMobileWorkspaceSurface("inspector"),A}function H(U,A){const h=W.value,F=a.page.selection.workspaceTarget;if(!h||!F||h.nodeId!==F.nodeId||h.workspaceId!==F.workspaceId)return;const K={nodeId:h.nodeId,workspaceId:h.workspaceId,sessionId:U};A==="aside"?E(K)&&w(!1):(a.page.selection.openSessionGroupTarget(K),w(!1))}Ge(()=>[a.page.selection.workspaceTarget?.nodeId,a.page.selection.workspaceTarget?.workspaceId,a.page.application.view,a.page.aside.asideSupported],()=>{const U=W.value;U&&(a.page.application.view!=="nodes"||!a.page.aside.asideSupported||a.page.selection.workspaceTarget?.nodeId!==U.nodeId||a.page.selection.workspaceTarget.workspaceId!==U.workspaceId)&&w()}),wt(()=>{W.value&&w()});const J=_(()=>{const U=a.page.hosted.hostedConversationWorkspace;return U.snapshot.value?.conversation??U.conversations.value.find(A=>A.nodeId===U.selectedNodeId.value&&A.id===U.selectedConversationId.value)});function Y(){const U=a.page.selection.workspaceTarget?.nodeId,A=a.page.resources.selectedWorkspace;U===void 0||A===void 0||(R.value={nodeId:U,workspace:A},i.value=!0)}async function q(U){const A=R.value;if(A!==void 0)return a.page.sessionList.cleanupWorkspaceSessions(A.nodeId,A.workspace,U)}function Q(U){i.value=U,U||(R.value=void 0)}const V=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:()=>m.value});return wt(V.dispose),(U,A)=>{const h=Zt,F=St,K=Ar;return f(),L("section",{class:je(["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(),ye(h,{key:0,onVnodeMounted:o(Jt),onVnodeBeforeUnmount:o(Qt),"model-value":!0,title:o(c)("generated.workbenchSurface.registerWorkspace"),width:"min(980px, calc(100vw - 32px))","destroy-on-close":"","onUpdate:modelValue":A[2]||(A[2]=ve=>{ve||e.page.registration.closeWorkspaceRegistration()}),"close-icon":o(Be)("close")},{default:Z(()=>[Dt(U.$slots,"workspace-registration",{},()=>[B(hc,{modelValue:e.page.registration.openWorkspaceTools,"onUpdate:modelValue":A[0]||(A[0]=ve=>e.page.registration.openWorkspaceTools=ve),"preserve-git-config":e.page.registration.workspacePreserveGitConfig,"onUpdate:preserveGitConfig":A[1]||(A[1]=ve=>e.page.registration.workspacePreserveGitConfig=ve),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"])):ue("",!0),B(mS,{"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":J.value===void 0?o(c)("hostedConversations.temporaryTitle"):o(Tn)(J.value),onToggleSidebar:A[3]||(A[3]=ve=>e.page.layout.sidebarCollapsed=!e.page.layout.sidebarCollapsed)},gl({_:2},[e.page.application.view==="nodes"&&!e.page.layout.mobileViewport?{name:"workspace-tabs",fn:Z(()=>[B(Xs,{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"]),Me(j("section",BT,[e.page.application.view==="nodes"&&e.page.selection.workspaceTarget===void 0?(f(),L("section",GT,[j("h1",null,M(o(c)("generated.workbenchSurface.selectAWorkspace")),1),j("p",null,M(o(c)("generated.workbenchSurface.selectANodeInTheResourceExplorer")),1),j("p",zT,[we(M(o(c)("generated.workbenchSurface.noNodeConnectedYetCreateARegistration"))+" ",1),B(F,{link:"",type:"primary",onClick:e.page.registration.openNodeRegistration},{default:Z(()=>[we(M(o(c)("generated.workbenchSurface.openNodeManagement")),1)]),_:1},8,["onClick"])])])):e.page.application.view==="nodes"&&e.page.selection.workspaceTarget!==void 0?(f(),L(qe,{key:1},[e.page.layout.mobileViewport?(f(),ye(Xs,{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"])):ue("",!0),e.page.resources.workspaceHost?.connected!==!1&&!e.page.resources.nodeReady&&e.page.resources.selectedNodeStatus!==void 0?(f(),ye(K,{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"])):ue("",!0),e.page.resources.workspaceHost?.connected===!1?(f(),L("section",KT,[j("div",jT,[B(De,{name:"connection-off",class:"workspace-offline-icon","aria-hidden":"true"}),j("p",null,M(o(c)("generated.workbenchSurface.offlineWorkspace")),1)])])):ue("",!0),e.page.resources.workspaceHost?.connected!==!1&&e.page.selection.workspaceTarget!==void 0&&e.page.resources.selectedWorkspace===void 0?(f(),L("section",_T,[e.page.selection.workspaceSelectionLoading?(f(),L("div",{key:0,class:"page-loading-state",role:"status","aria-label":o(c)("common.loading")},[B(gn)],8,YT)):(f(),L("div",QT,[j("p",JT,M(o(c)("generated.workbenchSurface.workspaceMetadataUnavailable")),1),B(F,{link:"",size:"small",onClick:e.page.selection.retryWorkspaceSelection},{default:Z(()=>[we(M(o(c)("common.loadFailedRetry")),1)]),_:1},8,["onClick"])]))])):e.page.resources.selectedWorkspace!==void 0?Me((f(),L("div",{key:4,ref_key:"workspaceGrid",ref:l,class:je(["workspace-grid",`mobile-surface-${e.page.layout.mobileWorkspaceSurface}`]),style:Ct({"--aside-width":`${k.value??0}px`})},[B(l0,{"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":ve=>e.page.notifications.hasUnreadSession(e.page.selection.workspaceTarget?.nodeId,e.page.resources.selectedWorkspace.id,ve),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&&R.value!==void 0?(f(),ye(m0,{key:0,"model-value":i.value,cleanup:q,"onUpdate:modelValue":Q},null,8,["model-value"])):ue("",!0),B(nl,{controller:e.page.mainPaneController,"aside-ready":e.page.aside.asideState?.active!==void 0,"tree-supported":e.page.aside.asideSupported,"tree-open-session-id":W.value?.sessionId,"tree-summaries":e.page.sessionList.sessionNavigationSnapshot?.summaries,"tree-status":T.value,onOpenTree:D,onOpenSurface:S,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(),ye(vk,{"quote-target-for":e.page.files.quoteTargetFor,key:`${e.page.selection.workspaceTarget?.nodeId}:${e.page.selection.workspaceTarget?.workspaceId}`,ref:ve=>e.page.files.workspaceFileWorkbench=ve,"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,["quote-target-for","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(mn,{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?Me((f(),L("div",{key:0,class:"workspace-aside",tabindex:"-1","aria-hidden":!p.value},[B(vT,{inert:!p.value,workspace:e.page.selection.workspaceTarget,state:e.page.aside.asideState,tools:N.value,"browser-label":o(c)("htmlPreview.browser"),sessions:I.value,"tab-label":o(c)("generated.workbenchAside.tabs"),"close-label":ve=>o(c)("generated.workbenchAside.close",{value0:ve}),"resize-label":o(c)("generated.workbenchAside.resize"),width:k.value??o(pn)[u.value].min,mobile:e.page.layout.mobileViewport,"close-surface-label":o(c)("workbench.closeWorkspaceTools"),"min-width":o(pn)[u.value].min,"max-width":Math.max(o(pn)[u.value].min,Math.min(o(pn)[u.value].max,v.value-360)),mode:u.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:A[13]||(A[13]=ve=>e.page.layout.setPanelWidth(u.value,ve)),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(),ye(tI,{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:A[4]||(A[4]=ve=>e.page.files.fileWorkbench.openFile(ve)),onExternal:A[5]||(A[5]=ve=>e.page.application.openHtmlExternal(ve))},null,8,["node-id","workspace-id","path","csrf-token","renew-csrf-token"])):ue("",!0)]),tool:Z(({tool:ve})=>[ve==="files"&&e.page.selection.workspaceTarget!==void 0?Me((f(),ye(Yb,{key:`${e.page.selection.workspaceTarget.nodeId}:${e.page.selection.workspaceTarget.workspaceId}`,ref:X=>e.page.files.setWorkspaceFilesPanel(X),service:e.page.files.workspaceFiles,visible:C.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:A[6]||(A[6]=X=>e.page.files.workspaceFiles.requestRefresh()),onOpen:A[7]||(A[7]=(X,oe)=>oe?e.page.files.openWorkspaceFileExternal(X):e.page.files.fileWorkbench.openFile(X)),onHtml:e.page.aside.openHtmlAside,onDownload:A[8]||(A[8]=X=>e.page.files.downloadWorkspaceFile(X)),onFailure:A[9]||(A[9]=(X,oe)=>e.page.files.reportWorkspaceFileFailure(X,oe)),onNotice:A[10]||(A[10]=(X,oe)=>e.page.application.notice(X,oe)),onRetryWatch:e.page.application.retryWorkspaceWatch},null,8,["service","visible","watch-status","workspace-path","local-file-manager-enabled","mobile-viewport","onHtml","onRetryWatch"])),[[At,C.value]]):ue("",!0),ve==="search"&&e.page.selection.workspaceTarget!==void 0?Me((f(),ye(Eb,{key:`${e.page.selection.workspaceTarget.nodeId}:${e.page.selection.workspaceTarget.workspaceId}`,ref:X=>e.page.files.setWorkspaceSearchPanel(X),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:A[11]||(A[11]=(X,oe,ge,le)=>le?e.page.files.openWorkspaceFileExternal(X,oe,ge):e.page.files.fileWorkbench.openFile(X,oe,ge))},null,8,["service","enabled","node-id","workspace-id"])),[[At,g.value]]):ue("",!0),(b(ve)==="files"||b(ve)==="search")&&!e.page.files.filesReady?(f(),L("p",{key:2,class:je(["workspace-tool-unavailable",{"workspace-tool-loading":y.value}]),role:y.value?"status":void 0},[y.value?(f(),ye(De,{key:0,name:"loading-action"})):ue("",!0),we(" "+M(y.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,ZT)):ue("",!0),b(ve)==="changes"||b(ve)==="history"?(f(),L("section",{key:JSON.stringify([e.page.selection.workspaceTarget?.nodeId,e.page.selection.workspaceTarget?.workspaceId]),class:"workspace-git-panel"},[e.page.files.filesReady?(f(),L(qe,{key:1},[b(ve)==="changes"?(f(),ye(Gk,{key:0,service:e.page.files.workspaceGit,target:e.page.selection.workspaceTarget,"watch-status":e.page.application.workspaceWatchTopicStatus.changes,onRetryWatch:A[12]||(A[12]=X=>e.page.application.retryWorkspaceWatch()),onOpen:e.page.files.openWorkspaceGitChange,onNotice:e.page.application.notice},null,8,["service","target","watch-status","onOpen","onNotice"])):(f(),ye(pb,{key:1,service:e.page.files.workspaceGit,onOpen:e.page.files.openWorkspaceHistoryDiff,onNotice:e.page.application.notice},null,8,["service","onOpen","onNotice"]))],64)):(f(),L("p",{key:0,class:je(["empty",{"workspace-tool-loading":y.value}]),role:y.value?"status":void 0},[y.value?(f(),ye(De,{key:0,name:"loading-action"})):ue("",!0),we(" "+M(y.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,eE))])):ue("",!0)]),session:Z(()=>[B(nl,{controller:e.page.aside.asidePaneController,"aside-ready":e.page.aside.asideState?.active!==void 0,"tree-supported":e.page.aside.asideSupported,"tree-open-session-id":W.value?.sessionId,"tree-summaries":e.page.sessionList.sessionNavigationSnapshot?.summaries,"tree-status":T.value,onOpenTree:D,onOpenSurface:S,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(()=>[j("div",{ref_key:"terminalMount",ref:d,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,XT)),[[At,p.value]]):ue("",!0)]),_:1},8,["css"])],6)),[[At,e.page.resources.workspaceHost?.connected!==!1]]):ue("",!0)],64)):ue("",!0),(f(),ye(ra,{to:d.value??"body",disabled:d.value===void 0},[(f(!0),L(qe,null,Xe(e.page.selection.workspaceTabs,ve=>Me((f(),L("div",{key:ve.id,tabindex:"-1",inert:!m.value,class:"terminal-dock"},[B(AS,{"error-message":o(lt),embedded:"",ref_for:!0,ref:X=>{X===null?e.page.terminal.terminalDocks.delete(ve.id):e.page.terminal.terminalDocks.set(ve.id,X)},"node-id":ve.nodeId,direct:e.page.terminal.terminalDirectClient,"workspace-id":ve.workspaceId,"csrf-token":e.page.identity.csrfToken,"renew-csrf-token":e.page.identity.renewCsrfToken,enabled:e.page.application.view==="nodes"&&ve.id===e.page.selection.activeWorkspaceTabId&&e.page.terminal.terminalReady,capability:e.page.resources.nodeManifest?.terminal,"node-os-release":e.page.resources.nodes.find(X=>X.id===ve.nodeId)?.metadata?.osRelease,visible:e.page.application.view==="nodes"&&ve.id===e.page.selection.activeWorkspaceTabId&&e.page.terminal.terminalReady&&m.value,"mobile-mode":e.page.layout.mobileViewport,active:e.page.application.view==="nodes"&&ve.id===e.page.selection.activeWorkspaceTabId,onCollapse:A[14]||(A[14]=X=>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,tE)),[[At,m.value&&ve.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(),ye(FC,{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":A[15]||(A[15]=ve=>e.page.hosted.hostedConversationMobileFilesOpen=ve),"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"?Dt(U.$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":A[16]||(A[16]=ve=>e.page.identity.newPassword=ve),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:A[17]||(A[17]=ve=>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(),L(qe,{key:3},[Dt(U.$slots,"management-notice",{},void 0,!0),(f(),ye(hr(s.value.component),_a({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)):ue("",!0),W.value?(f(),ye(HT,{key:W.value.sessionId,anchor:W.value.anchor,"session-id":W.value.sessionId,title:W.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:w,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"])):ue("",!0)],2)}}}),Cc=ut(nE,[["__scopeId","data-v-e0f1b0e8"]]),aE={key:0,class:"workspace-picker-ownership"},oE={key:0},rE={key:1},iE={key:3},sE=ot({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=$([]),s=$(),i=_(()=>{if(n.nodeOwnership?.ownerType!=="ORGANIZATION")return[];const u=n.nodeOwnership.ownerOrganizationId,y=new Map;for(const p of r.value){if(p.parentOrganizationId===null)continue;const m=y.get(p.parentOrganizationId)??[];m.push(p.id),y.set(p.parentOrganizationId,m)}const k=new Set([u]),T=[u];for(;T.length>0;)for(const p of y.get(T.shift())??[])k.has(p)||(k.add(p),T.push(p));return r.value.filter(p=>k.has(p.id))}),l=_(()=>n.nodeOwnership?.ownerType==="ORGANIZATION"&&n.workspaceCreatable===!0&&n.nodeManageable===!1),d=_(()=>l.value||n.nodeOwnership?.ownerType!=="ORGANIZATION"||n.role!=="MEMBER"&&s.value!==void 0);Ge(()=>n.nodeOwnership,u=>{s.value=u?.ownerType==="ORGANIZATION"?u.ownerOrganizationId:void 0},{immediate:!0}),Ge(()=>n.enterprise,async u=>{if(!(!u||n.role==="MEMBER"))try{r.value=(await n.request("/api/organizations")).organizations}catch{r.value=[]}},{immediate:!0});function v(){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(u,y)=>{const k=Vn,T=yn;return f(),ye(hc,_a(u.$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":!d.value,onRegister:v}),{ownership:Z(()=>[e.enterprise?(f(),L("div",aE,[j("span",null,M(o(c)("generated.workspaceRegistrationPicker.resourceOwner")),1),e.nodeOwnership?.ownerType!=="ORGANIZATION"?(f(),L("strong",oE,M(o(c)("generated.workspaceRegistrationPicker.personal")),1)):l.value?(f(),L("strong",rE,M(o(is)(r.value,e.nodeOwnership.ownerOrganizationId)),1)):(f(),ye(T,{key:2,modelValue:s.value,"onUpdate:modelValue":y[0]||(y[0]=p=>s.value=p),disabled:e.role==="MEMBER","clear-icon":o(Be)("clear-input"),"suffix-icon":o(Be)("chevron-down")},{default:Z(()=>[(f(!0),L(qe,null,Xe(i.value,p=>(f(),ye(k,{key:p.id,value:p.id,label:o(is)(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(),L("small",iE,M(o(c)("generated.workspaceRegistrationPicker.mEMBERUsersCannotCreateOrganizationWorkspaces")),1)):ue("",!0)])):ue("",!0)]),_:1},16,["model-value","directory","selected-path","pending-directory-name","loading-directory","loading","node-ready","selected-path-valid","registration-disabled"])}}}),lE=ut(sE,[["__scopeId","data-v-1d694991"]]),cE=ot({__name:"WorkbenchSurface",props:{page:{}},setup(e){const n=wr({loader:()=>kr(()=>import("./SettingsContent-t4Hhk6bN.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:()=>hl(yl,{loading:!0,variant:"page","aria-label":c("common.loading")})},delay:0});return(a,r)=>{const s=Ar;return f(),ye(Cc,{page:e.page},{"workspace-registration":Z(()=>[B(lE,{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(),ye(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"])):ue("",!0)]),_:1},8,["page"])}}}),dE={class:"gate-panel","aria-labelledby":"login-title"},uE=["aria-label"],vE=["src"],fE={id:"login-title"},pE={class:"lede"},gE=ot({__name:"LoginPage",props:{loading:{type:Boolean},logoUrl:{}},emits:["login"],setup(e,{emit:t}){const n=t,a=$(""),r=$(""),{t:s}=Pn();function i(){n("login",{username:a.value,password:r.value}),r.value=""}return(l,d)=>(f(),L("section",dE,[j("div",{class:"login-brand","aria-label":o(s)("common.productName")},[j("img",{src:e.logoUrl,alt:""},null,8,vE),j("strong",null,M(o(s)("common.productName")),1)],8,uE),j("h1",fE,M(o(s)("auth.title")),1),j("p",pE,M(o(s)("auth.summary")),1),j("form",{class:"auth-form",onSubmit:it(i,["prevent"])},[j("label",null,[we(M(o(s)("auth.username")),1),B(o(Vt),{modelValue:a.value,"onUpdate:modelValue":d[0]||(d[0]=v=>a.value=v),autocomplete:"username"},null,8,["modelValue"])]),j("label",null,[we(M(o(s)("auth.password")),1),B(o(Vt),{modelValue:r.value,"onUpdate:modelValue":d[1]||(d[1]=v=>r.value=v),type:"password",autocomplete:"current-password"},null,8,["modelValue"])]),B(o(St),{loading:e.loading,"native-type":"submit",type:"primary","loading-icon":o(Be)("loading-action")},{default:Z(()=>[we(M(o(s)("auth.login")),1)]),_:1},8,["loading","loading-icon"])],32),Dt(l.$slots,"identity-extension",{},void 0,!0)]))}}),mE=ut(gE,[["__scopeId","data-v-7bb17748"]]),hE={class:"auth-unavailable","aria-labelledby":"auth-unavailable-title"},yE={class:"brand"},wE=["src"],kE={id:"auth-unavailable-title"},bE={class:"actions"},IE=ot({__name:"AuthenticationUnavailable",props:{loading:{type:Boolean},logoUrl:{}},emits:["retry"],setup(e){const{t,locale:n}=Pn(),a=wl(),r=_(()=>kl(Rf(n.value)??Af,"getting-started/overview"));return(s,i)=>(f(),L("section",hE,[j("div",yE,[j("img",{src:e.logoUrl,alt:""},null,8,wE),j("strong",null,M(o(t)("common.productName")),1)]),j("h1",kE,M(o(t)("auth.unavailableTitle")),1),j("p",null,M(o(t)("auth.unavailableSummary")),1),j("div",bE,[B(o(St),{type:"primary",loading:e.loading,"loading-icon":o(Be)("loading-action"),onClick:i[0]||(i[0]=l=>s.$emit("retry"))},{default:Z(()=>[we(M(o(t)("auth.retry")),1)]),_:1},8,["loading","loading-icon"]),o(a)?(f(),ye(o(Ir),{key:0,href:r.value},{default:Z(()=>[we(M(o(t)("auth.help")),1)]),_:1},8,["href"])):ue("",!0)])]))}}),SE=ut(IE,[["__scopeId","data-v-46fb6879"]]);function CE(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 TE(e,t){return e===t?1e3:e.startsWith(t)?700:e.includes(t)?500:CE(e,t)?100:void 0}function Da(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,d)=>{const v=TE(d,s);return v===void 0?l:Math.max(l??v,v)},void 0);if(i===void 0)return;r+=i}return r}function EE(e,t){return e.kind==="WORKSPACE"?Da([e.workspaceLabel],t):e.kind==="SYMBOL"?Da([e.symbol,e.path],t):e.kind==="SESSION"?Da([e.title],t):e.score!==void 0?e.score:Da([e.name,e.path],t)}function al(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=EE(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=al(n.candidate)-al(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 RE(e,t,n){const a=e.findIndex(r=>r.nodeId===t&&r.workspaceId===n);return a<0?void 0:a}function AE(e){const t=$([]),n=$([]),a=$([]),r=$(null),s=()=>Un({phase:"IDLE",error:void 0,truncated:!1}),i=s(),l=s(),d=s(),v=s();let u,y,k,T,p=!1;const m=new Map;function S(A,h="IDLE"){A.phase=h,A.error=void 0,A.truncated=!1}function N(A){return!p&&y===A&&!A.controller.signal.aborted&&e.open()&&A.query===e.query().trim()&&A.tab===e.tab()&&A.nodeId===e.nodeId()&&A.workspaceId===e.workspaceId()}function I(A,h){return N(A)?new Promise(F=>{const K=A.controller.signal,ve=ge=>{clearTimeout(oe),K.removeEventListener("abort",X),F(ge&&N(A))},X=()=>ve(!1),oe=setTimeout(()=>ve(!0),h);K.addEventListener("abort",X,{once:!0})}):Promise.resolve(!1)}function b(){u!==void 0&&clearTimeout(u),u=void 0,y!==void 0&&(clearTimeout(y.deadline),y.controller.abort(),y=void 0)}function C(){b(),k?.abort(),k=void 0,T!==void 0&&clearTimeout(T),T=void 0,[i,l,d,v].forEach(A=>S(A))}function g(A){if(N(A)){for(const h of[l,d,v])(h.phase==="SEARCHING"||h.phase==="BUILDING")&&(h.phase="TIMED_OUT");A.controller.abort()}}async function R(A,h){A.pending+=1;try{await h()}finally{A.pending-=1,A.pending===0&&clearTimeout(A.deadline)}}function W(){const A=y!==void 0&&y.query===e.query().trim()&&y.nodeId===e.nodeId()&&y.workspaceId===e.workspaceId()&&y.tab===e.tab();if(b(),A||(n.value=[],a.value=[]),r.value=null,[l,d,v].forEach(oe=>S(oe)),p||!e.open()||e.query().trim()==="")return;const h=e.tab(),F=e.nodeId()!==void 0&&e.workspaceId()!==void 0,K=(h==="ALL"||h==="FILE")&&e.filesReady()&&F,ve=/^-*[\p{L}_$][\p{L}\p{N}_$-]*$/u.test(e.query().trim()),X=(h==="ALL"||h==="SYMBOL")&&e.symbolsReady()&&F&&ve;K?l.phase="SEARCHING":h==="FILE"&&(l.phase="UNAVAILABLE"),X?d.phase="SEARCHING":h==="SYMBOL"&&(d.phase=ve?"UNAVAILABLE":"INVALID"),!(!K&&!X)&&(u=setTimeout(()=>{if(u=void 0,p||!e.open()||!F)return;const oe={controller:new AbortController,nodeId:e.nodeId(),workspaceId:e.workspaceId(),query:e.query().trim(),tab:e.tab(),pending:0,deadline:setTimeout(()=>g(oe),e.deadlineMs??3e4)};y=oe,K&&R(oe,()=>w(oe)),X&&R(oe,async()=>{oe.tab==="ALL"&&!await I(oe,180)||await Y(oe)})},120))}async function w(A){const h=ir(A.query,void 0,e.origin()),F=new URLSearchParams({nodeId:A.nodeId,q:h?.path??A.query});F.set("waitForIndex","false");try{for(let K=0;N(A);K+=1){const ve=await e.http.request(`/api/workspaces/${encodeURIComponent(A.workspaceId)}/files/search?${F}`,{signal:A.controller.signal});if(!N(A))return;if(!Array.isArray(ve.files?.entries))throw new Yt("NODE_RESPONSE_INVALID","The Node returned an invalid file search result.");if(ve.files.indexState==="BUILDING"){if(l.phase="BUILDING",!await I(A,Math.min(250*2**K,2e3)))return;continue}n.value=ve.files.entries.flatMap((X,oe)=>X.kind==="FILE"?[{kind:"FILE",key:`file\0${A.nodeId}\0${A.workspaceId}\0${X.path}`,nodeId:A.nodeId,workspaceId:A.workspaceId,path:X.path,name:X.name,...X.score===void 0?{}:{score:X.score},...h?.line===void 0?{}:{line:h.line},...h?.column===void 0?{}:{column:h.column},stableIndex:oe}]:[]),r.value=ve.files.nextCursor??null,l.truncated=ve.files.truncated===!0||r.value!==null,l.phase="READY";return}}catch(K){N(A)&&(l.phase="FAILED",l.error=K)}}function D(A,h){return h.targets.map((F,K)=>({kind:"SYMBOL",source:"DEFINITION",key:`symbol\0definition\0${F.path}\0${F.line}\0${A.query}`,nodeId:A.nodeId,workspaceId:A.workspaceId,symbol:A.query,path:F.path,line:F.line,detail:[F.kind,F.scope].filter(Boolean).join(" · ")||F.preview,stableIndex:K}))}function E(A,h){const F=a.value.filter(K=>K.source==="DEFINITION");a.value=[...F,...h.references.map((K,ve)=>({kind:"SYMBOL",source:"REFERENCE",key:`symbol\0reference\0${K.path}\0${K.line}\0${K.column}\0${A.query}`,nodeId:A.nodeId,workspaceId:A.workspaceId,symbol:A.query,path:K.path,line:K.line,column:K.column,detail:K.preview,stableIndex:F.length+ve}))],v.truncated=h.referenceTruncated===!0}function H(A,h){return h.state==="UNAVAILABLE"?(A.phase="UNAVAILABLE",!0):h.state!=="FAILED"?!1:h.failureCode==="SYMBOL_INDEX_LIMIT_EXCEEDED"?(A.phase="LIMITED",!0):(A.phase="FAILED",A.error=xa({error:h.failureCode??"SYMBOL_INDEX_BUILD_FAILED"},503),!0)}async function J(A,h){const F=new URLSearchParams({nodeId:A.nodeId,path:".",symbol:A.query,references:h?"1":"0"}),K=await e.http.request(`/api/workspaces/${encodeURIComponent(A.workspaceId)}/symbols/definition?${F}`,{signal:A.controller.signal});if(!K.definition||!Array.isArray(K.definition.targets)||!Array.isArray(K.definition.references))throw new Yt("NODE_RESPONSE_INVALID","The Node returned an invalid symbol result.");return K.definition}async function Y(A){try{for(let h=0;N(A);h+=1){const F=await J(A,!1);if(!N(A)||H(d,F))return;if((F.targets.length>0||F.state==="READY")&&(a.value=D(A,F)),d.truncated=F.truncated===!0,F.state==="READY"){d.phase="READY",v.phase="SEARCHING",await q(A);return}if(d.phase="BUILDING",!await I(A,Math.min(250*2**h,2e3)))return}}catch(h){N(A)&&(d.phase="FAILED",d.error=h)}}async function q(A){try{for(let h=0;N(A);h+=1){const F=await J(A,!0);if(!N(A)||H(v,F))return;if((F.references.length>0||F.state==="READY")&&E(A,F),F.state==="READY"){v.phase="READY";return}if(v.phase="BUILDING",!await I(A,Math.min(250*2**h,2e3)))return}}catch(h){N(A)&&(v.phase="FAILED",v.error=h)}}function Q(A,h,F){const K=RE(e.workspaceTabs(),A.id,h.id);return{kind:"WORKSPACE",key:`workspace\0${A.id}\0${h.id}`,nodeId:A.id,nodeLabel:A.displayName?.trim()||A.registeredAddress||A.id,workspaceId:h.id,workspaceLabel:h.displayName?.trim()||h.path,path:h.path,...K===void 0?{}:{openTabIndex:K},stableIndex:F}}async function V(){if(k?.abort(),T!==void 0&&clearTimeout(T),p||!e.open())return;S(i);const A=e.nodes().filter(ae=>ae.connected&&!ae.disabled),h=new Map(A.map(ae=>[ae.id,ae])),F=new Map;e.workspaceTabs().forEach((ae,P)=>{const z=h.get(ae.nodeId);if(z!==void 0){const ce=Q(z,{id:ae.workspaceId,displayName:ae.label,path:ae.label},P);F.set(ce.key,ce)}});function K(ae,P,z){P.forEach((ce,te)=>{const x=Q(ae,ce,e.workspaceTabs().length+z*1e5+te),ee=F.get(x.key);F.set(x.key,ee?.openTabIndex===void 0?x:{...x,stableIndex:ee.stableIndex})}),t.value=[...F.values()]}const ve=[];if(A.forEach((ae,P)=>{const z=m.get(ae.id);z!==void 0&&Date.now()-z.at<3e4?K(ae,z.entries,P):ve.push({node:ae,index:P})}),t.value=[...F.values()],ve.length===0){i.phase="READY";return}const X=new AbortController;k=X;const oe=()=>!p&&k===X&&!X.signal.aborted&&e.open();i.phase="SEARCHING",T=setTimeout(()=>{oe()&&(i.phase="TIMED_OUT",X.abort())},e.deadlineMs??3e4);let ge=0;const le=async()=>{for(;oe();){const ae=ve[ge++];if(ae===void 0)return;try{const P=await e.http.request(`/api/workspaces?nodeId=${encodeURIComponent(ae.node.id)}`,{signal:X.signal});if(!oe())return;if(!Array.isArray(P.workspaces))throw new Yt("NODE_RESPONSE_INVALID","The Node returned an invalid Workspace list.");m.delete(ae.node.id),m.set(ae.node.id,{at:Date.now(),entries:P.workspaces}),m.size>32&&m.delete(m.keys().next().value),K(ae.node,P.workspaces,ae.index)}catch(P){oe()&&(i.error=P)}}};await Promise.all(Array.from({length:Math.min(4,ve.length)},le)),k===X&&(clearTimeout(T),T=void 0,oe()&&(i.phase=i.error===void 0?"READY":"FAILED"))}function U(){p=!0,C(),m.clear()}return{workspaces:t,files:n,symbols:a,fileCursor:r,workspaceStatus:i,fileStatus:l,symbolStatus:d,referenceStatus:v,scheduleSearch:W,loadWorkspaces:V,cancel:C,dispose:U}}const NE=["aria-label"],DE=["aria-selected","onClick"],PE=["aria-label","placeholder"],OE=["aria-selected"],LE=["onClick"],WE={class:"entry-main"},ME={class:"entry-name"},xE={key:0},$E={key:0},FE={key:0},UE={key:1},VE={key:2},qE={key:1,class:"empty",role:"status"},HE={key:2,class:"empty"},BE={class:"quick-open-statuses",role:"status","aria-live":"polite"},GE=["data-source"],zE={key:0},KE={class:"mar-disclosure-summary"},jE=ot({__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=$(),s=$(),i=$("ALL"),l=$(""),d=$(),v=$(!1),u=Ja(),y=AE({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:u}),{workspaces:k,files:T,symbols:p,workspaceStatus:m,fileStatus:S,symbolStatus:N,referenceStatus:I}=y,b=y.scheduleSearch,C=y.loadWorkspaces,g=oe=>oe.phase==="SEARCHING"||oe.phase==="BUILDING",R=_(()=>g(m)),W=_(()=>g(S)),w=_(()=>g(N)),D=_(()=>ir(l.value.trim(),void 0,typeof window>"u"?"http://localhost":window.location.origin)?.path??l.value),E=_(()=>n.sessions.map((oe,ge)=>({kind:"SESSION",key:`session\0${oe.id}`,sessionId:oe.id,title:n.sessionTitle(oe),runner:oe.runner,stableIndex:ge}))),H=_(()=>{const oe=Qn(k.value,D.value),ge=Qn(T.value,D.value),le=Qn(p.value,D.value),ae=Qn(E.value,D.value);return i.value==="WORKSPACE"?oe:i.value==="SESSION"?ae:i.value==="SYMBOL"?le:i.value==="FILE"?ge:Qn([...oe,...ae,...le,...ge],D.value)}),J=_(()=>{const oe=H.value.findIndex(ge=>ge.key===d.value);return oe<0?0:oe}),Y=_(()=>(i.value==="ALL"||i.value==="WORKSPACE")&&R.value||(i.value==="ALL"||i.value==="FILE")&&W.value||(i.value==="ALL"||i.value==="SYMBOL")&&w.value),q=_(()=>{const oe=[];return(i.value==="ALL"||i.value==="WORKSPACE")&&oe.push({kind:"WORKSPACE",label:"generated.quickOpenDialog.workspace",status:m}),(i.value==="ALL"||i.value==="FILE")&&oe.push({kind:"FILE",label:"generated.quickOpenDialog.file",status:S}),(i.value==="ALL"||i.value==="SYMBOL")&&oe.push({kind:"SYMBOL",label:"generated.quickOpenDialog.definition",status:N},{kind:"REFERENCE",label:"generated.quickOpenDialog.reference",status:I}),oe.filter(({status:ge})=>ge.phase!=="IDLE"&&(ge.phase!=="READY"||ge.truncated))});function Q(oe){return oe.phase==="READY"&&oe.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"}[oe.phase])}function V(oe){oe==="WORKSPACE"?C():b()}Ge(H,oe=>{oe.length===0?d.value=void 0:oe.some(ge=>ge.key===d.value)||(d.value=oe[0]?.key)}),Ge(()=>n.open,oe=>{if(!oe){U();return}i.value="ALL",l.value="",v.value=!1,T.value=[],p.value=[],d.value=void 0,C(),gt(()=>r.value?.focus())}),Ge(l,b),Ge(i,()=>{d.value=H.value[0]?.key,b()}),Ge([()=>n.nodeId,()=>n.workspaceId,()=>n.filesReady,()=>n.symbolsReady],b);function U(){y.cancel()}function A(){document.visibilityState==="hidden"?U():n.open&&(C(),b())}let h=[];Ot(()=>{const oe=()=>r.value?.closest('[role="dialog"]')??void 0;h=[Ft.register({command:"quickOpen.choose",scope:"overlay",priority:130,owner:()=>r.value,keys:Ji.choose,when:()=>n.open&&!v.value&&H.value[J.value]!==void 0,execute:ge=>(F(void 0,ge.ctrlKey||ge.metaKey),"HANDLED")}),Ft.register({command:"quickOpen.dismiss",scope:"overlay",priority:130,owner:oe,keys:Ji.dismiss,when:()=>n.open,execute:()=>(a("close"),"HANDLED")})],typeof document<"u"&&typeof document.addEventListener=="function"&&document.addEventListener("visibilitychange",A)}),wt(()=>{h.forEach(oe=>oe()),y.dispose(),typeof document<"u"&&typeof document.removeEventListener=="function"&&document.removeEventListener("visibilitychange",A)});function F(oe=H.value[J.value],ge=!1){if(!(oe===void 0||v.value)&&!((oe.kind==="FILE"||oe.kind==="SYMBOL")&&(oe.nodeId!==n.nodeId||oe.workspaceId!==n.workspaceId))){if(v.value=!0,a("close",!0),oe.kind==="FILE"||oe.kind==="SYMBOL"){a("openFile",oe.path,oe.line,oe.column,ge);return}if(oe.kind==="SESSION"){n.openSession(oe.sessionId);return}n.openWorkspace(oe.nodeId,oe.workspaceId)}}function K(oe){const le=(ir(l.value.trim(),void 0,typeof window>"u"?"http://localhost":window.location.origin)?.path??l.value.trim()).toLocaleLowerCase().split(/\s+/u).filter(Boolean),ae=oe.toLocaleLowerCase(),P=new Set;for(const ce of le){let te=0;const x=[];for(const ee of ce){const se=ae.indexOf(ee,te);if(se<0){x.length=0;break}x.push(se),te=se+1}for(const ee of x)P.add(ee)}const z=[];for(let ce=0;ce<oe.length;ce+=1){const te={text:oe[ce]??"",matched:P.has(ce)},x=z.at(-1);x?.matched===te.matched?x.text+=te.text:z.push(te)}return z}function ve(oe){d.value=oe,gt(()=>{s.value?.querySelector('li[aria-selected="true"]')?.scrollIntoView({block:"nearest"})})}function X(oe){oe.isComposing||oe.keyCode===229||(oe.key==="ArrowDown"&&H.value.length>0?(oe.preventDefault(),ve(H.value[(J.value+1)%H.value.length]?.key)):oe.key==="ArrowUp"&&H.value.length>0&&(oe.preventDefault(),ve(H.value[(J.value-1+H.value.length)%H.value.length]?.key)))}return(oe,ge)=>{const le=St,ae=Zt;return e.open?(f(),ye(ae,{key:0,onVnodeMounted:o(Jt),onVnodeBeforeUnmount:o(Qt),"model-value":e.open,title:o(c)("generated.quickOpenDialog.quickOpen"),class:je(["quick-open-dialog",{"has-status-notices":q.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(Be)("close")},{default:Z(()=>[j("div",{class:"quick-open-tabs",role:"tablist","aria-label":o(c)("generated.quickOpenDialog.resultTypes")},[(f(),L(qe,null,Xe(["ALL","WORKSPACE","SESSION","FILE","SYMBOL"],P=>j("button",{key:P,type:"button",role:"tab","aria-selected":i.value===P,onClick:z=>i.value=P},M(o(c)(`generated.quickOpenDialog.${P.toLocaleLowerCase()}`)),9,DE)),64))],8,NE),Me(j("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:X},null,40,PE),[[Nf,l.value]]),H.value.length>0?(f(),L("ul",{key:0,ref_key:"results",ref:s,class:"quick-open-results",role:"listbox"},[(f(!0),L(qe,null,Xe(H.value,(P,z)=>(f(),L("li",{key:P.key,role:"option","aria-selected":z===J.value},[j("button",{type:"button",onClick:ce=>F(P,ce.ctrlKey||ce.metaKey)},[B(hn,{name:P.kind==="WORKSPACE"?P.workspaceLabel:P.kind==="FILE"?P.name:P.kind==="SESSION"?P.title:P.path},null,8,["name"]),j("span",WE,[j("span",ME,[(f(!0),L(qe,null,Xe(K(P.kind==="FILE"?P.name:P.kind==="SYMBOL"?P.symbol:P.kind==="SESSION"?P.title:P.workspaceLabel),(ce,te)=>(f(),L("span",{key:te,class:je({"quick-open-match":ce.matched})},M(ce.text),3))),128))]),P.kind!=="SESSION"?(f(),L("code",xE,[(f(!0),L(qe,null,Xe(K(P.path),(ce,te)=>(f(),L("span",{key:te,class:je({"quick-open-match":ce.matched})},M(ce.text),3))),128)),P.kind==="SYMBOL"?(f(),L("span",$E,":"+M(P.line)+M(P.column===void 0?"":`:${P.column}`),1)):ue("",!0)])):ue("",!0)]),j("span",{class:je(["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"}])},M(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(),L("small",FE,M(P.nodeLabel),1)):P.kind==="SESSION"?(f(),L("small",UE,M(P.runner),1)):P.kind==="SYMBOL"&&P.detail?(f(),L("small",VE,M(P.detail),1)):ue("",!0)],8,LE)],8,OE))),128))],512)):Y.value?(f(),L("p",qE,[B(De,{name:"loading-action"}),we(" "+M(o(c)("generated.quickOpenDialog.searching")),1)])):q.value.length===0?(f(),L("p",HE,M(o(c)("generated.quickOpenDialog.noMatches")),1)):ue("",!0),j("div",BE,[(f(!0),L(qe,null,Xe(q.value,P=>(f(),L("div",{key:P.kind,class:"quick-open-status","data-source":P.kind},[j("span",null,M(o(c)(P.label))+": "+M(Q(P.status)),1),P.status.error!==void 0?(f(),L("details",zE,[j("summary",KE,[B(De,{class:"mar-disclosure-icon",name:"chevron-right"}),we(M(o(c)("generated.quickOpenDialog.details")),1)]),j("pre",null,M(o(lt)(P.status.error)),1)])):ue("",!0),P.status.phase==="FAILED"||P.status.phase==="TIMED_OUT"?(f(),ye(le,{key:1,link:"",onClick:z=>V(P.kind)},{default:Z(()=>[we(M(o(c)("generated.quickOpenDialog.retry")),1)]),_:1},8,["onClick"])):ue("",!0)],8,GE))),128))])]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","model-value","title","class","close-icon"])):ue("",!0)}}}),_E=ut(jE,[["__scopeId","data-v-627aea6d"]]),YE=["aria-label"],QE={key:0,class:"recent-sessions-empty"},JE={key:1,class:"recent-sessions-list"},XE=["onClick"],ZE={class:"recent-session-heading"},eR={class:"recent-session-title"},tR={key:0,class:"recent-session-unread mar-unread-label"},nR=["datetime"],aR=ot({__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 d=sa,v=Tt("tooltip");return f(),L("section",{class:je(["recent-sessions-panel",{"drawer-mode":e.mobileMode}]),"aria-label":o(c)("workbenchNotificationCenter.recentSessions")},[B(gc,{class:"recent-session-groups","model-value":e.sessionGroup,"onUpdate:modelValue":l[0]||(l[0]=u=>n("selectGroup",u))},null,8,["model-value"]),e.runs.length===0?(f(),L("p",QE,M(o(c)("workbenchNotificationCenter.noRecentSessions")),1)):(f(),L("ul",JE,[(f(!0),L(qe,null,Xe(e.runs,u=>(f(),L("li",{key:`${u.nodeId}:${u.runId}`},[Me((f(),L("button",{type:"button",onClick:y=>n("openRecentRun",u)},[j("span",ZE,[j("span",eR,M(o(c)("workbenchNotificationCenter.recentRunTitle",{value0:u.workspaceName??u.workspaceId,value1:u.sessionTitle})),1),e.hasUnreadSession(u.nodeId,u.workspaceId,u.sessionId)?(f(),L("span",tR,M(o(c)("sessionGroups.unread")),1)):ue("",!0)]),B(d,{size:"small",type:s(u)},{default:Z(()=>[we(M(o(c)(a[r(u)])),1)]),_:2},1032,["type"]),Me((f(),L("small",null,[we(M(u.userMessage),1)])),[[v,u.userMessage]]),j("time",{datetime:new Date(o(Ba)(u)).toISOString()},M(e.runTime(u)),9,nR)],8,XE)),[[v,o(c)("workbenchNotificationCenter.recentRunTitle",{value0:u.workspaceName??u.workspaceId,value1:u.sessionTitle})]])]))),128))]))],10,YE)}}}),oR=ut(aR,[["__scopeId","data-v-de885255"]]),rR=["aria-label"],iR={key:0,class:"workbench-notification-toolbar"},sR={class:"workbench-notification-section"},lR=["aria-label"],cR={class:"workbench-upload-size"},dR=["value","max"],uR={class:"workbench-notification-upload-actions"},vR=["aria-label","onClick"],fR={key:1,class:"workbench-notification-empty"},pR={key:2,class:"workbench-notification-list"},gR=["onClick"],mR={class:"workbench-notification-title"},hR={key:0,class:"notification-unread-label mar-unread-label"},yR=["datetime"],wR=["aria-label","onClick"],kR=ot({__name:"WorkbenchNotificationList",props:{service:{},uploads:{},statusLabel:{type:Function},previewId:{}},emits:["openNotification","retryUpload","cancelUpload","removeUpload"],setup(e,{emit:t}){const n=e,a=t,r=_(()=>n.uploads.filter(i=>["QUEUED","UPLOADING","FAILED","INTERRUPTED"].includes(i.status)&&(n.previewId===void 0||`upload:${i.id}`===n.previewId))),s=_(()=>{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 d=St,v=Tt("tooltip");return f(),L("section",{class:"workbench-notification-content","aria-label":o(c)("generated.workbenchNotificationCenter.notifications")},[e.previewId===void 0?(f(),L("header",iR,[j("span",null,M(o(c)("activityCenter.unreadCount",{count:e.service.unreadCount.value})),1),e.service.unreadCount.value>0?(f(),ye(d,{key:0,class:"workbench-notification-mark-all utility-control",link:"",onClick:l[0]||(l[0]=u=>e.service.markAllRead())},{default:Z(()=>[we(M(o(c)("generated.workbenchNotificationCenter.markAllRead")),1)]),_:1})):ue("",!0)])):ue("",!0),j("div",sR,[r.value.length?(f(),L("section",{key:0,class:"workbench-notification-upload-list","aria-label":o(c)("generated.workbenchNotificationCenter.fileTransfers")},[(f(!0),L(qe,null,Xe(r.value,u=>(f(),L("div",{key:u.id,class:"workbench-notification-upload"},[B(De,{name:"upload"}),j("div",null,[Me((f(),L("strong",null,[we(M(u.name),1)])),[[v,u.name]]),j("small",null,[j("span",cR,M(o(Ha)(u.receivedBytes))+" / "+M(o(Ha)(u.size)),1),we(" · "+M(e.statusLabel(u))+" ",1),u.error?(f(),L(qe,{key:0},[we(" · "+M(u.error),1)],64)):ue("",!0),u.cleanupUnconfirmed?(f(),L(qe,{key:1},[we(" · "+M(o(c)("errors.UPLOAD_CLEANUP_UNCONFIRMED")),1)],64)):ue("",!0)]),j("progress",{value:u.receivedBytes,max:Math.max(u.size,1)},null,8,dR)]),j("div",uR,[u.status==="FAILED"||u.status==="INTERRUPTED"?(f(),ye(d,{key:0,class:"utility-control",link:"",onClick:y=>a("retryUpload",u)},{default:Z(()=>[we(M(u.file===void 0?o(c)("generated.workbenchNotificationCenter.resume"):o(c)("generated.workbenchNotificationCenter.retry")),1)]),_:2},1032,["onClick"])):ue("",!0),u.status==="FAILED"||u.status==="INTERRUPTED"?(f(),L("button",{key:1,type:"button",class:"icon-button utility-control workbench-notification-delete","aria-label":o(c)("generated.workbenchNotificationCenter.delete",{value0:u.name}),onClick:y=>a("removeUpload",u)},[B(De,{name:"delete"})],8,vR)):(f(),ye(d,{key:2,class:"utility-control",link:"",onClick:y=>a("cancelUpload",u)},{default:Z(()=>[we(M(o(c)("generated.workbenchNotificationCenter.cancel")),1)]),_:1},8,["onClick"]))])]))),128))],8,lR)):ue("",!0),s.value.length===0&&r.value.length===0?(f(),L("p",fR,M(o(c)("generated.workbenchNotificationCenter.noNotifications")),1)):(f(),L("ul",pR,[(f(!0),L(qe,null,Xe(s.value,u=>(f(),L("li",{key:u.id,class:je({unread:!u.read})},[j("button",{type:"button",onClick:y=>a("openNotification",u)},[j("span",mR,[j("strong",null,M(u.title),1),u.read?ue("",!0):(f(),L("span",hR,M(o(c)("generated.workbenchNotificationCenter.unread")),1))]),j("small",null,M(u.message),1),j("time",{datetime:new Date(u.updatedAt).toISOString()},M(o(Kt)(u.updatedAt)),9,yR)],8,gR),j("button",{class:"icon-button utility-control workbench-notification-delete","aria-label":o(c)("generated.workbenchNotificationCenter.deleteNotification",{value0:u.title}),type:"button",onClick:y=>e.service.remove(u.id)},[B(De,{name:"delete"})],8,wR)],2))),128))]))])],8,rR)}}}),Tc=ut(kR,[["__scopeId","data-v-bfe2757c"]]),bR=["aria-label"],IR={key:0,class:"activity-unread-count mar-activity-count-badge","aria-hidden":"true"},SR=["id","aria-labelledby","aria-label"],CR={class:"activity-running-count"},TR=["id","aria-labelledby"],ER=ot({__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-${ml()}`,s=_(()=>[{id:"recent-sessions",label:c("workbenchNotificationCenter.recentSessions")},{id:"notifications",label:c("generated.workbenchNotificationCenter.notifications"),description:c("activityCenter.unreadCount",{count:n.service.unreadCount.value})}]),i=_(()=>n.service.recentRuns.value.filter(k=>(k.sessionGroup??"MAIN")===n.sessionGroup)),l=_(()=>n.service.recentRuns.value.filter(k=>Dn(k.status)).length),d=$(Date.now()),v=setInterval(()=>{d.value=Date.now()},1e3);wt(()=>clearInterval(v));function u(k){return Dn(k.status)?c("workbenchNotificationCenter.runningElapsed",{duration:om(d.value-k.startedAt),startedAt:Kt(k.startedAt)}):Kt(Ba(k))}function y(k){(k==="recent-sessions"||k==="notifications")&&a("update:page",k)}return(k,T)=>(f(),L("section",{class:je(["workbench-activity-panel",{"mobile-mode":e.mobileMode}]),"aria-label":o(c)("activityCenter.title")},[B(ql,{class:"activity-tabs",size:"small","activation-mode":"automatic",items:s.value,"active-id":e.page,"id-prefix":r,label:o(c)("activityCenter.title"),onActivate:y},{label:Z(({item:p})=>[j("span",null,M(p.label),1),p.id==="notifications"&&e.service.unreadCount.value>0?(f(),L("span",IR,M(e.service.unreadCount.value>99?"99+":e.service.unreadCount.value),1)):ue("",!0)]),_:1},8,["items","active-id","label"]),Me(j("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(),L(qe,{key:0},[j("p",CR,M(o(c)("activityCenter.runningCount",{count:l.value})),1),B(oR,{runs:i.value,"has-unread-session":e.service.hasUnreadSession,"session-group":e.sessionGroup,"mobile-mode":e.mobileMode,"run-time":u,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)):ue("",!0)],8,SR),[[At,e.page==="recent-sessions"]]),Me(j("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(),ye(Tc,{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"])):ue("",!0)],8,TR),[[At,e.page==="notifications"]])],10,bR))}}),ol=ut(ER,[["__scopeId","data-v-d7d33967"]]),RR=["aria-label","aria-description","aria-keyshortcuts","aria-expanded"],AR={key:0,class:"activity-entry-count mar-activity-count-badge","aria-hidden":"true"},NR={key:1,class:"activity-entry-running mar-icon-status-badge","aria-hidden":"true"},DR=ot({__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=$(),s=$(!1),i=$("recent-sessions"),l=$("MAIN"),d=$(),v=$(!1);let u;const y=_({get:()=>n.mobileMode?n.mobileOpen===!0:s.value,set:g=>{n.mobileMode?a("update:mobileOpen",g):s.value=g}}),k=_({get:()=>v.value||!n.mobileMode&&y.value,set:g=>{g||(m(),n.mobileMode||(y.value=!1))}}),T=_(()=>n.service.recentRuns.value.filter(g=>Dn(g.status)).length),p=_(()=>[c("activityCenter.runningCount",{count:T.value}),c("activityCenter.unreadCount",{count:n.service.unreadCount.value})].join(", "));function m(){u!==void 0&&clearTimeout(u),u=void 0,v.value=!1}Ge(y,g=>{m(),g&&(d.value=void 0,i.value=n.service.unreadCount.value>0?"notifications":"recent-sessions",n.service.load().catch(()=>{}))},{immediate:!0}),Ge(()=>n.service.notificationRevision.value,()=>{if(y.value||n.previewSuppressed)return;const g=n.service.previewNotificationId.value;g!==void 0&&(m(),d.value=g,v.value=!0,u=setTimeout(m,8e3))}),Ge(()=>n.previewSuppressed,g=>{g&&m()}),Ge(()=>n.service.notifications.value,g=>{d.value!==void 0&&!g.some(R=>R.id===d.value)&&m()}),Ge(()=>n.mobileMode,()=>{s.value=!1,m()});function S(){m(),y.value=!y.value}function N(g){m(),y.value=!1,a("openNotification",g)}function I(g){y.value=!1,a("openRecentRun",g)}let b,C;return Ot(()=>{b=Ft.register({command:"activityCenter.toggle",priority:30,scope:"global",keys:Xi,when:()=>!0,execute:g=>(g.repeat||(!n.mobileMode&&!s.value&&r.value?.querySelector("button")?.focus(),S()),"HANDLED")}),C=Ft.register({command:"activityCenter.dismiss",priority:110,scope:"overlay",keys:[{key:"Escape"}],when:()=>k.value,execute:()=>(k.value=!1,"HANDLED")})}),wt(()=>{m(),b?.(),C?.()}),(g,R)=>(f(),L("div",{class:je(["workbench-activity-center",{"mobile-mode":e.mobileMode}])},[j("span",{ref_key:"trigger",ref:r,class:"activity-reference"},[j("button",{class:je(["activity-center-trigger",{active:y.value}]),type:"button","aria-label":o(c)("activityCenter.title"),"aria-description":p.value,"aria-keyshortcuts":o(Xi).map(W=>o(Hp)(W,!0)).join(" "),"aria-expanded":y.value,onClick:it(S,["stop"])},[B(De,{name:"recent-sessions","aria-hidden":"true"}),e.service.unreadCount.value>0?(f(),L("span",AR,M(e.service.unreadCount.value>99?"99+":e.service.unreadCount.value),1)):ue("",!0),T.value>0?(f(),L("span",NR)):ue("",!0)],10,RR)],512),r.value?(f(),ye(o(Sr),{key:0,visible:k.value,"onUpdate:visible":R[8]||(R[8]=W=>k.value=W),"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&&d.value!==void 0,"popper-options":{modifiers:[{name:"preventOverflow",options:{padding:8}}]},persistent:!1,"popper-class":d.value!==void 0?"workbench-activity-popover is-preview":"workbench-activity-popover"},{default:Z(()=>[d.value!==void 0?(f(),ye(Tc,{key:0,class:"activity-preview",service:e.service,uploads:e.uploads,"status-label":e.statusLabel,"preview-id":d.value,onOpenNotification:N,onRetryUpload:R[0]||(R[0]=W=>a("retryUpload",W)),onCancelUpload:R[1]||(R[1]=W=>a("cancelUpload",W)),onRemoveUpload:R[2]||(R[2]=W=>a("removeUpload",W))},null,8,["service","uploads","status-label","preview-id"])):e.mobileMode?ue("",!0):(f(),ye(ol,{key:1,page:i.value,"onUpdate:page":R[3]||(R[3]=W=>i.value=W),"session-group":l.value,"onUpdate:sessionGroup":R[4]||(R[4]=W=>l.value=W),service:e.service,uploads:e.uploads,"status-label":e.statusLabel,"mobile-mode":!1,onOpenRecentRun:I,onOpenNotification:N,onRetryUpload:R[5]||(R[5]=W=>a("retryUpload",W)),onCancelUpload:R[6]||(R[6]=W=>a("cancelUpload",W)),onRemoveUpload:R[7]||(R[7]=W=>a("removeUpload",W))},null,8,["page","session-group","service","uploads","status-label"]))]),_:1},8,["visible","virtual-ref","placement","show-arrow","popper-class"])):ue("",!0),e.mobileMode&&(e.mobilePresented??y.value)&&e.mobilePanelTarget?(f(),ye(ra,{key:1,to:e.mobilePanelTarget},[B(ol,{page:i.value,"onUpdate:page":R[9]||(R[9]=W=>i.value=W),"session-group":l.value,"onUpdate:sessionGroup":R[10]||(R[10]=W=>l.value=W),service:e.service,uploads:e.uploads,"status-label":e.statusLabel,"mobile-mode":!0,onOpenRecentRun:I,onOpenNotification:N,onRetryUpload:R[11]||(R[11]=W=>a("retryUpload",W)),onCancelUpload:R[12]||(R[12]=W=>a("cancelUpload",W)),onRemoveUpload:R[13]||(R[13]=W=>a("removeUpload",W))},null,8,["page","session-group","service","uploads","status-label"])],8,["to"])):ue("",!0)],2))}}),PR=ut(DR,[["__scopeId","data-v-ff98e261"]]),OR=["aria-label"],LR=["aria-label"],WR={class:"panel-heading-actions"},MR={class:"category-values"},xR={key:1},$R=ot({__name:"WebPerformanceIndicator",props:{diagnostics:{}},setup(e){const t=e,{t:n,locale:a}=Pn(),r=t.diagnostics.snapshot,s=["run","conversation","watch","notification","queue","workspace","session","node","control","other"],i=_(()=>s.map(p=>({category:p,count:r.value.categories[p]??0})).filter(p=>p.count>0)),l=_(()=>n(`performanceDiagnostics.health.${r.value.health}`)),d=_(()=>n(`performanceDiagnostics.connection.${r.value.connectionState}`));function v(p){return new Intl.NumberFormat(a.value,{maximumFractionDigits:1}).format(p)}function u(){const p=r.value.heap;return p===void 0?n("common.unavailable"):n("performanceDiagnostics.heapValue",{used:v(p.usedBytes/1048576),limit:v(p.limitBytes/1048576),percentage:v(p.limitBytes<=0?0:p.usedBytes/p.limitBytes*100)})}function y(){const p=r.value.pingLatencyMs;return p===void 0?n("common.unavailable"):n("performanceDiagnostics.pingLatencyValue",{duration:v(p)})}function k(){return r.value.lastMessageAt===void 0?n("common.unavailable"):Kt(r.value.lastMessageAt)}async function T(){try{await navigator.clipboard.writeText(JSON.stringify(t.diagnostics.detail(),null,2)),tt(n("performanceDiagnostics.copySucceeded"),"info")}catch{tt(n("performanceDiagnostics.copyFailed"),"error")}}return Ot(t.diagnostics.start),wt(t.diagnostics.dispose),(p,m)=>{const S=St,N=Sr,I=Tt("tooltip");return f(),ye(N,{placement:"right-end",trigger:["hover","focus"],width:320,"show-after":180,"hide-after":80},{reference:Z(()=>[j("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,OR)]),default:Z(()=>[j("section",{class:"web-performance-panel","aria-label":o(n)("performanceDiagnostics.title")},[j("header",null,[j("strong",null,M(o(n)("performanceDiagnostics.title")),1),j("div",WR,[j("span",{class:je(`is-${o(r).health}`)},M(l.value),3),Me((f(),ye(S,{link:"","aria-label":o(n)("performanceDiagnostics.copy"),onClick:T},{default:Z(()=>[B(De,{name:"copy"})]),_:1},8,["aria-label"])),[[I,o(n)("performanceDiagnostics.copy")]])])]),j("dl",null,[j("dt",null,M(o(n)("performanceDiagnostics.connectionLabel")),1),j("dd",null,M(d.value),1),j("dt",null,M(o(n)("performanceDiagnostics.pingLatency")),1),j("dd",null,M(y()),1),j("dt",null,M(o(n)("performanceDiagnostics.lastMessage")),1),j("dd",null,M(k()),1),j("dt",null,M(o(n)("performanceDiagnostics.messageRate")),1),j("dd",null,M(o(n)("performanceDiagnostics.rateValue",{current:o(r).messagesPerSecond,peak:o(r).peakMessagesPerSecond,kilobytes:v(o(r).kilobytesPerSecond)})),1),j("dt",null,M(o(n)("performanceDiagnostics.categories")),1),j("dd",MR,[i.value.length?(f(!0),L(qe,{key:0},Xe(i.value,b=>(f(),L("span",{key:b.category},M(o(n)(`performanceDiagnostics.category.${b.category}`))+" "+M(b.count)+"/s ",1))),128)):(f(),L("span",xR,M(o(n)("performanceDiagnostics.noRealtimeMessages")),1))]),j("dt",null,M(o(n)("performanceDiagnostics.activeRunSessions")),1),j("dd",null,M(o(r).activeRunSessions),1),j("dt",null,M(o(n)("performanceDiagnostics.processing")),1),j("dd",null,M(o(n)("performanceDiagnostics.processingValue",{average:v(o(r).processing.averageMs),p95:v(o(r).processing.p95Ms),maximum:v(o(r).processing.maxMs)})),1),j("dt",null,M(o(n)("performanceDiagnostics.longTasks")),1),j("dd",null,M(o(r).longTasks.available?o(n)("performanceDiagnostics.longTaskValue",{count:o(r).longTasks.count,duration:v(o(r).longTasks.totalDurationMs)}):o(n)("common.unavailable")),1),j("dt",null,M(o(n)("performanceDiagnostics.mainThreadDelay")),1),j("dd",null,M(v(o(r).eventLoopDelayMs))+" ms",1),j("dt",null,M(o(n)("performanceDiagnostics.pageScale")),1),j("dd",null,M(o(n)("performanceDiagnostics.pageScaleValue",{dom:o(r).domNodes,messages:o(r).messageCards})),1),j("dt",null,M(o(n)("performanceDiagnostics.jsHeap")),1),j("dd",null,M(u()),1)]),j("p",null,M(o(n)("performanceDiagnostics.scopeHint")),1)],8,LR)]),_:1})}}}),FR=ut($R,[["__scopeId","data-v-5c2d70a5"]]);function UR(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=Pa(n(i),s),v=t(i.id).filter(u=>Pa(a(u),s)||Pa(u.path,s)||Pa(u.groupName??"",s));return l||v.length>0?[{node:i,workspaces:v}]:[]})}function rl(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 Pa(e,t){return e.toLocaleLowerCase().includes(t)}const VR={class:"workspace-tree-filter"},qR=["onMouseenter","onFocusin","onContextmenu","onDragover","onDrop"],HR=["aria-expanded","aria-label","onClick"],BR={key:1,class:"node-expand-spacer","aria-hidden":"true"},GR=["aria-label","draggable","onDragstart","onClick"],zR={class:"tree-node-content"},KR={class:"tree-node-icon","aria-hidden":"true"},jR=["aria-label"],_R={key:0,class:"workspace-branches"},YR=["draggable","onMouseenter","onFocusin","onContextmenu","onDragenter","onDragover","onDrop","onDragstart"],QR=["aria-label","onClick"],JR={class:"workspace-branch-content"},XR=["aria-label"],ZR=["aria-label","aria-expanded","onDragenter","onDragover","onDrop","onClick"],eA={key:0,class:"workspace-branches workspace-group-branches"},tA=["draggable","onMouseenter","onFocusin","onContextmenu","onDragenter","onDragover","onDrop","onDragstart"],nA=["aria-label","onClick"],aA={class:"workspace-branch-content"},oA=["aria-label"],rA={key:1,class:"tree-filter-empty"},iA={key:2,class:"tree-foot"},sA={key:1,class:"tree-empty"},lA={class:"workspace-group-move-control"},cA={class:"workspace-group-move-hint"},dA={key:0,class:"workspace-group-move-error"},uA=ot({__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=$(""),r=$(),s=$(!1);function i(){s.value=!window.matchMedia("(prefers-reduced-motion: reduce)").matches,gt(()=>s.value=!1)}function l(Te){const Ee=Te;Ee.inert=!1,Ee.style.setProperty("--workspace-branch-height",`${Ee.scrollHeight}px`)}function d(Te){const Ee=Te;Ee.style.setProperty("--workspace-branch-height",`${Ee.getBoundingClientRect().height}px`),Ee.inert=!0}function v(Te){const Ee=Te;Ee.style.removeProperty("--workspace-branch-height"),Ee.inert=!1}const u=_(()=>a.value.trim().length>0),y=_(()=>UR(n.nodes,n.workspaces,n.nodeLabel,n.workspaceLabel,a.value)),k=_(()=>y.value.map(Te=>({...Te,groups:rl(Te.workspaces)}))),T=Te=>u.value||n.expandedNodeIds.includes(Te),p=$([]),m=$(),S=$(),N=$(),I=$(),b=$(),C=$(),g=$(),R=_(()=>!n.mobileViewport&&!u.value),W=$(),w=$(),D=$(),E=$(),H=$(),J=$();Ge(()=>n.visible,Te=>{Te===!1&&(H.value=void 0,J.value=void 0)});const Y=$(!1),q=$(),Q=$("");function V(Te,Ee){return`${Te}:${Ee}`}function U(Te,Ee){return`${Te}:${Ee}`}function A(Te){return Te.workspaceCreatable===!0}function h(Te,Ee){const _e=n.draggingWorkspace;if(!R.value||_e?.nodeId!==Te.id)return!1;const ie=n.workspaces(Te.id).find(O=>O.id===_e.workspaceId);return ie===void 0||ie.id===Ee?.id?!1:Ee===void 0||A(Te)||(ie.groupName?.trim()||null)===(Ee.groupName?.trim()||null)}function F(Te,Ee,_e){if(X(),!h(Ee,_e))return;Te.preventDefault(),m.value=U(Ee.id,_e.id),(n.workspaces(Ee.id).find(O=>O.id===n.draggingWorkspace?.workspaceId)?.groupName?.trim()||null)===(_e.groupName?.trim()||null)&&(S.value=We(Te))}function K(Te,Ee,_e){X(),!(!h(Ee)||!A(Ee))&&(Te.preventDefault(),N.value=V(Ee.id,_e))}function ve(Te){const Ee=Te.currentTarget;Te.relatedTarget instanceof Node&&Ee.contains(Te.relatedTarget)||X()}function X(){m.value=void 0,S.value=void 0,N.value=void 0,g.value=void 0}function oe(Te,Ee){return u.value||p.value.includes(V(Te,Ee))}function ge(Te,Ee){i();const _e=V(Te,Ee);p.value=p.value.includes(_e)?p.value.filter(ie=>ie!==_e):[...p.value,_e]}const le=_(()=>{const Te=n.revealTarget;if(Te===void 0||Te.nodeId!==n.workspaceTarget?.nodeId||Te.workspaceId!==n.workspaceTarget.workspaceId)return;const Ee=n.workspaces(Te.nodeId).find(_e=>_e.id===Te.workspaceId);return Ee===void 0?void 0:Ee.groupName?.trim()||""});Ge([()=>n.revealTarget,le],([Te,Ee])=>{Te===void 0||Ee===void 0||(p.value=Ee?[V(Te.nodeId,Ee)]:[])},{immediate:!0}),Ge([()=>n.revealTarget,le,()=>n.visible],async(Te,Ee,_e)=>{let ie=!1;if(_e(()=>ie=!0),await gt(),ie||n.visible===!1||le.value===void 0)return;const O=r.value?.querySelector(".workspace-branches li.selected > .workspace-branch-button");O?.getClientRects().length&&O.scrollIntoView({block:"nearest",inline:"nearest",behavior:"instant"})},{immediate:!0,flush:"post"});const ae=_(()=>{const Te=q.value;return Te===void 0?[]:rl(n.workspaces(Te.nodeId)).map(Ee=>Ee.groupName).filter(Ee=>Ee!==null)}),P=_(()=>(Q.value?.trim().length??0)>128);function z(Te,Ee){q.value={nodeId:Te,workspace:Ee},Q.value=Ee.groupName?.trim()??"",Y.value=!0}function ce(){Y.value=!1,q.value=void 0,Q.value=""}function te(){const Te=q.value;if(Te===void 0||P.value)return;const Ee=Q.value?.trim()||null;x("moveWorkspaceGroup",Te.nodeId,Te.workspace,Ee),ce()}const x=t;function ee(Te,Ee){Ee==="details"?x("openNodeDetails",Te):Ee==="add"?x("addWorkspace",Te.id):Ee==="refresh"?x("refreshNodeWorkspaces",Te.id):!u.value&&(Ee==="up"||Ee==="down")&&x("moveNode",Te.id,n.nodes.findIndex(_e=>_e.id===Te.id)+(Ee==="up"?-1:1))}function se(Te,Ee){if(!R.value){Te.preventDefault();return}I.value=Ee,Te.dataTransfer!==null&&(Te.dataTransfer.setData("application/x-mar-node",Ee),Te.dataTransfer.effectAllowed="move")}function Se(){I.value=void 0,b.value=void 0,C.value=void 0}function Fe(Te,Ee){if(h(Ee)&&A(Ee)){Te.preventDefault(),X(),g.value=Ee.id;return}!R.value||I.value===void 0||I.value===Ee.id||(Te.preventDefault(),b.value=Ee.id,C.value=We(Te))}function We(Te){const Ee=Te.currentTarget.getBoundingClientRect();return Te.clientY<Ee.top+Ee.height/2?"before":"after"}function be(Te){const Ee=Te.currentTarget;Te.relatedTarget instanceof Node&&Ee.contains(Te.relatedTarget)||(b.value=void 0,C.value=void 0,X())}function he(Te,Ee){if(h(Ee)&&A(Ee)){ne(Ee,null);return}const _e=I.value;if(Se(),!R.value||_e===void 0||_e===Ee.id)return;const ie=n.nodes.findIndex(pe=>pe.id===_e),O=n.nodes.findIndex(pe=>pe.id===Ee.id);if(ie<0||O<0)return;const G=O+(We(Te)==="after"?1:0);x("moveNode",_e,G-(ie<G?1:0))}function Ue(Te,Ee,_e){_e==="details"?x("openWorkspaceDetails",Te.id,Ee):_e==="rename"?x("renameWorkspace",Te.id,Ee):_e==="delete"?x("removeWorkspace",Te.id,Ee):_e==="move-group"?z(Te.id,Ee):!u.value&&(_e==="up"||_e==="down")&&x("moveWorkspace",Te.id,Ee.id,_e==="up"?-1:1)}function Qe(Te,Ee,_e){if(!R.value){Te.preventDefault();return}x("startWorkspaceDrag",Te,Ee.id,_e.id)}function rt(Te,Ee,_e){X(),h(Ee,_e)&&x("reorderWorkspace",Ee.id,_e,We(Te))}function ne(Te,Ee){X(),h(Te)&&A(Te)&&x("moveWorkspaceToGroup",Te.id,Ee)}function me(Te){return n.visible===!1?!1:n.mobileViewport||W.value===Te||w.value===Te||H.value===Te}function Ne(Te,Ee){if(n.visible===!1)return!1;const _e=U(Te,Ee);return n.mobileViewport||D.value===_e||E.value===_e||J.value===_e}function Ve(Te,Ee){const _e=Te.currentTarget;_e instanceof HTMLElement&&Te.relatedTarget instanceof Node&&_e.contains(Te.relatedTarget)||Ee()}function Je(Te,Ee){W.value=Te,gt(()=>Ee.querySelector(".tree-more-button")?.click())}function Ie(Te,Ee,_e){D.value=U(Te,Ee),gt(()=>_e.querySelector(".tree-more-button")?.click())}function Ke(Te,Ee){Te.preventDefault();const _e=Te.currentTarget;_e instanceof HTMLElement&&Je(Ee,_e)}function Ye(Te,Ee,_e){Te.preventDefault();const ie=Te.currentTarget;ie instanceof HTMLElement&&Ie(Ee,_e,ie)}function at(Te){i(),x("toggleNode",Te)}function Ze(Te,Ee){x("openWorkspace",Te,Ee)}return(Te,Ee)=>{const _e=Vt,ie=cn,O=ln,G=sn,pe=Vn,xe=yn,He=St,fe=Zt,Ce=Tt("tooltip");return f(),L(qe,null,[e.nodes.length?(f(),L(qe,{key:0},[j("div",VR,[B(_e,{modelValue:a.value,"onUpdate:modelValue":Ee[0]||(Ee[0]=ke=>a.value=ke),clearable:"","aria-label":o(c)("generated.workspaceTree.filterNodeWorkspaces"),placeholder:o(c)("generated.workspaceTree.filterNodeWorkspaces"),size:"small","clear-icon":o(Be)("clear-input")},{prefix:Z(()=>[B(De,{name:"search"})]),_:1},8,["modelValue","aria-label","placeholder","clear-icon"])]),y.value.length?(f(),L("ul",{key:0,ref_key:"nodeTreeElement",ref:r,class:"node-tree"},[(f(!0),L(qe,null,Xe(k.value,(ke,Oe)=>(f(),L("li",{key:ke.node.id},[j("div",{class:je(["tree-node-row",{dragging:I.value===ke.node.id,"drop-before":b.value===ke.node.id&&C.value==="before","drop-after":b.value===ke.node.id&&C.value==="after","drop-target":g.value===ke.node.id,"actions-visible":me(ke.node.id)}]),onMouseenter:Pe=>W.value=ke.node.id,onMouseleave:Ee[2]||(Ee[2]=Pe=>W.value=void 0),onFocusin:Pe=>w.value=ke.node.id,onFocusout:Ee[3]||(Ee[3]=Pe=>Ve(Pe,()=>w.value=void 0)),onContextmenu:Pe=>Ke(Pe,ke.node.id),onDragover:it(Pe=>Fe(Pe,ke.node),["stop"]),onDragleave:be,onDrop:it(Pe=>he(Pe,ke.node),["prevent","stop"])},[u.value?(f(),L("span",BR)):(f(),L("button",{key:0,class:je(["node-expand-button",{expanded:e.expandedNodeIds.includes(ke.node.id)}]),"aria-expanded":T(ke.node.id),"aria-label":e.expandedNodeIds.includes(ke.node.id)?o(c)("generated.workspaceTree.collapseWorkspaces"):o(c)("generated.workspaceTree.expandWorkspaces"),type:"button",onClick:Pe=>at(ke.node.id)},[B(De,{name:"chevron-right",class:"tree-chevron"})],10,HR)),Me((f(),L("button",{"aria-label":e.nodeLabel(ke.node),class:"tree-node",draggable:R.value,onDragstart:it(Pe=>se(Pe,ke.node.id),["stop"]),onDragend:it(Se,["stop"]),type:"button",onClick:Pe=>at(ke.node.id)},[j("span",zR,[j("span",KR,[B(De,{name:"node",class:"tree-type-icon"}),j("span",{class:je(["state-dot","mar-icon-status-badge",ke.node.connected&&!ke.node.disabled?"ready":"offline"])},null,2)]),j("span",null,M(e.nodeLabel(ke.node)),1)])],40,GR)),[[Ce,e.nodeLabel(ke.node)]]),me(ke.node.id)?(f(),ye(G,{key:2,class:"tree-row-menu node-tree-actions",trigger:"click",onCommand:Pe=>ee(ke.node,Pe),onVisibleChange:Pe=>H.value=Pe?ke.node.id:void 0},{dropdown:Z(()=>[B(O,null,{default:Z(()=>[B(ie,{command:"details",icon:o(Be)("view")},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.nodeDetails")),1)]),_:1},8,["icon"]),B(ie,{command:"up",icon:o(Be)("chevron-up"),disabled:u.value||Oe===0},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.moveUp")),1)]),_:1},8,["icon","disabled"]),B(ie,{command:"down",icon:o(Be)("chevron-down"),disabled:u.value||Oe===k.value.length-1},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.moveDown")),1)]),_:1},8,["icon","disabled"]),B(ie,{command:"refresh",icon:o(Be)("refresh")},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.refreshWorkspaces")),1)]),_:1},8,["icon"]),B(ie,{command:"add",icon:o(Be)("folder-add"),disabled:ke.node.disabled||!ke.node.connected||(ke.node.workspaceCreatable??ke.node.manageable)===!1},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.addWorkspace")),1)]),_:1},8,["icon","disabled"])]),_:2},1024)]),default:Z(()=>[j("button",{class:"tree-more-button utility-control","aria-label":o(c)("generated.workspaceTree.nodeActions"),type:"button",onClick:Ee[1]||(Ee[1]=it(()=>{},["stop"]))},[B(De,{name:"more"})],8,jR)]),_:2},1032,["onCommand","onVisibleChange"])):ue("",!0)],42,qR),(f(),ye(mn,{key:u.value?"filtered":"browsing",name:"workspace-branch",css:s.value,onEnter:l,onBeforeLeave:d,onAfterEnter:v,onAfterLeave:v},{default:Z(()=>[T(ke.node.id)?(f(),L("ul",_R,[(f(!0),L(qe,null,Xe(ke.groups,Pe=>(f(),L(qe,{key:Pe.groupName??"__ungrouped__"},[Pe.groupName===null?(f(!0),L(qe,{key:0},Xe(Pe.workspaces,(de,Re)=>(f(),L("li",{key:de.id,class:je({dragging:e.draggingWorkspace?.workspaceId===de.id,"drop-target":m.value===U(ke.node.id,de.id)&&S.value===void 0,"drop-before":m.value===U(ke.node.id,de.id)&&S.value==="before","drop-after":m.value===U(ke.node.id,de.id)&&S.value==="after",selected:e.workspaceTarget?.nodeId===ke.node.id&&e.workspaceTarget.workspaceId===de.id}),draggable:R.value,onMouseenter:Le=>D.value=U(ke.node.id,de.id),onMouseleave:Ee[5]||(Ee[5]=Le=>D.value=void 0),onFocusin:Le=>E.value=U(ke.node.id,de.id),onFocusout:Ee[6]||(Ee[6]=Le=>Ve(Le,()=>E.value=void 0)),onContextmenu:Le=>Ye(Le,ke.node.id,de.id),onDragend:Ee[7]||(Ee[7]=it(Le=>{X(),x("endWorkspaceDrag")},["stop"])),onDragenter:it(Le=>F(Le,ke.node,de),["stop"]),onDragleave:it(ve,["stop"]),onDragover:it(Le=>F(Le,ke.node,de),["stop"]),onDrop:it(Le=>rt(Le,ke.node,de),["prevent","stop"]),onDragstart:it(Le=>Qe(Le,ke.node,de),["stop"])},[Me((f(),L("button",{"aria-label":e.workspaceLabel(de),class:je([{selected:e.workspaceTarget?.nodeId===ke.node.id&&e.workspaceTarget.workspaceId===de.id},"workspace-branch-button"]),type:"button",onClick:Le=>Ze(ke.node.id,de.id)},[j("span",JR,[j("span",null,M(e.workspaceLabel(de)),1)])],10,QR)),[[Ce,e.workspaceLabel(de)]]),Ne(ke.node.id,de.id)?(f(),ye(G,{key:0,class:"tree-row-menu workspace-row-actions",trigger:"click",onCommand:Le=>Ue(ke.node,de,Le),onVisibleChange:Le=>J.value=Le?U(ke.node.id,de.id):void 0},{dropdown:Z(()=>[B(O,null,{default:Z(()=>[B(ie,{command:"details",icon:o(Be)("view")},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.workspaceDetails")),1)]),_:1},8,["icon"]),B(ie,{command:"up",icon:o(Be)("chevron-up"),disabled:u.value||Re===0},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.moveUp")),1)]),_:1},8,["icon","disabled"]),B(ie,{command:"down",icon:o(Be)("chevron-down"),disabled:u.value||Re===Pe.workspaces.length-1},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.moveDown")),1)]),_:1},8,["icon","disabled"]),B(ie,{command:"rename",icon:o(Be)("edit"),disabled:de.manageable===!1},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.rename")),1)]),_:1},8,["icon","disabled"]),B(ie,{command:"move-group",icon:o(Be)("folder-add"),disabled:e.loading||!A(ke.node)},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.moveWorkspaceToGroup")),1)]),_:1},8,["icon","disabled"]),B(ie,{command:"delete",icon:o(Be)("delete"),disabled:e.loading||de.manageable!==!0,divided:""},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.delete")),1)]),_:1},8,["icon","disabled"])]),_:2},1024)]),default:Z(()=>[j("button",{class:"tree-more-button utility-control","aria-label":o(c)("generated.workspaceTree.workspaceActions"),type:"button",onClick:Ee[4]||(Ee[4]=it(()=>{},["stop"]))},[B(De,{name:"more"})],8,XR)]),_:2},1032,["onCommand","onVisibleChange"])):ue("",!0)],42,YR))),128)):(f(),L("li",{key:1,class:je(["workspace-group",{"drop-target":N.value===V(ke.node.id,Pe.groupName)}])},[Me((f(),L("button",{class:je(["workspace-group-toggle",{expanded:oe(ke.node.id,Pe.groupName)}]),"aria-label":oe(ke.node.id,Pe.groupName)?o(c)("generated.workspaceTree.collapseWorkspaceGroup",{value0:Pe.groupName}):o(c)("generated.workspaceTree.expandWorkspaceGroup",{value0:Pe.groupName}),"aria-expanded":oe(ke.node.id,Pe.groupName),onDragenter:it(de=>K(de,ke.node,Pe.groupName),["stop"]),onDragleave:it(ve,["stop"]),onDragover:it(de=>K(de,ke.node,Pe.groupName),["stop"]),onDrop:it(de=>ne(ke.node,Pe.groupName),["prevent","stop"]),type:"button",onClick:de=>ge(ke.node.id,Pe.groupName)},[B(De,{name:"chevron-right",class:"tree-chevron"}),oe(ke.node.id,Pe.groupName)?(f(),ye(De,{key:0,name:"folder-open",class:"tree-type-icon","aria-hidden":"true"})):(f(),ye(De,{key:1,name:"folder",class:"tree-type-icon","aria-hidden":"true"})),j("span",null,M(Pe.groupName),1)],42,ZR)),[[Ce,Pe.groupName]]),B(mn,{name:"workspace-branch",css:s.value,onEnter:l,onBeforeLeave:d,onAfterEnter:v,onAfterLeave:v},{default:Z(()=>[oe(ke.node.id,Pe.groupName)?(f(),L("ul",eA,[(f(!0),L(qe,null,Xe(Pe.workspaces,(de,Re)=>(f(),L("li",{key:de.id,class:je({dragging:e.draggingWorkspace?.workspaceId===de.id,"drop-target":m.value===U(ke.node.id,de.id)&&S.value===void 0,"drop-before":m.value===U(ke.node.id,de.id)&&S.value==="before","drop-after":m.value===U(ke.node.id,de.id)&&S.value==="after",selected:e.workspaceTarget?.nodeId===ke.node.id&&e.workspaceTarget.workspaceId===de.id}),draggable:R.value,onMouseenter:Le=>D.value=U(ke.node.id,de.id),onMouseleave:Ee[9]||(Ee[9]=Le=>D.value=void 0),onFocusin:Le=>E.value=U(ke.node.id,de.id),onFocusout:Ee[10]||(Ee[10]=Le=>Ve(Le,()=>E.value=void 0)),onContextmenu:Le=>Ye(Le,ke.node.id,de.id),onDragend:Ee[11]||(Ee[11]=it(Le=>{X(),x("endWorkspaceDrag")},["stop"])),onDragenter:it(Le=>F(Le,ke.node,de),["stop"]),onDragleave:it(ve,["stop"]),onDragover:it(Le=>F(Le,ke.node,de),["stop"]),onDrop:it(Le=>rt(Le,ke.node,de),["prevent","stop"]),onDragstart:it(Le=>Qe(Le,ke.node,de),["stop"])},[Me((f(),L("button",{"aria-label":e.workspaceLabel(de),class:je([{selected:e.workspaceTarget?.nodeId===ke.node.id&&e.workspaceTarget.workspaceId===de.id},"workspace-branch-button"]),type:"button",onClick:Le=>Ze(ke.node.id,de.id)},[j("span",aA,[j("span",null,M(e.workspaceLabel(de)),1)])],10,nA)),[[Ce,e.workspaceLabel(de)]]),Ne(ke.node.id,de.id)?(f(),ye(G,{key:0,class:"tree-row-menu workspace-row-actions",trigger:"click",onCommand:Le=>Ue(ke.node,de,Le),onVisibleChange:Le=>J.value=Le?U(ke.node.id,de.id):void 0},{dropdown:Z(()=>[B(O,null,{default:Z(()=>[B(ie,{command:"details",icon:o(Be)("view")},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.workspaceDetails")),1)]),_:1},8,["icon"]),B(ie,{command:"up",icon:o(Be)("chevron-up"),disabled:u.value||Re===0},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.moveUp")),1)]),_:1},8,["icon","disabled"]),B(ie,{command:"down",icon:o(Be)("chevron-down"),disabled:u.value||Re===Pe.workspaces.length-1},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.moveDown")),1)]),_:1},8,["icon","disabled"]),B(ie,{command:"rename",icon:o(Be)("edit"),disabled:de.manageable===!1},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.rename")),1)]),_:1},8,["icon","disabled"]),B(ie,{command:"move-group",icon:o(Be)("folder-add"),disabled:e.loading||!A(ke.node)},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.moveWorkspaceToGroup")),1)]),_:1},8,["icon","disabled"]),B(ie,{command:"delete",icon:o(Be)("delete"),disabled:e.loading||de.manageable!==!0,divided:""},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.delete")),1)]),_:1},8,["icon","disabled"])]),_:2},1024)]),default:Z(()=>[j("button",{class:"tree-more-button utility-control","aria-label":o(c)("generated.workspaceTree.workspaceActions"),type:"button",onClick:Ee[8]||(Ee[8]=it(()=>{},["stop"]))},[B(De,{name:"more"})],8,oA)]),_:2},1032,["onCommand","onVisibleChange"])):ue("",!0)],42,tA))),128))])):ue("",!0)]),_:2},1032,["css"])],2))],64))),128))])):ue("",!0)]),_:2},1032,["css"]))]))),128))],512)):(f(),L("p",rA,M(o(c)("generated.workspaceTree.noMatchingResources")),1)),y.value.length&&e.workspaceTarget?.workspaceId===void 0?(f(),L("p",iA,M(o(c)("generated.workspaceTree.selectAWorkspaceToContinueInThe")),1)):ue("",!0)],64)):(f(),L("p",sA,M(o(c)("generated.workspaceTree.noNodes")),1)),Y.value?(f(),ye(fe,{key:2,onVnodeMounted:o(Jt),onVnodeBeforeUnmount:o(Qt),modelValue:Y.value,"onUpdate:modelValue":Ee[13]||(Ee[13]=ke=>Y.value=ke),title:o(c)("generated.workspaceTree.moveWorkspaceToGroup"),width:"min(440px, calc(100vw - 32px))",onClosed:ce,"close-icon":o(Be)("close")},{footer:Z(()=>[B(He,{onClick:ce},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.cancel")),1)]),_:1}),B(He,{type:"primary",disabled:P.value,onClick:te},{default:Z(()=>[we(M(o(c)("generated.workspaceTree.save")),1)]),_:1},8,["disabled"])]),default:Z(()=>[j("div",lA,[B(xe,{modelValue:Q.value,"onUpdate:modelValue":Ee[12]||(Ee[12]=ke=>Q.value=ke),"allow-create":"",clearable:"","default-first-option":"",filterable:"","aria-label":o(c)("generated.workspaceTree.workspaceGroupName"),placeholder:o(c)("generated.workspaceTree.workspaceGroupMovePlaceholder"),"clear-icon":o(Be)("clear-input"),"suffix-icon":o(Be)("chevron-down")},{default:Z(()=>[(f(!0),L(qe,null,Xe(ae.value,ke=>(f(),ye(pe,{key:ke,label:ke,value:ke},null,8,["label","value"]))),128))]),_:1},8,["modelValue","aria-label","placeholder","clear-icon","suffix-icon"])]),j("p",cA,M(o(c)("generated.workspaceTree.emptyWorkspaceGroupLeavesUngrouped")),1),P.value?(f(),L("p",dA,M(o(c)("generated.workspaceTree.workspaceGroupNameTooLong")),1)):ue("",!0)]),_:1},8,["onVnodeMounted","onVnodeBeforeUnmount","modelValue","title","close-icon"])):ue("",!0)],64)}}}),vA=ut(uA,[["__scopeId","data-v-cc254857"]]),fA=["aria-label"],pA=["src","alt"],gA={class:"brand-copy"},mA={class:"brand-heading"},hA={class:"brand-version"},yA=["aria-label"],wA=["aria-label"],kA=["aria-label","aria-current","aria-expanded","onClick"],bA={class:"nav-item-content"},IA={class:"nav-item-content"},SA={class:"rail-label"},CA=["aria-label"],TA=["inert","aria-label"],EA=["aria-label"],RA=["aria-current","onClick"],AA=["aria-label"],NA=["aria-current","onClick"],DA=ot({__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=wl(),a=Qa().locale,r=$(),s=$(),i=e,l=$(i.view),d=$(i.mobileUtilityPanel),v=new Map,u=_(()=>d.value??l.value);function y(){l.value=i.view,d.value=i.mobileUtilityPanel}Ge([()=>i.view,()=>i.mobileUtilityPanel,()=>i.mobileSidebarOpen],async(Y,q)=>{const Q=r.value;Q&&q[2]&&v.set(u.value,Q.scrollTop),!(i.mobileViewport&&!i.mobileSidebarOpen)&&(l.value=i.view,d.value=i.mobileUtilityPanel,await gt(),r.value&&(r.value.scrollTop=v.get(u.value)??0))});const k=t;function T(Y,q){(q||i.mobileUtilityPanel===Y)&&k("selectMobileUtilityPanel",q?Y:void 0)}const p=_(()=>c(d.value==="activity"?"activityCenter.title":l.value==="settings"?"navigation.settingsCategories":l.value==="management"?"navigation.managementCategories":"navigation.nodeWorkspace")),m=Rr({isOpen:()=>i.mobileViewport&&i.mobileSidebarOpen,regions:()=>[r.value,document.querySelector(".activity-rail")],close:()=>k("closeMobileSidebar")});wt(m.dispose);const S=(Y,q)=>k("openWorkspace",Y,q),N=(Y,q)=>k("moveNode",Y,q),I=(Y,q,Q)=>k("moveWorkspace",Y,q,Q),b=(Y,q,Q)=>k("startWorkspaceDrag",Y,q,Q),C=(Y,q,Q)=>k("reorderWorkspace",Y,q,Q),g=(Y,q)=>k("moveWorkspaceToGroup",Y,q),R=(Y,q,Q)=>k("moveWorkspaceGroup",Y,q,Q),W=(Y,q)=>k("removeWorkspace",Y,q),w=(Y,q)=>k("openWorkspaceDetails",Y,q),D=(Y,q)=>k("renameWorkspace",Y,q),E=$(),H=$({left:0,top:0});function J(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 q=Y.currentTarget;if(!(q instanceof HTMLElement))return;const Q=q.getBoundingClientRect();H.value={left:Y.clientX-Q.left,top:Y.clientY-Q.top+q.scrollTop},gt(()=>E.value?.click())}return(Y,q)=>{const Q=Ir,V=cn,U=ln,A=sn,h=Tt("tooltip");return f(),L(qe,null,[j("header",{class:je(["workbench-brand",{collapsed:e.sidebarCollapsed}]),"data-testid":"workbench-brand"},[Me((f(),L("a",{class:"brand-home-link",href:"/","aria-label":Y.$t("navigation.home")},[j("img",{src:o($a),alt:Y.$t("common.productName")},null,8,pA)],8,fA)),[[h,Y.$t("common.productVersion",{version:e.webVersion})]]),j("div",gA,[j("div",mA,[j("strong",null,M(Y.$t("common.productName")),1),j("span",hA,M(e.webVersion),1)]),j("span",null,M(Y.$t("navigation.brandSummary")),1)])],2),j("aside",{class:"activity-rail","aria-label":Y.$t("navigation.main")},[j("nav",{"aria-label":Y.$t("navigation.main")},[(f(!0),L(qe,null,Xe(e.navigationItems,F=>(f(),L(qe,{key:F.id},[Me((f(),L("button",{class:je(["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:K=>k("selectNavigation",F.id)},[j("span",bA,[F.id==="nodes"?(f(),ye(De,{key:0,name:"workspace","aria-hidden":"true"})):F.id==="conversations"?(f(),ye(De,{key:1,name:"conversation","aria-hidden":"true"})):F.id==="settings"?(f(),ye(De,{key:2,name:"settings","aria-hidden":"true"})):(f(),ye(De,{key:3,name:"administration","aria-hidden":"true"}))])],10,kA)),[[h,{content:F.label,placement:e.mobileViewport?"bottom":"right"}]]),F.id==="conversations"?(f(),ye(PR,{key:0,service:e.notificationService,uploads:e.uploads,"status-label":e.uploadStatusLabel,"mobile-mode":e.mobileViewport,"mobile-open":e.mobileUtilityPanel==="activity","mobile-presented":d.value==="activity","mobile-panel-target":s.value,"preview-suppressed":e.mobileViewport&&(e.mobileSidebarOpen||e.mobileHistoryOpen),"onUpdate:mobileOpen":q[0]||(q[0]=K=>T("activity",K)),onOpenRecentRun:q[1]||(q[1]=K=>k("openRecentRun",K)),onOpenNotification:q[2]||(q[2]=K=>k("openNotification",K)),onRetryUpload:q[3]||(q[3]=K=>k("retryUpload",K)),onCancelUpload:q[4]||(q[4]=K=>k("cancelUpload",K)),onRemoveUpload:q[5]||(q[5]=K=>k("removeUpload",K))},null,8,["service","uploads","status-label","mobile-mode","mobile-open","mobile-presented","mobile-panel-target","preview-suppressed"])):ue("",!0)],64))),128)),o(n)?Me((f(),ye(Q,{key:0,class:"nav-menu-button documentation-link utility-control",href:o(kl)(o(a),"getting-started/overview"),underline:"never",target:"_blank",rel:"noopener noreferrer","aria-label":Y.$t("navigation.help")},{default:Z(()=>[j("span",IA,[B(De,{class:"documentation-icon","aria-hidden":"true",name:"help"}),j("span",SA,M(Y.$t("navigation.help")),1)])]),_:1},8,["href","aria-label"])),[[h,Y.$t("navigation.help")]]):ue("",!0)],8,wA),e.mobileViewport?ue("",!0):(f(),ye(FR,{key:0,diagnostics:e.performanceDiagnostics},null,8,["diagnostics"]))],8,yA),B(mn,{name:"mobile-menu-scrim"},{default:Z(()=>[e.mobileViewport&&e.mobileSidebarOpen?(f(),L("button",{key:0,class:"sidebar-scrim",type:"button","aria-label":Y.$t("workbench.closeSidebar"),tabindex:"-1",onClick:q[6]||(q[6]=F=>k("closeMobileSidebar"))},null,8,CA)):ue("",!0)]),_:1}),B(mn,{name:e.mobileViewport?"mobile-menu":"desktop-menu",onAfterLeave:y},{default:Z(()=>[Me(j("aside",{ref_key:"treeElement",ref:r,class:je(["workspace-tree",{collapsed:e.sidebarCollapsed,"mobile-open":e.mobileSidebarOpen}]),inert:e.mobileViewport&&!e.mobileSidebarOpen,"aria-label":p.value,tabindex:"-1",onContextmenu:q[13]||(q[13]=F=>e.view==="nodes"&&e.mobileUtilityPanel===void 0&&J(F))},[Me(j("div",{ref_key:"mobilePanelTarget",ref:s,class:"mobile-menu-content"},null,512),[[At,d.value!==void 0]]),d.value===void 0&&l.value==="nodes"?(f(),L(qe,{key:0},[B(A,{trigger:"click",class:"workspace-tree-blank-menu",style:Ct(H.value),onCommand:q[7]||(q[7]=F=>k("refreshWorkspaceTree"))},{dropdown:Z(()=>[B(U,null,{default:Z(()=>[B(V,{command:"refresh",icon:o(Be)("refresh")},{default:Z(()=>[we(M(Y.$t("generated.workspaceTree.refreshWorkspaces")),1)]),_:1},8,["icon"])]),_:1})]),default:Z(()=>[j("button",{ref_key:"blankMenuButton",ref:E,type:"button",tabindex:"-1","aria-hidden":"true"},null,512)]),_:1},8,["style"]),e.sidebarContentVisible||e.mobileViewport?(f(),ye(vA,{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:N,onMoveWorkspace:I,onToggleNode:q[8]||(q[8]=F=>k("toggleNode",F)),onRefreshNodeWorkspaces:q[9]||(q[9]=F=>k("refreshNodeWorkspaces",F)),onAddWorkspace:q[10]||(q[10]=F=>k("addWorkspace",F)),onOpenNodeDetails:q[11]||(q[11]=F=>k("openNodeDetails",F)),onOpenWorkspace:S,onStartWorkspaceDrag:b,onEndWorkspaceDrag:q[12]||(q[12]=F=>k("endWorkspaceDrag")),onReorderWorkspace:C,onMoveWorkspaceToGroup:g,onMoveWorkspaceGroup:R,onRemoveWorkspace:W,onOpenWorkspaceDetails:w,onRenameWorkspace:D},null,8,["nodes","expanded-node-ids","reveal-target","visible","workspace-target","dragging-workspace","mobile-viewport","loading","node-label","workspace-label","workspaces"])):ue("",!0)],64)):d.value===void 0?(f(),L(qe,{key:1},[(e.sidebarContentVisible||e.mobileViewport)&&l.value==="settings"?(f(),L("nav",{key:l.value,class:"settings-nav","aria-label":Y.$t("navigation.settingsMenu")},[(f(!0),L(qe,null,Xe(e.settingsItems,F=>(f(),L("button",{key:F.id,class:je({active:e.settingsSection===F.id}),"aria-current":e.settingsSection===F.id?"page":void 0,type:"button",onClick:K=>k("selectSettings",F.id)},M(F.label),11,RA))),128))],8,EA)):(e.sidebarContentVisible||e.mobileViewport)&&l.value==="management"?(f(),L("nav",{key:l.value,class:"settings-nav","aria-label":Y.$t("navigation.managementMenu")},[(f(!0),L(qe,null,Xe(e.managementItems,F=>(f(),L("button",{key:F.id,class:je({active:e.managementSection===F.id}),"aria-current":e.managementSection===F.id?"page":void 0,type:"button",onClick:K=>k("selectManagement",F.id)},M(F.label),11,NA))),128))],8,AA)):ue("",!0)],64)):ue("",!0)],42,TA),[[At,e.mobileViewport?e.mobileSidebarOpen:e.view!=="conversations"]])]),_:1},8,["name"]),e.view==="nodes"&&!e.sidebarCollapsed&&!e.mobileViewport?(f(),ye(Sc,{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:q[14]||(q[14]=F=>k("resizeSidebar",F))},null,8,["target","label","min","max"])):ue("",!0)],64)}}}),PA=ut(DA,[["__scopeId","data-v-6c1d2621"]]),OA={class:"gate-panel","aria-labelledby":"password-title"},LA={class:"eyebrow"},WA={id:"password-title"},MA={class:"lede"},xA={class:"lede"},$A={key:0,class:"password-form-error",role:"alert"},FA=ot({__name:"PasswordGate",props:{password:{},validationError:{},loading:{type:Boolean}},emits:["update:password","clearError","submit"],setup(e,{emit:t}){const n=e,a=t,r=$(""),s=$(""),{t:i}=Pn();function l(){a("submit",{currentPassword:r.value,password:n.password,confirmation:s.value})}return(d,v)=>(f(),L("section",OA,[j("p",LA,M(o(i)("passwordGate.firstUse")),1),j("h1",WA,M(o(i)("passwordGate.title")),1),j("p",MA,M(o(i)("passwordGate.summary")),1),j("p",xA,M(o(i)("passwordGate.requirement")),1),j("form",{class:"auth-form",novalidate:"",onSubmit:it(l,["prevent"])},[j("label",null,[we(M(o(i)("passwordGate.current")),1),B(o(Vt),{modelValue:r.value,"onUpdate:modelValue":v[0]||(v[0]=u=>r.value=u),type:"password",autocomplete:"current-password",onInput:v[1]||(v[1]=u=>a("clearError"))},null,8,["modelValue"])]),j("label",null,[we(M(o(i)("passwordGate.next")),1),B(o(Vt),{"model-value":e.password,type:"password",autocomplete:"new-password","onUpdate:modelValue":v[2]||(v[2]=u=>a("update:password",String(u))),onInput:v[3]||(v[3]=u=>a("clearError"))},null,8,["model-value"])]),j("label",null,[we(M(o(i)("passwordGate.confirmation")),1),B(o(Vt),{modelValue:s.value,"onUpdate:modelValue":v[4]||(v[4]=u=>s.value=u),type:"password",autocomplete:"new-password",onInput:v[5]||(v[5]=u=>a("clearError"))},null,8,["modelValue"])]),e.validationError?(f(),L("p",$A,M(e.validationError),1)):ue("",!0),B(o(St),{disabled:e.password.length<8||r.value.length===0||s.value.length===0,loading:e.loading,"native-type":"submit",type:"primary","loading-icon":o(Be)("loading-action")},{default:Z(()=>[we(M(o(i)("passwordGate.submit")),1)]),_:1},8,["disabled","loading","loading-icon"])],32)]))}}),UA=ut(FA,[["__scopeId","data-v-38495fe1"]]),VA=["aria-label"],qA=["aria-label"],HA=["aria-label"],BA=["aria-busy"],GA={class:"sr-only","data-testid":"web-health"},zA=ot({__name:"WorkbenchPage",props:{page:{},surface:{}},emits:["openWorkspaceDetails"],setup(e,{emit:t}){const n=e,a=t,{t:r}=Pn(),s=_(()=>{const S=n.page.layout.panelWidths.sidebar,N=n.page.layout.panelWidths.compact;return{...S===void 0?{}:{"--mar-workbench-sidebar-width":`min(${S}px, var(--mar-sidebar-available-width))`,"--mar-workbench-sidebar-total-width":"calc(var(--mar-activity-rail-width) + var(--mar-workbench-sidebar-width))"},...N===void 0?{}:{"--mar-inspector-width":`${N}px`}}}),i=$(),l=$(!1),d=$(!1);function v(S,N){a("openWorkspaceDetails",S,N),i.value={nodeId:S,workspace:N},l.value=!0}function u(){return n.page.resources.nodes.find(S=>S.id===i.value?.nodeId)}function y(){const S=u();return S===void 0?void 0:n.page.resources.nodeLabel(S)}const k=_(()=>{const S=n.page.resources.nodeDetails;if(S===void 0)return;const N=n.page.resources.nodes.find(I=>I.id===S.id)??S;return{...N,label:n.page.resources.nodeLabel(N)}});async function T(){if(!(d.value||n.page.resources.nodeDetails===void 0)){d.value=!0;try{await n.page.resources.refreshNodes()}finally{d.value=!1}}}const p=_(()=>{const S=i.value?.workspace;if(S!==void 0)return{...S,label:S.displayName||S.path}});function m(){window.close()}return(S,N)=>{const I=St;return f(),L("main",{class:je(["console-shell",{"console-shell--gate":!e.page.identity.adminLoaded||!e.page.identity.admin.authenticated||e.page.identity.locked}]),style:Ct(s.value)},[e.page.identity.adminLoaded?e.page.identity.authenticationUnknown?(f(),ye(SE,{key:1,loading:e.page.identity.authenticationRestoring,"logo-url":o($a),onRetry:e.page.identity.refreshAdmin},null,8,["loading","logo-url","onRetry"])):e.page.identity.admin.authenticated?e.page.identity.locked?(f(),ye(UA,{key:3,password:e.page.identity.newPassword,"onUpdate:password":N[0]||(N[0]=b=>e.page.identity.newPassword=b),"validation-error":e.page.identity.passwordValidationError,loading:e.page.identity.loading,onClearError:N[1]||(N[1]=b=>e.page.identity.passwordValidationError=""),onSubmit:e.page.identity.changePassword},null,8,["password","validation-error","loading","onSubmit"])):(f(),L(qe,{key:4},[j("input",{ref:b=>e.page.uploads.workspaceUploadRecoveryInput=b,class:"workspace-upload-input",type:"file","aria-label":o(r)("workbench.recoverUpload"),onChange:N[2]||(N[2]=(...b)=>e.page.uploads.recoverWorkspaceUpload&&e.page.uploads.recoverWorkspaceUpload(...b))},null,40,qA),B(PA,{"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:N[3]||(N[3]=b=>e.page.layout.setPanelWidth("sidebar",b)),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:v,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(mn,{name:"workspace-scrim"},{default:Z(()=>[e.page.layout.mobileViewport&&e.page.layout.mobileWorkspaceSurface!=="conversation"?(f(),L("button",{key:0,class:"workspace-surface-scrim","aria-label":o(r)("workbench.closeWorkspaceTools"),type:"button",onClick:N[4]||(N[4]=(...b)=>e.page.layout.closeMobileWorkspaceSurface&&e.page.layout.closeMobileWorkspaceSurface(...b))},null,8,HA)):ue("",!0)]),_:1}),Dt(S.$slots,"surface",{},()=>[B(Cc,{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(),L("div",{key:0,class:"standalone-file-loading","aria-busy":e.page.files.standaloneFileLoading,"aria-live":"polite"},[e.page.files.standaloneFileError?(f(),L(qe,{key:0},[j("p",null,M(o(r)("generated.standaloneFilePreviewPage.unableToReadTheFileCheckYour")),1),B(I,{onClick:m},{default:Z(()=>[we(M(o(r)("generated.filePreviewDialog.closePreview")),1)]),_:1})],64)):(f(),ye(Bp,{key:1,variant:"page"}))],8,BA)):ue("",!0),Dt(S.$slots,"resource-details",{},()=>[B(Rg,{"node-open":e.page.resources.nodeDetailsDialogOpen,"onUpdate:nodeOpen":N[5]||(N[5]=b=>e.page.resources.nodeDetailsDialogOpen=b),"workspace-open":l.value,"onUpdate:workspaceOpen":N[6]||(N[6]=b=>l.value=b),"usage-open":e.page.resources.runnerUsageDialogOpen,"onUpdate:usageOpen":N[7]||(N[7]=b=>e.page.resources.runnerUsageDialogOpen=b),node:k.value,workspace:p.value,"workspace-node-id":u()?.id,"workspace-node-connected":u()?.connected,"workspace-git-manageable":i.value?.workspace.manageable,"workspace-secret-manageable":i.value?.workspace.manageable,"workspace-node-label":y(),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":d.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(),ye(mE,{key:2,loading:e.page.identity.loading,"logo-url":o($a),onLogin:e.page.identity.login},{"identity-extension":Z(()=>[Dt(S.$slots,"identity-extension",{},void 0,!0)]),_:3},8,["loading","logo-url","onLogin"])):(f(),L("div",{key:0,class:"page-loading-state",role:"status","aria-busy":"true","aria-label":o(r)("common.loading")},[B(gn)],8,VA)),B(Ml,{"attachment-open":e.page.interactions.attachmentPreviewOpen,"onUpdate:attachmentOpen":N[8]||(N[8]=b=>e.page.interactions.attachmentPreviewOpen=b),"conversation-open":e.page.interactions.conversationImagePreviewOpen,"onUpdate:conversationOpen":N[9]||(N[9]=b=>e.page.interactions.conversationImagePreviewOpen=b),attachment:e.page.interactions.attachmentPreview,conversation:e.page.interactions.conversationImagePreview,onClearAttachment:N[10]||(N[10]=b=>e.page.interactions.attachmentPreview=void 0),onClearConversation:N[11]||(N[11]=b=>e.page.interactions.conversationImagePreview=void 0),onConversationError:e.page.interactions.handleConversationImagePreviewError},null,8,["attachment-open","conversation-open","attachment","conversation","onConversationError"]),B(_E,{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"]),j("p",GA,M(o(r)("common.webReady")),1)],6)}}}),KA=ut(zA,[["__scopeId","data-v-3edf2b7d"]]),jA=ot({__name:"WorkbenchPage",setup(e){const t=Rt(Fw()),{t:n}=Pn(),a=new URLSearchParams(window.location.search).get("oauthError");let r=!1;return Ge(()=>t.identity.adminLoaded,s=>{if(!s||r||a===null)return;r=!0,tt(rg(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(),ye(KA,{page:o(t),surface:o(t)},{"identity-extension":Z(()=>[B(sm,{request:o(t).identity.request},null,8,["request"])]),surface:Z(()=>[B(cE,{page:o(t)},null,8,["page"])]),_:1},8,["page","surface"]))}}),PN=Object.freeze(Object.defineProperty({__proto__:null,default:jA},Symbol.toStringTag,{value:"Module"}));export{Cn as T,PN as W,sw as a,lw as c,cw as o,Tw as p};
|