decocms 4.3.0 → 4.4.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-DC-zDzV-.js → AlertCircle-CM6D9elR.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-OJZisFPQ.js → ArrowUpRight-Kqa5fEjt.js} +1 -1
- package/dist/client/assets/{CheckCircle-Cgnheu-R.js → CheckCircle-8DKF8Yx5.js} +1 -1
- package/dist/client/assets/{ChevronDown-DyHvxYlc.js → ChevronDown-DGuR7uUZ.js} +1 -1
- package/dist/client/assets/{ChevronRight-Cpfh3gza.js → ChevronRight-BswIt99A.js} +1 -1
- package/dist/client/assets/{ChevronUp-DBpw6M-L.js → ChevronUp-DSdWQUoR.js} +1 -1
- package/dist/client/assets/{DotsVertical-5jSu3d1f.js → DotsVertical-DSosYpI1.js} +1 -1
- package/dist/client/assets/{Eye-bojNLUjA.js → Eye-Dn1AISrx.js} +1 -1
- package/dist/client/assets/{FilterLines-CFl65nng.js → FilterLines-CmWI-8pG.js} +1 -1
- package/dist/client/assets/{Globe01-CyfpzbeQ.js → Globe01-CcXDI4W7.js} +1 -1
- package/dist/client/assets/{Globe04-DFpdKSRI.js → Globe04-B9Btoycr.js} +1 -1
- package/dist/client/assets/{HardDrive-B1mtnaeA.js → HardDrive-BqXWgcmp.js} +1 -1
- package/dist/client/assets/{Key01-CwrJlZo0.js → Key01-F6-x7vNY.js} +1 -1
- package/dist/client/assets/{LayoutLeft-fsm0LcB8.js → LayoutLeft-DpqtgcH3.js} +1 -1
- package/dist/client/assets/{LinkExternal01-BHwVyDja.js → LinkExternal01-DOU6-C1w.js} +1 -1
- package/dist/client/assets/{Monitor01-ChA6ov2I.js → Monitor01-SkSQUhmT.js} +1 -1
- package/dist/client/assets/{Palette-DusYqL0W.js → Palette-CnoObDqZ.js} +1 -1
- package/dist/client/assets/{Play-CnXG8qqP.js → Play-DzGcMRv3.js} +1 -1
- package/dist/client/assets/{Plus-eGxBB1d8.js → Plus-DDlkoJBs.js} +1 -1
- package/dist/client/assets/{SearchLg-CDpA_lbT.js → SearchLg-CdT_y89m.js} +1 -1
- package/dist/client/assets/{SearchMd-ujiTPCmg.js → SearchMd-UY2xUREv.js} +1 -1
- package/dist/client/assets/{Settings02-BcAnTzm5.js → Settings02-QyYEyYyn.js} +1 -1
- package/dist/client/assets/{Shield01-ZxmFmrvL.js → Shield01-V8b5EFFL.js} +1 -1
- package/dist/client/assets/{Star01-DHEkWySe.js → Star01-GVe4t6O1.js} +1 -1
- package/dist/client/assets/{Stars01-BdCaKqhF.js → Stars01-BIVPeWqS.js} +1 -1
- package/dist/client/assets/{Stars02-qnq-_X9g.js → Stars02-DVZm69DV.js} +1 -1
- package/dist/client/assets/{Sun-lTiqxOzH.js → Sun-B2ndPBZP.js} +1 -1
- package/dist/client/assets/{SwitchHorizontal01-DAZXInW8.js → SwitchHorizontal01-BL4xnvxO.js} +1 -1
- package/dist/client/assets/{Tool01-CvnpFI53.js → Tool01-Ci5EQ1tM.js} +1 -1
- package/dist/client/assets/{Trash01-ByxlxTiZ.js → Trash01-Cc007jho.js} +1 -1
- package/dist/client/assets/{Upload01-Z77n1bV8.js → Upload01-DB9meUjO.js} +1 -1
- package/dist/client/assets/{User01-COQtf360.js → User01-Dz-_mMMJ.js} +1 -1
- package/dist/client/assets/{Users01-wtRJYQKX.js → Users01-Ctg0iuAM.js} +1 -1
- package/dist/client/assets/{Users03-DknrDMtT.js → Users03-BazvU-rC.js} +1 -1
- package/dist/client/assets/{X-DrMVHLcw.js → X-_dGiBqSn.js} +1 -1
- package/dist/client/assets/{XCircle-Ct0eqqsw.js → XCircle-CmN6DNsv.js} +1 -1
- package/dist/client/assets/{XClose-BaZ908gw.js → XClose-BpreRuFP.js} +1 -1
- package/dist/client/assets/{Zap-wRIFSWIq.js → Zap-CWxLsQ6b.js} +1 -1
- package/dist/client/assets/{ZapSquare-PMiGcZpW.js → ZapSquare-D5x1wm0t.js} +1 -1
- package/dist/client/assets/{ZoomOut-6ix2H92j.js → ZoomOut-C0bVPfpC.js} +1 -1
- package/dist/client/assets/{access-gate-D6dGDGRI.js → access-gate-CpQ3bOMg.js} +1 -1
- package/dist/client/assets/{add-section-modal-DOhGqRCL.js → add-section-modal-D22Rp_ry.js} +1 -1
- package/dist/client/assets/agent-icon-BjxA8YR3.js +1 -0
- package/dist/client/assets/agents-list-C17XwfcN.js +1 -0
- package/dist/client/assets/{ai-providers-Crp7kidL.js → ai-providers-DNjwL7U0.js} +1 -1
- package/dist/client/assets/{alert-CKj_5smu.js → alert-CTzYtGwN.js} +1 -1
- package/dist/client/assets/{alert-dialog-CYizItFp.js → alert-dialog-DMWXmTGp.js} +2 -2
- package/dist/client/assets/app-editor-uAXMllzs.js +1 -0
- package/dist/client/assets/{auth-Bej0Tx2Y.js → auth-DraSXrC6.js} +1 -1
- package/dist/client/assets/{auth-catchall-CmNVpp-8.js → auth-catchall--3ZAEbBd.js} +1 -1
- package/dist/client/assets/{auth-entry-PwLVm-jX.js → auth-entry-DRJ-aW15.js} +1 -1
- package/dist/client/assets/{auth-split-layout-5YwPgbAb.js → auth-split-layout-B77S9w6i.js} +1 -1
- package/dist/client/assets/{authenticate-and-persist-oauth-DoPUB_Bh.js → authenticate-and-persist-oauth-HBteAcVm.js} +1 -1
- package/dist/client/assets/{automation-list-row-CsTyBm4M.js → automation-list-row-NZNZGrlr.js} +1 -1
- package/dist/client/assets/automation-runs-BoQeZ1gh.js +1 -0
- package/dist/client/assets/automations-bd5MK3eJ.js +1 -0
- package/dist/client/assets/{avatar-CJP1BOq4.js → avatar-COMRxqae.js} +1 -1
- package/dist/client/assets/{badge-DhpSM7g_.js → badge-B1dPfLuK.js} +1 -1
- package/dist/client/assets/{block-document-B2vhG8Ii.js → block-document-B6TgjyKW.js} +2 -2
- package/dist/client/assets/{brand-context-BRpHgxfT.js → brand-context-DGv078pp.js} +1 -1
- package/dist/client/assets/{buckets-DDR0G33f.js → buckets-LnyV7EWC.js} +1 -1
- package/dist/client/assets/bulk-category-panel-BP0Mtj3P.js +1 -0
- package/dist/client/assets/{capability-load-error-CCgNL5xi.js → capability-load-error-WTr85D-I.js} +1 -1
- package/dist/client/assets/{card-BFb5m83e.js → card-Bys-wDTW.js} +1 -1
- package/dist/client/assets/category-editor-Cm1sAVk_.js +1 -0
- package/dist/client/assets/{chat-context-n9syhvq-.js → chat-context-huSCeR82.js} +4 -4
- package/dist/client/assets/{checkbox-DmOzmKLP.js → checkbox-BIDlFz_0.js} +1 -1
- package/dist/client/assets/{cli-auth-success-BVPtMYcv.js → cli-auth-success-DJ5lbMQC.js} +1 -1
- package/dist/client/assets/collection-detail-UTQtN0-J.js +1 -0
- package/dist/client/assets/{collection-display-button-Bf9dlJRy.js → collection-display-button-Bnm_JutP.js} +1 -1
- package/dist/client/assets/{collection-search-8iNXnGlM.js → collection-search-CKMDHnku.js} +1 -1
- package/dist/client/assets/{collection-tabs-KA2be3wH.js → collection-tabs-CWrBkWhe.js} +1 -1
- package/dist/client/assets/{command-C34397s2.js → command-DrgMAh0a.js} +1 -1
- package/dist/client/assets/commerce-onboarding-B8pBrcvE.js +1 -0
- package/dist/client/assets/{connect-desktop-dialog-Brra3cMC.js → connect-desktop-dialog-CvuFk-NY.js} +1 -1
- package/dist/client/assets/{connection-card-C6NYo4Gp.js → connection-card-DIh-SIqT.js} +1 -1
- package/dist/client/assets/connection-detail-CWog7XFK.js +1 -0
- package/dist/client/assets/{connection-form-helpers-CwZx7WkC.js → connection-form-helpers-DV-bwjt7.js} +1 -1
- package/dist/client/assets/connections-BkvcH3F-.js +1 -0
- package/dist/client/assets/{context-menu-BW_OZBmV.js → context-menu-BPHfkJEs.js} +1 -1
- package/dist/client/assets/{decopilot-BItqS11w.js → decopilot-BxOK0Z8W.js} +1 -1
- package/dist/client/assets/{decopilot-sse-pool-CvYk1hkc.js → decopilot-sse-pool-Chmwc1_x.js} +1 -1
- package/dist/client/assets/{dialog-BAqFyO8a.js → dialog-o7scRbG9.js} +1 -1
- package/dist/client/assets/{domain-settings-r_E3rHsG.js → domain-settings-DIv14WFm.js} +1 -1
- package/dist/client/assets/{drawer-CFkqEC3w.js → drawer-B-Vy7tMY.js} +1 -1
- package/dist/client/assets/{dropdown-menu-C62KNjwK.js → dropdown-menu-D-VNET4I.js} +1 -1
- package/dist/client/assets/{empty-state-Sh_DuDcy.js → empty-state-1p_UpPHY.js} +1 -1
- package/dist/client/assets/{extract-connection-data-D6bQrejT.js → extract-connection-data-BVX9Eneo.js} +1 -1
- package/dist/client/assets/file-explorer-Bh9kp1sm.js +2 -0
- package/dist/client/assets/{file-type-icon-DPWxBpNL.js → file-type-icon-LHBbJJTG.js} +1 -1
- package/dist/client/assets/{files-B9ekmQa_.js → files-Bw3w16xX.js} +1 -1
- package/dist/client/assets/{form-DGE2mWLL.js → form-DX8cQ4SA.js} +1 -1
- package/dist/client/assets/{general-BMDKtyZB.js → general-DzJAxzRR.js} +1 -1
- package/dist/client/assets/{github-repo-picker-B5tZucJa.js → github-repo-picker-ZmfhFTO6.js} +1 -1
- package/dist/client/assets/{hooks-CUSV6Enf.js → hooks-BUt6AoQh.js} +6 -6
- package/dist/client/assets/{import-from-deco-dialog-M3CP3Gmn.js → import-from-deco-dialog-DZhtwoRn.js} +1 -1
- package/dist/client/assets/{index-Bb-tYGNK.js → index-BBTFoidO.js} +1 -1
- package/dist/client/assets/{index-CkTyYAY1.js → index-BPD9Iyv5.js} +1 -1
- package/dist/client/assets/index-BcXb7VeZ.css +1 -0
- package/dist/client/assets/index-CAV1BNai.js +173 -0
- package/dist/client/assets/{index-mEtg0zTM.js → index-CL3KBg-D.js} +1 -1
- package/dist/client/assets/{index-CFiyU0D9.js → index-CXy6rN6i.js} +3 -3
- package/dist/client/assets/{index-DGzNvPy2.js → index-CjKis1yy.js} +1 -1
- package/dist/client/assets/{index-jBUpmiBg.js → index-Cod7u1PQ.js} +1 -1
- package/dist/client/assets/{index-CRxAjd1d.js → index-CpgVJVWB.js} +27 -27
- package/dist/client/assets/{index-B6hcksS9.js → index-DCwPnlYH.js} +1 -1
- package/dist/client/assets/index-DKs6HTlj.js +1 -0
- package/dist/client/assets/{index-Dj7TxcSd.js → index-Db3cPjnW.js} +2 -2
- package/dist/client/assets/index-DvDkdoxH.js +1 -0
- package/dist/client/assets/{index-hmJjUPum.js → index-NJ9aYDVC.js} +1 -1
- package/dist/client/assets/{index-DIBoN36v.js → index-VkScKLdP.js} +1 -1
- package/dist/client/assets/{index-redirect-C9Kkmz45.js → index-redirect-B6MtHNAq.js} +1 -1
- package/dist/client/assets/{input-BwRH-Gsz.js → input-BlhkemhH.js} +1 -1
- package/dist/client/assets/{integration-icon-LQhkkaLl.js → integration-icon-BSHD1Ijr.js} +1 -1
- package/dist/client/assets/{label-CdBSUJpf.js → label-CL8Vh65B.js} +1 -1
- package/dist/client/assets/{login-d0UWtw9N.js → login-B4UwjrwL.js} +1 -1
- package/dist/client/assets/{mcp-oauth-IblqU9XT.js → mcp-oauth-CXj7zg3h.js} +1 -1
- package/dist/client/assets/{members-Bpdrl2e9.js → members-CZJJNFCT.js} +1 -1
- package/dist/client/assets/{monaco-editor-5JIc-lnc.js → monaco-editor-DBScTPL_.js} +2 -2
- package/dist/client/assets/{monitoring-stats-row-DPsQ-OAn.js → monitoring-stats-row-DS-oLjL7.js} +1 -1
- package/dist/client/assets/{oauth-callback-B1AvYYRn.js → oauth-callback-DmaJ1bda.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-BtGHmjpp.js → oauth-callback-ai-provider-BQMnSXh3.js} +1 -1
- package/dist/client/assets/{onboarding-DfUmI7F5.js → onboarding-Byb6DxyK.js} +1 -1
- package/dist/client/assets/{org-install-CpJAFt1s.js → org-install-DE37K5KN.js} +1 -1
- package/dist/client/assets/{org-layout-BsuFzdH_.js → org-layout-des0Y5a9.js} +1 -1
- package/dist/client/assets/{organization-choice-DrxWffZp.js → organization-choice-COkZ5W_o.js} +1 -1
- package/dist/client/assets/{page-seo-form-BLqpZnj6.js → page-seo-form-BcrUATEU.js} +1 -1
- package/dist/client/assets/page-seo-sheet-D1Z6hzyV.js +1 -0
- package/dist/client/assets/popover-SD8gnUXm.js +1 -0
- package/dist/client/assets/post-editor-BDlfII0z.js +1 -0
- package/dist/client/assets/{primitives-BF1opf4F.js → primitives-CVsZF3ex.js} +1 -1
- package/dist/client/assets/{profile-C8meo3ry.js → profile-DBUkydtR.js} +1 -1
- package/dist/client/assets/project-app-view-Bk8oTYIF.js +1 -0
- package/dist/client/assets/record-editor-DL8IQ3xy.js +1 -0
- package/dist/client/assets/registry-Bd0JPSYO.js +2 -0
- package/dist/client/assets/{registry-layout-C4UMhzml.js → registry-layout-BL9jjFNp.js} +1 -1
- package/dist/client/assets/{require-capability--mIKExbX.js → require-capability-CLQ4GBGj.js} +1 -1
- package/dist/client/assets/{required-auth-layout-DDJmFi3U.js → required-auth-layout-BzYoSj-D.js} +1 -1
- package/dist/client/assets/{reset-password-CuNa1ife.js → reset-password-C3Zmx-Z-.js} +1 -1
- package/dist/client/assets/roles-RwbAlbhC.js +1 -0
- package/dist/client/assets/{scroll-area-BM-54tW1.js → scroll-area-DgIklajW.js} +54 -54
- package/dist/client/assets/{search-input-M7ubuBMG.js → search-input-BwHA7yOt.js} +1 -1
- package/dist/client/assets/{secrets-BN1JMG5V.js → secrets-Cu_Gp7gT.js} +1 -1
- package/dist/client/assets/{sections-editor-Buouhx1S.js → sections-editor-CaNl1tLu.js} +2 -2
- package/dist/client/assets/select-DM3pFFAV.js +1 -0
- package/dist/client/assets/{select-model-Cz9R_UN3.js → select-model-C1odlJ1X.js} +1 -1
- package/dist/client/assets/seo-editor-C28ZayGa.js +1 -0
- package/dist/client/assets/settings-layout-C_nc5y3_.js +1 -0
- package/dist/client/assets/{settings-section-MeT61nuY.js → settings-section-6b9w_VoZ.js} +1 -1
- package/dist/client/assets/{sheet-DyU03ddw.js → sheet-BJF6qruz.js} +1 -1
- package/dist/client/assets/shell-controls-C9tE75mS.js +1 -0
- package/dist/client/assets/{shell-layout-Nyz7GHu7.js → shell-layout-gi6XYvgE.js} +1 -1
- package/dist/client/assets/shell-route-loading-Agan4lHM.js +1 -0
- package/dist/client/assets/{sidebar-BNrafefE.js → sidebar-BD77ZDQ1.js} +1 -1
- package/dist/client/assets/{skeleton-B0I93PJP.js → skeleton-CuVDGSZE.js} +1 -1
- package/dist/client/assets/{sortable.esm-MymOIPKk.js → sortable.esm-DpWg8tde.js} +2 -2
- package/dist/client/assets/{sso-CfyYgWAs.js → sso-B9XBpXX9.js} +1 -1
- package/dist/client/assets/{store-T7GJ1SPI.js → store-Il1Qjdpz.js} +1 -1
- package/dist/client/assets/store-registry-BN4Ygwm2.js +2 -0
- package/dist/client/assets/{studio-tools-CNO5iCKk.js → studio-tools-C-Eel15b.js} +1 -1
- package/dist/client/assets/{switch-CCMIMmOF.js → switch-DWXEjjcR.js} +1 -1
- package/dist/client/assets/{tab-id-BptcWVWa.js → tab-id-AX1D_RMI.js} +1 -1
- package/dist/client/assets/{table-DeNuxLMl.js → table-sXVKQ5vt.js} +1 -1
- package/dist/client/assets/{tabs-Ca0vDJqc.js → tabs-BeXAqCdo.js} +1 -1
- package/dist/client/assets/{task-status-B3nPzwP7.js → task-status-CaQuE65s.js} +1 -1
- package/dist/client/assets/{textarea-BYT525JZ.js → textarea-C30KYfio.js} +1 -1
- package/dist/client/assets/{toggle-group-9TrYMc69.js → toggle-group-B6oTaI1f.js} +1 -1
- package/dist/client/assets/toolbar-DuZrnshW.js +1 -0
- package/dist/client/assets/toolbar-icon-button-CG8gWMNZ.js +1 -0
- package/dist/client/assets/{tools-list-uWC3Ij6C.js → tools-list-BSe55AC9.js} +1 -1
- package/dist/client/assets/tooltip-BRQCINXK.js +1 -0
- package/dist/client/assets/{types-C7syjwde.js → types-ywta9rZ4.js} +4 -4
- package/dist/client/assets/{use-ai-providers-C7KmiuqP.js → use-ai-providers-CpUPA2Pj.js} +1 -1
- package/dist/client/assets/{use-automations-RMjkwkxX.js → use-automations-BSn8_z4p.js} +1 -1
- package/dist/client/assets/{use-capability-C6Dwri-U.js → use-capability-AkUZCu97.js} +1 -1
- package/dist/client/assets/{use-clock-tick-BcxdOJLx.js → use-clock-tick-7J301cSN.js} +1 -1
- package/dist/client/assets/{use-collections-B4atckEK.js → use-collections-BhzLncHB.js} +1 -1
- package/dist/client/assets/{use-connection-Dz29RF9P.js → use-connection-CSQdDXlG.js} +1 -1
- package/dist/client/assets/{use-copy-Xy0buIqd.js → use-copy-3aLRhzTZ.js} +1 -1
- package/dist/client/assets/use-create-virtual-mcp-ClyuqzV0.js +1 -0
- package/dist/client/assets/{use-debounced-autosave-B4mbwJnu.js → use-debounced-autosave-DwyO4Yri.js} +1 -1
- package/dist/client/assets/{use-debounced-value-C6U3mliE.js → use-debounced-value-BGsbVLHA.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-CpQNzv3e.js → use-decopilot-events-B8-U5_6h.js} +1 -1
- package/dist/client/assets/{use-delete-connection-CqeuxO_6.js → use-delete-connection-yP5RphYi.js} +1 -1
- package/dist/client/assets/{use-file-configs-CFCmr--W.js → use-file-configs-XF2AvMPs.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-BX1nHHVY.js → use-infinite-scroll-CkXtceVR.js} +1 -1
- package/dist/client/assets/{use-join-requests-j9WpmFq7.js → use-join-requests-mfteqXVe.js} +1 -1
- package/dist/client/assets/{use-mcp-client-xOK-OF8p.js → use-mcp-client-CRWIqSWI.js} +1 -1
- package/dist/client/assets/{use-mcp-prompts-Crr3H7P7.js → use-mcp-prompts-BV9cBymv.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-C8tMWwG9.js → use-mcp-tools-Dgj65Z69.js} +1 -1
- package/dist/client/assets/{use-members-BMNjJExY.js → use-members-BZOJ4ncQ.js} +1 -1
- package/dist/client/assets/{use-mobile-NlF-3RoP.js → use-mobile-DgvzRDzB.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-DZubxUSm.js → use-navigate-to-agent-DTqeD3lq.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-C_UJ3Vg_.js → use-org-auth-client-Dx974y4u.js} +1 -1
- package/dist/client/assets/{use-org-fs-DyK8omii.js → use-org-fs-DI1Q1Ycz.js} +1 -1
- package/dist/client/assets/{use-org-sso-DkqH8Zpz.js → use-org-sso-kfQLtl8D.js} +1 -1
- package/dist/client/assets/{use-organization-roles-Cu69Rnex.js → use-organization-roles-B2GmBYYT.js} +1 -1
- package/dist/client/assets/{use-organization-settings-DksiQdGc.js → use-organization-settings-ClL7mSbK.js} +1 -1
- package/dist/client/assets/{use-registry-connections-BOZLpkM5.js → use-registry-connections-DzyhBLO8.js} +1 -1
- package/dist/client/assets/{use-secrets-CLmhH-Rb.js → use-secrets-BX0N_3N-.js} +1 -1
- package/dist/client/assets/{use-status-sounds-DxV7deix.js → use-status-sounds-BsVH7G2F.js} +1 -1
- package/dist/client/assets/{use-view-mode-C2dllj6L.js → use-view-mode-D4v-Vh_n.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-2U_MnYnK.js → use-virtual-mcp-7AWl-thI.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-DbI8AV-k.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-DT-JxV4F.js +1 -0
- package/dist/client/assets/{useSuspenseQueries-Cysvk68n.js → useSuspenseQueries-D4Gfj0Tf.js} +1 -1
- package/dist/client/assets/variant-calendar-C9mxKuI5.js +1 -0
- package/dist/client/assets/{view-mode-toggle-4CQodGfa.js → view-mode-toggle-Dcs21C2T.js} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/server/cli.js +11 -2
- package/dist/server/server.js +1 -1
- package/package.json +1 -1
- package/dist/client/assets/ChevronLeft-dyRjFCmp.js +0 -1
- package/dist/client/assets/agent-icon-oDx9Z_Be.js +0 -1
- package/dist/client/assets/agents-list-BgSM_QG_.js +0 -1
- package/dist/client/assets/app-editor-Xoia35dq.js +0 -1
- package/dist/client/assets/automation-runs-B-dNDEWH.js +0 -1
- package/dist/client/assets/automations-D395202A.js +0 -1
- package/dist/client/assets/bulk-category-panel-CM1bMunr.js +0 -1
- package/dist/client/assets/category-editor-2T4Y_ABL.js +0 -1
- package/dist/client/assets/collection-detail-BQKV3UU7.js +0 -1
- package/dist/client/assets/commerce-onboarding-D2H83R0U.js +0 -1
- package/dist/client/assets/connection-detail-gJ5ITUXe.js +0 -1
- package/dist/client/assets/connections-CicrEJbU.js +0 -1
- package/dist/client/assets/file-explorer-C8pgfKCz.js +0 -2
- package/dist/client/assets/index-B2yJy2sB.js +0 -1
- package/dist/client/assets/index-BqKQnks_.css +0 -1
- package/dist/client/assets/index-DQnTjiix.js +0 -1
- package/dist/client/assets/index-D_S_Rq8A.js +0 -169
- package/dist/client/assets/page-seo-sheet-C7jjKuEW.js +0 -1
- package/dist/client/assets/popover-BXFiEQtN.js +0 -1
- package/dist/client/assets/post-editor-Tve7DmSa.js +0 -1
- package/dist/client/assets/preview-dialog-CQgf0QcR.js +0 -5
- package/dist/client/assets/project-app-view-BR2-hR46.js +0 -1
- package/dist/client/assets/record-editor-DbXO7U7E.js +0 -1
- package/dist/client/assets/registry-jjhvqeDq.js +0 -2
- package/dist/client/assets/roles-BMhGnq_F.js +0 -1
- package/dist/client/assets/select-C6v8Xcth.js +0 -1
- package/dist/client/assets/seo-editor-D9o3utSQ.js +0 -1
- package/dist/client/assets/settings-layout-CSaUQUXv.js +0 -1
- package/dist/client/assets/shell-controls-DtGb6E4l.js +0 -1
- package/dist/client/assets/shell-route-loading-BRcTX0VT.js +0 -1
- package/dist/client/assets/store-registry-B-YJeGRV.js +0 -2
- package/dist/client/assets/toolbar-p8VcpV1N.js +0 -1
- package/dist/client/assets/tooltip-DrpiSbRG.js +0 -1
- package/dist/client/assets/use-create-virtual-mcp-DVmI--_C.js +0 -1
- package/dist/client/assets/useInfiniteQuery-RUqqRph1.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-fRYRtDkY.js +0 -1
- package/dist/client/assets/variant-calendar-mZn_D1Zo.js +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{D as Lt,a as Tn,z as pr,p as vr,n as mr,j as i,B as Ye,t as Le,r as u,m as br,b as xr,i as It,v as J,K as ht,c as yr,C as wr,L as Cr,l as Sr,k as Dr,ah as z,an as ft}from"./index-CFiyU0D9.js";import{g as jr}from"./connection-slug-eyAPH6o3.js";import{u as _n,a as kn,g as Rr,C as Ut}from"./connection-card-C6NYo4Gp.js";import{C as Nr}from"./collection-search-8iNXnGlM.js";import{C as Ir}from"./collection-tabs-KA2be3wH.js";import{a as Ar,b as Er,e as Tr,g as _r}from"./extract-connection-data-D6bQrejT.js";import{e as Mn,d as On,c as Pn,a as Ln,b as kr,D as Mr}from"./dialog-BAqFyO8a.js";import{D as Or,a as Pr,c as Lr,b as Fr,d as zr,e as Br,f as $r}from"./drawer-CFkqEC3w.js";import{u as Vr}from"./use-mobile-NlF-3RoP.js";import{F as De,b as je,c as Re,d as Ne,e as Ie,a as fn}from"./form-DGE2mWLL.js";import{I as He}from"./input-BwRH-Gsz.js";import{d as Kr,b as Xr,c as Ur,S as Hr,a as ut}from"./select-C6v8Xcth.js";import{T as Yr}from"./textarea-BYT525JZ.js";import{b as Fn}from"./use-connection-Dz29RF9P.js";import{n as At,c as Ht}from"./XCircle-Ct0eqqsw.js";import{s as Yt}from"./Star01-DHEkWySe.js";import{a9 as Wr}from"./agent-icon-oDx9Z_Be.js";import{s as qr}from"./XClose-BaZ908gw.js";import{c as Gr,i as Dt,a as hn,E as Jr,p as Qr,b as Zr,d as eo}from"./connection-form-helpers-CwZx7WkC.js";import{u as gn}from"./use-infinite-scroll-BX1nHHVY.js";import{a as Wt}from"./authenticate-and-persist-oauth-DoPUB_Bh.js";import{B as jt}from"./badge-DhpSM7g_.js";import{T as qt,a as Gt,b as Jt}from"./tooltip-DrpiSbRG.js";import{u as to}from"./useSuspenseInfiniteQuery-fRYRtDkY.js";import{S as no,u as ro}from"./use-mcp-client-xOK-OF8p.js";import{i as pn}from"./ChevronUp-DBpw6M-L.js";import{s as oo}from"./Plus-eGxBB1d8.js";import{u as so}from"./studio-tools-CNO5iCKk.js";import{u as io}from"./use-ai-providers-C7KmiuqP.js";function sn(t){const e=t?.metadata?.githubRepo;if(!e?.url)return{status:"none"};const n=e.connectionId;return!!n&&!!t?.connections?.some(s=>s.connection_id===n)?{status:"attached",repo:e,connectionId:n}:!!n||e.installationId!=null?{status:"detached",repo:e}:{status:"public-clone",repo:e}}function ki(t){const e=sn(t);return e.status==="attached"||e.status==="public-clone"?e.repo:null}function Mi(t){if(typeof t!="object"||t===null)return!1;const n=t.githubRepo?.url;return typeof n=="string"&&n.length>0}function Oi(t){return sn(t).status==="attached"}function Pi(t){const e=sn(t).status;return e==="attached"||e==="detached"}function Li(t){const e=new Set;for(const n of t??[]){const r=n.metadata?.liveAgentId;typeof r=="string"&&r&&e.add(n.id)}return e}function Fi(t){const e=new Map,n=new Map;for(const r of t??[]){const o=r.metadata?.liveAgentId;typeof o=="string"&&o&&(n.set(r.id,o),e.set(o,r.id))}return{liveToDev:e,devToLive:n}}function zi(t,e){if(!t)return null;const n=t.metadata?.liveAgentId;if(typeof n=="string"&&n)return{mode:"dev",targetId:n};const r=(e??[]).find(o=>o.metadata?.liveAgentId===t.id);return r?{mode:"live",targetId:r.id}:null}function Bi(t){return t.online?t.capabilities.includes("claude-code")||t.capabilities.includes("codex"):!1}function ao({open:t,onOpenChange:e,onCreated:n}){const{org:r}=Lt(),{data:o}=Tn.useSession(),{stdioEnabled:s}=pr(),a=Vr(),c=Fn(),l=_n(),h=kn(l,"").items,d=vr({resolver:mr(Gr),defaultValues:{title:"",description:null,icon:null,ui_type:"HTTP",connection_url:"",connection_token:null,npx_package:"",stdio_command:"",stdio_args:"",stdio_cwd:"",env_vars:[]}}),g=d.watch("ui_type"),m=d.watch("connection_url"),N=d.watch("npx_package"),x=Dt({uiType:g,connectionUrl:m??"",npxPackage:N??""})??hn({uiType:g,connectionUrl:m??"",registryItems:h}),v=p=>{const y=p.trim();if(!y)return;const b=!!d.formState.dirtyFields.title,w=!!d.formState.dirtyFields.description,I=!!d.formState.dirtyFields.env_vars,O=E=>{if(E&&(!b&&!d.getValues("title").trim()&&E.title&&d.setValue("title",E.title,{shouldDirty:!1}),!w&&!(d.getValues("description")??"").trim()&&E.description&&d.setValue("description",E.description,{shouldDirty:!1}),!I&&E.envVarKeys?.length)){const B=d.getValues("env_vars")??[],ae=new Set(B.map(Y=>Y.key)),K=E.envVarKeys.filter(Y=>!ae.has(Y));K.length>0&&d.setValue("env_vars",[...B,...K.map(Y=>({key:Y,value:""}))],{shouldDirty:!0})}},k=Qr(y);if(k&&s){d.setValue("ui_type","NPX",{shouldDirty:!0}),d.setValue("npx_package",k.packageName,{shouldDirty:!0}),d.setValue("connection_url","",{shouldDirty:!0}),d.setValue("connection_token",null,{shouldDirty:!0}),O(Dt({uiType:"NPX",npxPackage:k.packageName}));return}if(y.startsWith("http://")||y.startsWith("https://")){const E=g==="HTTP"||g==="SSE"||g==="Websocket"?g:"HTTP";d.setValue("ui_type",E,{shouldDirty:!0}),d.setValue("connection_url",y,{shouldDirty:!0}),O(Dt({uiType:E,connectionUrl:y})??hn({uiType:E,connectionUrl:y,registryItems:h}));return}g==="NPX"&&O(Dt({uiType:"NPX",npxPackage:y}))},j=p=>{p||d.reset(),e(p)},C=async p=>{let y,b=null,w=null,I=null;p.ui_type==="NPX"?(y="STDIO",b="",I=Zr(p.npx_package||"",p.env_vars||[])):p.ui_type==="STDIO"?(y="STDIO",b="",I=eo(p.stdio_command||"",p.stdio_args||"",p.stdio_cwd,p.env_vars||[])):(y=p.ui_type,b=p.connection_url||"",w=p.connection_token||null);const O=Ar("conn");try{await c.create.mutateAsync({id:O,title:p.title,description:p.description||null,connection_type:y,connection_url:b,connection_token:w,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),created_by:o?.user?.id||"system",organization_id:r.id,icon:p.icon??null,app_name:null,app_id:null,connection_headers:I,oauth_config:null,configuration_state:null,metadata:null,tools:null,bindings:null,status:"inactive"}),d.reset(),e(!1),n?.(O)}catch{Le.error("Failed to create connection")}},S="Create Connection",R="Create a custom connection in your organization. Fill in the details below.",T=d.formState.isSubmitting?"Saving...":"Create Connection",A=i.jsxs("div",{className:"grid gap-4",children:[i.jsx(De,{control:d.control,name:"ui_type",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Type *"}),i.jsxs(Kr,{value:p.value,onValueChange:p.onChange,children:[i.jsx(Ne,{children:i.jsx(Xr,{children:i.jsx(Ur,{})})}),i.jsxs(Hr,{children:[i.jsx(ut,{value:"HTTP",children:i.jsxs("span",{className:"flex items-center gap-2",children:[i.jsx(Yt,{className:"w-4 h-4"}),"HTTP"]})}),i.jsx(ut,{value:"SSE",children:i.jsxs("span",{className:"flex items-center gap-2",children:[i.jsx(Yt,{className:"w-4 h-4"}),"SSE"]})}),i.jsx(ut,{value:"Websocket",children:i.jsxs("span",{className:"flex items-center gap-2",children:[i.jsx(Yt,{className:"w-4 h-4"}),"Websocket"]})}),s&&i.jsxs(i.Fragment,{children:[i.jsx(ut,{value:"NPX",children:i.jsxs("span",{className:"flex items-center gap-2",children:[i.jsx(At,{className:"w-4 h-4"}),"NPX Package"]})}),i.jsx(ut,{value:"STDIO",children:i.jsxs("span",{className:"flex items-center gap-2",children:[i.jsx(Wr,{className:"w-4 h-4"}),"Custom Command"]})})]})]})]}),i.jsx(Ie,{})]})}),g==="NPX"&&i.jsx(De,{control:d.control,name:"npx_package",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"NPM Package *"}),i.jsx(Ne,{children:i.jsx(He,{placeholder:"@perplexity-ai/mcp-server",...p,value:p.value??"",onPaste:y=>{const b=y.clipboardData.getData("text");b&&(y.preventDefault(),d.setValue("npx_package",b.trim(),{shouldDirty:!0}),v(b))},onBlur:y=>{v(y.target.value),p.onBlur()}})}),i.jsx(Ie,{})]})}),g==="STDIO"&&i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"grid grid-cols-2 gap-4 items-start",children:[i.jsx(De,{control:d.control,name:"stdio_command",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Command *"}),i.jsx(Ne,{children:i.jsx(He,{placeholder:"node, bun, python...",...p,value:p.value??""})}),i.jsx(Ie,{})]})}),i.jsx(De,{control:d.control,name:"stdio_args",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Arguments"}),i.jsx(Ne,{children:i.jsx(He,{placeholder:"arg1 arg2 --flag value",...p,value:p.value??""})}),i.jsx(Ie,{})]})})]}),i.jsx(De,{control:d.control,name:"stdio_cwd",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Working Directory"}),i.jsx(Ne,{children:i.jsx(He,{placeholder:"/path/to/project (optional)",...p,value:p.value??""})}),i.jsx("p",{className:"text-xs text-muted-foreground",children:"Directory where the command will be executed"}),i.jsx(Ie,{})]})})]}),(g==="NPX"||g==="STDIO")&&i.jsx(De,{control:d.control,name:"env_vars",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Environment Variables"}),i.jsx(Ne,{children:i.jsx(Jr,{value:p.value??[],onChange:p.onChange})}),i.jsx(Ie,{})]})}),g!=="NPX"&&g!=="STDIO"&&i.jsxs(i.Fragment,{children:[i.jsx(De,{control:d.control,name:"connection_url",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"URL *"}),i.jsx(Ne,{children:i.jsx(He,{placeholder:"https://example.com/mcp",...p,value:p.value??"",onPaste:y=>{const b=y.clipboardData.getData("text");b&&(y.preventDefault(),d.setValue("connection_url",b.trim(),{shouldDirty:!0}),v(b))},onBlur:y=>{v(y.target.value),p.onBlur()}})}),i.jsx(Ie,{})]})}),i.jsx(De,{control:d.control,name:"connection_token",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:x?.token?.label??"Token (optional)"}),i.jsx(Ne,{children:i.jsx(He,{type:"password",placeholder:x?.token?.placeholder??"Bearer token or API key",className:"ph-no-capture",...p,value:p.value??""})}),x?.token?.helperText&&i.jsxs("p",{className:"text-xs text-muted-foreground",children:[x.token.helperText,x.id==="github"&&i.jsxs(i.Fragment,{children:[" ","·"," ",i.jsx("a",{className:"text-foreground underline underline-offset-4 hover:text-foreground/80",href:"https://github.com/settings/personal-access-tokens",target:"_blank",rel:"noreferrer",children:"Open GitHub PAT settings"})]})]}),i.jsx(Ie,{})]})})]}),i.jsx(De,{control:d.control,name:"title",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Name *"}),i.jsx(Ne,{children:i.jsx(He,{placeholder:"My Connection",...p})}),i.jsx(Ie,{})]})}),i.jsx(De,{control:d.control,name:"description",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Description"}),i.jsx(Ne,{children:i.jsx(Yr,{placeholder:"A brief description of this connection",rows:3,...p,value:p.value??""})}),i.jsx(Ie,{})]})})]});return a?i.jsx(Or,{open:t,onOpenChange:j,children:i.jsxs(Pr,{className:"max-h-[90vh]",children:[i.jsx(Lr,{className:"pb-2",children:i.jsxs("div",{className:"flex items-start justify-between gap-4",children:[i.jsxs("div",{className:"flex-1 text-left",children:[i.jsx(Fr,{children:S}),i.jsx(zr,{className:"mt-1",children:R})]}),i.jsx(Br,{asChild:!0,children:i.jsx(Ye,{variant:"ghost",size:"icon",className:"shrink-0 -mt-1",children:i.jsx(qr,{size:16})})})]})}),i.jsx(fn,{...d,children:i.jsxs("form",{onSubmit:d.handleSubmit(C),children:[i.jsx("div",{className:"overflow-y-auto px-4 pb-4",children:A}),i.jsx($r,{children:i.jsx(Ye,{type:"submit",disabled:d.formState.isSubmitting,className:"w-full",children:T})})]})})]})}):i.jsx(Mn,{open:t,onOpenChange:j,children:i.jsxs(On,{className:"sm:max-w-[525px]",children:[i.jsxs(Pn,{children:[i.jsx(Ln,{children:S}),i.jsx(kr,{children:R})]}),i.jsx(fn,{...d,children:i.jsxs("form",{onSubmit:d.handleSubmit(C),children:[i.jsx("div",{className:"py-4",children:A}),i.jsxs(Mr,{children:[i.jsx(Ye,{type:"button",variant:"outline",onClick:()=>j(!1),children:"Cancel"}),i.jsx(Ye,{type:"submit",disabled:d.formState.isSubmitting,className:"min-w-40",children:T})]})]})})]})})}function co(t){const e=yr.c(73),{mode:n,agentId:r,addedConnectionIds:o,onAdd:s,onCloneAndAdd:a,onConnectAndAdd:c,connectingItemId:l,search:f,onCreateConnection:h,onBrowseNavigate:d,defaultTab:g}=t,m=n===void 0?"add":n,N=g===void 0?"connected":g,{org:x}=Lt(),v=u.useDeferredValue(f),j=f!==v,C=v.trim().toLowerCase();let S;e[0]!==N?(S=D=>D??N,e[0]=N,e[1]=S):S=e[1];const[R,T]=wr(Cr.connectionsTab(x.slug)+(N==="all"?":home-modal":":agent-modal"),S);let A;e[2]!==R||e[3]!==T?(A=D=>{D!==R&&J("connections_dialog_tab_changed",{to_tab:D}),T(D)},e[2]=R,e[3]=T,e[4]=A):A=e[4];const p=A;let y;e[5]!==x.id||e[6]!==x.slug?(y={connectionId:no,orgId:x.id,orgSlug:x.slug},e[5]=x.id,e[6]=x.slug,e[7]=y):y=e[7];const b=ro(y);let w,I,O;if(e[8]!==b||e[9]!==v||e[10]!==x.id){O=v?.trim()?{operator:"or",conditions:[{field:["title"],operator:"contains",value:v.trim()},{field:["description"],operator:"contains",value:v.trim()}]}:void 0;const D={...O&&{where:O},orderBy:[{field:["updated_at"],direction:"asc"}],limit:100,offset:0},P=JSON.stringify(D);I=to,w=ht.collectionListInfinite(b,x.id,"","CONNECTIONS",P),e[8]=b,e[9]=v,e[10]=x.id,e[11]=w,e[12]=I,e[13]=O}else w=e[11],I=e[12],O=e[13];let k;e[14]!==b||e[15]!==O?(k=async D=>{const{pageParam:P}=D,de=P===void 0?0:P;return(await b.callTool({name:"COLLECTION_CONNECTIONS_LIST",arguments:{...O&&{where:O},orderBy:[{field:["updated_at"],direction:"asc"}],limit:100,offset:de}})).structuredContent},e[14]=b,e[15]=O,e[16]=k):k=e[16];let E;e[17]!==w||e[18]!==k?(E={queryKey:w,queryFn:k,initialPageParam:0,getNextPageParam:po,staleTime:3e4},e[17]=w,e[18]=k,e[19]=E):E=e[19];const{data:B,fetchNextPage:ae,hasNextPage:K,isFetchingNextPage:Y}=I(E),ce=B?.pages.flatMap(go)??[],xe=Rr(ce),qe=new Set(ce.filter(ho).map(fo)),$=_n(),U=kn($,v),he=gn(U.loadMore,U.hasMore,U.isLoadingMore),Ae=gn(ae,K??!1,Y),L=R==="all"||!!C,Ue=L?U.items.filter(D=>{const P=Er(D);if(P&&qe.has(P))return!1;if(!C)return!0;const de=D._meta?.["mcp.mesh"];return[D.title,D.description,D.name,D.server?.title,D.server?.description,D.server?.name,de?.friendly_name,de?.friendlyName].filter(Boolean).join(" ").toLowerCase().includes(C)}):[],Z=Ue.filter(uo),W=Ue.filter(lo);let M;e[20]!==o?(M=D=>D.some(P=>o.has(P.id)),e[20]=o,e[21]=M):M=e[21];const Ee=M;let q;e[22]!==o||e[23]!==r||e[24]!==l||e[25]!==Ee||e[26]!==m||e[27]!==s||e[28]!==d||e[29]!==a?(q=(D,P,de,ze,ve)=>{const Ze=Ee(ve),Be=ve.find(F=>!o.has(F.id)),te=ve[0];if(m==="browse"){const F=jr(te);return i.jsx(Ut,{connection:{title:P,icon:de,description:ve.length>1?`${ve.length} instances`:ze??void 0},fallbackIcon:i.jsx(At,{}),headerActionsAlwaysVisible:!0,headerActions:i.jsxs(jt,{variant:"secondary",className:"text-xs gap-1 font-normal",children:[i.jsx(pn,{size:11})," Connected"]}),onClick:()=>{J("connection_browse_clicked",{app_name:te.app_name??null,connection_id:te.id,instances_count:ve.length}),d?.(F)}},D)}return i.jsx(Ut,{connection:{title:P,icon:de,description:ze},fallbackIcon:i.jsx(At,{}),headerActionsAlwaysVisible:!0,headerActions:i.jsxs("div",{className:"flex items-center gap-1.5",children:[Ze&&i.jsxs(jt,{variant:"secondary",className:"text-xs gap-1 font-normal",children:[i.jsx(pn,{size:11})," Added"]}),i.jsx(Ye,{variant:"outline",size:"sm",className:"h-7 px-3 text-xs font-medium",disabled:l!==null,onClick:F=>{F.stopPropagation(),Be?(J("connection_add_clicked",{action:"use_existing",app_name:te.app_name??null,connection_id:Be.id}),r&&J("agent_connection_attached",{agent_id:r,connection_id:Be.id,app_name:te.app_name??null,mode:"existing"}),s(Be.id)):(J("connection_add_clicked",{action:"clone",app_name:te.app_name??null,base_connection_id:te.id}),a(te))},children:"Add"})]})},D)},e[22]=o,e[23]=r,e[24]=l,e[25]=Ee,e[26]=m,e[27]=s,e[28]=d,e[29]=a,e[30]=q):q=e[30];const ge=q;let ee;e[31]!==l||e[32]!==m||e[33]!==c?(ee=D=>{const P=D._meta?.["mcp.mesh"],de=P?.friendlyName||P?.friendly_name||D.server?.title||D.title||D.server?.name||D.name||D.id||"",ze=D.server?.description||D.description||null,ve=D.server?.icons?.[0]?.src||_r(D.server?.repository)||null,Ze=P?.official===!0,Be=P?.verified===!0,te=P?.owner==="deco";return i.jsx(Ut,{connection:{title:de,description:ze,icon:ve},fallbackIcon:i.jsx(At,{}),headerActionsAlwaysVisible:!0,headerActions:i.jsxs("div",{className:"flex items-center gap-1.5",children:[te&&i.jsxs(qt,{children:[i.jsx(Gt,{asChild:!0,children:i.jsx("span",{className:"inline-flex items-center justify-center size-5 rounded-md bg-muted shrink-0",children:i.jsx("img",{src:"/logos/deco logo.svg",alt:"Made by Deco",className:"size-3"})})}),i.jsx(Jt,{children:"Built and maintained by Deco"})]}),!te&&Ze&&i.jsxs(qt,{children:[i.jsx(Gt,{asChild:!0,children:i.jsx(jt,{variant:"outline",size:"icon",children:i.jsx(Ht,{})})}),i.jsx(Jt,{children:"Built and maintained by the official vendor"})]}),!te&&!Ze&&Be&&i.jsxs(qt,{children:[i.jsx(Gt,{asChild:!0,children:i.jsx(jt,{variant:"outline",size:"icon",children:i.jsx(Ht,{})})}),i.jsx(Jt,{children:"Verified by the Deco team"})]}),i.jsx(Ye,{variant:"outline",size:"sm",className:"h-7 px-3 text-xs font-medium",disabled:l!==null,onClick:F=>{F.stopPropagation(),J("connection_add_clicked",{action:"connect_new",registry_item_id:D.id,app_name:P?.friendlyName||D.server?.name||D.name||null}),c(D)},children:l===D.id?i.jsx(It,{size:14,className:"animate-spin"}):m==="browse"?"Connect":"Add"})]})},`catalog-${D.id}`)},e[31]=l,e[32]=m,e[33]=c,e[34]=ee):ee=e[34];const Te=ee,ye=!C&&i.jsxs("div",{className:"flex items-center justify-between px-5 py-3 border-b border-border shrink-0",children:[i.jsx(Ir,{tabs:[{id:"all",label:"All"},{id:"connected",label:"Connected"}],activeTab:R,onTabChange:D=>p(D)}),i.jsxs(Ye,{variant:"outline",size:"sm",className:"h-7 px-2 text-sm",onClick:()=>{J("connections_dialog_custom_clicked"),h()},children:[i.jsx(oo,{size:12}),"Custom Connection"]})]}),Ge=j&&"opacity-50 pointer-events-none";let _e;e[35]!==Ge?(_e=Sr("flex-1 overflow-auto p-5 transition-opacity duration-150",Ge),e[35]=Ge,e[36]=_e):_e=e[36];const st="grid grid-cols-[repeat(auto-fill,minmax(260px,1fr))] gap-4";let ne;e[37]!==ge?(ne=D=>{if(D.type==="group")return ge(D.key,D.title,D.icon,null,D.connections);const P=D.connection;return ge(P.id,P.title,P.icon,P.description??null,[P])},e[37]=ge,e[38]=ne):ne=e[38];const Fe=xe.map(ne);let pe;e[39]!==Ae?(pe=i.jsx("div",{ref:Ae,className:"col-span-full h-1"}),e[39]=Ae,e[40]=pe):pe=e[40];let ke;e[41]!==Y?(ke=Y&&i.jsx("div",{className:"col-span-full flex justify-center py-6",children:i.jsx(It,{size:24,className:"animate-spin text-muted-foreground"})}),e[41]=Y,e[42]=ke):ke=e[42];const Je=L&&Z.length>0&&i.jsxs("div",{className:"col-span-full flex items-center gap-2 mt-2",children:[i.jsx(Ht,{size:13,className:"text-muted-foreground shrink-0"}),i.jsx("span",{className:"text-sm font-medium text-muted-foreground whitespace-nowrap",children:"Verified"}),i.jsx("div",{className:"flex-1 h-px bg-border"})]}),it=L&&Z.map(Te),at=L&&W.length>0&&i.jsxs("div",{className:"col-span-full flex items-center gap-2 mt-2",children:[i.jsx("span",{className:"text-sm font-medium text-muted-foreground whitespace-nowrap",children:"All connections"}),i.jsx("div",{className:"flex-1 h-px bg-border"})]}),we=L&&W.map(Te);let re;e[43]!==he||e[44]!==$||e[45]!==L?(re=L&&$.length>0&&i.jsx("div",{ref:he,className:"col-span-full h-1"}),e[43]=he,e[44]=$,e[45]=L,e[46]=re):re=e[46];let le;e[47]!==U.isLoadingMore||e[48]!==L?(le=L&&U.isLoadingMore&&i.jsx("div",{className:"col-span-full flex justify-center py-6",children:i.jsx(It,{size:24,className:"animate-spin text-muted-foreground"})}),e[47]=U.isLoadingMore,e[48]=L,e[49]=le):le=e[49];let Me;e[50]!==Fe||e[51]!==pe||e[52]!==ke||e[53]!==Je||e[54]!==it||e[55]!==at||e[56]!==we||e[57]!==re||e[58]!==le?(Me=i.jsxs("div",{className:st,children:[Fe,pe,ke,Je,it,at,we,re,le]}),e[50]=Fe,e[51]=pe,e[52]=ke,e[53]=Je,e[54]=it,e[55]=at,e[56]=we,e[57]=re,e[58]=le,e[59]=Me):Me=e[59];let G;e[60]!==R||e[61]!==xe.length||e[62]!==W||e[63]!==f||e[64]!==Z?(G=xe.length===0&&Z.length===0&&W.length===0&&i.jsx("div",{className:"flex items-center justify-center h-48 text-sm text-muted-foreground",children:f?`No connections match "${f}"`:R==="connected"?"No connections yet":"No connections available"}),e[60]=R,e[61]=xe.length,e[62]=W,e[63]=f,e[64]=Z,e[65]=G):G=e[65];let Oe;e[66]!==_e||e[67]!==Me||e[68]!==G?(Oe=i.jsxs("div",{className:_e,children:[Me,G]}),e[66]=_e,e[67]=Me,e[68]=G,e[69]=Oe):Oe=e[69];let Qe;return e[70]!==ye||e[71]!==Oe?(Qe=i.jsxs(i.Fragment,{children:[ye,Oe]}),e[70]=ye,e[71]=Oe,e[72]=Qe):Qe=e[72],Qe}function lo(t){return!t.verified&&!t._meta?.["mcp.mesh"]?.verified&&!t.meta?.verified}function uo(t){return t.verified||t._meta?.["mcp.mesh"]?.verified||t.meta?.verified}function fo(t){return t.app_name}function ho(t){return t.app_name}function go(t){return t?.items??[]}function po(t,e){if(t?.hasMore)return e.reduce(vo,0)}function vo(t,e){return t+(e?.items?.length??0)}function $i({open:t,onOpenChange:e,defaultTab:n,initialSearch:r="",...o}){const s=o.mode??"add",a="agentId"in o?o.agentId:void 0,c="addedConnectionIds"in o?o.addedConnectionIds??new Set:new Set,l="onAdd"in o&&o.onAdd?o.onAdd:b=>{},f=(b,w,I)=>{a&&J("agent_connection_attached",{agent_id:a,connection_id:b,app_name:w,mode:I})},[h,d]=u.useState(null),[g,m]=u.useState(r),[N,x]=u.useState(!1),{org:v}=Lt(),{data:j}=Tn.useSession(),C=Fn(),S=br(),R=xr(),T=b=>{e(!1),R({to:"/$org/settings/connections/$appSlug",params:{org:v.slug,appSlug:b}})},A=()=>{S.invalidateQueries({predicate:b=>{const w=b.queryKey;return w[1]===v.id&&w[3]==="collection"&&w[4]==="CONNECTIONS"}})},p=async b=>{d(b.app_name??b.id);try{const I=`${b.title.replace(/\s*\(\d+\)\s*$/,"")} (${Date.now().toString(36).slice(-4)})`,k=(await C.create.mutateAsync({title:I,description:b.description??null,connection_type:b.connection_type,connection_url:b.connection_url??null,connection_token:null,icon:b.icon??null,app_name:b.app_name??null,app_id:b.app_id??null,connection_headers:b.connection_headers??null})).id,E=await Wt({connectionId:k,orgId:v.id,orgSlug:v.slug,persistFallback:B=>C.update.mutateAsync({id:k,data:{connection_token:B}}).then(()=>{})});if(E.ran&&!E.ok){J("connection_oauth_failed",{connection_id:k,flow:"clone",error:E.error??"no_token"}),Le.error(`Authentication failed: ${E.error??"no token received"}`),await C.delete.mutateAsync(k);return}if(E.ran){J("connection_oauth_succeeded",{connection_id:k,flow:"clone"});const B=new URL(`/api/${v.slug}/mcp/${k}`,window.location.origin);await S.invalidateQueries({queryKey:ht.isMCPAuthenticated(B.href,null)}),A()}f(k,b.app_name??null,"clone"),l(k)}catch(w){console.error("Failed to add connection:",w),Le.error("Failed to add connection")}finally{d(null)}},y=async b=>{if(!(!v||!j?.user?.id)){d(b.id);try{const w=Tr(b,v.id,j.user.id,{remoteIndex:0}),I=w.connection_type==="STDIO",O=!!w.connection_url,k=I&&w.connection_headers&&typeof w.connection_headers=="object"&&"command"in w.connection_headers;if(!O&&!k){Le.error("This MCP Server cannot be connected: no connection method available"),d(null);return}const{id:E}=await C.create.mutateAsync(w),B=await Wt({connectionId:E,orgId:v.id,orgSlug:v.slug,persistFallback:ae=>C.update.mutateAsync({id:E,data:{connection_token:ae}}).then(()=>{})});if(B.ran&&!B.ok){J("connection_oauth_failed",{connection_id:E,flow:"connect_new",error:B.error??"no_token"}),Le.warning("Couldn't sign in to this connection",{description:`It was added to your agent, but its sign-in setup looks off. You can try authenticating again later from the connection's settings. (${B.error??"no token received"})`}),f(E,w.app_name??null,"new"),l(E);return}if(B.ran){J("connection_oauth_succeeded",{connection_id:E,flow:"connect_new"});const ae=new URL(`/api/${v.slug}/mcp/${E}`,window.location.origin);await S.invalidateQueries({queryKey:ht.isMCPAuthenticated(ae.href,null)}),A(),Le.success("Connected and authenticated")}else Le.success("Connected");f(E,w.app_name??null,"new"),l(E)}catch(w){console.error("Failed to connect:",w),Le.error("Failed to connect")}finally{d(null)}}};return i.jsxs(Mn,{open:t,onOpenChange:e,children:[i.jsxs(On,{className:"sm:max-w-5xl h-[85vh] max-h-[85vh] flex flex-col p-0 gap-0 overflow-hidden w-[95vw]",children:[i.jsx(Pn,{className:"px-6 pt-5 pb-0 shrink-0",children:i.jsx(Ln,{className:"text-base font-semibold",children:s==="browse"?"Connections":"Add Connection"})}),i.jsx("div",{className:"pt-3 shrink-0",children:i.jsx(Nr,{value:g,onChange:m,placeholder:"Search connections..."})}),i.jsx(u.Suspense,{fallback:i.jsx("div",{className:"flex-1 flex items-center justify-center",children:i.jsx(It,{size:24,className:"animate-spin text-muted-foreground"})}),children:i.jsx(co,{mode:s,agentId:a,addedConnectionIds:c,onAdd:l,onCloneAndAdd:p,onConnectAndAdd:y,connectingItemId:h,search:g,onCreateConnection:()=>x(!0),onBrowseNavigate:T,defaultTab:n})})]}),i.jsx(ao,{open:N,onOpenChange:x,onCreated:async b=>{x(!1);const w=await Wt({connectionId:b,orgId:v.id,orgSlug:v.slug,persistFallback:I=>C.update.mutateAsync({id:b,data:{connection_token:I}}).then(()=>{})});if(w.ran&&!w.ok){J("connection_oauth_failed",{connection_id:b,flow:"custom_create",error:w.error??"no_token"}),Le.warning("Couldn't sign in to this connection",{description:`It was added to your agent, but its sign-in setup looks off. You can try authenticating again later from the connection's settings. (${w.error??"no token received"})`}),f(b,null,"custom"),l(b),e(!1);return}if(w.ran){J("connection_oauth_succeeded",{connection_id:b,flow:"custom_create"});const I=new URL(`/api/${v.slug}/mcp/${b}`,window.location.origin);await S.invalidateQueries({queryKey:ht.isMCPAuthenticated(I.href,null)}),A()}f(b,null,"custom"),l(b),e(!1)}})]})}const vn=new Map;function Vi(){const{org:t}=Lt(),e=so(),n=io(),r=n.find(v=>v.providerId==="deco"),{data:o,isLoading:s,refetch:a,isFetching:c}=Dr({queryKey:ht.aiProviderCredits(t.id,"deco"),enabled:!!r,staleTime:6e4,queryFn:async()=>{try{return await e.call("AI_PROVIDER_CREDITS",{providerId:"deco"})}catch{return null}}}),l=o?.balanceCents??null,f=l!=null?l/100:null,h=u.useRef(new Map);if(l!=null){const v=vn.get(t.id);h.current.get(t.id)&&v!=null&&l>v&&J("credits_topped_up_detected",{organization_id:t.id,delta_cents:l-v,previous_balance_cents:v,new_balance_cents:l}),vn.set(t.id,l),h.current.set(t.id,!0)}const d=!!r,g=l!=null&&l>0,m=l!=null&&l===0,N=l!=null&&l===200,x=n.length>0&&n.every(v=>v.providerId==="deco");return{hasDecoKey:d,decoKeyId:r?.id??null,balanceCents:l,balanceDollars:f,hasCredits:g,isZeroBalance:m,isInitialFreeCredit:N,hasOnlyDecoProvider:x,isLoading:s,isFetching:c,refetch:a}}function mo(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return u.useMemo(()=>r=>{e.forEach(o=>o(r))},e)}const Ft=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function nt(t){const e=Object.prototype.toString.call(t);return e==="[object Window]"||e==="[object global]"}function an(t){return"nodeType"in t}function Q(t){var e,n;return t?nt(t)?t:an(t)&&(e=(n=t.ownerDocument)==null?void 0:n.defaultView)!=null?e:window:window}function cn(t){const{Document:e}=Q(t);return t instanceof e}function yt(t){return nt(t)?!1:t instanceof Q(t).HTMLElement}function zn(t){return t instanceof Q(t).SVGElement}function rt(t){return t?nt(t)?t.document:an(t)?cn(t)?t:yt(t)||zn(t)?t.ownerDocument:document:document:document}const me=Ft?u.useLayoutEffect:u.useEffect;function zt(t){const e=u.useRef(t);return me(()=>{e.current=t}),u.useCallback(function(){for(var n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return e.current==null?void 0:e.current(...r)},[])}function bo(){const t=u.useRef(null),e=u.useCallback((r,o)=>{t.current=setInterval(r,o)},[]),n=u.useCallback(()=>{t.current!==null&&(clearInterval(t.current),t.current=null)},[]);return[e,n]}function mt(t,e){e===void 0&&(e=[t]);const n=u.useRef(t);return me(()=>{n.current!==t&&(n.current=t)},e),n}function wt(t,e){const n=u.useRef();return u.useMemo(()=>{const r=t(n.current);return n.current=r,r},[...e])}function Tt(t){const e=zt(t),n=u.useRef(null),r=u.useCallback(o=>{o!==n.current&&e?.(o,n.current),n.current=o},[]);return[n,r]}function _t(t){const e=u.useRef();return u.useEffect(()=>{e.current=t},[t]),e.current}let Qt={};function Ct(t,e){return u.useMemo(()=>{if(e)return e;const n=Qt[t]==null?0:Qt[t]+1;return Qt[t]=n,t+"-"+n},[t,e])}function Bn(t){return function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return r.reduce((s,a)=>{const c=Object.entries(a);for(const[l,f]of c){const h=s[l];h!=null&&(s[l]=h+t*f)}return s},{...e})}}const tt=Bn(1),bt=Bn(-1);function xo(t){return"clientX"in t&&"clientY"in t}function Bt(t){if(!t)return!1;const{KeyboardEvent:e}=Q(t.target);return e&&t instanceof e}function yo(t){if(!t)return!1;const{TouchEvent:e}=Q(t.target);return e&&t instanceof e}function kt(t){if(yo(t)){if(t.touches&&t.touches.length){const{clientX:e,clientY:n}=t.touches[0];return{x:e,y:n}}else if(t.changedTouches&&t.changedTouches.length){const{clientX:e,clientY:n}=t.changedTouches[0];return{x:e,y:n}}}return xo(t)?{x:t.clientX,y:t.clientY}:null}const We=Object.freeze({Translate:{toString(t){if(!t)return;const{x:e,y:n}=t;return"translate3d("+(e?Math.round(e):0)+"px, "+(n?Math.round(n):0)+"px, 0)"}},Scale:{toString(t){if(!t)return;const{scaleX:e,scaleY:n}=t;return"scaleX("+e+") scaleY("+n+")"}},Transform:{toString(t){if(t)return[We.Translate.toString(t),We.Scale.toString(t)].join(" ")}},Transition:{toString(t){let{property:e,duration:n,easing:r}=t;return e+" "+n+"ms "+r}}}),mn="a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";function wo(t){return t.matches(mn)?t:t.querySelector(mn)}const Co={display:"none"};function So(t){let{id:e,value:n}=t;return z.createElement("div",{id:e,style:Co},n)}function Do(t){let{id:e,announcement:n,ariaLiveType:r="assertive"}=t;const o={position:"fixed",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(100%)",whiteSpace:"nowrap"};return z.createElement("div",{id:e,style:o,role:"status","aria-live":r,"aria-atomic":!0},n)}function jo(){const[t,e]=u.useState("");return{announce:u.useCallback(r=>{r!=null&&e(r)},[]),announcement:t}}const $n=u.createContext(null);function Ro(t){const e=u.useContext($n);u.useEffect(()=>{if(!e)throw new Error("useDndMonitor must be used within a children of <DndContext>");return e(t)},[t,e])}function No(){const[t]=u.useState(()=>new Set),e=u.useCallback(r=>(t.add(r),()=>t.delete(r)),[t]);return[u.useCallback(r=>{let{type:o,event:s}=r;t.forEach(a=>{var c;return(c=a[o])==null?void 0:c.call(a,s)})},[t]),e]}const Io={draggable:`
|
|
1
|
+
import{D as Lt,a as Tn,z as pr,p as vr,n as mr,j as i,B as Ye,t as Le,r as u,m as br,b as xr,i as It,v as J,K as ht,c as yr,C as wr,L as Cr,l as Sr,k as Dr,af as z,al as ft}from"./index-CXy6rN6i.js";import{g as jr}from"./connection-slug-eyAPH6o3.js";import{u as _n,a as kn,g as Rr,C as Ut}from"./connection-card-DIh-SIqT.js";import{C as Nr}from"./collection-search-CKMDHnku.js";import{C as Ir}from"./collection-tabs-CWrBkWhe.js";import{a as Ar,b as Er,e as Tr,g as _r}from"./extract-connection-data-BVX9Eneo.js";import{e as Mn,d as On,c as Pn,a as Ln,b as kr,D as Mr}from"./dialog-o7scRbG9.js";import{D as Or,a as Pr,c as Lr,b as Fr,d as zr,e as Br,f as $r}from"./drawer-B-Vy7tMY.js";import{u as Vr}from"./use-mobile-DgvzRDzB.js";import{F as De,b as je,c as Re,d as Ne,e as Ie,a as fn}from"./form-DX8cQ4SA.js";import{I as He}from"./input-BlhkemhH.js";import{S as Kr,a as Xr,b as Ur,c as Hr,d as ut}from"./select-DM3pFFAV.js";import{T as Yr}from"./textarea-C30KYfio.js";import{b as Fn}from"./use-connection-CSQdDXlG.js";import{n as At,c as Ht}from"./XCircle-CmN6DNsv.js";import{s as Yt}from"./Star01-GVe4t6O1.js";import{ab as Wr}from"./agent-icon-BjxA8YR3.js";import{s as qr}from"./XClose-BpreRuFP.js";import{c as Gr,i as Dt,a as hn,E as Jr,p as Qr,b as Zr,d as eo}from"./connection-form-helpers-DV-bwjt7.js";import{u as gn}from"./use-infinite-scroll-CkXtceVR.js";import{a as Wt}from"./authenticate-and-persist-oauth-HBteAcVm.js";import{B as jt}from"./badge-B1dPfLuK.js";import{T as qt,a as Gt,b as Jt}from"./tooltip-BRQCINXK.js";import{u as to}from"./useSuspenseInfiniteQuery-DT-JxV4F.js";import{S as no,u as ro}from"./use-mcp-client-CRWIqSWI.js";import{i as pn}from"./ChevronUp-DSdWQUoR.js";import{s as oo}from"./Plus-DDlkoJBs.js";import{u as so}from"./studio-tools-C-Eel15b.js";import{u as io}from"./use-ai-providers-CpUPA2Pj.js";function sn(t){const e=t?.metadata?.githubRepo;if(!e?.url)return{status:"none"};const n=e.connectionId;return!!n&&!!t?.connections?.some(s=>s.connection_id===n)?{status:"attached",repo:e,connectionId:n}:!!n||e.installationId!=null?{status:"detached",repo:e}:{status:"public-clone",repo:e}}function ki(t){const e=sn(t);return e.status==="attached"||e.status==="public-clone"?e.repo:null}function Mi(t){if(typeof t!="object"||t===null)return!1;const n=t.githubRepo?.url;return typeof n=="string"&&n.length>0}function Oi(t){return sn(t).status==="attached"}function Pi(t){const e=sn(t).status;return e==="attached"||e==="detached"}function Li(t){const e=new Set;for(const n of t??[]){const r=n.metadata?.liveAgentId;typeof r=="string"&&r&&e.add(n.id)}return e}function Fi(t){const e=new Map,n=new Map;for(const r of t??[]){const o=r.metadata?.liveAgentId;typeof o=="string"&&o&&(n.set(r.id,o),e.set(o,r.id))}return{liveToDev:e,devToLive:n}}function zi(t,e){if(!t)return null;const n=t.metadata?.liveAgentId;if(typeof n=="string"&&n)return{mode:"dev",targetId:n};const r=(e??[]).find(o=>o.metadata?.liveAgentId===t.id);return r?{mode:"live",targetId:r.id}:null}function Bi(t){return t.online?t.capabilities.includes("claude-code")||t.capabilities.includes("codex"):!1}function ao({open:t,onOpenChange:e,onCreated:n}){const{org:r}=Lt(),{data:o}=Tn.useSession(),{stdioEnabled:s}=pr(),a=Vr(),c=Fn(),l=_n(),h=kn(l,"").items,d=vr({resolver:mr(Gr),defaultValues:{title:"",description:null,icon:null,ui_type:"HTTP",connection_url:"",connection_token:null,npx_package:"",stdio_command:"",stdio_args:"",stdio_cwd:"",env_vars:[]}}),g=d.watch("ui_type"),m=d.watch("connection_url"),N=d.watch("npx_package"),x=Dt({uiType:g,connectionUrl:m??"",npxPackage:N??""})??hn({uiType:g,connectionUrl:m??"",registryItems:h}),v=p=>{const y=p.trim();if(!y)return;const b=!!d.formState.dirtyFields.title,w=!!d.formState.dirtyFields.description,I=!!d.formState.dirtyFields.env_vars,O=E=>{if(E&&(!b&&!d.getValues("title").trim()&&E.title&&d.setValue("title",E.title,{shouldDirty:!1}),!w&&!(d.getValues("description")??"").trim()&&E.description&&d.setValue("description",E.description,{shouldDirty:!1}),!I&&E.envVarKeys?.length)){const B=d.getValues("env_vars")??[],ae=new Set(B.map(Y=>Y.key)),K=E.envVarKeys.filter(Y=>!ae.has(Y));K.length>0&&d.setValue("env_vars",[...B,...K.map(Y=>({key:Y,value:""}))],{shouldDirty:!0})}},k=Qr(y);if(k&&s){d.setValue("ui_type","NPX",{shouldDirty:!0}),d.setValue("npx_package",k.packageName,{shouldDirty:!0}),d.setValue("connection_url","",{shouldDirty:!0}),d.setValue("connection_token",null,{shouldDirty:!0}),O(Dt({uiType:"NPX",npxPackage:k.packageName}));return}if(y.startsWith("http://")||y.startsWith("https://")){const E=g==="HTTP"||g==="SSE"||g==="Websocket"?g:"HTTP";d.setValue("ui_type",E,{shouldDirty:!0}),d.setValue("connection_url",y,{shouldDirty:!0}),O(Dt({uiType:E,connectionUrl:y})??hn({uiType:E,connectionUrl:y,registryItems:h}));return}g==="NPX"&&O(Dt({uiType:"NPX",npxPackage:y}))},j=p=>{p||d.reset(),e(p)},C=async p=>{let y,b=null,w=null,I=null;p.ui_type==="NPX"?(y="STDIO",b="",I=Zr(p.npx_package||"",p.env_vars||[])):p.ui_type==="STDIO"?(y="STDIO",b="",I=eo(p.stdio_command||"",p.stdio_args||"",p.stdio_cwd,p.env_vars||[])):(y=p.ui_type,b=p.connection_url||"",w=p.connection_token||null);const O=Ar("conn");try{await c.create.mutateAsync({id:O,title:p.title,description:p.description||null,connection_type:y,connection_url:b,connection_token:w,created_at:new Date().toISOString(),updated_at:new Date().toISOString(),created_by:o?.user?.id||"system",organization_id:r.id,icon:p.icon??null,app_name:null,app_id:null,connection_headers:I,oauth_config:null,configuration_state:null,metadata:null,tools:null,bindings:null,status:"inactive"}),d.reset(),e(!1),n?.(O)}catch{Le.error("Failed to create connection")}},S="Create Connection",R="Create a custom connection in your organization. Fill in the details below.",T=d.formState.isSubmitting?"Saving...":"Create Connection",A=i.jsxs("div",{className:"grid gap-4",children:[i.jsx(De,{control:d.control,name:"ui_type",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Type *"}),i.jsxs(Kr,{value:p.value,onValueChange:p.onChange,children:[i.jsx(Ne,{children:i.jsx(Xr,{children:i.jsx(Ur,{})})}),i.jsxs(Hr,{children:[i.jsx(ut,{value:"HTTP",children:i.jsxs("span",{className:"flex items-center gap-2",children:[i.jsx(Yt,{className:"w-4 h-4"}),"HTTP"]})}),i.jsx(ut,{value:"SSE",children:i.jsxs("span",{className:"flex items-center gap-2",children:[i.jsx(Yt,{className:"w-4 h-4"}),"SSE"]})}),i.jsx(ut,{value:"Websocket",children:i.jsxs("span",{className:"flex items-center gap-2",children:[i.jsx(Yt,{className:"w-4 h-4"}),"Websocket"]})}),s&&i.jsxs(i.Fragment,{children:[i.jsx(ut,{value:"NPX",children:i.jsxs("span",{className:"flex items-center gap-2",children:[i.jsx(At,{className:"w-4 h-4"}),"NPX Package"]})}),i.jsx(ut,{value:"STDIO",children:i.jsxs("span",{className:"flex items-center gap-2",children:[i.jsx(Wr,{className:"w-4 h-4"}),"Custom Command"]})})]})]})]}),i.jsx(Ie,{})]})}),g==="NPX"&&i.jsx(De,{control:d.control,name:"npx_package",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"NPM Package *"}),i.jsx(Ne,{children:i.jsx(He,{placeholder:"@perplexity-ai/mcp-server",...p,value:p.value??"",onPaste:y=>{const b=y.clipboardData.getData("text");b&&(y.preventDefault(),d.setValue("npx_package",b.trim(),{shouldDirty:!0}),v(b))},onBlur:y=>{v(y.target.value),p.onBlur()}})}),i.jsx(Ie,{})]})}),g==="STDIO"&&i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"grid grid-cols-2 gap-4 items-start",children:[i.jsx(De,{control:d.control,name:"stdio_command",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Command *"}),i.jsx(Ne,{children:i.jsx(He,{placeholder:"node, bun, python...",...p,value:p.value??""})}),i.jsx(Ie,{})]})}),i.jsx(De,{control:d.control,name:"stdio_args",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Arguments"}),i.jsx(Ne,{children:i.jsx(He,{placeholder:"arg1 arg2 --flag value",...p,value:p.value??""})}),i.jsx(Ie,{})]})})]}),i.jsx(De,{control:d.control,name:"stdio_cwd",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Working Directory"}),i.jsx(Ne,{children:i.jsx(He,{placeholder:"/path/to/project (optional)",...p,value:p.value??""})}),i.jsx("p",{className:"text-xs text-muted-foreground",children:"Directory where the command will be executed"}),i.jsx(Ie,{})]})})]}),(g==="NPX"||g==="STDIO")&&i.jsx(De,{control:d.control,name:"env_vars",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Environment Variables"}),i.jsx(Ne,{children:i.jsx(Jr,{value:p.value??[],onChange:p.onChange})}),i.jsx(Ie,{})]})}),g!=="NPX"&&g!=="STDIO"&&i.jsxs(i.Fragment,{children:[i.jsx(De,{control:d.control,name:"connection_url",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"URL *"}),i.jsx(Ne,{children:i.jsx(He,{placeholder:"https://example.com/mcp",...p,value:p.value??"",onPaste:y=>{const b=y.clipboardData.getData("text");b&&(y.preventDefault(),d.setValue("connection_url",b.trim(),{shouldDirty:!0}),v(b))},onBlur:y=>{v(y.target.value),p.onBlur()}})}),i.jsx(Ie,{})]})}),i.jsx(De,{control:d.control,name:"connection_token",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:x?.token?.label??"Token (optional)"}),i.jsx(Ne,{children:i.jsx(He,{type:"password",placeholder:x?.token?.placeholder??"Bearer token or API key",className:"ph-no-capture",...p,value:p.value??""})}),x?.token?.helperText&&i.jsxs("p",{className:"text-xs text-muted-foreground",children:[x.token.helperText,x.id==="github"&&i.jsxs(i.Fragment,{children:[" ","·"," ",i.jsx("a",{className:"text-foreground underline underline-offset-4 hover:text-foreground/80",href:"https://github.com/settings/personal-access-tokens",target:"_blank",rel:"noreferrer",children:"Open GitHub PAT settings"})]})]}),i.jsx(Ie,{})]})})]}),i.jsx(De,{control:d.control,name:"title",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Name *"}),i.jsx(Ne,{children:i.jsx(He,{placeholder:"My Connection",...p})}),i.jsx(Ie,{})]})}),i.jsx(De,{control:d.control,name:"description",render:({field:p})=>i.jsxs(je,{children:[i.jsx(Re,{children:"Description"}),i.jsx(Ne,{children:i.jsx(Yr,{placeholder:"A brief description of this connection",rows:3,...p,value:p.value??""})}),i.jsx(Ie,{})]})})]});return a?i.jsx(Or,{open:t,onOpenChange:j,children:i.jsxs(Pr,{className:"max-h-[90vh]",children:[i.jsx(Lr,{className:"pb-2",children:i.jsxs("div",{className:"flex items-start justify-between gap-4",children:[i.jsxs("div",{className:"flex-1 text-left",children:[i.jsx(Fr,{children:S}),i.jsx(zr,{className:"mt-1",children:R})]}),i.jsx(Br,{asChild:!0,children:i.jsx(Ye,{variant:"ghost",size:"icon",className:"shrink-0 -mt-1",children:i.jsx(qr,{size:16})})})]})}),i.jsx(fn,{...d,children:i.jsxs("form",{onSubmit:d.handleSubmit(C),children:[i.jsx("div",{className:"overflow-y-auto px-4 pb-4",children:A}),i.jsx($r,{children:i.jsx(Ye,{type:"submit",disabled:d.formState.isSubmitting,className:"w-full",children:T})})]})})]})}):i.jsx(Mn,{open:t,onOpenChange:j,children:i.jsxs(On,{className:"sm:max-w-[525px]",children:[i.jsxs(Pn,{children:[i.jsx(Ln,{children:S}),i.jsx(kr,{children:R})]}),i.jsx(fn,{...d,children:i.jsxs("form",{onSubmit:d.handleSubmit(C),children:[i.jsx("div",{className:"py-4",children:A}),i.jsxs(Mr,{children:[i.jsx(Ye,{type:"button",variant:"outline",onClick:()=>j(!1),children:"Cancel"}),i.jsx(Ye,{type:"submit",disabled:d.formState.isSubmitting,className:"min-w-40",children:T})]})]})})]})})}function co(t){const e=yr.c(73),{mode:n,agentId:r,addedConnectionIds:o,onAdd:s,onCloneAndAdd:a,onConnectAndAdd:c,connectingItemId:l,search:f,onCreateConnection:h,onBrowseNavigate:d,defaultTab:g}=t,m=n===void 0?"add":n,N=g===void 0?"connected":g,{org:x}=Lt(),v=u.useDeferredValue(f),j=f!==v,C=v.trim().toLowerCase();let S;e[0]!==N?(S=D=>D??N,e[0]=N,e[1]=S):S=e[1];const[R,T]=wr(Cr.connectionsTab(x.slug)+(N==="all"?":home-modal":":agent-modal"),S);let A;e[2]!==R||e[3]!==T?(A=D=>{D!==R&&J("connections_dialog_tab_changed",{to_tab:D}),T(D)},e[2]=R,e[3]=T,e[4]=A):A=e[4];const p=A;let y;e[5]!==x.id||e[6]!==x.slug?(y={connectionId:no,orgId:x.id,orgSlug:x.slug},e[5]=x.id,e[6]=x.slug,e[7]=y):y=e[7];const b=ro(y);let w,I,O;if(e[8]!==b||e[9]!==v||e[10]!==x.id){O=v?.trim()?{operator:"or",conditions:[{field:["title"],operator:"contains",value:v.trim()},{field:["description"],operator:"contains",value:v.trim()}]}:void 0;const D={...O&&{where:O},orderBy:[{field:["updated_at"],direction:"asc"}],limit:100,offset:0},P=JSON.stringify(D);I=to,w=ht.collectionListInfinite(b,x.id,"","CONNECTIONS",P),e[8]=b,e[9]=v,e[10]=x.id,e[11]=w,e[12]=I,e[13]=O}else w=e[11],I=e[12],O=e[13];let k;e[14]!==b||e[15]!==O?(k=async D=>{const{pageParam:P}=D,de=P===void 0?0:P;return(await b.callTool({name:"COLLECTION_CONNECTIONS_LIST",arguments:{...O&&{where:O},orderBy:[{field:["updated_at"],direction:"asc"}],limit:100,offset:de}})).structuredContent},e[14]=b,e[15]=O,e[16]=k):k=e[16];let E;e[17]!==w||e[18]!==k?(E={queryKey:w,queryFn:k,initialPageParam:0,getNextPageParam:po,staleTime:3e4},e[17]=w,e[18]=k,e[19]=E):E=e[19];const{data:B,fetchNextPage:ae,hasNextPage:K,isFetchingNextPage:Y}=I(E),ce=B?.pages.flatMap(go)??[],xe=Rr(ce),qe=new Set(ce.filter(ho).map(fo)),$=_n(),U=kn($,v),he=gn(U.loadMore,U.hasMore,U.isLoadingMore),Ae=gn(ae,K??!1,Y),L=R==="all"||!!C,Ue=L?U.items.filter(D=>{const P=Er(D);if(P&&qe.has(P))return!1;if(!C)return!0;const de=D._meta?.["mcp.mesh"];return[D.title,D.description,D.name,D.server?.title,D.server?.description,D.server?.name,de?.friendly_name,de?.friendlyName].filter(Boolean).join(" ").toLowerCase().includes(C)}):[],Z=Ue.filter(uo),W=Ue.filter(lo);let M;e[20]!==o?(M=D=>D.some(P=>o.has(P.id)),e[20]=o,e[21]=M):M=e[21];const Ee=M;let q;e[22]!==o||e[23]!==r||e[24]!==l||e[25]!==Ee||e[26]!==m||e[27]!==s||e[28]!==d||e[29]!==a?(q=(D,P,de,ze,ve)=>{const Ze=Ee(ve),Be=ve.find(F=>!o.has(F.id)),te=ve[0];if(m==="browse"){const F=jr(te);return i.jsx(Ut,{connection:{title:P,icon:de,description:ve.length>1?`${ve.length} instances`:ze??void 0},fallbackIcon:i.jsx(At,{}),headerActionsAlwaysVisible:!0,headerActions:i.jsxs(jt,{variant:"secondary",className:"text-xs gap-1 font-normal",children:[i.jsx(pn,{size:11})," Connected"]}),onClick:()=>{J("connection_browse_clicked",{app_name:te.app_name??null,connection_id:te.id,instances_count:ve.length}),d?.(F)}},D)}return i.jsx(Ut,{connection:{title:P,icon:de,description:ze},fallbackIcon:i.jsx(At,{}),headerActionsAlwaysVisible:!0,headerActions:i.jsxs("div",{className:"flex items-center gap-1.5",children:[Ze&&i.jsxs(jt,{variant:"secondary",className:"text-xs gap-1 font-normal",children:[i.jsx(pn,{size:11})," Added"]}),i.jsx(Ye,{variant:"outline",size:"sm",className:"h-7 px-3 text-xs font-medium",disabled:l!==null,onClick:F=>{F.stopPropagation(),Be?(J("connection_add_clicked",{action:"use_existing",app_name:te.app_name??null,connection_id:Be.id}),r&&J("agent_connection_attached",{agent_id:r,connection_id:Be.id,app_name:te.app_name??null,mode:"existing"}),s(Be.id)):(J("connection_add_clicked",{action:"clone",app_name:te.app_name??null,base_connection_id:te.id}),a(te))},children:"Add"})]})},D)},e[22]=o,e[23]=r,e[24]=l,e[25]=Ee,e[26]=m,e[27]=s,e[28]=d,e[29]=a,e[30]=q):q=e[30];const ge=q;let ee;e[31]!==l||e[32]!==m||e[33]!==c?(ee=D=>{const P=D._meta?.["mcp.mesh"],de=P?.friendlyName||P?.friendly_name||D.server?.title||D.title||D.server?.name||D.name||D.id||"",ze=D.server?.description||D.description||null,ve=D.server?.icons?.[0]?.src||_r(D.server?.repository)||null,Ze=P?.official===!0,Be=P?.verified===!0,te=P?.owner==="deco";return i.jsx(Ut,{connection:{title:de,description:ze,icon:ve},fallbackIcon:i.jsx(At,{}),headerActionsAlwaysVisible:!0,headerActions:i.jsxs("div",{className:"flex items-center gap-1.5",children:[te&&i.jsxs(qt,{children:[i.jsx(Gt,{asChild:!0,children:i.jsx("span",{className:"inline-flex items-center justify-center size-5 rounded-md bg-muted shrink-0",children:i.jsx("img",{src:"/logos/deco logo.svg",alt:"Made by Deco",className:"size-3"})})}),i.jsx(Jt,{children:"Built and maintained by Deco"})]}),!te&&Ze&&i.jsxs(qt,{children:[i.jsx(Gt,{asChild:!0,children:i.jsx(jt,{variant:"outline",size:"icon",children:i.jsx(Ht,{})})}),i.jsx(Jt,{children:"Built and maintained by the official vendor"})]}),!te&&!Ze&&Be&&i.jsxs(qt,{children:[i.jsx(Gt,{asChild:!0,children:i.jsx(jt,{variant:"outline",size:"icon",children:i.jsx(Ht,{})})}),i.jsx(Jt,{children:"Verified by the Deco team"})]}),i.jsx(Ye,{variant:"outline",size:"sm",className:"h-7 px-3 text-xs font-medium",disabled:l!==null,onClick:F=>{F.stopPropagation(),J("connection_add_clicked",{action:"connect_new",registry_item_id:D.id,app_name:P?.friendlyName||D.server?.name||D.name||null}),c(D)},children:l===D.id?i.jsx(It,{size:14,className:"animate-spin"}):m==="browse"?"Connect":"Add"})]})},`catalog-${D.id}`)},e[31]=l,e[32]=m,e[33]=c,e[34]=ee):ee=e[34];const Te=ee,ye=!C&&i.jsxs("div",{className:"flex items-center justify-between px-5 py-3 border-b border-border shrink-0",children:[i.jsx(Ir,{tabs:[{id:"all",label:"All"},{id:"connected",label:"Connected"}],activeTab:R,onTabChange:D=>p(D)}),i.jsxs(Ye,{variant:"outline",size:"sm",className:"h-7 px-2 text-sm",onClick:()=>{J("connections_dialog_custom_clicked"),h()},children:[i.jsx(oo,{size:12}),"Custom Connection"]})]}),Ge=j&&"opacity-50 pointer-events-none";let _e;e[35]!==Ge?(_e=Sr("flex-1 overflow-auto p-5 transition-opacity duration-150",Ge),e[35]=Ge,e[36]=_e):_e=e[36];const st="grid grid-cols-[repeat(auto-fill,minmax(260px,1fr))] gap-4";let ne;e[37]!==ge?(ne=D=>{if(D.type==="group")return ge(D.key,D.title,D.icon,null,D.connections);const P=D.connection;return ge(P.id,P.title,P.icon,P.description??null,[P])},e[37]=ge,e[38]=ne):ne=e[38];const Fe=xe.map(ne);let pe;e[39]!==Ae?(pe=i.jsx("div",{ref:Ae,className:"col-span-full h-1"}),e[39]=Ae,e[40]=pe):pe=e[40];let ke;e[41]!==Y?(ke=Y&&i.jsx("div",{className:"col-span-full flex justify-center py-6",children:i.jsx(It,{size:24,className:"animate-spin text-muted-foreground"})}),e[41]=Y,e[42]=ke):ke=e[42];const Je=L&&Z.length>0&&i.jsxs("div",{className:"col-span-full flex items-center gap-2 mt-2",children:[i.jsx(Ht,{size:13,className:"text-muted-foreground shrink-0"}),i.jsx("span",{className:"text-sm font-medium text-muted-foreground whitespace-nowrap",children:"Verified"}),i.jsx("div",{className:"flex-1 h-px bg-border"})]}),it=L&&Z.map(Te),at=L&&W.length>0&&i.jsxs("div",{className:"col-span-full flex items-center gap-2 mt-2",children:[i.jsx("span",{className:"text-sm font-medium text-muted-foreground whitespace-nowrap",children:"All connections"}),i.jsx("div",{className:"flex-1 h-px bg-border"})]}),we=L&&W.map(Te);let re;e[43]!==he||e[44]!==$||e[45]!==L?(re=L&&$.length>0&&i.jsx("div",{ref:he,className:"col-span-full h-1"}),e[43]=he,e[44]=$,e[45]=L,e[46]=re):re=e[46];let le;e[47]!==U.isLoadingMore||e[48]!==L?(le=L&&U.isLoadingMore&&i.jsx("div",{className:"col-span-full flex justify-center py-6",children:i.jsx(It,{size:24,className:"animate-spin text-muted-foreground"})}),e[47]=U.isLoadingMore,e[48]=L,e[49]=le):le=e[49];let Me;e[50]!==Fe||e[51]!==pe||e[52]!==ke||e[53]!==Je||e[54]!==it||e[55]!==at||e[56]!==we||e[57]!==re||e[58]!==le?(Me=i.jsxs("div",{className:st,children:[Fe,pe,ke,Je,it,at,we,re,le]}),e[50]=Fe,e[51]=pe,e[52]=ke,e[53]=Je,e[54]=it,e[55]=at,e[56]=we,e[57]=re,e[58]=le,e[59]=Me):Me=e[59];let G;e[60]!==R||e[61]!==xe.length||e[62]!==W||e[63]!==f||e[64]!==Z?(G=xe.length===0&&Z.length===0&&W.length===0&&i.jsx("div",{className:"flex items-center justify-center h-48 text-sm text-muted-foreground",children:f?`No connections match "${f}"`:R==="connected"?"No connections yet":"No connections available"}),e[60]=R,e[61]=xe.length,e[62]=W,e[63]=f,e[64]=Z,e[65]=G):G=e[65];let Oe;e[66]!==_e||e[67]!==Me||e[68]!==G?(Oe=i.jsxs("div",{className:_e,children:[Me,G]}),e[66]=_e,e[67]=Me,e[68]=G,e[69]=Oe):Oe=e[69];let Qe;return e[70]!==ye||e[71]!==Oe?(Qe=i.jsxs(i.Fragment,{children:[ye,Oe]}),e[70]=ye,e[71]=Oe,e[72]=Qe):Qe=e[72],Qe}function lo(t){return!t.verified&&!t._meta?.["mcp.mesh"]?.verified&&!t.meta?.verified}function uo(t){return t.verified||t._meta?.["mcp.mesh"]?.verified||t.meta?.verified}function fo(t){return t.app_name}function ho(t){return t.app_name}function go(t){return t?.items??[]}function po(t,e){if(t?.hasMore)return e.reduce(vo,0)}function vo(t,e){return t+(e?.items?.length??0)}function $i({open:t,onOpenChange:e,defaultTab:n,initialSearch:r="",...o}){const s=o.mode??"add",a="agentId"in o?o.agentId:void 0,c="addedConnectionIds"in o?o.addedConnectionIds??new Set:new Set,l="onAdd"in o&&o.onAdd?o.onAdd:b=>{},f=(b,w,I)=>{a&&J("agent_connection_attached",{agent_id:a,connection_id:b,app_name:w,mode:I})},[h,d]=u.useState(null),[g,m]=u.useState(r),[N,x]=u.useState(!1),{org:v}=Lt(),{data:j}=Tn.useSession(),C=Fn(),S=br(),R=xr(),T=b=>{e(!1),R({to:"/$org/settings/connections/$appSlug",params:{org:v.slug,appSlug:b}})},A=()=>{S.invalidateQueries({predicate:b=>{const w=b.queryKey;return w[1]===v.id&&w[3]==="collection"&&w[4]==="CONNECTIONS"}})},p=async b=>{d(b.app_name??b.id);try{const I=`${b.title.replace(/\s*\(\d+\)\s*$/,"")} (${Date.now().toString(36).slice(-4)})`,k=(await C.create.mutateAsync({title:I,description:b.description??null,connection_type:b.connection_type,connection_url:b.connection_url??null,connection_token:null,icon:b.icon??null,app_name:b.app_name??null,app_id:b.app_id??null,connection_headers:b.connection_headers??null})).id,E=await Wt({connectionId:k,orgId:v.id,orgSlug:v.slug,persistFallback:B=>C.update.mutateAsync({id:k,data:{connection_token:B}}).then(()=>{})});if(E.ran&&!E.ok){J("connection_oauth_failed",{connection_id:k,flow:"clone",error:E.error??"no_token"}),Le.error(`Authentication failed: ${E.error??"no token received"}`),await C.delete.mutateAsync(k);return}if(E.ran){J("connection_oauth_succeeded",{connection_id:k,flow:"clone"});const B=new URL(`/api/${v.slug}/mcp/${k}`,window.location.origin);await S.invalidateQueries({queryKey:ht.isMCPAuthenticated(B.href,null)}),A()}f(k,b.app_name??null,"clone"),l(k)}catch(w){console.error("Failed to add connection:",w),Le.error("Failed to add connection")}finally{d(null)}},y=async b=>{if(!(!v||!j?.user?.id)){d(b.id);try{const w=Tr(b,v.id,j.user.id,{remoteIndex:0}),I=w.connection_type==="STDIO",O=!!w.connection_url,k=I&&w.connection_headers&&typeof w.connection_headers=="object"&&"command"in w.connection_headers;if(!O&&!k){Le.error("This MCP Server cannot be connected: no connection method available"),d(null);return}const{id:E}=await C.create.mutateAsync(w),B=await Wt({connectionId:E,orgId:v.id,orgSlug:v.slug,persistFallback:ae=>C.update.mutateAsync({id:E,data:{connection_token:ae}}).then(()=>{})});if(B.ran&&!B.ok){J("connection_oauth_failed",{connection_id:E,flow:"connect_new",error:B.error??"no_token"}),Le.warning("Couldn't sign in to this connection",{description:`It was added to your agent, but its sign-in setup looks off. You can try authenticating again later from the connection's settings. (${B.error??"no token received"})`}),f(E,w.app_name??null,"new"),l(E);return}if(B.ran){J("connection_oauth_succeeded",{connection_id:E,flow:"connect_new"});const ae=new URL(`/api/${v.slug}/mcp/${E}`,window.location.origin);await S.invalidateQueries({queryKey:ht.isMCPAuthenticated(ae.href,null)}),A(),Le.success("Connected and authenticated")}else Le.success("Connected");f(E,w.app_name??null,"new"),l(E)}catch(w){console.error("Failed to connect:",w),Le.error("Failed to connect")}finally{d(null)}}};return i.jsxs(Mn,{open:t,onOpenChange:e,children:[i.jsxs(On,{className:"sm:max-w-5xl h-[85vh] max-h-[85vh] flex flex-col p-0 gap-0 overflow-hidden w-[95vw]",children:[i.jsx(Pn,{className:"px-6 pt-5 pb-0 shrink-0",children:i.jsx(Ln,{className:"text-base font-semibold",children:s==="browse"?"Connections":"Add Connection"})}),i.jsx("div",{className:"pt-3 shrink-0",children:i.jsx(Nr,{value:g,onChange:m,placeholder:"Search connections..."})}),i.jsx(u.Suspense,{fallback:i.jsx("div",{className:"flex-1 flex items-center justify-center",children:i.jsx(It,{size:24,className:"animate-spin text-muted-foreground"})}),children:i.jsx(co,{mode:s,agentId:a,addedConnectionIds:c,onAdd:l,onCloneAndAdd:p,onConnectAndAdd:y,connectingItemId:h,search:g,onCreateConnection:()=>x(!0),onBrowseNavigate:T,defaultTab:n})})]}),i.jsx(ao,{open:N,onOpenChange:x,onCreated:async b=>{x(!1);const w=await Wt({connectionId:b,orgId:v.id,orgSlug:v.slug,persistFallback:I=>C.update.mutateAsync({id:b,data:{connection_token:I}}).then(()=>{})});if(w.ran&&!w.ok){J("connection_oauth_failed",{connection_id:b,flow:"custom_create",error:w.error??"no_token"}),Le.warning("Couldn't sign in to this connection",{description:`It was added to your agent, but its sign-in setup looks off. You can try authenticating again later from the connection's settings. (${w.error??"no token received"})`}),f(b,null,"custom"),l(b),e(!1);return}if(w.ran){J("connection_oauth_succeeded",{connection_id:b,flow:"custom_create"});const I=new URL(`/api/${v.slug}/mcp/${b}`,window.location.origin);await S.invalidateQueries({queryKey:ht.isMCPAuthenticated(I.href,null)}),A()}f(b,null,"custom"),l(b),e(!1)}})]})}const vn=new Map;function Vi(){const{org:t}=Lt(),e=so(),n=io(),r=n.find(v=>v.providerId==="deco"),{data:o,isLoading:s,refetch:a,isFetching:c}=Dr({queryKey:ht.aiProviderCredits(t.id,"deco"),enabled:!!r,staleTime:6e4,queryFn:async()=>{try{return await e.call("AI_PROVIDER_CREDITS",{providerId:"deco"})}catch{return null}}}),l=o?.balanceCents??null,f=l!=null?l/100:null,h=u.useRef(new Map);if(l!=null){const v=vn.get(t.id);h.current.get(t.id)&&v!=null&&l>v&&J("credits_topped_up_detected",{organization_id:t.id,delta_cents:l-v,previous_balance_cents:v,new_balance_cents:l}),vn.set(t.id,l),h.current.set(t.id,!0)}const d=!!r,g=l!=null&&l>0,m=l!=null&&l===0,N=l!=null&&l===200,x=n.length>0&&n.every(v=>v.providerId==="deco");return{hasDecoKey:d,decoKeyId:r?.id??null,balanceCents:l,balanceDollars:f,hasCredits:g,isZeroBalance:m,isInitialFreeCredit:N,hasOnlyDecoProvider:x,isLoading:s,isFetching:c,refetch:a}}function mo(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return u.useMemo(()=>r=>{e.forEach(o=>o(r))},e)}const Ft=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function nt(t){const e=Object.prototype.toString.call(t);return e==="[object Window]"||e==="[object global]"}function an(t){return"nodeType"in t}function Q(t){var e,n;return t?nt(t)?t:an(t)&&(e=(n=t.ownerDocument)==null?void 0:n.defaultView)!=null?e:window:window}function cn(t){const{Document:e}=Q(t);return t instanceof e}function yt(t){return nt(t)?!1:t instanceof Q(t).HTMLElement}function zn(t){return t instanceof Q(t).SVGElement}function rt(t){return t?nt(t)?t.document:an(t)?cn(t)?t:yt(t)||zn(t)?t.ownerDocument:document:document:document}const me=Ft?u.useLayoutEffect:u.useEffect;function zt(t){const e=u.useRef(t);return me(()=>{e.current=t}),u.useCallback(function(){for(var n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return e.current==null?void 0:e.current(...r)},[])}function bo(){const t=u.useRef(null),e=u.useCallback((r,o)=>{t.current=setInterval(r,o)},[]),n=u.useCallback(()=>{t.current!==null&&(clearInterval(t.current),t.current=null)},[]);return[e,n]}function mt(t,e){e===void 0&&(e=[t]);const n=u.useRef(t);return me(()=>{n.current!==t&&(n.current=t)},e),n}function wt(t,e){const n=u.useRef();return u.useMemo(()=>{const r=t(n.current);return n.current=r,r},[...e])}function Tt(t){const e=zt(t),n=u.useRef(null),r=u.useCallback(o=>{o!==n.current&&e?.(o,n.current),n.current=o},[]);return[n,r]}function _t(t){const e=u.useRef();return u.useEffect(()=>{e.current=t},[t]),e.current}let Qt={};function Ct(t,e){return u.useMemo(()=>{if(e)return e;const n=Qt[t]==null?0:Qt[t]+1;return Qt[t]=n,t+"-"+n},[t,e])}function Bn(t){return function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),o=1;o<n;o++)r[o-1]=arguments[o];return r.reduce((s,a)=>{const c=Object.entries(a);for(const[l,f]of c){const h=s[l];h!=null&&(s[l]=h+t*f)}return s},{...e})}}const tt=Bn(1),bt=Bn(-1);function xo(t){return"clientX"in t&&"clientY"in t}function Bt(t){if(!t)return!1;const{KeyboardEvent:e}=Q(t.target);return e&&t instanceof e}function yo(t){if(!t)return!1;const{TouchEvent:e}=Q(t.target);return e&&t instanceof e}function kt(t){if(yo(t)){if(t.touches&&t.touches.length){const{clientX:e,clientY:n}=t.touches[0];return{x:e,y:n}}else if(t.changedTouches&&t.changedTouches.length){const{clientX:e,clientY:n}=t.changedTouches[0];return{x:e,y:n}}}return xo(t)?{x:t.clientX,y:t.clientY}:null}const We=Object.freeze({Translate:{toString(t){if(!t)return;const{x:e,y:n}=t;return"translate3d("+(e?Math.round(e):0)+"px, "+(n?Math.round(n):0)+"px, 0)"}},Scale:{toString(t){if(!t)return;const{scaleX:e,scaleY:n}=t;return"scaleX("+e+") scaleY("+n+")"}},Transform:{toString(t){if(t)return[We.Translate.toString(t),We.Scale.toString(t)].join(" ")}},Transition:{toString(t){let{property:e,duration:n,easing:r}=t;return e+" "+n+"ms "+r}}}),mn="a,frame,iframe,input:not([type=hidden]):not(:disabled),select:not(:disabled),textarea:not(:disabled),button:not(:disabled),*[tabindex]";function wo(t){return t.matches(mn)?t:t.querySelector(mn)}const Co={display:"none"};function So(t){let{id:e,value:n}=t;return z.createElement("div",{id:e,style:Co},n)}function Do(t){let{id:e,announcement:n,ariaLiveType:r="assertive"}=t;const o={position:"fixed",top:0,left:0,width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0 0 0 0)",clipPath:"inset(100%)",whiteSpace:"nowrap"};return z.createElement("div",{id:e,style:o,role:"status","aria-live":r,"aria-atomic":!0},n)}function jo(){const[t,e]=u.useState("");return{announce:u.useCallback(r=>{r!=null&&e(r)},[]),announcement:t}}const $n=u.createContext(null);function Ro(t){const e=u.useContext($n);u.useEffect(()=>{if(!e)throw new Error("useDndMonitor must be used within a children of <DndContext>");return e(t)},[t,e])}function No(){const[t]=u.useState(()=>new Set),e=u.useCallback(r=>(t.add(r),()=>t.delete(r)),[t]);return[u.useCallback(r=>{let{type:o,event:s}=r;t.forEach(a=>{var c;return(c=a[o])==null?void 0:c.call(a,s)})},[t]),e]}const Io={draggable:`
|
|
2
2
|
To pick up a draggable item, press the space bar.
|
|
3
3
|
While dragging, use the arrow keys to move the item.
|
|
4
4
|
Press space again to drop the item in its new position, or press escape to cancel.
|
|
5
|
-
`},Ao={onDragStart(t){let{active:e}=t;return"Picked up draggable item "+e.id+"."},onDragOver(t){let{active:e,over:n}=t;return n?"Draggable item "+e.id+" was moved over droppable area "+n.id+".":"Draggable item "+e.id+" is no longer over a droppable area."},onDragEnd(t){let{active:e,over:n}=t;return n?"Draggable item "+e.id+" was dropped over droppable area "+n.id:"Draggable item "+e.id+" was dropped."},onDragCancel(t){let{active:e}=t;return"Dragging was cancelled. Draggable item "+e.id+" was dropped."}};function Eo(t){let{announcements:e=Ao,container:n,hiddenTextDescribedById:r,screenReaderInstructions:o=Io}=t;const{announce:s,announcement:a}=jo(),c=Ct("DndLiveRegion"),[l,f]=u.useState(!1);if(u.useEffect(()=>{f(!0)},[]),Ro(u.useMemo(()=>({onDragStart(d){let{active:g}=d;s(e.onDragStart({active:g}))},onDragMove(d){let{active:g,over:m}=d;e.onDragMove&&s(e.onDragMove({active:g,over:m}))},onDragOver(d){let{active:g,over:m}=d;s(e.onDragOver({active:g,over:m}))},onDragEnd(d){let{active:g,over:m}=d;s(e.onDragEnd({active:g,over:m}))},onDragCancel(d){let{active:g,over:m}=d;s(e.onDragCancel({active:g,over:m}))}}),[s,e])),!l)return null;const h=z.createElement(z.Fragment,null,z.createElement(So,{id:r,value:o.draggable}),z.createElement(Do,{id:c,announcement:a}));return n?ft.createPortal(h,n):h}var V;(function(t){t.DragStart="dragStart",t.DragMove="dragMove",t.DragEnd="dragEnd",t.DragCancel="dragCancel",t.DragOver="dragOver",t.RegisterDroppable="registerDroppable",t.SetDroppableDisabled="setDroppableDisabled",t.UnregisterDroppable="unregisterDroppable"})(V||(V={}));function Mt(){}function Ki(t,e){return u.useMemo(()=>({sensor:t,options:e??{}}),[t,e])}function Xi(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return u.useMemo(()=>[...e].filter(r=>r!=null),[...e])}const be=Object.freeze({x:0,y:0});function Vn(t,e){return Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))}function To(t,e){const n=kt(t);if(!n)return"0 0";const r={x:(n.x-e.left)/e.width*100,y:(n.y-e.top)/e.height*100};return r.x+"% "+r.y+"%"}function Kn(t,e){let{data:{value:n}}=t,{data:{value:r}}=e;return n-r}function _o(t,e){let{data:{value:n}}=t,{data:{value:r}}=e;return r-n}function bn(t){let{left:e,top:n,height:r,width:o}=t;return[{x:e,y:n},{x:e+o,y:n},{x:e,y:n+r},{x:e+o,y:n+r}]}function Xn(t,e){if(!t||t.length===0)return null;const[n]=t;return n[e]}function xn(t,e,n){return e===void 0&&(e=t.left),n===void 0&&(n=t.top),{x:e+t.width*.5,y:n+t.height*.5}}const Ui=t=>{let{collisionRect:e,droppableRects:n,droppableContainers:r}=t;const o=xn(e,e.left,e.top),s=[];for(const a of r){const{id:c}=a,l=n.get(c);if(l){const f=Vn(xn(l),o);s.push({id:c,data:{droppableContainer:a,value:f}})}}return s.sort(Kn)},ko=t=>{let{collisionRect:e,droppableRects:n,droppableContainers:r}=t;const o=bn(e),s=[];for(const a of r){const{id:c}=a,l=n.get(c);if(l){const f=bn(l),h=o.reduce((g,m,N)=>g+Vn(f[N],m),0),d=Number((h/4).toFixed(4));s.push({id:c,data:{droppableContainer:a,value:d}})}}return s.sort(Kn)};function Mo(t,e){const n=Math.max(e.top,t.top),r=Math.max(e.left,t.left),o=Math.min(e.left+e.width,t.left+t.width),s=Math.min(e.top+e.height,t.top+t.height),a=o-r,c=s-n;if(r<o&&n<s){const l=e.width*e.height,f=t.width*t.height,h=a*c,d=h/(l+f-h);return Number(d.toFixed(4))}return 0}const Oo=t=>{let{collisionRect:e,droppableRects:n,droppableContainers:r}=t;const o=[];for(const s of r){const{id:a}=s,c=n.get(a);if(c){const l=Mo(c,e);l>0&&o.push({id:a,data:{droppableContainer:s,value:l}})}}return o.sort(_o)};function Po(t,e,n){return{...t,scaleX:e&&n?e.width/n.width:1,scaleY:e&&n?e.height/n.height:1}}function Un(t,e){return t&&e?{x:t.left-e.left,y:t.top-e.top}:be}function Lo(t){return function(n){for(var r=arguments.length,o=new Array(r>1?r-1:0),s=1;s<r;s++)o[s-1]=arguments[s];return o.reduce((a,c)=>({...a,top:a.top+t*c.y,bottom:a.bottom+t*c.y,left:a.left+t*c.x,right:a.right+t*c.x}),{...n})}}const Fo=Lo(1);function Hn(t){if(t.startsWith("matrix3d(")){const e=t.slice(9,-1).split(/, /);return{x:+e[12],y:+e[13],scaleX:+e[0],scaleY:+e[5]}}else if(t.startsWith("matrix(")){const e=t.slice(7,-1).split(/, /);return{x:+e[4],y:+e[5],scaleX:+e[0],scaleY:+e[3]}}return null}function zo(t,e,n){const r=Hn(e);if(!r)return t;const{scaleX:o,scaleY:s,x:a,y:c}=r,l=t.left-a-(1-o)*parseFloat(n),f=t.top-c-(1-s)*parseFloat(n.slice(n.indexOf(" ")+1)),h=o?t.width/o:t.width,d=s?t.height/s:t.height;return{width:h,height:d,top:f,right:l+h,bottom:f+d,left:l}}const Bo={ignoreTransform:!1};function ot(t,e){e===void 0&&(e=Bo);let n=t.getBoundingClientRect();if(e.ignoreTransform){const{transform:f,transformOrigin:h}=Q(t).getComputedStyle(t);f&&(n=zo(n,f,h))}const{top:r,left:o,width:s,height:a,bottom:c,right:l}=n;return{top:r,left:o,width:s,height:a,bottom:c,right:l}}function yn(t){return ot(t,{ignoreTransform:!0})}function $o(t){const e=t.innerWidth,n=t.innerHeight;return{top:0,left:0,right:e,bottom:n,width:e,height:n}}function Vo(t,e){return e===void 0&&(e=Q(t).getComputedStyle(t)),e.position==="fixed"}function Ko(t,e){e===void 0&&(e=Q(t).getComputedStyle(t));const n=/(auto|scroll|overlay)/;return["overflow","overflowX","overflowY"].some(o=>{const s=e[o];return typeof s=="string"?n.test(s):!1})}function $t(t,e){const n=[];function r(o){if(e!=null&&n.length>=e||!o)return n;if(cn(o)&&o.scrollingElement!=null&&!n.includes(o.scrollingElement))return n.push(o.scrollingElement),n;if(!yt(o)||zn(o)||n.includes(o))return n;const s=Q(t).getComputedStyle(o);return o!==t&&Ko(o,s)&&n.push(o),Vo(o,s)?n:r(o.parentNode)}return t?r(t):n}function Yn(t){const[e]=$t(t,1);return e??null}function Zt(t){return!Ft||!t?null:nt(t)?t:an(t)?cn(t)||t===rt(t).scrollingElement?window:yt(t)?t:null:null}function Wn(t){return nt(t)?t.scrollX:t.scrollLeft}function qn(t){return nt(t)?t.scrollY:t.scrollTop}function nn(t){return{x:Wn(t),y:qn(t)}}var X;(function(t){t[t.Forward=1]="Forward",t[t.Backward=-1]="Backward"})(X||(X={}));function Gn(t){return!Ft||!t?!1:t===document.scrollingElement}function Jn(t){const e={x:0,y:0},n=Gn(t)?{height:window.innerHeight,width:window.innerWidth}:{height:t.clientHeight,width:t.clientWidth},r={x:t.scrollWidth-n.width,y:t.scrollHeight-n.height},o=t.scrollTop<=e.y,s=t.scrollLeft<=e.x,a=t.scrollTop>=r.y,c=t.scrollLeft>=r.x;return{isTop:o,isLeft:s,isBottom:a,isRight:c,maxScroll:r,minScroll:e}}const Xo={x:.2,y:.2};function Uo(t,e,n,r,o){let{top:s,left:a,right:c,bottom:l}=n;r===void 0&&(r=10),o===void 0&&(o=Xo);const{isTop:f,isBottom:h,isLeft:d,isRight:g}=Jn(t),m={x:0,y:0},N={x:0,y:0},x={height:e.height*o.y,width:e.width*o.x};return!f&&s<=e.top+x.height?(m.y=X.Backward,N.y=r*Math.abs((e.top+x.height-s)/x.height)):!h&&l>=e.bottom-x.height&&(m.y=X.Forward,N.y=r*Math.abs((e.bottom-x.height-l)/x.height)),!g&&c>=e.right-x.width?(m.x=X.Forward,N.x=r*Math.abs((e.right-x.width-c)/x.width)):!d&&a<=e.left+x.width&&(m.x=X.Backward,N.x=r*Math.abs((e.left+x.width-a)/x.width)),{direction:m,speed:N}}function Ho(t){if(t===document.scrollingElement){const{innerWidth:s,innerHeight:a}=window;return{top:0,left:0,right:s,bottom:a,width:s,height:a}}const{top:e,left:n,right:r,bottom:o}=t.getBoundingClientRect();return{top:e,left:n,right:r,bottom:o,width:t.clientWidth,height:t.clientHeight}}function Qn(t){return t.reduce((e,n)=>tt(e,nn(n)),be)}function Yo(t){return t.reduce((e,n)=>e+Wn(n),0)}function Wo(t){return t.reduce((e,n)=>e+qn(n),0)}function Zn(t,e){if(e===void 0&&(e=ot),!t)return;const{top:n,left:r,bottom:o,right:s}=e(t);Yn(t)&&(o<=0||s<=0||n>=window.innerHeight||r>=window.innerWidth)&&t.scrollIntoView({block:"center",inline:"center"})}const qo=[["x",["left","right"],Yo],["y",["top","bottom"],Wo]];class ln{constructor(e,n){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;const r=$t(n),o=Qn(r);this.rect={...e},this.width=e.width,this.height=e.height;for(const[s,a,c]of qo)for(const l of a)Object.defineProperty(this,l,{get:()=>{const f=c(r),h=o[s]-f;return this.rect[l]+h},enumerable:!0});Object.defineProperty(this,"rect",{enumerable:!1})}}class gt{constructor(e){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(n=>{var r;return(r=this.target)==null?void 0:r.removeEventListener(...n)})},this.target=e}add(e,n,r){var o;(o=this.target)==null||o.addEventListener(e,n,r),this.listeners.push([e,n,r])}}function Go(t){const{EventTarget:e}=Q(t);return t instanceof e?t:rt(t)}function en(t,e){const n=Math.abs(t.x),r=Math.abs(t.y);return typeof e=="number"?Math.sqrt(n**2+r**2)>e:"x"in e&&"y"in e?n>e.x&&r>e.y:"x"in e?n>e.x:"y"in e?r>e.y:!1}var fe;(function(t){t.Click="click",t.DragStart="dragstart",t.Keydown="keydown",t.ContextMenu="contextmenu",t.Resize="resize",t.SelectionChange="selectionchange",t.VisibilityChange="visibilitychange"})(fe||(fe={}));function wn(t){t.preventDefault()}function Jo(t){t.stopPropagation()}var _;(function(t){t.Space="Space",t.Down="ArrowDown",t.Right="ArrowRight",t.Left="ArrowLeft",t.Up="ArrowUp",t.Esc="Escape",t.Enter="Enter",t.Tab="Tab"})(_||(_={}));const er={start:[_.Space,_.Enter],cancel:[_.Esc],end:[_.Space,_.Enter,_.Tab]},Qo=(t,e)=>{let{currentCoordinates:n}=e;switch(t.code){case _.Right:return{...n,x:n.x+25};case _.Left:return{...n,x:n.x-25};case _.Down:return{...n,y:n.y+25};case _.Up:return{...n,y:n.y-25}}};class tr{constructor(e){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=e;const{event:{target:n}}=e;this.props=e,this.listeners=new gt(rt(n)),this.windowListeners=new gt(Q(n)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(fe.Resize,this.handleCancel),this.windowListeners.add(fe.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(fe.Keydown,this.handleKeyDown))}handleStart(){const{activeNode:e,onStart:n}=this.props,r=e.node.current;r&&Zn(r),n(be)}handleKeyDown(e){if(Bt(e)){const{active:n,context:r,options:o}=this.props,{keyboardCodes:s=er,coordinateGetter:a=Qo,scrollBehavior:c="smooth"}=o,{code:l}=e;if(s.end.includes(l)){this.handleEnd(e);return}if(s.cancel.includes(l)){this.handleCancel(e);return}const{collisionRect:f}=r.current,h=f?{x:f.left,y:f.top}:be;this.referenceCoordinates||(this.referenceCoordinates=h);const d=a(e,{active:n,context:r.current,currentCoordinates:h});if(d){const g=bt(d,h),m={x:0,y:0},{scrollableAncestors:N}=r.current;for(const x of N){const v=e.code,{isTop:j,isRight:C,isLeft:S,isBottom:R,maxScroll:T,minScroll:A}=Jn(x),p=Ho(x),y={x:Math.min(v===_.Right?p.right-p.width/2:p.right,Math.max(v===_.Right?p.left:p.left+p.width/2,d.x)),y:Math.min(v===_.Down?p.bottom-p.height/2:p.bottom,Math.max(v===_.Down?p.top:p.top+p.height/2,d.y))},b=v===_.Right&&!C||v===_.Left&&!S,w=v===_.Down&&!R||v===_.Up&&!j;if(b&&y.x!==d.x){const I=x.scrollLeft+g.x,O=v===_.Right&&I<=T.x||v===_.Left&&I>=A.x;if(O&&!g.y){x.scrollTo({left:I,behavior:c});return}O?m.x=x.scrollLeft-I:m.x=v===_.Right?x.scrollLeft-T.x:x.scrollLeft-A.x,m.x&&x.scrollBy({left:-m.x,behavior:c});break}else if(w&&y.y!==d.y){const I=x.scrollTop+g.y,O=v===_.Down&&I<=T.y||v===_.Up&&I>=A.y;if(O&&!g.x){x.scrollTo({top:I,behavior:c});return}O?m.y=x.scrollTop-I:m.y=v===_.Down?x.scrollTop-T.y:x.scrollTop-A.y,m.y&&x.scrollBy({top:-m.y,behavior:c});break}}this.handleMove(e,tt(bt(d,this.referenceCoordinates),m))}}}handleMove(e,n){const{onMove:r}=this.props;e.preventDefault(),r(n)}handleEnd(e){const{onEnd:n}=this.props;e.preventDefault(),this.detach(),n()}handleCancel(e){const{onCancel:n}=this.props;e.preventDefault(),this.detach(),n()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}}tr.activators=[{eventName:"onKeyDown",handler:(t,e,n)=>{let{keyboardCodes:r=er,onActivation:o}=e,{active:s}=n;const{code:a}=t.nativeEvent;if(r.start.includes(a)){const c=s.activatorNode.current;return c&&t.target!==c?!1:(t.preventDefault(),o?.({event:t.nativeEvent}),!0)}return!1}}];function Cn(t){return!!(t&&"distance"in t)}function Sn(t){return!!(t&&"delay"in t)}class dn{constructor(e,n,r){var o;r===void 0&&(r=Go(e.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=e,this.events=n;const{event:s}=e,{target:a}=s;this.props=e,this.events=n,this.document=rt(a),this.documentListeners=new gt(this.document),this.listeners=new gt(r),this.windowListeners=new gt(Q(a)),this.initialCoordinates=(o=kt(s))!=null?o:be,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){const{events:e,props:{options:{activationConstraint:n,bypassActivationConstraint:r}}}=this;if(this.listeners.add(e.move.name,this.handleMove,{passive:!1}),this.listeners.add(e.end.name,this.handleEnd),e.cancel&&this.listeners.add(e.cancel.name,this.handleCancel),this.windowListeners.add(fe.Resize,this.handleCancel),this.windowListeners.add(fe.DragStart,wn),this.windowListeners.add(fe.VisibilityChange,this.handleCancel),this.windowListeners.add(fe.ContextMenu,wn),this.documentListeners.add(fe.Keydown,this.handleKeydown),n){if(r!=null&&r({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(Sn(n)){this.timeoutId=setTimeout(this.handleStart,n.delay),this.handlePending(n);return}if(Cn(n)){this.handlePending(n);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(e,n){const{active:r,onPending:o}=this.props;o(r,e,this.initialCoordinates,n)}handleStart(){const{initialCoordinates:e}=this,{onStart:n}=this.props;e&&(this.activated=!0,this.documentListeners.add(fe.Click,Jo,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(fe.SelectionChange,this.removeTextSelection),n(e))}handleMove(e){var n;const{activated:r,initialCoordinates:o,props:s}=this,{onMove:a,options:{activationConstraint:c}}=s;if(!o)return;const l=(n=kt(e))!=null?n:be,f=bt(o,l);if(!r&&c){if(Cn(c)){if(c.tolerance!=null&&en(f,c.tolerance))return this.handleCancel();if(en(f,c.distance))return this.handleStart()}if(Sn(c)&&en(f,c.tolerance))return this.handleCancel();this.handlePending(c,f);return}e.cancelable&&e.preventDefault(),a(l)}handleEnd(){const{onAbort:e,onEnd:n}=this.props;this.detach(),this.activated||e(this.props.active),n()}handleCancel(){const{onAbort:e,onCancel:n}=this.props;this.detach(),this.activated||e(this.props.active),n()}handleKeydown(e){e.code===_.Esc&&this.handleCancel()}removeTextSelection(){var e;(e=this.document.getSelection())==null||e.removeAllRanges()}}const Zo={cancel:{name:"pointercancel"},move:{name:"pointermove"},end:{name:"pointerup"}};class nr extends dn{constructor(e){const{event:n}=e,r=rt(n.target);super(e,Zo,r)}}nr.activators=[{eventName:"onPointerDown",handler:(t,e)=>{let{nativeEvent:n}=t,{onActivation:r}=e;return!n.isPrimary||n.button!==0?!1:(r?.({event:n}),!0)}}];const es={move:{name:"mousemove"},end:{name:"mouseup"}};var rn;(function(t){t[t.RightClick=2]="RightClick"})(rn||(rn={}));class ts extends dn{constructor(e){super(e,es,rt(e.event.target))}}ts.activators=[{eventName:"onMouseDown",handler:(t,e)=>{let{nativeEvent:n}=t,{onActivation:r}=e;return n.button===rn.RightClick?!1:(r?.({event:n}),!0)}}];const tn={cancel:{name:"touchcancel"},move:{name:"touchmove"},end:{name:"touchend"}};class ns extends dn{constructor(e){super(e,tn)}static setup(){return window.addEventListener(tn.move.name,e,{capture:!1,passive:!1}),function(){window.removeEventListener(tn.move.name,e)};function e(){}}}ns.activators=[{eventName:"onTouchStart",handler:(t,e)=>{let{nativeEvent:n}=t,{onActivation:r}=e;const{touches:o}=n;return o.length>1?!1:(r?.({event:n}),!0)}}];var pt;(function(t){t[t.Pointer=0]="Pointer",t[t.DraggableRect=1]="DraggableRect"})(pt||(pt={}));var Ot;(function(t){t[t.TreeOrder=0]="TreeOrder",t[t.ReversedTreeOrder=1]="ReversedTreeOrder"})(Ot||(Ot={}));function rs(t){let{acceleration:e,activator:n=pt.Pointer,canScroll:r,draggingRect:o,enabled:s,interval:a=5,order:c=Ot.TreeOrder,pointerCoordinates:l,scrollableAncestors:f,scrollableAncestorRects:h,delta:d,threshold:g}=t;const m=ss({delta:d,disabled:!s}),[N,x]=bo(),v=u.useRef({x:0,y:0}),j=u.useRef({x:0,y:0}),C=u.useMemo(()=>{switch(n){case pt.Pointer:return l?{top:l.y,bottom:l.y,left:l.x,right:l.x}:null;case pt.DraggableRect:return o}},[n,o,l]),S=u.useRef(null),R=u.useCallback(()=>{const A=S.current;if(!A)return;const p=v.current.x*j.current.x,y=v.current.y*j.current.y;A.scrollBy(p,y)},[]),T=u.useMemo(()=>c===Ot.TreeOrder?[...f].reverse():f,[c,f]);u.useEffect(()=>{if(!s||!f.length||!C){x();return}for(const A of T){if(r?.(A)===!1)continue;const p=f.indexOf(A),y=h[p];if(!y)continue;const{direction:b,speed:w}=Uo(A,y,C,e,g);for(const I of["x","y"])m[I][b[I]]||(w[I]=0,b[I]=0);if(w.x>0||w.y>0){x(),S.current=A,N(R,a),v.current=w,j.current=b;return}}v.current={x:0,y:0},j.current={x:0,y:0},x()},[e,R,r,x,s,a,JSON.stringify(C),JSON.stringify(m),N,f,T,h,JSON.stringify(g)])}const os={x:{[X.Backward]:!1,[X.Forward]:!1},y:{[X.Backward]:!1,[X.Forward]:!1}};function ss(t){let{delta:e,disabled:n}=t;const r=_t(e);return wt(o=>{if(n||!r||!o)return os;const s={x:Math.sign(e.x-r.x),y:Math.sign(e.y-r.y)};return{x:{[X.Backward]:o.x[X.Backward]||s.x===-1,[X.Forward]:o.x[X.Forward]||s.x===1},y:{[X.Backward]:o.y[X.Backward]||s.y===-1,[X.Forward]:o.y[X.Forward]||s.y===1}}},[n,e,r])}function is(t,e){const n=e!=null?t.get(e):void 0,r=n?n.node.current:null;return wt(o=>{var s;return e==null?null:(s=r??o)!=null?s:null},[r,e])}function as(t,e){return u.useMemo(()=>t.reduce((n,r)=>{const{sensor:o}=r,s=o.activators.map(a=>({eventName:a.eventName,handler:e(a.handler,r)}));return[...n,...s]},[]),[t,e])}var xt;(function(t){t[t.Always=0]="Always",t[t.BeforeDragging=1]="BeforeDragging",t[t.WhileDragging=2]="WhileDragging"})(xt||(xt={}));var on;(function(t){t.Optimized="optimized"})(on||(on={}));const Dn=new Map;function cs(t,e){let{dragging:n,dependencies:r,config:o}=e;const[s,a]=u.useState(null),{frequency:c,measure:l,strategy:f}=o,h=u.useRef(t),d=v(),g=mt(d),m=u.useCallback(function(j){j===void 0&&(j=[]),!g.current&&a(C=>C===null?j:C.concat(j.filter(S=>!C.includes(S))))},[g]),N=u.useRef(null),x=wt(j=>{if(d&&!n)return Dn;if(!j||j===Dn||h.current!==t||s!=null){const C=new Map;for(let S of t){if(!S)continue;if(s&&s.length>0&&!s.includes(S.id)&&S.rect.current){C.set(S.id,S.rect.current);continue}const R=S.node.current,T=R?new ln(l(R),R):null;S.rect.current=T,T&&C.set(S.id,T)}return C}return j},[t,s,n,d,l]);return u.useEffect(()=>{h.current=t},[t]),u.useEffect(()=>{d||m()},[n,d]),u.useEffect(()=>{s&&s.length>0&&a(null)},[JSON.stringify(s)]),u.useEffect(()=>{d||typeof c!="number"||N.current!==null||(N.current=setTimeout(()=>{m(),N.current=null},c))},[c,d,m,...r]),{droppableRects:x,measureDroppableContainers:m,measuringScheduled:s!=null};function v(){switch(f){case xt.Always:return!1;case xt.BeforeDragging:return n;default:return!n}}}function un(t,e){return wt(n=>t?n||(typeof e=="function"?e(t):t):null,[e,t])}function ls(t,e){return un(t,e)}function ds(t){let{callback:e,disabled:n}=t;const r=zt(e),o=u.useMemo(()=>{if(n||typeof window>"u"||typeof window.MutationObserver>"u")return;const{MutationObserver:s}=window;return new s(r)},[r,n]);return u.useEffect(()=>()=>o?.disconnect(),[o]),o}function Vt(t){let{callback:e,disabled:n}=t;const r=zt(e),o=u.useMemo(()=>{if(n||typeof window>"u"||typeof window.ResizeObserver>"u")return;const{ResizeObserver:s}=window;return new s(r)},[n]);return u.useEffect(()=>()=>o?.disconnect(),[o]),o}function us(t){return new ln(ot(t),t)}function jn(t,e,n){e===void 0&&(e=us);const[r,o]=u.useState(null);function s(){o(l=>{if(!t)return null;if(t.isConnected===!1){var f;return(f=l??n)!=null?f:null}const h=e(t);return JSON.stringify(l)===JSON.stringify(h)?l:h})}const a=ds({callback(l){if(t)for(const f of l){const{type:h,target:d}=f;if(h==="childList"&&d instanceof HTMLElement&&d.contains(t)){s();break}}}}),c=Vt({callback:s});return me(()=>{s(),t?(c?.observe(t),a?.observe(document.body,{childList:!0,subtree:!0})):(c?.disconnect(),a?.disconnect())},[t]),r}function fs(t){const e=un(t);return Un(t,e)}const Rn=[];function hs(t){const e=u.useRef(t),n=wt(r=>t?r&&r!==Rn&&t&&e.current&&t.parentNode===e.current.parentNode?r:$t(t):Rn,[t]);return u.useEffect(()=>{e.current=t},[t]),n}function gs(t){const[e,n]=u.useState(null),r=u.useRef(t),o=u.useCallback(s=>{const a=Zt(s.target);a&&n(c=>c?(c.set(a,nn(a)),new Map(c)):null)},[]);return u.useEffect(()=>{const s=r.current;if(t!==s){a(s);const c=t.map(l=>{const f=Zt(l);return f?(f.addEventListener("scroll",o,{passive:!0}),[f,nn(f)]):null}).filter(l=>l!=null);n(c.length?new Map(c):null),r.current=t}return()=>{a(t),a(s)};function a(c){c.forEach(l=>{const f=Zt(l);f?.removeEventListener("scroll",o)})}},[o,t]),u.useMemo(()=>t.length?e?Array.from(e.values()).reduce((s,a)=>tt(s,a),be):Qn(t):be,[t,e])}function Nn(t,e){e===void 0&&(e=[]);const n=u.useRef(null);return u.useEffect(()=>{n.current=null},e),u.useEffect(()=>{const r=t!==be;r&&!n.current&&(n.current=t),!r&&n.current&&(n.current=null)},[t]),n.current?bt(t,n.current):be}function ps(t){u.useEffect(()=>{if(!Ft)return;const e=t.map(n=>{let{sensor:r}=n;return r.setup==null?void 0:r.setup()});return()=>{for(const n of e)n?.()}},t.map(e=>{let{sensor:n}=e;return n}))}function vs(t,e){return u.useMemo(()=>t.reduce((n,r)=>{let{eventName:o,handler:s}=r;return n[o]=a=>{s(a,e)},n},{}),[t,e])}function rr(t){return u.useMemo(()=>t?$o(t):null,[t])}const In=[];function ms(t,e){e===void 0&&(e=ot);const[n]=t,r=rr(n?Q(n):null),[o,s]=u.useState(In);function a(){s(()=>t.length?t.map(l=>Gn(l)?r:new ln(e(l),l)):In)}const c=Vt({callback:a});return me(()=>{c?.disconnect(),a(),t.forEach(l=>c?.observe(l))},[t]),o}function or(t){if(!t)return null;if(t.children.length>1)return t;const e=t.children[0];return yt(e)?e:t}function bs(t){let{measure:e}=t;const[n,r]=u.useState(null),o=u.useCallback(f=>{for(const{target:h}of f)if(yt(h)){r(d=>{const g=e(h);return d?{...d,width:g.width,height:g.height}:g});break}},[e]),s=Vt({callback:o}),a=u.useCallback(f=>{const h=or(f);s?.disconnect(),h&&s?.observe(h),r(h?e(h):null)},[e,s]),[c,l]=Tt(a);return u.useMemo(()=>({nodeRef:c,rect:n,setRef:l}),[n,c,l])}const xs=[{sensor:nr,options:{}},{sensor:tr,options:{}}],ys={current:{}},Et={draggable:{measure:yn},droppable:{measure:yn,strategy:xt.WhileDragging,frequency:on.Optimized},dragOverlay:{measure:ot}};class vt extends Map{get(e){var n;return e!=null&&(n=super.get(e))!=null?n:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(e=>{let{disabled:n}=e;return!n})}getNodeFor(e){var n,r;return(n=(r=this.get(e))==null?void 0:r.node.current)!=null?n:void 0}}const ws={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new vt,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Mt},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:Et,measureDroppableContainers:Mt,windowRect:null,measuringScheduled:!1},sr={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:""},dispatch:Mt,draggableNodes:new Map,over:null,measureDroppableContainers:Mt},St=u.createContext(sr),ir=u.createContext(ws);function Cs(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new vt}}}function Ss(t,e){switch(e.type){case V.DragStart:return{...t,draggable:{...t.draggable,initialCoordinates:e.initialCoordinates,active:e.active}};case V.DragMove:return t.draggable.active==null?t:{...t,draggable:{...t.draggable,translate:{x:e.coordinates.x-t.draggable.initialCoordinates.x,y:e.coordinates.y-t.draggable.initialCoordinates.y}}};case V.DragEnd:case V.DragCancel:return{...t,draggable:{...t.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case V.RegisterDroppable:{const{element:n}=e,{id:r}=n,o=new vt(t.droppable.containers);return o.set(r,n),{...t,droppable:{...t.droppable,containers:o}}}case V.SetDroppableDisabled:{const{id:n,key:r,disabled:o}=e,s=t.droppable.containers.get(n);if(!s||r!==s.key)return t;const a=new vt(t.droppable.containers);return a.set(n,{...s,disabled:o}),{...t,droppable:{...t.droppable,containers:a}}}case V.UnregisterDroppable:{const{id:n,key:r}=e,o=t.droppable.containers.get(n);if(!o||r!==o.key)return t;const s=new vt(t.droppable.containers);return s.delete(n),{...t,droppable:{...t.droppable,containers:s}}}default:return t}}function Ds(t){let{disabled:e}=t;const{active:n,activatorEvent:r,draggableNodes:o}=u.useContext(St),s=_t(r),a=_t(n?.id);return u.useEffect(()=>{if(!e&&!r&&s&&a!=null){if(!Bt(s)||document.activeElement===s.target)return;const c=o.get(a);if(!c)return;const{activatorNode:l,node:f}=c;if(!l.current&&!f.current)return;requestAnimationFrame(()=>{for(const h of[l.current,f.current]){if(!h)continue;const d=wo(h);if(d){d.focus();break}}})}},[r,e,o,a,s]),null}function ar(t,e){let{transform:n,...r}=e;return t!=null&&t.length?t.reduce((o,s)=>s({transform:o,...r}),n):n}function js(t){return u.useMemo(()=>({draggable:{...Et.draggable,...t?.draggable},droppable:{...Et.droppable,...t?.droppable},dragOverlay:{...Et.dragOverlay,...t?.dragOverlay}}),[t?.draggable,t?.droppable,t?.dragOverlay])}function Rs(t){let{activeNode:e,measure:n,initialRect:r,config:o=!0}=t;const s=u.useRef(!1),{x:a,y:c}=typeof o=="boolean"?{x:o,y:o}:o;me(()=>{if(!a&&!c||!e){s.current=!1;return}if(s.current||!r)return;const f=e?.node.current;if(!f||f.isConnected===!1)return;const h=n(f),d=Un(h,r);if(a||(d.x=0),c||(d.y=0),s.current=!0,Math.abs(d.x)>0||Math.abs(d.y)>0){const g=Yn(f);g&&g.scrollBy({top:d.y,left:d.x})}},[e,a,c,r,n])}const Kt=u.createContext({...be,scaleX:1,scaleY:1});var Xe;(function(t){t[t.Uninitialized=0]="Uninitialized",t[t.Initializing=1]="Initializing",t[t.Initialized=2]="Initialized"})(Xe||(Xe={}));const Hi=u.memo(function(e){var n,r,o,s;let{id:a,accessibility:c,autoScroll:l=!0,children:f,sensors:h=xs,collisionDetection:d=Oo,measuring:g,modifiers:m,...N}=e;const x=u.useReducer(Ss,void 0,Cs),[v,j]=x,[C,S]=No(),[R,T]=u.useState(Xe.Uninitialized),A=R===Xe.Initialized,{draggable:{active:p,nodes:y,translate:b},droppable:{containers:w}}=v,I=p!=null?y.get(p):null,O=u.useRef({initial:null,translated:null}),k=u.useMemo(()=>{var F;return p!=null?{id:p,data:(F=I?.data)!=null?F:ys,rect:O}:null},[p,I]),E=u.useRef(null),[B,ae]=u.useState(null),[K,Y]=u.useState(null),ce=mt(N,Object.values(N)),xe=Ct("DndDescribedBy",a),qe=u.useMemo(()=>w.getEnabled(),[w]),$=js(g),{droppableRects:U,measureDroppableContainers:he,measuringScheduled:Ae}=cs(qe,{dragging:A,dependencies:[b.x,b.y],config:$.droppable}),L=is(y,p),Ue=u.useMemo(()=>K?kt(K):null,[K]),Z=te(),W=ls(L,$.draggable.measure);Rs({activeNode:p!=null?y.get(p):null,config:Z.layoutShiftCompensation,initialRect:W,measure:$.draggable.measure});const M=jn(L,$.draggable.measure,W),Ee=jn(L?L.parentElement:null),q=u.useRef({activatorEvent:null,active:null,activeNode:L,collisionRect:null,collisions:null,droppableRects:U,draggableNodes:y,draggingNode:null,draggingNodeRect:null,droppableContainers:w,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),ge=w.getNodeFor((n=q.current.over)==null?void 0:n.id),ee=bs({measure:$.dragOverlay.measure}),Te=(r=ee.nodeRef.current)!=null?r:L,ye=A?(o=ee.rect)!=null?o:M:null,Ge=!!(ee.nodeRef.current&&ee.rect),_e=fs(Ge?null:M),st=rr(Te?Q(Te):null),ne=hs(A?ge??L:null),Fe=ms(ne),pe=ar(m,{transform:{x:b.x-_e.x,y:b.y-_e.y,scaleX:1,scaleY:1},activatorEvent:K,active:k,activeNodeRect:M,containerNodeRect:Ee,draggingNodeRect:ye,over:q.current.over,overlayNodeRect:ee.rect,scrollableAncestors:ne,scrollableAncestorRects:Fe,windowRect:st}),ke=Ue?tt(Ue,b):null,Je=gs(ne),it=Nn(Je),at=Nn(Je,[M]),we=tt(pe,it),re=ye?Fo(ye,pe):null,le=k&&re?d({active:k,collisionRect:re,droppableRects:U,droppableContainers:qe,pointerCoordinates:ke}):null,Me=Xn(le,"id"),[G,Oe]=u.useState(null),Qe=Ge?pe:tt(pe,at),D=Po(Qe,(s=G?.rect)!=null?s:null,M),P=u.useRef(null),de=u.useCallback((F,oe)=>{let{sensor:se,options:$e}=oe;if(E.current==null)return;const ue=y.get(E.current);if(!ue)return;const ie=F.nativeEvent,Ce=new se({active:E.current,activeNode:ue,event:ie,options:$e,context:q,onAbort(H){if(!y.get(H))return;const{onDragAbort:Se}=ce.current,Pe={id:H};Se?.(Pe),C({type:"onDragAbort",event:Pe})},onPending(H,Ve,Se,Pe){if(!y.get(H))return;const{onDragPending:lt}=ce.current,Ke={id:H,constraint:Ve,initialCoordinates:Se,offset:Pe};lt?.(Ke),C({type:"onDragPending",event:Ke})},onStart(H){const Ve=E.current;if(Ve==null)return;const Se=y.get(Ve);if(!Se)return;const{onDragStart:Pe}=ce.current,ct={activatorEvent:ie,active:{id:Ve,data:Se.data,rect:O}};ft.unstable_batchedUpdates(()=>{Pe?.(ct),T(Xe.Initializing),j({type:V.DragStart,initialCoordinates:H,active:Ve}),C({type:"onDragStart",event:ct}),ae(P.current),Y(ie)})},onMove(H){j({type:V.DragMove,coordinates:H})},onEnd:et(V.DragEnd),onCancel:et(V.DragCancel)});P.current=Ce;function et(H){return async function(){const{active:Se,collisions:Pe,over:ct,scrollAdjustedTranslate:lt}=q.current;let Ke=null;if(Se&<){const{cancelDrop:dt}=ce.current;Ke={activatorEvent:ie,active:Se,collisions:Pe,delta:lt,over:ct},H===V.DragEnd&&typeof dt=="function"&&await Promise.resolve(dt(Ke))&&(H=V.DragCancel)}E.current=null,ft.unstable_batchedUpdates(()=>{j({type:H}),T(Xe.Uninitialized),Oe(null),ae(null),Y(null),P.current=null;const dt=H===V.DragEnd?"onDragEnd":"onDragCancel";if(Ke){const Xt=ce.current[dt];Xt?.(Ke),C({type:dt,event:Ke})}})}}},[y]),ze=u.useCallback((F,oe)=>(se,$e)=>{const ue=se.nativeEvent,ie=y.get($e);if(E.current!==null||!ie||ue.dndKit||ue.defaultPrevented)return;const Ce={active:ie};F(se,oe.options,Ce)===!0&&(ue.dndKit={capturedBy:oe.sensor},E.current=$e,de(se,oe))},[y,de]),ve=as(h,ze);ps(h),me(()=>{M&&R===Xe.Initializing&&T(Xe.Initialized)},[M,R]),u.useEffect(()=>{const{onDragMove:F}=ce.current,{active:oe,activatorEvent:se,collisions:$e,over:ue}=q.current;if(!oe||!se)return;const ie={active:oe,activatorEvent:se,collisions:$e,delta:{x:we.x,y:we.y},over:ue};ft.unstable_batchedUpdates(()=>{F?.(ie),C({type:"onDragMove",event:ie})})},[we.x,we.y]),u.useEffect(()=>{const{active:F,activatorEvent:oe,collisions:se,droppableContainers:$e,scrollAdjustedTranslate:ue}=q.current;if(!F||E.current==null||!oe||!ue)return;const{onDragOver:ie}=ce.current,Ce=$e.get(Me),et=Ce&&Ce.rect.current?{id:Ce.id,rect:Ce.rect.current,data:Ce.data,disabled:Ce.disabled}:null,H={active:F,activatorEvent:oe,collisions:se,delta:{x:ue.x,y:ue.y},over:et};ft.unstable_batchedUpdates(()=>{Oe(et),ie?.(H),C({type:"onDragOver",event:H})})},[Me]),me(()=>{q.current={activatorEvent:K,active:k,activeNode:L,collisionRect:re,collisions:le,droppableRects:U,draggableNodes:y,draggingNode:Te,draggingNodeRect:ye,droppableContainers:w,over:G,scrollableAncestors:ne,scrollAdjustedTranslate:we},O.current={initial:ye,translated:re}},[k,L,le,re,y,Te,ye,U,w,G,ne,we]),rs({...Z,delta:b,draggingRect:re,pointerCoordinates:ke,scrollableAncestors:ne,scrollableAncestorRects:Fe});const Ze=u.useMemo(()=>({active:k,activeNode:L,activeNodeRect:M,activatorEvent:K,collisions:le,containerNodeRect:Ee,dragOverlay:ee,draggableNodes:y,droppableContainers:w,droppableRects:U,over:G,measureDroppableContainers:he,scrollableAncestors:ne,scrollableAncestorRects:Fe,measuringConfiguration:$,measuringScheduled:Ae,windowRect:st}),[k,L,M,K,le,Ee,ee,y,w,U,G,he,ne,Fe,$,Ae,st]),Be=u.useMemo(()=>({activatorEvent:K,activators:ve,active:k,activeNodeRect:M,ariaDescribedById:{draggable:xe},dispatch:j,draggableNodes:y,over:G,measureDroppableContainers:he}),[K,ve,k,M,j,xe,y,G,he]);return z.createElement($n.Provider,{value:S},z.createElement(St.Provider,{value:Be},z.createElement(ir.Provider,{value:Ze},z.createElement(Kt.Provider,{value:D},f)),z.createElement(Ds,{disabled:c?.restoreFocus===!1})),z.createElement(Eo,{...c,hiddenTextDescribedById:xe}));function te(){const F=B?.autoScrollEnabled===!1,oe=typeof l=="object"?l.enabled===!1:l===!1,se=A&&!F&&!oe;return typeof l=="object"?{...l,enabled:se}:{enabled:se}}}),Ns=u.createContext(null),An="button",Is="Draggable";function As(t){let{id:e,data:n,disabled:r=!1,attributes:o}=t;const s=Ct(Is),{activators:a,activatorEvent:c,active:l,activeNodeRect:f,ariaDescribedById:h,draggableNodes:d,over:g}=u.useContext(St),{role:m=An,roleDescription:N="draggable",tabIndex:x=0}=o??{},v=l?.id===e,j=u.useContext(v?Kt:Ns),[C,S]=Tt(),[R,T]=Tt(),A=vs(a,e),p=mt(n);me(()=>(d.set(e,{id:e,key:s,node:C,activatorNode:R,data:p}),()=>{const b=d.get(e);b&&b.key===s&&d.delete(e)}),[d,e]);const y=u.useMemo(()=>({role:m,tabIndex:x,"aria-disabled":r,"aria-pressed":v&&m===An?!0:void 0,"aria-roledescription":N,"aria-describedby":h.draggable}),[r,m,x,v,N,h.draggable]);return{active:l,activatorEvent:c,activeNodeRect:f,attributes:y,isDragging:v,listeners:r?void 0:A,node:C,over:g,setNodeRef:S,setActivatorNodeRef:T,transform:j}}function cr(){return u.useContext(ir)}const Es="Droppable",Ts={timeout:25};function _s(t){let{data:e,disabled:n=!1,id:r,resizeObserverConfig:o}=t;const s=Ct(Es),{active:a,dispatch:c,over:l,measureDroppableContainers:f}=u.useContext(St),h=u.useRef({disabled:n}),d=u.useRef(!1),g=u.useRef(null),m=u.useRef(null),{disabled:N,updateMeasurementsFor:x,timeout:v}={...Ts,...o},j=mt(x??r),C=u.useCallback(()=>{if(!d.current){d.current=!0;return}m.current!=null&&clearTimeout(m.current),m.current=setTimeout(()=>{f(Array.isArray(j.current)?j.current:[j.current]),m.current=null},v)},[v]),S=Vt({callback:C,disabled:N||!a}),R=u.useCallback((y,b)=>{S&&(b&&(S.unobserve(b),d.current=!1),y&&S.observe(y))},[S]),[T,A]=Tt(R),p=mt(e);return u.useEffect(()=>{!S||!T.current||(S.disconnect(),d.current=!1,S.observe(T.current))},[T,S]),u.useEffect(()=>(c({type:V.RegisterDroppable,element:{id:r,key:s,disabled:n,node:T,rect:g,data:p}}),()=>c({type:V.UnregisterDroppable,key:s,id:r})),[r]),u.useEffect(()=>{n!==h.current.disabled&&(c({type:V.SetDroppableDisabled,id:r,key:s,disabled:n}),h.current.disabled=n)},[r,s,n,c]),{active:a,rect:g,isOver:l?.id===r,node:T,over:l,setNodeRef:A}}function ks(t){let{animation:e,children:n}=t;const[r,o]=u.useState(null),[s,a]=u.useState(null),c=_t(n);return!n&&!r&&c&&o(c),me(()=>{if(!s)return;const l=r?.key,f=r?.props.id;if(l==null||f==null){o(null);return}Promise.resolve(e(f,s)).then(()=>{o(null)})},[e,r,s]),z.createElement(z.Fragment,null,n,r?u.cloneElement(r,{ref:a}):null)}const Ms={x:0,y:0,scaleX:1,scaleY:1};function Os(t){let{children:e}=t;return z.createElement(St.Provider,{value:sr},z.createElement(Kt.Provider,{value:Ms},e))}const Ps={position:"fixed",touchAction:"none"},Ls=t=>Bt(t)?"transform 250ms ease":void 0,Fs=u.forwardRef((t,e)=>{let{as:n,activatorEvent:r,adjustScale:o,children:s,className:a,rect:c,style:l,transform:f,transition:h=Ls}=t;if(!c)return null;const d=o?f:{...f,scaleX:1,scaleY:1},g={...Ps,width:c.width,height:c.height,top:c.top,left:c.left,transform:We.Transform.toString(d),transformOrigin:o&&r?To(r,c):void 0,transition:typeof h=="function"?h(r):h,...l};return z.createElement(n,{className:a,style:g,ref:e},s)}),zs=t=>e=>{let{active:n,dragOverlay:r}=e;const o={},{styles:s,className:a}=t;if(s!=null&&s.active)for(const[c,l]of Object.entries(s.active))l!==void 0&&(o[c]=n.node.style.getPropertyValue(c),n.node.style.setProperty(c,l));if(s!=null&&s.dragOverlay)for(const[c,l]of Object.entries(s.dragOverlay))l!==void 0&&r.node.style.setProperty(c,l);return a!=null&&a.active&&n.node.classList.add(a.active),a!=null&&a.dragOverlay&&r.node.classList.add(a.dragOverlay),function(){for(const[l,f]of Object.entries(o))n.node.style.setProperty(l,f);a!=null&&a.active&&n.node.classList.remove(a.active)}},Bs=t=>{let{transform:{initial:e,final:n}}=t;return[{transform:We.Transform.toString(e)},{transform:We.Transform.toString(n)}]},$s={duration:250,easing:"ease",keyframes:Bs,sideEffects:zs({styles:{active:{opacity:"0"}}})};function Vs(t){let{config:e,draggableNodes:n,droppableContainers:r,measuringConfiguration:o}=t;return zt((s,a)=>{if(e===null)return;const c=n.get(s);if(!c)return;const l=c.node.current;if(!l)return;const f=or(a);if(!f)return;const{transform:h}=Q(a).getComputedStyle(a),d=Hn(h);if(!d)return;const g=typeof e=="function"?e:Ks(e);return Zn(l,o.draggable.measure),g({active:{id:s,data:c.data,node:l,rect:o.draggable.measure(l)},draggableNodes:n,dragOverlay:{node:a,rect:o.dragOverlay.measure(f)},droppableContainers:r,measuringConfiguration:o,transform:d})})}function Ks(t){const{duration:e,easing:n,sideEffects:r,keyframes:o}={...$s,...t};return s=>{let{active:a,dragOverlay:c,transform:l,...f}=s;if(!e)return;const h={x:c.rect.left-a.rect.left,y:c.rect.top-a.rect.top},d={scaleX:l.scaleX!==1?a.rect.width*l.scaleX/c.rect.width:1,scaleY:l.scaleY!==1?a.rect.height*l.scaleY/c.rect.height:1},g={x:l.x-h.x,y:l.y-h.y,...d},m=o({...f,active:a,dragOverlay:c,transform:{initial:l,final:g}}),[N]=m,x=m[m.length-1];if(JSON.stringify(N)===JSON.stringify(x))return;const v=r?.({active:a,dragOverlay:c,...f}),j=c.node.animate(m,{duration:e,easing:n,fill:"forwards"});return new Promise(C=>{j.onfinish=()=>{v?.(),C()}})}}let En=0;function Xs(t){return u.useMemo(()=>{if(t!=null)return En++,En},[t])}const Yi=z.memo(t=>{let{adjustScale:e=!1,children:n,dropAnimation:r,style:o,transition:s,modifiers:a,wrapperElement:c="div",className:l,zIndex:f=999}=t;const{activatorEvent:h,active:d,activeNodeRect:g,containerNodeRect:m,draggableNodes:N,droppableContainers:x,dragOverlay:v,over:j,measuringConfiguration:C,scrollableAncestors:S,scrollableAncestorRects:R,windowRect:T}=cr(),A=u.useContext(Kt),p=Xs(d?.id),y=ar(a,{activatorEvent:h,active:d,activeNodeRect:g,containerNodeRect:m,draggingNodeRect:v.rect,over:j,overlayNodeRect:v.rect,scrollableAncestors:S,scrollableAncestorRects:R,transform:A,windowRect:T}),b=un(g),w=Vs({config:r,draggableNodes:N,droppableContainers:x,measuringConfiguration:C}),I=b?v.setRef:void 0;return z.createElement(Os,null,z.createElement(ks,{animation:w},d&&p?z.createElement(Fs,{key:p,id:d.id,ref:I,as:c,activatorEvent:h,adjustScale:e,className:l,transition:s,rect:b,style:{zIndex:f,...o},transform:y},n):null))});function lr(t,e,n){const r=t.slice();return r.splice(n<0?r.length+n:n,0,r.splice(e,1)[0]),r}function Us(t,e){return t.reduce((n,r,o)=>{const s=e.get(r);return s&&(n[o]=s),n},Array(t.length))}function Rt(t){return t!==null&&t>=0}function Hs(t,e){if(t===e)return!0;if(t.length!==e.length)return!1;for(let n=0;n<t.length;n++)if(t[n]!==e[n])return!1;return!0}function Ys(t){return typeof t=="boolean"?{draggable:t,droppable:t}:t}const dr=t=>{let{rects:e,activeIndex:n,overIndex:r,index:o}=t;const s=lr(e,r,n),a=e[o],c=s[o];return!c||!a?null:{x:c.left-a.left,y:c.top-a.top,scaleX:c.width/a.width,scaleY:c.height/a.height}},Nt={scaleX:1,scaleY:1},Wi=t=>{var e;let{activeIndex:n,activeNodeRect:r,index:o,rects:s,overIndex:a}=t;const c=(e=s[n])!=null?e:r;if(!c)return null;if(o===n){const f=s[a];return f?{x:0,y:n<a?f.top+f.height-(c.top+c.height):f.top-c.top,...Nt}:null}const l=Ws(s,o,n);return o>n&&o<=a?{x:0,y:-c.height-l,...Nt}:o<n&&o>=a?{x:0,y:c.height+l,...Nt}:{x:0,y:0,...Nt}};function Ws(t,e,n){const r=t[e],o=t[e-1],s=t[e+1];return r?n<e?o?r.top-(o.top+o.height):s?s.top-(r.top+r.height):0:s?s.top-(r.top+r.height):o?r.top-(o.top+o.height):0:0}const ur="Sortable",fr=z.createContext({activeIndex:-1,containerId:ur,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:dr,disabled:{draggable:!1,droppable:!1}});function qi(t){let{children:e,id:n,items:r,strategy:o=dr,disabled:s=!1}=t;const{active:a,dragOverlay:c,droppableRects:l,over:f,measureDroppableContainers:h}=cr(),d=Ct(ur,n),g=c.rect!==null,m=u.useMemo(()=>r.map(A=>typeof A=="object"&&"id"in A?A.id:A),[r]),N=a!=null,x=a?m.indexOf(a.id):-1,v=f?m.indexOf(f.id):-1,j=u.useRef(m),C=!Hs(m,j.current),S=v!==-1&&x===-1||C,R=Ys(s);me(()=>{C&&N&&h(m)},[C,m,N,h]),u.useEffect(()=>{j.current=m},[m]);const T=u.useMemo(()=>({activeIndex:x,containerId:d,disabled:R,disableTransforms:S,items:m,overIndex:v,useDragOverlay:g,sortedRects:Us(m,l),strategy:o}),[x,d,R.draggable,R.droppable,S,m,v,l,g,o]);return z.createElement(fr.Provider,{value:T},e)}const qs=t=>{let{id:e,items:n,activeIndex:r,overIndex:o}=t;return lr(n,r,o).indexOf(e)},Gs=t=>{let{containerId:e,isSorting:n,wasDragging:r,index:o,items:s,newIndex:a,previousItems:c,previousContainerId:l,transition:f}=t;return!f||!r||c!==s&&o===a?!1:n?!0:a!==o&&e===l},Js={duration:200,easing:"ease"},hr="transform",Qs=We.Transition.toString({property:hr,duration:0,easing:"linear"}),Zs={roleDescription:"sortable"};function ei(t){let{disabled:e,index:n,node:r,rect:o}=t;const[s,a]=u.useState(null),c=u.useRef(n);return me(()=>{if(!e&&n!==c.current&&r.current){const l=o.current;if(l){const f=ot(r.current,{ignoreTransform:!0}),h={x:l.left-f.left,y:l.top-f.top,scaleX:l.width/f.width,scaleY:l.height/f.height};(h.x||h.y)&&a(h)}}n!==c.current&&(c.current=n)},[e,n,r,o]),u.useEffect(()=>{s&&a(null)},[s]),s}function Gi(t){let{animateLayoutChanges:e=Gs,attributes:n,disabled:r,data:o,getNewIndex:s=qs,id:a,strategy:c,resizeObserverConfig:l,transition:f=Js}=t;const{items:h,containerId:d,activeIndex:g,disabled:m,disableTransforms:N,sortedRects:x,overIndex:v,useDragOverlay:j,strategy:C}=u.useContext(fr),S=ti(r,m),R=h.indexOf(a),T=u.useMemo(()=>({sortable:{containerId:d,index:R,items:h},...o}),[d,o,R,h]),A=u.useMemo(()=>h.slice(h.indexOf(a)),[h,a]),{rect:p,node:y,isOver:b,setNodeRef:w}=_s({id:a,data:T,disabled:S.droppable,resizeObserverConfig:{updateMeasurementsFor:A,...l}}),{active:I,activatorEvent:O,activeNodeRect:k,attributes:E,setNodeRef:B,listeners:ae,isDragging:K,over:Y,setActivatorNodeRef:ce,transform:xe}=As({id:a,data:T,attributes:{...Zs,...n},disabled:S.draggable}),qe=mo(w,B),$=!!I,U=$&&!N&&Rt(g)&&Rt(v),he=!j&&K,Ae=he&&U?xe:null,Ue=U?Ae??(c??C)({rects:x,activeNodeRect:k,activeIndex:g,overIndex:v,index:R}):null,Z=Rt(g)&&Rt(v)?s({id:a,items:h,activeIndex:g,overIndex:v}):R,W=I?.id,M=u.useRef({activeId:W,items:h,newIndex:Z,containerId:d}),Ee=h!==M.current.items,q=e({active:I,containerId:d,isDragging:K,isSorting:$,id:a,index:R,items:h,newIndex:M.current.newIndex,previousItems:M.current.items,previousContainerId:M.current.containerId,transition:f,wasDragging:M.current.activeId!=null}),ge=ei({disabled:!q,index:R,node:y,rect:p});return u.useEffect(()=>{$&&M.current.newIndex!==Z&&(M.current.newIndex=Z),d!==M.current.containerId&&(M.current.containerId=d),h!==M.current.items&&(M.current.items=h)},[$,Z,d,h]),u.useEffect(()=>{if(W===M.current.activeId)return;if(W!=null&&M.current.activeId==null){M.current.activeId=W;return}const Te=setTimeout(()=>{M.current.activeId=W},50);return()=>clearTimeout(Te)},[W]),{active:I,activeIndex:g,attributes:E,data:T,rect:p,index:R,newIndex:Z,items:h,isOver:b,isSorting:$,isDragging:K,listeners:ae,node:y,overIndex:v,over:Y,setNodeRef:qe,setActivatorNodeRef:ce,setDroppableNodeRef:w,setDraggableNodeRef:B,transform:ge??Ue,transition:ee()};function ee(){if(ge||Ee&&M.current.newIndex===R)return Qs;if(!(he&&!Bt(O)||!f)&&($||q))return We.Transition.toString({...f,property:hr})}}function ti(t,e){var n,r;return typeof t=="boolean"?{draggable:t,droppable:!1}:{draggable:(n=t?.draggable)!=null?n:e.draggable,droppable:(r=t?.droppable)!=null?r:e.droppable}}function Pt(t){if(!t)return!1;const e=t.data.current;return!!(e&&"sortable"in e&&typeof e.sortable=="object"&&"containerId"in e.sortable&&"items"in e.sortable&&"index"in e.sortable)}const ni=[_.Down,_.Right,_.Up,_.Left],Ji=(t,e)=>{let{context:{active:n,collisionRect:r,droppableRects:o,droppableContainers:s,over:a,scrollableAncestors:c}}=e;if(ni.includes(t.code)){if(t.preventDefault(),!n||!r)return;const l=[];s.getEnabled().forEach(d=>{if(!d||d!=null&&d.disabled)return;const g=o.get(d.id);if(g)switch(t.code){case _.Down:r.top<g.top&&l.push(d);break;case _.Up:r.top>g.top&&l.push(d);break;case _.Left:r.left>g.left&&l.push(d);break;case _.Right:r.left<g.left&&l.push(d);break}});const f=ko({collisionRect:r,droppableRects:o,droppableContainers:l});let h=Xn(f,"id");if(h===a?.id&&f.length>1&&(h=f[1].id),h!=null){const d=s.get(n.id),g=s.get(h),m=g?o.get(g.id):null,N=g?.node.current;if(N&&m&&d&&g){const v=$t(N).some((A,p)=>c[p]!==A),j=gr(d,g),C=ri(d,g),S=v||!j?{x:0,y:0}:{x:C?r.width-m.width:0,y:C?r.height-m.height:0},R={x:m.left,y:m.top};return S.x&&S.y?R:bt(R,S)}}}};function gr(t,e){return!Pt(t)||!Pt(e)?!1:t.data.current.sortable.containerId===e.data.current.sortable.containerId}function ri(t,e){return!Pt(t)||!Pt(e)||!gr(t,e)?!1:t.data.current.sortable.index<e.data.current.sortable.index}export{$i as A,We as C,Hi as D,tr as K,nr as P,qi as S,ki as a,Xi as b,Ki as c,Ui as d,Gi as e,Fi as f,Li as g,Bi as h,Oi as i,Mi as j,Yi as k,lr as l,zi as m,Pi as n,As as o,sn as r,Ji as s,Vi as u,Wi as v};
|
|
5
|
+
`},Ao={onDragStart(t){let{active:e}=t;return"Picked up draggable item "+e.id+"."},onDragOver(t){let{active:e,over:n}=t;return n?"Draggable item "+e.id+" was moved over droppable area "+n.id+".":"Draggable item "+e.id+" is no longer over a droppable area."},onDragEnd(t){let{active:e,over:n}=t;return n?"Draggable item "+e.id+" was dropped over droppable area "+n.id:"Draggable item "+e.id+" was dropped."},onDragCancel(t){let{active:e}=t;return"Dragging was cancelled. Draggable item "+e.id+" was dropped."}};function Eo(t){let{announcements:e=Ao,container:n,hiddenTextDescribedById:r,screenReaderInstructions:o=Io}=t;const{announce:s,announcement:a}=jo(),c=Ct("DndLiveRegion"),[l,f]=u.useState(!1);if(u.useEffect(()=>{f(!0)},[]),Ro(u.useMemo(()=>({onDragStart(d){let{active:g}=d;s(e.onDragStart({active:g}))},onDragMove(d){let{active:g,over:m}=d;e.onDragMove&&s(e.onDragMove({active:g,over:m}))},onDragOver(d){let{active:g,over:m}=d;s(e.onDragOver({active:g,over:m}))},onDragEnd(d){let{active:g,over:m}=d;s(e.onDragEnd({active:g,over:m}))},onDragCancel(d){let{active:g,over:m}=d;s(e.onDragCancel({active:g,over:m}))}}),[s,e])),!l)return null;const h=z.createElement(z.Fragment,null,z.createElement(So,{id:r,value:o.draggable}),z.createElement(Do,{id:c,announcement:a}));return n?ft.createPortal(h,n):h}var V;(function(t){t.DragStart="dragStart",t.DragMove="dragMove",t.DragEnd="dragEnd",t.DragCancel="dragCancel",t.DragOver="dragOver",t.RegisterDroppable="registerDroppable",t.SetDroppableDisabled="setDroppableDisabled",t.UnregisterDroppable="unregisterDroppable"})(V||(V={}));function Mt(){}function Ki(t,e){return u.useMemo(()=>({sensor:t,options:e??{}}),[t,e])}function Xi(){for(var t=arguments.length,e=new Array(t),n=0;n<t;n++)e[n]=arguments[n];return u.useMemo(()=>[...e].filter(r=>r!=null),[...e])}const be=Object.freeze({x:0,y:0});function Vn(t,e){return Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2))}function To(t,e){const n=kt(t);if(!n)return"0 0";const r={x:(n.x-e.left)/e.width*100,y:(n.y-e.top)/e.height*100};return r.x+"% "+r.y+"%"}function Kn(t,e){let{data:{value:n}}=t,{data:{value:r}}=e;return n-r}function _o(t,e){let{data:{value:n}}=t,{data:{value:r}}=e;return r-n}function bn(t){let{left:e,top:n,height:r,width:o}=t;return[{x:e,y:n},{x:e+o,y:n},{x:e,y:n+r},{x:e+o,y:n+r}]}function Xn(t,e){if(!t||t.length===0)return null;const[n]=t;return n[e]}function xn(t,e,n){return e===void 0&&(e=t.left),n===void 0&&(n=t.top),{x:e+t.width*.5,y:n+t.height*.5}}const Ui=t=>{let{collisionRect:e,droppableRects:n,droppableContainers:r}=t;const o=xn(e,e.left,e.top),s=[];for(const a of r){const{id:c}=a,l=n.get(c);if(l){const f=Vn(xn(l),o);s.push({id:c,data:{droppableContainer:a,value:f}})}}return s.sort(Kn)},ko=t=>{let{collisionRect:e,droppableRects:n,droppableContainers:r}=t;const o=bn(e),s=[];for(const a of r){const{id:c}=a,l=n.get(c);if(l){const f=bn(l),h=o.reduce((g,m,N)=>g+Vn(f[N],m),0),d=Number((h/4).toFixed(4));s.push({id:c,data:{droppableContainer:a,value:d}})}}return s.sort(Kn)};function Mo(t,e){const n=Math.max(e.top,t.top),r=Math.max(e.left,t.left),o=Math.min(e.left+e.width,t.left+t.width),s=Math.min(e.top+e.height,t.top+t.height),a=o-r,c=s-n;if(r<o&&n<s){const l=e.width*e.height,f=t.width*t.height,h=a*c,d=h/(l+f-h);return Number(d.toFixed(4))}return 0}const Oo=t=>{let{collisionRect:e,droppableRects:n,droppableContainers:r}=t;const o=[];for(const s of r){const{id:a}=s,c=n.get(a);if(c){const l=Mo(c,e);l>0&&o.push({id:a,data:{droppableContainer:s,value:l}})}}return o.sort(_o)};function Po(t,e,n){return{...t,scaleX:e&&n?e.width/n.width:1,scaleY:e&&n?e.height/n.height:1}}function Un(t,e){return t&&e?{x:t.left-e.left,y:t.top-e.top}:be}function Lo(t){return function(n){for(var r=arguments.length,o=new Array(r>1?r-1:0),s=1;s<r;s++)o[s-1]=arguments[s];return o.reduce((a,c)=>({...a,top:a.top+t*c.y,bottom:a.bottom+t*c.y,left:a.left+t*c.x,right:a.right+t*c.x}),{...n})}}const Fo=Lo(1);function Hn(t){if(t.startsWith("matrix3d(")){const e=t.slice(9,-1).split(/, /);return{x:+e[12],y:+e[13],scaleX:+e[0],scaleY:+e[5]}}else if(t.startsWith("matrix(")){const e=t.slice(7,-1).split(/, /);return{x:+e[4],y:+e[5],scaleX:+e[0],scaleY:+e[3]}}return null}function zo(t,e,n){const r=Hn(e);if(!r)return t;const{scaleX:o,scaleY:s,x:a,y:c}=r,l=t.left-a-(1-o)*parseFloat(n),f=t.top-c-(1-s)*parseFloat(n.slice(n.indexOf(" ")+1)),h=o?t.width/o:t.width,d=s?t.height/s:t.height;return{width:h,height:d,top:f,right:l+h,bottom:f+d,left:l}}const Bo={ignoreTransform:!1};function ot(t,e){e===void 0&&(e=Bo);let n=t.getBoundingClientRect();if(e.ignoreTransform){const{transform:f,transformOrigin:h}=Q(t).getComputedStyle(t);f&&(n=zo(n,f,h))}const{top:r,left:o,width:s,height:a,bottom:c,right:l}=n;return{top:r,left:o,width:s,height:a,bottom:c,right:l}}function yn(t){return ot(t,{ignoreTransform:!0})}function $o(t){const e=t.innerWidth,n=t.innerHeight;return{top:0,left:0,right:e,bottom:n,width:e,height:n}}function Vo(t,e){return e===void 0&&(e=Q(t).getComputedStyle(t)),e.position==="fixed"}function Ko(t,e){e===void 0&&(e=Q(t).getComputedStyle(t));const n=/(auto|scroll|overlay)/;return["overflow","overflowX","overflowY"].some(o=>{const s=e[o];return typeof s=="string"?n.test(s):!1})}function $t(t,e){const n=[];function r(o){if(e!=null&&n.length>=e||!o)return n;if(cn(o)&&o.scrollingElement!=null&&!n.includes(o.scrollingElement))return n.push(o.scrollingElement),n;if(!yt(o)||zn(o)||n.includes(o))return n;const s=Q(t).getComputedStyle(o);return o!==t&&Ko(o,s)&&n.push(o),Vo(o,s)?n:r(o.parentNode)}return t?r(t):n}function Yn(t){const[e]=$t(t,1);return e??null}function Zt(t){return!Ft||!t?null:nt(t)?t:an(t)?cn(t)||t===rt(t).scrollingElement?window:yt(t)?t:null:null}function Wn(t){return nt(t)?t.scrollX:t.scrollLeft}function qn(t){return nt(t)?t.scrollY:t.scrollTop}function nn(t){return{x:Wn(t),y:qn(t)}}var X;(function(t){t[t.Forward=1]="Forward",t[t.Backward=-1]="Backward"})(X||(X={}));function Gn(t){return!Ft||!t?!1:t===document.scrollingElement}function Jn(t){const e={x:0,y:0},n=Gn(t)?{height:window.innerHeight,width:window.innerWidth}:{height:t.clientHeight,width:t.clientWidth},r={x:t.scrollWidth-n.width,y:t.scrollHeight-n.height},o=t.scrollTop<=e.y,s=t.scrollLeft<=e.x,a=t.scrollTop>=r.y,c=t.scrollLeft>=r.x;return{isTop:o,isLeft:s,isBottom:a,isRight:c,maxScroll:r,minScroll:e}}const Xo={x:.2,y:.2};function Uo(t,e,n,r,o){let{top:s,left:a,right:c,bottom:l}=n;r===void 0&&(r=10),o===void 0&&(o=Xo);const{isTop:f,isBottom:h,isLeft:d,isRight:g}=Jn(t),m={x:0,y:0},N={x:0,y:0},x={height:e.height*o.y,width:e.width*o.x};return!f&&s<=e.top+x.height?(m.y=X.Backward,N.y=r*Math.abs((e.top+x.height-s)/x.height)):!h&&l>=e.bottom-x.height&&(m.y=X.Forward,N.y=r*Math.abs((e.bottom-x.height-l)/x.height)),!g&&c>=e.right-x.width?(m.x=X.Forward,N.x=r*Math.abs((e.right-x.width-c)/x.width)):!d&&a<=e.left+x.width&&(m.x=X.Backward,N.x=r*Math.abs((e.left+x.width-a)/x.width)),{direction:m,speed:N}}function Ho(t){if(t===document.scrollingElement){const{innerWidth:s,innerHeight:a}=window;return{top:0,left:0,right:s,bottom:a,width:s,height:a}}const{top:e,left:n,right:r,bottom:o}=t.getBoundingClientRect();return{top:e,left:n,right:r,bottom:o,width:t.clientWidth,height:t.clientHeight}}function Qn(t){return t.reduce((e,n)=>tt(e,nn(n)),be)}function Yo(t){return t.reduce((e,n)=>e+Wn(n),0)}function Wo(t){return t.reduce((e,n)=>e+qn(n),0)}function Zn(t,e){if(e===void 0&&(e=ot),!t)return;const{top:n,left:r,bottom:o,right:s}=e(t);Yn(t)&&(o<=0||s<=0||n>=window.innerHeight||r>=window.innerWidth)&&t.scrollIntoView({block:"center",inline:"center"})}const qo=[["x",["left","right"],Yo],["y",["top","bottom"],Wo]];class ln{constructor(e,n){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;const r=$t(n),o=Qn(r);this.rect={...e},this.width=e.width,this.height=e.height;for(const[s,a,c]of qo)for(const l of a)Object.defineProperty(this,l,{get:()=>{const f=c(r),h=o[s]-f;return this.rect[l]+h},enumerable:!0});Object.defineProperty(this,"rect",{enumerable:!1})}}class gt{constructor(e){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(n=>{var r;return(r=this.target)==null?void 0:r.removeEventListener(...n)})},this.target=e}add(e,n,r){var o;(o=this.target)==null||o.addEventListener(e,n,r),this.listeners.push([e,n,r])}}function Go(t){const{EventTarget:e}=Q(t);return t instanceof e?t:rt(t)}function en(t,e){const n=Math.abs(t.x),r=Math.abs(t.y);return typeof e=="number"?Math.sqrt(n**2+r**2)>e:"x"in e&&"y"in e?n>e.x&&r>e.y:"x"in e?n>e.x:"y"in e?r>e.y:!1}var fe;(function(t){t.Click="click",t.DragStart="dragstart",t.Keydown="keydown",t.ContextMenu="contextmenu",t.Resize="resize",t.SelectionChange="selectionchange",t.VisibilityChange="visibilitychange"})(fe||(fe={}));function wn(t){t.preventDefault()}function Jo(t){t.stopPropagation()}var _;(function(t){t.Space="Space",t.Down="ArrowDown",t.Right="ArrowRight",t.Left="ArrowLeft",t.Up="ArrowUp",t.Esc="Escape",t.Enter="Enter",t.Tab="Tab"})(_||(_={}));const er={start:[_.Space,_.Enter],cancel:[_.Esc],end:[_.Space,_.Enter,_.Tab]},Qo=(t,e)=>{let{currentCoordinates:n}=e;switch(t.code){case _.Right:return{...n,x:n.x+25};case _.Left:return{...n,x:n.x-25};case _.Down:return{...n,y:n.y+25};case _.Up:return{...n,y:n.y-25}}};class tr{constructor(e){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=e;const{event:{target:n}}=e;this.props=e,this.listeners=new gt(rt(n)),this.windowListeners=new gt(Q(n)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(fe.Resize,this.handleCancel),this.windowListeners.add(fe.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(fe.Keydown,this.handleKeyDown))}handleStart(){const{activeNode:e,onStart:n}=this.props,r=e.node.current;r&&Zn(r),n(be)}handleKeyDown(e){if(Bt(e)){const{active:n,context:r,options:o}=this.props,{keyboardCodes:s=er,coordinateGetter:a=Qo,scrollBehavior:c="smooth"}=o,{code:l}=e;if(s.end.includes(l)){this.handleEnd(e);return}if(s.cancel.includes(l)){this.handleCancel(e);return}const{collisionRect:f}=r.current,h=f?{x:f.left,y:f.top}:be;this.referenceCoordinates||(this.referenceCoordinates=h);const d=a(e,{active:n,context:r.current,currentCoordinates:h});if(d){const g=bt(d,h),m={x:0,y:0},{scrollableAncestors:N}=r.current;for(const x of N){const v=e.code,{isTop:j,isRight:C,isLeft:S,isBottom:R,maxScroll:T,minScroll:A}=Jn(x),p=Ho(x),y={x:Math.min(v===_.Right?p.right-p.width/2:p.right,Math.max(v===_.Right?p.left:p.left+p.width/2,d.x)),y:Math.min(v===_.Down?p.bottom-p.height/2:p.bottom,Math.max(v===_.Down?p.top:p.top+p.height/2,d.y))},b=v===_.Right&&!C||v===_.Left&&!S,w=v===_.Down&&!R||v===_.Up&&!j;if(b&&y.x!==d.x){const I=x.scrollLeft+g.x,O=v===_.Right&&I<=T.x||v===_.Left&&I>=A.x;if(O&&!g.y){x.scrollTo({left:I,behavior:c});return}O?m.x=x.scrollLeft-I:m.x=v===_.Right?x.scrollLeft-T.x:x.scrollLeft-A.x,m.x&&x.scrollBy({left:-m.x,behavior:c});break}else if(w&&y.y!==d.y){const I=x.scrollTop+g.y,O=v===_.Down&&I<=T.y||v===_.Up&&I>=A.y;if(O&&!g.x){x.scrollTo({top:I,behavior:c});return}O?m.y=x.scrollTop-I:m.y=v===_.Down?x.scrollTop-T.y:x.scrollTop-A.y,m.y&&x.scrollBy({top:-m.y,behavior:c});break}}this.handleMove(e,tt(bt(d,this.referenceCoordinates),m))}}}handleMove(e,n){const{onMove:r}=this.props;e.preventDefault(),r(n)}handleEnd(e){const{onEnd:n}=this.props;e.preventDefault(),this.detach(),n()}handleCancel(e){const{onCancel:n}=this.props;e.preventDefault(),this.detach(),n()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}}tr.activators=[{eventName:"onKeyDown",handler:(t,e,n)=>{let{keyboardCodes:r=er,onActivation:o}=e,{active:s}=n;const{code:a}=t.nativeEvent;if(r.start.includes(a)){const c=s.activatorNode.current;return c&&t.target!==c?!1:(t.preventDefault(),o?.({event:t.nativeEvent}),!0)}return!1}}];function Cn(t){return!!(t&&"distance"in t)}function Sn(t){return!!(t&&"delay"in t)}class dn{constructor(e,n,r){var o;r===void 0&&(r=Go(e.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=e,this.events=n;const{event:s}=e,{target:a}=s;this.props=e,this.events=n,this.document=rt(a),this.documentListeners=new gt(this.document),this.listeners=new gt(r),this.windowListeners=new gt(Q(a)),this.initialCoordinates=(o=kt(s))!=null?o:be,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){const{events:e,props:{options:{activationConstraint:n,bypassActivationConstraint:r}}}=this;if(this.listeners.add(e.move.name,this.handleMove,{passive:!1}),this.listeners.add(e.end.name,this.handleEnd),e.cancel&&this.listeners.add(e.cancel.name,this.handleCancel),this.windowListeners.add(fe.Resize,this.handleCancel),this.windowListeners.add(fe.DragStart,wn),this.windowListeners.add(fe.VisibilityChange,this.handleCancel),this.windowListeners.add(fe.ContextMenu,wn),this.documentListeners.add(fe.Keydown,this.handleKeydown),n){if(r!=null&&r({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(Sn(n)){this.timeoutId=setTimeout(this.handleStart,n.delay),this.handlePending(n);return}if(Cn(n)){this.handlePending(n);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(e,n){const{active:r,onPending:o}=this.props;o(r,e,this.initialCoordinates,n)}handleStart(){const{initialCoordinates:e}=this,{onStart:n}=this.props;e&&(this.activated=!0,this.documentListeners.add(fe.Click,Jo,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(fe.SelectionChange,this.removeTextSelection),n(e))}handleMove(e){var n;const{activated:r,initialCoordinates:o,props:s}=this,{onMove:a,options:{activationConstraint:c}}=s;if(!o)return;const l=(n=kt(e))!=null?n:be,f=bt(o,l);if(!r&&c){if(Cn(c)){if(c.tolerance!=null&&en(f,c.tolerance))return this.handleCancel();if(en(f,c.distance))return this.handleStart()}if(Sn(c)&&en(f,c.tolerance))return this.handleCancel();this.handlePending(c,f);return}e.cancelable&&e.preventDefault(),a(l)}handleEnd(){const{onAbort:e,onEnd:n}=this.props;this.detach(),this.activated||e(this.props.active),n()}handleCancel(){const{onAbort:e,onCancel:n}=this.props;this.detach(),this.activated||e(this.props.active),n()}handleKeydown(e){e.code===_.Esc&&this.handleCancel()}removeTextSelection(){var e;(e=this.document.getSelection())==null||e.removeAllRanges()}}const Zo={cancel:{name:"pointercancel"},move:{name:"pointermove"},end:{name:"pointerup"}};class nr extends dn{constructor(e){const{event:n}=e,r=rt(n.target);super(e,Zo,r)}}nr.activators=[{eventName:"onPointerDown",handler:(t,e)=>{let{nativeEvent:n}=t,{onActivation:r}=e;return!n.isPrimary||n.button!==0?!1:(r?.({event:n}),!0)}}];const es={move:{name:"mousemove"},end:{name:"mouseup"}};var rn;(function(t){t[t.RightClick=2]="RightClick"})(rn||(rn={}));class ts extends dn{constructor(e){super(e,es,rt(e.event.target))}}ts.activators=[{eventName:"onMouseDown",handler:(t,e)=>{let{nativeEvent:n}=t,{onActivation:r}=e;return n.button===rn.RightClick?!1:(r?.({event:n}),!0)}}];const tn={cancel:{name:"touchcancel"},move:{name:"touchmove"},end:{name:"touchend"}};class ns extends dn{constructor(e){super(e,tn)}static setup(){return window.addEventListener(tn.move.name,e,{capture:!1,passive:!1}),function(){window.removeEventListener(tn.move.name,e)};function e(){}}}ns.activators=[{eventName:"onTouchStart",handler:(t,e)=>{let{nativeEvent:n}=t,{onActivation:r}=e;const{touches:o}=n;return o.length>1?!1:(r?.({event:n}),!0)}}];var pt;(function(t){t[t.Pointer=0]="Pointer",t[t.DraggableRect=1]="DraggableRect"})(pt||(pt={}));var Ot;(function(t){t[t.TreeOrder=0]="TreeOrder",t[t.ReversedTreeOrder=1]="ReversedTreeOrder"})(Ot||(Ot={}));function rs(t){let{acceleration:e,activator:n=pt.Pointer,canScroll:r,draggingRect:o,enabled:s,interval:a=5,order:c=Ot.TreeOrder,pointerCoordinates:l,scrollableAncestors:f,scrollableAncestorRects:h,delta:d,threshold:g}=t;const m=ss({delta:d,disabled:!s}),[N,x]=bo(),v=u.useRef({x:0,y:0}),j=u.useRef({x:0,y:0}),C=u.useMemo(()=>{switch(n){case pt.Pointer:return l?{top:l.y,bottom:l.y,left:l.x,right:l.x}:null;case pt.DraggableRect:return o}},[n,o,l]),S=u.useRef(null),R=u.useCallback(()=>{const A=S.current;if(!A)return;const p=v.current.x*j.current.x,y=v.current.y*j.current.y;A.scrollBy(p,y)},[]),T=u.useMemo(()=>c===Ot.TreeOrder?[...f].reverse():f,[c,f]);u.useEffect(()=>{if(!s||!f.length||!C){x();return}for(const A of T){if(r?.(A)===!1)continue;const p=f.indexOf(A),y=h[p];if(!y)continue;const{direction:b,speed:w}=Uo(A,y,C,e,g);for(const I of["x","y"])m[I][b[I]]||(w[I]=0,b[I]=0);if(w.x>0||w.y>0){x(),S.current=A,N(R,a),v.current=w,j.current=b;return}}v.current={x:0,y:0},j.current={x:0,y:0},x()},[e,R,r,x,s,a,JSON.stringify(C),JSON.stringify(m),N,f,T,h,JSON.stringify(g)])}const os={x:{[X.Backward]:!1,[X.Forward]:!1},y:{[X.Backward]:!1,[X.Forward]:!1}};function ss(t){let{delta:e,disabled:n}=t;const r=_t(e);return wt(o=>{if(n||!r||!o)return os;const s={x:Math.sign(e.x-r.x),y:Math.sign(e.y-r.y)};return{x:{[X.Backward]:o.x[X.Backward]||s.x===-1,[X.Forward]:o.x[X.Forward]||s.x===1},y:{[X.Backward]:o.y[X.Backward]||s.y===-1,[X.Forward]:o.y[X.Forward]||s.y===1}}},[n,e,r])}function is(t,e){const n=e!=null?t.get(e):void 0,r=n?n.node.current:null;return wt(o=>{var s;return e==null?null:(s=r??o)!=null?s:null},[r,e])}function as(t,e){return u.useMemo(()=>t.reduce((n,r)=>{const{sensor:o}=r,s=o.activators.map(a=>({eventName:a.eventName,handler:e(a.handler,r)}));return[...n,...s]},[]),[t,e])}var xt;(function(t){t[t.Always=0]="Always",t[t.BeforeDragging=1]="BeforeDragging",t[t.WhileDragging=2]="WhileDragging"})(xt||(xt={}));var on;(function(t){t.Optimized="optimized"})(on||(on={}));const Dn=new Map;function cs(t,e){let{dragging:n,dependencies:r,config:o}=e;const[s,a]=u.useState(null),{frequency:c,measure:l,strategy:f}=o,h=u.useRef(t),d=v(),g=mt(d),m=u.useCallback(function(j){j===void 0&&(j=[]),!g.current&&a(C=>C===null?j:C.concat(j.filter(S=>!C.includes(S))))},[g]),N=u.useRef(null),x=wt(j=>{if(d&&!n)return Dn;if(!j||j===Dn||h.current!==t||s!=null){const C=new Map;for(let S of t){if(!S)continue;if(s&&s.length>0&&!s.includes(S.id)&&S.rect.current){C.set(S.id,S.rect.current);continue}const R=S.node.current,T=R?new ln(l(R),R):null;S.rect.current=T,T&&C.set(S.id,T)}return C}return j},[t,s,n,d,l]);return u.useEffect(()=>{h.current=t},[t]),u.useEffect(()=>{d||m()},[n,d]),u.useEffect(()=>{s&&s.length>0&&a(null)},[JSON.stringify(s)]),u.useEffect(()=>{d||typeof c!="number"||N.current!==null||(N.current=setTimeout(()=>{m(),N.current=null},c))},[c,d,m,...r]),{droppableRects:x,measureDroppableContainers:m,measuringScheduled:s!=null};function v(){switch(f){case xt.Always:return!1;case xt.BeforeDragging:return n;default:return!n}}}function un(t,e){return wt(n=>t?n||(typeof e=="function"?e(t):t):null,[e,t])}function ls(t,e){return un(t,e)}function ds(t){let{callback:e,disabled:n}=t;const r=zt(e),o=u.useMemo(()=>{if(n||typeof window>"u"||typeof window.MutationObserver>"u")return;const{MutationObserver:s}=window;return new s(r)},[r,n]);return u.useEffect(()=>()=>o?.disconnect(),[o]),o}function Vt(t){let{callback:e,disabled:n}=t;const r=zt(e),o=u.useMemo(()=>{if(n||typeof window>"u"||typeof window.ResizeObserver>"u")return;const{ResizeObserver:s}=window;return new s(r)},[n]);return u.useEffect(()=>()=>o?.disconnect(),[o]),o}function us(t){return new ln(ot(t),t)}function jn(t,e,n){e===void 0&&(e=us);const[r,o]=u.useState(null);function s(){o(l=>{if(!t)return null;if(t.isConnected===!1){var f;return(f=l??n)!=null?f:null}const h=e(t);return JSON.stringify(l)===JSON.stringify(h)?l:h})}const a=ds({callback(l){if(t)for(const f of l){const{type:h,target:d}=f;if(h==="childList"&&d instanceof HTMLElement&&d.contains(t)){s();break}}}}),c=Vt({callback:s});return me(()=>{s(),t?(c?.observe(t),a?.observe(document.body,{childList:!0,subtree:!0})):(c?.disconnect(),a?.disconnect())},[t]),r}function fs(t){const e=un(t);return Un(t,e)}const Rn=[];function hs(t){const e=u.useRef(t),n=wt(r=>t?r&&r!==Rn&&t&&e.current&&t.parentNode===e.current.parentNode?r:$t(t):Rn,[t]);return u.useEffect(()=>{e.current=t},[t]),n}function gs(t){const[e,n]=u.useState(null),r=u.useRef(t),o=u.useCallback(s=>{const a=Zt(s.target);a&&n(c=>c?(c.set(a,nn(a)),new Map(c)):null)},[]);return u.useEffect(()=>{const s=r.current;if(t!==s){a(s);const c=t.map(l=>{const f=Zt(l);return f?(f.addEventListener("scroll",o,{passive:!0}),[f,nn(f)]):null}).filter(l=>l!=null);n(c.length?new Map(c):null),r.current=t}return()=>{a(t),a(s)};function a(c){c.forEach(l=>{const f=Zt(l);f?.removeEventListener("scroll",o)})}},[o,t]),u.useMemo(()=>t.length?e?Array.from(e.values()).reduce((s,a)=>tt(s,a),be):Qn(t):be,[t,e])}function Nn(t,e){e===void 0&&(e=[]);const n=u.useRef(null);return u.useEffect(()=>{n.current=null},e),u.useEffect(()=>{const r=t!==be;r&&!n.current&&(n.current=t),!r&&n.current&&(n.current=null)},[t]),n.current?bt(t,n.current):be}function ps(t){u.useEffect(()=>{if(!Ft)return;const e=t.map(n=>{let{sensor:r}=n;return r.setup==null?void 0:r.setup()});return()=>{for(const n of e)n?.()}},t.map(e=>{let{sensor:n}=e;return n}))}function vs(t,e){return u.useMemo(()=>t.reduce((n,r)=>{let{eventName:o,handler:s}=r;return n[o]=a=>{s(a,e)},n},{}),[t,e])}function rr(t){return u.useMemo(()=>t?$o(t):null,[t])}const In=[];function ms(t,e){e===void 0&&(e=ot);const[n]=t,r=rr(n?Q(n):null),[o,s]=u.useState(In);function a(){s(()=>t.length?t.map(l=>Gn(l)?r:new ln(e(l),l)):In)}const c=Vt({callback:a});return me(()=>{c?.disconnect(),a(),t.forEach(l=>c?.observe(l))},[t]),o}function or(t){if(!t)return null;if(t.children.length>1)return t;const e=t.children[0];return yt(e)?e:t}function bs(t){let{measure:e}=t;const[n,r]=u.useState(null),o=u.useCallback(f=>{for(const{target:h}of f)if(yt(h)){r(d=>{const g=e(h);return d?{...d,width:g.width,height:g.height}:g});break}},[e]),s=Vt({callback:o}),a=u.useCallback(f=>{const h=or(f);s?.disconnect(),h&&s?.observe(h),r(h?e(h):null)},[e,s]),[c,l]=Tt(a);return u.useMemo(()=>({nodeRef:c,rect:n,setRef:l}),[n,c,l])}const xs=[{sensor:nr,options:{}},{sensor:tr,options:{}}],ys={current:{}},Et={draggable:{measure:yn},droppable:{measure:yn,strategy:xt.WhileDragging,frequency:on.Optimized},dragOverlay:{measure:ot}};class vt extends Map{get(e){var n;return e!=null&&(n=super.get(e))!=null?n:void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(e=>{let{disabled:n}=e;return!n})}getNodeFor(e){var n,r;return(n=(r=this.get(e))==null?void 0:r.node.current)!=null?n:void 0}}const ws={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new vt,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:Mt},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:Et,measureDroppableContainers:Mt,windowRect:null,measuringScheduled:!1},sr={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:""},dispatch:Mt,draggableNodes:new Map,over:null,measureDroppableContainers:Mt},St=u.createContext(sr),ir=u.createContext(ws);function Cs(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new vt}}}function Ss(t,e){switch(e.type){case V.DragStart:return{...t,draggable:{...t.draggable,initialCoordinates:e.initialCoordinates,active:e.active}};case V.DragMove:return t.draggable.active==null?t:{...t,draggable:{...t.draggable,translate:{x:e.coordinates.x-t.draggable.initialCoordinates.x,y:e.coordinates.y-t.draggable.initialCoordinates.y}}};case V.DragEnd:case V.DragCancel:return{...t,draggable:{...t.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case V.RegisterDroppable:{const{element:n}=e,{id:r}=n,o=new vt(t.droppable.containers);return o.set(r,n),{...t,droppable:{...t.droppable,containers:o}}}case V.SetDroppableDisabled:{const{id:n,key:r,disabled:o}=e,s=t.droppable.containers.get(n);if(!s||r!==s.key)return t;const a=new vt(t.droppable.containers);return a.set(n,{...s,disabled:o}),{...t,droppable:{...t.droppable,containers:a}}}case V.UnregisterDroppable:{const{id:n,key:r}=e,o=t.droppable.containers.get(n);if(!o||r!==o.key)return t;const s=new vt(t.droppable.containers);return s.delete(n),{...t,droppable:{...t.droppable,containers:s}}}default:return t}}function Ds(t){let{disabled:e}=t;const{active:n,activatorEvent:r,draggableNodes:o}=u.useContext(St),s=_t(r),a=_t(n?.id);return u.useEffect(()=>{if(!e&&!r&&s&&a!=null){if(!Bt(s)||document.activeElement===s.target)return;const c=o.get(a);if(!c)return;const{activatorNode:l,node:f}=c;if(!l.current&&!f.current)return;requestAnimationFrame(()=>{for(const h of[l.current,f.current]){if(!h)continue;const d=wo(h);if(d){d.focus();break}}})}},[r,e,o,a,s]),null}function ar(t,e){let{transform:n,...r}=e;return t!=null&&t.length?t.reduce((o,s)=>s({transform:o,...r}),n):n}function js(t){return u.useMemo(()=>({draggable:{...Et.draggable,...t?.draggable},droppable:{...Et.droppable,...t?.droppable},dragOverlay:{...Et.dragOverlay,...t?.dragOverlay}}),[t?.draggable,t?.droppable,t?.dragOverlay])}function Rs(t){let{activeNode:e,measure:n,initialRect:r,config:o=!0}=t;const s=u.useRef(!1),{x:a,y:c}=typeof o=="boolean"?{x:o,y:o}:o;me(()=>{if(!a&&!c||!e){s.current=!1;return}if(s.current||!r)return;const f=e?.node.current;if(!f||f.isConnected===!1)return;const h=n(f),d=Un(h,r);if(a||(d.x=0),c||(d.y=0),s.current=!0,Math.abs(d.x)>0||Math.abs(d.y)>0){const g=Yn(f);g&&g.scrollBy({top:d.y,left:d.x})}},[e,a,c,r,n])}const Kt=u.createContext({...be,scaleX:1,scaleY:1});var Xe;(function(t){t[t.Uninitialized=0]="Uninitialized",t[t.Initializing=1]="Initializing",t[t.Initialized=2]="Initialized"})(Xe||(Xe={}));const Hi=u.memo(function(e){var n,r,o,s;let{id:a,accessibility:c,autoScroll:l=!0,children:f,sensors:h=xs,collisionDetection:d=Oo,measuring:g,modifiers:m,...N}=e;const x=u.useReducer(Ss,void 0,Cs),[v,j]=x,[C,S]=No(),[R,T]=u.useState(Xe.Uninitialized),A=R===Xe.Initialized,{draggable:{active:p,nodes:y,translate:b},droppable:{containers:w}}=v,I=p!=null?y.get(p):null,O=u.useRef({initial:null,translated:null}),k=u.useMemo(()=>{var F;return p!=null?{id:p,data:(F=I?.data)!=null?F:ys,rect:O}:null},[p,I]),E=u.useRef(null),[B,ae]=u.useState(null),[K,Y]=u.useState(null),ce=mt(N,Object.values(N)),xe=Ct("DndDescribedBy",a),qe=u.useMemo(()=>w.getEnabled(),[w]),$=js(g),{droppableRects:U,measureDroppableContainers:he,measuringScheduled:Ae}=cs(qe,{dragging:A,dependencies:[b.x,b.y],config:$.droppable}),L=is(y,p),Ue=u.useMemo(()=>K?kt(K):null,[K]),Z=te(),W=ls(L,$.draggable.measure);Rs({activeNode:p!=null?y.get(p):null,config:Z.layoutShiftCompensation,initialRect:W,measure:$.draggable.measure});const M=jn(L,$.draggable.measure,W),Ee=jn(L?L.parentElement:null),q=u.useRef({activatorEvent:null,active:null,activeNode:L,collisionRect:null,collisions:null,droppableRects:U,draggableNodes:y,draggingNode:null,draggingNodeRect:null,droppableContainers:w,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),ge=w.getNodeFor((n=q.current.over)==null?void 0:n.id),ee=bs({measure:$.dragOverlay.measure}),Te=(r=ee.nodeRef.current)!=null?r:L,ye=A?(o=ee.rect)!=null?o:M:null,Ge=!!(ee.nodeRef.current&&ee.rect),_e=fs(Ge?null:M),st=rr(Te?Q(Te):null),ne=hs(A?ge??L:null),Fe=ms(ne),pe=ar(m,{transform:{x:b.x-_e.x,y:b.y-_e.y,scaleX:1,scaleY:1},activatorEvent:K,active:k,activeNodeRect:M,containerNodeRect:Ee,draggingNodeRect:ye,over:q.current.over,overlayNodeRect:ee.rect,scrollableAncestors:ne,scrollableAncestorRects:Fe,windowRect:st}),ke=Ue?tt(Ue,b):null,Je=gs(ne),it=Nn(Je),at=Nn(Je,[M]),we=tt(pe,it),re=ye?Fo(ye,pe):null,le=k&&re?d({active:k,collisionRect:re,droppableRects:U,droppableContainers:qe,pointerCoordinates:ke}):null,Me=Xn(le,"id"),[G,Oe]=u.useState(null),Qe=Ge?pe:tt(pe,at),D=Po(Qe,(s=G?.rect)!=null?s:null,M),P=u.useRef(null),de=u.useCallback((F,oe)=>{let{sensor:se,options:$e}=oe;if(E.current==null)return;const ue=y.get(E.current);if(!ue)return;const ie=F.nativeEvent,Ce=new se({active:E.current,activeNode:ue,event:ie,options:$e,context:q,onAbort(H){if(!y.get(H))return;const{onDragAbort:Se}=ce.current,Pe={id:H};Se?.(Pe),C({type:"onDragAbort",event:Pe})},onPending(H,Ve,Se,Pe){if(!y.get(H))return;const{onDragPending:lt}=ce.current,Ke={id:H,constraint:Ve,initialCoordinates:Se,offset:Pe};lt?.(Ke),C({type:"onDragPending",event:Ke})},onStart(H){const Ve=E.current;if(Ve==null)return;const Se=y.get(Ve);if(!Se)return;const{onDragStart:Pe}=ce.current,ct={activatorEvent:ie,active:{id:Ve,data:Se.data,rect:O}};ft.unstable_batchedUpdates(()=>{Pe?.(ct),T(Xe.Initializing),j({type:V.DragStart,initialCoordinates:H,active:Ve}),C({type:"onDragStart",event:ct}),ae(P.current),Y(ie)})},onMove(H){j({type:V.DragMove,coordinates:H})},onEnd:et(V.DragEnd),onCancel:et(V.DragCancel)});P.current=Ce;function et(H){return async function(){const{active:Se,collisions:Pe,over:ct,scrollAdjustedTranslate:lt}=q.current;let Ke=null;if(Se&<){const{cancelDrop:dt}=ce.current;Ke={activatorEvent:ie,active:Se,collisions:Pe,delta:lt,over:ct},H===V.DragEnd&&typeof dt=="function"&&await Promise.resolve(dt(Ke))&&(H=V.DragCancel)}E.current=null,ft.unstable_batchedUpdates(()=>{j({type:H}),T(Xe.Uninitialized),Oe(null),ae(null),Y(null),P.current=null;const dt=H===V.DragEnd?"onDragEnd":"onDragCancel";if(Ke){const Xt=ce.current[dt];Xt?.(Ke),C({type:dt,event:Ke})}})}}},[y]),ze=u.useCallback((F,oe)=>(se,$e)=>{const ue=se.nativeEvent,ie=y.get($e);if(E.current!==null||!ie||ue.dndKit||ue.defaultPrevented)return;const Ce={active:ie};F(se,oe.options,Ce)===!0&&(ue.dndKit={capturedBy:oe.sensor},E.current=$e,de(se,oe))},[y,de]),ve=as(h,ze);ps(h),me(()=>{M&&R===Xe.Initializing&&T(Xe.Initialized)},[M,R]),u.useEffect(()=>{const{onDragMove:F}=ce.current,{active:oe,activatorEvent:se,collisions:$e,over:ue}=q.current;if(!oe||!se)return;const ie={active:oe,activatorEvent:se,collisions:$e,delta:{x:we.x,y:we.y},over:ue};ft.unstable_batchedUpdates(()=>{F?.(ie),C({type:"onDragMove",event:ie})})},[we.x,we.y]),u.useEffect(()=>{const{active:F,activatorEvent:oe,collisions:se,droppableContainers:$e,scrollAdjustedTranslate:ue}=q.current;if(!F||E.current==null||!oe||!ue)return;const{onDragOver:ie}=ce.current,Ce=$e.get(Me),et=Ce&&Ce.rect.current?{id:Ce.id,rect:Ce.rect.current,data:Ce.data,disabled:Ce.disabled}:null,H={active:F,activatorEvent:oe,collisions:se,delta:{x:ue.x,y:ue.y},over:et};ft.unstable_batchedUpdates(()=>{Oe(et),ie?.(H),C({type:"onDragOver",event:H})})},[Me]),me(()=>{q.current={activatorEvent:K,active:k,activeNode:L,collisionRect:re,collisions:le,droppableRects:U,draggableNodes:y,draggingNode:Te,draggingNodeRect:ye,droppableContainers:w,over:G,scrollableAncestors:ne,scrollAdjustedTranslate:we},O.current={initial:ye,translated:re}},[k,L,le,re,y,Te,ye,U,w,G,ne,we]),rs({...Z,delta:b,draggingRect:re,pointerCoordinates:ke,scrollableAncestors:ne,scrollableAncestorRects:Fe});const Ze=u.useMemo(()=>({active:k,activeNode:L,activeNodeRect:M,activatorEvent:K,collisions:le,containerNodeRect:Ee,dragOverlay:ee,draggableNodes:y,droppableContainers:w,droppableRects:U,over:G,measureDroppableContainers:he,scrollableAncestors:ne,scrollableAncestorRects:Fe,measuringConfiguration:$,measuringScheduled:Ae,windowRect:st}),[k,L,M,K,le,Ee,ee,y,w,U,G,he,ne,Fe,$,Ae,st]),Be=u.useMemo(()=>({activatorEvent:K,activators:ve,active:k,activeNodeRect:M,ariaDescribedById:{draggable:xe},dispatch:j,draggableNodes:y,over:G,measureDroppableContainers:he}),[K,ve,k,M,j,xe,y,G,he]);return z.createElement($n.Provider,{value:S},z.createElement(St.Provider,{value:Be},z.createElement(ir.Provider,{value:Ze},z.createElement(Kt.Provider,{value:D},f)),z.createElement(Ds,{disabled:c?.restoreFocus===!1})),z.createElement(Eo,{...c,hiddenTextDescribedById:xe}));function te(){const F=B?.autoScrollEnabled===!1,oe=typeof l=="object"?l.enabled===!1:l===!1,se=A&&!F&&!oe;return typeof l=="object"?{...l,enabled:se}:{enabled:se}}}),Ns=u.createContext(null),An="button",Is="Draggable";function As(t){let{id:e,data:n,disabled:r=!1,attributes:o}=t;const s=Ct(Is),{activators:a,activatorEvent:c,active:l,activeNodeRect:f,ariaDescribedById:h,draggableNodes:d,over:g}=u.useContext(St),{role:m=An,roleDescription:N="draggable",tabIndex:x=0}=o??{},v=l?.id===e,j=u.useContext(v?Kt:Ns),[C,S]=Tt(),[R,T]=Tt(),A=vs(a,e),p=mt(n);me(()=>(d.set(e,{id:e,key:s,node:C,activatorNode:R,data:p}),()=>{const b=d.get(e);b&&b.key===s&&d.delete(e)}),[d,e]);const y=u.useMemo(()=>({role:m,tabIndex:x,"aria-disabled":r,"aria-pressed":v&&m===An?!0:void 0,"aria-roledescription":N,"aria-describedby":h.draggable}),[r,m,x,v,N,h.draggable]);return{active:l,activatorEvent:c,activeNodeRect:f,attributes:y,isDragging:v,listeners:r?void 0:A,node:C,over:g,setNodeRef:S,setActivatorNodeRef:T,transform:j}}function cr(){return u.useContext(ir)}const Es="Droppable",Ts={timeout:25};function _s(t){let{data:e,disabled:n=!1,id:r,resizeObserverConfig:o}=t;const s=Ct(Es),{active:a,dispatch:c,over:l,measureDroppableContainers:f}=u.useContext(St),h=u.useRef({disabled:n}),d=u.useRef(!1),g=u.useRef(null),m=u.useRef(null),{disabled:N,updateMeasurementsFor:x,timeout:v}={...Ts,...o},j=mt(x??r),C=u.useCallback(()=>{if(!d.current){d.current=!0;return}m.current!=null&&clearTimeout(m.current),m.current=setTimeout(()=>{f(Array.isArray(j.current)?j.current:[j.current]),m.current=null},v)},[v]),S=Vt({callback:C,disabled:N||!a}),R=u.useCallback((y,b)=>{S&&(b&&(S.unobserve(b),d.current=!1),y&&S.observe(y))},[S]),[T,A]=Tt(R),p=mt(e);return u.useEffect(()=>{!S||!T.current||(S.disconnect(),d.current=!1,S.observe(T.current))},[T,S]),u.useEffect(()=>(c({type:V.RegisterDroppable,element:{id:r,key:s,disabled:n,node:T,rect:g,data:p}}),()=>c({type:V.UnregisterDroppable,key:s,id:r})),[r]),u.useEffect(()=>{n!==h.current.disabled&&(c({type:V.SetDroppableDisabled,id:r,key:s,disabled:n}),h.current.disabled=n)},[r,s,n,c]),{active:a,rect:g,isOver:l?.id===r,node:T,over:l,setNodeRef:A}}function ks(t){let{animation:e,children:n}=t;const[r,o]=u.useState(null),[s,a]=u.useState(null),c=_t(n);return!n&&!r&&c&&o(c),me(()=>{if(!s)return;const l=r?.key,f=r?.props.id;if(l==null||f==null){o(null);return}Promise.resolve(e(f,s)).then(()=>{o(null)})},[e,r,s]),z.createElement(z.Fragment,null,n,r?u.cloneElement(r,{ref:a}):null)}const Ms={x:0,y:0,scaleX:1,scaleY:1};function Os(t){let{children:e}=t;return z.createElement(St.Provider,{value:sr},z.createElement(Kt.Provider,{value:Ms},e))}const Ps={position:"fixed",touchAction:"none"},Ls=t=>Bt(t)?"transform 250ms ease":void 0,Fs=u.forwardRef((t,e)=>{let{as:n,activatorEvent:r,adjustScale:o,children:s,className:a,rect:c,style:l,transform:f,transition:h=Ls}=t;if(!c)return null;const d=o?f:{...f,scaleX:1,scaleY:1},g={...Ps,width:c.width,height:c.height,top:c.top,left:c.left,transform:We.Transform.toString(d),transformOrigin:o&&r?To(r,c):void 0,transition:typeof h=="function"?h(r):h,...l};return z.createElement(n,{className:a,style:g,ref:e},s)}),zs=t=>e=>{let{active:n,dragOverlay:r}=e;const o={},{styles:s,className:a}=t;if(s!=null&&s.active)for(const[c,l]of Object.entries(s.active))l!==void 0&&(o[c]=n.node.style.getPropertyValue(c),n.node.style.setProperty(c,l));if(s!=null&&s.dragOverlay)for(const[c,l]of Object.entries(s.dragOverlay))l!==void 0&&r.node.style.setProperty(c,l);return a!=null&&a.active&&n.node.classList.add(a.active),a!=null&&a.dragOverlay&&r.node.classList.add(a.dragOverlay),function(){for(const[l,f]of Object.entries(o))n.node.style.setProperty(l,f);a!=null&&a.active&&n.node.classList.remove(a.active)}},Bs=t=>{let{transform:{initial:e,final:n}}=t;return[{transform:We.Transform.toString(e)},{transform:We.Transform.toString(n)}]},$s={duration:250,easing:"ease",keyframes:Bs,sideEffects:zs({styles:{active:{opacity:"0"}}})};function Vs(t){let{config:e,draggableNodes:n,droppableContainers:r,measuringConfiguration:o}=t;return zt((s,a)=>{if(e===null)return;const c=n.get(s);if(!c)return;const l=c.node.current;if(!l)return;const f=or(a);if(!f)return;const{transform:h}=Q(a).getComputedStyle(a),d=Hn(h);if(!d)return;const g=typeof e=="function"?e:Ks(e);return Zn(l,o.draggable.measure),g({active:{id:s,data:c.data,node:l,rect:o.draggable.measure(l)},draggableNodes:n,dragOverlay:{node:a,rect:o.dragOverlay.measure(f)},droppableContainers:r,measuringConfiguration:o,transform:d})})}function Ks(t){const{duration:e,easing:n,sideEffects:r,keyframes:o}={...$s,...t};return s=>{let{active:a,dragOverlay:c,transform:l,...f}=s;if(!e)return;const h={x:c.rect.left-a.rect.left,y:c.rect.top-a.rect.top},d={scaleX:l.scaleX!==1?a.rect.width*l.scaleX/c.rect.width:1,scaleY:l.scaleY!==1?a.rect.height*l.scaleY/c.rect.height:1},g={x:l.x-h.x,y:l.y-h.y,...d},m=o({...f,active:a,dragOverlay:c,transform:{initial:l,final:g}}),[N]=m,x=m[m.length-1];if(JSON.stringify(N)===JSON.stringify(x))return;const v=r?.({active:a,dragOverlay:c,...f}),j=c.node.animate(m,{duration:e,easing:n,fill:"forwards"});return new Promise(C=>{j.onfinish=()=>{v?.(),C()}})}}let En=0;function Xs(t){return u.useMemo(()=>{if(t!=null)return En++,En},[t])}const Yi=z.memo(t=>{let{adjustScale:e=!1,children:n,dropAnimation:r,style:o,transition:s,modifiers:a,wrapperElement:c="div",className:l,zIndex:f=999}=t;const{activatorEvent:h,active:d,activeNodeRect:g,containerNodeRect:m,draggableNodes:N,droppableContainers:x,dragOverlay:v,over:j,measuringConfiguration:C,scrollableAncestors:S,scrollableAncestorRects:R,windowRect:T}=cr(),A=u.useContext(Kt),p=Xs(d?.id),y=ar(a,{activatorEvent:h,active:d,activeNodeRect:g,containerNodeRect:m,draggingNodeRect:v.rect,over:j,overlayNodeRect:v.rect,scrollableAncestors:S,scrollableAncestorRects:R,transform:A,windowRect:T}),b=un(g),w=Vs({config:r,draggableNodes:N,droppableContainers:x,measuringConfiguration:C}),I=b?v.setRef:void 0;return z.createElement(Os,null,z.createElement(ks,{animation:w},d&&p?z.createElement(Fs,{key:p,id:d.id,ref:I,as:c,activatorEvent:h,adjustScale:e,className:l,transition:s,rect:b,style:{zIndex:f,...o},transform:y},n):null))});function lr(t,e,n){const r=t.slice();return r.splice(n<0?r.length+n:n,0,r.splice(e,1)[0]),r}function Us(t,e){return t.reduce((n,r,o)=>{const s=e.get(r);return s&&(n[o]=s),n},Array(t.length))}function Rt(t){return t!==null&&t>=0}function Hs(t,e){if(t===e)return!0;if(t.length!==e.length)return!1;for(let n=0;n<t.length;n++)if(t[n]!==e[n])return!1;return!0}function Ys(t){return typeof t=="boolean"?{draggable:t,droppable:t}:t}const dr=t=>{let{rects:e,activeIndex:n,overIndex:r,index:o}=t;const s=lr(e,r,n),a=e[o],c=s[o];return!c||!a?null:{x:c.left-a.left,y:c.top-a.top,scaleX:c.width/a.width,scaleY:c.height/a.height}},Nt={scaleX:1,scaleY:1},Wi=t=>{var e;let{activeIndex:n,activeNodeRect:r,index:o,rects:s,overIndex:a}=t;const c=(e=s[n])!=null?e:r;if(!c)return null;if(o===n){const f=s[a];return f?{x:0,y:n<a?f.top+f.height-(c.top+c.height):f.top-c.top,...Nt}:null}const l=Ws(s,o,n);return o>n&&o<=a?{x:0,y:-c.height-l,...Nt}:o<n&&o>=a?{x:0,y:c.height+l,...Nt}:{x:0,y:0,...Nt}};function Ws(t,e,n){const r=t[e],o=t[e-1],s=t[e+1];return r?n<e?o?r.top-(o.top+o.height):s?s.top-(r.top+r.height):0:s?s.top-(r.top+r.height):o?r.top-(o.top+o.height):0:0}const ur="Sortable",fr=z.createContext({activeIndex:-1,containerId:ur,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:dr,disabled:{draggable:!1,droppable:!1}});function qi(t){let{children:e,id:n,items:r,strategy:o=dr,disabled:s=!1}=t;const{active:a,dragOverlay:c,droppableRects:l,over:f,measureDroppableContainers:h}=cr(),d=Ct(ur,n),g=c.rect!==null,m=u.useMemo(()=>r.map(A=>typeof A=="object"&&"id"in A?A.id:A),[r]),N=a!=null,x=a?m.indexOf(a.id):-1,v=f?m.indexOf(f.id):-1,j=u.useRef(m),C=!Hs(m,j.current),S=v!==-1&&x===-1||C,R=Ys(s);me(()=>{C&&N&&h(m)},[C,m,N,h]),u.useEffect(()=>{j.current=m},[m]);const T=u.useMemo(()=>({activeIndex:x,containerId:d,disabled:R,disableTransforms:S,items:m,overIndex:v,useDragOverlay:g,sortedRects:Us(m,l),strategy:o}),[x,d,R.draggable,R.droppable,S,m,v,l,g,o]);return z.createElement(fr.Provider,{value:T},e)}const qs=t=>{let{id:e,items:n,activeIndex:r,overIndex:o}=t;return lr(n,r,o).indexOf(e)},Gs=t=>{let{containerId:e,isSorting:n,wasDragging:r,index:o,items:s,newIndex:a,previousItems:c,previousContainerId:l,transition:f}=t;return!f||!r||c!==s&&o===a?!1:n?!0:a!==o&&e===l},Js={duration:200,easing:"ease"},hr="transform",Qs=We.Transition.toString({property:hr,duration:0,easing:"linear"}),Zs={roleDescription:"sortable"};function ei(t){let{disabled:e,index:n,node:r,rect:o}=t;const[s,a]=u.useState(null),c=u.useRef(n);return me(()=>{if(!e&&n!==c.current&&r.current){const l=o.current;if(l){const f=ot(r.current,{ignoreTransform:!0}),h={x:l.left-f.left,y:l.top-f.top,scaleX:l.width/f.width,scaleY:l.height/f.height};(h.x||h.y)&&a(h)}}n!==c.current&&(c.current=n)},[e,n,r,o]),u.useEffect(()=>{s&&a(null)},[s]),s}function Gi(t){let{animateLayoutChanges:e=Gs,attributes:n,disabled:r,data:o,getNewIndex:s=qs,id:a,strategy:c,resizeObserverConfig:l,transition:f=Js}=t;const{items:h,containerId:d,activeIndex:g,disabled:m,disableTransforms:N,sortedRects:x,overIndex:v,useDragOverlay:j,strategy:C}=u.useContext(fr),S=ti(r,m),R=h.indexOf(a),T=u.useMemo(()=>({sortable:{containerId:d,index:R,items:h},...o}),[d,o,R,h]),A=u.useMemo(()=>h.slice(h.indexOf(a)),[h,a]),{rect:p,node:y,isOver:b,setNodeRef:w}=_s({id:a,data:T,disabled:S.droppable,resizeObserverConfig:{updateMeasurementsFor:A,...l}}),{active:I,activatorEvent:O,activeNodeRect:k,attributes:E,setNodeRef:B,listeners:ae,isDragging:K,over:Y,setActivatorNodeRef:ce,transform:xe}=As({id:a,data:T,attributes:{...Zs,...n},disabled:S.draggable}),qe=mo(w,B),$=!!I,U=$&&!N&&Rt(g)&&Rt(v),he=!j&&K,Ae=he&&U?xe:null,Ue=U?Ae??(c??C)({rects:x,activeNodeRect:k,activeIndex:g,overIndex:v,index:R}):null,Z=Rt(g)&&Rt(v)?s({id:a,items:h,activeIndex:g,overIndex:v}):R,W=I?.id,M=u.useRef({activeId:W,items:h,newIndex:Z,containerId:d}),Ee=h!==M.current.items,q=e({active:I,containerId:d,isDragging:K,isSorting:$,id:a,index:R,items:h,newIndex:M.current.newIndex,previousItems:M.current.items,previousContainerId:M.current.containerId,transition:f,wasDragging:M.current.activeId!=null}),ge=ei({disabled:!q,index:R,node:y,rect:p});return u.useEffect(()=>{$&&M.current.newIndex!==Z&&(M.current.newIndex=Z),d!==M.current.containerId&&(M.current.containerId=d),h!==M.current.items&&(M.current.items=h)},[$,Z,d,h]),u.useEffect(()=>{if(W===M.current.activeId)return;if(W!=null&&M.current.activeId==null){M.current.activeId=W;return}const Te=setTimeout(()=>{M.current.activeId=W},50);return()=>clearTimeout(Te)},[W]),{active:I,activeIndex:g,attributes:E,data:T,rect:p,index:R,newIndex:Z,items:h,isOver:b,isSorting:$,isDragging:K,listeners:ae,node:y,overIndex:v,over:Y,setNodeRef:qe,setActivatorNodeRef:ce,setDroppableNodeRef:w,setDraggableNodeRef:B,transform:ge??Ue,transition:ee()};function ee(){if(ge||Ee&&M.current.newIndex===R)return Qs;if(!(he&&!Bt(O)||!f)&&($||q))return We.Transition.toString({...f,property:hr})}}function ti(t,e){var n,r;return typeof t=="boolean"?{draggable:t,droppable:!1}:{draggable:(n=t?.draggable)!=null?n:e.draggable,droppable:(r=t?.droppable)!=null?r:e.droppable}}function Pt(t){if(!t)return!1;const e=t.data.current;return!!(e&&"sortable"in e&&typeof e.sortable=="object"&&"containerId"in e.sortable&&"items"in e.sortable&&"index"in e.sortable)}const ni=[_.Down,_.Right,_.Up,_.Left],Ji=(t,e)=>{let{context:{active:n,collisionRect:r,droppableRects:o,droppableContainers:s,over:a,scrollableAncestors:c}}=e;if(ni.includes(t.code)){if(t.preventDefault(),!n||!r)return;const l=[];s.getEnabled().forEach(d=>{if(!d||d!=null&&d.disabled)return;const g=o.get(d.id);if(g)switch(t.code){case _.Down:r.top<g.top&&l.push(d);break;case _.Up:r.top>g.top&&l.push(d);break;case _.Left:r.left>g.left&&l.push(d);break;case _.Right:r.left<g.left&&l.push(d);break}});const f=ko({collisionRect:r,droppableRects:o,droppableContainers:l});let h=Xn(f,"id");if(h===a?.id&&f.length>1&&(h=f[1].id),h!=null){const d=s.get(n.id),g=s.get(h),m=g?o.get(g.id):null,N=g?.node.current;if(N&&m&&d&&g){const v=$t(N).some((A,p)=>c[p]!==A),j=gr(d,g),C=ri(d,g),S=v||!j?{x:0,y:0}:{x:C?r.width-m.width:0,y:C?r.height-m.height:0},R={x:m.left,y:m.top};return S.x&&S.y?R:bt(R,S)}}}};function gr(t,e){return!Pt(t)||!Pt(e)?!1:t.data.current.sortable.containerId===e.data.current.sortable.containerId}function ri(t,e){return!Pt(t)||!Pt(e)||!gr(t,e)?!1:t.data.current.sortable.index<e.data.current.sortable.index}export{$i as A,We as C,Hi as D,tr as K,nr as P,qi as S,Xi as a,Ki as b,Ui as c,Gi as d,Fi as e,ki as f,Li as g,Bi as h,Oi as i,Mi as j,Yi as k,lr as l,zi as m,Pi as n,As as o,sn as r,Ji as s,Vi as u,Wi as v};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{D as _,r as j,j as e,B as p,v as S,t as c,c as N}from"./index-
|
|
1
|
+
import{D as _,r as j,j as e,B as p,v as S,t as c,c as N}from"./index-CXy6rN6i.js";import{D as k}from"./domain-settings-DIv14WFm.js";import{P as f}from"./index-BBTFoidO.js";import{I as l}from"./input-BlhkemhH.js";import{S as z}from"./switch-DWXEjjcR.js";import{a as P,b as R,c as A,d as T}from"./use-org-sso-kfQLtl8D.js";import{c as F,S as y,a as C,b as r,d as O}from"./settings-section-6b9w_VoZ.js";import{s as L}from"./Trash01-Cc007jho.js";import{R as q}from"./require-capability-CLQ4GBGj.js";import"./studio-tools-C-Eel15b.js";import"./badge-B1dPfLuK.js";import"./select-DM3pFFAV.js";import"./tooltip-BRQCINXK.js";import"./ChevronUp-DSdWQUoR.js";import"./ChevronDown-DGuR7uUZ.js";import"./sidebar-BD77ZDQ1.js";import"./LayoutLeft-DpqtgcH3.js";import"./use-mobile-DgvzRDzB.js";import"./sheet-BJF6qruz.js";import"./X-_dGiBqSn.js";import"./card-Bys-wDTW.js";import"./ArrowUpRight-Kqa5fEjt.js";import"./use-capability-AkUZCu97.js";import"./access-gate-CpQ3bOMg.js";import"./capability-load-error-WTr85D-I.js";function B(){const{org:s}=_(),{data:a,isLoading:E}=P(s.id,s.slug),x=R(s.id,s.slug),h=A(s.id,s.slug),v=T(s.id,s.slug),[t,d]=j.useState({issuer:"",clientId:"",clientSecret:"",discoveryEndpoint:"",domain:"",scopes:"openid email profile"}),[m,g]=j.useState(!1),u=a?.configured&&a.config,o=a?.config,I=()=>{o&&d({issuer:o.issuer,clientId:o.clientId,clientSecret:"",discoveryEndpoint:o.discoveryEndpoint??"",domain:o.domain,scopes:o.scopes.join(" ")}),g(!0)},b=async()=>{if(!t.issuer||!t.clientId||!t.domain){c.error("Issuer, Client ID, and Domain are required");return}if(!u&&!t.clientSecret){c.error("Client Secret is required for initial setup");return}try{await x.mutateAsync({issuer:t.issuer,clientId:t.clientId,clientSecret:t.clientSecret,discoveryEndpoint:t.discoveryEndpoint||void 0,scopes:t.scopes.split(/\s+/).filter(Boolean),domain:t.domain,enforced:o?.enforced??!1}),S(u?"sso_config_updated":"sso_configured",{organization_id:s.id,email_domain:t.domain}),c.success("SSO configuration saved"),g(!1)}catch(i){c.error(i instanceof Error?i.message:"Failed to save SSO config")}},w=async()=>{if(confirm("Are you sure you want to remove SSO configuration?"))try{await h.mutateAsync(),S("sso_config_removed",{organization_id:s.id}),c.success("SSO configuration removed"),g(!1)}catch{c.error("Failed to remove SSO config")}},D=async i=>{try{await v.mutateAsync(i),S("sso_enforcement_toggled",{organization_id:s.id,enforced:i}),c.success(i?"SSO enforcement enabled":"SSO enforcement disabled")}catch{c.error("Failed to toggle SSO enforcement")}};return e.jsx(f,{children:e.jsx(f.Content,{children:e.jsx(f.Body,{children:e.jsxs(F,{children:[e.jsx(f.Title,{children:"Security"}),e.jsx(k,{}),E?e.jsx("div",{className:"text-sm text-muted-foreground",children:"Loading..."}):e.jsxs(e.Fragment,{children:[u&&!m&&e.jsx(y,{title:"Single Sign-On",children:e.jsxs(C,{children:[e.jsx(r,{title:"Provider",action:e.jsx("span",{className:"font-medium",children:o.issuer})}),e.jsx(r,{title:"Client ID",action:e.jsx("span",{className:"font-mono text-xs",children:o.clientId})}),e.jsx(r,{title:"Domain",action:e.jsx("span",{className:"font-medium",children:o.domain})}),e.jsx(r,{title:"Scopes",action:e.jsx("span",{className:"font-mono text-xs",children:o.scopes.join(" ")})}),e.jsx("div",{className:"h-px bg-border mx-5"}),e.jsx(r,{title:"Enforce SSO",description:"Require all members to authenticate via SSO",action:e.jsx(z,{checked:o.enforced,onCheckedChange:D,disabled:v.isPending})}),e.jsxs(O,{children:[e.jsxs(p,{variant:"ghost",size:"sm",onClick:w,disabled:h.isPending,className:"text-destructive hover:text-destructive mr-auto",children:[e.jsx(L,{size:14}),"Remove"]}),e.jsx(p,{variant:"outline",size:"sm",onClick:()=>{window.open(`/api/${s.slug}/sso/authorize`,"_blank")},children:"Test SSO"}),e.jsx(p,{variant:"outline",size:"sm",onClick:I,children:"Edit configuration"})]})]})}),(!u||m)&&e.jsx(y,{title:"Single Sign-On",children:e.jsxs(C,{children:[e.jsx(r,{title:"Issuer URL",description:"The OIDC issuer URL of your identity provider.",action:e.jsx(l,{id:"sso-issuer",placeholder:"https://login.microsoftonline.com/{tenant}/v2.0",value:t.issuer,onChange:i=>d(n=>({...n,issuer:i.target.value})),className:"w-[280px]"})}),e.jsx(r,{title:"Client ID",action:e.jsx(l,{id:"sso-client-id",placeholder:"your-client-id",value:t.clientId,onChange:i=>d(n=>({...n,clientId:i.target.value})),className:"w-[280px]"})}),e.jsx(r,{title:"Client Secret",description:m&&u?"Leave empty to keep current":void 0,action:e.jsx(l,{id:"sso-client-secret",type:"password",placeholder:"your-client-secret",value:t.clientSecret,onChange:i=>d(n=>({...n,clientSecret:i.target.value})),className:"w-[280px]"})}),e.jsx(r,{title:"Email Domain",description:"The email domain this SSO provider covers.",action:e.jsx(l,{id:"sso-domain",placeholder:"company.com",value:t.domain,onChange:i=>d(n=>({...n,domain:i.target.value})),className:"w-[280px]"})}),e.jsx(r,{title:"Scopes",action:e.jsx(l,{id:"sso-scopes",placeholder:"openid email profile",value:t.scopes,onChange:i=>d(n=>({...n,scopes:i.target.value})),className:"w-[280px]"})}),e.jsx(r,{title:"Discovery Endpoint",description:"Optional — auto-detected from issuer if omitted.",action:e.jsx(l,{id:"sso-discovery",placeholder:"Auto-detected from issuer",value:t.discoveryEndpoint,onChange:i=>d(n=>({...n,discoveryEndpoint:i.target.value})),className:"w-[280px]"})}),e.jsxs(O,{children:[m&&e.jsx(p,{variant:"outline",size:"sm",onClick:()=>g(!1),children:"Cancel"}),e.jsx(p,{onClick:b,disabled:x.isPending,size:"sm",children:x.isPending?"Saving...":m?"Update":"Configure SSO"})]})]})})]})]})})})})}function ue(){const s=N.c(1);let a;return s[0]===Symbol.for("react.memo_cache_sentinel")?(a=e.jsx(q,{capability:"org:manage",area:"security",children:e.jsx(B,{})}),s[0]=a):a=s[0],a}export{ue as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as D,j as s,E as le,r as K,D as ae,m as ce,b as de,e as me,B as Y,v as te,K as fe,d as ge,t as ie}from"./index-CFiyU0D9.js";import{i as ue}from"./AlertCircle-DC-zDzV-.js";import{i as pe}from"./ChevronRight-Cpfh3gza.js";import{s as xe}from"./Plus-eGxBB1d8.js";import{s as he}from"./Trash01-ByxlxTiZ.js";import{I as X}from"./input-BwRH-Gsz.js";import{S as oe}from"./switch-CCMIMmOF.js";import{S as ye}from"./skeleton-B0I93PJP.js";import{A as ne}from"./avatar-CJP1BOq4.js";import{P as je,a as Ce,b as ve}from"./popover-BXFiEQtN.js";import{b as re}from"./use-connection-Dz29RF9P.js";import{W as Z}from"./use-mcp-client-xOK-OF8p.js";import{P as G}from"./index-Bb-tYGNK.js";import{u as Se}from"./use-registry-connections-BOZLpkM5.js";import{f as _e,g as be}from"./use-organization-settings-DksiQdGc.js";import{c as Pe,b as I,S as ee,a as Q}from"./settings-section-MeT61nuY.js";import{R as Re}from"./require-capability--mIKExbX.js";import"./User01-COQtf360.js";import"./use-collections-B4atckEK.js";import"./auth-Bej0Tx2Y.js";import"./sidebar-BNrafefE.js";import"./LayoutLeft-fsm0LcB8.js";import"./use-mobile-NlF-3RoP.js";import"./sheet-DyU03ddw.js";import"./X-DrMVHLcw.js";import"./tooltip-DrpiSbRG.js";import"./studio-tools-CNO5iCKk.js";import"./card-BFb5m83e.js";import"./ArrowUpRight-OJZisFPQ.js";import"./use-capability-C6Dwri-U.js";import"./access-gate-D6dGDGRI.js";import"./capability-load-error-CCgNL5xi.js";function ke(t){const e=D.c(3),{error:o}=t;let m;e[0]===Symbol.for("react.memo_cache_sentinel")?(m=s.jsx(ue,{size:16}),e[0]=m):m=e[0];let n;return e[1]!==o.message?(n=s.jsxs("div",{className:"p-4 rounded-md bg-destructive/10 text-destructive flex items-center gap-2",children:[m,s.jsxs("span",{className:"text-sm font-medium",children:["Failed to load store settings: ",o.message]})]}),e[1]=o.message,e[2]=n):n=e[2],n}function we(t){const e=D.c(36),{onCancel:o,onSuccess:m}=t,n=re(),[r,j]=K.useState(""),[a,v]=K.useState(""),[x,S]=K.useState("");let h;e[0]!==n||e[1]!==r||e[2]!==x||e[3]!==a?(h=async()=>(await n.create.mutateAsync({title:r||"Private Registry",description:"Private MCP registry",connection_type:"HTTP",connection_url:a,connection_token:x||null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{type:"registry"},app_name:null,app_id:null,icon:null})).id,e[0]=n,e[1]=r,e[2]=x,e[3]=a,e[4]=h):h=e[4];let f;e[5]!==m?(f=C=>{te("store_private_registry_added",{connection_id:C}),ie.success("Private registry added"),m(C)},e[5]=m,e[6]=f):f=e[6];let y;e[7]!==h||e[8]!==f?(y={mutationFn:h,onSuccess:f,onError:Ne},e[7]=h,e[8]=f,e[9]=y):y=e[9];const{mutate:c,isPending:d}=ge(y);let g;e[10]===Symbol.for("react.memo_cache_sentinel")?(g=C=>j(C.target.value),e[10]=g):g=e[10];let u;e[11]!==r?(u=s.jsx(I,{title:"Name",action:s.jsx(X,{placeholder:"e.g. Acme Corp Registry",value:r,onChange:g,className:"w-[280px]"})}),e[11]=r,e[12]=u):u=e[12];let p;e[13]===Symbol.for("react.memo_cache_sentinel")?(p=C=>v(C.target.value),e[13]=p):p=e[13];let l;e[14]!==a?(l=s.jsx(I,{title:"Registry URL",action:s.jsx(X,{placeholder:"https://registry.example.com/mcp",value:a,onChange:p,className:"w-[280px]"})}),e[14]=a,e[15]=l):l=e[15];let _;e[16]===Symbol.for("react.memo_cache_sentinel")?(_=C=>S(C.target.value),e[16]=_):_=e[16];let b;e[17]!==x?(b=s.jsx(I,{title:"Auth Token",description:"Optional",action:s.jsx(X,{type:"password",placeholder:"Bearer token...",value:x,onChange:_,className:"w-[280px]"})}),e[17]=x,e[18]=b):b=e[18];let k;e[19]!==d||e[20]!==o?(k=s.jsx(Y,{variant:"ghost",size:"sm",onClick:o,disabled:d,children:"Cancel"}),e[19]=d,e[20]=o,e[21]=k):k=e[21];let N;e[22]!==c?(N=()=>c(),e[22]=c,e[23]=N):N=e[23];const O=!a||d,B=d?"Adding...":"Add Registry";let A;e[24]!==N||e[25]!==O||e[26]!==B?(A=s.jsx(Y,{size:"sm",onClick:N,disabled:O,children:B}),e[24]=N,e[25]=O,e[26]=B,e[27]=A):A=e[27];let R;e[28]!==k||e[29]!==A?(R=s.jsxs("div",{className:"px-5 py-4 flex justify-end gap-2",children:[k,A]}),e[28]=k,e[29]=A,e[30]=R):R=e[30];let P;return e[31]!==R||e[32]!==u||e[33]!==l||e[34]!==b?(P=s.jsxs(Q,{children:[u,l,b,R]}),e[31]=R,e[32]=u,e[33]=l,e[34]=b,e[35]=P):P=e[35],P}function Ne(t){ie.error(`Failed to add registry: ${t.message}`)}function L(t){const e=D.c(29),{name:o,description:m,icon:n,enabled:r,onToggle:j,onDelete:a,href:v}=t,x=de();let S;e[0]===Symbol.for("react.memo_cache_sentinel")?(S={from:"/shell/$org"},e[0]=S):S=e[0];const{org:h}=me(S);let f;e[1]!==r||e[2]!==v||e[3]!==x||e[4]!==j||e[5]!==h?(f=()=>{v?x({to:v,params:{org:h}}):j(!r)},e[1]=r,e[2]=v,e[3]=x,e[4]=j,e[5]=h,e[6]=f):f=e[6];const y=f;let c;e[7]!==n||e[8]!==o?(c=n?s.jsx("img",{src:n,alt:o,className:"size-8 rounded-md object-contain"}):s.jsx(ne,{fallback:o.charAt(0),className:"size-8 bg-primary/10 text-primary"}),e[7]=n,e[8]=o,e[9]=c):c=e[9];let d;e[10]!==a?(d=a&&s.jsxs(je,{children:[s.jsx(Ce,{asChild:!0,children:s.jsx(Y,{variant:"ghost",size:"icon",className:"h-6 w-6 text-muted-foreground hover:text-destructive",onClick:Me,children:s.jsx(he,{size:14})})}),s.jsx(ve,{className:"w-auto p-2",align:"end",children:s.jsxs("div",{className:"flex flex-col gap-2",children:[s.jsx("p",{className:"text-xs font-medium",children:"Remove this registry?"}),s.jsx(Y,{variant:"destructive",size:"xs",onClick:b=>{b.stopPropagation(),a()},children:"Remove"})]})})]}),e[10]=a,e[11]=d):d=e[11];let g;e[12]!==j?(g=b=>j(b),e[12]=j,e[13]=g):g=e[13];let u;e[14]!==r||e[15]!==g?(u=s.jsx(oe,{checked:r,onClick:Ae,onCheckedChange:g}),e[14]=r,e[15]=g,e[16]=u):u=e[16];let p;e[17]!==v?(p=v&&s.jsx(pe,{size:14,className:"text-muted-foreground"}),e[17]=v,e[18]=p):p=e[18];let l;e[19]!==d||e[20]!==u||e[21]!==p?(l=s.jsxs("div",{className:"flex items-center gap-2",children:[d,u,p]}),e[19]=d,e[20]=u,e[21]=p,e[22]=l):l=e[22];let _;return e[23]!==m||e[24]!==y||e[25]!==o||e[26]!==c||e[27]!==l?(_=s.jsx(I,{title:o,description:m,onClick:y,icon:c,action:l}),e[23]=m,e[24]=y,e[25]=o,e[26]=c,e[27]=l,e[28]=_):_=e[28],_}function Ae(t){return t.stopPropagation()}function Me(t){return t.stopPropagation()}function Te(){const t=D.c(59),{org:e}=ae(),o=Se(),m=re(),n=_e(),{mutateAsync:r}=be(),j=ce(),[a,v]=K.useState(!1);let x,S,h,f,y,c;if(t[0]!==m||t[1]!==e.id||t[2]!==j||t[3]!==n||t[4]!==o||t[5]!==a||t[6]!==r){const p=Z.REGISTRY(e.id),l=i=>{if(!n)return i===p;const w=n.registries[i];return w?w.enabled:i===p},_=Z.COMMUNITY_REGISTRY(e.id),b=o.find(i=>i.id===p),k=o.find(i=>i.id===_||i.id==="community-registry"),N=k?.id??_,O=Z.SELF(e.id),B=new Set([p,_,"community-registry",O]),A=o.filter(i=>!B.has(i.id));let R;t[13]!==n||t[14]!==r?(R=async(i,w)=>{te("store_registry_toggled",{connection_id:i,enabled:w});const se=n??{registries:{},blockedMcps:[]};await r({...se,registries:{...se.registries,[i]:{enabled:w}}})},t[13]=n,t[14]=r,t[15]=R):R=t[15];const P=R;let C;t[16]!==m||t[17]!==e.id||t[18]!==j?(C=async i=>{te("store_private_registry_removed",{connection_id:i}),await m.delete.mutateAsync(i),j.invalidateQueries({queryKey:fe.organizationSettings(e.id)})},t[16]=m,t[17]=e.id,t[18]=j,t[19]=C):C=t[19];const W=C;let U;t[20]!==n||t[21]!==r?(U=async i=>{v(!1);const w=n??{registries:{},blockedMcps:[]};await r({...w,registries:{...w.registries,[i]:{enabled:!0}}})},t[20]=n,t[21]=r,t[22]=U):U=t[22];const H=U,J=b?s.jsx(L,{name:"Deco Store",description:"Official deco MCP registry with curated integrations",icon:b.icon,enabled:l(p),onToggle:i=>P(p,i)}):s.jsx(I,{title:"Deco Store",description:"Connection not found — will be created automatically."});t[23]!==J?(y=s.jsx(ee,{title:"Deco Store",children:s.jsx(Q,{children:J})}),t[23]=J,t[24]=y):y=t[24];let M;t[25]!==a?(M=a?void 0:s.jsxs(Y,{variant:"outline",size:"sm",onClick:()=>v(!0),children:[s.jsx(xe,{size:14}),"Add registry"]}),t[25]=a,t[26]=M):M=t[26];let T;t[27]!==H||t[28]!==a?(T=a&&s.jsx(we,{onCancel:()=>v(!1),onSuccess:H}),t[27]=H,t[28]=a,t[29]=T):T=t[29];let z;t[30]!==l?(z=l("self"),t[30]=l,t[31]=z):z=t[31];let E;t[32]!==P?(E=i=>P("self",i),t[32]=P,t[33]=E):E=t[33];let $;t[34]!==z||t[35]!==E?($=s.jsx(L,{name:"Private Registry",description:"Your organization's private MCP registry",enabled:z,onToggle:E,href:"/$org/settings/store/registry"}),t[34]=z,t[35]=E,t[36]=$):$=t[36];let q;t[37]!==W||t[38]!==P||t[39]!==l?(q=i=>s.jsx(L,{name:i.title,description:i.description??"Private MCP registry",icon:i.icon,enabled:l(i.id),onToggle:w=>P(i.id,w),onDelete:()=>W(i.id)},i.id),t[37]=W,t[38]=P,t[39]=l,t[40]=q):q=t[40];const V=A.map(q);let F;t[41]!==$||t[42]!==V?(F=s.jsxs(Q,{children:[$,V]}),t[41]=$,t[42]=V,t[43]=F):F=t[43],t[44]!==F||t[45]!==M||t[46]!==T?(c=s.jsxs(ee,{title:"Private Registries",actions:M,children:[T,F]}),t[44]=F,t[45]=M,t[46]=T,t[47]=c):c=t[47],S=ee,f="Community",x=Q,h=k?s.jsx(L,{name:"MCP Registry",description:"Community MCP registry with thousands of handy MCPs",icon:k.icon,enabled:l(N),onToggle:i=>P(N,i)}):s.jsx(I,{title:"MCP Registry",description:"Community MCP registry — not yet added",icon:s.jsx(ne,{fallback:"M",className:"size-8 bg-primary/10 text-primary"}),action:s.jsx(oe,{checked:!1,disabled:!0,onCheckedChange:ze})}),t[0]=m,t[1]=e.id,t[2]=j,t[3]=n,t[4]=o,t[5]=a,t[6]=r,t[7]=x,t[8]=S,t[9]=h,t[10]=f,t[11]=y,t[12]=c}else x=t[7],S=t[8],h=t[9],f=t[10],y=t[11],c=t[12];let d;t[48]!==x||t[49]!==h?(d=s.jsx(x,{children:h}),t[48]=x,t[49]=h,t[50]=d):d=t[50];let g;t[51]!==S||t[52]!==f||t[53]!==d?(g=s.jsx(S,{title:f,children:d}),t[51]=S,t[52]=f,t[53]=d,t[54]=g):g=t[54];let u;return t[55]!==y||t[56]!==c||t[57]!==g?(u=s.jsxs(s.Fragment,{children:[y,c,g]}),t[55]=y,t[56]=c,t[57]=g,t[58]=u):u=t[58],u}function ze(){}function Ee(){const t=D.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=s.jsx(ye,{className:"h-64 w-full"}),t[0]=e):e=t[0];let o;return t[1]===Symbol.for("react.memo_cache_sentinel")?(o=s.jsx(le,{fallback:$e,children:s.jsx(K.Suspense,{fallback:e,children:s.jsx(G,{children:s.jsx(G.Content,{children:s.jsx(G.Body,{children:s.jsxs(Pe,{children:[s.jsx(G.Title,{children:"Store"}),s.jsx(Te,{})]})})})})})}),t[1]=o):o=t[1],o}function $e(t){const{error:e}=t;return s.jsx(ke,{error:e??new Error("Failed to load store settings")})}function ut(){const t=D.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=s.jsx(Re,{capability:"registry:manage",area:"the store",children:s.jsx(Ee,{})}),t[0]=e):e=t[0],e}export{ut as default};
|
|
1
|
+
import{c as D,j as s,E as le,r as K,D as ae,m as ce,b as de,e as me,B as Y,v as te,K as fe,d as ge,t as ie}from"./index-CXy6rN6i.js";import{i as ue}from"./AlertCircle-CM6D9elR.js";import{i as pe}from"./ChevronRight-BswIt99A.js";import{s as xe}from"./Plus-DDlkoJBs.js";import{s as he}from"./Trash01-Cc007jho.js";import{I as X}from"./input-BlhkemhH.js";import{S as oe}from"./switch-DWXEjjcR.js";import{S as ye}from"./skeleton-CuVDGSZE.js";import{A as ne}from"./avatar-COMRxqae.js";import{P as je,a as Ce,b as ve}from"./popover-SD8gnUXm.js";import{b as re}from"./use-connection-CSQdDXlG.js";import{W as Z}from"./use-mcp-client-CRWIqSWI.js";import{P as G}from"./index-BBTFoidO.js";import{u as Se}from"./use-registry-connections-DzyhBLO8.js";import{f as _e,g as be}from"./use-organization-settings-ClL7mSbK.js";import{c as Pe,b as I,S as ee,a as Q}from"./settings-section-6b9w_VoZ.js";import{R as Re}from"./require-capability-CLQ4GBGj.js";import"./User01-Dz-_mMMJ.js";import"./use-collections-BhzLncHB.js";import"./auth-DraSXrC6.js";import"./sidebar-BD77ZDQ1.js";import"./LayoutLeft-DpqtgcH3.js";import"./use-mobile-DgvzRDzB.js";import"./sheet-BJF6qruz.js";import"./X-_dGiBqSn.js";import"./tooltip-BRQCINXK.js";import"./studio-tools-C-Eel15b.js";import"./card-Bys-wDTW.js";import"./ArrowUpRight-Kqa5fEjt.js";import"./use-capability-AkUZCu97.js";import"./access-gate-CpQ3bOMg.js";import"./capability-load-error-WTr85D-I.js";function ke(t){const e=D.c(3),{error:o}=t;let m;e[0]===Symbol.for("react.memo_cache_sentinel")?(m=s.jsx(ue,{size:16}),e[0]=m):m=e[0];let n;return e[1]!==o.message?(n=s.jsxs("div",{className:"p-4 rounded-md bg-destructive/10 text-destructive flex items-center gap-2",children:[m,s.jsxs("span",{className:"text-sm font-medium",children:["Failed to load store settings: ",o.message]})]}),e[1]=o.message,e[2]=n):n=e[2],n}function we(t){const e=D.c(36),{onCancel:o,onSuccess:m}=t,n=re(),[r,j]=K.useState(""),[a,v]=K.useState(""),[x,S]=K.useState("");let h;e[0]!==n||e[1]!==r||e[2]!==x||e[3]!==a?(h=async()=>(await n.create.mutateAsync({title:r||"Private Registry",description:"Private MCP registry",connection_type:"HTTP",connection_url:a,connection_token:x||null,connection_headers:null,oauth_config:null,configuration_state:null,configuration_scopes:null,metadata:{type:"registry"},app_name:null,app_id:null,icon:null})).id,e[0]=n,e[1]=r,e[2]=x,e[3]=a,e[4]=h):h=e[4];let f;e[5]!==m?(f=C=>{te("store_private_registry_added",{connection_id:C}),ie.success("Private registry added"),m(C)},e[5]=m,e[6]=f):f=e[6];let y;e[7]!==h||e[8]!==f?(y={mutationFn:h,onSuccess:f,onError:Ne},e[7]=h,e[8]=f,e[9]=y):y=e[9];const{mutate:c,isPending:d}=ge(y);let g;e[10]===Symbol.for("react.memo_cache_sentinel")?(g=C=>j(C.target.value),e[10]=g):g=e[10];let u;e[11]!==r?(u=s.jsx(I,{title:"Name",action:s.jsx(X,{placeholder:"e.g. Acme Corp Registry",value:r,onChange:g,className:"w-[280px]"})}),e[11]=r,e[12]=u):u=e[12];let p;e[13]===Symbol.for("react.memo_cache_sentinel")?(p=C=>v(C.target.value),e[13]=p):p=e[13];let l;e[14]!==a?(l=s.jsx(I,{title:"Registry URL",action:s.jsx(X,{placeholder:"https://registry.example.com/mcp",value:a,onChange:p,className:"w-[280px]"})}),e[14]=a,e[15]=l):l=e[15];let _;e[16]===Symbol.for("react.memo_cache_sentinel")?(_=C=>S(C.target.value),e[16]=_):_=e[16];let b;e[17]!==x?(b=s.jsx(I,{title:"Auth Token",description:"Optional",action:s.jsx(X,{type:"password",placeholder:"Bearer token...",value:x,onChange:_,className:"w-[280px]"})}),e[17]=x,e[18]=b):b=e[18];let k;e[19]!==d||e[20]!==o?(k=s.jsx(Y,{variant:"ghost",size:"sm",onClick:o,disabled:d,children:"Cancel"}),e[19]=d,e[20]=o,e[21]=k):k=e[21];let N;e[22]!==c?(N=()=>c(),e[22]=c,e[23]=N):N=e[23];const O=!a||d,B=d?"Adding...":"Add Registry";let A;e[24]!==N||e[25]!==O||e[26]!==B?(A=s.jsx(Y,{size:"sm",onClick:N,disabled:O,children:B}),e[24]=N,e[25]=O,e[26]=B,e[27]=A):A=e[27];let R;e[28]!==k||e[29]!==A?(R=s.jsxs("div",{className:"px-5 py-4 flex justify-end gap-2",children:[k,A]}),e[28]=k,e[29]=A,e[30]=R):R=e[30];let P;return e[31]!==R||e[32]!==u||e[33]!==l||e[34]!==b?(P=s.jsxs(Q,{children:[u,l,b,R]}),e[31]=R,e[32]=u,e[33]=l,e[34]=b,e[35]=P):P=e[35],P}function Ne(t){ie.error(`Failed to add registry: ${t.message}`)}function L(t){const e=D.c(29),{name:o,description:m,icon:n,enabled:r,onToggle:j,onDelete:a,href:v}=t,x=de();let S;e[0]===Symbol.for("react.memo_cache_sentinel")?(S={from:"/shell/$org"},e[0]=S):S=e[0];const{org:h}=me(S);let f;e[1]!==r||e[2]!==v||e[3]!==x||e[4]!==j||e[5]!==h?(f=()=>{v?x({to:v,params:{org:h}}):j(!r)},e[1]=r,e[2]=v,e[3]=x,e[4]=j,e[5]=h,e[6]=f):f=e[6];const y=f;let c;e[7]!==n||e[8]!==o?(c=n?s.jsx("img",{src:n,alt:o,className:"size-8 rounded-md object-contain"}):s.jsx(ne,{fallback:o.charAt(0),className:"size-8 bg-primary/10 text-primary"}),e[7]=n,e[8]=o,e[9]=c):c=e[9];let d;e[10]!==a?(d=a&&s.jsxs(je,{children:[s.jsx(Ce,{asChild:!0,children:s.jsx(Y,{variant:"ghost",size:"icon",className:"h-6 w-6 text-muted-foreground hover:text-destructive",onClick:Me,children:s.jsx(he,{size:14})})}),s.jsx(ve,{className:"w-auto p-2",align:"end",children:s.jsxs("div",{className:"flex flex-col gap-2",children:[s.jsx("p",{className:"text-xs font-medium",children:"Remove this registry?"}),s.jsx(Y,{variant:"destructive",size:"xs",onClick:b=>{b.stopPropagation(),a()},children:"Remove"})]})})]}),e[10]=a,e[11]=d):d=e[11];let g;e[12]!==j?(g=b=>j(b),e[12]=j,e[13]=g):g=e[13];let u;e[14]!==r||e[15]!==g?(u=s.jsx(oe,{checked:r,onClick:Ae,onCheckedChange:g}),e[14]=r,e[15]=g,e[16]=u):u=e[16];let p;e[17]!==v?(p=v&&s.jsx(pe,{size:14,className:"text-muted-foreground"}),e[17]=v,e[18]=p):p=e[18];let l;e[19]!==d||e[20]!==u||e[21]!==p?(l=s.jsxs("div",{className:"flex items-center gap-2",children:[d,u,p]}),e[19]=d,e[20]=u,e[21]=p,e[22]=l):l=e[22];let _;return e[23]!==m||e[24]!==y||e[25]!==o||e[26]!==c||e[27]!==l?(_=s.jsx(I,{title:o,description:m,onClick:y,icon:c,action:l}),e[23]=m,e[24]=y,e[25]=o,e[26]=c,e[27]=l,e[28]=_):_=e[28],_}function Ae(t){return t.stopPropagation()}function Me(t){return t.stopPropagation()}function Te(){const t=D.c(59),{org:e}=ae(),o=Se(),m=re(),n=_e(),{mutateAsync:r}=be(),j=ce(),[a,v]=K.useState(!1);let x,S,h,f,y,c;if(t[0]!==m||t[1]!==e.id||t[2]!==j||t[3]!==n||t[4]!==o||t[5]!==a||t[6]!==r){const p=Z.REGISTRY(e.id),l=i=>{if(!n)return i===p;const w=n.registries[i];return w?w.enabled:i===p},_=Z.COMMUNITY_REGISTRY(e.id),b=o.find(i=>i.id===p),k=o.find(i=>i.id===_||i.id==="community-registry"),N=k?.id??_,O=Z.SELF(e.id),B=new Set([p,_,"community-registry",O]),A=o.filter(i=>!B.has(i.id));let R;t[13]!==n||t[14]!==r?(R=async(i,w)=>{te("store_registry_toggled",{connection_id:i,enabled:w});const se=n??{registries:{},blockedMcps:[]};await r({...se,registries:{...se.registries,[i]:{enabled:w}}})},t[13]=n,t[14]=r,t[15]=R):R=t[15];const P=R;let C;t[16]!==m||t[17]!==e.id||t[18]!==j?(C=async i=>{te("store_private_registry_removed",{connection_id:i}),await m.delete.mutateAsync(i),j.invalidateQueries({queryKey:fe.organizationSettings(e.id)})},t[16]=m,t[17]=e.id,t[18]=j,t[19]=C):C=t[19];const W=C;let U;t[20]!==n||t[21]!==r?(U=async i=>{v(!1);const w=n??{registries:{},blockedMcps:[]};await r({...w,registries:{...w.registries,[i]:{enabled:!0}}})},t[20]=n,t[21]=r,t[22]=U):U=t[22];const H=U,J=b?s.jsx(L,{name:"Deco Store",description:"Official deco MCP registry with curated integrations",icon:b.icon,enabled:l(p),onToggle:i=>P(p,i)}):s.jsx(I,{title:"Deco Store",description:"Connection not found — will be created automatically."});t[23]!==J?(y=s.jsx(ee,{title:"Deco Store",children:s.jsx(Q,{children:J})}),t[23]=J,t[24]=y):y=t[24];let M;t[25]!==a?(M=a?void 0:s.jsxs(Y,{variant:"outline",size:"sm",onClick:()=>v(!0),children:[s.jsx(xe,{size:14}),"Add registry"]}),t[25]=a,t[26]=M):M=t[26];let T;t[27]!==H||t[28]!==a?(T=a&&s.jsx(we,{onCancel:()=>v(!1),onSuccess:H}),t[27]=H,t[28]=a,t[29]=T):T=t[29];let z;t[30]!==l?(z=l("self"),t[30]=l,t[31]=z):z=t[31];let E;t[32]!==P?(E=i=>P("self",i),t[32]=P,t[33]=E):E=t[33];let $;t[34]!==z||t[35]!==E?($=s.jsx(L,{name:"Private Registry",description:"Your organization's private MCP registry",enabled:z,onToggle:E,href:"/$org/settings/store/registry"}),t[34]=z,t[35]=E,t[36]=$):$=t[36];let q;t[37]!==W||t[38]!==P||t[39]!==l?(q=i=>s.jsx(L,{name:i.title,description:i.description??"Private MCP registry",icon:i.icon,enabled:l(i.id),onToggle:w=>P(i.id,w),onDelete:()=>W(i.id)},i.id),t[37]=W,t[38]=P,t[39]=l,t[40]=q):q=t[40];const V=A.map(q);let F;t[41]!==$||t[42]!==V?(F=s.jsxs(Q,{children:[$,V]}),t[41]=$,t[42]=V,t[43]=F):F=t[43],t[44]!==F||t[45]!==M||t[46]!==T?(c=s.jsxs(ee,{title:"Private Registries",actions:M,children:[T,F]}),t[44]=F,t[45]=M,t[46]=T,t[47]=c):c=t[47],S=ee,f="Community",x=Q,h=k?s.jsx(L,{name:"MCP Registry",description:"Community MCP registry with thousands of handy MCPs",icon:k.icon,enabled:l(N),onToggle:i=>P(N,i)}):s.jsx(I,{title:"MCP Registry",description:"Community MCP registry — not yet added",icon:s.jsx(ne,{fallback:"M",className:"size-8 bg-primary/10 text-primary"}),action:s.jsx(oe,{checked:!1,disabled:!0,onCheckedChange:ze})}),t[0]=m,t[1]=e.id,t[2]=j,t[3]=n,t[4]=o,t[5]=a,t[6]=r,t[7]=x,t[8]=S,t[9]=h,t[10]=f,t[11]=y,t[12]=c}else x=t[7],S=t[8],h=t[9],f=t[10],y=t[11],c=t[12];let d;t[48]!==x||t[49]!==h?(d=s.jsx(x,{children:h}),t[48]=x,t[49]=h,t[50]=d):d=t[50];let g;t[51]!==S||t[52]!==f||t[53]!==d?(g=s.jsx(S,{title:f,children:d}),t[51]=S,t[52]=f,t[53]=d,t[54]=g):g=t[54];let u;return t[55]!==y||t[56]!==c||t[57]!==g?(u=s.jsxs(s.Fragment,{children:[y,c,g]}),t[55]=y,t[56]=c,t[57]=g,t[58]=u):u=t[58],u}function ze(){}function Ee(){const t=D.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=s.jsx(ye,{className:"h-64 w-full"}),t[0]=e):e=t[0];let o;return t[1]===Symbol.for("react.memo_cache_sentinel")?(o=s.jsx(le,{fallback:$e,children:s.jsx(K.Suspense,{fallback:e,children:s.jsx(G,{children:s.jsx(G.Content,{children:s.jsx(G.Body,{children:s.jsxs(Pe,{children:[s.jsx(G.Title,{children:"Store"}),s.jsx(Te,{})]})})})})})}),t[1]=o):o=t[1],o}function $e(t){const{error:e}=t;return s.jsx(ke,{error:e??new Error("Failed to load store settings")})}function ut(){const t=D.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=s.jsx(Re,{capability:"registry:manage",area:"the store",children:s.jsx(Ee,{})}),t[0]=e):e=t[0],e}export{ut as default};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/registry-layout-BL9jjFNp.js","assets/index-CXy6rN6i.js","assets/index-BcXb7VeZ.css","assets/XCircle-CmN6DNsv.js","assets/CheckCircle-8DKF8Yx5.js","assets/Settings02-QyYEyYyn.js","assets/use-mcp-client-CRWIqSWI.js","assets/auth-DraSXrC6.js","assets/useInfiniteQuery-DbI8AV-k.js","assets/use-infinite-scroll-CkXtceVR.js","assets/studio-tools-C-Eel15b.js","assets/badge-B1dPfLuK.js","assets/input-BlhkemhH.js","assets/dropdown-menu-D-VNET4I.js","assets/ChevronUp-DSdWQUoR.js","assets/ChevronRight-BswIt99A.js","assets/DotsVertical-DSosYpI1.js","assets/table-sXVKQ5vt.js","assets/toggle-group-B6oTaI1f.js","assets/use-view-mode-D4v-Vh_n.js","assets/use-mobile-DgvzRDzB.js","assets/FilterLines-CmWI-8pG.js","assets/Globe01-CcXDI4W7.js","assets/SearchMd-UY2xUREv.js","assets/dialog-o7scRbG9.js","assets/X-_dGiBqSn.js","assets/AlertCircle-CM6D9elR.js","assets/Upload01-DB9meUjO.js","assets/alert-dialog-DMWXmTGp.js","assets/card-Bys-wDTW.js","assets/Trash01-Cc007jho.js","assets/label-CL8Vh65B.js","assets/select-DM3pFFAV.js","assets/tooltip-BRQCINXK.js","assets/ChevronDown-DGuR7uUZ.js","assets/switch-DWXEjjcR.js","assets/textarea-C30KYfio.js","assets/checkbox-BIDlFz_0.js","assets/Eye-Dn1AISrx.js","assets/LinkExternal01-DOU6-C1w.js","assets/use-copy-3aLRhzTZ.js","assets/Key01-F6-x7vNY.js","assets/Plus-DDlkoJBs.js","assets/mcp-oauth-CXj7zg3h.js","assets/Play-DzGcMRv3.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{c as m,b as n,e as c,j as t,i as p,r as l,ak as f}from"./index-CXy6rN6i.js";import{R as u}from"./require-capability-CLQ4GBGj.js";import"./use-capability-AkUZCu97.js";import"./access-gate-CpQ3bOMg.js";import"./capability-load-error-WTr85D-I.js";const g=l.lazy(()=>f(()=>import("./registry-layout-BL9jjFNp.js"),__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44])));function j(){const e=m.c(5),i=n();let s;e[0]===Symbol.for("react.memo_cache_sentinel")?(s={from:"/shell/$org"},e[0]=s):s=e[0];const{org:o}=c(s);let r;e[1]===Symbol.for("react.memo_cache_sentinel")?(r=t.jsx("div",{className:"h-full flex items-center justify-center",children:t.jsx(p,{size:20,className:"animate-spin text-muted-foreground"})}),e[1]=r):r=e[1];let a;return e[2]!==i||e[3]!==o?(a=t.jsx(u,{capability:"registry:manage",area:"the registry",children:t.jsx(l.Suspense,{fallback:r,children:t.jsx(g,{onBack:()=>i({to:"/$org/settings/store",params:{org:o}})})})}),e[2]=i,e[3]=o,e[4]=a):a=e[4],a}export{j as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c,D as i}from"./index-
|
|
1
|
+
import{c,D as i}from"./index-CXy6rN6i.js";class l extends Error{constructor(r,s){super(r),this.status=s,this.name="StudioToolError"}status}async function u(o,r,s){const t=await fetch(`/api/${encodeURIComponent(o)}/tools/${encodeURIComponent(r)}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(s??{})});if(!t.ok){let e=`${r} failed (${t.status})`;try{const n=await t.json();n?.error&&(e=n.error)}catch{}throw new l(e,t.status)}return await t.json()}function p(){const o=c.c(5),{org:r}=i(),s=r.slug;let t;o[0]!==s?(t=(n,a)=>u(s,n,a),o[0]=s,o[1]=t):t=o[1];let e;return o[2]!==s||o[3]!==t?(e={orgSlug:s,call:t},o[2]=s,o[3]=t,o[4]=e):e=o[4],e}export{u as c,p as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as c,j as i,
|
|
1
|
+
import{r as c,j as i,U as C,Z as y,a2 as T,V as I,bK as M,bJ as H,X as U,c as z,l as g}from"./index-CXy6rN6i.js";var m="Switch",[A]=U(m),[q,L]=A(m),E=c.forwardRef((a,e)=>{const{__scopeSwitch:t,name:r,checked:s,defaultChecked:n,required:o,disabled:d,value:u="on",onCheckedChange:k,form:l,...w}=a,[p,h]=c.useState(null),v=y(e,b=>h(b)),x=c.useRef(!1),S=p?l||!!p.closest("form"):!0,[f,N]=T({prop:s,defaultProp:n??!1,onChange:k,caller:m});return i.jsxs(q,{scope:t,checked:f,disabled:d,children:[i.jsx(C.button,{type:"button",role:"switch","aria-checked":f,"aria-required":o,"data-state":j(f),"data-disabled":d?"":void 0,disabled:d,value:u,...w,ref:v,onClick:I(a.onClick,b=>{N(B=>!B),S&&(x.current=b.isPropagationStopped(),x.current||b.stopPropagation())})}),S&&i.jsx(_,{control:p,bubbles:!x.current,name:r,value:u,checked:f,required:o,disabled:d,form:l,style:{transform:"translateX(-100%)"}})]})});E.displayName=m;var P="SwitchThumb",R=c.forwardRef((a,e)=>{const{__scopeSwitch:t,...r}=a,s=L(P,t);return i.jsx(C.span,{"data-state":j(s.checked),"data-disabled":s.disabled?"":void 0,...r,ref:e})});R.displayName=P;var O="SwitchBubbleInput",_=c.forwardRef(({__scopeSwitch:a,control:e,checked:t,bubbles:r=!0,...s},n)=>{const o=c.useRef(null),d=y(o,n),u=M(t),k=H(e);return c.useEffect(()=>{const l=o.current;if(!l)return;const w=window.HTMLInputElement.prototype,h=Object.getOwnPropertyDescriptor(w,"checked").set;if(u!==t&&h){const v=new Event("click",{bubbles:r});h.call(l,t),l.dispatchEvent(v)}},[u,t,r]),i.jsx("input",{type:"checkbox","aria-hidden":!0,defaultChecked:t,...s,tabIndex:-1,ref:d,style:{...s.style,...k,position:"absolute",pointerEvents:"none",opacity:0,margin:0}})});_.displayName=O;function j(a){return a?"checked":"unchecked"}var X=E,$=R;function F(a){const e=z.c(9);let t,r;e[0]!==a?({className:t,...r}=a,e[0]=a,e[1]=t,e[2]=r):(t=e[1],r=e[2]);let s;e[3]!==t?(s=g("peer data-[state=checked]:bg-primary data-[state=unchecked]:bg-input focus-visible:border-ring focus-visible:ring-ring/20 dark:data-[state=unchecked]:bg-input/80 inline-flex h-[1.15rem] w-8 shrink-0 items-center rounded-full border border-transparent shadow-xs transition-all outline-none focus-visible:ring-[2px] disabled:opacity-50",t),e[3]=t,e[4]=s):s=e[4];let n;e[5]===Symbol.for("react.memo_cache_sentinel")?(n=i.jsx($,{"data-slot":"switch-thumb",className:g("bg-background dark:data-[state=unchecked]:bg-foreground dark:data-[state=checked]:bg-primary-foreground pointer-events-none block size-4 rounded-full ring-0 transition-transform data-[state=checked]:translate-x-[calc(100%-2px)] data-[state=unchecked]:translate-x-0")}),e[5]=n):n=e[5];let o;return e[6]!==r||e[7]!==s?(o=i.jsx(X,{"data-slot":"switch",className:s,...r,children:n}),e[6]=r,e[7]=s,e[8]=o):o=e[8],o}export{F as S};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function s(e){if(!e||!e.startsWith("automation:"))return null;const n=e.slice(11);return n?{id:n}:null}function u(e,n){return`app:${e}:${n}`}function f(e){if(!e||!e.startsWith("app:"))return null;const n=e.slice(4),t=n.indexOf(":");if(t<=0)return null;const i=n.slice(0,t),a=n.slice(t+1);return!i||!a?null:{connectionId:i,toolName:a}}function d(e){return`deck:${encodeURIComponent(e)}`}function p(e){if(!e||!e.startsWith("deck:"))return null;const n=e.slice(5);if(!n)return null;try{return{path:decodeURIComponent(n)}}catch{return null}}function m(e){return`file:${encodeURIComponent(e)}`}function T(e){if(!e||!e.startsWith("file:"))return null;const n=e.slice(5);if(!n)return null;try{return{key:decodeURIComponent(n)}}catch{return null}}function h(e){return`library-file:${encodeURIComponent(e)}`}function g(e){if(!e||!e.startsWith("library-file:"))return null;const n=e.slice(13);if(!n)return null;try{return{path:decodeURIComponent(n)}}catch{return null}}const o=["settings","automations","preview","content","git"],l=new Set(o);function y(e){return e.startsWith("app:")||e.startsWith("automation:")||e.startsWith("file:")||e.startsWith("deck:")||e.startsWith("library-file:")}const r=new Set(["instructions","connections","layout","settings"]);function b(e){return!!e&&r.has(e)}function c(e){const n=e?.defaultMainView??null;if(!n||r.has(n.type))return"settings";if(l.has(n.type))return n.type;if(n.type==="ext-app"||n.type==="ext-apps"){if(n.id&&n.toolName)return u(n.id,n.toolName);const t=e?.tabs?.map(i=>i.id)??[];return n.id&&t.includes(n.id)?n.id:t[0]??"settings"}return e?.tabs?.[0]?.id??"settings"}function v(e){const n=c(e.metadata);if(e.mainParam==="0")return{mainOpen:!1,activeTab:n};if(e.mainParam===void 0){const t=e.metadata?.defaultMainView??null;return{mainOpen:!(t==null||t.type==="chat"),activeTab:n}}return r.has(e.mainParam)?{mainOpen:!0,activeTab:"settings"}:{mainOpen:!0,activeTab:e.mainParam}}function k(e){return e.mainOpen&&e.clickedId===e.activeTab?"0":e.clickedId}function S(e){return e.mainOpen?e.activeTab==="automations"?!0:s(e.activeTab)!==null:!1}function C(e){return e.mainOpen&&e.activeTab==="automations"?"0":"automations"}export{o as F,v as a,T as b,p as c,g as d,k as e,u as f,
|
|
1
|
+
function s(e){if(!e||!e.startsWith("automation:"))return null;const n=e.slice(11);return n?{id:n}:null}function u(e,n){return`app:${e}:${n}`}function f(e){if(!e||!e.startsWith("app:"))return null;const n=e.slice(4),t=n.indexOf(":");if(t<=0)return null;const i=n.slice(0,t),a=n.slice(t+1);return!i||!a?null:{connectionId:i,toolName:a}}function d(e){return`deck:${encodeURIComponent(e)}`}function p(e){if(!e||!e.startsWith("deck:"))return null;const n=e.slice(5);if(!n)return null;try{return{path:decodeURIComponent(n)}}catch{return null}}function m(e){return`file:${encodeURIComponent(e)}`}function T(e){if(!e||!e.startsWith("file:"))return null;const n=e.slice(5);if(!n)return null;try{return{key:decodeURIComponent(n)}}catch{return null}}function h(e){return`library-file:${encodeURIComponent(e)}`}function g(e){if(!e||!e.startsWith("library-file:"))return null;const n=e.slice(13);if(!n)return null;try{return{path:decodeURIComponent(n)}}catch{return null}}const o=["settings","automations","preview","content","git"],l=new Set(o);function y(e){return e.startsWith("app:")||e.startsWith("automation:")||e.startsWith("file:")||e.startsWith("deck:")||e.startsWith("library-file:")}const r=new Set(["instructions","connections","layout","settings"]);function b(e){return!!e&&r.has(e)}function c(e){const n=e?.defaultMainView??null;if(!n||r.has(n.type))return"settings";if(l.has(n.type))return n.type;if(n.type==="ext-app"||n.type==="ext-apps"){if(n.id&&n.toolName)return u(n.id,n.toolName);const t=e?.tabs?.map(i=>i.id)??[];return n.id&&t.includes(n.id)?n.id:t[0]??"settings"}return e?.tabs?.[0]?.id??"settings"}function v(e){const n=c(e.metadata);if(e.mainParam==="0")return{mainOpen:!1,activeTab:n};if(e.mainParam===void 0){const t=e.metadata?.defaultMainView??null;return{mainOpen:!(t==null||t.type==="chat"),activeTab:n}}return r.has(e.mainParam)?{mainOpen:!0,activeTab:"settings"}:{mainOpen:!0,activeTab:e.mainParam}}function k(e){return e.mainOpen&&e.clickedId===e.activeTab?"0":e.clickedId}function S(e){return e.mainOpen?e.activeTab==="automations"?!0:s(e.activeTab)!==null:!1}function C(e){return e.mainOpen&&e.activeTab==="automations"?"0":"automations"}export{o as F,v as a,T as b,p as c,g as d,k as e,u as f,h as g,f as h,b as i,S as j,C as k,d as l,m,y as n,s as p,c as r};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c,l as i,j as r}from"./index-
|
|
1
|
+
import{c,l as i,j as r}from"./index-CXy6rN6i.js";function d(o){const e=c.c(8);let t,l;e[0]!==o?({className:t,...l}=o,e[0]=o,e[1]=t,e[2]=l):(t=e[1],l=e[2]);let s;e[3]!==t?(s=i("w-full caption-bottom text-sm min-w-0",t),e[3]=t,e[4]=s):s=e[4];let a;return e[5]!==l||e[6]!==s?(a=r.jsx("div",{"data-slot":"table-container",className:"w-full min-w-0 bg-card rounded-xl card-shadow overflow-hidden",children:r.jsx("table",{"data-slot":"table",className:s,...l})}),e[5]=l,e[6]=s,e[7]=a):a=e[7],a}function f(o){const e=c.c(8);let t,l;e[0]!==o?({className:t,...l}=o,e[0]=o,e[1]=t,e[2]=l):(t=e[1],l=e[2]);let s;e[3]!==t?(s=i("[&_tr]:border-b sticky top-0 z-10 bg-card",t),e[3]=t,e[4]=s):s=e[4];let a;return e[5]!==l||e[6]!==s?(a=r.jsx("thead",{"data-slot":"table-header",className:s,...l}),e[5]=l,e[6]=s,e[7]=a):a=e[7],a}function b(o){const e=c.c(8);let t,l;e[0]!==o?({className:t,...l}=o,e[0]=o,e[1]=t,e[2]=l):(t=e[1],l=e[2]);let s;e[3]!==t?(s=i("[&_tr:last-child]:border-0",t),e[3]=t,e[4]=s):s=e[4];let a;return e[5]!==l||e[6]!==s?(a=r.jsx("tbody",{"data-slot":"table-body",className:s,...l}),e[5]=l,e[6]=s,e[7]=a):a=e[7],a}function p(o){const e=c.c(8);let t,l;e[0]!==o?({className:t,...l}=o,e[0]=o,e[1]=t,e[2]=l):(t=e[1],l=e[2]);let s;e[3]!==t?(s=i("data-[state=selected]:bg-muted border-b transition-colors",t),e[3]=t,e[4]=s):s=e[4];let a;return e[5]!==l||e[6]!==s?(a=r.jsx("tr",{"data-slot":"table-row",className:s,...l}),e[5]=l,e[6]=s,e[7]=a):a=e[7],a}function m(o){const e=c.c(8);let t,l;e[0]!==o?({className:t,...l}=o,e[0]=o,e[1]=t,e[2]=l):(t=e[1],l=e[2]);let s;e[3]!==t?(s=i("text-foreground h-10 px-2 text-left align-middle font-medium whitespace-nowrap [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",t),e[3]=t,e[4]=s):s=e[4];let a;return e[5]!==l||e[6]!==s?(a=r.jsx("th",{"data-slot":"table-head",className:s,...l}),e[5]=l,e[6]=s,e[7]=a):a=e[7],a}function x(o){const e=c.c(8);let t,l;e[0]!==o?({className:t,...l}=o,e[0]=o,e[1]=t,e[2]=l):(t=e[1],l=e[2]);let s;e[3]!==t?(s=i("p-2 align-middle whitespace-nowrap text-sm [&:has([role=checkbox])]:pr-0 [&>[role=checkbox]]:translate-y-[2px]",t),e[3]=t,e[4]=s):s=e[4];let a;return e[5]!==l||e[6]!==s?(a=r.jsx("td",{"data-slot":"table-cell",className:s,...l}),e[5]=l,e[6]=s,e[7]=a):a=e[7],a}export{x as T,p as a,b,d as c,f as d,m as e};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{r as v,j as d,
|
|
1
|
+
import{r as v,j as d,ba as k,U as p,V as h,bb as y,X as M,ah as P,a2 as S,ai as V,bc as F,Y as D,c as x,l as g}from"./index-CXy6rN6i.js";var m="Tabs",[G]=M(m,[y]),w=y(),[L,T]=G(m),C=v.forwardRef((n,e)=>{const{__scopeTabs:a,value:t,onValueChange:r,defaultValue:s,orientation:o="horizontal",dir:i,activationMode:l="automatic",...f}=n,u=P(i),[c,b]=S({prop:t,onChange:r,defaultProp:s??"",caller:m});return d.jsx(L,{scope:a,baseId:V(),value:c,onValueChange:b,orientation:o,dir:u,activationMode:l,children:d.jsx(p.div,{dir:u,"data-orientation":o,...f,ref:e})})});C.displayName=m;var N="TabsList",j=v.forwardRef((n,e)=>{const{__scopeTabs:a,loop:t=!0,...r}=n,s=T(N,a),o=w(a);return d.jsx(F,{asChild:!0,...o,orientation:s.orientation,dir:s.dir,loop:t,children:d.jsx(p.div,{role:"tablist","aria-orientation":s.orientation,...r,ref:e})})});j.displayName=N;var I="TabsTrigger",_=v.forwardRef((n,e)=>{const{__scopeTabs:a,value:t,disabled:r=!1,...s}=n,o=T(I,a),i=w(a),l=E(o.baseId,t),f=$(o.baseId,t),u=t===o.value;return d.jsx(k,{asChild:!0,...i,focusable:!r,active:u,children:d.jsx(p.button,{type:"button",role:"tab","aria-selected":u,"aria-controls":f,"data-state":u?"active":"inactive","data-disabled":r?"":void 0,disabled:r,id:l,...s,ref:e,onMouseDown:h(n.onMouseDown,c=>{!r&&c.button===0&&c.ctrlKey===!1?o.onValueChange(t):c.preventDefault()}),onKeyDown:h(n.onKeyDown,c=>{[" ","Enter"].includes(c.key)&&o.onValueChange(t)}),onFocus:h(n.onFocus,()=>{const c=o.activationMode!=="manual";!u&&!r&&c&&o.onValueChange(t)})})})});_.displayName=I;var R="TabsContent",A=v.forwardRef((n,e)=>{const{__scopeTabs:a,value:t,forceMount:r,children:s,...o}=n,i=T(R,a),l=E(i.baseId,t),f=$(i.baseId,t),u=t===i.value,c=v.useRef(u);return v.useEffect(()=>{const b=requestAnimationFrame(()=>c.current=!1);return()=>cancelAnimationFrame(b)},[]),d.jsx(D,{present:r||u,children:({present:b})=>d.jsx(p.div,{"data-state":u?"active":"inactive","data-orientation":i.orientation,role:"tabpanel","aria-labelledby":l,hidden:!b,id:f,tabIndex:0,...o,ref:e,style:{...n.style,animationDuration:c.current?"0s":void 0},children:b&&s})})});A.displayName=R;function E(n,e){return`${n}-trigger-${e}`}function $(n,e){return`${n}-content-${e}`}var z=C,K=j,B=_,q=A;function O(n){const e=x.c(10);let a,t,r;e[0]!==n?({className:a,variant:r,...t}=n,e[0]=n,e[1]=a,e[2]=t,e[3]=r):(a=e[1],t=e[2],r=e[3]);const s=r===void 0?"pill":r;let o;e[4]!==a?(o=g("flex flex-col gap-2",a),e[4]=a,e[5]=o):o=e[5];let i;return e[6]!==t||e[7]!==o||e[8]!==s?(i=d.jsx(z,{"data-slot":"tabs","data-variant":s,className:o,...t}),e[6]=t,e[7]=o,e[8]=s,e[9]=i):i=e[9],i}function U(n){const e=x.c(11);let a,t,r;e[0]!==n?({className:a,variant:r,...t}=n,e[0]=n,e[1]=a,e[2]=t,e[3]=r):(a=e[1],t=e[2],r=e[3]);const s=r||"pill",o=s==="underline"?"flex h-[52px] items-center border-b border-border":s==="canvas"?"flex h-10 items-center bg-background relative":"bg-muted text-muted-foreground inline-flex h-10 w-fit items-center justify-center rounded-xl p-[3px]";let i;e[4]!==a||e[5]!==o?(i=g(o,a),e[4]=a,e[5]=o,e[6]=i):i=e[6];let l;return e[7]!==s||e[8]!==t||e[9]!==i?(l=d.jsx(K,{"data-slot":"tabs-list","data-variant":s,className:i,...t}),e[7]=s,e[8]=t,e[9]=i,e[10]=l):l=e[10],l}function X(n){const e=x.c(11);let a,t,r;e[0]!==n?({className:a,variant:r,...t}=n,e[0]=n,e[1]=a,e[2]=t,e[3]=r):(a=e[1],t=e[2],r=e[3]);const s=r||"pill",o=s==="underline"?"flex items-center h-full px-3 relative text-sm whitespace-nowrap border-b-2 mb-[-1px] transition-all text-muted-foreground border-transparent hover:text-foreground data-[state=active]:text-foreground data-[state=active]:border-primary disabled:pointer-events-none disabled:opacity-50":s==="canvas"?"flex items-center h-full px-3 gap-2.5 text-sm whitespace-nowrap transition-all border-r border-b border-border [&>*]:opacity-50 data-[state=active]:[&>*]:opacity-100 data-[state=active]:border-b-0 last:border-r-0 disabled:pointer-events-none max-w-2xs":"data-[state=active]:bg-background dark:data-[state=active]:text-foreground focus-visible:border-ring focus-visible:ring-ring/20 focus-visible:outline-ring dark:data-[state=active]:border-input dark:data-[state=active]:bg-input/30 text-foreground dark:text-muted-foreground inline-flex h-[calc(100%-1px)] flex-1 items-center justify-center gap-1.5 rounded-lg border border-transparent px-2 py-1 text-sm font-medium whitespace-nowrap transition-[color,box-shadow] focus-visible:ring-[2px] focus-visible:outline-1 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:shadow-sm [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4";let i;e[4]!==a||e[5]!==o?(i=g(o,a),e[4]=a,e[5]=o,e[6]=i):i=e[6];let l;return e[7]!==s||e[8]!==t||e[9]!==i?(l=d.jsx(B,{"data-slot":"tabs-trigger","data-variant":s,className:i,...t}),e[7]=s,e[8]=t,e[9]=i,e[10]=l):l=e[10],l}function Y(n){const e=x.c(8);let a,t;e[0]!==n?({className:a,...t}=n,e[0]=n,e[1]=a,e[2]=t):(a=e[1],t=e[2]);let r;e[3]!==a?(r=g("flex-1 outline-none h-full",a),e[3]=a,e[4]=r):r=e[4];let s;return e[5]!==t||e[6]!==r?(s=d.jsx(q,{"data-slot":"tabs-content",className:r,...t}),e[5]=t,e[6]=r,e[7]=s):s=e[7],s}export{O as T,U as a,X as b,Y as c};
|