@vellumai/web 0.10.6 → 0.10.7-dev.202607072325.09ad030
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{AnimatePresence-VF_hIZFD.js → AnimatePresence-CS9ctsw2.js} +2 -2
- package/dist/assets/{BundleConfirmPage-DOUpVq0Q.js → BundleConfirmPage-TmAbYoHc.js} +1 -1
- package/dist/assets/Combination-BG46kjfK.js +41 -0
- package/dist/assets/{a2a-invite-Bv0xGbPM.js → a2a-invite-wNM6Ff0r.js} +1 -1
- package/dist/assets/{about-page-ci8HgT8u.js → about-page-B-vlKylA.js} +1 -1
- package/dist/assets/{account-page-BiUlH7g9.js → account-page-Br93lL5p.js} +1 -1
- package/dist/assets/{account-shell-D0ubbqxG.js → account-shell-UA4SkMah.js} +1 -1
- package/dist/assets/acp-run-detail-panel-BF4PE4Zx.js +5 -0
- package/dist/assets/{add-credits-modal-BpZFOp84.js → add-credits-modal-o3H9AYgv.js} +1 -1
- package/dist/assets/advanced-page-DrCYguEX.js +1 -0
- package/dist/assets/ai-page-CQflrT_o.js +1 -0
- package/dist/assets/{animated-avatar-FIuLddxJ.js → animated-avatar-Btzkc8DC.js} +1 -1
- package/dist/assets/api-bHQ_ZhgO.js +1 -0
- package/dist/assets/{api-key-screen-BMj30LHe.js → api-key-screen-D7lS8mvX.js} +1 -1
- package/dist/assets/api-sofbwGIB.js +1 -0
- package/dist/assets/{app-info-Dtc98M-e.js → app-info-3nsDebwR.js} +1 -1
- package/dist/assets/{archive-BFILUl9x.js → archive-0aqysuyd.js} +1 -1
- package/dist/assets/{archive-page-aRD_FLfQ.js → archive-page-Du_siKo9.js} +1 -1
- package/dist/assets/arrow-left-DI9551VI.js +1 -0
- package/dist/assets/arrow-up-BxoccrRI.js +1 -0
- package/dist/assets/assistant-feature-flag-store-DIEpxIVZ.js +1 -0
- package/dist/assets/assistant-identity-store-DiUhyQ7n.js +1 -0
- package/dist/assets/{assistant-status-panel-8WiPtFrO.js → assistant-status-panel-mDIcc6r5.js} +1 -1
- package/dist/assets/auth-store-BgCpm8aB.js +2 -0
- package/dist/assets/background-task-detail-panel-C2J7hEqw.js +1 -0
- package/dist/assets/ban-CVKGuUAQ.js +1 -0
- package/dist/assets/{bell-DB1SrBre.js → bell-BQLonLMp.js} +1 -1
- package/dist/assets/billing-page-DN5EqQwA.js +3 -0
- package/dist/assets/{bookmark-C3S-p0MQ.js → bookmark-CNrithFf.js} +1 -1
- package/dist/assets/bookmarks-page-LwzS4lTO.js +1 -0
- package/dist/assets/{brain-Bs6LnfHO.js → brain-BLDXGaUy.js} +1 -1
- package/dist/assets/browser-B78iIKae.js +2 -0
- package/dist/assets/{bug-DDcuQ3au.js → bug-BsuQ5ciQ.js} +1 -1
- package/dist/assets/build-state-ksGNj2xS.js +1 -0
- package/dist/assets/{misc-GIyc06fS.js → bundle-mjs-BZt35okJ.js} +1 -1
- package/dist/assets/button-D1p5nVKJ.js +1 -0
- package/dist/assets/{calendar-CpgH8CqM.js → calendar-h-mv1itX.js} +1 -1
- package/dist/assets/{capture-error-8raDoxFL.js → capture-error-CmeVLfq0.js} +1 -1
- package/dist/assets/{card-BibIM9x3.js → card-Bv5O5juh.js} +1 -1
- package/dist/assets/channels-page-route-BviNR0ND.js +9 -0
- package/dist/assets/check-DFNrQERi.js +1 -0
- package/dist/assets/checkbox-Dy4hoNDa.js +1 -0
- package/dist/assets/chevron-down-qD-re7AW.js +1 -0
- package/dist/assets/chevron-left-BMF1xNfR.js +1 -0
- package/dist/assets/chevron-right-DqqmezXC.js +1 -0
- package/dist/assets/{chevron-up-BRZN6p_l.js → chevron-up-3jCod9LW.js} +1 -1
- package/dist/assets/{circle-alert-DvNg50UK.js → circle-alert-zOqdmf25.js} +1 -1
- package/dist/assets/circle-check-VSiny8yl.js +1 -0
- package/dist/assets/{client-feature-flag-store-D3f7L4rr.js → client-feature-flag-store-C0Tjm-Hl.js} +1 -1
- package/dist/assets/client-identity-DAs2xjUd.js +1 -0
- package/dist/assets/{clipboard-copy-cZENPJ25.js → clipboard-copy-DF6K1xc6.js} +1 -1
- package/dist/assets/{cloud-off-fMC5iwVY.js → cloud-off-Db1nySkc.js} +1 -1
- package/dist/assets/cn-C36Yvcac.js +1 -0
- package/dist/assets/code-Czx7d7SK.js +1 -0
- package/dist/assets/{command-palette-BHVjkDPP.js → command-palette-DEJb0zLE.js} +1 -1
- package/dist/assets/{command-palette-window-page-C8htNOF6.js → command-palette-window-page-fbP12QjU.js} +1 -1
- package/dist/assets/{community-page-BvBiiBNT.js → community-page-C1IbvYv7.js} +1 -1
- package/dist/assets/confirm-dialog-C0tP3s3P.js +1 -0
- package/dist/assets/{connect-page-65umesqK.js → connect-page-BMcYePcl.js} +1 -1
- package/dist/assets/{consent-controls-CoeCtvwh.js → consent-controls-COgMzEvv.js} +1 -1
- package/dist/assets/contacts-gateway-CZELTTWO.js +1 -0
- package/dist/assets/contacts-page-route-BNOTqSpK.js +1 -0
- package/dist/assets/{conversation-list-fetchers-D5PpdmFr.js → conversation-list-fetchers-DThMiPVW.js} +1 -1
- package/dist/assets/{conversation-store-BheNrWpL.js → conversation-store-DIfV0qat.js} +1 -1
- package/dist/assets/copy-Cn1FKrEp.js +1 -0
- package/dist/assets/{cpu-D1r7PLan.js → cpu-BJuB2Khn.js} +1 -1
- package/dist/assets/{credit-card-BwN95biV.js → credit-card-BuyWdO9t.js} +1 -1
- package/dist/assets/{danger-zone-redirect-page-BLyU56iI.js → danger-zone-redirect-page-CCxH8sPh.js} +1 -1
- package/dist/assets/debug-page-CJkMdOHL.js +4 -0
- package/dist/assets/definitions-B5E7eevX.js +1 -0
- package/dist/assets/{deploy-dialogs-DyZ__q_z.js → deploy-dialogs-r9b51B5r.js} +1 -1
- package/dist/assets/{detail-card-DXLMG-Zw.js → detail-card-TE7YEaVh.js} +1 -1
- package/dist/assets/{detail-panel-stop-button-DXQQXCtp.js → detail-panel-stop-button-BF53QuQ1.js} +1 -1
- package/dist/assets/detail-shell-Cln4I2nP.js +4 -0
- package/dist/assets/developer-page-D-gYFJxp.js +1 -0
- package/dist/assets/devices-page-snCBoJN0.js +1 -0
- package/dist/assets/{diagnostics-BQUtALh-.js → diagnostics-CPXHD6ua.js} +1 -1
- package/dist/assets/{dictation-overlay-page-D5pUTXA9.js → dictation-overlay-page-BPqv3HiZ.js} +1 -1
- package/dist/assets/dist-CAIL9R6N.js +1 -0
- package/dist/assets/dist-CXAvuqD6.js +1 -0
- package/dist/assets/dist-DSnPnoEz.js +1 -0
- package/dist/assets/dist-DcPLFkll.js +1 -0
- package/dist/assets/document-viewer-page-4pRVWlRI.js +1 -0
- package/dist/assets/{domain-field-CNW1t3OC.js → domain-field-C5a2iMot.js} +1 -1
- package/dist/assets/dropdown-BsftIzw-.js +1 -0
- package/dist/assets/earn-credits-modal-zxGdReHl.js +1 -0
- package/dist/assets/effective-timezone-DzaTH0MB.js +1 -0
- package/dist/assets/{emails-page--1HEyMqD.js → emails-page-DKvm3nEr.js} +1 -1
- package/dist/assets/{environment-store-CN3UaYQg.js → environment-store-BhzMRyLQ.js} +1 -1
- package/dist/assets/esm-0-ZimRqn.js +2 -0
- package/dist/assets/esm-Bz3kpqSC.js +2 -0
- package/dist/assets/esm-C6lFTYDL.js +1 -0
- package/dist/assets/esm-D8HhVT3_.js +2 -0
- package/dist/assets/esm-DTVZeytq.js +2 -0
- package/dist/assets/esm-FQkJ9Rs-.js +2 -0
- package/dist/assets/esm-dnA2U8Jo.js +2 -0
- package/dist/assets/{external-link-BgOnp59e.js → external-link-CfkE0LZW.js} +1 -1
- package/dist/assets/feature-flag-catalog-Ca2Lo1Sx.js +1 -0
- package/dist/assets/file-editor-UZBbQtPc.js +1 -0
- package/dist/assets/{file-text-D4wmdFsJ.js → file-text-DDcypanB.js} +1 -1
- package/dist/assets/general-page-5PLBxswP.js +1 -0
- package/dist/assets/{globe-CRuerXYx.js → globe-BgFbM_BQ.js} +1 -1
- package/dist/assets/haptics-7ccjHjqM.js +2 -0
- package/dist/assets/{hard-drive-DsJ64Fuu.js → hard-drive-8yxasJWm.js} +1 -1
- package/dist/assets/hatching-screen-BIxpLmO2.js +1 -0
- package/dist/assets/home-page-route-OvBWSwFC.js +1 -0
- package/dist/assets/{hosting-screen--GdpAsIo.js → hosting-screen-BlWbXsL-.js} +1 -1
- package/dist/assets/identity-page-route-CeyRWGSF.js +1 -0
- package/dist/assets/index-BCm5Qo5B.css +2 -0
- package/dist/assets/index-DD6uDbkv.js +114 -0
- package/dist/assets/{info-C9uyv2bI.js → info-DZoiK09u.js} +1 -1
- package/dist/assets/{input-D4W4p0pZ.js → input-DR1eB4a1.js} +1 -1
- package/dist/assets/{inspect-page-C-fq5PsM.js → inspect-page-Bwi5XsEh.js} +4 -4
- package/dist/assets/{install-DKnSvyt9.js → install-4dDaK6k1.js} +1 -1
- package/dist/assets/integrations-page-kEQJPFn5.js +1 -0
- package/dist/assets/intelligence-layout-DrZ0cmc1.js +1 -0
- package/dist/assets/{keyboard-shortcuts-page-DiFBwxwl.js → keyboard-shortcuts-page-CY1Iu2jL.js} +1 -1
- package/dist/assets/library-detail-page-CfiXPkp7.js +1 -0
- package/dist/assets/library-page-CweBANUw.js +1 -0
- package/dist/assets/{link-2-BIp7l4R9.js → link-2-DfxjDwqD.js} +1 -1
- package/dist/assets/list-row-YOzkXNjq.js +1 -0
- package/dist/assets/loader-circle-088bE-Hd.js +1 -0
- package/dist/assets/local-mode-YoUYEn7C.js +39 -0
- package/dist/assets/{log-in-BCOweEUO.js → log-in-BQonRVoo.js} +1 -1
- package/dist/assets/log-out-zhu7VraA.js +1 -0
- package/dist/assets/{login-flow-COr5zRoB.js → login-flow-CUN2stiy.js} +1 -1
- package/dist/assets/login-page-C5xLPDcY.js +1 -0
- package/dist/assets/logout-page-DmbJTrnq.js +1 -0
- package/dist/assets/logs-layout-eEqpOnNZ.js +1 -0
- package/dist/assets/{memory-router-playground-page-rPz9hfL9.js → memory-router-playground-page-CdPSZDpx.js} +1 -1
- package/dist/assets/menu-Bjq0lFxx.js +1 -0
- package/dist/assets/{messages-Doco46Z6.js → messages-CFT0cFRG.js} +2 -2
- package/dist/assets/{metric-card-DejhOUyM.js → metric-card-8SJnb8f6.js} +1 -1
- package/dist/assets/{minimize-2-BQKYHW0m.js → minimize-2-BusmaFRB.js} +1 -1
- package/dist/assets/misc-BTzhQRok.js +1 -0
- package/dist/assets/{mobile-sidebar-drawer-DwE65WjT.js → mobile-sidebar-drawer-DOjPe_9x.js} +1 -1
- package/dist/assets/{modal-BNAVT2FK.js → modal-cdtdc8dA.js} +1 -1
- package/dist/assets/{monitor-xGqXetuk.js → monitor-CWNmhnli.js} +1 -1
- package/dist/assets/{moon-rIyEhhAK.js → moon-Br0t6dvo.js} +1 -1
- package/dist/assets/mutation-error-DjaYE1g4.js +1 -0
- package/dist/assets/native-biometric-rXfe6lHU.js +6 -0
- package/dist/assets/native-deep-link-BWXQ0lVp.js +1 -0
- package/dist/assets/native-file-v09EzS1a.js +2 -0
- package/dist/assets/notice-BQRdh9ak.js +1 -0
- package/dist/assets/{notifications-page-D3Gip5vS.js → notifications-page-B4E24ebC.js} +1 -1
- package/dist/assets/{oauth-complete-page-DAuZqgBq.js → oauth-complete-page-DTN-GTIH.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-CvOB8DyR.js → oauth-popup-complete-page-CaXW7ptF.js} +1 -1
- package/dist/assets/{page-shell-C3-rU99a.js → page-shell-D2BB59Ix.js} +1 -1
- package/dist/assets/pairing-page-DZcTw1tq.js +1 -0
- package/dist/assets/panel-item-vXPWJAXs.js +1 -0
- package/dist/assets/{password-reset-page-BCyMJkWQ.js → password-reset-page-4qZSsNBc.js} +1 -1
- package/dist/assets/{pencil-CtYlsDsm.js → pencil-rKUVpppO.js} +1 -1
- package/dist/assets/platform-detection-T2pHtGrM.js +1 -0
- package/dist/assets/platform-loopback-page-DwyL8kjo.js +1 -0
- package/dist/assets/{plugin-detail-page-D_0rFOJ7.js → plugin-detail-page-C43OCujw.js} +1 -1
- package/dist/assets/plugins-page-URxDlRlx.js +1 -0
- package/dist/assets/plugins-surface-BePLpYIv.js +1 -0
- package/dist/assets/plus-D96er_7C.js +1 -0
- package/dist/assets/pointer-5Fi1H1Av.js +1 -0
- package/dist/assets/popover-DKvyZMoc.js +1 -0
- package/dist/assets/prechat-route-Td35x7FF.js +1 -0
- package/dist/assets/prefs-DQSqJGU7.js +1 -0
- package/dist/assets/privacy-page-vr4pbmh9.js +1 -0
- package/dist/assets/privacy-screen-Cos37QIv.js +1 -0
- package/dist/assets/{progress-bar-DIFlWPPg.js → progress-bar-q6qGo2Sp.js} +1 -1
- package/dist/assets/provider-callback-page-BXaSHzDk.js +1 -0
- package/dist/assets/provider-key-DMwDGx17.js +1 -0
- package/dist/assets/provider-signup-page-R0UzbDFK.js +1 -0
- package/dist/assets/proxy-Dc2HWwub.js +1 -0
- package/dist/assets/{quick-input-page-DITr3SKX.js → quick-input-page-CrIOFT4p.js} +1 -1
- package/dist/assets/react-query.gen-AbBrwMPh.js +1 -0
- package/dist/assets/react-query.gen-DrkKCNeH.js +1 -0
- package/dist/assets/{refresh-cw-Dlu2vgR6.js → refresh-cw-NXysUsL-.js} +1 -1
- package/dist/assets/remote-gateway-session-DnRxrW5U.js +1 -0
- package/dist/assets/{repeat-MDHTMmlC.js → repeat-Hff7oFdK.js} +1 -1
- package/dist/assets/research-mock-page-DplpbgtW.js +1 -0
- package/dist/assets/research-onboarding-persistence-OdxcXxrg.js +1 -0
- package/dist/assets/research-onboarding-route-Cv9ElOtb.js +61 -0
- package/dist/assets/{resize-errors-CN02qg8O.js → resize-errors-WFP78pIe.js} +1 -1
- package/dist/assets/resolved-assistants-store-DccydJ5N.js +1 -0
- package/dist/assets/{review-terms-screen-C2mUaOA6.js → review-terms-screen-DxUdQm5K.js} +1 -1
- package/dist/assets/routes-CBm-E8tn.js +1 -0
- package/dist/assets/{save-C03NWAqR.js → save-PmScRf6-.js} +1 -1
- package/dist/assets/{schedules-CQOSfZg8.js → schedules-D_aX-M6x.js} +1 -1
- package/dist/assets/{sdk.gen-Ec1nF7iZ.js → sdk.gen-B3bmXhSv.js} +1 -1
- package/dist/assets/sdk.gen-JlA-scjv.js +1 -0
- package/dist/assets/sdk.gen-P3yAvcBO.js +6 -0
- package/dist/assets/security-page-pOYL1CFa.js +1 -0
- package/dist/assets/select-assistant-screen-B2m5-Dex.js +1 -0
- package/dist/assets/{setting-row-Ci9YIJwu.js → setting-row-DAnTCHDc.js} +1 -1
- package/dist/assets/settings-layout-D83FJ0WZ.js +1 -0
- package/dist/assets/share-feedback-modal-Po7Xlam-.js +1 -0
- package/dist/assets/{shortcut-keys-vM6sNj7W.js → shortcut-keys-DKqAVRjB.js} +1 -1
- package/dist/assets/sidebar-tree-DKykyrmE.js +1 -0
- package/dist/assets/signup-page-3MF8DoRN.js +1 -0
- package/dist/assets/{signup-shell-Bw9OFI-z.js → signup-shell-CfqC32v2.js} +1 -1
- package/dist/assets/skills-page-DE1-rldF.js +1 -0
- package/dist/assets/sounds-page-Bkl7tFeF.js +1 -0
- package/dist/assets/{sparkles-Bkcjn8HQ.js → sparkles-3RJkeWa7.js} +1 -1
- package/dist/assets/src-C-RxAhZg.js +293 -0
- package/dist/assets/{stat-square-8mff1dLC.js → stat-square-CSQ2Md1V.js} +1 -1
- package/dist/assets/subagent-detail-panel-LxxIRTeB.js +4 -0
- package/dist/assets/{subagent-store-BmGtlv6O.js → subagent-store-BRcRbFQY.js} +1 -1
- package/dist/assets/system-events-page-CvzT4-vY.js +1 -0
- package/dist/assets/{system-events-redirect-page-Dnoz3v9J.js → system-events-redirect-page-DePjjQN1.js} +1 -1
- package/dist/assets/tag-BriFUtvF.js +1 -0
- package/dist/assets/tiptap-document-editor-gEhk4ieZ.js +282 -0
- package/dist/assets/toast-HPdEfHz3.js +1 -0
- package/dist/assets/{toggle-X_kQW5my.js → toggle-D7S110RM.js} +1 -1
- package/dist/assets/{tool-detail-panel-B3u6-K3R.js → tool-detail-panel-Dft0Hx4c.js} +2 -2
- package/dist/assets/{triangle-alert-BcZY_IvR.js → triangle-alert-CuLBwl1x.js} +1 -1
- package/dist/assets/{typography-BscuIPxA.js → typography-D5f7kt80.js} +1 -1
- package/dist/assets/{upgrade-cancel-page-CgX8IYAL.js → upgrade-cancel-page-SdR5eJcW.js} +1 -1
- package/dist/assets/{upgrade-success-page-DKKw3H1x.js → upgrade-success-page-CVLYuCHs.js} +1 -1
- package/dist/assets/usage-page-BqRgURSH.js +1 -0
- package/dist/assets/{use-active-assistant-id-iCLBbJXU.js → use-active-assistant-id-CyH4rTOc.js} +1 -1
- package/dist/assets/{use-bus-subscription-Cv9Js5_J.js → use-bus-subscription-BtJLhem5.js} +1 -1
- package/dist/assets/use-edge-swipe-back-uITLp4L4.js +1 -0
- package/dist/assets/use-invite-link-dialog-NmdTWylD.js +1 -0
- package/dist/assets/use-is-org-ready-CkTSZRNq.js +1 -0
- package/dist/assets/use-onboarding-login-ChdVOaal.js +1 -0
- package/dist/assets/{use-reduced-motion-BlCAREB8.js → use-reduced-motion-DRo6JmG-.js} +1 -1
- package/dist/assets/{use-skill-categories-CRMzRD6m.js → use-skill-categories-DLf0Fo9y.js} +1 -1
- package/dist/assets/{user-plus-D30zPuGV.js → user-plus-CBZUdRuz.js} +1 -1
- package/dist/assets/{utils-ChLzMd8R.js → utils-BbAwYb4I.js} +1 -1
- package/dist/assets/{viewer-store-D7cH9LQF.js → viewer-store-Kfp8axoz.js} +1 -1
- package/dist/assets/{voice-page-BT_3N22n.js → voice-page-IOVqjMhF.js} +1 -1
- package/dist/assets/{weather-forecast-display-C0Zvm9vl.js → weather-forecast-display-Ba7wKOLM.js} +1 -1
- package/dist/assets/web-BFaMQr0t.js +1 -0
- package/dist/assets/web-BG6ifSw3.js +1 -0
- package/dist/assets/web-BhRkAg3a.js +1 -0
- package/dist/assets/web-BkOWX8LM.js +1 -0
- package/dist/assets/web-Boeo363U.js +1 -0
- package/dist/assets/web-DIGPtYgc.js +1 -0
- package/dist/assets/web-DPZnGXO_.js +1 -0
- package/dist/assets/web-LKOaH9Uf.js +1 -0
- package/dist/assets/{welcome-screen-Dx4jNLFF.js → welcome-screen-wOifg1iN.js} +1 -1
- package/dist/assets/{workflow-detail-panel-CvbzHGzG.js → workflow-detail-panel-W3CdD_4G.js} +1 -1
- package/dist/assets/workspace-page-C10OB0F4.js +1 -0
- package/dist/assets/x-CwzRJv9J.js +1 -0
- package/dist/index.html +140 -140
- package/package.json +1 -1
- package/dist/assets/Combination-UBPhVLWy.js +0 -41
- package/dist/assets/acp-run-detail-panel-B2ycT_78.js +0 -5
- package/dist/assets/advanced-page-BClLCzBA.js +0 -1
- package/dist/assets/ai-page-DnocNQmY.js +0 -1
- package/dist/assets/api-DvthVfI2.js +0 -1
- package/dist/assets/arrow-left-CP-EhDNF.js +0 -1
- package/dist/assets/arrow-up-nBfZxfhi.js +0 -1
- package/dist/assets/assistant-api-Dlwk8jYW.js +0 -1
- package/dist/assets/assistant-feature-flag-store-B440uAh9.js +0 -6
- package/dist/assets/assistant-identity-store-DP4B8mmA.js +0 -1
- package/dist/assets/auth-store-B8KDWYi4.js +0 -2
- package/dist/assets/background-task-detail-panel-IILCVufr.js +0 -1
- package/dist/assets/ban-BpBuRCKI.js +0 -1
- package/dist/assets/billing-page-q1D1xspC.js +0 -3
- package/dist/assets/bookmarks-page-D5XLE9A7.js +0 -1
- package/dist/assets/browser-DdI2GrPw.js +0 -2
- package/dist/assets/build-state-DAcnY2g_.js +0 -1
- package/dist/assets/button-D-AX8Voo.js +0 -1
- package/dist/assets/channels-page-route-m_HALkI5.js +0 -1
- package/dist/assets/check-CW0KmV0o.js +0 -1
- package/dist/assets/check-D6WkI0gF.js +0 -1
- package/dist/assets/checkbox-ueHEk2G-.js +0 -1
- package/dist/assets/chevron-left-DghyKSEE.js +0 -1
- package/dist/assets/chevron-right-B6vEpVY0.js +0 -1
- package/dist/assets/circle-check-DzlJxj_M.js +0 -1
- package/dist/assets/client-identity-DiDHLoNp.js +0 -1
- package/dist/assets/cn-DvW5mxZR.js +0 -1
- package/dist/assets/code-BhoMjTYO.js +0 -1
- package/dist/assets/confirm-dialog-bfBx6UYv.js +0 -1
- package/dist/assets/contacts-gateway-_mvlDweU.js +0 -1
- package/dist/assets/contacts-page-route-CQXKgYfo.js +0 -1
- package/dist/assets/conversation-selection-jLLIV1vI.js +0 -1
- package/dist/assets/createLucideIcon-BlMXrA59.js +0 -1
- package/dist/assets/debug-page-BfYzZTih.js +0 -4
- package/dist/assets/detail-shell-C--69S4R.js +0 -4
- package/dist/assets/developer-page-LlFmliRP.js +0 -1
- package/dist/assets/device-settings-BBwtGKJb.js +0 -1
- package/dist/assets/devices-page-C65LYzPc.js +0 -1
- package/dist/assets/dist-CGS5MDkK.js +0 -5
- package/dist/assets/dist-Ddn3FnfV.js +0 -1
- package/dist/assets/document-viewer-page-mRBDn4Gc.js +0 -1
- package/dist/assets/dropdown-ChWAdhLG.js +0 -1
- package/dist/assets/earn-credits-modal-DVUdlw2V.js +0 -1
- package/dist/assets/effective-timezone-DrYGH2Lb.js +0 -1
- package/dist/assets/esm-BKCTntwk.js +0 -2
- package/dist/assets/esm-CNMouzMT.js +0 -2
- package/dist/assets/esm-CSgBiYzF.js +0 -2
- package/dist/assets/esm-CccIkVyz.js +0 -2
- package/dist/assets/esm-CpbLh3YJ.js +0 -2
- package/dist/assets/esm-DlsDcixX.js +0 -1
- package/dist/assets/feature-flag-catalog-CRFA909Q.js +0 -1
- package/dist/assets/file-editor-PNZ9cTI-.js +0 -1
- package/dist/assets/format-DuvgAcxs.js +0 -1
- package/dist/assets/general-page-DL3fu61f.js +0 -1
- package/dist/assets/haptics-DUNUKgg4.js +0 -1
- package/dist/assets/hatching-screen-Bc0QiEVj.js +0 -1
- package/dist/assets/home-page-route-CR3ajpvl.js +0 -1
- package/dist/assets/identity-page-route-z0mc5jGO.js +0 -1
- package/dist/assets/index-CWzNQ8A_.js +0 -129
- package/dist/assets/index-DMbjaeZr.css +0 -2
- package/dist/assets/info-BGLlcyt6.js +0 -1
- package/dist/assets/integrations-page-BeTfBE7R.js +0 -1
- package/dist/assets/intelligence-layout-ShKSJFRX.js +0 -1
- package/dist/assets/lib-DWRDi23Z.js +0 -14
- package/dist/assets/library-detail-page-BE-B5vd3.js +0 -1
- package/dist/assets/library-page-COsPjT0P.js +0 -1
- package/dist/assets/list-row-Di0MK3wu.js +0 -1
- package/dist/assets/loader-circle-BITX1qOw.js +0 -1
- package/dist/assets/local-mode-CgrENuVf.js +0 -39
- package/dist/assets/login-page-B_AWg_-m.js +0 -1
- package/dist/assets/logout-page-B-vCELzg.js +0 -1
- package/dist/assets/logs-layout-Bb2Ki85T.js +0 -1
- package/dist/assets/menu-BLJEjTFD.js +0 -1
- package/dist/assets/mutation-error-BN5zz5X4.js +0 -1
- package/dist/assets/native-biometric-C5AdTx4r.js +0 -6
- package/dist/assets/native-deep-link-CkFNpKqQ.js +0 -1
- package/dist/assets/native-file-swemzdL9.js +0 -2
- package/dist/assets/notice-CqRgVmeL.js +0 -1
- package/dist/assets/pairing-page-CSXR4O5_.js +0 -1
- package/dist/assets/panel-item-Q1g7DFJw.js +0 -1
- package/dist/assets/platform-detection-B1WOWEur.js +0 -1
- package/dist/assets/platform-loopback-page-DViSSCNq.js +0 -1
- package/dist/assets/plugins-page-DnsCa0ka.js +0 -1
- package/dist/assets/plugins-surface-CAUFbZFj.js +0 -1
- package/dist/assets/plus-CzwTg9D8.js +0 -1
- package/dist/assets/popover-BUj2v1xo.js +0 -1
- package/dist/assets/prechat-route-BRLg12I0.js +0 -1
- package/dist/assets/prefs-BK4ReLBx.js +0 -1
- package/dist/assets/privacy-page-DK_E5UDG.js +0 -1
- package/dist/assets/privacy-screen-VCEt0iH8.js +0 -1
- package/dist/assets/provider-callback-page-DSqK6K5B.js +0 -1
- package/dist/assets/provider-key-DSBs9REL.js +0 -1
- package/dist/assets/provider-signup-page-CuLVID0r.js +0 -1
- package/dist/assets/proxy-BzcB2wP4.js +0 -1
- package/dist/assets/react-query.gen-Bxy9zjSn.js +0 -1
- package/dist/assets/react-query.gen-DQUX56Gs.js +0 -1
- package/dist/assets/remote-gateway-session-C2xcV9Z_.js +0 -1
- package/dist/assets/research-mock-page-D0KTjYOI.js +0 -1
- package/dist/assets/research-onboarding-route-CoGKBjAq.js +0 -61
- package/dist/assets/resolved-assistants-store-Dqf0LJrA.js +0 -1
- package/dist/assets/routes-CCywyokq.js +0 -1
- package/dist/assets/sdk.gen-B3Z8klU-.js +0 -1
- package/dist/assets/select-assistant-screen-DkgCyv2V.js +0 -1
- package/dist/assets/settings-layout-BLjA2_fl.js +0 -1
- package/dist/assets/share-feedback-modal-34O8UomD.js +0 -1
- package/dist/assets/sidebar-tree-DJnIQnXc.js +0 -1
- package/dist/assets/signup-page-CJeIDhFC.js +0 -1
- package/dist/assets/skills-page-CcrxOAfG.js +0 -1
- package/dist/assets/sound-manager-DtzFjWmP.js +0 -1
- package/dist/assets/sounds-page-BHhIVuV0.js +0 -1
- package/dist/assets/src-CUycEQpW.js +0 -293
- package/dist/assets/subagent-detail-panel-Cj7wlfR3.js +0 -4
- package/dist/assets/system-events-page-B9LdpkBg.js +0 -1
- package/dist/assets/tag-CW6WC4fE.js +0 -1
- package/dist/assets/tiptap-document-editor-jcHGSIJg.js +0 -281
- package/dist/assets/toast-B0OiPFFj.js +0 -1
- package/dist/assets/trace-page-D-2QJklH.js +0 -1
- package/dist/assets/triangle-alert-Bz1PpciW.js +0 -1
- package/dist/assets/usage-page-obI_HCGk.js +0 -1
- package/dist/assets/use-is-org-ready-CXt7jaER.js +0 -1
- package/dist/assets/use-onboarding-login-DgxS4dsO.js +0 -1
- package/dist/assets/use-setup-channel-param-CNNd-gJV.js +0 -9
- package/dist/assets/web-60vPNzAv.js +0 -1
- package/dist/assets/web-BZF5Krzc.js +0 -1
- package/dist/assets/web-BfGgEMt3.js +0 -1
- package/dist/assets/web-Bqls6sCO.js +0 -1
- package/dist/assets/web-DF-93Ff2.js +0 -1
- package/dist/assets/web-Dw05M3EW.js +0 -1
- package/dist/assets/web-IVArvzQ-.js +0 -1
- package/dist/assets/workspace-page-DDNf-ykG.js +0 -1
- package/dist/assets/x-B0gfyRAR.js +0 -1
- package/dist/assets/x-C8bCmIhD.js +0 -1
- /package/dist/assets/{api-errors-CPc5p2r9.js → api-errors-DZ6ckXtC.js} +0 -0
- /package/dist/assets/{avatar-bundled-components-DMC1S-8P.js → avatar-bundled-components-vcdejfQE.js} +0 -0
- /package/dist/assets/{avatar-svg-compositor-D6G3Y6hA.js → avatar-svg-compositor-T4Nlid_8.js} +0 -0
- /package/dist/assets/{build.umd-gY3Uzz96.js → build.umd-BRloxS0w.js} +0 -0
- /package/dist/assets/{by-tool-use-id-index-KHuXlFNc.js → by-tool-use-id-index-BzhJW3di.js} +0 -0
- /package/dist/assets/{chat-C19ZjAL3.js → chat-CZBa_f1B.js} +0 -0
- /package/dist/assets/{client.gen-nWvCdeJb.js → client.gen-AQhSugfA.js} +0 -0
- /package/dist/assets/{client.gen-CbVuiseX.js → client.gen-V_HNquaL.js} +0 -0
- /package/dist/assets/{composer-focus-Clt7vN-2.js → composer-focus-mqPYdp3p.js} +0 -0
- /package/dist/assets/{create-selectors-BE0_e_Ed.js → create-selectors-DxrPZQND.js} +0 -0
- /package/dist/assets/{createLucideIcon-Bjb-Kuq7.js → createLucideIcon-IRfcSUxS.js} +0 -0
- /package/dist/assets/{definitions-DeG2sRFv.js → definitions-C6k0EQJc.js} +0 -0
- /package/dist/assets/{dist-CNEsSZUe.js → dist-DYJxpPwT2.js} +0 -0
- /package/dist/assets/{edit-chat-session-RMvGKcHJ.js → edit-chat-session-ViDBnAwR.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-ClLxfwNZ.js → emoji-catalog-data-CX_Q9AiW.js} +0 -0
- /package/dist/assets/{event-bus-ULoEgfFr.js → event-bus-BXKLAX-e.js} +0 -0
- /package/dist/assets/{format-date-CmX7EYBN.js → format-date-C-eCaBOj.js} +0 -0
- /package/dist/assets/{format-file-size-D7iZejgy.js → format-file-size-Cnq-CdFe.js} +0 -0
- /package/dist/assets/{impersonate-version-flag-BpzPjXeb.js → impersonate-version-flag-CPPn65xN.js} +0 -0
- /package/dist/assets/{is-electron-C_ZTVhv8.js → is-electron-LEymSS4C.js} +0 -0
- /package/dist/assets/{llm-dimension-DyYwG3mU.js → llm-dimension-DMXIDBqX.js} +0 -0
- /package/dist/assets/{onboarding-step-layout-2XcmxqFN.js → onboarding-step-layout-CqsxCaSG.js} +0 -0
- /package/dist/assets/{pdf-Cuv7mg8b.js → pdf-BvpzlNL1.js} +0 -0
- /package/dist/assets/{prechat-BzdosDIx.js → prechat-BoMF1Jj-.js} +0 -0
- /package/dist/assets/{prechat-names-DPum8sFP.js → prechat-names-r2l4SHE1.js} +0 -0
- /package/dist/assets/{public-asset-DYtCQInw.js → public-asset-CsdLlNtA.js} +0 -0
- /package/dist/assets/{semver-DMpUdXpu.js → semver-BcXhJ-Ta.js} +0 -0
- /package/dist/assets/{status-badge-pill-CXey_r2B.js → status-badge-pill-DWywzjvD.js} +0 -0
- /package/dist/assets/{step-indicator-dots-CvPP_zNN.js → step-indicator-dots-DKLSzjtH.js} +0 -0
- /package/dist/assets/{usage-window-C6gWu5Qu.js → usage-window-Bqypb8ID.js} +0 -0
- /package/dist/assets/{use-is-mobile-Cqknxs2C.js → use-is-mobile-Cy10kl9u.js} +0 -0
- /package/dist/assets/{workflow-status-BF9EOzZI.js → workflow-status-CQB-_S1y.js} +0 -0
- /package/dist/assets/{xterm-BPl0dA68.js → xterm-C7EFbJH6.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-BCzoNVYn.js → xterm-addon-fit-IajRC7KP.js} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{B as r,H as i,V as a,h as o,n as s,r as c,z as l}from"./proxy-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{B as r,H as i,V as a,h as o,n as s,r as c,z as l}from"./proxy-Dc2HWwub.js";var u=n(),d=e(t(),1);function f(e,t){if(typeof e==`function`)return e(t);e!=null&&(e.current=t)}function p(...e){return t=>{let n=!1,r=e.map(e=>{let r=f(e,t);return!n&&typeof r==`function`&&(n=!0),r});if(n)return()=>{for(let t=0;t<r.length;t++){let n=r[t];typeof n==`function`?n():f(e[t],null)}}}}function m(...e){return d.useCallback(p(...e),e)}var h=class extends d.Component{getSnapshotBeforeUpdate(e){let t=this.props.childRef.current;if(o(t)&&e.isPresent&&!this.props.isPresent&&this.props.pop!==!1){let e=t.offsetParent,n=o(e)&&e.offsetWidth||0,r=o(e)&&e.offsetHeight||0,i=getComputedStyle(t),a=this.props.sizeRef.current;a.height=parseFloat(i.height),a.width=parseFloat(i.width),a.top=t.offsetTop,a.left=t.offsetLeft,a.right=n-a.width-a.left,a.bottom=r-a.height-a.top,a.direction=i.direction}return null}componentDidUpdate(){}render(){return this.props.children}};function g({children:e,isPresent:t,anchorX:n,anchorY:r,root:i,pop:a}){let o=(0,d.useId)(),s=(0,d.useRef)(null),l=(0,d.useRef)({width:0,height:0,top:0,left:0,right:0,bottom:0,direction:`ltr`}),{nonce:f}=(0,d.useContext)(c),p=m(s,e.props?.ref??e?.ref);return(0,d.useInsertionEffect)(()=>{let{width:e,height:c,top:u,left:d,right:p,bottom:m,direction:h}=l.current;if(t||a===!1||!s.current||!e||!c)return;let g=h===`rtl`,_=n===`left`?g?`right: ${p}`:`left: ${d}`:g?`left: ${d}`:`right: ${p}`,v=r===`bottom`?`bottom: ${m}`:`top: ${u}`;s.current.dataset.motionPopId=o;let y=document.createElement(`style`);f&&(y.nonce=f);let b=i??document.head;return b.appendChild(y),y.sheet&&y.sheet.insertRule(`
|
|
2
2
|
[data-motion-pop-id="${o}"] {
|
|
3
3
|
position: absolute !important;
|
|
4
4
|
width: ${e}px !important;
|
|
@@ -6,4 +6,4 @@ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";impor
|
|
|
6
6
|
${_}px !important;
|
|
7
7
|
${v}px !important;
|
|
8
8
|
}
|
|
9
|
-
`),()=>{s.current?.removeAttribute(`data-motion-pop-id`),b.contains(y)&&b.removeChild(y)}},[t]),(0,u.jsx)(h,{isPresent:t,childRef:s,sizeRef:l,pop:a,children:a===!1?e:d.cloneElement(e,{ref:p})})}var _=({children:e,initial:t,isPresent:n,onExitComplete:
|
|
9
|
+
`),()=>{s.current?.removeAttribute(`data-motion-pop-id`),b.contains(y)&&b.removeChild(y)}},[t]),(0,u.jsx)(h,{isPresent:t,childRef:s,sizeRef:l,pop:a,children:a===!1?e:d.cloneElement(e,{ref:p})})}var _=({children:e,initial:t,isPresent:n,onExitComplete:i,custom:o,presenceAffectsLayout:s,mode:c,anchorX:f,anchorY:p,root:m})=>{let h=a(v),_=(0,d.useId)(),y=(0,d.useRef)(n),b=(0,d.useRef)(i);r(()=>{y.current=n,b.current=i});let x=!0,S=(0,d.useMemo)(()=>(x=!1,{id:_,initial:t,isPresent:n,custom:o,onExitComplete:e=>{h.set(e,!0);for(let e of h.values())if(!e)return;i&&i()},register:e=>(h.set(e,!1),()=>{h.delete(e),!y.current&&!h.size&&b.current?.()})}),[n,h,i]);return s&&x&&(S={...S}),(0,d.useMemo)(()=>{h.forEach((e,t)=>h.set(t,!1))},[n]),d.useEffect(()=>{!n&&!h.size&&i&&i()},[n]),e=(0,u.jsx)(g,{pop:c===`popLayout`,isPresent:n,anchorX:f,anchorY:p,root:m,children:e}),(0,u.jsx)(l.Provider,{value:S,children:e})};function v(){return new Map}var y=e=>e.key||``;function b(e){let t=[];return d.Children.forEach(e,e=>{(0,d.isValidElement)(e)&&t.push(e)}),t}var x=({children:e,custom:t,initial:n=!0,onExitComplete:o,presenceAffectsLayout:c=!0,mode:l=`sync`,propagate:f=!1,anchorX:p=`left`,anchorY:m=`top`,root:h})=>{let[g,v]=s(f),x=(0,d.useMemo)(()=>b(e),[e]),S=f&&!g?[]:x.map(y),C=(0,d.useRef)(!0),w=(0,d.useRef)(x),T=a(()=>new Map),E=(0,d.useRef)(new Set),[D,O]=(0,d.useState)(x),[k,A]=(0,d.useState)(x);r(()=>{C.current=!1,w.current=x;for(let e=0;e<k.length;e++){let t=y(k[e]);S.includes(t)?(T.delete(t),E.current.delete(t)):T.get(t)!==!0&&T.set(t,!1)}},[k,S.length,S.join(`-`)]);let j=[];if(x!==D){let e=[...x];for(let t=0;t<k.length;t++){let n=k[t],r=y(n);S.includes(r)||(e.splice(t,0,n),j.push(n))}return l===`wait`&&j.length&&(e=j),A(b(e)),O(x),null}let{forceRender:M}=(0,d.useContext)(i);return(0,u.jsx)(u.Fragment,{children:k.map(e=>{let r=y(e),i=f&&!g?!1:x===k||S.includes(r);return(0,u.jsx)(_,{isPresent:i,initial:!C.current||n?void 0:!1,custom:t,presenceAffectsLayout:c,mode:l,root:h,onExitComplete:i?void 0:()=>{if(E.current.has(r))return;if(T.has(r))E.current.add(r),T.set(r,!0);else return;let e=!0;T.forEach(t=>{t||(e=!1)}),e&&(M?.(),A(w.current),f&&v?.(),o&&o())},anchorX:p,anchorY:m,children:e},r)})})};export{x as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{t as r}from"./misc-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{t as r}from"./misc-BTzhQRok.js";import{t as i}from"./format-file-size-Cnq-CdFe.js";var a=e(t(),1),o=n(),s={verified:{label:`Verified`,className:`bg-[var(--system-positive-weak)] text-[var(--system-positive-strong)]`},signed:{label:`Signed`,className:`bg-[var(--system-info-weak)] text-[var(--system-info-strong)]`},unsigned:{label:`Unsigned`,className:`bg-[var(--surface-active)] text-[var(--content-secondary)]`},tampered:{label:`Tampered — signature invalid`,className:`bg-[var(--system-negative-weak)] text-[var(--system-negative-strong)]`}};function c(){let[e,t]=(0,a.useState)(null),[n,c]=(0,a.useState)(!1);if((0,a.useEffect)(()=>{window.vellum?.bundleConfirm?.getData().then(e=>{e&&t(e)})},[]),!e)return(0,o.jsx)(`div`,{className:`flex h-svh w-screen items-center justify-center bg-background text-muted-foreground select-none`,children:`Loading...`});let{manifest:l,scanResult:u,signatureResult:d,bundleSizeBytes:f}=e,p=s[d.trustTier],m=d.trustTier===`tampered`,h=u.warnings;return(0,o.jsxs)(`div`,{className:`flex h-svh w-screen flex-col bg-background px-6 pt-14 pb-6 text-foreground select-none`,children:[(0,o.jsxs)(`div`,{className:`flex items-start gap-3`,children:[l.icon?(0,o.jsx)(`span`,{className:`text-5xl leading-none`,children:l.icon}):(0,o.jsx)(`span`,{className:`text-5xl leading-none`,children:`📦`}),(0,o.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,o.jsx)(`h1`,{className:`truncate text-lg font-semibold`,children:l.name}),l.description&&(0,o.jsx)(`p`,{className:`text-muted-foreground mt-0.5 text-sm leading-snug`,children:l.description})]})]}),(0,o.jsxs)(`div`,{className:`mt-4 flex items-center gap-2`,children:[(0,o.jsx)(`span`,{className:r(`inline-block rounded-full px-2.5 py-0.5 text-xs font-medium`,p.className),children:p.label}),d.trustTier===`signed`&&d.signerDisplayName&&(0,o.jsxs)(`span`,{className:`text-muted-foreground text-xs`,children:[`by `,d.signerDisplayName]})]}),(0,o.jsxs)(`dl`,{className:`mt-4 grid grid-cols-[auto_1fr] gap-x-3 gap-y-1.5 text-sm`,children:[(0,o.jsx)(`dt`,{className:`text-muted-foreground`,children:`Size`}),(0,o.jsx)(`dd`,{children:i(f)}),(0,o.jsx)(`dt`,{className:`text-muted-foreground`,children:`Created by`}),(0,o.jsx)(`dd`,{className:`truncate`,children:l.created_by}),l.capabilities.length>0&&(0,o.jsxs)(o.Fragment,{children:[(0,o.jsx)(`dt`,{className:`text-muted-foreground`,children:`Capabilities`}),(0,o.jsx)(`dd`,{className:`truncate`,children:l.capabilities.join(`, `)})]})]}),h.length>0&&(0,o.jsxs)(`div`,{className:`mt-4`,children:[(0,o.jsxs)(`button`,{type:`button`,className:`text-muted-foreground text-xs font-medium hover:underline`,onClick:()=>c(e=>!e),children:[n?`Hide`:`Show`,` Warnings (`,h.length,`)`]}),n&&(0,o.jsx)(`ul`,{className:`mt-1.5 space-y-1 text-xs`,children:h.map((e,t)=>(0,o.jsx)(`li`,{className:`rounded bg-[var(--system-mid-weak)] px-2 py-1 text-[var(--system-mid-strong)]`,children:e},t))})]}),(0,o.jsxs)(`div`,{className:`mt-auto flex items-center justify-end gap-3 pt-4`,children:[(0,o.jsx)(`button`,{type:`button`,className:`rounded-md border border-border px-4 py-1.5 text-sm font-medium text-foreground hover:bg-muted`,onClick:()=>window.vellum?.bundleConfirm?.respond(!1),children:`Cancel`}),(0,o.jsx)(`button`,{type:`button`,className:r(`rounded-md px-4 py-1.5 text-sm font-medium text-white`,m?`bg-red-600 hover:bg-red-700`:`bg-primary hover:bg-primary/90`),onClick:()=>window.vellum?.bundleConfirm?.respond(!0),children:m?`Install Anyway`:`Install`})]})]})}export{c as BundleConfirmPage};
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{D as n,M as r,O as i}from"./button-D1p5nVKJ.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";var o=e(t(),1),s=0,c=null;function l(){o.useEffect(()=>{c||={start:u(),end:u()};let{start:e,end:t}=c;return document.body.firstElementChild!==e&&document.body.insertAdjacentElement(`afterbegin`,e),document.body.lastElementChild!==t&&document.body.insertAdjacentElement(`beforeend`,t),s++,()=>{s===1&&(c?.start.remove(),c?.end.remove(),c=null),s=Math.max(0,s-1)}},[])}function u(){let e=document.createElement(`span`);return e.setAttribute(`data-radix-focus-guard`,``),e.tabIndex=0,e.style.outline=`none`,e.style.opacity=`0`,e.style.position=`fixed`,e.style.pointerEvents=`none`,e}var d=a(),f=`focusScope.autoFocusOnMount`,p=`focusScope.autoFocusOnUnmount`,m={bubbles:!1,cancelable:!0},h=`FocusScope`,g=o.forwardRef((e,t)=>{let{loop:a=!1,trapped:s=!1,onMountAutoFocus:c,onUnmountAutoFocus:l,...u}=e,[h,g]=o.useState(null),b=n(c),x=n(l),S=o.useRef(null),T=r(t,g),E=o.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;o.useEffect(()=>{if(s){let e=function(e){if(E.paused||!h)return;let t=e.target;h.contains(t)?S.current=t:C(S.current,{select:!0})},t=function(e){if(E.paused||!h)return;let t=e.relatedTarget;t!==null&&(h.contains(t)||C(S.current,{select:!0}))},n=function(e){if(document.activeElement===document.body)for(let t of e)t.removedNodes.length>0&&C(h)};document.addEventListener(`focusin`,e),document.addEventListener(`focusout`,t);let r=new MutationObserver(n);return h&&r.observe(h,{childList:!0,subtree:!0}),()=>{document.removeEventListener(`focusin`,e),document.removeEventListener(`focusout`,t),r.disconnect()}}},[s,h,E.paused]),o.useEffect(()=>{if(h){w.add(E);let e=document.activeElement;if(!h.contains(e)){let t=new CustomEvent(f,m);h.addEventListener(f,b),h.dispatchEvent(t),t.defaultPrevented||(_(ee(y(h)),{select:!0}),document.activeElement===e&&C(h))}return()=>{h.removeEventListener(f,b),setTimeout(()=>{let t=new CustomEvent(p,m);h.addEventListener(p,x),h.dispatchEvent(t),t.defaultPrevented||C(e??document.body,{select:!0}),h.removeEventListener(p,x),w.remove(E)},0)}}},[h,b,x,E]);let D=o.useCallback(e=>{if(!a&&!s||E.paused)return;let t=e.key===`Tab`&&!e.altKey&&!e.ctrlKey&&!e.metaKey,n=document.activeElement;if(t&&n){let t=e.currentTarget,[r,i]=v(t);r&&i?!e.shiftKey&&n===i?(e.preventDefault(),a&&C(r,{select:!0})):e.shiftKey&&n===r&&(e.preventDefault(),a&&C(i,{select:!0})):n===t&&e.preventDefault()}},[a,s,E.paused]);return(0,d.jsx)(i.div,{tabIndex:-1,...u,ref:T,onKeyDown:D})});g.displayName=h;function _(e,{select:t=!1}={}){let n=document.activeElement;for(let r of e)if(C(r,{select:t}),document.activeElement!==n)return}function v(e){let t=y(e);return[b(t,e),b(t.reverse(),e)]}function y(e){let t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:e=>{let t=e.tagName===`INPUT`&&e.type===`hidden`;return e.disabled||e.hidden||t?NodeFilter.FILTER_SKIP:e.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function b(e,t){for(let n of e)if(!x(n,{upTo:t}))return n}function x(e,{upTo:t}){if(getComputedStyle(e).visibility===`hidden`)return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display===`none`)return!0;e=e.parentElement}return!1}function S(e){return e instanceof HTMLInputElement&&`select`in e}function C(e,{select:t=!1}={}){if(e&&e.focus){let n=document.activeElement;e.focus({preventScroll:!0}),e!==n&&S(e)&&t&&e.select()}}var w=T();function T(){let e=[];return{add(t){let n=e[0];t!==n&&n?.pause(),e=E(e,t),e.unshift(t)},remove(t){e=E(e,t),e[0]?.resume()}}}function E(e,t){let n=[...e],r=n.indexOf(t);return r!==-1&&n.splice(r,1),n}function ee(e){return e.filter(e=>e.tagName!==`A`)}var D=function(e){return typeof document>`u`?null:(Array.isArray(e)?e[0]:e).ownerDocument.body},O=new WeakMap,k=new WeakMap,A={},j=0,M=function(e){return e&&(e.host||M(e.parentNode))},te=function(e,t){return t.map(function(t){if(e.contains(t))return t;var n=M(t);return n&&e.contains(n)?n:(console.error(`aria-hidden`,t,`in not contained inside`,e,`. Doing nothing`),null)}).filter(function(e){return!!e})},ne=function(e,t,n,r){var i=te(t,Array.isArray(e)?e:[e]);A[n]||(A[n]=new WeakMap);var a=A[n],o=[],s=new Set,c=new Set(i),l=function(e){!e||s.has(e)||(s.add(e),l(e.parentNode))};i.forEach(l);var u=function(e){!e||c.has(e)||Array.prototype.forEach.call(e.children,function(e){if(s.has(e))u(e);else try{var t=e.getAttribute(r),i=t!==null&&t!==`false`,c=(O.get(e)||0)+1,l=(a.get(e)||0)+1;O.set(e,c),a.set(e,l),o.push(e),c===1&&i&&k.set(e,!0),l===1&&e.setAttribute(n,`true`),i||e.setAttribute(r,`true`)}catch(t){console.error(`aria-hidden: cannot operate on `,e,t)}})};return u(t),s.clear(),j++,function(){o.forEach(function(e){var t=O.get(e)-1,i=a.get(e)-1;O.set(e,t),a.set(e,i),t||(k.has(e)||e.removeAttribute(r),k.delete(e)),i||e.removeAttribute(n)}),j--,j||(O=new WeakMap,O=new WeakMap,k=new WeakMap,A={})}},re=function(e,t,n){n===void 0&&(n=`data-aria-hidden`);var r=Array.from(Array.isArray(e)?e:[e]),i=t||D(e);return i?(r.push.apply(r,Array.from(i.querySelectorAll(`[aria-live], script`))),ne(r,i,n,`aria-hidden`)):function(){return null}},N=function(){return N=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},N.apply(this,arguments)};function P(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function ie(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}var F=`right-scroll-bar-position`,I=`width-before-scroll-bar`,ae=`with-scroll-bars-hidden`,oe=`--removed-body-scroll-bar-size`;function L(e,t){return typeof e==`function`?e(t):e&&(e.current=t),e}function se(e,t){var n=(0,o.useState)(function(){return{value:e,callback:t,facade:{get current(){return n.value},set current(e){var t=n.value;t!==e&&(n.value=e,n.callback(e,t))}}}})[0];return n.callback=t,n.facade}var ce=typeof window<`u`?o.useLayoutEffect:o.useEffect,R=new WeakMap;function le(e,t){var n=se(t||null,function(t){return e.forEach(function(e){return L(e,t)})});return ce(function(){var t=R.get(n);if(t){var r=new Set(t),i=new Set(e),a=n.current;r.forEach(function(e){i.has(e)||L(e,null)}),i.forEach(function(e){r.has(e)||L(e,a)})}R.set(n,e)},[e]),n}function ue(e){return e}function de(e,t){t===void 0&&(t=ue);var n=[],r=!1;return{read:function(){if(r)throw Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return n.length?n[n.length-1]:e},useMedium:function(e){var i=t(e,r);return n.push(i),function(){n=n.filter(function(e){return e!==i})}},assignSyncMedium:function(e){for(r=!0;n.length;){var t=n;n=[],t.forEach(e)}n={push:function(t){return e(t)},filter:function(){return n}}},assignMedium:function(e){r=!0;var t=[];if(n.length){var i=n;n=[],i.forEach(e),t=n}var a=function(){var n=t;t=[],n.forEach(e)},o=function(){return Promise.resolve().then(a)};o(),n={push:function(e){t.push(e),o()},filter:function(e){return t=t.filter(e),n}}}}}function fe(e){e===void 0&&(e={});var t=de(null);return t.options=N({async:!0,ssr:!1},e),t}var z=function(e){var t=e.sideCar,n=P(e,[`sideCar`]);if(!t)throw Error("Sidecar: please provide `sideCar` property to import the right car");var r=t.read();if(!r)throw Error(`Sidecar medium not found`);return o.createElement(r,N({},n))};z.isSideCarExport=!0;function pe(e,t){return e.useMedium(t),z}var B=fe(),V=function(){},H=o.forwardRef(function(e,t){var n=o.useRef(null),r=o.useState({onScrollCapture:V,onWheelCapture:V,onTouchMoveCapture:V}),i=r[0],a=r[1],s=e.forwardProps,c=e.children,l=e.className,u=e.removeScrollBar,d=e.enabled,f=e.shards,p=e.sideCar,m=e.noRelative,h=e.noIsolation,g=e.inert,_=e.allowPinchZoom,v=e.as,y=v===void 0?`div`:v,b=e.gapMode,x=P(e,[`forwardProps`,`children`,`className`,`removeScrollBar`,`enabled`,`shards`,`sideCar`,`noRelative`,`noIsolation`,`inert`,`allowPinchZoom`,`as`,`gapMode`]),S=p,C=le([n,t]),w=N(N({},x),i);return o.createElement(o.Fragment,null,d&&o.createElement(S,{sideCar:B,removeScrollBar:u,shards:f,noRelative:m,noIsolation:h,inert:g,setCallbacks:a,allowPinchZoom:!!_,lockRef:n,gapMode:b}),s?o.cloneElement(o.Children.only(c),N(N({},w),{ref:C})):o.createElement(y,N({},w,{className:l,ref:C}),c))});H.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1},H.classNames={fullWidth:I,zeroRight:F};var U,me=function(){if(U)return U;if(typeof __webpack_nonce__<`u`)return __webpack_nonce__};function he(){if(!document)return null;var e=document.createElement(`style`);e.type=`text/css`;var t=me();return t&&e.setAttribute(`nonce`,t),e}function ge(e,t){e.styleSheet?e.styleSheet.cssText=t:e.appendChild(document.createTextNode(t))}function _e(e){(document.head||document.getElementsByTagName(`head`)[0]).appendChild(e)}var ve=function(){var e=0,t=null;return{add:function(n){e==0&&(t=he())&&(ge(t,n),_e(t)),e++},remove:function(){e--,!e&&t&&(t.parentNode&&t.parentNode.removeChild(t),t=null)}}},ye=function(){var e=ve();return function(t,n){o.useEffect(function(){return e.add(t),function(){e.remove()}},[t&&n])}},W=function(){var e=ye();return function(t){var n=t.styles,r=t.dynamic;return e(n,r),null}},be={left:0,top:0,right:0,gap:0},G=function(e){return parseInt(e||``,10)||0},xe=function(e){var t=window.getComputedStyle(document.body),n=t[e===`padding`?`paddingLeft`:`marginLeft`],r=t[e===`padding`?`paddingTop`:`marginTop`],i=t[e===`padding`?`paddingRight`:`marginRight`];return[G(n),G(r),G(i)]},Se=function(e){if(e===void 0&&(e=`margin`),typeof window>`u`)return be;var t=xe(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},Ce=W(),K=`data-scroll-locked`,we=function(e,t,n,r){var i=e.left,a=e.top,o=e.right,s=e.gap;return n===void 0&&(n=`margin`),`
|
|
2
|
+
.${ae} {
|
|
3
|
+
overflow: hidden ${r};
|
|
4
|
+
padding-right: ${s}px ${r};
|
|
5
|
+
}
|
|
6
|
+
body[${K}] {
|
|
7
|
+
overflow: hidden ${r};
|
|
8
|
+
overscroll-behavior: contain;
|
|
9
|
+
${[t&&`position: relative ${r};`,n===`margin`&&`
|
|
10
|
+
padding-left: ${i}px;
|
|
11
|
+
padding-top: ${a}px;
|
|
12
|
+
padding-right: ${o}px;
|
|
13
|
+
margin-left:0;
|
|
14
|
+
margin-top:0;
|
|
15
|
+
margin-right: ${s}px ${r};
|
|
16
|
+
`,n===`padding`&&`padding-right: ${s}px ${r};`].filter(Boolean).join(``)}
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
.${F} {
|
|
20
|
+
right: ${s}px ${r};
|
|
21
|
+
}
|
|
22
|
+
|
|
23
|
+
.${I} {
|
|
24
|
+
margin-right: ${s}px ${r};
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.${F} .${F} {
|
|
28
|
+
right: 0 ${r};
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
.${I} .${I} {
|
|
32
|
+
margin-right: 0 ${r};
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
body[${K}] {
|
|
36
|
+
${oe}: ${s}px;
|
|
37
|
+
}
|
|
38
|
+
`},q=function(){var e=parseInt(document.body.getAttribute(`data-scroll-locked`)||`0`,10);return isFinite(e)?e:0},Te=function(){o.useEffect(function(){return document.body.setAttribute(K,(q()+1).toString()),function(){var e=q()-1;e<=0?document.body.removeAttribute(K):document.body.setAttribute(K,e.toString())}},[])},Ee=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,i=r===void 0?`margin`:r;Te();var a=o.useMemo(function(){return Se(i)},[i]);return o.createElement(Ce,{styles:we(a,!t,i,n?``:`!important`)})},J=!1;if(typeof window<`u`)try{var Y=Object.defineProperty({},`passive`,{get:function(){return J=!0,!0}});window.addEventListener(`test`,Y,Y),window.removeEventListener(`test`,Y,Y)}catch{J=!1}var X=J?{passive:!1}:!1,De=function(e){return e.tagName===`TEXTAREA`},Z=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!==`hidden`&&!(n.overflowY===n.overflowX&&!De(e)&&n[t]===`visible`)},Oe=function(e){return Z(e,`overflowY`)},ke=function(e){return Z(e,`overflowX`)},Ae=function(e,t){var n=t.ownerDocument,r=t;do{if(typeof ShadowRoot<`u`&&r instanceof ShadowRoot&&(r=r.host),Ne(e,r)){var i=Pe(e,r);if(i[1]>i[2])return!0}r=r.parentNode}while(r&&r!==n.body);return!1},je=function(e){return[e.scrollTop,e.scrollHeight,e.clientHeight]},Me=function(e){return[e.scrollLeft,e.scrollWidth,e.clientWidth]},Ne=function(e,t){return e===`v`?Oe(t):ke(t)},Pe=function(e,t){return e===`v`?je(t):Me(t)},Fe=function(e,t){return e===`h`&&t===`rtl`?-1:1},Ie=function(e,t,n,r,i){var a=Fe(e,window.getComputedStyle(t).direction),o=a*r,s=n.target,c=t.contains(s),l=!1,u=o>0,d=0,f=0;do{if(!s)break;var p=Pe(e,s),m=p[0],h=p[1]-p[2]-a*m;(m||h)&&Ne(e,s)&&(d+=h,f+=m);var g=s.parentNode;s=g&&g.nodeType===Node.DOCUMENT_FRAGMENT_NODE?g.host:g}while(!c&&s!==document.body||c&&(t.contains(s)||t===s));return(u&&(i&&Math.abs(d)<1||!i&&o>d)||!u&&(i&&Math.abs(f)<1||!i&&-o>f))&&(l=!0),l},Q=function(e){return`changedTouches`in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Le=function(e){return[e.deltaX,e.deltaY]},Re=function(e){return e&&`current`in e?e.current:e},ze=function(e,t){return e[0]===t[0]&&e[1]===t[1]},Be=function(e){return`
|
|
39
|
+
.block-interactivity-${e} {pointer-events: none;}
|
|
40
|
+
.allow-interactivity-${e} {pointer-events: all;}
|
|
41
|
+
`},Ve=0,$=[];function He(e){var t=o.useRef([]),n=o.useRef([0,0]),r=o.useRef(),i=o.useState(Ve++)[0],a=o.useState(W)[0],s=o.useRef(e);o.useEffect(function(){s.current=e},[e]),o.useEffect(function(){if(e.inert){document.body.classList.add(`block-interactivity-${i}`);var t=ie([e.lockRef.current],(e.shards||[]).map(Re),!0).filter(Boolean);return t.forEach(function(e){return e.classList.add(`allow-interactivity-${i}`)}),function(){document.body.classList.remove(`block-interactivity-${i}`),t.forEach(function(e){return e.classList.remove(`allow-interactivity-${i}`)})}}},[e.inert,e.lockRef.current,e.shards]);var c=o.useCallback(function(e,t){if(`touches`in e&&e.touches.length===2||e.type===`wheel`&&e.ctrlKey)return!s.current.allowPinchZoom;var i=Q(e),a=n.current,o=`deltaX`in e?e.deltaX:a[0]-i[0],c=`deltaY`in e?e.deltaY:a[1]-i[1],l,u=e.target,d=Math.abs(o)>Math.abs(c)?`h`:`v`;if(`touches`in e&&d===`h`&&u.type===`range`)return!1;var f=window.getSelection(),p=f&&f.anchorNode;if(p&&(p===u||p.contains(u)))return!1;var m=Ae(d,u);if(!m)return!0;if(m?l=d:(l=d===`v`?`h`:`v`,m=Ae(d,u)),!m)return!1;if(!r.current&&`changedTouches`in e&&(o||c)&&(r.current=l),!l)return!0;var h=r.current||l;return Ie(h,t,e,h===`h`?o:c,!0)},[]),l=o.useCallback(function(e){var n=e;if(!(!$.length||$[$.length-1]!==a)){var r=`deltaY`in n?Le(n):Q(n),i=t.current.filter(function(e){return e.name===n.type&&(e.target===n.target||n.target===e.shadowParent)&&ze(e.delta,r)})[0];if(i&&i.should){n.cancelable&&n.preventDefault();return}if(!i){var o=(s.current.shards||[]).map(Re).filter(Boolean).filter(function(e){return e.contains(n.target)});(o.length>0?c(n,o[0]):!s.current.noIsolation)&&n.cancelable&&n.preventDefault()}}},[]),u=o.useCallback(function(e,n,r,i){var a={name:e,delta:n,target:r,should:i,shadowParent:Ue(r)};t.current.push(a),setTimeout(function(){t.current=t.current.filter(function(e){return e!==a})},1)},[]),d=o.useCallback(function(e){n.current=Q(e),r.current=void 0},[]),f=o.useCallback(function(t){u(t.type,Le(t),t.target,c(t,e.lockRef.current))},[]),p=o.useCallback(function(t){u(t.type,Q(t),t.target,c(t,e.lockRef.current))},[]);o.useEffect(function(){return $.push(a),e.setCallbacks({onScrollCapture:f,onWheelCapture:f,onTouchMoveCapture:p}),document.addEventListener(`wheel`,l,X),document.addEventListener(`touchmove`,l,X),document.addEventListener(`touchstart`,d,X),function(){$=$.filter(function(e){return e!==a}),document.removeEventListener(`wheel`,l,X),document.removeEventListener(`touchmove`,l,X),document.removeEventListener(`touchstart`,d,X)}},[]);var m=e.removeScrollBar,h=e.inert;return o.createElement(o.Fragment,null,h?o.createElement(a,{styles:Be(i)}):null,m?o.createElement(Ee,{noRelative:e.noRelative,gapMode:e.gapMode}):null)}function Ue(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}var We=pe(B,He),Ge=o.forwardRef(function(e,t){return o.createElement(H,N({},e,{ref:t,sideCar:We}))});Ge.classNames=H.classNames;export{l as i,re as n,g as r,Ge as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{c as e}from"./routes-CBm-E8tn.js";function t(t){let n=typeof window<`u`?window.location.origin:``,r=new URLSearchParams({senderAssistantId:t.senderAssistantId,token:t.token});return`${n}${e.connect}?${r.toString()}`}function n(e){let t=e.get(`senderAssistantId`)?.trim(),n=e.get(`token`)?.trim();return!t||!n?null:{senderAssistantId:t,token:n}}export{n,t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{t as r}from"./is-electron-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{t as r}from"./is-electron-LEymSS4C.js";import{n as i,t as a}from"./app-info-3nsDebwR.js";var o=e(t(),1),s=n();function c(){let[e,t]=(0,o.useState)(null);(0,o.useEffect)(()=>{a().then(t)},[]);let n=e??l;return(0,s.jsxs)(`div`,{className:`flex h-svh w-screen flex-col items-center justify-center bg-background px-8 pt-14 pb-8 text-center text-foreground select-none`,children:[(0,s.jsx)(`h1`,{className:`mt-4 text-2xl font-semibold`,children:n.appName}),(0,s.jsx)(`p`,{className:`text-muted-foreground mt-1 mb-7 text-xs`,children:`AI assistant for your Mac`}),(0,s.jsxs)(`dl`,{className:`mb-7 grid grid-cols-[auto_auto] gap-x-4 gap-y-1.5 text-sm`,children:[(0,s.jsx)(`dt`,{className:`text-muted-foreground text-right`,children:`Version`}),(0,s.jsx)(`dd`,{className:`text-left font-mono tabular-nums select-text`,children:n.version}),(0,s.jsx)(`dt`,{className:`text-muted-foreground text-right`,children:`Build`}),(0,s.jsx)(`dd`,{className:`text-left font-mono tabular-nums select-text`,children:n.commitSha})]}),(0,s.jsx)(`a`,{href:n.website,className:`text-primary text-sm hover:underline`,onClick:e=>{r()&&(e.preventDefault(),i())},children:new URL(n.website).host}),(0,s.jsx)(`div`,{className:`text-muted-foreground mt-auto pt-6 text-[11px]`,children:n.copyright})]})}var l={appName:`Vellum`,version:`—`,commitSha:`—`,copyright:`© ${new Date().getFullYear()} Vellum`,website:`https://vellum.ai`};export{c as AboutPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{f as t}from"./native-biometric-rXfe6lHU.js";import{t as n}from"./react-DJZBPgpf.js";import{t as r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as i}from"./jsx-runtime-CVSDxk6A.js";import{a,n as o,o as s}from"./auth-store-BgCpm8aB.js";import{c}from"./routes-CBm-E8tn.js";import{n as l,t as u}from"./login-flow-CUN2stiy.js";import{br as d}from"./index-DD6uDbkv.js";import{r as f,t as p}from"./account-shell-UA4SkMah.js";var m=e(n(),1),h=i();function g(){let e=a(),n=s(),i=o.use.user(),g=o.use.logout(),[_,v]=(0,m.useState)(null),[y,b]=(0,m.useState)(!1),x=async()=>{v(null),b(!0);try{await t(l,u)}catch(e){console.error(`[account] auth flow failed:`,e),v(`Something went wrong. Please try again.`),b(!1)}};return n?(0,h.jsx)(p,{children:(0,h.jsx)(f,{title:`Loading...`})}):e?(0,h.jsxs)(p,{children:[(0,h.jsx)(f,{title:`Welcome${i?.username?`, ${i.username}`:``}!`,subtitle:`You are signed in.`}),(0,h.jsxs)(`div`,{className:`flex flex-col items-center gap-4`,children:[(0,h.jsx)(r,{to:c.assistant,className:`inline-flex w-full items-center justify-center gap-2 rounded-lg bg-[var(--primary-base)] px-6 py-3 text-sm font-medium text-[var(--content-inset)] no-underline transition-colors hover:bg-[var(--primary-hover)]`,children:`Go to your assistant`}),(0,h.jsx)(`button`,{type:`button`,onClick:async()=>{await g(),d(c.account.login)},className:`cursor-pointer bg-transparent text-sm font-normal text-[var(--content-secondary)] transition-colors hover:text-[var(--content-default)]`,children:`Sign out`})]})]}):(0,h.jsxs)(p,{children:[(0,h.jsx)(f,{title:`Welcome to Vellum`,subtitle:`Sign in to get started.`}),_&&(0,h.jsx)(`p`,{className:`text-center text-sm text-[var(--system-negative-strong)]`,children:_}),(0,h.jsx)(`div`,{className:`flex flex-col items-center gap-4`,children:(0,h.jsx)(`button`,{type:`button`,onClick:()=>void x(),disabled:y,className:`inline-flex w-full cursor-pointer items-center justify-center gap-2 rounded-lg bg-[var(--primary-base)] px-6 py-3 text-sm font-medium text-[var(--content-inset)] transition-colors hover:bg-[var(--primary-hover)] disabled:opacity-50`,children:`Sign in`})})]})}export{g as AccountPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./jsx-runtime-CVSDxk6A.js";import"./
|
|
1
|
+
import{t as e}from"./jsx-runtime-CVSDxk6A.js";import{t}from"./notice-BQRdh9ak.js";import"./src-C-RxAhZg.js";var n=e(),r=(0,n.jsx)(`svg`,{width:`20`,height:`20`,viewBox:`0 0 20 20`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:(0,n.jsx)(`path`,{d:`M7.5 15L12.5 10L7.5 5`,stroke:`currentColor`,strokeWidth:`1.67`,strokeLinecap:`round`,strokeLinejoin:`round`})});function i({onSubmit:e,error:i,children:a,submitLabel:o,submittingLabel:s,isSubmitting:c,footer:l}){return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(`form`,{onSubmit:e,className:`flex flex-col gap-4`,children:[i&&(0,n.jsx)(t,{tone:`error`,children:i}),(0,n.jsx)(`div`,{className:`flex flex-col gap-3`,children:a}),(0,n.jsxs)(`button`,{type:`submit`,disabled:c,className:`mt-2 inline-flex w-full cursor-pointer items-center justify-center gap-2 rounded-lg bg-[var(--primary-base)] px-6 py-3 text-sm font-medium text-[var(--content-inset)] transition-colors hover:bg-[var(--primary-hover)] disabled:cursor-wait disabled:opacity-50`,children:[c?s:o,r]})]}),l&&(0,n.jsx)(`div`,{className:`mt-8 text-center`,children:l})]})}function a(e){return(0,n.jsx)(`input`,{...e,className:`w-full rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] px-4 py-3 text-sm text-[var(--content-default)] outline-none placeholder:text-[var(--content-tertiary)] focus:border-[var(--primary-base)]/50`})}function o({title:e,subtitle:t}){return(0,n.jsxs)(`div`,{className:`mb-8 text-center`,children:[(0,n.jsx)(`h1`,{className:`mb-2 font-serif text-[2rem] font-bold italic text-[var(--content-default)]`,children:e}),t&&(0,n.jsx)(`p`,{className:`text-sm text-[var(--content-secondary)]`,children:t})]})}function s({children:e}){return(0,n.jsx)(`div`,{className:`flex min-h-screen items-center justify-center bg-[var(--surface-base)]`,children:(0,n.jsx)(`div`,{className:`w-full max-w-[480px] px-6`,children:(0,n.jsx)(`div`,{className:`flex flex-col items-center gap-10`,children:(0,n.jsx)(`div`,{className:`w-full`,children:e})})})})}export{a as i,i as n,o as r,s as t};
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-CmeVLfq0.js";import{t as n}from"./react-DJZBPgpf.js";import{t as r}from"./button-D1p5nVKJ.js";import{t as i}from"./jsx-runtime-CVSDxk6A.js";import{t as a}from"./typography-D5f7kt80.js";import{t as o}from"./createLucideIcon-IRfcSUxS.js";import{t as s}from"./arrow-left-DI9551VI.js";import{t as c}from"./brain-BLDXGaUy.js";import{t as l}from"./chevron-down-qD-re7AW.js";import{t as u}from"./chevron-right-DqqmezXC.js";import{t as d}from"./circle-check-VSiny8yl.js";import{w as f}from"./menu-Bjq0lFxx.js";import{t as p}from"./code-Czx7d7SK.js";import{t as m}from"./file-text-DDcypanB.js";import{t as h}from"./globe-BgFbM_BQ.js";import{t as g}from"./repeat-Hff7oFdK.js";import{t as _}from"./triangle-alert-CuLBwl1x.js";import{t as v}from"./x-CwzRJv9J.js";import"./src-C-RxAhZg.js";import{t as y}from"./tag-BriFUtvF.js";import{Bi as b,Fa as x,Ft as S,Ha as ee,It as C,Lt as te,Mi as ne,Oi as w,Rt as T,ft as re,ht as E,ki as D,mt as ie,oa as ae,pt as oe,tt as O,zi as se}from"./index-DD6uDbkv.js";import{t as ce}from"./status-badge-pill-DWywzjvD.js";var le=o(`file-pen`,[[`path`,{d:`M12.659 22H18a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v9.34`,key:`o6klzx`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`,key:`wfsgrz`}],[`path`,{d:`M10.378 12.622a1 1 0 0 1 3 3.003L8.36 20.637a2 2 0 0 1-.854.506l-2.867.837a.5.5 0 0 1-.62-.62l.836-2.869a2 2 0 0 1 .506-.853z`,key:`zhnas1`}]]),ue=o(`folder-input`,[[`path`,{d:`M2 9V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H20a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-1`,key:`fm4g5t`}],[`path`,{d:`M2 13h10`,key:`pgb2dq`}],[`path`,{d:`m9 16 3-3-3-3`,key:`6m91ic`}]]),k=e(n(),1),A=``;function j(e,t){switch(e){case`complete`:case`completed`:return`completed`;case`failed`:case`error`:return`error`;case void 0:return t;default:return`running`}}function de(e){return(e.messageId?.startsWith(`local-marker-`)??!1)||(e.content?.startsWith(`↻ Steering: `)??!1)}function M(e){let t=e??``;return t.startsWith(`↻ Steering: `)?t.slice(S.length):t}function N(e){let t=e[e.length-1];t&&(t.kind===`agent`||t.kind===`thinking`)&&!t.isComplete&&(e[e.length-1]={...t,isComplete:!0})}function P(e,t){if(t.updateType===`agent_message_chunk`&&de(t)){N(e),e.push({kind:`user`,id:t.messageId??`steer-${e.length}`,content:M(t.content)});return}switch(t.updateType){case`user_message_chunk`:{let n=t.messageId??A,r=M(t.content),i=e[e.length-1];i&&i.kind===`user`&&i.id===n?e[e.length-1]={...i,content:i.content+r}:(N(e),e.push({kind:`user`,id:n,content:r}));let a=e[e.length-1].content;for(let t=0;t<e.length-1;t++){let n=e[t];if(n.kind===`user`&&n.id.startsWith(`local-marker-`)&&n.content===a){e.splice(t,1);break}}return}case`agent_message_chunk`:{let n=t.messageId??A,r=e[e.length-1];if(r&&r.kind===`agent`&&r.messageId===n){e[e.length-1]={...r,content:r.content+(t.content??``)};return}if(n!==A&&r&&r.kind===`agent`&&r.messageId===A&&!r.isComplete&&r.content===(t.content??``)){e[e.length-1]={...r,messageId:n};return}N(e),e.push({kind:`agent`,messageId:n,content:t.content??``,isComplete:!1});return}case`agent_thought_chunk`:{let n=t.messageId??A,r=e[e.length-1];if(r&&r.kind===`thinking`&&r.messageId===n){e[e.length-1]={...r,content:r.content+(t.content??``)};return}N(e),e.push({kind:`thinking`,messageId:n,content:t.content??``,isComplete:!1});return}case`tool_call`:{let n=t.toolCallId;if(n===void 0)return;N(e),e.push({kind:`tool`,toolCallId:n,title:t.toolTitle??``,toolKind:t.toolKind,status:j(t.toolStatus,`running`),content:t.content,locations:F(t),rawInput:t.rawInput,rawOutput:t.rawOutput});return}case`tool_call_update`:{let n=t.toolCallId;if(n===void 0)return;let r=e.findIndex(e=>e.kind===`tool`&&e.toolCallId===n);if(r===-1)return;let i=e[r],a=F(t);e[r]={...i,title:t.toolTitle??i.title,toolKind:t.toolKind??i.toolKind,status:j(t.toolStatus,i.status),content:t.content??i.content,locations:a??i.locations,rawInput:t.rawInput===void 0?i.rawInput:t.rawInput,rawOutput:t.rawOutput===void 0?i.rawOutput:t.rawOutput};return}case`plan`:{let n=fe(t.content);if(n===null)return;let r=e.findIndex(e=>e.kind===`plan`),i={kind:`plan`,entries:n};r===-1?(N(e),e.push(i)):e[r]=i;return}}}function F(e){let t=e.locations;if(!Array.isArray(t))return;let n=[];for(let e of t){let t=e??{};typeof t.path==`string`&&n.push(typeof t.line==`number`?{path:t.path,line:t.line}:{path:t.path})}return n}function fe(e){if(!e)return null;let t;try{t=JSON.parse(e)}catch{return null}let n=Array.isArray(t)?t:Array.isArray(t?.entries)?t.entries:null;return n===null?null:n.map(e=>{let t=e??{},n=t.content??t.label??``;return{label:typeof n==`string`?n:String(n),checked:t.checked===!0||t.status===`completed`}})}function pe(e){let t=[];for(let n of e)P(t,n);return t}function me(e,t){if(e===t)return{kind:`identity`};if(e===null)return{kind:`first`};if(t.length<e.length)return{kind:`fallback`};for(let n=0;n<e.length;n++)if(e[n]!==t[n])return n===e.length-1&&t.length===e.length?{kind:`mutate-last`}:{kind:`fallback`};return t.length===e.length?{kind:`identity`}:{kind:`append`,from:e.length}}function I(){let e=null,t=[];function n(n){return t=pe(n),e=n,t}function r(r){let i=me(e,r);switch(i.kind){case`identity`:return t;case`first`:return n(r);case`append`:{let n=t.slice();for(let e=i.from;e<r.length;e++)P(n,r[e]);return e=r,t=n,t}case`mutate-last`:case`fallback`:return n(r)}}return{project:r}}function L(e){let t=(0,k.useRef)(null);return t.current??=I(),t.current.project(e)}function R(e){if(!e)return[];let t;try{t=JSON.parse(e)}catch{let t=e.trimStart();return t.startsWith(`{`)||t.startsWith(`[`)?[]:[{type:`content`,text:e}]}let n=Array.isArray(t)?t:[t],r=[];for(let e of n){let t=z(e);t&&r.push(t)}return r}function z(e){if(typeof e!=`object`||!e)return null;let t=e;switch(t.type){case`content`:return{type:`content`,text:he(t.content)};case`diff`:return typeof t.path!=`string`||typeof t.newText!=`string`?null:{type:`diff`,path:t.path,newText:t.newText,...typeof t.oldText==`string`?{oldText:t.oldText}:{}};case`terminal`:{let e=ge(t);return e===void 0?{type:`terminal`}:{type:`terminal`,text:e}}default:return null}}function he(e){if(typeof e==`string`)return e;if(typeof e==`object`&&e){let t=e.text;if(typeof t==`string`)return t}return``}function ge(e){if(typeof e.text==`string`)return e.text;if(typeof e.output==`string`)return e.output;if(typeof e.content==`string`)return e.content;if(typeof e.content==`object`&&e.content!==null){let t=e.content.text;if(typeof t==`string`)return t}}function B(e){if(typeof e!=`object`||!e)return;let t=e.command;return typeof t==`string`?t:void 0}function V(e){return R(e).filter(e=>e.type===`content`||e.type===`terminal`).map(e=>`text`in e?e.text??``:``).filter(e=>e.length>0).join(`
|
|
2
|
+
`)}function H(e){if(e!=null){if(typeof e==`string`)return e;if(typeof e==`object`)try{return JSON.stringify(e,null,2)}catch{return String(e)}return String(e)}}function U(e,t){let n=new Map;for(let t of e)t.type===`diff`&&n.set(t.path,{path:t.path,newText:t.newText,...t.oldText===void 0?{}:{oldText:t.oldText}});for(let e of t??[])n.has(e.path)||n.set(e.path,{path:e.path});return Array.from(n.values())}var W=i();function _e({content:e,isComplete:t}){return(0,W.jsxs)(`div`,{"data-testid":`acp-chat-agent-message`,className:`flex w-full flex-col items-start text-chat text-[var(--content-default)]`,children:[(0,W.jsx)(O,{content:e}),!t&&(0,W.jsx)(E,{className:`mt-1`,"data-testid":`acp-chat-agent-streaming`})]})}function ve({entries:e}){return e.length===0?null:(0,W.jsxs)(`div`,{"data-testid":`acp-chat-plan-block`,className:`w-full rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] p-3`,children:[(0,W.jsxs)(`div`,{className:`mb-2 flex items-center gap-1.5 text-[var(--content-tertiary)]`,children:[(0,W.jsx)(ae,{"aria-hidden":!0,className:`h-3.5 w-3.5 shrink-0`}),(0,W.jsx)(a,{variant:`body-small-emphasised`,className:`text-inherit`,children:`Plan`})]}),(0,W.jsx)(`ul`,{className:`flex flex-col gap-1.5`,children:e.map((e,t)=>(0,W.jsxs)(`li`,{"data-testid":`acp-chat-plan-entry`,"data-checked":e.checked,className:`flex items-start gap-2`,children:[e.checked?(0,W.jsx)(d,{"aria-hidden":!0,className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--system-positive-strong)]`}):(0,W.jsx)(f,{"aria-hidden":!0,className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-disabled)]`}),(0,W.jsx)(`span`,{className:e.checked?`text-body-small-default text-[var(--content-tertiary)] line-through`:`text-body-small-default text-[var(--content-default)]`,children:e.label})]},t))})]})}function ye(e){switch(e){case`max_tokens`:case`max_turn_requests`:return`Stopped: limit reached`;case`refusal`:return`Refused`;case`cancelled`:return`Cancelled`;default:return`Completed`}}function be(e){return new Date(e).toLocaleTimeString([],{hour:`numeric`,minute:`2-digit`})}function G({completedAt:e}){return e===void 0?null:(0,W.jsxs)(`span`,{"data-testid":`acp-chat-terminal-time`,children:[`at `,be(e)]})}function xe({status:e,stopReason:t,error:n,completedAt:r}){if(T(e))return null;if(e===`failed`)return(0,W.jsxs)(`div`,{"data-testid":`acp-chat-terminal-block`,"data-terminal-kind":`failed`,className:`flex items-start gap-2 rounded-lg bg-[var(--system-negative-weak)] px-3 py-2 text-body-small-default text-[var(--system-negative-strong)]`,children:[(0,W.jsx)(`span`,{"aria-hidden":!0,"data-testid":`acp-chat-terminal-failed-icon`,className:`flex h-[12px] w-4 shrink-0 items-center justify-center`,children:(0,W.jsx)(_,{className:`h-4 w-4`})}),(0,W.jsx)(`span`,{children:n??`Run failed`})]});if(e===`cancelled`)return(0,W.jsxs)(`div`,{"data-testid":`acp-chat-terminal-block`,"data-terminal-kind":`cancelled`,className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,W.jsx)(x,{"aria-hidden":!0,className:`h-4 w-4 shrink-0`}),(0,W.jsx)(`span`,{children:`Cancelled`}),(0,W.jsx)(G,{completedAt:r})]});let i=ye(t);return(0,W.jsxs)(`div`,{"data-testid":`acp-chat-terminal-block`,"data-terminal-kind":`completed`,className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,W.jsx)(d,{"aria-hidden":!0,className:`h-4 w-4 shrink-0 text-[var(--system-positive-strong)]`}),(0,W.jsx)(`span`,{children:i}),(0,W.jsx)(G,{completedAt:r})]})}function Se({showDot:e,isLast:t,children:n}){return(0,W.jsxs)(`div`,{className:`relative flex items-start gap-2${t?``:` pb-4`}`,children:[!t&&(0,W.jsx)(`div`,{"aria-hidden":!0,className:`absolute bottom-0 left-[6.5px] w-px bg-[var(--border-element)] ${e?`top-[16px]`:`top-0`}`}),e?(0,W.jsx)(`span`,{"aria-hidden":!0,"data-testid":`acp-chat-timeline-dot`,className:`flex h-[14px] w-[14px] shrink-0 items-center justify-center`,children:(0,W.jsx)(`span`,{className:`h-[5px] w-[5px] rounded-full bg-[var(--content-disabled)]`})}):(0,W.jsx)(`span`,{"aria-hidden":!0,className:`h-[14px] w-[14px] shrink-0`}),(0,W.jsx)(`div`,{className:`min-w-0 flex-1`,children:n})]})}function Ce({content:e,isComplete:t}){let[n,r]=(0,k.useState)(null),i=n??!t,a=e.trim().length>0,o=t?`Thought process`:`Thinking`,s=t?(0,W.jsx)(c,{"aria-hidden":!0,className:`h-3.5 w-3.5 shrink-0`}):(0,W.jsx)(E,{dotSize:5,className:`shrink-0`,"data-testid":`acp-chat-thinking-streaming`});return a?(0,W.jsxs)(`div`,{"data-testid":`acp-chat-thinking-block`,className:`w-full`,children:[(0,W.jsxs)(`button`,{type:`button`,"aria-expanded":i,onClick:()=>r(!i),"data-testid":`acp-chat-thinking-toggle`,className:`flex w-full items-center gap-1.5 text-body-small-default text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-secondary)]`,children:[i?(0,W.jsx)(l,{"aria-hidden":!0,className:`h-3.5 w-3.5 shrink-0`}):(0,W.jsx)(u,{"aria-hidden":!0,className:`h-3.5 w-3.5 shrink-0`}),s,(0,W.jsx)(`span`,{children:o})]}),i&&(0,W.jsx)(`div`,{"data-testid":`acp-chat-thinking-body`,className:`mt-1.5 border-l-2 border-[var(--border-base)] pl-3 text-body-small-default text-[var(--content-tertiary)]`,children:(0,W.jsx)(O,{content:e})})]}):(0,W.jsx)(`div`,{"data-testid":`acp-chat-thinking-block`,className:`w-full`,children:(0,W.jsxs)(`div`,{className:`flex w-full items-center gap-1.5 text-body-small-default text-[var(--content-tertiary)]`,children:[s,(0,W.jsx)(`span`,{children:o})]})})}var we={running:`neutral`,completed:`positive`,error:`negative`,ended:`neutral`},Te={running:`Running`,completed:`Completed`,error:`Failed`,ended:`Ended`},Ee={read:`Read file`,edit:`Edit file`,delete:`Delete file`,move:`Move file`,search:`Search`,execute:`Run command`,think:`Thinking`,fetch:`Fetch`,switch_mode:`Switch mode`},De=`Tool call`,Oe={read:m,edit:le,delete:w,move:ue,search:b,execute:D,think:c,fetch:h,switch_mode:g},ke=new Set([`read`,`edit`,`delete`,`move`]);function Ae({toolKind:e}){return(0,W.jsx)(e&&Oe[e]||p,{"aria-hidden":!0,className:`h-4 w-4 shrink-0 text-[var(--content-tertiary)]`})}function K({label:e,value:t,testId:n}){return(0,W.jsxs)(`div`,{"data-testid":n,children:[(0,W.jsx)(`div`,{className:`mb-1 text-body-small-default text-[var(--content-tertiary)]`,children:e}),(0,W.jsx)(`pre`,{className:`max-h-60 overflow-auto rounded-md border border-[var(--border-element)] bg-[var(--surface-base)] p-2.5 font-mono text-body-small-default text-[var(--content-secondary)]`,children:t})]})}function je({block:e,isTerminal:t=!1,onOpenDiff:n,onOpenOutput:r}){let[i,o]=(0,k.useState)(!1),s=(0,k.useMemo)(()=>R(e.content),[e.content]),c=(0,k.useMemo)(()=>V(e.content),[e.content]),d=(0,k.useMemo)(()=>c.split(`
|
|
3
|
+
`).map(e=>e.trim()).find(e=>e.length>0&&!e.startsWith("```"))||`View output`,[c]),f=(0,k.useMemo)(()=>U(s,e.locations),[s,e.locations]),p=t&&e.status===`running`?`ended`:e.status,h=p===`running`,g=e.toolKind&&Ee[e.toolKind]||De,_=B(e.rawInput)??e.title,v=_&&_!==g&&(!ke.has(e.toolKind??``)||f.length===0)?_:null,b=H(e.rawInput),x=H(e.rawOutput),S=b!==void 0||x!==void 0;return(0,W.jsxs)(`div`,{"data-testid":`acp-chat-tool-card`,"data-status":e.status,className:`w-full rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] p-3`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,W.jsx)(Ae,{toolKind:e.toolKind}),(0,W.jsx)(a,{variant:`body-small-emphasised`,className:`min-w-0 flex-1 truncate text-[var(--content-default)]`,title:e.title,children:g}),(0,W.jsx)(y,{tone:we[p],"data-testid":`acp-chat-tool-status`,children:Te[p]}),h&&(0,W.jsx)(E,{className:`shrink-0`,"data-testid":`acp-chat-tool-running`})]}),v&&(0,W.jsx)(`div`,{"data-testid":`acp-chat-tool-detail`,className:`mt-1.5 font-mono text-body-small-default whitespace-pre-wrap break-words text-[var(--content-secondary)]`,children:v}),f.length>0&&(0,W.jsx)(`div`,{className:`mt-2 flex flex-wrap gap-1.5`,children:f.map(t=>{let r=t.oldText!==void 0||t.newText!==void 0,i=`flex max-w-full items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-2 py-1 text-body-small-default text-[var(--content-secondary)]`;return r?(0,W.jsxs)(`button`,{type:`button`,"data-testid":`acp-chat-tool-file-chip`,onClick:()=>n(e.toolCallId,t),title:t.path,className:`${i} cursor-pointer transition-colors hover:bg-[var(--surface-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--border-focus)]`,children:[(0,W.jsx)(m,{"aria-hidden":!0,className:`h-3.5 w-3.5 shrink-0`}),(0,W.jsx)(`span`,{className:`truncate font-mono`,children:t.path})]},t.path):(0,W.jsxs)(`span`,{"data-testid":`acp-chat-tool-file-ref`,title:t.path,className:i,children:[(0,W.jsx)(m,{"aria-hidden":!0,className:`h-3.5 w-3.5 shrink-0`}),(0,W.jsx)(`span`,{className:`truncate font-mono`,children:t.path})]},t.path)})}),c.length>0&&(0,W.jsxs)(`button`,{type:`button`,"data-testid":`acp-chat-tool-output-open`,onClick:()=>r?.(e.toolCallId),className:`mt-2 flex w-full items-center gap-2 rounded-md border border-[var(--border-element)] bg-[var(--surface-base)] px-2.5 py-2 text-left transition-colors hover:bg-[var(--surface-hover)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--border-focus)]`,children:[(0,W.jsx)(D,{"aria-hidden":!0,className:`h-3.5 w-3.5 shrink-0 text-[var(--content-tertiary)]`}),(0,W.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-body-small-default text-[var(--content-secondary)]`,children:d}),(0,W.jsx)(u,{"aria-hidden":!0,className:`h-3.5 w-3.5 shrink-0 text-[var(--content-tertiary)]`})]}),S&&(0,W.jsxs)(`div`,{className:`mt-2`,"data-testid":`acp-chat-tool-raw`,children:[(0,W.jsxs)(`button`,{type:`button`,"data-testid":`acp-chat-tool-raw-toggle`,"aria-expanded":i,onClick:()=>o(e=>!e),className:`flex items-center gap-1 text-body-small-default text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-default)]`,children:[i?(0,W.jsx)(l,{"aria-hidden":!0,className:`h-3.5 w-3.5 shrink-0`}):(0,W.jsx)(u,{"aria-hidden":!0,className:`h-3.5 w-3.5 shrink-0`}),(0,W.jsx)(`span`,{children:i?`Hide raw input/output`:`Show raw input/output`})]}),i&&(0,W.jsxs)(`div`,{className:`mt-1.5 flex flex-col gap-2`,children:[b!==void 0&&(0,W.jsx)(K,{label:`Raw input`,value:b,testId:`acp-chat-tool-raw-input`}),x!==void 0&&(0,W.jsx)(K,{label:`Raw output`,value:x,testId:`acp-chat-tool-raw-output`})]})]})]})}function Me({content:e}){return(0,W.jsx)(`div`,{"data-testid":`acp-chat-user-turn`,className:`flex w-full justify-end`,children:(0,W.jsx)(`div`,{className:`max-w-[80%] rounded-lg bg-[var(--surface-lift)] px-4 py-3 whitespace-pre-wrap text-chat text-[var(--content-default)]`,children:e})})}function Ne(e,t){let n=e=>new Intl.NumberFormat(void 0,{style:`currency`,currency:t}).format(e);return e>0&&e<.01?`<${n(.01)}`:n(e)}var q=new Intl.NumberFormat(`en-US`);function J({label:e,value:t}){return(0,W.jsxs)(`div`,{className:`flex items-baseline gap-1`,"data-usage-stat":e.toLowerCase(),children:[(0,W.jsx)(a,{variant:`label-small-default`,className:`text-[var(--content-tertiary)]`,children:e}),(0,W.jsx)(a,{variant:`body-small-default`,className:`text-[var(--content-secondary)] tabular-nums`,children:t})]})}function Pe({entry:e}){let{inputTokens:t,outputTokens:n,costAmount:r,costCurrency:i}=e;if(t===void 0&&n===void 0)return null;let a=t??0,o=n??0,s=r!=null&&i!=null;return(0,W.jsxs)(`div`,{className:`flex items-center gap-3`,"data-testid":`acp-usage-meter`,children:[(0,W.jsx)(J,{label:`Input`,value:q.format(a)}),(0,W.jsx)(J,{label:`Output`,value:q.format(o)}),s&&(0,W.jsx)(J,{label:`Cost`,value:Ne(r,i)})]})}function Fe({content:e}){return(0,W.jsx)(`div`,{"data-testid":`acp-chat-command-output`,className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] p-3 [&_pre]:!max-h-none`,children:(0,W.jsx)(O,{content:V(e),hardLineBreaks:!0})})}var Y=2e3;function X(e){if(e===``)return[];let t=e.split(`
|
|
4
|
+
`);return e.endsWith(`
|
|
5
|
+
`)&&t.pop(),t}function Ie(e,t){let n=e.length,r=t.length,i=Array.from({length:n+1},()=>Array(r+1).fill(0));for(let a=n-1;a>=0;a--)for(let n=r-1;n>=0;n--)i[a][n]=e[a]===t[n]?i[a+1][n+1]+1:Math.max(i[a+1][n],i[a][n+1]);let a=[],o=0,s=0;for(;o<n&&s<r;)e[o]===t[s]?(a.push({type:`ctx`,text:e[o],oldNo:o+1,newNo:s+1}),o++,s++):i[o+1][s]>=i[o][s+1]?(a.push({type:`del`,text:e[o],oldNo:o+1}),o++):(a.push({type:`add`,text:t[s],newNo:s+1}),s++);for(;o<n;)a.push({type:`del`,text:e[o],oldNo:o+1}),o++;for(;s<r;)a.push({type:`add`,text:t[s],newNo:s+1}),s++;return a}function Le(e,t){let n=X(e),r=X(t);return n.length>Y||r.length>Y?[{type:`too-large`,text:`Diff too large to render (over ${Y.toLocaleString()} lines)`}]:n.length===0?r.map((e,t)=>({type:`add`,text:e,newNo:t+1})):r.length===0?n.map((e,t)=>({type:`del`,text:e,oldNo:t+1})):Ie(n,r)}var Z=`—`;function Q(e){switch(e){case`add`:return`bg-[var(--system-positive-weak)] text-[var(--system-positive-strong)]`;case`del`:return`bg-[var(--system-negative-weak)] text-[var(--system-negative-strong)]`;case`too-large`:return`text-[var(--content-tertiary)] italic`;default:return`text-[var(--content-tertiary)]`}}function Re(e){switch(e){case`add`:return`+`;case`del`:return`-`;default:return` `}}function ze({path:e,oldText:t,newText:n}){let r=Le(t??``,n??``);return(0,W.jsx)(`div`,{"aria-label":`Diff for ${e}`,"data-testid":`acp-chat-file-diff`,className:`flex flex-col overflow-hidden rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)]`,children:(0,W.jsx)(`div`,{className:`overflow-x-auto font-mono text-xs`,children:r.map((e,t)=>(0,W.jsx)(Be,{row:e},t))})})}function Be({row:e}){return e.type===`too-large`?(0,W.jsx)(`div`,{"data-diff-type":`too-large`,className:`px-3 py-2 whitespace-pre-wrap ${Q(e.type)}`,children:e.text}):(0,W.jsxs)(`div`,{"data-diff-type":e.type,className:`flex items-start whitespace-pre ${Q(e.type)}`,children:[(0,W.jsx)(`span`,{className:`w-10 shrink-0 select-none px-2 text-right text-[var(--content-tertiary)] tabular-nums`,children:e.oldNo??Z}),(0,W.jsx)(`span`,{className:`w-10 shrink-0 select-none px-2 text-right text-[var(--content-tertiary)] tabular-nums`,children:e.newNo??Z}),(0,W.jsx)(`span`,{className:`w-4 shrink-0 select-none text-center`,children:Re(e.type)}),(0,W.jsx)(`span`,{className:`flex-1 pr-3`,children:e.text})]})}var Ve=80;function $(e){return e.scrollHeight-e.clientHeight-e.scrollTop<=Ve}function He(e){let t=(0,k.useRef)(null),n=(0,k.useRef)(!0),[r,i]=(0,k.useState)(!1),a=(0,k.useCallback)(()=>{let e=t.current;e&&(e.scrollTop=e.scrollHeight)},[]),o=(0,k.useCallback)(()=>{let e=t.current;if(!e)return;let r=$(e);n.current=r,i(e=>e===!r?e:!r)},[]),s=(0,k.useCallback)(()=>{n.current=!0,a(),i(!1)},[a]),c=(0,k.useCallback)(e=>{let r=t.current;r&&r.removeEventListener(`scroll`,o),t.current=e,e&&(e.addEventListener(`scroll`,o,{passive:!0}),n.current?e.scrollTop=e.scrollHeight:o())},[o]);return(0,k.useLayoutEffect)(()=>{n.current?a():o()},[e,a,o]),{scrollRef:c,showScrollToLatest:r,scrollToLatest:s}}function Ue(e,t){switch(e.kind){case`user`:return`user-${e.id||t}`;case`agent`:return`agent-${e.messageId||t}`;case`thinking`:return`thinking-${e.messageId||t}`;case`tool`:return`tool-${e.toolCallId}`;case`plan`:return`plan`}}var We=[];function Ge({entry:e,onClose:t}){let n=T(e.status),i=L(C(t=>t.byId[e.acpSessionId]?.events??We)),[o,s]=(0,k.useState)(null),[c,l]=(0,k.useState)(e.acpSessionId);c!==e.acpSessionId&&(l(e.acpSessionId),s(null));let d=(0,k.useCallback)((e,t)=>s({kind:`diff`,toolCallId:e,path:t.path}),[]),f=(0,k.useCallback)(e=>s({kind:`output`,toolCallId:e}),[]),p=(0,k.useCallback)(()=>s(null),[]),m=(0,k.useMemo)(()=>o?i.find(e=>e.kind===`tool`&&e.toolCallId===o.toolCallId)??null:null,[o,i]),h=(0,k.useMemo)(()=>o?.kind!==`diff`||!m?null:U(R(m.content),m.locations).find(e=>e.path===o.path)??null,[o,m]),g=o?.kind===`diff`?o.path:m?B(m.rawInput)??m.title??`Output`:`Output`,{scrollRef:_,showScrollToLatest:v,scrollToLatest:y}=He((0,k.useMemo)(()=>({blocks:i,status:e.status,completedAt:e.completedAt}),[i,e.status,e.completedAt])),b=!n;return(0,W.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden rounded-xl bg-[var(--surface-lift)]`,children:[o&&(0,W.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-[var(--border-hover)] px-5 py-3`,children:[(0,W.jsx)(`button`,{type:`button`,onClick:p,title:e.agent,className:`min-w-0 shrink cursor-pointer truncate text-left text-[var(--content-default)] hover:underline`,children:(0,W.jsx)(a,{variant:`body-small-default`,as:`span`,children:e.agent})}),(0,W.jsx)(u,{className:`h-2.5 w-2.5 shrink-0 text-[var(--content-tertiary)]`,"aria-hidden":!0}),(0,W.jsx)(a,{variant:`body-small-default`,as:`span`,title:g,className:`min-w-0 shrink truncate font-mono text-[var(--content-secondary)]`,children:g})]}),(0,W.jsx)(Ke,{entry:e,isRunning:n,onClose:t,showBack:!!o,onBack:p},`header-${e.acpSessionId}`),o?(0,W.jsx)(`div`,{className:`flex-1 overflow-y-auto px-5 py-5`,children:o.kind===`diff`?(0,W.jsx)(ze,{path:o.path,oldText:h?.oldText,newText:h?.newText}):(0,W.jsx)(Fe,{content:m?.content})}):(0,W.jsxs)(`div`,{className:`relative min-h-0 flex-1`,children:[(0,W.jsxs)(`div`,{ref:_,"data-testid":`acp-chat-conversation`,className:`flex h-full flex-col gap-4 overflow-y-auto px-5 py-5`,children:[(0,W.jsx)(qe,{task:e.task}),(0,W.jsx)(`div`,{className:`flex flex-col`,"data-testid":`acp-chat-timeline`,children:i.map((e,t)=>(0,W.jsx)(Se,{showDot:t===0||t===i.length-1||e.kind===`tool`||e.kind===`plan`,isLast:t===i.length-1,children:(0,W.jsx)(Je,{block:e,isTerminal:b,onOpenDiff:d,onOpenOutput:f})},Ue(e,t)))}),!n&&(0,W.jsx)(xe,{status:e.status,stopReason:e.stopReason,error:e.error,completedAt:e.completedAt})]}),v&&(0,W.jsx)(r,{variant:`outlined`,size:`compact`,iconOnly:(0,W.jsx)(ee,{}),onClick:y,"aria-label":`Go to newest`,tooltip:`Go to newest`,"data-testid":`acp-chat-scroll-to-latest`,className:`absolute bottom-3 left-1/2 -translate-x-1/2 rounded-full shadow-md`})]}),n&&!o&&(0,W.jsx)(Ye,{acpSessionId:e.acpSessionId},`steer-${e.acpSessionId}`)]})}function Ke({entry:e,isRunning:n,onClose:i,showBack:o=!1,onBack:c}){let[l,u]=(0,k.useState)(!1),d=te(e.status,e.stopReason),f=(0,k.useCallback)(()=>{u(!0),oe(e.acpSessionId).catch(e=>{u(!1),t(e,{context:`AcpRunChatView.stop`})})},[e.acpSessionId]);return(0,W.jsxs)(`div`,{className:`flex shrink-0 items-center gap-3 border-b border-[var(--border-hover)] px-5 py-4`,children:[o&&(0,W.jsx)(r,{variant:`outlined`,iconOnly:(0,W.jsx)(s,{}),onClick:c,"aria-label":`Back to conversation`,tooltip:`Back`,"data-testid":`acp-chat-diff-back`,className:`shrink-0 rounded-lg`}),(0,W.jsx)(ie,{agent:e.agent,className:`h-5 w-5 shrink-0`}),(0,W.jsx)(a,{variant:`title-medium`,title:e.agent,className:`min-w-0 shrink truncate leading-snug text-[var(--content-default)]`,children:e.agent}),(0,W.jsx)(ce,{color:d.color,label:d.label}),(0,W.jsx)(`span`,{className:`flex-1`}),(0,W.jsx)(Pe,{entry:e}),n&&(0,W.jsxs)(`button`,{type:`button`,"aria-label":`Stop run`,onClick:f,disabled:l,className:`flex h-8 shrink-0 cursor-pointer items-center gap-1.5 rounded-lg border border-[var(--system-negative-strong)] bg-transparent px-2.5 py-1.5 text-[var(--system-negative-strong)] transition-colors hover:bg-[var(--system-negative-weak)] disabled:cursor-default disabled:opacity-50`,children:[(0,W.jsx)(ne,{className:`h-3 w-3`,fill:`currentColor`}),(0,W.jsx)(a,{variant:`label-small-default`,children:`Stop`})]}),(0,W.jsx)(r,{variant:`outlined`,iconOnly:(0,W.jsx)(v,{}),onClick:i,"aria-label":`Close run detail`,tooltip:`Close`,className:`shrink-0 rounded-lg`})]})}function qe({task:e}){return e?(0,W.jsxs)(`div`,{"data-testid":`acp-chat-objective`,children:[(0,W.jsx)(a,{variant:`body-medium-default`,as:`h3`,className:`mb-1 text-[var(--content-emphasised)]`,children:`Objective`}),(0,W.jsx)(a,{variant:`body-medium-lighter`,as:`p`,className:`whitespace-pre-wrap break-words leading-relaxed text-[var(--content-default)]`,children:e}),(0,W.jsx)(`div`,{className:`mt-4 h-px w-full bg-[var(--border-hover)]`})]}):null}function Je({block:e,isTerminal:t,onOpenDiff:n,onOpenOutput:r}){switch(e.kind){case`user`:return(0,W.jsx)(Me,{content:e.content});case`agent`:return(0,W.jsx)(_e,{content:e.content,isComplete:e.isComplete||t});case`thinking`:return(0,W.jsx)(Ce,{content:e.content,isComplete:e.isComplete||t});case`tool`:return(0,W.jsx)(je,{block:e,isTerminal:t,onOpenDiff:n,onOpenOutput:r});case`plan`:return(0,W.jsx)(ve,{entries:e.entries})}}function Ye({acpSessionId:e}){let[n,i]=(0,k.useState)(``),[a,o]=(0,k.useState)(!1);return(0,W.jsx)(`form`,{onSubmit:(0,k.useCallback)(r=>{r.preventDefault();let s=n.trim();if(!s||a)return;o(!0);let c=C.getState().appendLocalMarker({acpSessionId:e,content:`${S}${s}`});re(e,s).then(()=>i(``)).catch(n=>{c&&C.getState().removeLocalMarker({acpSessionId:e,markerId:c}),t(n,{context:`AcpRunChatView.steer`})}).finally(()=>o(!1))},[n,a,e]),"data-testid":`acp-chat-steer-form`,className:`sticky bottom-0 z-10 shrink-0 border-t border-[var(--border-hover)] bg-[var(--surface-lift)] px-5 py-3`,children:(0,W.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md bg-[var(--surface-base)] px-3 py-2`,children:[(0,W.jsx)(`input`,{type:`text`,value:n,onChange:e=>i(e.target.value),placeholder:`Steer the run…`,disabled:a,"aria-label":`Steering instruction`,className:`text-body-medium-default min-w-0 flex-1 bg-transparent text-[color:var(--content-default)] placeholder:text-[color:var(--content-tertiary)] focus:outline-none disabled:opacity-50`}),(0,W.jsx)(r,{type:`submit`,variant:`primary`,size:`compact`,iconOnly:(0,W.jsx)(se,{}),disabled:a||n.trim()===``,"aria-label":`Send steering instruction`,className:`shrink-0`})]})})}function Xe({entry:e,onClose:t}){return(0,W.jsx)(Ge,{entry:e,onClose:t})}export{Xe as AcpRunDetailPanel};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e,r as t}from"./chunk-jRWAZmH_.js";import{t as n}from"./react-DJZBPgpf.js";import{t as r}from"./button-
|
|
1
|
+
import{o as e,r as t}from"./chunk-jRWAZmH_.js";import{t as n}from"./react-DJZBPgpf.js";import{t as r}from"./button-D1p5nVKJ.js";import{h as i,t as a,u as o}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as s}from"./QueryClientProvider-DKhXIxGb.js";import{t as c}from"./useQuery-B45lW1Kk.js";import{t as l}from"./useMutation-Lj4VunQV.js";import{t as u}from"./jsx-runtime-CVSDxk6A.js";import{t as d}from"./circle-alert-zOqdmf25.js";import{t as f}from"./credit-card-BuyWdO9t.js";import{t as p}from"./loader-circle-088bE-Hd.js";import{t as m}from"./modal-cdtdc8dA.js";import{t as h}from"./dropdown-BsftIzw-.js";import{n as g,t as _}from"./browser-B78iIKae.js";import{lt as v,st as y}from"./react-query.gen-DrkKCNeH.js";var b=t({AddCreditsModal:()=>E}),x=e(n(),1),S=u(),C=[`10.00`,`20.00`,`30.00`,`40.00`,`50.00`,`60.00`,`70.00`,`80.00`,`90.00`,`100.00`];function w(e){let t=parseFloat(e);if(Number.isNaN(t))return`0 credits`;let n=t.toLocaleString(`en-US`,{minimumFractionDigits:2,maximumFractionDigits:2});return`${n.endsWith(`.00`)?n.slice(0,-3):n} credits`}function T(e){if(e&&typeof e==`object`){let t=e.amount;if(Array.isArray(t)&&typeof t[0]==`string`)return t[0]}return`Failed to create checkout session. Please try again.`}function E({open:e,onOpenChange:t}){let n=s(),{pathname:u}=o(),[b]=i(),E=b.toString()?`${u}?${b.toString()}`:u,{data:D,isLoading:O}=c(y()),k=D?.allowed_top_up_amounts?.length?D.allowed_top_up_amounts:C,[A,j]=(0,x.useState)(null),M=A&&k.includes(A)?A:k[0]??C[0],N=l(v());return(0,x.useEffect)(()=>g(()=>{t(!1),n.invalidateQueries(y())}),[t,n]),(0,S.jsx)(m.Root,{open:e,onOpenChange:t,children:(0,S.jsxs)(m.Content,{size:`sm`,children:[(0,S.jsxs)(m.Header,{children:[(0,S.jsx)(m.Title,{icon:f,children:`Add Credits`}),(0,S.jsx)(m.Description,{children:`Purchase credits to continue using the assistant. You'll be redirected to Stripe to complete the payment.`})]}),(0,S.jsx)(m.Body,{children:(0,S.jsxs)(`div`,{className:`space-y-4`,children:[(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`label`,{htmlFor:`add-credits-amount`,className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Amount`}),(0,S.jsx)(h,{id:`add-credits-amount`,value:M,onChange:e=>{j(e),N.isError&&N.reset()},disabled:O||!D,options:k.map(e=>({value:e,label:w(e)}))})]}),N.isError&&(0,S.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--system-negative-strong)]`,children:[(0,S.jsx)(d,{className:`h-3.5 w-3.5 shrink-0`}),T(N.error)]}),(0,S.jsx)(a,{to:`/assistant/settings/billing`,className:`text-body-small-default text-[var(--content-tertiary)] underline hover:text-[var(--content-secondary)]`,onClick:()=>t(!1),children:`Configure Automatic Top-Ups →`})]})}),(0,S.jsxs)(m.Footer,{children:[(0,S.jsx)(m.Close,{asChild:!0,children:(0,S.jsx)(r,{variant:`outlined`,children:`Cancel`})}),(0,S.jsx)(r,{variant:`primary`,leftIcon:N.isPending?(0,S.jsx)(p,{className:`animate-spin`}):void 0,onClick:()=>{N.isPending||N.mutate({body:{amount:M,return_path:E}},{onSuccess:e=>{_(e.checkout_url)}})},disabled:N.isPending||O||!D,children:`Add credits`})]})]})})}export{b as n,E as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-CmeVLfq0.js";import{t as n}from"./react-DJZBPgpf.js";import{t as r}from"./button-D1p5nVKJ.js";import{n as i}from"./QueryClientProvider-DKhXIxGb.js";import{t as a}from"./useQuery-B45lW1Kk.js";import{t as o}from"./useMutation-Lj4VunQV.js";import{t as s}from"./jsx-runtime-CVSDxk6A.js";import{t as c}from"./loader-circle-088bE-Hd.js";import{t as l}from"./input-DR1eB4a1.js";import{t as u}from"./toggle-D7S110RM.js";import{n as d}from"./stat-square-CSQ2Md1V.js";import{n as f}from"./toast-HPdEfHz3.js";import{Ft as p,Gt as m,K as h,Wt as g,c as _,q as v,u as y}from"./react-query.gen-AbBrwMPh.js";import{X as b}from"./sdk.gen-B3bmXhSv.js";import{F as x,P as S}from"./react-query.gen-DrkKCNeH.js";import{$r as C,E as w}from"./index-DD6uDbkv.js";import{t as T}from"./use-active-assistant-id-CyH4rTOc.js";import{t as E}from"./detail-card-TE7YEaVh.js";import{r as D}from"./assistant-status-panel-mDIcc6r5.js";var O=s();function k({memoryEnabled:e}){let n=T(),r=i(),{data:o}=a({...h({path:{assistant_id:n}}),staleTime:3e4}),s=e=>{v(r,{path:{assistant_id:n}},t=>t&&{...t,workerEnabled:e})},c=g({onSuccess:()=>s(!0)}),l=m({onSuccess:()=>s(!1)}),d=async e=>{try{e?(await c.mutateAsync({path:{assistant_id:n}}),f.success(`Background worker enabled.`)):(await l.mutateAsync({path:{assistant_id:n}}),f.success(`Background worker disabled.`))}catch(e){t(e,{context:`settings-memory-worker-toggle`}),f.error(`Failed to update background worker setting.`)}};if(!o)return null;let p=c.isPending||l.isPending;return(0,O.jsxs)(`div`,{className:`flex flex-row items-start justify-between gap-4 border-t border-[var(--border-subtle)] pt-4`,children:[(0,O.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-2`,children:[(0,O.jsx)(`h3`,{className:`text-body-medium-default text-[var(--content-emphasised)]`,children:`Background worker`}),(0,O.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:`Run memory consolidation in a dedicated background process instead of inline. Recommended for heavier memory workloads.`})]}),(0,O.jsx)(u,{checked:o.workerEnabled===!0,onChange:e=>void d(e),"aria-label":`Enable background memory worker`,disabled:!e||p})]})}var A=e(n(),1),j=[[`Mon`,0],[`Tue`,1],[`Wed`,2],[`Thu`,3],[`Fri`,4],[`Sat`,5],[`Sun`,6]];function M(e){let[t,n]=e.split(`:`).map(Number),r=new Date,i=new Date(Date.UTC(r.getUTCFullYear(),r.getUTCMonth(),r.getUTCDate(),t,n));return`${i.getHours().toString().padStart(2,`0`)}:${i.getMinutes().toString().padStart(2,`0`)}`}function N(e){let[t,n]=e.split(`:`).map(Number),r=new Date,i=new Date(r.getFullYear(),r.getMonth(),r.getDate(),t,n);return`${i.getUTCHours().toString().padStart(2,`0`)}:${i.getUTCMinutes().toString().padStart(2,`0`)}`}function P(){return Intl.DateTimeFormat(void 0,{timeZoneName:`short`}).formatToParts(new Date).find(e=>e.type===`timeZoneName`)?.value??``}function F(e){let t=e?.schedule?.window.start??`06:00`,n=e?.schedule?.window.end??`08:00`;return{enabled:e?.enabled??!0,timezone:`UTC`,frequency:e?.schedule?.frequency??`weekly`,daysOfWeek:e?.schedule?.days_of_week??[0],daysOfMonth:e?.schedule?.days_of_month??[],windowStart:M(t),windowEnd:M(n)}}function I({assistantId:e}){let t=i(),{data:n,isLoading:s,isError:p}=a(S({path:{id:e}})),m=(0,A.useMemo)(()=>F(n),[n]),[h,g]=(0,A.useState)(null),_=h??m,v=h!==null,y=(0,A.useMemo)(()=>P(),[]),[C,w]=(0,A.useState)(null),T=C??_.daysOfMonth.join(`, `),E=o({mutationFn:async t=>{let{data:n}=await b({path:{id:e},body:t,throwOnError:!0});return n}}),D=e=>{g(t=>({...t??m,...e}))},k=e=>{D({daysOfWeek:_.daysOfWeek.includes(e)?_.daysOfWeek.filter(t=>t!==e):[..._.daysOfWeek,e].sort((e,t)=>e-t)})},M=e=>e.split(`,`).map(e=>parseInt(e.trim(),10)).filter(e=>!isNaN(e)&&e>=1&&e<=31);return s?(0,O.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,O.jsx)(c,{className:`h-4 w-4 animate-spin`}),`Loading update window settings...`]}):p?(0,O.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--system-negative-strong)]`,children:`Failed to load update window policy. Refresh the page to try again.`}):(0,O.jsxs)(`div`,{className:`space-y-6`,children:[(0,O.jsx)(u,{checked:_.enabled,onChange:e=>D({enabled:e}),label:`Automatic updates`,helperText:`Update automatically during a configured time window`}),_.enabled&&(0,O.jsxs)(`div`,{className:`space-y-5`,children:[(0,O.jsxs)(`div`,{className:`space-y-2`,children:[(0,O.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-secondary)]`,children:`Frequency`}),(0,O.jsx)(`div`,{className:`max-w-[400px]`,children:(0,O.jsx)(d,{ariaLabel:`Frequency`,value:_.frequency,onChange:e=>{e!==`monthly`&&w(null),D({frequency:e})},items:[{value:`daily`,label:`Daily`},{value:`weekly`,label:`Weekly`},{value:`monthly`,label:`Monthly`}]})})]}),_.frequency===`weekly`&&(0,O.jsxs)(`div`,{className:`space-y-2`,children:[(0,O.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-secondary)]`,children:`Day(s) of week`}),(0,O.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:j.map(([e,t])=>(0,O.jsx)(r,{variant:`outlined`,size:`compact`,active:_.daysOfWeek.includes(t),onClick:()=>k(t),children:e},t))})]}),_.frequency===`monthly`&&(0,O.jsx)(l,{label:`Day(s) of month`,type:`text`,value:T,onChange:e=>w(e.target.value),onBlur:e=>{let t=M(e.target.value);D({daysOfMonth:t}),w(t.join(`, `))},placeholder:`e.g. 1, 15`,helperText:`Comma-separated day numbers (1–31)`,className:`w-48`}),(0,O.jsxs)(`div`,{className:`space-y-2`,children:[(0,O.jsxs)(`label`,{className:`block text-body-small-default text-[var(--content-secondary)]`,children:[`Update window`,y?` (${y})`:``]}),(0,O.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,O.jsx)(l,{type:`time`,value:_.windowStart,onChange:e=>D({windowStart:e.target.value})}),(0,O.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`to`}),(0,O.jsx)(l,{type:`time`,value:_.windowEnd,onChange:e=>D({windowEnd:e.target.value})})]})]})]}),(0,O.jsx)(r,{variant:`primary`,leftIcon:E.isPending?(0,O.jsx)(c,{className:`animate-spin`}):void 0,onClick:async()=>{let n=_.frequency===`monthly`&&C!==null?M(C):_.daysOfMonth;try{await E.mutateAsync({enabled:_.enabled,timezone:`UTC`,schedule:{frequency:_.frequency,days_of_week:_.frequency===`weekly`?_.daysOfWeek:[],days_of_month:_.frequency===`monthly`?n:[],window:{start:N(_.windowStart),end:N(_.windowEnd)}}}),f.success(`Auto-update policy saved.`),g(null),w(null),t.invalidateQueries({queryKey:x({path:{id:e}})})}catch{f.error(`Failed to save policy. Please try again.`)}},disabled:E.isPending||!v,children:`Save policy`})]})}function L(){let{assistant:e,healthz:n}=D(),r=C({platformHostedOnly:!0}),o=e?.is_local?null:e,s=T(),c=i(),l=n?.capabilities?.memoryOptOut===!0,{data:d}=a({..._({path:{assistant_id:s}}),staleTime:3e4,enabled:l}),m=p({onSuccess:e=>{y(c,{path:{assistant_id:s}},e)}}),h=d?.memory?.enabled!==!1,g=async e=>{try{await m.mutateAsync({path:{assistant_id:s},body:{memory:{enabled:e}}}),f.success(e?`Memory enabled.`:`Memory disabled.`)}catch(e){t(e,{context:`settings-memory-toggle`}),f.error(`Failed to update memory setting.`)}};return(0,O.jsxs)(`div`,{className:`space-y-4`,children:[r===`full`&&o&&(0,O.jsx)(E,{title:`Update Window`,subtitle:`Configure when automatic updates are applied.`,children:(0,O.jsx)(I,{assistantId:o.id})}),r===`disabled`&&(0,O.jsx)(E,{title:`Update Window`,subtitle:`Configure when automatic updates are applied.`,children:(0,O.jsx)(w,{children:`Log in to the Vellum platform to manage update window policy.`})}),l?(0,O.jsx)(E,{title:`Memory`,subtitle:`Let your assistant remember information from past conversations. Turning this off also pauses memory consolidation.`,accessory:(0,O.jsx)(u,{checked:h,onChange:e=>void g(e),"aria-label":`Enable memory`,disabled:m.isPending}),compactAccessory:!0,children:(0,O.jsx)(k,{memoryEnabled:h})}):null]})}export{L as AdvancedPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{i as t,r as n,s as r}from"./local-settings-lVNyIOJ_.js";import{r as i,t as a}from"./capture-error-CmeVLfq0.js";import{t as o}from"./react-DJZBPgpf.js";import{t as s}from"./button-D1p5nVKJ.js";import{d as c,h as l}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as u}from"./QueryClientProvider-DKhXIxGb.js";import{t as d}from"./useQuery-B45lW1Kk.js";import{t as f}from"./useMutation-Lj4VunQV.js";import{t as p}from"./jsx-runtime-CVSDxk6A.js";import{t as m}from"./typography-D5f7kt80.js";import{t as h}from"./createLucideIcon-IRfcSUxS.js";import{t as g}from"./check-DFNrQERi.js";import{t as _}from"./circle-alert-zOqdmf25.js";import{t as v}from"./circle-check-VSiny8yl.js";import{n as y,t as b}from"./domain-field-C5a2iMot.js";import{t as x}from"./external-link-CfkE0LZW.js";import{t as S}from"./info-DZoiK09u.js";import{t as C}from"./loader-circle-088bE-Hd.js";import{t as w}from"./triangle-alert-CuLBwl1x.js";import{t as T}from"./notice-BQRdh9ak.js";import{t as E}from"./tag-BriFUtvF.js";import{t as D}from"./input-DR1eB4a1.js";import{t as O}from"./toggle-D7S110RM.js";import{n as k}from"./stat-square-CSQ2Md1V.js";import{t as A}from"./modal-cdtdc8dA.js";import{n as j}from"./toast-HPdEfHz3.js";import{t as M}from"./confirm-dialog-C0tP3s3P.js";import{t as N}from"./dropdown-BsftIzw-.js";import{Lt as P,Rt as F,at as I,k as L,ot as ee,pn as R,qn as z}from"./sdk.gen-JlA-scjv.js";import{At as te,Ft as B,R as V,c as H,d as U,l as W,mt as G,u as K,z as q}from"./react-query.gen-AbBrwMPh.js";import{r as ne}from"./api-errors-DZ6ckXtC.js";import{c as re}from"./routes-CBm-E8tn.js";import{t as ie}from"./use-is-org-ready-CkTSZRNq.js";import{t as ae}from"./assistant-identity-store-DiUhyQ7n.js";import{c as oe,d as se,f as ce,g as le,h as ue,it as de,l as fe,m as pe,o as me,p as he,s as ge,u as _e,v as ve,y as ye}from"./react-query.gen-DrkKCNeH.js";import{t as J}from"./assistant-feature-flag-store-DIEpxIVZ.js";import{$r as be,Bi as xe,Br as Se,C as Ce,E as we,Gr as Te,Hr as Ee,Jr as De,Kr as Oe,Lr as ke,Ma as Ae,Oi as je,Rr as Me,S as Ne,T as Pe,Ur as Fe,Vr as Ie,Wr as Le,Xr as Re,Yr as ze,_i as Be,ai as Ve,ci as He,di as Ue,ei as We,fi as Ge,gi as Ke,hi as qe,ii as Je,li as Ye,mi as Xe,ni as Ze,oi as Qe,pi as $e,qr as et,ri as tt,si as nt,ti as rt,tr as it,ui as at,w as ot,zr as st}from"./index-DD6uDbkv.js";import{t as Y}from"./use-active-assistant-id-CyH4rTOc.js";import{t as ct}from"./detail-card-TE7YEaVh.js";import{t as lt}from"./environment-store-BhzMRyLQ.js";var ut=h(`grip-vertical`,[[`circle`,{cx:`9`,cy:`12`,r:`1`,key:`1vctgf`}],[`circle`,{cx:`9`,cy:`5`,r:`1`,key:`hp0tcf`}],[`circle`,{cx:`9`,cy:`19`,r:`1`,key:`fkjjf6`}],[`circle`,{cx:`15`,cy:`12`,r:`1`,key:`1tmaij`}],[`circle`,{cx:`15`,cy:`5`,r:`1`,key:`19l28e`}],[`circle`,{cx:`15`,cy:`19`,r:`1`,key:`f4zoj3`}]]),X=e(o(),1),Z=p();function dt({mode:e,onChange:t}){return(0,Z.jsx)(`div`,{className:`max-w-[280px]`,children:(0,Z.jsx)(k,{ariaLabel:`Service mode`,value:e,onChange:t,items:[{value:`managed`,label:`Managed`},{value:`your-own`,label:`Your Own`}]})})}function ft({id:e,title:t,subtitle:n,mode:r,onModeChange:i,children:a}){return(0,Z.jsxs)(ct,{id:e,title:t,subtitle:n,accessory:(0,Z.jsx)(dt,{mode:r,onChange:i}),children:[(0,Z.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,Z.jsx)(`div`,{className:`mt-4`,children:a})]})}function Q({onClick:e,disabled:t}){return(0,Z.jsx)(s,{onClick:e,disabled:t,children:`Save`})}function pt({onClick:e,filled:t=!1}){return(0,Z.jsx)(s,{variant:t?`danger`:`dangerGhost`,onClick:e,children:`Reset`})}function mt({id:e,title:t,subtitle:n,children:r}){return(0,Z.jsxs)(ct,{id:e,title:t,subtitle:n,children:[(0,Z.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,Z.jsx)(`div`,{className:`mt-4`,children:r})]})}function ht({guide:e}){return(0,Z.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,Z.jsx)(S,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Z.jsx)(`span`,{children:e.description}),(0,Z.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e.linkLabel,(0,Z.jsx)(x,{className:`h-3 w-3`})]})]})]})}function gt({status:e,message:t,isLoading:n}){return n?(0,Z.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,children:[(0,Z.jsx)(C,{className:`h-3 w-3 animate-spin`}),`Checking domain…`]}):e?e===`verified`?(0,Z.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-positive-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,title:`DNS records have been verified. Your domain is ready to send and receive email.`,children:[(0,Z.jsx)(g,{className:`h-3 w-3`}),`Domain verified`]}):e===`pending`||e===`not_started`?(0,Z.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-mid-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-mid-strong)]`,title:`DNS records have been provisioned. Waiting for the email provider to verify them — this usually takes a few minutes.`,children:[(0,Z.jsx)(Ae,{className:`h-3 w-3`}),`Verifying domain…`]}):(0,Z.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-negative-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,title:`Domain verification failed. DNS records may not have propagated correctly. You could try releasing and re-registering the domain.`,children:[(0,Z.jsx)(_,{className:`h-3 w-3`}),`Verification failed`]}):(0,Z.jsx)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,title:`Unable to retrieve domain verification status.`,children:`Unknown status`})}var _t=`__custom__`;function vt(e){return e?!!(e.profile||e.provider||e.model):!1}function yt(e,t){let n=vt(e);return n===vt(t)?n?(e?.profile??null)===(t?.profile??null)&&(e?.provider??null)===(t?.provider??null)&&(e?.model??null)===(t?.model??null):!0:!1}function bt({id:e,displayName:t,description:n,defaultProfileLabel:r,draft:i,profileOptions:a,onDraftChange:o,onToggle:s}){let c=vt(i),l=!i||!c?``:i.provider||i.model?_t:i.profile??``,u=l===_t,d=et(),f=d[0]??$e[0],p=d.find(e=>e===i?.provider)??f,m=Ke(p).map(e=>({value:e.id,label:e.displayName})),h=!!i?.provider&&!i?.model;function g(t){t===`__custom__`?o(e,{profile:null,provider:f,model:qe(f)??``}):t===``?o(e,null):o(e,{profile:t,provider:null,model:null})}function _(t){let n=qe(t)??``;o(e,{...i??{},profile:null,provider:t,model:n})}function v(t){o(e,{...i??{},model:t})}return(0,Z.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] p-3`,children:[(0,Z.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,Z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Z.jsx)(`p`,{className:`text-body-medium-default font-medium text-[var(--content-default)]`,children:t}),n&&(0,Z.jsxs)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:[n,r&&(0,Z.jsxs)(`span`,{className:`ml-1.5 text-body-small-default text-[var(--content-tertiary)] opacity-60`,children:[`· Default: `,r]})]})]}),(0,Z.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[c&&(0,Z.jsx)(N,{value:l,onChange:g,options:a,className:`w-44`,menuMinWidth:280,menuAlign:`end`}),(0,Z.jsx)(O,{checked:c,onChange:t=>s(e,t),"aria-label":`Override ${t}`})]})]}),c&&u&&(0,Z.jsxs)(`div`,{className:`mt-3 space-y-2 border-t border-[var(--border-base)] pt-3`,children:[(0,Z.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Z.jsxs)(`div`,{className:`flex-1`,children:[(0,Z.jsx)(`label`,{className:`mb-1 block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,Z.jsx)(N,{value:p??``,onChange:_,options:d.map(e=>({value:e,label:Xe[e]??e}))})]}),(0,Z.jsxs)(`div`,{className:`flex-1`,children:[(0,Z.jsx)(`label`,{className:`mb-1 block text-body-small-default text-[var(--content-tertiary)]`,children:`Model`}),(0,Z.jsx)(N,{value:i?.model??``,onChange:v,options:m})]})]}),h&&(0,Z.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:`Pick a model`})]})]})}function xt({isOpen:e,onClose:t,assistantId:n}){let r=(0,X.useRef)(!1);return(0,Z.jsx)(A.Root,{open:e,onOpenChange:e=>{!e&&!r.current&&t()},children:e?(0,Z.jsx)(St,{assistantId:n,onClose:t,onSavingChange:e=>{r.current=e}}):null})}function St({assistantId:e,onClose:t,onSavingChange:n}){let r=u(),{data:i}=d({...H({path:{assistant_id:e}}),staleTime:3e4}),o=(0,X.useMemo)(()=>i?.llm?.profiles??{},[i?.llm?.profiles]),c=(0,X.useMemo)(()=>i?.llm?.profileOrder??[],[i?.llm?.profileOrder]),l=(0,X.useMemo)(()=>i?.llm?.callSites??{},[i?.llm?.callSites]),f=(0,X.useMemo)(()=>rt(o,c),[o,c]),p=et(),m=B({onSuccess:t=>{K(r,{path:{assistant_id:e}},t)}}),[h,g]=(0,X.useState)(``),[_,v]=(0,X.useState)({}),[y,b]=(0,X.useState)(!1),[x,S]=(0,X.useState)(!1),w=J.use.analyzeConversation(),{data:T,isLoading:E,isError:O,refetch:k}=d({...U({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4,refetchOnWindowFocus:!1}),N=(0,X.useMemo)(()=>{let e=(T?.callSites??[]).filter(e=>e.id!==`mainAgent`);return w||(e=e.filter(e=>e.id!==`analyzeConversation`)),e},[T,w]),P=!E&&!O&&!!T&&!!i,F=(0,X.useMemo)(()=>N.map(e=>e.id),[N]),I=(0,X.useMemo)(()=>{if(!P)return{};let e={};for(let t of F)if(t in _)e[t]=_[t];else{let n=l[t];e[t]=n?{...n}:{}}return e},[P,F,l,_]),L=(0,X.useMemo)(()=>new Set(F),[F]),ee=(0,X.useMemo)(()=>Object.entries(l).some(([e,t])=>L.has(e)&&(t?.profile!=null||t?.provider!=null||t?.model!=null)),[l,L]),R=(0,X.useMemo)(()=>{if(!P)return!1;for(let e of Object.keys(I))if(!yt(I[e],l[e]))return!0;return!1},[P,I,l]),z=(0,X.useMemo)(()=>Object.values(I).some(e=>vt(e)&&!!e?.provider&&!e?.model),[I]),te=(0,X.useCallback)(e=>[...Pe(f,[e]).map(e=>({value:e.name,label:Ce(e)})),{value:_t,label:`Custom`}],[f]),V=(0,X.useMemo)(()=>{if(!h.trim())return N;let e=h.toLowerCase();return N.filter(t=>(t.displayName??``).toLowerCase().includes(e)||(t.description??``).toLowerCase().includes(e)||(t.domain??``).toLowerCase().includes(e))},[N,h]),W=(0,X.useMemo)(()=>{if(!T)return[];let e=T.domains.map(e=>e.id),t=new Map(T.domains.map(e=>[e.id,e])),n=[];for(let r of e){let e=V.filter(e=>e.domain===r);e.length>0&&n.push({domain:t.get(r),sites:e})}let r=new Set(e),i=V.filter(e=>!r.has(e.domain));return i.length>0&&n.push({domain:{id:`other`,displayName:`Other`},sites:i}),n},[T,V]),G=(0,X.useCallback)((e,t)=>{v(n=>({...n,[e]:t}))},[]),q=(0,X.useCallback)((e,t)=>{if(!t){v(t=>({...t,[e]:null}));return}let n=ot(f,N.find(t=>t.id===e)?.defaultProfile);if(n)v(t=>({...t,[e]:{profile:n}}));else{let t=p[0]??$e[0],n=qe(t)??``;v(r=>({...r,[e]:{provider:t,model:n}}))}},[N,f,p]),ne=(0,X.useCallback)(async()=>{b(!0),n?.(!0);try{let n={};for(let e of Object.keys(I)){let t=I[e]??null;n[e]=vt(t)?{profile:t?.profile??null,provider:t?.provider??null,model:t?.model??null}:null}await m.mutateAsync({path:{assistant_id:e},body:{llm:{callSites:n}}}),t(),j.success(`Overrides saved.`)}catch(e){j.error(`Failed to save overrides. Please try again.`),a(e,{context:`call_site_overrides_save`})}finally{b(!1),n?.(!1)}},[I,t,m,n,e]),re=(0,X.useCallback)(async()=>{b(!0),n?.(!0);try{let n={};for(let e of Object.keys(I))n[e]=null;await m.mutateAsync({path:{assistant_id:e},body:{llm:{callSites:n}}}),t(),j.success(`Overrides reset.`)}catch(e){j.error(`Failed to reset overrides. Please try again.`),a(e,{context:`call_site_overrides_reset`})}finally{b(!1),n?.(!1)}},[I,t,m,n,e]);return(0,Z.jsxs)(A.Content,{size:`lg`,hideCloseButton:!0,children:[(0,Z.jsxs)(A.Header,{children:[(0,Z.jsx)(A.Title,{children:`Action Overrides`}),(0,Z.jsx)(A.Description,{children:`Customize which model profile specific actions should use. Uses your default profile if no override is set.`})]}),(0,Z.jsxs)(A.Body,{children:[(0,Z.jsx)(`div`,{className:`mb-4`,children:(0,Z.jsx)(D,{type:`search`,value:h,onChange:e=>g(e.target.value),placeholder:`Search actions…`,leftIcon:(0,Z.jsx)(xe,{className:`h-4 w-4`}),fullWidth:!0})}),E&&(0,Z.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,Z.jsx)(C,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}),O&&(0,Z.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-12 text-center`,children:[(0,Z.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Couldn't load actions`}),(0,Z.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Make sure your assistant is running`}),(0,Z.jsx)(s,{variant:`outlined`,size:`compact`,onClick:()=>void k(),children:`Retry`})]}),!E&&!O&&T&&(0,Z.jsx)(`div`,{className:`space-y-4`,children:W.length===0?(0,Z.jsx)(`p`,{className:`py-8 text-center text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No actions match your search.`}):W.map(({domain:e,sites:t})=>(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`p`,{className:`mb-2 text-body-small-default font-semibold uppercase tracking-wider text-[var(--content-tertiary)]`,children:e.displayName}),(0,Z.jsx)(`div`,{className:`space-y-1`,children:t.map(e=>{let t=(()=>{let t=I[e.id]??null;return!t||!vt(t)?``:t.provider||t.model?`__custom__`:t.profile??``})(),n=e.defaultProfile?f.find(t=>t.name===e.defaultProfile)?.label??e.defaultProfile:null;return(0,Z.jsx)(bt,{id:e.id,displayName:e.displayName,description:e.description,defaultProfileLabel:n,draft:I[e.id]??null,profileOptions:te(t===``||t===`__custom__`?null:t),onDraftChange:G,onToggle:q},e.id)})})]},e.id))})]}),(0,Z.jsxs)(A.Footer,{children:[ee&&(0,Z.jsx)(s,{variant:`outlined`,size:`compact`,onClick:()=>S(!0),disabled:y||!P,tintColor:`var(--system-negative-strong)`,className:`mr-auto`,children:`Reset to Defaults`}),(0,Z.jsx)(s,{variant:`outlined`,size:`compact`,onClick:t,disabled:y,children:`Cancel`}),(0,Z.jsx)(s,{variant:`primary`,size:`compact`,onClick:()=>void ne(),disabled:!R||z||y,children:y?(0,Z.jsx)(C,{className:`h-4 w-4 animate-spin`}):`Save`})]}),(0,Z.jsx)(M,{open:x,title:`Reset to Defaults`,message:`Every task override will be reset and will follow your active profile. This cannot be undone.`,confirmLabel:`Reset to Defaults`,destructive:!0,onConfirm:()=>{S(!1),re()},onCancel:()=>S(!1)})]})}function Ct({blocked:e,availableReplacements:t,replacement:n,onReplacementChange:r,error:i,saving:a,onClose:o,onConfirm:c}){let l=``;if(e){let t=e.label||e.name;l=e.isActive&&e.callSiteIds.length>0?`"${t}" is the active profile and is used by ${e.callSiteIds.length} call site(s). Pick a replacement profile.`:e.isActive?`"${t}" is the active profile. Pick a different active profile before deleting, or select a replacement below.`:`"${t}" is used by ${e.callSiteIds.length} call site(s). Select a replacement profile to reassign them before deleting.`}return(0,Z.jsx)(A.Root,{open:e!==null,onOpenChange:e=>{e||o()},children:(0,Z.jsxs)(A.Content,{size:`sm`,children:[(0,Z.jsx)(A.Header,{children:(0,Z.jsx)(A.Title,{children:`Can't Delete Profile`})}),(0,Z.jsxs)(A.Body,{className:`space-y-4`,children:[(0,Z.jsx)(m,{variant:`body-medium-default`,as:`p`,children:l}),e&&e.callSiteIds.length>0&&(0,Z.jsx)(`ul`,{className:`space-y-1 pl-1`,children:e.callSiteIds.map(e=>(0,Z.jsxs)(`li`,{className:`text-body-small-default text-(--content-secondary)`,children:[`• `,(0,Z.jsx)(`code`,{children:e})]},e))}),(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Replacement profile`}),(0,Z.jsx)(N,{"aria-label":`Replacement profile`,value:n,onChange:r,options:[{value:``,label:`Select a replacement…`},...t.map(e=>({value:e.name,label:e.label??e.name}))]})]}),i&&(0,Z.jsx)(m,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:i})]}),(0,Z.jsxs)(A.Footer,{children:[(0,Z.jsx)(s,{variant:`ghost`,size:`compact`,onClick:o,children:`Cancel`}),(0,Z.jsx)(s,{variant:`primary`,size:`compact`,disabled:!n||a,onClick:c,children:a?`Saving…`:`Reassign and Delete`})]})]})})}function wt(e,t){if(e){let n=Ke(e).find(e=>e.id===t);if(n)return n.displayName}let n=t.lastIndexOf(`/`);return n>=0?t.slice(n+1):t}function Tt(e){let t=[];e.description&&t.push(e.description);let n=[];if(e.model&&n.push(wt(e.provider,e.model)),e.provider){let t=Xe[e.provider]??e.provider;n.push(`hosted by ${t}`)}return n.length>0&&t.push(n.join(` `)),t.join(` – `)}function Et({profile:e,isDragging:t,dropTarget:n,isDeleting:r,deleteError:i,isToggling:a,onDragStart:o,onDragEnd:c,onDragOver:l,onDragLeave:u,onDrop:d,onEditClick:f,onDeleteClick:p,onStatusToggle:h}){let g=e.source===`managed`,_=e.invariant===!0,v=e.status!==`disabled`;return(0,Z.jsxs)(`div`,{className:`relative`,children:[n?.name===e.name&&!n.after&&(0,Z.jsx)(`div`,{className:`mx-0 h-0.5 rounded-full bg-[var(--border-active)]`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg pr-2 py-2${t?` opacity-50`:``}`,draggable:!g,onDragStart:o,onDragEnd:c,onDragOver:l,onDragLeave:u,onDrop:d,children:[(0,Z.jsx)(ut,{className:`h-4 w-4 shrink-0 ${g?`invisible`:`cursor-grab text-[var(--content-tertiary)]`}`}),(0,Z.jsxs)(`div`,{className:`min-w-0 flex-1${v?``:` opacity-55`}`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(m,{variant:`body-medium-default`,as:`span`,className:`text-(--content-default)`,children:e.label??e.name}),g&&(0,Z.jsx)(E,{tone:`positive`,title:`Managed by Platform — this profile cannot be disabled, deleted, or renamed.`,children:`Platform`})]}),e.description||e.model||e.provider?(0,Z.jsx)(m,{variant:`body-medium-lighter`,as:`p`,className:`mt-0.5 text-(--content-tertiary)`,children:Tt(e)}):null]}),(0,Z.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(!_||!v)&&(0,Z.jsx)(`div`,{className:`flex shrink-0 items-center`,title:v?`Active — toggle to hide from pickers`:`Disabled — toggle to show in pickers`,children:(0,Z.jsx)(O,{checked:v,onChange:e=>h(e),disabled:a,"aria-label":`${v?`Disable`:`Enable`} ${e.label??e.name}`})}),(0,Z.jsxs)(`div`,{className:`flex w-[92px] items-center justify-end gap-2`,children:[(0,Z.jsx)(s,{variant:`ghost`,size:`compact`,onClick:f,children:g||_?`View`:`Edit`}),(0,Z.jsx)(s,{variant:`ghost`,size:`compact`,iconOnly:(0,Z.jsx)(je,{}),"aria-label":`Delete ${e.label??e.name}`,disabled:g||_||r,title:g||_?`Managed profiles cannot be deleted`:void 0,onClick:p,tintColor:`var(--system-negative-strong)`})]})]})]}),n?.name===e.name&&n.after&&(0,Z.jsx)(`div`,{className:`mx-0 h-0.5 rounded-full bg-[var(--border-active)]`}),i?(0,Z.jsx)(m,{variant:`body-small-default`,as:`p`,className:`px-2 pb-1 text-(--system-negative-strong)`,children:i}):null]})}function Dt({isOpen:e,assistantId:t,onClose:n}){let r=u(),{data:i}=d({...H({path:{assistant_id:t}}),staleTime:3e4}),o=(0,X.useMemo)(()=>i?.llm?.profiles??{},[i?.llm?.profiles]),s=(0,X.useMemo)(()=>i?.llm?.profileOrder??[],[i?.llm?.profileOrder]),c=i?.llm?.activeProfile??null,l=i?.llm?.callSites??{},f=(0,X.useMemo)(()=>rt(o,s),[o,s]),p=B({onSuccess:e=>{K(r,{path:{assistant_id:t}},e)}}),[m,h]=(0,X.useState)(!1),[g,_]=(0,X.useState)(null),{data:v}=d({...V({path:{assistant_id:t}}),enabled:e}),y=v?.connections,b=Object.keys(o);async function x(e,n,r){let i=r?.mode??`replace`,c=!(e in o);if(i===`merge`&&!c){await p.mutateAsync({path:{assistant_id:t},body:{llm:{profiles:{[e]:n}}}}),h(!1),_(null);return}let l={profiles:{[e]:n}};if(c&&(l.profileOrder=s.includes(e)?s:[...s,e]),c)await p.mutateAsync({path:{assistant_id:t},body:{llm:l}});else{let n=o[e];await p.mutateAsync({path:{assistant_id:t},body:{llm:{profiles:{[e]:null}}}});try{await p.mutateAsync({path:{assistant_id:t},body:{llm:l}})}catch(r){throw a(r,{context:`settings-ai-profile-edit-recreate`}),n!=null&&await p.mutateAsync({path:{assistant_id:t},body:{llm:{profiles:{[e]:n}}}}).catch(()=>{}),r}}c&&j.success(`Profile "${n.label??e}" created`),h(!1),_(null)}return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(A.Root,{open:e,onOpenChange:e=>{e||n()},children:e?(0,Z.jsx)(Ot,{assistantId:t,profiles:o,profileOrder:s,orderedProfiles:f,activeProfile:c,callSiteOverrides:l,onClose:n,onEditClick:e=>{_(e),h(!0)},onNewClick:()=>{_(null),h(!0)}}):null}),(0,Z.jsx)(ke,{isOpen:m,mode:g?g.source===`managed`||g.invariant===!0?`view`:`edit`:`create`,profileName:g?.name,initialValues:g??void 0,existingNames:b,connections:y,assistantId:t,onSave:x,onCancel:()=>{h(!1),_(null)}})]})}function Ot({assistantId:e,profiles:t,profileOrder:n,orderedProfiles:r,activeProfile:i,callSiteOverrides:o,onClose:c,onEditClick:l,onNewClick:d}){let f=u(),p=B({onSuccess:t=>{K(f,{path:{assistant_id:e}},t)}}),[h,g]=(0,X.useState)({}),[_,v]=(0,X.useState)({}),[y,b]=(0,X.useState)(new Set),[x,S]=(0,X.useState)(null),[C,w]=(0,X.useState)(null),[T,E]=(0,X.useState)(null),[D,O]=(0,X.useState)(null),k=(0,X.useRef)(null),j=(0,X.useRef)(null),[M,N]=(0,X.useState)(null),[P,F]=(0,X.useState)(null),[I,L]=(0,X.useState)(``),[ee,R]=(0,X.useState)(!1),z=(0,X.useMemo)(()=>r,[r]);async function te(n,r){if(y.has(n.name))return!1;b(e=>new Set(e).add(n.name)),S(null);let i=r?`active`:`disabled`;if(!t[n.name])return b(e=>{let t=new Set(e);return t.delete(n.name),t}),!1;try{return await p.mutateAsync({path:{assistant_id:e},body:{llm:{profiles:{[n.name]:{status:i}}}}}),!0}catch(e){return a(e,{context:`settings-ai-profile-toggle`}),S(`Couldn't update "${n.label??n.name}". Please try again.`),!1}finally{b(e=>{let t=new Set(e);return t.delete(n.name),t})}}async function V(t){v(e=>({...e,[t]:!0})),g(e=>{let n={...e};return delete n[t],n});try{let r=n.filter(e=>e!==t);await p.mutateAsync({path:{assistant_id:e},body:{llm:{profiles:{[t]:null},profileOrder:r}}})}catch(e){a(e,{context:`settings-ai-profile-delete`}),g(e=>({...e,[t]:`Failed to delete profile. Please try again.`}))}finally{v(e=>{let n={...e};return delete n[t],n})}}function H(e){let t=z.find(t=>t.name===e)?.label??e,n=e===i,r=Object.entries(o).filter(([t,n])=>t!==`mainAgent`&&n?.profile===e).map(([e])=>e);if(n||r.length>0){N({name:e,label:t,isActive:n,callSiteIds:r}),L(``),F(null);return}V(e)}async function U(){if(!M||!I)return;R(!0),F(null);let t={};if(M.isActive&&(t.activeProfile=I),M.callSiteIds.length>0){let e={};for(let t of M.callSiteIds)e[t]={profile:I};t.callSites=e}if(Object.keys(t).length>0)try{await p.mutateAsync({path:{assistant_id:e},body:{llm:t}})}catch(e){a(e,{context:`settings-ai-profile-reassign-delete`}),F(`Failed to reassign references. Please try again.`),R(!1);return}let n=M.name;N(null),R(!1),V(n)}async function W(t,r){if(t===r.name)return;O(null);let i=n.filter(e=>e!==t),o=i.indexOf(r.name);if(o===-1)return;r.after&&(o+=1);let s=[...i.slice(0,o),t,...i.slice(o)];try{await p.mutateAsync({path:{assistant_id:e},body:{llm:{profileOrder:s}}})}catch(e){a(e,{context:`settings-ai-profile-reorder`}),O(`Failed to reorder profiles. Please try again.`)}}let G=z.filter(e=>e.name!==M?.name&&e.source!==`managed`),q=G.length>0?G:z.filter(e=>e.name!==M?.name);return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsxs)(A.Content,{size:`md`,children:[(0,Z.jsxs)(A.Header,{children:[(0,Z.jsx)(A.Title,{children:`Model Profiles`}),(0,Z.jsx)(A.Description,{children:`Bundle a provider and model into a named profile. Assign profiles to specific actions or swap between them when chatting.`})]}),(0,Z.jsxs)(A.Body,{children:[z.length===0?(0,Z.jsx)(m,{variant:`body-medium-lighter`,as:`p`,className:`py-4 text-center text-(--content-tertiary)`,children:`No profiles yet. Create one to get started.`}):(0,Z.jsx)(`div`,{className:`space-y-1`,children:z.map(e=>(0,Z.jsx)(Et,{profile:e,isDragging:C===e.name,dropTarget:T,isDeleting:_[e.name]??!1,deleteError:h[e.name],isToggling:y.has(e.name),onDragStart:t=>{k.current=e.name,w(e.name),t.dataTransfer&&(t.dataTransfer.effectAllowed=`move`)},onDragEnd:()=>{k.current=null,j.current=null,w(null),E(null)},onDragOver:t=>{t.preventDefault();let n=t.currentTarget.getBoundingClientRect(),r=t.clientY>n.top+n.height/2,i={name:e.name,after:r};j.current=i,E(i)},onDragLeave:t=>{t.currentTarget.contains(t.relatedTarget)||(j.current=null,E(t=>t?.name===e.name?null:t))},onDrop:e=>{e.preventDefault();let t=k.current,n=j.current;k.current=null,j.current=null,w(null),E(null),t&&n&&W(t,n)},onEditClick:()=>l(e),onDeleteClick:()=>H(e.name),onStatusToggle:t=>void te(e,t)},e.name))}),D&&(0,Z.jsx)(m,{variant:`body-small-default`,as:`p`,className:`mt-2 text-(--system-negative-strong)`,children:D}),x&&(0,Z.jsx)(m,{variant:`body-small-default`,as:`p`,className:`mt-2 text-(--system-negative-strong)`,children:x})]}),(0,Z.jsxs)(A.Footer,{className:`justify-between`,children:[(0,Z.jsx)(s,{variant:`outlined`,size:`compact`,onClick:d,children:`+ New Profile`}),(0,Z.jsx)(s,{variant:`outlined`,size:`compact`,onClick:c,children:`Done`})]})]}),(0,Z.jsx)(Ct,{blocked:M,availableReplacements:q,replacement:I,onReplacementChange:L,error:P,saving:ee,onClose:()=>{N(null),F(null)},onConfirm:()=>void U()})]})}function kt({mode:e,connection:t,assistantId:n,existingNames:r,onSave:i,onCancel:a}){let[o,c]=(0,X.useState)(e),[l,d]=(0,X.useState)(void 0),f=o===`managed-edit`,[p,h]=(0,X.useState)(t?.label??``),[g,_]=(0,X.useState)(t?.name??``),[v,y]=(0,X.useState)(t?.provider??`anthropic`),[b,x]=(0,X.useState)(()=>t?t.auth.type:`platform`),[S,C]=(0,X.useState)(()=>t?.auth.type===`api_key`?t.auth.credential:t?``:`credential/anthropic/api_key`),[w,T]=(0,X.useState)(t?.baseUrl??``),[E,O]=(0,X.useState)(()=>t?.models?t.models.map(e=>e.id).join(`, `):``),[k,j]=(0,X.useState)(!1),[M,P]=(0,X.useState)(null),I=v===`openai-compatible`,L=Oe(),ee=(0,X.useMemo)(()=>v&&!L.includes(v)?[...L,v]:L,[v,L]),{handleLabelChange:R,resetDirty:te}=Se(o,h,_),[B,V]=(0,X.useState)(``),[H,U]=(0,X.useState)(!1),W=u(),K=(0,X.useMemo)(()=>Re(S),[S]),q=b===`api_key`&&K!==null,{hasStoredCredential:ne,isLoading:re}=Te({assistantId:n,credentialKind:`credential`,credentialName:K?`${K.service}:${K.field}`:``,enabled:q}),{credentials:ie}=st({assistantId:n,enabled:b===`api_key`});(0,X.useEffect)(()=>{let e=t?.provider??`anthropic`;h(t?.label??``),_(t?.name??``),y(e),x(t?t.auth.type:`platform`),t?.auth.type===`api_key`?C(t.auth.credential):C(t?``:`credential/${e}/api_key`),te(),P(null),T(t?.baseUrl??``),O(t?.models?t.models.map(e=>e.id).join(`, `):``),V(``),U(!1)},[t,te]);function ae(){c(`create`),d(v===`ollama`?`none`:`api_key`)}let oe=g.trim().length>0;async function se(){if(oe){j(!0),P(null);try{let e;if(b===`api_key`){let t=S.trim()||`credential/${v}/api_key`,r=B.trim();if(r){U(!0);try{let e=Re(t);await z({path:{assistant_id:n},body:e?{type:`credential`,name:`${e.service}:${e.field}`,value:r}:{type:`api_key`,name:v,value:r},throwOnError:!0});let i=Le(n,`credential`,e?`${e.service}:${e.field}`:``);W.setQueryData(i,!0),W.invalidateQueries({queryKey:G({path:{assistant_id:n}})})}catch{P(`Failed to save API key. Please try again.`);return}finally{U(!1)}}e={type:`api_key`,credential:t}}else if(b===`oauth_subscription`)if(t?.auth.type===`oauth_subscription`)e=t.auth;else{P(`Use the "Sign in with ChatGPT" button to connect your subscription.`);return}else if(b===`service_account`)if(t?.auth.type===`service_account`)e=t.auth;else{P(`Service account connections cannot be created through this form.`);return}else e=b===`none`?{type:`none`}:{type:`platform`};let r=p.trim()||null,a={auth:e,label:r,...I&&{base_url:w.trim()||null,models:E.trim()?E.split(`,`).map(e=>({id:e.trim()})).filter(e=>e.id):null}},{data:o,response:s}=await F({path:{assistant_id:n,name:t?.name??g.trim()},body:a});if(!s?.ok){let e;try{let t=await s?.json();typeof t?.error?.message==`string`&&(e=t.error.message)}catch{}P(e||ze(s?.status,g.trim()));return}if(!o){P(`Server returned an empty response. Please try again.`);return}i(o)}catch{P(`Failed to save connection. Please try again.`)}finally{j(!1)}}}let ce=ie.filter(e=>e.service===v),le=o!==`create`&&t?.auth.type===`api_key`,ue=ce.length>0||le,de=Ie(`Enter your API key`,ne);return o===`create`?(0,Z.jsx)(Me,{variant:`modal`,assistantId:n,existingNames:r,defaultProviderType:v,defaultAuthType:l,onCreated:i,onCancel:a},v):(0,Z.jsxs)(A.Content,{size:`md`,children:[(0,Z.jsxs)(A.Header,{children:[(0,Z.jsx)(A.Title,{children:`Edit Connection`}),(0,Z.jsx)(A.Description,{children:f?`Managed by Vellum — auth is locked, but you can rename "${t?.name}".`:`Editing "${t?.name}".`})]}),(0,Z.jsxs)(A.Body,{className:`space-y-4`,children:[(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsxs)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:[`Display Name`,` `,(0,Z.jsx)(`span`,{className:`text-[var(--content-disabled)]`,children:`(optional)`})]}),(0,Z.jsx)(D,{value:p,onChange:e=>R(e.target.value),placeholder:`e.g. My Anthropic Key`,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:`Key`}),(0,Z.jsx)(D,{value:g,placeholder:`e.g. anthropic-personal`,disabled:!0,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:`Provider`}),(0,Z.jsx)(N,{"aria-label":`Provider`,value:v,onChange:y,disabled:!0,options:ee.map(e=>({value:e,label:Xe[e]}))})]}),I&&(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:`Base URL`}),(0,Z.jsx)(D,{value:w,onChange:e=>T(e.target.value),placeholder:`https://api.example.com/v1`,disabled:f,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:`Models`}),(0,Z.jsx)(D,{value:E,onChange:e=>O(e.target.value),placeholder:`model-1, model-2`,disabled:f,fullWidth:!0}),(0,Z.jsx)(m,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`Comma-separated model identifiers exposed by your endpoint.`})]})]}),(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Auth Type`}),(0,Z.jsx)(N,{"aria-label":`Auth type`,value:b,onChange:e=>{x(e),P(null)},disabled:f||v===`ollama`,options:(()=>{let e;return e=v===`ollama`?[`none`]:Be(v)?[`api_key`,`platform`]:[`api_key`],b&&!e.includes(b)&&e.push(b),e.map(e=>({value:e,label:De[e]}))})()})]}),b===`api_key`&&(0,Z.jsx)(Ee,{apiKeyValue:B,onApiKeyChange:V,credential:S,onCredentialChange:C,isAuthLocked:f,isLoadingCredential:re,apiKeyPlaceholder:de,provider:v,providerCredentials:ce,showAdvancedSection:ue,onError:P}),b===`oauth_subscription`&&(0,Z.jsx)(Fe,{assistantId:n,onConnected:i}),M&&(0,Z.jsx)(m,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:M})]}),(0,Z.jsxs)(A.Footer,{children:[(0,Z.jsx)(s,{variant:`ghost`,size:`compact`,onClick:a,children:`Cancel`}),o===`managed-edit`&&(0,Z.jsx)(s,{variant:`outlined`,size:`compact`,onClick:ae,disabled:k||H,children:`Save as New`}),(0,Z.jsx)(s,{variant:`primary`,size:`compact`,disabled:!oe||k||H,onClick:()=>void se(),children:k?`Saving…`:`Save`})]})]})}function At(e){switch(e.type){case`api_key`:return`API key · ${e.credential}`;case`oauth_subscription`:return`ChatGPT Subscription`;case`platform`:return`Managed proxy`;case`none`:return`None (local)`;default:return e.type}}function jt({isOpen:e,assistantId:t,onClose:n}){let[r,i]=(0,X.useState)(!1),[a,o]=(0,X.useState)(null),s=u(),{data:c,isLoading:l,isError:f}=d({...V({path:{assistant_id:t}}),enabled:e}),p=(0,X.useMemo)(()=>c?.connections??[],[c]);function m(e){s.invalidateQueries({queryKey:q({path:{assistant_id:t}})}),i(!1),o(null)}let h=p.map(e=>e.name),g=()=>{i(!1),o(null)};return(0,Z.jsx)(A.Root,{open:e,onOpenChange:e=>{e||(r?g():n())},children:e?r?(0,Z.jsx)(kt,{mode:a?a.isManaged?`managed-edit`:`edit`:`create`,connection:a??void 0,assistantId:t,existingNames:h,onSave:m,onCancel:g}):(0,Z.jsx)(Mt,{connections:p,loading:l,isError:f,assistantId:t,onClose:n,onEditClick:e=>{o(e),i(!0)},onNewClick:()=>{o(null),i(!0)},onConnectionDeleted:()=>{s.invalidateQueries({queryKey:q({path:{assistant_id:t}})})}}):null})}function Mt({connections:e,loading:t,isError:n,assistantId:r,onClose:i,onEditClick:a,onNewClick:o,onConnectionDeleted:c}){let[l,u]=(0,X.useState)({}),[d,f]=(0,X.useState)({});async function p(e){f(t=>({...t,[e]:!0})),u(t=>{let n={...t};return delete n[e],n});try{let{response:t}=await P({path:{assistant_id:r,name:e}});t?.ok||t?.status===404?c(e):t?.status===409?u(t=>({...t,[e]:`Connection is in use by one or more profiles. Remove those references first.`})):u(t=>({...t,[e]:`Failed to delete connection. Please try again.`}))}catch{u(t=>({...t,[e]:`Failed to delete connection. Please try again.`}))}finally{f(t=>{let n={...t};return delete n[e],n})}}return(0,Z.jsxs)(A.Content,{size:`md`,children:[(0,Z.jsxs)(A.Header,{children:[(0,Z.jsx)(A.Title,{children:`Provider Connections`}),(0,Z.jsx)(A.Description,{children:`Manage inference provider connections. Each connection binds a name to a provider and auth configuration.`})]}),(0,Z.jsx)(A.Body,{children:t?(0,Z.jsx)(`div`,{className:`space-y-2 py-2`,children:[1,2,3].map(e=>(0,Z.jsx)(`div`,{className:`h-10 animate-pulse rounded-lg bg-[var(--surface-active)]`},e))}):n?(0,Z.jsx)(m,{variant:`body-medium-default`,as:`p`,className:`py-4 text-center text-(--system-negative-strong)`,children:`Failed to load connections. Please try again.`}):e.length===0?(0,Z.jsx)(m,{variant:`body-medium-lighter`,as:`p`,className:`py-4 text-center text-(--content-tertiary)`,children:`No connections yet. Create one to get started.`}):(0,Z.jsx)(`div`,{className:`space-y-1`,children:e.map(e=>{let t=d[e.name]??!1,n=l[e.name],r=e.isManaged??!1;return(0,Z.jsxs)(`div`,{children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg px-2 py-2`,children:[(0,Z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(m,{variant:`body-medium-default`,as:`span`,className:`text-(--content-default)`,children:e.label??e.name}),r&&(0,Z.jsx)(E,{tone:`positive`,title:`Managed by Platform — auth is locked, but you can rename this connection.`,children:`Platform`})]}),(0,Z.jsxs)(m,{variant:`body-medium-lighter`,as:`p`,className:`mt-0.5 text-(--content-tertiary)`,children:[e.label?`${e.name} · `:``,Xe[e.provider]??e.provider,` · `,At(e.auth)]})]}),(0,Z.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,Z.jsx)(s,{variant:`ghost`,size:`compact`,onClick:()=>a(e),children:`Edit`}),(0,Z.jsx)(s,{variant:`ghost`,size:`compact`,iconOnly:(0,Z.jsx)(je,{}),"aria-label":`Delete ${e.name}`,disabled:r||t,title:r?`Managed connections cannot be deleted`:void 0,onClick:()=>void p(e.name),tintColor:`var(--system-negative-strong)`})]})]}),n?(0,Z.jsx)(m,{variant:`body-small-default`,as:`p`,className:`px-2 pb-1 text-(--system-negative-strong)`,children:n}):null]},e.name)})})}),(0,Z.jsxs)(A.Footer,{className:`justify-between`,children:[(0,Z.jsx)(s,{variant:`outlined`,size:`compact`,onClick:o,children:`+ New Connection`}),(0,Z.jsx)(s,{variant:`outlined`,size:`compact`,onClick:i,children:`Done`})]})]})}function $(e){let[t,n]=(0,X.useState)(void 0);return(0,X.useEffect)(()=>{t!==void 0&&e===t.value&&n(void 0)},[e,t]),[t===void 0?e:t.value,(0,X.useCallback)(e=>n(e===void 0?void 0:{value:e}),[])]}function Nt(){let e=Y(),t=u(),{data:n}=d({...H({path:{assistant_id:e}}),staleTime:3e4}),r=n?.llm?.activeProfile??null,i=n?.llm?.advisorProfile??null,o=n?.llm?.callSites??{},{profiles:c,profileOrder:l}=Ne(n?.llm,e),f=(0,X.useMemo)(()=>rt(c,l),[c,l]),p=B({onSuccess:n=>{K(t,{path:{assistant_id:e}},n)}}),[h,g]=$(r),[_,v]=$(i),[y,b]=(0,X.useState)(!1),[x,S]=(0,X.useState)(!1),[w,T]=(0,X.useState)(!1),E=(0,X.useMemo)(()=>Pe(f,[h]),[f,h]),D=(0,X.useMemo)(()=>Pe(f,[_]),[f,_]),O=Object.entries(o).filter(([e,t])=>e!==`mainAgent`&&(t?.profile!=null||t?.provider!=null||t?.model!=null)).length,k=O===1?`1 Override`:O>0?`${O} Overrides`:`Overrides`,A=h!==r,M=_!==i,P=(0,X.useCallback)(async()=>{try{let t={};A&&(t.activeProfile=h),M&&(t.advisorProfile=_),await p.mutateAsync({path:{assistant_id:e},body:{llm:t}}),j.success(`Saved.`)}catch(e){j.error(`Failed to save. Please try again.`),a(e,{context:`settings-ai-language-model-save`})}},[A,M,h,_,p,e]);return(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(mt,{title:`Language Model`,subtitle:`Configure the LLMs that power your assistant`,children:(0,Z.jsxs)(`div`,{className:`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:`Default Profile`}),(0,Z.jsx)(N,{value:h??``,onChange:e=>{g(e===``?null:e)},placeholder:`Select a default profile…`,options:E.map(e=>({value:e.name,label:Ce(e)}))}),E.length===0?(0,Z.jsx)(m,{variant:`body-small-default`,as:`p`,className:`mt-1 text-(--content-tertiary)`,children:`No profiles yet. Click Profiles below to create one.`}):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:`Advisor Profile`}),(0,Z.jsx)(N,{value:_??``,onChange:e=>{v(e===``?null:e)},placeholder:`Select an advisor profile…`,options:D.map(e=>({value:e.name,label:Ce(e)}))}),(0,Z.jsx)(m,{variant:`body-small-default`,as:`p`,className:`mt-1 text-(--content-tertiary)`,children:`Which model your assistant consults for a second opinion`})]}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(s,{variant:`outlined`,size:`compact`,onClick:()=>T(!0),children:`Providers`}),(0,Z.jsx)(s,{variant:`outlined`,size:`compact`,onClick:()=>b(!0),children:`Profiles`}),(0,Z.jsx)(s,{variant:`outlined`,size:`compact`,onClick:()=>S(!0),children:k})]}),(A||M)&&(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(Q,{onClick:P,disabled:p.isPending}),p.isPending&&(0,Z.jsx)(C,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`})]})]})}),e&&(0,Z.jsx)(Dt,{isOpen:y,assistantId:e,onClose:()=>b(!1)}),e&&(0,Z.jsx)(xt,{isOpen:x,onClose:()=>S(!1),assistantId:e}),e&&(0,Z.jsx)(jt,{isOpen:w,assistantId:e,onClose:()=>T(!1)})]})}var Pt=`vellum:ai:imageGenMode`,Ft=`vellum:ai:imageGenModel`,It=`vellum:ai:webSearchMode`,Lt=`vellum:ai:webSearchProvider`,Rt=`vellum:ai:webFetchProvider`,zt=`vellum:ai:emailMode`,Bt=`vellum:ai:emailByoProvider`,Vt=`vellum:voice:ttsProvider`,Ht=`vellum:voice:ttsApiKey:`,Ut=`vellum:voice:ttsVoiceId:`,Wt=`vellum:voice:sttProvider`,Gt=`vellum:voice:sttApiKey:`;function Kt(){let e=Y();return(0,X.useCallback)(async(t,n)=>{try{let{data:r}=await z({path:{assistant_id:e},body:{value:n,type:`api_key`,name:t},throwOnError:!0});We(r)}catch(e){throw e instanceof Error&&e.message===`No assistant found`?j.error(`Assistant not ready. Please try again.`):j.error(`Failed to save ${t} API key. Please try again.`),a(e,{context:`provision_provider_key`}),e}},[e])}function qt(){let e=Y(),i=u(),{data:o}=d({...H({path:{assistant_id:e}}),staleTime:3e4}),s=B({onSuccess:t=>{K(i,{path:{assistant_id:e}},t)}}),c=Kt(),{serverWebSearchMode:l,serverWebSearchProvider:f}=(0,X.useMemo)(()=>{if(!o)return{serverWebSearchMode:Je(n(It,`your-own`),`your-own`),serverWebSearchProvider:n(Lt,`inference-provider-native`)};let e=o.services?.[`web-search`];return{serverWebSearchMode:Je(e?.mode??n(`vellum:ai:webSearchMode`,`your-own`),`your-own`),serverWebSearchProvider:e?.provider||n(`vellum:ai:webSearchProvider`,`inference-provider-native`)}},[o]),[p,m]=(0,X.useState)(!1),[h,g]=$(l),[_,v]=$(f),[y,b]=(0,X.useState)(``),x=Ve.has(_),{hasStoredCredential:S}=Te({assistantId:e,credentialKind:`api_key`,credentialName:_,enabled:x}),w=y.trim().length>0,T=p||h===`your-own`&&x&&!S&&!w||!(h!==l||(h===`managed`?`inference-provider-native`:_)!==f)&&!w,E=Ie(He[_]??`Enter your API key`,S),O=(0,X.useCallback)(async()=>{m(!0);let t=y.trim(),n=h===`managed`?`inference-provider-native`:_,o=tt(n),l=h===`your-own`&&x&&t.length>0;try{l&&await c(n,t),await s.mutateAsync({path:{assistant_id:e},body:{services:{"web-search":{mode:h,provider:n}}}}).catch(e=>{throw j.error(`Failed to update assistant configuration. Please try again.`),a(e,{context:`patch_daemon_config`}),e})}catch{m(!1);return}m(!1);try{if(r(It,h),r(Lt,n),l){o&&r(o,t);let n=Le(e,`api_key`,_);i.setQueryData(n,!0),i.invalidateQueries({queryKey:n}),b(``)}j.success(`Web search settings saved.`)}catch(e){a(e,{context:`settings-ai-web-search-persist-local`}),j.error(`Saved, but local preferences could not be written.`)}},[x,s,c,i,e,y,h,_]),k=(0,X.useCallback)(()=>{let e=tt(_);e&&t(e),b(``),v(`inference-provider-native`),r(Lt,`inference-provider-native`)},[_,v]);return(0,Z.jsx)(ft,{title:`Web Search`,subtitle:`Configure how your assistant should search the web`,mode:h,onModeChange:e=>g(e),children:h===`managed`?(0,Z.jsxs)(`div`,{className:`space-y-3`,children:[(0,Z.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Web search is included with managed inference.`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(Q,{onClick:O,disabled:T}),p&&(0,Z.jsx)(C,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`})]})]}):(0,Z.jsxs)(`div`,{className:`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:`Provider`}),(0,Z.jsx)(N,{value:_,onChange:v,options:nt.map(e=>({value:e,label:Qe[e]??e}))})]}),x&&(0,Z.jsx)(D,{label:`API Key`,type:`password`,value:y,onChange:e=>b(e.target.value),placeholder:E,fullWidth:!0}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(Q,{onClick:O,disabled:T}),p&&(0,Z.jsx)(C,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),x&&(0,Z.jsx)(pt,{onClick:k,filled:!0})]})]})})}var Jt=`default`;function Yt(){let e=Y(),i=u(),{data:o}=d({...H({path:{assistant_id:e}}),staleTime:3e4}),s=B({onSuccess:t=>{K(i,{path:{assistant_id:e}},t)}}),c=Kt(),l=(0,X.useMemo)(()=>o?o.services?.[`web-fetch`]?.provider||n(`vellum:ai:webFetchProvider`,Jt):n(Rt,Jt),[o]),[f,p]=(0,X.useState)(!1),[m,h]=$(l),[g,_]=(0,X.useState)(``),v=Ye.has(m),{hasStoredCredential:y}=Te({assistantId:e,credentialKind:`api_key`,credentialName:m,enabled:v}),b=g.trim().length>0,x=f||v&&!y&&!b||m===l&&!b,S=Ie(Ge[m]??`Enter your API key`,y),w=(0,X.useCallback)(async()=>{p(!0);let t=g.trim(),n=v&&t.length>0;try{n&&await c(m,t),await s.mutateAsync({path:{assistant_id:e},body:{services:{"web-fetch":{provider:m}}}}).catch(e=>{throw j.error(`Failed to update assistant configuration. Please try again.`),a(e,{context:`patch_daemon_config`}),e})}catch{p(!1);return}p(!1);try{if(r(Rt,m),n){let n=Ze(m);n&&r(n,t);let a=Le(e,`api_key`,m);i.setQueryData(a,!0),i.invalidateQueries({queryKey:a}),_(``)}j.success(`Web fetch settings saved.`)}catch(e){a(e,{context:`settings-ai-web-fetch-persist-local`}),j.error(`Saved, but local preferences could not be written.`)}},[v,s,c,i,e,g,m]),T=(0,X.useCallback)(()=>{let e=Ze(m);e&&t(e),_(``),h(Jt),r(Rt,Jt)},[m,h]);return(0,Z.jsx)(mt,{id:`web-fetch`,title:`Web Fetch`,subtitle:`Configure how your assistant reads individual web pages`,children:(0,Z.jsxs)(`div`,{className:`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:`Provider`}),(0,Z.jsx)(N,{value:m,onChange:h,options:Ue.map(e=>({value:e,label:at[e]??e}))})]}),v&&(0,Z.jsx)(D,{label:`API Key`,type:`password`,value:g,onChange:e=>_(e.target.value),placeholder:S,fullWidth:!0}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(Q,{onClick:w,disabled:x}),f&&(0,Z.jsx)(C,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),v&&(0,Z.jsx)(pt,{onClick:T,filled:!0})]})]})})}var Xt=[{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`}}],Zt=[{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:`macos-native`,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`};function tn(e){return e.startsWith(`gpt-`)||e.startsWith(`dall-e-`)?`openai`:(e.startsWith(`gemini-`),`gemini`)}function nn({assistantId:e,assistantHandle:t,emailRootDomain:n}){let r=u(),i=c(),[o,p]=l(),[m,h]=(0,X.useState)(``),[g,_]=(0,X.useState)(!1),[v,x]=(0,X.useState)(null),[S,w]=(0,X.useState)(``),[E,D]=(0,X.useState)(null),[O,k]=(0,X.useState)(!1),[A,N]=(0,X.useState)(!1),[P,F]=(0,X.useState)(!1);(0,X.useEffect)(()=>{g||!t||m||(h(t),_(!0))},[t,g,m]);let I=d({...de(),enabled:!0}),L=I.data,ee=L?.entitlements,R=ee?.managed_email===!0,z=!!ee&&!R,te=!L&&I.isError&&!I.isFetching,B=d({...oe({path:{assistant_id:e}}),enabled:!z}),V=d({...he({path:{assistant_id:e}}),enabled:!z}),H=B.data?.results?.[0],U=V.data?.results?.[0],W=H?`${H.subdomain}.${n}`:null,G=d({...ue({path:{assistant_id:e,id:U?.id??``}}),enabled:!!U?.id,refetchOnWindowFocus:!1}),K=d({..._e({path:{assistant_id:e,id:H?.id??``}}),enabled:!!H?.id,refetchInterval:e=>{let t=e.state.data?.status;return t===`verified`||t===`failed`?!1:1e4},refetchOnWindowFocus:!0});(0,X.useEffect)(()=>{o.get(`release`)!==`1`||!H||U||(N(!0),p(e=>{let t=new URLSearchParams(e);return t.delete(`release`),t},{replace:!0}))},[U,H,o,p]);let q=f(me()),ie=f(ge()),ae=f(se()),ve=f(ce()),J=(0,X.useCallback)(()=>{let t={assistant_id:e};r.invalidateQueries({queryKey:fe({path:t})}),r.invalidateQueries({queryKey:pe({path:t})}),U?.id&&r.invalidateQueries({queryKey:le({path:{...t,id:U.id}})}),r.invalidateQueries({queryKey:ye()})},[U?.id,e,r]),be=(0,X.useCallback)(async()=>{let t=m.trim().toLowerCase();if(!t){x(`Enter a subdomain.`);return}k(!1);try{await q.mutateAsync({path:{assistant_id:e},body:{subdomain:t}}),h(``),x(null),J(),j.success(`Domain ${t}.${n} registered.`)}catch(e){x(ne(e,void 0,`Failed to register domain.`))}},[e,n,J,q,m]),xe=(0,X.useCallback)(async()=>{let t=S.trim().toLowerCase();if(!t){D(`Enter an email username.`);return}try{await ae.mutateAsync({path:{assistant_id:e},body:{username:t}}),w(``),D(null),J(),j.success(`Email address created.`)}catch(e){D(ne(e,void 0,`Failed to create email address.`))}},[e,J,ae,S]),Se=(0,X.useCallback)(async()=>{if(U?.id){F(!1);try{await ve.mutateAsync({path:{assistant_id:e,id:U.id}}),J(),j.success(`Email address removed.`)}catch(e){a(e,{context:`email_address_delete`}),j.error(`Failed to remove email address.`)}}},[U?.id,e,ve,J]),Ce=(0,X.useCallback)(async()=>{if(!H?.id)return;if(U){j.error(`Remove the email address first.`);return}N(!1);let t=H.subdomain;try{await ie.mutateAsync({path:{assistant_id:e,id:H.id}}),h(t),J(),j.success(`Domain released.`)}catch(e){a(e,{context:`email_domain_release`}),j.error(`Failed to release domain.`)}},[U,e,ie,H?.id,H?.subdomain,J]);if(I.isLoading)return(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,Z.jsx)(C,{className:`h-4 w-4 animate-spin`}),`Checking subscription…`]});if(z)return(0,Z.jsxs)(T,{tone:`info`,icon:(0,Z.jsx)(y,{className:`h-4 w-4`,"aria-hidden":!0}),title:`Get a dedicated email address for your assistant`,actions:(0,Z.jsx)(s,{size:`compact`,onClick:()=>i(`${re.settings.billing}?adjust_plan`),children:`Upgrade to Pro`}),children:[`Pro plans include a managed`,` `,`<your-subdomain>.${n}`,` inbox — no provider setup required. Or switch to `,(0,Z.jsx)(`strong`,{children:`Your Own`}),` to bring an existing provider.`]});let we=te?(0,Z.jsx)(T,{tone:`warning`,title:`Couldn't verify subscription status`,actions:(0,Z.jsx)(s,{size:`compact`,variant:`outlined`,onClick:()=>I.refetch(),children:`Retry`}),children:`We couldn't reach the billing service. The form below assumes managed email is enabled for your org — if it isn't, registering a domain will fail.`}):null;return H?U?(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[we,(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Address`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:U.address}),(0,Z.jsx)(gt,{status:K.data?.status,message:K.data?.message,isLoading:K.isLoading}),(0,Z.jsx)(s,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,Z.jsx)(je,{}),onClick:()=>F(!0),disabled:ve.isPending,"aria-label":`Remove email address`})]}),(0,Z.jsx)(M,{open:P,title:`Remove Email Address`,message:(0,Z.jsxs)(Z.Fragment,{children:[`Are you sure you want to remove `,(0,Z.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`,children:U.address}),`? Your assistant will no longer be able to send or receive email at this address.`]}),confirmLabel:`Remove`,destructive:!0,onConfirm:Se,onCancel:()=>F(!1)})]}),G.data?.usage&&(0,Z.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[G.data.usage.sent_today,` /`,` `,G.data.usage.daily_limit,` sent today ·`,` `,G.data.usage.received_today,` received`]})]}):(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[we,(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Domain`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsxs)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:[H.subdomain,`.`,n]}),(0,Z.jsx)(gt,{status:K.data?.status,message:K.data?.message,isLoading:K.isLoading}),(0,Z.jsx)(s,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,Z.jsx)(je,{}),onClick:()=>N(!0),disabled:ie.isPending,"aria-label":`Release domain`})]}),(0,Z.jsx)(M,{open:A,title:`Release Domain`,message:(0,Z.jsxs)(Z.Fragment,{children:[`Are you sure you want to release `,(0,Z.jsxs)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`,children:[H.subdomain,`.`,n]}),`? The subdomain will become available for others to claim.`]}),confirmLabel:`Release`,destructive:!0,onConfirm:Ce,onCancel:()=>N(!1)})]}),(0,Z.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Email address`}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsxs)(`div`,{className:`flex h-9 min-w-0 flex-1 items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${E?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[(0,Z.jsx)(`input`,{value:S,onChange:e=>{w(e.target.value.toLowerCase()),E&&D(null)},placeholder:`hi`,"aria-label":`Email username`,"aria-invalid":!!E,className:`h-full min-w-0 flex-1 bg-transparent pl-3 pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`}),(0,Z.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`@`,W]})]}),(0,Z.jsx)(s,{onClick:xe,disabled:ae.isPending||!S.trim(),children:ae.isPending?`Creating…`:`Create`})]}),E&&(0,Z.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:E})]})]}):(0,Z.jsxs)(`div`,{className:`space-y-3`,children:[we,(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Subdomain`}),(0,Z.jsx)(b,{subdomain:m,onSubdomainChange:e=>{h(e),v&&x(null)},domainSuffix:n,subdomainPlaceholder:`my-assistant`,error:v}),(0,Z.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Each assistant gets its own subdomain. Lowercase letters, numbers, and hyphens only.`}),(0,Z.jsx)(s,{onClick:()=>k(!0),disabled:q.isPending||!m.trim(),children:q.isPending?`Registering…`:`Register`}),(0,Z.jsx)(M,{open:O,title:`Set Subdomain`,message:(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`,children:m.trim().toLowerCase()||`subdomain`}),` will also become your assistant's public handle. You won't be able to change it once set.`]}),confirmLabel:`Confirm`,onConfirm:be,onCancel:()=>k(!1)})]})}function rn(){let e=Y(),t=ie(),{data:o}=d({...ve(),enabled:t}),s=o?.results?.[0]?.handle,c=lt.use.emailRootDomain(),l=be(),[u,f]=(0,X.useState)(()=>l===`gated`?`your-own`:Je(n(zt,`managed`),`managed`)),[p,m]=(0,X.useState)(()=>{let e=n(Bt,`resend`);return e===`mailgun`||e===`resend`?e:`resend`}),h=d({queryKey:[`byoEmailCredential`,e,p],queryFn:async()=>{let{data:t}=await I({path:{assistant_id:e},body:{service:p,field:`api_key`},throwOnError:!0});return t},enabled:u===`your-own`||l===`gated`,staleTime:6e4,retry:i,meta:{errorContext:`byo_email_credential_check`}});(0,X.useEffect)(()=>{h.error&&a(h.error,{context:`byo_email_credential_check`,bestEffort:!0})},[h.error]);let g=h.data?.hasSecret===!0,_=(0,X.useCallback)(e=>{f(e),r(zt,e)},[]),y=(0,X.useCallback)(()=>{r(Bt,p),j.success(`Email settings saved.`)},[p]),b=(0,X.useMemo)(()=>Qt.find(e=>e.id===p)??Qt[0],[p]),C=(0,Z.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,Z.jsx)(S,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,Z.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Z.jsxs)(`span`,{children:[`Configure `,b.displayName,` via the assistant CLI: ask the assistant to run the`,` `,(0,Z.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`,children:b.setupSkill}),` `,`skill. It walks you through storing the API key, detecting the domain, and (optionally) wiring up an inbound webhook.`]}),(0,Z.jsxs)(`a`,{href:b.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[`Open `,b.displayName,(0,Z.jsx)(x,{className:`h-3 w-3`})]})]})]}),w=(0,Z.jsxs)(`div`,{className:`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:`Provider`}),(0,Z.jsx)(N,{value:p,onChange:e=>{(e===`mailgun`||e===`resend`)&&m(e)},options:Qt.map(e=>({value:e.id,label:e.displayName}))})]}),g?(0,Z.jsxs)(`div`,{className:`space-y-3`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-[var(--system-positive-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-default)]`,children:[(0,Z.jsx)(v,{className:`h-4 w-4 shrink-0 text-[var(--system-positive-strong)]`}),(0,Z.jsxs)(`span`,{children:[b.displayName,` API key configured. To reconfigure, run the`,` `,(0,Z.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`,children:b.setupSkill}),` `,`skill.`]})]}),(0,Z.jsxs)(`a`,{href:b.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-body-small-default text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[`Open `,b.displayName,(0,Z.jsx)(x,{className:`h-3 w-3`})]})]}):C,(0,Z.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,Z.jsx)(Q,{onClick:y,disabled:!1})})]});return l===`gated`?(0,Z.jsx)(mt,{id:`email`,title:`Email`,subtitle:`Configure how your assistant sends and receives email`,children:w}):(0,Z.jsx)(ft,{id:`email`,title:`Email`,subtitle:`Configure how your assistant sends and receives email`,mode:u,onModeChange:_,children:u===`managed`?(0,Z.jsx)(`div`,{className:`space-y-4`,children:l===`disabled`?(0,Z.jsx)(we,{children:`Log in to the Vellum platform to manage email settings.`}):(0,Z.jsx)(nn,{assistantId:e,assistantHandle:s,emailRootDomain:c})}):w})}function an(){let e=Y(),t=u(),{data:i}=d({...H({path:{assistant_id:e}}),staleTime:3e4}),o=B({onSuccess:n=>{K(t,{path:{assistant_id:e}},n)}}),s=Kt(),[c,l]=$((0,X.useMemo)(()=>Je(i?i.services?.[`image-generation`]?.mode??n(`vellum:ai:imageGenMode`,`your-own`):n(Pt,`your-own`),`your-own`),[i])),[f,p]=(0,X.useState)(()=>n(Ft,`gemini-3.1-flash-image-preview`)),[m,h]=(0,X.useState)(``),[g,_]=(0,X.useState)(!1),v=(0,X.useCallback)(async()=>{_(!0);let n=m.trim(),i=c===`your-own`&&n.length>0;try{i&&await s(tn(f),n),await o.mutateAsync({path:{assistant_id:e},body:{services:{"image-generation":{mode:c}}}}).catch(e=>{throw j.error(`Failed to update assistant configuration. Please try again.`),a(e,{context:`patch_daemon_config`}),e});try{await R({path:{assistant_id:e},body:{modelId:f},throwOnError:!0})}catch(e){throw j.error(`Failed to update image generation model. Please try again.`),a(e,{context:`set_image_gen_model`}),e}finally{t.invalidateQueries({queryKey:W({path:{assistant_id:e}})})}}catch{_(!1);return}_(!1);try{r(Pt,c),r(Ft,f),i&&h(``),j.success(`Image generation settings saved.`)}catch(e){a(e,{context:`settings-ai-image-gen-persist-local`}),j.error(`Saved, but local preferences could not be written.`)}},[m,c,f,e,o,s,t]),y=(0,X.useCallback)(()=>{h(``),p(`gemini-3.1-flash-image-preview`),r(Ft,`gemini-3.1-flash-image-preview`)},[]);return(0,Z.jsx)(ft,{title:`Image Generation`,subtitle:`Configure which model your assistant uses to generate images`,mode:c,onModeChange:e=>l(e),children:c===`managed`?(0,Z.jsxs)(`div`,{className:`space-y-3`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Active Model`}),(0,Z.jsxs)(`div`,{className:`flex items-end gap-3`,children:[(0,Z.jsx)(N,{className:`flex-1`,value:f,onChange:p,options:$t.map(e=>({value:e,label:en[e]??e}))}),(0,Z.jsx)(Q,{onClick:v,disabled:g}),g&&(0,Z.jsx)(C,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`})]})]}):(0,Z.jsxs)(`div`,{className:`space-y-4`,children:[(0,Z.jsx)(D,{label:`API Key`,type:`password`,value:m,onChange:e=>h(e.target.value),placeholder:tn(f)===`openai`?`Enter your OpenAI API key`:`Enter your Gemini API key`,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:`Active Model`}),(0,Z.jsx)(N,{value:f,onChange:p,options:$t.map(e=>({value:e,label:en[e]??e}))})]}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(Q,{onClick:v,disabled:g}),g&&(0,Z.jsx)(C,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),(0,Z.jsx)(pt,{onClick:y})]})]})})}async function on(e){let{provider:t,apiKey:n,voiceId:r,text:i}=e;if(n.trim().length===0)return{kind:`error`,message:`Save an API key for this provider first.`};try{return t===`elevenlabs`?await sn(n,r,i):t===`deepgram`?await cn(n,i):t===`fish-audio`?{kind:`unsupported`,message:`Fish Audio TTS is only supported in the desktop app today. Use ElevenLabs or Deepgram to test from the browser.`}:t===`xai`?{kind:`unsupported`,message:`xAI TTS is only supported in the desktop app today. Use ElevenLabs or Deepgram to test from the browser.`}:{kind:`unsupported`,message:`TTS testing for "${t}" is not supported from the browser yet.`}}catch(e){return{kind:`error`,message:e instanceof Error?e.message:`Failed to reach the TTS provider.`}}}async function sn(e,t,n){let r=t.trim();if(r.length===0)return{kind:`error`,message:`Enter and save a Voice ID before testing ElevenLabs.`};let i=await fetch(`https://api.elevenlabs.io/v1/text-to-speech/${encodeURIComponent(r)}?output_format=mp3_44100_128`,{method:`POST`,headers:{"xi-api-key":e,"Content-Type":`application/json`,Accept:`audio/mpeg`},body:JSON.stringify({text:n,model_id:`eleven_turbo_v2_5`})});return i.ok?{kind:`audio`,blob:await i.blob()}:{kind:`error`,message:await ln(i,`ElevenLabs rejected the request.`)}}async function cn(e,t){let n=await fetch(`https://api.deepgram.com/v1/speak?model=aura-2-thalia-en`,{method:`POST`,headers:{Authorization:`Token ${e}`,"Content-Type":`application/json`,Accept:`audio/mpeg`},body:JSON.stringify({text:t})});return n.ok?{kind:`audio`,blob:await n.blob()}:{kind:`error`,message:await ln(n,`Deepgram rejected the request.`)}}async function ln(e,t){try{let n=await e.text();if(n.length===0)return`${t} (HTTP ${e.status})`;try{let e=JSON.parse(n);if(e&&typeof e==`object`&&`detail`in e&&typeof e.detail==`string`)return e.detail;if(e&&typeof e==`object`&&`message`in e&&typeof e.message==`string`)return e.message}catch{}return n.slice(0,200)}catch{return`${t} (HTTP ${e.status})`}}var un={elevenlabs:`voiceId`,"fish-audio":`referenceId`,xai:`voiceId`};function dn(){let e=Y(),t=ae.use.name()??`your assistant`,i=ie(),a=u(),{data:o}=d({...te({path:{assistant_id:e}}),enabled:i,staleTime:1/0}),c=o?.providers??Xt,{data:l}=d({...H({path:{assistant_id:e}}),enabled:i,staleTime:3e4}),f=l?.services?.tts?.provider,p=c[0]?.id??`elevenlabs`,m=(0,X.useMemo)(()=>f??n(`vellum:voice:ttsProvider`,p),[f,p]),h=!!f,[g,_]=$(m),[v,y]=(0,X.useState)(``),[b,x]=(0,X.useState)(``),[S,C]=(0,X.useState)(``),[w,T]=(0,X.useState)(!1),[E,O]=(0,X.useState)(!1),[k,A]=(0,X.useState)(!1),M=(0,X.useMemo)(()=>c.find(e=>e.id===g)??c[0],[g,c]),P=(0,X.useCallback)(e=>{let t=n(Ht+e,``),r=n(Ut+e,``);T(t.length>0),x(r),C(r),y(``)},[]);(0,X.useEffect)(()=>{P(g)},[g,P]);let F=(0,X.useMemo)(()=>{let e=g!==m,t=v.trim().length>0,n=b.trim()!==S;return e||t||n},[g,m,v,b,S]),I=(0,X.useCallback)(async()=>{let t=v.trim(),i=b.trim();r(Vt,g),t.length>0&&r(Ht+g,t),r(Ut+g,i);let o=t.length>0?t:n(Ht+g,``),s=un[g];A(!0);try{if(o.length>0){let{response:t}=await ee({path:{assistant_id:e},body:{service:g,field:`api_key`,value:o,label:`${M.displayName} API Key`},throwOnError:!1});if(!t?.ok)throw Error(`Failed to store API key (HTTP ${t?.status??`?`})`)}let t={...g!==m||!h?{provider:g}:{},...s?{providers:{[g]:{[s]:i}}}:{}};if(Object.keys(t).length>0){let{response:n}=await L({path:{assistant_id:e},body:{services:{tts:t}},throwOnError:!1});if(!n?.ok)throw Error(`Failed to save configuration (HTTP ${n?.status??`?`})`)}T(o.length>0),C(i),y(``),a.invalidateQueries({queryKey:W({path:{assistant_id:e}})}),j.success(`Text-to-speech settings saved`)}catch(e){j.error(e instanceof Error?e.message:`Failed to save text-to-speech settings`)}finally{A(!1)}},[e,g,v,b,M,m,h,a]),R=(0,X.useCallback)(()=>{r(Ht+g,``),T(!1),y(``)},[g]),z=(0,X.useCallback)(async()=>{O(!0);try{let e=n(Ht+g,``),r=v.trim(),i=r.length>0?r:e;if(i.length===0){j.error(`Save an API key for this provider before testing.`);return}let a=n(Ut+g,``),o=b.trim(),s=await on({provider:g,apiKey:i,voiceId:o.length>0?o:a,text:`Hey! It's ${t}. How does this sound?`});if(s.kind!==`audio`){j.error(s.message);return}let c=URL.createObjectURL(s.blob);try{let e=new Audio(c);await e.play(),await new Promise(t=>{e.onended=()=>t(),e.onerror=()=>t()})}finally{URL.revokeObjectURL(c)}}finally{O(!1)}},[t,v,g,b]),B=w?`•••••••• (Enter a new key to replace)`:M.apiKeyPlaceholder;return(0,Z.jsx)(mt,{title:`Text-to-Speech`,subtitle:M.subtitle,children:(0,Z.jsxs)(`div`,{className:`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:`Provider`}),(0,Z.jsx)(N,{value:g,onChange:_,options:c.map(e=>({value:e.id,label:e.displayName})),"aria-label":`TTS provider`})]}),(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`API Key`}),(0,Z.jsx)(D,{type:`password`,value:v,onChange:e=>y(e.target.value),placeholder:B,fullWidth:!0})]}),M.supportsVoiceSelection&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Voice ID`}),(0,Z.jsx)(D,{type:`text`,value:b,onChange:e=>x(e.target.value),placeholder:`Enter a voice ID`,fullWidth:!0})]}),(0,Z.jsx)(ht,{guide:M.credentialsGuide}),(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(s,{variant:`outlined`,onClick:z,disabled:E,children:E?`Testing…`:`Test`}),(0,Z.jsxs)(`div`,{className:`ml-auto flex items-center gap-2`,children:[(0,Z.jsx)(Q,{onClick:I,disabled:!F||k}),w&&(0,Z.jsx)(pt,{onClick:R})]})]})]})})}var fn={deepgram:{provider:`deepgram`,credentialService:`deepgram`},openai:{provider:`openai-whisper`,credentialService:`openai`}},pn={deepgram:`deepgram`,"openai-whisper":`openai`};function mn(){let e=Y(),t=ie(),i=u(),[a]=(0,X.useState)(()=>Zt.filter(e=>!e.requiresNativeDictation||it())),o=a[0]?.id??`deepgram`,{data:s}=d({...H({path:{assistant_id:e}}),enabled:t,staleTime:3e4}),c=s?.services?.stt?.provider,l=(0,X.useMemo)(()=>{let e=c?pn[c]:void 0;if(e&&a.some(t=>t.id===e))return e;let t=n(Wt,o);return a.some(e=>e.id===t)?t:o},[c,a,o]),f=!!c,[p,m]=$(l),[h,g]=(0,X.useState)(``),[_,v]=(0,X.useState)(!1),[y,b]=(0,X.useState)(!1);(0,X.useEffect)(()=>{let e=n(Wt,o);e===`macos-native`&&!a.some(t=>t.id===e)&&r(Wt,o)},[a,o]);let x=(0,X.useMemo)(()=>a.find(e=>e.id===p)??a[0],[a,p]),S=x.apiKeyPlaceholder!==void 0;(0,X.useEffect)(()=>{v(n(Gt+p,``).length>0),g(``)},[p]);let C=(0,X.useMemo)(()=>{let e=p!==l,t=h.trim().length>0;return e||t},[p,l,h]),T=(0,X.useCallback)(async()=>{let t=h.trim();r(Wt,p),t.length>0&&r(Gt+p,t);let a=fn[p];b(!0);try{if(a){let r=t.length>0?t:n(Gt+p,``);if(r.length>0){let{response:t}=await ee({path:{assistant_id:e},body:{service:a.credentialService,field:`api_key`,value:r,label:`${x.displayName} API Key`},throwOnError:!1});if(!t?.ok)throw Error(`Failed to store API key (HTTP ${t?.status??`?`})`)}if(p!==l||!f){let{response:t}=await L({path:{assistant_id:e},body:{services:{stt:{provider:a.provider}}},throwOnError:!1});if(!t?.ok)throw Error(`Failed to save configuration (HTTP ${t?.status??`?`})`)}}t.length>0&&v(!0),g(``),i.invalidateQueries({queryKey:W({path:{assistant_id:e}})}),j.success(`Speech-to-text settings saved`)}catch(e){j.error(e instanceof Error?e.message:`Failed to save speech-to-text settings`)}finally{b(!1)}},[e,p,h,x,l,f,i]),E=(0,X.useCallback)(()=>{r(Gt+p,``),v(!1),g(``)},[p]),O=_?`•••••••• (Enter a new key to replace)`:x.apiKeyPlaceholder;return(0,Z.jsx)(mt,{title:`Speech-to-Text`,subtitle:x.subtitle,children:(0,Z.jsxs)(`div`,{className:`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:`Provider`}),(0,Z.jsx)(N,{value:p,onChange:m,options:a.map(e=>({value:e.id,label:e.displayName})),"aria-label":`STT provider`})]}),S&&(0,Z.jsxs)(`div`,{className:`space-y-1`,children:[(0,Z.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`API Key`}),(0,Z.jsx)(D,{type:`password`,value:h,onChange:e=>g(e.target.value),placeholder:O,fullWidth:!0})]}),x.setupWarning&&(0,Z.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,Z.jsx)(w,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-mid-strong)]`}),(0,Z.jsx)(`span`,{children:x.setupWarning})]}),x.credentialsGuide&&(0,Z.jsx)(ht,{guide:x.credentialsGuide}),(0,Z.jsxs)(`div`,{className:`flex items-center justify-end gap-2`,children:[(0,Z.jsx)(Q,{onClick:T,disabled:!C||y}),_&&(0,Z.jsx)(pt,{onClick:E})]})]})})}function hn(){return(0,X.useEffect)(()=>{let e=window.location.hash.slice(1);e&&requestAnimationFrame(()=>{document.getElementById(e)?.scrollIntoView({block:`start`})})},[]),(0,Z.jsxs)(`div`,{className:`space-y-5`,children:[(0,Z.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] px-4 py-2.5`,children:[(0,Z.jsx)(S,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-tertiary)]`}),(0,Z.jsxs)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:[`Managed services are metered and deducted from your Vellum account balance.`,` `,(0,Z.jsxs)(`a`,{href:`https://www.vellum.ai/docs/pricing`,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--primary-base)] hover:underline`,children:[`View pricing`,(0,Z.jsx)(x,{className:`h-3.5 w-3.5`})]})]})]}),(0,Z.jsx)(Nt,{}),(0,Z.jsx)(qt,{}),(0,Z.jsx)(Yt,{}),(0,Z.jsx)(rn,{}),(0,Z.jsx)(an,{}),(0,Z.jsx)(dn,{}),(0,Z.jsx)(mn,{})]})}export{hn as AiPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{t as r}from"./createLucideIcon-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{t as r}from"./createLucideIcon-IRfcSUxS.js";import{n as i,r as a}from"./avatar-svg-compositor-T4Nlid_8.js";import{t as o}from"./use-reduced-motion-DRo6JmG-.js";var s=r(`dices`,[[`rect`,{width:`12`,height:`12`,x:`2`,y:`10`,rx:`2`,ry:`2`,key:`6agr2n`}],[`path`,{d:`m17.92 14 3.5-3.5a2.24 2.24 0 0 0 0-3l-5-4.92a2.24 2.24 0 0 0-3 0L10 6`,key:`1o487t`}],[`path`,{d:`M6 18h.01`,key:`uhywen`}],[`path`,{d:`M10 14h.01`,key:`ssrbsk`}],[`path`,{d:`M15 6h.01`,key:`cblpky`}],[`path`,{d:`M18 9h.01`,key:`2061c0`}]]),c=e(t(),1),l=n();function u(e,t){return e+Math.random()*(t-e)}function d(e){let t=[],n=/-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?/gi,r;for(;(r=n.exec(e))!==null;)t.push(parseFloat(r[0]));return t}function f(e){let t=d(e),n=0,r=0,i=0;for(let e=0;e<t.length-1;e+=2)n+=t[e],r+=t[e+1],i++;return i>0?{x:n/i,y:r/i}:{x:0,y:0}}function p(e,t,n){let r=f(e),i=t*1.1;return e.replace(/-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?/gi,(t,a)=>{let o=parseFloat(t),s=e.slice(0,a).match(/-?(?:\d+\.?\d*|\.\d+)(?:e[+-]?\d+)?/gi),c=s?s.length:0,l=c%2==0,u=l?r.x:r.y,f=d(e),p=l?c+1:c-1,m=p>=0&&p<f.length?f[p]:u,h=l?o:m,g=Math.atan2((l?m:o)-r.y,h-r.x),_=1+(Math.sin(g*2+i)*.7+Math.sin(g*3-i*.5)*.3)*n;return(u+(o-u)*_).toFixed(3)})}function m(e,t,n){let r=[e];for(let i=1;i<t;i++)r.push(p(e,i,n));return r}function h({components:e,traits:t,size:n,isStreaming:r=!1,breathe:s=!0}){let d=o(),{bodyShape:f,eyeStyle:p,color:h}=a(e,t.bodyShape,t.eyeStyle,t.color),{bodyTransform:g,eyeTransform:_}=i(f,p,e,n),v=p.sourceViewBox,y=f.viewBox,b=Math.min(n/y.width,n/y.height),x=(n-y.width*b)/2,S=(n-y.height*b)/2,C=Math.min(y.width/v.width,y.height/v.height),w=e.faceCenterOverrides.find(e=>e.bodyShape===f.id&&e.eyeStyle===p.id),T=w?w.faceCenter:f.faceCenter,E=T.x-p.eyeCenter.x*C,D=T.y-p.eyeCenter.y*C,O=b*(E+p.eyeCenter.x*C)+x,k=b*(D+p.eyeCenter.y*C)+S,A=(0,c.useMemo)(()=>r?m(f.svgPath,16,.06):[f.svgPath],[f.svgPath,r]),[j,M]=(0,c.useState)(!1),[N,P]=(0,c.useState)(0),[F,I]=(0,c.useState)(0),L=(0,c.useRef)(null);(0,c.useEffect)(()=>{if(d||r){M(!1);return}let e=!1;function t(){return setTimeout(()=>{e||(M(!0),setTimeout(()=>{e||(M(!1),Math.random()<.2?setTimeout(()=>{e||(M(!0),setTimeout(()=>{e||(M(!1),t())},150))},200):t())},150))},u(3e3,7e3))}let n=t();return()=>{e=!0,clearTimeout(n)}},[d,r]),(0,c.useEffect)(()=>{if(d||r){P(0);return}let e=!1;function t(){return setTimeout(()=>{e||(P((Math.random()<.5?-1:1)*u(1,2)),setTimeout(()=>{e||(P(0),t())},200))},u(8e3,15e3))}let n=t();return()=>{e=!0,clearTimeout(n)}},[d,r]),(0,c.useEffect)(()=>{if(!r||d){I(0);return}let e=0;return L.current=setInterval(()=>{e=(e+1)%A.length,I(e)},150),()=>{L.current&&clearInterval(L.current),L.current=null}},[r,d,A.length]);let R=n/2,z=n/2,B=d?`none`:r?`avatar-morph-scale 2.4s ease-in-out infinite, avatar-morph-rotate 3s ease-in-out infinite`:s?`avatar-breathe-kf 4s ease-in-out infinite`:`none`,V=r?0:N,H=j&&!r,U=A[F]??f.svgPath;return(0,l.jsxs)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:n,height:n,viewBox:`0 0 ${n} ${n}`,style:{animation:B,transformOrigin:`center`},children:[(0,l.jsx)(`g`,{style:{transform:`rotate(${V}deg)`,transformOrigin:`${R}px ${z}px`,transition:V===0?`transform 0.3s ease-out`:`transform 0.2s ease-in-out`},children:(0,l.jsx)(`path`,{d:U,fill:h.hex,transform:g,style:{transition:r?`d 0.3s ease-in-out`:`none`}})}),(0,l.jsx)(`g`,{style:{transform:H?`scaleY(0.1)`:`scaleY(1)`,transformOrigin:`${O}px ${k}px`,transition:`transform 0.15s ease-in-out`},children:p.paths.map((e,t)=>(0,l.jsx)(`path`,{d:e.svgPath,fill:e.color,transform:_},t))})]})}export{s as n,h as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{r as e}from"./chunk-jRWAZmH_.js";import{B as t,G as n,H as ee,I as te,J as r,K as ne,L as re,Q as ie,R as i,U as a,V as o,W as s,X as c,Y as ae,Z as oe,q as l,z as se}from"./local-mode-YoUYEn7C.js";function u(e){return ie(re,e)}function ce(e){return oe(te,e)}var le=i([`end_turn`,`max_tokens`,`max_turn_requests`,`refusal`,`cancelled`]),ue=n({type:a(`acp_session_completed`),acpSessionId:r(),stopReason:le}).strict(),de=n({type:a(`acp_session_error`),acpSessionId:r(),error:r()}).strict(),fe=n({type:a(`acp_session_spawned`),acpSessionId:r(),agent:r(),parentConversationId:r(),parentToolUseId:r().optional(),task:r().optional()}).strict(),pe=i([`agent_message_chunk`,`agent_thought_chunk`,`user_message_chunk`,`tool_call`,`tool_call_update`,`plan`]),me=n({type:a(`acp_session_update`),acpSessionId:r(),updateType:pe,content:r().optional(),toolCallId:r().optional(),toolTitle:r().optional(),toolKind:r().optional(),toolStatus:r().optional(),rawInput:c().optional(),rawOutput:c().optional(),locations:t(n({path:r(),line:s().optional()})).optional(),messageId:r().optional(),seq:s().optional()}).strict(),he=n({type:a(`acp_session_usage`),acpSessionId:r(),usedTokens:s(),contextSize:s(),inputTokens:s().optional(),outputTokens:s().optional(),costAmount:s().optional(),costCurrency:r().optional()}).strict(),ge=i([`idle`,`thinking`,`streaming`,`tool_running`,`awaiting_confirmation`]),_e=i([`assistant_turn`,`user_turn`,`global`]),ve=i([`message_dequeued`,`thinking_delta`,`first_text_delta`,`tool_use_start`,`preview_start`,`tool_result_received`,`confirmation_requested`,`confirmation_resolved`,`context_compacting`,`message_complete`,`generation_cancelled`,`error_terminal`]),ye=n({type:a(`assistant_activity_state`),conversationId:r(),activityVersion:s(),phase:ge,anchor:_e,reason:ve,requestId:r().optional(),statusText:r().optional()}),be=n({type:a(`assistant_text_delta`),text:r(),messageId:r().optional(),conversationId:r().optional()}),d=n({type:a(`assistant_thinking_delta`),thinking:r(),messageId:r().optional(),conversationId:r().optional(),timestampMs:s().optional()}),f=n({type:a(`assistant_turn_start`),messageId:r(),conversationId:r().optional()}),p=n({type:a(`avatar_updated`),avatarPath:r()}),m=n({type:a(`background_tool_completed`),id:r(),conversationId:r(),status:i([`completed`,`failed`,`cancelled`]),exitCode:s().nullable().optional(),output:r().optional(),completedAt:s()}),h=n({type:a(`background_tool_started`),id:r(),toolName:r(),conversationId:r(),command:r(),startedAt:s()}),g=n({type:a(`compaction_circuit_closed`),conversationId:r()}),_=n({type:a(`compaction_circuit_open`),conversationId:r(),reason:a(`3_consecutive_failures`),openUntil:s()}),v=n({label:r(),description:r(),pattern:r()}),y=n({label:r(),scope:r()}),b=n({label:r(),scope:r()}),x=n({filePath:r(),oldContent:r(),newContent:r(),isNewFile:o()}),S=i([`allow_once`,`allow_always`,`reject_once`,`reject_always`]),C=n({optionId:r(),name:r(),kind:S}),w=i([`sandbox`,`host`]),T=n({type:a(`confirmation_request`),requestId:r(),toolName:r(),input:l(r(),c()),riskLevel:r(),riskReason:r().optional(),isContainerized:o().optional(),executionTarget:w.optional(),allowlistOptions:t(v),scopeOptions:t(y),directoryScopeOptions:t(b).optional(),diff:x.optional(),conversationId:r().optional(),persistentDecisionsAllowed:o().optional(),toolUseId:r().optional(),acpToolKind:r().optional(),acpOptions:t(C).optional()}),E=n({type:a(`contact_request`),requestId:r(),channel:r().optional(),placeholder:r().optional(),label:r().optional(),description:r().optional(),role:r().optional()}),D=i([`PROVIDER_NETWORK`,`PROVIDER_RATE_LIMIT`,`MANAGED_USAGE_LIMIT`,`PROVIDER_OVERLOADED`,`PROVIDER_API`,`IMAGE_TOO_LARGE`,`PROVIDER_BILLING`,`PROVIDER_ORDERING`,`PROVIDER_WEB_SEARCH`,`PROVIDER_NOT_CONFIGURED`,`PROVIDER_INVALID_KEY`,`MANAGED_KEY_INVALID`,`CONTEXT_TOO_LARGE`,`BUDGET_YIELD_UNRECOVERED`,`MAX_TOKENS_REACHED`,`CONVERSATION_ABORTED`,`CONVERSATION_PROCESSING_FAILED`,`DISK_SPACE_CRITICAL`,`UNKNOWN`]),O=n({type:a(`conversation_error`),conversationId:r(),code:D,userMessage:r(),retryable:o(),debugDetails:r().optional(),errorCategory:r().optional(),connectionName:r().optional(),profileName:r().optional()}),k=i([`created`,`renamed`,`deleted`,`reordered`,`seen_changed`]),A=n({type:a(`conversation_list_invalidated`),reason:k}),j=i([`memory_v3`]),M=n({type:a(`conversation_notice`),conversationId:r(),source:j,code:D,userMessage:r(),errorCategory:r().optional()}),N=n({type:a(`conversation_title_updated`),conversationId:r(),title:r()}),P=i([`disabled`,`ok`,`warning`,`critical`,`unknown`]),F=i([`agent-turns`,`background-work`,`remote-ingress`]),I=n({enabled:o(),state:P,locked:o(),acknowledged:o(),overrideActive:o(),effectivelyLocked:o(),lockId:r().nullable(),usagePercent:s().nullable(),thresholdPercent:s(),path:r().nullable(),lastCheckedAt:r().nullable(),blockedCapabilities:t(F),error:r().nullable()}),L=n({type:a(`disk_pressure_status_changed`),status:I}),xe=n({id:r(),surfaceId:r(),author:r(),content:r(),anchorStart:s().optional(),anchorEnd:s().optional(),anchorText:r().optional(),parentCommentId:r().optional(),status:r(),createdAt:s(),updatedAt:s()}),R=n({type:a(`document_comment_created`),conversationId:r(),surfaceId:r(),comment:xe}),z=n({type:a(`document_comment_deleted`),conversationId:r(),surfaceId:r(),commentId:r()}),Se=n({type:a(`document_comment_reopened`),conversationId:r(),surfaceId:r(),commentId:r()}),Ce=n({type:a(`document_comment_resolved`),conversationId:r(),surfaceId:r(),commentId:r(),resolvedBy:r()}),we=n({type:a(`document_editor_update`),conversationId:r(),surfaceId:r(),markdown:r(),mode:r()}),Te=n({type:a(`error`),message:r(),code:r().optional(),category:r().optional(),errorCategory:r().optional(),requestId:r().optional(),conversationId:r().optional()}),Ee=n({type:a(`generation_cancelled`),conversationId:r().optional()}),B=n({id:r().optional(),filename:r(),mimeType:r(),data:r(),sourceType:i([`sandbox_file`,`host_file`,`tool_block`]).optional(),sizeBytes:s().optional(),thumbnailData:r().optional(),fileBacked:o().optional(),filePath:r().optional()}),De=n({type:a(`generation_handoff`),conversationId:r().optional(),requestId:r().optional(),queuedCount:s(),messageId:r().optional(),attachments:t(B).optional(),attachmentWarnings:t(r()).optional()}),Oe=n({type:a(`home_feed_updated`),updatedAt:r(),newItemCount:s()}),ke=n({kind:i([`plugin`,`workspace`]),id:r()}),Ae=n({type:a(`hook_event`),conversationId:r().optional(),hookName:r(),owner:ke,detail:l(r(),c())}),je=n({type:a(`identity_changed`),name:r(),role:r(),personality:r(),emoji:r(),home:r()}),Me=i([`approved`,`rejected`,`answered`,`cancelled`,`superseded`]),Ne=n({type:a(`interaction_resolved`),requestId:r(),conversationId:r(),state:Me,kind:r()}),Pe=n({type:a(`message_complete`),messageId:r().optional(),conversationId:r().optional(),source:i([`main`,`aux`]).optional(),attachments:t(B).optional(),attachmentWarnings:t(r()).optional()}),Fe=n({type:a(`message_dequeued`),conversationId:r(),requestId:r()}),Ie=n({type:a(`message_queued`),conversationId:r(),requestId:r(),position:s()}),Le=n({type:a(`message_queued_deleted`),conversationId:r(),requestId:r()}),Re=n({type:a(`message_request_complete`),conversationId:r(),requestId:r(),runStillActive:o().optional()}),ze=n({type:a(`navigate_settings`),tab:r()}),Be=n({type:a(`notification_intent`),sourceEventName:r(),title:r(),body:r(),deliveryId:r().optional(),deepLinkMetadata:l(r(),c()).optional(),targetGuardianPrincipalId:r().optional(),silent:o().optional()}),Ve=n({type:a(`open_panel`),panelType:r(),data:l(r(),c()).optional(),conversationId:r().optional(),surfaceId:r().optional()}),He=n({type:a(`open_url`),url:r().min(1),title:r().optional(),conversationId:r().optional()}),V=n({id:r(),label:r(),description:r().optional()}),H=n({id:r(),question:r(),description:r().optional(),options:t(V),freeTextPlaceholder:r().optional()}),Ue=n({type:a(`question_request`),requestId:r(),questions:t(H),question:r(),description:r().optional(),options:t(V),freeTextPlaceholder:r().optional(),conversationId:r().optional(),toolUseId:r().optional()}),We=n({type:a(`relationship_state_updated`),updatedAt:r()}),Ge=n({type:a(`secret_request`),requestId:r(),service:r(),field:r(),label:r(),description:r().optional(),placeholder:r().optional(),conversationId:r().optional(),purpose:r().optional(),allowedTools:t(r()).optional(),allowedDomains:t(r()).optional(),allowOneTimeSend:o().optional()}),Ke=n({type:r(),content:r().optional(),text:r().optional(),result:r().optional(),input:l(r(),c()).optional(),toolName:r().optional(),isError:o().optional(),toolUseId:r().optional()}).passthrough(),qe=n({type:a(`subagent_event`),conversationId:r(),subagentId:r(),event:Ke}).strict(),Je=n({type:a(`subagent_spawned`),subagentId:r(),parentConversationId:r(),label:r(),objective:r(),isFork:o().optional(),parentToolUseId:r().optional()}).strict(),U=i([`pending`,`running`,`awaiting_input`,`completed`,`failed`,`aborted`,`interrupted`]),W=n({inputTokens:s(),outputTokens:s(),estimatedCost:s()}).strict(),Ye=n({type:a(`subagent_status_changed`),subagentId:r(),status:U,error:r().optional(),usage:W.optional()}).strict(),Xe=n({type:a(`sync_changed`),tags:t(r().min(1)).min(1),originClientId:r().min(1).optional()}),Ze=i([`tool_start`,`tool_complete`,`status`]),Qe=n({type:a(`tool_output_chunk`),chunk:r(),conversationId:r().optional(),toolUseId:r().optional(),subType:Ze.optional(),subToolName:r().optional(),subToolInput:r().optional(),subToolIsError:o().optional(),subToolId:r().optional(),messageId:r().optional()}),$e=n({pattern:r(),label:r()}),et=i([`anthropic-native`,`brave`,`perplexity`,`tavily`,`firecrawl`]),tt=i([`default`,`firecrawl`]),nt=n({rank:s(),title:r(),url:r(),domain:r(),faviconUrl:r().optional(),snippet:r().optional(),age:r().optional(),score:s().optional()}),rt=n({query:r(),provider:et,resultCount:s(),durationMs:s(),results:t(nt),errorMessage:r().optional()}),it=n({url:r(),finalUrl:r(),provider:tt.optional(),status:s(),contentType:r().optional(),byteCount:s(),charCount:s(),truncated:o(),title:r().optional(),domain:r(),faviconUrl:r().optional(),redirectCount:s(),durationMs:s(),errorMessage:r().optional(),mayRequireJavaScript:o().optional()}),G=n({webSearch:rt.optional(),webFetch:it.optional()}),at=n({type:a(`tool_result`),toolName:r(),result:r(),isError:o().optional(),diff:x.optional(),status:r().optional(),conversationId:r().optional(),imageData:r().optional(),imageDataList:t(r()).optional(),toolUseId:r().optional(),messageId:r().optional(),riskLevel:r().optional(),riskReason:r().optional(),matchedTrustRuleId:r().optional(),isContainerized:o().optional(),riskScopeOptions:t($e).optional(),riskAllowlistOptions:t(v).optional(),riskDirectoryScopeOptions:t(b).optional(),approvalMode:r().optional(),approvalReason:r().optional(),riskThreshold:r().optional(),activityMetadata:G.optional(),completedAt:s().optional()}),ot=n({type:a(`tool_use_preview_start`),toolUseId:r(),toolName:r(),conversationId:r().optional(),messageId:r().optional(),previewStartedAt:s().optional()}),st=n({type:a(`tool_use_start`),toolName:r(),input:l(r(),c()),toolUseId:r().optional(),messageId:r().optional(),conversationId:r().optional(),startedAt:s().optional(),previewStartedAt:s().optional()}),ct=n({type:a(`ui_surface_complete`),conversationId:r(),surfaceId:r(),summary:r(),submittedData:l(r(),c()).optional()}),lt=n({type:a(`ui_surface_dismiss`),conversationId:r(),surfaceId:r()}),ut=n({id:r(),label:r(),style:i([`primary`,`secondary`,`destructive`]).optional(),data:l(r(),c()).optional()}),dt=n({type:a(`ui_surface_show`),conversationId:r(),surfaceId:r(),surfaceType:r(),title:r().optional(),data:l(r(),c()),actions:t(ut).optional(),display:i([`inline`,`panel`]).optional(),messageId:r().optional(),persistent:o().optional(),toolCallId:r().optional()}),ft=n({type:a(`ui_surface_update`),conversationId:r(),surfaceId:r(),data:l(r(),c())}),K=n({type:a(`usage_progress`),conversationId:r(),inputTokens:s(),outputTokens:s(),estimatedCost:s(),model:r()}),pt=n({type:a(`usage_update`),conversationId:r(),inputTokens:s(),outputTokens:s(),cacheCreationInputTokens:s().optional(),cacheReadInputTokens:s().optional(),totalInputTokens:s(),totalOutputTokens:s(),estimatedCost:s(),model:r(),contextWindowTokens:s().optional(),contextWindowMaxTokens:s().optional()}),mt=n({type:a(`user_message_echo`),text:r(),conversationId:r().optional(),messageId:r().optional(),requestId:r().optional(),clientMessageId:r().optional()}).strict(),q=i([`running`,`completed`,`failed`,`aborted`,`cap_exceeded`,`interrupted`]),ht=n({type:a(`workflow_completed`),runId:r(),conversationId:r().optional(),status:q,agentsSpawned:s(),inputTokens:s(),outputTokens:s(),summary:r().optional()}).strict(),gt=n({type:a(`workflow_leaf_finished`),runId:r(),conversationId:r(),seq:s().int(),status:i([`completed`,`failed`]),label:r().optional(),inputTokens:s().optional(),outputTokens:s().optional(),resultSummary:r().optional()}).strict(),_t=n({type:a(`workflow_leaf_started`),runId:r(),conversationId:r(),seq:s().int(),label:r().optional(),phase:r().optional(),promptSummary:r().optional()}).strict(),vt=n({type:a(`workflow_progress`),runId:r(),conversationId:r().optional(),agentsSpawned:s(),phase:r().optional(),label:r().optional(),message:r().optional()}).strict(),yt=n({type:a(`workflow_started`),runId:r(),conversationId:r(),toolUseId:r().optional(),label:r().optional()}).strict(),bt=`syntheticAgentErrorMessage`,xt=`compactionAgent`,St=3e4,Ct=n({cursorInTextField:o().optional().describe(`Whether the cursor is in an editable text field when dictation started`)}).passthrough().describe(`Dictation context (app name, window title, bundle ID, cursor state, selected text)`),wt=n({transcription:r().describe(`Raw speech transcription`),context:Ct,profileId:r().describe(`Optional dictation profile ID`).optional()}),J=n({id:r(),filename:r(),mimeType:r(),sizeBytes:s(),kind:r(),data:r().optional(),thumbnailData:r().optional(),fileBacked:o().optional()}),Tt=n({pattern:r(),label:r()}),Et=n({label:r(),description:r(),pattern:r()}),Dt=n({scope:r(),label:r()}),Ot=n({requestId:r(),title:r().optional(),description:r().optional(),toolName:r().optional(),riskLevel:r().optional(),riskReason:r().optional(),input:l(r(),c()).optional(),allowlistOptions:t(v).optional(),scopeOptions:t(y).optional(),directoryScopeOptions:t(b).optional(),persistentDecisionsAllowed:o().optional()}),kt=n({requestId:r(),entries:t(H)}),At=i([`approved`,`denied`,`timed_out`]),Y=n({id:r().optional(),name:r(),input:l(r(),c()),result:r().optional(),isError:o().optional(),imageData:r().optional(),imageDataList:t(r()).optional(),startedAt:s().optional(),previewStartedAt:s().optional(),completedAt:s().optional(),confirmationDecision:At.optional(),confirmationLabel:r().optional(),riskLevel:r().optional(),riskReason:r().optional(),matchedTrustRuleId:r().optional(),autoApproved:o().optional(),approvalMode:r().optional(),approvalReason:r().optional(),riskThreshold:r().optional(),riskScopeOptions:t(Tt).optional(),riskAllowlistOptions:t(Et).optional(),riskDirectoryScopeOptions:t(Dt).optional(),activityMetadata:G.optional(),scopeOptions:t(y).optional(),pendingConfirmation:Ot.optional(),pendingQuestion:kt.optional()}),jt=n({id:r(),label:r(),style:r().optional(),data:l(r(),c()).optional()}),X=n({surfaceId:r(),surfaceType:r(),title:r().optional(),data:l(r(),c()),actions:t(jt).optional(),display:r().optional(),persistent:o().optional(),completed:o().optional(),completionSummary:r().optional(),toolCallId:r().optional()}),Mt=n({subagentId:r(),label:r(),status:r(),error:r().optional(),conversationId:r().optional(),objective:r().optional()}),Nt=n({acpSessionId:r(),agent:r().optional()}),Pt=n({id:r(),toolName:r(),conversationId:r(),command:r(),startedAt:s(),status:i([`completed`,`failed`,`cancelled`]),exitCode:s().nullable(),output:r(),completedAt:s()}),Ft=n({appUrl:r().optional(),webUrl:r().optional()}),It=n({emoji:r(),op:i([`added`,`removed`]),actorDisplayName:r().optional(),targetChannelTs:r()}),Lt=n({channelId:r(),channelName:r().optional(),channelTs:r(),threadTs:r().optional(),sender:n({displayName:r().optional(),externalUserId:r().optional()}).optional(),messageLink:Ft.optional(),threadLink:Ft.optional(),eventKind:i([`message`,`reaction`]).optional(),reaction:It.optional()}),Rt=n({type:a(`text`),text:r()}),zt=n({type:a(`thinking`),thinking:r(),startedAt:s().optional(),completedAt:s().optional()}),Bt=n({type:a(`tool_use`),toolCall:Y}),Vt=n({type:a(`surface`),surface:X}),Ht=n({type:a(`attachment`),attachment:J}),Ut=ee(`type`,[Rt,zt,Bt,Vt,Ht]),Wt=n({id:r(),mergedMessageIds:t(r()).optional(),clientMessageId:r().optional(),role:i([`user`,`assistant`]),content:r().meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Flat plain-text body (joined text segments).`}).optional(),timestamp:r(),attachments:t(J),toolCalls:t(Y).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks (the tool_use variant). Flat list of tool calls.`}).optional(),surfaces:t(X).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks (the surface variant). Flat list of surfaces.`}).optional(),textSegments:t(r()).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Text segments split by tool-call boundaries.`}).optional(),thinkingSegments:t(r()).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Reasoning text extracted from thinking blocks.`}).optional(),contentOrder:t(r()).meta({deprecated:!0,description:`Deprecated: superseded by contentBlocks. Positional "<type>:<index>" content ordering (e.g. "text:0", "thinking:1").`}).optional(),contentBlocks:t(Ut).optional(),subagentNotification:Mt.optional(),acpNotification:Nt.optional(),backgroundEventNotification:o().optional(),backgroundToolCompletion:Pt.optional(),slackMessage:Lt.optional(),queueStatus:i([`queued`,`processing`]).optional(),queuePosition:s().optional()}),Gt=n({status:I}),Kt=a(`notification`),qt=i([`new`,`seen`,`acted_on`,`dismissed`]),Jt=i([`low`,`medium`,`high`,`critical`]),Yt=i([`security`,`scheduling`,`background`,`email`,`system`]),Xt=i([`heartbeat`,`memory_consolidation`,`schedule`,`auto_analysis`,`user`,`other`]),Zt=n({id:r(),label:r(),prompt:r()}),Qt=i([`emailDraft`,`documentPreview`,`permissionChat`,`paymentAuth`,`toolPermission`,`updatesList`]),$t=n({kind:Qt}),en=n({id:r(),type:Kt,priority:s().int().min(0).max(100),title:r().optional(),summary:r(),timestamp:r(),status:qt.default(`new`),expiresAt:r().optional(),actions:t(Zt).optional(),urgency:Jt.optional(),conversationId:r().optional(),detailPanel:$t.optional(),category:Yt.optional(),noteworthy:o().optional(),fromAssistant:o().optional(),metadata:l(r(),c()).optional(),sourceType:Xt.optional(),sourceKey:r().optional(),sourceLabel:r().optional(),createdAt:r()}),tn=i([`deterministic`,`assistant`]),nn=n({id:r(),label:r(),icon:r().optional(),prompt:r(),source:tn}),rn=n({greeting:r(),timeAwayLabel:r(),newCount:s().int().min(0)}),an=n({items:t(en),updatedAt:r(),contextBanner:rn,suggestedPrompts:t(nn)}),on=n({id:r(),category:i([`voice`,`world`,`priorities`]),text:r(),confidence:i([`strong`,`uncertain`]),source:i([`onboarding`,`inferred`])}),sn=n({id:r(),name:r(),description:r(),tier:i([`unlocked`,`next-up`,`earned`]),gate:r(),unlockHint:r().optional(),ctaLabel:r().optional()}),cn=n({version:a(1),assistantId:r(),tier:ae([a(1),a(2),a(3),a(4)]),progressPercent:s(),facts:t(on),capabilities:t(sn),conversationCount:s(),hatchedDate:r(),assistantName:r(),userName:r().optional(),updatedAt:r()}),ln=n({key:r(),label:r(),ms:s()}),Z=n({phases:t(ln),ttftMs:s().nullish(),totalToFirstTokenMs:s().nullish(),providerDurationMs:s().nullish(),firstTokenKind:i([`thinking`,`text`]).nullish()}),un=n({provider:r().nullish(),model:r().nullish(),status:r().nullish(),inputTokens:s().nullish(),outputTokens:s().nullish(),cacheCreationInputTokens:s().nullish(),cacheReadInputTokens:s().nullish(),stopReason:r().nullish(),requestMessageCount:s().nullish(),requestToolCount:s().nullish(),responseMessageCount:s().nullish(),responseToolCallCount:s().nullish(),responsePreview:r().nullish(),toolCallNames:t(r()).nullish(),estimatedCostUsd:s().nullish(),durationMs:s().nullish()}),Q=n({kind:r(),label:r().nullish(),role:r().nullish(),text:r().nullish(),toolName:r().nullish(),data:c().optional(),language:r().nullish()}),dn=n({name:r().nullish(),message:r().nullish(),code:r().nullish(),provider:r().nullish(),statusCode:s().nullish(),retryAfterMs:s().nullish(),apiErrorCode:r().nullish(),apiErrorType:r().nullish(),apiErrorParam:r().nullish(),requestId:r().nullish()}),fn=n({id:r(),createdAt:s(),requestPayload:se(),responsePayload:se(),provider:r().nullish(),summary:un.nullish(),requestSections:t(Q).nullish(),responseSections:t(Q).nullish(),agentLoopExitReason:r().nullish(),callSite:r().nullish(),error:dn.nullish(),latency:Z.nullish()}),pn=n({nodeId:r(),score:s(),semanticSimilarity:s(),recencyBoost:s(),type:r().optional()}),mn=n({reason:r(),semanticUnavailable:o(),fallbackSources:t(r())}),hn=n({enabled:o(),degraded:o(),provider:r().nullable(),model:r().nullable(),degradation:mn.nullable(),semanticHits:s().nullish(),mergedCount:s().nullish(),selectedCount:s().nullish(),tier1Count:s().nullish(),tier2Count:s().nullish(),hybridSearchLatencyMs:s().nullish(),sparseVectorUsed:o().nullish(),injectedTokens:s().nullish(),latencyMs:s().nullish(),topCandidates:t(pn),injectedText:r().nullable(),reason:r().nullable(),queryContext:r().nullable()}),gn=n({slug:r(),finalActivation:s(),ownActivation:s(),priorActivation:s(),simUser:s(),simAssistant:s(),simNow:s(),simUserRerankBoost:s().optional(),simAssistantRerankBoost:s().optional(),inRerankPool:o().optional(),spreadContribution:s(),source:r(),status:r()}),_n=n({d:s(),c_user:s(),c_assistant:s(),c_now:s(),k:s(),hops:s(),top_k:s(),epsilon:s()}),vn=n({turn:s(),mode:r(),concepts:t(gn),config:_n}),yn=n({slug:r(),source:r(),pinned:o(),sectionOrdinal:s().nullable().optional(),sectionHeading:r().nullable().optional()}),bn=n({turn:s(),live:o(),selections:t(yn),injectedText:r()}),xn=n({messageId:r().nullish(),conversationKey:r().nullish(),conversationId:r().nullish(),conversationKind:r(),conversationTotalEstimatedCostUsd:s().nullish(),logs:t(fn),memoryRecall:hn.nullable(),memoryV2Activation:vn.nullable(),memoryV3Selection:bn.nullish()}),Sn=n({type:r(),content:r(),toolName:r().optional(),isError:o().optional(),messageId:r().optional(),toolUseId:r().optional(),input:l(r(),c()).optional()}),Cn=n({subagentId:r(),objective:r().optional(),status:U.optional(),usage:W.optional(),events:t(Sn)}),wn=n({seq:s().int(),kind:i([`agent`,`workflow`]),label:r().optional(),phase:r().optional(),promptSummary:r().optional(),status:r(),resultSummary:r().optional(),inputTokens:s().optional(),outputTokens:s().optional(),createdAt:s().nullable()}),Tn=n({runId:r(),status:q.optional(),agentsSpawned:s().optional(),inputTokens:s().optional(),outputTokens:s().optional(),phase:r().optional(),leaves:t(wn)}),En=n({title:r().optional(),subtitle:r().optional(),body:r().optional(),metadata:t(n({label:u(),value:u()})).optional(),template:r().optional(),templateData:l(r(),c()).optional()}),Dn=ne(e=>{let t=(typeof e==`string`?e.split(`,`):Array.isArray(e)?e:[]).map(e=>typeof e==`string`||typeof e==`number`?String(e).trim():``).filter(e=>e.length>0);return t.length>0?t:void 0},t(r()).optional()),On=n({prompt:u().optional(),acceptedTypes:Dn,maxFiles:ce().int().positive().optional().catch(void 0),maxSizeBytes:ce().positive().optional().catch(void 0)}),kn=e({ACPOptionKindSchema:()=>S,ACPOptionSchema:()=>C,AcpSessionCompletedEventSchema:()=>ue,AcpSessionErrorEventSchema:()=>de,AcpSessionSpawnedEventSchema:()=>fe,AcpSessionUpdateEventSchema:()=>me,AcpSessionUpdateTypeSchema:()=>pe,AcpSessionUsageEventSchema:()=>he,AcpStopReasonSchema:()=>le,AllowlistOptionSchema:()=>v,AssistantActivityAnchorSchema:()=>_e,AssistantActivityPhaseSchema:()=>ge,AssistantActivityReasonSchema:()=>ve,AssistantActivityStateEventSchema:()=>ye,AssistantEventEnvelopeSchema:()=>An,AssistantEventSchema:()=>$,AssistantOutboundAttachmentSchema:()=>B,AssistantTextDeltaEventSchema:()=>be,AssistantThinkingDeltaEventSchema:()=>d,AssistantTurnStartEventSchema:()=>f,AvatarUpdatedEventSchema:()=>p,BackgroundToolCompletedEventSchema:()=>m,BackgroundToolStartedEventSchema:()=>h,CALL_SITE_COMPACTION_AGENT:()=>xt,CALL_SITE_SYNTHETIC_AGENT_ERROR_MESSAGE:()=>bt,CapabilitySchema:()=>sn,CardSurfaceDataSchema:()=>En,CompactionCircuitClosedEventSchema:()=>g,CompactionCircuitOpenEventSchema:()=>_,ConfirmationDiffSchema:()=>x,ConfirmationExecutionTargetSchema:()=>w,ConfirmationRequestEventSchema:()=>T,ContactRequestEventSchema:()=>E,ContextBannerSchema:()=>rn,ConversationAttachmentBlockSchema:()=>Ht,ConversationContentBlockSchema:()=>Ut,ConversationErrorCodeSchema:()=>D,ConversationErrorEventSchema:()=>O,ConversationListInvalidatedEventSchema:()=>A,ConversationListInvalidatedReasonSchema:()=>k,ConversationMessageAttachmentSchema:()=>J,ConversationMessageSchema:()=>Wt,ConversationMessageSurfaceSchema:()=>X,ConversationMessageToolCallSchema:()=>Y,ConversationNoticeEventSchema:()=>M,ConversationNoticeSourceSchema:()=>j,ConversationSlackMessageSchema:()=>Lt,ConversationSubagentNotificationSchema:()=>Mt,ConversationSurfaceBlockSchema:()=>Vt,ConversationTextBlockSchema:()=>Rt,ConversationThinkingBlockSchema:()=>zt,ConversationTitleUpdatedEventSchema:()=>N,ConversationToolUseBlockSchema:()=>Bt,DEFAULT_TOOL_EXECUTION_TIMEOUT_SEC:()=>120,DictationContextSchema:()=>Ct,DictationRequestSchema:()=>wt,DirectoryScopeOptionSchema:()=>b,DiskPressureBlockedCapabilitySchema:()=>F,DiskPressureStateSchema:()=>P,DiskPressureStatusChangedEventSchema:()=>L,DiskPressureStatusResponseSchema:()=>Gt,DiskPressureStatusSchema:()=>I,DocumentCommentCreatedEventSchema:()=>R,DocumentCommentDeletedEventSchema:()=>z,DocumentCommentReopenedEventSchema:()=>Se,DocumentCommentResolvedEventSchema:()=>Ce,DocumentEditorUpdateEventSchema:()=>we,ErrorEventSchema:()=>Te,FactSchema:()=>on,FeedActionSchema:()=>Zt,FeedItemCategorySchema:()=>Yt,FeedItemDetailPanelKindSchema:()=>Qt,FeedItemDetailPanelSchema:()=>$t,FeedItemSchema:()=>en,FeedItemSourceTypeSchema:()=>Xt,FeedItemStatusSchema:()=>qt,FeedItemTypeSchema:()=>Kt,FeedItemUrgencySchema:()=>Jt,FileUploadSurfaceDataSchema:()=>On,GenerationCancelledEventSchema:()=>Ee,GenerationHandoffEventSchema:()=>De,HomeFeedResponseSchema:()=>an,HomeFeedUpdatedEventSchema:()=>Oe,HookEventOwnerSchema:()=>ke,HookEventSchema:()=>Ae,IdentityChangedEventSchema:()=>je,InteractionResolutionStateSchema:()=>Me,InteractionResolvedEventSchema:()=>Ne,LLMCallErrorSchema:()=>dn,LLMCallSummarySchema:()=>un,LLMContextSectionSchema:()=>Q,LLMRequestLogEntrySchema:()=>fn,LatencyBreakdownSchema:()=>Z,LatencyPhaseSchema:()=>ln,LlmContextResponseSchema:()=>xn,MemoryCandidateSchema:()=>pn,MemoryDegradationSchema:()=>mn,MemoryRecallLogSchema:()=>hn,MemoryV2ActivationLogSchema:()=>vn,MemoryV2ConceptRowSchema:()=>gn,MemoryV2ConfigSnapshotSchema:()=>_n,MemoryV3SelectionLogSchema:()=>bn,MemoryV3SelectionRowSchema:()=>yn,MessageCompleteEventSchema:()=>Pe,MessageDequeuedEventSchema:()=>Fe,MessageQueuedDeletedEventSchema:()=>Le,MessageQueuedEventSchema:()=>Ie,MessageRequestCompleteEventSchema:()=>Re,NavigateSettingsEventSchema:()=>ze,NotificationIntentEventSchema:()=>Be,OpenPanelEventSchema:()=>Ve,OpenUrlEventSchema:()=>He,PendingToolConfirmationSchema:()=>Ot,QuestionEntrySchema:()=>H,QuestionOptionSchema:()=>V,QuestionRequestEventSchema:()=>Ue,RelationshipStateSchema:()=>cn,RelationshipStateUpdatedEventSchema:()=>We,RiskScopeOptionSchema:()=>$e,SSE_REPLAY_RING_AGE_LIMIT_MS:()=>St,SSE_REPLAY_RING_COUNT_LIMIT:()=>200,ScopeOptionSchema:()=>y,SecretRequestEventSchema:()=>Ge,SubagentDetailEventSchema:()=>Sn,SubagentDetailResponseSchema:()=>Cn,SubagentEventEventSchema:()=>qe,SubagentInnerEventSchema:()=>Ke,SubagentSpawnedEventSchema:()=>Je,SubagentStatusChangedEventSchema:()=>Ye,SubagentStatusSchema:()=>U,SubagentUsageStatsSchema:()=>W,SuggestedPromptSchema:()=>nn,SuggestedPromptSourceSchema:()=>tn,SurfaceActionSchema:()=>ut,SyncChangedEventSchema:()=>Xe,ToolActivityMetadataSchema:()=>G,ToolOutputChunkEventSchema:()=>Qe,ToolOutputChunkSubTypeSchema:()=>Ze,ToolResultEventSchema:()=>at,ToolUsePreviewStartEventSchema:()=>ot,ToolUseStartEventSchema:()=>st,UISurfaceCompleteEventSchema:()=>ct,UISurfaceDismissEventSchema:()=>lt,UISurfaceShowEventSchema:()=>dt,UISurfaceUpdateEventSchema:()=>ft,UsageProgressEventSchema:()=>K,UsageUpdateEventSchema:()=>pt,UserMessageEchoEventSchema:()=>mt,WebFetchMetadataSchema:()=>it,WebSearchMetadataSchema:()=>rt,WebSearchProviderIdSchema:()=>et,WebSearchResultItemSchema:()=>nt,WorkflowCompletedEventSchema:()=>ht,WorkflowJournalResponseSchema:()=>Tn,WorkflowLeafFinishedEventSchema:()=>gt,WorkflowLeafSchema:()=>wn,WorkflowLeafStartedEventSchema:()=>_t,WorkflowProgressEventSchema:()=>vt,WorkflowRunStatusSchema:()=>q,WorkflowStartedEventSchema:()=>yt}),$=ee(`type`,[ue,de,fe,me,he,ye,be,d,f,p,m,h,g,_,T,E,O,A,M,N,L,R,z,Se,Ce,we,Te,Ee,De,Oe,Ae,je,Ne,Pe,Fe,Ie,Le,Re,ze,Be,Ve,He,Ue,We,Ge,qe,Je,Ye,Xe,Qe,at,ot,st,ct,lt,dt,ft,K,pt,mt,ht,gt,_t,vt,yt]),An=n({id:r(),conversationId:r().optional(),seq:s().int().optional(),emittedAt:r(),message:$});export{On as a,Gt as c,bt as d,K as f,En as i,St as l,$ as n,Tn as o,kn as r,Cn as s,An as t,xt as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./button-D1p5nVKJ.js";import{d as r,h as i}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./input-DR1eB4a1.js";import{t as s}from"./dropdown-BsftIzw-.js";import{t as c}from"./is-electron-LEymSS4C.js";import{c as l}from"./routes-CBm-E8tn.js";import{on as u}from"./index-DD6uDbkv.js";import{a as d,i as f,n as p,o as m,r as h,s as g}from"./provider-key-DMwDGx17.js";import"./onboarding-step-layout-CqsxCaSG.js";var _=e(t(),1),v=a();function y(){let e=r(),[t]=i(),a=t.get(`hosting`),y=c(),b=p(),[x,S]=(0,_.useState)(()=>b?.provider??f.id),[C,w]=(0,_.useState)(()=>b?.key??``),[T,E]=(0,_.useState)(()=>b?.model??m(b?.provider??f.id)??``),[D,O]=(0,_.useState)(()=>b?.baseUrl??``),[k,A]=(0,_.useState)(()=>b?.customModels??``),j=g(x)??f,M=j.models??[],N=j.requiresKey,P=M.length>0,F=x===`openai-compatible`,I=(!(N&&!F)||C.trim().length>0)&&(!P||T.trim().length>0)&&(!F||D.trim().length>0&&k.trim().length>0);return(0,v.jsx)(u,{children:(0,v.jsxs)(`div`,{className:`mx-auto flex w-full max-w-xl flex-col items-center ${y?`min-h-full px-8 pt-21 pb-4 electron-prechat-type`:`px-6 py-16`} text-[var(--content-default)]`,children:[(0,v.jsx)(`h1`,{className:y?`text-title-large`:`text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.5s ease-out 0.1s both`},children:`Connect a Model Provider`}),(0,v.jsx)(`p`,{className:`text-center text-body-medium-lighter text-[var(--content-tertiary)] ${y?`mt-3.5`:`mt-3`}`,style:{animation:`fadeInUp 0.5s ease-out 0.3s both`},children:`Choose the model provider your assistant should use.`}),(0,v.jsxs)(`div`,{className:`flex w-full flex-col gap-4 ${y?`mt-8`:`mt-10`}`,style:{animation:`fadeInUp 0.5s ease-out 0.4s both`},children:[(0,v.jsxs)(`div`,{className:`flex flex-col ${y?`gap-2`:`gap-1`}`,children:[(0,v.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,v.jsx)(s,{"aria-label":`Provider`,value:x,onChange:e=>{let t=g(e);t&&(S(t.id),w(``),E(m(t.id)??``))},options:d.map(e=>({value:e.id,label:e.displayName}))})]}),M.length>0&&(0,v.jsxs)(`div`,{className:`flex flex-col ${y?`gap-2`:`gap-1`}`,children:[(0,v.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Model`}),(0,v.jsx)(s,{"aria-label":`Model`,value:T,onChange:E,options:M.map(e=>({value:e.id,label:e.displayName}))})]}),F&&(0,v.jsxs)(v.Fragment,{children:[(0,v.jsxs)(`div`,{className:`flex flex-col ${y?`gap-2`:`gap-1`}`,children:[(0,v.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Base URL`}),(0,v.jsx)(o,{type:`text`,placeholder:`http://localhost:1234/v1`,value:D,onChange:e=>O(e.target.value),fullWidth:!0})]}),(0,v.jsxs)(`div`,{className:`flex flex-col ${y?`gap-2`:`gap-1`}`,children:[(0,v.jsx)(`label`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Models`}),(0,v.jsx)(o,{type:`text`,placeholder:`model-1, model-2`,value:k,onChange:e=>A(e.target.value),fullWidth:!0}),(0,v.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Comma-separated model identifiers exposed by your endpoint.`})]})]}),N&&(0,v.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,v.jsx)(o,{type:`password`,label:`${j.displayName} API Key`,placeholder:j.apiKeyPlaceholder??`Enter your API key`,value:C,onChange:e=>w(e.target.value),className:`touch-mobile:text-[16px]`,fullWidth:!0}),j.docsUrl&&(0,v.jsxs)(`p`,{className:`self-start text-body-medium-lighter text-[var(--content-tertiary)]`,children:[`Don't have it?`,` `,(0,v.jsx)(`a`,{href:j.docsUrl,target:`_blank`,rel:`noreferrer`,className:`text-[var(--content-default)] underline`,children:`Get an API key here`})]})]})]}),(0,v.jsxs)(`div`,{className:`mt-8 flex w-full flex-col ${y?`gap-2.5`:`gap-2`}`,style:{animation:`fadeInUp 0.5s ease-out 0.5s both`},children:[(0,v.jsx)(n,{variant:`primary`,size:`regular`,fullWidth:!0,disabled:!I,onClick:()=>{if(!I)return;let t=T.trim()||m(x);h({provider:x,key:C.trim(),...t?{model:t}:{},...F?{baseUrl:D.trim(),customModels:k.trim()}:{}}),e(a?`${l.onboarding.privacy}?hosting=${a}`:l.onboarding.privacy)},className:y?void 0:`h-11 text-base`,children:`Continue`}),(0,v.jsx)(n,{variant:`outlined`,size:`regular`,fullWidth:!0,onClick:()=>{e(l.onboarding.hosting)},className:y?void 0:`h-11 text-base`,children:`Back`})]})]})})}export{y as ApiKeyScreen};
|