@vellumai/web 0.11.0 → 0.11.1-staging.1
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-xdH2KLtr.js → AnimatePresence-D23js3-M.js} +3 -3
- package/dist/assets/{BundleConfirmPage-4StSZy-f.js → BundleConfirmPage-C1-BZKI9.js} +1 -1
- package/dist/assets/{a2a-invite-C1xJNSGF.js → a2a-invite-CfhpXDTT.js} +1 -1
- package/dist/assets/{about-page-C3tJLjvD.js → about-page-Dtg-I99x.js} +1 -1
- package/dist/assets/access-Cms1bEme.js +1 -0
- package/dist/assets/{account-page-BvXVc1IK.js → account-page-inWgS0vI.js} +1 -1
- package/dist/assets/{account-shell-D6aWpePp.js → account-shell-BTUVn2Xx.js} +1 -1
- package/dist/assets/{acp-run-actions-8ioRAI8C.js → acp-run-actions-BGbBYETY.js} +1 -1
- package/dist/assets/{acp-run-detail-panel-B8ULpnis.js → acp-run-detail-panel-B4LJiMqg.js} +1 -1
- package/dist/assets/{acp-run-store-CpH4OeOS.js → acp-run-store-CmGaPJm1.js} +1 -1
- package/dist/assets/activity-steps-panel-V8cTQq1e.js +1 -0
- package/dist/assets/{add-credential-modal-Cu6aAlhm.js → add-credential-modal-DQZ43BJU.js} +1 -1
- package/dist/assets/{add-credits-modal-BelWmezc.js → add-credits-modal-kXRkAbd-.js} +1 -1
- package/dist/assets/ai-page-BwBXejbF.js +1 -0
- package/dist/assets/{animated-avatar-DknFwi9-.js → animated-avatar-CDeJNhwm.js} +1 -1
- package/dist/assets/api-C6QqN4kB.js +1 -0
- package/dist/assets/api-Cg8AYMGi.js +1 -0
- package/dist/assets/{api-key-screen-BhynbUuC.js → api-key-screen-DgcT6PN1.js} +1 -1
- package/dist/assets/{app-card-BF2l9ot8.js → app-card-DpKhIlQh.js} +1 -1
- package/dist/assets/{app-info-fS0zIUcN.js → app-info-Bdfw54u1.js} +1 -1
- package/dist/assets/{archive-redirect-page-DOF2veAy.js → archive-redirect-page-CWJIEUlH.js} +1 -1
- package/dist/assets/{assistant-feature-flag-store-B00tpY5e.js → assistant-feature-flag-store-CMUNSAPL.js} +1 -1
- package/dist/assets/assistant-identity-store-BczULg2T.js +1 -0
- package/dist/assets/{assistant-status-panel-D2PXdHw0.js → assistant-status-panel-RXjaS1rn.js} +1 -1
- package/dist/assets/auth-store-BhQdM8W1.js +2 -0
- package/dist/assets/avatar-random-pa0KKSz4.js +1 -0
- package/dist/assets/{avatar-renderer-BrNjnimz.js → avatar-renderer-3EVhZ7TB.js} +1 -1
- package/dist/assets/{background-task-actions-B1bLmbnw.js → background-task-actions-XdNtOXmP.js} +1 -1
- package/dist/assets/{background-task-detail-panel-56ZpprL7.js → background-task-detail-panel-En7JxNg1.js} +1 -1
- package/dist/assets/{background-task-store-C5J8CFan.js → background-task-store-CN04oS2z.js} +1 -1
- package/dist/assets/billing-page-CPd78lB7.js +3 -0
- package/dist/assets/{billing-redirect-page-BIfv18MY.js → billing-redirect-page-CiHoDQHE.js} +1 -1
- package/dist/assets/{bookmarks-page-BOhi-7gN.js → bookmarks-page-C56JeUsQ.js} +1 -1
- package/dist/assets/browser-CpgSNbEp.js +2 -0
- package/dist/assets/build-state-Bpy5oGW4.js +1 -0
- package/dist/assets/{capture-error-Dj49ma74.js → capture-error-FWzaVb8P.js} +1 -1
- package/dist/assets/channels-page-route-BTgUcK8C.js +9 -0
- package/dist/assets/{chat-avatar-C9l3drVu.js → chat-avatar-CIF_o6y5.js} +1 -1
- package/dist/assets/{chat-layout-slots-store-KQz1WMKU.js → chat-layout-slots-store-C325hn1X.js} +1 -1
- package/dist/assets/chat-markdown-message-C-vt9hP_.js +2 -0
- package/dist/assets/{checkbox-D7Eg2K35.js → checkbox-BZTUJtxM.js} +1 -1
- package/dist/assets/checkout-continuation-DRPQwh5V.js +1 -0
- package/dist/assets/checkout-page-Dd-cMev5.js +1 -0
- package/dist/assets/checkout-return-target-Cib3fzdY.js +1 -0
- package/dist/assets/{client-feature-flag-store-BdNCabm_.js → client-feature-flag-store-Bg5XEI2b.js} +1 -1
- package/dist/assets/{client-identity-yPmEu-I1.js → client-identity-BSG341dO.js} +1 -1
- package/dist/assets/command-palette-I4bL0EMa.js +1 -0
- package/dist/assets/command-palette-window-page-Ci9G8bay.js +1 -0
- package/dist/assets/{community-page-_nhJqpCD.js → community-page-BZmxfsXK.js} +1 -1
- package/dist/assets/{confirm-dialog-D-Yjf2uS.js → confirm-dialog-DZX6LhLy.js} +1 -1
- package/dist/assets/{connect-page-DS-7aFqU.js → connect-page-D_I1YM62.js} +1 -1
- package/dist/assets/{consent-controls-DVeAjj2Z.js → consent-controls-CiKmEzBn.js} +1 -1
- package/dist/assets/consent-s5g0Gmb2.js +1 -0
- package/dist/assets/{contacts-gateway-BlLLBft6.js → contacts-gateway-C628mrY_.js} +1 -1
- package/dist/assets/contacts-page-route-D2BhoJd2.js +1 -0
- package/dist/assets/{conversation-cache-CqrrtLGM.js → conversation-cache-BzPdBPXN.js} +1 -1
- package/dist/assets/conversation-list-fetchers-BZnx9EMN.js +1 -0
- package/dist/assets/{conversation-navigation-D8y9l5qL.js → conversation-navigation-D6JNBpfW.js} +1 -1
- package/dist/assets/conversation-queries-pl1gz6ie.js +1 -0
- package/dist/assets/conversation-selection-B954w311.js +1 -0
- package/dist/assets/{conversation-store-D_eevw7L.js → conversation-store-C0tvFESx.js} +1 -1
- package/dist/assets/copy-to-clipboard-DaTa8Tbi.js +1 -0
- package/dist/assets/{credential-entry-page-C22Mw_ea.js → credential-entry-page-BCAYmsDK.js} +1 -1
- package/dist/assets/credentials-page-AhDinoZ1.js +1 -0
- package/dist/assets/{danger-zone-redirect-page-QELjAt0B.js → danger-zone-redirect-page-BcdEHbAX.js} +1 -1
- package/dist/assets/debug-page-CK_oYzi-.js +4 -0
- package/dist/assets/{deploy-dialogs-DcxJ8zmL.js → deploy-dialogs-aZOTf3Se.js} +1 -1
- package/dist/assets/{deploy-store-Dxp-S0Jo.js → deploy-store-CnVNbznH.js} +1 -1
- package/dist/assets/{detail-card-BiNdiBiS.js → detail-card-BQsM7aVb.js} +1 -1
- package/dist/assets/detail-drawer-CXL5e2Tu.js +1 -0
- package/dist/assets/{detail-panel-stop-button-CZuQfGZs.js → detail-panel-stop-button-BB_udTHK.js} +1 -1
- package/dist/assets/{detail-shell-DB1cQBnE.js → detail-shell-aB8B_tLZ.js} +1 -1
- package/dist/assets/developer-page-onLldZbG.js +1 -0
- package/dist/assets/{devices-redirect-page-B3KUr7o2.js → devices-redirect-page-BNpxDctf.js} +1 -1
- package/dist/assets/{diagnostics-9AhdBjYA.js → diagnostics-BE1IgjfV.js} +1 -1
- package/dist/assets/{dictation-overlay-page-DHI92ftK.js → dictation-overlay-page-DUWJ13of.js} +1 -1
- package/dist/assets/{dictation-overlay-CRLGSCST.js → dictation-overlay-w1YHEfFR.js} +1 -1
- package/dist/assets/{dist-Ckcpfjj7.js → dist-BswnB-bR.js} +1 -1
- package/dist/assets/{dist-CXcArvGs.js → dist-CQN0ZAOZ.js} +1 -1
- package/dist/assets/{doctor-handoff-store-DPviL0wb.js → doctor-handoff-store-ClS6J-b-.js} +1 -1
- package/dist/assets/document-viewer-container-BWkL66R6.js +2 -0
- package/dist/assets/{document-viewer-page-ClsAgnVX.js → document-viewer-page-BrUMyoc1.js} +1 -1
- package/dist/assets/{edge-swipe-arbiter-store-QUBer3EI.js → edge-swipe-arbiter-store-D9XJTxJJ.js} +1 -1
- package/dist/assets/ellipsis-vertical-nov0xhhF.js +1 -0
- package/dist/assets/{emails-page-D1eq8Mcq.js → emails-page--_07UalM.js} +1 -1
- package/dist/assets/{environment-store-nuDZk7wN.js → environment-store-Bbx4f6SQ.js} +1 -1
- package/dist/assets/esm-B2M2kM_8.js +2 -0
- package/dist/assets/esm-BgRAHqeR.js +2 -0
- package/dist/assets/esm-CXX8rcv3.js +2 -0
- package/dist/assets/esm-Chh8mHmh.js +1 -0
- package/dist/assets/esm-Cl2UNC_o.js +2 -0
- package/dist/assets/esm-ClO8yhvi.js +2 -0
- package/dist/assets/esm-DOATKqE3.js +2 -0
- package/dist/assets/esm-UUuqyyp5.js +1 -0
- package/dist/assets/eye-bbox-DE8r0Vt3.js +1 -0
- package/dist/assets/feature-flag-catalog-CWHnoWvT.js +1 -0
- package/dist/assets/file-editor-DcH2Os5o.js +1 -0
- package/dist/assets/{file-markdown-B0zje_y3.js → file-markdown-DYpaSkNo.js} +1 -1
- package/dist/assets/first-run-scope-CRBSt0Wi.js +1 -0
- package/dist/assets/{funnel-events-BqvFi8Sp.js → funnel-events-BAmjKdwH.js} +1 -1
- package/dist/assets/general-page-zY9TVscp.js +1 -0
- package/dist/assets/get-memory-stats-CthVfpul.js +1 -0
- package/dist/assets/handle-logout-CJkbJFqo.js +1 -0
- package/dist/assets/{haptics-BTcSZuHP.js → haptics-agodX1nl.js} +2 -2
- package/dist/assets/hatching-screen-BMV3_jw3.js +1 -0
- package/dist/assets/home-page-route-BVqYfryr.js +1 -0
- package/dist/assets/hosting-screen-DZmRKq2R.js +1 -0
- package/dist/assets/identity-Cb4xS1Kk.js +1 -0
- package/dist/assets/identity-page-route-bSLAtYjH.js +7 -0
- package/dist/assets/index-BWl1C6Md.js +11 -0
- package/dist/assets/index-CBMHOw4F.css +2 -0
- package/dist/assets/{ingest-D3dRmJA9.js → ingest-DiiwFQfV.js} +1 -1
- package/dist/assets/{inspect-page-DVgajY0Q.js → inspect-page-BSwyrBOD.js} +6 -6
- package/dist/assets/{installed-plugins-query-s6Kf3pL8.js → installed-plugins-query-6u0jUM-L.js} +1 -1
- package/dist/assets/{integration-icon-CmjrEk0J.js → integration-icon-tiuVoy54.js} +1 -1
- package/dist/assets/integrations-page-D4N7XBxV.js +1 -0
- package/dist/assets/{intelligence-layout-DfdvpHl4.js → intelligence-layout-BHQtSVKp.js} +1 -1
- package/dist/assets/invalidate-memory-queries-BPL6t0Cu.js +1 -0
- package/dist/assets/invalidate-plugin-queries-QmmXCyiN.js +1 -0
- package/dist/assets/{keyboard-shortcuts-redirect-page-DMytLINR.js → keyboard-shortcuts-redirect-page-D_Rf5W7f.js} +1 -1
- package/dist/assets/{latest-assistant-text-BIlBGS_i.js → latest-assistant-text-DPm0HIWu.js} +2 -2
- package/dist/assets/{library-detail-page-BzvbB9Ud.js → library-detail-page-CbaVAX9l.js} +1 -1
- package/dist/assets/{library-page-DK2Dx8vo.js → library-page-BV6AZOZ4.js} +1 -1
- package/dist/assets/list-row-BYrmPIC4.js +1 -0
- package/dist/assets/local-mode-9zpgPNoq.js +39 -0
- package/dist/assets/{local-runtime-upgrade-COcJaRWH.js → local-runtime-upgrade--xfigQzq.js} +1 -1
- package/dist/assets/{login-flow-BVUkpWP_.js → login-flow-C67Qs4VU.js} +1 -1
- package/dist/assets/login-page-v99-qDEh.js +1 -0
- package/dist/assets/{logout-page-B8EOSvAV.js → logout-page-D7iA9Kq5.js} +1 -1
- package/dist/assets/{logs-layout-DK6gVU21.js → logs-layout-ClP6uOCy.js} +1 -1
- package/dist/assets/machine-sizes-D0oAlF9f.js +1 -0
- package/dist/assets/memory-page-route-BaU_3Ud_.js +6 -0
- package/dist/assets/{memory-router-playground-page-B-6Yt7rp.js → memory-router-playground-page-DqiasVxi.js} +1 -1
- package/dist/assets/{menu-BKrcAFYk.js → menu-CKZtG-s_.js} +1 -1
- package/dist/assets/{messages-BuqyOjvT.js → messages-BsXTJIIe.js} +2 -2
- package/dist/assets/{metric-card-j9s-2nkl.js → metric-card-B2kI8coI.js} +1 -1
- package/dist/assets/{mobile-sidebar-drawer-BLGt_R0d.js → mobile-sidebar-drawer-BmxsSTmg.js} +1 -1
- package/dist/assets/{modal-CoOkN7c0.js → modal-DwsThLGg.js} +1 -1
- package/dist/assets/mutation-error-CXV1BKlB.js +1 -0
- package/dist/assets/native-anchor-BpfRwc60.js +1 -0
- package/dist/assets/native-biometric-CTR2Zi2w.js +6 -0
- package/dist/assets/native-deep-link-BJjxOpZm.js +1 -0
- package/dist/assets/native-file-BvwfoU6A.js +2 -0
- package/dist/assets/navigation-resolver-CIICT6n9.js +1 -0
- package/dist/assets/{not-found-Dh7Vxgjl.js → not-found-p1VhZpMs.js} +1 -1
- package/dist/assets/{notice-B6naz_-V.js → notice-DCp7WO3L.js} +1 -1
- package/dist/assets/{notifications-page-BB5kRj1s.js → notifications-page-BV9W9NKD.js} +1 -1
- package/dist/assets/{oauth-complete-page-01jk0-Xz.js → oauth-complete-page-KSpFlPD6.js} +1 -1
- package/dist/assets/{oauth-connection-utils-DhmVsbum.js → oauth-connection-utils-D9CTptlA.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-DdR3sLCH.js → oauth-popup-complete-page-C5cG_z3A.js} +1 -1
- package/dist/assets/{onboarding-layout-CYU5QNQ5.js → onboarding-layout-K7X9fV8B.js} +1 -1
- package/dist/assets/{onboarding-store-CHsGFmyD.js → onboarding-store-OVV4wyh5.js} +1 -1
- package/dist/assets/open-workspace-file-CqN4BPYt.js +2 -0
- package/dist/assets/page-empty-state-B0da-Sm9.js +1 -0
- package/dist/assets/{page-shell-Ns8K4aqQ.js → page-shell-CxcCDSYe.js} +1 -1
- package/dist/assets/{pairing-page-COqX_5vT.js → pairing-page-_kskNw0h.js} +1 -1
- package/dist/assets/panel-item-DGs4s9r-.js +1 -0
- package/dist/assets/{password-reset-page-Ck1m9qRW.js → password-reset-page-Bq3ehgjW.js} +1 -1
- package/dist/assets/{personality-page-B0GpJMv5.js → personality-page-Mg-bAdAk.js} +1 -1
- package/dist/assets/plans-page-B7IYXk_o.js +1 -0
- package/dist/assets/platform-detection-BY5uzLL8.js +1 -0
- package/dist/assets/{platform-login-notice-D_-ZVyk8.js → platform-login-notice-CozFnzB_.js} +1 -1
- package/dist/assets/{platform-loopback-page-B68rydoU.js → platform-loopback-page-D1a986dJ.js} +1 -1
- package/dist/assets/{plugin-detail-page-DGzmeb3j.js → plugin-detail-page-DF9vmm23.js} +1 -1
- package/dist/assets/{plugins-page-C7Xd3LTL.js → plugins-page-BDZiCqWZ.js} +1 -1
- package/dist/assets/plugins-surface-C4peMNec.js +1 -0
- package/dist/assets/{popover-CDZiHp1D.js → popover-BFL-uOLh.js} +1 -1
- package/dist/assets/{prefs-BplCYXxl.js → prefs-B6fvTCOn.js} +1 -1
- package/dist/assets/{privacy-page-NhPZ8klL.js → privacy-page-spUjG6Rd.js} +1 -1
- package/dist/assets/privacy-screen-yW7FzWZI.js +1 -0
- package/dist/assets/{provider-callback-page-Dkxi-_kI.js → provider-callback-page-CGNZRGqn.js} +1 -1
- package/dist/assets/provider-key-w3CzmGtq.js +1 -0
- package/dist/assets/provider-signup-page-CYwWsR4t.js +1 -0
- package/dist/assets/provisioning-targets-CT4slXZJ.js +1 -0
- package/dist/assets/{proxy-lxbolTGx.js → proxy-CNtrhN4q.js} +1 -1
- package/dist/assets/{quick-input-page-DnjOMI1n.js → quick-input-page-COgnUnT_.js} +1 -1
- package/dist/assets/react-query.gen-0mspArBl.js +1 -0
- package/dist/assets/react-query.gen-BVTEjHsw.js +1 -0
- package/dist/assets/{remote-gateway-session-DJ1rzXEw.js → remote-gateway-session-CgxYHgOD.js} +1 -1
- package/dist/assets/{research-facts-B5ItKoAK.js → research-facts-BcW4fghT.js} +1 -1
- package/dist/assets/{research-mock-page-gbOSvFQL.js → research-mock-page-BFm8-rLU.js} +1 -1
- package/dist/assets/{research-onboarding-persistence-CgJDwdl9.js → research-onboarding-persistence-BN6g1lF7.js} +1 -1
- package/dist/assets/research-onboarding-route-B_wcuPdA.js +50 -0
- package/dist/assets/{research-results-view-WQsLxBlE.js → research-results-view-BBf2iyCA.js} +1 -1
- package/dist/assets/resolved-assistants-store-8HQDfxZh.js +1 -0
- package/dist/assets/retire-confirm-dialog-DCj4ppbL.js +1 -0
- package/dist/assets/{review-terms-screen-c4Vt5WqP.js → review-terms-screen-HumnxyCY.js} +1 -1
- package/dist/assets/{risk-RmzL2Rk_.js → risk-Biu4oG7i.js} +2 -2
- package/dist/assets/routes-CFLMGkjX.js +23 -0
- package/dist/assets/{routes-CsoiCk2y.js → routes-GmNvdtLW.js} +1 -1
- package/dist/assets/runtime-upgrade-banner-6Pt-rFW8.js +2 -0
- package/dist/assets/schedules-B6KivAAT.js +1 -0
- package/dist/assets/schedules-page-_J_tbX2p.js +1 -0
- package/dist/assets/{sdk.gen-DeyOX3Kb.js → sdk.gen-BySz4QYj.js} +1 -1
- package/dist/assets/sdk.gen-DVW3wpbx.js +1 -0
- package/dist/assets/{security-redirect-page-CMMujz_x.js → security-redirect-page-T1J6IoOb.js} +1 -1
- package/dist/assets/select-assistant-screen-BUeWouXT.js +1 -0
- package/dist/assets/session-corner-action-BfLy9WAJ.js +1 -0
- package/dist/assets/{setting-row-D10FtQcP.js → setting-row-DEyL7IUP.js} +1 -1
- package/dist/assets/{settings-divider-CItcvksF.js → settings-divider-DjiuxEcE.js} +1 -1
- package/dist/assets/settings-layout-BWxjKE-C.js +1 -0
- package/dist/assets/settings-navigation-BDpUXrOI.js +1 -0
- package/dist/assets/share-feedback-modal-BXQs6sPT.js +2 -0
- package/dist/assets/{sidebar-tree-CEPitR5K.js → sidebar-tree-8Z7uHJol.js} +1 -1
- package/dist/assets/signup-page-C8f8vQ6j.js +1 -0
- package/dist/assets/{signup-shell-DxP2zqed.js → signup-shell-CMXUBUal.js} +1 -1
- package/dist/assets/site-favicon-CPDg0T08.js +1 -0
- package/dist/assets/{skill-detail-page-o3EhI_Q2.js → skill-detail-page-D1Z_JQ58.js} +1 -1
- package/dist/assets/{skill-detail-panel-DdQL6oky.js → skill-detail-panel-B6JNHP6G.js} +1 -1
- package/dist/assets/{skills-DT9YkYm6.js → skills-DK5e24Im.js} +1 -1
- package/dist/assets/{skills-page-BtFhw8jF.js → skills-page-BYtAFZzb.js} +1 -1
- package/dist/assets/{slack-setup-wizard-C6ALDSEa.js → slack-setup-wizard-d9M5SFq7.js} +1 -1
- package/dist/assets/{sound-manager-Dy2ohKg4.js → sound-manager-DUo0lHGZ.js} +1 -1
- package/dist/assets/{sounds-page-D4kMljoY.js → sounds-page-CfeiEoJP.js} +1 -1
- package/dist/assets/{src-CnF7WXNj.js → src-C3NeO9Jd.js} +1 -1
- package/dist/assets/{start-screen-BiV4V5J1.js → start-screen-CqbeEmEE.js} +1 -1
- package/dist/assets/subagent-detail-panel-BWOBCd2x.js +4 -0
- package/dist/assets/subagent-store-Cxv8dl3x.js +3 -0
- package/dist/assets/superpowers-page-CB-BP-_4.js +1 -0
- package/dist/assets/{system-events-page-CpUI1rsZ.js → system-events-page-fXtfs3ck.js} +1 -1
- package/dist/assets/{system-events-redirect-page-BQrnMF4i.js → system-events-redirect-page-C44suO-c.js} +1 -1
- package/dist/assets/{tag-Dn1d6hKF.js → tag-D8NAGb0r.js} +1 -1
- package/dist/assets/{credit-card-C1RL73Rt.js → target-cdw7WP5q.js} +1 -1
- package/dist/assets/{theme-stage-page-CW3erTQ4.js → theme-stage-page-KaftkybS.js} +1 -1
- package/dist/assets/{threshold-presets-ByKylDXk.js → threshold-presets-B-gOdjC4.js} +1 -1
- package/dist/assets/{tiptap-document-editor-CbPrzkBM.js → tiptap-document-editor-DbcVPx_F.js} +1 -1
- package/dist/assets/{toast-BcMdOTp1.js → toast-DR7D7Uma.js} +1 -1
- package/dist/assets/tool-detail-panel-DV3p07nd.js +2 -0
- package/dist/assets/transcript-message-body-shared-BtDc2xmr.js +1 -0
- package/dist/assets/{trust-rules-api-CVYU31TU.js → trust-rules-api-iUGCiDDM.js} +1 -1
- package/dist/assets/{upgrade-cancel-page-BSAoMrm5.js → upgrade-cancel-page-RQr89F4R.js} +1 -1
- package/dist/assets/{upgrade-success-page-CooDWnEr.js → upgrade-success-page-Ckoqx9Vr.js} +1 -1
- package/dist/assets/{usage-redirect-page-DtwSt4vM.js → usage-redirect-page-C6qXe-4h.js} +1 -1
- package/dist/assets/{use-active-assistant-id-CUKao_nq.js → use-active-assistant-id-CjvzlL4t.js} +1 -1
- package/dist/assets/{use-app-theme-BhnyqHgJ.js → use-app-theme-BLGjiz96.js} +1 -1
- package/dist/assets/use-assistant-avatar--4s_vvar.js +1 -0
- package/dist/assets/{use-assistant-capability-BdWmg2Vg.js → use-assistant-capability-BRLl80Z_.js} +1 -1
- package/dist/assets/use-assistant-identity-details-Bh8DBBL6.js +1 -0
- package/dist/assets/use-avatar-accent-var-BaftJG7F.js +1 -0
- package/dist/assets/{use-bookmarks-DtteniG3.js → use-bookmarks-DBiCgP5h.js} +1 -1
- package/dist/assets/{use-bundled-avatar-components-B1ARUeam.js → use-bundled-avatar-components-IQw2k8-g.js} +2 -2
- package/dist/assets/{use-bus-subscription-NoXmdzgx.js → use-bus-subscription-CyRPH_gr.js} +1 -1
- package/dist/assets/use-checkout-dismiss-refresh-CRJ6QdGF.js +1 -0
- package/dist/assets/use-command-palette-sections-CakTFfva.js +1 -0
- package/dist/assets/{use-discord-nudge-h0WPtIp6.js → use-discord-nudge-CRU-lEHV.js} +1 -1
- package/dist/assets/{use-edge-swipe-back-Rp4TEihl.js → use-edge-swipe-back-Dbz1hC9g.js} +1 -1
- package/dist/assets/{use-edge-swipe-DDntz5ZJ.js → use-edge-swipe-sMxDzAcb.js} +1 -1
- package/dist/assets/{use-edit-app-BSbRuVnn.js → use-edit-app-GPeXZFBx.js} +1 -1
- package/dist/assets/{use-effective-timezone-Om_EkJxK.js → use-effective-timezone-Bx9QaO25.js} +1 -1
- package/dist/assets/use-invite-link-dialog-DN2IHVZE.js +1 -0
- package/dist/assets/{use-ios-app-nudge-CeOXecJj.js → use-ios-app-nudge-BjmDFQZ9.js} +1 -1
- package/dist/assets/use-is-org-ready-CFcTY1Qr.js +1 -0
- package/dist/assets/{use-onboarding-login-DsCjVy0U.js → use-onboarding-login-DfX-NHsX.js} +1 -1
- package/dist/assets/{use-platform-assistant-id-DSR1LFZF.js → use-platform-assistant-id-DvilMQ88.js} +1 -1
- package/dist/assets/use-platform-gate-WUjCKFpL.js +1 -0
- package/dist/assets/use-reduced-motion-bjjt6x6d.js +1 -0
- package/dist/assets/use-return-to-short-circuit-BcFT9RDa.js +1 -0
- package/dist/assets/use-save-twilio-credentials-CCp1iqBf.js +1 -0
- package/dist/assets/{use-skill-actions-DTznrJR1.js → use-skill-actions-COF5ItNI.js} +1 -1
- package/dist/assets/{use-skill-detail-files-CKgT7qkY.js → use-skill-detail-files-BVBb8uoK.js} +1 -1
- package/dist/assets/use-sticky-profiles-CujEqy9l.js +1 -0
- package/dist/assets/use-subagent-card-data-Cf2Ih6VE.js +1 -0
- package/dist/assets/use-supports-bookmarks-DbG5HZ6P.js +1 -0
- package/dist/assets/use-supports-credentials-settings-CgWfA2eQ.js +1 -0
- package/dist/assets/{use-swipe-engine-ehsGV4fb.js → use-swipe-engine-RAFE-Hrf.js} +1 -1
- package/dist/assets/{utils-CP1NAeej.js → utils-By2duKuc.js} +1 -1
- package/dist/assets/utils-C-YNXdkX.js +1 -0
- package/dist/assets/video-CQJlht8Q.js +1 -0
- package/dist/assets/{viewer-store-BVsBGqdn.js → viewer-store--hIQLNm5.js} +1 -1
- package/dist/assets/voice-list-DQtY9O6_.js +1 -0
- package/dist/assets/voice-page-CLpMa0T7.js +1 -0
- package/dist/assets/voice-providers-note-CqjCnYyT.js +1 -0
- package/dist/assets/{weather-forecast-display-JW8ecLNy.js → weather-forecast-display-Bg_OjY6Q.js} +1 -1
- package/dist/assets/web-BEtLqoWJ.js +1 -0
- package/dist/assets/web-C8NouSk8.js +1 -0
- package/dist/assets/web-Cv3bLSQ5.js +1 -0
- package/dist/assets/web-D82T2zyn.js +1 -0
- package/dist/assets/web-RKFLO25W.js +1 -0
- package/dist/assets/web-XmQWRS1M.js +1 -0
- package/dist/assets/web-ZsA8B5nq.js +1 -0
- package/dist/assets/web-s9eE6ZyC.js +1 -0
- package/dist/assets/{welcome-screen-D_DTupb3.js → welcome-screen-kbK5FGL0.js} +1 -1
- package/dist/assets/{workflow-detail-panel-DAVe3vEm.js → workflow-detail-panel-o8eE21pU.js} +1 -1
- package/dist/assets/{workflow-store-C3g-qg1u.js → workflow-store-CBrRXPJi.js} +1 -1
- package/dist/assets/workspace-page-CkZtbmMR.js +1 -0
- package/dist/assets/{workspace-tree-query-D9VBUg-W.js → workspace-tree-query-CqcOBNKw.js} +1 -1
- package/dist/index.html +270 -229
- package/package.json +1 -1
- package/dist/assets/access-B_b48snn.js +0 -1
- package/dist/assets/activity-steps-panel-D8fAVo9_.js +0 -1
- package/dist/assets/ai-page-Dd-qECGn.js +0 -1
- package/dist/assets/api-BpGogBsg.js +0 -1
- package/dist/assets/api-Coj5enET.js +0 -1
- package/dist/assets/assistant-identity-store-6On4WZ62.js +0 -1
- package/dist/assets/auth-store-EmLZOAkN.js +0 -2
- package/dist/assets/avatar-random-DjmD5llT.js +0 -1
- package/dist/assets/billing-page-CbelI-Ui.js +0 -3
- package/dist/assets/browser-DvKwnK9l.js +0 -2
- package/dist/assets/build-state-C_Hy9WqC.js +0 -1
- package/dist/assets/channels-page-route-CiOtL1JY.js +0 -9
- package/dist/assets/chat-markdown-message-9ogr9-mn.js +0 -2
- package/dist/assets/checkout-continuation-DmIXoV4L.js +0 -1
- package/dist/assets/checkout-page-2Xr9vx27.js +0 -1
- package/dist/assets/checkout-return-target-DQBOhh64.js +0 -1
- package/dist/assets/command-palette-CzbYrcNM.js +0 -1
- package/dist/assets/command-palette-window-page-CHQdRfhu.js +0 -1
- package/dist/assets/consent-c8EJ3D2A.js +0 -1
- package/dist/assets/contacts-page-route-eTUOUhJL.js +0 -1
- package/dist/assets/conversation-list-fetchers-CavIngGf.js +0 -1
- package/dist/assets/conversation-queries-688XB7Bh.js +0 -1
- package/dist/assets/conversation-selection-Cx6Axfzb.js +0 -1
- package/dist/assets/credentials-page-da3G5EjN.js +0 -1
- package/dist/assets/debug-page-BElAND4u.js +0 -4
- package/dist/assets/developer-page-Ck66ks9T.js +0 -1
- package/dist/assets/document-viewer-container-Dxc95Z_9.js +0 -2
- package/dist/assets/esm-0ejhUWK7.js +0 -2
- package/dist/assets/esm-BPFGl7Zp.js +0 -2
- package/dist/assets/esm-C2uShH10.js +0 -2
- package/dist/assets/esm-CAByj-hK.js +0 -2
- package/dist/assets/esm-Cn1fOTtj.js +0 -2
- package/dist/assets/esm-Df-J9imF.js +0 -1
- package/dist/assets/esm-t0mP3xUe.js +0 -2
- package/dist/assets/eye-bbox-u0VzlPuw.js +0 -1
- package/dist/assets/feature-flag-catalog-CWB-r-Pj.js +0 -1
- package/dist/assets/file-editor-plAxQBKk.js +0 -1
- package/dist/assets/first-run-scope-Br96Z0Ol.js +0 -1
- package/dist/assets/general-page-mGY10EuY.js +0 -1
- package/dist/assets/get-memory-stats-CdA2IhkV.js +0 -1
- package/dist/assets/hatching-screen-DwNw31vj.js +0 -1
- package/dist/assets/home-page-route-B2ScoHEE.js +0 -1
- package/dist/assets/hosting-screen-DKijoYxW.js +0 -1
- package/dist/assets/identity-page-route-DD_U3Te5.js +0 -7
- package/dist/assets/impersonate-version-flag-Cad5-ZZv.js +0 -1
- package/dist/assets/index-BEpJ8S2b.js +0 -11
- package/dist/assets/index-UKZ4bO6i.css +0 -2
- package/dist/assets/integrations-page-BnPiOw9v.js +0 -1
- package/dist/assets/invalidate-memory-queries-D8VNhm2x.js +0 -1
- package/dist/assets/invalidate-plugin-queries-v7687-U8.js +0 -1
- package/dist/assets/list-row-BOvxGO5h.js +0 -1
- package/dist/assets/local-mode-BKousn41.js +0 -39
- package/dist/assets/login-page-BR42WUVt.js +0 -1
- package/dist/assets/machine-sizes-CT-fSRKD.js +0 -1
- package/dist/assets/memory-page-route-CW1Fgh6X.js +0 -2
- package/dist/assets/mutation-error-DoEwwcm3.js +0 -1
- package/dist/assets/native-anchor-BeAcmUWk.js +0 -1
- package/dist/assets/native-biometric-DUHF57O_.js +0 -6
- package/dist/assets/native-deep-link-D4jZANvf.js +0 -1
- package/dist/assets/native-file-CfGNNXKe.js +0 -2
- package/dist/assets/navigation-resolver-BIPJSTY5.js +0 -1
- package/dist/assets/open-workspace-file-AUDky4i4.js +0 -2
- package/dist/assets/page-empty-state-DTRXFoHj.js +0 -1
- package/dist/assets/panel-item-CQt19wOM.js +0 -1
- package/dist/assets/plans-page-GiIsWq7v.js +0 -1
- package/dist/assets/platform-detection-D1fBX4KG.js +0 -1
- package/dist/assets/plugins-surface-BGSKlIwH.js +0 -1
- package/dist/assets/privacy-screen-hSx7ZwqA.js +0 -1
- package/dist/assets/provider-key-B07UMm1T.js +0 -1
- package/dist/assets/provider-signup-page-BapnHqaW.js +0 -1
- package/dist/assets/provisioning-targets-epeYMPhZ.js +0 -1
- package/dist/assets/react-query.gen-9VRdubOj.js +0 -1
- package/dist/assets/react-query.gen-BeiAUt-2.js +0 -1
- package/dist/assets/research-onboarding-route-DpgbtSS0.js +0 -50
- package/dist/assets/resolved-assistants-store-FEmi1gGu.js +0 -1
- package/dist/assets/retire-confirm-dialog-CFJqb_EM.js +0 -1
- package/dist/assets/routes-NQmj27cY.js +0 -23
- package/dist/assets/runtime-upgrade-banner-BM2b81eK.js +0 -2
- package/dist/assets/schedules-BMEs36wC.js +0 -1
- package/dist/assets/schedules-page-BkOE2joT.js +0 -1
- package/dist/assets/sdk.gen-DHJ7Pbqq.js +0 -1
- package/dist/assets/select-assistant-screen-S526udI9.js +0 -1
- package/dist/assets/semver-Ok0Hi8v9.js +0 -1
- package/dist/assets/settings-layout-DKr7K-B6.js +0 -1
- package/dist/assets/settings-navigation-ji_jJYq2.js +0 -1
- package/dist/assets/share-feedback-modal-GLBRzcZa.js +0 -1
- package/dist/assets/signup-page-C0y2CTKm.js +0 -1
- package/dist/assets/site-favicon-Dx98M-cB.js +0 -1
- package/dist/assets/subagent-detail-panel-Cvmfu7Ym.js +0 -4
- package/dist/assets/subagent-store-B2Uhma4F.js +0 -3
- package/dist/assets/superpowers-page-CPBz-c5i.js +0 -1
- package/dist/assets/tool-detail-panel-DyfiRoE5.js +0 -2
- package/dist/assets/transcript-message-body-shared-Cb89j7p1.js +0 -1
- package/dist/assets/use-assistant-avatar-BcObK2L0.js +0 -1
- package/dist/assets/use-assistant-identity-details-BdFppz9B.js +0 -1
- package/dist/assets/use-avatar-accent-var-rnSeYvBI.js +0 -1
- package/dist/assets/use-checkout-dismiss-refresh-wRSmB_TU.js +0 -1
- package/dist/assets/use-command-palette-sections-GAugkmjU.js +0 -1
- package/dist/assets/use-invite-link-dialog-yw1dtYd_.js +0 -1
- package/dist/assets/use-is-org-ready-BrKAc9Df.js +0 -1
- package/dist/assets/use-platform-gate-Cv2oOK8C.js +0 -1
- package/dist/assets/use-reduced-motion-D0Rb5Fd_.js +0 -1
- package/dist/assets/use-return-to-short-circuit-DEKlWitV.js +0 -1
- package/dist/assets/use-save-twilio-credentials-CecOWIyh.js +0 -1
- package/dist/assets/use-sticky-profiles-CdiEmubF.js +0 -1
- package/dist/assets/use-subagent-card-data-DJujXR76.js +0 -1
- package/dist/assets/use-supports-bookmarks-D4_-FkJA.js +0 -1
- package/dist/assets/use-supports-credentials-settings-CGDLraXI.js +0 -1
- package/dist/assets/utils-D8KOSvh3.js +0 -1
- package/dist/assets/video-BcgduiJ6.js +0 -1
- package/dist/assets/voice-list-DeqvOR_J.js +0 -1
- package/dist/assets/voice-page-Cas-WIf4.js +0 -1
- package/dist/assets/voice-picker-modal-D0K6miA1.js +0 -1
- package/dist/assets/web-BTtRunTK.js +0 -1
- package/dist/assets/web-Bd-5Eyoa.js +0 -1
- package/dist/assets/web-ByAAA1Mb.js +0 -1
- package/dist/assets/web-DFbI_g4o.js +0 -1
- package/dist/assets/web-DIn7jUpJ.js +0 -1
- package/dist/assets/web-DYQ0KCC4.js +0 -1
- package/dist/assets/web-Db-2E0qX.js +0 -1
- package/dist/assets/web-PfT3uNnR.js +0 -1
- package/dist/assets/workspace-page-Dq0z3-Rs.js +0 -1
- package/dist/assets/zoom-in-C96B1CNL.js +0 -1
- /package/dist/assets/{Combination-BRDRMC4m.js → Combination-C7TWRLS7.js} +0 -0
- /package/dist/assets/{api-errors-DHvv5HEN.js → api-errors-SZKDzMLE.js} +0 -0
- /package/dist/assets/{app-types-BnzWLsk5.js → app-types-o5Qc-xkK.js} +0 -0
- /package/dist/assets/{apple-logo-C3XrRC_i.js → apple-logo-Cg-KnqW2.js} +0 -0
- /package/dist/assets/{avatar-bundled-components-yyfTpx_l.js → avatar-bundled-components-CTd294ra.js} +0 -0
- /package/dist/assets/{avatar-subagent-Bpy9-0YN.js → avatar-subagent-BpXST4nO.js} +0 -0
- /package/dist/assets/{avatar-svg-compositor-DeuQqt-f.js → avatar-svg-compositor-DclcUb1M.js} +0 -0
- /package/dist/assets/{avatar-tone-BBZKSrBa.js → avatar-tone-4L7foPzW.js} +0 -0
- /package/dist/assets/{build.umd-CpQXlBwc.js → build.umd-oXvZOmIf.js} +0 -0
- /package/dist/assets/{chat-B9S7HTkM.js → chat-BIJEFb5u.js} +0 -0
- /package/dist/assets/{client.gen-DPP573hb.js → client.gen-DHOmbzD9.js} +0 -0
- /package/dist/assets/{create-selectors-B41BzcFF.js → create-selectors-B-P03-8K.js} +0 -0
- /package/dist/assets/{definitions-B2pe1hr8.js → definitions-BD-g60mP.js} +0 -0
- /package/dist/assets/{definitions-B6TMLvuT.js → definitions-CL6e7nYF.js} +0 -0
- /package/dist/assets/{dist-BbzsnMsY.js → dist-BKxs5XmY.js} +0 -0
- /package/dist/assets/{dist-CCFYMOVM.js → dist-CFSiz2ry2.js} +0 -0
- /package/dist/assets/{dist-BxvMAFS8.js → dist-CKLJHt4Z.js} +0 -0
- /package/dist/assets/{domains-BLQZqRIT.js → domains-OaR_FpOR.js} +0 -0
- /package/dist/assets/{dropdown-BtWhNXSV.js → dropdown-Dt0Iof85.js} +0 -0
- /package/dist/assets/{edit-chat-session-DDnAzqkB.js → edit-chat-session-Beky6Vpg.js} +0 -0
- /package/dist/assets/{ellipsis-DnoqTkj4.js → ellipsis-BRJI5_P1.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-DvjqmdH4.js → emoji-catalog-data-5pJaL_3N.js} +0 -0
- /package/dist/assets/{event-bus-DYZhc6yM.js → event-bus-CvZyJQ26.js} +0 -0
- /package/dist/assets/{external-link-CS0aVYGt.js → external-link-CAce-RVu.js} +0 -0
- /package/dist/assets/{external-urls-DIbR-npW.js → external-urls-97O9n0lb.js} +0 -0
- /package/dist/assets/{eye-BMVGQXHT.js → eye-DTyDWiqu.js} +0 -0
- /package/dist/assets/{eye-off-Jdx8qkOK.js → eye-off-fuOP4Lij.js} +0 -0
- /package/dist/assets/{file-code-BDHws4Dk.js → file-code-DD3K2kve.js} +0 -0
- /package/dist/assets/{file-plus-C3SBA8ll.js → file-plus-Dq2xo7Ic.js} +0 -0
- /package/dist/assets/{file-text-Br730Q4B.js → file-text-BCsUYVEF.js} +0 -0
- /package/dist/assets/{folder-DF8nFp7N.js → folder-g06qTW2O.js} +0 -0
- /package/dist/assets/{folder-open-Nlg0OphT.js → folder-open-CAb0DLYq.js} +0 -0
- /package/dist/assets/{format-date-BEAiOK8n.js → format-date-CKGQir4m.js} +0 -0
- /package/dist/assets/{format-file-size-BtDHBEb-.js → format-file-size-Eu-Z0CxL.js} +0 -0
- /package/dist/assets/{globe-CMtjL_s_.js → globe-BDvXuPkw.js} +0 -0
- /package/dist/assets/{hard-drive-DWFPKcXI.js → hard-drive-CncrDZ7V.js} +0 -0
- /package/dist/assets/{heart-789ajxtB.js → heart-2AHOP0tB.js} +0 -0
- /package/dist/assets/{inbox-B6TknLsk.js → inbox-DXYIwUrn.js} +0 -0
- /package/dist/assets/{info-vgPTIsGI.js → info-CYiVdnQV.js} +0 -0
- /package/dist/assets/{input-F_x2LXmm.js → input-C-GkeWCw.js} +0 -0
- /package/dist/assets/{is-electron-D-TCQRcE.js → is-electron-7N7iyz1y.js} +0 -0
- /package/dist/assets/{key-round-0Zop_GsZ.js → key-round-CSc3w5ka.js} +0 -0
- /package/dist/assets/{laptop-DSZhU52i.js → laptop-ByoaxLxg.js} +0 -0
- /package/dist/assets/{layout-grid-DA_CfD6d.js → layout-grid-PPpVK0nJ.js} +0 -0
- /package/dist/assets/{link-2-BKL8QWRX.js → link-2-BMNZFfWH.js} +0 -0
- /package/dist/assets/{link-BfUb7cwC.js → link-CowyzCIZ.js} +0 -0
- /package/dist/assets/{link-click-BIvzZsRn.js → link-click-BEiniqcG.js} +0 -0
- /package/dist/assets/{list-DNbTcxAh.js → list-CDyb1CGV.js} +0 -0
- /package/dist/assets/{loader-circle-XREx3i4W.js → loader-circle-BzJ2kz3F.js} +0 -0
- /package/dist/assets/{log-in-CqVJRYe-.js → log-in-Bhye1kwc.js} +0 -0
- /package/dist/assets/{log-out-B4hsBWnk.js → log-out-BLE632qu.js} +0 -0
- /package/dist/assets/{mail-CMdPNysl.js → mail-DABv3_Ue.js} +0 -0
- /package/dist/assets/{message-circle-BsH7vHtN.js → message-circle-gk_DFUIg.js} +0 -0
- /package/dist/assets/{message-square-text-D0Q7W58R.js → message-square-text-asdoy3SW.js} +0 -0
- /package/dist/assets/{message-square-CQGiY4zk.js → message-square-zCNXaHYX.js} +0 -0
- /package/dist/assets/{mic-xmDFUbCL.js → mic-DZrWtAAu.js} +0 -0
- /package/dist/assets/{minimize-2-CaXsUqSp.js → minimize-2-BR0ed4mI.js} +0 -0
- /package/dist/assets/{misc-CXDB4i-X.js → misc-CAQM4FGM.js} +0 -0
- /package/dist/assets/{monitor-B1y28fS1.js → monitor-B5vtTCxm.js} +0 -0
- /package/dist/assets/{moon-BJzODLTY.js → moon-DSdti3GO.js} +0 -0
- /package/dist/assets/{oauth-popup-BsYPnBq7.js → oauth-popup-Ql5xgtlO.js} +0 -0
- /package/dist/assets/{onboarding-step-layout-Do2o16kf.js → onboarding-step-layout-DGtbhZJb.js} +0 -0
- /package/dist/assets/{optimistic-lifecycle-Dxhc3mFf.js → optimistic-lifecycle-50vNA6dY.js} +0 -0
- /package/dist/assets/{paperclip-c8Xlrnx4.js → paperclip-DVE0scjU.js} +0 -0
- /package/dist/assets/{pdf-CRRXY5Nb.js → pdf-8fO1Wz7e.js} +0 -0
- /package/dist/assets/{pencil-D38YNe2r.js → pencil-CLJIvYKH.js} +0 -0
- /package/dist/assets/{play-B0-JEtcm.js → play-CCT817Ah.js} +0 -0
- /package/dist/assets/{plugin-attribution-ug-jMTXi.js → plugin-attribution-Hjqz10My.js} +0 -0
- /package/dist/assets/{plus-jH3kAliM.js → plus-JG7kWjHA.js} +0 -0
- /package/dist/assets/{pointer-DAyn_9jY.js → pointer-QlIwQKYH.js} +0 -0
- /package/dist/assets/{profile-metadata-EGAGq_rk.js → profile-metadata-BksFtHNq.js} +0 -0
- /package/dist/assets/{progress-bar-B64ghmWk.js → progress-bar-CJxkStgF.js} +0 -0
- /package/dist/assets/{public-asset-BoN50HP_.js → public-asset-CD3ouSWU.js} +0 -0
- /package/dist/assets/{puzzle-BVC3TGko.js → puzzle-CtM3jM-f.js} +0 -0
- /package/dist/assets/{refresh-cw-DzPnoeCh.js → refresh-cw-Ci7hSykC.js} +0 -0
- /package/dist/assets/{repeat-GCVYEp1h.js → repeat-CIQpv9Nd.js} +0 -0
- /package/dist/assets/{rotate-ccw-BjzeX7qz.js → rotate-ccw-Da_2DvhY.js} +0 -0
- /package/dist/assets/{sdk.gen-CtusrdLv.js → sdk.gen-DEFA-6EJ.js} +0 -0
- /package/dist/assets/{search-BVW-n8to.js → search-DA3TmTuR.js} +0 -0
- /package/dist/assets/{send-Q71Exj3z.js → send-DHWUIK7G.js} +0 -0
- /package/dist/assets/{settings-PGZ9c_uo.js → settings-DyEBEqeQ.js} +0 -0
- /package/dist/assets/{shield-B69p45Kq.js → shield-9aFTFyT9.js} +0 -0
- /package/dist/assets/{shield-check-C7I-REGg.js → shield-check-z7CU-gBq.js} +0 -0
- /package/dist/assets/{smartphone-zTfpbpuH.js → smartphone-BbK6bGuE.js} +0 -0
- /package/dist/assets/{sparkles-nPSxUfsO.js → sparkles-DC8kqYjt.js} +0 -0
- /package/dist/assets/{square-CRVB76KQ.js → square-Bn3X6ZlO.js} +0 -0
- /package/dist/assets/{status-badge-pill-CGODAHVT.js → status-badge-pill-ZNNoKV1T.js} +0 -0
- /package/dist/assets/{sun-DXlsFvWD.js → sun-BKEPYS7Q.js} +0 -0
- /package/dist/assets/{terminal-BvDcWAOW.js → terminal-Cs_TREv-.js} +0 -0
- /package/dist/assets/{three-dot-indicator-B_GPAioB.js → three-dot-indicator-CfjkCgEH.js} +0 -0
- /package/dist/assets/{toggle-B4nIp0sf.js → toggle-D776PTw-.js} +0 -0
- /package/dist/assets/{trash-2-BF5y4UkY.js → trash-2-De6X8YiM.js} +0 -0
- /package/dist/assets/{triangle-alert-Dq3v0coH.js → triangle-alert--e3n47gm.js} +0 -0
- /package/dist/assets/{typed-storage-CcMT-hWr.js → typed-storage-C-R1po3l.js} +0 -0
- /package/dist/assets/{use-copy-to-clipboard-VK_922zc.js → use-copy-to-clipboard-BarKTY4m.js} +0 -0
- /package/dist/assets/{user-KBQkOaB5.js → user-Dq9DUxnU.js} +0 -0
- /package/dist/assets/{user-plus-CsHAo9W6.js → user-plus-CXMJ1x_5.js} +0 -0
- /package/dist/assets/{users-C0mu7-R4.js → users-DWDkv8ju.js} +0 -0
- /package/dist/assets/{volume-2-DnyXryvu.js → volume-2-Bj3y3ZBJ.js} +0 -0
- /package/dist/assets/{workflow-CN4xwQpa.js → workflow-DbPANJpf.js} +0 -0
- /package/dist/assets/{workspace-theme-tokens-D8TTf-DX.js → workspace-theme-tokens-bLqHFK0a.js} +0 -0
- /package/dist/assets/{wrench-DDDwrNwL.js → wrench-tjOqvzJ2.js} +0 -0
- /package/dist/assets/{x-BGag7vwj.js → x-DuBvjmAE.js} +0 -0
- /package/dist/assets/{xterm-coCKWVob.js → xterm-Ip5qSQfD.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-B1qPIPGd.js → xterm-addon-fit-BbxIpbO2.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{o as t,r as n,s as r,t as i}from"./local-settings-C-dW2vkq.js";import{s as a}from"./device-settings-DXp9L4iB.js";import{t as o}from"./react-BFJW0bSv.js";import{t as s}from"./button-Dy5001j6.js";import{t as c}from"./jsx-runtime-D3ZM-ToX.js";import{t as l}from"./createLucideIcon-CAM1RhH8.js";import{t as u}from"./checkbox-D7Eg2K35.js";import{t as d}from"./triangle-alert-Dq3v0coH.js";import{t as f}from"./notice-B6naz_-V.js";import"./src-CnF7WXNj.js";import{t as p}from"./modal-CoOkN7c0.js";import{i as m,t as h}from"./api-Coj5enET.js";import{i as g,r as _}from"./typed-storage-CcMT-hWr.js";import{t as v}from"./client-feature-flag-store-BdNCabm_.js";import{n as y,r as b,t as x}from"./theme-preferences-LQuLaIA6.js";import{t as S}from"./use-bus-subscription-NoXmdzgx.js";import{o as C}from"./funnel-events-BqvFi8Sp.js";var w=l(`package`,[[`path`,{d:`M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z`,key:`1a0edw`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}],[`polyline`,{points:`3.29 7 12 12 20.71 7`,key:`ousv84`}],[`path`,{d:`m7.5 4.27 9 5.15`,key:`1c824w`}]]),T=l(`rocket`,[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]);function ee(){return v.use.stringFlags().proactiveTips??`off`}function te(e){return e===`on`}function E(e){return e===void 0||typeof e==`number`&&Number.isFinite(e)}function D(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return typeof t.shownCount==`number`&&Number.isFinite(t.shownCount)&&E(t.dismissedAt)&&E(t.lastShownAt)}function O(e){let t=JSON.parse(e);if(!t||typeof t!=`object`||Array.isArray(t))return null;let n={};for(let[e,r]of Object.entries(t))D(r)&&(n[e]=r);return n}function k(e){let t=Number(e);return Number.isFinite(t)&&t>=0?t:null}var A=_({key:`device:tips:records`,scope:`device`,parse:O,serialize:JSON.stringify,fallback:{}}),j=_({key:`device:tips:enabled`,scope:`device`,parse:g,serialize:String,fallback:!0}),M=_({key:`device:tips:first_seen_at`,scope:`device`,parse:k,serialize:String,fallback:0});function ne(){M.load()===0&&M.save(Date.now())}function re(e,t){let n=A.load(),r=n[e];A.save({...n,[e]:{...r,lastShownAt:t,shownCount:(r?.shownCount??0)+1}})}function ie(e,t){let n=A.load(),r=n[e];A.save({...n,[e]:{...r,dismissedAt:t,shownCount:r?.shownCount??0}})}var ae=`proactive-tips-v1`,oe={impression:0,learn_more:1,dismiss:2,dont_show_again:3,click:4,completion:5};function se(e,t,n){C({stepName:t,stepIndex:oe[t]},{funnelVersion:ae,screen:e,variant:n})}var N=e(o(),1);function P(){let e=v.use.velvet(),[t,n]=(0,N.useState)(()=>y({velvetEnabled:e}));return(0,N.useEffect)(()=>{n(y({velvetEnabled:e}))},[e]),(0,N.useEffect)(()=>a(`theme`,()=>{n(y({velvetEnabled:e}))}),[e]),(0,N.useEffect)(()=>{x(t)},[t]),{theme:t,setThemePreference:e=>{n(e),b(e)}}}var F=6e4;function I(e){return!!(e?.enabled&&e.effectivelyLocked)}function L(e){return I(e)?e.acknowledged&&!e.overrideActive:!1}function R(e){return!!(e&&I(e)&&!e.acknowledged&&!e.overrideActive)}function z(e){return!!(e?.enabled&&e.state===`warning`)}function B(e){return R(e)?`acknowledgement-required`:L(e)?`cleanup`:z(e)?`warning`:`inactive`}function V({monitorEnabled:e,hasResolvedStatus:t,status:n}){return!e||!t?null:R(n)?`acknowledgement-required`:null}function H(e){return`Storage cleanup mode must be acknowledged before sending messages.`}function U(e,t){return e===t?!0:!e||!t?!1:e.enabled===t.enabled&&e.state===t.state&&e.locked===t.locked&&e.acknowledged===t.acknowledged&&e.overrideActive===t.overrideActive&&e.effectivelyLocked===t.effectivelyLocked&&e.lockId===t.lockId&&e.usagePercent===t.usagePercent&&e.thresholdPercent===t.thresholdPercent&&e.path===t.path&&e.lastCheckedAt===t.lastCheckedAt&&e.error===t.error&&e.blockedCapabilities.length===t.blockedCapabilities.length&&e.blockedCapabilities.every((e,n)=>e===t.blockedCapabilities[n])}function W(e){return e?.usagePercent==null||!Number.isFinite(e.usagePercent)?`Unknown`:`${Math.round(e.usagePercent)}%`}var G={assistantId:null,status:null,hasResolvedStatus:!1};function ce(e,t){return e instanceof Error?e:Error(t)}function le({assistantId:e,enabled:t,refreshKey:n,cadenceMs:r=F}){let[i,a]=(0,N.useState)(G),[o,s]=(0,N.useState)(!1),[c,l]=(0,N.useState)(null),u=(0,N.useRef)(e),d=(0,N.useRef)(t),f=(0,N.useRef)(0),p=(0,N.useRef)(0);(0,N.useLayoutEffect)(()=>{u.current=e,d.current=t}),(0,N.useEffect)(()=>{f.current+=1,a(G),l(null),s(!1)},[e,t]);let g=(0,N.useCallback)((e,t)=>d.current&&u.current===e&&f.current===t,[]),_=(0,N.useCallback)((e,t,n,r)=>{g(e,r)&&a(r=>r.assistantId===e&&r.hasResolvedStatus===n&&U(r.status,t)?r:{assistantId:e,status:t,hasResolvedStatus:n})},[g]),v=(0,N.useCallback)(()=>{f.current+=1,a(G)},[]),y=(0,N.useCallback)(async()=>{let n=e;if(!t||!n){v();return}let r=f.current,i=p.current+1;p.current=i;try{let e=await m(n);if(p.current!==i)return;if(!e.ok){_(n,null,!1,r);return}_(n,e.data.status,!0,r)}catch{if(p.current!==i)return;_(n,null,!1,r)}},[e,_,v,t]);(0,N.useEffect)(()=>{if(!t||!e)return;y();let n=window.setInterval(()=>{y()},r);return()=>{window.clearInterval(n)}},[e,r,t,y,n]),S(`app.resume`,()=>{y()});let b=(0,N.useCallback)(n=>{if(!t||!e){v();return}let r=f.current+1;f.current=r,s(!1),l(null),_(e,n,!0,r)},[e,_,v,t]);S(`sse.event`,e=>{let t=e.message;t.type===`disk_pressure_status_changed`&&b(t.status)});let x=(0,N.useCallback)(async()=>{let n=e;if(!t||!n){v();return}let r=f.current+1;f.current=r,s(!0),l(null);try{let e=await h(n);if(!e.ok)throw Error(`Failed to acknowledge assistant disk pressure.`);if(!g(n,r))return;let t=f.current+1;f.current=t,_(n,e.data.status,!0,t),s(!1)}catch(e){g(n,r)&&l(ce(e,`Failed to acknowledge assistant disk pressure.`))}finally{g(n,r)&&s(!1)}},[e,_,v,t,g]),C=t&&i.assistantId===e?i.status:null,w=!!(t&&e&&i.assistantId===e&&i.hasResolvedStatus);return{status:C,mode:(0,N.useMemo)(()=>B(C),[C]),hasResolvedStatus:w,isAcknowledging:o,acknowledgeError:c,acknowledge:x,applyStatusEvent:b,refresh:y}}var K=c();function ue(e){let{status:t,mode:n,isAcknowledging:r=!1,acknowledgeError:i,onAcknowledge:a,onDismissWarning:o,onReviewWorkspaceData:c,onUpgradeStorage:l}=e,[m,h]=(0,N.useState)(!1),[g,_]=(0,N.useState)(!1),v=W(t);if(n===`warning`){let e=t.usagePercent??0;return(0,K.jsx)(f,{tone:`warning`,title:`Your storage is almost full`,icon:(0,K.jsx)(w,{className:`h-4 w-4`,"aria-hidden":`true`}),onDismiss:o?()=>o(g):void 0,className:`p-4`,"data-testid":`disk-pressure-banner`,children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`div`,{className:`h-1.5 flex-1 overflow-hidden rounded-full bg-[var(--surface-active)]`,children:(0,K.jsx)(`div`,{className:`h-full rounded-full transition-[width] duration-300`,style:{width:`${e}%`,backgroundColor:`var(--system-mid-strong)`}})}),(0,K.jsx)(`span`,{className:`text-body-medium-default shrink-0 tabular-nums text-[color:var(--system-mid-strong)]`,children:v})]}),(0,K.jsx)(`p`,{className:`m-0`,children:`Free up space or add more storage to avoid interruptions.`}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[c&&(0,K.jsx)(s,{variant:`outlined`,size:`compact`,onClick:c,children:`Manage Storage`}),l&&(0,K.jsx)(s,{variant:`outlined`,size:`compact`,onClick:l,children:`Upgrade`}),o?(0,K.jsx)(u,{className:`ml-auto`,checked:g,onCheckedChange:e=>_(e===!0),label:`Don't show again`,"data-testid":`disk-pressure-banner-dont-show-again`}):null]})]})})}if(n===`cleanup`){let e=t.usagePercent??0;return(0,K.jsx)(f,{tone:`warning`,title:`Cleanup mode is active`,icon:(0,K.jsx)(w,{className:`h-4 w-4`,"aria-hidden":`true`}),className:`p-4`,"data-testid":`disk-pressure-banner`,children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`div`,{className:`h-1.5 flex-1 overflow-hidden rounded-full bg-[var(--surface-active)]`,children:(0,K.jsx)(`div`,{className:`h-full rounded-full transition-[width] duration-300`,style:{width:`${e}%`,backgroundColor:`var(--system-mid-strong)`}})}),(0,K.jsx)(`span`,{className:`text-body-medium-default shrink-0 tabular-nums text-[color:var(--system-mid-strong)]`,children:v})]}),(0,K.jsx)(`p`,{className:`m-0`,children:`Prompt your assistant to free up space before it runs out and enters a locked state.`}),(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[c&&(0,K.jsx)(s,{variant:`outlined`,size:`compact`,onClick:c,children:`Manage Storage`}),l&&(0,K.jsx)(s,{variant:`outlined`,size:`compact`,onClick:l,children:`Upgrade`})]})]})})}let y=t.usagePercent??0;return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(f,{tone:`error`,title:`Storage is critically low`,icon:(0,K.jsx)(w,{className:`h-4 w-4`,"aria-hidden":`true`}),className:`p-4`,"data-testid":`disk-pressure-banner`,children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`div`,{className:`h-1.5 flex-1 overflow-hidden rounded-full bg-[var(--surface-active)]`,children:(0,K.jsx)(`div`,{className:`h-full rounded-full transition-[width] duration-300`,style:{width:`${y}%`,backgroundColor:`var(--system-negative-strong)`}})}),(0,K.jsx)(`span`,{className:`text-body-medium-default shrink-0 tabular-nums text-[color:var(--system-negative-strong)]`,children:v})]}),(0,K.jsx)(`p`,{className:`m-0`,children:`Your assistant will enter a locked state if it runs out of storage.`}),i?(0,K.jsx)(`span`,{className:`text-[var(--system-negative-strong)]`,role:`alert`,children:i}):null,(0,K.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:(0,K.jsx)(s,{variant:`primary`,size:`compact`,onClick:()=>h(!0),children:`Review`})})]})}),(0,K.jsx)(p.Root,{open:m,onOpenChange:e=>{e||h(!1)},children:(0,K.jsxs)(p.Content,{size:`sm`,children:[(0,K.jsx)(p.Header,{children:(0,K.jsx)(p.Title,{icon:d,children:`Storage is critically low`})}),(0,K.jsx)(p.Body,{children:(0,K.jsx)(p.Description,{children:`Your assistant will enter a locked state if it runs out of storage. You should either prompt your assistant to free up space or increase your storage.`})}),(0,K.jsxs)(p.Footer,{children:[l&&(0,K.jsx)(s,{variant:`outlined`,onClick:()=>{h(!1),l()},children:`Upgrade`}),(0,K.jsx)(s,{variant:`primary`,disabled:r,onClick:()=>{a(),h(!1)},children:r?`Acknowledging...`:`Acknowledge`})]})]})})]})}var de=_({key:`device:cmd_enter_to_send`,scope:`device`,parse:g,serialize:String,fallback:!1}),q=`app.iosNudge.downloaded`,J=`app.iosNudge.bannerDismissed`,Y=`app.iosNudge.assistantTurnsSeen`,fe=`https://apps.apple.com/us/app/vellum-assistant/id6759934423`;function X(){return i(q,!1)}function Z(){t(q,!0)}function pe(){return i(J,!1)}function me(){t(J,!0)}function Q(){return Math.max(0,n(Y,0))}function he(e=1){e<=0||r(Y,Q()+e)}function ge(){let[e,t]=(0,N.useState)(!1),[n,r]=(0,N.useState)(!1);(0,N.useEffect)(()=>{t(X()),r(pe())},[]);let i=(0,N.useCallback)(()=>{$(),Z(),t(!0)},[]),a=(0,N.useCallback)(()=>{me(),r(!0)},[]);return{bannerShouldShow:!e&&!n,handleDownload:i,handleBannerDismiss:a}}function $(){window.open(fe,`_blank`,`noopener,noreferrer`)}export{w as S,j as _,Z as a,ee as b,le as c,P as d,se as f,A as g,re as h,ge as i,H as l,ie as m,$ as n,de as o,ne as p,Q as r,ue as s,he as t,V as u,M as v,T as x,te as y};
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{o as t,r as n,s as r,t as i}from"./local-settings-C-dW2vkq.js";import{s as a}from"./device-settings-DXp9L4iB.js";import{t as o}from"./react-BFJW0bSv.js";import{t as s}from"./button-Dy5001j6.js";import{t as c}from"./jsx-runtime-D3ZM-ToX.js";import{t as l}from"./createLucideIcon-CAM1RhH8.js";import{t as u}from"./checkbox-BZTUJtxM.js";import{t as d}from"./triangle-alert--e3n47gm.js";import{t as f}from"./notice-DCp7WO3L.js";import"./src-C3NeO9Jd.js";import{t as p}from"./modal-DwsThLGg.js";import{i as m,t as h}from"./api-Cg8AYMGi.js";import{i as g,r as _}from"./typed-storage-C-R1po3l.js";import{t as v}from"./client-feature-flag-store-Bg5XEI2b.js";import{n as y,r as b,t as x}from"./theme-preferences-LQuLaIA6.js";import{t as S}from"./use-bus-subscription-CyRPH_gr.js";import{o as C}from"./funnel-events-BAmjKdwH.js";var w=l(`package`,[[`path`,{d:`M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z`,key:`1a0edw`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}],[`polyline`,{points:`3.29 7 12 12 20.71 7`,key:`ousv84`}],[`path`,{d:`m7.5 4.27 9 5.15`,key:`1c824w`}]]),T=l(`rocket`,[[`path`,{d:`M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5`,key:`qeys4`}],[`path`,{d:`M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09`,key:`u4xsad`}],[`path`,{d:`M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z`,key:`676m9`}],[`path`,{d:`M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05`,key:`92ym6u`}]]);function ee(){return v.use.stringFlags().proactiveTips??`off`}function te(e){return e===`on`}function E(e){return e===void 0||typeof e==`number`&&Number.isFinite(e)}function D(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;return typeof t.shownCount==`number`&&Number.isFinite(t.shownCount)&&E(t.dismissedAt)&&E(t.lastShownAt)}function O(e){let t=JSON.parse(e);if(!t||typeof t!=`object`||Array.isArray(t))return null;let n={};for(let[e,r]of Object.entries(t))D(r)&&(n[e]=r);return n}function k(e){let t=Number(e);return Number.isFinite(t)&&t>=0?t:null}var A=_({key:`device:tips:records`,scope:`device`,parse:O,serialize:JSON.stringify,fallback:{}}),ne=_({key:`device:tips:enabled`,scope:`device`,parse:g,serialize:String,fallback:!0}),j=_({key:`device:tips:first_seen_at`,scope:`device`,parse:k,serialize:String,fallback:0});function re(){j.load()===0&&j.save(Date.now())}function ie(e,t){let n=A.load(),r=n[e];A.save({...n,[e]:{...r,lastShownAt:t,shownCount:(r?.shownCount??0)+1}})}function ae(e,t){let n=A.load(),r=n[e];A.save({...n,[e]:{...r,dismissedAt:t,shownCount:r?.shownCount??0}})}var oe=`proactive-tips-v1`,se={impression:0,learn_more:1,dismiss:2,dont_show_again:3,click:4,completion:5};function M(e,t,n){C({stepName:t,stepIndex:se[t]},{funnelVersion:oe,screen:e,variant:n})}var N=e(o(),1);function P(){let e=v.use.velvet(),[t,n]=(0,N.useState)(()=>y({velvetEnabled:e}));return(0,N.useEffect)(()=>{n(y({velvetEnabled:e}))},[e]),(0,N.useEffect)(()=>a(`theme`,()=>{n(y({velvetEnabled:e}))}),[e]),(0,N.useEffect)(()=>{x(t)},[t]),{theme:t,setThemePreference:e=>{n(e),b(e)}}}var F=6e4;function I(e){return!!(e?.enabled&&e.effectivelyLocked)}function L(e){return I(e)?e.acknowledged&&!e.overrideActive:!1}function R(e){return!!(e&&I(e)&&!e.acknowledged&&!e.overrideActive)}function z(e){return!!(e?.enabled&&e.state===`warning`)}function B(e){return R(e)?`acknowledgement-required`:L(e)?`cleanup`:z(e)?`warning`:`inactive`}function V({monitorEnabled:e,hasResolvedStatus:t,status:n}){return!e||!t?null:R(n)?`acknowledgement-required`:null}function H(e){return`Storage cleanup mode must be acknowledged before sending messages.`}function U(e,t){return e===t?!0:!e||!t?!1:e.enabled===t.enabled&&e.state===t.state&&e.locked===t.locked&&e.acknowledged===t.acknowledged&&e.overrideActive===t.overrideActive&&e.effectivelyLocked===t.effectivelyLocked&&e.lockId===t.lockId&&e.usagePercent===t.usagePercent&&e.thresholdPercent===t.thresholdPercent&&e.path===t.path&&e.lastCheckedAt===t.lastCheckedAt&&e.error===t.error&&e.blockedCapabilities.length===t.blockedCapabilities.length&&e.blockedCapabilities.every((e,n)=>e===t.blockedCapabilities[n])}function W(e){return e?.usagePercent==null||!Number.isFinite(e.usagePercent)?`Unknown`:`${Math.round(e.usagePercent)}%`}var G={assistantId:null,status:null,hasResolvedStatus:!1};function ce(e,t){return e instanceof Error?e:Error(t)}function le({assistantId:e,enabled:t,refreshKey:n,cadenceMs:r=F}){let[i,a]=(0,N.useState)(G),[o,s]=(0,N.useState)(!1),[c,l]=(0,N.useState)(null),u=(0,N.useRef)(e),d=(0,N.useRef)(t),f=(0,N.useRef)(0),p=(0,N.useRef)(0);(0,N.useLayoutEffect)(()=>{u.current=e,d.current=t}),(0,N.useEffect)(()=>{f.current+=1,a(G),l(null),s(!1)},[e,t]);let g=(0,N.useCallback)((e,t)=>d.current&&u.current===e&&f.current===t,[]),_=(0,N.useCallback)((e,t,n,r)=>{g(e,r)&&a(r=>r.assistantId===e&&r.hasResolvedStatus===n&&U(r.status,t)?r:{assistantId:e,status:t,hasResolvedStatus:n})},[g]),v=(0,N.useCallback)(()=>{f.current+=1,a(G)},[]),y=(0,N.useCallback)(async()=>{let n=e;if(!t||!n){v();return}let r=f.current,i=p.current+1;p.current=i;try{let e=await m(n);if(p.current!==i)return;if(!e.ok){_(n,null,!1,r);return}_(n,e.data.status,!0,r)}catch{if(p.current!==i)return;_(n,null,!1,r)}},[e,_,v,t]);(0,N.useEffect)(()=>{if(!t||!e)return;y();let n=window.setInterval(()=>{y()},r);return()=>{window.clearInterval(n)}},[e,r,t,y,n]),S(`app.resume`,()=>{y()});let b=(0,N.useCallback)(n=>{if(!t||!e){v();return}let r=f.current+1;f.current=r,s(!1),l(null),_(e,n,!0,r)},[e,_,v,t]);S(`sse.event`,e=>{let t=e.message;t.type===`disk_pressure_status_changed`&&b(t.status)});let x=(0,N.useCallback)(async()=>{let n=e;if(!t||!n){v();return}let r=f.current+1;f.current=r,s(!0),l(null);try{let e=await h(n);if(!e.ok)throw Error(`Failed to acknowledge assistant disk pressure.`);if(!g(n,r))return;let t=f.current+1;f.current=t,_(n,e.data.status,!0,t),s(!1)}catch(e){g(n,r)&&l(ce(e,`Failed to acknowledge assistant disk pressure.`))}finally{g(n,r)&&s(!1)}},[e,_,v,t,g]),C=t&&i.assistantId===e?i.status:null,w=!!(t&&e&&i.assistantId===e&&i.hasResolvedStatus);return{status:C,mode:(0,N.useMemo)(()=>B(C),[C]),hasResolvedStatus:w,isAcknowledging:o,acknowledgeError:c,acknowledge:x,applyStatusEvent:b,refresh:y}}var K=c();function ue(e){let{status:t,mode:n,isAcknowledging:r=!1,acknowledgeError:i,onAcknowledge:a,onDismissWarning:o,onReviewWorkspaceData:c,onUpgradeStorage:l}=e,[m,h]=(0,N.useState)(!1),[g,_]=(0,N.useState)(!1),v=W(t);if(n===`warning`){let e=t.usagePercent??0;return(0,K.jsx)(f,{tone:`warning`,title:`Your storage is almost full`,icon:(0,K.jsx)(w,{className:`h-4 w-4`,"aria-hidden":`true`}),onDismiss:o?()=>o(g):void 0,className:`p-4`,"data-testid":`disk-pressure-banner`,children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`div`,{className:`h-1.5 flex-1 overflow-hidden rounded-full bg-[var(--surface-active)]`,children:(0,K.jsx)(`div`,{className:`h-full rounded-full transition-[width] duration-300`,style:{width:`${e}%`,backgroundColor:`var(--system-mid-strong)`}})}),(0,K.jsx)(`span`,{className:`text-body-medium-default shrink-0 tabular-nums text-[color:var(--system-mid-strong)]`,children:v})]}),(0,K.jsx)(`p`,{className:`m-0`,children:`Free up space or add more storage to avoid interruptions.`}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[c&&(0,K.jsx)(s,{variant:`outlined`,size:`compact`,onClick:c,children:`Manage Storage`}),l&&(0,K.jsx)(s,{variant:`outlined`,size:`compact`,onClick:l,children:`Upgrade`}),o?(0,K.jsx)(u,{className:`ml-auto`,checked:g,onCheckedChange:e=>_(e===!0),label:`Don't show again`,"data-testid":`disk-pressure-banner-dont-show-again`}):null]})]})})}if(n===`cleanup`){let e=t.usagePercent??0;return(0,K.jsx)(f,{tone:`warning`,title:`Cleanup mode is active`,icon:(0,K.jsx)(w,{className:`h-4 w-4`,"aria-hidden":`true`}),className:`p-4`,"data-testid":`disk-pressure-banner`,children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`div`,{className:`h-1.5 flex-1 overflow-hidden rounded-full bg-[var(--surface-active)]`,children:(0,K.jsx)(`div`,{className:`h-full rounded-full transition-[width] duration-300`,style:{width:`${e}%`,backgroundColor:`var(--system-mid-strong)`}})}),(0,K.jsx)(`span`,{className:`text-body-medium-default shrink-0 tabular-nums text-[color:var(--system-mid-strong)]`,children:v})]}),(0,K.jsx)(`p`,{className:`m-0`,children:`Prompt your assistant to free up space before it runs out and enters a locked state.`}),(0,K.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[c&&(0,K.jsx)(s,{variant:`outlined`,size:`compact`,onClick:c,children:`Manage Storage`}),l&&(0,K.jsx)(s,{variant:`outlined`,size:`compact`,onClick:l,children:`Upgrade`})]})]})})}let y=t.usagePercent??0;return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(f,{tone:`error`,title:`Storage is critically low`,icon:(0,K.jsx)(w,{className:`h-4 w-4`,"aria-hidden":`true`}),className:`p-4`,"data-testid":`disk-pressure-banner`,children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(`div`,{className:`h-1.5 flex-1 overflow-hidden rounded-full bg-[var(--surface-active)]`,children:(0,K.jsx)(`div`,{className:`h-full rounded-full transition-[width] duration-300`,style:{width:`${y}%`,backgroundColor:`var(--system-negative-strong)`}})}),(0,K.jsx)(`span`,{className:`text-body-medium-default shrink-0 tabular-nums text-[color:var(--system-negative-strong)]`,children:v})]}),(0,K.jsx)(`p`,{className:`m-0`,children:`Your assistant will enter a locked state if it runs out of storage.`}),i?(0,K.jsx)(`span`,{className:`text-[var(--system-negative-strong)]`,role:`alert`,children:i}):null,(0,K.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:(0,K.jsx)(s,{variant:`primary`,size:`compact`,onClick:()=>h(!0),children:`Review`})})]})}),(0,K.jsx)(p.Root,{open:m,onOpenChange:e=>{e||h(!1)},children:(0,K.jsxs)(p.Content,{size:`sm`,children:[(0,K.jsx)(p.Header,{children:(0,K.jsx)(p.Title,{icon:d,children:`Storage is critically low`})}),(0,K.jsx)(p.Body,{children:(0,K.jsx)(p.Description,{children:`Your assistant will enter a locked state if it runs out of storage. You should either prompt your assistant to free up space or increase your storage.`})}),(0,K.jsxs)(p.Footer,{children:[l&&(0,K.jsx)(s,{variant:`outlined`,onClick:()=>{h(!1),l()},children:`Upgrade`}),(0,K.jsx)(s,{variant:`primary`,disabled:r,onClick:()=>{a(),h(!1)},children:r?`Acknowledging...`:`Acknowledge`})]})]})})]})}var de=_({key:`device:cmd_enter_to_send`,scope:`device`,parse:g,serialize:String,fallback:!1}),fe=_({key:`device:show_context_window_indicator`,scope:`device`,parse:g,serialize:String,fallback:!1}),q=`app.iosNudge.downloaded`,J=`app.iosNudge.bannerDismissed`,Y=`app.iosNudge.assistantTurnsSeen`,pe=`https://apps.apple.com/us/app/vellum-assistant/id6759934423`;function me(){return i(q,!1)}function X(){t(q,!0)}function he(){return i(J,!1)}function Z(){t(J,!0)}function Q(){return Math.max(0,n(Y,0))}function ge(e=1){e<=0||r(Y,Q()+e)}function _e(){let[e,t]=(0,N.useState)(!1),[n,r]=(0,N.useState)(!1);(0,N.useEffect)(()=>{t(me()),r(he())},[]);let i=(0,N.useCallback)(()=>{$(),X(),t(!0)},[]),a=(0,N.useCallback)(()=>{Z(),r(!0)},[]);return{bannerShouldShow:!e&&!n,handleDownload:i,handleBannerDismiss:a}}function $(){window.open(pe,`_blank`,`noopener,noreferrer`)}export{w as C,T as S,A as _,X as a,te as b,ue as c,V as d,P as f,ie as g,ae as h,_e as i,le as l,re as m,$ as n,de as o,M as p,Q as r,fe as s,ge as t,H as u,ne as v,ee as x,j as y};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Q as e,Y as t,Z as n,i as r,n as i,nt as a}from"./auth-store-BhQdM8W1.js";var o=5e3;function s(e,t,n){return!n||e!=null?`ready`:t===`error`?`unavailable`:`resolving`}function c(){return s(e(),n.use.status(),r())}function l(){return s(t(),n.getState().status,a(i.getState().platformSession))}function u(){return c()===`ready`}export{c as i,l as n,u as r,o as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{l as n}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as r}from"./is-electron-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{l as n}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as r}from"./is-electron-7N7iyz1y.js";import{p as i}from"./native-biometric-CTR2Zi2w.js";import{d as a}from"./routes-GmNvdtLW.js";import{i as o}from"./navigation-resolver-CIICT6n9.js";import{t as s}from"./build-state-Bpy5oGW4.js";import{n as c}from"./login-flow-C67Qs4VU.js";var l=e(t(),1);function u(e){let t=n(),[u,d]=(0,l.useState)(!1),[f,p]=(0,l.useState)(null),m=(0,l.useRef)(0);return{loading:u,error:f,login:async()=>{let n=e??o(s({sessionSettled:!0,isAuthenticated:!0}),t.pathname),r=++m.current;p(null),d(!0);try{await i(c,`${a.account.providerCallback}?returnTo=${encodeURIComponent(n)}`,{returnTo:n})}catch{if(r!==m.current)return;p(`Something went wrong. Please try again.`),d(!1)}},cancel:()=>{m.current++,d(!1),p(null),r()&&window.vellum?.auth?.cancelOAuth()}}}export{u as t};
|
package/dist/assets/{use-platform-assistant-id-DSR1LFZF.js → use-platform-assistant-id-DvilMQ88.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{q as n}from"./auth-store-BhQdM8W1.js";var r=e(t(),1);function i(e,t){let[i,a]=(0,r.useState)({platformAssistantId:null,isLoading:!1,error:null});return(0,r.useEffect)(()=>{if(!t||!e){a({platformAssistantId:null,isLoading:!1,error:null});return}let r=!0;return a({platformAssistantId:null,isLoading:!0,error:null}),n(e).then(e=>{r&&a({platformAssistantId:e,isLoading:!1,error:null})}).catch(e=>{r&&a({platformAssistantId:null,isLoading:!1,error:e instanceof Error?e:Error(String(e))})}),()=>{r=!1}},[e,t]),i}export{i as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{f as n,m as r}from"./local-mode-9zpgPNoq.js";import{ht as i,i as a,o}from"./auth-store-BhQdM8W1.js";var s=e(t(),1);function c(){let e=i.use.assistantState();return!!(e.kind===`self_hosted`||e.kind===`active`&&e.isLocal)}function l(){let e=i.use.assistantState();return e.kind===`active`&&!e.isLocal}function u(){let e=i.use.assistantState();return e.kind===`loading`||e.kind===`initializing`||e.kind===`cleaning_up`}function d(e={}){let t=p(e);return t===`pending`?`disabled`:t}function f(e={}){let t=p(e),n=m(t===`pending`,e.settleTimeoutMs??5e3);return t===`pending`&&n?`disabled`:t}function p(e){let t=a(),i=o(),s=r(),l=c(),u=i?`disabled`:`pending`;return e.platformHostedOnly?l?`gated`:t?`full`:u:n()&&s?`gated`:t?`full`:u}function m(e,t){let[n,r]=(0,s.useState)(!1);return(0,s.useEffect)(()=>{if(!e){r(!1);return}let n=setTimeout(()=>r(!0),t);return()=>{clearTimeout(n)}},[e,t]),n}export{f as a,d as i,c as n,u as r,l as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{d as n,l as r,u as i}from"./proxy-CNtrhN4q.js";var a=e(t(),1);function o(){!i.current&&r();let[e]=(0,a.useState)(n.current);return e}export{o as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{m as n,n as r}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as i}from"./jsx-runtime-D3ZM-ToX.js";import{t as a}from"./loader-circle-BzJ2kz3F.js";import{a as o,s}from"./auth-store-BhQdM8W1.js";import{T as c,u as l}from"./native-biometric-CTR2Zi2w.js";import{n as u}from"./domains-OaR_FpOR.js";import{d}from"./routes-GmNvdtLW.js";import{a as f}from"./use-platform-gate-WUjCKFpL.js";import{t as p}from"./hard-navigate-V2EFapkk.js";import{a as m,o as h}from"./login-flow-C67Qs4VU.js";var g=i();function _(){return(0,g.jsx)(a,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`,"aria-label":`Loading`})}var v=e(t(),1),y=`/api/funnel/view`;function b(e,t){let n=(0,v.useRef)(null);(0,v.useEffect)(()=>{t&&n.current!==e&&(l()||u(window.location.hostname)&&(n.current=e,fetch(y,{method:`POST`,credentials:`same-origin`,headers:{"content-type":`application/json`},body:JSON.stringify({path:e}),keepalive:!0}).catch(()=>{})))},[e,t])}function x({to:e}){let t=m(e);return(0,v.useEffect)(()=>{t&&p(e)},[t,e]),t?null:(0,g.jsx)(r,{to:e,replace:!0})}function S(){let[e]=n(),t=o(),r=s(),i=f(),a=e.get(`returnTo`),l=c(a,d.assistant);if(!a)return{kind:`proceed`,returnTo:null};if(r)return{kind:`wait`};if(!t)return{kind:`proceed`,returnTo:l};if(h(l)){if(i===`pending`)return{kind:`wait`};if(i===`disabled`)return{kind:`proceed`,returnTo:l}}return{kind:`redirect`,node:(0,g.jsx)(x,{to:l})}}export{b as n,_ as r,S as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{n}from"./QueryClientProvider-CMu7CkQU.js";import{t as r}from"./useMutation-CXGTrp4W.js";import{t as i}from"./queryOptions-CMSBCFOf.js";import{t as a}from"./createLucideIcon-CAM1RhH8.js";import{t as o}from"./mail-DABv3_Ue.js";import{t as s}from"./message-circle-gk_DFUIg.js";import{t as c}from"./message-square-zCNXaHYX.js";import{t as l}from"./send-DHWUIK7G.js";import{Qt as u,en as d,nn as f}from"./sdk.gen-BySz4QYj.js";import{Dt as p,Et as m,Ot as h,kt as g,s as _}from"./react-query.gen-0mspArBl.js";import{C as v,a as y,m as b,t as x}from"./sdk.gen-DEFA-6EJ.js";var S=a(`bot`,[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]),C=a(`hash`,[[`line`,{x1:`4`,x2:`20`,y1:`9`,y2:`9`,key:`4lhtct`}],[`line`,{x1:`4`,x2:`20`,y1:`15`,y2:`15`,key:`vyu0kd`}],[`line`,{x1:`10`,x2:`8`,y1:`3`,y2:`21`,key:`1ggp8o`}],[`line`,{x1:`16`,x2:`14`,y1:`3`,y2:`21`,key:`weycgp`}]]),w=a(`phone`,[[`path`,{d:`M13.832 16.568a1 1 0 0 0 1.213-.303l.355-.465A2 2 0 0 1 17 15h3a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2A18 18 0 0 1 2 4a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v3a2 2 0 0 1-.8 1.6l-.468.351a1 1 0 0 0-.292 1.233 14 14 0 0 0 6.392 6.384`,key:`9njp5v`}]]),T=(e,t,n,r)=>{let i={_id:e,baseUrl:t?.baseUrl||(t?.client??v).getConfig().baseUrl};return n&&(i._infinite=n),r&&(i.tags=r),t?.body&&(i.body=t.body),t?.headers&&(i.headers=t.headers),t?.path&&(i.path=t.path),t?.query&&(i.query=t.query),[i]},E=e=>T(`assistantChannelAdmissionPolicyList`,e),D=e=>i({queryFn:async({queryKey:t,signal:n})=>{let{data:r}=await x({...e,...t[0],signal:n,throwOnError:!0});return r},queryKey:E(e)}),O=e=>T(`assistantChannelPermissionOverridesList`,e),k=e=>i({queryFn:async({queryKey:t,signal:n})=>{let{data:r}=await y({...e,...t[0],signal:n,throwOnError:!0});return r},queryKey:O(e)}),A=e=>T(`assistantFeatureFlagsGet`,e),j=e=>i({queryFn:async({queryKey:t,signal:n})=>{let{data:r}=await b({...e,...t[0],signal:n,throwOnError:!0});return r},queryKey:A(e)}),M=e(t(),1),N={slack:`Slack`,telegram:`Telegram`,whatsapp:`WhatsApp`,phone:`Phone`,email:`Email`,a2a:`Assistant`},P={slack:C,telegram:l,whatsapp:s,phone:w,email:o,a2a:S};function F(e){return e?N[e]??e.charAt(0).toUpperCase()+e.slice(1):`channel`}function I(e){return`Open in ${F(e)}`}function L(e){return e&&P[e]?P[e]:c}function R({channelId:e,className:t}){return(0,M.createElement)(L(e),{className:t,"aria-hidden":!0})}function z(e){return e?.trim()||`your assistant`}var B=[`slack`,`telegram`,`phone`];function V(e){return B.includes(e)}function H(e){return{path:{assistant_id:e},query:{memberOnly:`true`}}}function U(e){return m(H(e))}function W(e){return p(H(e))}var G=600*1e3;function K(e){return{path:{assistant_id:e}}}function q(e){return{...h(K(e)),staleTime:G}}function J(e){return g(K(e))}function Y(e,t){e.removeQueries({queryKey:W(t)}),e.removeQueries({queryKey:J(t)})}function X({assistantId:e,onSuccess:t}){let i=n(),a=(0,M.useMemo)(()=>_({path:{assistant_id:e}}),[e]);return r({mutationFn:({botToken:t,appToken:n})=>{if(!n.trim())throw Error(`App token is required. Copy the xapp- token from Slack's install screen.`);if(!t.trim())throw Error(`Bot token is required.`);return u({path:{assistant_id:e},body:{botToken:t.trim(),appToken:n.trim()},throwOnError:!0})},onSuccess:t,onSettled:()=>{i.invalidateQueries({queryKey:a}),Y(i,e)}})}function Z({assistantId:e,onSuccess:t}){let i=n(),a=(0,M.useMemo)(()=>_({path:{assistant_id:e}}),[e]);return r({mutationFn:t=>{if(!t.trim())throw Error(`Bot token is required.`);return d({path:{assistant_id:e},body:{botToken:t.trim()},throwOnError:!0})},onSuccess:t,onSettled:()=>{i.invalidateQueries({queryKey:a})}})}function Q({assistantId:e,onSuccess:t}){let i=n(),a=(0,M.useMemo)(()=>_({path:{assistant_id:e}}),[e]);return r({mutationFn:({accountSid:t,authToken:n})=>{if(!t.trim())throw Error(`Account SID is required.`);if(!n.trim())throw Error(`Auth Token is required.`);return f({path:{assistant_id:e},body:{accountSid:t.trim(),authToken:n.trim()},throwOnError:!0})},onSuccess:t,onSettled:()=>{i.invalidateQueries({queryKey:a})}})}export{S,O as _,q as a,w as b,V as c,L as d,F as f,k as g,E as h,Y as i,z as l,D as m,Z as n,U as o,I as p,X as r,B as s,Q as t,R as u,j as v,C as x,A as y};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{n}from"./QueryClientProvider-CMu7CkQU.js";import{t as r}from"./useMutation-CXGTrp4W.js";import{t as i}from"./jsx-runtime-D3ZM-ToX.js";import{t as a}from"./card-DRIctGVs.js";import{t as o}from"./createLucideIcon-CAM1RhH8.js";import{t as s}from"./brain-BIzJCPA6.js";import{t as c}from"./globe-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{n}from"./QueryClientProvider-CMu7CkQU.js";import{t as r}from"./useMutation-CXGTrp4W.js";import{t as i}from"./jsx-runtime-D3ZM-ToX.js";import{t as a}from"./card-DRIctGVs.js";import{t as o}from"./createLucideIcon-CAM1RhH8.js";import{t as s}from"./brain-BIzJCPA6.js";import{t as c}from"./globe-BDvXuPkw.js";import{t as l}from"./puzzle-CtM3jM-f.js";import{t as u}from"./terminal-Cs_TREv-.js";import{t as d}from"./user-Dq9DUxnU.js";import"./src-C3NeO9Jd.js";import{t as f}from"./tag-D8NAGb0r.js";import{n as p,r as m,t as h}from"./api-errors-SZKDzMLE.js";import{mr as g}from"./sdk.gen-BySz4QYj.js";import{ln as _}from"./react-query.gen-0mspArBl.js";import{t as v}from"./skills-DK5e24Im.js";var y=o(`box`,[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`,key:`hh9hay`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`,key:`g66t2b`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}]]),b=e(t(),1),x=i();function S({skill:e,className:t,fallback:n=`🧩`}){let[r,i]=(0,b.useState)(!1);return e.icon&&!r?(0,x.jsx)(`img`,{src:`/assistant/skills/${e.id}/${e.icon}`,alt:``,className:`${t} object-contain`,onError:()=>i(!0)}):(0,x.jsx)(`span`,{className:t,children:e.emoji??n})}var C={vellum:{label:`Vellum`,icon:y},clawhub:{label:`Clawhub`,icon:c},skillssh:{label:`skills.sh`,icon:u},custom:{label:`Custom`,icon:d},"assistant-memory":{label:`Assistant's Memory`,icon:s}};function w({origin:e}){let t=e in C?C[e]:{label:e.replace(/-/g,` `),icon:l};return(0,x.jsx)(f,{tone:`neutral`,leftIcon:(0,b.createElement)(t.icon),className:`capitalize`,children:t.label})}function T(e){return e.kind===`installed`||e.kind===`bundled`}function E(e){return e.kind===`catalog`}function D({icon:e,iconColor:t=`var(--content-tertiary)`,title:n,subtitle:r,children:i}){return(0,x.jsx)(a.Root,{children:(0,x.jsxs)(a.Body,{className:`flex flex-col items-center justify-center py-16 text-center`,children:[(0,x.jsx)(e,{className:`mb-3 h-8 w-8`,style:{color:t},"aria-hidden":!0}),(0,x.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:n}),(0,x.jsx)(`p`,{className:`mt-1 max-w-sm text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:r}),i]})})}async function O(e,t,n){let{data:r,error:i,response:a}=await g({path:{assistant_id:e},body:n?{slug:t,version:n}:{slug:t},throwOnError:!1});if(p(a,i,`Failed to install skill.`),!a.ok)throw new h(a.status,m(i,a,`Failed to install skill.`));return r??{ok:!0}}function k(e,{onRemoved:t}={}){let i=n(),[a,o]=(0,b.useState)(null),[s,c]=(0,b.useState)(null),[l,u]=(0,b.useState)(null),d=(0,b.useCallback)(()=>{v(i,e)},[e,i]),f=r({mutationFn:t=>O(e,t),onMutate:e=>o(e),onSettled:()=>{o(null),d()}}),p=_({onMutate:e=>c(e.path.id),onSuccess:()=>{t?.()},onSettled:()=>{c(null),d()}}),m=(0,b.useCallback)(e=>{f.mutate(e.slug??e.id)},[f]),h=(0,b.useCallback)(e=>{u(e)},[]),g=(0,b.useCallback)(()=>{l&&(p.mutate({path:{assistant_id:e,id:l.id}}),u(null))},[e,l,p]),y=(0,b.useCallback)(()=>{u(null)},[]);return{handleInstall:m,handleRemove:h,isInstallingSkill:(0,b.useCallback)(e=>a===(e.slug??e.id),[a]),isRemovingSkill:(0,b.useCallback)(e=>s===e.id,[s]),skillPendingRemoval:l,confirmRemove:g,cancelRemove:y}}export{w as a,T as i,D as n,S as o,E as r,y as s,k as t};
|
package/dist/assets/{use-skill-detail-files-CKgT7qkY.js → use-skill-detail-files-BVBb8uoK.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as r}from"./useQuery-Bz-fbQ-m.js";import{t as i}from"./jsx-runtime-D3ZM-ToX.js";import{t as a}from"./arrow-right-B-jRJNWP.js";import{
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as r}from"./useQuery-Bz-fbQ-m.js";import{t as i}from"./jsx-runtime-D3ZM-ToX.js";import{t as a}from"./arrow-right-B-jRJNWP.js";import{d as o}from"./routes-GmNvdtLW.js";import{bt as s,xt as c}from"./react-query.gen-0mspArBl.js";import{t as l}from"./misc-CAQM4FGM.js";var u=i();function d({skill:e,className:t,onNavigate:r}){return e.origin!==`assistant-memory`||!e.sourceConversationId?null:(0,u.jsxs)(n,{to:o.conversation(e.sourceConversationId),onClick:r,className:l(`inline-flex w-fit items-center gap-1 text-body-small-default text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-secondary)] hover:underline`,t),children:[`Learned from this conversation`,(0,u.jsx)(a,{className:`h-3.5 w-3.5 shrink-0`,"aria-hidden":!0})]})}var f=e(t(),1);function p(e,t){return t??e.find(e=>e.name===`SKILL.md`)?.path??null}function m(e,t){let[n,i]=(0,f.useState)(null),a=r({...c({path:{assistant_id:e??``,id:t}}),select:e=>e??null,enabled:!!e}),o=(0,f.useMemo)(()=>a.data?.files??[],[a.data]),l=(0,f.useMemo)(()=>o.find(e=>e.name===`SKILL.md`),[o]),u=p(o,n),d=r({...s({path:{assistant_id:e??``,id:t},query:{path:u??``}}),select:e=>e??null,enabled:!!(e&&u)});return{fileEntries:o,skillMd:l,selectedPath:n,setSelectedPath:i,activePath:u,activeFile:o.find(e=>e.path===u),isFilesLoading:a.isLoading,isFilesPending:a.isPending,fileContent:d.data?.content??null,isBinary:!!d.data?.isBinary,isContentLoading:d.isLoading,isContentPending:d.isPending}}export{d as n,m as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{r as t}from"./capture-error-FWzaVb8P.js";import{t as n}from"./react-BFJW0bSv.js";import{t as r}from"./button-Dy5001j6.js";import{n as i}from"./QueryClientProvider-CMu7CkQU.js";import{t as a}from"./useQuery-Bz-fbQ-m.js";import{t as o}from"./jsx-runtime-D3ZM-ToX.js";import{t as s}from"./cn-CJf7MmLX.js";import{t as c}from"./typography-DEI9Ra9z.js";import{t as l}from"./check-sC49_hjU.js";import{t as u}from"./chevron-down-B5A-0g8A.js";import{t as d}from"./chevron-right-HU6H84S0.js";import{t as f}from"./loader-circle-BzJ2kz3F.js";import{t as p}from"./search-DA3TmTuR.js";import{A as m,M as h}from"./src-C3NeO9Jd.js";import{n as g,t as _}from"./input-C-GkeWCw.js";import{t as v}from"./toggle-D776PTw-.js";import{t as y}from"./modal-DwsThLGg.js";import{n as b}from"./toast-DR7D7Uma.js";import{t as x}from"./dropdown-Dt0Iof85.js";import{t as S}from"./is-electron-7N7iyz1y.js";import{t as C}from"./assistant-identity-store-BczULg2T.js";import{i as w,n as T,o as E}from"./utils-C-YNXdkX.js";import{Ht as D,Kt as O,Vt as k,or as ee,qt as A,sr as te}from"./sdk.gen-BySz4QYj.js";import{n as j}from"./use-platform-gate-WUjCKFpL.js";import{r as M}from"./use-is-org-ready-CFcTY1Qr.js";import{It as N,W as ne,c as re,vt as P,yt as ie}from"./react-query.gen-0mspArBl.js";import{o as ae}from"./voice-list-DQtY9O6_.js";var F=e(n(),1),I={anthropic:[{id:`claude-fable-5`,displayName:`Claude Fable 5`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,adaptiveThinkingOnly:!0,longContextPricingThresholdTokens:2e5},{id:`claude-opus-5`,displayName:`Claude Opus 5`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`claude-opus-4-8`,displayName:`Claude Opus 4.8`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`claude-opus-4-7`,displayName:`Claude Opus 4.7`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`claude-opus-4-6`,displayName:`Claude Opus 4.6`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`claude-sonnet-5`,displayName:`Claude Sonnet 5`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`claude-sonnet-4-6`,displayName:`Claude Sonnet 4.6`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`claude-sonnet-4-5-20250929`,displayName:`Claude Sonnet 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0},{id:`claude-opus-4-5-20251101`,displayName:`Claude Opus 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0},{id:`claude-haiku-4-5-20251001`,displayName:`Claude Haiku 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0}],openai:[{id:`gpt-5.6-sol`,displayName:`GPT-5.6 Sol`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`gpt-5.6-terra`,displayName:`GPT-5.6 Terra`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`gpt-5.6-luna`,displayName:`GPT-5.6 Luna`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`gpt-5.5`,displayName:`GPT-5.5`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`gpt-5.5-pro`,displayName:`GPT-5.5 Pro`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`gpt-5.4`,displayName:`GPT-5.4`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`gpt-5.2`,displayName:`GPT-5.2`,contextWindowTokens:4e5,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0},{id:`gpt-5.4-mini`,displayName:`GPT-5.4 Mini`,contextWindowTokens:4e5,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0},{id:`gpt-5.4-nano`,displayName:`GPT-5.4 Nano`,contextWindowTokens:4e5,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0}],gemini:[{id:`gemini-3.6-flash`,displayName:`Gemini 3.6 Flash`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0},{id:`gemini-3.5-flash`,displayName:`Gemini 3.5 Flash`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0},{id:`gemini-3.5-flash-lite`,displayName:`Gemini 3.5 Flash-Lite`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0},{id:`gemini-3.1-pro-preview`,displayName:`Gemini 3.1 Pro Preview`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`gemini-3.1-pro-preview-customtools`,displayName:`Gemini 3.1 Pro Preview (Custom Tools)`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`gemini-3-flash-preview`,displayName:`Gemini 3 Flash Preview`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0},{id:`gemini-3.1-flash-lite-preview`,displayName:`Gemini 3.1 Flash-Lite Preview`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0},{id:`gemini-3.1-flash-lite`,displayName:`Gemini 3.1 Flash-Lite`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0},{id:`gemini-2.5-flash`,displayName:`Gemini 2.5 Flash`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0},{id:`gemini-2.5-flash-lite`,displayName:`Gemini 2.5 Flash Lite`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:65536},{id:`gemini-2.5-pro`,displayName:`Gemini 2.5 Pro`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0,longContextPricingThresholdTokens:2e5}],ollama:[{id:`llama3.2`,displayName:`Llama 3.2`,contextWindowTokens:128e3,defaultContextWindowTokens:128e3,maxOutputTokens:4096},{id:`mistral`,displayName:`Mistral`,contextWindowTokens:32768,defaultContextWindowTokens:32768,maxOutputTokens:4096}],fireworks:[{id:`accounts/fireworks/models/kimi-k3`,displayName:`Kimi K3`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:131072,supportsThinking:!0,adaptiveThinkingOnly:!0},{id:`accounts/fireworks/models/kimi-k2p6`,displayName:`Kimi K2.6`,contextWindowTokens:262144,defaultContextWindowTokens:2e5,maxOutputTokens:32768,supportsThinking:!0},{id:`accounts/fireworks/models/glm-5p2`,displayName:`GLM 5.2`,contextWindowTokens:104e4,defaultContextWindowTokens:2e5,maxOutputTokens:131072,supportsThinking:!0},{id:`accounts/fireworks/models/minimax-m3`,displayName:`MiniMax M3`,contextWindowTokens:524288,defaultContextWindowTokens:2e5,maxOutputTokens:512e3,supportsThinking:!0},{id:`accounts/fireworks/models/minimax-m2p7`,displayName:`MiniMax M2.7`,contextWindowTokens:196608,defaultContextWindowTokens:196608,maxOutputTokens:25e3},{id:`accounts/fireworks/models/minimax-m2p5`,displayName:`MiniMax M2.5`,contextWindowTokens:196608,defaultContextWindowTokens:196608,maxOutputTokens:25e3},{id:`accounts/fireworks/models/deepseek-v4-pro`,displayName:`DeepSeek V4 Pro`,contextWindowTokens:104e4,defaultContextWindowTokens:2e5,maxOutputTokens:131072,supportsThinking:!0},{id:`accounts/fireworks/models/deepseek-v4-flash`,displayName:`DeepSeek V4 Flash`,contextWindowTokens:104e4,defaultContextWindowTokens:2e5,maxOutputTokens:131072,supportsThinking:!0}],together:[{id:`MiniMaxAI/MiniMax-M3`,displayName:`MiniMax M3`,contextWindowTokens:524288,defaultContextWindowTokens:2e5,maxOutputTokens:512e3,supportsThinking:!0}],openrouter:[{id:`anthropic/claude-fable-5`,displayName:`Claude Fable 5`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,adaptiveThinkingOnly:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-opus-5`,displayName:`Claude Opus 5`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-opus-4.8`,displayName:`Claude Opus 4.8`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-opus-4.7`,displayName:`Claude Opus 4.7`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-opus-4.6`,displayName:`Claude Opus 4.6`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-sonnet-5`,displayName:`Claude Sonnet 5`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-sonnet-4.6`,displayName:`Claude Sonnet 4.6`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-sonnet-4.5`,displayName:`Claude Sonnet 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0},{id:`anthropic/claude-opus-4.5`,displayName:`Claude Opus 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0},{id:`anthropic/claude-haiku-4.5`,displayName:`Claude Haiku 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0},{id:`openai/gpt-5.6-sol`,displayName:`GPT-5.6 Sol`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`openai/gpt-5.6-sol-pro`,displayName:`GPT-5.6 Sol Pro`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`openai/gpt-5.6-terra`,displayName:`GPT-5.6 Terra`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`openai/gpt-5.6-terra-pro`,displayName:`GPT-5.6 Terra Pro`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`openai/gpt-5.6-luna`,displayName:`GPT-5.6 Luna`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`openai/gpt-5.6-luna-pro`,displayName:`GPT-5.6 Luna Pro`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`x-ai/grok-4.5`,displayName:`Grok 4.5`,contextWindowTokens:5e5,defaultContextWindowTokens:2e5,maxOutputTokens:3e4,supportsThinking:!0},{id:`x-ai/grok-4.3`,displayName:`Grok 4.3`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:16e3,supportsThinking:!0},{id:`x-ai/grok-4.20`,displayName:`Grok 4.20`,contextWindowTokens:2e6,defaultContextWindowTokens:2e5,maxOutputTokens:16e3,supportsThinking:!0},{id:`deepseek/deepseek-r1-0528`,displayName:`DeepSeek R1`,contextWindowTokens:163840,defaultContextWindowTokens:163840,maxOutputTokens:32e3,supportsThinking:!0},{id:`deepseek/deepseek-chat-v3-0324`,displayName:`DeepSeek V3`,contextWindowTokens:163840,defaultContextWindowTokens:163840,maxOutputTokens:32e3},{id:`deepseek/deepseek-v4-pro`,displayName:`DeepSeek V4 Pro`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:384e3,supportsThinking:!0},{id:`deepseek/deepseek-v4-flash`,displayName:`DeepSeek V4 Flash`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:384e3,supportsThinking:!0},{id:`deepseek/deepseek-v3.2-speciale`,displayName:`DeepSeek V3.2 Speciale`,contextWindowTokens:163840,defaultContextWindowTokens:163840,maxOutputTokens:163840,supportsThinking:!0},{id:`qwen/qwen3.5-plus-02-15`,displayName:`Qwen 3.5 Plus`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:8192,supportsThinking:!0},{id:`qwen/qwen3.5-397b-a17b`,displayName:`Qwen 3.5 397B`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:8192,supportsThinking:!0},{id:`qwen/qwen3.5-flash-02-23`,displayName:`Qwen 3.5 Flash`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:8192},{id:`qwen/qwen3-coder-next`,displayName:`Qwen 3 Coder`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:8192},{id:`moonshotai/kimi-k3`,displayName:`Kimi K3`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:131072,supportsThinking:!0,adaptiveThinkingOnly:!0},{id:`moonshotai/kimi-k2.6`,displayName:`Kimi K2.6`,contextWindowTokens:262144,defaultContextWindowTokens:2e5,maxOutputTokens:32768,supportsThinking:!0},{id:`moonshotai/kimi-k2.5`,displayName:`Kimi K2.5`,contextWindowTokens:256e3,defaultContextWindowTokens:2e5,maxOutputTokens:32768},{id:`minimax/minimax-m3`,displayName:`MiniMax M3`,contextWindowTokens:524288,defaultContextWindowTokens:2e5,maxOutputTokens:512e3,supportsThinking:!0},{id:`minimax/minimax-m2.7`,displayName:`MiniMax M2.7`,contextWindowTokens:196608,defaultContextWindowTokens:196608,maxOutputTokens:131072,supportsThinking:!0},{id:`minimax/minimax-m2.5`,displayName:`MiniMax M2.5`,contextWindowTokens:196608,defaultContextWindowTokens:196608,maxOutputTokens:196608,supportsThinking:!0},{id:`minimax/minimax-m2.1`,displayName:`MiniMax M2.1`,contextWindowTokens:196608,defaultContextWindowTokens:196608,maxOutputTokens:196608,supportsThinking:!0},{id:`minimax/minimax-m2`,displayName:`MiniMax M2`,contextWindowTokens:196608,defaultContextWindowTokens:196608,maxOutputTokens:196608,supportsThinking:!0},{id:`minimax/minimax-m2-her`,displayName:`MiniMax M2-her`,contextWindowTokens:65536,defaultContextWindowTokens:65536,maxOutputTokens:2048},{id:`minimax/minimax-m1`,displayName:`MiniMax M1`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:4e4,supportsThinking:!0},{id:`minimax/minimax-01`,displayName:`MiniMax-01`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:1e6},{id:`z-ai/glm-5.2`,displayName:`GLM-5.2`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:131072,supportsThinking:!0},{id:`mistralai/mistral-medium-3`,displayName:`Mistral Medium 3`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:16e3},{id:`mistralai/mistral-small-2603`,displayName:`Mistral Small 4`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:16e3},{id:`mistralai/devstral-2512`,displayName:`Devstral 2`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:16e3},{id:`meta-llama/llama-4-maverick`,displayName:`Llama 4 Maverick`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:16e3},{id:`meta-llama/llama-4-scout`,displayName:`Llama 4 Scout`,contextWindowTokens:327680,defaultContextWindowTokens:2e5,maxOutputTokens:16e3},{id:`amazon/nova-pro-v1`,displayName:`Amazon Nova Pro`,contextWindowTokens:3e5,defaultContextWindowTokens:2e5,maxOutputTokens:5e3},{id:`openrouter/owl-alpha`,displayName:`Owl Alpha`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:262144}],"vercel-ai-gateway":[{id:`anthropic/claude-fable-5`,displayName:`Claude Fable 5`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,adaptiveThinkingOnly:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-opus-5`,displayName:`Claude Opus 5`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-opus-4.8`,displayName:`Claude Opus 4.8`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-opus-4.6`,displayName:`Claude Opus 4.6`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-sonnet-5`,displayName:`Claude Sonnet 5`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-sonnet-4.6`,displayName:`Claude Sonnet 4.6`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-haiku-4.5`,displayName:`Claude Haiku 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0},{id:`openai/gpt-5.5`,displayName:`GPT-5.5`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`openai/gpt-5.5-pro`,displayName:`GPT-5.5 Pro`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`xai/grok-4.3`,displayName:`Grok 4.3`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:16e3,supportsThinking:!0},{id:`moonshotai/kimi-k2.6`,displayName:`Kimi K2.6`,contextWindowTokens:262144,defaultContextWindowTokens:2e5,maxOutputTokens:32768,supportsThinking:!0},{id:`deepseek/deepseek-v4-flash`,displayName:`DeepSeek V4 Flash`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:384e3,supportsThinking:!0}],minimax:[{id:`MiniMax-M3`,displayName:`MiniMax M3`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:512e3,supportsThinking:!0},{id:`MiniMax-M2.7`,displayName:`MiniMax M2.7`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:16384,supportsThinking:!0}],atlascloud:[{id:`deepseek-ai/deepseek-v4-pro`,displayName:`DeepSeek V4 Pro`,contextWindowTokens:128e3,defaultContextWindowTokens:128e3,maxOutputTokens:8192,supportsThinking:!0}],litellm:[],baseten:[{id:`thinkingmachines/inkling`,displayName:`Inkling`,contextWindowTokens:262144,defaultContextWindowTokens:2e5,maxOutputTokens:32768,supportsThinking:!0}],poolside:[{id:`poolside/laguna-s-2.1`,displayName:`Laguna S 2.1`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:131072,supportsThinking:!0},{id:`poolside/laguna-xs-2.1`,displayName:`Laguna XS 2.1`,contextWindowTokens:262144,defaultContextWindowTokens:2e5,maxOutputTokens:32768,supportsThinking:!0}],"openai-compatible":[]},L={anthropic:`claude-opus-4-8`,openai:`gpt-5.5`,gemini:`gemini-2.5-flash`,ollama:`llama3.2`,fireworks:`accounts/fireworks/models/deepseek-v4-flash`,together:`MiniMaxAI/MiniMax-M3`,openrouter:`x-ai/grok-4.20`,"vercel-ai-gateway":`anthropic/claude-sonnet-4.6`,minimax:`MiniMax-M2.7`,atlascloud:`deepseek-ai/deepseek-v4-pro`,litellm:``,baseten:`thinkingmachines/inkling`,poolside:`poolside/laguna-s-2.1`,"openai-compatible":``},R={vellum:`Vellum`,chatgpt:`ChatGPT Subscription`,anthropic:`Anthropic`,openai:`OpenAI`,gemini:`Google Gemini`,ollama:`Ollama`,fireworks:`Fireworks`,together:`Together AI`,openrouter:`OpenRouter`,"vercel-ai-gateway":`Vercel AI Gateway`,"openai-compatible":`OpenAI-compatible`,minimax:`MiniMax`,atlascloud:`Atlas Cloud`,litellm:`LiteLLM`,baseten:`Baseten`,poolside:`Poolside`};I.anthropic;var z=[`anthropic`,`openai`,`gemini`,`fireworks`,`together`],oe=(()=>{let e=new Set,t=new Set,n=[];for(let r of z)for(let i of I[r])e.has(i.id)||t.has(i.displayName)||(e.add(i.id),t.add(i.displayName),n.push(i));return n})();function se(e){let t=e.indexOf(`/`);if(t<=0)return null;let n=e.slice(0,t),r=z.find(e=>e===n),i=e.slice(t+1);return r&&i?{provider:r,model:i}:null}function ce(e){let t=se(e);return t?t.provider:z.find(t=>I[t].some(t=>t.id===e))}function B(e){return e===`vellum`?oe:I[e]??[]}function le(e){return L[e]}var V=`openai-compatible`,H=[`anthropic`,`openai`,`fireworks`,`together`,`openrouter`,`vercel-ai-gateway`,`gemini`,`ollama`,`minimax`,`atlascloud`,`litellm`,`baseten`,`poolside`],U=`vellum`,ue=new Set(z),W=1e3,de=1e3,fe=[`default`,`firecrawl`],G={default:`Vellum`,firecrawl:`Firecrawl`},pe={firecrawl:`fc-...`},me={firecrawl:`vellum:ai:firecrawlKey`},he=new Set([`firecrawl`]),ge=[`vellum`,`inference-provider-native`,`perplexity`,`brave`,`tavily`,`firecrawl`],_e={vellum:`Vellum`,"inference-provider-native":`Provider Native`,perplexity:`Perplexity`,brave:`Brave`,tavily:`Tavily`,firecrawl:`Firecrawl`},K={perplexity:`pplx-...`,brave:`BSA...`,tavily:`tvly-...`,firecrawl:`fc-...`},ve={perplexity:`vellum:ai:perplexityKey`,brave:`vellum:ai:braveKey`,tavily:`vellum:ai:tavilyKey`,firecrawl:`vellum:ai:firecrawlKey`},q=new Set([`perplexity`,`brave`,`tavily`,`firecrawl`]),J=new Set([`managed`,`your-own`]);function ye(e,t){return J.has(e)?e:t}function be(e,t){let n=t.filter(t=>t in e).map(t=>({name:t,...e[t]})),r=new Set(t),i=Object.entries(e).filter(([e])=>!r.has(e)).map(([e,t])=>({name:e,...t}));return[...n,...i]}function xe(e){if(e&&typeof e==`object`&&`success`in e&&e.success===!1)throw Error(`Failed to provision API key: server returned success=false`)}function Se(e,t,n=W){return Math.min(Number.isFinite(e)?Math.max(Math.round(e),n):n,t)}function Y(e,t){return e.toLocaleString(`en-US`,{maximumFractionDigits:t,minimumFractionDigits:0})}function Ce(e){let t=Array.isArray(e)?e[0]??0:e,n=Math.round(t);return Math.abs(n)>=1e6?`${Y(n/1e6,2)}M`:Math.abs(n)>=1e3?`${Y(n/1e3,1)}K`:n.toLocaleString(`en-US`)}function X(e){return ve[e]??``}function we(e){return me[e]??``}var Te={maxTokens:!1,contextWindow:!1,effort:!1,speed:!1,verbosity:!1,temperature:!1,topP:!1,thinking:!1,thinkingLevel:!1};function Ee(e){return e===`gpt-5`||e.startsWith(`gpt-5.`)||e.startsWith(`gpt-5-`)}function Z(e){return e.startsWith(`anthropic/`)}function De(e,t){let n=t.toLowerCase();return B(e).find(e=>e.id.toLowerCase()===n)}function Oe(e,t){return De(e,t)?.adaptiveThinkingOnly===!0}function ke(e){return Z(e)||e.startsWith(`x-ai/grok-4`)||e.startsWith(`deepseek/deepseek-r1`)||e===`qwen/qwen3.5-plus-02-15`||e===`qwen/qwen3.5-397b-a17b`||e===`moonshotai/kimi-k2.6`}var Ae=[`minimal`,`low`,`medium`,`high`],je=[`low`,`medium`,`high`];function Me(e){return/^gemini-3.*pro/.test(e)}var Ne=new Set(Ae);function Pe(e){return typeof e==`string`&&Ne.has(e)}function Fe(e){return Me(e.toLowerCase())?je:Ae}function Ie(e,t){let n=De(e,t);return n?.supportsThinking===void 0?e===`anthropic`?!0:e===`openrouter`?ke(t):e===`vercel-ai-gateway`?Z(t):!1:n.supportsThinking}function Le(e,t,n){return e===`anthropic`?!t.includes(`haiku`)&&n:e===`openai`?Ee(t):e===`openrouter`||e===`vercel-ai-gateway`?Z(t)?!t.includes(`haiku`)&&n:n:e===`fireworks`||e===`together`||e===`baseten`?n:!1}var Q=new Set([`openai-compatible`,`fireworks`,`minimax`,`atlascloud`,`baseten`,`ollama`,`openrouter`,`together`,`vercel-ai-gateway`]);function Re(e,t){return t||Q.has(e)}function ze(e,t){if(!e||!t)return Te;let n=e.toLowerCase(),r=t.toLowerCase(),i=n===`anthropic`||(n===`openrouter`||n===`vercel-ai-gateway`)&&Z(r),a=Ie(n,r);return{maxTokens:!0,contextWindow:!0,effort:Le(n,r,a),speed:n===`anthropic`&&r.includes(`opus`),verbosity:n===`openai`&&Ee(r),temperature:i,topP:Re(n,i),thinking:(n===`anthropic`||n===`openrouter`||n===`vercel-ai-gateway`&&Z(r))&&a&&!Oe(n,r),thinkingLevel:n===`gemini`&&a}}var Be=`0.10.8`;function Ve(){return w(Be)}var $=o(),He=[`inherit`,`none`,`low`,`medium`,`high`,`xhigh`,`max`],Ue=[`standard`,`fast`],We=[`low`,`medium`,`high`],Ge=`default`,Ke=64e3;function qe({label:e,value:t,onChange:n,defaultValue:i,max:a,disabled:o}){let s=t===null,c=t??i,[l,u]=(0,F.useState)(s?``:String(t)),[d,f]=(0,F.useState)(t);t!==d&&(f(t),u(t===null?``:String(t)));function p(e){u(e);let t=e.trim();if(t===``){n(null);return}let r=Number(t);Number.isFinite(r)&&r>=1e3&&r<=a&&n(r)}function h(e){let r=e.trim();if(r===``){n(null);return}let i=Number(r);if(!Number.isFinite(i)){u(t===null?``:String(t));return}let o=Se(i,a);u(String(o)),n(o)}return(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e}),s?(0,$.jsxs)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[`Default · `,Ce(i)]}):null]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`div`,{className:`flex-1`,children:(0,$.jsx)(m,{value:c,onValueChange:e=>n(typeof e==`number`?e:e[0]),min:W,max:a,step:de,disabled:o,"aria-label":e})}),(0,$.jsx)(_,{type:`number`,inputMode:`numeric`,value:l,placeholder:String(i),onChange:e=>p(e.target.value),onBlur:e=>h(e.target.value),onKeyDown:e=>{e.key===`Enter`&&h(e.currentTarget.value)},min:W,max:a,step:de,disabled:o,"aria-label":`${e} (tokens)`,wrapperClassName:`w-32 shrink-0`,className:`text-right tabular-nums`}),(0,$.jsx)(r,{variant:`ghost`,size:`compact`,onClick:()=>n(null),disabled:o||s,children:`Reset`})]})]})}function Je({visibility:e,isReadOnly:t,model:n,selectedModel:r,defaultMaxOutputTokens:i,defaultContextWindowMaxInputTokens:a,maxTokens:o,onMaxTokensChange:s,contextWindowMaxInputTokens:c,onContextWindowChange:l,effort:u,onEffortChange:d,speed:f,onSpeedChange:p,verbosity:g,onVerbosityChange:_,temperatureEnabled:y,onTemperatureEnabledChange:b,temperature:x,onTemperatureChange:S,topPEnabled:C,onTopPEnabledChange:w,topP:T,onTopPChange:E,thinkingEnabled:D,onThinkingEnabledChange:O,thinkingStreamThinking:k,onThinkingStreamThinkingChange:ee,thinkingLevel:A,onThinkingLevelChange:te}){let j=Ve(),M=r?.maxOutputTokens??Ke,N=r?.contextWindowTokens??2e5,ne=Math.min(i??Ke,M),re=Math.min(a??2e5,N);return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[!t&&j&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Fields left at their default are saved with the values shown and won’t change if the assistant defaults change later.`}),e.maxTokens&&(0,$.jsx)(qe,{label:`Max Output Tokens`,value:o,onChange:s,defaultValue:ne,max:M,disabled:t}),e.contextWindow&&(0,$.jsx)(qe,{label:`Context Window`,value:c,onChange:l,defaultValue:re,max:N,disabled:t||!r}),e.effort&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Effort`}),(0,$.jsx)(h,{items:He.map(e=>({value:e,label:e===`inherit`?`default`:e,disabled:t})),value:u,onChange:e=>d(e),ariaLabel:`Effort`})]}),e.speed&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Speed`}),(0,$.jsx)(h,{items:Ue.map(e=>({value:e,label:e,disabled:t})),value:f,onChange:e=>p(e),ariaLabel:`Speed`})]}),e.verbosity&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Verbosity`}),(0,$.jsx)(h,{items:We.map(e=>({value:e,label:e,disabled:t})),value:g,onChange:e=>_(e),ariaLabel:`Verbosity`})]}),e.temperature&&(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(v,{checked:y,onChange:e=>b(e),label:`Temperature`,disabled:t}),y&&(0,$.jsx)(`div`,{className:`flex items-center justify-between`,children:(0,$.jsx)(`div`,{className:`flex-1`,children:(0,$.jsx)(m,{value:x,onValueChange:e=>S(typeof e==`number`?e:e[0]),min:0,max:2,step:.01,disabled:t,showValue:!0,formatValue:e=>typeof e==`number`?e.toFixed(2):String(e)})})})]}),e.topP&&(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(v,{checked:C,onChange:e=>w(e),label:`Top P`,disabled:t}),C&&(0,$.jsx)(`div`,{className:`flex items-center justify-between`,children:(0,$.jsx)(`div`,{className:`flex-1`,children:(0,$.jsx)(m,{value:T,onValueChange:e=>E(typeof e==`number`?e:e[0]),min:0,max:1,step:.01,disabled:t,showValue:!0,formatValue:e=>typeof e==`number`?e.toFixed(2):String(e)})})})]}),e.thinking&&(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsx)(v,{checked:D,onChange:e=>{O(e),e||ee(!1)},label:`Enable extended thinking`,disabled:t}),D&&(0,$.jsx)(`div`,{className:`pl-4`,children:(0,$.jsx)(v,{checked:k,onChange:e=>ee(e),label:`Stream thinking tokens`,disabled:t})})]}),e.thinkingLevel&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsxs)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:[`Thinking level`,` `,(0,$.jsx)(`span`,{className:`text-[var(--content-disabled)]`,children:`(default = inherit)`})]}),(0,$.jsx)(h,{items:[`default`,...Fe(n)].map(e=>({value:e,label:`${e}`,disabled:t})),value:A,onChange:te,ariaLabel:`Thinking level`})]})]})}var Ye=[`anthropic`,`openai`,`gemini`,`ollama`,`fireworks`,`together`,`openrouter`,`vercel-ai-gateway`,`minimax`,`atlascloud`,`litellm`,`baseten`,`poolside`,`openai-compatible`];function Xe(e){let t=e.split(`/`);return t.length<3||t[0]!==`credential`?null:{service:t[1],field:t.slice(2).join(`/`)}}function Ze(e){switch(e){case 409:return`A provider with these settings already exists.`;case 404:return`Provider not found. It may have been removed.`;case 400:return`Invalid configuration. Check the provider settings.`;default:return`Failed to save provider. Please try again.`}}function Qe(e,t){if(e!==400)return;let n=t?.error?.message;return typeof n==`string`&&n.length>0?n:void 0}function $e(e){return e.label?e.label:e.auth.type===`oauth_subscription`?R.chatgpt:R[e.provider]??e.provider}var et=new Set([`ollama`]);function tt(e,t){return!et.has(e)||t}function nt(e){return H.filter(t=>tt(t,e))}function rt(e){return Ye.filter(t=>tt(t,e))}function it(e){return Object.keys(I).filter(t=>tt(t,e))}function at(){return nt(j())}function ot(){return rt(j())}function st(){return it(j())}function ct(e,t){let n=[...new Set(e.map(e=>e.provider))].filter(e=>tt(e,t)),r=[];return n.includes(`vellum`)&&r.push(U),r.push(...Ye.filter(e=>n.includes(e)),...n.filter(e=>e!==`vellum`&&!Ye.includes(e))),r}var lt=`${V}::`;function ut(e){return`${lt}${e}`}function dt(e){return e.startsWith(lt)?e.slice(lt.length):null}function ft(e,t,n){let r=[];for(let i of e){if(i===`vellum`){r.push({value:i,label:n(i),meta:`Managed`});continue}if(i!==`openai-compatible`){r.push({value:i,label:n(i)});continue}for(let e of t)e.provider===`openai-compatible`&&r.push({value:ut(e.name),label:e.label&&e.label.trim()!==``?e.label:e.name,meta:`Custom`})}return r}var pt=new Set([`gpt-5.6-sol`,`gpt-5.6-terra`,`gpt-5.6-luna`,`gpt-5.5`,`gpt-5.4`,`gpt-5.4-mini`,`gpt-5.3-codex`]);function mt(e){return(e??[]).map(e=>({id:e.id,displayName:e.displayName??e.id}))}function ht(e,t,n){return!e||B(e).length===0?!1:(t?n.find(e=>e.name===t):void 0)?.auth.type===`oauth_subscription`?!0:!t&&n.length>0&&n.every(e=>e.auth.type===`oauth_subscription`)}var gt={"no-provider":{placeholder:`Select a provider first`,hint:null},"configure-connection":{placeholder:`Configure models on connection`,hint:`No models available. Configure models on the provider connection first.`},"unknown-to-catalog":{placeholder:`No models available`,hint:`No models are available for this provider in this app version. Update the app, or enter a custom model ID.`}},_t=`__custom-model-id__`;function vt({text:e}){return(0,$.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e})}function yt({provider:e,model:t,providerConnection:n,onProviderChange:i,onModelChange:a,onConnectionChange:o,connections:s,isReadOnly:l,availableConnectionsForProvider:u,connectionNotFound:d,hideProviderField:f=!1}){let p=e.length>0&&t.length===0,[m,h]=(0,F.useState)(!1),g=ht(e,n,u),v=e!==``&&!g;(0,F.useEffect)(()=>{v||h(!1)},[e,v]);function y(e){if(e===_t){h(!0),a(``);return}a(e)}let b=st(),S=j(),C=(0,F.useMemo)(()=>{let t=ct(s??[],S);return e&&!t.includes(e)?[...t,e]:t},[s,e,S]),w=s===void 0?b:C,T=(0,F.useMemo)(()=>{if(!e)return[];let t=B(e);if(t.length>0)return ht(e,n,u)?t.filter(e=>pt.has(e.id)):t;if(n){let e=u.find(e=>e.name===n);return e?mt(e.models):[]}let r=new Set,i=[];for(let e of u)for(let t of e.models??[])r.has(t.id)||(r.add(t.id),i.push({id:t.id,displayName:t.displayName??t.id}));return i},[e,n,u]),E=(0,F.useMemo)(()=>{if(!t||T.some(e=>e.id===t))return T;let n=B(e).find(e=>e.id===t),r=u.flatMap(e=>e.models??[]).find(e=>e.id===t),i=n?.displayName??r?.displayName??t;return[...T,{id:t,displayName:i}]},[t,T,e,u]),D=e?T.length===0?e===`openai-compatible`?`configure-connection`:`unknown-to-catalog`:null:`no-provider`,O=D?gt[D]:null;return(0,F.useEffect)(()=>{if(!e||m)return;let n=B(e);n.length>0&&!n.some(e=>e.id===t)||t&&T.length>0&&!T.some(e=>e.id===t)&&a(``)},[t,T,a,e,m]),(0,$.jsxs)($.Fragment,{children:[!f&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{id:`profile-editor-provider-label`,className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,$.jsx)(x,{value:e===`openai-compatible`&&n?ut(n):e,onChange:e=>{let t=dt(e);if(t){i(`openai-compatible`),o(t);return}i(e)},disabled:l,placeholder:`Select a provider…`,"aria-labelledby":`profile-editor-provider-label`,options:[...ft(w,s??[],e=>R[e]??e).map(({value:e,label:t,meta:n})=>({value:e,label:t,suffix:n?(0,$.jsx)(vt,{text:n}):void 0})),...d&&e===`openai-compatible`&&n?[{value:ut(n),label:`${n} (not found)`}]:[],...e===`openai-compatible`&&!n?[{value:`openai-compatible`,label:R[`openai-compatible`]??`openai-compatible`}]:[]]}),w.length===0&&!l?(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`No provider connections. Open Providers to add one.`}):null]}),d&&!l&&(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:`This profile referenced a credential that no longer exists. Saving resets it to use the provider’s available key.`}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Model`}),m?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(_,{value:t,onChange:e=>a(e.target.value),disabled:l,placeholder:`provider/model-id`,"aria-label":`Custom model ID`,fullWidth:!0,autoFocus:!0}),(0,$.jsx)(r,{variant:`link`,size:`compact`,disabled:l,onClick:()=>h(!1),children:`Choose from list`})]}):(0,$.jsx)(x,{value:t,onChange:y,disabled:l||!e,options:[{value:``,label:O?.placeholder??`Select a model`},...E.map(e=>({value:e.id,label:e.displayName})),...v?[{value:_t,label:`Enter a custom model ID…`}]:[]]}),m?(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`Enter the exact model identifier your provider expects. It's sent to the connection as-is.`}):p&&!l?(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:O?.hint??`Select a model.`}):null]})]})}function bt(e,t,n){return[`credentialPresence`,e,t,n]}function xt({assistantId:e,credentialKind:n,credentialName:r,enabled:i=!0}){let o=M(),s=a({queryKey:bt(e??``,n,r),queryFn:async()=>{let{data:t}=await te({path:{assistant_id:e},body:{type:n,name:r},throwOnError:!0});return t.found},enabled:!!e&&i&&o,retry:t,staleTime:3e4});return{hasStoredCredential:s.data??!1,isLoading:s.isLoading}}function St({assistantId:e,onConnected:t}){let[n,i]=(0,F.useState)(`idle`),[a,o]=(0,F.useState)(``),[s,l]=(0,F.useState)(null);async function u(){i(`starting`),l(null);let t=window.open(`about:blank`,`_blank`);try{let{data:{authorize_url:n}}=await D({path:{assistant_id:e},throwOnError:!0});t?(t.opener=null,t.location.href=n):window.open(n,`_blank`,`noopener`),i(`paste_url`)}catch{t?.close(),i(`failed`),l(`Failed to start ChatGPT sign-in. Please try again.`)}}async function d(){l(null);let n=a.trim();if(!n){l(`Please paste the URL from the error page.`);return}let r;try{r=new URL(n)}catch{l(`Invalid URL. Please paste the full URL from the address bar.`);return}let o=r.searchParams.get(`code`),s=r.searchParams.get(`state`);if(!o){l(`The URL is missing the authorization code. Make sure you copied the full URL.`);return}if(!s){l(`The URL is missing the state parameter. Make sure you copied the full URL.`);return}i(`exchanging`);try{await k({path:{assistant_id:e},body:{code:o,state:s},throwOnError:!0}),i(`completed`);let{data:n}=await O({path:{assistant_id:e},query:{provider:`openai`},throwOnError:!0});t(n.connections.find(e=>e.name===`chatgpt-subscription`||e.name===`openai-chatgpt`)||{name:`chatgpt-subscription`,provider:`openai`,auth:{type:`oauth_subscription`,credential:`credential/openai/chatgpt-subscription`},label:`ChatGPT Subscription`,createdAt:Date.now(),updatedAt:Date.now(),baseUrl:null,models:null,isManaged:!1})}catch{i(`failed`),l(`Failed to complete sign-in. Please try again.`)}}function p(){i(`idle`),o(``),l(null)}return(0,$.jsxs)(`div`,{className:`space-y-3 rounded-lg border border-[var(--border-base)] p-4`,children:[(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`Connect your ChatGPT subscription to use OpenAI models without an API key.`}),n===`idle`||n===`paste_url`?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsxs)(c,{variant:`body-small-default`,as:`p`,className:n===`paste_url`?`text-[var(--content-tertiary)] line-through`:`text-[var(--content-secondary)]`,children:[`1. Click “Sign in with ChatGPT”`,n===`idle`?` below`:null,` to open a popup`]}),(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-secondary)]`,children:`2. Sign in, then you'll land on an error page — that's expected`}),(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-secondary)]`,children:`3. Copy the full URL from that page's address bar and paste it below`})]}),n===`idle`?(0,$.jsx)(r,{variant:`outlined`,size:`compact`,onClick:()=>void u(),children:`Sign in with ChatGPT`}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(_,{value:a,onChange:e=>{o(e.target.value),l(null)},placeholder:`Paste callback URL here...`,fullWidth:!0}),(0,$.jsx)(`div`,{className:`flex justify-end`,children:(0,$.jsx)(r,{variant:`primary`,size:`compact`,disabled:!a.trim(),onClick:()=>void d(),children:`Complete Sign In`})})]})]}):null,n===`starting`?(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(f,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,$.jsx)(c,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:`Starting sign-in...`})]}):null,n===`exchanging`?(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(f,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,$.jsx)(c,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:`Completing sign-in...`})]}):null,n===`completed`?(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-[var(--system-positive-strong)]`,children:`ChatGPT subscription connected successfully.`}):null,s?(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:s}):null,n===`failed`?(0,$.jsx)(r,{variant:`outlined`,size:`compact`,onClick:p,children:`Try Again`}):null]})}var Ct=new Set(Object.entries(R).flatMap(([e,t])=>[e.toLowerCase(),t.toLowerCase()])),wt={reserved:`That name belongs to a built-in provider. Pick another.`,duplicate:`A custom provider with this name already exists.`};function Tt(e,t,n){let r=e.trim().toLowerCase();return r?Ct.has(r)?`reserved`:(t??[]).some(e=>e.provider===`openai-compatible`&&e.name!==n&&(e.label?.trim()||e.name).toLowerCase()===r)?`duplicate`:null:null}function Et(e){return e.toLowerCase().split(/[^a-z0-9]+/).filter(Boolean).join(`-`)}function Dt(e){return Et(e)}function Ot(e,t){let n=new Set(t.map(e=>e.toLowerCase()));if(!n.has(e.toLowerCase()))return e;let r=2,i=`${e}-${r}`;for(;n.has(i.toLowerCase());)r+=1,i=`${e}-${r}`;return i}function kt(e,t){return{name:R[e]??e,key:Ot(`${Dt(e)}-personal`,t)}}function At(e,t){return{name:e,key:Ot(Dt(e),t)}}function jt({apiKeyValue:e,onApiKeyChange:t,credential:n,onCredentialChange:i,isLoadingCredential:a,apiKeyPlaceholder:o,provider:s,providerCredentials:l,showAdvancedSection:u,onError:p}){let[m,h]=(0,F.useState)(!1),[g,v]=(0,F.useState)(!1),[y,b]=(0,F.useState)(``);return(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:`API Key`}),a?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 h-8`,children:[(0,$.jsx)(f,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,$.jsx)(c,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:`Loading…`})]}):(0,$.jsx)(_,{type:`password`,value:e,onChange:e=>{t(e.target.value),p(null)},placeholder:o,fullWidth:!0})]}),u&&(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`button`,{type:`button`,"aria-expanded":m,onClick:()=>h(e=>!e),className:`flex items-center gap-1 text-body-small-default text-[var(--content-secondary)] w-full text-left`,children:[(0,$.jsx)(d,{className:`h-4 w-4 transition-transform ${m?`rotate-90`:``}`}),(0,$.jsx)(`span`,{children:`Advanced`}),(0,$.jsx)(`span`,{className:`text-[var(--content-tertiary)] ml-1`,children:`· Credential reference`})]}),m&&(0,$.jsxs)(`div`,{className:`mt-2 space-y-3`,children:[(()=>{let e=l.map(e=>{let t=`credential/${e.service}/${e.field}`;return{label:t,value:t}}),t=e.some(e=>e.value===n),r=n&&!t?[{label:n,value:n},...e]:e;return r.length===0?null:(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Credential Reference`}),(0,$.jsx)(x,{"aria-label":`Credential reference`,value:n,onChange:e=>{i(e)},options:r})]})})(),g&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`New Credential Name`}),(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsx)(_,{value:y,onChange:e=>b(e.target.value),placeholder:`e.g. team-key`,fullWidth:!0}),(0,$.jsx)(r,{variant:`primary`,size:`compact`,disabled:!y.trim(),onClick:()=>{let e=y.trim();e&&(i(`credential/${s}/${e}`),v(!1),b(``))},children:`Use`})]})]}),(0,$.jsx)(`div`,{className:`flex justify-end`,children:(0,$.jsx)(r,{variant:`ghost`,size:`compact`,onClick:()=>{g?(v(!1),b(``)):v(!0)},children:g?`Cancel`:`+ New Credential`})})]})]})]})}var Mt=`•`.repeat(8);function Nt(e,t){return t?Mt:e}function Pt(e){let t=[];for(let n of e)if(n.type===`api_key`)t.push({service:n.name,field:`api_key`});else if(n.type===`credential`){let e=n.name.lastIndexOf(`:`);if(e>=0){let r=n.name.slice(0,e),i=n.name.slice(e+1);r&&i&&t.push({service:r,field:i})}}return t}function Ft({assistantId:e,enabled:n=!0}){let r=M(),i=a({...P({path:{assistant_id:e}}),enabled:!!e&&n&&r,select:e=>Pt(e.secrets),retry:t,staleTime:3e4});return{credentials:i.data??[],isLoading:i.isLoading}}function It({assistantId:e,existingNames:t,connections:n,defaultProviderType:a,onCreated:o,onCancel:s,variant:l=`modal`}){let u=ot(),f=a&&u.includes(a)?a:u[0]??`anthropic`,p=kt(f,t),[m,h]=(0,F.useState)(f===`openai-compatible`?``:p.name),[g,v]=(0,F.useState)(p.key),[S,C]=(0,F.useState)(f),w=S===`chatgpt`,T=w?`openai`:S,E=w?`oauth_subscription`:T===`ollama`?`none`:`api_key`,[D,O]=(0,F.useState)(()=>f===`ollama`?``:f===`openai-compatible`?`credential/${p.key}/api_key`:`credential/${f}/api_key`),[k,te]=(0,F.useState)(``),[j,M]=(0,F.useState)(``),[N,ne]=(0,F.useState)(!1),[re,P]=(0,F.useState)(null),[ae,I]=(0,F.useState)(!1),L=T===`openai-compatible`,z=(0,F.useMemo)(()=>{let e=!w&&!u.includes(T)?[...u,T]:[...u],t=e.indexOf(`openai`);return t>=0&&e.splice(t+1,0,`chatgpt`),e},[w,T,u]),oe=(0,F.useRef)(!1);function se(e){oe.current=!0,h(e)}let[ce,B]=(0,F.useState)(``),[le,V]=(0,F.useState)(!1),H=i(),U=(0,F.useMemo)(()=>Xe(D),[D]),ue=E===`api_key`&&U!==null,{hasStoredCredential:W,isLoading:de}=xt({assistantId:e,credentialKind:`credential`,credentialName:U?`${U.service}:${U.field}`:``,enabled:ue}),{credentials:fe}=Ft({assistantId:e,enabled:!0}),G=L?Tt(m,n):null,pe=g.trim().length>0&&(!L||m.trim().length>0)&&G===null;async function me(){if(pe){ne(!0),P(null);try{let t;if(E===`api_key`){let n=D.trim()||`credential/${L?g:T}/api_key`,r=ce.trim();if(r){V(!0);try{let t=Xe(n);await ee({path:{assistant_id:e},body:t?{type:`credential`,name:`${t.service}:${t.field}`,value:r}:{type:`api_key`,name:T,value:r},throwOnError:!0});let i=bt(e,`credential`,t?`${t.service}:${t.field}`:``);H.setQueryData(i,!0),H.invalidateQueries({queryKey:ie({path:{assistant_id:e}})})}catch{P(`Failed to save API key. Please try again.`);return}finally{V(!1)}t={type:`api_key`,credential:n}}else if(W)t={type:`api_key`,credential:n};else if(L)t={type:`none`};else{P(`Enter an API key or select an existing credential.`);return}}else if(E===`oauth_subscription`){P(`Use the "Sign in with ChatGPT" button to connect your subscription.`);return}else t={type:`none`};let n=m.trim()||null,r={name:g.trim(),provider:T,auth:t,...n!==null&&{label:n},...L&&{base_url:k.trim()||null,models:j.trim()?j.split(`,`).map(e=>({id:e.trim()})).filter(e=>e.id):null}},{data:i,error:a,response:s}=await A({path:{assistant_id:e},body:r});if(!s?.ok){P(Qe(s?.status,a)??Ze(s?.status));return}if(!i){P(`Server returned an empty response. Please try again.`);return}b.success(`Provider connected`),o(i)}catch{P(`Failed to save provider. Please try again.`)}finally{ne(!1)}}}let he=fe.filter(e=>e.service===T),ge=he.length>0,_e=Nt(`Enter your API key`,W),K=ae,ve=(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`button`,{type:`button`,"aria-expanded":K,onClick:()=>I(e=>!e),className:`flex items-center gap-1 text-body-small-default text-[var(--content-secondary)] w-full text-left`,children:[(0,$.jsx)(d,{className:`h-4 w-4 transition-transform ${K?`rotate-90`:``}`}),(0,$.jsx)(`span`,{children:`Advanced`})]}),K&&(0,$.jsx)(`div`,{className:`mt-2 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)(_,{value:m,onChange:e=>se(e.target.value),placeholder:`e.g. My Anthropic Key`,fullWidth:!0})]})})]}),q=(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)(x,{"aria-label":`Provider`,value:S,onChange:e=>{if(C(e),P(null),e===`chatgpt`)return;let{name:n,key:r}=kt(e,t);oe.current||h(e===`openai-compatible`?``:n),v(r),O(e===`ollama`?``:e===`openai-compatible`?`credential/${r}/api_key`:`credential/${e}/api_key`)},options:[...z.filter(e=>e!==`openai-compatible`).map(e=>({value:e,label:R[e]})),...z.includes(`openai-compatible`)?[{value:`openai-compatible`,label:`Custom provider`}]:[]]}),L?(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`Custom providers connect to any endpoint that serves the OpenAI-compatible API — xAI, Groq, LM Studio, vLLM, and similar.`}):null]}),L&&(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:`Name`}),(0,$.jsx)(_,{value:m,onChange:e=>se(e.target.value),placeholder:`xAI`,fullWidth:!0}),G?(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:wt[G]}):null]}),(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)(_,{value:k,onChange:e=>te(e.target.value),placeholder:`https://api.x.ai/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)(_,{value:j,onChange:e=>M(e.target.value),placeholder:`model-1, model-2`,fullWidth:!0}),(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`Comma-separated model identifiers exposed by your endpoint.`})]})]}),E===`api_key`&&(0,$.jsx)(jt,{apiKeyValue:ce,onApiKeyChange:B,credential:D,onCredentialChange:O,isLoadingCredential:de,apiKeyPlaceholder:_e,provider:T,providerCredentials:he,showAdvancedSection:ge,onError:P}),L&&E===`api_key`?(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`Leave the key empty for local endpoints — they connect keyless.`}):null,E===`oauth_subscription`&&(0,$.jsx)(St,{assistantId:e,onConnected:o}),!w&&!L&&ve,re&&(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:re})]}),J=(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(r,{variant:`ghost`,size:`compact`,onClick:s,children:`Cancel`}),!w&&(0,$.jsx)(r,{variant:`primary`,size:`compact`,disabled:!pe||N||le,onClick:()=>void me(),children:N?`Saving…`:L&&m.trim()?`Add ${m.trim()}`:`Add`})]});return l===`inline`?(0,$.jsxs)(`div`,{className:`space-y-4`,children:[q,(0,$.jsx)(`div`,{className:`flex justify-end gap-2`,children:J})]}):(0,$.jsxs)(y.Content,{size:`md`,children:[(0,$.jsxs)(y.Header,{children:[(0,$.jsx)(y.Title,{children:`Add Provider`}),(0,$.jsx)(y.Description,{children:`Choose a provider and paste its API key.`})]}),(0,$.jsx)(y.Body,{children:q}),(0,$.jsx)(y.Footer,{children:J})]})}var Lt=`__create_new_provider__`;function Rt({editor:e,assistantId:t,connections:n,variant:r}){let i=j(),a=e.effectiveMode===`create`,o=r===`panel`,[s,l]=(0,F.useState)(!1),u=s||!!e.keyError&&e.getDirty(),f=(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:a?`Name`:`Display Name`}),(0,$.jsx)(_,{type:`text`,value:e.label,onChange:t=>e.handleLabelChange(t.target.value),placeholder:`e.g. Fast & Cheap`,disabled:e.isReadOnly,fullWidth:!0})]}),p=(0,$.jsx)(g,{label:(0,$.jsxs)($.Fragment,{children:[`Description`,` `,(0,$.jsx)(`span`,{className:`text-[var(--content-disabled)]`,children:`(optional)`})]}),value:e.description,onChange:t=>e.setDescription(t.target.value),placeholder:`Describe when to use this profile`,disabled:e.isReadOnly,rows:2,fullWidth:!0,className:`resize-none`}),m=(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Key`}),(0,$.jsx)(_,{type:`text`,value:e.key,onChange:t=>e.handleKeyChange(t.target.value),placeholder:`e.g. fast-cheap`,disabled:e.isReadOnly||e.effectiveMode===`edit`,fullWidth:!0}),e.keyError&&!e.isReadOnly?(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:e.keyError}):null]}),h=!o&&(!e.isReadOnly||e.status!==`active`)?(0,$.jsx)(v,{checked:e.status===`active`,onChange:t=>e.setStatus(t?`active`:`disabled`),label:`Active`,className:`touch-mobile:mt-2 touch-mobile:[&_button]:h-7 touch-mobile:[&_button]:w-10 touch-mobile:[&_button>span]:h-6 touch-mobile:[&_button>span]:w-6`}):null,y=(0,$.jsx)(Je,{visibility:e.visibility,isReadOnly:e.isReadOnly,model:e.model,selectedModel:e.selectedModel,defaultMaxOutputTokens:e.defaultMaxOutputTokens,defaultContextWindowMaxInputTokens:e.defaultContextWindowMaxInputTokens,maxTokens:e.maxTokens,onMaxTokensChange:e.setMaxTokens,contextWindowMaxInputTokens:e.contextWindowMaxInputTokens,onContextWindowChange:e.setContextWindowMaxInputTokens,effort:e.effort,onEffortChange:e.setEffort,speed:e.speed,onSpeedChange:e.setSpeed,verbosity:e.verbosity,onVerbosityChange:e.setVerbosity,temperatureEnabled:e.temperatureEnabled,onTemperatureEnabledChange:e.setTemperatureEnabled,temperature:e.temperature,onTemperatureChange:e.setTemperature,topPEnabled:e.topPEnabled,onTopPEnabledChange:e.setTopPEnabled,topP:e.topP,onTopPChange:e.setTopP,thinkingEnabled:e.thinkingEnabled,onThinkingEnabledChange:e.setThinkingEnabled,thinkingStreamThinking:e.thinkingStreamThinking,onThinkingStreamThinkingChange:e.setThinkingStreamThinking,thinkingLevel:e.thinkingLevel,onThinkingLevelChange:e.setThinkingLevel}),b=e.saveError?(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:e.saveError}):null,S=(0,F.useMemo)(()=>{let t=ft(ct(e.effectiveConnections,i),e.effectiveConnections,e=>R[e]??e).map(({value:e,label:t,meta:n})=>({value:e,label:t,suffix:n?(0,$.jsx)(vt,{text:n}):void 0}));return t.push({value:Lt,label:`+ Create new provider`}),t},[i,e.effectiveConnections]),C=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{id:`profile-editor-provider-label`,className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,$.jsx)(x,{value:e.creatingProvider?Lt:e.provider===`openai-compatible`&&e.providerConnection?ut(e.providerConnection):e.provider,onChange:t=>{if(t===Lt){e.setCreatingProvider(!0),e.setNewProviderNote(!1);return}if(!t)return;e.setCreatingProvider(!1);let n=dt(t);if(n){e.provider===`openai-compatible`?e.setModel(``):e.handleProviderChange(V),e.setProviderConnection(n);return}e.handleProviderChange(t)},placeholder:`Select a provider…`,"aria-labelledby":`profile-editor-provider-label`,options:S}),e.newProviderNote?(0,$.jsx)(c,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`New provider connection will show up in the Providers section.`}):null]}),e.creatingProvider?(0,$.jsx)(It,{variant:`inline`,assistantId:t,existingNames:e.effectiveConnections.map(e=>e.name),connections:e.effectiveConnections,defaultProviderType:e.provider||void 0,onCreated:e.handleProviderCreated,onCancel:()=>e.setCreatingProvider(!1)}):(0,$.jsx)(yt,{provider:e.provider,model:e.model,providerConnection:e.providerConnection,onProviderChange:e.handleProviderChange,onModelChange:e.handleModelChange,onConnectionChange:e.handleConnectionChange,connections:e.effectiveConnections,isReadOnly:e.isReadOnly,availableConnectionsForProvider:e.availableConnectionsForProvider,connectionNotFound:e.connectionNotFound,hideProviderField:!0})]});if(a){let t=e.model!==``;return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[f,C,p,h,o?t&&(0,$.jsxs)(`div`,{className:`space-y-4`,children:[m,y]}):t&&(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`button`,{type:`button`,"aria-expanded":u,onClick:()=>l(e=>!e),className:`flex items-center gap-1 text-body-small-default text-[var(--content-secondary)] w-full text-left`,children:[(0,$.jsx)(d,{className:`h-4 w-4 transition-transform ${u?`rotate-90`:``}`}),(0,$.jsx)(`span`,{children:`Advanced`})]}),u?(0,$.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[m,y]}):null]}),b]})}return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[f,p,m,h,(0,$.jsx)(yt,{provider:e.provider,model:e.model,providerConnection:e.providerConnection,onProviderChange:e.handleProviderChange,onModelChange:e.handleModelChange,onConnectionChange:e.handleConnectionChange,connections:n,isReadOnly:e.isReadOnly,availableConnectionsForProvider:e.availableConnectionsForProvider,connectionNotFound:e.connectionNotFound}),y,b]})}function zt(e,t,n){if(e){let n=B(e).find(e=>e.id===t);if(n)return n.displayName}for(let e of n??[]){let n=(e.models??[]).find(e=>e.id===t);if(n)return n.displayName??n.id}let r=t.lastIndexOf(`/`);return r>=0?t.slice(r+1):t}function Bt(e,t,n){let r=(0,F.useRef)(!1),i=(0,F.useRef)(!1);return{handleLabelChange:(0,F.useCallback)(a=>{i.current=!0,t(a),e===`create`&&!r.current&&n(Et(a))},[e,t,n]),handleKeyChange:(0,F.useCallback)(e=>{r.current=!0,i.current=!0,n(e)},[n]),resetDirty:(0,F.useCallback)(()=>{r.current=!1,i.current=!1},[]),getDirty:(0,F.useCallback)(()=>i.current,[])}}var Vt=`0.10.12`;async function Ht(e,t){await E(t);let n=C.getState().assistantId;return e!=null&&n!==e?!1:T(Vt)}function Ut(e,t){return e===t?!0:e===`vellum`&&ue.has(t)}function Wt({mode:e,profileName:t,initialValues:n,existingNames:r,connections:o,assistantId:s,onSave:c}){let[l,u]=(0,F.useState)(e),d=n?.invariant===!0&&l!==`create`,f=l===`view`||d,p=n?.status??`active`,[m,h]=(0,F.useState)(n?.label??``),[g,_]=(0,F.useState)(n?.description??``),[v,y]=(0,F.useState)(e===`create`?``:t??``),[b,x]=(0,F.useState)(n?.provider&&n.provider!==`chatgpt`?n.provider:``),[S,C]=(0,F.useState)(n?.model??``),[w,T]=(0,F.useState)(n?.provider_connection??``),[E,D]=(0,F.useState)(n?.status??`active`),[O,k]=(0,F.useState)([]),[ee,A]=(0,F.useState)(!1),[te,j]=(0,F.useState)(null),[M,N]=(0,F.useState)(n?.maxTokens??null),[P,ie]=(0,F.useState)(n?.contextWindow?.maxInputTokens??null),[ae,I]=(0,F.useState)(n?.effort??`inherit`),[L,R]=(0,F.useState)(n?.speed??`standard`),[z,oe]=(0,F.useState)(n?.verbosity??`medium`),[le,V]=(0,F.useState)(typeof n?.temperature==`number`),[H,ue]=(0,F.useState)(typeof n?.temperature==`number`?n.temperature:.7),[W,de]=(0,F.useState)(typeof n?.topP==`number`),[fe,G]=(0,F.useState)(typeof n?.topP==`number`?n.topP:.95),pe=f&&E!==p,[me,he]=(0,F.useState)(n?.thinking?.enabled??!1),[ge,_e]=(0,F.useState)(n?.thinking?.streamThinking??!1),[K,ve]=(0,F.useState)(Pe(n?.thinking?.level)?n.thinking.level:Ge),q=(0,F.useMemo)(()=>b===`vellum`?se(S):null,[b,S]),J=q?.model??S,ye=(0,F.useMemo)(()=>b?B(b).find(e=>e.id===J)??null:null,[b,J]),{data:be}=a({...re({path:{assistant_id:s}}),staleTime:3e4}),xe=be?.llm?.default?.maxTokens,Se=be?.llm?.default?.contextWindow?.maxInputTokens,Y=(0,F.useMemo)(()=>ze(b===`vellum`?q?.provider??ce(S)??n?.provider??``:b,J),[b,S,J,q,n?.provider]),Ce=(0,F.useMemo)(()=>{let e=o??[];if(O.length===0)return e;let t=new Set(e.map(e=>e.name));return[...e,...O.filter(e=>!t.has(e.name))]},[o,O]),X=(0,F.useMemo)(()=>b?Ce.filter(e=>Ut(e.provider,b)):[],[b,Ce]),we=w!==``&&!X.some(e=>e.name===w),{handleLabelChange:Te,handleKeyChange:Ee,resetDirty:Z,getDirty:De}=Bt(l,h,y),Oe=i(),[ke,Ae]=(0,F.useState)(!1),[je,Me]=(0,F.useState)(!1);(0,F.useEffect)(()=>{n?.provider_connection===`vellum`&&b===(n?.provider??``)&&o?.find(e=>e.name===n.provider_connection)?.provider===`vellum`&&x(U)},[o,b,n]),(0,F.useEffect)(()=>{Z(),Ae(!1),Me(!1),k([])},[t,e,Z]);function Ne(e){if(e===b)return;x(e),C(``);let t=Ce.filter(t=>Ut(t.provider,e));T(t.length===1?t[0].name:``),N(null),ie(null),I(`inherit`),R(`standard`),oe(`medium`),V(!1),ue(.7),de(!1),G(.95),he(!1),_e(!1),ve(Ge)}function Fe(e){if(T(e),b&&B(b).length===0&&S)if(e===``)new Set(X.flatMap(e=>(e.models??[]).map(e=>e.id))).has(S)||C(``);else{let t=X.find(t=>t.name===e);new Set((t?.models??[]).map(e=>e.id)).has(S)||C(``)}}function Ie(e){if(e!==S&&(C(e),N(null),ie(null),l===`create`&&e&&!De())){let{name:t,key:n}=At(zt(b||void 0,e,X),r);h(t),y(n)}}function Le(e){let t=e.provider;t!==`vellum`&&(k(t=>t.some(t=>t.name===e.name)?t:[...t,e]),x(t),T(e.name),C(``),Ae(!1),Me(!0),Oe.invalidateQueries({queryKey:ne({path:{assistant_id:s}})}))}let Q=v.trim(),Re=Q.length===0,Be=/\s/.test(v),Ve=l===`create`?r.includes(Q):r.filter(e=>e!==t).includes(Q),$=b.length===0,He=b.length>0&&S.length===0,Ue=Re||Be||Ve||$||He,We=Re?`Key is required`:Be?`Key cannot contain whitespace`:Ve?`A profile with this key already exists`:null;async function Ke(){if(!(Ue&&!f)){if(f){if(!pe)return;A(!0),j(null);try{await c(Q,{status:`active`},{mode:`merge`})}catch{j(`Failed to save profile. Please try again.`)}finally{A(!1)}return}A(!0),j(null);try{let e={},t=w===``&&X.length===1?X[0].name:w,r=we?``:t,i=b===`vellum`&&await Ht(s),a=b===`vellum`?i?U:q?.provider??ce(S)??n?.provider??``:b,o=J,u=i?``:r;l===`edit`?(e.label=m.trim()||null,e.description=g.trim()||null,e.provider=a||null,e.model=o||null,e.provider_connection=u||null):(m.trim()&&(e.label=m.trim()),g.trim()&&(e.description=g.trim()),a&&(e.provider=a),o&&(e.model=o),u&&(e.provider_connection=u)),Y.maxTokens&&M!==null&&(e.maxTokens=M),Y.contextWindow&&P!==null&&(e.contextWindow={maxInputTokens:P}),Y.effort&&ae!==`inherit`&&(e.effort=ae),Y.speed&&L!==`standard`&&(e.speed=L),Y.verbosity&&(e.verbosity=z),Y.temperature&&(le?e.temperature=H:l===`edit`&&(e.temperature=null)),Y.topP&&(W?e.topP=fe:l===`edit`&&(e.topP=null)),Y.thinking&&(e.thinking={enabled:me,...me?{streamThinking:ge}:{}}),Y.thinkingLevel&&K!==`default`&&(e.thinking={enabled:!0,level:K}),(l===`edit`||E!==`active`)&&(e.status=E),await c(Q,e)}catch{j(`Failed to save profile. Please try again.`)}finally{A(!1)}}}function qe(){u(`create`),y(``),Z()}return{effectiveMode:l,isReadOnly:f,isInvariant:d,hasViewModeChanges:pe,label:m,description:g,key:v,provider:b,model:S,providerConnection:w,status:E,saving:ee,saveError:te,keyError:We,isInvalid:Ue,maxTokens:M,contextWindowMaxInputTokens:P,effort:ae,speed:L,verbosity:z,temperatureEnabled:le,temperature:H,topPEnabled:W,topP:fe,thinkingEnabled:me,thinkingStreamThinking:ge,thinkingLevel:K,visibility:Y,selectedModel:ye,defaultMaxOutputTokens:xe,defaultContextWindowMaxInputTokens:Se,effectiveConnections:Ce,availableConnectionsForProvider:X,connectionNotFound:we,creatingProvider:ke,newProviderNote:je,setDescription:_,setStatus:D,setMaxTokens:N,setContextWindowMaxInputTokens:ie,setEffort:I,setSpeed:R,setVerbosity:oe,setTemperatureEnabled:V,setTemperature:ue,setTopPEnabled:de,setTopP:G,setThinkingEnabled:he,setThinkingStreamThinking:_e,setThinkingLevel:ve,setCreatingProvider:Ae,setNewProviderNote:Me,handleLabelChange:Te,handleKeyChange:Ee,getDirty:De,handleProviderChange:Ne,handleConnectionChange:Fe,handleModelChange:Ie,handleProviderCreated:Le,setProviderConnection:T,setModel:C,handleSave:Ke,switchToSaveAsNew:qe}}var Gt=`/assistant/assets/pcm-downsample-worklet-CwNZrVLe.js`;function Kt(){if(!(typeof window>`u`))return window.AudioContext??window.webkitAudioContext}function qt(e){let t=Kt();if(!t)throw Error(`Web Audio API is not available in this environment`);return new t(e)}var Jt=`pcm-downsample`,Yt=1600,Xt=16e3;function Zt(){return S()?window.vellum?.helper?.dictation:void 0}function Qt(){let e=Zt();return!!e?.transcribe&&!!e.onTranscribed}var $t=null,en=null;async function tn(){return $t||($t=qt(),en=$t.audioWorklet.addModule(Gt)),$t.state!==`running`&&await $t.resume(),await en,$t}async function nn(e,t){try{let n=await tn(),r=n.createMediaStreamSource(e),i=new AudioWorkletNode(n,Jt,{numberOfInputs:1,numberOfOutputs:0,channelCount:1}),a=[],o=0,s=0;return i.port.onmessage=e=>{let r=new Int16Array(e.data);if(r.length===0||(a.push(r),o+=r.length,o<Yt))return;let i=new Int16Array(o),c=0;for(let e of a)i.set(e,c),c+=e.length;a=[],o=0,s+=1,(s===1||s%50==0)&&console.info(`dictation: pushed audio chunk #${s} (${i.byteLength} bytes, context=${n.state})`),t(i.buffer)},r.connect(i),console.info(`dictation: audio pump started (context=${n.state})`),()=>{i.port.onmessage=null,i.disconnect(),r.disconnect()}}catch(e){return console.warn(`native-dictation-partials: audio pump failed`,e),null}}var rn=8e3;async function an(e){let t=Zt();if(!t?.transcribe||!t.onTranscribed)return null;let n;try{n=await on(e)}catch(e){let t=e instanceof DOMException?`${e.name}: ${e.message}`:e;return console.warn(`dictation: blob decode for native transcribe failed`,t),null}if(n.byteLength===0)return null;let r=null,i=t.onTranscribed(e=>{r?.(e.text||null)});try{let e=await t.transcribe(n);if(!e.ok)return console.info(`dictation: native transcribe unavailable:`,e.reason),null;let i=await new Promise(e=>{r=e,setTimeout(()=>e(null),rn)});return console.info(`dictation: native transcribe ${i?`chars=${i.length}`:`produced no text`}`),i}catch(e){return console.warn(`dictation: native transcribe failed`,e),null}finally{i()}}async function on(e){let t=await e.arrayBuffer(),n=await new OfflineAudioContext(1,1,Xt).decodeAudioData(t),r=n.numberOfChannels,i=n.length,a=n.getChannelData(0);if(r>1){let e=new Float32Array(i);for(let t=0;t<r;t++){let a=n.getChannelData(t);for(let t=0;t<i;t++)e[t]+=a[t]/r}a=e}let o=new Int16Array(i);for(let e=0;e<i;e++){let t=a[e],n=t<-1?-1:t>1?1:t;o[e]=n<0?n*32768:n*32767}return o.buffer}var sn=4e3;async function cn(e,t){let n=Zt();if(!n)return null;let r=n.pushAudioChunk?.bind(n),i=t?.stream,a=!!i&&!!r,o=n.onPartial(t=>{e(t.text)}),s=null,c=null,l=n.onFinalized?.(e=>{s=e.text||null,c?.(s)})??null,u=()=>{l?.(),o()};try{let e=await n.setPartials(!0,void 0,a);if(!e.ok)return console.info(`native-dictation-partials: unavailable:`,e.reason),u(),null}catch(e){return console.warn(`native-dictation-partials: setPartials failed`,e),u(),null}let d=null;if(a&&(d=await nn(i,e=>r(e)),!d))return u(),n.setPartials(!1).catch(()=>{}),null;let f=null;return()=>f||(d?.(),o(),n.setPartials(!1).catch(()=>{}),f=(async()=>{let e=s;return!e&&l&&(e=await new Promise(e=>{c=e,setTimeout(()=>e(null),sn)})),l?.(),console.info(e===null?`dictation: native finalized not received`:`dictation: native finalized chars=${e.length}`),e})(),f)}var ln=[{id:`vellum`,displayName:`Vellum`,subtitle:`Text-to-speech through your Vellum account — billed to Vellum credits, no separate API key needed.`,supportsVoiceSelection:!1,apiKeyPlaceholder:`Connected via your Vellum account`,credentialsGuide:{description:`Connect this assistant to your Vellum account; managed speech uses that connection instead of a provider API key.`,url:`https://platform.vellum.ai/`,linkLabel:`Open Vellum Platform`}},{id:`elevenlabs`,displayName:`ElevenLabs`,subtitle:`High-quality voice synthesis for conversations and read-aloud. Requires an ElevenLabs API key.`,supportsVoiceSelection:!0,apiKeyPlaceholder:`sk_…`,credentialsGuide:{description:`Sign in to ElevenLabs, go to your Profile, and copy your API key.`,url:`https://elevenlabs.io/app/settings/api-keys`,linkLabel:`Open ElevenLabs API Keys`}},{id:`fish-audio`,displayName:`Fish Audio`,subtitle:`Natural-sounding voice synthesis with custom voice cloning. Requires a Fish Audio API key and voice reference ID.`,supportsVoiceSelection:!0,apiKeyPlaceholder:`Enter your Fish Audio API key`,credentialsGuide:{description:`Sign in to Fish Audio, navigate to API Keys in your dashboard, and create a new key.`,url:`https://fish.audio/app/api-keys/`,linkLabel:`Open Fish Audio API Keys`}},{id:`deepgram`,displayName:`Deepgram`,subtitle:`Fast, accurate text-to-speech synthesis. Uses the same API key as Deepgram speech-to-text.`,supportsVoiceSelection:!1,apiKeyPlaceholder:`Enter your Deepgram API key`,credentialsGuide:{description:`Sign in to Deepgram, navigate to your API Keys page, and create or copy an existing key. This is the same key used for speech-to-text.`,url:`https://console.deepgram.com/`,linkLabel:`Open Deepgram Console`}},{id:`xai`,displayName:`xAI`,subtitle:`Text-to-speech from xAI with expressive voices (eve, ara, rex, sal, leo). Requires an xAI API key.`,supportsVoiceSelection:!1,apiKeyPlaceholder:`Enter your xAI API key`,credentialsGuide:{description:`Sign in to the xAI console, navigate to API Keys, and create a new key.`,url:`https://console.x.ai/`,linkLabel:`Open xAI Console`}}],un=`macos-native`,dn=[{id:`vellum`,displayName:`Vellum`,subtitle:`Transcription through your Vellum account — billed to Vellum credits, no separate API key needed.`},{id:`deepgram`,displayName:`Deepgram`,subtitle:`Fast, accurate speech-to-text transcription. Uses the same API key as Deepgram text-to-speech.`,apiKeyPlaceholder:`Enter your Deepgram API key`,credentialsGuide:{description:`Sign in to Deepgram, navigate to your API Keys page, and create or copy an existing key. This is the same key used for text-to-speech.`,url:`https://console.deepgram.com/`,linkLabel:`Open Deepgram Console`}},{id:`openai`,displayName:`OpenAI`,subtitle:`OpenAI Whisper transcription. Requires an OpenAI API key.`,apiKeyPlaceholder:`sk-…`,credentialsGuide:{description:`Sign in to the OpenAI platform, navigate to API Keys, and create a new secret key.`,url:`https://platform.openai.com/api-keys`,linkLabel:`Open OpenAI API Keys`}},{id:un,displayName:`macOS Native Dictation`,subtitle:`Apple's on-device speech recognition, running locally through the macOS helper. Works offline and needs no API key.`,requiresNativeDictation:!0,setupWarning:`Requires macOS Dictation to be turned on: open System Settings → Keyboard, then enable Dictation. macOS downloads the on-device speech model the first time Dictation is enabled — without it, voice input produces no transcript.`}],fn=[{id:`mailgun`,displayName:`Mailgun`,setupSkill:`mailgun-setup`,docsUrl:`https://www.mailgun.com/`},{id:`resend`,displayName:`Resend`,setupSkill:`resend-setup`,docsUrl:`https://resend.com/`}],pn=[`gemini-3.1-flash-image-preview`,`gemini-3-pro-image-preview`,`gpt-image-2`],mn={"gemini-3.1-flash-image-preview":`Nano Banana 2`,"gemini-3-pro-image-preview":`Nano Banana Pro`,"gpt-image-2":`GPT Image 2`},hn=[`vellum`,`gemini`,`openai`],gn={vellum:`Vellum`,gemini:`Gemini`,openai:`OpenAI`};function _n(e){return e===`vellum`?[...pn]:pn.filter(t=>vn(t)===e)}function vn(e){return e.startsWith(`gpt-`)||e.startsWith(`dall-e-`)?`openai`:(e.startsWith(`gemini-`),`gemini`)}var yn=`vellum:ai:imageGenProvider`,bn=`vellum:ai:imageGenModel`,xn=`vellum:ai:webSearchProvider`,Sn=`vellum:ai:webFetchProvider`,Cn=`vellum:ai:emailMode`,wn=`vellum:ai:emailByoProvider`,Tn=`vellum:voice:ttsProvider`,En=`vellum:voice:ttsApiKey:`,Dn=`vellum:voice:ttsVoiceId:`,On=`vellum:voice:sttProvider`,kn=`vellum:voice:sttApiKey:`;function An({value:e,size:t=`default`,className:n,...r}){let i=t===`compact`;return(0,$.jsxs)(`button`,{type:`button`,className:s(`flex items-center gap-2 rounded-md border border-[var(--field-border)] bg-[var(--field-bg)] text-left text-[var(--content-default)] transition-colors focus:outline-none data-[state=open]:border-[var(--border-active)]`,i?`h-7 min-w-44 px-2.5 text-body-small-default`:`h-9 w-full px-3 text-body-medium-lighter`,n),...r,children:[(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e}),(0,$.jsx)(u,{"aria-hidden":!0,className:s(`shrink-0 text-[var(--content-tertiary)]`,i?`h-3 w-3`:`h-3.5 w-3.5`)})]})}function jn(e){return e.nativeLabel?`${e.label} (${e.nativeLabel})`:e.label}var Mn=`multi`,Nn=[{code:``,label:`English (default)`,description:`Speech recognition defaults to English.`},{code:Mn,label:`Multilingual`,description:`Follows you between languages mid-sentence: English, Spanish, French, German, Hindi, Russian, Portuguese, Japanese, Italian, and Dutch.`},{code:`ar`,label:`Arabic`,nativeLabel:`العربية`,extended:!0},{code:`be`,label:`Belarusian`,nativeLabel:`Беларуская`,extended:!0},{code:`bn`,label:`Bengali`,nativeLabel:`বাংলা`,extended:!0},{code:`bs`,label:`Bosnian`,nativeLabel:`Bosanski`,extended:!0},{code:`bg`,label:`Bulgarian`,nativeLabel:`Български`,extended:!0},{code:`ca`,label:`Catalan`,nativeLabel:`Català`,extended:!0},{code:`zh`,label:`Chinese`,nativeLabel:`中文`,extended:!0},{code:`hr`,label:`Croatian`,nativeLabel:`Hrvatski`,extended:!0},{code:`cs`,label:`Czech`,nativeLabel:`Čeština`,extended:!0},{code:`da`,label:`Danish`,nativeLabel:`Dansk`,extended:!0},{code:`nl`,label:`Dutch`,nativeLabel:`Nederlands`},{code:`et`,label:`Estonian`,nativeLabel:`Eesti`,extended:!0},{code:`fi`,label:`Finnish`,nativeLabel:`Suomi`,extended:!0},{code:`fr`,label:`French`,nativeLabel:`Français`},{code:`de`,label:`German`,nativeLabel:`Deutsch`},{code:`el`,label:`Greek`,nativeLabel:`Ελληνικά`,extended:!0},{code:`gu`,label:`Gujarati`,nativeLabel:`ગુજરાતી`,extended:!0},{code:`he`,label:`Hebrew`,nativeLabel:`עברית`,extended:!0},{code:`hi`,label:`Hindi`,nativeLabel:`हिन्दी`},{code:`hu`,label:`Hungarian`,nativeLabel:`Magyar`,extended:!0},{code:`id`,label:`Indonesian`,nativeLabel:`Bahasa Indonesia`,extended:!0},{code:`it`,label:`Italian`,nativeLabel:`Italiano`},{code:`ja`,label:`Japanese`,nativeLabel:`日本語`},{code:`kn`,label:`Kannada`,nativeLabel:`ಕನ್ನಡ`,extended:!0},{code:`ko`,label:`Korean`,nativeLabel:`한국어`,extended:!0},{code:`lv`,label:`Latvian`,nativeLabel:`Latviešu`,extended:!0},{code:`lt`,label:`Lithuanian`,nativeLabel:`Lietuvių`,extended:!0},{code:`mk`,label:`Macedonian`,nativeLabel:`Македонски`,extended:!0},{code:`ms`,label:`Malay`,nativeLabel:`Bahasa Melayu`,extended:!0},{code:`mr`,label:`Marathi`,nativeLabel:`मराठी`,extended:!0},{code:`no`,label:`Norwegian`,nativeLabel:`Norsk`,extended:!0},{code:`fa`,label:`Persian`,nativeLabel:`فارسی`,extended:!0},{code:`pl`,label:`Polish`,nativeLabel:`Polski`,extended:!0},{code:`pt`,label:`Portuguese`,nativeLabel:`Português`},{code:`ro`,label:`Romanian`,nativeLabel:`Română`,extended:!0},{code:`ru`,label:`Russian`,nativeLabel:`Русский`},{code:`sr`,label:`Serbian`,nativeLabel:`Српски`,extended:!0},{code:`sk`,label:`Slovak`,nativeLabel:`Slovenčina`,extended:!0},{code:`sl`,label:`Slovenian`,nativeLabel:`Slovenščina`,extended:!0},{code:`es`,label:`Spanish`,nativeLabel:`Español`},{code:`sv`,label:`Swedish`,nativeLabel:`Svenska`,extended:!0},{code:`tl`,label:`Tagalog`,extended:!0},{code:`ta`,label:`Tamil`,nativeLabel:`தமிழ்`,extended:!0},{code:`te`,label:`Telugu`,nativeLabel:`తెలుగు`,extended:!0},{code:`th`,label:`Thai`,nativeLabel:`ไทย`,extended:!0},{code:`tr`,label:`Turkish`,nativeLabel:`Türkçe`,extended:!0},{code:`uk`,label:`Ukrainian`,nativeLabel:`Українська`,extended:!0},{code:`vi`,label:`Vietnamese`,nativeLabel:`Tiếng Việt`,extended:!0}],Pn=new Set([`deepgram`,`vellum`]),Fn=new Set([`deepgram`,`vellum`]),In=new Set([`xai`]),Ln={code:``,label:`Auto-detect (default)`,description:`xAI identifies the spoken language natively. Picking a specific language pins it; returning to auto-detect requires clearing services.stt.language outside this picker.`},Rn={code:`en`,label:`English`};function zn(e,t){let n=Fn.has(t)?Nn:Nn.filter(e=>!e.extended),r=Pn.has(t)?n:n.filter(e=>e.code!==Mn),i=In.has(t)?r.flatMap(e=>e.code===``?[Ln,Rn]:[e]):r;return i.some(t=>t.code===e)?i:[...i,{code:e,label:`${e} (custom)`}]}function Bn(e,t,n){let r=zn(e,t),i=[],a=e=>{!i.includes(e)&&r.some(t=>t.code===e)&&i.push(e)};return a(e),a(``),a(Mn),n!=null&&a(n),{featured:i.map(e=>r.find(t=>t.code===e)),rest:r.filter(e=>!i.includes(e.code)).sort((e,t)=>e.label.localeCompare(t.label))}}function Vn(e,t){let n=t.trim().toLowerCase();return n.length===0||e.label.toLowerCase().includes(n)||e.nativeLabel&&e.nativeLabel.toLowerCase().includes(n)?!0:e.code.toLowerCase().startsWith(n)}function Hn(e,t){let n=zn(e,t).find(t=>t.code===e);return n?jn(n):e}function Un(e){if(!e)return null;let t=e.toLowerCase().split(`-`)[0];return t===`en`?null:Nn.find(e=>e.code===t)??null}function Wn(e,t){let n=Un(e);return n?n.extended?Fn.has(t)?n.code:null:Pn.has(t)?Mn:n.code:null}function Gn(e,t){return`${e}-option-${t.code===``?`default`:t.code}`}function Kn({currentCode:e,configuredProviderId:t,suggestedCode:n,selectLanguage:r,selecting:i,onDone:a}){let o=(0,F.useId)(),c=`${o}-listbox`,u=(0,F.useRef)(null),d=(0,F.useRef)(null),[f,m]=(0,F.useState)(``),[h,g]=(0,F.useState)(-1),v=(0,F.useMemo)(()=>Bn(e,t,n),[e,t,n]),y=f.trim().length>0,b=(0,F.useMemo)(()=>{let e=[...v.featured,...v.rest];return y?e.filter(e=>Vn(e,f)):e},[v,y,f]);(0,F.useEffect)(()=>{u.current?.focus()},[]),(0,F.useEffect)(()=>{d.current?.querySelector(`[role="option"][aria-selected="true"]`)?.scrollIntoView({block:`nearest`})},[]),(0,F.useEffect)(()=>{if(h<0)return;let e=b[h];e&&document.getElementById(Gn(o,e))?.scrollIntoView({block:`nearest`})},[h,b,o]);let x=e=>{r(e),a()},S=e=>{if(e.key===`ArrowDown`||e.key===`ArrowUp`){if(e.preventDefault(),b.length===0)return;g(t=>e.key===`ArrowDown`?Math.min(t+1,b.length-1):Math.max(t-1,0));return}if(e.key===`Enter`){let t=b[h]??(y?b[0]:void 0);t&&(e.preventDefault(),x(t.code))}},C=h>=0?b[h]:null,w=t=>{let r=t.code===e,i=t===C,a=n!=null&&t.code===n&&t.code!==e;return(0,$.jsxs)(`button`,{id:Gn(o,t),type:`button`,role:`option`,"aria-selected":r,tabIndex:-1,"data-active":i||void 0,onClick:()=>x(t.code),className:s(`flex w-full cursor-pointer items-center gap-2 rounded-md px-3 py-2.5 text-left transition-colors`,r?`bg-[var(--surface-active)]`:i?`bg-[var(--surface-hover)]`:`hover:bg-[var(--surface-hover)]`),children:[(0,$.jsxs)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:[jn(t),t.description&&(0,$.jsx)(`span`,{className:`block truncate text-label-small-default text-[var(--content-tertiary)]`,children:t.description})]}),a&&(0,$.jsx)(`span`,{className:`shrink-0 text-label-small-default text-[var(--content-tertiary)]`,children:`Suggested`}),r&&(0,$.jsx)(l,{"aria-hidden":!0,className:`size-4 shrink-0 text-[var(--system-positive-strong)]`})]},t.code)},T=(e,t)=>(0,$.jsx)(`div`,{id:e,role:`presentation`,className:`px-3 pt-2 pb-1 text-label-small-default text-[var(--content-tertiary)]`,children:t});return(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-col gap-2`,children:[(0,$.jsx)(_,{ref:u,role:`combobox`,"aria-expanded":!0,"aria-controls":c,"aria-activedescendant":C?Gn(o,C):void 0,"aria-autocomplete":`list`,"aria-label":`Search languages`,placeholder:`Search languages`,leftIcon:(0,$.jsx)(p,{className:`size-4`}),value:f,onChange:e=>{m(e.target.value),g(e.target.value.trim().length>0?0:-1)},onKeyDown:S,fullWidth:!0}),(0,$.jsx)(`div`,{ref:d,id:c,role:`listbox`,"aria-label":`Languages`,"aria-busy":i,className:s(`flex max-h-[50vh] flex-col overflow-y-auto`,i&&`opacity-70`),children:y?b.length>0?b.map(w):(0,$.jsx)(`p`,{className:`px-3 py-2.5 text-body-medium-default text-[var(--content-tertiary)]`,children:`No languages match.`}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{role:`group`,"aria-labelledby":`${o}-featured`,children:[T(`${o}-featured`,`Featured`),v.featured.map(w)]}),(0,$.jsxs)(`div`,{role:`group`,"aria-labelledby":`${o}-all`,children:[T(`${o}-all`,`All languages`),v.rest.map(w)]})]})})]})}var qn=`en`,Jn=e=>({services:{stt:{language:e===``?qn:e}}});function Yn(e){let t=M()&&!!e,{data:n}=a({...N({path:{assistant_id:e??``}}),enabled:t,staleTime:1/0,retry:!1}),{data:r}=a({...re({path:{assistant_id:e??``}}),enabled:t,staleTime:3e4}),i=r?.services?.stt,o=i?.mode===`managed`?`vellum`:i?.provider??`deepgram`,s=n?.providers?.find(e=>e.id===o)?.languageSelection===`manual`,c=t&&!!r&&s,l=i?.language,u=!In.has(o),{currentValue:d,selecting:f,select:p}=ae({assistantId:e,configuredValue:!l||u&&l===qn?``:l,buildPatchBody:Jn,failureMessage:`Couldn't change the language just now. Try again.`});return{available:c,currentCode:d,configuredProviderId:o,selectLanguage:p,selecting:f}}function Xn(e,t){let n=e.filter(e=>e.status!==`disabled`);return t&&n.some(e=>e.name===t)?t:n[0]?.name}function Zn(e,t){let n=new Set;for(let e of t)e&&n.add(e);return e.filter(e=>e.status!==`disabled`||n.has(e.name))}function Qn(e){let t=e.label??e.name;return e.status===`disabled`?`${t} (Disabled)`:t}var $n={profiles:{},profileOrder:[]};function er(e,t){let n=e?.profiles,r=e?.profileOrder,i=!!n&&Object.keys(n).length>0,[a,o]=(0,F.useState)($n),[s,c]=(0,F.useState)(t);return t!==s&&(c(t),o($n)),(0,F.useEffect)(()=>{i&&o({profiles:n,profileOrder:r??[]})},[i,n,r]),i?{profiles:n,profileOrder:r??[]}:t===s?a:$n}export{Qe as $,vn as A,It as B,mn as C,dn as D,un as E,Kt as F,Tt as G,Nt as H,Gt as I,xt as J,St as K,Wt as L,cn as M,an as N,ln as O,qt as P,$e as Q,zt as R,fn as S,gn as T,jt as U,Ft as V,wt as W,Ze as X,at as Y,Xe as Z,En as _,B as _t,Yn as a,q as at,Sn as b,Hn as c,K as ct,wn as d,fe as dt,xe as et,Cn as f,pe as ft,On as g,le as gt,kn as h,R as ht,Zn as i,ye as it,Qt as j,_n as k,Wn as l,he as lt,yn as m,U as mt,Qn as n,we as nt,Kn as o,_e as ot,bn as p,H as pt,bt as q,Xn as r,X as rt,Un as s,ge as st,er as t,be as tt,An as u,G as ut,Tn as v,hn as w,xn as x,Dn as y,Rt as z};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{b as n,h as r,x as i}from"./risk-Biu4oG7i.js";import{i as a,o,r as s}from"./subagent-store-Cxv8dl3x.js";import{C as c,S as l,_ as u,w as d,y as f}from"./site-favicon-CPDg0T08.js";function p(e,t){if(t===e)return{kind:`identity`};if(e==null)return{kind:`first`};let n=e.length,r=t.length;return r>n&&(n===0||t[0]===e[0]&&t[n-1]===e[n-1])?{kind:`append`,from:n}:r===n&&r>=1&&t[r-1]!==e[r-1]&&t[r-1].id===e[r-1].id&&e[r-1].type===`text`&&t[r-1].type===`text`&&t[r-1].content.length>=e[r-1].content.length&&t[r-1].content.startsWith(e[r-1].content)&&(r===1||t[r-2]===e[r-2])?{kind:`mutate-last`}:{kind:`fallback`}}var m=e(t(),1);function h(e,t){return JSON.stringify(e)===JSON.stringify(t)}function g(e=k){let t=null,n=[],r=[];function i(e){let i=A(e);return t=e,n=i.steps,r=i.toolMeta,{steps:n,toolMeta:r}}function a(a){let o=p(t,a);switch(o.kind){case`identity`:return{steps:n,toolMeta:r};case`first`:return i(a);case`append`:{let i=a.length,s=n.slice(),c=r.slice();for(let t=o.from;t<i;t++)e(s,c,a[t]);return t=a,n=s,r=c,{steps:n,toolMeta:r}}case`mutate-last`:{let i=a.length,o=n.slice(),s=r.slice(),c=o[o.length-1],l;c&&c.kind===`thinking`&&c.detailKey===a[i-1].id&&(l=c,o.pop(),s.pop()),e(o,s,a[i-1]),t=a;let u=o[o.length-1];return l&&u&&h(l,u)?{steps:n,toolMeta:r}:(n=o,r=s,{steps:n,toolMeta:r})}case`fallback`:return i(a)}}return{project:a}}function _(e){let t=(0,m.useRef)(null),n=(0,m.useRef)(null);t.current??=g();let r=t.current.project(e),i=n.current;return i!=null&&i.steps===r.steps&&i.toolMeta===r.toolMeta?i:(n.current=r,r)}var v=160,y=[];function b(e){return i(e.replace(/\s+/g,` `).trim(),v)}function x(e){let t=((e.input&&typeof e.input.url==`string`?e.input.url:``)||e.content||``).trim(),n=t?l(t):``;return n?`Reading ${n}`:`Reading…`}function S(e,t){let n=typeof e==`number`&&Number.isFinite(e)?t-e:0;return n>0?f(n):``}function C(e,t){return{kind:`web_search_error`,title:`Web search failed`,durationLabel:e,errorMessage:b(t.result??t.content)||`Web search failed`,detailKey:t.toolUseId}}function w(e,t){let n=e.toLowerCase();if(!t)return{};switch(n){case`bash`:case`host_bash`:return{command:t};case`str_replace_editor`:case`text_editor`:return{path:t};case`computer`:return{action:t};case`skill`:case`skill_execute`:case`skill_invoke`:case`skill_load`:return{skill:t};case`subagent_spawn`:return{label:t};default:return{}}}function T(e){let t=e.toolName??``,n=e.content??``,i=r(t,e.input??w(t,n));return{kind:`tool`,durationLabel:``,toolCallId:e.toolUseId??``,iconName:i.iconName,title:i.title,info:i.info||n,activity:i.activity,status:`running`}}function E(e,t){for(let n=e.length-1;n>=0;n--){let r=e[n];if(r.running){if(t.toolUseId){if(r.toolCallId===t.toolUseId)return n;continue}if(!t.toolName||r.toolName===t.toolName)return n}}return-1}function D(e,t,n){return E(e.map((e,n)=>{let r=t[n];return e.kind===`tool`?{toolCallId:e.toolCallId,toolName:r?.toolName??``,running:e.status===`running`}:e.kind===`web_search`?{toolCallId:r?.toolUseId??``,toolName:r?.toolName??``,running:e.title===`Searching the web`}:{toolCallId:``,toolName:r?.toolName??``,running:!1}}),n)}function O(e){switch(e){case`running`:case`pending`:case`awaiting_input`:return`loading`;case`completed`:return`complete`;case`failed`:case`aborted`:case`interrupted`:return`error`;default:return`loading`}}function k(e,t,n){if(n.type===`text`){let r=b(n.content);if(r.length===0)return;e.push({kind:`thinking`,durationLabel:``,text:r,detailKey:n.id}),t.push(void 0);return}if(n.type===`tool_call`){let r=n.toolName??``;if(u.has(r)){if(r===`web_fetch`)e.push({kind:`thinking`,durationLabel:``,text:x(n),detailKey:n.toolUseId}),t.push(void 0);else{let i=n.input&&typeof n.input.query==`string`?n.input.query:n.content||void 0;e.push({kind:`web_search`,query:i,title:`Searching the web`,durationLabel:``,linkCount:0,results:[],detailKey:n.toolUseId}),t.push({startTs:n.timestamp,toolName:r,toolUseId:n.toolUseId})}return}e.push(T(n)),t.push({startTs:n.timestamp,toolName:r});return}if(n.type===`tool_result`){let r=D(e,t,n);if(r===-1)return;let i=e[r],a=t[r]?.startTs,o=S(a,n.timestamp);if(i.kind===`web_search`){if(n.isError){e[r]=C(o,n);return}let t=c(n.result??n.content);e[r]={...i,title:`Searched the web`,query:i.query||n.searchQuery,durationLabel:o,linkCount:t.length,results:t};return}if(i.kind!==`tool`)return;e[r]={...i,status:n.isError?`error`:`completed`,durationLabel:o};return}if(n.type===`error`){let r=D(e,t,n);if(r!==-1){let i=e[r];i.kind===`tool`?e[r]={...i,status:`error`}:i.kind===`web_search`&&(e[r]=C(S(t[r]?.startTs,n.timestamp),n))}let i=b(n.content)||`Subagent error`;e.push({kind:`tool_error`,message:i}),t.push(void 0);return}}function A(e){let t=[],n=[];for(let r of e)k(t,n,r);return{steps:t,toolMeta:n}}function j(e,{steps:t,toolMeta:n}){if(!o(e.status)&&a(e)&&e.events.length===0&&!e.detailSettled)return{state:`loading`,currentStepTitle:`Loading`,currentStepInfo:e.label,stepCount:``,steps:t,carouselItems:[]};let r=O(e.status),{currentStepTitle:i,currentStepInfo:s}=M(e,t,n);return{state:r,currentStepTitle:i,currentStepInfo:s,stepCount:`${t.length} step${t.length===1?``:`s`}`,steps:t,carouselItems:[]}}function M(e,t,r){let i=e.status===`completed`||e.status===`failed`||e.status===`aborted`||e.status===`interrupted`;if(t.length===0){let t;return t=e.status===`failed`?`Failed`:e.status===`aborted`?`Aborted`:e.status===`interrupted`?`Interrupted`:e.status===`completed`?`Finished`:`Working`,{currentStepTitle:t,currentStepInfo:e.error||e.label}}let a=t[t.length-1];if(a.kind===`thinking`)return{currentStepTitle:i?`Thought`:`Thinking`,currentStepInfo:d(a.text)};if(a.kind===`tool`){if(a.status===`running`)return{currentStepTitle:`Working`,currentStepInfo:a.info};if(!i)return{currentStepTitle:`Finalizing`,currentStepInfo:a.info};let e=r[t.length-1]?.toolName??``;return{currentStepTitle:e?`Used ${n(e)}`:`Done`,currentStepInfo:a.info}}return a.kind===`tool_error`?{currentStepTitle:`Errored`,currentStepInfo:a.message}:a.kind===`web_search`?{currentStepTitle:a.title,currentStepInfo:``}:a.kind===`web_search_error`?{currentStepTitle:a.title,currentStepInfo:a.errorMessage}:{currentStepTitle:``,currentStepInfo:``}}function N(e){let t=s(t=>t.byId[e]),n=_(t?.events??y),r=(0,m.useRef)(null);if(!t)return r.current=null,null;let i=j(t,n),a=r.current;return a!=null&&a.steps===i.steps&&a.state===i.state&&a.currentStepTitle===i.currentStepTitle&&a.currentStepInfo===i.currentStepInfo&&a.stepCount===i.stepCount?a:(r.current=i,i)}function P(e,t,n){if(n.type===`text`){if((n.content??``).trim().length===0)return;e.push({toolCallId:n.id,toolName:``,title:`Thought`,activity:``,input:{},status:`completed`,durationLabel:``,kind:`thinking`,thinkingText:n.content}),t.push({startTs:n.timestamp,running:!1});return}if(n.type===`tool_call`){let i=n.toolUseId??``;if(!i)return;let a=n.toolName??``;if(a===`web_search`){let r=n.input&&typeof n.input.query==`string`?n.input.query:n.content||void 0;e.push({toolCallId:i,toolName:a,title:`Searched the web`,activity:``,input:n.input??{},status:`running`,durationLabel:``,kind:`web_search`,searchQuery:r,searchResults:[]}),t.push({startTs:n.timestamp,running:!0});return}let o=r(a,n.input??w(a,n.content??``));e.push({toolCallId:i,toolName:a,title:o.title,activity:o.activity,input:n.input??{},status:`running`,durationLabel:``,kind:`tool`}),t.push({startTs:n.timestamp,running:!0});return}if(n.type===`tool_result`||n.type===`error`){let r=E(e.map((e,n)=>({toolCallId:e.toolCallId,toolName:e.toolName,running:t[n].running})),n);if(r===-1)return;let i=e[r],a=t[r].startTs,o=S(a,n.timestamp);e[r]=i.kind===`web_search`?{...i,status:n.isError?`error`:`completed`,durationLabel:o,searchQuery:i.searchQuery||n.searchQuery,searchResults:n.isError?[]:c(n.result??n.content),result:n.isError?n.result??n.content:void 0}:{...i,result:n.result??n.content,status:n.isError?`error`:`completed`,durationLabel:o},t[r].running=!1}}export{p as i,N as n,_ as r,P as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./createLucideIcon-CAM1RhH8.js";import{r as t}from"./utils-C-YNXdkX.js";var n=e(`bookmark`,[[`path`,{d:`M17 3a2 2 0 0 1 2 2v15a1 1 0 0 1-1.496.868l-4.512-2.578a2 2 0 0 0-1.984 0l-4.512 2.578A1 1 0 0 1 5 20V5a2 2 0 0 1 2-2z`,key:`oz39mx`}]]),r=`0.8.1`;function i(e){return t(r,e)}export{n,i as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./utils-C-YNXdkX.js";var t=`0.10.8`;function n(n){return e(t,n)}export{n as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./createLucideIcon-CAM1RhH8.js";import{t as r}from"./pointer-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./createLucideIcon-CAM1RhH8.js";import{t as r}from"./pointer-QlIwQKYH.js";var i=n(`menu`,[[`path`,{d:`M4 5h16`,key:`1tepv9`}],[`path`,{d:`M4 12h16`,key:`1lakjw`}],[`path`,{d:`M4 19h16`,key:`1djgab`}]]),a=e(t(),1),o=80,s=8,c=.8,l=.35;function u({enabled:e,axis:t,commitThresholdPx:n=o,deadzonePx:i=s,escapeRatio:u=c,overdragDamping:d=l,touchOnly:f=!0,onCommit:p,onMove:m,onReset:h}){let[g,_]=(0,a.useState)(0),[v,y]=(0,a.useState)(!1),[b]=(0,a.useState)(()=>r()),x=(0,a.useRef)(null),S=(0,a.useCallback)(()=>{x.current=null,_(0),y(!1),h?.()},[h]);return{dragOffset:g,isDragging:v,onTouchStart:(0,a.useCallback)(t=>{if(!e||f&&!b)return;if(t.touches.length!==1){S();return}let n=t.touches[0];x.current={touchId:n.identifier,startX:n.clientX,startY:n.clientY,resolved:`undecided`,lastDelta:0,lastEscape:0}},[e,f,b,S]),onTouchMove:(0,a.useCallback)(e=>{let r=x.current;if(!r)return;if(e.touches.length!==1){S();return}let a=e.touches[0];if(a.identifier!==r.touchId)return;let o=a.clientX-r.startX,s=a.clientY-r.startY,c=t===`horizontal`?o:s,l=t===`horizontal`?s:o;if(r.lastDelta=c,r.lastEscape=l,r.resolved===`undecided`){if(Math.abs(c)<i&&Math.abs(l)<i)return;if(Math.abs(l)>Math.abs(c)*u){x.current=null;return}r.resolved=`primary`,y(!0)}if(r.resolved!==`primary`)return;if(Math.abs(c)<n&&Math.abs(l)>Math.abs(c)*u){S();return}let f=Math.sign(c),p=Math.abs(c),h=f*(p<=n?p:n+(p-n)*d);_(h),m?.(h)},[t,i,u,n,d,m,S]),onTouchEnd:(0,a.useCallback)(e=>{let r=x.current;if(!r||r.resolved!==`primary`){S();return}if(e.touches.length>0){S();return}let i=Array.from(e.changedTouches).find(e=>e.identifier===r.touchId),a=i?i.clientX-r.startX:null,o=i?i.clientY-r.startY:null,s=a!==null&&o!==null?t===`horizontal`?a:o:r.lastDelta,c=a!==null&&o!==null?t===`horizontal`?o:a:r.lastEscape;!(Math.abs(c)>Math.abs(s)*u)&&Math.abs(s)>=n&&p?.(s),S()},[t,n,u,p,S]),onTouchCancel:S}}export{i as n,u as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{n}from"./button-Dy5001j6.js";import{n as r}from"./QueryClientProvider-CMu7CkQU.js";import{t as i}from"./useQuery-Bz-fbQ-m.js";import{t as a}from"./useMutation-CXGTrp4W.js";import{t as o}from"./jsx-runtime-D3ZM-ToX.js";import{t as s}from"./cn-CJf7MmLX.js";import{t as c}from"./createLucideIcon-CAM1RhH8.js";import{t as l}from"./bell-Ct4a9v6Y.js";import{t as u}from"./clock-BYTc0Ds9.js";import{t as d}from"./list-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{n}from"./button-Dy5001j6.js";import{n as r}from"./QueryClientProvider-CMu7CkQU.js";import{t as i}from"./useQuery-Bz-fbQ-m.js";import{t as a}from"./useMutation-CXGTrp4W.js";import{t as o}from"./jsx-runtime-D3ZM-ToX.js";import{t as s}from"./cn-CJf7MmLX.js";import{t as c}from"./createLucideIcon-CAM1RhH8.js";import{t as l}from"./bell-Ct4a9v6Y.js";import{t as u}from"./clock-BYTc0Ds9.js";import{t as d}from"./list-CDyb1CGV.js";import{t as f}from"./mail-DABv3_Ue.js";import{t as p}from"./message-square-zCNXaHYX.js";import{t as m}from"./rotate-ccw-Da_2DvhY.js";import{t as h}from"./settings-DyEBEqeQ.js";import{t as g}from"./shield-check-z7CU-gBq.js";import{t as _}from"./trash-2-De6X8YiM.js";import{M as v}from"./src-C3NeO9Jd.js";import{i as y}from"./utils-C-YNXdkX.js";import{Ft as b,It as x,Lt as S,Rt as C}from"./sdk.gen-BySz4QYj.js";import{I as w,L as T}from"./react-query.gen-0mspArBl.js";import{t as E}from"./use-bus-subscription-CyRPH_gr.js";import{r as D}from"./format-date-CKGQir4m.js";var O=c(`mail-open`,[[`path`,{d:`M21.2 8.4c.5.38.8.97.8 1.6v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V10a2 2 0 0 1 .8-1.6l8-6a2 2 0 0 1 2.4 0l8 6Z`,key:`1jhwl8`}],[`path`,{d:`m22 10-8.97 5.7a1.94 1.94 0 0 1-2.06 0L2 10`,key:`1qfld7`}]]),k=`0.10.5`;function A(){return y(k)}var j=e(t(),1),M=o(),N={security:{icon:g,strong:`var(--feed-nudge-strong)`,weak:`var(--feed-nudge-weak)`},email:{icon:f,strong:`var(--feed-digest-strong)`,weak:`var(--feed-digest-weak)`},scheduling:{icon:u,strong:`var(--feed-thread-strong)`,weak:`var(--feed-thread-weak)`},background:{icon:h,strong:`var(--system-info-strong)`,weak:`var(--system-info-weak)`},system:{icon:l,strong:`var(--feed-digest-strong)`,weak:`var(--feed-digest-weak)`}},P=[`security`,`email`,`scheduling`,`background`,`system`],F=`all`;function I({categories:e,activeFilter:t,onFilterChange:n}){let r=P.filter(t=>e.includes(t));if(r.length<=1)return null;let i=[{value:F,label:`All`,icon:(0,M.jsx)(d,{className:`h-4 w-4`})},...r.map(e=>{let t=N[e].icon;return{value:e,label:e.charAt(0).toUpperCase()+e.slice(1),icon:(0,M.jsx)(t,{className:`h-4 w-4`})}})];return(0,M.jsx)(v,{ariaLabel:`Filter notifications`,value:t??F,onChange:e=>n(e===F?null:e),items:i,className:`self-start !w-auto [&>*]:!flex-none`})}function L({label:e,onClick:t,className:r,children:i}){return(0,M.jsx)(n,{content:e,children:(0,M.jsx)(`button`,{type:`button`,"aria-label":e,onClick:e=>{e.stopPropagation(),t()},className:s(`flex h-8 w-8 shrink-0 cursor-pointer items-center justify-center rounded-md`,`text-[var(--content-secondary)] transition-colors`,`hover:bg-[var(--surface-hover)] hover:text-[var(--content-default)]`,r),children:i})})}function R(e){return e&&N[e]?N[e]:N.system}function z({item:e,isActive:t=!1,validConversationIds:n,onSelect:r,onDismiss:i,onToggleRead:a,onGoToThread:o,trailingAction:c=`dismiss`}){let[l,u]=(0,j.useState)(!1),d=R(e.category),h=d.icon,g=e.status===`new`,v=c===`restore`;return(0,M.jsxs)(`button`,{type:`button`,onClick:()=>r(e),onMouseEnter:()=>u(!0),onMouseLeave:()=>u(!1),className:s(`flex min-h-[48px] w-full cursor-pointer items-center gap-[var(--app-spacing-sm)]`,`rounded-[var(--radius-md)] px-[var(--app-spacing-md)] py-[var(--app-spacing-sm)]`,`transition-[background-color,opacity] duration-150`,t?`bg-[var(--surface-active)]`:l?`bg-[var(--surface-hover)]`:`bg-[var(--surface-overlay)]`,!g&&!t&&`opacity-70`),children:[(0,M.jsxs)(`span`,{className:`relative shrink-0`,"aria-hidden":`true`,children:[(0,M.jsx)(`span`,{className:`flex items-center justify-center rounded-full`,style:{width:26,height:26,backgroundColor:d.weak},children:(0,M.jsx)(h,{width:12,height:12,style:{color:d.strong}})}),g&&(0,M.jsx)(`span`,{className:`absolute -left-0.5 -top-0.5 h-2 w-2 rounded-full bg-[var(--system-mid-strong)]`})]}),(0,M.jsx)(`span`,{className:s(`text-body-medium-default min-w-0 flex-1 truncate text-left`,`text-[var(--content-secondary)]`),children:e.title??e.summary}),l&&!v?(0,M.jsxs)(`span`,{className:`flex shrink-0 items-center gap-[var(--app-spacing-sm)]`,children:[a&&(0,M.jsx)(L,{label:g?`Mark as read`:`Mark as unread`,onClick:()=>a(e.id,g?`seen`:`new`),children:g?(0,M.jsx)(O,{width:16,height:16}):(0,M.jsx)(f,{width:16,height:16})}),o&&e.conversationId&&(!n||n.has(e.conversationId))&&(0,M.jsx)(L,{label:`Go to thread`,onClick:()=>{g&&a&&a(e.id,`seen`),o(e.conversationId)},children:(0,M.jsx)(p,{width:16,height:16})}),(0,M.jsx)(L,{label:`Dismiss`,onClick:()=>i(e.id),children:(0,M.jsx)(_,{width:16,height:16})})]}):l&&v?(0,M.jsxs)(L,{label:`Restore`,onClick:()=>i(e.id),className:`w-auto gap-[var(--app-spacing-xs)] px-2`,children:[(0,M.jsx)(m,{width:16,height:16,"aria-hidden":`true`}),(0,M.jsx)(`span`,{className:`text-body-small-default`,children:`Restore`})]}):(0,M.jsx)(`span`,{className:`shrink-0 text-body-small-default text-[var(--content-tertiary)]`,children:D(e.timestamp)})]})}function B(e){let t=r(),n=(0,j.useRef)(null),o=(0,j.useRef)(0),s=(0,j.useMemo)(()=>({path:{assistant_id:e??``},query:{timeAwaySeconds:0}}),[e]),c=(0,j.useMemo)(()=>w(s),[s]);E(`app.hidden`,()=>{n.current=Date.now()}),E(`app.resume`,({signal:r})=>{r!==`online`&&n.current!==null&&(o.current=Math.round((Date.now()-n.current)/1e3),n.current=null,e&&t.invalidateQueries({queryKey:c}))});let l=i({queryKey:c,queryFn:async({signal:t})=>{let{data:n}=await S({path:{assistant_id:e},query:{timeAwaySeconds:o.current},signal:t,throwOnError:!0});return n},enabled:!!e,staleTime:3e4}),u=a({mutationFn:async({itemId:t,status:n})=>{let{data:r}=await x({path:{assistant_id:e,id:t},body:{status:n},throwOnError:!0});return r},onMutate:async({itemId:e,status:n})=>{await t.cancelQueries({queryKey:c});let r=t.getQueryData(c);return T(t,s,t=>t&&{...t,items:t.items.map(t=>t.id===e?{...t,status:n}:t)}),{previous:r}},onError:(e,n,r)=>{r?.previous&&T(t,s,r.previous)},onSettled:()=>{t.invalidateQueries({queryKey:c})}}),d=a({mutationFn:async({itemId:t,actionId:n})=>{let{data:r}=await b({path:{assistant_id:e,id:t,actionId:n},throwOnError:!0});return r},onMutate:async({itemId:e})=>{await t.cancelQueries({queryKey:c});let n=t.getQueryData(c);return T(t,s,t=>t&&{...t,items:t.items.map(t=>t.id===e?{...t,status:`acted_on`}:t)}),{previous:n}},onError:(e,n,r)=>{r?.previous&&T(t,s,r.previous)},onSettled:()=>{t.invalidateQueries({queryKey:c})}}),f=a({mutationFn:async({from:t,to:n,ids:r})=>{let{data:i}=await C({path:{assistant_id:e},body:{from:t,to:n,ids:r},throwOnError:!0});return i},onMutate:async({from:e,to:n,ids:r})=>{await t.cancelQueries({queryKey:c});let i=t.getQueryData(c),a=new Set(e),o=r?new Set(r):null;return T(t,s,e=>{if(!e)return e;let t=e.items.map(e=>a.has(e.status)&&e.status!==n&&(!o||o.has(e.id))?{...e,status:n}:e),r=t.filter(e=>e.status===`new`).length;return{...e,items:t,contextBanner:{...e.contextBanner,newCount:r}}}),{previous:i}},onError:(e,n,r)=>{r?.previous&&T(t,s,r.previous)},onSettled:()=>{t.invalidateQueries({queryKey:c})}}),p=(0,j.useCallback)(()=>{e&&t.invalidateQueries({queryKey:c})},[e,t,c]);return{...l,updateStatus:u,triggerAction:d,markAll:f,invalidate:p}}function V(e){return[...e].sort((e,t)=>e.priority===t.priority?new Date(t.createdAt).getTime()-new Date(e.createdAt).getTime():t.priority-e.priority)}function H(e){let t=new Date,n=new Date(t.getFullYear(),t.getMonth(),t.getDate()),r=new Date(t.getFullYear(),t.getMonth(),t.getDate()-1),i={today:[],yesterday:[],older:[]};for(let t of e){let e=new Date(t.createdAt);e>=n?i.today.push(t):e>=r?i.yesterday.push(t):i.older.push(t)}let a=new Map;return i.today.length>0&&a.set(`today`,i.today),i.yesterday.length>0&&a.set(`yesterday`,i.yesterday),i.older.length>0&&a.set(`older`,i.older),a}function U(e,t){return t===null?e:e.filter(e=>(e.category??`system`)===t)}function W(e){return e.filter(e=>e.urgency!==`high`&&e.urgency!==`critical`)}function G(e){return W(e.filter(e=>e.status!==`dismissed`))}function K(e){return{from:[`new`],to:`seen`,ids:e.filter(e=>e.status===`new`).map(e=>e.id)}}function q(e){return{from:[`new`,`seen`,`acted_on`],to:`dismissed`,ids:e.map(e=>e.id)}}function J(e){let t=new Set;for(let n of e)t.add(n.category??`system`);return[...t]}export{G as a,V as c,N as d,I as f,J as i,B as l,O as m,W as n,H as o,A as p,U as r,K as s,q as t,z as u};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./assistant-identity-store-BczULg2T.js";function t(e){let[t,...n]=e.replace(/^[vV]/,``).split(`-`),r=n.length>0?n.join(`-`):null,i=(t??``).match(/^(\d+)\.(\d+)\.(\d+)$/);return i?{major:Number(i[1]),minor:Number(i[2]),patch:Number(i[3]),pre:r}:null}function n(e,t){let n=e.split(`.`),r=t.split(`.`),i=Math.max(n.length,r.length);for(let e=0;e<i;e++){let t=n[e],i=r[e];if(t===void 0)return-1;if(i===void 0)return 1;let a=/^\d+$/.test(t),o=/^\d+$/.test(i);if(a&&o){let e=Number(t)-Number(i);if(e!==0)return e}else if(a!==o)return a?-1:1;else{if(t<i)return-1;if(t>i)return 1}}return 0}function r(e,t){let r=e.major-t.major;if(r!==0)return r;let i=e.minor-t.minor;if(i!==0)return i;let a=e.patch-t.patch;return a===0?e.pre===null&&t.pre===null?0:e.pre!==null&&t.pre===null?-1:e.pre===null&&t.pre!==null?1:n(e.pre,t.pre):a}function i(e,t,n={}){return t(e.getState())?Promise.resolve():new Promise(r=>{let i,a=()=>{i!==void 0&&clearTimeout(i),o(),r()},o=e.subscribe(e=>{t(e)&&a()});n.timeoutMs!==void 0&&(i=setTimeout(a,n.timeoutMs))})}function a(t){return l(e.use.version(),t)}function o(t,n){let r=e.use.assistantId();return a(t)&&n!=null&&n===r}function s(t){let n=e.getState().version;return l(n,t)}function c(t,n){let r=e.getState().assistantId;return s(t)&&n!=null&&n===r}function l(e,i){if(!e)return!1;let a=t(e),o=t(i);if(!a||!o)return!1;let s=r({...a,pre:null},{...o,pre:null});if(s!==0)return s>0;let c=a.pre!==null&&a.pre.startsWith(`dev`),l=o.pre!==null&&o.pre.startsWith(`dev`);return c&&l?n(a.pre,o.pre)>=0:c===l?!0:c}var u=5e3;function d(t=u){return i(e,e=>!!e.version,{timeoutMs:t})}export{l as a,r as c,a as i,t as l,s as n,d as o,o as r,i as s,c as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./createLucideIcon-CAM1RhH8.js";var t=e(`folder-plus`,[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),n=e(`image`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}]]),r=e(`video`,[[`path`,{d:`m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5`,key:`ftymec`}],[`rect`,{x:`2`,y:`6`,width:`14`,height:`12`,rx:`2`,key:`158x01`}]]);export{n,t as r,r as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./capture-error-
|
|
1
|
+
import{t as e}from"./capture-error-FWzaVb8P.js";import{n as t,t as n}from"./create-selectors-B-P03-8K.js";import{n as r,xt as i}from"./sdk.gen-BySz4QYj.js";var a=new Map;function o(e,t){return`${e}::${t}`}function s(e,t){let n=o(e,t),i=a.get(n);return i??(i=r({path:{assistant_id:e,id:t},throwOnError:!0}).then(e=>e.data.html).catch(e=>{throw a.delete(n),e}),a.set(n,i)),i}function c(e,t,n){a.set(o(e,t),Promise.resolve(n))}function l(e,t){a.delete(o(e,t))}function u(e){if(typeof e!=`object`||!e)return!1;let t=e.error;if(typeof t!=`object`||!t||t.code!==`NOT_FOUND`)return!1;let n=t.message;return typeof n==`string`&&n.startsWith(`App not found`)}function d(e,t){let n=e.mainView;return n===`document`||n===`subagent-detail`||n===`tool-detail`||n===`activity-steps`||n===`workflow-detail`||n===`acp-run-detail`||n===`background-task-detail`||n===`skill-detail`||n===`channel-setup`?e[t]:n}function f(e,t){return e.messageId!=null||t.messageId!=null?e.messageId===t.messageId&&e.groupIndex===t.groupIndex:e.toolCalls[0]?.id===t.toolCalls[0]?.id}function p(e,t){return t.messageId==null?e.thinkingText===t.thinkingText:e.messageId===t.messageId&&e.thinkingGroupIndex===t.thinkingGroupIndex&&e.thinkingItemIndex===t.thinkingItemIndex}var m={mainView:`chat`,activeAppId:null,openedAppState:null,activeDocumentSurfaceId:null,openedDocumentState:null,isAppMinimized:!1,intelligenceTab:`identity`,assetsRefreshKey:0,viewBeforeDocument:`chat`,activeSubagentId:null,viewBeforeSubagentDetail:`chat`,activeToolDetail:null,viewBeforeToolDetail:`chat`,activeActivitySteps:null,viewBeforeActivitySteps:`chat`,activeWorkflowRunId:null,viewBeforeWorkflowDetail:`chat`,activeAcpRunId:null,viewBeforeAcpRunDetail:`chat`,activeBackgroundTaskId:null,viewBeforeBackgroundTaskDetail:`chat`,activeSkillDetailId:null,viewBeforeSkillDetail:`chat`,activeChannelSetup:null,viewBeforeChannelSetup:`chat`,ruleEditorRequestSeq:0,ruleEditorRequestToolCallId:null},h=n(t()((t,n)=>({...m,setMainView:e=>{n().mainView!==e&&t({mainView:e})},setIntelligenceTab:e=>{n().intelligenceTab!==e&&t({intelligenceTab:e})},openApp:e=>{t({mainView:`app`,activeAppId:e,openedAppState:null,isAppMinimized:!1})},loadApp:async(i,a)=>{t({mainView:`app`,activeAppId:a,openedAppState:null,isAppMinimized:!1});try{let{data:e}=await r({path:{assistant_id:i,id:a},throwOnError:!0});if(n().activeAppId!==a)return;t({openedAppState:{appId:e.appId,dirName:e.dirName,name:e.name,html:e.html}}),c(i,e.appId,e.html)}catch(r){if(n().activeAppId!==a)return;u(r)||e(r,{context:`openApp`}),t({mainView:`chat`,activeAppId:null,openedAppState:null})}},setLoadedApp:e=>{t({openedAppState:e})},handleAppLoadFailed:()=>{t({mainView:`chat`,activeAppId:null,openedAppState:null})},closeApp:()=>{t({mainView:`chat`,activeAppId:null,openedAppState:null,isAppMinimized:!1})},toggleAppMinimized:()=>{t({isAppMinimized:!n().isAppMinimized})},minimizeApp:()=>{t({isAppMinimized:!0})},handleAppUnpinned:e=>{let t=n();return t.activeAppId!==e||t.mainView!==`app`&&t.mainView!==`app-editing`?!1:(n().closeApp(),!0)},enterAppEditing:()=>{t({mainView:`app-editing`})},exitAppEditing:()=>{t({mainView:`app`})},openSubagentDetail:e=>{t({mainView:`subagent-detail`,activeSubagentId:e,viewBeforeSubagentDetail:d(n(),`viewBeforeSubagentDetail`)})},closeSubagentDetail:()=>{t({mainView:n().viewBeforeSubagentDetail,activeSubagentId:null})},openWorkflowDetail:e=>{t({mainView:`workflow-detail`,activeWorkflowRunId:e,viewBeforeWorkflowDetail:d(n(),`viewBeforeWorkflowDetail`)})},closeWorkflowDetail:()=>{t({mainView:n().viewBeforeWorkflowDetail,activeWorkflowRunId:null})},openAcpRunDetail:e=>{t({mainView:`acp-run-detail`,activeAcpRunId:e,viewBeforeAcpRunDetail:d(n(),`viewBeforeAcpRunDetail`)})},closeAcpRunDetail:()=>{t({mainView:n().viewBeforeAcpRunDetail,activeAcpRunId:null})},openBackgroundTaskDetail:e=>{t({mainView:`background-task-detail`,activeBackgroundTaskId:e,viewBeforeBackgroundTaskDetail:d(n(),`viewBeforeBackgroundTaskDetail`)})},closeBackgroundTaskDetail:()=>{t({mainView:n().viewBeforeBackgroundTaskDetail,activeBackgroundTaskId:null})},openSkillDetail:e=>{t({mainView:`skill-detail`,activeSkillDetailId:e,viewBeforeSkillDetail:d(n(),`viewBeforeSkillDetail`)})},closeSkillDetail:()=>{t({mainView:n().viewBeforeSkillDetail,activeSkillDetailId:null})},openProcessDetail:({kind:e,id:t})=>{switch(e){case`subagent`:n().openSubagentDetail(t);return;case`workflow`:n().openWorkflowDetail(t);return;case`acp-run`:n().openAcpRunDetail(t);return;case`background-task`:n().openBackgroundTaskDetail(t);return;default:}},closeActiveDetail:()=>{switch(n().mainView){case`subagent-detail`:n().closeSubagentDetail();return;case`workflow-detail`:n().closeWorkflowDetail();return;case`acp-run-detail`:n().closeAcpRunDetail();return;case`background-task-detail`:n().closeBackgroundTaskDetail();return;default:return}},openChannelSetup:e=>{t({mainView:`channel-setup`,activeChannelSetup:e,viewBeforeChannelSetup:d(n(),`viewBeforeChannelSetup`)})},closeChannelSetup:()=>{t({mainView:n().viewBeforeChannelSetup,activeChannelSetup:null})},openToolDetail:e=>{t({mainView:`tool-detail`,activeToolDetail:e,viewBeforeToolDetail:d(n(),`viewBeforeToolDetail`)})},toggleToolDetail:e=>{let t=n(),r=t.activeToolDetail;t.mainView===`tool-detail`&&r!=null&&(e.kind===`thinking`?r.kind===`thinking`&&p(r,e):r.kind!==`thinking`&&r.toolCallId===e.toolCallId)?n().closeToolDetail():n().openToolDetail(e)},closeToolDetail:()=>{t({mainView:n().viewBeforeToolDetail,activeToolDetail:null})},requestRuleEditor:e=>{e&&t(t=>({ruleEditorRequestSeq:t.ruleEditorRequestSeq+1,ruleEditorRequestToolCallId:e}))},openActivitySteps:e=>{t({mainView:`activity-steps`,activeActivitySteps:e,viewBeforeActivitySteps:d(n(),`viewBeforeActivitySteps`)})},toggleActivitySteps:e=>{let t=n(),r=t.activeActivitySteps;t.mainView===`activity-steps`&&r!=null&&f(r,e)?n().closeActivitySteps():n().openActivitySteps(e)},closeActivitySteps:()=>{t({mainView:n().viewBeforeActivitySteps,activeActivitySteps:null})},openDocument:()=>{t({mainView:`document`,openedDocumentState:null,viewBeforeDocument:d(n(),`viewBeforeDocument`)})},loadDocument:async(e,r)=>{let a=d(n(),`viewBeforeDocument`);t({mainView:`document`,activeDocumentSurfaceId:r,openedDocumentState:null,viewBeforeDocument:a});try{let{data:o}=await i({path:{assistant_id:e,id:r},throwOnError:!0});if(n().activeDocumentSurfaceId!==r)return;if(!o){t({mainView:a,activeDocumentSurfaceId:null,openedDocumentState:null});return}t({openedDocumentState:{surfaceId:o.surfaceId,conversationId:o.conversationId,documentName:o.title??`Untitled`,content:o.content??``}})}catch{if(n().activeDocumentSurfaceId!==r)return;t({mainView:a,activeDocumentSurfaceId:null,openedDocumentState:null})}},setLoadedDocument:e=>{t({openedDocumentState:e})},updateDocumentContent:(e,r,i)=>{let a=n();if(!a.openedDocumentState||a.openedDocumentState.surfaceId!==e)return;let o=a.openedDocumentState,s=i===`append`?o.content+r:r;t({openedDocumentState:{...o,content:s}})},handleDocumentLoadFailed:()=>{t({mainView:n().viewBeforeDocument,activeDocumentSurfaceId:null,openedDocumentState:null})},closeDocument:()=>{t({mainView:n().viewBeforeDocument,activeDocumentSurfaceId:null,openedDocumentState:null})},refreshAssets:()=>{t({assetsRefreshKey:n().assetsRefreshKey+1})},reset:()=>t({...m})})));export{s as a,l as i,p as n,c as o,h as r,f as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-Dy5001j6.js";import{n as r}from"./QueryClientProvider-CMu7CkQU.js";import{t as i}from"./useQuery-Bz-fbQ-m.js";import{t as a}from"./jsx-runtime-D3ZM-ToX.js";import{t as o}from"./cn-CJf7MmLX.js";import{t as s}from"./check-sC49_hjU.js";import{t as c}from"./square-Bn3X6ZlO.js";import{t as l}from"./volume-2-Bj3y3ZBJ.js";import"./src-C3NeO9Jd.js";import{n as u}from"./toast-DR7D7Uma.js";import{t as d}from"./dropdown-Dt0Iof85.js";import{j as f}from"./sdk.gen-BySz4QYj.js";import{r as p}from"./use-is-org-ready-CFcTY1Qr.js";import{Lt as m,Rt as h,c as g,l as _}from"./react-query.gen-0mspArBl.js";var v=e(t(),1);function y(e,t={}){let n=p(),{data:r}=i({...m({path:{assistant_id:e??``}}),enabled:n&&!!e&&(t.enabled??!0),staleTime:6e4,retry:!1});return{voices:r?.voices??[],defaultModel:r?.defaultModel??null,fetched:!!r}}function b({assistantId:e,configuredValue:t,buildPatchBody:n,failureMessage:i}){let a=r(),[o,s]=(0,v.useState)(!1),[c,l]=(0,v.useState)(null),d=c??t,p=(0,v.useRef)(Promise.resolve()),m=(0,v.useRef)(0);return{currentValue:d,selecting:o,select:(0,v.useCallback)(t=>{if(!e||t===d)return;let r=++m.current;l(t),s(!0),p.current=p.current.then(async()=>{try{let{response:r}=await f({path:{assistant_id:e},body:n(t),throwOnError:!1});if(!r?.ok){u.error(i);return}await a.invalidateQueries({queryKey:_({path:{assistant_id:e}})})}catch{u.error(i)}finally{r===m.current&&(l(null),s(!1))}})},[e,d,n,i,a])}}var x=e=>({services:{tts:{providers:{vellum:{model:e}}}}});function S(e){let t=p()&&!!e,{data:n}=i({...h({path:{assistant_id:e??``}}),enabled:t,staleTime:1/0,retry:!1}),{data:r}=i({...g({path:{assistant_id:e??``}}),enabled:t,staleTime:3e4}),a=r?.services?.tts,o=a?.mode===`managed`||a?.provider===`vellum`,s=n?.providers?.find(e=>e.id===`vellum`)?.supportsVoiceSelection===!0,{voices:c,defaultModel:l}=y(e,{enabled:t&&o}),u=t&&o&&s&&c.length>0,d=t&&!!r&&!o,{currentValue:f,selecting:m,select:_}=b({assistantId:e,configuredValue:a?.providers?.vellum?.model??l??c[0]?.model??``,buildPatchBody:x,failureMessage:`Couldn't change the voice just now. Try again.`});return{available:u,isByok:d,voices:c,currentModel:f,defaultModel:l??``,selectModel:_,selecting:m}}var C={deepgram:`Deepgram`,elevenlabs:`ElevenLabs`},w=`Uses Vellum credits, through providers like ElevenLabs and Deepgram.`;function T(e){let t=e.indexOf(` · `);return t===-1?{traits:e,accent:``}:{accent:e.slice(0,t),traits:e.slice(t+3)}}function E(e){let{traits:t}=T(e);return t.charAt(0).toUpperCase()+t.slice(1)}function D(e){let t=new Map;for(let n of e){let{accent:e}=T(n.description),r=e||`Other`,i=t.get(r);i?i.push(n):t.set(r,[n])}return[...t.entries()].sort((e,t)=>e[0].localeCompare(t[0])).map(([e,t])=>({accent:e,voices:[...t].sort((e,t)=>T(e.description).traits.localeCompare(T(t.description).traits))}))}var O=a();function k({description:e,className:t}){let{accent:n}=T(e);return(0,O.jsxs)(`span`,{className:o(`truncate`,t),children:[E(e),n&&(0,O.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:` · ${n}`})]})}function A(){let[e,t]=(0,v.useState)(null),n=(0,v.useRef)(null),r=(0,v.useRef)(0),i=()=>{r.current++,n.current?.pause(),n.current=null,t(null)};(0,v.useEffect)(()=>()=>{r.current++,n.current?.pause(),n.current=null},[]);function a(e){if(!e.sampleUrl)return;n.current?.pause();let i=++r.current,a=new Audio(e.sampleUrl);n.current=a,t(e.model);let o=()=>{r.current===i&&t(null)};a.onended=o,a.onerror=o,a.play().catch(()=>{r.current===i&&(u.error(`Could not play the voice sample.`),t(null))})}return{previewingModel:e,play:a,stop:i}}function j({assistantId:e,heading:t,className:r,onSelect:i,value:a,onChange:u,showSource:f=!1,filterBySource:p=!1}){let{available:m,voices:h,currentModel:g,defaultModel:_,selectModel:y,selecting:b}=S(e),x=a!==void 0&&u!==void 0,w=x?a:g,T=e=>{x?u(e):y(e),i?.()},k=(0,v.useMemo)(()=>{let e=new Set,t=[];for(let n of h)e.has(n.source)||(e.add(n.source),t.push(n.source));return t.sort((e,t)=>(C[e]??e).localeCompare(C[t]??t))},[h]),[j,M]=(0,v.useState)(null),N=h.find(e=>e.model===w)?.source,P=p?j??N??k[0]??null:null,F=p&&k.length>1,I=(0,v.useMemo)(()=>D(P?h.filter(e=>e.source===P):h),[h,P]),{previewingModel:L,play:R,stop:z}=A(),B=(0,v.useRef)(null);(0,v.useEffect)(()=>{B.current?.scrollIntoView?.({block:`nearest`})},[]);let V=h.length>0;return(x?!V:!m)?null:(0,O.jsxs)(`div`,{className:o(`flex flex-col gap-2`,t&&`border-t border-[var(--border-subtle)] pt-3`,r),children:[t&&(0,O.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-secondary)]`,children:t}),F&&(0,O.jsx)(`div`,{className:`px-1 pb-1`,children:(0,O.jsx)(d,{value:P??``,onChange:M,options:k.map(e=>({value:e,label:C[e]??e})),"aria-label":`Voice provider`})}),(0,O.jsx)(`div`,{role:`listbox`,"aria-label":`Assistant voice`,className:o(`flex flex-col overflow-y-auto`,p?`max-h-[60vh]`:`max-h-80`,b&&`pointer-events-none opacity-70`),children:I.map(e=>(0,O.jsxs)(`div`,{role:`group`,"aria-label":e.accent,children:[(0,O.jsx)(`div`,{className:`px-3 pb-1 pt-3 text-label-small-default text-[var(--content-tertiary)]`,children:e.accent}),e.voices.map(e=>{let t=e.model===w,r=L===e.model,i=e.model===_;return(0,O.jsxs)(`div`,{ref:t?B:void 0,role:`option`,"aria-selected":t,onClick:()=>T(e.model),className:o(`group flex cursor-pointer items-center gap-2 rounded-md px-3 py-2.5 transition-colors`,t?`bg-[var(--surface-active)]`:`hover:bg-[var(--surface-hover)]`),children:[(0,O.jsxs)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:[E(e.description),i&&(0,O.jsxs)(`span`,{className:`text-[var(--content-tertiary)]`,children:[` `,`(default)`]})]}),f&&!p&&(0,O.jsx)(`span`,{className:`shrink-0 text-body-small-default text-[var(--content-tertiary)]`,children:C[e.source]??e.source}),(0,O.jsxs)(`div`,{className:`relative flex size-7 shrink-0 items-center justify-center`,children:[e.sampleUrl!==``&&(0,O.jsx)(n,{variant:`ghost`,size:`compact`,iconOnly:r?(0,O.jsx)(c,{}):(0,O.jsx)(l,{}),"aria-label":r?`Stop preview`:`Preview ${e.description}`,className:o(`absolute inset-0 transition-opacity`,r?`opacity-100`:`opacity-0 group-hover:opacity-100 focus-visible:opacity-100 touch-mobile:opacity-100`),onClick:t=>{t.stopPropagation(),r?z():R(e)}}),t&&(0,O.jsx)(s,{"aria-hidden":!0,className:o(`pointer-events-none size-4 text-[var(--system-positive-strong)] transition-opacity`,r?`opacity-0`:e.sampleUrl===``?`opacity-100`:`opacity-100 group-hover:opacity-0 group-focus-within:opacity-0`)})]})]},e.model)})]},e.accent))})]})}export{S as a,E as i,j as n,b as o,w as r,y as s,k as t};
|
|
@@ -0,0 +1 @@
|
|
|
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{t as i}from"./react-BFJW0bSv.js";import{t as a}from"./button-Dy5001j6.js";import{m as o,n as s,t as c}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as l}from"./jsx-runtime-D3ZM-ToX.js";import{r as u}from"./middleware-HE0NLvPl.js";import{t as d}from"./info-CYiVdnQV.js";import{A as f,M as p}from"./src-C3NeO9Jd.js";import{t as m}from"./toggle-D776PTw-.js";import{t as h}from"./modal-DwsThLGg.js";import{t as g}from"./dropdown-Dt0Iof85.js";import{t as _}from"./assistant-identity-store-BczULg2T.js";import{d as v}from"./routes-GmNvdtLW.js";import{C as y,S as ee,b,d as x,f as S,h as C,i as w,m as te,o as T,p as E,s as D,t as O,w as k,x as A,y as j}from"./voice-providers-note-CqjCnYyT.js";import{a as M,n as ne,r as re,t as ie}from"./voice-list-DQtY9O6_.js";import{t as N}from"./use-active-assistant-id-CjvzlL4t.js";import{t as P}from"./detail-card-BQsM7aVb.js";var F=e(i(),1),I=l();function L({assistantId:e,open:t,onOpenChange:n}){return(0,I.jsx)(h.Root,{open:t,onOpenChange:n,children:(0,I.jsx)(h.Content,{size:`md`,children:(0,I.jsx)(R,{assistantId:e,onDone:()=>n(!1)})})})}function R({assistantId:e,onDone:t}){let{available:n,currentModel:r,selectModel:i,selecting:o}=M(e);return(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(h.Header,{children:[(0,I.jsx)(h.Title,{children:`Voices`}),n&&(0,I.jsx)(h.Description,{children:`Uses Vellum credits, through providers like ElevenLabs and Deepgram.`})]}),(0,I.jsx)(h.Body,{children:(0,I.jsx)(ne,{assistantId:e,filterBySource:!0,value:r,onChange:i})}),(0,I.jsxs)(h.Footer,{className:`items-center justify-between gap-3`,children:[(0,I.jsx)(O,{}),(0,I.jsx)(a,{variant:`primary`,onClick:t,disabled:o,className:`shrink-0`,children:`Done`})]})]})}function z(){let e=N(),{available:t,voices:n,currentModel:r}=M(e),i=n.find(e=>e.model===r)??n[0],[o,s]=(0,F.useState)(!1),l=_.use.name(),u=l?`${l}’s Voice`:`Voice`;return t&&i?(0,I.jsxs)(P,{title:u,subtitle:re,children:[(0,I.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,I.jsx)(ie,{description:i.description,className:`min-w-0 text-body-medium-lighter text-[var(--content-default)]`}),(0,I.jsx)(a,{variant:`outlined`,onClick:()=>s(!0),className:`shrink-0`,children:`Change`})]}),(0,I.jsx)(L,{assistantId:e,open:o,onOpenChange:s})]}):(0,I.jsx)(P,{title:u,children:(0,I.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[`Your assistant speaks through a provider you configured yourself. Set its voice on`,` `,(0,I.jsx)(c,{to:`${v.settings.ai}#text-to-speech`,className:`text-[var(--primary-base)] hover:underline`,children:`Models & Services`}),`.`]})})}var B=[{prefKey:`showUserTranscript`,label:`Show the words you say`,description:`Live transcription while you speak.`},{prefKey:`showAssistantTranscript`,label:`Show the words the assistant says`,description:`Text alongside the spoken response.`}],V=`We recommend keeping both off to start. It feels more like a real conversation.`;function H(){return(0,I.jsx)(`span`,{className:`shrink-0 rounded-full bg-[var(--surface-active)] px-2 py-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:`Recommended off`})}function U({label:e,description:t,showBadge:n,checked:r,onChange:i}){return(0,I.jsxs)(`div`,{className:`flex items-center justify-between gap-3 py-1`,children:[(0,I.jsxs)(`div`,{className:`min-w-0`,children:[(0,I.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,I.jsx)(`span`,{className:`truncate text-body-medium-lighter text-[var(--content-default)]`,children:e}),n?(0,I.jsx)(H,{}):null]}),t?(0,I.jsx)(`div`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:t}):null]}),(0,I.jsx)(m,{checked:r,onChange:i,"aria-label":e})]})}function W({showDescription:e=!1,showRecommendedBadge:t=!1}){let n=T.use.showUserTranscript(),r=T.use.showAssistantTranscript(),i=T.use.setShowUserTranscript(),a=T.use.setShowAssistantTranscript(),o={showUserTranscript:{checked:n,onChange:i},showAssistantTranscript:{checked:r,onChange:a}};return(0,I.jsx)(I.Fragment,{children:B.map(n=>{let r=o[n.prefKey];return(0,I.jsx)(U,{label:n.label,description:e?n.description:void 0,showBadge:t,checked:r.checked,onChange:r.onChange},n.prefKey)})})}var G=[{label:`Ctrl`,activator:{kind:`modifierOnly`,modifiers:[`control`]}},{label:`Alt`,activator:{kind:`modifierOnly`,modifiers:[`option`]}},{label:`Ctrl+Shift`,activator:{kind:`modifierOnly`,modifiers:[`control`,`shift`]}}],K={label:`Fn`,activator:S},q=`text-body-small-default text-[var(--content-tertiary)]`;function J(){let[e]=o(),t=e.get(`tab`);return t===`sounds`?(0,I.jsx)(s,{replace:!0,to:v.settings.sounds}):t===`services`?(0,I.jsx)(s,{replace:!0,to:v.settings.ai}):(0,I.jsx)(ae,{})}function ae(){return(0,I.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[(0,I.jsxs)(Y,{heading:`Output`,description:`How your assistant sounds.`,children:[(0,I.jsx)(z,{}),(0,I.jsx)(oe,{})]}),(0,I.jsxs)(Y,{heading:`Input`,description:`How you talk to your assistant.`,children:[(0,I.jsx)(ce,{}),(0,I.jsx)(le,{}),(0,I.jsx)(Q,{})]}),(0,I.jsx)(Y,{heading:`Captions`,children:(0,I.jsx)(se,{})})]})}function oe(){let{available:e}=M(N());return e?(0,I.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5 px-1 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,I.jsx)(d,{className:`h-3.5 w-3.5 shrink-0 text-[var(--content-quiet)]`}),(0,I.jsx)(`span`,{children:`Want to use your own API key for STT or TTS, or set a custom voice?`}),(0,I.jsxs)(c,{to:`${v.settings.ai}#text-to-speech`,className:`inline-flex items-center gap-1 text-[var(--content-secondary)] underline decoration-[var(--border-element)] underline-offset-2 hover:text-[var(--content-default)]`,children:[`Set it up in Models & Services`,(0,I.jsx)(u,{className:`h-3 w-3`})]})]}):null}function Y({heading:e,description:t,children:n}){return(0,I.jsxs)(`section`,{className:`flex flex-col gap-4`,children:[(0,I.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,I.jsx)(`h2`,{className:`text-label-medium-default uppercase tracking-wide text-[var(--content-tertiary)]`,children:e}),t&&(0,I.jsx)(`p`,{className:`text-body-small-default text-[var(--content-quiet)]`,children:t})]}),n]})}function se(){return(0,I.jsx)(P,{title:`Captions`,subtitle:`Show live text of what you and the assistant say during a voice conversation.`,children:(0,I.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,I.jsx)(W,{showDescription:!0}),(0,I.jsx)(`p`,{className:`${q} pt-1`,children:V})]})})}var X=``;function ce(){let[e,r]=(0,F.useState)([]),[i,o]=(0,F.useState)(!1),[s,c]=(0,F.useState)(()=>k()),l=(0,F.useCallback)(async()=>{if(navigator.mediaDevices?.enumerateDevices)try{let e=(await navigator.mediaDevices.enumerateDevices()).filter(e=>e.kind===`audioinput`);o(e.length>0&&e.every(e=>!e.label)),r(e.filter(e=>e.deviceId!==``&&e.deviceId!==`default`&&e.deviceId!==`communications`))}catch{r([]),o(!1)}},[]),u=(0,F.useCallback)(async()=>{try{let e=await navigator.mediaDevices.getUserMedia({audio:!0});for(let t of e.getTracks())t.stop()}catch{}l()},[l]);(0,F.useEffect)(()=>{l();let e=navigator.mediaDevices;if(!e?.addEventListener)return;let t=()=>void l();return e.addEventListener(`devicechange`,t),()=>e.removeEventListener(`devicechange`,t)},[l]);let d=(0,F.useMemo)(()=>[{value:X,label:`System Default`},...e.map((e,t)=>({value:e.deviceId,label:e.label||`Microphone ${t+1}`}))],[e]),f=(0,F.useCallback)(e=>{c(e),e===X?t(y):n(y,e)},[]);return(0,I.jsx)(P,{title:`Microphone`,subtitle:`Which input device is used for dictation and voice conversations.`,children:(0,I.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,I.jsx)(`div`,{className:`max-w-xs`,children:(0,I.jsx)(g,{options:d,value:d.some(e=>e.value===s)?s:X,onChange:f,"aria-label":`Microphone`})}),i&&(0,I.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,I.jsx)(a,{variant:`outlined`,onClick:u,children:`Allow Microphone Access`}),(0,I.jsx)(`span`,{className:q,children:`Grant microphone access to list your available input devices.`})]})]})})}function le(){let e=D(),[t,i]=(0,F.useState)(()=>{let t=r(E,``);return t?b(t,{preserveFunction:e}):e?K.activator:{kind:`off`}}),[a,o]=(0,F.useState)(!1),[s,c]=(0,F.useState)([]),l=(0,F.useRef)(null),u=(0,F.useRef)(!1),f=(0,F.useMemo)(()=>e?[K,...G]:G,[e]),p=t.kind!==`off`,h=p&&!e,g=(0,F.useCallback)(e=>{i(e),n(E,A(e)),o(!1),c([])},[]),_=(0,F.useCallback)(()=>{o(!0),c([]),u.current=!1,requestAnimationFrame(()=>{l.current?.focus()})},[]),v=(0,F.useCallback)(()=>{o(!1),c([]),u.current=!1},[]),y=(0,F.useCallback)(t=>{let n=[];return e&&t.getModifierState(`Fn`)&&n.push(`function`),t.ctrlKey&&n.push(`control`),t.altKey&&n.push(`option`),t.shiftKey&&n.push(`shift`),t.metaKey&&n.push(`command`),n},[e]),w=(0,F.useCallback)(e=>{if(e.preventDefault(),e.stopPropagation(),e.key===`Escape`){v();return}let t=y(e),n=e.key;if(n===`Control`||n===`Alt`||n===`Shift`||n===`Meta`||n===`Fn`){c(t.includes(`function`)?S.modifiers:ee(t));return}if(t.includes(`function`)){g(S);return}u.current=!0,g({kind:`key`,label:n.length===1?n.toUpperCase():n,modifiers:t})},[v,y,g]),T=(0,F.useCallback)(e=>{if(!a)return;e.preventDefault(),e.stopPropagation();let t=e.key;if(t===`Control`||t===`Alt`||t===`Shift`||t===`Meta`||t===`Fn`){if(u.current){u.current=!1,c([]);return}y(e).length===0&&s.length>0&&g({kind:`modifierOnly`,modifiers:s})}},[y,a,s,g]);(0,F.useEffect)(()=>{if(!a)return;let e=e=>{l.current&&!l.current.contains(e.target)&&v()};return window.addEventListener(`mousedown`,e),()=>window.removeEventListener(`mousedown`,e)},[v,a]);let O=p&&!f.some(e=>C(e.activator,t));return(0,I.jsx)(P,{title:`Push to Talk`,subtitle:`Hold the activation key to dictate text or start a voice conversation.`,children:(0,I.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,I.jsx)(m,{checked:p,onChange:n=>{n?t.kind===`off`&&g(e?K.activator:x):g({kind:`off`})},label:`Enable Push to Talk`}),p&&(0,I.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,I.jsx)(`span`,{className:q,children:`Activation Key:`}),(0,I.jsxs)(`div`,{ref:l,tabIndex:a?0:-1,onKeyDown:a?w:void 0,onKeyUp:a?T:void 0,className:`flex flex-wrap items-center gap-2 focus:outline-none`,children:[f.map(e=>{let n=C(e.activator,t);return(0,I.jsx)(Z,{label:e.label,selected:n,onClick:()=>g(e.activator)},e.label)}),a?(0,I.jsx)(Z,{label:s.length>0?j(s):`Press any key…`,selected:!0,recording:!0,onClick:v}):(0,I.jsx)(Z,{label:O?te(t):`Custom`,selected:O,onClick:_})]}),h&&(0,I.jsxs)(`div`,{className:`flex items-start gap-1 pt-1 text-body-small-default text-[var(--content-quiet)]`,children:[(0,I.jsx)(d,{className:`mt-0.5 h-3 w-3 shrink-0`}),(0,I.jsx)(`span`,{children:`Push-to-Talk only works while this tab is focused, and browsers may intercept some shortcuts (e.g. Ctrl+T) before the page can see them. For always-on PTT, use the Vellum desktop app.`})]})]})]})})}function Z({label:e,selected:t,recording:n=!1,onClick:r}){return(0,I.jsxs)(`button`,{type:`button`,onClick:r,className:[`inline-flex items-center gap-2 rounded-lg border px-3 py-1.5 text-body-medium-lighter transition-colors`,`border-[var(--border-subtle)]`,t?`bg-[var(--surface-active)]`:`bg-[var(--surface-lift)] hover:bg-[var(--surface-hover)]`,n?`animate-pulse`:``].filter(Boolean).join(` `),children:[(0,I.jsx)(`span`,{className:[`inline-block h-2.5 w-2.5 rounded-full border`,t?`border-[var(--primary-base)] bg-[var(--primary-base)]`:`border-[var(--border-element)]`].join(` `)}),(0,I.jsx)(`span`,{className:`text-[var(--content-default)]`,children:e})]})}var ue=[{value:`low`,label:`Low`},{value:`medium`,label:`Medium`},{value:`high`,label:`High`}];function Q(){let e=T.use.pauseBeforeReplyMs(),t=T.use.setPauseBeforeReplyMs(),n=T.use.interruptSensitivity(),r=T.use.setInterruptSensitivity(),i=e!==null||n!==null;return(0,I.jsx)(P,{title:`Turn taking`,subtitle:`Where your turn ends and the assistant's begins. Applies to hands-free conversations — under push to talk, the key decides.`,children:(0,I.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[(0,I.jsx)($,{label:`Pause before reply`,description:`How long the assistant waits after you stop speaking before it replies. A longer pause lets you gather your thoughts mid-sentence without being cut off.`,isDefault:e===null,children:(0,I.jsx)(`div`,{className:`max-w-xs`,children:(0,I.jsx)(f,{value:(e??1200)/1e3,onValueChange:e=>{typeof e==`number`&&t(Math.round(e*1e3))},min:500/1e3,max:w/1e3,step:.1,showValue:!0,formatValue:e=>`${(typeof e==`number`?e:e[0]).toFixed(1)}s`,"aria-label":`Pause before reply`})})}),(0,I.jsx)($,{label:`Interrupt sensitivity`,description:`How easily talking over the assistant interrupts it. Lower it if the assistant cuts itself off on background noise or filler words; raise it to interrupt more quickly.`,isDefault:n===null,children:(0,I.jsx)(`div`,{className:`max-w-xs`,children:(0,I.jsx)(p,{items:ue,value:n??`medium`,onChange:r,ariaLabel:`Interrupt sensitivity`})})}),i&&(0,I.jsx)(`div`,{children:(0,I.jsx)(a,{variant:`outlined`,onClick:()=>{t(null),r(null)},children:`Reset to defaults`})})]})})}function $({label:e,description:t,isDefault:n,children:r}){return(0,I.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,I.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,I.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e}),n&&(0,I.jsx)(`span`,{className:`shrink-0 rounded-full bg-[var(--surface-active)] px-2 py-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:`Default`})]}),(0,I.jsx)(`p`,{className:q,children:t}),r]})}export{J as VoicePage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./local-settings-C-dW2vkq.js";import{t}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as n}from"./jsx-runtime-D3ZM-ToX.js";import{t as r}from"./cn-CJf7MmLX.js";import{n as i,t as a}from"./middleware-HE0NLvPl.js";import"./src-C3NeO9Jd.js";import{n as o,t as s}from"./create-selectors-B-P03-8K.js";import{t as c}from"./is-electron-7N7iyz1y.js";import{d as l}from"./routes-GmNvdtLW.js";var u=`vellum:voice:inputDeviceId`;function d(){return e(u,``)}function f(){let e=d();return{echoCancellation:!0,noiseSuppression:!0,autoGainControl:!0,...e?{deviceId:{exact:e}}:{}}}async function p(){let e=f();try{return await navigator.mediaDevices.getUserMedia({audio:e})}catch(t){if(e.deviceId&&t instanceof DOMException&&t.name===`OverconstrainedError`){let{deviceId:t,...n}=e;return navigator.mediaDevices.getUserMedia({audio:n})}throw t}}var m=`vellum:voice:activationKey`,h={kind:`modifierOnly`,modifiers:[`control`]},g={kind:`modifierOnly`,modifiers:[`function`]},_=[`function`,`control`,`option`,`shift`,`command`],v={function:`Fn`,control:`Ctrl`,option:`Alt`,shift:`Shift`,command:`Cmd`};function y(e){return Array.from(new Set(e)).sort((e,t)=>_.indexOf(e)-_.indexOf(t))}function b(e){return y(e).map(e=>v[e]).join(`+`)}function x(e){if(e.kind===`off`)return`Off`;if(e.kind===`modifierOnly`)return b(e.modifiers);let t=b(e.modifiers);return t?`${t}+${e.label}`:e.label}function S(e,t){if(e.kind!==t.kind)return!1;if(e.kind===`off`||t.kind===`off`)return!0;let n=y(e.modifiers),r=y(t.modifiers);return n.length!==r.length||n.some((e,t)=>e!==r[t])?!1:e.kind===`key`&&t.kind===`key`?e.label===t.label:!0}function C(e){return JSON.stringify(e)}function w(e){return e.kind===`modifierOnly`&&e.modifiers.length===1&&e.modifiers[0]===`function`}function T(e){return typeof e==`string`&&_.includes(e)}function E(e,t){let n=e.filter(T);return t.preserveFunction&&n.includes(`function`)?g.modifiers:y(t.preserveFunction?n:n.filter(e=>e!==`function`))}function D(e,t={}){if(!e)return h;if(e===`fn`)return{kind:`modifierOnly`,modifiers:t.preserveFunction?g.modifiers:h.modifiers};if(e===`ctrl`)return h;if(e===`fn_shift`)return{kind:`modifierOnly`,modifiers:t.preserveFunction?g.modifiers:[`shift`]};if(e===`off`)return{kind:`off`};try{let n=JSON.parse(e);if(n.kind===`off`)return{kind:`off`};if(n.kind===`modifierOnly`&&Array.isArray(n.modifiers)){let e=E(n.modifiers,t);return e.length===0?h:{kind:`modifierOnly`,modifiers:e}}if(n.kind===`key`&&typeof n.label==`string`&&Array.isArray(n.modifiers))return{kind:`key`,label:n.label,modifiers:E(n.modifiers,t)}}catch{}return h}function O(e){let t=[];return e.ctrlKey&&t.push(`control`),e.altKey&&t.push(`option`),e.shiftKey&&t.push(`shift`),e.metaKey&&t.push(`command`),t}function k(e){return e===`Control`||e===`Alt`||e===`Shift`||e===`Meta`||e===`Fn`}function A(e,t){if(e.length!==t.length)return!1;let n=y(e),r=y(t);return n.every((e,t)=>e===r[t])}function j(e,t){if(t.kind===`off`||t.modifiers.includes(`function`))return!1;let n=O(e),r=t.modifiers.filter(e=>e!==`function`);return t.kind===`modifierOnly`?k(e.key)?A(n,r):!1:(e.key.length===1?e.key.toUpperCase():e.key)===t.label?A(n,r):!1}function M(e,t){if(t.kind===`off`||t.modifiers.includes(`function`))return!1;let n=t.modifiers.filter(e=>e!==`function`);return t.kind===`modifierOnly`?!!(e.key===`Control`&&n.includes(`control`)||e.key===`Alt`&&n.includes(`option`)||e.key===`Shift`&&n.includes(`shift`)||e.key===`Meta`&&n.includes(`command`)):(e.key.length===1?e.key.toUpperCase():e.key)===t.label}function N(){return c()}function P(){return c()&&typeof window.vellum?.helper?.hotkey?.fnPushToTalk==`function`&&typeof window.vellum?.helper?.hotkey?.onEvent==`function`}async function F(e){if(!P())return!1;try{return(await window.vellum.helper.hotkey.fnPushToTalk(e)).ok}catch{return!1}}function I(e){return P()?window.vellum.helper.hotkey.onEvent(e):()=>void 0}var L=1200,R=3e3,z=`medium`,B={high:100,medium:250,low:600};function V(e){return B[e]}function H(e){return Number.isFinite(e)?Math.round(Math.min(R,Math.max(500,e))):L}var U={showUserTranscript:!1,showAssistantTranscript:!1,firstRunSeen:!1,pauseBeforeReplyMs:null,interruptSensitivity:null},W=`vellum:voice-prefs`,G=o()(i((e,t)=>({...U,setShowUserTranscript:t=>e({showUserTranscript:t}),setShowAssistantTranscript:t=>e({showAssistantTranscript:t}),markFirstRunSeen:()=>{t().firstRunSeen||e({firstRunSeen:!0})},setPauseBeforeReplyMs:t=>e({pauseBeforeReplyMs:t===null?null:H(t)}),setInterruptSensitivity:t=>e({interruptSensitivity:t})}),{name:W,storage:a(()=>localStorage),partialize:e=>({showUserTranscript:e.showUserTranscript,showAssistantTranscript:e.showAssistantTranscript,firstRunSeen:e.firstRunSeen,pauseBeforeReplyMs:e.pauseBeforeReplyMs,interruptSensitivity:e.interruptSensitivity})})),K=s(G);typeof window<`u`&&window.addEventListener(`storage`,e=>{e.key===W&&G.persist.rehydrate()});var q=n();function J({className:e}){return(0,q.jsxs)(`p`,{className:r(`text-label-small-default text-[var(--content-tertiary)]`,e),children:[`Speech providers, transcription, and API keys live in`,` `,(0,q.jsx)(t,{to:`${l.settings.ai}#text-to-speech`,className:`text-[var(--content-secondary)] underline decoration-[var(--border-element)] underline-offset-2 hover:text-[var(--content-default)]`,children:`Models & Services`}),`.`]})}export{u as C,y as S,p as T,M as _,V as a,D as b,F as c,h as d,g as f,j as g,S as h,R as i,I as l,x as m,z as n,K as o,m as p,L as r,N as s,J as t,P as u,w as v,d as w,C as x,b as y};
|