decocms 4.81.2 → 4.82.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/assets/{AlertCircle-DU6qWK9T.js → AlertCircle-DG4a-YPJ.js} +1 -1
- package/dist/client/assets/{AreaChart-BX2a1Rtg.js → AreaChart-BJOksRko.js} +1 -1
- package/dist/client/assets/{ArrowUp-DYmWx-L-.js → ArrowUp-CY3oZMDN.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-DmbxJntq.js → ArrowUpRight-BYqJ_odf.js} +1 -1
- package/dist/client/assets/{Check-B1SirwZu.js → Check-ChISHbfh.js} +1 -1
- package/dist/client/assets/{CheckCircle-DlnXCgUt.js → CheckCircle-CfG0TsZ1.js} +1 -1
- package/dist/client/assets/{ChevronDown-XW3mndxm.js → ChevronDown-Bbe4LEpG.js} +1 -1
- package/dist/client/assets/{ChevronRight-CMxF_EMm.js → ChevronRight-CvFLMLSs.js} +1 -1
- package/dist/client/assets/{ChevronUp-CBA75LiO.js → ChevronUp-CG-5lkz8.js} +1 -1
- package/dist/client/assets/{Circle-HACtkegN.js → Circle-WWMwGxik.js} +1 -1
- package/dist/client/assets/{Copy01-DvYXKq8Z.js → Copy01-ChDVmiye.js} +1 -1
- package/dist/client/assets/{DotsVertical-Bk2adjcS.js → DotsVertical-CNYSgMU1.js} +1 -1
- package/dist/client/assets/{Eye-CikrhNcF.js → Eye-BpNdlDWP.js} +1 -1
- package/dist/client/assets/{FilterLines-CKkJTX1P.js → FilterLines-cseXnN6n.js} +1 -1
- package/dist/client/assets/{Flag01-BiiEWwXG.js → Flag01-rPnNU1v-.js} +1 -1
- package/dist/client/assets/{Globe01-BPvkaID5.js → Globe01-DYMLCnX6.js} +1 -1
- package/dist/client/assets/{Globe04-BLOGIunc.js → Globe04-DMc415uO.js} +1 -1
- package/dist/client/assets/{HardDrive-BBQgAxPW.js → HardDrive-Dc7WUQMC.js} +1 -1
- package/dist/client/assets/{Image01-BxR0qJ9h.js → Image01-4bzNBeP8.js} +1 -1
- package/dist/client/assets/{Key01-CSjfIfTE.js → Key01-BGutOYpw.js} +1 -1
- package/dist/client/assets/{LayoutLeft-vGwalVIw.js → LayoutLeft-Chn2g8D1.js} +1 -1
- package/dist/client/assets/{LinkExternal01-BapUlNlT.js → LinkExternal01-C3ixLwyv.js} +1 -1
- package/dist/client/assets/{List-D4fyC4RM.js → List-Cb6GXNpI.js} +1 -1
- package/dist/client/assets/{Monitor01-gh3GDPr8.js → Monitor01-DlZ0h2Cv.js} +1 -1
- package/dist/client/assets/{Package-BXkFeDMT.js → Package-D5pkJnJd.js} +1 -1
- package/dist/client/assets/{Palette-DvrEWWT4.js → Palette-LHyI2Mdb.js} +1 -1
- package/dist/client/assets/{Play-D6amoQin.js → Play-Dca6um-D.js} +1 -1
- package/dist/client/assets/{Plus-Bz7loY4f.js → Plus-C4WTG9Kp.js} +1 -1
- package/dist/client/assets/{SearchLg-DvTulfGj.js → SearchLg-CyYHECU6.js} +1 -1
- package/dist/client/assets/{SearchMd-LCBR2m3m.js → SearchMd-BKcd0fB6.js} +1 -1
- package/dist/client/assets/{Settings02-B51ZDizH.js → Settings02-BojRVJl-.js} +1 -1
- package/dist/client/assets/{Shield01-CfKQ60er.js → Shield01-abTM_9f7.js} +1 -1
- package/dist/client/assets/{Star01-BrCcPuVF.js → Star01-BH1rvlEO.js} +1 -1
- package/dist/client/assets/{Stars01-CAjraTXl.js → Stars01-DFT0n9O7.js} +1 -1
- package/dist/client/assets/{Stars02-BjTmIaMZ.js → Stars02-B-LWJdG7.js} +1 -1
- package/dist/client/assets/{Sun-DWrRa3yX.js → Sun-c6JSAmBQ.js} +1 -1
- package/dist/client/assets/{SwitchHorizontal01-BLcjEnbu.js → SwitchHorizontal01-CL9u8gys.js} +1 -1
- package/dist/client/assets/{Tool01-cmPVPWfy.js → Tool01-DcHeaUVL.js} +1 -1
- package/dist/client/assets/{Tool02-B26tsl4g.js → Tool02-CITs9l5E.js} +1 -1
- package/dist/client/assets/{Trash01-CL-hhLHz.js → Trash01-_2UtyZ3i.js} +1 -1
- package/dist/client/assets/{TrendUp01-ZVidFF-q.js → TrendUp01-Ds4Xp_Ie.js} +1 -1
- package/dist/client/assets/{Upload01-vsvHLvaA.js → Upload01-BRK5C5r6.js} +1 -1
- package/dist/client/assets/{User01-DPvuGxxC.js → User01-CU8XbMY2.js} +1 -1
- package/dist/client/assets/UserPlus01-BYCDJ1qH.js +1 -0
- package/dist/client/assets/{Users01-DAkYa73h.js → Users01-DvbIEeSV.js} +1 -1
- package/dist/client/assets/{Users03-dXp1ufdN.js → Users03-Cttn4hE2.js} +1 -1
- package/dist/client/assets/{X-nh-lAoJ9.js → X-DQ-S1g4-.js} +1 -1
- package/dist/client/assets/{XCircle-BGAsxFPn.js → XCircle-D994HWfT.js} +1 -1
- package/dist/client/assets/{XClose-CSyFLxIV.js → XClose-BiShBa_h.js} +1 -1
- package/dist/client/assets/{Zap-Di08z3mI.js → Zap-DHi1Rc1o.js} +1 -1
- package/dist/client/assets/{ZapSquare-ChpA6sdD.js → ZapSquare-OWnxdaqo.js} +1 -1
- package/dist/client/assets/{ZoomOut-Bw94mtVG.js → ZoomOut-CDmvqBAB.js} +1 -1
- package/dist/client/assets/{access-gate-CrLLz-yL.js → access-gate-CK3VnyOP.js} +1 -1
- package/dist/client/assets/{add-section-modal-BBh5-rgO.js → add-section-modal-DxseLf10.js} +1 -1
- package/dist/client/assets/agent-icon-ydo5jgpp.js +1 -0
- package/dist/client/assets/{agents-list-BFe2ryV7.js → agents-list-CosPoQ08.js} +1 -1
- package/dist/client/assets/{ai-providers-BM1lVkZu.js → ai-providers-CSPy81Zd.js} +1 -1
- package/dist/client/assets/{alert-DZjqlIoS.js → alert-3o7FhARD.js} +1 -1
- package/dist/client/assets/{alert-dialog-n6V7r3dX.js → alert-dialog-D_YtJjUs.js} +1 -1
- package/dist/client/assets/{app-editor-BCzWBSCz.js → app-editor-C-dJlVZe.js} +1 -1
- package/dist/client/assets/{auth-BiUmtjwE.js → auth-B1xyLxRH.js} +1 -1
- package/dist/client/assets/{auth-catchall-CCvesDsm.js → auth-catchall-CpQBQm_2.js} +1 -1
- package/dist/client/assets/{auth-entry-CO3BGHHT.js → auth-entry--O_MGURm.js} +1 -1
- package/dist/client/assets/{auth-split-layout-C1oeyfdQ.js → auth-split-layout-BTlIqYu6.js} +1 -1
- package/dist/client/assets/{authenticate-and-persist-oauth-BVokl0ja.js → authenticate-and-persist-oauth-Bt4_puMP.js} +1 -1
- package/dist/client/assets/{automation-list-row-D_PKR44H.js → automation-list-row-Bc0NECF5.js} +1 -1
- package/dist/client/assets/{automation-runs-B3MRH4Ue.js → automation-runs-Cq0dWJA-.js} +1 -1
- package/dist/client/assets/automations-CK8nCCYB.js +1 -0
- package/dist/client/assets/{autosend-CXJZF5Z0.js → autosend-BdDL9PqC.js} +1 -1
- package/dist/client/assets/{avatar-CjaRl_73.js → avatar-e-7iWxAV.js} +1 -1
- package/dist/client/assets/{badge-Bgeg2fRu.js → badge-CKZToSag.js} +1 -1
- package/dist/client/assets/{block-document-_pMFHiYF.js → block-document-MxZBmSF2.js} +2 -2
- package/dist/client/assets/{brand-context-Bi72USxh.js → brand-context-QBNHO2k_.js} +1 -1
- package/dist/client/assets/{buckets-CdfoFreA.js → buckets-BRORe0L_.js} +1 -1
- package/dist/client/assets/{bulk-category-panel-C0mBaEOS.js → bulk-category-panel-gFz9ZGsT.js} +1 -1
- package/dist/client/assets/{calendar-BWkFk64D.js → calendar-CqQhqjiW.js} +1 -1
- package/dist/client/assets/{capability-load-error-Ce_wOXia.js → capability-load-error-DPvQzY3V.js} +1 -1
- package/dist/client/assets/{card-X8PevBIr.js → card-BR1-VnZL.js} +1 -1
- package/dist/client/assets/category-editor-BAE3E2Td.js +1 -0
- package/dist/client/assets/{chat-context-Dk_Lat8F.js → chat-context-C_0NQZnu.js} +1 -1
- package/dist/client/assets/{checkbox-_0aEsmsd.js → checkbox-C_bqZEJS.js} +1 -1
- package/dist/client/assets/{cli-auth-success-Cng7kHAN.js → cli-auth-success-C7gWZcs0.js} +1 -1
- package/dist/client/assets/{collection-detail-BSXBusUs.js → collection-detail-oYbSlT56.js} +1 -1
- package/dist/client/assets/{collection-display-button-GDt3-KE2.js → collection-display-button-BpbkWssa.js} +1 -1
- package/dist/client/assets/{collection-search-C5ZBxcYE.js → collection-search-DGV2A8CZ.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-CsFDZ-oD.js → collection-table-wrapper-Depv6BU6.js} +1 -1
- package/dist/client/assets/{collection-tabs-BLo9632I.js → collection-tabs-BvOI_2-G.js} +1 -1
- package/dist/client/assets/{command-DMYAZJ4K.js → command-BrpyzanT.js} +1 -1
- package/dist/client/assets/{commerce-onboarding-BKfuEAwm.js → commerce-onboarding-BGMDnh8R.js} +1 -1
- package/dist/client/assets/{companions-core-gEXsFjyG.js → companions-core-B8rS9LMp.js} +1 -1
- package/dist/client/assets/{connect-desktop-dialog-Dxqz10c5.js → connect-desktop-dialog-DTJycKOS.js} +1 -1
- package/dist/client/assets/{connection-card-itgnn1o8.js → connection-card-b4gOoJpq.js} +1 -1
- package/dist/client/assets/{connection-detail-D8POxKuW.js → connection-detail-n02-Fumo.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-BLfFowmr.js → connection-form-helpers-DC6AoNcw.js} +1 -1
- package/dist/client/assets/{connections-fXI70Tj4.js → connections-C7uc7kdo.js} +1 -1
- package/dist/client/assets/{decopilot-sse-pool-iUHbQN32.js → decopilot-sse-pool-Bc1zPkcw.js} +1 -1
- package/dist/client/assets/{dialog-DSMMHp7k.js → dialog-D-FV4Zb0.js} +1 -1
- package/dist/client/assets/{domain-settings-CrH1Ztmo.js → domain-settings-CeLZjBnU.js} +1 -1
- package/dist/client/assets/{drawer-DVZ6LfPY.js → drawer-C1bC-kLm.js} +1 -1
- package/dist/client/assets/{dropdown-menu-C25KxtxJ.js → dropdown-menu-DU7Il0vV.js} +1 -1
- package/dist/client/assets/{empty-state-BRubSasg.js → empty-state-C0HMrPFH.js} +1 -1
- package/dist/client/assets/{extract-connection-data-BM6vnnLN.js → extract-connection-data-BcTaSfYq.js} +1 -1
- package/dist/client/assets/{file-explorer-Bjem1H-N.js → file-explorer-C2MyW3q_.js} +2 -2
- package/dist/client/assets/{file-type-icon-5IRBmGyW.js → file-type-icon-CWZqRYUk.js} +3 -3
- package/dist/client/assets/{files-DljQiShy.js → files-DrALHp6L.js} +1 -1
- package/dist/client/assets/{form-v_v0yrL_.js → form-CrzvXOa7.js} +1 -1
- package/dist/client/assets/{general-CCFcm1Qv.js → general-BnmXxCbB.js} +1 -1
- package/dist/client/assets/{github-repo-picker-XYJ5PlsS.js → github-repo-picker-Bs9HleTv.js} +1 -1
- package/dist/client/assets/{hooks-D2zwv91o.js → hooks-Cpz2-QJF.js} +1 -1
- package/dist/client/assets/{index-CtAI_Tcv.js → index-5anpKa-I.js} +3 -3
- package/dist/client/assets/{index-E1YY2L0V.js → index-Be0F7lEu.js} +1 -1
- package/dist/client/assets/index-Bnuq7-6r.js +4 -0
- package/dist/client/assets/{index-DCkGXUo7.js → index-CAXd9cV5.js} +1 -1
- package/dist/client/assets/{index-CbKtPPYD.js → index-CM6PlRVB.js} +1 -1
- package/dist/client/assets/{index-C9N_dWzA.js → index-CSEmxRjl.js} +1 -1
- package/dist/client/assets/{index-CXwn5wJs.js → index-CUDGsjpT.js} +1 -1
- package/dist/client/assets/{index-CK-_Svsz.js → index-C_1FDPkV.js} +1 -1
- package/dist/client/assets/{index-B0jR2vR4.js → index-Ce4Ki9vT.js} +1 -1
- package/dist/client/assets/{index-CEIVV-eX.js → index-Cn9_zZs1.js} +27 -27
- package/dist/client/assets/{index-D_aEBgoO.js → index-D8l8P2_T.js} +1 -1
- package/dist/client/assets/{index-don4pY8a.js → index-DEBreNlD.js} +1 -1
- package/dist/client/assets/{index-CW-frCvB.js → index-DHUcQ3Zc.js} +12 -12
- package/dist/client/assets/{index-Bv2X_RsF.js → index-D_Ke4qVo.js} +1 -1
- package/dist/client/assets/{index-redirect-DWsiHE_H.js → index-redirect-DbE0vYCc.js} +1 -1
- package/dist/client/assets/{input-Bh6jfBSY.js → input-CD4iLUlU.js} +1 -1
- package/dist/client/assets/{integration-icon-COnO4G_g.js → integration-icon-lunUJ8Ws.js} +1 -1
- package/dist/client/assets/{invite-member-dialog-D6xpR-Qy.js → invite-member-dialog-D5mXwauc.js} +1 -1
- package/dist/client/assets/{label-0VMJq-Lb.js → label-64NHGLB9.js} +1 -1
- package/dist/client/assets/{layout-CzNN-LbN.js → layout-VaJn51IJ.js} +1 -1
- package/dist/client/assets/{login-r--GMbC0.js → login-BeOZYVC0.js} +1 -1
- package/dist/client/assets/{mcp-oauth-CTMtegDM.js → mcp-oauth-C6WZv_ih.js} +1 -1
- package/dist/client/assets/{members-Y8qsAhwm.js → members-B1pSeDyc.js} +1 -1
- package/dist/client/assets/{monaco-editor-AmLAOARt.js → monaco-editor-BiBep5KI.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-D2OiWqgN.js → monitoring-stats-row-YDuotwG7.js} +1 -1
- package/dist/client/assets/{multi-select-CECHHZ2Q.js → multi-select-DzAx0o10.js} +1 -1
- package/dist/client/assets/{oauth-callback-Dim9aq-a.js → oauth-callback-DzyvCiRg.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-Wt7pRmmv.js → oauth-callback-ai-provider-tQQH9dij.js} +1 -1
- package/dist/client/assets/{onboarding-BKUilEh5.js → onboarding-DLi3hzM4.js} +1 -1
- package/dist/client/assets/{org-install-EaOEXvIc.js → org-install-Pqgmj8FY.js} +1 -1
- package/dist/client/assets/{org-layout-CkAZlUK_.js → org-layout-BqTSwDt4.js} +1 -1
- package/dist/client/assets/{organization-choice-BDpNe-kr.js → organization-choice-CuegwoX1.js} +1 -1
- package/dist/client/assets/{orgs-BBPF2dvP.js → orgs-WoKnQgDC.js} +1 -1
- package/dist/client/assets/{page-seo-form-BLchAW2-.js → page-seo-form-CLVrDlQB.js} +1 -1
- package/dist/client/assets/page-seo-sheet-CzvbgQA7.js +1 -0
- package/dist/client/assets/{popover-CStICzGk.js → popover-jkzPowft.js} +1 -1
- package/dist/client/assets/{post-editor-kLIsDRl5.js → post-editor-BCUZ6h21.js} +1 -1
- package/dist/client/assets/{primitives-Cy4duky0.js → primitives-CH6E3z24.js} +1 -1
- package/dist/client/assets/{profile-DjYxdZ1v.js → profile-CFLyWsOl.js} +1 -1
- package/dist/client/assets/project-app-view-xoHNcd4l.js +1 -0
- package/dist/client/assets/record-editor-9SEM1afd.js +1 -0
- package/dist/client/assets/redirect-editor-BZFlJqgy.js +1 -0
- package/dist/client/assets/registry-DgDPfJ3f.js +2 -0
- package/dist/client/assets/{registry-layout-T7XwrR9-.js → registry-layout-BZQsfAMD.js} +1 -1
- package/dist/client/assets/{reports-Cli9K1Os.js → reports-FN29XmCC.js} +1 -1
- package/dist/client/assets/{require-capability-vQhT2fzw.js → require-capability-ByUm4jHt.js} +1 -1
- package/dist/client/assets/{required-auth-layout-u-LZwScR.js → required-auth-layout-BgZLxCUt.js} +1 -1
- package/dist/client/assets/{reset-password-DU77F14W.js → reset-password-BVer2zil.js} +1 -1
- package/dist/client/assets/{roles-UarmzT95.js → roles-C5kTYCzJ.js} +1 -1
- package/dist/client/assets/{search-input-D3ST0qhK.js → search-input-Dm12yYY_.js} +1 -1
- package/dist/client/assets/{secrets-CnMya7Aa.js → secrets-DM-TwM9g.js} +1 -1
- package/dist/client/assets/{sections-editor-VJungP8L.js → sections-editor-DEkdeycB.js} +2 -2
- package/dist/client/assets/{select-x3JQ-RMK.js → select-C8J1x9Hh.js} +1 -1
- package/dist/client/assets/{select-model-XJdXc61b.js → select-model-BVeWMw1Y.js} +1 -1
- package/dist/client/assets/{self-tool-result-DjEGnrMB.js → self-tool-result-BTeHqlVt.js} +1 -1
- package/dist/client/assets/{seo-editor-VDc1kVOl.js → seo-editor-QW1zZx-2.js} +1 -1
- package/dist/client/assets/{settings-layout-DM49EMy5.js → settings-layout-LWHpkrS1.js} +1 -1
- package/dist/client/assets/{settings-section-rDf583ia.js → settings-section-D0EkW6Kl.js} +1 -1
- package/dist/client/assets/{shell-controls-YRxMt7Ep.js → shell-controls-C9VF1AuK.js} +1 -1
- package/dist/client/assets/{shell-layout-F5G52jTC.js → shell-layout-DXe7SFEe.js} +1 -1
- package/dist/client/assets/{sidebar-BKNPuVLe.js → sidebar-DDv6Q6Vr.js} +1 -1
- package/dist/client/assets/{skeleton-6SB_9DNZ.js → skeleton-btiu0WVx.js} +1 -1
- package/dist/client/assets/{sso-zrdH8Br4.js → sso-Bn2P_vs9.js} +1 -1
- package/dist/client/assets/{store-C083vtgL.js → store-ClNAV2y4.js} +1 -1
- package/dist/client/assets/store-registry-LHS4MChI.js +2 -0
- package/dist/client/assets/{studio-tools-Dh5WF9Xa.js → studio-tools-oG5STvP8.js} +1 -1
- package/dist/client/assets/{switch-Dof4h0cK.js → switch-D6jizfdP.js} +1 -1
- package/dist/client/assets/{table-BMAClQxa.js → table-Bphxy4QJ.js} +1 -1
- package/dist/client/assets/{tabs-kA2W3Sac.js → tabs-ClmHxPtb.js} +1 -1
- package/dist/client/assets/{textarea-C_jCSzCx.js → textarea-DOeMxqmL.js} +1 -1
- package/dist/client/assets/{toggle-group-CyCl4f6n.js → toggle-group-QBrPkArv.js} +1 -1
- package/dist/client/assets/{toolbar-BWE-_zyA.js → toolbar-B0RrtA9Q.js} +1 -1
- package/dist/client/assets/{toolbar-icon-button-Kwfu3goF.js → toolbar-icon-button-BsOO9_t9.js} +1 -1
- package/dist/client/assets/{tooltip-2HPu4RGb.js → tooltip-C_kxGPbz.js} +1 -1
- package/dist/client/assets/{use-ai-providers-Blpgxebg.js → use-ai-providers-DxiHGIDE.js} +1 -1
- package/dist/client/assets/{use-automations-Bt3dZ-M9.js → use-automations-DmCHkQYX.js} +1 -1
- package/dist/client/assets/{use-autosave-C6muYSz0.js → use-autosave-B0C7kmP9.js} +1 -1
- package/dist/client/assets/{use-capability-BQHuJWJr.js → use-capability-DLDYZAr8.js} +1 -1
- package/dist/client/assets/{use-clock-tick-BMPCELUk.js → use-clock-tick-D0xcXU6l.js} +1 -1
- package/dist/client/assets/{use-collections-C1J3GQpR.js → use-collections-Cy2lyjQw.js} +1 -1
- package/dist/client/assets/{use-connection-NmR6dvUm.js → use-connection-D17m_MYi.js} +1 -1
- package/dist/client/assets/{use-copy-NStrWZLh.js → use-copy-BPpad-V6.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-qIpQsEnE.js → use-create-virtual-mcp-XrULMqna.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-CGIXl8u6.js → use-debounced-autosave-9-Lkd_Ut.js} +1 -1
- package/dist/client/assets/{use-debounced-value-DqlOqEus.js → use-debounced-value-DNgqvjTz.js} +1 -1
- package/dist/client/assets/{use-deco-credits-CVLKWJIA.js → use-deco-credits-B2YuBk4X.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-Bc8oHEVV.js → use-decopilot-events-BcuOI-ix.js} +1 -1
- package/dist/client/assets/{use-delete-connection-Cqubh5me.js → use-delete-connection-lihZcOO9.js} +1 -1
- package/dist/client/assets/{use-deployment-admin-BCJqypmY.js → use-deployment-admin-DmEA-Es_.js} +1 -1
- package/dist/client/assets/{use-file-configs-Dg3JAXLL.js → use-file-configs-CxOBZJYh.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-HBo6BgG2.js → use-infinite-scroll-DuDfwOs2.js} +1 -1
- package/dist/client/assets/{use-join-requests-S9TrPHEO.js → use-join-requests-dCTPB9ob.js} +1 -1
- package/dist/client/assets/{use-mcp-auth-status-CESYdV6e.js → use-mcp-auth-status-BEGadIzu.js} +1 -1
- package/dist/client/assets/{use-mcp-client-Byx07Dkp.js → use-mcp-client-ptPJt8Ca.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-BjViD0C1.js → use-mcp-tools-Dta3MTkm.js} +1 -1
- package/dist/client/assets/{use-members-CJQYBP-7.js → use-members-FRqz-iYP.js} +1 -1
- package/dist/client/assets/{use-mobile-BmSCNgu-.js → use-mobile-BjkhQEF-.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-SXHfducG.js → use-navigate-to-agent--gTBVJlO.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-DvA4mWM6.js → use-org-auth-client-Bitr-MZM.js} +1 -1
- package/dist/client/assets/{use-org-sso-BxYFEe-j.js → use-org-sso-DZnTAe_Y.js} +1 -1
- package/dist/client/assets/{use-organization-roles-CBOBYmxE.js → use-organization-roles-VSQXuUWF.js} +1 -1
- package/dist/client/assets/{use-organization-settings-DkmAV78T.js → use-organization-settings-Bvrp17B3.js} +1 -1
- package/dist/client/assets/{use-registry-app-CT5qp6qN.js → use-registry-app-5nSleZYT.js} +1 -1
- package/dist/client/assets/{use-registry-connections-DJYW5MTo.js → use-registry-connections-DmJUTjTR.js} +1 -1
- package/dist/client/assets/{use-secrets-00nGi3R2.js → use-secrets-DCCcb8Px.js} +1 -1
- package/dist/client/assets/{use-status-sounds-CtFZ8vsn.js → use-status-sounds-Cb-T3G8j.js} +1 -1
- package/dist/client/assets/{use-view-mode-BUDQh3CV.js → use-view-mode-BriXwO2h.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-BWDACHuK.js → use-virtual-mcp-QyfBPZvN.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-CyalJOh2.js +1 -0
- package/dist/client/assets/{useRouterState-NHNd_HiS.js → useRouterState-DgQXvye4.js} +1 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-uJFzMLMT.js +1 -0
- package/dist/client/assets/{users-Dju8Mwa7.js → users-DMSvo7i0.js} +1 -1
- package/dist/client/assets/{variant-calendar-lVo1tb7b.js → variant-calendar-Dhfsh0f3.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-BOhixd9T.js → view-mode-toggle-C7tDgMVK.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +304 -304
- package/dist/server/server.js +158 -158
- package/package.json +1 -1
- package/dist/client/assets/UserPlus01-DTRkkPuG.js +0 -1
- package/dist/client/assets/agent-icon-C-qK9QQP.js +0 -1
- package/dist/client/assets/automations-7K3BAiEK.js +0 -1
- package/dist/client/assets/category-editor-DAi0v4SL.js +0 -1
- package/dist/client/assets/index-RPh27idC.js +0 -2
- package/dist/client/assets/page-seo-sheet-Cd2F_u4n.js +0 -1
- package/dist/client/assets/project-app-view-DSqs7t7m.js +0 -1
- package/dist/client/assets/record-editor-Bo6yXT4o.js +0 -1
- package/dist/client/assets/redirect-editor-CjFkFKFF.js +0 -1
- package/dist/client/assets/registry-BhkXI7WR.js +0 -2
- package/dist/client/assets/store-registry-BTX3JlmI.js +0 -2
- package/dist/client/assets/useInfiniteQuery-Byg89hfs.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-t0KcEsNQ.js +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{c as Y,r as u,j as r,i as oe,B as pe,d$ as jt,aO as Nt,aU as re,e0 as St,e1 as Mt,e2 as Dt,e3 as Rt,bO as Pt,e4 as Et,e5 as Be,aQ as kt,e6 as Tt,e7 as Ot,e8 as At,e9 as Lt,ea as Ft,eb as $t,ec as It,ed as _t,ee as zt,l as ie,n as Gt,t as Q,K as Le}from"./index-CW-frCvB.js";import{F as Kt,l as Bt}from"./index-C9N_dWzA.js";import{d as Vt,ax as Ut,ay as Wt}from"./agent-icon-C-qK9QQP.js";import{s as Qt}from"./XClose-CSyFLxIV.js";import{A as qt}from"./automation-runs-B3MRH4Ue.js";import{b as Fe,T as $e,a as Ie}from"./tooltip-2HPu4RGb.js";import{b as Ht}from"./chat-context-Dk_Lat8F.js";import{u as Xt}from"./shell-layout-F5G52jTC.js";import{s as de,a as _e,f as Yt}from"./index-CEIVV-eX.js";import{a as Jt,h as Zt,D as en,c as tn,d as nn,e as rn}from"./dialog-DSMMHp7k.js";import{I as ze}from"./input-Bh6jfBSY.js";import{c as on,d as an,b as sn,A as ln,g as cn,e as dn,a as un,f as mn}from"./alert-dialog-n6V7r3dX.js";import{t as fn}from"./ChevronDown-XW3mndxm.js";import{i as pn}from"./ChevronRight-CMxF_EMm.js";import{a as xn}from"./ZoomOut-Bw94mtVG.js";import{v as hn,E as gn,w as Ge,x as ve,y as vn,z as yn,A as Cn,C as H,D as ue,G as wn,g as ye,I as Ce,J as bn,K as jn,M as we,N as me,O as be,P as Nn,Q as Sn}from"./index-DCkGXUo7.js";import"./AlertCircle-DU6qWK9T.js";import"./UserPlus01-DTRkkPuG.js";import"./Tool01-cmPVPWfy.js";import"./ArrowUp-DYmWx-L-.js";import"./Settings02-B51ZDizH.js";import"./Tool02-B26tsl4g.js";import"./XCircle-BGAsxFPn.js";import"./ArrowUpRight-DmbxJntq.js";import"./TrendUp01-ZVidFF-q.js";import"./ZapSquare-ChpA6sdD.js";import"./Users03-dXp1ufdN.js";import"./CheckCircle-DlnXCgUt.js";import"./Check-B1SirwZu.js";import"./ChevronUp-CBA75LiO.js";import"./Circle-HACtkegN.js";import"./Stars02-BjTmIaMZ.js";import"./Copy01-DvYXKq8Z.js";import"./DotsVertical-Bk2adjcS.js";import"./Globe01-BPvkaID5.js";import"./Eye-CikrhNcF.js";import"./FilterLines-CKkJTX1P.js";import"./Flag01-BiiEWwXG.js";import"./Star01-BrCcPuVF.js";import"./Globe04-BLOGIunc.js";import"./SwitchHorizontal01-BLcjEnbu.js";import"./HardDrive-BBQgAxPW.js";import"./Image01-BxR0qJ9h.js";import"./Key01-CSjfIfTE.js";import"./LayoutLeft-vGwalVIw.js";import"./LinkExternal01-BapUlNlT.js";import"./List-D4fyC4RM.js";import"./Monitor01-gh3GDPr8.js";import"./Sun-DWrRa3yX.js";import"./Package-BXkFeDMT.js";import"./Palette-DvrEWWT4.js";import"./Play-D6amoQin.js";import"./Plus-Bz7loY4f.js";import"./SearchLg-DvTulfGj.js";import"./SearchMd-LCBR2m3m.js";import"./Shield01-CfKQ60er.js";import"./Stars01-CAjraTXl.js";import"./Trash01-CL-hhLHz.js";import"./Upload01-vsvHLvaA.js";import"./User01-DPvuGxxC.js";import"./Users01-DAkYa73h.js";import"./X-nh-lAoJ9.js";import"./Zap-Di08z3mI.js";import"./select-x3JQ-RMK.js";import"./useInfiniteQuery-Byg89hfs.js";import"./use-infinite-scroll-HBo6BgG2.js";import"./use-connection-NmR6dvUm.js";import"./use-collections-C1J3GQpR.js";import"./use-mcp-client-Byx07Dkp.js";import"./constants-BHDe7bIw.js";import"./auth-BiUmtjwE.js";import"./use-virtual-mcp-BWDACHuK.js";import"./card-X8PevBIr.js";import"./sidebar-BKNPuVLe.js";import"./use-mobile-BmSCNgu-.js";import"./table-BMAClQxa.js";import"./empty-state-BRubSasg.js";import"./use-members-CJQYBP-7.js";import"./use-org-auth-client-DvA4mWM6.js";import"./use-clock-tick-BMPCELUk.js";import"./use-automations-Bt3dZ-M9.js";import"./studio-tools-Dh5WF9Xa.js";import"./useSuspenseInfiniteQuery-t0KcEsNQ.js";import"./avatar-CjaRl_73.js";import"./format-time-BnbuEtat.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./use-copy-NStrWZLh.js";import"./file-type-icon-5IRBmGyW.js";import"./tab-id-BijBBRwE.js";import"./hooks-D2zwv91o.js";import"./decopilot-sse-pool-iUHbQN32.js";import"./backoff-CrEUbyZT.js";import"./delay-CnY5UFtP.js";import"./monaco-editor-AmLAOARt.js";import"./index-Bv2X_RsF.js";import"./integration-icon-COnO4G_g.js";import"./use-navigate-to-agent-SXHfducG.js";import"./reusable-new-chat-CouMjkYR.js";import"./AreaChart-BX2a1Rtg.js";import"./form-v_v0yrL_.js";import"./label-0VMJq-Lb.js";import"./autosend-CXJZF5Z0.js";import"./use-ai-providers-Blpgxebg.js";import"./location-BpLtHjTZ.js";import"./use-decopilot-events-Bc8oHEVV.js";import"./use-organization-settings-DkmAV78T.js";import"./required-auth-layout-u-LZwScR.js";import"./use-org-sso-BxYFEe-j.js";import"./drawer-DVZ6LfPY.js";import"./collection-search-C5ZBxcYE.js";import"./tabs-kA2W3Sac.js";import"./toggle-group-CyCl4f6n.js";import"./use-deco-credits-CVLKWJIA.js";import"./extract-connection-data-BM6vnnLN.js";import"./connection-card-itgnn1o8.js";import"./use-registry-connections-DJYW5MTo.js";import"./retry-CErkP7V6.js";import"./connection-slug-eyAPH6o3.js";import"./textarea-C_jCSzCx.js";import"./connection-form-helpers-BLfFowmr.js";import"./authenticate-and-persist-oauth-BVokl0ja.js";import"./mcp-oauth-CTMtegDM.js";import"./collection-tabs-BLo9632I.js";import"./badge-Bgeg2fRu.js";import"./connect-desktop-dialog-Dxqz10c5.js";import"./select-model-XJdXc61b.js";import"./checkbox-_0aEsmsd.js";import"./skeleton-6SB_9DNZ.js";import"./ai-providers-logos-DD3qZ33J.js";import"./settings-section-rDf583ia.js";import"./command-DMYAZJ4K.js";import"./index-don4pY8a.js";import"./popover-CStICzGk.js";import"./dropdown-menu-C25KxtxJ.js";import"./question-004-sINsf4GQ.js";import"./use-status-sounds-CtFZ8vsn.js";import"./toolbar-BWE-_zyA.js";import"./use-mcp-tools-BjViD0C1.js";import"./use-capability-BQHuJWJr.js";import"./use-debounced-autosave-CGIXl8u6.js";import"./index-CXwn5wJs.js";import"./search-input-D3ST0qhK.js";import"./use-mcp-auth-status-CESYdV6e.js";import"./switch-Dof4h0cK.js";import"./use-registry-app-CT5qp6qN.js";import"./github-repo-picker-XYJ5PlsS.js";import"./use-debounced-value-DqlOqEus.js";import"./provision-repo-scoped-github-connection-2iDn-wQ1.js";import"./github-repo-scope-DjMZbiKa.js";import"./use-secrets-00nGi3R2.js";import"./formatDistanceToNow-Cb2QZZJn.js";import"./companions-core-gEXsFjyG.js";import"./index-RPh27idC.js";import"./get-initials-D-f_fDFw.js";import"./calendar-BWkFk64D.js";import"./toolbar-icon-button-Kwfu3goF.js";import"./use-file-configs-Dg3JAXLL.js";import"./automation-list-row-D_PKR44H.js";const Mn={"new-file":{title:"New File",description:"Enter a name for the new file.",submit:"Create",placeholder:"filename.ts"},"new-folder":{title:"New Folder",description:"Enter a name for the new folder.",submit:"Create",placeholder:"folder-name"},rename:{title:"Rename",description:"Enter a new name for this item.",submit:"Rename",placeholder:"new-name"}};function Dn(s){const e=Y.c(51),{open:i,mode:a,initialName:c,parentLabel:m,isPending:h,onSubmit:p,onOpenChange:v}=s,y=c===void 0?"":c,d=h===void 0?!1:h,[x,C]=u.useState(y),[D,k]=u.useState(i),g=Mn[a];i!==D&&(k(i),i&&C(y));let b;e[0]!==d||e[1]!==v?(b=V=>{!V&&!d&&v(!1)},e[0]=d,e[1]=v,e[2]=b):b=e[2];const U=b;let T;e[3]!==d||e[4]!==x||e[5]!==p?(T=async V=>{V.preventDefault();const q=x.trim();!q||d||await p(q)},e[3]=d,e[4]=x,e[5]=p,e[6]=T):T=e[6];const O=T;let j;e[7]!==g.title?(j=r.jsx(Jt,{children:g.title}),e[7]=g.title,e[8]=j):j=e[8];let w;e[9]!==g.description?(w=r.jsx(Zt,{children:g.description}),e[9]=g.description,e[10]=w):w=e[10];let A;e[11]!==j||e[12]!==w?(A=r.jsxs(en,{children:[j,w]}),e[11]=j,e[12]=w,e[13]=A):A=e[13];let L;e[14]!==m?(L=m&&r.jsxs("div",{className:"space-y-1.5",children:[r.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Location"}),r.jsx(ze,{value:m,readOnly:!0,disabled:!0,className:"font-mono text-xs"})]}),e[14]=m,e[15]=L):L=e[15];let G;e[16]===Symbol.for("react.memo_cache_sentinel")?(G=r.jsx("label",{htmlFor:"file-explorer-name",className:"text-xs font-medium text-muted-foreground",children:"Name"}),e[16]=G):G=e[16];let $;e[17]===Symbol.for("react.memo_cache_sentinel")?($=V=>C(V.target.value),e[17]=$):$=e[17];let I;e[18]!==g.placeholder||e[19]!==d||e[20]!==x?(I=r.jsxs("div",{className:"space-y-1.5",children:[G,r.jsx(ze,{id:"file-explorer-name",value:x,onChange:$,placeholder:g.placeholder,autoFocus:!0,disabled:d})]}),e[18]=g.placeholder,e[19]=d,e[20]=x,e[21]=I):I=e[21];let R;e[22]!==I||e[23]!==L?(R=r.jsxs("div",{className:"space-y-4 py-4",children:[L,I]}),e[22]=I,e[23]=L,e[24]=R):R=e[24];let P;e[25]!==v?(P=()=>v(!1),e[25]=v,e[26]=P):P=e[26];let _;e[27]!==d||e[28]!==P?(_=r.jsx(pe,{type:"button",variant:"outline",onClick:P,disabled:d,children:"Cancel"}),e[27]=d,e[28]=P,e[29]=_):_=e[29];let z;e[30]!==d||e[31]!==x?(z=!x.trim()||d,e[30]=d,e[31]=x,e[32]=z):z=e[32];let N;e[33]!==g.submit||e[34]!==d?(N=d?r.jsxs(r.Fragment,{children:[r.jsx(oe,{size:14,className:"animate-spin"}),"Saving…"]}):g.submit,e[33]=g.submit,e[34]=d,e[35]=N):N=e[35];let K;e[36]!==z||e[37]!==N?(K=r.jsx(pe,{type:"submit",disabled:z,children:N}),e[36]=z,e[37]=N,e[38]=K):K=e[38];let S;e[39]!==_||e[40]!==K?(S=r.jsxs(tn,{children:[_,K]}),e[39]=_,e[40]=K,e[41]=S):S=e[41];let E;e[42]!==O||e[43]!==R||e[44]!==S||e[45]!==A?(E=r.jsx(nn,{className:"sm:max-w-md",children:r.jsxs("form",{onSubmit:O,children:[A,R,S]})}),e[42]=O,e[43]=R,e[44]=S,e[45]=A,e[46]=E):E=e[46];let W;return e[47]!==U||e[48]!==i||e[49]!==E?(W=r.jsx(rn,{open:i,onOpenChange:U,children:E}),e[47]=U,e[48]=i,e[49]=E,e[50]=W):W=e[50],W}function Rn(s){const e=Y.c(31),{deleteTarget:i,deleteDirtyPaths:a,fsActionPending:c,onOpenChange:m,onConfirm:h}=s,p=i!==null,v=i?.kind==="directory"?"folder":"file";let y;e[0]!==v?(y=r.jsxs(on,{children:["Delete ",v,"?"]}),e[0]=v,e[1]=y):y=e[1];const d=i?.name;let x;e[2]!==d?(x=r.jsx("span",{className:"font-mono",children:d}),e[2]=d,e[3]=x):x=e[3];const C=i?.kind==="directory"?" and everything inside it.":".";let D;e[4]!==a.length?(D=a.length>0&&r.jsxs(r.Fragment,{children:[" ",a.length===1?"One open file has unsaved changes that will be lost.":`${a.length} open files have unsaved changes that will be lost.`]}),e[4]=a.length,e[5]=D):D=e[5];let k;e[6]!==x||e[7]!==C||e[8]!==D?(k=r.jsxs(an,{children:["This will permanently delete"," ",x,C,D]}),e[6]=x,e[7]=C,e[8]=D,e[9]=k):k=e[9];let g;e[10]!==y||e[11]!==k?(g=r.jsxs(sn,{children:[y,k]}),e[10]=y,e[11]=k,e[12]=g):g=e[12];let b;e[13]!==c?(b=r.jsx(ln,{disabled:c,children:"Cancel"}),e[13]=c,e[14]=b):b=e[14];const U=c||!i;let T;e[15]!==i||e[16]!==h?(T=L=>{L.preventDefault(),i&&h(i)},e[15]=i,e[16]=h,e[17]=T):T=e[17];let O;e[18]!==U||e[19]!==T?(O=r.jsx(cn,{disabled:U,onClick:T,children:"Delete"}),e[18]=U,e[19]=T,e[20]=O):O=e[20];let j;e[21]!==b||e[22]!==O?(j=r.jsxs(dn,{children:[b,O]}),e[21]=b,e[22]=O,e[23]=j):j=e[23];let w;e[24]!==j||e[25]!==g?(w=r.jsxs(un,{children:[g,j]}),e[24]=j,e[25]=g,e[26]=w):w=e[26];let A;return e[27]!==m||e[28]!==p||e[29]!==w?(A=r.jsx(mn,{open:p,onOpenChange:m,children:w}),e[27]=m,e[28]=p,e[29]=w,e[30]=A):A=e[30],A}var je="ContextMenu",[Pn]=kt(je,[Be]),B=Be(),[En,Ve]=Pn(je),Ue=s=>{const{__scopeContextMenu:e,children:i,onOpenChange:a,dir:c,modal:m=!0}=s,[h,p]=u.useState(!1),v=B(e),y=Pt(a),d=u.useCallback(x=>{p(x),y(x)},[y]);return r.jsx(En,{scope:e,open:h,onOpenChange:d,modal:m,children:r.jsx(Et,{...v,dir:c,open:h,onOpenChange:d,modal:m,children:i})})};Ue.displayName=je;var We="ContextMenuTrigger",Qe=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,disabled:a=!1,...c}=s,m=Ve(We,i),h=B(i),p=u.useRef({x:0,y:0}),v=u.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...p.current})}),y=u.useRef(0),d=u.useCallback(()=>window.clearTimeout(y.current),[]),x=C=>{p.current={x:C.clientX,y:C.clientY},m.onOpenChange(!0)};return u.useEffect(()=>d,[d]),u.useEffect(()=>{a&&d()},[a,d]),r.jsxs(r.Fragment,{children:[r.jsx(jt,{...h,virtualRef:v}),r.jsx(Nt.span,{"data-state":m.open?"open":"closed","data-disabled":a?"":void 0,...c,ref:e,style:{WebkitTouchCallout:"none",...s.style},onContextMenu:a?s.onContextMenu:re(s.onContextMenu,C=>{d(),x(C),C.preventDefault()}),onPointerDown:a?s.onPointerDown:re(s.onPointerDown,fe(C=>{d(),y.current=window.setTimeout(()=>x(C),700)})),onPointerMove:a?s.onPointerMove:re(s.onPointerMove,fe(d)),onPointerCancel:a?s.onPointerCancel:re(s.onPointerCancel,fe(d)),onPointerUp:a?s.onPointerUp:re(s.onPointerUp,fe(d))})]})});Qe.displayName=We;var kn="ContextMenuPortal",qe=s=>{const{__scopeContextMenu:e,...i}=s,a=B(e);return r.jsx(Dt,{...a,...i})};qe.displayName=kn;var He="ContextMenuContent",Xe=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=Ve(He,i),m=B(i),h=u.useRef(!1);return r.jsx(Rt,{...m,...a,ref:e,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:p=>{s.onCloseAutoFocus?.(p),!p.defaultPrevented&&h.current&&p.preventDefault(),h.current=!1},onInteractOutside:p=>{s.onInteractOutside?.(p),!p.defaultPrevented&&!c.modal&&(h.current=!0)},style:{...s.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});Xe.displayName=He;var Tn="ContextMenuGroup",On=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(Tt,{...c,...a,ref:e})});On.displayName=Tn;var An="ContextMenuLabel",Ln=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(Ot,{...c,...a,ref:e})});Ln.displayName=An;var Fn="ContextMenuItem",Ye=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(St,{...c,...a,ref:e})});Ye.displayName=Fn;var $n="ContextMenuCheckboxItem",In=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(At,{...c,...a,ref:e})});In.displayName=$n;var _n="ContextMenuRadioGroup",zn=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(Lt,{...c,...a,ref:e})});zn.displayName=_n;var Gn="ContextMenuRadioItem",Kn=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(Ft,{...c,...a,ref:e})});Kn.displayName=Gn;var Bn="ContextMenuItemIndicator",Vn=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx($t,{...c,...a,ref:e})});Vn.displayName=Bn;var Un="ContextMenuSeparator",Je=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(Mt,{...c,...a,ref:e})});Je.displayName=Un;var Wn="ContextMenuArrow",Qn=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(It,{...c,...a,ref:e})});Qn.displayName=Wn;var qn="ContextMenuSubTrigger",Hn=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(_t,{...c,...a,ref:e})});Hn.displayName=qn;var Xn="ContextMenuSubContent",Yn=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(zt,{...c,...a,ref:e,style:{...s.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});Yn.displayName=Xn;function fe(s){return e=>e.pointerType!=="mouse"?s(e):void 0}var Jn=Ue,Zn=Qe,er=qe,tr=Xe,nr=Ye,rr=Je;function or(s){const e=Y.c(4);let i;e[0]!==s?({...i}=s,e[0]=s,e[1]=i):i=e[1];let a;return e[2]!==i?(a=r.jsx(Jn,{"data-slot":"context-menu",...i}),e[2]=i,e[3]=a):a=e[3],a}function ir(s){const e=Y.c(4);let i;e[0]!==s?({...i}=s,e[0]=s,e[1]=i):i=e[1];let a;return e[2]!==i?(a=r.jsx(Zn,{"data-slot":"context-menu-trigger",...i}),e[2]=i,e[3]=a):a=e[3],a}function ar(s){const e=Y.c(8);let i,a;e[0]!==s?({className:i,...a}=s,e[0]=s,e[1]=i,e[2]=a):(i=e[1],a=e[2]);let c;e[3]!==i?(c=ie("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-context-menu-content-available-height) min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",i),e[3]=i,e[4]=c):c=e[4];let m;return e[5]!==a||e[6]!==c?(m=r.jsx(er,{children:r.jsx(tr,{"data-slot":"context-menu-content",className:c,...a})}),e[5]=a,e[6]=c,e[7]=m):m=e[7],m}function ee(s){const e=Y.c(12);let i,a,c,m;e[0]!==s?({className:i,inset:a,variant:m,...c}=s,e[0]=s,e[1]=i,e[2]=a,e[3]=c,e[4]=m):(i=e[1],a=e[2],c=e[3],m=e[4]);const h=m===void 0?"default":m;let p;e[5]!==i?(p=ie("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",i),e[5]=i,e[6]=p):p=e[6];let v;return e[7]!==a||e[8]!==c||e[9]!==p||e[10]!==h?(v=r.jsx(nr,{"data-slot":"context-menu-item","data-inset":a,"data-variant":h,className:p,...c}),e[7]=a,e[8]=c,e[9]=p,e[10]=h,e[11]=v):v=e[11],v}function Ke(s){const e=Y.c(8);let i,a;e[0]!==s?({className:i,...a}=s,e[0]=s,e[1]=i,e[2]=a):(i=e[1],a=e[2]);let c;e[3]!==i?(c=ie("bg-border -mx-1 my-1 h-px",i),e[3]=i,e[4]=c):c=e[4];let m;return e[5]!==a||e[6]!==c?(m=r.jsx(rr,{"data-slot":"context-menu-separator",className:c,...a}),e[5]=a,e[6]=c,e[7]=m):m=e[7],m}const sr="#d9a441";function lr(s){const e=Y.c(45),{node:i,depth:a,isExpanded:c,isSelected:m,isLoading:h,fileVisual:p,onOpen:v,onSelect:y,onNewFile:d,onNewFolder:x,onCopyPath:C,onCopyRelativePath:D,onRename:k,onDelete:g}=s,b=h===void 0?!1:h,U=i.kind==="directory",{Icon:T,color:O}=p,j=m&&"bg-accent";let w;e[0]!==j?(w=ie("flex w-full items-center gap-1.5 px-2 py-1.5 text-left text-[13px] hover:bg-accent transition-colors",j),e[0]=j,e[1]=w):w=e[1];const A=`${a*14+8}px`;let L;e[2]!==A?(L={paddingLeft:A},e[2]=A,e[3]=L):L=e[3];let G;e[4]!==v||e[5]!==y?(G=()=>{y(),v()},e[4]=v,e[5]=y,e[6]=G):G=e[6];let $;e[7]!==T||e[8]!==O||e[9]!==U||e[10]!==c||e[11]!==b?($=U?r.jsxs(r.Fragment,{children:[b?r.jsx(oe,{size:14,className:"shrink-0 animate-spin text-muted-foreground"}):c?r.jsx(fn,{size:14,className:"shrink-0 text-muted-foreground"}):r.jsx(pn,{size:14,className:"shrink-0 text-muted-foreground"}),r.jsx(xn,{size:16,className:"shrink-0",style:{color:sr}})]}):r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"w-3.5 shrink-0"}),r.jsx(T,{size:16,className:"shrink-0",style:{color:O}})]}),e[7]=T,e[8]=O,e[9]=U,e[10]=c,e[11]=b,e[12]=$):$=e[12];let I;e[13]!==i.name?(I=r.jsx("span",{className:"truncate",children:i.name}),e[13]=i.name,e[14]=I):I=e[14];let R;e[15]!==w||e[16]!==L||e[17]!==G||e[18]!==$||e[19]!==I?(R=r.jsx(ir,{asChild:!0,children:r.jsxs("button",{type:"button",className:w,style:L,onClick:G,children:[$,I]})}),e[15]=w,e[16]=L,e[17]=G,e[18]=$,e[19]=I,e[20]=R):R=e[20];let P;e[21]!==d?(P=r.jsx(ee,{onSelect:d,children:"New File"}),e[21]=d,e[22]=P):P=e[22];let _;e[23]!==x?(_=r.jsx(ee,{onSelect:x,children:"New Folder"}),e[23]=x,e[24]=_):_=e[24];let z;e[25]===Symbol.for("react.memo_cache_sentinel")?(z=r.jsx(Ke,{}),e[25]=z):z=e[25];let N;e[26]!==C?(N=r.jsx(ee,{onSelect:C,children:"Copy Path"}),e[26]=C,e[27]=N):N=e[27];let K;e[28]!==D?(K=r.jsx(ee,{onSelect:D,children:"Copy Relative Path"}),e[28]=D,e[29]=K):K=e[29];let S;e[30]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx(Ke,{}),e[30]=S):S=e[30];let E;e[31]!==k?(E=r.jsx(ee,{onSelect:k,children:"Rename"}),e[31]=k,e[32]=E):E=e[32];let W;e[33]!==g?(W=r.jsx(ee,{variant:"destructive",onSelect:g,children:"Delete"}),e[33]=g,e[34]=W):W=e[34];let V;e[35]!==P||e[36]!==_||e[37]!==N||e[38]!==K||e[39]!==E||e[40]!==W?(V=r.jsxs(ar,{className:"w-52",children:[P,_,z,N,K,S,E,W]}),e[35]=P,e[36]=_,e[37]=N,e[38]=K,e[39]=E,e[40]=W,e[41]=V):V=e[41];let q;return e[42]!==V||e[43]!==R?(q=r.jsxs(or,{children:[R,V]}),e[42]=V,e[43]=R,e[44]=q):q=e[44],q}Bt.config({paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.0/min/vs"}});function cr(s,e,i,a){return`/api/${s}/sandbox/${encodeURIComponent(e)}/${encodeURIComponent(i)}/${a}`}function sa({orgSlug:s,virtualMcpId:e,branch:i,openPath:a}){const[c,m]=u.useState({files:[],directories:[],truncated:!1}),{files:h,directories:p}=c,[v,y]=u.useState(new Set),[d,x]=u.useState(null),[C,D]=u.useState(null),[k,g]=u.useState([]),[b,U]=u.useState(""),[T,O]=u.useState(!1),[j,w]=u.useState(!1),[,A]=u.useState(new Set),[L,G]=u.useState(new Set),$=u.useRef(0),I=u.useRef(null),R=u.useRef(new Set),P=u.useRef(new Map);function _(t){A(n=>{const o=typeof t=="function"?t(n):t;return R.current=o,o})}const[z,N]=u.useState(new Map),K=u.useRef(null),[S,E]=u.useState(null),{sendMessage:W}=Ht(),{openSidePanel:V}=Xt(),q=Gt(),[F,X]=u.useState(null),[xe,he]=u.useState(null),[ae,se]=u.useState(!1);async function J(t,n){const o=await fetch(cr(s,e,i,t),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(n)});if(!o.ok){const l=await o.json().catch(()=>({}));throw new Error(l.error??`Request failed (${o.status})`)}return o.json()}async function le(){q.invalidateQueries({queryKey:_e(s,e,i)})}function Ne(t,n){navigator.clipboard.writeText(n).then(()=>Q.success(`${t} copied`),()=>Q.error(`Failed to copy ${t.toLowerCase()}`))}function Ze(t){const n=Nn(t);if(!n)return;const o=`${s}/${e}/${i}`;q.setQueryData(Le.decofile(o),l=>{if(!l)return l;const{[n]:f,...M}=l;return M}),q.invalidateQueries({queryKey:Le.liveMeta(s,e,i)})}function et(t){const n=t.kind==="file"?[t.path]:h.filter(o=>o.startsWith(".deco/blocks/")).map(o=>ue(o)).filter(o=>o===t.path||o.startsWith(`${t.path}/`));for(const o of n)Ze(o)}function tt(t){const n=ue(t);return k.filter(o=>{if(o!==n&&!o.startsWith(`${n}/`))return!1;const l=z.get(o);return!!(l?.loaded&&l.editorValue!==l.savedContent)})}function Se(t){g(n=>n.map(o=>t(o)).filter(o=>o!==null)),x(n=>n&&t(n)),N(n=>{const o=new Map;for(const[l,f]of n){const M=t(l);M&&o.set(M,f)}return o}),D(n=>{if(!n)return n;const o=t(n.path);return o?o===n.path?n:{...n,path:o,name:o.split("/").pop()??o}:null})}function nt(t){const n=ue(t);D(o=>o&&(o.path===n||o.path.startsWith(`${n}/`)?null:o)),Se(o=>o===n||o.startsWith(`${n}/`)?null:o)}async function rt(t){if(!F)return;const n=me(F.parentDir,t);if(be(n,h,p))throw new Error(`"${t}" already exists`);await J("write",{path:H(n),content:""}),await te(),await le(),X(null),ge(n)}async function ot(t){if(!F)return;const n=me(F.parentDir,t);if(be(n,h,p))throw new Error(`"${t}" already exists`);const o=H(n);await J("mkdir",{path:o}),m(l=>({...l,directories:l.directories.includes(o)?l.directories:[...l.directories,o]})),await te(),await le(),X(null),y(l=>{const f=new Set(l);for(const M of ve(n))f.add(M);return f.add(n),f}),D({name:t,path:n,kind:"directory",children:[]})}async function it(t){if(!F)return;const n=F.node.path,o=we(n),l=me(o,t);if(l===n){X(null);return}if(be(l,h,p))throw new Error(`"${t}" already exists`);await J("rename",{from:H(n),to:H(l)}),Se(f=>f===n?l:f.startsWith(`${n}/`)?me(l,f.slice(n.length+1)):f),await te(),await le(),X(null)}async function at(t){se(!0);try{await J("unlink",{path:H(t.path),recursive:t.kind==="directory"}),et(t),nt(t.path),await te(),await le(),he(null),Q.success(`Deleted "${t.name}"`)}catch(n){Q.error(n instanceof Error?n.message:"Delete failed")}finally{se(!1)}}async function st(t){const n=jn(t);if(n){Q.error(n);return}se(!0);try{F?.mode==="new-file"?(await rt(t),Q.success(`Created "${t}"`)):F?.mode==="new-folder"?(await ot(t),Q.success(`Created folder "${t}"`)):F?.mode==="rename"&&(await it(t),Q.success(`Renamed to "${t}"`))}catch(o){Q.error(o instanceof Error?o.message:"Operation failed")}finally{se(!1)}}const Me=u.useRef(!1);Me.current||(Me.current=!0,I.current=te());const[lt,ct]=u.useState(null);if(a&&a!==lt){ct(a);const t=a;queueMicrotask(()=>{hn(t)&&ge(t).catch(n=>{Q.error(n instanceof Error?n.message:"Failed to open file")})})}async function De(t){const n=await J("glob",t);return{files:n.files??[],directories:n.directories??[],truncated:n.truncated}}function Re(t,n,o){if(o!==$.current)return!1;let l=!1;return m(f=>{const M=n?Sn(f.files,f.directories,t,f.truncated):{files:t.files,directories:t.directories??[],truncated:!!t.truncated};return l=!!M.truncated,{files:M.files,directories:M.directories,truncated:l}}),l&&Q.warning("File list truncated — some files may be hidden"),l}async function dt(t){const n=P.current.get(t);if(n)return n;const o=$.current,l=(async()=>{const f=await De({pattern:"**/*",path:H(t),limit:Ge}),M=Re(f,!0,o);return!M&&o===$.current&&_(ne=>{const ce=new Set(ne);return ce.add(t),ce}),M})();P.current.set(t,l);try{return await l}finally{P.current.delete(t)}}async function Pe(t){if(!Ce(t,R.current))return!1;G(n=>new Set(n).add(t));try{return await dt(t)}finally{G(n=>{const o=new Set(n);return o.delete(t),o})}}async function ut(t){const n=new Set(R.current);for(const o of ve(t)){if(!Ce(o,n))continue;if(await Pe(o))throw new Error("Folder listing truncated — expand again to load more");n.add(o)}}async function te(){const t=++$.current;P.current.clear(),O(!0),_(new Set),y(new Set),G(new Set);try{const n=await De({pattern:"**/*",limit:Ge,maxDepth:gn});Re(n,!1,t),w(!0)}catch{j&&Q.error("Failed to refresh file tree")}finally{O(!1)}}async function Ee(t){if(!z.get(t)?.loaded){N(o=>{const l=new Map(o);return l.set(t,{savedContent:"",editorValue:"",loaded:!1}),l});try{const o=await J("read",{path:H(t),full:!0}),l=bn(o.content??"");N(f=>{const M=new Map(f);return M.set(t,{savedContent:l,editorValue:l,loaded:!0}),M})}catch{}}}async function mt(t,n){try{await J("write",{path:H(t),content:n}),de("file saved via sandbox /write",{path:t}),q.invalidateQueries({queryKey:_e(s,e,i)});try{const o=await Yt(s,e,i);de("git status after save",o)}catch(o){de("git status after save failed",{path:t,error:o instanceof Error?o.message:String(o)})}N(o=>{const l=new Map(o),f=l.get(t);return f&&l.set(t,{...f,savedContent:n}),l})}catch(o){de("file save failed",{path:t,error:o instanceof Error?o.message:String(o)})}}function ft(t){x(t),D({name:t.split("/").pop()??t,path:t,kind:"file",children:[]}),E(null),k.includes(t)||g(n=>[...n,t]),Ee(t)}function pt(t){g(n=>{const o=n.filter(l=>l!==t);return d===t&&x(o[o.length-1]??null),o}),N(n=>{const o=new Map(n);return o.delete(t),o})}function ke(t){y(n=>{const o=new Set(n);return o.has(t)?o.delete(t):o.add(t),o})}async function xt(t){if(Ce(t,R.current))try{if(await Pe(t))return}catch(n){Q.error(n instanceof Error?n.message:"Failed to load folder");return}ke(t)}async function ht(t,n){if(n){ke(t);return}await xt(t)}async function ge(t){await I.current,await ut(t);const n=ve(t);y(o=>{const l=new Set(o);for(const f of n)l.add(f);return l}),ft(t)}function gt(){return C?.kind==="directory"?C.path:C?.kind==="file"?we(C.path):d?we(d):"/"}function Te(t){const n=gt();X({mode:t,parentDir:n,node:{name:"",path:n,kind:"directory",children:[]}})}const vt=vn(h,p),Oe=yn(vt,v),Ae=b?Oe.filter(t=>t.node.name.toLowerCase().includes(b.toLowerCase())):Oe,Z=d?z.get(d):null,yt=Z?.loaded&&Z.editorValue!==Z.savedContent,Ct=xe?tt(xe.path):[],wt=(t,n)=>{K.current=t,t.addCommand(n.KeyMod.CtrlCmd|n.KeyCode.KeyS,async()=>{if(!d)return;const o=t.getValue();await mt(d,o)}),t.addCommand(n.KeyMod.CtrlCmd|n.KeyCode.KeyK,()=>{const o=t.getSelection(),l=t.getModel();if(!o||!l||!d)return;const f=l.getValueInRange(o);E({filePath:d,lineStart:o.startLineNumber,lineEnd:o.endLineNumber,selectedCode:f})})};function bt(t){if(!S)return;const n=[`The user selected code in the file explorer and asked: **"${t.trim()}"**`,"",`**File:** \`${S.filePath}\``,`**Lines:** ${S.lineStart}–${S.lineEnd}`];if(S.selectedCode){const o=ye(S.filePath),l=S.selectedCode.replace(/```/g,"`` `");n.push("","**Selected code:**","```"+o,l,"```")}n.push("","Please read the source file, locate the code, and apply the requested change."),V("chat"),W({parts:[{type:"text",text:n.join(`
|
|
2
|
-
`)}]}),E(null)}return T&&!j?r.jsx("div",{className:"flex items-center justify-center h-full w-full",children:r.jsx(oe,{size:20,className:"animate-spin text-muted-foreground"})}):r.jsxs("div",{className:"flex h-full w-full overflow-hidden",children:[r.jsxs("div",{className:"w-64 shrink-0 border-r flex flex-col overflow-hidden",children:[r.jsxs("div",{className:"flex items-center gap-1 p-2 border-b",children:[r.jsxs("div",{className:"relative min-w-0 flex-1",children:[r.jsx(Vt,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground"}),r.jsx("input",{type:"text",value:b,onChange:t=>U(t.target.value),placeholder:"Search files...","aria-label":"Search files",className:"w-full rounded-md border border-input bg-transparent pl-7 pr-2 py-1.5 text-xs outline-none placeholder:text-muted-foreground focus:ring-1 focus:ring-ring"})]}),r.jsxs(Fe,{children:[r.jsx($e,{asChild:!0,children:r.jsx(pe,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0","aria-label":"New file",onClick:()=>Te("new-file"),children:r.jsx(Ut,{size:14})})}),r.jsx(Ie,{side:"bottom",children:"New file"})]}),r.jsxs(Fe,{children:[r.jsx($e,{asChild:!0,children:r.jsx(pe,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0","aria-label":"New folder",onClick:()=>Te("new-folder"),children:r.jsx(Wt,{size:14})})}),r.jsx(Ie,{side:"bottom",children:"New folder"})]})]}),r.jsx(qt,{className:"flex-1",children:r.jsxs("div",{className:"py-1",children:[Ae.map(t=>{const{node:n,depth:o}=t,l=n.kind==="directory",f=v.has(n.path),M=
|
|
1
|
+
import{c as Y,r as u,j as r,i as oe,B as pe,d$ as jt,aO as Nt,aU as re,e0 as St,e1 as Mt,e2 as Dt,e3 as Rt,bO as Pt,e4 as Et,e5 as Be,aQ as kt,e6 as Tt,e7 as Ot,e8 as At,e9 as Lt,ea as Ft,eb as $t,ec as It,ed as _t,ee as zt,l as ie,n as Gt,t as Q,K as Le}from"./index-DHUcQ3Zc.js";import{F as Kt,l as Bt}from"./index-CSEmxRjl.js";import{c as Vt,aw as Ut,ax as Wt}from"./agent-icon-ydo5jgpp.js";import{s as Qt}from"./XClose-BiShBa_h.js";import{A as qt}from"./automation-runs-Cq0dWJA-.js";import{b as Fe,T as $e,a as Ie}from"./tooltip-C_kxGPbz.js";import{b as Ht}from"./chat-context-C_0NQZnu.js";import{u as Xt}from"./shell-layout-DXe7SFEe.js";import{s as de,a as _e,f as Yt}from"./index-Cn9_zZs1.js";import{a as Jt,h as Zt,D as en,c as tn,d as nn,e as rn}from"./dialog-D-FV4Zb0.js";import{I as ze}from"./input-CD4iLUlU.js";import{c as on,d as an,b as sn,A as ln,g as cn,e as dn,a as un,f as mn}from"./alert-dialog-D_YtJjUs.js";import{t as fn}from"./ChevronDown-Bbe4LEpG.js";import{i as pn}from"./ChevronRight-CvFLMLSs.js";import{a as xn}from"./ZoomOut-CDmvqBAB.js";import{v as hn,E as gn,w as Ge,x as ve,y as vn,z as Cn,A as yn,C as H,D as ue,G as wn,g as Ce,I as ye,J as bn,K as jn,M as we,N as me,O as be,P as Nn,Q as Sn}from"./index-CAXd9cV5.js";import"./AlertCircle-DG4a-YPJ.js";import"./UserPlus01-BYCDJ1qH.js";import"./Tool01-DcHeaUVL.js";import"./ArrowUp-CY3oZMDN.js";import"./Settings02-BojRVJl-.js";import"./Tool02-CITs9l5E.js";import"./XCircle-D994HWfT.js";import"./ArrowUpRight-BYqJ_odf.js";import"./TrendUp01-Ds4Xp_Ie.js";import"./ZapSquare-OWnxdaqo.js";import"./Users03-Cttn4hE2.js";import"./CheckCircle-CfG0TsZ1.js";import"./Check-ChISHbfh.js";import"./ChevronUp-CG-5lkz8.js";import"./Circle-WWMwGxik.js";import"./Stars02-B-LWJdG7.js";import"./Copy01-ChDVmiye.js";import"./DotsVertical-CNYSgMU1.js";import"./Globe01-DYMLCnX6.js";import"./Eye-BpNdlDWP.js";import"./FilterLines-cseXnN6n.js";import"./Flag01-rPnNU1v-.js";import"./Star01-BH1rvlEO.js";import"./Globe04-DMc415uO.js";import"./SwitchHorizontal01-CL9u8gys.js";import"./HardDrive-Dc7WUQMC.js";import"./Image01-4bzNBeP8.js";import"./Key01-BGutOYpw.js";import"./LayoutLeft-Chn2g8D1.js";import"./LinkExternal01-C3ixLwyv.js";import"./List-Cb6GXNpI.js";import"./Monitor01-DlZ0h2Cv.js";import"./Sun-c6JSAmBQ.js";import"./Package-D5pkJnJd.js";import"./Palette-LHyI2Mdb.js";import"./Play-Dca6um-D.js";import"./Plus-C4WTG9Kp.js";import"./SearchLg-CyYHECU6.js";import"./SearchMd-BKcd0fB6.js";import"./Shield01-abTM_9f7.js";import"./Stars01-DFT0n9O7.js";import"./Trash01-_2UtyZ3i.js";import"./Upload01-BRK5C5r6.js";import"./User01-CU8XbMY2.js";import"./Users01-DvbIEeSV.js";import"./X-DQ-S1g4-.js";import"./Zap-DHi1Rc1o.js";import"./select-C8J1x9Hh.js";import"./useInfiniteQuery-CyalJOh2.js";import"./use-infinite-scroll-DuDfwOs2.js";import"./use-connection-D17m_MYi.js";import"./use-collections-Cy2lyjQw.js";import"./use-mcp-client-ptPJt8Ca.js";import"./constants-BHDe7bIw.js";import"./auth-B1xyLxRH.js";import"./use-virtual-mcp-QyfBPZvN.js";import"./card-BR1-VnZL.js";import"./sidebar-DDv6Q6Vr.js";import"./use-mobile-BjkhQEF-.js";import"./table-Bphxy4QJ.js";import"./empty-state-C0HMrPFH.js";import"./use-members-FRqz-iYP.js";import"./use-org-auth-client-Bitr-MZM.js";import"./use-clock-tick-D0xcXU6l.js";import"./use-automations-DmCHkQYX.js";import"./studio-tools-oG5STvP8.js";import"./useSuspenseInfiniteQuery-uJFzMLMT.js";import"./avatar-e-7iWxAV.js";import"./format-time-BnbuEtat.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./use-copy-BPpad-V6.js";import"./file-type-icon-CWZqRYUk.js";import"./tab-id-BijBBRwE.js";import"./hooks-Cpz2-QJF.js";import"./decopilot-sse-pool-Bc1zPkcw.js";import"./backoff-CrEUbyZT.js";import"./delay-CnY5UFtP.js";import"./monaco-editor-BiBep5KI.js";import"./index-D_Ke4qVo.js";import"./integration-icon-lunUJ8Ws.js";import"./use-navigate-to-agent--gTBVJlO.js";import"./reusable-new-chat-CouMjkYR.js";import"./AreaChart-BJOksRko.js";import"./form-CrzvXOa7.js";import"./label-64NHGLB9.js";import"./autosend-BdDL9PqC.js";import"./use-ai-providers-DxiHGIDE.js";import"./location-BpLtHjTZ.js";import"./use-decopilot-events-BcuOI-ix.js";import"./use-organization-settings-Bvrp17B3.js";import"./required-auth-layout-BgZLxCUt.js";import"./use-org-sso-DZnTAe_Y.js";import"./drawer-C1bC-kLm.js";import"./collection-search-DGV2A8CZ.js";import"./tabs-ClmHxPtb.js";import"./toggle-group-QBrPkArv.js";import"./use-deco-credits-B2YuBk4X.js";import"./extract-connection-data-BcTaSfYq.js";import"./connection-card-b4gOoJpq.js";import"./use-registry-connections-DmJUTjTR.js";import"./retry-CErkP7V6.js";import"./connection-slug-eyAPH6o3.js";import"./textarea-DOeMxqmL.js";import"./connection-form-helpers-DC6AoNcw.js";import"./authenticate-and-persist-oauth-Bt4_puMP.js";import"./mcp-oauth-C6WZv_ih.js";import"./collection-tabs-BvOI_2-G.js";import"./badge-CKZToSag.js";import"./connect-desktop-dialog-DTJycKOS.js";import"./select-model-BVeWMw1Y.js";import"./checkbox-C_bqZEJS.js";import"./skeleton-btiu0WVx.js";import"./ai-providers-logos-DD3qZ33J.js";import"./settings-section-D0EkW6Kl.js";import"./command-BrpyzanT.js";import"./index-DEBreNlD.js";import"./popover-jkzPowft.js";import"./dropdown-menu-DU7Il0vV.js";import"./question-004-sINsf4GQ.js";import"./use-status-sounds-Cb-T3G8j.js";import"./toolbar-B0RrtA9Q.js";import"./use-mcp-tools-Dta3MTkm.js";import"./use-capability-DLDYZAr8.js";import"./toolbar-icon-button-BsOO9_t9.js";import"./use-debounced-autosave-9-Lkd_Ut.js";import"./index-CUDGsjpT.js";import"./search-input-Dm12yYY_.js";import"./use-mcp-auth-status-BEGadIzu.js";import"./switch-D6jizfdP.js";import"./use-registry-app-5nSleZYT.js";import"./github-repo-picker-Bs9HleTv.js";import"./use-debounced-value-DNgqvjTz.js";import"./provision-repo-scoped-github-connection-2iDn-wQ1.js";import"./github-repo-scope-DjMZbiKa.js";import"./use-secrets-DCCcb8Px.js";import"./formatDistanceToNow-Cb2QZZJn.js";import"./companions-core-B8rS9LMp.js";import"./index-Bnuq7-6r.js";import"./get-initials-D-f_fDFw.js";import"./calendar-CqQhqjiW.js";import"./use-file-configs-CxOBZJYh.js";import"./automation-list-row-Bc0NECF5.js";const Mn={"new-file":{title:"New File",description:"Enter a name for the new file.",submit:"Create",placeholder:"filename.ts"},"new-folder":{title:"New Folder",description:"Enter a name for the new folder.",submit:"Create",placeholder:"folder-name"},rename:{title:"Rename",description:"Enter a new name for this item.",submit:"Rename",placeholder:"new-name"}};function Dn(s){const e=Y.c(51),{open:i,mode:a,initialName:c,parentLabel:m,isPending:h,onSubmit:p,onOpenChange:v}=s,C=c===void 0?"":c,d=h===void 0?!1:h,[x,y]=u.useState(C),[D,k]=u.useState(i),g=Mn[a];i!==D&&(k(i),i&&y(C));let b;e[0]!==d||e[1]!==v?(b=V=>{!V&&!d&&v(!1)},e[0]=d,e[1]=v,e[2]=b):b=e[2];const U=b;let T;e[3]!==d||e[4]!==x||e[5]!==p?(T=async V=>{V.preventDefault();const q=x.trim();!q||d||await p(q)},e[3]=d,e[4]=x,e[5]=p,e[6]=T):T=e[6];const O=T;let j;e[7]!==g.title?(j=r.jsx(Jt,{children:g.title}),e[7]=g.title,e[8]=j):j=e[8];let w;e[9]!==g.description?(w=r.jsx(Zt,{children:g.description}),e[9]=g.description,e[10]=w):w=e[10];let A;e[11]!==j||e[12]!==w?(A=r.jsxs(en,{children:[j,w]}),e[11]=j,e[12]=w,e[13]=A):A=e[13];let L;e[14]!==m?(L=m&&r.jsxs("div",{className:"space-y-1.5",children:[r.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:"Location"}),r.jsx(ze,{value:m,readOnly:!0,disabled:!0,className:"font-mono text-xs"})]}),e[14]=m,e[15]=L):L=e[15];let G;e[16]===Symbol.for("react.memo_cache_sentinel")?(G=r.jsx("label",{htmlFor:"file-explorer-name",className:"text-xs font-medium text-muted-foreground",children:"Name"}),e[16]=G):G=e[16];let $;e[17]===Symbol.for("react.memo_cache_sentinel")?($=V=>y(V.target.value),e[17]=$):$=e[17];let I;e[18]!==g.placeholder||e[19]!==d||e[20]!==x?(I=r.jsxs("div",{className:"space-y-1.5",children:[G,r.jsx(ze,{id:"file-explorer-name",value:x,onChange:$,placeholder:g.placeholder,autoFocus:!0,disabled:d})]}),e[18]=g.placeholder,e[19]=d,e[20]=x,e[21]=I):I=e[21];let R;e[22]!==I||e[23]!==L?(R=r.jsxs("div",{className:"space-y-4 py-4",children:[L,I]}),e[22]=I,e[23]=L,e[24]=R):R=e[24];let P;e[25]!==v?(P=()=>v(!1),e[25]=v,e[26]=P):P=e[26];let _;e[27]!==d||e[28]!==P?(_=r.jsx(pe,{type:"button",variant:"outline",onClick:P,disabled:d,children:"Cancel"}),e[27]=d,e[28]=P,e[29]=_):_=e[29];let z;e[30]!==d||e[31]!==x?(z=!x.trim()||d,e[30]=d,e[31]=x,e[32]=z):z=e[32];let N;e[33]!==g.submit||e[34]!==d?(N=d?r.jsxs(r.Fragment,{children:[r.jsx(oe,{size:14,className:"animate-spin"}),"Saving…"]}):g.submit,e[33]=g.submit,e[34]=d,e[35]=N):N=e[35];let K;e[36]!==z||e[37]!==N?(K=r.jsx(pe,{type:"submit",disabled:z,children:N}),e[36]=z,e[37]=N,e[38]=K):K=e[38];let S;e[39]!==_||e[40]!==K?(S=r.jsxs(tn,{children:[_,K]}),e[39]=_,e[40]=K,e[41]=S):S=e[41];let E;e[42]!==O||e[43]!==R||e[44]!==S||e[45]!==A?(E=r.jsx(nn,{className:"sm:max-w-md",children:r.jsxs("form",{onSubmit:O,children:[A,R,S]})}),e[42]=O,e[43]=R,e[44]=S,e[45]=A,e[46]=E):E=e[46];let W;return e[47]!==U||e[48]!==i||e[49]!==E?(W=r.jsx(rn,{open:i,onOpenChange:U,children:E}),e[47]=U,e[48]=i,e[49]=E,e[50]=W):W=e[50],W}function Rn(s){const e=Y.c(31),{deleteTarget:i,deleteDirtyPaths:a,fsActionPending:c,onOpenChange:m,onConfirm:h}=s,p=i!==null,v=i?.kind==="directory"?"folder":"file";let C;e[0]!==v?(C=r.jsxs(on,{children:["Delete ",v,"?"]}),e[0]=v,e[1]=C):C=e[1];const d=i?.name;let x;e[2]!==d?(x=r.jsx("span",{className:"font-mono",children:d}),e[2]=d,e[3]=x):x=e[3];const y=i?.kind==="directory"?" and everything inside it.":".";let D;e[4]!==a.length?(D=a.length>0&&r.jsxs(r.Fragment,{children:[" ",a.length===1?"One open file has unsaved changes that will be lost.":`${a.length} open files have unsaved changes that will be lost.`]}),e[4]=a.length,e[5]=D):D=e[5];let k;e[6]!==x||e[7]!==y||e[8]!==D?(k=r.jsxs(an,{children:["This will permanently delete"," ",x,y,D]}),e[6]=x,e[7]=y,e[8]=D,e[9]=k):k=e[9];let g;e[10]!==C||e[11]!==k?(g=r.jsxs(sn,{children:[C,k]}),e[10]=C,e[11]=k,e[12]=g):g=e[12];let b;e[13]!==c?(b=r.jsx(ln,{disabled:c,children:"Cancel"}),e[13]=c,e[14]=b):b=e[14];const U=c||!i;let T;e[15]!==i||e[16]!==h?(T=L=>{L.preventDefault(),i&&h(i)},e[15]=i,e[16]=h,e[17]=T):T=e[17];let O;e[18]!==U||e[19]!==T?(O=r.jsx(cn,{disabled:U,onClick:T,children:"Delete"}),e[18]=U,e[19]=T,e[20]=O):O=e[20];let j;e[21]!==b||e[22]!==O?(j=r.jsxs(dn,{children:[b,O]}),e[21]=b,e[22]=O,e[23]=j):j=e[23];let w;e[24]!==j||e[25]!==g?(w=r.jsxs(un,{children:[g,j]}),e[24]=j,e[25]=g,e[26]=w):w=e[26];let A;return e[27]!==m||e[28]!==p||e[29]!==w?(A=r.jsx(mn,{open:p,onOpenChange:m,children:w}),e[27]=m,e[28]=p,e[29]=w,e[30]=A):A=e[30],A}var je="ContextMenu",[Pn]=kt(je,[Be]),B=Be(),[En,Ve]=Pn(je),Ue=s=>{const{__scopeContextMenu:e,children:i,onOpenChange:a,dir:c,modal:m=!0}=s,[h,p]=u.useState(!1),v=B(e),C=Pt(a),d=u.useCallback(x=>{p(x),C(x)},[C]);return r.jsx(En,{scope:e,open:h,onOpenChange:d,modal:m,children:r.jsx(Et,{...v,dir:c,open:h,onOpenChange:d,modal:m,children:i})})};Ue.displayName=je;var We="ContextMenuTrigger",Qe=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,disabled:a=!1,...c}=s,m=Ve(We,i),h=B(i),p=u.useRef({x:0,y:0}),v=u.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...p.current})}),C=u.useRef(0),d=u.useCallback(()=>window.clearTimeout(C.current),[]),x=y=>{p.current={x:y.clientX,y:y.clientY},m.onOpenChange(!0)};return u.useEffect(()=>d,[d]),u.useEffect(()=>{a&&d()},[a,d]),r.jsxs(r.Fragment,{children:[r.jsx(jt,{...h,virtualRef:v}),r.jsx(Nt.span,{"data-state":m.open?"open":"closed","data-disabled":a?"":void 0,...c,ref:e,style:{WebkitTouchCallout:"none",...s.style},onContextMenu:a?s.onContextMenu:re(s.onContextMenu,y=>{d(),x(y),y.preventDefault()}),onPointerDown:a?s.onPointerDown:re(s.onPointerDown,fe(y=>{d(),C.current=window.setTimeout(()=>x(y),700)})),onPointerMove:a?s.onPointerMove:re(s.onPointerMove,fe(d)),onPointerCancel:a?s.onPointerCancel:re(s.onPointerCancel,fe(d)),onPointerUp:a?s.onPointerUp:re(s.onPointerUp,fe(d))})]})});Qe.displayName=We;var kn="ContextMenuPortal",qe=s=>{const{__scopeContextMenu:e,...i}=s,a=B(e);return r.jsx(Dt,{...a,...i})};qe.displayName=kn;var He="ContextMenuContent",Xe=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=Ve(He,i),m=B(i),h=u.useRef(!1);return r.jsx(Rt,{...m,...a,ref:e,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:p=>{s.onCloseAutoFocus?.(p),!p.defaultPrevented&&h.current&&p.preventDefault(),h.current=!1},onInteractOutside:p=>{s.onInteractOutside?.(p),!p.defaultPrevented&&!c.modal&&(h.current=!0)},style:{...s.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});Xe.displayName=He;var Tn="ContextMenuGroup",On=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(Tt,{...c,...a,ref:e})});On.displayName=Tn;var An="ContextMenuLabel",Ln=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(Ot,{...c,...a,ref:e})});Ln.displayName=An;var Fn="ContextMenuItem",Ye=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(St,{...c,...a,ref:e})});Ye.displayName=Fn;var $n="ContextMenuCheckboxItem",In=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(At,{...c,...a,ref:e})});In.displayName=$n;var _n="ContextMenuRadioGroup",zn=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(Lt,{...c,...a,ref:e})});zn.displayName=_n;var Gn="ContextMenuRadioItem",Kn=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(Ft,{...c,...a,ref:e})});Kn.displayName=Gn;var Bn="ContextMenuItemIndicator",Vn=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx($t,{...c,...a,ref:e})});Vn.displayName=Bn;var Un="ContextMenuSeparator",Je=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(Mt,{...c,...a,ref:e})});Je.displayName=Un;var Wn="ContextMenuArrow",Qn=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(It,{...c,...a,ref:e})});Qn.displayName=Wn;var qn="ContextMenuSubTrigger",Hn=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(_t,{...c,...a,ref:e})});Hn.displayName=qn;var Xn="ContextMenuSubContent",Yn=u.forwardRef((s,e)=>{const{__scopeContextMenu:i,...a}=s,c=B(i);return r.jsx(zt,{...c,...a,ref:e,style:{...s.style,"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}})});Yn.displayName=Xn;function fe(s){return e=>e.pointerType!=="mouse"?s(e):void 0}var Jn=Ue,Zn=Qe,er=qe,tr=Xe,nr=Ye,rr=Je;function or(s){const e=Y.c(4);let i;e[0]!==s?({...i}=s,e[0]=s,e[1]=i):i=e[1];let a;return e[2]!==i?(a=r.jsx(Jn,{"data-slot":"context-menu",...i}),e[2]=i,e[3]=a):a=e[3],a}function ir(s){const e=Y.c(4);let i;e[0]!==s?({...i}=s,e[0]=s,e[1]=i):i=e[1];let a;return e[2]!==i?(a=r.jsx(Zn,{"data-slot":"context-menu-trigger",...i}),e[2]=i,e[3]=a):a=e[3],a}function ar(s){const e=Y.c(8);let i,a;e[0]!==s?({className:i,...a}=s,e[0]=s,e[1]=i,e[2]=a):(i=e[1],a=e[2]);let c;e[3]!==i?(c=ie("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-50 max-h-(--radix-context-menu-content-available-height) min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border p-1 shadow-md",i),e[3]=i,e[4]=c):c=e[4];let m;return e[5]!==a||e[6]!==c?(m=r.jsx(er,{children:r.jsx(tr,{"data-slot":"context-menu-content",className:c,...a})}),e[5]=a,e[6]=c,e[7]=m):m=e[7],m}function ee(s){const e=Y.c(12);let i,a,c,m;e[0]!==s?({className:i,inset:a,variant:m,...c}=s,e[0]=s,e[1]=i,e[2]=a,e[3]=c,e[4]=m):(i=e[1],a=e[2],c=e[3],m=e[4]);const h=m===void 0?"default":m;let p;e[5]!==i?(p=ie("focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:!text-destructive [&_svg:not([class*='text-'])]:text-muted-foreground relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4",i),e[5]=i,e[6]=p):p=e[6];let v;return e[7]!==a||e[8]!==c||e[9]!==p||e[10]!==h?(v=r.jsx(nr,{"data-slot":"context-menu-item","data-inset":a,"data-variant":h,className:p,...c}),e[7]=a,e[8]=c,e[9]=p,e[10]=h,e[11]=v):v=e[11],v}function Ke(s){const e=Y.c(8);let i,a;e[0]!==s?({className:i,...a}=s,e[0]=s,e[1]=i,e[2]=a):(i=e[1],a=e[2]);let c;e[3]!==i?(c=ie("bg-border -mx-1 my-1 h-px",i),e[3]=i,e[4]=c):c=e[4];let m;return e[5]!==a||e[6]!==c?(m=r.jsx(rr,{"data-slot":"context-menu-separator",className:c,...a}),e[5]=a,e[6]=c,e[7]=m):m=e[7],m}const sr="#d9a441";function lr(s){const e=Y.c(45),{node:i,depth:a,isExpanded:c,isSelected:m,isLoading:h,fileVisual:p,onOpen:v,onSelect:C,onNewFile:d,onNewFolder:x,onCopyPath:y,onCopyRelativePath:D,onRename:k,onDelete:g}=s,b=h===void 0?!1:h,U=i.kind==="directory",{Icon:T,color:O}=p,j=m&&"bg-accent";let w;e[0]!==j?(w=ie("flex w-full items-center gap-1.5 px-2 py-1.5 text-left text-[13px] hover:bg-accent transition-colors",j),e[0]=j,e[1]=w):w=e[1];const A=`${a*14+8}px`;let L;e[2]!==A?(L={paddingLeft:A},e[2]=A,e[3]=L):L=e[3];let G;e[4]!==v||e[5]!==C?(G=()=>{C(),v()},e[4]=v,e[5]=C,e[6]=G):G=e[6];let $;e[7]!==T||e[8]!==O||e[9]!==U||e[10]!==c||e[11]!==b?($=U?r.jsxs(r.Fragment,{children:[b?r.jsx(oe,{size:14,className:"shrink-0 animate-spin text-muted-foreground"}):c?r.jsx(fn,{size:14,className:"shrink-0 text-muted-foreground"}):r.jsx(pn,{size:14,className:"shrink-0 text-muted-foreground"}),r.jsx(xn,{size:16,className:"shrink-0",style:{color:sr}})]}):r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"w-3.5 shrink-0"}),r.jsx(T,{size:16,className:"shrink-0",style:{color:O}})]}),e[7]=T,e[8]=O,e[9]=U,e[10]=c,e[11]=b,e[12]=$):$=e[12];let I;e[13]!==i.name?(I=r.jsx("span",{className:"truncate",children:i.name}),e[13]=i.name,e[14]=I):I=e[14];let R;e[15]!==w||e[16]!==L||e[17]!==G||e[18]!==$||e[19]!==I?(R=r.jsx(ir,{asChild:!0,children:r.jsxs("button",{type:"button",className:w,style:L,onClick:G,children:[$,I]})}),e[15]=w,e[16]=L,e[17]=G,e[18]=$,e[19]=I,e[20]=R):R=e[20];let P;e[21]!==d?(P=r.jsx(ee,{onSelect:d,children:"New File"}),e[21]=d,e[22]=P):P=e[22];let _;e[23]!==x?(_=r.jsx(ee,{onSelect:x,children:"New Folder"}),e[23]=x,e[24]=_):_=e[24];let z;e[25]===Symbol.for("react.memo_cache_sentinel")?(z=r.jsx(Ke,{}),e[25]=z):z=e[25];let N;e[26]!==y?(N=r.jsx(ee,{onSelect:y,children:"Copy Path"}),e[26]=y,e[27]=N):N=e[27];let K;e[28]!==D?(K=r.jsx(ee,{onSelect:D,children:"Copy Relative Path"}),e[28]=D,e[29]=K):K=e[29];let S;e[30]===Symbol.for("react.memo_cache_sentinel")?(S=r.jsx(Ke,{}),e[30]=S):S=e[30];let E;e[31]!==k?(E=r.jsx(ee,{onSelect:k,children:"Rename"}),e[31]=k,e[32]=E):E=e[32];let W;e[33]!==g?(W=r.jsx(ee,{variant:"destructive",onSelect:g,children:"Delete"}),e[33]=g,e[34]=W):W=e[34];let V;e[35]!==P||e[36]!==_||e[37]!==N||e[38]!==K||e[39]!==E||e[40]!==W?(V=r.jsxs(ar,{className:"w-52",children:[P,_,z,N,K,S,E,W]}),e[35]=P,e[36]=_,e[37]=N,e[38]=K,e[39]=E,e[40]=W,e[41]=V):V=e[41];let q;return e[42]!==V||e[43]!==R?(q=r.jsxs(or,{children:[R,V]}),e[42]=V,e[43]=R,e[44]=q):q=e[44],q}Bt.config({paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.0/min/vs"}});function cr(s,e,i,a){return`/api/${s}/sandbox/${encodeURIComponent(e)}/${encodeURIComponent(i)}/${a}`}function sa({orgSlug:s,virtualMcpId:e,branch:i,openPath:a}){const[c,m]=u.useState({files:[],directories:[],truncated:!1}),{files:h,directories:p}=c,[v,C]=u.useState(new Set),[d,x]=u.useState(null),[y,D]=u.useState(null),[k,g]=u.useState([]),[b,U]=u.useState(""),[T,O]=u.useState(!1),[j,w]=u.useState(!1),[,A]=u.useState(new Set),[L,G]=u.useState(new Set),$=u.useRef(0),I=u.useRef(null),R=u.useRef(new Set),P=u.useRef(new Map);function _(t){A(n=>{const o=typeof t=="function"?t(n):t;return R.current=o,o})}const[z,N]=u.useState(new Map),K=u.useRef(null),[S,E]=u.useState(null),{sendMessage:W}=Ht(),{openSidePanel:V}=Xt(),q=Gt(),[F,X]=u.useState(null),[xe,he]=u.useState(null),[ae,se]=u.useState(!1);async function J(t,n){const o=await fetch(cr(s,e,i,t),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(n)});if(!o.ok){const l=await o.json().catch(()=>({}));throw new Error(l.error??`Request failed (${o.status})`)}return o.json()}async function le(){q.invalidateQueries({queryKey:_e(s,e,i)})}function Ne(t,n){navigator.clipboard.writeText(n).then(()=>Q.success(`${t} copied`),()=>Q.error(`Failed to copy ${t.toLowerCase()}`))}function Ze(t){const n=Nn(t);if(!n)return;const o=`${s}/${e}/${i}`;q.setQueryData(Le.decofile(o),l=>{if(!l)return l;const{[n]:f,...M}=l;return M}),q.invalidateQueries({queryKey:Le.liveMeta(s,e,i)})}function et(t){const n=t.kind==="file"?[t.path]:h.filter(o=>o.startsWith(".deco/blocks/")).map(o=>ue(o)).filter(o=>o===t.path||o.startsWith(`${t.path}/`));for(const o of n)Ze(o)}function tt(t){const n=ue(t);return k.filter(o=>{if(o!==n&&!o.startsWith(`${n}/`))return!1;const l=z.get(o);return!!(l?.loaded&&l.editorValue!==l.savedContent)})}function Se(t){g(n=>n.map(o=>t(o)).filter(o=>o!==null)),x(n=>n&&t(n)),N(n=>{const o=new Map;for(const[l,f]of n){const M=t(l);M&&o.set(M,f)}return o}),D(n=>{if(!n)return n;const o=t(n.path);return o?o===n.path?n:{...n,path:o,name:o.split("/").pop()??o}:null})}function nt(t){const n=ue(t);D(o=>o&&(o.path===n||o.path.startsWith(`${n}/`)?null:o)),Se(o=>o===n||o.startsWith(`${n}/`)?null:o)}async function rt(t){if(!F)return;const n=me(F.parentDir,t);if(be(n,h,p))throw new Error(`"${t}" already exists`);await J("write",{path:H(n),content:""}),await te(),await le(),X(null),ge(n)}async function ot(t){if(!F)return;const n=me(F.parentDir,t);if(be(n,h,p))throw new Error(`"${t}" already exists`);const o=H(n);await J("mkdir",{path:o}),m(l=>({...l,directories:l.directories.includes(o)?l.directories:[...l.directories,o]})),await te(),await le(),X(null),C(l=>{const f=new Set(l);for(const M of ve(n))f.add(M);return f.add(n),f}),D({name:t,path:n,kind:"directory",children:[]})}async function it(t){if(!F)return;const n=F.node.path,o=we(n),l=me(o,t);if(l===n){X(null);return}if(be(l,h,p))throw new Error(`"${t}" already exists`);await J("rename",{from:H(n),to:H(l)}),Se(f=>f===n?l:f.startsWith(`${n}/`)?me(l,f.slice(n.length+1)):f),await te(),await le(),X(null)}async function at(t){se(!0);try{await J("unlink",{path:H(t.path),recursive:t.kind==="directory"}),et(t),nt(t.path),await te(),await le(),he(null),Q.success(`Deleted "${t.name}"`)}catch(n){Q.error(n instanceof Error?n.message:"Delete failed")}finally{se(!1)}}async function st(t){const n=jn(t);if(n){Q.error(n);return}se(!0);try{F?.mode==="new-file"?(await rt(t),Q.success(`Created "${t}"`)):F?.mode==="new-folder"?(await ot(t),Q.success(`Created folder "${t}"`)):F?.mode==="rename"&&(await it(t),Q.success(`Renamed to "${t}"`))}catch(o){Q.error(o instanceof Error?o.message:"Operation failed")}finally{se(!1)}}const Me=u.useRef(!1);Me.current||(Me.current=!0,I.current=te());const[lt,ct]=u.useState(null);if(a&&a!==lt){ct(a);const t=a;queueMicrotask(()=>{hn(t)&&ge(t).catch(n=>{Q.error(n instanceof Error?n.message:"Failed to open file")})})}async function De(t){const n=await J("glob",t);return{files:n.files??[],directories:n.directories??[],truncated:n.truncated}}function Re(t,n,o){if(o!==$.current)return!1;let l=!1;return m(f=>{const M=n?Sn(f.files,f.directories,t,f.truncated):{files:t.files,directories:t.directories??[],truncated:!!t.truncated};return l=!!M.truncated,{files:M.files,directories:M.directories,truncated:l}}),l&&Q.warning("File list truncated — some files may be hidden"),l}async function dt(t){const n=P.current.get(t);if(n)return n;const o=$.current,l=(async()=>{const f=await De({pattern:"**/*",path:H(t),limit:Ge}),M=Re(f,!0,o);return!M&&o===$.current&&_(ne=>{const ce=new Set(ne);return ce.add(t),ce}),M})();P.current.set(t,l);try{return await l}finally{P.current.delete(t)}}async function Pe(t){if(!ye(t,R.current))return!1;G(n=>new Set(n).add(t));try{return await dt(t)}finally{G(n=>{const o=new Set(n);return o.delete(t),o})}}async function ut(t){const n=new Set(R.current);for(const o of ve(t)){if(!ye(o,n))continue;if(await Pe(o))throw new Error("Folder listing truncated — expand again to load more");n.add(o)}}async function te(){const t=++$.current;P.current.clear(),O(!0),_(new Set),C(new Set),G(new Set);try{const n=await De({pattern:"**/*",limit:Ge,maxDepth:gn});Re(n,!1,t),w(!0)}catch{j&&Q.error("Failed to refresh file tree")}finally{O(!1)}}async function Ee(t){if(!z.get(t)?.loaded){N(o=>{const l=new Map(o);return l.set(t,{savedContent:"",editorValue:"",loaded:!1}),l});try{const o=await J("read",{path:H(t),full:!0}),l=bn(o.content??"");N(f=>{const M=new Map(f);return M.set(t,{savedContent:l,editorValue:l,loaded:!0}),M})}catch{}}}async function mt(t,n){try{await J("write",{path:H(t),content:n}),de("file saved via sandbox /write",{path:t}),q.invalidateQueries({queryKey:_e(s,e,i)});try{const o=await Yt(s,e,i);de("git status after save",o)}catch(o){de("git status after save failed",{path:t,error:o instanceof Error?o.message:String(o)})}N(o=>{const l=new Map(o),f=l.get(t);return f&&l.set(t,{...f,savedContent:n}),l})}catch(o){de("file save failed",{path:t,error:o instanceof Error?o.message:String(o)})}}function ft(t){x(t),D({name:t.split("/").pop()??t,path:t,kind:"file",children:[]}),E(null),k.includes(t)||g(n=>[...n,t]),Ee(t)}function pt(t){g(n=>{const o=n.filter(l=>l!==t);return d===t&&x(o[o.length-1]??null),o}),N(n=>{const o=new Map(n);return o.delete(t),o})}function ke(t){C(n=>{const o=new Set(n);return o.has(t)?o.delete(t):o.add(t),o})}async function xt(t){if(ye(t,R.current))try{if(await Pe(t))return}catch(n){Q.error(n instanceof Error?n.message:"Failed to load folder");return}ke(t)}async function ht(t,n){if(n){ke(t);return}await xt(t)}async function ge(t){await I.current,await ut(t);const n=ve(t);C(o=>{const l=new Set(o);for(const f of n)l.add(f);return l}),ft(t)}function gt(){return y?.kind==="directory"?y.path:y?.kind==="file"?we(y.path):d?we(d):"/"}function Te(t){const n=gt();X({mode:t,parentDir:n,node:{name:"",path:n,kind:"directory",children:[]}})}const vt=vn(h,p),Oe=Cn(vt,v),Ae=b?Oe.filter(t=>t.node.name.toLowerCase().includes(b.toLowerCase())):Oe,Z=d?z.get(d):null,Ct=Z?.loaded&&Z.editorValue!==Z.savedContent,yt=xe?tt(xe.path):[],wt=(t,n)=>{K.current=t,t.addCommand(n.KeyMod.CtrlCmd|n.KeyCode.KeyS,async()=>{if(!d)return;const o=t.getValue();await mt(d,o)}),t.addCommand(n.KeyMod.CtrlCmd|n.KeyCode.KeyK,()=>{const o=t.getSelection(),l=t.getModel();if(!o||!l||!d)return;const f=l.getValueInRange(o);E({filePath:d,lineStart:o.startLineNumber,lineEnd:o.endLineNumber,selectedCode:f})})};function bt(t){if(!S)return;const n=[`The user selected code in the file explorer and asked: **"${t.trim()}"**`,"",`**File:** \`${S.filePath}\``,`**Lines:** ${S.lineStart}–${S.lineEnd}`];if(S.selectedCode){const o=Ce(S.filePath),l=S.selectedCode.replace(/```/g,"`` `");n.push("","**Selected code:**","```"+o,l,"```")}n.push("","Please read the source file, locate the code, and apply the requested change."),V("chat"),W({parts:[{type:"text",text:n.join(`
|
|
2
|
+
`)}]}),E(null)}return T&&!j?r.jsx("div",{className:"flex items-center justify-center h-full w-full",children:r.jsx(oe,{size:20,className:"animate-spin text-muted-foreground"})}):r.jsxs("div",{className:"flex h-full w-full overflow-hidden",children:[r.jsxs("div",{className:"w-64 shrink-0 border-r flex flex-col overflow-hidden",children:[r.jsxs("div",{className:"flex items-center gap-1 p-2 border-b",children:[r.jsxs("div",{className:"relative min-w-0 flex-1",children:[r.jsx(Vt,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground"}),r.jsx("input",{type:"text",value:b,onChange:t=>U(t.target.value),placeholder:"Search files...","aria-label":"Search files",className:"w-full rounded-md border border-input bg-transparent pl-7 pr-2 py-1.5 text-xs outline-none placeholder:text-muted-foreground focus:ring-1 focus:ring-ring"})]}),r.jsxs(Fe,{children:[r.jsx($e,{asChild:!0,children:r.jsx(pe,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0","aria-label":"New file",onClick:()=>Te("new-file"),children:r.jsx(Ut,{size:14})})}),r.jsx(Ie,{side:"bottom",children:"New file"})]}),r.jsxs(Fe,{children:[r.jsx($e,{asChild:!0,children:r.jsx(pe,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0","aria-label":"New folder",onClick:()=>Te("new-folder"),children:r.jsx(Wt,{size:14})})}),r.jsx(Ie,{side:"bottom",children:"New folder"})]})]}),r.jsx(qt,{className:"flex-1",children:r.jsxs("div",{className:"py-1",children:[Ae.map(t=>{const{node:n,depth:o}=t,l=n.kind==="directory",f=v.has(n.path),M=y?.path===n.path,ne=yn(n.path,n.kind),ce=l&&L.has(n.path);return r.jsx(lr,{node:n,depth:o,isExpanded:f,isSelected:M,isLoading:ce,fileVisual:wn(n.name),onSelect:()=>D(n),onOpen:()=>{l?ht(n.path,f):ge(n.path)},onNewFile:()=>X({mode:"new-file",node:n,parentDir:ne}),onNewFolder:()=>X({mode:"new-folder",node:n,parentDir:ne}),onCopyPath:()=>Ne("Path",ue(n.path)),onCopyRelativePath:()=>Ne("Relative path",H(n.path)),onRename:()=>X({mode:"rename",node:n,parentDir:ne}),onDelete:()=>he(n)},n.path)}),j&&Ae.length===0&&r.jsx("div",{className:"px-3 py-4 text-center text-xs text-muted-foreground",children:b?`No files match "${b}"`:"No files found"})]})})]}),r.jsxs("div",{className:"relative flex-1 flex flex-col overflow-hidden",children:[k.length>0&&r.jsx("div",{className:"flex items-center border-b overflow-x-auto shrink-0",children:k.map(t=>{const n=z.get(t),o=n?.loaded&&n.editorValue!==n.savedContent,l=d===t,f=t.split("/").pop()??t;return r.jsxs("div",{className:ie("flex items-center gap-1 px-3 py-1.5 text-xs border-r cursor-pointer transition-colors",l?"bg-background text-foreground":"bg-muted/50 text-muted-foreground hover:bg-accent"),onClick:()=>{x(t),Ee(t)},onKeyDown:()=>{},role:"tab",tabIndex:0,"aria-selected":l,children:[r.jsx("span",{className:"truncate max-w-32",children:f}),o&&r.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-foreground/60 shrink-0"}),r.jsx("button",{type:"button",className:"ml-1 rounded p-0.5 hover:bg-accent-foreground/10",onClick:M=>{M.stopPropagation(),pt(t)},children:r.jsx(Qt,{size:12})})]},t)})}),S&&r.jsx("div",{className:"absolute top-0 left-1/2 -translate-x-1/2 z-20 mt-2",style:{width:"360px"},children:r.jsxs("form",{className:"flex w-full items-center gap-1.5 rounded-xl border border-border bg-background/95 px-3 py-1.5 shadow-lg backdrop-blur",onSubmit:t=>{t.preventDefault();const o=t.currentTarget.elements.namedItem("askAiInput");o.value.trim()&&bt(o.value)},children:[r.jsx("input",{name:"askAiInput",autoFocus:!0,type:"text",placeholder:"Ask the AI...",className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground",onKeyDown:t=>{t.stopPropagation(),t.key==="Escape"&&E(null)}}),r.jsx("button",{type:"submit",className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-foreground text-background transition-opacity",title:"Send",children:r.jsxs("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none","aria-hidden":"true",children:[r.jsx("title",{children:"Send"}),r.jsx("path",{d:"M5 9V1M1 5l4-4 4 4",stroke:"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})})]})}),r.jsx("div",{className:"flex-1 overflow-hidden",children:d&&Z?.loaded?r.jsx(Kt,{language:Ce(d),theme:document.documentElement.classList.contains("dark")?"vs-dark":"light",value:Z.editorValue,path:d,onChange:t=>{const n=d;n&&N(o=>{const l=new Map(o),f=l.get(n);return f&&l.set(n,{...f,editorValue:t??""}),l})},onMount:wt,loading:r.jsx("div",{className:"flex items-center justify-center h-full w-full",children:r.jsx(oe,{size:20,className:"animate-spin text-muted-foreground"})}),options:{fontSize:13,scrollBeyondLastLine:!1,automaticLayout:!0,lineNumbersMinChars:2,wordWrap:"on",minimap:{enabled:!1},padding:{top:12,bottom:12},scrollbar:{vertical:"auto",horizontal:"auto",verticalScrollbarSize:8,horizontalScrollbarSize:8}}},d):d&&!Z?.loaded?r.jsx("div",{className:"flex items-center justify-center h-full w-full",children:r.jsx(oe,{size:20,className:"animate-spin text-muted-foreground"})}):r.jsx("div",{className:"flex items-center justify-center h-full w-full text-sm text-muted-foreground",children:"Select a file to edit"})}),d&&r.jsxs("div",{className:"flex items-center justify-between px-3 py-1 border-t text-[11px] text-muted-foreground shrink-0",children:[r.jsx("span",{className:"truncate",children:d}),r.jsxs("span",{children:[Ct?"Modified":"Saved"," ·"," ",Ce(d)]})]})]}),r.jsx(Dn,{open:F!==null,mode:F?.mode??"new-file",initialName:F?.mode==="rename"?F.node.name:"",parentLabel:F&&F.mode!=="rename"?F.parentDir==="/"?"/":H(F.parentDir):void 0,isPending:ae,onSubmit:st,onOpenChange:t=>{!t&&!ae&&X(null)}}),r.jsx(Rn,{deleteTarget:xe,deleteDirtyPaths:yt,fsActionPending:ae,onOpenChange:t=>{!t&&!ae&&he(null)},onConfirm:t=>{at(t)}})]})}export{sa as FileExplorer};
|