decocms 4.146.1 → 4.147.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client/assets/{AlertCircle-iV-9b6L0.js → AlertCircle-2Dxo9Jp4.js} +1 -1
- package/dist/client/assets/{AreaChart-CLS5JyIR.js → AreaChart-CeWRPxoe.js} +1 -1
- package/dist/client/assets/{ArrowUp-Bq8_Goa-.js → ArrowUp-B372eLRL.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-VAC5WbVQ.js → ArrowUpRight-D802qwXa.js} +1 -1
- package/dist/client/assets/{Check-BEwZK4by.js → Check-C2jMVaeP.js} +1 -1
- package/dist/client/assets/{CheckCircle-C_arAhXi.js → CheckCircle-CAN_wkas.js} +1 -1
- package/dist/client/assets/{ChevronDown-DwSeIJwx.js → ChevronDown-B5V_4H8o.js} +1 -1
- package/dist/client/assets/{ChevronRight-Dj7ZibPe.js → ChevronRight-DbBKG8o-.js} +1 -1
- package/dist/client/assets/{ChevronUp-D8sHMRlA.js → ChevronUp-wl1r60kg.js} +1 -1
- package/dist/client/assets/{Copy01-CDiyMmNu.js → Copy01-DZVLvpLt.js} +1 -1
- package/dist/client/assets/{DotsVertical-h00tBGpG.js → DotsVertical-zoeuWG_B.js} +1 -1
- package/dist/client/assets/{Eye-CoS_dEFv.js → Eye-p7gVtcBP.js} +1 -1
- package/dist/client/assets/{FilterLines-B7A0MwUa.js → FilterLines-DjZtxUHW.js} +1 -1
- package/dist/client/assets/{HardDrive-D5hWkPW7.js → HardDrive-C7lbD7tM.js} +1 -1
- package/dist/client/assets/{Key01-Co7CW7jv.js → Key01-DBOxgjeS.js} +1 -1
- package/dist/client/assets/{LayoutLeft-CQ5Zq-C7.js → LayoutLeft-CVH4xfOW.js} +1 -1
- package/dist/client/assets/{LinkExternal01-BuQ3C4t9.js → LinkExternal01-DDyZLcZQ.js} +1 -1
- package/dist/client/assets/{LogOut01-CEARG2vU.js → LogOut01-C6LzoNzY.js} +1 -1
- package/dist/client/assets/{Monitor01-BeDlFKTq.js → Monitor01-CEb-YULy.js} +1 -1
- package/dist/client/assets/{Palette-C749bZK9.js → Palette-wtVoPoiz.js} +1 -1
- package/dist/client/assets/{Play-Bfbh5D9o.js → Play-C3hWiv-e.js} +1 -1
- package/dist/client/assets/{Plus-BifB3M1m.js → Plus-twvBvKo0.js} +1 -1
- package/dist/client/assets/{SearchLg---BxTKhv.js → SearchLg-KmYTVejr.js} +1 -1
- package/dist/client/assets/{SearchMd-DXm95nAk.js → SearchMd-rlLrkvov.js} +1 -1
- package/dist/client/assets/{Settings02-BTjZquNj.js → Settings02-DTexHau_.js} +1 -1
- package/dist/client/assets/{Shield01-Dfy37vyR.js → Shield01-BTEsJ7WP.js} +1 -1
- package/dist/client/assets/{Star01-QaWR6Ezs.js → Star01-D4viPiJS.js} +1 -1
- package/dist/client/assets/{Stars01-DNx-fPjC.js → Stars01-DVCi9msB.js} +1 -1
- package/dist/client/assets/{Stars02-Bf4G2ysf.js → Stars02-BjRWIB5s.js} +1 -1
- package/dist/client/assets/{Sun-DXJuSD-H.js → Sun-DukWKLhx.js} +1 -1
- package/dist/client/assets/{SwitchHorizontal01-WXmWF2vt.js → SwitchHorizontal01-7ZAWs0i3.js} +1 -1
- package/dist/client/assets/{Tool01-CLVcZjYh.js → Tool01-sslyST3d.js} +1 -1
- package/dist/client/assets/{Tool02-DD5PhqNn.js → Tool02-CcCmqYgT.js} +1 -1
- package/dist/client/assets/{Trash01-DcCzRKAW.js → Trash01-DLKfyXZh.js} +1 -1
- package/dist/client/assets/{TrendUp01-CLrU39GK.js → TrendUp01-CaIwgyNu.js} +1 -1
- package/dist/client/assets/{Upload01-poa1D0uh.js → Upload01-Ow-YBNzJ.js} +1 -1
- package/dist/client/assets/{User01-XcUJMrMi.js → User01-bQzld3qt.js} +1 -1
- package/dist/client/assets/{Users01-DAMvzaJN.js → Users01-BUxDCVEu.js} +1 -1
- package/dist/client/assets/{Users03-oO2BbmYc.js → Users03-EvTDMkNg.js} +1 -1
- package/dist/client/assets/{X-D-S1FaYS.js → X-DggNryax.js} +1 -1
- package/dist/client/assets/{XCircle-tG0FSbc_.js → XCircle-DBOmOGaZ.js} +1 -1
- package/dist/client/assets/{XClose-C_8ss2IS.js → XClose-DToI7Nqc.js} +1 -1
- package/dist/client/assets/{Zap-6vuFSHAi.js → Zap-DqDSY9Io.js} +1 -1
- package/dist/client/assets/{ZapSquare-DGtIJhBt.js → ZapSquare-gRQk1Abv.js} +1 -1
- package/dist/client/assets/{access-gate-DmF9tuil.js → access-gate-CWCiToTH.js} +1 -1
- package/dist/client/assets/{add-section-modal-BcqHymBd.js → add-section-modal-CeJ1-JyO.js} +1 -1
- package/dist/client/assets/{agent-icon-DmqrLJlK.js → agent-icon-ogpT0fwN.js} +1 -1
- package/dist/client/assets/{agents-list-CRlFP1zC.js → agents-list-ec9myJyq.js} +1 -1
- package/dist/client/assets/{ai-providers-Bk-h6KpB.js → ai-providers-ClqJWEZC.js} +1 -1
- package/dist/client/assets/{alert-Cm_H6_i3.js → alert-DTidhd77.js} +1 -1
- package/dist/client/assets/{alert-dialog-KLO3EI5S.js → alert-dialog-z-Dw9ujH.js} +1 -1
- package/dist/client/assets/{app-editor-CMmq69Qs.js → app-editor-CDMhGuWj.js} +1 -1
- package/dist/client/assets/{auth-NUgT0GrU.js → auth-Bpedj-YK.js} +1 -1
- package/dist/client/assets/{auth-catchall-CMFyQZGD.js → auth-catchall-BcwsUwHl.js} +1 -1
- package/dist/client/assets/{auth-entry-CjvvaG5T.js → auth-entry-nl-PnT-G.js} +1 -1
- package/dist/client/assets/{auth-split-layout-B94HleBq.js → auth-split-layout-C7JK5n39.js} +1 -1
- package/dist/client/assets/{authenticate-and-persist-oauth-uyGMJLSI.js → authenticate-and-persist-oauth-DdjdUYso.js} +1 -1
- package/dist/client/assets/{automation-list-row-Bf5-MRN4.js → automation-list-row-ag0oaYTw.js} +1 -1
- package/dist/client/assets/{automation-runs-CO-bNTHb.js → automation-runs-3G8hXCfY.js} +1 -1
- package/dist/client/assets/{automations-DRd61XcH.js → automations-C9RVMgr8.js} +1 -1
- package/dist/client/assets/{avatar-BFl9MhjQ.js → avatar-5FmDg7zM.js} +1 -1
- package/dist/client/assets/{badge-BwV-4Vi4.js → badge-DoEcc1aI.js} +1 -1
- package/dist/client/assets/{block-document-C7QgL-nH.js → block-document-B0AQfP1Y.js} +1 -1
- package/dist/client/assets/{brand-context-CEj_IAjQ.js → brand-context-Hbwd_4uR.js} +1 -1
- package/dist/client/assets/{buckets-CitrcBgj.js → buckets-koai8Thu.js} +1 -1
- package/dist/client/assets/{bulk-category-panel-B9VFn-91.js → bulk-category-panel-CHT0UPC1.js} +1 -1
- package/dist/client/assets/{calendar-BsW-wV9E.js → calendar-CBe1ZNyc.js} +1 -1
- package/dist/client/assets/{capability-load-error-CsUJ-j9z.js → capability-load-error-Bt5S5c9O.js} +1 -1
- package/dist/client/assets/{card-DryaE2W3.js → card-Cfa6Qex1.js} +1 -1
- package/dist/client/assets/{category-editor-CKTVtRkM.js → category-editor-wwha4Tr6.js} +1 -1
- package/dist/client/assets/{chat-context-CJprnyAF.js → chat-context-BPzudfpo.js} +1 -1
- package/dist/client/assets/{checkbox-Dkt6rnMp.js → checkbox-BuwxPguw.js} +1 -1
- package/dist/client/assets/{cli-auth-success-ClTvzLlY.js → cli-auth-success-DoPTvZOx.js} +1 -1
- package/dist/client/assets/{collection-detail-Cu1dUGi0.js → collection-detail-xsCsj9wR.js} +1 -1
- package/dist/client/assets/{collection-display-button-CJtMzYEM.js → collection-display-button-CyO5TDnk.js} +1 -1
- package/dist/client/assets/{collection-search-BjtQL6OR.js → collection-search-RMfBhC2C.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-Brisqdfn.js → collection-table-wrapper-DpHKsYFT.js} +1 -1
- package/dist/client/assets/{collection-tabs-Bz3MwbKN.js → collection-tabs-BSlr9piZ.js} +1 -1
- package/dist/client/assets/{command-CJ4FB8IT.js → command-CUPOFlBp.js} +1 -1
- package/dist/client/assets/{commerce-onboarding-psQ6nNs1.js → commerce-onboarding-C4waheWV.js} +1 -1
- package/dist/client/assets/{companions-core-nqUtc9ST.js → companions-core-CtglsN_S.js} +1 -1
- package/dist/client/assets/{connect-D2r1foh7.js → connect-Sdg2KnBi.js} +1 -1
- package/dist/client/assets/{connection-D01AN8S5.js → connection-DLXOy2XB.js} +1 -1
- package/dist/client/assets/{connection-card-uHCGfuCP.js → connection-card-Do6ibR1U.js} +1 -1
- package/dist/client/assets/{connection-detail-BA4CJnKD.js → connection-detail-CH8cUbTD.js} +1 -1
- package/dist/client/assets/{connection-form-helpers-PGV3rmgF.js → connection-form-helpers-BfZISReW.js} +1 -1
- package/dist/client/assets/{connections-BDnPKD3v.js → connections-Cxzr_fbS.js} +1 -1
- package/dist/client/assets/{decopilot-sse-pool-Bbz6JSxH.js → decopilot-sse-pool-DlAzrZLY.js} +1 -1
- package/dist/client/assets/{dialog-X9BweWBo.js → dialog-DVdklNAE.js} +1 -1
- package/dist/client/assets/{domain-settings-CNIzVuor.js → domain-settings-Dgy45_Ok.js} +1 -1
- package/dist/client/assets/{drawer-H9uYjyJO.js → drawer-CwXxYVif.js} +1 -1
- package/dist/client/assets/{dropdown-menu-DhiwoSOv.js → dropdown-menu-bU2H-ZfQ.js} +1 -1
- package/dist/client/assets/{empty-state-Bbi0wmo_.js → empty-state-C-3qb1Uu.js} +1 -1
- package/dist/client/assets/{extract-connection-data-Drdn1Nzd.js → extract-connection-data-BWhbeE-G.js} +1 -1
- package/dist/client/assets/{file-explorer-O9SHRUaw.js → file-explorer-BPuHSeRK.js} +1 -1
- package/dist/client/assets/{form-B_AMb5Fz.js → form-BwtPLhrX.js} +1 -1
- package/dist/client/assets/{general-B19Tu2dd.js → general-BYxFhpaD.js} +1 -1
- package/dist/client/assets/{github-repo-picker-BWo0mStf.js → github-repo-picker-BpYKcrhF.js} +1 -1
- package/dist/client/assets/{hooks-HM6-OmCU.js → hooks-J8rGPFF8.js} +5 -5
- package/dist/client/assets/{index-CUcIQeNw.js → index-B7lrqyL7.js} +1 -1
- package/dist/client/assets/{index-CawOud0u.js → index-BQ8Czkdj.js} +1 -1
- package/dist/client/assets/{index-dCzAbkDl.js → index-CEHLfvMx.js} +1 -1
- package/dist/client/assets/{index-DPXYtC7p.js → index-CLN4w7mU.js} +1 -1
- package/dist/client/assets/{index-CSpVJ_t8.js → index-CRRQs3pu.js} +3 -3
- package/dist/client/assets/{index-BsCcyOa9.js → index-DVue46g1.js} +1 -1
- package/dist/client/assets/{index-B7AdfWqS.js → index-Dm65Bk5S.js} +1 -1
- package/dist/client/assets/{index-BBcnt_Gc.js → index-VU9uaddL.js} +3 -3
- package/dist/client/assets/{index-DzeUBs5H.js → index-ehieywuX.js} +16 -16
- package/dist/client/assets/{index-DY3aCwd-.js → index-gZior8MX.js} +1 -1
- package/dist/client/assets/{index-redirect-CPophITp.js → index-redirect-CdBxKhWC.js} +1 -1
- package/dist/client/assets/{index-Tblji67m.js → index-wG5kjH0l.js} +1 -1
- package/dist/client/assets/{input-nIRBYIuI.js → input-BhLtvwyU.js} +1 -1
- package/dist/client/assets/{integration-icon-D6bgSpK1.js → integration-icon-usmHU4kF.js} +1 -1
- package/dist/client/assets/{invite-member-dialog-eUyxVvzk.js → invite-member-dialog-Ckv9Myia.js} +1 -1
- package/dist/client/assets/{label-BrWXm0oL.js → label-B25IW2ay.js} +1 -1
- package/dist/client/assets/{layout-C1JWCDS_.js → layout-CzIgWLWr.js} +1 -1
- package/dist/client/assets/login-D-HpbIMP.js +1 -0
- package/dist/client/assets/{mcp-oauth-Dbphkt3b.js → mcp-oauth-CiZPfBq7.js} +1 -1
- package/dist/client/assets/{members-ajbEjWHb.js → members-BfGAmibS.js} +1 -1
- package/dist/client/assets/{monaco-editor-CI4sJdLM.js → monaco-editor-DgEE9u8w.js} +1 -1
- package/dist/client/assets/{monitoring-stats-row-DJQ5u-3I.js → monitoring-stats-row-QlaQMMcJ.js} +1 -1
- package/dist/client/assets/{multi-select-hVoAgZf8.js → multi-select-DxpuCUQm.js} +1 -1
- package/dist/client/assets/{oauth-callback-uW0tx16Y.js → oauth-callback-BHyB_ej7.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-CdtmM1gN.js → oauth-callback-ai-provider-m9yxWFWB.js} +1 -1
- package/dist/client/assets/{onboarding-FVt6pQE7.js → onboarding-C47NYssi.js} +1 -1
- package/dist/client/assets/{org-install-BXbdMz_B.js → org-install-B-vcLlYS.js} +1 -1
- package/dist/client/assets/{org-layout-szLkAsz4.js → org-layout-nbN1a7Yl.js} +1 -1
- package/dist/client/assets/{organization-choice-DdFEl8C9.js → organization-choice-BRAHlJxA.js} +1 -1
- package/dist/client/assets/{orgs-Bm3q5r5W.js → orgs-CtePRYJc.js} +1 -1
- package/dist/client/assets/{page-seo-form-CCHnBA0A.js → page-seo-form-DhizkrtP.js} +1 -1
- package/dist/client/assets/{popover-DPzcVRI9.js → popover-CikAxVnJ.js} +1 -1
- package/dist/client/assets/{post-editor-Bo0o8qVA.js → post-editor-BZYKJtKx.js} +1 -1
- package/dist/client/assets/{primitives-9JtZslKi.js → primitives-CVTXxKjI.js} +1 -1
- package/dist/client/assets/{profile-DNOq-C7l.js → profile-DDciXnU8.js} +1 -1
- package/dist/client/assets/project-app-view-aaDjfuhs.js +1 -0
- package/dist/client/assets/record-editor-DA1E65mv.js +1 -0
- package/dist/client/assets/{redirect-editor-CEQ_rNB1.js → redirect-editor-DFqLzo80.js} +1 -1
- package/dist/client/assets/registry-D1l-18XW.js +2 -0
- package/dist/client/assets/{registry-layout-O8eFjdsj.js → registry-layout-DNooTVVs.js} +1 -1
- package/dist/client/assets/{reports-rdNAsKIl.js → reports-qG8QeIS4.js} +1 -1
- package/dist/client/assets/{require-capability-BqW2O8tQ.js → require-capability-BS0SiTq8.js} +1 -1
- package/dist/client/assets/{required-auth-layout-CZcGkbeo.js → required-auth-layout-Cy_WRaQ5.js} +1 -1
- package/dist/client/assets/{reset-password-NAnSgMCU.js → reset-password-CbcNEWD7.js} +1 -1
- package/dist/client/assets/{roles-DAwDB-aN.js → roles-DHKo73Yh.js} +1 -1
- package/dist/client/assets/{search-input-B33sM_et.js → search-input-CSdyJzrs.js} +1 -1
- package/dist/client/assets/{secrets-1vFLdoMt.js → secrets-C8RVoqcC.js} +1 -1
- package/dist/client/assets/{sections-editor-DYTM43Ec.js → sections-editor-Bci7cl0U.js} +1 -1
- package/dist/client/assets/{select-Bumes-Pu.js → select-BVkSBqst.js} +1 -1
- package/dist/client/assets/{select-model-B-YMm1Vb.js → select-model-DgbjHm8v.js} +1 -1
- package/dist/client/assets/{self-tool-result-pTasFl_J.js → self-tool-result-CF2HPjvE.js} +1 -1
- package/dist/client/assets/{seo-editor-HPjahBFt.js → seo-editor-BZIIwUJB.js} +1 -1
- package/dist/client/assets/{settings-layout-j1oEnNh-.js → settings-layout-CKHRZfSb.js} +1 -1
- package/dist/client/assets/{settings-section-BhK0tyVv.js → settings-section-CE3NSzeg.js} +1 -1
- package/dist/client/assets/{shell-controls-COEu759Q.js → shell-controls-CPSNcZz_.js} +1 -1
- package/dist/client/assets/{shell-layout-ntvgQban.js → shell-layout-qGgLrw6a.js} +1 -1
- package/dist/client/assets/{sidebar-DX7dXJWd.js → sidebar-C2EJhhvO.js} +1 -1
- package/dist/client/assets/{skeleton-CLiDBsAg.js → skeleton-BWVGyUEt.js} +1 -1
- package/dist/client/assets/{sso-CQAbUFs8.js → sso-CAYCwQnn.js} +1 -1
- package/dist/client/assets/{store-BrOCEq1y.js → store-CuzQiFiL.js} +1 -1
- package/dist/client/assets/store-registry-DtkX06Hy.js +2 -0
- package/dist/client/assets/{studio-tools-C3gmiGRu.js → studio-tools-DBFaX7ST.js} +1 -1
- package/dist/client/assets/{switch-CnJXP7aS.js → switch-CNRWi3FZ.js} +1 -1
- package/dist/client/assets/{tab-id-8jbcMQB2.js → tab-id-BqojNeZR.js} +1 -1
- package/dist/client/assets/{table-BptDOtwb.js → table-CdJn6WvV.js} +1 -1
- package/dist/client/assets/{tabs-Ba77uRY9.js → tabs-NsSjOhwR.js} +1 -1
- package/dist/client/assets/{textarea-BDkMfXcP.js → textarea-CiNKDnWv.js} +1 -1
- package/dist/client/assets/{toggle-group-B2gOWe_x.js → toggle-group-D_BPSBzt.js} +1 -1
- package/dist/client/assets/{toolbar-pRr49cDw.js → toolbar-BRqOCr64.js} +1 -1
- package/dist/client/assets/{tooltip-7Y1XKgM6.js → tooltip-C3B4U3Wy.js} +1 -1
- package/dist/client/assets/{use-ai-providers-GhlvaZHT.js → use-ai-providers-Csc5nim3.js} +1 -1
- package/dist/client/assets/{use-automations-BFjJHCwS.js → use-automations-B9hqF4wB.js} +1 -1
- package/dist/client/assets/{use-autosave-Y3QhO529.js → use-autosave-Cyx57fpY.js} +1 -1
- package/dist/client/assets/{use-capability-NOX9q9Tg.js → use-capability-DRx71rlV.js} +1 -1
- package/dist/client/assets/{use-clock-tick-Bq0LVZ1e.js → use-clock-tick-aHpzHC9y.js} +1 -1
- package/dist/client/assets/{use-connection-B7zY84qP.js → use-connection-DyHBRgFa.js} +1 -1
- package/dist/client/assets/{use-copy-DxAhFzR7.js → use-copy-D-F0c9mf.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-CIa8P0o6.js → use-create-virtual-mcp-DLdvWiU9.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-W3stCruS.js → use-debounced-autosave-C_YycABY.js} +1 -1
- package/dist/client/assets/{use-debounced-value-D9N08iAn.js → use-debounced-value-B8uEa1pc.js} +1 -1
- package/dist/client/assets/{use-deco-credits-D_5oaYT8.js → use-deco-credits-OJRLasP4.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-CvJ5QuPg.js → use-decopilot-events-CZkll74C.js} +1 -1
- package/dist/client/assets/{use-delete-connection-BYjHzqqG.js → use-delete-connection-DkRmsRGW.js} +1 -1
- package/dist/client/assets/{use-deployment-admin-CT92EahJ.js → use-deployment-admin-B9ieKt3o.js} +1 -1
- package/dist/client/assets/{use-file-configs-3Uf1EEcc.js → use-file-configs-CQy14lQY.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-AOUN3CPT.js → use-infinite-scroll-Di2AwkTk.js} +1 -1
- package/dist/client/assets/{use-join-requests-e475sqGw.js → use-join-requests-BXkB9jis.js} +1 -1
- package/dist/client/assets/{use-mcp-auth-status-CAkd4rc7.js → use-mcp-auth-status-B7k8gEXo.js} +1 -1
- package/dist/client/assets/{use-mcp-client-BAxUImLq.js → use-mcp-client-B2NT7Yn8.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-B4eBN42P.js → use-mcp-tools-DTp1Iuhl.js} +1 -1
- package/dist/client/assets/{use-members-CeV_DCBs.js → use-members-W-L-efpC.js} +1 -1
- package/dist/client/assets/{use-mobile-CP8WVgC_.js → use-mobile-DjIISmPe.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-DlWN4wRt.js → use-navigate-to-agent-C51Rlzqu.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-CRpx9rm3.js → use-org-auth-client-89JHqrqV.js} +1 -1
- package/dist/client/assets/{use-org-sso-DzwCD9iO.js → use-org-sso-DjMWSiHs.js} +1 -1
- package/dist/client/assets/{use-organization-roles-DG5uo6GW.js → use-organization-roles-BgC8nykh.js} +1 -1
- package/dist/client/assets/{use-organization-settings-Cf8P9suD.js → use-organization-settings-B8UaSk9b.js} +1 -1
- package/dist/client/assets/{use-registry-connections-DNDwHCwV.js → use-registry-connections-BFTijxiT.js} +1 -1
- package/dist/client/assets/{use-secrets-BLupskDm.js → use-secrets-Db_sK9jg.js} +1 -1
- package/dist/client/assets/{use-status-sounds-CEZanElm.js → use-status-sounds-CN0VR5j3.js} +1 -1
- package/dist/client/assets/{use-tags-BTuO09cc.js → use-tags-CoubQDew.js} +1 -1
- package/dist/client/assets/{use-view-mode-CfIlJShN.js → use-view-mode-D83KuKyT.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-Bo1jQyKL.js → use-virtual-mcp-cIVDeGtC.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-2Uj65vAx.js +1 -0
- package/dist/client/assets/{useQueries-BTlMxElZ.js → useQueries-8o3cmVmk.js} +1 -1
- package/dist/client/assets/{useRouterState-DWJuYUgm.js → useRouterState-BTNAcN5V.js} +1 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-C1ZnfWbf.js +1 -0
- package/dist/client/assets/{users-BTyK8-ey.js → users-C0Tl9kDJ.js} +1 -1
- package/dist/client/assets/{variant-calendar-z9rvrTbS.js → variant-calendar-BTs0kt_F.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-CR-SHm8O.js → view-mode-toggle-CmoxDY4e.js} +1 -1
- package/dist/client/index.html +1 -1
- package/dist/server/cli.js +516 -511
- package/dist/server/migrate.js +122 -122
- package/dist/server/server.js +319 -319
- package/package.json +1 -1
- package/dist/client/assets/login-DhQoKLuv.js +0 -1
- package/dist/client/assets/project-app-view-VkJg7Is0.js +0 -1
- package/dist/client/assets/record-editor-2HUsOqp-.js +0 -1
- package/dist/client/assets/registry-Bm4WSfLH.js +0 -2
- package/dist/client/assets/store-registry-BhTGP20T.js +0 -2
- package/dist/client/assets/useInfiniteQuery-DqqVvrJC.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-DnbYqVs7.js +0 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{c as se,b as Me,r as u,j as r,k as fe,B as De,d_ as Jt,ay as Zt,aE as xe,d$ as en,e0 as tn,e1 as nn,e2 as rn,bI as on,e3 as sn,e4 as lt,aA as an,e5 as ln,e6 as cn,e7 as dn,e8 as un,e9 as fn,ea as pn,eb as mn,ec as xn,ed as hn,m as le,o as gn,t as ne,K as Ze}from"./index-CSpVJ_t8.js";import{F as bn,l as yn}from"./monaco-editor-CI4sJdLM.js";import{D as vn,f as Cn,a_ as wn,a$ as Nn}from"./agent-icon-DmqrLJlK.js";import{s as jn}from"./XClose-C_8ss2IS.js";import{n as En}from"./automation-runs-CO-bNTHb.js";import{c as et,T as tt,a as nt}from"./tooltip-7Y1XKgM6.js";import{a as Sn}from"./chat-context-CJprnyAF.js";import{u as Dn}from"./shell-layout-ntvgQban.js";import{i as Mn,E as Rn,a as Ae,b as Tn,f as Pn,g as kn,c as Fn,t as re,d as we,e as Le,h as Ne,j as Oe,k as Ie,l as An,s as Ln,v as On,m as $e,n as je,o as rt,p as In,q as Ee,r as Ke,w as $n,x as Kn,y as zn,z as _n}from"./index-DzeUBs5H.js";import{b as Gn,h as Bn,a as Vn,c as Un,d as Hn,e as qn}from"./dialog-X9BweWBo.js";import{I as ot}from"./input-nIRBYIuI.js";import{c as Wn,d as Qn,b as Xn,f as Yn,g as Jn,e as Zn,a as er,A as tr}from"./alert-dialog-KLO3EI5S.js";import{t as nr}from"./ChevronDown-DwSeIJwx.js";import{i as rr}from"./ChevronRight-Dj7ZibPe.js";import"./delay-CnY5UFtP.js";import"./AlertCircle-iV-9b6L0.js";import"./Tool01-CLVcZjYh.js";import"./ArrowUp-Bq8_Goa-.js";import"./Settings02-BTjZquNj.js";import"./Tool02-DD5PhqNn.js";import"./XCircle-tG0FSbc_.js";import"./ArrowUpRight-VAC5WbVQ.js";import"./TrendUp01-CLrU39GK.js";import"./ZapSquare-DGtIJhBt.js";import"./Users03-oO2BbmYc.js";import"./CheckCircle-C_arAhXi.js";import"./Check-BEwZK4by.js";import"./ChevronUp-D8sHMRlA.js";import"./DotsVertical-h00tBGpG.js";import"./Stars02-Bf4G2ysf.js";import"./Copy01-CDiyMmNu.js";import"./Eye-CoS_dEFv.js";import"./FilterLines-B7A0MwUa.js";import"./Star01-QaWR6Ezs.js";import"./Palette-C749bZK9.js";import"./SwitchHorizontal01-WXmWF2vt.js";import"./HardDrive-D5hWkPW7.js";import"./Key01-Co7CW7jv.js";import"./LayoutLeft-CQ5Zq-C7.js";import"./LinkExternal01-BuQ3C4t9.js";import"./LogOut01-CEARG2vU.js";import"./Monitor01-BeDlFKTq.js";import"./Sun-DXJuSD-H.js";import"./Play-Bfbh5D9o.js";import"./Plus-BifB3M1m.js";import"./SearchLg---BxTKhv.js";import"./SearchMd-DXm95nAk.js";import"./Shield01-Dfy37vyR.js";import"./Stars01-DNx-fPjC.js";import"./Trash01-DcCzRKAW.js";import"./Upload01-poa1D0uh.js";import"./User01-XcUJMrMi.js";import"./Users01-DAMvzaJN.js";import"./X-D-S1FaYS.js";import"./Zap-6vuFSHAi.js";import"./select-Bumes-Pu.js";import"./useInfiniteQuery-DqqVvrJC.js";import"./use-infinite-scroll-AOUN3CPT.js";import"./use-connection-B7zY84qP.js";import"./use-mcp-client-BAxUImLq.js";import"./auth-NUgT0GrU.js";import"./use-virtual-mcp-Bo1jQyKL.js";import"./card-DryaE2W3.js";import"./sidebar-DX7dXJWd.js";import"./use-mobile-CP8WVgC_.js";import"./table-BptDOtwb.js";import"./empty-state-Bbi0wmo_.js";import"./use-members-CeV_DCBs.js";import"./use-org-auth-client-CRpx9rm3.js";import"./use-clock-tick-Bq0LVZ1e.js";import"./use-automations-BFjJHCwS.js";import"./studio-tools-C3gmiGRu.js";import"./useSuspenseInfiniteQuery-DnbYqVs7.js";import"./avatar-BFl9MhjQ.js";import"./format-time-BnbuEtat.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./use-copy-DxAhFzR7.js";import"./tab-id-8jbcMQB2.js";import"./hooks-HM6-OmCU.js";import"./backoff-CrEUbyZT.js";import"./decopilot-sse-pool-Bbz6JSxH.js";import"./index-DPXYtC7p.js";import"./calendar-BsW-wV9E.js";import"./integration-icon-D6bgSpK1.js";import"./use-navigate-to-agent-DlWN4wRt.js";import"./reusable-new-chat-CouMjkYR.js";import"./AreaChart-CLS5JyIR.js";import"./form-B_AMb5Fz.js";import"./label-BrWXm0oL.js";import"./use-ai-providers-GhlvaZHT.js";import"./use-decopilot-events-CvJ5QuPg.js";import"./use-organization-settings-Cf8P9suD.js";import"./required-auth-layout-CZcGkbeo.js";import"./use-org-sso-DzwCD9iO.js";import"./drawer-H9uYjyJO.js";import"./collection-search-BjtQL6OR.js";import"./index-BBcnt_Gc.js";import"./get-initials-D-f_fDFw.js";import"./popover-DPzcVRI9.js";import"./dropdown-menu-DhiwoSOv.js";import"./github-repo-picker-BWo0mStf.js";import"./use-debounced-value-D9N08iAn.js";import"./authenticate-and-persist-oauth-uyGMJLSI.js";import"./mcp-oauth-Dbphkt3b.js";import"./use-mcp-tools-B4eBN42P.js";import"./extract-connection-data-Drdn1Nzd.js";import"./metadata-dUsYcpuu.js";import"./provision-repo-scoped-github-connection-DWINBxtd.js";import"./use-tags-BTuO09cc.js";import"./command-CJ4FB8IT.js";import"./index-B7AdfWqS.js";import"./companions-core-nqUtc9ST.js";import"./tabs-Ba77uRY9.js";import"./toggle-group-B2gOWe_x.js";import"./use-deco-credits-D_5oaYT8.js";import"./toolbar-pRr49cDw.js";import"./skeleton-CLiDBsAg.js";import"./agent-capabilities-cXfbMfjV.js";import"./connection-card-uHCGfuCP.js";import"./use-registry-connections-DNDwHCwV.js";import"./retry-CErkP7V6.js";import"./connection-slug-eyAPH6o3.js";import"./textarea-BDkMfXcP.js";import"./connection-form-helpers-PGV3rmgF.js";import"./collection-tabs-Bz3MwbKN.js";import"./badge-BwV-4Vi4.js";import"./select-model-B-YMm1Vb.js";import"./checkbox-Dkt6rnMp.js";import"./ai-providers-logos-DD3qZ33J.js";import"./settings-section-BhK0tyVv.js";import"./question-004-sINsf4GQ.js";import"./use-status-sounds-CEZanElm.js";import"./deco-site-production-url-CaKZ7xBn.js";import"./use-capability-NOX9q9Tg.js";import"./pt-BR-CLy76QW2.js";import"./use-mcp-auth-status-CAkd4rc7.js";import"./use-debounced-autosave-W3stCruS.js";import"./index-BsCcyOa9.js";import"./search-input-B33sM_et.js";import"./switch-CnJXP7aS.js";import"./use-secrets-BLupskDm.js";import"./useQueries-BTlMxElZ.js";import"./use-file-configs-3Uf1EEcc.js";import"./automation-list-row-Bf5-MRN4.js";const or={"new-file":{titleKey:"sandbox.fileExplorerNameDialog.newFileTitle",descriptionKey:"sandbox.fileExplorerNameDialog.newFileDescription",submitKey:"sandbox.fileExplorerNameDialog.newFileSubmit",placeholderKey:"sandbox.fileExplorerNameDialog.newFilePlaceholder"},"new-folder":{titleKey:"sandbox.fileExplorerNameDialog.newFolderTitle",descriptionKey:"sandbox.fileExplorerNameDialog.newFolderDescription",submitKey:"sandbox.fileExplorerNameDialog.newFolderSubmit",placeholderKey:"sandbox.fileExplorerNameDialog.newFolderPlaceholder"},rename:{titleKey:"sandbox.fileExplorerNameDialog.renameTitle",descriptionKey:"sandbox.fileExplorerNameDialog.renameDescription",submitKey:"sandbox.fileExplorerNameDialog.renameSubmit",placeholderKey:"sandbox.fileExplorerNameDialog.renamePlaceholder"}};function sr(i){const e=se.c(71),{open:s,mode:a,initialName:l,parentLabel:m,isPending:h,onSubmit:f,onOpenChange:v}=i,j=l===void 0?"":l,d=h===void 0?!1:h,x=Me(),[g,k]=u.useState(j),[Z,q]=u.useState(s),y=or[a];s!==Z&&(q(s),s&&k(j));let b;e[0]!==d||e[1]!==v?(b=_=>{!_&&!d&&v(!1)},e[0]=d,e[1]=v,e[2]=b):b=e[2];const F=b;let A;e[3]!==d||e[4]!==g||e[5]!==f?(A=async _=>{_.preventDefault();const te=g.trim();!te||d||await f(te)},e[3]=d,e[4]=g,e[5]=f,e[6]=A):A=e[6];const I=A;let S;e[7]!==y.titleKey||e[8]!==x?(S=x(y.titleKey),e[7]=y.titleKey,e[8]=x,e[9]=S):S=e[9];let P;e[10]!==S?(P=r.jsx(Gn,{children:S}),e[10]=S,e[11]=P):P=e[11];let D;e[12]!==y.descriptionKey||e[13]!==x?(D=x(y.descriptionKey),e[12]=y.descriptionKey,e[13]=x,e[14]=D):D=e[14];let M;e[15]!==D?(M=r.jsx(Bn,{children:D}),e[15]=D,e[16]=M):M=e[16];let N;e[17]!==P||e[18]!==M?(N=r.jsxs(Vn,{children:[P,M]}),e[17]=P,e[18]=M,e[19]=N):N=e[19];let R;e[20]!==m||e[21]!==x?(R=m&&r.jsxs("div",{className:"space-y-1.5",children:[r.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:x("sandbox.fileExplorerNameDialog.location")}),r.jsx(ot,{value:m,readOnly:!0,disabled:!0,className:"font-mono text-xs"})]}),e[20]=m,e[21]=x,e[22]=R):R=e[22];let E;e[23]!==x?(E=x("sandbox.fileExplorerNameDialog.name"),e[23]=x,e[24]=E):E=e[24];let T;e[25]!==E?(T=r.jsx("label",{htmlFor:"file-explorer-name",className:"text-xs font-medium text-muted-foreground",children:E}),e[25]=E,e[26]=T):T=e[26];let Q;e[27]===Symbol.for("react.memo_cache_sentinel")?(Q=_=>k(_.target.value),e[27]=Q):Q=e[27];let X;e[28]!==y.placeholderKey||e[29]!==x?(X=x(y.placeholderKey),e[28]=y.placeholderKey,e[29]=x,e[30]=X):X=e[30];let Y;e[31]!==d||e[32]!==g||e[33]!==X?(Y=r.jsx(ot,{id:"file-explorer-name",value:g,onChange:Q,placeholder:X,autoFocus:!0,disabled:d}),e[31]=d,e[32]=g,e[33]=X,e[34]=Y):Y=e[34];let G;e[35]!==T||e[36]!==Y?(G=r.jsxs("div",{className:"space-y-1.5",children:[T,Y]}),e[35]=T,e[36]=Y,e[37]=G):G=e[37];let $;e[38]!==R||e[39]!==G?($=r.jsxs("div",{className:"space-y-4 py-4",children:[R,G]}),e[38]=R,e[39]=G,e[40]=$):$=e[40];let W;e[41]!==v?(W=()=>v(!1),e[41]=v,e[42]=W):W=e[42];let K;e[43]!==x?(K=x("sandbox.fileExplorerNameDialog.cancel"),e[43]=x,e[44]=K):K=e[44];let z;e[45]!==d||e[46]!==W||e[47]!==K?(z=r.jsx(De,{type:"button",variant:"outline",onClick:W,disabled:d,children:K}),e[45]=d,e[46]=W,e[47]=K,e[48]=z):z=e[48];let B;e[49]!==d||e[50]!==g?(B=!g.trim()||d,e[49]=d,e[50]=g,e[51]=B):B=e[51];let L;e[52]!==y.submitKey||e[53]!==d||e[54]!==x?(L=d?r.jsxs(r.Fragment,{children:[r.jsx(fe,{size:14,className:"animate-spin"}),x("sandbox.fileExplorerNameDialog.saving")]}):x(y.submitKey),e[52]=y.submitKey,e[53]=d,e[54]=x,e[55]=L):L=e[55];let V;e[56]!==B||e[57]!==L?(V=r.jsx(De,{type:"submit",disabled:B,children:L}),e[56]=B,e[57]=L,e[58]=V):V=e[58];let O;e[59]!==z||e[60]!==V?(O=r.jsxs(Un,{children:[z,V]}),e[59]=z,e[60]=V,e[61]=O):O=e[61];let U;e[62]!==I||e[63]!==$||e[64]!==O||e[65]!==N?(U=r.jsx(Hn,{className:"sm:max-w-md",children:r.jsxs("form",{onSubmit:I,children:[N,$,O]})}),e[62]=I,e[63]=$,e[64]=O,e[65]=N,e[66]=U):U=e[66];let ee;return e[67]!==F||e[68]!==s||e[69]!==U?(ee=r.jsx(qn,{open:s,onOpenChange:F,children:U}),e[67]=F,e[68]=s,e[69]=U,e[70]=ee):ee=e[70],ee}function ar(i){const e=se.c(47),{deleteTarget:s,deleteDirtyPaths:a,fsActionPending:l,onOpenChange:m,onConfirm:h}=i,f=Me(),v=s?.kind==="directory",j=s!==null,d=v?"sandbox.fileExplorerDeleteDialog.titleFolder":"sandbox.fileExplorerDeleteDialog.titleFile";let x;e[0]!==f||e[1]!==d?(x=f(d),e[0]=f,e[1]=d,e[2]=x):x=e[2];let g;e[3]!==x?(g=r.jsx(Wn,{children:x}),e[3]=x,e[4]=g):g=e[4];let k;e[5]!==f?(k=f("sandbox.fileExplorerDeleteDialog.description"),e[5]=f,e[6]=k):k=e[6];const Z=s?.name;let q;e[7]!==Z?(q=r.jsx("span",{className:"font-mono",children:Z}),e[7]=Z,e[8]=q):q=e[8];let y;e[9]!==v||e[10]!==f?(y=v?f("sandbox.fileExplorerDeleteDialog.folderSuffix"):".",e[9]=v,e[10]=f,e[11]=y):y=e[11];let b;e[12]!==a.length||e[13]!==f?(b=a.length>0&&r.jsxs(r.Fragment,{children:[" ",a.length===1?f("sandbox.fileExplorerDeleteDialog.unsavedChangesOne"):f("sandbox.fileExplorerDeleteDialog.unsavedChangesMany",{count:a.length})]}),e[12]=a.length,e[13]=f,e[14]=b):b=e[14];let F;e[15]!==k||e[16]!==q||e[17]!==y||e[18]!==b?(F=r.jsxs(Qn,{children:[k," ",q,y,b]}),e[15]=k,e[16]=q,e[17]=y,e[18]=b,e[19]=F):F=e[19];let A;e[20]!==F||e[21]!==g?(A=r.jsxs(Xn,{children:[g,F]}),e[20]=F,e[21]=g,e[22]=A):A=e[22];let I;e[23]!==f?(I=f("sandbox.fileExplorerDeleteDialog.cancel"),e[23]=f,e[24]=I):I=e[24];let S;e[25]!==l||e[26]!==I?(S=r.jsx(Yn,{disabled:l,children:I}),e[25]=l,e[26]=I,e[27]=S):S=e[27];const P=l||!s;let D;e[28]!==s||e[29]!==h?(D=Q=>{Q.preventDefault(),s&&h(s)},e[28]=s,e[29]=h,e[30]=D):D=e[30];let M;e[31]!==f?(M=f("sandbox.fileExplorerDeleteDialog.delete"),e[31]=f,e[32]=M):M=e[32];let N;e[33]!==P||e[34]!==D||e[35]!==M?(N=r.jsx(Jn,{disabled:P,onClick:D,children:M}),e[33]=P,e[34]=D,e[35]=M,e[36]=N):N=e[36];let R;e[37]!==S||e[38]!==N?(R=r.jsxs(Zn,{children:[S,N]}),e[37]=S,e[38]=N,e[39]=R):R=e[39];let E;e[40]!==A||e[41]!==R?(E=r.jsxs(er,{children:[A,R]}),e[40]=A,e[41]=R,e[42]=E):E=e[42];let T;return e[43]!==m||e[44]!==j||e[45]!==E?(T=r.jsx(tr,{open:j,onOpenChange:m,children:E}),e[43]=m,e[44]=j,e[45]=E,e[46]=T):T=e[46],T}var ze="ContextMenu",[ir]=an(ze,[lt]),J=lt(),[lr,ct]=ir(ze),dt=i=>{const{__scopeContextMenu:e,children:s,onOpenChange:a,dir:l,modal:m=!0}=i,[h,f]=u.useState(!1),v=J(e),j=on(a),d=u.useCallback(x=>{f(x),j(x)},[j]);return r.jsx(lr,{scope:e,open:h,onOpenChange:d,modal:m,children:r.jsx(sn,{...v,dir:l,open:h,onOpenChange:d,modal:m,children:s})})};dt.displayName=ze;var ut="ContextMenuTrigger",ft=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,disabled:a=!1,...l}=i,m=ct(ut,s),h=J(s),f=u.useRef({x:0,y:0}),v=u.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...f.current})}),j=u.useRef(0),d=u.useCallback(()=>window.clearTimeout(j.current),[]),x=g=>{f.current={x:g.clientX,y:g.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(Zt.span,{"data-state":m.open?"open":"closed","data-disabled":a?"":void 0,...l,ref:e,style:{WebkitTouchCallout:"none",...i.style},onContextMenu:a?i.onContextMenu:xe(i.onContextMenu,g=>{d(),x(g),g.preventDefault()}),onPointerDown:a?i.onPointerDown:xe(i.onPointerDown,Se(g=>{d(),j.current=window.setTimeout(()=>x(g),700)})),onPointerMove:a?i.onPointerMove:xe(i.onPointerMove,Se(d)),onPointerCancel:a?i.onPointerCancel:xe(i.onPointerCancel,Se(d)),onPointerUp:a?i.onPointerUp:xe(i.onPointerUp,Se(d))})]})});ft.displayName=ut;var cr="ContextMenuPortal",pt=i=>{const{__scopeContextMenu:e,...s}=i,a=J(e);return r.jsx(nn,{...a,...s})};pt.displayName=cr;var mt="ContextMenuContent",xt=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=ct(mt,s),m=J(s),h=u.useRef(!1);return r.jsx(rn,{...m,...a,ref:e,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:f=>{i.onCloseAutoFocus?.(f),!f.defaultPrevented&&h.current&&f.preventDefault(),h.current=!1},onInteractOutside:f=>{i.onInteractOutside?.(f),!f.defaultPrevented&&!l.modal&&(h.current=!0)},style:{...i.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)"}})});xt.displayName=mt;var dr="ContextMenuGroup",ur=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(ln,{...l,...a,ref:e})});ur.displayName=dr;var fr="ContextMenuLabel",pr=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(cn,{...l,...a,ref:e})});pr.displayName=fr;var mr="ContextMenuItem",ht=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(en,{...l,...a,ref:e})});ht.displayName=mr;var xr="ContextMenuCheckboxItem",hr=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(dn,{...l,...a,ref:e})});hr.displayName=xr;var gr="ContextMenuRadioGroup",br=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(un,{...l,...a,ref:e})});br.displayName=gr;var yr="ContextMenuRadioItem",vr=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(fn,{...l,...a,ref:e})});vr.displayName=yr;var Cr="ContextMenuItemIndicator",wr=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(pn,{...l,...a,ref:e})});wr.displayName=Cr;var Nr="ContextMenuSeparator",gt=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(tn,{...l,...a,ref:e})});gt.displayName=Nr;var jr="ContextMenuArrow",Er=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(mn,{...l,...a,ref:e})});Er.displayName=jr;var Sr="ContextMenuSubTrigger",Dr=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(xn,{...l,...a,ref:e})});Dr.displayName=Sr;var Mr="ContextMenuSubContent",Rr=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(hn,{...l,...a,ref:e,style:{...i.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)"}})});Rr.displayName=Mr;function Se(i){return e=>e.pointerType!=="mouse"?i(e):void 0}var Tr=dt,Pr=ft,kr=pt,Fr=xt,Ar=ht,Lr=gt;function Or(i){const e=se.c(4);let s;e[0]!==i?({...s}=i,e[0]=i,e[1]=s):s=e[1];let a;return e[2]!==s?(a=r.jsx(Tr,{"data-slot":"context-menu",...s}),e[2]=s,e[3]=a):a=e[3],a}function Ir(i){const e=se.c(4);let s;e[0]!==i?({...s}=i,e[0]=i,e[1]=s):s=e[1];let a;return e[2]!==s?(a=r.jsx(Pr,{"data-slot":"context-menu-trigger",...s}),e[2]=s,e[3]=a):a=e[3],a}function $r(i){const e=se.c(8);let s,a;e[0]!==i?({className:s,...a}=i,e[0]=i,e[1]=s,e[2]=a):(s=e[1],a=e[2]);let l;e[3]!==s?(l=le("notranslate 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",s),e[3]=s,e[4]=l):l=e[4];let m;return e[5]!==a||e[6]!==l?(m=r.jsx(kr,{children:r.jsx(Fr,{"data-slot":"context-menu-content",translate:"no",className:l,...a})}),e[5]=a,e[6]=l,e[7]=m):m=e[7],m}function ue(i){const e=se.c(12);let s,a,l,m;e[0]!==i?({className:s,inset:a,variant:m,...l}=i,e[0]=i,e[1]=s,e[2]=a,e[3]=l,e[4]=m):(s=e[1],a=e[2],l=e[3],m=e[4]);const h=m===void 0?"default":m;let f;e[5]!==s?(f=le("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",s),e[5]=s,e[6]=f):f=e[6];let v;return e[7]!==a||e[8]!==l||e[9]!==f||e[10]!==h?(v=r.jsx(Ar,{"data-slot":"context-menu-item","data-inset":a,"data-variant":h,className:f,...l}),e[7]=a,e[8]=l,e[9]=f,e[10]=h,e[11]=v):v=e[11],v}function st(i){const e=se.c(8);let s,a;e[0]!==i?({className:s,...a}=i,e[0]=i,e[1]=s,e[2]=a):(s=e[1],a=e[2]);let l;e[3]!==s?(l=le("bg-border -mx-1 my-1 h-px",s),e[3]=s,e[4]=l):l=e[4];let m;return e[5]!==a||e[6]!==l?(m=r.jsx(Lr,{"data-slot":"context-menu-separator",className:l,...a}),e[5]=a,e[6]=l,e[7]=m):m=e[7],m}const Kr="#d9a441";function zr(i){const e=se.c(63),{node:s,depth:a,isExpanded:l,isSelected:m,isLoading:h,fileVisual:f,onOpen:v,onSelect:j,onNewFile:d,onNewFolder:x,onCopyPath:g,onCopyRelativePath:k,onRename:Z,onDelete:q}=i,y=h===void 0?!1:h,b=Me(),F=s.kind==="directory",{Icon:A,color:I}=f,S=m&&"bg-accent";let P;e[0]!==S?(P=le("flex w-full items-center gap-1.5 px-2 py-1.5 text-left text-[13px] hover:bg-accent transition-colors",S),e[0]=S,e[1]=P):P=e[1];const D=`${a*14+8}px`;let M;e[2]!==D?(M={paddingLeft:D},e[2]=D,e[3]=M):M=e[3];let N;e[4]!==v||e[5]!==j?(N=()=>{j(),v()},e[4]=v,e[5]=j,e[6]=N):N=e[6];let R;e[7]!==A||e[8]!==I||e[9]!==F||e[10]!==l||e[11]!==y?(R=F?r.jsxs(r.Fragment,{children:[y?r.jsx(fe,{size:14,className:"shrink-0 animate-spin text-muted-foreground"}):l?r.jsx(nr,{size:14,className:"shrink-0 text-muted-foreground"}):r.jsx(rr,{size:14,className:"shrink-0 text-muted-foreground"}),r.jsx(vn,{size:16,className:"shrink-0",style:{color:Kr}})]}):r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"w-3.5 shrink-0"}),r.jsx(A,{size:16,className:"shrink-0",style:{color:I}})]}),e[7]=A,e[8]=I,e[9]=F,e[10]=l,e[11]=y,e[12]=R):R=e[12];let E;e[13]!==s.name?(E=r.jsx("span",{className:"truncate",children:s.name}),e[13]=s.name,e[14]=E):E=e[14];let T;e[15]!==P||e[16]!==M||e[17]!==N||e[18]!==R||e[19]!==E?(T=r.jsx(Ir,{asChild:!0,children:r.jsxs("button",{type:"button",className:P,style:M,onClick:N,children:[R,E]})}),e[15]=P,e[16]=M,e[17]=N,e[18]=R,e[19]=E,e[20]=T):T=e[20];let Q;e[21]!==b?(Q=b("sandbox.fileTreeRow.newFile"),e[21]=b,e[22]=Q):Q=e[22];let X;e[23]!==d||e[24]!==Q?(X=r.jsx(ue,{onSelect:d,children:Q}),e[23]=d,e[24]=Q,e[25]=X):X=e[25];let Y;e[26]!==b?(Y=b("sandbox.fileTreeRow.newFolder"),e[26]=b,e[27]=Y):Y=e[27];let G;e[28]!==x||e[29]!==Y?(G=r.jsx(ue,{onSelect:x,children:Y}),e[28]=x,e[29]=Y,e[30]=G):G=e[30];let $;e[31]===Symbol.for("react.memo_cache_sentinel")?($=r.jsx(st,{}),e[31]=$):$=e[31];let W;e[32]!==b?(W=b("sandbox.fileTreeRow.copyPath"),e[32]=b,e[33]=W):W=e[33];let K;e[34]!==g||e[35]!==W?(K=r.jsx(ue,{onSelect:g,children:W}),e[34]=g,e[35]=W,e[36]=K):K=e[36];let z;e[37]!==b?(z=b("sandbox.fileTreeRow.copyRelativePath"),e[37]=b,e[38]=z):z=e[38];let B;e[39]!==k||e[40]!==z?(B=r.jsx(ue,{onSelect:k,children:z}),e[39]=k,e[40]=z,e[41]=B):B=e[41];let L;e[42]===Symbol.for("react.memo_cache_sentinel")?(L=r.jsx(st,{}),e[42]=L):L=e[42];let V;e[43]!==b?(V=b("sandbox.fileTreeRow.rename"),e[43]=b,e[44]=V):V=e[44];let O;e[45]!==Z||e[46]!==V?(O=r.jsx(ue,{onSelect:Z,children:V}),e[45]=Z,e[46]=V,e[47]=O):O=e[47];let U;e[48]!==b?(U=b("sandbox.fileTreeRow.delete"),e[48]=b,e[49]=U):U=e[49];let ee;e[50]!==q||e[51]!==U?(ee=r.jsx(ue,{variant:"destructive",onSelect:q,children:U}),e[50]=q,e[51]=U,e[52]=ee):ee=e[52];let _;e[53]!==X||e[54]!==G||e[55]!==K||e[56]!==B||e[57]!==O||e[58]!==ee?(_=r.jsxs($r,{className:"w-52",children:[X,G,$,K,B,L,O,ee]}),e[53]=X,e[54]=G,e[55]=K,e[56]=B,e[57]=O,e[58]=ee,e[59]=_):_=e[59];let te;return e[60]!==_||e[61]!==T?(te=r.jsxs(Or,{children:[T,_]}),e[60]=_,e[61]=T,e[62]=te):te=e[62],te}yn.config({paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.0/min/vs"}});const at=200,_r=2,Gr=250,it=200;function Br(i,e,s,a){return`/api/${i}/sandbox/${encodeURIComponent(e)}/${encodeURIComponent(s)}/${a}`}function Vr(i){const e=se.c(9),{text:s,query:a}=i;let l,m,h;if(e[0]!==a||e[1]!==s){const{leadingEllipsis:v,segments:j}=An(s,a);l="truncate font-mono text-muted-foreground",m=v&&r.jsx("span",{className:"text-muted-foreground/50",children:"…"}),h=j.map(Ur),e[0]=a,e[1]=s,e[2]=l,e[3]=m,e[4]=h}else l=e[2],m=e[3],h=e[4];let f;return e[5]!==l||e[6]!==m||e[7]!==h?(f=r.jsxs("span",{className:l,children:[m,h]}),e[5]=l,e[6]=m,e[7]=h,e[8]=f):f=e[8],f}function Ur(i,e){return i.match?r.jsx("span",{className:"rounded-[2px] bg-primary/20 text-foreground",children:i.text},e):r.jsx("span",{children:i.text},e)}function Ra({orgSlug:i,virtualMcpId:e,branch:s,openPath:a}){const[l,m]=u.useState({files:[],directories:[],truncated:!1}),{files:h,directories:f}=l,[v,j]=u.useState(new Set),[d,x]=u.useState(null),[g,k]=u.useState(null),[Z,q]=u.useState([]),[y,b]=u.useState(""),[F,A]=u.useState(null),[I,S]=u.useState(null),[P,D]=u.useState(!1),[M,N]=u.useState(!1),[R,E]=u.useState(!1),[T,Q]=u.useState(!1),[,X]=u.useState(new Set),[Y,G]=u.useState(new Set),$=u.useRef(0),W=u.useRef(null),K=u.useRef(new Set),z=u.useRef(new Map),B=u.useRef(null),L=u.useRef(0),V=u.useRef(null),O=u.useRef(null),U=u.useRef(null);function ee(t){X(n=>{const o=typeof t=="function"?t(n):t;return K.current=o,o})}const[_,te]=u.useState(new Map),Re=u.useRef(null),[ae,he]=u.useState(null),{sendMessage:bt}=Sn(),{openSidePanel:yt}=Dn(),ge=gn(),[H,oe]=u.useState(null),[Te,Pe]=u.useState(null),[be,ye]=u.useState(!1);async function ie(t,n){const o=await fetch(Br(i,e,s,t),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(n)});if(!o.ok){const c=await o.json().catch(()=>({}));throw new Error(c.error??`Request failed (${o.status})`)}return o.json()}async function ve(){ge.invalidateQueries({queryKey:rt(i,e,s)})}function _e(t,n,o){navigator.clipboard.writeText(o).then(()=>ne.success(t("sandbox.fileExplorer.textCopied",{label:n})),()=>ne.error(t("sandbox.fileExplorer.failedToCopyText",{label:n.toLowerCase()})))}function vt(t){const n=zn(t);if(!n)return;const o=`${i}/${e}/${s}`;ge.setQueryData(Ze.decofile(o),c=>{if(!c)return c;const{[n]:p,...C}=c;return C}),ge.invalidateQueries({queryKey:Ze.liveMeta(i,e,s)})}function Ct(t){const n=t.kind==="file"?[t.path]:h.filter(o=>o.startsWith(".deco/blocks/")).map(o=>we(o)).filter(o=>o===t.path||o.startsWith(`${t.path}/`));for(const o of n)vt(o)}function wt(t){const n=we(t);return Z.filter(o=>{if(o!==n&&!o.startsWith(`${n}/`))return!1;const c=_.get(o);return!!(c?.loaded&&c.editorValue!==c.savedContent)})}function Ge(t){q(n=>n.map(o=>t(o)).filter(o=>o!==null)),x(n=>n&&t(n)),te(n=>{const o=new Map;for(const[c,p]of n){const C=t(c);C&&o.set(C,p)}return o}),k(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=we(t);k(o=>o&&(o.path===n||o.path.startsWith(`${n}/`)?null:o)),Ge(o=>o===n||o.startsWith(`${n}/`)?null:o)}async function jt(t,n){if(!H)return;const o=Ee(H.parentDir,n);if(Ke(o,h,f))throw new Error(t("sandbox.fileExplorer.fileAlreadyExists",{name:n}));await ie("write",{path:re(o),content:""}),await pe(),await ve(),oe(null),me(o)}async function Et(t,n){if(!H)return;const o=Ee(H.parentDir,n);if(Ke(o,h,f))throw new Error(t("sandbox.fileExplorer.fileAlreadyExists",{name:n}));const c=re(o);await ie("mkdir",{path:c}),m(p=>({...p,directories:p.directories.includes(c)?p.directories:[...p.directories,c]})),await pe(),await ve(),oe(null),j(p=>{const C=new Set(p);for(const ce of Ie(o))C.add(ce);return C.add(o),C}),k({name:n,path:o,kind:"directory",children:[]})}async function St(t,n){if(!H)return;const o=H.node.path,c=Ne(o),p=Ee(c,n);if(p===o){oe(null);return}if(Ke(p,h,f))throw new Error(t("sandbox.fileExplorer.fileAlreadyExists",{name:n}));await ie("rename",{from:re(o),to:re(p)}),Ge(C=>C===o?p:C.startsWith(`${o}/`)?Ee(p,C.slice(o.length+1)):C),await pe(),await ve(),oe(null)}async function Dt(t,n){ye(!0);try{await ie("unlink",{path:re(n.path),recursive:n.kind==="directory"}),Ct(n),Nt(n.path),await pe(),await ve(),Pe(null),ne.success(t("sandbox.fileExplorer.fileDeleted",{name:n.name}))}catch(o){ne.error(o instanceof Error?o.message:t("sandbox.fileExplorer.deleteFailed"))}finally{ye(!1)}}async function Mt(t,n){const o=On(n);if(o){ne.error(o);return}ye(!0);try{H?.mode==="new-file"?(await jt(t,n),ne.success(t("sandbox.fileExplorer.fileCreated",{name:n}))):H?.mode==="new-folder"?(await Et(t,n),ne.success(t("sandbox.fileExplorer.folderCreated",{name:n}))):H?.mode==="rename"&&(await St(t,n),ne.success(t("sandbox.fileExplorer.renamedTo",{name:n})))}catch(c){ne.error(c instanceof Error?c.message:t("sandbox.fileExplorer.operationFailed"))}finally{ye(!1)}}const Be=u.useRef(!1);Be.current||(Be.current=!0,W.current=pe());const[Rt,Tt]=u.useState(null),w=Me();if(a&&a!==Rt){Tt(a);const t=a;queueMicrotask(()=>{Mn(t)&&me(t)})}async function ke(t){const n=await ie("glob",t);return{files:n.files??[],directories:n.directories??[],truncated:n.truncated}}function Ve(t,n,o){if(o!==$.current)return!1;let c=!1;return m(p=>{const C=n?_n(p.files,p.directories,t,p.truncated):{files:t.files,directories:t.directories??[],truncated:!!t.truncated};return c=!!C.truncated,{files:C.files,directories:C.directories,truncated:c}}),c&&ne.warning(w("sandbox.fileExplorer.fileListTruncated")),c}async function Pt(t){const n=z.current.get(t);if(n)return n;const o=$.current,c=(async()=>{const p=await ke({pattern:"**/*",path:re(t),limit:Ae}),C=Ve(p,!0,o);return!C&&o===$.current&&ee(ce=>{const Ce=new Set(ce);return Ce.add(t),Ce}),C})();z.current.set(t,c);try{return await c}finally{z.current.delete(t)}}async function Ue(t){if(!$e(t,K.current))return!1;G(n=>new Set(n).add(t));try{return await Pt(t)}finally{G(n=>{const o=new Set(n);return o.delete(t),o})}}async function kt(t,n){const o=new Set(K.current);for(const c of Ie(n)){if(!$e(c,o))continue;if(await Ue(c))throw new Error(t("sandbox.fileExplorer.folderListingTruncated"));o.add(c)}}async function pe(){const t=++$.current;V.current=null,O.current=null,z.current.clear(),E(!0),ee(new Set),j(new Set),G(new Set);try{const n=await ke({pattern:"**/*",limit:Ae,maxDepth:Rn});Ve(n,!1,t),Q(!0)}catch{T&&ne.error(w("sandbox.fileExplorer.failedToRefreshFileTree"))}finally{E(!1)}}async function He(t){if(!_.get(t)?.loaded){te(o=>{const c=new Map(o);return c.set(t,{savedContent:"",editorValue:"",loaded:!1}),c});try{const o=await ie("read",{path:re(t),full:!0}),c=Ln(o.content??"");te(p=>{const C=new Map(p);return C.set(t,{savedContent:c,editorValue:c,loaded:!0}),C})}catch{}}}function Ft(){L.current++,A(null),S(null),D(!1),N(!1)}async function At(){const t=$.current,n=V.current;if(n&&n.generation===t)return n.files;const o=O.current;if(o&&o.generation===t)return o.promise;const c=(async()=>{const p=await ke({pattern:"**/*",limit:Ae});return $.current===t&&(V.current={generation:t,files:p.files}),p.files})();O.current={generation:t,promise:c};try{return await c}finally{O.current?.generation===t&&(O.current=null)}}async function Lt(t,n){try{const o=await At();if(n!==L.current)return;A($n(o,t,it))}catch{if(n!==L.current)return;A([])}}async function Ot(t,n){D(!0);try{const o=await ie("grep",{pattern:t,output_mode:"content",ignore_case:!0,fixed_strings:!0,limit:at});if(n!==L.current)return;S(Kn(o.results??"")),N((o.matchCount??0)>=at)}catch{if(n!==L.current)return;S([]),N(!1)}finally{n===L.current&&D(!1)}}function It(t){const n=t.trim(),o=++L.current;Lt(n,o),n.length<_r?(S(null),D(!1),N(!1)):Ot(n,o)}function $t(t){if(b(t),B.current&&clearTimeout(B.current),!t.trim()){Ft();return}B.current=setTimeout(()=>{It(t)},Gr)}function qe(t){const n=U.current;if(!n||n.path!==d)return;U.current=null;const o=Math.max(1,n.line);t.revealLineInCenter(o),t.setPosition({lineNumber:o,column:1}),t.focus()}function Kt(t){U.current={path:t.path,line:t.line};const n=d===t.path&&_.get(t.path)?.loaded;me(t.path),n&&Re.current&&qe(Re.current)}async function zt(t,n){try{await ie("write",{path:re(t),content:n}),je("file saved via sandbox /write",{path:t}),ge.invalidateQueries({queryKey:rt(i,e,s)});try{const o=await In(i,e,s);je("git status after save",o)}catch(o){je("git status after save failed",{path:t,error:o instanceof Error?o.message:String(o)})}te(o=>{const c=new Map(o),p=c.get(t);return p&&c.set(t,{...p,savedContent:n}),c})}catch(o){je("file save failed",{path:t,error:o instanceof Error?o.message:String(o)})}}function _t(t){x(t),k({name:t.split("/").pop()??t,path:t,kind:"file",children:[]}),he(null),Z.includes(t)||q(n=>[...n,t]),He(t)}function Gt(t){q(n=>{const o=n.filter(c=>c!==t);return d===t&&x(o[o.length-1]??null),o}),te(n=>{const o=new Map(n);return o.delete(t),o})}function We(t){j(n=>{const o=new Set(n);return o.has(t)?o.delete(t):o.add(t),o})}async function Bt(t){if($e(t,K.current))try{if(await Ue(t))return}catch(n){ne.error(n instanceof Error?n.message:w("sandbox.fileExplorer.failedToLoadFolder"));return}We(t)}async function Vt(t,n){if(n){We(t);return}await Bt(t)}async function Ut(t){await W.current,await kt(w,t);const n=Ie(t);j(o=>{const c=new Set(o);for(const p of n)c.add(p);return c}),_t(t)}function me(t){Ut(t).catch(n=>{ne.error(n instanceof Error?n.message:w("sandbox.fileExplorer.failedToOpenFile"))})}function Ht(){return g?.kind==="directory"?g.path:g?.kind==="file"?Ne(g.path):d?Ne(d):"/"}function Qe(t){const n=Ht();oe({mode:t,parentDir:n,node:{name:"",path:n,kind:"directory",children:[]}})}const qt=Tn(h,f),Xe=Pn(qt,v),Fe=F?.length??0,Ye=kn(I??[]),Je=I?.length??0,de=d?_.get(d):null,Wt=de?.loaded&&de.editorValue!==de.savedContent,Qt=Te?wt(Te.path):[],Xt=(t,n)=>{Re.current=t,qe(t),t.addCommand(n.KeyMod.CtrlCmd|n.KeyCode.KeyS,async()=>{if(!d)return;const o=t.getValue();await zt(d,o)}),t.addCommand(n.KeyMod.CtrlCmd|n.KeyCode.KeyK,()=>{const o=t.getSelection(),c=t.getModel();if(!o||!c||!d)return;const p=c.getValueInRange(o);he({filePath:d,lineStart:o.startLineNumber,lineEnd:o.endLineNumber,selectedCode:p})})};function Yt(t){if(!ae)return;const n=[`The user selected code in the file explorer and asked: **"${t.trim()}"**`,"",`**File:** \`${ae.filePath}\``,`**Lines:** ${ae.lineStart}–${ae.lineEnd}`];if(ae.selectedCode){const o=Oe(ae.filePath),c=ae.selectedCode.replace(/```/g,"`` `");n.push("","**Selected code:**","```"+o,c,"```")}n.push("","Please read the source file, locate the code, and apply the requested change."),yt("chat"),bt({parts:[{type:"text",text:n.join(`
|
|
1
|
+
import{c as se,b as Me,r as u,j as r,k as fe,B as De,d_ as Jt,ay as Zt,aE as xe,d$ as en,e0 as tn,e1 as nn,e2 as rn,bI as on,e3 as sn,e4 as lt,aA as an,e5 as ln,e6 as cn,e7 as dn,e8 as un,e9 as fn,ea as pn,eb as mn,ec as xn,ed as hn,m as le,o as gn,t as ne,K as Ze}from"./index-CRRQs3pu.js";import{F as bn,l as yn}from"./monaco-editor-DgEE9u8w.js";import{D as vn,f as Cn,a_ as wn,a$ as Nn}from"./agent-icon-ogpT0fwN.js";import{s as jn}from"./XClose-DToI7Nqc.js";import{n as En}from"./automation-runs-3G8hXCfY.js";import{c as et,T as tt,a as nt}from"./tooltip-C3B4U3Wy.js";import{a as Sn}from"./chat-context-BPzudfpo.js";import{u as Dn}from"./shell-layout-qGgLrw6a.js";import{i as Mn,E as Rn,a as Ae,b as Tn,f as Pn,g as kn,c as Fn,t as re,d as we,e as Le,h as Ne,j as Oe,k as Ie,l as An,s as Ln,v as On,m as $e,n as je,o as rt,p as In,q as Ee,r as Ke,w as $n,x as Kn,y as zn,z as _n}from"./index-ehieywuX.js";import{b as Gn,h as Bn,a as Vn,c as Un,d as Hn,e as qn}from"./dialog-DVdklNAE.js";import{I as ot}from"./input-BhLtvwyU.js";import{c as Wn,d as Qn,b as Xn,f as Yn,g as Jn,e as Zn,a as er,A as tr}from"./alert-dialog-z-Dw9ujH.js";import{t as nr}from"./ChevronDown-B5V_4H8o.js";import{i as rr}from"./ChevronRight-DbBKG8o-.js";import"./delay-CnY5UFtP.js";import"./AlertCircle-2Dxo9Jp4.js";import"./Tool01-sslyST3d.js";import"./ArrowUp-B372eLRL.js";import"./Settings02-DTexHau_.js";import"./Tool02-CcCmqYgT.js";import"./XCircle-DBOmOGaZ.js";import"./ArrowUpRight-D802qwXa.js";import"./TrendUp01-CaIwgyNu.js";import"./ZapSquare-gRQk1Abv.js";import"./Users03-EvTDMkNg.js";import"./CheckCircle-CAN_wkas.js";import"./Check-C2jMVaeP.js";import"./ChevronUp-wl1r60kg.js";import"./DotsVertical-zoeuWG_B.js";import"./Stars02-BjRWIB5s.js";import"./Copy01-DZVLvpLt.js";import"./Eye-p7gVtcBP.js";import"./FilterLines-DjZtxUHW.js";import"./Star01-D4viPiJS.js";import"./Palette-wtVoPoiz.js";import"./SwitchHorizontal01-7ZAWs0i3.js";import"./HardDrive-C7lbD7tM.js";import"./Key01-DBOxgjeS.js";import"./LayoutLeft-CVH4xfOW.js";import"./LinkExternal01-DDyZLcZQ.js";import"./LogOut01-C6LzoNzY.js";import"./Monitor01-CEb-YULy.js";import"./Sun-DukWKLhx.js";import"./Play-C3hWiv-e.js";import"./Plus-twvBvKo0.js";import"./SearchLg-KmYTVejr.js";import"./SearchMd-rlLrkvov.js";import"./Shield01-BTEsJ7WP.js";import"./Stars01-DVCi9msB.js";import"./Trash01-DLKfyXZh.js";import"./Upload01-Ow-YBNzJ.js";import"./User01-bQzld3qt.js";import"./Users01-BUxDCVEu.js";import"./X-DggNryax.js";import"./Zap-DqDSY9Io.js";import"./select-BVkSBqst.js";import"./useInfiniteQuery-2Uj65vAx.js";import"./use-infinite-scroll-Di2AwkTk.js";import"./use-connection-DyHBRgFa.js";import"./use-mcp-client-B2NT7Yn8.js";import"./auth-Bpedj-YK.js";import"./use-virtual-mcp-cIVDeGtC.js";import"./card-Cfa6Qex1.js";import"./sidebar-C2EJhhvO.js";import"./use-mobile-DjIISmPe.js";import"./table-CdJn6WvV.js";import"./empty-state-C-3qb1Uu.js";import"./use-members-W-L-efpC.js";import"./use-org-auth-client-89JHqrqV.js";import"./use-clock-tick-aHpzHC9y.js";import"./use-automations-B9hqF4wB.js";import"./studio-tools-DBFaX7ST.js";import"./useSuspenseInfiniteQuery-C1ZnfWbf.js";import"./avatar-5FmDg7zM.js";import"./format-time-BnbuEtat.js";import"./differenceInSeconds-NQ4PDo0z.js";import"./use-copy-D-F0c9mf.js";import"./tab-id-BqojNeZR.js";import"./hooks-J8rGPFF8.js";import"./backoff-CrEUbyZT.js";import"./decopilot-sse-pool-DlAzrZLY.js";import"./index-CLN4w7mU.js";import"./calendar-CBe1ZNyc.js";import"./integration-icon-usmHU4kF.js";import"./use-navigate-to-agent-C51Rlzqu.js";import"./reusable-new-chat-CouMjkYR.js";import"./AreaChart-CeWRPxoe.js";import"./form-BwtPLhrX.js";import"./label-B25IW2ay.js";import"./use-ai-providers-Csc5nim3.js";import"./use-decopilot-events-CZkll74C.js";import"./use-organization-settings-B8UaSk9b.js";import"./required-auth-layout-Cy_WRaQ5.js";import"./use-org-sso-DjMWSiHs.js";import"./drawer-CwXxYVif.js";import"./collection-search-RMfBhC2C.js";import"./index-VU9uaddL.js";import"./get-initials-D-f_fDFw.js";import"./popover-CikAxVnJ.js";import"./dropdown-menu-bU2H-ZfQ.js";import"./github-repo-picker-BpYKcrhF.js";import"./use-debounced-value-B8uEa1pc.js";import"./authenticate-and-persist-oauth-DdjdUYso.js";import"./mcp-oauth-CiZPfBq7.js";import"./use-mcp-tools-DTp1Iuhl.js";import"./extract-connection-data-BWhbeE-G.js";import"./metadata-dUsYcpuu.js";import"./provision-repo-scoped-github-connection-DWINBxtd.js";import"./use-tags-CoubQDew.js";import"./command-CUPOFlBp.js";import"./index-Dm65Bk5S.js";import"./companions-core-CtglsN_S.js";import"./tabs-NsSjOhwR.js";import"./toggle-group-D_BPSBzt.js";import"./use-deco-credits-OJRLasP4.js";import"./toolbar-BRqOCr64.js";import"./skeleton-BWVGyUEt.js";import"./agent-capabilities-cXfbMfjV.js";import"./connection-card-Do6ibR1U.js";import"./use-registry-connections-BFTijxiT.js";import"./retry-CErkP7V6.js";import"./connection-slug-eyAPH6o3.js";import"./textarea-CiNKDnWv.js";import"./connection-form-helpers-BfZISReW.js";import"./collection-tabs-BSlr9piZ.js";import"./badge-DoEcc1aI.js";import"./select-model-DgbjHm8v.js";import"./checkbox-BuwxPguw.js";import"./ai-providers-logos-DD3qZ33J.js";import"./settings-section-CE3NSzeg.js";import"./question-004-sINsf4GQ.js";import"./use-status-sounds-CN0VR5j3.js";import"./deco-site-production-url-CaKZ7xBn.js";import"./use-capability-DRx71rlV.js";import"./pt-BR-CLy76QW2.js";import"./use-mcp-auth-status-B7k8gEXo.js";import"./use-debounced-autosave-C_YycABY.js";import"./index-DVue46g1.js";import"./search-input-CSdyJzrs.js";import"./switch-CNRWi3FZ.js";import"./use-secrets-Db_sK9jg.js";import"./useQueries-8o3cmVmk.js";import"./use-file-configs-CQy14lQY.js";import"./automation-list-row-ag0oaYTw.js";const or={"new-file":{titleKey:"sandbox.fileExplorerNameDialog.newFileTitle",descriptionKey:"sandbox.fileExplorerNameDialog.newFileDescription",submitKey:"sandbox.fileExplorerNameDialog.newFileSubmit",placeholderKey:"sandbox.fileExplorerNameDialog.newFilePlaceholder"},"new-folder":{titleKey:"sandbox.fileExplorerNameDialog.newFolderTitle",descriptionKey:"sandbox.fileExplorerNameDialog.newFolderDescription",submitKey:"sandbox.fileExplorerNameDialog.newFolderSubmit",placeholderKey:"sandbox.fileExplorerNameDialog.newFolderPlaceholder"},rename:{titleKey:"sandbox.fileExplorerNameDialog.renameTitle",descriptionKey:"sandbox.fileExplorerNameDialog.renameDescription",submitKey:"sandbox.fileExplorerNameDialog.renameSubmit",placeholderKey:"sandbox.fileExplorerNameDialog.renamePlaceholder"}};function sr(i){const e=se.c(71),{open:s,mode:a,initialName:l,parentLabel:m,isPending:h,onSubmit:f,onOpenChange:v}=i,j=l===void 0?"":l,d=h===void 0?!1:h,x=Me(),[g,k]=u.useState(j),[Z,q]=u.useState(s),y=or[a];s!==Z&&(q(s),s&&k(j));let b;e[0]!==d||e[1]!==v?(b=_=>{!_&&!d&&v(!1)},e[0]=d,e[1]=v,e[2]=b):b=e[2];const F=b;let A;e[3]!==d||e[4]!==g||e[5]!==f?(A=async _=>{_.preventDefault();const te=g.trim();!te||d||await f(te)},e[3]=d,e[4]=g,e[5]=f,e[6]=A):A=e[6];const I=A;let S;e[7]!==y.titleKey||e[8]!==x?(S=x(y.titleKey),e[7]=y.titleKey,e[8]=x,e[9]=S):S=e[9];let P;e[10]!==S?(P=r.jsx(Gn,{children:S}),e[10]=S,e[11]=P):P=e[11];let D;e[12]!==y.descriptionKey||e[13]!==x?(D=x(y.descriptionKey),e[12]=y.descriptionKey,e[13]=x,e[14]=D):D=e[14];let M;e[15]!==D?(M=r.jsx(Bn,{children:D}),e[15]=D,e[16]=M):M=e[16];let N;e[17]!==P||e[18]!==M?(N=r.jsxs(Vn,{children:[P,M]}),e[17]=P,e[18]=M,e[19]=N):N=e[19];let R;e[20]!==m||e[21]!==x?(R=m&&r.jsxs("div",{className:"space-y-1.5",children:[r.jsx("span",{className:"text-xs font-medium text-muted-foreground",children:x("sandbox.fileExplorerNameDialog.location")}),r.jsx(ot,{value:m,readOnly:!0,disabled:!0,className:"font-mono text-xs"})]}),e[20]=m,e[21]=x,e[22]=R):R=e[22];let E;e[23]!==x?(E=x("sandbox.fileExplorerNameDialog.name"),e[23]=x,e[24]=E):E=e[24];let T;e[25]!==E?(T=r.jsx("label",{htmlFor:"file-explorer-name",className:"text-xs font-medium text-muted-foreground",children:E}),e[25]=E,e[26]=T):T=e[26];let Q;e[27]===Symbol.for("react.memo_cache_sentinel")?(Q=_=>k(_.target.value),e[27]=Q):Q=e[27];let X;e[28]!==y.placeholderKey||e[29]!==x?(X=x(y.placeholderKey),e[28]=y.placeholderKey,e[29]=x,e[30]=X):X=e[30];let Y;e[31]!==d||e[32]!==g||e[33]!==X?(Y=r.jsx(ot,{id:"file-explorer-name",value:g,onChange:Q,placeholder:X,autoFocus:!0,disabled:d}),e[31]=d,e[32]=g,e[33]=X,e[34]=Y):Y=e[34];let G;e[35]!==T||e[36]!==Y?(G=r.jsxs("div",{className:"space-y-1.5",children:[T,Y]}),e[35]=T,e[36]=Y,e[37]=G):G=e[37];let $;e[38]!==R||e[39]!==G?($=r.jsxs("div",{className:"space-y-4 py-4",children:[R,G]}),e[38]=R,e[39]=G,e[40]=$):$=e[40];let W;e[41]!==v?(W=()=>v(!1),e[41]=v,e[42]=W):W=e[42];let K;e[43]!==x?(K=x("sandbox.fileExplorerNameDialog.cancel"),e[43]=x,e[44]=K):K=e[44];let z;e[45]!==d||e[46]!==W||e[47]!==K?(z=r.jsx(De,{type:"button",variant:"outline",onClick:W,disabled:d,children:K}),e[45]=d,e[46]=W,e[47]=K,e[48]=z):z=e[48];let B;e[49]!==d||e[50]!==g?(B=!g.trim()||d,e[49]=d,e[50]=g,e[51]=B):B=e[51];let L;e[52]!==y.submitKey||e[53]!==d||e[54]!==x?(L=d?r.jsxs(r.Fragment,{children:[r.jsx(fe,{size:14,className:"animate-spin"}),x("sandbox.fileExplorerNameDialog.saving")]}):x(y.submitKey),e[52]=y.submitKey,e[53]=d,e[54]=x,e[55]=L):L=e[55];let V;e[56]!==B||e[57]!==L?(V=r.jsx(De,{type:"submit",disabled:B,children:L}),e[56]=B,e[57]=L,e[58]=V):V=e[58];let O;e[59]!==z||e[60]!==V?(O=r.jsxs(Un,{children:[z,V]}),e[59]=z,e[60]=V,e[61]=O):O=e[61];let U;e[62]!==I||e[63]!==$||e[64]!==O||e[65]!==N?(U=r.jsx(Hn,{className:"sm:max-w-md",children:r.jsxs("form",{onSubmit:I,children:[N,$,O]})}),e[62]=I,e[63]=$,e[64]=O,e[65]=N,e[66]=U):U=e[66];let ee;return e[67]!==F||e[68]!==s||e[69]!==U?(ee=r.jsx(qn,{open:s,onOpenChange:F,children:U}),e[67]=F,e[68]=s,e[69]=U,e[70]=ee):ee=e[70],ee}function ar(i){const e=se.c(47),{deleteTarget:s,deleteDirtyPaths:a,fsActionPending:l,onOpenChange:m,onConfirm:h}=i,f=Me(),v=s?.kind==="directory",j=s!==null,d=v?"sandbox.fileExplorerDeleteDialog.titleFolder":"sandbox.fileExplorerDeleteDialog.titleFile";let x;e[0]!==f||e[1]!==d?(x=f(d),e[0]=f,e[1]=d,e[2]=x):x=e[2];let g;e[3]!==x?(g=r.jsx(Wn,{children:x}),e[3]=x,e[4]=g):g=e[4];let k;e[5]!==f?(k=f("sandbox.fileExplorerDeleteDialog.description"),e[5]=f,e[6]=k):k=e[6];const Z=s?.name;let q;e[7]!==Z?(q=r.jsx("span",{className:"font-mono",children:Z}),e[7]=Z,e[8]=q):q=e[8];let y;e[9]!==v||e[10]!==f?(y=v?f("sandbox.fileExplorerDeleteDialog.folderSuffix"):".",e[9]=v,e[10]=f,e[11]=y):y=e[11];let b;e[12]!==a.length||e[13]!==f?(b=a.length>0&&r.jsxs(r.Fragment,{children:[" ",a.length===1?f("sandbox.fileExplorerDeleteDialog.unsavedChangesOne"):f("sandbox.fileExplorerDeleteDialog.unsavedChangesMany",{count:a.length})]}),e[12]=a.length,e[13]=f,e[14]=b):b=e[14];let F;e[15]!==k||e[16]!==q||e[17]!==y||e[18]!==b?(F=r.jsxs(Qn,{children:[k," ",q,y,b]}),e[15]=k,e[16]=q,e[17]=y,e[18]=b,e[19]=F):F=e[19];let A;e[20]!==F||e[21]!==g?(A=r.jsxs(Xn,{children:[g,F]}),e[20]=F,e[21]=g,e[22]=A):A=e[22];let I;e[23]!==f?(I=f("sandbox.fileExplorerDeleteDialog.cancel"),e[23]=f,e[24]=I):I=e[24];let S;e[25]!==l||e[26]!==I?(S=r.jsx(Yn,{disabled:l,children:I}),e[25]=l,e[26]=I,e[27]=S):S=e[27];const P=l||!s;let D;e[28]!==s||e[29]!==h?(D=Q=>{Q.preventDefault(),s&&h(s)},e[28]=s,e[29]=h,e[30]=D):D=e[30];let M;e[31]!==f?(M=f("sandbox.fileExplorerDeleteDialog.delete"),e[31]=f,e[32]=M):M=e[32];let N;e[33]!==P||e[34]!==D||e[35]!==M?(N=r.jsx(Jn,{disabled:P,onClick:D,children:M}),e[33]=P,e[34]=D,e[35]=M,e[36]=N):N=e[36];let R;e[37]!==S||e[38]!==N?(R=r.jsxs(Zn,{children:[S,N]}),e[37]=S,e[38]=N,e[39]=R):R=e[39];let E;e[40]!==A||e[41]!==R?(E=r.jsxs(er,{children:[A,R]}),e[40]=A,e[41]=R,e[42]=E):E=e[42];let T;return e[43]!==m||e[44]!==j||e[45]!==E?(T=r.jsx(tr,{open:j,onOpenChange:m,children:E}),e[43]=m,e[44]=j,e[45]=E,e[46]=T):T=e[46],T}var ze="ContextMenu",[ir]=an(ze,[lt]),J=lt(),[lr,ct]=ir(ze),dt=i=>{const{__scopeContextMenu:e,children:s,onOpenChange:a,dir:l,modal:m=!0}=i,[h,f]=u.useState(!1),v=J(e),j=on(a),d=u.useCallback(x=>{f(x),j(x)},[j]);return r.jsx(lr,{scope:e,open:h,onOpenChange:d,modal:m,children:r.jsx(sn,{...v,dir:l,open:h,onOpenChange:d,modal:m,children:s})})};dt.displayName=ze;var ut="ContextMenuTrigger",ft=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,disabled:a=!1,...l}=i,m=ct(ut,s),h=J(s),f=u.useRef({x:0,y:0}),v=u.useRef({getBoundingClientRect:()=>DOMRect.fromRect({width:0,height:0,...f.current})}),j=u.useRef(0),d=u.useCallback(()=>window.clearTimeout(j.current),[]),x=g=>{f.current={x:g.clientX,y:g.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(Zt.span,{"data-state":m.open?"open":"closed","data-disabled":a?"":void 0,...l,ref:e,style:{WebkitTouchCallout:"none",...i.style},onContextMenu:a?i.onContextMenu:xe(i.onContextMenu,g=>{d(),x(g),g.preventDefault()}),onPointerDown:a?i.onPointerDown:xe(i.onPointerDown,Se(g=>{d(),j.current=window.setTimeout(()=>x(g),700)})),onPointerMove:a?i.onPointerMove:xe(i.onPointerMove,Se(d)),onPointerCancel:a?i.onPointerCancel:xe(i.onPointerCancel,Se(d)),onPointerUp:a?i.onPointerUp:xe(i.onPointerUp,Se(d))})]})});ft.displayName=ut;var cr="ContextMenuPortal",pt=i=>{const{__scopeContextMenu:e,...s}=i,a=J(e);return r.jsx(nn,{...a,...s})};pt.displayName=cr;var mt="ContextMenuContent",xt=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=ct(mt,s),m=J(s),h=u.useRef(!1);return r.jsx(rn,{...m,...a,ref:e,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:f=>{i.onCloseAutoFocus?.(f),!f.defaultPrevented&&h.current&&f.preventDefault(),h.current=!1},onInteractOutside:f=>{i.onInteractOutside?.(f),!f.defaultPrevented&&!l.modal&&(h.current=!0)},style:{...i.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)"}})});xt.displayName=mt;var dr="ContextMenuGroup",ur=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(ln,{...l,...a,ref:e})});ur.displayName=dr;var fr="ContextMenuLabel",pr=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(cn,{...l,...a,ref:e})});pr.displayName=fr;var mr="ContextMenuItem",ht=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(en,{...l,...a,ref:e})});ht.displayName=mr;var xr="ContextMenuCheckboxItem",hr=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(dn,{...l,...a,ref:e})});hr.displayName=xr;var gr="ContextMenuRadioGroup",br=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(un,{...l,...a,ref:e})});br.displayName=gr;var yr="ContextMenuRadioItem",vr=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(fn,{...l,...a,ref:e})});vr.displayName=yr;var Cr="ContextMenuItemIndicator",wr=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(pn,{...l,...a,ref:e})});wr.displayName=Cr;var Nr="ContextMenuSeparator",gt=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(tn,{...l,...a,ref:e})});gt.displayName=Nr;var jr="ContextMenuArrow",Er=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(mn,{...l,...a,ref:e})});Er.displayName=jr;var Sr="ContextMenuSubTrigger",Dr=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(xn,{...l,...a,ref:e})});Dr.displayName=Sr;var Mr="ContextMenuSubContent",Rr=u.forwardRef((i,e)=>{const{__scopeContextMenu:s,...a}=i,l=J(s);return r.jsx(hn,{...l,...a,ref:e,style:{...i.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)"}})});Rr.displayName=Mr;function Se(i){return e=>e.pointerType!=="mouse"?i(e):void 0}var Tr=dt,Pr=ft,kr=pt,Fr=xt,Ar=ht,Lr=gt;function Or(i){const e=se.c(4);let s;e[0]!==i?({...s}=i,e[0]=i,e[1]=s):s=e[1];let a;return e[2]!==s?(a=r.jsx(Tr,{"data-slot":"context-menu",...s}),e[2]=s,e[3]=a):a=e[3],a}function Ir(i){const e=se.c(4);let s;e[0]!==i?({...s}=i,e[0]=i,e[1]=s):s=e[1];let a;return e[2]!==s?(a=r.jsx(Pr,{"data-slot":"context-menu-trigger",...s}),e[2]=s,e[3]=a):a=e[3],a}function $r(i){const e=se.c(8);let s,a;e[0]!==i?({className:s,...a}=i,e[0]=i,e[1]=s,e[2]=a):(s=e[1],a=e[2]);let l;e[3]!==s?(l=le("notranslate 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",s),e[3]=s,e[4]=l):l=e[4];let m;return e[5]!==a||e[6]!==l?(m=r.jsx(kr,{children:r.jsx(Fr,{"data-slot":"context-menu-content",translate:"no",className:l,...a})}),e[5]=a,e[6]=l,e[7]=m):m=e[7],m}function ue(i){const e=se.c(12);let s,a,l,m;e[0]!==i?({className:s,inset:a,variant:m,...l}=i,e[0]=i,e[1]=s,e[2]=a,e[3]=l,e[4]=m):(s=e[1],a=e[2],l=e[3],m=e[4]);const h=m===void 0?"default":m;let f;e[5]!==s?(f=le("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",s),e[5]=s,e[6]=f):f=e[6];let v;return e[7]!==a||e[8]!==l||e[9]!==f||e[10]!==h?(v=r.jsx(Ar,{"data-slot":"context-menu-item","data-inset":a,"data-variant":h,className:f,...l}),e[7]=a,e[8]=l,e[9]=f,e[10]=h,e[11]=v):v=e[11],v}function st(i){const e=se.c(8);let s,a;e[0]!==i?({className:s,...a}=i,e[0]=i,e[1]=s,e[2]=a):(s=e[1],a=e[2]);let l;e[3]!==s?(l=le("bg-border -mx-1 my-1 h-px",s),e[3]=s,e[4]=l):l=e[4];let m;return e[5]!==a||e[6]!==l?(m=r.jsx(Lr,{"data-slot":"context-menu-separator",className:l,...a}),e[5]=a,e[6]=l,e[7]=m):m=e[7],m}const Kr="#d9a441";function zr(i){const e=se.c(63),{node:s,depth:a,isExpanded:l,isSelected:m,isLoading:h,fileVisual:f,onOpen:v,onSelect:j,onNewFile:d,onNewFolder:x,onCopyPath:g,onCopyRelativePath:k,onRename:Z,onDelete:q}=i,y=h===void 0?!1:h,b=Me(),F=s.kind==="directory",{Icon:A,color:I}=f,S=m&&"bg-accent";let P;e[0]!==S?(P=le("flex w-full items-center gap-1.5 px-2 py-1.5 text-left text-[13px] hover:bg-accent transition-colors",S),e[0]=S,e[1]=P):P=e[1];const D=`${a*14+8}px`;let M;e[2]!==D?(M={paddingLeft:D},e[2]=D,e[3]=M):M=e[3];let N;e[4]!==v||e[5]!==j?(N=()=>{j(),v()},e[4]=v,e[5]=j,e[6]=N):N=e[6];let R;e[7]!==A||e[8]!==I||e[9]!==F||e[10]!==l||e[11]!==y?(R=F?r.jsxs(r.Fragment,{children:[y?r.jsx(fe,{size:14,className:"shrink-0 animate-spin text-muted-foreground"}):l?r.jsx(nr,{size:14,className:"shrink-0 text-muted-foreground"}):r.jsx(rr,{size:14,className:"shrink-0 text-muted-foreground"}),r.jsx(vn,{size:16,className:"shrink-0",style:{color:Kr}})]}):r.jsxs(r.Fragment,{children:[r.jsx("span",{className:"w-3.5 shrink-0"}),r.jsx(A,{size:16,className:"shrink-0",style:{color:I}})]}),e[7]=A,e[8]=I,e[9]=F,e[10]=l,e[11]=y,e[12]=R):R=e[12];let E;e[13]!==s.name?(E=r.jsx("span",{className:"truncate",children:s.name}),e[13]=s.name,e[14]=E):E=e[14];let T;e[15]!==P||e[16]!==M||e[17]!==N||e[18]!==R||e[19]!==E?(T=r.jsx(Ir,{asChild:!0,children:r.jsxs("button",{type:"button",className:P,style:M,onClick:N,children:[R,E]})}),e[15]=P,e[16]=M,e[17]=N,e[18]=R,e[19]=E,e[20]=T):T=e[20];let Q;e[21]!==b?(Q=b("sandbox.fileTreeRow.newFile"),e[21]=b,e[22]=Q):Q=e[22];let X;e[23]!==d||e[24]!==Q?(X=r.jsx(ue,{onSelect:d,children:Q}),e[23]=d,e[24]=Q,e[25]=X):X=e[25];let Y;e[26]!==b?(Y=b("sandbox.fileTreeRow.newFolder"),e[26]=b,e[27]=Y):Y=e[27];let G;e[28]!==x||e[29]!==Y?(G=r.jsx(ue,{onSelect:x,children:Y}),e[28]=x,e[29]=Y,e[30]=G):G=e[30];let $;e[31]===Symbol.for("react.memo_cache_sentinel")?($=r.jsx(st,{}),e[31]=$):$=e[31];let W;e[32]!==b?(W=b("sandbox.fileTreeRow.copyPath"),e[32]=b,e[33]=W):W=e[33];let K;e[34]!==g||e[35]!==W?(K=r.jsx(ue,{onSelect:g,children:W}),e[34]=g,e[35]=W,e[36]=K):K=e[36];let z;e[37]!==b?(z=b("sandbox.fileTreeRow.copyRelativePath"),e[37]=b,e[38]=z):z=e[38];let B;e[39]!==k||e[40]!==z?(B=r.jsx(ue,{onSelect:k,children:z}),e[39]=k,e[40]=z,e[41]=B):B=e[41];let L;e[42]===Symbol.for("react.memo_cache_sentinel")?(L=r.jsx(st,{}),e[42]=L):L=e[42];let V;e[43]!==b?(V=b("sandbox.fileTreeRow.rename"),e[43]=b,e[44]=V):V=e[44];let O;e[45]!==Z||e[46]!==V?(O=r.jsx(ue,{onSelect:Z,children:V}),e[45]=Z,e[46]=V,e[47]=O):O=e[47];let U;e[48]!==b?(U=b("sandbox.fileTreeRow.delete"),e[48]=b,e[49]=U):U=e[49];let ee;e[50]!==q||e[51]!==U?(ee=r.jsx(ue,{variant:"destructive",onSelect:q,children:U}),e[50]=q,e[51]=U,e[52]=ee):ee=e[52];let _;e[53]!==X||e[54]!==G||e[55]!==K||e[56]!==B||e[57]!==O||e[58]!==ee?(_=r.jsxs($r,{className:"w-52",children:[X,G,$,K,B,L,O,ee]}),e[53]=X,e[54]=G,e[55]=K,e[56]=B,e[57]=O,e[58]=ee,e[59]=_):_=e[59];let te;return e[60]!==_||e[61]!==T?(te=r.jsxs(Or,{children:[T,_]}),e[60]=_,e[61]=T,e[62]=te):te=e[62],te}yn.config({paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.0/min/vs"}});const at=200,_r=2,Gr=250,it=200;function Br(i,e,s,a){return`/api/${i}/sandbox/${encodeURIComponent(e)}/${encodeURIComponent(s)}/${a}`}function Vr(i){const e=se.c(9),{text:s,query:a}=i;let l,m,h;if(e[0]!==a||e[1]!==s){const{leadingEllipsis:v,segments:j}=An(s,a);l="truncate font-mono text-muted-foreground",m=v&&r.jsx("span",{className:"text-muted-foreground/50",children:"…"}),h=j.map(Ur),e[0]=a,e[1]=s,e[2]=l,e[3]=m,e[4]=h}else l=e[2],m=e[3],h=e[4];let f;return e[5]!==l||e[6]!==m||e[7]!==h?(f=r.jsxs("span",{className:l,children:[m,h]}),e[5]=l,e[6]=m,e[7]=h,e[8]=f):f=e[8],f}function Ur(i,e){return i.match?r.jsx("span",{className:"rounded-[2px] bg-primary/20 text-foreground",children:i.text},e):r.jsx("span",{children:i.text},e)}function Ra({orgSlug:i,virtualMcpId:e,branch:s,openPath:a}){const[l,m]=u.useState({files:[],directories:[],truncated:!1}),{files:h,directories:f}=l,[v,j]=u.useState(new Set),[d,x]=u.useState(null),[g,k]=u.useState(null),[Z,q]=u.useState([]),[y,b]=u.useState(""),[F,A]=u.useState(null),[I,S]=u.useState(null),[P,D]=u.useState(!1),[M,N]=u.useState(!1),[R,E]=u.useState(!1),[T,Q]=u.useState(!1),[,X]=u.useState(new Set),[Y,G]=u.useState(new Set),$=u.useRef(0),W=u.useRef(null),K=u.useRef(new Set),z=u.useRef(new Map),B=u.useRef(null),L=u.useRef(0),V=u.useRef(null),O=u.useRef(null),U=u.useRef(null);function ee(t){X(n=>{const o=typeof t=="function"?t(n):t;return K.current=o,o})}const[_,te]=u.useState(new Map),Re=u.useRef(null),[ae,he]=u.useState(null),{sendMessage:bt}=Sn(),{openSidePanel:yt}=Dn(),ge=gn(),[H,oe]=u.useState(null),[Te,Pe]=u.useState(null),[be,ye]=u.useState(!1);async function ie(t,n){const o=await fetch(Br(i,e,s,t),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(n)});if(!o.ok){const c=await o.json().catch(()=>({}));throw new Error(c.error??`Request failed (${o.status})`)}return o.json()}async function ve(){ge.invalidateQueries({queryKey:rt(i,e,s)})}function _e(t,n,o){navigator.clipboard.writeText(o).then(()=>ne.success(t("sandbox.fileExplorer.textCopied",{label:n})),()=>ne.error(t("sandbox.fileExplorer.failedToCopyText",{label:n.toLowerCase()})))}function vt(t){const n=zn(t);if(!n)return;const o=`${i}/${e}/${s}`;ge.setQueryData(Ze.decofile(o),c=>{if(!c)return c;const{[n]:p,...C}=c;return C}),ge.invalidateQueries({queryKey:Ze.liveMeta(i,e,s)})}function Ct(t){const n=t.kind==="file"?[t.path]:h.filter(o=>o.startsWith(".deco/blocks/")).map(o=>we(o)).filter(o=>o===t.path||o.startsWith(`${t.path}/`));for(const o of n)vt(o)}function wt(t){const n=we(t);return Z.filter(o=>{if(o!==n&&!o.startsWith(`${n}/`))return!1;const c=_.get(o);return!!(c?.loaded&&c.editorValue!==c.savedContent)})}function Ge(t){q(n=>n.map(o=>t(o)).filter(o=>o!==null)),x(n=>n&&t(n)),te(n=>{const o=new Map;for(const[c,p]of n){const C=t(c);C&&o.set(C,p)}return o}),k(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=we(t);k(o=>o&&(o.path===n||o.path.startsWith(`${n}/`)?null:o)),Ge(o=>o===n||o.startsWith(`${n}/`)?null:o)}async function jt(t,n){if(!H)return;const o=Ee(H.parentDir,n);if(Ke(o,h,f))throw new Error(t("sandbox.fileExplorer.fileAlreadyExists",{name:n}));await ie("write",{path:re(o),content:""}),await pe(),await ve(),oe(null),me(o)}async function Et(t,n){if(!H)return;const o=Ee(H.parentDir,n);if(Ke(o,h,f))throw new Error(t("sandbox.fileExplorer.fileAlreadyExists",{name:n}));const c=re(o);await ie("mkdir",{path:c}),m(p=>({...p,directories:p.directories.includes(c)?p.directories:[...p.directories,c]})),await pe(),await ve(),oe(null),j(p=>{const C=new Set(p);for(const ce of Ie(o))C.add(ce);return C.add(o),C}),k({name:n,path:o,kind:"directory",children:[]})}async function St(t,n){if(!H)return;const o=H.node.path,c=Ne(o),p=Ee(c,n);if(p===o){oe(null);return}if(Ke(p,h,f))throw new Error(t("sandbox.fileExplorer.fileAlreadyExists",{name:n}));await ie("rename",{from:re(o),to:re(p)}),Ge(C=>C===o?p:C.startsWith(`${o}/`)?Ee(p,C.slice(o.length+1)):C),await pe(),await ve(),oe(null)}async function Dt(t,n){ye(!0);try{await ie("unlink",{path:re(n.path),recursive:n.kind==="directory"}),Ct(n),Nt(n.path),await pe(),await ve(),Pe(null),ne.success(t("sandbox.fileExplorer.fileDeleted",{name:n.name}))}catch(o){ne.error(o instanceof Error?o.message:t("sandbox.fileExplorer.deleteFailed"))}finally{ye(!1)}}async function Mt(t,n){const o=On(n);if(o){ne.error(o);return}ye(!0);try{H?.mode==="new-file"?(await jt(t,n),ne.success(t("sandbox.fileExplorer.fileCreated",{name:n}))):H?.mode==="new-folder"?(await Et(t,n),ne.success(t("sandbox.fileExplorer.folderCreated",{name:n}))):H?.mode==="rename"&&(await St(t,n),ne.success(t("sandbox.fileExplorer.renamedTo",{name:n})))}catch(c){ne.error(c instanceof Error?c.message:t("sandbox.fileExplorer.operationFailed"))}finally{ye(!1)}}const Be=u.useRef(!1);Be.current||(Be.current=!0,W.current=pe());const[Rt,Tt]=u.useState(null),w=Me();if(a&&a!==Rt){Tt(a);const t=a;queueMicrotask(()=>{Mn(t)&&me(t)})}async function ke(t){const n=await ie("glob",t);return{files:n.files??[],directories:n.directories??[],truncated:n.truncated}}function Ve(t,n,o){if(o!==$.current)return!1;let c=!1;return m(p=>{const C=n?_n(p.files,p.directories,t,p.truncated):{files:t.files,directories:t.directories??[],truncated:!!t.truncated};return c=!!C.truncated,{files:C.files,directories:C.directories,truncated:c}}),c&&ne.warning(w("sandbox.fileExplorer.fileListTruncated")),c}async function Pt(t){const n=z.current.get(t);if(n)return n;const o=$.current,c=(async()=>{const p=await ke({pattern:"**/*",path:re(t),limit:Ae}),C=Ve(p,!0,o);return!C&&o===$.current&&ee(ce=>{const Ce=new Set(ce);return Ce.add(t),Ce}),C})();z.current.set(t,c);try{return await c}finally{z.current.delete(t)}}async function Ue(t){if(!$e(t,K.current))return!1;G(n=>new Set(n).add(t));try{return await Pt(t)}finally{G(n=>{const o=new Set(n);return o.delete(t),o})}}async function kt(t,n){const o=new Set(K.current);for(const c of Ie(n)){if(!$e(c,o))continue;if(await Ue(c))throw new Error(t("sandbox.fileExplorer.folderListingTruncated"));o.add(c)}}async function pe(){const t=++$.current;V.current=null,O.current=null,z.current.clear(),E(!0),ee(new Set),j(new Set),G(new Set);try{const n=await ke({pattern:"**/*",limit:Ae,maxDepth:Rn});Ve(n,!1,t),Q(!0)}catch{T&&ne.error(w("sandbox.fileExplorer.failedToRefreshFileTree"))}finally{E(!1)}}async function He(t){if(!_.get(t)?.loaded){te(o=>{const c=new Map(o);return c.set(t,{savedContent:"",editorValue:"",loaded:!1}),c});try{const o=await ie("read",{path:re(t),full:!0}),c=Ln(o.content??"");te(p=>{const C=new Map(p);return C.set(t,{savedContent:c,editorValue:c,loaded:!0}),C})}catch{}}}function Ft(){L.current++,A(null),S(null),D(!1),N(!1)}async function At(){const t=$.current,n=V.current;if(n&&n.generation===t)return n.files;const o=O.current;if(o&&o.generation===t)return o.promise;const c=(async()=>{const p=await ke({pattern:"**/*",limit:Ae});return $.current===t&&(V.current={generation:t,files:p.files}),p.files})();O.current={generation:t,promise:c};try{return await c}finally{O.current?.generation===t&&(O.current=null)}}async function Lt(t,n){try{const o=await At();if(n!==L.current)return;A($n(o,t,it))}catch{if(n!==L.current)return;A([])}}async function Ot(t,n){D(!0);try{const o=await ie("grep",{pattern:t,output_mode:"content",ignore_case:!0,fixed_strings:!0,limit:at});if(n!==L.current)return;S(Kn(o.results??"")),N((o.matchCount??0)>=at)}catch{if(n!==L.current)return;S([]),N(!1)}finally{n===L.current&&D(!1)}}function It(t){const n=t.trim(),o=++L.current;Lt(n,o),n.length<_r?(S(null),D(!1),N(!1)):Ot(n,o)}function $t(t){if(b(t),B.current&&clearTimeout(B.current),!t.trim()){Ft();return}B.current=setTimeout(()=>{It(t)},Gr)}function qe(t){const n=U.current;if(!n||n.path!==d)return;U.current=null;const o=Math.max(1,n.line);t.revealLineInCenter(o),t.setPosition({lineNumber:o,column:1}),t.focus()}function Kt(t){U.current={path:t.path,line:t.line};const n=d===t.path&&_.get(t.path)?.loaded;me(t.path),n&&Re.current&&qe(Re.current)}async function zt(t,n){try{await ie("write",{path:re(t),content:n}),je("file saved via sandbox /write",{path:t}),ge.invalidateQueries({queryKey:rt(i,e,s)});try{const o=await In(i,e,s);je("git status after save",o)}catch(o){je("git status after save failed",{path:t,error:o instanceof Error?o.message:String(o)})}te(o=>{const c=new Map(o),p=c.get(t);return p&&c.set(t,{...p,savedContent:n}),c})}catch(o){je("file save failed",{path:t,error:o instanceof Error?o.message:String(o)})}}function _t(t){x(t),k({name:t.split("/").pop()??t,path:t,kind:"file",children:[]}),he(null),Z.includes(t)||q(n=>[...n,t]),He(t)}function Gt(t){q(n=>{const o=n.filter(c=>c!==t);return d===t&&x(o[o.length-1]??null),o}),te(n=>{const o=new Map(n);return o.delete(t),o})}function We(t){j(n=>{const o=new Set(n);return o.has(t)?o.delete(t):o.add(t),o})}async function Bt(t){if($e(t,K.current))try{if(await Ue(t))return}catch(n){ne.error(n instanceof Error?n.message:w("sandbox.fileExplorer.failedToLoadFolder"));return}We(t)}async function Vt(t,n){if(n){We(t);return}await Bt(t)}async function Ut(t){await W.current,await kt(w,t);const n=Ie(t);j(o=>{const c=new Set(o);for(const p of n)c.add(p);return c}),_t(t)}function me(t){Ut(t).catch(n=>{ne.error(n instanceof Error?n.message:w("sandbox.fileExplorer.failedToOpenFile"))})}function Ht(){return g?.kind==="directory"?g.path:g?.kind==="file"?Ne(g.path):d?Ne(d):"/"}function Qe(t){const n=Ht();oe({mode:t,parentDir:n,node:{name:"",path:n,kind:"directory",children:[]}})}const qt=Tn(h,f),Xe=Pn(qt,v),Fe=F?.length??0,Ye=kn(I??[]),Je=I?.length??0,de=d?_.get(d):null,Wt=de?.loaded&&de.editorValue!==de.savedContent,Qt=Te?wt(Te.path):[],Xt=(t,n)=>{Re.current=t,qe(t),t.addCommand(n.KeyMod.CtrlCmd|n.KeyCode.KeyS,async()=>{if(!d)return;const o=t.getValue();await zt(d,o)}),t.addCommand(n.KeyMod.CtrlCmd|n.KeyCode.KeyK,()=>{const o=t.getSelection(),c=t.getModel();if(!o||!c||!d)return;const p=c.getValueInRange(o);he({filePath:d,lineStart:o.startLineNumber,lineEnd:o.endLineNumber,selectedCode:p})})};function Yt(t){if(!ae)return;const n=[`The user selected code in the file explorer and asked: **"${t.trim()}"**`,"",`**File:** \`${ae.filePath}\``,`**Lines:** ${ae.lineStart}–${ae.lineEnd}`];if(ae.selectedCode){const o=Oe(ae.filePath),c=ae.selectedCode.replace(/```/g,"`` `");n.push("","**Selected code:**","```"+o,c,"```")}n.push("","Please read the source file, locate the code, and apply the requested change."),yt("chat"),bt({parts:[{type:"text",text:n.join(`
|
|
2
2
|
`)}]}),he(null)}return R&&!T?r.jsx("div",{className:"flex items-center justify-center h-full w-full",children:r.jsx(fe,{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(Cn,{size:14,className:"absolute left-2 top-1/2 -translate-y-1/2 text-muted-foreground"}),r.jsx("input",{type:"text",value:y,onChange:t=>$t(t.target.value),placeholder:w("sandbox.fileExplorer.searchFilesPlaceholder"),"aria-label":w("sandbox.fileExplorer.searchFilesLabel"),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(et,{children:[r.jsx(tt,{asChild:!0,children:r.jsx(De,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0","aria-label":w("sandbox.fileExplorer.newFileLabel"),onClick:()=>Qe("new-file"),children:r.jsx(wn,{size:14})})}),r.jsx(nt,{side:"bottom",children:w("sandbox.fileExplorer.newFile")})]}),r.jsxs(et,{children:[r.jsx(tt,{asChild:!0,children:r.jsx(De,{type:"button",variant:"ghost",size:"icon",className:"size-7 shrink-0","aria-label":w("sandbox.fileExplorer.newFolderLabel"),onClick:()=>Qe("new-folder"),children:r.jsx(Nn,{size:14})})}),r.jsx(nt,{side:"bottom",children:w("sandbox.fileExplorer.newFolder")})]})]}),r.jsx(En,{className:"flex-1",children:r.jsxs("div",{className:"py-1",children:[!y&&Xe.map(t=>{const{node:n,depth:o}=t,c=n.kind==="directory",p=v.has(n.path),C=g?.path===n.path,ce=Fn(n.path,n.kind),Ce=c&&Y.has(n.path);return r.jsx(zr,{node:n,depth:o,isExpanded:p,isSelected:C,isLoading:Ce,fileVisual:Le(n.name),onSelect:()=>k(n),onOpen:()=>{c?Vt(n.path,p):me(n.path)},onNewFile:()=>oe({mode:"new-file",node:n,parentDir:ce}),onNewFolder:()=>oe({mode:"new-folder",node:n,parentDir:ce}),onCopyPath:()=>_e(w,"Path",we(n.path)),onCopyRelativePath:()=>_e(w,"Relative path",re(n.path)),onRename:()=>oe({mode:"rename",node:n,parentDir:ce}),onDelete:()=>Pe(n)},n.path)}),!y&&T&&Xe.length===0&&r.jsx("div",{className:"px-3 py-4 text-center text-xs text-muted-foreground",children:w("sandbox.fileExplorer.noFilesFound")}),y&&r.jsxs(r.Fragment,{children:[r.jsxs("div",{className:"flex items-center gap-1.5 px-3 pb-0.5 pt-1 text-[10px] font-medium uppercase tracking-wide text-muted-foreground",children:[r.jsx("span",{children:w("sandbox.fileExplorer.files")}),Fe>0&&r.jsxs("span",{className:"normal-case tracking-normal text-muted-foreground/70",children:[Fe,Fe>=it?"+":""]})]}),F!==null&&F.length===0&&r.jsx("div",{className:"px-3 py-1 text-xs text-muted-foreground",children:w("sandbox.fileExplorer.noFileNamesMatch")}),F?.map(t=>{const n=t.split("/").pop()??t,o=Ne(t),{Icon:c,color:p}=Le(n),C=d===t;return r.jsxs("button",{type:"button",onClick:()=>me(t),title:t,className:le("flex w-full items-center gap-1.5 px-3 py-1 text-left text-xs hover:bg-accent",C&&"bg-accent"),children:[r.jsx(c,{size:14,className:le("shrink-0",p)}),r.jsx("span",{className:"max-w-40 shrink-0 truncate",children:n}),o!=="/"&&r.jsx("span",{className:"truncate text-muted-foreground/60",children:o})]},t)})]}),y&&r.jsxs("div",{className:"mt-1 border-t pt-1",children:[r.jsxs("div",{className:"flex items-center gap-1.5 px-3 pb-0.5 pt-1 text-[10px] font-medium uppercase tracking-wide text-muted-foreground",children:[r.jsx("span",{children:w("sandbox.fileExplorer.inFiles")}),Je>0&&r.jsxs("span",{className:"text-muted-foreground/70 normal-case tracking-normal",children:[Je,M?"+":""]}),P&&r.jsx(fe,{size:10,className:"animate-spin"})]}),!P&&I!==null&&Ye.length===0&&r.jsx("div",{className:"px-3 py-1 text-xs text-muted-foreground",children:w("sandbox.fileExplorer.noMatchesInFileContents")}),Ye.map(t=>{const n=t.path.split("/").pop()??t.path,{Icon:o,color:c}=Le(n);return r.jsxs("div",{children:[r.jsxs("div",{className:"flex items-center gap-1.5 px-3 py-1 text-xs text-muted-foreground",children:[r.jsx(o,{size:14,className:le("shrink-0",c)}),r.jsx("span",{className:"truncate",children:n}),r.jsx("span",{className:"text-muted-foreground/60",children:t.matches.length})]}),t.matches.map(p=>r.jsxs("button",{type:"button",onClick:()=>Kt(p),title:`${t.path}:${p.line}`,className:"flex w-full items-baseline gap-2 pl-8 pr-3 py-0.5 text-left text-xs hover:bg-accent",children:[r.jsx("span",{className:"shrink-0 tabular-nums text-muted-foreground",children:p.line}),r.jsx(Vr,{text:p.text,query:y})]},`${t.path}:${p.line}`))]},t.path)})]})]})})]}),r.jsxs("div",{className:"relative flex-1 flex flex-col overflow-hidden",children:[Z.length>0&&r.jsx("div",{className:"flex items-center border-b overflow-x-auto shrink-0",children:Z.map(t=>{const n=_.get(t),o=n?.loaded&&n.editorValue!==n.savedContent,c=d===t,p=t.split("/").pop()??t;return r.jsxs("div",{className:le("flex items-center gap-1 px-3 py-1.5 text-xs border-r cursor-pointer transition-colors",c?"bg-background text-foreground":"bg-muted/50 text-muted-foreground hover:bg-accent"),onClick:()=>{x(t),He(t)},onKeyDown:()=>{},role:"tab",tabIndex:0,"aria-selected":c,children:[r.jsx("span",{className:"truncate max-w-32",children:p}),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:C=>{C.stopPropagation(),Gt(t)},children:r.jsx(jn,{size:12})})]},t)})}),ae&&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()&&Yt(o.value)},children:[r.jsx("input",{name:"askAiInput",autoFocus:!0,type:"text",placeholder:w("sandbox.fileExplorer.askTheAiPlaceholder"),className:"min-w-0 flex-1 bg-transparent text-sm outline-none placeholder:text-muted-foreground",onKeyDown:t=>{t.stopPropagation(),t.key==="Escape"&&he(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:w("sandbox.fileExplorer.send"),children:r.jsxs("svg",{width:"10",height:"10",viewBox:"0 0 10 10",fill:"none","aria-hidden":"true",children:[r.jsx("title",{children:w("sandbox.fileExplorer.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&&de?.loaded?r.jsx(bn,{language:Oe(d),theme:document.documentElement.classList.contains("dark")?"vs-dark":"light",value:de.editorValue,path:d,onChange:t=>{const n=d;n&&te(o=>{const c=new Map(o),p=c.get(n);return p&&c.set(n,{...p,editorValue:t??""}),c})},onMount:Xt,loading:r.jsx("div",{className:"flex items-center justify-center h-full w-full",children:r.jsx(fe,{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&&!de?.loaded?r.jsx("div",{className:"flex items-center justify-center h-full w-full",children:r.jsx(fe,{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:w("sandbox.fileExplorer.selectFileToEdit")})}),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:[w(Wt?"sandbox.fileExplorer.modified":"sandbox.fileExplorer.saved")," ","· ",Oe(d)]})]})]}),r.jsx(sr,{open:H!==null,mode:H?.mode??"new-file",initialName:H?.mode==="rename"?H.node.name:"",parentLabel:H&&H.mode!=="rename"?H.parentDir==="/"?"/":re(H.parentDir):void 0,isPending:be,onSubmit:t=>Mt(w,t),onOpenChange:t=>{!t&&!be&&oe(null)}}),r.jsx(ar,{deleteTarget:Te,deleteDirtyPaths:Qt,fsActionPending:be,onOpenChange:t=>{!t&&!be&&Pe(null)},onConfirm:t=>{Dt(w,t)}})]})}export{Ra as FileExplorer};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{dO as C,c as d,j as c,a6 as j,r as f,m as p,b6 as b,dP as v,dQ as h}from"./index-
|
|
1
|
+
import{dO as C,c as d,j as c,a6 as j,r as f,m as p,b6 as b,dP as v,dQ as h}from"./index-CRRQs3pu.js";import{L as N}from"./label-B25IW2ay.js";const E=C,g=f.createContext({}),M=t=>{const e=d.c(9);let s;e[0]!==t?({...s}=t,e[0]=t,e[1]=s):s=e[1];let o;e[2]!==s.name?(o={name:s.name},e[2]=s.name,e[3]=o):o=e[3];let n;e[4]!==s?(n=c.jsx(j,{...s}),e[4]=s,e[5]=n):n=e[5];let r;return e[6]!==o||e[7]!==n?(r=c.jsx(g.Provider,{value:o,children:n}),e[6]=o,e[7]=n,e[8]=r):r=e[8],r},x=()=>{const t=d.c(13),e=f.useContext(g),s=f.useContext($),{getFieldState:o}=v();let n;t[0]!==e.name?(n={name:e.name},t[0]=e.name,t[1]=n):n=t[1];const r=h(n);let a;t[2]!==e.name||t[3]!==r||t[4]!==o?(a=o(e.name,r),t[2]=e.name,t[3]=r,t[4]=o,t[5]=a):a=t[5];const l=a;if(!e)throw new Error("useFormField should be used within <FormField>");const{id:i}=s,m=`${i}-form-item`,F=`${i}-form-item-description`,I=`${i}-form-item-message`;let u;return t[6]!==e.name||t[7]!==l||t[8]!==i||t[9]!==m||t[10]!==F||t[11]!==I?(u={id:i,name:e.name,formItemId:m,formDescriptionId:F,formMessageId:I,...l},t[6]=e.name,t[7]=l,t[8]=i,t[9]=m,t[10]=F,t[11]=I,t[12]=u):u=t[12],u},$=f.createContext({});function P(t){const e=d.c(13);let s,o;e[0]!==t?({className:s,...o}=t,e[0]=t,e[1]=s,e[2]=o):(s=e[1],o=e[2]);const n=f.useId();let r;e[3]!==n?(r={id:n},e[3]=n,e[4]=r):r=e[4];let a;e[5]!==s?(a=p("grid gap-2",s),e[5]=s,e[6]=a):a=e[6];let l;e[7]!==o||e[8]!==a?(l=c.jsx("div",{"data-slot":"form-item",className:a,...o}),e[7]=o,e[8]=a,e[9]=l):l=e[9];let i;return e[10]!==r||e[11]!==l?(i=c.jsx($.Provider,{value:r,children:l}),e[10]=r,e[11]=l,e[12]=i):i=e[12],i}function w(t){const e=d.c(10);let s,o;e[0]!==t?({className:s,...o}=t,e[0]=t,e[1]=s,e[2]=o):(s=e[1],o=e[2]);const{error:n,formItemId:r}=x(),a=!!n;let l;e[3]!==s?(l=p("text-foreground data-[error=true]:text-destructive",s),e[3]=s,e[4]=l):l=e[4];let i;return e[5]!==r||e[6]!==o||e[7]!==a||e[8]!==l?(i=c.jsx(N,{"data-slot":"form-label","data-error":a,className:l,htmlFor:r,...o}),e[5]=r,e[6]=o,e[7]=a,e[8]=l,e[9]=i):i=e[9],i}function L(t){const e=d.c(7);let s;e[0]!==t?({...s}=t,e[0]=t,e[1]=s):s=e[1];const{error:o,formItemId:n,formDescriptionId:r,formMessageId:a}=x(),l=o?`${r} ${a}`:`${r}`,i=!!o;let m;return e[2]!==n||e[3]!==s||e[4]!==l||e[5]!==i?(m=c.jsx(b,{"data-slot":"form-control",id:n,"aria-describedby":l,"aria-invalid":i,...s}),e[2]=n,e[3]=s,e[4]=l,e[5]=i,e[6]=m):m=e[6],m}function y(t){const e=d.c(9);let s,o;e[0]!==t?({className:s,...o}=t,e[0]=t,e[1]=s,e[2]=o):(s=e[1],o=e[2]);const{formDescriptionId:n}=x();let r;e[3]!==s?(r=p("text-muted-foreground text-sm",s),e[3]=s,e[4]=r):r=e[4];let a;return e[5]!==n||e[6]!==o||e[7]!==r?(a=c.jsx("p",{"data-slot":"form-description",id:n,className:r,...o}),e[5]=n,e[6]=o,e[7]=r,e[8]=a):a=e[8],a}function R(t){const e=d.c(10);let s,o;e[0]!==t?({className:s,...o}=t,e[0]=t,e[1]=s,e[2]=o):(s=e[1],o=e[2]);const{error:n,formMessageId:r}=x(),a=n?String(n?.message??""):o.children;if(!a)return null;let l;e[3]!==s?(l=p("text-destructive text-sm",s),e[3]=s,e[4]=l):l=e[4];let i;return e[5]!==a||e[6]!==r||e[7]!==o||e[8]!==l?(i=c.jsx("p",{"data-slot":"form-message",id:r,className:l,...o,children:a}),e[5]=a,e[6]=r,e[7]=o,e[8]=l,e[9]=i):i=e[9],i}export{M as F,E as a,P as b,w as c,L as d,R as e,y as f};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as P,F as H,r as Z,j as i,B as te,L as ue,X as fe,Y as J,b as K,d as pe,o as he,_ as xe,Z as je,e as le,p as ie,t as F,K as oe,a6 as re,G as ae,w as Se}from"./index-CSpVJ_t8.js";import{P as W}from"./index-BsCcyOa9.js";import{A as ze,b as ve}from"./alert-Cm_H6_i3.js";import{i as be}from"./XCircle-tG0FSbc_.js";import{n as Ae}from"./LinkExternal01-BuQ3C4t9.js";import{s as ye}from"./XClose-C_8ss2IS.js";import{u as Ce}from"./use-org-auth-client-CRpx9rm3.js";import{u as _e}from"./use-debounced-autosave-W3stCruS.js";import{A as Oe}from"./avatar-BFl9MhjQ.js";import{I as ce}from"./input-nIRBYIuI.js";import{S as se,a as ne,b as Q,c as we}from"./settings-section-BhK0tyVv.js";import{d as me,S as Ne,a as De,b as Te,c as Fe}from"./select-Bumes-Pu.js";import{S as Ee}from"./skeleton-CLiDBsAg.js";import{A as ge}from"./agent-icon-DmqrLJlK.js";import{a as Pe,i as ke,f as Re}from"./use-mcp-client-BAxUImLq.js";import{a as Ie}from"./use-virtual-mcp-Bo1jQyKL.js";import{a as Le}from"./agent-capabilities-cXfbMfjV.js";import{e as Me,h as Ve}from"./use-organization-settings-Cf8P9suD.js";import{D as $e}from"./domain-settings-CNIzVuor.js";import{u as Be}from"./studio-tools-C3gmiGRu.js";import{c as Ge,d as Ue,b as qe,f as Ke,g as Qe,e as Ze,a as Ye,A as We}from"./alert-dialog-KLO3EI5S.js";import{R as He}from"./require-capability-BqW2O8tQ.js";import"./sidebar-DX7dXJWd.js";import"./LayoutLeft-CQ5Zq-C7.js";import"./use-mobile-CP8WVgC_.js";import"./X-D-S1FaYS.js";import"./tooltip-7Y1XKgM6.js";import"./User01-XcUJMrMi.js";import"./card-DryaE2W3.js";import"./ArrowUpRight-VAC5WbVQ.js";import"./Check-BEwZK4by.js";import"./ChevronDown-DwSeIJwx.js";import"./ChevronUp-D8sHMRlA.js";import"./AlertCircle-iV-9b6L0.js";import"./Tool01-CLVcZjYh.js";import"./ArrowUp-Bq8_Goa-.js";import"./Settings02-BTjZquNj.js";import"./Tool02-DD5PhqNn.js";import"./TrendUp01-CLrU39GK.js";import"./ZapSquare-DGtIJhBt.js";import"./Users03-oO2BbmYc.js";import"./CheckCircle-C_arAhXi.js";import"./ChevronRight-Dj7ZibPe.js";import"./DotsVertical-h00tBGpG.js";import"./Stars02-Bf4G2ysf.js";import"./Copy01-CDiyMmNu.js";import"./Eye-CoS_dEFv.js";import"./FilterLines-B7A0MwUa.js";import"./Star01-QaWR6Ezs.js";import"./Palette-C749bZK9.js";import"./SwitchHorizontal01-WXmWF2vt.js";import"./HardDrive-D5hWkPW7.js";import"./Key01-Co7CW7jv.js";import"./LogOut01-CEARG2vU.js";import"./Monitor01-BeDlFKTq.js";import"./Sun-DXJuSD-H.js";import"./Play-Bfbh5D9o.js";import"./Plus-BifB3M1m.js";import"./SearchLg---BxTKhv.js";import"./SearchMd-DXm95nAk.js";import"./Shield01-Dfy37vyR.js";import"./Stars01-DNx-fPjC.js";import"./Trash01-DcCzRKAW.js";import"./Upload01-poa1D0uh.js";import"./Users01-DAMvzaJN.js";import"./Zap-6vuFSHAi.js";import"./auth-NUgT0GrU.js";import"./badge-BwV-4Vi4.js";import"./use-capability-NOX9q9Tg.js";import"./access-gate-DmF9tuil.js";import"./capability-load-error-CsUJ-j9z.js";function de(e){return`connect-banner-dismissed:${e}`}function Xe(e){if(typeof window>"u")return!0;try{return localStorage.getItem(de(e))==="1"}catch{return!1}}function Je(){const e=P.c(17),{org:t}=H();let s;e[0]!==t.id?(s=()=>Xe(t.id),e[0]=t.id,e[1]=s):s=e[1];const[g,u]=Z.useState(s);if(g)return null;let o;e[2]!==t.id?(o=()=>{u(!0);try{localStorage.setItem(de(t.id),"1")}catch{}},e[2]=t.id,e[3]=o):o=e[3];const d=o;let m;e[4]===Symbol.for("react.memo_cache_sentinel")?(m=i.jsx(Ae,{}),e[4]=m):m=e[4];let a;e[5]===Symbol.for("react.memo_cache_sentinel")?(a=i.jsx("span",{children:"Use Studio MCP anywhere — paste a command into Claude Code, Cursor, Codex, or any MCP client."}),e[5]=a):a=e[5];let c;e[6]!==t.slug?(c={org:t.slug},e[6]=t.slug,e[7]=c):c=e[7];let f;e[8]===Symbol.for("react.memo_cache_sentinel")?(f=i.jsx(be,{size:12}),e[8]=f):f=e[8];let n;e[9]!==c?(n=i.jsx(te,{asChild:!0,size:"sm",variant:"ghost",className:"text-xs gap-1",children:i.jsxs(ue,{to:"/$org/settings/connect",params:c,children:["Connect to clients ",f]})}),e[9]=c,e[10]=n):n=e[10];let r;e[11]===Symbol.for("react.memo_cache_sentinel")?(r=i.jsx(ye,{size:14}),e[11]=r):r=e[11];let l;e[12]!==d?(l=i.jsx(te,{variant:"ghost",size:"icon",className:"size-7",onClick:d,"aria-label":"Dismiss",children:r}),e[12]=d,e[13]=l):l=e[13];let p;return e[14]!==n||e[15]!==l?(p=i.jsxs(ze,{variant:"info",className:"items-center",children:[m,i.jsxs(ve,{className:"flex-1 flex items-center justify-between gap-2 text-sm",children:[a,i.jsxs("div",{className:"flex items-center gap-1 shrink-0",children:[n,l]})]})]}),e[14]=n,e[15]=l,e[16]=p):p=e[16],p}const et=new Set([".well-known","_admin","api","auth","cli","commerce-onboarding","dbos-queue-depth","health","hosted-run-pending","login","mcp","metrics","oauth","oauth-proxy","onboarding","org","report","reset-password"]);function tt(e){return typeof e=="string"&&et.has(e.trim().toLowerCase())}const it=fe({name:J().min(1,"Name is required").max(255,"Name is too long"),slug:J().min(1,"Slug is required").max(50,"Slug is too long").regex(/^[a-z0-9-]+$/,"Slug must contain only lowercase letters, numbers, and hyphens").refine(e=>!tt(e),"This organization URL is reserved by Studio"),logo:J().optional()});function st(e){const t=P.c(17),{value:s,onChange:g,name:u,disabled:o}=e,d=K(),m=Z.useRef(null);let a;t[0]===Symbol.for("react.memo_cache_sentinel")?(a=()=>m.current?.click(),t[0]=a):a=t[0];const c=a;let f;t[1]!==g||t[2]!==d?(f=O=>{const h=O.target.files?.[0];if(!h)return;if(h.size>2097152){F.error(d("settings.organizationForm.imageTooLarge"));return}const x=new FileReader;x.onerror=()=>F.error(d("settings.organizationForm.failedToReadImage")),x.onloadend=()=>{x.result&&g(x.result),m.current&&(m.current.value="")},x.readAsDataURL(h)},t[1]=g,t[2]=d,t[3]=f):f=t[3];const n=f;let r;t[4]!==d?(r=d("settings.organizationForm.uploadLogoLabel"),t[4]=d,t[5]=r):r=t[5];let l;t[6]!==o||t[7]!==n?(l=i.jsx("input",{ref:m,type:"file",accept:"image/*",onChange:n,className:"hidden",disabled:o}),t[6]=o,t[7]=n,t[8]=l):l=t[8];const p=s||void 0,j=u??"?";let S;t[9]!==p||t[10]!==j?(S=i.jsx(Oe,{url:p,fallback:j,shape:"square",size:"base"}),t[9]=p,t[10]=j,t[11]=S):S=t[11];let v;return t[12]!==o||t[13]!==r||t[14]!==l||t[15]!==S?(v=i.jsxs("button",{type:"button",onClick:c,disabled:o,className:"rounded-lg overflow-hidden hover:ring-2 hover:ring-border transition-all disabled:opacity-50","aria-label":r,children:[l,S]}),t[12]=o,t[13]=r,t[14]=l,t[15]=S,t[16]=v):v=t[16],v}function nt(){const e=K(),t=pe(),{org:s}=H(),g=Ce(),u=he(),o=xe({resolver:je(it),values:{name:s.name??"",slug:s.slug??"",logo:s.logo??""}}),d=le({mutationFn:async n=>{const r={name:n.name,slug:n.slug};n.logo&&(r.logo=n.logo);const l=await g.organization.update({data:r});if(l?.error)throw new Error(l.error.message||e("settings.organizationForm.failedToUpdateOrg"));return l},onSuccess:(n,r)=>{ie("organization_settings_updated",{organization_id:s.id,fields:Object.keys(r)}),u.invalidateQueries({queryKey:oe.organizations()}),u.invalidateQueries({queryKey:oe.activeOrganization(s.slug)}),F.success(e("settings.organizationForm.updateSuccess")),n?.data?.slug&&n.data.slug!==s.slug&&t({to:"/$org/settings/general",params:{org:n.data.slug}})},onError:(n,r)=>{ie("organization_settings_update_failed",{organization_id:s.id,fields:Object.keys(r),error:n instanceof Error?n.message:String(n)}),F.error(n instanceof Error?n.message:e("settings.organizationForm.failedToUpdateOrg"))}}),{schedule:m,flush:a}=_e({save:async()=>{const n=o.control._formState.dirtyFields;if(Object.keys(n).length===0||!await o.trigger())return;const l=o.getValues(),p=o.control._defaultValues;o.reset(l,{keepValues:!0});try{await d.mutateAsync(l)}catch{o.reset(p,{keepValues:!0})}}}),c=o.formState.errors,f=typeof window<"u"?`${window.location.host}/`:"";return i.jsx(se,{children:i.jsxs(ne,{children:[i.jsx(Q,{title:e("settings.organizationForm.logoTitle"),description:e("settings.organizationForm.logoDescription"),action:i.jsx(st,{value:o.watch("logo"),onChange:n=>{o.setValue("logo",n??"",{shouldDirty:!0}),a()},name:o.watch("name")})}),i.jsx(Q,{title:e("settings.organizationForm.nameTitle"),action:i.jsx(re,{control:o.control,name:"name",render:({field:n})=>i.jsx(ce,{id:"org-name",...n,onChange:r=>{n.onChange(r),m()},onBlur:()=>{n.onBlur(),a()},placeholder:e("settings.organizationForm.namePlaceholder"),className:"w-[280px]"})})}),i.jsx(Q,{title:e("settings.organizationForm.urlTitle"),action:i.jsxs("div",{className:"flex items-center w-[280px] rounded-md border border-input bg-input/30 focus-within:ring-2 focus-within:ring-ring/50 overflow-hidden",children:[f&&i.jsx("span",{className:"pl-3 text-sm text-muted-foreground select-none",children:f}),i.jsx(re,{control:o.control,name:"slug",render:({field:n})=>i.jsx("input",{id:"org-slug",value:n.value??"",name:n.name,ref:n.ref,placeholder:e("settings.organizationForm.slugPlaceholder"),className:"flex-1 min-w-0 bg-transparent px-2 py-1.5 text-sm text-foreground placeholder:text-muted-foreground/60 outline-none",onChange:r=>{const l=r.target.value.toLowerCase().replace(/[^a-z0-9-]/g,"");o.setValue("slug",l,{shouldDirty:!0,shouldTouch:!0,shouldValidate:!0}),m()},onBlur:()=>{n.onBlur(),a()}})})]})}),(c.name||c.slug||c.logo)&&i.jsxs("div",{className:"px-5 pb-3 flex flex-col gap-1",children:[c.name&&i.jsx("p",{className:"text-xs text-destructive",children:c.name.message}),c.slug&&i.jsx("p",{className:"text-xs text-destructive",children:c.slug.message}),c.logo&&i.jsx("p",{className:"text-xs text-destructive",children:c.logo.message})]})]})})}const ee="__super_agent__";function ot(){const e=P.c(42),t=K(),{org:s}=H(),g=Ie(),{mainAgentId:u}=Me(),o=Ve();let d,m,a,c,f,n,r,l;if(e[0]!==g||e[1]!==u||e[2]!==s.id||e[3]!==o||e[4]!==t){const S=Le(g),v=(g??[]).filter(lt).filter(z=>!S.has(z.id)).filter(at);let O;e[13]!==s.id?(O=Pe(s.id),e[13]=s.id,e[14]=O):O=e[14];const h=O,x=u!=null?(g??[]).find(z=>z.id===u):void 0,w=x?x.id:ee,N=x&&!v.some(z=>z.id===x.id)?[x,...v]:v;let _;e[15]!==g||e[16]!==o||e[17]!==h.title||e[18]!==t?(_=z=>{const C=z===ee?null:z,k=C===null?h.title:(g??[]).find(T=>T.id===C)?.title??"";o.mutate(C,{onSuccess:()=>F.success(C===null?t("settings.mainAgent.resetToast"):t("settings.mainAgent.setToast",{title:k})),onError:()=>F.error(t("settings.mainAgent.errorToast"))})},e[15]=g,e[16]=o,e[17]=h.title,e[18]=t,e[19]=_):_=e[19];const D=_;m=Ne,f=w,n=D,r=o.isPending,e[20]===Symbol.for("react.memo_cache_sentinel")?(l=i.jsx(De,{className:"w-full sm:w-[280px]",children:i.jsx(Te,{})}),e[20]=l):l=e[20],d=Fe;let b;e[21]!==h.icon||e[22]!==h.title?(b=i.jsx(ge,{icon:h.icon,name:h.title,size:"xs",className:"shrink-0"}),e[21]=h.icon,e[22]=h.title,e[23]=b):b=e[23];let A;e[24]!==t?(A=t("settings.mainAgent.superAgentOption"),e[24]=t,e[25]=A):A=e[25];let y;e[26]!==A?(y=i.jsx("span",{className:"truncate",children:A}),e[26]=A,e[27]=y):y=e[27],e[28]!==y||e[29]!==b?(a=i.jsx(me,{value:ee,children:i.jsxs("span",{className:"flex items-center gap-2",children:[b,y]})}),e[28]=y,e[29]=b,e[30]=a):a=e[30],c=N.map(rt),e[0]=g,e[1]=u,e[2]=s.id,e[3]=o,e[4]=t,e[5]=d,e[6]=m,e[7]=a,e[8]=c,e[9]=f,e[10]=n,e[11]=r,e[12]=l}else d=e[5],m=e[6],a=e[7],c=e[8],f=e[9],n=e[10],r=e[11],l=e[12];let p;e[31]!==d||e[32]!==a||e[33]!==c?(p=i.jsxs(d,{children:[a,c]}),e[31]=d,e[32]=a,e[33]=c,e[34]=p):p=e[34];let j;return e[35]!==m||e[36]!==f||e[37]!==n||e[38]!==r||e[39]!==l||e[40]!==p?(j=i.jsxs(m,{value:f,onValueChange:n,disabled:r,children:[l,p]}),e[35]=m,e[36]=f,e[37]=n,e[38]=r,e[39]=l,e[40]=p,e[41]=j):j=e[41],j}function rt(e){return i.jsx(me,{value:e.id,children:i.jsxs("span",{className:"flex items-center gap-2",children:[i.jsx(ge,{icon:e.icon,name:e.title,size:"xs",className:"shrink-0"}),i.jsx("span",{className:"truncate",children:e.title})]})},e.id)}function at(e){return!Re(e.id)}function lt(e){return!ke(e.id)}function ct(){const e=P.c(16),t=K();let s;e[0]!==t?(s=t("settings.mainAgent.title"),e[0]=t,e[1]=s):s=e[1];let g;e[2]!==t?(g=t("settings.mainAgent.description"),e[2]=t,e[3]=g):g=e[3];let u;e[4]!==t?(u=t("settings.mainAgent.itemTitle"),e[4]=t,e[5]=u):u=e[5];let o;e[6]!==t?(o=t("settings.mainAgent.itemDescription"),e[6]=t,e[7]=o):o=e[7];let d;e[8]===Symbol.for("react.memo_cache_sentinel")?(d=i.jsx(Z.Suspense,{fallback:i.jsx(Ee,{className:"h-9 w-[280px]"}),children:i.jsx(ot,{})}),e[8]=d):d=e[8];let m;e[9]!==u||e[10]!==o?(m=i.jsx(ne,{children:i.jsx(Q,{title:u,description:o,action:d})}),e[9]=u,e[10]=o,e[11]=m):m=e[11];let a;return e[12]!==s||e[13]!==g||e[14]!==m?(a=i.jsx(se,{title:s,description:g,children:m}),e[12]=s,e[13]=g,e[14]=m,e[15]=a):a=e[15],a}function mt(){const e=P.c(86),t=K(),{org:s}=H(),[g,u]=Z.useState(!1),[o,d]=Z.useState(""),m=Be();let a;e[0]!==s.id||e[1]!==m?(a=async()=>{await m.call("ORGANIZATION_DELETE",{id:s.id})},e[0]=s.id,e[1]=m,e[2]=a):a=e[2];let c;e[3]!==s.id||e[4]!==s.slug||e[5]!==t?(c=()=>{ie("organization_deleted",{organization_id:s.id}),localStorage.getItem(ae.lastOrgSlug())===s.slug&&localStorage.removeItem(ae.lastOrgSlug()),Se(),F.success(t("settings.deleteOrganizationSection.organizationDeleted")),window.location.href="/"},e[3]=s.id,e[4]=s.slug,e[5]=t,e[6]=c):c=e[6];let f;e[7]!==t?(f=E=>{F.error(E instanceof Error?E.message:t("settings.deleteOrganizationSection.failedToDeleteOrganization"))},e[7]=t,e[8]=f):f=e[8];let n;e[9]!==a||e[10]!==c||e[11]!==f?(n={mutationFn:a,onSuccess:c,onError:f},e[9]=a,e[10]=c,e[11]=f,e[12]=n):n=e[12];const r=le(n);let l;e[13]!==t?(l=t("settings.deleteOrganizationSection.dangerZone"),e[13]=t,e[14]=l):l=e[14];let p;e[15]!==t?(p=t("settings.deleteOrganizationSection.irreversibleActionsDescription"),e[15]=t,e[16]=p):p=e[16];let j;e[17]!==t?(j=t("settings.deleteOrganizationSection.deleteOrganizationTitle"),e[17]=t,e[18]=j):j=e[18];let S;e[19]!==t?(S=t("settings.deleteOrganizationSection.deleteOrganizationDescription"),e[19]=t,e[20]=S):S=e[20];let v;e[21]===Symbol.for("react.memo_cache_sentinel")?(v=()=>u(!0),e[21]=v):v=e[21];const O=r.isPending;let h;e[22]!==t?(h=t("settings.deleteOrganizationSection.deleteButton"),e[22]=t,e[23]=h):h=e[23];let x;e[24]!==r.isPending||e[25]!==h?(x=i.jsx(te,{variant:"destructive",size:"sm",onClick:v,disabled:O,children:h}),e[24]=r.isPending,e[25]=h,e[26]=x):x=e[26];let w;e[27]!==x||e[28]!==j||e[29]!==S?(w=i.jsx(ne,{className:"border-destructive/40",children:i.jsx(Q,{title:j,description:S,action:x})}),e[27]=x,e[28]=j,e[29]=S,e[30]=w):w=e[30];let N;e[31]!==w||e[32]!==l||e[33]!==p?(N=i.jsx(se,{title:l,description:p,children:w}),e[31]=w,e[32]=l,e[33]=p,e[34]=N):N=e[34];let _;e[35]===Symbol.for("react.memo_cache_sentinel")?(_=E=>{u(E),E||d("")},e[35]=_):_=e[35];let D;e[36]!==t?(D=t("settings.deleteOrganizationSection.deleteOrganizationQuestion"),e[36]=t,e[37]=D):D=e[37];let b;e[38]!==D?(b=i.jsx(Ge,{children:D}),e[38]=D,e[39]=b):b=e[39];let A;e[40]!==s.name||e[41]!==t?(A=t("settings.deleteOrganizationSection.deleteWarning",{organizationName:s.name}),e[40]=s.name,e[41]=t,e[42]=A):A=e[42];let y;e[43]!==A?(y=i.jsx("p",{children:A}),e[43]=A,e[44]=y):y=e[44];let z;e[45]!==s.name||e[46]!==t?(z=t("settings.deleteOrganizationSection.typeToConfirm",{organizationName:s.name}),e[45]=s.name,e[46]=t,e[47]=z):z=e[47];let C;e[48]!==z?(C=i.jsx("p",{className:"mt-3 mb-1.5",children:z}),e[48]=z,e[49]=C):C=e[49];let k;e[50]===Symbol.for("react.memo_cache_sentinel")?(k=E=>d(E.target.value),e[50]=k):k=e[50];let T;e[51]!==o||e[52]!==s.name?(T=i.jsx(ce,{value:o,onChange:k,placeholder:s.name,autoFocus:!0}),e[51]=o,e[52]=s.name,e[53]=T):T=e[53];let R;e[54]!==y||e[55]!==C||e[56]!==T?(R=i.jsx(Ue,{asChild:!0,children:i.jsxs("div",{children:[y,C,T]})}),e[54]=y,e[55]=C,e[56]=T,e[57]=R):R=e[57];let I;e[58]!==b||e[59]!==R?(I=i.jsxs(qe,{children:[b,R]}),e[58]=b,e[59]=R,e[60]=I):I=e[60];let L;e[61]!==t?(L=t("settings.deleteOrganizationSection.cancel"),e[61]=t,e[62]=L):L=e[62];let M;e[63]!==L?(M=i.jsx(Ke,{children:L}),e[63]=L,e[64]=M):M=e[64];let V;e[65]!==r?(V=()=>r.mutate(),e[65]=r,e[66]=V):V=e[66];const X=o!==s.name||r.isPending;let $;e[67]!==r.isPending||e[68]!==t?($=r.isPending?t("settings.deleteOrganizationSection.deleting"):t("settings.deleteOrganizationSection.deleteOrganizationAction"),e[67]=r.isPending,e[68]=t,e[69]=$):$=e[69];let B;e[70]!==V||e[71]!==X||e[72]!==$?(B=i.jsx(Qe,{onClick:V,disabled:X,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90 disabled:opacity-50",children:$}),e[70]=V,e[71]=X,e[72]=$,e[73]=B):B=e[73];let G;e[74]!==M||e[75]!==B?(G=i.jsxs(Ze,{children:[M,B]}),e[74]=M,e[75]=B,e[76]=G):G=e[76];let U;e[77]!==I||e[78]!==G?(U=i.jsxs(Ye,{children:[I,G]}),e[77]=I,e[78]=G,e[79]=U):U=e[79];let q;e[80]!==g||e[81]!==U?(q=i.jsx(We,{open:g,onOpenChange:_,children:U}),e[80]=g,e[81]=U,e[82]=q):q=e[82];let Y;return e[83]!==N||e[84]!==q?(Y=i.jsxs(i.Fragment,{children:[N,q]}),e[83]=N,e[84]=q,e[85]=Y):Y=e[85],Y}function gt(){const e=P.c(11),t=K();let s;e[0]!==t?(s=t("settings.orgGeneral.organization"),e[0]=t,e[1]=s):s=e[1];let g;e[2]!==s?(g=i.jsx(W.Title,{children:s}),e[2]=s,e[3]=g):g=e[3];let u,o,d,m,a;e[4]===Symbol.for("react.memo_cache_sentinel")?(u=i.jsx(Je,{}),o=i.jsx(nt,{}),d=i.jsx(ct,{}),m=i.jsx($e,{}),a=i.jsx(mt,{}),e[4]=u,e[5]=o,e[6]=d,e[7]=m,e[8]=a):(u=e[4],o=e[5],d=e[6],m=e[7],a=e[8]);let c;return e[9]!==g?(c=i.jsx(W,{children:i.jsx(W.Content,{children:i.jsx(W.Body,{children:i.jsxs(we,{children:[g,u,o,d,m,a]})})})}),e[9]=g,e[10]=c):c=e[10],c}function Ni(){const e=P.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=i.jsx(He,{capability:"org:manage",area:"general settings",children:i.jsx(gt,{})}),e[0]=t):t=e[0],t}export{Ni as default};
|
|
1
|
+
import{c as P,F as H,r as Z,j as i,B as te,L as ue,X as fe,Y as J,b as K,d as pe,o as he,_ as xe,Z as je,e as le,p as ie,t as F,K as oe,a6 as re,G as ae,w as Se}from"./index-CRRQs3pu.js";import{P as W}from"./index-DVue46g1.js";import{A as ze,b as ve}from"./alert-DTidhd77.js";import{i as be}from"./XCircle-DBOmOGaZ.js";import{n as Ae}from"./LinkExternal01-DDyZLcZQ.js";import{s as ye}from"./XClose-DToI7Nqc.js";import{u as Ce}from"./use-org-auth-client-89JHqrqV.js";import{u as _e}from"./use-debounced-autosave-C_YycABY.js";import{A as Oe}from"./avatar-5FmDg7zM.js";import{I as ce}from"./input-BhLtvwyU.js";import{S as se,a as ne,b as Q,c as we}from"./settings-section-CE3NSzeg.js";import{d as me,S as Ne,a as De,b as Te,c as Fe}from"./select-BVkSBqst.js";import{S as Ee}from"./skeleton-BWVGyUEt.js";import{A as ge}from"./agent-icon-ogpT0fwN.js";import{a as Pe,i as ke,f as Re}from"./use-mcp-client-B2NT7Yn8.js";import{a as Ie}from"./use-virtual-mcp-cIVDeGtC.js";import{a as Le}from"./agent-capabilities-cXfbMfjV.js";import{e as Me,h as Ve}from"./use-organization-settings-B8UaSk9b.js";import{D as $e}from"./domain-settings-Dgy45_Ok.js";import{u as Be}from"./studio-tools-DBFaX7ST.js";import{c as Ge,d as Ue,b as qe,f as Ke,g as Qe,e as Ze,a as Ye,A as We}from"./alert-dialog-z-Dw9ujH.js";import{R as He}from"./require-capability-BS0SiTq8.js";import"./sidebar-C2EJhhvO.js";import"./LayoutLeft-CVH4xfOW.js";import"./use-mobile-DjIISmPe.js";import"./X-DggNryax.js";import"./tooltip-C3B4U3Wy.js";import"./User01-bQzld3qt.js";import"./card-Cfa6Qex1.js";import"./ArrowUpRight-D802qwXa.js";import"./Check-C2jMVaeP.js";import"./ChevronDown-B5V_4H8o.js";import"./ChevronUp-wl1r60kg.js";import"./AlertCircle-2Dxo9Jp4.js";import"./Tool01-sslyST3d.js";import"./ArrowUp-B372eLRL.js";import"./Settings02-DTexHau_.js";import"./Tool02-CcCmqYgT.js";import"./TrendUp01-CaIwgyNu.js";import"./ZapSquare-gRQk1Abv.js";import"./Users03-EvTDMkNg.js";import"./CheckCircle-CAN_wkas.js";import"./ChevronRight-DbBKG8o-.js";import"./DotsVertical-zoeuWG_B.js";import"./Stars02-BjRWIB5s.js";import"./Copy01-DZVLvpLt.js";import"./Eye-p7gVtcBP.js";import"./FilterLines-DjZtxUHW.js";import"./Star01-D4viPiJS.js";import"./Palette-wtVoPoiz.js";import"./SwitchHorizontal01-7ZAWs0i3.js";import"./HardDrive-C7lbD7tM.js";import"./Key01-DBOxgjeS.js";import"./LogOut01-C6LzoNzY.js";import"./Monitor01-CEb-YULy.js";import"./Sun-DukWKLhx.js";import"./Play-C3hWiv-e.js";import"./Plus-twvBvKo0.js";import"./SearchLg-KmYTVejr.js";import"./SearchMd-rlLrkvov.js";import"./Shield01-BTEsJ7WP.js";import"./Stars01-DVCi9msB.js";import"./Trash01-DLKfyXZh.js";import"./Upload01-Ow-YBNzJ.js";import"./Users01-BUxDCVEu.js";import"./Zap-DqDSY9Io.js";import"./auth-Bpedj-YK.js";import"./badge-DoEcc1aI.js";import"./use-capability-DRx71rlV.js";import"./access-gate-CWCiToTH.js";import"./capability-load-error-Bt5S5c9O.js";function de(e){return`connect-banner-dismissed:${e}`}function Xe(e){if(typeof window>"u")return!0;try{return localStorage.getItem(de(e))==="1"}catch{return!1}}function Je(){const e=P.c(17),{org:t}=H();let s;e[0]!==t.id?(s=()=>Xe(t.id),e[0]=t.id,e[1]=s):s=e[1];const[g,u]=Z.useState(s);if(g)return null;let o;e[2]!==t.id?(o=()=>{u(!0);try{localStorage.setItem(de(t.id),"1")}catch{}},e[2]=t.id,e[3]=o):o=e[3];const d=o;let m;e[4]===Symbol.for("react.memo_cache_sentinel")?(m=i.jsx(Ae,{}),e[4]=m):m=e[4];let a;e[5]===Symbol.for("react.memo_cache_sentinel")?(a=i.jsx("span",{children:"Use Studio MCP anywhere — paste a command into Claude Code, Cursor, Codex, or any MCP client."}),e[5]=a):a=e[5];let c;e[6]!==t.slug?(c={org:t.slug},e[6]=t.slug,e[7]=c):c=e[7];let f;e[8]===Symbol.for("react.memo_cache_sentinel")?(f=i.jsx(be,{size:12}),e[8]=f):f=e[8];let n;e[9]!==c?(n=i.jsx(te,{asChild:!0,size:"sm",variant:"ghost",className:"text-xs gap-1",children:i.jsxs(ue,{to:"/$org/settings/connect",params:c,children:["Connect to clients ",f]})}),e[9]=c,e[10]=n):n=e[10];let r;e[11]===Symbol.for("react.memo_cache_sentinel")?(r=i.jsx(ye,{size:14}),e[11]=r):r=e[11];let l;e[12]!==d?(l=i.jsx(te,{variant:"ghost",size:"icon",className:"size-7",onClick:d,"aria-label":"Dismiss",children:r}),e[12]=d,e[13]=l):l=e[13];let p;return e[14]!==n||e[15]!==l?(p=i.jsxs(ze,{variant:"info",className:"items-center",children:[m,i.jsxs(ve,{className:"flex-1 flex items-center justify-between gap-2 text-sm",children:[a,i.jsxs("div",{className:"flex items-center gap-1 shrink-0",children:[n,l]})]})]}),e[14]=n,e[15]=l,e[16]=p):p=e[16],p}const et=new Set([".well-known","_admin","api","auth","cli","commerce-onboarding","dbos-queue-depth","health","hosted-run-pending","login","mcp","metrics","oauth","oauth-proxy","onboarding","org","report","reset-password"]);function tt(e){return typeof e=="string"&&et.has(e.trim().toLowerCase())}const it=fe({name:J().min(1,"Name is required").max(255,"Name is too long"),slug:J().min(1,"Slug is required").max(50,"Slug is too long").regex(/^[a-z0-9-]+$/,"Slug must contain only lowercase letters, numbers, and hyphens").refine(e=>!tt(e),"This organization URL is reserved by Studio"),logo:J().optional()});function st(e){const t=P.c(17),{value:s,onChange:g,name:u,disabled:o}=e,d=K(),m=Z.useRef(null);let a;t[0]===Symbol.for("react.memo_cache_sentinel")?(a=()=>m.current?.click(),t[0]=a):a=t[0];const c=a;let f;t[1]!==g||t[2]!==d?(f=O=>{const h=O.target.files?.[0];if(!h)return;if(h.size>2097152){F.error(d("settings.organizationForm.imageTooLarge"));return}const x=new FileReader;x.onerror=()=>F.error(d("settings.organizationForm.failedToReadImage")),x.onloadend=()=>{x.result&&g(x.result),m.current&&(m.current.value="")},x.readAsDataURL(h)},t[1]=g,t[2]=d,t[3]=f):f=t[3];const n=f;let r;t[4]!==d?(r=d("settings.organizationForm.uploadLogoLabel"),t[4]=d,t[5]=r):r=t[5];let l;t[6]!==o||t[7]!==n?(l=i.jsx("input",{ref:m,type:"file",accept:"image/*",onChange:n,className:"hidden",disabled:o}),t[6]=o,t[7]=n,t[8]=l):l=t[8];const p=s||void 0,j=u??"?";let S;t[9]!==p||t[10]!==j?(S=i.jsx(Oe,{url:p,fallback:j,shape:"square",size:"base"}),t[9]=p,t[10]=j,t[11]=S):S=t[11];let v;return t[12]!==o||t[13]!==r||t[14]!==l||t[15]!==S?(v=i.jsxs("button",{type:"button",onClick:c,disabled:o,className:"rounded-lg overflow-hidden hover:ring-2 hover:ring-border transition-all disabled:opacity-50","aria-label":r,children:[l,S]}),t[12]=o,t[13]=r,t[14]=l,t[15]=S,t[16]=v):v=t[16],v}function nt(){const e=K(),t=pe(),{org:s}=H(),g=Ce(),u=he(),o=xe({resolver:je(it),values:{name:s.name??"",slug:s.slug??"",logo:s.logo??""}}),d=le({mutationFn:async n=>{const r={name:n.name,slug:n.slug};n.logo&&(r.logo=n.logo);const l=await g.organization.update({data:r});if(l?.error)throw new Error(l.error.message||e("settings.organizationForm.failedToUpdateOrg"));return l},onSuccess:(n,r)=>{ie("organization_settings_updated",{organization_id:s.id,fields:Object.keys(r)}),u.invalidateQueries({queryKey:oe.organizations()}),u.invalidateQueries({queryKey:oe.activeOrganization(s.slug)}),F.success(e("settings.organizationForm.updateSuccess")),n?.data?.slug&&n.data.slug!==s.slug&&t({to:"/$org/settings/general",params:{org:n.data.slug}})},onError:(n,r)=>{ie("organization_settings_update_failed",{organization_id:s.id,fields:Object.keys(r),error:n instanceof Error?n.message:String(n)}),F.error(n instanceof Error?n.message:e("settings.organizationForm.failedToUpdateOrg"))}}),{schedule:m,flush:a}=_e({save:async()=>{const n=o.control._formState.dirtyFields;if(Object.keys(n).length===0||!await o.trigger())return;const l=o.getValues(),p=o.control._defaultValues;o.reset(l,{keepValues:!0});try{await d.mutateAsync(l)}catch{o.reset(p,{keepValues:!0})}}}),c=o.formState.errors,f=typeof window<"u"?`${window.location.host}/`:"";return i.jsx(se,{children:i.jsxs(ne,{children:[i.jsx(Q,{title:e("settings.organizationForm.logoTitle"),description:e("settings.organizationForm.logoDescription"),action:i.jsx(st,{value:o.watch("logo"),onChange:n=>{o.setValue("logo",n??"",{shouldDirty:!0}),a()},name:o.watch("name")})}),i.jsx(Q,{title:e("settings.organizationForm.nameTitle"),action:i.jsx(re,{control:o.control,name:"name",render:({field:n})=>i.jsx(ce,{id:"org-name",...n,onChange:r=>{n.onChange(r),m()},onBlur:()=>{n.onBlur(),a()},placeholder:e("settings.organizationForm.namePlaceholder"),className:"w-[280px]"})})}),i.jsx(Q,{title:e("settings.organizationForm.urlTitle"),action:i.jsxs("div",{className:"flex items-center w-[280px] rounded-md border border-input bg-input/30 focus-within:ring-2 focus-within:ring-ring/50 overflow-hidden",children:[f&&i.jsx("span",{className:"pl-3 text-sm text-muted-foreground select-none",children:f}),i.jsx(re,{control:o.control,name:"slug",render:({field:n})=>i.jsx("input",{id:"org-slug",value:n.value??"",name:n.name,ref:n.ref,placeholder:e("settings.organizationForm.slugPlaceholder"),className:"flex-1 min-w-0 bg-transparent px-2 py-1.5 text-sm text-foreground placeholder:text-muted-foreground/60 outline-none",onChange:r=>{const l=r.target.value.toLowerCase().replace(/[^a-z0-9-]/g,"");o.setValue("slug",l,{shouldDirty:!0,shouldTouch:!0,shouldValidate:!0}),m()},onBlur:()=>{n.onBlur(),a()}})})]})}),(c.name||c.slug||c.logo)&&i.jsxs("div",{className:"px-5 pb-3 flex flex-col gap-1",children:[c.name&&i.jsx("p",{className:"text-xs text-destructive",children:c.name.message}),c.slug&&i.jsx("p",{className:"text-xs text-destructive",children:c.slug.message}),c.logo&&i.jsx("p",{className:"text-xs text-destructive",children:c.logo.message})]})]})})}const ee="__super_agent__";function ot(){const e=P.c(42),t=K(),{org:s}=H(),g=Ie(),{mainAgentId:u}=Me(),o=Ve();let d,m,a,c,f,n,r,l;if(e[0]!==g||e[1]!==u||e[2]!==s.id||e[3]!==o||e[4]!==t){const S=Le(g),v=(g??[]).filter(lt).filter(z=>!S.has(z.id)).filter(at);let O;e[13]!==s.id?(O=Pe(s.id),e[13]=s.id,e[14]=O):O=e[14];const h=O,x=u!=null?(g??[]).find(z=>z.id===u):void 0,w=x?x.id:ee,N=x&&!v.some(z=>z.id===x.id)?[x,...v]:v;let _;e[15]!==g||e[16]!==o||e[17]!==h.title||e[18]!==t?(_=z=>{const C=z===ee?null:z,k=C===null?h.title:(g??[]).find(T=>T.id===C)?.title??"";o.mutate(C,{onSuccess:()=>F.success(C===null?t("settings.mainAgent.resetToast"):t("settings.mainAgent.setToast",{title:k})),onError:()=>F.error(t("settings.mainAgent.errorToast"))})},e[15]=g,e[16]=o,e[17]=h.title,e[18]=t,e[19]=_):_=e[19];const D=_;m=Ne,f=w,n=D,r=o.isPending,e[20]===Symbol.for("react.memo_cache_sentinel")?(l=i.jsx(De,{className:"w-full sm:w-[280px]",children:i.jsx(Te,{})}),e[20]=l):l=e[20],d=Fe;let b;e[21]!==h.icon||e[22]!==h.title?(b=i.jsx(ge,{icon:h.icon,name:h.title,size:"xs",className:"shrink-0"}),e[21]=h.icon,e[22]=h.title,e[23]=b):b=e[23];let A;e[24]!==t?(A=t("settings.mainAgent.superAgentOption"),e[24]=t,e[25]=A):A=e[25];let y;e[26]!==A?(y=i.jsx("span",{className:"truncate",children:A}),e[26]=A,e[27]=y):y=e[27],e[28]!==y||e[29]!==b?(a=i.jsx(me,{value:ee,children:i.jsxs("span",{className:"flex items-center gap-2",children:[b,y]})}),e[28]=y,e[29]=b,e[30]=a):a=e[30],c=N.map(rt),e[0]=g,e[1]=u,e[2]=s.id,e[3]=o,e[4]=t,e[5]=d,e[6]=m,e[7]=a,e[8]=c,e[9]=f,e[10]=n,e[11]=r,e[12]=l}else d=e[5],m=e[6],a=e[7],c=e[8],f=e[9],n=e[10],r=e[11],l=e[12];let p;e[31]!==d||e[32]!==a||e[33]!==c?(p=i.jsxs(d,{children:[a,c]}),e[31]=d,e[32]=a,e[33]=c,e[34]=p):p=e[34];let j;return e[35]!==m||e[36]!==f||e[37]!==n||e[38]!==r||e[39]!==l||e[40]!==p?(j=i.jsxs(m,{value:f,onValueChange:n,disabled:r,children:[l,p]}),e[35]=m,e[36]=f,e[37]=n,e[38]=r,e[39]=l,e[40]=p,e[41]=j):j=e[41],j}function rt(e){return i.jsx(me,{value:e.id,children:i.jsxs("span",{className:"flex items-center gap-2",children:[i.jsx(ge,{icon:e.icon,name:e.title,size:"xs",className:"shrink-0"}),i.jsx("span",{className:"truncate",children:e.title})]})},e.id)}function at(e){return!Re(e.id)}function lt(e){return!ke(e.id)}function ct(){const e=P.c(16),t=K();let s;e[0]!==t?(s=t("settings.mainAgent.title"),e[0]=t,e[1]=s):s=e[1];let g;e[2]!==t?(g=t("settings.mainAgent.description"),e[2]=t,e[3]=g):g=e[3];let u;e[4]!==t?(u=t("settings.mainAgent.itemTitle"),e[4]=t,e[5]=u):u=e[5];let o;e[6]!==t?(o=t("settings.mainAgent.itemDescription"),e[6]=t,e[7]=o):o=e[7];let d;e[8]===Symbol.for("react.memo_cache_sentinel")?(d=i.jsx(Z.Suspense,{fallback:i.jsx(Ee,{className:"h-9 w-[280px]"}),children:i.jsx(ot,{})}),e[8]=d):d=e[8];let m;e[9]!==u||e[10]!==o?(m=i.jsx(ne,{children:i.jsx(Q,{title:u,description:o,action:d})}),e[9]=u,e[10]=o,e[11]=m):m=e[11];let a;return e[12]!==s||e[13]!==g||e[14]!==m?(a=i.jsx(se,{title:s,description:g,children:m}),e[12]=s,e[13]=g,e[14]=m,e[15]=a):a=e[15],a}function mt(){const e=P.c(86),t=K(),{org:s}=H(),[g,u]=Z.useState(!1),[o,d]=Z.useState(""),m=Be();let a;e[0]!==s.id||e[1]!==m?(a=async()=>{await m.call("ORGANIZATION_DELETE",{id:s.id})},e[0]=s.id,e[1]=m,e[2]=a):a=e[2];let c;e[3]!==s.id||e[4]!==s.slug||e[5]!==t?(c=()=>{ie("organization_deleted",{organization_id:s.id}),localStorage.getItem(ae.lastOrgSlug())===s.slug&&localStorage.removeItem(ae.lastOrgSlug()),Se(),F.success(t("settings.deleteOrganizationSection.organizationDeleted")),window.location.href="/"},e[3]=s.id,e[4]=s.slug,e[5]=t,e[6]=c):c=e[6];let f;e[7]!==t?(f=E=>{F.error(E instanceof Error?E.message:t("settings.deleteOrganizationSection.failedToDeleteOrganization"))},e[7]=t,e[8]=f):f=e[8];let n;e[9]!==a||e[10]!==c||e[11]!==f?(n={mutationFn:a,onSuccess:c,onError:f},e[9]=a,e[10]=c,e[11]=f,e[12]=n):n=e[12];const r=le(n);let l;e[13]!==t?(l=t("settings.deleteOrganizationSection.dangerZone"),e[13]=t,e[14]=l):l=e[14];let p;e[15]!==t?(p=t("settings.deleteOrganizationSection.irreversibleActionsDescription"),e[15]=t,e[16]=p):p=e[16];let j;e[17]!==t?(j=t("settings.deleteOrganizationSection.deleteOrganizationTitle"),e[17]=t,e[18]=j):j=e[18];let S;e[19]!==t?(S=t("settings.deleteOrganizationSection.deleteOrganizationDescription"),e[19]=t,e[20]=S):S=e[20];let v;e[21]===Symbol.for("react.memo_cache_sentinel")?(v=()=>u(!0),e[21]=v):v=e[21];const O=r.isPending;let h;e[22]!==t?(h=t("settings.deleteOrganizationSection.deleteButton"),e[22]=t,e[23]=h):h=e[23];let x;e[24]!==r.isPending||e[25]!==h?(x=i.jsx(te,{variant:"destructive",size:"sm",onClick:v,disabled:O,children:h}),e[24]=r.isPending,e[25]=h,e[26]=x):x=e[26];let w;e[27]!==x||e[28]!==j||e[29]!==S?(w=i.jsx(ne,{className:"border-destructive/40",children:i.jsx(Q,{title:j,description:S,action:x})}),e[27]=x,e[28]=j,e[29]=S,e[30]=w):w=e[30];let N;e[31]!==w||e[32]!==l||e[33]!==p?(N=i.jsx(se,{title:l,description:p,children:w}),e[31]=w,e[32]=l,e[33]=p,e[34]=N):N=e[34];let _;e[35]===Symbol.for("react.memo_cache_sentinel")?(_=E=>{u(E),E||d("")},e[35]=_):_=e[35];let D;e[36]!==t?(D=t("settings.deleteOrganizationSection.deleteOrganizationQuestion"),e[36]=t,e[37]=D):D=e[37];let b;e[38]!==D?(b=i.jsx(Ge,{children:D}),e[38]=D,e[39]=b):b=e[39];let A;e[40]!==s.name||e[41]!==t?(A=t("settings.deleteOrganizationSection.deleteWarning",{organizationName:s.name}),e[40]=s.name,e[41]=t,e[42]=A):A=e[42];let y;e[43]!==A?(y=i.jsx("p",{children:A}),e[43]=A,e[44]=y):y=e[44];let z;e[45]!==s.name||e[46]!==t?(z=t("settings.deleteOrganizationSection.typeToConfirm",{organizationName:s.name}),e[45]=s.name,e[46]=t,e[47]=z):z=e[47];let C;e[48]!==z?(C=i.jsx("p",{className:"mt-3 mb-1.5",children:z}),e[48]=z,e[49]=C):C=e[49];let k;e[50]===Symbol.for("react.memo_cache_sentinel")?(k=E=>d(E.target.value),e[50]=k):k=e[50];let T;e[51]!==o||e[52]!==s.name?(T=i.jsx(ce,{value:o,onChange:k,placeholder:s.name,autoFocus:!0}),e[51]=o,e[52]=s.name,e[53]=T):T=e[53];let R;e[54]!==y||e[55]!==C||e[56]!==T?(R=i.jsx(Ue,{asChild:!0,children:i.jsxs("div",{children:[y,C,T]})}),e[54]=y,e[55]=C,e[56]=T,e[57]=R):R=e[57];let I;e[58]!==b||e[59]!==R?(I=i.jsxs(qe,{children:[b,R]}),e[58]=b,e[59]=R,e[60]=I):I=e[60];let L;e[61]!==t?(L=t("settings.deleteOrganizationSection.cancel"),e[61]=t,e[62]=L):L=e[62];let M;e[63]!==L?(M=i.jsx(Ke,{children:L}),e[63]=L,e[64]=M):M=e[64];let V;e[65]!==r?(V=()=>r.mutate(),e[65]=r,e[66]=V):V=e[66];const X=o!==s.name||r.isPending;let $;e[67]!==r.isPending||e[68]!==t?($=r.isPending?t("settings.deleteOrganizationSection.deleting"):t("settings.deleteOrganizationSection.deleteOrganizationAction"),e[67]=r.isPending,e[68]=t,e[69]=$):$=e[69];let B;e[70]!==V||e[71]!==X||e[72]!==$?(B=i.jsx(Qe,{onClick:V,disabled:X,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90 disabled:opacity-50",children:$}),e[70]=V,e[71]=X,e[72]=$,e[73]=B):B=e[73];let G;e[74]!==M||e[75]!==B?(G=i.jsxs(Ze,{children:[M,B]}),e[74]=M,e[75]=B,e[76]=G):G=e[76];let U;e[77]!==I||e[78]!==G?(U=i.jsxs(Ye,{children:[I,G]}),e[77]=I,e[78]=G,e[79]=U):U=e[79];let q;e[80]!==g||e[81]!==U?(q=i.jsx(We,{open:g,onOpenChange:_,children:U}),e[80]=g,e[81]=U,e[82]=q):q=e[82];let Y;return e[83]!==N||e[84]!==q?(Y=i.jsxs(i.Fragment,{children:[N,q]}),e[83]=N,e[84]=q,e[85]=Y):Y=e[85],Y}function gt(){const e=P.c(11),t=K();let s;e[0]!==t?(s=t("settings.orgGeneral.organization"),e[0]=t,e[1]=s):s=e[1];let g;e[2]!==s?(g=i.jsx(W.Title,{children:s}),e[2]=s,e[3]=g):g=e[3];let u,o,d,m,a;e[4]===Symbol.for("react.memo_cache_sentinel")?(u=i.jsx(Je,{}),o=i.jsx(nt,{}),d=i.jsx(ct,{}),m=i.jsx($e,{}),a=i.jsx(mt,{}),e[4]=u,e[5]=o,e[6]=d,e[7]=m,e[8]=a):(u=e[4],o=e[5],d=e[6],m=e[7],a=e[8]);let c;return e[9]!==g?(c=i.jsx(W,{children:i.jsx(W.Content,{children:i.jsx(W.Body,{children:i.jsxs(we,{children:[g,u,o,d,m,a]})})})}),e[9]=g,e[10]=c):c=e[10],c}function Ni(){const e=P.c(1);let t;return e[0]===Symbol.for("react.memo_cache_sentinel")?(t=i.jsx(He,{capability:"org:manage",area:"general settings",children:i.jsx(gt,{})}),e[0]=t):t=e[0],t}export{Ni as default};
|
package/dist/client/assets/{github-repo-picker-BWo0mStf.js → github-repo-picker-BpYKcrhF.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as q,j as t,F as me,a as ye,o as fe,r as D,$ as le,b as te,k as ee,e as ge,t as re,dS as Ne,K as se,G as ve,n as ke,m as ue,B as ce,x as Ce,y as Re}from"./index-CSpVJ_t8.js";import{a as we,b as Se,d as Pe,e as Ie}from"./dialog-X9BweWBo.js";import{C as _e}from"./collection-search-BjtQL6OR.js";import{u as Te}from"./use-debounced-value-D9N08iAn.js";import{b as he,u as Ee}from"./use-connection-B7zY84qP.js";import{W as Ae,u as ne,S as pe}from"./use-mcp-client-BAxUImLq.js";import{a as be}from"./authenticate-and-persist-oauth-uyGMJLSI.js";import{b as de}from"./Settings02-BTjZquNj.js";import{n as ze}from"./LinkExternal01-BuQ3C4t9.js";import{U as Le}from"./agent-icon-DmqrLJlK.js";import{u as Ge}from"./use-mcp-tools-B4eBN42P.js";import{e as Oe}from"./extract-connection-data-Drdn1Nzd.js";import{c as Fe}from"./use-navigate-to-agent-DlWN4wRt.js";import{g as Ue,p as xe,f as $e}from"./provision-repo-scoped-github-connection-DWINBxtd.js";function M(k){const e=q.c(4),{size:n,className:l}=k;let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h=t.jsx("path",{d:"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0016 8c0-4.42-3.58-8-8-8z"}),e[0]=h):h=e[0];let o;return e[1]!==l||e[2]!==n?(o=t.jsx("svg",{width:n,height:n,viewBox:"0 0 16 16",fill:"currentColor","aria-hidden":"true",className:l,children:h}),e[1]=l,e[2]=n,e[3]=o):o=e[3],o}function De(k,e){const n=q.c(12),{org:l}=me();let h;n[0]!==l.id?(h=Ae.REGISTRY(l.id),n[0]=l.id,n[1]=h):h=n[1];const o=h;let a;n[2]!==l.id||n[3]!==l.slug||n[4]!==o?(a={connectionId:o,orgId:l.id,orgSlug:l.slug},n[2]=l.id,n[3]=l.slug,n[4]=o,n[5]=a):a=n[5];const r=ne(a);let s;n[6]!==k?(s={name:k},n[6]=k,n[7]=s):s=n[7];const u=e?.enabled??!0;let y;return n[8]!==r||n[9]!==s||n[10]!==u?(y={client:r,toolName:"COLLECTION_REGISTRY_APP_GET",toolArguments:s,enabled:u,staleTime:3e5,select:He},n[8]=r,n[9]=s,n[10]=u,n[11]=y):y=n[11],Ge(y)}function He(k){return k.structuredContent?.item??null}const Me="deco/mcp-github";function qe(k){const{org:e}=me(),{data:n}=ye.useSession(),l=he(),h=fe(),[o,a]=D.useState("idle"),[r,s]=D.useState(null),[u,y]=D.useState(null),{data:N,isLoading:w}=De(Me,{enabled:k.enabled}),f=D.useRef(!1);k.enabled&&N&&!w&&!f.current&&n?.user?.id&&o==="idle"&&(f.current=!0,d());async function d(){if(!(!N||!n?.user?.id||!e))try{a("installing"),s(null);const c=Oe(N,e.id,n.user.id,{remoteIndex:0});if(!c.connection_url)throw new Error("Registry item is missing a remote URL for mcp-github");const{id:g}=await l.create.mutateAsync(c);a("authenticating");const j=await be({connectionId:g,orgId:e.id,orgSlug:e.slug,persistFallback:x=>l.update.mutateAsync({id:g,data:{connection_token:x}}).then(()=>{})});if(j.ran&&!j.ok){try{await l.delete.mutateAsync(g)}catch{}throw new Error(j.error&&j.error!=="no token received"?j.error:"No token received from GitHub")}le(h,e.id),y(c),a("ready")}catch(c){s(c instanceof Error?c.message:String(c)),a("error")}}function m(){a("idle"),s(null),y(null),f.current=!1}return k.enabled&&w&&o==="idle"?{status:"installing",error:null,connection:null,retry:m}:{status:o,error:r,connection:u,retry:m}}function dt(k){const e=q.c(27),{open:n,onOpenChange:l,title:h,onImportComplete:o,mode:a}=k,r=a===void 0?"agent":a,s=te();let u;e[0]!==r||e[1]!==s||e[2]!==h?(u=h??s(r==="connection"?"common.githubRepoPicker.addRepo":"common.githubRepoPicker.importFromGitHub"),e[0]=r,e[1]=s,e[2]=h,e[3]=u):u=e[3];const y=u,[N,w]=D.useState(null);let f;e[4]!==y?(f=t.jsx(we,{className:"sr-only",children:t.jsx(Se,{children:y})}),e[4]=y,e[5]=f):f=e[5];let d;e[6]!==y||e[7]!==N||e[8]!==s?(d=t.jsx("div",{className:"flex items-center h-12 border-b border-border px-4 gap-3 shrink-0",children:N?t.jsxs(t.Fragment,{children:[t.jsx("button",{type:"button",onClick:()=>w(null),className:"flex items-center justify-center text-muted-foreground hover:text-foreground transition-colors shrink-0","aria-label":s("common.githubRepoPicker.backToAccounts"),children:t.jsx(de,{size:16})}),t.jsx("img",{src:N.avatarUrl,alt:N.login,className:"size-5 rounded-full ring-1 ring-border shrink-0"}),t.jsx("span",{className:"text-sm font-medium text-foreground",children:N.login})]}):t.jsxs(t.Fragment,{children:[t.jsx(M,{className:"size-4 text-foreground shrink-0"}),t.jsx("span",{className:"text-sm font-medium text-foreground",children:y})]})}),e[6]=y,e[7]=N,e[8]=s,e[9]=d):d=e[9];let m;e[10]===Symbol.for("react.memo_cache_sentinel")?(m=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(ee,{size:18,className:"animate-spin text-muted-foreground"})}),e[10]=m):m=e[10];let c;e[11]!==l?(c=()=>l(!1),e[11]=l,e[12]=c):c=e[12];let p;e[13]!==r||e[14]!==o||e[15]!==n||e[16]!==N||e[17]!==c?(p=t.jsx("div",{className:"flex-1 overflow-hidden flex flex-col min-w-0",children:t.jsx(D.Suspense,{fallback:m,children:t.jsx(Qe,{open:n,onComplete:c,selectedInstallation:N,onSelectInstallation:w,onImportComplete:o,mode:r})})}),e[13]=r,e[14]=o,e[15]=n,e[16]=N,e[17]=c,e[18]=p):p=e[18];let g;e[19]!==f||e[20]!==d||e[21]!==p?(g=t.jsxs(Pe,{className:"sm:max-w-[560px] h-[85svh] sm:h-[520px] p-0 gap-0 overflow-hidden flex flex-col",children:[f,d,p]}),e[19]=f,e[20]=d,e[21]=p,e[22]=g):g=e[22];let j;return e[23]!==l||e[24]!==n||e[25]!==g?(j=t.jsx(Ie,{open:n,onOpenChange:l,children:g}),e[23]=l,e[24]=n,e[25]=g,e[26]=j):j=e[26],j}function Qe({open:k,onComplete:e,selectedInstallation:n,onSelectInstallation:l,onImportComplete:h,mode:o="agent"}){const a=te(),{org:r}=me(),s=fe(),u=Fe(),[y,N]=D.useState(null),w=Ee({slug:"mcp-github"}),f=Ue(w),d=qe({enabled:k&&f.length===0}),m=f.length===1?f[0]??null:y,c=ne({connectionId:m?.id??"",orgId:r.id,orgSlug:r.slug}),p=ne({connectionId:pe,orgId:r.id,orgSlug:r.slug}),g=async(i,v)=>{try{const S=await c.callTool({name:"get_file_contents",arguments:{owner:i.owner,repo:i.name,path:v}});if(S.isError)return null;const P=S.content?.find(I=>I.type==="resource")?.resource?.text;if(!P)return null;try{const I=JSON.parse(P);return typeof I=="string"?I:JSON.stringify(I)}catch{return P}}catch{return null}},j=(i,v)=>{Promise.all([g(v,"AGENTS.md"),g(v,"CLAUDE.md")]).then(async([C,S])=>{const R=C??S??null;R&&(await p.callTool({name:"COLLECTION_VIRTUAL_MCP_UPDATE",arguments:{id:i,data:{metadata:{instructions:R}}}}),le(s,r.id))}).catch(C=>{console.error("GitHub instructions fetch failed:",C)})},x=ge({mutationFn:async i=>{if(!m||!n)throw new Error("No GitHub connection or installation");const v=n.installationId;if(o==="connection"){const{childConnectionId:R}=await xe({orgSlug:r.slug,sourceConnection:m,installationId:v,owner:i.owner,repo:i.name,githubCallTool:P=>c.callTool(P),selfCallTool:P=>p.callTool(P),orgShared:!0});return{virtualMcpId:null,repo:i,connectionId:R,item:null}}const{childConnectionId:C}=await xe({orgSlug:r.slug,sourceConnection:m,installationId:v,owner:i.owner,repo:i.name,githubCallTool:R=>c.callTool(R),selfCallTool:R=>p.callTool(R)});let S=null;try{const R=await p.callTool({name:"COLLECTION_VIRTUAL_MCP_CREATE",arguments:{data:{title:i.name,description:i.description||"Imported from GitHub",pinned:!1,icon:null,metadata:{githubRepo:{owner:i.owner,name:i.name,url:i.url,installationId:v,connectionId:C},instructions:null,ui:{pinnedViews:null,layout:{defaultMainView:{type:"preview"},chatDefaultOpen:!0}}},connections:[{connection_id:C}]}}}),P=R.structuredContent??R,I=P.item?.id;if(!P.item||!I)throw new Error("Failed to create the imported agent");return S=I,{virtualMcpId:I,repo:i,connectionId:C,item:P.item}}catch(R){throw S&&await p.callTool({name:"COLLECTION_VIRTUAL_MCP_DELETE",arguments:{id:S}}).catch(()=>{}),await p.callTool({name:"COLLECTION_CONNECTIONS_DELETE",arguments:{id:C,force:!0}}).catch(()=>{}),R}},onSuccess:({virtualMcpId:i,repo:v,connectionId:C,item:S})=>{if(o==="connection"||!i||!S){le(s,r.id),Ne(s,r.id),re.success(a("common.githubRepoPicker.addedRepo",{name:v.name})),e();return}if(s.setQueryData(se.collectionItem(p,r.id,"","VIRTUAL_MCP",i),{item:S}),le(s,r.id),j(i,v),h){h({virtualMcpId:i,repo:v,connectionId:C});return}re.success(a("common.githubRepoPicker.importedRepo",{name:v.name})),e(),localStorage.setItem(ve.sidebarOpen(),JSON.stringify(!1)),u(i)},onError:i=>{re.error(a("common.githubRepoPicker.failedImport",{error:i instanceof Error?i.message:a("common.githubRepoPicker.unknownError")}))}});return d.status==="installing"||d.status==="authenticating"?t.jsx(ae,{status:d.status,error:null,retry:d.retry}):d.status==="error"?t.jsx(ae,{status:"error",error:d.error,retry:d.retry}):f.length===0&&d.status==="idle"?t.jsx(ae,{status:"installing",error:null,retry:d.retry}):f.length>1&&!m?t.jsxs("div",{className:"flex flex-col py-2",children:[t.jsx("div",{className:"px-4 py-2",children:t.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:a("common.githubRepoPicker.selectConnection")})}),f.map(i=>t.jsxs("button",{type:"button",onClick:()=>N(i),className:"flex items-center gap-3 px-4 py-3 hover:bg-accent transition-colors text-left",children:[i.icon?t.jsx("img",{src:i.icon,alt:i.title,className:"size-7 rounded-full shrink-0"}):t.jsx("div",{className:"size-7 rounded-full bg-muted flex items-center justify-center shrink-0",children:t.jsx(M,{className:"size-3.5 text-muted-foreground"})}),t.jsx("span",{className:"text-sm font-medium",children:i.title})]},i.id))]}):m?n?t.jsx(Ke,{connectionId:m.id,orgId:r.id,orgSlug:r.slug,installation:n,onSelectRepo:i=>x.mutate(i),isSaving:x.isPending}):t.jsx(Be,{connectionId:m.id,orgId:r.id,orgSlug:r.slug,onSelect:l,showBackButton:f.length>1,onBack:()=>N(null)}):null}function Be(k){const e=q.c(126),{connectionId:n,orgId:l,orgSlug:h,onSelect:o,showBackButton:a,onBack:r}=k,s=te();let u;e[0]!==l||e[1]!==h?(u={connectionId:pe,orgId:l,orgSlug:h},e[0]=l,e[1]=h,e[2]=u):u=e[2];const y=ne(u),N=fe(),w=he();let f;e[3]!==n||e[4]!==l?(f=se.githubUserOrgs(l,n),e[3]=n,e[4]=l,e[5]=f):f=e[5];let d;e[6]!==n||e[7]!==y?(d=()=>$e(b=>y.callTool(b),n),e[6]=n,e[7]=y,e[8]=d):d=e[8];let m;e[9]!==f||e[10]!==d?(m={queryKey:f,queryFn:d},e[9]=f,e[10]=d,e[11]=m):m=e[11];const c=ke(m);let p;e[12]!==w||e[13]!==n||e[14]!==c||e[15]!==l||e[16]!==h||e[17]!==N?(p=async()=>{const b=await be({connectionId:n,orgId:l,orgSlug:h,persistFallback:A=>w.update.mutateAsync({id:n,data:{connection_token:A}}).then(Ve)});if(b.ran&&!b.ok)throw new Error(b.error??"no token received");const _=new URL(`/api/${h}/mcp/${n}`,window.location.origin);await N.invalidateQueries({queryKey:se.isMCPAuthenticated(_.href,null)}),await N.invalidateQueries({queryKey:se.mcpClientPrefix()}),await c.refetch()},e[12]=w,e[13]=n,e[14]=c,e[15]=l,e[16]=h,e[17]=N,e[18]=p):p=e[18];let g;e[19]!==s?(g=b=>{re.error(s("common.githubRepoPicker.failedReconnect",{error:b instanceof Error?b.message:s("common.githubRepoPicker.unknownError")}))},e[19]=s,e[20]=g):g=e[20];let j;e[21]!==p||e[22]!==g?(j={mutationFn:p,onError:g},e[21]=p,e[22]=g,e[23]=j):j=e[23];const x=ge(j);if(c.isLoading){let b;return e[24]===Symbol.for("react.memo_cache_sentinel")?(b=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(ee,{size:18,className:"animate-spin text-muted-foreground"})}),e[24]=b):b=e[24],b}if(c.isError){let b;e[25]!==s?(b=s("common.githubRepoPicker.failedLoadAccounts"),e[25]=s,e[26]=b):b=e[26];let _;e[27]!==b?(_=t.jsx("p",{className:"text-sm text-destructive",children:b}),e[27]=b,e[28]=_):_=e[28];let A;e[29]!==s?(A=s("common.githubRepoPicker.connectionExpiredMessage"),e[29]=s,e[30]=A):A=e[30];let z;e[31]!==A?(z=t.jsx("p",{className:"text-xs text-muted-foreground max-w-[280px] leading-relaxed",children:A}),e[31]=A,e[32]=z):z=e[32];let L;e[33]!==x?(L=()=>x.mutate(),e[33]=x,e[34]=L):L=e[34];const H=x.isPending;let G;e[35]!==x.isPending?(G=x.isPending?t.jsx(ee,{size:14,className:"animate-spin"}):t.jsx(M,{className:"size-3.5"}),e[35]=x.isPending,e[36]=G):G=e[36];let O;e[37]!==s?(O=s("common.githubRepoPicker.reconnectGitHub"),e[37]=s,e[38]=O):O=e[38];let F;e[39]!==x.isPending||e[40]!==L||e[41]!==G||e[42]!==O?(F=t.jsxs(ce,{type:"button",variant:"outline",size:"sm",onClick:L,disabled:H,children:[G,O]}),e[39]=x.isPending,e[40]=L,e[41]=G,e[42]=O,e[43]=F):F=e[43];let $;return e[44]!==z||e[45]!==F||e[46]!==_?($=t.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-3 px-6 text-center",children:[_,z,F]}),e[44]=z,e[45]=F,e[46]=_,e[47]=$):$=e[47],$}const i=c.data;if(!i)return null;const v=i.appSlug?`https://github.com/apps/${i.appSlug}/installations/new`:"https://github.com/settings/installations";if(i.installations.length===0){let b;e[48]!==r||e[49]!==a||e[50]!==s?(b=a&&t.jsx("div",{className:"flex items-center gap-1 px-4 pt-3 pb-1 shrink-0",children:t.jsxs("button",{type:"button",onClick:r,className:"flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[t.jsx(de,{size:12}),s("common.githubRepoPicker.changeConnection")]})}),e[48]=r,e[49]=a,e[50]=s,e[51]=b):b=e[51];let _;e[52]===Symbol.for("react.memo_cache_sentinel")?(_=t.jsx("div",{className:"size-16 rounded-2xl bg-muted flex items-center justify-center",children:t.jsx(M,{className:"size-8 text-foreground"})}),e[52]=_):_=e[52];let A;e[53]===Symbol.for("react.memo_cache_sentinel")?(A=t.jsx("span",{className:"size-1.5 rounded-full bg-success"}),e[53]=A):A=e[53];let z;e[54]!==s?(z=s("common.githubRepoPicker.githubConnected"),e[54]=s,e[55]=z):z=e[55];let L;e[56]!==z?(L=t.jsxs("div",{className:"mt-4 flex items-center gap-1.5 text-xs font-medium text-success",children:[A,z]}),e[56]=z,e[57]=L):L=e[57];let H;e[58]!==s?(H=s("common.githubRepoPicker.setupRepositoriesTitle"),e[58]=s,e[59]=H):H=e[59];let G;e[60]!==H?(G=t.jsx("h2",{className:"mt-2 text-base font-semibold text-foreground",children:H}),e[60]=H,e[61]=G):G=e[61];let O;e[62]!==s?(O=s("common.githubRepoPicker.noRepositoriesShared"),e[62]=s,e[63]=O):O=e[63];let F;e[64]!==O?(F=t.jsx("p",{className:"mt-1.5 max-w-[360px] text-xs leading-relaxed text-muted-foreground",children:O}),e[64]=O,e[65]=F):F=e[65];let $;e[66]!==s?($=s("common.githubRepoPicker.chooseRepositories"),e[66]=s,e[67]=$):$=e[67];let ie;e[68]===Symbol.for("react.memo_cache_sentinel")?(ie=t.jsx(ze,{size:14}),e[68]=ie):ie=e[68];let Q;e[69]!==v||e[70]!==$?(Q=t.jsx(ce,{asChild:!0,size:"sm",children:t.jsxs("a",{href:v,target:"_blank",rel:"noopener noreferrer",children:[$,ie]})}),e[69]=v,e[70]=$,e[71]=Q):Q=e[71];let B;e[72]!==c?(B=()=>{c.refetch()},e[72]=c,e[73]=B):B=e[73];const je=c.isFetching;let V;e[74]!==c.isFetching?(V=c.isFetching&&t.jsx(ee,{size:14,className:"animate-spin"}),e[74]=c.isFetching,e[75]=V):V=e[75];let K;e[76]!==s?(K=s("common.githubRepoPicker.checkAgain"),e[76]=s,e[77]=K):K=e[77];let J;e[78]!==c.isFetching||e[79]!==B||e[80]!==V||e[81]!==K?(J=t.jsxs(ce,{type:"button",variant:"outline",size:"sm",onClick:B,disabled:je,children:[V,K]}),e[78]=c.isFetching,e[79]=B,e[80]=V,e[81]=K,e[82]=J):J=e[82];let W;e[83]!==Q||e[84]!==J?(W=t.jsxs("div",{className:"mt-5 flex items-center gap-2",children:[Q,J]}),e[83]=Q,e[84]=J,e[85]=W):W=e[85];let Y;e[86]!==s?(Y=s("common.githubRepoPicker.repositoryAccessNote"),e[86]=s,e[87]=Y):Y=e[87];let X;e[88]!==Y?(X=t.jsx("p",{className:"mt-4 max-w-[360px] rounded-lg bg-muted/50 px-3 py-2 text-xs leading-relaxed text-muted-foreground",children:Y}),e[88]=Y,e[89]=X):X=e[89];let Z;e[90]!==L||e[91]!==G||e[92]!==F||e[93]!==W||e[94]!==X?(Z=t.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center px-8 py-6 text-center",children:[_,L,G,F,W,X]}),e[90]=L,e[91]=G,e[92]=F,e[93]=W,e[94]=X,e[95]=Z):Z=e[95];let oe;return e[96]!==Z||e[97]!==b?(oe=t.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[b,Z]}),e[96]=Z,e[97]=b,e[98]=oe):oe=e[98],oe}let C;e[99]!==r||e[100]!==a||e[101]!==s?(C=a&&t.jsx("div",{className:"flex items-center gap-1 px-4 pt-3 pb-1 shrink-0",children:t.jsxs("button",{type:"button",onClick:r,className:"flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[t.jsx(de,{size:12}),s("common.githubRepoPicker.changeConnection")]})}),e[99]=r,e[100]=a,e[101]=s,e[102]=C):C=e[102];let S;if(e[103]!==i.installations||e[104]!==o||e[105]!==s){let b;e[107]!==o||e[108]!==s?(b=_=>t.jsxs("button",{type:"button",onClick:()=>o(_),className:"w-full flex items-center gap-3 px-4 py-3 hover:bg-accent transition-colors text-left group",children:[t.jsx("img",{src:_.avatarUrl,alt:_.login,className:"size-7 rounded-full shrink-0 ring-1 ring-border"}),t.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[t.jsx("span",{className:"text-sm font-medium leading-none",children:_.login}),_.type==="User"&&t.jsx("span",{className:"text-xs text-muted-foreground mt-1",children:s("common.githubRepoPicker.personalAccount")})]}),t.jsxs("span",{className:"text-xs text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity shrink-0",children:[s("common.githubRepoPicker.select")," →"]})]},_.installationId),e[107]=o,e[108]=s,e[109]=b):b=e[109],S=i.installations.map(b),e[103]=i.installations,e[104]=o,e[105]=s,e[106]=S}else S=e[106];let R;e[110]!==S?(R=t.jsx("div",{className:"flex-1 overflow-y-auto overflow-x-hidden [scrollbar-gutter:stable]",children:S}),e[110]=S,e[111]=R):R=e[111];let P;e[112]!==s?(P=s("common.githubRepoPicker.accountNotListed"),e[112]=s,e[113]=P):P=e[113];let I;e[114]!==s?(I=s("common.githubRepoPicker.installGitHubApp"),e[114]=s,e[115]=I):I=e[115];let T;e[116]!==I?(T=t.jsx("span",{className:"underline underline-offset-2",children:I}),e[116]=I,e[117]=T):T=e[117];let E;e[118]!==v||e[119]!==P||e[120]!==T?(E=t.jsx("div",{className:"px-4 py-3 border-t border-border shrink-0",children:t.jsxs("a",{href:v,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:[P," ",T]})}),e[118]=v,e[119]=P,e[120]=T,e[121]=E):E=e[121];let U;return e[122]!==R||e[123]!==E||e[124]!==C?(U=t.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[C,R,E]}),e[122]=R,e[123]=E,e[124]=C,e[125]=U):U=e[125],U}function Ve(){}function Ke(k){const e=q.c(23),{connectionId:n,orgId:l,orgSlug:h,installation:o,onSelectRepo:a,isSaving:r}=k,s=te(),[u,y]=D.useState(""),N=Te(u,300),w=D.useDeferredValue(N),f=u!==w;let d;e[0]!==s?(d=s("common.githubRepoPicker.searchRepositories"),e[0]=s,e[1]=d):d=e[1];let m;e[2]!==f||e[3]!==u||e[4]!==d?(m=t.jsx(_e,{placeholder:d,value:u,onChange:y,isSearching:f}),e[2]=f,e[3]=u,e[4]=d,e[5]=m):m=e[5];const c=f?"opacity-40":"opacity-100";let p;e[6]!==c?(p=ue("flex-1 overflow-hidden flex flex-col transition-opacity duration-150",c),e[6]=c,e[7]=p):p=e[7];let g;e[8]===Symbol.for("react.memo_cache_sentinel")?(g=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(ee,{size:18,className:"animate-spin text-muted-foreground"})}),e[8]=g):g=e[8];let j;e[9]!==n||e[10]!==w||e[11]!==o||e[12]!==r||e[13]!==a||e[14]!==l||e[15]!==h?(j=t.jsx(D.Suspense,{fallback:g,children:t.jsx(Je,{connectionId:n,orgId:l,orgSlug:h,installation:o,query:w,onSelectRepo:a,isSaving:r})}),e[9]=n,e[10]=w,e[11]=o,e[12]=r,e[13]=a,e[14]=l,e[15]=h,e[16]=j):j=e[16];let x;e[17]!==p||e[18]!==j?(x=t.jsx("div",{className:p,children:j}),e[17]=p,e[18]=j,e[19]=x):x=e[19];let i;return e[20]!==m||e[21]!==x?(i=t.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[m,x]}),e[20]=m,e[21]=x,e[22]=i):i=e[22],i}function Je(k){const e=q.c(36),{connectionId:n,orgId:l,orgSlug:h,installation:o,query:a,onSelectRepo:r,isSaving:s}=k,u=te();let y;e[0]!==n||e[1]!==l||e[2]!==h?(y={connectionId:n,orgId:l,orgSlug:h},e[0]=n,e[1]=l,e[2]=h,e[3]=y):y=e[3];const N=ne(y),w=o.type==="User"?"user":"org",f=a?`${w}:${o.login} ${a} in:name`:`${w}:${o.login}`;let d;e[4]!==n||e[5]!==o.login||e[6]!==l||e[7]!==a?(d=se.githubOrgRepos(l,n,o.login,a),e[4]=n,e[5]=o.login,e[6]=l,e[7]=a,e[8]=d):d=e[8];let m;e[9]!==N||e[10]!==f?(m=async x=>{const{signal:i}=x,C=(await N.callTool({name:"search_repositories",arguments:{query:f,page:1,perPage:30}},void 0,{signal:i})).content?.[0]?.text;if(!C)throw new Error("No response from search_repositories");return(JSON.parse(C).items??[]).map(We)},e[9]=N,e[10]=f,e[11]=m):m=e[11];let c;e[12]!==d||e[13]!==m?(c={queryKey:d,queryFn:m},e[12]=d,e[13]=m,e[14]=c):c=e[14];const{data:p}=Ce(c);if(p.length===0){let x;e[15]!==u?(x=u("common.githubRepoPicker.noRepositoriesFound"),e[15]=u,e[16]=x):x=e[16];let i;e[17]!==x?(i=t.jsx("p",{className:"text-sm text-muted-foreground",children:x}),e[17]=x,e[18]=i):i=e[18];let v;e[19]!==a||e[20]!==u?(v=a&&t.jsx("p",{className:"text-xs text-muted-foreground/60",children:u("common.githubRepoPicker.tryDifferentSearchTerm")}),e[19]=a,e[20]=u,e[21]=v):v=e[21];let C;return e[22]!==i||e[23]!==v?(C=t.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-1",children:[i,v]}),e[22]=i,e[23]=v,e[24]=C):C=e[24],C}let g;if(e[25]!==s||e[26]!==r||e[27]!==p||e[28]!==u){let x;e[30]!==s||e[31]!==r||e[32]!==u?(x=i=>t.jsxs("button",{type:"button",onClick:()=>r(i),disabled:s,className:"flex items-start gap-3 px-4 py-3 hover:bg-accent transition-colors text-left disabled:opacity-50 disabled:cursor-not-allowed",children:[t.jsx(M,{className:"size-4 text-muted-foreground mt-0.5 shrink-0"}),t.jsx("div",{className:"flex items-center gap-2 min-w-0 flex-1",children:t.jsx("span",{className:"text-sm font-medium truncate",children:i.name})}),t.jsxs("span",{className:"flex items-center gap-1 text-xs font-medium text-muted-foreground border border-border rounded px-1.5 py-0.5 shrink-0 leading-none",children:[i.private?t.jsx(Re,{size:10}):t.jsx(Le,{size:10}),i.private?u("common.githubRepoPicker.private"):u("common.githubRepoPicker.public")]})]},i.fullName),e[30]=s,e[31]=r,e[32]=u,e[33]=x):x=e[33],g=p.map(x),e[25]=s,e[26]=r,e[27]=p,e[28]=u,e[29]=g}else g=e[29];let j;return e[34]!==g?(j=t.jsx("div",{className:"flex-1 overflow-y-auto overflow-x-hidden flex flex-col [scrollbar-gutter:stable]",children:g}),e[34]=g,e[35]=j):j=e[35],j}function We(k){return{name:k.name,fullName:k.full_name,owner:k.full_name.split("/")[0]??"",url:k.html_url,private:k.private,description:k.description,updatedAt:k.updated_at}}function ae(k){const e=q.c(51),{status:n,error:l,retry:h}=k,o=te();if(n==="error"){let C;e[0]===Symbol.for("react.memo_cache_sentinel")?(C=t.jsx("div",{className:"size-10 rounded-full bg-destructive/10 flex items-center justify-center",children:t.jsx(M,{className:"size-5 text-destructive"})}),e[0]=C):C=e[0];let S;e[1]!==o?(S=o("common.githubRepoPicker.connectionFailed"),e[1]=o,e[2]=S):S=e[2];let R;e[3]!==S?(R=t.jsx("p",{className:"text-sm font-medium",children:S}),e[3]=S,e[4]=R):R=e[4];let P;e[5]!==l||e[6]!==o?(P=l??o("common.githubRepoPicker.somethingWentWrong"),e[5]=l,e[6]=o,e[7]=P):P=e[7];let I;e[8]!==P?(I=t.jsx("p",{className:"text-xs text-muted-foreground max-w-[260px] leading-relaxed",children:P}),e[8]=P,e[9]=I):I=e[9];let T;e[10]!==R||e[11]!==I?(T=t.jsxs("div",{className:"flex flex-col items-center gap-1 text-center",children:[R,I]}),e[10]=R,e[11]=I,e[12]=T):T=e[12];let E;e[13]!==o?(E=o("common.githubRepoPicker.tryAgain"),e[13]=o,e[14]=E):E=e[14];let U;e[15]!==h||e[16]!==E?(U=t.jsx("button",{type:"button",onClick:h,className:"text-xs font-medium text-foreground border border-border rounded-md px-3 py-1.5 hover:bg-accent transition-colors",children:E}),e[15]=h,e[16]=E,e[17]=U):U=e[17];let b;return e[18]!==T||e[19]!==U?(b=t.jsxs("div",{className:"flex flex-col items-center gap-4 px-6 py-10",children:[C,T,U]}),e[18]=T,e[19]=U,e[20]=b):b=e[20],b}const a=n==="authenticating";let r;e[21]===Symbol.for("react.memo_cache_sentinel")?(r=t.jsx("div",{className:"size-10 rounded-full bg-muted flex items-center justify-center",children:t.jsx(M,{className:"size-5 text-foreground"})}),e[21]=r):r=e[21];let s;e[22]===Symbol.for("react.memo_cache_sentinel")?(s=t.jsxs("div",{className:"relative size-10",children:[r,t.jsx("div",{className:"absolute -bottom-0.5 -right-0.5 size-4 rounded-full bg-background flex items-center justify-center",children:t.jsx(ee,{size:12,className:"animate-spin text-muted-foreground"})})]}),e[22]=s):s=e[22];let u;e[23]!==a||e[24]!==o?(u=o(a?"common.githubRepoPicker.authenticatingGitHub":"common.githubRepoPicker.settingUpGitHub"),e[23]=a,e[24]=o,e[25]=u):u=e[25];let y;e[26]!==u?(y=t.jsx("p",{className:"text-sm font-medium",children:u}),e[26]=u,e[27]=y):y=e[27];let N;e[28]!==a||e[29]!==o?(N=o(a?"common.githubRepoPicker.completeOAuthFlow":"common.githubRepoPicker.installingGitHubConnection"),e[28]=a,e[29]=o,e[30]=N):N=e[30];let w;e[31]!==N?(w=t.jsx("p",{className:"text-xs text-muted-foreground",children:N}),e[31]=N,e[32]=w):w=e[32];let f;e[33]!==y||e[34]!==w?(f=t.jsxs("div",{className:"flex flex-col items-center gap-1 text-center",children:[y,w]}),e[33]=y,e[34]=w,e[35]=f):f=e[35];const d=a?"bg-muted-foreground/30":"bg-foreground animate-pulse";let m;e[36]!==d?(m=ue("size-1.5 rounded-full",d),e[36]=d,e[37]=m):m=e[37];let c;e[38]!==m?(c=t.jsx("span",{className:m}),e[38]=m,e[39]=c):c=e[39];const p=a?"bg-foreground animate-pulse":"bg-muted-foreground/30";let g;e[40]!==p?(g=ue("size-1.5 rounded-full",p),e[40]=p,e[41]=g):g=e[41];let j;e[42]!==g?(j=t.jsx("span",{className:g}),e[42]=g,e[43]=j):j=e[43];let x;e[44]===Symbol.for("react.memo_cache_sentinel")?(x=t.jsx("span",{className:"size-1.5 rounded-full bg-muted-foreground/30"}),e[44]=x):x=e[44];let i;e[45]!==c||e[46]!==j?(i=t.jsxs("div",{className:"flex items-center gap-1.5",children:[c,j,x]}),e[45]=c,e[46]=j,e[47]=i):i=e[47];let v;return e[48]!==i||e[49]!==f?(v=t.jsxs("div",{className:"flex flex-col items-center gap-4 px-6 py-10",children:[s,f,i]}),e[48]=i,e[49]=f,e[50]=v):v=e[50],v}export{M as G,dt as a,qe as b,De as u};
|
|
1
|
+
import{c as q,j as t,F as me,a as ye,o as fe,r as D,$ as le,b as te,k as ee,e as ge,t as re,dS as Ne,K as se,G as ve,n as ke,m as ue,B as ce,x as Ce,y as Re}from"./index-CRRQs3pu.js";import{a as we,b as Se,d as Pe,e as Ie}from"./dialog-DVdklNAE.js";import{C as _e}from"./collection-search-RMfBhC2C.js";import{u as Te}from"./use-debounced-value-B8uEa1pc.js";import{b as he,u as Ee}from"./use-connection-DyHBRgFa.js";import{W as Ae,u as ne,S as pe}from"./use-mcp-client-B2NT7Yn8.js";import{a as be}from"./authenticate-and-persist-oauth-DdjdUYso.js";import{b as de}from"./Settings02-DTexHau_.js";import{n as ze}from"./LinkExternal01-DDyZLcZQ.js";import{U as Le}from"./agent-icon-ogpT0fwN.js";import{u as Ge}from"./use-mcp-tools-DTp1Iuhl.js";import{e as Oe}from"./extract-connection-data-BWhbeE-G.js";import{c as Fe}from"./use-navigate-to-agent-C51Rlzqu.js";import{g as Ue,p as xe,f as $e}from"./provision-repo-scoped-github-connection-DWINBxtd.js";function M(k){const e=q.c(4),{size:n,className:l}=k;let h;e[0]===Symbol.for("react.memo_cache_sentinel")?(h=t.jsx("path",{d:"M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27s1.36.09 2 .27c1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.01 8.01 0 0016 8c0-4.42-3.58-8-8-8z"}),e[0]=h):h=e[0];let o;return e[1]!==l||e[2]!==n?(o=t.jsx("svg",{width:n,height:n,viewBox:"0 0 16 16",fill:"currentColor","aria-hidden":"true",className:l,children:h}),e[1]=l,e[2]=n,e[3]=o):o=e[3],o}function De(k,e){const n=q.c(12),{org:l}=me();let h;n[0]!==l.id?(h=Ae.REGISTRY(l.id),n[0]=l.id,n[1]=h):h=n[1];const o=h;let a;n[2]!==l.id||n[3]!==l.slug||n[4]!==o?(a={connectionId:o,orgId:l.id,orgSlug:l.slug},n[2]=l.id,n[3]=l.slug,n[4]=o,n[5]=a):a=n[5];const r=ne(a);let s;n[6]!==k?(s={name:k},n[6]=k,n[7]=s):s=n[7];const u=e?.enabled??!0;let y;return n[8]!==r||n[9]!==s||n[10]!==u?(y={client:r,toolName:"COLLECTION_REGISTRY_APP_GET",toolArguments:s,enabled:u,staleTime:3e5,select:He},n[8]=r,n[9]=s,n[10]=u,n[11]=y):y=n[11],Ge(y)}function He(k){return k.structuredContent?.item??null}const Me="deco/mcp-github";function qe(k){const{org:e}=me(),{data:n}=ye.useSession(),l=he(),h=fe(),[o,a]=D.useState("idle"),[r,s]=D.useState(null),[u,y]=D.useState(null),{data:N,isLoading:w}=De(Me,{enabled:k.enabled}),f=D.useRef(!1);k.enabled&&N&&!w&&!f.current&&n?.user?.id&&o==="idle"&&(f.current=!0,d());async function d(){if(!(!N||!n?.user?.id||!e))try{a("installing"),s(null);const c=Oe(N,e.id,n.user.id,{remoteIndex:0});if(!c.connection_url)throw new Error("Registry item is missing a remote URL for mcp-github");const{id:g}=await l.create.mutateAsync(c);a("authenticating");const j=await be({connectionId:g,orgId:e.id,orgSlug:e.slug,persistFallback:x=>l.update.mutateAsync({id:g,data:{connection_token:x}}).then(()=>{})});if(j.ran&&!j.ok){try{await l.delete.mutateAsync(g)}catch{}throw new Error(j.error&&j.error!=="no token received"?j.error:"No token received from GitHub")}le(h,e.id),y(c),a("ready")}catch(c){s(c instanceof Error?c.message:String(c)),a("error")}}function m(){a("idle"),s(null),y(null),f.current=!1}return k.enabled&&w&&o==="idle"?{status:"installing",error:null,connection:null,retry:m}:{status:o,error:r,connection:u,retry:m}}function dt(k){const e=q.c(27),{open:n,onOpenChange:l,title:h,onImportComplete:o,mode:a}=k,r=a===void 0?"agent":a,s=te();let u;e[0]!==r||e[1]!==s||e[2]!==h?(u=h??s(r==="connection"?"common.githubRepoPicker.addRepo":"common.githubRepoPicker.importFromGitHub"),e[0]=r,e[1]=s,e[2]=h,e[3]=u):u=e[3];const y=u,[N,w]=D.useState(null);let f;e[4]!==y?(f=t.jsx(we,{className:"sr-only",children:t.jsx(Se,{children:y})}),e[4]=y,e[5]=f):f=e[5];let d;e[6]!==y||e[7]!==N||e[8]!==s?(d=t.jsx("div",{className:"flex items-center h-12 border-b border-border px-4 gap-3 shrink-0",children:N?t.jsxs(t.Fragment,{children:[t.jsx("button",{type:"button",onClick:()=>w(null),className:"flex items-center justify-center text-muted-foreground hover:text-foreground transition-colors shrink-0","aria-label":s("common.githubRepoPicker.backToAccounts"),children:t.jsx(de,{size:16})}),t.jsx("img",{src:N.avatarUrl,alt:N.login,className:"size-5 rounded-full ring-1 ring-border shrink-0"}),t.jsx("span",{className:"text-sm font-medium text-foreground",children:N.login})]}):t.jsxs(t.Fragment,{children:[t.jsx(M,{className:"size-4 text-foreground shrink-0"}),t.jsx("span",{className:"text-sm font-medium text-foreground",children:y})]})}),e[6]=y,e[7]=N,e[8]=s,e[9]=d):d=e[9];let m;e[10]===Symbol.for("react.memo_cache_sentinel")?(m=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(ee,{size:18,className:"animate-spin text-muted-foreground"})}),e[10]=m):m=e[10];let c;e[11]!==l?(c=()=>l(!1),e[11]=l,e[12]=c):c=e[12];let p;e[13]!==r||e[14]!==o||e[15]!==n||e[16]!==N||e[17]!==c?(p=t.jsx("div",{className:"flex-1 overflow-hidden flex flex-col min-w-0",children:t.jsx(D.Suspense,{fallback:m,children:t.jsx(Qe,{open:n,onComplete:c,selectedInstallation:N,onSelectInstallation:w,onImportComplete:o,mode:r})})}),e[13]=r,e[14]=o,e[15]=n,e[16]=N,e[17]=c,e[18]=p):p=e[18];let g;e[19]!==f||e[20]!==d||e[21]!==p?(g=t.jsxs(Pe,{className:"sm:max-w-[560px] h-[85svh] sm:h-[520px] p-0 gap-0 overflow-hidden flex flex-col",children:[f,d,p]}),e[19]=f,e[20]=d,e[21]=p,e[22]=g):g=e[22];let j;return e[23]!==l||e[24]!==n||e[25]!==g?(j=t.jsx(Ie,{open:n,onOpenChange:l,children:g}),e[23]=l,e[24]=n,e[25]=g,e[26]=j):j=e[26],j}function Qe({open:k,onComplete:e,selectedInstallation:n,onSelectInstallation:l,onImportComplete:h,mode:o="agent"}){const a=te(),{org:r}=me(),s=fe(),u=Fe(),[y,N]=D.useState(null),w=Ee({slug:"mcp-github"}),f=Ue(w),d=qe({enabled:k&&f.length===0}),m=f.length===1?f[0]??null:y,c=ne({connectionId:m?.id??"",orgId:r.id,orgSlug:r.slug}),p=ne({connectionId:pe,orgId:r.id,orgSlug:r.slug}),g=async(i,v)=>{try{const S=await c.callTool({name:"get_file_contents",arguments:{owner:i.owner,repo:i.name,path:v}});if(S.isError)return null;const P=S.content?.find(I=>I.type==="resource")?.resource?.text;if(!P)return null;try{const I=JSON.parse(P);return typeof I=="string"?I:JSON.stringify(I)}catch{return P}}catch{return null}},j=(i,v)=>{Promise.all([g(v,"AGENTS.md"),g(v,"CLAUDE.md")]).then(async([C,S])=>{const R=C??S??null;R&&(await p.callTool({name:"COLLECTION_VIRTUAL_MCP_UPDATE",arguments:{id:i,data:{metadata:{instructions:R}}}}),le(s,r.id))}).catch(C=>{console.error("GitHub instructions fetch failed:",C)})},x=ge({mutationFn:async i=>{if(!m||!n)throw new Error("No GitHub connection or installation");const v=n.installationId;if(o==="connection"){const{childConnectionId:R}=await xe({orgSlug:r.slug,sourceConnection:m,installationId:v,owner:i.owner,repo:i.name,githubCallTool:P=>c.callTool(P),selfCallTool:P=>p.callTool(P),orgShared:!0});return{virtualMcpId:null,repo:i,connectionId:R,item:null}}const{childConnectionId:C}=await xe({orgSlug:r.slug,sourceConnection:m,installationId:v,owner:i.owner,repo:i.name,githubCallTool:R=>c.callTool(R),selfCallTool:R=>p.callTool(R)});let S=null;try{const R=await p.callTool({name:"COLLECTION_VIRTUAL_MCP_CREATE",arguments:{data:{title:i.name,description:i.description||"Imported from GitHub",pinned:!1,icon:null,metadata:{githubRepo:{owner:i.owner,name:i.name,url:i.url,installationId:v,connectionId:C},instructions:null,ui:{pinnedViews:null,layout:{defaultMainView:{type:"preview"},chatDefaultOpen:!0}}},connections:[{connection_id:C}]}}}),P=R.structuredContent??R,I=P.item?.id;if(!P.item||!I)throw new Error("Failed to create the imported agent");return S=I,{virtualMcpId:I,repo:i,connectionId:C,item:P.item}}catch(R){throw S&&await p.callTool({name:"COLLECTION_VIRTUAL_MCP_DELETE",arguments:{id:S}}).catch(()=>{}),await p.callTool({name:"COLLECTION_CONNECTIONS_DELETE",arguments:{id:C,force:!0}}).catch(()=>{}),R}},onSuccess:({virtualMcpId:i,repo:v,connectionId:C,item:S})=>{if(o==="connection"||!i||!S){le(s,r.id),Ne(s,r.id),re.success(a("common.githubRepoPicker.addedRepo",{name:v.name})),e();return}if(s.setQueryData(se.collectionItem(p,r.id,"","VIRTUAL_MCP",i),{item:S}),le(s,r.id),j(i,v),h){h({virtualMcpId:i,repo:v,connectionId:C});return}re.success(a("common.githubRepoPicker.importedRepo",{name:v.name})),e(),localStorage.setItem(ve.sidebarOpen(),JSON.stringify(!1)),u(i)},onError:i=>{re.error(a("common.githubRepoPicker.failedImport",{error:i instanceof Error?i.message:a("common.githubRepoPicker.unknownError")}))}});return d.status==="installing"||d.status==="authenticating"?t.jsx(ae,{status:d.status,error:null,retry:d.retry}):d.status==="error"?t.jsx(ae,{status:"error",error:d.error,retry:d.retry}):f.length===0&&d.status==="idle"?t.jsx(ae,{status:"installing",error:null,retry:d.retry}):f.length>1&&!m?t.jsxs("div",{className:"flex flex-col py-2",children:[t.jsx("div",{className:"px-4 py-2",children:t.jsx("p",{className:"text-xs font-medium text-muted-foreground",children:a("common.githubRepoPicker.selectConnection")})}),f.map(i=>t.jsxs("button",{type:"button",onClick:()=>N(i),className:"flex items-center gap-3 px-4 py-3 hover:bg-accent transition-colors text-left",children:[i.icon?t.jsx("img",{src:i.icon,alt:i.title,className:"size-7 rounded-full shrink-0"}):t.jsx("div",{className:"size-7 rounded-full bg-muted flex items-center justify-center shrink-0",children:t.jsx(M,{className:"size-3.5 text-muted-foreground"})}),t.jsx("span",{className:"text-sm font-medium",children:i.title})]},i.id))]}):m?n?t.jsx(Ke,{connectionId:m.id,orgId:r.id,orgSlug:r.slug,installation:n,onSelectRepo:i=>x.mutate(i),isSaving:x.isPending}):t.jsx(Be,{connectionId:m.id,orgId:r.id,orgSlug:r.slug,onSelect:l,showBackButton:f.length>1,onBack:()=>N(null)}):null}function Be(k){const e=q.c(126),{connectionId:n,orgId:l,orgSlug:h,onSelect:o,showBackButton:a,onBack:r}=k,s=te();let u;e[0]!==l||e[1]!==h?(u={connectionId:pe,orgId:l,orgSlug:h},e[0]=l,e[1]=h,e[2]=u):u=e[2];const y=ne(u),N=fe(),w=he();let f;e[3]!==n||e[4]!==l?(f=se.githubUserOrgs(l,n),e[3]=n,e[4]=l,e[5]=f):f=e[5];let d;e[6]!==n||e[7]!==y?(d=()=>$e(b=>y.callTool(b),n),e[6]=n,e[7]=y,e[8]=d):d=e[8];let m;e[9]!==f||e[10]!==d?(m={queryKey:f,queryFn:d},e[9]=f,e[10]=d,e[11]=m):m=e[11];const c=ke(m);let p;e[12]!==w||e[13]!==n||e[14]!==c||e[15]!==l||e[16]!==h||e[17]!==N?(p=async()=>{const b=await be({connectionId:n,orgId:l,orgSlug:h,persistFallback:A=>w.update.mutateAsync({id:n,data:{connection_token:A}}).then(Ve)});if(b.ran&&!b.ok)throw new Error(b.error??"no token received");const _=new URL(`/api/${h}/mcp/${n}`,window.location.origin);await N.invalidateQueries({queryKey:se.isMCPAuthenticated(_.href,null)}),await N.invalidateQueries({queryKey:se.mcpClientPrefix()}),await c.refetch()},e[12]=w,e[13]=n,e[14]=c,e[15]=l,e[16]=h,e[17]=N,e[18]=p):p=e[18];let g;e[19]!==s?(g=b=>{re.error(s("common.githubRepoPicker.failedReconnect",{error:b instanceof Error?b.message:s("common.githubRepoPicker.unknownError")}))},e[19]=s,e[20]=g):g=e[20];let j;e[21]!==p||e[22]!==g?(j={mutationFn:p,onError:g},e[21]=p,e[22]=g,e[23]=j):j=e[23];const x=ge(j);if(c.isLoading){let b;return e[24]===Symbol.for("react.memo_cache_sentinel")?(b=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(ee,{size:18,className:"animate-spin text-muted-foreground"})}),e[24]=b):b=e[24],b}if(c.isError){let b;e[25]!==s?(b=s("common.githubRepoPicker.failedLoadAccounts"),e[25]=s,e[26]=b):b=e[26];let _;e[27]!==b?(_=t.jsx("p",{className:"text-sm text-destructive",children:b}),e[27]=b,e[28]=_):_=e[28];let A;e[29]!==s?(A=s("common.githubRepoPicker.connectionExpiredMessage"),e[29]=s,e[30]=A):A=e[30];let z;e[31]!==A?(z=t.jsx("p",{className:"text-xs text-muted-foreground max-w-[280px] leading-relaxed",children:A}),e[31]=A,e[32]=z):z=e[32];let L;e[33]!==x?(L=()=>x.mutate(),e[33]=x,e[34]=L):L=e[34];const H=x.isPending;let G;e[35]!==x.isPending?(G=x.isPending?t.jsx(ee,{size:14,className:"animate-spin"}):t.jsx(M,{className:"size-3.5"}),e[35]=x.isPending,e[36]=G):G=e[36];let O;e[37]!==s?(O=s("common.githubRepoPicker.reconnectGitHub"),e[37]=s,e[38]=O):O=e[38];let F;e[39]!==x.isPending||e[40]!==L||e[41]!==G||e[42]!==O?(F=t.jsxs(ce,{type:"button",variant:"outline",size:"sm",onClick:L,disabled:H,children:[G,O]}),e[39]=x.isPending,e[40]=L,e[41]=G,e[42]=O,e[43]=F):F=e[43];let $;return e[44]!==z||e[45]!==F||e[46]!==_?($=t.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-3 px-6 text-center",children:[_,z,F]}),e[44]=z,e[45]=F,e[46]=_,e[47]=$):$=e[47],$}const i=c.data;if(!i)return null;const v=i.appSlug?`https://github.com/apps/${i.appSlug}/installations/new`:"https://github.com/settings/installations";if(i.installations.length===0){let b;e[48]!==r||e[49]!==a||e[50]!==s?(b=a&&t.jsx("div",{className:"flex items-center gap-1 px-4 pt-3 pb-1 shrink-0",children:t.jsxs("button",{type:"button",onClick:r,className:"flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[t.jsx(de,{size:12}),s("common.githubRepoPicker.changeConnection")]})}),e[48]=r,e[49]=a,e[50]=s,e[51]=b):b=e[51];let _;e[52]===Symbol.for("react.memo_cache_sentinel")?(_=t.jsx("div",{className:"size-16 rounded-2xl bg-muted flex items-center justify-center",children:t.jsx(M,{className:"size-8 text-foreground"})}),e[52]=_):_=e[52];let A;e[53]===Symbol.for("react.memo_cache_sentinel")?(A=t.jsx("span",{className:"size-1.5 rounded-full bg-success"}),e[53]=A):A=e[53];let z;e[54]!==s?(z=s("common.githubRepoPicker.githubConnected"),e[54]=s,e[55]=z):z=e[55];let L;e[56]!==z?(L=t.jsxs("div",{className:"mt-4 flex items-center gap-1.5 text-xs font-medium text-success",children:[A,z]}),e[56]=z,e[57]=L):L=e[57];let H;e[58]!==s?(H=s("common.githubRepoPicker.setupRepositoriesTitle"),e[58]=s,e[59]=H):H=e[59];let G;e[60]!==H?(G=t.jsx("h2",{className:"mt-2 text-base font-semibold text-foreground",children:H}),e[60]=H,e[61]=G):G=e[61];let O;e[62]!==s?(O=s("common.githubRepoPicker.noRepositoriesShared"),e[62]=s,e[63]=O):O=e[63];let F;e[64]!==O?(F=t.jsx("p",{className:"mt-1.5 max-w-[360px] text-xs leading-relaxed text-muted-foreground",children:O}),e[64]=O,e[65]=F):F=e[65];let $;e[66]!==s?($=s("common.githubRepoPicker.chooseRepositories"),e[66]=s,e[67]=$):$=e[67];let ie;e[68]===Symbol.for("react.memo_cache_sentinel")?(ie=t.jsx(ze,{size:14}),e[68]=ie):ie=e[68];let Q;e[69]!==v||e[70]!==$?(Q=t.jsx(ce,{asChild:!0,size:"sm",children:t.jsxs("a",{href:v,target:"_blank",rel:"noopener noreferrer",children:[$,ie]})}),e[69]=v,e[70]=$,e[71]=Q):Q=e[71];let B;e[72]!==c?(B=()=>{c.refetch()},e[72]=c,e[73]=B):B=e[73];const je=c.isFetching;let V;e[74]!==c.isFetching?(V=c.isFetching&&t.jsx(ee,{size:14,className:"animate-spin"}),e[74]=c.isFetching,e[75]=V):V=e[75];let K;e[76]!==s?(K=s("common.githubRepoPicker.checkAgain"),e[76]=s,e[77]=K):K=e[77];let J;e[78]!==c.isFetching||e[79]!==B||e[80]!==V||e[81]!==K?(J=t.jsxs(ce,{type:"button",variant:"outline",size:"sm",onClick:B,disabled:je,children:[V,K]}),e[78]=c.isFetching,e[79]=B,e[80]=V,e[81]=K,e[82]=J):J=e[82];let W;e[83]!==Q||e[84]!==J?(W=t.jsxs("div",{className:"mt-5 flex items-center gap-2",children:[Q,J]}),e[83]=Q,e[84]=J,e[85]=W):W=e[85];let Y;e[86]!==s?(Y=s("common.githubRepoPicker.repositoryAccessNote"),e[86]=s,e[87]=Y):Y=e[87];let X;e[88]!==Y?(X=t.jsx("p",{className:"mt-4 max-w-[360px] rounded-lg bg-muted/50 px-3 py-2 text-xs leading-relaxed text-muted-foreground",children:Y}),e[88]=Y,e[89]=X):X=e[89];let Z;e[90]!==L||e[91]!==G||e[92]!==F||e[93]!==W||e[94]!==X?(Z=t.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center px-8 py-6 text-center",children:[_,L,G,F,W,X]}),e[90]=L,e[91]=G,e[92]=F,e[93]=W,e[94]=X,e[95]=Z):Z=e[95];let oe;return e[96]!==Z||e[97]!==b?(oe=t.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[b,Z]}),e[96]=Z,e[97]=b,e[98]=oe):oe=e[98],oe}let C;e[99]!==r||e[100]!==a||e[101]!==s?(C=a&&t.jsx("div",{className:"flex items-center gap-1 px-4 pt-3 pb-1 shrink-0",children:t.jsxs("button",{type:"button",onClick:r,className:"flex items-center gap-1 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[t.jsx(de,{size:12}),s("common.githubRepoPicker.changeConnection")]})}),e[99]=r,e[100]=a,e[101]=s,e[102]=C):C=e[102];let S;if(e[103]!==i.installations||e[104]!==o||e[105]!==s){let b;e[107]!==o||e[108]!==s?(b=_=>t.jsxs("button",{type:"button",onClick:()=>o(_),className:"w-full flex items-center gap-3 px-4 py-3 hover:bg-accent transition-colors text-left group",children:[t.jsx("img",{src:_.avatarUrl,alt:_.login,className:"size-7 rounded-full shrink-0 ring-1 ring-border"}),t.jsxs("div",{className:"flex flex-col min-w-0 flex-1",children:[t.jsx("span",{className:"text-sm font-medium leading-none",children:_.login}),_.type==="User"&&t.jsx("span",{className:"text-xs text-muted-foreground mt-1",children:s("common.githubRepoPicker.personalAccount")})]}),t.jsxs("span",{className:"text-xs text-muted-foreground opacity-0 group-hover:opacity-100 transition-opacity shrink-0",children:[s("common.githubRepoPicker.select")," →"]})]},_.installationId),e[107]=o,e[108]=s,e[109]=b):b=e[109],S=i.installations.map(b),e[103]=i.installations,e[104]=o,e[105]=s,e[106]=S}else S=e[106];let R;e[110]!==S?(R=t.jsx("div",{className:"flex-1 overflow-y-auto overflow-x-hidden [scrollbar-gutter:stable]",children:S}),e[110]=S,e[111]=R):R=e[111];let P;e[112]!==s?(P=s("common.githubRepoPicker.accountNotListed"),e[112]=s,e[113]=P):P=e[113];let I;e[114]!==s?(I=s("common.githubRepoPicker.installGitHubApp"),e[114]=s,e[115]=I):I=e[115];let T;e[116]!==I?(T=t.jsx("span",{className:"underline underline-offset-2",children:I}),e[116]=I,e[117]=T):T=e[117];let E;e[118]!==v||e[119]!==P||e[120]!==T?(E=t.jsx("div",{className:"px-4 py-3 border-t border-border shrink-0",children:t.jsxs("a",{href:v,target:"_blank",rel:"noopener noreferrer",className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:[P," ",T]})}),e[118]=v,e[119]=P,e[120]=T,e[121]=E):E=e[121];let U;return e[122]!==R||e[123]!==E||e[124]!==C?(U=t.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[C,R,E]}),e[122]=R,e[123]=E,e[124]=C,e[125]=U):U=e[125],U}function Ve(){}function Ke(k){const e=q.c(23),{connectionId:n,orgId:l,orgSlug:h,installation:o,onSelectRepo:a,isSaving:r}=k,s=te(),[u,y]=D.useState(""),N=Te(u,300),w=D.useDeferredValue(N),f=u!==w;let d;e[0]!==s?(d=s("common.githubRepoPicker.searchRepositories"),e[0]=s,e[1]=d):d=e[1];let m;e[2]!==f||e[3]!==u||e[4]!==d?(m=t.jsx(_e,{placeholder:d,value:u,onChange:y,isSearching:f}),e[2]=f,e[3]=u,e[4]=d,e[5]=m):m=e[5];const c=f?"opacity-40":"opacity-100";let p;e[6]!==c?(p=ue("flex-1 overflow-hidden flex flex-col transition-opacity duration-150",c),e[6]=c,e[7]=p):p=e[7];let g;e[8]===Symbol.for("react.memo_cache_sentinel")?(g=t.jsx("div",{className:"flex-1 flex items-center justify-center",children:t.jsx(ee,{size:18,className:"animate-spin text-muted-foreground"})}),e[8]=g):g=e[8];let j;e[9]!==n||e[10]!==w||e[11]!==o||e[12]!==r||e[13]!==a||e[14]!==l||e[15]!==h?(j=t.jsx(D.Suspense,{fallback:g,children:t.jsx(Je,{connectionId:n,orgId:l,orgSlug:h,installation:o,query:w,onSelectRepo:a,isSaving:r})}),e[9]=n,e[10]=w,e[11]=o,e[12]=r,e[13]=a,e[14]=l,e[15]=h,e[16]=j):j=e[16];let x;e[17]!==p||e[18]!==j?(x=t.jsx("div",{className:p,children:j}),e[17]=p,e[18]=j,e[19]=x):x=e[19];let i;return e[20]!==m||e[21]!==x?(i=t.jsxs("div",{className:"flex-1 flex flex-col overflow-hidden",children:[m,x]}),e[20]=m,e[21]=x,e[22]=i):i=e[22],i}function Je(k){const e=q.c(36),{connectionId:n,orgId:l,orgSlug:h,installation:o,query:a,onSelectRepo:r,isSaving:s}=k,u=te();let y;e[0]!==n||e[1]!==l||e[2]!==h?(y={connectionId:n,orgId:l,orgSlug:h},e[0]=n,e[1]=l,e[2]=h,e[3]=y):y=e[3];const N=ne(y),w=o.type==="User"?"user":"org",f=a?`${w}:${o.login} ${a} in:name`:`${w}:${o.login}`;let d;e[4]!==n||e[5]!==o.login||e[6]!==l||e[7]!==a?(d=se.githubOrgRepos(l,n,o.login,a),e[4]=n,e[5]=o.login,e[6]=l,e[7]=a,e[8]=d):d=e[8];let m;e[9]!==N||e[10]!==f?(m=async x=>{const{signal:i}=x,C=(await N.callTool({name:"search_repositories",arguments:{query:f,page:1,perPage:30}},void 0,{signal:i})).content?.[0]?.text;if(!C)throw new Error("No response from search_repositories");return(JSON.parse(C).items??[]).map(We)},e[9]=N,e[10]=f,e[11]=m):m=e[11];let c;e[12]!==d||e[13]!==m?(c={queryKey:d,queryFn:m},e[12]=d,e[13]=m,e[14]=c):c=e[14];const{data:p}=Ce(c);if(p.length===0){let x;e[15]!==u?(x=u("common.githubRepoPicker.noRepositoriesFound"),e[15]=u,e[16]=x):x=e[16];let i;e[17]!==x?(i=t.jsx("p",{className:"text-sm text-muted-foreground",children:x}),e[17]=x,e[18]=i):i=e[18];let v;e[19]!==a||e[20]!==u?(v=a&&t.jsx("p",{className:"text-xs text-muted-foreground/60",children:u("common.githubRepoPicker.tryDifferentSearchTerm")}),e[19]=a,e[20]=u,e[21]=v):v=e[21];let C;return e[22]!==i||e[23]!==v?(C=t.jsxs("div",{className:"flex-1 flex flex-col items-center justify-center gap-1",children:[i,v]}),e[22]=i,e[23]=v,e[24]=C):C=e[24],C}let g;if(e[25]!==s||e[26]!==r||e[27]!==p||e[28]!==u){let x;e[30]!==s||e[31]!==r||e[32]!==u?(x=i=>t.jsxs("button",{type:"button",onClick:()=>r(i),disabled:s,className:"flex items-start gap-3 px-4 py-3 hover:bg-accent transition-colors text-left disabled:opacity-50 disabled:cursor-not-allowed",children:[t.jsx(M,{className:"size-4 text-muted-foreground mt-0.5 shrink-0"}),t.jsx("div",{className:"flex items-center gap-2 min-w-0 flex-1",children:t.jsx("span",{className:"text-sm font-medium truncate",children:i.name})}),t.jsxs("span",{className:"flex items-center gap-1 text-xs font-medium text-muted-foreground border border-border rounded px-1.5 py-0.5 shrink-0 leading-none",children:[i.private?t.jsx(Re,{size:10}):t.jsx(Le,{size:10}),i.private?u("common.githubRepoPicker.private"):u("common.githubRepoPicker.public")]})]},i.fullName),e[30]=s,e[31]=r,e[32]=u,e[33]=x):x=e[33],g=p.map(x),e[25]=s,e[26]=r,e[27]=p,e[28]=u,e[29]=g}else g=e[29];let j;return e[34]!==g?(j=t.jsx("div",{className:"flex-1 overflow-y-auto overflow-x-hidden flex flex-col [scrollbar-gutter:stable]",children:g}),e[34]=g,e[35]=j):j=e[35],j}function We(k){return{name:k.name,fullName:k.full_name,owner:k.full_name.split("/")[0]??"",url:k.html_url,private:k.private,description:k.description,updatedAt:k.updated_at}}function ae(k){const e=q.c(51),{status:n,error:l,retry:h}=k,o=te();if(n==="error"){let C;e[0]===Symbol.for("react.memo_cache_sentinel")?(C=t.jsx("div",{className:"size-10 rounded-full bg-destructive/10 flex items-center justify-center",children:t.jsx(M,{className:"size-5 text-destructive"})}),e[0]=C):C=e[0];let S;e[1]!==o?(S=o("common.githubRepoPicker.connectionFailed"),e[1]=o,e[2]=S):S=e[2];let R;e[3]!==S?(R=t.jsx("p",{className:"text-sm font-medium",children:S}),e[3]=S,e[4]=R):R=e[4];let P;e[5]!==l||e[6]!==o?(P=l??o("common.githubRepoPicker.somethingWentWrong"),e[5]=l,e[6]=o,e[7]=P):P=e[7];let I;e[8]!==P?(I=t.jsx("p",{className:"text-xs text-muted-foreground max-w-[260px] leading-relaxed",children:P}),e[8]=P,e[9]=I):I=e[9];let T;e[10]!==R||e[11]!==I?(T=t.jsxs("div",{className:"flex flex-col items-center gap-1 text-center",children:[R,I]}),e[10]=R,e[11]=I,e[12]=T):T=e[12];let E;e[13]!==o?(E=o("common.githubRepoPicker.tryAgain"),e[13]=o,e[14]=E):E=e[14];let U;e[15]!==h||e[16]!==E?(U=t.jsx("button",{type:"button",onClick:h,className:"text-xs font-medium text-foreground border border-border rounded-md px-3 py-1.5 hover:bg-accent transition-colors",children:E}),e[15]=h,e[16]=E,e[17]=U):U=e[17];let b;return e[18]!==T||e[19]!==U?(b=t.jsxs("div",{className:"flex flex-col items-center gap-4 px-6 py-10",children:[C,T,U]}),e[18]=T,e[19]=U,e[20]=b):b=e[20],b}const a=n==="authenticating";let r;e[21]===Symbol.for("react.memo_cache_sentinel")?(r=t.jsx("div",{className:"size-10 rounded-full bg-muted flex items-center justify-center",children:t.jsx(M,{className:"size-5 text-foreground"})}),e[21]=r):r=e[21];let s;e[22]===Symbol.for("react.memo_cache_sentinel")?(s=t.jsxs("div",{className:"relative size-10",children:[r,t.jsx("div",{className:"absolute -bottom-0.5 -right-0.5 size-4 rounded-full bg-background flex items-center justify-center",children:t.jsx(ee,{size:12,className:"animate-spin text-muted-foreground"})})]}),e[22]=s):s=e[22];let u;e[23]!==a||e[24]!==o?(u=o(a?"common.githubRepoPicker.authenticatingGitHub":"common.githubRepoPicker.settingUpGitHub"),e[23]=a,e[24]=o,e[25]=u):u=e[25];let y;e[26]!==u?(y=t.jsx("p",{className:"text-sm font-medium",children:u}),e[26]=u,e[27]=y):y=e[27];let N;e[28]!==a||e[29]!==o?(N=o(a?"common.githubRepoPicker.completeOAuthFlow":"common.githubRepoPicker.installingGitHubConnection"),e[28]=a,e[29]=o,e[30]=N):N=e[30];let w;e[31]!==N?(w=t.jsx("p",{className:"text-xs text-muted-foreground",children:N}),e[31]=N,e[32]=w):w=e[32];let f;e[33]!==y||e[34]!==w?(f=t.jsxs("div",{className:"flex flex-col items-center gap-1 text-center",children:[y,w]}),e[33]=y,e[34]=w,e[35]=f):f=e[35];const d=a?"bg-muted-foreground/30":"bg-foreground animate-pulse";let m;e[36]!==d?(m=ue("size-1.5 rounded-full",d),e[36]=d,e[37]=m):m=e[37];let c;e[38]!==m?(c=t.jsx("span",{className:m}),e[38]=m,e[39]=c):c=e[39];const p=a?"bg-foreground animate-pulse":"bg-muted-foreground/30";let g;e[40]!==p?(g=ue("size-1.5 rounded-full",p),e[40]=p,e[41]=g):g=e[41];let j;e[42]!==g?(j=t.jsx("span",{className:g}),e[42]=g,e[43]=j):j=e[43];let x;e[44]===Symbol.for("react.memo_cache_sentinel")?(x=t.jsx("span",{className:"size-1.5 rounded-full bg-muted-foreground/30"}),e[44]=x):x=e[44];let i;e[45]!==c||e[46]!==j?(i=t.jsxs("div",{className:"flex items-center gap-1.5",children:[c,j,x]}),e[45]=c,e[46]=j,e[47]=i):i=e[47];let v;return e[48]!==i||e[49]!==f?(v=t.jsxs("div",{className:"flex flex-col items-center gap-4 px-6 py-10",children:[s,f,i]}),e[48]=i,e[49]=f,e[50]=v):v=e[50],v}export{M as G,dt as a,qe as b,De as u};
|