@vellumai/web 0.0.1 → 0.8.7-dev.202606052118.34cd356
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/README.md +1 -1
- package/dist/assets/{QueryClientProvider-3h1PDgiK.js → QueryClientProvider-DBAeGN3q.js} +1 -1
- package/dist/assets/about-page-VHKsk9M1.js +1 -0
- package/dist/assets/account-page-D9CGOt0R.js +1 -0
- package/dist/assets/{account-shell-Dw8jAeLG.js → account-shell-jkpKz4_4.js} +1 -1
- package/dist/assets/add-credits-modal-CELDqeFL.js +1 -0
- package/dist/assets/advanced-page-CaKwSVhX.js +1 -0
- package/dist/assets/ai-page-fYctq3LE.js +1 -0
- package/dist/assets/{angular-html-DhOd7AN5.js → angular-html-DoxnP4L3.js} +1 -1
- package/dist/assets/{angular-ts-xGO-_6Bd.js → angular-ts-9spjMgRd.js} +1 -1
- package/dist/assets/api-DYTu2hC1.js +39 -0
- package/dist/assets/api-errors-DhNZwQy5.js +1 -0
- package/dist/assets/api-key-screen-B5lwBbF1.js +1 -0
- package/dist/assets/{apl-BVUryqD5.js → apl-BjPuT95r.js} +1 -1
- package/dist/assets/{app-html-cache-BuUjtDuD.js → app-html-cache-B0vrz1YW.js} +1 -1
- package/dist/assets/archive-page-Cg-IQv1e.js +1 -0
- package/dist/assets/{archive-CVmkE0UZ.js → archive-yWA8_b2E.js} +1 -1
- package/dist/assets/arrow-up-Cev-d0qQ.js +1 -0
- package/dist/assets/assistant-feature-flag-store-DtJxEl2H.js +1 -0
- package/dist/assets/assistant-identity-store-CsS_tq85.js +1 -0
- package/dist/assets/assistant-status-panel-Cx9PTuBg.js +1 -0
- package/dist/assets/{astro-D96BhhwV.js → astro-xfSi9ARd.js} +1 -1
- package/dist/assets/auth-store-Vu-UnVOs.js +1 -0
- package/dist/assets/avatar-api-DygRCPqF.js +1 -0
- package/dist/assets/{bell-D6safcBY.js → bell-BFRXSoMR.js} +1 -1
- package/dist/assets/billing-page-Cxk-3jZz.js +34 -0
- package/dist/assets/{blade-CYOVT3-Y.js → blade-C8H1jvQW.js} +1 -1
- package/dist/assets/{bsl-p34U-2Lx.js → bsl-1Uw5GcVj.js} +1 -1
- package/dist/assets/{bug-CqWa4aqP.js → bug-wSdnBKWO.js} +1 -1
- package/dist/assets/button-Cs9tc8OR.js +1 -0
- package/dist/assets/{cairo-Cd8z051b.js → cairo-LeKPj3R4.js} +1 -1
- package/dist/assets/{calendar-BIR8yc1r.js → calendar-xwiYi6y2.js} +1 -1
- package/dist/assets/capture-error-23NwnaZt.js +4 -0
- package/dist/assets/{card-DnfZJiuP.js → card-BcKGvsaa.js} +1 -1
- package/dist/assets/check-DqeyrftF.js +1 -0
- package/dist/assets/checkbox-hJlRqWtn.js +1 -0
- package/dist/assets/chevron-right-CJ0Oykrn.js +1 -0
- package/dist/assets/{chevron-up-DPJUr6aL.js → chevron-up-C-4xJEr7.js} +1 -1
- package/dist/assets/{chunk-5KNZJZUH-DdB2N3P3.js → chunk-5KNZJZUH-BpLAEZ0-.js} +3 -3
- package/dist/assets/{cobol-CJjZVzvm.js → cobol-D5SqfAvu.js} +1 -1
- package/dist/assets/{coffee-CfZkBTrB.js → coffee-KrVM6VAY.js} +1 -1
- package/dist/assets/command-palette-BrMePKGh.js +1 -0
- package/dist/assets/community-page-BE3TcsGC.js +1 -0
- package/dist/assets/confirm-dialog-DavdF-L4.js +1 -0
- package/dist/assets/connect-page-WUYnjsNv.js +1 -0
- package/dist/assets/contacts-gateway-B5HYYdVz.js +1 -0
- package/dist/assets/contacts-page-route-DiEnwsHY.js +1 -0
- package/dist/assets/conversation-store-D6erO6zc.js +1 -0
- package/dist/assets/{cpp-DbB_FtMQ.js → cpp-C0UxZXSh.js} +1 -1
- package/dist/assets/{create-selectors-DoMh4y1G.js → create-selectors-LbkU9b0a.js} +1 -1
- package/dist/assets/{createLucideIcon-BsE6w02i.js → createLucideIcon-CSvzx8tc.js} +1 -1
- package/dist/assets/{createLucideIcon-Btk32rD9.js → createLucideIcon-D8wUFCt3.js} +1 -1
- package/dist/assets/{crystal-Hmeas4cw.js → crystal-ClJk9iNu.js} +1 -1
- package/dist/assets/danger-zone-redirect-page-CVe8PiEo.js +1 -0
- package/dist/assets/debug-page-Cu7cV0ph.js +3 -0
- package/dist/assets/deploy-dialogs-Co2asMMP.js +1 -0
- package/dist/assets/{detail-card-CzJ5gLcw.js → detail-card-BBcoMDq8.js} +1 -1
- package/dist/assets/developer-page-DMvVDFn_.js +1 -0
- package/dist/assets/device-settings-C07QvMzm.js +1 -0
- package/dist/assets/devices-page-CD8OBIuC.js +1 -0
- package/dist/assets/dist-3bWmqQYy.js +45 -0
- package/dist/assets/dist-Cb2Epurm.js +1 -0
- package/dist/assets/{dist-mYLcZ3ps.js → dist-DacRcU3L.js} +3 -3
- package/dist/assets/document-viewer-page-DIZaCqI9.js +1 -0
- package/dist/assets/{dollar-sign-Cm87Rklw.js → dollar-sign-D_9hooHL.js} +1 -1
- package/dist/assets/{domain-field-CXJQDRmA.js → domain-field-CyNgwvDW.js} +1 -1
- package/dist/assets/dropdown-PPtOL9bp.js +1 -0
- package/dist/assets/earn-credits-modal-3fAfu8Yj.js +1 -0
- package/dist/assets/{edge-BgPXu-UE.js → edge-BiYC4_90.js} +1 -1
- package/dist/assets/edit-chat-session-DseODZCl.js +1 -0
- package/dist/assets/effective-timezone-QeovgyP0.js +1 -0
- package/dist/assets/{elixir-DM6-ccDJ.js → elixir-CeTC01SF.js} +1 -1
- package/dist/assets/{ellipsis-vertical-DxSLIqf8.js → ellipsis-vertical-f27t2xXb.js} +1 -1
- package/dist/assets/{elm-9gnJ98w0.js → elm-Cn1hsMyk.js} +1 -1
- package/dist/assets/emails-page-D8es8Vdq.js +1 -0
- package/dist/assets/{erb-DtlP8jgO.js → erb-DSDLUB86.js} +1 -1
- package/dist/assets/{erlang-DsE57DRS.js → erlang-C99b08Nz.js} +1 -1
- package/dist/assets/esm-DKyh2sdX.js +2 -0
- package/dist/assets/esm-DUUKbDsd.js +2 -0
- package/dist/assets/esm-Da4x-MH2.js +2 -0
- package/dist/assets/{esm-BPIIkf0Q.js → esm-SU3SyAUz.js} +2 -2
- package/dist/assets/esm-dtSsvPGT.js +2 -0
- package/dist/assets/event-bus-DKlaDVAu.js +1 -0
- package/dist/assets/{external-link-BFBjpAS9.js → external-link-CcV79Arv.js} +1 -1
- package/dist/assets/feature-flag-catalog--1VEc4mE.js +1 -0
- package/dist/assets/{file-markdown-CEnRkeWg.js → file-markdown-_6RadtEy.js} +1 -1
- package/dist/assets/{format-date-CQpXfTVd.js → format-date-lYqfuFdi.js} +1 -1
- package/dist/assets/{fortran-fixed-form-D5hdDjfh.js → fortran-fixed-form-CfIW45ck.js} +1 -1
- package/dist/assets/{fsharp-Bfi3XTPy.js → fsharp-CpfXaTmO.js} +1 -1
- package/dist/assets/gateway-session-BEbYXAZw.js +1 -0
- package/dist/assets/{gdresource-BSaMHim7.js → gdresource-Bq9ffHIF.js} +1 -1
- package/dist/assets/general-page-pwgo7IrN.js +1 -0
- package/dist/assets/{git-commit-Cz5QKywc.js → git-commit-4hNTcyXg.js} +1 -1
- package/dist/assets/{git-rebase-BMQ0Bk9S.js → git-rebase-DoeXBq-R.js} +1 -1
- package/dist/assets/{glimmer-js-BN-NGpp_.js → glimmer-js-CYkye81z.js} +1 -1
- package/dist/assets/{glimmer-ts-C9VChylV.js → glimmer-ts-Bk7QAWr2.js} +1 -1
- package/dist/assets/{globe-7UmDuKqs.js → globe-B6unPYdp.js} +1 -1
- package/dist/assets/{glsl-CpFEXvu-.js → glsl-BYZink9d.js} +1 -1
- package/dist/assets/google-logo-CBBlhwbc.js +1 -0
- package/dist/assets/{graphql-V09t51SF.js → graphql-CS_bfAPh.js} +1 -1
- package/dist/assets/{hack-oitWBBvW.js → hack-rkugl_pJ.js} +1 -1
- package/dist/assets/{haml-CV2rgaHM.js → haml-BkhENUsf.js} +1 -1
- package/dist/assets/{handlebars-BgAPxny7.js → handlebars-Bh3JZxjr.js} +1 -1
- package/dist/assets/hard-drive-C5ssi802.js +1 -0
- package/dist/assets/hatching-screen-BdInsbEv.js +1 -0
- package/dist/assets/home-page-route-CYhJPXuO.js +1 -0
- package/dist/assets/hosting-screen-joWfMgFu.js +1 -0
- package/dist/assets/{html-B_nL9zO9.js → html-Chvx6bbW.js} +1 -1
- package/dist/assets/{html-derivative-BWIcZuDp.js → html-derivative-BZlQ5XVV.js} +1 -1
- package/dist/assets/{http-CrTxb7et.js → http-CZnYRnoH.js} +1 -1
- package/dist/assets/{hurl-B-EymzsD.js → hurl-C9D1SYfx.js} +1 -1
- package/dist/assets/{hxml-CXbAEQJQ.js → hxml-CqBwUL68.js} +1 -1
- package/dist/assets/identity-page-route-bqmH9pAp.js +1 -0
- package/dist/assets/impersonate-version-flag-DC4HAvtV.js +1 -0
- package/dist/assets/index-BXFh6SyK.css +2 -0
- package/dist/assets/index-C0-CE6Al.js +124 -0
- package/dist/assets/input-DwAJUlac.js +1 -0
- package/dist/assets/inspect-page-CgNTUN8o.js +2 -0
- package/dist/assets/install-C4tkd7Wj.js +1 -0
- package/dist/assets/integrations-page-D89OcCOp.js +1 -0
- package/dist/assets/intelligence-layout-Cuku4uqi.js +1 -0
- package/dist/assets/is-electron-BCDAAC00.js +1 -0
- package/dist/assets/{jinja-Dl-w9ndv.js → jinja-DA4mN-er.js} +1 -1
- package/dist/assets/{jison-DqiJxacS.js → jison-BUGhbqsC.js} +1 -1
- package/dist/assets/{julia-CRSYmK9Q.js → julia-DE2tbbof.js} +1 -1
- package/dist/assets/{just-DwPU65eq.js → just-F4pUwLYE.js} +1 -1
- package/dist/assets/{latex-kFHU0AiV.js → latex-DVRfNFWZ.js} +1 -1
- package/dist/assets/{lib-CreNldEg.js → lib-CVXzm3-C.js} +1 -1
- package/dist/assets/library-detail-page-_D85yLW9.js +1 -0
- package/dist/assets/library-page-CBB_8v5U.js +1 -0
- package/dist/assets/{link-2-nd9oRqHR.js → link-2-B0QONFsy.js} +1 -1
- package/dist/assets/{liquid-BqJmG_-p.js → liquid-BQaobxSx.js} +1 -1
- package/dist/assets/llm-dimension-DZzl8VAV.js +1 -0
- package/dist/assets/loader-circle-FEkI0Am4.js +1 -0
- package/dist/assets/login-flow-DIpcUTNe.js +1 -0
- package/dist/assets/login-page-VPaB4xql.js +1 -0
- package/dist/assets/logout-page-BECXh4F0.js +1 -0
- package/dist/assets/logs-layout-Dt8Xlesr.js +1 -0
- package/dist/assets/loopback-auth-RK24i2eZ.js +1 -0
- package/dist/assets/{lua-Bm8pAWjJ.js → lua-C6astBbM.js} +1 -1
- package/dist/assets/{marko-CtYsAbA9.js → marko-CDvDU-jy.js} +1 -1
- package/dist/assets/{mdc-CIWadW2_.js → mdc-DYeZOJof.js} +1 -1
- package/dist/assets/memory-router-playground-page-C721buHE.js +3 -0
- package/dist/assets/menu-0h93UDZw.js +1 -0
- package/dist/assets/minimize-2-H-zinYcX.js +1 -0
- package/dist/assets/{misc-C48PHiZA.js → misc-BwTS2Omn.js} +1 -1
- package/dist/assets/{mobile-sidebar-drawer-BPjlJDFT.js → mobile-sidebar-drawer-S4w1qz1d.js} +1 -1
- package/dist/assets/modal-C7CS3Y_X.js +1 -0
- package/dist/assets/native-biometric-BYFBF18V.js +6 -0
- package/dist/assets/{native-file-DAT4q2dZ.js → native-file-BURkYQJV.js} +2 -2
- package/dist/assets/{nextflow-CfF50ZWD.js → nextflow-CSmwW5Ci.js} +1 -1
- package/dist/assets/{nginx-DolsBkZw.js → nginx-CnKPWPN7.js} +1 -1
- package/dist/assets/{nim-C2UmDq2M.js → nim-DVpbAykj.js} +1 -1
- package/dist/assets/{notice-whIbTA0N.js → notice-BWm2kHlI.js} +1 -1
- package/dist/assets/notifications-page-cIm6df1B.js +1 -0
- package/dist/assets/{oauth-complete-page-BKhMJwKk.js → oauth-complete-page-B6N3m4NP.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-BEJRVVVY.js → oauth-popup-complete-page-395H22WR.js} +1 -1
- package/dist/assets/{octagon-x-JZskQa-B.js → octagon-x-Bze4QGjG.js} +1 -1
- package/dist/assets/onboarding-layout-DjM09Q5m.js +1 -0
- package/dist/assets/{page-shell-CFZbOuiy.js → page-shell-D7zZqTOH.js} +1 -1
- package/dist/assets/panel-item-BPosLg5Y.js +1 -0
- package/dist/assets/password-reset-page-BSJUcHmw.js +1 -0
- package/dist/assets/pcm-downsample-worklet-CwNZrVLe.js +1 -0
- package/dist/assets/{pdf-D2iKihRr.js → pdf-DB2rCsKP.js} +1 -1
- package/dist/assets/{pencil-obxZd0L0.js → pencil-CESg1M7c.js} +1 -1
- package/dist/assets/{perl-bEEhNNIc.js → perl-DL5nyTE3.js} +1 -1
- package/dist/assets/{php-lzz2TUwQ.js → php-14zLJiK2.js} +1 -1
- package/dist/assets/platform-loopback-page-Dv832i5i.js +1 -0
- package/dist/assets/plugins-page-D0AYf4VK.js +1 -0
- package/dist/assets/portal-container-CKtYcZfP.js +1 -0
- package/dist/assets/pre-chat-flow-C_L0Kj1b.js +1 -0
- package/dist/assets/preload-helper-CS_K7l1U.js +1 -0
- package/dist/assets/privacy-page-CWEzt4GF.js +1 -0
- package/dist/assets/privacy-screen-Cglc2W0S.js +1 -0
- package/dist/assets/{progress-bar-CgM2b0gB.js → progress-bar-CgQMQ_UR.js} +1 -1
- package/dist/assets/provider-callback-page-CuKLmggk.js +1 -0
- package/dist/assets/provider-key-D2KYz36o.js +1 -0
- package/dist/assets/{provider-signup-page-CgDYbapA.js → provider-signup-page-BEtl7KkK.js} +1 -1
- package/dist/assets/{pug-Du3Nit4O.js → pug-BcGFw36t.js} +1 -1
- package/dist/assets/{qml-4L72CoUN.js → qml-DSBzgwxk.js} +1 -1
- package/dist/assets/query-tags-DAoC-jzg.js +1 -0
- package/dist/assets/{razor-nRRX0DFG.js → razor-DzERoHYk.js} +1 -1
- package/dist/assets/react-query.gen-CfXF72qo.js +1 -0
- package/dist/assets/resize-errors-C_vO4oid.js +1 -0
- package/dist/assets/routes-C8gmti0H.js +1 -0
- package/dist/assets/{rst--ZORQ5yS.js → rst-BIN6LBBb.js} +1 -1
- package/dist/assets/{ruby-BfMO6qcI.js → ruby-jBJwv2mP.js} +1 -1
- package/dist/assets/{sas-DZ8XHRjc.js → sas-yRpQSa4M.js} +1 -1
- package/dist/assets/{save-Df8bLDyG.js → save-CBzZvuPl.js} +1 -1
- package/dist/assets/schedules-b9DnRmiG.js +1 -0
- package/dist/assets/schedules-page-DfGN3eJh.js +1 -0
- package/dist/assets/{scss-hLIrK7lC.js → scss-D6nUDMBD.js} +1 -1
- package/dist/assets/{sdk.gen-ONnYjEkg.js → sdk.gen-Dvq7zGs0.js} +1 -1
- package/dist/assets/sdk.gen-up8j0_uF.js +6 -0
- package/dist/assets/selection-store-BCKoLRDh.js +1 -0
- package/dist/assets/settings-layout-BDZvVIm1.js +1 -0
- package/dist/assets/{shaderlab-D9aDW2b6.js → shaderlab-2mkDNSZE.js} +1 -1
- package/dist/assets/share-feedback-modal-B1A11seo.js +1 -0
- package/dist/assets/{shellsession-BUDRJq28.js → shellsession-qVduQyG2.js} +1 -1
- package/dist/assets/sidebar-tree-D2dxb9op.js +1 -0
- package/dist/assets/signup-page-sKugF6gW.js +1 -0
- package/dist/assets/skills-page-Cf_Mb_VB.js +1 -0
- package/dist/assets/sounds-page-D4AbKNGs.js +1 -0
- package/dist/assets/{soy-dsk6RE9u.js → soy-N-ikyuo0.js} +1 -1
- package/dist/assets/{sparql-C95gzauI.js → sparql-CXOfNIAD.js} +1 -1
- package/dist/assets/{src-DzD6V_-s.js → src-Bah0_lDG.js} +39 -38
- package/dist/assets/stat-square-CMFH3mHq.js +1 -0
- package/dist/assets/{stata-5DLAJEsU.js → stata-DAwqVBtA.js} +1 -1
- package/dist/assets/step-indicator-dots-DEwJDNRl.js +1 -0
- package/dist/assets/{subagent-detail-panel-DIWBSLWn.js → subagent-detail-panel-IA4lwH71.js} +2 -2
- package/dist/assets/{surrealql-Bd5MMIOc.js → surrealql-mj-mrh8J.js} +1 -1
- package/dist/assets/{svelte-Db0PLX4z.js → svelte-Dc7E_mCh.js} +1 -1
- package/dist/assets/system-events-page-BEGsifyy.js +1 -0
- package/dist/assets/system-events-redirect-page-Don4wWIq.js +1 -0
- package/dist/assets/tag-BkZB4euH.js +1 -0
- package/dist/assets/{target-uRVZvIcc.js → target-B8JHLfTN.js} +1 -1
- package/dist/assets/{templ-DqszTP4R.js → templ-B12CJEzs.js} +1 -1
- package/dist/assets/{tex-BKxy02eW.js → tex-SEHboowz.js} +1 -1
- package/dist/assets/{tiptap-document-editor-DqrxIFNH.js → tiptap-document-editor-CE5261JW.js} +34 -34
- package/dist/assets/toast-Cii5pffK.js +1 -0
- package/dist/assets/toggle-DGzEs0L1.js +1 -0
- package/dist/assets/tool-detail-panel-Bia-i_-t.js +1 -0
- package/dist/assets/trace-page-BvV75mVp.js +1 -0
- package/dist/assets/{ts-tags-CdR5yq4h.js → ts-tags-D-Jr8mpt.js} +1 -1
- package/dist/assets/{twig-uOUM9nP_.js → twig-CWdkELuI.js} +1 -1
- package/dist/assets/{typography-DEzNhGy_.js → typography-PN7B1rrW.js} +1 -1
- package/dist/assets/upgrade-cancel-page-qA1Xq7P0.js +1 -0
- package/dist/assets/upgrade-success-page-CDrPlb_B.js +1 -0
- package/dist/assets/usage-page-BfKtkt5O.js +1 -0
- package/dist/assets/usage-window-D5EMg2nb.js +1 -0
- package/dist/assets/use-active-assistant-id-DBTnnGZz.js +1 -0
- package/dist/assets/use-bus-subscription-Cz3Ryocr.js +1 -0
- package/dist/assets/use-current-platform-assistant-BPc5EmNa.js +1 -0
- package/dist/assets/use-debounced-value-kSPC-rBe.js +1 -0
- package/dist/assets/{use-is-mobile-Dkb-QHwX.js → use-is-mobile-BFvLVXwH.js} +1 -1
- package/dist/assets/use-is-org-ready-CQYZJPtU.js +1 -0
- package/dist/assets/use-oauth-complete-deep-link-listener-D9DuhgOP.js +1 -0
- package/dist/assets/{use-reduced-motion-C8MjY0gt.js → use-reduced-motion-Blyqtp4V.js} +1 -1
- package/dist/assets/{useMutation-DO5gkGJX.js → useMutation-DTb3lMvF.js} +1 -1
- package/dist/assets/{useQuery-Cihv2Mys.js → useQuery-DAtrV0RI.js} +1 -1
- package/dist/assets/utils-CVZ8WTxM.js +1 -0
- package/dist/assets/viewer-store-BIjT34BR.js +1 -0
- package/dist/assets/voice-page-BqZOkgpX.js +1 -0
- package/dist/assets/{vue-BlLLuGzo.js → vue-BprQ0-Ub.js} +1 -1
- package/dist/assets/{vue-html-qXCpw_5J.js → vue-html-hp77151s.js} +1 -1
- package/dist/assets/{vue-vine-p-PcMUu-.js → vue-vine-Cr9pIPKl.js} +1 -1
- package/dist/assets/{wand-sparkles-jBh4Oi5W.js → wand-sparkles-CIV_5Oi6.js} +1 -1
- package/dist/assets/{weather-forecast-display-BGHYvMUU.js → weather-forecast-display-C-8IrzJ_.js} +1 -1
- package/dist/assets/{web-DMfbmsYR.js → web-BUHhvd6U.js} +1 -1
- package/dist/assets/{web-oo3gTRUT.js → web-BlXL6x8k.js} +1 -1
- package/dist/assets/{web-am9pHjIz.js → web-CBHiUh0h.js} +1 -1
- package/dist/assets/{web-DwEQfgUn.js → web-DuNCoqzd.js} +1 -1
- package/dist/assets/{web-BUTlZuwF.js → web-Pb43q_QH.js} +1 -1
- package/dist/assets/{web-BtTWxP77.js → web-qR3jv4Dd.js} +1 -1
- package/dist/assets/{web-DV3iiXuP.js → web-tLusY4Su.js} +1 -1
- package/dist/assets/welcome-screen-foFXU-ge.js +1 -0
- package/dist/assets/{with-selector-CLdxmz2Q.js → with-selector-BomrVLKx.js} +1 -1
- package/dist/assets/workspace-page-D9Re-ww4.js +1 -0
- package/dist/assets/x-2OoTSOWJ.js +1 -0
- package/dist/assets/x-CwP6G6OK.js +1 -0
- package/dist/assets/{xml-ZpZBIidV.js → xml-Cm8puQKu.js} +1 -1
- package/dist/assets/{xsl-DLmLvndi.js → xsl-C1TQprpW.js} +1 -1
- package/dist/index.html +94 -103
- package/dist/skills/amazon/assets/icon.svg +38 -0
- package/dist/skills/api-mapping/assets/icon.svg +18 -0
- package/dist/skills/discord-app-setup/assets/icon.svg +1 -0
- package/dist/skills/doordash/assets/icon.svg +1 -0
- package/dist/skills/elevenlabs-voice/assets/icon.svg +1 -0
- package/dist/skills/frontend-design/assets/icon.svg +16 -0
- package/dist/skills/gmail/assets/icon.svg +1 -0
- package/dist/skills/google-calendar/assets/icon.svg +1 -0
- package/dist/skills/inbox-cleanup/assets/icon.svg +1 -0
- package/dist/skills/inbox-management/assets/icon.svg +1 -0
- package/dist/skills/linear-app-setup/assets/icon.svg +1 -0
- package/dist/skills/macos-automation/assets/icon.svg +12 -0
- package/dist/skills/mailgun-setup/assets/icon.svg +1 -0
- package/dist/skills/meet-join/assets/icon.svg +1 -0
- package/dist/skills/notion/assets/icon.svg +1 -0
- package/dist/skills/outlook/assets/icon.svg +2 -0
- package/dist/skills/outlook-calendar/assets/icon.svg +2 -0
- package/dist/skills/sentry-app-setup/assets/icon.svg +1 -0
- package/dist/skills/slack/assets/icon.svg +6 -0
- package/dist/skills/start-the-day/assets/icon.svg +13 -0
- package/dist/skills/stripe-app-setup/assets/icon.svg +1 -0
- package/dist/skills/stripe-link-wallet/assets/icon.svg +1 -0
- package/dist/skills/tasks/assets/icon.svg +34 -0
- package/dist/skills/telegram-setup/assets/icon.svg +1 -0
- package/dist/skills/twilio-setup/assets/icon.svg +1 -0
- package/dist/skills/vellum-github-app-setup/assets/icon.svg +1 -0
- package/dist/skills/vercel-token-setup/assets/icon.svg +1 -0
- package/dist/skills/voice-setup/assets/icon.svg +20 -0
- package/dist/skills/weather/assets/icon.svg +24 -0
- package/dist/theme-init.js +23 -0
- package/package.json +1 -1
- package/dist/assets/account-page-mLTPbjvL.js +0 -1
- package/dist/assets/add-credits-modal-Bl0Bh2Go.js +0 -1
- package/dist/assets/advanced-page-FCPOBhRy.js +0 -1
- package/dist/assets/ai-page-CQnqBX-M.js +0 -1
- package/dist/assets/api-Du21iE99.js +0 -1
- package/dist/assets/api-errors-BK1-O3Nx.js +0 -1
- package/dist/assets/archive-page-gPcbutQd.js +0 -1
- package/dist/assets/arrow-up-tR4McxO9.js +0 -1
- package/dist/assets/assistant-context-BFnqXVaa.js +0 -1
- package/dist/assets/assistant-identity-store-ouefMZDR.js +0 -1
- package/dist/assets/assistant-status-panel-83EaWImU.js +0 -1
- package/dist/assets/auth-store-Dy6ebqwf.js +0 -1
- package/dist/assets/avatar-api-IlDWh3Gv.js +0 -1
- package/dist/assets/billing-page-DiItxvfm.js +0 -34
- package/dist/assets/book-open-BprZriYY.js +0 -1
- package/dist/assets/button-aOWst_o4.js +0 -1
- package/dist/assets/check-R2i_nIpE.js +0 -1
- package/dist/assets/checkbox-DKXy3MWj.js +0 -1
- package/dist/assets/client-BRb8najC.js +0 -1
- package/dist/assets/client-ChXJae8j.js +0 -1
- package/dist/assets/command-palette-BlS50uTB.js +0 -1
- package/dist/assets/community-page-CqzBRDpi.js +0 -1
- package/dist/assets/connect-page-DxmIoKzq.js +0 -1
- package/dist/assets/contacts-page-route-D6Krd6C5.js +0 -1
- package/dist/assets/conversation-id-wire-field-1lxFUhFO.js +0 -39
- package/dist/assets/conversations-DsLnxwFV.js +0 -1
- package/dist/assets/danger-zone-redirect-page-Do365LOh.js +0 -1
- package/dist/assets/debug-page-CsRe4giP.js +0 -3
- package/dist/assets/deploy-dialogs-M04VhTt7.js +0 -1
- package/dist/assets/developer-page-CP5daBen.js +0 -1
- package/dist/assets/devices-page-CDcmwZ7U.js +0 -1
- package/dist/assets/dist-B2HM0OLN2.js +0 -1
- package/dist/assets/dist-Bsw_3G-z.js +0 -1
- package/dist/assets/dist-CuKiMkvX.js +0 -1
- package/dist/assets/dist-D52VCGJ3.js +0 -45
- package/dist/assets/document-viewer-page-DLI8SRag.js +0 -1
- package/dist/assets/dropdown-GgPqNVMy.js +0 -1
- package/dist/assets/emails-page-1R_kLl2Z.js +0 -1
- package/dist/assets/error-report-C0plV8M2.js +0 -1
- package/dist/assets/esm-Cvsy6Km4.js +0 -2
- package/dist/assets/esm-DUi7Rn40.js +0 -2
- package/dist/assets/esm-FGLqm2MN.js +0 -2
- package/dist/assets/esm-XjY7or7q.js +0 -2
- package/dist/assets/event-bus-store-Bi6GfBog.js +0 -1
- package/dist/assets/exports-rSCybWxk.js +0 -4
- package/dist/assets/feature-flag-catalog-CSWHhMDD.js +0 -1
- package/dist/assets/general-page-BuBX2YwQ.js +0 -1
- package/dist/assets/hatching-screen-BYbFCv5M.js +0 -1
- package/dist/assets/home-page-route-CW4m4-Ja.js +0 -1
- package/dist/assets/hosting-screen-Cl6VkyWS.js +0 -1
- package/dist/assets/identity-page-route-BBY720B5.js +0 -1
- package/dist/assets/index-C8e7KvxW.css +0 -2
- package/dist/assets/index-aLxsGtfC.js +0 -119
- package/dist/assets/input-Wbm6eptw.js +0 -1
- package/dist/assets/inspect-page-sZtDl3Y1.js +0 -2
- package/dist/assets/integrations-page-B8SCBk4Y.js +0 -1
- package/dist/assets/intelligence-layout-3b4qm2Kl.js +0 -1
- package/dist/assets/library-detail-page-V05KsJng.js +0 -1
- package/dist/assets/library-page-CP4sGQ5J.js +0 -1
- package/dist/assets/llm-dimension-B9qfQX3Y.js +0 -1
- package/dist/assets/loader-circle-DaEOga2S.js +0 -1
- package/dist/assets/local-mode-BO8mMNsq.js +0 -1
- package/dist/assets/login-flow-C9O7X98K.js +0 -1
- package/dist/assets/login-page-BPJpblPt.js +0 -1
- package/dist/assets/logout-page-BOesBxfe.js +0 -1
- package/dist/assets/logs-layout-B43V0N93.js +0 -1
- package/dist/assets/memory-router-playground-page-pa7bYqYJ.js +0 -3
- package/dist/assets/middleware-B7I04D_Q.js +0 -1
- package/dist/assets/modal-1PrCjlTg.js +0 -1
- package/dist/assets/native-biometric-BPPNP_Sl.js +0 -6
- package/dist/assets/native-deep-link-ic-1ub-k.js +0 -1
- package/dist/assets/notifications-page-BVWqstpZ.js +0 -1
- package/dist/assets/oauth-popup-BD5GDUMi.js +0 -1
- package/dist/assets/onboarding-layout-9Hg63IFb.js +0 -1
- package/dist/assets/panel-item-ChHVXS-W.js +0 -1
- package/dist/assets/password-reset-page-C-dZStkw.js +0 -1
- package/dist/assets/plugins-page-CH_Vocd5.js +0 -1
- package/dist/assets/portal-container-CYxfRy4f.js +0 -1
- package/dist/assets/pre-chat-flow-DLHzM5QY.js +0 -1
- package/dist/assets/prechat-D2oqOkVm.js +0 -1
- package/dist/assets/preload-helper-S68_7Byc.js +0 -1
- package/dist/assets/privacy-page-C-Vj_p8l.js +0 -1
- package/dist/assets/privacy-screen-DWFpv0Fo.js +0 -1
- package/dist/assets/provider-callback-page-VFddaky4.js +0 -1
- package/dist/assets/query-tags-D8ub83Qe.js +0 -1
- package/dist/assets/react-dom-S1h5pQqq.js +0 -1
- package/dist/assets/react-query.gen-CaeZaVZK.js +0 -1
- package/dist/assets/react-query.gen-DA3VkUYA.js +0 -1
- package/dist/assets/resize-errors-DGTY2nAB.js +0 -1
- package/dist/assets/routes-CHnF8N9D.js +0 -1
- package/dist/assets/schedules-page-CYguL66k.js +0 -1
- package/dist/assets/sdk.gen-LsY3RZ9d.js +0 -6
- package/dist/assets/settings-layout-CTEOskoj.js +0 -1
- package/dist/assets/share-feedback-modal-B2uHY8-X.js +0 -1
- package/dist/assets/sidebar-tree-BEaTbIwA.js +0 -1
- package/dist/assets/signals-B8JnlKDT.js +0 -1
- package/dist/assets/signup-page-DEuLzFY7.js +0 -1
- package/dist/assets/skill-detail-DgRyktTW.js +0 -1
- package/dist/assets/skills-page-BYdkBLR0.js +0 -1
- package/dist/assets/sounds-page-Duno_f9p.js +0 -1
- package/dist/assets/stat-square-Di_bhDMh.js +0 -1
- package/dist/assets/step-indicator-dots-C5bemV-h.js +0 -1
- package/dist/assets/system-events-page-DC6mlB3O.js +0 -1
- package/dist/assets/system-events-redirect-page-S94e1yM8.js +0 -1
- package/dist/assets/tag-D_G_KF4_.js +0 -1
- package/dist/assets/toast-B74YN17b.js +0 -1
- package/dist/assets/toggle-Brqq7_4W.js +0 -1
- package/dist/assets/tool-detail-panel-CtJ0Mc2d.js +0 -1
- package/dist/assets/trace-page-Cw-wj7A7.js +0 -1
- package/dist/assets/upgrade-cancel-page-DvdPrIVz.js +0 -1
- package/dist/assets/upgrade-success-page-Bawb68MQ.js +0 -1
- package/dist/assets/usage-page-BnW56hOn.js +0 -1
- package/dist/assets/use-current-platform-assistant-B8PKBExd.js +0 -1
- package/dist/assets/use-oauth-complete-deep-link-listener-CdJy7YJb.js +0 -1
- package/dist/assets/voice-page-B4bYnhST.js +0 -1
- package/dist/assets/welcome-screen-Csb7OEuR.js +0 -1
- package/dist/assets/workspace-page-Wx3-2mgb.js +0 -1
- package/dist/assets/x-CUFf_mCR.js +0 -1
- package/dist/assets/x-DMasRVxp.js +0 -1
- /package/dist/assets/{abap-S720j6HC.js → abap-Bfl6OWPB.js} +0 -0
- /package/dist/assets/{actionscript-3-BJvigUfR.js → actionscript-3-Dlqiiy8x.js} +0 -0
- /package/dist/assets/{ada-DQ2OWYpf.js → ada-COUbPro6.js} +0 -0
- /package/dist/assets/{andromeeda-_EhmqsVp.js → andromeeda-BoXZFw2R.js} +0 -0
- /package/dist/assets/{apache-BsyG71ag.js → apache-DpKhYfq6.js} +0 -0
- /package/dist/assets/{apex-Ccw0eeCe.js → apex-B_uFO61F.js} +0 -0
- /package/dist/assets/{applescript-ha7qmUXh.js → applescript-D3paN7K0.js} +0 -0
- /package/dist/assets/{ara-BgWiE2ox.js → ara-CwbWLquj.js} +0 -0
- /package/dist/assets/{asciidoc-Dn70l7h4.js → asciidoc-VGSo8T5D.js} +0 -0
- /package/dist/assets/{asm-DR7r0jUw.js → asm-FPeQDFEa.js} +0 -0
- /package/dist/assets/{aurora-x-B9nEusFo.js → aurora-x-COSrEIJC.js} +0 -0
- /package/dist/assets/{avatar-bundled-components-zv0dj2l3.js → avatar-bundled-components-CrafToy8.js} +0 -0
- /package/dist/assets/{avatar-svg-compositor-CwF7LSJ9.js → avatar-svg-compositor-DuV7I45L.js} +0 -0
- /package/dist/assets/{awk-BJdTQ5Hx.js → awk-fUzIbt5q.js} +0 -0
- /package/dist/assets/{ayu-dark-DqQbu2-w.js → ayu-dark-K3pEfprB.js} +0 -0
- /package/dist/assets/{ayu-light--8qST3j8.js → ayu-light-BhBDUJo9.js} +0 -0
- /package/dist/assets/{ayu-mirage-DrJzVJ_F.js → ayu-mirage-CYENPbEi.js} +0 -0
- /package/dist/assets/{ballerina-BYRinlHo.js → ballerina-DIi7YSrd.js} +0 -0
- /package/dist/assets/{bat-CUMUh9XV.js → bat-tHgyIDGw.js} +0 -0
- /package/dist/assets/{beancount-CsLlzN8M.js → beancount-DawK3651.js} +0 -0
- /package/dist/assets/{berry-CdPki7q8.js → berry-DkDnrvVb.js} +0 -0
- /package/dist/assets/{bibtex-B8xm9XLj.js → bibtex-B5oISiWf.js} +0 -0
- /package/dist/assets/{bicep-CnLpnmf8.js → bicep-BlTgOqlL.js} +0 -0
- /package/dist/assets/{bird2-Cqt8sSVG.js → bird2-COHCqf-V.js} +0 -0
- /package/dist/assets/{c-VnVOqj0C.js → c-DBsgGwh3.js} +0 -0
- /package/dist/assets/{c3-DpiHWuuX.js → c3-DG4RoDeZ.js} +0 -0
- /package/dist/assets/{cadence-DgcVki5R.js → cadence-BHyhLOnE.js} +0 -0
- /package/dist/assets/{catppuccin-frappe-C_yfKP-L.js → catppuccin-frappe-BoFiW_80.js} +0 -0
- /package/dist/assets/{catppuccin-latte-CtoBMVdv.js → catppuccin-latte-CFlPOnsH.js} +0 -0
- /package/dist/assets/{catppuccin-macchiato-xFP5yO7O.js → catppuccin-macchiato-CLHnCD9Z.js} +0 -0
- /package/dist/assets/{catppuccin-mocha-60sqJvv0.js → catppuccin-mocha-D9O1RTSI.js} +0 -0
- /package/dist/assets/{clarity-Rka6Ibys.js → clarity-Bad-9p-G.js} +0 -0
- /package/dist/assets/{client.gen-ywbejrz1.js → client.gen-BSPUYAay.js} +0 -0
- /package/dist/assets/{clojure-CQ5DpGM1.js → clojure-JsVarUVs.js} +0 -0
- /package/dist/assets/{clsx-D1MxZxYX.js → clsx-CAUM2Ssy.js} +0 -0
- /package/dist/assets/{cmake-DsAm9QpO.js → cmake-DXbVPxoO.js} +0 -0
- /package/dist/assets/{cn-CjywcAuq.js → cn-DIX4PZch.js} +0 -0
- /package/dist/assets/{codeowners-BDBDyRC_.js → codeowners-Co7U_H7C.js} +0 -0
- /package/dist/assets/{codeql-CZfFhTX0.js → codeql-DbhkTzcI.js} +0 -0
- /package/dist/assets/{common-lisp-Dz6SVlfw.js → common-lisp-5EpYtPq7.js} +0 -0
- /package/dist/assets/{coq-D2tyWqdS.js → coq-BHTaQtqU.js} +0 -0
- /package/dist/assets/{csharp-B6wLYKms.js → csharp-vNqAk7wS.js} +0 -0
- /package/dist/assets/{css-Cs4MPfhN.js → css-D8Elscfw.js} +0 -0
- /package/dist/assets/{csv-D3H5ikhE.js → csv-BOCRZ51I.js} +0 -0
- /package/dist/assets/{cue-Lq7mpKOq.js → cue--vvB6NEp.js} +0 -0
- /package/dist/assets/{cypher-CODl5eKV.js → cypher-8zw1cZPY.js} +0 -0
- /package/dist/assets/{d-DZC76yx1.js → d-DCw6i__G.js} +0 -0
- /package/dist/assets/{dark-plus-CBASO-cg.js → dark-plus-CJQgO0a2.js} +0 -0
- /package/dist/assets/{dart-CmrdZv7c.js → dart-Di_0TMyS.js} +0 -0
- /package/dist/assets/{dax-R1bAmQ_D.js → dax-C3FCmr3K.js} +0 -0
- /package/dist/assets/{definitions-DNF_njzj.js → definitions-BhcK9MeU.js} +0 -0
- /package/dist/assets/{desktop-5nM7o7HH.js → desktop-DfPpjKHQ.js} +0 -0
- /package/dist/assets/{diff-CcKimul9.js → diff-CbXGRoMP.js} +0 -0
- /package/dist/assets/{dist-Cz1Xi5ZX.js → dist-d-PJ8AUi.js} +0 -0
- /package/dist/assets/{docker-TG47LLyN.js → docker-B4Kzg9bz.js} +0 -0
- /package/dist/assets/{dotenv-CiUEiZKH.js → dotenv-Bou3VaLF.js} +0 -0
- /package/dist/assets/{dracula-CT0oGdNT.js → dracula-DqvSNsR6.js} +0 -0
- /package/dist/assets/{dracula-soft-BXFmyviC.js → dracula-soft-h1T06flS.js} +0 -0
- /package/dist/assets/{dream-maker-CAM2D_UX.js → dream-maker-BVxHB1DY.js} +0 -0
- /package/dist/assets/{emacs-lisp-CzK3ExcO.js → emacs-lisp-C5w5G5qc.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-CmIAmDSt.js → emoji-catalog-data-ZbE1lqD6.js} +0 -0
- /package/dist/assets/{everforest-dark-CQlB3mCO.js → everforest-dark-8YvZGFtA.js} +0 -0
- /package/dist/assets/{everforest-light-BA4ay6iM.js → everforest-light-7kDryiLY.js} +0 -0
- /package/dist/assets/{fennel-eG2_iaTI.js → fennel-0vdmVKTu.js} +0 -0
- /package/dist/assets/{fish-zI3emtm-.js → fish-IyesOFcd.js} +0 -0
- /package/dist/assets/{fluent-BZo6aiNu.js → fluent-CcNoA3qp.js} +0 -0
- /package/dist/assets/{format-hyvuWewV.js → format-VxJLq14L.js} +0 -0
- /package/dist/assets/{fortran-free-form-57r0sG8y.js → fortran-free-form-_mCAt4L5.js} +0 -0
- /package/dist/assets/{gdscript-1YmxJL3Q.js → gdscript-DXUJNbQF.js} +0 -0
- /package/dist/assets/{gdshader-BfYwvVWN.js → gdshader-DK3kh5kx.js} +0 -0
- /package/dist/assets/{genie-CWE9MH2Z.js → genie-BDu4LoAt.js} +0 -0
- /package/dist/assets/{gherkin-DylFqTNM.js → gherkin-Bj4QY2ZZ.js} +0 -0
- /package/dist/assets/{github-dark-xIytAWi0.js → github-dark-23T46ITp.js} +0 -0
- /package/dist/assets/{github-dark-default-BK9X8oxX.js → github-dark-default-YRljnVzM.js} +0 -0
- /package/dist/assets/{github-dark-dimmed-CurnRG13.js → github-dark-dimmed-dQav7O6R.js} +0 -0
- /package/dist/assets/{github-dark-high-contrast-DxF4Jnoi.js → github-dark-high-contrast-DidY19tg.js} +0 -0
- /package/dist/assets/{github-light-DAfSDMwO.js → github-light-BObDDVDh.js} +0 -0
- /package/dist/assets/{github-light-default-CCtzMk6P.js → github-light-default-BoJDCN5R.js} +0 -0
- /package/dist/assets/{github-light-high-contrast-KEzODQXH.js → github-light-high-contrast-Bst7qyBs.js} +0 -0
- /package/dist/assets/{gleam-DdIPhrNi.js → gleam-mHMeGp-o.js} +0 -0
- /package/dist/assets/{gn-pxGNTpNA.js → gn-BOh1TF98.js} +0 -0
- /package/dist/assets/{gnuplot-CGxnsTQL.js → gnuplot-BeWb4QIH.js} +0 -0
- /package/dist/assets/{go-DkMdryeU.js → go-GgqMuLaN.js} +0 -0
- /package/dist/assets/{groovy-Dd5mdG4N.js → groovy-C9Z63wPJ.js} +0 -0
- /package/dist/assets/{gruvbox-dark-hard-B20DGFjy.js → gruvbox-dark-hard-D3hhOWHI.js} +0 -0
- /package/dist/assets/{gruvbox-dark-medium-DQ-yywkT.js → gruvbox-dark-medium-CPtDKE5U.js} +0 -0
- /package/dist/assets/{gruvbox-dark-soft-CKAoLyhO.js → gruvbox-dark-soft--KzcMTkn.js} +0 -0
- /package/dist/assets/{gruvbox-light-hard-DTReY2fY.js → gruvbox-light-hard-Cr7t7Yc0.js} +0 -0
- /package/dist/assets/{gruvbox-light-medium-3mzIc6xO.js → gruvbox-light-medium-DSXNnsG2.js} +0 -0
- /package/dist/assets/{gruvbox-light-soft-D41InbYG.js → gruvbox-light-soft-CQt4xaiw.js} +0 -0
- /package/dist/assets/{haskell-I8C-JODX.js → haskell-BAFTh2zU.js} +0 -0
- /package/dist/assets/{haxe-CvAJ9gVe.js → haxe-Bzf0Gule.js} +0 -0
- /package/dist/assets/{hcl-COD-gUFt.js → hcl-DG1GEjfN.js} +0 -0
- /package/dist/assets/{hjson-BB-7M6Aw.js → hjson-CfLJP1MZ.js} +0 -0
- /package/dist/assets/{hlsl-evA1LyhB.js → hlsl-CzJWYpeK.js} +0 -0
- /package/dist/assets/{horizon-DiEWIIog.js → horizon-Debh6yGF.js} +0 -0
- /package/dist/assets/{horizon-bright-ClSn0MBy.js → horizon-bright-CKvdi3Tu.js} +0 -0
- /package/dist/assets/{houston-CL8GXgL9.js → houston-B2Ejyr-g.js} +0 -0
- /package/dist/assets/{hy-CLelu6yL.js → hy-pcFArSJ6.js} +0 -0
- /package/dist/assets/{imba-DQ72tITW.js → imba-BQU3ATlD.js} +0 -0
- /package/dist/assets/{ini-BXuaV21y.js → ini-Bv5_HvOR.js} +0 -0
- /package/dist/assets/{java-BTrCroH7.js → java-owmbVqcc.js} +0 -0
- /package/dist/assets/{javascript-CvaqMKLK.js → javascript-DTuM3op3.js} +0 -0
- /package/dist/assets/{json-BPes1XR5.js → json-zR3clZYf.js} +0 -0
- /package/dist/assets/{json5-Bra3_FRS.js → json5-7NU9KTTA.js} +0 -0
- /package/dist/assets/{jsonc-BfapMXPh.js → jsonc-B2TECXI_.js} +0 -0
- /package/dist/assets/{jsonl-BqVSdGk9.js → jsonl-BX_fzJy3.js} +0 -0
- /package/dist/assets/{jsonnet-mH4WdtrV.js → jsonnet-BbG4eXRI.js} +0 -0
- /package/dist/assets/{jssm-BxRMgAQF.js → jssm-DSjdYnDs.js} +0 -0
- /package/dist/assets/{jsx-runtime-2-RJdKf7.js → jsx-runtime-XSukodg_.js} +0 -0
- /package/dist/assets/{jsx-Geb0rb06.js → jsx-uYQiwDAi.js} +0 -0
- /package/dist/assets/{kanagawa-dragon-Tgm3mfbN.js → kanagawa-dragon-DRQWRtYa.js} +0 -0
- /package/dist/assets/{kanagawa-lotus-dJMGjVhA.js → kanagawa-lotus-B27_zN-N.js} +0 -0
- /package/dist/assets/{kanagawa-wave-Ci4QO7t9.js → kanagawa-wave-EAZwYQVu.js} +0 -0
- /package/dist/assets/{kdl-MiMB75si.js → kdl-BPFF2QoT.js} +0 -0
- /package/dist/assets/{kotlin-gUlkTc0q.js → kotlin-CzYpDily.js} +0 -0
- /package/dist/assets/{kusto-CN_8kOel.js → kusto-Cd20wvqp.js} +0 -0
- /package/dist/assets/{laserwave-BOEefu-D.js → laserwave-Bg9CK1g0.js} +0 -0
- /package/dist/assets/{lean-BO7mZZoh.js → lean-BFRCe_H4.js} +0 -0
- /package/dist/assets/{less-BBnf20HC.js → less-p1NRP6KM.js} +0 -0
- /package/dist/assets/{lib-DXeTRAgG.js → lib-eGZllh2n.js} +0 -0
- /package/dist/assets/{light-plus-CL09gsxH.js → light-plus-upjemLP3.js} +0 -0
- /package/dist/assets/{llvm-CeY51NZh.js → llvm-Cet_tzjQ.js} +0 -0
- /package/dist/assets/{local-settings-CS-DDnd1.js → local-settings-lVNyIOJ_.js} +0 -0
- /package/dist/assets/{log-BdCwBbX4.js → log-DBmXghSa.js} +0 -0
- /package/dist/assets/{logo-BoxZga1S.js → logo-BLXhBfIu.js} +0 -0
- /package/dist/assets/{luau-BDLcP78o.js → luau-CT4sQte_.js} +0 -0
- /package/dist/assets/{make-BACowfgt.js → make-CzZ-Pqm8.js} +0 -0
- /package/dist/assets/{markdown-Dhb8xNDt.js → markdown-CK4ZeF9q.js} +0 -0
- /package/dist/assets/{material-theme-Ez0bd6Np.js → material-theme-B0X5JuGU.js} +0 -0
- /package/dist/assets/{material-theme-darker-BrTZKIk1.js → material-theme-darker-bAfX1Mca.js} +0 -0
- /package/dist/assets/{material-theme-lighter-GBL_nuBb.js → material-theme-lighter-kiXQ2ArM.js} +0 -0
- /package/dist/assets/{material-theme-ocean-W4K6pv_o.js → material-theme-ocean-0YlpVqMF.js} +0 -0
- /package/dist/assets/{material-theme-palenight-CE5pyPkh.js → material-theme-palenight-BuhI7LV9.js} +0 -0
- /package/dist/assets/{matlab-oLNWLDxt.js → matlab-d4q8V2kc.js} +0 -0
- /package/dist/assets/{mdx-CCShXdHK.js → mdx-K6mWiB31.js} +0 -0
- /package/dist/assets/{mermaid-iMeSjHhd.js → mermaid-CPUZiUu1.js} +0 -0
- /package/dist/assets/{min-dark-2BIYkZDD.js → min-dark-2Rbk1Br6.js} +0 -0
- /package/dist/assets/{min-light-D7jRpC7L.js → min-light-BmT_ha59.js} +0 -0
- /package/dist/assets/{mipsasm-D32ZHktK.js → mipsasm-DK7WtL4H.js} +0 -0
- /package/dist/assets/{mojo-DTv7azE-.js → mojo-C6jO9tbh.js} +0 -0
- /package/dist/assets/{monokai-C69QrEpq.js → monokai-n0skDik5.js} +0 -0
- /package/dist/assets/{moonbit-Drvpmm67.js → moonbit-C-f1WC7g.js} +0 -0
- /package/dist/assets/{move-BoJQbLBf.js → move-QSx3iSl5.js} +0 -0
- /package/dist/assets/{narrat-CGvHu8pV.js → narrat-DFAniABg.js} +0 -0
- /package/dist/assets/{nextflow-groovy-TrjQfV-x.js → nextflow-groovy-B9N2TG62.js} +0 -0
- /package/dist/assets/{night-owl-light-DL1zFuhS.js → night-owl-light-CVag60SP.js} +0 -0
- /package/dist/assets/{night-owl-Cm3tKSTe.js → night-owl-mCA1q7O0.js} +0 -0
- /package/dist/assets/{nix-gE49qUYl.js → nix-bdwWUuk-.js} +0 -0
- /package/dist/assets/{nord-hcMUEYjI.js → nord-CtXtkaes.js} +0 -0
- /package/dist/assets/{nushell-YGZpsKrm.js → nushell--fLVweC7.js} +0 -0
- /package/dist/assets/{objective-c-C8_U-Oq6.js → objective-c-DAGpxSED.js} +0 -0
- /package/dist/assets/{objective-cpp-CTnjRelq.js → objective-cpp-S9Qw4p5N.js} +0 -0
- /package/dist/assets/{ocaml-CIH-y4RO.js → ocaml-CXgsxD0u.js} +0 -0
- /package/dist/assets/{odin-xNGfOpBm.js → odin-BMIOl-Ey.js} +0 -0
- /package/dist/assets/{one-dark-pro-vcbuKlOy.js → one-dark-pro-D0SOVXc3.js} +0 -0
- /package/dist/assets/{one-light-BVcy1mYE.js → one-light-6H2Du-_j.js} +0 -0
- /package/dist/assets/{openscad-ryRBrPrD.js → openscad-nYs158Bh.js} +0 -0
- /package/dist/assets/{pascal-Dtt9frDg.js → pascal-xdQR9yYI.js} +0 -0
- /package/dist/assets/{pkl-BPOm0CDI.js → pkl-CKXXcd2b.js} +0 -0
- /package/dist/assets/{plastic-BvPiAeG8.js → plastic-CUGHL3mc.js} +0 -0
- /package/dist/assets/{plsql-C0n-sewY.js → plsql-Cbu0u4o0.js} +0 -0
- /package/dist/assets/{po-DNpQeTYU.js → po-BzXmFbAz.js} +0 -0
- /package/dist/assets/{poimandres-CkMSnt1R.js → poimandres-K0I2PGAn.js} +0 -0
- /package/dist/assets/{polar-DhQvttpS.js → polar-JCQfk1iI.js} +0 -0
- /package/dist/assets/{postcss-CDzao07y.js → postcss-D-Lhrf07.js} +0 -0
- /package/dist/assets/{powerquery-0yv17wtC.js → powerquery-B0Xnzpzi.js} +0 -0
- /package/dist/assets/{powershell-CoAU4s9Q.js → powershell-Dhr7o9Mu.js} +0 -0
- /package/dist/assets/{prisma-BT02a--B.js → prisma-CP6RFVWH.js} +0 -0
- /package/dist/assets/{prolog-H1D05Gz_.js → prolog--OnDee30.js} +0 -0
- /package/dist/assets/{proto-CxS8PWa-.js → proto-D5uLba8m.js} +0 -0
- /package/dist/assets/{public-asset-BYzGMAVy.js → public-asset-D_6jw-nO.js} +0 -0
- /package/dist/assets/{puppet-B3d9-q2A.js → puppet-B-NS8S2F.js} +0 -0
- /package/dist/assets/{purescript-D_BNdk7z.js → purescript-YiaGpr2G.js} +0 -0
- /package/dist/assets/{python-Bex1-Oq0.js → python-BLHZUHuM.js} +0 -0
- /package/dist/assets/{qmldir-DeiHaMqx.js → qmldir-BqPbfIfY.js} +0 -0
- /package/dist/assets/{qss-DLk0oe6x.js → qss-CNa1aCQe.js} +0 -0
- /package/dist/assets/{queryOptions-C9SyzZF9.js → queryOptions-C_ypb2wA.js} +0 -0
- /package/dist/assets/{r-DrmzhlcM.js → r-DA-LaeJg.js} +0 -0
- /package/dist/assets/{racket-4J6CwdmV.js → racket-Bbm_5p0C.js} +0 -0
- /package/dist/assets/{raku-DM8GLjLA.js → raku-C97eJ11n.js} +0 -0
- /package/dist/assets/{react-BD5vCCEH.js → react-DJZBPgpf.js} +0 -0
- /package/dist/assets/{red-C7bJmhtt.js → red-BcnEthHf.js} +0 -0
- /package/dist/assets/{reg-DtQSbcdw.js → reg-BE7bjPQ8.js} +0 -0
- /package/dist/assets/{regexp-D1yQk9KY.js → regexp-zNGmBvxe.js} +0 -0
- /package/dist/assets/{rel-B5cTLqnC.js → rel-DxkHU6ey.js} +0 -0
- /package/dist/assets/{riscv-Bs7uVNV2.js → riscv-s2KghewY.js} +0 -0
- /package/dist/assets/{ron-DnVQvg3N.js → ron-C2k99hFN.js} +0 -0
- /package/dist/assets/{rose-pine-ClM-MJKX.js → rose-pine-DvkjqEA5.js} +0 -0
- /package/dist/assets/{rose-pine-dawn-ByNDqq_L.js → rose-pine-dawn-IDeCX2R_.js} +0 -0
- /package/dist/assets/{rose-pine-moon-CTzvG4V8.js → rose-pine-moon-AwRS3fIg.js} +0 -0
- /package/dist/assets/{rosmsg-Dyz4B4pk.js → rosmsg-DZvmyLbf.js} +0 -0
- /package/dist/assets/{rust-DO_lfDWX.js → rust-BR0kD35m.js} +0 -0
- /package/dist/assets/{sass-D0v6FpTm.js → sass-B1iDQwrz.js} +0 -0
- /package/dist/assets/{scala-Cv_C__Vn.js → scala-B_bbzrFM.js} +0 -0
- /package/dist/assets/{scheme-Tf_7H8Hg.js → scheme-Bh3SmU2Z.js} +0 -0
- /package/dist/assets/{sdbl-D7AqUQ1Z.js → sdbl-BjuGg6Hv.js} +0 -0
- /package/dist/assets/{semver-D9bo-f7O.js → semver-DLbEvyUs.js} +0 -0
- /package/dist/assets/{shellscript-CkL9lXSm.js → shellscript-Df7hfJNE.js} +0 -0
- /package/dist/assets/{slack-dark-BZYmSreQ.js → slack-dark-BMKx-uNu.js} +0 -0
- /package/dist/assets/{slack-ochin-141qUvWP.js → slack-ochin-DVWF26Tk.js} +0 -0
- /package/dist/assets/{smalltalk-BpKhbXk9.js → smalltalk-DOyDlfjw.js} +0 -0
- /package/dist/assets/{snazzy-light-C6W3FDJs.js → snazzy-light-CV5I2qfQ.js} +0 -0
- /package/dist/assets/{solarized-dark-CvRYuMr5.js → solarized-dark-ROrlu8b7.js} +0 -0
- /package/dist/assets/{solarized-light-BrZYeWGp.js → solarized-light-DLaQaEqx.js} +0 -0
- /package/dist/assets/{solidity-BEwj5bU5.js → solidity-Cpy-lQA4.js} +0 -0
- /package/dist/assets/{splunk-X43VxyaD.js → splunk-amWRSsqJ.js} +0 -0
- /package/dist/assets/{sql-BbM3W9qz.js → sql-LDYZUbXj.js} +0 -0
- /package/dist/assets/{ssh-config-xEesUMnx.js → ssh-config-DFL3K5A6.js} +0 -0
- /package/dist/assets/{stylus-kaERDi0y.js → stylus-CpFppqWZ.js} +0 -0
- /package/dist/assets/{swift-BauIFypW.js → swift-Cm8RIbkm.js} +0 -0
- /package/dist/assets/{synthwave-84-C8sViQ2U.js → synthwave-84-B07FyWEU.js} +0 -0
- /package/dist/assets/{system-verilog-CpFKRfen.js → system-verilog-Efh9Iyxc.js} +0 -0
- /package/dist/assets/{systemd-qI6s8zvr.js → systemd-CM8aBYFi.js} +0 -0
- /package/dist/assets/{talonscript-NlxFbnqo.js → talonscript-DNBlw3UJ.js} +0 -0
- /package/dist/assets/{tasl-zK97s-oI.js → tasl-B5CaCj6V.js} +0 -0
- /package/dist/assets/{tcl-CyGMFep3.js → tcl-LiOm-HhN.js} +0 -0
- /package/dist/assets/{terraform-ru__bYLC.js → terraform-Z3CLHZWW.js} +0 -0
- /package/dist/assets/{tokyo-night-DkrZxYbM.js → tokyo-night-C_9jP15n.js} +0 -0
- /package/dist/assets/{toml-CqdhxcbT.js → toml-CH-AWylV.js} +0 -0
- /package/dist/assets/{tsv-DzGUqBRN.js → tsv-CbgjNKMk.js} +0 -0
- /package/dist/assets/{tsx-BnfMflsQ.js → tsx-DMQkHAfP.js} +0 -0
- /package/dist/assets/{turtle-qlP_hCPz.js → turtle-DyuXN5E6.js} +0 -0
- /package/dist/assets/{typescript-DzaF40lK.js → typescript-DWQix_1Y.js} +0 -0
- /package/dist/assets/{typespec-DxkwZz32.js → typespec-BAtHNJ2P.js} +0 -0
- /package/dist/assets/{typst-CjRZvpar.js → typst-Ccl-pSVT.js} +0 -0
- /package/dist/assets/{v-BHw8aKkn.js → v-B-fTy4zo.js} +0 -0
- /package/dist/assets/{vala-62mcSMXh.js → vala-B5pVtMk_.js} +0 -0
- /package/dist/assets/{vb-R9JRY5dv.js → vb-Bmh_zzxH.js} +0 -0
- /package/dist/assets/{verilog-CBb5pO04.js → verilog-CdTJwARf.js} +0 -0
- /package/dist/assets/{vesper-3VOUMDB2.js → vesper-CLXAFKGT.js} +0 -0
- /package/dist/assets/{vhdl-C_FT61W-.js → vhdl-B4YfSXFK.js} +0 -0
- /package/dist/assets/{viml-DEQKYU1P.js → viml-CCaONKHu.js} +0 -0
- /package/dist/assets/{vitesse-black-Rgn8kizg.js → vitesse-black-DRcju0Ze.js} +0 -0
- /package/dist/assets/{vitesse-dark-CfPYcErz.js → vitesse-dark-WdU9udp0.js} +0 -0
- /package/dist/assets/{vitesse-light-DHXkidwh.js → vitesse-light-ByFqwcMo.js} +0 -0
- /package/dist/assets/{vyper-rhxQa2DT.js → vyper-BPJ2UA1J.js} +0 -0
- /package/dist/assets/{wasm-Wg1MAZEP.js → wasm-BQxIq9Eb.js} +0 -0
- /package/dist/assets/{wasm-mG28qlcp.js → wasm-Du4Oqb3T.js} +0 -0
- /package/dist/assets/{wenyan-BZqJVxWr.js → wenyan-AvBa7-F9.js} +0 -0
- /package/dist/assets/{wgsl-BwR2WZrW.js → wgsl-VJugdx8c.js} +0 -0
- /package/dist/assets/{wikitext-DJWsiwoA.js → wikitext-BPOx0NBh.js} +0 -0
- /package/dist/assets/{wit-DVlt00VB.js → wit-e40cyGQD.js} +0 -0
- /package/dist/assets/{wolfram-QTkYOFmX.js → wolfram-DvIVouaK.js} +0 -0
- /package/dist/assets/{xterm-DQdPOO_X.js → xterm-D62GGRqD.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-hTsMfDk1.js → xterm-addon-fit-B4zTZTld.js} +0 -0
- /package/dist/assets/{yaml-GNU-2TIP.js → yaml-c7bUfcEd.js} +0 -0
- /package/dist/assets/{zenscript-DIZc3H0b.js → zenscript-CeS3qazQ.js} +0 -0
- /package/dist/assets/{zig-Br5kHs8v.js → zig-DigpDLaV.js} +0 -0
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<rect width="16" height="16" fill="#0f172a"/>
|
|
3
|
+
<rect x="2" y="2" width="12" height="12" fill="#1e293b"/>
|
|
4
|
+
<rect x="3" y="3" width="10" height="10" fill="#0f172a" stroke="#3b82f6" stroke-width="1"/>
|
|
5
|
+
<rect x="4" y="4" width="2" height="2" fill="#3b82f6"/>
|
|
6
|
+
<rect x="10" y="4" width="2" height="2" fill="#3b82f6"/>
|
|
7
|
+
<rect x="4" y="10" width="2" height="2" fill="#3b82f6"/>
|
|
8
|
+
<rect x="10" y="10" width="2" height="2" fill="#3b82f6"/>
|
|
9
|
+
<line x1="5" y1="5" x2="11" y2="5" stroke="#10b981" stroke-width="1"/>
|
|
10
|
+
<line x1="5" y1="5" x2="5" y2="11" stroke="#10b981" stroke-width="1"/>
|
|
11
|
+
<line x1="11" y1="5" x2="11" y2="11" stroke="#10b981" stroke-width="1"/>
|
|
12
|
+
<line x1="5" y1="11" x2="11" y2="11" stroke="#10b981" stroke-width="1"/>
|
|
13
|
+
<rect x="7" y="7" width="2" height="2" fill="#f59e0b"/>
|
|
14
|
+
<line x1="5" y1="8" x2="7" y2="8" stroke="#60a5fa" stroke-width="1"/>
|
|
15
|
+
<line x1="9" y1="8" x2="11" y2="8" stroke="#60a5fa" stroke-width="1"/>
|
|
16
|
+
<line x1="8" y1="5" x2="8" y2="7" stroke="#60a5fa" stroke-width="1"/>
|
|
17
|
+
<line x1="8" y1="9" x2="8" y2="11" stroke="#60a5fa" stroke-width="1"/>
|
|
18
|
+
</svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Discord</title><path d="M20.317 4.3698a19.7913 19.7913 0 00-4.8851-1.5152.0741.0741 0 00-.0785.0371c-.211.3753-.4447.8648-.6083 1.2495-1.8447-.2762-3.68-.2762-5.4868 0-.1636-.3933-.4058-.8742-.6177-1.2495a.077.077 0 00-.0785-.037 19.7363 19.7363 0 00-4.8852 1.515.0699.0699 0 00-.0321.0277C.5334 9.0458-.319 13.5799.0992 18.0578a.0824.0824 0 00.0312.0561c2.0528 1.5076 4.0413 2.4228 5.9929 3.0294a.0777.0777 0 00.0842-.0276c.4616-.6304.8731-1.2952 1.226-1.9942a.076.076 0 00-.0416-.1057c-.6528-.2476-1.2743-.5495-1.8722-.8923a.077.077 0 01-.0076-.1277c.1258-.0943.2517-.1923.3718-.2914a.0743.0743 0 01.0776-.0105c3.9278 1.7933 8.18 1.7933 12.0614 0a.0739.0739 0 01.0785.0095c.1202.099.246.1981.3728.2924a.077.077 0 01-.0066.1276 12.2986 12.2986 0 01-1.873.8914.0766.0766 0 00-.0407.1067c.3604.698.7719 1.3628 1.225 1.9932a.076.076 0 00.0842.0286c1.961-.6067 3.9495-1.5219 6.0023-3.0294a.077.077 0 00.0313-.0552c.5004-5.177-.8382-9.6739-3.5485-13.6604a.061.061 0 00-.0312-.0286zM8.02 15.3312c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9555-2.4189 2.157-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.9555 2.4189-2.1569 2.4189zm7.9748 0c-1.1825 0-2.1569-1.0857-2.1569-2.419 0-1.3332.9554-2.4189 2.1569-2.4189 1.2108 0 2.1757 1.0952 2.1568 2.419 0 1.3332-.946 2.4189-2.1568 2.4189Z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>DoorDash</title><path d="M23.071 8.409a6.09 6.09 0 00-5.396-3.228H.584A.589.589 0 00.17 6.184L3.894 9.93a1.752 1.752 0 001.242.516h12.049a1.554 1.554 0 11.031 3.108H8.91a.589.589 0 00-.415 1.003l3.725 3.747a1.75 1.75 0 001.242.516h3.757c4.887 0 8.584-5.225 5.852-10.413"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>ElevenLabs</title><path d="M4.6035 0v24h4.9317V0zm9.8613 0v24h4.9317V0z"/></svg>
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<rect x="0" y="0" width="16" height="16" fill="#f5f5f5"/>
|
|
3
|
+
<rect x="2" y="2" width="12" height="11" fill="#ffffff" stroke="#333333" stroke-width="1"/>
|
|
4
|
+
<rect x="2" y="2" width="12" height="2" fill="#ff6b6b"/>
|
|
5
|
+
<rect x="3" y="3" width="10" height="1" fill="#ffffff"/>
|
|
6
|
+
<rect x="3" y="5" width="2" height="1" fill="#4ecdc4"/>
|
|
7
|
+
<rect x="6" y="5" width="2" height="1" fill="#4ecdc4"/>
|
|
8
|
+
<rect x="9" y="5" width="2" height="1" fill="#4ecdc4"/>
|
|
9
|
+
<rect x="3" y="7" width="4" height="1" fill="#95e1d3"/>
|
|
10
|
+
<rect x="3" y="8" width="4" height="1" fill="#95e1d3"/>
|
|
11
|
+
<rect x="3" y="9" width="3" height="1" fill="#95e1d3"/>
|
|
12
|
+
<rect x="8" y="7" width="5" height="1" fill="#ffd93d"/>
|
|
13
|
+
<rect x="8" y="8" width="5" height="1" fill="#ffd93d"/>
|
|
14
|
+
<rect x="8" y="9" width="3" height="1" fill="#ffd93d"/>
|
|
15
|
+
<rect x="3" y="11" width="10" height="1" fill="#e8e8e8"/>
|
|
16
|
+
</svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Gmail</title><path d="M24 5.457v13.909c0 .904-.732 1.636-1.636 1.636h-3.819V11.73L12 16.64l-6.545-4.91v9.273H1.636A1.636 1.636 0 0 1 0 19.366V5.457c0-2.023 2.309-3.178 3.927-1.964L5.455 4.64 12 9.548l6.545-4.91 1.528-1.145C21.69 2.28 24 3.434 24 5.457z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Google Calendar</title><path d="M18.316 5.684H24v12.632h-5.684V5.684zM5.684 24h12.632v-5.684H5.684V24zM18.316 5.684V0H1.895A1.894 1.894 0 0 0 0 1.895v16.421h5.684V5.684h12.632zm-7.207 6.25v-.065c.272-.144.5-.349.687-.617s.279-.595.279-.982c0-.379-.099-.72-.3-1.025a2.05 2.05 0 0 0-.832-.714 2.703 2.703 0 0 0-1.197-.257c-.6 0-1.094.156-1.481.467-.386.311-.65.671-.793 1.078l1.085.452c.086-.249.224-.461.413-.633.189-.172.445-.257.767-.257.33 0 .602.088.816.264a.86.86 0 0 1 .322.703c0 .33-.12.589-.36.778-.24.19-.535.284-.886.284h-.567v1.085h.633c.407 0 .748.109 1.02.327.272.218.407.499.407.843 0 .336-.129.614-.387.832s-.565.327-.924.327c-.351 0-.651-.103-.897-.311-.248-.208-.422-.502-.521-.881l-1.096.452c.178.616.505 1.082.977 1.401.472.319.984.478 1.538.477a2.84 2.84 0 0 0 1.293-.291c.382-.193.684-.458.902-.794.218-.336.327-.72.327-1.149 0-.429-.115-.797-.344-1.105a2.067 2.067 0 0 0-.881-.689zm2.093-1.931l.602.913L15 10.045v5.744h1.187V8.446h-.827l-2.158 1.557zM22.105 0h-3.289v5.184H24V1.895A1.894 1.894 0 0 0 22.105 0zm-3.289 23.5l4.684-4.684h-4.684V23.5zM0 22.105C0 23.152.848 24 1.895 24h3.289v-5.184H0v3.289z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Gmail</title><path d="M24 5.457v13.909c0 .904-.732 1.636-1.636 1.636h-3.819V11.73L12 16.64l-6.545-4.91v9.273H1.636A1.636 1.636 0 0 1 0 19.366V5.457c0-2.023 2.309-3.178 3.927-1.964L5.455 4.64 12 9.548l6.545-4.91 1.528-1.145C21.69 2.28 24 3.434 24 5.457z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Gmail</title><path d="M24 5.457v13.909c0 .904-.732 1.636-1.636 1.636h-3.819V11.73L12 16.64l-6.545-4.91v9.273H1.636A1.636 1.636 0 0 1 0 19.366V5.457c0-2.023 2.309-3.178 3.927-1.964L5.455 4.64 12 9.548l6.545-4.91 1.528-1.145C21.69 2.28 24 3.434 24 5.457z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Linear</title><path d="M2.886 4.18A11.982 11.982 0 0 1 11.99 0C18.624 0 24 5.376 24 12.009c0 3.64-1.62 6.903-4.18 9.105L2.887 4.18ZM1.817 5.626l16.556 16.556c-.524.33-1.075.62-1.65.866L.951 7.277c.247-.575.537-1.126.866-1.65ZM.322 9.163l14.515 14.515c-.71.172-1.443.282-2.195.322L0 11.358a12 12 0 0 1 .322-2.195Zm-.17 4.862 9.823 9.824a12.02 12.02 0 0 1-9.824-9.824Z"/></svg>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<rect x="2" y="2" width="12" height="11" fill="#e8e8e8" stroke="#333" stroke-width="1"/>
|
|
3
|
+
<rect x="3" y="3" width="10" height="9" fill="#f5f5f5"/>
|
|
4
|
+
<circle cx="8" cy="7" r="2" fill="#0071e3"/>
|
|
5
|
+
<rect x="5" y="5" width="1" height="1" fill="#333"/>
|
|
6
|
+
<rect x="10" y="5" width="1" height="1" fill="#333"/>
|
|
7
|
+
<rect x="5" y="9" width="1" height="1" fill="#333"/>
|
|
8
|
+
<rect x="10" y="9" width="1" height="1" fill="#333"/>
|
|
9
|
+
<path d="M 8 4 L 8 6 M 6 7 L 8 7 M 8 8 L 8 10 M 8 7 L 10 7" stroke="#0071e3" stroke-width="1" fill="none"/>
|
|
10
|
+
<rect x="3" y="13" width="10" height="1" fill="#333"/>
|
|
11
|
+
<rect x="4" y="14" width="8" height="1" fill="#0071e3"/>
|
|
12
|
+
</svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Mailgun</title><path d="M11.837 0c6.602 0 11.984 5.381 11.984 11.994-.017 2.99-3.264 4.84-5.844 3.331a3.805 3.805 0 0 1-.06-.035l-.055-.033-.022.055c-2.554 4.63-9.162 4.758-11.894.232-2.732-4.527.46-10.313 5.746-10.416a6.868 6.868 0 0 1 7.002 6.866 1.265 1.265 0 0 0 2.52 0c0-5.18-4.197-9.38-9.377-9.387C4.611 2.594.081 10.41 3.683 16.673c3.238 5.632 11.08 6.351 15.289 1.402l1.997 1.686A11.95 11.95 0 0 1 11.837 24C2.6 23.72-2.87 13.543 1.992 5.684A12.006 12.006 0 0 1 11.837 0Zm0 7.745c-3.276-.163-5.5 3.281-4.003 6.2a4.26 4.26 0 0 0 4.014 2.31c3.276-.171 5.137-3.824 3.35-6.575a4.26 4.26 0 0 0-3.36-1.935Zm0 2.53c1.324 0 2.152 1.433 1.49 2.58a1.72 1.72 0 0 1-1.49.86 1.72 1.72 0 1 1 0-3.44Z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Google Meet</title><path d="M5.53 2.13 0 7.75h5.53zm.398 0v5.62h7.608v3.65l5.47-4.45c-.014-1.22.031-2.25-.025-3.46-.148-1.09-1.287-1.47-2.236-1.36zM23.1 4.32c-.802.295-1.358.995-2.047 1.49-2.506 2.05-4.982 4.12-7.468 6.19 3.025 2.59 6.04 5.18 9.065 7.76 1.218.671 1.428-.814 1.328-1.64v-13a.828.828 0 0 0-.877-.825zM.038 8.15v7.7h5.53v-7.7zm13.577 8.1H6.008v5.62c3.864-.006 7.737.011 11.58-.009 1.02-.07 1.618-1.12 1.468-2.07v-2.51l-5.47-4.68v3.65zm-13.577 0c.02 1.44-.041 2.88.033 4.31.162.948 1.158 1.43 2.047 1.31h3.464v-5.62z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Notion</title><path d="M4.459 4.208c.746.606 1.026.56 2.428.466l13.215-.793c.28 0 .047-.28-.046-.326L17.86 1.968c-.42-.326-.981-.7-2.055-.607L3.01 2.295c-.466.046-.56.28-.374.466zm.793 3.08v13.904c0 .747.373 1.027 1.214.98l14.523-.84c.841-.046.935-.56.935-1.167V6.354c0-.606-.233-.933-.748-.887l-15.177.887c-.56.047-.747.327-.747.933zm14.337.745c.093.42 0 .84-.42.888l-.7.14v10.264c-.608.327-1.168.514-1.635.514-.748 0-.935-.234-1.495-.933l-4.577-7.186v6.952L12.21 19s0 .84-1.168.84l-3.222.186c-.093-.186 0-.653.327-.746l.84-.233V9.854L7.822 9.76c-.094-.42.14-1.026.793-1.073l3.456-.233 4.764 7.279v-6.44l-1.215-.139c-.093-.514.28-.887.747-.933zM1.936 1.035l13.31-.98c1.634-.14 2.055-.047 3.082.7l4.249 2.986c.7.513.934.653.934 1.213v16.378c0 1.026-.373 1.634-1.68 1.726l-15.458.934c-.98.047-1.448-.093-1.962-.747l-3.129-4.06c-.56-.747-.793-1.306-.793-1.96V2.667c0-.839.374-1.54 1.447-1.632z"/></svg>
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
|
2
|
+
<svg width="800px" height="800px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"><title>file_type_outlook</title><path d="M19.484,7.937v5.477L21.4,14.619a.489.489,0,0,0,.21,0l8.238-5.554a1.174,1.174,0,0,0-.959-1.128Z" style="fill:#0072c6"/><path d="M19.484,15.457l1.747,1.2a.522.522,0,0,0,.543,0c-.3.181,8.073-5.378,8.073-5.378V21.345a1.408,1.408,0,0,1-1.49,1.555H19.483V15.457Z" style="fill:#0072c6"/><path d="M10.44,12.932a1.609,1.609,0,0,0-1.42.838,4.131,4.131,0,0,0-.526,2.218A4.05,4.05,0,0,0,9.02,18.2a1.6,1.6,0,0,0,2.771.022,4.014,4.014,0,0,0,.515-2.2,4.369,4.369,0,0,0-.5-2.281A1.536,1.536,0,0,0,10.44,12.932Z" style="fill:#0072c6"/><path d="M2.153,5.155V26.582L18.453,30V2ZM13.061,19.491a3.231,3.231,0,0,1-2.7,1.361,3.19,3.19,0,0,1-2.64-1.318A5.459,5.459,0,0,1,6.706,16.1a5.868,5.868,0,0,1,1.036-3.616A3.267,3.267,0,0,1,10.486,11.1a3.116,3.116,0,0,1,2.61,1.321,5.639,5.639,0,0,1,1,3.484A5.763,5.763,0,0,1,13.061,19.491Z" style="fill:#0072c6"/></svg>
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?><!-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools -->
|
|
2
|
+
<svg width="800px" height="800px" viewBox="0 0 32 32" xmlns="http://www.w3.org/2000/svg"><title>file_type_outlook</title><path d="M19.484,7.937v5.477L21.4,14.619a.489.489,0,0,0,.21,0l8.238-5.554a1.174,1.174,0,0,0-.959-1.128Z" style="fill:#0072c6"/><path d="M19.484,15.457l1.747,1.2a.522.522,0,0,0,.543,0c-.3.181,8.073-5.378,8.073-5.378V21.345a1.408,1.408,0,0,1-1.49,1.555H19.483V15.457Z" style="fill:#0072c6"/><path d="M10.44,12.932a1.609,1.609,0,0,0-1.42.838,4.131,4.131,0,0,0-.526,2.218A4.05,4.05,0,0,0,9.02,18.2a1.6,1.6,0,0,0,2.771.022,4.014,4.014,0,0,0,.515-2.2,4.369,4.369,0,0,0-.5-2.281A1.536,1.536,0,0,0,10.44,12.932Z" style="fill:#0072c6"/><path d="M2.153,5.155V26.582L18.453,30V2ZM13.061,19.491a3.231,3.231,0,0,1-2.7,1.361,3.19,3.19,0,0,1-2.64-1.318A5.459,5.459,0,0,1,6.706,16.1a5.868,5.868,0,0,1,1.036-3.616A3.267,3.267,0,0,1,10.486,11.1a3.116,3.116,0,0,1,2.61,1.321,5.639,5.639,0,0,1,1,3.484A5.763,5.763,0,0,1,13.061,19.491Z" style="fill:#0072c6"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Sentry</title><path d="M13.91 2.505c-.873-1.448-2.972-1.448-3.844 0L6.904 7.92a15.478 15.478 0 0 1 8.53 12.811h-2.221A13.301 13.301 0 0 0 5.784 9.814l-2.926 5.06a7.65 7.65 0 0 1 4.435 5.848H2.194a.365.365 0 0 1-.298-.534l1.413-2.402a5.16 5.16 0 0 0-1.614-.913L.296 19.275a2.182 2.182 0 0 0 .812 2.999 2.24 2.24 0 0 0 1.086.288h6.983a9.322 9.322 0 0 0-3.845-8.318l1.11-1.922a11.47 11.47 0 0 1 4.95 10.24h5.915a17.242 17.242 0 0 0-7.885-15.28l2.244-3.845a.37.37 0 0 1 .504-.13c.255.14 9.75 16.708 9.928 16.9a.365.365 0 0 1-.327.543h-2.287c.029.612.029 1.223 0 1.831h2.297a2.206 2.206 0 0 0 1.922-3.31z"/></svg>
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
<svg width="127" height="127" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<path d="M27.2 80c0 7.3-5.9 13.2-13.2 13.2C6.7 93.2.8 87.3.8 80c0-7.3 5.9-13.2 13.2-13.2h13.2V80zm6.6 0c0-7.3 5.9-13.2 13.2-13.2 7.3 0 13.2 5.9 13.2 13.2v33c0 7.3-5.9 13.2-13.2 13.2-7.3 0-13.2-5.9-13.2-13.2V80z" fill="#E01E5A"/>
|
|
3
|
+
<path d="M47 27c-7.3 0-13.2-5.9-13.2-13.2C33.8 6.5 39.7.6 47 .6c7.3 0 13.2 5.9 13.2 13.2V27H47zm0 6.7c7.3 0 13.2 5.9 13.2 13.2 0 7.3-5.9 13.2-13.2 13.2H13.9C6.6 60.1.7 54.2.7 46.9c0-7.3 5.9-13.2 13.2-13.2H47z" fill="#36C5F0"/>
|
|
4
|
+
<path d="M99.9 46.9c0-7.3 5.9-13.2 13.2-13.2 7.3 0 13.2 5.9 13.2 13.2 0 7.3-5.9 13.2-13.2 13.2H99.9V46.9zm-6.6 0c0 7.3-5.9 13.2-13.2 13.2-7.3 0-13.2-5.9-13.2-13.2V13.8C66.9 6.5 72.8.6 80.1.6c7.3 0 13.2 5.9 13.2 13.2v33.1z" fill="#2EB67D"/>
|
|
5
|
+
<path d="M80.1 99.8c7.3 0 13.2 5.9 13.2 13.2 0 7.3-5.9 13.2-13.2 13.2-7.3 0-13.2-5.9-13.2-13.2V99.8h13.2zm0-6.6c-7.3 0-13.2-5.9-13.2-13.2 0-7.3 5.9-13.2 13.2-13.2h33.1c7.3 0 13.2 5.9 13.2 13.2 0 7.3-5.9 13.2-13.2 13.2H80.1z" fill="#ECB22E"/>
|
|
6
|
+
</svg>
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<rect x="0" y="0" width="16" height="16" fill="#1a1a2e"/>
|
|
3
|
+
<rect x="2" y="2" width="12" height="12" fill="#16213e"/>
|
|
4
|
+
<rect x="3" y="3" width="10" height="10" fill="#0f3460"/>
|
|
5
|
+
<rect x="4" y="4" width="8" height="2" fill="#e94560"/>
|
|
6
|
+
<rect x="4" y="7" width="8" height="1" fill="#ffd700"/>
|
|
7
|
+
<rect x="4" y="9" width="8" height="1" fill="#ffd700"/>
|
|
8
|
+
<rect x="4" y="11" width="8" height="1" fill="#ffd700"/>
|
|
9
|
+
<rect x="2" y="2" width="1" height="12" fill="#16a085"/>
|
|
10
|
+
<rect x="13" y="2" width="1" height="12" fill="#16a085"/>
|
|
11
|
+
<rect x="7" y="1" width="2" height="1" fill="#ffd700"/>
|
|
12
|
+
<rect x="6" y="0" width="4" height="1" fill="#e94560"/>
|
|
13
|
+
</svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Stripe</title><path d="M13.976 9.15c-2.172-.806-3.356-1.426-3.356-2.409 0-.831.683-1.305 1.901-1.305 2.227 0 4.515.858 6.09 1.631l.89-5.494C18.252.975 15.697 0 12.165 0 9.667 0 7.589.654 6.104 1.872 4.56 3.147 3.757 4.992 3.757 7.218c0 4.039 2.467 5.76 6.476 7.219 2.585.92 3.445 1.574 3.445 2.583 0 .98-.84 1.545-2.354 1.545-1.875 0-4.965-.921-6.99-2.109l-.9 5.555C5.175 22.99 8.385 24 11.714 24c2.641 0 4.843-.624 6.328-1.813 1.664-1.305 2.525-3.236 2.525-5.732 0-4.128-2.524-5.851-6.594-7.305h.003z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Stripe</title><path d="M13.976 9.15c-2.172-.806-3.356-1.426-3.356-2.409 0-.831.683-1.305 1.901-1.305 2.227 0 4.515.858 6.09 1.631l.89-5.494C18.252.975 15.697 0 12.165 0 9.667 0 7.589.654 6.104 1.872 4.56 3.147 3.757 4.992 3.757 7.218c0 4.039 2.467 5.76 6.476 7.219 2.585.92 3.445 1.574 3.445 2.583 0 .98-.84 1.545-2.354 1.545-1.875 0-4.965-.921-6.99-2.109l-.9 5.555C5.175 22.99 8.385 24 11.714 24c2.641 0 4.843-.624 6.328-1.813 1.664-1.305 2.525-3.236 2.525-5.732 0-4.128-2.524-5.851-6.594-7.305h.003z"/></svg>
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<rect width="16" height="16" fill="#f0f0f0"/>
|
|
3
|
+
|
|
4
|
+
<!-- Left task list (template layer) -->
|
|
5
|
+
<rect x="1" y="2" width="6" height="12" fill="#e8f4f8" stroke="#4a90e2" stroke-width="0.5"/>
|
|
6
|
+
<rect x="2" y="3" width="4" height="1" fill="#4a90e2"/>
|
|
7
|
+
<rect x="2" y="5" width="1" height="1" fill="#2ecc71"/>
|
|
8
|
+
<rect x="4" y="5" width="2" height="1" fill="#95a5a6"/>
|
|
9
|
+
<rect x="2" y="7" width="1" height="1" fill="#2ecc71"/>
|
|
10
|
+
<rect x="4" y="7" width="2" height="1" fill="#95a5a6"/>
|
|
11
|
+
<rect x="2" y="9" width="1" height="1" fill="#2ecc71"/>
|
|
12
|
+
<rect x="4" y="9" width="2" height="1" fill="#95a5a6"/>
|
|
13
|
+
<rect x="2" y="11" width="1" height="1" fill="#2ecc71"/>
|
|
14
|
+
<rect x="4" y="11" width="2" height="1" fill="#95a5a6"/>
|
|
15
|
+
|
|
16
|
+
<!-- Right task queue (prioritized work) -->
|
|
17
|
+
<rect x="9" y="2" width="6" height="12" fill="#fff4e6" stroke="#f39c12" stroke-width="0.5"/>
|
|
18
|
+
<rect x="10" y="3" width="4" height="1" fill="#f39c12"/>
|
|
19
|
+
|
|
20
|
+
<!-- Priority indicators (arrows) -->
|
|
21
|
+
<rect x="10" y="5" width="1" height="1" fill="#e74c3c"/>
|
|
22
|
+
<rect x="12" y="5" width="2" height="1" fill="#95a5a6"/>
|
|
23
|
+
|
|
24
|
+
<rect x="10" y="7" width="1" height="1" fill="#f39c12"/>
|
|
25
|
+
<rect x="12" y="7" width="2" height="1" fill="#95a5a6"/>
|
|
26
|
+
|
|
27
|
+
<rect x="10" y="9" width="1" height="1" fill="#2ecc71"/>
|
|
28
|
+
<rect x="12" y="9" width="2" height="1" fill="#95a5a6"/>
|
|
29
|
+
|
|
30
|
+
<!-- Connection arrow between lists -->
|
|
31
|
+
<rect x="7" y="7" width="2" height="1" fill="#4a90e2" opacity="0.6"/>
|
|
32
|
+
<rect x="8" y="6" width="1" height="1" fill="#4a90e2" opacity="0.6"/>
|
|
33
|
+
<rect x="8" y="8" width="1" height="1" fill="#4a90e2" opacity="0.6"/>
|
|
34
|
+
</svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Telegram</title><path d="M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12 12 12 0 0 0 12-12A12 12 0 0 0 12 0a12 12 0 0 0-.056 0zm4.962 7.224c.1-.002.321.023.465.14a.506.506 0 0 1 .171.325c.016.093.036.306.02.472-.18 1.898-.962 6.502-1.36 8.627-.168.9-.499 1.201-.82 1.23-.696.065-1.225-.46-1.9-.902-1.056-.693-1.653-1.124-2.678-1.8-1.185-.78-.417-1.21.258-1.91.177-.184 3.247-2.977 3.307-3.23.007-.032.014-.15-.056-.212s-.174-.041-.249-.024c-.106.024-1.793 1.14-5.061 3.345-.48.33-.913.49-1.302.48-.428-.008-1.252-.241-1.865-.44-.752-.245-1.349-.374-1.297-.789.027-.216.325-.437.893-.663 3.498-1.524 5.83-2.529 6.998-3.014 3.332-1.386 4.025-1.627 4.476-1.635z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" width="2500" height="752" viewBox="-313 376 166.2 50"><g fill="#f12e45"><path d="M-195.9 385.8h-8.8c-.2 0-.4.2-.4.4v5.1c0 .2.2.4.4.4h8.8c.2 0 .4-.2.4-.4v-5.1c.1-.2-.1-.4-.4-.4zm-.1 7.6h-17c-.2 0-.5.2-.6.4l-2.2 8.3-.1.4-2.6-8.9c-.1-.2-.3-.4-.6-.4h-6.6c-.2 0-.5.2-.6.4l-2.5 8.3-.1.4-.1-.2-1-4.1-1.1-4.1c-.1-.2-.3-.4-.6-.4H-245v-7.2c0-.2-.3-.5-.6-.4l-8.4 2.6c-.3.1-.4.2-.4.4v4.5h-2.2c-.2 0-.4.2-.4.4v6.4c0 .2.2.4.4.4h2.2v7.8c0 5.5 3 8.1 8.5 8.1 2.3 0 4.5-.5 6-1.3v-6.6c0-.3-.3-.4-.5-.4-.9.4-1.6.5-2.4.5-1.5 0-2.3-.6-2.3-2.3v-5.7h4.8c.2 0 .4-.2.4-.4v-5.4l6.3 20.9c.1.2.3.4.6.4h7c.2 0 .5-.2.6-.4l3-9.3 1.5 4.8 1.4 4.4c.1.2.3.4.6.4h7c.2 0 .5-.2.6-.4l6.4-21v21c0 .2.2.4.4.4h8.5c.2 0 .4-.2.4-.4v-21.8c0-.3-.2-.5-.4-.5zm11.2-7.6h-8.5c-.2 0-.4.2-.4.4v29.5c0 .2.2.4.4.4h8.5c.2 0 .4-.2.4-.4v-29.5c0-.2-.2-.4-.4-.4zm11.3 0h-8.8c-.2 0-.4.2-.4.4v5.1c0 .2.2.4.4.4h8.8c.2 0 .4-.2.4-.4v-5.1c.1-.2-.1-.4-.4-.4zm-.1 7.6h-8.5c-.2 0-.4.2-.4.4v21.9c0 .2.2.4.4.4h8.5c.2 0 .4-.2.4-.4v-21.8c0-.3-.2-.5-.4-.5zm14.1-.5c-7.5 0-12.8 5.5-12.8 11.9v.1c0 6.4 5.3 11.8 12.7 11.8 7.5 0 12.8-5.5 12.8-11.9v-.1c0-6.4-5.3-11.8-12.7-11.8zm3.6 11.9c0 2.2-1.5 3.9-3.6 3.9s-3.7-1.8-3.7-4v-.1c0-2.2 1.5-3.9 3.6-3.9s3.7 1.8 3.7 4.1zM-288 376c-13.8 0-25 11.2-25 25s11.2 25 25 25 25-11.2 25-25-11.2-25-25-25zm0 43.4c-10.2 0-18.4-8.2-18.4-18.4s8.2-18.4 18.4-18.4 18.4 8.2 18.4 18.4-8.2 18.4-18.4 18.4z"/><circle cx="-281.8" cy="394.8" r="5.2"/><circle cx="-281.8" cy="407.2" r="5.2"/><circle cx="-294.2" cy="407.2" r="5.2"/><circle cx="-294.2" cy="394.8" r="5.2"/></g></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>GitHub</title><path d="M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="#ffffff" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Vercel</title><path d="m12 1.608 12 20.784H0Z"/></svg>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<rect x="7" y="1" width="2" height="2" fill="#4A90E2"/>
|
|
3
|
+
<rect x="6" y="3" width="4" height="1" fill="#4A90E2"/>
|
|
4
|
+
<rect x="5" y="4" width="6" height="1" fill="#7B68EE"/>
|
|
5
|
+
<rect x="4" y="5" width="8" height="1" fill="#7B68EE"/>
|
|
6
|
+
<rect x="4" y="6" width="8" height="1" fill="#4A90E2"/>
|
|
7
|
+
<rect x="5" y="7" width="6" height="1" fill="#4A90E2"/>
|
|
8
|
+
<rect x="6" y="8" width="4" height="1" fill="#7B68EE"/>
|
|
9
|
+
<rect x="7" y="9" width="2" height="1" fill="#7B68EE"/>
|
|
10
|
+
<rect x="3" y="10" width="2" height="4" fill="#50C878"/>
|
|
11
|
+
<rect x="4" y="10" width="1" height="1" fill="#50C878"/>
|
|
12
|
+
<rect x="5" y="11" width="1" height="1" fill="#50C878"/>
|
|
13
|
+
<rect x="11" y="10" width="2" height="4" fill="#E74C3C"/>
|
|
14
|
+
<rect x="10" y="10" width="1" height="1" fill="#E74C3C"/>
|
|
15
|
+
<rect x="9" y="11" width="1" height="1" fill="#E74C3C"/>
|
|
16
|
+
<rect x="6" y="11" width="4" height="1" fill="#FFD700"/>
|
|
17
|
+
<rect x="5" y="12" width="6" height="1" fill="#FFD700"/>
|
|
18
|
+
<rect x="4" y="13" width="8" height="1" fill="#FFD700"/>
|
|
19
|
+
<rect x="7" y="14" width="2" height="2" fill="#4A90E2"/>
|
|
20
|
+
</svg>
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
<svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg">
|
|
2
|
+
<rect x="0" y="0" width="16" height="16" fill="#87CEEB"/>
|
|
3
|
+
<rect x="3" y="2" width="10" height="1" fill="#FFFFFF"/>
|
|
4
|
+
<rect x="2" y="3" width="12" height="1" fill="#FFFFFF"/>
|
|
5
|
+
<rect x="1" y="4" width="14" height="2" fill="#FFFFFF"/>
|
|
6
|
+
<rect x="2" y="6" width="12" height="1" fill="#FFFFFF"/>
|
|
7
|
+
<rect x="3" y="7" width="10" height="1" fill="#FFFFFF"/>
|
|
8
|
+
<rect x="4" y="8" width="8" height="1" fill="#87CEEB"/>
|
|
9
|
+
<rect x="2" y="9" width="3" height="1" fill="#4A90E2"/>
|
|
10
|
+
<rect x="6" y="9" width="1" height="1" fill="#4A90E2"/>
|
|
11
|
+
<rect x="9" y="9" width="1" height="1" fill="#4A90E2"/>
|
|
12
|
+
<rect x="12" y="9" width="2" height="1" fill="#4A90E2"/>
|
|
13
|
+
<rect x="1" y="10" width="4" height="1" fill="#4A90E2"/>
|
|
14
|
+
<rect x="6" y="10" width="1" height="1" fill="#4A90E2"/>
|
|
15
|
+
<rect x="9" y="10" width="1" height="1" fill="#4A90E2"/>
|
|
16
|
+
<rect x="12" y="10" width="3" height="1" fill="#4A90E2"/>
|
|
17
|
+
<rect x="2" y="11" width="3" height="1" fill="#4A90E2"/>
|
|
18
|
+
<rect x="6" y="11" width="1" height="1" fill="#4A90E2"/>
|
|
19
|
+
<rect x="9" y="11" width="1" height="1" fill="#4A90E2"/>
|
|
20
|
+
<rect x="12" y="11" width="2" height="1" fill="#4A90E2"/>
|
|
21
|
+
<rect x="3" y="12" width="2" height="1" fill="#4A90E2"/>
|
|
22
|
+
<rect x="7" y="12" width="1" height="1" fill="#4A90E2"/>
|
|
23
|
+
<rect x="11" y="12" width="2" height="1" fill="#4A90E2"/>
|
|
24
|
+
</svg>
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
// Synchronous theme init — prevents flash-of-wrong-theme before React mounts.
|
|
2
|
+
// Loaded via <script src> (not inline) so CSP script-src 'self' allows it.
|
|
3
|
+
(function () {
|
|
4
|
+
try {
|
|
5
|
+
var theme =
|
|
6
|
+
window.localStorage.getItem("device:theme") ||
|
|
7
|
+
window.localStorage.getItem("vellum_theme") ||
|
|
8
|
+
"system";
|
|
9
|
+
var prefersDark =
|
|
10
|
+
window.matchMedia &&
|
|
11
|
+
window.matchMedia("(prefers-color-scheme: dark)").matches;
|
|
12
|
+
var shouldBeDark =
|
|
13
|
+
theme === "velvet" ||
|
|
14
|
+
theme === "dark" ||
|
|
15
|
+
(theme === "system" && prefersDark);
|
|
16
|
+
var root = document.documentElement;
|
|
17
|
+
root.setAttribute("data-theme", shouldBeDark ? "dark" : "light");
|
|
18
|
+
root.classList.toggle("dark", shouldBeDark);
|
|
19
|
+
root.classList.remove("velvet");
|
|
20
|
+
} catch {
|
|
21
|
+
// Theme startup is best-effort. React will apply the default later.
|
|
22
|
+
}
|
|
23
|
+
})();
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BD5vCCEH.js";import{t as n}from"./chunk-5KNZJZUH-DdB2N3P3.js";import{d as r}from"./native-biometric-BPPNP_Sl.js";import{r as i}from"./routes-CHnF8N9D.js";import{n as a}from"./auth-store-Dy6ebqwf.js";import{t as o}from"./jsx-runtime-2-RJdKf7.js";import{tt as s}from"./index-aLxsGtfC.js";import{r as c,t as l}from"./account-shell-Dw8jAeLG.js";import{n as u,t as d}from"./login-flow-C9O7X98K.js";var f=e(t(),1),p=o();function m(){let e=a.use.isLoggedIn(),t=a.use.isLoading(),o=a.use.user(),m=a.use.logout(),[h,g]=(0,f.useState)(null),[_,v]=(0,f.useState)(!1),y=async()=>{g(null),v(!0);try{await r(u,d)}catch(e){console.error(`[account] auth flow failed:`,e),g(`Something went wrong. Please try again.`),v(!1)}};return t?(0,p.jsx)(l,{children:(0,p.jsx)(c,{title:`Loading...`})}):e?(0,p.jsxs)(l,{children:[(0,p.jsx)(c,{title:`Welcome${o?.username?`, ${o.username}`:``}!`,subtitle:`You are signed in.`}),(0,p.jsxs)(`div`,{className:`flex flex-col items-center gap-4`,children:[(0,p.jsx)(n,{to:i.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-white no-underline transition-colors hover:bg-[var(--primary-hover)]`,children:`Go to your assistant`}),(0,p.jsx)(`button`,{type:`button`,onClick:async()=>{await m(),s(i.account.login)},className:`cursor-pointer bg-transparent text-sm font-normal text-stone-400 transition-colors hover:text-stone-300`,children:`Sign out`})]})]}):(0,p.jsxs)(l,{children:[(0,p.jsx)(c,{title:`Welcome to Vellum`,subtitle:`Sign in to get started.`}),h&&(0,p.jsx)(`p`,{className:`text-center text-sm text-[var(--system-negative-strong)]`,children:h}),(0,p.jsx)(`div`,{className:`flex flex-col items-center gap-4`,children:(0,p.jsx)(`button`,{type:`button`,onClick:()=>void y(),disabled:_,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-white transition-colors hover:bg-[var(--primary-hover)] disabled:opacity-50`,children:`Sign in`})})]})}export{m as AccountPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,r as t}from"./chunk-jRWAZmH_.js";import{t as n}from"./react-BD5vCCEH.js";import{h as r,t as i,u as a}from"./chunk-5KNZJZUH-DdB2N3P3.js";import{n as o}from"./QueryClientProvider-3h1PDgiK.js";import{t as s}from"./useQuery-Cihv2Mys.js";import{t as c}from"./useMutation-DO5gkGJX.js";import{t as l}from"./jsx-runtime-2-RJdKf7.js";import{at as u,rt as d}from"./react-query.gen-CaeZaVZK.js";import{t as f}from"./button-aOWst_o4.js";import{t as p}from"./dropdown-GgPqNVMy.js";import{t as m}from"./modal-1PrCjlTg.js";import{t as h}from"./loader-circle-DaEOga2S.js";import{An as g,D as _,E as v,Jn as y}from"./index-aLxsGtfC.js";var b=t({AddCreditsModal:()=>E}),x=e(n(),1),S=l(),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=o(),{pathname:l}=a(),[b]=r(),E=b.toString()?`${l}?${b.toString()}`:l,{data:D,isLoading:O}=s(d()),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=c(u());return(0,x.useEffect)(()=>_(()=>{t(!1),n.invalidateQueries(d())}),[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:g,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)(p,{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)(y,{className:`h-3.5 w-3.5 shrink-0`}),T(N.error)]}),(0,S.jsx)(i,{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)(f,{variant:`outlined`,children:`Cancel`})}),(0,S.jsx)(f,{variant:`primary`,leftIcon:N.isPending?(0,S.jsx)(h,{className:`animate-spin`}):void 0,onClick:()=>{N.isPending||N.mutate({body:{amount:M,return_path:E}},{onSuccess:e=>{v(e.checkout_url)}})},disabled:N.isPending||O||!D,children:`Add credits`})]})]})})}export{b as n,E as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BD5vCCEH.js";import{W as n}from"./sdk.gen-ONnYjEkg.js";import{n as r}from"./QueryClientProvider-3h1PDgiK.js";import{t as i}from"./useQuery-Cihv2Mys.js";import{t as a}from"./useMutation-DO5gkGJX.js";import{t as o}from"./jsx-runtime-2-RJdKf7.js";import{F as s,I as c}from"./react-query.gen-CaeZaVZK.js";import{t as l}from"./button-aOWst_o4.js";import{r as u}from"./stat-square-Di_bhDMh.js";import{t as d}from"./input-Wbm6eptw.js";import{t as f}from"./toggle-Brqq7_4W.js";import{t as p}from"./toast-B74YN17b.js";import{t as m}from"./loader-circle-DaEOga2S.js";import{t as h}from"./detail-card-CzJ5gLcw.js";import{r as g}from"./assistant-status-panel-83EaWImU.js";var _=e(t(),1),v=o(),y=[[`Mon`,0],[`Tue`,1],[`Wed`,2],[`Thu`,3],[`Fri`,4],[`Sat`,5],[`Sun`,6]];function b(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 x(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 S(){return Intl.DateTimeFormat(void 0,{timeZoneName:`short`}).formatToParts(new Date).find(e=>e.type===`timeZoneName`)?.value??``}function C(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:b(t),windowEnd:b(n)}}function w({assistantId:e}){let t=r(),{data:o,isLoading:h,isError:g}=i(s({path:{id:e}})),b=(0,_.useMemo)(()=>C(o),[o]),[w,T]=(0,_.useState)(null),E=w??b,D=w!==null,O=(0,_.useMemo)(()=>S(),[]),[k,A]=(0,_.useState)(null),j=k??E.daysOfMonth.join(`, `),M=a({mutationFn:async t=>{let{data:r}=await n({path:{id:e},body:t,throwOnError:!0});return r}}),N=e=>{T(t=>({...t??b,...e}))},P=e=>{N({daysOfWeek:E.daysOfWeek.includes(e)?E.daysOfWeek.filter(t=>t!==e):[...E.daysOfWeek,e].sort((e,t)=>e-t)})},F=e=>e.split(`,`).map(e=>parseInt(e.trim(),10)).filter(e=>!isNaN(e)&&e>=1&&e<=31);return h?(0,v.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,v.jsx)(m,{className:`h-4 w-4 animate-spin`}),`Loading update window settings...`]}):g?(0,v.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,v.jsxs)(`div`,{className:`space-y-6`,children:[(0,v.jsx)(f,{checked:E.enabled,onChange:e=>N({enabled:e}),label:`Automatic updates`,helperText:`Update automatically during a configured time window`}),E.enabled&&(0,v.jsxs)(`div`,{className:`space-y-5`,children:[(0,v.jsxs)(`div`,{className:`space-y-2`,children:[(0,v.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-secondary)]`,children:`Frequency`}),(0,v.jsx)(`div`,{className:`max-w-[400px]`,children:(0,v.jsx)(u,{ariaLabel:`Frequency`,value:E.frequency,onChange:e=>{e!==`monthly`&&A(null),N({frequency:e})},items:[{value:`daily`,label:`Daily`},{value:`weekly`,label:`Weekly`},{value:`monthly`,label:`Monthly`}]})})]}),E.frequency===`weekly`&&(0,v.jsxs)(`div`,{className:`space-y-2`,children:[(0,v.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-secondary)]`,children:`Day(s) of week`}),(0,v.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:y.map(([e,t])=>(0,v.jsx)(l,{variant:`outlined`,size:`compact`,active:E.daysOfWeek.includes(t),onClick:()=>P(t),children:e},t))})]}),E.frequency===`monthly`&&(0,v.jsx)(d,{label:`Day(s) of month`,type:`text`,value:j,onChange:e=>A(e.target.value),onBlur:e=>{let t=F(e.target.value);N({daysOfMonth:t}),A(t.join(`, `))},placeholder:`e.g. 1, 15`,helperText:`Comma-separated day numbers (1–31)`,className:`w-48`}),(0,v.jsxs)(`div`,{className:`space-y-2`,children:[(0,v.jsxs)(`label`,{className:`block text-body-small-default text-[var(--content-secondary)]`,children:[`Update window`,O?` (${O})`:``]}),(0,v.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,v.jsx)(d,{type:`time`,value:E.windowStart,onChange:e=>N({windowStart:e.target.value})}),(0,v.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`to`}),(0,v.jsx)(d,{type:`time`,value:E.windowEnd,onChange:e=>N({windowEnd:e.target.value})})]})]})]}),(0,v.jsx)(l,{variant:`primary`,leftIcon:M.isPending?(0,v.jsx)(m,{className:`animate-spin`}):void 0,onClick:async()=>{let n=E.frequency===`monthly`&&k!==null?F(k):E.daysOfMonth;try{await M.mutateAsync({enabled:E.enabled,timezone:`UTC`,schedule:{frequency:E.frequency,days_of_week:E.frequency===`weekly`?E.daysOfWeek:[],days_of_month:E.frequency===`monthly`?n:[],window:{start:x(E.windowStart),end:x(E.windowEnd)}}}),p.success(`Auto-update policy saved.`),T(null),A(null),t.invalidateQueries({queryKey:c({path:{id:e}})})}catch{p.error(`Failed to save policy. Please try again.`)}},disabled:M.isPending||!D,children:`Save policy`})]})}function T(){let{assistant:e}=g(),t=e?.is_local?null:e;return(0,v.jsx)(`div`,{className:`max-w-[940px] space-y-4`,children:t&&(0,v.jsx)(h,{title:`Update Window`,subtitle:`Configure when automatic updates are applied.`,children:(0,v.jsx)(w,{assistantId:t.id})})})}export{T as AdvancedPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BD5vCCEH.js";import{d as n,h as r}from"./chunk-5KNZJZUH-DdB2N3P3.js";import{i,r as a,s as o}from"./local-settings-CS-DDnd1.js";import{r as s}from"./routes-CHnF8N9D.js";import{t as c}from"./client.gen-ywbejrz1.js";import{n as l}from"./QueryClientProvider-3h1PDgiK.js";import{t as u}from"./useQuery-Cihv2Mys.js";import{t as d}from"./useMutation-DO5gkGJX.js";import{t as f}from"./jsx-runtime-2-RJdKf7.js";import{$ as p,c as m,d as h,f as g,g as _,h as v,l as y,m as b,o as x,p as S,s as C,u as w,v as T,y as ee}from"./react-query.gen-CaeZaVZK.js";import{r as E}from"./query-tags-D8ub83Qe.js";import{t as D}from"./button-aOWst_o4.js";import{t as O}from"./typography-DEzNhGy_.js";import{t as k}from"./dropdown-GgPqNVMy.js";import{a as A}from"./src-DzD6V_-s.js";import{n as j,r as te}from"./stat-square-Di_bhDMh.js";import{t as M}from"./notice-whIbTA0N.js";import{t as ne}from"./tag-D_G_KF4_.js";import{n as N,t as P}from"./input-Wbm6eptw.js";import{t as re}from"./toggle-Brqq7_4W.js";import{t as F}from"./modal-1PrCjlTg.js";import{t as I}from"./toast-B74YN17b.js";import{t as L}from"./createLucideIcon-Btk32rD9.js";import{n as R,t as ie}from"./domain-field-CXJQDRmA.js";import{t as z}from"./external-link-BFBjpAS9.js";import{t as B}from"./loader-circle-DaEOga2S.js";import{Hn as ae,Jn as V,Qn as oe,Tr as H,Yn as U,br as W,ht as se,jt as ce,ln as le}from"./index-aLxsGtfC.js";import{t as ue}from"./detail-card-CzJ5gLcw.js";import{t as G}from"./error-report-C0plV8M2.js";var de=L(`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`}]]),K=e(t(),1),fe={anthropic:[{id:`claude-opus-4-8`,displayName:`Claude Opus 4.8`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`claude-opus-4-7`,displayName:`Claude Opus 4.7`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`claude-opus-4-6`,displayName:`Claude Opus 4.6`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`claude-sonnet-4-6`,displayName:`Claude Sonnet 4.6`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`claude-sonnet-4-5-20250929`,displayName:`Claude Sonnet 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0},{id:`claude-opus-4-5-20251101`,displayName:`Claude Opus 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0},{id:`claude-haiku-4-5-20251001`,displayName:`Claude Haiku 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0}],openai:[{id:`gpt-5.5`,displayName:`GPT-5.5`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`gpt-5.5-pro`,displayName:`GPT-5.5 Pro`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`gpt-5.4`,displayName:`GPT-5.4`,contextWindowTokens:105e4,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:272e3},{id:`gpt-5.2`,displayName:`GPT-5.2`,contextWindowTokens:4e5,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0},{id:`gpt-5.4-mini`,displayName:`GPT-5.4 Mini`,contextWindowTokens:4e5,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0},{id:`gpt-5.4-nano`,displayName:`GPT-5.4 Nano`,contextWindowTokens:4e5,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0}],gemini:[{id:`gemini-3.1-pro-preview`,displayName:`Gemini 3.1 Pro Preview`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`gemini-3.1-pro-preview-customtools`,displayName:`Gemini 3.1 Pro Preview (Custom Tools)`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`gemini-3-flash-preview`,displayName:`Gemini 3 Flash Preview`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0},{id:`gemini-3.1-flash-lite-preview`,displayName:`Gemini 3.1 Flash-Lite Preview`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0},{id:`gemini-3.1-flash-lite`,displayName:`Gemini 3.1 Flash-Lite`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0},{id:`gemini-2.5-flash`,displayName:`Gemini 2.5 Flash`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0},{id:`gemini-2.5-flash-lite`,displayName:`Gemini 2.5 Flash Lite`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:65536},{id:`gemini-2.5-pro`,displayName:`Gemini 2.5 Pro`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:65536,supportsThinking:!0,longContextPricingThresholdTokens:2e5}],fireworks:[{id:`accounts/fireworks/models/kimi-k2p5`,displayName:`Kimi K2.5`,contextWindowTokens:256e3,defaultContextWindowTokens:2e5,maxOutputTokens:32768},{id:`accounts/fireworks/models/minimax-m2p7`,displayName:`MiniMax M2.7`,contextWindowTokens:196608,defaultContextWindowTokens:196608,maxOutputTokens:25e3},{id:`accounts/fireworks/models/minimax-m2p5`,displayName:`MiniMax M2.5`,contextWindowTokens:196608,defaultContextWindowTokens:196608,maxOutputTokens:25e3},{id:`accounts/fireworks/models/deepseek-v4-pro`,displayName:`DeepSeek V4 Pro`,contextWindowTokens:104e4,defaultContextWindowTokens:2e5,maxOutputTokens:131072,supportsThinking:!0}],openrouter:[{id:`anthropic/claude-opus-4.8`,displayName:`Claude Opus 4.8`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-opus-4.7`,displayName:`Claude Opus 4.7`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-opus-4.6`,displayName:`Claude Opus 4.6`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:128e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-sonnet-4.6`,displayName:`Claude Sonnet 4.6`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0,longContextPricingThresholdTokens:2e5},{id:`anthropic/claude-sonnet-4.5`,displayName:`Claude Sonnet 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0},{id:`anthropic/claude-opus-4.5`,displayName:`Claude Opus 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0},{id:`anthropic/claude-haiku-4.5`,displayName:`Claude Haiku 4.5`,contextWindowTokens:2e5,defaultContextWindowTokens:2e5,maxOutputTokens:64e3,supportsThinking:!0},{id:`x-ai/grok-4.20-beta`,displayName:`Grok 4.20 Beta`,contextWindowTokens:256e3,defaultContextWindowTokens:2e5,maxOutputTokens:16e3,supportsThinking:!0},{id:`x-ai/grok-4`,displayName:`Grok 4`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:16e3,supportsThinking:!0},{id:`deepseek/deepseek-r1-0528`,displayName:`DeepSeek R1`,contextWindowTokens:163840,defaultContextWindowTokens:163840,maxOutputTokens:32e3,supportsThinking:!0},{id:`deepseek/deepseek-chat-v3-0324`,displayName:`DeepSeek V3`,contextWindowTokens:163840,defaultContextWindowTokens:163840,maxOutputTokens:32e3},{id:`deepseek/deepseek-v4-pro`,displayName:`DeepSeek V4 Pro`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:384e3,supportsThinking:!0},{id:`deepseek/deepseek-v4-flash`,displayName:`DeepSeek V4 Flash`,contextWindowTokens:1048576,defaultContextWindowTokens:2e5,maxOutputTokens:384e3,supportsThinking:!0},{id:`deepseek/deepseek-v3.2-speciale`,displayName:`DeepSeek V3.2 Speciale`,contextWindowTokens:163840,defaultContextWindowTokens:163840,maxOutputTokens:163840,supportsThinking:!0},{id:`qwen/qwen3.5-plus-02-15`,displayName:`Qwen 3.5 Plus`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:8192,supportsThinking:!0},{id:`qwen/qwen3.5-397b-a17b`,displayName:`Qwen 3.5 397B`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:8192,supportsThinking:!0},{id:`qwen/qwen3.5-flash-02-23`,displayName:`Qwen 3.5 Flash`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:8192},{id:`qwen/qwen3-coder-next`,displayName:`Qwen 3 Coder`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:8192},{id:`moonshotai/kimi-k2.6`,displayName:`Kimi K2.6`,contextWindowTokens:262144,defaultContextWindowTokens:2e5,maxOutputTokens:32768,supportsThinking:!0},{id:`moonshotai/kimi-k2.5`,displayName:`Kimi K2.5`,contextWindowTokens:256e3,defaultContextWindowTokens:2e5,maxOutputTokens:32768},{id:`minimax/minimax-m2.7`,displayName:`MiniMax M2.7`,contextWindowTokens:196608,defaultContextWindowTokens:196608,maxOutputTokens:131072,supportsThinking:!0},{id:`minimax/minimax-m2.5`,displayName:`MiniMax M2.5`,contextWindowTokens:196608,defaultContextWindowTokens:196608,maxOutputTokens:196608,supportsThinking:!0},{id:`minimax/minimax-m2.1`,displayName:`MiniMax M2.1`,contextWindowTokens:196608,defaultContextWindowTokens:196608,maxOutputTokens:196608,supportsThinking:!0},{id:`minimax/minimax-m2`,displayName:`MiniMax M2`,contextWindowTokens:196608,defaultContextWindowTokens:196608,maxOutputTokens:196608,supportsThinking:!0},{id:`minimax/minimax-m2-her`,displayName:`MiniMax M2-her`,contextWindowTokens:65536,defaultContextWindowTokens:65536,maxOutputTokens:2048},{id:`minimax/minimax-m1`,displayName:`MiniMax M1`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:4e4,supportsThinking:!0},{id:`minimax/minimax-01`,displayName:`MiniMax-01`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:1e6},{id:`mistralai/mistral-medium-3`,displayName:`Mistral Medium 3`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:16e3},{id:`mistralai/mistral-small-2603`,displayName:`Mistral Small 4`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:16e3},{id:`mistralai/devstral-2512`,displayName:`Devstral 2`,contextWindowTokens:131072,defaultContextWindowTokens:131072,maxOutputTokens:16e3},{id:`meta-llama/llama-4-maverick`,displayName:`Llama 4 Maverick`,contextWindowTokens:1e6,defaultContextWindowTokens:2e5,maxOutputTokens:16e3},{id:`meta-llama/llama-4-scout`,displayName:`Llama 4 Scout`,contextWindowTokens:327680,defaultContextWindowTokens:2e5,maxOutputTokens:16e3},{id:`amazon/nova-pro-v1`,displayName:`Amazon Nova Pro`,contextWindowTokens:3e5,defaultContextWindowTokens:2e5,maxOutputTokens:5e3}],"openai-compatible":[]},pe={anthropic:`claude-sonnet-4-6`,openai:`gpt-5.5`,gemini:`gemini-2.5-flash`,fireworks:`accounts/fireworks/models/kimi-k2p5`,openrouter:`x-ai/grok-4.20-beta`,"openai-compatible":``},q={anthropic:`Anthropic`,openai:`OpenAI`,gemini:`Google Gemini`,ollama:`Ollama`,fireworks:`Fireworks`,openrouter:`OpenRouter`,"openai-compatible":`OpenAI-compatible`},J={anthropic:!0,openai:!0,gemini:!0,ollama:!1,fireworks:!0,openrouter:!1,"openai-compatible":!1};fe.anthropic;function me(e){return fe[e]??[]}function he(e){return pe[e]}function Y(e){return J[e]===!0}var ge=[`inference-provider-native`,`perplexity`,`brave`,`tavily`],X={"inference-provider-native":`Provider Native`,perplexity:`Perplexity`,brave:`Brave`,tavily:`Tavily`},_e={perplexity:`pplx-...`,brave:`BSA...`,tavily:`tvly-...`},ve={perplexity:`vellum_perplexity_key`,brave:`vellum_brave_key`,tavily:`vellum_tavily_key`},ye=new Set([`perplexity`,`brave`,`tavily`]);async function Z(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 Q(n,r,i):t===`deepgram`?await be(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 Q(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 xe(i,`ElevenLabs rejected the request.`)}}async function be(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 xe(n,`Deepgram rejected the request.`)}}async function xe(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 Se=`auto`;function Ce(e,t){return t?[...e]:e.filter(e=>e.name!==Se)}function we(e,t,n){let r=Ce(e.filter(e=>e.status!==`disabled`),n);return t&&r.some(e=>e.name===t)?t:r[0]?.name}function Te(e,t){let n=new Set;for(let e of t)e&&n.add(e);return e.filter(e=>e.status!==`disabled`||n.has(e.name))}function Ee(e){let t=e.label??e.name;return e.status===`disabled`?`${t} (Disabled)`:t}var $=f(),De=`__custom__`;function Oe(e){return e?!!(e.profile||e.provider||e.model):!1}function ke(e,t){let n=Oe(e);return n===Oe(t)?n?(e?.profile??null)===(t?.profile??null)&&(e?.provider??null)===(t?.provider??null)&&(e?.model??null)===(t?.model??null):!0:!1}function Ae({isOpen:e,onClose:t,assistantId:n,orderedProfiles:r,persistedOverrides:i,daemonConfigLoaded:a,onSaved:o}){let s=(0,K.useRef)(!1);return(0,$.jsx)(F.Root,{open:e,onOpenChange:e=>{!e&&!s.current&&t()},children:e?(0,$.jsx)(je,{assistantId:n,orderedProfiles:r,persistedOverrides:i,daemonConfigLoaded:a,onClose:t,onSaved:o,onSavingChange:e=>{s.current=e}}):null})}function je({assistantId:e,orderedProfiles:t,persistedOverrides:n,daemonConfigLoaded:r,onClose:i,onSaved:a,onSavingChange:o}){let[s,l]=(0,K.useState)(``),[d,f]=(0,K.useState)({}),[p,m]=(0,K.useState)(!1),[h,g]=(0,K.useState)(!1),[_,v]=(0,K.useState)(!1),y=(0,K.useRef)(!1),b=W.use.analyzeConversation(),{data:x,isLoading:S,isError:C,refetch:w}=u({queryKey:[`call-site-catalog`,e],queryFn:async()=>{let{data:t}=await c.get({url:`/v1/assistants/{assistant_id}/config/llm/call-sites`,path:{assistant_id:e},throwOnError:!0});return t},enabled:!!e,staleTime:6e4,refetchOnWindowFocus:!1}),T=(0,K.useMemo)(()=>{let e=(x?.callSites??[]).filter(e=>e.id!==`mainAgent`);return b?e:e.filter(e=>e.id!==`analyzeConversation`)},[x,b]),ee=!S&&!C&&!!x,E=(0,K.useMemo)(()=>T.map(e=>e.id),[T]);(0,K.useEffect)(()=>{if(y.current||!ee||r===!1)return;let e={};for(let t of E){let r=n[t];e[t]=r?{...r}:{}}f(e),y.current=!0,g(!0)},[ee,r,E,n]);let O=Et,A=(0,K.useMemo)(()=>new Set(E),[E]),te=(0,K.useMemo)(()=>Object.entries(n).some(([e,t])=>A.has(e)&&(t?.profile!=null||t?.provider!=null||t?.model!=null)),[n,A]),M=(0,K.useMemo)(()=>{if(!y.current)return!1;for(let e of Object.keys(d))if(!ke(d[e],n[e]))return!0;return!1},[d,n]),ne=(0,K.useMemo)(()=>Object.values(d).some(e=>Oe(e)&&!!e?.provider&&!e?.model),[d]),N=W.use.queryComplexityRouting(),L=(0,K.useCallback)(e=>[...Ce(Te(t,[e]),N).map(e=>({value:e.name,label:Ee(e)})),{value:De,label:`Custom`}],[t,N]),R=(0,K.useMemo)(()=>{if(!s.trim())return T;let e=s.toLowerCase();return T.filter(t=>(t.displayName??``).toLowerCase().includes(e)||(t.description??``).toLowerCase().includes(e)||(t.domain??``).toLowerCase().includes(e))},[T,s]),ie=(0,K.useMemo)(()=>{if(!x)return[];let e=x.domains.map(e=>e.id),t=new Map(x.domains.map(e=>[e.id,e])),n=[];for(let r of e){let e=R.filter(e=>e.domain===r);e.length>0&&n.push({domain:t.get(r),sites:e})}let r=new Set(e),i=R.filter(e=>!r.has(e.domain));return i.length>0&&n.push({domain:{id:`other`,displayName:`Other`},sites:i}),n},[x,R]);function z(e){return d[e]??null}function ae(e){return Oe(z(e))}function V(e){let t=z(e);return!t||!Oe(t)?``:t.provider||t.model?De:t.profile??``}function oe(e,n,r){if(!n){f(t=>({...t,[e]:null}));return}let i=we(t,r,N);if(i)f(t=>({...t,[e]:{profile:i}}));else{let t=O[0],n=he(t)??``;f(r=>({...r,[e]:{provider:t,model:n}}))}}function H(e,t){if(t===`__custom__`){let t=O[0],n=he(t)??``;f(r=>({...r,[e]:{profile:null,provider:t,model:n}}))}else f(t===``?t=>({...t,[e]:null}):n=>({...n,[e]:{profile:t,provider:null,model:null}}))}function U(e,t){let n=he(t)??``;f(r=>({...r,[e]:{...r[e],profile:null,provider:t,model:n}}))}function se(e,t){f(n=>({...n,[e]:{...n[e],model:t}}))}let le=(0,K.useCallback)(async()=>{m(!0),o?.(!0);try{let t={};for(let e of Object.keys(d)){let n=d[e]??null;t[e]=Oe(n)?{profile:n?.profile??null,provider:n?.provider??null,model:n?.model??null}:null}await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:e},body:{llm:{callSites:t}},headers:{"Content-Type":`application/json`},throwOnError:!0}),a(),i(),I.success(`Overrides saved.`)}catch(e){I.error(`Failed to save overrides. Please try again.`),G(e,{context:`call_site_overrides_save`,userMessage:`Failed to save overrides`})}finally{m(!1),o?.(!1)}},[e,d,i,a,n]),ue=(0,K.useCallback)(async()=>{m(!0),o?.(!0);try{let t={};for(let e of Object.keys(d))t[e]=null;await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:e},body:{llm:{callSites:t}},headers:{"Content-Type":`application/json`},throwOnError:!0}),a(),i(),I.success(`Overrides reset.`)}catch(e){I.error(`Failed to reset overrides. Please try again.`),G(e,{context:`call_site_overrides_reset`,userMessage:`Failed to reset overrides`})}finally{m(!1),o?.(!1)}},[e,d,i,a,n]);return(0,$.jsxs)(F.Content,{size:`lg`,hideCloseButton:!0,children:[(0,$.jsxs)(F.Header,{children:[(0,$.jsx)(F.Title,{children:`Action Overrides`}),(0,$.jsx)(F.Description,{children:`Customize which model profile specific actions should use. Uses your default profile if no override is set.`})]}),(0,$.jsxs)(F.Body,{children:[(0,$.jsx)(`div`,{className:`mb-4`,children:(0,$.jsx)(P,{type:`search`,value:s,onChange:e=>l(e.target.value),placeholder:`Search actions…`,leftIcon:(0,$.jsx)(ce,{className:`h-4 w-4`}),fullWidth:!0})}),S&&(0,$.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,$.jsx)(B,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}),C&&(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-12 text-center`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Couldn't load actions`}),(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Make sure your assistant is running`}),(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:()=>void w(),children:`Retry`})]}),!S&&!C&&x&&(0,$.jsx)(`div`,{className:`space-y-4`,children:ie.length===0?(0,$.jsx)(`p`,{className:`py-8 text-center text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No actions match your search.`}):ie.map(({domain:e,sites:n})=>(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`p`,{className:`mb-2 text-body-small-default font-semibold uppercase tracking-wider text-[var(--content-tertiary)]`,children:e.displayName}),(0,$.jsx)(`div`,{className:`space-y-1`,children:n.map(e=>{let n=ae(e.id),r=V(e.id),i=r===`__custom__`,a=z(e.id),o=a?.provider??O[0],s=me(o??`anthropic`).map(e=>({value:e.id,label:e.displayName})),c=!!a?.provider&&!a?.model,l=L(r===``||r===`__custom__`?null:r);return(0,$.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] p-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-default font-medium text-[var(--content-default)]`,children:e.displayName}),e.description&&(0,$.jsxs)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:[e.description,e.defaultProfile&&(0,$.jsxs)(`span`,{className:`ml-1.5 text-body-small-default text-[var(--content-tertiary)] opacity-60`,children:[`· Default: `,t.find(t=>t.name===e.defaultProfile)?.label??e.defaultProfile]})]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[n&&(0,$.jsx)(k,{value:r,onChange:t=>H(e.id,t),options:l,className:`w-36`}),(0,$.jsx)(re,{checked:n,onChange:t=>oe(e.id,t,e.defaultProfile),"aria-label":`Override ${e.displayName}`})]})]}),n&&i&&(0,$.jsxs)(`div`,{className:`mt-3 space-y-2 border-t border-[var(--border-base)] pt-3`,children:[(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex-1`,children:[(0,$.jsx)(`label`,{className:`mb-1 block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,$.jsx)(k,{value:o??``,onChange:t=>U(e.id,t),options:O.map(e=>({value:e,label:Dt[e]??e}))})]}),(0,$.jsxs)(`div`,{className:`flex-1`,children:[(0,$.jsx)(`label`,{className:`mb-1 block text-body-small-default text-[var(--content-tertiary)]`,children:`Model`}),(0,$.jsx)(k,{value:a?.model??``,onChange:t=>se(e.id,t),options:s})]})]}),c&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:`Pick a model`})]})]},e.id)})})]},e.id))})]}),(0,$.jsxs)(F.Footer,{children:[te&&(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:()=>v(!0),disabled:p||!h,tintColor:`var(--system-negative-strong)`,className:`mr-auto`,children:`Reset to Defaults`}),(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:i,disabled:p,children:`Cancel`}),(0,$.jsx)(D,{variant:`primary`,size:`compact`,onClick:()=>void le(),disabled:!M||ne||p,children:p?(0,$.jsx)(B,{className:`h-4 w-4 animate-spin`}):`Save`})]}),(0,$.jsx)(j,{open:_,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:()=>{v(!1),ue()},onCancel:()=>v(!1)})]})}var Me={maxTokens:!1,contextWindow:!1,effort:!1,speed:!1,verbosity:!1,temperature:!1,thinking:!1};function Ne(e){return e===`gpt-5`||e.startsWith(`gpt-5.`)||e.startsWith(`gpt-5-`)}function Pe(e){return e.startsWith(`anthropic/`)}function Fe(e){return Pe(e)||e.startsWith(`x-ai/grok-4`)||e.startsWith(`deepseek/deepseek-r1`)||e===`qwen/qwen3.5-plus-02-15`||e===`qwen/qwen3.5-397b-a17b`||e===`moonshotai/kimi-k2.6`}function Ie(e,t){let n=me(e).find(e=>e.id===t);return n?.supportsThinking===void 0?e===`anthropic`?!0:e===`openrouter`?Fe(t):!1:n.supportsThinking}function Le(e,t,n){return e===`anthropic`?!t.includes(`haiku`)&&n:e===`openai`?Ne(t):e===`openrouter`?Pe(t)?!t.includes(`haiku`)&&n:n:e===`fireworks`?n:!1}function Re(e,t){if(!e||!t)return Me;let n=e.toLowerCase(),r=t.toLowerCase(),i=n===`anthropic`||n===`openrouter`&&Pe(r),a=Ie(n,r);return{maxTokens:!0,contextWindow:!0,effort:Le(n,r,a),speed:n===`anthropic`&&r.includes(`opus`),verbosity:n===`openai`&&Ne(r),temperature:i,thinking:(n===`anthropic`||n===`openrouter`)&&a}}function ze(e){return e.toLowerCase().split(/[^a-z0-9]+/).filter(Boolean).join(`-`)}var Be=Object.keys(fe),Ve=`openai-compatible`,He=new Set([`gpt-5.5`,`gpt-5.4`,`gpt-5.4-mini`,`gpt-5.3-codex`]),Ue=[`none`,`low`,`medium`,`high`,`xhigh`,`max`],We=[`standard`,`fast`],Ge=[`low`,`medium`,`high`],Ke=64e3,qe=1e3,Je=2e5,Ye=1e3;function Xe({isOpen:e,mode:t,profileName:n,initialValues:r,assistantId:i,existingNames:a,connections:o,openAICompatibleEndpointsEnabled:s=!1,onSave:c,onCancel:l}){return(0,$.jsx)(F.Root,{open:e,onOpenChange:e=>{e||l()},children:e?(0,$.jsx)(Ze,{mode:t,profileName:n,initialValues:r,existingNames:a,connections:o,openAICompatibleEndpointsEnabled:s,onSave:c,onCancel:l}):null})}function Ze({mode:e,profileName:t,initialValues:n,existingNames:r,connections:i,openAICompatibleEndpointsEnabled:a,onSave:o,onCancel:s}){let[c,l]=(0,K.useState)(e),u=c===`view`,d=t===`auto`,f=n?.label??``,p=n?.status??`active`,[m,h]=(0,K.useState)(n?.label??``),[g,_]=(0,K.useState)(n?.description??``),[v,y]=(0,K.useState)(e===`create`?``:t??``),[b,x]=(0,K.useState)(n?.provider??``),[S,C]=(0,K.useState)(n?.model??``),[w,T]=(0,K.useState)(n?.provider_connection??``),[ee,E]=(0,K.useState)(n?.status??`active`),j=u&&(m!==f||ee!==p),[M,I]=(0,K.useState)(!1),[L,R]=(0,K.useState)(null),[ie,z]=(0,K.useState)(n?.maxTokens??null),[B,ae]=(0,K.useState)(n?.contextWindow?.maxInputTokens??null),[V,oe]=(0,K.useState)(n?.effort??`none`),[H,U]=(0,K.useState)(n?.speed??`standard`),[W,se]=(0,K.useState)(n?.verbosity??`medium`),[ce,le]=(0,K.useState)(typeof n?.temperature==`number`),[ue,G]=(0,K.useState)(typeof n?.temperature==`number`?n.temperature:.7),[de,fe]=(0,K.useState)(n?.thinking?.enabled??!1),[pe,J]=(0,K.useState)(n?.thinking?.streamThinking??!1),he=(0,K.useMemo)(()=>b?me(b).find(e=>e.id===S)??null:null,[b,S]),Y=(0,K.useMemo)(()=>Re(b,S),[b,S]),ge=(0,K.useMemo)(()=>a?Be:Be.filter(e=>e!==Ve),[a]),X=(0,K.useMemo)(()=>b?(i??[]).filter(e=>e.provider===b&&(a||e.provider!==Ve)):[],[b,i,a]),_e=(0,K.useMemo)(()=>{let e=new Set;for(let t of i??[])(a||t.provider!==Ve)&&e.add(t.provider);return b&&(a||b!==Ve)&&e.add(b),ge.filter(t=>e.has(t))},[ge,i,a,b]),ve=i===void 0?ge:_e,ye=w!==``&&!X.some(e=>e.name===w),Z=b!==``&&(X.length>0||w!==``),Q=(0,K.useRef)(!1);(0,K.useEffect)(()=>{Q.current=!1},[t,e]);function be(e){h(e),c===`create`&&!Q.current&&y(ze(e))}function xe(e){Q.current=!0,y(e)}function Se(e){if(e===b)return;x(e),C(``);let t=(i??[]).filter(t=>t.provider===e);T(t.length===1?t[0].name:``),z(null),ae(null),oe(`none`),U(`standard`),se(`medium`),le(!1),G(.7),fe(!1),J(!1)}function Ce(e){if(T(e),b&&me(b).length===0&&S){let t=X.find(t=>t.name===e),n=new Set((t?.models??[]).map(e=>e.id));(e===``||!n.has(S))&&C(``)}}function we(e){e!==S&&(C(e),z(null),ae(null))}let Te=v.trim(),Ee=Te.length===0,De=/\s/.test(v),Oe=c===`create`?r.includes(Te):r.filter(e=>e!==t).includes(Te),ke=b.length===0,Ae=b.length>0&&S.length===0,je=Ee||De||Oe||ke||Ae,Me=Ee?`Key is required`:De?`Key cannot contain whitespace`:Oe?`A profile with this key already exists`:null;async function Ne(){if(!(je&&!u)){if(u){if(!j)return;I(!0),R(null);try{await o(Te,{label:m.trim()||null,status:ee},{mode:`merge`})}catch{R(`Failed to save profile. Please try again.`)}finally{I(!1)}return}I(!0),R(null);try{let e={},t=w===``&&X.length===1?X[0].name:w,n=ye?``:t;c===`edit`?(e.label=m.trim()||null,e.description=g.trim()||null,e.provider=b||null,e.model=S||null,e.provider_connection=n||null):(m.trim()&&(e.label=m.trim()),g.trim()&&(e.description=g.trim()),b&&(e.provider=b),S&&(e.model=S),n&&(e.provider_connection=n)),Y.maxTokens&&ie!==null&&(e.maxTokens=ie),Y.contextWindow&&B!==null&&(e.contextWindow={maxInputTokens:B}),Y.effort&&V!==`none`&&(e.effort=V),Y.speed&&H!==`standard`&&(e.speed=H),Y.verbosity&&(e.verbosity=W),Y.temperature&&(ce?e.temperature=ue:c===`edit`&&(e.temperature=null)),Y.thinking&&(e.thinking={enabled:de,...de?{streamThinking:pe}:{}}),(c===`edit`||ee!==`active`)&&(e.status=ee),await o(Te,e)}catch{R(`Failed to save profile. Please try again.`)}finally{I(!1)}}}let Pe=c===`create`?`New Profile`:c===`edit`?`Edit Profile`:n?.label??t??`Profile`,Fe=(0,K.useMemo)(()=>{if(!b||b===Ve&&!a)return[];let e=me(b);if(e.length>0)return(w?X.find(e=>e.name===w):void 0)?.auth.type===`oauth_subscription`||!w&&X.length>0&&X.every(e=>e.auth.type===`oauth_subscription`)?e.filter(e=>He.has(e.id)):e;let t=e=>(e??[]).map(e=>({id:e.id,displayName:e.displayName??e.id}));if(w){let e=X.find(e=>e.name===w);return e?t(e.models):[]}let n=new Set,r=[];for(let e of X)for(let t of e.models??[])n.has(t.id)||(n.add(t.id),r.push({id:t.id,displayName:t.displayName??t.id}));return r},[b,a,w,X]);return(0,K.useEffect)(()=>{S&&Fe.length>0&&!Fe.some(e=>e.id===S)&&C(``)},[S,Fe]),(0,$.jsxs)(F.Content,{size:`md`,children:[(0,$.jsx)(F.Header,{children:c===`view`?(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(F.Title,{children:Pe}),(0,$.jsx)(ne,{tone:`positive`,children:`Platform`})]}):(0,$.jsx)(F.Title,{children:Pe})}),(0,$.jsx)(F.Body,{children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Display Name`}),(0,$.jsx)(P,{type:`text`,value:m,onChange:e=>be(e.target.value),placeholder:`e.g. Fast & Cheap`,fullWidth:!0})]}),(0,$.jsx)(N,{label:(0,$.jsxs)($.Fragment,{children:[`Description`,` `,(0,$.jsx)(`span`,{className:`text-[var(--content-disabled)]`,children:`(optional)`})]}),value:g,onChange:e=>_(e.target.value),placeholder:`Describe when to use this profile`,disabled:u,rows:2,fullWidth:!0,className:`resize-none`}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Key`}),(0,$.jsx)(P,{type:`text`,value:v,onChange:e=>xe(e.target.value),placeholder:`e.g. fast-cheap`,disabled:u||c===`edit`,fullWidth:!0}),Me&&!u?(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:Me}):null]}),(0,$.jsx)(re,{checked:ee===`active`,onChange:e=>E(e?`active`:`disabled`),label:`Active`}),d&&(0,$.jsx)(`div`,{className:`rounded-lg bg-[var(--surface-info-subtle)] p-3`,children:(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Auto mode routes each query to the best profile automatically — fast for simple questions, capable for complex ones. No provider or model configuration needed.`})}),!d&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,$.jsx)(`label`,{id:`profile-editor-provider-label`,className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),ke?(0,$.jsx)(`span`,{className:`rounded-full bg-[var(--surface-warning-subtle)] px-2 py-0.5 text-body-small-default text-[var(--content-warning)]`,children:`Pick a provider`}):null]}),(0,$.jsx)(k,{value:b,onChange:Se,disabled:u,placeholder:`Select a provider…`,"aria-labelledby":`profile-editor-provider-label`,options:ve.map(e=>({value:e,label:q[e]??e}))}),ve.length===0&&!u?(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`No provider connections. Open Providers to add one.`}):null]}),Z&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsxs)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:[`Connection`,` `,(0,$.jsx)(`span`,{className:`text-[var(--content-disabled)]`,children:`(optional)`})]}),(0,$.jsx)(k,{value:w,onChange:Ce,disabled:u,options:[...X.length>1?[{value:``,label:`Any ${q[b]??b} connection`}]:[],...X.map(e=>({value:e.name,label:e.label&&e.label.trim()!==``?e.label:e.name})),...ye?[{value:w,label:`${w} (not found)`}]:[]]}),ye&&!u?(0,$.jsxs)(O,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:[`Connection “`,w,`” not found. Will be cleared on save unless you pick another.`]}):null]}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Model`}),(0,$.jsx)(k,{value:S,onChange:we,disabled:u||!b,options:[{value:``,label:b?b===`openai-compatible`&&Fe.length===0?`Configure models on connection`:`Select a model`:`Select a provider first`},...Fe.map(e=>({value:e.id,label:e.displayName}))]}),Ae&&!u?(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:b===`openai-compatible`&&Fe.length===0?`No models available. Configure models on the provider connection first.`:`Select a model.`}):null]})]}),!d&&(0,$.jsxs)($.Fragment,{children:[Y.maxTokens&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Max Output Tokens`}),(0,$.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:ie===null?`Inherit`:Kt(ie)})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`div`,{className:`flex-1`,children:(0,$.jsx)(A,{value:ie??Ke,onValueChange:e=>z(typeof e==`number`?e:e[0]),min:qe,max:he?.maxOutputTokens??Ke,step:1e3,disabled:u})}),(0,$.jsx)(D,{variant:`ghost`,size:`compact`,onClick:()=>z(null),disabled:u||ie===null,children:`Inherit`})]})]}),Y.contextWindow&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Context Window`}),(0,$.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:B===null?`Inherit`:Kt(B)})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`div`,{className:`flex-1`,children:(0,$.jsx)(A,{value:B??Je,onValueChange:e=>ae(typeof e==`number`?e:e[0]),min:Ye,max:he?.contextWindowTokens??Je,step:5e4,disabled:u||!he})}),(0,$.jsx)(D,{variant:`ghost`,size:`compact`,onClick:()=>ae(null),disabled:u||B===null,children:`Inherit`})]})]}),Y.effort&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsxs)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:[`Effort`,` `,(0,$.jsx)(`span`,{className:`text-[var(--content-disabled)]`,children:`(none = inherit)`})]}),(0,$.jsx)(te,{items:Ue.map(e=>({value:e,label:e})),value:V,onChange:e=>oe(e),ariaLabel:`Effort`})]}),Y.speed&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Speed`}),(0,$.jsx)(te,{items:We.map(e=>({value:e,label:e})),value:H,onChange:e=>U(e),ariaLabel:`Speed`})]}),Y.verbosity&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Verbosity`}),(0,$.jsx)(te,{items:Ge.map(e=>({value:e,label:e})),value:W,onChange:e=>se(e),ariaLabel:`Verbosity`})]}),Y.temperature&&(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Temperature`}),(0,$.jsx)(re,{checked:ce,onChange:e=>le(e),disabled:u,"aria-label":`Enable temperature override`})]}),ce&&(0,$.jsx)(`div`,{className:`flex items-center justify-between`,children:(0,$.jsx)(`div`,{className:`flex-1`,children:(0,$.jsx)(A,{value:ue,onValueChange:e=>G(typeof e==`number`?e:e[0]),min:0,max:2,step:.01,disabled:u,showValue:!0,formatValue:e=>typeof e==`number`?e.toFixed(2):String(e)})})})]}),Y.thinking&&(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsx)(re,{checked:de,onChange:e=>{fe(e),e||J(!1)},label:`Enable extended thinking`,disabled:u}),de&&(0,$.jsx)(`div`,{className:`pl-4`,children:(0,$.jsx)(re,{checked:pe,onChange:e=>J(e),label:`Stream thinking tokens`,disabled:u})})]})]}),L?(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:L}):null]})}),(0,$.jsx)(F.Footer,{children:c===`view`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(D,{variant:`outlined`,onClick:s,disabled:M,"data-testid":`modal-cancel-btn`,children:`Close`}),!d&&(0,$.jsx)(D,{variant:`outlined`,onClick:()=>{l(`create`),y(``),Q.current=!1},disabled:M,children:`Save As New`}),(0,$.jsx)(D,{variant:`primary`,onClick:()=>void Ne(),disabled:!j||M,"data-testid":`modal-save-btn`,children:M?`Saving…`:`Save`})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(D,{variant:`outlined`,onClick:s,disabled:M,"data-testid":`modal-cancel-btn`,children:`Cancel`}),(0,$.jsx)(D,{variant:`primary`,onClick:()=>void Ne(),disabled:je||M,"data-testid":`modal-save-btn`,children:M?`Saving…`:`Save`})]})})]})}function Qe(){let e={anthropic:q.anthropic,openai:q.openai,gemini:q.gemini,ollama:q.ollama,fireworks:q.fireworks,openrouter:q.openrouter,"openai-compatible":q[`openai-compatible`]},t={};for(let n of Object.keys(e)){let r=e[n];if(r===void 0)throw Error(`provider-connections-client: catalog missing displayName for ConnectionProvider "${n}".`);t[n]=r}return t}var $e=Qe();function et(e){throw Object.assign(Error(`Request failed`),{status:e?.status})}function tt(e){return{...e,label:e.label??null,baseUrl:e.baseUrl??null,models:e.models??null}}async function nt(e,t){let n=await c.get({url:`/v1/assistants/{assistant_id}/inference/provider-connections`,path:{assistant_id:e},query:t?{provider:t}:void 0});return n.response?.ok||et(n.response),(n.data.connections??[]).map(tt)}async function rt(e,t){let n=await c.post({url:`/v1/assistants/{assistant_id}/inference/provider-connections`,path:{assistant_id:e},body:t,headers:{"Content-Type":`application/json`}});return n.response?.ok||et(n.response),tt(n.data)}async function it(e,t,n){let r=await c.patch({url:`/v1/assistants/{assistant_id}/inference/provider-connections/{name}`,path:{assistant_id:e,name:t},body:n,headers:{"Content-Type":`application/json`}});return r.response?.ok||et(r.response),tt(r.data)}async function at(e,t){let n=await c.delete({url:`/v1/assistants/{assistant_id}/inference/provider-connections/{name}`,path:{assistant_id:e,name:t}});n.response?.ok||et(n.response)}async function ot(e){let t=await c.get({url:`/v1/assistants/{assistant_id}/secrets/`,path:{assistant_id:e}});t.response?.ok||et(t.response);let n=t.data,r=n.secrets??n.accounts??[],i=[];for(let e of r){let t=e.type;if(t){if(t===`api_key`){let t=e.name;t&&i.push({service:t,field:`api_key`})}else if(t===`credential`){let t=e.name;if(!t)continue;let n=t.lastIndexOf(`:`);if(n>=0){let e=t.slice(0,n),r=t.slice(n+1);e&&r&&i.push({service:e,field:r})}}}}return i}async function st(e,t,n){let r=await c.post({url:`/v1/assistants/{assistant_id}/secrets/read/`,path:{assistant_id:e},body:{type:t,name:n},headers:{"Content-Type":`application/json`}});if(!r.response?.ok)return{found:!1,masked:null};let i=r.data;return{found:i.found??!1,masked:i.masked??null}}async function ct(e,t,n,r){let i=await c.post({url:`/v1/assistants/{assistant_id}/secrets/`,path:{assistant_id:e},body:{type:t,name:n,value:r},headers:{"Content-Type":`application/json`}});i.response?.ok||et(i.response)}async function lt(e){let t=await c.post({url:`/v1/assistants/{assistant_id}/inference/chatgpt-subscription/auth`,path:{assistant_id:e},headers:{"Content-Type":`application/json`}});return t.response?.ok||et(t.response),t.data}async function ut(e,t,n){let r=await c.post({url:`/v1/assistants/{assistant_id}/inference/chatgpt-subscription/auth/exchange`,path:{assistant_id:e},body:{code:t,state:n},headers:{"Content-Type":`application/json`}});r.response?.ok||et(r.response)}function dt(e,t){return t?e:e.filter(e=>e.provider!==`openai-compatible`)}function ft({isOpen:e,profiles:t,profileOrder:n,activeProfile:r,assistantId:i,callSiteOverrides:a,onClose:o,onProfilesChanged:s}){let l=W.use.openAICompatibleEndpoints(),[u,d]=(0,K.useState)(!1),[f,p]=(0,K.useState)(null),[m,h]=(0,K.useState)(void 0);(0,K.useEffect)(()=>{if(!e)return;let t=!1;return(async()=>{try{let e=await nt(i);t||h(dt(e,l))}catch{}})(),()=>{t=!0}},[e,i,u,l]);let g=Object.keys(t);async function _(e,r,a){let o=a?.mode??`replace`,l=!(e in t);if(o===`merge`&&!l){await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:i},body:{llm:{profiles:{[e]:r}}},headers:{"Content-Type":`application/json`},throwOnError:!0});let n={...t[e],...r};s({profiles:{[e]:n}}),d(!1),p(null);return}let u={profiles:{[e]:r}},f={profiles:{[e]:r}};if(l){let t=n.includes(e)?n:[...n,e];f.profileOrder=t,u.profileOrder=t}if(l)await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:i},body:{llm:f},headers:{"Content-Type":`application/json`},throwOnError:!0});else{let n=t[e];await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:i},body:{llm:{profiles:{[e]:null}}},headers:{"Content-Type":`application/json`},throwOnError:!0});try{await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:i},body:{llm:f},headers:{"Content-Type":`application/json`},throwOnError:!0})}catch(t){throw n!=null&&await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:i},body:{llm:{profiles:{[e]:n}}},headers:{"Content-Type":`application/json`},throwOnError:!0}).catch(()=>{}),t}}s(u),d(!1),p(null)}let v=(0,K.useRef)(t);(0,K.useEffect)(()=>{v.current=t});async function y(e,n){let r=n?`active`:`disabled`,a=t[e.name];if(!a)return!1;let o=a.status;s({profiles:{[e.name]:{...a,status:r}}});try{return await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:i},body:{llm:{profiles:{[e.name]:{status:r}}}},headers:{"Content-Type":`application/json`},throwOnError:!0}),!0}catch{let t=v.current[e.name];return t&&s({profiles:{[e.name]:{...t,status:o}}}),!1}}return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(F.Root,{open:e,onOpenChange:e=>{e||o()},children:e?(0,$.jsx)(pt,{profiles:t,profileOrder:n,activeProfile:r,assistantId:i,callSiteOverrides:a,onClose:o,onProfilesChanged:s,onEditClick:e=>{p(e),d(!0)},onNewClick:()=>{p(null),d(!0)},onStatusToggle:y}):null}),(0,$.jsx)(Xe,{isOpen:u,mode:f?f.source===`managed`?`view`:`edit`:`create`,profileName:f?.name,initialValues:f??void 0,assistantId:i,existingNames:g,connections:m,openAICompatibleEndpointsEnabled:l,onSave:_,onCancel:()=>{d(!1),p(null)}})]})}function pt({profiles:e,profileOrder:t,activeProfile:n,assistantId:r,callSiteOverrides:i,onClose:a,onProfilesChanged:o,onEditClick:s,onNewClick:l,onStatusToggle:u}){let[d,f]=(0,K.useState)({}),[p,m]=(0,K.useState)({}),[h,g]=(0,K.useState)(new Set),[_,v]=(0,K.useState)(null);async function y(e,t){if(!h.has(e.name)){g(t=>new Set(t).add(e.name)),v(null);try{await u(e,t)||v(`Couldn't update "${e.label??e.name}". Please try again.`)}finally{g(t=>{let n=new Set(t);return n.delete(e.name),n})}}}let[b,x]=(0,K.useState)(null),[S,C]=(0,K.useState)(null),[w,T]=(0,K.useState)(null),ee=(0,K.useRef)(t),E=(0,K.useRef)(null),k=(0,K.useRef)(null),[A,j]=(0,K.useState)(null),[te,M]=(0,K.useState)(null),[N,P]=(0,K.useState)(``),[I,L]=(0,K.useState)(!1),R=t.filter(t=>t in e).map(t=>{let n=e[t];return{name:t,source:n.source,status:n.status??`active`,label:n.label??void 0,description:n.description??void 0,provider:n.provider??void 0,provider_connection:n.provider_connection??void 0,model:n.model??void 0,maxTokens:n.maxTokens,effort:n.effort,speed:n.speed,verbosity:n.verbosity,temperature:n.temperature,thinking:n.thinking,contextWindow:n.contextWindow}}),ie=new Set(t),z=Object.entries(e).filter(([e])=>!ie.has(e)).map(([e,t])=>({name:e,source:t.source,status:t.status??`active`,label:t.label??void 0,description:t.description??void 0,provider:t.provider??void 0,provider_connection:t.provider_connection??void 0,model:t.model??void 0,maxTokens:t.maxTokens,effort:t.effort,speed:t.speed,verbosity:t.verbosity,temperature:t.temperature,thinking:t.thinking,contextWindow:t.contextWindow})),B=Ce([...R,...z],W.use.queryComplexityRouting());async function ae(e){m(t=>({...t,[e]:!0})),f(t=>{let n={...t};return delete n[e],n});try{let n=t.filter(t=>t!==e);await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:r},body:{llm:{profiles:{[e]:null},profileOrder:n}},headers:{"Content-Type":`application/json`},throwOnError:!0}),o({profiles:{[e]:null},profileOrder:n})}catch{f(t=>({...t,[e]:`Failed to delete profile. Please try again.`}))}finally{m(t=>{let n={...t};return delete n[e],n})}}function V(e){let t=B.find(t=>t.name===e)?.label??e,r=e===n,a=Object.entries(i).filter(([t,n])=>t!==`mainAgent`&&n?.profile===e).map(([e])=>e);if(r||a.length>0){j({name:e,label:t,isActive:r,callSiteIds:a}),P(``),M(null);return}ae(e)}async function oe(){if(!A||!N)return;L(!0),M(null);let e={};if(A.isActive&&(e.activeProfile=N),A.callSiteIds.length>0){let t={};for(let e of A.callSiteIds)t[e]={profile:N};e.callSites=t}if(Object.keys(e).length>0)try{await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:r},body:{llm:e},headers:{"Content-Type":`application/json`},throwOnError:!0});let t=A.callSiteIds.length>0?Object.fromEntries(A.callSiteIds.map(e=>[e,N])):void 0;o({...A.isActive&&{activeProfile:N},...t&&{callSites:t}})}catch{M(`Failed to reassign references. Please try again.`),L(!1);return}let t=A.name;j(null),L(!1),ae(t)}async function H(e,n){if(e===n.name)return;T(null);let i=t.filter(t=>t!==e),a=i.indexOf(n.name);if(a===-1)return;n.after&&(a+=1);let s=[...i.slice(0,a),e,...i.slice(a)];o({profileOrder:s});try{await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:r},body:{llm:{profileOrder:s}},headers:{"Content-Type":`application/json`},throwOnError:!0}),ee.current=s}catch{o({profileOrder:ee.current}),T(`Failed to reorder profiles. Please try again.`)}}let U=B.filter(e=>e.name!==A?.name&&e.source!==`managed`),ce=U.length>0?U:B.filter(e=>e.name!==A?.name);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(F.Content,{size:`md`,children:[(0,$.jsxs)(F.Header,{children:[(0,$.jsx)(F.Title,{children:`Model Profiles`}),(0,$.jsx)(F.Description,{children:`Bundle a provider and model into a named profile. Assign profiles to specific actions or swap between them when chatting.`})]}),(0,$.jsxs)(F.Body,{children:[B.length===0?(0,$.jsx)(O,{variant:`body-medium-lighter`,as:`p`,className:`py-4 text-center text-(--content-tertiary)`,children:`No profiles yet. Create one to get started.`}):(0,$.jsx)(`div`,{className:`space-y-1`,children:B.map(e=>{let t=e.source===`managed`,n=p[e.name]??!1,r=d[e.name],i=e.status!==`disabled`,a=h.has(e.name),o=e.name===Se;return(0,$.jsxs)(`div`,{className:`relative`,children:[S?.name===e.name&&!S.after&&(0,$.jsx)(`div`,{className:`mx-0 h-0.5 rounded-full bg-[var(--border-active)]`}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg pr-2 py-2${b===e.name?` opacity-50`:``}`,draggable:!t,onDragStart:t=>{E.current=e.name,x(e.name),t.dataTransfer&&(t.dataTransfer.effectAllowed=`move`)},onDragEnd:()=>{E.current=null,k.current=null,x(null),C(null)},onDragOver:t=>{t.preventDefault();let n=t.currentTarget.getBoundingClientRect(),r=t.clientY>n.top+n.height/2,i={name:e.name,after:r};k.current=i,C(i)},onDragLeave:t=>{t.currentTarget.contains(t.relatedTarget)||(k.current=null,C(t=>t?.name===e.name?null:t))},onDrop:e=>{e.preventDefault();let t=E.current,n=k.current;E.current=null,k.current=null,x(null),C(null),t&&n&&H(t,n)},children:[(0,$.jsx)(de,{className:`h-4 w-4 shrink-0 ${t?`invisible`:`cursor-grab text-[var(--content-tertiary)]`}`}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1${i?``:` opacity-55`}`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(O,{variant:`body-medium-default`,as:`span`,className:`text-(--content-default)`,children:e.label??e.name}),t&&e.name!==`auto`&&(0,$.jsx)(ne,{tone:`positive`,title:`Managed by Platform — auth is locked, but you can rename or disable this profile.`,children:`Platform`})]}),e.description?(0,$.jsx)(O,{variant:`body-medium-lighter`,as:`p`,className:`mt-0.5 text-(--content-tertiary)`,children:e.description}):null,e.model??e.provider?(0,$.jsx)(O,{variant:`body-medium-lighter`,as:`p`,className:`mt-0.5 text-(--content-tertiary)`,children:e.model??e.provider}):null]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,$.jsx)(`div`,{className:`flex shrink-0 items-center`,title:i?`Active — toggle to hide from pickers`:`Disabled — toggle to show in pickers`,children:(0,$.jsx)(re,{checked:i,onChange:t=>void y(e,t),disabled:a,"aria-label":`${i?`Disable`:`Enable`} ${e.label??e.name}`})}),(0,$.jsxs)(`div`,{className:`flex w-[92px] items-center justify-end gap-2${o?` invisible`:``}`,children:[(0,$.jsx)(D,{variant:`ghost`,size:`compact`,onClick:()=>s(e),children:t?`View`:`Edit`}),(0,$.jsx)(D,{variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)(se,{}),"aria-label":`Delete ${e.label??e.name}`,disabled:t||n,title:t?`Managed profiles cannot be deleted`:void 0,onClick:()=>V(e.name),tintColor:`var(--system-negative-strong)`})]})]})]}),S?.name===e.name&&S.after&&(0,$.jsx)(`div`,{className:`mx-0 h-0.5 rounded-full bg-[var(--border-active)]`}),r?(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`px-2 pb-1 text-(--system-negative-strong)`,children:r}):null,e.name===`auto`&&(0,$.jsx)(`div`,{className:`mx-2 mt-1 border-b border-[var(--border-subtle)]`})]},e.name)})}),w&&(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`mt-2 text-(--system-negative-strong)`,children:w}),_&&(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`mt-2 text-(--system-negative-strong)`,children:_})]}),(0,$.jsxs)(F.Footer,{className:`justify-between`,children:[(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:l,children:`+ New Profile`}),(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:a,children:`Done`})]})]}),(0,$.jsx)(mt,{blocked:A,availableReplacements:ce,replacement:N,onReplacementChange:P,error:te,saving:I,onClose:()=>{j(null),M(null)},onConfirm:()=>void oe()})]})}function mt({blocked:e,availableReplacements:t,replacement:n,onReplacementChange:r,error:i,saving:a,onClose:o,onConfirm:s}){let c=``;if(e){let t=e.label||e.name;c=e.isActive&&e.callSiteIds.length>0?`"${t}" is the active profile and is used by ${e.callSiteIds.length} call site(s). Pick a replacement profile.`:e.isActive?`"${t}" is the active profile. Pick a different active profile before deleting, or select a replacement below.`:`"${t}" is used by ${e.callSiteIds.length} call site(s). Select a replacement profile to reassign them before deleting.`}return(0,$.jsx)(F.Root,{open:e!==null,onOpenChange:e=>{e||o()},children:(0,$.jsxs)(F.Content,{size:`sm`,children:[(0,$.jsx)(F.Header,{children:(0,$.jsx)(F.Title,{children:`Can't Delete Profile`})}),(0,$.jsxs)(F.Body,{className:`space-y-4`,children:[(0,$.jsx)(O,{variant:`body-medium-default`,as:`p`,children:c}),e&&e.callSiteIds.length>0&&(0,$.jsx)(`ul`,{className:`space-y-1 pl-1`,children:e.callSiteIds.map(e=>(0,$.jsxs)(`li`,{className:`text-body-small-default text-(--content-secondary)`,children:[`• `,(0,$.jsx)(`code`,{children:e})]},e))}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Replacement profile`}),(0,$.jsx)(k,{"aria-label":`Replacement profile`,value:n,onChange:r,options:[{value:``,label:`Select a replacement…`},...t.map(e=>({value:e.name,label:e.label??e.name}))]})]}),i&&(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:i})]}),(0,$.jsxs)(F.Footer,{children:[(0,$.jsx)(D,{variant:`ghost`,size:`compact`,onClick:o,children:`Cancel`}),(0,$.jsx)(D,{variant:`primary`,size:`compact`,disabled:!n||a,onClick:s,children:a?`Saving…`:`Reassign and Delete`})]})]})})}var ht=`•`.repeat(8);function gt(e,t){return t?ht:e}var _t=[`anthropic`,`openai`,`gemini`,`ollama`,`fireworks`,`openrouter`,`openai-compatible`],vt={api_key:`API Key`,platform:`Platform (managed proxy)`,none:`None (local / no auth)`,oauth_subscription:`ChatGPT Subscription`};function yt({mode:e,connection:t,assistantId:n,existingNames:r,openAICompatibleEndpointsEnabled:i=!1,chatgptSubscriptionEnabled:a=!1,onSave:o,onCancel:s}){let[c,l]=(0,K.useState)(e),u=c===`managed-edit`,[d,f]=(0,K.useState)(t?.label??``),[p,m]=(0,K.useState)(t?.name??``),[h,g]=(0,K.useState)(t?.provider??`anthropic`),[_,v]=(0,K.useState)(()=>t?t.auth.type:`platform`),[y,b]=(0,K.useState)(()=>t?.auth.type===`api_key`?t.auth.credential:t?``:`credential/anthropic/api_key`),[x,S]=(0,K.useState)(t?.baseUrl??``),[C,w]=(0,K.useState)(()=>t?.models?t.models.map(e=>e.id).join(`, `):``),[T,ee]=(0,K.useState)(!1),[E,A]=(0,K.useState)(null),j=h===`openai-compatible`,te=(0,K.useMemo)(()=>{let e=i?_t:_t.filter(e=>e!==`openai-compatible`);return h&&!e.includes(h)?[...e,h]:e},[i,h]),M=(0,K.useRef)(!1),[ne,N]=(0,K.useState)(``),[re,I]=(0,K.useState)(!1),[L,R]=(0,K.useState)(!1),[ie,z]=(0,K.useState)(!1),[ae,V]=(0,K.useState)([]),[oe,H]=(0,K.useState)(!1),[W,se]=(0,K.useState)(``),[ce,le]=(0,K.useState)(!1),[ue,G]=(0,K.useState)(`idle`),[de,fe]=(0,K.useState)(``),[pe,q]=(0,K.useState)(null),J=(0,K.useRef)(``);async function me(){G(`starting`),q(null);let e=window.open(`about:blank`,`_blank`);try{let{authorize_url:t,state:r}=await lt(n);J.current=r,e?(e.opener=null,e.location.href=t):window.open(t,`_blank`,`noopener`),G(`paste_url`)}catch{e?.close(),G(`failed`),q(`Failed to start ChatGPT sign-in. Please try again.`)}}async function he(){q(null);let e=de.trim();if(!e){q(`Please paste the URL from the error page.`);return}let t;try{t=new URL(e)}catch{q(`Invalid URL. Please paste the full URL from the address bar.`);return}let r=t.searchParams.get(`code`),i=t.searchParams.get(`state`);if(!r){q(`The URL is missing the authorization code. Make sure you copied the full URL.`);return}if(!i){q(`The URL is missing the state parameter. Make sure you copied the full URL.`);return}G(`exchanging`);try{await ut(n,r,i),G(`completed`),o((await nt(n,`openai`)).find(e=>e.name===`chatgpt-subscription`||e.name===`openai-chatgpt`)||{name:`chatgpt-subscription`,provider:`openai`,auth:{type:`oauth_subscription`,credential:`credential/openai/chatgpt-subscription`},label:`ChatGPT Subscription`,createdAt:Date.now(),updatedAt:Date.now(),baseUrl:null,models:null})}catch{G(`failed`),q(`Failed to complete sign-in. Please try again.`)}}let ge=(0,K.useCallback)(async e=>{let t=e.split(`/`);if(t.length<3||t[0]!==`credential`){R(!1);return}let r=t[1],i=t.slice(2).join(`/`);z(!0);try{R((await st(n,`credential`,`${r}:${i}`)).found)}catch{R(!1)}finally{z(!1)}},[n]),X=(0,K.useCallback)(async()=>{V(await ot(n))},[n]);(0,K.useEffect)(()=>{let e=t?.provider??`anthropic`;f(t?.label??``),m(t?.name??``),g(e),v(t?t.auth.type:`platform`),t?.auth.type===`api_key`?b(t.auth.credential):b(t?``:`credential/${e}/api_key`),M.current=!1,A(null),S(t?.baseUrl??``),w(t?.models?t.models.map(e=>e.id).join(`, `):``),N(``),R(!1),z(!1),V([]),H(!1),se(``),le(!1),I(!1),G(`idle`),fe(``),q(null),J.current=``,t?.auth.type===`api_key`?(ge(t.auth.credential),X()):t||X()},[t,ge,X]);function _e(e){f(e),c===`create`&&!M.current&&m(ze(e))}function ve(e){M.current=!0,m(e)}function ye(){l(`create`),m(``),M.current=!1,h===`ollama`?(v(`none`),b(``)):(v(`api_key`),b(`credential/${h}/api_key`)),N(``),R(!1),S(``),w(``),A(null),X()}let Z=p.trim()&&c===`create`&&r.includes(p.trim())?`A connection named "${p.trim()}" already exists.`:null,Q=p.trim().length>0&&!Z;async function be(){if(Q){ee(!0),A(null);try{let e;if(_===`api_key`){let t=y.trim()||`credential/${h}/api_key`,r=ne.trim();if(r){le(!0);try{let e=t.split(`/`);if(e.length>=3&&e[0]===`credential`){let t=e[1];await ct(n,`credential`,`${t}:${e.slice(2).join(`/`)}`,r)}else await ct(n,`api_key`,h,r);R(!0)}catch{A(`Failed to save API key. Please try again.`);return}finally{le(!1)}}else if(!L&&c===`create`){A(`Enter an API key or select an existing credential.`);return}e={type:`api_key`,credential:t}}else if(_===`oauth_subscription`)if(c!==`create`&&t?.auth.type===`oauth_subscription`)e=t.auth;else{A(`Use the "Sign in with ChatGPT" button to connect your subscription.`);return}else e=_===`none`?{type:`none`}:{type:`platform`};let r=d.trim()||null,i;if(c===`create`)i=await rt(n,{name:p.trim(),provider:h,auth:e,...r!==null&&{label:r},...j&&{base_url:x.trim()||null,models:C.trim()?C.split(`,`).map(e=>({id:e.trim()})).filter(e=>e.id):null}});else{let a={auth:e,label:r,...j&&{base_url:x.trim()||null,models:C.trim()?C.split(`,`).map(e=>({id:e.trim()})).filter(e=>e.id):null}};i=await it(n,t.name,a)}o(i)}catch(e){let t=e?.status;A(t===409?`A connection named "${p.trim()}" already exists.`:t===404?`Connection not found. It may have been deleted.`:t===400?`Invalid configuration. Check the provider and auth settings.`:`Failed to save connection. Please try again.`)}finally{ee(!1)}}}let xe=ae.filter(e=>e.service===h),Se=c!==`create`&&t?.auth.type===`api_key`,Ce=xe.length>0||oe||Se,we=gt(`Enter your API key`,L);return(0,$.jsxs)(F.Content,{size:`md`,children:[(0,$.jsxs)(F.Header,{children:[(0,$.jsx)(F.Title,{children:c===`create`?`New Provider Connection`:`Edit Connection`}),(0,$.jsx)(F.Description,{children:c===`create`?`Define a provider and auth configuration for inference routing.`:u?`Managed by Vellum — auth is locked, but you can rename "${t?.name}".`:`Editing "${t?.name}".`})]}),(0,$.jsxs)(F.Body,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsxs)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:[`Display Name`,` `,(0,$.jsx)(`span`,{className:`text-[var(--content-disabled)]`,children:`(optional)`})]}),(0,$.jsx)(P,{value:d,onChange:e=>_e(e.target.value),placeholder:`e.g. My Anthropic Key`,fullWidth:!0})]}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Key`}),(0,$.jsx)(P,{value:p,onChange:e=>{ve(e.target.value),A(null)},placeholder:`e.g. anthropic-personal`,disabled:c!==`create`,fullWidth:!0}),Z&&(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:Z})]}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,$.jsx)(k,{"aria-label":`Provider`,value:h,onChange:e=>{let t=e;g(t),c===`create`&&(t===`ollama`?(v(`none`),b(``)):(v(e=>e===`none`||e===`oauth_subscription`&&t!==`openai`||e===`platform`&&!Y(t)?`api_key`:e),b(`credential/${t}/api_key`)),R(!1))},disabled:c!==`create`,options:te.map(e=>({value:e,label:$e[e]}))})]}),j&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Base URL`}),(0,$.jsx)(P,{value:x,onChange:e=>S(e.target.value),placeholder:`https://api.example.com/v1`,disabled:u,fullWidth:!0})]}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Models`}),(0,$.jsx)(P,{value:C,onChange:e=>w(e.target.value),placeholder:`model-1, model-2`,disabled:u,fullWidth:!0}),(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`Comma-separated model identifiers exposed by your endpoint.`})]})]}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Auth Type`}),(0,$.jsx)(k,{"aria-label":`Auth type`,value:_,onChange:e=>{v(e),A(null)},disabled:u||h===`ollama`,options:(()=>{let e;return e=h===`ollama`?[`none`]:Y(h)?[`api_key`,`platform`]:[`api_key`],a&&h===`openai`&&c===`create`&&e.push(`oauth_subscription`),_&&!e.includes(_)&&e.push(_),e.map(e=>({value:e,label:vt[e]}))})()})]}),_===`api_key`&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`API Key`}),ie?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 h-8`,children:[(0,$.jsx)(B,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,$.jsx)(O,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:`Loading…`})]}):(0,$.jsx)(P,{type:`password`,value:ne,onChange:e=>{N(e.target.value),A(null)},placeholder:we,disabled:u,fullWidth:!0})]}),Ce&&(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`button`,{type:`button`,"aria-expanded":re,onClick:()=>I(e=>!e),className:`flex items-center gap-1 text-body-small-default text-[var(--content-secondary)] w-full text-left`,children:[(0,$.jsx)(U,{className:`h-4 w-4 transition-transform ${re?`rotate-90`:``}`}),(0,$.jsx)(`span`,{children:`Advanced`}),(0,$.jsx)(`span`,{className:`text-[var(--content-tertiary)] ml-1`,children:`· Credential reference`})]}),re&&(0,$.jsxs)(`div`,{className:`mt-2 space-y-3`,children:[(()=>{let e=xe.map(e=>{let t=`credential/${e.service}/${e.field}`;return{label:t,value:t}}),t=e.some(e=>e.value===y),n=y&&!t?[{label:y,value:y},...e]:e;return n.length===0?null:(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Credential Reference`}),(0,$.jsx)(k,{"aria-label":`Credential reference`,value:y,onChange:e=>{b(e),ge(e)},disabled:u,options:n})]})})(),oe&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`New Credential Name`}),(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[(0,$.jsx)(P,{value:W,onChange:e=>se(e.target.value),placeholder:`e.g. team-key`,disabled:u,fullWidth:!0}),(0,$.jsx)(D,{variant:`primary`,size:`compact`,disabled:u||!W.trim(),onClick:()=>{let e=W.trim();if(!e)return;let t=`credential/${h}/${e}`;b(t),H(!1),se(``),ge(t)},children:`Use`})]})]}),(0,$.jsx)(`div`,{className:`flex justify-end`,children:(0,$.jsx)(D,{variant:`ghost`,size:`compact`,disabled:u,onClick:()=>{oe?(H(!1),se(``)):H(!0)},children:oe?`Cancel`:`+ New Credential`})})]})]})]}),_===`oauth_subscription`&&(0,$.jsxs)(`div`,{className:`space-y-3 rounded-lg border border-[var(--border-default)] p-4`,children:[(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`Connect your ChatGPT subscription to use OpenAI models without an API key.`}),ue===`idle`?(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:()=>void me(),children:`Sign in with ChatGPT`}):null,ue===`starting`?(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(B,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,$.jsx)(O,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:`Starting sign-in...`})]}):null,ue===`paste_url`?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-secondary)]`,children:`1. Sign in with ChatGPT in the popup`}),(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-secondary)]`,children:`2. After sign-in, you'll see an error page`}),(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-secondary)]`,children:`3. Copy the URL from the address bar and paste it below`})]}),(0,$.jsx)(P,{value:de,onChange:e=>{fe(e.target.value),q(null)},placeholder:`Paste callback URL here...`,fullWidth:!0}),(0,$.jsx)(`div`,{className:`flex justify-end`,children:(0,$.jsx)(D,{variant:`primary`,size:`compact`,disabled:!de.trim(),onClick:()=>void he(),children:`Complete Sign In`})})]}):null,ue===`exchanging`?(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(B,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,$.jsx)(O,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:`Completing sign-in...`})]}):null,ue===`completed`?(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-[var(--system-positive-strong)]`,children:`ChatGPT subscription connected successfully.`}):null,pe?(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:pe}):null,ue===`failed`?(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:()=>{G(`idle`),fe(``),q(null)},children:`Try Again`}):null]}),E&&(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`text-(--system-negative-strong)`,children:E})]}),(0,$.jsxs)(F.Footer,{children:[(0,$.jsx)(D,{variant:`ghost`,size:`compact`,onClick:s,children:`Cancel`}),c===`managed-edit`&&(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:ye,disabled:T||ce,children:`Save as New`}),(0,$.jsx)(D,{variant:`primary`,size:`compact`,disabled:!Q||T||ce,onClick:()=>void be(),children:T?`Saving…`:c===`create`?`Create`:`Save`})]})]})}function bt(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 xt(e,t){return t?e:e.filter(e=>e.provider!==`openai-compatible`)}function St({isOpen:e,assistantId:t,onClose:n}){let r=W.use.openAICompatibleEndpoints(),i=W.use.chatgptSubscriptionAuth(),[a,o]=(0,K.useState)([]),[s,c]=(0,K.useState)(!0),[l,u]=(0,K.useState)(null),[d,f]=(0,K.useState)(!1),[p,m]=(0,K.useState)(null),h=(0,K.useRef)(0),g=(0,K.useCallback)(()=>{let e=++h.current;c(!0),u(null),nt(t).then(t=>{h.current===e&&(o(xt(t,r)),c(!1))}).catch(()=>{h.current===e&&(u(`Failed to load connections. Please try again.`),c(!1))})},[t,r]);(0,K.useEffect)(()=>{e&&g()},[e,g]);function _(e){h.current++,o(t=>{if(e.provider===`openai-compatible`&&!r)return t;let n=t.findIndex(t=>t.name===e.name);if(n>=0){let r=[...t];return r[n]=e,r}return[...t,e]}),f(!1),m(null)}let v=a.map(e=>e.name),y=()=>{f(!1),m(null)};return(0,$.jsx)(F.Root,{open:e,onOpenChange:e=>{e||(d?y():n())},children:e?d?(0,$.jsx)(yt,{mode:p?p.isManaged?`managed-edit`:`edit`:`create`,connection:p??void 0,assistantId:t,existingNames:v,openAICompatibleEndpointsEnabled:r,chatgptSubscriptionEnabled:i,onSave:_,onCancel:y}):(0,$.jsx)(Ct,{connections:a,loading:s,loadError:l,assistantId:t,onClose:n,onEditClick:e=>{m(e),f(!0)},onNewClick:()=>{m(null),f(!0)},onConnectionDeleted:e=>{o(t=>t.filter(t=>t.name!==e))}}):null})}function Ct({connections:e,loading:t,loadError:n,assistantId:r,onClose:i,onEditClick:a,onNewClick:o,onConnectionDeleted:s}){let[c,l]=(0,K.useState)({}),[u,d]=(0,K.useState)({});async function f(e){d(t=>({...t,[e]:!0})),l(t=>{let n={...t};return delete n[e],n});try{await at(r,e),s(e)}catch(t){let n=t?.status;n===409?l(t=>({...t,[e]:`Connection is in use by one or more profiles. Remove those references first.`})):n===404?s(e):l(t=>({...t,[e]:`Failed to delete connection. Please try again.`}))}finally{d(t=>{let n={...t};return delete n[e],n})}}return(0,$.jsxs)(F.Content,{size:`md`,children:[(0,$.jsxs)(F.Header,{children:[(0,$.jsx)(F.Title,{children:`Provider Connections`}),(0,$.jsx)(F.Description,{children:`Manage inference provider connections. Each connection binds a name to a provider and auth configuration.`})]}),(0,$.jsx)(F.Body,{children:t?(0,$.jsx)(`div`,{className:`space-y-2 py-2`,children:[1,2,3].map(e=>(0,$.jsx)(`div`,{className:`h-10 animate-pulse rounded-lg bg-[var(--surface-active)]`},e))}):n?(0,$.jsx)(O,{variant:`body-medium-default`,as:`p`,className:`py-4 text-center text-(--system-negative-strong)`,children:n}):e.length===0?(0,$.jsx)(O,{variant:`body-medium-lighter`,as:`p`,className:`py-4 text-center text-(--content-tertiary)`,children:`No connections yet. Create one to get started.`}):(0,$.jsx)(`div`,{className:`space-y-1`,children:e.map(e=>{let t=u[e.name]??!1,n=c[e.name],r=e.isManaged??!1;return(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg px-2 py-2`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(O,{variant:`body-medium-default`,as:`span`,className:`text-(--content-default)`,children:e.label??e.name}),r&&(0,$.jsx)(ne,{tone:`positive`,title:`Managed by Platform — auth is locked, but you can rename this connection.`,children:`Platform`})]}),(0,$.jsxs)(O,{variant:`body-medium-lighter`,as:`p`,className:`mt-0.5 text-(--content-tertiary)`,children:[e.label?`${e.name} · `:``,$e[e.provider]??e.provider,` · `,bt(e.auth)]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,$.jsx)(D,{variant:`ghost`,size:`compact`,onClick:()=>a(e),children:`Edit`}),(0,$.jsx)(D,{variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)(se,{}),"aria-label":`Delete ${e.name}`,disabled:r||t,title:r?`Managed connections cannot be deleted`:void 0,onClick:()=>void f(e.name),tintColor:`var(--system-negative-strong)`})]})]}),n?(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`px-2 pb-1 text-(--system-negative-strong)`,children:n}):null]},e.name)})})}),(0,$.jsxs)(F.Footer,{className:`justify-between`,children:[(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:o,children:`+ New Connection`}),(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:i,children:`Done`})]})]})}var wt=[`gemini-3.1-flash-image-preview`,`gemini-3-pro-image-preview`],Tt={"gemini-3.1-flash-image-preview":`Nano Banana 2`,"gemini-3-pro-image-preview":`Nano Banana Pro`},Et=[`anthropic`,`openai`,`fireworks`,`openrouter`,`gemini`],Dt=q,Ot=[{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`}}],kt=[{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`}}];function At(e){if(e?.success===!1)throw Error(`Failed to provision API key: server returned success=false`)}function jt(e){let t=e.services??{},n=e.llm??{},r={},i=n.default?.provider;i&&(r.inferenceProvider=i);let a=n.default?.model;a&&(r.selectedModel=a),n.activeProfile!==void 0&&(r.activeProfile=n.activeProfile??null),n.profiles&&(r.profiles=n.profiles),n.profileOrder!==void 0&&(r.profileOrder=n.profileOrder);let o=t[`web-search`]?.mode;(o===`managed`||o===`your-own`)&&(r.webSearchMode=o);let s=t[`web-search`]?.provider;s&&(r.webSearchProvider=s);let c=t[`image-generation`]?.mode;return(c===`managed`||c===`your-own`)&&(r.imageGenMode=c),r}var Mt=`vellum_image_gen_mode`,Nt=`vellum_image_gen_model`,Pt=`vellum_web_search_mode`,Ft=`vellum_web_search_provider`,It=`vellum_email_mode`,Lt=`vellum_email_byo_provider`,Rt=`voice:ttsProvider`,zt=`voice:ttsApiKey:`,Bt=`voice:ttsVoiceId:`,Vt=`voice:sttProvider`,Ht=`voice:sttApiKey:`,Ut=`vellum_gemini_key`;function Wt(e){return ve[e]??``}function Gt(e,t){return e.toLocaleString(`en-US`,{maximumFractionDigits:t,minimumFractionDigits:0})}function Kt(e){let t=Array.isArray(e)?e[0]??0:e,n=Math.round(t);return Math.abs(n)>=1e6?`${Gt(n/1e6,2)}M`:Math.abs(n)>=1e3?`${Gt(n/1e3,1)}K`:n.toLocaleString(`en-US`)}function qt({mode:e,onChange:t}){return(0,$.jsx)(`div`,{className:`max-w-[280px]`,children:(0,$.jsx)(te,{ariaLabel:`Service mode`,value:e,onChange:t,items:[{value:`managed`,label:`Managed`},{value:`your-own`,label:`Your Own`}]})})}function Jt({id:e,title:t,subtitle:n,mode:r,onModeChange:i,children:a}){return(0,$.jsxs)(ue,{id:e,title:t,subtitle:n,accessory:(0,$.jsx)(qt,{mode:r,onChange:i}),children:[(0,$.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,$.jsx)(`div`,{className:`mt-4`,children:a})]})}function Yt({onClick:e,disabled:t}){return(0,$.jsx)(D,{onClick:e,disabled:t,children:`Save`})}function Xt({onClick:e,filled:t=!1}){return(0,$.jsx)(D,{variant:t?`danger`:`dangerGhost`,onClick:e,children:`Reset`})}function Zt({title:e,subtitle:t,children:n}){return(0,$.jsxs)(ue,{title:e,subtitle:t,children:[(0,$.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,$.jsx)(`div`,{className:`mt-4`,children:n})]})}function Qt({guide:e}){return(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(le,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`span`,{children:e.description}),(0,$.jsxs)(`a`,{href:e.url,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e.linkLabel,(0,$.jsx)(z,{className:`h-3 w-3`})]})]})]})}function $t(){let e=Ot[0]?.id??`elevenlabs`,[t,n]=(0,K.useState)(()=>a(Rt,e)),[r,i]=(0,K.useState)(t),[s,c]=(0,K.useState)(``),[l,d]=(0,K.useState)(``),[f,p]=(0,K.useState)(``),[m,h]=(0,K.useState)(!1),[g,_]=(0,K.useState)(!1),[v,y]=(0,K.useState)(!1),{data:b}=u(T()),x=b?.results?.[0]?.name??`your assistant`,S=(0,K.useMemo)(()=>Ot.find(e=>e.id===t)??Ot[0],[t]),C=(0,K.useCallback)(e=>{let t=a(zt+e,``),n=a(Bt+e,``);h(t.length>0),d(n),p(n),c(``)},[]);(0,K.useEffect)(()=>{C(t)},[t,C]);let w=(0,K.useMemo)(()=>{let e=t!==r,n=s.trim().length>0,i=l.trim()!==f;return e||n||i},[t,r,s,l,f]),ee=(0,K.useCallback)(()=>{_(!0);try{o(Rt,t);let e=s.trim();e.length>0&&(o(zt+t,e),h(!0));let n=l.trim();o(Bt+t,n),i(t),p(n),c(``)}finally{_(!1)}},[t,s,l]),E=(0,K.useCallback)(()=>{o(zt+t,``),h(!1),c(``)},[t]),O=(0,K.useCallback)(async()=>{y(!0);try{let e=a(zt+t,``),n=s.trim(),r=n.length>0?n:e;if(r.length===0){I.error(`Save an API key for this provider before testing.`);return}let i=a(Bt+t,``),o=l.trim(),c=await Z({provider:t,apiKey:r,voiceId:o.length>0?o:i,text:`Hey! It's ${x}. How does this sound?`});if(c.kind!==`audio`){I.error(c.message);return}let u=URL.createObjectURL(c.blob);try{let e=new Audio(u);await e.play(),await new Promise(t=>{e.onended=()=>t(),e.onerror=()=>t()})}finally{URL.revokeObjectURL(u)}}finally{y(!1)}},[x,s,t,l]),A=m?`•••••••• (Enter a new key to replace)`:S.apiKeyPlaceholder;return(0,$.jsx)(Zt,{title:`Text-to-Speech`,subtitle:S.subtitle,children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-quiet)]`,children:`Provider`}),(0,$.jsx)(k,{value:t,onChange:n,options:Ot.map(e=>({value:e.id,label:e.displayName})),"aria-label":`TTS provider`})]}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-quiet)]`,children:`API Key`}),(0,$.jsx)(P,{type:`password`,value:s,onChange:e=>c(e.target.value),placeholder:A,fullWidth:!0})]}),S.supportsVoiceSelection&&(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-quiet)]`,children:`Voice ID`}),(0,$.jsx)(P,{type:`text`,value:l,onChange:e=>d(e.target.value),placeholder:`Enter a voice ID`,fullWidth:!0})]}),(0,$.jsx)(Qt,{guide:S.credentialsGuide}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(D,{variant:`outlined`,onClick:O,disabled:v,children:v?`Testing…`:`Test`}),(0,$.jsxs)(`div`,{className:`ml-auto flex items-center gap-2`,children:[(0,$.jsx)(Yt,{onClick:ee,disabled:!w||g}),g&&(0,$.jsx)(B,{className:`h-4 w-4 animate-spin text-stone-400`}),m&&(0,$.jsx)(Xt,{onClick:E})]})]})]})})}function en(){let e=kt[0]?.id??`deepgram`,[t,n]=(0,K.useState)(()=>a(Vt,e)),[r,i]=(0,K.useState)(t),[s,c]=(0,K.useState)(``),[l,u]=(0,K.useState)(!1),[d,f]=(0,K.useState)(!1),p=(0,K.useMemo)(()=>kt.find(e=>e.id===t)??kt[0],[t]);(0,K.useEffect)(()=>{u(a(Ht+t,``).length>0),c(``)},[t]);let m=(0,K.useMemo)(()=>{let e=t!==r,n=s.trim().length>0;return e||n},[t,r,s]),h=(0,K.useCallback)(()=>{f(!0);try{o(Vt,t);let e=s.trim();e.length>0&&(o(Ht+t,e),u(!0)),i(t),c(``)}finally{f(!1)}},[t,s]),g=(0,K.useCallback)(()=>{o(Ht+t,``),u(!1),c(``)},[t]),_=l?`•••••••• (Enter a new key to replace)`:p.apiKeyPlaceholder;return(0,$.jsx)(Zt,{title:`Speech-to-Text`,subtitle:p.subtitle,children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-quiet)]`,children:`Provider`}),(0,$.jsx)(k,{value:t,onChange:n,options:kt.map(e=>({value:e.id,label:e.displayName})),"aria-label":`STT provider`})]}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-quiet)]`,children:`API Key`}),(0,$.jsx)(P,{type:`password`,value:s,onChange:e=>c(e.target.value),placeholder:_,fullWidth:!0})]}),(0,$.jsx)(Qt,{guide:p.credentialsGuide}),(0,$.jsxs)(`div`,{className:`flex items-center justify-end gap-2`,children:[(0,$.jsx)(Yt,{onClick:h,disabled:!m||d}),d&&(0,$.jsx)(B,{className:`h-4 w-4 animate-spin text-stone-400`}),l&&(0,$.jsx)(Xt,{onClick:g})]})]})})}var tn=[{id:`mailgun`,displayName:`Mailgun`,setupSkill:`mailgun-setup`,docsUrl:`https://www.mailgun.com/`},{id:`resend`,displayName:`Resend`,setupSkill:`resend-setup`,docsUrl:`https://resend.com/`}];function nn({status:e,message:t,isLoading:n}){return n?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,children:[(0,$.jsx)(B,{className:`h-3 w-3 animate-spin`}),`Checking domain…`]}):e?e===`verified`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-positive-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,title:`DNS records have been verified. Your domain is ready to send and receive email.`,children:[(0,$.jsx)(oe,{className:`h-3 w-3`}),`Domain verified`]}):e===`pending`||e===`not_started`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-mid-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-mid-strong)]`,title:`DNS records have been provisioned. Waiting for the email provider to verify them — this usually takes a few minutes.`,children:[(0,$.jsx)(ae,{className:`h-3 w-3`}),`Verifying domain…`]}):(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-negative-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,title:`Domain verification failed. DNS records may not have propagated correctly. You could try releasing and re-registering the domain.`,children:[(0,$.jsx)(V,{className:`h-3 w-3`}),`Verification failed`]}):(0,$.jsx)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,title:`Unable to retrieve domain verification status.`,children:`Unknown status`})}function rn({assistantId:e,assistantHandle:t}){let i=l(),c=n(),[f,T]=r(),E=H.use.emailRootDomain(),[O,A]=(0,K.useState)(()=>a(It,`managed`)),[te,ne]=(0,K.useState)(()=>a(Lt,`resend`)),[N,P]=(0,K.useState)(``),[re,F]=(0,K.useState)(!1),[L,ae]=(0,K.useState)(null),[V,oe]=(0,K.useState)(``),[U,W]=(0,K.useState)(null),[ce,ue]=(0,K.useState)(!1),[G,de]=(0,K.useState)(!1),[fe,pe]=(0,K.useState)(!1),[q,J]=(0,K.useState)(!1);(0,K.useEffect)(()=>{re||!t||N||(P(t),F(!0))},[t,re,N]);let me=u({...p(),enabled:O===`managed`}),he=me.data,Y=he?.entitlements,ge=Y?.managed_email===!0,X=!!Y&&!ge,_e=!he&&me.isError&&!me.isFetching,ve=u({...m({path:{assistant_id:e??``}}),enabled:!!e&&O===`managed`&&!X}),ye=u({...S({path:{assistant_id:e??``}}),enabled:!!e&&O===`managed`&&!X}),Z=ve.data?.results?.[0],Q=ye.data?.results?.[0],be=Z?`${Z.subdomain}.${E}`:null,xe=u({...v({path:{assistant_id:e??``,id:Q?.id??``}}),enabled:!!e&&!!Q?.id&&O===`managed`,refetchOnWindowFocus:!1}),Se=u({...w({path:{assistant_id:e??``,id:Z?.id??``}}),enabled:!!e&&!!Z?.id&&O===`managed`,refetchInterval:e=>{let t=e.state.data?.status;return t===`verified`||t===`failed`?!1:1e4},refetchOnWindowFocus:!0});(0,K.useEffect)(()=>{f.get(`release`)!==`1`||!Z||Q||(pe(!0),T(e=>{let t=new URLSearchParams(e);return t.delete(`release`),t},{replace:!0}))},[Q,Z,f,T]);let Ce=d(x()),we=d(C()),Te=d(h()),Ee=d(g()),De=(0,K.useCallback)(()=>{if(!e)return;let t={assistant_id:e};i.invalidateQueries({queryKey:y({path:t})}),i.invalidateQueries({queryKey:b({path:t})}),Q?.id&&i.invalidateQueries({queryKey:_({path:{...t,id:Q.id}})}),i.invalidateQueries({queryKey:ee()})},[Q?.id,e,i]),Oe=(0,K.useCallback)(async()=>{if(!e)return;let t=N.trim().toLowerCase();if(!t){ae(`Enter a subdomain.`);return}de(!1);try{await Ce.mutateAsync({path:{assistant_id:e},body:{subdomain:t}}),P(``),ae(null),De(),I.success(`Domain ${t}.${E} registered.`)}catch(e){let t=e;ae((t&&typeof t.detail==`string`?t.detail:null)??(e instanceof Error&&e.message?e.message:`Failed to register domain.`))}},[e,E,De,Ce,N]),ke=(0,K.useCallback)(async()=>{if(!e)return;let t=V.trim().toLowerCase();if(!t){W(`Enter an email username.`);return}try{await Te.mutateAsync({path:{assistant_id:e},body:{username:t}}),oe(``),W(null),De(),I.success(`Email address created.`)}catch(e){let t=e;W((t&&typeof t.detail==`string`?t.detail:null)??(e instanceof Error&&e.message?e.message:`Failed to create email address.`))}},[e,De,Te,V]),Ae=(0,K.useCallback)(async()=>{if(!(!e||!Q?.id)){J(!1);try{await Ee.mutateAsync({path:{assistant_id:e,id:Q.id}}),De(),I.success(`Email address removed.`)}catch{I.error(`Failed to remove email address.`)}}},[Q?.id,e,Ee,De]),je=(0,K.useCallback)(async()=>{if(!e||!Z?.id)return;if(Q){I.error(`Remove the email address first.`);return}pe(!1);let t=Z.subdomain;try{await we.mutateAsync({path:{assistant_id:e,id:Z.id}}),P(t),De(),I.success(`Domain released.`)}catch{I.error(`Failed to release domain.`)}},[Q,e,we,Z?.id,Z?.subdomain,De]),Me=(0,K.useCallback)(e=>{A(e),o(It,e)},[]),Ne=(0,K.useCallback)(async()=>{ue(!0);try{O===`your-own`&&o(Lt,te),I.success(`Email settings saved.`)}finally{ue(!1)}},[te,O]),Pe=(0,K.useMemo)(()=>tn.find(e=>e.id===te)??tn[0],[te]);return(0,$.jsx)(Jt,{id:`email`,title:`Email`,subtitle:`Configure how your assistant sends and receives email`,mode:O,onModeChange:Me,children:O===`managed`?(0,$.jsxs)(`div`,{className:`space-y-4`,children:[_e&&(0,$.jsx)(M,{tone:`warning`,title:`Couldn't verify subscription status`,actions:(0,$.jsx)(D,{size:`compact`,variant:`outlined`,onClick:()=>me.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.`}),me.isLoading?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(B,{className:`h-4 w-4 animate-spin`}),`Checking subscription…`]}):X?(0,$.jsxs)(M,{tone:`info`,icon:(0,$.jsx)(R,{className:`h-4 w-4`,"aria-hidden":!0}),title:`Get a dedicated email address for your assistant`,actions:(0,$.jsx)(D,{size:`compact`,onClick:()=>c(`${s.settings.billing}?adjust_plan`),children:`Upgrade to Pro`}),children:[`Pro plans include a managed`,` `,`<your-subdomain>.${E}`,` inbox — no provider setup required. Or switch to `,(0,$.jsx)(`strong`,{children:`Your Own`}),` to bring an existing provider.`]}):e?Z?Q?(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-quiet)]`,children:`Address`}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:Q.address}),(0,$.jsx)(nn,{status:Se.data?.status,message:Se.data?.message,isLoading:Se.isLoading}),(0,$.jsx)(D,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(se,{}),onClick:()=>J(!0),disabled:Ee.isPending,"aria-label":`Remove email address`})]}),(0,$.jsx)(j,{open:q,title:`Remove Email Address`,message:(0,$.jsxs)($.Fragment,{children:[`Are you sure you want to remove `,(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`,children:Q.address}),`? Your assistant will no longer be able to send or receive email at this address.`]}),confirmLabel:`Remove`,destructive:!0,onConfirm:Ae,onCancel:()=>J(!1)})]}),xe.data?.usage&&(0,$.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:[xe.data.usage.sent_today,` /`,` `,xe.data.usage.daily_limit,` sent today ·`,` `,xe.data.usage.received_today,` received`]})]}):(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-quiet)]`,children:`Domain`}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:[Z.subdomain,`.`,E]}),(0,$.jsx)(nn,{status:Se.data?.status,message:Se.data?.message,isLoading:Se.isLoading}),(0,$.jsx)(D,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(se,{}),onClick:()=>pe(!0),disabled:we.isPending,"aria-label":`Release domain`})]}),(0,$.jsx)(j,{open:fe,title:`Release Domain`,message:(0,$.jsxs)($.Fragment,{children:[`Are you sure you want to release `,(0,$.jsxs)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`,children:[Z.subdomain,`.`,E]}),`? The subdomain will become available for others to claim.`]}),confirmLabel:`Release`,destructive:!0,onConfirm:je,onCancel:()=>pe(!1)})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-quiet)]`,children:`Email address`}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex h-9 min-w-0 flex-1 items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${U?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[(0,$.jsx)(`input`,{value:V,onChange:e=>{oe(e.target.value.toLowerCase()),U&&W(null)},placeholder:`hi`,"aria-label":`Email username`,"aria-invalid":!!U,className:`h-full min-w-0 flex-1 bg-transparent pl-3 pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`@`,be]})]}),(0,$.jsx)(D,{onClick:ke,disabled:Te.isPending||!V.trim(),children:Te.isPending?`Creating…`:`Create`})]}),U&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:U})]})]}):(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-quiet)]`,children:`Subdomain`}),(0,$.jsx)(ie,{subdomain:N,onSubdomainChange:e=>{P(e),L&&ae(null)},domainSuffix:E,subdomainPlaceholder:`my-assistant`,error:L}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Each assistant gets its own subdomain. Lowercase letters, numbers, and hyphens only.`}),(0,$.jsx)(D,{onClick:()=>de(!0),disabled:Ce.isPending||!N.trim(),children:Ce.isPending?`Registering…`:`Register`}),(0,$.jsx)(j,{open:G,title:`Set Subdomain`,message:(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`,children:N.trim().toLowerCase()||`subdomain`}),` will also become your assistant's public handle. You won't be able to change it once set.`]}),confirmLabel:`Confirm`,onConfirm:Oe,onCancel:()=>de(!1)})]}):(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`No assistant found yet.`})]}):(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,$.jsx)(k,{value:te,onChange:e=>ne(e),options:tn.map(e=>({value:e.id,label:e.displayName}))})]}),(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(le,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsxs)(`span`,{children:[`Configure `,Pe.displayName,` via the assistant CLI: ask the assistant to run the`,` `,(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`,children:Pe.setupSkill}),` `,`skill. It walks you through storing the API key, detecting the domain, and (optionally) wiring up an inbound webhook.`]}),(0,$.jsxs)(`a`,{href:Pe.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[`Open `,Pe.displayName,(0,$.jsx)(z,{className:`h-3 w-3`})]})]})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Yt,{onClick:Ne,disabled:ce}),ce&&(0,$.jsx)(B,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`})]})]})})}function an(){let[e,t]=(0,K.useState)(!1),[n,r]=(0,K.useState)(!1),[s,f]=(0,K.useState)(null),[p,m]=(0,K.useState)(null),[h,g]=(0,K.useState)(!1),[_,v]=(0,K.useState)({}),[y,b]=(0,K.useState)([]),[x,S]=(0,K.useState)(!1),[C,w]=(0,K.useState)(!1),[ee,A]=(0,K.useState)(!1);(0,K.useEffect)(()=>{let e=window.location.hash.slice(1);e&&requestAnimationFrame(()=>{document.getElementById(e)?.scrollIntoView({block:`start`})})},[]);let j=l(),{data:te}=u(T()),M=te?.results?.[0]?.id,{data:ne}=u({queryKey:E(M),queryFn:async()=>{let{data:e}=await c.get({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:M},throwOnError:!0});return e},enabled:!!M,staleTime:3e4,refetchOnWindowFocus:!1}),N=d({mutationFn:async e=>{let{data:t}=await c.post({url:`/v1/assistants/{assistant_id}/secrets/`,path:{assistant_id:e.assistantId},body:e.body,throwOnError:!0});return t}}),re=d({mutationFn:async e=>{let{data:t}=await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:e.assistantId},body:e.partial,throwOnError:!0});return t}}),F=d({mutationFn:async e=>{let{data:t}=await c.put({url:`/v1/assistants/{assistant_id}/model/image-gen`,path:{assistant_id:e.assistantId},body:{modelId:e.modelId},throwOnError:!0});return t}}),L=(0,K.useCallback)(async()=>M||((await j.fetchQuery(T())).results?.[0]?.id??null),[M,j]),R=(0,K.useCallback)(async(e,t)=>{try{let n=await L();if(!n)throw I.error(`No assistant found. Please hatch an assistant first.`),Error(`No assistant found`);At(await N.mutateAsync({assistantId:n,body:{value:t,type:`api_key`,name:e}}))}catch(t){throw t instanceof Error&&t.message===`No assistant found`||I.error(`Failed to save ${e} API key. Please try again.`),G(t,{context:`provision_provider_key`,userMessage:`Failed to provision ${e} API key`}),t}},[N,L]),ie=(0,K.useCallback)(async e=>{let t=await L();if(!t)throw I.error(`No assistant found. Please hatch an assistant first.`),Error(`No assistant found`);try{await re.mutateAsync({assistantId:t,partial:e})}catch(e){throw I.error(`Failed to update assistant configuration. Please try again.`),G(e,{context:`patch_daemon_config`,userMessage:`Failed to patch daemon config`}),e}},[re,L]),ae=(0,K.useCallback)(async e=>{let t=await L();if(!t)throw I.error(`No assistant found. Please hatch an assistant first.`),Error(`No assistant found`);try{await F.mutateAsync({assistantId:t,modelId:e})}catch(t){throw I.error(`Failed to update image generation model. Please try again.`),G(t,{context:`set_image_gen_model`,userMessage:`Failed to set image gen model ${e}`}),t}},[F,L]),[V,oe]=(0,K.useState)(()=>a(Pt,`your-own`)),[H,U]=(0,K.useState)(()=>a(Ft,`inference-provider-native`)),[se,ce]=(0,K.useState)(V),[ue,de]=(0,K.useState)(H),[fe,pe]=(0,K.useState)(``),[q,J]=(0,K.useState)(!1),[me,he]=(0,K.useState)(0),Y=(0,K.useRef)({assistantId:null,provider:null}),[ve,Z]=(0,K.useState)(()=>a(Mt,`your-own`)),[Q,be]=(0,K.useState)(()=>a(Nt,`gemini-3.1-flash-image-preview`)),[xe,Se]=(0,K.useState)(``),we=ye.has(H),De=fe.trim().length>0,Oe=e||V===`your-own`&&we&&!q&&!De||!(V!==se||(V===`managed`?`inference-provider-native`:H)!==ue)&&!De,ke=gt(_e[H]??`Enter your API key`,q),je=(0,K.useMemo)(()=>{let e=y.filter(e=>e in _).map(e=>({name:e,..._[e]})),t=new Set(y),n=Object.entries(_).filter(([e])=>!t.has(e)).map(([e,t])=>({name:e,...t}));return[...e,...n]},[_,y]),Me=W.use.queryComplexityRouting(),Ne=(0,K.useMemo)(()=>Ce(Te(je,[s]),Me),[je,s,Me]),Pe=(0,K.useRef)(!1);(0,K.useEffect)(()=>{if(!ne||Pe.current)return;Pe.current=!0;let e=jt(ne);if(e.activeProfile!==void 0){let t=e.activeProfile??null;f(t),m(t)}e.profiles&&v(e.profiles),e.profileOrder!==void 0&&b(e.profileOrder),e.webSearchMode&&(oe(e.webSearchMode),ce(e.webSearchMode)),e.webSearchProvider&&(U(e.webSearchProvider),de(e.webSearchProvider)),e.imageGenMode&&Z(e.imageGenMode)},[ne]),(0,K.useEffect)(()=>{let e=!1,t=Y.current,n={assistantId:M??null,provider:H},r=t.assistantId!==n.assistantId||t.provider!==n.provider;return Y.current=n,(async()=>{if(await Promise.resolve(),!e){if(!M||!we){J(!1);return}r&&J(!1);try{let t=await st(M,`api_key`,H);if(e)return;J(t.found)}catch(t){if(e)return;J(!1),G(t,{context:`settings-ai-web-search-read-secret`})}}})(),()=>{e=!0}},[M,we,H,me]);let Fe=Object.entries(ne?.llm?.callSites??{}).filter(([e,t])=>e!==`mainAgent`&&(t?.profile!=null||t?.provider!=null||t?.model!=null)).length,Ie=Fe===1?`1 Override`:Fe>0?`${Fe} Overrides`:`Overrides`,Le=s!==p,Re=(0,K.useCallback)(async()=>{if(!M){I.error(`Assistant not ready. Please try again.`);return}g(!0);try{await c.patch({url:`/v1/assistants/{assistant_id}/config`,path:{assistant_id:M},body:{llm:{activeProfile:s}},headers:{"Content-Type":`application/json`},throwOnError:!0}),m(s),j.invalidateQueries({queryKey:E(M)}),I.success(`Profile saved.`)}catch{I.error(`Failed to switch profile. Please try again.`)}finally{g(!1)}},[s,M,j]),ze=(0,K.useCallback)(e=>{e.profiles&&(v(t=>{let n={...t};for(let[t,r]of Object.entries(e.profiles))r===null?delete n[t]:n[t]=r;return n}),j.invalidateQueries({queryKey:E(M)})),e.profileOrder!==void 0&&b(e.profileOrder),e.activeProfile!==void 0&&(f(e.activeProfile),m(e.activeProfile)),e.callSites!==void 0&&j.invalidateQueries({queryKey:E(M)})},[M,j]),Be=async()=>{t(!0);let e=fe.trim(),n=V===`managed`?`inference-provider-native`:H,r=Wt(n),i=V===`your-own`&&we&&e.length>0,a=!1;try{i&&await R(n,e),await ie({services:{"web-search":{mode:V,provider:n}}}),a=!0,j.invalidateQueries({queryKey:E(M)})}catch{}if(!a){t(!1);return}try{o(Pt,V),o(Ft,n),U(n),ce(V),de(n),i&&(r&&o(r,e),J(!0),he(e=>e+1),pe(``)),I.success(`Web search settings saved.`)}catch(e){G(e,{context:`settings-ai-web-search-persist-local`,userMessage:`Saved, but local preferences could not be written.`})}finally{t(!1)}},Ve=()=>{let e=Wt(H);e&&i(e),J(!1),pe(``),U(`inference-provider-native`),o(Ft,`inference-provider-native`)},He=async()=>{r(!0);let e=xe.trim(),t=ve===`your-own`&&e.length>0,n=!1;try{t&&await R(`gemini`,e),await ie({services:{"image-generation":{mode:ve}}}),await ae(Q),n=!0,j.invalidateQueries({queryKey:E(M)})}catch{}if(!n){r(!1);return}try{o(Mt,ve),o(Nt,Q),t&&(o(Ut,e),Se(``)),I.success(`Image generation settings saved.`)}catch(e){G(e,{context:`settings-ai-image-gen-persist-local`,userMessage:`Saved, but local preferences could not be written.`})}finally{r(!1)}};return(0,$.jsxs)(`div`,{className:`max-w-[940px] space-y-5`,children:[(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] px-4 py-2.5`,children:[(0,$.jsx)(le,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-tertiary)]`}),(0,$.jsxs)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:[`Managed services are metered and deducted from your Vellum account balance.`,` `,(0,$.jsxs)(`a`,{href:`https://www.vellum.ai/docs/pricing`,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--primary-base)] hover:underline`,children:[`View pricing`,(0,$.jsx)(z,{className:`h-3.5 w-3.5`})]})]})]}),(0,$.jsx)(Zt,{title:`Language Model`,subtitle:`Configure the LLMs that power your assistant`,children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Default Profile`}),(0,$.jsx)(k,{value:s??``,onChange:e=>{f(e===``?null:e)},placeholder:`Select a default profile…`,options:Ne.map(e=>({value:e.name,label:e.name===`auto`?`Automatically switch between profiles`:Ee(e)}))}),Me&&s===`auto`&&(0,$.jsx)(`div`,{className:`flex items-center gap-2 rounded-lg bg-[var(--surface-warning-subtle)] px-3 py-2`,children:(0,$.jsx)(`span`,{className:`text-body-small-default text-[var(--content-warning)]`,children:`Auto may use more powerful models when needed, which can increase costs.`})}),Ne.length===0?(0,$.jsx)(O,{variant:`body-small-default`,as:`p`,className:`mt-1 text-(--content-tertiary)`,children:`No profiles yet. Click Profiles below to create one.`}):null]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:()=>A(!0),children:`Providers`}),(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:()=>S(!0),children:`Profiles`}),(0,$.jsx)(D,{variant:`outlined`,size:`compact`,onClick:()=>w(!0),children:Ie})]}),Le&&(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Yt,{onClick:Re,disabled:h}),h&&(0,$.jsx)(B,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`})]})]})}),(0,$.jsx)(Jt,{title:`Web Search`,subtitle:`Configure how your assistant should search the web`,mode:V,onModeChange:e=>oe(e),children:V===`managed`?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Web search is included with managed inference.`}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Yt,{onClick:Be,disabled:Oe}),e&&(0,$.jsx)(B,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`})]})]}):(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Provider`}),(0,$.jsx)(k,{value:H,onChange:U,options:ge.map(e=>({value:e,label:X[e]??e}))})]}),we&&(0,$.jsx)(P,{label:`API Key`,type:`password`,value:fe,onChange:e=>pe(e.target.value),placeholder:ke,fullWidth:!0}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Yt,{onClick:Be,disabled:Oe}),e&&(0,$.jsx)(B,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),we&&(0,$.jsx)(Xt,{onClick:Ve,filled:!0})]})]})}),(0,$.jsx)(rn,{assistantId:M,assistantHandle:te?.results?.[0]?.handle}),(0,$.jsx)(Jt,{title:`Image Generation`,subtitle:`Configure which model your assistant uses to generate images`,mode:ve,onModeChange:e=>Z(e),children:ve===`managed`?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Active Model`}),(0,$.jsxs)(`div`,{className:`flex items-end gap-3`,children:[(0,$.jsx)(k,{className:`flex-1`,value:Q,onChange:be,options:wt.map(e=>({value:e,label:Tt[e]??e}))}),(0,$.jsx)(Yt,{onClick:He,disabled:n}),n&&(0,$.jsx)(B,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`})]})]}):(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsx)(P,{label:`API Key`,type:`password`,value:xe,onChange:e=>Se(e.target.value),placeholder:`Enter your Gemini API key`,fullWidth:!0}),(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:`Active Model`}),(0,$.jsx)(k,{value:Q,onChange:be,options:wt.map(e=>({value:e,label:Tt[e]??e}))})]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(Yt,{onClick:He,disabled:n}),n&&(0,$.jsx)(B,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}),(0,$.jsx)(Xt,{onClick:()=>{i(Ut),Se(``),be(`gemini-3.1-flash-image-preview`),o(Nt,`gemini-3.1-flash-image-preview`)}})]})]})}),(0,$.jsx)($t,{}),(0,$.jsx)(en,{}),M&&(0,$.jsx)(ft,{isOpen:x,profiles:_,profileOrder:y,activeProfile:s,assistantId:M,callSiteOverrides:ne?.llm?.callSites??{},onClose:()=>S(!1),onProfilesChanged:ze}),M&&(0,$.jsx)(Ae,{isOpen:C,onClose:()=>w(!1),assistantId:M,orderedProfiles:je,persistedOverrides:ne?.llm?.callSites??{},daemonConfigLoaded:!!ne,onSaved:()=>{j.invalidateQueries({queryKey:E(M)})}}),M&&(0,$.jsx)(St,{isOpen:ee,assistantId:M,onClose:()=>A(!1)})]})}export{an as AiPage};
|