@vellumai/web 0.10.12 → 0.11.0-staging.2
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/assets/{AnimatePresence-3WpfAWHe.js → AnimatePresence-DPfyu3ET.js} +1 -1
- package/dist/assets/{BundleConfirmPage-CDklssHh.js → BundleConfirmPage-CChUOtcg.js} +1 -1
- package/dist/assets/{a2a-invite-DUYZLVQb.js → a2a-invite-pyBtaaeG.js} +1 -1
- package/dist/assets/{about-page-CT70Pgvf.js → about-page-DGUK5p8j.js} +1 -1
- package/dist/assets/access-DS79PSR3.js +1 -0
- package/dist/assets/{account-page-D5cJIu1-.js → account-page-D3ERiewh.js} +1 -1
- package/dist/assets/{account-shell-C_IH8r44.js → account-shell-Dk4aC-Ls.js} +1 -1
- package/dist/assets/{acp-run-actions-CAjb0Wcm.js → acp-run-actions-BH8wuBAL.js} +1 -1
- package/dist/assets/{acp-run-detail-panel-DqzZdPiN.js → acp-run-detail-panel-dqVK6rPq.js} +1 -1
- package/dist/assets/{acp-run-store-C6n-XeY_.js → acp-run-store-B_eDLRwl.js} +1 -1
- package/dist/assets/{activity-steps-panel-BzHQOJsQ.js → activity-steps-panel-xxl2hu3E.js} +1 -1
- package/dist/assets/add-credential-modal-CY_--m8L.js +1 -0
- package/dist/assets/{add-credits-modal-CCEMf2_U.js → add-credits-modal-fT_gTTP5.js} +1 -1
- package/dist/assets/ai-page-B02NwVRu.js +1 -0
- package/dist/assets/animated-avatar-BcgncPkc.js +1 -0
- package/dist/assets/api-C3QSs67k.js +1 -0
- package/dist/assets/{api-XwdNiVE9.js → api-LG8zI3nK.js} +1 -1
- package/dist/assets/{api-key-screen-BXn2F-lQ.js → api-key-screen-CvBdN6Ae.js} +1 -1
- package/dist/assets/{app-card-Uowaj1kh.js → app-card-CAaFL1oB.js} +1 -1
- package/dist/assets/{archive-redirect-page-CpKvFqvX.js → archive-redirect-page-BH7h0Lk7.js} +1 -1
- package/dist/assets/{assistant-feature-flag-store-CLqMw4mK.js → assistant-feature-flag-store-CAdgpPiS.js} +1 -1
- package/dist/assets/{assistant-status-panel-DKnWIr7_.js → assistant-status-panel-BTnD-jhG.js} +1 -1
- package/dist/assets/auth-store-5qq59BAN.js +2 -0
- package/dist/assets/avatar-random-BMSYTcJK.js +1 -0
- package/dist/assets/{avatar-renderer-DK54o2kQ.js → avatar-renderer-ClUVcQmf.js} +1 -1
- package/dist/assets/{background-task-actions-CmYMPa2o.js → background-task-actions-DmP5s0oO.js} +1 -1
- package/dist/assets/{background-task-detail-panel-KDqjs7i2.js → background-task-detail-panel-BCYAElGc.js} +1 -1
- package/dist/assets/{background-task-store-DFS8MP5D.js → background-task-store-DMP8ByUq.js} +1 -1
- package/dist/assets/billing-page-B5j5TW_S.js +3 -0
- package/dist/assets/{billing-redirect-page-BRcj5q0u.js → billing-redirect-page-B1o1rsQZ.js} +1 -1
- package/dist/assets/{bookmarks-page-fFnFzh4F.js → bookmarks-page-D_Jr-a4Q.js} +1 -1
- package/dist/assets/{browser-CNL8hh8H.js → browser-CTZVDjOL.js} +2 -2
- package/dist/assets/build-state-m0LQ5Iis.js +1 -0
- package/dist/assets/channels-page-route-BYP9SOw5.js +9 -0
- package/dist/assets/chat-avatar-CvEA6z0H.js +1 -0
- package/dist/assets/chat-markdown-message-rxPKNeTx.js +2 -0
- package/dist/assets/{checkbox-BY0BDJjm.js → checkbox-CRmgkYah.js} +1 -1
- package/dist/assets/checkout-continuation-U3Pd2nxi.js +1 -0
- package/dist/assets/checkout-page-C5_9GbP-.js +1 -0
- package/dist/assets/checkout-return-target-DI6Hb-9L.js +1 -0
- package/dist/assets/client-feature-flag-store-CMncoan8.js +1 -0
- package/dist/assets/{client-identity-BS5mQsaQ.js → client-identity-DhkdvP5w.js} +1 -1
- package/dist/assets/{command-palette-CsRPcIM-.js → command-palette-BTaT__fo.js} +1 -1
- package/dist/assets/{command-palette-window-page-BzQ_oDaq.js → command-palette-window-page-gq0zowBe.js} +1 -1
- package/dist/assets/{community-page-mlhk4LsN.js → community-page-CsEKt9wX.js} +1 -1
- package/dist/assets/{connect-page-PuRyFup0.js → connect-page-B4aTS7Yj.js} +1 -1
- package/dist/assets/{consent-controls-BOFoWAYO.js → consent-controls-OcgxuxS0.js} +1 -1
- package/dist/assets/consent-hzYg-zbh.js +1 -0
- package/dist/assets/{contacts-gateway-C5OljhCC.js → contacts-gateway-B6OrAmU3.js} +1 -1
- package/dist/assets/{contacts-page-route-VBlklzVL.js → contacts-page-route-DNoCUXE7.js} +1 -1
- package/dist/assets/{conversation-cache-CqCkWHT6.js → conversation-cache-DKvwwWNo.js} +1 -1
- package/dist/assets/{conversation-list-fetchers-D84gJs6f.js → conversation-list-fetchers-DM-Y61u5.js} +1 -1
- package/dist/assets/conversation-navigation-DsN0hcpL.js +1 -0
- package/dist/assets/{conversation-queries-Ba_1sW5M.js → conversation-queries-CWvK6RLK.js} +1 -1
- package/dist/assets/{credential-entry-page-Bfrl1sD_.js → credential-entry-page-CHinHO85.js} +1 -1
- package/dist/assets/credentials-page-BsJFuOc9.js +1 -0
- package/dist/assets/{danger-zone-redirect-page-DKfrmf_o.js → danger-zone-redirect-page-SU45WI74.js} +1 -1
- package/dist/assets/debug-page-BziypDgA.js +4 -0
- package/dist/assets/{deploy-dialogs-BNMcZzII.js → deploy-dialogs-DZSd5o9b.js} +1 -1
- package/dist/assets/{deploy-store-CxnShfQj.js → deploy-store-D6snB1j5.js} +1 -1
- package/dist/assets/{detail-card-CwtjhGfi.js → detail-card-Du8OuE3q.js} +1 -1
- package/dist/assets/{detail-panel-stop-button-C1rystDS.js → detail-panel-stop-button-BNuh6N0s.js} +1 -1
- package/dist/assets/{detail-shell-DcNnOqM_.js → detail-shell-Cyqr5FXJ.js} +1 -1
- package/dist/assets/{developer-page-Bu7HBiPJ.js → developer-page-QMFEIyBS.js} +1 -1
- package/dist/assets/{devices-redirect-page-Cvt_H5ig.js → devices-redirect-page-B14wK98N.js} +1 -1
- package/dist/assets/{diagnostics-Dva51gYK.js → diagnostics-T_96Uyh5.js} +1 -1
- package/dist/assets/doctor-handoff-store-CYjL1S0n.js +1 -0
- package/dist/assets/document-viewer-container-B7TEDeV0.js +2 -0
- package/dist/assets/{document-viewer-page-kV6TCXu0.js → document-viewer-page-3Eq8L562.js} +1 -1
- package/dist/assets/effective-timezone-CmcoXrio.js +1 -0
- package/dist/assets/{emails-page-D9E3uXkG.js → emails-page-Wr4wPSYl.js} +1 -1
- package/dist/assets/{esm-BWFeAIOX.js → esm-BKewCp71.js} +2 -2
- package/dist/assets/{esm-DKdDWqsF.js → esm-Deuay4YU.js} +2 -2
- package/dist/assets/{esm-C6-ZMSya.js → esm-Dk6A-sQ0.js} +2 -2
- package/dist/assets/{esm-BQjZqfJZ.js → esm-IoT87yZe.js} +2 -2
- package/dist/assets/{esm-BTyZM-kf.js → esm-PYpy75OW.js} +2 -2
- package/dist/assets/esm-xItcektK.js +2 -0
- package/dist/assets/{eye-bbox-DXmmg9ML.js → eye-bbox-C_V87iLg.js} +1 -1
- package/dist/assets/feature-flag-catalog-I9-eJQP_.js +1 -0
- package/dist/assets/file-markdown-DaflJFk7.js +2 -0
- package/dist/assets/{first-run-scope-BoT9LMYw.js → first-run-scope-CL5YbC3b.js} +1 -1
- package/dist/assets/{funnel-events-CK938pi2.js → funnel-events-n2IVlwTo.js} +1 -1
- package/dist/assets/general-page-lbkufqHg.js +1 -0
- package/dist/assets/{get-memory-stats-ERcqnC0Q.js → get-memory-stats-BCYSpBF6.js} +1 -1
- package/dist/assets/{haptics-D9eNTUq-.js → haptics-DvWjk9Fg.js} +2 -2
- package/dist/assets/hatching-screen-D81diZoa.js +1 -0
- package/dist/assets/{home-page-route-BOCisuYY.js → home-page-route-CHe8eoLz.js} +1 -1
- package/dist/assets/{hosting-screen-6xIW6q02.js → hosting-screen-D9atAksQ.js} +1 -1
- package/dist/assets/{identity-page-route-qWwRSRld.js → identity-page-route-CK3YsXCN.js} +1 -1
- package/dist/assets/index-0f48hi7h.js +11 -0
- package/dist/assets/index-UKZ4bO6i.css +2 -0
- package/dist/assets/{ingest-DGkxw0Go.js → ingest-BizI657K.js} +1 -1
- package/dist/assets/{inspect-page-CRBfQ5WU.js → inspect-page-COwvbHtX.js} +3 -3
- package/dist/assets/{installed-plugins-query-C29LGAEV.js → installed-plugins-query-Cgek0q7G.js} +1 -1
- package/dist/assets/{integration-icon-Dvjn3ytY.js → integration-icon-dv-9Zzx3.js} +1 -1
- package/dist/assets/integrations-page-CJOBwxXp.js +1 -0
- package/dist/assets/{intelligence-layout-DP9zklR6.js → intelligence-layout-MNoGhi-l.js} +1 -1
- package/dist/assets/{invalidate-plugin-queries-DamxiwYv.js → invalidate-plugin-queries-C3NTXkCX.js} +1 -1
- package/dist/assets/{keyboard-shortcuts-redirect-page--bCvhp62.js → keyboard-shortcuts-redirect-page-CBI_mZIL.js} +1 -1
- package/dist/assets/{latest-assistant-text-D5WR-o6J.js → latest-assistant-text-DOepZ_Io.js} +2 -2
- package/dist/assets/{library-detail-page-pviljaQw.js → library-detail-page-DVwI94NZ.js} +1 -1
- package/dist/assets/{library-page-CYYuLywk.js → library-page-CNA794WY.js} +1 -1
- package/dist/assets/local-mode-BTovbt13.js +39 -0
- package/dist/assets/{local-runtime-upgrade-BggVMXfW.js → local-runtime-upgrade-Bqn3d7Q7.js} +1 -1
- package/dist/assets/login-flow-CD9tyuFG.js +1 -0
- package/dist/assets/{login-page-DdHXGGAt.js → login-page-BNStrcnU.js} +1 -1
- package/dist/assets/{logout-page-DjihP6Qk.js → logout-page-CpFeuLA_.js} +1 -1
- package/dist/assets/{logs-layout-C84-h0Hn.js → logs-layout-BUiPeZ4I.js} +1 -1
- package/dist/assets/{machine-sizes-DAflIPTM.js → machine-sizes-DO8duvpy.js} +1 -1
- package/dist/assets/{memory-page-route-dGWTWCWF.js → memory-page-route-C0cBV7HD.js} +1 -1
- package/dist/assets/{memory-router-playground-page-CjUiz_bH.js → memory-router-playground-page-D4UIq8mw.js} +1 -1
- package/dist/assets/{messages-Dl5_cjD9.js → messages-CFcAW4iz.js} +2 -2
- package/dist/assets/{metric-card-CkAD9RpC.js → metric-card-05a5slPx.js} +1 -1
- package/dist/assets/{mobile-sidebar-drawer-CbJ5JfXT.js → mobile-sidebar-drawer-DtKU2vlu.js} +1 -1
- package/dist/assets/native-anchor-CeekjwVy.js +1 -0
- package/dist/assets/native-biometric-BAMIyaSS.js +6 -0
- package/dist/assets/{native-file-B6_oAU2Q.js → native-file-ySSv1sQ7.js} +2 -2
- package/dist/assets/navigation-resolver-DPJxzx0h.js +1 -0
- package/dist/assets/{not-found-DV3iLBwm.js → not-found-OqaWNmdx.js} +1 -1
- package/dist/assets/{notifications-page-B9vnqyB1.js → notifications-page-ClfcJeLf.js} +1 -1
- package/dist/assets/{oauth-complete-page-BSxiDbQm.js → oauth-complete-page-rVmA2Cl8.js} +1 -1
- package/dist/assets/{oauth-connection-utils-DbcihBL8.js → oauth-connection-utils-CWPUW4MK.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-CyYbqLoK.js → oauth-popup-complete-page-DBsOvLES.js} +1 -1
- package/dist/assets/{onboarding-layout-Dd5fPfE7.js → onboarding-layout-DLs1hfp_.js} +1 -1
- package/dist/assets/onboarding-store-bZ2qYISk.js +1 -0
- package/dist/assets/open-workspace-file-DtK3a84K.js +2 -0
- package/dist/assets/{page-empty-state-BA3_YQN2.js → page-empty-state-DT-tC1u6.js} +1 -1
- package/dist/assets/{page-shell-_QxBKTK3.js → page-shell-C7SUgga9.js} +1 -1
- package/dist/assets/{pairing-page-DPfIgf3F.js → pairing-page-ZkFipOSH.js} +1 -1
- package/dist/assets/{password-reset-page-D55bGMVy.js → password-reset-page-iASQZawH.js} +1 -1
- package/dist/assets/{personality-page-fJJd-i4s.js → personality-page-BJpW3UXD.js} +1 -1
- package/dist/assets/plans-page-BDKqdYNM.js +1 -0
- package/dist/assets/{platform-detection-CMiRPRCq.js → platform-detection-XEAAu4c-.js} +1 -1
- package/dist/assets/{platform-login-notice-BG9TFAJa.js → platform-login-notice-CdYiKsE8.js} +1 -1
- package/dist/assets/{platform-loopback-page-DunGLusR.js → platform-loopback-page-D0gXCm2S.js} +1 -1
- package/dist/assets/{plugin-detail-page-BngHrN8T.js → plugin-detail-page-Bx2wzKEf.js} +1 -1
- package/dist/assets/{plugins-page-DD0t1_pE.js → plugins-page-B2zQ2iGh.js} +1 -1
- package/dist/assets/{prefs-BZnS5vR_.js → prefs-bw85lYLp.js} +1 -1
- package/dist/assets/{privacy-page-nZvfh3dh.js → privacy-page-B0QN4qZO.js} +1 -1
- package/dist/assets/privacy-screen-vp4uUpm6.js +1 -0
- package/dist/assets/{provider-callback-page-BwANEd-K.js → provider-callback-page-BH6DES7c.js} +1 -1
- package/dist/assets/{provider-key-B3R8SlMJ.js → provider-key-D2Nsf9zh.js} +1 -1
- package/dist/assets/{provider-signup-page-Cz2DP-jP.js → provider-signup-page-BAPcG_iJ.js} +1 -1
- package/dist/assets/provisioning-targets-BTjyR9nk.js +1 -0
- package/dist/assets/{quick-input-page-CF2MJnCE.js → quick-input-page-Dq-0BGrJ.js} +1 -1
- package/dist/assets/{react-query.gen-r3I6j8-1.js → react-query.gen-C5c1Acuq.js} +1 -1
- package/dist/assets/{remote-gateway-session-BHjZ9gQ6.js → remote-gateway-session-yRYdsfDx.js} +1 -1
- package/dist/assets/{research-mock-page-DnbQpZcp.js → research-mock-page-BJEpxdMv.js} +1 -1
- package/dist/assets/research-onboarding-route-CFL3q__m.js +50 -0
- package/dist/assets/{research-results-view-CxhTn2J7.js → research-results-view-C4sIw2gK.js} +1 -1
- package/dist/assets/{resolved-assistants-store-C-PdxK8f.js → resolved-assistants-store-Dw5UuGyB.js} +1 -1
- package/dist/assets/retire-confirm-dialog-CsSY2-T8.js +1 -0
- package/dist/assets/review-terms-screen-BhyRQBjl.js +1 -0
- package/dist/assets/{risk-C_bbPQPd.js → risk-CdT92Vqr.js} +2 -2
- package/dist/assets/routes-CaP5Tqj7.js +23 -0
- package/dist/assets/routes-D9sNqB_o.js +1 -0
- package/dist/assets/{runtime-upgrade-banner-DQI-l3Yc.js → runtime-upgrade-banner-DPqzKtZU.js} +2 -2
- package/dist/assets/{schedules-DF5cTXBf.js → schedules-6hzhR_C_.js} +1 -1
- package/dist/assets/schedules-page-DVnUeaoB.js +1 -0
- package/dist/assets/{sdk.gen-BVAVE6A_.js → sdk.gen-BHZ0fJla.js} +1 -1
- package/dist/assets/{security-redirect-page-BEohiPDW.js → security-redirect-page-4DKqyPsf.js} +1 -1
- package/dist/assets/{select-assistant-screen-C2q8wO2f.js → select-assistant-screen-CVV3iqMy.js} +1 -1
- package/dist/assets/{settings-divider-CXIrJieH.js → settings-divider-Ro7lPCkV.js} +1 -1
- package/dist/assets/settings-layout-B_4PKJr9.js +1 -0
- package/dist/assets/settings-navigation-CSG7jiyJ.js +1 -0
- package/dist/assets/{share-feedback-modal-B05-nKgu.js → share-feedback-modal-BoWCg4KH.js} +1 -1
- package/dist/assets/{sidebar-tree-ByF78JHW.js → sidebar-tree-C_PPNHe5.js} +1 -1
- package/dist/assets/{signup-page-CGauGszD.js → signup-page-D0S_8XYw.js} +1 -1
- package/dist/assets/{signup-shell-Bw6r9tWP.js → signup-shell-CMsBZ8vG.js} +1 -1
- package/dist/assets/{site-favicon-CCyX9r-Z.js → site-favicon-BB1pYWLF.js} +1 -1
- package/dist/assets/skill-detail-page-CTobyK6L.js +1 -0
- package/dist/assets/{skill-detail-panel-crqCBZbU.js → skill-detail-panel-CNzionF7.js} +1 -1
- package/dist/assets/{skills-C1CAcW7T.js → skills-Cum1XWT2.js} +1 -1
- package/dist/assets/{skills-page-BikP-AR7.js → skills-page-DZVxAbua.js} +1 -1
- package/dist/assets/slack-setup-wizard-DK2F8LXc.js +1 -0
- package/dist/assets/{sound-manager-xEbUgFv-.js → sound-manager-Bx-OcMAz.js} +1 -1
- package/dist/assets/{sounds-page-9_otQ97S.js → sounds-page-C45-RF4i.js} +1 -1
- package/dist/assets/{src-D89CNeuT.js → src-te3YTBG-.js} +4 -4
- package/dist/assets/{start-screen-DSF3melT.js → start-screen-CkJiCl9b.js} +1 -1
- package/dist/assets/{subagent-detail-panel-q0g4JWAX.js → subagent-detail-panel-DyyMdaNO.js} +1 -1
- package/dist/assets/subagent-store-MDi6lBXs.js +3 -0
- package/dist/assets/{superpowers-page-UgdWFWsF.js → superpowers-page-CaLzK5D-.js} +1 -1
- package/dist/assets/{system-events-page-Bw94HLwx.js → system-events-page-DXAU01ZO.js} +1 -1
- package/dist/assets/{system-events-redirect-page-BGZQC8-K.js → system-events-redirect-page-Bm9bipNo.js} +1 -1
- package/dist/assets/{theme-stage-page-bEZxHTyN.js → theme-stage-page-BDTCmutO.js} +1 -1
- package/dist/assets/{threshold-presets-BO8En2q0.js → threshold-presets-BdTTHCnm.js} +1 -1
- package/dist/assets/{tiptap-document-editor-CyY1HRzV.js → tiptap-document-editor-CHn2wCDv.js} +1 -1
- package/dist/assets/{tool-detail-panel-DFMOphDJ.js → tool-detail-panel-DFrWEWKG.js} +1 -1
- package/dist/assets/{transcript-message-body-shared-nWAkSzar.js → transcript-message-body-shared-D9_d2c2X.js} +1 -1
- package/dist/assets/{trust-rules-api-C0-hkXT2.js → trust-rules-api-B5lfygCA.js} +1 -1
- package/dist/assets/{upgrade-cancel-page-DwxI6NLL.js → upgrade-cancel-page-eiJEAvFz.js} +1 -1
- package/dist/assets/{upgrade-success-page-SO92J-Rf.js → upgrade-success-page-Cb1Gl4MM.js} +1 -1
- package/dist/assets/{usage-redirect-page-BJBkecYr.js → usage-redirect-page-BOfJ7uot.js} +1 -1
- package/dist/assets/{use-active-assistant-id-Cjbsk2Q3.js → use-active-assistant-id-CldxA_-M.js} +1 -1
- package/dist/assets/{use-app-theme-Q42fO5Nz.js → use-app-theme-Dg8A6vPA.js} +1 -1
- package/dist/assets/{use-assistant-avatar-DSu2_Mzi.js → use-assistant-avatar-bwLHcMz4.js} +1 -1
- package/dist/assets/{use-assistant-capability-gxe56K48.js → use-assistant-capability-CDS7GbSO.js} +1 -1
- package/dist/assets/{use-assistant-identity-details-CpHkzjrI.js → use-assistant-identity-details-9JRWxXTQ.js} +1 -1
- package/dist/assets/{use-avatar-accent-var-PV9tsBJj.js → use-avatar-accent-var-vpakP1ce.js} +1 -1
- package/dist/assets/{use-bookmarks-BbJtKyHe.js → use-bookmarks-CK-nOiT-.js} +1 -1
- package/dist/assets/{use-bundled-avatar-components-Gp_YaD6o.js → use-bundled-avatar-components-Bbs4vCnX.js} +2 -2
- package/dist/assets/use-checkout-dismiss-refresh-CqGR_OsB.js +1 -0
- package/dist/assets/use-command-palette-sections-CkpUaAKs.js +1 -0
- package/dist/assets/{use-edge-swipe-DVeTYbmY.js → use-edge-swipe-Wm9pU2HX.js} +1 -1
- package/dist/assets/{use-edge-swipe-back-DDq-N20h.js → use-edge-swipe-back-BcSHNCwS.js} +1 -1
- package/dist/assets/{use-edit-app-DfFIonqZ.js → use-edit-app-B_Nequzs.js} +1 -1
- package/dist/assets/{use-effective-timezone-LqzBqHBy.js → use-effective-timezone-Dqs8OaXJ.js} +1 -1
- package/dist/assets/use-invite-link-dialog-CPPOduk8.js +1 -0
- package/dist/assets/{use-ios-app-nudge-BO8jWfr0.js → use-ios-app-nudge-B-ojl-b1.js} +1 -1
- package/dist/assets/use-is-org-ready-C5xlYywh.js +1 -0
- package/dist/assets/use-onboarding-login-DI5gvqEG.js +1 -0
- package/dist/assets/use-platform-assistant-id-DOsSt6k1.js +1 -0
- package/dist/assets/use-platform-gate-C65D14xY.js +1 -0
- package/dist/assets/{use-reduced-motion-Se97jRQ-.js → use-reduced-motion-W1fCe3vS.js} +1 -1
- package/dist/assets/{use-save-twilio-credentials-CUQ6gdIj.js → use-save-twilio-credentials-c9xG9RPK.js} +1 -1
- package/dist/assets/{use-skill-actions-DgK7Nmt1.js → use-skill-actions-BAAx1Eia.js} +1 -1
- package/dist/assets/{use-skill-detail-files-_v4zUF6S.js → use-skill-detail-files-BvOKvY0-.js} +1 -1
- package/dist/assets/use-sticky-profiles-CdWX0mgI.js +1 -0
- package/dist/assets/{use-subagent-card-data-YbAN73Fw.js → use-subagent-card-data-DHuNtSy9.js} +1 -1
- package/dist/assets/use-supports-credentials-settings-BbfghcWq.js +1 -0
- package/dist/assets/{use-swipe-engine-DRvffOuu.js → use-swipe-engine-6PcZZMVD.js} +1 -1
- package/dist/assets/{utils-BtC1KiH4.js → utils-B0rBxtYP.js} +1 -1
- package/dist/assets/{viewer-store-BDpZVbcr.js → viewer-store-DLk-jp8U.js} +1 -1
- package/dist/assets/{voice-list-DJeZeHuA.js → voice-list-CW8mzaHU.js} +1 -1
- package/dist/assets/{voice-page-DQcyxaPl.js → voice-page-0zsCIOdT.js} +1 -1
- package/dist/assets/{voice-picker-modal-BXMvQihh.js → voice-picker-modal-PdsZwrsV.js} +1 -1
- package/dist/assets/{weather-forecast-display-D2sn4QD4.js → weather-forecast-display-BAAnrNdd.js} +1 -1
- package/dist/assets/{web-Bj8XUknF.js → web-B3Q8ntoM.js} +1 -1
- package/dist/assets/{web-BE7l06mM.js → web-BlvxItuO.js} +1 -1
- package/dist/assets/{welcome-screen-n-cGiojh.js → welcome-screen-DwOAZpZS.js} +1 -1
- package/dist/assets/{workflow-detail-panel-Cq3AwWXE.js → workflow-detail-panel-DGL2BZSr.js} +1 -1
- package/dist/assets/{workflow-store-QV5aMjTt.js → workflow-store-lM7yKbUo.js} +1 -1
- package/dist/assets/workspace-page-D4NvhCv1.js +1 -0
- package/dist/assets/workspace-tree-query-B1A-efgV.js +1 -0
- package/dist/index.html +144 -141
- package/package.json +1 -1
- package/dist/assets/access-D3fUSyFH.js +0 -1
- package/dist/assets/ai-page-BznkOakE.js +0 -1
- package/dist/assets/animated-avatar-DzfEDnTh.js +0 -1
- package/dist/assets/api-CJFoPWHm.js +0 -1
- package/dist/assets/auth-store-D9BqFncz.js +0 -2
- package/dist/assets/billing-page-Cc5fHBn2.js +0 -3
- package/dist/assets/build-state-WR9nlRgM.js +0 -1
- package/dist/assets/channels-page-route-wxREzs6W.js +0 -9
- package/dist/assets/chat-avatar-DIDq1Jt5.js +0 -1
- package/dist/assets/chat-markdown-message-ERK48E1Z.js +0 -2
- package/dist/assets/client-feature-flag-store-oTfL8Oiz.js +0 -1
- package/dist/assets/consent-DbD2Hcbf.js +0 -1
- package/dist/assets/conversation-navigation-Wm7_pLFs.js +0 -1
- package/dist/assets/credentials-page-B-AJyMvk.js +0 -1
- package/dist/assets/debug-page-DWEIExMH.js +0 -4
- package/dist/assets/document-viewer-container-Cl4jDmfx.js +0 -2
- package/dist/assets/effective-timezone-qiooajmO.js +0 -1
- package/dist/assets/esm-CDPcGg-B.js +0 -2
- package/dist/assets/feature-flag-catalog-BAyJlRMY.js +0 -1
- package/dist/assets/file-Ddp9Dqgl.js +0 -1
- package/dist/assets/file-markdown-CLmQTpqL.js +0 -2
- package/dist/assets/general-page-DpKVqj5t.js +0 -1
- package/dist/assets/hatching-screen-d3SWqFKY.js +0 -1
- package/dist/assets/index-B0l9Wjpj.css +0 -2
- package/dist/assets/index-BOC87TAq.js +0 -11
- package/dist/assets/integrations-page-D5KWY6v-.js +0 -1
- package/dist/assets/local-mode-Ckii2tmN.js +0 -39
- package/dist/assets/login-flow-BCNBNLzu.js +0 -1
- package/dist/assets/native-anchor-CVNubOIm.js +0 -1
- package/dist/assets/native-biometric-CntdlaL-.js +0 -6
- package/dist/assets/onboarding-store-DutUn1E3.js +0 -1
- package/dist/assets/open-workspace-file-CpveqBim.js +0 -2
- package/dist/assets/plans-page-C-JyEPT_.js +0 -1
- package/dist/assets/privacy-screen-D2aDT6E6.js +0 -1
- package/dist/assets/research-onboarding-route-yg2iKw6i.js +0 -50
- package/dist/assets/retire-confirm-dialog--eF_pXhA.js +0 -1
- package/dist/assets/review-terms-screen-Dpk-gyJE.js +0 -1
- package/dist/assets/routes-BBFM42ft.js +0 -23
- package/dist/assets/routes-vE-2hncW.js +0 -1
- package/dist/assets/schedules-page-Dgu-znOf.js +0 -1
- package/dist/assets/settings-layout-b7iBWIT-.js +0 -1
- package/dist/assets/settings-navigation-BGdjm0Ki.js +0 -1
- package/dist/assets/skill-detail-page-GlV5JRzQ.js +0 -1
- package/dist/assets/slack-setup-wizard-DKj1_XdA.js +0 -1
- package/dist/assets/stream-watchdog-BafbDdX9.js +0 -1
- package/dist/assets/subagent-store-D-GPthdC.js +0 -3
- package/dist/assets/use-checkout-dismiss-refresh-kdxxDNpF.js +0 -1
- package/dist/assets/use-command-palette-sections-BWjxkwKB.js +0 -1
- package/dist/assets/use-invite-link-dialog-DX58-LWY.js +0 -1
- package/dist/assets/use-is-org-ready-X_98Cnx9.js +0 -1
- package/dist/assets/use-onboarding-login-B8rpbSEh.js +0 -1
- package/dist/assets/use-platform-gate-Dry0Nv4f.js +0 -1
- package/dist/assets/use-sticky-profiles-B0zVD3uk.js +0 -1
- package/dist/assets/workspace-page-CL9z2Jrs.js +0 -1
- /package/dist/assets/{app-info-qQex8Ndg.js → app-info-DefDjPEl.js} +0 -0
- /package/dist/assets/{app-types-CBg2__YH.js → app-types-DSkgEmV3.js} +0 -0
- /package/dist/assets/{apple-logo-poQac1tY.js → apple-logo--8ZT6Umn.js} +0 -0
- /package/dist/assets/{avatar-bundled-components-CecbESCk.js → avatar-bundled-components-DPqbVXi9.js} +0 -0
- /package/dist/assets/{avatar-subagent-C9WTTUjI.js → avatar-subagent-CRA2B82x.js} +0 -0
- /package/dist/assets/{avatar-svg-compositor-FtVPqzlC.js → avatar-svg-compositor-Dl-ckXRE.js} +0 -0
- /package/dist/assets/{avatar-tone-CMoWR2JX.js → avatar-tone-BKwvoDSj.js} +0 -0
- /package/dist/assets/{browser-timezone-C_0jBUid.js → browser-timezone-CGwaX5Uv.js} +0 -0
- /package/dist/assets/{build.umd-59c0EvgO.js → build.umd-Bixyt_xE.js} +0 -0
- /package/dist/assets/{by-tool-use-id-index-aoRP6d51.js → by-tool-use-id-index-M50wYE1f.js} +0 -0
- /package/dist/assets/{chat-BrL0k2UY.js → chat-CDFCY8f0.js} +0 -0
- /package/dist/assets/{chat-layout-slots-store-C2IFeZFr.js → chat-layout-slots-store-BJfYGnd7.js} +0 -0
- /package/dist/assets/{conversation-selection-3EKkKt0G.js → conversation-selection-oJy8Oht3.js} +0 -0
- /package/dist/assets/{conversation-store-bshB7nDP.js → conversation-store-C--wWMNW.js} +0 -0
- /package/dist/assets/{definitions-PikNVFdS.js → definitions-D_AmTPWg.js} +0 -0
- /package/dist/assets/{definitions-OhJf_HMS.js → definitions-JF3PcEff.js} +0 -0
- /package/dist/assets/{dictation-overlay-page-zpoNqudq.js → dictation-overlay-page-DtgaXzdF.js} +0 -0
- /package/dist/assets/{edge-swipe-arbiter-store-DyemvsR-.js → edge-swipe-arbiter-store-CQnDi2yf.js} +0 -0
- /package/dist/assets/{edit-chat-session-yPtopwB6.js → edit-chat-session-D37Qx6ol.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-COLzb2Wj.js → emoji-catalog-data-BCc1YNMR.js} +0 -0
- /package/dist/assets/{environment-store-BFVmN-OW.js → environment-store-Bft0lpgv.js} +0 -0
- /package/dist/assets/{esm-DEY-lP80.js → esm-DNvorKcw.js} +0 -0
- /package/dist/assets/{external-urls-BYwuIdYk.js → external-urls-_vjsdj2L.js} +0 -0
- /package/dist/assets/{file-editor-DpNdd7HZ.js → file-editor-phorJEVv.js} +0 -0
- /package/dist/assets/{format-date-RZ9mCDCy.js → format-date-BGnM4mqL.js} +0 -0
- /package/dist/assets/{format-file-size-CQaPE33p.js → format-file-size-BgMTiWPt.js} +0 -0
- /package/dist/assets/{hard-navigate-DZlpL1No.js → hard-navigate-DyUrcxe0.js} +0 -0
- /package/dist/assets/{link-click-BoSQACXo.js → link-click-DLYgWZdo.js} +0 -0
- /package/dist/assets/{misc-DckBb5zz.js → misc-CuYswARt.js} +0 -0
- /package/dist/assets/{mutation-error-CwYvaYnb.js → mutation-error-DEknRDAQ.js} +0 -0
- /package/dist/assets/{native-deep-link-PvbVHiPM.js → native-deep-link-DCBJ-Rw0.js} +0 -0
- /package/dist/assets/{oauth-popup-DZEqljdC.js → oauth-popup-OhSYYlQF.js} +0 -0
- /package/dist/assets/{onboarding-step-layout-CURfuoh4.js → onboarding-step-layout-D9rghAjS.js} +0 -0
- /package/dist/assets/{optimistic-lifecycle-C2a6IJ7E.js → optimistic-lifecycle-BINTsVFx.js} +0 -0
- /package/dist/assets/{pdf-IQXtc7_x.js → pdf-BlwLcQAc.js} +0 -0
- /package/dist/assets/{plugin-attribution-DCFEMRUF.js → plugin-attribution-DrwveSW_.js} +0 -0
- /package/dist/assets/{plugins-surface-D4i2vqBz.js → plugins-surface-B43Op43l.js} +0 -0
- /package/dist/assets/{pointer-RLpjGG7A.js → pointer-BbPfN86L.js} +0 -0
- /package/dist/assets/{prechat-DIuViPZk.js → prechat-CeL4a_1i.js} +0 -0
- /package/dist/assets/{profile-metadata-h4CTeMKT.js → profile-metadata-BhqRdqUJ.js} +0 -0
- /package/dist/assets/{proxy-RtD8704m.js → proxy-D7UPVac3.js} +0 -0
- /package/dist/assets/{public-asset-CbDDcomC.js → public-asset-BBVUuTT_.js} +0 -0
- /package/dist/assets/{react-query.gen-Mwd5l-vZ.js → react-query.gen-BC3STDmV.js} +0 -0
- /package/dist/assets/{research-facts-UIXXE8D6.js → research-facts-B7Ev1zv0.js} +0 -0
- /package/dist/assets/{research-onboarding-persistence-CceFfAqE.js → research-onboarding-persistence-51lJoYJ2.js} +0 -0
- /package/dist/assets/{sandbox-bridge-DgDrAWv3.js → sandbox-bridge-BxW8HZq_.js} +0 -0
- /package/dist/assets/{sdk.gen-DPKrJeho.js → sdk.gen-B5ygTzyg.js} +0 -0
- /package/dist/assets/{setting-row-0LXvW7Kh.js → setting-row-BwXKepmJ.js} +0 -0
- /package/dist/assets/{status-badge-pill-z1OKPW3B.js → status-badge-pill-wJPMXQk1.js} +0 -0
- /package/dist/assets/{theme-preferences-ln8xC5zH.js → theme-preferences-Bb2pPRXa.js} +0 -0
- /package/dist/assets/{three-dot-indicator-SJcKW5cG.js → three-dot-indicator-BMvKQ_On.js} +0 -0
- /package/dist/assets/{use-bus-subscription-Cu4Y9DQi.js → use-bus-subscription-nUrbz9Mu.js} +0 -0
- /package/dist/assets/{use-copy-to-clipboard-DBVpNZOl.js → use-copy-to-clipboard-cF7ZSilD.js} +0 -0
- /package/dist/assets/{use-is-mobile-Bz2l7wPL.js → use-is-mobile-BlQuzI5Z.js} +0 -0
- /package/dist/assets/{web-7I6Bn0iP.js → web-9Cwi5jnT.js} +0 -0
- /package/dist/assets/{web-CBluPLFP.js → web-Bi-BvsRt.js} +0 -0
- /package/dist/assets/{web-Cmg3AbZk.js → web-D486_dlv.js} +0 -0
- /package/dist/assets/{web-DHVjLzid.js → web-DUb4LJ2M.js} +0 -0
- /package/dist/assets/{web-BEpNr5_U.js → web-l9DWMZeA.js} +0 -0
- /package/dist/assets/{web-BPyURh2Z.js → web-sr1ba6fP.js} +0 -0
- /package/dist/assets/{workflow-status-DXdUkbSd.js → workflow-status-HyIIhMBP.js} +0 -0
- /package/dist/assets/{workspace-theme-tokens-J8dqkK9n.js → workspace-theme-tokens-DNNwX-XS.js} +0 -0
- /package/dist/assets/{xterm-CdT0HObJ.js → xterm-DgGqTfet.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-CPcVj1i5.js → xterm-addon-fit-BVObYBMM.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{a as t,c as n,i as r}from"./local-settings-C-dW2vkq.js";import{r as i,t as a}from"./capture-error-Bj8_eutd.js";import{t as o}from"./react-BFJW0bSv.js";import{t as s}from"./button-Dy5001j6.js";import{m as c,u as l}from"./chunk-5KNZJZUH-Bsoom5--.js";import{n as u}from"./QueryClientProvider-CMu7CkQU.js";import{t as d}from"./useQuery-Bz-fbQ-m.js";import{t as f}from"./useMutation-CXGTrp4W.js";import{t as p}from"./jsx-runtime-D3ZM-ToX.js";import{t as m}from"./cn-CJf7MmLX.js";import{t as h}from"./typography-DEI9Ra9z.js";import{t as g}from"./createLucideIcon-CAM1RhH8.js";import{t as _}from"./check-sC49_hjU.js";import{t as v}from"./chevron-down-B5A-0g8A.js";import{t as y}from"./circle-alert-DVCpoZrc.js";import{t as b}from"./circle-check-CjGnAahM.js";import{t as x}from"./clock-BYTc0Ds9.js";import{t as S}from"./external-link-CS0aVYGt.js";import{t as C}from"./info-vgPTIsGI.js";import{t as w}from"./list-DNbTcxAh.js";import{t as T}from"./loader-circle-XREx3i4W.js";import{t as E}from"./mail-CMdPNysl.js";import{t as D}from"./search-BVW-n8to.js";import{t as O}from"./trash-2-L5LNgw9o.js";import{t as k}from"./triangle-alert-CQfiAg_t.js";import{t as A}from"./notice-BMK7xqUw.js";import{j}from"./src-D89CNeuT.js";import{t as M}from"./tag-NXcyiTkK.js";import{t as N}from"./popover-BRpYVASI.js";import{t as P}from"./input-hw3el2GJ.js";import{t as F}from"./toggle-lfnhEAcN.js";import{t as I}from"./modal-BR4CUFBd.js";import{n as L}from"./toast-LgLp4obE.js";import{t as R}from"./confirm-dialog-UYFm4osC.js";import{t as z}from"./dropdown-BCfnSdIZ.js";import{$ as B,A as V,B as ee,C as H,F as U,G as W,H as te,I as G,J as K,K as q,L as J,M as Y,N as X,P as Z,Q as ne,R as re,S as ie,U as ae,V as oe,W as se,X as ce,Y as le,Z as ue,_ as de,a as fe,at as pe,b as me,c as he,d as ge,et as _e,f as ve,g as ye,h as be,i as xe,it as Se,j as Ce,k as we,l as Te,m as Ee,n as De,nt as Oe,o as ke,ot as Ae,p as je,q as Me,r as Ne,rt as Pe,s as Fe,st as Ie,t as Le,tt as Re,u as ze,v as Be,x as Ve,z as He}from"./use-sticky-profiles-B0zVD3uk.js";import{Ut as Ue,Wt as We,ar as Ge,ft as Ke,j as qe,lt as Je,wn as Ye}from"./sdk.gen-BVAVE6A_.js";import{Bt as Xe,Ft as Ze,H as Qe,V as $e,_t as et,c as tt,d as nt,f as rt,l as it,m as at,p as ot,u as st}from"./react-query.gen-r3I6j8-1.js";import{t as ct}from"./assistant-identity-store-DIyVo8LV.js";import{i as lt,r as ut,t as dt}from"./utils-CnB60ZJN.js";import{r as ft}from"./api-errors-CFiCT7Ap.js";import{u as pt}from"./routes-vE-2hncW.js";import{i as mt}from"./use-platform-gate-Dry0Nv4f.js";import{t as ht}from"./use-is-org-ready-X_98Cnx9.js";import{c as gt,d as _t,f as vt,g as yt,h as bt,l as xt,lt as St,m as Ct,o as wt,p as Tt,s as Et,u as Dt,v as Ot,y as kt}from"./react-query.gen-Mwd5l-vZ.js";import{a as At,i as jt,n as Mt,o as Nt}from"./voice-list-DJeZeHuA.js";import{t as Pt}from"./platform-login-notice-BG9TFAJa.js";import{t as Ft}from"./use-active-assistant-id-Cjbsk2Q3.js";import{t as It}from"./detail-card-CwtjhGfi.js";import{t as Lt}from"./environment-store-BFVmN-OW.js";var Rt=g(`grip-vertical`,[[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}],[`circle`,{cx:`9`,cy:`5`,r:`1`,key:`hp0tcf`}],[`circle`,{cx:`9`,cy:`19`,r:`1`,key:`fkjjf6`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`circle`,{cx:`15`,cy:`19`,r:`1`,key:`f4zoj3`}]]),Q=e(o(),1),$=p();function zt({mode:e,onChange:t}){return(0,$.jsx)(`div`,{className:`max-w-[280px]`,children:(0,$.jsx)(j,{ariaLabel:`Service mode`,value:e,onChange:t,items:[{value:`managed`,label:`Managed`},{value:`your-own`,label:`Your Own`}]})})}function Bt({id:e,title:t,subtitle:n,mode:r,onModeChange:i,children:a}){return(0,$.jsxs)(It,{id:e,title:t,subtitle:n,accessory:(0,$.jsx)(zt,{mode:r,onChange:i}),children:[(0,$.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,$.jsx)(`div`,{className:`mt-4`,children:a})]})}function Vt({id:e,title:t,subtitle:n,children:r}){return(0,$.jsxs)(It,{id:e,title:t,subtitle:n,children:[(0,$.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,$.jsx)(`div`,{className:`mt-4`,children:r})]})}function Ht(){return(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] px-4 py-2.5`,children:[(0,$.jsx)(C,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-tertiary)]`}),(0,$.jsxs)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:[`Managed services are metered and deducted from your Vellum account balance.`,` `,(0,$.jsxs)(`a`,{href:`https://www.vellum.ai/docs/pricing`,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--primary-base)] hover:underline`,children:[`View pricing`,(0,$.jsx)(S,{className:`h-3.5 w-3.5`})]})]})]})}function Ut({status:e,message:t,isLoading:n}){return n?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,children:[(0,$.jsx)(T,{className:`h-3 w-3 animate-spin`}),`Checking domain…`]}):e?e===`verified`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-positive-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,title:`DNS records have been verified. Your domain is ready to send and receive email.`,children:[(0,$.jsx)(_,{className:`h-3 w-3`}),`Domain verified`]}):e===`pending`||e===`not_started`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-mid-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-mid-strong)]`,title:`DNS records have been provisioned. Waiting for the email provider to verify them — this usually takes a few minutes.`,children:[(0,$.jsx)(x,{className:`h-3 w-3`}),`Verifying domain…`]}):(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-negative-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,title:`Domain verification failed. DNS records may not have propagated correctly. You could try releasing and re-registering the domain.`,children:[(0,$.jsx)(y,{className:`h-3 w-3`}),`Verification failed`]}):(0,$.jsx)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,title:`Unable to retrieve domain verification status.`,children:`Unknown status`})}function Wt({onClick:e,disabled:t}){return(0,$.jsx)(s,{onClick:e,disabled:t,children:`Save`})}function Gt({onClick:e,filled:t=!1}){return(0,$.jsx)(s,{variant:t?`danger`:`dangerGhost`,onClick:e,children:`Reset`})}function Kt({guide:e}){return(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(C,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`span`,{children:e.description}),(0,$.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e.linkLabel,(0,$.jsx)(S,{className:`h-3 w-3`})]})]})]})}var qt=`__custom__`;function Jt(e){return e?!!(e.profile||e.provider||e.model):!1}function Yt(e,t){let n=Jt(e);return n===Jt(t)?n?(e?.profile??null)===(t?.profile??null)&&(e?.provider??null)===(t?.provider??null)&&(e?.model??null)===(t?.model??null):!0:!1}function Xt({id:e,displayName:t,description:n,defaultProfileLabel:r,draft:i,profileOptions:a,onDraftChange:o,onToggle:s}){let c=Jt(i),l=!i||!c?``:i.provider||i.model?qt:i.profile??``,u=l===qt,d=He(),f=d[0]??Pe[0],p=d.find(e=>e===i?.provider)??f,m=Ie(p).map(e=>({value:e.id,label:e.displayName})),h=!!i?.provider&&!i?.model;function g(t){t===`__custom__`?o(e,{profile:null,provider:f,model:Ae(f)??``}):t===``?o(e,null):o(e,{profile:t,provider:null,model:null})}function _(t){let n=Ae(t)??``;o(e,{...i??{},profile:null,provider:t,model:n})}function v(t){o(e,{...i??{},model:t})}return(0,$.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] p-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-default font-medium text-[var(--content-default)]`,children:t}),n&&(0,$.jsxs)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:[n,r&&(0,$.jsxs)(`span`,{className:`ml-1.5 text-body-small-default text-[var(--content-tertiary)] opacity-60`,children:[`· Default: `,r]})]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[c&&(0,$.jsx)(z,{value:l,onChange:g,options:a,className:`w-44`,menuMinWidth:280,menuAlign:`end`}),(0,$.jsx)(F,{checked:c,onChange:t=>s(e,t),"aria-label":`Override ${t}`})]})]}),c&&u&&(0,$.jsxs)(`div`,{className:`mt-3 space-y-2 border-t border-[var(--border-base)] pt-3`,children:[(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex-1`,children:[(0,$.jsx)(`label`,{className:`mb-1 block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,$.jsx)(z,{value:p??``,onChange:_,options:d.map(e=>({value:e,label:pe[e]??e}))})]}),(0,$.jsxs)(`div`,{className:`flex-1`,children:[(0,$.jsx)(`label`,{className:`mb-1 block text-body-small-default text-[var(--content-tertiary)]`,children:`Model`}),(0,$.jsx)(z,{value:i?.model??``,onChange:v,options:m})]})]}),h&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:`Pick a model`})]})]})}function Zt({isOpen:e,onClose:t,assistantId:n}){let r=(0,Q.useRef)(!1);return(0,$.jsx)(I.Root,{open:e,onOpenChange:e=>{!e&&!r.current&&t()},children:e?(0,$.jsx)(Qt,{assistantId:n,onClose:t,onSavingChange:e=>{r.current=e}}):null})}function Qt({assistantId:e,onClose:t,onSavingChange:n}){let r=u(),{data:i}=d({...tt({path:{assistant_id:e}}),staleTime:3e4}),o=(0,Q.useMemo)(()=>i?.llm?.profiles??{},[i?.llm?.profiles]),c=(0,Q.useMemo)(()=>i?.llm?.profileOrder??[],[i?.llm?.profileOrder]),l=(0,Q.useMemo)(()=>i?.llm?.callSites??{},[i?.llm?.callSites]),f=(0,Q.useMemo)(()=>W(o,c),[o,c]),p=He(),m=Xe({onSuccess:t=>{st(r,{path:{assistant_id:e}},t)}}),[h,g]=(0,Q.useState)(``),[_,v]=(0,Q.useState)(``),[y,b]=(0,Q.useState)({}),[x,S]=(0,Q.useState)(!1),[C,w]=(0,Q.useState)(!1),{data:E,isLoading:O,isError:k,refetch:A}=d({...nt({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4,refetchOnWindowFocus:!1}),j=(0,Q.useMemo)(()=>(E?.callSites??[]).filter(e=>e.id!==`mainAgent`),[E]),M=!O&&!k&&!!E&&!!i,N=(0,Q.useMemo)(()=>j.map(e=>e.id),[j]),F=(0,Q.useMemo)(()=>{if(!M)return{};let e={};for(let t of N)if(t in y)e[t]=y[t];else{let n=l[t];e[t]=n?{...n}:{}}return e},[M,N,l,y]),B=(0,Q.useMemo)(()=>new Set(N),[N]),V=(0,Q.useMemo)(()=>Object.entries(l).some(([e,t])=>B.has(e)&&(t?.profile!=null||t?.provider!=null||t?.model!=null)),[l,B]),ee=(0,Q.useMemo)(()=>{if(!M)return!1;for(let e of Object.keys(F))if(!Yt(F[e],l[e]))return!0;return!1},[M,F,l]),H=(0,Q.useMemo)(()=>Object.values(F).some(e=>Jt(e)&&!!e?.provider&&!e?.model),[F]),U=(0,Q.useMemo)(()=>xe(f,[]).map(e=>({value:e.name,label:De(e)})),[f]),te=(0,Q.useCallback)(()=>{if(!_)return;let e={};for(let t of N)e[t]={profile:_};b(e)},[_,N]),G=(0,Q.useCallback)(e=>[...xe(f,[e]).map(e=>({value:e.name,label:De(e)})),{value:qt,label:`Custom`}],[f]),K=(0,Q.useMemo)(()=>{if(!h.trim())return j;let e=h.toLowerCase();return j.filter(t=>(t.displayName??``).toLowerCase().includes(e)||(t.description??``).toLowerCase().includes(e)||(t.domain??``).toLowerCase().includes(e))},[j,h]),q=(0,Q.useMemo)(()=>{if(!E)return[];let e=E.domains.map(e=>e.id),t=new Map(E.domains.map(e=>[e.id,e])),n=[];for(let r of e){let e=K.filter(e=>e.domain===r);e.length>0&&n.push({domain:t.get(r),sites:e})}let r=new Set(e),i=K.filter(e=>!r.has(e.domain));return i.length>0&&n.push({domain:{id:`other`,displayName:`Other`},sites:i}),n},[E,K]),J=(0,Q.useCallback)((e,t)=>{b(n=>({...n,[e]:t}))},[]),Y=(0,Q.useCallback)((e,t)=>{if(!t){b(t=>({...t,[e]:null}));return}let n=Ne(f,j.find(t=>t.id===e)?.defaultProfile);if(n)b(t=>({...t,[e]:{profile:n}}));else{let t=p[0]??Pe[0],n=Ae(t)??``;b(r=>({...r,[e]:{provider:t,model:n}}))}},[j,f,p]),X=(0,Q.useCallback)(async()=>{S(!0),n?.(!0);try{let n={};for(let e of Object.keys(F)){let t=F[e]??null;n[e]=Jt(t)?{profile:t?.profile??null,provider:t?.provider??null,model:t?.model??null}:null}await m.mutateAsync({path:{assistant_id:e},body:{llm:{callSites:n}}}),t(),L.success(`Overrides saved.`)}catch(e){L.error(`Failed to save overrides. Please try again.`),a(e,{context:`call_site_overrides_save`})}finally{S(!1),n?.(!1)}},[F,t,m,n,e]),Z=(0,Q.useCallback)(async()=>{S(!0),n?.(!0);try{let n={};for(let e of Object.keys(F))n[e]=null;await m.mutateAsync({path:{assistant_id:e},body:{llm:{callSites:n}}}),t(),L.success(`Overrides reset.`)}catch(e){L.error(`Failed to reset overrides. Please try again.`),a(e,{context:`call_site_overrides_reset`})}finally{S(!1),n?.(!1)}},[F,t,m,n,e]);return(0,$.jsxs)(I.Content,{size:`lg`,hideCloseButton:!0,children:[(0,$.jsxs)(I.Header,{children:[(0,$.jsx)(I.Title,{children:`Action Overrides`}),(0,$.jsx)(I.Description,{children:`Customize which model profile specific actions should use. Uses your default profile if no override is set.`})]}),(0,$.jsxs)(I.Body,{children:[(0,$.jsx)(`div`,{className:`mb-4`,children:(0,$.jsx)(P,{type:`search`,value:h,onChange:e=>g(e.target.value),placeholder:`Search actions…`,leftIcon:(0,$.jsx)(D,{className:`h-4 w-4`}),fullWidth:!0})}),U.length>0&&(0,$.jsxs)(`div`,{className:`mb-4 flex items-center gap-2 rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] p-3`,children:[(0,$.jsx)(`p`,{className:`min-w-0 flex-1 text-body-medium-default text-[var(--content-default)]`,children:`Use one profile for all actions`}),(0,$.jsx)(z,{value:_,onChange:v,options:U,placeholder:`Choose profile…`,className:`w-44`,menuMinWidth:280,menuAlign:`end`}),(0,$.jsx)(s,{variant:`outlined`,size:`compact`,onClick:te,disabled:!_||!M||x,children:`Apply to all`})]}),O&&(0,$.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,$.jsx)(T,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}),k&&(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-12 text-center`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Couldn't load actions`}),(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Make sure your assistant is running`}),(0,$.jsx)(s,{variant:`outlined`,size:`compact`,onClick:()=>void A(),children:`Retry`})]}),!O&&!k&&E&&(0,$.jsx)(`div`,{className:`space-y-4`,children:q.length===0?(0,$.jsx)(`p`,{className:`py-8 text-center text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No actions match your search.`}):q.map(({domain:e,sites:t})=>(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`p`,{className:`mb-2 text-body-small-default font-semibold uppercase tracking-wider text-[var(--content-tertiary)]`,children:e.displayName}),(0,$.jsx)(`div`,{className:`space-y-1`,children:t.map(e=>{let t=(()=>{let t=F[e.id]??null;return!t||!Jt(t)?``:t.provider||t.model?`__custom__`:t.profile??``})(),n=e.defaultProfile?f.find(t=>t.name===e.defaultProfile)?.label??e.defaultProfile:null;return(0,$.jsx)(Xt,{id:e.id,displayName:e.displayName,description:e.description,defaultProfileLabel:n,draft:F[e.id]??null,profileOptions:G(t===``||t===`__custom__`?null:t),onDraftChange:J,onToggle:Y},e.id)})})]},e.id))})]}),(0,$.jsxs)(I.Footer,{children:[V&&(0,$.jsx)(s,{variant:`outlined`,size:`compact`,onClick:()=>w(!0),disabled:x||!M,tintColor:`var(--system-negative-strong)`,className:`mr-auto`,children:`Reset to Defaults`}),(0,$.jsx)(s,{variant:`outlined`,size:`compact`,onClick:t,disabled:x,children:`Cancel`}),(0,$.jsx)(s,{variant:`primary`,size:`compact`,onClick:()=>void X(),disabled:!ee||H||x,children:x?(0,$.jsx)(T,{className:`h-4 w-4 animate-spin`}):`Save`})]}),(0,$.jsx)(R,{open:C,title:`Reset to Defaults`,message:`Every task override will be reset and will follow your active profile. This cannot be undone.`,confirmLabel:`Reset to Defaults`,destructive:!0,onConfirm:()=>{w(!1),Z()},onCancel:()=>w(!1)})]})}function $t({blocked:e,availableReplacements:t,replacement:n,onReplacementChange:r,error:i,saving:a,onClose:o,onConfirm:c}){let l=``;if(e){let t=e.label||e.name;l=e.isActive&&e.callSiteIds.length>0?`"${t}" is the active profile and is used by ${e.callSiteIds.length} call site(s). Pick a replacement profile.`:e.isActive?`"${t}" is the active profile. Pick a different active profile before deleting, or select a replacement below.`:`"${t}" is used by ${e.callSiteIds.length} call site(s). Select a replacement profile to reassign them before deleting.`}return(0,$.jsx)(I.Root,{open:e!==null,onOpenChange:e=>{e||o()},children:(0,$.jsxs)(I.Content,{size:`sm`,children:[(0,$.jsx)(I.Header,{children:(0,$.jsx)(I.Title,{children:`Can't Delete Profile`})}),(0,$.jsxs)(I.Body,{className:`space-y-4`,children:[(0,$.jsx)(h,{variant:`body-medium-default`,as:`p`,children:l}),e&&e.callSiteIds.length>0&&(0,$.jsx)(`ul`,{className:`space-y-1 pl-1`,children:e.callSiteIds.map(e=>(0,$.jsxs)(`li`,{className:`text-body-small-default text-(--content-secondary)`,children:[`• `,(0,$.jsx)(`code`,{children:e})]},e))}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Replacement profile`}),(0,$.jsx)(z,{"aria-label":`Replacement profile`,value:n,onChange:r,options:[{value:``,label:`Select a replacement…`},...t.map(e=>({value:e.name,label:e.label??e.name}))]})]}),i&&(0,$.jsx)(h,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:i})]}),(0,$.jsxs)(I.Footer,{children:[(0,$.jsx)(s,{variant:`ghost`,size:`compact`,onClick:o,children:`Cancel`}),(0,$.jsx)(s,{variant:`primary`,size:`compact`,disabled:!n||a,onClick:c,children:a?`Saving…`:`Reassign and Delete`})]})]})})}function en(e,t){if(e){let n=Ie(e).find(e=>e.id===t);if(n)return n.displayName}let n=t.lastIndexOf(`/`);return n>=0?t.slice(n+1):t}function tn(e,t){let n=[];e.description&&n.push(e.description);let r=e.provider_connection===`vellum`&&t?`vellum`:e.provider,i=[];if(e.model&&i.push(en(r,e.model)),r){let e=pe[r]??r;i.push(`hosted by ${e}`)}return i.length>0&&n.push(i.join(` `)),n.join(` – `)}function nn({profile:e,vellumIsManaged:t,isDragging:n,dropTarget:r,isDeleting:i,deleteError:a,isToggling:o,onDragStart:c,onDragEnd:l,onDragOver:u,onDragLeave:d,onDrop:f,onEditClick:p,onDeleteClick:m,onStatusToggle:g}){let _=e.source===`managed`,v=e.invariant===!0,y=e.status!==`disabled`;return(0,$.jsxs)(`div`,{className:`relative`,children:[r?.name===e.name&&!r.after&&(0,$.jsx)(`div`,{className:`mx-0 h-0.5 rounded-full bg-[var(--border-active)]`}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg pr-2 py-2${n?` opacity-50`:``}`,draggable:!_,onDragStart:c,onDragEnd:l,onDragOver:u,onDragLeave:d,onDrop:f,children:[(0,$.jsx)(Rt,{className:`h-4 w-4 shrink-0 ${_?`invisible`:`cursor-grab text-[var(--content-tertiary)]`}`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1${y?``:` opacity-55`}`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(h,{variant:`body-medium-default`,as:`span`,className:`text-(--content-default)`,children:e.label??e.name}),_&&(0,$.jsx)(M,{tone:`positive`,title:`Managed by Platform — this profile cannot be disabled, deleted, or renamed.`,children:`Platform`})]}),e.description||e.model||e.provider?(0,$.jsx)(h,{variant:`body-medium-lighter`,as:`p`,className:`mt-0.5 text-(--content-tertiary)`,children:tn(e,t)}):null]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(!v||!y)&&(0,$.jsx)(`div`,{className:`flex shrink-0 items-center`,title:y?`Active — toggle to hide from pickers`:`Disabled — toggle to show in pickers`,children:(0,$.jsx)(F,{checked:y,onChange:e=>g(e),disabled:o,"aria-label":`${y?`Disable`:`Enable`} ${e.label??e.name}`})}),(0,$.jsxs)(`div`,{className:`flex w-[92px] items-center justify-end gap-2`,children:[(0,$.jsx)(s,{variant:`ghost`,size:`compact`,onClick:p,children:_||v?`View`:`Edit`}),(0,$.jsx)(s,{variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)(O,{}),"aria-label":`Delete ${e.label??e.name}`,disabled:_||v||i,title:_||v?`Managed profiles cannot be deleted`:void 0,onClick:m,tintColor:`var(--system-negative-strong)`})]})]})]}),r?.name===e.name&&r.after&&(0,$.jsx)(`div`,{className:`mx-0 h-0.5 rounded-full bg-[var(--border-active)]`}),a?(0,$.jsx)(h,{variant:`body-small-default`,as:`p`,className:`px-2 pb-1 text-(--system-negative-strong)`,children:a}):null]})}function rn({isOpen:e,assistantId:t,onClose:n}){let r=u(),{data:i}=d({...tt({path:{assistant_id:t}}),staleTime:3e4}),o=(0,Q.useMemo)(()=>i?.llm?.profiles??{},[i?.llm?.profiles]),s=(0,Q.useMemo)(()=>i?.llm?.profileOrder??[],[i?.llm?.profileOrder]),c=i?.llm?.activeProfile??null,l=i?.llm?.callSites??{},f=(0,Q.useMemo)(()=>W(o,s),[o,s]),p=Xe({onSuccess:e=>{st(r,{path:{assistant_id:t}},e)}}),[m,h]=(0,Q.useState)(!1),[g,_]=(0,Q.useState)(null),{data:v}=d({...$e({path:{assistant_id:t}}),enabled:e}),y=v?.connections,b=y?.some(e=>e.name===`vellum`&&e.provider===`vellum`)??!1,x=Object.keys(o);async function S(e,n,r){let i=r?.mode??`replace`,c=!(e in o);if(i===`merge`&&!c){await p.mutateAsync({path:{assistant_id:t},body:{llm:{profiles:{[e]:n}}}}),h(!1),_(null);return}let l={profiles:{[e]:n}};if(c&&(l.profileOrder=s.includes(e)?s:[...s,e]),c)await p.mutateAsync({path:{assistant_id:t},body:{llm:l}});else{let n=o[e];await p.mutateAsync({path:{assistant_id:t},body:{llm:{profiles:{[e]:null}}}});try{await p.mutateAsync({path:{assistant_id:t},body:{llm:l}})}catch(r){throw a(r,{context:`settings-ai-profile-edit-recreate`}),n!=null&&await p.mutateAsync({path:{assistant_id:t},body:{llm:{profiles:{[e]:n}}}}).catch(()=>{}),r}}c&&L.success(`Profile "${n.label??e}" created`),h(!1),_(null)}return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(I.Root,{open:e,onOpenChange:e=>{e||n()},children:e?(0,$.jsx)(an,{assistantId:t,vellumIsManaged:b,profiles:o,profileOrder:s,orderedProfiles:f,activeProfile:c,callSiteOverrides:l,onClose:n,onEditClick:e=>{_(e),h(!0)},onNewClick:()=>{_(null),h(!0)}}):null}),(0,$.jsx)(we,{isOpen:m,mode:g?g.source===`managed`||g.invariant===!0?`view`:`edit`:`create`,profileName:g?.name,initialValues:g??void 0,existingNames:x,connections:y,assistantId:t,onSave:S,onCancel:()=>{h(!1),_(null)}})]})}function an({assistantId:e,vellumIsManaged:t,profiles:n,profileOrder:r,orderedProfiles:i,activeProfile:o,callSiteOverrides:c,onClose:l,onEditClick:d,onNewClick:f}){let p=u(),m=Xe({onSuccess:t=>{st(p,{path:{assistant_id:e}},t)}}),[g,_]=(0,Q.useState)({}),[v,y]=(0,Q.useState)({}),[b,x]=(0,Q.useState)(new Set),[S,C]=(0,Q.useState)(null),[w,T]=(0,Q.useState)(null),[E,D]=(0,Q.useState)(null),[O,k]=(0,Q.useState)(null),A=(0,Q.useRef)(null),j=(0,Q.useRef)(null),[M,N]=(0,Q.useState)(null),[P,F]=(0,Q.useState)(null),[L,R]=(0,Q.useState)(``),[z,B]=(0,Q.useState)(!1),V=(0,Q.useMemo)(()=>i,[i]);async function ee(t,r){if(b.has(t.name))return!1;x(e=>new Set(e).add(t.name)),C(null);let i=r?`active`:`disabled`;if(!n[t.name])return x(e=>{let n=new Set(e);return n.delete(t.name),n}),!1;try{return await m.mutateAsync({path:{assistant_id:e},body:{llm:{profiles:{[t.name]:{status:i}}}}}),!0}catch(e){return a(e,{context:`settings-ai-profile-toggle`}),C(`Couldn't update "${t.label??t.name}". Please try again.`),!1}finally{x(e=>{let n=new Set(e);return n.delete(t.name),n})}}async function H(t){y(e=>({...e,[t]:!0})),_(e=>{let n={...e};return delete n[t],n});try{let n=r.filter(e=>e!==t);await m.mutateAsync({path:{assistant_id:e},body:{llm:{profiles:{[t]:null},profileOrder:n}}})}catch(e){a(e,{context:`settings-ai-profile-delete`}),_(e=>({...e,[t]:`Failed to delete profile. Please try again.`}))}finally{y(e=>{let n={...e};return delete n[t],n})}}function U(e){let t=V.find(t=>t.name===e)?.label??e,n=e===o,r=Object.entries(c).filter(([t,n])=>t!==`mainAgent`&&n?.profile===e).map(([e])=>e);if(n||r.length>0){N({name:e,label:t,isActive:n,callSiteIds:r}),R(``),F(null);return}H(e)}async function W(){if(!M||!L)return;B(!0),F(null);let t={};if(M.isActive&&(t.activeProfile=L),M.callSiteIds.length>0){let e={};for(let t of M.callSiteIds)e[t]={profile:L};t.callSites=e}if(Object.keys(t).length>0)try{await m.mutateAsync({path:{assistant_id:e},body:{llm:t}})}catch(e){a(e,{context:`settings-ai-profile-reassign-delete`}),F(`Failed to reassign references. Please try again.`),B(!1);return}let n=M.name;N(null),B(!1),H(n)}async function te(t,n){if(t===n.name)return;k(null);let i=r.filter(e=>e!==t),o=i.indexOf(n.name);if(o===-1)return;n.after&&(o+=1);let s=[...i.slice(0,o),t,...i.slice(o)];try{await m.mutateAsync({path:{assistant_id:e},body:{llm:{profileOrder:s}}})}catch(e){a(e,{context:`settings-ai-profile-reorder`}),k(`Failed to reorder profiles. Please try again.`)}}let G=V.filter(e=>e.name!==M?.name&&e.source!==`managed`),K=G.length>0?G:V.filter(e=>e.name!==M?.name);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(I.Content,{size:`md`,children:[(0,$.jsxs)(I.Header,{children:[(0,$.jsx)(I.Title,{children:`Model Profiles`}),(0,$.jsx)(I.Description,{children:`Bundle a provider and model into a named profile. Assign profiles to specific actions or swap between them when chatting.`})]}),(0,$.jsxs)(I.Body,{children:[V.length===0?(0,$.jsx)(h,{variant:`body-medium-lighter`,as:`p`,className:`py-4 text-center text-(--content-tertiary)`,children:`No profiles yet. Create one to get started.`}):(0,$.jsx)(`div`,{className:`space-y-1`,children:V.map(e=>(0,$.jsx)(nn,{profile:e,vellumIsManaged:t,isDragging:w===e.name,dropTarget:E,isDeleting:v[e.name]??!1,deleteError:g[e.name],isToggling:b.has(e.name),onDragStart:t=>{A.current=e.name,T(e.name),t.dataTransfer&&(t.dataTransfer.effectAllowed=`move`)},onDragEnd:()=>{A.current=null,j.current=null,T(null),D(null)},onDragOver:t=>{t.preventDefault();let n=t.currentTarget.getBoundingClientRect(),r=t.clientY>n.top+n.height/2,i={name:e.name,after:r};j.current=i,D(i)},onDragLeave:t=>{t.currentTarget.contains(t.relatedTarget)||(j.current=null,D(t=>t?.name===e.name?null:t))},onDrop:e=>{e.preventDefault();let t=A.current,n=j.current;A.current=null,j.current=null,T(null),D(null),t&&n&&te(t,n)},onEditClick:()=>d(e),onDeleteClick:()=>U(e.name),onStatusToggle:t=>void ee(e,t)},e.name))}),O&&(0,$.jsx)(h,{variant:`body-small-default`,as:`p`,className:`mt-2 text-(--system-negative-strong)`,children:O}),S&&(0,$.jsx)(h,{variant:`body-small-default`,as:`p`,className:`mt-2 text-(--system-negative-strong)`,children:S})]}),(0,$.jsxs)(I.Footer,{className:`justify-between`,children:[(0,$.jsx)(s,{variant:`outlined`,size:`compact`,onClick:f,children:`+ New Profile`}),(0,$.jsx)(s,{variant:`outlined`,size:`compact`,onClick:l,children:`Done`})]})]}),(0,$.jsx)($t,{blocked:M,availableReplacements:K,replacement:L,onReplacementChange:R,error:P,saving:z,onClose:()=>{N(null),F(null)},onConfirm:()=>void W()})]})}var on=`0.10.8`;function sn(){return ut(on)}function cn({mode:e,connection:t,assistantId:n,existingNames:r,connections:i,onSave:a,onCancel:o}){let[c,l]=(0,Q.useState)(t?.label??``),d=t?.name??``,f=t?.provider??`anthropic`,p=t?.auth.type??`api_key`,[m,g]=(0,Q.useState)(()=>t?.auth.type===`api_key`?t.auth.credential:t?``:`credential/anthropic/api_key`),[_,v]=(0,Q.useState)(t?.baseUrl??``),[y,b]=(0,Q.useState)(()=>t?.models?t.models.map(e=>e.id).join(`, `):``),[x,S]=(0,Q.useState)(!1),[C,w]=(0,Q.useState)(null),T=f===`openai-compatible`,[E,D]=(0,Q.useState)(``),[O,k]=(0,Q.useState)(!1),A=u(),j=(0,Q.useMemo)(()=>oe(m),[m]),M=p===`api_key`&&j!==null,{hasStoredCredential:N,isLoading:F}=re({assistantId:n,credentialKind:`credential`,credentialName:j?`${j.service}:${j.field}`:``,enabled:M}),{credentials:L}=Ce({assistantId:n,enabled:p===`api_key`});(0,Q.useEffect)(()=>{let e=t?.provider??`anthropic`;l(t?.label??``),t?.auth.type===`api_key`?g(t.auth.credential):g(t?``:`credential/${e}/api_key`),w(null),v(t?.baseUrl??``),b(t?.models?t.models.map(e=>e.id).join(`, `):``),D(``),k(!1)},[t]);let R=c.trim()!==(t?.label??``).trim(),z=T&&R?U(c,i,t?.name):null,B=d.trim().length>0&&z===null;async function H(){if(B){S(!0),w(null);try{let e;if(p===`api_key`){let t=m.trim()||`credential/${f}/api_key`,r=E.trim();if(r){k(!0);try{let e=oe(t);await Ge({path:{assistant_id:n},body:e?{type:`credential`,name:`${e.service}:${e.field}`,value:r}:{type:`api_key`,name:f,value:r},throwOnError:!0});let i=J(n,`credential`,e?`${e.service}:${e.field}`:``);A.setQueryData(i,!0),A.invalidateQueries({queryKey:et({path:{assistant_id:n}})})}catch{w(`Failed to save API key. Please try again.`);return}finally{k(!1)}}e={type:`api_key`,credential:t}}else if(t)e=t.auth;else{w(`Nothing to edit. Close and try again.`);return}let r=c.trim()||null,i={auth:e,label:r,...T&&{base_url:_.trim()||null,models:y.trim()?y.split(`,`).map(e=>({id:e.trim()})).filter(e=>e.id):null}},{data:o,error:s,response:l}=await We({path:{assistant_id:n,name:t?.name??d.trim()},body:i});if(!l?.ok){w(ae(l?.status,s)??ee(l?.status));return}if(!o){w(`Server returned an empty response. Please try again.`);return}a(o)}catch{w(`Failed to save provider. Please try again.`)}finally{S(!1)}}}let W=L.filter(e=>e.service===f),K=e!==`create`&&t?.auth.type===`api_key`,q=W.length>0||K,ne=Y(`Enter your API key`,N);return e===`create`?(0,$.jsx)(V,{variant:`modal`,assistantId:n,existingNames:r,connections:i,defaultProviderType:f,onCreated:a,onCancel:o}):(0,$.jsxs)(I.Content,{size:`md`,children:[(0,$.jsxs)(I.Header,{children:[(0,$.jsx)(I.Title,{children:`Edit Provider`}),(0,$.jsx)(I.Description,{children:t?`Editing ${te(t)}.`:`Edit provider settings.`})]}),(0,$.jsxs)(I.Body,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsxs)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:[`Display Name`,` `,(0,$.jsx)(`span`,{className:`text-[var(--content-disabled)]`,children:`(optional)`})]}),(0,$.jsx)(P,{value:c,onChange:e=>l(e.target.value),placeholder:`e.g. My Anthropic Key`,fullWidth:!0}),z?(0,$.jsx)(h,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:Z[z]}):null]}),T&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Base URL`}),(0,$.jsx)(P,{value:_,onChange:e=>v(e.target.value),placeholder:`https://api.example.com/v1`,fullWidth:!0})]}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Models`}),(0,$.jsx)(P,{value:y,onChange:e=>b(e.target.value),placeholder:`model-1, model-2`,fullWidth:!0}),(0,$.jsx)(h,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`Comma-separated model identifiers exposed by your endpoint.`})]})]}),p===`api_key`&&(0,$.jsx)(X,{apiKeyValue:E,onApiKeyChange:D,credential:m,onCredentialChange:g,isLoadingCredential:F,apiKeyPlaceholder:ne,provider:f,providerCredentials:W,showAdvancedSection:q,onError:w}),p===`oauth_subscription`&&(0,$.jsx)(G,{assistantId:n,onConnected:a}),C&&(0,$.jsx)(h,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:C})]}),(0,$.jsxs)(I.Footer,{children:[(0,$.jsx)(s,{variant:`ghost`,size:`compact`,onClick:o,children:`Cancel`}),(0,$.jsx)(s,{variant:`primary`,size:`compact`,disabled:!B||x||O,onClick:()=>void H(),children:x?`Saving…`:`Save`})]})]})}var ln={anthropic:!0,openai:!0,gemini:!0,fireworks:!0,openrouter:!0,vellum:!0};function un(e){return e in ln}function dn(e){let t=e.baseUrl??``;try{e.baseUrl&&(t=new URL(e.baseUrl).host)}catch{}let n=[];t&&n.push(t);let r=e.models?.length??0;return r>0&&n.push(`${r} ${r===1?`model`:`models`}`),e.auth.type===`none`&&n.push(`keyless`),n.join(` · `)}function fn({isOpen:e,assistantId:t,onClose:n}){let[r,i]=(0,Q.useState)(!1),[a,o]=(0,Q.useState)(null),s=u(),{data:c,isLoading:l,isError:f}=d({...$e({path:{assistant_id:t}}),enabled:e}),p=sn(),{data:m}=d({...rt({path:{assistant_id:t}}),enabled:e&&p}),h=(0,Q.useMemo)(()=>{let e=c?.connections??[];return[...e.filter(e=>e.provider===Se),...e.filter(e=>e.provider!==Se)]},[c]);function g(){s.invalidateQueries({queryKey:ot({path:{assistant_id:t}})}),s.invalidateQueries({queryKey:it({path:{assistant_id:t}})})}function _(e){s.invalidateQueries({queryKey:Qe({path:{assistant_id:t}})}),i(!1),o(null)}let v=h.map(e=>e.name),y=()=>{i(!1),o(null)};return(0,$.jsx)(I.Root,{open:e,onOpenChange:e=>{e||(r?y():n())},children:e?r?(0,$.jsx)(cn,{mode:a?`edit`:`create`,connection:a??void 0,assistantId:t,existingNames:v,connections:h,onSave:_,onCancel:y}):(0,$.jsx)(pn,{connections:h,loading:l,isError:f,assistantId:t,supportsDefaultProvider:p,defaultConnectionName:p?m?.resolvedConnectionName??null:null,onDefaultChanged:g,onClose:n,onEditClick:e=>{o(e),i(!0)},onNewClick:()=>{o(null),i(!0)},onConnectionDeleted:()=>{s.invalidateQueries({queryKey:Qe({path:{assistant_id:t}})})}}):null})}function pn({connections:e,loading:t,isError:n,assistantId:r,supportsDefaultProvider:i,defaultConnectionName:o,onDefaultChanged:c,onClose:l,onEditClick:u,onNewClick:d,onConnectionDeleted:p}){let[m,g]=(0,Q.useState)({}),[_,v]=(0,Q.useState)({}),y=f({...at(),onMutate:e=>{let t=e.body?.connectionName;t&&g(e=>{let n={...e};return delete n[t],n})},onSuccess:c,onError:(e,t)=>{a(e,{context:`settings-ai-set-default-provider`});let n=t.body?.connectionName;n&&g(e=>({...e,[n]:`Failed to set default provider. Please try again.`}))}});function b(e){un(e.provider)&&y.mutate({path:{assistant_id:r},body:{provider:e.provider,connectionName:e.name}})}async function x(e){v(t=>({...t,[e]:!0})),g(t=>{let n={...t};return delete n[e],n});try{let{response:t}=await Ue({path:{assistant_id:r,name:e}});t?.ok||t?.status===404?p(e):t?.status===409?g(t=>({...t,[e]:`This provider is in use by a profile or as the default provider. Update those settings before deleting it.`})):g(t=>({...t,[e]:`Failed to delete provider. Please try again.`}))}catch{g(t=>({...t,[e]:`Failed to delete provider. Please try again.`}))}finally{v(t=>{let n={...t};return delete n[e],n})}}return(0,$.jsxs)(I.Content,{size:`md`,children:[(0,$.jsxs)(I.Header,{children:[(0,$.jsx)(I.Title,{children:`Providers`}),(0,$.jsx)(I.Description,{children:`Manage the model providers your assistant can use.`})]}),(0,$.jsx)(I.Body,{children:t?(0,$.jsx)(`div`,{className:`space-y-2 py-2`,children:[1,2,3].map(e=>(0,$.jsx)(`div`,{className:`h-10 animate-pulse rounded-lg bg-[var(--surface-active)]`},e))}):n?(0,$.jsx)(h,{variant:`body-medium-default`,as:`p`,className:`py-4 text-center text-(--system-negative-strong)`,children:`Failed to load providers. Please try again.`}):e.length===0?(0,$.jsx)(h,{variant:`body-medium-lighter`,as:`p`,className:`py-4 text-center text-(--content-tertiary)`,children:`No providers yet. Add one to get started.`}):(0,$.jsx)(`div`,{className:`space-y-1`,children:e.map(e=>{let t=_[e.name]??!1,n=m[e.name],r=e.isManaged??!1,a=e.name===o,c=un(e.provider),l=y.isPending&&y.variables?.body?.connectionName===e.name;return(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg px-2 py-2`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(h,{variant:`body-medium-default`,as:`span`,className:`text-(--content-default)`,children:te(e)}),r&&(0,$.jsx)(M,{tone:`positive`,title:`Managed by Platform — you can rename this provider, but not edit it.`,children:`Platform`}),a&&(0,$.jsx)(M,{tone:`info`,title:`Built-in profiles (Balanced, Quality, Speed) use this provider.`,children:`Default`}),e.provider===`vellum`?null:e.provider===`openai-compatible`&&(0,$.jsx)(M,{tone:`neutral`,title:`A provider you created — served by an OpenAI-compatible endpoint.`,children:`Custom`})]}),e.provider===`openai-compatible`?(0,$.jsx)(h,{variant:`body-small-default`,as:`p`,className:`text-(--content-tertiary)`,children:dn(e)}):null]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[i&&!a&&(0,$.jsx)(s,{variant:`ghost`,size:`compact`,disabled:!c||l,title:c?`Use this provider for the built-in profiles.`:`Built-in profiles can't run on this provider.`,onClick:()=>b(e),children:`Set as default`}),!r&&(0,$.jsx)(s,{variant:`ghost`,size:`compact`,onClick:()=>u(e),children:`Edit`}),(0,$.jsx)(s,{variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)(O,{}),"aria-label":`Delete ${te(e)}`,disabled:r||a||t,title:r?`The Vellum provider cannot be removed`:a?`This is your default provider. Set another provider as default first.`:void 0,onClick:()=>void x(e.name),tintColor:`var(--system-negative-strong)`})]})]}),n?(0,$.jsx)(h,{variant:`body-small-default`,as:`p`,className:`px-2 pb-1 text-(--system-negative-strong)`,children:n}):null]},e.name)})})}),(0,$.jsxs)(I.Footer,{className:`justify-between`,children:[(0,$.jsx)(s,{variant:`outlined`,size:`compact`,onClick:d,children:`+ Add Provider`}),(0,$.jsx)(s,{variant:`outlined`,size:`compact`,onClick:l,children:`Done`})]})]})}function mn(e){let[t,n]=(0,Q.useState)(void 0);return(0,Q.useEffect)(()=>{t!==void 0&&e===t.value&&n(void 0)},[e,t]),[t===void 0?e:t.value,(0,Q.useCallback)(e=>n(e===void 0?void 0:{value:e}),[])]}function hn(){let e=Ft(),t=u(),{data:n}=d({...tt({path:{assistant_id:e}}),staleTime:3e4}),r=sn(),{data:i,refetch:o}=d({...rt({path:{assistant_id:e}}),enabled:r}),c=i?.availability,l=n?.llm?.activeProfile??null,f=n?.llm?.advisorProfile??null,p=n?.llm?.callSites??{},{profiles:m,profileOrder:g}=Le(n?.llm,e),_=(0,Q.useMemo)(()=>W(m,g),[m,g]),v=Xe({onSuccess:n=>{st(t,{path:{assistant_id:e}},n)}}),[y,b]=mn(l),[x,S]=mn(f),[C,w]=(0,Q.useState)(!1),[E,D]=(0,Q.useState)(!1),[O,k]=(0,Q.useState)(!1),j=(0,Q.useMemo)(()=>xe(_,[y]),[_,y]),M=(0,Q.useMemo)(()=>xe(_,[x]),[_,x]),N=Object.entries(p).filter(([e,t])=>e!==`mainAgent`&&(t?.profile!=null||t?.provider!=null||t?.model!=null)).length,P=N===1?`1 Override`:N>0?`${N} Overrides`:`Overrides`,F=y!==l,I=x!==f,R=(0,Q.useCallback)(async()=>{try{let t={};F&&(t.activeProfile=y),I&&(t.advisorProfile=x),await v.mutateAsync({path:{assistant_id:e},body:{llm:t}}),L.success(`Saved.`)}catch(e){L.error(`Failed to save. Please try again.`),a(e,{context:`settings-ai-language-model-save`})}},[F,I,y,x,v,e]);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Vt,{title:`Language Model`,subtitle:`Configure the LLMs that power your assistant`,children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[c&&c.status!==`ok`&&(0,$.jsx)(A,{tone:c.status===`unknown`?`warning`:`error`,children:c.message??`Your default provider is not available.`}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Default Profile`}),(0,$.jsx)(z,{value:y??``,onChange:e=>{b(e===``?null:e)},placeholder:`Select a default profile…`,options:j.map(e=>({value:e.name,label:De(e)}))}),j.length===0?(0,$.jsx)(h,{variant:`body-small-default`,as:`p`,className:`mt-1 text-(--content-tertiary)`,children:`No profiles yet. Click Profiles below to create one.`}):null]}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Advisor Profile`}),(0,$.jsx)(z,{value:x??``,onChange:e=>{S(e===``?null:e)},placeholder:`Select an advisor profile…`,options:M.map(e=>({value:e.name,label:De(e)}))}),(0,$.jsx)(h,{variant:`body-small-default`,as:`p`,className:`mt-1 text-(--content-tertiary)`,children:`Which model your assistant consults for a second opinion`})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(s,{variant:`outlined`,size:`compact`,onClick:()=>k(!0),children:`Providers`}),(0,$.jsx)(s,{variant:`outlined`,size:`compact`,onClick:()=>w(!0),children:`Profiles`}),(0,$.jsx)(s,{variant:`outlined`,size:`compact`,onClick:()=>D(!0),children:P})]}),(F||I)&&(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Wt,{onClick:R,disabled:v.isPending}),v.isPending&&(0,$.jsx)(T,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`})]})]})}),e&&(0,$.jsx)(rn,{isOpen:C,assistantId:e,onClose:()=>w(!1)}),e&&(0,$.jsx)(Zt,{isOpen:E,onClose:()=>D(!1),assistantId:e}),e&&(0,$.jsx)(fn,{isOpen:O,assistantId:e,onClose:()=>{k(!1),r&&o()}})]})}function gn(){let e=Ft();return(0,Q.useCallback)(async(t,n)=>{try{let{data:r}=await Ge({path:{assistant_id:e},body:{value:n,type:`api_key`,name:t},throwOnError:!0});se(r)}catch(e){throw e instanceof Error&&e.message===`No assistant found`?L.error(`Assistant not ready. Please try again.`):L.error(`Failed to save ${t} API key. Please try again.`),a(e,{context:`provision_provider_key`}),e}},[e])}var _n=`0.10.12`;function vn(){return dt(_n)}function yn(){let e=Ft(),i=u(),o=ht(),{data:s}=d({...tt({path:{assistant_id:e}}),enabled:o,staleTime:3e4}),c=Xe({onSuccess:t=>{st(i,{path:{assistant_id:e}},t)}}),l=gn(),f=(0,Q.useMemo)(()=>{if(!s)return r(be,`inference-provider-native`);let e=s.services?.[`web-search`];return(e?.mode===`managed`&&e?.provider!==`inference-provider-native`?`vellum`:e?.provider)||r(`vellum:ai:webSearchProvider`,`inference-provider-native`)},[s]),[p,m]=(0,Q.useState)(!1),[h,g]=mn(f),[_,v]=(0,Q.useState)(``),y=le.has(h),{hasStoredCredential:b}=re({assistantId:e,credentialKind:`api_key`,credentialName:h,enabled:y}),x=_.trim().length>0,S=p||y&&!b&&!x||h===f&&!x,C=Y(ne[h]??`Enter your API key`,b),w=(0,Q.useCallback)(async()=>{m(!0);let t=_.trim(),r=Me(h),o=y&&t.length>0;try{o&&await l(h,t),await lt();let n=h===`vellum`?vn()?{provider:`vellum`,mode:`managed`}:{mode:`managed`}:{provider:h,mode:`your-own`};await c.mutateAsync({path:{assistant_id:e},body:{services:{"web-search":n}}}).catch(e=>{throw L.error(`Failed to update assistant configuration. Please try again.`),a(e,{context:`patch_daemon_config`}),e})}catch{m(!1);return}m(!1);try{if(n(be,h),o){r&&n(r,t);let a=J(e,`api_key`,h);i.setQueryData(a,!0),i.invalidateQueries({queryKey:a}),v(``)}L.success(`Web search settings saved.`)}catch(e){a(e,{context:`settings-ai-web-search-persist-local`}),L.error(`Saved, but local preferences could not be written.`)}},[y,c,l,i,e,_,h]),E=(0,Q.useCallback)(()=>{let e=Me(h);e&&t(e),v(``),g(`inference-provider-native`),n(be,`inference-provider-native`)},[h,g]);return(0,$.jsx)(Vt,{title:`Web Search`,subtitle:`Configure how your assistant should search the web`,children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,$.jsx)(z,{"aria-label":`Web search provider`,value:h,onChange:g,options:ue.map(e=>({value:e,label:ce[e]??e}))})]}),h===`vellum`&&(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Search runs through your Vellum account.`}),y&&(0,$.jsx)(P,{label:`API Key`,type:`password`,value:_,onChange:e=>v(e.target.value),placeholder:C,fullWidth:!0}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Wt,{onClick:w,disabled:S}),p&&(0,$.jsx)(T,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),y&&(0,$.jsx)(Gt,{onClick:E,filled:!0})]})]})})}var bn=`default`;function xn(){let e=Ft(),i=u(),{data:o}=d({...tt({path:{assistant_id:e}}),staleTime:3e4}),s=Xe({onSuccess:t=>{st(i,{path:{assistant_id:e}},t)}}),c=gn(),l=(0,Q.useMemo)(()=>o?o.services?.[`web-fetch`]?.provider||r(`vellum:ai:webFetchProvider`,bn):r(Ee,bn),[o]),[f,p]=(0,Q.useState)(!1),[m,h]=mn(l),[g,_]=(0,Q.useState)(``),v=B.has(m),{hasStoredCredential:y}=re({assistantId:e,credentialKind:`api_key`,credentialName:m,enabled:v}),b=g.trim().length>0,x=f||v&&!y&&!b||m===l&&!b,S=Y(Oe[m]??`Enter your API key`,y),C=(0,Q.useCallback)(async()=>{p(!0);let t=g.trim(),r=v&&t.length>0;try{r&&await c(m,t),await s.mutateAsync({path:{assistant_id:e},body:{services:{"web-fetch":{provider:m}}}}).catch(e=>{throw L.error(`Failed to update assistant configuration. Please try again.`),a(e,{context:`patch_daemon_config`}),e})}catch{p(!1);return}p(!1);try{if(n(Ee,m),r){let r=q(m);r&&n(r,t);let a=J(e,`api_key`,m);i.setQueryData(a,!0),i.invalidateQueries({queryKey:a}),_(``)}L.success(`Web fetch settings saved.`)}catch(e){a(e,{context:`settings-ai-web-fetch-persist-local`}),L.error(`Saved, but local preferences could not be written.`)}},[v,s,c,i,e,g,m]),w=(0,Q.useCallback)(()=>{let e=q(m);e&&t(e),_(``),h(bn),n(Ee,bn)},[m,h]);return(0,$.jsx)(Vt,{id:`web-fetch`,title:`Web Fetch`,subtitle:`Configure how your assistant reads individual web pages`,children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,$.jsx)(z,{value:m,onChange:h,options:Re.map(e=>({value:e,label:_e[e]??e}))})]}),v&&(0,$.jsx)(P,{label:`API Key`,type:`password`,value:g,onChange:e=>_(e.target.value),placeholder:S,fullWidth:!0}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Wt,{onClick:C,disabled:x}),f&&(0,$.jsx)(T,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),v&&(0,$.jsx)(Gt,{onClick:w,filled:!0})]})]})})}function Sn({subdomain:e,onSubdomainChange:t,domainSuffix:n,subdomainPlaceholder:r=`my-assistant`,disabled:i,autoFocus:a,prefix:o,error:s,locked:c,lockedMessage:l}){return(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`flex h-9 w-full items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${s?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[o,(0,$.jsx)(`input`,{value:e,onChange:e=>t(e.target.value.toLowerCase().trim()),disabled:i||c,readOnly:c,autoFocus:a,placeholder:r,"aria-label":`Subdomain`,"aria-invalid":!!s,className:`h-full min-w-0 flex-1 bg-transparent ${o?`pl-1.5`:`pl-3`} pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none disabled:cursor-not-allowed disabled:opacity-60`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`.`,n]})]}),s&&(0,$.jsx)(`p`,{className:`mt-1.5 text-body-small-default text-[var(--system-negative-strong)]`,children:s}),c&&l&&(0,$.jsx)(`p`,{className:`mt-1.5 text-body-small-default text-[var(--content-tertiary)]`,children:l})]})}function Cn({assistantId:e,assistantHandle:t,emailRootDomain:n}){let r=u(),i=l(),[o,p]=c(),[m,h]=(0,Q.useState)(``),[g,_]=(0,Q.useState)(!1),[v,y]=(0,Q.useState)(null),[b,x]=(0,Q.useState)(``),[S,C]=(0,Q.useState)(null),[w,D]=(0,Q.useState)(!1),[k,j]=(0,Q.useState)(!1),[M,N]=(0,Q.useState)(!1);(0,Q.useEffect)(()=>{g||!t||m||(h(t),_(!0))},[t,g,m]);let P=d({...St(),enabled:!0}),F=P.data,I=F?.entitlements,z=I?.managed_email===!0,B=!!I&&!z,V=!F&&P.isError&&!P.isFetching,ee=d({...gt({path:{assistant_id:e}}),enabled:!B}),H=d({...Tt({path:{assistant_id:e}}),enabled:!B}),U=ee.data?.results?.[0],W=H.data?.results?.[0],te=U?`${U.subdomain}.${n}`:null,G=d({...bt({path:{assistant_id:e,id:W?.id??``}}),enabled:!!W?.id,refetchOnWindowFocus:!1}),K=d({...Dt({path:{assistant_id:e,id:U?.id??``}}),enabled:!!U?.id,refetchInterval:e=>{let t=e.state.data?.status;return t===`verified`||t===`failed`?!1:1e4},refetchOnWindowFocus:!0});(0,Q.useEffect)(()=>{o.get(`release`)!==`1`||!U||W||(j(!0),p(e=>{let t=new URLSearchParams(e);return t.delete(`release`),t},{replace:!0}))},[W,U,o,p]);let q=f(wt()),J=f(Et()),Y=f(_t()),X=f(vt()),Z=(0,Q.useCallback)(()=>{let t={assistant_id:e};r.invalidateQueries({queryKey:xt({path:t})}),r.invalidateQueries({queryKey:Ct({path:t})}),W?.id&&r.invalidateQueries({queryKey:yt({path:{...t,id:W.id}})}),r.invalidateQueries({queryKey:kt()})},[W?.id,e,r]),ne=(0,Q.useCallback)(async()=>{let t=m.trim().toLowerCase();if(!t){y(`Enter a subdomain.`);return}D(!1);try{await q.mutateAsync({path:{assistant_id:e},body:{subdomain:t}}),h(``),y(null),Z(),L.success(`Domain ${t}.${n} registered.`)}catch(e){y(ft(e,void 0,`Failed to register domain.`))}},[e,n,Z,q,m]),re=(0,Q.useCallback)(async()=>{let t=b.trim().toLowerCase();if(!t){C(`Enter an email username.`);return}try{await Y.mutateAsync({path:{assistant_id:e},body:{username:t}}),x(``),C(null),Z(),L.success(`Email address created.`)}catch(e){C(ft(e,void 0,`Failed to create email address.`))}},[e,Z,Y,b]),ie=(0,Q.useCallback)(async()=>{if(W?.id){N(!1);try{await X.mutateAsync({path:{assistant_id:e,id:W.id}}),Z(),L.success(`Email address removed.`)}catch(e){a(e,{context:`email_address_delete`}),L.error(`Failed to remove email address.`)}}},[W?.id,e,X,Z]),ae=(0,Q.useCallback)(async()=>{if(!U?.id)return;if(W){L.error(`Remove the email address first.`);return}j(!1);let t=U.subdomain;try{await J.mutateAsync({path:{assistant_id:e,id:U.id}}),h(t),Z(),L.success(`Domain released.`)}catch(e){a(e,{context:`email_domain_release`}),L.error(`Failed to release domain.`)}},[W,e,J,U?.id,U?.subdomain,Z]);if(P.isLoading)return(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(T,{className:`h-4 w-4 animate-spin`}),`Checking subscription…`]});if(B)return(0,$.jsx)(A,{tone:`info`,icon:(0,$.jsx)(E,{className:`h-4 w-4`,"aria-hidden":!0}),title:`Give your assistant its own email address`,actions:(0,$.jsx)(s,{size:`compact`,onClick:()=>i(pt.plans),children:`Upgrade`}),children:`Upgrade to a plan that includes an email address for your assistant. No provider setup required.`});let oe=V?(0,$.jsx)(A,{tone:`warning`,title:`Couldn't verify subscription status`,actions:(0,$.jsx)(s,{size:`compact`,variant:`outlined`,onClick:()=>P.refetch(),children:`Retry`}),children:`We couldn't reach the billing service. The form below assumes managed email is enabled for your org — if it isn't, registering a domain will fail.`}):null;return U?W?(0,$.jsxs)(`div`,{className:`space-y-4`,children:[oe,(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Address`}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:W.address}),(0,$.jsx)(Ut,{status:K.data?.status,message:K.data?.message,isLoading:K.isLoading}),(0,$.jsx)(s,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(O,{}),onClick:()=>N(!0),disabled:X.isPending,"aria-label":`Remove email address`})]}),(0,$.jsx)(R,{open:M,title:`Remove Email Address`,message:(0,$.jsxs)($.Fragment,{children:[`Are you sure you want to remove `,(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`,children:W.address}),`? Your assistant will no longer be able to send or receive email at this address.`]}),confirmLabel:`Remove`,destructive:!0,onConfirm:ie,onCancel:()=>N(!1)})]}),G.data?.usage&&(0,$.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[G.data.usage.sent_today,` /`,` `,G.data.usage.daily_limit,` sent today ·`,` `,G.data.usage.received_today,` received`]})]}):(0,$.jsxs)(`div`,{className:`space-y-4`,children:[oe,(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Domain`}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:[U.subdomain,`.`,n]}),(0,$.jsx)(Ut,{status:K.data?.status,message:K.data?.message,isLoading:K.isLoading}),(0,$.jsx)(s,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(O,{}),onClick:()=>j(!0),disabled:J.isPending,"aria-label":`Release domain`})]}),(0,$.jsx)(R,{open:k,title:`Release Domain`,message:(0,$.jsxs)($.Fragment,{children:[`Are you sure you want to release `,(0,$.jsxs)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`,children:[U.subdomain,`.`,n]}),`? The subdomain will become available for others to claim.`]}),confirmLabel:`Release`,destructive:!0,onConfirm:ae,onCancel:()=>j(!1)})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Email address`}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex h-9 min-w-0 flex-1 items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${S?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[(0,$.jsx)(`input`,{value:b,onChange:e=>{x(e.target.value.toLowerCase()),S&&C(null)},placeholder:`hi`,"aria-label":`Email username`,"aria-invalid":!!S,className:`h-full min-w-0 flex-1 bg-transparent pl-3 pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`@`,te]})]}),(0,$.jsx)(s,{onClick:re,disabled:Y.isPending||!b.trim(),children:Y.isPending?`Creating…`:`Create`})]}),S&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:S})]})]}):(0,$.jsxs)(`div`,{className:`space-y-3`,children:[oe,(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Subdomain`}),(0,$.jsx)(Sn,{subdomain:m,onSubdomainChange:e=>{h(e),v&&y(null)},domainSuffix:n,subdomainPlaceholder:`my-assistant`,error:v}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Each assistant gets its own subdomain. Lowercase letters, numbers, and hyphens only.`}),(0,$.jsx)(s,{onClick:()=>D(!0),disabled:q.isPending||!m.trim(),children:q.isPending?`Registering…`:`Register`}),(0,$.jsx)(R,{open:w,title:`Set Subdomain`,message:(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`,children:m.trim().toLowerCase()||`subdomain`}),` will also become your assistant's public handle. You won't be able to change it once set.`]}),confirmLabel:`Confirm`,onConfirm:ne,onCancel:()=>D(!1)})]})}function wn(){let e=Ft(),t=ht(),{data:o}=d({...Ot(),enabled:t}),s=o?.results?.[0]?.handle,c=Lt.use.emailRootDomain(),l=mt(),[u,f]=(0,Q.useState)(()=>l===`gated`?`your-own`:K(r(ke,`managed`),`managed`)),[p,m]=(0,Q.useState)(()=>{let e=r(fe,`resend`);return e===`mailgun`||e===`resend`?e:`resend`}),h=d({queryKey:[`byoEmailCredential`,e,p],queryFn:async()=>{let{data:t}=await Je({path:{assistant_id:e},body:{service:p,field:`api_key`},throwOnError:!0});return t},enabled:u===`your-own`||l===`gated`,staleTime:6e4,retry:i,meta:{errorContext:`byo_email_credential_check`}});(0,Q.useEffect)(()=>{h.error&&a(h.error,{context:`byo_email_credential_check`,bestEffort:!0})},[h.error]);let g=h.data?.hasSecret===!0,_=(0,Q.useCallback)(e=>{f(e),n(ke,e)},[]),v=(0,Q.useCallback)(()=>{n(fe,p),L.success(`Email settings saved.`)},[p]),y=(0,Q.useMemo)(()=>de.find(e=>e.id===p)??de[0],[p]),x=(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(C,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsxs)(`span`,{children:[`Configure `,y.displayName,` via the assistant CLI: ask the assistant to run the`,` `,(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`,children:y.setupSkill}),` `,`skill. It walks you through storing the API key, detecting the domain, and (optionally) wiring up an inbound webhook.`]}),(0,$.jsxs)(`a`,{href:y.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[`Open `,y.displayName,(0,$.jsx)(S,{className:`h-3 w-3`})]})]})]}),w=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,$.jsx)(z,{value:p,onChange:e=>{(e===`mailgun`||e===`resend`)&&m(e)},options:de.map(e=>({value:e.id,label:e.displayName}))})]}),g?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-[var(--system-positive-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-default)]`,children:[(0,$.jsx)(b,{className:`h-4 w-4 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsxs)(`span`,{children:[y.displayName,` API key configured. To reconfigure, run the`,` `,(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`,children:y.setupSkill}),` `,`skill.`]})]}),(0,$.jsxs)(`a`,{href:y.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-body-small-default text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[`Open `,y.displayName,(0,$.jsx)(S,{className:`h-3 w-3`})]})]}):x,(0,$.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,$.jsx)(Wt,{onClick:v,disabled:!1})})]});return l===`gated`?(0,$.jsx)(Vt,{id:`email`,title:`Email`,subtitle:`Configure how your assistant sends and receives email`,children:w}):(0,$.jsx)(Bt,{id:`email`,title:`Email`,subtitle:`Configure how your assistant sends and receives email`,mode:u,onModeChange:_,children:u===`managed`?(0,$.jsx)(`div`,{className:`space-y-4`,children:l===`disabled`?(0,$.jsx)(Pt,{children:`Log in to the Vellum platform to manage email settings.`}):(0,$.jsx)(Cn,{assistantId:e,assistantHandle:s,emailRootDomain:c})}):w})}function Tn(){let e=Ft(),t=u(),{data:i}=d({...tt({path:{assistant_id:e}}),staleTime:3e4}),o=Xe({onSuccess:n=>{st(t,{path:{assistant_id:e}},n)}}),s=gn(),[c,l]=mn((0,Q.useMemo)(()=>K(i?i.services?.[`image-generation`]?.mode??r(`vellum:ai:imageGenMode`,`your-own`):r(Fe,`your-own`),`your-own`),[i])),[f,p]=(0,Q.useState)(()=>r(he,`gemini-3.1-flash-image-preview`)),[m,h]=(0,Q.useState)(``),[g,_]=(0,Q.useState)(!1),v=(0,Q.useCallback)(async()=>{_(!0);let r=m.trim(),i=c===`your-own`&&r.length>0;try{i&&await s(ie(f),r),await o.mutateAsync({path:{assistant_id:e},body:{services:{"image-generation":{mode:c}}}}).catch(e=>{throw L.error(`Failed to update assistant configuration. Please try again.`),a(e,{context:`patch_daemon_config`}),e});try{await Ye({path:{assistant_id:e},body:{modelId:f},throwOnError:!0})}catch(e){throw L.error(`Failed to update image generation model. Please try again.`),a(e,{context:`set_image_gen_model`}),e}finally{t.invalidateQueries({queryKey:it({path:{assistant_id:e}})})}}catch{_(!1);return}_(!1);try{n(Fe,c),n(he,f),i&&h(``),L.success(`Image generation settings saved.`)}catch(e){a(e,{context:`settings-ai-image-gen-persist-local`}),L.error(`Saved, but local preferences could not be written.`)}},[m,c,f,e,o,s,t]),y=(0,Q.useCallback)(()=>{h(``),p(`gemini-3.1-flash-image-preview`),n(he,`gemini-3.1-flash-image-preview`)},[]);return(0,$.jsx)(Bt,{title:`Image Generation`,subtitle:`Configure which model your assistant uses to generate images`,mode:c,onModeChange:e=>l(e),children:c===`managed`?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Active Model`}),(0,$.jsxs)(`div`,{className:`flex items-end gap-3`,children:[(0,$.jsx)(z,{className:`flex-1`,value:f,onChange:p,options:ye.map(e=>({value:e,label:Be[e]??e}))}),(0,$.jsx)(Wt,{onClick:v,disabled:g}),g&&(0,$.jsx)(T,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`})]})]}):(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsx)(P,{label:`API Key`,type:`password`,value:m,onChange:e=>h(e.target.value),placeholder:ie(f)===`openai`?`Enter your OpenAI API key`:`Enter your Gemini API key`,fullWidth:!0}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Active Model`}),(0,$.jsx)(z,{value:f,onChange:p,options:ye.map(e=>({value:e,label:Be[e]??e}))})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Wt,{onClick:v,disabled:g}),g&&(0,$.jsx)(T,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),(0,$.jsx)(Gt,{onClick:y})]})]})})}async function En(e){let{provider:t,apiKey:n,voiceId:r,text:i}=e;if(n.trim().length===0)return{kind:`error`,message:`Save an API key for this provider first.`};try{return t===`elevenlabs`?await Dn(n,r,i):t===`deepgram`?await On(n,i):t===`fish-audio`?{kind:`unsupported`,message:`Fish Audio TTS is only supported in the desktop app today. Use ElevenLabs or Deepgram to test from the browser.`}:t===`xai`?{kind:`unsupported`,message:`xAI TTS is only supported in the desktop app today. Use ElevenLabs or Deepgram to test from the browser.`}:{kind:`unsupported`,message:`TTS testing for "${t}" is not supported from the browser yet.`}}catch(e){return{kind:`error`,message:e instanceof Error?e.message:`Failed to reach the TTS provider.`}}}async function Dn(e,t,n){let r=t.trim();if(r.length===0)return{kind:`error`,message:`Enter and save a Voice ID before testing ElevenLabs.`};let i=await fetch(`https://api.elevenlabs.io/v1/text-to-speech/${encodeURIComponent(r)}?output_format=mp3_44100_128`,{method:`POST`,headers:{"xi-api-key":e,"Content-Type":`application/json`,Accept:`audio/mpeg`},body:JSON.stringify({text:n,model_id:`eleven_turbo_v2_5`})});return i.ok?{kind:`audio`,blob:await i.blob()}:{kind:`error`,message:await kn(i,`ElevenLabs rejected the request.`)}}async function On(e,t){let n=await fetch(`https://api.deepgram.com/v1/speak?model=aura-2-thalia-en`,{method:`POST`,headers:{Authorization:`Token ${e}`,"Content-Type":`application/json`,Accept:`audio/mpeg`},body:JSON.stringify({text:t})});return n.ok?{kind:`audio`,blob:await n.blob()}:{kind:`error`,message:await kn(n,`Deepgram rejected the request.`)}}async function kn(e,t){try{let n=await e.text();if(n.length===0)return`${t} (HTTP ${e.status})`;try{let e=JSON.parse(n);if(e&&typeof e==`object`&&`detail`in e&&typeof e.detail==`string`)return e.detail;if(e&&typeof e==`object`&&`message`in e&&typeof e.message==`string`)return e.message}catch{}return n.slice(0,200)}catch{return`${t} (HTTP ${e.status})`}}function An({assistantId:e,value:t,onChange:n,className:r}){let[i,a]=(0,Q.useState)(!1),{voices:o}=At(e);if(o.length===0)return null;let s=o.find(e=>e.model===t)??o[0];return(0,$.jsxs)(N.Root,{open:i,onOpenChange:a,children:[(0,$.jsx)(N.Trigger,{asChild:!0,children:(0,$.jsxs)(`button`,{type:`button`,"aria-label":`Voice`,className:m(`flex h-9 w-full items-center gap-2 rounded-md border border-[var(--field-border)] bg-[var(--field-bg)] px-3 text-left text-body-medium-lighter text-[var(--content-default)] transition-colors focus:outline-none data-[state=open]:border-[var(--border-active)]`,r),children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:s?jt(s.description):`Select a voice`}),(0,$.jsx)(v,{className:`h-3.5 w-3.5 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":!0})]})}),(0,$.jsx)(N.Content,{side:`bottom`,align:`start`,className:`w-[var(--radix-popover-trigger-width)] p-1`,children:(0,$.jsx)(Mt,{assistantId:e,value:t,onChange:n,onSelect:()=>a(!1),showSource:!0})})]})}var jn={elevenlabs:`voiceId`,"fish-audio":`referenceId`,xai:`voiceId`};function Mn({assistantId:e,hideSaveButton:t=!1,hideCredentialsGuide:i=!1,onSaveStateChange:a}={}){let o=Ft(),c=e??o,l=ct.use.name()??`your assistant`,f=ht(),p=u(),{data:m}=d({...Ze({path:{assistant_id:c}}),enabled:f,staleTime:1/0}),h=(0,Q.useMemo)(()=>{let e=m?.providers;if(!e)return Ve;if(e.some(e=>e.id===`vellum`))return e;let t=Ve.find(e=>e.id===`vellum`);return t?[t,...e]:e},[m]),{data:g}=d({...tt({path:{assistant_id:c}}),enabled:f,staleTime:3e4}),_=g?.services?.tts,v=_?.mode===`managed`?`vellum`:_?.provider,y=`elevenlabs`,b=(0,Q.useMemo)(()=>v??r(`vellum:voice:ttsProvider`,y),[v,y]),x=!!v,[S,C]=mn(b),[T,E]=(0,Q.useState)(``),[D,O]=(0,Q.useState)(``),[k,A]=(0,Q.useState)(``),[j,M]=(0,Q.useState)(!1),[N,F]=(0,Q.useState)(!1),[I,R]=(0,Q.useState)(!1),{voices:B,defaultModel:V,fetched:ee}=Nt(c,{enabled:S===`vellum`}),H=_?.providers?.vellum?.model??V??``,[U,W]=mn(H),te=B.find(e=>e.model===U)??B[0],[G,K]=(0,Q.useState)(null),q=B.some(e=>e.model===H),J=G??(ee&&H!==``&&!q),Y=(0,Q.useMemo)(()=>h.find(e=>e.id===S)??h[0],[S,h]),X=S===`vellum`&&Y.supportsVoiceSelection&&U.trim()!==``&&U.trim()!==H,Z=(0,Q.useCallback)(e=>{let t=r(ge+e,``),n=r(je+e,``);M(t.length>0),O(n),A(n),E(``)},[]);(0,Q.useEffect)(()=>{Z(S)},[S,Z]);let ne=(0,Q.useMemo)(()=>{let e=S!==b,t=T.trim().length>0,n=D.trim()!==k;return e||t||n||X},[S,b,T,D,k,X]),re=(0,Q.useCallback)(async()=>{let e=T.trim(),t=D.trim(),i=Y.id;n(ve,i),e.length>0&&n(ge+i,e),n(je+i,t);let a=e.length>0?e:r(ge+i,``),o=jn[i];R(!0);try{if(a.length>0){let{response:e}=await Ke({path:{assistant_id:c},body:{service:i,field:`api_key`,value:a,label:`${Y.displayName} API Key`},throwOnError:!1});if(!e?.ok)throw Error(`Failed to store API key (HTTP ${e?.status??`?`})`)}let e={...S!==b||!x?{provider:i,mode:i===`vellum`?`managed`:`your-own`}:{},...o?{providers:{[i]:{[o]:t}}}:{},...X?{providers:{vellum:{model:U.trim()}}}:{}};if(Object.keys(e).length>0){let{response:t}=await qe({path:{assistant_id:c},body:{services:{tts:e}},throwOnError:!1});if(!t?.ok)throw Error(`Failed to save configuration (HTTP ${t?.status??`?`})`)}return M(a.length>0),A(t),E(``),p.invalidateQueries({queryKey:it({path:{assistant_id:c}})}),L.success(`Text-to-speech settings saved`),!0}catch(e){return L.error(e instanceof Error?e.message:`Failed to save text-to-speech settings`),!1}finally{R(!1)}},[c,S,U,X,T,D,Y,b,x,p]);(0,Q.useEffect)(()=>{a?.({hasChanges:ne,saving:I,save:re})},[a,ne,I,re]);let ie=(0,Q.useCallback)(()=>{n(ge+S,``),M(!1),E(``)},[S]),ae=(0,Q.useCallback)(async()=>{F(!0);try{let e=r(ge+S,``),t=T.trim(),n=t.length>0?t:e;if(n.length===0){L.error(`Save an API key for this provider before testing.`);return}let i=r(je+S,``),a=D.trim(),o=await En({provider:S,apiKey:n,voiceId:a.length>0?a:i,text:`Hey! It's ${l}. How does this sound?`});if(o.kind!==`audio`){L.error(o.message);return}let s=URL.createObjectURL(o.blob);try{let e=new Audio(s);await e.play(),await new Promise(t=>{e.onended=()=>t(),e.onerror=()=>t()})}finally{URL.revokeObjectURL(s)}}finally{F(!1)}},[l,T,S,D]),oe=j?`•••••••• (Enter a new key to replace)`:Y.apiKeyPlaceholder,se=S===`vellum`,ce=se&&Y.supportsVoiceSelection,le=(0,$.jsxs)(s,{variant:`link`,size:`compact`,className:`inline-flex h-auto items-center gap-1 px-0 underline [--vbtn-fg:var(--content-tertiary)]`,onClick:()=>{K(!1),B.some(e=>e.model===U)||W(V||B[0]?.model||``)},children:[(0,$.jsx)(w,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`Choose from catalog`]}),ue=ce&&J&&B.length>0?le:null;return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,$.jsx)(z,{value:S,onChange:C,options:h.map(e=>({value:e.id,label:e.displayName})),"aria-label":`TTS provider`})]}),!se&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`API Key`}),(0,$.jsx)(P,{type:`password`,value:T,onChange:e=>E(e.target.value),placeholder:oe,fullWidth:!0})]}),ce&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Voice`}),J?(0,$.jsx)(P,{type:`text`,value:U,onChange:e=>W(e.target.value),placeholder:`Enter a voice ID`,"aria-label":`Custom voice ID`,fullWidth:!0}):te?(0,$.jsx)(An,{assistantId:c,value:U,onChange:W}):ee&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`No managed voices are currently available.`})]}),Y.supportsVoiceSelection&&!se&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Voice ID`}),(0,$.jsx)(P,{type:`text`,value:D,onChange:e=>O(e.target.value),placeholder:`Enter a voice ID`,fullWidth:!0})]}),!i&&!se&&(0,$.jsx)(Kt,{guide:Y.credentialsGuide}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[!se&&(0,$.jsx)(s,{variant:`outlined`,onClick:ae,disabled:N,children:N?`Testing…`:`Test`}),(0,$.jsxs)(`div`,{className:`ml-auto flex items-center gap-3`,children:[ue,!t&&(0,$.jsx)(Wt,{onClick:re,disabled:!ne||I}),j&&!se&&(0,$.jsx)(Gt,{onClick:ie})]})]})]})}function Nn(){return(0,$.jsx)(Vt,{id:`text-to-speech`,title:`Text-to-Speech`,subtitle:`Configure how your assistant speaks`,children:(0,$.jsx)(Mn,{})})}var Pn={vellum:{provider:`vellum`},deepgram:{provider:`deepgram`,credentialService:`deepgram`},openai:{provider:`openai-whisper`,credentialService:`openai`}},Fn={vellum:`vellum`,deepgram:`deepgram`,"openai-whisper":`openai`},In=`deepgram`;function Ln({assistantId:e,hideSaveButton:t=!1,hideCredentialsGuide:i=!1,onSaveStateChange:a}={}){let o=Ft(),s=e??o,c=ht(),l=u(),[f]=(0,Q.useState)(()=>me.filter(e=>!e.requiresNativeDictation||H())),p=In,{data:m}=d({...tt({path:{assistant_id:s}}),enabled:c,staleTime:3e4}),h=m?.services?.stt,g=h?.mode===`managed`?`vellum`:h?.provider,_=(0,Q.useMemo)(()=>{let e=g?Fn[g]:void 0;if(e&&f.some(t=>t.id===e))return e;let t=r(ze,p);return f.some(e=>e.id===t)?t:p},[g,f,p]),v=!!g,[y,b]=mn(_),[x,S]=(0,Q.useState)(``),[C,w]=(0,Q.useState)(!1),[T,E]=(0,Q.useState)(!1);(0,Q.useEffect)(()=>{let e=r(ze,p);e===`macos-native`&&!f.some(t=>t.id===e)&&n(ze,p)},[f,p]);let D=(0,Q.useMemo)(()=>f.find(e=>e.id===y)??f[0],[f,y]),O=D.apiKeyPlaceholder!==void 0;(0,Q.useEffect)(()=>{w(r(Te+y,``).length>0),S(``)},[y]);let A=(0,Q.useMemo)(()=>{let e=y!==_,t=x.trim().length>0;return e||t},[y,_,x]),j=(0,Q.useCallback)(async()=>{let e=x.trim();n(ze,y),e.length>0&&n(Te+y,e);let t=Pn[y];E(!0);try{if(t?.credentialService){let n=e.length>0?e:r(Te+y,``);if(n.length>0){let{response:e}=await Ke({path:{assistant_id:s},body:{service:t.credentialService,field:`api_key`,value:n,label:`${D.displayName} API Key`},throwOnError:!1});if(!e?.ok)throw Error(`Failed to store API key (HTTP ${e?.status??`?`})`)}}if(t&&(y!==_||!v)||g===`vellum`&&y!==`vellum`){let e=t?.provider??In,{response:n}=await qe({path:{assistant_id:s},body:{services:{stt:{provider:e,mode:e===`vellum`?`managed`:`your-own`}}},throwOnError:!1});if(!n?.ok)throw Error(`Failed to save configuration (HTTP ${n?.status??`?`})`)}return e.length>0&&w(!0),S(``),l.invalidateQueries({queryKey:it({path:{assistant_id:s}})}),L.success(`Speech-to-text settings saved`),!0}catch(e){return L.error(e instanceof Error?e.message:`Failed to save speech-to-text settings`),!1}finally{E(!1)}},[s,y,x,D,_,v,g,l]);(0,Q.useEffect)(()=>{a?.({hasChanges:A,saving:T,save:j})},[a,A,T,j]);let M=(0,Q.useCallback)(()=>{n(Te+y,``),w(!1),S(``)},[y]),N=C?`•••••••• (Enter a new key to replace)`:D.apiKeyPlaceholder;return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,$.jsx)(z,{value:y,onChange:b,options:f.map(e=>({value:e.id,label:e.displayName})),"aria-label":`STT provider`})]}),O&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`API Key`}),(0,$.jsx)(P,{type:`password`,value:x,onChange:e=>S(e.target.value),placeholder:N,fullWidth:!0})]}),D.setupWarning&&(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(k,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-mid-strong)]`}),(0,$.jsx)(`span`,{children:D.setupWarning})]}),!i&&D.credentialsGuide&&(0,$.jsx)(Kt,{guide:D.credentialsGuide}),y===`vellum`&&(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Transcription runs through your Vellum account.`}),(!t||C)&&(0,$.jsxs)(`div`,{className:`flex items-center justify-end gap-2`,children:[!t&&(0,$.jsx)(Wt,{onClick:j,disabled:!A||T}),C&&(0,$.jsx)(Gt,{onClick:M})]})]})}function Rn(){return(0,$.jsx)(Vt,{title:`Speech-to-Text`,subtitle:`Configure how your assistant transcribes speech`,children:(0,$.jsx)(Ln,{})})}function zn(){return(0,Q.useEffect)(()=>{let e=window.location.hash.slice(1);e&&requestAnimationFrame(()=>{document.getElementById(e)?.scrollIntoView({block:`start`})})},[]),(0,$.jsxs)(`div`,{className:`space-y-5`,children:[(0,$.jsx)(Ht,{}),(0,$.jsx)(hn,{}),(0,$.jsx)(yn,{}),(0,$.jsx)(xn,{}),(0,$.jsx)(wn,{}),(0,$.jsx)(Tn,{}),(0,$.jsx)(Nn,{}),(0,$.jsx)(Rn,{})]})}export{zn as AiPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./jsx-runtime-D3ZM-ToX.js";import{n as r,r as i}from"./avatar-svg-compositor-FtVPqzlC.js";import{t as a}from"./use-reduced-motion-Se97jRQ-.js";var o=e(t(),1),s=n();function c(e,t){return e+Math.random()*(t-e)}function l(e){let t=[],n=/-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?/gi,r;for(;(r=n.exec(e))!==null;)t.push(parseFloat(r[0]));return t}function u(e){let t=0,n=0,r=0;for(let i=0;i<e.length-1;i+=2)t+=e[i],n+=e[i+1],r++;return r>0?{x:t/r,y:n/r}:{x:0,y:0}}function d(e,t,n,r,i){let a=r*1.1,o=0;return e.replace(/-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?/gi,()=>{let e=o;o++;let r=t[e],s=e%2==0,c=s?n.x:n.y,l=s?e+1:e-1,u=l>=0&&l<t.length?t[l]:c,d=s?r:u,f=Math.atan2((s?u:r)-n.y,d-n.x),p=1+(Math.sin(f*2+a)*.7+Math.sin(f*3-a*.5)*.3)*i;return(c+(r-c)*p).toFixed(3)})}function f(e,t,n){let r=l(e),i=u(r),a=[e];for(let o=1;o<t;o++)a.push(d(e,r,i,o,n));return a}function p({components:e,traits:t,size:n,isAssistantBusy:l=!1,breathe:u=!0}){let d=a(),{bodyShape:p,eyeStyle:m,color:h}=i(e,t.bodyShape,t.eyeStyle,t.color),{bodyTransform:g,eyeTransform:_}=r(p,m,e,n),v=m.sourceViewBox,y=p.viewBox,b=Math.min(n/y.width,n/y.height),x=(n-y.width*b)/2,S=(n-y.height*b)/2,C=Math.min(y.width/v.width,y.height/v.height),w=e.faceCenterOverrides.find(e=>e.bodyShape===p.id&&e.eyeStyle===m.id),T=w?w.faceCenter:p.faceCenter,E=T.x-m.eyeCenter.x*C,D=T.y-m.eyeCenter.y*C,O=b*(E+m.eyeCenter.x*C)+x,k=b*(D+m.eyeCenter.y*C)+S,A=(0,o.useMemo)(()=>l?f(p.svgPath,16,.06):[p.svgPath],[p.svgPath,l]),[j,M]=(0,o.useState)(!1),[N,P]=(0,o.useState)(0),[F,I]=(0,o.useState)(0),L=(0,o.useRef)(null);(0,o.useEffect)(()=>{if(d||l){M(!1);return}let e=!1;function t(){return setTimeout(()=>{e||(M(!0),setTimeout(()=>{e||(M(!1),Math.random()<.2?setTimeout(()=>{e||(M(!0),setTimeout(()=>{e||(M(!1),t())},150))},200):t())},150))},c(3e3,7e3))}let n=t();return()=>{e=!0,clearTimeout(n)}},[d,l]),(0,o.useEffect)(()=>{if(d||l){P(0);return}let e=!1;function t(){return setTimeout(()=>{e||(P((Math.random()<.5?-1:1)*c(1,2)),setTimeout(()=>{e||(P(0),t())},200))},c(8e3,15e3))}let n=t();return()=>{e=!0,clearTimeout(n)}},[d,l]),(0,o.useEffect)(()=>{if(!l||d){I(0);return}let e=0;return L.current=setInterval(()=>{e=(e+1)%A.length,I(e)},150),()=>{L.current&&clearInterval(L.current),L.current=null}},[l,d,A.length]);let R=n/2,z=n/2,B=d?`none`:l?`avatar-morph-scale 2.4s ease-in-out infinite, avatar-morph-rotate 3s ease-in-out infinite`:u?`avatar-breathe-kf 4s ease-in-out infinite`:`none`,V=l?0:N,H=j&&!l,U=A[F]??p.svgPath;return(0,s.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:n,height:n,viewBox:`0 0 ${n} ${n}`,style:{animation:B,transformOrigin:`center`},children:[(0,s.jsx)(`g`,{style:{transform:`rotate(${V}deg)`,transformOrigin:`${R}px ${z}px`,transition:V===0?`transform 0.3s ease-out`:`transform 0.2s ease-in-out`},children:(0,s.jsx)(`path`,{d:U,fill:h.hex,transform:g,style:{transition:l?`d 0.3s ease-in-out`:`none`}})}),(0,s.jsx)(`g`,{style:{transform:H?`scaleY(0.1)`:`scaleY(1)`,transformOrigin:`${O}px ${k}px`,transition:`transform 0.15s ease-in-out`},children:m.paths.map((e,t)=>(0,s.jsx)(`path`,{d:e.svgPath,fill:e.color,transform:_},t))})]})}export{p as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{r as e}from"./chunk-jRWAZmH_.js";import{B as t,F as n,G as r,H as i,I as ee,J as a,K as o,L as s,R as te,U as c,V as l,W as u,X as ne,Y as d,Z as re,q as f,z as p}from"./local-mode-Ckii2tmN.js";function m(e){return re(ee,e)}function ie(e){return ne(n,e)}var ae=s([`end_turn`,`max_tokens`,`max_turn_requests`,`refusal`,`cancelled`]),oe=u({type:i(`acp_session_completed`),acpSessionId:f(),stopReason:ae}).strict(),se=u({type:i(`acp_session_error`),acpSessionId:f(),error:f()}).strict(),ce=u({type:i(`acp_session_spawned`),acpSessionId:f(),agent:f(),parentConversationId:f(),parentToolUseId:f().optional(),task:f().optional()}).strict(),le=s([`agent_message_chunk`,`agent_thought_chunk`,`user_message_chunk`,`tool_call`,`tool_call_update`,`plan`]),ue=u({type:i(`acp_session_update`),acpSessionId:f(),updateType:le,content:f().optional(),toolCallId:f().optional(),toolTitle:f().optional(),toolKind:f().optional(),toolStatus:f().optional(),rawInput:d().optional(),rawOutput:d().optional(),locations:p(u({path:f(),line:c().optional()})).optional(),messageId:f().optional(),seq:c().optional()}).strict(),de=u({type:i(`acp_session_usage`),acpSessionId:f(),usedTokens:c(),contextSize:c(),inputTokens:c().optional(),outputTokens:c().optional(),costAmount:c().optional(),costCurrency:f().optional()}).strict(),fe=u({type:i(`app_files_changed`),appId:f()}),pe=s([`idle`,`thinking`,`streaming`,`tool_running`,`awaiting_confirmation`]),me=s([`assistant_turn`,`user_turn`,`global`]),he=s([`message_dequeued`,`thinking_delta`,`first_text_delta`,`tool_use_start`,`preview_start`,`tool_result_received`,`confirmation_requested`,`confirmation_resolved`,`context_compacting`,`message_complete`,`generation_cancelled`,`error_terminal`]),ge=u({type:i(`assistant_activity_state`),conversationId:f(),activityVersion:c(),phase:pe,anchor:me,reason:he,requestId:f().optional(),statusText:f().optional()}),_e=u({type:i(`assistant_status`),version:f().optional(),keyFingerprint:f().optional()}),ve=u({type:i(`assistant_text_delta`),text:f(),messageId:f().optional(),conversationId:f().optional()}),ye=u({type:i(`assistant_thinking_delta`),thinking:f(),messageId:f().optional(),conversationId:f().optional(),timestampMs:c().optional()}),be=u({type:i(`assistant_turn_start`),messageId:f(),conversationId:f().optional()}),xe=u({type:i(`avatar_updated`),avatarPath:f()}),Se=u({type:i(`background_tool_completed`),id:f(),conversationId:f(),status:s([`completed`,`failed`,`cancelled`]),exitCode:c().nullable().optional(),output:f().optional(),completedAt:c()}),Ce=u({type:i(`background_tool_started`),id:f(),toolName:f(),conversationId:f(),command:f(),startedAt:c()}),we=u({id:f(),messageId:f(),conversationId:f(),conversationTitle:f().nullable(),messagePreview:f(),messageRole:f(),messageCreatedAt:c(),createdAt:c()}),Te=u({type:i(`bookmark.created`),bookmark:we}),Ee=u({type:i(`bookmark.deleted`),messageId:f()}),De=u({type:i(`client_settings_update`),key:f(),value:f()}),Oe=u({type:i(`compaction_circuit_closed`),conversationId:f()}),ke=u({type:i(`compaction_circuit_open`),conversationId:f(),reason:i(`3_consecutive_failures`),openUntil:c()}),Ae=u({type:i(`config_changed`)}),h=u({label:f(),description:f(),pattern:f()}),g=u({label:f(),scope:f()}),_=u({label:f(),scope:f()}),v=u({filePath:f(),oldContent:f(),newContent:f(),isNewFile:t()}),je=s([`allow_once`,`allow_always`,`reject_once`,`reject_always`]),Me=u({optionId:f(),name:f(),kind:je}),Ne=s([`sandbox`,`host`]),Pe=u({type:i(`confirmation_request`),requestId:f(),toolName:f(),input:o(f(),d()),riskLevel:f(),riskReason:f().optional(),isContainerized:t().optional(),executionTarget:Ne.optional(),allowlistOptions:p(h),scopeOptions:p(g),directoryScopeOptions:p(_).optional(),diff:v.optional(),conversationId:f().optional(),persistentDecisionsAllowed:t().optional(),toolUseId:f().optional(),acpToolKind:f().optional(),acpOptions:p(Me).optional()}),y=u({type:i(`confirmation_state_changed`),conversationId:f(),requestId:f(),state:s([`pending`,`approved`,`denied`,`timed_out`,`resolved_stale`]),source:s([`button`,`inline_nl`,`auto_deny`,`timeout`,`system`]),causedByRequestId:f().optional(),decisionText:f().optional(),toolUseId:f().optional()}),Fe=u({type:i(`contact_request`),requestId:f(),channel:f().optional(),placeholder:f().optional(),label:f().optional(),description:f().optional(),role:f().optional()}),Ie=u({type:i(`contacts_changed`)}),Le=u({type:i(`context_compacted`),conversationId:f(),previousEstimatedInputTokens:c(),estimatedInputTokens:c(),maxInputTokens:c(),thresholdTokens:c(),compactedMessages:c(),summaryCalls:c(),summaryInputTokens:c(),summaryOutputTokens:c(),summaryModel:f(),summaryCharCount:c().optional(),summaryHeaderCount:c().optional(),summaryHadMemoryEcho:t().optional()}),b=s([`PROVIDER_NETWORK`,`PROVIDER_RATE_LIMIT`,`MANAGED_USAGE_LIMIT`,`PROVIDER_OVERLOADED`,`PROVIDER_API`,`IMAGE_TOO_LARGE`,`PROVIDER_BILLING`,`PROVIDER_ORDERING`,`PROVIDER_WEB_SEARCH`,`PROVIDER_NOT_CONFIGURED`,`PROVIDER_INVALID_KEY`,`MANAGED_KEY_INVALID`,`CONTEXT_TOO_LARGE`,`BUDGET_YIELD_UNRECOVERED`,`MAX_TOKENS_REACHED`,`CONVERSATION_ABORTED`,`CONVERSATION_PROCESSING_FAILED`,`DISK_SPACE_CRITICAL`,`UNKNOWN`]),Re=u({type:i(`conversation_error`),conversationId:f(),code:b,userMessage:f(),retryable:t(),debugDetails:f().optional(),errorCategory:f().optional(),connectionName:f().optional(),profileName:f().optional()}),ze=u({type:i(`conversation_inference_profile_updated`),conversationId:f(),profile:f().nullable(),sessionId:f().nullable().optional(),expiresAt:c().nullable().optional()}),Be=s([`created`,`renamed`,`deleted`,`reordered`,`seen_changed`]),Ve=u({type:i(`conversation_list_invalidated`),reason:Be}),He=s([`memory_v3`]),Ue=u({type:i(`conversation_notice`),conversationId:f(),source:He,code:b,userMessage:f(),errorCategory:f().optional()}),We=u({type:i(`conversation_title_updated`),conversationId:f(),title:f()}),Ge=s([`disabled`,`ok`,`warning`,`critical`,`unknown`]),Ke=s([`agent-turns`,`background-work`,`remote-ingress`]),x=u({enabled:t(),state:Ge,locked:t(),acknowledged:t(),overrideActive:t(),effectivelyLocked:t(),lockId:f().nullable(),usagePercent:c().nullable(),thresholdPercent:c(),path:f().nullable(),lastCheckedAt:f().nullable(),blockedCapabilities:p(Ke),error:f().nullable()}),qe=u({type:i(`disk_pressure_status_changed`),status:x}),Je=u({id:f(),surfaceId:f(),author:f(),content:f(),anchorStart:c().optional(),anchorEnd:c().optional(),anchorText:f().optional(),parentCommentId:f().optional(),status:f(),createdAt:c(),updatedAt:c()}),Ye=u({type:i(`document_comment_created`),conversationId:f(),surfaceId:f(),comment:Je}),Xe=u({type:i(`document_comment_deleted`),conversationId:f(),surfaceId:f(),commentId:f()}),Ze=u({type:i(`document_comment_reopened`),conversationId:f(),surfaceId:f(),commentId:f()}),Qe=u({type:i(`document_comment_resolved`),conversationId:f(),surfaceId:f(),commentId:f(),resolvedBy:f()}),$e=u({type:i(`document_editor_show`),conversationId:f(),surfaceId:f(),title:f(),initialContent:f()}),et=u({type:i(`document_editor_update`),conversationId:f(),surfaceId:f(),markdown:f(),mode:f()}),tt=u({type:i(`error`),message:f(),code:f().optional(),category:f().optional(),errorCategory:f().optional(),requestId:f().optional(),conversationId:f().optional()}),nt=u({type:i(`generation_cancelled`),conversationId:f().optional()}),S=u({id:f().optional(),filename:f(),mimeType:f(),data:f(),sourceType:s([`sandbox_file`,`host_file`,`tool_block`]).optional(),sizeBytes:c().optional(),thumbnailData:f().optional(),fileBacked:t().optional(),filePath:f().optional()}),rt=u({type:i(`generation_handoff`),conversationId:f().optional(),requestId:f().optional(),queuedCount:c(),messageId:f().optional(),attachments:p(S).optional(),attachmentWarnings:p(f()).optional()}),it=u({type:i(`heartbeat_alert`),title:f(),body:f()}),at=u({type:i(`heartbeat_conversation_created`),conversationId:f(),title:f()}),ot=u({type:i(`home_feed_updated`),updatedAt:f(),newItemCount:c()}),st=u({kind:s([`plugin`,`workspace`]),id:f()}),ct=u({type:i(`hook_event`),conversationId:f().optional(),hookName:f(),owner:st,detail:o(f(),d())}),lt=u({tool:i(`start`),app:f(),args:p(f()).optional()}),ut=u({tool:i(`observe`),app:f(),settle_ms:c().optional()}),dt=u({tool:i(`press`),app:f(),key:f(),modifiers:p(f()).optional(),duration_ms:c().optional()}),ft=u({tool:i(`combo`),app:f(),keys:p(f()),duration_ms:c().optional()}),pt=u({key:f(),modifiers:p(f()).optional(),duration_ms:c().optional(),gap_ms:c().optional()}),mt=l(`tool`,[lt,ut,dt,ft,u({tool:i(`sequence`),app:f(),steps:p(pt)}),u({tool:i(`type`),app:f(),text:f()}),u({tool:i(`click`),app:f(),x:c(),y:c(),button:s([`left`,`right`,`middle`]).optional(),double:t().optional()}),u({tool:i(`drag`),app:f(),from_x:c(),from_y:c(),to_x:c(),to_y:c(),button:s([`left`,`right`,`middle`]).optional()}),u({tool:i(`stop`),app:f().optional(),reason:f().optional()})]),ht=u({type:i(`host_app_control_request`),requestId:f(),conversationId:f(),toolName:f(),input:mt}),gt=u({type:i(`host_app_control_cancel`),requestId:f(),conversationId:f()}),_t=u({type:i(`host_bash_request`),requestId:f(),conversationId:f(),command:f(),working_dir:f().optional(),timeout_seconds:c().optional(),env:o(f(),f()).optional(),targetClientId:f().optional()}),vt=u({type:i(`host_bash_cancel`),requestId:f(),conversationId:f(),targetClientId:f().optional()}),yt=u({type:i(`host_browser_request`),requestId:f(),conversationId:f(),cdpMethod:f(),cdpParams:o(f(),d()).optional(),cdpSessionId:f().optional(),timeout_seconds:c().optional()}),bt=u({type:i(`host_browser_cancel`),requestId:f()}),xt=u({type:i(`host_cu_request`),requestId:f(),conversationId:f(),targetClientId:f().optional(),toolName:f(),input:o(f(),d()),stepNumber:c(),reasoning:f().optional()}),St=u({type:i(`host_cu_cancel`),requestId:f(),conversationId:f(),targetClientId:f().optional()}),Ct=l(`operation`,[u({type:i(`host_file_request`),requestId:f(),conversationId:f(),targetClientId:f().optional(),operation:i(`read`),path:f(),offset:c().optional(),limit:c().optional()}),u({type:i(`host_file_request`),requestId:f(),conversationId:f(),targetClientId:f().optional(),operation:i(`write`),path:f(),content:f()}),u({type:i(`host_file_request`),requestId:f(),conversationId:f(),targetClientId:f().optional(),operation:i(`edit`),path:f(),old_string:f(),new_string:f(),replace_all:t().optional()})]),wt=u({type:i(`host_file_cancel`),requestId:f(),conversationId:f(),targetClientId:f().optional()}),Tt=l(`direction`,[u({type:i(`host_transfer_request`),requestId:f(),conversationId:f(),targetClientId:f().optional(),direction:i(`to_host`),transferId:f(),destPath:f(),sizeBytes:c(),sha256:f(),overwrite:t()}),u({type:i(`host_transfer_request`),requestId:f(),conversationId:f(),targetClientId:f().optional(),direction:i(`to_sandbox`),transferId:f(),sourcePath:f()})]),Et=u({type:i(`host_transfer_cancel`),requestId:f(),conversationId:f(),targetClientId:f().optional()}),Dt=s([`sampler`,`chat`]),Ot=u({type:i(`host_ui_snapshot_request`),requestId:f(),view:Dt,tokens:o(f(),f()).optional()}),kt=u({type:i(`host_ui_snapshot_cancel`),requestId:f()}),At=u({type:i(`identity_changed`),name:f(),role:f(),personality:f(),emoji:f(),home:f()}),jt=s([`approved`,`rejected`,`answered`,`cancelled`,`superseded`]),Mt=u({type:i(`interaction_resolved`),requestId:f(),conversationId:f(),state:jt,kind:f()}),C=u({semanticUnavailable:t(),reason:f(),fallbackSources:p(f())}),Nt=u({key:f(),type:f(),kind:f(),finalScore:c(),semantic:c(),recency:c()}),Pt=u({type:i(`memory_recalled`),provider:f(),model:f(),degradation:C.optional(),semanticHits:c(),tier1Count:c(),tier2Count:c(),hybridSearchLatencyMs:c(),sparseVectorUsed:t(),mergedCount:c(),selectedCount:c(),injectedTokens:c(),latencyMs:c(),topCandidates:p(Nt)}),Ft=u({type:i(`memory_status`),enabled:t(),degraded:t(),degradation:C.optional(),reason:f().optional(),provider:f().optional(),model:f().optional()}),It=u({type:i(`message_complete`),messageId:f().optional(),conversationId:f().optional(),source:s([`main`,`aux`]).optional(),attachments:p(S).optional(),attachmentWarnings:p(f()).optional()}),Lt=u({type:i(`message_dequeued`),conversationId:f(),requestId:f()}),Rt=u({type:i(`message_queued`),conversationId:f(),requestId:f(),position:c()}),zt=u({type:i(`message_queued_deleted`),conversationId:f(),requestId:f()}),Bt=u({type:i(`message_request_complete`),conversationId:f(),requestId:f(),runStillActive:t().optional()}),Vt=u({type:i(`message_steered`),conversationId:f(),requestId:f()}),Ht=u({id:f(),displayName:f()}),Ut=u({id:f(),displayName:f(),models:p(Ht),defaultModel:f(),apiKeyUrl:f().optional(),apiKeyPlaceholder:f().optional()}),Wt=u({type:i(`model_info`),conversationId:f().optional(),model:f(),provider:f(),configuredProviders:p(f()).optional(),availableModels:p(Ht).optional(),allProviders:p(Ut).optional()}),Gt=u({type:i(`navigate_settings`),tab:f()}),Kt=u({type:i(`notification_conversation_created`),conversationId:f(),title:f(),sourceEventName:f(),targetGuardianPrincipalId:f().optional(),groupId:f().optional(),source:f().optional(),silent:t().optional()}),qt=u({type:i(`notification_intent`),sourceEventName:f(),title:f(),body:f(),deliveryId:f().optional(),deepLinkMetadata:o(f(),d()).optional(),targetGuardianPrincipalId:f().optional(),silent:t().optional()}),Jt=u({type:i(`oauth_connect_result`),success:t(),service:f().optional(),grantedScopes:p(f()).optional(),accountInfo:f().optional(),error:f().optional()}),Yt=u({type:i(`open_conversation`),conversationId:f(),title:f().optional(),anchorMessageId:f().optional(),focus:t().optional()}),Xt=u({type:i(`open_panel`),panelType:f(),data:o(f(),d()).optional(),conversationId:f().optional(),surfaceId:f().optional()}),Zt=u({type:i(`open_url`),url:f().min(1),title:f().optional(),conversationId:f().optional()}),Qt=u({type:i(`platform_disconnected`)}),w=u({id:f(),label:f(),description:f().optional()}),T=u({id:f(),question:f(),description:f().optional(),options:p(w),freeTextPlaceholder:f().optional()}),$t=u({type:i(`question_request`),requestId:f(),questions:p(T),question:f(),description:f().optional(),options:p(w),freeTextPlaceholder:f().optional(),conversationId:f().optional(),toolUseId:f().optional()}),en=u({captureScope:s([`display`,`window`]).optional(),displayId:f().optional(),windowId:c().optional(),includeAudio:t().optional(),includeMicrophone:t().optional(),promptForSource:t().optional()}),tn=u({type:i(`recording_start`),recordingId:f(),attachToConversationId:f().optional(),options:en.optional(),operationToken:f().optional()}),nn=u({type:i(`recording_stop`),recordingId:f()}),rn=u({type:i(`recording_pause`),recordingId:f()}),an=u({type:i(`recording_resume`),recordingId:f()}),on=u({type:i(`relationship_state_updated`),updatedAt:f()}),sn=u({type:i(`schedule_conversation_created`),conversationId:f(),scheduleJobId:f(),title:f()}),cn=u({type:i(`secret_request`),requestId:f(),service:f(),field:f(),label:f(),description:f().optional(),placeholder:f().optional(),conversationId:f().optional(),purpose:f().optional(),allowedTools:p(f()).optional(),allowedDomains:p(f()).optional(),allowOneTimeSend:t().optional()}),ln=u({type:i(`service_group_update_complete`),installedVersion:f(),success:t(),rolledBackToVersion:f().optional()}),un=u({type:i(`service_group_update_progress`),statusMessage:f()}),dn=u({type:i(`service_group_update_starting`),targetVersion:f(),expectedDowntimeSeconds:c()}),fn=u({type:i(`show_platform_login`)}),pn=u({type:i(`skills_state_changed`),name:f(),state:s([`enabled`,`disabled`,`installed`,`uninstalled`])}),mn=u({type:i(`sounds_config_updated`)}),hn=u({type:f(),content:f().optional(),text:f().optional(),result:f().optional(),input:o(f(),d()).optional(),toolName:f().optional(),isError:t().optional(),toolUseId:f().optional()}).passthrough(),gn=u({type:i(`subagent_event`),conversationId:f(),subagentId:f(),event:hn}).strict(),_n=u({type:i(`subagent_spawned`),subagentId:f(),parentConversationId:f(),label:f(),objective:f(),isFork:t().optional(),parentToolUseId:f().optional()}).strict(),E=s([`pending`,`running`,`awaiting_input`,`completed`,`failed`,`aborted`,`interrupted`]),D=u({inputTokens:c(),outputTokens:c(),estimatedCost:c()}).strict(),vn=u({type:i(`subagent_status_changed`),subagentId:f(),status:E,error:f().optional(),usage:D.optional()}).strict(),yn=u({type:i(`sync_changed`),tags:p(f().min(1)).min(1),originClientId:f().min(1).optional()}),bn=u({type:i(`tool_input_delta`),toolName:f(),content:f(),conversationId:f().optional(),toolUseId:f().optional(),messageId:f().optional()}),xn=s([`tool_start`,`tool_complete`,`status`]),Sn=u({type:i(`tool_output_chunk`),chunk:f(),conversationId:f().optional(),toolUseId:f().optional(),subType:xn.optional(),subToolName:f().optional(),subToolInput:f().optional(),subToolIsError:t().optional(),subToolId:f().optional(),messageId:f().optional()}),Cn=u({pattern:f(),label:f()}),wn=s([`anthropic-native`,`brave`,`perplexity`,`tavily`,`firecrawl`]),Tn=s([`default`,`firecrawl`]),En=u({rank:c(),title:f(),url:f(),domain:f(),faviconUrl:f().optional(),snippet:f().optional(),age:f().optional(),score:c().optional()}),Dn=u({query:f(),provider:wn,resultCount:c(),durationMs:c(),results:p(En),errorMessage:f().optional()}),On=u({url:f(),finalUrl:f(),provider:Tn.optional(),status:c(),contentType:f().optional(),byteCount:c(),charCount:c(),truncated:t(),title:f().optional(),domain:f(),faviconUrl:f().optional(),redirectCount:c(),durationMs:c(),errorMessage:f().optional(),mayRequireJavaScript:t().optional()}),O=u({webSearch:Dn.optional(),webFetch:On.optional()}),kn=u({type:i(`tool_result`),toolName:f(),result:f(),isError:t().optional(),diff:v.optional(),status:f().optional(),conversationId:f().optional(),imageData:f().optional(),imageDataList:p(f()).optional(),toolUseId:f().optional(),messageId:f().optional(),riskLevel:f().optional(),riskReason:f().optional(),matchedTrustRuleId:f().optional(),isContainerized:t().optional(),riskScopeOptions:p(Cn).optional(),riskAllowlistOptions:p(h).optional(),riskDirectoryScopeOptions:p(_).optional(),approvalMode:f().optional(),approvalReason:f().optional(),riskThreshold:f().optional(),activityMetadata:O.optional(),errorCode:f().optional(),completedAt:c().optional()}),An=u({type:i(`tool_use_preview_start`),toolUseId:f(),toolName:f(),conversationId:f().optional(),messageId:f().optional(),previewStartedAt:c().optional()}),jn=u({type:i(`tool_use_start`),toolName:f(),input:o(f(),d()),toolUseId:f().optional(),messageId:f().optional(),conversationId:f().optional(),startedAt:c().optional(),previewStartedAt:c().optional()}),Mn=u({type:i(`ui_surface_complete`),conversationId:f(),surfaceId:f(),summary:f(),submittedData:o(f(),d()).optional()}),Nn=u({type:i(`ui_surface_dismiss`),conversationId:f(),surfaceId:f()}),Pn=u({id:f(),label:f(),style:s([`primary`,`secondary`,`destructive`]).optional(),data:o(f(),d()).optional()}),Fn=u({type:i(`ui_surface_show`),conversationId:f(),surfaceId:f(),surfaceType:f(),title:f().optional(),data:o(f(),d()),actions:p(Pn).optional(),display:s([`inline`,`panel`]).optional(),messageId:f().optional(),persistent:t().optional(),toolCallId:f().optional()}),In=u({type:i(`ui_surface_undo_result`),conversationId:f(),surfaceId:f(),success:t(),remainingUndos:c()}),Ln=u({type:i(`ui_surface_update`),conversationId:f(),surfaceId:f(),data:o(f(),d())}),k=u({type:i(`usage_progress`),conversationId:f(),inputTokens:c(),outputTokens:c(),estimatedCost:c(),model:f()}),Rn=u({type:i(`usage_update`),conversationId:f(),inputTokens:c(),outputTokens:c(),cacheCreationInputTokens:c().optional(),cacheReadInputTokens:c().optional(),totalInputTokens:c(),totalOutputTokens:c(),estimatedCost:c(),model:f(),contextWindowTokens:c().optional(),contextWindowMaxTokens:c().optional()}),zn=u({type:i(`user_message_echo`),text:f(),conversationId:f().optional(),messageId:f().optional(),requestId:f().optional(),clientMessageId:f().optional()}).strict(),A=s([`running`,`completed`,`failed`,`aborted`,`cap_exceeded`,`interrupted`]),Bn=u({type:i(`workflow_completed`),runId:f(),conversationId:f().optional(),status:A,agentsSpawned:c(),inputTokens:c(),outputTokens:c(),summary:f().optional()}).strict(),Vn=u({type:i(`workflow_leaf_finished`),runId:f(),conversationId:f(),seq:c().int(),status:s([`completed`,`failed`]),label:f().optional(),inputTokens:c().optional(),outputTokens:c().optional(),resultSummary:f().optional()}).strict(),Hn=u({type:i(`workflow_leaf_started`),runId:f(),conversationId:f(),seq:c().int(),label:f().optional(),phase:f().optional(),promptSummary:f().optional()}).strict(),Un=u({type:i(`workflow_progress`),runId:f(),conversationId:f().optional(),agentsSpawned:c(),phase:f().optional(),label:f().optional(),message:f().optional()}).strict(),Wn=u({type:i(`workflow_started`),runId:f(),conversationId:f(),toolUseId:f().optional(),label:f().optional()}).strict(),Gn=`syntheticAgentErrorMessage`,Kn=`compactionAgent`,qn=3e4,Jn=u({cursorInTextField:t().optional().describe(`Whether the cursor is in an editable text field when dictation started`)}).passthrough().describe(`Dictation context (app name, window title, bundle ID, cursor state, selected text)`),Yn=u({transcription:f().describe(`Raw speech transcription`),context:Jn,profileId:f().describe(`Optional dictation profile ID`).optional()}),j=u({id:f(),filename:f(),mimeType:f(),sizeBytes:c(),kind:f(),data:f().optional(),thumbnailData:f().optional(),fileBacked:t().optional()}),Xn=u({pattern:f(),label:f()}),Zn=u({label:f(),description:f(),pattern:f()}),Qn=u({scope:f(),label:f()}),$n=u({requestId:f(),title:f().optional(),description:f().optional(),toolName:f().optional(),riskLevel:f().optional(),riskReason:f().optional(),input:o(f(),d()).optional(),allowlistOptions:p(h).optional(),scopeOptions:p(g).optional(),directoryScopeOptions:p(_).optional(),persistentDecisionsAllowed:t().optional()}),er=u({requestId:f(),entries:p(T)}),tr=s([`approved`,`denied`,`timed_out`]),M=u({id:f().optional(),name:f(),input:o(f(),d()),result:f().optional(),isError:t().optional(),errorCode:f().optional(),imageData:f().optional(),imageDataList:p(f()).optional(),imageAttachmentIds:p(f()).optional(),startedAt:c().optional(),previewStartedAt:c().optional(),completedAt:c().optional(),confirmationDecision:tr.optional(),confirmationLabel:f().optional(),riskLevel:f().optional(),riskReason:f().optional(),matchedTrustRuleId:f().optional(),autoApproved:t().optional(),approvalMode:f().optional(),approvalReason:f().optional(),riskThreshold:f().optional(),riskScopeOptions:p(Xn).optional(),riskAllowlistOptions:p(Zn).optional(),riskDirectoryScopeOptions:p(Qn).optional(),activityMetadata:O.optional(),scopeOptions:p(g).optional(),pendingConfirmation:$n.optional(),pendingQuestion:er.optional()}),nr=u({id:f(),label:f(),style:f().optional(),data:o(f(),d()).optional()}),N=u({surfaceId:f(),surfaceType:f(),title:f().optional(),data:o(f(),d()),actions:p(nr).optional(),display:f().optional(),persistent:t().optional(),completed:t().optional(),completionSummary:f().optional(),toolCallId:f().optional()}),rr=u({subagentId:f(),label:f(),status:f(),error:f().optional(),conversationId:f().optional(),objective:f().optional()}),ir=u({acpSessionId:f(),agent:f().optional()}),ar=u({id:f(),toolName:f(),conversationId:f(),command:f(),startedAt:c(),status:s([`completed`,`failed`,`cancelled`]),exitCode:c().nullable(),output:f(),completedAt:c()}),or=u({appUrl:f().optional(),webUrl:f().optional()}),sr=u({emoji:f(),op:s([`added`,`removed`]),actorDisplayName:f().optional(),targetChannelTs:f()}),cr=u({channelId:f(),channelName:f().optional(),channelTs:f(),threadTs:f().optional(),sender:u({displayName:f().optional(),externalUserId:f().optional()}).optional(),messageLink:or.optional(),threadLink:or.optional(),eventKind:s([`message`,`reaction`]).optional(),reaction:sr.optional()}),lr=u({type:i(`text`),text:f()}),ur=u({type:i(`thinking`),thinking:f(),startedAt:c().optional(),completedAt:c().optional()}),dr=u({type:i(`tool_use`),toolCall:M}),fr=u({type:i(`surface`),surface:N}),pr=u({type:i(`attachment`),attachment:j}),mr=l(`type`,[lr,ur,dr,fr,pr]),hr=u({id:f(),mergedMessageIds:p(f()).optional(),clientMessageId:f().optional(),role:s([`user`,`assistant`]),timestamp:f(),attachments:p(j),toolCalls:p(M).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks (the tool_use variant). Flat list of tool calls.`}).optional(),surfaces:p(N).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks (the surface variant). Flat list of surfaces.`}).optional(),textSegments:p(f()).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Text segments split by tool-call boundaries.`}).optional(),thinkingSegments:p(f()).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Reasoning text extracted from thinking blocks.`}).optional(),contentOrder:p(f()).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Positional "<type>:<index>" content ordering (e.g. "text:0", "thinking:1").`}).optional(),contentBlocks:p(mr).optional(),subagentNotification:rr.optional(),acpNotification:ir.optional(),backgroundEventNotification:t().optional(),backgroundToolCompletion:ar.optional(),systemCard:t().optional(),slackMessage:cr.optional(),queueStatus:s([`queued`,`processing`]).optional(),queuePosition:c().optional()}),gr=u({status:x}),_r=i(`notification`),vr=s([`new`,`seen`,`acted_on`,`dismissed`]),yr=s([`low`,`medium`,`high`,`critical`]),br=s([`security`,`scheduling`,`background`,`email`,`system`]),xr=s([`heartbeat`,`memory_consolidation`,`schedule`,`auto_analysis`,`user`,`other`]),Sr=u({id:f(),label:f(),prompt:f()}),Cr=s([`emailDraft`,`documentPreview`,`permissionChat`,`paymentAuth`,`toolPermission`,`updatesList`]),wr=u({kind:Cr}),Tr=u({id:f(),type:_r,priority:c().int().min(0).max(100),title:f().optional(),summary:f(),timestamp:f(),status:vr.default(`new`),expiresAt:f().optional(),actions:p(Sr).optional(),urgency:yr.optional(),conversationId:f().optional(),detailPanel:wr.optional(),category:br.optional(),noteworthy:t().optional(),fromAssistant:t().optional(),metadata:o(f(),d()).optional(),sourceType:xr.optional(),sourceKey:f().optional(),sourceLabel:f().optional(),createdAt:f()}),Er=s([`deterministic`,`assistant`]),Dr=u({id:f(),label:f(),icon:f().optional(),prompt:f(),source:Er}),Or=u({greeting:f(),timeAwayLabel:f(),newCount:c().int().min(0)}),kr=u({items:p(Tr),updatedAt:f(),contextBanner:Or,suggestedPrompts:p(Dr)}),Ar=u({id:f(),category:s([`voice`,`world`,`priorities`]),text:f(),confidence:s([`strong`,`uncertain`]),source:s([`onboarding`,`inferred`])}),jr=u({id:f(),name:f(),description:f(),tier:s([`unlocked`,`next-up`,`earned`]),gate:f(),unlockHint:f().optional(),ctaLabel:f().optional()}),Mr=u({version:i(1),assistantId:f(),tier:a([i(1),i(2),i(3),i(4)]),progressPercent:c(),facts:p(Ar),capabilities:p(jr),conversationCount:c(),hatchedDate:f(),assistantName:f(),userName:f().optional(),updatedAt:f()}),Nr=u({key:f(),label:f(),ms:c()}),Pr=u({key:f(),label:f(),ms:c(),subPhases:p(Nr).optional()}),Fr=u({phases:p(Pr),ttftMs:c().nullish(),totalToFirstTokenMs:c().nullish(),providerDurationMs:c().nullish(),firstTokenKind:s([`thinking`,`text`]).nullish()}),Ir=u({provider:f().nullish(),model:f().nullish(),status:f().nullish(),inputTokens:c().nullish(),outputTokens:c().nullish(),cacheCreationInputTokens:c().nullish(),cacheReadInputTokens:c().nullish(),stopReason:f().nullish(),requestMessageCount:c().nullish(),requestToolCount:c().nullish(),responseMessageCount:c().nullish(),responseToolCallCount:c().nullish(),responsePreview:f().nullish(),toolCallNames:p(f()).nullish(),estimatedCostUsd:c().nullish(),durationMs:c().nullish()}),P=u({kind:f(),label:f().nullish(),role:f().nullish(),text:f().nullish(),toolName:f().nullish(),data:d().optional(),language:f().nullish()}),Lr=u({name:f().nullish(),message:f().nullish(),code:f().nullish(),provider:f().nullish(),statusCode:c().nullish(),retryAfterMs:c().nullish(),apiErrorCode:f().nullish(),apiErrorType:f().nullish(),apiErrorParam:f().nullish(),requestId:f().nullish()}),Rr=u({id:f(),createdAt:c(),requestPayload:te(),responsePayload:te(),provider:f().nullish(),summary:Ir.nullish(),requestSections:p(P).nullish(),responseSections:p(P).nullish(),agentLoopExitReason:f().nullish(),callSite:f().nullish(),error:Lr.nullish(),latency:Fr.nullish()}),zr=u({nodeId:f(),score:c(),semanticSimilarity:c(),recencyBoost:c(),type:f().optional()}),Br=u({reason:f(),semanticUnavailable:t(),fallbackSources:p(f())}),Vr=u({enabled:t(),degraded:t(),provider:f().nullable(),model:f().nullable(),degradation:Br.nullable(),semanticHits:c().nullish(),mergedCount:c().nullish(),selectedCount:c().nullish(),tier1Count:c().nullish(),tier2Count:c().nullish(),hybridSearchLatencyMs:c().nullish(),sparseVectorUsed:t().nullish(),injectedTokens:c().nullish(),latencyMs:c().nullish(),topCandidates:p(zr),injectedText:f().nullable(),reason:f().nullable(),queryContext:f().nullable()}),Hr=u({slug:f(),finalActivation:c(),ownActivation:c(),priorActivation:c(),simUser:c(),simAssistant:c(),simNow:c(),simUserRerankBoost:c().optional(),simAssistantRerankBoost:c().optional(),inRerankPool:t().optional(),spreadContribution:c(),source:f(),status:f()}),Ur=u({d:c(),c_user:c(),c_assistant:c(),c_now:c(),k:c(),hops:c(),top_k:c(),epsilon:c()}),Wr=u({turn:c(),mode:f(),concepts:p(Hr),config:Ur}),Gr=u({slug:f(),source:f(),pinned:t(),sectionOrdinal:c().nullable().optional(),sectionHeading:f().nullable().optional()}),Kr=u({turn:c(),live:t(),selections:p(Gr),injectedText:f()}),qr=u({messageId:f().nullish(),conversationKey:f().nullish(),conversationId:f().nullish(),conversationKind:f(),conversationTotalEstimatedCostUsd:c().nullish(),logs:p(Rr),memoryRecall:Vr.nullable(),memoryV2Activation:Wr.nullable(),memoryV3Selection:Kr.nullish()}),Jr=u({type:f(),content:f(),toolName:f().optional(),isError:t().optional(),messageId:f().optional(),toolUseId:f().optional(),input:o(f(),d()).optional()}),Yr=u({subagentId:f(),objective:f().optional(),status:E.optional(),usage:D.optional(),events:p(Jr)}),Xr=u({seq:c().int(),kind:s([`agent`,`workflow`]),label:f().optional(),phase:f().optional(),promptSummary:f().optional(),status:f(),resultSummary:f().optional(),inputTokens:c().optional(),outputTokens:c().optional(),createdAt:c().nullable()}),Zr=u({runId:f(),status:A.optional(),agentsSpawned:c().optional(),inputTokens:c().optional(),outputTokens:c().optional(),phase:f().optional(),leaves:p(Xr)});function F(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function Qr(e){if(F(e))return e;if(typeof e==`string`)try{let t=JSON.parse(e);if(F(t))return t}catch{}return{}}var I=()=>f().optional().catch(void 0),L=()=>t().optional().catch(void 0),R=()=>c().finite().optional().catch(void 0);function z(e){return r(e=>Array.isArray(e)?e.filter(F):[],p(e))}var B=u({title:f().optional(),subtitle:f().optional(),body:f().optional(),metadata:p(u({label:m(),value:m()})).optional(),template:f().optional(),templateData:o(f(),d()).optional()}),$r=r(e=>{let t=(typeof e==`string`?e.split(`,`):Array.isArray(e)?e:[]).map(e=>typeof e==`string`||typeof e==`number`?String(e).trim():``).filter(e=>e.length>0);return t.length>0?t:void 0},p(f()).optional()),V=u({prompt:m().optional(),acceptedTypes:$r,maxFiles:ie().int().positive().optional().catch(void 0),maxSizeBytes:ie().positive().optional().catch(void 0)}),H=u({text:f().catch(``),label:I(),language:I()});function ei(e,t){let n={...t};for(let t of[`text`,`label`,`language`])typeof n[t]!=`string`&&typeof e[t]==`string`&&(n[t]=e[t]);return H.parse(n)}var U=u({id:f(),title:f(),description:I(),recommended:L(),data:o(f(),d()).optional().catch(void 0)}),ti=r(e=>Array.isArray(e)?e.flatMap(e=>{if(!F(e))return[];let t=typeof e.id==`string`?e.id.trim():``,n=typeof e.title==`string`?e.title.trim():typeof e.label==`string`?e.label.trim():``;return!t||!n?[]:[{...e,id:t,title:n}]}):[],p(U)),W=u({description:I(),options:ti,selectionMode:r(e=>e===`multiple`?`multiple`:`single`,s([`single`,`multiple`])),commitOnSelect:L(),submitLabel:I()}),G=u({providerKey:r(e=>typeof e==`string`?e.trim():e,f()).catch(``),displayName:I(),description:I(),logoUrl:f().nullable().optional().catch(void 0)}),K=u({id:f().catch(``),type:s([`text`,`textarea`,`select`,`toggle`,`number`,`password`]).catch(`text`),label:f().catch(``),placeholder:I(),required:L(),defaultValue:a([f(),c(),t()]).optional().catch(void 0),options:p(u({label:m(),value:m()})).optional().catch(void 0)}),ni=u({id:f().catch(``),title:f().catch(``),description:I(),fields:z(K)}),q=u({description:I(),fields:z(K),submitLabel:I(),pages:z(ni).optional().catch(void 0),pageLabels:u({next:I(),back:I(),submit:I()}).optional().catch(void 0),progressStyle:s([`bar`,`tabs`]).optional().catch(void 0)}),ri=u({id:f().catch(``),title:f().catch(``),subtitle:I(),icon:I(),selected:L()}),J=u({items:z(ri),selectionMode:s([`single`,`multiple`,`none`]).catch(`none`)}),ii=u({id:f().catch(``),label:f().catch(``),width:R()}),ai=u({text:m().catch(``),icon:I(),iconColor:I()}),oi=u({id:f().catch(``),cells:o(f(),a([f(),ai]).catch(``)).catch({}),selectable:L(),selected:L()}),Y=u({columns:z(ii),rows:z(oi),selectionMode:s([`none`,`single`,`multiple`]).optional().catch(void 0),caption:I()}),X=u({message:f().catch(``),detail:I(),confirmLabel:I(),confirmedLabel:I(),cancelLabel:I(),destructive:L()}),si=u({title:f().catch(``),subtitle:I(),description:I(),icon:I(),metrics:p(u({label:m(),value:m()})).optional().catch(void 0),context:s([`app_create`,`general`]).optional().catch(void 0),previewImage:I()}),ci=u({html:f().catch(``),width:R(),height:R(),appId:I(),dirName:I(),reloadGeneration:R(),status:I(),preview:si.optional().catch(void 0)}),li=u({title:f().catch(``),surfaceId:f().catch(``),subtitle:I(),content:I(),mimeType:I()}),ui=s([`completed`,`partial`,`failed`,`in_progress`]),Z=s([`neutral`,`positive`,`warning`,`negative`]),di=s([`items`,`timeline`,`diff`,`artifacts`,`warnings`]),fi=()=>({label:m().catch(``),value:a([f(),c()]).catch(``)}),pi=u({...fi(),detail:I(),tone:Z.optional().catch(void 0)}),mi=u(fi()),hi=u({id:I(),title:m().catch(``),description:I(),status:I(),tone:Z.optional().catch(void 0),metadata:z(mi).optional().catch(void 0),href:I()}),gi=u({label:I(),before:I(),after:I()}),_i=u({id:I(),title:m().catch(``),description:I(),type:di.optional().catch(void 0),items:z(hi).optional().catch(void 0),diffs:z(gi).optional().catch(void 0)}),vi=u({eyebrow:I(),status:ui.optional().catch(void 0),summary:I(),metrics:z(pi).optional().catch(void 0),sections:z(_i).optional().catch(void 0)}),Q=[`card`,`channel_setup`,`choice`,`copy_block`,`oauth_connect`,`form`,`list`,`table`,`confirmation`,`dynamic_page`,`file_upload`,`document_preview`,`task_preferences`,`work_result`,`skill_card`,`call_summary`],yi=s(Q),bi=[`skill_card`,`call_summary`],xi=new Set(bi);function Si(e){return xi.has(e)}var Ci=Q.filter(e=>!Si(e));new Set(Q);var wi={card:B,channel_setup:o(f(),d()),choice:W,copy_block:H,oauth_connect:G,form:q,list:J,table:Y,confirmation:X,dynamic_page:ci,file_upload:V,document_preview:li,task_preferences:o(f(),d()),work_result:vi,skill_card:o(f(),d()),call_summary:o(f(),d())},Ti=e({ACPOptionKindSchema:()=>je,ACPOptionSchema:()=>Me,AcpSessionCompletedEventSchema:()=>oe,AcpSessionErrorEventSchema:()=>se,AcpSessionSpawnedEventSchema:()=>ce,AcpSessionUpdateEventSchema:()=>ue,AcpSessionUpdateTypeSchema:()=>le,AcpSessionUsageEventSchema:()=>de,AcpStopReasonSchema:()=>ae,AllowlistOptionSchema:()=>h,AppFilesChangedEventSchema:()=>fe,AssistantActivityAnchorSchema:()=>me,AssistantActivityPhaseSchema:()=>pe,AssistantActivityReasonSchema:()=>he,AssistantActivityStateEventSchema:()=>ge,AssistantEventEnvelopeSchema:()=>Ei,AssistantEventSchema:()=>$,AssistantOutboundAttachmentSchema:()=>S,AssistantStatusEventSchema:()=>_e,AssistantTextDeltaEventSchema:()=>ve,AssistantThinkingDeltaEventSchema:()=>ye,AssistantTurnStartEventSchema:()=>be,AvatarUpdatedEventSchema:()=>xe,BackgroundToolCompletedEventSchema:()=>Se,BackgroundToolStartedEventSchema:()=>Ce,BookmarkCreatedEventSchema:()=>Te,BookmarkDeletedEventSchema:()=>Ee,BookmarkSummarySchema:()=>we,CALL_SITE_COMPACTION_AGENT:()=>Kn,CALL_SITE_SYNTHETIC_AGENT_ERROR_MESSAGE:()=>Gn,CapabilitySchema:()=>jr,CardSurfaceDataSchema:()=>B,ChoiceOptionSchema:()=>U,ChoiceSurfaceDataSchema:()=>W,ClientSettingsUpdateEventSchema:()=>De,CompactionCircuitClosedEventSchema:()=>Oe,CompactionCircuitOpenEventSchema:()=>ke,ConfigChangedEventSchema:()=>Ae,ConfirmationDiffSchema:()=>v,ConfirmationExecutionTargetSchema:()=>Ne,ConfirmationRequestEventSchema:()=>Pe,ConfirmationStateChangedEventSchema:()=>y,ConfirmationSurfaceDataSchema:()=>X,ContactRequestEventSchema:()=>Fe,ContactsChangedEventSchema:()=>Ie,ContextBannerSchema:()=>Or,ContextCompactedEventSchema:()=>Le,ConversationAttachmentBlockSchema:()=>pr,ConversationContentBlockSchema:()=>mr,ConversationErrorCodeSchema:()=>b,ConversationErrorEventSchema:()=>Re,ConversationInferenceProfileUpdatedEventSchema:()=>ze,ConversationListInvalidatedEventSchema:()=>Ve,ConversationListInvalidatedReasonSchema:()=>Be,ConversationMessageAttachmentSchema:()=>j,ConversationMessageSchema:()=>hr,ConversationMessageSurfaceSchema:()=>N,ConversationMessageToolCallSchema:()=>M,ConversationNoticeEventSchema:()=>Ue,ConversationNoticeSourceSchema:()=>He,ConversationSlackMessageSchema:()=>cr,ConversationSubagentNotificationSchema:()=>rr,ConversationSurfaceBlockSchema:()=>fr,ConversationTextBlockSchema:()=>lr,ConversationThinkingBlockSchema:()=>ur,ConversationTitleUpdatedEventSchema:()=>We,ConversationToolUseBlockSchema:()=>dr,CopyBlockSurfaceDataSchema:()=>H,DAEMON_INTERNAL_SURFACE_TYPES:()=>bi,DEFAULT_TOOL_EXECUTION_TIMEOUT_SEC:()=>120,DictationContextSchema:()=>Jn,DictationRequestSchema:()=>Yn,DirectoryScopeOptionSchema:()=>_,DiskPressureBlockedCapabilitySchema:()=>Ke,DiskPressureStateSchema:()=>Ge,DiskPressureStatusChangedEventSchema:()=>qe,DiskPressureStatusResponseSchema:()=>gr,DiskPressureStatusSchema:()=>x,DocumentCommentCreatedEventSchema:()=>Ye,DocumentCommentDeletedEventSchema:()=>Xe,DocumentCommentReopenedEventSchema:()=>Ze,DocumentCommentResolvedEventSchema:()=>Qe,DocumentEditorShowEventSchema:()=>$e,DocumentEditorUpdateEventSchema:()=>et,DocumentPreviewSurfaceDataSchema:()=>li,DynamicPagePreviewSchema:()=>si,DynamicPageSurfaceDataSchema:()=>ci,ErrorEventSchema:()=>tt,FactSchema:()=>Ar,FeedActionSchema:()=>Sr,FeedItemCategorySchema:()=>br,FeedItemDetailPanelKindSchema:()=>Cr,FeedItemDetailPanelSchema:()=>wr,FeedItemSchema:()=>Tr,FeedItemSourceTypeSchema:()=>xr,FeedItemStatusSchema:()=>vr,FeedItemTypeSchema:()=>_r,FeedItemUrgencySchema:()=>yr,FileUploadSurfaceDataSchema:()=>V,FormFieldSchema:()=>K,FormPageSchema:()=>ni,FormSurfaceDataSchema:()=>q,GenerationCancelledEventSchema:()=>nt,GenerationHandoffEventSchema:()=>rt,HeartbeatAlertEventSchema:()=>it,HeartbeatConversationCreatedEventSchema:()=>at,HomeFeedResponseSchema:()=>kr,HomeFeedUpdatedEventSchema:()=>ot,HookEventOwnerSchema:()=>st,HookEventSchema:()=>ct,HostAppControlCancelEventSchema:()=>gt,HostAppControlInputSchema:()=>mt,HostAppControlRequestEventSchema:()=>ht,HostAppControlSequenceStepSchema:()=>pt,HostBashCancelEventSchema:()=>vt,HostBashRequestEventSchema:()=>_t,HostBrowserCancelEventSchema:()=>bt,HostBrowserRequestEventSchema:()=>yt,HostCuCancelEventSchema:()=>St,HostCuRequestEventSchema:()=>xt,HostFileCancelEventSchema:()=>wt,HostFileRequestEventSchema:()=>Ct,HostTransferCancelEventSchema:()=>Et,HostTransferRequestEventSchema:()=>Tt,HostUiSnapshotCancelEventSchema:()=>kt,HostUiSnapshotRequestEventSchema:()=>Ot,HostUiSnapshotViewSchema:()=>Dt,IdentityChangedEventSchema:()=>At,InteractionResolutionStateSchema:()=>jt,InteractionResolvedEventSchema:()=>Mt,LLMCallErrorSchema:()=>Lr,LLMCallSummarySchema:()=>Ir,LLMContextSectionSchema:()=>P,LLMRequestLogEntrySchema:()=>Rr,LatencyBreakdownSchema:()=>Fr,LatencyPhaseSchema:()=>Pr,ListItemSchema:()=>ri,ListSurfaceDataSchema:()=>J,LlmContextResponseSchema:()=>qr,MODEL_INVOKABLE_SURFACE_TYPES:()=>Ci,MemoryCandidateSchema:()=>zr,MemoryDegradationSchema:()=>Br,MemoryRecallLogSchema:()=>Vr,MemoryRecalledCandidateDebugSchema:()=>Nt,MemoryRecalledDegradationSchema:()=>C,MemoryRecalledEventSchema:()=>Pt,MemoryStatusEventSchema:()=>Ft,MemoryV2ActivationLogSchema:()=>Wr,MemoryV2ConceptRowSchema:()=>Hr,MemoryV2ConfigSnapshotSchema:()=>Ur,MemoryV3SelectionLogSchema:()=>Kr,MemoryV3SelectionRowSchema:()=>Gr,MessageCompleteEventSchema:()=>It,MessageDequeuedEventSchema:()=>Lt,MessageQueuedDeletedEventSchema:()=>zt,MessageQueuedEventSchema:()=>Rt,MessageRequestCompleteEventSchema:()=>Bt,MessageSteeredEventSchema:()=>Vt,ModelInfoEventSchema:()=>Wt,NavigateSettingsEventSchema:()=>Gt,NotificationConversationCreatedEventSchema:()=>Kt,NotificationIntentEventSchema:()=>qt,OAuthConnectResultEventSchema:()=>Jt,OAuthConnectSurfaceDataSchema:()=>G,OpenConversationEventSchema:()=>Yt,OpenPanelEventSchema:()=>Xt,OpenUrlEventSchema:()=>Zt,PendingToolConfirmationSchema:()=>$n,PlatformDisconnectedEventSchema:()=>Qt,QuestionEntrySchema:()=>T,QuestionOptionSchema:()=>w,QuestionRequestEventSchema:()=>$t,RecordingOptionsSchema:()=>en,RecordingPauseEventSchema:()=>rn,RecordingResumeEventSchema:()=>an,RecordingStartEventSchema:()=>tn,RecordingStopEventSchema:()=>nn,RelationshipStateSchema:()=>Mr,RelationshipStateUpdatedEventSchema:()=>on,RiskScopeOptionSchema:()=>Cn,SSE_REPLAY_RING_AGE_LIMIT_MS:()=>qn,SSE_REPLAY_RING_COUNT_LIMIT:()=>200,SURFACE_DATA_SCHEMAS:()=>wi,SURFACE_TYPES:()=>Q,ScheduleConversationCreatedEventSchema:()=>sn,ScopeOptionSchema:()=>g,SecretRequestEventSchema:()=>cn,ServiceGroupUpdateCompleteEventSchema:()=>ln,ServiceGroupUpdateProgressEventSchema:()=>un,ServiceGroupUpdateStartingEventSchema:()=>dn,ShowPlatformLoginEventSchema:()=>fn,SkillStateChangedEventSchema:()=>pn,SoundsConfigUpdatedEventSchema:()=>mn,SubagentDetailEventSchema:()=>Jr,SubagentDetailResponseSchema:()=>Yr,SubagentEventEventSchema:()=>gn,SubagentInnerEventSchema:()=>hn,SubagentSpawnedEventSchema:()=>_n,SubagentStatusChangedEventSchema:()=>vn,SubagentStatusSchema:()=>E,SubagentUsageStatsSchema:()=>D,SuggestedPromptSchema:()=>Dr,SuggestedPromptSourceSchema:()=>Er,SurfaceActionSchema:()=>Pn,SurfaceTypeSchema:()=>yi,SyncChangedEventSchema:()=>yn,TableCellValueSchema:()=>ai,TableColumnSchema:()=>ii,TableRowSchema:()=>oi,TableSurfaceDataSchema:()=>Y,ToolActivityMetadataSchema:()=>O,ToolInputDeltaEventSchema:()=>bn,ToolOutputChunkEventSchema:()=>Sn,ToolOutputChunkSubTypeSchema:()=>xn,ToolResultEventSchema:()=>kn,ToolUsePreviewStartEventSchema:()=>An,ToolUseStartEventSchema:()=>jn,UISurfaceCompleteEventSchema:()=>Mn,UISurfaceDismissEventSchema:()=>Nn,UISurfaceShowEventSchema:()=>Fn,UISurfaceUndoResultEventSchema:()=>In,UISurfaceUpdateEventSchema:()=>Ln,UsageProgressEventSchema:()=>k,UsageUpdateEventSchema:()=>Rn,UserMessageEchoEventSchema:()=>zn,WebFetchMetadataSchema:()=>On,WebSearchMetadataSchema:()=>Dn,WebSearchProviderIdSchema:()=>wn,WebSearchResultItemSchema:()=>En,WorkResultDiffSchema:()=>gi,WorkResultItemSchema:()=>hi,WorkResultMetadataSchema:()=>mi,WorkResultMetricSchema:()=>pi,WorkResultSectionSchema:()=>_i,WorkResultSectionTypeSchema:()=>di,WorkResultStatusSchema:()=>ui,WorkResultSurfaceDataSchema:()=>vi,WorkResultToneSchema:()=>Z,WorkflowCompletedEventSchema:()=>Bn,WorkflowJournalResponseSchema:()=>Zr,WorkflowLeafFinishedEventSchema:()=>Vn,WorkflowLeafSchema:()=>Xr,WorkflowLeafStartedEventSchema:()=>Hn,WorkflowProgressEventSchema:()=>Un,WorkflowRunStatusSchema:()=>A,WorkflowStartedEventSchema:()=>Wn,coerceSurfaceDataRecord:()=>Qr,isDaemonInternalSurfaceType:()=>Si,normalizeCopyBlockShowData:()=>ei}),$=l(`type`,[oe,se,ce,ue,de,fe,ge,_e,ve,ye,be,xe,Se,Ce,Te,Ee,De,Oe,ke,Ae,Pe,y,Fe,Ie,Le,Re,ze,Ve,Ue,We,qe,Ye,Xe,Ze,Qe,$e,et,tt,nt,rt,it,at,ot,ct,gt,ht,vt,_t,bt,yt,St,xt,wt,Ct,Et,Tt,kt,Ot,At,Mt,Pt,Ft,It,Lt,Rt,zt,Bt,Vt,Wt,Gt,Kt,qt,Jt,Yt,Xt,Zt,Qt,$t,rn,an,tn,nn,on,sn,cn,ln,un,dn,fn,pn,mn,gn,_n,vn,yn,bn,Sn,kn,An,jn,Mn,Nn,Fn,In,Ln,k,Rn,zn,Bn,Vn,Hn,Un,Wn]),Ei=u({id:f(),conversationId:f().optional(),seq:c().int().optional(),emittedAt:f(),message:$});export{Kn as _,W as a,V as c,G as d,Y as f,qn as g,gr as h,B as i,q as l,Yr as m,$ as n,X as o,Zr as p,Ti as r,H as s,Ei as t,J as u,Gn as v,k as y};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-BTyZM-kf.js","assets/preload-helper-Cv2QeVDK.js","assets/dist-BwAT3VYQ.js","assets/esm-DEY-lP80.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{a as e,c as t,i as n,t as r}from"./local-settings-C-dW2vkq.js";import{a as i,n as a,r as o}from"./device-settings-DXp9L4iB.js";import{o as s,t as c}from"./capture-error-Bj8_eutd.js";import{t as l}from"./preload-helper-Cv2QeVDK.js";import{t as u}from"./useQuery-Bz-fbQ-m.js";import{n as d,t as ee}from"./create-selectors-Qo7kcikX.js";import{$ as te,C as ne,D as re,S as ie,T as ae,_ as oe,at as se,c as f,ct as p,d as ce,et as le,f as m,h,i as ue,it as de,m as fe,n as pe,nt as me,ot as he,r as ge,rt as _e,s as ve,st as g,tt as _,v as ye,w as be}from"./local-mode-Ckii2tmN.js";import{t as v}from"./is-electron-m5eeGBnd.js";import{n as y,t as xe}from"./resolved-assistants-store-C-PdxK8f.js";import{n as Se,r as b,t as Ce}from"./api-errors-CFiCT7Ap.js";import{t as we}from"./client.gen-CV05d-kw.js";import{N as Te,P as Ee,Rt as De,kt as Oe,zt as ke}from"./sdk.gen-BIu1DgTs.js";import{a as Ae,c as je,r as Me}from"./api-XwdNiVE9.js";import{n as Ne,t as Pe}from"./event-bus-DSxmBYhD.js";import{C as x,T as Fe,a as Ie,b as Le,d as Re,h as ze,i as Be,l as Ve,t as He,u as Ue,x as We,y as Ge}from"./native-biometric-CntdlaL-.js";import{o as Ke}from"./remote-gateway-session-BHjZ9gQ6.js";import{t as qe}from"./dist-BwAT3VYQ.js";import{r as Je}from"./typed-storage-9Sn8tkE7.js";import{t as S}from"./onboarding-store-DutUn1E3.js";var C=ee(d(()=>({assistantState:{kind:`loading`},operationalStatusAssistantId:null,expectingFirstMessage:!1}))),Ye=new Set;function Xe(e){return Ye.add(e),()=>{Ye.delete(e)}}function Ze(){for(let e of Ye)try{e()}catch{}}var Qe=new Set([502,503,504]),$e=`Connection interrupted. Reconnecting…`;function et(e){return e.code===`proxy_network_error`?!0:(typeof e.detail==`string`?e.detail:``).includes(`net::ERR_`)}function tt(e){if(e.ok)switch(e.data.status){case`active`:return e.data.is_local?{kind:`self_hosted`}:{kind:`active`};case`initializing`:return{kind:`initializing`};case`to_be_deleted`:return{kind:`cleaning_up`};default:return{kind:`error`,message:`Unexpected assistant status: ${e.data.status}`}}return e.status===404?{kind:`auto_hatch`}:et(e.error)?{kind:`error`,transient:!0,message:$e}:{kind:`error`,message:b(e.error,void 0,`Failed to check assistant status.`)}}function nt(e){return e===void 0||e>=500}var rt=`platform_hosted_disabled`,it=`We are at capacity for Vellum Managed Assistants, more will be available soon!`;function at(e,t){return e===503?t?.code===rt:!1}var ot=2e3,st=3e4;function ct(e){return Math.min(ot*2**e,st)}var lt=3e5;function ut(){return{kind:`error`,message:`Your assistant is taking longer than expected to start. Please try again, or check the community for help.`}}var dt=[`assistant`,`current`],ft=3e3,pt=new Set([`initializing`,`cleaning_up`]);function mt(e){if(!e)return!1;let t=tt(e);return pt.has(t.kind)?ft:!1}function ht(e){return e?[...dt,e]:dt}function gt(e){let t=e.selectedPlatformAssistantId??null;return u({queryKey:ht(t),queryFn:()=>Me(t??void 0),enabled:e.enabled,retry:!1,refetchInterval:e=>mt(e.state.data),refetchOnWindowFocus:!1})}var _t=new Set([`healthy`,`ok`]);function vt(e){if(!e.ok)return`unreachable`;let t=e.data?.status;return t===`MIGRATING`?`migrating`:t!==void 0&&!_t.has(t)?`unhealthy`:`healthy`}function yt(){let e=C.use.assistantState();return e.kind===`self_hosted`||e.kind===`active`&&e.isLocal?e.health??null:null}var w=e=>e===`authenticated`,bt=e=>e!==`initializing`,T=e=>e===`present`,xt=e=>e!==`unknown`,St=(e,t)=>e===`present`&&!t,Ct=new Set([401,403,410]),wt=e=>!e.ok&&e.status!==void 0&&Ct.has(e.status),Tt=4e3,Et=6e4,Dt=5e3;function Ot(){let e=/\/assistant(?:\/|$)/.exec(window.location.pathname),t=e&&e.index>0?window.location.pathname.slice(0,e.index).replace(/\/+$/,``):``;return`${window.location.origin}${t}`}var E=new class{state={kind:`loading`};generation=0;initializingTimeout=null;ready=!1;inputs={sessionStatus:`initializing`,hasPlatformSession:!1,queryClient:null,selectedPlatformAssistantId:null};probeTimer=null;healthHeartbeatTimer=null;healthHeartbeatId=null;healthHeartbeatToken=0;reachabilityProbeInFlightIds=new Set;probeLoopAssistantId=null;errorRetryTimer=null;errorRetryAttempt=0;constructor(){Xe(()=>this.onUnreachable()),Ne(`app.online`,()=>this.onNetworkOnline()),y.subscribe((e,t)=>{e.selectedAssistantId!==t.selectedAssistantId&&(!p()||this.state.kind===`loading`||this.applyGatewayAuthShortCircuit())})}setInputs(e){this.inputs=e,this.ready=!0}resetForLogout(){y.getState().activeAssistantId!==null&&y.getState().setActiveAssistantId(null),this.setOperationalStatusAssistantId(null),this.cancelProbeTimer(),this.probeLoopAssistantId=null,this.reachabilityProbeInFlightIds.clear(),this.state.kind!==`loading`&&this.transition({kind:`loading`}),this.clearExpectingFirstMessage()}async respondToInputs(){if(this.ready){if(p()){this.applyGatewayAuthShortCircuit();return}if(!w(this.inputs.sessionStatus)){this.resetForLogout();return}this.inputs.hasPlatformSession&&_(null),this.inputs.isOrgReady&&await this.checkAssistant()}}async applyServerResult(e){this.ready&&(this.state.kind!==`initializing`&&this.state.kind!==`cleaning_up`||await this.applyServerStateUpdate(e))}async checkAssistant(e){if(!this.ready)return;if(p()){this.applyGatewayAuthShortCircuit();return}let t=this.generation;try{let n=e??this.inputs.selectedPlatformAssistantId??null,r=await this.inputs.queryClient.fetchQuery({queryKey:ht(n),queryFn:()=>Me(n??void 0),staleTime:0});if(t!==this.generation||n&&!r.ok&&r.status===404&&(y.getState().setSelectedAssistant(null),r=await this.inputs.queryClient.fetchQuery({queryKey:dt,queryFn:()=>Me(),staleTime:0}),t!==this.generation))return;await this.applyServerStateUpdate(r)}catch(e){if(console.error(`Error checking assistant status:`,e),c(e,{context:`check_assistant`}),t!==this.generation||this.degradeOnTransportFailure())return;this.transition({kind:`error`,transient:!0,message:$e})}}degradeOnTransportFailure(){return this.state.kind===`active`?(this.triggerReachabilityProbe(),!0):this.state.kind===`initializing`||this.state.kind===`cleaning_up`}retryAssistant(){this.ready&&this.checkAssistant()}markExpectingFirstMessage(){C.getState().expectingFirstMessage||C.setState({expectingFirstMessage:!0})}clearExpectingFirstMessage(){C.getState().expectingFirstMessage&&C.setState({expectingFirstMessage:!1})}transition(e){let t=this.state.kind;this.state=e,C.setState({assistantState:e}),e.kind===`initializing`?t!==`initializing`&&this.armInitializingWatchdog():this.initializingTimeout&&=(clearTimeout(this.initializingTimeout),null),e.kind!==`initializing`&&e.kind!==`active`&&this.clearExpectingFirstMessage(),!(e.kind===`self_hosted`||e.kind===`active`&&e.isLocal)&&this.healthHeartbeatId!==null&&this.cancelHealthHeartbeat(),e.kind===`error`&&e.transient?this.armErrorRetry():this.clearErrorRetry(e.kind!==`error`)}clearErrorRetry(e){this.errorRetryTimer&&=(clearTimeout(this.errorRetryTimer),null),e&&(this.errorRetryAttempt=0)}armErrorRetry(){this.errorRetryTimer&&clearTimeout(this.errorRetryTimer);let e=ct(this.errorRetryAttempt);this.errorRetryAttempt+=1,this.errorRetryTimer=setTimeout(()=>{this.errorRetryTimer=null,this.checkAssistant()},e)}onNetworkOnline(){if(this.ready){if(this.state.kind===`error`&&this.state.transient){this.clearErrorRetry(!0),this.checkAssistant();return}this.state.kind===`active`&&this.state.reachable===!1&&this.checkAssistant()}}armInitializingWatchdog(){this.initializingTimeout&&clearTimeout(this.initializingTimeout),this.initializingTimeout=setTimeout(()=>{this.generation++,s(`Assistant stuck in initializing state`,{level:`warning`,extra:{timeoutMs:lt}}),this.transition(ut())},lt)}projectActive(e){let t=e.data.maintenance_mode,n=e.data.is_local??!1;_(null),this.setOperationalStatusAssistantId(e.data.id);let r=y.getState();r.upsertFromApi(e.data),r.setActiveAssistantId(e.data.id),this.transition({kind:`active`,isLocal:n,maintenanceMode:{enabled:t?.enabled}}),n?this.startHealthHeartbeat(e.data.id):this.probeReachability(e.data.id)}projectSelfHosted(e){this.setOperationalStatusAssistantId(null),_({url:e.data.ingress_url,token:e.data.platform_actor_token});let t=y.getState();t.upsertFromApi(e.data),t.setActiveAssistantId(e.data.id),this.transition({kind:`self_hosted`}),this.startHealthHeartbeat(e.data.id)}applyGatewayAuthShortCircuit(){let e=window.location.origin,t=`self`,n=ue();if(h())e=Ot();else if(n){let r=f();e=`${window.location.origin}${n}`,t=r?.assistantId??t}_({url:e,token:se()}),this.setOperationalStatusAssistantId(null),y.getState().setActiveAssistantId(t),this.transition({kind:`active`,isLocal:!0}),this.startHealthHeartbeat(t)}async applyServerStateUpdate(e){let t=this.generation,n=tt(e);if(!(n.kind===`error`&&n.transient&&this.degradeOnTransportFailure())&&(e.ok?this.setOperationalStatusAssistantId(e.data.id):this.setOperationalStatusAssistantId(null),n.kind!==`auto_hatch`)){if(n.kind===`active`&&e.ok){this.projectActive(e);return}if(n.kind===`self_hosted`&&e.ok){this.projectSelfHosted(e);return}t===this.generation&&n.kind!==`active`&&this.transition(n)}}async probeReachability(e){if(!this.reachabilityProbeInFlightIds.has(e)){this.reachabilityProbeInFlightIds.add(e);try{let t=this.generation,n=this.state.kind===`self_hosted`||this.state.kind===`active`&&this.state.isLocal,r=n?f()?.assistantId??e:e,i=!h()&&n?await re(r).catch(()=>null):null,a=i?.ok&&i.state===`upgrading`?`upgrading`:`unreachable`;if(a!==`upgrading`)try{a=vt(await Ae(e))}catch{a=`unreachable`}if(a===`unreachable`&&!i&&!h()&&(i=await re(r).catch(()=>null)),a===`unreachable`&&i?.ok)switch(i.state){case`healthy`:a=`healthy`;break;case`sleeping`:case`starting`:case`upgrading`:case`unhealthy`:case`crashed`:a=i.state;break;case`unknown`:break}if(t!==this.generation||y.getState().activeAssistantId!==e)return;if(this.state.kind===`self_hosted`){this.state.health!==a&&this.transition({...this.state,health:a});return}if(this.state.kind!==`active`)return;let o=a===`healthy`||a===`unhealthy`;if(this.state.reachable===o&&this.state.health===a)return;this.transition({...this.state,reachable:o,health:a})}finally{this.reachabilityProbeInFlightIds.delete(e)}}}cancelProbeTimer(){this.probeTimer&&=(clearTimeout(this.probeTimer),null)}startProbeLoop(e){if(this.probeLoopAssistantId===e)return;this.cancelProbeTimer(),this.probeLoopAssistantId=e;let t=Date.now(),n=()=>{this.probeLoopAssistantId=null},r=async()=>{if(this.state.kind!==`active`||this.state.reachable===!0){n();return}if(Date.now()-t>Et){n();return}await this.probeReachability(e);let i=this.state;if(i.kind!==`active`||i.reachable===!0){n();return}if(Date.now()-t>Et){n();return}this.probeTimer=setTimeout(()=>void r(),Tt)};this.probeTimer=setTimeout(()=>void r(),Tt)}startHealthHeartbeat(e){if(this.healthHeartbeatId===e)return;this.cancelHealthHeartbeat(),this.healthHeartbeatId=e;let t=this.healthHeartbeatToken,n=async()=>{t===this.healthHeartbeatToken&&(await this.probeReachability(e),t===this.healthHeartbeatToken&&(this.healthHeartbeatTimer=setTimeout(()=>void n(),Dt)))};n()}cancelHealthHeartbeat(){this.healthHeartbeatToken++,this.healthHeartbeatId=null,this.healthHeartbeatTimer&&=(clearTimeout(this.healthHeartbeatTimer),null)}onUnreachable(){this.triggerReachabilityProbe()}triggerReachabilityProbe(){if(this.state.kind!==`active`)return;let e=y.getState().activeAssistantId;if(e){if(this.transition({...this.state,reachable:!1}),this.healthHeartbeatId===e){this.probeReachability(e);return}this.startProbeLoop(e)}}setLocalAssistantUpgradeInProgress(e,t){if(y.getState().activeAssistantId===e){if(!t){this.probeReachability(e);return}if(this.state.kind===`self_hosted`){this.transition({...this.state,health:`upgrading`});return}this.state.kind===`active`&&this.state.isLocal&&this.transition({...this.state,reachable:!1,health:`upgrading`})}}__resetForTesting(){this.initializingTimeout&&=(clearTimeout(this.initializingTimeout),null),this.cancelProbeTimer(),this.cancelHealthHeartbeat(),this.probeLoopAssistantId=null,this.reachabilityProbeInFlightIds.clear(),this.clearErrorRetry(!0),this.state={kind:`loading`},this.generation=0,this.ready=!1,C.setState({expectingFirstMessage:!1,operationalStatusAssistantId:null}),this.inputs={sessionStatus:`initializing`,hasPlatformSession:!1,queryClient:null},C.setState({assistantState:this.state}),y.setState({activeAssistantId:null})}setOperationalStatusAssistantId(e){C.getState().operationalStatusAssistantId!==e&&C.setState({operationalStatusAssistantId:e})}};function kt(e){let{assistants:t,selectedAssistantId:n,assistantsHydrated:r}=y.getState(),i=xe(t,e),a=e=>i.some(t=>t.id===e);if(n!==null){let e=t.some(e=>e.id===n);if(a(n)||!e&&!r)return n}let o=pe()?.assistantId??null;return o!==null&&a(o)?o:i[0]?.id??null}async function D(e){y.getState().setSelectedAssistant(e),e!==null&&await ie(e)}var At=`vellum:auth:userSnapshot`;function jt(e){if(e)try{localStorage.setItem(At,JSON.stringify(e))}catch{}}function Mt(){try{let e=localStorage.getItem(At);if(!e)return null;let t=JSON.parse(e);return!t||typeof t!=`object`?null:{kind:`platform`,id:typeof t.id==`string`?t.id:null,username:typeof t.username==`string`?t.username:null,email:typeof t.email==`string`?t.email:null,isStaff:t.isStaff===!0,firstName:typeof t.firstName==`string`?t.firstName:``,lastName:typeof t.lastName==`string`?t.lastName:``}}catch{return null}}function O(){try{localStorage.removeItem(At)}catch{}}var Nt=`vellum_active_organization_id`;function Pt(){return globalThis.sessionStorage===void 0?null:globalThis.sessionStorage}function Ft(){let e=Pt();if(!e)return null;try{return e.getItem(Nt)}catch{return null}}function It(e){let t=Pt();if(t)try{t.setItem(Nt,e)}catch{}}function Lt(){let e=Pt();if(e)try{e.removeItem(Nt)}catch{}}function Rt(e,t){return e.length===0?null:t&&e.some(e=>e.id===t)?t:e[0].id}var k=ee(d()((e,t)=>({organizations:[],currentOrganizationId:null,status:`idle`,error:null,fetchOrganizations:async()=>{e({status:`loading`,error:null});try{let n=(await Oe()).data?.results??[],r=Rt(n,t().currentOrganizationId??Ft());r&&It(r),e({organizations:n,currentOrganizationId:r,status:r?`ready`:`error`,error:r?null:`No organization available for this user.`})}catch(t){e({status:`error`,error:t instanceof Error&&t.message?t.message:`Failed to load organizations.`})}},setCurrentOrganizationId:n=>{let{organizations:r}=t();r.some(e=>e.id===n)&&(It(n),e({currentOrganizationId:n,status:`ready`}))},clearOrganization:()=>{Lt(),e({organizations:[],currentOrganizationId:null,status:`idle`,error:null})}})));function A(){return k.getState().currentOrganizationId??Ft()}function zt(){k.getState().clearOrganization()}function Bt(){let e=0,t=k.subscribe(t=>{(t.status===`ready`||t.status===`error`)&&(e=Date.now())}),n=$.subscribe((e,t)=>{let n=T(e.platformSession),r=T(t.platformSession);n&&(!r||e.user?.id!==t.user?.id)&&k.getState().fetchOrganizations()}),r=()=>{if(!T($.getState().platformSession))return;let{status:t}=k.getState();(t===`ready`||t===`error`)&&Date.now()-e>1e4&&k.getState().fetchOrganizations()},i=Ne(`app.resume`,()=>{r()});return()=>{t(),n(),i()}}function Vt(e,t={}){let n={...e??{}},r=t.includeSelfHostedActorToken===!1?null:te();if(r)return n.Authorization=`Bearer ${r}`,n;let i=t.organizationId??A();i&&(n[`Vellum-Organization-Id`]=i);let a=We();return a&&(n[`X-Session-Token`]=a),n}async function Ht(e,t={}){let n=Vt(e,t);if(n.Authorization||v())return n;await Ge();let r=Le();return r&&(n[`X-CSRFToken`]=r),n}var Ut;function Wt(){return v()?(Ut===void 0&&(Ut=window.__VELLUM_CONFIG__?.deviceId??null),Ut):null}var Gt=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,Kt=`X-Vellum-Electron-Renderer-Origin`,qt=new Map,Jt=[2e3,5e3,15e3,3e4,6e4],j=new Set;async function Yt(e,t={}){if(!m()||h()||fe()||P(e))return e;let n=Xt(e);if(!n)return e;let r=qt.get(n.assistantId);if(r)return r;let i=Zt(n,{allowGatewayRepair:t.allowGatewayRepair??!0});qt.set(n.assistantId,i);try{return await i}catch(e){throw qt.delete(n.assistantId),e}}function M(e,t={}){if(!m()||h()||fe())return;let n=e;if(!n){let e=f();if(!e||!ce(e))return;n=e.assistantId}if(j.has(n))return;j.add(n);let r=n;(async()=>{try{for(let e=0;;e++)try{await Yt(r,{allowGatewayRepair:t.allowGatewayRepair??!1});return}catch(n){let r=Jt[e];if(r===void 0){(t.onError??(e=>{console.warn(`local assistant platform bootstrap failed`,e)}))(n);return}console.warn(`local assistant platform bootstrap attempt ${e+1} failed, retrying in ${r}ms`,n),await new Promise(e=>setTimeout(e,r))}}finally{j.delete(r)}})()}function Xt(e){let t=pe();if(t?.assistantId===e&&ce(t))return t;let n=f();return n?.assistantId===e&&ce(n)?n:null}async function Zt(e,t){let n=await $t(e,t),r=await en(n,e.assistantId),i=r?.assistantId&&P(r.assistantId)?r.assistantId:null;if(i&&r?.hasAssistantApiKey!==!1){let t=r?.organizationId??e.platformOrganizationId??null;return t&&await Qt(e,{platformAssistantId:i,platformBaseUrl:r?.baseUrl??me(),organizationId:t}),i}let a=await tn(r?.organizationId??null,e);if(!a)throw Error(`Sign in to Vellum and select an organization to register this local assistant.`);let o=r?.clientInstallationId??Wt()??null;if(!o)throw Error(`Unable to identify this local assistant host for platform registration.`);let s=await nn(e,a,o),c=F(s.assistant?.id,s.assistant_id,s.id),l=i??c;if(!l||!P(l))throw Error(`The platform registration response did not include an assistant UUID.`);let u=I(s.assistant_api_key);!u&&r?.hasAssistantApiKey!==!0&&(u=await rn(e,a,o));let d=r?.baseUrl??me();return await on(n,{assistantApiKey:u,platformAssistantId:l,platformBaseUrl:d,organizationId:a,webhookSecret:I(s.webhook_secret)}),await Qt(e,{platformAssistantId:l,platformBaseUrl:d,organizationId:a}),l}async function Qt(e,t){await be({...e,platformAssistantId:t.platformAssistantId,platformBaseUrl:t.platformBaseUrl,platformOrganizationId:t.organizationId}).catch(e=>{console.warn(`local assistant platform lockfile update failed`,e)})}async function $t(e,t){let n=le(),r=te();if(t.allowGatewayRepair&&(!n||!r)&&(await ye(e),n=le(),r=te()),!n||!r){let t=ue(e);t&&(n=`${window.location.origin}${t}`)}if(!n||!r)throw Error(`Unable to reach the local assistant for platform identity setup.`);return{gatewayUrl:n,actorToken:r}}async function en(e,t){let n=ln(e.gatewayUrl,`/v1/assistants/${encodeURIComponent(t)}/platform/status`),r=await fetch(n,{headers:{Accept:`application/json`,Authorization:`Bearer ${e.actorToken}`},credentials:`omit`}).catch(()=>null);if(!r?.ok)return null;let i=await r.json().catch(()=>null);return{assistantId:F(i?.assistantId,i?.assistant_id),baseUrl:F(i?.baseUrl,i?.base_url),organizationId:F(i?.organizationId,i?.organization_id),hasAssistantApiKey:un(i?.hasAssistantApiKey,i?.has_assistant_api_key),clientInstallationId:F(i?.clientInstallationId,i?.client_installation_id)}}async function tn(e,t){return(e??t.platformOrganizationId??A()??t.organizationId??null)||(await k.getState().fetchOrganizations().catch(()=>{}),A()??t.platformOrganizationId??t.organizationId??null)}async function nn(e,t,n){return await an(`/v1/assistants/self-hosted-local/ensure-registration/`,e,t,n)}async function rn(e,t,n){return I((await an(`/v1/assistants/self-hosted-local/reprovision-api-key/`,e,t,n)).provisioning?.assistant_api_key)}async function an(e,t,n,r){let i=new Headers({...await Ht({Accept:`application/json`,"Content-Type":`application/json`},{includeSelfHostedActorToken:!1,organizationId:n})}),a=We();if(v()){if(!a)throw Error(`Sign in to Vellum to register this local assistant.`);i.set(Kt,`${window.location.protocol}//${window.location.host}`)}let o=await fetch(new URL(e,window.location.origin).toString(),{method:`POST`,headers:i,credentials:v()?`omit`:`same-origin`,body:JSON.stringify({client_installation_id:r,runtime_assistant_id:t.assistantId,client_platform:v()?`macos`:`web`})}).catch(e=>{throw Error(`Unable to reach the platform registration endpoint: ${N(e)}`)});if(!o.ok){let e=await cn(o);throw Error(`Unable to register the local assistant with the platform (HTTP ${o.status})${e?`: ${e}`:`.`}`)}try{return await o.json()}catch(e){throw Error(`Unable to read the platform registration response: ${N(e)}`)}}async function on(e,t){let n=[[`vellum:platform_assistant_id`,t.platformAssistantId],[`vellum:platform_base_url`,t.platformBaseUrl],[`vellum:platform_organization_id`,t.organizationId],[`vellum:webhook_secret`,t.webhookSecret]];await Promise.all(n.filter(e=>!!e[1]).map(([t,n])=>sn(e,t,n))),t.assistantApiKey&&await sn(e,`vellum:assistant_api_key`,t.assistantApiKey)}async function sn(e,t,n){let r=await fetch(ln(e.gatewayUrl,`/v1/secrets`),{method:`POST`,headers:{Accept:`application/json`,Authorization:`Bearer ${e.actorToken}`,"Content-Type":`application/json`},credentials:`omit`,body:JSON.stringify({type:`credential`,name:t,value:n})}).catch(e=>{throw Error(`Unable to reach the local assistant while storing ${t}: ${N(e)}`)});if(!r.ok){let e=await cn(r);throw Error(`Unable to store ${t} on the local assistant (HTTP ${r.status})${e?`: ${e}`:`.`}`)}return!0}async function cn(e){if((e.headers.get(`content-type`)??``).includes(`application/json`)){let t=await e.json().catch(()=>null),n=t&&typeof t==`object`&&`detail`in t?I(t.detail):null,r=t&&typeof t==`object`&&`code`in t?I(t.code):null;return n&&r?`${n} (${r})`:n||r||JSON.stringify(t)}return(await e.text().catch(()=>``)).slice(0,300)}function N(e){return e instanceof Error?e.message:String(e)}function ln(e,t){let n=new URL(e);return n.pathname=`${n.pathname.replace(/\/$/,``)}${t}`,n.toString()}function P(e){return Gt.test(e)}function F(...e){for(let t of e){let e=I(t);if(e)return e}return null}function I(e){return typeof e==`string`&&e.trim()?e.trim():null}function un(...e){for(let t of e)if(typeof t==`boolean`)return t;return null}var dn=`.dev`;function fn(e){let t=JSON.parse(e);return typeof t.token==`string`&&typeof t.bundleId==`string`&&typeof t.assistantId==`string`?{token:t.token,bundleId:t.bundleId,assistantId:t.assistantId}:null}var pn=Je({key:`vellum:push_registration`,scope:`user`,parse:fn,serialize:JSON.stringify,fallback:null}),mn=!1,hn=null,L=null,R=new Set;function gn(e){R.add(e),e.finally(()=>{R.delete(e)})}function _n(){return Ue()&&qe.getPlatform()===`ios`}function vn(e){return e.endsWith(dn)?`development`:`production`}async function yn(e,t){try{let{App:n}=await l(async()=>{let{App:e}=await import(`./esm-BTyZM-kf.js`);return{App:e}},__vite__mapDeps([0,1,2])),{id:r}=await n.getInfo(),i=await Ee({path:{assistant_id:t},body:{token:e,platform:`ios`,bundle_id:r,apns_environment:vn(r)},throwOnError:!1});if(i.error){c(i.error,{context:`push_registration_upsert`,level:`warning`,bestEffort:!0});return}L={token:e,bundleId:r,assistantId:t},pn.save(L)}catch(e){c(e,{context:`push_registration_upsert`,level:`warning`,bestEffort:!0})}}function bn(e){if(typeof e!=`object`||!e)return;let t=e,n=t.deep_link;if(typeof n==`object`&&n){let e=n.conversationId;if(typeof e==`string`)return e}return typeof t.conversationId==`string`?t.conversationId:void 0}async function xn(){if(!mn){mn=!0;try{let{PushNotifications:e}=await l(async()=>{let{PushNotifications:e}=await import(`./esm-DEY-lP80.js`);return{PushNotifications:e}},__vite__mapDeps([3,2]));await e.addListener(`registration`,e=>{let t=hn;t&&gn(yn(e.value,t))}),await e.addListener(`registrationError`,e=>{c(e,{context:`push_registration_apns`,level:`warning`})}),await e.addListener(`pushNotificationActionPerformed`,e=>{let t=bn(e.notification.data);t&&Pe(`deeplink.openThread`,{threadId:t})})}catch(e){mn=!1,c(e,{context:`push_registration_listeners`,level:`warning`})}}}async function Sn(e){if(_n()){hn=e,L&&L.assistantId!==e&&gn(yn(L.token,e));try{let{PushNotifications:e}=await l(async()=>{let{PushNotifications:e}=await import(`./esm-DEY-lP80.js`);return{PushNotifications:e}},__vite__mapDeps([3,2]));if(await xn(),(await e.requestPermissions()).receive!==`granted`)return;await e.register()}catch(e){c(e,{context:`push_registration_register`,level:`warning`})}}}async function Cn(){for(hn=null;R.size>0;)await Promise.allSettled([...R]);let e=L??pn.load();if(L=null,pn.remove(),!(!e||!_n()))try{let t=await Te({path:{assistant_id:e.assistantId,token:e.token},query:{bundle_id:e.bundleId},throwOnError:!1});t.error&&c(t.error,{context:`push_registration_delete`,level:`warning`,bestEffort:!0,extra:{assistantId:e.assistantId,bundleId:e.bundleId}})}catch(e){c(e,{context:`push_registration_delete`,level:`warning`,bestEffort:!0})}}function wn(e){return e}function Tn(e,t,n){if(!e||typeof e!=`object`||Array.isArray(e))return{code:null,message:n};let r=wn(e),i=r[t];if(Array.isArray(i)&&i.length>0){let e=i[0];if(typeof e==`string`)return{code:null,message:e};if(e&&typeof e==`object`&&!Array.isArray(e)){let t=wn(e),r=t.code,i=t.string??t.message;return{code:typeof r==`string`?r:null,message:typeof i==`string`?i:n}}}return typeof r.detail==`string`?{code:null,message:r.detail}:{code:null,message:n}}var En={too_short:`Must be at least 3 characters.`,too_long:`Must be at most 30 characters.`,invalid_chars:`Use only lowercase letters, digits, hyphens, and underscores.`,leading_underscore:`Cannot start with an underscore.`,trailing_underscore:`Cannot end with an underscore.`,leading_hyphen:`Cannot start with a hyphen.`,trailing_hyphen:`Cannot end with a hyphen.`,all_digits:`Cannot be all digits.`,reserved:`This handle is reserved.`,taken:`This handle is already taken.`};async function Dn(){let{data:e,error:t,response:n}=await we.get({url:`/v1/user/me/`,throwOnError:!1});if(Se(n,t,`Failed to load profile.`),!n.ok||!e)throw new Ce(n.status,b(t,n,`Failed to load profile.`));return e}var On=`Please choose a different handle.`;async function kn(e){let{data:t,error:n,response:r}=await we.patch({url:`/v1/user/me/`,body:e,throwOnError:!1});if(!r)return{kind:`error`,message:b(n,void 0,`Failed to save profile.`)??`Failed to save profile.`};if(r.ok&&t)return{kind:`ok`,data:t};if(r.status===409){let{message:e}=Tn(n,`username`,En.taken);return{kind:`taken`,message:e}}if(r.status===400){let{code:e,message:t}=Tn(n,`username`,On);return{kind:`invalid`,code:e,message:t}}return{kind:`error`,message:b(n,r,`Failed to save profile.`)}}async function An(){let{data:e,error:t,response:n}=await De({throwOnError:!1});if(Se(n,t,`Failed to load consent.`),!n.ok||!e)throw new Ce(n.status,b(t,n,`Failed to load consent.`));return e}async function jn(e){await ke({body:e,throwOnError:!0})}async function Mn(e,t){let{data:n,error:r,response:i}=await we.get({url:`/v1/user/username-available/`,query:{username:e},signal:t,throwOnError:!1});if(Se(i,r,`Failed to check handle availability.`),!i.ok||!n)throw new Ce(i.status,i.status===429?`Too many checks — try again in a moment.`:b(r,i,`Failed to check handle availability.`));return n}function Nn(e){i(`diagnosticsReporting`,e)}function Pn(e,t){let n=Rn(e);return n!==null&&t(n),Nn(Fn(n,e)),n}function Fn(e,t){return e??a(`shareDiagnostics`,!0)?t.hasServerRecord?t.diagnosticsEffective:!0:!1}function In(e,t){Pn({shareDiagnostics:e,diagnosticsEffective:e,hasServerRecord:!0},t)}function Ln(){o(`diagnosticsReporting`,``)===``&&Nn(!1)}function Rn(e){let{shareDiagnostics:t,hasServerRecord:n}=e;return t===!1?!1:n&&t===!0?!0:null}var zn=`2026-06-08`,Bn=`2026-06-22`,Vn=`2026-06-18`,Hn=`2026-06-18`,Un=`2026-06-08`,z={tos:zn,privacyPolicy:Bn,aiDataSharing:Bn,shareAnalytics:Vn,shareDiagnostics:Hn};function Wn(e){return{tos:e?.tos||`2026-06-08`,privacyPolicy:e?.privacy_policy||`2026-06-22`,aiDataSharing:e?.ai_data_sharing||`2026-06-22`,shareAnalytics:e?.share_analytics||`2026-06-18`,shareDiagnostics:e?.share_diagnostics||`2026-06-18`}}function Gn(){return{...z}}function B(e,t){return`device:consent:${e}:${t}`}function V(e){switch(e){case`tos`:return z.tos;case`privacy_policy`:return z.privacyPolicy;case`ai_data_sharing`:return z.aiDataSharing;case`share_diagnostics`:return z.shareDiagnostics}}var Kn=/^\d{4}-\d{2}-\d{2}$/;function qn(e,t){let r=n(B(e,t),``);return Kn.test(r)?r:``}function H(e,t){return W(qn(e,t),V(e))}function Jn(e){return`device:consent:ai:v${Un}:${e}`}function U(n,i,a){let o=`device:consent:${n}:v`,s=`:${i}`,c=[],l=``;for(let e=0;e<localStorage.length;e++){let t=localStorage.key(e);if(!t||!t.startsWith(o)||!t.endsWith(s))continue;let n=t.slice(o.length,t.length-s.length);Kn.test(n)&&(c.push(t),r(t,!1)&&n>l&&(l=n))}if(l)for(let e of a)qn(e,i)||t(B(e,i),l);for(let t of c)e(t)}function Yn(n){if(typeof window>`u`||!n)return{tos:!1,privacy:!1,diagnosticsCurrent:!1};try{U(`tos`,n,[`tos`]),U(`privacy`,n,[`privacy_policy`,`ai_data_sharing`]),U(`share_diagnostics`,n,[`share_diagnostics`]),U(`share_analytics`,n,[]),r(Jn(n),!1)&&e(Jn(n));let i=H(`tos`,n),a=H(`privacy_policy`,n)&&H(`ai_data_sharing`,n),o=H(`share_diagnostics`,n);if(i||a)return{tos:i,privacy:a,diagnosticsCurrent:o};let s=r(`vellum:onboarding:tosAccepted`,!1),c=r(`vellum:onboarding:aiDataConsent`,!1);return s||c?(s&&t(B(`tos`,n),zn),{tos:s&&H(`tos`,n),privacy:!1,diagnosticsCurrent:o}):{tos:!1,privacy:!1,diagnosticsCurrent:o}}catch{return{tos:!1,privacy:!1,diagnosticsCurrent:!1}}}function Xn(n,r,i){if(!(typeof window>`u`||!n))try{r?t(B(`tos`,n),V(`tos`)):e(B(`tos`,n)),i?(t(B(`privacy_policy`,n),V(`privacy_policy`)),t(B(`ai_data_sharing`,n),V(`ai_data_sharing`))):(e(B(`privacy_policy`,n)),e(B(`ai_data_sharing`,n)))}catch{}}function Zn(e){if(!(typeof window>`u`||!e))try{t(B(`share_diagnostics`,e),V(`share_diagnostics`))}catch{}}function Qn(t){if(e(`vellum:onboarding:tosAccepted`),e(`vellum:onboarding:aiDataConsent`),e(`vellum:onboarding:selectedVersion`),!(typeof window>`u`||!t))try{e(B(`tos`,t)),e(B(`privacy_policy`,t)),e(B(`ai_data_sharing`,t)),e(B(`share_diagnostics`,t)),e(Jn(t)),U(`tos`,t,[]),U(`privacy`,t,[]),U(`share_diagnostics`,t,[]),U(`share_analytics`,t,[])}catch{}}function W(e,t){return e>=t}function $n(e){if(!e)return{tos:!1,privacy:!1,shareAnalytics:null,shareDiagnostics:null,analyticsEffective:!0,diagnosticsEffective:!0,analyticsCurrent:!1,diagnosticsCurrent:!1,analyticsVersionCurrent:!1,diagnosticsVersionCurrent:!1,hasServerRecord:!1};let t=Wn(e.required_versions);z=t;let n=W(e.share_analytics_accepted_version,t.shareAnalytics),r=W(e.share_diagnostics_accepted_version,t.shareDiagnostics),i=!!e.tos_accepted_version||!!e.privacy_policy_accepted_version||!!e.ai_data_sharing_accepted_version||!!e.share_analytics_accepted_version||!!e.share_diagnostics_accepted_version||e.share_analytics===!1||e.share_diagnostics===!1||e.share_analytics_effective===!1||e.share_diagnostics_effective===!1;return{tos:W(e.tos_accepted_version,t.tos),privacy:W(e.privacy_policy_accepted_version,t.privacyPolicy)&&W(e.ai_data_sharing_accepted_version,t.aiDataSharing),shareAnalytics:e.share_analytics,shareDiagnostics:e.share_diagnostics,analyticsEffective:e.share_analytics_effective??e.share_analytics!==!1,diagnosticsEffective:e.share_diagnostics_effective??e.share_diagnostics!==!1,analyticsCurrent:e.share_analytics===null||n,diagnosticsCurrent:e.share_diagnostics===null||r,analyticsVersionCurrent:n,diagnosticsVersionCurrent:r,hasServerRecord:i}}function er(e,t){let{legal:n,shareAnalytics:r,shareDiagnostics:i}=e,a=S.getState();n&&(a.setTosAccepted(n.tos),a.setPrivacyConsent(n.privacy),Xn(t.userId,n.tos,n.privacy)),r!==void 0&&(a.setShareAnalytics(r),a.setPendingAnalyticsOptIn(r===!0)),i!==void 0&&In(i,a.setShareDiagnostics),n?(a.setAnalyticsConsentCurrent(!0),a.setDiagnosticsConsentCurrent(!0),a.setConsentHydrated(!0)):t.hasPlatformSession&&(r!==void 0&&a.setAnalyticsConsentCurrent(!0),i!==void 0&&a.setDiagnosticsConsentCurrent(!0)),i!==void 0&&(n||t.hasPlatformSession)&&Zn(t.userId),t.hasPlatformSession&&jn({...n?{tos_accepted_version:n.tos?z.tos:``,privacy_policy_accepted_version:n.privacy?z.privacyPolicy:``,ai_data_sharing_accepted_version:n.privacy?z.aiDataSharing:``}:{},...r===void 0?{}:{share_analytics:r,share_analytics_accepted_version:z.shareAnalytics},...i===void 0?{}:{share_diagnostics:i,share_diagnostics_accepted_version:z.shareDiagnostics}}).catch(()=>{})}function tr(e){er({legal:{tos:e.tos,privacy:e.privacy},...e.shareAnalytics===null?{}:{shareAnalytics:e.shareAnalytics},...e.shareDiagnostics===null?{}:{shareDiagnostics:e.shareDiagnostics}},{userId:e.userId,hasPlatformSession:e.hasPlatformSession})}function nr(e,t,n){er(e===`share_analytics`?{shareAnalytics:t}:{shareDiagnostics:t},n)}var rr=`vellum:`,ir=[`onboarding.`,`voice:`,`gw:`,`ff:client:`,`local:`,`integrations.`,`vellumDebug.`,`vellum_`],ar=new Set([`vellum_theme`,`vellum_share_analytics`,`vellum_share_diagnostics`,`vellum_biometric_enabled`,`vellum_llm_log_retention`,`vellum_timezone`,`vellum_media_embeds_enabled`,`vellum_media_embed_domains`,`onboarding.lastUserId`]);function or(e){return e.startsWith(rr)?!0:ar.has(e)?!1:ir.some(t=>e.startsWith(t))}function sr(){try{sessionStorage.clear()}catch{}try{let e=[];for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);n&&or(n)&&e.push(n)}e.forEach(e=>localStorage.removeItem(e))}catch{}}function cr(e){return e?.id??e?.email??e?.username??null}function G(e){return e?{kind:`platform`,id:cr(e),username:e.username??null,email:e.email??null,isStaff:e.is_staff??!1,firstName:e.first_name??``,lastName:e.last_name??``}:null}var lr=null,K=null,ur=!1,dr={kind:`local`,id:`gateway-local`,username:`local`,email:null,isStaff:!1,firstName:`Local`,lastName:`User`},q=e=>(jt(e),{sessionStatus:`authenticated`,user:e,platformSession:`present`,platformSessionRestoredOffline:!1}),J=()=>({sessionStatus:`authenticated`,user:dr}),Y=()=>({sessionStatus:`unauthenticated`,user:null,platformSession:`absent`}),X=e=>e===null||!e.ok&&!wt(e);async function fr(e){if(!We())return!1;let t=Mt();return t?(await Q(t.id),e({...q(t),platformSessionRestoredOffline:!0}),!0):!1}function pr(e){(!e||lr&&lr!==e)&&zt(),lr=e}function mr(){K?.postMessage(`auth-changed`)}function hr(e){let t=Gn();return{...e.tos?{tos_accepted_version:t.tos}:{},...e.privacy?{privacy_policy_accepted_version:t.privacyPolicy,ai_data_sharing_accepted_version:t.aiDataSharing}:{},...e.shareValues&&e.shareValues.analytics!==null?{share_analytics:e.shareValues.analytics,share_analytics_accepted_version:Vn}:{},...e.diagnostics?{share_diagnostics_accepted_version:t.shareDiagnostics,...e.shareValues&&e.shareValues.diagnostics!==null?{share_diagnostics:e.shareValues.diagnostics}:{}}:{}}}var Z;async function Q(e){if(Z!==void 0&&Z!==e){let e=S.getState();e.setPendingAnalyticsOptIn(!1),e.setServerAnalyticsEffective(null),e.setServerDiagnosticsEffective(null)}if(Z=e,e)try{let t=$n(await An()),n=S.getState(),r=n.shareAnalytics,i=n.shareDiagnostics;t.shareAnalytics===!0&&n.setPendingAnalyticsOptIn(!1),n.setServerAnalyticsEffective(t.analyticsEffective),n.setServerDiagnosticsEffective(t.diagnosticsEffective),t.hasServerRecord&&(t.shareAnalytics!==null||r!==!1)&&!(t.shareAnalytics===!1&&S.getState().pendingAnalyticsOptIn)&&n.setShareAnalytics(t.shareAnalytics),Pn({shareDiagnostics:t.shareDiagnostics,diagnosticsEffective:t.diagnosticsEffective,hasServerRecord:t.hasServerRecord},n.setShareDiagnostics);let a=t.tos,o=t.privacy,s=t.analyticsCurrent,c=t.diagnosticsCurrent,l=t.shareDiagnostics!==null&&t.diagnosticsVersionCurrent;if(!t.hasServerRecord){let t=Yn(e);s=!0,c=!0,l=t.diagnosticsCurrent,t.tos&&t.privacy&&(a=!0,o=!0,jn(hr({tos:!0,privacy:!0,diagnostics:l,shareValues:{analytics:r,diagnostics:i}})).catch(()=>{}))}else if(!a||!o||!c){let t=Yn(e),n=!a&&t.tos,r=!o&&t.privacy,i=!c&&t.diagnosticsCurrent;n&&(a=!0),r&&(o=!0),i&&(c=!0,l=!0),(n||r||i)&&jn(hr({tos:n,privacy:r,diagnostics:i})).catch(()=>{})}n.setTosAccepted(a),n.setPrivacyConsent(o),n.setAnalyticsConsentCurrent(s),n.setDiagnosticsConsentCurrent(c),Xn(e,a,o),l&&Zn(e),pr(e),n.setConsentHydrated(!0);return}catch{}let t=Yn(e),n=S.getState();e?Ln():(n.setPendingAnalyticsOptIn(!1),n.setServerAnalyticsEffective(null),n.setServerDiagnosticsEffective(null)),n.setTosAccepted(t.tos),n.setPrivacyConsent(t.privacy),n.setAnalyticsConsentCurrent(!0),n.setDiagnosticsConsentCurrent(!0),pr(e),n.setConsentHydrated(!0)}var gr=0;Promise.resolve();function _r(e,t={}){let n=++gr,r=()=>n!==gr;x().then(async n=>{if(!r())if(n.ok&&n.data.user){let i=G(n.data.user),a=t.setUserOnSuccess?{user:i}:{};if(t.setUserOnSuccess&&jt(i),m()){let e=!1,t=()=>!e&&!r();try{await Promise.race([(async()=>{await k.getState().fetchOrganizations();let e=await je();t()&&e.ok&&await ne(e.data,k.getState().currentOrganizationId??void 0,t)})(),new Promise((t,n)=>setTimeout(()=>{e=!0,n(Error(`sync timeout`))},3e3))])}catch{}}if(r())return;e({platformSession:`present`,platformSessionRestoredOffline:!1,...a}),M()}else t.clearOnFailure&&e({platformSession:`absent`})}).catch(()=>{r()||t.clearOnFailure&&e({platformSession:`absent`})}).finally(()=>{r()||e(e=>e.platformSession===`unknown`?{platformSession:`absent`}:{})})}function vr(e,t){!m()||g()||ve().length>0?_r(e,t):e({platformSession:`absent`})}async function yr(){try{if(await Ke())return!0}catch{}return se()!==null}var $=ee(d()((e,t)=>({sessionStatus:`initializing`,user:null,platformSession:`unknown`,platformSessionRestoredOffline:!1,initSession:async()=>{if(h()){await yr()?e({...J(),platformSession:`absent`}):e(Y());return}if(g()){try{await oe(),e(J())}catch{e({sessionStatus:`unauthenticated`,user:null})}vr(e);return}if(m()&&!g()){if(ve().length>0){let t=null;try{if(t=await x(),t.ok&&t.data.user){let n=G(t.data.user);await Q(n?.id??null);try{await k.getState().fetchOrganizations();let e=await je();e.ok&&await ne(e.data,k.getState().currentOrganizationId??void 0)}catch{}e(q(n));return}}catch{}if(X(t)){if(await fr(e))return}else O();e(Y());return}e(J()),ur?e({platformSession:`absent`}):_r(e,{setUserOnSuccess:!0}),ur=!1;return}let t=null;try{if(t=await x(),t.ok&&t.data.user){let n=G(t.data.user);await Q(n?.id??null),e(q(n));return}}catch(e){console.error(`auth.initSession failed`,e)}if(!(X(t)&&await fr(e))){if(Ue()&&Be())try{let t=await Ie();if(t){Ve(t),await ze();let n=await x();if(n.ok&&n.data.user){let t=G(n.data.user);await Q(t?.id??null),e(q(t));return}}}catch(e){console.warn(`auth.initSession biometric recovery failed`,e)}await Q(null),X(t)||O(),e(Y())}},connectLocalAssistant:async n=>{await ye(ge().find(e=>e.assistantId===n)),await D(n),e(J()),await E.checkAssistant(),St(t().platformSession,t().platformSessionRestoredOffline)&&M(n),vr(e)},connectPlatformAssistant:async t=>{await D(t);let n=await x();if(!n.ok||!n.data.user)throw Error(`Platform authentication required`);let r=G(n.data.user);await Q(r?.id??null),await k.getState().fetchOrganizations(),e(q(r))},refreshSession:async()=>{if(h())return await yr()?(e({...J(),platformSession:`absent`}),!0):(e(Y()),!1);if(p()){try{await de(he()),e({sessionStatus:`authenticated`})}catch{return e(Y()),!1}return vr(e,{clearOnFailure:!0}),!0}let n=null;try{if(n=await x(),n.ok&&n.data.user){let t=G(n.data.user);if(await Q(t?.id??null),m())try{await k.getState().fetchOrganizations();let e=await je();e.ok&&await ne(e.data,k.getState().currentOrganizationId??void 0)}catch{}return e(q(t)),!0}}catch(e){console.warn(`auth.refreshSession failed`,e)}if(X(n))return w(t().sessionStatus);if(g()){let n=w(t().sessionStatus);return n&&(O(),e({...J(),platformSession:`absent`})),n}return O(),await Q(null),e(Y()),!1},logout:async()=>{if(p()){E.resetForLogout(),await D(null),_e(),zt(),sr(),e(Y()),mr();return}ur=!0,await Cn();try{await Fe()}finally{v()&&await window.vellum?.auth?.signOut?.(),m()&&!v()&&await ae(),He(),zt(),sr(),E.resetForLogout(),await D(null),e(Y()),mr()}}}))),br=()=>w($.use.sessionStatus()),xr=()=>!bt($.use.sessionStatus()),Sr=()=>T($.use.platformSession()),Cr=()=>xt($.use.platformSession()),wr=()=>St($.use.platformSession(),$.use.platformSessionRestoredOffline());function Tr(){let{refreshSession:e}=$.getState(),t=[],n=()=>e().catch(e=>console.warn(`auth.refreshSession failed`,e)),r=Ne(`app.resume`,()=>{Re()||n()});return t.push(r),typeof BroadcastChannel<`u`&&(K=new BroadcastChannel(`auth`),K.onmessage=()=>{sr(),window.location.reload()},t.push(()=>{K?.close(),K=null})),()=>t.forEach(e=>e())}export{E as A,nt as B,Yt as C,k as D,Bt as E,yt as F,Ze as H,gt as I,it as L,St as M,bt as N,kt as O,wt as P,at as R,M as S,A as T,C as U,Qe as V,An as _,br as a,Tn as b,Bn as c,$n as d,tr as f,Mn as g,En as h,Sr as i,w as j,D as k,zn as l,Pn as m,$ as n,Cr as o,nr as p,wr as r,xr as s,Tr as t,Qn as u,Dn as v,Wt as w,Sn as x,kn as y,tt as z};
|