decocms 3.1.0 → 3.2.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-I5aAKx5s.js → AlertCircle-eeQ8IQAG.js} +1 -1
- package/dist/client/assets/{ArrowUpRight-DUqwCMWv.js → ArrowUpRight-Byg2JlTz.js} +1 -1
- package/dist/client/assets/{Check-5-utiman.js → Check-DA5UKh5X.js} +1 -1
- package/dist/client/assets/{CheckCircle-CA1UzIEX.js → CheckCircle-mjn-ZBg3.js} +1 -1
- package/dist/client/assets/{ChevronDown-BRUPOd-D.js → ChevronDown-CYgGBXvc.js} +1 -1
- package/dist/client/assets/ChevronLeft-BE2hdOnx.js +1 -0
- package/dist/client/assets/{ChevronRight-AaMPC6ii.js → ChevronRight-Bp_pdC8P.js} +1 -1
- package/dist/client/assets/{ChevronUp-B3N7TOrA.js → ChevronUp-BwxnNvDR.js} +1 -1
- package/dist/client/assets/{Container-Bjo8FVL5.js → Container-DZK-zSnO.js} +1 -1
- package/dist/client/assets/{DotsVertical-kyMVsMi3.js → DotsVertical-L-zHFr4w.js} +1 -1
- package/dist/client/assets/{Eye-FA0T_9KR.js → Eye-6gmxXOun.js} +1 -1
- package/dist/client/assets/{FilterLines-Dx0-KOH1.js → FilterLines-DaVWBoHw.js} +1 -1
- package/dist/client/assets/{Globe01-BdrXaQ4t.js → Globe01-DLq7QB09.js} +1 -1
- package/dist/client/assets/{HardDrive-uqc3Mfxn.js → HardDrive-UOXMLLuN.js} +1 -1
- package/dist/client/assets/{Key01-4CEC30CH.js → Key01-DQUmqdKK.js} +1 -1
- package/dist/client/assets/{LinkExternal01-sg0X3i7p.js → LinkExternal01-BbkedL4y.js} +1 -1
- package/dist/client/assets/{Monitor01-CTE-M7aU.js → Monitor01-me2M7qcF.js} +1 -1
- package/dist/client/assets/{Palette-DW_AOTeX.js → Palette-cwbQQzjc.js} +1 -1
- package/dist/client/assets/{Play-P4fR-0E_.js → Play-D39faotb.js} +1 -1
- package/dist/client/assets/{Plus-WVvC1Th4.js → Plus-CxUOnaMo.js} +1 -1
- package/dist/client/assets/{RefreshCcw01-Dg7_NhVx.js → RefreshCcw01-drWDN7HN.js} +1 -1
- package/dist/client/assets/{SearchMd-cBVn0Mcd.js → SearchMd-Cd3-NscL.js} +1 -1
- package/dist/client/assets/{Settings02-J55NFzUl.js → Settings02-DWxCysLt.js} +1 -1
- package/dist/client/assets/{Shield01-CITJSPye.js → Shield01-CgUSh4ss.js} +1 -1
- package/dist/client/assets/{Star01-DQCFITlh.js → Star01-BCTguvLh.js} +1 -1
- package/dist/client/assets/{Stars01-BQqwEiIH.js → Stars01-CScMgUNS.js} +1 -1
- package/dist/client/assets/{Stars02-CnxGzx_a.js → Stars02-DhCmA77R.js} +1 -1
- package/dist/client/assets/{Sun-CvvLh7O4.js → Sun-Cl4W5MYc.js} +1 -1
- package/dist/client/assets/{SwitchHorizontal01-D6GIRPJ1.js → SwitchHorizontal01-M-IO9U7X.js} +1 -1
- package/dist/client/assets/{Tool01-DBZmckgJ.js → Tool01-BGfKCaOe.js} +1 -1
- package/dist/client/assets/{Trash01-BMiuF02D.js → Trash01-BOqsHAki.js} +1 -1
- package/dist/client/assets/{Upload01-DhlN2oeP.js → Upload01-cIFihtD7.js} +1 -1
- package/dist/client/assets/{User01-D0BthoTv.js → User01-CRsYdqKf.js} +1 -1
- package/dist/client/assets/{Users01-B6kJjdmQ.js → Users01-CwvwFmnT.js} +1 -1
- package/dist/client/assets/{Users03-a4EwkzcR.js → Users03-Cy6p41F6.js} +1 -1
- package/dist/client/assets/{X-BwvdKywg.js → X-D4woLNFq.js} +1 -1
- package/dist/client/assets/{XCircle-BVR438yI.js → XCircle-CdiDJXb-.js} +1 -1
- package/dist/client/assets/{XClose-CeXjq2Ks.js → XClose-REUNo7hV.js} +1 -1
- package/dist/client/assets/{Zap-Cbw9kHWr.js → Zap-mREy1Qov.js} +1 -1
- package/dist/client/assets/ZapSquare-DZf6Sug7.js +1 -0
- package/dist/client/assets/ZoomOut-aDyKTD6y.js +1 -0
- package/dist/client/assets/{access-gate-CFCd65pW.js → access-gate-CzQMusXf.js} +1 -1
- package/dist/client/assets/accordion-CxUU-7zP.js +1 -0
- package/dist/client/assets/add-section-modal-Le33kmS8.js +1 -0
- package/dist/client/assets/{agent-capabilities-P2Ed3uET.js → agent-capabilities-C24cyovb.js} +1 -1
- package/dist/client/assets/agent-icon-DQY5C0N2.js +1 -0
- package/dist/client/assets/{agent-icons-VZFS25ox.js → agent-icons-CiX6fHGt.js} +1 -1
- package/dist/client/assets/agents-list-DmjHmKun.js +1 -0
- package/dist/client/assets/{ai-providers-C1nH-38Z.js → ai-providers-mUhUziNN.js} +1 -1
- package/dist/client/assets/{alert-CQF_YV7o.js → alert-BbsUklRQ.js} +1 -1
- package/dist/client/assets/{alert-dialog-Bvyir_5o.js → alert-dialog-BPHTzN62.js} +1 -1
- package/dist/client/assets/app-editor-Cv2zA-6I.js +1 -0
- package/dist/client/assets/{auth-catchall-BnV7GUx1.js → auth-catchall-lSq11uBl.js} +1 -1
- package/dist/client/assets/{auth-split-layout-DzSTdIYV.js → auth-split-layout-BCUlxOAp.js} +1 -1
- package/dist/client/assets/{automation-list-row-Bo6miFHP.js → automation-list-row-zUvBCUZa.js} +1 -1
- package/dist/client/assets/{automation-runs-CDd6q4GC.js → automation-runs-v18Lkih8.js} +1 -1
- package/dist/client/assets/automations-Qm0D-6AG.js +1 -0
- package/dist/client/assets/{avatar-DRLQAp0U.js → avatar-C8mqvhp_.js} +1 -1
- package/dist/client/assets/{badge-DKUnZ67J.js → badge-aL_u7ZDP.js} +1 -1
- package/dist/client/assets/{brand-context-Co32YwBP.js → brand-context-CGxwlq0O.js} +1 -1
- package/dist/client/assets/{buckets-DhUJ8i8x.js → buckets-DYPtvGJ1.js} +1 -1
- package/dist/client/assets/calendar-DddAMJZc.js +1 -0
- package/dist/client/assets/{capability-load-error-mrR6n6ef.js → capability-load-error-So5ymzsn.js} +1 -1
- package/dist/client/assets/{card-mrz_YqFP.js → card-BIxqjUba.js} +1 -1
- package/dist/client/assets/{chat-context-xK_w16Am.js → chat-context-B5R7Bsxn.js} +1 -1
- package/dist/client/assets/{checkbox-D4JiAIiY.js → checkbox-DXKahMoV.js} +1 -1
- package/dist/client/assets/{cli-auth-success-D9eaRLqQ.js → cli-auth-success-C2saOMke.js} +1 -1
- package/dist/client/assets/collection-detail-D8ggdXLI.js +1 -0
- package/dist/client/assets/{collection-display-button-9zcw0Pse.js → collection-display-button-DvEoSW0w.js} +1 -1
- package/dist/client/assets/{collection-search-CBN_q_XM.js → collection-search-ChQblPf0.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-CN3rSGu3.js → collection-table-wrapper-CHFC6KhT.js} +1 -1
- package/dist/client/assets/{collection-tabs-BoWMCCpv.js → collection-tabs-GHQguzy_.js} +1 -1
- package/dist/client/assets/{collections-D3-t_Oif.js → collections-B2PRHYqJ.js} +1 -1
- package/dist/client/assets/{command-DT1FhdNv.js → command-A1tt2dvQ.js} +1 -1
- package/dist/client/assets/{connect-desktop-dialog-BDYQrQzN.js → connect-desktop-dialog-CUc_k3J7.js} +1 -1
- package/dist/client/assets/{connection-card-CWg85UPa.js → connection-card-ChcbOLys.js} +1 -1
- package/dist/client/assets/connection-detail-U_5KXkyF.js +1 -0
- package/dist/client/assets/{connection-form-helpers-I069qG8R.js → connection-form-helpers--wI2Mdjh.js} +1 -1
- package/dist/client/assets/connections-07oXzLs7.js +1 -0
- package/dist/client/assets/{constants-bvvELg6A.js → constants-BrUmWQ5v.js} +1 -1
- package/dist/client/assets/{decopilot-sse-pool-DZUcRlvx.js → decopilot-sse-pool-bx3Tzt-N.js} +1 -1
- package/dist/client/assets/dialog-DJ-H5eyi.js +1 -0
- package/dist/client/assets/{domain-settings-D_JQJ-_q.js → domain-settings-Bj8qY-gX.js} +1 -1
- package/dist/client/assets/{drawer-D-eRrcRE.js → drawer-BDlt-eEN.js} +1 -1
- package/dist/client/assets/{dropdown-menu-39FgxtLo.js → dropdown-menu-D2H5uhoI.js} +1 -1
- package/dist/client/assets/{dynamic-plugin-layout-d4yFw-ZE.js → dynamic-plugin-layout-Cf_TaIUq.js} +1 -1
- package/dist/client/assets/{empty-state-Cs0Tx7DE.js → empty-state-DxUsOjfR.js} +1 -1
- package/dist/client/assets/{empty-state-Cv3pDKB-.js → empty-state-PvmElhTC.js} +1 -1
- package/dist/client/assets/{extract-connection-data-DRKXxZ8i.js → extract-connection-data-BVH-NR56.js} +1 -1
- package/dist/client/assets/{features-BrIK7ax2.js → features-CNIUazHE.js} +1 -1
- package/dist/client/assets/file-explorer-B_0gIGYU.js +2 -0
- package/dist/client/assets/{file-type-icon-J1MyTx05.js → file-type-icon-5-Jlm8ee.js} +1 -1
- package/dist/client/assets/{files-Gd1f-YUl.js → files-Dmr-ntT-.js} +1 -1
- package/dist/client/assets/{form-BFCHHJw7.js → form-CO8TZWfS.js} +1 -1
- package/dist/client/assets/{general-Hc1ImFmK.js → general-DH2-DqRy.js} +1 -1
- package/dist/client/assets/{generate-id-BoTFc93G.js → generate-id-5eMpRIJR.js} +1 -1
- package/dist/client/assets/{github-repo-picker-CJ1plqRU.js → github-repo-picker-D1NpZ6ct.js} +1 -1
- package/dist/client/assets/header-tab-button-B5RTsjq3.js +3 -0
- package/dist/client/assets/{hover-card-CW2-sshf.js → hover-card-B0ZnutE8.js} +1 -1
- package/dist/client/assets/{image-field-GBQBz7jx.js → image-field-DH6NL7As.js} +1 -1
- package/dist/client/assets/{index-Dlj9BqPT.js → index--2_kkJgD.js} +1 -1
- package/dist/client/assets/{index-CbPPWvrX.js → index--ipoW5Od.js} +2 -2
- package/dist/client/assets/index-BK9ucwVY.js +11 -0
- package/dist/client/assets/index-BQA4WrEz.js +1 -0
- package/dist/client/assets/{index-XCMOYuFO.js → index-BZB5wdSX.js} +1 -1
- package/dist/client/assets/{index-BpHDMydO.js → index-C8xgZP7Q.js} +1 -1
- package/dist/client/assets/{index-NkmnXqLU.js → index-CTonnX5C.js} +3 -3
- package/dist/client/assets/{index-D-h2wBuz.js → index-CX5zsV6g.js} +1 -1
- package/dist/client/assets/{index-Dh31lfjw.js → index-CohPXzOU.js} +1 -1
- package/dist/client/assets/{index-DG1wYdtC.js → index-DY-bhBl7.js} +24 -26
- package/dist/client/assets/index-Dd3eFW2j.js +1 -0
- package/dist/client/assets/{index-C8tR8eRp.js → index-Dh_ZP8gM.js} +1 -1
- package/dist/client/assets/{index-0jxZXjT_.js → index-Dj0KvohQ.js} +4 -4
- package/dist/client/assets/index-DzP6PZZ7.css +1 -0
- package/dist/client/assets/index-d4-4-LoF.js +3 -0
- package/dist/client/assets/{index-redirect-CtRf-K0w.js → index-redirect-DcDs3uRh.js} +1 -1
- package/dist/client/assets/{index-B0yf3v8e.js → index-zuFZRdMw.js} +1 -1
- package/dist/client/assets/{infiniteQueryObserver-BHyRmyuw.js → infiniteQueryObserver-By84F0-S.js} +1 -1
- package/dist/client/assets/{input-BJ1rHrAh.js → input-D7b0qTbD.js} +1 -1
- package/dist/client/assets/{integration-icon-B34NO5DZ.js → integration-icon-CfgTtI5o.js} +1 -1
- package/dist/client/assets/{label-Ces90Ob6.js → label-CYTFcC5V.js} +1 -1
- package/dist/client/assets/{layout-BObWYQOR.js → layout-CPR4jtia.js} +1 -1
- package/dist/client/assets/{login-CmFqIafL.js → login-C3iJJq1l.js} +1 -1
- package/dist/client/assets/{members-Ldm47cLr.js → members-C4ocetfC.js} +1 -1
- package/dist/client/assets/monaco-editor-KhKv-sJZ.js +9 -0
- package/dist/client/assets/{monitoring-stats-row-Bi90V9hM.js → monitoring-stats-row-CKv35kXI.js} +1 -1
- package/dist/client/assets/{oauth-callback-BajSrp4p.js → oauth-callback-DYj7ZiBe.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-M6LqzdG-.js → oauth-callback-ai-provider-BGdEvz_Y.js} +1 -1
- package/dist/client/assets/{onboarding-BOdaHuUD.js → onboarding-D6Xk0wL6.js} +1 -1
- package/dist/client/assets/{org-install-BXFui3MR.js → org-install-CEC4BLF-.js} +1 -1
- package/dist/client/assets/{org-layout-DLehdBZw.js → org-layout-BE5MLVkw.js} +1 -1
- package/dist/client/assets/{org-plugin-layout-Dc3cW9pW.js → org-plugin-layout-L5iGkhHt.js} +1 -1
- package/dist/client/assets/{page-seo-form-Ba6J76YC.js → page-seo-form-jxY-H_g3.js} +1 -1
- package/dist/client/assets/page-seo-sheet-DsZP33VR.js +1 -0
- package/dist/client/assets/{pair-8URjhbdi.js → pair-BBpXnc-h.js} +1 -1
- package/dist/client/assets/{plugin-empty-state-nbJy5gbu.js → plugin-empty-state-DWClfnpF.js} +1 -1
- package/dist/client/assets/{plugin-header-BOwZcASL.js → plugin-header-Z6RQivcP.js} +1 -1
- package/dist/client/assets/{plugin-layout-DnOSNazi.js → plugin-layout-vnnJlQxa.js} +1 -1
- package/dist/client/assets/{popover-CvKJiX83.js → popover-lyccXPhR.js} +1 -1
- package/dist/client/assets/{post-editor-DYIIhxtg.js → post-editor-DxyYIPy4.js} +2 -2
- package/dist/client/assets/{primitives-CCwkgknT.js → primitives-BJLFwP4M.js} +1 -1
- package/dist/client/assets/{profile-nmeOosOi.js → profile-D0mq2N64.js} +1 -1
- package/dist/client/assets/project-app-view-Cf5PFYO6.js +1 -0
- package/dist/client/assets/record-editor-CNQSVEjq.js +1 -0
- package/dist/client/assets/registry-Ee2akcS9.js +2 -0
- package/dist/client/assets/{registry-layout-uxAOVQng.js → registry-layout-DJdGkFsS.js} +1 -1
- package/dist/client/assets/{require-capability-CA7mIlLg.js → require-capability-l0UYKnJd.js} +1 -1
- package/dist/client/assets/{required-auth-layout-Bsfg7CLj.js → required-auth-layout-BGUftSDY.js} +1 -1
- package/dist/client/assets/{reset-password-Ul1CROcF.js → reset-password-FUpnkHMr.js} +1 -1
- package/dist/client/assets/resizable-DwJvPNj4.js +1 -0
- package/dist/client/assets/roles-BuPsd2Xq.js +1 -0
- package/dist/client/assets/{save-status-Cfu7sTcH.js → save-status-QxvffYyD.js} +1 -1
- package/dist/client/assets/schema-form-BdWc4cV5.js +1 -0
- package/dist/client/assets/{scroll-area-43OyCToQ.js → scroll-area-B_h8lIJ9.js} +2 -2
- package/dist/client/assets/{search-input-CIl-bXGa.js → search-input-BKOtoJjA.js} +1 -1
- package/dist/client/assets/{secrets-Debl4Ngu.js → secrets-Dtlt9ZmS.js} +1 -1
- package/dist/client/assets/{sections-editor-CcwffiQl.js → sections-editor-Dqu3z5Ot.js} +2 -2
- package/dist/client/assets/{select-CvDnclqc.js → select-Beg_2fXg.js} +1 -1
- package/dist/client/assets/{select-model-cqeqhVQK.js → select-model-BMbD_9Ia.js} +1 -1
- package/dist/client/assets/seo-editor-DPjxt-kB.js +1 -0
- package/dist/client/assets/settings-layout-BmGeDfut.js +1 -0
- package/dist/client/assets/{settings-section-z_q4ruf_.js → settings-section-BTmXhjqn.js} +1 -1
- package/dist/client/assets/{sheet-ChXXkoux.js → sheet-D-WSQKVa.js} +1 -1
- package/dist/client/assets/{shell-controls-BHiQ5Vjs.js → shell-controls-Cjwnc3rm.js} +1 -1
- package/dist/client/assets/{shell-layout-0JObD2s1.js → shell-layout-B5BcGCUv.js} +1 -1
- package/dist/client/assets/{shell-route-loading-DBlx6e0Z.js → shell-route-loading-CwaZaGaY.js} +1 -1
- package/dist/client/assets/{sidebar-DxS-nB9C.js → sidebar-B3SUDWcE.js} +1 -1
- package/dist/client/assets/{skeleton-BnhJTtVi.js → skeleton-CFHIS59D.js} +1 -1
- package/dist/client/assets/{sortable.esm-DjicLksl.js → sortable.esm-qUS1Ad1E.js} +1 -1
- package/dist/client/assets/{spinner-Cecl_L8X.js → spinner-w0j4pkm6.js} +1 -1
- package/dist/client/assets/{sso-CCvO1qtH.js → sso-BzO1v4AH.js} +1 -1
- package/dist/client/assets/{store-Bms8WhNQ.js → store-DDnRAbDj.js} +1 -1
- package/dist/client/assets/store-registry-DdmX5Xjk.js +2 -0
- package/dist/client/assets/{switch-BOQ2PJeb.js → switch-DigajlLH.js} +1 -1
- package/dist/client/assets/{tab-id-B2HRXc_q.js → tab-id-Dqk0Iqqp.js} +1 -1
- package/dist/client/assets/{table-Cz11eDpz.js → table-CG9TNjwG.js} +1 -1
- package/dist/client/assets/{tabs-CeDin4k7.js → tabs-hJQcRyAi.js} +1 -1
- package/dist/client/assets/{task-status-BLPz-4sC.js → task-status-BPOI6tWP.js} +1 -1
- package/dist/client/assets/{textarea-SDIeylNJ.js → textarea-F1h3gKD-.js} +1 -1
- package/dist/client/assets/{toggle-group-CefnzENU.js → toggle-group-DBo9mYwI.js} +1 -1
- package/dist/client/assets/toolbar-Chbc6IV1.js +1 -0
- package/dist/client/assets/{tools-list-CqDkzdE6.js → tools-list-CabDoS9o.js} +1 -1
- package/dist/client/assets/{tooltip-CeP603hH.js → tooltip-DR0ou5_h.js} +1 -1
- package/dist/client/assets/{types-B_duTJl-.js → types-B8jc6i3t.js} +1 -1
- package/dist/client/assets/{use-ai-providers-BVFxEa9L.js → use-ai-providers-Crp3aL-d.js} +1 -1
- package/dist/client/assets/{use-automations-BefuyBQd.js → use-automations-CvPaoJpy.js} +1 -1
- package/dist/client/assets/{use-capability-BrFRIPu5.js → use-capability-C_bdrk_p.js} +1 -1
- package/dist/client/assets/{use-collections-DPnWGTP7.js → use-collections-CIhR2Sfk.js} +1 -1
- package/dist/client/assets/{use-connection-CzM_WXMN.js → use-connection-B9u8CAro.js} +1 -1
- package/dist/client/assets/{use-copy-wKwDCbum.js → use-copy-BQU7kOTS.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-CwM2ND5a.js → use-create-virtual-mcp-B-ZztG0t.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-D4-Vb6JZ.js → use-debounced-autosave-DSkO6_zp.js} +1 -1
- package/dist/client/assets/{use-delete-connection-0bGCksoc.js → use-delete-connection--aJNKbDc.js} +1 -1
- package/dist/client/assets/{use-file-configs-DXzZdUlN.js → use-file-configs-DpObIFgQ.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-COXLEab2.js → use-infinite-scroll-cj_fIBkS.js} +1 -1
- package/dist/client/assets/{use-list-state-1DLqfcvM.js → use-list-state-CJLRzORi.js} +1 -1
- package/dist/client/assets/{use-mcp-prompts-EWCIJOcj.js → use-mcp-prompts-CbFGc10Q.js} +1 -1
- package/dist/client/assets/{use-mcp-tools-YMWJX9tN.js → use-mcp-tools-5agNAepF.js} +1 -1
- package/dist/client/assets/{use-members-CMjFtY8-.js → use-members-BxYNXFJP.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-DbTKvOZS.js → use-navigate-to-agent-BF3wV5AT.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-PFGUMv0N.js → use-org-auth-client-CXXJeS8t.js} +1 -1
- package/dist/client/assets/{use-org-sso-KYe6rDaT.js → use-org-sso-78wZG6-f.js} +1 -1
- package/dist/client/assets/{use-organization-roles-CzafvuiG.js → use-organization-roles-8xWgqzTV.js} +1 -1
- package/dist/client/assets/{use-organization-settings-CQEWT13Z.js → use-organization-settings-CTFAMDf3.js} +1 -1
- package/dist/client/assets/{use-registry-connections-Bxq_77g6.js → use-registry-connections-DLQyW9bq.js} +1 -1
- package/dist/client/assets/{use-secrets-CgnCxvTW.js → use-secrets-Cmx_245Q.js} +1 -1
- package/dist/client/assets/{use-status-sounds-CWk7re-G.js → use-status-sounds-B-QYeuIF.js} +1 -1
- package/dist/client/assets/{use-view-mode-C8ehq-d0.js → use-view-mode-DmcUzuJT.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-DflWVTuF.js → use-virtual-mcp-CLwhjRff.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-DiBUJYe_.js +1 -0
- package/dist/client/assets/{useRouterState-Br8Ksrwr.js → useRouterState-Dsvmx6NW.js} +1 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-Bu_otJLP.js +1 -0
- package/dist/client/assets/{user-Dz7iwzYF.js → user-C_mdefEx.js} +1 -1
- package/dist/client/assets/{view-mode-toggle-DI_qGqci.js → view-mode-toggle-CBJdrX89.js} +1 -1
- package/dist/client/assets/workflow-Bs2NMxKI.js +1 -0
- package/dist/client/assets/workflow-detail-BovMNGKv.js +1 -0
- package/dist/client/index.html +2 -2
- package/dist/server/cli.js +433 -433
- package/dist/server/server.js +290 -290
- package/package.json +1 -1
- package/dist/client/assets/ZapSquare-B2q8WEX1.js +0 -1
- package/dist/client/assets/ZoomOut-DnoKIS59.js +0 -1
- package/dist/client/assets/accordion-BVwnr-Ph.js +0 -1
- package/dist/client/assets/add-section-modal-DhovoW-j.js +0 -1
- package/dist/client/assets/agent-icon-BJOP--6N.js +0 -1
- package/dist/client/assets/agents-list-BXn-hA0n.js +0 -1
- package/dist/client/assets/app-editor-BNURPsQU.js +0 -1
- package/dist/client/assets/automations-GZ_mGUjn.js +0 -1
- package/dist/client/assets/calendar-C2n-TFID.js +0 -1
- package/dist/client/assets/collection-detail-CY7EGtz7.js +0 -1
- package/dist/client/assets/connection-detail-P3V5HPH7.js +0 -1
- package/dist/client/assets/connections-OTmgMsxB.js +0 -1
- package/dist/client/assets/dialog-Br598C89.js +0 -1
- package/dist/client/assets/file-explorer-D4_0I4su.js +0 -2
- package/dist/client/assets/file-preview-B4Zho1Y6.js +0 -1
- package/dist/client/assets/index-Dah3mtyQ.js +0 -1
- package/dist/client/assets/index-RWntp561.js +0 -1
- package/dist/client/assets/index-VJJ8U_LK.js +0 -2
- package/dist/client/assets/index-uXid0yMu.css +0 -1
- package/dist/client/assets/monaco-editor-D4JSTdws.js +0 -19
- package/dist/client/assets/page-seo-sheet-GBqlqXbH.js +0 -1
- package/dist/client/assets/project-app-view-0IenPExc.js +0 -1
- package/dist/client/assets/record-editor-B_xzO2rA.js +0 -1
- package/dist/client/assets/registry-GiOtrI6p.js +0 -2
- package/dist/client/assets/roles-FrRjzVah.js +0 -1
- package/dist/client/assets/schema-form-yjRGF1Qo.js +0 -1
- package/dist/client/assets/seo-editor-BPl-B1OI.js +0 -1
- package/dist/client/assets/settings-layout-D1eS1NN7.js +0 -1
- package/dist/client/assets/store-registry-Cs3BGFgx.js +0 -2
- package/dist/client/assets/toolbar-B8vAkOP3.js +0 -1
- package/dist/client/assets/useInfiniteQuery-2A4J-MZz.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-vt45tURh.js +0 -1
- package/dist/client/assets/workflow-CF5qm1Zf.js +0 -1
- package/dist/client/assets/workflow-detail-CDrDJwxR.js +0 -1
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
import{e as C,q as A,F as Fe,a as oe,K as _,n as M,b2 as Qe,r as R,j as t,B as U,c as ee,f as De,d as ze,E as ae,z as Xe,o as H}from"./index-Dj0KvohQ.js";import{i as We}from"./ChevronRight-Bp_pdC8P.js";import{s as Oe}from"./Eye-6gmxXOun.js";import{n as de,i as Ye}from"./Globe01-DLq7QB09.js";import{i as Ze,b as Je}from"./ZoomOut-aDyKTD6y.js";import{s as et}from"./Plus-CxUOnaMo.js";import{t as tt}from"./Stars01-CScMgUNS.js";import{i as Pe}from"./Upload01-cIFihtD7.js";import{b as Q,T as X,a as W,u as Te}from"./tooltip-DR0ou5_h.js";import{A as st,a as lt,b as nt,c as it,d as rt,e as ot,f as at,g as ct}from"./alert-dialog-BPHTzN62.js";import{D as fe,a as ue,c as me,f as dt,b as ft,e as ut,d as mt}from"./dialog-DJ-H5eyi.js";import{I as ht}from"./input-D7b0qTbD.js";import{S as V}from"./skeleton-CFHIS59D.js";import{F as E,d as _e,M as xt}from"./file-type-icon-5-Jlm8ee.js";import{a as pt}from"./toolbar-Chbc6IV1.js";import{f as Ue,a as he,F as Ee,H as gt}from"./header-tab-button-B5RTsjq3.js";import{i as xe}from"./DotsVertical-L-zHFr4w.js";import{s as pe}from"./Trash01-BOqsHAki.js";import{i as Ae}from"./Zap-mREy1Qov.js";import{a as ge,c as Y,b as je,D as ye}from"./dropdown-menu-D2H5uhoI.js";import{R as Ne,a as jt,b as yt}from"./resizable-DwJvPNj4.js";import{n as Me}from"./LinkExternal01-BbkedL4y.js";import{s as bt}from"./XClose-REUNo7hV.js";import{i as wt}from"./X-D4woLNFq.js";import"./Check-DA5UKh5X.js";import"./ChevronLeft-BE2hdOnx.js";import"./index-BK9ucwVY.js";const vt=new Set(["output","upload","public","home"]),Nt=/^[A-Za-z0-9][A-Za-z0-9._-]*$/;function kt(l){return vt.has(l)||!Nt.test(l)?"home":l}function q(l,e,s,n){const i=new URLSearchParams(n).toString();return`/api/${encodeURIComponent(l)}/fs/${encodeURIComponent(e)}/${s}${i?`?${i}`:""}`}async function K(l,e){const s=await fetch(l,e);if(!s.ok){let n="";try{n=(await s.json()).error??""}catch{}throw new Error(n||`HTTP ${s.status}`)}return s}function Re(l,e){const s=C.c(11),{org:n}=A();let i;s[0]!==n.id||s[1]!==e||s[2]!==l?(i=_.orgFsList(n.id,l,e),s[0]=n.id,s[1]=e,s[2]=l,s[3]=i):i=s[3];let o;s[4]!==n.slug||s[5]!==e||s[6]!==l?(o=async()=>(await(await K(q(n.slug,l,"list",{path:e}))).json()).entries.toSorted($t),s[4]=n.slug,s[5]=e,s[6]=l,s[7]=o):o=s[7];let a;return s[8]!==i||s[9]!==o?(a={queryKey:i,placeholderData:Qe,queryFn:o},s[8]=i,s[9]=o,s[10]=a):a=s[10],M(a)}function $t(l,e){return l.kind!==e.kind?l.kind==="dir"?-1:1:l.path.localeCompare(e.path)}function qe(l,e){const s=C.c(12),{org:n}=A();let i;s[0]!==n.id||s[1]!==e||s[2]!==l?(i=_.orgFsStat(n.id,l??"",e),s[0]=n.id,s[1]=e,s[2]=l,s[3]=i):i=s[3];const o=l!==null;let a;s[4]!==n.slug||s[5]!==e||s[6]!==l?(a=async()=>{const r=await fetch(q(n.slug,l??"","stat",{path:e}));if(r.status===404)return null;if(!r.ok)throw new Error(`HTTP ${r.status}`);return(await r.json()).entry},s[4]=n.slug,s[5]=e,s[6]=l,s[7]=a):a=s[7];let c;return s[8]!==i||s[9]!==o||s[10]!==a?(c={queryKey:i,enabled:o,queryFn:a},s[8]=i,s[9]=o,s[10]=a,s[11]=c):c=s[11],M(c)}function Ct(l){const e=C.c(9),{org:s}=A();let n;e[0]!==s.id||e[1]!==l?(n=_.orgFsUsage(s.id,l),e[0]=s.id,e[1]=l,e[2]=n):n=e[2];let i;e[3]!==s.slug||e[4]!==l?(i=async()=>await(await K(q(s.slug,l,"usage"))).json(),e[3]=s.slug,e[4]=l,e[5]=i):i=e[5];let o;return e[6]!==n||e[7]!==i?(o={queryKey:n,queryFn:i},e[6]=n,e[7]=i,e[8]=o):o=e[8],M(o)}function St(l){const e=C.c(8),s=60,{org:n}=A();let i;e[0]!==n.id?(i=_.orgFsRecent(n.id),e[0]=n.id,e[1]=i):i=e[1];let o;e[2]!==s||e[3]!==n.slug?(o=async()=>(await(await K(`/api/${encodeURIComponent(n.slug)}/fs/recent?limit=${s}`)).json()).entries,e[2]=s,e[3]=n.slug,e[4]=o):o=e[4];let a;return e[5]!==i||e[6]!==o?(a={queryKey:i,queryFn:o},e[5]=i,e[6]=o,e[7]=a):a=e[7],M(a)}function Le(){const l=C.c(7),{org:e}=A();let s;l[0]!==e.id?(s=_.orgFsPublicSets(e.id),l[0]=e.id,l[1]=s):s=l[1];let n;l[2]!==e.slug?(n=async()=>(await(await K(`/api/${encodeURIComponent(e.slug)}/fs/public-sets`)).json()).sets,l[2]=e.slug,l[3]=n):n=l[3];let i;return l[4]!==s||l[5]!==n?(i={queryKey:s,staleTime:3e5,queryFn:n},l[4]=s,l[5]=n,l[6]=i):i=l[6],M(i)}function Ie(l){const e=C.c(3),{org:s}=A();let n;return e[0]!==s.slug||e[1]!==l?(n=i=>q(s.slug,l,"read",{path:i}),e[0]=s.slug,e[1]=l,e[2]=n):n=e[2],n}function be(){const l=C.c(2),{org:e}=A();let s;return l[0]!==e.slug?(s=(n,i)=>q(e.slug,n,"read",{path:i}),l[0]=e.slug,l[1]=s):s=l[1],s}function ke(l){const e=C.c(26),{org:s}=A(),n=Fe();let i;e[0]!==s||e[1]!==n||e[2]!==l?(i=()=>{n.invalidateQueries({queryKey:_.orgFsVolume(s.id,l)}),n.invalidateQueries({queryKey:_.orgFsRecent(s.id)})},e[0]=s,e[1]=n,e[2]=l,e[3]=i):i=e[3];const o=i;let a;e[4]!==s||e[5]!==l?(a=async p=>{for(const h of p.files){const v=p.dir?`${p.dir}/${h.name}`:h.name;await K(q(s.slug,l,"file",{path:v}),{method:"PUT",headers:{"content-type":h.type||"application/octet-stream"},body:h})}},e[4]=s,e[5]=l,e[6]=a):a=e[6];let c;e[7]!==o||e[8]!==a?(c={mutationFn:a,onSettled:o},e[7]=o,e[8]=a,e[9]=c):c=e[9];const r=oe(c);let d;e[10]!==s||e[11]!==l?(d=async p=>{await K(q(s.slug,l,"dir",{path:p}),{method:"POST"})},e[10]=s,e[11]=l,e[12]=d):d=e[12];let u;e[13]!==o||e[14]!==d?(u={mutationFn:d,onSuccess:o},e[13]=o,e[14]=d,e[15]=u):u=e[15];const f=oe(u);let m;e[16]!==s||e[17]!==l?(m=async p=>{await K(q(s.slug,l,"file",{path:p}),{method:"DELETE"})},e[16]=s,e[17]=l,e[18]=m):m=e[18];let x;e[19]!==o||e[20]!==m?(x={mutationFn:m,onSuccess:o},e[19]=o,e[20]=m,e[21]=x):x=e[21];const y=oe(x);let g;return e[22]!==f||e[23]!==y||e[24]!==r?(g={upload:r,mkdir:f,remove:y},e[22]=f,e[23]=y,e[24]=r,e[25]=g):g=e[25],g}function Ft(l){const e=C.c(33);let s,n,i;e[0]!==l?({glyph:s,readOnly:i,...n}=l,e[0]=l,e[1]=s,e[2]=n,e[3]=i):(s=e[1],n=e[2],i=e[3]);const o=R.useId(),a=`${o}-back`,c=`${o}-front`,r=`url(#${a})`;let d;e[4]!==r?(d=t.jsx("path",{d:"M2.53738 2.55C1.13602 2.55 0 3.68602 0 5.08738V11.535H31.931V7.65326C31.931 6.23616 30.7822 5.08738 29.3651 5.08738H14.7681L13.8775 5.02542C13.3886 4.99141 12.9197 4.81809 12.5261 4.52596L10.7726 3.22419C10.1828 2.78638 9.46784 2.55 8.73334 2.55H2.53738Z",fill:r}),e[4]=r,e[5]=d):d=e[5];const u=`url(#${c})`;let f;e[6]!==u?(f=t.jsx("rect",{y:"8.72",width:"32",height:"21",rx:"2.566",fill:u}),e[6]=u,e[7]=f):f=e[7];let m,x,y;e[8]===Symbol.for("react.memo_cache_sentinel")?(m=t.jsx("rect",{x:"0.3",y:"8.86",width:"31.4",height:"0.55",rx:"0.275",fill:"#FFFFFF",opacity:"0.25"}),x=t.jsx("rect",{y:"25.81",width:"32",height:"0.552",fill:"#84CDFB"}),y=t.jsx("rect",{y:"27.05",width:"32",height:"0.552",fill:"#84CDFB"}),e[8]=m,e[9]=x,e[10]=y):(m=e[8],x=e[9],y=e[10]);let g;e[11]!==s?(g=s&&t.jsx(s,{x:10.5,y:13.2,width:11,height:11,strokeWidth:2.2,style:{color:"#014AC9",opacity:.55}}),e[11]=s,e[12]=g):g=e[12];let p;e[13]!==i?(p=i&&t.jsxs(t.Fragment,{children:[t.jsx("circle",{cx:"25.5",cy:"25.5",r:"6.2",strokeWidth:"1",className:"fill-background stroke-border"}),t.jsx(Oe,{x:22.1,y:22.1,width:6.8,height:6.8,strokeWidth:2.2,className:"text-muted-foreground"})]}),e[13]=i,e[14]=p):p=e[14];let h,v;e[15]===Symbol.for("react.memo_cache_sentinel")?(h=t.jsx("stop",{offset:"0.3",stopColor:"#4D87DF"}),v=t.jsx("stop",{offset:"1",stopColor:"#296FE8"}),e[15]=h,e[16]=v):(h=e[15],v=e[16]);let w;e[17]!==a?(w=t.jsxs("linearGradient",{id:a,x1:"15.97",y1:"2.55",x2:"15.97",y2:"9.53",gradientUnits:"userSpaceOnUse",children:[h,v]}),e[17]=a,e[18]=w):w=e[18];let k,j;e[19]===Symbol.for("react.memo_cache_sentinel")?(k=t.jsx("stop",{stopColor:"#72B6FA"}),j=t.jsx("stop",{offset:"1",stopColor:"#5BB1EF"}),e[19]=k,e[20]=j):(k=e[19],j=e[20]);let N;e[21]!==c?(N=t.jsxs("radialGradient",{id:c,cx:"0",cy:"0",r:"10",gradientUnits:"userSpaceOnUse",gradientTransform:"matrix(1.6 0 0 2.1538 16 19.22)",children:[k,j]}),e[21]=c,e[22]=N):N=e[22];let $;e[23]!==w||e[24]!==N?($=t.jsxs("defs",{children:[w,N]}),e[23]=w,e[24]=N,e[25]=$):$=e[25];let S;return e[26]!==n||e[27]!==$||e[28]!==d||e[29]!==f||e[30]!==g||e[31]!==p?(S=t.jsxs("svg",{viewBox:"0 0 32 32",fill:"none",xmlns:"http://www.w3.org/2000/svg","aria-hidden":"true",...n,children:[d,f,m,x,y,g,p,$]}),e[26]=n,e[27]=$,e[28]=d,e[29]=f,e[30]=g,e[31]=p,e[32]=S):S=e[32],S}function Dt(l){const e={};for(const s of l.split(`
|
|
2
|
+
`)){const n=s.match(/^([A-Za-z][\w-]*):\s*(.*)$/);n?.[1]&&n[2]!==void 0&&(e[n[1].toLowerCase()]=n[2].trim())}return e}function $e(l){for(const e of l.split(/\n\s*\n/)){const s=e.trim();if(!(!s||s.startsWith("#")))return s.replace(/\n/g," ")}return null}function Ke(l){const e=l.match(/^---\n([\s\S]*?)\n---\n?/);if(!e||e[1]===void 0)return{name:null,description:$e(l),body:l};const s=Dt(e[1]),n=l.slice(e[0].length);return{name:s.name||null,description:s.description||$e(n),body:n}}const zt=new Set(["png","jpg","jpeg","gif","webp","svg","avif"]),Ot=new Set(["csv","tsv"]),Pt=new Set(["mp4","webm","mov","m4v"]),Tt=new Set(["txt","md","markdown","json","log","yaml","yml","xml","html","htm"]),_t=256*1024;function te(l){const e=new Date(l);if(Number.isNaN(e.getTime()))return"";const s=Date.now()-e.getTime(),n=Math.floor(s/6e4);if(n<1)return"just now";if(n<60)return`${n}m ago`;const i=Math.floor(n/60);if(i<24)return`${i}h ago`;const o=Math.floor(i/24);return o<30?`${o}d ago`:e.toLocaleDateString(void 0,{month:"short",day:"numeric"})}function Ut(l){return l.split(".").pop()?.toLowerCase()??""}function Be(l){const e=C.c(15),{downloadUrl:s,filename:n,onDelete:i}=l,o=`Actions for ${n}`;let a;e[0]===Symbol.for("react.memo_cache_sentinel")?(a=t.jsx(xe,{size:14}),e[0]=a):a=e[0];let c;e[1]!==o?(c=t.jsx(ge,{asChild:!0,children:t.jsx(U,{variant:"ghost",size:"icon",className:"size-6 shrink-0 opacity-0 transition-opacity group-hover/card:opacity-100 data-[state=open]:opacity-100",onClick:At,"aria-label":o,children:a})}),e[1]=o,e[2]=c):c=e[2];let r;e[3]===Symbol.for("react.memo_cache_sentinel")?(r=t.jsx(de,{size:14}),e[3]=r):r=e[3];let d;e[4]!==s||e[5]!==n?(d=t.jsx(Y,{asChild:!0,children:t.jsxs("a",{href:s,download:n,children:[r,"Download"]})}),e[4]=s,e[5]=n,e[6]=d):d=e[6];let u;e[7]!==i?(u=i&&t.jsxs(Y,{variant:"destructive",onClick:i,children:[t.jsx(pe,{size:14}),"Delete"]}),e[7]=i,e[8]=u):u=e[8];let f;e[9]!==d||e[10]!==u?(f=t.jsxs(je,{align:"end",onClick:Et,children:[d,u]}),e[9]=d,e[10]=u,e[11]=f):f=e[11];let m;return e[12]!==c||e[13]!==f?(m=t.jsxs(ye,{children:[c,f]}),e[12]=c,e[13]=f,e[14]=m):m=e[14],m}function Et(l){return l.stopPropagation()}function At(l){return l.stopPropagation()}function se(l){const e=C.c(9),{onOpen:s,children:n,className:i}=l;let o;e[0]!==s?(o=r=>{(r.key==="Enter"||r.key===" ")&&(r.preventDefault(),s())},e[0]=s,e[1]=o):o=e[1];let a;e[2]!==i?(a=ee("group/card flex cursor-pointer flex-col gap-3 rounded-2xl border border-border bg-background p-4 text-left transition-colors hover:border-border hover:bg-muted/40",i),e[2]=i,e[3]=a):a=e[3];let c;return e[4]!==n||e[5]!==s||e[6]!==o||e[7]!==a?(c=t.jsx("div",{role:"button",tabIndex:0,onClick:s,onKeyDown:o,className:a,children:n}),e[4]=n,e[5]=s,e[6]=o,e[7]=a,e[8]=c):c=e[8],c}function le(l){const e=C.c(16),{icon:s,name:n,meta:i,subtitle:o,actions:a}=l;let c;e[0]!==n?(c=t.jsx("span",{className:"min-w-0 flex-1 truncate text-[13px] text-foreground",title:n,children:n}),e[0]=n,e[1]=c):c=e[1];let r;e[2]!==i?(r=i&&t.jsx("span",{className:"shrink-0 text-xs text-muted-foreground",children:i}),e[2]=i,e[3]=r):r=e[3];let d;e[4]!==c||e[5]!==r?(d=t.jsxs("div",{className:"flex items-start gap-3",children:[c,r]}),e[4]=c,e[5]=r,e[6]=d):d=e[6];let u;e[7]!==o?(u=o&&t.jsx("span",{className:"text-xs text-muted-foreground",children:o}),e[7]=o,e[8]=u):u=e[8];let f;e[9]!==d||e[10]!==u?(f=t.jsxs("div",{className:"flex min-w-0 flex-1 flex-col justify-center",children:[d,u]}),e[9]=d,e[10]=u,e[11]=f):f=e[11];let m;return e[12]!==a||e[13]!==s||e[14]!==f?(m=t.jsxs("div",{className:"flex w-full items-center gap-2.5",children:[s,f,a]}),e[12]=a,e[13]=s,e[14]=f,e[15]=m):m=e[15],m}function ne(l){const e=C.c(15),{name:s,meta:n,subtitle:i,glyph:o,readOnly:a,onOpen:c,onDelete:r}=l;let d;e[0]!==o||e[1]!==a?(d=t.jsx(Ft,{glyph:o,readOnly:a,className:"size-8 shrink-0"}),e[0]=o,e[1]=a,e[2]=d):d=e[2];let u;e[3]!==s||e[4]!==r?(u=r?t.jsxs(ye,{children:[t.jsx(ge,{asChild:!0,children:t.jsx(U,{variant:"ghost",size:"icon",className:"size-6 shrink-0 opacity-0 transition-opacity group-hover/card:opacity-100 data-[state=open]:opacity-100",onClick:Rt,"aria-label":`Actions for ${s}`,children:t.jsx(xe,{size:14})})}),t.jsx(je,{align:"end",onClick:Mt,children:t.jsxs(Y,{variant:"destructive",onClick:r,children:[t.jsx(pe,{size:14}),"Delete"]})})]}):void 0,e[3]=s,e[4]=r,e[5]=u):u=e[5];let f;e[6]!==n||e[7]!==s||e[8]!==i||e[9]!==d||e[10]!==u?(f=t.jsx(le,{icon:d,name:s,meta:n,subtitle:i,actions:u}),e[6]=n,e[7]=s,e[8]=i,e[9]=d,e[10]=u,e[11]=f):f=e[11];let m;return e[12]!==c||e[13]!==f?(m=t.jsx(se,{onOpen:c,children:f}),e[12]=c,e[13]=f,e[14]=m):m=e[14],m}function Mt(l){return l.stopPropagation()}function Rt(l){return l.stopPropagation()}function He(l){const e=C.c(19),{filename:s,updatedAt:n,downloadUrl:i,onOpen:o,onDelete:a}=l;let c;e[0]!==s?(c=t.jsx(E,{filename:s,className:"h-8 w-6.5 shrink-0"}),e[0]=s,e[1]=c):c=e[1];let r;e[2]!==n?(r=te(n),e[2]=n,e[3]=r):r=e[3];let d;e[4]!==s?(d=_e(s),e[4]=s,e[5]=d):d=e[5];let u;e[6]!==i||e[7]!==s||e[8]!==a?(u=t.jsx(Be,{downloadUrl:i,filename:s,onDelete:a}),e[6]=i,e[7]=s,e[8]=a,e[9]=u):u=e[9];let f;e[10]!==s||e[11]!==c||e[12]!==r||e[13]!==d||e[14]!==u?(f=t.jsx(le,{icon:c,name:s,meta:r,subtitle:d,actions:u}),e[10]=s,e[11]=c,e[12]=r,e[13]=d,e[14]=u,e[15]=f):f=e[15];let m;return e[16]!==o||e[17]!==f?(m=t.jsx(se,{onOpen:o,children:f}),e[16]=o,e[17]=f,e[18]=m):m=e[18],m}function qt(l){const e=C.c(36),{dirName:s,updatedAt:n,skillMdUrl:i,onOpen:o,onBrowse:a,onDelete:c}=l;let r;e[0]!==i?(r=_.fileText(i),e[0]=i,e[1]=r):r=e[1];let d;e[2]!==i?(d=async()=>{const O=await fetch(i,{credentials:"include"});if(!O.ok)throw new Error(`fetch failed: ${O.status}`);return O.text()},e[2]=i,e[3]=d):d=e[3];let u;e[4]!==r||e[5]!==d?(u={queryKey:r,queryFn:d,staleTime:6e4,retry:!1},e[4]=r,e[5]=d,e[6]=u):u=e[6];const{data:f}=M(u);let m;e[7]!==f?(m=f?Ke(f):null,e[7]=f,e[8]=m):m=e[8];const x=m;let y;e[9]===Symbol.for("react.memo_cache_sentinel")?(y=t.jsx("div",{className:"flex size-8 shrink-0 items-center justify-center rounded-lg bg-primary/10 text-primary",children:t.jsx(Ae,{size:16})}),e[9]=y):y=e[9];const g=x?.name??s;let p;e[10]!==n?(p=te(n),e[10]=n,e[11]=p):p=e[11];const h=`Actions for ${s}`;let v;e[12]===Symbol.for("react.memo_cache_sentinel")?(v=t.jsx(xe,{size:14}),e[12]=v):v=e[12];let w;e[13]!==h?(w=t.jsx(ge,{asChild:!0,children:t.jsx(U,{variant:"ghost",size:"icon",className:"size-6 shrink-0 opacity-0 transition-opacity group-hover/card:opacity-100 data-[state=open]:opacity-100",onClick:It,"aria-label":h,children:v})}),e[13]=h,e[14]=w):w=e[14];let k;e[15]===Symbol.for("react.memo_cache_sentinel")?(k=t.jsx(Ze,{size:14}),e[15]=k):k=e[15];let j;e[16]!==a?(j=t.jsxs(Y,{onClick:a,children:[k,"Browse files"]}),e[16]=a,e[17]=j):j=e[17];let N;e[18]!==c?(N=c&&t.jsxs(Y,{variant:"destructive",onClick:c,children:[t.jsx(pe,{size:14}),"Delete"]}),e[18]=c,e[19]=N):N=e[19];let $;e[20]!==j||e[21]!==N?($=t.jsxs(je,{align:"end",onClick:Lt,children:[j,N]}),e[20]=j,e[21]=N,e[22]=$):$=e[22];let S;e[23]!==w||e[24]!==$?(S=t.jsxs(ye,{children:[w,$]}),e[23]=w,e[24]=$,e[25]=S):S=e[25];let F;e[26]!==S||e[27]!==g||e[28]!==p?(F=t.jsx(le,{icon:y,name:g,meta:p,subtitle:"Skill",actions:S}),e[26]=S,e[27]=g,e[28]=p,e[29]=F):F=e[29];const z=x?.description??"";let D;e[30]!==z?(D=t.jsx("p",{className:"line-clamp-2 min-h-8 text-xs leading-4 text-muted-foreground",children:z}),e[30]=z,e[31]=D):D=e[31];let b;return e[32]!==o||e[33]!==F||e[34]!==D?(b=t.jsxs(se,{onOpen:o,children:[F,D]}),e[32]=o,e[33]=F,e[34]=D,e[35]=b):b=e[35],b}function Lt(l){return l.stopPropagation()}function It(l){return l.stopPropagation()}function ce(l){const e=C.c(4),{children:s}=l,[n,i]=R.useState(!1);let o;e[0]===Symbol.for("react.memo_cache_sentinel")?(o=()=>r=>{if(!r)return;const d=new IntersectionObserver(u=>{const[f]=u;f?.isIntersecting&&(i(!0),d.disconnect())},{rootMargin:"200px"});d.observe(r)},e[0]=o):o=e[0];const[a]=R.useState(o);if(n){let r;return e[1]!==s?(r=t.jsx(t.Fragment,{children:s}),e[1]=s,e[2]=r):r=e[2],r}let c;return e[3]===Symbol.for("react.memo_cache_sentinel")?(c=t.jsx("div",{ref:a,className:"h-full w-full"}),e[3]=c):c=e[3],c}function Kt(l){const e=C.c(11),{url:s}=l;let n;e[0]!==s?(n=_.fileText(s),e[0]=s,e[1]=n):n=e[1];let i;e[2]!==s?(i=async()=>{const d=await fetch(s,{credentials:"include"});if(!d.ok)throw new Error(`fetch failed: ${d.status}`);return d.text()},e[2]=s,e[3]=i):i=e[3];let o;e[4]!==n||e[5]!==i?(o={queryKey:n,queryFn:i,staleTime:6e4,retry:!1},e[4]=n,e[5]=i,e[6]=o):o=e[6];const{data:a}=M(o);if(!a)return null;let c;e[7]!==a?(c=a.slice(0,2e3),e[7]=a,e[8]=c):c=e[8];let r;return e[9]!==c?(r=t.jsx("pre",{className:"pointer-events-none h-full w-full overflow-hidden bg-background p-3 font-mono text-[9px] leading-[1.5] text-muted-foreground select-none",children:c}),e[9]=c,e[10]=r):r=e[10],r}function Bt(l){const e=C.c(23),{url:s,ext:n}=l;let i;e[0]!==s?(i=_.csvThumb(s),e[0]=s,e[1]=i):i=e[1];let o;e[2]!==s?(o=async()=>{const p=await fetch(s,{credentials:"include",headers:{Range:"bytes=0-8191"}});if(!p.ok)throw new Error(`fetch failed: ${p.status}`);return p.text()},e[2]=s,e[3]=o):o=e[3];let a;e[4]!==i||e[5]!==o?(a={queryKey:i,queryFn:o,staleTime:6e4,retry:!1},e[4]=i,e[5]=o,e[6]=a):a=e[6];const{data:c}=M(a);if(!c)return null;const r=n==="tsv"?" ":",";let d,u,f,m;if(e[7]!==c||e[8]!==r){m=Symbol.for("react.early_return_sentinel");e:{let p;e[13]!==r?(p=v=>v.split(r).slice(0,6).map(Gt),e[13]=r,e[14]=p):p=e[14];const h=c.split(`
|
|
3
|
+
`).filter(Boolean).slice(0,7).map(p);if(h.length===0){m=null;break e}f="pointer-events-none h-full w-full overflow-hidden bg-background p-2 select-none",u="w-full border-collapse",d=h.map(Ht)}e[7]=c,e[8]=r,e[9]=d,e[10]=u,e[11]=f,e[12]=m}else d=e[9],u=e[10],f=e[11],m=e[12];if(m!==Symbol.for("react.early_return_sentinel"))return m;let x;e[15]!==d?(x=t.jsx("tbody",{children:d}),e[15]=d,e[16]=x):x=e[16];let y;e[17]!==u||e[18]!==x?(y=t.jsx("table",{className:u,children:x}),e[17]=u,e[18]=x,e[19]=y):y=e[19];let g;return e[20]!==f||e[21]!==y?(g=t.jsx("div",{className:f,children:y}),e[20]=f,e[21]=y,e[22]=g):g=e[22],g}function Ht(l,e){return t.jsx("tr",{className:ee(e===0&&"bg-muted/50 font-medium"),children:l.map(Vt)},e)}function Vt(l,e){return t.jsx("td",{className:"max-w-[56px] overflow-hidden border border-border/30 px-1 py-px text-[7px] leading-[1.4] text-muted-foreground",style:{maxWidth:56},children:t.jsx("span",{className:"block truncate",children:l})},e)}function Gt(l){return l.trim().replace(/^"|"$/g,"")}function Qt(l){const e=C.c(14),{filename:s,size:n,downloadUrl:i}=l;let o;if(e[0]!==i||e[1]!==s||e[2]!==n){const a=Ut(s);let c;if(zt.has(a)){let r;e[4]!==i?(r=t.jsx("img",{src:i,alt:"",loading:"lazy",className:"h-full w-full object-cover"}),e[4]=i,e[5]=r):r=e[5],c=r}else if(Pt.has(a)){const r=`${i}#t=0.1`;let d;e[6]!==r?(d=t.jsx(ce,{children:t.jsx("video",{src:r,preload:"metadata",muted:!0,playsInline:!0,className:"pointer-events-none h-full w-full object-cover"})}),e[6]=r,e[7]=d):d=e[7],c=d}else if(a==="pdf"){let r;e[8]!==s?(r=t.jsx("div",{className:"flex h-full w-full items-center justify-center",children:t.jsx(E,{filename:s,className:"h-14 w-11 opacity-60"})}),e[8]=s,e[9]=r):r=e[9],c=r}else if(Ot.has(a))c=t.jsx(ce,{children:t.jsx(Bt,{url:i,ext:a})});else if(Tt.has(a)&&n<=_t){let r;e[10]!==i?(r=t.jsx(ce,{children:t.jsx(Kt,{url:i})}),e[10]=i,e[11]=r):r=e[11],c=r}else{let r;e[12]!==s?(r=t.jsx("div",{className:"flex h-full w-full items-center justify-center",children:t.jsx(E,{filename:s,className:"h-14 w-11 opacity-60"})}),e[12]=s,e[13]=r):r=e[13],c=r}o=t.jsx("div",{className:"aspect-[400/265] w-full overflow-hidden rounded-lg border border-border/60 bg-muted/30",children:c}),e[0]=i,e[1]=s,e[2]=n,e[3]=o}else o=e[3];return o}function Xt(l){const e=C.c(24),s=l.onOpen;let n;e[0]!==l.filename?(n=t.jsx(E,{filename:l.filename,className:"h-8 w-6.5 shrink-0"}),e[0]=l.filename,e[1]=n):n=e[1];const i=l.filename;let o;e[2]!==l.updatedAt?(o=te(l.updatedAt),e[2]=l.updatedAt,e[3]=o):o=e[3];let a;e[4]!==l.filename?(a=_e(l.filename),e[4]=l.filename,e[5]=a):a=e[5];let c;e[6]!==l.downloadUrl||e[7]!==l.filename||e[8]!==l.onDelete?(c=t.jsx(Be,{downloadUrl:l.downloadUrl,filename:l.filename,onDelete:l.onDelete}),e[6]=l.downloadUrl,e[7]=l.filename,e[8]=l.onDelete,e[9]=c):c=e[9];let r;e[10]!==l.filename||e[11]!==n||e[12]!==o||e[13]!==a||e[14]!==c?(r=t.jsx(le,{icon:n,name:i,meta:o,subtitle:a,actions:c}),e[10]=l.filename,e[11]=n,e[12]=o,e[13]=a,e[14]=c,e[15]=r):r=e[15];let d;e[16]!==l.downloadUrl||e[17]!==l.filename||e[18]!==l.size?(d=t.jsx(Qt,{filename:l.filename,size:l.size,downloadUrl:l.downloadUrl}),e[16]=l.downloadUrl,e[17]=l.filename,e[18]=l.size,e[19]=d):d=e[19];let u;return e[20]!==l.onOpen||e[21]!==r||e[22]!==d?(u=t.jsxs(se,{onOpen:s,children:[r,d]}),e[20]=l.onOpen,e[21]=r,e[22]=d,e[23]=u):u=e[23],u}function ie(l){const e=l?l.split("/").filter(Boolean):[],s=e[0]==="public",n=s?e[1]??null:null,i=s?n?`public-${n}`:null:e[0]??null,o=(s?e.slice(2):e.slice(1)).join("/");return{segments:e,volume:i,dirPath:o,isPublic:s,publicSet:n,readOnly:s}}function J(l,e){return l.isPublic&&l.publicSet?`public/${l.publicSet}/${e}`:l.volume?`${l.volume}/${e}`:e}function T(l){const e=l.lastIndexOf("/");return e===-1?l:l.slice(e+1)}function Wt(l){const e=C.c(48),{previewPath:s,onClose:n}=l;let i;e[0]!==s?(i=ie(s),e[0]=s,e[1]=i):i=e[1];const o=i,{volume:a,dirPath:c}=o,{data:r,isPending:d}=qe(a,c),u=Ie(a??"");let f,m,x,y,g,p,h,v,w,k,j,N;e[2]!==u||e[3]!==r||e[4]!==c||e[5]!==n||e[6]!==s?(y=T(c),x=r&&r.kind==="file"?{key:s,filename:y,size:r.size,downloadUrl:u(r.path)}:null,m=fe,j=!0,e[19]!==n?(N=O=>{O||n()},e[19]=n,e[20]=N):N=e[20],f=ue,k="flex h-[88vh] w-[94vw] max-w-none! flex-col gap-0 overflow-hidden p-0 sm:max-w-5xl!",w="flex h-11 shrink-0 items-center gap-1 border-b border-border/60 py-1 pr-12 pl-2",g="flex min-w-0 flex-1 items-center gap-2 px-2",p=t.jsx(E,{filename:y,className:"h-4.5 w-3.5 shrink-0"}),e[21]!==y?(h=t.jsx(me,{className:"truncate text-xs font-medium text-foreground",children:y}),e[21]=y,e[22]=h):h=e[22],v=x&&t.jsx("span",{className:"shrink-0 text-xs text-muted-foreground",children:Ue(x.size)}),e[2]=u,e[3]=r,e[4]=c,e[5]=n,e[6]=s,e[7]=f,e[8]=m,e[9]=x,e[10]=y,e[11]=g,e[12]=p,e[13]=h,e[14]=v,e[15]=w,e[16]=k,e[17]=j,e[18]=N):(f=e[7],m=e[8],x=e[9],y=e[10],g=e[11],p=e[12],h=e[13],v=e[14],w=e[15],k=e[16],j=e[17],N=e[18]);let $;e[23]!==g||e[24]!==p||e[25]!==h||e[26]!==v?($=t.jsxs("div",{className:g,children:[p,h,v]}),e[23]=g,e[24]=p,e[25]=h,e[26]=v,e[27]=$):$=e[27];let S;e[28]!==x?(S=x&&t.jsxs(t.Fragment,{children:[t.jsxs(Q,{children:[t.jsx(X,{asChild:!0,children:t.jsx(U,{variant:"ghost",size:"icon",asChild:!0,children:t.jsx("a",{href:x.downloadUrl,download:x.filename,children:t.jsx(de,{size:14})})})}),t.jsx(W,{side:"bottom",children:"Download"})]}),t.jsxs(Q,{children:[t.jsx(X,{asChild:!0,children:t.jsx(U,{variant:"ghost",size:"icon",onClick:()=>window.open(x.downloadUrl,"_blank","noopener"),children:t.jsx(Me,{size:14})})}),t.jsx(W,{side:"bottom",children:"Open in new tab"})]})]}),e[28]=x,e[29]=S):S=e[29];let F;e[30]!==$||e[31]!==S||e[32]!==w?(F=t.jsxs("div",{className:w,children:[$,S]}),e[30]=$,e[31]=S,e[32]=w,e[33]=F):F=e[33];let z;e[34]!==x||e[35]!==y||e[36]!==d?(z=t.jsx("div",{className:"relative min-h-0 flex-1 bg-background",children:x?t.jsx(he,{file:x}):d?t.jsx(Ee,{}):t.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-2",children:[t.jsx(E,{filename:y,className:"h-7.5 w-6"}),t.jsx("span",{className:"text-sm text-muted-foreground",children:"This file is no longer available."})]})}),e[34]=x,e[35]=y,e[36]=d,e[37]=z):z=e[37];let D;e[38]!==f||e[39]!==F||e[40]!==z||e[41]!==k?(D=t.jsxs(f,{className:k,children:[F,z]}),e[38]=f,e[39]=F,e[40]=z,e[41]=k,e[42]=D):D=e[42];let b;return e[43]!==m||e[44]!==D||e[45]!==j||e[46]!==N?(b=t.jsx(m,{open:j,onOpenChange:N,children:D}),e[43]=m,e[44]=D,e[45]=j,e[46]=N,e[47]=b):b=e[47],b}function Yt(l){const e=C.c(42),{previewPath:s,onClose:n}=l;let i;e[0]!==s?(i=ie(s),e[0]=s,e[1]=i):i=e[1];const o=i,{volume:a,dirPath:c}=o,{data:r,isPending:d}=qe(a,c),u=Ie(a??"");let f,m,x,y,g,p,h,v;e[2]!==u||e[3]!==r||e[4]!==c||e[5]!==s?(m=T(c),f=r&&r.kind==="file"?{key:s,filename:m,size:r.size,downloadUrl:u(r.path)}:null,v="flex h-full w-full flex-col bg-background",h="flex h-9 shrink-0 items-center gap-1 border-b border-border/60 px-2",x="flex min-w-0 flex-1 items-center gap-2 px-2",y=t.jsx(E,{filename:m,className:"h-4.5 w-3.5 shrink-0"}),e[14]!==m?(g=t.jsx("span",{className:"truncate text-xs font-medium text-foreground",children:m}),e[14]=m,e[15]=g):g=e[15],p=f&&t.jsx("span",{className:"shrink-0 text-xs text-muted-foreground",children:Ue(f.size)}),e[2]=u,e[3]=r,e[4]=c,e[5]=s,e[6]=f,e[7]=m,e[8]=x,e[9]=y,e[10]=g,e[11]=p,e[12]=h,e[13]=v):(f=e[6],m=e[7],x=e[8],y=e[9],g=e[10],p=e[11],h=e[12],v=e[13]);let w;e[16]!==x||e[17]!==y||e[18]!==g||e[19]!==p?(w=t.jsxs("div",{className:x,children:[y,g,p]}),e[16]=x,e[17]=y,e[18]=g,e[19]=p,e[20]=w):w=e[20];let k;e[21]!==f?(k=f&&t.jsxs(t.Fragment,{children:[t.jsxs(Q,{children:[t.jsx(X,{asChild:!0,children:t.jsx(U,{variant:"ghost",size:"icon",asChild:!0,children:t.jsx("a",{href:f.downloadUrl,download:f.filename,children:t.jsx(de,{size:14})})})}),t.jsx(W,{side:"bottom",children:"Download"})]}),t.jsxs(Q,{children:[t.jsx(X,{asChild:!0,children:t.jsx(U,{variant:"ghost",size:"icon",onClick:()=>window.open(f.downloadUrl,"_blank","noopener"),children:t.jsx(Me,{size:14})})}),t.jsx(W,{side:"bottom",children:"Open in new tab"})]})]}),e[21]=f,e[22]=k):k=e[22];let j;e[23]===Symbol.for("react.memo_cache_sentinel")?(j=t.jsx(bt,{size:14}),e[23]=j):j=e[23];let N;e[24]!==n?(N=t.jsx(X,{asChild:!0,children:t.jsx(U,{variant:"ghost",size:"icon",onClick:n,children:j})}),e[24]=n,e[25]=N):N=e[25];let $;e[26]===Symbol.for("react.memo_cache_sentinel")?($=t.jsx(W,{side:"bottom",children:"Close"}),e[26]=$):$=e[26];let S;e[27]!==N?(S=t.jsxs(Q,{children:[N,$]}),e[27]=N,e[28]=S):S=e[28];let F;e[29]!==S||e[30]!==h||e[31]!==w||e[32]!==k?(F=t.jsxs("div",{className:h,children:[w,k,S]}),e[29]=S,e[30]=h,e[31]=w,e[32]=k,e[33]=F):F=e[33];let z;e[34]!==f||e[35]!==m||e[36]!==d?(z=t.jsx("div",{className:"relative min-h-0 flex-1",children:f?t.jsx(he,{file:f}):d?t.jsx(Ee,{}):t.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-2",children:[t.jsx(E,{filename:m,className:"h-7.5 w-6"}),t.jsx("span",{className:"text-sm text-muted-foreground",children:"This file is no longer available."})]})}),e[34]=f,e[35]=m,e[36]=d,e[37]=z):z=e[37];let D;return e[38]!==F||e[39]!==z||e[40]!==v?(D=t.jsxs("div",{className:v,children:[F,z]}),e[38]=F,e[39]=z,e[40]=v,e[41]=D):D=e[41],D}function Zt(l){const e=C.c(21),{skillPath:s,onClose:n}=l,i=ie(s),{volume:o,dirPath:a}=i,c=be(),r=c(o??"",`${a}/SKILL.md`),d=_.fileText(r);let u;e[0]!==r?(u=async()=>{const P=await fetch(r,{credentials:"include"});if(!P.ok)throw new Error(`fetch failed: ${P.status}`);return P.text()},e[0]=r,e[1]=u):u=e[1];let f;e[2]!==d||e[3]!==u?(f={queryKey:d,queryFn:u,staleTime:6e4,retry:!1},e[2]=d,e[3]=u,e[4]=f):f=e[4];const m=M(f),x=Re(o??"",a);let y;e[5]!==a?(y=T(a),e[5]=a,e[6]=y):y=e[6];const g=y;let p;e[7]!==m.data?(p=m.data?Ke(m.data):null,e[7]=m.data,e[8]=p):p=e[8];const h=p,v=es;let w;e[9]===Symbol.for("react.memo_cache_sentinel")?(w=(P,G)=>v(P.path)?-1:v(G.path)?1:T(P.path).localeCompare(T(G.path)),e[9]=w):w=e[9];const k=(x.data??[]).filter(Jt).sort(w),[j,N]=R.useState(null),$=j===null?null:k.find(P=>P.path===j)??null;let S;e[10]!==n?(S=P=>{P||n()},e[10]=n,e[11]=S):S=e[11];let F;e[12]===Symbol.for("react.memo_cache_sentinel")?(F=t.jsx("div",{className:"flex size-9 shrink-0 items-center justify-center rounded-full bg-primary/10 text-primary",children:t.jsx(Ae,{size:18})}),e[12]=F):F=e[12];const z=h?.name??g;let D;e[13]!==z?(D=t.jsx(me,{className:"flex-1 truncate text-base font-medium text-foreground",children:z}),e[13]=z,e[14]=D):D=e[14];let b;e[15]===Symbol.for("react.memo_cache_sentinel")?(b=t.jsx(dt,{asChild:!0,children:t.jsx(U,{variant:"ghost",size:"icon",className:"size-8 shrink-0",children:t.jsx(wt,{size:16})})}),e[15]=b):b=e[15];let O;e[16]!==D?(O=t.jsxs("div",{className:"flex shrink-0 items-center gap-3 border-b border-border px-4 py-3",children:[F,D,b]}),e[16]=D,e[17]=O):O=e[17];let B;e[18]===Symbol.for("react.memo_cache_sentinel")?(B=t.jsx("p",{className:"px-2 py-1.5 text-sm font-medium text-foreground",children:"Files"}),e[18]=B):B=e[18];const Ge="relative flex min-w-0 flex-1 flex-col overflow-y-auto",re=$?t.jsx(he,{file:{key:$.path,filename:T($.path),size:$.size,downloadUrl:c(o??"",$.path)}}):m.isPending?t.jsxs("div",{className:"flex flex-col gap-2 p-6",children:[t.jsx(V,{className:"h-4 w-1/3"}),t.jsx(V,{className:"h-3 w-full"}),t.jsx(V,{className:"h-3 w-5/6"}),t.jsx(V,{className:"h-3 w-2/3"})]}):m.isError||!h?t.jsx("div",{className:"flex h-full items-center justify-center text-sm text-muted-foreground",children:"This skill is no longer available."}):t.jsxs(t.Fragment,{children:[t.jsxs("div",{className:"flex flex-col gap-4 border-b border-border p-6",children:[t.jsx("p",{className:"text-sm font-medium text-foreground",children:"Description"}),t.jsx("p",{className:"text-base text-muted-foreground",children:h.description??"Claude Code skill"})]}),t.jsx("div",{className:"prose prose-sm dark:prose-invert max-w-none p-6",children:t.jsx(xt,{id:`skill-preview-${s}`,text:h.body})})]});let Z;return e[19]!==re?(Z=t.jsx("div",{className:Ge,children:re}),e[19]=re,e[20]=Z):Z=e[20],t.jsx(fe,{open:!0,onOpenChange:S,children:t.jsxs(ue,{className:"flex h-[88vh] w-[94vw] max-w-none! flex-col gap-0 overflow-hidden p-0 sm:max-w-5xl!",closeButtonClassName:"hidden",children:[O,t.jsxs("div",{className:"flex min-h-0 flex-1",children:[t.jsxs("div",{className:"flex w-[220px] shrink-0 flex-col gap-1 overflow-y-auto border-r border-border bg-muted p-3",children:[B,x.isPending?t.jsx(V,{className:"mx-2 h-4 w-24"}):k.map(P=>{const G=v(P.path)?$===null:j===P.path;return t.jsxs("button",{type:"button",onClick:()=>N(v(P.path)?null:P.path),className:ee("flex items-center gap-2.5 rounded-lg px-2 py-1.5 text-left",G?"bg-background shadow-sm":"hover:bg-muted/60"),children:[t.jsx(E,{filename:T(P.path),className:"h-6 w-5 shrink-0"}),t.jsx("span",{className:ee("truncate text-sm",G?"text-foreground":"text-muted-foreground"),children:T(P.path)})]},P.path)})]}),Z]})]})})}function Jt(l){return l.kind==="file"}function es(l){return T(l)==="SKILL.md"}const Ve=[{id:"home",description:"Your organization's home folder",glyph:Je},{id:"uploads",description:"Files your team uploads",glyph:Pe},{id:"outputs",description:"Agent run outputs",glyph:tt}],Ce=3;function I(l){const e=C.c(2),{children:s}=l;let n;return e[0]!==s?(n=t.jsx("p",{className:"text-[13px] text-foreground",children:s}),e[0]=s,e[1]=n):n=e[1],n}function L(l){const e=C.c(2),{children:s}=l;let n;return e[0]!==s?(n=t.jsx("div",{className:"grid grid-cols-1 gap-3 sm:grid-cols-2 lg:grid-cols-3",children:s}),e[0]=s,e[1]=n):n=e[1],n}function we(l){const e=C.c(2),{rows:s}=l,n=s===void 0?1:s;let i;return e[0]!==n?(i=t.jsx(L,{children:Array.from({length:n*3},ts)}),e[0]=n,e[1]=i):i=e[1],i}function ts(l,e){return t.jsx(V,{className:"h-16 rounded-2xl"},e)}function ve(l){const e=C.c(2),{children:s}=l;let n;return e[0]!==s?(n=t.jsx("p",{className:"text-sm text-muted-foreground",children:s}),e[0]=s,e[1]=n):n=e[1],n}function ss(l){const e=C.c(6),{volume:s,displayName:n,description:i,glyph:o,onOpen:a}=l,c=Ct(s),r=n??s,d=c.data?`${c.data.files} files`:void 0;let u;return e[0]!==i||e[1]!==o||e[2]!==a||e[3]!==r||e[4]!==d?(u=t.jsx(ne,{name:r,meta:d,subtitle:i,glyph:o,onOpen:a}),e[0]=i,e[1]=o,e[2]=a,e[3]=r,e[4]=d,e[5]=u):u=e[5],u}function ls(l){const e=C.c(8),{segments:s,onNavigate:n}=l;let i;e[0]!==n?(i=t.jsx("button",{type:"button",className:"text-muted-foreground hover:text-foreground hover:underline",onClick:()=>n(""),children:"Library"}),e[0]=n,e[1]=i):i=e[1];let o;e[2]!==n||e[3]!==s?(o=s.map((c,r)=>{const d=s.slice(0,r+1).join("/"),u=r===s.length-1;return t.jsxs("span",{className:"flex min-w-0 items-center gap-1",children:[t.jsx(We,{size:12,className:"shrink-0 text-muted-foreground"}),u?t.jsx("span",{className:"truncate font-medium text-foreground",children:c}):t.jsx("button",{type:"button",className:"truncate text-muted-foreground hover:text-foreground hover:underline",onClick:()=>n(d),children:c})]},d)}),e[2]=n,e[3]=s,e[4]=o):o=e[4];let a;return e[5]!==i||e[6]!==o?(a=t.jsxs("div",{className:"flex min-w-0 flex-wrap items-center gap-1 text-sm",children:[i,o]}),e[5]=i,e[6]=o,e[7]=a):a=e[7],a}function ns(l){const e=C.c(19),{onOpenDir:s,onOpenFile:n,onDelete:i}=l,{org:o}=A(),a=St(),c=Le(),r=be();let d;if(e[0]!==r||e[1]!==i||e[2]!==s||e[3]!==n||e[4]!==o||e[5]!==c.data?.length||e[6]!==a.data||e[7]!==a.isPending){const u=a.data??[],f=u.slice(0,Ce),m=u.slice(Ce);let x;e[9]===Symbol.for("react.memo_cache_sentinel")?(x=t.jsx(I,{children:"Folders"}),e[9]=x):x=e[9];let y;e[10]!==s||e[11]!==o?(y=Ve.map(h=>t.jsx(ss,{volume:h.id,displayName:h.id==="home"?kt(o.slug):void 0,description:h.description,glyph:h.glyph,onOpen:()=>s(h.id)},h.id)),e[10]=s,e[11]=o,e[12]=y):y=e[12];let g;e[13]!==s||e[14]!==c.data?.length?(g=(c.data?.length??0)>0&&t.jsx(ne,{name:"public",meta:`${c.data?.length} sets`,subtitle:"Curated skill sets — read-only",glyph:Ye,readOnly:!0,onOpen:()=>s("public")}),e[13]=s,e[14]=c.data?.length,e[15]=g):g=e[15];let p;e[16]!==y||e[17]!==g?(p=t.jsxs("div",{className:"flex flex-col gap-3",children:[x,t.jsxs(L,{children:[y,g]})]}),e[16]=y,e[17]=g,e[18]=p):p=e[18],d=t.jsxs(t.Fragment,{children:[a.isPending?t.jsxs("div",{className:"flex flex-col gap-3",children:[t.jsx(I,{children:"Recently added"}),t.jsx(we,{})]}):f.length>0?t.jsxs("div",{className:"flex flex-col gap-3",children:[t.jsx(I,{children:"Recently added"}),t.jsx(L,{children:f.map(h=>t.jsx(Xt,{filename:T(h.path),updatedAt:h.updatedAt,size:h.size,downloadUrl:r(h.volume,h.path),onOpen:()=>n(`${h.volume}/${h.path}`),onDelete:()=>i({volume:h.volume,path:h.path,kind:"file"})},`${h.volume}/${h.path}`))})]}):t.jsx(ve,{children:"No files yet — upload one, or ask an agent to produce something."}),p,m.length>0&&t.jsxs("div",{className:"flex flex-col gap-3",children:[t.jsx(I,{children:"All files"}),t.jsx(L,{children:m.map(h=>t.jsx(He,{filename:T(h.path),updatedAt:h.updatedAt,downloadUrl:r(h.volume,h.path),onOpen:()=>n(`${h.volume}/${h.path}`),onDelete:()=>i({volume:h.volume,path:h.path,kind:"file"})},`${h.volume}/${h.path}`))})]})]}),e[0]=r,e[1]=i,e[2]=s,e[3]=n,e[4]=o,e[5]=c.data?.length,e[6]=a.data,e[7]=a.isPending,e[8]=d}else d=e[8];return d}function is(l){const e=C.c(11),{onOpenDir:s}=l,n=Le();if(n.isPending){let r;return e[0]===Symbol.for("react.memo_cache_sentinel")?(r=t.jsx(we,{}),e[0]=r):r=e[0],r}let i;e[1]!==n.data?(i=n.data??[],e[1]=n.data,e[2]=i):i=e[2];const o=i;if(o.length===0){let r;return e[3]===Symbol.for("react.memo_cache_sentinel")?(r=t.jsx(ve,{children:"No public skill sets are configured."}),e[3]=r):r=e[3],r}let a;if(e[4]!==s||e[5]!==o){let r;e[7]!==s?(r=d=>t.jsx(ne,{name:d,subtitle:"Read-only",readOnly:!0,onOpen:()=>s(`public/${d}`)},d),e[7]=s,e[8]=r):r=e[8],a=o.map(r),e[4]=s,e[5]=o,e[6]=a}else a=e[6];let c;return e[9]!==a?(c=t.jsx(L,{children:a}),e[9]=a,e[10]=c):c=e[10],c}function rs(l){const e=C.c(25),{location:s,onOpenDir:n,onOpenFile:i,onOpenSkill:o,onDelete:a}=l,c=s.volume??"",r=Re(c,s.dirPath),d=be();if(r.isPending){let g;return e[0]===Symbol.for("react.memo_cache_sentinel")?(g=t.jsx(we,{rows:2}),e[0]=g):g=e[0],g}if(r.isError){const g=r.error instanceof Error?r.error.message:"Failed to load";let p;return e[1]!==g?(p=t.jsx("p",{className:"text-sm text-destructive",children:g}),e[1]=g,e[2]=p):p=e[2],p}let u,f,m,x;if(e[3]!==d||e[4]!==r.data||e[5]!==s||e[6]!==a||e[7]!==n||e[8]!==i||e[9]!==o||e[10]!==c){x=Symbol.for("react.early_return_sentinel");e:{const g=r.data??[],p=g.filter(cs),h=g.filter(as),v=g.filter(os);if(g.length===0){const j=s.readOnly?"Empty — this read-only set syncs from its GitHub source.":"Empty folder — upload a file or create a folder to get started.";let N;e[15]!==j?(N=t.jsx(ve,{children:j}),e[15]=j,e[16]=N):N=e[16],x=N;break e}let w;e[17]!==s.readOnly||e[18]!==a||e[19]!==c?(w=j=>s.readOnly?void 0:()=>a({volume:c,path:j.path,kind:j.kind}),e[17]=s.readOnly,e[18]=a,e[19]=c,e[20]=w):w=e[20];const k=w;u=p.length>0&&t.jsxs("div",{className:"flex flex-col gap-3",children:[t.jsx(I,{children:"Skills"}),t.jsx(L,{children:p.map(j=>t.jsx(qt,{dirName:T(j.path),updatedAt:j.updatedAt,skillMdUrl:d(c,`${j.path}/SKILL.md`),onOpen:()=>o(J(s,j.path)),onBrowse:()=>n(J(s,j.path)),onDelete:k(j)},j.path))})]}),f=h.length>0&&t.jsxs("div",{className:"flex flex-col gap-3",children:[t.jsx(I,{children:"Folders"}),t.jsx(L,{children:h.map(j=>t.jsx(ne,{name:T(j.path),meta:te(j.updatedAt),readOnly:s.readOnly,onOpen:()=>n(J(s,j.path)),onDelete:k(j)},j.path))})]}),m=v.length>0&&t.jsxs("div",{className:"flex flex-col gap-3",children:[t.jsx(I,{children:"Files"}),t.jsx(L,{children:v.map(j=>t.jsx(He,{filename:T(j.path),updatedAt:j.updatedAt,downloadUrl:d(c,j.path),onOpen:()=>i(J(s,j.path)),onDelete:k(j)},j.path))})]})}e[3]=d,e[4]=r.data,e[5]=s,e[6]=a,e[7]=n,e[8]=i,e[9]=o,e[10]=c,e[11]=u,e[12]=f,e[13]=m,e[14]=x}else u=e[11],f=e[12],m=e[13],x=e[14];if(x!==Symbol.for("react.early_return_sentinel"))return x;let y;return e[21]!==u||e[22]!==f||e[23]!==m?(y=t.jsxs(t.Fragment,{children:[u,f,m]}),e[21]=u,e[22]=f,e[23]=m,e[24]=y):y=e[24],y}function os(l){return l.kind==="file"}function as(l){return l.kind==="dir"&&!l.hasSkill}function cs(l){return l.kind==="dir"&&l.hasSkill}function Se(){const{org:l}=A(),e=Fe(),s=De(),n=Te(),i=ze({strict:!1}),o=i.path??"",a=ie(o),c=a.segments.length===0,r=(b,O)=>s({to:".",search:B=>({...B,[b]:O||void 0})}),d=b=>r("path",b),u=b=>r("preview",b),f=b=>r("skill",b),[m,x]=R.useState(null),[y,g]=R.useState(!1),[p,h]=R.useState(""),v=R.useRef(null),w=a.readOnly?null:a.volume??"uploads",k=a.volume?a.dirPath:"",{upload:j,mkdir:N}=ke(w??"uploads"),{remove:$}=ke(m?.volume??"uploads");async function S(b){if(!(!w||!b||b.length===0))try{await j.mutateAsync({dir:k,files:[...b]}),H.success(b.length===1?`Uploaded ${b[0]?.name}`:`Uploaded ${b.length} files`)}catch(O){H.error(O instanceof Error?O.message:"Upload failed")}finally{v.current&&(v.current.value="")}}async function F(){const b=p.trim();if(!(!w||!b))try{await N.mutateAsync(k?`${k}/${b}`:b),H.success(`Folder "${b}" created`),g(!1),h("")}catch(O){H.error(O instanceof Error?O.message:"Failed to create folder")}}async function z(){if(!m)return;const b=m;try{await $.mutateAsync(b.path),H.success(`Deleted ${T(b.path)}`)}catch(O){H.error(O instanceof Error?O.message:"Delete failed")}finally{x(null)}}function D(){for(const b of Ve)e.invalidateQueries({queryKey:_.orgFsVolume(l.id,b.id)});a.volume&&e.invalidateQueries({queryKey:_.orgFsVolume(l.id,a.volume)}),e.invalidateQueries({queryKey:_.orgFsRecent(l.id)}),e.invalidateQueries({queryKey:_.orgFsPublicSets(l.id)})}return t.jsxs("div",{className:"h-full overflow-y-auto",children:[t.jsxs("div",{className:"mx-auto flex w-full max-w-[900px] flex-col gap-10 px-6 py-10 lg:px-10",children:[t.jsxs("div",{className:"flex flex-col gap-2",children:[!c&&t.jsx(ls,{segments:a.segments,onNavigate:d}),t.jsxs("div",{className:"flex items-center gap-2",children:[t.jsx("h1",{className:"min-w-0 flex-1 truncate text-xl font-medium text-foreground",children:c?"Library":a.segments.at(-1)??"Library"}),t.jsx(U,{variant:"ghost",size:"icon",onClick:D,"aria-label":"Refresh",children:t.jsx(Xe,{size:14})}),!c&&w&&t.jsxs(U,{variant:"outline",size:"sm",onClick:()=>g(!0),children:[t.jsx(et,{size:14}),"New folder"]}),a.readOnly?t.jsxs("span",{className:"flex items-center gap-1.5 text-xs text-muted-foreground",children:[t.jsx(Oe,{size:12}),"Read-only"]}):t.jsxs(U,{size:"sm",disabled:j.isPending,onClick:()=>v.current?.click(),children:[t.jsx(Pe,{size:14}),j.isPending?"Uploading…":"Upload file"]}),t.jsx("input",{ref:v,type:"file",multiple:!0,className:"hidden",onChange:b=>{S(b.target.files)}})]})]}),c?t.jsx(ns,{onOpenDir:d,onOpenFile:u,onDelete:x}):a.volume===null?t.jsx(is,{onOpenDir:d}):t.jsx(rs,{location:a,onOpenDir:d,onOpenFile:u,onOpenSkill:f,onDelete:x},a.volume)]}),i.preview?n&&t.jsx(Wt,{previewPath:i.preview,onClose:()=>r("preview",null)}):i.skill?t.jsx(Zt,{skillPath:i.skill,onClose:()=>r("skill",null)},i.skill):null,t.jsx(fe,{open:y,onOpenChange:g,children:t.jsxs(ue,{children:[t.jsxs(ft,{children:[t.jsx(me,{children:"New folder"}),t.jsxs(ut,{children:["Create a folder in ",o||"the library","."]})]}),t.jsx(ht,{autoFocus:!0,placeholder:"folder-name",value:p,onChange:b=>h(b.target.value),onKeyDown:b=>{b.key==="Enter"&&F()}}),t.jsxs(mt,{children:[t.jsx(U,{variant:"outline",onClick:()=>g(!1),children:"Cancel"}),t.jsx(U,{disabled:!p.trim()||N.isPending,onClick:()=>{F()},children:"Create"})]})]})}),t.jsx(st,{open:m!==null,onOpenChange:b=>{b||x(null)},children:t.jsxs(lt,{children:[t.jsxs(nt,{children:[t.jsxs(it,{children:["Delete ",m?T(m.path):"","?"]}),t.jsx(rt,{children:m?.kind==="dir"?"The folder and everything inside it will be deleted for the whole organization. Sandboxes see this change within seconds.":"The file will be deleted for the whole organization. Sandboxes see this change within seconds."})]}),t.jsxs(ot,{children:[t.jsx(at,{children:"Cancel"}),t.jsx(ct,{onClick:()=>{z()},children:"Delete"})]})]})})]})}function Ms(){const l=C.c(13),e=Te(),s=De();let n;l[0]===Symbol.for("react.memo_cache_sentinel")?(n={strict:!1},l[0]=n):n=l[0];const o=ze(n).preview;let a;l[1]!==o?(a=o?T(o):"",l[1]=o,l[2]=a):a=l[2];const c=a;let r;l[3]!==s?(r=()=>s({to:".",search:ds}),l[3]=s,l[4]=r):r=l[4];const d=r;if(e){let x;return l[5]===Symbol.for("react.memo_cache_sentinel")?(x=t.jsx("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden bg-background",children:t.jsx(ae,{children:t.jsx(Se,{})})}),l[5]=x):x=l[5],x}let u;l[6]===Symbol.for("react.memo_cache_sentinel")?(u=t.jsx(Ne,{order:1,minSize:30,defaultSize:55,children:t.jsx("div",{className:"h-full p-0.5 pt-0.25",children:t.jsx("div",{className:"card-shadow flex h-full flex-col overflow-hidden rounded-[0.75rem] bg-background",children:t.jsx(ae,{children:t.jsx(Se,{})})})})}),l[6]=u):u=l[6];let f;l[7]!==d||l[8]!==c||l[9]!==o?(f=o&&t.jsxs(t.Fragment,{children:[t.jsx(pt.Tabs,{children:t.jsx(gt,{title:c,icon:{kind:"component",Component:x=>t.jsx(E,{filename:c,...x})},active:!0,onClick:d})}),t.jsx(jt,{className:"bg-sidebar"}),t.jsx(Ne,{order:2,minSize:25,defaultSize:45,children:t.jsx("div",{className:"h-full p-0.5 pt-0.25",children:t.jsx("div",{className:"card-shadow flex h-full flex-col overflow-hidden rounded-[0.75rem] bg-background",children:t.jsx(ae,{children:t.jsx(Yt,{previewPath:o,onClose:d})})})})})]}),l[7]=d,l[8]=c,l[9]=o,l[10]=f):f=l[10];let m;return l[11]!==f?(m=t.jsxs(yt,{direction:"horizontal",className:"min-h-0 flex-1 pt-0 pr-1 pb-1 pl-0",children:[u,f]}),l[11]=f,l[12]=m):m=l[12],m}function ds(l){return{...l,preview:void 0}}export{Ms as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as c,g as p,j as s,l as u,N as a}from"./index-
|
|
1
|
+
import{e as c,g as p,j as s,l as u,N as a}from"./index-Dj0KvohQ.js";import{a as x}from"./use-capability-C_bdrk_p.js";import{C as j}from"./capability-load-error-So5ymzsn.js";function v(){const t=c.c(21);let o;t[0]===Symbol.for("react.memo_cache_sentinel")?(o={from:"/shell/$org"},t[0]=o):o=t[0];const{org:r}=p(o),{capabilities:l,isPrivileged:m,loading:f,error:g}=x();if(f){let e;return t[1]===Symbol.for("react.memo_cache_sentinel")?(e=s.jsx("div",{className:"flex flex-1 items-center justify-center p-8",children:s.jsx(u,{size:20,className:"animate-spin text-muted-foreground"})}),t[1]=e):e=t[1],e}if(g){let e;return t[2]===Symbol.for("react.memo_cache_sentinel")?(e=s.jsx(j,{}),t[2]=e):e=t[2],e}const i=e=>m||l[e]===!0;if(i("org:manage")){let e;return t[3]!==r?(e=s.jsx(a,{to:"/$org/settings/general",params:{org:r},replace:!0}),t[3]=r,t[4]=e):e=t[4],e}if(i("ai-providers:manage")){let e;return t[5]!==r?(e=s.jsx(a,{to:"/$org/settings/ai-providers",params:{org:r},replace:!0}),t[5]=r,t[6]=e):e=t[6],e}if(i("secrets:manage")){let e;return t[7]!==r?(e=s.jsx(a,{to:"/$org/settings/secrets",params:{org:r},replace:!0}),t[7]=r,t[8]=e):e=t[8],e}if(i("file-configs:manage")){let e;return t[9]!==r?(e=s.jsx(a,{to:"/$org/settings/buckets",params:{org:r},replace:!0}),t[9]=r,t[10]=e):e=t[10],e}if(i("automations:manage")){let e;return t[11]!==r?(e=s.jsx(a,{to:"/$org/settings/automations",params:{org:r},replace:!0}),t[11]=r,t[12]=e):e=t[12],e}if(i("registry:manage")){let e;return t[13]!==r?(e=s.jsx(a,{to:"/$org/settings/store",params:{org:r},replace:!0}),t[13]=r,t[14]=e):e=t[14],e}if(i("monitoring:view")){let e;return t[15]!==r?(e=s.jsx(a,{to:"/$org/settings/monitor",params:{org:r},replace:!0}),t[15]=r,t[16]=e):e=t[16],e}if(i("members:manage")){let e;return t[17]!==r?(e=s.jsx(a,{to:"/$org/settings/members",params:{org:r},replace:!0}),t[17]=r,t[18]=e):e=t[18],e}let n;return t[19]!==r?(n=s.jsx(a,{to:"/$org/settings/profile",params:{org:r},replace:!0}),t[19]=r,t[20]=n):n=t[20],n}export{v as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as f,c as d,r as p,j as r}from"./index-
|
|
1
|
+
import{e as f,c as d,r as p,j as r}from"./index-Dj0KvohQ.js";import{m as w}from"./sidebar-B3SUDWcE.js";const v=p.createContext(void 0),H=v.Provider;function N(c,e){const l=p.Children.toArray(c);for(const i of l)if(p.isValidElement(i)&&i.type===e)return i;return null}function P(c){const e=f.c(5),{children:l,className:i}=c;let s;e[0]!==i?(s=d("flex flex-col h-full w-full bg-background overflow-hidden",i),e[0]=i,e[1]=s):s=e[1];let t;return e[2]!==l||e[3]!==s?(t=r.jsx("div",{className:s,children:l}),e[2]=l,e[3]=s,e[4]=t):t=e[4],t}function C(c){const e=f.c(17),{children:l,className:i,hideSidebarTrigger:s}=c;let t;e[0]!==l?(t=N(l,j),e[0]=l,e[1]=t):t=e[1];const n=t;let a;e[2]!==l?(a=N(l,b),e[2]=l,e[3]=a):a=e[3];const o=a;let m;e[4]!==i?(m=d("shrink-0 w-full border-b border-border/50 h-11","flex items-center justify-between gap-3 pr-2 pl-2 md:pl-4",i),e[4]=i,e[5]=m):m=e[5];let x;e[6]!==s?(x=!s&&r.jsx(w,{className:"md:hidden shrink-0"}),e[6]=s,e[7]=x):x=e[7];let u;e[8]!==n||e[9]!==x?(u=r.jsxs("div",{className:"flex items-center gap-1 min-w-0 flex-1",children:[x,n]}),e[8]=n,e[9]=x,e[10]=u):u=e[10];let h;e[11]!==o?(h=r.jsx("div",{className:"flex items-center",children:o}),e[11]=o,e[12]=h):h=e[12];let g;return e[13]!==m||e[14]!==u||e[15]!==h?(g=r.jsxs("div",{className:m,children:[u,h]}),e[13]=m,e[14]=u,e[15]=h,e[16]=g):g=e[16],g}function j(c){const e=f.c(5),{children:l,className:i}=c;let s;e[0]!==i?(s=d("flex items-center gap-2 min-w-0 overflow-hidden",i),e[0]=i,e[1]=s):s=e[1];let t;return e[2]!==l||e[3]!==s?(t=r.jsx("div",{className:s,children:l}),e[2]=l,e[3]=s,e[4]=t):t=e[4],t}function b(c){const e=f.c(5),{children:l,className:i}=c;let s;e[0]!==i?(s=d("flex items-center gap-2 shrink-0 overflow-hidden",i),e[0]=i,e[1]=s):s=e[1];let t;return e[2]!==l||e[3]!==s?(t=r.jsx("div",{className:s,children:l}),e[2]=l,e[3]=s,e[4]=t):t=e[4],t}function $(c){const e=f.c(6),{children:l,className:i}=c,s=p.useContext(v);let t;e[0]!==i||e[1]!==s?(t=d("flex-1 overflow-auto",s,i),e[0]=i,e[1]=s,e[2]=t):t=e[2];let n;return e[3]!==l||e[4]!==t?(n=r.jsx("div",{className:t,children:l}),e[3]=l,e[4]=t,e[5]=n):n=e[5],n}function y(c){const e=f.c(10),{children:l,actions:i,className:s}=c;let t;e[0]!==s?(t=d("flex flex-wrap items-center justify-between gap-3",s),e[0]=s,e[1]=t):t=e[1];let n;e[2]!==l?(n=r.jsx("div",{className:"text-xl font-medium min-w-0",children:l}),e[2]=l,e[3]=n):n=e[3];let a;e[4]!==i?(a=i&&r.jsx("div",{className:"flex items-center gap-2",children:i}),e[4]=i,e[5]=a):a=e[5];let o;return e[6]!==t||e[7]!==n||e[8]!==a?(o=r.jsxs("div",{className:t,children:[n,a]}),e[6]=t,e[7]=n,e[8]=a,e[9]=o):o=e[9],o}function R(c){const e=f.c(6),{children:l,className:i,maxWidth:s}=c,t=s===void 0?"max-w-[1200px]":s;let n;e[0]!==i||e[1]!==t?(n=d("mx-auto w-full px-4 pt-8 pb-6 md:px-10 md:pt-12 md:pb-10",t,i),e[0]=i,e[1]=t,e[2]=n):n=e[2];let a;return e[3]!==l||e[4]!==n?(a=r.jsx("div",{className:n,children:l}),e[3]=l,e[4]=n,e[5]=a):a=e[5],a}const T=Object.assign(P,{Header:Object.assign(C,{Left:j,Right:b}),Content:$,Title:y,Body:R});export{T as P,H as a};
|
package/dist/client/assets/{infiniteQueryObserver-BHyRmyuw.js → infiniteQueryObserver-By84F0-S.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{au as g,dt as d,du as v}from"./index-
|
|
1
|
+
import{au as g,dt as d,du as v}from"./index-Dj0KvohQ.js";var b=class extends g{constructor(e,t){super(e,t)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){e._type="infinite",super.setOptions(e)}getOptimisticResult(e){return e._type="infinite",super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"forward"}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:"backward"}}})}createResult(e,t){const{state:s}=e,i=super.createResult(e,t),{isFetching:a,isRefetching:f,isError:c,isRefetchError:P}=i,r=s.fetchMeta?.fetchMore?.direction,h=c&&r==="forward",o=a&&r==="forward",n=c&&r==="backward",u=a&&r==="backward";return{...i,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:v(t,s.data),hasPreviousPage:d(t,s.data),isFetchNextPageError:h,isFetchingNextPage:o,isFetchPreviousPageError:n,isFetchingPreviousPage:u,isRefetchError:P&&!h&&!n,isRefetching:f&&!o&&!u}}};export{b as I};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as s,c as a,j as d}from"./index-
|
|
1
|
+
import{e as s,c as a,j as d}from"./index-Dj0KvohQ.js";function f(l){const e=s.c(10);let i,t,r;e[0]!==l?({className:i,type:r,...t}=l,e[0]=l,e[1]=i,e[2]=t,e[3]=r):(i=e[1],t=e[2],r=e[3]);let n;e[4]!==i?(n=a("file:text-foreground text-foreground placeholder:text-muted-foreground selection:bg-primary selection:text-primary-foreground flex h-9 w-full min-w-0 rounded-lg bg-background dark:bg-input/30 px-3 py-1 text-sm transition-[color,box-shadow] outline-none file:inline-flex file:h-7 file:border-0 file:bg-transparent file:text-sm file:font-medium disabled:pointer-events-none disabled:opacity-50 card-shadow","focus-visible:border-ring focus-visible:ring-ring/20 focus-visible:ring-[2px]","aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive",i),e[4]=i,e[5]=n):n=e[5];let o;return e[6]!==t||e[7]!==n||e[8]!==r?(o=d.jsx("input",{type:r,"data-slot":"input",className:n,...t}),e[6]=t,e[7]=n,e[8]=r,e[9]=o):o=e[9],o}export{f as I};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as A,j as h,r as z,c as _}from"./index-
|
|
1
|
+
import{e as A,j as h,r as z,c as _}from"./index-Dj0KvohQ.js";import{n as L}from"./Container-DZK-zSnO.js";import{A as k}from"./agent-icon-DQY5C0N2.js";const C={"2xs":"h-4 w-4",xs:"h-6 w-6",sm:"h-9 w-9",md:"h-12 w-12",lg:"h-16 w-16",xl:"h-14 w-14"},Z={"2xs":"min-w-4",xs:"min-w-6",sm:"min-w-9",md:"min-w-12",lg:"min-w-16",xl:"min-w-14"},y={"2xs":8,xs:12,sm:16,md:24,lg:32,xl:28},M={"2xs":"xs",xs:"xs",sm:"sm",md:"md",lg:"lg",xl:"lg"};function q(E){const e=A.c(12),{icon:t,name:s,size:w,className:o,fallbackIcon:c}=E,n=w===void 0?"md":w;if(t?.startsWith("icon://")||t?.includes("#agentcolor=")){const r=M[n];let l;return e[0]!==o||e[1]!==t||e[2]!==s||e[3]!==r?(l=h.jsx(k,{icon:t,name:s,size:r,className:o}),e[0]=o,e[1]=t,e[2]=s,e[3]=r,e[4]=l):l=e[4],l}const g=t??"no-icon";let i;return e[5]!==o||e[6]!==c||e[7]!==t||e[8]!==s||e[9]!==n||e[10]!==g?(i=h.jsx(R,{icon:t,name:s,size:n,className:o,fallbackIcon:c},g),e[5]=o,e[6]=c,e[7]=t,e[8]=s,e[9]=n,e[10]=g,e[11]=i):i=e[11],i}function R(E){const e=A.c(24),{icon:t,name:s,size:w,className:o,fallbackIcon:c}=E,n=w===void 0?"md":w,[g,i]=z.useState(!1),r=!!t&&g,l=C[n],b=Z[n];let a;e[0]!==o||e[1]!==l||e[2]!==b?(a=_("rounded-lg border border-border shrink-0 overflow-hidden aspect-square bg-white",l,b,o),e[0]=o,e[1]=l,e[2]=b,e[3]=a):a=e[3];const p=t||void 0,N=!r&&"hidden";let m;e[4]!==N?(m=_("h-full w-full object-cover",N),e[4]=N,e[5]=m):m=e[5];let I,S;e[6]===Symbol.for("react.memo_cache_sentinel")?(I=()=>i(!1),S=()=>i(!0),e[6]=I,e[7]=S):(I=e[6],S=e[7]);let d;e[8]!==s||e[9]!==p||e[10]!==m?(d=h.jsx("img",{src:p,alt:s,className:m,onError:I,onLoad:S}),e[8]=s,e[9]=p,e[10]=m,e[11]=d):d=e[11];const v=r&&"hidden";let f;e[12]!==v?(f=_("h-full w-full flex items-center justify-center bg-muted/20",v),e[12]=v,e[13]=f):f=e[13];let x;e[14]!==c||e[15]!==n?(x=c??h.jsx(L,{size:y[n],className:"text-muted-foreground"}),e[14]=c,e[15]=n,e[16]=x):x=e[16];let u;e[17]!==f||e[18]!==x?(u=h.jsx("div",{className:f,children:x}),e[17]=f,e[18]=x,e[19]=u):u=e[19];let j;return e[20]!==d||e[21]!==u||e[22]!==a?(j=h.jsxs("div",{className:a,children:[d,u]}),e[20]=d,e[21]=u,e[22]=a,e[23]=j):j=e[23],j}export{q as I};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as n,c as r,j as i,bp as p}from"./index-
|
|
1
|
+
import{e as n,c as r,j as i,bp as p}from"./index-Dj0KvohQ.js";function c(l){const e=n.c(8);let t,s;e[0]!==l?({className:t,...s}=l,e[0]=l,e[1]=t,e[2]=s):(t=e[1],s=e[2]);let a;e[3]!==t?(a=r("flex items-center gap-2 text-sm leading-none font-medium select-none group-data-[disabled=true]:pointer-events-none group-data-[disabled=true]:opacity-50 peer-disabled:cursor-not-allowed peer-disabled:opacity-50",t),e[3]=t,e[4]=a):a=e[4];let o;return e[5]!==s||e[6]!==a?(o=i.jsx(p,{"data-slot":"label",className:a,...s}),e[5]=s,e[6]=a,e[7]=o):o=e[7],o}export{c as L};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{e as C,r as i,c as A,j as a,aS as V}from"./index-
|
|
1
|
+
import{e as C,r as i,c as A,j as a,aS as V}from"./index-Dj0KvohQ.js";import{P as E}from"./index-zuFZRdMw.js";const H=i.createContext(null);function z(x){const e=C.c(3),{children:l}=x,s=i.useContext(H);if(!s?.tabsEl)return null;let c;return e[0]!==l||e[1]!==s.tabsEl?(c=V.createPortal(l,s.tabsEl),e[0]=l,e[1]=s.tabsEl,e[2]=c):c=e[2],c}function D(x){const e=C.c(3),{children:l}=x,s=i.useContext(H);if(!s?.actionsEl)return null;let c;return e[0]!==l||e[1]!==s.actionsEl?(c=V.createPortal(l,s.actionsEl),e[0]=l,e[1]=s.actionsEl,e[2]=c):c=e[2],c}const B=D;function F(x){const e=C.c(21),{children:l,breadcrumb:s,hideHeader:c}=x;let b;e[0]===Symbol.for("react.memo_cache_sentinel")?(b={leftEl:null,tabsEl:null,actionsEl:null},e[0]=b):b=e[0];const[w,g]=i.useState(b),N=i.useRef(null),P=i.useRef(null),L=i.useRef(null);let h;e[1]===Symbol.for("react.memo_cache_sentinel")?(h=t=>{N.current=t,t&&g(n=>n.leftEl===t?n:{...n,leftEl:t})},e[1]=h):h=e[1];const $=h;let R;e[2]===Symbol.for("react.memo_cache_sentinel")?(R=t=>{P.current=t,t&&g(n=>n.tabsEl===t?n:{...n,tabsEl:t})},e[2]=R):R=e[2];const _=R;let d;e[3]===Symbol.for("react.memo_cache_sentinel")?(d=t=>{L.current=t,t&&g(n=>n.actionsEl===t?n:{...n,actionsEl:t})},e[3]=d):d=e[3];const k=d,p=c&&"hidden";let o;e[4]!==p?(o=A(p),e[4]=p,e[5]=o):o=e[5];let j;e[6]===Symbol.for("react.memo_cache_sentinel")?(j=a.jsx("div",{ref:$,className:"flex items-center gap-2 min-w-0"}),e[6]=j):j=e[6];let r;e[7]!==s?(r=a.jsxs(E.Header.Left,{children:[s,j]}),e[7]=s,e[8]=r):r=e[8];let S;e[9]===Symbol.for("react.memo_cache_sentinel")?(S=a.jsxs(E.Header.Right,{children:[a.jsx("div",{ref:_,className:"flex items-center gap-2 overflow-x-auto min-w-0"}),a.jsx("div",{ref:k,className:"flex items-center gap-2 shrink-0"})]}),e[9]=S):S=e[9];let f;e[10]!==o||e[11]!==r?(f=a.jsxs(E.Header,{className:o,children:[r,S]}),e[10]=o,e[11]=r,e[12]=f):f=e[12];let m;e[13]!==l?(m=a.jsx(E.Content,{children:l}),e[13]=l,e[14]=m):m=e[14];let u;e[15]!==f||e[16]!==m?(u=a.jsxs(E,{children:[f,m]}),e[15]=f,e[16]=m,e[17]=u):u=e[17];let y;return e[18]!==w||e[19]!==u?(y=a.jsx(H,{value:w,children:u}),e[18]=w,e[19]=u,e[20]=y):y=e[20],y}export{F as V,B as a,z as b};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{u as X,r as m,a as z,t as P,b,j as e,c as B,B as Q,d as ie,S as W,N as oe,e as le}from"./index-0jxZXjT_.js";import{I}from"./input-BJ1rHrAh.js";import{A as de}from"./auth-split-layout-DzSTdIYV.js";function ce({redirectUrl:s,callbackUrl:n="/"}){const{emailAndPassword:d,resetPassword:u,emailOtp:i,socialProviders:l}=X(),[r,j]=m.useState(""),[y,D]=m.useState(""),[w,C]=m.useState(""),[A,O]=m.useState(""),[f,L]=m.useState(!1),[F,N]=m.useState(()=>i.enabled?"emailOtp":globalThis.localStorage?.getItem("hasLoggedIn")!=="true"?"signUp":"signIn"),[c,S]=m.useState(""),[$,Y]=m.useState(!1),h=F==="signUp",p=F==="forgotPassword",x=F==="emailOtp",R=z({mutationFn:async({email:t,password:a,name:q})=>{try{if(h){const g=await b.signUp.email({email:t,password:a,name:q||""});if(g.error)throw new Error(g.error.message||"Sign up failed");return g}else{const g=await b.signIn.email({email:t,password:a});if(g.error)throw new Error(g.error.message||"Sign in failed");return g}}catch(g){throw g instanceof Error?g:new Error("Authentication failed")}},onSuccess:()=>{globalThis.localStorage?.setItem("hasLoggedIn","true"),window.location.href=s??n},onError:t=>{P(h?"user_signup_failed":"user_signin_failed",{error:t instanceof Error?t.message:String(t)})}}),U=z({mutationFn:async({email:t})=>{const a=await b.requestPasswordReset({email:t,redirectTo:"/reset-password"});if(a.error)throw new Error(a.error.message||"Failed to send reset email");return a},onSuccess:()=>{P("password_reset_requested"),Y(!0)},onError:t=>{P("password_reset_request_failed",{error:t instanceof Error?t.message:String(t)})}}),E=z({mutationFn:async({email:t})=>{const a=await b.emailOtp.sendVerificationOtp({email:t,type:"sign-in"});if(a.error)throw new Error(a.error.message||"Failed to send code");return a},onSuccess:()=>{P("email_otp_sent"),L(!0)},onError:t=>{P("email_otp_send_failed",{error:t instanceof Error?t.message:String(t)})}}),_=z({mutationFn:async({email:t,otp:a})=>{const q=await b.signIn.emailOtp({email:t,otp:a});if(q.error)throw new Error(q.error.message||"Invalid code");return q},onSuccess:()=>{globalThis.localStorage?.setItem("hasLoggedIn","true"),window.location.href=s??n},onError:t=>{P("email_otp_verify_failed",{error:t instanceof Error?t.message:String(t)})}}),T=t=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t),V=()=>{r.trim()&&!T(r)&&S("Invalid email address")},Z=t=>{if(t.preventDefault(),!T(r)){S("Invalid email address");return}R.mutate({email:r,password:y,name:w})},ee=t=>{if(t.preventDefault(),!T(r)){S("Invalid email address");return}U.mutate({email:r})},te=t=>{if(t.preventDefault(),!T(r)){S("Invalid email address");return}E.mutate({email:r})},se=t=>{t.preventDefault(),_.mutate({email:r,otp:A})},k=t=>a=>{t(a.target.value),G&&R.reset(),H&&U.reset(),J&&(E.reset(),_.reset()),t===j&&c&&S("")},M=t=>{N(t),C(""),O(""),L(!1),S(""),Y(!1),R.reset(),U.reset(),E.reset(),_.reset()},o=R.isPending||U.isPending||E.isPending||_.isPending,G=R.error,H=U.error,J=E.error||_.error,v=h?r.trim()&&y.trim()&&w.trim():p?r.trim():x?f?A.trim():r.trim():r.trim()&&y.trim(),ne=t=>{if(!t)return null;const a=t.message.toLowerCase();return a.includes("unauthorized")||a.includes("401")?"Invalid email or password. Please try again.":a.includes("already exists")||a.includes("409")?"An account with this email already exists. Try signing in instead.":a.includes("network")||a.includes("fetch")?"Network error. Please check your connection and try again.":a.includes("rate limit")||a.includes("429")?"Too many attempts. Please wait a moment and try again.":a.includes("invalid")&&a.includes("otp")?"Invalid or expired code. Please try again.":t.message||"An error occurred. Please try again."},K=G||H||J,re=p?"Reset your password":x&&f?"Enter verification code":"Welcome to deco",ae=p?"We'll send you a reset link":x&&f?`Code sent to ${r}`:"Sign in or create a new account";return e.jsxs("div",{className:"w-full grid gap-10",children:[e.jsxs("div",{children:[e.jsx("img",{src:"/logos/deco logo.svg",alt:"Deco",className:"h-12 w-12 dark:hidden"}),e.jsx("img",{src:"/logos/deco logo negative.svg",alt:"Deco",className:"h-12 w-12 hidden dark:block"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("h1",{className:"text-2xl font-medium leading-8",children:re}),e.jsx("p",{className:"text-base text-muted-foreground leading-6",children:ae})]}),K&&e.jsx("div",{className:"rounded-xl bg-destructive/10 p-3 text-sm text-destructive text-center",children:ne(K)}),$&&e.jsx("div",{className:"rounded-xl bg-emerald-500/10 p-3 text-sm text-emerald-600 dark:text-emerald-400 text-center",children:"Check your email for a password reset link."}),!p&&!(x&&f)&&l.enabled&&e.jsx("div",{className:"grid gap-2",children:l.providers.map(t=>e.jsxs("button",{type:"button",disabled:o,onClick:()=>{b.signIn.social({provider:t.name,callbackURL:s??n})},className:"flex h-12 w-full items-center justify-center gap-3 rounded-xl bg-background dark:bg-input/30 px-3 text-sm font-medium text-foreground card-shadow transition-colors hover:bg-accent hover:text-accent-foreground dark:hover:bg-input/50 disabled:opacity-50 disabled:pointer-events-none",children:[t.icon&&e.jsx("img",{src:t.icon,alt:"",className:B("h-5 w-5",t.name==="github"&&"dark:invert"),"aria-hidden":"true"}),"Continue with"," ",t.name.charAt(0).toUpperCase()+t.name.slice(1)]},t.name))}),!p&&!(x&&f)&&l.enabled&&(d.enabled||i.enabled)&&e.jsxs("div",{className:"flex items-center gap-2.5 -my-4",children:[e.jsx("div",{className:"h-px flex-1 bg-border"}),e.jsx("span",{className:"text-base text-muted-foreground",children:"or"}),e.jsx("div",{className:"h-px flex-1 bg-border"})]}),x&&i.enabled&&e.jsx(e.Fragment,{children:f?e.jsxs("form",{onSubmit:se,className:"grid gap-2",children:[e.jsxs("div",{className:"grid gap-2",children:[e.jsx("label",{className:"text-sm font-medium text-foreground",children:"Verification code"}),e.jsx(I,{type:"text",placeholder:"Enter code",value:A,onChange:k(O),required:!0,disabled:o,autoFocus:!0,inputMode:"numeric",autoComplete:"one-time-code",className:"h-11 rounded-lg"})]}),e.jsx("button",{type:"submit",disabled:o||!v,className:"flex h-12 w-full items-center justify-center rounded-lg bg-primary px-4 text-sm font-medium text-primary-foreground transition-colors hover:bg-primary/80 disabled:opacity-50 disabled:pointer-events-none",children:o?"Verifying...":"Verify"}),e.jsx("button",{type:"button",onClick:()=>{L(!1),O(""),E.reset(),_.reset()},disabled:o,className:"mt-1 text-sm text-muted-foreground hover:text-foreground transition-colors",children:"Use a different email"})]}):e.jsxs("form",{onSubmit:te,className:"grid gap-2",children:[e.jsxs("div",{className:"grid gap-2",children:[e.jsx("label",{className:"text-sm font-medium text-foreground",children:"Email"}),e.jsx(I,{type:"email",placeholder:"Email address",value:r,onChange:k(j),onBlur:V,required:!0,disabled:o,"aria-invalid":!!c,className:"h-11 rounded-lg"}),c&&e.jsx("p",{className:"text-xs text-destructive",children:c})]}),e.jsx("button",{type:"submit",disabled:o||!v,className:"flex h-12 w-full items-center justify-center rounded-lg bg-primary px-4 text-sm font-medium text-primary-foreground transition-colors hover:bg-primary/80 disabled:opacity-50 disabled:pointer-events-none",children:o?"Sending...":"Send code"})]})}),p&&d.enabled&&!$&&e.jsxs("form",{onSubmit:ee,className:"grid gap-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-foreground mb-2",children:"Email"}),e.jsx(I,{type:"email",placeholder:"you@example.com",value:r,onChange:k(j),onBlur:V,required:!0,disabled:o,"aria-invalid":!!c,className:"h-11 rounded-lg"}),c&&e.jsx("p",{className:"text-xs text-destructive mt-1.5",children:c})]}),e.jsx(Q,{type:"submit",disabled:o||!v,className:"w-full font-semibold",size:"xl",children:o?"Sending...":"Send reset link"})]}),!p&&!x&&d.enabled&&e.jsxs("form",{onSubmit:Z,className:"grid gap-5",children:[h&&e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-foreground mb-2",children:"Name"}),e.jsx(I,{type:"text",placeholder:"Your name",value:w,onChange:k(C),required:!0,disabled:o,className:"h-11 rounded-lg"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-foreground mb-2",children:"Email"}),e.jsx(I,{type:"email",placeholder:"you@example.com",value:r,onChange:k(j),onBlur:V,required:!0,disabled:o,"aria-invalid":!!c,className:"h-11 rounded-lg"}),c&&e.jsx("p",{className:"text-xs text-destructive mt-1.5",children:c})]}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between mb-2",children:[e.jsx("label",{className:"block text-sm font-medium text-foreground",children:"Password"}),!h&&u.enabled&&e.jsx("button",{type:"button",onClick:()=>M("forgotPassword"),className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:"Forgot password?"})]}),e.jsx(I,{type:"password",placeholder:"••••••••",value:y,onChange:k(D),required:!0,disabled:o,className:"h-11 rounded-lg"})]}),e.jsx("div",{className:B("overflow-hidden transition-all duration-300 ease-[cubic-bezier(0.075,0.82,0.165,1)]",v?"max-h-[100px] opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-2"),children:e.jsx("div",{className:B("p-1",!v&&"pointer-events-none"),children:e.jsx(Q,{type:"submit",disabled:o||!v,className:B("w-full font-semibold"),size:"xl","aria-hidden":!v,children:o?h?"Creating account...":"Signing in...":"Continue"})})})]}),e.jsx("div",{className:"text-sm text-muted-foreground",children:p?e.jsx("button",{type:"button",onClick:()=>M("signIn"),disabled:o,className:"font-medium text-[#8CAA25] hover:underline disabled:opacity-50",children:"Back to sign in"}):x&&d.enabled?e.jsx("button",{type:"button",onClick:()=>M("signIn"),disabled:o,className:"font-medium text-[#8CAA25] hover:underline disabled:opacity-50",children:"Sign in with password instead"}):!x&&d.enabled?e.jsxs(e.Fragment,{children:[h?"Already have an account? ":"Don't have an account? ",e.jsx("button",{type:"button",onClick:()=>M(h?"signIn":"signUp"),disabled:o,className:"font-medium text-[#8CAA25] hover:underline disabled:opacity-50",children:h?"Sign in":"Sign up"}),i.enabled&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"mx-2",children:"·"}),e.jsx("button",{type:"button",onClick:()=>M("emailOtp"),disabled:o,className:"font-medium text-[#8CAA25] hover:underline disabled:opacity-50",children:"Sign in with email code"})]})]}):null})]})}function ue({redirectTo:s}){const[n,d]=m.useState(null);return m.useEffect(()=>{let u=!1;return(async()=>{try{let i;for(let l=0;l<5&&(i=await fetch("/api/auth/custom/local-session",{method:"POST",credentials:"include"}),!(i.ok||i.status<500));l++)await new Promise(r=>setTimeout(r,Math.min(1e3*2**l,1e4)));if(!i?.ok){const l=await i?.json().catch(()=>({}));throw new Error(l?.error||"Auto-login failed")}if(!u){const l=s.startsWith("/")&&!s.startsWith("//")?s:"/";window.location.href=l}}catch(i){u||d(i instanceof Error?i.message:"Auto-login failed")}})(),()=>{u=!0}},[s]),n?e.jsx("div",{className:"flex min-h-screen items-center justify-center",children:e.jsxs("div",{className:"text-center",children:[e.jsxs("p",{className:"text-destructive mb-2",children:["Auto-login failed: ",n]}),e.jsx("p",{className:"text-muted-foreground text-sm",children:"Try restarting the server."})]})}):e.jsx(W,{})}function me(s){if(!s.client_id||s.response_type!=="code")return null;const n=new URLSearchParams;return s.client_id&&n.set("client_id",s.client_id),s.redirect_uri&&n.set("redirect_uri",s.redirect_uri),s.response_type&&n.set("response_type",s.response_type),s.state&&n.set("state",s.state),s.scope&&n.set("scope",s.scope),s.code_challenge&&n.set("code_challenge",s.code_challenge),s.code_challenge_method&&n.set("code_challenge_method",s.code_challenge_method),`/api/auth/mcp/authorize?${n.toString()}`}function ge(s){const n=le.c(5),{callbackURL:d,providerId:u}=s;let i,l;n[0]!==d||n[1]!==u?(i=()=>{(async()=>await b.signIn.sso({providerId:u,callbackURL:d}))()},l=[u,d],n[0]=d,n[1]=u,n[2]=i,n[3]=l):(i=n[2],l=n[3]),m.useEffect(i,l);let r;return n[4]===Symbol.for("react.memo_cache_sentinel")?(r=e.jsx(W,{}),n[4]=r):r=n[4],r}function pe(){const s=b.useSession(),n=ie({from:"/login"}),{next:d="/",client_id:u,redirect_uri:i,response_type:l,state:r,scope:j,code_challenge:y,code_challenge_method:D}=n,w=d.startsWith("/")&&!d.startsWith("//")?d:"/",{sso:C,emailAndPassword:A,magicLink:O,emailOtp:f,socialProviders:L,localMode:F}=X(),N=me({client_id:u,redirect_uri:i,response_type:l,state:r,scope:j,code_challenge:y,code_challenge_method:D}),c=N||w;return s.data?N?(window.location.href=N,e.jsx(W,{})):e.jsx(oe,{to:w}):F?e.jsx(ue,{redirectTo:c}):C.enabled?e.jsx(ge,{callbackURL:c,providerId:C.providerId}):A.enabled||O.enabled||f.enabled||L.enabled?e.jsx(de,{children:e.jsx(ce,{redirectUrl:N,callbackUrl:w})}):e.jsx("div",{children:"No login options available"})}export{pe as default};
|
|
1
|
+
import{u as X,r as m,a as z,t as P,b,j as e,c as B,B as Q,d as ie,S as W,N as oe,e as le}from"./index-Dj0KvohQ.js";import{I}from"./input-D7b0qTbD.js";import{A as de}from"./auth-split-layout-BCUlxOAp.js";function ce({redirectUrl:s,callbackUrl:n="/"}){const{emailAndPassword:d,resetPassword:u,emailOtp:i,socialProviders:l}=X(),[r,j]=m.useState(""),[y,D]=m.useState(""),[w,C]=m.useState(""),[A,O]=m.useState(""),[f,L]=m.useState(!1),[F,N]=m.useState(()=>i.enabled?"emailOtp":globalThis.localStorage?.getItem("hasLoggedIn")!=="true"?"signUp":"signIn"),[c,S]=m.useState(""),[$,Y]=m.useState(!1),h=F==="signUp",p=F==="forgotPassword",x=F==="emailOtp",R=z({mutationFn:async({email:t,password:a,name:q})=>{try{if(h){const g=await b.signUp.email({email:t,password:a,name:q||""});if(g.error)throw new Error(g.error.message||"Sign up failed");return g}else{const g=await b.signIn.email({email:t,password:a});if(g.error)throw new Error(g.error.message||"Sign in failed");return g}}catch(g){throw g instanceof Error?g:new Error("Authentication failed")}},onSuccess:()=>{globalThis.localStorage?.setItem("hasLoggedIn","true"),window.location.href=s??n},onError:t=>{P(h?"user_signup_failed":"user_signin_failed",{error:t instanceof Error?t.message:String(t)})}}),U=z({mutationFn:async({email:t})=>{const a=await b.requestPasswordReset({email:t,redirectTo:"/reset-password"});if(a.error)throw new Error(a.error.message||"Failed to send reset email");return a},onSuccess:()=>{P("password_reset_requested"),Y(!0)},onError:t=>{P("password_reset_request_failed",{error:t instanceof Error?t.message:String(t)})}}),E=z({mutationFn:async({email:t})=>{const a=await b.emailOtp.sendVerificationOtp({email:t,type:"sign-in"});if(a.error)throw new Error(a.error.message||"Failed to send code");return a},onSuccess:()=>{P("email_otp_sent"),L(!0)},onError:t=>{P("email_otp_send_failed",{error:t instanceof Error?t.message:String(t)})}}),_=z({mutationFn:async({email:t,otp:a})=>{const q=await b.signIn.emailOtp({email:t,otp:a});if(q.error)throw new Error(q.error.message||"Invalid code");return q},onSuccess:()=>{globalThis.localStorage?.setItem("hasLoggedIn","true"),window.location.href=s??n},onError:t=>{P("email_otp_verify_failed",{error:t instanceof Error?t.message:String(t)})}}),T=t=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(t),V=()=>{r.trim()&&!T(r)&&S("Invalid email address")},Z=t=>{if(t.preventDefault(),!T(r)){S("Invalid email address");return}R.mutate({email:r,password:y,name:w})},ee=t=>{if(t.preventDefault(),!T(r)){S("Invalid email address");return}U.mutate({email:r})},te=t=>{if(t.preventDefault(),!T(r)){S("Invalid email address");return}E.mutate({email:r})},se=t=>{t.preventDefault(),_.mutate({email:r,otp:A})},k=t=>a=>{t(a.target.value),G&&R.reset(),H&&U.reset(),J&&(E.reset(),_.reset()),t===j&&c&&S("")},M=t=>{N(t),C(""),O(""),L(!1),S(""),Y(!1),R.reset(),U.reset(),E.reset(),_.reset()},o=R.isPending||U.isPending||E.isPending||_.isPending,G=R.error,H=U.error,J=E.error||_.error,v=h?r.trim()&&y.trim()&&w.trim():p?r.trim():x?f?A.trim():r.trim():r.trim()&&y.trim(),ne=t=>{if(!t)return null;const a=t.message.toLowerCase();return a.includes("unauthorized")||a.includes("401")?"Invalid email or password. Please try again.":a.includes("already exists")||a.includes("409")?"An account with this email already exists. Try signing in instead.":a.includes("network")||a.includes("fetch")?"Network error. Please check your connection and try again.":a.includes("rate limit")||a.includes("429")?"Too many attempts. Please wait a moment and try again.":a.includes("invalid")&&a.includes("otp")?"Invalid or expired code. Please try again.":t.message||"An error occurred. Please try again."},K=G||H||J,re=p?"Reset your password":x&&f?"Enter verification code":"Welcome to deco",ae=p?"We'll send you a reset link":x&&f?`Code sent to ${r}`:"Sign in or create a new account";return e.jsxs("div",{className:"w-full grid gap-10",children:[e.jsxs("div",{children:[e.jsx("img",{src:"/logos/deco logo.svg",alt:"Deco",className:"h-12 w-12 dark:hidden"}),e.jsx("img",{src:"/logos/deco logo negative.svg",alt:"Deco",className:"h-12 w-12 hidden dark:block"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("h1",{className:"text-2xl font-medium leading-8",children:re}),e.jsx("p",{className:"text-base text-muted-foreground leading-6",children:ae})]}),K&&e.jsx("div",{className:"rounded-xl bg-destructive/10 p-3 text-sm text-destructive text-center",children:ne(K)}),$&&e.jsx("div",{className:"rounded-xl bg-emerald-500/10 p-3 text-sm text-emerald-600 dark:text-emerald-400 text-center",children:"Check your email for a password reset link."}),!p&&!(x&&f)&&l.enabled&&e.jsx("div",{className:"grid gap-2",children:l.providers.map(t=>e.jsxs("button",{type:"button",disabled:o,onClick:()=>{b.signIn.social({provider:t.name,callbackURL:s??n})},className:"flex h-12 w-full items-center justify-center gap-3 rounded-xl bg-background dark:bg-input/30 px-3 text-sm font-medium text-foreground card-shadow transition-colors hover:bg-accent hover:text-accent-foreground dark:hover:bg-input/50 disabled:opacity-50 disabled:pointer-events-none",children:[t.icon&&e.jsx("img",{src:t.icon,alt:"",className:B("h-5 w-5",t.name==="github"&&"dark:invert"),"aria-hidden":"true"}),"Continue with"," ",t.name.charAt(0).toUpperCase()+t.name.slice(1)]},t.name))}),!p&&!(x&&f)&&l.enabled&&(d.enabled||i.enabled)&&e.jsxs("div",{className:"flex items-center gap-2.5 -my-4",children:[e.jsx("div",{className:"h-px flex-1 bg-border"}),e.jsx("span",{className:"text-base text-muted-foreground",children:"or"}),e.jsx("div",{className:"h-px flex-1 bg-border"})]}),x&&i.enabled&&e.jsx(e.Fragment,{children:f?e.jsxs("form",{onSubmit:se,className:"grid gap-2",children:[e.jsxs("div",{className:"grid gap-2",children:[e.jsx("label",{className:"text-sm font-medium text-foreground",children:"Verification code"}),e.jsx(I,{type:"text",placeholder:"Enter code",value:A,onChange:k(O),required:!0,disabled:o,autoFocus:!0,inputMode:"numeric",autoComplete:"one-time-code",className:"h-11 rounded-lg"})]}),e.jsx("button",{type:"submit",disabled:o||!v,className:"flex h-12 w-full items-center justify-center rounded-lg bg-primary px-4 text-sm font-medium text-primary-foreground transition-colors hover:bg-primary/80 disabled:opacity-50 disabled:pointer-events-none",children:o?"Verifying...":"Verify"}),e.jsx("button",{type:"button",onClick:()=>{L(!1),O(""),E.reset(),_.reset()},disabled:o,className:"mt-1 text-sm text-muted-foreground hover:text-foreground transition-colors",children:"Use a different email"})]}):e.jsxs("form",{onSubmit:te,className:"grid gap-2",children:[e.jsxs("div",{className:"grid gap-2",children:[e.jsx("label",{className:"text-sm font-medium text-foreground",children:"Email"}),e.jsx(I,{type:"email",placeholder:"Email address",value:r,onChange:k(j),onBlur:V,required:!0,disabled:o,"aria-invalid":!!c,className:"h-11 rounded-lg"}),c&&e.jsx("p",{className:"text-xs text-destructive",children:c})]}),e.jsx("button",{type:"submit",disabled:o||!v,className:"flex h-12 w-full items-center justify-center rounded-lg bg-primary px-4 text-sm font-medium text-primary-foreground transition-colors hover:bg-primary/80 disabled:opacity-50 disabled:pointer-events-none",children:o?"Sending...":"Send code"})]})}),p&&d.enabled&&!$&&e.jsxs("form",{onSubmit:ee,className:"grid gap-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-foreground mb-2",children:"Email"}),e.jsx(I,{type:"email",placeholder:"you@example.com",value:r,onChange:k(j),onBlur:V,required:!0,disabled:o,"aria-invalid":!!c,className:"h-11 rounded-lg"}),c&&e.jsx("p",{className:"text-xs text-destructive mt-1.5",children:c})]}),e.jsx(Q,{type:"submit",disabled:o||!v,className:"w-full font-semibold",size:"xl",children:o?"Sending...":"Send reset link"})]}),!p&&!x&&d.enabled&&e.jsxs("form",{onSubmit:Z,className:"grid gap-5",children:[h&&e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-foreground mb-2",children:"Name"}),e.jsx(I,{type:"text",placeholder:"Your name",value:w,onChange:k(C),required:!0,disabled:o,className:"h-11 rounded-lg"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-foreground mb-2",children:"Email"}),e.jsx(I,{type:"email",placeholder:"you@example.com",value:r,onChange:k(j),onBlur:V,required:!0,disabled:o,"aria-invalid":!!c,className:"h-11 rounded-lg"}),c&&e.jsx("p",{className:"text-xs text-destructive mt-1.5",children:c})]}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center justify-between mb-2",children:[e.jsx("label",{className:"block text-sm font-medium text-foreground",children:"Password"}),!h&&u.enabled&&e.jsx("button",{type:"button",onClick:()=>M("forgotPassword"),className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:"Forgot password?"})]}),e.jsx(I,{type:"password",placeholder:"••••••••",value:y,onChange:k(D),required:!0,disabled:o,className:"h-11 rounded-lg"})]}),e.jsx("div",{className:B("overflow-hidden transition-all duration-300 ease-[cubic-bezier(0.075,0.82,0.165,1)]",v?"max-h-[100px] opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-2"),children:e.jsx("div",{className:B("p-1",!v&&"pointer-events-none"),children:e.jsx(Q,{type:"submit",disabled:o||!v,className:B("w-full font-semibold"),size:"xl","aria-hidden":!v,children:o?h?"Creating account...":"Signing in...":"Continue"})})})]}),e.jsx("div",{className:"text-sm text-muted-foreground",children:p?e.jsx("button",{type:"button",onClick:()=>M("signIn"),disabled:o,className:"font-medium text-[#8CAA25] hover:underline disabled:opacity-50",children:"Back to sign in"}):x&&d.enabled?e.jsx("button",{type:"button",onClick:()=>M("signIn"),disabled:o,className:"font-medium text-[#8CAA25] hover:underline disabled:opacity-50",children:"Sign in with password instead"}):!x&&d.enabled?e.jsxs(e.Fragment,{children:[h?"Already have an account? ":"Don't have an account? ",e.jsx("button",{type:"button",onClick:()=>M(h?"signIn":"signUp"),disabled:o,className:"font-medium text-[#8CAA25] hover:underline disabled:opacity-50",children:h?"Sign in":"Sign up"}),i.enabled&&e.jsxs(e.Fragment,{children:[e.jsx("span",{className:"mx-2",children:"·"}),e.jsx("button",{type:"button",onClick:()=>M("emailOtp"),disabled:o,className:"font-medium text-[#8CAA25] hover:underline disabled:opacity-50",children:"Sign in with email code"})]})]}):null})]})}function ue({redirectTo:s}){const[n,d]=m.useState(null);return m.useEffect(()=>{let u=!1;return(async()=>{try{let i;for(let l=0;l<5&&(i=await fetch("/api/auth/custom/local-session",{method:"POST",credentials:"include"}),!(i.ok||i.status<500));l++)await new Promise(r=>setTimeout(r,Math.min(1e3*2**l,1e4)));if(!i?.ok){const l=await i?.json().catch(()=>({}));throw new Error(l?.error||"Auto-login failed")}if(!u){const l=s.startsWith("/")&&!s.startsWith("//")?s:"/";window.location.href=l}}catch(i){u||d(i instanceof Error?i.message:"Auto-login failed")}})(),()=>{u=!0}},[s]),n?e.jsx("div",{className:"flex min-h-screen items-center justify-center",children:e.jsxs("div",{className:"text-center",children:[e.jsxs("p",{className:"text-destructive mb-2",children:["Auto-login failed: ",n]}),e.jsx("p",{className:"text-muted-foreground text-sm",children:"Try restarting the server."})]})}):e.jsx(W,{})}function me(s){if(!s.client_id||s.response_type!=="code")return null;const n=new URLSearchParams;return s.client_id&&n.set("client_id",s.client_id),s.redirect_uri&&n.set("redirect_uri",s.redirect_uri),s.response_type&&n.set("response_type",s.response_type),s.state&&n.set("state",s.state),s.scope&&n.set("scope",s.scope),s.code_challenge&&n.set("code_challenge",s.code_challenge),s.code_challenge_method&&n.set("code_challenge_method",s.code_challenge_method),`/api/auth/mcp/authorize?${n.toString()}`}function ge(s){const n=le.c(5),{callbackURL:d,providerId:u}=s;let i,l;n[0]!==d||n[1]!==u?(i=()=>{(async()=>await b.signIn.sso({providerId:u,callbackURL:d}))()},l=[u,d],n[0]=d,n[1]=u,n[2]=i,n[3]=l):(i=n[2],l=n[3]),m.useEffect(i,l);let r;return n[4]===Symbol.for("react.memo_cache_sentinel")?(r=e.jsx(W,{}),n[4]=r):r=n[4],r}function pe(){const s=b.useSession(),n=ie({from:"/login"}),{next:d="/",client_id:u,redirect_uri:i,response_type:l,state:r,scope:j,code_challenge:y,code_challenge_method:D}=n,w=d.startsWith("/")&&!d.startsWith("//")?d:"/",{sso:C,emailAndPassword:A,magicLink:O,emailOtp:f,socialProviders:L,localMode:F}=X(),N=me({client_id:u,redirect_uri:i,response_type:l,state:r,scope:j,code_challenge:y,code_challenge_method:D}),c=N||w;return s.data?N?(window.location.href=N,e.jsx(W,{})):e.jsx(oe,{to:w}):F?e.jsx(ue,{redirectTo:c}):C.enabled?e.jsx(ge,{callbackURL:c,providerId:C.providerId}):A.enabled||O.enabled||f.enabled||L.enabled?e.jsx(de,{children:e.jsx(ce,{redirectUrl:N,callbackUrl:w})}):e.jsx("div",{children:"No login options available"})}export{pe as default};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{U as $t,r as ce,q as fe,F as $e,b as Dt,G as kt,a as pe,t as ue,o as G,K as ie,j as s,B as _e,e as Y,s as Ft,n as Tt,c as ze,l as Xe,E as Lt}from"./index-
|
|
1
|
+
import{U as $t,r as ce,q as fe,F as $e,b as Dt,G as kt,a as pe,t as ue,o as G,K as ie,j as s,B as _e,e as Y,s as Ft,n as Tt,c as ze,l as Xe,E as Lt}from"./index-Dj0KvohQ.js";import{C as Ot}from"./collection-display-button-DvEoSW0w.js";import{S as qt}from"./search-input-BKOtoJjA.js";import{P as Ee}from"./index-zuFZRdMw.js";import{C as Bt}from"./collection-table-wrapper-CHFC6KhT.js";import{E as We}from"./empty-state-PvmElhTC.js";import{D as Kt,i as Vt,a as Qt,b as Ut,c as Gt,d as Jt}from"./dialog-DJ-H5eyi.js";import{a as Ht,F as rt,b as ct,c as Wt,d as mt,f as dt}from"./form-CO8TZWfS.js";import{d as et,S as tt,a as st,b as nt,c as it}from"./select-Beg_2fXg.js";import{T as Yt}from"./textarea-F1h3gKD-.js";import{u as at}from"./use-org-auth-client-CXXJeS8t.js";import{u as It}from"./use-organization-roles-8xWgqzTV.js";import{u as Zt}from"./use-members-BxYNXFJP.js";import{S as De,u as ke}from"./constants-BrUmWQ5v.js";import{T as Xt,a as es,c as ts,b as ss}from"./tooltip-DR0ou5_h.js";import{a as ut,e as ft,g as gt,b as ht,c as pt,d as xt,f as bt,A as jt}from"./alert-dialog-BPHTzN62.js";import{A as Ve}from"./avatar-C8mqvhp_.js";import{B as Ue}from"./badge-aL_u7ZDP.js";import{C as vt}from"./card-BIxqjUba.js";import{D as At,a as Mt,b as Et,e as ns,f as is,g as ls,c as lt,d as as}from"./dropdown-menu-D2H5uhoI.js";import{i as _t}from"./DotsVertical-L-zHFr4w.js";import{i as os}from"./Key01-DQUmqdKK.js";import{i as rs}from"./Shield01-CgUSh4ss.js";import{a as cs}from"./SwitchHorizontal01-M-IO9U7X.js";import{s as ms}from"./Trash01-BOqsHAki.js";import{s as Pt}from"./XClose-REUNo7hV.js";import{C as Ct}from"./checkbox-DXKahMoV.js";import{a as Ye,e as Ze,f as yt,C as ds,d as us,b as fs,c as gs}from"./command-A1tt2dvQ.js";import{b as hs,P as ps,a as xs}from"./popover-lyccXPhR.js";import{t as bs}from"./ChevronDown-CYgGBXvc.js";import{s as js}from"./Plus-CxUOnaMo.js";import{R as vs}from"./require-capability-l0UYKnJd.js";import"./Check-DA5UKh5X.js";import"./view-mode-toggle-CBJdrX89.js";import"./SearchMd-Cd3-NscL.js";import"./sidebar-B3SUDWcE.js";import"./sheet-D-WSQKVa.js";import"./X-D4woLNFq.js";import"./table-CG9TNjwG.js";import"./label-CYTFcC5V.js";import"./ChevronUp-BwxnNvDR.js";import"./User01-CRsYdqKf.js";import"./ChevronRight-Bp_pdC8P.js";import"./index--2_kkJgD.js";import"./use-capability-C_bdrk_p.js";import"./access-gate-CzQMusXf.js";import"./capability-load-error-So5ymzsn.js";const Cs=$t().email("Invalid email address");function ys(t){if(!t.trim())return[];const e=t.split(/[,;\n]/).map(n=>n.trim().toLowerCase()).filter(n=>n.length>0);return Array.from(new Set(e))}function Ss({trigger:t}){const[e,n]=ce.useState(!1),{locator:o}=fe(),r=at(),l=$e(),{data:i}=Dt.useSession(),a=i?.user?.email,{roles:m,isLoading:g}=It(),h=m.filter(d=>d.role!=="owner"),p=kt({mode:"onChange",defaultValues:{emailsText:"",role:"user"}}),j=p.watch("emailsText"),I=p.watch("role"),v=ys(j).filter(d=>{const c=Cs.safeParse(d).success,x=!a||d!==a.toLowerCase();return c&&x}),N=pe({mutationFn:async({emails:d,role:c})=>{if(!c)throw new Error("Please select a role");const x=await Promise.allSettled(d.map(async w=>{const M=await r.organization.inviteMember({email:w,role:c});if(M.error)throw new Error(M.error.message);return M.data})),A=x.filter(w=>w.status==="rejected");if(A.length>0)throw new Error(`Failed to invite ${A.length} member${A.length>1?"s":""}`);return x},onSuccess:(d,{emails:c,role:x})=>{ue("member_invited",{count:c.length,role:x}),l.invalidateQueries({queryKey:ie.members(o)}),l.invalidateQueries({queryKey:ie.invitations(o)}),G.success(c.length===1?"Member invited successfully!":`${c.length} members invited successfully!`),p.reset({emailsText:"",role:"user"}),n(!1)},onError:(d,{emails:c,role:x})=>{ue("member_invite_failed",{count:c.length,role:x,error:d instanceof Error?d.message:String(d)}),G.error(d instanceof Error?d.message:"Failed to invite members")}}),y=d=>{if(v.length===0){G.error("Please enter at least one valid email address");return}if(!d.role){G.error("Please select a role");return}N.mutate({emails:v,role:d.role})},$=v.length>0&&!!I;return s.jsxs(Kt,{open:e,onOpenChange:n,children:[s.jsx(Vt,{asChild:!0,children:t}),s.jsxs(Qt,{className:"sm:max-w-lg",children:[s.jsx(Ut,{children:s.jsx(Gt,{children:"Invite members"})}),s.jsx(Ht,{...p,children:s.jsxs("form",{onSubmit:p.handleSubmit(y),className:"space-y-4",children:[s.jsx(rt,{control:p.control,name:"emailsText",render:({field:d})=>s.jsxs(ct,{children:[s.jsx(Wt,{children:"Email addresses"}),s.jsx(mt,{children:s.jsx(Yt,{...d,disabled:N.isPending,placeholder:`Enter email addresses separated by commas or new lines
|
|
2
2
|
e.g. user1@example.com, user2@example.com
|
|
3
3
|
or one per line`,className:"min-h-[120px] resize-none"})}),s.jsx(dt,{})]})}),s.jsx(rt,{control:p.control,name:"role",render:({field:d})=>s.jsxs(ct,{children:[s.jsx(mt,{children:s.jsxs(et,{value:d.value,onValueChange:d.onChange,disabled:N.isPending||g,children:[s.jsx(tt,{className:"w-full",children:s.jsx(st,{placeholder:"Select a role"})}),s.jsx(nt,{children:h.map(c=>{const x=[];return c.isBuiltin||(c.allowsAllStaticPermissions?x.push("Full org access"):c.staticPermissionCount&&c.staticPermissionCount>0&&x.push(`${c.staticPermissionCount} org perm${c.staticPermissionCount!==1?"s":""}`),c.allowsAllConnections?x.push("All connections"):c.connectionCount&&c.connectionCount>0&&x.push(`${c.connectionCount} connection${c.connectionCount!==1?"s":""}`),(c.connectionCount!==0||c.allowsAllConnections)&&(c.allowsAllTools?x.push("all tools"):c.toolCount&&c.toolCount>0&&x.push(`${c.toolCount} tool${c.toolCount!==1?"s":""}`))),s.jsx(it,{value:c.role,children:s.jsxs("div",{className:"flex flex-col",children:[s.jsx("span",{children:c.label}),!c.isBuiltin&&x.length>0&&s.jsx("span",{className:"text-xs text-muted-foreground",children:x.join(", ")})]})},c.role)})})]})}),s.jsx(dt,{})]})}),s.jsxs(Jt,{children:[s.jsx(_e,{variant:"outline",onClick:()=>{p.reset({emailsText:"",role:"user"}),n(!1)},type:"button",disabled:N.isPending,children:"Cancel"}),s.jsx(_e,{type:"submit",disabled:N.isPending||!$,children:N.isPending?"Inviting...":`Invite ${v.length||0} Member${v.length!==1?"s":""}`})]})]})})]})]})}function ws(){const t=Y.c(10),{org:e,locator:n}=fe();let o;t[0]!==e.id||t[1]!==e.slug?(o={connectionId:De,orgId:e.id,orgSlug:e.slug},t[0]=e.id,t[1]=e.slug,t[2]=o):o=t[2];const r=ke(o);let l;t[3]!==n?(l=ie.invitations(n),t[3]=n,t[4]=l):l=t[4];let i;t[5]!==r?(i=async()=>{const m=await r.callTool({name:"ORGANIZATION_GET",arguments:{}});return(m.structuredContent??m)?.invitations??[]},t[5]=r,t[6]=i):i=t[6];let a;return t[7]!==l||t[8]!==i?(a={queryKey:l,queryFn:i},t[7]=l,t[8]=i,t[9]=a):a=t[9],Ft(a)}function Ns(){const t=Y.c(10),{locator:e}=fe(),n=at(),o=$e();let r;t[0]!==n?(r=async g=>{const h=await n.organization.cancelInvitation({invitationId:g});if(h?.error)throw new Error(h.error.message);return h.data},t[0]=n,t[1]=r):r=t[1];let l;t[2]!==e||t[3]!==o?(l=()=>{o.invalidateQueries({queryKey:ie.invitations(e)}),G.success("Invitation cancelled")},t[2]=e,t[3]=o,t[4]=l):l=t[4];let i;t[5]!==r||t[6]!==l?(i={mutationFn:r,onSuccess:l,onError:Ts},t[5]=r,t[6]=l,t[7]=i):i=t[7];const a=pe(i);let m;return t[8]!==a?(m={cancel:a},t[8]=a,t[9]=m):m=t[9],m}function Ts(t){G.error(t instanceof Error?t.message:"Failed to cancel invitation")}function Is(){const t=Y.c(10),{org:e,locator:n}=fe();let o;t[0]!==e.id||t[1]!==e.slug?(o={connectionId:De,orgId:e.id,orgSlug:e.slug},t[0]=e.id,t[1]=e.slug,t[2]=o):o=t[2];const r=ke(o);let l;t[3]!==n?(l=ie.tags(n),t[3]=n,t[4]=l):l=t[4];let i;t[5]!==r?(i=async()=>{const m=await r.callTool({name:"TAGS_LIST",arguments:{}});return(m.structuredContent??m).tags},t[5]=r,t[6]=i):i=t[6];let a;return t[7]!==l||t[8]!==i?(a={queryKey:l,queryFn:i,staleTime:3e4},t[7]=l,t[8]=i,t[9]=a):a=t[9],Tt(a)}function As(){const t=Y.c(11),e=$e(),{org:n,locator:o}=fe();let r;t[0]!==n.id||t[1]!==n.slug?(r={connectionId:De,orgId:n.id,orgSlug:n.slug},t[0]=n.id,t[1]=n.slug,t[2]=r):r=t[2];const l=ke(r);let i;t[3]!==l?(i=async g=>{const h=await l.callTool({name:"TAGS_CREATE",arguments:{name:g}});return(h.structuredContent??h).tag},t[3]=l,t[4]=i):i=t[4];let a;t[5]!==o||t[6]!==e?(a=()=>{e.invalidateQueries({queryKey:ie.tags(o)})},t[5]=o,t[6]=e,t[7]=a):a=t[7];let m;return t[8]!==i||t[9]!==a?(m={mutationFn:i,onSuccess:a,onError:Ms},t[8]=i,t[9]=a,t[10]=m):m=t[10],pe(m)}function Ms(t){G.error(t instanceof Error?t.message:"Failed to create tag")}function Es(t){const e=Y.c(13),{org:n,locator:o}=fe();let r;e[0]!==n.id||e[1]!==n.slug?(r={connectionId:De,orgId:n.id,orgSlug:n.slug},e[0]=n.id,e[1]=n.slug,e[2]=r):r=e[2];const l=ke(r);let i;e[3]!==o||e[4]!==t?(i=ie.memberTags(o,t),e[3]=o,e[4]=t,e[5]=i):i=e[5];let a;e[6]!==l||e[7]!==t?(a=async()=>{const h=await l.callTool({name:"MEMBER_TAGS_GET",arguments:{memberId:t}});return(h.structuredContent??h).tags},e[6]=l,e[7]=t,e[8]=a):a=e[8];const m=!!t;let g;return e[9]!==i||e[10]!==a||e[11]!==m?(g={queryKey:i,queryFn:a,staleTime:3e4,enabled:m},e[9]=i,e[10]=a,e[11]=m,e[12]=g):g=e[12],Tt(g)}function _s(){const t=Y.c(11),e=$e(),{org:n,locator:o}=fe();let r;t[0]!==n.id||t[1]!==n.slug?(r={connectionId:De,orgId:n.id,orgSlug:n.slug},t[0]=n.id,t[1]=n.slug,t[2]=r):r=t[2];const l=ke(r);let i;t[3]!==l?(i=async g=>{const{memberId:h,tagIds:p}=g,j=await l.callTool({name:"MEMBER_TAGS_SET",arguments:{memberId:h,tagIds:p}});return j.structuredContent??j},t[3]=l,t[4]=i):i=t[4];let a;t[5]!==o||t[6]!==e?(a=(g,h)=>{e.invalidateQueries({queryKey:ie.memberTags(o,h.memberId)})},t[5]=o,t[6]=e,t[7]=a):a=t[7];let m;return t[8]!==i||t[9]!==a?(m={mutationFn:i,onSuccess:a,onError:Ps},t[8]=i,t[9]=a,t[10]=m):m=t[10],pe(m)}function Ps(t){G.error(t instanceof Error?t.message:"Failed to update member tags")}function Rt(t){const e=Y.c(44),{memberId:n,className:o,disabled:r,placeholder:l,maxDisplay:i}=t,a=r===void 0?!1:r,m=l===void 0?"Add tags...":l,g=i===void 0?2:i,[h,p]=ce.useState(!1),[j,I]=ce.useState(""),{data:R,isLoading:v}=Is(),N=R===void 0?[]:R,{data:y,isLoading:$}=Es(n),d=y===void 0?[]:y,c=As(),x=_s(),A=v||$,w=d.map(zs);let M;e[0]!==j?(M=S=>S.name.toLowerCase().includes(j.toLowerCase()),e[0]=j,e[1]=M):M=e[1];const z=N.filter(M);let T;e[2]!==j?(T=S=>S.name.toLowerCase()===j.toLowerCase(),e[2]=j,e[3]=T):T=e[3];const K=N.find(T),E=j.trim()&&!K,k=async S=>{const he=w.includes(S.id)?w.filter(je=>je!==S.id):[...w,S.id];await x.mutateAsync({memberId:n,tagIds:he})},_=async()=>{if(!j.trim())return;const S=await c.mutateAsync(j.trim());await x.mutateAsync({memberId:n,tagIds:[...w,S.id]}),I("")},u=async S=>{const ne=w.filter(he=>he!==S);await x.mutateAsync({memberId:n,tagIds:ne})},C=c.isPending||x.isPending,O=ps;let D;e[4]!==h?(D=()=>p(!h),e[4]=h,e[5]=D):D=e[5];let F;e[6]!==o?(F=ze("h-auto min-h-8 px-2 py-1 justify-start font-normal","hover:bg-accent/50",o),e[6]=o,e[7]=F):F=e[7];const V=a||A,L=A?s.jsx(Xe,{size:14,className:"animate-spin text-muted-foreground"}):d.length>0?s.jsxs("div",{className:"flex items-center gap-1 flex-wrap",children:[d.slice(0,g).map(Rs),d.length>g&&s.jsxs(Ue,{variant:"secondary",className:"text-xs px-1.5 py-0 h-5",children:["+",d.length-g]})]}):s.jsx("span",{className:"text-muted-foreground text-xs",children:m});let Q;e[8]===Symbol.for("react.memo_cache_sentinel")?(Q=s.jsx(bs,{size:14,className:"ml-1 shrink-0 opacity-50"}),e[8]=Q):Q=e[8];let q;e[9]!==V||e[10]!==L||e[11]!==D||e[12]!==F?(q=s.jsx(xs,{asChild:!0,children:s.jsxs(_e,{variant:"ghost",size:"sm",onClick:D,className:F,disabled:V,children:[L,Q]})}),e[9]=V,e[10]=L,e[11]=D,e[12]=F,e[13]=q):q=e[13];const U=hs,J="w-56 p-0",H="start";let W;e[14]===Symbol.for("react.memo_cache_sentinel")?(W=()=>p(!1),e[14]=W):W=e[14];const le=fs,xe=!1;let Z;e[15]!==j?(Z=s.jsx(gs,{placeholder:"Search or create...",value:j,onValueChange:I,className:"h-9"}),e[15]=j,e[16]=Z):Z=e[16];const ae=us,me=d.length>0&&s.jsxs(s.Fragment,{children:[s.jsx(Ye,{heading:"Selected",children:d.map(S=>s.jsx(Ze,{onSelect:()=>k(S),className:"cursor-pointer",children:s.jsxs("div",{className:"flex items-center justify-between w-full",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Ct,{checked:!0,className:"[&_svg]:!text-primary-foreground"}),s.jsx("span",{children:S.name})]}),s.jsx("button",{onClick:ne=>{ne.stopPropagation(),u(S.id)},className:"opacity-50 hover:opacity-100",disabled:C,children:s.jsx(Pt,{size:14})})]})},S.id))}),s.jsx(yt,{})]}),Pe=Ye,be="Available",Re=z.length===0&&!E&&s.jsx(ds,{children:"No tags found."}),ge=z.filter(S=>!w.includes(S.id)).map(S=>s.jsx(Ze,{onSelect:()=>k(S),className:"cursor-pointer",children:s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx(Ct,{checked:!1,className:"[&_svg]:!text-primary-foreground"}),s.jsx("span",{children:S.name})]})},S.id));let oe;e[17]!==Pe||e[18]!==Re||e[19]!==ge?(oe=s.jsxs(Pe,{heading:be,children:[Re,ge]}),e[17]=Pe,e[18]=Re,e[19]=ge,e[20]=oe):oe=e[20];let re;e[21]!==_||e[22]!==C||e[23]!==j||e[24]!==E?(re=E&&s.jsxs(s.Fragment,{children:[s.jsx(yt,{}),s.jsx(Ye,{children:s.jsx(Ze,{onSelect:_,className:"cursor-pointer",disabled:C,children:s.jsxs("div",{className:"flex items-center gap-2 text-primary",children:[C?s.jsx(Xe,{size:14,className:"animate-spin"}):s.jsx(js,{size:14}),s.jsxs("span",{children:['Create "',j.trim(),'"']})]})})})]}),e[21]=_,e[22]=C,e[23]=j,e[24]=E,e[25]=re):re=e[25];let X;e[26]!==ae||e[27]!==me||e[28]!==oe||e[29]!==re?(X=s.jsxs(ae,{children:[me,oe,re]}),e[26]=ae,e[27]=me,e[28]=oe,e[29]=re,e[30]=X):X=e[30];let ee;e[31]!==le||e[32]!==Z||e[33]!==X?(ee=s.jsxs(le,{shouldFilter:xe,children:[Z,X]}),e[31]=le,e[32]=Z,e[33]=X,e[34]=ee):ee=e[34];let te;e[35]!==U||e[36]!==W||e[37]!==ee?(te=s.jsx(U,{className:J,align:H,onEscapeKeyDown:W,children:ee}),e[35]=U,e[36]=W,e[37]=ee,e[38]=te):te=e[38];let se;return e[39]!==O||e[40]!==h||e[41]!==q||e[42]!==te?(se=s.jsxs(O,{open:h,onOpenChange:p,children:[q,te]}),e[39]=O,e[40]=h,e[41]=q,e[42]=te,e[43]=se):se=e[43],se}function Rs(t){return s.jsx(Ue,{variant:"secondary",className:"text-xs px-1.5 py-0 h-5",children:t.name},t.id)}function zs(t){return t.id}const St=["bg-neutral-400","bg-red-500","bg-orange-500","bg-amber-500","bg-yellow-500","bg-lime-500","bg-green-500","bg-emerald-500","bg-teal-500","bg-cyan-500","bg-sky-500","bg-blue-500","bg-indigo-500","bg-violet-500","bg-purple-500","bg-fuchsia-500","bg-pink-500","bg-rose-500","bg-slate-500"],$s={owner:"bg-red-500",admin:"bg-blue-500",user:"bg-green-500"};function Qe(t){return t?t.split(" ").map(e=>e[0]).join("").toUpperCase().slice(0,2):"?"}function Ds(t){const e=new Map;for(const[n,o]of Object.entries($s))e.set(n,o);for(let n=0;n<t.length;n++){const o=t[n];o&&!e.has(o.role)&&e.set(o.role,St[n%St.length]??"bg-neutral-400")}return e}function ks(t){return new Date(t).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})}function Ke(t){const e=Y.c(79),{role:n,memberId:o,isOwner:r,roleColorMap:l,selectableRoles:i,onRoleChange:a,size:m,className:g}=t,h=m===void 0?"xs":m;let p,j,I,R,v,N,y,$,d,c,x;if(e[0]!==g||e[1]!==r||e[2]!==o||e[3]!==a||e[4]!==n||e[5]!==l||e[6]!==i||e[7]!==h){x=Symbol.for("react.early_return_sentinel");e:{const _=l.get(n)??"bg-neutral-400";if(r){let u;e[19]!==o||e[20]!==a?(u=J=>a(o,J),e[19]=o,e[20]=a,e[21]=u):u=e[21];let C;e[22]!==n?(C=s.jsx("span",{className:"capitalize truncate",children:n}),e[22]=n,e[23]=C):C=e[23];const O=s.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[s.jsx("div",{className:ze("size-2 rounded-full shrink-0",_)}),C]});let D;e[24]!==O?(D=s.jsx(st,{children:O}),e[24]=O,e[25]=D):D=e[25];let F;e[26]!==g||e[27]!==h||e[28]!==D?(F=s.jsx(tt,{size:h,className:g,children:D}),e[26]=g,e[27]=h,e[28]=D,e[29]=F):F=e[29];let V;if(e[30]!==l||e[31]!==i){let J;e[33]!==l?(J=H=>{const W=l.get(H.role)??"bg-neutral-400";return s.jsx(it,{value:H.role,children:s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:ze("size-3 rounded-full",W)}),s.jsx("span",{className:"capitalize",children:H.label})]})},H.role)},e[33]=l,e[34]=J):J=e[34],V=i.map(J),e[30]=l,e[31]=i,e[32]=V}else V=e[32];let L;e[35]!==V?(L=s.jsx(nt,{children:V}),e[35]=V,e[36]=L):L=e[36];let Q;e[37]!==r||e[38]!==n||e[39]!==u||e[40]!==F||e[41]!==L?(Q=s.jsx(Xt,{asChild:!0,children:s.jsx("div",{className:"w-fit",children:s.jsxs(et,{value:n,onValueChange:u,disabled:r,children:[F,L]})})}),e[37]=r,e[38]=n,e[39]=u,e[40]=F,e[41]=L,e[42]=Q):Q=e[42];let q;e[43]===Symbol.for("react.memo_cache_sentinel")?(q=s.jsx(es,{children:s.jsx("p",{children:"The owner role cannot be changed"})}),e[43]=q):q=e[43];let U;e[44]!==Q?(U=s.jsx(ts,{children:s.jsxs(ss,{children:[Q,q]})}),e[44]=Q,e[45]=U):U=e[45],x=U;break e}I=et,$=n,e[46]!==o||e[47]!==a?(d=u=>a(o,u),e[46]=o,e[47]=a,e[48]=d):d=e[48],c=r,j=tt,N=h,y=g,p=st,v="flex items-center gap-2 min-w-0",R=ze("size-2 rounded-full shrink-0",_)}e[0]=g,e[1]=r,e[2]=o,e[3]=a,e[4]=n,e[5]=l,e[6]=i,e[7]=h,e[8]=p,e[9]=j,e[10]=I,e[11]=R,e[12]=v,e[13]=N,e[14]=y,e[15]=$,e[16]=d,e[17]=c,e[18]=x}else p=e[8],j=e[9],I=e[10],R=e[11],v=e[12],N=e[13],y=e[14],$=e[15],d=e[16],c=e[17],x=e[18];if(x!==Symbol.for("react.early_return_sentinel"))return x;let A;e[49]!==R?(A=s.jsx("div",{className:R}),e[49]=R,e[50]=A):A=e[50];let w;e[51]!==n?(w=s.jsx("span",{className:"capitalize truncate",children:n}),e[51]=n,e[52]=w):w=e[52];let M;e[53]!==A||e[54]!==w||e[55]!==v?(M=s.jsxs("div",{className:v,children:[A,w]}),e[53]=A,e[54]=w,e[55]=v,e[56]=M):M=e[56];let z;e[57]!==p||e[58]!==M?(z=s.jsx(p,{children:M}),e[57]=p,e[58]=M,e[59]=z):z=e[59];let T;e[60]!==j||e[61]!==z||e[62]!==N||e[63]!==y?(T=s.jsx(j,{size:N,className:y,children:z}),e[60]=j,e[61]=z,e[62]=N,e[63]=y,e[64]=T):T=e[64];let K;if(e[65]!==l||e[66]!==i){let _;e[68]!==l?(_=u=>{const C=l.get(u.role)??"bg-neutral-400";return s.jsx(it,{value:u.role,children:s.jsxs("div",{className:"flex items-center gap-2",children:[s.jsx("div",{className:ze("size-3 rounded-full",C)}),s.jsx("span",{className:"capitalize",children:u.label})]})},u.role)},e[68]=l,e[69]=_):_=e[69],K=i.map(_),e[65]=l,e[66]=i,e[67]=K}else K=e[67];let E;e[70]!==K?(E=s.jsx(nt,{children:K}),e[70]=K,e[71]=E):E=e[71];let k;return e[72]!==I||e[73]!==T||e[74]!==E||e[75]!==$||e[76]!==d||e[77]!==c?(k=s.jsxs(I,{value:$,onValueChange:d,disabled:c,children:[T,E]}),e[72]=I,e[73]=T,e[74]=E,e[75]=$,e[76]=d,e[77]=c,e[78]=k):k=e[78],k}function wt(t){const e=Y.c(51),{member:n,roles:o,onChangeRole:r,onRemove:l,isUpdating:i}=t,a=i===void 0?!1:i,m=n.role==="owner";let g,h,p,j,I,R,v,N,y;if(e[0]!==m||e[1]!==a||e[2]!==n.id||e[3]!==n.role||e[4]!==r||e[5]!==o){let T;e[15]!==n.role?(T=u=>u.role!==n.role&&u.role!=="owner",e[15]=n.role,e[16]=T):T=e[16];const K=o.filter(T);j=At;let E;e[17]===Symbol.for("react.memo_cache_sentinel")?(E=s.jsx(_t,{size:20}),e[17]=E):E=e[17],e[18]!==m?(y=s.jsx(Mt,{asChild:!0,children:s.jsx(_e,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",disabled:m,onClick:Ls,children:E})}),e[18]=m,e[19]=y):y=e[19],p=Et,v="end",N=Fs,h=ns;let k;e[20]===Symbol.for("react.memo_cache_sentinel")?(k=s.jsx(cs,{size:16}),e[20]=k):k=e[20],e[21]!==a?(R=s.jsxs(is,{disabled:a,children:[k,"Change Role"]}),e[21]=a,e[22]=R):R=e[22],g=ls;let _;e[23]!==a||e[24]!==n.id||e[25]!==r?(_=u=>{const C=[];return u.isBuiltin||(u.allowsAllStaticPermissions?C.push("Full org access"):u.staticPermissionCount&&u.staticPermissionCount>0&&C.push(`${u.staticPermissionCount} org perm${u.staticPermissionCount!==1?"s":""}`),u.allowsAllConnections?C.push("All connections"):u.connectionCount&&u.connectionCount>0&&C.push(`${u.connectionCount} connection${u.connectionCount!==1?"s":""}`),(u.connectionCount!==0||u.allowsAllConnections)&&(u.allowsAllTools?C.push("all tools"):u.toolCount&&u.toolCount>0&&C.push(`${u.toolCount} tool${u.toolCount!==1?"s":""}`))),s.jsxs(lt,{onClick:O=>{O.stopPropagation(),r(n.id,u.role)},disabled:a,children:[u.isBuiltin?s.jsx(rs,{size:16}):s.jsx(os,{size:16}),s.jsxs("span",{className:"flex flex-col",children:[s.jsx("span",{children:u.label}),!u.isBuiltin&&C.length>0&&s.jsx("span",{className:"text-xs text-muted-foreground",children:C.join(", ")})]})]},u.role)},e[23]=a,e[24]=n.id,e[25]=r,e[26]=_):_=e[26],I=K.map(_),e[0]=m,e[1]=a,e[2]=n.id,e[3]=n.role,e[4]=r,e[5]=o,e[6]=g,e[7]=h,e[8]=p,e[9]=j,e[10]=I,e[11]=R,e[12]=v,e[13]=N,e[14]=y}else g=e[6],h=e[7],p=e[8],j=e[9],I=e[10],R=e[11],v=e[12],N=e[13],y=e[14];let $;e[27]!==g||e[28]!==I?($=s.jsx(g,{children:I}),e[27]=g,e[28]=I,e[29]=$):$=e[29];let d;e[30]!==h||e[31]!==R||e[32]!==$?(d=s.jsxs(h,{children:[R,$]}),e[30]=h,e[31]=R,e[32]=$,e[33]=d):d=e[33];let c;e[34]===Symbol.for("react.memo_cache_sentinel")?(c=s.jsx(as,{}),e[34]=c):c=e[34];let x;e[35]!==n.id||e[36]!==l?(x=T=>{T.stopPropagation(),l(n.id)},e[35]=n.id,e[36]=l,e[37]=x):x=e[37];let A;e[38]===Symbol.for("react.memo_cache_sentinel")?(A=s.jsx(ms,{size:16}),e[38]=A):A=e[38];let w;e[39]!==x?(w=s.jsxs(lt,{variant:"destructive",onClick:x,children:[A,"Remove Member"]}),e[39]=x,e[40]=w):w=e[40];let M;e[41]!==p||e[42]!==w||e[43]!==v||e[44]!==N||e[45]!==d?(M=s.jsxs(p,{align:v,onClick:N,children:[d,c,w]}),e[41]=p,e[42]=w,e[43]=v,e[44]=N,e[45]=d,e[46]=M):M=e[46];let z;return e[47]!==j||e[48]!==M||e[49]!==y?(z=s.jsxs(j,{children:[y,M]}),e[47]=j,e[48]=M,e[49]=y,e[50]=z):z=e[50],z}function Fs(t){return t.stopPropagation()}function Ls(t){return t.stopPropagation()}function Nt(t){const e=Y.c(8),{invitationId:n,onCancel:o,isCancelling:r}=t,l=r===void 0?!1:r;let i;e[0]===Symbol.for("react.memo_cache_sentinel")?(i=s.jsx(Mt,{asChild:!0,children:s.jsx(_e,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0",onClick:qs,children:s.jsx(_t,{size:20})})}),e[0]=i):i=e[0];let a;e[1]!==n||e[2]!==o?(a=h=>{h.stopPropagation(),o(n)},e[1]=n,e[2]=o,e[3]=a):a=e[3];let m;e[4]===Symbol.for("react.memo_cache_sentinel")?(m=s.jsx(Pt,{size:16}),e[4]=m):m=e[4];let g;return e[5]!==l||e[6]!==a?(g=s.jsxs(At,{children:[i,s.jsx(Et,{align:"end",onClick:Os,children:s.jsxs(lt,{variant:"destructive",onClick:a,disabled:l,children:[m,"Cancel Invitation"]})})]}),e[5]=l,e[6]=a,e[7]=g):g=e[7],g}function Os(t){return t.stopPropagation()}function qs(t){return t.stopPropagation()}function Bs(){const t=Y.c(101),{data:e}=Zt(),{data:n}=ws(),o=Ns(),r=$e(),{locator:l}=fe(),i=at(),[a,m]=ce.useState(null),[g,h]=ce.useState(null),[p,j]=ce.useState(""),[I,R]=ce.useState("table"),[v,N]=ce.useState("member"),[y,$]=ce.useState("asc"),d=e?.data?.members;let c;t[0]!==v?(c=f=>{v===f?$(Xs):(N(f),$("asc"))},t[0]=v,t[1]=c):c=t[1];const x=c;let A=d??[],w=n??[];if(p){const f=p.toLowerCase();A=A.filter(b=>b.user?.name?.toLowerCase().includes(f)||b.user?.email?.toLowerCase().includes(f)||b.role?.toLowerCase().includes(f)),w=w.filter(b=>b.email?.toLowerCase().includes(f)||b.role?.toLowerCase().includes(f))}if(v&&y){let f;t[2]!==y||t[3]!==v?(f=(b,P)=>{let B,de;e:switch(v){case"member":{B=b.user?.name||"",de=P.user?.name||"";break e}case"role":{B=b.role||"",de=P.role||"";break e}case"joined":{B=b.createdAt?typeof b.createdAt=="string"?b.createdAt:b.createdAt.toISOString():"",de=P.createdAt?typeof P.createdAt=="string"?P.createdAt:P.createdAt.toISOString():"";break e}default:return 0}return y==="asc"?B.localeCompare(de):de.localeCompare(B)},t[2]=y,t[3]=v,t[4]=f):f=t[4],A=[...A].sort(f)}const M=A;let z;t[5]!==i?(z=async f=>{const b=await i.organization.removeMember({memberIdOrEmail:f});if(b?.error)throw new Error(b.error.message)},t[5]=i,t[6]=z):z=t[6];let T;t[7]!==l||t[8]!==r?(T=()=>{ue("member_removed"),r.invalidateQueries({queryKey:ie.members(l)}),G.success("Member has been removed from the organization"),m(null)},t[7]=l,t[8]=r,t[9]=T):T=t[9];let K;t[10]!==z||t[11]!==T?(K={mutationFn:z,onSuccess:T,onError:Zs},t[10]=z,t[11]=T,t[12]=K):K=t[12];const E=pe(K);let k;t[13]!==i?(k=async f=>{const{memberId:b,role:P}=f,B=await i.organization.updateMemberRole({memberId:b,role:[P]});if(B?.error)throw new Error(B.error.message)},t[13]=i,t[14]=k):k=t[14];let _;t[15]!==l||t[16]!==r?(_=(f,b)=>{ue("member_role_updated",{new_role:b.role}),r.invalidateQueries({queryKey:ie.members(l)}),G.success("Member's role has been updated")},t[15]=l,t[16]=r,t[17]=_):_=t[17];let u;t[18]!==k||t[19]!==_?(u={mutationFn:k,onSuccess:_,onError:Ys},t[18]=k,t[19]=_,t[20]=u):u=t[20];const C=pe(u);let O;t[21]!==i?(O=async f=>{const{invitationId:b,role:P,email:B}=f,de=await i.organization.cancelInvitation({invitationId:b});if(de?.error)throw new Error(de.error.message);const ot=await i.organization.inviteMember({email:B,role:P});if(ot?.error)throw new Error(ot.error.message)},t[21]=i,t[22]=O):O=t[22];let D;t[23]!==l||t[24]!==r?(D=(f,b)=>{ue("invitation_role_updated",{new_role:b.role}),r.invalidateQueries({queryKey:ie.invitations(l)}),G.success("Invitation role has been updated")},t[23]=l,t[24]=r,t[25]=D):D=t[25];let F;t[26]!==O||t[27]!==D?(F={mutationFn:O,onSuccess:D,onError:Ws},t[26]=O,t[27]=D,t[28]=F):F=t[28];const V=pe(F),{roles:L,customRoles:Q}=It();let q;t[29]!==Q?(q=Ds(Q),t[29]=Q,t[30]=q):q=t[30];const U=q;let J;t[31]!==L?(J=L.filter(Hs),t[31]=L,t[32]=J):J=t[32];const H=J;let W;t[33]===Symbol.for("react.memo_cache_sentinel")?(W={id:"member",header:"Member",render:Js,cellClassName:"flex-1 min-w-0",sortable:!0},t[33]=W):W=t[33];let le;t[34]!==U||t[35]!==H||t[36]!==V||t[37]!==C?(le={id:"role",header:"Role",render:f=>f.type==="member"?s.jsx(Ke,{role:f.data.role,memberId:f.data.id,isOwner:f.data.role==="owner",roleColorMap:U,selectableRoles:H,onRoleChange:(b,P)=>C.mutate({memberId:b,role:P}),className:"w-36"}):s.jsx(Ke,{role:f.data.role,memberId:f.data.id,isOwner:!1,roleColorMap:U,selectableRoles:H,onRoleChange:(b,P)=>V.mutate({invitationId:b,role:P,email:f.data.email}),className:"w-36"}),cellClassName:"w-36 shrink-0",sortable:!0},t[34]=U,t[35]=H,t[36]=V,t[37]=C,t[38]=le):le=t[38];let xe,Z;t[39]===Symbol.for("react.memo_cache_sentinel")?(xe={id:"tags",header:"Tags",render:Gs,cellClassName:"w-40 shrink-0"},Z={id:"joined",header:"Joined",render:Us,cellClassName:"w-48 shrink-0",sortable:!0},t[39]=xe,t[40]=Z):(xe=t[39],Z=t[40]);let ae;t[41]!==o.cancel.isPending||t[42]!==L||t[43]!==C?(ae={id:"actions",header:"",render:f=>f.type==="member"?s.jsx(wt,{member:f.data,roles:L,onChangeRole:(b,P)=>C.mutate({memberId:b,role:P}),onRemove:m,isUpdating:C.isPending}):s.jsx(Nt,{invitationId:f.data.id,onCancel:h,isCancelling:o.cancel.isPending}),cellClassName:"w-12 shrink-0"},t[41]=o.cancel.isPending,t[42]=L,t[43]=C,t[44]=ae):ae=t[44];let me;t[45]!==le||t[46]!==ae?(me=[W,le,xe,Z,ae],t[45]=le,t[46]=ae,t[47]=me):me=t[47];const Pe=me;let be;t[48]===Symbol.for("react.memo_cache_sentinel")?(be=s.jsx("div",{className:"flex items-center gap-2",children:s.jsx(Ss,{trigger:s.jsx(_e,{children:"Invite Member"})})}),t[48]=be):be=t[48];const Re=be,ge=[...M.map(Qs),...w.filter(Vs).map(Ks)],oe=Ee,re=!!g;let X;t[49]===Symbol.for("react.memo_cache_sentinel")?(X=()=>h(null),t[49]=X):X=t[49];let ee;t[50]===Symbol.for("react.memo_cache_sentinel")?(ee=s.jsxs(ht,{children:[s.jsx(pt,{children:"Cancel Invitation"}),s.jsx(xt,{children:"Are you sure you want to cancel this invitation? The invitee will no longer be able to join the organization with this invitation."})]}),t[50]=ee):ee=t[50];let te;t[51]===Symbol.for("react.memo_cache_sentinel")?(te=s.jsx(bt,{children:"Keep Invitation"}),t[51]=te):te=t[51];let se;t[52]!==o.cancel||t[53]!==g?(se=()=>{g&&(o.cancel.mutate(g),h(null))},t[52]=o.cancel,t[53]=g,t[54]=se):se=t[54];let S;t[55]!==o.cancel.isPending||t[56]!==se?(S=s.jsxs(ut,{children:[ee,s.jsxs(ft,{children:[te,s.jsx(gt,{onClick:se,disabled:o.cancel.isPending,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Cancel Invitation"})]})]}),t[55]=o.cancel.isPending,t[56]=se,t[57]=S):S=t[57];let ne;t[58]!==re||t[59]!==S?(ne=s.jsx(jt,{open:re,onOpenChange:X,children:S}),t[58]=re,t[59]=S,t[60]=ne):ne=t[60];const he=!!a;let je;t[61]===Symbol.for("react.memo_cache_sentinel")?(je=()=>m(null),t[61]=je):je=t[61];let Fe;t[62]===Symbol.for("react.memo_cache_sentinel")?(Fe=s.jsxs(ht,{children:[s.jsx(pt,{children:"Remove Member"}),s.jsx(xt,{children:"Are you sure you want to remove this member from the organization? This action cannot be undone."})]}),t[62]=Fe):Fe=t[62];let Le;t[63]===Symbol.for("react.memo_cache_sentinel")?(Le=s.jsx(bt,{children:"Cancel"}),t[63]=Le):Le=t[63];let ve;t[64]!==a||t[65]!==E?(ve=()=>a&&E.mutate(a),t[64]=a,t[65]=E,t[66]=ve):ve=t[66];let Ce;t[67]!==E.isPending||t[68]!==ve?(Ce=s.jsxs(ut,{children:[Fe,s.jsxs(ft,{children:[Le,s.jsx(gt,{onClick:ve,disabled:E.isPending,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Remove"})]})]}),t[67]=E.isPending,t[68]=ve,t[69]=Ce):Ce=t[69];let ye;t[70]!==he||t[71]!==Ce?(ye=s.jsx(jt,{open:he,onOpenChange:je,children:Ce}),t[70]=he,t[71]=Ce,t[72]=ye):ye=t[72];const Ge=Ee,Je=Ee,zt="flex flex-col gap-6";let Se;t[73]===Symbol.for("react.memo_cache_sentinel")?(Se=s.jsx(Ee.Title,{children:"Members"}),t[73]=Se):Se=t[73];let Oe;t[74]===Symbol.for("react.memo_cache_sentinel")?(Oe=f=>{f.key==="Escape"&&(j(""),f.target.blur())},t[74]=Oe):Oe=t[74];let we;t[75]!==p?(we=s.jsx(qt,{value:p,onChange:j,placeholder:"Search members...",className:"w-full md:w-[375px]",onKeyDown:Oe}),t[75]=p,t[76]=we):we=t[76];let qe;t[77]===Symbol.for("react.memo_cache_sentinel")?(qe=[{id:"member",label:"Name"},{id:"role",label:"Role"},{id:"joined",label:"Joined"}],t[77]=qe):qe=t[77];let Ne;t[78]!==x||t[79]!==y||t[80]!==v||t[81]!==I?(Ne=s.jsx(Ot,{viewMode:I,onViewModeChange:R,sortKey:v,sortDirection:y,onSort:x,sortOptions:qe}),t[78]=x,t[79]=y,t[80]=v,t[81]=I,t[82]=Ne):Ne=t[82];let Te;t[83]!==we||t[84]!==Ne?(Te=s.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-3",children:[s.jsxs("div",{className:"flex items-center gap-2",children:[we,Ne]}),Re]}),t[83]=we,t[84]=Ne,t[85]=Te):Te=t[85];const He=I==="cards"?s.jsx("div",{children:ge.length===0?s.jsx(We,{title:"No members found",description:p?`No members match "${p}"`:"Invite members to get started."}):s.jsx("div",{className:"grid grid-cols-[repeat(auto-fill,minmax(280px,1fr))] gap-4",children:ge.map(f=>{if(f.type==="invitation")return s.jsxs(vt,{className:"transition-colors relative opacity-75",children:[s.jsx("div",{className:"absolute top-4 right-4 z-10",children:s.jsx(Nt,{invitationId:f.data.id,onCancel:h,isCancelling:o.cancel.isPending})}),s.jsxs("div",{className:"flex flex-col gap-4 p-6",children:[s.jsx(Ve,{fallback:Qe(f.data.email),shape:"circle",size:"lg",className:"shrink-0"}),s.jsxs("div",{className:"flex flex-col gap-2",children:[s.jsx("h3",{className:"text-base font-medium text-foreground truncate",children:f.data.email}),s.jsx("div",{className:"flex items-center gap-2",children:s.jsx(Ue,{variant:"outline",className:"w-fit text-amber-600 border-amber-400",children:"Pending"})}),s.jsx(Ke,{role:f.data.role,memberId:f.data.id,isOwner:!1,roleColorMap:U,selectableRoles:H,onRoleChange:(P,B)=>V.mutate({invitationId:P,role:B,email:f.data.email}),className:"w-fit"})]})]})]},`inv-${f.data.id}`);const b=f.data;return s.jsxs(vt,{className:"transition-colors relative",children:[s.jsx("div",{className:"absolute top-4 right-4 z-10",children:s.jsx(wt,{member:b,roles:L,onChangeRole:(P,B)=>C.mutate({memberId:P,role:B}),onRemove:m,isUpdating:C.isPending})}),s.jsxs("div",{className:"flex flex-col gap-4 p-6",children:[s.jsx(Ve,{url:b.user?.image??void 0,fallback:Qe(b.user?.name),shape:"circle",size:"lg",className:"shrink-0"}),s.jsxs("div",{className:"flex flex-col gap-2",children:[s.jsx("h3",{className:"text-base font-medium text-foreground truncate",children:b.user?.name||"Unknown"}),s.jsx("p",{className:"text-sm text-muted-foreground truncate",children:b.user?.email}),s.jsx(Ke,{role:b.role,memberId:b.id,isOwner:b.role==="owner",roleColorMap:U,selectableRoles:H,onRoleChange:(P,B)=>C.mutate({memberId:P,role:B}),className:"w-fit"}),s.jsx(Rt,{memberId:b.id,maxDisplay:3})]})]})]},b.id)})})}):s.jsx(Bt,{columns:Pe,data:ge,isLoading:!1,sortKey:v,sortDirection:y,onSort:x,emptyState:p?s.jsx(We,{title:"No members found",description:`No members match "${p}"`}):s.jsx(We,{title:"No members found",description:"Invite members to get started."})});let Ie;t[86]!==Se||t[87]!==Te||t[88]!==He?(Ie=s.jsxs("div",{className:zt,children:[Se,Te,He]}),t[86]=Se,t[87]=Te,t[88]=He,t[89]=Ie):Ie=t[89];let Ae;t[90]!==Je.Body||t[91]!==Ie?(Ae=s.jsx(Je.Body,{children:Ie}),t[90]=Je.Body,t[91]=Ie,t[92]=Ae):Ae=t[92];let Me;t[93]!==Ge.Content||t[94]!==Ae?(Me=s.jsx(Ge.Content,{children:Ae}),t[93]=Ge.Content,t[94]=Ae,t[95]=Me):Me=t[95];let Be;return t[96]!==oe||t[97]!==ne||t[98]!==ye||t[99]!==Me?(Be=s.jsxs(oe,{children:[ne,ye,Me]}),t[96]=oe,t[97]=ne,t[98]=ye,t[99]=Me,t[100]=Be):Be=t[100],Be}function Ks(t){return{type:"invitation",data:t}}function Vs(t){return t.status==="pending"}function Qs(t){return{type:"member",data:t}}function Us(t){return t.type==="member"?s.jsx("span",{className:"text-sm text-foreground",children:t.data.createdAt?ks(t.data.createdAt):"N/A"}):s.jsx(Ue,{variant:"outline",children:"Pending"})}function Gs(t){return t.type==="member"?s.jsx(Rt,{memberId:t.data.id,maxDisplay:2}):s.jsx("span",{className:"text-xs text-muted-foreground",children:"-"})}function Js(t){return t.type==="member"?s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx(Ve,{url:t.data.user?.image??void 0,fallback:Qe(t.data.user?.name),shape:"circle",size:"sm"}),s.jsxs("div",{className:"min-w-0",children:[s.jsx("div",{className:"text-sm font-medium text-foreground truncate",children:t.data.user?.name||"Unknown"}),s.jsx("div",{className:"text-sm text-muted-foreground truncate",children:t.data.user?.email})]})]}):s.jsxs("div",{className:"flex items-center gap-3",children:[s.jsx(Ve,{fallback:Qe(t.data.email),shape:"circle",size:"sm"}),s.jsxs("div",{className:"min-w-0",children:[s.jsx("div",{className:"text-sm font-medium text-foreground truncate",children:t.data.email}),s.jsx("div",{className:"text-sm text-muted-foreground truncate",children:"Invitation sent"})]})]})}function Hs(t){return t.role!=="owner"}function Ws(t,e){ue("invitation_role_update_failed",{new_role:e.role,error:t instanceof Error?t.message:String(t)}),G.error(t instanceof Error?t.message:"Failed to update invitation role")}function Ys(t,e){ue("member_role_update_failed",{new_role:e.role,error:t instanceof Error?t.message:String(t)}),G.error(t instanceof Error?t.message:"Failed to update role")}function Zs(t){ue("member_remove_failed",{error:t instanceof Error?t.message:String(t)}),G.error(t instanceof Error?t.message:"Failed to remove member")}function Xs(t){return t==="asc"?"desc":t==="desc"?null:"asc"}function en(){const t=Y.c(2);let e;t[0]===Symbol.for("react.memo_cache_sentinel")?(e=s.jsx(Ee,{children:s.jsx("div",{className:"flex items-center justify-center h-full",children:s.jsx("div",{className:"text-sm text-muted-foreground",children:"Failed to load members"})})}),t[0]=e):e=t[0];let n;return t[1]===Symbol.for("react.memo_cache_sentinel")?(n=s.jsx(Lt,{fallback:e,children:s.jsx(ce.Suspense,{fallback:s.jsx(Ee,{children:s.jsx("div",{className:"flex items-center justify-center h-full",children:s.jsx(Xe,{size:32,className:"animate-spin text-muted-foreground"})})}),children:s.jsx(Bs,{})})}),t[1]=n):n=t[1],n}function Hn(){const t=Y.c(1);let e;return t[0]===Symbol.for("react.memo_cache_sentinel")?(e=s.jsx(vs,{capability:"members:manage",area:"members",children:s.jsx(en,{})}),t[0]=e):e=t[0],e}export{Hn as default};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import{r as c,e as $,j as f,_ as O}from"./index-Dj0KvohQ.js";import{l as I,F as K}from"./index-BK9ucwVY.js";import{S as N}from"./spinner-w0j4pkm6.js";async function A(t){const e=t.getModel();if(!e)throw new Error("[Monaco] No model found in editor");const r=e.getValue(),i=r.replace(/export default (async )?function/,"export default $1function __default")+`
|
|
2
|
+
type __ExpandRecursively<T> = T extends (...args: infer A) => infer R
|
|
3
|
+
? (...args: __ExpandRecursively<A>) => __ExpandRecursively<R>
|
|
4
|
+
: T extends object
|
|
5
|
+
? T extends infer O ? { [K in keyof O]: __ExpandRecursively<O[K]> } : never
|
|
6
|
+
: T;
|
|
7
|
+
type __InferredOutput = __ExpandRecursively<Awaited<ReturnType<typeof __default>>>;
|
|
8
|
+
declare const __outputValue: __InferredOutput;
|
|
9
|
+
`;e.setValue(i);const s=e.findMatches("__outputValue",!1,!1,!1,null,!1);if(!s||s.length===0)return e.setValue(r),null;const a=s[0];if(!a)return e.setValue(r),null;const d={lineNumber:a.range.startLineNumber,column:a.range.startColumn+1};try{const y=await(await I.init()).languages.typescript.getTypeScriptWorker();if(!y)return e.setValue(r),null;const b=await y(e.uri);await new Promise(x=>setTimeout(x,100));const m=e.getOffsetAt(d),_=await b.getQuickInfoAtPosition(e.uri.toString(),m);if(e.setValue(r),_){const E=_.displayParts.map(T=>T.text).join("").replace(/^const __outputValue:\s*/,"");return h(E)}else return null}catch(o){return e.setValue(r),console.error("Error getting return type:",o),null}}function h(t){if(t=t.trim(),t==="string")return{type:"string"};if(t==="number")return{type:"number"};if(t==="boolean")return{type:"boolean"};if(t==="null")return{type:"null"};if(t==="undefined")return{type:"null"};if(t==="unknown"||t==="any")return{};if(t==="never")return{not:{}};if(t.endsWith("[]")){const n=t.slice(0,-2);return{type:"array",items:h(n)}}const e=t.match(/^Array<(.+)>$/);if(e&&e[1])return{type:"array",items:h(e[1])};const r=t.match(/^Record<(.+),\s*(.+)>$/);if(r&&r[2])return{type:"object",additionalProperties:h(r[2].trim())};if(t.includes("|")){const n=D(t);if(n.length>1)return n.every(s=>/^["']/.test(s.trim()))?{type:"string",enum:n.map(s=>s.trim().replace(/^["']|["']$/g,""))}:{anyOf:n.map(s=>h(s.trim()))}}return/^["'].*["']$/.test(t)?{type:"string",const:t.slice(1,-1)}:/^-?\d+(\.\d+)?$/.test(t)?{type:"number",const:parseFloat(t)}:t.startsWith("{")&&t.endsWith("}")?z(t):{description:`TypeScript type: ${t}`}}function D(t){const e=[];let r=0,n="";for(let i=0;i<t.length;i++){const s=t[i];if(s==="{"||s==="<"||s==="("||s==="[")r++;else if(s==="}"||s===">"||s===")"||s==="]")r--;else if(s==="|"&&r===0){e.push(n.trim()),n="";continue}n+=s}return n.trim()&&e.push(n.trim()),e}function z(t){const e=t.slice(1,-1).trim();if(!e)return{type:"object",properties:{}};const r={},n=[];let i=0,s="";for(let d=0;d<e.length;d++){const o=e[d];if(o==="{"||o==="<"||o==="("||o==="[")i++;else if(o==="}"||o===">"||o===")"||o==="]")i--;else if(o===";"&&i===0){s.trim()&&M(s.trim(),r,n),s="";continue}s+=o}s.trim()&&M(s.trim(),r,n);const a={type:"object",properties:r};return n.length>0&&(a.required=n),a}function M(t,e,r){const n=t.match(/^(\w+)(\?)?:\s*(.+)$/s);if(n){const i=n[1],s=n[2],a=n[3];i&&a&&(e[i]=h(a.trim()),s||r.push(i))}}class W extends c.Component{constructor(e){super(e),this.state={hasError:!1,mountKey:0}}static getDerivedStateFromError(e){if(e.message?.includes("InstantiationService has been disposed"))return{hasError:!0};throw e}componentDidCatch(e){e.message?.includes("InstantiationService has been disposed")&&this.setState(r=>({hasError:!1,mountKey:r.mountKey+1}))}render(){return this.state.hasError?f.jsx("div",{className:"flex items-center justify-center h-full w-full bg-white dark:bg-[#1e1e1e] text-gray-400",children:f.jsx(N,{size:"sm"})}):c.cloneElement(this.props.children,{mountKey:this.state.mountKey})}}let w=null;const J=async()=>{if(w)return w;const[t,e,r]=await Promise.all([O(()=>import("./standalone-BioU5qLH.js"),[]),O(()=>import("./typescript-Ca_eWjgL.js"),[]),O(()=>import("./estree-CRgMSIiv.js"),[])]);return w={format:t.format,plugins:[e.default,r.default]},w};I.config({paths:{vs:"https://cdn.jsdelivr.net/npm/monaco-editor@0.52.0/min/vs"}});const F={parser:"typescript",semi:!0,singleQuote:!1,tabWidth:2,trailingComma:"es5",printWidth:80},P={fontSize:13,scrollBeyondLastLine:!1,automaticLayout:!0,lineNumbersMinChars:2,stickyScroll:{enabled:!1},wordWrap:"on",folding:!0,bracketPairColorization:{enabled:!0},suggestOnTriggerCharacters:!0,quickSuggestions:{other:!0,comments:!1,strings:!0},minimap:{enabled:!1},parameterHints:{enabled:!0},inlineSuggest:{enabled:!0},autoClosingBrackets:"always",autoClosingQuotes:"always",autoSurround:"languageDefined",padding:{top:12,bottom:12},scrollbar:{vertical:"auto",horizontal:"auto",verticalScrollbarSize:8,horizontalScrollbarSize:8}},q=f.jsx("div",{className:"flex items-center justify-center h-full w-full text-gray-400",children:f.jsx(N,{size:"sm"})}),B=c.memo(function({code:e,onChange:r,onSave:n,readOnly:i=!1,height:s=300,language:a="typescript",foldOnMount:d=!1,disableDiagnostics:o=!1,mountKey:y=0}){const b=c.useRef(null),m=c.useRef(null),_=c.useRef(n);_.current=n;const x=c.useRef(a);x.current=a;const E=c.useId(),j=`${E}-${y}`,T=a==="typescript"?`file:///workflow-${E.replace(/:/g,"-")}-${y}.tsx`:void 0,V=i?{...P,readOnly:!0}:P,S=async u=>{const l=u.getModel();if(!l){console.warn("No model found");return}const g=l.getValue();if(x.current==="json"){try{const p=JSON.parse(g),R=JSON.stringify(p,null,2);if(R!==g){const v=l.getFullModelRange();u.executeEdits("json-format",[{range:v,text:R}])}}catch(p){console.error("JSON formatting failed:",p)}return}try{const{format:p,plugins:R}=await J(),v=await p(g,{...F,plugins:R});if(v!==g){const L=l.getFullModelRange();u.executeEdits("prettier",[{range:L,text:v}])}}catch(p){console.error("Prettier formatting failed:",p)}},k=async(u,l)=>{b.current=u,d&&m.current&&(m.current.style.visibility="hidden",await u.getAction("editor.foldLevel2")?.run(),m.current.style.visibility="visible"),a==="typescript"&&(l.languages.typescript.typescriptDefaults.setCompilerOptions({target:l.languages.typescript.ScriptTarget.ESNext,module:l.languages.typescript.ModuleKind.ESNext,moduleResolution:l.languages.typescript.ModuleResolutionKind.NodeJs,allowNonTsExtensions:!0,allowJs:!0,strict:!1,noEmit:!0,esModuleInterop:!0,jsx:l.languages.typescript.JsxEmit.React,allowSyntheticDefaultImports:!0}),l.languages.typescript.typescriptDefaults.setDiagnosticsOptions({noSemanticValidation:o,noSyntaxValidation:o})),u.addCommand(l.KeyMod.CtrlCmd|l.KeyCode.KeyS,async()=>{await S(u);const g=await A(u),C=u.getValue();_.current?.(C,g)})};return f.jsx("div",{ref:m,className:"h-full",children:f.jsx(K,{height:s,language:a,theme:document.documentElement.classList.contains("dark")?"vs-dark":"light",value:e,path:T,onChange:r,onMount:k,loading:q,options:V},j)})}),G=c.memo(function(e){const r=$.c(2);let n;return r[0]!==e?(n=f.jsx(W,{children:f.jsx(B,{...e})}),r[0]=e,r[1]=n):n=r[1],n});export{G as M};
|