decocms 4.308.0 → 4.309.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-BTlJp8pf.js → AlertCircle-DjJuKNpT.js} +1 -1
- package/dist/client/assets/{AreaChart-dJjxY072.js → AreaChart-kZvNKRet.js} +1 -1
- package/dist/client/assets/{ArrowLeft-BwagOJkb.js → ArrowLeft-C_Y8Bely.js} +1 -1
- package/dist/client/assets/{ArrowUp-CVoISkQ4.js → ArrowUp-BYrhsenq.js} +1 -1
- package/dist/client/assets/{Check-D5PKBQ5I.js → Check-ZUPvSIY1.js} +1 -1
- package/dist/client/assets/{CheckCircle-teyxVGFp.js → CheckCircle-dmPxKm6Q.js} +1 -1
- package/dist/client/assets/{ChevronDown-Csfjhwpm.js → ChevronDown-B5h3xBzG.js} +1 -1
- package/dist/client/assets/{ChevronRight-DUmHQrD7.js → ChevronRight-B7yQJpqe.js} +1 -1
- package/dist/client/assets/{ChevronSelectorVertical-CuAhXy3x.js → ChevronSelectorVertical-BKocJeEl.js} +1 -1
- package/dist/client/assets/{ChevronUp-Dlj_U0qV.js → ChevronUp-mam1pcOG.js} +1 -1
- package/dist/client/assets/{Copy01-CsNpp9jr.js → Copy01-Bi-8gnDf.js} +1 -1
- package/dist/client/assets/{CreditCard01-YCHpZ00A.js → CreditCard01-2q1G626x.js} +1 -1
- package/dist/client/assets/{DotsVertical-CpVcGDJ_.js → DotsVertical-CweDntTS.js} +1 -1
- package/dist/client/assets/{Download01-BN9BT9cL.js → Download01-O-pqsN1Z.js} +1 -1
- package/dist/client/assets/{Eye-DgiSa7UT.js → Eye-B11wsTiv.js} +1 -1
- package/dist/client/assets/{FilterLines-Db8-uWfr.js → FilterLines-DWRi50MF.js} +1 -1
- package/dist/client/assets/GitBranch01-BTBkNwkA.js +1 -0
- package/dist/client/assets/{Globe01-CV-16mwB.js → Globe01-DwDaYvYx.js} +1 -1
- package/dist/client/assets/{Globe04-D3O2XfOT.js → Globe04-CVhg83Sy.js} +1 -1
- package/dist/client/assets/{HardDrive-CWvDYc59.js → HardDrive-B_rUJ_6M.js} +1 -1
- package/dist/client/assets/Image01-KKf4o3Nq.js +1 -0
- package/dist/client/assets/{Key01-D4srNqPO.js → Key01-C-JhvDG5.js} +1 -1
- package/dist/client/assets/{LinkExternal01-CIL2SNWf.js → LinkExternal01-CSb7QkDd.js} +1 -1
- package/dist/client/assets/{LockUnlocked01-BpeKJGM4.js → LockUnlocked01-Bv3So7k2.js} +1 -1
- package/dist/client/assets/{LogOut01-qWWgaWbQ.js → LogOut01-DjC5EdoY.js} +1 -1
- package/dist/client/assets/{Monitor01-uq-dlf-u.js → Monitor01-wprytgTE.js} +1 -1
- package/dist/client/assets/Package-DMwvlEmW.js +1 -0
- package/dist/client/assets/{Palette-Cv68Zggp.js → Palette-tGNNpIug.js} +1 -1
- package/dist/client/assets/{Play-C9xK8clC.js → Play-DNNjmI0u.js} +1 -1
- package/dist/client/assets/{Plus-CPkR-QLd.js → Plus-DCy4MeWK.js} +1 -1
- package/dist/client/assets/{SearchLg-8daQliv2.js → SearchLg-DgOOjbgd.js} +1 -1
- package/dist/client/assets/{SearchMd-ClTH3fiN.js → SearchMd-CLw08zqm.js} +1 -1
- package/dist/client/assets/{Settings02-BMcJFHpd.js → Settings02-D7sfyUmR.js} +1 -1
- package/dist/client/assets/{Share07-CPDrxQV8.js → Share07-C56F3Gg7.js} +1 -1
- package/dist/client/assets/{Shield01-C9M_jcOJ.js → Shield01-CqA0iXsO.js} +1 -1
- package/dist/client/assets/{Stars01-BzEDQnsl.js → Stars01-DMmYT0fx.js} +1 -1
- package/dist/client/assets/{Stars02-DZNA1z2-.js → Stars02-DLV5S20i.js} +1 -1
- package/dist/client/assets/{Sun-BBWjOwQE.js → Sun-BA4C3T_x.js} +1 -1
- package/dist/client/assets/{SwitchHorizontal01-CSyGO1HX.js → SwitchHorizontal01-jUbzzC0z.js} +1 -1
- package/dist/client/assets/Tool01-Cq1KgOCX.js +1 -0
- package/dist/client/assets/{Tool02-jKKU1_dM.js → Tool02-BC_NjMLE.js} +1 -1
- package/dist/client/assets/{Trash01-Dp-QTpAR.js → Trash01-sUPXJwby.js} +1 -1
- package/dist/client/assets/{TrendUp01-DikSDrNg.js → TrendUp01-DKwxv6x5.js} +1 -1
- package/dist/client/assets/{Upload01-DxCHPffq.js → Upload01-DcDcb9rh.js} +1 -1
- package/dist/client/assets/{User01-DJ_BO2EX.js → User01-BeBX7mHS.js} +1 -1
- package/dist/client/assets/UserSquare-ClrWk75C.js +1 -0
- package/dist/client/assets/{Users01-B2wc_Wgl.js → Users01-Wyh0NzMp.js} +1 -1
- package/dist/client/assets/{Users03-BUoBV4mB.js → Users03-BmoLDMiu.js} +1 -1
- package/dist/client/assets/{XCircle-CVbKXkpd.js → XCircle-DAPVrZS5.js} +1 -1
- package/dist/client/assets/{XClose-CTv0nnSb.js → XClose-DpmiJyhV.js} +1 -1
- package/dist/client/assets/{YAxis-DxhC7uB4.js → YAxis-Chl8mkhq.js} +1 -1
- package/dist/client/assets/{Zap-MbQ2aiA8.js → Zap-Dd_sTqLD.js} +1 -1
- package/dist/client/assets/{ZapSquare-BZzRAQpm.js → ZapSquare-oLl79jhp.js} +1 -1
- package/dist/client/assets/ZoomOut-C8IyIWyv.js +1 -0
- package/dist/client/assets/{access-gate-BZ6Xc62y.js → access-gate-DZeapkSG.js} +1 -1
- package/dist/client/assets/agent-icon-Cf-ubcXW.js +1 -0
- package/dist/client/assets/agents-list-CHpqALWD.js +1 -0
- package/dist/client/assets/{ai-providers-PPaiM-vM.js → ai-providers-Dg-3WcPx.js} +2 -2
- package/dist/client/assets/{alert-CIFaGTb_.js → alert-DZ0e79vM.js} +1 -1
- package/dist/client/assets/{alert-dialog-Dh9zsaCy.js → alert-dialog-b0E3aJVR.js} +1 -1
- package/dist/client/assets/{api-keys-B5Q1NcTU.js → api-keys-PtXolhjU.js} +1 -1
- package/dist/client/assets/app-editor-BJ3x5fhn.js +1 -0
- package/dist/client/assets/{auth-D8IdOmGw.js → auth-Cae4y-0o.js} +1 -1
- package/dist/client/assets/{auth-catchall-PSQzhhPS.js → auth-catchall-CwXL0leV.js} +1 -1
- package/dist/client/assets/{auth-entry-DZQ7ulSa.js → auth-entry-C0AuTVoj.js} +1 -1
- package/dist/client/assets/{auth-split-layout-D4SJJOXB.js → auth-split-layout-D6d3VTLu.js} +1 -1
- package/dist/client/assets/{authenticate-and-persist-oauth-DY_hbkIG.js → authenticate-and-persist-oauth-BggiffQp.js} +1 -1
- package/dist/client/assets/{automation-list-row-CLAw5ACh.js → automation-list-row-UmgnHCCX.js} +1 -1
- package/dist/client/assets/automation-runs-BZxuxKnQ.js +187 -0
- package/dist/client/assets/automations-BxiRiby5.js +1 -0
- package/dist/client/assets/{avatar-D-QkiqIH.js → avatar-BPJyv_yp.js} +1 -1
- package/dist/client/assets/{badge-DX3_GQsO.js → badge-DYayppBi.js} +1 -1
- package/dist/client/assets/{block-document-D0mVcltx.js → block-document-g3Xu-Yyy.js} +2 -2
- package/dist/client/assets/{breadcrumb-Clut3vXk.js → breadcrumb-C0oEMh1_.js} +1 -1
- package/dist/client/assets/{buckets-CNyoBCui.js → buckets-yzHKHE-P.js} +1 -1
- package/dist/client/assets/bulk-category-panel-BmQqUgQl.js +1 -0
- package/dist/client/assets/{capability-load-error-BtIV807c.js → capability-load-error-CEZm3Rty.js} +1 -1
- package/dist/client/assets/cards-CQcoFp8K.js +8 -0
- package/dist/client/assets/category-editor-DJgTtbgj.js +1 -0
- package/dist/client/assets/{chart-BS94Bf-2.js → chart-CMkD0KRw.js} +3 -3
- package/dist/client/assets/chat-context-By9g0pMv.js +35 -0
- package/dist/client/assets/{checkbox-Gg7TSWGl.js → checkbox-Dj1W7iKN.js} +1 -1
- package/dist/client/assets/choose-editor-CC7UTJ07.js +1 -0
- package/dist/client/assets/{cli-auth-success-DMKVkxdU.js → cli-auth-success-DVoGs8GQ.js} +1 -1
- package/dist/client/assets/collection-detail-BQBEKUzV.js +1 -0
- package/dist/client/assets/{collection-display-button-jLXxSVGC.js → collection-display-button-8EhZbHh8.js} +1 -1
- package/dist/client/assets/{collection-search-0N-i_PHL.js → collection-search-D5Jm79GZ.js} +1 -1
- package/dist/client/assets/{collection-table-wrapper-CMhDJ32A.js → collection-table-wrapper-B63M1DMH.js} +1 -1
- package/dist/client/assets/{collection-tabs-PM6yowhG.js → collection-tabs-DDz6-tV8.js} +1 -1
- package/dist/client/assets/{command-JNsPUZwg.js → command-DgcmgCwM.js} +1 -1
- package/dist/client/assets/commerce-onboarding-CFRouO_K.js +1 -0
- package/dist/client/assets/{config-DFqhM__G.js → config-BG9lp5Ie.js} +1 -1
- package/dist/client/assets/{connect-CpvsClHG.js → connect-r-sErQKS.js} +1 -1
- package/dist/client/assets/{connection-CUtGFjSN.js → connection-B4FMHKiF.js} +1 -1
- package/dist/client/assets/{connection-card-B1T5pd1c.js → connection-card-Dzq4GEyY.js} +1 -1
- package/dist/client/assets/connection-detail-r6grJ79A.js +1 -0
- package/dist/client/assets/{connection-form-helpers-CYKg-GvJ.js → connection-form-helpers-CeLJ06vB.js} +1 -1
- package/dist/client/assets/connections-C2iSPc_1.js +1 -0
- package/dist/client/assets/{decopilot-sse-pool-BN-M5EUb.js → decopilot-sse-pool-C9fas7Vk.js} +1 -1
- package/dist/client/assets/{dialog-BI8UUwqv.js → dialog-B5Dwp711.js} +1 -1
- package/dist/client/assets/{domain-settings-D4HjDgqu.js → domain-settings-CRMwTS13.js} +1 -1
- package/dist/client/assets/{drawer-BR22I8_f.js → drawer-Tjt4C6S1.js} +1 -1
- package/dist/client/assets/{dropdown-menu-wKA_-hY5.js → dropdown-menu-7qTT1CWl.js} +1 -1
- package/dist/client/assets/editor-C9Tecalh.js +11 -0
- package/dist/client/assets/{empty-state-DAYLBxJ6.js → empty-state-DyGa8RH-.js} +1 -1
- package/dist/client/assets/{extract-connection-data-6cVSTGuY.js → extract-connection-data-cywUSCzT.js} +1 -1
- package/dist/client/assets/file-explorer-CdfPHZ9s.js +2 -0
- package/dist/client/assets/{file-type-icon-QfVGs4d0.js → file-type-icon-Ba1IUiXw.js} +1 -1
- package/dist/client/assets/folder-icon-XSSu5IpM.js +2 -0
- package/dist/client/assets/{form-DauSI86Q.js → form-BG9VOij0.js} +1 -1
- package/dist/client/assets/general-BwmmanPv.js +1 -0
- package/dist/client/assets/{github-repo-picker-sKX6qrmQ.js → github-repo-picker-CtpLpFkt.js} +1 -1
- package/dist/client/assets/{hooks-DQmp7LHz.js → hooks-CIXp5r-O.js} +6 -6
- package/dist/client/assets/index-BFgc8ZC7.css +1 -0
- package/dist/client/assets/{index-BdFaTbMe.js → index-BduQMnBH.js} +67 -70
- package/dist/client/assets/{index-B9iOsEIc.js → index-Bpjqwflb.js} +1 -1
- package/dist/client/assets/{index-De-kCEdQ.js → index-CN_9lpLS.js} +1 -1
- package/dist/client/assets/{index-q2Rm7O_h.js → index-CwxzUISD.js} +1 -1
- package/dist/client/assets/{index-Ci8azyOE.js → index-D1nhmf1Q.js} +47 -47
- package/dist/client/assets/{index-DKFNY2Yv.js → index-Dc_4GJkg.js} +1 -1
- package/dist/client/assets/{index-BYBf2qjQ.js → index-Dd4VT4PK.js} +1 -1
- package/dist/client/assets/index-DrfWMe2_.js +1 -0
- package/dist/client/assets/{index-BMBPxk-z.js → index-mBM2IXZW.js} +2 -2
- package/dist/client/assets/{index-redirect-DVfxG1gJ.js → index-redirect-ia2R20RS.js} +1 -1
- package/dist/client/assets/{infra-billing-BEtRM-w8.js → infra-billing-BD1CW7CR.js} +1 -1
- package/dist/client/assets/{input-Bwz-dTwg.js → input-CNoT6UPP.js} +1 -1
- package/dist/client/assets/{integration-icon-CGnrGZxM.js → integration-icon-CoEwUt3R.js} +1 -1
- package/dist/client/assets/{invite-member-dialog-D8XHQ0du.js → invite-member-dialog-CKmQ1zCK.js} +1 -1
- package/dist/client/assets/{label-C1OhLpvf.js → label-Bh-QPCS-.js} +1 -1
- package/dist/client/assets/{layout-DdQ7AbmJ.js → layout-CLwoInAC.js} +1 -1
- package/dist/client/assets/location-oTTXFrSF.js +1 -0
- package/dist/client/assets/{login-CaBX2Zyr.js → login-QAXGHnIi.js} +1 -1
- package/dist/client/assets/markdown-rou3FpXf.js +94 -0
- package/dist/client/assets/{mcp-oauth-GWhqBwu1.js → mcp-oauth-CE5hKicF.js} +1 -1
- package/dist/client/assets/{members-CoSugncV.js → members-B8o9jnvz.js} +1 -1
- package/dist/client/assets/monaco-editor-DN5vmqgz.js +9 -0
- package/dist/client/assets/{monitoring-stats-row-BKiTJqu0.js → monitoring-stats-row-DDwBOJYJ.js} +1 -1
- package/dist/client/assets/{multi-select-CIx6xi2O.js → multi-select-PmQQKBEJ.js} +1 -1
- package/dist/client/assets/{oauth-callback-D_4qsGLU.js → oauth-callback-BTwkETTY.js} +1 -1
- package/dist/client/assets/{oauth-callback-ai-provider-N2nxuW4H.js → oauth-callback-ai-provider-B36m2PdR.js} +1 -1
- package/dist/client/assets/{onboarding-c1-zuWRK.js → onboarding-B7UiVZMe.js} +1 -1
- package/dist/client/assets/{org-layout-D7r6nyax.js → org-layout-Cta6KhVE.js} +1 -1
- package/dist/client/assets/{organization-choice-DZuaojdz.js → organization-choice-DsVuGX_V.js} +1 -1
- package/dist/client/assets/{orgs-_zNVp-L6.js → orgs-S1ZvAnwW.js} +1 -1
- package/dist/client/assets/page-seo-form-DWU9_oLp.js +1 -0
- package/dist/client/assets/{popover-ClwD_xra.js → popover-CSROd4Pq.js} +1 -1
- package/dist/client/assets/post-calendar-DnBcHCrt.js +1 -0
- package/dist/client/assets/post-editor-Dy5KQxk9.js +1 -0
- package/dist/client/assets/{primitives-BKjHT0m_.js → primitives-CN6snzkm.js} +1 -1
- package/dist/client/assets/{profile-fPJ06K0g.js → profile-nuS6Yk5T.js} +1 -1
- package/dist/client/assets/project-app-view-C_jy-ABo.js +1 -0
- package/dist/client/assets/{prompts-BiA_3uUl.js → prompts-BCNUssxD.js} +1 -1
- package/dist/client/assets/record-editor-CfXTz8BC.js +1 -0
- package/dist/client/assets/redirect-editor-DLlB67fs.js +1 -0
- package/dist/client/assets/registry-BqWXEeDm.js +2 -0
- package/dist/client/assets/{registry-layout-C3aeIwiX.js → registry-layout-EKuJfy7J.js} +1 -1
- package/dist/client/assets/{reports-ZfNOoqaN.js → reports-4CXjspNj.js} +2 -2
- package/dist/client/assets/{require-capability-cxyKBT59.js → require-capability-BhVqfFum.js} +1 -1
- package/dist/client/assets/{required-auth-layout-CUQaC9Hr.js → required-auth-layout-C8d0oW7e.js} +1 -1
- package/dist/client/assets/{reset-password-ipLYYDOf.js → reset-password-DCS_OBA1.js} +1 -1
- package/dist/client/assets/review-settings-DLji_woR.js +1 -0
- package/dist/client/assets/roles-CxDg8XGc.js +1 -0
- package/dist/client/assets/{scroll-area-RteS0-Yk.js → scroll-area-Biplguze.js} +1 -1
- package/dist/client/assets/{search-input-CevwWux3.js → search-input-D7l-IL8-.js} +1 -1
- package/dist/client/assets/{secrets-ojCsqN5b.js → secrets-CdQE1y1N.js} +1 -1
- package/dist/client/assets/sections-editor-D6DEbCwS.js +2 -0
- package/dist/client/assets/{select-C7Q2VGxk.js → select-XohvCz94.js} +1 -1
- package/dist/client/assets/{select-model-C03zAz7l.js → select-model-DR-3F_PJ.js} +2 -2
- package/dist/client/assets/{self-tool-result-BSLlHbcp.js → self-tool-result-Bwv5npAG.js} +1 -1
- package/dist/client/assets/seo-editor-pMQb_Xzr.js +1 -0
- package/dist/client/assets/settings-layout-D_ayBbtJ.js +1 -0
- package/dist/client/assets/{shell-controls-BMTxwot2.js → shell-controls-CDj8s28i.js} +1 -1
- package/dist/client/assets/shell-layout-1GlczZzE.js +1 -0
- package/dist/client/assets/skill-preview-BFC0MmFr.js +4 -0
- package/dist/client/assets/skills-z7Ay-Seh.js +1 -0
- package/dist/client/assets/{spinner-B9x-ViPH.js → spinner-DoWdooyo.js} +1 -1
- package/dist/client/assets/{sso-9kD1uEp6.js → sso-CFWWagSe.js} +1 -1
- package/dist/client/assets/{store-DVSsps0V.js → store-pxFG_Ntd.js} +1 -1
- package/dist/client/assets/store-registry-exZfMLJK.js +2 -0
- package/dist/client/assets/super-agent-icon-CqDeROSm.js +1 -0
- package/dist/client/assets/{switch-BuJnEOUw.js → switch-wsucwW9_.js} +1 -1
- package/dist/client/assets/synced-repos-Bjdq7U5H.js +1 -0
- package/dist/client/assets/{table-oIbRw7Yk.js → table-CLp_oiC_.js} +1 -1
- package/dist/client/assets/{tabs-CFhQLpsD.js → tabs-uFCnOWIo.js} +1 -1
- package/dist/client/assets/{task-board-Cz-fiaKF.js → task-board-BWv9Grjq.js} +1 -1
- package/dist/client/assets/tasks-D2tIVghW.js +1 -0
- package/dist/client/assets/{textarea-CMpN0SgX.js → textarea-C2acFNIs.js} +1 -1
- package/dist/client/assets/thread-route-xzCED6O0.js +1 -0
- package/dist/client/assets/{toggle-group-ClOqwWDq.js → toggle-group-BXusQXp8.js} +1 -1
- package/dist/client/assets/{toolbar-KH-9Bre4.js → toolbar-21jqQEeK.js} +1 -1
- package/dist/client/assets/{track-DXtvDI_s.js → track-CjpC-d64.js} +1 -1
- package/dist/client/assets/{types-BGVeElFe.js → types-CQ8RViPH.js} +1 -1
- package/dist/client/assets/{use-ai-providers-DlWIkMD-.js → use-ai-providers-fDwPI_r7.js} +1 -1
- package/dist/client/assets/{use-api-keys-D0NAsvsx.js → use-api-keys-pH2tUsCP.js} +1 -1
- package/dist/client/assets/{use-automations-CWqvHqj2.js → use-automations-BrEd1HS7.js} +1 -1
- package/dist/client/assets/{use-autosave-D1zPEM1D.js → use-autosave-CrHqx062.js} +1 -1
- package/dist/client/assets/{use-connection-gqhqm1hO.js → use-connection-DY8ejT4K.js} +1 -1
- package/dist/client/assets/{use-copy-BY1mlr6R.js → use-copy-lu2XtDcW.js} +1 -1
- package/dist/client/assets/{use-create-virtual-mcp-Dzmlrw8C.js → use-create-virtual-mcp-DLVdkwU0.js} +1 -1
- package/dist/client/assets/{use-debounced-autosave-j0VBccs2.js → use-debounced-autosave-v8vHMC8M.js} +1 -1
- package/dist/client/assets/{use-debounced-value-BENALn-i.js → use-debounced-value-CpWnVjpN.js} +1 -1
- package/dist/client/assets/{use-decopilot-events-CqU7DunK.js → use-decopilot-events-Bb9JzQxj.js} +1 -1
- package/dist/client/assets/{use-delete-connection-BwHeDNps.js → use-delete-connection-B4PKULFK.js} +1 -1
- package/dist/client/assets/{use-deployment-admin-CQiRFTsL.js → use-deployment-admin-etxLracY.js} +1 -1
- package/dist/client/assets/{use-destination-route-d8wgPDBu.js → use-destination-route-Dke-BCSN.js} +1 -1
- package/dist/client/assets/{use-file-configs-BAUKJMmN.js → use-file-configs-k1SljoDC.js} +1 -1
- package/dist/client/assets/{use-infinite-scroll-Cw7R-QWe.js → use-infinite-scroll-FPrsNBWO.js} +1 -1
- package/dist/client/assets/{use-join-requests-CBEK68HB.js → use-join-requests-CcGL_7R0.js} +1 -1
- package/dist/client/assets/{use-mcp-auth-status-7KFU7IPU.js → use-mcp-auth-status-B7JYyzah.js} +1 -1
- package/dist/client/assets/{use-mcp-client-DP2onozC.js → use-mcp-client-DGIxZdqr.js} +2 -2
- package/dist/client/assets/{use-mcp-tools-B7yHzu9T.js → use-mcp-tools-0Gmx3Go4.js} +1 -1
- package/dist/client/assets/{use-members-IwrDPxqz.js → use-members-DOoZZCC8.js} +1 -1
- package/dist/client/assets/{use-navigate-to-agent-mrg2_DxJ.js → use-navigate-to-agent-BYMKlpeP.js} +1 -1
- package/dist/client/assets/{use-org-auth-client-HXTuHVWD.js → use-org-auth-client-DFlTPB6z.js} +1 -1
- package/dist/client/assets/{use-org-repo-syncs-rlkQHsUF.js → use-org-repo-syncs-Di8krs9u.js} +1 -1
- package/dist/client/assets/{use-org-sso-C-uWWD5m.js → use-org-sso-DnJHJ0ab.js} +1 -1
- package/dist/client/assets/{use-organization-roles-CQ2UVvkm.js → use-organization-roles-CRZSYOKW.js} +1 -1
- package/dist/client/assets/{use-organization-settings-BAFLKQ3y.js → use-organization-settings-CbtAN2yQ.js} +1 -1
- package/dist/client/assets/use-panel-navigate-Cy7dVYfh.js +1 -0
- package/dist/client/assets/{use-registry-connections-DghvIzKh.js → use-registry-connections-LtvlJMIF.js} +1 -1
- package/dist/client/assets/{use-secrets-CvibJ_Hx.js → use-secrets-AR7RAzOL.js} +1 -1
- package/dist/client/assets/{use-section-preview-base-DTnA68XU.js → use-section-preview-base-CtbnouVn.js} +1 -1
- package/dist/client/assets/{use-status-sounds-kx6TUHpf.js → use-status-sounds-B4oWCXWI.js} +1 -1
- package/dist/client/assets/{use-tags-CGJ43yMs.js → use-tags-J8qdyedc.js} +1 -1
- package/dist/client/assets/{use-view-mode-Bn3--gRi.js → use-view-mode-O997mo4M.js} +1 -1
- package/dist/client/assets/{use-virtual-mcp-Dj0wXB98.js → use-virtual-mcp-DiC7BmKe.js} +1 -1
- package/dist/client/assets/useInfiniteQuery-aiOGy3p0.js +1 -0
- package/dist/client/assets/useSuspenseInfiniteQuery-CThWEWzr.js +1 -0
- package/dist/client/assets/{users-B_7Qs-RF.js → users-D-_GZOQV.js} +1 -1
- package/dist/client/assets/variant-calendar-BXPwySCy.js +1 -0
- package/dist/client/assets/{view-mode-toggle-CcmqoSVC.js → view-mode-toggle-CYp_M5Ic.js} +1 -1
- package/dist/client/index.html +2 -2
- package/dist/server/cli.js +1 -1
- package/dist/server/server.js +1 -1
- package/package.json +1 -1
- package/dist/client/assets/Tool01-va49aYq9.js +0 -1
- package/dist/client/assets/UserSquare-CwU4sG2o.js +0 -1
- package/dist/client/assets/agent-icon-DCM1Bdl8.js +0 -1
- package/dist/client/assets/agents-list-BblEB_Yy.js +0 -1
- package/dist/client/assets/app-editor-I_aUhOen.js +0 -1
- package/dist/client/assets/automation-runs-GCI7uxIE.js +0 -280
- package/dist/client/assets/automations-BQ1HpMVH.js +0 -1
- package/dist/client/assets/bulk-category-panel-CsF_6FI0.js +0 -1
- package/dist/client/assets/cards-4fPEe6ST.js +0 -9
- package/dist/client/assets/category-editor-D5nV2a1F.js +0 -1
- package/dist/client/assets/chat-context-CmwZXAhQ.js +0 -35
- package/dist/client/assets/choose-editor-2zkSgPsA.js +0 -1
- package/dist/client/assets/collection-detail-DHWV_lB6.js +0 -1
- package/dist/client/assets/commerce-onboarding-BAlSxXoB.js +0 -1
- package/dist/client/assets/connection-detail-DZEeMz2b.js +0 -1
- package/dist/client/assets/connections-Cd3u8u7a.js +0 -1
- package/dist/client/assets/file-explorer-hutSgELN.js +0 -2
- package/dist/client/assets/general-BmUVO2yQ.js +0 -1
- package/dist/client/assets/index-D3IpXIE1.js +0 -1
- package/dist/client/assets/index-DJSuP9VA.css +0 -1
- package/dist/client/assets/monaco-editor-CQbDSum8.js +0 -19
- package/dist/client/assets/page-seo-form-kQ_gqmTd.js +0 -1
- package/dist/client/assets/post-calendar-DJZelBC2.js +0 -1
- package/dist/client/assets/post-editor-C5Ee-UkR.js +0 -1
- package/dist/client/assets/project-app-view-DZuDq3zQ.js +0 -1
- package/dist/client/assets/record-editor-DGXTnpF6.js +0 -1
- package/dist/client/assets/redirect-editor-V6SQ4gS6.js +0 -1
- package/dist/client/assets/registry-BYqWHQgR.js +0 -2
- package/dist/client/assets/review-settings-kV6Wbxhl.js +0 -1
- package/dist/client/assets/roles-Dcj4t-Mv.js +0 -1
- package/dist/client/assets/sections-editor-VI00Nblu.js +0 -2
- package/dist/client/assets/seo-editor-CObQJqAB.js +0 -1
- package/dist/client/assets/settings-layout-Bbbz4btQ.js +0 -1
- package/dist/client/assets/shell-layout-i3nUAnDL.js +0 -1
- package/dist/client/assets/store-registry-BiGqjfDg.js +0 -2
- package/dist/client/assets/super-agent-icon-DbGhAnlL.js +0 -1
- package/dist/client/assets/synced-repos-XSy5K1eb.js +0 -1
- package/dist/client/assets/tasks-D-zkYbxa.js +0 -1
- package/dist/client/assets/use-panel-navigate-BsVeEWlx.js +0 -1
- package/dist/client/assets/useInfiniteQuery-DjjzlWAZ.js +0 -1
- package/dist/client/assets/useSuspenseInfiniteQuery-Ci5SesMe.js +0 -1
- package/dist/client/assets/variant-calendar-BdYlnVxu.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as V,G as Fe,r as v,e as ce,q as Q,j as t,n as N,B as xe,p as Be,o as $e,K as me,c as fe,b as be,S as _e}from"./index-Ci8azyOE.js";import{I as ee}from"./input-Bwz-dTwg.js";import{i as Ve}from"./use-is-desktop-app-BNujXJc_.js";import{S as Qe}from"./spinner-B9x-ViPH.js";import{r as ze,R as He}from"./retry-CErkP7V6.js";const Le={submitEmailPassword:({mode:i,email:e,password:m,name:f})=>i==="sign_up"?V.signUp.email({email:e,password:m,name:f||""}):V.signIn.email({email:e,password:m}),requestPasswordReset:({email:i,redirectTo:e})=>V.requestPasswordReset({email:i,redirectTo:e}),sendOtp:({email:i})=>V.emailOtp.sendVerificationOtp({email:i,type:"sign-in"}),submitOtp:({email:i,otp:e})=>V.signIn.emailOtp({email:i,otp:e}),socialSignIn:({provider:i,callbackURL:e})=>V.signIn.social({provider:i,callbackURL:e}),ssoSignIn:({providerId:i,callbackURL:e})=>V.signIn.sso({providerId:i,callbackURL:e}),onAuthenticated:i=>{window.location.href=i}},ue="font-medium text-[#8CAA25] hover:underline disabled:opacity-50",Ke={signUpFailed:"Sign up failed",signInFailed:"Sign in failed",authenticationFailed:"Authentication failed",resetEmailFailed:"Failed to send reset email",otpSendFailed:"Failed to send code",invalidCode:"Invalid code",invalidEmail:"Invalid email address",invalidEmailOrPassword:"Invalid email or password. Please try again.",accountExists:"An account with this email already exists. Try signing in instead.",networkError:"Network error. Please check your connection and try again.",tooManyAttempts:"Too many attempts. Please wait a moment and try again.",invalidOrExpiredCode:"Invalid or expired code. Please try again.",genericError:"An error occurred. Please try again.",resetPasswordTitle:"Reset your password",verificationCodeTitle:"Enter verification code",welcomeTitle:"Welcome to deco",resetPasswordSubtitle:"We'll send you a reset link",codeSentTo:i=>`Code sent to ${i}`,defaultSubtitle:"Sign in or create a new account",resetEmailSent:"Check your email for a password reset link.",continueWith:i=>`Continue with ${i}`,divider:"or",emailLabel:"Email",emailPlaceholder:"Email address",sending:"Sending...",sendCode:"Send code",verificationCodeLabel:"Verification code",enterCodePlaceholder:"Enter code",verifying:"Verifying...",verify:"Verify",useDifferentEmail:"Use a different email",sendResetLink:"Send reset link",nameLabel:"Name",namePlaceholder:"Your name",passwordLabel:"Password",forgotPassword:"Forgot password?",creatingAccount:"Creating account...",signingIn:"Signing in...",continue:"Continue",backToSignIn:"Back to sign in",signInWithPassword:"Sign in with password instead",alreadyHaveAccount:"Already have an account? ",dontHaveAccount:"Don't have an account? ",signIn:"Sign in",signUp:"Sign up",signInWithEmailCode:"Sign in with email code"};function Ge({redirectUrl:i,callbackUrl:e="/",title:m,subtitle:f,brand:p,copy:u,variant:r="default",allowedSocialProviders:d,allowPassword:g=!0,onAuthEvent:k,actions:A}){const{emailAndPassword:C,resetPassword:w,emailOtp:y,socialProviders:S}=Fe(),o={...Le,...A},c=s=>{try{k?.(s)}catch{}},P=r==="compact",te=d?S.providers.filter(s=>d.includes(s.name)):S.providers,se=S.enabled&&te.length>0,oe=C.enabled&&(g||!y.enabled&&!se),le=S.enabled&&S.providers.length>0&&!se&&!y.enabled&&!oe?S.providers:te,h=S.enabled&&le.length>0,F=C.enabled&&(g||!y.enabled&&!h),[b,_]=v.useState(""),[L,z]=v.useState(""),[B,O]=v.useState(""),[D,a]=v.useState(""),[x,M]=v.useState(!1),[q,W]=v.useState(()=>y.enabled?"emailOtp":globalThis.localStorage?.getItem("hasLoggedIn")!=="true"?"signUp":"signIn"),[j,H]=v.useState(""),[ye,ve]=v.useState(!1),[Oe,he]=v.useState(null),n={...Ke,...u},ne=v.useId(),K=`${ne}-email`,G=`${ne}-email-error`,we=`${ne}-name`,Ee=`${ne}-password`,Se=`${ne}-otp`,I=q==="signUp",U=q==="forgotPassword",T=q==="emailOtp",ie=ce({mutationFn:async({email:s,password:l,name:R})=>{try{const Z=await o.submitEmailPassword({mode:I?"sign_up":"sign_in",email:s,password:l,name:R});if(Z.error)throw new Error(Z.error.message||(I?n.signUpFailed:n.signInFailed));return Z}catch(Z){throw Z instanceof Error?Z:new Error(n.authenticationFailed)}},onMutate:()=>{c({type:"started",method:"email_password",mode:I?"sign_up":"sign_in"})},onSuccess:()=>{c({type:"succeeded",method:"email_password",mode:I?"sign_up":"sign_in"}),globalThis.localStorage?.setItem("hasLoggedIn","true"),o.onAuthenticated(i??e)},onError:s=>{c({type:"failed",method:"email_password",mode:I?"sign_up":"sign_in",stage:"authenticate",error:s instanceof Error?s.message:String(s)}),Q(I?"user_signup_failed":"user_signin_failed",{error:s instanceof Error?s.message:String(s)})}}),re=ce({mutationFn:async({email:s})=>{const l=await o.requestPasswordReset({email:s,redirectTo:"/reset-password"});if(l.error)throw new Error(l.error.message||n.resetEmailFailed);return l},onSuccess:()=>{Q("password_reset_requested"),ve(!0)},onError:s=>{Q("password_reset_request_failed",{error:s instanceof Error?s.message:String(s)})}}),Y=ce({mutationFn:async({email:s})=>{const l=await o.sendOtp({email:s});if(l.error)throw new Error(l.error.message||n.otpSendFailed);return l},onMutate:()=>{c({type:"started",method:"email_otp"})},onSuccess:()=>{c({type:"otp_sent",method:"email_otp"}),Q("email_otp_sent"),M(!0)},onError:s=>{c({type:"failed",method:"email_otp",stage:"send_otp",error:s instanceof Error?s.message:String(s)}),Q("email_otp_send_failed",{error:s instanceof Error?s.message:String(s)})}}),J=ce({mutationFn:async({email:s,otp:l})=>{const R=await o.submitOtp({email:s,otp:l});if(R.error)throw new Error(R.error.message||n.invalidCode);return R},onMutate:()=>{c({type:"otp_submitted",method:"email_otp"})},onSuccess:()=>{c({type:"succeeded",method:"email_otp"}),globalThis.localStorage?.setItem("hasLoggedIn","true"),o.onAuthenticated(i??e)},onError:s=>{c({type:"failed",method:"email_otp",stage:"verify_otp",error:s instanceof Error?s.message:String(s)}),Q("email_otp_verify_failed",{error:s instanceof Error?s.message:String(s)})}}),de=s=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(s),pe=()=>{b.trim()&&!de(b)&&H(n.invalidEmail)},Te=s=>{if(s.preventDefault(),!de(b)){H(n.invalidEmail),c({type:"failed",method:"email_password",mode:I?"sign_up":"sign_in",stage:"validation",error:"invalid_email"});return}ie.mutate({email:b,password:L,name:B})},Re=s=>{if(s.preventDefault(),!de(b)){H(n.invalidEmail);return}re.mutate({email:b})},De=s=>{if(s.preventDefault(),!de(b)){H(n.invalidEmail),c({type:"failed",method:"email_otp",stage:"validation",error:"invalid_email"});return}Y.mutate({email:b})},Me=s=>{s.preventDefault(),J.mutate({email:b,otp:D})},X=s=>l=>{s(l.target.value),je&&ie.reset(),Ne&&re.reset(),Ae&&(Y.reset(),J.reset()),s===_&&j&&H("")},ae=s=>{W(s),O(""),a(""),M(!1),H(""),ve(!1),he(null),ie.reset(),re.reset(),Y.reset(),J.reset()},E=ie.isPending||re.isPending||Y.isPending||J.isPending,je=ie.error,Ne=re.error,Ae=Y.error||J.error,$=I?b.trim()&&L.trim()&&B.trim():U?b.trim():T?x?D.trim():b.trim():b.trim()&&L.trim(),qe=s=>{if(!s)return null;const l=s.message.toLowerCase();return l.includes("unauthorized")||l.includes("401")?n.invalidEmailOrPassword:l.includes("already exists")||l.includes("409")?n.accountExists:l.includes("network")||l.includes("fetch")?n.networkError:l.includes("rate limit")||l.includes("429")?n.tooManyAttempts:l.includes("invalid")&&l.includes("otp")?n.invalidOrExpiredCode:s.message||n.genericError},Pe=je||Ne||Ae||Oe,We=async s=>{c({type:"started",method:"social",provider:s}),he(null);try{const l=await o.socialSignIn({provider:s,callbackURL:i??e});if(l.error)throw new Error(l.error.message||n.authenticationFailed)}catch(l){const R=l instanceof Error?l.message:String(l);c({type:"failed",method:"social",provider:s,stage:"redirect",error:R}),Q("social_signin_failed",{provider:s,error:R}),he(l instanceof Error?l:new Error(R))}},Ue=U?n.resetPasswordTitle:T&&x?n.verificationCodeTitle:m??n.welcomeTitle,Ce=U?n.resetPasswordSubtitle:T&&x?n.codeSentTo(b):f===void 0?n.defaultSubtitle:f;return t.jsxs("div",{className:N("grid w-full",P?"gap-5":"gap-10"),children:[p??t.jsxs("div",{children:[t.jsx("img",{src:"/logos/deco logo.svg",alt:"Deco",className:"h-12 w-12 dark:hidden"}),t.jsx("img",{src:"/logos/deco logo negative.svg",alt:"Deco",className:"h-12 w-12 hidden dark:block"})]}),t.jsxs("div",{className:"space-y-2",children:[t.jsx("h1",{className:N("font-medium",P?"text-xl leading-7":"text-2xl leading-8"),children:Ue}),Ce&&t.jsx("p",{className:N("text-muted-foreground",P?"text-sm leading-5":"text-base leading-6"),children:Ce})]}),Pe&&t.jsx("div",{role:"alert",className:"rounded-xl bg-destructive/10 p-3 text-sm text-destructive text-center",children:qe(Pe)}),ye&&t.jsx("div",{role:"status",className:"rounded-xl bg-success/10 p-3 text-sm text-success text-center",children:n.resetEmailSent}),!U&&!(T&&x)&&h&&t.jsx("div",{className:"grid gap-2",children:le.map(s=>t.jsxs("button",{type:"button",disabled:E,onClick:()=>{We(s.name)},className:N("flex w-full items-center justify-center gap-3 bg-background px-3 text-sm font-medium text-foreground card-shadow transition-colors hover:bg-accent hover:text-accent-foreground disabled:pointer-events-none disabled:opacity-50 dark:bg-input/30 dark:hover:bg-input/50",P?"h-11 rounded-lg":"h-12 rounded-xl"),children:[s.icon&&t.jsx("img",{src:s.icon,alt:"",className:N("h-5 w-5",s.name==="github"&&"dark:invert"),"aria-hidden":"true"}),n.continueWith(s.name.charAt(0).toUpperCase()+s.name.slice(1))]},s.name))}),!U&&!(T&&x)&&h&&(F||y.enabled)&&t.jsxs("div",{className:N("flex items-center gap-2.5",P?"my-0":"-my-4"),children:[t.jsx("div",{className:"h-px flex-1 bg-border"}),t.jsx("span",{className:N("text-muted-foreground",P?"text-sm":"text-base"),children:n.divider}),t.jsx("div",{className:"h-px flex-1 bg-border"})]}),T&&y.enabled&&t.jsx(t.Fragment,{children:x?t.jsxs("form",{onSubmit:Me,className:N("grid gap-2",P&&"sm:grid-cols-[minmax(0,1fr)_auto] sm:items-start"),children:[t.jsxs("div",{className:"grid gap-2",children:[t.jsx("label",{htmlFor:Se,className:N("text-sm font-medium text-foreground",P&&"sr-only"),children:n.verificationCodeLabel}),t.jsx(ee,{id:Se,type:"text",placeholder:n.enterCodePlaceholder,value:D,onChange:X(a),required:!0,disabled:E,autoFocus:!0,inputMode:"numeric",autoComplete:"one-time-code",className:"h-11 rounded-lg"})]}),t.jsx("button",{type:"submit",disabled:E||!$,className:N("flex items-center justify-center rounded-lg bg-primary px-4 text-sm font-medium text-primary-foreground transition-colors hover:bg-primary/80 disabled:pointer-events-none disabled:opacity-50",P?"h-11 sm:w-auto":"h-12 w-full"),children:E?n.verifying:n.verify}),t.jsx("button",{type:"button",onClick:()=>{M(!1),a(""),Y.reset(),J.reset()},disabled:E,className:N("mt-1 text-sm text-muted-foreground transition-colors hover:text-foreground",P&&"sm:col-span-2"),children:n.useDifferentEmail})]}):t.jsxs("form",{onSubmit:De,className:N("grid gap-2",P&&"sm:grid-cols-[minmax(0,1fr)_auto] sm:items-start"),children:[t.jsxs("div",{className:"grid gap-2",children:[t.jsx("label",{htmlFor:K,className:N("text-sm font-medium text-foreground",P&&"sr-only"),children:n.emailLabel}),t.jsx(ee,{id:K,type:"email",placeholder:n.emailPlaceholder,value:b,onChange:X(_),onBlur:pe,required:!0,disabled:E,autoComplete:"email","aria-invalid":!!j,"aria-describedby":j?G:void 0,className:"h-11 rounded-lg"}),j&&t.jsx("p",{id:G,role:"alert",className:"text-xs text-destructive",children:j})]}),t.jsx("button",{type:"submit",disabled:E||!$,className:N("flex items-center justify-center rounded-lg bg-primary px-4 text-sm font-medium text-primary-foreground transition-colors hover:bg-primary/80 disabled:pointer-events-none disabled:opacity-50",P?"h-11 sm:w-auto":"h-12 w-full"),children:E?n.sending:n.sendCode})]})}),U&&F&&!ye&&t.jsxs("form",{onSubmit:Re,className:"grid gap-4",children:[t.jsxs("div",{children:[t.jsx("label",{htmlFor:K,className:"block text-sm font-medium text-foreground mb-2",children:n.emailLabel}),t.jsx(ee,{id:K,type:"email",placeholder:"you@example.com",value:b,onChange:X(_),onBlur:pe,required:!0,disabled:E,autoComplete:"email","aria-invalid":!!j,"aria-describedby":j?G:void 0,className:"h-11 rounded-lg"}),j&&t.jsx("p",{id:G,role:"alert",className:"text-xs text-destructive mt-1.5",children:j})]}),t.jsx(xe,{type:"submit",disabled:E||!$,className:"w-full font-semibold",size:"xl",children:E?n.sending:n.sendResetLink})]}),!U&&!T&&F&&t.jsxs("form",{onSubmit:Te,className:"grid gap-5",children:[I&&t.jsxs("div",{children:[t.jsx("label",{htmlFor:we,className:"block text-sm font-medium text-foreground mb-2",children:n.nameLabel}),t.jsx(ee,{id:we,type:"text",placeholder:n.namePlaceholder,value:B,onChange:X(O),required:!0,disabled:E,autoComplete:"name",className:"h-11 rounded-lg"})]}),t.jsxs("div",{children:[t.jsx("label",{htmlFor:K,className:"block text-sm font-medium text-foreground mb-2",children:n.emailLabel}),t.jsx(ee,{id:K,type:"email",placeholder:"you@example.com",value:b,onChange:X(_),onBlur:pe,required:!0,disabled:E,autoComplete:"email","aria-invalid":!!j,"aria-describedby":j?G:void 0,className:"h-11 rounded-lg"}),j&&t.jsx("p",{id:G,role:"alert",className:"text-xs text-destructive mt-1.5",children:j})]}),t.jsxs("div",{children:[t.jsxs("div",{className:"flex items-center justify-between mb-2",children:[t.jsx("label",{htmlFor:Ee,className:"block text-sm font-medium text-foreground",children:n.passwordLabel}),!I&&w.enabled&&t.jsx("button",{type:"button",onClick:()=>ae("forgotPassword"),className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:n.forgotPassword})]}),t.jsx(ee,{id:Ee,type:"password",placeholder:"••••••••",value:L,onChange:X(z),required:!0,disabled:E,autoComplete:I?"new-password":"current-password",className:"h-11 rounded-lg"})]}),t.jsx("div",{className:N("overflow-hidden transition-all duration-300 ease-[cubic-bezier(0.075,0.82,0.165,1)]",$?"max-h-[100px] opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-2"),children:t.jsx("div",{className:N("p-1",!$&&"pointer-events-none"),children:t.jsx(xe,{type:"submit",disabled:E||!$,className:N("w-full font-semibold"),size:"xl","aria-hidden":!$,children:E?I?n.creatingAccount:n.signingIn:n.continue})})})]}),t.jsx("div",{className:"text-sm text-muted-foreground",children:U?t.jsx("button",{type:"button",onClick:()=>ae("signIn"),disabled:E,className:ue,children:n.backToSignIn}):T&&F?t.jsx("button",{type:"button",onClick:()=>ae("signIn"),disabled:E,className:ue,children:n.signInWithPassword}):!T&&F?t.jsxs(t.Fragment,{children:[I?n.alreadyHaveAccount:n.dontHaveAccount,t.jsx("button",{type:"button",onClick:()=>ae(I?"signIn":"signUp"),disabled:E,className:ue,children:I?n.signIn:n.signUp}),y.enabled&&t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"mx-2",children:"·"}),t.jsx("button",{type:"button",onClick:()=>ae("emailOtp"),disabled:E,className:ue,children:n.signInWithEmailCode})]})]}):null})]})}async function ge(){throw new Error("Tauri bridge is unavailable outside the desktop build")}function Ye(){const i=Be(),e=Ve(),m=$e({queryKey:me.desktopAuthStatus(),queryFn:async()=>(await ge()).fetchAuthStatus(),enabled:e,staleTime:3e4,refetchOnWindowFocus:!0}),[f,p]=v.useState(!1),[u,r]=v.useState(null),[d,g]=v.useState(!1),[k,A]=v.useState(null);v.useEffect(()=>{},[e,i]);async function C(){p(!0),r(null);try{const o=await ge();await o.performAuthLogin();const c=await o.fetchAuthStatus();i.setQueryData(me.desktopAuthStatus(),c)}catch(o){r(o instanceof Error?o.message:"Sign-in failed")}finally{p(!1)}}async function w(){p(!0);try{const o=await ge();await o.performAuthLogout();const c=await o.fetchAuthStatus();i.setQueryData(me.desktopAuthStatus(),c)}finally{p(!1)}}async function y(){g(!0),A(null);let o;try{o=await ge()}catch(c){A(c instanceof Error?c.message:"Sign-in failed"),g(!1);return}try{await o.performAuthCompleteSession()}catch(c){A(c instanceof Error?c.message:"Sign-in failed")}finally{try{const c=await o.fetchAuthStatus();i.setQueryData(me.desktopAuthStatus(),c)}finally{g(!1)}}}async function S(){await m.refetch()}return{status:m.data,isChecking:m.isLoading,isRetryingStatus:m.isFetching,isPending:f,loginError:u,login:C,logout:w,isCompletingSession:d,completeSessionError:k,completeSession:y,retryStatus:S}}function Je(i){return!(i.emailAndPassword.enabled||i.emailOtp.enabled||i.socialProviders.enabled)&&!i.sso.enabled&&i.magicLink.enabled}function Xe(){return fe.c(10),Ye(),null}function Ze(i){const e=fe.c(25),{onContinue:m,isPending:f,error:p}=i,u=be();let r;e[0]!==u?(r=u("common.authEntry.browserOnlyTitle"),e[0]=u,e[1]=r):r=e[1];let d;e[2]!==r?(d=t.jsx("h1",{className:"text-lg font-medium text-foreground",children:r}),e[2]=r,e[3]=d):d=e[3];let g;e[4]!==u?(g=u("common.authEntry.browserOnlyDescription"),e[4]=u,e[5]=g):g=e[5];let k;e[6]!==g?(k=t.jsx("p",{className:"max-w-sm text-sm text-muted-foreground",children:g}),e[6]=g,e[7]=k):k=e[7];let A;e[8]!==d||e[9]!==k?(A=t.jsxs("div",{className:"flex flex-col gap-1",children:[d,k]}),e[8]=d,e[9]=k,e[10]=A):A=e[10];let C;e[11]!==m?(C=()=>{m()},e[11]=m,e[12]=C):C=e[12];let w;e[13]!==u?(w=u("common.authEntry.browserOnlyCta"),e[13]=u,e[14]=w):w=e[14];let y;e[15]!==f||e[16]!==C||e[17]!==w?(y=t.jsx(xe,{onClick:C,disabled:f,children:w}),e[15]=f,e[16]=C,e[17]=w,e[18]=y):y=e[18];let S;e[19]!==p?(S=p&&t.jsx("p",{className:"max-w-sm text-xs text-destructive",children:p}),e[19]=p,e[20]=S):S=e[20];let o;return e[21]!==A||e[22]!==y||e[23]!==S?(o=t.jsxs("div",{className:"flex flex-col items-center gap-4 text-center",children:[A,y,S]}),e[21]=A,e[22]=y,e[23]=S,e[24]=o):o=e[24],o}function Ie(i){const e=fe.c(8),{label:m,error:f}=i;let p;e[0]===Symbol.for("react.memo_cache_sentinel")?(p=t.jsx(Qe,{size:"lg"}),e[0]=p):p=e[0];let u;e[1]!==m?(u=m&&t.jsx("p",{className:"text-sm text-muted-foreground",children:m}),e[1]=m,e[2]=u):u=e[2];let r;e[3]!==f?(r=f&&t.jsx("p",{className:"max-w-sm text-xs text-destructive",children:f}),e[3]=f,e[4]=r):r=e[4];let d;return e[5]!==u||e[6]!==r?(d=t.jsxs("div",{className:"flex flex-col items-center gap-3 text-center",children:[p,u,r]}),e[5]=u,e[6]=r,e[7]=d):d=e[7],d}class ke{constructor(e){this.response=e}response}function et(i){return i.startsWith("/")&&!i.startsWith("//")?i:"/"}function tt({redirectTo:i,onAuthEvent:e}){const m=be(),[f,p]=v.useState(null),u=v.useEffectEvent(r=>{try{e?.(r)}catch{}});return v.useEffect(()=>{let r=!1;return(async()=>{u({type:"started",method:"local"});try{let d;try{d=await ze(async()=>{const g=await fetch("/api/auth/custom/local-session",{method:"POST",credentials:"include"});if(g.status>=500)throw new ke(g);return g},{maxAttempts:5,minTimeout:1e3,maxTimeout:1e4,multiplier:2,jitter:0})}catch(g){if(g instanceof He&&g.cause instanceof ke)d=g.cause.response;else throw g}if(!d.ok){const g=await d.json().catch(()=>({}));throw new Error(g?.error||m("common.authEntry.autoLoginFailed"))}r||(u({type:"succeeded",method:"local"}),window.location.href=et(i))}catch(d){r||(u({type:"failed",method:"local",stage:"authenticate",error:d instanceof Error?d.message:String(d)}),p(d instanceof Error?d.message:m("common.authEntry.autoLoginFailed")))}})(),()=>{r=!0}},[i]),f?t.jsx("div",{className:"flex min-h-screen items-center justify-center",children:t.jsxs("div",{className:"text-center",children:[t.jsx("p",{className:"text-destructive mb-2",children:m("common.authEntry.autoLoginFailedWithError",{error:f})}),t.jsx("p",{className:"text-muted-foreground text-sm",children:m("common.authEntry.tryRestartingServer")})]})}):t.jsx(_e,{})}function st({callbackURL:i,providerId:e,ssoSignIn:m,onAuthEvent:f}){const p=v.useEffectEvent(r=>{try{f?.(r)}catch{}}),u=v.useEffectEvent(m);return v.useEffect(()=>{(async()=>{p({type:"started",method:"sso",provider:e});try{const r=await u({providerId:e,callbackURL:i});if(r.error)throw new Error(r.error.message||"SSO redirect failed")}catch(r){p({type:"failed",method:"sso",provider:e,stage:"redirect",error:r instanceof Error?r.message:String(r)})}})()},[e,i]),t.jsx(_e,{})}function lt(i){const e=fe.c(51),{callbackUrl:m,redirectUrl:f,allowAutoLogin:p,title:u,subtitle:r,brand:d,copy:g,variant:k,allowedSocialProviders:A,allowPassword:C,onAuthEvent:w,onAuthenticated:y}=i,S=p===void 0?!0:p,o=be(),{sso:c,emailAndPassword:P,magicLink:te,emailOtp:se,socialProviders:oe,localMode:le}=Fe(),h=Xe(),F=f||m;let b;e[0]!==y?(b=y?{onAuthenticated:y}:void 0,e[0]=y,e[1]=b):b=e[1];const _=b,L=h?.actions;let z;e[2]!==_||e[3]!==L?(z={...Le,..._,...L},e[2]=_,e[3]=L,e[4]=z):z=e[4];const B=z;if(h?.isPending){let a;e[5]!==o?(a=o("common.authEntry.finishSignInInBrowser"),e[5]=o,e[6]=a):a=e[6];let x;return e[7]!==h.loginError||e[8]!==a?(x=t.jsx(Ie,{label:a,error:h.loginError}),e[7]=h.loginError,e[8]=a,e[9]=x):x=e[9],x}if(h?.isCompletingSession){let a;e[10]!==o?(a=o("common.authEntry.finishingSignIn"),e[10]=o,e[11]=a):a=e[11];let x;return e[12]!==h.completeSessionError||e[13]!==a?(x=t.jsx(Ie,{label:a,error:h.completeSessionError}),e[12]=h.completeSessionError,e[13]=a,e[14]=x):x=e[14],x}if(le&&S){let a;return e[15]!==w||e[16]!==F?(a=t.jsx(tt,{redirectTo:F,onAuthEvent:w}),e[15]=w,e[16]=F,e[17]=a):a=e[17],a}if(c.enabled){let a;return e[18]!==w||e[19]!==F||e[20]!==B.ssoSignIn||e[21]!==c.providerId?(a=t.jsx(st,{callbackURL:F,providerId:c.providerId,ssoSignIn:B.ssoSignIn,onAuthEvent:w}),e[18]=w,e[19]=F,e[20]=B.ssoSignIn,e[21]=c.providerId,e[22]=a):a=e[22],a}if(h&&Je({emailAndPassword:P,emailOtp:se,socialProviders:oe,magicLink:te,sso:c})){let a;return e[23]!==h.isPending||e[24]!==h.login||e[25]!==h.loginError?(a=t.jsx(Ze,{onContinue:h.login,isPending:h.isPending,error:h.loginError}),e[23]=h.isPending,e[24]=h.login,e[25]=h.loginError,e[26]=a):a=e[26],a}if(P.enabled||te.enabled||se.enabled||oe.enabled){const a=h?.loginError??h?.completeSessionError??null;let x;e[27]!==_||e[28]!==L?(x={..._,...L},e[27]=_,e[28]=L,e[29]=x):x=e[29];let M;e[30]!==C||e[31]!==A||e[32]!==d||e[33]!==m||e[34]!==g||e[35]!==w||e[36]!==f||e[37]!==r||e[38]!==x||e[39]!==u||e[40]!==k?(M=t.jsx(Ge,{redirectUrl:f,callbackUrl:m,title:u,subtitle:r,brand:d,copy:g,variant:k,allowedSocialProviders:A,allowPassword:C,onAuthEvent:w,actions:x}),e[30]=C,e[31]=A,e[32]=d,e[33]=m,e[34]=g,e[35]=w,e[36]=f,e[37]=r,e[38]=x,e[39]=u,e[40]=k,e[41]=M):M=e[41];const q=M;if(!a)return q;let W;e[42]!==a?(W=t.jsx("div",{className:"rounded-xl bg-destructive/10 p-3 text-sm text-destructive text-center",children:a}),e[42]=a,e[43]=W):W=e[43];let j;return e[44]!==q||e[45]!==W?(j=t.jsxs("div",{className:"grid gap-4",children:[W,q]}),e[44]=q,e[45]=W,e[46]=j):j=e[46],j}let O;e[47]!==o?(O=o("common.authEntry.noLoginOptions"),e[47]=o,e[48]=O):O=e[48];let D;return e[49]!==O?(D=t.jsx("div",{children:O}),e[49]=O,e[50]=D):D=e[50],D}export{lt as A,Ye as u};
|
|
1
|
+
import{a as V,G as Fe,r as v,e as ce,q as Q,j as t,n as N,B as xe,p as Be,o as $e,K as me,c as fe,b as be,S as _e}from"./index-D1nhmf1Q.js";import{I as ee}from"./input-CNoT6UPP.js";import{i as Ve}from"./use-is-desktop-app-BNujXJc_.js";import{S as Qe}from"./spinner-DoWdooyo.js";import{r as ze,R as He}from"./retry-CErkP7V6.js";const Le={submitEmailPassword:({mode:i,email:e,password:m,name:f})=>i==="sign_up"?V.signUp.email({email:e,password:m,name:f||""}):V.signIn.email({email:e,password:m}),requestPasswordReset:({email:i,redirectTo:e})=>V.requestPasswordReset({email:i,redirectTo:e}),sendOtp:({email:i})=>V.emailOtp.sendVerificationOtp({email:i,type:"sign-in"}),submitOtp:({email:i,otp:e})=>V.signIn.emailOtp({email:i,otp:e}),socialSignIn:({provider:i,callbackURL:e})=>V.signIn.social({provider:i,callbackURL:e}),ssoSignIn:({providerId:i,callbackURL:e})=>V.signIn.sso({providerId:i,callbackURL:e}),onAuthenticated:i=>{window.location.href=i}},ue="font-medium text-[#8CAA25] hover:underline disabled:opacity-50",Ke={signUpFailed:"Sign up failed",signInFailed:"Sign in failed",authenticationFailed:"Authentication failed",resetEmailFailed:"Failed to send reset email",otpSendFailed:"Failed to send code",invalidCode:"Invalid code",invalidEmail:"Invalid email address",invalidEmailOrPassword:"Invalid email or password. Please try again.",accountExists:"An account with this email already exists. Try signing in instead.",networkError:"Network error. Please check your connection and try again.",tooManyAttempts:"Too many attempts. Please wait a moment and try again.",invalidOrExpiredCode:"Invalid or expired code. Please try again.",genericError:"An error occurred. Please try again.",resetPasswordTitle:"Reset your password",verificationCodeTitle:"Enter verification code",welcomeTitle:"Welcome to deco",resetPasswordSubtitle:"We'll send you a reset link",codeSentTo:i=>`Code sent to ${i}`,defaultSubtitle:"Sign in or create a new account",resetEmailSent:"Check your email for a password reset link.",continueWith:i=>`Continue with ${i}`,divider:"or",emailLabel:"Email",emailPlaceholder:"Email address",sending:"Sending...",sendCode:"Send code",verificationCodeLabel:"Verification code",enterCodePlaceholder:"Enter code",verifying:"Verifying...",verify:"Verify",useDifferentEmail:"Use a different email",sendResetLink:"Send reset link",nameLabel:"Name",namePlaceholder:"Your name",passwordLabel:"Password",forgotPassword:"Forgot password?",creatingAccount:"Creating account...",signingIn:"Signing in...",continue:"Continue",backToSignIn:"Back to sign in",signInWithPassword:"Sign in with password instead",alreadyHaveAccount:"Already have an account? ",dontHaveAccount:"Don't have an account? ",signIn:"Sign in",signUp:"Sign up",signInWithEmailCode:"Sign in with email code"};function Ge({redirectUrl:i,callbackUrl:e="/",title:m,subtitle:f,brand:p,copy:u,variant:r="default",allowedSocialProviders:d,allowPassword:g=!0,onAuthEvent:k,actions:A}){const{emailAndPassword:C,resetPassword:w,emailOtp:y,socialProviders:S}=Fe(),o={...Le,...A},c=s=>{try{k?.(s)}catch{}},P=r==="compact",te=d?S.providers.filter(s=>d.includes(s.name)):S.providers,se=S.enabled&&te.length>0,oe=C.enabled&&(g||!y.enabled&&!se),le=S.enabled&&S.providers.length>0&&!se&&!y.enabled&&!oe?S.providers:te,h=S.enabled&&le.length>0,F=C.enabled&&(g||!y.enabled&&!h),[b,_]=v.useState(""),[L,z]=v.useState(""),[B,O]=v.useState(""),[D,a]=v.useState(""),[x,M]=v.useState(!1),[q,W]=v.useState(()=>y.enabled?"emailOtp":globalThis.localStorage?.getItem("hasLoggedIn")!=="true"?"signUp":"signIn"),[j,H]=v.useState(""),[ye,ve]=v.useState(!1),[Oe,he]=v.useState(null),n={...Ke,...u},ne=v.useId(),K=`${ne}-email`,G=`${ne}-email-error`,we=`${ne}-name`,Ee=`${ne}-password`,Se=`${ne}-otp`,I=q==="signUp",U=q==="forgotPassword",T=q==="emailOtp",ie=ce({mutationFn:async({email:s,password:l,name:R})=>{try{const Z=await o.submitEmailPassword({mode:I?"sign_up":"sign_in",email:s,password:l,name:R});if(Z.error)throw new Error(Z.error.message||(I?n.signUpFailed:n.signInFailed));return Z}catch(Z){throw Z instanceof Error?Z:new Error(n.authenticationFailed)}},onMutate:()=>{c({type:"started",method:"email_password",mode:I?"sign_up":"sign_in"})},onSuccess:()=>{c({type:"succeeded",method:"email_password",mode:I?"sign_up":"sign_in"}),globalThis.localStorage?.setItem("hasLoggedIn","true"),o.onAuthenticated(i??e)},onError:s=>{c({type:"failed",method:"email_password",mode:I?"sign_up":"sign_in",stage:"authenticate",error:s instanceof Error?s.message:String(s)}),Q(I?"user_signup_failed":"user_signin_failed",{error:s instanceof Error?s.message:String(s)})}}),re=ce({mutationFn:async({email:s})=>{const l=await o.requestPasswordReset({email:s,redirectTo:"/reset-password"});if(l.error)throw new Error(l.error.message||n.resetEmailFailed);return l},onSuccess:()=>{Q("password_reset_requested"),ve(!0)},onError:s=>{Q("password_reset_request_failed",{error:s instanceof Error?s.message:String(s)})}}),Y=ce({mutationFn:async({email:s})=>{const l=await o.sendOtp({email:s});if(l.error)throw new Error(l.error.message||n.otpSendFailed);return l},onMutate:()=>{c({type:"started",method:"email_otp"})},onSuccess:()=>{c({type:"otp_sent",method:"email_otp"}),Q("email_otp_sent"),M(!0)},onError:s=>{c({type:"failed",method:"email_otp",stage:"send_otp",error:s instanceof Error?s.message:String(s)}),Q("email_otp_send_failed",{error:s instanceof Error?s.message:String(s)})}}),J=ce({mutationFn:async({email:s,otp:l})=>{const R=await o.submitOtp({email:s,otp:l});if(R.error)throw new Error(R.error.message||n.invalidCode);return R},onMutate:()=>{c({type:"otp_submitted",method:"email_otp"})},onSuccess:()=>{c({type:"succeeded",method:"email_otp"}),globalThis.localStorage?.setItem("hasLoggedIn","true"),o.onAuthenticated(i??e)},onError:s=>{c({type:"failed",method:"email_otp",stage:"verify_otp",error:s instanceof Error?s.message:String(s)}),Q("email_otp_verify_failed",{error:s instanceof Error?s.message:String(s)})}}),de=s=>/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(s),pe=()=>{b.trim()&&!de(b)&&H(n.invalidEmail)},Te=s=>{if(s.preventDefault(),!de(b)){H(n.invalidEmail),c({type:"failed",method:"email_password",mode:I?"sign_up":"sign_in",stage:"validation",error:"invalid_email"});return}ie.mutate({email:b,password:L,name:B})},Re=s=>{if(s.preventDefault(),!de(b)){H(n.invalidEmail);return}re.mutate({email:b})},De=s=>{if(s.preventDefault(),!de(b)){H(n.invalidEmail),c({type:"failed",method:"email_otp",stage:"validation",error:"invalid_email"});return}Y.mutate({email:b})},Me=s=>{s.preventDefault(),J.mutate({email:b,otp:D})},X=s=>l=>{s(l.target.value),je&&ie.reset(),Ne&&re.reset(),Ae&&(Y.reset(),J.reset()),s===_&&j&&H("")},ae=s=>{W(s),O(""),a(""),M(!1),H(""),ve(!1),he(null),ie.reset(),re.reset(),Y.reset(),J.reset()},E=ie.isPending||re.isPending||Y.isPending||J.isPending,je=ie.error,Ne=re.error,Ae=Y.error||J.error,$=I?b.trim()&&L.trim()&&B.trim():U?b.trim():T?x?D.trim():b.trim():b.trim()&&L.trim(),qe=s=>{if(!s)return null;const l=s.message.toLowerCase();return l.includes("unauthorized")||l.includes("401")?n.invalidEmailOrPassword:l.includes("already exists")||l.includes("409")?n.accountExists:l.includes("network")||l.includes("fetch")?n.networkError:l.includes("rate limit")||l.includes("429")?n.tooManyAttempts:l.includes("invalid")&&l.includes("otp")?n.invalidOrExpiredCode:s.message||n.genericError},Pe=je||Ne||Ae||Oe,We=async s=>{c({type:"started",method:"social",provider:s}),he(null);try{const l=await o.socialSignIn({provider:s,callbackURL:i??e});if(l.error)throw new Error(l.error.message||n.authenticationFailed)}catch(l){const R=l instanceof Error?l.message:String(l);c({type:"failed",method:"social",provider:s,stage:"redirect",error:R}),Q("social_signin_failed",{provider:s,error:R}),he(l instanceof Error?l:new Error(R))}},Ue=U?n.resetPasswordTitle:T&&x?n.verificationCodeTitle:m??n.welcomeTitle,Ce=U?n.resetPasswordSubtitle:T&&x?n.codeSentTo(b):f===void 0?n.defaultSubtitle:f;return t.jsxs("div",{className:N("grid w-full",P?"gap-5":"gap-10"),children:[p??t.jsxs("div",{children:[t.jsx("img",{src:"/logos/deco logo.svg",alt:"Deco",className:"h-12 w-12 dark:hidden"}),t.jsx("img",{src:"/logos/deco logo negative.svg",alt:"Deco",className:"h-12 w-12 hidden dark:block"})]}),t.jsxs("div",{className:"space-y-2",children:[t.jsx("h1",{className:N("font-medium",P?"text-xl leading-7":"text-2xl leading-8"),children:Ue}),Ce&&t.jsx("p",{className:N("text-muted-foreground",P?"text-sm leading-5":"text-base leading-6"),children:Ce})]}),Pe&&t.jsx("div",{role:"alert",className:"rounded-xl bg-destructive/10 p-3 text-sm text-destructive text-center",children:qe(Pe)}),ye&&t.jsx("div",{role:"status",className:"rounded-xl bg-success/10 p-3 text-sm text-success text-center",children:n.resetEmailSent}),!U&&!(T&&x)&&h&&t.jsx("div",{className:"grid gap-2",children:le.map(s=>t.jsxs("button",{type:"button",disabled:E,onClick:()=>{We(s.name)},className:N("flex w-full items-center justify-center gap-3 bg-background px-3 text-sm font-medium text-foreground card-shadow transition-colors hover:bg-accent hover:text-accent-foreground disabled:pointer-events-none disabled:opacity-50 dark:bg-input/30 dark:hover:bg-input/50",P?"h-11 rounded-lg":"h-12 rounded-xl"),children:[s.icon&&t.jsx("img",{src:s.icon,alt:"",className:N("h-5 w-5",s.name==="github"&&"dark:invert"),"aria-hidden":"true"}),n.continueWith(s.name.charAt(0).toUpperCase()+s.name.slice(1))]},s.name))}),!U&&!(T&&x)&&h&&(F||y.enabled)&&t.jsxs("div",{className:N("flex items-center gap-2.5",P?"my-0":"-my-4"),children:[t.jsx("div",{className:"h-px flex-1 bg-border"}),t.jsx("span",{className:N("text-muted-foreground",P?"text-sm":"text-base"),children:n.divider}),t.jsx("div",{className:"h-px flex-1 bg-border"})]}),T&&y.enabled&&t.jsx(t.Fragment,{children:x?t.jsxs("form",{onSubmit:Me,className:N("grid gap-2",P&&"sm:grid-cols-[minmax(0,1fr)_auto] sm:items-start"),children:[t.jsxs("div",{className:"grid gap-2",children:[t.jsx("label",{htmlFor:Se,className:N("text-sm font-medium text-foreground",P&&"sr-only"),children:n.verificationCodeLabel}),t.jsx(ee,{id:Se,type:"text",placeholder:n.enterCodePlaceholder,value:D,onChange:X(a),required:!0,disabled:E,autoFocus:!0,inputMode:"numeric",autoComplete:"one-time-code",className:"h-11 rounded-lg"})]}),t.jsx("button",{type:"submit",disabled:E||!$,className:N("flex items-center justify-center rounded-lg bg-primary px-4 text-sm font-medium text-primary-foreground transition-colors hover:bg-primary/80 disabled:pointer-events-none disabled:opacity-50",P?"h-11 sm:w-auto":"h-12 w-full"),children:E?n.verifying:n.verify}),t.jsx("button",{type:"button",onClick:()=>{M(!1),a(""),Y.reset(),J.reset()},disabled:E,className:N("mt-1 text-sm text-muted-foreground transition-colors hover:text-foreground",P&&"sm:col-span-2"),children:n.useDifferentEmail})]}):t.jsxs("form",{onSubmit:De,className:N("grid gap-2",P&&"sm:grid-cols-[minmax(0,1fr)_auto] sm:items-start"),children:[t.jsxs("div",{className:"grid gap-2",children:[t.jsx("label",{htmlFor:K,className:N("text-sm font-medium text-foreground",P&&"sr-only"),children:n.emailLabel}),t.jsx(ee,{id:K,type:"email",placeholder:n.emailPlaceholder,value:b,onChange:X(_),onBlur:pe,required:!0,disabled:E,autoComplete:"email","aria-invalid":!!j,"aria-describedby":j?G:void 0,className:"h-11 rounded-lg"}),j&&t.jsx("p",{id:G,role:"alert",className:"text-xs text-destructive",children:j})]}),t.jsx("button",{type:"submit",disabled:E||!$,className:N("flex items-center justify-center rounded-lg bg-primary px-4 text-sm font-medium text-primary-foreground transition-colors hover:bg-primary/80 disabled:pointer-events-none disabled:opacity-50",P?"h-11 sm:w-auto":"h-12 w-full"),children:E?n.sending:n.sendCode})]})}),U&&F&&!ye&&t.jsxs("form",{onSubmit:Re,className:"grid gap-4",children:[t.jsxs("div",{children:[t.jsx("label",{htmlFor:K,className:"block text-sm font-medium text-foreground mb-2",children:n.emailLabel}),t.jsx(ee,{id:K,type:"email",placeholder:"you@example.com",value:b,onChange:X(_),onBlur:pe,required:!0,disabled:E,autoComplete:"email","aria-invalid":!!j,"aria-describedby":j?G:void 0,className:"h-11 rounded-lg"}),j&&t.jsx("p",{id:G,role:"alert",className:"text-xs text-destructive mt-1.5",children:j})]}),t.jsx(xe,{type:"submit",disabled:E||!$,className:"w-full font-semibold",size:"xl",children:E?n.sending:n.sendResetLink})]}),!U&&!T&&F&&t.jsxs("form",{onSubmit:Te,className:"grid gap-5",children:[I&&t.jsxs("div",{children:[t.jsx("label",{htmlFor:we,className:"block text-sm font-medium text-foreground mb-2",children:n.nameLabel}),t.jsx(ee,{id:we,type:"text",placeholder:n.namePlaceholder,value:B,onChange:X(O),required:!0,disabled:E,autoComplete:"name",className:"h-11 rounded-lg"})]}),t.jsxs("div",{children:[t.jsx("label",{htmlFor:K,className:"block text-sm font-medium text-foreground mb-2",children:n.emailLabel}),t.jsx(ee,{id:K,type:"email",placeholder:"you@example.com",value:b,onChange:X(_),onBlur:pe,required:!0,disabled:E,autoComplete:"email","aria-invalid":!!j,"aria-describedby":j?G:void 0,className:"h-11 rounded-lg"}),j&&t.jsx("p",{id:G,role:"alert",className:"text-xs text-destructive mt-1.5",children:j})]}),t.jsxs("div",{children:[t.jsxs("div",{className:"flex items-center justify-between mb-2",children:[t.jsx("label",{htmlFor:Ee,className:"block text-sm font-medium text-foreground",children:n.passwordLabel}),!I&&w.enabled&&t.jsx("button",{type:"button",onClick:()=>ae("forgotPassword"),className:"text-xs text-muted-foreground hover:text-foreground transition-colors",children:n.forgotPassword})]}),t.jsx(ee,{id:Ee,type:"password",placeholder:"••••••••",value:L,onChange:X(z),required:!0,disabled:E,autoComplete:I?"new-password":"current-password",className:"h-11 rounded-lg"})]}),t.jsx("div",{className:N("overflow-hidden transition-all duration-300 ease-[cubic-bezier(0.075,0.82,0.165,1)]",$?"max-h-[100px] opacity-100 translate-y-0":"max-h-0 opacity-0 -translate-y-2"),children:t.jsx("div",{className:N("p-1",!$&&"pointer-events-none"),children:t.jsx(xe,{type:"submit",disabled:E||!$,className:N("w-full font-semibold"),size:"xl","aria-hidden":!$,children:E?I?n.creatingAccount:n.signingIn:n.continue})})})]}),t.jsx("div",{className:"text-sm text-muted-foreground",children:U?t.jsx("button",{type:"button",onClick:()=>ae("signIn"),disabled:E,className:ue,children:n.backToSignIn}):T&&F?t.jsx("button",{type:"button",onClick:()=>ae("signIn"),disabled:E,className:ue,children:n.signInWithPassword}):!T&&F?t.jsxs(t.Fragment,{children:[I?n.alreadyHaveAccount:n.dontHaveAccount,t.jsx("button",{type:"button",onClick:()=>ae(I?"signIn":"signUp"),disabled:E,className:ue,children:I?n.signIn:n.signUp}),y.enabled&&t.jsxs(t.Fragment,{children:[t.jsx("span",{className:"mx-2",children:"·"}),t.jsx("button",{type:"button",onClick:()=>ae("emailOtp"),disabled:E,className:ue,children:n.signInWithEmailCode})]})]}):null})]})}async function ge(){throw new Error("Tauri bridge is unavailable outside the desktop build")}function Ye(){const i=Be(),e=Ve(),m=$e({queryKey:me.desktopAuthStatus(),queryFn:async()=>(await ge()).fetchAuthStatus(),enabled:e,staleTime:3e4,refetchOnWindowFocus:!0}),[f,p]=v.useState(!1),[u,r]=v.useState(null),[d,g]=v.useState(!1),[k,A]=v.useState(null);v.useEffect(()=>{},[e,i]);async function C(){p(!0),r(null);try{const o=await ge();await o.performAuthLogin();const c=await o.fetchAuthStatus();i.setQueryData(me.desktopAuthStatus(),c)}catch(o){r(o instanceof Error?o.message:"Sign-in failed")}finally{p(!1)}}async function w(){p(!0);try{const o=await ge();await o.performAuthLogout();const c=await o.fetchAuthStatus();i.setQueryData(me.desktopAuthStatus(),c)}finally{p(!1)}}async function y(){g(!0),A(null);let o;try{o=await ge()}catch(c){A(c instanceof Error?c.message:"Sign-in failed"),g(!1);return}try{await o.performAuthCompleteSession()}catch(c){A(c instanceof Error?c.message:"Sign-in failed")}finally{try{const c=await o.fetchAuthStatus();i.setQueryData(me.desktopAuthStatus(),c)}finally{g(!1)}}}async function S(){await m.refetch()}return{status:m.data,isChecking:m.isLoading,isRetryingStatus:m.isFetching,isPending:f,loginError:u,login:C,logout:w,isCompletingSession:d,completeSessionError:k,completeSession:y,retryStatus:S}}function Je(i){return!(i.emailAndPassword.enabled||i.emailOtp.enabled||i.socialProviders.enabled)&&!i.sso.enabled&&i.magicLink.enabled}function Xe(){return fe.c(10),Ye(),null}function Ze(i){const e=fe.c(25),{onContinue:m,isPending:f,error:p}=i,u=be();let r;e[0]!==u?(r=u("common.authEntry.browserOnlyTitle"),e[0]=u,e[1]=r):r=e[1];let d;e[2]!==r?(d=t.jsx("h1",{className:"text-lg font-medium text-foreground",children:r}),e[2]=r,e[3]=d):d=e[3];let g;e[4]!==u?(g=u("common.authEntry.browserOnlyDescription"),e[4]=u,e[5]=g):g=e[5];let k;e[6]!==g?(k=t.jsx("p",{className:"max-w-sm text-sm text-muted-foreground",children:g}),e[6]=g,e[7]=k):k=e[7];let A;e[8]!==d||e[9]!==k?(A=t.jsxs("div",{className:"flex flex-col gap-1",children:[d,k]}),e[8]=d,e[9]=k,e[10]=A):A=e[10];let C;e[11]!==m?(C=()=>{m()},e[11]=m,e[12]=C):C=e[12];let w;e[13]!==u?(w=u("common.authEntry.browserOnlyCta"),e[13]=u,e[14]=w):w=e[14];let y;e[15]!==f||e[16]!==C||e[17]!==w?(y=t.jsx(xe,{onClick:C,disabled:f,children:w}),e[15]=f,e[16]=C,e[17]=w,e[18]=y):y=e[18];let S;e[19]!==p?(S=p&&t.jsx("p",{className:"max-w-sm text-xs text-destructive",children:p}),e[19]=p,e[20]=S):S=e[20];let o;return e[21]!==A||e[22]!==y||e[23]!==S?(o=t.jsxs("div",{className:"flex flex-col items-center gap-4 text-center",children:[A,y,S]}),e[21]=A,e[22]=y,e[23]=S,e[24]=o):o=e[24],o}function Ie(i){const e=fe.c(8),{label:m,error:f}=i;let p;e[0]===Symbol.for("react.memo_cache_sentinel")?(p=t.jsx(Qe,{size:"lg"}),e[0]=p):p=e[0];let u;e[1]!==m?(u=m&&t.jsx("p",{className:"text-sm text-muted-foreground",children:m}),e[1]=m,e[2]=u):u=e[2];let r;e[3]!==f?(r=f&&t.jsx("p",{className:"max-w-sm text-xs text-destructive",children:f}),e[3]=f,e[4]=r):r=e[4];let d;return e[5]!==u||e[6]!==r?(d=t.jsxs("div",{className:"flex flex-col items-center gap-3 text-center",children:[p,u,r]}),e[5]=u,e[6]=r,e[7]=d):d=e[7],d}class ke{constructor(e){this.response=e}response}function et(i){return i.startsWith("/")&&!i.startsWith("//")?i:"/"}function tt({redirectTo:i,onAuthEvent:e}){const m=be(),[f,p]=v.useState(null),u=v.useEffectEvent(r=>{try{e?.(r)}catch{}});return v.useEffect(()=>{let r=!1;return(async()=>{u({type:"started",method:"local"});try{let d;try{d=await ze(async()=>{const g=await fetch("/api/auth/custom/local-session",{method:"POST",credentials:"include"});if(g.status>=500)throw new ke(g);return g},{maxAttempts:5,minTimeout:1e3,maxTimeout:1e4,multiplier:2,jitter:0})}catch(g){if(g instanceof He&&g.cause instanceof ke)d=g.cause.response;else throw g}if(!d.ok){const g=await d.json().catch(()=>({}));throw new Error(g?.error||m("common.authEntry.autoLoginFailed"))}r||(u({type:"succeeded",method:"local"}),window.location.href=et(i))}catch(d){r||(u({type:"failed",method:"local",stage:"authenticate",error:d instanceof Error?d.message:String(d)}),p(d instanceof Error?d.message:m("common.authEntry.autoLoginFailed")))}})(),()=>{r=!0}},[i]),f?t.jsx("div",{className:"flex min-h-screen items-center justify-center",children:t.jsxs("div",{className:"text-center",children:[t.jsx("p",{className:"text-destructive mb-2",children:m("common.authEntry.autoLoginFailedWithError",{error:f})}),t.jsx("p",{className:"text-muted-foreground text-sm",children:m("common.authEntry.tryRestartingServer")})]})}):t.jsx(_e,{})}function st({callbackURL:i,providerId:e,ssoSignIn:m,onAuthEvent:f}){const p=v.useEffectEvent(r=>{try{f?.(r)}catch{}}),u=v.useEffectEvent(m);return v.useEffect(()=>{(async()=>{p({type:"started",method:"sso",provider:e});try{const r=await u({providerId:e,callbackURL:i});if(r.error)throw new Error(r.error.message||"SSO redirect failed")}catch(r){p({type:"failed",method:"sso",provider:e,stage:"redirect",error:r instanceof Error?r.message:String(r)})}})()},[e,i]),t.jsx(_e,{})}function lt(i){const e=fe.c(51),{callbackUrl:m,redirectUrl:f,allowAutoLogin:p,title:u,subtitle:r,brand:d,copy:g,variant:k,allowedSocialProviders:A,allowPassword:C,onAuthEvent:w,onAuthenticated:y}=i,S=p===void 0?!0:p,o=be(),{sso:c,emailAndPassword:P,magicLink:te,emailOtp:se,socialProviders:oe,localMode:le}=Fe(),h=Xe(),F=f||m;let b;e[0]!==y?(b=y?{onAuthenticated:y}:void 0,e[0]=y,e[1]=b):b=e[1];const _=b,L=h?.actions;let z;e[2]!==_||e[3]!==L?(z={...Le,..._,...L},e[2]=_,e[3]=L,e[4]=z):z=e[4];const B=z;if(h?.isPending){let a;e[5]!==o?(a=o("common.authEntry.finishSignInInBrowser"),e[5]=o,e[6]=a):a=e[6];let x;return e[7]!==h.loginError||e[8]!==a?(x=t.jsx(Ie,{label:a,error:h.loginError}),e[7]=h.loginError,e[8]=a,e[9]=x):x=e[9],x}if(h?.isCompletingSession){let a;e[10]!==o?(a=o("common.authEntry.finishingSignIn"),e[10]=o,e[11]=a):a=e[11];let x;return e[12]!==h.completeSessionError||e[13]!==a?(x=t.jsx(Ie,{label:a,error:h.completeSessionError}),e[12]=h.completeSessionError,e[13]=a,e[14]=x):x=e[14],x}if(le&&S){let a;return e[15]!==w||e[16]!==F?(a=t.jsx(tt,{redirectTo:F,onAuthEvent:w}),e[15]=w,e[16]=F,e[17]=a):a=e[17],a}if(c.enabled){let a;return e[18]!==w||e[19]!==F||e[20]!==B.ssoSignIn||e[21]!==c.providerId?(a=t.jsx(st,{callbackURL:F,providerId:c.providerId,ssoSignIn:B.ssoSignIn,onAuthEvent:w}),e[18]=w,e[19]=F,e[20]=B.ssoSignIn,e[21]=c.providerId,e[22]=a):a=e[22],a}if(h&&Je({emailAndPassword:P,emailOtp:se,socialProviders:oe,magicLink:te,sso:c})){let a;return e[23]!==h.isPending||e[24]!==h.login||e[25]!==h.loginError?(a=t.jsx(Ze,{onContinue:h.login,isPending:h.isPending,error:h.loginError}),e[23]=h.isPending,e[24]=h.login,e[25]=h.loginError,e[26]=a):a=e[26],a}if(P.enabled||te.enabled||se.enabled||oe.enabled){const a=h?.loginError??h?.completeSessionError??null;let x;e[27]!==_||e[28]!==L?(x={..._,...L},e[27]=_,e[28]=L,e[29]=x):x=e[29];let M;e[30]!==C||e[31]!==A||e[32]!==d||e[33]!==m||e[34]!==g||e[35]!==w||e[36]!==f||e[37]!==r||e[38]!==x||e[39]!==u||e[40]!==k?(M=t.jsx(Ge,{redirectUrl:f,callbackUrl:m,title:u,subtitle:r,brand:d,copy:g,variant:k,allowedSocialProviders:A,allowPassword:C,onAuthEvent:w,actions:x}),e[30]=C,e[31]=A,e[32]=d,e[33]=m,e[34]=g,e[35]=w,e[36]=f,e[37]=r,e[38]=x,e[39]=u,e[40]=k,e[41]=M):M=e[41];const q=M;if(!a)return q;let W;e[42]!==a?(W=t.jsx("div",{className:"rounded-xl bg-destructive/10 p-3 text-sm text-destructive text-center",children:a}),e[42]=a,e[43]=W):W=e[43];let j;return e[44]!==q||e[45]!==W?(j=t.jsxs("div",{className:"grid gap-4",children:[W,q]}),e[44]=q,e[45]=W,e[46]=j):j=e[46],j}let O;e[47]!==o?(O=o("common.authEntry.noLoginOptions"),e[47]=o,e[48]=O):O=e[48];let D;return e[49]!==O?(D=t.jsx("div",{children:O}),e[49]=O,e[50]=D):D=e[50],D}export{lt as A,Ye as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as g,n as p,j as f}from"./index-
|
|
1
|
+
import{c as g,n as p,j as f}from"./index-D1nhmf1Q.js";function w(b){const e=g.c(20),{children:m,visual:r,align:j}=b,d=(j===void 0?"center":j)==="fill",x=d?"min-h-[100dvh] md:min-h-screen":"min-h-screen";let l;e[0]!==x?(l=p("flex w-full",x),e[0]=x,e[1]=l):l=e[1];const h=d?"h-[100dvh] justify-start pt-4 pb-8 md:h-auto":"justify-center py-6";let t;e[2]!==h?(t=p("flex flex-1 flex-col items-center bg-sidebar px-6 md:justify-center md:px-10 md:py-10",h),e[2]=h,e[3]=t):t=e[3];const u=d&&"flex min-h-0 flex-1 flex-col md:block md:flex-none";let s;e[4]!==u?(s=p("w-full max-w-[440px]",u),e[4]=u,e[5]=s):s=e[5];let i;e[6]!==m||e[7]!==s?(i=f.jsx("div",{className:s,children:m}),e[6]=m,e[7]=s,e[8]=i):i=e[8];let n;e[9]!==t||e[10]!==i?(n=f.jsx("section",{className:t,children:i}),e[9]=t,e[10]=i,e[11]=n):n=e[11];let c;e[12]!==r?(c=r??f.jsx("img",{src:"/onboarding-placeholder.png",alt:"",className:"absolute inset-0 h-full w-full object-cover"}),e[12]=r,e[13]=c):c=e[13];let a;e[14]!==c?(a=f.jsx("aside",{className:"relative hidden flex-1 overflow-hidden bg-muted md:flex",children:c}),e[14]=c,e[15]=a):a=e[15];let o;return e[16]!==a||e[17]!==l||e[18]!==n?(o=f.jsxs("main",{className:l,children:[n,a]}),e[16]=a,e[17]=l,e[18]=n,e[19]=o):o=e[19],o}export{w as A};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./index-
|
|
1
|
+
import"./index-D1nhmf1Q.js";import{i as u,a as p}from"./mcp-oauth-CE5hKicF.js";async function k({connectionId:n,orgId:s,orgSlug:o,persistFallback:r}){const c=new URL(`/api/${o}/mcp/${n}`,window.location.origin),i=await u({url:c.href,token:null,orgId:s});if(!i.supportsOAuth||i.isAuthenticated)return{ran:!1,ok:!0,error:null};const{token:t,tokenInfo:e,error:a}=await p({connectionId:n,orgSlug:o,scope:"offline_access"});if(a||!t)return{ran:!0,ok:!1,error:a??"no token received"};if(e)try{(await fetch(`/api/${o}/connections/${n}/oauth-token`,{method:"POST",headers:{"Content-Type":"application/json"},credentials:"include",body:JSON.stringify({accessToken:e.accessToken,refreshToken:e.refreshToken,expiresIn:e.expiresIn,scope:e.scope,clientId:e.clientId,clientSecret:e.clientSecret,tokenEndpoint:e.tokenEndpoint})})).ok||await r(t)}catch{await r(t)}else await r(t);return{ran:!0,ok:!0,error:null}}export{k as a};
|
package/dist/client/assets/{automation-list-row-CLAw5ACh.js → automation-list-row-UmgnHCCX.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{c as G,b as J,r as U,n as W,j as t,B as X}from"./index-
|
|
1
|
+
import{c as G,b as J,r as U,n as W,j as t,B as X}from"./index-D1nhmf1Q.js";import{c as Y,d as Z,b as ee,f as te,g as se,e as ie,a as ne,A as oe}from"./alert-dialog-b0E3aJVR.js";import{D as ae,c as re,b as le,a as ce}from"./dropdown-menu-7qTT1CWl.js";import{s as me}from"./Stars02-DLV5S20i.js";import{i as ue}from"./DotsVertical-CweDntTS.js";import{s as de}from"./Trash01-sUPXJwby.js";import{i as fe}from"./Zap-Dd_sTqLD.js";import{a as ge}from"./use-virtual-mcp-DiC7BmKe.js";import{A as xe}from"./agent-icon-Cf-ubcXW.js";import{u as pe}from"./use-automations-BrEd1HS7.js";function ke(c){const e=G.c(80),{automation:s,showAgent:a,onClick:n}=c,i=J(),{remove:o}=pe(),[l,O]=U.useState(!1),r=ge(a?s.virtual_mcp_id:void 0);let S;e[0]!==s.id||e[1]!==o?(S=()=>{o.mutate(s.id),O(!1)},e[0]=s.id,e[1]=o,e[2]=S):S=e[2];const I=S;let E;e[3]!==n?(E=m=>{m.target===m.currentTarget&&(m.key==="Enter"||m.key===" ")&&(m.preventDefault(),n())},e[3]=n,e[4]=E):E=e[4];const H=E,V=s.active&&s.trigger_count>0?"bg-success":"bg-muted-foreground/40";let u;e[5]!==V?(u=W("inline-block size-2 rounded-full shrink-0",V),e[5]=V,e[6]=u):u=e[6];const q=s.active&&s.trigger_count>0?"automations.automationListRow.ariaActive":s.active?"automations.automationListRow.ariaNoTriggers":"automations.automationListRow.ariaPaused";let d;e[7]!==i||e[8]!==q?(d=i(q),e[7]=i,e[8]=q,e[9]=d):d=e[9];let f;e[10]!==u||e[11]!==d?(f=t.jsx("span",{className:u,"aria-label":d}),e[10]=u,e[11]=d,e[12]=f):f=e[12];let g;e[13]!==r?.icon||e[14]!==r?.title||e[15]!==s.name||e[16]!==a?(g=a&&t.jsx(xe,{icon:r?.icon??null,name:r?.title??s.name,size:"xs",className:"shrink-0"}),e[13]=r?.icon,e[14]=r?.title,e[15]=s.name,e[16]=a,e[17]=g):g=e[17];let x;e[18]!==s.name?(x=t.jsx("span",{className:"text-sm font-medium text-foreground truncate",children:s.name}),e[18]=s.name,e[19]=x):x=e[19];let p;e[20]!==r||e[21]!==a?(p=a&&r&&t.jsxs("span",{className:"text-xs text-muted-foreground truncate",children:["· ",r.title]}),e[20]=r,e[21]=a,e[22]=p):p=e[22];let h;e[23]!==p||e[24]!==x?(h=t.jsxs("div",{className:"flex items-center gap-2 min-w-0",children:[x,p]}),e[23]=p,e[24]=x,e[25]=h):h=e[25];let j;e[26]!==s.nearest_next_run_at||e[27]!==s.trigger_count?(j=t.jsx(we,{triggerCount:s.trigger_count,nextRunAt:s.nearest_next_run_at}),e[26]=s.nearest_next_run_at,e[27]=s.trigger_count,e[28]=j):j=e[28];let w;e[29]!==h||e[30]!==j?(w=t.jsxs("div",{className:"flex-1 min-w-0 flex flex-col gap-0.5",children:[h,j]}),e[29]=h,e[30]=j,e[31]=w):w=e[31];let F;e[32]===Symbol.for("react.memo_cache_sentinel")?(F=t.jsx(ae,{asChild:!0,children:t.jsx(X,{variant:"ghost",size:"sm",className:"h-8 w-8 p-0 opacity-0 group-hover:opacity-100 data-[state=open]:opacity-100 transition-opacity",children:t.jsx(ue,{size:16})})}),e[32]=F):F=e[32];let $,B;e[33]===Symbol.for("react.memo_cache_sentinel")?($=m=>{m.stopPropagation(),O(!0)},B=t.jsx(de,{size:16}),e[33]=$,e[34]=B):($=e[33],B=e[34]);let v;e[35]!==i?(v=i("automations.automationListRow.delete"),e[35]=i,e[36]=v):v=e[36];let _;e[37]!==v?(_=t.jsx("div",{onClick:je,onKeyDown:he,role:"presentation",className:"shrink-0",children:t.jsxs(re,{children:[F,t.jsx(le,{align:"end",children:t.jsxs(ce,{variant:"destructive",onClick:$,children:[B,v]})})]})}),e[37]=v,e[38]=_):_=e[38];let b;e[39]!==H||e[40]!==n||e[41]!==w||e[42]!==_||e[43]!==f||e[44]!==g?(b=t.jsxs("div",{role:"button",tabIndex:0,onClick:n,onKeyDown:H,className:"group w-full flex items-center gap-3 px-4 py-3 border-b border-border text-left hover:bg-muted/50 transition-colors cursor-pointer focus:outline-none focus-visible:ring-2 focus-visible:ring-ring",children:[f,g,w,_]}),e[39]=H,e[40]=n,e[41]=w,e[42]=_,e[43]=f,e[44]=g,e[45]=b):b=e[45];let A;e[46]!==i?(A=i("automations.automationListRow.deleteTitle"),e[46]=i,e[47]=A):A=e[47];let D;e[48]!==A?(D=t.jsx(Y,{children:A}),e[48]=A,e[49]=D):D=e[49];let N;e[50]!==s.name||e[51]!==i?(N=i("automations.automationListRow.deleteDescription",{name:s.name}),e[50]=s.name,e[51]=i,e[52]=N):N=e[52];let R;e[53]!==N?(R=t.jsx(Z,{children:N}),e[53]=N,e[54]=R):R=e[54];let y;e[55]!==D||e[56]!==R?(y=t.jsxs(ee,{children:[D,R]}),e[55]=D,e[56]=R,e[57]=y):y=e[57];let C;e[58]!==i?(C=i("automations.automationListRow.cancel"),e[58]=i,e[59]=C):C=e[59];let L;e[60]!==C?(L=t.jsx(te,{children:C}),e[60]=C,e[61]=L):L=e[61];const Q=o.isPending;let k;e[62]!==i?(k=i("automations.automationListRow.deleteButton"),e[62]=i,e[63]=k):k=e[63];let P;e[64]!==I||e[65]!==o.isPending||e[66]!==k?(P=t.jsx(se,{onClick:I,disabled:Q,className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:k}),e[64]=I,e[65]=o.isPending,e[66]=k,e[67]=P):P=e[67];let T;e[68]!==L||e[69]!==P?(T=t.jsxs(ie,{children:[L,P]}),e[68]=L,e[69]=P,e[70]=T):T=e[70];let z;e[71]!==y||e[72]!==T?(z=t.jsxs(ne,{children:[y,T]}),e[71]=y,e[72]=T,e[73]=z):z=e[73];let M;e[74]!==l||e[75]!==z?(M=t.jsx(oe,{open:l,onOpenChange:O,children:z}),e[74]=l,e[75]=z,e[76]=M):M=e[76];let K;return e[77]!==b||e[78]!==M?(K=t.jsxs(t.Fragment,{children:[b,M]}),e[77]=b,e[78]=M,e[79]=K):K=e[79],K}function he(c){return c.stopPropagation()}function je(c){return c.stopPropagation()}function we(c){const e=G.c(8),{triggerCount:s,nextRunAt:a}=c,n=J();if(s===0){let o;e[0]!==n?(o=n("automations.automationListRow.noTriggers"),e[0]=n,e[1]=o):o=e[1];let l;return e[2]!==o?(l=t.jsx("span",{className:"text-xs text-muted-foreground",children:o}),e[2]=o,e[3]=l):l=e[3],l}let i;return e[4]!==a||e[5]!==n||e[6]!==s?(i=t.jsx("span",{className:"flex items-center gap-1.5 text-xs text-muted-foreground min-w-0",children:a?t.jsxs(t.Fragment,{children:[t.jsx(me,{size:12,className:"shrink-0"}),t.jsx("span",{className:"truncate",children:n("automations.automationListRow.nextRun",{date:new Date(a).toLocaleString()})})]}):t.jsxs(t.Fragment,{children:[t.jsx(fe,{size:12,className:"shrink-0"}),t.jsx("span",{className:"truncate",children:n("automations.automationListRow.triggers",{count:s})})]})}),e[4]=a,e[5]=n,e[6]=s,e[7]=i):i=e[7],i}export{ke as A};
|