@vellumai/web 0.11.4-staging.3 → 0.11.4
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/{Trans-BUsRawhS.js → Trans-FBE1EuwL.js} +1 -1
- package/dist/assets/{access-Cngxal_O.js → access-D0krXly2.js} +1 -1
- package/dist/assets/account-DEWe1CJv.js +1 -0
- package/dist/assets/{account-page-IVZcGHZy.js → account-page-Df1VB34_.js} +1 -1
- package/dist/assets/{account-shell-DdH2Ze4T.js → account-shell-Dk4m-iaE.js} +1 -1
- package/dist/assets/{acp-run-detail-panel-UjpE_MSy.js → acp-run-detail-panel-DsqMAPE4.js} +1 -1
- package/dist/assets/{activity-steps-panel-ChM6OAY8.js → activity-steps-panel-C9z9FMmK.js} +1 -1
- package/dist/assets/{add-credits-modal-ByR0kDly.js → add-credits-modal-RIAYgbOT.js} +1 -1
- package/dist/assets/{ai-page-BmOCqfyq.js → ai-page-CI4LZXTY.js} +1 -1
- package/dist/assets/api-BjYAXdCk.js +1 -0
- package/dist/assets/{api-CQ3nejmH.js → api-Cx3i50oG.js} +1 -1
- package/dist/assets/{api-key-screen-BnQoBDlm.js → api-key-screen-BKFAcyqU.js} +1 -1
- package/dist/assets/{app-card--MsNli_3.js → app-card-CjRGDYCX.js} +1 -1
- package/dist/assets/{assistant-status-panel-BkuUZfnZ.js → assistant-status-panel-BkLYzQAL.js} +1 -1
- package/dist/assets/{auth-store-DDMY1UvK.js → auth-store-CVtcHK0b.js} +2 -2
- package/dist/assets/auth-welcome-screen-Pw3qXxi5.js +1 -0
- package/dist/assets/{avatar-random-D1LU-C7V.js → avatar-random-B5F8Cp2E.js} +1 -1
- package/dist/assets/{background-task-detail-panel-DQeMsdpK.js → background-task-detail-panel-DtJ1ZolD.js} +1 -1
- package/dist/assets/{billing-page-BU6n42tO.js → billing-page-CmVjD4bw.js} +3 -3
- package/dist/assets/{bookmarks-page-DIzvqlcG.js → bookmarks-page-DUbnEAgS.js} +1 -1
- package/dist/assets/{browser-Nd92UvKg.js → browser-Ca2R8csw.js} +2 -2
- package/dist/assets/{build-state-BZ5ujToI.js → build-state-laR44jYU.js} +1 -1
- package/dist/assets/channels-page-route-sLLh-p2k.js +9 -0
- package/dist/assets/{chat-C0-tqEYA.js → chat-1xy90pMn.js} +1 -1
- package/dist/assets/{chat-BWQujip4.js → chat-CHVUM3s0.js} +1 -1
- package/dist/assets/{chat-markdown-message-mIiMHNFn.js → chat-markdown-message-CtLdsT2K.js} +1 -1
- package/dist/assets/{checkout-continuation-UVo_MUjH.js → checkout-continuation-BvY4Kjz7.js} +1 -1
- package/dist/assets/{checkout-page-C1hWo56h.js → checkout-page-CWRkiEj1.js} +1 -1
- package/dist/assets/checkout-return-target-_Y86sfo0.js +1 -0
- package/dist/assets/{client-perf-DHnnpVkx.js → client-perf-BZu5XQCP.js} +1 -1
- package/dist/assets/{command-palette-C6fyPEFS.js → command-palette-B6PZe9A0.js} +1 -1
- package/dist/assets/command-palette-window-page-BYkkAV88.js +1 -0
- package/dist/assets/{community-page-DK1RRzQb.js → community-page-Dd84pjdI.js} +1 -1
- package/dist/assets/companion-surface-CZHv2avR.js +1 -0
- package/dist/assets/companion-surface-page-BvDSOFVH.js +1 -0
- package/dist/assets/{composer-settings-Bs2Ux46E.js → composer-settings-DBAb6W2i.js} +1 -1
- package/dist/assets/{connect-page-DcyvGKph.js → connect-page-DiO1EqEC.js} +1 -1
- package/dist/assets/{consent-controls-BqSz1Rrx.js → consent-controls-B_zCicqo.js} +1 -1
- package/dist/assets/{contacts-page-route--H1bhesC.js → contacts-page-route-fUfbhwZ5.js} +1 -1
- package/dist/assets/{conversation-cache-C3KMXxZQ.js → conversation-cache-qk0nNm6Q.js} +1 -1
- package/dist/assets/{conversation-navigation-DQEOhOXf.js → conversation-navigation-B_4jZ9Z2.js} +1 -1
- package/dist/assets/{conversation-queries-Crrs0Ih6.js → conversation-queries-M4Inozp_.js} +1 -1
- package/dist/assets/{conversation-selection-BFTHfyYb.js → conversation-selection-4ubh2ui-.js} +1 -1
- package/dist/assets/{credential-entry-page-DNW0ZIUD.js → credential-entry-page--HYBfvoW.js} +1 -1
- package/dist/assets/{credentials-page-BUxLoFkv.js → credentials-page-C-e4DqWt.js} +1 -1
- package/dist/assets/{csv-preview-FnIpBtF1.js → csv-preview-T_KT_vef.js} +1 -1
- package/dist/assets/{debug-page-01b8L6vC.js → debug-page-Be5Y5TVM.js} +2 -2
- package/dist/assets/{deploy-dialogs-I_QAK81w.js → deploy-dialogs-CgicOESj.js} +1 -1
- package/dist/assets/{deploy-store-C-WH19q9.js → deploy-store-dyN183E8.js} +1 -1
- package/dist/assets/{desktop-voice-activity-CPOU-25i.js → desktop-voice-activity-D1BSf0I-.js} +1 -1
- package/dist/assets/{detail-card-BzCuPjtL.js → detail-card-Bqnvs6YE.js} +1 -1
- package/dist/assets/{detail-drawer-CYUmZIyK.js → detail-drawer-j2jaITAL.js} +1 -1
- package/dist/assets/{detail-shell-B1BZYIqh.js → detail-shell-D1UEZCzz.js} +1 -1
- package/dist/assets/{developer-page-DshJ0gl6.js → developer-page-DD8xa8mQ.js} +1 -1
- package/dist/assets/{diagnostics-BrWbafo7.js → diagnostics-CwFqcLv_.js} +1 -1
- package/dist/assets/{doctor-handoff-store-CX39mMuw.js → doctor-handoff-store-Cy96Na-O.js} +1 -1
- package/dist/assets/{document-viewer-container-Bb7omFZS.js → document-viewer-container-BMmSidmj.js} +2 -2
- package/dist/assets/{document-viewer-page-Cyul2rIj.js → document-viewer-page-tTTco75r.js} +1 -1
- package/dist/assets/{emails-page-CArz1548.js → emails-page-CJM4OS94.js} +1 -1
- package/dist/assets/{esm-DYyr0ITx.js → esm-BD6nxr-q.js} +2 -2
- package/dist/assets/{esm-DjphWBuP.js → esm-BaEdQNCe.js} +2 -2
- package/dist/assets/esm-CtKndoc9.js +2 -0
- package/dist/assets/{esm-CfdMbmKl.js → esm-DTIJZw37.js} +2 -2
- package/dist/assets/{esm-tSqvpvZa.js → esm-FpGTFn5W.js} +2 -2
- package/dist/assets/{esm-L7cqLUll.js → esm-kYXyJ2zw.js} +2 -2
- package/dist/assets/{esm-DbEwZ3Za.js → esm-nl105Ya0.js} +2 -2
- package/dist/assets/{external-anchor-DQhNmTOb.js → external-anchor-CLy6d_za.js} +1 -1
- package/dist/assets/feed-item-status-actions--CCeCtuw.js +1 -0
- package/dist/assets/file-markdown-C1rEGVrN.js +2 -0
- package/dist/assets/first-run-scope-DdSaiULx.js +1 -0
- package/dist/assets/format-usd-tespTIex.js +1 -0
- package/dist/assets/{funnel-events-BfR30ND5.js → funnel-events-BP3XPaB5.js} +1 -1
- package/dist/assets/general-page-Bi87XguF.js +1 -0
- package/dist/assets/{haptics-Sti0ZroX.js → haptics-D3hzTCtH.js} +2 -2
- package/dist/assets/{hatching-screen-DUCKM3qi.js → hatching-screen-DA0yyXD1.js} +1 -1
- package/dist/assets/home-page-route-BSoWksW0.js +1 -0
- package/dist/assets/{hosting-screen-By2Dt_ov.js → hosting-screen-cfhZ-ct7.js} +1 -1
- package/dist/assets/{i18n--HmJLuhM.js → i18n-C9hRT4Lf.js} +3 -3
- package/dist/assets/{identity-page-route-4IEB7D_s.js → identity-page-route-BjSsi8PM.js} +1 -1
- package/dist/assets/index-BmDctEOW.css +2 -0
- package/dist/assets/{index-CflMsKlP.js → index-I9kwAKzY.js} +3 -3
- package/dist/assets/{ingest-C3QOaKA5.js → ingest-DXklElaR.js} +1 -1
- package/dist/assets/{inspect-page-D3vuZY29.js → inspect-page-naqIziez.js} +3 -3
- package/dist/assets/{integrations-page-Ck4sUGfr.js → integrations-page-zrUmh2xn.js} +1 -1
- package/dist/assets/{intelligence-layout-2iu6OgCh.js → intelligence-layout-CXzIl0Vl.js} +1 -1
- package/dist/assets/{invalidate-memory-queries-CSQ9nfIN.js → invalidate-memory-queries-C4-KSsdB.js} +1 -1
- package/dist/assets/{latest-assistant-text-hKWwKxXi.js → latest-assistant-text-JCjtByys.js} +1 -1
- package/dist/assets/{library-detail-page-DcRn2wsJ.js → library-detail-page-CyWiXwb9.js} +1 -1
- package/dist/assets/{library-page-Db5Pstgx.js → library-page-CzcvMljL.js} +1 -1
- package/dist/assets/{local-runtime-upgrade-T5WFNI2L.js → local-runtime-upgrade-BkoG5uVr.js} +1 -1
- package/dist/assets/{login-flow-Bprf1KQp.js → login-flow-D6ivg6PM.js} +1 -1
- package/dist/assets/login-page-Dmpz0GgT.js +1 -0
- package/dist/assets/{logout-page-HF_SMBkj.js → logout-page-CI3LDcqG.js} +1 -1
- package/dist/assets/{logs-layout-CNyrG8d2.js → logs-layout-BHP-ADUq.js} +1 -1
- package/dist/assets/{markdown-preview-CYSaj1MV.js → markdown-preview-Dx8E021p.js} +1 -1
- package/dist/assets/{memory-page-route-DDdpEiCD.js → memory-page-route-qvBEERTa.js} +1 -1
- package/dist/assets/memory-router-playground-page-Bnxf4hzQ.js +1 -0
- package/dist/assets/{message-files-panel-25T5M1Ct.js → message-files-panel-ZPa7eZHc.js} +1 -1
- package/dist/assets/{messages-DJ6wO978.js → messages-CPTfRZA4.js} +1 -1
- package/dist/assets/{metric-card-Bg72JUq3.js → metric-card-bXd-f58c.js} +1 -1
- package/dist/assets/multi-activity-group-AECQlBbV.js +1 -0
- package/dist/assets/native-anchor-Bn22ZLay.js +1 -0
- package/dist/assets/{native-biometric-BxYhgb-X.js → native-biometric-D9IxNvJM.js} +1 -1
- package/dist/assets/{native-deep-link-C-s7GeV-.js → native-deep-link-IwasVyFQ.js} +2 -2
- package/dist/assets/{native-file-B3U837ed.js → native-file-BpFW1c_c.js} +2 -2
- package/dist/assets/{navigation-resolver-D4kCxpGf.js → navigation-resolver-jIQ5B6JB.js} +1 -1
- package/dist/assets/{not-found-DlCb1TjZ.js → not-found-ui-gcXqK.js} +1 -1
- package/dist/assets/{notifications-CZJragaI.js → notifications-DK6b8YVI.js} +1 -1
- package/dist/assets/{notifications-page-D7nqzDdY.js → notifications-page-GRXZE_lL.js} +1 -1
- package/dist/assets/{oauth-complete-page-4tmCqzLC.js → oauth-complete-page-7NZZRVcj.js} +1 -1
- package/dist/assets/{oauth-connection-utils-DmZFWfiy.js → oauth-connection-utils-19Tfw-lp.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-CjVEoYgl.js → oauth-popup-complete-page-Ci39YXpe.js} +1 -1
- package/dist/assets/{onboarding-step-layout-BfHbyjc0.js → onboarding-step-layout-2G2ptxpI.js} +1 -1
- package/dist/assets/open-workspace-file-CYf_Tqw3.js +2 -0
- package/dist/assets/{operational-status-T7FDD0t5.js → operational-status-CMN32PL8.js} +1 -1
- package/dist/assets/page-shell-C3ZmdIop.js +1 -0
- package/dist/assets/page-surface-store-DJLLsNFC.js +1 -0
- package/dist/assets/{pairing-page-CweLlHZS.js → pairing-page-YPN7ISIr.js} +1 -1
- package/dist/assets/{pdf-file-preview-6vptz6t6.js → pdf-file-preview-udA0Apx_.js} +1 -1
- package/dist/assets/{pdf-preview-sG04pSiE.js → pdf-preview-6Xfl1tO1.js} +2 -2
- package/dist/assets/{personality-page-DV3W2t42.js → personality-page-CLsRq5L2.js} +1 -1
- package/dist/assets/{plans-page-D-z14zHg.js → plans-page-DkVXE0Jv.js} +1 -1
- package/dist/assets/{platform-detection-Dt0-jSAU.js → platform-detection-zth6eCY8.js} +1 -1
- package/dist/assets/{platform-login-notice-jeJJGuqn.js → platform-login-notice-CvFpWLJY.js} +1 -1
- package/dist/assets/{platform-loopback-page-y_4YDCry.js → platform-loopback-page-B8cGk07e.js} +1 -1
- package/dist/assets/{preview-error-BkNW-Vj0.js → preview-error-gCViZZRw.js} +1 -1
- package/dist/assets/{privacy-page-BXSqDC_-.js → privacy-page-BxJ2Cuev.js} +1 -1
- package/dist/assets/{privacy-screen-BkGGAYzN.js → privacy-screen-DlSj_9FT.js} +1 -1
- package/dist/assets/{provider-callback-page-C-bl_GDk.js → provider-callback-page-BPp1TM7J.js} +1 -1
- package/dist/assets/{provider-signup-page-PSLa_T38.js → provider-signup-page-Cv9_b_58.js} +1 -1
- package/dist/assets/{provisioning-targets-QWEnNCue.js → provisioning-targets-DDUZDQ_a.js} +1 -1
- package/dist/assets/{push-registration-BMwgTQHf.js → push-registration-CH_t0mI8.js} +2 -2
- package/dist/assets/{remove-from-device-dialog-BDRSkSad.js → remove-from-device-dialog-DeJ_gAmf.js} +1 -1
- package/dist/assets/{research-facts-_ZlA6tzF.js → research-facts-C2cY_gU2.js} +1 -1
- package/dist/assets/{research-mock-page-PPKtT6UI.js → research-mock-page-CB1_bEoa.js} +1 -1
- package/dist/assets/research-onboarding-route-BY3X_d2-.js +50 -0
- package/dist/assets/{research-results-view-BFBI--6l.js → research-results-view-BcQs2Zh9.js} +1 -1
- package/dist/assets/{retire-confirm-dialog-DPyqO3ao.js → retire-confirm-dialog-f-A5OVYj.js} +1 -1
- package/dist/assets/{review-terms-screen-Cba1alNi.js → review-terms-screen-CI_29cnc.js} +1 -1
- package/dist/assets/routes-OwGjl0BS.js +24 -0
- package/dist/assets/{runtime-upgrade-banner-BrXnDFJZ.js → runtime-upgrade-banner-Cj9E7kWP.js} +2 -2
- package/dist/assets/{sandbox-bridge-CXqBkVsW.js → sandbox-bridge-Dj1pIOXJ.js} +1 -1
- package/dist/assets/{schedules-page-D81oQFHC.js → schedules-page-0V6ECw0t.js} +1 -1
- package/dist/assets/{section-membership-B23vBXXp.js → section-membership-vg-XaMPS.js} +1 -1
- package/dist/assets/{select-assistant-screen-Bpp_Fhfx.js → select-assistant-screen-BZxPQqe4.js} +1 -1
- package/dist/assets/{self-hosted-servers-DYKQjALI.js → self-hosted-servers-BviPyNnl.js} +1 -1
- package/dist/assets/settings-CEQzAg2m.js +1 -0
- package/dist/assets/{settings-divider-DGdHGRSV.js → settings-divider-C0NZsB-L.js} +1 -1
- package/dist/assets/{settings-layout-Vv6ixknD.js → settings-layout-DgNBNUT7.js} +1 -1
- package/dist/assets/settings-navigation-CVw10LL_.js +1 -0
- package/dist/assets/{share-feedback-modal-BIIdahKH.js → share-feedback-modal-PlN6X3Pm.js} +2 -2
- package/dist/assets/{sidebar-tree-BNzVigoN.js → sidebar-tree-Bp0eeKf2.js} +1 -1
- package/dist/assets/{signup-page-DwghsKON.js → signup-page-gqz5_wG1.js} +1 -1
- package/dist/assets/{site-favicon-D5oxJG4i.js → site-favicon-Cu07pwc9.js} +1 -1
- package/dist/assets/{skill-detail-page-DrVoo07c.js → skill-detail-page-c0s3w3K3.js} +1 -1
- package/dist/assets/{skill-detail-panel-Co6OpnMY.js → skill-detail-panel-NYXq557_.js} +1 -1
- package/dist/assets/{skills-CAAcLlNJ.js → skills-5MnTu98B.js} +1 -1
- package/dist/assets/{src-qDZBwoEm.js → src-CImIAPTd.js} +1 -1
- package/dist/assets/{start-screen-CO55WEqw.js → start-screen-CHO19RCi.js} +1 -1
- package/dist/assets/{status-badge-pill-CoGc_Kjf.js → status-badge-pill-D8m98tJa.js} +1 -1
- package/dist/assets/{stt-language-picker-modal-7-gnUFiL.js → stt-language-picker-modal-BXLEBM7b.js} +1 -1
- package/dist/assets/{subagent-detail-panel-B7yd49jl.js → subagent-detail-panel-CrbpQRzW.js} +1 -1
- package/dist/assets/{subagent-store-D79M-K__.js → subagent-store-DqKEBlAM.js} +1 -1
- package/dist/assets/{superpowers-page-B0zX5FZy.js → superpowers-page-B5WGXphq.js} +1 -1
- package/dist/assets/{swipe-action-reveal-Ctx7MIFN.js → swipe-action-reveal-Ai9lRgUU.js} +1 -1
- package/dist/assets/{system-events-page-7z3m1kM5.js → system-events-page-_aap_0av.js} +1 -1
- package/dist/assets/{telegram-setup-wizard-DhIkHgMe.js → telegram-setup-wizard-BENKNAuh.js} +1 -1
- package/dist/assets/{text-preview-DFo5f2uH.js → text-preview-DUlKYC4u.js} +1 -1
- package/dist/assets/{theme-stage-page-CmF6f7RN.js → theme-stage-page-CbGuxQ23.js} +1 -1
- package/dist/assets/{tiptap-document-editor-DDfxW_SE.js → tiptap-document-editor-0vqw7hch.js} +1 -1
- package/dist/assets/{tool-detail-panel-Zx64Drl4.js → tool-detail-panel-C2wUYsf2.js} +1 -1
- package/dist/assets/{trust-rules-api-BtUxkSk-.js → trust-rules-api-DRJ1qP-y.js} +1 -1
- package/dist/assets/{upgrade-cancel-page-H2SezHRI.js → upgrade-cancel-page-Dbd3VJdm.js} +1 -1
- package/dist/assets/{upgrade-success-page-DoM6CoFp.js → upgrade-success-page-CHbEmpjg.js} +1 -1
- package/dist/assets/{use-assistant-capability-CmwC8eoT.js → use-assistant-capability-C-yHcMH4.js} +1 -1
- package/dist/assets/{use-assistant-identity-details-DqD-wXki.js → use-assistant-identity-details-u9sG9ip2.js} +1 -1
- package/dist/assets/{use-attachment-preview-BfZe160h.js → use-attachment-preview-Cq_IWTdT.js} +2 -2
- package/dist/assets/{use-attachment-squares-jfCXyibr.js → use-attachment-squares-BKi30wmg.js} +1 -1
- package/dist/assets/{use-bookmarks-Dg-dtmf5.js → use-bookmarks-Bl4tx8xK.js} +1 -1
- package/dist/assets/{use-checkout-dismiss-refresh-lXbrGudW.js → use-checkout-dismiss-refresh-BHuxVDUc.js} +1 -1
- package/dist/assets/use-command-palette-sections-CvNjev8s.js +1 -0
- package/dist/assets/{use-edge-swipe-CJ8niuZL.js → use-edge-swipe-C4IrskOL.js} +1 -1
- package/dist/assets/use-edge-swipe-back-CiO9raEw.js +2 -0
- package/dist/assets/{use-edit-app-CAyA09nW.js → use-edit-app-ByAfCYIL.js} +1 -1
- package/dist/assets/{use-is-org-ready-BYJTuCXo.js → use-is-org-ready-GDBxqujc.js} +1 -1
- package/dist/assets/use-onboarding-login-BdVTfZ3o.js +1 -0
- package/dist/assets/{use-platform-assistant-id-CuqHJket.js → use-platform-assistant-id-B7TrEBmf.js} +1 -1
- package/dist/assets/{use-platform-gate-DJ7NtOkG.js → use-platform-gate-DG9Xg3Hs.js} +1 -1
- package/dist/assets/{use-return-to-short-circuit-CXFMS-0F.js → use-return-to-short-circuit-EtY8cSC7.js} +1 -1
- package/dist/assets/{use-side-list-room-DtmLatRX.js → use-side-list-room-CUXPQyjw.js} +1 -1
- package/dist/assets/{use-skill-actions-DjwFUePB.js → use-skill-actions-CdbZjq6a.js} +1 -1
- package/dist/assets/{use-sticky-profiles-BYBk-2VZ.js → use-sticky-profiles-vQLFyEh0.js} +1 -1
- package/dist/assets/{use-stt-language-selection-82DrT6kd.js → use-stt-language-selection-CK6bUfVS.js} +1 -1
- package/dist/assets/{use-subagent-card-data-CTkK6bHj.js → use-subagent-card-data-DlVOBxXw.js} +1 -1
- package/dist/assets/use-transcript-message-by-id-FmIIrRsf.js +1 -0
- package/dist/assets/{use-transcript-messages-BvoNGyuA.js → use-transcript-messages-Q1PBxvSF.js} +1 -1
- package/dist/assets/{use-voice-sample-preview-BHCiYpHq.js → use-voice-sample-preview-CZoWWEeH.js} +1 -1
- package/dist/assets/useTranslation-D9pPv-bA.js +1 -0
- package/dist/assets/{voice-page-CqgBuO-G.js → voice-page-B1mJ2hkc.js} +1 -1
- package/dist/assets/{voice-providers-note-DmCKsoh8.js → voice-providers-note-TDQxSwUj.js} +1 -1
- package/dist/assets/{web-C6ruWL7-.js → web-CxX3pST-.js} +1 -1
- package/dist/assets/{web-ByBZa2-p.js → web-D1mJSG8v.js} +1 -1
- package/dist/assets/welcome-screen-DPXQU47t.js +1 -0
- package/dist/assets/{workflow-detail-panel-CXQymzrA.js → workflow-detail-panel-C0kN-iH3.js} +1 -1
- package/dist/assets/{workflow-store-DMcem5b6.js → workflow-store-BXqyb8CL.js} +1 -1
- package/dist/assets/{workspace-page-CHN0AzFJ.js → workspace-page-Mj_A1eeR.js} +1 -1
- package/dist/assets/{workspace-tree-query-BmugmuTC.js → workspace-tree-query-Dyls8wmV.js} +1 -1
- package/dist/index.html +93 -93
- package/package.json +1 -1
- package/dist/assets/account-C-_tLpl9.js +0 -1
- package/dist/assets/api-Cet3wU2m.js +0 -1
- package/dist/assets/channels-page-route-BVzZL9QF.js +0 -9
- package/dist/assets/checkout-return-target-Bj6qL3Z7.js +0 -1
- package/dist/assets/command-palette-window-page-nIdxmxPV.js +0 -1
- package/dist/assets/companion-surface-page-BZHSeP1U.js +0 -1
- package/dist/assets/esm-B8RIzuiy.js +0 -2
- package/dist/assets/file-markdown-Br-X9E8g.js +0 -2
- package/dist/assets/first-run-scope-CGwas_dv.js +0 -1
- package/dist/assets/format-usd-BSn1PAt3.js +0 -1
- package/dist/assets/general-page-DqxymzlR.js +0 -1
- package/dist/assets/home-page-route--ZWIkqRA.js +0 -1
- package/dist/assets/home-tool-permission-card-BGkMa_5c.js +0 -1
- package/dist/assets/index-yCM21OWQ.css +0 -2
- package/dist/assets/login-page-DsrM-8gG.js +0 -1
- package/dist/assets/memory-router-playground-page-Bvv1GiG1.js +0 -1
- package/dist/assets/multi-activity-group-CvLkSXkq.js +0 -1
- package/dist/assets/native-anchor-WUfwamgX.js +0 -1
- package/dist/assets/native-auth-error-B4gY5JEl.js +0 -1
- package/dist/assets/open-workspace-file-CDO9erng.js +0 -2
- package/dist/assets/page-shell-3Yi5Ezsv.js +0 -1
- package/dist/assets/page-surface-store-d61YqYCV.js +0 -1
- package/dist/assets/research-onboarding-route-Cv91i-43.js +0 -50
- package/dist/assets/routes-Cu81Z_6p.js +0 -24
- package/dist/assets/settings-DWADkKSC.js +0 -1
- package/dist/assets/settings-navigation-Dt128ttq.js +0 -1
- package/dist/assets/use-command-palette-sections-D3ZIddUs.js +0 -1
- package/dist/assets/use-edge-swipe-back-Dl-lRTON.js +0 -2
- package/dist/assets/use-onboarding-login-BosEuDpc.js +0 -1
- package/dist/assets/use-transcript-message-by-id-DTaTEqgT.js +0 -1
- package/dist/assets/useTranslation-DdVCKPgw.js +0 -1
- package/dist/assets/welcome-screen-Cghao5xK.js +0 -1
- /package/dist/assets/{app-types-DhugcUAb.js → app-types-DET4dder.js} +0 -0
- /package/dist/assets/{archive-redirect-page-DddErONf.js → archive-redirect-page-LFqfq3Zx.js} +0 -0
- /package/dist/assets/{billing-redirect-page-CaXtswvd.js → billing-redirect-page-B6zuKMxb.js} +0 -0
- /package/dist/assets/{build.umd-Bnx74y6d.js → build.umd-CwkQd6wk.js} +0 -0
- /package/dist/assets/{channels-BdtsaKuZ.js → channels-CXuBInAc.js} +0 -0
- /package/dist/assets/{common-CYa3Lx5T.js → common-EmSgsWNa.js} +0 -0
- /package/dist/assets/{contacts-Adtv7fIG.js → contacts-BRU7ohw2.js} +0 -0
- /package/dist/assets/{credential-requests-BjLAoauv.js → credential-requests-BbBZKJHx.js} +0 -0
- /package/dist/assets/{danger-zone-redirect-page-C45lMfXW.js → danger-zone-redirect-page-BuIG9f9S.js} +0 -0
- /package/dist/assets/{definitions-BvE4YCqW.js → definitions-Co0yLSy_.js} +0 -0
- /package/dist/assets/{definitions-BOuhvvgh.js → definitions-Yz8Uao4u.js} +0 -0
- /package/dist/assets/{devices-redirect-page-CTLNcuXg.js → devices-redirect-page-BoKYF1E9.js} +0 -0
- /package/dist/assets/{diff-rows-CMQi83GC.js → diff-rows-BrFK496i.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-zwouAP3d.js → emoji-catalog-data-BIIBfSqk.js} +0 -0
- /package/dist/assets/{environment-store-CgcCuCfv.js → environment-store-C4So_j-o.js} +0 -0
- /package/dist/assets/{esm-B3RQnhQB.js → esm-BJhqsukI.js} +0 -0
- /package/dist/assets/{esm-U4mAZE_5.js → esm-CPFvOH-c.js} +0 -0
- /package/dist/assets/{external-urls-B0QJBkzP.js → external-urls-Bg18AU4S.js} +0 -0
- /package/dist/assets/{file-editor-C2Qy2Ujg.js → file-editor-BwdObVSu.js} +0 -0
- /package/dist/assets/{home-DaG8KIqs.js → home-BwSxL4rM.js} +0 -0
- /package/dist/assets/{intelligence-B920vsi4.js → intelligence-DXpXyKbw.js} +0 -0
- /package/dist/assets/{keyboard-shortcuts-redirect-page-DSUfuOqd.js → keyboard-shortcuts-redirect-page-DSnux9sJ.js} +0 -0
- /package/dist/assets/{library-DqQriY4U.js → library-CuKVNDEp.js} +0 -0
- /package/dist/assets/{link-click-3KBltS8g.js → link-click-BsxbQxDe.js} +0 -0
- /package/dist/assets/{logs-s74ABgur.js → logs-Blq4k473.js} +0 -0
- /package/dist/assets/{machine-sizes-BEgYDPIN.js → machine-sizes-DzJ0TVYS.js} +0 -0
- /package/dist/assets/{media-preview-C0jyQw5_.js → media-preview-HgLvcAQ9.js} +0 -0
- /package/dist/assets/{onboarding-orcvuvpJ.js → onboarding-DK0I_g8T.js} +0 -0
- /package/dist/assets/{page-empty-state-BG1VeXc8.js → page-empty-state-CzHxZkBR.js} +0 -0
- /package/dist/assets/{password-reset-page-D4zTOGaM.js → password-reset-page-D8ONrPU-.js} +0 -0
- /package/dist/assets/{pdf-CjG-njep.js → pdf-UON6A_nT.js} +0 -0
- /package/dist/assets/{plugin-attribution-CcHpmela.js → plugin-attribution-C0u-eDRH.js} +0 -0
- /package/dist/assets/{plugin-detail-page-DWr7S8VR.js → plugin-detail-page--CvX0OXv.js} +0 -0
- /package/dist/assets/{plugins-page-BZLdfa7d.js → plugins-page-CZ16U_6n.js} +0 -0
- /package/dist/assets/{profile-metadata-CsakJtzD.js → profile-metadata-D9zzZn4_.js} +0 -0
- /package/dist/assets/{provider-key-CsMdPcM5.js → provider-key-DpdSx5gG.js} +0 -0
- /package/dist/assets/{radio-card-nav-D_-kt3tm.js → radio-card-nav-CrM7VJUk.js} +0 -0
- /package/dist/assets/{remote-web-DxCgPeJc.js → remote-web-DBCYTF2P.js} +0 -0
- /package/dist/assets/{schedules-D3oXqJMY.js → schedules-C3wE8OML.js} +0 -0
- /package/dist/assets/{schedules-rtwsTU7E.js → schedules-Co4-ymK5.js} +0 -0
- /package/dist/assets/{security-redirect-page-DbXxE5Ym.js → security-redirect-page-D6x3MANY.js} +0 -0
- /package/dist/assets/{setting-row-C0mDhzZy.js → setting-row-BvQpFvtr.js} +0 -0
- /package/dist/assets/{signup-shell-DnLhiMGV.js → signup-shell-DW976E_0.js} +0 -0
- /package/dist/assets/{skill-icon-sj-wJGzd.js → skill-icon-yVnZg-J1.js} +0 -0
- /package/dist/assets/{skills-page-yj4WNgG3.js → skills-page-B_VTCiN2.js} +0 -0
- /package/dist/assets/{sounds-page-Co2G6n-5.js → sounds-page-BdSO1UIf.js} +0 -0
- /package/dist/assets/{system-events-redirect-page-Dbxsscgn.js → system-events-redirect-page-DbyqOqe_.js} +0 -0
- /package/dist/assets/{terminal-og9TTXfZ.js → terminal-_tzbWcM4.js} +0 -0
- /package/dist/assets/{usage-redirect-page-NZfMbBv6.js → usage-redirect-page-DyTnwv4x.js} +0 -0
- /package/dist/assets/{use-skill-detail-files-DNaNHaP0.js → use-skill-detail-files-Bg4G44J3.js} +0 -0
- /package/dist/assets/{use-supports-credentials-settings-BCD9S39r.js → use-supports-credentials-settings-Cj-Py42f.js} +0 -0
- /package/dist/assets/{use-truncated-blob-text-CHF4X4vL.js → use-truncated-blob-text-BYAPiP8I.js} +0 -0
- /package/dist/assets/{weather-forecast-display-8i3-jfUZ.js → weather-forecast-display-D3IBgGHv.js} +0 -0
- /package/dist/assets/{web-DXzSQlx4.js → web-B60tNeyj.js} +0 -0
- /package/dist/assets/{web-Crg_ekZH.js → web-BSizndvP.js} +0 -0
- /package/dist/assets/{web-to2ecOqW.js → web-CXad-fWd.js} +0 -0
- /package/dist/assets/{web-xhYMQG7j.js → web-Cpz2h_dP.js} +0 -0
- /package/dist/assets/{web-eg_n1fSm.js → web-Cr238HhI.js} +0 -0
- /package/dist/assets/{web-B5o07_c8.js → web-Nd-L7NoL.js} +0 -0
- /package/dist/assets/{web-Ctf28EEk.js → web-W2HEHjFb.js} +0 -0
- /package/dist/assets/{workspace-BBqltPoi.js → workspace-BFa6JWKe.js} +0 -0
- /package/dist/assets/{xterm-DJn4nvHR.js → xterm-DFQikp5h.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-DEYHenuA.js → xterm-addon-fit-B04vX_IV.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{r as t}from"./capture-error-DiNp24s6.js";import{t as n}from"./react-BFJW0bSv.js";import{W as r,t as i}from"./button-VkxVX0DM.js";import{n as a}from"./QueryClientProvider-EuRl-wrW.js";import{t as o}from"./useQuery-CTSuec5b.js";import{t as s}from"./jsx-runtime-BJ8jcmzB.js";import{t as c}from"./cn-Cf8SmgbR.js";import{t as l}from"./typography-DekrYXvs.js";import{o as u}from"./list-row-CDwzGT9g.js";import{t as d}from"./chevron-down-CmQCCo_x.js";import{t as f}from"./chevron-right-Dwr_Sx98.js";import{t as p}from"./loader-circle-DYe85z3g.js";import{L as m}from"./src-qDZBwoEm.js";import{n as h,t as g}from"./input-DkgpMeG9.js";import{t as _}from"./toggle-0qt1e_3r.js";import{t as v}from"./modal-UYNawsIu.js";import{n as y}from"./toast-DqqWkjsh.js";import{t as b}from"./select-BKyejRky.js";import{t as x}from"./assistant-identity-store-DhAqaifK.js";import{t as S}from"./is-electron-wgAC5Mzb.js";import{o as C}from"./i18n--HmJLuhM.js";import{t as w}from"./Trans-BUsRawhS.js";import{t as T}from"./useTranslation-DdVCKPgw.js";import{r as E}from"./api-errors-CASENJGT.js";import{A as D,B as ee,D as O,E as k,F as A,N as j,O as M,P as N,R as P,d as F,j as I,k as L,s as R,u as z,w as B,z as V}from"./profile-pickers-B0hfDNt-.js";import{i as te,n as ne,o as H}from"./utils-BEkyAhbA.js";import{Gt as re,Wt as ie,Xt as ae,Yt as oe,dr as se,fr as ce}from"./sdk.gen-CiE6cMi0.js";import{n as U}from"./use-platform-gate-DJ7NtOkG.js";import{r as le}from"./use-is-org-ready-BYJTuCXo.js";import{Dt as ue,Et as de,Z as fe,u as pe}from"./react-query.gen-Bbh5MII3.js";var W=e(n(),1),me={maxTokens:!1,contextWindow:!1,effort:!1,speed:!1,verbosity:!1,temperature:!1,topP:!1,thinking:!1,thinkingLevel:!1};function G(e){return e===`gpt-5`||e.startsWith(`gpt-5.`)||e.startsWith(`gpt-5-`)}function K(e){return e.startsWith(`anthropic/`)}function he(e,t){let n=t.toLowerCase();return V(e).find(e=>e.id.toLowerCase()===n)}function q(e,t){return he(e,t)?.adaptiveThinkingOnly===!0}function ge(e){return K(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 J=[`minimal`,`low`,`medium`,`high`],_e=[`low`,`medium`,`high`];function ve(e){return/^gemini-3.*pro/.test(e)}var Y=new Set(J);function ye(e){return typeof e==`string`&&Y.has(e)}function be(e){return ve(e.toLowerCase())?_e:J}function xe(e,t){let n=he(e,t);return n?.supportsThinking===void 0?e===`anthropic`?!0:e===`openrouter`?ge(t):e===`vercel-ai-gateway`?K(t):!1:n.supportsThinking}function Se(e,t,n){return e===`anthropic`?!t.includes(`haiku`)&&n:e===`openai`?G(t):e===`openrouter`||e===`vercel-ai-gateway`?K(t)?!t.includes(`haiku`)&&n:n:e===`fireworks`||e===`together`||e===`baseten`?n:!1}var Ce=new Set([`openai-compatible`,`fireworks`,`minimax`,`atlascloud`,`baseten`,`ollama`,`openrouter`,`together`,`vercel-ai-gateway`]);function X(e,t){return t||Ce.has(e)}function we(e,t){if(!e||!t)return me;let n=e.toLowerCase(),r=n===`chatgpt`?`openai`:n,i=t.toLowerCase(),a=r===`anthropic`||(r===`openrouter`||r===`vercel-ai-gateway`)&&K(i),o=xe(r,i);return{maxTokens:!0,contextWindow:!0,effort:Se(r,i,o),speed:r===`anthropic`&&i.includes(`opus`),verbosity:r===`openai`&&G(i),temperature:a,topP:X(r,a),thinking:(r===`anthropic`||r===`openrouter`||r===`vercel-ai-gateway`&&K(i))&&o&&!q(r,i),thinkingLevel:r===`gemini`&&o}}var Z=s(),Q=[`inherit`,`none`,`low`,`medium`,`high`,`xhigh`,`max`],Te=[`standard`,`fast`],Ee=[`low`,`medium`,`high`],De=`default`,Oe=64e3;function ke({label:e,value:t,onChange:n,defaultValue:r,max:a,disabled:o}){let{t:s}=T(`settings`),c=t===null,l=t??r,[u,d]=(0,W.useState)(c?``:String(t)),[f,p]=(0,W.useState)(t);t!==f&&(p(t),d(t===null?``:String(t)));function h(e){d(e);let t=e.trim();if(t===``){n(null);return}let r=Number(t);Number.isFinite(r)&&r>=1e3&&r<=a&&n(r)}function _(e){let r=e.trim();if(r===``){n(null);return}let i=Number(r);if(!Number.isFinite(i)){d(t===null?``:String(t));return}let o=z(i,a);d(String(o)),n(o)}return(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e}),c?(0,Z.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:s(`profileAdvancedParams.defaultValueLabel`,{value:F(r)})}):null]}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(`div`,{className:`flex-1`,children:(0,Z.jsx)(m,{value:l,onValueChange:e=>n(typeof e==`number`?e:e[0]),min:L,max:a,step:D,disabled:o,"aria-label":e})}),(0,Z.jsx)(g,{type:`number`,inputMode:`numeric`,value:u,placeholder:String(r),onChange:e=>h(e.target.value),onBlur:e=>_(e.target.value),onKeyDown:e=>{e.key===`Enter`&&_(e.currentTarget.value)},min:L,max:a,step:D,disabled:o,"aria-label":s(`profileAdvancedParams.tokensAriaLabel`,{label:e}),wrapperClassName:`w-32 shrink-0`,className:`text-right tabular-nums`}),(0,Z.jsx)(i,{variant:`ghost`,size:`compact`,onClick:()=>n(null),disabled:o||c,children:s(`profileAdvancedParams.reset`)})]})]})}function Ae({visibility:e,isReadOnly:t,model:n,selectedModel:r,defaultMaxOutputTokens:i,defaultContextWindowMaxInputTokens:a,maxTokens:o,onMaxTokensChange:s,contextWindowMaxInputTokens:c,onContextWindowChange:l,effort:d,onEffortChange:f,speed:p,onSpeedChange:h,verbosity:g,onVerbosityChange:v,temperatureEnabled:y,onTemperatureEnabledChange:b,temperature:x,onTemperatureChange:S,topPEnabled:C,onTopPEnabledChange:w,topP:E,onTopPChange:D,thinkingEnabled:ee,onThinkingEnabledChange:O,thinkingStreamThinking:k,onThinkingStreamThinkingChange:A,thinkingLevel:j,onThinkingLevelChange:M}){let{t:N}=T(`settings`),P=R(),F=r?.maxOutputTokens??Oe,I=r?.contextWindowTokens??2e5,L=Math.min(i??Oe,F),z=Math.min(a??2e5,I);return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[!t&&P&&(0,Z.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:N(`profileAdvancedParams.snapshotsHint`)}),e.maxTokens&&(0,Z.jsx)(ke,{label:N(`profileAdvancedParams.maxOutputTokensLabel`),value:o,onChange:s,defaultValue:L,max:F,disabled:t}),e.contextWindow&&(0,Z.jsx)(ke,{label:N(`profileAdvancedParams.contextWindowLabel`),value:c,onChange:l,defaultValue:z,max:I,disabled:t||!r}),e.effort&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:N(`profileAdvancedParams.effortLabel`)}),(0,Z.jsx)(u,{items:Q.map(e=>({value:e,label:e===`inherit`?N(`profileAdvancedParams.effortSegmentDefault`):e,disabled:t})),value:d,onChange:e=>f(e),ariaLabel:N(`profileAdvancedParams.effortLabel`)})]}),e.speed&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:N(`profileAdvancedParams.speedLabel`)}),(0,Z.jsx)(u,{items:Te.map(e=>({value:e,label:e,disabled:t})),value:p,onChange:e=>h(e),ariaLabel:N(`profileAdvancedParams.speedLabel`)})]}),e.verbosity&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:N(`profileAdvancedParams.verbosityLabel`)}),(0,Z.jsx)(u,{items:Ee.map(e=>({value:e,label:e,disabled:t})),value:g,onChange:e=>v(e),ariaLabel:N(`profileAdvancedParams.verbosityLabel`)})]}),e.temperature&&(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsx)(_,{checked:y,onChange:e=>b(e),label:N(`profileAdvancedParams.temperatureLabel`),disabled:t}),y&&(0,Z.jsx)(`div`,{className:`flex items-center justify-between`,children:(0,Z.jsx)(`div`,{className:`flex-1`,children:(0,Z.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,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsx)(_,{checked:C,onChange:e=>w(e),label:N(`profileAdvancedParams.topPLabel`),disabled:t}),C&&(0,Z.jsx)(`div`,{className:`flex items-center justify-between`,children:(0,Z.jsx)(`div`,{className:`flex-1`,children:(0,Z.jsx)(m,{value:E,onValueChange:e=>D(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,Z.jsxs)(`div`,{className:`space-y-3`,children:[(0,Z.jsx)(_,{checked:ee,onChange:e=>{O(e),e||A(!1)},label:N(`profileAdvancedParams.enableExtendedThinkingLabel`),disabled:t}),ee&&(0,Z.jsx)(`div`,{className:`pl-4`,children:(0,Z.jsx)(_,{checked:k,onChange:e=>A(e),label:N(`profileAdvancedParams.streamThinkingTokensLabel`),disabled:t})})]}),e.thinkingLevel&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsxs)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:[N(`profileAdvancedParams.thinkingLevelLabel`),` `,(0,Z.jsx)(`span`,{className:`text-[var(--content-disabled)]`,children:N(`profileAdvancedParams.thinkingLevelInheritHint`)})]}),(0,Z.jsx)(u,{items:[`default`,...be(n)].map(e=>({value:e,label:`${e}`,disabled:t})),value:j,onChange:M,ariaLabel:N(`profileAdvancedParams.thinkingLevelLabel`)})]})]})}function je(e){return V(e).filter(e=>j.has(e.id))}function Me(e,t,n){return!e||V(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 Ne=[`anthropic`,`openai`,`gemini`,`ollama`,`fireworks`,`together`,`openrouter`,`vercel-ai-gateway`,`minimax`,`atlascloud`,`litellm`,`baseten`,`poolside`,`openai-compatible`];function Pe(e){return e===`ollama`?`none`:`api_key`}function Fe(e){let t=e.split(`/`);return t.length<3||t[0]!==`credential`?null:{service:t[1],field:t.slice(2).join(`/`)}}function Ie(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 Le(e,t){if(e!==400)return;let n=t?.error?.message;return typeof n==`string`&&n.length>0?n:void 0}function Re(e){return e.label?e.label:e.auth.type===`oauth_subscription`?A.chatgpt:A[e.provider]??e.provider}var ze=new Set([`ollama`]);function Be(e,t){return e===t?!0:e===`vellum`&&O.has(t)}function Ve(e,t){return!ze.has(e)||t}function He(e){return k.filter(t=>Ve(t,e))}function Ue(e){return Ne.filter(t=>Ve(t,e))}function We(e){return Object.keys(N).filter(t=>Ve(t,e))}function Ge(){return He(U())}function Ke(){return Ue(U())}function qe(){return We(U())}function Je(e,t){let n=[...new Set(e.map(e=>e.provider))].filter(e=>Ve(e,t)),r=[];return n.includes(`vellum`)&&r.push(I),n.includes(`chatgpt`)&&r.push(B),r.push(...Ne.filter(e=>n.includes(e)),...n.filter(e=>e!==`vellum`&&e!==`chatgpt`&&!Ne.includes(e))),r}function Ye(e,t){let n=new Set(e.map(e=>e.provider));return Ue(t).filter(e=>e!==`openai-compatible`&&!n.has(e))}var Xe=`::`;function $(e,t){return`${e}${Xe}${t}`}function Ze(e){let t=e.indexOf(Xe);return t<=0?null:{provider:e.slice(0,t),connectionName:e.slice(t+2)}}var Qe=new Set([I,B]);function $e(e){let t=new Map;for(let n of e)Qe.has(n.provider)||n.provider===`openai-compatible`||t.set(n.provider,(t.get(n.provider)??0)+1);return new Set([...t.entries()].filter(([,e])=>e>=2).map(([e])=>e))}function et(e,t,n,r=`Default`){let i=$e(t),a=[];for(let o of e){if(o===`vellum`){a.push({value:o,label:n(o),meta:`Managed`});continue}if(o===`openai-compatible`){for(let e of t)e.provider===`openai-compatible`&&a.push({value:$(o,e.name),label:e.label&&e.label.trim()!==``?e.label:e.name,meta:`Custom`});continue}if(!i.has(o)){a.push({value:o,label:n(o)});continue}a.push({value:o,label:n(o),meta:r});for(let e of t)e.provider===o&&a.push({value:$(o,e.name),label:e.label&&e.label.trim()!==``?e.label:e.name,meta:n(o)})}return a}function tt(e){return(e??[]).map(e=>({id:e.id,displayName:e.displayName??e.id}))}var nt=`__custom-model-id__`;function rt({text:e}){return(0,Z.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e})}function it({provider:e,model:t,providerConnection:n,onProviderChange:r,onModelChange:a,onConnectionChange:o,connections:s,isReadOnly:c,availableConnectionsForProvider:u,connectionNotFound:d,hideProviderField:f=!1,providerError:p=null}){let m=e.length>0&&t.length===0,{t:h}=T(`settings`),[_,v]=(0,W.useState)(!1),y=Me(e,n,u),x=e!==``&&e!==`chatgpt`&&!y;(0,W.useEffect)(()=>{x||v(!1)},[e,x]);function S(e){if(e===nt){v(!0),a(``);return}a(e)}let C=qe(),w=U(),E=(0,W.useMemo)(()=>{let t=Je(s??[],w);return e&&!t.includes(e)?[...t,e]:t},[s,e,w]),D=s===void 0?C:E,ee=D.length===0&&!c,O=e===`openai`&&!c&&u.length===0&&(s??[]).some(e=>e.provider===`chatgpt`||e.auth.type===`oauth_subscription`)?h(`profileEditor.subscriptionSteeringHint`):void 0,k=(0,W.useMemo)(()=>{if(!e)return[];let t=V(e);if(t.length>0)return Me(e,n,u)?je(e):t;if(n){let e=u.find(e=>e.name===n);return e?tt(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]),j=(0,W.useMemo)(()=>{if(!t||k.some(e=>e.id===t))return k;let n=V(e).find(e=>e.id===t),r=u.flatMap(e=>e.models??[]).find(e=>e.id===t),i=n?.displayName??r?.displayName??t;return[...k,{id:t,displayName:i}]},[t,k,e,u]),N=e?k.length===0?e===`openai-compatible`?`configure-connection`:`unknown-to-catalog`:null:`no-provider`,P=(0,W.useMemo)(()=>{switch(N){case`no-provider`:return{placeholder:h(`profileEditorProviderSection.modelEmptyNoProviderPlaceholder`),hint:null};case`configure-connection`:return{placeholder:h(`profileEditorProviderSection.modelEmptyConfigureConnectionPlaceholder`),hint:h(`profileEditorProviderSection.modelEmptyConfigureConnectionHint`)};case`unknown-to-catalog`:return{placeholder:h(`profileEditorProviderSection.modelEmptyUnknownPlaceholder`),hint:h(`profileEditorProviderSection.modelEmptyUnknownHint`)};default:return null}},[N,h]);(0,W.useEffect)(()=>{if(!e||_)return;let n=V(e);n.length>0&&!n.some(e=>e.id===t)||t&&k.length>0&&!k.some(e=>e.id===t)&&a(``)},[t,k,a,e,_]);let F=h(`aiProviderPicker.defaultEntryMeta`),I=(0,W.useMemo)(()=>{let t=et(D,s??[],e=>A[e]??e,F).map(({value:e,label:t,meta:n})=>({value:e,label:t,suffix:n?(0,Z.jsx)(rt,{text:n}):void 0}));return d&&e===`openai-compatible`&&n&&t.push({value:$(M,n),label:`${n} ${h(`profileEditorProviderSection.providerNotFoundSuffix`)}`,suffix:void 0}),e===`openai-compatible`&&!n&&t.push({value:M,label:A[`openai-compatible`]??`openai-compatible`,suffix:void 0}),t},[D,s,d,e,n,F,h]),L=e&&n?$(e,n):null,R=(()=>{if(!n)return null;let e=s?.find(e=>e.name===n);return e&&(e.provider===`vellum`||e.provider===`chatgpt`)?e.provider:null})(),z=e=>I.some(t=>t.value===e),B=L!==null&&z(L)?L:R!==null&&z(R)?R:e;return(0,Z.jsxs)(Z.Fragment,{children:[!f&&(0,Z.jsx)(b,{id:`profile-editor-provider`,label:h(`profileEditorProviderSection.providerLabel`),errorText:p&&ee?h(`profileEditorProviderSection.noProviderConnectionsHint`):p,helperText:ee&&!p?h(`profileEditorProviderSection.noProviderConnectionsHint`):O,value:B,onChange:t=>{let n=Ze(t);if(n){r(n.provider),o(n.connectionName);return}r(t),t===e&&o(``)},disabled:c,placeholder:h(`profileEditorProviderSection.selectProviderPlaceholder`),options:I}),d&&!c&&(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:h(`profileEditorProviderSection.connectionNotFound`)}),(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:h(`profileEditorProviderSection.modelLabel`)}),_?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(g,{value:t,onChange:e=>a(e.target.value),disabled:c,placeholder:h(`profileEditorProviderSection.customModelPlaceholder`),"aria-label":h(`profileEditorProviderSection.customModelAriaLabel`),fullWidth:!0,autoFocus:!0}),(0,Z.jsx)(i,{variant:`link`,size:`compact`,disabled:c,onClick:()=>v(!1),children:h(`profileEditorProviderSection.chooseFromList`)})]}):(0,Z.jsx)(b,{value:t,onChange:S,disabled:c||!e,"aria-label":h(`profileEditorProviderSection.modelAriaLabel`),placeholder:P?.placeholder??h(`profileEditorProviderSection.selectModelPlaceholder`),options:[...j.map(e=>({value:e.id,label:e.displayName})),...x?[{value:nt,label:h(`profileEditorProviderSection.enterCustomModelIdOption`)}]:[]]}),_?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:h(`profileEditorProviderSection.enterCustomModelIdHint`)}):m&&!c?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:P?.hint??h(`profileEditorProviderSection.selectModelError`)}):null]})]})}var at=e(r(),1);function ot(e,t,n){return[`credentialPresence`,e,t,n]}function st({assistantId:e,credentialKind:n,credentialName:r,enabled:i=!0}){let a=le(),s=o({queryKey:ot(e??``,n,r),queryFn:async()=>{let{data:t}=await ce({path:{assistant_id:e},body:{type:n,name:r},throwOnError:!0});return t.found},enabled:!!e&&i&&a,retry:t,staleTime:3e4});return{hasStoredCredential:s.data??!1,isLoading:s.isLoading}}function ct({assistantId:e,onConnected:t}){let{t:n}=T(`settings`),[r,a]=(0,W.useState)(`idle`),[o,s]=(0,W.useState)(``),[c,u]=(0,W.useState)(null);async function d(){a(`starting`),u(null);let t=window.open(`about:blank`,`_blank`);try{let{data:{authorize_url:n}}=await re({path:{assistant_id:e},throwOnError:!0});t?(t.opener=null,t.location.href=n):window.open(n,`_blank`,`noopener`),a(`paste_url`)}catch{t?.close(),a(`failed`),u(C(`settings:chatgptOauthSection.startFailed`))}}async function f(){u(null);let n=o.trim();if(!n){u(C(`settings:chatgptOauthSection.pasteUrlError`));return}let r;try{r=new URL(n)}catch{u(C(`settings:chatgptOauthSection.invalidUrl`));return}let i=r.searchParams.get(`code`),s=r.searchParams.get(`state`);if(!i){u(C(`settings:chatgptOauthSection.missingCode`));return}if(!s){u(C(`settings:chatgptOauthSection.missingState`));return}a(`exchanging`);try{await ie({path:{assistant_id:e},body:{code:i,state:s},throwOnError:!0}),a(`completed`);let{data:n}=await oe({path:{assistant_id:e},throwOnError:!0});t(n.connections.find(e=>e.name===`chatgpt-subscription`||e.name===`openai-chatgpt`)||{name:`chatgpt-subscription`,provider:`chatgpt`,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{a(`failed`),u(C(`settings:chatgptOauthSection.completeFailed`))}}function m(){a(`idle`),s(``),u(null)}return(0,Z.jsxs)(`div`,{className:`space-y-3 rounded-lg border border-[var(--border-base)] p-4`,children:[(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:n(`chatgptOauthSection.intro`)}),r===`idle`||r===`paste_url`?(0,Z.jsxs)(`div`,{className:`space-y-3`,children:[(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:r===`paste_url`?`text-[var(--content-tertiary)] line-through`:`text-[var(--content-secondary)]`,children:n(r===`idle`?`chatgptOauthSection.step1Idle`:`chatgptOauthSection.step1PasteUrl`)}),(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-secondary)]`,children:n(`chatgptOauthSection.step2`)}),(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-secondary)]`,children:n(`chatgptOauthSection.step3`)})]}),r===`idle`?(0,Z.jsx)(i,{variant:`outlined`,size:`compact`,onClick:()=>void d(),children:n(`chatgptOauthSection.signInButton`)}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(g,{value:o,onChange:e=>{s(e.target.value),u(null)},placeholder:n(`chatgptOauthSection.urlPlaceholder`),fullWidth:!0}),(0,Z.jsx)(`div`,{className:`flex justify-end`,children:(0,Z.jsx)(i,{variant:`primary`,size:`compact`,disabled:!o.trim(),onClick:()=>void f(),children:n(`chatgptOauthSection.completeSignIn`)})})]})]}):null,r===`starting`?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(p,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,Z.jsx)(l,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:n(`chatgptOauthSection.startingSignIn`)})]}):null,r===`exchanging`?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(p,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,Z.jsx)(l,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:n(`chatgptOauthSection.completingSignIn`)})]}):null,r===`completed`?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--system-positive-strong)]`,children:n(`chatgptOauthSection.connected`)}):null,c?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:c}):null,r===`failed`?(0,Z.jsx)(i,{variant:`outlined`,size:`compact`,onClick:m,children:n(`chatgptOauthSection.tryAgain`)}):null]})}var lt=new Set(Object.entries(A).flatMap(([e,t])=>[e.toLowerCase(),t.toLowerCase()])),ut={reserved:`That name belongs to a built-in provider. Pick another.`,duplicate:`A custom provider with this name already exists.`};function dt(e,t,n){let r=e.trim().toLowerCase();return r?lt.has(r)?`reserved`:(t??[]).some(e=>e.provider===`openai-compatible`&&e.name!==n&&(e.label?.trim()||e.name).toLowerCase()===r)?`duplicate`:null:null}function ft(e){return e.toLowerCase().split(/[^a-z0-9]+/).filter(Boolean).join(`-`)}function pt(e){return ft(e)}function mt(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 ht(e,t){return{name:A[e]??e,key:mt(`${pt(e)}-personal`,t)}}function gt(e,t){return{name:e,key:mt(pt(e),t)}}function _t({apiKeyValue:e,onApiKeyChange:t,credential:n,onCredentialChange:r,isLoadingCredential:a,apiKeyPlaceholder:o,provider:s,providerCredentials:c,showAdvancedSection:u,onError:d}){let{t:m}=T(`settings`),[h,_]=(0,W.useState)(!1),[v,y]=(0,W.useState)(!1),[x,S]=(0,W.useState)(``);return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:m(`providerEditorApiKeySection.apiKeyLabel`)}),a?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 h-8`,children:[(0,Z.jsx)(p,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,Z.jsx)(l,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:m(`providerEditorApiKeySection.loading`)})]}):(0,Z.jsx)(g,{type:`password`,value:e,onChange:e=>{t(e.target.value),d(null)},placeholder:o,fullWidth:!0})]}),u&&(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`button`,{type:`button`,"aria-expanded":h,onClick:()=>_(e=>!e),className:`flex items-center gap-1 text-body-small-default text-[var(--content-secondary)] w-full text-left`,children:[(0,Z.jsx)(f,{className:`h-4 w-4 transition-transform ${h?`rotate-90`:``}`}),(0,Z.jsx)(`span`,{children:m(`providerEditorApiKeySection.advanced`)}),(0,Z.jsx)(`span`,{className:`text-[var(--content-tertiary)] ml-1`,children:m(`providerEditorApiKeySection.credentialReferenceSuffix`)})]}),h&&(0,Z.jsxs)(`div`,{className:`mt-2 space-y-3`,children:[(()=>{let e=c.map(e=>{let t=`credential/${e.service}/${e.field}`;return{label:t,value:t}}),t=e.some(e=>e.value===n),i=n&&!t?[{label:n,value:n},...e]:e;return i.length===0?null:(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:m(`providerEditorApiKeySection.credentialReferenceLabel`)}),(0,Z.jsx)(b,{"aria-label":m(`providerEditorApiKeySection.credentialReferenceAriaLabel`),value:n,onChange:e=>{r(e)},options:i})]})})(),v&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:m(`providerEditorApiKeySection.newCredentialNameLabel`)}),(0,Z.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Z.jsx)(g,{value:x,onChange:e=>S(e.target.value),placeholder:m(`providerEditorApiKeySection.newCredentialPlaceholder`),fullWidth:!0}),(0,Z.jsx)(i,{variant:`primary`,size:`compact`,disabled:!x.trim(),onClick:()=>{let e=x.trim();e&&(r(`credential/${s}/${e}`),y(!1),S(``))},children:m(`providerEditorApiKeySection.use`)})]})]}),(0,Z.jsx)(`div`,{className:`flex justify-start`,children:(0,Z.jsx)(i,{variant:`ghost`,onClick:()=>{v?(y(!1),S(``)):y(!0)},children:m(v?`providerEditorApiKeySection.cancel`:`providerEditorApiKeySection.newCredential`)})})]})]})]})}var vt=`•`.repeat(8);function yt(e,t){return t?vt:e}function bt(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 xt({assistantId:e,enabled:n=!0}){let r=le(),i=o({...de({path:{assistant_id:e}}),enabled:!!e&&n&&r,select:e=>bt(e.secrets),retry:t,staleTime:3e4});return{credentials:i.data??[],isLoading:i.isLoading}}function St({assistantId:e,existingNames:t,connections:n,defaultProviderType:r,hideProviderSelect:o=!1,onCreated:s,onCancel:c,variant:u=`modal`,actionsSlot:d}){let{t:p}=T(`settings`),m=Ke(),h=r&&m.includes(r)?r:m[0]??`anthropic`,_=ht(h,t),[x,S]=(0,W.useState)(h===`openai-compatible`?``:_.name),[C,E]=(0,W.useState)(_.key),[D,ee]=(0,W.useState)(h),O=D===`chatgpt`,k=O?`openai`:D,j=O?`oauth_subscription`:Pe(k),[M,N]=(0,W.useState)(()=>h===`ollama`?``:h===`openai-compatible`?`credential/${_.key}/api_key`:`credential/${h}/api_key`),[P,F]=(0,W.useState)(``),[I,L]=(0,W.useState)(``),[R,z]=(0,W.useState)(!1),[B,V]=(0,W.useState)(null),[te,ne]=(0,W.useState)(!1),H=k===`openai-compatible`,re=(0,W.useMemo)(()=>{let e=!O&&!m.includes(k)?[...m,k]:[...m],t=e.indexOf(`openai`);return t>=0&&e.splice(t+1,0,`chatgpt`),e},[O,k,m]),ie=(0,W.useRef)(!1);function oe(e){ie.current=!0,S(e)}let[ce,U]=(0,W.useState)(``),[le,de]=(0,W.useState)(!1),fe=a(),pe=(0,W.useMemo)(()=>Fe(M),[M]),me=j===`api_key`&&pe!==null,{hasStoredCredential:G,isLoading:K}=st({assistantId:e,credentialKind:`credential`,credentialName:pe?`${pe.service}:${pe.field}`:``,enabled:me}),{credentials:he}=xt({assistantId:e,enabled:!0}),q=H?dt(x,n):null,ge=C.trim().length>0&&(!H||x.trim().length>0)&&q===null;async function J(){if(ge){z(!0),V(null);try{let t;if(j===`api_key`){let n=M.trim()||`credential/${H?C:k}/api_key`,r=ce.trim();if(r){de(!0);try{let t=Fe(n);await se({path:{assistant_id:e},body:t?{type:`credential`,name:`${t.service}:${t.field}`,value:r}:{type:`api_key`,name:k,value:r},throwOnError:!0});let i=ot(e,`credential`,t?`${t.service}:${t.field}`:``);fe.setQueryData(i,!0),fe.invalidateQueries({queryKey:ue({path:{assistant_id:e}})})}catch{V(p(`providerCreateForm.failedSaveApiKey`));return}finally{de(!1)}t={type:`api_key`,credential:n}}else if(G)t={type:`api_key`,credential:n};else if(H)t={type:`none`};else{V(p(`providerCreateForm.enterApiKeyOrCredential`));return}}else if(j===`oauth_subscription`){V(p(`providerCreateForm.useChatgptSignIn`));return}else t={type:`none`};let n=x.trim()||null,r={name:C.trim(),provider:k,auth:t,...n!==null&&{label:n},...H&&{base_url:P.trim()||null,models:I.trim()?I.split(`,`).map(e=>({id:e.trim()})).filter(e=>e.id):null}},{data:i,error:a,response:o}=await ae({path:{assistant_id:e},body:r});if(!o?.ok){V(Le(o?.status,a)??Ie(o?.status));return}if(!i){V(p(`providerCreateForm.emptyServerResponse`));return}y.success(p(`providerCreateForm.providerConnectedToast`)),s(i)}catch{V(p(`providerCreateForm.failedSaveProvider`))}finally{z(!1)}}}let _e=he.filter(e=>e.service===k),ve=_e.length>0,Y=yt(p(`providerCreateForm.apiKeyPlaceholder`),G),ye=te,be=(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`button`,{type:`button`,"aria-expanded":ye,onClick:()=>ne(e=>!e),className:`flex items-center gap-1 text-body-small-default text-[var(--content-secondary)] w-full text-left`,children:[(0,Z.jsx)(f,{className:`h-4 w-4 transition-transform ${ye?`rotate-90`:``}`}),(0,Z.jsx)(`span`,{children:p(`providerCreateForm.advanced`)})]}),ye&&(0,Z.jsx)(`div`,{className:`mt-2 space-y-4`,children:(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:(0,Z.jsx)(w,{i18nKey:`providerCreateForm.displayNameLabel`,ns:`settings`,components:{optional:(0,Z.jsx)(`span`,{className:`text-[var(--content-disabled)]`})}})}),(0,Z.jsx)(g,{value:x,onChange:e=>oe(e.target.value),placeholder:p(`providerCreateForm.displayNamePlaceholder`),fullWidth:!0})]})})]}),xe=(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[!o&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:p(`providerCreateForm.providerLabel`)}),(0,Z.jsx)(b,{"aria-label":p(`providerCreateForm.providerAriaLabel`),value:D,onChange:e=>{if(ee(e),V(null),e===`chatgpt`)return;let{name:n,key:r}=ht(e,t);ie.current||S(e===`openai-compatible`?``:n),E(r),N(e===`ollama`?``:e===`openai-compatible`?`credential/${r}/api_key`:`credential/${e}/api_key`)},options:[...re.filter(e=>e!==`openai-compatible`).map(e=>({value:e,label:A[e]})),...re.includes(`openai-compatible`)?[{value:`openai-compatible`,label:p(`providerCreateForm.customProviderOption`)}]:[]]}),H?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:p(`providerCreateForm.customProviderHint`)}):null]}),H&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:p(`providerCreateForm.nameLabel`)}),(0,Z.jsx)(g,{value:x,onChange:e=>oe(e.target.value),placeholder:p(`providerCreateForm.namePlaceholder`),fullWidth:!0}),q?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:ut[q]}):null]}),(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:p(`providerCreateForm.baseUrlLabel`)}),(0,Z.jsx)(g,{value:P,onChange:e=>F(e.target.value),placeholder:p(`providerCreateForm.baseUrlPlaceholder`),fullWidth:!0})]}),(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:p(`providerCreateForm.modelsLabel`)}),(0,Z.jsx)(g,{value:I,onChange:e=>L(e.target.value),placeholder:p(`providerCreateForm.modelsPlaceholder`),fullWidth:!0}),(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:p(`providerCreateForm.modelsHint`)})]})]}),j===`api_key`&&(0,Z.jsx)(_t,{apiKeyValue:ce,onApiKeyChange:U,credential:M,onCredentialChange:N,isLoadingCredential:K,apiKeyPlaceholder:Y,provider:k,providerCredentials:_e,showAdvancedSection:ve,onError:V}),H&&j===`api_key`?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:p(`providerCreateForm.localEndpointHint`)}):null,j===`oauth_subscription`&&(0,Z.jsx)(ct,{assistantId:e,onConnected:s}),!O&&!H&&be,B&&(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:B})]}),Se=(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(i,{variant:`ghost`,onClick:c,children:p(`providerCreateForm.cancel`)}),!O&&(0,Z.jsx)(i,{variant:`primary`,disabled:!ge||R||le,onClick:()=>void J(),children:R?p(`providerCreateForm.saving`):H&&x.trim()?p(`providerCreateForm.addNamed`,{name:x.trim()}):p(`providerCreateForm.add`)})]});return u===`inline`?(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[xe,d===void 0?(0,Z.jsx)(`div`,{className:`flex justify-end gap-2`,children:Se}):d&&(0,at.createPortal)(Se,d)]}):(0,Z.jsxs)(v.Content,{size:`md`,children:[(0,Z.jsxs)(v.Header,{children:[(0,Z.jsx)(v.Title,{children:p(`providerCreateForm.addProviderTitle`)}),(0,Z.jsx)(v.Description,{children:p(`providerCreateForm.addProviderDescription`)})]}),(0,Z.jsx)(v.Body,{children:xe}),(0,Z.jsx)(v.Footer,{children:Se})]})}var Ct=`__create_new_provider__`;function wt({editor:e,assistantId:t,connections:n,variant:r}){let{t:i}=T(`settings`),a=U(),o=e.effectiveMode===`create`,s=r===`panel`,[c,u]=(0,W.useState)(!1),d=c||!!e.keyError&&e.getDirty(),p=(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(o?`profileEditorFields.nameLabel`:`profileEditorFields.displayNameLabel`)}),(0,Z.jsx)(g,{type:`text`,value:e.label,onChange:t=>e.handleLabelChange(t.target.value),placeholder:i(`profileEditorFields.displayNamePlaceholder`),disabled:e.isReadOnly,fullWidth:!0})]}),m=(0,Z.jsx)(h,{label:(0,Z.jsx)(w,{i18nKey:`profileEditorFields.descriptionLabel`,ns:`settings`,components:{optional:(0,Z.jsx)(`span`,{className:`text-[var(--content-disabled)]`})}}),value:e.description,onChange:t=>e.setDescription(t.target.value),placeholder:i(`profileEditorFields.descriptionPlaceholder`),disabled:e.isReadOnly,rows:2,fullWidth:!0,className:`resize-none`}),v=(0,Z.jsx)(g,{label:i(`profileEditorFields.keyLabel`),type:`text`,value:e.key,onChange:t=>e.handleKeyChange(t.target.value),placeholder:i(`profileEditorFields.keyPlaceholder`),disabled:e.isReadOnly||e.effectiveMode===`edit`,errorText:e.isReadOnly?void 0:e.keyError,fullWidth:!0}),y=!s&&(!e.isReadOnly||e.status!==`active`)?(0,Z.jsx)(_,{checked:e.status===`active`,onChange:t=>e.setStatus(t?`active`:`disabled`),label:i(`profileEditorFields.activeLabel`),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,x=(0,Z.jsx)(Ae,{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}),S=e.saveError?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:e.saveError}):null,C=(0,W.useMemo)(()=>Ye(e.effectiveConnections,a),[e.effectiveConnections,a]),E=(0,W.useMemo)(()=>{let t=et(Je(e.effectiveConnections,a),e.effectiveConnections,e=>A[e]??e,i(`aiProviderPicker.defaultEntryMeta`)).map(({value:e,label:t,meta:n})=>({value:e,label:t,suffix:n?(0,Z.jsx)(rt,{text:n}):void 0}));for(let e of C){let n=Pe(e)===`api_key`?i(`profileEditorFields.addApiKey`):i(`profileEditorFields.setUp`);t.push({value:e,label:A[e]??e,suffix:(0,Z.jsx)(rt,{text:n})})}return t.push({value:Ct,label:i(`profileEditorFields.createNewProvider`)}),t},[a,e.effectiveConnections,C,i]),D=(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{id:`profile-editor-provider-label`,className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`profileEditorFields.providerLabel`)}),(0,Z.jsx)(b,{value:e.creatingProvider?e.pendingCreateProvider??Ct:e.provider&&e.providerConnection&&E.some(t=>t.value===$(e.provider,e.providerConnection))?$(e.provider,e.providerConnection):e.provider,onChange:t=>{if(t===Ct){e.setCreatingProvider(!0),e.setPendingCreateProvider(null),e.setNewProviderNote(!1);return}if(!t)return;let n=Ze(t);if(n){e.setCreatingProvider(!1),e.setPendingCreateProvider(null),e.provider===n.provider?n.provider===`openai-compatible`&&e.setModel(``):e.handleProviderChange(n.provider),e.setProviderConnection(n.connectionName);return}let r=t;if(C.includes(r)){e.setCreatingProvider(!0),e.setPendingCreateProvider(r),e.setNewProviderNote(!1);return}e.setCreatingProvider(!1),e.setPendingCreateProvider(null),e.handleProviderChange(r),r===e.provider&&e.setProviderConnection(``)},placeholder:i(`profileEditorFields.selectProviderPlaceholder`),"aria-labelledby":`profile-editor-provider-label`,options:E}),e.newProviderNote?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:i(`profileEditorFields.newProviderNote`)}):null]}),e.creatingProvider?(0,Z.jsx)(St,{variant:`inline`,assistantId:t,existingNames:e.effectiveConnections.map(e=>e.name),connections:e.effectiveConnections,defaultProviderType:(e.pendingCreateProvider??e.provider)||void 0,hideProviderSelect:e.pendingCreateProvider!==null,onCreated:e.handleProviderCreated,onCancel:()=>{e.setCreatingProvider(!1),e.setPendingCreateProvider(null)}},e.pendingCreateProvider??`any`):(0,Z.jsx)(it,{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(o){let t=e.model!==``;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[p,D,m,y,s?t&&(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[v,x]}):t&&(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`button`,{type:`button`,"aria-expanded":d,onClick:()=>u(e=>!e),className:`flex items-center gap-1 text-body-small-default text-[var(--content-secondary)] w-full text-left`,children:[(0,Z.jsx)(f,{className:`h-4 w-4 transition-transform ${d?`rotate-90`:``}`}),(0,Z.jsx)(`span`,{children:i(`profileEditorFields.advanced`)})]}),d?(0,Z.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[v,x]}):null]}),S]})}return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[p,m,v,y,(0,Z.jsx)(it,{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,providerError:e.providerError}),x,S]})}function Tt(e,t,n){if(e){let n=V(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 Et(e,t,n){let r=(0,W.useRef)(!1),i=(0,W.useRef)(!1);return{handleLabelChange:(0,W.useCallback)(a=>{i.current=!0,t(a),e===`create`&&!r.current&&n(ft(a))},[e,t,n]),handleKeyChange:(0,W.useCallback)(e=>{r.current=!0,i.current=!0,n(e)},[n]),resetDirty:(0,W.useCallback)(()=>{r.current=!1,i.current=!1},[]),getDirty:(0,W.useCallback)(()=>i.current,[])}}var Dt=`0.11.3-dev.202608102358.ef1568c`;async function Ot(e,t){await H(t);let n=x.getState().assistantId;return e!=null&&n!==e?!1:ne(Dt)}var kt=`0.10.12`;async function At(e,t){await H(t);let n=x.getState().assistantId;return e!=null&&n!==e?!1:ne(kt)}function jt({mode:e,profileName:t,initialValues:n,existingNames:r,connections:i,assistantId:s,onSave:c}){let[l,u]=(0,W.useState)(e),d=n?.invariant===!0&&l!==`create`,f=l===`view`||d,p=n?.status??`active`,[m,h]=(0,W.useState)(n?.label??``),[g,_]=(0,W.useState)(n?.description??``),[v,y]=(0,W.useState)(e===`create`?``:t??``),[b,x]=(0,W.useState)(n?.provider?n.provider:``),[S,C]=(0,W.useState)(n?.model??``),[w,T]=(0,W.useState)(n?.provider_connection??``),[D,O]=(0,W.useState)(n?.status??`active`),[k,A]=(0,W.useState)([]),[j,M]=(0,W.useState)(!1),[N,F]=(0,W.useState)(null),[L,R]=(0,W.useState)(n?.maxTokens??null),[z,B]=(0,W.useState)(n?.contextWindow?.maxInputTokens??null),[te,ne]=(0,W.useState)(n?.effort??`inherit`),[H,re]=(0,W.useState)(n?.speed??`standard`),[ie,ae]=(0,W.useState)(n?.verbosity??`medium`),[oe,se]=(0,W.useState)(typeof n?.temperature==`number`),[ce,U]=(0,W.useState)(typeof n?.temperature==`number`?n.temperature:.7),[le,ue]=(0,W.useState)(typeof n?.topP==`number`),[de,me]=(0,W.useState)(typeof n?.topP==`number`?n.topP:.95),G=f&&D!==p,[K,he]=(0,W.useState)(n?.thinking?.enabled??!1),[q,ge]=(0,W.useState)(n?.thinking?.streamThinking??!1),[J,_e]=(0,W.useState)(ye(n?.thinking?.level)?n.thinking.level:De),ve=(0,W.useMemo)(()=>b===`vellum`?ee(S):null,[b,S]),Y=ve?.model??S,be=(0,W.useMemo)(()=>b?V(b).find(e=>e.id===Y)??null:null,[b,Y]),{data:xe}=o({...pe({path:{assistant_id:s}}),staleTime:3e4}),Se=xe?.llm?.default?.maxTokens,Ce=xe?.llm?.default?.contextWindow?.maxInputTokens,X=(0,W.useMemo)(()=>we(b===`vellum`?ve?.provider??P(S)??n?.provider??``:b,Y),[b,S,Y,ve,n?.provider]),Z=(0,W.useMemo)(()=>{let e=i??[];if(k.length===0)return e;let t=new Set(e.map(e=>e.name));return[...e,...k.filter(e=>!t.has(e.name))]},[i,k]),Q=(0,W.useMemo)(()=>b?Z.filter(e=>Be(e.provider,b)||b===`openai`&&e.name===w&&e.provider===`chatgpt`):[],[b,Z,w]),Te=w!==``&&!Q.some(e=>e.name===w),{handleLabelChange:Ee,handleKeyChange:Oe,resetDirty:ke,getDirty:Ae}=Et(l,h,y),je=a(),[Me,Pe]=(0,W.useState)(!1),[Fe,Ie]=(0,W.useState)(null),[Le,Re]=(0,W.useState)(!1);(0,W.useEffect)(()=>{n?.provider_connection===`vellum`&&b===(n?.provider??``)&&i?.find(e=>e.name===n.provider_connection)?.provider===`vellum`&&x(I)},[i,b,n]),(0,W.useEffect)(()=>{let e=n?.provider;if(!e||b!==e||Ne.includes(e)||e===`vellum`||e===`chatgpt`)return;let t=i?.find(t=>t.name===e);!t||t.provider===`vellum`||t.provider===`chatgpt`||(x(t.provider),w===``&&T(t.name))},[i,b,w,n]),(0,W.useEffect)(()=>{ke(),Pe(!1),Ie(null),Re(!1),A([])},[t,e,ke]);function ze(e){if(e===b)return;x(e),C(``);let t=e===`chatgpt`?[]:Z.filter(t=>Be(t.provider,e));T(t.length===1?t[0].name:``),R(null),B(null),ne(`inherit`),re(`standard`),ae(`medium`),se(!1),U(.7),ue(!1),me(.95),he(!1),ge(!1),_e(De)}function Ve(e){if(T(e),b&&V(b).length===0&&S)if(e===``)new Set(Q.flatMap(e=>(e.models??[]).map(e=>e.id))).has(S)||C(``);else{let t=Q.find(t=>t.name===e);new Set((t?.models??[]).map(e=>e.id)).has(S)||C(``)}}function He(e){if(e!==S&&(C(e),R(null),B(null),l===`create`&&e&&!Ae())){let{name:t,key:n}=gt(Tt(b||void 0,e,Q),r);h(t),y(n)}}function Ue(e){let t=e.provider;t!==`vellum`&&(A(t=>t.some(t=>t.name===e.name)?t:[...t,e]),x(t),T(e.name),C(``),Pe(!1),Ie(null),Re(!0),je.invalidateQueries({queryKey:fe({path:{assistant_id:s}})}))}let We=v.trim(),Ge=We.length===0,Ke=/\s/.test(v),qe=l===`create`?r.includes(We):r.filter(e=>e!==t).includes(We),Je=b.length===0,Ye=b.length>0&&S.length===0,Xe=Ge||Ke||qe||Je||Ye,$=Ge?`Key is required`:Ke?`Key cannot contain whitespace`:qe?`A profile with this key already exists`:null,Ze=!f&&(l===`edit`||Ae())&&Je?`Select a provider`:null;async function Qe(){if(!(Xe&&!f)){if(f){if(!G)return;M(!0),F(null);try{await c(We,{status:`active`},{mode:`merge`})}catch(e){F(E(e)??`Failed to save profile. Please try again.`)}finally{M(!1)}return}M(!0),F(null);try{let e={},t=w===``&&Q.length===1?Q[0].name:w,r=Te?``:t,i=b===`chatgpt`||b===`vellum`&&await At(s),a=b===`vellum`?i?I:ve?.provider??P(S)??n?.provider??``:b,o=Y,u=i?``:r,d=r===``?void 0:Z.find(e=>e.name===r),f=d!==void 0&&(d.provider===`vellum`||d.provider===`chatgpt`||d.name===`vellum`||d.name===`chatgpt`||Ne.includes(d.name)),p=a;if(!i&&b!==``&&b!==`vellum`&&!f&&await Ot(s)){let e=Z.filter(e=>e.provider===b).length;p=d!==void 0&&(b===`openai-compatible`||e>=2)?d.name:b,u=``}l===`edit`?(e.label=m.trim()||null,e.description=g.trim()||null,e.provider=p||null,e.model=o||null,e.provider_connection=u||null):(m.trim()&&(e.label=m.trim()),g.trim()&&(e.description=g.trim()),p&&(e.provider=p),o&&(e.model=o),u&&(e.provider_connection=u)),X.maxTokens&&L!==null&&(e.maxTokens=L),X.contextWindow&&z!==null&&(e.contextWindow={maxInputTokens:z}),X.effort&&te!==`inherit`&&(e.effort=te),X.speed&&H!==`standard`&&(e.speed=H),X.verbosity&&(e.verbosity=ie),X.temperature&&(oe?e.temperature=ce:l===`edit`&&(e.temperature=null)),X.topP&&(le?e.topP=de:l===`edit`&&(e.topP=null)),X.thinking&&(e.thinking={enabled:K,...K?{streamThinking:q}:{}}),X.thinkingLevel&&J!==`default`&&(e.thinking={enabled:!0,level:J}),(l===`edit`||D!==`active`)&&(e.status=D),await c(We,e)}catch(e){F(E(e)??`Failed to save profile. Please try again.`)}finally{M(!1)}}}function $e(){u(`create`),y(``),ke()}return{effectiveMode:l,isReadOnly:f,isInvariant:d,hasViewModeChanges:G,label:m,description:g,key:v,provider:b,model:S,providerConnection:w,status:D,saving:j,saveError:N,keyError:$,providerError:Ze,isInvalid:Xe,maxTokens:L,contextWindowMaxInputTokens:z,effort:te,speed:H,verbosity:ie,temperatureEnabled:oe,temperature:ce,topPEnabled:le,topP:de,thinkingEnabled:K,thinkingStreamThinking:q,thinkingLevel:J,visibility:X,selectedModel:be,defaultMaxOutputTokens:Se,defaultContextWindowMaxInputTokens:Ce,effectiveConnections:Z,availableConnectionsForProvider:Q,connectionNotFound:Te,creatingProvider:Me,pendingCreateProvider:Fe,newProviderNote:Le,setDescription:_,setStatus:O,setMaxTokens:R,setContextWindowMaxInputTokens:B,setEffort:ne,setSpeed:re,setVerbosity:ae,setTemperatureEnabled:se,setTemperature:U,setTopPEnabled:ue,setTopP:me,setThinkingEnabled:he,setThinkingStreamThinking:ge,setThinkingLevel:_e,setCreatingProvider:Pe,setPendingCreateProvider:Ie,setNewProviderNote:Re,handleLabelChange:Ee,handleKeyChange:Oe,getDirty:Ae,handleProviderChange:ze,handleConnectionChange:Ve,handleModelChange:He,handleProviderCreated:Ue,setProviderConnection:T,setModel:C,handleSave:Qe,switchToSaveAsNew:$e}}var Mt=`/assistant/assets/pcm-downsample-worklet-CwNZrVLe.js`;function Nt(){if(!(typeof window>`u`))return window.AudioContext??window.webkitAudioContext}function Pt(e){let t=Nt();if(!t)throw Error(`Web Audio API is not available in this environment`);return new t(e)}var Ft=`pcm-downsample`,It=1600,Lt=16e3;function Rt(){return S()?window.vellum?.helper?.dictation:void 0}function zt(){let e=Rt();return!!e?.transcribe&&!!e.onTranscribed}var Bt=null,Vt=null;async function Ht(){return Bt||(Bt=Pt(),Vt=Bt.audioWorklet.addModule(Mt)),Bt.state!==`running`&&await Bt.resume(),await Vt,Bt}async function Ut(e,t){try{let n=await Ht(),r=n.createMediaStreamSource(e),i=new AudioWorkletNode(n,Ft,{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<It))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 Wt=8e3;async function Gt(e){let t=Rt();if(!t?.transcribe||!t.onTranscribed)return null;let n;try{n=await Kt(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),Wt)});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 Kt(e){let t=await e.arrayBuffer(),n=await new OfflineAudioContext(1,1,Lt).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 qt=4e3;async function Jt(e,t){let n=Rt();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 Ut(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),qt)})),l?.(),console.info(e===null?`dictation: native finalized not received`:`dictation: native finalized chars=${e.length}`),e})(),f)}var Yt=[{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`}}],Xt=`macos-native`,Zt=[{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:Xt,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.`}],Qt=[{id:`mailgun`,displayName:`Mailgun`,setupSkill:`mailgun-setup`,docsUrl:`https://www.mailgun.com/`},{id:`resend`,displayName:`Resend`,setupSkill:`resend-setup`,docsUrl:`https://resend.com/`}],$t=[`gemini-3.1-flash-image-preview`,`gemini-3-pro-image-preview`,`gpt-image-2`],en={"gemini-3.1-flash-image-preview":`Nano Banana 2`,"gemini-3-pro-image-preview":`Nano Banana Pro`,"gpt-image-2":`GPT Image 2`},tn=[`vellum`,`gemini`,`openai`],nn={vellum:`Vellum`,gemini:`Gemini`,openai:`OpenAI`};function rn(e){return e===`vellum`?[...$t]:$t.filter(t=>an(t)===e)}function an(e){return e.startsWith(`gpt-`)||e.startsWith(`dall-e-`)?`openai`:(e.startsWith(`gemini-`),`gemini`)}var on=`vellum:ai:imageGenProvider`,sn=`vellum:ai:imageGenModel`,cn=`vellum:ai:webSearchProvider`,ln=`vellum:ai:webFetchProvider`,un=`vellum:ai:emailMode`,dn=`vellum:ai:emailByoProvider`,fn=`vellum:voice:ttsProvider`,pn=`vellum:voice:ttsApiKey:`,mn=`vellum:voice:ttsVoiceId:`,hn=`vellum:voice:sttProvider`,gn=`vellum:voice:sttApiKey:`,_n=`0.10.8`;function vn(){return te(_n)}var yn=`0.11.0`;function bn(){return te(yn)}function xn({value:e,size:t=`default`,className:n,...r}){let i=t===`compact`;return(0,Z.jsxs)(`button`,{type:`button`,className:c(`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,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e}),(0,Z.jsx)(d,{"aria-hidden":!0,className:c(`shrink-0 text-[var(--content-tertiary)]`,i?`h-3 w-3`:`h-3.5 w-3.5`)})]})}var Sn={profiles:{},profileOrder:[]};function Cn(e,t){let n=e?.profiles,r=e?.profileOrder,i=!!n&&Object.keys(n).length>0,[a,o]=(0,W.useState)(Sn),[s,c]=(0,W.useState)(t);return t!==s&&(c(t),o(Sn)),(0,W.useEffect)(()=>{i&&o({profiles:n,profileOrder:r??[]})},[i,n,r]),i?{profiles:n,profileOrder:r??[]}:t===s?a:Sn}export{Mt as A,ct as B,rn as C,Gt as D,Jt as E,xt as F,Ie as G,st as H,yt as I,Le as J,Fe as K,_t as L,Tt as M,wt as N,Pt as O,St as P,ut as R,Yt as S,zt as T,Be as U,ot as V,Ge as W,Me as X,je as Y,en as _,dn as a,Xt as b,on as c,pn as d,fn as f,Qt as g,cn as h,vn as i,jt as j,Nt as k,gn as l,ln as m,xn as n,un as o,mn as p,Re as q,bn as r,sn as s,Cn as t,hn as u,tn as v,an as w,Zt as x,nn as y,dt as z};
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{r as t}from"./capture-error-DiNp24s6.js";import{t as n}from"./react-BFJW0bSv.js";import{W as r,t as i}from"./button-VkxVX0DM.js";import{n as a}from"./QueryClientProvider-EuRl-wrW.js";import{t as o}from"./useQuery-CTSuec5b.js";import{t as s}from"./jsx-runtime-BJ8jcmzB.js";import{t as c}from"./cn-Cf8SmgbR.js";import{t as l}from"./typography-DekrYXvs.js";import{o as u}from"./list-row-CDwzGT9g.js";import{t as d}from"./chevron-down-CmQCCo_x.js";import{t as f}from"./chevron-right-Dwr_Sx98.js";import{t as p}from"./loader-circle-DYe85z3g.js";import{R as m}from"./src-CImIAPTd.js";import{n as h,t as g}from"./input-DkgpMeG9.js";import{t as _}from"./toggle-0qt1e_3r.js";import{t as v}from"./modal-UYNawsIu.js";import{n as y}from"./toast-DqqWkjsh.js";import{t as b}from"./select-BKyejRky.js";import{t as x}from"./assistant-identity-store-DhAqaifK.js";import{t as S}from"./is-electron-wgAC5Mzb.js";import{s as C}from"./i18n-C9hRT4Lf.js";import{t as w}from"./Trans-FBE1EuwL.js";import{t as T}from"./useTranslation-D9pPv-bA.js";import{r as E}from"./api-errors-CASENJGT.js";import{A as D,B as ee,D as O,E as k,F as A,N as j,O as M,P as N,R as P,d as F,j as I,k as L,s as R,u as z,w as B,z as V}from"./profile-pickers-B0hfDNt-.js";import{i as te,n as ne,o as H}from"./utils-BEkyAhbA.js";import{Gt as re,Wt as ie,Xt as ae,Yt as oe,dr as se,fr as ce}from"./sdk.gen-CiE6cMi0.js";import{n as U}from"./use-platform-gate-DG9Xg3Hs.js";import{r as le}from"./use-is-org-ready-GDBxqujc.js";import{Dt as ue,Et as de,Z as fe,u as pe}from"./react-query.gen-Bbh5MII3.js";var W=e(n(),1),me={maxTokens:!1,contextWindow:!1,effort:!1,speed:!1,verbosity:!1,temperature:!1,topP:!1,thinking:!1,thinkingLevel:!1};function G(e){return e===`gpt-5`||e.startsWith(`gpt-5.`)||e.startsWith(`gpt-5-`)}function K(e){return e.startsWith(`anthropic/`)}function he(e,t){let n=t.toLowerCase();return V(e).find(e=>e.id.toLowerCase()===n)}function q(e,t){return he(e,t)?.adaptiveThinkingOnly===!0}function ge(e){return K(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 J=[`minimal`,`low`,`medium`,`high`],_e=[`low`,`medium`,`high`];function ve(e){return/^gemini-3.*pro/.test(e)}var Y=new Set(J);function ye(e){return typeof e==`string`&&Y.has(e)}function be(e){return ve(e.toLowerCase())?_e:J}function xe(e,t){let n=he(e,t);return n?.supportsThinking===void 0?e===`anthropic`?!0:e===`openrouter`?ge(t):e===`vercel-ai-gateway`?K(t):!1:n.supportsThinking}function Se(e,t,n){return e===`anthropic`?!t.includes(`haiku`)&&n:e===`openai`?G(t):e===`openrouter`||e===`vercel-ai-gateway`?K(t)?!t.includes(`haiku`)&&n:n:e===`fireworks`||e===`together`||e===`baseten`?n:!1}var Ce=new Set([`openai-compatible`,`fireworks`,`minimax`,`atlascloud`,`baseten`,`ollama`,`openrouter`,`together`,`vercel-ai-gateway`]);function X(e,t){return t||Ce.has(e)}function we(e,t){if(!e||!t)return me;let n=e.toLowerCase(),r=n===`chatgpt`?`openai`:n,i=t.toLowerCase(),a=r===`anthropic`||(r===`openrouter`||r===`vercel-ai-gateway`)&&K(i),o=xe(r,i);return{maxTokens:!0,contextWindow:!0,effort:Se(r,i,o),speed:r===`anthropic`&&i.includes(`opus`),verbosity:r===`openai`&&G(i),temperature:a,topP:X(r,a),thinking:(r===`anthropic`||r===`openrouter`||r===`vercel-ai-gateway`&&K(i))&&o&&!q(r,i),thinkingLevel:r===`gemini`&&o}}var Z=s(),Q=[`inherit`,`none`,`low`,`medium`,`high`,`xhigh`,`max`],Te=[`standard`,`fast`],Ee=[`low`,`medium`,`high`],De=`default`,Oe=64e3;function ke({label:e,value:t,onChange:n,defaultValue:r,max:a,disabled:o}){let{t:s}=T(`settings`),c=t===null,l=t??r,[u,d]=(0,W.useState)(c?``:String(t)),[f,p]=(0,W.useState)(t);t!==f&&(p(t),d(t===null?``:String(t)));function h(e){d(e);let t=e.trim();if(t===``){n(null);return}let r=Number(t);Number.isFinite(r)&&r>=1e3&&r<=a&&n(r)}function _(e){let r=e.trim();if(r===``){n(null);return}let i=Number(r);if(!Number.isFinite(i)){d(t===null?``:String(t));return}let o=z(i,a);d(String(o)),n(o)}return(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e}),c?(0,Z.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:s(`profileAdvancedParams.defaultValueLabel`,{value:F(r)})}):null]}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(`div`,{className:`flex-1`,children:(0,Z.jsx)(m,{value:l,onValueChange:e=>n(typeof e==`number`?e:e[0]),min:L,max:a,step:D,disabled:o,"aria-label":e})}),(0,Z.jsx)(g,{type:`number`,inputMode:`numeric`,value:u,placeholder:String(r),onChange:e=>h(e.target.value),onBlur:e=>_(e.target.value),onKeyDown:e=>{e.key===`Enter`&&_(e.currentTarget.value)},min:L,max:a,step:D,disabled:o,"aria-label":s(`profileAdvancedParams.tokensAriaLabel`,{label:e}),wrapperClassName:`w-32 shrink-0`,className:`text-right tabular-nums`}),(0,Z.jsx)(i,{variant:`ghost`,size:`compact`,onClick:()=>n(null),disabled:o||c,children:s(`profileAdvancedParams.reset`)})]})]})}function Ae({visibility:e,isReadOnly:t,model:n,selectedModel:r,defaultMaxOutputTokens:i,defaultContextWindowMaxInputTokens:a,maxTokens:o,onMaxTokensChange:s,contextWindowMaxInputTokens:c,onContextWindowChange:l,effort:d,onEffortChange:f,speed:p,onSpeedChange:h,verbosity:g,onVerbosityChange:v,temperatureEnabled:y,onTemperatureEnabledChange:b,temperature:x,onTemperatureChange:S,topPEnabled:C,onTopPEnabledChange:w,topP:E,onTopPChange:D,thinkingEnabled:ee,onThinkingEnabledChange:O,thinkingStreamThinking:k,onThinkingStreamThinkingChange:A,thinkingLevel:j,onThinkingLevelChange:M}){let{t:N}=T(`settings`),P=R(),F=r?.maxOutputTokens??Oe,I=r?.contextWindowTokens??2e5,L=Math.min(i??Oe,F),z=Math.min(a??2e5,I);return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[!t&&P&&(0,Z.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:N(`profileAdvancedParams.snapshotsHint`)}),e.maxTokens&&(0,Z.jsx)(ke,{label:N(`profileAdvancedParams.maxOutputTokensLabel`),value:o,onChange:s,defaultValue:L,max:F,disabled:t}),e.contextWindow&&(0,Z.jsx)(ke,{label:N(`profileAdvancedParams.contextWindowLabel`),value:c,onChange:l,defaultValue:z,max:I,disabled:t||!r}),e.effort&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:N(`profileAdvancedParams.effortLabel`)}),(0,Z.jsx)(u,{items:Q.map(e=>({value:e,label:e===`inherit`?N(`profileAdvancedParams.effortSegmentDefault`):e,disabled:t})),value:d,onChange:e=>f(e),ariaLabel:N(`profileAdvancedParams.effortLabel`)})]}),e.speed&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:N(`profileAdvancedParams.speedLabel`)}),(0,Z.jsx)(u,{items:Te.map(e=>({value:e,label:e,disabled:t})),value:p,onChange:e=>h(e),ariaLabel:N(`profileAdvancedParams.speedLabel`)})]}),e.verbosity&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:N(`profileAdvancedParams.verbosityLabel`)}),(0,Z.jsx)(u,{items:Ee.map(e=>({value:e,label:e,disabled:t})),value:g,onChange:e=>v(e),ariaLabel:N(`profileAdvancedParams.verbosityLabel`)})]}),e.temperature&&(0,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsx)(_,{checked:y,onChange:e=>b(e),label:N(`profileAdvancedParams.temperatureLabel`),disabled:t}),y&&(0,Z.jsx)(`div`,{className:`flex items-center justify-between`,children:(0,Z.jsx)(`div`,{className:`flex-1`,children:(0,Z.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,Z.jsxs)(`div`,{className:`space-y-2`,children:[(0,Z.jsx)(_,{checked:C,onChange:e=>w(e),label:N(`profileAdvancedParams.topPLabel`),disabled:t}),C&&(0,Z.jsx)(`div`,{className:`flex items-center justify-between`,children:(0,Z.jsx)(`div`,{className:`flex-1`,children:(0,Z.jsx)(m,{value:E,onValueChange:e=>D(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,Z.jsxs)(`div`,{className:`space-y-3`,children:[(0,Z.jsx)(_,{checked:ee,onChange:e=>{O(e),e||A(!1)},label:N(`profileAdvancedParams.enableExtendedThinkingLabel`),disabled:t}),ee&&(0,Z.jsx)(`div`,{className:`pl-4`,children:(0,Z.jsx)(_,{checked:k,onChange:e=>A(e),label:N(`profileAdvancedParams.streamThinkingTokensLabel`),disabled:t})})]}),e.thinkingLevel&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsxs)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:[N(`profileAdvancedParams.thinkingLevelLabel`),` `,(0,Z.jsx)(`span`,{className:`text-[var(--content-disabled)]`,children:N(`profileAdvancedParams.thinkingLevelInheritHint`)})]}),(0,Z.jsx)(u,{items:[`default`,...be(n)].map(e=>({value:e,label:`${e}`,disabled:t})),value:j,onChange:M,ariaLabel:N(`profileAdvancedParams.thinkingLevelLabel`)})]})]})}function je(e){return V(e).filter(e=>j.has(e.id))}function Me(e,t,n){return!e||V(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 Ne=[`anthropic`,`openai`,`gemini`,`ollama`,`fireworks`,`together`,`openrouter`,`vercel-ai-gateway`,`minimax`,`atlascloud`,`litellm`,`baseten`,`poolside`,`openai-compatible`];function Pe(e){return e===`ollama`?`none`:`api_key`}function Fe(e){let t=e.split(`/`);return t.length<3||t[0]!==`credential`?null:{service:t[1],field:t.slice(2).join(`/`)}}function Ie(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 Le(e,t){if(e!==400)return;let n=t?.error?.message;return typeof n==`string`&&n.length>0?n:void 0}function Re(e){return e.label?e.label:e.auth.type===`oauth_subscription`?A.chatgpt:A[e.provider]??e.provider}var ze=new Set([`ollama`]);function Be(e,t){return e===t?!0:e===`vellum`&&O.has(t)}function Ve(e,t){return!ze.has(e)||t}function He(e){return k.filter(t=>Ve(t,e))}function Ue(e){return Ne.filter(t=>Ve(t,e))}function We(e){return Object.keys(N).filter(t=>Ve(t,e))}function Ge(){return He(U())}function Ke(){return Ue(U())}function qe(){return We(U())}function Je(e,t){let n=[...new Set(e.map(e=>e.provider))].filter(e=>Ve(e,t)),r=[];return n.includes(`vellum`)&&r.push(I),n.includes(`chatgpt`)&&r.push(B),r.push(...Ne.filter(e=>n.includes(e)),...n.filter(e=>e!==`vellum`&&e!==`chatgpt`&&!Ne.includes(e))),r}function Ye(e,t){let n=new Set(e.map(e=>e.provider));return Ue(t).filter(e=>e!==`openai-compatible`&&!n.has(e))}var Xe=`::`;function $(e,t){return`${e}${Xe}${t}`}function Ze(e){let t=e.indexOf(Xe);return t<=0?null:{provider:e.slice(0,t),connectionName:e.slice(t+2)}}var Qe=new Set([I,B]);function $e(e){let t=new Map;for(let n of e)Qe.has(n.provider)||n.provider===`openai-compatible`||t.set(n.provider,(t.get(n.provider)??0)+1);return new Set([...t.entries()].filter(([,e])=>e>=2).map(([e])=>e))}function et(e,t,n,r=`Default`){let i=$e(t),a=[];for(let o of e){if(o===`vellum`){a.push({value:o,label:n(o),meta:`Managed`});continue}if(o===`openai-compatible`){for(let e of t)e.provider===`openai-compatible`&&a.push({value:$(o,e.name),label:e.label&&e.label.trim()!==``?e.label:e.name,meta:`Custom`});continue}if(!i.has(o)){a.push({value:o,label:n(o)});continue}a.push({value:o,label:n(o),meta:r});for(let e of t)e.provider===o&&a.push({value:$(o,e.name),label:e.label&&e.label.trim()!==``?e.label:e.name,meta:n(o)})}return a}function tt(e){return(e??[]).map(e=>({id:e.id,displayName:e.displayName??e.id}))}var nt=`__custom-model-id__`;function rt({text:e}){return(0,Z.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e})}function it({provider:e,model:t,providerConnection:n,onProviderChange:r,onModelChange:a,onConnectionChange:o,connections:s,isReadOnly:c,availableConnectionsForProvider:u,connectionNotFound:d,hideProviderField:f=!1,providerError:p=null}){let m=e.length>0&&t.length===0,{t:h}=T(`settings`),[_,v]=(0,W.useState)(!1),y=Me(e,n,u),x=e!==``&&e!==`chatgpt`&&!y;(0,W.useEffect)(()=>{x||v(!1)},[e,x]);function S(e){if(e===nt){v(!0),a(``);return}a(e)}let C=qe(),w=U(),E=(0,W.useMemo)(()=>{let t=Je(s??[],w);return e&&!t.includes(e)?[...t,e]:t},[s,e,w]),D=s===void 0?C:E,ee=D.length===0&&!c,O=e===`openai`&&!c&&u.length===0&&(s??[]).some(e=>e.provider===`chatgpt`||e.auth.type===`oauth_subscription`)?h(`profileEditor.subscriptionSteeringHint`):void 0,k=(0,W.useMemo)(()=>{if(!e)return[];let t=V(e);if(t.length>0)return Me(e,n,u)?je(e):t;if(n){let e=u.find(e=>e.name===n);return e?tt(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]),j=(0,W.useMemo)(()=>{if(!t||k.some(e=>e.id===t))return k;let n=V(e).find(e=>e.id===t),r=u.flatMap(e=>e.models??[]).find(e=>e.id===t),i=n?.displayName??r?.displayName??t;return[...k,{id:t,displayName:i}]},[t,k,e,u]),N=e?k.length===0?e===`openai-compatible`?`configure-connection`:`unknown-to-catalog`:null:`no-provider`,P=(0,W.useMemo)(()=>{switch(N){case`no-provider`:return{placeholder:h(`profileEditorProviderSection.modelEmptyNoProviderPlaceholder`),hint:null};case`configure-connection`:return{placeholder:h(`profileEditorProviderSection.modelEmptyConfigureConnectionPlaceholder`),hint:h(`profileEditorProviderSection.modelEmptyConfigureConnectionHint`)};case`unknown-to-catalog`:return{placeholder:h(`profileEditorProviderSection.modelEmptyUnknownPlaceholder`),hint:h(`profileEditorProviderSection.modelEmptyUnknownHint`)};default:return null}},[N,h]);(0,W.useEffect)(()=>{if(!e||_)return;let n=V(e);n.length>0&&!n.some(e=>e.id===t)||t&&k.length>0&&!k.some(e=>e.id===t)&&a(``)},[t,k,a,e,_]);let F=h(`aiProviderPicker.defaultEntryMeta`),I=(0,W.useMemo)(()=>{let t=et(D,s??[],e=>A[e]??e,F).map(({value:e,label:t,meta:n})=>({value:e,label:t,suffix:n?(0,Z.jsx)(rt,{text:n}):void 0}));return d&&e===`openai-compatible`&&n&&t.push({value:$(M,n),label:`${n} ${h(`profileEditorProviderSection.providerNotFoundSuffix`)}`,suffix:void 0}),e===`openai-compatible`&&!n&&t.push({value:M,label:A[`openai-compatible`]??`openai-compatible`,suffix:void 0}),t},[D,s,d,e,n,F,h]),L=e&&n?$(e,n):null,R=(()=>{if(!n)return null;let e=s?.find(e=>e.name===n);return e&&(e.provider===`vellum`||e.provider===`chatgpt`)?e.provider:null})(),z=e=>I.some(t=>t.value===e),B=L!==null&&z(L)?L:R!==null&&z(R)?R:e;return(0,Z.jsxs)(Z.Fragment,{children:[!f&&(0,Z.jsx)(b,{id:`profile-editor-provider`,label:h(`profileEditorProviderSection.providerLabel`),errorText:p&&ee?h(`profileEditorProviderSection.noProviderConnectionsHint`):p,helperText:ee&&!p?h(`profileEditorProviderSection.noProviderConnectionsHint`):O,value:B,onChange:t=>{let n=Ze(t);if(n){r(n.provider),o(n.connectionName);return}r(t),t===e&&o(``)},disabled:c,placeholder:h(`profileEditorProviderSection.selectProviderPlaceholder`),options:I}),d&&!c&&(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:h(`profileEditorProviderSection.connectionNotFound`)}),(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:h(`profileEditorProviderSection.modelLabel`)}),_?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(g,{value:t,onChange:e=>a(e.target.value),disabled:c,placeholder:h(`profileEditorProviderSection.customModelPlaceholder`),"aria-label":h(`profileEditorProviderSection.customModelAriaLabel`),fullWidth:!0,autoFocus:!0}),(0,Z.jsx)(i,{variant:`link`,size:`compact`,disabled:c,onClick:()=>v(!1),children:h(`profileEditorProviderSection.chooseFromList`)})]}):(0,Z.jsx)(b,{value:t,onChange:S,disabled:c||!e,"aria-label":h(`profileEditorProviderSection.modelAriaLabel`),placeholder:P?.placeholder??h(`profileEditorProviderSection.selectModelPlaceholder`),options:[...j.map(e=>({value:e.id,label:e.displayName})),...x?[{value:nt,label:h(`profileEditorProviderSection.enterCustomModelIdOption`)}]:[]]}),_?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:h(`profileEditorProviderSection.enterCustomModelIdHint`)}):m&&!c?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:P?.hint??h(`profileEditorProviderSection.selectModelError`)}):null]})]})}var at=e(r(),1);function ot(e,t,n){return[`credentialPresence`,e,t,n]}function st({assistantId:e,credentialKind:n,credentialName:r,enabled:i=!0}){let a=le(),s=o({queryKey:ot(e??``,n,r),queryFn:async()=>{let{data:t}=await ce({path:{assistant_id:e},body:{type:n,name:r},throwOnError:!0});return t.found},enabled:!!e&&i&&a,retry:t,staleTime:3e4});return{hasStoredCredential:s.data??!1,isLoading:s.isLoading}}function ct({assistantId:e,onConnected:t}){let{t:n}=T(`settings`),[r,a]=(0,W.useState)(`idle`),[o,s]=(0,W.useState)(``),[c,u]=(0,W.useState)(null);async function d(){a(`starting`),u(null);let t=window.open(`about:blank`,`_blank`);try{let{data:{authorize_url:n}}=await re({path:{assistant_id:e},throwOnError:!0});t?(t.opener=null,t.location.href=n):window.open(n,`_blank`,`noopener`),a(`paste_url`)}catch{t?.close(),a(`failed`),u(C(`settings:chatgptOauthSection.startFailed`))}}async function f(){u(null);let n=o.trim();if(!n){u(C(`settings:chatgptOauthSection.pasteUrlError`));return}let r;try{r=new URL(n)}catch{u(C(`settings:chatgptOauthSection.invalidUrl`));return}let i=r.searchParams.get(`code`),s=r.searchParams.get(`state`);if(!i){u(C(`settings:chatgptOauthSection.missingCode`));return}if(!s){u(C(`settings:chatgptOauthSection.missingState`));return}a(`exchanging`);try{await ie({path:{assistant_id:e},body:{code:i,state:s},throwOnError:!0}),a(`completed`);let{data:n}=await oe({path:{assistant_id:e},throwOnError:!0});t(n.connections.find(e=>e.name===`chatgpt-subscription`||e.name===`openai-chatgpt`)||{name:`chatgpt-subscription`,provider:`chatgpt`,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{a(`failed`),u(C(`settings:chatgptOauthSection.completeFailed`))}}function m(){a(`idle`),s(``),u(null)}return(0,Z.jsxs)(`div`,{className:`space-y-3 rounded-lg border border-[var(--border-base)] p-4`,children:[(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:n(`chatgptOauthSection.intro`)}),r===`idle`||r===`paste_url`?(0,Z.jsxs)(`div`,{className:`space-y-3`,children:[(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:r===`paste_url`?`text-[var(--content-tertiary)] line-through`:`text-[var(--content-secondary)]`,children:n(r===`idle`?`chatgptOauthSection.step1Idle`:`chatgptOauthSection.step1PasteUrl`)}),(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-secondary)]`,children:n(`chatgptOauthSection.step2`)}),(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-secondary)]`,children:n(`chatgptOauthSection.step3`)})]}),r===`idle`?(0,Z.jsx)(i,{variant:`outlined`,size:`compact`,onClick:()=>void d(),children:n(`chatgptOauthSection.signInButton`)}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(g,{value:o,onChange:e=>{s(e.target.value),u(null)},placeholder:n(`chatgptOauthSection.urlPlaceholder`),fullWidth:!0}),(0,Z.jsx)(`div`,{className:`flex justify-end`,children:(0,Z.jsx)(i,{variant:`primary`,size:`compact`,disabled:!o.trim(),onClick:()=>void f(),children:n(`chatgptOauthSection.completeSignIn`)})})]})]}):null,r===`starting`?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(p,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,Z.jsx)(l,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:n(`chatgptOauthSection.startingSignIn`)})]}):null,r===`exchanging`?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(p,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,Z.jsx)(l,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:n(`chatgptOauthSection.completingSignIn`)})]}):null,r===`completed`?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--system-positive-strong)]`,children:n(`chatgptOauthSection.connected`)}):null,c?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:c}):null,r===`failed`?(0,Z.jsx)(i,{variant:`outlined`,size:`compact`,onClick:m,children:n(`chatgptOauthSection.tryAgain`)}):null]})}var lt=new Set(Object.entries(A).flatMap(([e,t])=>[e.toLowerCase(),t.toLowerCase()])),ut={reserved:`That name belongs to a built-in provider. Pick another.`,duplicate:`A custom provider with this name already exists.`};function dt(e,t,n){let r=e.trim().toLowerCase();return r?lt.has(r)?`reserved`:(t??[]).some(e=>e.provider===`openai-compatible`&&e.name!==n&&(e.label?.trim()||e.name).toLowerCase()===r)?`duplicate`:null:null}function ft(e){return e.toLowerCase().split(/[^a-z0-9]+/).filter(Boolean).join(`-`)}function pt(e){return ft(e)}function mt(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 ht(e,t){return{name:A[e]??e,key:mt(`${pt(e)}-personal`,t)}}function gt(e,t){return{name:e,key:mt(pt(e),t)}}function _t({apiKeyValue:e,onApiKeyChange:t,credential:n,onCredentialChange:r,isLoadingCredential:a,apiKeyPlaceholder:o,provider:s,providerCredentials:c,showAdvancedSection:u,onError:d}){let{t:m}=T(`settings`),[h,_]=(0,W.useState)(!1),[v,y]=(0,W.useState)(!1),[x,S]=(0,W.useState)(``);return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:m(`providerEditorApiKeySection.apiKeyLabel`)}),a?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 h-8`,children:[(0,Z.jsx)(p,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,Z.jsx)(l,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:m(`providerEditorApiKeySection.loading`)})]}):(0,Z.jsx)(g,{type:`password`,value:e,onChange:e=>{t(e.target.value),d(null)},placeholder:o,fullWidth:!0})]}),u&&(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`button`,{type:`button`,"aria-expanded":h,onClick:()=>_(e=>!e),className:`flex items-center gap-1 text-body-small-default text-[var(--content-secondary)] w-full text-left`,children:[(0,Z.jsx)(f,{className:`h-4 w-4 transition-transform ${h?`rotate-90`:``}`}),(0,Z.jsx)(`span`,{children:m(`providerEditorApiKeySection.advanced`)}),(0,Z.jsx)(`span`,{className:`text-[var(--content-tertiary)] ml-1`,children:m(`providerEditorApiKeySection.credentialReferenceSuffix`)})]}),h&&(0,Z.jsxs)(`div`,{className:`mt-2 space-y-3`,children:[(()=>{let e=c.map(e=>{let t=`credential/${e.service}/${e.field}`;return{label:t,value:t}}),t=e.some(e=>e.value===n),i=n&&!t?[{label:n,value:n},...e]:e;return i.length===0?null:(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:m(`providerEditorApiKeySection.credentialReferenceLabel`)}),(0,Z.jsx)(b,{"aria-label":m(`providerEditorApiKeySection.credentialReferenceAriaLabel`),value:n,onChange:e=>{r(e)},options:i})]})})(),v&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:m(`providerEditorApiKeySection.newCredentialNameLabel`)}),(0,Z.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Z.jsx)(g,{value:x,onChange:e=>S(e.target.value),placeholder:m(`providerEditorApiKeySection.newCredentialPlaceholder`),fullWidth:!0}),(0,Z.jsx)(i,{variant:`primary`,size:`compact`,disabled:!x.trim(),onClick:()=>{let e=x.trim();e&&(r(`credential/${s}/${e}`),y(!1),S(``))},children:m(`providerEditorApiKeySection.use`)})]})]}),(0,Z.jsx)(`div`,{className:`flex justify-start`,children:(0,Z.jsx)(i,{variant:`ghost`,onClick:()=>{v?(y(!1),S(``)):y(!0)},children:m(v?`providerEditorApiKeySection.cancel`:`providerEditorApiKeySection.newCredential`)})})]})]})]})}var vt=`•`.repeat(8);function yt(e,t){return t?vt:e}function bt(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 xt({assistantId:e,enabled:n=!0}){let r=le(),i=o({...de({path:{assistant_id:e}}),enabled:!!e&&n&&r,select:e=>bt(e.secrets),retry:t,staleTime:3e4});return{credentials:i.data??[],isLoading:i.isLoading}}function St({assistantId:e,existingNames:t,connections:n,defaultProviderType:r,hideProviderSelect:o=!1,onCreated:s,onCancel:c,variant:u=`modal`,actionsSlot:d}){let{t:p}=T(`settings`),m=Ke(),h=r&&m.includes(r)?r:m[0]??`anthropic`,_=ht(h,t),[x,S]=(0,W.useState)(h===`openai-compatible`?``:_.name),[C,E]=(0,W.useState)(_.key),[D,ee]=(0,W.useState)(h),O=D===`chatgpt`,k=O?`openai`:D,j=O?`oauth_subscription`:Pe(k),[M,N]=(0,W.useState)(()=>h===`ollama`?``:h===`openai-compatible`?`credential/${_.key}/api_key`:`credential/${h}/api_key`),[P,F]=(0,W.useState)(``),[I,L]=(0,W.useState)(``),[R,z]=(0,W.useState)(!1),[B,V]=(0,W.useState)(null),[te,ne]=(0,W.useState)(!1),H=k===`openai-compatible`,re=(0,W.useMemo)(()=>{let e=!O&&!m.includes(k)?[...m,k]:[...m],t=e.indexOf(`openai`);return t>=0&&e.splice(t+1,0,`chatgpt`),e},[O,k,m]),ie=(0,W.useRef)(!1);function oe(e){ie.current=!0,S(e)}let[ce,U]=(0,W.useState)(``),[le,de]=(0,W.useState)(!1),fe=a(),pe=(0,W.useMemo)(()=>Fe(M),[M]),me=j===`api_key`&&pe!==null,{hasStoredCredential:G,isLoading:K}=st({assistantId:e,credentialKind:`credential`,credentialName:pe?`${pe.service}:${pe.field}`:``,enabled:me}),{credentials:he}=xt({assistantId:e,enabled:!0}),q=H?dt(x,n):null,ge=C.trim().length>0&&(!H||x.trim().length>0)&&q===null;async function J(){if(ge){z(!0),V(null);try{let t;if(j===`api_key`){let n=M.trim()||`credential/${H?C:k}/api_key`,r=ce.trim();if(r){de(!0);try{let t=Fe(n);await se({path:{assistant_id:e},body:t?{type:`credential`,name:`${t.service}:${t.field}`,value:r}:{type:`api_key`,name:k,value:r},throwOnError:!0});let i=ot(e,`credential`,t?`${t.service}:${t.field}`:``);fe.setQueryData(i,!0),fe.invalidateQueries({queryKey:ue({path:{assistant_id:e}})})}catch{V(p(`providerCreateForm.failedSaveApiKey`));return}finally{de(!1)}t={type:`api_key`,credential:n}}else if(G)t={type:`api_key`,credential:n};else if(H)t={type:`none`};else{V(p(`providerCreateForm.enterApiKeyOrCredential`));return}}else if(j===`oauth_subscription`){V(p(`providerCreateForm.useChatgptSignIn`));return}else t={type:`none`};let n=x.trim()||null,r={name:C.trim(),provider:k,auth:t,...n!==null&&{label:n},...H&&{base_url:P.trim()||null,models:I.trim()?I.split(`,`).map(e=>({id:e.trim()})).filter(e=>e.id):null}},{data:i,error:a,response:o}=await ae({path:{assistant_id:e},body:r});if(!o?.ok){V(Le(o?.status,a)??Ie(o?.status));return}if(!i){V(p(`providerCreateForm.emptyServerResponse`));return}y.success(p(`providerCreateForm.providerConnectedToast`)),s(i)}catch{V(p(`providerCreateForm.failedSaveProvider`))}finally{z(!1)}}}let _e=he.filter(e=>e.service===k),ve=_e.length>0,Y=yt(p(`providerCreateForm.apiKeyPlaceholder`),G),ye=te,be=(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`button`,{type:`button`,"aria-expanded":ye,onClick:()=>ne(e=>!e),className:`flex items-center gap-1 text-body-small-default text-[var(--content-secondary)] w-full text-left`,children:[(0,Z.jsx)(f,{className:`h-4 w-4 transition-transform ${ye?`rotate-90`:``}`}),(0,Z.jsx)(`span`,{children:p(`providerCreateForm.advanced`)})]}),ye&&(0,Z.jsx)(`div`,{className:`mt-2 space-y-4`,children:(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:(0,Z.jsx)(w,{i18nKey:`providerCreateForm.displayNameLabel`,ns:`settings`,components:{optional:(0,Z.jsx)(`span`,{className:`text-[var(--content-disabled)]`})}})}),(0,Z.jsx)(g,{value:x,onChange:e=>oe(e.target.value),placeholder:p(`providerCreateForm.displayNamePlaceholder`),fullWidth:!0})]})})]}),xe=(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[!o&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:p(`providerCreateForm.providerLabel`)}),(0,Z.jsx)(b,{"aria-label":p(`providerCreateForm.providerAriaLabel`),value:D,onChange:e=>{if(ee(e),V(null),e===`chatgpt`)return;let{name:n,key:r}=ht(e,t);ie.current||S(e===`openai-compatible`?``:n),E(r),N(e===`ollama`?``:e===`openai-compatible`?`credential/${r}/api_key`:`credential/${e}/api_key`)},options:[...re.filter(e=>e!==`openai-compatible`).map(e=>({value:e,label:A[e]})),...re.includes(`openai-compatible`)?[{value:`openai-compatible`,label:p(`providerCreateForm.customProviderOption`)}]:[]]}),H?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:p(`providerCreateForm.customProviderHint`)}):null]}),H&&(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:p(`providerCreateForm.nameLabel`)}),(0,Z.jsx)(g,{value:x,onChange:e=>oe(e.target.value),placeholder:p(`providerCreateForm.namePlaceholder`),fullWidth:!0}),q?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:ut[q]}):null]}),(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:p(`providerCreateForm.baseUrlLabel`)}),(0,Z.jsx)(g,{value:P,onChange:e=>F(e.target.value),placeholder:p(`providerCreateForm.baseUrlPlaceholder`),fullWidth:!0})]}),(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:p(`providerCreateForm.modelsLabel`)}),(0,Z.jsx)(g,{value:I,onChange:e=>L(e.target.value),placeholder:p(`providerCreateForm.modelsPlaceholder`),fullWidth:!0}),(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:p(`providerCreateForm.modelsHint`)})]})]}),j===`api_key`&&(0,Z.jsx)(_t,{apiKeyValue:ce,onApiKeyChange:U,credential:M,onCredentialChange:N,isLoadingCredential:K,apiKeyPlaceholder:Y,provider:k,providerCredentials:_e,showAdvancedSection:ve,onError:V}),H&&j===`api_key`?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:p(`providerCreateForm.localEndpointHint`)}):null,j===`oauth_subscription`&&(0,Z.jsx)(ct,{assistantId:e,onConnected:s}),!O&&!H&&be,B&&(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:B})]}),Se=(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(i,{variant:`ghost`,onClick:c,children:p(`providerCreateForm.cancel`)}),!O&&(0,Z.jsx)(i,{variant:`primary`,disabled:!ge||R||le,onClick:()=>void J(),children:R?p(`providerCreateForm.saving`):H&&x.trim()?p(`providerCreateForm.addNamed`,{name:x.trim()}):p(`providerCreateForm.add`)})]});return u===`inline`?(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[xe,d===void 0?(0,Z.jsx)(`div`,{className:`flex justify-end gap-2`,children:Se}):d&&(0,at.createPortal)(Se,d)]}):(0,Z.jsxs)(v.Content,{size:`md`,children:[(0,Z.jsxs)(v.Header,{children:[(0,Z.jsx)(v.Title,{children:p(`providerCreateForm.addProviderTitle`)}),(0,Z.jsx)(v.Description,{children:p(`providerCreateForm.addProviderDescription`)})]}),(0,Z.jsx)(v.Body,{children:xe}),(0,Z.jsx)(v.Footer,{children:Se})]})}var Ct=`__create_new_provider__`;function wt({editor:e,assistantId:t,connections:n,variant:r}){let{t:i}=T(`settings`),a=U(),o=e.effectiveMode===`create`,s=r===`panel`,[c,u]=(0,W.useState)(!1),d=c||!!e.keyError&&e.getDirty(),p=(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(o?`profileEditorFields.nameLabel`:`profileEditorFields.displayNameLabel`)}),(0,Z.jsx)(g,{type:`text`,value:e.label,onChange:t=>e.handleLabelChange(t.target.value),placeholder:i(`profileEditorFields.displayNamePlaceholder`),disabled:e.isReadOnly,fullWidth:!0})]}),m=(0,Z.jsx)(h,{label:(0,Z.jsx)(w,{i18nKey:`profileEditorFields.descriptionLabel`,ns:`settings`,components:{optional:(0,Z.jsx)(`span`,{className:`text-[var(--content-disabled)]`})}}),value:e.description,onChange:t=>e.setDescription(t.target.value),placeholder:i(`profileEditorFields.descriptionPlaceholder`),disabled:e.isReadOnly,rows:2,fullWidth:!0,className:`resize-none`}),v=(0,Z.jsx)(g,{label:i(`profileEditorFields.keyLabel`),type:`text`,value:e.key,onChange:t=>e.handleKeyChange(t.target.value),placeholder:i(`profileEditorFields.keyPlaceholder`),disabled:e.isReadOnly||e.effectiveMode===`edit`,errorText:e.isReadOnly?void 0:e.keyError,fullWidth:!0}),y=!s&&(!e.isReadOnly||e.status!==`active`)?(0,Z.jsx)(_,{checked:e.status===`active`,onChange:t=>e.setStatus(t?`active`:`disabled`),label:i(`profileEditorFields.activeLabel`),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,x=(0,Z.jsx)(Ae,{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}),S=e.saveError?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:e.saveError}):null,C=(0,W.useMemo)(()=>Ye(e.effectiveConnections,a),[e.effectiveConnections,a]),E=(0,W.useMemo)(()=>{let t=et(Je(e.effectiveConnections,a),e.effectiveConnections,e=>A[e]??e,i(`aiProviderPicker.defaultEntryMeta`)).map(({value:e,label:t,meta:n})=>({value:e,label:t,suffix:n?(0,Z.jsx)(rt,{text:n}):void 0}));for(let e of C){let n=Pe(e)===`api_key`?i(`profileEditorFields.addApiKey`):i(`profileEditorFields.setUp`);t.push({value:e,label:A[e]??e,suffix:(0,Z.jsx)(rt,{text:n})})}return t.push({value:Ct,label:i(`profileEditorFields.createNewProvider`)}),t},[a,e.effectiveConnections,C,i]),D=(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{id:`profile-editor-provider-label`,className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`profileEditorFields.providerLabel`)}),(0,Z.jsx)(b,{value:e.creatingProvider?e.pendingCreateProvider??Ct:e.provider&&e.providerConnection&&E.some(t=>t.value===$(e.provider,e.providerConnection))?$(e.provider,e.providerConnection):e.provider,onChange:t=>{if(t===Ct){e.setCreatingProvider(!0),e.setPendingCreateProvider(null),e.setNewProviderNote(!1);return}if(!t)return;let n=Ze(t);if(n){e.setCreatingProvider(!1),e.setPendingCreateProvider(null),e.provider===n.provider?n.provider===`openai-compatible`&&e.setModel(``):e.handleProviderChange(n.provider),e.setProviderConnection(n.connectionName);return}let r=t;if(C.includes(r)){e.setCreatingProvider(!0),e.setPendingCreateProvider(r),e.setNewProviderNote(!1);return}e.setCreatingProvider(!1),e.setPendingCreateProvider(null),e.handleProviderChange(r),r===e.provider&&e.setProviderConnection(``)},placeholder:i(`profileEditorFields.selectProviderPlaceholder`),"aria-labelledby":`profile-editor-provider-label`,options:E}),e.newProviderNote?(0,Z.jsx)(l,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:i(`profileEditorFields.newProviderNote`)}):null]}),e.creatingProvider?(0,Z.jsx)(St,{variant:`inline`,assistantId:t,existingNames:e.effectiveConnections.map(e=>e.name),connections:e.effectiveConnections,defaultProviderType:(e.pendingCreateProvider??e.provider)||void 0,hideProviderSelect:e.pendingCreateProvider!==null,onCreated:e.handleProviderCreated,onCancel:()=>{e.setCreatingProvider(!1),e.setPendingCreateProvider(null)}},e.pendingCreateProvider??`any`):(0,Z.jsx)(it,{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(o){let t=e.model!==``;return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[p,D,m,y,s?t&&(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[v,x]}):t&&(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`button`,{type:`button`,"aria-expanded":d,onClick:()=>u(e=>!e),className:`flex items-center gap-1 text-body-small-default text-[var(--content-secondary)] w-full text-left`,children:[(0,Z.jsx)(f,{className:`h-4 w-4 transition-transform ${d?`rotate-90`:``}`}),(0,Z.jsx)(`span`,{children:i(`profileEditorFields.advanced`)})]}),d?(0,Z.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[v,x]}):null]}),S]})}return(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[p,m,v,y,(0,Z.jsx)(it,{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,providerError:e.providerError}),x,S]})}function Tt(e,t,n){if(e){let n=V(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 Et(e,t,n){let r=(0,W.useRef)(!1),i=(0,W.useRef)(!1);return{handleLabelChange:(0,W.useCallback)(a=>{i.current=!0,t(a),e===`create`&&!r.current&&n(ft(a))},[e,t,n]),handleKeyChange:(0,W.useCallback)(e=>{r.current=!0,i.current=!0,n(e)},[n]),resetDirty:(0,W.useCallback)(()=>{r.current=!1,i.current=!1},[]),getDirty:(0,W.useCallback)(()=>i.current,[])}}var Dt=`0.11.3-dev.202608102358.ef1568c`;async function Ot(e,t){await H(t);let n=x.getState().assistantId;return e!=null&&n!==e?!1:ne(Dt)}var kt=`0.10.12`;async function At(e,t){await H(t);let n=x.getState().assistantId;return e!=null&&n!==e?!1:ne(kt)}function jt({mode:e,profileName:t,initialValues:n,existingNames:r,connections:i,assistantId:s,onSave:c}){let[l,u]=(0,W.useState)(e),d=n?.invariant===!0&&l!==`create`,f=l===`view`||d,p=n?.status??`active`,[m,h]=(0,W.useState)(n?.label??``),[g,_]=(0,W.useState)(n?.description??``),[v,y]=(0,W.useState)(e===`create`?``:t??``),[b,x]=(0,W.useState)(n?.provider?n.provider:``),[S,C]=(0,W.useState)(n?.model??``),[w,T]=(0,W.useState)(n?.provider_connection??``),[D,O]=(0,W.useState)(n?.status??`active`),[k,A]=(0,W.useState)([]),[j,M]=(0,W.useState)(!1),[N,F]=(0,W.useState)(null),[L,R]=(0,W.useState)(n?.maxTokens??null),[z,B]=(0,W.useState)(n?.contextWindow?.maxInputTokens??null),[te,ne]=(0,W.useState)(n?.effort??`inherit`),[H,re]=(0,W.useState)(n?.speed??`standard`),[ie,ae]=(0,W.useState)(n?.verbosity??`medium`),[oe,se]=(0,W.useState)(typeof n?.temperature==`number`),[ce,U]=(0,W.useState)(typeof n?.temperature==`number`?n.temperature:.7),[le,ue]=(0,W.useState)(typeof n?.topP==`number`),[de,me]=(0,W.useState)(typeof n?.topP==`number`?n.topP:.95),G=f&&D!==p,[K,he]=(0,W.useState)(n?.thinking?.enabled??!1),[q,ge]=(0,W.useState)(n?.thinking?.streamThinking??!1),[J,_e]=(0,W.useState)(ye(n?.thinking?.level)?n.thinking.level:De),ve=(0,W.useMemo)(()=>b===`vellum`?ee(S):null,[b,S]),Y=ve?.model??S,be=(0,W.useMemo)(()=>b?V(b).find(e=>e.id===Y)??null:null,[b,Y]),{data:xe}=o({...pe({path:{assistant_id:s}}),staleTime:3e4}),Se=xe?.llm?.default?.maxTokens,Ce=xe?.llm?.default?.contextWindow?.maxInputTokens,X=(0,W.useMemo)(()=>we(b===`vellum`?ve?.provider??P(S)??n?.provider??``:b,Y),[b,S,Y,ve,n?.provider]),Z=(0,W.useMemo)(()=>{let e=i??[];if(k.length===0)return e;let t=new Set(e.map(e=>e.name));return[...e,...k.filter(e=>!t.has(e.name))]},[i,k]),Q=(0,W.useMemo)(()=>b?Z.filter(e=>Be(e.provider,b)||b===`openai`&&e.name===w&&e.provider===`chatgpt`):[],[b,Z,w]),Te=w!==``&&!Q.some(e=>e.name===w),{handleLabelChange:Ee,handleKeyChange:Oe,resetDirty:ke,getDirty:Ae}=Et(l,h,y),je=a(),[Me,Pe]=(0,W.useState)(!1),[Fe,Ie]=(0,W.useState)(null),[Le,Re]=(0,W.useState)(!1);(0,W.useEffect)(()=>{n?.provider_connection===`vellum`&&b===(n?.provider??``)&&i?.find(e=>e.name===n.provider_connection)?.provider===`vellum`&&x(I)},[i,b,n]),(0,W.useEffect)(()=>{let e=n?.provider;if(!e||b!==e||Ne.includes(e)||e===`vellum`||e===`chatgpt`)return;let t=i?.find(t=>t.name===e);!t||t.provider===`vellum`||t.provider===`chatgpt`||(x(t.provider),w===``&&T(t.name))},[i,b,w,n]),(0,W.useEffect)(()=>{ke(),Pe(!1),Ie(null),Re(!1),A([])},[t,e,ke]);function ze(e){if(e===b)return;x(e),C(``);let t=e===`chatgpt`?[]:Z.filter(t=>Be(t.provider,e));T(t.length===1?t[0].name:``),R(null),B(null),ne(`inherit`),re(`standard`),ae(`medium`),se(!1),U(.7),ue(!1),me(.95),he(!1),ge(!1),_e(De)}function Ve(e){if(T(e),b&&V(b).length===0&&S)if(e===``)new Set(Q.flatMap(e=>(e.models??[]).map(e=>e.id))).has(S)||C(``);else{let t=Q.find(t=>t.name===e);new Set((t?.models??[]).map(e=>e.id)).has(S)||C(``)}}function He(e){if(e!==S&&(C(e),R(null),B(null),l===`create`&&e&&!Ae())){let{name:t,key:n}=gt(Tt(b||void 0,e,Q),r);h(t),y(n)}}function Ue(e){let t=e.provider;t!==`vellum`&&(A(t=>t.some(t=>t.name===e.name)?t:[...t,e]),x(t),T(e.name),C(``),Pe(!1),Ie(null),Re(!0),je.invalidateQueries({queryKey:fe({path:{assistant_id:s}})}))}let We=v.trim(),Ge=We.length===0,Ke=/\s/.test(v),qe=l===`create`?r.includes(We):r.filter(e=>e!==t).includes(We),Je=b.length===0,Ye=b.length>0&&S.length===0,Xe=Ge||Ke||qe||Je||Ye,$=Ge?`Key is required`:Ke?`Key cannot contain whitespace`:qe?`A profile with this key already exists`:null,Ze=!f&&(l===`edit`||Ae())&&Je?`Select a provider`:null;async function Qe(){if(!(Xe&&!f)){if(f){if(!G)return;M(!0),F(null);try{await c(We,{status:`active`},{mode:`merge`})}catch(e){F(E(e)??`Failed to save profile. Please try again.`)}finally{M(!1)}return}M(!0),F(null);try{let e={},t=w===``&&Q.length===1?Q[0].name:w,r=Te?``:t,i=b===`chatgpt`||b===`vellum`&&await At(s),a=b===`vellum`?i?I:ve?.provider??P(S)??n?.provider??``:b,o=Y,u=i?``:r,d=r===``?void 0:Z.find(e=>e.name===r),f=d!==void 0&&(d.provider===`vellum`||d.provider===`chatgpt`||d.name===`vellum`||d.name===`chatgpt`||Ne.includes(d.name)),p=a;if(!i&&b!==``&&b!==`vellum`&&!f&&await Ot(s)){let e=Z.filter(e=>e.provider===b).length;p=d!==void 0&&(b===`openai-compatible`||e>=2)?d.name:b,u=``}l===`edit`?(e.label=m.trim()||null,e.description=g.trim()||null,e.provider=p||null,e.model=o||null,e.provider_connection=u||null):(m.trim()&&(e.label=m.trim()),g.trim()&&(e.description=g.trim()),p&&(e.provider=p),o&&(e.model=o),u&&(e.provider_connection=u)),X.maxTokens&&L!==null&&(e.maxTokens=L),X.contextWindow&&z!==null&&(e.contextWindow={maxInputTokens:z}),X.effort&&te!==`inherit`&&(e.effort=te),X.speed&&H!==`standard`&&(e.speed=H),X.verbosity&&(e.verbosity=ie),X.temperature&&(oe?e.temperature=ce:l===`edit`&&(e.temperature=null)),X.topP&&(le?e.topP=de:l===`edit`&&(e.topP=null)),X.thinking&&(e.thinking={enabled:K,...K?{streamThinking:q}:{}}),X.thinkingLevel&&J!==`default`&&(e.thinking={enabled:!0,level:J}),(l===`edit`||D!==`active`)&&(e.status=D),await c(We,e)}catch(e){F(E(e)??`Failed to save profile. Please try again.`)}finally{M(!1)}}}function $e(){u(`create`),y(``),ke()}return{effectiveMode:l,isReadOnly:f,isInvariant:d,hasViewModeChanges:G,label:m,description:g,key:v,provider:b,model:S,providerConnection:w,status:D,saving:j,saveError:N,keyError:$,providerError:Ze,isInvalid:Xe,maxTokens:L,contextWindowMaxInputTokens:z,effort:te,speed:H,verbosity:ie,temperatureEnabled:oe,temperature:ce,topPEnabled:le,topP:de,thinkingEnabled:K,thinkingStreamThinking:q,thinkingLevel:J,visibility:X,selectedModel:be,defaultMaxOutputTokens:Se,defaultContextWindowMaxInputTokens:Ce,effectiveConnections:Z,availableConnectionsForProvider:Q,connectionNotFound:Te,creatingProvider:Me,pendingCreateProvider:Fe,newProviderNote:Le,setDescription:_,setStatus:O,setMaxTokens:R,setContextWindowMaxInputTokens:B,setEffort:ne,setSpeed:re,setVerbosity:ae,setTemperatureEnabled:se,setTemperature:U,setTopPEnabled:ue,setTopP:me,setThinkingEnabled:he,setThinkingStreamThinking:ge,setThinkingLevel:_e,setCreatingProvider:Pe,setPendingCreateProvider:Ie,setNewProviderNote:Re,handleLabelChange:Ee,handleKeyChange:Oe,getDirty:Ae,handleProviderChange:ze,handleConnectionChange:Ve,handleModelChange:He,handleProviderCreated:Ue,setProviderConnection:T,setModel:C,handleSave:Qe,switchToSaveAsNew:$e}}var Mt=`/assistant/assets/pcm-downsample-worklet-CwNZrVLe.js`;function Nt(){if(!(typeof window>`u`))return window.AudioContext??window.webkitAudioContext}function Pt(e){let t=Nt();if(!t)throw Error(`Web Audio API is not available in this environment`);return new t(e)}var Ft=`pcm-downsample`,It=1600,Lt=16e3;function Rt(){return S()?window.vellum?.helper?.dictation:void 0}function zt(){let e=Rt();return!!e?.transcribe&&!!e.onTranscribed}var Bt=null,Vt=null;async function Ht(){return Bt||(Bt=Pt(),Vt=Bt.audioWorklet.addModule(Mt)),Bt.state!==`running`&&await Bt.resume(),await Vt,Bt}async function Ut(e,t){try{let n=await Ht(),r=n.createMediaStreamSource(e),i=new AudioWorkletNode(n,Ft,{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<It))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 Wt=8e3;async function Gt(e){let t=Rt();if(!t?.transcribe||!t.onTranscribed)return null;let n;try{n=await Kt(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),Wt)});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 Kt(e){let t=await e.arrayBuffer(),n=await new OfflineAudioContext(1,1,Lt).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 qt=4e3;async function Jt(e,t){let n=Rt();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 Ut(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),qt)})),l?.(),console.info(e===null?`dictation: native finalized not received`:`dictation: native finalized chars=${e.length}`),e})(),f)}var Yt=[{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`}}],Xt=`macos-native`,Zt=[{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:Xt,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.`}],Qt=[{id:`mailgun`,displayName:`Mailgun`,setupSkill:`mailgun-setup`,docsUrl:`https://www.mailgun.com/`},{id:`resend`,displayName:`Resend`,setupSkill:`resend-setup`,docsUrl:`https://resend.com/`}],$t=[`gemini-3.1-flash-image-preview`,`gemini-3-pro-image-preview`,`gpt-image-2`],en={"gemini-3.1-flash-image-preview":`Nano Banana 2`,"gemini-3-pro-image-preview":`Nano Banana Pro`,"gpt-image-2":`GPT Image 2`},tn=[`vellum`,`gemini`,`openai`],nn={vellum:`Vellum`,gemini:`Gemini`,openai:`OpenAI`};function rn(e){return e===`vellum`?[...$t]:$t.filter(t=>an(t)===e)}function an(e){return e.startsWith(`gpt-`)||e.startsWith(`dall-e-`)?`openai`:(e.startsWith(`gemini-`),`gemini`)}var on=`vellum:ai:imageGenProvider`,sn=`vellum:ai:imageGenModel`,cn=`vellum:ai:webSearchProvider`,ln=`vellum:ai:webFetchProvider`,un=`vellum:ai:emailMode`,dn=`vellum:ai:emailByoProvider`,fn=`vellum:voice:ttsProvider`,pn=`vellum:voice:ttsApiKey:`,mn=`vellum:voice:ttsVoiceId:`,hn=`vellum:voice:sttProvider`,gn=`vellum:voice:sttApiKey:`,_n=`0.10.8`;function vn(){return te(_n)}var yn=`0.11.0`;function bn(){return te(yn)}function xn({value:e,size:t=`default`,className:n,...r}){let i=t===`compact`;return(0,Z.jsxs)(`button`,{type:`button`,className:c(`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,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:e}),(0,Z.jsx)(d,{"aria-hidden":!0,className:c(`shrink-0 text-[var(--content-tertiary)]`,i?`h-3 w-3`:`h-3.5 w-3.5`)})]})}var Sn={profiles:{},profileOrder:[]};function Cn(e,t){let n=e?.profiles,r=e?.profileOrder,i=!!n&&Object.keys(n).length>0,[a,o]=(0,W.useState)(Sn),[s,c]=(0,W.useState)(t);return t!==s&&(c(t),o(Sn)),(0,W.useEffect)(()=>{i&&o({profiles:n,profileOrder:r??[]})},[i,n,r]),i?{profiles:n,profileOrder:r??[]}:t===s?a:Sn}export{Mt as A,ct as B,rn as C,Gt as D,Jt as E,xt as F,Ie as G,st as H,yt as I,Le as J,Fe as K,_t as L,Tt as M,wt as N,Pt as O,St as P,ut as R,Yt as S,zt as T,Be as U,ot as V,Ge as W,Me as X,je as Y,en as _,dn as a,Xt as b,on as c,pn as d,fn as f,Qt as g,cn as h,vn as i,jt as j,Nt as k,gn as l,ln as m,xn as n,un as o,mn as p,Re as q,bn as r,sn as s,Cn as t,hn as u,tn as v,an as w,Zt as x,nn as y,dt as z};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-VkxVX0DM.js";import{n as r}from"./QueryClientProvider-EuRl-wrW.js";import{t as i}from"./useQuery-CTSuec5b.js";import{t as a}from"./jsx-runtime-BJ8jcmzB.js";import{t as o}from"./cn-Cf8SmgbR.js";import{f as s}from"./list-row-CDwzGT9g.js";import{t as c}from"./check-pgeLaeXx.js";import{t as l}from"./search-D_t5oHhF.js";import{t as u}from"./square-rBIWdRdF.js";import{t as d}from"./volume-2-C9nj0NKL.js";import{a as f}from"./src-qDZBwoEm.js";import{n as p}from"./toast-DqqWkjsh.js";import{t as m}from"./select-BKyejRky.js";import{j as h}from"./sdk.gen-CiE6cMi0.js";import{i as g,r as _}from"./use-is-org-ready-BYJTuCXo.js";import{Gt as v,d as y,qt as b,u as x}from"./react-query.gen-Bbh5MII3.js";import{n as S,t as C}from"./use-voice-sample-preview-BHCiYpHq.js";var w=e(t(),1);function T({assistantId:e,configuredValue:t,buildPatchBody:n,failureMessage:i}){let a=r(),[o,s]=(0,w.useState)(!1),[c,l]=(0,w.useState)(null),u=c??t,d=(0,w.useRef)(Promise.resolve()),f=(0,w.useRef)(0);return{currentValue:u,selecting:o,select:(0,w.useCallback)(t=>{if(!e||t===u)return;let r=++f.current;l(t),s(!0),d.current=d.current.then(async()=>{try{let{response:r}=await h({path:{assistant_id:e},body:await n(t),throwOnError:!1});if(!r?.ok){p.error(i);return}await a.invalidateQueries({queryKey:y({path:{assistant_id:e}})})}catch{p.error(i)}finally{r===f.current&&(l(null),s(!1))}})},[e,u,n,i,a])}}var E=e=>({services:{tts:{providers:{vellum:{model:e}}}}});function D(e){let t=g(),n=t===`ready`&&!!e,{data:r,isLoading:a}=i({...b({path:{assistant_id:e??``}}),enabled:n,staleTime:1/0,retry:!1}),{data:o,isLoading:s}=i({...x({path:{assistant_id:e??``}}),enabled:n,staleTime:3e4}),c=o?.services?.tts,l=c?.mode===`managed`||c?.provider===`vellum`,u=r?.providers?.find(e=>e.id===`vellum`)?.supportsVoiceSelection===!0,{voices:d,defaultModel:f,loading:p}=S(e,{enabled:n&&l}),m=n&&l&&u&&d.length>0,h=n&&!!o&&!l,_=t!==`resolving`&&!a&&!s&&!p,{currentValue:v,selecting:y,select:C}=T({assistantId:e,configuredValue:c?.providers?.vellum?.model??f??d[0]?.model??``,buildPatchBody:E,failureMessage:`Couldn't change the voice just now. Try again.`});return{available:m,isByok:h,settled:_,voices:d,currentModel:v,defaultModel:f??``,selectModel:C,selecting:y}}var O={deepgram:`Deepgram`,elevenlabs:`ElevenLabs`},k=`Uses Vellum credits, through providers like ElevenLabs and Deepgram.`;function A(e){let t=e.indexOf(` · `);return t===-1?{traits:e,accent:``}:{accent:e.slice(0,t),traits:e.slice(t+3)}}function j(e){let{traits:t}=A(e);return t.charAt(0).toUpperCase()+t.slice(1)}function M(e){let t=new Map;for(let n of e){let{accent:e}=A(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)=>A(e.description).traits.localeCompare(A(t.description).traits))}))}var N=a();function P({description:e,className:t}){let{accent:n}=A(e);return(0,N.jsxs)(`span`,{className:o(`truncate`,t),children:[j(e),n&&(0,N.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:` · ${n}`})]})}function F({assistantId:e,heading:t,className:r,listClassName:i,onSelect:a,value:l,onChange:f,showSource:p=!1,filterBySource:h=!1,autoScrollToSelected:g=!1}){let{available:_,voices:v,currentModel:y,defaultModel:b,selectModel:x,selecting:S}=D(e),T=l!==void 0&&f!==void 0,E=T?l:y,k=e=>{T?f(e):x(e),a?.()},A=(0,w.useMemo)(()=>{let e=new Set,t=[];for(let n of v)e.has(n.source)||(e.add(n.source),t.push(n.source));return t.sort((e,t)=>(O[e]??e).localeCompare(O[t]??t))},[v]),[P,F]=(0,w.useState)(null),I=v.find(e=>e.model===E)?.source,L=h?P??I??A[0]??null:null,R=h&&A.length>1,z=(0,w.useMemo)(()=>M(L?v.filter(e=>e.source===L):v),[v,L]),{previewingModel:B,play:V,stop:H}=C(),U=(0,w.useRef)(null);(0,w.useEffect)(()=>{g&&U.current?.scrollIntoView?.({block:`nearest`})},[g]);let W=v.length>0;return(T?!W:!_)?null:(0,N.jsxs)(`div`,{className:o(`flex flex-col gap-2`,t&&`border-t border-[var(--border-subtle)] pt-3`,r),children:[t&&(0,N.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-secondary)]`,children:t}),R&&(0,N.jsx)(`div`,{className:`px-1 pb-1`,children:(0,N.jsx)(m,{value:L??``,onChange:F,options:A.map(e=>({value:e,label:O[e]??e})),"aria-label":`Voice provider`})}),(0,N.jsx)(`div`,{role:`listbox`,"aria-label":`Assistant voice`,className:o(`flex flex-col overflow-y-auto`,h?`max-h-[60vh]`:`max-h-80`,S&&`pointer-events-none opacity-70`,i),children:z.map(e=>(0,N.jsxs)(`div`,{role:`group`,"aria-label":e.accent,children:[(0,N.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===E,r=B===e.model,i=e.model===b;return(0,N.jsxs)(`div`,{ref:t?U:void 0,role:`option`,"aria-selected":t,onClick:()=>k(e.model),"data-reveal-row":``,"data-reveal-hold":r?``:void 0,className:o(`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,N.jsxs)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:[j(e.description),i&&(0,N.jsxs)(`span`,{className:`text-[var(--content-tertiary)]`,children:[` `,`(default)`]})]}),p&&!h&&(0,N.jsx)(`span`,{className:`shrink-0 text-body-small-default text-[var(--content-tertiary)]`,children:O[e.source]??e.source}),(0,N.jsxs)(s,{className:`min-h-7 min-w-7`,children:[e.sampleUrl!==``&&(0,N.jsx)(n,{variant:`ghost`,size:`compact`,iconOnly:r?(0,N.jsx)(u,{}):(0,N.jsx)(d,{}),"aria-label":r?`Stop preview`:`Preview ${e.description}`,"data-reveal":``,className:`size-full`,onClick:t=>{t.stopPropagation(),r?H():V(e)}}),t&&(0,N.jsx)(c,{"aria-hidden":!0,"data-reveal-yield":e.sampleUrl===``?void 0:``,className:`pointer-events-none size-4 text-[var(--system-positive-strong)]`})]})]},e.model)})]},e.accent))})]})}function I(e){return e.nativeLabel?`${e.label} (${e.nativeLabel})`:e.label}var L=`multi`,R=[{code:``,label:`English (default)`,description:`Speech recognition defaults to English.`},{code:L,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:`ur`,label:`Urdu`,nativeLabel:`اردو`,extended:!0},{code:`vi`,label:`Vietnamese`,nativeLabel:`Tiếng Việt`,extended:!0}],z=new Set([`deepgram`,`vellum`]),B=new Set([`deepgram`,`vellum`]),V=new Set([`xai`]),H=new Set([`deepgram`,`vellum`]),U={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.`},W={code:`en`,label:`English`};function G(e,t){let n=B.has(t)?R:R.filter(e=>!e.extended),r=z.has(t)?n:n.filter(e=>e.code!==L),i=V.has(t)?r.flatMap(e=>e.code===``?[U,W]:[e]):r,a=H.has(t)?i.flatMap(e=>e.code===``?[W]:[e]):i;return a.some(t=>t.code===e)?a:[...a,{code:e,label:`${e} (custom)`}]}function K(e,t,n){let r=G(e,t),i=[],a=e=>{!i.includes(e)&&r.some(t=>t.code===e)&&i.push(e)};return a(e),a(``),a(L),a(`en`),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 q(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 J(e,t){let n=G(e,t).find(t=>t.code===e);return n?I(n):e}function Y(e){if(!e)return null;let t=e.toLowerCase().split(`-`)[0];return t===`en`?null:R.find(e=>e.code===t)??null}function X(e,t,n=``){let r=Y(e);return!r||n===r.code?null:r.extended?B.has(t)?r.code:null:n===`multi`||n===``&&V.has(t)?null:z.has(t)?L:r.code}function Z({currentCode:e,configuredProviderId:t,suggestedCode:n,selectLanguage:r,selecting:i,onDone:a}){let s=(0,w.useRef)(null),[u,d]=(0,w.useState)(``),p=(0,w.useMemo)(()=>K(e,t,n),[e,t,n]),m=u.trim().length>0,h=(0,w.useMemo)(()=>{let e=[...p.featured,...p.rest];return m?e.filter(e=>q(e,u)):e},[p,m,u]),g=(0,w.useMemo)(()=>h.map(e=>e.code),[h]);(0,w.useEffect)(()=>{s.current?.focus()},[]);let _=e=>{r(e),a()},v=t=>{let r=n!=null&&t.code===n&&t.code!==e,i=t.code===e;return(0,N.jsxs)(f.Option,{value:t.code,className:({isActive:e})=>o(`flex w-full items-center gap-2 rounded-md px-3 py-2.5 transition-colors`,i?`bg-[var(--surface-active)]`:e?`bg-[var(--surface-hover)]`:`hover:bg-[var(--surface-hover)]`),children:[(0,N.jsxs)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:[I(t),t.description&&(0,N.jsx)(`span`,{className:`block truncate text-label-small-default text-[var(--content-tertiary)]`,children:t.description})]}),r&&(0,N.jsx)(`span`,{className:`shrink-0 text-label-small-default text-[var(--content-tertiary)]`,children:`Suggested`}),i&&(0,N.jsx)(c,{"aria-hidden":!0,className:`size-4 shrink-0 text-[var(--system-positive-strong)]`})]},t.code)};return(0,N.jsxs)(f.Root,{className:`flex min-h-0 flex-col gap-2`,options:g,value:e,onSelect:_,open:!0,autoActivateFirst:m,children:[(0,N.jsx)(f.Input,{ref:s,"aria-label":`Search languages`,placeholder:`Search languages`,leftIcon:(0,N.jsx)(l,{className:`size-4`}),value:u,onChange:e=>d(e.target.value),fullWidth:!0}),(0,N.jsx)(f.List,{"aria-label":`Languages`,"aria-busy":i,className:o(`max-h-[50vh]`,i&&`opacity-70`),emptyState:(0,N.jsx)(`p`,{className:`px-3 py-2.5 text-body-medium-default text-[var(--content-tertiary)]`,children:`No languages match.`}),children:m?h.map(v):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(f.Group,{label:`Featured`,children:p.featured.map(v)}),(0,N.jsx)(f.Group,{label:`All languages`,children:p.rest.map(v)})]})})]})}function Q(e,t){return t||(H.has(e)?`en`:``)}var $=e=>({services:{stt:{language:e===``?`en`:e}}});function ee(e){let t=_()&&!!e,{data:n}=i({...v({path:{assistant_id:e??``}}),enabled:t,staleTime:1/0,retry:!1}),{data:r}=i({...x({path:{assistant_id:e??``}}),enabled:t,staleTime:3e4}),a=r?.services?.stt,o=a?.mode===`managed`?`vellum`:a?.provider??`deepgram`,s=n?.providers?.find(e=>e.id===o)?.languageSelection===`manual`,c=t&&!!r&&s,{currentValue:l,selecting:u,select:d}=T({assistantId:e,configuredValue:Q(o,a?.language),buildPatchBody:$,failureMessage:`Couldn't change the language just now. Try again.`});return{available:c,currentCode:l,configuredProviderId:o,selectLanguage:d,selecting:u}}export{P as a,j as c,X as i,D as l,Z as n,F as o,J as r,k as s,ee as t};
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-VkxVX0DM.js";import{n as r}from"./QueryClientProvider-EuRl-wrW.js";import{t as i}from"./useQuery-CTSuec5b.js";import{t as a}from"./jsx-runtime-BJ8jcmzB.js";import{t as o}from"./cn-Cf8SmgbR.js";import{f as s}from"./list-row-CDwzGT9g.js";import{t as c}from"./check-pgeLaeXx.js";import{t as l}from"./search-D_t5oHhF.js";import{t as u}from"./square-rBIWdRdF.js";import{t as d}from"./volume-2-C9nj0NKL.js";import{o as f}from"./src-CImIAPTd.js";import{n as p}from"./toast-DqqWkjsh.js";import{t as m}from"./select-BKyejRky.js";import{j as h}from"./sdk.gen-CiE6cMi0.js";import{i as g,r as _}from"./use-is-org-ready-GDBxqujc.js";import{Gt as v,d as y,qt as b,u as x}from"./react-query.gen-Bbh5MII3.js";import{n as S,t as C}from"./use-voice-sample-preview-CZoWWEeH.js";var w=e(t(),1);function T({assistantId:e,configuredValue:t,buildPatchBody:n,failureMessage:i}){let a=r(),[o,s]=(0,w.useState)(!1),[c,l]=(0,w.useState)(null),u=c??t,d=(0,w.useRef)(Promise.resolve()),f=(0,w.useRef)(0);return{currentValue:u,selecting:o,select:(0,w.useCallback)(t=>{if(!e||t===u)return;let r=++f.current;l(t),s(!0),d.current=d.current.then(async()=>{try{let{response:r}=await h({path:{assistant_id:e},body:await n(t),throwOnError:!1});if(!r?.ok){p.error(i);return}await a.invalidateQueries({queryKey:y({path:{assistant_id:e}})})}catch{p.error(i)}finally{r===f.current&&(l(null),s(!1))}})},[e,u,n,i,a])}}var E=e=>({services:{tts:{providers:{vellum:{model:e}}}}});function D(e){let t=g(),n=t===`ready`&&!!e,{data:r,isLoading:a}=i({...b({path:{assistant_id:e??``}}),enabled:n,staleTime:1/0,retry:!1}),{data:o,isLoading:s}=i({...x({path:{assistant_id:e??``}}),enabled:n,staleTime:3e4}),c=o?.services?.tts,l=c?.mode===`managed`||c?.provider===`vellum`,u=r?.providers?.find(e=>e.id===`vellum`)?.supportsVoiceSelection===!0,{voices:d,defaultModel:f,loading:p}=S(e,{enabled:n&&l}),m=n&&l&&u&&d.length>0,h=n&&!!o&&!l,_=t!==`resolving`&&!a&&!s&&!p,{currentValue:v,selecting:y,select:C}=T({assistantId:e,configuredValue:c?.providers?.vellum?.model??f??d[0]?.model??``,buildPatchBody:E,failureMessage:`Couldn't change the voice just now. Try again.`});return{available:m,isByok:h,settled:_,voices:d,currentModel:v,defaultModel:f??``,selectModel:C,selecting:y}}var O={deepgram:`Deepgram`,elevenlabs:`ElevenLabs`},k=`Uses Vellum credits, through providers like ElevenLabs and Deepgram.`;function A(e){let t=e.indexOf(` · `);return t===-1?{traits:e,accent:``}:{accent:e.slice(0,t),traits:e.slice(t+3)}}function j(e){let{traits:t}=A(e);return t.charAt(0).toUpperCase()+t.slice(1)}function M(e){let t=new Map;for(let n of e){let{accent:e}=A(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)=>A(e.description).traits.localeCompare(A(t.description).traits))}))}var N=a();function P({description:e,className:t}){let{accent:n}=A(e);return(0,N.jsxs)(`span`,{className:o(`truncate`,t),children:[j(e),n&&(0,N.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:` · ${n}`})]})}function F({assistantId:e,heading:t,className:r,listClassName:i,onSelect:a,value:l,onChange:f,showSource:p=!1,filterBySource:h=!1,autoScrollToSelected:g=!1}){let{available:_,voices:v,currentModel:y,defaultModel:b,selectModel:x,selecting:S}=D(e),T=l!==void 0&&f!==void 0,E=T?l:y,k=e=>{T?f(e):x(e),a?.()},A=(0,w.useMemo)(()=>{let e=new Set,t=[];for(let n of v)e.has(n.source)||(e.add(n.source),t.push(n.source));return t.sort((e,t)=>(O[e]??e).localeCompare(O[t]??t))},[v]),[P,F]=(0,w.useState)(null),I=v.find(e=>e.model===E)?.source,L=h?P??I??A[0]??null:null,R=h&&A.length>1,z=(0,w.useMemo)(()=>M(L?v.filter(e=>e.source===L):v),[v,L]),{previewingModel:B,play:V,stop:H}=C(),U=(0,w.useRef)(null);(0,w.useEffect)(()=>{g&&U.current?.scrollIntoView?.({block:`nearest`})},[g]);let W=v.length>0;return(T?!W:!_)?null:(0,N.jsxs)(`div`,{className:o(`flex flex-col gap-2`,t&&`border-t border-[var(--border-subtle)] pt-3`,r),children:[t&&(0,N.jsx)(`span`,{className:`text-label-medium-default text-[var(--content-secondary)]`,children:t}),R&&(0,N.jsx)(`div`,{className:`px-1 pb-1`,children:(0,N.jsx)(m,{value:L??``,onChange:F,options:A.map(e=>({value:e,label:O[e]??e})),"aria-label":`Voice provider`})}),(0,N.jsx)(`div`,{role:`listbox`,"aria-label":`Assistant voice`,className:o(`flex flex-col overflow-y-auto`,h?`max-h-[60vh]`:`max-h-80`,S&&`pointer-events-none opacity-70`,i),children:z.map(e=>(0,N.jsxs)(`div`,{role:`group`,"aria-label":e.accent,children:[(0,N.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===E,r=B===e.model,i=e.model===b;return(0,N.jsxs)(`div`,{ref:t?U:void 0,role:`option`,"aria-selected":t,onClick:()=>k(e.model),"data-reveal-row":``,"data-reveal-hold":r?``:void 0,className:o(`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,N.jsxs)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:[j(e.description),i&&(0,N.jsxs)(`span`,{className:`text-[var(--content-tertiary)]`,children:[` `,`(default)`]})]}),p&&!h&&(0,N.jsx)(`span`,{className:`shrink-0 text-body-small-default text-[var(--content-tertiary)]`,children:O[e.source]??e.source}),(0,N.jsxs)(s,{className:`min-h-7 min-w-7`,children:[e.sampleUrl!==``&&(0,N.jsx)(n,{variant:`ghost`,size:`compact`,iconOnly:r?(0,N.jsx)(u,{}):(0,N.jsx)(d,{}),"aria-label":r?`Stop preview`:`Preview ${e.description}`,"data-reveal":``,className:`size-full`,onClick:t=>{t.stopPropagation(),r?H():V(e)}}),t&&(0,N.jsx)(c,{"aria-hidden":!0,"data-reveal-yield":e.sampleUrl===``?void 0:``,className:`pointer-events-none size-4 text-[var(--system-positive-strong)]`})]})]},e.model)})]},e.accent))})]})}function I(e){return e.nativeLabel?`${e.label} (${e.nativeLabel})`:e.label}var L=`multi`,R=[{code:``,label:`English (default)`,description:`Speech recognition defaults to English.`},{code:L,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:`ur`,label:`Urdu`,nativeLabel:`اردو`,extended:!0},{code:`vi`,label:`Vietnamese`,nativeLabel:`Tiếng Việt`,extended:!0}],z=new Set([`deepgram`,`vellum`]),B=new Set([`deepgram`,`vellum`]),V=new Set([`xai`]),H=new Set([`deepgram`,`vellum`]),U={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.`},W={code:`en`,label:`English`};function G(e,t){let n=B.has(t)?R:R.filter(e=>!e.extended),r=z.has(t)?n:n.filter(e=>e.code!==L),i=V.has(t)?r.flatMap(e=>e.code===``?[U,W]:[e]):r,a=H.has(t)?i.flatMap(e=>e.code===``?[W]:[e]):i;return a.some(t=>t.code===e)?a:[...a,{code:e,label:`${e} (custom)`}]}function K(e,t,n){let r=G(e,t),i=[],a=e=>{!i.includes(e)&&r.some(t=>t.code===e)&&i.push(e)};return a(e),a(``),a(L),a(`en`),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 q(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 J(e,t){let n=G(e,t).find(t=>t.code===e);return n?I(n):e}function Y(e){if(!e)return null;let t=e.toLowerCase().split(`-`)[0];return t===`en`?null:R.find(e=>e.code===t)??null}function X(e,t,n=``){let r=Y(e);return!r||n===r.code?null:r.extended?B.has(t)?r.code:null:n===`multi`||n===``&&V.has(t)?null:z.has(t)?L:r.code}function Z({currentCode:e,configuredProviderId:t,suggestedCode:n,selectLanguage:r,selecting:i,onDone:a}){let s=(0,w.useRef)(null),[u,d]=(0,w.useState)(``),p=(0,w.useMemo)(()=>K(e,t,n),[e,t,n]),m=u.trim().length>0,h=(0,w.useMemo)(()=>{let e=[...p.featured,...p.rest];return m?e.filter(e=>q(e,u)):e},[p,m,u]),g=(0,w.useMemo)(()=>h.map(e=>e.code),[h]);(0,w.useEffect)(()=>{s.current?.focus()},[]);let _=e=>{r(e),a()},v=t=>{let r=n!=null&&t.code===n&&t.code!==e,i=t.code===e;return(0,N.jsxs)(f.Option,{value:t.code,className:({isActive:e})=>o(`flex w-full items-center gap-2 rounded-md px-3 py-2.5 transition-colors`,i?`bg-[var(--surface-active)]`:e?`bg-[var(--surface-hover)]`:`hover:bg-[var(--surface-hover)]`),children:[(0,N.jsxs)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:[I(t),t.description&&(0,N.jsx)(`span`,{className:`block truncate text-label-small-default text-[var(--content-tertiary)]`,children:t.description})]}),r&&(0,N.jsx)(`span`,{className:`shrink-0 text-label-small-default text-[var(--content-tertiary)]`,children:`Suggested`}),i&&(0,N.jsx)(c,{"aria-hidden":!0,className:`size-4 shrink-0 text-[var(--system-positive-strong)]`})]},t.code)};return(0,N.jsxs)(f.Root,{className:`flex min-h-0 flex-col gap-2`,options:g,value:e,onSelect:_,open:!0,autoActivateFirst:m,children:[(0,N.jsx)(f.Input,{ref:s,"aria-label":`Search languages`,placeholder:`Search languages`,leftIcon:(0,N.jsx)(l,{className:`size-4`}),value:u,onChange:e=>d(e.target.value),fullWidth:!0}),(0,N.jsx)(f.List,{"aria-label":`Languages`,"aria-busy":i,className:o(`max-h-[50vh]`,i&&`opacity-70`),emptyState:(0,N.jsx)(`p`,{className:`px-3 py-2.5 text-body-medium-default text-[var(--content-tertiary)]`,children:`No languages match.`}),children:m?h.map(v):(0,N.jsxs)(N.Fragment,{children:[(0,N.jsx)(f.Group,{label:`Featured`,children:p.featured.map(v)}),(0,N.jsx)(f.Group,{label:`All languages`,children:p.rest.map(v)})]})})]})}function Q(e,t){return t||(H.has(e)?`en`:``)}var $=e=>({services:{stt:{language:e===``?`en`:e}}});function ee(e){let t=_()&&!!e,{data:n}=i({...v({path:{assistant_id:e??``}}),enabled:t,staleTime:1/0,retry:!1}),{data:r}=i({...x({path:{assistant_id:e??``}}),enabled:t,staleTime:3e4}),a=r?.services?.stt,o=a?.mode===`managed`?`vellum`:a?.provider??`deepgram`,s=n?.providers?.find(e=>e.id===o)?.languageSelection===`manual`,c=t&&!!r&&s,{currentValue:l,selecting:u,select:d}=T({assistantId:e,configuredValue:Q(o,a?.language),buildPatchBody:$,failureMessage:`Couldn't change the language just now. Try again.`});return{available:c,currentCode:l,configuredProviderId:o,selectLanguage:d,selecting:u}}export{P as a,j as c,X as i,D as l,Z as n,F as o,J as r,k as s,ee as t};
|
package/dist/assets/{use-subagent-card-data-CTkK6bHj.js → use-subagent-card-data-DlVOBxXw.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{c as n,h as r,m as i}from"./message-content-weXJNNKO.js";import{r as a}from"./resolved-assistants-store-BNadgXqb.js";import{i as o,o as s,r as c}from"./subagent-store-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{c as n,h as r,m as i}from"./message-content-weXJNNKO.js";import{r as a}from"./resolved-assistants-store-BNadgXqb.js";import{i as o,o as s,r as c}from"./subagent-store-DqKEBlAM.js";import{C as l,S as u,_ as d,w as f,y as p}from"./site-favicon-Cu07pwc9.js";function m(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 h=e(t(),1);function g(e,t){return JSON.stringify(e)===JSON.stringify(t)}function _(e=A){let t=null,n=[],r=[];function i(e){let i=j(e);return t=e,n=i.steps,r=i.toolMeta,{steps:n,toolMeta:r}}function a(a){let o=m(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&&g(l,u)?{steps:n,toolMeta:r}:(n=o,r=s,{steps:n,toolMeta:r})}case`fallback`:return i(a)}}return{project:a}}function v(e){let t=(0,h.useRef)(null),n=(0,h.useRef)(null);t.current??=_();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 y=160,b=[];function x(e){return r(e.replace(/\s+/g,` `).trim(),y)}function S(e){let t=((e.input&&typeof e.input.url==`string`?e.input.url:``)||e.content||``).trim(),n=t?u(t):``;return n?`Reading ${n}`:`Reading…`}function C(e,t){let n=typeof e==`number`&&Number.isFinite(e)?t-e:0;return n>0?p(n):``}function w(e,t){return{kind:`web_search_error`,title:`Web search failed`,durationLabel:e,errorMessage:x(t.result??t.content)||`Web search failed`,detailKey:t.toolUseId}}function T(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 E(e){let t=e.toolName??``,r=e.content??``,i=n(t,e.input??T(t,r));return{kind:`tool`,durationLabel:``,toolCallId:e.toolUseId??``,iconName:i.iconName,title:i.title,info:i.info||r,activity:i.activity,status:`running`}}function D(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 O(e,t,n){return D(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 k(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 A(e,t,n){if(n.type===`text`){let r=x(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(d.has(r)){if(r===`web_fetch`)e.push({kind:`thinking`,durationLabel:``,text:S(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(E(n)),t.push({startTs:n.timestamp,toolName:r});return}if(n.type===`tool_result`){let r=O(e,t,n);if(r===-1)return;let i=e[r],a=t[r]?.startTs,o=C(a,n.timestamp);if(i.kind===`web_search`){if(n.isError){e[r]=w(o,n);return}let t=l(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=O(e,t,n);if(r!==-1){let i=e[r];i.kind===`tool`?e[r]={...i,status:`error`}:i.kind===`web_search`&&(e[r]=w(C(t[r]?.startTs,n.timestamp),n))}let i=x(n.content)||`Subagent error`;e.push({kind:`tool_error`,message:i}),t.push(void 0);return}}function j(e){let t=[],n=[];for(let r of e)A(t,n,r);return{steps:t,toolMeta:n}}function M(e){return!s(e.status)&&o(e)&&e.events.length===0&&!e.detailSettled}function N(e,{steps:t,toolMeta:n}){if(M(e))return{state:`loading`,currentStepTitle:`Loading`,currentStepInfo:e.label,stepCount:``,steps:t,carouselItems:[]};let r=k(e.status),{currentStepTitle:i,currentStepInfo:a}=P(e,t,n);return{state:r,currentStepTitle:i,currentStepInfo:a,stepCount:`${t.length} step${t.length===1?``:`s`}`,steps:t,carouselItems:[]}}function P(e,t,n){let r=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:r?`Thought`:`Thinking`,currentStepInfo:f(a.text)};if(a.kind===`tool`){if(a.status===`running`)return{currentStepTitle:`Working`,currentStepInfo:a.info};if(!r)return{currentStepTitle:`Finalizing`,currentStepInfo:a.info};let e=n[t.length-1]?.toolName??``;return{currentStepTitle:e?`Used ${i(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 F(e){let t=c(t=>t.byId[e]),n=a(e=>e.activeAssistantId),r=t!==void 0&&M(t);(0,h.useEffect)(()=>{r&&n&&c.getState().fetchDetailIfNeeded(n,e)},[r,n,e]);let i=v(t?.events??b),o=(0,h.useRef)(null);if(!t)return o.current=null,null;let s=N(t,i),l=o.current;return l!=null&&l.steps===s.steps&&l.state===s.state&&l.currentStepTitle===s.currentStepTitle&&l.currentStepInfo===s.currentStepInfo&&l.stepCount===s.stepCount?l:(o.current=s,s)}function I(e,t,r){if(r.type===`text`){if((r.content??``).trim().length===0)return;e.push({toolCallId:r.id,toolName:``,title:`Thought`,activity:``,input:{},status:`completed`,durationLabel:``,kind:`thinking`,thinkingText:r.content}),t.push({startTs:r.timestamp,running:!1});return}if(r.type===`tool_call`){let i=r.toolUseId??``;if(!i)return;let a=r.toolName??``;if(a===`web_search`){let n=r.input&&typeof r.input.query==`string`?r.input.query:r.content||void 0;e.push({toolCallId:i,toolName:a,title:`Searched the web`,activity:``,input:r.input??{},status:`running`,durationLabel:``,kind:`web_search`,searchQuery:n,searchResults:[]}),t.push({startTs:r.timestamp,running:!0});return}let o=n(a,r.input??T(a,r.content??``));e.push({toolCallId:i,toolName:a,title:o.title,activity:o.activity,input:r.input??{},status:`running`,durationLabel:``,kind:`tool`}),t.push({startTs:r.timestamp,running:!0});return}if(r.type===`tool_result`||r.type===`error`){let n=D(e.map((e,n)=>({toolCallId:e.toolCallId,toolName:e.toolName,running:t[n].running})),r);if(n===-1)return;let i=e[n],a=t[n].startTs,o=C(a,r.timestamp);e[n]=i.kind===`web_search`?{...i,status:r.isError?`error`:`completed`,durationLabel:o,searchQuery:i.searchQuery||r.searchQuery,searchResults:r.isError?[]:l(r.result??r.content),result:r.isError?r.result??r.content:void 0}:{...i,result:r.result??r.content,status:r.isError?`error`:`completed`,durationLabel:o},t[n].running=!1}}export{m as i,F as n,v as r,I as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{L as n,t as r}from"./use-transcript-messages-Q1PBxvSF.js";var i=e(t(),1);function a(e){let t=r();return(0,i.useMemo)(()=>{if(e)return t.find(t=>n(t).includes(e))},[t,e])}export{a as t};
|
package/dist/assets/{use-transcript-messages-BvoNGyuA.js → use-transcript-messages-Q1PBxvSF.js}
RENAMED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{i as t,l as n}from"./local-settings-Bx7FsNo5.js";import{t as r}from"./react-BFJW0bSv.js";import{i}from"./use-attachment-preview-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{i as t,l as n}from"./local-settings-Bx7FsNo5.js";import{t as r}from"./react-BFJW0bSv.js";import{i}from"./use-attachment-preview-Cq_IWTdT.js";import{n as a,t as o}from"./create-selectors-CmDroXTn.js";import{n as s}from"./event-bus-B-wwSVzo.js";import{r as c}from"./typed-storage-BNw603jr.js";import{t as l}from"./client-perf-BZu5XQCP.js";import{a as u}from"./diagnostics-CwFqcLv_.js";import{t as ee}from"./conversation-store-DKBwV4bc.js";import{s as te,u as d}from"./messages-CPTfRZA4.js";import{C as f,D as p,n as ne,t as re,w as ie,x as ae}from"./chat-CHVUM3s0.js";var m=e(r(),1),h=1e3,oe=15,se=0,g=new Map,_=[],v=new Map,ce=20;function le(e){let t=`sse-${++se}`,n={id:t,abortSignal:e,initiatedAt:Date.now(),establishedAt:null,lastTrafficAt:null,lastDataAt:null,dataFrames:0,keepalives:0,firstFrameAt:null,interKeepaliveMs:null,endedAt:null,endReason:null};g.set(t,n),xe();let r=()=>{be(t,`aborted`)};return e.aborted?r():e.addEventListener(`abort`,r,{once:!0}),t}function ue(e){let t=g.get(e);t&&t.establishedAt===null&&(t.establishedAt=Date.now())}function de(e,t){let n=g.get(e);if(!n)return;let r=Date.now();n.lastTrafficAt=r,n.firstFrameAt===null&&(n.firstFrameAt=r),t?(n.lastDataAt=r,n.dataFrames++):(n.keepalives++,fe(n,r))}function fe(e,t){let n=v.get(e.id);if(!n){v.set(e.id,{lastKeepaliveAt:t,gaps:[]});return}n.gaps.push(t-n.lastKeepaliveAt),n.lastKeepaliveAt=t,n.gaps.length>ce&&n.gaps.shift(),n.gaps.length>=2&&(e.interKeepaliveMs=Math.round(pe(n.gaps)))}function pe(e){let t=[...e].sort((e,t)=>e-t),n=Math.floor(t.length/2);return t.length%2==1?t[n]:(t[n-1]+t[n])/2}function me(e,t){_.push({clientId:e,receivedAt:new Date().toISOString(),...t}),_.length>h&&_.shift()}var he=`events-tail`;function ge(e){if(e.length===0)return;let t=new Set;for(let e of _)typeof e.seq==`number`&&t.add(e.seq);for(let n of e)typeof n.seq==`number`&&t.has(n.seq)||_.push({clientId:he,receivedAt:new Date().toISOString(),...n});for(;_.length>h;)_.shift()}function _e(){return Array.from(g.values())}function ve(e=h){let t=Math.max(0,_.length-e);return _.slice(t)}function ye(e,t){if(t===null)return null;let n=1/0;for(let e of _)typeof e.seq==`number`&&(n=Math.min(n,e.seq));return n!==1/0&&n>t+1?null:_.filter(n=>n.conversationId===e&&typeof n.seq==`number`&&n.seq>t).sort((e,t)=>e.seq-t.seq)}function be(e,t){let n=g.get(e);n&&(n.endedAt===null?(n.endedAt=Date.now(),n.endReason=t):n.endReason===`aborted`&&t!==`aborted`&&(n.endReason=t),v.delete(e),xe())}function xe(){let e=0;for(let t of g.values())t.endedAt!==null&&e++;if(!(e<=oe))for(let[t,n]of g){if(e<=oe)break;n.endedAt!==null&&(g.delete(t),v.delete(t),e--)}}var Se=15e3,y=null;function b(){y!==null&&(clearTimeout(y.timer),y=null)}function x(e){if(y===null)return;let t=performance.now()-y.at;b(),l(`client_switch.abandoned`,t,{reason:e})}function Ce(e){x(`superseded`),y={conversationId:e,at:performance.now(),timer:setTimeout(()=>{y=null,l(`client_switch.stalled`,Se,{reason:`timeout`})},Se)}}function we(e,t){if(y===null||y.conversationId!==e)return;let n=performance.now()-y.at;b(),l(`client_switch.transcript_painted`,n,{had_history:t.hadHistory})}function Te({conversationId:e,historyLoadFailed:t,transcriptPainted:n,hadHistory:r}){(0,m.useEffect)(()=>{if(e!==null){if(t){x(`history_error`);return}n&&we(e,{hadHistory:r})}}),(0,m.useEffect)(()=>()=>{x(`unmount`)},[])}function Ee(){let e=s(`app.hidden`,()=>{x(`hidden`)});return()=>{e(),b()}}var S={phase:`idle`,pendingQueuedCount:0,activeToolCallCount:0,activeTurnId:null,lastTerminalReason:null,statusText:null,liveWebActivity:{}};function De(e){return e===`queued`||e===`thinking`||e===`streaming`||e===`awaiting_user_input`}function Oe(e){return e===`thinking`}function C(e){return(e.phase===`idle`||e.phase===`errored`)&&!e.activeTurnId}var ke=o(a()((e,t)=>({...S,requestSend:t=>e(e=>({phase:`thinking`,activeTurnId:t??e.activeTurnId,lastTerminalReason:null,activeToolCallCount:0,statusText:null})),acceptSend:t=>e(e=>({activeTurnId:t,...e.phase===`idle`||e.phase===`errored`?{phase:`thinking`,lastTerminalReason:null}:null})),onTextDelta:()=>{let n=t();if(n.phase===`idle`||n.phase===`errored`){if(!n.activeTurnId)return;e({phase:`streaming`});return}(n.phase===`thinking`||n.phase===`queued`)&&e({phase:`streaming`})},onToolUseStart:()=>{let n=t();C(n)||e({phase:n.phase===`idle`||n.phase===`errored`||n.phase===`queued`?`thinking`:n.phase,activeToolCallCount:n.activeToolCallCount+1})},onToolResult:()=>e(e=>({activeToolCallCount:Math.max(0,e.activeToolCallCount-1)})),onToolActivityMetadata:(n,r)=>{let i=t();C(i)||e({liveWebActivity:{...i.liveWebActivity,[n]:r}})},onActivityThinking:(n,r)=>{let i=t();if(C(i)){if(!r?.canStartFromIdle)return;e({phase:`thinking`,statusText:n??null,lastTerminalReason:null});return}i.phase!==`awaiting_user_input`&&e({phase:`thinking`,statusText:n??null})},recoverFromAwaitingUserInput:()=>{t().phase===`awaiting_user_input`&&e({phase:`thinking`})},showSurface:n=>{C(t())||n&&e({phase:`awaiting_user_input`})},updateSurface:()=>{},dismissSurface:()=>{let n=t();n.phase===`awaiting_user_input`&&n.activeToolCallCount===0&&e({phase:`thinking`})},completeSurface:()=>{let n=t();n.phase===`awaiting_user_input`&&n.activeToolCallCount===0&&e({phase:`thinking`})},onSecretRequest:()=>{C(t())||e({phase:`awaiting_user_input`})},onConfirmationRequest:()=>{C(t())||e({phase:`awaiting_user_input`})},onQuestionRequest:()=>{C(t())||e({phase:`awaiting_user_input`})},onContactRequest:()=>{C(t())||e({phase:`awaiting_user_input`})},completeTurn:()=>{e({phase:t().pendingQueuedCount>0?`queued`:`idle`,activeTurnId:null,activeToolCallCount:0,lastTerminalReason:`complete`,statusText:null,liveWebActivity:{}})},handoffGeneration:()=>{C(t())||e({phase:`thinking`,activeToolCallCount:0,statusText:null})},cancelGeneration:()=>{e({phase:t().pendingQueuedCount>0?`queued`:`idle`,activeTurnId:null,activeToolCallCount:0,lastTerminalReason:`cancelled`,statusText:null,liveWebActivity:{}})},onStreamError:()=>e({phase:`idle`,activeTurnId:null,activeToolCallCount:0,pendingQueuedCount:0,lastTerminalReason:`error`,statusText:null,liveWebActivity:{}}),onSessionError:()=>e({phase:`idle`,activeTurnId:null,activeToolCallCount:0,pendingQueuedCount:0,lastTerminalReason:`session_error`,statusText:null,liveWebActivity:{}}),onTurnTimeout:()=>e({phase:`idle`,activeTurnId:null,activeToolCallCount:0,pendingQueuedCount:0,lastTerminalReason:`timeout`,statusText:null,liveWebActivity:{}}),onPollReconciled:n=>{let r=t();n&&n!==r.activeTurnId||De(r.phase)&&e({phase:`idle`,activeTurnId:null,activeToolCallCount:0,lastTerminalReason:`complete`,statusText:null,liveWebActivity:{}})},resetTurn:()=>e({...S}),clearStaleTurn:()=>{let n=t();n.activeTurnId&&De(n.phase)||e({...S})},enqueueMessage:()=>e(e=>({pendingQueuedCount:e.pendingQueuedCount+1})),dequeueMessage:()=>{let n=t(),r=Math.max(0,n.pendingQueuedCount-1);if(C(n)){e({pendingQueuedCount:r});return}e({phase:`thinking`,pendingQueuedCount:r})},deleteQueuedMessage:()=>{let n=t(),r=Math.max(0,n.pendingQueuedCount-1);if(r===0&&n.phase===`queued`){e({phase:`idle`,pendingQueuedCount:0,activeTurnId:null,lastTerminalReason:`complete`,statusText:null,liveWebActivity:{}});return}e({pendingQueuedCount:r})}})));function Ae(e){if(e.length===0)return``;let t=e[0]??``;for(let n=1;n<e.length;n++){let r=t[t.length-1],i=e[n][0];r&&i&&r!==` `&&r!==`
|
|
2
2
|
`&&r!==` `&&i!==` `&&i!==`
|
|
3
3
|
`&&i!==` `&&(t+=` `),t+=e[n]}return t}function je(e){let t=[];for(let n of e?.contentBlocks??[])n.type===`text`&&t.push(n.text);return Ae(t)}function Me(e){return[...new Set([e.id,...e.mergedMessageIds??[]].filter(e=>typeof e==`string`&&e.length>0))]}function w(e){let t=Me(e);return e.clientMessageId&&!t.includes(e.clientMessageId)?[...t,e.clientMessageId]:t}function T(e,t){return e.id===t||e.clientMessageId===t||(e.mergedMessageIds?.includes(t)??!1)}function Ne(e,t){if(t.length===0)return e;let n=new Map;for(let e of t)for(let t of w(e))n.has(t)||n.set(t,e);let r=[],i=new Set;for(let t of e){let e;for(let r of w(t)){let t=n.get(r);if(t){e=t;break}}if(e){i.has(e)||(r.push(e),i.add(e));continue}r.push(t)}for(let e of t)i.has(e)||r.push(e);return r}function E(e,t){let n=[...e??[]],r=n.findIndex(e=>e.type===`surface`&&e.surface.surfaceId===t.surfaceId);return r===-1?n.push({type:`surface`,surface:t}):n[r]={type:`surface`,surface:t},n}function Pe(e,t){return e?.filter(e=>!(e.type===`surface`&&e.surface.surfaceId===t))}function Fe(e,t){if(!e.surfaces?.length)return e;let n=!1,r=e.contentBlocks,i=e.surfaces.map(e=>{let i=t(e);return i!==e&&(n=!0,r=E(r,i)),i});return n?{...e,surfaces:i,contentBlocks:r}:e}function Ie(e,t){if(!e.surfaces?.length)return e;let n=e.surfaces.filter(t);if(n.length===e.surfaces.length)return e;let r=new Set(e.surfaces.filter(e=>!t(e)).map(e=>e.surfaceId));return{...e,surfaces:n,contentOrder:e.contentOrder?.filter(e=>!(e.type===`surface`&&r.has(e.id))),contentBlocks:e.contentBlocks?.filter(e=>!(e.type===`surface`&&r.has(e.surface.surfaceId)))}}function Le(e){return Array.isArray(e)&&e.every(e=>typeof e==`string`)}function Re(e){let t=JSON.parse(e);return Le(t)?t:null}var ze=500,Be=c({keyFn:e=>`vellum:dismissed-surfaces:${e}`,scope:`user`,parseValue:e=>Le(e)?e:null,fallback:{},maxEntries:200});function Ve(e,t){let n=Be.get(e,t);return n?new Set(n):new Set}function He(e,t,n){let r=Array.from(n);r.length>ze&&(r=r.slice(r.length-ze)),Be.set(e,t,r)}var Ue=[];function We(e,t){if(!e)return Ue;if(t.size===0)return e;let n=!1,r=e.map(e=>{let r=Ie(e,e=>!t.has(e.surfaceId));return r!==e&&(n=!0),r});return n?r:e}function Ge(e){if(!e||typeof e!=`object`)return!1;let t=e;return!(typeof t.tokens!=`number`||!Number.isFinite(t.tokens)||t.maxTokens!==null&&(typeof t.maxTokens!=`number`||!Number.isFinite(t.maxTokens))||t.fillRatio!==null&&(typeof t.fillRatio!=`number`||!Number.isFinite(t.fillRatio)))}var Ke=c({keyFn:e=>`vellum:ctxwindow:${e}`,scope:`user`,parseValue:e=>Ge(e)?e:null,fallback:{},maxEntries:200});function qe(e){return new Map(Object.entries(Ke.load(e)))}function Je(e,t,n){Ke.set(e,t,n)}var Ye=`PROVIDER_BILLING`,Xe=`PROVIDER_NOT_CONFIGURED`,Ze=`MANAGED_KEY_INVALID`,Qe=`credits_exhausted`,$e=`provider_billing`,et=`daily_limit_reached`;function tt(e){return e?e.category?e.category.endsWith(Qe):e.code===Ye:!1}function nt(e){return e?tt({code:e.code,category:e.errorCategory}):!1}function rt(e){return e?.errorCategory?e.errorCategory.endsWith($e):!1}function it(e){return e?.errorCategory?e.errorCategory.endsWith(et):!1}function at(e){return it(e)?`daily_limit`:nt(e)?`managed_credits`:rt(e)?`provider_billing`:null}function ot(e){let t=e.dailyLimitSnoozed!==!0;return e.billingBannerDecision===`daily_limit`&&t?`daily_limit`:e.billingBannerDecision===`provider_billing`?`provider_billing`:e.billingBannerDecision===`managed_credits`?null:e.dailyLimitReached===!0&&t?`daily_limit`:e.isLowBalance&&!e.dismissed?`low_balance`:null}function D(e){return at(e)!==null||e?.code===Xe||e?.displayAs===`modal`}function st(e){return!!e&&!D(e)}function ct(e){return e?.code===Ze}var lt={pendingSecret:null,isSubmittingSecret:!1,secretSaved:!1,pendingConfirmation:null,isSubmittingConfirmation:!1,pendingContactRequest:null,isSubmittingContactRequest:!1,contactRequestAccepted:!1,pendingQuestion:null,isSubmittingQuestion:!1,isQuestionCardDismissed:!1,inlineConfirmationToolCallId:null,pendingAcpConnect:null,dismissedAcpConnectToolUseIds:new Set,pendingAcpContinue:!1,unknownNudgeToolCallIds:new Set},O=o(a()((e,t)=>({...lt,showSecret:n=>{let{pendingSecret:r}=t();if(r&&r.requestId===n.requestId){let t={};for(let e of Object.keys(n))n[e]!==void 0&&(t[e]=n[e]);e({pendingSecret:{...r,...t}});return}e({pendingSecret:n,isSubmittingSecret:!1,secretSaved:!1})},submitSecretStart:()=>e({isSubmittingSecret:!0}),submitSecretEnd:t=>e({isSubmittingSecret:!1,secretSaved:t??!1}),dismissSecret:()=>e({pendingSecret:null,isSubmittingSecret:!1}),updateSecret:(n,r)=>{let{pendingSecret:i}=t();!i||i.requestId!==n||e({pendingSecret:{...i,...r}})},showConfirmation:t=>e({pendingConfirmation:t,isSubmittingConfirmation:!1}),submitConfirmationStart:()=>e({isSubmittingConfirmation:!0}),submitConfirmationEnd:()=>e({isSubmittingConfirmation:!1}),dismissConfirmation:()=>e({pendingConfirmation:null,isSubmittingConfirmation:!1}),dismissConfirmationIfMatches:n=>{let{pendingConfirmation:r}=t();!r||r.requestId!==n||e({pendingConfirmation:null,isSubmittingConfirmation:!1})},updateConfirmation:(n,r)=>{let{pendingConfirmation:i}=t();!i||i.requestId!==n||e({pendingConfirmation:{...i,...r}})},setInlineConfirmationToolCallId:t=>e({inlineConfirmationToolCallId:t}),showContactRequest:t=>e({pendingContactRequest:t,isSubmittingContactRequest:!1,contactRequestAccepted:!1}),submitContactRequestStart:()=>e({isSubmittingContactRequest:!0}),submitContactRequestEnd:()=>e({isSubmittingContactRequest:!1}),dismissContactRequest:()=>e({pendingContactRequest:null,isSubmittingContactRequest:!1}),acceptContactRequest:()=>e({contactRequestAccepted:!0}),showQuestion:t=>e({pendingQuestion:t,isSubmittingQuestion:!1,isQuestionCardDismissed:!1}),submitQuestionStart:()=>e({isSubmittingQuestion:!0}),submitQuestionEnd:()=>e({isSubmittingQuestion:!1}),dismissQuestion:()=>e({pendingQuestion:null,isSubmittingQuestion:!1,isQuestionCardDismissed:!1}),dismissQuestionIfMatches:n=>{let{pendingQuestion:r}=t();!r||r.requestId!==n||e({pendingQuestion:null,isSubmittingQuestion:!1,isQuestionCardDismissed:!1})},dismissQuestionCard:()=>e({isQuestionCardDismissed:!0}),resetSecretAndConfirmation:()=>e({pendingSecret:null,isSubmittingSecret:!1,secretSaved:!1,pendingConfirmation:null,isSubmittingConfirmation:!1,inlineConfirmationToolCallId:null}),showAcpConnect:t=>e(e=>e.dismissedAcpConnectToolUseIds.has(t.toolUseId)?{}:{pendingAcpConnect:t}),dismissAcpConnect:()=>e(e=>({pendingAcpConnect:null,dismissedAcpConnectToolUseIds:e.pendingAcpConnect?new Set(e.dismissedAcpConnectToolUseIds).add(e.pendingAcpConnect.toolUseId):e.dismissedAcpConnectToolUseIds})),requestAcpContinue:()=>e({pendingAcpContinue:!0}),clearAcpContinue:()=>e({pendingAcpContinue:!1}),addUnknownNudgeToolCallId:n=>{let r=t().unknownNudgeToolCallIds;r.has(n)||e({unknownNudgeToolCallIds:new Set([...r,n])})},removeUnknownNudgeToolCallId:n=>{let r=t().unknownNudgeToolCallIds;if(!r.has(n))return;let i=new Set(r);i.delete(n),e({unknownNudgeToolCallIds:i})},resetAll:()=>e(e=>({...lt,pendingAcpConnect:e.pendingAcpConnect}))}))),ut=3670016,dt=[.85,.75,.65,.5],ft=2e7,pt=new Set([`image/jpeg`,`image/jpg`,`image/png`,`image/webp`,`image/heic`,`image/heif`,`image/bmp`,`image/tiff`]),mt=new Set([`jpg`,`jpeg`,`png`,`webp`,`heic`,`heif`,`bmp`,`tif`,`tiff`]);function k(e){let t=e.type.trim().toLowerCase();if(pt.has(t))return!0;let n=e.name.split(`.`).pop()?.trim().toLowerCase();return n?mt.has(n):!1}function ht(e){return k(e)&&e.size>3670016}function gt(e){let t=e.type.trim().toLowerCase();if(t===`image/heic`||t===`image/heif`)return!0;let n=e.name.split(`.`).pop()?.trim().toLowerCase();return n===`heic`||n===`heif`}function _t(e){return ht(e)||gt(e)}function vt(e){if(/^image\/jpe?g$/i.test(e))return`jpg`;let t=e.slice(6).toLowerCase();return/^[a-z0-9]+$/.test(t)?t:`jpg`}function yt(e,t=`image/jpeg`){let n=`attachment`,r=e.trim()||n,i=vt(t),a=r.match(/\.([^./\\]+)$/)?.[1]?.toLowerCase();return a===i||i===`jpg`&&a===`jpeg`?r:`${r.replace(/\.[^./\\]+$/,``)||n}.${i}`}async function bt(e){if(!_t(e)||await St(e))return{status:`unchanged`,file:e};if(e.size>104857600)return{status:`failed`,error:`This image is too large to process safely. Please choose a smaller image.`};let t;try{t=await xt(e)}catch{return{status:`failed`,error:`Couldn't resize this image for upload. Try a smaller image.`}}try{let n;try{n=await wt(t,e.size)}catch{n=null}if(!n||!gt(e)&&n.size>=e.size)return{status:`failed`,error:`Couldn't resize this image for upload. Try a smaller image.`};let r=n.type.startsWith(`image/`)?n.type:`image/jpeg`;return{status:`resized`,file:new File([n],yt(e.name,r),{type:r,lastModified:e.lastModified})}}finally{t.close()}}async function xt(e){if(typeof createImageBitmap==`function`)try{let t=await createImageBitmap(e,{imageOrientation:`from-image`});return{source:t,width:t.width,height:t.height,close:()=>t.close()}}catch{}if(typeof Image>`u`)throw Error(`No browser image decoder is available.`);let t=URL.createObjectURL(e);return await new Promise((e,n)=>{let r=new Image;r.onload=()=>{e({source:r,width:r.naturalWidth||r.width,height:r.naturalHeight||r.height,close:()=>URL.revokeObjectURL(t)})},r.onerror=()=>{URL.revokeObjectURL(t),n(Error(`Image decode failed.`))},r.src=t})}async function St(e){if(!Ct(e))return!1;let t;try{t=new Uint8Array(await e.slice(0,Math.min(e.size,1024*1024)).arrayBuffer())}catch{return!0}if(!j(t,0,`RIFF`)||!j(t,8,`WEBP`))return!1;let n=A(t,`VP8X`);return n>=0&&(t[n+8]??0)&2?!0:A(t,`ANIM`)>=0||A(t,`ANMF`)>=0}function Ct(e){return e.type.trim().toLowerCase()===`image/webp`||/\.webp$/i.test(e.name)}function A(e,t){for(let n=0;n<=e.length-t.length;n+=1)if(j(e,n,t))return n;return-1}function j(e,t,n){if(t+n.length>e.length)return!1;for(let r=0;r<n.length;r+=1)if(e[t+r]!==n.charCodeAt(r))return!1;return!0}async function wt(e,t){let n=e.width*e.height,r=null;if(n<=ft)for(let t of dt){let n=await Tt(e.source,e.width,e.height,t);if(r=M(r,n),n&&n.size<=3670016)return n}let i=r?.size??t,a=Math.min(Math.sqrt(ut/i*.9),.95);for(let t=0;t<4;t+=1){let t=Math.max(Math.floor(e.width*a),1),n=Math.max(Math.floor(e.height*a),1),o=null;for(let i of dt){let a=await Tt(e.source,t,n,i);if(r=M(r,a),o=M(o,a),a&&a.size<=3670016)return a}i=o?.size??i,a*=Math.min(Math.sqrt(ut/i*.9),.9)}return null}function M(e,t){return t&&(!e||t.size<e.size)?t:e}async function Tt(e,t,n,r){if(typeof document>`u`)return null;let i=document.createElement(`canvas`);i.width=t,i.height=n;let a=i.getContext(`2d`);if(!a||typeof i.toBlob!=`function`)return null;a.fillStyle=`#fff`,a.fillRect(0,0,t,n),a.drawImage(e,0,0,t,n);try{return await new Promise(e=>{i.toBlob(t=>e(t),`image/jpeg`,r)})}finally{i.width=0,i.height=0}}var Et=`vellum:chatDrafts:`;function Dt(e){return`${Et}${e}`}function Ot(e){let n=t(Dt(e),``);if(!n)return new Map;try{let e=JSON.parse(n);return typeof e!=`object`||!e||Array.isArray(e)?new Map:new Map(Object.entries(e).filter(e=>typeof e[1]==`string`))}catch{return new Map}}function N(e,t){n(Dt(e),JSON.stringify(Object.fromEntries(t)))}function kt(){return`att-${Date.now().toString(36)}-${Math.random().toString(36).slice(2,8)}`}function At(e){return k(e)?`100 MB`:`50 MB`}function jt(e){return e.size<=52428800?!0:k(e)&&e.size<=104857600}function Mt(e){let t=e.replace(/[/\\]+$/,``),n=Math.max(t.lastIndexOf(`/`),t.lastIndexOf(`\\`));return n===-1?t:t.slice(n+1)}var P=new Map,F=null,I=new Map,L=new Set,Nt=a()((e,t)=>({input:``,restoredDraftConversationId:null,attachments:[],attachmentLastError:null,setInput:t=>{e(e=>({input:typeof t==`function`?t(e.input):t}))},saveDraft:(e,t)=>{t.trim()?P.set(e,t):P.delete(e),F&&N(F,P)},clearDraft:e=>{P.delete(e),F&&N(F,P)},handleConversationSwitch:({previousKey:n,nextKey:r})=>{if(!(n!==null&&n!==r)||!n)return;let i=t().input;i.trim()?P.set(n,i):P.delete(n);let a=(r&&P.get(r))??``;e({input:a,restoredDraftConversationId:a.length>0&&r?r:null}),F&&N(F,P)},loadAssistantDrafts:(n,r)=>{if(F&&F!==n){let n=t().input;r&&(n.trim()?P.set(r,n):P.delete(r)),N(F,P),e({input:``,restoredDraftConversationId:null})}P=Ot(n),F=n},clearRestoredDraftNotice:()=>{e({restoredDraftConversationId:null})},restoreDraftIfEmpty:n=>{let r=P.get(n);r&&r.trim()&&!t().input.trim()&&e({input:r,restoredDraftConversationId:n})},addFiles:(t,n)=>{let r=Array.from(t);if(r.length===0)return;if(!n){e({attachmentLastError:`No active assistant. Please try again.`});return}let a=[],o=[];for(let e of r)jt(e)?o.push(e):a.push(e);let s=a[0];if(e(s?{attachmentLastError:a.length===1?`${s.name} is larger than ${At(s)} and can't be attached.`:`${a.length} files are too large and can't be attached.`}:{attachmentLastError:null}),o.length===0)return;let c=o.map(e=>({pending:{kind:`uploading`,localId:kt(),filename:e.name||`attachment`,mimeType:e.type||`application/octet-stream`,sizeBytes:e.size},file:e}));e(e=>({attachments:[...e.attachments,...c.map(e=>e.pending)]}));for(let{pending:t,file:r}of c)(async()=>{try{let a=await bt(r);if(L.has(t.localId)){L.delete(t.localId);return}if(a.status===`failed`&&r.size>52428800){R(e,t.localId,a.error);return}let o=a.status===`failed`?r:a.file;if(o.size>52428800){R(e,t.localId,`This attachment is still larger than 50 MB after resizing. Try a smaller image.`);return}a.status===`resized`&&e(e=>({attachments:e.attachments.map(e=>e.localId===t.localId&&e.kind===`uploading`?{...e,filename:o.name||`attachment`,mimeType:o.type||`application/octet-stream`,sizeBytes:o.size}:e)}));let s=await te(n,o);if(L.has(t.localId)){L.delete(t.localId);return}if(!s.ok){R(e,t.localId,s.error.detail??`Upload failed`);return}let c=o.type||`application/octet-stream`,l=s.filename??(o.name||`attachment`),u=s.mimeType??c,ee=s.sizeBytes??o.size,d=o;if(u.startsWith(`image/`)&&u!==c){let e=await i(n,s.id);if(L.has(t.localId)){L.delete(t.localId);return}e&&(d=e)}let f=null;try{f=URL.createObjectURL(d),I.set(t.localId,f)}catch{f=null}e(e=>({attachments:e.attachments.map(e=>e.localId===t.localId?{kind:`uploaded`,localId:t.localId,id:s.id,filename:l,mimeType:u,sizeBytes:ee,previewUrl:f,thumbnailUrl:null}:e)}))}catch{if(L.has(t.localId)){L.delete(t.localId);return}R(e,t.localId,`Upload failed`)}})()},addPathReferences:t=>{let n=[];for(let e of t){let t=e.trim();t&&n.push({kind:`path-reference`,localId:kt(),path:t,filename:Mt(t)||t})}n.length!==0&&e(e=>({attachments:[...e.attachments,...n],attachmentLastError:null}))},removeAttachment:t=>{e(e=>{let n=e.attachments.find(e=>e.localId===t);return n&&n.kind===`uploading`&&L.add(t),{attachments:e.attachments.filter(e=>e.localId!==t)}}),Pt(t)},resetAttachments:()=>{e(e=>{for(let t of e.attachments)t.kind===`uploading`&&L.add(t.localId);return{attachments:[],attachmentLastError:null}})},fullReset:()=>{e(e=>{for(let t of e.attachments)t.kind===`uploading`&&L.add(t.localId);return{attachments:[],attachmentLastError:null}}),I.forEach(e=>URL.revokeObjectURL(e)),I.clear()},dismissAttachmentError:()=>{e({attachmentLastError:null})}}));function R(e,t,n){e(e=>({attachments:e.attachments.map(e=>e.localId!==t||e.kind!==`uploading`?e:{kind:`failed`,localId:t,filename:e.filename,mimeType:e.mimeType,sizeBytes:e.sizeBytes,error:n})}))}function Pt(e){let t=I.get(e);t&&(URL.revokeObjectURL(t),I.delete(e))}function Ft(e){return e.reduce((e,t)=>t.kind===`uploading`?e+1:e,0)}function It(e){return e.filter(e=>e.kind===`uploaded`).map(e=>e.id)}function Lt(e){return e.filter(e=>e.kind===`path-reference`).map(e=>e.path)}var z=o(Nt);function Rt(e){if(!(!e||e.length===0))return e.map(e=>{let{previewUrl:t,thumbnailUrl:n}=d(e.mimeType,e.data,e.thumbnailData,e.id!=null);return{id:e.id??e.filename,filename:e.filename,mimeType:e.mimeType,sizeBytes:e.sizeBytes??(e.data?Math.floor(e.data.length*3/4):0),previewUrl:t,thumbnailUrl:n}})}function B(e){let t=e[e.length-1];return!!t&&t.role===`assistant`}function zt(e,t){if(!t)return null;let n=e.length-1;for(;n>=0&&e[n].role===`user`&&e[n].queueStatus===`queued`;)n--;let r=e[n];return!r||r.role!==`assistant`?null:r.id}function V(e,t){return e.findIndex(e=>e.role===`assistant`&&(e.id===t||!!e.mergedMessageIds?.includes(t)))}function H(e,t){if(t){let n=V(e,t);if(n!==-1)return n}let n=e.findLastIndex(e=>e.role===`user`&&e.queueStatus!==`queued`)+1;for(let t=e.length-1;t>=n;t--)if(e[t]?.role===`assistant`)return t;return-1}function U(e,t){if(!t||e.id===t)return e;let n=e.mergedMessageIds??[];return n.includes(t)?e:{...e,mergedMessageIds:[...n,t]}}function W(e,t=Date.now()){if(!e.toolCalls?.some(e=>p(e)))return null;let n=t;return{toolCalls:e.toolCalls.map(e=>p(e)?{...e,completedAt:n}:e),contentBlocks:e.contentBlocks?.map(e=>e.type===`tool_use`&&p(e.toolCall)?{type:`tool_use`,toolCall:{...e.toolCall,completedAt:n}}:e)}}function Bt(e,t,n){return e.map(e=>e.id===t?{...e,queuePosition:n}:e)}function Vt(e,t){return e.map(e=>T(e,t)?{...e,queueStatus:void 0,queuePosition:void 0}:e)}function Ht(e,t){return e.map(e=>T(e,t)?{...e,...e.clientMessageId?{}:{isOptimistic:!0},queueStatus:void 0,queuePosition:void 0}:e)}function Ut(e,t,n){return e.map(e=>T(e,t)?{...e,queueStatus:`queued`,queuePosition:n}:e)}function Wt(e,t){return e.filter(e=>!T(e,t))}function Gt(e,t,n,r=Date.now()){return[...e,{id:n??crypto.randomUUID(),...n?{}:{isOptimistic:!0},role:`assistant`,textSegments:[t],contentOrder:[{type:`text`,id:`0`}],contentBlocks:[{type:`text`,text:t}],timestamp:r}]}function Kt(e,t,n){n&&e[e.length-1]?.type===t.type?e[e.length-1]=t:e.push(t)}function G(e,t,n,r){let i=U(e[t],r),a=[...i.textSegments??[]],o=[...i.contentOrder??[]],s=[...i.contentBlocks??[]],c=o[o.length-1]?.type===`text`&&a.length>0;c?a[a.length-1]=a[a.length-1]+n:(o.push({type:`text`,id:String(a.length)}),a.push(n)),Kt(s,{type:`text`,text:a[a.length-1]},c);let l=[...e];return l[t]={...i,textSegments:a,contentOrder:o,contentBlocks:s},l}function K(e,t,n,r){let i=U(e[t],r),a=[...i.thinkingSegments??[]],o=[...i.contentOrder??[]],s=[...i.contentBlocks??[]],c=o[o.length-1]?.type===`thinking`&&a.length>0;c?a[a.length-1]=a[a.length-1]+n:(o.push({type:`thinking`,id:String(a.length)}),a.push(n)),Kt(s,{type:`thinking`,thinking:a[a.length-1]},c);let l=[...e];return l[t]={...i,thinkingSegments:a,contentOrder:o,contentBlocks:s},l}function qt(e,t,n,r,i=Date.now()){if(n){let a=V(e,n);if(a>=0)return G(e,a,t,n);if(B(e))return G(e,e.length-1,t,n);let o=r?.();return o?G([...e,o],e.length,t,n):Gt(e,t,n,i)}return B(e)?G(e,e.length-1,t,void 0):Gt(e,t,n,i)}function Jt(e,t,n,r=Date.now()){return[...e,{id:n??crypto.randomUUID(),...n?{}:{isOptimistic:!0},role:`assistant`,thinkingSegments:[t],contentOrder:[{type:`thinking`,id:`0`}],contentBlocks:[{type:`thinking`,thinking:t}],timestamp:r}]}function Yt(e,t,n,r,i=Date.now()){if(n){let a=V(e,n);if(a>=0)return K(e,a,t,n);if(B(e))return K(e,e.length-1,t,n);let o=r?.();return o?K([...e,o],e.length,t,n):Jt(e,t,n,i)}return B(e)?K(e,e.length-1,t,void 0):Jt(e,t,n,i)}function Xt(e,t=Date.now()){let n=!1,r=e.map(e=>{if(e.role!==`assistant`)return e;let r=W(e,t);return r?(n=!0,{...e,...r}):e});return n?r:e}function Zt(e,t,n=Date.now()){let r=e[e.length-1],i=Rt(t.attachments);if(r?.role!==`assistant`)return i?[...e,{id:t.messageId??crypto.randomUUID(),...t.messageId?{}:{isOptimistic:!0},role:`assistant`,timestamp:n,attachments:i}]:e;let a=W(r,n),o=r.isOptimistic===!0&&!!t.messageId;return[...e.slice(0,-1),{...r,...o?{id:t.messageId,isOptimistic:!1}:{},...i?{attachments:i}:{},...a??{}}]}function Qt(e,t){if(t!==void 0)return e.findIndex(e=>e.role===`user`&&e.clientMessageId===t);let n=-1;for(let t=e.length-1;t>=0;t--){let r=e[t];if(r&&r.role===`user`&&r.isOptimistic===!0){if(!r.clientMessageId)return t;n===-1&&(n=t)}}return n}function $t(e,t,n=Date.now()){let r=t.messageId;if(r!==void 0&&e.some(e=>e.role===`user`&&(e.id===r||e.mergedMessageIds?.includes(r))))return e;let i=Qt(e,t.clientMessageId);if(i!==-1){if(r===void 0)return e;let t=[...e];return t[i]={...t[i],id:r,isOptimistic:!1,queueStatus:void 0,queuePosition:void 0},t}return[...e,{id:r??crypto.randomUUID(),...r===void 0?{isOptimistic:!0}:{},...t.clientMessageId?{clientMessageId:t.clientMessageId}:{},role:`user`,textSegments:[t.text],contentOrder:[{type:`text`,id:`0`}],contentBlocks:[{type:`text`,text:t.text}],timestamp:n}]}function en(e,t=Date.now()){let n=e.length-1,r=e[n];if(!r||r.role!==`assistant`)return e;let i=W(r,t);if(!(je(r).trim().length>0||r.thinkingSegments!=null&&r.thinkingSegments.length>0||r.toolCalls!=null&&r.toolCalls.length>0||r.surfaces!=null&&r.surfaces.length>0))return e.slice(0,-1);let a=[...e];return a[n]={...r,...i??{}},a}function q(e,t){let n=[...e??[]],r=n.findIndex(e=>e.type===`tool_use`&&e.toolCall.id===t.id);return r===-1?n.push({type:`tool_use`,toolCall:t}):n[r]={type:`tool_use`,toolCall:t},n}function J(e,t,n,r){let i=U(e[t],r),a=i.toolCalls?.findIndex(e=>e.id===n.id)??-1,o=[...e];if(a!==-1){let e=[...i.toolCalls??[]],r={...e[a],...n};return e[a]=r,o[t]={...i,toolCalls:e,contentBlocks:q(i.contentBlocks,r)},o}return o[t]={...i,toolCalls:[...i.toolCalls??[],n],contentOrder:[...i.contentOrder??[],{type:`toolCall`,id:n.id}],contentBlocks:q(i.contentBlocks,n)},o}function tn(e,t,n,r=Date.now()){if(n){let r=V(e,n);if(r>=0)return J(e,r,t,n);if(B(e))return J(e,e.length-1,t,n)}else if(B(e))return J(e,e.length-1,t);return[...e,{id:n??crypto.randomUUID(),...n?{}:{isOptimistic:!0},role:`assistant`,toolCalls:[t],contentOrder:[{type:`toolCall`,id:t.id}],contentBlocks:[{type:`tool_use`,toolCall:t}],timestamp:r}]}function nn(e,t){let n=-1,r=-1;if(t.toolUseId)for(let i=e.length-1;i>=0;i--){let a=e[i];if(a?.role!==`assistant`||!a.toolCalls?.length)continue;let o=a.toolCalls.findIndex(e=>e.id===t.toolUseId);if(o!==-1){n=i,r=o;break}}if(n===-1){if(n=e.findLastIndex(e=>e.role===`assistant`&&e.toolCalls&&e.toolCalls.length>0),n===-1)return e;let t=e[n];if(!t?.toolCalls)return e;r=t.toolCalls.findLastIndex(e=>p(e))}if(r===-1)return e;let i=e[n],a=i.toolCalls[r];if(!a)return e;let o=t.imageDataList===void 0?t.imageData===void 0?void 0:[t.imageData]:t.imageDataList,s=t.imageData===void 0?o?.[0]:t.imageData,c=[...i.toolCalls],l={...a,result:t.result,isError:t.isError,riskLevel:t.riskLevel,riskReason:t.riskReason,matchedTrustRuleId:t.matchedTrustRuleId,approvalMode:t.approvalMode,approvalReason:t.approvalReason,riskThreshold:t.riskThreshold,riskAllowlistOptions:t.riskAllowlistOptions,riskScopeOptions:t.riskScopeOptions,riskDirectoryScopeOptions:t.riskDirectoryScopeOptions,...s===void 0?{}:{imageData:s},...o===void 0?{}:{imageDataList:o},...t.activityMetadata===void 0?{}:{activityMetadata:t.activityMetadata},...t.answeredQuestion===void 0?{}:{answeredQuestion:t.answeredQuestion},...t.errorCode===void 0?{}:{errorCode:t.errorCode},completedAt:t.completedAt??Date.now(),streamedOutput:void 0};c[r]=l;let u=[...e];return u[n]={...i,toolCalls:c,contentBlocks:q(i.contentBlocks,l)},u}var rn=16384;function an(e){return e.length<=16384?e:e.slice(e.length-rn)}function on(e,t){if(!t.chunk)return e;let n=-1,r=-1;if(t.toolUseId){if(t.messageId){let i=V(e,t.messageId);if(i>=0){let a=e[i].toolCalls?.findIndex(e=>e.id===t.toolUseId)??-1;a!==-1&&(n=i,r=a)}}if(n===-1)for(let i=e.length-1;i>=0;i--){let a=e[i];if(a?.role!==`assistant`||!a.toolCalls?.length)continue;let o=a.toolCalls.findIndex(e=>e.id===t.toolUseId);if(o!==-1){n=i,r=o;break}}}else{if(n=e.findLastIndex(e=>e.role===`assistant`&&e.toolCalls&&e.toolCalls.length>0),n===-1)return e;let t=e[n];if(!t?.toolCalls)return e;r=t.toolCalls.findLastIndex(e=>p(e))}if(n===-1||r===-1)return e;let i=e[n],a=i.toolCalls[r];if(!a)return e;let o={...a,streamedOutput:an((a.streamedOutput??``)+t.chunk)},s=[...i.toolCalls];s[r]=o;let c=[...e];return c[n]={...i,toolCalls:s,contentBlocks:q(i.contentBlocks,o)},c}function sn(e,t,n,r=Date.now()){let i=H(e,n),a=[...e];if(i===-1)a.push({id:n??crypto.randomUUID(),...n?{}:{isOptimistic:!0},role:`assistant`,surfaces:[t],contentOrder:[{type:`surface`,id:t.surfaceId}],contentBlocks:[{type:`surface`,surface:t}],timestamp:r});else{let r=U(e[i],n);if(r.contentOrder?.some(e=>e.type===`surface`&&e.id===t.surfaceId)||r.surfaces?.some(e=>e.surfaceId===t.surfaceId))return e;a[i]={...r,surfaces:[...r.surfaces??[],t],contentOrder:[...r.contentOrder??[],{type:`surface`,id:t.surfaceId}],contentBlocks:E(r.contentBlocks,t)}}return a}function cn(e,t,n){let r=H(e,n);if(r===-1)return e;let i=e[r];if(i.pendingVisualToolUseIds?.includes(t))return e;let a=[...e];return a[r]={...U(i,n),pendingVisualToolUseIds:[...i.pendingVisualToolUseIds??[],t]},a}function Y(e,t={}){let n=t.toolUseId===void 0&&t.messageId!==void 0?H(e,t.messageId):void 0,r=!1,i=e.map((e,i)=>{let a=e.pendingVisualToolUseIds;if(!a||a.length===0||n!==void 0&&i!==n)return e;let o=t.toolUseId===void 0?[]:a.filter(e=>e!==t.toolUseId);if(o.length===a.length)return e;r=!0;let s={...e};return o.length===0?delete s.pendingVisualToolUseIds:s.pendingVisualToolUseIds=o,s});return r?i:e}function ln(e,t,n){for(let r=e.length-1;r>=0;r--){let i=e[r],a=i.surfaces?.findIndex(e=>e.surfaceId===t)??-1;if(a===-1)continue;let o=i.surfaces[a],s={...o.data,...n};o.data.templateData&&n.templateData&&typeof o.data.templateData==`object`&&typeof n.templateData==`object`&&(s.templateData={...o.data.templateData,...n.templateData});let c={...o,data:s},l=[...e],u=[...i.surfaces];return u[a]=c,l[r]={...i,surfaces:u,contentBlocks:E(i.contentBlocks,c)},l}return e}function un(e,t){for(let n=e.length-1;n>=0;n--){if(!e[n].surfaces?.some(e=>e.surfaceId===t))continue;let r=[...e];return r[n]={...e[n],surfaces:e[n].surfaces?.filter(e=>e.surfaceId!==t),contentOrder:e[n].contentOrder?.filter(e=>!(e.type===`surface`&&e.id===t)),contentBlocks:Pe(e[n].contentBlocks,t)},r}return e}function dn(e,t,n){for(let r=e.length-1;r>=0;r--){let i=e[r].surfaces?.find(e=>e.surfaceId===t);if(!i)continue;let a={...i,completed:!0,completionSummary:n},o=[...e];return o[r]={...e[r],surfaces:e[r].surfaces?.map(e=>e.surfaceId===t?a:e),contentBlocks:E(e[r].contentBlocks,a)},o}return e}var fn=[`choice`,`oauth_connect`,`form`,`confirmation`,`file_upload`,`card`,`list`,`table`,`browser_view`,`task_preferences`];function pn(e){return e==null||e.hasPendingConfirmation||e.hasUncompletedVisibleSurface}function mn(e,t){let n=!1,r=e.map(e=>{let r=ae(e,e=>e.pendingConfirmation?.requestId===t?{...e,pendingConfirmation:void 0}:e);return r!==e&&(n=!0),r});return n?r:e}function hn(e){let t=!1,n=e.map(e=>{let n=ae(e,e=>e.pendingConfirmation?{...e,pendingConfirmation:void 0}:e);return n!==e&&(t=!0),n});return t?n:e}function gn(e,t){let n=new Set;for(let e of t)if(e.surfaces)for(let t of e.surfaces)ie(t)&&n.add(t.surfaceId);return n.size===0?{updatedMessages:e,dismissedIds:n}:{updatedMessages:e.map(e=>Ie(e,e=>!n.has(e.surfaceId))),dismissedIds:n}}function _n(e,t,n,r,i){for(let a=e.length-1;a>=0;a--){let o=e[a].surfaces?.find(e=>e.surfaceId===t);if(!o)continue;if(!fn.includes(o.surfaceType)||o.completed)return e;let s=o.actions?.find(e=>e.id===n),c=n===`cancel`||n===`dismiss`,l=[...e];return l[a]=Fe(e[a],e=>e.surfaceId===t?{...e,completed:!0,completionSummary:c?`Cancelled`:r??s?.label??void 0,...i?.tone?{completionTone:i.tone}:{}}:e),l}return e}function vn(e,t,n){return e&&re[e]||t||n}function X(e){return typeof e==`string`?e:void 0}function yn(e){return typeof e==`boolean`?e:void 0}function bn(e){return Array.isArray(e)?e:void 0}function xn(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:void 0}function Z(e){return Array.isArray(e)?e:void 0}function Sn(e){return{requestId:typeof e.requestId==`string`?e.requestId:``,label:X(e.label),service:X(e.service),field:X(e.field),description:X(e.description),placeholder:X(e.placeholder),allowOneTimeSend:yn(e.allowOneTimeSend),allowedTools:bn(e.allowedTools),allowedDomains:bn(e.allowedDomains),purpose:X(e.purpose)}}function Cn(e){return{requestId:typeof e.requestId==`string`?e.requestId:``,title:X(e.title),description:X(e.description),toolName:X(e.toolName),riskLevel:X(e.riskLevel),riskReason:X(e.riskReason),allowlistOptions:Z(e.allowlistOptions),scopeOptions:Z(e.scopeOptions),directoryScopeOptions:Z(e.directoryScopeOptions),persistentDecisionsAllowed:yn(e.persistentDecisionsAllowed),input:xn(e.input),toolUseId:X(e.toolUseId)}}function wn(){return`turn-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}function Tn(e,t){let n=Date.parse(e);return Number.isFinite(n)?n:typeof t==`number`?t:0}function En(e,t,n){switch(t.type){case`assistant_text_delta`:return qt(e,t.text,t.messageId,void 0,n);case`assistant_thinking_delta`:return Yt(e,t.thinking,t.messageId,void 0,n);case`message_complete`:return Y(Zt(e,t,n));case`user_message_echo`:return $t(e,{text:t.text,messageId:t.messageId,clientMessageId:t.clientMessageId},n);case`message_dequeued`:return Ht(e,t.requestId);case`message_requeued`:return Ut(e,t.requestId,t.position);case`message_queued_deleted`:return Wt(e,t.requestId);case`assistant_activity_state`:return t.phase===`idle`?Y(Xt(e,n)):e;case`conversation_error`:return Y(en(e,n));case`tool_use_preview_start`:return tn(e,{id:t.toolUseId,name:t.toolName,input:{},previewStartedAt:typeof t.previewStartedAt==`number`?t.previewStartedAt:n},t.messageId,n);case`tool_use_start`:return tn(e,{id:t.toolUseId??`tool-${n}`,name:t.toolName,input:t.input,startedAt:`startedAt`in t&&typeof t.startedAt==`number`?t.startedAt:n,...`previewStartedAt`in t&&typeof t.previewStartedAt==`number`?{previewStartedAt:t.previewStartedAt}:{}},t.messageId,n);case`tool_result`:return nn(Y(e,{toolUseId:t.toolUseId}),{toolUseId:t.toolUseId,result:t.result,isError:t.isError,riskLevel:t.riskLevel,riskReason:t.riskReason,matchedTrustRuleId:t.matchedTrustRuleId,approvalMode:t.approvalMode,approvalReason:t.approvalReason,riskThreshold:t.riskThreshold,riskAllowlistOptions:t.riskAllowlistOptions,riskScopeOptions:t.riskScopeOptions,riskDirectoryScopeOptions:t.riskDirectoryScopeOptions,imageData:t.imageData,imageDataList:t.imageDataList,activityMetadata:t.activityMetadata,answeredQuestion:t.answeredQuestion,errorCode:t.errorCode,completedAt:`completedAt`in t&&typeof t.completedAt==`number`?t.completedAt:n});case`tool_output_chunk`:return t.chunk?on(e,{chunk:t.chunk,toolUseId:t.toolUseId,messageId:t.messageId}):e;case`ui_surface_pending`:return cn(e,t.toolUseId,t.messageId);case`ui_surface_show`:{let r={surfaceId:t.surfaceId,surfaceType:t.surfaceType,title:t.title,data:t.data,actions:t.actions,display:t.display};return r.display=f(r),sn(r.surfaceType===`visual`?Y(e,t.toolCallId?{toolUseId:t.toolCallId}:{messageId:t.messageId}):e,r,t.messageId,n)}case`ui_surface_update`:return ln(e,t.surfaceId,t.data);case`ui_surface_dismiss`:return un(e,t.surfaceId);case`ui_surface_complete`:return dn(e,t.surfaceId,t.summary);case`confirmation_request`:return ne(e,{requestId:t.requestId,toolName:t.toolName,riskLevel:t.riskLevel,riskReason:t.riskReason,allowlistOptions:t.allowlistOptions,scopeOptions:t.scopeOptions,directoryScopeOptions:t.directoryScopeOptions,persistentDecisionsAllowed:t.persistentDecisionsAllowed,input:t.input,toolUseId:t.toolUseId}).updatedMessages;case`interaction_resolved`:return t.kind===`confirmation`||t.kind===`acp_confirmation`?mn(e,t.requestId):e;default:return e}}function Dn(e,t,n){if(e!==void 0){if(typeof n!=`number`)return e;switch(t.type){case`assistant_turn_start`:case`assistant_text_delta`:case`assistant_thinking_delta`:return!0;case`assistant_activity_state`:return t.phase!==`idle`;case`message_complete`:return!1;default:return e}}}function On(e,t){let{seq:n}=t;if(typeof n==`number`&&typeof e.seq==`number`&&n<=e.seq)return e;let r=Tn(t.emittedAt,n),i=En(e.messages,t.message,r),a=typeof n==`number`?Math.max(e.seq??-1,n):e.seq??null,o=Dn(e.processing,t.message,n);return{...e,messages:i,seq:a,processing:o}}function kn(e,t){return t.reduce(On,e)}function An(e,t){return t===null?e:kn(e,t)}var jn={hasMore:!1,oldestTimestamp:null,isLoadingOlder:!1};function Mn(){return{snapshot:null,optimisticSends:[],error:null,notice:null,isLoadingHistory:!0,transcriptPagination:{...jn},contextWindowUsage:null,ephemeralMetaResults:[],compactionCircuitOpenUntil:null,dismissedSurfaceIds:new Set,streamingMessageIds:new Set,pendingQueuedMessageIds:[],requestIdToMessageId:new Map,pendingLocalDeletions:new Set,confirmationToolCallMap:new Map,expandedToolCallIds:new Set,expandedCardIds:new Map,contextWindowUsageByConversation:new Map,previousConversationId:null,previousAssistantId:null,draftConversationIdResolution:!1}}function Q(e,t){return typeof t==`function`?t(e):t}function Nn(e,t){if(e.length===0)return e;let n=new Map;for(let e of t)for(let t of w(e))n.has(t)||n.set(t,e);let r=e.filter(e=>{let t;for(let r of w(e))if(t=n.get(r),t)break;return t?!!e.attachments?.length&&!t.attachments?.length:!0});return r.length===e.length?e:r}var $=o(a()((e,t)=>({...Mn(),seedSnapshot:(n,r)=>{let i=t().snapshot;if(r.seq==null&&i!==null&&typeof i.seq==`number`){u(`history_seed_skipped_anchorless`,{conversationId:n,liveSeq:i.seq});return}let a=ye(n,r.seq??null);if(a===null&&i!==null&&typeof i.seq==`number`&&typeof r.seq==`number`&&r.seq<i.seq){u(`history_seed_skipped_stale_anchor`,{conversationId:n,liveSeq:i.seq,fetchedSeq:r.seq});return}let o=An(r,a);e(e=>({snapshot:o,optimisticSends:Nn(e.optimisticSends,o.messages)}))},applyEnvelopeToSnapshot:t=>e(e=>e.snapshot?{snapshot:On(e.snapshot,t)}:{}),addOptimisticSend:t=>e(e=>({optimisticSends:[...e.optimisticSends,t]})),setOptimisticSends:t=>e(e=>({optimisticSends:Q(e.optimisticSends,t)})),patchSnapshotMessages:t=>e(e=>e.snapshot?{snapshot:{...e.snapshot,messages:t(e.snapshot.messages)}}:{}),setError:t=>e(e=>({error:Q(e.error,t)})),setNotice:t=>e(e=>({notice:Q(e.notice,t)})),setIsLoadingHistory:t=>e({isLoadingHistory:t}),setTranscriptPagination:t=>e(e=>({transcriptPagination:Q(e.transcriptPagination,t)})),setContextWindowUsage:t=>e(e=>({contextWindowUsage:Q(e.contextWindowUsage,t)})),setCompactionCircuitOpenUntil:t=>e(e=>({compactionCircuitOpenUntil:Q(e.compactionCircuitOpenUntil,t)})),switchToConversation:({assistantId:n,activeConversationId:r})=>{let i=t();if(i.draftConversationIdResolution){x(`draft_resolution`),e({draftConversationIdResolution:!1});return}let a=i.previousConversationId,o=!!(a&&a!==r);if(o&&a){let e=O.getState();(e.pendingSecret||e.pendingConfirmation)&&ee.getState().addAttentionConversationId(a)}let s=i.previousAssistantId!==null&&i.previousAssistantId!==n,c=s||i.previousAssistantId===null;u(`conversation_switch_reset`,{assistantId:n,conversationId:r,outgoingConversationId:a??null}),z.getState().handleConversationSwitch({previousKey:a??null,nextKey:r}),ke.getState().resetTurn(),O.getState().resetAll(),s?z.getState().fullReset():z.getState().resetAttachments();let l=c?qe(n):i.contextWindowUsageByConversation;o&&!s?Ce(r):x(`context_change`),e({snapshot:null,optimisticSends:[],ephemeralMetaResults:[],error:D(i.error)?i.error:null,notice:null,isLoadingHistory:!0,transcriptPagination:{...jn},contextWindowUsage:l.get(r)??null,compactionCircuitOpenUntil:null,dismissedSurfaceIds:Ve(n,r),streamingMessageIds:new Set,pendingQueuedMessageIds:[],requestIdToMessageId:new Map,pendingLocalDeletions:new Set,confirmationToolCallMap:new Map,expandedToolCallIds:new Set,expandedCardIds:new Map,contextWindowUsageByConversation:l,previousConversationId:r,previousAssistantId:n,draftConversationIdResolution:!1})},markDraftResolution:()=>e({draftConversationIdResolution:!0}),setConfirmationToolCall:(t,n)=>e(e=>{let r=new Map(e.confirmationToolCallMap);return r.set(t,n),{confirmationToolCallMap:r}}),deleteConfirmationToolCall:t=>e(e=>{let n=new Map(e.confirmationToolCallMap);return n.delete(t),{confirmationToolCallMap:n}}),clearConfirmationToolCallMap:()=>e({confirmationToolCallMap:new Map}),addDismissedSurfaceId:t=>e(e=>{let n=new Set(e.dismissedSurfaceIds);return n.add(t),{dismissedSurfaceIds:n}}),addDismissedSurfaceIds:t=>e(e=>{let n=new Set(e.dismissedSurfaceIds);for(let e of t)n.add(e);return{dismissedSurfaceIds:n}}),batchUpdateStreamingMessageIds:(t,n)=>e(e=>{let r=new Set(e.streamingMessageIds);for(let e of t)r.add(e);for(let e of n)r.delete(e);return{streamingMessageIds:r}}),pushPendingQueuedMessageId:t=>e(e=>({pendingQueuedMessageIds:[...e.pendingQueuedMessageIds,t]})),shiftPendingQueuedMessageId:()=>{let n=t().pendingQueuedMessageIds;if(n.length===0)return;let[r,...i]=n;return e({pendingQueuedMessageIds:i}),r},takePendingQueuedMessageId:n=>{let r=t().pendingQueuedMessageIds;if(r.includes(n))return e({pendingQueuedMessageIds:r.filter(e=>e!==n)}),n},setRequestIdMapping:(t,n)=>e(e=>{let r=new Map(e.requestIdToMessageId);return r.set(t,n),{requestIdToMessageId:r}}),popRequestIdMapping:n=>{let r=t().requestIdToMessageId,i=r.get(n);if(i!==void 0){let t=new Map(r);t.delete(n),e({requestIdToMessageId:t})}return i},addPendingLocalDeletion:t=>e(e=>{let n=new Set(e.pendingLocalDeletions);return n.add(t),{pendingLocalDeletions:n}}),consumePendingLocalDeletion:n=>{let r=t().pendingLocalDeletions;if(!r.has(n))return!1;let i=new Set(r);return i.delete(n),e({pendingLocalDeletions:i}),!0},setExpandedToolCallId:(t,n)=>e(e=>{let r=new Set(e.expandedToolCallIds);return n?r.add(t):r.delete(t),{expandedToolCallIds:r}}),setExpandedCardId:(t,n)=>e(e=>{let r=new Map(e.expandedCardIds);return r.set(t,n),{expandedCardIds:r}}),setContextWindowUsageForConversation:(t,n)=>e(e=>{let r=new Map(e.contextWindowUsageByConversation);return r.set(t,n),{contextWindowUsageByConversation:r}}),addEphemeralMetaResult:t=>e(e=>({ephemeralMetaResults:[...e.ephemeralMetaResults,t]})),clearEphemeralMetaResults:()=>e(e=>e.ephemeralMetaResults.length===0?e:{ephemeralMetaResults:[]})})));function Pn(){let e=$.use.snapshot()?.messages,t=$.use.optimisticSends(),n=$.use.dismissedSurfaceIds();return(0,m.useMemo)(()=>Ne(We(e,n),t),[e,t,n])}export{D as A,De as B,bt as C,ct as D,tt as E,Ne as F,be as G,ke as H,Me as I,ge as J,_e as K,w as L,He as M,Re as N,ot as O,Fe as P,le as Q,T as R,z as S,at as T,Ee as U,Oe as V,Te as W,me as X,ue as Y,de as Z,Bt as _,_n as a,It as b,Cn as c,pn as d,Ht as f,Wt as g,Ut as h,hn as i,Je as j,st as k,Sn as l,zt as m,$ as n,gn as o,Vt as p,ve as q,mn as r,wn as s,Pn as t,vn as u,B as v,O as w,Ft as x,Lt as y,je as z};
|
package/dist/assets/{use-voice-sample-preview-BHCiYpHq.js → use-voice-sample-preview-CZoWWEeH.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./useQuery-CTSuec5b.js";import{n as r}from"./toast-DqqWkjsh.js";import{r as i}from"./use-is-org-ready-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./useQuery-CTSuec5b.js";import{n as r}from"./toast-DqqWkjsh.js";import{r as i}from"./use-is-org-ready-GDBxqujc.js";import{Kt as a}from"./react-query.gen-Bbh5MII3.js";import{L as o}from"./react-query.gen-CwRPAiHT.js";function s(e,t){return{voices:e?.voices??[],defaultModel:e?.defaultModel??null,fetched:!!e,loading:t}}function c(e,t={}){let r=i(),{data:o,isLoading:c}=n({...a({path:{assistant_id:e??``}}),enabled:r&&!!e&&(t.enabled??!0),staleTime:6e4,retry:!1});return s(o,c)}function l(e={}){let t=i(),{data:r,isLoading:a}=n({...o(),enabled:t&&(e.enabled??!0),staleTime:6e4,retry:!1});return s(r,a)}var u=e(t(),1);function d(){let[e,t]=(0,u.useState)(null),n=(0,u.useRef)(null),i=(0,u.useRef)(0),a=()=>{i.current++,n.current?.pause(),n.current=null,t(null)};(0,u.useEffect)(()=>()=>{i.current++,n.current?.pause(),n.current=null},[]);function o(e){if(!e.sampleUrl)return;n.current?.pause();let a=++i.current,o=new Audio(e.sampleUrl);n.current=o,t(e.model);let s=()=>{i.current===a&&t(null)};o.onended=s,o.onerror=s,o.play().catch(()=>{i.current===a&&(r.error(`Could not play the voice sample.`),t(null))})}return{previewingModel:e,play:o,stop:a}}export{c as n,l as r,d as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{i as n,r}from"./i18n-C9hRT4Lf.js";import{t as i}from"./shim-CcP58yVZ.js";var a=e(t()),o=(e,t,n,r)=>{let i=[n,{code:t,...r||{}}];if(e?.services?.logger?.forward)return e.services.logger.forward(i,`warn`,`react-i18next::`,!0);p(i[0])&&(i[0]=`react-i18next:: ${i[0]}`),e?.services?.logger?.warn?e.services.logger.warn(...i):console?.warn&&console.warn(...i)},s={},c=(e,t,n,r)=>{p(n)&&s[n]||(p(n)&&(s[n]=new Date),o(e,t,n,r))},l=(e,t)=>()=>{if(e.isInitialized)t();else{let n=()=>{setTimeout(()=>{e.off(`initialized`,n)},0),t()};e.on(`initialized`,n)}},u=(e,t,n)=>{e.loadNamespaces(t,l(e,n))},d=(e,t,n,r)=>{if(p(n)&&(n=[n]),e.options.preload&&e.options.preload.indexOf(t)>-1)return u(e,n,r);n.forEach(t=>{e.options.ns.indexOf(t)<0&&e.options.ns.push(t)}),e.loadLanguages(t,l(e,r))},f=(e,t,n={})=>!t.languages||!t.languages.length?(c(t,`NO_LANGUAGES`,`i18n.languages were undefined or empty`,{languages:t.languages}),!0):t.hasLoadedNamespace(e,{lng:n.lng,precheck:(t,r)=>{if(n.bindI18n&&n.bindI18n.indexOf(`languageChanging`)>-1&&t.services.backendConnector.backend&&t.isLanguageChangingTo&&!r(t.isLanguageChangingTo,e))return!1}}),p=e=>typeof e==`string`,m=e=>typeof e==`object`&&!!e,h=(0,a.createContext)(),g=class{constructor(){this.usedNamespaces={}}addUsedNamespaces(e){e.forEach(e=>{this.usedNamespaces[e]||(this.usedNamespaces[e]=!0)})}getUsedNamespaces(){return Object.keys(this.usedNamespaces)}},_=i(),v={t:(e,t)=>{if(p(t))return t;if(m(t)&&p(t.defaultValue))return t.defaultValue;if(typeof e==`function`)return``;if(Array.isArray(e)){let t=e[e.length-1];return typeof t==`function`?``:t}return e},ready:!1},y=()=>()=>{},b=(e,t={})=>{let{i18n:i}=t,{i18n:o,defaultNS:s}=(0,a.useContext)(h)||{},l=i||o||r();l&&!l.reportNamespaces&&(l.reportNamespaces=new g),l||c(l,`NO_I18NEXT_INSTANCE`,`useTranslation: You will need to pass in an i18next instance by using initReactI18next or by passing it via props or context. In monorepo setups, make sure there is only one instance of react-i18next.`);let m=(0,a.useMemo)(()=>({...n(),...l?.options?.react,...t}),[l,t]),{useSuspense:b,keyPrefix:x}=m,S=e||s||l?.options?.defaultNS,C=p(S)?[S]:S||[`translation`],w=(0,a.useMemo)(()=>C,C);l?.reportNamespaces?.addUsedNamespaces?.(w);let T=(0,a.useRef)(0),E=(0,a.useCallback)(e=>{if(!l)return y;let{bindI18n:t,bindI18nStore:n}=m,r=()=>{T.current+=1,e()};return t&&l.on(t,r),n&&l.store.on(n,r),()=>{t&&t.split(` `).forEach(e=>l.off(e,r)),n&&n.split(` `).forEach(e=>l.store.off(e,r))}},[l,m]),D=(0,a.useRef)(),O=(0,a.useCallback)(()=>{if(!l)return v;let e=!!(l.isInitialized||l.initializedStoreOnce)&&w.every(e=>f(e,l,m)),n=t.lng||l.language,r=T.current,i=D.current;if(i&&i.ready===e&&i.lng===n&&i.keyPrefix===x&&i.revision===r)return i;let a={t:l.getFixedT(n,m.nsMode===`fallback`?w:w[0],x,{scopeNs:w}),ready:e,lng:n,keyPrefix:x,revision:r};return D.current=a,a},[l,w,x,m,t.lng]),[k,A]=(0,a.useState)(0),{t:j,ready:M}=(0,_.useSyncExternalStore)(E,O,O);(0,a.useEffect)(()=>{if(l&&!M&&!b){let e=()=>A(e=>e+1);t.lng?d(l,t.lng,w,e):u(l,w,e)}},[l,t.lng,w,M,b,k]);let N=l||{},P=(0,a.useRef)(null),F=(0,a.useRef)(),I=e=>{let t=Object.getOwnPropertyDescriptors(e);t.__original&&delete t.__original;let n=Object.create(Object.getPrototypeOf(e),t);if(!Object.prototype.hasOwnProperty.call(n,`__original`))try{Object.defineProperty(n,`__original`,{value:e,writable:!1,enumerable:!1,configurable:!1})}catch{}return n},L=(0,a.useMemo)(()=>{let e=N,t=e?.language,n=e;e&&(P.current&&P.current.__original===e&&F.current===t?n=P.current:(n=I(e),P.current=n,F.current=t));let r=!M&&!b?(...e)=>(c(l,`USE_T_BEFORE_READY`,`useTranslation: t was called before ready. When using useSuspense: false, make sure to check the ready flag before using t.`),j(...e)):j,i=[r,n,M];return i.t=r,i.i18n=n,i.ready=M,i},[j,N,M,N.resolvedLanguage,N.language,N.languages]);if(l&&b&&!M){let e=!1;try{e=!1}catch{}throw e&&c(l,`SUSPENDED_WHILE_LOADING`,`useTranslation: suspended while translations are loading (useSuspense is true by default). Add a <Suspense> boundary above this component, or set react.useSuspense: false in the i18next init options. https://react.i18next.com/latest/usetranslation-hook`),new Promise(e=>{let n=()=>e();t.lng?d(l,t.lng,w,n):u(l,w,n)})}return L};export{o as a,p as i,h as n,c as o,m as r,b as t};
|