@vellumai/web 0.8.9 → 0.8.10-dev.202606092238.d04fd59
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{BundleConfirmPage-CkmGRzTV.js → BundleConfirmPage-DKy6pU-l.js} +1 -1
- package/dist/assets/{QueryClientProvider-DNHWXaGq.js → QueryClientProvider-DKhXIxGb.js} +1 -1
- package/dist/assets/{account-page-DLWgiDpL.js → account-page-ksdkVEoq.js} +1 -1
- package/dist/assets/{add-credits-modal-KR3l-hlL.js → add-credits-modal-DYHHJ6-C.js} +1 -1
- package/dist/assets/{advanced-page-CM1prrIX.js → advanced-page-C9xCMyXC.js} +1 -1
- package/dist/assets/ai-page-BirpIYUe.js +1 -0
- package/dist/assets/{angular-html-EHq37VRB.js → angular-html-zCXhY1KB.js} +1 -1
- package/dist/assets/{angular-ts-CyvnMw9x.js → angular-ts-DRhezBku.js} +1 -1
- package/dist/assets/{api-DEEx3e9R.js → api-BImySG7-.js} +2 -2
- package/dist/assets/{api-key-screen-_pmVhsup.js → api-key-screen-DZWjl9Uy.js} +1 -1
- package/dist/assets/{apl-CDFqSPmq.js → apl-Dip5l_vj.js} +1 -1
- package/dist/assets/{archive-page-C3-LAH2o.js → archive-page-ChoHyrtL.js} +1 -1
- package/dist/assets/{assistant-identity-store-dQ1LxIr0.js → assistant-identity-store-DT1PadE6.js} +1 -1
- package/dist/assets/assistant-status-panel-fF10xMSl.js +1 -0
- package/dist/assets/{astro-DwtMGmbh.js → astro-EyRVPx3w.js} +1 -1
- package/dist/assets/auth-store-D30yiLfT.js +6 -0
- package/dist/assets/{avatar-api-BwHmtSnS.js → avatar-api-Dr2Xdn6g.js} +1 -1
- package/dist/assets/billing-page-C48Gpm7y.js +34 -0
- package/dist/assets/{blade-CxYcTDW-.js → blade-vTcSRdar.js} +1 -1
- package/dist/assets/{bsl-CVaQXkX-.js → bsl-C4C9tiXk.js} +1 -1
- package/dist/assets/{cairo-2Y07A7vZ.js → cairo-CVp4zwVc.js} +1 -1
- package/dist/assets/{cobol-B5bQhoAq.js → cobol-BYeIOxjt.js} +1 -1
- package/dist/assets/{coffee-CX-zNI46.js → coffee-CjO2NSoU.js} +1 -1
- package/dist/assets/{command-palette-BcHAzecz.js → command-palette-C1l5ofqB.js} +1 -1
- package/dist/assets/{community-page-BCX3CsOx.js → community-page-DwXc4kwz.js} +1 -1
- package/dist/assets/{connect-page-DXB8Xkpw.js → connect-page-BFWwTO9l.js} +1 -1
- package/dist/assets/contacts-page-route-F6XZRKBa.js +1 -0
- package/dist/assets/{cpp-D-wqygg_.js → cpp-HpGV_MP2.js} +1 -1
- package/dist/assets/{crystal-2rXzMO-C.js → crystal-Kl5EERlI.js} +1 -1
- package/dist/assets/debug-page-URJjDjM1.js +3 -0
- package/dist/assets/deploy-dialogs-ClCvUVnc.js +1 -0
- package/dist/assets/developer-page-DNK18MDy.js +1 -0
- package/dist/assets/devices-page-CrnvNEeB.js +1 -0
- package/dist/assets/{dist-BmaCqMgD.js → dist-D-gmKJXk.js} +3 -3
- package/dist/assets/{document-viewer-page-D-zkJQlm.js → document-viewer-page-C46FDTNI.js} +1 -1
- package/dist/assets/{earn-credits-modal-RXLM_09P.js → earn-credits-modal-BGhX_5ft.js} +1 -1
- package/dist/assets/{edge-DxiTxESb.js → edge-DGISsE7e.js} +1 -1
- package/dist/assets/{elixir-BqExV7Mb.js → elixir-CHJlroZn.js} +1 -1
- package/dist/assets/{elm-DoHcZ_98.js → elm-bh7Za-V7.js} +1 -1
- package/dist/assets/{emails-page-BFlPmeFT.js → emails-page-P_Aebz0r.js} +1 -1
- package/dist/assets/environment-store-Du3C86B3.js +1 -0
- package/dist/assets/{erb-T1Yd4grC.js → erb-Dx3hsAU5.js} +1 -1
- package/dist/assets/{erlang-sMV4xc3e.js → erlang-Dh78VBwZ.js} +1 -1
- package/dist/assets/{esm-CautLOfa.js → esm-B1Fqlo9O.js} +2 -2
- package/dist/assets/{esm-D_HYq01-.js → esm-B1Y2eGdn.js} +2 -2
- package/dist/assets/{esm-DTgeUUet.js → esm-Cq05hC23.js} +2 -2
- package/dist/assets/{esm-BfiJ42Ad.js → esm-CuaE1IhD.js} +2 -2
- package/dist/assets/{esm-DZPMmLdo.js → esm-td3qjeeo.js} +2 -2
- package/dist/assets/feature-flag-catalog-CMMjHWYs.js +1 -0
- package/dist/assets/{file-markdown-DX5x9ziL.js → file-markdown-Dg4hi3qr.js} +1 -1
- package/dist/assets/{fortran-fixed-form-DKnaUnzq.js → fortran-fixed-form-DpgVNL7P.js} +1 -1
- package/dist/assets/{fsharp-BizN7JaO.js → fsharp-DEY1dy_u.js} +1 -1
- package/dist/assets/{gdresource-C03Nu36p.js → gdresource-DBiQapHp.js} +1 -1
- package/dist/assets/general-page-GMvdXotk.js +1 -0
- package/dist/assets/{git-commit-Dlbu4g9u.js → git-commit-BiEwWbPC.js} +1 -1
- package/dist/assets/{git-rebase-Bp5nCjBJ.js → git-rebase-BicMN-04.js} +1 -1
- package/dist/assets/{glimmer-js-BRNkuAjG.js → glimmer-js-C0zBf3_m.js} +1 -1
- package/dist/assets/{glimmer-ts-C-WDx-0B.js → glimmer-ts-f98bFwB2.js} +1 -1
- package/dist/assets/{glsl-CjrHb9ps.js → glsl-B3Pxe7pC.js} +1 -1
- package/dist/assets/{graphql-vJOsI9Q0.js → graphql-CY-HoXoG.js} +1 -1
- package/dist/assets/{hack-TawZ7_H0.js → hack-DhhyRlGA.js} +1 -1
- package/dist/assets/{haml-Ck1tHO4J.js → haml-sYDXJgc-.js} +1 -1
- package/dist/assets/{handlebars-CW8KnsAX.js → handlebars-t3QQoRVd.js} +1 -1
- package/dist/assets/hatching-screen-Da-Bm1Uz.js +1 -0
- package/dist/assets/home-page-route-DjcFnv_3.js +1 -0
- package/dist/assets/{hosting-screen-XKK-VeRo.js → hosting-screen-B4qAd_I5.js} +1 -1
- package/dist/assets/{html-derivative-CxaJ6DvG.js → html-derivative-BYejrcyg.js} +1 -1
- package/dist/assets/{html-Dni-tmtM.js → html-ygtF60Jf.js} +1 -1
- package/dist/assets/{http-Dp4EVAWP.js → http-DA2eDify.js} +1 -1
- package/dist/assets/{hurl-CSfNp96n.js → hurl-kllM_Zi3.js} +1 -1
- package/dist/assets/{hxml-DHyd-nrX.js → hxml-C59SitFI.js} +1 -1
- package/dist/assets/identity-page-route-BRYHfA1_.js +1 -0
- package/dist/assets/index-2O_rdM3o.js +124 -0
- package/dist/assets/index-BJIuhctB.css +2 -0
- package/dist/assets/{inspect-page-BrUzgvle.js → inspect-page-BfC757c4.js} +2 -2
- package/dist/assets/{install-Uj6CrGld.js → install-CsLxFnHh.js} +1 -1
- package/dist/assets/integrations-page-B8CzH_sQ.js +1 -0
- package/dist/assets/intelligence-layout-t5UYNVRv.js +1 -0
- package/dist/assets/{jinja-CijccQJ8.js → jinja-BFjIqoGM.js} +1 -1
- package/dist/assets/{jison-Bt8ZjqFZ.js → jison-Duqf5Hoo.js} +1 -1
- package/dist/assets/{julia-BiriYc35.js → julia-DSXlZ-CR.js} +1 -1
- package/dist/assets/{just-DHvFRFSz.js → just-FNQw4IFx.js} +1 -1
- package/dist/assets/{keyboard-shortcuts-page-QHFTyWOo.js → keyboard-shortcuts-page-J2-2HjlB.js} +1 -1
- package/dist/assets/{latex-Dyl4S9re.js → latex-DlF6CdpB.js} +1 -1
- package/dist/assets/{lib-B8eh8Q36.js → lib-DllcFWNr.js} +1 -1
- package/dist/assets/library-detail-page-CiFGN5eT.js +1 -0
- package/dist/assets/library-page-Bk-TEMro.js +1 -0
- package/dist/assets/{liquid-BB4lKYGB.js → liquid-iAMFTiMZ.js} +1 -1
- package/dist/assets/{login-flow-Bi4ujzeb.js → login-flow-DEHH2wyu.js} +1 -1
- package/dist/assets/{login-page-BOH-K9Pj.js → login-page-FpubrtfC.js} +1 -1
- package/dist/assets/{logout-page-B1QXMyiH.js → logout-page-wOncKxcs.js} +1 -1
- package/dist/assets/{logs-layout-zcrIEQRy.js → logs-layout-HEyiaNeu.js} +1 -1
- package/dist/assets/{lua-BvVuKqEk.js → lua-DpsgekiX.js} +1 -1
- package/dist/assets/{marko-S1DsBE-c.js → marko-Cz4JDISW.js} +1 -1
- package/dist/assets/{mdc-Dh4PJVso.js → mdc-Dn9mfnt1.js} +1 -1
- package/dist/assets/{memory-router-playground-page-CeZ4XMd2.js → memory-router-playground-page-BEYs0_fX.js} +1 -1
- package/dist/assets/{misc-MEUnNRwX.js → misc-CR3xetKg.js} +1 -1
- package/dist/assets/{mobile-sidebar-drawer-BjPgVWjw.js → mobile-sidebar-drawer-B2AMuPtF.js} +1 -1
- package/dist/assets/{native-file-CS-pobfT.js → native-file-1BJ-C8Ih.js} +2 -2
- package/dist/assets/{nextflow-BE6HS58m.js → nextflow-Cydz5woa.js} +1 -1
- package/dist/assets/{nginx-BZIz2mri.js → nginx-CPnTJR0-.js} +1 -1
- package/dist/assets/{nim-DTA68UpI.js → nim-D8bBRDeW.js} +1 -1
- package/dist/assets/notifications-page-DyYJfkpb.js +1 -0
- package/dist/assets/{oauth-complete-page--ojS1AzN.js → oauth-complete-page-B-qrDb1s.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-D5wVrngS.js → oauth-popup-complete-page-BXdWxDKA.js} +2 -2
- package/dist/assets/{onboarding-layout-BIVa2BnX.js → onboarding-layout-D7jrtU9X.js} +1 -1
- package/dist/assets/{perl-G6ZZQsfy.js → perl-v02QdaNb.js} +1 -1
- package/dist/assets/{php-BeUbGztq.js → php-zj0a0PH4.js} +1 -1
- package/dist/assets/{platform-loopback-page--72P008D.js → platform-loopback-page-SJmUeCW3.js} +1 -1
- package/dist/assets/plugin-detail-page-jdKGuZua.js +1 -0
- package/dist/assets/plugins-page-DYWi9moT.js +1 -0
- package/dist/assets/pre-chat-flow-B0lRylR7.js +1 -0
- package/dist/assets/privacy-page-BbUnB63o.js +1 -0
- package/dist/assets/{privacy-screen-CEsX-1V3.js → privacy-screen-Bc1h_yqP.js} +1 -1
- package/dist/assets/{provider-callback-page-DDEEkkDM.js → provider-callback-page-PWQEM7Uf.js} +1 -1
- package/dist/assets/{provider-signup-page-CZqSVAQl.js → provider-signup-page-GrwPasM2.js} +1 -1
- package/dist/assets/{pug-D45MnfGZ.js → pug-B_yv71Gi.js} +1 -1
- package/dist/assets/{qml-COPmH2mF.js → qml-D7LEYMQS.js} +1 -1
- package/dist/assets/{query-tags-Cez88bzY.js → query-tags-LUKTkOVt.js} +1 -1
- package/dist/assets/{quick-input-page-nd4iN-tG.js → quick-input-page-BNav1bMy.js} +1 -1
- package/dist/assets/{razor-CQW42Ogp.js → razor-DTRM2MVm.js} +1 -1
- package/dist/assets/react-query.gen-mIY9pJOj.js +1 -0
- package/dist/assets/resolved-assistants-store-Cr2Xs5H7.js +1 -0
- package/dist/assets/{review-terms-screen-CYFxXWmR.js → review-terms-screen-CMm-1vty.js} +1 -1
- package/dist/assets/{rst-C9ZVT0AG.js → rst-BgbnsuG7.js} +1 -1
- package/dist/assets/{ruby-DDticLOn.js → ruby-BcND4S4d.js} +1 -1
- package/dist/assets/{sas-C5rCQJBu.js → sas-PQ_FAB8E.js} +1 -1
- package/dist/assets/schedules-page-B4gh0t9O.js +1 -0
- package/dist/assets/{scss-CLfSZysM.js → scss-BKVvJ6Tv.js} +1 -1
- package/dist/assets/select-assistant-screen-CCLiTl7z.js +1 -0
- package/dist/assets/settings-layout-CbTwsTIp.js +1 -0
- package/dist/assets/{shaderlab-BEussGgZ.js → shaderlab-CNPjs8vN.js} +1 -1
- package/dist/assets/share-feedback-modal-CPuMeDtZ.js +1 -0
- package/dist/assets/{shellsession-DA8c5lD0.js → shellsession-DU8Ey176.js} +1 -1
- package/dist/assets/{sidebar-tree-Cme65q7r.js → sidebar-tree-Bk_8JYst.js} +1 -1
- package/dist/assets/{signup-page-BBM_CboU.js → signup-page-DjPMwdox.js} +1 -1
- package/dist/assets/skills-page-B4_4mzCF.js +1 -0
- package/dist/assets/{sounds-page-DpRhAAJv.js → sounds-page-DwUKEw4I.js} +1 -1
- package/dist/assets/{soy-CBeww7qH.js → soy-Ci6GbL4f.js} +1 -1
- package/dist/assets/{sparql-DOILO3Ud.js → sparql-BKV3wUW9.js} +1 -1
- package/dist/assets/{stata-D4jcvFy6.js → stata-Bi_GMo5-.js} +1 -1
- package/dist/assets/{step-indicator-dots-Dmj2aMuo.js → step-indicator-dots-AUH0OxRh.js} +1 -1
- package/dist/assets/{subagent-detail-panel-Dq-GDI61.js → subagent-detail-panel-D-XlDRYj.js} +2 -2
- package/dist/assets/{surrealql-B68HrEZ7.js → surrealql-dIkFiR4G.js} +1 -1
- package/dist/assets/{svelte-93u-3tLs.js → svelte-CdZhPRKv.js} +1 -1
- package/dist/assets/system-events-page-DF2OjtH2.js +1 -0
- package/dist/assets/{templ-Ctw_ylZL.js → templ-BLq_s-G-.js} +1 -1
- package/dist/assets/{tex-M6sV0M4v.js → tex-D30QbexG.js} +1 -1
- package/dist/assets/{tiptap-document-editor-DucA37Km.js → tiptap-document-editor-D1pABw4E.js} +1 -1
- package/dist/assets/tool-detail-panel-BnyakFoH.js +1 -0
- package/dist/assets/trace-page-kfUs5jCl.js +1 -0
- package/dist/assets/{ts-tags-Qp4WvCJw.js → ts-tags-Bwxki5oV.js} +1 -1
- package/dist/assets/{twig-CogzkHzb.js → twig-grGGoQAh.js} +1 -1
- package/dist/assets/upgrade-cancel-page-Dd1Vcbn0.js +1 -0
- package/dist/assets/upgrade-success-page-ftgOlbzZ.js +1 -0
- package/dist/assets/{usage-page-D6cPGTNn.js → usage-page-CyAw9bI3.js} +1 -1
- package/dist/assets/{use-active-assistant-id-BIhArlF_.js → use-active-assistant-id-mdQQtMSE.js} +1 -1
- package/dist/assets/{use-current-platform-assistant-Cu95G65M.js → use-current-platform-assistant-5lER6OPo.js} +1 -1
- package/dist/assets/use-is-org-ready-Cg5qKI_m.js +1 -0
- package/dist/assets/{use-oauth-complete-deep-link-listener-BQZGv8sr.js → use-oauth-complete-deep-link-listener-fQeEHUzI.js} +1 -1
- package/dist/assets/{use-onboarding-login-Cd72-1Qe.js → use-onboarding-login-C3KtqHdc.js} +1 -1
- package/dist/assets/{useMutation-BuofVRHk.js → useMutation-Lj4VunQV.js} +1 -1
- package/dist/assets/{useQuery-D2zf6Uhu.js → useQuery-B45lW1Kk.js} +1 -1
- package/dist/assets/{utils-Csn9OVRE.js → utils-B7UsqOcg.js} +1 -1
- package/dist/assets/{viewer-store-Cc5YI5ay.js → viewer-store-z1KItSj2.js} +1 -1
- package/dist/assets/{voice-page-D8IZifkA.js → voice-page-C1iOD36K.js} +1 -1
- package/dist/assets/{vue-CKYV05Wl.js → vue-CLVGNVCy.js} +1 -1
- package/dist/assets/{vue-html-CD969jd0.js → vue-html-iP5bcbig.js} +1 -1
- package/dist/assets/{vue-vine-BPU_80oA.js → vue-vine-C_3MulQO.js} +1 -1
- package/dist/assets/{weather-forecast-display-DgqpUX3a.js → weather-forecast-display-DrnAnLPO.js} +1 -1
- package/dist/assets/{web-DgJRXlLM.js → web-Bm_Gqq7D.js} +1 -1
- package/dist/assets/{welcome-screen-B2tizoBp.js → welcome-screen-KFS39Pkq.js} +1 -1
- package/dist/assets/workspace-page-Chs1bcss.js +1 -0
- package/dist/assets/{xml-B-TXQRmh.js → xml-DQi-DmTw.js} +1 -1
- package/dist/assets/{xsl-hDlDZuus.js → xsl-satyhDVQ.js} +1 -1
- package/dist/index.html +31 -32
- package/package.json +1 -1
- package/dist/assets/ai-page-DfYw7V-1.js +0 -1
- package/dist/assets/assistant-feature-flag-store-0382ImYF.js +0 -1
- package/dist/assets/assistant-status-panel-AFf9Mjwp.js +0 -1
- package/dist/assets/auth-store-CiQCAKS1.js +0 -6
- package/dist/assets/billing-page-o68CnS02.js +0 -34
- package/dist/assets/contacts-page-route-8pMuZN4b.js +0 -1
- package/dist/assets/debug-page-CS2bRZp9.js +0 -3
- package/dist/assets/deploy-dialogs-EImApd6S.js +0 -1
- package/dist/assets/developer-page-C6j4GZcn.js +0 -1
- package/dist/assets/devices-page-C1id1sIt.js +0 -1
- package/dist/assets/feature-flag-catalog-D6XoH2hm.js +0 -1
- package/dist/assets/general-page-q3bvwcHU.js +0 -1
- package/dist/assets/hatching-screen-6TxMgPxR.js +0 -1
- package/dist/assets/home-page-route-mDiWda9f.js +0 -1
- package/dist/assets/identity-page-route-BCiHzwmk.js +0 -1
- package/dist/assets/index-BjEJFZTJ.js +0 -124
- package/dist/assets/index-D3Lqh6yW.css +0 -2
- package/dist/assets/integrations-page-BL9LXHFe.js +0 -1
- package/dist/assets/intelligence-layout-BwYGHEw7.js +0 -1
- package/dist/assets/library-detail-page-nUyEDHke.js +0 -1
- package/dist/assets/library-page-B0AzCNkJ.js +0 -1
- package/dist/assets/notifications-page-omwlGRbj.js +0 -1
- package/dist/assets/plugin-detail-page-Co_JFwRa.js +0 -1
- package/dist/assets/plugins-page-D7VpzRFc.js +0 -1
- package/dist/assets/pre-chat-flow-BoePpEU7.js +0 -1
- package/dist/assets/privacy-page-DpKZ9VJG.js +0 -1
- package/dist/assets/react-query.gen-B8xaBreR.js +0 -1
- package/dist/assets/resolved-assistants-store-ub66utfl.js +0 -1
- package/dist/assets/schedules-page-Dk-YbWK3.js +0 -1
- package/dist/assets/select-assistant-screen-CYpMf074.js +0 -1
- package/dist/assets/settings-layout-C_sqrv5S.js +0 -1
- package/dist/assets/share-feedback-modal-Cg8gci5A.js +0 -1
- package/dist/assets/skills-page-J6mZv9bN.js +0 -1
- package/dist/assets/system-events-page-DNln669W.js +0 -1
- package/dist/assets/tool-detail-panel-CwQTuANT.js +0 -1
- package/dist/assets/trace-page-CKTCZonQ.js +0 -1
- package/dist/assets/upgrade-cancel-page-BsW23ioD.js +0 -1
- package/dist/assets/upgrade-success-page-DqSBwFJv.js +0 -1
- package/dist/assets/use-is-org-ready-IPLcsl77.js +0 -1
- package/dist/assets/workspace-page-Bu8beso_.js +0 -1
- /package/dist/assets/{abap-C765urHY.js → abap-CJDjIMeQ.js} +0 -0
- /package/dist/assets/{about-page-M03PCQjM.js → about-page-D2Gd3sac.js} +0 -0
- /package/dist/assets/{account-shell-qQqbocXz.js → account-shell-DNf1Rg9h.js} +0 -0
- /package/dist/assets/{actionscript-3-lC5SPJIn.js → actionscript-3-CxmpYZPX.js} +0 -0
- /package/dist/assets/{ada-D6z3_0sc.js → ada-snRbnLcR.js} +0 -0
- /package/dist/assets/{andromeeda-DxGTh_os.js → andromeeda-D_9g_aMl.js} +0 -0
- /package/dist/assets/{apache-rkls1DSR.js → apache-B5dsZtzb.js} +0 -0
- /package/dist/assets/{apex-CNQCNeA7.js → apex-TWhNSq6F.js} +0 -0
- /package/dist/assets/{app-html-cache-DNQd-TK8.js → app-html-cache-CVhN9XAl.js} +0 -0
- /package/dist/assets/{applescript-DQYsaxRM.js → applescript-D-_yDiCg.js} +0 -0
- /package/dist/assets/{ara-Zm0W1ER8.js → ara-BTNvtlvo.js} +0 -0
- /package/dist/assets/{asciidoc-uekNNlKP.js → asciidoc-DgKsmgD_.js} +0 -0
- /package/dist/assets/{asm-Bbxb9Q7N.js → asm-ChMXnGkU.js} +0 -0
- /package/dist/assets/{aurora-x-CaQsey3l.js → aurora-x-Bz6gQZp5.js} +0 -0
- /package/dist/assets/{avatar-bundled-components-CrafToy8.js → avatar-bundled-components-C65cwZmA.js} +0 -0
- /package/dist/assets/{avatar-svg-compositor-krWs9LGY.js → avatar-svg-compositor-Cv9LowuC.js} +0 -0
- /package/dist/assets/{awk-CNSoW6F_.js → awk-BiEH0ZRD.js} +0 -0
- /package/dist/assets/{ayu-dark-D3cTidcI.js → ayu-dark-DHK0SCXp.js} +0 -0
- /package/dist/assets/{ayu-light-Cs1cEPZA.js → ayu-light-BWmF3MKA.js} +0 -0
- /package/dist/assets/{ayu-mirage-xGyelbjm.js → ayu-mirage-D-SyKCry.js} +0 -0
- /package/dist/assets/{ballerina-UrfaUWaS.js → ballerina-EJrGsl8G.js} +0 -0
- /package/dist/assets/{bat-BSseGlJ2.js → bat-Djxcuqaz.js} +0 -0
- /package/dist/assets/{beancount-BME0bq77.js → beancount-MnbY31Vd.js} +0 -0
- /package/dist/assets/{berry-BbmX7W94.js → berry-CUj2IVxu.js} +0 -0
- /package/dist/assets/{bibtex-Bj1CNNvW.js → bibtex-DdT7sjNs.js} +0 -0
- /package/dist/assets/{bicep-BSN2uHnH.js → bicep-C-Gz9TGk.js} +0 -0
- /package/dist/assets/{bird2-DKVBk6e_.js → bird2-D_CeJH1N.js} +0 -0
- /package/dist/assets/{c-yTfbDbmI.js → c-D9XDQbl9.js} +0 -0
- /package/dist/assets/{c3-Tbt7gffV.js → c3-B3TmUo6h.js} +0 -0
- /package/dist/assets/{cadence-DQUV1O6z.js → cadence-gKU3QoXo.js} +0 -0
- /package/dist/assets/{catppuccin-frappe-DxbhXt9K.js → catppuccin-frappe-DNalXOvy.js} +0 -0
- /package/dist/assets/{catppuccin-latte-CgFlEQYs.js → catppuccin-latte-DZyhZkvV.js} +0 -0
- /package/dist/assets/{catppuccin-macchiato-Pgo0Bz4Y.js → catppuccin-macchiato-BLVw62yJ.js} +0 -0
- /package/dist/assets/{catppuccin-mocha-CUd4v5ay.js → catppuccin-mocha-3fwuj9Ci.js} +0 -0
- /package/dist/assets/{clarity-Cja2-cF9.js → clarity-CXBDNwqy.js} +0 -0
- /package/dist/assets/{clojure-1vnBLaIC.js → clojure-CE_OqQX6.js} +0 -0
- /package/dist/assets/{clsx-CyUKbFfa.js → clsx-DYFeWbQU.js} +0 -0
- /package/dist/assets/{cmake-B7nBRZe5.js → cmake-D9_Q0Snn.js} +0 -0
- /package/dist/assets/{codeowners-l0-p2hBj.js → codeowners-vfAnX9pr.js} +0 -0
- /package/dist/assets/{codeql-CZegxzQJ.js → codeql-nmZQJQK2.js} +0 -0
- /package/dist/assets/{common-lisp-BwWhYub9.js → common-lisp-DG3I5-y5.js} +0 -0
- /package/dist/assets/{contacts-gateway-DBRvewkn.js → contacts-gateway-CyTyxXCP.js} +0 -0
- /package/dist/assets/{conversation-store-BEgf__eu.js → conversation-store-ABT3_SQh.js} +0 -0
- /package/dist/assets/{coq-DXStvgQ7.js → coq-8RNRLb5T.js} +0 -0
- /package/dist/assets/{csharp-DLXmY1sb.js → csharp-CIh8lOGR.js} +0 -0
- /package/dist/assets/{css-B4lldM37.js → css-Cm5M1Y1B.js} +0 -0
- /package/dist/assets/{csv-DGudciUq.js → csv-Di5Lyggh.js} +0 -0
- /package/dist/assets/{cue-D53528FL.js → cue-DK3yA4yz.js} +0 -0
- /package/dist/assets/{cypher-Bv8Z4GK2.js → cypher-CxwWmjk2.js} +0 -0
- /package/dist/assets/{d-B0tR3tAH.js → d-D2N9DAnE.js} +0 -0
- /package/dist/assets/{dark-plus-DxGtsBDC.js → dark-plus-CZS7AJXT.js} +0 -0
- /package/dist/assets/{dart-BKofA41x.js → dart-B2xLeaeR.js} +0 -0
- /package/dist/assets/{dax-Dd0gvVZ0.js → dax-Dg0pRo6Z.js} +0 -0
- /package/dist/assets/{definitions-FC3DcvI3.js → definitions-U2nVJ0-K.js} +0 -0
- /package/dist/assets/{desktop-BbJezzxJ.js → desktop-DWXpF5MN.js} +0 -0
- /package/dist/assets/{detail-card-B5j4Rqau.js → detail-card-B_N5n2R5.js} +0 -0
- /package/dist/assets/{diff-CPVWfCck.js → diff-DXxn-I4P.js} +0 -0
- /package/dist/assets/{docker-BUIA6Gjt.js → docker-DWCwTSYm.js} +0 -0
- /package/dist/assets/{dotenv-BLms_imc.js → dotenv-CJXb42aE.js} +0 -0
- /package/dist/assets/{dracula-CFX8u3fe.js → dracula-C-SjiF19.js} +0 -0
- /package/dist/assets/{dracula-soft-DIr29C0b.js → dracula-soft-C5m1uu5i.js} +0 -0
- /package/dist/assets/{dream-maker-D1q7VQg6.js → dream-maker-sIql9-AM.js} +0 -0
- /package/dist/assets/{edit-chat-session-Cx2xnSSj.js → edit-chat-session-CpfGaMSF.js} +0 -0
- /package/dist/assets/{effective-timezone-CKEcAtDc.js → effective-timezone-CST1Hd4x.js} +0 -0
- /package/dist/assets/{emacs-lisp-BcZ9rlnt.js → emacs-lisp-CXf6YlUy.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-ZbE1lqD6.js → emoji-catalog-data-DwbI3Ryl.js} +0 -0
- /package/dist/assets/{everforest-dark-BQBBmI9l.js → everforest-dark-BHdvscqB.js} +0 -0
- /package/dist/assets/{everforest-light-Cuh0ru8h.js → everforest-light-fpp-P0F9.js} +0 -0
- /package/dist/assets/{fennel-BpqBXoBR.js → fennel-D-Rd8HUN.js} +0 -0
- /package/dist/assets/{fish-DyYYr9bo.js → fish-DuOO4ISL.js} +0 -0
- /package/dist/assets/{fluent-LgrDR_-H.js → fluent-D34HeBc0.js} +0 -0
- /package/dist/assets/{format-VxJLq14L.js → format-DyoKTjUK.js} +0 -0
- /package/dist/assets/{format-date-lYqfuFdi.js → format-date-uYbiGm9f.js} +0 -0
- /package/dist/assets/{fortran-free-form-zxo4vZkI.js → fortran-free-form-XvhBZanX.js} +0 -0
- /package/dist/assets/{gdscript-8-sj85Vb.js → gdscript-Bcjl2T2J.js} +0 -0
- /package/dist/assets/{gdshader-BZfJmuLj.js → gdshader-G1hXPgyQ.js} +0 -0
- /package/dist/assets/{genie-BFvJfKnC.js → genie-BqWCbhnM.js} +0 -0
- /package/dist/assets/{gherkin-CPWjfG76.js → gherkin-_Ih2YxGd.js} +0 -0
- /package/dist/assets/{github-dark-CDP4O7Bn.js → github-dark-C--sPffI.js} +0 -0
- /package/dist/assets/{github-dark-default-BcXmigOb.js → github-dark-default-BtXGS2Ni.js} +0 -0
- /package/dist/assets/{github-dark-dimmed-5_i38q35.js → github-dark-dimmed-DPBiPvpq.js} +0 -0
- /package/dist/assets/{github-dark-high-contrast-_CgCWILr.js → github-dark-high-contrast-iY7Ngr6j.js} +0 -0
- /package/dist/assets/{github-light-B51iW2_d.js → github-light-Caw77pdi.js} +0 -0
- /package/dist/assets/{github-light-default-WJu0iiQj.js → github-light-default-CrG061Uu.js} +0 -0
- /package/dist/assets/{github-light-high-contrast-CvbJyaey.js → github-light-high-contrast-Ct6r6XlP.js} +0 -0
- /package/dist/assets/{gleam-DRz17LOo.js → gleam-nzpfLyFw.js} +0 -0
- /package/dist/assets/{gn-CJhzP-4V.js → gn-DA7maJvY.js} +0 -0
- /package/dist/assets/{gnuplot-BWrGxdNu.js → gnuplot-CKaA3ZQC.js} +0 -0
- /package/dist/assets/{go-CNIAodSs.js → go-9VgQ9wC-.js} +0 -0
- /package/dist/assets/{google-logo-mNxCGWd3.js → google-logo-50W6rNAi.js} +0 -0
- /package/dist/assets/{groovy-Dbr7YtTJ.js → groovy-0-khrmdP.js} +0 -0
- /package/dist/assets/{gruvbox-dark-hard-BRDuiL2M.js → gruvbox-dark-hard-ChDtqnJZ.js} +0 -0
- /package/dist/assets/{gruvbox-dark-medium-BSHS7XsT.js → gruvbox-dark-medium-DbVlg89d.js} +0 -0
- /package/dist/assets/{gruvbox-dark-soft-D5sY56aX.js → gruvbox-dark-soft-DHSMUDSR.js} +0 -0
- /package/dist/assets/{gruvbox-light-hard-Crga28iX.js → gruvbox-light-hard-BunPaoBZ.js} +0 -0
- /package/dist/assets/{gruvbox-light-medium-DYI_fIXR.js → gruvbox-light-medium-CjKp4mwM.js} +0 -0
- /package/dist/assets/{gruvbox-light-soft-DGrx7O6I.js → gruvbox-light-soft-Cl47bfBN.js} +0 -0
- /package/dist/assets/{haskell-s3USba_s.js → haskell-Cx2LVRSO.js} +0 -0
- /package/dist/assets/{haxe-DHVuHtAU.js → haxe-dvMbUXUW.js} +0 -0
- /package/dist/assets/{hcl-CibSb2Tt.js → hcl-1inxNUza.js} +0 -0
- /package/dist/assets/{hjson-MSVmDATS.js → hjson-BMes8OQ1.js} +0 -0
- /package/dist/assets/{hlsl-wPjA7f4R.js → hlsl-Cp5cRqwJ.js} +0 -0
- /package/dist/assets/{horizon-DSv_Vl7g.js → horizon-CGBC6OpH.js} +0 -0
- /package/dist/assets/{horizon-bright-BhWyww1y.js → horizon-bright-Bp-geNqy.js} +0 -0
- /package/dist/assets/{houston-kqxIENiP.js → houston-DNtBoBbu.js} +0 -0
- /package/dist/assets/{hy-CcDNvXBw.js → hy-7ZXpOdlK.js} +0 -0
- /package/dist/assets/{imba-ClQFmFPP.js → imba-Cxh3o6ho.js} +0 -0
- /package/dist/assets/{impersonate-version-flag-DXEwev6c.js → impersonate-version-flag-B6ANBSiB.js} +0 -0
- /package/dist/assets/{ini-DuVrbFYV.js → ini-src6OCaJ.js} +0 -0
- /package/dist/assets/{java-79Va6bJc.js → java-Db5ZhnPy.js} +0 -0
- /package/dist/assets/{javascript-wLwe9AbG.js → javascript-CRrx2aUQ.js} +0 -0
- /package/dist/assets/{json-DlXFKBYE.js → json-C6qfX7A5.js} +0 -0
- /package/dist/assets/{json5-CkCkKH3E.js → json5-BNSuHQhk.js} +0 -0
- /package/dist/assets/{jsonc-0Xq7tyz4.js → jsonc-D7xijB4D.js} +0 -0
- /package/dist/assets/{jsonl-FSPvpkq2.js → jsonl--PFfbUSB.js} +0 -0
- /package/dist/assets/{jsonnet-BSv69JRS.js → jsonnet-DfbixTm0.js} +0 -0
- /package/dist/assets/{jssm-CyIoWSxC.js → jssm-y9uI24lz.js} +0 -0
- /package/dist/assets/{jsx-AdZrb5z2.js → jsx-Cnbb7jCs.js} +0 -0
- /package/dist/assets/{kanagawa-dragon-Bd79Tun-.js → kanagawa-dragon-BaIiYJBq.js} +0 -0
- /package/dist/assets/{kanagawa-lotus-DeCV-Urg.js → kanagawa-lotus-DboUGpca.js} +0 -0
- /package/dist/assets/{kanagawa-wave-aglxw59J.js → kanagawa-wave-C6KQHvhS.js} +0 -0
- /package/dist/assets/{kdl-BUg1cLiI.js → kdl-HdMOaAWk.js} +0 -0
- /package/dist/assets/{kotlin-BhThn95H.js → kotlin-BCkp0xHQ.js} +0 -0
- /package/dist/assets/{kusto--hwp7U1v.js → kusto-CBYaPAaX.js} +0 -0
- /package/dist/assets/{laserwave-C0Ni-UOW.js → laserwave-C_tOLvQl.js} +0 -0
- /package/dist/assets/{lean-D0WZXxTy.js → lean-Z9oLq0Pr.js} +0 -0
- /package/dist/assets/{less-BqMPRJgy.js → less-CO4vg2Qf.js} +0 -0
- /package/dist/assets/{lib-CNXbvB2y.js → lib-CELdiua9.js} +0 -0
- /package/dist/assets/{light-plus-CvXxK5L0.js → light-plus-C3EBRnad.js} +0 -0
- /package/dist/assets/{llm-dimension-DZzl8VAV.js → llm-dimension-CXrcOsvj.js} +0 -0
- /package/dist/assets/{llvm-DxX8WKJ-.js → llvm-C7_P-hTJ.js} +0 -0
- /package/dist/assets/{log-D8tJQN5p.js → log-CGYIUcun.js} +0 -0
- /package/dist/assets/{logo-Dh8zozRh.js → logo-BrLW2H57.js} +0 -0
- /package/dist/assets/{luau-X-mc9HXh.js → luau-BIFYMdxB.js} +0 -0
- /package/dist/assets/{make-Cw4iUEce.js → make-YPP1Uf77.js} +0 -0
- /package/dist/assets/{markdown-C4wgDjuo.js → markdown-CWJXacdz.js} +0 -0
- /package/dist/assets/{material-theme-CEmeBs_y.js → material-theme-D71cAe6N.js} +0 -0
- /package/dist/assets/{material-theme-darker-BXvhddOF.js → material-theme-darker-CMxyS0yl.js} +0 -0
- /package/dist/assets/{material-theme-lighter-DMW3Ucs8.js → material-theme-lighter-BZYNW_SN.js} +0 -0
- /package/dist/assets/{material-theme-ocean-c0mOFI0Z.js → material-theme-ocean-BHbh2FUu.js} +0 -0
- /package/dist/assets/{material-theme-palenight-DHn1ZMRK.js → material-theme-palenight-DYPrqsx_.js} +0 -0
- /package/dist/assets/{matlab-DwttN0_Y.js → matlab-B7UsHS8A.js} +0 -0
- /package/dist/assets/{mdx-VNbJXzl_.js → mdx-DXPhoJ9p.js} +0 -0
- /package/dist/assets/{mermaid-8nLortlR.js → mermaid-CWLTA1pi.js} +0 -0
- /package/dist/assets/{min-dark-Cfo9Imnn.js → min-dark-CzFJtRCb.js} +0 -0
- /package/dist/assets/{min-light-D-eNMY61.js → min-light-BeobIKW1.js} +0 -0
- /package/dist/assets/{mipsasm-CmR7MApm.js → mipsasm-BcFr2teq.js} +0 -0
- /package/dist/assets/{mojo-E4JmNL4g.js → mojo-DKu_wjk2.js} +0 -0
- /package/dist/assets/{monokai-DkH9jgy0.js → monokai-CY39KP4r.js} +0 -0
- /package/dist/assets/{moonbit-B0sciZbe.js → moonbit-D4NenWD0.js} +0 -0
- /package/dist/assets/{move-Bn26HYrn.js → move-BLjLzTcu.js} +0 -0
- /package/dist/assets/{narrat-Cy8di6K9.js → narrat-B4r22pjO.js} +0 -0
- /package/dist/assets/{nextflow-groovy-BJBZYnqb.js → nextflow-groovy-DUqr62fE.js} +0 -0
- /package/dist/assets/{night-owl-BaJh1bae.js → night-owl-CGPNDaQl.js} +0 -0
- /package/dist/assets/{night-owl-light-DOIQSNZE.js → night-owl-light-CrIrf0Cj.js} +0 -0
- /package/dist/assets/{nix-DYMb3fN3.js → nix-BRdcOcJK.js} +0 -0
- /package/dist/assets/{nord-Dfe8nufc.js → nord-b6qrlffF.js} +0 -0
- /package/dist/assets/{nushell-BecinQos.js → nushell-DWUD3Kkc.js} +0 -0
- /package/dist/assets/{objective-c-wBEbMfkE.js → objective-c-C3Dt0y9Q.js} +0 -0
- /package/dist/assets/{objective-cpp-DwsMXks9.js → objective-cpp-B4NlQ5Zb.js} +0 -0
- /package/dist/assets/{ocaml-DwRdjLFM.js → ocaml-CAGkDFAY.js} +0 -0
- /package/dist/assets/{odin-CjlC7GSD.js → odin-DhoWKdWy.js} +0 -0
- /package/dist/assets/{one-dark-pro-DQhIyD5N.js → one-dark-pro-Bp6Datey.js} +0 -0
- /package/dist/assets/{one-light-CBfRrrPU.js → one-light-BAlETi8r.js} +0 -0
- /package/dist/assets/{openscad-CHCGCt5B.js → openscad-DsVbpita.js} +0 -0
- /package/dist/assets/{page-shell-CYsp3hSr.js → page-shell-CIc11FcA.js} +0 -0
- /package/dist/assets/{pascal-DSLi1dwC.js → pascal-vFXbHTDo.js} +0 -0
- /package/dist/assets/{password-reset-page-BJo9vGl_.js → password-reset-page-BrhoQMFW.js} +0 -0
- /package/dist/assets/{pdf-eIgXagOI.js → pdf-BU7dQvXN.js} +0 -0
- /package/dist/assets/{pkl-CYrbmtMh.js → pkl-DJ7_ZWDg.js} +0 -0
- /package/dist/assets/{plastic-CcBG239g.js → plastic-DisxMumL.js} +0 -0
- /package/dist/assets/{plsql-DW8rLCTs.js → plsql-D1-TQyaS.js} +0 -0
- /package/dist/assets/{po-DRD9UGH5.js → po-Dzshrfzy.js} +0 -0
- /package/dist/assets/{poimandres-C1Y8UWlv.js → poimandres-DjM987v5.js} +0 -0
- /package/dist/assets/{polar-BuMHPk14.js → polar-BkCMgvOj.js} +0 -0
- /package/dist/assets/{postcss-D_KibIwL.js → postcss-B7zzDosr.js} +0 -0
- /package/dist/assets/{powerquery-DPqdCtl4.js → powerquery-ZUs94H5X.js} +0 -0
- /package/dist/assets/{powershell-B_nHu8ou.js → powershell-DiT1T8jt.js} +0 -0
- /package/dist/assets/{prisma-CEKpljWu.js → prisma-CbYMaz6_.js} +0 -0
- /package/dist/assets/{prolog-Be9bhwua.js → prolog-Bf6RKz7n.js} +0 -0
- /package/dist/assets/{proto-DjKKU6XR.js → proto-CGaipWKe.js} +0 -0
- /package/dist/assets/{provider-key-D_Hh-rHb.js → provider-key-mGgQjU5K.js} +0 -0
- /package/dist/assets/{public-asset-Dx4la7Nv.js → public-asset-BWqyJ9T-.js} +0 -0
- /package/dist/assets/{puppet-B3_5JXyb.js → puppet-BZ638S8b.js} +0 -0
- /package/dist/assets/{purescript-B40B7hnk.js → purescript-DwaKOHwD.js} +0 -0
- /package/dist/assets/{python-CBtENHpB.js → python-CzR-pNPA.js} +0 -0
- /package/dist/assets/{qmldir-DmmSKh1z.js → qmldir-CkYq2Sp0.js} +0 -0
- /package/dist/assets/{qss-DC50xW7x.js → qss-BT52gdxE.js} +0 -0
- /package/dist/assets/{r-Bxh_P6nZ.js → r-BWgaO_9u.js} +0 -0
- /package/dist/assets/{racket-Cd0dc7Z9.js → racket-TVcQNBw4.js} +0 -0
- /package/dist/assets/{raku-Bez4O8bz.js → raku-DE6ATka_.js} +0 -0
- /package/dist/assets/{red-B6c6GahA.js → red-DEYyPLcQ.js} +0 -0
- /package/dist/assets/{reg-RGHB2vyu.js → reg-BlHuvcNc.js} +0 -0
- /package/dist/assets/{regexp-B4qMM8sH.js → regexp-CcbjPLfh.js} +0 -0
- /package/dist/assets/{rel-BzD8rdGz.js → rel-BznzWQxc.js} +0 -0
- /package/dist/assets/{riscv-R9qNw498.js → riscv-0uP8blVA.js} +0 -0
- /package/dist/assets/{ron-fTY3p6VR.js → ron-D2VB2wD8.js} +0 -0
- /package/dist/assets/{rose-pine-0XrcwhjC.js → rose-pine-BzV15xcv.js} +0 -0
- /package/dist/assets/{rose-pine-dawn-om3p9-A_.js → rose-pine-dawn-DIE0FeTj.js} +0 -0
- /package/dist/assets/{rose-pine-moon-MGxH_v4S.js → rose-pine-moon-xd3aG8dH.js} +0 -0
- /package/dist/assets/{rosmsg-CVvSijm3.js → rosmsg-DxswQAwF.js} +0 -0
- /package/dist/assets/{rust-CA961RlG.js → rust-C5XafHy0.js} +0 -0
- /package/dist/assets/{sass-CoOeSP7H.js → sass-BQJb9LTu.js} +0 -0
- /package/dist/assets/{scala-Bbpmmahb.js → scala-lw8MC2HW.js} +0 -0
- /package/dist/assets/{schedules-BJAra2Ob.js → schedules-_pw46t0U.js} +0 -0
- /package/dist/assets/{scheme-D-G16M41.js → scheme-CjnxBk_O.js} +0 -0
- /package/dist/assets/{sdbl-BhfGXOJp.js → sdbl-AYOk_PgW.js} +0 -0
- /package/dist/assets/{semver-Dd0ocNOn.js → semver-CUDe4Zia.js} +0 -0
- /package/dist/assets/{shellscript-Cwj5scmN.js → shellscript-D03vGHva.js} +0 -0
- /package/dist/assets/{slack-dark-EnMwLJh2.js → slack-dark-BIVRsENJ.js} +0 -0
- /package/dist/assets/{slack-ochin-DbQZnuuX.js → slack-ochin-C438ursI.js} +0 -0
- /package/dist/assets/{smalltalk-wkvAA4Ge.js → smalltalk-BNWCSvE7.js} +0 -0
- /package/dist/assets/{snazzy-light-HKT43YcO.js → snazzy-light-D2A8umig.js} +0 -0
- /package/dist/assets/{solarized-dark-DHekkVtS.js → solarized-dark-CmccMiGo.js} +0 -0
- /package/dist/assets/{solarized-light-MPvd5SW1.js → solarized-light-Dq0HzNLU.js} +0 -0
- /package/dist/assets/{solidity-B7JThXr2.js → solidity-CUs9Q91V.js} +0 -0
- /package/dist/assets/{splunk-GQMh95CP.js → splunk-BFpVEpYd.js} +0 -0
- /package/dist/assets/{sql-BXe6lADW.js → sql-Dw0a9eKA.js} +0 -0
- /package/dist/assets/{ssh-config-DVuuj5mu.js → ssh-config-TXB9i1nn.js} +0 -0
- /package/dist/assets/{stylus-DbmaQDjE.js → stylus-ew6l3Uty.js} +0 -0
- /package/dist/assets/{swift-BSc6I7H3.js → swift-q9lUHwe-.js} +0 -0
- /package/dist/assets/{synthwave-84-vXwrabUd.js → synthwave-84-CF4-NR1X.js} +0 -0
- /package/dist/assets/{system-verilog-DGtgT0u9.js → system-verilog-Dm8RmGLS.js} +0 -0
- /package/dist/assets/{systemd-DjhZZzlg.js → systemd-DUBg4oT5.js} +0 -0
- /package/dist/assets/{talonscript-jbZ73QSp.js → talonscript-Cdthism3.js} +0 -0
- /package/dist/assets/{tasl-Cp0NySwy.js → tasl-hBDU1VS-.js} +0 -0
- /package/dist/assets/{tcl-CDvB7l7r.js → tcl-D_pYJk3D.js} +0 -0
- /package/dist/assets/{terraform-ViADpNla.js → terraform-ClSnHBeP.js} +0 -0
- /package/dist/assets/{tokyo-night-CP5B0W8z.js → tokyo-night-BfN5GhvR.js} +0 -0
- /package/dist/assets/{toml-Ng7oUEBY.js → toml-Cmpi2vgv.js} +0 -0
- /package/dist/assets/{tsv-CBEPJV1q.js → tsv-6e055l6X.js} +0 -0
- /package/dist/assets/{tsx-Bay-x93q.js → tsx-MnoleWOz.js} +0 -0
- /package/dist/assets/{turtle-6k3HpfrS.js → turtle-bCuiQ2bn.js} +0 -0
- /package/dist/assets/{typescript-CESsi6qd.js → typescript-BKAUg0-w.js} +0 -0
- /package/dist/assets/{typespec-BHVNqmiS.js → typespec-Qbt9JbEQ.js} +0 -0
- /package/dist/assets/{typst-CPHv3Z_E.js → typst-D8ngDT2Q.js} +0 -0
- /package/dist/assets/{usage-window-D5EMg2nb.js → usage-window-CqptmeOF.js} +0 -0
- /package/dist/assets/{use-bus-subscription-BuU6xaZz.js → use-bus-subscription-DFy1sHIW.js} +0 -0
- /package/dist/assets/{use-is-mobile-D_xrnINF.js → use-is-mobile-BV3SFU7k.js} +0 -0
- /package/dist/assets/{use-reduced-motion-CZO_MWGV.js → use-reduced-motion-GGS_Vapo.js} +0 -0
- /package/dist/assets/{v-DbQnswmZ.js → v-Ce-9Rdtj.js} +0 -0
- /package/dist/assets/{vala-B9xFrP6Q.js → vala-kb2UgUKG.js} +0 -0
- /package/dist/assets/{vb-DhUjJFob.js → vb-DlQ0M4s6.js} +0 -0
- /package/dist/assets/{verilog-knoXnPW_.js → verilog-S3JG-X7r.js} +0 -0
- /package/dist/assets/{vesper-DMn9sD5q.js → vesper-dpDsaEIN.js} +0 -0
- /package/dist/assets/{vhdl-BC236CWS.js → vhdl-DjV4CuRA.js} +0 -0
- /package/dist/assets/{viml-BiHN9dcP.js → viml-fveR7l5F.js} +0 -0
- /package/dist/assets/{vitesse-black-BPikaA4r.js → vitesse-black-ChuLhedi.js} +0 -0
- /package/dist/assets/{vitesse-dark-etdagetc.js → vitesse-dark-dk6EDsPF.js} +0 -0
- /package/dist/assets/{vitesse-light-wF4P0Zsy.js → vitesse-light-BGMGjSmo.js} +0 -0
- /package/dist/assets/{vyper-9LO9XYNL.js → vyper-b3pojx0j.js} +0 -0
- /package/dist/assets/{wasm-cLEfWrbG.js → wasm-Cp17eaLr.js} +0 -0
- /package/dist/assets/{wasm-BQxIq9Eb.js → wasm-Ygaq7151.js} +0 -0
- /package/dist/assets/{web-hjMLFqJn.js → web-BliIDiqF.js} +0 -0
- /package/dist/assets/{web-XRhV1FIb.js → web-Bt4Zk975.js} +0 -0
- /package/dist/assets/{web-oH2q0g1D.js → web-CCELPWQY.js} +0 -0
- /package/dist/assets/{web-m17sEkBA.js → web-CDll1zX3.js} +0 -0
- /package/dist/assets/{web-MavgiYAR.js → web-D56f0CkR.js} +0 -0
- /package/dist/assets/{web-Cue81zTY.js → web-DM9GvXUX.js} +0 -0
- /package/dist/assets/{wenyan-CpO3LOSA.js → wenyan-CiiqBGfe.js} +0 -0
- /package/dist/assets/{wgsl-DVMBiogp.js → wgsl-gBR57YXo.js} +0 -0
- /package/dist/assets/{wikitext-C4YdJkhb.js → wikitext-Cma2xPey.js} +0 -0
- /package/dist/assets/{wit-Dk2LwD_7.js → wit-CqBgOAMC.js} +0 -0
- /package/dist/assets/{with-selector-BomrVLKx.js → with-selector-CqKKbERj.js} +0 -0
- /package/dist/assets/{wolfram-BewBpAXL.js → wolfram-CdCl0HLR.js} +0 -0
- /package/dist/assets/{xterm-D62GGRqD.js → xterm-Do1_FHbS.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-B4zTZTld.js → xterm-addon-fit-DU6ztPRc.js} +0 -0
- /package/dist/assets/{yaml-DvBKdDiG.js → yaml-0wVAnjnc.js} +0 -0
- /package/dist/assets/{zenscript-CSyyk0b_.js → zenscript-BaqxvGq6.js} +0 -0
- /package/dist/assets/{zig-DUP4LvJO.js → zig-EM9y4jld.js} +0 -0
- /package/dist/assets/{zwitch-19hSuEjR.js → zwitch-RGt319Kt.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{n as t,o as n,r}from"./device-settings-C07QvMzm.js";import{t as i}from"./react-DJZBPgpf.js";import{T as a}from"./portal-container-DIXEBWUe.js";import{n as o}from"./QueryClientProvider-DNHWXaGq.js";import{t as s}from"./useQuery-D2zf6Uhu.js";import{t as c}from"./useMutation-BuofVRHk.js";import{t as l}from"./jsx-runtime-CVSDxk6A.js";import{t as u}from"./button-DdEh-9f_.js";import{t as d}from"./card-CL5iEMJO.js";import{t as f}from"./dropdown-CocFV5yi.js";import{t as p}from"./confirm-dialog-NYG-K9zN.js";import{t as m}from"./notice-CF2pptne.js";import{t as h}from"./tag-Ccr7Quy6.js";import{t as g}from"./input-Cu3PPVCq.js";import{t as _}from"./toggle-CEm3M86o.js";import{n as v}from"./toast-DU1nH33j.js";import{t as y}from"./chevron-right-zTNPbA1m.js";import{t as b}from"./loader-circle-BSAFLoPH.js";import{t as x}from"./pencil-BA9LOIzP.js";import{t as S}from"./x-BDqbYVtS.js";import{C,O as w,S as T,b as E,d as D,r as O,v as k,w as A,x as j,y as ee}from"./auth-store-CiQCAKS1.js";import{t as te}from"./sdk.gen-BO4vbMAj.js";import{$ as M,Gi as N,Ni as P,Q as F,S as I,b as L,d as R,et as z,f as ne,nt as re,p as ie,po as ae,tt as oe,u as B,x as V}from"./index-BjEJFZTJ.js";import{t as H}from"./use-active-assistant-id-BIhArlF_.js";import{t as U}from"./detail-card-B5j4Rqau.js";var W=e(i(),1),G=l();function K(){let e=z({platformHostedOnly:!0}),t=F(),n=M(),r=o(),{data:i,isLoading:a,isError:l}=s({...oe(),enabled:e===`full`&&t}),u=c({mutationFn:async e=>{let{data:t}=await te({body:{access_consented:e},throwOnError:!0});return t},onSuccess:e=>{r.setQueryData(re(),e),v.success(e?.access_consented?`Admin data access enabled.`:`Admin data access disabled.`)},onError:()=>{v.error(`Failed to update log access consent.`)}});if(e===`gated`)return null;let d=e===`full`&&n,f=i?.access_consented??!1,p=e!==`full`||!t||a||l||u.isPending;return(0,G.jsxs)(`div`,{children:[(0,G.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,G.jsxs)(`div`,{className:`flex-1`,children:[(0,G.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Allow admin access to assistant data`}),(0,G.jsxs)(`p`,{className:`mt-1 text-body-small-default text-[var(--content-tertiary)]`,children:[`Lets Vellum administrators reach privileged data on your assistant pod for debugging — today this means tailing the daily assistant log at`,` `,(0,G.jsx)(`code`,{className:`rounded bg-[var(--surface-base)] px-1.5 font-mono text-[var(--content-secondary)] dark:bg-[var(--surface-lift)] dark:text-[var(--content-default)]`,children:`/workspace/data/logs/assistant-YYYY-MM-DD.log`}),`. Off by default. Turn on temporarily when asking support to investigate an issue, then turn off when you're done.`]}),e===`full`&&l&&(0,G.jsx)(`p`,{className:`mt-1 text-body-small-default text-[var(--system-negative-strong)]`,children:`Failed to load consent setting.`})]}),(0,G.jsx)(`div`,{className:`flex items-center gap-2`,children:e===`disabled`?null:(0,G.jsxs)(G.Fragment,{children:[(u.isPending||d)&&(0,G.jsx)(b,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,G.jsx)(_,{checked:f,disabled:p,onChange:()=>u.mutate(!f)})]})})]}),e===`disabled`&&(0,G.jsx)(m,{tone:`info`,className:`mt-3`,children:`Log in to the Vellum platform to manage admin data access.`})]})}function se(){let e=w(),[t,n]=(0,W.useState)(()=>j()),[r,i]=(0,W.useState)(!1),[a,o]=(0,W.useState)(`Face ID`),[s,c]=(0,W.useState)(!1);if((0,W.useEffect)(()=>{e&&(E().then(i),ee().then(o))},[e]),!e||!r)return null;let l=async()=>{c(!0);try{if(t)T(!1),await k(),n(!1);else{let e=A();e&&await C(e),T(!0),n(!0)}}finally{c(!1)}};return(0,G.jsx)(U,{title:`Security`,children:(0,G.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,G.jsxs)(`div`,{className:`flex-1`,children:[(0,G.jsxs)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:[`Use `,a,` for sign-in`]}),(0,G.jsxs)(`p`,{className:`mt-1 text-body-small-default text-[var(--content-tertiary)]`,children:[`When your session expires, verify with `,a,` or your device passcode instead of signing in again.`]})]}),(0,G.jsx)(_,{checked:t,onChange:()=>void l(),disabled:s})]})})}function q(){return(0,G.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`})}var J=B.map(e=>({value:e.id,label:e.label,icon:(0,G.jsx)(e.icon,{className:`h-3.5 w-3.5`})}));function ce(){let e=H(),t=o(),{data:n,isError:r}=s({queryKey:[`thresholds`,e],queryFn:()=>ne(e),staleTime:3e4}),[i,a]=(0,W.useState)(`relaxed`),[c,l]=(0,W.useState)(`conservative`),[u,p]=(0,W.useState)(`strict`),[m,h]=(0,W.useState)(!1),g=(0,W.useRef)(!1),[_,v]=(0,W.useState)(!1),b=(0,W.useRef)(null),x=(0,W.useRef)(null);(0,W.useEffect)(()=>{!n||g.current||(a(R(n.interactive).id),l(R(n.autonomous).id),p(R(n.headless).id),v(!0))},[n]),(0,W.useEffect)(()=>()=>{b.current!==null&&(clearTimeout(b.current),b.current=null,x.current?.(),x.current=null)},[]);let S=(0,W.useCallback)((n,r,i)=>{if(!e||!_)return;let a=B.find(e=>e.id===n)?.riskThreshold,o=B.find(e=>e.id===r)?.riskThreshold,s=B.find(e=>e.id===i)?.riskThreshold;!a||!o||!s||ie(e,{interactive:a,autonomous:o,headless:s}).then(()=>{t.invalidateQueries({queryKey:[`thresholds`,e]})}).catch(()=>{})},[e,_,t]),C=(0,W.useCallback)((e,t,n)=>{b.current!==null&&clearTimeout(b.current),x.current=()=>S(e,t,n),b.current=setTimeout(()=>{x.current?.(),b.current=null,x.current=null},500)},[S]),w=(0,W.useCallback)(e=>{g.current=!0,a(e),C(e,c,u)},[c,u,C]),T=(0,W.useCallback)(e=>{g.current=!0,l(e),C(i,e,u)},[i,u,C]),E=(0,W.useCallback)(e=>{g.current=!0,p(e),C(i,c,e)},[i,c,C]),D=B.find(e=>e.id===i),O=B.find(e=>e.id===c),k=B.find(e=>e.id===u),A=!e||!_;return(0,G.jsxs)(d,{children:[(0,G.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Risk Tolerance`}),(0,G.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Control which actions your assistant can take without asking first. Each action is classified by risk level — your tolerance determines which levels auto-approve.`}),r&&(0,G.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--system-negative-strong)]`,children:`Could not load threshold settings. Check your connection and reload.`}),(0,G.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Conversations`}),(0,G.jsx)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:`When you're chatting with your assistant directly.`}),(0,G.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,G.jsx)(f,{value:i,onChange:w,options:J,disabled:A})}),D&&(0,G.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:D.description})]}),(0,G.jsx)(q,{}),(0,G.jsxs)(`div`,{children:[(0,G.jsxs)(`button`,{type:`button`,onClick:()=>h(e=>!e),className:`flex items-center gap-1 text-[var(--content-secondary)] hover:text-[var(--content-default)] transition-colors`,"aria-expanded":m,children:[m?(0,G.jsx)(ae,{className:`h-4 w-4`}):(0,G.jsx)(y,{className:`h-4 w-4`}),(0,G.jsx)(`span`,{className:`text-body-medium-default`,children:`Advanced`})]}),(0,G.jsxs)(`div`,{className:m?`mt-4 space-y-4`:`hidden`,children:[(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Background`}),(0,G.jsx)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:`When your assistant acts without you — scheduled tasks, background jobs, and external triggers.`}),(0,G.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,G.jsx)(f,{value:c,onChange:T,options:J,disabled:A})}),O&&(0,G.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:O.description})]}),(0,G.jsx)(q,{}),(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Headless`}),(0,G.jsx)(`p`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:`When triggered externally with no interactive client.`}),(0,G.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,G.jsx)(f,{value:u,onChange:E,options:J,disabled:A})}),k&&(0,G.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:k.description})]})]})]})]})]})}var Y=e(a(),1),le=[`bash`,`file_read`,`file_write`,`file_edit`,`web_fetch`,`skill_load`],ue=[{value:`low`,label:`Low`,description:`Auto-approve without prompting`},{value:`medium`,label:`Medium`,description:`Prompt before executing`},{value:`high`,label:`High`,description:`Always require explicit approval`}];function de({assistantId:e,existingRule:t,onClose:n,onSaved:r}){let i=(0,W.useRef)(null),[a,o]=(0,W.useState)(t.tool),[s,c]=(0,W.useState)(t.pattern),[l,u]=(0,W.useState)(t.risk),[d,p]=(0,W.useState)(t.description??``),[h,_]=(0,W.useState)(!1),[v,y]=(0,W.useState)(null),b=s.trim(),x=b.length>0&&!h,C=(0,W.useCallback)(async n=>{if(n.preventDefault(),!x)return;let i=d.trim()||`${a} — ${b}`;_(!0),y(null);try{await I(e,t.id,{risk:l,description:i}),r()}catch(e){y(e instanceof Error?e.message:`Failed to save trust rule.`)}finally{_(!1)}},[e,x,d,t,r,l,a,b]);return(0,Y.createPortal)((0,G.jsx)(`div`,{ref:i,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`trust-rule-form-title`,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,onKeyDown:(0,W.useCallback)(e=>{e.key===`Escape`&&n()},[n]),onClick:(0,W.useCallback)(e=>{e.target===i.current&&n()},[n]),children:(0,G.jsxs)(`div`,{className:`mx-4 flex max-h-[calc(100vh-2rem)] w-full max-w-md flex-col rounded-xl border border-[var(--border-base)] bg-[var(--surface-lift)] shadow-xl`,children:[(0,G.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[var(--border-base)] px-6 py-4`,children:[(0,G.jsx)(`h2`,{id:`trust-rule-form-title`,className:`text-title-medium text-[var(--content-default)]`,children:`Edit Trust Rule`}),(0,G.jsx)(`button`,{type:`button`,onClick:n,"aria-label":`Close`,className:`rounded-lg p-1.5 text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-base)] hover:text-[var(--content-default)]`,children:(0,G.jsx)(S,{className:`h-4 w-4`})})]}),(0,G.jsxs)(`form`,{onSubmit:e=>void C(e),className:`min-h-0 flex-1 space-y-4 overflow-y-auto px-6 py-4`,children:[v&&(0,G.jsx)(m,{tone:`error`,children:v}),(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`label`,{htmlFor:`trust-rule-tool`,className:`block text-body-medium-default text-[var(--content-default)]`,children:`Tool`}),(0,G.jsx)(`div`,{className:`mt-1`,children:(0,G.jsx)(f,{value:a,onChange:o,disabled:!0,options:le.map(e=>({value:e,label:e}))})})]}),(0,G.jsx)(g,{label:`Pattern`,type:`text`,value:s,onChange:e=>c(e.target.value),placeholder:`e.g., git *`,disabled:!0}),(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`span`,{className:`block text-body-medium-default text-[var(--content-default)]`,children:`Risk Level`}),(0,G.jsx)(`div`,{className:`mt-2 flex gap-2`,children:ue.map(e=>(0,G.jsxs)(`button`,{type:`button`,onClick:()=>u(e.value),className:`flex-1 rounded-lg border px-3 py-2 text-left text-body-small-default transition-colors ${l===e.value?e.value===`low`?`border-[var(--system-positive-strong)] bg-[var(--system-positive-weak)] text-[var(--system-positive-strong)]`:e.value===`medium`?`border-[var(--system-warning-strong)] bg-[var(--system-warning-weak)] text-[var(--system-warning-strong)]`:`border-[var(--system-negative-strong)] bg-[var(--system-negative-weak)] text-[var(--system-negative-strong)]`:`border-[var(--border-element)] text-[var(--content-default)] hover:bg-[var(--surface-base)]`}`,children:[(0,G.jsx)(`div`,{children:e.label}),(0,G.jsx)(`div`,{className:`mt-0.5 text-label-medium-default leading-tight opacity-70`,children:e.description})]},e.value))})]}),(0,G.jsx)(g,{label:`Description (optional)`,type:`text`,value:d,onChange:e=>p(e.target.value),placeholder:`${a} — ${b||`pattern`}`}),(0,G.jsxs)(`div`,{className:`flex justify-end gap-2 pt-2`,children:[(0,G.jsx)(`button`,{type:`button`,onClick:n,className:`rounded-lg border border-[var(--border-element)] bg-white px-4 py-2 text-body-medium-default text-[var(--content-default)] transition-colors hover:bg-[var(--surface-base)] dark:border-[var(--border-base)] dark:bg-[var(--surface-lift)] dark:hover:bg-[var(--ghost-hover)]`,children:`Cancel`}),(0,G.jsx)(`button`,{type:`submit`,disabled:!x,className:`rounded-lg bg-[var(--system-positive-strong)] px-4 py-2 text-body-medium-default text-white transition-colors hover:bg-[var(--system-positive-strong)] disabled:cursor-not-allowed disabled:opacity-50`,children:h?`Saving…`:`Save`})]})]})]})}),document.body)}function fe(e){return e.origin===`default`&&!e.userModified}function pe(e,t){let n=new Set,r=[];for(let t of e)n.has(t.id)||(n.add(t.id),r.push(t));for(let e of t)n.has(e.id)||(n.add(e.id),r.push(e));return r.sort((e,t)=>e.tool===t.tool?e.description.localeCompare(t.description):e.tool.localeCompare(t.tool))}function me(e){switch(e){case`low`:return`positive`;case`medium`:return`warning`;case`high`:return`negative`}}function X(e){return e.charAt(0).toUpperCase()+e.slice(1)}function he({assistantId:e,onClose:t}){let n=(0,W.useRef)(null),[r,i]=(0,W.useState)([]),[a,o]=(0,W.useState)(!0),[s,c]=(0,W.useState)(null),[l,d]=(0,W.useState)(null),[f,g]=(0,W.useState)(null),[v,y]=(0,W.useState)(!1),b=(0,W.useCallback)(async t=>{if(t){let[t,n]=await Promise.all([V(e),V(e,{origin:`default`})]);return pe(t,n)}return V(e)},[e]),S=(0,W.useCallback)(async()=>{o(!0);try{i(await b(v)),c(null)}catch(e){c(e instanceof Error?e.message:`Failed to load trust rules.`)}finally{o(!1)}},[b,v]);(0,W.useEffect)(()=>{let e=!1;return(async()=>{o(!0);try{let t=await b(v);e||(i(t),c(null))}catch(t){e||c(t instanceof Error?t.message:`Failed to load trust rules.`)}finally{e||o(!1)}})(),()=>{e=!0}},[b,v]);let C=(0,W.useCallback)(async()=>{if(f)try{await L(e,f.id),S()}catch(e){c(e instanceof Error?e.message:`Failed to delete trust rule.`)}finally{g(null)}},[e,f,S]);return(0,Y.createPortal)((0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{ref:n,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`trust-rules-title`,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,onKeyDown:(0,W.useCallback)(e=>{e.key===`Escape`&&t()},[t]),onClick:(0,W.useCallback)(e=>{e.target===n.current&&t()},[t]),children:(0,G.jsxs)(`div`,{className:`mx-4 flex max-h-[80vh] w-full max-w-2xl flex-col rounded-xl border border-[var(--border-base)] bg-[var(--surface-lift)] shadow-xl`,children:[(0,G.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[var(--border-base)] px-6 py-4`,children:[(0,G.jsx)(`h2`,{id:`trust-rules-title`,className:`text-title-medium text-[var(--content-default)]`,children:`Trust Rules`}),(0,G.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,G.jsx)(_,{checked:v,onChange:y,label:`Show all defaults`}),(0,G.jsx)(u,{variant:`outlined`,onClick:t,children:`Done`})]})]}),(0,G.jsxs)(`div`,{className:`flex-1 overflow-y-auto px-6 py-4`,children:[s&&(0,G.jsx)(`div`,{className:`mb-3`,children:(0,G.jsx)(m,{tone:`error`,children:s})}),a?(0,G.jsx)(`div`,{className:`flex h-48 items-center justify-center text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Loading…`}):r.length===0?(0,G.jsxs)(`div`,{className:`flex h-48 flex-col items-center justify-center gap-2 px-6 text-[var(--content-tertiary)]`,children:[(0,G.jsx)(N,{className:`h-8 w-8`}),(0,G.jsx)(`p`,{className:`max-w-xs text-center text-body-medium-lighter`,children:`No trust rules yet. Rules are created when you classify actions from permission prompts.`})]}):(0,G.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)]`,children:r.map(e=>{let t=fe(e);return(0,G.jsxs)(`li`,{className:`flex items-start gap-3 py-3`,children:[(0,G.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,G.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e.tool}),(0,G.jsx)(h,{tone:me(e.risk),children:X(e.risk)}),e.origin===`default`&&(0,G.jsx)(h,{tone:`neutral`,children:`Default`}),e.userModified&&(0,G.jsx)(h,{tone:`warning`,children:`Modified`})]}),(0,G.jsx)(`div`,{className:`mt-1 truncate font-mono text-body-small-default text-[var(--content-secondary)]`,children:e.pattern}),e.description&&(0,G.jsx)(`div`,{className:`mt-0.5 truncate text-body-small-default text-[var(--content-tertiary)]`,children:e.description})]}),(0,G.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,G.jsx)(`button`,{type:`button`,"aria-label":`Edit ${e.tool} rule`,onClick:()=>d(e),className:`rounded-lg p-1.5 text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-base)] hover:text-[var(--content-default)]`,children:(0,G.jsx)(x,{className:`h-4 w-4`})}),(!t||e.userModified)&&(0,G.jsx)(`button`,{type:`button`,"aria-label":`Delete ${e.tool} rule`,onClick:()=>g(e),className:`rounded-lg p-1.5 text-[var(--system-negative-strong)] transition-colors hover:bg-[var(--system-negative-weak)]`,children:(0,G.jsx)(P,{className:`h-4 w-4`})})]})]},e.id)})})]})]})}),l&&(0,G.jsx)(de,{assistantId:e,existingRule:l,onClose:()=>d(null),onSaved:()=>{d(null),S()}}),(0,G.jsx)(p,{open:f!==null,title:`Delete Trust Rule?`,message:f?`Remove the ${X(f.risk).toLowerCase()}-risk rule for ${f.tool} matching "${f.pattern}"?`:``,confirmLabel:`Delete`,cancelLabel:`Cancel`,destructive:!0,onConfirm:()=>void C(),onCancel:()=>g(null)})]}),document.body)}function Z(){let e=H(),[t,n]=(0,W.useState)(!1);return(0,G.jsxs)(d,{children:[(0,G.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,G.jsx)(N,{className:`mt-0.5 h-5 w-5 shrink-0 text-[var(--content-secondary)]`}),(0,G.jsxs)(`div`,{className:`flex-1`,children:[(0,G.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Trust Rules`}),(0,G.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Manage per-tool rules that control which actions auto-approve and which require your explicit permission.`})]}),(0,G.jsx)(u,{variant:`outlined`,onClick:()=>n(!0),children:`Manage`})]}),t&&(0,G.jsx)(he,{assistantId:e,onClose:()=>n(!1)})]})}var ge=[{value:`dontRetain`,label:`Don't retain`},{value:`oneHour`,label:`1 hour`},{value:`oneDay`,label:`1 day`},{value:`sevenDays`,label:`7 days`},{value:`thirtyDays`,label:`30 days`},{value:`ninetyDays`,label:`90 days`},{value:`keepForever`,label:`Keep forever`}],_e=`thirtyDays`;function Q({label:e,helperText:t,checked:n,onChange:r}){return(0,G.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,G.jsxs)(`div`,{className:`flex-1`,children:[(0,G.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e}),(0,G.jsx)(`p`,{className:`mt-1 text-body-small-default text-[var(--content-tertiary)]`,children:t})]}),(0,G.jsx)(_,{checked:n,onChange:r,label:e})]})}function $(){return(0,G.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`})}function ve(){let e=z({platformHostedOnly:!0}),i=O(),[a,o]=(0,W.useState)(()=>t(`shareAnalytics`,!0)),[s,c]=(0,W.useState)(()=>t(`shareDiagnostics`,!0)),[l,u]=(0,W.useState)(()=>r(`llmLogRetention`,_e));return(0,G.jsxs)(`div`,{className:`space-y-4`,children:[(0,G.jsx)(se,{}),(0,G.jsx)(Z,{}),(0,G.jsx)(ce,{}),(0,G.jsx)(U,{title:`Privacy`,children:(0,G.jsxs)(`div`,{className:`space-y-4`,children:[(0,G.jsx)(Q,{label:`Share Analytics`,helperText:`Send anonymous product usage data. Your conversations and personal data are never included.`,checked:a,onChange:()=>{let e=!a;o(e),D(`share_analytics`,e,i)}}),(0,G.jsx)($,{}),(0,G.jsx)(Q,{label:`Share Diagnostics`,helperText:`Send crash reports and performance metrics. Your conversations and personal data are never included.`,checked:s,onChange:()=>{let e=!s;c(e),D(`share_diagnostics`,e,i)}}),(0,G.jsx)($,{}),(0,G.jsx)(K,{}),e!==`gated`&&(0,G.jsx)($,{}),(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`label`,{htmlFor:`llm-log-retention`,className:`block text-body-medium-default text-[var(--content-default)]`,children:`LLM Request Log Retention`}),(0,G.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,G.jsx)(f,{value:l,onChange:e=>{u(e),n(`llmLogRetention`,e)},options:ge})}),(0,G.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:`How long to keep LLM request and response logs on this device. These logs record the prompts and completions sent to model providers and are used for debugging. Shorter retention improves privacy; longer retention helps troubleshoot issues.`})]})]})})]})}export{ve as PrivacyPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./queryOptions-BtNi-_9H.js";import{A as t,Dn as n,Dt as r,En as i,Jn as a,Ln as o,On as s,Tn as c,an as ee,bt as l,cn as u,ct as d,dt as te,j as ne,k as re,kt as ie,ln as f,lt as p,o as m,on as h,ot as g,ut as _,v,wn as y,x as b,y as x}from"./sdk.gen-AJllUeDf.js";var S=(e,t,n,r)=>{let i={_id:e,baseUrl:t?.baseUrl||(t?.client??a).getConfig().baseUrl};return n&&(i._infinite=n),r&&(i.tags=r),t?.body&&(i.body=t.body),t?.headers&&(i.headers=t.headers),t?.path&&(i.path=t.path),t?.query&&(i.query=t.query),[i]},C=e=>S(`appsGet`,e),w=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await m({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:C(t)}),T=e=>S(`channelsAvailableGet`,e),E=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await v({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:T(t)}),D=e=>S(`channelsReadinessGet`,e),O=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await x({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:D(t)}),k=e=>S(`configGet`,e),A=e=>S(`configLlmCallsitesGet`,e),j=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await b({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:A(t)}),M=e=>({mutationFn:async t=>{let{data:n}=await re({...e,...t,throwOnError:!0});return n}}),N=e=>S(`contactsGet`,e),P=n=>e({queryFn:async({queryKey:e,signal:r})=>{let{data:i}=await t({...n,...e[0],signal:r,throwOnError:!0});return i},queryKey:N(n)}),F=e=>({mutationFn:async t=>{let{data:n}=await ne({...e,...t,throwOnError:!0});return n}}),I=e=>S(`documentsGet`,e),L=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await g({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:I(t)}),R=e=>S(`groupsGet`,e),z=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await _({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:R(t)}),B=e=>({mutationFn:async t=>{let{data:n}=await te({...e,...t,throwOnError:!0});return n}}),V=e=>({mutationFn:async t=>{let{data:n}=await d({...e,...t,throwOnError:!0});return n}}),H=e=>({mutationFn:async t=>{let{data:n}=await p({...e,...t,throwOnError:!0});return n}}),U=e=>S(`homeFeedGet`,e),W=e=>S(`homeStateGet`,e),G=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await l({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:W(t)}),K=e=>S(`inferenceProviderconnectionsGet`,e),q=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:i}=await r({...t,...e[0],signal:n,throwOnError:!0});return i},queryKey:K(t)}),J=e=>({mutationFn:async t=>{let{data:n}=await ie({...e,...t,throwOnError:!0});return n}}),Y=e=>S(`pluginsGet`,e),ae=e=>({mutationFn:async t=>{let{data:n}=await ee({...e,...t,throwOnError:!0});return n}}),X=e=>S(`pluginsByNameGet`,e),oe=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await h({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:X(t)}),se=e=>({mutationFn:async t=>{let{data:n}=await u({...e,...t,throwOnError:!0});return n}}),Z=e=>S(`pluginsSearchGet`,e),ce=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await f({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:Z(t)}),Q=e=>S(`skillsGet`,e),le=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await s({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:Q(t)}),ue=e=>({mutationFn:async t=>{let{data:n}=await y({...e,...t,throwOnError:!0});return n}}),de=e=>S(`skillsByIdFilesGet`,e),fe=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await i({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:de(t)}),pe=e=>S(`skillsByIdFilesContentGet`,e),$=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await c({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:pe(t)}),me=e=>S(`skillsCategoriesGet`,e),he=t=>e({queryFn:async({queryKey:e,signal:r})=>{let{data:i}=await n({...t,...e[0],signal:r,throwOnError:!0});return i},queryKey:me(t)}),ge=e=>S(`ttsProvidersGet`,e),_e=t=>e({queryFn:async({queryKey:e,signal:n})=>{let{data:r}=await o({...t,...e[0],signal:n,throwOnError:!0});return r},queryKey:ge(t)});export{ce as A,K as C,X as D,oe as E,he as F,le as I,Q as L,ue as M,$ as N,Y as O,fe as P,_e as R,q as S,ae as T,R as _,D as a,G as b,M as c,F as d,L as f,z as g,H as h,O as i,Z as j,se as k,P as l,V as m,C as n,k as o,I as p,E as r,j as s,w as t,N as u,B as v,J as w,W as x,U as y};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{i as e,r as t,s as n}from"./local-settings-lVNyIOJ_.js";import{n as r,t as i}from"./create-selectors-CDULelrw.js";import{t as a}from"./is-electron-CavSPgmY.js";var o=`vellum:gw:token`,s=`vellum:gw:expiresAt`,c=`vellum:gw:tokenSource`,l=`gw:token`,u=`gw:expiresAt`,d=`gw:tokenSource`,f=null,p=0,m=null;function h(){return R()&&Y()!=null}function g(){return h()&&v()!==null}function _(e){return Date.now()/1e3>=e-60}function v(){if(f&&!_(p))return f;f=null;try{let e=localStorage.getItem(o)??localStorage.getItem(l),t=localStorage.getItem(s)??localStorage.getItem(u);if(e&&t){let n=Number(t);if(!_(n))return f=e,p=n,f}}catch{}return null}async function y(e,t){let n=e??`/auth/token`,r={};t&&(r.Authorization=`Bearer ${t}`);let i=await fetch(n,{method:`POST`,headers:r});if(!i.ok)throw Error(`Gateway token request failed: ${i.status}`);let{token:a,expiresAt:l}=await i.json();try{localStorage.setItem(o,a),localStorage.setItem(s,String(l)),localStorage.setItem(c,n)}catch{}return f=a,p=l,m=n,a}async function b(e,t){let n=e??`/auth/token`,r=m??localStorage.getItem(c)??localStorage.getItem(d);return r&&r!==n&&S(),v()||y(e,t)}function x(){let e=Y();if(e)return`${e}/auth/token`}function S(){f=null,p=0,m=null;try{localStorage.removeItem(o),localStorage.removeItem(s),localStorage.removeItem(c),localStorage.removeItem(l),localStorage.removeItem(u),localStorage.removeItem(d)}catch{}}var C={url:null,token:null};function w(e){C=e===null?{url:null,token:null}:{url:e.url,token:e.token}}function ee(){return C.url}function te(){return C.token}var T=i(r(e=>({lockfile:null,setLockfile:t=>e({lockfile:t})})));function E(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function ne(e){if(E(e)&&typeof e.gatewayPort==`number`&&typeof e.daemonPort==`number`)return{gatewayPort:e.gatewayPort,daemonPort:e.daemonPort}}function re(e){if(!E(e)||typeof e.assistantId!=`string`)return null;let t={assistantId:e.assistantId};typeof e.name==`string`&&(t.name=e.name),typeof e.cloud==`string`&&(t.cloud=e.cloud),typeof e.runtimeUrl==`string`&&(t.runtimeUrl=e.runtimeUrl),typeof e.species==`string`&&(t.species=e.species),typeof e.hatchedAt==`string`&&(t.hatchedAt=e.hatchedAt);let n=ne(e.resources);return n&&(t.resources=n),t}function D(e){let t=E(e)?e:{},n=Array.isArray(t.assistants)?t.assistants:[],r=[];for(let e of n){let t=re(e);t&&r.push(t)}return{assistants:r,activeAssistant:typeof t.activeAssistant==`string`?t.activeAssistant:null}}var O=class extends Error{status;constructor(e,t){super(t),this.name=`GuardianTokenError`,this.status=e}};async function ie(e=`vellum`,t){return a()?window.vellum.localMode.hatch(e,t):(await fetch(`/assistant/__local/hatch`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({species:e,remote:t})})).json()}async function k(){if(a())return window.vellum.localMode.readLockfile();let e=await fetch(`/assistant/__local/lockfile`);if(!e.ok)throw Error(`lockfile fetch failed: ${e.status}`);return e.json()}async function A(e,t){return a()?window.vellum.localMode.saveLockfileAssistant(e,t):(await fetch(`/assistant/__local/lockfile`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({assistant:e,activeAssistant:t})})).json()}async function ae(e){return a()?window.vellum.localMode.replacePlatformAssistants(e):(await fetch(`/assistant/__local/lockfile`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({syncPlatform:!0,platformAssistants:e})})).json()}async function oe(e){return a()?window.vellum.localMode.retire(e):(await fetch(`/assistant/__local/retire`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({assistantId:e})})).json()}async function se(e){if(a()){let t=window.vellum.localMode.wake;return t?t(e):{ok:!1,error:`Wake is not supported by this app version`}}return(await fetch(`/assistant/__local/wake`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({assistantId:e})})).json()}async function ce(e){if(a()){let t=await window.vellum.localMode.guardianToken(e);if(!t.ok)throw new O(t.status,t.error);return t.accessToken}let t=await fetch(`/assistant/__local/guardian-token/${encodeURIComponent(e)}`);if(!t.ok){let e=await t.json().catch(()=>({}));throw new O(t.status,e.error??`Guardian token request failed: ${t.status}`)}let{accessToken:n}=await t.json();return n}var j=()=>T.getState().lockfile,M=e=>T.getState().setLockfile(e),N={assistants:[],activeAssistant:null},P=`vellum:local:lockfile`,F=`vellum:local:selectedAssistantId`;function I(){return window.__VELLUM_CONFIG__?.platformUrl||window.location.origin}var L=e=>{M(e),n(P,JSON.stringify(e))},le=new Set([`1`,`true`,`yes`]);function R(){return!le.has(`false`)}async function z(){try{let e=await k();return L(e),e}catch{let e={...N};return M(e),e}}function B(){let e=j();if(e)return e;let n=t(P,``);if(n)try{let e=D(JSON.parse(n));return M(e),e}catch{}let r={...N};return M(r),r}async function V(e){let t=await A(e,e.assistantId);t.ok&&L(t.lockfile)}async function H(e){let t=B().assistants.find(t=>t.assistantId===e);if(!t)return;let n=await A({...t},e);n.ok&&L(n.lockfile)}async function U(e){let t=await ae(e.filter(e=>!e.is_local).map(e=>({assistantId:e.id,cloud:`vellum`,runtimeUrl:I(),hatchedAt:e.created})));t.ok&&L(t.lockfile)}async function ue(e){let t=await oe(e);return t.ok&&(J(),S(),w(null),await z()),t}function de(){return B().assistants.length>0}function W(e){return e.cloud!==`vellum`&&e.resources?.gatewayPort!=null}function G(e){return e.cloud===`vellum`}function fe(){return B().assistants.filter(W)}function pe(){return B().assistants.filter(G)}function K(){let e=B(),t=e.assistants.find(t=>t.assistantId===e.activeAssistant);if(t)return t;if(e.assistants.length===1)return e.assistants[0]}function q(){let e=t(F,``);if(e){let t=B().assistants.find(t=>t.assistantId===e);if(t)return t}return K()}function me(e){n(F,e)}function J(){e(F)}function he(e){return`/assistant/__gateway/${e}`}function Y(){if(!R())return;let e=q();if(!(!e||!W(e)))return he(e.resources.gatewayPort)}async function X(){let e=x();if(!e)return;let t=q();await b(e,t?await ce(t.assistantId):void 0);let n=Y();n&&w({url:`${window.location.origin}${n}`,token:v()})}function ge(e){return e instanceof O?e.status!==403:!0}async function _e(){try{await X();return}catch(e){if(!ge(e))throw e;let t=q()?.assistantId;if(!t||!(await se(t)).ok)throw e;await X()}}var ve=`vellum:currentAssistantId:`;function Z(e){return`${ve}${e}`}function Q(){if(typeof window>`u`)return{};let e={};try{for(let t=0;t<window.localStorage.length;t++){let n=window.localStorage.key(t);if(n&&n.startsWith(`vellum:currentAssistantId:`)){let t=n.slice(26),r=window.localStorage.getItem(n);r!=null&&(e[t]=r)}}}catch{}return e}function ye(e){if(!(typeof window>`u`))try{for(let[t,n]of Object.entries(e)){let e=Z(t);window.localStorage.getItem(e)!==n&&window.localStorage.setItem(e,n)}}catch{}}function be(e){if(!(typeof window>`u`))try{window.localStorage.removeItem(Z(e))}catch{}}var $=r(e=>({assistants:[],activeAssistantId:null,selectedPlatformAssistantByOrg:Q(),setFromLockfile:t=>e({assistants:t.assistants.map(e=>({id:e.assistantId,name:e.name,hatchedAt:e.hatchedAt,isLocal:W(e),isPlatformHosted:G(e)}))}),setFromApi:t=>e({assistants:t.map(e=>({id:e.id,name:e.name,hatchedAt:e.created,isLocal:e.is_local,isPlatformHosted:!e.is_local}))}),remove:t=>e(e=>({assistants:e.assistants.filter(e=>e.id!==t)})),clear:()=>e({assistants:[]}),setActiveAssistantId:t=>e({activeAssistantId:t}),setSelectedPlatformAssistant:(t,n)=>{n??be(t),e(e=>{let r={...e.selectedPlatformAssistantByOrg};return n==null?delete r[t]:r[t]=n,ye(r),{selectedPlatformAssistantByOrg:r}})}})),xe=i($);R()&&T.subscribe(e=>{e.lockfile&&$.getState().setFromLockfile(e.lockfile)}),typeof window<`u`&&window.addEventListener(`storage`,e=>{(e.key===null||e.key.startsWith(`vellum:currentAssistantId:`))&&$.setState({selectedPlatformAssistantByOrg:Q()})});export{g as A,ee as C,v as D,b as E,x as O,te as S,S as T,V as _,Y as a,U as b,I as c,W as d,R as f,ue as g,_e as h,fe as i,h as k,q as l,X as m,J as n,B as o,z as p,K as r,pe as s,xe as t,de as u,H as v,w,ie as x,me as y};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-CZsNGL6n.js";import{t as n}from"./react-DJZBPgpf.js";import{d as r,p as i}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as a}from"./QueryClientProvider-DNHWXaGq.js";import{t as o}from"./useQuery-D2zf6Uhu.js";import{t as s}from"./jsx-runtime-CVSDxk6A.js";import{t as c}from"./button-DdEh-9f_.js";import{t as l}from"./notice-CF2pptne.js";import{t as u}from"./tag-Ccr7Quy6.js";import{t as d}from"./panel-item-FzMfzMJA.js";import{n as f,t as p}from"./input-Cu3PPVCq.js";import{t as m}from"./toggle-CEm3M86o.js";import{t as h}from"./modal-BYMhDpQo.js";import{n as g}from"./toast-DU1nH33j.js";import{t as _}from"./calendar-CP_Q3Aw6.js";import{t as v}from"./chevron-right-zTNPbA1m.js";import{t as y}from"./loader-circle-BSAFLoPH.js";import{D as b,E as x,O as S,T as C,_n as w,dn as T,fn as E,gt as D,hn as O,ht as k,mn as A,mt as j,pn as M,pt as N,vn as P}from"./sdk.gen-AJllUeDf.js";import{n as F,r as I,t as L}from"./api-errors-ChauV4ed.js";import{i as R}from"./routes-Dk5Qeryt.js";import{c as ee,l as te,s as ne}from"./query-tags-Cez88bzY.js";import{t as re}from"./assistant-feature-flag-store-0382ImYF.js";import{t as ie}from"./effective-timezone-CKEcAtDc.js";import{Ni as ae,Pn as oe,bo as z,ha as se,ho as ce,ia as B,na as V}from"./index-BjEJFZTJ.js";import{t as le}from"./use-active-assistant-id-BIhArlF_.js";import{t as H}from"./detail-card-B5j4Rqau.js";import{n as ue}from"./usage-window-D5EMg2nb.js";import{t as de}from"./schedules-BJAra2Ob.js";var U=e(n(),1);async function fe(e,t){let{error:n,response:r}=await w({path:{assistant_id:e},body:t,throwOnError:!1});if(F(r,n,`Failed to create schedule.`),!r.ok)throw new L(r.status,I(n,r,`Failed to create schedule.`))}async function pe(e,t,n){let{error:r,response:i}=await E({path:{assistant_id:e,id:t},body:n,throwOnError:!1});if(F(i,r,`Failed to update schedule.`),!i.ok)throw new L(i.status,I(r,i,`Failed to update schedule.`))}async function me(e){return de(e)}async function he(e,t,n=10){let{data:r,error:i,response:a}=await A({path:{assistant_id:e,id:t},query:{limit:n},throwOnError:!1});if(F(a,i,`Failed to load schedule runs.`),!a.ok)throw new L(a.status,I(i,a,`Failed to load schedule runs.`));return r?.runs??[]}async function ge(e,t){let{data:n,error:r,response:i}=await P({path:{assistant_id:e},query:{from:t.from,to:t.to},throwOnError:!1});if(F(i,r,`Failed to load schedule usage.`),!i.ok)throw new L(i.status,I(r,i,`Failed to load schedule usage.`));return n?.summaries??[]}async function _e(e,t,n){let{error:r,response:i}=await O({path:{assistant_id:e,id:t},body:{enabled:n},throwOnError:!1});if(F(i,r,`Failed to toggle schedule.`),!i.ok)throw new L(i.status,I(r,i,`Failed to toggle schedule.`))}async function ve(e,t){let{error:n,response:r}=await T({path:{assistant_id:e,id:t},throwOnError:!1});if(F(r,n,`Failed to delete schedule.`),!r.ok&&r.status!==204)throw new L(r.status,I(n,r,`Failed to delete schedule.`))}async function ye(e,t){let{error:n,response:r}=await M({path:{assistant_id:e,id:t},throwOnError:!1});if(F(r,n,`Failed to run schedule.`),!r.ok)throw new L(r.status,I(n,r,`Failed to run schedule.`))}async function W(e,t=10){let{data:n,error:r,response:i}=await D({path:{assistant_id:e},query:{limit:t},throwOnError:!1});if(F(i,r,`Failed to load heartbeat runs.`),!i.ok)throw new L(i.status,I(r,i,`Failed to load heartbeat runs.`));return(n?.runs??[]).map(e=>({id:e.id,jobId:`heartbeat`,status:e.status,startedAt:e.startedAt??e.scheduledFor,finishedAt:e.finishedAt,durationMs:e.durationMs,output:e.skipReason?`Skipped: ${e.skipReason}`:null,error:e.error,conversationId:e.conversationId,conversationExists:e.conversationExists,conversationArchivedAt:e.conversationArchivedAt,estimatedCostUsd:e.estimatedCostUsd,createdAt:e.createdAt}))}async function G(e,t=10){let{data:n,error:r,response:i}=await S({path:{assistant_id:e},query:{limit:t},throwOnError:!1});if(F(i,r,`Failed to load consolidation runs.`),!i.ok)throw new L(i.status,I(r,i,`Failed to load consolidation runs.`));return(n?.runs??[]).map(e=>({id:e.id,jobId:`consolidation`,status:e.status,startedAt:e.startedAt??e.scheduledFor,finishedAt:e.finishedAt,durationMs:e.durationMs,output:null,error:e.error,conversationId:e.conversationId,conversationExists:e.conversationExists,conversationArchivedAt:e.conversationArchivedAt,estimatedCostUsd:e.estimatedCostUsd,createdAt:e.createdAt}))}async function be(e){let{data:t,error:n,response:r}=await N({path:{assistant_id:e},throwOnError:!1});if(F(r,n,`Failed to load heartbeat config.`),!r.ok||!t)throw new L(r.status,I(n,r,`Failed to load heartbeat config.`));return t}async function K(e,t){let{data:n,error:r,response:i}=await e();if(F(i,r,t),!i.ok||!n)throw new L(i.status,I(r,i,t));return n}async function xe(e,t){return K(()=>j({path:{assistant_id:e},body:t,throwOnError:!1}),`Failed to update heartbeat config.`)}async function Se(e){let{data:t,error:n,response:r}=await k({path:{assistant_id:e},throwOnError:!1});if(F(r,n,`Failed to run heartbeat.`),!r.ok||!t)throw new L(r.status,I(n,r,`Failed to run heartbeat.`));return t}async function Ce(e){let{data:t,error:n,response:r}=await C({path:{assistant_id:e},throwOnError:!1});if(F(r,n,`Failed to load consolidation config.`),!r.ok||!t)throw new L(r.status,I(n,r,`Failed to load consolidation config.`));return t}async function we(e,t){return K(()=>x({path:{assistant_id:e},body:t,throwOnError:!1}),`Failed to update consolidation config.`)}async function Te(e){let{data:t,error:n,response:r}=await b({path:{assistant_id:e},throwOnError:!1});if(F(r,n,`Failed to run consolidation.`),!r.ok||!t)throw new L(r.status,I(n,r,`Failed to run consolidation.`));return t}var q=s(),Ee=[{label:`Every hour`,expression:`0 * * * *`},{label:`Every day at 9am`,expression:`0 9 * * *`},{label:`Every weekday at 9am`,expression:`0 9 * * 1-5`},{label:`Every Monday at 9am`,expression:`0 9 * * 1`},{label:`Every 1st of month, 9am`,expression:`0 9 1 * *`}];function J({isOpen:e,assistantId:t,onClose:n,onCreated:r}){return(0,q.jsx)(h.Root,{open:e,onOpenChange:e=>{e||n()},children:e?(0,q.jsx)(De,{assistantId:t,onClose:n,onCreated:r}):null})}function De({assistantId:e,onClose:t,onCreated:n}){let[r,i]=(0,U.useState)(``),[a,o]=(0,U.useState)(``),[s,l]=(0,U.useState)(``),[u,d]=(0,U.useState)(``),[m,g]=(0,U.useState)(!1),[_,v]=(0,U.useState)(null),y=r.trim(),b=a.trim(),x=s.trim(),S=y.length>0&&b.length>0&&x.length>0&&!m;return(0,q.jsxs)(h.Content,{size:`md`,children:[(0,q.jsxs)(h.Header,{children:[(0,q.jsx)(h.Title,{children:`Create schedule`}),(0,q.jsx)(h.Description,{children:`Schedule a recurring instruction for your assistant. Runs in execute mode — the message is delivered to the assistant on each fire.`})]}),(0,q.jsxs)(`form`,{onSubmit:async t=>{if(t.preventDefault(),S){g(!0),v(null);try{let t={name:y,expression:b,message:x},r=u.trim();r&&(t.timezone=r),await fe(e,t),g(!1),n()}catch(e){v(e instanceof Error?e.message:`Failed to create schedule.`),g(!1)}}},children:[(0,q.jsx)(h.Body,{children:(0,q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,q.jsx)(p,{label:`Name`,placeholder:`Morning briefing`,value:r,onChange:e=>i(e.target.value),required:!0,autoFocus:!0,fullWidth:!0}),(0,q.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,q.jsx)(p,{label:`Cron expression`,placeholder:`0 9 * * *`,value:a,onChange:e=>o(e.target.value),required:!0,fullWidth:!0,helperText:`Standard 5-field cron (minute hour day month weekday). RRULE expressions are also accepted.`}),(0,q.jsx)(`div`,{className:`flex flex-wrap gap-1.5`,children:Ee.map(e=>(0,q.jsx)(c,{variant:`outlined`,size:`compact`,type:`button`,onClick:()=>o(e.expression),children:e.label},e.expression))})]}),(0,q.jsx)(p,{label:`Timezone (optional)`,placeholder:`America/New_York`,value:u,onChange:e=>d(e.target.value),fullWidth:!0,helperText:`IANA timezone name. Leave blank to use UTC.`}),(0,q.jsx)(f,{label:`Message`,placeholder:`What should the assistant do on each fire?`,value:s,onChange:e=>l(e.target.value),required:!0,fullWidth:!0,rows:4}),_?(0,q.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:_}):null]})}),(0,q.jsxs)(h.Footer,{children:[(0,q.jsx)(c,{variant:`outlined`,onClick:t,type:`button`,children:`Cancel`}),(0,q.jsx)(c,{variant:`primary`,type:`submit`,disabled:!S,children:m?`Creating…`:`Create schedule`})]})]})]})}function Oe(e=ie(),t=Date.now()){return ue(`7d`,e,t)}function Y(e){return e?new Date(e).toLocaleString(void 0,{month:`short`,day:`numeric`,hour:`numeric`,minute:`2-digit`,hour12:!0}):`—`}function ke(e){return e==null?`—`:e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}var Ae=new Intl.NumberFormat(void 0,{style:`currency`,currency:`USD`,minimumFractionDigits:2,maximumFractionDigits:4});function X(e){return e==null||!Number.isFinite(e)?`—`:Ae.format(e)}function je(e){return`${e.toLocaleString()} ${e===1?`run`:`runs`}`}function Me(e){let t=Math.round(e/6e4);return t>=60&&t%60==0?`Every ${t/60} hr`:`Every ${t} min`}function Ne(e){return!!e.createdFromConversationId&&e.createdFromConversationExists===!0&&e.createdFromConversationArchivedAt==null}function Pe(e){return!!e.conversationId&&e.conversationExists===!0&&e.conversationArchivedAt==null}function Fe(e){return Ne(e)?e.createdFromConversationId??null:null}function Ie(e){return Pe(e)?e.conversationId??null:null}function Le(e){return typeof e==`string`&&e.length>0}var Z={heartbeat:`system-heartbeat`,consolidation:`system-consolidation`};function Re(e,t){return e&&t}function ze(e){switch(e){case Z.heartbeat:return`heartbeat`;case Z.consolidation:return`consolidation`;default:return null}}function Be(e){if(e.cronExpression)return e.timezone?`Cron: ${e.cronExpression} (${e.timezone})`:`Cron: ${e.cronExpression}`;let t=Me(e.intervalMs);return e.activeHoursStart!=null&&e.activeHoursEnd!=null&&(t+=` (${e.activeHoursStart}:00–${e.activeHoursEnd}:00)`),t}function Ve(e){return Me(e.intervalMs)}var He={execute:`positive`,notify:`warning`,script:`neutral`},Ue=1800;function We(e){let t=[],n=[];for(let r of e)r.isOneShot?n.push(r):t.push(r);return t.sort((e,t)=>e.enabled===t.enabled?(e.nextRunAt??1/0)-(t.nextRunAt??1/0):e.enabled?-1:1),n.sort((e,t)=>{let n=e.lastRunAt??e.nextRunAt??0;return(t.lastRunAt??t.nextRunAt??0)-n}),{recurring:t,oneTime:n}}function Ge(e,t,n=!0){return{queryKey:ee(e,t),queryFn:()=>e?ge(e,Oe(t)):Promise.resolve([]),enabled:n,staleTime:1e4}}function Ke(e){return{scheduleId:e,runCount:0,totalEstimatedCostUsd:0,eventCount:0}}function qe(e,t,n){let r=(t??[]).filter(e=>{let t=e.startedAt??e.createdAt;return t>=n.from&&t<=n.to});return{scheduleId:e,runCount:r.length,totalEstimatedCostUsd:r.reduce((e,t)=>{let n=t.estimatedCostUsd;return typeof n==`number`&&Number.isFinite(n)?e+n:e},0),eventCount:0}}function Q({status:e}){return(0,q.jsx)(`span`,{className:`inline-block h-2 w-2 rounded-full`,style:{backgroundColor:e===`ok`||e===`completed`?`var(--system-positive-strong)`:e===`error`||e===`failed`?`var(--system-negative-strong)`:`var(--content-tertiary)`},"aria-label":e??`unknown`})}function Je({scheduleName:e,usage:t,onOpenUsage:n}){if(t.status===`loading`)return(0,q.jsxs)(`div`,{"aria-label":`Loading schedule usage`,className:`flex w-[136px] shrink-0 items-center justify-end gap-3`,children:[(0,q.jsx)(`span`,{className:`h-8 w-14 animate-pulse rounded bg-[var(--surface-muted)]`}),(0,q.jsx)(`span`,{className:`h-8 w-14 animate-pulse rounded bg-[var(--surface-muted)]`})]});let r=t.status===`error`,i=r?`--`:X(t.summary.totalEstimatedCostUsd),a=r?`--`:je(t.summary.runCount);return(0,q.jsxs)(`div`,{className:`flex w-[136px] shrink-0 items-center justify-end gap-3 text-right`,children:[n?(0,q.jsxs)(`button`,{type:`button`,onClick:n,"aria-label":`View usage for ${e}`,className:`min-w-[54px] cursor-pointer rounded px-1 py-0.5 text-right transition-colors hover:bg-[var(--surface-hover)]`,children:[(0,q.jsx)(`span`,{className:`block text-label-small-default text-[var(--content-tertiary)]`,children:`Cost`}),(0,q.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-default)]`,children:i})]}):(0,q.jsxs)(`span`,{"aria-label":`Cost for ${e} in the last 7 days: ${i}`,className:`block min-w-[54px] px-1 py-0.5`,children:[(0,q.jsx)(`span`,{className:`block text-label-small-default text-[var(--content-tertiary)]`,children:`Cost`}),(0,q.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-default)]`,children:i})]}),(0,q.jsxs)(`span`,{"aria-label":`Runs for ${e} in the last 7 days: ${a}`,className:`block min-w-[54px] px-1 py-0.5`,children:[(0,q.jsx)(`span`,{className:`block text-label-small-default text-[var(--content-tertiary)]`,children:`Runs`}),(0,q.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-default)]`,children:a})]})]})}function $({runs:e,isLoading:t,emptyMessage:n=`No runs yet.`}){let i=r(),[a,o]=(0,U.useState)(null);return(0,q.jsx)(H,{title:`Recent runs`,children:t?(0,q.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,q.jsx)(y,{className:`h-5 w-5 animate-spin text-stone-400`})}):!e||e.length===0?(0,q.jsx)(`p`,{className:`py-4 text-center text-body-medium-lighter text-[var(--content-tertiary)] italic`,children:n}):(0,q.jsx)(`div`,{className:`divide-y divide-[var(--border-base)]`,children:e.map((e,t)=>{let n=Ie(e),r=Le(e.output),s=Le(e.error),c=!n&&(r||s),l=a===e.id,u=`schedule-run-details-${t}`;return(0,q.jsxs)(`div`,{children:[(0,q.jsx)(d,{label:(0,q.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-3`,children:[(0,q.jsx)(Q,{status:e.status}),(0,q.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,q.jsx)(`span`,{className:`block text-body-medium-lighter text-[var(--content-default)]`,children:Y(e.startedAt)}),(0,q.jsxs)(`span`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:[ke(e.durationMs),` ·`,` `,X(e.estimatedCostUsd),e.status===`error`&&e.error&&(0,q.jsxs)(`span`,{className:`ml-2 text-[var(--system-negative-strong)]`,children:[e.error.slice(0,80),e.error.length>80?`…`:``]})]})]}),n||c?(0,q.jsx)(v,{className:`h-4 w-4 shrink-0 text-[var(--content-tertiary)] transition-transform ${l?`rotate-90`:``}`}):null]}),onSelect:n?()=>i(R.conversation(n)):c?()=>o(l?null:e.id):void 0,"aria-label":`Run at ${Y(e.startedAt)}`,"aria-expanded":c?l:void 0,"aria-controls":c?u:void 0,className:`h-auto py-2.5 gap-3 -mx-2 px-2`}),c&&l?(0,q.jsx)(`div`,{id:u,className:`px-2 pb-3`,children:(0,q.jsxs)(`div`,{className:`space-y-3 rounded-md border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3`,children:[r?(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`div`,{className:`mb-1 text-body-small-default text-[var(--content-secondary)]`,children:`Output`}),(0,q.jsx)(`pre`,{className:`max-h-64 overflow-auto whitespace-pre-wrap break-words text-body-small-default font-mono text-[var(--content-default)]`,children:e.output})]}):null,s?(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`div`,{className:`mb-1 text-body-small-default text-[var(--content-secondary)]`,children:`Error`}),(0,q.jsx)(`pre`,{className:`max-h-64 overflow-auto whitespace-pre-wrap break-words text-body-small-default font-mono text-[var(--system-negative-strong)]`,children:e.error})]}):null]})}):null]},e.id)})})})}function Ye({schedule:e,assistantId:n,onUpdated:r}){let i=Math.round((e.timeoutMs??6e4)/1e3),[a,o]=(0,U.useState)(!1),[s,l]=(0,U.useState)(String(i)),[u,d]=(0,U.useState)(!1),f=()=>{l(String(i)),o(!0)},m=async i=>{d(!0);try{await pe(n,e.id,{timeoutMs:i}),o(!1),r()}catch(e){t(e,{context:`schedule_update_timeout`}),g.error(`Failed to update timeout.`)}finally{d(!1)}};return a?(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Timeout`}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(p,{type:`number`,min:1,max:Ue,value:s,onChange:e=>l(e.target.value),className:`w-24`,"aria-label":`Timeout in seconds`}),(0,q.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:`sec`}),(0,q.jsx)(c,{size:`compact`,onClick:()=>{let e=Number(s);if(!Number.isInteger(e)||e<1||e>1800){g.error(`Timeout must be a whole number between 1 and ${Ue} seconds.`);return}m(e*1e3)},disabled:u,children:u?`Saving…`:`Save`}),(0,q.jsx)(c,{variant:`outlined`,size:`compact`,onClick:()=>o(!1),disabled:u,children:`Cancel`})]})]}):(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Timeout`}),(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsxs)(`span`,{children:[i,`s`,e.timeoutMs==null?` (default)`:``]}),(0,q.jsx)(c,{variant:`outlined`,size:`compact`,onClick:f,children:`Edit`}),e.timeoutMs!=null&&(0,q.jsx)(c,{variant:`outlined`,size:`compact`,onClick:()=>void m(null),disabled:u,children:`Reset`})]})]})}function Xe({schedule:e,assistantId:n,onBack:i,onDeleted:a,onUpdated:s}){let l=r(),{data:d,isLoading:f,refetch:p}=o({queryKey:ne(n,e.id),queryFn:()=>he(n,e.id),staleTime:1e4}),[m,h]=(0,U.useState)(!1),[_,v]=(0,U.useState)(!1),[b,x]=(0,U.useState)(!1),S=async()=>{h(!0);try{await ye(n,e.id),p()}catch(e){t(e,{context:`schedule_run_now`}),g.error(`Failed to run schedule.`)}finally{h(!1)}},C=async()=>{x(!0);try{await ve(n,e.id),a()}catch(e){t(e,{context:`schedule_delete`}),g.error(`Failed to delete schedule.`),x(!1),v(!1)}},w=Fe(e);return(0,q.jsxs)(`div`,{className:`space-y-4`,children:[(0,q.jsxs)(`button`,{type:`button`,onClick:i,className:`flex items-center gap-1.5 text-body-medium-lighter text-[var(--content-secondary)] hover:text-[var(--content-default)] transition-colors`,children:[(0,q.jsx)(z,{className:`h-4 w-4`}),`Back to schedules`]}),(0,q.jsx)(H,{title:e.name,subtitle:e.description??void 0,accessory:(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(u,{tone:He[e.mode]??`neutral`,children:e.mode}),(0,q.jsx)(c,{variant:`outlined`,size:`compact`,leftIcon:(0,q.jsx)(ce,{className:`h-3.5 w-3.5`}),onClick:()=>l(R.logs.usageForSchedule(e.id)),children:`View usage`}),w?(0,q.jsx)(c,{variant:`outlined`,size:`compact`,leftIcon:(0,q.jsx)(se,{className:`h-3.5 w-3.5`}),onClick:()=>l(R.conversation(w)),children:`Source`}):null,e.mode===`script`&&(0,q.jsx)(c,{variant:`outlined`,size:`compact`,leftIcon:m?(0,q.jsx)(y,{className:`h-3.5 w-3.5 animate-spin`}):(0,q.jsx)(B,{className:`h-3.5 w-3.5`}),onClick:S,disabled:m,children:m?`Running…`:`Run now`})]}),children:(0,q.jsxs)(`div`,{className:`space-y-2 text-body-medium-lighter`,children:[e.mode===`script`&&e.script&&(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)] text-body-small-default`,children:`Command`}),(0,q.jsx)(`pre`,{className:`mt-1 rounded-md bg-[var(--surface-sunken)] p-2 text-body-small-default font-mono text-[var(--content-default)] whitespace-pre-wrap break-all`,children:e.script})]}),e.mode===`script`&&(0,q.jsx)(Ye,{schedule:e,assistantId:n,onUpdated:s}),(0,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Status`}),(0,q.jsx)(`span`,{children:e.enabled?`Enabled`:`Disabled`})]}),(0,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Next run`}),(0,q.jsx)(`span`,{children:Y(e.nextRunAt)})]}),e.lastRunAt&&(0,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Last run`}),(0,q.jsxs)(`span`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(Q,{status:e.lastStatus}),Y(e.lastRunAt)]})]})]})}),(0,q.jsx)($,{runs:d,isLoading:f}),(0,q.jsx)(H,{title:`Danger zone`,children:(0,q.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,children:[(0,q.jsxs)(`div`,{children:[(0,q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:`Delete this schedule`}),(0,q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Permanently removes the schedule and all its run history. This cannot be undone.`})]}),_?(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,q.jsx)(c,{variant:`ghost`,size:`compact`,onClick:()=>v(!1),disabled:b,children:`Cancel`}),(0,q.jsx)(c,{variant:`danger`,size:`compact`,onClick:()=>void C(),disabled:b,children:b?`Deleting…`:`Yes, delete`})]}):(0,q.jsx)(c,{variant:`dangerOutline`,size:`compact`,leftIcon:(0,q.jsx)(ae,{className:`h-3.5 w-3.5`}),onClick:()=>v(!0),children:`Delete`})]})})]})}function Ze({schedule:e,usage:t,onClick:n,onToggle:r,onOpenUsage:i}){return(0,q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 py-3 first:pt-0 last:pb-0 [&+&]:border-t [&+&]:border-[var(--border-base)]`,children:[(0,q.jsxs)(`button`,{type:`button`,onClick:n,className:`min-w-0 flex-1 text-left`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(`span`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:e.name}),(0,q.jsx)(u,{tone:He[e.mode]??`neutral`,children:e.mode})]}),(0,q.jsxs)(`div`,{className:`mt-0.5 flex items-center gap-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,q.jsx)(`span`,{className:`truncate`,children:e.description}),e.lastRunAt&&(0,q.jsxs)(`span`,{className:`flex shrink-0 items-center gap-1`,children:[(0,q.jsx)(Q,{status:e.lastStatus}),Y(e.lastRunAt)]})]})]}),(0,q.jsxs)(`div`,{className:`flex shrink-0 items-center gap-3`,children:[(0,q.jsx)(Je,{scheduleName:e.name,usage:t,onOpenUsage:i}),(0,q.jsx)(m,{checked:e.enabled,onChange:r,"aria-label":`Toggle ${e.name}`}),(0,q.jsx)(`button`,{type:`button`,onClick:n,"aria-label":`Open ${e.name}`,className:`flex h-7 w-7 cursor-pointer items-center justify-center rounded text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-hover)]`,children:(0,q.jsx)(v,{className:`h-4 w-4`})})]})]})}function Qe({kind:e,assistantId:t,name:n,subtitle:r,enabled:i,nextRunAt:a,lastRunAt:s,isRunning:l,onBack:d,onRunNow:f}){let{data:p,isLoading:m}=o({queryKey:[`system-task-runs`,t,e],queryFn:()=>e===`heartbeat`?W(t):G(t),staleTime:1e4});return(0,q.jsxs)(`div`,{className:`space-y-4`,children:[(0,q.jsxs)(`button`,{type:`button`,onClick:d,className:`flex items-center gap-1.5 text-body-medium-lighter text-[var(--content-secondary)] hover:text-[var(--content-default)] transition-colors`,children:[(0,q.jsx)(z,{className:`h-4 w-4`}),`Back to schedules`]}),(0,q.jsx)(H,{title:n,subtitle:r,accessory:(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(u,{tone:`neutral`,children:`system`}),(0,q.jsx)(c,{variant:`outlined`,size:`compact`,leftIcon:l?(0,q.jsx)(y,{className:`h-3.5 w-3.5 animate-spin`}):(0,q.jsx)(B,{className:`h-3.5 w-3.5`}),onClick:f,disabled:l,children:l?`Running…`:`Run now`})]}),children:(0,q.jsxs)(`div`,{className:`space-y-2 text-body-medium-lighter`,children:[(0,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Status`}),(0,q.jsx)(`span`,{children:i?`Enabled`:`Disabled`})]}),(0,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Next run`}),(0,q.jsx)(`span`,{children:Y(a)})]}),(0,q.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,q.jsx)(`span`,{className:`text-[var(--content-secondary)]`,children:`Last run`}),(0,q.jsx)(`span`,{children:Y(s)})]})]})}),(0,q.jsx)($,{runs:p,isLoading:m})]})}function $e({name:e,subtitle:t,enabled:n,nextRunAt:r,lastRunAt:i,usage:a,showToggle:o,onClick:s,onToggle:c}){return(0,q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3 rounded-md px-2 py-3 transition-colors hover:bg-[var(--surface-hover)] [&+&]:border-t [&+&]:border-[var(--border-base)]`,children:[(0,q.jsxs)(`button`,{type:`button`,onClick:s,"aria-label":`Open ${e}`,className:`flex min-w-0 flex-1 cursor-pointer flex-wrap items-center gap-3 text-left focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:[(0,q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(`span`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:e}),(0,q.jsx)(u,{tone:`neutral`,children:`system`})]}),(0,q.jsx)(`div`,{className:`mt-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:t}),(0,q.jsxs)(`div`,{className:`mt-0.5 flex flex-wrap items-center gap-x-3 gap-y-1 text-body-small-default text-[var(--content-tertiary)]`,children:[r?(0,q.jsxs)(`span`,{children:[`Next: `,Y(r)]}):null,i?(0,q.jsxs)(`span`,{children:[`Last: `,Y(i)]}):null]})]}),(0,q.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center justify-end gap-3`,children:[(0,q.jsx)(Je,{scheduleName:e,usage:a}),o?null:(0,q.jsx)(`span`,{className:`h-2 w-2 rounded-full`,style:{backgroundColor:n?`var(--system-positive-strong)`:`var(--content-disabled)`},"aria-label":n?`enabled`:`disabled`}),(0,q.jsx)(v,{className:`h-4 w-4 text-[var(--content-tertiary)]`})]})]}),o?(0,q.jsx)(m,{checked:n,onChange:c,"aria-label":`Toggle ${e}`}):null]})}function et({heartbeatConfig:e,consolidationConfig:t,heartbeatUsage:n,consolidationUsage:r,isLoading:i,hasError:a,onRetry:o,onSelectHeartbeat:s,onSelectConsolidation:c,showSystemTaskToggles:u,onToggleHeartbeat:d,onToggleConsolidation:f}){let p=e!=null,m=t?.available===!0;return!i&&!a&&!p&&!m?null:(0,q.jsx)(H,{title:`System`,subtitle:`Built-in jobs managed by the assistant runtime.`,children:i?(0,q.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,q.jsx)(y,{className:`h-5 w-5 animate-spin text-stone-400`})}):a&&!p&&!m?(0,q.jsxs)(l,{tone:`error`,children:[`Failed to load system jobs.`,` `,(0,q.jsx)(`button`,{type:`button`,onClick:o,className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]}):(0,q.jsxs)(`div`,{children:[p?(0,q.jsx)($e,{name:`Heartbeat`,subtitle:Be(e),enabled:e.enabled,nextRunAt:e.nextRunAt,lastRunAt:e.lastRunAt,usage:n,showToggle:u,onClick:s,onToggle:d}):null,m?(0,q.jsx)($e,{name:`Consolidation`,subtitle:Ve(t),enabled:t.enabled,nextRunAt:t.nextRunAt,lastRunAt:t.lastRunAt,usage:r,showToggle:u,onClick:c,onToggle:f}):null,a?(0,q.jsx)(`div`,{className:`pt-3 first:pt-0`,children:(0,q.jsxs)(l,{tone:`error`,children:[`Some system jobs failed to load.`,` `,(0,q.jsx)(`button`,{type:`button`,onClick:o,className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]})}):null]})})}function tt(e,n){let r=a(),{data:i,isLoading:s,isError:c,refetch:l}=o({queryKey:[`heartbeat-config`,e],queryFn:()=>be(e),enabled:!!e,staleTime:1e4}),{data:u,isLoading:d,isError:f,refetch:p}=o({queryKey:[`consolidation-config`,e],queryFn:()=>Ce(e),enabled:!!e,staleTime:1e4}),{data:m,isLoading:h,isError:_,refetch:v}=o({queryKey:[`system-task-runs-summary`,e,`heartbeat`,100],queryFn:()=>W(e,100),enabled:!!e&&i!=null,staleTime:1e4}),{data:y,isLoading:b,isError:x,refetch:S}=o({queryKey:[`system-task-runs-summary`,e,`consolidation`,100],queryFn:()=>G(e,100),enabled:!!e&&u?.available===!0,staleTime:1e4}),C=(0,U.useMemo)(()=>Oe(n),[n]),w=(0,U.useMemo)(()=>h?{status:`loading`}:_?{status:`error`}:{status:`ready`,summary:qe(Z.heartbeat,m,C)},[m,_,h,C]),T=(0,U.useMemo)(()=>b?{status:`loading`}:x?{status:`error`}:{status:`ready`,summary:qe(Z.consolidation,y,C)},[y,x,b,C]),[E,D]=(0,U.useState)(!1),[O,k]=(0,U.useState)(!1),A=(0,U.useRef)([]),j=(0,U.useCallback)(t=>{if(!e)return;let n=()=>{r.invalidateQueries({queryKey:[`system-task-runs`,e,t]})};n();let i=setTimeout(n,1e3),a=setTimeout(n,5e3);A.current.push(i,a)},[e,r]),M=(0,U.useCallback)(async n=>{if(!e)return;let r=n===`heartbeat`?D:k,i=n===`heartbeat`?Se:Te,a=n===`heartbeat`?l:p,o=n===`heartbeat`?v:S,s=n===`heartbeat`?`Heartbeat started.`:`Consolidation queued.`,c=n===`heartbeat`?`Heartbeat skipped.`:`Consolidation already queued or running.`;r(!0);try{let t=await i(e);a(),j(n),o(),t.ran?g.success(s):g.info(c)}catch(e){t(e,{context:`${n}_run_now`}),g.error(`Failed to run ${n}.`)}finally{r(!1)}},[e,p,S,l,v,j]),N=(0,U.useCallback)(async(n,i)=>{if(!e)return;let a=n===`heartbeat`?xe:we,o=[`${n}-config`,e],s=n===`heartbeat`?`Heartbeat`:`Consolidation`;try{let t=await a(e,{enabled:i});r.setQueryData(o,t),g.success(i?`${s} enabled.`:`${s} disabled.`)}catch(e){t(e,{context:`${n}_toggle`}),g.error(`Failed to toggle ${s.toLowerCase()}.`)}},[e,r]),P=(0,U.useCallback)(()=>{l(),p(),v(),S()},[p,S,l,v]);return(0,U.useEffect)(()=>{let e=A;return()=>{for(let t of e.current)clearTimeout(t);e.current=[]}},[]),{heartbeatConfig:i,consolidationConfig:u,heartbeatUsage:w,consolidationUsage:T,isLoading:s||d,hasError:c||f,hasAnySystemTask:i!=null||u?.available===!0,isHeartbeatRunning:E,isConsolidationRunning:O,isHeartbeatLoading:s,isHeartbeatError:c,isConsolidationLoading:d,isConsolidationError:f,refetchHeartbeat:l,refetchConsolidation:p,handleRunNow:M,handleToggle:N,refetchAll:P}}function nt({onCreate:e}){return(0,q.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-lift)] px-6 py-16 text-center`,children:[(0,q.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--tag-bg-neutral)]`,children:(0,q.jsx)(_,{className:`h-6 w-6 text-[var(--content-faint)]`})}),(0,q.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:`No schedules`}),(0,q.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-quiet)]`,children:`Scheduled automations will appear here once created. You can create one yourself or ask your assistant to set it up.`}),(0,q.jsx)(`div`,{className:`mt-4`,children:(0,q.jsxs)(c,{variant:`primary`,onClick:e,children:[(0,q.jsx)(V,{className:`h-4 w-4`}),`Create schedule`]})})]})}function rt({onBack:e}){return(0,q.jsxs)(`div`,{className:`space-y-4`,children:[(0,q.jsxs)(`button`,{type:`button`,onClick:e,className:`flex items-center gap-1.5 text-body-medium-lighter text-[var(--content-secondary)] hover:text-[var(--content-default)] transition-colors`,children:[(0,q.jsx)(z,{className:`h-4 w-4`}),`Back to schedules`]}),(0,q.jsx)(l,{tone:`error`,children:`Schedule not found. It may have been deleted or the link may be out of date.`})]})}function it(){let e=r(),{scheduleId:n}=i(),a=oe(),s=Re(re.use.hasHydrated(),re.use.systemScheduleToggles()),u=le(),{data:d,isLoading:f,isError:p,refetch:m}=o({queryKey:te(u),queryFn:()=>me(u),staleTime:1e4}),{data:h,isLoading:_,isError:v}=o(Ge(u,a,n==null)),b=tt(u,a),x=ze(n),[S,C]=(0,U.useState)(!1),w=(0,U.useMemo)(()=>n&&!x?d?.find(e=>e.id===n)??null:null,[d,n,x]),T=(0,U.useMemo)(()=>new Map((h??[]).map(e=>[e.scheduleId,e])),[h]),E=(0,U.useCallback)(e=>_?{status:`loading`}:v?{status:`error`}:{status:`ready`,summary:T.get(e)??Ke(e)},[v,_,T]),D=()=>e(R.settings.schedules),O=t=>e(R.settings.schedule(t)),k=(0,U.useCallback)(()=>{C(!1),m(),g.success(`Schedule created.`)},[m]),A=(0,U.useCallback)(async(e,n)=>{try{await _e(u,e,n),m()}catch(e){t(e,{context:`schedule_toggle`}),g.error(`Failed to toggle schedule.`)}},[u,m]);if(x===`heartbeat`&&b.heartbeatConfig)return(0,q.jsx)(Qe,{kind:`heartbeat`,assistantId:u,name:`Heartbeat`,subtitle:Be(b.heartbeatConfig),enabled:b.heartbeatConfig.enabled,nextRunAt:b.heartbeatConfig.nextRunAt,lastRunAt:b.heartbeatConfig.lastRunAt,isRunning:b.isHeartbeatRunning,onBack:D,onRunNow:()=>void b.handleRunNow(`heartbeat`)},`heartbeat`);if(x===`consolidation`&&b.consolidationConfig?.available===!0)return(0,q.jsx)(Qe,{kind:`consolidation`,assistantId:u,name:`Consolidation`,subtitle:Ve(b.consolidationConfig),enabled:b.consolidationConfig.enabled,nextRunAt:b.consolidationConfig.nextRunAt,lastRunAt:b.consolidationConfig.lastRunAt,isRunning:b.isConsolidationRunning,onBack:D,onRunNow:()=>void b.handleRunNow(`consolidation`)},`consolidation`);if(w)return(0,q.jsx)(Xe,{schedule:w,assistantId:u,onBack:D,onDeleted:()=>{D(),m()},onUpdated:()=>void m()},w.id);if(f||x&&b.isLoading)return(0,q.jsx)(`div`,{className:`w-full`,children:(0,q.jsx)(`div`,{className:`flex min-h-[400px] items-center justify-center`,children:(0,q.jsx)(y,{className:`h-6 w-6 animate-spin text-stone-400`})})});if(p&&!d)return(0,q.jsx)(`div`,{className:`w-full`,children:(0,q.jsxs)(l,{tone:`error`,children:[`Failed to load schedules.`,` `,(0,q.jsx)(`button`,{type:`button`,onClick:()=>void m(),className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]})});if(x&&b.hasError)return(0,q.jsxs)(`div`,{className:`mx-auto max-w-[940px] space-y-3`,children:[(0,q.jsxs)(l,{tone:`error`,children:[`Failed to load`,` `,x===`heartbeat`?`heartbeat`:`consolidation`,` `,`schedule.`,` `,(0,q.jsx)(`button`,{type:`button`,onClick:()=>{x===`heartbeat`?b.refetchHeartbeat():b.refetchConsolidation()},className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]}),(0,q.jsxs)(c,{variant:`outlined`,onClick:D,children:[(0,q.jsx)(z,{className:`h-4 w-4`}),`Back to schedules`]})]});if(n!=null)return(0,q.jsx)(rt,{onBack:D});if(!d||d.length===0&&!b.hasAnySystemTask&&!b.isLoading&&!b.hasError)return(0,q.jsxs)(`div`,{className:`w-full`,children:[(0,q.jsx)(nt,{onCreate:()=>C(!0)}),u?(0,q.jsx)(J,{isOpen:S,assistantId:u,onClose:()=>C(!1),onCreated:k}):null]});let{recurring:j,oneTime:M}=We(d);return(0,q.jsxs)(`div`,{className:`space-y-4`,children:[(0,q.jsx)(`div`,{className:`flex items-center justify-end`,children:(0,q.jsxs)(c,{variant:`primary`,onClick:()=>C(!0),children:[(0,q.jsx)(V,{className:`h-4 w-4`}),`New schedule`]})}),v?(0,q.jsx)(l,{tone:`warning`,className:`py-2 text-body-small-default`,children:`Schedule usage stats are unavailable right now.`}):null,j.length>0&&(0,q.jsx)(H,{title:`Schedules`,subtitle:`Recurring automations managed by your assistant.`,children:(0,q.jsx)(`div`,{children:j.map(t=>(0,q.jsx)(Ze,{schedule:t,usage:E(t.id),onClick:()=>O(t.id),onToggle:e=>void A(t.id,e),onOpenUsage:()=>e(R.logs.usageForSchedule(t.id))},t.id))})}),(0,q.jsx)(et,{heartbeatConfig:b.heartbeatConfig,consolidationConfig:b.consolidationConfig,heartbeatUsage:b.heartbeatUsage,consolidationUsage:b.consolidationUsage,isLoading:b.isLoading,hasError:b.hasError,onRetry:b.refetchAll,onSelectHeartbeat:()=>O(Z.heartbeat),onSelectConsolidation:()=>O(Z.consolidation),showSystemTaskToggles:s,onToggleHeartbeat:e=>void b.handleToggle(`heartbeat`,e),onToggleConsolidation:e=>void b.handleToggle(`consolidation`,e)}),M.length>0&&(0,q.jsx)(H,{title:`One-time`,subtitle:`One-shot automations that run once at a scheduled time.`,children:(0,q.jsx)(`div`,{children:M.map(t=>(0,q.jsx)(Ze,{schedule:t,usage:E(t.id),onClick:()=>O(t.id),onToggle:e=>void A(t.id,e),onOpenUsage:()=>e(R.logs.usageForSchedule(t.id))},t.id))})}),u?(0,q.jsx)(J,{isOpen:S,assistantId:u,onClose:()=>C(!1),onCreated:k}):null]})}export{it as SchedulesPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{d as n,h as r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as i}from"./jsx-runtime-CVSDxk6A.js";import{t as a}from"./button-DdEh-9f_.js";import{t as o}from"./resolved-assistants-store-ub66utfl.js";import{n as s,r as c}from"./auth-store-CiQCAKS1.js";import{i as l}from"./routes-Dk5Qeryt.js";import{Ea as u,Mn as d,Qa as f,mo as p}from"./index-BjEJFZTJ.js";import{r as m}from"./format-date-lYqfuFdi.js";import{t as h}from"./onboarding-layout-BIVa2BnX.js";import{t as g}from"./use-onboarding-login-Cd72-1Qe.js";var _=e(t(),1),v=i();function y(e){return e.name?e.name:e.isLocal?`Local Assistant`:`Cloud Assistant`}function b(e){if(e.hatchedAt)return`Created ${m(e.hatchedAt)}`}function x(){let e=n(),[t]=r(),i=t.get(`fromLogin`)===`1`,u=c(),f=o.use.assistants(),{loading:p,error:m,login:y,cancel:b}=g(),x=e=>e.isLocal||u,C=f.filter(x),w=f.some(e=>e.isPlatformHosted)&&!u,[T,E]=(0,_.useState)(null),[D,O]=(0,_.useState)(!1),[k,A]=(0,_.useState)(!1),[j,M]=(0,_.useState)(null);(0,_.useEffect)(()=>{T==null&&C.length>0&&E(C[0].id)},[T,C]);let N=async t=>{O(!0),M(null);try{t.isLocal?await s.getState().connectLocalAssistant(t.id):(await d(t.id),await s.getState().connectPlatformAssistant(t.id)),e(l.assistant,{replace:!0})}catch{M(`Failed to connect. Please try again.`),O(!1)}};(0,_.useEffect)(()=>{i||f.length!==0&&f.length===1&&C.length===1&&(A(!0),N(C[0]))},[]);let P=()=>{let e=f.find(e=>e.id===T);e&&N(e)},F=()=>{e(l.welcome)},I=m??j;return k&&!I?(0,v.jsx)(h,{children:(0,v.jsx)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-xl flex-col items-center justify-center px-6 text-[var(--content-default)]`,children:(0,v.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:`Connecting to your assistant…`})})}):(0,v.jsx)(h,{children:(0,v.jsxs)(`div`,{className:`mx-auto flex min-h-screen w-full max-w-xl flex-col items-center px-6 pb-40 pt-16 text-[var(--content-default)]`,children:[(0,v.jsx)(`h1`,{className:`text-3xl font-semibold tracking-tight`,style:{animation:`fadeInUp 0.5s ease-out 0.1s both`},children:`Choose an Assistant`}),(0,v.jsx)(`p`,{className:`mt-3 text-body-medium-lighter text-[var(--content-tertiary)]`,style:{animation:`fadeInUp 0.5s ease-out 0.3s both`},children:`Select which assistant you’d like to use.`}),I&&(0,v.jsx)(`p`,{className:`mt-4 text-body-small-default text-[var(--system-negative-strong)]`,children:I}),(0,v.jsx)(`div`,{className:`mt-10 flex w-full flex-col gap-3`,style:{animation:`fadeInUp 0.5s ease-out 0.4s both`},children:f.map(e=>{let t=x(e);return(0,v.jsx)(S,{assistant:e,selected:T===e.id,disabled:!t,badge:!t&&e.isPlatformHosted?`Requires Account`:void 0,onSelect:()=>{t&&E(e.id)}},e.id)})}),(0,v.jsxs)(`div`,{className:`mt-8 flex w-full flex-col gap-2`,style:{animation:`fadeInUp 0.5s ease-out 0.5s both`},children:[C.length>0&&(0,v.jsx)(a,{variant:`primary`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:P,disabled:!T||D,children:D?`Connecting…`:`Continue`}),(0,v.jsx)(a,{variant:`outlined`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:()=>void e(`${l.onboarding.hosting}?from=select-assistant`),disabled:D||p,children:`Create New Assistant`}),w&&(0,v.jsx)(a,{variant:`outlined`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:p?b:()=>void y(),disabled:D,children:p?`Cancel`:`Log In`}),(0,v.jsx)(a,{variant:`outlined`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:F,disabled:D||p,children:`Back`})]})]})})}function S({assistant:e,selected:t,disabled:n,badge:r,onSelect:i}){let a=b(e);return(0,v.jsxs)(`button`,{type:`button`,onClick:i,disabled:n,className:[`group flex w-full items-center gap-4 rounded-2xl border px-5 py-4 text-left`,`transition-all duration-200 ease-out`,n?`cursor-not-allowed opacity-50`:`cursor-pointer hover:bg-[var(--surface-secondary)]`,t&&!n?`border-[var(--primary-base)] bg-[var(--primary-base)]/[0.08] shadow-[inset_0_0_0_1px_var(--primary-base)]`:`border-[var(--border-element)] bg-transparent`].join(` `),children:[(0,v.jsx)(`div`,{className:[`flex h-10 w-10 shrink-0 items-center justify-center rounded-xl transition-colors duration-200`,t&&!n?`bg-[var(--primary-base)]/15 text-[var(--primary-base)]`:`bg-[var(--surface-tertiary)] text-[var(--content-secondary)]`].join(` `),children:e.isLocal?(0,v.jsx)(u,{className:`h-5 w-5`}):(0,v.jsx)(f,{className:`h-5 w-5`})}),(0,v.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,v.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,v.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:y(e)}),r&&(0,v.jsx)(`span`,{className:`rounded-full bg-[var(--surface-tertiary)] px-2 py-0.5 text-body-small-default text-[var(--content-tertiary)]`,children:r})]}),a&&(0,v.jsx)(`span`,{className:`mt-0.5 block text-body-small-default text-[var(--content-tertiary)]`,children:a})]}),!n&&(0,v.jsx)(`div`,{className:[`flex h-5 w-5 shrink-0 items-center justify-center rounded-full border-2 transition-all duration-200`,t?`border-[var(--primary-base)] bg-[var(--primary-base)]`:`border-[var(--border-element)] group-hover:border-[var(--content-tertiary)]`].join(` `),children:t&&(0,v.jsx)(p,{className:`h-3 w-3 text-white`,strokeWidth:3})})]})}export{x as SelectAssistantScreen};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{i as n,u as r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as i}from"./QueryClientProvider-DNHWXaGq.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{t as o}from"./typography-Czgs_2w_.js";import{t as s}from"./resolved-assistants-store-ub66utfl.js";import{t as c}from"./is-electron-CavSPgmY.js";import{t as l}from"./loader-circle-BSAFLoPH.js";import{Y as u}from"./auth-store-CiQCAKS1.js";import{i as d}from"./routes-Dk5Qeryt.js";import{_ as f,g as p,v as m}from"./query-tags-Cez88bzY.js";import{t as h}from"./assistant-feature-flag-store-0382ImYF.js";import{t as g}from"./use-bus-subscription-BuU6xaZz.js";import{K as _,U as v,et as y,ir as b,pr as x}from"./index-BjEJFZTJ.js";import{n as S,t as C}from"./sidebar-tree-Cme65q7r.js";var w=e(t(),1);function T(){let e=E(i(),s.use.activeAssistantId());g(`sse.event`,t=>{if(!e)return;let n=t.message;n.type===`sync_changed`&&e.dispatch(n)}),g(`sse.opened`,({cause:t})=>{e&&t!==`fresh`&&e.dispatchReconnect()}),g(`app.resume`,()=>{e&&e.dispatchReconnect()})}function E(e,t){let n=(0,w.useMemo)(()=>{if(!t)return null;let n=_();return n.register(b.assistantConfig,()=>{p(e,t)}),n.register(b.assistantSounds,()=>{m(e,t)}),n.register(b.assistantSchedules,()=>{f(e,t)}),n},[e,t]);return(0,w.useEffect)(()=>{if(n)return()=>n.clear()},[n]),n}var D=a();function O(){let e=s.use.activeAssistantId(),t=u(e=>e.assistantState.kind),i=h.use.settingsDeveloperNav(),a=x.use.platformNotifications(),f=h.use.sounds(),p=y({platformHostedOnly:!0}),m=y(),{pathname:g}=r(),_=(0,w.useMemo)(()=>v.filter(e=>!(e.id===`notifications`&&(!a||p===`gated`)||e.id===`billing`&&m!==`full`||e.id===`devices`&&p===`gated`||e.id===`sounds`&&!f||e.id===`keyboard-shortcuts`&&!c()||e.id===`developer`)),[a,f,p,m]),b=(0,w.useMemo)(()=>i?v.filter(e=>e.id===`developer`):[],[i]),E=(0,w.useMemo)(()=>{if(g===d.settings.root)return`Settings`;let e=v.find(e=>g===e.href||g.startsWith(e.href+`/`));return e?e.label:`Settings`},[g]);return T(),(0,D.jsx)(S,{backHref:d.assistant,sidebar:(0,D.jsx)(C,{items:_,bottomItems:b}),title:E,children:!e||t!==`active`&&t!==`self_hosted`?(0,D.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col items-center justify-center gap-[var(--app-spacing-md)] text-[var(--content-tertiary)]`,role:`status`,"aria-live":`polite`,children:[(0,D.jsx)(l,{className:`size-6 animate-spin`,"aria-hidden":`true`}),(0,D.jsx)(o,{variant:`body-medium-default`,children:`Connecting to your assistant…`})]}):(0,D.jsx)(n,{})})}export{O as SettingsLayout};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e,r as t}from"./chunk-jRWAZmH_.js";import{t as n}from"./react-DJZBPgpf.js";import{T as r}from"./portal-container-DIXEBWUe.js";import{t as i}from"./useMutation-BuofVRHk.js";import{t as a}from"./jsx-runtime-CVSDxk6A.js";import{n as o,t as s}from"./button-DdEh-9f_.js";import{t as c}from"./dropdown-CocFV5yi.js";import{t as l}from"./notice-CF2pptne.js";import{n as u,t as d}from"./input-Cu3PPVCq.js";import{t as f}from"./toggle-CEm3M86o.js";import{t as p}from"./is-electron-CavSPgmY.js";import{t as m}from"./bug-DDEBp29t.js";import{t as h}from"./loader-circle-BSAFLoPH.js";import{t as g}from"./x-BDqbYVtS.js";import{zt as _}from"./sdk.gen-AJllUeDf.js";import{n as v}from"./auth-store-CiQCAKS1.js";import{t as y}from"./dist-B4KYfSON.js";import{t as b}from"./impersonate-version-flag-DXEwev6c.js";import{Da as ee,Ji as te,Lt as ne,_a as x,ba as re,la as S,sr as C,wa as w}from"./index-BjEJFZTJ.js";var T=e(n(),1),ie=e(r(),1),E=`vellum:debug:`;function D(){let e={};if(typeof window>`u`)return e;try{for(let t=0;t<window.localStorage.length;t++){let n=window.localStorage.key(t);if(n===null||!n.startsWith(E))continue;let r=window.localStorage.getItem(n);r!==null&&(e[n]=r)}}catch{}return e}function O(){return{collectedAt:new Date().toISOString(),resolved:{impersonateAssistantVersion:b()},overrides:D()}}var k=t({ShareFeedbackModal:()=>z}),A=a(),j=[{value:`bug_report`,label:`Bug Report`,icon:m,includesLogsByDefault:!0},{value:`feature_request`,label:`Feature Request`,icon:w,includesLogsByDefault:!1},{value:`other`,label:`Other`,icon:x,includesLogsByDefault:!1}],M=[{value:`past_hour`,label:`Past hour`,cutoffMs:3600*1e3},{value:`past_24_hours`,label:`Past 24 hours`,cutoffMs:1440*60*1e3},{value:`all_time`,label:`All time`,cutoffMs:null}],ae=M.map(e=>({value:e.value,label:e.label})),N=new Set([`image/png`,`image/jpeg`,`image/gif`,`image/webp`,`video/mp4`,`video/quicktime`,`video/webm`]),P=new Set([`png`,`jpg`,`jpeg`,`gif`,`webp`,`mp4`,`mov`,`webm`]),F=10,I=50*1024*1024,oe={bug_report:`bug_report`,feature_request:`feature_request`,other:`other`};function se(){return p()?`macos`:y.getPlatform()===`ios`?`ios`:`web`}function ce(e){if(e.size>I)return!1;if(e.type&&N.has(e.type))return!0;if(!e.type){let t=e.name.split(`.`).pop()?.toLowerCase();return t?P.has(t):!1}return!1}function L(e,t){let n=Math.ceil(t.length/512),r=new Uint8Array(512+n*512),i=new TextEncoder,a=(e,t,n)=>{let a=i.encode(e);r.set(a.slice(0,n),t)},o=(e,t,n)=>{a(e.toString(8).padStart(n-1,`0`)+`\0`,t,n)};a(e,0,100),o(420,100,8),o(0,108,8),o(0,116,8),o(t.length,124,12),o(Math.floor(Date.now()/1e3),136,12);for(let e=148;e<156;e++)r[e]=32;r[156]=48,a(`ustar\0`,257,6),a(`00`,263,2);let s=0;for(let e=0;e<512;e++)s+=r[e];return o(s,148,7),r[155]=32,r.set(t,512),r}async function R(e,t){try{let n={};t.window.startTime!=null&&(n.startTime=t.window.startTime,n.endTime=t.window.endTime),t.activeConversationId&&(n.conversationId=t.activeConversationId);let{data:r,error:i}=await _({path:{assistant_id:e},body:n,parseAs:`blob`,throwOnError:!1});if(i||!(r instanceof Blob))return null;let a=await r.arrayBuffer();return new Uint8Array(a)}catch{return null}}async function le(e,t,n,r){if(typeof CompressionStream>`u`)return null;let i=new Date,a=M.find(t=>t.value===e),o=i.getTime(),s=a?.cutoffMs==null?null:o-a.cutoffMs,c=s==null?null:new Date(s).toISOString(),l=null;try{l=r?.()??null}catch{l=null}let u=C(l),d={collected_at:i.toISOString(),time_range:e,cutoff:c,log_window:{start_time_ms:s,end_time_ms:o},assistant_id:t,active_conversation_id:n,user_agent:typeof navigator<`u`?navigator.userAgent:``,language:typeof navigator<`u`?navigator.language:``,platform:typeof navigator<`u`?navigator.platform:``,url:typeof window<`u`?window.location.href:``,viewport:typeof window<`u`?{width:window.innerWidth,height:window.innerHeight}:null,screen:typeof screen<`u`?{width:screen.width,height:screen.height}:null,connection:typeof navigator<`u`&&`connection`in navigator?{effectiveType:navigator.connection.effectiveType,downlink:navigator.connection.downlink,rtt:navigator.connection.rtt}:null,deviceMemory:typeof navigator<`u`&&`deviceMemory`in navigator?navigator.deviceMemory:null,hardwareConcurrency:typeof navigator<`u`?navigator.hardwareConcurrency:null},f=new TextEncoder().encode(JSON.stringify(d,null,2)),m=new TextEncoder().encode(JSON.stringify(u,null,2)),h=[L(`web-client-context.json`,f),L(`web-chat-diagnostics.json`,m)],g=new TextEncoder().encode(JSON.stringify(O(),null,2));h.push(L(`web-debug-flags.json`,g));try{let e=typeof window<`u`?window._vellumDebug?.chat:null;if(e){let t={clientMessages:e.getClientMessages?.()??null,transcriptItems:e.getTranscriptItems?.()??null,thinkingIndicator:e.thinkingIndicator?.()??null,streamingRing:e.streamingRing?.()??null},n=new TextEncoder().encode(JSON.stringify(t,null,2));h.push(L(`web-chat-debug-api-triage.json`,n))}}catch{}try{let e=typeof window<`u`?window._vellumDebug?.events:null;if(e){let t={focus:typeof document<`u`?{hasFocus:typeof document.hasFocus==`function`?document.hasFocus():null,visibilityState:document.visibilityState}:null,clients:e.getClients().map(({abortSignal:e,...t})=>({...t,aborted:e.aborted})),events:e.getEvents()},n=new TextEncoder().encode(JSON.stringify(t,null,2));h.push(L(`web-sse-liveness-triage.json`,n))}}catch{}if(p()&&window.vellum?.feedback){try{let e=await window.vellum.feedback.diagnostics(),t=new TextEncoder().encode(JSON.stringify(e,null,2));h.push(L(`electron-diagnostics.json`,t))}catch{}try{let e=await window.vellum.feedback.logs();if(e){let t=new TextEncoder().encode(e);h.push(L(`electron-main-logs.txt`,t))}}catch{}}if(t){let e=await R(t,{window:{startTime:s,endTime:o},activeConversationId:n});e&&h.push(L(`platform-logs.tar.gz`,e))}h.push(new Uint8Array(1024));let _=h.reduce((e,t)=>e+t.length,0),v=new Uint8Array(_),y=0;for(let e of h)v.set(e,y),y+=e.length;let b=new Blob([v.buffer]),ee=await new Response(b.stream().pipeThrough(new CompressionStream(`gzip`))).blob();return new File([ee],`web-client-logs-${i.getTime()}.tar.gz`,{type:`application/gzip`})}function z({open:e,onClose:t,initialReason:n,onSubmitted:r,assistantId:a,assistantVersion:m,activeConversationId:_,getDiagnosticsSnapshot:y}){let b=v.use.user()?.email,x=(0,T.useId)(),C=(0,T.useRef)(null),w=(0,T.useRef)(null),E=(0,T.useRef)(null),D=(0,T.useRef)(null),[O,k]=(0,T.useState)(n??`bug_report`),[M,N]=(0,T.useState)(``),[P,I]=(0,T.useState)(``),[L,R]=(0,T.useState)(j.find(e=>e.value===(n??`bug_report`))?.includesLogsByDefault??!0),[z,B]=(0,T.useState)(!1),[V,H]=(0,T.useState)(`past_hour`),[U,W]=(0,T.useState)([]),[G,K]=(0,T.useState)(null),[fe,q]=(0,T.useState)(!1),[J,Y]=(0,T.useState)(!1),X=i(ne()),[pe,Z]=(0,T.useState)(!1),Q=X.isPending||pe,me=!b,he=(0,T.useMemo)(()=>M.trim().length>0&&P.trim().length>0,[M,P]);(0,T.useEffect)(()=>{if(!e)return;let t=n??`bug_report`;k(t),N(``),I(b??``),R(j.find(e=>e.value===t)?.includesLogsByDefault??!0),B(!1),H(`past_hour`),W([]),Y(!1),K(null),Z(!1),X.reset();let r=setTimeout(()=>{b?E.current?.focus():D.current?.focus()},50);return()=>clearTimeout(r)},[e]),(0,T.useEffect)(()=>{if(!e)return;let t=document.body.style.overflow;return document.body.style.overflow=`hidden`,()=>{document.body.style.overflow=t}},[e]);let ge=e=>{k(e),z||R(j.find(t=>t.value===e)?.includesLogsByDefault??!1)},_e=()=>{R(e=>!e),B(!0)},ve=(0,T.useCallback)(e=>{e.key===`Escape`&&!Q&&t()},[t,Q]),ye=(0,T.useCallback)(e=>{e.target===C.current&&!Q&&t()},[t,Q]),$=(0,T.useCallback)(e=>{W(t=>{let n=F-t.length;if(n<=0)return t;let r=new Set(t.map(e=>`${e.name}:${e.size}`)),i=[];for(let t of e){if(i.length>=n)break;if(!ce(t))continue;let e=`${t.name}:${t.size}`;r.has(e)||(r.add(e),i.push(t))}return i.length>0?[...t,...i]:t})},[]),be=e=>{e.target.files&&$(Array.from(e.target.files)),e.target.value=``},xe=e=>{e.preventDefault(),q(!1),e.dataTransfer.files?.length&&$(Array.from(e.dataTransfer.files))},Se=e=>{e.preventDefault(),q(!0)},Ce=e=>{e.preventDefault(),e.currentTarget===e.target&&q(!1)},we=e=>{W(t=>t.filter((t,n)=>n!==e))};return e?(0,ie.createPortal)((0,A.jsx)(`div`,{ref:C,role:`dialog`,"aria-modal":`true`,"aria-labelledby":x,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,onKeyDown:ve,onClick:ye,onDrop:xe,onDragOver:Se,onDragLeave:Ce,children:(0,A.jsxs)(`div`,{className:`mx-4 flex w-full max-w-lg flex-col rounded-xl border p-6 shadow-xl`,style:{backgroundColor:`var(--surface-lift)`,borderColor:`var(--border-base)`,maxHeight:`calc(100vh - 2rem)`},children:[(0,A.jsxs)(`div`,{className:`flex items-center justify-between border-b pb-4`,style:{borderColor:`var(--border-subtle)`},children:[(0,A.jsx)(`h2`,{id:x,className:`!m-0 text-title-small text-[var(--content-default)]`,children:`Share Feedback`}),(0,A.jsx)(s,{variant:`ghost`,iconOnly:(0,A.jsx)(g,{}),onClick:t,disabled:Q,"aria-label":`Close`,tintColor:`var(--content-secondary)`})]}),(0,A.jsxs)(`div`,{className:`flex flex-col gap-3.5 overflow-y-auto pt-4 ${Q?`pointer-events-none opacity-60`:``}`,children:[me&&(0,A.jsx)(d,{id:`${x}-email`,ref:D,label:`Email`,type:`email`,placeholder:`you@example.com`,value:P,onChange:e=>I(e.target.value),leftIcon:(0,A.jsx)(re,{className:`h-4 w-4`,"aria-hidden":!0}),fullWidth:!0}),(0,A.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,A.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Category`}),(0,A.jsx)(`div`,{className:`flex gap-2`,children:j.map(e=>(0,A.jsx)(ue,{option:e,isSelected:O===e.value,onSelect:()=>ge(e.value)},e.value))})]}),(0,A.jsx)(`hr`,{className:`border-[var(--border-subtle)]`}),O===`bug_report`&&(0,A.jsxs)(l,{tone:`info`,children:[`Tip: Get faster support by posting in our`,` `,(0,A.jsx)(`a`,{href:`https://vellum.ai/community`,target:`_blank`,rel:`noopener noreferrer`,className:`underline text-[var(--content-default)]`,children:`Discord community`})]}),O===`feature_request`&&(0,A.jsxs)(l,{tone:`info`,children:[`Tip: Vote on features on our`,` `,(0,A.jsx)(`a`,{href:`https://vellum.ai/roadmap`,target:`_blank`,rel:`noopener noreferrer`,className:`underline text-[var(--content-default)]`,children:`public roadmap`})]}),(0,A.jsx)(u,{id:`${x}-message`,ref:E,label:O===`bug_report`?`What went wrong?`:O===`feature_request`?`Describe your idea`:`What's on your mind?`,rows:3,placeholder:O===`bug_report`?`What did you expect to happen, and what happened instead?`:O===`feature_request`?`What problem would this solve for you?`:`Share your thoughts...`,value:M,onChange:e=>N(e.target.value),fullWidth:!0}),O!==`feature_request`&&(0,A.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,A.jsxs)(`div`,{className:`flex items-center gap-2.5`,children:[(0,A.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2.5`,children:[(0,A.jsx)(f,{checked:L,onChange:_e,"aria-label":`Include browser diagnostics`}),(0,A.jsx)(`span`,{className:`text-body-medium-lighter leading-6 text-[var(--content-default)]`,children:`Include diagnostics`})]}),(0,A.jsx)(o,{content:`Diagnostics include browser context, assistant logs, and timestamps — never passwords or credentials.`,children:(0,A.jsx)(`button`,{type:`button`,"aria-label":`About diagnostics`,className:`inline-flex items-center justify-center text-[var(--content-tertiary)]`,children:(0,A.jsx)(ee,{className:`h-3.5 w-3.5`})})})]}),L&&(0,A.jsx)(c,{options:ae,value:V,onChange:H,"aria-label":`Diagnostics time range`})]}),p()&&_&&O!==`feature_request`&&(0,A.jsxs)(`label`,{className:`flex cursor-pointer items-center gap-2.5`,children:[(0,A.jsx)(f,{checked:J,onChange:()=>Y(e=>!e),"aria-label":`Include the most recent conversation`}),(0,A.jsx)(`span`,{className:`text-body-medium-lighter leading-6 text-[var(--content-default)]`,children:`Include the most recent conversation`})]}),(0,A.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,A.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,A.jsxs)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:[`Attachments`,U.length>0&&(0,A.jsxs)(`span`,{className:`text-[var(--content-tertiary)]`,children:[` · `,U.length,`/`,F]})]}),(0,A.jsx)(s,{variant:`outlined`,size:`compact`,leftIcon:(0,A.jsx)(S,{}),onClick:()=>w.current?.click(),disabled:U.length>=F,children:`Add files`}),(0,A.jsx)(`input`,{ref:w,type:`file`,multiple:!0,accept:`image/png,image/jpeg,image/gif,image/webp,video/mp4,video/quicktime,video/webm`,onChange:be,className:`hidden`})]}),U.length>0&&(0,A.jsx)(`div`,{className:`flex gap-2 overflow-x-auto`,children:U.map((e,t)=>(0,A.jsx)(de,{file:e,onRemove:()=>we(t)},`${e.name}-${t}`))}),fe&&(0,A.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:`Drop files to attach…`})]}),G&&(0,A.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--system-negative-strong)]`,children:G})]}),(0,A.jsx)(`div`,{className:`mt-4 flex items-center justify-end gap-2 border-t pt-4`,style:{borderColor:`var(--border-subtle)`},children:Q?(0,A.jsxs)(`span`,{className:`inline-flex items-center gap-2 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,A.jsx)(h,{className:`h-4 w-4 animate-spin`}),`Sending feedback…`]}):(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(s,{variant:`ghost`,onClick:t,children:`Cancel`}),(0,A.jsx)(s,{variant:`primary`,leftIcon:(0,A.jsx)(te,{}),onClick:async()=>{if(!(!he||Q)){K(null),Z(!0);try{let e=L&&O!==`feature_request`?await le(V,a??null,p()?J?_??null:null:_??null,y):null;await X.mutateAsync({headers:{"Content-Type":null},body:{message:M.trim(),classification:oe[O],email:P.trim(),client:se(),client_version:void 0,...a?{assistant_id:a}:{},...m?{assistant_version:m}:{},...e?{logs_file:e}:{},...U.length?{attachments:U}:{}},bodySerializer:e=>{let t=new FormData;for(let[n,r]of Object.entries(e))if(r!=null){if(n===`attachments`&&Array.isArray(r)){for(let e of r)t.append(`attachments`,e);continue}r instanceof Blob?t.append(n,r):t.append(n,String(r))}return t}}),r?.(),t()}catch(e){K(e instanceof Error?e.message:`Failed to submit feedback. Please try again.`)}finally{Z(!1)}}},disabled:!he,children:`Submit`})]})})]})}),document.body):null}function ue({option:e,isSelected:t,onSelect:n}){let r=e.icon;return(0,A.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":t,className:`flex items-center gap-1.5 rounded-full border px-3 py-1.5 text-left transition-colors`,style:{borderColor:t?`var(--primary-base)`:`var(--border-base)`,backgroundColor:t?`color-mix(in oklab, var(--primary-base) 10%, transparent)`:`transparent`},children:[(0,A.jsx)(r,{className:`h-3.5 w-3.5 shrink-0`,style:{color:t?`var(--primary-base)`:`var(--content-secondary)`}}),(0,A.jsx)(`span`,{className:`text-body-small-default`,style:{color:t?`var(--primary-base)`:`var(--content-default)`},children:e.label})]})}function de({file:e,onRemove:t}){let n=e.type.startsWith(`image/`),r=(0,T.useMemo)(()=>n?URL.createObjectURL(e):null,[e,n]);return(0,T.useEffect)(()=>{if(r)return()=>URL.revokeObjectURL(r)},[r]),(0,A.jsxs)(`div`,{className:`relative flex h-16 w-16 shrink-0 items-center justify-center overflow-hidden rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)]`,title:e.name,children:[n&&r?(0,A.jsx)(`img`,{src:r,alt:e.name,className:`h-full w-full object-cover`}):(0,A.jsx)(S,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,A.jsx)(s,{variant:`ghost`,size:`compact`,iconOnly:(0,A.jsx)(g,{}),onClick:t,"aria-label":`Remove ${e.name}`,className:`absolute top-0.5 right-0.5 h-4 w-4 rounded-full bg-black/60 text-white hover:bg-black/70`,tintColor:`#fff`})]})}export{k as n,z as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{a as t,t as n}from"./local-settings-lVNyIOJ_.js";import{t as r}from"./react-DJZBPgpf.js";import{T as i}from"./portal-container-DIXEBWUe.js";import{h as a}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as o}from"./QueryClientProvider-DNHWXaGq.js";import{t as s}from"./useQuery-D2zf6Uhu.js";import{t as c}from"./useMutation-BuofVRHk.js";import{t as l}from"./jsx-runtime-CVSDxk6A.js";import{t as u}from"./button-DdEh-9f_.js";import{t as d}from"./card-CL5iEMJO.js";import{t as f}from"./menu-B79-l6IU.js";import"./src-hn7lwVCD.js";import{t as p}from"./confirm-dialog-NYG-K9zN.js";import{n as m,r as h,t as g}from"./panel-item-FzMfzMJA.js";import{t as _}from"./input-Cu3PPVCq.js";import{n as v}from"./stat-square-sRJmexc-.js";import{t as y}from"./createLucideIcon-D6d6iDdi.js";import{a as b,c as x,i as S,n as C,o as w,r as T,s as E,t as D}from"./install-Uj6CrGld.js";import{t as O}from"./calendar-CP_Q3Aw6.js";import{t as k}from"./globe-ByNYDdSW.js";import{t as A}from"./link-2-BHdo-6Lp.js";import{t as j}from"./loader-circle-BSAFLoPH.js";import{t as M}from"./x-BDqbYVtS.js";import{F as ee,I as te,L as ne,M as re,N,P}from"./react-query.gen-B8xaBreR.js";import{n as ie}from"./use-is-mobile-D_xrnINF.js";import{Aa as F,Ba as I,Bi as L,Ci as R,La as z,Ni as B,Oi as V,Pa as H,Pi as U,Ta as W,Ui as G,Yi as K,Za as q,_a as ae,ba as oe,bo as se,eo as ce,ji as le,ma as ue,mo as de,po as fe,qi as pe,ua as me,uo as J,xo as Y}from"./index-BjEJFZTJ.js";import{t as he}from"./use-active-assistant-id-BIhArlF_.js";import{n as ge,t as _e}from"./file-markdown-DX5x9ziL.js";var ve=y(`funnel`,[[`path`,{d:`M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z`,key:`sc7q7i`}]]),ye=y(`palette`,[[`path`,{d:`M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z`,key:`e79jfc`}],[`circle`,{cx:`13.5`,cy:`6.5`,r:`.5`,fill:`currentColor`,key:`1okk4w`}],[`circle`,{cx:`17.5`,cy:`10.5`,r:`.5`,fill:`currentColor`,key:`f64h9f`}],[`circle`,{cx:`6.5`,cy:`12.5`,r:`.5`,fill:`currentColor`,key:`qy21gx`}],[`circle`,{cx:`8.5`,cy:`7.5`,r:`.5`,fill:`currentColor`,key:`fotxhn`}]]),X=e(r(),1),be={mail:oe,calendar:O,"message-circle":ae,globe:k,zap:R,code:q,mic:ue,"shopping-cart":G,palette:ye,heart:F,settings:pe,"link-2":A};function xe(e){return be[e]}var Z=l();function Se({selected:e,onSelect:t,counts:n,totalCount:r,showCounts:i,categories:a}){let o=[...a].sort((e,t)=>e.label.localeCompare(t.label));return(0,Z.jsxs)(`nav`,{className:`flex flex-col gap-1`,"aria-label":`Skill categories`,children:[(0,Z.jsx)(Ce,{icon:W,label:`All`,count:r,isActive:e===null,showCount:i,onClick:()=>t(null)}),o.map(r=>(0,Z.jsx)(Ce,{icon:xe(r.icon)??W,label:r.label,count:n[r.slug]??0,isActive:e===r.slug,showCount:i,onClick:()=>t(r.slug)},r.slug))]})}function Ce({icon:e,label:t,count:n,isActive:r,showCount:i,onClick:a}){return(0,Z.jsxs)(u,{variant:`ghost`,onClick:a,"aria-pressed":r,className:`h-auto justify-between gap-3 rounded-lg border-0 bg-transparent px-3 py-2 text-left hover:bg-[var(--ghost-hover)]`,style:{backgroundColor:r?`var(--surface-active)`:void 0,color:r?`var(--content-default)`:`var(--content-secondary)`},children:[(0,Z.jsxs)(`span`,{className:`flex items-center gap-2.5`,children:[(0,Z.jsx)(e,{className:`h-4 w-4 shrink-0`,"aria-hidden":!0}),(0,Z.jsx)(`span`,{className:`text-body-medium-default`,children:t})]}),i&&(0,Z.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:n})]})}var we=e(i(),1);function Te(e,t){return t??e.find(e=>e.name===`SKILL.md`)?.path??null}function Ee(e,t){let[n,r]=(0,X.useState)(null),i=s({...P({path:{assistant_id:e,id:t}}),select:e=>e??null}),a=(0,X.useMemo)(()=>i.data?.files??[],[i.data]),o=(0,X.useMemo)(()=>a.find(e=>e.name===`SKILL.md`),[a]),c=Te(a,n),l=s({...N({path:{assistant_id:e,id:t},query:{path:c??``}}),select:e=>e??null,enabled:!!c});return{fileEntries:a,skillMd:o,selectedPath:n,setSelectedPath:r,activePath:c,activeFile:a.find(e=>e.path===c),isFilesLoading:i.isLoading,fileContent:l.data?.content??null,isBinary:!!l.data?.isBinary,isContentLoading:l.isLoading}}function De({fileName:e,content:t,isBinary:n,viewMode:r=`preview`}){return n?(0,Z.jsx)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Binary file — no preview available.`}):t===null?(0,Z.jsxs)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:[`No preview available for `,e,`.`]}):ge(e,void 0)&&r===`preview`?(0,Z.jsx)(`div`,{className:`h-full overflow-auto px-6 py-4`,style:{color:`var(--content-default)`},children:(0,Z.jsx)(_e,{content:t})}):(0,Z.jsx)(`pre`,{className:`h-full overflow-y-auto whitespace-pre-wrap break-words p-4 font-mono text-body-small-default`,style:{color:`var(--content-default)`},children:t})}function Oe({assistantId:e,skill:t,onBack:n,onInstall:r,onRemove:i,isInstalling:a=!1,isRemoving:o=!1}){let s=T(t),c=b(t),{fileEntries:l,setSelectedPath:f,activePath:p,activeFile:m,isFilesLoading:h,fileContent:g,isBinary:_,isContentLoading:y}=Ee(e,t.id),[x,S]=(0,X.useState)(`preview`);(0,X.useEffect)(()=>{S(`preview`)},[p]);let[C,D]=(0,X.useState)(null);(0,X.useEffect)(()=>{D(document.getElementById(`viewport-overlays`))},[]);let O=m?ge(m.name,void 0):!1,k=O?x:`raw`,A=(0,Z.jsxs)(`div`,{className:`fixed inset-0 z-40 flex flex-col overflow-hidden bg-[var(--surface-overlay)]`,style:{paddingTop:`calc(8px + var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))`,paddingBottom:`calc(8px + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))`,paddingLeft:`calc(12px + var(--safe-area-inset-left, env(safe-area-inset-left, 0px)))`,paddingRight:`calc(12px + var(--safe-area-inset-right, env(safe-area-inset-right, 0px)))`},children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Z.jsx)(u,{variant:`ghost`,iconOnly:(0,Z.jsx)(se,{"aria-hidden":!0}),expandOnMobile:!0,"aria-label":`Back to skills`,onClick:n,className:`max-md:bg-[var(--surface-active)]`}),(0,Z.jsx)(`span`,{className:`min-w-0 flex-1 truncate px-2 text-center text-body-medium-default`,style:{color:`var(--content-secondary)`},children:t.name}),(0,Z.jsx)(ke,{available:s,removable:c,isInstalling:a,isRemoving:o,onInstall:r,onRemove:i})]}),(0,Z.jsxs)(`div`,{className:`mt-4 flex flex-col gap-2`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,Z.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Z.jsx)(E,{skill:t,className:`h-6 w-6 shrink-0 text-[22px] leading-none`}),(0,Z.jsx)(`h2`,{className:`min-w-0 truncate text-title-medium`,style:{color:`var(--content-emphasised)`},children:t.name})]}),(0,Z.jsx)(w,{origin:t.origin})]}),(0,Z.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t.description})]}),(0,Z.jsx)(d.Root,{asChild:!0,noPadding:!0,children:(0,Z.jsxs)(`div`,{className:`mt-6 flex min-h-0 flex-1 flex-col overflow-hidden rounded-2xl border bg-[var(--surface-lift)]`,style:{borderColor:`var(--border-hover)`},children:[(0,Z.jsxs)(`div`,{className:`flex items-center justify-between gap-2 border-b px-3 py-2`,style:{borderColor:`var(--border-hover)`},children:[(0,Z.jsx)(je,{fileEntries:l,activePath:p,activeName:m?.name??null,onSelect:f}),(0,Z.jsx)(v,{iconOnly:!0,ariaLabel:`File view mode`,value:k,onChange:S,items:[{value:`preview`,label:`Preview`,icon:(0,Z.jsx)(I,{"aria-hidden":!0}),disabled:!O},{value:`raw`,label:`Source`,icon:(0,Z.jsx)(q,{"aria-hidden":!0})}]})]}),(0,Z.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:h||y?(0,Z.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,Z.jsx)(j,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})}):m?(0,Z.jsx)(De,{fileName:m.name,content:g,isBinary:_,viewMode:k}):(0,Z.jsx)(`p`,{className:`flex h-full items-center justify-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Select a file to view its contents.`})})]})})]});return C?(0,we.createPortal)(A,C):A}function ke({available:e,removable:t,isInstalling:n,isRemoving:r,onInstall:i,onRemove:a}){return n||r?(0,Z.jsx)(u,{variant:`ghost`,iconOnly:(0,Z.jsx)(j,{className:`animate-spin`,"aria-hidden":!0}),expandOnMobile:!0,disabled:!0,"aria-label":`Pending`,className:`max-md:bg-[var(--surface-active)]`}):e?(0,Z.jsx)(u,{variant:`ghost`,iconOnly:(0,Z.jsx)(Y,{"aria-hidden":!0}),expandOnMobile:!0,"aria-label":`Install skill`,onClick:i,disabled:!i,className:`max-md:bg-[var(--surface-active)]`}):t?(0,Z.jsx)(u,{variant:`dangerGhost`,iconOnly:(0,Z.jsx)(B,{"aria-hidden":!0}),expandOnMobile:!0,"aria-label":`Remove skill`,onClick:a,disabled:!a,className:`max-md:rounded-full max-md:bg-[var(--system-negative-weak)]`}):(0,Z.jsx)(u,{variant:`dangerGhost`,iconOnly:(0,Z.jsx)(B,{"aria-hidden":!0}),expandOnMobile:!0,disabled:!0,title:`Bundled skills cannot be removed`,"aria-label":`Bundled skill cannot be removed`,className:`max-md:rounded-full max-md:bg-[var(--system-negative-weak)]`})}function Ae(e){return(e??``).endsWith(`/directory`)}function je({fileEntries:e,activePath:t,activeName:n,onSelect:r}){let i=n??`Select a file`;return e.length===0?(0,Z.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2 text-body-medium-default`,style:{color:`var(--content-emphasised)`},children:[(0,Z.jsx)(Me,{}),(0,Z.jsx)(`span`,{className:`truncate`,children:i})]}):(0,Z.jsxs)(f.Root,{children:[(0,Z.jsx)(f.Trigger,{children:(0,Z.jsxs)(`button`,{type:`button`,className:`flex min-w-0 items-center gap-2 rounded-md text-body-medium-default`,style:{color:`var(--content-emphasised)`},children:[(0,Z.jsx)(Me,{}),(0,Z.jsx)(`span`,{className:`truncate`,children:i}),(0,Z.jsx)(fe,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0})]})}),(0,Z.jsx)(f.Content,{align:`start`,children:e.map(e=>{let n=Ae(e.mimeType);return(0,Z.jsx)(f.Item,{onSelect:()=>r(e.path),leftIcon:n?(0,Z.jsx)(H,{}):(0,Z.jsx)(z,{}),"aria-current":e.path===t?`true`:void 0,children:e.name},e.path)})})]})}function Me(){return(0,Z.jsx)(`span`,{className:`flex h-6 w-6 shrink-0 items-center justify-center rounded-md bg-[var(--surface-base)]`,"aria-hidden":!0,children:(0,Z.jsx)(z,{className:`h-4 w-4`,style:{color:`var(--content-secondary)`}})})}var Ne=[{value:`all`,label:`All`,icon:W},{value:`installed`,label:`Installed`,icon:J},{value:`available`,label:`Available`,icon:Y}],Pe=[{value:`vellum`,label:`Vellum`,icon:x},{value:`clawhub`,label:`Clawhub`,icon:k},{value:`skillssh`,label:`skills.sh`,icon:U},{value:`custom`,label:`Custom`,icon:V}];function Fe({search:e,onSearchChange:t,filter:n,onFilterChange:r,isSearching:i,categories:a,category:o,onCategoryChange:s,counts:c,totalCount:l,showCounts:u}){return(0,Z.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Z.jsx)(_,{type:`search`,value:e,onChange:e=>{t(e.target.value)},placeholder:`Search skills`,"aria-label":`Search skills`,leftIcon:(0,Z.jsx)(K,{className:`h-4 w-4`,"aria-hidden":!0}),rightIcon:i?(0,Z.jsx)(j,{className:`h-4 w-4 animate-spin`,"aria-hidden":!0}):void 0,fullWidth:!0,wrapperClassName:`flex-1`}),(0,Z.jsx)(Ie,{filter:n,onFilterChange:r,categories:a,category:o,onCategoryChange:s,counts:c,totalCount:l,showCounts:u})]})}function Ie(e){let t=ie(),[n,r]=(0,X.useState)(!1),i=(0,Z.jsx)(u,{type:`button`,variant:`outlined`,iconOnly:(0,Z.jsx)(ve,{"aria-hidden":!0}),"aria-label":`Filter skills`,"aria-haspopup":t?`dialog`:`listbox`,"aria-expanded":n,tintColor:`var(--primary-base)`});return t?(0,Z.jsx)(Le,{...e,open:n,onOpenChange:r,trigger:i}):(0,Z.jsxs)(h.Root,{open:n,onOpenChange:r,children:[(0,Z.jsx)(h.Trigger,{asChild:!0,children:i}),(0,Z.jsx)(h.Content,{align:`end`,sideOffset:4,className:`w-44 overflow-hidden p-0`,children:(0,Z.jsxs)(`ul`,{role:`listbox`,children:[(0,Z.jsx)(Re,{label:`Status`,options:Ne,selected:e.filter,onSelect:t=>{e.onFilterChange(t),r(!1)}}),(0,Z.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,Z.jsx)(Re,{label:`Source`,options:Pe,selected:e.filter,onSelect:t=>{e.onFilterChange(t),r(!1)}})]})})]})}function Le({filter:e,onFilterChange:t,categories:n,category:r,onCategoryChange:i,counts:a,totalCount:o,showCounts:s,open:c,onOpenChange:l,trigger:d}){let f=[...n].sort((e,t)=>e.label.localeCompare(t.label));return(0,Z.jsxs)(m.Root,{open:c,onOpenChange:l,children:[(0,Z.jsx)(m.Trigger,{asChild:!0,children:d}),(0,Z.jsxs)(m.Content,{className:`max-h-[85dvh]`,"aria-describedby":void 0,children:[(0,Z.jsx)(`div`,{"aria-hidden":!0,className:`mx-auto mb-3 h-1 w-9 shrink-0 rounded-full bg-[var(--border-element)]`}),(0,Z.jsx)(m.Header,{children:(0,Z.jsx)(m.Title,{children:`Filters`})}),(0,Z.jsxs)(m.Body,{className:`flex flex-col gap-3 pt-2`,children:[(0,Z.jsx)(Q,{label:`Status`,children:Ne.map(n=>(0,Z.jsx)($,{icon:n.icon,label:n.label,active:e===n.value,onSelect:()=>t(n.value)},n.value))}),(0,Z.jsx)(Q,{label:`Source`,children:Pe.map(n=>(0,Z.jsx)($,{icon:n.icon,label:n.label,active:e===n.value,onSelect:()=>t(n.value)},n.value))}),(0,Z.jsxs)(Q,{label:`Categories`,children:[(0,Z.jsx)($,{icon:W,label:`All`,active:r===null,badge:s?o:void 0,onSelect:()=>i(null)}),f.map(e=>(0,Z.jsx)($,{icon:xe(e.icon)??W,label:e.label,active:r===e.slug,badge:s?a[e.slug]??0:void 0,onSelect:()=>i(e.slug)},e.slug))]})]}),(0,Z.jsx)(m.Footer,{children:(0,Z.jsx)(u,{type:`button`,variant:`primary`,fullWidth:!0,onClick:()=>l(!1),children:`Done`})})]})]})}function Q({label:e,children:t}){return(0,Z.jsxs)(`div`,{children:[(0,Z.jsx)(`div`,{className:`px-2 pb-1 text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:e}),t]})}function $({icon:e,label:t,active:n,badge:r,onSelect:i}){return(0,Z.jsx)(g,{icon:e,label:t,active:n,activeVariant:`branded`,badge:r,trailingAction:n&&r==null?(0,Z.jsx)(de,{className:`h-4 w-4 text-[var(--primary-base)]`,"aria-hidden":!0}):void 0,onSelect:i})}function Re({label:e,options:t,selected:n,onSelect:r}){return(0,Z.jsxs)(`li`,{children:[(0,Z.jsx)(`div`,{className:`px-3 pb-1 pt-2 text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:e}),(0,Z.jsx)(`ul`,{children:t.map(e=>{let t=e.icon,i=n===e.value;return(0,Z.jsx)(`li`,{children:(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>r(e.value),role:`option`,"aria-selected":i,className:`flex w-full items-center gap-2 px-3 py-1.5 text-left text-body-medium-lighter transition-colors hover:bg-[var(--surface-hover)]`,style:{color:i?`var(--primary-base)`:`var(--content-default)`},children:[(0,Z.jsx)(t,{className:`h-4 w-4`,"aria-hidden":!0}),(0,Z.jsx)(`span`,{className:`flex-1`,children:e.label}),i&&(0,Z.jsx)(J,{className:`h-3.5 w-3.5`,"aria-hidden":!0})]})},e.value)})})]})}function ze({skill:e,onSelect:t,onInstall:n,onRemove:r,isInstalling:i=!1,isRemoving:a=!1}){let o=T(e),s=b(e);return(0,Z.jsx)(d.Root,{asChild:!0,children:(0,Z.jsxs)(`div`,{role:`button`,tabIndex:0,onClick:t,onKeyDown:e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),t())},className:`flex cursor-pointer items-center gap-3 px-3 py-2 text-left transition-colors hover:bg-[var(--surface-hover)] focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:[(0,Z.jsx)(`div`,{className:`flex shrink-0 items-center justify-center text-[28px] leading-none`,children:(0,Z.jsx)(E,{skill:e,className:`h-7 w-7`})}),(0,Z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-emphasised)`},children:e.name}),(0,Z.jsx)(w,{origin:e.origin})]}),(0,Z.jsx)(`p`,{className:`mt-1 truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e.description})]}),o?i?(0,Z.jsx)(u,{type:`button`,iconOnly:(0,Z.jsx)(j,{className:`animate-spin`,"aria-hidden":!0}),disabled:!0,"aria-label":`Installing`,expandOnMobile:!1}):(0,Z.jsx)(u,{type:`button`,iconOnly:(0,Z.jsx)(Y,{"aria-hidden":!0}),onClick:e=>{e.stopPropagation(),n?.()},disabled:!n,"aria-label":`Install skill`,expandOnMobile:!1}):(0,Z.jsx)(u,{type:`button`,variant:`dangerOutline`,iconOnly:a?(0,Z.jsx)(j,{className:`animate-spin`,"aria-hidden":!0}):(0,Z.jsx)(B,{"aria-hidden":!0}),onClick:e=>{e.stopPropagation(),r?.()},disabled:!s||a||!r,"aria-label":s?`Remove skill`:`Bundled skill cannot be removed`,title:s?void 0:`Bundled skills cannot be removed`,expandOnMobile:!1})]})})}function Be(e){return s({...ee({path:{assistant_id:e}}),select:e=>e.categories,staleTime:300*1e3})}function Ve(e){switch(e){case`installed`:return{kind:`installed`};case`available`:return{kind:`available`};case`vellum`:case`clawhub`:case`skillssh`:case`custom`:return{origin:e};default:return{}}}function He(e){return[...e].sort((e,t)=>{let n=S(e);return n===S(t)?e.name.localeCompare(t.name,void 0,{sensitivity:`base`}):n?-1:1})}function Ue(e,t){let[n,r]=(0,X.useState)(e);return(0,X.useEffect)(()=>{let n=setTimeout(()=>{r(e)},t);return()=>clearTimeout(n)},[e,t]),n}var We=300,Ge=`vellum:skills:tipDismissed`;function Ke({assistantId:e,initialSkillId:r}){let i=o(),a=ie(),[l,u]=(0,X.useState)(``),d=Ue(l.trim(),We),[f,m]=(0,X.useState)(`all`),[h,g]=(0,X.useState)(null),[_,v]=(0,X.useState)(r??null),[y,b]=(0,X.useState)(null),[x,S]=(0,X.useState)(null),[w,T]=(0,X.useState)(null),[E,O]=(0,X.useState)(()=>n(Ge,!1)),{data:k=[]}=Be(e),{origin:A,kind:j}=(0,X.useMemo)(()=>Ve(f),[f]),M=s({...te({path:{assistant_id:e},query:{include:`catalog`,origin:A,kind:j,q:d||void 0,category:h??void 0}}),select:e=>({skills:e.skills,categoryCounts:e.categoryCounts,totalCount:e.totalCount}),enabled:!!e}),ee=s({...te({path:{assistant_id:e},query:{include:`catalog`,origin:A,kind:j,q:d||void 0}}),select:e=>({skills:e.skills,categoryCounts:e.categoryCounts,totalCount:e.totalCount}),enabled:!!e&&h!==null}),N=(0,X.useCallback)(()=>{i.invalidateQueries({queryKey:ne({path:{assistant_id:e}})})},[e,i]),P=c({mutationFn:t=>D(e,t),onMutate:e=>b(e),onSettled:()=>{b(null),N()}}),F=c({...re(),onMutate:e=>S(e.path.id),onSettled:()=>{S(null),N()}}),I=(0,X.useCallback)(e=>{P.mutate(e.slug??e.id)},[P]),L=(0,X.useCallback)(e=>{T(e)},[]),R=(0,X.useCallback)(()=>{w&&(F.mutate({path:{assistant_id:e,id:w.id}}),T(null))},[e,w,F]),z=(0,X.useCallback)(()=>{O(!0),t(Ge,!0)},[]),B=(0,X.useMemo)(()=>M.data?.skills??[],[M.data?.skills]),V=h===null?M.data:ee.data,{counts:H,totalCount:U}=qe(V?.skills??B,V?.categoryCounts,V?.totalCount),W=(0,X.useMemo)(()=>He(B),[B]),G=(0,X.useMemo)(()=>_?B.find(e=>e.id===_)??null:null,[B,_]),K=(0,Z.jsx)(p,{open:w!==null,title:`Remove skill`,message:w?`Remove "${w.name}" from this assistant?`:``,confirmLabel:`Remove`,destructive:!0,onConfirm:R,onCancel:()=>T(null)});if(G){let t={assistantId:e,skill:G,onBack:()=>v(null),onInstall:()=>I(G),onRemove:()=>L(G),isInstalling:y===(G.slug??G.id),isRemoving:x===G.id};return(0,Z.jsxs)(Z.Fragment,{children:[a?(0,Z.jsx)(Oe,{...t}):(0,Z.jsx)(C,{...t}),K]})}let q=M.isFetching&&!!d;return(0,Z.jsxs)(`div`,{className:`flex h-full min-h-0 flex-1 flex-col gap-4`,children:[!E&&(0,Z.jsx)(Je,{onDismiss:z}),(0,Z.jsx)(Fe,{search:l,onSearchChange:u,filter:f,onFilterChange:m,isSearching:q,categories:k,category:h,onCategoryChange:g,counts:H,totalCount:U,showCounts:!q}),(0,Z.jsxs)(`div`,{className:`flex min-h-0 flex-1 gap-6`,children:[(0,Z.jsx)(`aside`,{className:`hidden w-56 shrink-0 overflow-y-auto sm:block`,children:(0,Z.jsx)(Se,{selected:h,onSelect:g,counts:H,totalCount:U,showCounts:!q,categories:k})}),(0,Z.jsx)(`div`,{className:`min-w-0 flex-1 overflow-y-auto`,children:M.isLoading?(0,Z.jsx)(Ye,{}):M.isError?(0,Z.jsx)(Xe,{}):W.length===0?(0,Z.jsx)(Ze,{filter:f,category:h}):(0,Z.jsx)(`ul`,{className:`flex flex-col gap-2`,children:W.map(e=>(0,Z.jsx)(`li`,{children:(0,Z.jsx)(ze,{skill:e,onSelect:()=>v(e.id),onInstall:()=>I(e),onRemove:()=>L(e),isInstalling:y===(e.slug??e.id),isRemoving:x===e.id})},e.id))})})]}),K]})}function qe(e,t,n){return(0,X.useMemo)(()=>{if(t&&Object.keys(t).length>0)return{counts:t,totalCount:n??e.length};let r={};for(let t of e){let e=t.category??`system`;r[e]=(r[e]??0)+1}return{counts:r,totalCount:n??e.length}},[e,t,n])}function Je({onDismiss:e}){return(0,Z.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg px-4 py-2.5 text-body-small-default`,style:{backgroundColor:`var(--surface-base)`,color:`var(--content-secondary)`},children:[(0,Z.jsx)(L,{className:`h-4 w-4 shrink-0`,style:{color:`var(--primary-base)`}}),(0,Z.jsx)(`p`,{className:`flex-1`,children:`You can create a new custom skill by describing what you want in chat.`}),(0,Z.jsx)(u,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,Z.jsx)(M,{"aria-hidden":!0}),onClick:e,"aria-label":`Dismiss tip`,tintColor:`var(--content-tertiary)`,expandOnMobile:!1})]})}function Ye(){return(0,Z.jsx)(`div`,{className:`flex items-center justify-center py-16`,children:(0,Z.jsx)(j,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})})}function Xe(){return(0,Z.jsx)(d.Root,{children:(0,Z.jsxs)(d.Body,{className:`flex flex-col items-center justify-center py-16 text-center`,children:[(0,Z.jsx)(le,{className:`mb-3 h-8 w-8`,style:{color:`var(--system-danger)`},"aria-hidden":!0}),(0,Z.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:`Failed to load skills`}),(0,Z.jsx)(`p`,{className:`mt-1 max-w-sm text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Something went wrong. Try refreshing the page.`})]})})}function Ze({filter:e,category:t}){let{title:n,subtitle:r,Icon:i}=Qe(e,t);return(0,Z.jsx)(d.Root,{children:(0,Z.jsxs)(d.Body,{className:`flex flex-col items-center justify-center py-16 text-center`,children:[(0,Z.jsx)(i,{className:`mb-3 h-8 w-8`,style:{color:`var(--content-tertiary)`},"aria-hidden":!0}),(0,Z.jsx)(`h3`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:n}),(0,Z.jsx)(`p`,{className:`mt-1 max-w-sm text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:r})]})})}function Qe(e,t){if(t)return{title:`No skills in this category`,subtitle:`Try selecting a different category or clearing the filter.`,Icon:W};switch(e){case`installed`:return{title:`No Skills Installed`,subtitle:`Ask your assistant in chat to search for and install new skills.`,Icon:R};case`available`:return{title:`No Skills Available`,subtitle:`All available skills have been installed.`,Icon:J};case`vellum`:return{title:`No Vellum Skills`,subtitle:`No bundled Vellum skills found.`,Icon:me};case`clawhub`:return{title:`No Clawhub Skills`,subtitle:`No Clawhub skills found. Try searching the catalog.`,Icon:k};case`skillssh`:return{title:`No skills.sh Skills`,subtitle:`No skills.sh skills found. Try searching the catalog.`,Icon:U};case`custom`:return{title:`No Custom Skills`,subtitle:`Create a custom skill by describing what you want in chat.`,Icon:V};default:return{title:`No Skills Available`,subtitle:`Check your connection to the Vellum catalog.`,Icon:ce}}}function $e(){let e=he(),[t]=a();return(0,Z.jsx)(Ke,{assistantId:e,initialSkillId:t.get(`skill`)??void 0})}export{$e as SkillsPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{r as n}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import"./src-hn7lwVCD.js";import{t as i}from"./notice-CF2pptne.js";import{t as a}from"./tag-Ccr7Quy6.js";import{t as o}from"./loader-circle-BSAFLoPH.js";import{i as s}from"./routes-Dk5Qeryt.js";import{$ as c,Pt as l,Q as u,So as d,ao as f,et as p,ji as m,po as h,so as g,uo as _}from"./index-BjEJFZTJ.js";import{t as v}from"./use-current-platform-assistant-Cu95G65M.js";var y=e(t(),1),b=r();function x(e){switch(e){case`lifecycle`:return`Lifecycle`;case`upgrade`:return`Upgrade`;case`rollback`:return`Rollback`;case`crash`:return`Crash`;case`idle_sleep`:return`Idle Sleep`;case`wake`:return`Wake`;case`profiler`:return`Profiler`;case`other`:return`Other`;default:return e}}function S(e){switch(e){case`started`:return`Started`;case`succeeded`:return`Succeeded`;case`failed`:return`Failed`;case`in_progress`:return`In Progress`;default:return e}}function C(e){return e===`succeeded`}function w(e){return e===`failed`}function T(e){return new Date(e).toLocaleString(void 0,{year:`numeric`,month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`})}function E(e){if(e.type!==`idle_sleep`)return!1;let t=e.details?.idle_timeout_seconds;return typeof t==`number`&&t>=21600}function D(e,t){switch(e){case`wake`:return`positive`;case`rollback`:return`warning`;case`crash`:return`negative`;case`idle_sleep`:return t&&E(t)?`warning`:`neutral`;default:return`neutral`}}function O({type:e,event:t}){return(0,b.jsx)(a,{tone:D(e,t),children:x(e)})}function k({status:e}){let t=S(e);return C(e)?(0,b.jsx)(a,{tone:`positive`,leftIcon:(0,b.jsx)(_,{}),children:t}):w(e)?(0,b.jsx)(a,{tone:`negative`,leftIcon:(0,b.jsx)(g,{}),children:t}):(0,b.jsx)(a,{tone:`neutral`,children:t})}function A({event:e}){let[t,n]=(0,y.useState)(!1),r=e.details!==null&&e.details!==void 0&&Object.keys(e.details).length>0;return(0,b.jsxs)(`div`,{className:`rounded-xl border p-4`,style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`},children:[(0,b.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between`,children:[(0,b.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1.5`,children:[(0,b.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.display_text}),(0,b.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,children:[(0,b.jsx)(O,{type:e.type,event:e}),(0,b.jsx)(k,{status:e.event_status}),E(e)&&(0,b.jsx)(a,{tone:`warning`,leftIcon:(0,b.jsx)(m,{className:`h-3 w-3`}),children:`Long sleep`})]})]}),(0,b.jsxs)(`div`,{className:`text-body-small-default flex shrink-0 items-center gap-1.5`,style:{color:`var(--content-tertiary)`},children:[(0,b.jsx)(f,{className:`h-3 w-3`}),(0,b.jsx)(`span`,{children:T(e.occurred_at)})]})]}),r&&(0,b.jsxs)(`div`,{className:`mt-2`,children:[(0,b.jsxs)(`button`,{type:`button`,onClick:()=>n(e=>!e),className:`text-body-small-default flex items-center gap-1`,style:{color:`var(--content-tertiary)`},children:[(0,b.jsx)(h,{className:`h-3 w-3 transition-transform ${t?`rotate-180`:``}`}),t?`Hide details`:`Show details`]}),t&&(0,b.jsx)(`pre`,{className:`mt-2 overflow-x-auto rounded-md p-3 text-body-small-default`,style:{background:`var(--surface-base)`,color:`var(--content-default)`},children:JSON.stringify(e.details,null,2)})]})]})}function j({assistantId:e}){let{data:t,isLoading:n,isError:r,isFetchingNextPage:i,hasNextPage:a,fetchNextPage:s}=d({...l({path:{assistant_id:e}}),initialPageParam:0,getNextPageParam:(e,t)=>{if(e.next)return t.reduce((e,t)=>e+t.results.length,0)}}),c=t?.pages.flatMap(e=>e.results)??[];return(0,b.jsxs)(`div`,{className:`space-y-4`,children:[(0,b.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Lifecycle events for your assistant from the last 30 days, newest first.`}),n?(0,b.jsxs)(`div`,{className:`text-body-medium-lighter flex items-center gap-2`,style:{color:`var(--content-tertiary)`},children:[(0,b.jsx)(o,{className:`h-4 w-4 animate-spin`}),`Loading system events...`]}):r?(0,b.jsxs)(`div`,{className:`text-body-medium-lighter flex items-center gap-2`,style:{color:`var(--system-negative-strong)`},children:[(0,b.jsx)(m,{className:`h-4 w-4 shrink-0`}),`Failed to load system events. Please refresh and try again.`]}):c.length===0?(0,b.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`No system events recorded in the last 30 days.`}):(0,b.jsxs)(`div`,{className:`space-y-2`,children:[c.map(e=>(0,b.jsx)(A,{event:e},e.id)),a&&(0,b.jsx)(`div`,{className:`pt-2 text-center`,children:(0,b.jsx)(`button`,{type:`button`,onClick:()=>s(),disabled:i,className:`text-body-medium-default flex w-full items-center justify-center gap-2 rounded-md border px-4 py-2 transition-colors disabled:cursor-not-allowed disabled:opacity-50`,style:{borderColor:`var(--border-element)`,color:`var(--content-secondary)`},children:i?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(o,{className:`h-4 w-4 animate-spin`}),`Loading older events...`]}):`Load older events`})})]})]})}function M(){let e=p({platformHostedOnly:!0}),t=u(),r=c(),{assistantId:a}=v();return e===`gated`?(0,b.jsx)(n,{replace:!0,to:s.logs.root}):e===`disabled`?(0,b.jsx)(i,{tone:`info`,children:`Log in to the Vellum platform to view system events.`}):r?(0,b.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,b.jsx)(o,{className:`h-4 w-4 animate-spin`}),`Loading system events…`]}):t?a?(0,b.jsx)(j,{assistantId:a}):null:(0,b.jsx)(i,{tone:`warning`,children:`System events aren't available for the current assistant.`})}export{M as SystemEventsPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./jsx-runtime-CVSDxk6A.js";import{t as r}from"./button-DdEh-9f_.js";import{t as i}from"./typography-Czgs_2w_.js";import"./src-hn7lwVCD.js";import{t as a}from"./x-BDqbYVtS.js";import{Bi as o,Ja as s,La as c,P as l,Za as u,_o as d,ca as f,g as p,go as m,h,ki as g,m as _,mo as v,pa as y,ra as b}from"./index-BjEJFZTJ.js";var x=e(t(),1),S=n(),C={code:u,file:c,pen:f,monitor:y,plug:b,sparkle:o,"user-plus":g,bolt:d,brain:m},w=1500;function T({text:e}){let[t,n]=(0,x.useState)(!1),r=(0,x.useRef)(null);return(0,x.useEffect)(()=>()=>{r.current&&clearTimeout(r.current)},[]),(0,S.jsxs)(`button`,{type:`button`,onClick:()=>{navigator.clipboard.writeText(e),n(!0),r.current&&clearTimeout(r.current),r.current=setTimeout(()=>n(!1),w)},"aria-label":t?`Copied`:`Copy`,className:`absolute right-2 top-2 flex items-center gap-1 rounded p-1 text-label-small-default text-[var(--content-tertiary)] transition-colors hover:bg-[var(--ghost-hover)] hover:text-[var(--content-default)]`,children:[t?(0,S.jsx)(v,{className:`h-3.5 w-3.5`}):(0,S.jsx)(s,{className:`h-3.5 w-3.5`}),t?`Copied`:null]})}function E({text:e}){return(0,S.jsxs)(`div`,{className:`relative`,children:[(0,S.jsx)(`pre`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] p-3 font-mono text-xs whitespace-pre-wrap break-words text-[var(--content-default)]`,children:e}),(0,S.jsx)(T,{text:e})]})}function D({children:e}){return(0,S.jsx)(i,{variant:`label-small-default`,as:`div`,className:`mb-1.5 uppercase tracking-wider text-[var(--content-tertiary)]`,children:e})}function O({Glyph:e,title:t,headerTrailing:n,onClose:o,children:s}){return(0,S.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden rounded-xl bg-[var(--surface-lift)]`,children:[(0,S.jsxs)(`div`,{className:`flex shrink-0 items-center gap-3 border-b border-[var(--border-base)] px-5 py-4`,children:[(0,S.jsx)(e,{className:`h-5 w-5 shrink-0 text-[var(--content-secondary)]`,"aria-hidden":!0}),(0,S.jsx)(i,{variant:`title-medium`,className:`min-w-0 shrink truncate py-0.5 leading-snug text-[var(--content-default)]`,children:t}),n,(0,S.jsx)(`span`,{className:`flex-1`}),(0,S.jsx)(r,{variant:`ghost`,iconOnly:(0,S.jsx)(a,{}),onClick:o,"aria-label":`Close tool details`,tooltip:`Close`,className:`shrink-0`})]}),(0,S.jsx)(`div`,{className:`flex-1 overflow-y-auto px-5 py-5`,children:s})]})}function k({detail:e,onClose:t,onRiskBadgeClick:n}){if(e.kind===`thinking`)return(0,S.jsx)(O,{Glyph:m,title:e.title,onClose:t,children:(0,S.jsx)(l,{content:e.thinkingText??``,hardLineBreaks:!0})});let{iconName:r}=h(e.toolName,e.input),a=C[r]??d,o=e.activity||e.title,s=e.result!==void 0&&e.result!==``,c=e.status===`running`,u=JSON.stringify(e.input,null,2);return(0,S.jsx)(O,{Glyph:a,title:o,onClose:t,headerTrailing:(0,S.jsx)(_,{level:e.riskLevel,onClick:n}),children:(0,S.jsxs)(S.Fragment,{children:[e.riskReason&&(0,S.jsx)(i,{variant:`body-small-default`,as:`p`,className:`mb-4 text-[var(--content-tertiary)]`,children:e.riskReason}),(0,S.jsxs)(`div`,{children:[(0,S.jsx)(D,{children:`Technical details`}),(0,S.jsx)(i,{variant:`body-medium-default`,as:`div`,className:`text-[var(--content-default)]`,children:p(e.toolName)}),e.activity&&(0,S.jsx)(i,{variant:`body-small-default`,as:`p`,className:`mt-0.5 text-[var(--content-secondary)]`,children:e.activity}),(0,S.jsx)(`div`,{className:`mt-2`,children:(0,S.jsx)(E,{text:u})})]}),(s||c)&&(0,S.jsxs)(`div`,{className:`mt-5`,children:[(0,S.jsx)(D,{children:`Output`}),s?(0,S.jsx)(E,{text:e.result}):(0,S.jsx)(i,{variant:`body-small-default`,as:`p`,className:`text-[var(--content-tertiary)]`,children:`Running…`})]})]})})}export{k as ToolDetailPanel};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{t as n}from"./useQuery-D2zf6Uhu.js";import{t as r}from"./jsx-runtime-CVSDxk6A.js";import{t as i}from"./dropdown-CocFV5yi.js";import"./src-hn7lwVCD.js";import{t as a}from"./chevron-up-D4oYMRNW.js";import{t as o}from"./loader-circle-BSAFLoPH.js";import{In as s}from"./sdk.gen-AJllUeDf.js";import{Dn as c,En as l,J as u,Oa as d,On as f,Wi as p,Xi as m,_a as h,co as g,do as _,ea as v,go as y,ji as b,lo as x,oo as S,po as C,q as w,rr as T,so as E,wi as D,xa as O,yo as ee}from"./index-BjEJFZTJ.js";import{t as te}from"./use-current-platform-assistant-Cu95G65M.js";import{a as k,i as A,n as j,r as M}from"./format-VxJLq14L.js";var N=e(t(),1),P={requestCount:0,llmCallCount:0,totalInputTokens:0,totalOutputTokens:0,averageLlmLatencyMs:0,toolFailureCount:0};function F(e,t){let n=e.attributes?.[t];if(typeof n==`number`&&Number.isFinite(n))return n;if(typeof n==`string`){let e=Number(n);if(Number.isFinite(e))return e}}function I(e){if(e.length===0)return P;let t=new Set,n=0,r=0,i=0,a=0,o=0,s=0;for(let c of e)switch(c.requestId&&t.add(c.requestId),c.kind){case`llm_call_finished`:{n+=1,r+=F(c,`inputTokens`)??0,i+=F(c,`outputTokens`)??0;let e=F(c,`latencyMs`);e!==void 0&&(a+=e,o+=1);break}case`tool_failed`:s+=1;break;default:break}return{requestCount:t.size,llmCallCount:n,totalInputTokens:r,totalOutputTokens:i,averageLlmLatencyMs:o>0?a/o:0,toolFailureCount:s}}function L(e){for(let t of e)switch(t.kind){case`generation_cancelled`:return`cancelled`;case`generation_handoff`:return`handedOff`;case`request_error`:return`error`;case`message_complete`:return`completed`;default:break}return e.some(e=>e.status===`error`)?`error`:`active`}function R(e){let t=new Map;for(let n of e){let e=n.requestId??``,r=t.get(e);r?(r.events.push(n),n.sequence<r.firstSequence&&(r.firstSequence=n.sequence)):t.set(e,{requestId:e,firstSequence:n.sequence,events:[n]})}for(let e of t.values())e.events.sort((e,t)=>e.sequence-t.sequence);return[...t.values()].sort((e,t)=>e.firstSequence-t.firstSequence)}function z(e){switch(e){case`request_received`:return g;case`request_queued`:case`request_dequeued`:return d;case`llm_call_started`:case`llm_call_finished`:return y;case`assistant_message`:return h;case`tool_started`:case`tool_finished`:return D;case`tool_permission_requested`:return p;case`tool_permission_decided`:return O;case`tool_failed`:return b;case`generation_handoff`:return v;case`message_complete`:return x;case`generation_cancelled`:return E;case`request_error`:return _;default:return S}}function B(e){switch(e){case`error`:return`var(--system-negative-strong)`;case`warning`:return`var(--system-mid-strong)`;case`success`:return`var(--system-positive-strong)`;default:return`var(--content-tertiary)`}}function V(e){switch(e){case`active`:return{Icon:ee,color:`var(--system-positive-strong)`};case`completed`:return{Icon:x,color:`var(--system-positive-strong)`};case`cancelled`:return{Icon:E,color:`var(--system-mid-strong)`};case`handedOff`:return{Icon:v,color:`var(--system-positive-strong)`};case`error`:return{Icon:b,color:`var(--system-negative-strong)`}}}function H(e){return e==null?`—`:typeof e==`string`?e:String(e)}var U=class extends Error{status;constructor(e,t){super(t),this.name=`TraceEventsRequestError`,this.status=e}};async function W(e,t){let{data:n,response:r}=await s({path:{assistant_id:e},query:{conversationId:t.conversationId,limit:t.limit,afterSequence:t.afterSequence},throwOnError:!1});if(!r?.ok){let e=await r?.clone().text().catch(()=>``);throw new U(r?.status??0,e||r?.statusText||`Failed to load trace events`)}return n??{events:[]}}var G=r(),K=500;function q({assistantId:e}){let[t,r]=(0,N.useState)(null),{conversations:i,isLoading:a,isError:s,error:d}=c(e),{conversations:p}=l(e,!0),{conversations:m}=f(e,!0),h=(0,N.useMemo)(()=>T(i,p,m).filter(e=>e.archivedAt==null),[i,p,m]),g=(0,N.useMemo)(()=>{if(t){let e=h.find(e=>e.conversationId===t);if(e)return e.conversationId}let n=w(e);if(n){let e=h.find(e=>e.conversationId===n);if(e)return e.conversationId}return h[0]?.conversationId??``},[e,h,t]),_=(0,N.useCallback)(t=>{r(t),u(e,t)},[e]),{data:v,isLoading:y,isError:b,error:x}=n({queryKey:[`trace-events`,e,g],queryFn:()=>W(e,{conversationId:g,limit:K}),enabled:g.length>0}),S=(0,N.useMemo)(()=>v?.events??[],[v]),C=(0,N.useMemo)(()=>I(S),[S]),E=(0,N.useMemo)(()=>R(S),[S]),D=h.length>0;return(0,G.jsx)(`div`,{className:`flex flex-col gap-6`,children:a?(0,G.jsx)(`div`,{className:`flex items-center justify-center py-16`,children:(0,G.jsx)(o,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-secondary)`}})}):s?(0,G.jsx)($,{message:d instanceof Error?d.message:`Failed to load conversations.`}):D?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(J,{conversations:h,selectedConversationId:g,onSelect:_}),y?(0,G.jsx)(`div`,{className:`flex items-center justify-center py-16`,children:(0,G.jsx)(o,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-secondary)`}})}):b?(0,G.jsx)($,{message:x instanceof Error?x.message:`Failed to load trace events.`}):(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(X,{metrics:C}),S.length===0?(0,G.jsx)(Q,{title:`No trace events yet`,subtitle:`Events will appear as the session runs.`}):(0,G.jsx)(ne,{groups:E})]})]}):(0,G.jsx)(Q,{title:`No conversations yet`,subtitle:`Start a conversation to generate trace events.`})})}function J({conversations:e,selectedConversationId:t,onSelect:n}){return(0,G.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[(0,G.jsx)(`label`,{htmlFor:`logs-conversation-picker`,className:`text-body-small-default`,style:{color:`var(--content-secondary)`},children:`Conversation`}),(0,G.jsx)(i,{id:`logs-conversation-picker`,value:t,onChange:n,options:e.map(e=>({value:e.conversationId,label:Y(e)}))})]})}function Y(e){return e.title?.trim()||`Conversation ${e.conversationId.slice(0,8)}`}function X({metrics:e}){let t=e.toolFailureCount>0;return(0,G.jsxs)(`section`,{className:`flex flex-col gap-3 rounded-lg border p-4`,style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`},children:[(0,G.jsx)(`h3`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Session Metrics`}),(0,G.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-2`,children:[(0,G.jsx)(Z,{label:`Requests`,value:A(e.requestCount)}),(0,G.jsx)(Z,{label:`LLM Calls`,value:A(e.llmCallCount)}),(0,G.jsx)(Z,{label:`Tokens`,value:k(e.totalInputTokens,e.totalOutputTokens)}),(0,G.jsx)(Z,{label:`Avg Latency`,value:j(e.averageLlmLatencyMs)}),t?(0,G.jsx)(Z,{label:`Failures`,value:A(e.toolFailureCount),valueColor:`var(--system-negative-strong)`}):null]})]})}function Z({label:e,value:t,valueColor:n}){return(0,G.jsxs)(`div`,{className:`flex flex-col gap-1 rounded-md px-3 py-2`,style:{background:`color-mix(in srgb, var(--border-base) 15%, transparent)`},children:[(0,G.jsx)(`span`,{className:`text-body-medium-default`,style:{color:n??`var(--content-default)`},children:t}),(0,G.jsx)(`span`,{className:`text-body-small-default`,style:{color:`var(--content-tertiary)`},children:e})]})}function ne({groups:e}){return(0,G.jsxs)(`section`,{className:`flex flex-col gap-4`,children:[(0,G.jsx)(`h3`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Timeline`}),(0,G.jsx)(`div`,{className:`flex flex-col gap-5`,children:e.map(e=>(0,G.jsx)(re,{requestId:e.requestId,events:e.events},e.requestId||`__system__`))})]})}function re({requestId:e,events:t}){let n=V((0,N.useMemo)(()=>L(t),[t])),r=e?`Request ${e.slice(0,8)}`:`System`;return(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,N.createElement)(n.Icon,{className:`h-3 w-3 shrink-0`,style:{color:n.color}}),(0,G.jsx)(`span`,{className:`text-body-small-default select-text`,style:{color:`var(--content-secondary)`},children:r}),(0,G.jsx)(`div`,{className:`h-px flex-1`,style:{background:`var(--border-base)`},"aria-hidden":!0})]}),(0,G.jsx)(`ol`,{className:`flex flex-col`,style:{listStyle:`none`},children:t.map(e=>(0,G.jsx)(`li`,{children:(0,G.jsx)(ie,{event:e})},e.eventId))})]})}function ie({event:e}){let[t,n]=(0,N.useState)(!1),r=(0,N.useMemo)(()=>e.attributes?Object.entries(e.attributes).sort(([e],[t])=>e.localeCompare(t)):[],[e.attributes]),i=r.length>0,o=z(e.kind),s=B(e.status);return(0,G.jsxs)(`div`,{className:`flex flex-col`,children:[(0,G.jsxs)(`button`,{type:`button`,onClick:()=>{i&&n(e=>!e)},className:`flex w-full items-start gap-2 rounded-sm px-1 py-1.5 text-left transition-colors`,style:{cursor:i?`pointer`:`default`},disabled:!i,"aria-expanded":i?t:void 0,children:[(0,N.createElement)(o,{className:`mt-0.5 h-3.5 w-3.5 shrink-0`,style:{color:s}}),(0,G.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-0.5`,children:[(0,G.jsx)(`span`,{className:`text-body-medium-lighter break-words`,style:{color:`var(--content-default)`},children:e.summary}),(0,G.jsx)(`span`,{className:`font-mono text-body-small-default`,style:{color:`var(--content-tertiary)`},children:M(e.timestampMs)})]}),i?t?(0,G.jsx)(a,{className:`mt-1 h-3 w-3 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,G.jsx)(C,{className:`mt-1 h-3 w-3 shrink-0`,style:{color:`var(--content-tertiary)`}}):null]}),t&&i?(0,G.jsx)(`div`,{className:`mb-1 ml-6 mr-2 rounded-md px-3 py-2`,style:{background:`var(--surface-base)`},children:(0,G.jsx)(`dl`,{className:`flex flex-col gap-1`,children:r.map(([e,t])=>(0,G.jsxs)(`div`,{className:`flex flex-col gap-0.5 sm:flex-row sm:gap-3`,children:[(0,G.jsx)(`dt`,{className:`shrink-0 font-mono text-body-small-default`,style:{color:`var(--content-tertiary)`},children:e}),(0,G.jsx)(`dd`,{className:`font-mono text-body-small-default break-all`,style:{color:`var(--content-secondary)`},children:H(t)})]},e))})}):null]})}function Q({title:e,subtitle:t}){return(0,G.jsxs)(`div`,{className:`flex flex-col items-center justify-center rounded-md border border-dashed px-6 py-16 text-center`,style:{borderColor:`var(--border-base)`,color:`var(--content-secondary)`},children:[(0,G.jsx)(m,{className:`mb-3 h-8 w-8`}),(0,G.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),(0,G.jsx)(`p`,{className:`mt-1 text-body-small-default`,children:t})]})}function $({message:e}){return(0,G.jsxs)(`div`,{className:`text-body-medium-lighter flex items-start gap-3 rounded-md border px-4 py-3`,style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`,color:`var(--content-default)`},children:[(0,G.jsx)(b,{className:`h-5 w-5 shrink-0`,style:{color:`var(--system-negative-strong)`}}),(0,G.jsx)(`span`,{children:e})]})}function ae(){let{assistantId:e}=te();return e?(0,G.jsx)(q,{assistantId:e}):null}export{ae as TracePage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{d as n,r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{t as i}from"./jsx-runtime-CVSDxk6A.js";import{t as a}from"./button-DdEh-9f_.js";import{t as o}from"./typography-Czgs_2w_.js";import{t as s}from"./card-CL5iEMJO.js";import{t as c}from"./notice-CF2pptne.js";import{n as l}from"./toast-DU1nH33j.js";import{i as u}from"./routes-Dk5Qeryt.js";import{$ as d,Q as f,et as p}from"./index-BjEJFZTJ.js";var m=e(t(),1),h=i();function g(){let e=p({platformHostedOnly:!0}),t=f(),i=d(),g=n();return(0,m.useEffect)(()=>{t&&(l.info(`Upgrade canceled. No changes to your plan.`,{id:`pro-upgrade-cancel`}),g(u.settings.billing,{replace:!0}))},[g,t]),e===`gated`?(0,h.jsx)(r,{replace:!0,to:u.settings.general}):e===`disabled`?(0,h.jsx)(`div`,{className:`max-w-4xl space-y-6`,children:(0,h.jsx)(c,{tone:`info`,children:`Log in to the Vellum platform to manage billing and usage.`})}):!t&&!i?(0,h.jsxs)(`div`,{className:`max-w-4xl space-y-6`,children:[(0,h.jsx)(c,{tone:`warning`,children:`Billing isn't available for the current assistant state.`}),(0,h.jsx)(`div`,{className:`flex justify-end`,children:(0,h.jsx)(a,{variant:`primary`,onClick:()=>g(u.settings.billing,{replace:!0}),children:`Return to billing`})})]}):(0,h.jsx)(`div`,{className:`max-w-4xl space-y-6`,children:(0,h.jsxs)(s,{padding:`lg`,children:[(0,h.jsx)(o,{as:`h1`,variant:`title-large`,children:`Upgrade canceled`}),(0,h.jsx)(o,{as:`p`,variant:`body-medium-default`,className:`mt-2`,children:`Returning you to billing settings…`})]})})}export{g as UpgradeCancelPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{d as n,r}from"./chunk-5KNZJZUH-DdS6bb-3.js";import{n as i}from"./QueryClientProvider-DNHWXaGq.js";import{t as a}from"./useQuery-D2zf6Uhu.js";import{t as o}from"./jsx-runtime-CVSDxk6A.js";import{t as s}from"./button-DdEh-9f_.js";import{t as c}from"./typography-Czgs_2w_.js";import{t as l}from"./card-CL5iEMJO.js";import{t as u}from"./notice-CF2pptne.js";import{t as d}from"./loader-circle-BSAFLoPH.js";import{i as f}from"./routes-Dk5Qeryt.js";import{$ as p,Q as m,do as h,en as g,et as _,lo as v,tn as y}from"./index-BjEJFZTJ.js";var b=e(t(),1),x=o(),S=1e3,C=1e4,w=2500;function T(){let e=_({platformHostedOnly:!0}),t=m(),o=p(),c=e===`full`&&t,d=n(),h=i(),[v,T]=(0,b.useState)(!1);(0,b.useEffect)(()=>{h.invalidateQueries({queryKey:y()})},[h]);let{data:A,isError:j}=a({...g(),enabled:c,refetchInterval:e=>e.state.data?.plan_id===`pro`||v?!1:S,refetchIntervalInBackground:!1}),M=c?A:void 0,N=c?j:!1;(0,b.useEffect)(()=>{if(!c)return;let e=setTimeout(()=>T(!0),C);return()=>clearTimeout(e)},[c]);let P=M?.plan_id===`pro`;(0,b.useEffect)(()=>{if(!P)return;let e=setTimeout(()=>{d(f.settings.billing,{replace:!0})},w);return()=>clearTimeout(e)},[P,d]);let F=()=>d(f.settings.billing,{replace:!0});return e===`gated`?(0,x.jsx)(r,{replace:!0,to:f.settings.general}):e===`disabled`?(0,x.jsx)(`div`,{className:`max-w-4xl space-y-6`,children:(0,x.jsx)(u,{tone:`info`,children:`Log in to the Vellum platform to manage billing and usage.`})}):!c&&!o?(0,x.jsxs)(`div`,{className:`max-w-4xl space-y-6`,children:[(0,x.jsx)(u,{tone:`warning`,children:`We can't confirm your upgrade for the current assistant. Return to billing to retry.`}),(0,x.jsx)(`div`,{className:`flex justify-end`,children:(0,x.jsx)(s,{variant:`primary`,"data-testid":`upgrade-success-go-to-billing`,onClick:F,children:`Go to billing`})})]}):(0,x.jsx)(`div`,{className:`max-w-4xl space-y-6`,children:(0,x.jsxs)(l,{padding:`lg`,children:[P?(0,x.jsx)(D,{}):N?(0,x.jsx)(k,{}):v?(0,x.jsx)(O,{}):(0,x.jsx)(E,{}),(P||N||v)&&(0,x.jsx)(`div`,{className:`mt-4 flex justify-end`,children:(0,x.jsx)(s,{variant:P||N?`primary`:`outlined`,"data-testid":`upgrade-success-go-to-billing`,onClick:F,children:`Go to billing`})})]})})}function E(){return(0,x.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-6 text-center`,children:[(0,x.jsx)(d,{className:`h-6 w-6 animate-spin text-[var(--content-secondary)]`,"aria-hidden":`true`}),(0,x.jsx)(c,{variant:`title-small`,as:`h1`,children:`Finalizing your upgrade…`}),(0,x.jsx)(c,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`Stripe is confirming your subscription. This usually takes a few seconds.`})]})}function D(){return(0,x.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-6 text-center`,children:[(0,x.jsx)(v,{className:`h-8 w-8 text-[var(--system-positive-strong)]`,"aria-hidden":`true`}),(0,x.jsx)(c,{variant:`title-small`,as:`h1`,children:`Welcome to Pro`}),(0,x.jsx)(c,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`Your Pro plan is active. You'll be redirected back to billing in a moment.`})]})}function O(){return(0,x.jsx)(u,{tone:`warning`,children:`We're processing your upgrade — refresh in a moment to see your new plan.`})}function k(){return(0,x.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-6 text-center`,children:[(0,x.jsx)(h,{className:`h-8 w-8 text-[var(--system-negative-strong)]`,"aria-hidden":`true`}),(0,x.jsx)(c,{variant:`title-small`,as:`h1`,children:`Couldn't reach billing`}),(0,x.jsx)(c,{variant:`body-medium-lighter`,as:`p`,className:`text-[var(--content-secondary)]`,children:`We hit a problem checking your subscription. Your upgrade may still be processing — return to billing to refresh.`})]})}export{T as UpgradeSuccessPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{c as e,r as t}from"./auth-store-CiQCAKS1.js";function n(){let n=e.use.currentOrganizationId();return!t()||n!=null}export{n as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-DJZBPgpf.js";import{T as n}from"./portal-container-DIXEBWUe.js";import{n as r}from"./QueryClientProvider-DNHWXaGq.js";import{t as i}from"./useQuery-D2zf6Uhu.js";import{t as a}from"./useMutation-BuofVRHk.js";import{t as o}from"./jsx-runtime-CVSDxk6A.js";import{t as s}from"./queryOptions-BtNi-_9H.js";import{t as c}from"./button-DdEh-9f_.js";import{n as l,r as u,t as d}from"./panel-item-FzMfzMJA.js";import{t as f}from"./input-Cu3PPVCq.js";import{t as p}from"./createLucideIcon-D6d6iDdi.js";import{t as m}from"./chevron-right-zTNPbA1m.js";import{t as h}from"./loader-circle-BSAFLoPH.js";import{t as g}from"./pencil-BA9LOIzP.js";import{t as _}from"./x-BDqbYVtS.js";import{Gn as v,Kn as y,Un as b,Wn as x,qn as S}from"./sdk.gen-AJllUeDf.js";import{n as C}from"./use-is-mobile-D_xrnINF.js";import{Ba as w,Ei as T,Ia as E,Ja as D,La as O,Pa as k,Ra as A,Va as j,Wa as M,Yi as N,ka as P,mo as F,na as I,po as ee}from"./index-BjEJFZTJ.js";import{t as te}from"./use-active-assistant-id-BIhArlF_.js";import{n as L,t as ne}from"./mobile-sidebar-drawer-BjPgVWjw.js";import{n as re,t as ie}from"./file-markdown-DX5x9ziL.js";import{t as R}from"./format-file-size-Cx-rVS-D.js";var ae=p(`arrow-down-a-z`,[[`path`,{d:`m3 16 4 4 4-4`,key:`1co6wj`}],[`path`,{d:`M7 20V4`,key:`1yoxec`}],[`path`,{d:`M20 8h-5`,key:`1vsyxs`}],[`path`,{d:`M15 10V6.5a2.5 2.5 0 0 1 5 0V10`,key:`ag13bf`}],[`path`,{d:`M15 14h5l-5 6h5`,key:`ur5jdg`}]]),oe=p(`arrow-down-wide-narrow`,[[`path`,{d:`m3 16 4 4 4-4`,key:`1co6wj`}],[`path`,{d:`M7 20V4`,key:`1yoxec`}],[`path`,{d:`M11 4h10`,key:`1w87gc`}],[`path`,{d:`M11 8h7`,key:`djye34`}],[`path`,{d:`M11 12h4`,key:`q8tih4`}]]),se=p(`folder-open`,[[`path`,{d:`m6 14 1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2`,key:`usdka0`}]]),z=p(`folder-plus`,[[`path`,{d:`M12 10v6`,key:`1bos4e`}],[`path`,{d:`M9 13h6`,key:`1uhe8q`}],[`path`,{d:`M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z`,key:`1kt360`}]]),B=e(t(),1);function ce(e){if(!e)return``;let t=e.indexOf(`;`);return(t===-1?e:e.slice(0,t)).trim()}function le(e,t){return ce(t)===`application/json`?!0:(e??``).toLowerCase().endsWith(`.json`)}function ue(e){try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}var V=o();function H(e){return s({queryFn:async()=>{let{data:t,error:n}=await x({path:e.path,query:{path:e.query.path,...e.query.showHidden?{showHidden:`true`}:{}}});if(n)throw n;return t},queryKey:[`assistantsWorkspaceFileRetrieve`,e]})}function U({mimeType:e}){let t=e.indexOf(`;`),n=(t===-1?e:e.slice(0,t)).trim(),r=O;return n.startsWith(`image/`)?r=P:n.startsWith(`video/`)?r=T:!n.startsWith(`text/`)&&n!==`application/json`&&n!==`application/octet-stream`&&(r=E),(0,V.jsx)(`span`,{className:`flex h-5 w-5 shrink-0 items-center justify-center rounded`,style:{backgroundColor:`color-mix(in oklab, var(--content-default) 10%, transparent)`},children:(0,V.jsx)(r,{className:`h-3.5 w-3.5`,style:{color:`var(--content-default)`}})})}function W({viewMode:e,onChange:t}){return(0,V.jsx)(`div`,{className:`inline-flex rounded-md p-0.5`,style:{backgroundColor:`color-mix(in oklab, var(--content-default) 6%, transparent)`},children:[`preview`,`source`].map(n=>{let r=e===n;return(0,V.jsx)(c,{variant:`ghost`,onClick:()=>t(n),className:`h-auto rounded border-0 px-2.5 py-1 text-body-small-default hover:bg-transparent`,style:{backgroundColor:r?`var(--surface-lift)`:`transparent`,color:r?`var(--content-default)`:`var(--content-tertiary)`,boxShadow:r?`0 1px 2px rgba(0,0,0,0.15)`:void 0},children:n===`preview`?`Preview`:`Source`},n)})})}function G({name:e,mimeType:t,size:n,rightContent:r}){return(0,V.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b px-3 py-2.5`,style:{borderColor:`var(--border-element)`},children:[(0,V.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,V.jsx)(U,{mimeType:t}),(0,V.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),n!=null&&(0,V.jsx)(`span`,{className:`shrink-0 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:R(n)})]}),r]})}function de({assistantId:e,path:t,mimeType:n,showHidden:r}){let{data:a,isLoading:o}=i({queryFn:async()=>{let n=await b({path:{assistant_id:e},query:{path:t,...r?{showHidden:`true`}:{}},parseAs:`blob`});if(n.error)throw n.error;return n.data},queryKey:[`assistantsWorkspaceFileContentRetrieve`,{assistantId:e,path:t,showHidden:r}],enabled:!!t}),[s,c]=(0,B.useState)(null);return(0,B.useEffect)(()=>{if(!a)return;let e=URL.createObjectURL(a);return c(e),()=>{URL.revokeObjectURL(e),c(null)}},[a]),o?(0,V.jsx)(`div`,{className:`flex items-center justify-center py-12`,children:(0,V.jsx)(h,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})}):s?n.startsWith(`image/`)?(0,V.jsx)(`div`,{className:`flex items-center justify-center p-4`,children:(0,V.jsx)(`img`,{src:s,alt:t.split(`/`).pop()??`image`,className:`max-h-[70vh] max-w-full rounded object-contain`})}):n.startsWith(`video/`)?(0,V.jsx)(`div`,{className:`flex items-center justify-center p-4`,children:(0,V.jsx)(`video`,{src:s,controls:!0,className:`max-h-[70vh] max-w-full rounded`})}):null:null}function fe(e){return e.split(`/`).some(e=>e.startsWith(`.`))}function pe({isDirty:e,isSaving:t,onSave:n,onDiscard:r}){return(0,V.jsxs)(`div`,{className:`flex items-center justify-end gap-2 border-t px-3 py-2`,style:{borderColor:`var(--border-element)`},children:[(0,V.jsx)(c,{variant:`ghost`,size:`compact`,disabled:t,onClick:r,children:`Discard`}),t&&(0,V.jsx)(h,{className:`h-4 w-4 animate-spin`,style:{color:`var(--content-tertiary)`}}),(0,V.jsx)(c,{variant:`primary`,size:`compact`,disabled:!e||t,onClick:n,children:`Save`})]})}function K({content:e,downloadContent:t,fileName:n,mimeType:r,showEdit:i,isEditing:a,onToggleEdit:o}){let[s,l]=(0,B.useState)(!1),u=(0,B.useRef)(null),d=(0,B.useCallback)(()=>{navigator.clipboard.writeText(e).then(()=>{l(!0),u.current&&clearTimeout(u.current),u.current=setTimeout(()=>l(!1),1500)})},[e]),f=t??e,p=(0,B.useCallback)(()=>{let e=new Blob([f],{type:r}),t=URL.createObjectURL(e),i=document.createElement(`a`);i.href=t,i.download=n,i.click(),URL.revokeObjectURL(t)},[f,n,r]);return(0,B.useEffect)(()=>()=>{u.current&&clearTimeout(u.current)},[]),a?null:(0,V.jsxs)(`div`,{className:`absolute right-3 top-3 z-10 flex items-center gap-1 rounded-md bg-[var(--surface-primary)] shadow-sm`,children:[i&&(0,V.jsx)(c,{variant:`ghost`,size:`regular`,iconOnly:(0,V.jsx)(g,{"aria-hidden":!0}),onClick:o,"aria-label":`Edit file`,className:`hover:bg-[var(--surface-base)]`}),(0,V.jsx)(c,{variant:`ghost`,size:`regular`,iconOnly:s?(0,V.jsx)(F,{"aria-hidden":!0}):(0,V.jsx)(D,{"aria-hidden":!0}),onClick:d,"aria-label":s?`Copied`:`Copy file contents`,className:`hover:bg-[var(--surface-base)]`}),(0,V.jsx)(c,{variant:`ghost`,size:`regular`,iconOnly:(0,V.jsx)(M,{"aria-hidden":!0}),onClick:p,"aria-label":`Download file`,className:`hover:bg-[var(--surface-base)]`})]})}var q=`ui-monospace, SFMono-Regular, 'SF Mono', Menlo, Consolas, monospace`;function J({value:e,onChange:t,onSave:n}){return(0,V.jsx)(`textarea`,{className:`m-0 h-full w-full resize-none overflow-auto border-none bg-transparent p-4 text-body-medium-lighter leading-relaxed outline-none`,style:{color:`var(--content-default)`,fontFamily:q},value:e,onChange:e=>t(e.target.value),onKeyDown:e=>{(e.metaKey||e.ctrlKey)&&e.key===`s`&&(e.preventDefault(),n())},spellCheck:!1})}function Y({content:e,readOnly:t,whiteSpace:n=`pre-wrap`,onStartEdit:r}){return(0,V.jsx)(`pre`,{className:`m-0 h-full overflow-auto p-4 text-body-medium-lighter leading-relaxed${t?``:` cursor-text`}`,style:{color:`var(--content-default)`,fontFamily:q,whiteSpace:n},onClick:t?void 0:r,children:e})}function me({assistantId:e,selectedPath:t,showHidden:n,viewMode:o,onChangeViewMode:s,onBrowse:l}){let u=r(),{data:d,isLoading:f}=i({...H({path:{assistant_id:e},query:{path:t??``,showHidden:n}}),enabled:!!t}),[p,m]=(0,B.useState)(null),[g,_]=(0,B.useState)(null),v=p!=null&&p===t,y=d?.content??``,b=g?.path===t?g.content:y,x=()=>{m(null),_(null)},C=a({mutationFn:async({path:t,content:n})=>{let{error:r,response:i}=await S({path:{assistant_id:e},body:{path:t,content:n,encoding:`utf8`},throwOnError:!1});if(!i?.ok||r)throw Error(`Failed to save file`)},onSuccess:(e,t)=>{m(e=>e===t.path?null:e),_(e=>e?.path===t.path?null:e),u.invalidateQueries({queryKey:[`assistantsWorkspaceFileRetrieve`]})}}),w=b!==y,T=(0,B.useCallback)(()=>{t&&w&&!C.isPending&&C.mutate({path:t,content:b})},[t,w,C,b]);if(!t)return(0,V.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-3`,children:[(0,V.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Select a file to view`}),l&&(0,V.jsx)(c,{type:`button`,onClick:l,leftIcon:(0,V.jsx)(se,{"aria-hidden":!0}),className:`sm:hidden`,children:`Browse files`})]});if(f)return(0,V.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,V.jsx)(h,{className:`h-6 w-6 animate-spin`,style:{color:`var(--content-tertiary)`}})});if(!d)return(0,V.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,V.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`File not found`})});let D=d.mimeType??`application/octet-stream`,O=d.name??t.split(`/`).pop()??t,k=re(O,D),A=le(O,D),j=d.content!=null&&!k&&!A,M=t?fe(t):!0,N=v&&(0,V.jsx)(pe,{isDirty:w,isSaving:C.isPending,onSave:T,onDiscard:x});if(k&&d.content!=null){let e=v?b:d.content;return(0,V.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,V.jsx)(G,{name:O,mimeType:D,rightContent:(0,V.jsx)(W,{viewMode:o,onChange:e=>{v&&x(),s(e)}})}),(0,V.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,V.jsx)(K,{content:e,fileName:O,mimeType:D,showEdit:!M&&o===`source`,isEditing:v,onToggleEdit:()=>v?x():m(t)}),o===`preview`?(0,V.jsx)(`div`,{className:`h-full overflow-auto px-6 py-4`,style:{color:`var(--content-default)`},children:(0,V.jsx)(ie,{content:e})}):v?(0,V.jsx)(J,{value:b,onChange:e=>_({path:t,content:e}),onSave:T}):(0,V.jsx)(Y,{content:d.content,readOnly:M,onStartEdit:()=>m(t)})]}),N]})}if(A&&d.content!=null){let e=v?b:d.content,n=ue(e);return(0,V.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,V.jsx)(G,{name:O,mimeType:D,rightContent:(0,V.jsx)(W,{viewMode:o,onChange:e=>{v&&x(),s(e)}})}),(0,V.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,V.jsx)(K,{content:o===`preview`?n:e,downloadContent:e,fileName:O,mimeType:D,showEdit:!M&&o===`source`,isEditing:v,onToggleEdit:()=>v?x():m(t)}),o===`preview`?(0,V.jsx)(Y,{content:n,readOnly:!0,whiteSpace:`pre`}):v?(0,V.jsx)(J,{value:b,onChange:e=>_({path:t,content:e}),onSave:T}):(0,V.jsx)(Y,{content:d.content,readOnly:M,onStartEdit:()=>m(t)})]}),N]})}return j?(0,V.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,V.jsx)(G,{name:O,mimeType:D,size:d.size}),(0,V.jsxs)(`div`,{className:`relative flex-1 overflow-hidden`,children:[(0,V.jsx)(K,{content:v?b:d.content??``,fileName:O,mimeType:D,showEdit:!M,isEditing:v,onToggleEdit:()=>v?x():m(t)}),v?(0,V.jsx)(J,{value:b,onChange:e=>_({path:t,content:e}),onSave:T}):(0,V.jsx)(Y,{content:d.content??``,readOnly:M,onStartEdit:()=>m(t)})]}),N]}):D.startsWith(`image/`)||D.startsWith(`video/`)?(0,V.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,V.jsx)(G,{name:O,mimeType:D,size:d.size}),(0,V.jsx)(`div`,{className:`flex-1 overflow-auto`,children:(0,V.jsx)(de,{assistantId:e,path:t,mimeType:D,showHidden:n})})]}):(0,V.jsxs)(`div`,{className:`flex h-full flex-col`,children:[(0,V.jsx)(G,{name:O,mimeType:D,size:d.size}),(0,V.jsx)(`div`,{className:`flex flex-1 items-center justify-center p-8`,children:(0,V.jsxs)(`div`,{className:`w-full max-w-sm rounded-lg border p-6 text-center`,style:{borderColor:`var(--border-base)`,backgroundColor:`var(--surface-lift)`},children:[(0,V.jsx)(E,{className:`mx-auto h-10 w-10`,style:{color:`var(--content-tertiary)`}}),(0,V.jsx)(`p`,{className:`mt-3 text-body-medium-default`,style:{color:`var(--content-default)`},children:O}),(0,V.jsxs)(`div`,{className:`mt-2 space-y-1`,children:[(0,V.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:D}),(0,V.jsx)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:R(d.size,`Unknown size`)}),d.modifiedAt&&(0,V.jsxs)(`p`,{className:`text-body-small-default`,style:{color:`var(--content-secondary, var(--content-tertiary))`},children:[`Modified: `,new Date(d.modifiedAt).toLocaleString()]})]})]})})]})}var he=e(n(),1);function X(e,t){if(t===`name`)return e;let n=e.slice();return n.sort((e,t)=>{let n=e.size??null,r=t.size??null;return n===null&&r===null?(e.name??``).localeCompare(t.name??``):n===null?1:r===null?-1:n===r?(e.name??``).localeCompare(t.name??``):r-n}),n}function Z(e){return s({queryFn:async()=>{let t={};e.query?.path&&(t.path=e.query.path),e.query?.showHidden&&(t.showHidden=`true`),e.query?.includeDirSizes&&(t.includeDirSizes=`true`);let{data:n,error:r}=await y({path:e.path,query:t});if(r)throw r;if(!n)throw Error(`Failed to load workspace tree`);return n},queryKey:[`assistantsWorkspaceTreeRetrieve`,e]})}function ge({entry:e}){return e.type===`directory`?(0,V.jsx)(k,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}):e.mimeType?.startsWith(`image/`)?(0,V.jsx)(P,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}):e.mimeType?.startsWith(`video/`)?(0,V.jsx)(T,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,V.jsx)(O,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}})}function Q({entry:e,assistantId:t,expandedPaths:n,selectedPath:r,showHidden:a,sortMode:o,searchLower:s,onToggleExpand:c,onSelectPath:l,depth:u}){let d=e.path??``,f=e.name??``,p=e.type===`directory`,h=n.has(d),g=r===d,_=f.startsWith(`.`),v=p&&(h||s.length>0),{data:y}=i({...Z({path:{assistant_id:t},query:{path:d,showHidden:a,includeDirSizes:o===`size`}}),enabled:p&&v}),b=(0,B.useMemo)(()=>X(y?.entries??[],o),[y?.entries,o]),x=s===``||f.toLowerCase().includes(s);return s!==``&&!p&&!x?null:(0,V.jsxs)(`div`,{children:[(0,V.jsxs)(`button`,{onClick:()=>{p?c(d):l(d)},className:`group flex w-full items-center gap-1.5 px-2 py-1 text-left text-body-medium-lighter transition-colors hover:bg-[var(--surface-hover)]`,style:{paddingLeft:`${u*14+8}px`,paddingRight:`8px`,color:g?`var(--content-default)`:_?`var(--content-tertiary)`:`var(--content-default)`,backgroundColor:g?`color-mix(in oklab, var(--primary-base) 12%, transparent)`:void 0,opacity:_&&!g?.7:1},children:[p?v?(0,V.jsx)(ee,{className:`h-3 w-3 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,V.jsx)(m,{className:`h-3 w-3 shrink-0`,style:{color:`var(--content-tertiary)`}}):(0,V.jsx)(`span`,{className:`h-3 w-3 shrink-0`}),(0,V.jsx)(ge,{entry:e}),(0,V.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:f}),e.size!=null&&(0,V.jsx)(`span`,{className:`shrink-0 text-label-medium-default tabular-nums`,style:{color:`var(--content-tertiary)`},children:R(e.size)})]}),p&&v&&b.length>0&&(0,V.jsx)(`div`,{children:b.map(e=>(0,V.jsx)(Q,{entry:e,assistantId:t,expandedPaths:n,selectedPath:r,showHidden:a,sortMode:o,searchLower:s,onToggleExpand:c,onSelectPath:l,depth:u+1},e.path))})]})}function _e({kind:e,onCancel:t,onConfirm:n,pending:r,error:i}){let[a,o]=(0,B.useState)(``),s=a.trim(),l=s.length>0&&!r;return(0,he.createPortal)((0,V.jsx)(`div`,{role:`dialog`,"aria-modal":`true`,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,onKeyDown:e=>{e.key===`Escape`&&t()},onClick:e=>{e.target===e.currentTarget&&t()},children:(0,V.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),l&&n(s)},className:`mx-4 w-full max-w-sm rounded-xl border p-5 shadow-xl`,style:{backgroundColor:`var(--surface-lift)`,borderColor:`var(--border-base)`},children:[(0,V.jsx)(`h2`,{className:`mb-3 text-title-small`,style:{color:`var(--content-default)`},children:e===`file`?`New File`:`New Folder`}),(0,V.jsx)(f,{autoFocus:!0,type:`text`,value:a,onChange:e=>o(e.target.value),placeholder:e===`file`?`filename.md`:`folder-name`,errorText:i??void 0,fullWidth:!0,wrapperClassName:`mb-3`,autoComplete:`off`,spellCheck:!1}),(0,V.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[(0,V.jsx)(c,{type:`button`,variant:`outlined`,onClick:t,disabled:r,children:`Cancel`}),(0,V.jsx)(c,{type:`submit`,disabled:!l,children:r?`Creating…`:`Create`})]})]})}),document.body)}function $({assistantId:e,expandedPaths:t,selectedPath:n,showHidden:o,sortMode:s,onToggleExpand:l,onExpandPath:u,onSelectPath:d,onToggleShowHidden:p,onChangeSortMode:m}){let h=r(),[g,y]=(0,B.useState)(``),b=g.trim().toLowerCase(),[x,C]=(0,B.useState)(!1),[T,E]=(0,B.useState)(null),[D,O]=(0,B.useState)(null),{data:k,isLoading:A}=i(Z({path:{assistant_id:e},query:{showHidden:o,includeDirSizes:s===`size`}})),M=(0,B.useMemo)(()=>X(k?.entries??[],s),[k?.entries,s]),P=(0,B.useCallback)(()=>{h.invalidateQueries({queryKey:[`assistantsWorkspaceTreeRetrieve`]})},[h]),F=a({mutationFn:async t=>{let{error:n,response:r}=t.kind===`file`?await S({path:{assistant_id:e},body:{path:t.name,content:``,encoding:`utf8`},throwOnError:!1}):await v({path:{assistant_id:e},body:{path:t.name},throwOnError:!1});if(n||!r?.ok)throw Error(typeof n==`string`?n:`Failed to create — check the name and try again.`);return t},onSuccess:e=>{E(null),O(null),P(),e.kind===`file`?d(e.name):u(e.name)},onError:e=>{O(e instanceof Error?e.message:`Failed to create.`)}}),I=(0,B.useCallback)(e=>{T&&(O(null),F.mutate({kind:T,name:e}))},[T,F]);return(0,V.jsxs)(V.Fragment,{children:[(0,V.jsxs)(`div`,{className:`flex items-center justify-between border-b px-3 py-2.5`,style:{borderColor:`var(--border-element)`},children:[(0,V.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-secondary)`},children:`Files`}),(0,V.jsxs)(`div`,{className:`flex items-center gap-0.5`,children:[(0,V.jsx)(c,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:s===`size`?(0,V.jsx)(oe,{"aria-hidden":!0}):(0,V.jsx)(ae,{"aria-hidden":!0}),onClick:()=>m(s===`size`?`name`:`size`),"aria-label":s===`size`?`Sort by name`:`Sort by size`,title:s===`size`?`Sorted by size — switch to name`:`Sorted by name — switch to size`,tintColor:s===`size`?`var(--content-default)`:`var(--content-tertiary)`}),(0,V.jsx)(c,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:o?(0,V.jsx)(w,{"aria-hidden":!0}):(0,V.jsx)(j,{"aria-hidden":!0}),onClick:p,"aria-label":o?`Hide hidden files`:`Show hidden files`,title:o?`Hide hidden files`:`Show hidden files`,tintColor:o?`var(--content-default)`:`var(--content-tertiary)`}),(0,V.jsx)(ve,{open:x,onOpenChange:C,onSelectKind:e=>{C(!1),O(null),E(e)}})]})]}),(0,V.jsx)(`div`,{className:`px-3 py-2`,children:(0,V.jsxs)(`div`,{className:`relative`,children:[(0,V.jsx)(f,{type:`text`,value:g,onChange:e=>y(e.target.value),placeholder:`Search files`,leftIcon:(0,V.jsx)(N,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,spellCheck:!1,autoComplete:`off`}),g&&(0,V.jsx)(c,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,V.jsx)(_,{"aria-hidden":!0}),onClick:()=>y(``),"aria-label":`Clear search`,className:`absolute right-1.5 top-1/2 -translate-y-1/2`,tintColor:`var(--content-tertiary)`})]})}),(0,V.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto py-1`,children:A?(0,V.jsx)(`div`,{className:`flex items-center justify-center py-8`,children:(0,V.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`,style:{color:`var(--content-tertiary)`}})}):M.length?M.map(r=>(0,V.jsx)(Q,{entry:r,assistantId:e,expandedPaths:t,selectedPath:n,showHidden:o,sortMode:s,searchLower:b,onToggleExpand:l,onSelectPath:d,depth:0},r.path)):(0,V.jsx)(`p`,{className:`px-3 py-4 text-center text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`No files found`})}),T!==null&&(0,V.jsx)(_e,{kind:T,onCancel:()=>{E(null),O(null)},onConfirm:I,pending:F.isPending,error:D},T)]})}function ve({open:e,onOpenChange:t,onSelectKind:n}){return C()?(0,V.jsxs)(l.Root,{open:e,onOpenChange:t,children:[(0,V.jsx)(l.Trigger,{asChild:!0,children:(0,V.jsx)(c,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,V.jsx)(I,{"aria-hidden":!0}),"aria-label":`Create new file or folder`,title:`New file or folder`,tintColor:`var(--content-tertiary)`})}),(0,V.jsxs)(l.Content,{children:[(0,V.jsx)(l.Header,{className:`sr-only`,children:(0,V.jsx)(l.Title,{children:`Create new`})}),(0,V.jsxs)(l.Body,{className:`pt-0`,children:[(0,V.jsx)(d,{icon:A,label:`New File`,onSelect:()=>n(`file`)}),(0,V.jsx)(d,{icon:z,label:`New Folder`,onSelect:()=>n(`folder`)})]})]})]}):(0,V.jsxs)(u.Root,{open:e,onOpenChange:t,children:[(0,V.jsx)(u.Trigger,{asChild:!0,children:(0,V.jsx)(c,{type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,V.jsx)(I,{"aria-hidden":!0}),"aria-label":`Create new file or folder`,title:`New file or folder`,tintColor:`var(--content-tertiary)`})}),(0,V.jsxs)(u.Content,{align:`end`,sideOffset:4,role:`menu`,className:`w-44 overflow-hidden p-0`,children:[(0,V.jsx)(c,{type:`button`,variant:`ghost`,onClick:()=>n(`file`),className:`w-full justify-start rounded-none`,leftIcon:(0,V.jsx)(A,{"aria-hidden":!0,style:{color:`var(--content-tertiary)`}}),role:`menuitem`,children:`New File`}),(0,V.jsx)(c,{type:`button`,variant:`ghost`,onClick:()=>n(`folder`),className:`w-full justify-start rounded-none`,leftIcon:(0,V.jsx)(z,{"aria-hidden":!0,style:{color:`var(--content-tertiary)`}}),role:`menuitem`,children:`New Folder`})]})]})}function ye({assistantId:e}){let[t,n]=(0,B.useState)(new Set),[r,i]=(0,B.useState)(null),[a,o]=(0,B.useState)(!1),[s,c]=(0,B.useState)(`name`),[l,u]=(0,B.useState)(`preview`),d=(0,B.useCallback)(e=>{n(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},[]),f=(0,B.useCallback)(e=>{n(t=>{if(t.has(e))return t;let n=new Set(t);return n.add(e),n})},[]),[p,m]=(0,B.useState)(!1),h={assistantId:e,expandedPaths:t,selectedPath:r,showHidden:a,sortMode:s,onToggleExpand:d,onExpandPath:f,onSelectPath:(0,B.useCallback)(e=>{i(e),m(!1)},[]),onToggleShowHidden:()=>o(e=>!e),onChangeSortMode:c};return(0,V.jsxs)(`div`,{className:`flex h-full min-h-0 flex-col gap-4`,children:[(0,V.jsx)(`div`,{className:`flex items-center sm:hidden`,children:(0,V.jsx)(L,{onClick:()=>m(!0)})}),(0,V.jsx)(ne,{open:p,onClose:()=>m(!1),title:`Files`,children:(0,V.jsx)($,{...h})}),(0,V.jsxs)(`div`,{className:`grid min-h-0 flex-1 grid-cols-1 gap-4 sm:grid-cols-[320px_1fr]`,children:[(0,V.jsx)(`div`,{className:`hidden min-h-0 min-w-0 flex-col overflow-hidden rounded-xl border sm:flex`,style:{backgroundColor:`var(--surface-overlay)`,borderColor:`var(--border-base)`},children:(0,V.jsx)($,{...h})}),(0,V.jsx)(`div`,{className:`flex min-h-0 min-w-0 flex-col overflow-hidden rounded-xl border`,style:{backgroundColor:`var(--surface-overlay)`,borderColor:`var(--border-base)`},children:(0,V.jsx)(me,{assistantId:e,selectedPath:r,showHidden:a,viewMode:l,onChangeViewMode:u,onBrowse:()=>m(!0)})})]})]})}function be(){return(0,V.jsx)(ye,{assistantId:te()})}export{be as WorkspacePage};
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/dist/assets/{avatar-bundled-components-CrafToy8.js → avatar-bundled-components-C65cwZmA.js}
RENAMED
|
File without changes
|
/package/dist/assets/{avatar-svg-compositor-krWs9LGY.js → avatar-svg-compositor-Cv9LowuC.js}
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|