@vellumai/web 0.12.2-staging.4 → 0.12.2-staging.5
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/{a2a-invite-C-d__v0P.js → a2a-invite-D7Z1FvN-.js} +1 -1
- package/dist/assets/{about-page-BMTVVfA2.js → about-page-JRNWZ7kb.js} +1 -1
- package/dist/assets/{account-page-Bu04CQvW.js → account-page-Fw9S3qL2.js} +1 -1
- package/dist/assets/{account-shell-0TviHaBf.js → account-shell-BZp2-g1N.js} +1 -1
- package/dist/assets/{acp-run-detail-panel-w4reCx6D.js → acp-run-detail-panel-2Nc7KPDZ.js} +1 -1
- package/dist/assets/{activation-list-route-CSuVtIeq.js → activation-list-route-L2lNhfTD.js} +1 -1
- package/dist/assets/{activity-redirect-page-Cgmmb8Rc.js → activity-redirect-page-ClzSvQoo.js} +1 -1
- package/dist/assets/{activity-steps-panel-C26DS_qd.js → activity-steps-panel-DSJiB6_Z.js} +1 -1
- package/dist/assets/{add-credits-modal-IIKnKS9l.js → add-credits-modal-CAUxaNjZ.js} +1 -1
- package/dist/assets/add-credits-modal-CXZ_HMMM.js +1 -0
- package/dist/assets/{ai-page-_iWq21vC.js → ai-page-yAJ8z8PM.js} +1 -1
- package/dist/assets/{android-billing-handoff-BVx_2Qs0.js → android-billing-handoff-BxVpZpp4.js} +1 -1
- package/dist/assets/{api-key-screen-xui6n8NR.js → api-key-screen-Ccta6gO2.js} +1 -1
- package/dist/assets/{app-info-4gR8gnBC.js → app-info-Csu7V_TE.js} +1 -1
- package/dist/assets/app-p4YU9h0P.js +392 -0
- package/dist/assets/{archive-redirect-page-D1zUz-Kn.js → archive-redirect-page-CzxO3IP6.js} +1 -1
- package/dist/assets/{assistant-status-panel-B-woG0mJ.js → assistant-status-panel-WAUlzwkS.js} +1 -1
- package/dist/assets/auth-store-Ck1z7eSl.js +1 -0
- package/dist/assets/{auth-welcome-screen-BsYIoTpq.js → auth-welcome-screen-pfPKjv5w.js} +1 -1
- package/dist/assets/avatar-bundled-components-D1XVsaGL.js +1 -0
- package/dist/assets/{avatar-random-DTCQMspt.js → avatar-random-Cki-Ly_C.js} +2 -2
- package/dist/assets/{await-org-header-settled-euao9G4w.js → await-org-header-settled-6bT0rbUs.js} +1 -1
- package/dist/assets/{background-task-detail-panel-Bm7wkZ5w.js → background-task-detail-panel-BYCUOtG5.js} +1 -1
- package/dist/assets/{billing-page-BkUfkbYS.js → billing-page-DUNd0r_e.js} +3 -3
- package/dist/assets/{billing-redirect-page-A8_L7A4l.js → billing-redirect-page-Dl__amIR.js} +1 -1
- package/dist/assets/{bookmarks-page-Db3QFcDm.js → bookmarks-page-5HR6Klms.js} +1 -1
- package/dist/assets/{bundle-confirm-page-Cnb49ExR.js → bundle-confirm-page-BxHGHYtw.js} +1 -1
- package/dist/assets/{channel-transcript-panel-DFDoSX5e.js → channel-transcript-panel-O29G6BfM.js} +1 -1
- package/dist/assets/{channels-page-route-9NljMyj4.js → channels-page-route-BsAycszP.js} +1 -1
- package/dist/assets/{chat-info-panel-BENFQ0tW.js → chat-info-panel-C3GOJkgC.js} +1 -1
- package/dist/assets/{checkout-continuation-C38t4ayV.js → checkout-continuation-CI0HG33e.js} +1 -1
- package/dist/assets/{checkout-page-B6HAgaEv.js → checkout-page-KqQmNMqQ.js} +1 -1
- package/dist/assets/checkout-return-target-B4WZzAGx.js +1 -0
- package/dist/assets/command-palette-BPcXUSG_.js +1 -0
- package/dist/assets/{command-palette-BIYpDozl.js → command-palette-DxolRnp8.js} +1 -1
- package/dist/assets/{command-palette-window-page-BMC7dzK0.js → command-palette-window-page-B4sEAiOF.js} +1 -1
- package/dist/assets/{community-page-BxDoLG0_.js → community-page-OsB5Ahr9.js} +1 -1
- package/dist/assets/{companion-accent-pu5Xu8Z6.js → companion-accent-BhdiAsTr.js} +1 -1
- package/dist/assets/{companion-dock-zones-page-BEfMdIVO.js → companion-dock-zones-page-xJmPXMgY.js} +1 -1
- package/dist/assets/{companion-layout-Ye64fIzN.js → companion-layout-BPhlz6Wp.js} +1 -1
- package/dist/assets/{companion-popover-Bs6A6445.js → companion-popover-BsbCOPDj.js} +1 -1
- package/dist/assets/{companion-popover-page-7jpYeiIN.js → companion-popover-page-4ULIStvW.js} +1 -1
- package/dist/assets/{companion-surface-page-BrMY3X-F.js → companion-surface-page-BU0SxRLT.js} +1 -1
- package/dist/assets/{companion-watch-frame-page-Bk0N7E-g.js → companion-watch-frame-page-BwKy3_MW.js} +1 -1
- package/dist/assets/{connect-page-Bf8bYBAk.js → connect-page-BDVFjuF6.js} +1 -1
- package/dist/assets/{consent-controls-N6cnmytV.js → consent-controls-BXRj0Z62.js} +1 -1
- package/dist/assets/{contacts-gateway-C_BunUUf.js → contacts-gateway-jgC2hJQu.js} +1 -1
- package/dist/assets/{contacts-page-route-DIxMGBde.js → contacts-page-route-C8DyP00R.js} +1 -1
- package/dist/assets/{credential-entry-page-2ek7NaCu.js → credential-entry-page-DZm1DSNe.js} +1 -1
- package/dist/assets/{credentials-page-D3PvFMgc.js → credentials-page-BFptIyXc.js} +1 -1
- package/dist/assets/{csv-preview-BB-EmIxC.js → csv-preview-DYuTN03x.js} +1 -1
- package/dist/assets/{danger-zone-redirect-page-BVmYzrKj.js → danger-zone-redirect-page-BgNNmPcD.js} +1 -1
- package/dist/assets/{debug-page-CJOt0BAt.js → debug-page-CsudFgfJ.js} +1 -1
- package/dist/assets/{deploy-dialogs-BSCor8jx.js → deploy-dialogs-BXow2FID.js} +1 -1
- package/dist/assets/deploy-dialogs-Bh91S82o.js +1 -0
- package/dist/assets/{desktop-preview-content-BIp4Vpgt.js → desktop-preview-content-DZb6VLVc.js} +2 -2
- package/dist/assets/{desktop-status-CHoj8auj.js → desktop-status-Dg1h8ABX.js} +1 -1
- package/dist/assets/{desktop-viewer-86gYrlm2.js → desktop-viewer-38EXOmZ4.js} +1 -1
- package/dist/assets/{detail-card-CGafPdBQ.js → detail-card-BpqiAUnN.js} +1 -1
- package/dist/assets/{detail-panel-stop-button-BqhRaB6y.js → detail-panel-stop-button-BFDJ5Gir.js} +1 -1
- package/dist/assets/{detail-primitives-DIBzx3XJ.js → detail-primitives-CYiljnNr.js} +1 -1
- package/dist/assets/{developer-page-p4Ylxemb.js → developer-page-BIPONPKj.js} +1 -1
- package/dist/assets/{devices-redirect-page-BcyaUgzH.js → devices-redirect-page-DwI95Deo.js} +1 -1
- package/dist/assets/{dictation-overlay-page-C9yEcxKh.js → dictation-overlay-page-Du7FXduO.js} +1 -1
- package/dist/assets/{document-load-CZeb0od7.js → document-load-B4r-kmWD.js} +1 -1
- package/dist/assets/document-load-Bcy7cK7m.js +1 -0
- package/dist/assets/{document-viewer-page-L_O7lYHa.js → document-viewer-page-BzftukxE.js} +1 -1
- package/dist/assets/{emails-page-fgZebuJ7.js → emails-page-Cp6XS4Jh.js} +1 -1
- package/dist/assets/{environment-store-7mW8BRRm.js → environment-store-DXa_IPIU.js} +1 -1
- package/dist/assets/{file-diff-view-B9dRfPbB.js → file-diff-view-DIBSfwHd.js} +1 -1
- package/dist/assets/{file-editor-DtbuATs6.js → file-editor-gXTdPzcn.js} +1 -1
- package/dist/assets/{general-page-iMRa5Ucp.js → general-page-Du-jPHaf.js} +1 -1
- package/dist/assets/{hatching-screen-C9GXGQ2P.js → hatching-screen-BZup1IEp.js} +1 -1
- package/dist/assets/{hosting-screen-D8bCW4Uz.js → hosting-screen-B1uKDCEA.js} +1 -1
- package/dist/assets/{identity-page-route-D0fpi7db.js → identity-page-route-Cm6K_bBR.js} +1 -1
- package/dist/assets/{inspect-page-C2T5Wpgw.js → inspect-page-iBkyiBTD.js} +3 -3
- package/dist/assets/{integrations-page-3cwkXYyq.js → integrations-page-CVmr89JP.js} +1 -1
- package/dist/assets/{intelligence-layout-jyahyAWu.js → intelligence-layout-CzYFqgC5.js} +1 -1
- package/dist/assets/intelligence-layout-slots-store-C5ni0SPd.js +1 -0
- package/dist/assets/{keyboard-shortcuts-redirect-page-Bcl-FjyB.js → keyboard-shortcuts-redirect-page-VOpK_vkw.js} +1 -1
- package/dist/assets/{latest-assistant-text-HB3-JTrf.js → latest-assistant-text-CRS_nZkk.js} +1 -1
- package/dist/assets/{library-detail-page-DTptYQAF.js → library-detail-page-CYDXCYR7.js} +1 -1
- package/dist/assets/{library-page-D0OfVER_.js → library-page-DU9_fODf.js} +1 -1
- package/dist/assets/local-mode-BwMCd1ly.js +1 -0
- package/dist/assets/{login-page-BA3GjFvS.js → login-page-OqpqflhY.js} +1 -1
- package/dist/assets/{logout-page-Dp--IQJm.js → logout-page-B75MMPkh.js} +1 -1
- package/dist/assets/{logs-layout-C4SjgNAl.js → logs-layout-Dj1ybnfw.js} +1 -1
- package/dist/assets/{markdown-preview-CBu26q1U.js → markdown-preview-r7bRpgS4.js} +1 -1
- package/dist/assets/{media-preview-CrddXQMc.js → media-preview-ozDVMMcK.js} +1 -1
- package/dist/assets/{memory-page-route-BzLfpam9.js → memory-page-route-DSoeQ_G0.js} +1 -1
- package/dist/assets/{memory-router-playground-page-CP0Eurny.js → memory-router-playground-page-Cica9Nbb.js} +1 -1
- package/dist/assets/{message-files-panel-CDzpeEx4.js → message-files-panel-DwXYI7Vj.js} +1 -1
- package/dist/assets/{metric-card-Dkx47Ug0.js → metric-card-CRZNAmE4.js} +1 -1
- package/dist/assets/native-attachment-pickers-DH76HUOD.js +1 -0
- package/dist/assets/native-file-AwxfXJFy.js +1 -0
- package/dist/assets/{notifications-page-1r0ehmHL.js → notifications-page-8XrbAs9c.js} +1 -1
- package/dist/assets/{oauth-complete-page-D8yKCOVn.js → oauth-complete-page-B-oiboUF.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-DzPqlG80.js → oauth-popup-complete-page-DbkS3Ktn.js} +1 -1
- package/dist/assets/paired-platform-identity-BN-Q3FiP.js +1 -0
- package/dist/assets/{pairing-page-DhmG1Tkg.js → pairing-page-CL3aDKN8.js} +1 -1
- package/dist/assets/password-reset-page-9EUcZrPc.js +1 -0
- package/dist/assets/{pdf-file-preview-ElX646lL.js → pdf-file-preview-DWb95OOo.js} +1 -1
- package/dist/assets/{personality-page-DXW5MuRz.js → personality-page-Cd4rs_nw.js} +1 -1
- package/dist/assets/{personality-page-BqW5uuDF.js → personality-page-DRi1SkGz.js} +1 -1
- package/dist/assets/{personality-sliders-BuInNb35.js → personality-sliders-r9DH0oqr.js} +1 -1
- package/dist/assets/{plans-page-B87o5Bm-.js → plans-page-3TPIVG-V.js} +1 -1
- package/dist/assets/{platform-loopback-page--ynU4rVO.js → platform-loopback-page-6AkvXRD1.js} +1 -1
- package/dist/assets/{plugin-detail-page-lbmmlIpx.js → plugin-detail-page-C2PIC2NZ.js} +1 -1
- package/dist/assets/{plugins-page-BM44sOv4.js → plugins-page-Y18LhhDz.js} +1 -1
- package/dist/assets/plugins-surface-rSnCf7eu.js +1 -0
- package/dist/assets/{preview-error-B6mdXJ98.js → preview-error-BWXX5254.js} +1 -1
- package/dist/assets/{privacy-page-BqqU59zB.js → privacy-page-zDZFH9JY.js} +1 -1
- package/dist/assets/{privacy-screen-CW2gbeYL.js → privacy-screen-BdvoQ-DB.js} +1 -1
- package/dist/assets/{provider-callback-page-PVHvQXqC.js → provider-callback-page-CFS4DEY_.js} +1 -1
- package/dist/assets/{provider-key-fvCko3IH.js → provider-key-CYTAv7Kh.js} +1 -1
- package/dist/assets/{provider-signup-page-D6kN0d9F.js → provider-signup-page-C89a_7j5.js} +1 -1
- package/dist/assets/{quick-input-page-DMs0592w.js → quick-input-page-5f0AEU1o.js} +1 -1
- package/dist/assets/referral-modal-BciUQDfu.js +1 -0
- package/dist/assets/{referral-modal-C5ePy9XT.js → referral-modal-Dk1Vo23P.js} +1 -1
- package/dist/assets/{research-mock-page-D3X9Fw83.js → research-mock-page-DWfJd3UP.js} +1 -1
- package/dist/assets/{research-onboarding-route-Bk2Zl9y9.js → research-onboarding-route-Bd2vn3i5.js} +1 -1
- package/dist/assets/{review-terms-screen-CU9h0Gz5.js → review-terms-screen-M8IjrJH-.js} +1 -1
- package/dist/assets/routes-D_UALtH1.js +1 -0
- package/dist/assets/{schedules-Cslj2E_n.js → schedules-C83Ua4R6.js} +1 -1
- package/dist/assets/{schedules-page-7QBCwWLg.js → schedules-page-lT5NcWNK.js} +1 -1
- package/dist/assets/{security-redirect-page-D6C5fIZt.js → security-redirect-page-BcTO6hEV.js} +1 -1
- package/dist/assets/{select-assistant-screen-BO9WTRBj.js → select-assistant-screen-DAwfV-mz.js} +1 -1
- package/dist/assets/{self-hosted-servers-sqp6RgAQ.js → self-hosted-servers-BmfZpV_S.js} +1 -1
- package/dist/assets/{service-form-controls-C5nQsTzh.js → service-form-controls-B3_1_Epi.js} +1 -1
- package/dist/assets/{setting-row-Dqextrfj.js → setting-row-Dz9SXznO.js} +1 -1
- package/dist/assets/{settings-divider-D-IFmB_l.js → settings-divider-C1j4hJMG.js} +1 -1
- package/dist/assets/{settings-layout-Bh7MaZ4H.js → settings-layout-CQfyqDUr.js} +1 -1
- package/dist/assets/{share-feedback-modal-DsaGXNnY.js → share-feedback-modal-Ka1FQwFE.js} +1 -1
- package/dist/assets/share-feedback-modal-sGkJieen.js +1 -0
- package/dist/assets/{sidebar-tree-BgVhUiEU.js → sidebar-tree-BSRyDJ-e.js} +1 -1
- package/dist/assets/{signup-page-CzQJSqzn.js → signup-page-CcJHavhm.js} +1 -1
- package/dist/assets/{signup-shell-C1cGo11n.js → signup-shell-D9ohM8Rf.js} +1 -1
- package/dist/assets/{skill-detail-page-BN8Rwzuu.js → skill-detail-page-CGtKgK0P.js} +1 -1
- package/dist/assets/{skill-detail-panel-DVrh3t_h.js → skill-detail-panel-Bpl_9hRY.js} +1 -1
- package/dist/assets/{skill-removal-dialog-CkduZswH.js → skill-removal-dialog-C91c4ZfS.js} +1 -1
- package/dist/assets/{skills-page-DS76T-t4.js → skills-page-DpwPDybh.js} +1 -1
- package/dist/assets/{sounds-page-Bqrv7A7h.js → sounds-page-CzL0Egaq.js} +1 -1
- package/dist/assets/{start-screen-Cz9LflKA.js → start-screen-Cph32ejI.js} +1 -1
- package/dist/assets/{stt-language-picker-modal-Ckz32Oh1.js → stt-language-picker-modal-3iCIcD10.js} +1 -1
- package/dist/assets/{subagent-detail-panel-C2AI9zu4.js → subagent-detail-panel-DF4ZXV2K.js} +1 -1
- package/dist/assets/{superpowers-page-CMOvPhlc.js → superpowers-page-DmqxKZ6y.js} +1 -1
- package/dist/assets/{system-events-page-D0fUUNzD.js → system-events-page-BP_Rw924.js} +1 -1
- package/dist/assets/{system-events-redirect-page-Dr4-w7Y1.js → system-events-redirect-page-sLsausvS.js} +1 -1
- package/dist/assets/{text-preview-DozGQuv6.js → text-preview-CKO4jBfL.js} +1 -1
- package/dist/assets/{theme-stage-page-CcBBPfjV.js → theme-stage-page-BIBA5J8a.js} +1 -1
- package/dist/assets/{tiptap-document-editor-Db4_RKhj.js → tiptap-document-editor-C3jfHfr_.js} +1 -1
- package/dist/assets/{tool-detail-panel-CNNnmtM6.js → tool-detail-panel-BkWuCCm0.js} +1 -1
- package/dist/assets/tool-detail-panel-msAhgoxJ.js +1 -0
- package/dist/assets/{trait-cycle-row-C1uqLkCi.js → trait-cycle-row-leO22btH.js} +1 -1
- package/dist/assets/{upgrade-cancel-page-CKZWRtvT.js → upgrade-cancel-page-B0iduvhi.js} +1 -1
- package/dist/assets/{upgrade-success-page-CkXzT8Ty.js → upgrade-success-page-BClAIdZm.js} +1 -1
- package/dist/assets/{usage-redirect-page-CRrl2BDL.js → usage-redirect-page-BxTlrAZu.js} +1 -1
- package/dist/assets/{use-app-delete-CFfw_T0x.js → use-app-delete-Cj0xy5H5.js} +1 -1
- package/dist/assets/{use-assistant-identity-details-CGJTkSlu.js → use-assistant-identity-details-Bj-VqGPz.js} +1 -1
- package/dist/assets/{use-checkout-dismiss-refresh-DB9VdW8-.js → use-checkout-dismiss-refresh-Clbra-UV.js} +1 -1
- package/dist/assets/{use-edge-swipe-back-DYPOVsUT.js → use-edge-swipe-back-D1eHj9sf.js} +1 -1
- package/dist/assets/{use-hotkey-recorder-Cj-vFxW2.js → use-hotkey-recorder-KK0SXCtP.js} +1 -1
- package/dist/assets/{use-invite-link-dialog-B4f3yyUN.js → use-invite-link-dialog-BYTs8NpU.js} +1 -1
- package/dist/assets/{use-platform-assistant-id-D8KGJAMf.js → use-platform-assistant-id-B1MuVrYX.js} +1 -1
- package/dist/assets/{use-return-to-short-circuit-Db6fiXSQ.js → use-return-to-short-circuit-CkdO0Q2j.js} +1 -1
- package/dist/assets/{use-side-list-room-CSNBqjJu.js → use-side-list-room-BSP_B7R_.js} +1 -1
- package/dist/assets/{use-skill-actions-BNpUjvgz.js → use-skill-actions-Dk64pbQd.js} +1 -1
- package/dist/assets/{use-skill-detail-files-C5BA-Phb.js → use-skill-detail-files-DmOW_S89.js} +1 -1
- package/dist/assets/use-supports-credentials-settings-BSQpJ09k.js +1 -0
- package/dist/assets/{use-transcript-message-by-id-ZVUnXf5k.js → use-transcript-message-by-id-diLlPoiw.js} +1 -1
- package/dist/assets/{voice-page-DDLtbhsC.js → voice-page-0iijkFuD.js} +1 -1
- package/dist/assets/{wake-detail-panel-C5K2zAvp.js → wake-detail-panel-DaKaOAfd.js} +1 -1
- package/dist/assets/{weather-forecast-display-CWGsPOa9.js → weather-forecast-display-ChYkwma2.js} +1 -1
- package/dist/assets/{welcome-screen-DuUuJIJ2.js → welcome-screen-Dwra_l1I.js} +1 -1
- package/dist/assets/{workflow-detail-panel-D6ip8R9Y.js → workflow-detail-panel-CgyFYiiF.js} +1 -1
- package/dist/assets/{workspace-page-D_4QLZh3.js → workspace-page-D-ZvFFGb.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/add-credits-modal-Byhxttdb.js +0 -1
- package/dist/assets/app-DFXcEvsi.js +0 -392
- package/dist/assets/auth-store-BFk7tSVA.js +0 -1
- package/dist/assets/avatar-bundled-components-B-TO2nC_.js +0 -1
- package/dist/assets/checkout-return-target-CrM-Nhda.js +0 -1
- package/dist/assets/command-palette-Dj-GW7dm.js +0 -1
- package/dist/assets/deploy-dialogs-DY0pTVu1.js +0 -1
- package/dist/assets/document-load-B9O1A5E9.js +0 -1
- package/dist/assets/intelligence-layout-slots-store-CI7IhmZv.js +0 -1
- package/dist/assets/local-mode-Dve-u3Zf.js +0 -1
- package/dist/assets/native-attachment-pickers-DVsB4Q0l.js +0 -1
- package/dist/assets/native-file-BKR4KkJt.js +0 -1
- package/dist/assets/paired-platform-identity-C4IGgtxq.js +0 -1
- package/dist/assets/password-reset-page-7yc-z_Pf.js +0 -1
- package/dist/assets/plugins-surface-2i_lZYet.js +0 -1
- package/dist/assets/referral-modal-VQ2vsPTh.js +0 -1
- package/dist/assets/routes-NC2Xyogy.js +0 -1
- package/dist/assets/share-feedback-modal-D44y3KhU.js +0 -1
- package/dist/assets/tool-detail-panel-PjXqpW5b.js +0 -1
- package/dist/assets/use-supports-credentials-settings-DIKVOLU1.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ad as t,Pi as n,Vx as r,et as i,if as a,kg as o,kp as s,rf as c,u_ as l}from"./app-DFXcEvsi.js";import{I as u,Jn as d,N as f,Zn as p,j as m}from"./vendor-DYOeoIwg.js";import{t as h,x as g}from"./react-B9IgSVeK.js";var _=e(g(),1),v=class extends Error{status;constructor(e,t){super(t),this.name=`SimulateMemoryRouterError`,this.status=e}};async function y(e,t,n){let{data:r,response:i}=await l({path:{assistant_id:e},body:t,signal:n,throwOnError:!1}),a=i?await i.clone().text().catch(()=>``):``;if(!i||!i.ok)throw new v(i?.status??0,a||i?.statusText||`Failed to simulate memory router`);if(!r)throw new v(i.status,`Empty response from memory router simulator endpoint`);return{response:r,rawRequest:JSON.stringify(t,null,2),rawResponse:b(a)}}function b(e){if(e.length===0)return e;try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function x(e){return d({mutationFn:async t=>{if(!e)throw new v(0,`Missing assistantId`);return y(e,t)}})}function S(e){return p({...t({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4})}function C(e){return p({...a({path:{assistant_id:e}}),enabled:!!e,staleTime:1440*60*1e3})}function ee(e){return p({...c({path:{assistant_id:e}}),enabled:!!e,staleTime:1/0})}var w=h();function T(){let{t:e}=m(`chat`),t=n(),r=s(),i=o.use.memoryRouterPlayground();return r?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.loading`)}):!t||!i?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.notAvailable`)}):(0,w.jsx)(D,{})}var E={tier1:``,tier2:``,batch:``,profile:``,customPrompt:``};function D(){let{t:e}=m(`chat`),t=i(),n=x(t),r=x(t),a=S(t),o=C(t),s=ee(t),[c,l]=(0,_.useState)(``),[u,d]=(0,_.useState)([{assistantMessage:``,userMessage:``}]),[f,p]=(0,_.useState)(!1);(0,_.useEffect)(()=>{if(f)return;let e=s.data?.nowText;typeof e==`string`&&c===``&&l(e)},[s.data?.nowText,c,f]);let[h,g]=(0,_.useState)(E),[v,y]=(0,_.useState)(E),[b,T]=(0,_.useState)(null),[D,k]=(0,_.useState)(null),M=u[u.length-1].userMessage,P=t=>{let i=t===`A`?h:v,a=t===`A`?T:k,o=t===`A`?n:r;a(null);let s;try{s=O(i)}catch(t){a(t instanceof Error?t.message:e(`memoryRouterPlaygroundPage.invalidOverrideInput`));return}let l=i.profile.trim().length>0?i.profile:void 0,d=i.customPrompt.trim().length>0?i.customPrompt:void 0,f=u.map((e,t)=>t===u.length-1?{...e,userMessage:e.userMessage.trim()}:e);o.mutate({recentTurnPairs:f,nowText:c,...s?{configOverrides:s}:{},...l===void 0?{}:{profileOverride:l},...d===void 0?{}:{routerPromptOverride:d}})},F=()=>{P(`A`),P(`B`)},I=M.trim().length>0,L=I&&!n.isPending,z=I&&!r.isPending;return(0,w.jsx)(`div`,{className:`flex h-full min-h-0 flex-col overflow-y-auto`,children:(0,w.jsxs)(`div`,{className:`mx-auto flex w-full max-w-[1280px] flex-col gap-6 p-6`,children:[(0,w.jsx)(A,{}),(0,w.jsx)(j,{nowText:c,onNowTextChange:e=>{p(!0),l(e)},onReloadNowText:()=>{let e=s.data?.nowText;typeof e==`string`&&(l(e),p(!1))},nowTextLoading:s.isLoading,pairs:u,onPairsChange:d}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,w.jsx)(N,{paneId:`A`,overrides:h,onChange:g,onRun:()=>P(`A`),canRun:L,isRunning:n.isPending,profiles:a.data?.profiles??[],activeProfile:a.data?.activeProfile??null,defaultPromptTemplate:o.data?.template??``}),(0,w.jsx)(N,{paneId:`B`,overrides:v,onChange:y,onRun:()=>P(`B`),canRun:z,isRunning:r.isPending,profiles:a.data?.profiles??[],activeProfile:a.data?.activeProfile??null,defaultPromptTemplate:o.data?.template??``})]}),(0,w.jsx)(`div`,{className:`flex justify-end`,children:(0,w.jsx)(te,{onClick:F,disabled:!I||n.isPending||r.isPending,isRunning:n.isPending||r.isPending})}),(0,w.jsx)(ne,{visible:n.data!==void 0&&r.data!==void 0}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,w.jsx)(R,{paneId:`A`,userMessage:M,mutation:n,otherResult:r.data?.response,validation:b}),(0,w.jsx)(R,{paneId:`B`,userMessage:M,mutation:r,otherResult:n.data?.response,validation:D})]})]})})}function O(e){let t={...k(`tier1_size`,e.tier1),...k(`tier2_size`,e.tier2),...k(`batch_size`,e.batch)};return Object.keys(t).length===0?void 0:t}function k(e,t){let n=t.trim();if(n===``)return{};if(n===`null`)return{[e]:null};let r=Number(n);if(!Number.isInteger(r)||r<1)throw Error(u(`chat:memoryRouterPlaygroundPage.overrideMustBePositiveInteger`,{fieldName:e,value:n}));return{[e]:r}}function A(){let{t:e}=m(`chat`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`h1`,{className:`text-body-large-default`,style:{color:`var(--content-default)`},children:e(`memoryRouterPlaygroundPage.title`)}),(0,w.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:(0,w.jsx)(f,{ns:`chat`,i18nKey:`memoryRouterPlaygroundPage.description`,components:{code:(0,w.jsx)(`code`,{})}})})]})}function j({nowText:e,onNowTextChange:t,onReloadNowText:n,nowTextLoading:i,pairs:a,onPairsChange:o}){let{t:s}=m(`chat`),c=(e,t)=>{o(a.map((n,r)=>r===e?{...n,...t}:n))},l=()=>{o([{assistantMessage:``,userMessage:``},...a])},u=e=>{e!==a.length-1&&o(a.filter((t,n)=>n!==e))};return(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:s(`memoryRouterPlaygroundPage.conversationalContextTitle`)}),(0,w.jsx)(M,{id:`memory-router-playground-now`,label:s(`memoryRouterPlaygroundPage.nowBlockLabel`),value:e,onChange:t,rows:6,monospace:!0,placeholder:s(i?`memoryRouterPlaygroundPage.nowLoadingPlaceholder`:`memoryRouterPlaygroundPage.nowDefaultPlaceholder`),trailing:(0,w.jsx)(`button`,{type:`button`,onClick:n,disabled:i,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:i?`not-allowed`:`pointer`},children:s(`memoryRouterPlaygroundPage.reloadNowButton`)})}),(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:s(`memoryRouterPlaygroundPage.recentPairsLabel`)}),(0,w.jsx)(`button`,{type:`button`,onClick:l,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:`pointer`},children:s(`memoryRouterPlaygroundPage.addOlderPairButton`)})]}),a.map((e,t)=>{let n=t===a.length-1;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-md border p-3`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`},children:[(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsxs)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:[s(`memoryRouterPlaygroundPage.pairLabel`,{index:t+1,total:a.length}),n?s(`memoryRouterPlaygroundPage.pairMostRecentSuffix`):``]}),!n&&(0,w.jsx)(`button`,{type:`button`,onClick:()=>u(t),className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`transparent`,color:`var(--system-negative-strong)`,border:`none`,cursor:`pointer`},children:s(`memoryRouterPlaygroundPage.removeButton`)})]}),(0,w.jsx)(M,{id:`memory-router-playground-pair-${t}-assistant`,label:s(`memoryRouterPlaygroundPage.assistantReplyLabel`),value:e.assistantMessage,onChange:e=>c(t,{assistantMessage:e}),rows:3,placeholder:t===0&&a.length===1?s(`memoryRouterPlaygroundPage.firstTurnAssistantPlaceholder`):s(`memoryRouterPlaygroundPage.assistantReplyPlaceholder`)}),(0,w.jsx)(M,{id:`memory-router-playground-pair-${t}-user`,label:s(n?`memoryRouterPlaygroundPage.justArrivedUserLabel`:`memoryRouterPlaygroundPage.userMessageLabel`),value:e.userMessage,onChange:e=>c(t,{userMessage:e}),rows:3,placeholder:s(n?`memoryRouterPlaygroundPage.lastUserPlaceholder`:`memoryRouterPlaygroundPage.userMessagePlaceholder`),required:n})]},t)})]})})}function M({id:e,label:t,value:n,onChange:r,rows:i,placeholder:a,monospace:o,trailing:s,required:c}){return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,w.jsxs)(`label`,{htmlFor:e,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:[t,c?` *`:``]}),s]}),(0,w.jsx)(`textarea`,{id:e,value:n,onChange:e=>r(e.target.value),rows:i,placeholder:a,className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,resize:`vertical`,...o?{fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`}:{}}})]})}function N({paneId:e,overrides:t,onChange:n,onRun:i,canRun:a,isRunning:o,profiles:s,activeProfile:c,defaultPromptTemplate:l}){let{t:u}=m(`chat`);return(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,w.jsx)(`div`,{className:`text-body-medium-default`,style:{color:X(e)},children:u(`memoryRouterPlaygroundPage.configTitle`,{paneId:e})}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-3`,children:[(0,w.jsx)(I,{paneId:e,label:`tier1_size`,value:t.tier1,onChange:e=>n({...t,tier1:e})}),(0,w.jsx)(I,{paneId:e,label:`tier2_size`,value:t.tier2,onChange:e=>n({...t,tier2:e})}),(0,w.jsx)(I,{paneId:e,label:`batch_size`,value:t.batch,onChange:e=>n({...t,batch:e})})]}),(0,w.jsx)(F,{paneId:e,value:t.profile,onChange:e=>n({...t,profile:e}),profiles:s,activeProfile:c}),(0,w.jsx)(P,{paneId:e,value:t.customPrompt,onChange:e=>n({...t,customPrompt:e}),defaultTemplate:l}),(0,w.jsx)(`div`,{className:`flex justify-end`,children:(0,w.jsx)(`button`,{type:`button`,onClick:i,disabled:!a,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:a?`var(--system-positive-strong)`:`var(--surface-overlay)`,color:a?`var(--content-on-positive)`:`var(--content-disabled)`,border:`none`,cursor:a?`pointer`:`not-allowed`},children:o?u(`memoryRouterPlaygroundPage.running`):u(`memoryRouterPlaygroundPage.runPane`,{paneId:e})})})]})})}function P({paneId:e,value:t,onChange:n,defaultTemplate:r}){let{t:i}=m(`chat`),[a,o]=(0,_.useState)(!1),s=`memory-router-playground-${e}-prompt`,c=t.trim().length>0;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,w.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`text-label-medium-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[a?`▾`:`▸`,` `,i(`memoryRouterPlaygroundPage.systemPrompt`),` `,(0,w.jsxs)(`span`,{style:{color:`var(--content-tertiary)`},children:[`(`,i(c?`memoryRouterPlaygroundPage.promptModeCustom`:`memoryRouterPlaygroundPage.promptModeBundled`),`)`]})]}),a&&(0,w.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,w.jsx)(`button`,{type:`button`,onClick:()=>n(r),disabled:r.length===0,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r.length===0?`not-allowed`:`pointer`},children:i(`memoryRouterPlaygroundPage.loadDefault`)}),(0,w.jsx)(`button`,{type:`button`,onClick:()=>n(``),disabled:!c,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:c?`pointer`:`not-allowed`},children:i(`memoryRouterPlaygroundPage.reset`)})]})]}),a&&(0,w.jsx)(`textarea`,{id:s,value:t,onChange:e=>n(e.target.value),rows:12,placeholder:i(`memoryRouterPlaygroundPage.customPromptPlaceholder`),className:`rounded-md border px-3 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`,resize:`vertical`,minHeight:`120px`}})]})}function F({paneId:e,value:t,onChange:n,profiles:r,activeProfile:i}){let{t:a}=m(`chat`),o=`memory-router-playground-${e}-profile`,s=i!==null&&i.length>0?a(`memoryRouterPlaygroundPage.inheritActiveWithProfile`,{profile:i}):a(`memoryRouterPlaygroundPage.inheritActive`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`label`,{htmlFor:o,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:a(`memoryRouterPlaygroundPage.llmProfilesOverride`)}),(0,w.jsxs)(`select`,{id:o,value:t,onChange:e=>n(e.target.value),className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`},children:[(0,w.jsx)(`option`,{value:``,children:s}),r.map(e=>(0,w.jsx)(`option`,{value:e,children:e},e))]})]})}function I({paneId:e,label:t,value:n,onChange:r}){let{t:i}=m(`chat`),a=`memory-router-playground-${e}-${t}`;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`label`,{htmlFor:a,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:t}),(0,w.jsx)(`input`,{id:a,value:n,onChange:e=>r(e.target.value),placeholder:i(`memoryRouterPlaygroundPage.inheritPlaceholder`),className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`}})]})}function te({onClick:e,disabled:t,isRunning:n}){let{t:r}=m(`chat`);return(0,w.jsx)(`button`,{type:`button`,onClick:e,disabled:t,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:t?`var(--surface-overlay)`:`var(--primary-base)`,color:t?`var(--content-disabled)`:`var(--content-on-primary)`,border:`none`,cursor:t?`not-allowed`:`pointer`},children:r(n?`memoryRouterPlaygroundPage.running`:`memoryRouterPlaygroundPage.runBoth`)})}function ne({visible:e}){let{t}=m(`chat`);return e?(0,w.jsxs)(`div`,{className:`flex flex-wrap items-center gap-4 rounded-md px-4 py-2 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`},children:[(0,w.jsx)(L,{marker:`●`,markerColor:`var(--content-default)`,label:t(`memoryRouterPlaygroundPage.legendInBoth`)}),(0,w.jsx)(L,{marker:`◆`,markerColor:X(`A`),label:t(`memoryRouterPlaygroundPage.legendAOnly`)}),(0,w.jsx)(L,{marker:`◇`,markerColor:X(`B`),label:t(`memoryRouterPlaygroundPage.legendBOnly`)})]}):null}function L({marker:e,markerColor:t,label:n}){return(0,w.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,w.jsx)(`span`,{style:{color:t},children:e}),(0,w.jsx)(`span`,{children:n})]})}function R({paneId:e,userMessage:t,mutation:n,otherResult:r,validation:i}){let{t:a}=m(`chat`),o=n.data;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,w.jsx)(V,{paneId:e}),i!==null&&(0,w.jsx)(Q,{message:i}),n.isError&&(0,w.jsx)(Q,{message:n.error instanceof Error?n.error.message:a(`memoryRouterPlaygroundPage.failedToRunSimulation`)}),o!==void 0&&(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(H,{paneId:e,userMessage:t,result:o.response,otherResult:r}),(0,w.jsx)(z,{paneId:e,rawRequest:o.rawRequest,rawResponse:o.rawResponse})]})]})}function z({paneId:e,rawRequest:t,rawResponse:n}){let{t:i}=m(`chat`),[a,o]=(0,_.useState)(!1);return(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,w.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`text-label-medium-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[a?`▾`:`▸`,` `,i(`memoryRouterPlaygroundPage.rawApiExchange`)]}),a&&(0,w.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,w.jsx)(B,{label:i(`memoryRouterPlaygroundPage.requestLabel`,{paneId:e}),body:t}),(0,w.jsx)(B,{label:i(`memoryRouterPlaygroundPage.responseLabel`,{paneId:e}),body:n})]})]})})}function B({label:e,body:t}){let{t:n}=m(`chat`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:e}),(0,w.jsx)(`pre`,{className:`overflow-auto rounded-md border px-3 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`,maxHeight:`320px`,whiteSpace:`pre`},children:t.length===0?n(`memoryRouterPlaygroundPage.empty`):t})]})}function V({paneId:e}){let{t}=m(`chat`);return(0,w.jsx)(`div`,{className:`text-body-medium-default`,style:{color:X(e)},children:t(`memoryRouterPlaygroundPage.paneTitle`,{paneId:e})})}function H({paneId:e,userMessage:t,result:n,otherResult:r}){let{t:i}=m(`chat`),a=(0,_.useMemo)(()=>U(n,r),[n,r]),o=(0,_.useMemo)(()=>q(n),[n]);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,w.jsx)(G,{result:n,userMessage:t,otherResult:r,counts:(0,_.useMemo)(()=>W(a),[a])}),(0,w.jsx)(K,{result:n}),n.failureReason!==null&&(0,w.jsx)(Q,{message:i(`memoryRouterPlaygroundPage.routerFailure`,{reason:n.failureReason})}),o.length===0?(0,w.jsx)(ae,{}):o.map(t=>(0,w.jsx)(ie,{paneId:e,source:t.source,slugs:t.slugs,scores:n.scores,diff:a},t.source))]})}function U(e,t){let n=new Map;if(t===void 0){for(let t of e.selectedSlugs)n.set(t,`both`);return n}let r=new Set(t.selectedSlugs);for(let t of e.selectedSlugs)n.set(t,r.has(t)?`both`:`only-here`);return n}function W(e){let t=0,n=0;for(let r of e.values())r===`both`?t++:n++;return{total:e.size,shared:t,unique:n}}function G({result:e,userMessage:t,otherResult:n,counts:i}){let{t:a}=m(`chat`),o=[{label:a(`memoryRouterPlaygroundPage.summaryUserMessageLabel`),value:t},{label:a(`memoryRouterPlaygroundPage.totalCandidatePagesLabel`),value:e.totalCandidatePages.toLocaleString()},{label:a(`memoryRouterPlaygroundPage.selectedLabel`),value:a(`memoryRouterPlaygroundPage.selectedValue`,{count:e.selectedSlugs.length,maxPageIds:e.effectiveConfig.max_page_ids})}];return n!==void 0&&o.push({label:a(`memoryRouterPlaygroundPage.diffLabel`),value:a(`memoryRouterPlaygroundPage.diffValue`,{shared:i.shared,unique:i.unique})}),(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:a(`memoryRouterPlaygroundPage.summary`)}),(0,w.jsx)(Z,{rows:o})]})})}function K({result:e}){let{t}=m(`chat`),n=[`tier1_size`,`tier2_size`,`batch_size`,`max_page_ids`].map(n=>{let r=e.effectiveConfig[n],i=e.overrides[n];return{label:n,value:`${r===null?t(`memoryRouterPlaygroundPage.nullValue`):String(r)}${i===void 0?``:t(`memoryRouterPlaygroundPage.overrideSuffix`)}`}});return n.push({label:t(`memoryRouterPlaygroundPage.llmProfilesOverride`),value:e.profileOverride===null?t(`memoryRouterPlaygroundPage.inheritActive`):`${e.profileOverride}${t(`memoryRouterPlaygroundPage.overrideSuffix`)}`}),n.push({label:t(`memoryRouterPlaygroundPage.systemPromptConfigLabel`),value:e.routerPromptOverridden?t(`memoryRouterPlaygroundPage.promptModeCustom`):t(`memoryRouterPlaygroundPage.promptModeBundled`)}),(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:t(`memoryRouterPlaygroundPage.effectiveConfig`)}),(0,w.jsx)(Z,{rows:n})]})})}function q(e){let t=new Map;for(let n of e.selectedSlugs){let r=e.sourceBySlug[n];if(r===void 0)continue;let i=t.get(r)??[];i.push(n),t.set(r,i)}return[...t.keys()].sort((e,t)=>J(e)-J(t)).map(e=>({source:e,slugs:t.get(e)}))}function J(e){return e===`tier1`?0:e===`tier2`?1:e.startsWith(`tier3:`)?2+Number(e.slice(6)):2**53-1}function Y(e,t){return e===`tier1`?t(`memoryRouterPlaygroundPage.tier1Label`):e===`tier2`?t(`memoryRouterPlaygroundPage.tier2Label`):e.startsWith(`tier3:`)?t(`memoryRouterPlaygroundPage.tier3Label`,{batch:e.slice(6)}):e}function X(e){return e===`A`?`var(--system-mid-strong)`:`var(--primary-base)`}function re(e,t){return t===`both`?{color:`var(--content-default)`,marker:`●`}:{color:X(e),marker:e===`A`?`◆`:`◇`}}function ie({paneId:e,source:t,slugs:n,scores:i,diff:a}){let{t:o}=m(`chat`);return(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:Y(t,o)}),(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:o(`memoryRouterPlaygroundPage.pageCount`,{count:n.length})})]}),(0,w.jsx)(`ul`,{className:`flex flex-col gap-1`,children:n.map(n=>{let{color:r,marker:s}=re(e,a.get(n)??`only-here`);return(0,w.jsxs)(`li`,{className:`flex items-baseline justify-between gap-3`,children:[(0,w.jsxs)(`span`,{className:`flex items-baseline gap-2`,children:[(0,w.jsx)(`span`,{style:{color:r},children:s}),(0,w.jsx)(`code`,{className:`text-body-medium-default`,style:{color:r},children:n})]}),t===`tier2`&&(0,w.jsx)(`span`,{className:`tabular-nums text-label-medium-default`,style:{color:`var(--content-secondary)`},children:o(`memoryRouterPlaygroundPage.emaScore`,{score:(i[n]??0).toFixed(3)})})]},n)})})]})})}function ae(){let{t:e}=m(`chat`);return(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e(`memoryRouterPlaygroundPage.noPagesSelected`)}),(0,w.jsx)(`span`,{className:`text-body-small-lighter`,style:{color:`var(--content-secondary)`},children:e(`memoryRouterPlaygroundPage.emptySelectionHint`)})]})})}function Z({rows:e}){return(0,w.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map(({label:e,value:t})=>(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,w.jsx)(`span`,{className:`shrink-0 text-label-medium-default`,style:{color:`var(--content-secondary)`},children:e}),(0,w.jsx)(`span`,{className:`text-right text-body-medium-lighter`,style:{color:`var(--content-default)`},children:t})]},e))})}function Q({message:e}){return(0,w.jsx)(`div`,{className:`rounded-md px-4 py-3 text-body-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--system-negative-strong)`},children:e})}function $({children:e}){return(0,w.jsx)(`div`,{className:`flex h-full w-full items-center justify-center p-8 text-label-medium-default`,style:{color:`var(--content-tertiary)`},children:e})}export{T as MemoryRouterPlaygroundPage};
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ad as t,Pi as n,Vx as r,et as i,if as a,kg as o,kp as s,rf as c,u_ as l}from"./app-p4YU9h0P.js";import{I as u,Jn as d,N as f,Zn as p,j as m}from"./vendor-DYOeoIwg.js";import{t as h,x as g}from"./react-B9IgSVeK.js";var _=e(g(),1),v=class extends Error{status;constructor(e,t){super(t),this.name=`SimulateMemoryRouterError`,this.status=e}};async function y(e,t,n){let{data:r,response:i}=await l({path:{assistant_id:e},body:t,signal:n,throwOnError:!1}),a=i?await i.clone().text().catch(()=>``):``;if(!i||!i.ok)throw new v(i?.status??0,a||i?.statusText||`Failed to simulate memory router`);if(!r)throw new v(i.status,`Empty response from memory router simulator endpoint`);return{response:r,rawRequest:JSON.stringify(t,null,2),rawResponse:b(a)}}function b(e){if(e.length===0)return e;try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function x(e){return d({mutationFn:async t=>{if(!e)throw new v(0,`Missing assistantId`);return y(e,t)}})}function S(e){return p({...t({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4})}function C(e){return p({...a({path:{assistant_id:e}}),enabled:!!e,staleTime:1440*60*1e3})}function ee(e){return p({...c({path:{assistant_id:e}}),enabled:!!e,staleTime:1/0})}var w=h();function T(){let{t:e}=m(`chat`),t=n(),r=s(),i=o.use.memoryRouterPlayground();return r?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.loading`)}):!t||!i?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.notAvailable`)}):(0,w.jsx)(D,{})}var E={tier1:``,tier2:``,batch:``,profile:``,customPrompt:``};function D(){let{t:e}=m(`chat`),t=i(),n=x(t),r=x(t),a=S(t),o=C(t),s=ee(t),[c,l]=(0,_.useState)(``),[u,d]=(0,_.useState)([{assistantMessage:``,userMessage:``}]),[f,p]=(0,_.useState)(!1);(0,_.useEffect)(()=>{if(f)return;let e=s.data?.nowText;typeof e==`string`&&c===``&&l(e)},[s.data?.nowText,c,f]);let[h,g]=(0,_.useState)(E),[v,y]=(0,_.useState)(E),[b,T]=(0,_.useState)(null),[D,k]=(0,_.useState)(null),M=u[u.length-1].userMessage,P=t=>{let i=t===`A`?h:v,a=t===`A`?T:k,o=t===`A`?n:r;a(null);let s;try{s=O(i)}catch(t){a(t instanceof Error?t.message:e(`memoryRouterPlaygroundPage.invalidOverrideInput`));return}let l=i.profile.trim().length>0?i.profile:void 0,d=i.customPrompt.trim().length>0?i.customPrompt:void 0,f=u.map((e,t)=>t===u.length-1?{...e,userMessage:e.userMessage.trim()}:e);o.mutate({recentTurnPairs:f,nowText:c,...s?{configOverrides:s}:{},...l===void 0?{}:{profileOverride:l},...d===void 0?{}:{routerPromptOverride:d}})},F=()=>{P(`A`),P(`B`)},I=M.trim().length>0,L=I&&!n.isPending,z=I&&!r.isPending;return(0,w.jsx)(`div`,{className:`flex h-full min-h-0 flex-col overflow-y-auto`,children:(0,w.jsxs)(`div`,{className:`mx-auto flex w-full max-w-[1280px] flex-col gap-6 p-6`,children:[(0,w.jsx)(A,{}),(0,w.jsx)(j,{nowText:c,onNowTextChange:e=>{p(!0),l(e)},onReloadNowText:()=>{let e=s.data?.nowText;typeof e==`string`&&(l(e),p(!1))},nowTextLoading:s.isLoading,pairs:u,onPairsChange:d}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,w.jsx)(N,{paneId:`A`,overrides:h,onChange:g,onRun:()=>P(`A`),canRun:L,isRunning:n.isPending,profiles:a.data?.profiles??[],activeProfile:a.data?.activeProfile??null,defaultPromptTemplate:o.data?.template??``}),(0,w.jsx)(N,{paneId:`B`,overrides:v,onChange:y,onRun:()=>P(`B`),canRun:z,isRunning:r.isPending,profiles:a.data?.profiles??[],activeProfile:a.data?.activeProfile??null,defaultPromptTemplate:o.data?.template??``})]}),(0,w.jsx)(`div`,{className:`flex justify-end`,children:(0,w.jsx)(te,{onClick:F,disabled:!I||n.isPending||r.isPending,isRunning:n.isPending||r.isPending})}),(0,w.jsx)(ne,{visible:n.data!==void 0&&r.data!==void 0}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,w.jsx)(R,{paneId:`A`,userMessage:M,mutation:n,otherResult:r.data?.response,validation:b}),(0,w.jsx)(R,{paneId:`B`,userMessage:M,mutation:r,otherResult:n.data?.response,validation:D})]})]})})}function O(e){let t={...k(`tier1_size`,e.tier1),...k(`tier2_size`,e.tier2),...k(`batch_size`,e.batch)};return Object.keys(t).length===0?void 0:t}function k(e,t){let n=t.trim();if(n===``)return{};if(n===`null`)return{[e]:null};let r=Number(n);if(!Number.isInteger(r)||r<1)throw Error(u(`chat:memoryRouterPlaygroundPage.overrideMustBePositiveInteger`,{fieldName:e,value:n}));return{[e]:r}}function A(){let{t:e}=m(`chat`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`h1`,{className:`text-body-large-default`,style:{color:`var(--content-default)`},children:e(`memoryRouterPlaygroundPage.title`)}),(0,w.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:(0,w.jsx)(f,{ns:`chat`,i18nKey:`memoryRouterPlaygroundPage.description`,components:{code:(0,w.jsx)(`code`,{})}})})]})}function j({nowText:e,onNowTextChange:t,onReloadNowText:n,nowTextLoading:i,pairs:a,onPairsChange:o}){let{t:s}=m(`chat`),c=(e,t)=>{o(a.map((n,r)=>r===e?{...n,...t}:n))},l=()=>{o([{assistantMessage:``,userMessage:``},...a])},u=e=>{e!==a.length-1&&o(a.filter((t,n)=>n!==e))};return(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:s(`memoryRouterPlaygroundPage.conversationalContextTitle`)}),(0,w.jsx)(M,{id:`memory-router-playground-now`,label:s(`memoryRouterPlaygroundPage.nowBlockLabel`),value:e,onChange:t,rows:6,monospace:!0,placeholder:s(i?`memoryRouterPlaygroundPage.nowLoadingPlaceholder`:`memoryRouterPlaygroundPage.nowDefaultPlaceholder`),trailing:(0,w.jsx)(`button`,{type:`button`,onClick:n,disabled:i,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:i?`not-allowed`:`pointer`},children:s(`memoryRouterPlaygroundPage.reloadNowButton`)})}),(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:s(`memoryRouterPlaygroundPage.recentPairsLabel`)}),(0,w.jsx)(`button`,{type:`button`,onClick:l,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:`pointer`},children:s(`memoryRouterPlaygroundPage.addOlderPairButton`)})]}),a.map((e,t)=>{let n=t===a.length-1;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-md border p-3`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`},children:[(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsxs)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:[s(`memoryRouterPlaygroundPage.pairLabel`,{index:t+1,total:a.length}),n?s(`memoryRouterPlaygroundPage.pairMostRecentSuffix`):``]}),!n&&(0,w.jsx)(`button`,{type:`button`,onClick:()=>u(t),className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`transparent`,color:`var(--system-negative-strong)`,border:`none`,cursor:`pointer`},children:s(`memoryRouterPlaygroundPage.removeButton`)})]}),(0,w.jsx)(M,{id:`memory-router-playground-pair-${t}-assistant`,label:s(`memoryRouterPlaygroundPage.assistantReplyLabel`),value:e.assistantMessage,onChange:e=>c(t,{assistantMessage:e}),rows:3,placeholder:t===0&&a.length===1?s(`memoryRouterPlaygroundPage.firstTurnAssistantPlaceholder`):s(`memoryRouterPlaygroundPage.assistantReplyPlaceholder`)}),(0,w.jsx)(M,{id:`memory-router-playground-pair-${t}-user`,label:s(n?`memoryRouterPlaygroundPage.justArrivedUserLabel`:`memoryRouterPlaygroundPage.userMessageLabel`),value:e.userMessage,onChange:e=>c(t,{userMessage:e}),rows:3,placeholder:s(n?`memoryRouterPlaygroundPage.lastUserPlaceholder`:`memoryRouterPlaygroundPage.userMessagePlaceholder`),required:n})]},t)})]})})}function M({id:e,label:t,value:n,onChange:r,rows:i,placeholder:a,monospace:o,trailing:s,required:c}){return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,w.jsxs)(`label`,{htmlFor:e,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:[t,c?` *`:``]}),s]}),(0,w.jsx)(`textarea`,{id:e,value:n,onChange:e=>r(e.target.value),rows:i,placeholder:a,className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,resize:`vertical`,...o?{fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`}:{}}})]})}function N({paneId:e,overrides:t,onChange:n,onRun:i,canRun:a,isRunning:o,profiles:s,activeProfile:c,defaultPromptTemplate:l}){let{t:u}=m(`chat`);return(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,w.jsx)(`div`,{className:`text-body-medium-default`,style:{color:X(e)},children:u(`memoryRouterPlaygroundPage.configTitle`,{paneId:e})}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-3`,children:[(0,w.jsx)(I,{paneId:e,label:`tier1_size`,value:t.tier1,onChange:e=>n({...t,tier1:e})}),(0,w.jsx)(I,{paneId:e,label:`tier2_size`,value:t.tier2,onChange:e=>n({...t,tier2:e})}),(0,w.jsx)(I,{paneId:e,label:`batch_size`,value:t.batch,onChange:e=>n({...t,batch:e})})]}),(0,w.jsx)(F,{paneId:e,value:t.profile,onChange:e=>n({...t,profile:e}),profiles:s,activeProfile:c}),(0,w.jsx)(P,{paneId:e,value:t.customPrompt,onChange:e=>n({...t,customPrompt:e}),defaultTemplate:l}),(0,w.jsx)(`div`,{className:`flex justify-end`,children:(0,w.jsx)(`button`,{type:`button`,onClick:i,disabled:!a,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:a?`var(--system-positive-strong)`:`var(--surface-overlay)`,color:a?`var(--content-on-positive)`:`var(--content-disabled)`,border:`none`,cursor:a?`pointer`:`not-allowed`},children:o?u(`memoryRouterPlaygroundPage.running`):u(`memoryRouterPlaygroundPage.runPane`,{paneId:e})})})]})})}function P({paneId:e,value:t,onChange:n,defaultTemplate:r}){let{t:i}=m(`chat`),[a,o]=(0,_.useState)(!1),s=`memory-router-playground-${e}-prompt`,c=t.trim().length>0;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,w.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`text-label-medium-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[a?`▾`:`▸`,` `,i(`memoryRouterPlaygroundPage.systemPrompt`),` `,(0,w.jsxs)(`span`,{style:{color:`var(--content-tertiary)`},children:[`(`,i(c?`memoryRouterPlaygroundPage.promptModeCustom`:`memoryRouterPlaygroundPage.promptModeBundled`),`)`]})]}),a&&(0,w.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,w.jsx)(`button`,{type:`button`,onClick:()=>n(r),disabled:r.length===0,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r.length===0?`not-allowed`:`pointer`},children:i(`memoryRouterPlaygroundPage.loadDefault`)}),(0,w.jsx)(`button`,{type:`button`,onClick:()=>n(``),disabled:!c,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:c?`pointer`:`not-allowed`},children:i(`memoryRouterPlaygroundPage.reset`)})]})]}),a&&(0,w.jsx)(`textarea`,{id:s,value:t,onChange:e=>n(e.target.value),rows:12,placeholder:i(`memoryRouterPlaygroundPage.customPromptPlaceholder`),className:`rounded-md border px-3 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`,resize:`vertical`,minHeight:`120px`}})]})}function F({paneId:e,value:t,onChange:n,profiles:r,activeProfile:i}){let{t:a}=m(`chat`),o=`memory-router-playground-${e}-profile`,s=i!==null&&i.length>0?a(`memoryRouterPlaygroundPage.inheritActiveWithProfile`,{profile:i}):a(`memoryRouterPlaygroundPage.inheritActive`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`label`,{htmlFor:o,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:a(`memoryRouterPlaygroundPage.llmProfilesOverride`)}),(0,w.jsxs)(`select`,{id:o,value:t,onChange:e=>n(e.target.value),className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`},children:[(0,w.jsx)(`option`,{value:``,children:s}),r.map(e=>(0,w.jsx)(`option`,{value:e,children:e},e))]})]})}function I({paneId:e,label:t,value:n,onChange:r}){let{t:i}=m(`chat`),a=`memory-router-playground-${e}-${t}`;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`label`,{htmlFor:a,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:t}),(0,w.jsx)(`input`,{id:a,value:n,onChange:e=>r(e.target.value),placeholder:i(`memoryRouterPlaygroundPage.inheritPlaceholder`),className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`}})]})}function te({onClick:e,disabled:t,isRunning:n}){let{t:r}=m(`chat`);return(0,w.jsx)(`button`,{type:`button`,onClick:e,disabled:t,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:t?`var(--surface-overlay)`:`var(--primary-base)`,color:t?`var(--content-disabled)`:`var(--content-on-primary)`,border:`none`,cursor:t?`not-allowed`:`pointer`},children:r(n?`memoryRouterPlaygroundPage.running`:`memoryRouterPlaygroundPage.runBoth`)})}function ne({visible:e}){let{t}=m(`chat`);return e?(0,w.jsxs)(`div`,{className:`flex flex-wrap items-center gap-4 rounded-md px-4 py-2 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`},children:[(0,w.jsx)(L,{marker:`●`,markerColor:`var(--content-default)`,label:t(`memoryRouterPlaygroundPage.legendInBoth`)}),(0,w.jsx)(L,{marker:`◆`,markerColor:X(`A`),label:t(`memoryRouterPlaygroundPage.legendAOnly`)}),(0,w.jsx)(L,{marker:`◇`,markerColor:X(`B`),label:t(`memoryRouterPlaygroundPage.legendBOnly`)})]}):null}function L({marker:e,markerColor:t,label:n}){return(0,w.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,w.jsx)(`span`,{style:{color:t},children:e}),(0,w.jsx)(`span`,{children:n})]})}function R({paneId:e,userMessage:t,mutation:n,otherResult:r,validation:i}){let{t:a}=m(`chat`),o=n.data;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,w.jsx)(V,{paneId:e}),i!==null&&(0,w.jsx)(Q,{message:i}),n.isError&&(0,w.jsx)(Q,{message:n.error instanceof Error?n.error.message:a(`memoryRouterPlaygroundPage.failedToRunSimulation`)}),o!==void 0&&(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(H,{paneId:e,userMessage:t,result:o.response,otherResult:r}),(0,w.jsx)(z,{paneId:e,rawRequest:o.rawRequest,rawResponse:o.rawResponse})]})]})}function z({paneId:e,rawRequest:t,rawResponse:n}){let{t:i}=m(`chat`),[a,o]=(0,_.useState)(!1);return(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,w.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`text-label-medium-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[a?`▾`:`▸`,` `,i(`memoryRouterPlaygroundPage.rawApiExchange`)]}),a&&(0,w.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,w.jsx)(B,{label:i(`memoryRouterPlaygroundPage.requestLabel`,{paneId:e}),body:t}),(0,w.jsx)(B,{label:i(`memoryRouterPlaygroundPage.responseLabel`,{paneId:e}),body:n})]})]})})}function B({label:e,body:t}){let{t:n}=m(`chat`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:e}),(0,w.jsx)(`pre`,{className:`overflow-auto rounded-md border px-3 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`,maxHeight:`320px`,whiteSpace:`pre`},children:t.length===0?n(`memoryRouterPlaygroundPage.empty`):t})]})}function V({paneId:e}){let{t}=m(`chat`);return(0,w.jsx)(`div`,{className:`text-body-medium-default`,style:{color:X(e)},children:t(`memoryRouterPlaygroundPage.paneTitle`,{paneId:e})})}function H({paneId:e,userMessage:t,result:n,otherResult:r}){let{t:i}=m(`chat`),a=(0,_.useMemo)(()=>U(n,r),[n,r]),o=(0,_.useMemo)(()=>q(n),[n]);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,w.jsx)(G,{result:n,userMessage:t,otherResult:r,counts:(0,_.useMemo)(()=>W(a),[a])}),(0,w.jsx)(K,{result:n}),n.failureReason!==null&&(0,w.jsx)(Q,{message:i(`memoryRouterPlaygroundPage.routerFailure`,{reason:n.failureReason})}),o.length===0?(0,w.jsx)(ae,{}):o.map(t=>(0,w.jsx)(ie,{paneId:e,source:t.source,slugs:t.slugs,scores:n.scores,diff:a},t.source))]})}function U(e,t){let n=new Map;if(t===void 0){for(let t of e.selectedSlugs)n.set(t,`both`);return n}let r=new Set(t.selectedSlugs);for(let t of e.selectedSlugs)n.set(t,r.has(t)?`both`:`only-here`);return n}function W(e){let t=0,n=0;for(let r of e.values())r===`both`?t++:n++;return{total:e.size,shared:t,unique:n}}function G({result:e,userMessage:t,otherResult:n,counts:i}){let{t:a}=m(`chat`),o=[{label:a(`memoryRouterPlaygroundPage.summaryUserMessageLabel`),value:t},{label:a(`memoryRouterPlaygroundPage.totalCandidatePagesLabel`),value:e.totalCandidatePages.toLocaleString()},{label:a(`memoryRouterPlaygroundPage.selectedLabel`),value:a(`memoryRouterPlaygroundPage.selectedValue`,{count:e.selectedSlugs.length,maxPageIds:e.effectiveConfig.max_page_ids})}];return n!==void 0&&o.push({label:a(`memoryRouterPlaygroundPage.diffLabel`),value:a(`memoryRouterPlaygroundPage.diffValue`,{shared:i.shared,unique:i.unique})}),(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:a(`memoryRouterPlaygroundPage.summary`)}),(0,w.jsx)(Z,{rows:o})]})})}function K({result:e}){let{t}=m(`chat`),n=[`tier1_size`,`tier2_size`,`batch_size`,`max_page_ids`].map(n=>{let r=e.effectiveConfig[n],i=e.overrides[n];return{label:n,value:`${r===null?t(`memoryRouterPlaygroundPage.nullValue`):String(r)}${i===void 0?``:t(`memoryRouterPlaygroundPage.overrideSuffix`)}`}});return n.push({label:t(`memoryRouterPlaygroundPage.llmProfilesOverride`),value:e.profileOverride===null?t(`memoryRouterPlaygroundPage.inheritActive`):`${e.profileOverride}${t(`memoryRouterPlaygroundPage.overrideSuffix`)}`}),n.push({label:t(`memoryRouterPlaygroundPage.systemPromptConfigLabel`),value:e.routerPromptOverridden?t(`memoryRouterPlaygroundPage.promptModeCustom`):t(`memoryRouterPlaygroundPage.promptModeBundled`)}),(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:t(`memoryRouterPlaygroundPage.effectiveConfig`)}),(0,w.jsx)(Z,{rows:n})]})})}function q(e){let t=new Map;for(let n of e.selectedSlugs){let r=e.sourceBySlug[n];if(r===void 0)continue;let i=t.get(r)??[];i.push(n),t.set(r,i)}return[...t.keys()].sort((e,t)=>J(e)-J(t)).map(e=>({source:e,slugs:t.get(e)}))}function J(e){return e===`tier1`?0:e===`tier2`?1:e.startsWith(`tier3:`)?2+Number(e.slice(6)):2**53-1}function Y(e,t){return e===`tier1`?t(`memoryRouterPlaygroundPage.tier1Label`):e===`tier2`?t(`memoryRouterPlaygroundPage.tier2Label`):e.startsWith(`tier3:`)?t(`memoryRouterPlaygroundPage.tier3Label`,{batch:e.slice(6)}):e}function X(e){return e===`A`?`var(--system-mid-strong)`:`var(--primary-base)`}function re(e,t){return t===`both`?{color:`var(--content-default)`,marker:`●`}:{color:X(e),marker:e===`A`?`◆`:`◇`}}function ie({paneId:e,source:t,slugs:n,scores:i,diff:a}){let{t:o}=m(`chat`);return(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:Y(t,o)}),(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:o(`memoryRouterPlaygroundPage.pageCount`,{count:n.length})})]}),(0,w.jsx)(`ul`,{className:`flex flex-col gap-1`,children:n.map(n=>{let{color:r,marker:s}=re(e,a.get(n)??`only-here`);return(0,w.jsxs)(`li`,{className:`flex items-baseline justify-between gap-3`,children:[(0,w.jsxs)(`span`,{className:`flex items-baseline gap-2`,children:[(0,w.jsx)(`span`,{style:{color:r},children:s}),(0,w.jsx)(`code`,{className:`text-body-medium-default`,style:{color:r},children:n})]}),t===`tier2`&&(0,w.jsx)(`span`,{className:`tabular-nums text-label-medium-default`,style:{color:`var(--content-secondary)`},children:o(`memoryRouterPlaygroundPage.emaScore`,{score:(i[n]??0).toFixed(3)})})]},n)})})]})})}function ae(){let{t:e}=m(`chat`);return(0,w.jsx)(r,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e(`memoryRouterPlaygroundPage.noPagesSelected`)}),(0,w.jsx)(`span`,{className:`text-body-small-lighter`,style:{color:`var(--content-secondary)`},children:e(`memoryRouterPlaygroundPage.emptySelectionHint`)})]})})}function Z({rows:e}){return(0,w.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map(({label:e,value:t})=>(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,w.jsx)(`span`,{className:`shrink-0 text-label-medium-default`,style:{color:`var(--content-secondary)`},children:e}),(0,w.jsx)(`span`,{className:`text-right text-body-medium-lighter`,style:{color:`var(--content-default)`},children:t})]},e))})}function Q({message:e}){return(0,w.jsx)(`div`,{className:`rounded-md px-4 py-3 text-body-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--system-negative-strong)`},children:e})}function $({children:e}){return(0,w.jsx)(`div`,{className:`flex h-full w-full items-center justify-center p-8 text-label-medium-default`,style:{color:`var(--content-tertiary)`},children:e})}export{T as MemoryRouterPlaygroundPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{It as e,Jn as t,Xn as n,Zn as r}from"./app-
|
|
1
|
+
import{It as e,Jn as t,Xn as n,Zn as r}from"./app-p4YU9h0P.js";import{j as i}from"./vendor-DYOeoIwg.js";import{t as a}from"./react-B9IgSVeK.js";import{rn as o}from"./icons-QG1KAFmx.js";import{t as s}from"./use-transcript-message-by-id-diLlPoiw.js";var c=[];function l(e){let t=s(e);return t?t.attachments??c:null}var u=a();function d({payload:a,onClose:s}){let{t:c}=i(`chat`),{displayAttachments:d,renderSquare:f,previewModal:p}=e({attachments:l(a.messageId)??a.attachments,assistantId:a.assistantId});return(0,u.jsxs)(t,{Glyph:o,titleNode:(0,u.jsx)(r,{title:c(`messageFilesPanel.title`),count:d.length}),closeLabel:c(`messageFilesPanel.closeAria`),onClose:s,children:[d.length===0?(0,u.jsx)(n,{children:c(`messageFilesPanel.empty`)}):(0,u.jsx)(`div`,{className:`flex flex-wrap items-start gap-3`,children:d.map((e,t)=>f(e,t))}),p]})}export{d as MessageFilesPanel};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Hx as t,Kx as n}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Hx as t,Kx as n}from"./app-p4YU9h0P.js";import{f as r}from"./vendor-DYOeoIwg.js";import{t as i,x as a}from"./react-B9IgSVeK.js";import{Ja as o}from"./icons-QG1KAFmx.js";var s=o(`arrow-up-from-line`,[[`path`,{d:`m18 9-6-6-6 6`,key:`kcunyi`}],[`path`,{d:`M12 3v14`,key:`7cf3v8`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),c=e(a(),1),l=i();function u(e){if(e>=1e6){let t=e/1e6;return`${t%1==0?t.toFixed(0):t.toFixed(1)}M`}if(e>=1e3){let t=e/1e3;return`${t%1==0?t.toFixed(0):t.toFixed(1)}K`}return e.toLocaleString()}function d(e){let t=r(),[n,i]=(0,c.useState)(e),a=(0,c.useRef)(e),o=(0,c.useRef)(e),s=(0,c.useRef)(0);return(0,c.useEffect)(()=>{if(o.current=e,t){cancelAnimationFrame(s.current),s.current=0,a.current=e,i(e);return}if(a.current===e||s.current)return;let n=performance.now(),r=a.current,c=e=>{let t=o.current,l=Math.min((e-n)/300,1),u=1-(1-l)**3;a.current=l>=1?t:r+(t-r)*u,i(a.current),l<1?s.current=requestAnimationFrame(c):s.current=0};s.current=requestAnimationFrame(c)},[e,t]),(0,c.useEffect)(()=>()=>cancelAnimationFrame(s.current),[]),n}function f({icon:e,value:r,label:i,valueTitle:a}){return(0,l.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] px-3 py-3`,children:[(0,l.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:e}),(0,l.jsxs)(`div`,{className:`min-w-0`,children:[(0,l.jsx)(t,{variant:`title-small`,title:a||void 0,className:n(`block text-[var(--content-default)]`,a&&`-mb-1 truncate pb-1`),children:r}),(0,l.jsx)(t,{variant:`body-small-default`,className:`block text-[var(--content-secondary)]`,children:i})]})]})}function p({icon:e,label:t,target:n,format:r}){return(0,l.jsx)(f,{icon:e,label:t,value:r(d(n))})}export{s as i,f as n,u as r,p as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{st as e}from"./app-p4YU9h0P.js";export{e as filesFromNativePaths};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{kr as e}from"./app-p4YU9h0P.js";export{e as saveFile};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Gm as t,Ix as n,Pb as r,Qm as i,Tb as a,Tu as o,Ux as s,Vx as c,ns as l,rs as u}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Gm as t,Ix as n,Pb as r,Qm as i,Tb as a,Tu as o,Ux as s,Vx as c,ns as l,rs as u}from"./app-p4YU9h0P.js";import{E as d,j as f,k as p}from"./vendor-DYOeoIwg.js";import{r as m,t as h,x as g}from"./react-B9IgSVeK.js";import{Xr as _,wa as v}from"./icons-QG1KAFmx.js";var y=e(g(),1),b=p(`AndroidNotificationSettings`);function x(){return t()&&d.isPluginAvailable(`AndroidNotificationSettings`)}async function S(){if(x())try{await b.open()}catch(e){r(e,{context:`android_notification_settings_open`,level:`warning`})}}var C=h();function w(){let{t:e}=f(`settings`),t=x(),[r,i]=(0,y.useState)(null);(0,y.useEffect)(()=>{l().then(i)},[]),o(`app.resume`,({signal:e})=>{e!==`online`&&u().then(i)});let a;switch(r){case`granted`:a={description:e(`androidNotificationSettingsCard.grantedDescription`),label:e(`androidNotificationSettingsCard.grantedLabel`),tone:`positive`};break;case`denied`:a={description:e(`androidNotificationSettingsCard.deniedDescription`),label:e(`androidNotificationSettingsCard.deniedLabel`),tone:`negative`};break;case`prompt`:a={description:e(`androidNotificationSettingsCard.promptDescription`),label:e(`androidNotificationSettingsCard.promptLabel`),tone:`warning`};break;case`unsupported`:a={description:e(`androidNotificationSettingsCard.unsupportedDescription`),label:e(`androidNotificationSettingsCard.unsupportedLabel`),tone:`neutral`};break;default:a={description:e(`androidNotificationSettingsCard.checkingDescription`),label:e(`androidNotificationSettingsCard.checkingLabel`),tone:`neutral`};break}return(0,C.jsx)(c,{padding:`lg`,children:(0,C.jsxs)(`div`,{className:`flex flex-col gap-5 sm:flex-row sm:items-center sm:justify-between`,children:[(0,C.jsxs)(`div`,{className:`flex min-w-0 items-start gap-4`,children:[(0,C.jsx)(`span`,{className:`flex size-11 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-base)] text-[var(--content-secondary)]`,children:(0,C.jsx)(v,{className:`size-5`,"aria-hidden":!0})}),(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,C.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`androidNotificationSettingsCard.title`)}),(0,C.jsx)(n,{tone:a.tone,children:a.label})]}),(0,C.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:a.description})]})]}),t&&(0,C.jsx)(s,{variant:`outlined`,onClick:()=>void S(),disabled:r===null,rightIcon:(0,C.jsx)(_,{"aria-hidden":!0}),className:`self-start sm:self-auto`,children:e(`androidNotificationSettingsCard.openSettings`)})]})})}function T(){let{t:e}=f(`settings`);return i()?(0,C.jsxs)(`div`,{className:`mx-auto w-full max-w-2xl space-y-6`,children:[(0,C.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,C.jsx)(`span`,{className:`flex size-10 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-lift)] text-[var(--content-secondary)]`,children:(0,C.jsx)(v,{className:`size-5`,"aria-hidden":!0})}),(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsx)(`h1`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:e(`notificationsPage.title`)}),(0,C.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:e(`notificationsPage.description`)})]})]}),(0,C.jsx)(w,{})]}):(0,C.jsx)(m,{replace:!0,to:a.settings.general})}export{T as NotificationsPage};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Vr as t}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Vr as t}from"./app-p4YU9h0P.js";import{j as n}from"./vendor-DYOeoIwg.js";import{_ as r,t as i,x as a}from"./react-B9IgSVeK.js";var o=e(a(),1),s=i();function c(){return(0,s.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,s.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-positive-bg)`}),(0,s.jsx)(`path`,{className:`oauth-check`,d:`M17 28.5L24.5 36L39 21`,stroke:`var(--oauth-positive-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,strokeLinejoin:`round`,fill:`none`})]})}function l(){return(0,s.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,s.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-negative-bg)`}),(0,s.jsx)(`path`,{className:`oauth-cross oauth-cross-1`,d:`M20 20L36 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`}),(0,s.jsx)(`path`,{className:`oauth-cross oauth-cross-2`,d:`M36 20L20 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`})]})}var u=`
|
|
2
2
|
:root {
|
|
3
3
|
--oauth-surface: #F5F3EB;
|
|
4
4
|
--oauth-surface-card: #FFFFFF;
|
package/dist/assets/{oauth-popup-complete-page-DzPqlG80.js → oauth-popup-complete-page-DbkS3Ktn.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Vr as t,cv as n,lv as r}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Vr as t,cv as n,lv as r}from"./app-p4YU9h0P.js";import{j as i}from"./vendor-DYOeoIwg.js";import{_ as a,t as o,x as s}from"./react-B9IgSVeK.js";var c=e(s(),1),l=o();function u(){return(0,l.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,l.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-positive-bg)`}),(0,l.jsx)(`path`,{className:`oauth-check`,d:`M17 28.5L24.5 36L39 21`,stroke:`var(--oauth-positive-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,strokeLinejoin:`round`,fill:`none`})]})}function d(){return(0,l.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,l.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-negative-bg)`}),(0,l.jsx)(`path`,{className:`oauth-cross oauth-cross-1`,d:`M20 20L36 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`}),(0,l.jsx)(`path`,{className:`oauth-cross oauth-cross-2`,d:`M36 20L20 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`})]})}var f=`
|
|
2
2
|
:root {
|
|
3
3
|
--oauth-surface: #F5F3EB;
|
|
4
4
|
--oauth-surface-card: #FFFFFF;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Lm as e}from"./app-p4YU9h0P.js";export{e as resolvePairedAssistantPlatformId};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$_ as t,Av as n,Cy as r,Hm as i,Ih as a,Mh as o,Nh as s,Ny as c,Ph as l,Qb as u,Sy as d,Tb as f,Um as p,Ux as m,i as h,jh as g}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$_ as t,Av as n,Cy as r,Hm as i,Ih as a,Mh as o,Nh as s,Ny as c,Ph as l,Qb as u,Sy as d,Tb as f,Um as p,Ux as m,i as h,jh as g}from"./app-p4YU9h0P.js";import{j as _}from"./vendor-DYOeoIwg.js";import{d as v,f as y,t as b,x}from"./react-B9IgSVeK.js";import{Hi as S,Ri as C,nt as w,qn as T}from"./icons-QG1KAFmx.js";import{r as E}from"./self-hosted-servers-BmfZpV_S.js";var D=e(x(),1),O=b();function k(e){switch(e.kind){case`starting`:return{title:`Starting pairing`,body:`Creating a code for this browser.`};case`handoff_choice`:return{title:`Open in the Vellum app`,body:`Scanning from a phone with the Vellum app installed? Hand this pairing to the app.`};case`verifying`:return{title:`Pairing`,body:`Connecting this device to your assistant.`};case`approved`:return{title:`Connected`,body:`Opening your assistant.`};case`expired`:return{title:`Pairing expired`,body:`This pairing code is invalid or expired. Run vellum pair on the machine running your assistant to get a new one.`};case`error`:return{title:`Pairing failed`,body:e.message};case`polling`:return{title:`Waiting for approval`,body:`Confirm this code on the machine running your assistant.`}}}function A({state:e}){return e.kind===`approved`?(0,O.jsx)(C,{className:`h-5 w-5 text-[var(--system-positive-strong)]`,"aria-hidden":!0}):e.kind===`handoff_choice`?(0,O.jsx)(w,{className:`h-5 w-5 text-[var(--system-info-strong)]`,"aria-hidden":!0}):e.kind===`starting`||e.kind===`verifying`||e.kind===`polling`?(0,O.jsx)(T,{className:`h-5 w-5 animate-spin text-[var(--system-info-strong)]`,"aria-hidden":!0}):(0,O.jsx)(S,{className:`h-5 w-5 text-[var(--system-negative-strong)]`,"aria-hidden":!0})}function j(){try{let e=new URL(window.location.href);for(let t of[`deviceCode`,`device_code`,`userCode`,`user_code`])e.searchParams.delete(t);e.hash=``,window.history.replaceState(null,``,`${e.pathname}${e.search}`)}catch{}}var M=`vellum-assistant`,N=`ai.vellum.assistant`;function P(e,t){let n=new URLSearchParams({url:a(),code:e}),r=d();r&&n.set(`name`,r);let i=n.toString().replace(/\+/g,`%20`);return t===`ios`?`${M}://connect?${i}`:`intent://connect?${i}#Intent;scheme=${M};package=${N};S.browser_fallback_url=${encodeURIComponent(window.location.href)};end`}function F(){let e=r();if(!e)return null;try{return`${new URL(e).origin}${f.selectAssistant}?noAutoSkip=1`}catch{return null}}function I({deviceCode:e,platform:t,onContinueInBrowser:n}){let{t:r}=_(`remote-web`);return(0,O.jsxs)(`div`,{className:`mt-6 flex flex-col gap-3`,children:[(0,O.jsx)(m,{variant:`primary`,fullWidth:!0,asChild:!0,children:(0,O.jsx)(`a`,{href:(0,D.useMemo)(()=>P(e,t),[e,t]),children:r(`pairingPage.openInApp`)})}),(0,O.jsx)(m,{variant:`outlined`,fullWidth:!0,onClick:n,children:r(`pairingPage.continueInBrowser`)})]})}function L(){let{t:e}=_(`remote-web`),r=v(),a=y(),d=c(),b=(0,D.useMemo)(()=>n(new URLSearchParams(r.search).get(`returnTo`),f.assistant),[r.search]),x=(0,D.useMemo)(()=>u(`${r.pathname}${r.search}${r.hash}`),[r.pathname,r.search,r.hash]),S=(0,D.useMemo)(()=>!x.deviceCode||t()?null:i()?`android`:p()?`ios`:null,[x.deviceCode]),[C,w]=(0,D.useState)(()=>x.deviceCode?{deviceCode:x.deviceCode,userCode:x.userCode}:null),[T,M]=(0,D.useState)(()=>!S),[N,P]=(0,D.useState)(()=>S?{kind:`handoff_choice`}:x.deviceCode?{kind:`verifying`}:{kind:`starting`});(0,D.useEffect)(()=>{if(!d||C)return;let e=new AbortController;return(async()=>{try{let t=await s(e.signal);w({deviceCode:t.deviceCode,userCode:t.userCode}),P({kind:`polling`,expiresAt:t.expiresAt})}catch{if(e.signal.aborted)return;P({kind:`error`,message:`The assistant could not start pairing. Refresh the page to try again.`})}})(),()=>{e.abort()}},[d,C]),(0,D.useEffect)(()=>{if(!d||!C?.deviceCode||!T)return;let e=new AbortController,t=null,n=async()=>{try{let r=await l(C.deviceCode,e.signal);if(r.status===`pending`){P({kind:`polling`,expiresAt:r.expiresAt||null}),t=setTimeout(()=>void n(),Math.max(1,r.intervalSeconds)*1e3);return}o(r),j(),P({kind:`approved`}),t=setTimeout(()=>a(b,{replace:!0}),250)}catch(t){if(e.signal.aborted)return;if(t instanceof g&&t.status===401){P({kind:`expired`});return}if(t instanceof g&&t.code===`GUARDIAN_REPAIR_REQUIRED`){P({kind:`error`,message:`The assistant's trust database needs repair. Run guardian repair on the machine hosting the assistant, then retry this same pairing link — the code stays valid.`});return}P({kind:`error`,message:`The assistant could not complete pairing. Try starting a new pairing.`})}};return n(),()=>{e.abort(),t&&clearTimeout(t)}},[d,C?.deviceCode,T,a,b]);let L=(0,D.useCallback)(()=>{M(!0),P({kind:`verifying`})},[]),R=(0,D.useMemo)(()=>F(),[]),z=(0,D.useCallback)(()=>{E(null,`select-assistant?noAutoSkip=1`).then(e=>{!e&&R&&window.location.assign(R)})},[R]);if(!d)return(0,O.jsx)(h,{});let B=k(N);return(0,O.jsx)(`main`,{className:`flex min-h-svh items-center justify-center bg-[var(--surface-base)] px-6 py-10 text-[var(--content-default)]`,children:(0,O.jsxs)(`section`,{className:`w-full max-w-md rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-lift)] p-8 shadow-[var(--shadow-sm)]`,children:[(0,O.jsxs)(`div`,{className:`mb-5 flex items-center gap-3`,children:[(0,O.jsx)(A,{state:N}),(0,O.jsx)(`h1`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:B.title})]}),N.kind===`polling`&&C?.userCode?(0,O.jsxs)(`div`,{className:`mb-5 rounded-md border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-4 text-center`,children:[(0,O.jsx)(`div`,{className:`text-label-small-default uppercase tracking-wide text-[var(--content-tertiary)]`,children:e(`pairingPage.pairingCode`)}),(0,O.jsx)(`div`,{className:`mt-2 font-mono text-3xl font-semibold tracking-[0.18em] text-[var(--content-emphasised)]`,children:C.userCode})]}):null,(0,O.jsx)(`p`,{className:`text-body-medium-lighter leading-6 text-[var(--content-secondary)]`,children:B.body}),N.kind===`handoff_choice`&&C&&S?(0,O.jsx)(I,{deviceCode:C.deviceCode,platform:S,onContinueInBrowser:L}):null,N.kind===`polling`&&N.expiresAt?(0,O.jsx)(`p`,{className:`text-body-small-lighter mt-4 text-[var(--content-tertiary)]`,children:e(`pairingPage.expiresAt`,{time:new Date(N.expiresAt).toLocaleTimeString()})}):null,N.kind===`polling`&&R?(0,O.jsx)(m,{variant:`outlined`,fullWidth:!0,className:`mt-6`,onClick:z,children:e(`pairingPage.cancel`)}):null]})})}export{L as RemoteWebPairingPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{Tb as e}from"./app-p4YU9h0P.js";import{r as t,t as n}from"./react-B9IgSVeK.js";var r=n();function i(){return(0,r.jsx)(t,{to:e.account.login,replace:!0})}export{i as PasswordResetPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{En as e,cr as t,or as n}from"./app-
|
|
1
|
+
import{En as e,cr as t,or as n}from"./app-p4YU9h0P.js";import{t as r}from"./react-B9IgSVeK.js";import{t as i}from"./preview-error-BWXX5254.js";var a=r();function o({blob:r,filename:o}){let s=n(r,`application/pdf`);return s===null?(0,a.jsx)(t,{}):(0,a.jsx)(`span`,{className:`block w-full [&_[data-slot=skeleton]]:w-full! [&_canvas]:w-full!`,children:(0,a.jsx)(e,{url:s,errorFallback:(0,a.jsx)(i,{filename:o})})})}export{o as PdfFilePreview};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ci as t,Cx as n,Ei as r,Kx as i,No as a,Tb as o,Ti as s,Vo as c,dm as l,et as u}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ci as t,Cx as n,Ei as r,Kx as i,No as a,Tb as o,Ti as s,Vo as c,dm as l,et as u}from"./app-p4YU9h0P.js";import{I as d,Zn as f,dn as p,er as m,fn as h,j as g,ln as _}from"./vendor-DYOeoIwg.js";import{f as v,t as y,x as b}from"./react-B9IgSVeK.js";import{Q as x,Ra as S}from"./icons-QG1KAFmx.js";import{i as C,n as w,r as T,t as E}from"./personality-sliders-r9DH0oqr.js";import{n as D,t as O}from"./peeking-eyes-DJkKQl-G.js";import{a as k,i as A,n as j,r as M,t as N}from"./use-assistant-identity-details-Bj-VqGPz.js";import{r as P}from"./latest-assistant-text-CRS_nZkk.js";var F=e(b(),1),I=y();function L({components:e,traits:n,stage:r,entrance:i=!1,entranceDelay:a=0}){let o=(0,F.useMemo)(()=>{let r=e.eyeStyles.find(e=>e.id===n.eyeStyle);return r?{paths:r.paths,bbox:s(r.paths.map(e=>t(e.svgPath)))}:null},[e,n.eyeStyle]);return o?(0,I.jsx)(D,{art:o,stage:r,entrance:i,entranceDelay:a}):null}var R=`#17191C`,z=24,B=.2,V=96,H=160,U=(0,F.createContext)(null);function W(){let e=(0,F.useContext)(U);if(!e)throw Error(`useAssistantStage must be used inside <AssistantStage>`);return e}function G({components:e,traits:t,customImageUrl:n,accentHex:o,entrance:s=!1,children:l,className:u}){let{ref:d,size:f}=r(),p=o??R,m=c(p),h=a.use.setSurface();(0,F.useLayoutEffect)(()=>(h(p),()=>{h(null)}),[p,h]);let g=!!(e&&t),_=!g&&!!n,v=Math.round(Math.min(H,Math.max(V,Math.min(f.w,f.h)*B))),y=f.h-v-z,b=g?Math.round(O*Math.min(f.w,f.h))+16:_?v+z+16:24;return(0,I.jsxs)(`div`,{ref:d,className:i(`relative flex min-h-0 flex-1 flex-col overflow-hidden rounded-lg border border-[var(--border-base)]`,`native-mobile:rounded-none native-mobile:border-0`,u),style:{backgroundColor:p,color:m.fg},children:[g&&e&&t&&(0,I.jsx)(L,{components:e,traits:t,stage:f,entrance:s}),_&&n&&(0,I.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute z-[2] overflow-hidden rounded-full ring-4 ring-white/25`,style:{left:(f.w-v)/2,top:y,width:v,height:v},children:(0,I.jsx)(`img`,{src:n,alt:``,className:`h-full w-full object-cover`,draggable:!1})}),(0,I.jsx)(U.Provider,{value:{stage:f,tone:m,bottomReserve:b},children:(0,I.jsx)(`div`,{className:`relative z-10 flex min-h-0 flex-1 flex-col`,children:l})})]})}var K=`rgba(36, 41, 46, 0.25)`,q=`#FDFDFC`;function J({axis:e,value:t,onValueChange:n,tone:r,disabled:i}){let{t:a}=g(`intelligence`),o=a(e.leftKey),s=a(e.rightKey);return(0,I.jsxs)(`div`,{className:`flex w-full shrink-0 flex-wrap items-center gap-x-5 gap-y-1.5 sm:flex-nowrap`,style:{opacity:i?.7:1},children:[(0,I.jsx)(`span`,{className:`order-1 flex-1 text-left text-sm sm:w-32 sm:flex-none sm:text-right sm:text-[17px]`,style:{color:r.fg},children:o}),(0,I.jsx)(`span`,{className:`order-2 flex-1 text-right text-sm sm:order-3 sm:w-32 sm:flex-none sm:text-left sm:text-[17px]`,style:{color:r.fg},children:s}),(0,I.jsxs)(_,{"data-owns-horizontal-drag":``,className:`relative order-3 flex h-6 w-full touch-none items-center select-none sm:order-2 sm:w-auto sm:flex-1`,value:[t],onValueChange:e=>n(e[0]??k),disabled:i,min:0,max:100,step:1,"aria-label":a(`personalitySliderRow.rangeAriaLabel`,{left:o,right:s}),children:[(0,I.jsx)(h,{className:`relative h-2 w-full grow rounded-full sm:h-3`,style:{backgroundColor:K}}),(0,I.jsx)(p,{className:`block h-5 w-5 cursor-grab rounded-full shadow-sm transition-transform active:scale-95 active:cursor-grabbing keyboard-focus:outline-none keyboard-focus:ring-2 keyboard-focus:ring-white/70 data-[disabled]:cursor-not-allowed data-[disabled]:active:scale-100 sm:h-6 sm:w-6`,style:{backgroundColor:q}})]})]})}async function Y({assistantId:e,values:t,assistantName:n}){return M({assistantId:e,content:P(t,void 0,n),title:d(`applyPersonalityUpdate.conversationTitle`,{ns:`intelligence`}),context:`identity_personality_update`})}function X(){let{t:e}=g(`intelligence`),t=u(),r=v(),i=m(),{components:a,traits:s,customImageUrl:c,accentHex:d}=l(t),p=j(t),h=f({queryKey:T(t),queryFn:()=>w(t)}),[_,y]=(0,F.useState)(null),[b,x]=(0,F.useState)(!1),S=_??h.data??{},D=p.data?.identity?.name||e(`identityOverview.defaultAssistantName`);return(0,I.jsx)(G,{components:a,traits:s,customImageUrl:c,accentHex:d,entrance:!0,children:(0,I.jsx)(Z,{assistantName:D,values:S,onValueChange:(e,t)=>y({...S,[e]:t}),applying:b,onUpdate:()=>{x(!0);let a=E(S);Y({assistantId:t,values:a,assistantName:p.data?.identity?.name}).then(async s=>{x(!1),s?(await C(t,a),i.invalidateQueries({queryKey:T(t)}),i.invalidateQueries({queryKey:N(t)}),n.success(e(`personalityPage.updateSuccessToast`)),r(o.identity)):n.error(e(`personalityPage.updateErrorToast`))})},onBack:()=>void r(o.identity)})})}function Z({assistantName:e,values:t,onValueChange:n,applying:r,onUpdate:i,onBack:a}){let{t:o}=g(`intelligence`),{tone:s,bottomReserve:c}=W();return(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(`button`,{type:`button`,onClick:a,className:`absolute top-4 left-4 z-20 flex cursor-pointer items-center gap-1.5 rounded-full py-2 pr-4 pl-3 text-body-medium-default backdrop-blur-sm transition-all duration-150 active:scale-[0.97] ${s.isLight?`bg-black/10 hover:bg-black/20`:`bg-white/10 hover:bg-white/20`}`,style:{color:s.fg},children:[(0,I.jsx)(S,{className:`h-4 w-4`,"aria-hidden":!0}),o(`personalityPage.back`)]}),(0,I.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col items-center overflow-y-auto px-6`,style:{paddingBottom:c},children:[(0,I.jsx)(`div`,{className:`w-full min-h-14 shrink-[4]`,style:{flexBasis:`12%`}}),(0,I.jsxs)(`div`,{className:`flex shrink-0 flex-col items-center gap-2 text-center`,children:[(0,I.jsx)(`h1`,{className:`text-[2.6rem] leading-none max-sm:text-[2rem]`,style:{fontFamily:`var(--font-serif)`},children:o(`personalityPage.title`)}),(0,I.jsx)(`p`,{className:`max-w-md text-[15px]`,style:{color:s.fgMuted},children:o(`personalityPage.subtitle`)})]}),(0,I.jsx)(`div`,{className:`w-full min-h-3 shrink-[2] basis-10`}),(0,I.jsx)(`div`,{className:`flex w-full max-w-2xl shrink-0 flex-col`,children:A.map((e,i)=>(0,I.jsxs)(F.Fragment,{children:[i>0&&(0,I.jsx)(`div`,{className:`w-full min-h-2.5 shrink basis-8 sm:basis-11`}),(0,I.jsx)(J,{axis:e,value:t[e.id]??k,onValueChange:t=>n(e.id,t),tone:s,disabled:r})]},e.id))}),(0,I.jsx)(`div`,{className:`w-full min-h-3 shrink-[2] basis-12`}),(0,I.jsx)(`button`,{type:`button`,onClick:i,disabled:r,className:`flex min-h-11 min-w-[240px] max-w-full shrink-0 cursor-pointer items-center justify-center gap-2 rounded-[10px] px-6 py-2 text-body-medium-default transition-transform duration-150 active:scale-[0.97] disabled:cursor-default disabled:opacity-80 disabled:active:scale-100`,style:{backgroundColor:s.isLight?`#1A1A1A`:`#FFFFFF`,color:s.isLight?`#FFFFFF`:`#1A1A1A`},children:r?(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)(`div`,{className:`h-4 w-4 shrink-0 animate-spin rounded-full border-2 border-transparent`,style:{borderTopColor:s.isLight?`#FFFFFF`:`#1A1A1A`,borderRightColor:s.isLight?`#FFFFFF`:`#1A1A1A`}}),(0,I.jsx)(`span`,{className:`min-w-0 text-center`,children:o(`personalityPage.updatingPersonality`,{name:e})})]}):(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)(x,{className:`h-4 w-4`,"aria-hidden":!0}),o(`personalityPage.updatePersonality`)]})})]})]})}export{X as PersonalityPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Cx as t,Ex as n,Tb as r,Ux as i,et as a,rd as o,wg as s}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Cx as t,Ex as n,Tb as r,Ux as i,et as a,rd as o,wg as s}from"./app-p4YU9h0P.js";import{Zn as c,er as l,j as u}from"./vendor-DYOeoIwg.js";import{r as d,t as f,x as p}from"./react-B9IgSVeK.js";import{t as m}from"./detail-card-BpqiAUnN.js";import{i as h,n as g,r as _,t as v}from"./personality-sliders-r9DH0oqr.js";var y=e(p(),1),b=f(),x=[{id:s.companionCoworker,leftKey:`personalityPage.axes.companionCoworker.left`,rightKey:`personalityPage.axes.companionCoworker.right`},{id:s.genzBoomer,leftKey:`personalityPage.axes.genzBoomer.left`,rightKey:`personalityPage.axes.genzBoomer.right`},{id:s.executeCollaborate,leftKey:`personalityPage.axes.executeCollaborate.left`,rightKey:`personalityPage.axes.executeCollaborate.right`},{id:s.playfulSerious,leftKey:`personalityPage.axes.playfulSerious.left`,rightKey:`personalityPage.axes.playfulSerious.right`},{id:s.politeUnfiltered,leftKey:`personalityPage.axes.politeUnfiltered.left`,rightKey:`personalityPage.axes.politeUnfiltered.right`}];function S(){let{t:e}=u(`settings`),s=a(),f=l(),p=o.use.vellumHostedInference(),S=o.use.hasHydrated(),C=c({queryKey:_(s),queryFn:()=>g(s)}),[w,T]=(0,y.useState)(null),[E,D]=(0,y.useState)(!1),O=w??C.data??{};if(S&&!p)return(0,b.jsx)(d,{replace:!0,to:r.settings.general});let k=()=>{D(!0),h(s,v(O)).then(n=>{D(!1),n?(f.invalidateQueries({queryKey:_(s)}),t.success(e(`personalityPage.saveSuccessToast`))):t.error(e(`personalityPage.saveErrorToast`))})},A=E||C.isLoading;return(0,b.jsxs)(`div`,{"data-slot":`personality-page`,className:`space-y-6`,children:[(0,b.jsx)(m,{title:e(`personalityPage.title`),subtitle:e(`personalityPage.subtitle`),children:C.isError?(0,b.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:e(`personalityPage.loadError`)}):(0,b.jsx)(`div`,{className:`flex flex-col gap-6`,children:x.map(t=>{let r=e(t.leftKey),i=e(t.rightKey);return(0,b.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,b.jsxs)(`div`,{className:`flex items-center justify-between gap-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,b.jsx)(`span`,{children:r}),(0,b.jsx)(`span`,{children:i})]}),(0,b.jsx)(n,{value:O[t.id]??50,onValueChange:e=>{typeof e==`number`&&T({...O,[t.id]:e})},min:0,max:100,step:1,disabled:A,"aria-label":e(`personalityPage.rangeAriaLabel`,{left:r,right:i})})]},t.id)})})}),(0,b.jsx)(i,{onClick:k,disabled:A||C.isError,children:e(E?`personalityPage.saving`:`personalityPage.save`)})]})}export{S as SettingsPersonalityPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{H_ as e,R_ as t,Tg as n,wg as r,zb as i}from"./app-
|
|
1
|
+
import{H_ as e,R_ as t,Tg as n,wg as r,zb as i}from"./app-p4YU9h0P.js";function a(e){return[`personality-sliders`,e]}function o(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Object.values(e).every(e=>typeof e==`number`)}function s(e){return Object.fromEntries(Object.values(r).map(t=>[t,e[t]??50]))}async function c(e){let{data:r,error:a,response:s}=await t({path:{assistant_id:e},query:{path:n},throwOnError:!1});if(i(s,a,`Failed to fetch personality sliders`),s.status===404)return null;if(!s.ok||!r)throw Error(`Failed to fetch personality sliders`);let c=JSON.parse(r.content);if(!o(c))throw Error(`Personality sliders sidecar is malformed`);return c}async function l(t,r){try{let{error:a,response:o}=await e({path:{assistant_id:t},body:{path:n,content:JSON.stringify(r,null,2),encoding:`utf-8`},throwOnError:!1});return i(o,a,`Failed to save personality sliders`),o.ok}catch{return!1}}export{l as i,c as n,a as r,s as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Cx as t,Eb as n,Gl as r,Hx as i,Ix as a,J_ as o,Kl as s,Ll as c,Qm as l,Rl as u,Tb as d,Tx as f,Ux as p,Wl as m,Wr as h,X_ as g,bb as _,bp as v,gv as y,px as b,rm as x,xp as S,ym as C,yp as w}from"./app-DFXcEvsi.js";import{Jn as T,N as E,Zn as D,er as ee,j as O}from"./vendor-DYOeoIwg.js";import{_ as te,f as k,t as ne,x as re}from"./react-B9IgSVeK.js";import{E as A,Ra as ie,Ri as ae,fi as j,qn as oe,rt as M,yr as se}from"./icons-QG1KAFmx.js";import{A as ce,B as le,E as N,F as P,H as ue,I as de,M as F,N as fe,O as pe,P as I,S as L,U as R,_ as me,f as he,g as ge,h as _e,i as ve,j as ye,k as be,n as xe,o as Se,r as Ce,s as we,t as Te,w as Ee,z}from"./use-checkout-dismiss-refresh-DB9VdW8-.js";import{t as De}from"./android-billing-handoff-BVx_2Qs0.js";import{t as Oe}from"./checkout-return-target-CrM-Nhda.js";import{i as ke,r as Ae,s as je,t as B}from"./machine-sizes-Cyr9sICv.js";var V=e(re(),1),Me=`__none__`,H=`__baseline__`,U=`${ke[B]} machine (${Ae[B]})`;function Ne(e){let{proPlan:t,seed:n,machineTier:r,storageTier:i,creditChoice:a,noBundleLabel:o}=e,s=t.machine_tiers,c=t.storage_tiers,l=t.credit_tiers??[],u=r===H,d=u?null:s.find(e=>e.tier===r)??null,f=u?U:d?.description??null,p=c.find(e=>e.tier===i)??null,m=a&&a!==`__none__`?l.find(e=>e.tier===a)??null:null,h=n!=null&&n.machineTier!=null?s.find(e=>e.tier===n.machineTier)??null:null,g=n==null?null:n.machineTier??`__baseline__`,_=n==null?void 0:n.machineTier==null?U:h?.description,v=n==null?null:c.find(e=>e.tier===n.storageTier)??null,y=n!=null&&n.creditTier!=null?l.find(e=>e.tier===n.creditTier)??null:null,b=n!=null&&n.machineTier!=null&&h==null,x=n!=null&&v==null,S=n!=null&&n.hasPlatformFee===!1,C=[{key:`base`,label:`Platform fee: ${ce(t.base_price_cents)}`,changed:S}];if(f!=null){let e=n!=null&&!b&&g!==r;C.push({key:`machine`,label:f,previousLabel:e?_:void 0,changed:e})}if(p!=null){let e=n!=null&&!x&&v?.tier!==p.tier;C.push({key:`storage`,label:F(p.storage_gib),previousLabel:e&&v!=null?F(v.storage_gib):void 0,changed:e})}let w=a===`__none__`?o:m==null?null:m.label;if(w!=null){let e=n!=null&&(n.creditTier??`__none__`)!==a,t=n?.creditTier==null?o:y?.label;C.push({key:`credit`,label:w,previousLabel:e?t:void 0,changed:e})}let T=t.base_price_cents+(d?.price_cents??0)+(p?.price_cents??0)+(m?.price_cents??0),E=b||x||n!=null&&n.creditTier!=null&&y==null;if(n==null||E)return{totalCents:T,previousTotalCents:null,deltaCents:null,rows:C};let D=(S?0:t.base_price_cents)+(h?.price_cents??0)+(v?.price_cents??0)+(y?.price_cents??0);return{totalCents:T,previousTotalCents:D,deltaCents:T-D,rows:C}}var Pe=`https://www.vellum.ai/docs/pricing`,Fe=`${Pe}#machine-sizes`,Ie=`${Pe}#storage`,Le=`${Pe}#credit-bundles`,W=ne();function G(e){return(0,W.jsxs)(`span`,{className:`text-[12px] font-medium text-[var(--content-disabled)]`,children:[`+`,ce(e)]})}function K({label:e,docsUrl:t,docsLabel:n,learnMore:r}){return(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[11px] font-medium text-[var(--content-secondary)]`,children:e}),(0,W.jsx)(`a`,{href:t,target:`_blank`,rel:`noopener noreferrer`,"aria-label":n,onClick:e=>o(e,t),className:`text-[11px] font-medium text-[var(--content-tertiary)] underline hover:text-[var(--content-default)]`,children:r})]})}function Re({open:e,proPlan:t,pending:n,currentStorageGib:r,initialSelection:i,onClose:a,onContinue:o}){let{t:s}=O(`settings`),c=s(`customPlanModal.noExtraUsage`),l=e?i??null:null,[u,d]=(0,V.useState)(()=>l?l.machineTier??`__baseline__`:``),[m,h]=(0,V.useState)(()=>l?.storageTier??``),[g,_]=(0,V.useState)(()=>l?l.creditTier??`__none__`:``),[v,y]=(0,V.useState)({open:e,initialSelection:i});(v.open!==e||v.initialSelection!==i)&&(y({open:e,initialSelection:i}),d(l?l.machineTier??`__baseline__`:``),h(l?.storageTier??``),_(l?l.creditTier??`__none__`:``));let x=t.machine_tiers,S=(0,V.useMemo)(()=>t.storage_tiers.filter(e=>!e.legacy||e.tier===i?.storageTier),[t.storage_tiers,i?.storageTier]),C=t.credit_tiers??[],w=(0,V.useMemo)(()=>(t.credit_tiers??[]).filter(e=>!e.legacy),[t.credit_tiers]),T=e=>L(e)||e.legacy&&e.tier!==i?.storageTier||r!=null&&e.storage_gib<r,E=i!=null&&i.machineTier==null,D=[...E?[{value:H,label:U,icon:(0,W.jsx)(R,{className:`h-4 w-4`,"aria-hidden":!0}),disabled:!0}]:[],...x.map(e=>({value:e.tier,label:e.description,icon:(0,W.jsx)(R,{className:`h-4 w-4`,"aria-hidden":!0}),suffix:G(e.price_cents),disabled:L(e)}))],ee=S.map(e=>({value:e.tier,label:e.label,icon:(0,W.jsx)(se,{className:`h-4 w-4`,"aria-hidden":!0}),suffix:G(e.price_cents),disabled:T(e)})),te=g&&g!==`__none__`?C.find(e=>e.tier===g)??null:null,k=te?.legacy?te:null,ne=[{value:Me,label:c,icon:(0,W.jsx)(j,{className:`h-4 w-4`,"aria-hidden":!0})},...w.map(e=>({value:e.tier,label:e.label,icon:(0,W.jsx)(j,{className:`h-4 w-4`,"aria-hidden":!0}),suffix:G(e.price_cents)})),...k?[{value:k.tier,label:k.label,icon:(0,W.jsx)(j,{className:`h-4 w-4`,"aria-hidden":!0}),suffix:G(k.price_cents),disabled:!0}]:[]],re=u===H,A=re?null:x.find(e=>e.tier===u)??null,ie=re?E?{tier:null}:null:A==null?null:{tier:A.tier},oe=m!==``&&m===i?.storageTier,le=S.find(e=>e.tier===m&&(oe||!T(e)))??null,N=g===`__none__`||g===i?.creditTier||w.some(e=>e.tier===g),P=g!==``&&N?g:null,ue=ie!=null&&le!=null&&P!=null,de=i!=null&&i.hasPlatformFee!==!1&&u===(i.machineTier??`__baseline__`)&&m===i.storageTier&&g===(i.creditTier??`__none__`),F=(0,V.useMemo)(()=>Ne({proPlan:t,seed:i??null,machineTier:u,storageTier:m,creditChoice:g,noBundleLabel:c}),[t,i,u,m,g,c]);return(0,W.jsx)(f.Root,{open:e,onOpenChange:e=>{e||a()},children:(0,W.jsx)(f.Content,{size:`lg`,"data-theme":`light`,hideCloseButton:!0,overlayClassName:`backdrop-blur-[2px]`,className:`max-w-[820px] md:min-h-[min(608px,calc(100vh-4rem))]`,children:(0,W.jsx)(f.Body,{className:`p-4`,children:(0,W.jsxs)(`div`,{className:`flex flex-col gap-8 md:flex-row md:gap-12`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-6 md:flex-1`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,W.jsx)(`div`,{className:`flex shrink-0 items-center justify-center rounded-xl bg-[var(--surface-active)] p-[14px]`,children:(0,W.jsx)(M,{className:`h-6 w-6 text-[var(--content-emphasised)]`,"aria-hidden":!0})}),(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,W.jsx)(f.Title,{className:`text-[16px] font-medium text-[var(--content-emphasised)]`,children:s(`customPlanModal.title`)}),(0,W.jsx)(f.Description,{className:`mt-0 text-[14px] font-medium leading-[18px] text-[var(--content-tertiary)]`,children:s(`customPlanModal.subtitle`)})]})]}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,W.jsx)(K,{label:s(`customPlanModal.machineSizeLabel`),docsUrl:Fe,docsLabel:s(`customPlanModal.machineSizeDocsAriaLabel`),learnMore:s(`customPlanModal.learnMore`)}),(0,W.jsx)(b,{"aria-label":s(`customPlanModal.machineSizeAriaLabel`),placeholder:s(`customPlanModal.machineSizePlaceholder`),value:u,onChange:d,options:D})]}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,W.jsx)(K,{label:s(`customPlanModal.storageLabel`),docsUrl:Ie,docsLabel:s(`customPlanModal.storageDocsAriaLabel`),learnMore:s(`customPlanModal.learnMore`)}),(0,W.jsx)(b,{"aria-label":s(`customPlanModal.storageAriaLabel`),placeholder:s(`customPlanModal.storagePlaceholder`),value:m,onChange:h,options:ee})]}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,W.jsx)(K,{label:s(`customPlanModal.usageBundleLabel`),docsUrl:Le,docsLabel:s(`customPlanModal.usageBundleDocsAriaLabel`),learnMore:s(`customPlanModal.learnMore`)}),(0,W.jsx)(b,{"aria-label":s(`customPlanModal.usageBundleAriaLabel`),placeholder:s(`customPlanModal.usageBundlePlaceholder`),value:g,onChange:_,options:ne})]})]}),(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-16 md:pt-[5px]`,children:[(0,W.jsx)(`span`,{className:`text-[16px] font-medium text-[var(--content-emphasised)]`,children:s(`customPlanModal.recap`)}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,W.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,W.jsx)(`span`,{className:`text-[24px] font-medium text-[var(--content-default)]`,children:ce(F.totalCents)}),F.deltaCents!=null&&F.deltaCents!==0&&F.previousTotalCents!=null&&(0,W.jsx)(`span`,{className:`text-[12px] font-medium ${F.deltaCents>0?`text-[var(--system-positive-strong)]`:`text-[var(--system-negative-strong)]`}`,children:s(`customPlanModal.comparedToPrevious`,{delta:pe(F.deltaCents),previous:be(F.previousTotalCents)})}),(0,W.jsx)(`span`,{className:`text-[11px] font-medium text-[var(--content-tertiary)]`,children:s(`customPlanModal.totalBilledMonthly`)})]}),(0,W.jsx)(`div`,{className:`h-px w-full bg-[var(--border-hover)]`}),(0,W.jsx)(`span`,{className:`text-[12px] font-medium text-[var(--content-tertiary)]`,children:s(`customPlanModal.yourSelection`)}),(0,W.jsx)(`ul`,{className:`flex flex-col gap-2`,children:F.rows.map(e=>(0,W.jsxs)(`li`,{className:`flex flex-col gap-2`,children:[e.previousLabel!=null&&(0,W.jsxs)(`div`,{className:`relative flex w-fit items-start gap-2`,children:[(0,W.jsx)(ae,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-disabled)]`,"aria-hidden":!0}),(0,W.jsx)(`s`,{className:`text-[14px] font-medium leading-[18px] text-[var(--content-disabled)] no-underline`,children:e.previousLabel}),(0,W.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute -left-1 right-0 top-[9px] h-px bg-[var(--content-disabled)]`})]}),(0,W.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,W.jsx)(ae,{className:`mt-0.5 h-4 w-4 shrink-0 ${e.changed?`text-[var(--system-positive-strong)]`:`text-[var(--content-secondary)]`}`,"aria-hidden":!0}),(0,W.jsx)(`span`,{className:`text-[14px] font-medium leading-[18px] text-[var(--content-secondary)]`,children:e.label})]})]},e.key))}),(0,W.jsx)(p,{variant:`primary`,fullWidth:!0,disabled:!ue||de||n,onClick:()=>{!ue||de||n||o({machineTier:ie.tier,storageTier:le.tier,creditTier:P===`__none__`?null:P})},children:s(`customPlanModal.continue`)}),(0,W.jsx)(p,{variant:`ghost`,fullWidth:!0,disabled:n,onClick:a,children:s(`customPlanModal.cancel`)})]})]})]})})})})}function ze({className:e,onConfigure:t,configureDisabled:n,isCurrent:r=!1,currentSummary:i}){let{t:o}=O(`settings`);return(0,W.jsxs)(`div`,{className:`flex w-full flex-col items-center gap-8 ${e??``}`,children:[(0,W.jsx)(`p`,{className:`text-center text-[20px] font-medium text-[var(--content-tertiary)]`,children:o(`customPlanRow.prompt`)}),(0,W.jsxs)(`div`,{className:`flex w-[840px] max-w-full flex-col items-start gap-4 rounded-2xl bg-[var(--surface-lift)] p-4 sm:flex-row sm:items-center sm:justify-between sm:gap-6`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-center gap-4`,children:[(0,W.jsx)(`div`,{className:`flex shrink-0 items-center justify-center rounded-xl bg-[var(--content-disabled)] p-[14px]`,children:(0,W.jsx)(M,{className:`h-6 w-6 text-[var(--aux-white)]`,"aria-hidden":!0})}),(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[16px] font-medium text-[var(--content-emphasised)]`,children:o(`customPlanRow.title`)}),r?(0,W.jsx)(a,{className:`bg-[var(--feed-digest-weak)] text-[var(--content-default)]`,children:o(`customPlanRow.currentPlanTag`)}):null]}),(0,W.jsx)(`span`,{className:`text-[14px] font-medium text-[var(--content-tertiary)]`,children:i??o(`customPlanRow.genericDescriptor`)})]})]}),(0,W.jsx)(`div`,{className:`flex shrink-0 items-center gap-3`,children:(0,W.jsx)(p,{variant:`outlined`,onClick:t,disabled:n,children:o(`customPlanRow.configure`)})})]})]})}function Be({open:e,lostFeatures:t,viaPortal:n,pending:r,onCancel:a,onConfirm:o}){let{t:s}=O(`settings`),c=t.length>0;return(0,W.jsx)(f.Root,{open:e,onOpenChange:e=>{!e&&!r&&a()},children:(0,W.jsxs)(f.Content,{size:`md`,hideCloseButton:!0,children:[(0,W.jsx)(f.Header,{icon:A,children:(0,W.jsx)(f.Title,{children:s(`freeDowngradeConfirmModal.title`)})}),(0,W.jsxs)(f.Body,{children:[(0,W.jsx)(i,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:s(n?c?`freeDowngradeConfirmModal.bodyWithFeaturesPortal`:`freeDowngradeConfirmModal.bodyCancelOnlyPortal`:c?`freeDowngradeConfirmModal.bodyWithFeatures`:`freeDowngradeConfirmModal.bodyCancelOnly`)}),c?(0,W.jsx)(`ul`,{className:`mt-4 list-disc space-y-2 pl-5`,children:t.map(e=>(0,W.jsx)(`li`,{children:(0,W.jsx)(i,{as:`span`,variant:`body-medium-default`,children:e})},e))}):null]}),(0,W.jsxs)(f.Footer,{children:[(0,W.jsx)(p,{variant:`outlined`,onClick:a,disabled:r,children:s(`freeDowngradeConfirmModal.cancel`)}),(0,W.jsx)(p,{variant:`danger`,onClick:o,disabled:r,"data-testid":`confirm-free-downgrade-button`,children:s(`freeDowngradeConfirmModal.confirm`)})]})]})})}function Ve({tierKey:e,name:t,tagline:n,priceLabel:r,priceCaption:i,ctaLabel:o,features:s,recommended:c=!1,tone:l=`dark`,isCurrent:u,intent:d=`upgrade`,pending:f,onCta:m}){let{t:h}=O(`settings`),g=d===`downgrade`&&!u;return(0,W.jsxs)(`div`,{"data-theme":l,className:`flex w-full flex-col gap-3 rounded-2xl bg-[var(--surface-lift)] p-3 sm:gap-4 sm:p-4`,children:[(0,W.jsx)(I,{tier:e,size:50}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,W.jsxs)(`div`,{className:`flex h-8 items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[20px] font-medium text-[var(--content-emphasised)]`,children:t}),c&&!g&&!u?(0,W.jsx)(a,{className:`bg-[var(--feed-digest-weak)] text-[12px] font-semibold uppercase text-[var(--credits-accent)]`,children:h(`planColumnCard.recommended`)}):null]}),(0,W.jsx)(`p`,{className:`overflow-hidden text-[14px] font-medium leading-[18px] text-[var(--content-tertiary)] sm:h-9`,children:n})]}),(0,W.jsx)(`div`,{className:`h-px w-full bg-[var(--border-hover)]`}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,W.jsx)(`span`,{className:`text-[24px] font-medium text-[var(--content-default)]`,children:r}),(0,W.jsx)(`span`,{className:`text-[11px] font-medium text-[var(--content-tertiary)]`,children:i})]}),(0,W.jsx)(p,{variant:g?`outlined`:`primary`,fullWidth:!0,disabled:u||f,onClick:m,children:u?h(`planColumnCard.currentPlan`):o}),(0,W.jsx)(`div`,{className:`h-px w-full bg-[var(--border-hover)]`}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-2 sm:gap-4`,children:[(0,W.jsx)(`span`,{className:`text-[12px] font-medium text-[var(--content-tertiary)]`,children:h(`planColumnCard.includes`)}),(0,W.jsx)(`ul`,{className:`flex flex-col gap-2`,children:s.map(e=>(0,W.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,W.jsx)(ae,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-secondary)]`,"aria-hidden":!0}),(0,W.jsx)(`span`,{className:`text-[14px] font-medium text-[var(--content-secondary)]`,children:e})]},e))})]})]})}var He=`#0A0A0B`,Ue=8e3,We={upgrade:`upgrade`,downgrade:`downgrade`,switch:`change`};h();function Ge(e,t){return t(`plansPage.featureComputer`,{machine:N(e)})}function Ke(e,t,n){return[Ge(e,n),n(`plansPage.featureStorage`,{gib:e.storage_gib}),n(`plansPage.featureUsage`,{name:e.name}),...t]}function qe(e,t){return Ee(e,t).join(` · `)}function Je(){let{t:e}=O(`settings`),i=k(),[a,o]=te(),f=ee(),h=n(),b=S({platformHostedOnly:!0}),ne=w(),re=v(),A=b===`full`&&ne,ae=b===`full`&&re,j=D({...m(),enabled:A}),M=D({...c(),enabled:A}),se=T(s()),{changePackage:ce,isPending:N}=Ce(),{changeTiers:F,isPending:pe,current:I,currentReady:L,currentKnown:R,primaryAssistantId:be}=ve({enabled:A});Te();let[Ee,ke]=(0,V.useState)(!1),[Ae,B]=(0,V.useState)(!1),[Me,H]=(0,V.useState)(!1),[U,Ne]=(0,V.useState)(null),[Fe,Ie]=(0,V.useState)(!1),[Le,G]=(0,V.useState)(void 0),K=(0,V.useRef)(!1),[Ge,Je]=(0,V.useState)(!1),Ye=(0,V.useRef)(!1),[Xe,Ze]=(0,V.useState)(null),q=j.data,J=M.data?.plans.find(e=>e.id===`pro`),Qe=J?.packages??[],$e=Qe.length>0,Y=q?.plan_id===`pro`,et=C(),tt=ue(be,A&&et&&Y&&R),nt=R?tt:void 0,X=q?q.plan_id===`base`?`free`:de(q.package)?q.package.key:null:null,{cancelSubscription:rt,isPending:it}=Se(),at=ge(q),ot=he(we(q)),st=l(),ct=new Set(M.data?.plans.find(e=>e.id===`base`)?.included_features??[]),lt=(J?.included_features??[]).filter(e=>!ct.has(e)),Z=Ee||N||it||ot.isPending,ut=(0,V.useMemo)(()=>!Y||I.storageTier==null?null:{machineTier:I.machineTier,storageTier:I.storageTier,creditTier:I.creditTier,hasPlatformFee:I.hasPlatformFee},[Y,I.machineTier,I.storageTier,I.creditTier,I.hasPlatformFee]),Q=a.get(_),dt=!A&&!ae,ft=A&&!M.isLoading&&!$e,$=dt||!(Q!=null&&!Ge)&&(j.isError||ft);(0,V.useEffect)(()=>{$&&i(dt?d.settings.usageBilling:`${d.settings.usageBilling}&adjust_plan`,{replace:!0})},[$,dt,i]);let pt=()=>{(window.history.state?.idx??0)>0?i(-1):i(d.settings.usageBilling)},mt=async n=>{ke(!0);try{let e=await se.mutateAsync({body:{...n,return_target:Oe()}});e.status===`redirect`&&e.checkout_url?(y(n.package?{kind:`package`,packageKey:n.package}:{kind:`custom`,machineTier:n.machine_tier??null,storageTier:n.storage_tier??null,creditTier:n.credit_tier??null}),x(f),g(e.checkout_url)):(await f.invalidateQueries({queryKey:r()}),await f.invalidateQueries({queryKey:u()}))}catch(n){t.error(_e(n,e(`plansPage.checkoutFailedToast`)))}finally{ke(!1)}},ht=(e,t)=>{if(q&&!Z){if(st){De(d.plans);return}if(Y){if(e===`free`){H(!0);return}let n=Qe.find(t=>t.key===e);if(!n||z(X,n.key)===`current`)return;if(!me(q)){i(`${d.settings.usageBilling}&adjust_plan`,{replace:t?.replaceOnBail===!0});return}Ne(n);return}e!==`free`&&mt({target_plan_id:`pro`,package:e,confirm:!0})}},gt=(0,V.useRef)(ht);(0,V.useEffect)(()=>{gt.current=ht}),(0,V.useEffect)(()=>{if(Q==null||K.current||$||!A||Ye.current)return;Ye.current=!0;let e=setTimeout(()=>{Je(!0)},Ue),t=()=>{clearTimeout(e),Je(!0)};Promise.all([f.refetchQueries({queryKey:r()}),f.refetchQueries({queryKey:u()})]).then(t,t)},[$,Q,A,f]),(0,V.useEffect)(()=>{Q==null||K.current||$||!A||!Ge||(K.current=!0,Y&&Q!==`free`&&Ze(Q),o(e=>{let t=new URLSearchParams(e);return t.delete(_),t},{replace:!0}))},[Ge,$,Q,A,Y,o]),(0,V.useEffect)(()=>{Xe==null||Q!=null||(Ze(null),gt.current(Xe,{replaceOnBail:!0}))},[Q,Xe]);let _t;if(q&&J&&$e){let n=Y&&X===null&&L&&I.storageGib!=null,r=n?qe(I,J):void 0,i=async()=>{if(!at){H(!1),ot.mutate({});return}await rt()&&H(!1)},a=()=>({creditTier:I.creditTier,fromSnapshot:{machineSize:nt?.machine_size??null,storageGib:nt?.provisioned_storage_gib??null}}),o=U?X===null?`switch`:z(X,U.key)===`downgrade`?`downgrade`:`upgrade`:`upgrade`,s=async()=>{if(!U)return;let n=U,r=a(),i=X===null||!L||!R||je(I.machineTier,n.machine_tier),s=await ce(n.key);if(!s)return;if(Ne(null),s.status===`no_op`){t.success(e(`plansPage.alreadyOnPlanToast`));return}let c=n.credit_tier??null;G({fromSnapshot:r.fromSnapshot,credits:c===r.creditTier?null:{fromTier:r.creditTier,toTier:c},direction:We[o],canLowerResources:i}),Ie(!0)},c=e=>mt({target_plan_id:`pro`,confirm:!0,machine_tier:e.machineTier,storage_tier:e.storageTier,credit_tier:e.creditTier}),l=async n=>{let r=a(),i=!R||je(I.machineTier,n.machineTier),o=await F(n,ut??void 0);o&&(B(!1),o.needsResize||o.creditChanged?(G({fromSnapshot:r.fromSnapshot,credits:o.creditChanged?{fromTier:r.creditTier,toTier:n.creditTier}:null,direction:`change`,canLowerResources:i}),Ie(!0)):t.success(e(`plansPage.planUpdatedToast`)))},u=()=>{if(!Z){if(st){De(d.plans);return}Y&&!L||B(!0)}},f=[...Qe].sort((e,t)=>P.indexOf(e.key)-P.indexOf(t.key)),p=fe(`free`),m=Y?`downgrade`:z(X,`free`),h=[e(`plansPage.freeFeatureSmallComputer`),e(`plansPage.freeFeatureStorage`,{gib:4}),e(`plansPage.freeFeaturePayAsYouGo`)];_t=(0,W.jsxs)(`div`,{className:`my-auto flex w-full flex-col items-center`,children:[(0,W.jsxs)(`header`,{className:`flex flex-col items-center gap-2 text-center`,children:[(0,W.jsx)(`h1`,{className:`text-[40px] text-[var(--content-emphasised)] sm:text-[60px]`,style:{fontFamily:`var(--font-serif)`,fontWeight:400,lineHeight:1.2,letterSpacing:`1.2px`},children:e(`plansPage.heading`)}),(0,W.jsx)(`p`,{className:`text-[20px] font-medium text-[var(--content-tertiary)]`,children:e(`plansPage.subheading`)})]}),(0,W.jsxs)(`div`,{className:`mt-6 grid w-full max-w-[1312px] grid-cols-1 items-start gap-4 sm:mt-10 sm:grid-cols-2 sm:gap-6 lg:grid-cols-4`,children:[(0,W.jsx)(Ve,{tierKey:`free`,name:`Base`,tagline:p?.tagline??``,priceLabel:e(`plansPage.freePriceLabel`),priceCaption:p?.priceCaption??e(`plansPage.foreverCaption`),ctaLabel:m===`downgrade`?e(`plansPage.downgradeTo`,{name:`Base`}):p?.cta??e(`plansPage.startFreeCta`),features:h,tone:`dark`,isCurrent:X===`free`,intent:m,pending:Z,onCta:()=>ht(`free`)}),f.map(t=>{let n=fe(t.key),r=z(X,t.key);return(0,W.jsx)(Ve,{tierKey:t.key,name:t.name,tagline:n?.tagline??``,priceLabel:ye(t.total_price_cents),priceCaption:n?.priceCaption??e(`plansPage.billedMonthlyCaption`),ctaLabel:r===`downgrade`?e(`plansPage.downgradeTo`,{name:t.name}):n?.cta??t.name,features:Ke(t,n?.extraFeatures??[],e),recommended:n?.recommended,tone:n?.recommended?`light`:`dark`,isCurrent:X===t.key,intent:r,pending:Z,onCta:()=>ht(t.key)},t.key)})]}),(0,W.jsx)(ze,{className:`mt-6 sm:mt-10`,onConfigure:u,configureDisabled:Y&&!L||Z,isCurrent:n,currentSummary:r}),(0,W.jsx)(Re,{open:Ae,proPlan:J,pending:Ee||pe,currentStorageGib:Y?I.storageGib:null,initialSelection:ut,onClose:()=>B(!1),onContinue:e=>{Y?l(e):c(e)}}),(0,W.jsx)(xe,{open:U!==null,relation:o,packageName:U?.name??``,targetPackage:U,pending:N,onCancel:()=>Ne(null),onConfirm:()=>void s()}),(0,W.jsx)(Be,{open:Me,lostFeatures:lt,viaPortal:!at,pending:it||ot.isPending,onCancel:()=>H(!1),onConfirm:()=>void i()}),(0,W.jsx)(le,{mode:`resize`,open:Fe,onClose:()=>{Ie(!1),G(void 0)},resizeContext:Le}),(0,W.jsx)(`p`,{className:`mt-6 text-center text-[12px] font-medium text-[var(--content-tertiary)] sm:mt-10`,children:(0,W.jsx)(E,{ns:`settings`,i18nKey:`plansPage.cancelAnytimeFooter`,components:{docsLink:(0,W.jsx)(`a`,{href:Pe,target:`_blank`,rel:`noopener noreferrer`,className:`text-[var(--content-default)] underline`})}})})]})}else _t=(0,W.jsx)(`div`,{className:`my-auto flex items-center justify-center`,children:(0,W.jsx)(oe,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`,"aria-label":e(`plansPage.loadingPlansAriaLabel`)})});return(0,W.jsxs)(`div`,{"data-theme":`dark`,className:`plans-takeover-canvas-enter relative h-full w-full overflow-y-auto`,style:{backgroundColor:He},children:[(0,W.jsx)(`div`,{className:`absolute left-8 z-10 [-webkit-app-region:no-drag]`,style:{top:h?`3rem`:`2rem`},children:(0,W.jsx)(p,{variant:`outlined`,leftIcon:(0,W.jsx)(ie,{className:`h-4 w-4`,"aria-hidden":!0}),onClick:pt,className:`[-webkit-app-region:no-drag]`,children:e(`plansPage.back`)})}),(0,W.jsx)(`div`,{className:`plans-takeover-content-enter flex min-h-full flex-col items-center px-4 pb-8 sm:px-6`,style:{paddingTop:h?`5rem`:`4rem`},children:_t})]})}function Ye(){return(0,W.jsx)(Je,{})}export{Ye as PlansPage};
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Cx as t,Eb as n,Gl as r,Hx as i,Ix as a,J_ as o,Kl as s,Ll as c,Qm as l,Rl as u,Tb as d,Tx as f,Ux as p,Wl as m,Wr as h,X_ as g,bb as _,bp as v,gv as y,px as b,rm as x,xp as S,ym as C,yp as w}from"./app-p4YU9h0P.js";import{Jn as T,N as E,Zn as D,er as ee,j as O}from"./vendor-DYOeoIwg.js";import{_ as te,f as k,t as ne,x as re}from"./react-B9IgSVeK.js";import{E as A,Ra as ie,Ri as ae,fi as j,qn as oe,rt as M,yr as se}from"./icons-QG1KAFmx.js";import{A as ce,B as le,E as N,F as P,H as ue,I as de,M as F,N as fe,O as pe,P as I,S as L,U as R,_ as me,f as he,g as ge,h as _e,i as ve,j as ye,k as be,n as xe,o as Se,r as Ce,s as we,t as Te,w as Ee,z}from"./use-checkout-dismiss-refresh-Clbra-UV.js";import{t as De}from"./android-billing-handoff-BxVpZpp4.js";import{t as Oe}from"./checkout-return-target-B4WZzAGx.js";import{i as ke,r as Ae,s as je,t as B}from"./machine-sizes-Cyr9sICv.js";var V=e(re(),1),Me=`__none__`,H=`__baseline__`,U=`${ke[B]} machine (${Ae[B]})`;function Ne(e){let{proPlan:t,seed:n,machineTier:r,storageTier:i,creditChoice:a,noBundleLabel:o}=e,s=t.machine_tiers,c=t.storage_tiers,l=t.credit_tiers??[],u=r===H,d=u?null:s.find(e=>e.tier===r)??null,f=u?U:d?.description??null,p=c.find(e=>e.tier===i)??null,m=a&&a!==`__none__`?l.find(e=>e.tier===a)??null:null,h=n!=null&&n.machineTier!=null?s.find(e=>e.tier===n.machineTier)??null:null,g=n==null?null:n.machineTier??`__baseline__`,_=n==null?void 0:n.machineTier==null?U:h?.description,v=n==null?null:c.find(e=>e.tier===n.storageTier)??null,y=n!=null&&n.creditTier!=null?l.find(e=>e.tier===n.creditTier)??null:null,b=n!=null&&n.machineTier!=null&&h==null,x=n!=null&&v==null,S=n!=null&&n.hasPlatformFee===!1,C=[{key:`base`,label:`Platform fee: ${ce(t.base_price_cents)}`,changed:S}];if(f!=null){let e=n!=null&&!b&&g!==r;C.push({key:`machine`,label:f,previousLabel:e?_:void 0,changed:e})}if(p!=null){let e=n!=null&&!x&&v?.tier!==p.tier;C.push({key:`storage`,label:F(p.storage_gib),previousLabel:e&&v!=null?F(v.storage_gib):void 0,changed:e})}let w=a===`__none__`?o:m==null?null:m.label;if(w!=null){let e=n!=null&&(n.creditTier??`__none__`)!==a,t=n?.creditTier==null?o:y?.label;C.push({key:`credit`,label:w,previousLabel:e?t:void 0,changed:e})}let T=t.base_price_cents+(d?.price_cents??0)+(p?.price_cents??0)+(m?.price_cents??0),E=b||x||n!=null&&n.creditTier!=null&&y==null;if(n==null||E)return{totalCents:T,previousTotalCents:null,deltaCents:null,rows:C};let D=(S?0:t.base_price_cents)+(h?.price_cents??0)+(v?.price_cents??0)+(y?.price_cents??0);return{totalCents:T,previousTotalCents:D,deltaCents:T-D,rows:C}}var Pe=`https://www.vellum.ai/docs/pricing`,Fe=`${Pe}#machine-sizes`,Ie=`${Pe}#storage`,Le=`${Pe}#credit-bundles`,W=ne();function G(e){return(0,W.jsxs)(`span`,{className:`text-[12px] font-medium text-[var(--content-disabled)]`,children:[`+`,ce(e)]})}function K({label:e,docsUrl:t,docsLabel:n,learnMore:r}){return(0,W.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[11px] font-medium text-[var(--content-secondary)]`,children:e}),(0,W.jsx)(`a`,{href:t,target:`_blank`,rel:`noopener noreferrer`,"aria-label":n,onClick:e=>o(e,t),className:`text-[11px] font-medium text-[var(--content-tertiary)] underline hover:text-[var(--content-default)]`,children:r})]})}function Re({open:e,proPlan:t,pending:n,currentStorageGib:r,initialSelection:i,onClose:a,onContinue:o}){let{t:s}=O(`settings`),c=s(`customPlanModal.noExtraUsage`),l=e?i??null:null,[u,d]=(0,V.useState)(()=>l?l.machineTier??`__baseline__`:``),[m,h]=(0,V.useState)(()=>l?.storageTier??``),[g,_]=(0,V.useState)(()=>l?l.creditTier??`__none__`:``),[v,y]=(0,V.useState)({open:e,initialSelection:i});(v.open!==e||v.initialSelection!==i)&&(y({open:e,initialSelection:i}),d(l?l.machineTier??`__baseline__`:``),h(l?.storageTier??``),_(l?l.creditTier??`__none__`:``));let x=t.machine_tiers,S=(0,V.useMemo)(()=>t.storage_tiers.filter(e=>!e.legacy||e.tier===i?.storageTier),[t.storage_tiers,i?.storageTier]),C=t.credit_tiers??[],w=(0,V.useMemo)(()=>(t.credit_tiers??[]).filter(e=>!e.legacy),[t.credit_tiers]),T=e=>L(e)||e.legacy&&e.tier!==i?.storageTier||r!=null&&e.storage_gib<r,E=i!=null&&i.machineTier==null,D=[...E?[{value:H,label:U,icon:(0,W.jsx)(R,{className:`h-4 w-4`,"aria-hidden":!0}),disabled:!0}]:[],...x.map(e=>({value:e.tier,label:e.description,icon:(0,W.jsx)(R,{className:`h-4 w-4`,"aria-hidden":!0}),suffix:G(e.price_cents),disabled:L(e)}))],ee=S.map(e=>({value:e.tier,label:e.label,icon:(0,W.jsx)(se,{className:`h-4 w-4`,"aria-hidden":!0}),suffix:G(e.price_cents),disabled:T(e)})),te=g&&g!==`__none__`?C.find(e=>e.tier===g)??null:null,k=te?.legacy?te:null,ne=[{value:Me,label:c,icon:(0,W.jsx)(j,{className:`h-4 w-4`,"aria-hidden":!0})},...w.map(e=>({value:e.tier,label:e.label,icon:(0,W.jsx)(j,{className:`h-4 w-4`,"aria-hidden":!0}),suffix:G(e.price_cents)})),...k?[{value:k.tier,label:k.label,icon:(0,W.jsx)(j,{className:`h-4 w-4`,"aria-hidden":!0}),suffix:G(k.price_cents),disabled:!0}]:[]],re=u===H,A=re?null:x.find(e=>e.tier===u)??null,ie=re?E?{tier:null}:null:A==null?null:{tier:A.tier},oe=m!==``&&m===i?.storageTier,le=S.find(e=>e.tier===m&&(oe||!T(e)))??null,N=g===`__none__`||g===i?.creditTier||w.some(e=>e.tier===g),P=g!==``&&N?g:null,ue=ie!=null&&le!=null&&P!=null,de=i!=null&&i.hasPlatformFee!==!1&&u===(i.machineTier??`__baseline__`)&&m===i.storageTier&&g===(i.creditTier??`__none__`),F=(0,V.useMemo)(()=>Ne({proPlan:t,seed:i??null,machineTier:u,storageTier:m,creditChoice:g,noBundleLabel:c}),[t,i,u,m,g,c]);return(0,W.jsx)(f.Root,{open:e,onOpenChange:e=>{e||a()},children:(0,W.jsx)(f.Content,{size:`lg`,"data-theme":`light`,hideCloseButton:!0,overlayClassName:`backdrop-blur-[2px]`,className:`max-w-[820px] md:min-h-[min(608px,calc(100vh-4rem))]`,children:(0,W.jsx)(f.Body,{className:`p-4`,children:(0,W.jsxs)(`div`,{className:`flex flex-col gap-8 md:flex-row md:gap-12`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-6 md:flex-1`,children:[(0,W.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,W.jsx)(`div`,{className:`flex shrink-0 items-center justify-center rounded-xl bg-[var(--surface-active)] p-[14px]`,children:(0,W.jsx)(M,{className:`h-6 w-6 text-[var(--content-emphasised)]`,"aria-hidden":!0})}),(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,W.jsx)(f.Title,{className:`text-[16px] font-medium text-[var(--content-emphasised)]`,children:s(`customPlanModal.title`)}),(0,W.jsx)(f.Description,{className:`mt-0 text-[14px] font-medium leading-[18px] text-[var(--content-tertiary)]`,children:s(`customPlanModal.subtitle`)})]})]}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,W.jsx)(K,{label:s(`customPlanModal.machineSizeLabel`),docsUrl:Fe,docsLabel:s(`customPlanModal.machineSizeDocsAriaLabel`),learnMore:s(`customPlanModal.learnMore`)}),(0,W.jsx)(b,{"aria-label":s(`customPlanModal.machineSizeAriaLabel`),placeholder:s(`customPlanModal.machineSizePlaceholder`),value:u,onChange:d,options:D})]}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,W.jsx)(K,{label:s(`customPlanModal.storageLabel`),docsUrl:Ie,docsLabel:s(`customPlanModal.storageDocsAriaLabel`),learnMore:s(`customPlanModal.learnMore`)}),(0,W.jsx)(b,{"aria-label":s(`customPlanModal.storageAriaLabel`),placeholder:s(`customPlanModal.storagePlaceholder`),value:m,onChange:h,options:ee})]}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,W.jsx)(K,{label:s(`customPlanModal.usageBundleLabel`),docsUrl:Le,docsLabel:s(`customPlanModal.usageBundleDocsAriaLabel`),learnMore:s(`customPlanModal.learnMore`)}),(0,W.jsx)(b,{"aria-label":s(`customPlanModal.usageBundleAriaLabel`),placeholder:s(`customPlanModal.usageBundlePlaceholder`),value:g,onChange:_,options:ne})]})]}),(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-16 md:pt-[5px]`,children:[(0,W.jsx)(`span`,{className:`text-[16px] font-medium text-[var(--content-emphasised)]`,children:s(`customPlanModal.recap`)}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,W.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,W.jsx)(`span`,{className:`text-[24px] font-medium text-[var(--content-default)]`,children:ce(F.totalCents)}),F.deltaCents!=null&&F.deltaCents!==0&&F.previousTotalCents!=null&&(0,W.jsx)(`span`,{className:`text-[12px] font-medium ${F.deltaCents>0?`text-[var(--system-positive-strong)]`:`text-[var(--system-negative-strong)]`}`,children:s(`customPlanModal.comparedToPrevious`,{delta:pe(F.deltaCents),previous:be(F.previousTotalCents)})}),(0,W.jsx)(`span`,{className:`text-[11px] font-medium text-[var(--content-tertiary)]`,children:s(`customPlanModal.totalBilledMonthly`)})]}),(0,W.jsx)(`div`,{className:`h-px w-full bg-[var(--border-hover)]`}),(0,W.jsx)(`span`,{className:`text-[12px] font-medium text-[var(--content-tertiary)]`,children:s(`customPlanModal.yourSelection`)}),(0,W.jsx)(`ul`,{className:`flex flex-col gap-2`,children:F.rows.map(e=>(0,W.jsxs)(`li`,{className:`flex flex-col gap-2`,children:[e.previousLabel!=null&&(0,W.jsxs)(`div`,{className:`relative flex w-fit items-start gap-2`,children:[(0,W.jsx)(ae,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-disabled)]`,"aria-hidden":!0}),(0,W.jsx)(`s`,{className:`text-[14px] font-medium leading-[18px] text-[var(--content-disabled)] no-underline`,children:e.previousLabel}),(0,W.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute -left-1 right-0 top-[9px] h-px bg-[var(--content-disabled)]`})]}),(0,W.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,W.jsx)(ae,{className:`mt-0.5 h-4 w-4 shrink-0 ${e.changed?`text-[var(--system-positive-strong)]`:`text-[var(--content-secondary)]`}`,"aria-hidden":!0}),(0,W.jsx)(`span`,{className:`text-[14px] font-medium leading-[18px] text-[var(--content-secondary)]`,children:e.label})]})]},e.key))}),(0,W.jsx)(p,{variant:`primary`,fullWidth:!0,disabled:!ue||de||n,onClick:()=>{!ue||de||n||o({machineTier:ie.tier,storageTier:le.tier,creditTier:P===`__none__`?null:P})},children:s(`customPlanModal.continue`)}),(0,W.jsx)(p,{variant:`ghost`,fullWidth:!0,disabled:n,onClick:a,children:s(`customPlanModal.cancel`)})]})]})]})})})})}function ze({className:e,onConfigure:t,configureDisabled:n,isCurrent:r=!1,currentSummary:i}){let{t:o}=O(`settings`);return(0,W.jsxs)(`div`,{className:`flex w-full flex-col items-center gap-8 ${e??``}`,children:[(0,W.jsx)(`p`,{className:`text-center text-[20px] font-medium text-[var(--content-tertiary)]`,children:o(`customPlanRow.prompt`)}),(0,W.jsxs)(`div`,{className:`flex w-[840px] max-w-full flex-col items-start gap-4 rounded-2xl bg-[var(--surface-lift)] p-4 sm:flex-row sm:items-center sm:justify-between sm:gap-6`,children:[(0,W.jsxs)(`div`,{className:`flex min-w-0 items-center gap-4`,children:[(0,W.jsx)(`div`,{className:`flex shrink-0 items-center justify-center rounded-xl bg-[var(--content-disabled)] p-[14px]`,children:(0,W.jsx)(M,{className:`h-6 w-6 text-[var(--aux-white)]`,"aria-hidden":!0})}),(0,W.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,W.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[16px] font-medium text-[var(--content-emphasised)]`,children:o(`customPlanRow.title`)}),r?(0,W.jsx)(a,{className:`bg-[var(--feed-digest-weak)] text-[var(--content-default)]`,children:o(`customPlanRow.currentPlanTag`)}):null]}),(0,W.jsx)(`span`,{className:`text-[14px] font-medium text-[var(--content-tertiary)]`,children:i??o(`customPlanRow.genericDescriptor`)})]})]}),(0,W.jsx)(`div`,{className:`flex shrink-0 items-center gap-3`,children:(0,W.jsx)(p,{variant:`outlined`,onClick:t,disabled:n,children:o(`customPlanRow.configure`)})})]})]})}function Be({open:e,lostFeatures:t,viaPortal:n,pending:r,onCancel:a,onConfirm:o}){let{t:s}=O(`settings`),c=t.length>0;return(0,W.jsx)(f.Root,{open:e,onOpenChange:e=>{!e&&!r&&a()},children:(0,W.jsxs)(f.Content,{size:`md`,hideCloseButton:!0,children:[(0,W.jsx)(f.Header,{icon:A,children:(0,W.jsx)(f.Title,{children:s(`freeDowngradeConfirmModal.title`)})}),(0,W.jsxs)(f.Body,{children:[(0,W.jsx)(i,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:s(n?c?`freeDowngradeConfirmModal.bodyWithFeaturesPortal`:`freeDowngradeConfirmModal.bodyCancelOnlyPortal`:c?`freeDowngradeConfirmModal.bodyWithFeatures`:`freeDowngradeConfirmModal.bodyCancelOnly`)}),c?(0,W.jsx)(`ul`,{className:`mt-4 list-disc space-y-2 pl-5`,children:t.map(e=>(0,W.jsx)(`li`,{children:(0,W.jsx)(i,{as:`span`,variant:`body-medium-default`,children:e})},e))}):null]}),(0,W.jsxs)(f.Footer,{children:[(0,W.jsx)(p,{variant:`outlined`,onClick:a,disabled:r,children:s(`freeDowngradeConfirmModal.cancel`)}),(0,W.jsx)(p,{variant:`danger`,onClick:o,disabled:r,"data-testid":`confirm-free-downgrade-button`,children:s(`freeDowngradeConfirmModal.confirm`)})]})]})})}function Ve({tierKey:e,name:t,tagline:n,priceLabel:r,priceCaption:i,ctaLabel:o,features:s,recommended:c=!1,tone:l=`dark`,isCurrent:u,intent:d=`upgrade`,pending:f,onCta:m}){let{t:h}=O(`settings`),g=d===`downgrade`&&!u;return(0,W.jsxs)(`div`,{"data-theme":l,className:`flex w-full flex-col gap-3 rounded-2xl bg-[var(--surface-lift)] p-3 sm:gap-4 sm:p-4`,children:[(0,W.jsx)(I,{tier:e,size:50}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,W.jsxs)(`div`,{className:`flex h-8 items-center gap-2`,children:[(0,W.jsx)(`span`,{className:`text-[20px] font-medium text-[var(--content-emphasised)]`,children:t}),c&&!g&&!u?(0,W.jsx)(a,{className:`bg-[var(--feed-digest-weak)] text-[12px] font-semibold uppercase text-[var(--credits-accent)]`,children:h(`planColumnCard.recommended`)}):null]}),(0,W.jsx)(`p`,{className:`overflow-hidden text-[14px] font-medium leading-[18px] text-[var(--content-tertiary)] sm:h-9`,children:n})]}),(0,W.jsx)(`div`,{className:`h-px w-full bg-[var(--border-hover)]`}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,W.jsx)(`span`,{className:`text-[24px] font-medium text-[var(--content-default)]`,children:r}),(0,W.jsx)(`span`,{className:`text-[11px] font-medium text-[var(--content-tertiary)]`,children:i})]}),(0,W.jsx)(p,{variant:g?`outlined`:`primary`,fullWidth:!0,disabled:u||f,onClick:m,children:u?h(`planColumnCard.currentPlan`):o}),(0,W.jsx)(`div`,{className:`h-px w-full bg-[var(--border-hover)]`}),(0,W.jsxs)(`div`,{className:`flex flex-col gap-2 sm:gap-4`,children:[(0,W.jsx)(`span`,{className:`text-[12px] font-medium text-[var(--content-tertiary)]`,children:h(`planColumnCard.includes`)}),(0,W.jsx)(`ul`,{className:`flex flex-col gap-2`,children:s.map(e=>(0,W.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,W.jsx)(ae,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-secondary)]`,"aria-hidden":!0}),(0,W.jsx)(`span`,{className:`text-[14px] font-medium text-[var(--content-secondary)]`,children:e})]},e))})]})]})}var He=`#0A0A0B`,Ue=8e3,We={upgrade:`upgrade`,downgrade:`downgrade`,switch:`change`};h();function Ge(e,t){return t(`plansPage.featureComputer`,{machine:N(e)})}function Ke(e,t,n){return[Ge(e,n),n(`plansPage.featureStorage`,{gib:e.storage_gib}),n(`plansPage.featureUsage`,{name:e.name}),...t]}function qe(e,t){return Ee(e,t).join(` · `)}function Je(){let{t:e}=O(`settings`),i=k(),[a,o]=te(),f=ee(),h=n(),b=S({platformHostedOnly:!0}),ne=w(),re=v(),A=b===`full`&&ne,ae=b===`full`&&re,j=D({...m(),enabled:A}),M=D({...c(),enabled:A}),se=T(s()),{changePackage:ce,isPending:N}=Ce(),{changeTiers:F,isPending:pe,current:I,currentReady:L,currentKnown:R,primaryAssistantId:be}=ve({enabled:A});Te();let[Ee,ke]=(0,V.useState)(!1),[Ae,B]=(0,V.useState)(!1),[Me,H]=(0,V.useState)(!1),[U,Ne]=(0,V.useState)(null),[Fe,Ie]=(0,V.useState)(!1),[Le,G]=(0,V.useState)(void 0),K=(0,V.useRef)(!1),[Ge,Je]=(0,V.useState)(!1),Ye=(0,V.useRef)(!1),[Xe,Ze]=(0,V.useState)(null),q=j.data,J=M.data?.plans.find(e=>e.id===`pro`),Qe=J?.packages??[],$e=Qe.length>0,Y=q?.plan_id===`pro`,et=C(),tt=ue(be,A&&et&&Y&&R),nt=R?tt:void 0,X=q?q.plan_id===`base`?`free`:de(q.package)?q.package.key:null:null,{cancelSubscription:rt,isPending:it}=Se(),at=ge(q),ot=he(we(q)),st=l(),ct=new Set(M.data?.plans.find(e=>e.id===`base`)?.included_features??[]),lt=(J?.included_features??[]).filter(e=>!ct.has(e)),Z=Ee||N||it||ot.isPending,ut=(0,V.useMemo)(()=>!Y||I.storageTier==null?null:{machineTier:I.machineTier,storageTier:I.storageTier,creditTier:I.creditTier,hasPlatformFee:I.hasPlatformFee},[Y,I.machineTier,I.storageTier,I.creditTier,I.hasPlatformFee]),Q=a.get(_),dt=!A&&!ae,ft=A&&!M.isLoading&&!$e,$=dt||!(Q!=null&&!Ge)&&(j.isError||ft);(0,V.useEffect)(()=>{$&&i(dt?d.settings.usageBilling:`${d.settings.usageBilling}&adjust_plan`,{replace:!0})},[$,dt,i]);let pt=()=>{(window.history.state?.idx??0)>0?i(-1):i(d.settings.usageBilling)},mt=async n=>{ke(!0);try{let e=await se.mutateAsync({body:{...n,return_target:Oe()}});e.status===`redirect`&&e.checkout_url?(y(n.package?{kind:`package`,packageKey:n.package}:{kind:`custom`,machineTier:n.machine_tier??null,storageTier:n.storage_tier??null,creditTier:n.credit_tier??null}),x(f),g(e.checkout_url)):(await f.invalidateQueries({queryKey:r()}),await f.invalidateQueries({queryKey:u()}))}catch(n){t.error(_e(n,e(`plansPage.checkoutFailedToast`)))}finally{ke(!1)}},ht=(e,t)=>{if(q&&!Z){if(st){De(d.plans);return}if(Y){if(e===`free`){H(!0);return}let n=Qe.find(t=>t.key===e);if(!n||z(X,n.key)===`current`)return;if(!me(q)){i(`${d.settings.usageBilling}&adjust_plan`,{replace:t?.replaceOnBail===!0});return}Ne(n);return}e!==`free`&&mt({target_plan_id:`pro`,package:e,confirm:!0})}},gt=(0,V.useRef)(ht);(0,V.useEffect)(()=>{gt.current=ht}),(0,V.useEffect)(()=>{if(Q==null||K.current||$||!A||Ye.current)return;Ye.current=!0;let e=setTimeout(()=>{Je(!0)},Ue),t=()=>{clearTimeout(e),Je(!0)};Promise.all([f.refetchQueries({queryKey:r()}),f.refetchQueries({queryKey:u()})]).then(t,t)},[$,Q,A,f]),(0,V.useEffect)(()=>{Q==null||K.current||$||!A||!Ge||(K.current=!0,Y&&Q!==`free`&&Ze(Q),o(e=>{let t=new URLSearchParams(e);return t.delete(_),t},{replace:!0}))},[Ge,$,Q,A,Y,o]),(0,V.useEffect)(()=>{Xe==null||Q!=null||(Ze(null),gt.current(Xe,{replaceOnBail:!0}))},[Q,Xe]);let _t;if(q&&J&&$e){let n=Y&&X===null&&L&&I.storageGib!=null,r=n?qe(I,J):void 0,i=async()=>{if(!at){H(!1),ot.mutate({});return}await rt()&&H(!1)},a=()=>({creditTier:I.creditTier,fromSnapshot:{machineSize:nt?.machine_size??null,storageGib:nt?.provisioned_storage_gib??null}}),o=U?X===null?`switch`:z(X,U.key)===`downgrade`?`downgrade`:`upgrade`:`upgrade`,s=async()=>{if(!U)return;let n=U,r=a(),i=X===null||!L||!R||je(I.machineTier,n.machine_tier),s=await ce(n.key);if(!s)return;if(Ne(null),s.status===`no_op`){t.success(e(`plansPage.alreadyOnPlanToast`));return}let c=n.credit_tier??null;G({fromSnapshot:r.fromSnapshot,credits:c===r.creditTier?null:{fromTier:r.creditTier,toTier:c},direction:We[o],canLowerResources:i}),Ie(!0)},c=e=>mt({target_plan_id:`pro`,confirm:!0,machine_tier:e.machineTier,storage_tier:e.storageTier,credit_tier:e.creditTier}),l=async n=>{let r=a(),i=!R||je(I.machineTier,n.machineTier),o=await F(n,ut??void 0);o&&(B(!1),o.needsResize||o.creditChanged?(G({fromSnapshot:r.fromSnapshot,credits:o.creditChanged?{fromTier:r.creditTier,toTier:n.creditTier}:null,direction:`change`,canLowerResources:i}),Ie(!0)):t.success(e(`plansPage.planUpdatedToast`)))},u=()=>{if(!Z){if(st){De(d.plans);return}Y&&!L||B(!0)}},f=[...Qe].sort((e,t)=>P.indexOf(e.key)-P.indexOf(t.key)),p=fe(`free`),m=Y?`downgrade`:z(X,`free`),h=[e(`plansPage.freeFeatureSmallComputer`),e(`plansPage.freeFeatureStorage`,{gib:4}),e(`plansPage.freeFeaturePayAsYouGo`)];_t=(0,W.jsxs)(`div`,{className:`my-auto flex w-full flex-col items-center`,children:[(0,W.jsxs)(`header`,{className:`flex flex-col items-center gap-2 text-center`,children:[(0,W.jsx)(`h1`,{className:`text-[40px] text-[var(--content-emphasised)] sm:text-[60px]`,style:{fontFamily:`var(--font-serif)`,fontWeight:400,lineHeight:1.2,letterSpacing:`1.2px`},children:e(`plansPage.heading`)}),(0,W.jsx)(`p`,{className:`text-[20px] font-medium text-[var(--content-tertiary)]`,children:e(`plansPage.subheading`)})]}),(0,W.jsxs)(`div`,{className:`mt-6 grid w-full max-w-[1312px] grid-cols-1 items-start gap-4 sm:mt-10 sm:grid-cols-2 sm:gap-6 lg:grid-cols-4`,children:[(0,W.jsx)(Ve,{tierKey:`free`,name:`Base`,tagline:p?.tagline??``,priceLabel:e(`plansPage.freePriceLabel`),priceCaption:p?.priceCaption??e(`plansPage.foreverCaption`),ctaLabel:m===`downgrade`?e(`plansPage.downgradeTo`,{name:`Base`}):p?.cta??e(`plansPage.startFreeCta`),features:h,tone:`dark`,isCurrent:X===`free`,intent:m,pending:Z,onCta:()=>ht(`free`)}),f.map(t=>{let n=fe(t.key),r=z(X,t.key);return(0,W.jsx)(Ve,{tierKey:t.key,name:t.name,tagline:n?.tagline??``,priceLabel:ye(t.total_price_cents),priceCaption:n?.priceCaption??e(`plansPage.billedMonthlyCaption`),ctaLabel:r===`downgrade`?e(`plansPage.downgradeTo`,{name:t.name}):n?.cta??t.name,features:Ke(t,n?.extraFeatures??[],e),recommended:n?.recommended,tone:n?.recommended?`light`:`dark`,isCurrent:X===t.key,intent:r,pending:Z,onCta:()=>ht(t.key)},t.key)})]}),(0,W.jsx)(ze,{className:`mt-6 sm:mt-10`,onConfigure:u,configureDisabled:Y&&!L||Z,isCurrent:n,currentSummary:r}),(0,W.jsx)(Re,{open:Ae,proPlan:J,pending:Ee||pe,currentStorageGib:Y?I.storageGib:null,initialSelection:ut,onClose:()=>B(!1),onContinue:e=>{Y?l(e):c(e)}}),(0,W.jsx)(xe,{open:U!==null,relation:o,packageName:U?.name??``,targetPackage:U,pending:N,onCancel:()=>Ne(null),onConfirm:()=>void s()}),(0,W.jsx)(Be,{open:Me,lostFeatures:lt,viaPortal:!at,pending:it||ot.isPending,onCancel:()=>H(!1),onConfirm:()=>void i()}),(0,W.jsx)(le,{mode:`resize`,open:Fe,onClose:()=>{Ie(!1),G(void 0)},resizeContext:Le}),(0,W.jsx)(`p`,{className:`mt-6 text-center text-[12px] font-medium text-[var(--content-tertiary)] sm:mt-10`,children:(0,W.jsx)(E,{ns:`settings`,i18nKey:`plansPage.cancelAnytimeFooter`,components:{docsLink:(0,W.jsx)(`a`,{href:Pe,target:`_blank`,rel:`noopener noreferrer`,className:`text-[var(--content-default)] underline`})}})})]})}else _t=(0,W.jsx)(`div`,{className:`my-auto flex items-center justify-center`,children:(0,W.jsx)(oe,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`,"aria-label":e(`plansPage.loadingPlansAriaLabel`)})});return(0,W.jsxs)(`div`,{"data-theme":`dark`,className:`plans-takeover-canvas-enter relative h-full w-full overflow-y-auto`,style:{backgroundColor:He},children:[(0,W.jsx)(`div`,{className:`absolute left-8 z-10 [-webkit-app-region:no-drag]`,style:{top:h?`3rem`:`2rem`},children:(0,W.jsx)(p,{variant:`outlined`,leftIcon:(0,W.jsx)(ie,{className:`h-4 w-4`,"aria-hidden":!0}),onClick:pt,className:`[-webkit-app-region:no-drag]`,children:e(`plansPage.back`)})}),(0,W.jsx)(`div`,{className:`plans-takeover-content-enter flex min-h-full flex-col items-center px-4 pb-8 sm:px-6`,style:{paddingTop:h?`5rem`:`4rem`},children:_t})]})}function Ye(){return(0,W.jsx)(Je,{})}export{Ye as PlansPage};
|
package/dist/assets/{platform-loopback-page--ynU4rVO.js → platform-loopback-page-6AkvXRD1.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Eh as t,Kh as n,Tb as r,Zy as i,ib as a,uv as o,wp as s}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Eh as t,Kh as n,Tb as r,Zy as i,ib as a,uv as o,wp as s}from"./app-p4YU9h0P.js";import{j as c}from"./vendor-DYOeoIwg.js";import{_ as l,f as u,t as d,x as f}from"./react-B9IgSVeK.js";var p=e(f(),1),m=d(),h=`vellum:loopback:state`,g=`vellum:loopback:returnTo`;function _(){let{t:e}=c(`account`),[d]=l(),f=u(),[_,v]=(0,p.useState)(null);return(0,p.useEffect)(()=>{let c=d.get(`state`),l=d.get(`session_token`),u=sessionStorage.getItem(h),p=sessionStorage.getItem(g)||r.assistant;if(sessionStorage.removeItem(h),sessionStorage.removeItem(g),!c||c!==u){v(e(`authErrors.loopbackStateMismatch`));return}if(!l){v(e(`authErrors.loopbackNoToken`));return}if(!/^[a-zA-Z0-9]+$/.test(l)){v(e(`authErrors.loopbackInvalidToken`));return}(async()=>{if(!await a(l)){v(`Login failed: couldn't reach the local Vellum server to store the session. Please try again.`);return}await s.getState().initSession(),await o(!0);try{let e=await n();if(e.ok&&e.data.length>0){await i(e.data,t.getState().currentOrganizationId??void 0),f(r.assistant,{replace:!0});return}}catch{}f(p,{replace:!0})})()},[d,f,e]),_?(0,m.jsx)(`div`,{className:`flex min-h-screen items-center justify-center bg-[var(--surface-base)] text-[var(--content-default)]`,children:(0,m.jsxs)(`div`,{className:`max-w-md text-center`,children:[(0,m.jsx)(`p`,{className:`text-body-medium-default`,children:_}),(0,m.jsx)(`button`,{type:`button`,className:`mt-4 rounded-lg border border-[var(--border-disabled)] px-4 py-2 text-sm hover:bg-[var(--surface-lift)]`,onClick:()=>void f(r.welcome),children:e(`platformLoopbackPage.backToWelcome`)})]})}):(0,m.jsx)(`div`,{className:`flex min-h-screen items-center justify-center bg-[var(--surface-base)] text-[var(--content-default)]`,children:(0,m.jsx)(`p`,{className:`text-body-medium-default`,children:e(`platformLoopbackPage.completing`)})})}export{_ as PlatformLoopbackPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Tb as e,lb as t}from"./app-
|
|
1
|
+
import{Tb as e,lb as t}from"./app-p4YU9h0P.js";import{h as n,r,t as i}from"./react-B9IgSVeK.js";import{t as a}from"./plugins-surface-rSnCf7eu.js";var o=i();function s(){let i=t.use.version(),s=a(),{name:c}=n();return i===null?null:!s||!c?(0,o.jsx)(r,{to:e.superpowers,replace:!0}):(0,o.jsx)(r,{to:`${e.superpowers}?plugin=${encodeURIComponent(c)}`,replace:!0})}export{s as PluginDetailPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Tb as e}from"./app-
|
|
1
|
+
import{Tb as e}from"./app-p4YU9h0P.js";import{_ as t,r as n,t as r}from"./react-B9IgSVeK.js";var i=r();function a(){let[r]=t(),a=r.toString();return(0,i.jsx)(n,{to:`${e.superpowers}${a?`?${a}`:``}`,replace:!0})}export{a as PluginsPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{ih as e}from"./app-p4YU9h0P.js";var t=`0.10.3`;function n(){return e(t)}export{n as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Hx as e}from"./app-
|
|
1
|
+
import{Hx as e}from"./app-p4YU9h0P.js";import{j as t}from"./vendor-DYOeoIwg.js";import{t as n}from"./react-B9IgSVeK.js";import{Ja as r}from"./icons-QG1KAFmx.js";var i=r(`file-exclamation-point`,[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`,key:`1oefj6`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),a=n();function o({filename:n}){let{t:r}=t(`chat`);return(0,a.jsxs)(`div`,{role:`status`,className:`flex items-center gap-2.5 rounded-lg border border-[var(--border-element)] bg-[var(--surface-lift)] p-3`,children:[(0,a.jsx)(i,{"aria-hidden":`true`,className:`h-4 w-4 shrink-0 text-[var(--content-tertiary)]`}),(0,a.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,a.jsx)(e,{as:`span`,variant:`body-small-default`,className:`text-[var(--content-default)]`,children:r(`previewError.cannotPreview`)}),(0,a.jsx)(e,{as:`span`,variant:`label-small-default`,className:`truncate text-[var(--content-tertiary)]`,children:n})]})]})}export{o as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$m as t,Aa as n,Ab as r,B as i,Bx as a,Cx as o,Dh as s,H as c,Ix as l,Kx as u,Lc as d,Lu as f,Mb as p,Mx as m,Nb as h,Nx as g,Oa as _,Q_ as v,Rc as y,Ru as b,Sx as x,Tb as S,Tp as C,U as w,Ux as T,V as E,Vm as ee,Vx as D,Yh as O,_u as k,av as A,bp as j,ca as te,et as M,gu as ne,hb as re,iv as ie,jb as ae,jm as oe,ka as N,kb as P,kg as se,la as ce,lh as le,lm as ue,nv as de,ov as F,px as I,rv as fe,sa as pe,sv as me,sy as L,uh as he,um as ge,un as _e,vu as ve,wb as ye,wp as R,xp as z,yp as be}from"./app-DFXcEvsi.js";import{Jn as xe,N as Se,Zn as B,er as V,j as H}from"./vendor-DYOeoIwg.js";import{b as Ce,t as we,x as Te}from"./react-B9IgSVeK.js";import{Ki as U,Wi as W,Xt as Ee,dt as G,i as De,k as K,qn as Oe}from"./icons-QG1KAFmx.js";import{t as q}from"./detail-card-CGafPdBQ.js";import{t as J}from"./setting-row-Dqextrfj.js";import{t as ke}from"./settings-divider-D-IFmB_l.js";var Y=e(Te(),1),X=we(),Ae=[{id:`accessibility`,type:`system`,sourceKind:`accessibility`},{id:`screen`,type:`system`,sourceKind:`screen`,availableOnWindows:!0},{id:`microphone`,type:`system`,sourceKind:`microphone`,availableOnWindows:!0},{id:`speechRecognition`,type:`system`,sourceKind:`speechRecognition`,availableOnWindows:!0},{id:`notifications`,type:`system`,sourceKind:`notifications`,availableOnWindows:!0}],je=[{id:`notificationBadges`,type:`local`}];function Me(e,t,n){switch(e){case`accessibility`:return{label:t(`systemPermissionsCard.accessibilityLabel`),description:t(`systemPermissionsCard.accessibilityDescription`)};case`screen`:return{label:t(`systemPermissionsCard.screenLabel`),description:t(`systemPermissionsCard.screenDescription`)};case`microphone`:return{label:t(`systemPermissionsCard.microphoneLabel`),description:t(`systemPermissionsCard.microphoneDescription`)};case`speechRecognition`:return{label:t(`systemPermissionsCard.speechRecognitionLabel`),description:t(n?`systemPermissionsCard.speechRecognitionWindowsDescription`:`systemPermissionsCard.speechRecognitionDescription`)};case`notifications`:return{label:t(`systemPermissionsCard.notificationsLabel`),description:t(n?`systemPermissionsCard.notificationsWindowsDescription`:`systemPermissionsCard.notificationsDescription`)};default:throw Error(`Unsupported system permission row: ${e}`)}}function Ne(){let[e,t]=(0,Y.useState)(null);return{pendingKind:e,run:async(e,n)=>{t(e);try{await n()}catch{}finally{t(t=>t===e?null:t)}}}}function Pe(){let[e,t]=(0,Y.useState)(()=>P(`dockBadgesEnabled`,!0));return(0,Y.useEffect)(()=>h(`dockBadgesEnabled`,()=>{t(P(`dockBadgesEnabled`,!0))}),[]),[e,e=>{t(e),ae(`dockBadgesEnabled`,e),e||te(0)}]}function Fe({row:e,onToggle:t}){return(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,X.jsx)(m,{checked:e.checked,disabled:e.disabled,"aria-label":e.label,onChange:()=>t(e.id)}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`button`,{type:`button`,disabled:e.disabled,onClick:()=>t(e.id),className:u(`block w-full text-left`,e.disabled?`cursor-not-allowed`:`cursor-pointer`),children:[(0,X.jsx)(`span`,{className:`block text-[14px] font-semibold leading-[18px] text-[var(--content-emphasised)]`,children:e.label}),(0,X.jsx)(`span`,{className:`mt-1 block text-[13px] font-medium leading-[18px] text-[var(--content-tertiary)]`,children:e.description})]}),e.error&&(0,X.jsx)(`p`,{className:`mt-1 text-body-small-default text-[var(--system-negative-strong)]`,children:e.error})]})]})}function Ie(){return(0,X.jsx)(`span`,{"aria-hidden":`true`,className:`h-4 w-4 animate-spin rounded-full border-2 border-[var(--border-base)] border-t-[var(--content-tertiary)]`})}function Le({compact:e=!1}){let{t}=H(),{state:n,loading:r,error:i,supported:a,refresh:o}=ve(),{pendingKind:c,run:l}=Ne(),[u,d]=Pe(),f=se.use.pushAvatarSender(),p=L.use.selectedAssistantId(),m=L.use.assistants(),h=R.use.user(),g=s(),_=ee(),v=_===`windows`,y=(0,Y.useMemo)(()=>Ae.filter(e=>!v||e.availableOnWindows),[v]),b=(0,Y.useMemo)(()=>{let e=new Map;if(!n)return e;for(let t of y){let r=n[t.sourceKind];r&&r.status!==`not-applicable`&&e.set(t.id,{meta:t,item:r})}return e},[n,y]),x=(0,Y.useMemo)(()=>{let e=y.map(e=>{let n=b.get(e.id)?.item;if(!n)return null;let r=Me(e.id,t,v);return{id:e.id,label:r.label,description:r.description,checked:n.status===`granted`,disabled:c===e.id||n.status===`restricted`,...n.error?{error:n.error}:{}}}).filter(Boolean),n=pe()===`taskbar icon`?t(`systemPermissionsCard.taskbarIcon`):t(`systemPermissionsCard.dockIcon`),r=ce()?je.map(e=>({id:e.id,label:t(`systemPermissionsCard.notificationBadgesLabel`),description:t(`systemPermissionsCard.notificationBadgesDescription`,{surface:n}),checked:u,disabled:c===e.id})):[];return[...e,...r]},[v,u,c,b,t,y]);if(!a&&x.length===0)return null;let S=async(e,t)=>{if(t.status===`granted`||t.status===`denied`||!t.canRequest)await ne(e.sourceKind);else{let t=(()=>{if(e.sourceKind!==`notifications`||_!==`macos`||!f)return;let t=m.find(e=>e.id===p),n=ue(t,h?.kind===`platform`?h.id:null,g,re()??(globalThis.location===void 0?null:globalThis.location.href));if(!t||!n)return;let r=le(n,t.id,ge(t));if(!r)return;let i=he(r);if(!(!i?.name||!i.avatar))return{presentation:`assistant`,identity:r,sender:{id:r.nativeSenderId,name:i.name,avatarBase64:i.avatar.avatarBase64,avatarHash:i.avatar.avatarHash}}})();t?await k(e.sourceKind,t):await k(e.sourceKind)}await o()},C=e=>{let t=b.get(e);if(t){l(e,()=>S(t.meta,t.item));return}e===`notificationBadges`&&l(e,async()=>{d(!u)})};return(0,X.jsxs)(`section`,{className:`w-full rounded-[20px] border border-[var(--border-hover)] bg-[var(--surface-lift)] px-4 pb-3 pt-5`,children:[(0,X.jsx)(`h2`,{className:`text-[18px] font-semibold leading-[22px] text-[var(--content-emphasised)]`,children:t(`systemPermissionsCard.title`)}),r&&x.length===0?(0,X.jsxs)(`div`,{className:`mt-6 flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,X.jsx)(Ie,{}),t(`systemPermissionsCard.checking`)]}):(0,X.jsx)(`div`,{className:`mt-3 space-y-2`,children:x.map(e=>(0,X.jsx)(Fe,{row:e,onToggle:C},e.id))}),i&&(0,X.jsx)(`div`,{role:`alert`,className:`mt-6 rounded-md border border-[color-mix(in_srgb,var(--system-negative-strong)_25%,transparent)] bg-[var(--system-negative-weak)] p-3 text-body-medium-lighter text-[var(--content-secondary)]`,children:i})]})}function Re(){let{t:e}=H(`settings`),t=z({platformHostedOnly:!0}),n=be(),r=j(),i=V(),{data:a,isLoading:s,isError:c}=B({...d(),enabled:t===`full`&&n}),l=xe({mutationFn:async e=>{let{data:t}=await O({body:{access_consented:e},throwOnError:!0});return t},onSuccess:t=>{y(i,void 0,t),o.success(t?.access_consented?e(`accessConsentSetting.toastEnabled`):e(`accessConsentSetting.toastDisabled`))},onError:()=>{o.error(e(`accessConsentSetting.toastUpdateFailed`))}});if(t===`gated`)return null;let u=t===`full`&&r,f=a?.access_consented??!1,p=t!==`full`||!n||s||c||l.isPending;return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,X.jsxs)(`div`,{className:`flex-1`,children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`accessConsentSetting.title`)}),(0,X.jsx)(`p`,{className:`mt-1 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`accessConsentSetting.description`)}),t===`full`&&c&&(0,X.jsx)(`p`,{className:`mt-1 text-body-small-lighter text-[var(--system-negative-strong)]`,children:e(`accessConsentSetting.loadError`)})]}),(0,X.jsx)(`div`,{className:`flex items-center gap-2`,children:t===`disabled`?null:(0,X.jsxs)(X.Fragment,{children:[(l.isPending||u)&&(0,X.jsx)(Oe,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,X.jsx)(m,{checked:f,disabled:p,onChange:()=>l.mutate(!f)})]})})]}),t===`disabled`&&(0,X.jsx)(_e,{className:`mt-3`,children:e(`accessConsentSetting.loginNotice`)})]})}function ze(){let{t:e}=H(`settings`),n=de(),r=t(),[i,a]=(0,Y.useState)(()=>A()),[o,s]=(0,Y.useState)(null),[c,l]=(0,Y.useState)(!1);if((0,Y.useEffect)(()=>{if(!n)return;let e=!0;return ie().then(t=>{e&&s(t)}),()=>{e=!1}},[n]),!n||!o?.available)return null;let u=async()=>{l(!0);try{if(i)F(!1),await fe(),a(!1);else{let e=v();if(!e||!await me(e)){F(!1),a(!1);return}F(!0),a(!0)}}finally{l(!1)}};return(0,X.jsx)(q,{title:e(`biometricSettingsCard.title`),children:(0,X.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,X.jsxs)(`div`,{className:`flex-1`,children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`biometricSettingsCard.useForSignIn`,{label:o.label})}),(0,X.jsx)(`p`,{className:`mt-1 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(r?`biometricSettingsCard.descriptionWithPasscode`:`biometricSettingsCard.description`,{label:o.label})})]}),(0,X.jsx)(m,{checked:i,onChange:()=>void u(),disabled:c})]})})}var Z=[`youtube.com`,`youtu.be`,`vimeo.com`,`loom.com`];function Be(e){try{let t=JSON.parse(e);if(Array.isArray(t))return t.filter(e=>typeof e==`string`)}catch{}return[...Z]}function Ve(){return P(`mediaEmbedsEnabled`,!0)}function He(){let e=r(`mediaEmbedDomains`,``);return e?Be(e):[...Z]}function Ue(){let{t:e}=H(`settings`),[t,n]=(0,Y.useState)(()=>Ve()),[r,i]=(0,Y.useState)(()=>He()),[a,o]=(0,Y.useState)(!1),[s,c]=(0,Y.useState)(``),l=(0,Y.useMemo)(()=>s.trim().toLowerCase(),[s]),u=e=>{n(e),ae(`mediaEmbedsEnabled`,e)},d=e=>{i(e),p(`mediaEmbedDomains`,JSON.stringify(e))},f=()=>{if(l){if(r.includes(l)){c(``);return}d([...r,l]),c(``)}},h=e=>{d(r.filter(t=>t!==e))},_=()=>{d([...Z])},v=r.length===Z.length&&r.every((e,t)=>e===Z[t]);return(0,X.jsxs)(q,{title:e(`mediaEmbedsCard.title`),subtitle:e(`mediaEmbedsCard.subtitle`),children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,X.jsx)(`div`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e(`mediaEmbedsCard.autoToggle`)}),(0,X.jsx)(m,{checked:t,onChange:u})]}),t&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`mt-4`,children:(0,X.jsx)(ke,{})}),(0,X.jsxs)(T,{type:`button`,variant:`ghost`,onClick:()=>o(e=>!e),className:`mt-4 w-full justify-between px-3`,"aria-expanded":a,children:[(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[a?(0,X.jsx)(U,{className:`h-4 w-4`,"aria-hidden":!0}):(0,X.jsx)(W,{className:`h-4 w-4`,"aria-hidden":!0}),e(`mediaEmbedsCard.allowlist`)]}),(0,X.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`mediaEmbedsCard.domainCount`,{count:r.length})})]}),a&&(0,X.jsxs)(`div`,{className:`mt-3 space-y-3`,children:[(0,X.jsxs)(`div`,{className:`flex items-end gap-2`,children:[(0,X.jsx)(g,{label:e(`mediaEmbedsCard.addDomainLabel`),type:`text`,value:s,onChange:e=>c(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),f())},placeholder:e(`mediaEmbedsCard.addDomainPlaceholder`),fullWidth:!0,wrapperClassName:`flex-1`}),(0,X.jsx)(T,{variant:`primary`,size:`compact`,onClick:f,disabled:!l,children:e(`mediaEmbedsCard.add`)})]}),r.length>0&&(0,X.jsx)(`div`,{className:`flex justify-end`,children:(0,X.jsx)(T,{type:`button`,variant:`ghost`,size:`compact`,onClick:_,disabled:v,tintColor:`var(--content-tertiary)`,children:e(`mediaEmbedsCard.resetDefaults`)})}),r.length>0&&(0,X.jsx)(`ul`,{className:`space-y-2`,children:r.map(t=>(0,X.jsxs)(`li`,{className:`flex items-center justify-between rounded-md border border-[var(--border-base)] px-3 py-2 text-body-medium-lighter`,children:[(0,X.jsx)(`span`,{className:`font-mono text-[var(--content-default)]`,children:t}),(0,X.jsx)(T,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,X.jsx)(K,{}),onClick:()=>h(t),"aria-label":e(`mediaEmbedsCard.removeDomainAria`,{domain:t})})]},t))})]})]})]})}function We(){return(0,X.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`})}function Ge(){let{t:e}=H(`settings`),t=M(),n=(0,Y.useMemo)(()=>i.map(t=>({value:t.id,label:e(t.labelKey,t.label),icon:(0,X.jsx)(t.icon,{className:`h-3.5 w-3.5`})})),[e]),r=V(),{data:a,isError:o}=B({queryKey:[`thresholds`,t],queryFn:()=>c(t),staleTime:3e4}),[s,l]=(0,Y.useState)(`relaxed`),[u,d]=(0,Y.useState)(`conservative`),[f,p]=(0,Y.useState)(`strict`),[m,h]=(0,Y.useState)(!1),g=(0,Y.useRef)(!1),[_,v]=(0,Y.useState)(!1),y=(0,Y.useRef)(null),b=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{!a||g.current||(l(E(a.interactive).id),d(E(a.autonomous).id),p(E(a.headless).id),v(!0))},[a]),(0,Y.useEffect)(()=>()=>{y.current!==null&&(clearTimeout(y.current),y.current=null,b.current?.(),b.current=null)},[]);let x=(0,Y.useCallback)((e,n,a)=>{if(!t||!_)return;let o=i.find(t=>t.id===e)?.riskThreshold,s=i.find(e=>e.id===n)?.riskThreshold,c=i.find(e=>e.id===a)?.riskThreshold;!o||!s||!c||w(t,{interactive:o,autonomous:s,headless:c}).then(()=>{r.invalidateQueries({queryKey:[`thresholds`,t]})}).catch(()=>{})},[t,_,r]),S=(0,Y.useCallback)((e,t,n)=>{y.current!==null&&clearTimeout(y.current),b.current=()=>x(e,t,n),y.current=setTimeout(()=>{b.current?.(),y.current=null,b.current=null},500)},[x]),C=(0,Y.useCallback)(e=>{g.current=!0,l(e),S(e,u,f)},[u,f,S]),T=(0,Y.useCallback)(e=>{g.current=!0,d(e),S(s,e,f)},[s,f,S]),ee=(0,Y.useCallback)(e=>{g.current=!0,p(e),S(s,u,e)},[s,u,S]),O=i.find(e=>e.id===s),k=i.find(e=>e.id===u),A=i.find(e=>e.id===f),j=!t||!_;return(0,X.jsxs)(D,{children:[(0,X.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:e(`riskToleranceSettings.title`)}),(0,X.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`riskToleranceSettings.description`)}),o&&(0,X.jsx)(`p`,{className:`mt-2 text-body-small-lighter text-[var(--system-negative-strong)]`,children:e(`riskToleranceSettings.loadError`)}),(0,X.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`riskToleranceSettings.conversationsTitle`)}),(0,X.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`riskToleranceSettings.conversationsDescription`)}),(0,X.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,X.jsx)(I,{value:s,onChange:C,options:n,disabled:j})}),O&&(0,X.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:e(O.descriptionKey,O.description)})]}),(0,X.jsx)(We,{}),(0,X.jsxs)(`div`,{children:[(0,X.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,X.jsx)(U,{className:`h-4 w-4`}):(0,X.jsx)(W,{className:`h-4 w-4`}),(0,X.jsx)(`span`,{className:`text-body-medium-default`,children:e(`riskToleranceSettings.advanced`)})]}),(0,X.jsxs)(`div`,{className:m?`mt-4 space-y-4`:`hidden`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`riskToleranceSettings.backgroundTitle`)}),(0,X.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`riskToleranceSettings.backgroundDescription`)}),(0,X.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,X.jsx)(I,{value:u,onChange:T,options:n,disabled:j})}),k&&(0,X.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:e(k.descriptionKey,k.description)})]}),(0,X.jsx)(We,{}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`riskToleranceSettings.headlessTitle`)}),(0,X.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`riskToleranceSettings.headlessDescription`)}),(0,X.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,X.jsx)(I,{value:f,onChange:ee,options:n,disabled:j})}),A&&(0,X.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:e(A.descriptionKey,A.description)})]})]})]})]})]})}var Q=e(Ce(),1),Ke=[`bash`,`file_read`,`file_write`,`file_edit`,`web_fetch`,`skill_load`];function qe({assistantId:e,existingRule:t,onClose:r,onSaved:i}){let{t:o}=H(`settings`),s=(0,Y.useRef)(null),[c,l]=(0,Y.useState)(t.tool),[u,d]=(0,Y.useState)(t.pattern),[f,p]=(0,Y.useState)(t.risk),[m,h]=(0,Y.useState)(t.description??``),[_,v]=(0,Y.useState)(!1),[y,b]=(0,Y.useState)(null),x=[{value:`low`,label:o(`trustRuleFormModal.riskLow`),description:o(`trustRuleFormModal.riskLowDescription`)},{value:`medium`,label:o(`trustRuleFormModal.riskMedium`),description:o(`trustRuleFormModal.riskMediumDescription`)},{value:`high`,label:o(`trustRuleFormModal.riskHigh`),description:o(`trustRuleFormModal.riskHighDescription`)}],S=u.trim(),C=S.length>0&&!_,w=o(`trustRuleFormModal.defaultDescription`,{tool:c,pattern:S||o(`trustRuleFormModal.patternFallback`)}),T=(0,Y.useCallback)(async r=>{if(r.preventDefault(),!C)return;let a=m.trim()||w;v(!0),b(null);try{await n(e,t.id,{risk:f,description:a}),i()}catch(e){b(e instanceof Error?e.message:o(`trustRuleFormModal.saveFailed`))}finally{v(!1)}},[e,C,w,m,t,i,f,o]);return(0,Q.createPortal)((0,X.jsx)(`div`,{ref:s,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,Y.useCallback)(e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),r())},[r]),onClick:(0,Y.useCallback)(e=>{e.target===s.current&&r()},[r]),children:(0,X.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,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[var(--border-base)] px-6 py-4`,children:[(0,X.jsx)(`h2`,{id:`trust-rule-form-title`,className:`text-title-medium text-[var(--content-default)]`,children:o(`trustRuleFormModal.title`)}),(0,X.jsx)(`button`,{type:`button`,onClick:r,"aria-label":o(`trustRuleFormModal.closeAriaLabel`),className:`rounded-lg p-1.5 text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-base)] hover:text-[var(--content-default)]`,children:(0,X.jsx)(De,{className:`h-4 w-4`})})]}),(0,X.jsxs)(`form`,{onSubmit:e=>void T(e),className:`min-h-0 flex-1 space-y-4 overflow-y-auto px-6 py-4`,children:[y&&(0,X.jsx)(a,{tone:`error`,children:y}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{htmlFor:`trust-rule-tool`,className:`block text-body-medium-default text-[var(--content-default)]`,children:o(`trustRuleFormModal.toolLabel`)}),(0,X.jsx)(`div`,{className:`mt-1`,children:(0,X.jsx)(I,{value:c,onChange:l,disabled:!0,options:Ke.map(e=>({value:e,label:e}))})})]}),(0,X.jsx)(g,{label:o(`trustRuleFormModal.patternLabel`),type:`text`,value:u,onChange:e=>d(e.target.value),placeholder:o(`trustRuleFormModal.patternPlaceholder`),disabled:!0}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`span`,{className:`block text-body-medium-default text-[var(--content-default)]`,children:o(`trustRuleFormModal.riskLevelLabel`)}),(0,X.jsx)(`div`,{className:`mt-2 flex gap-2`,children:x.map(e=>(0,X.jsxs)(`button`,{type:`button`,onClick:()=>p(e.value),className:`flex-1 rounded-lg border px-3 py-2 text-left text-body-small-default transition-colors ${f===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,X.jsx)(`div`,{children:e.label}),(0,X.jsx)(`div`,{className:`mt-0.5 text-label-medium-default leading-tight opacity-70`,children:e.description})]},e.value))})]}),(0,X.jsx)(g,{label:o(`trustRuleFormModal.descriptionLabel`),type:`text`,value:m,onChange:e=>h(e.target.value),placeholder:w}),(0,X.jsxs)(`div`,{className:`flex justify-end gap-2 pt-2`,children:[(0,X.jsx)(`button`,{type:`button`,onClick:r,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:o(`trustRuleFormModal.cancel`)}),(0,X.jsx)(`button`,{type:`submit`,disabled:!C,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:o(_?`trustRuleFormModal.saving`:`trustRuleFormModal.save`)})]})]})]})}),document.body)}function Je(e){return e.origin===`default`&&!e.userModified}function Ye(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 Xe(e){switch(e){case`low`:return`positive`;case`medium`:return`warning`;case`high`:return`negative`}}function Ze({assistantId:e,onClose:t}){let{t:n}=H(`settings`),r=(0,Y.useRef)(null),[i,o]=(0,Y.useState)([]),[s,c]=(0,Y.useState)(!0),[u,d]=(0,Y.useState)(null),[f,p]=(0,Y.useState)(null),[h,g]=(0,Y.useState)(null),[v,y]=(0,Y.useState)(!1),b=(0,Y.useCallback)(e=>{switch(e){case`low`:return n(`trustRulesModal.riskLow`);case`medium`:return n(`trustRulesModal.riskMedium`);case`high`:return n(`trustRulesModal.riskHigh`)}},[n]),S=(0,Y.useCallback)(async t=>{if(t){let[t,n]=await Promise.all([N(e),N(e,{origin:`default`})]);return Ye(t,n)}return N(e)},[e]),C=(0,Y.useCallback)(async()=>{c(!0);try{o(await S(v)),d(null)}catch(e){d(e instanceof Error?e.message:n(`trustRulesModal.loadErrorFallback`))}finally{c(!1)}},[S,v,n]);(0,Y.useEffect)(()=>{let e=!1;return(async()=>{c(!0);try{let t=await S(v);e||(o(t),d(null))}catch(t){e||d(t instanceof Error?t.message:n(`trustRulesModal.loadErrorFallback`))}finally{e||c(!1)}})(),()=>{e=!0}},[S,v,n]);let w=(0,Y.useCallback)(async()=>{if(h)try{await _(e,h.id),C()}catch(e){d(e instanceof Error?e.message:n(`trustRulesModal.deleteErrorFallback`))}finally{g(null)}},[e,h,C,n]);return(0,Q.createPortal)((0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{ref:r,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,Y.useCallback)(e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),t())},[t]),onClick:(0,Y.useCallback)(e=>{e.target===r.current&&t()},[t]),children:(0,X.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,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[var(--border-base)] px-6 py-4`,children:[(0,X.jsx)(`h2`,{id:`trust-rules-title`,className:`text-title-medium text-[var(--content-default)]`,children:n(`trustRulesModal.title`)}),(0,X.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,X.jsx)(m,{checked:v,onChange:y,label:n(`trustRulesModal.showAllDefaults`)}),(0,X.jsx)(T,{variant:`outlined`,onClick:t,children:n(`trustRulesModal.done`)})]})]}),(0,X.jsxs)(`div`,{className:`flex-1 overflow-y-auto px-6 py-4`,children:[u&&(0,X.jsx)(`div`,{className:`mb-3`,children:(0,X.jsx)(a,{tone:`error`,children:u})}),s?(0,X.jsx)(`div`,{className:`flex h-48 items-center justify-center text-body-medium-lighter text-[var(--content-tertiary)]`,children:n(`trustRulesModal.loading`)}):i.length===0?(0,X.jsxs)(`div`,{className:`flex h-48 flex-col items-center justify-center gap-2 px-6 text-[var(--content-tertiary)]`,children:[(0,X.jsx)(G,{className:`h-8 w-8`}),(0,X.jsx)(`p`,{className:`max-w-xs text-center text-body-medium-lighter`,children:n(`trustRulesModal.empty`)})]}):(0,X.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)]`,children:i.map(e=>{let t=Je(e);return(0,X.jsxs)(`li`,{className:`flex items-start gap-3 py-3`,children:[(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e.tool}),(0,X.jsx)(l,{tone:Xe(e.risk),children:b(e.risk)}),e.origin===`default`&&(0,X.jsx)(l,{tone:`neutral`,children:n(`trustRulesModal.defaultTag`)}),e.userModified&&(0,X.jsx)(l,{tone:`warning`,children:n(`trustRulesModal.modifiedTag`)})]}),(0,X.jsx)(`div`,{className:`mt-1 truncate font-mono text-body-small-default text-[var(--content-secondary)]`,children:e.pattern}),e.description&&(0,X.jsx)(`div`,{className:`mt-0.5 truncate text-body-small-default text-[var(--content-tertiary)]`,children:e.description})]}),(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,X.jsx)(`button`,{type:`button`,"aria-label":n(`trustRulesModal.editRuleAria`,{tool:e.tool}),onClick:()=>p(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,X.jsx)(Ee,{className:`h-4 w-4`})}),(!t||e.userModified)&&(0,X.jsx)(T,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,X.jsx)(K,{className:`h-4 w-4`}),"aria-label":n(`trustRulesModal.deleteRuleAria`,{tool:e.tool}),onClick:()=>g(e)})]})]},e.id)})})]})]})}),f&&(0,X.jsx)(qe,{assistantId:e,existingRule:f,onClose:()=>p(null),onSaved:()=>{p(null),C()}}),(0,X.jsx)(x,{open:h!==null,title:n(`trustRulesModal.deleteTitle`),message:h?n(`trustRulesModal.deleteMessage`,{risk:b(h.risk).toLowerCase(),tool:h.tool,pattern:h.pattern}):``,confirmLabel:n(`trustRulesModal.delete`),cancelLabel:n(`trustRulesModal.cancel`),destructive:!0,onConfirm:()=>void w(),onCancel:()=>g(null)})]}),document.body)}function Qe(){let{t:e}=H(`settings`),t=M(),[n,r]=(0,Y.useState)(!1);return(0,X.jsxs)(D,{children:[(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,X.jsx)(G,{className:`mt-0.5 h-5 w-5 shrink-0 text-[var(--content-secondary)]`}),(0,X.jsxs)(`div`,{className:`flex-1`,children:[(0,X.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:e(`trustRules.title`)}),(0,X.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`trustRules.description`)})]}),(0,X.jsx)(T,{variant:`outlined`,onClick:()=>r(!0),children:e(`trustRules.manage`)})]}),n&&(0,X.jsx)(Ze,{assistantId:t,onClose:()=>r(!1)})]})}var $e=[{value:`dontRetain`,labelKey:`privacyPage.retentionDontRetain`},{value:`oneHour`,labelKey:`privacyPage.retentionOneHour`},{value:`oneDay`,labelKey:`privacyPage.retentionOneDay`},{value:`sevenDays`,labelKey:`privacyPage.retentionSevenDays`},{value:`thirtyDays`,labelKey:`privacyPage.retentionThirtyDays`},{value:`ninetyDays`,labelKey:`privacyPage.retentionNinetyDays`},{value:`keepForever`,labelKey:`privacyPage.retentionKeepForever`}],et=`thirtyDays`;function $(){return(0,X.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`})}function tt(){let{t:e}=H(`settings`),t=z({platformHostedOnly:!0}),n=C(),i=n,a=R.use.user()?.id??null,[o]=f(),[s]=b(),c=o??!0,l=s??!0,[u,d]=(0,Y.useState)(()=>r(`llmLogRetention`,et)),m=(0,Y.useMemo)(()=>$e.map(t=>({value:t.value,label:e(t.labelKey)})),[e]);return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsx)(ze,{}),(0,X.jsx)(Le,{}),(0,X.jsx)(Qe,{}),(0,X.jsx)(Ge,{}),(0,X.jsx)(Ue,{}),(0,X.jsx)(q,{title:e(`privacyPage.title`),subtitle:n?(0,X.jsx)(Se,{ns:`settings`,i18nKey:`privacyPage.subtitleWithPolicy`,components:{policyLink:(0,X.jsx)(`a`,{href:ye(S.docs.legal.privacyPolicy),target:`_blank`,rel:`noreferrer`,className:`underline`})}}):void 0,children:(0,X.jsxs)(`div`,{className:`space-y-4`,children:[i&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(J,{label:e(`privacyPage.shareAnalyticsLabel`),helperText:e(`privacyPage.shareAnalyticsHelper`),checked:c,onChange:()=>{oe(`share_analytics`,!c,{userId:a,hasPlatformSession:n})},variant:`toggle-trailing`}),(0,X.jsx)($,{}),(0,X.jsx)(J,{label:e(`privacyPage.shareDiagnosticsLabel`),helperText:e(`privacyPage.shareDiagnosticsHelper`),checked:l,onChange:()=>{oe(`share_diagnostics`,!l,{userId:a,hasPlatformSession:n})},variant:`toggle-trailing`}),(0,X.jsx)($,{})]}),(0,X.jsx)(Re,{}),t!==`gated`&&(0,X.jsx)($,{}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{htmlFor:`llm-log-retention`,className:`block text-body-medium-default text-[var(--content-default)]`,children:e(`privacyPage.llmLogRetentionLabel`)}),(0,X.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,X.jsx)(I,{value:u,onChange:e=>{d(e),p(`llmLogRetention`,e)},options:m})}),(0,X.jsx)(`p`,{className:`mt-2 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`privacyPage.llmLogRetentionDescription`)})]})]})})]})}export{tt as PrivacyPage};
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$m as t,Aa as n,Ab as r,B as i,Bx as a,Cx as o,Dh as s,H as c,Ix as l,Kx as u,Lc as d,Lu as f,Mb as p,Mx as m,Nb as h,Nx as g,Oa as _,Q_ as v,Rc as y,Ru as b,Sx as x,Tb as S,Tp as C,U as w,Ux as T,V as E,Vm as ee,Vx as D,Yh as O,_u as k,av as A,bp as j,ca as te,et as M,gu as ne,hb as re,iv as ie,jb as ae,jm as oe,ka as N,kb as P,kg as se,la as ce,lh as le,lm as ue,nv as de,ov as F,px as I,rv as fe,sa as pe,sv as me,sy as L,uh as he,um as ge,un as _e,vu as ve,wb as ye,wp as R,xp as z,yp as be}from"./app-p4YU9h0P.js";import{Jn as xe,N as Se,Zn as B,er as V,j as H}from"./vendor-DYOeoIwg.js";import{b as Ce,t as we,x as Te}from"./react-B9IgSVeK.js";import{Ki as U,Wi as W,Xt as Ee,dt as G,i as De,k as K,qn as Oe}from"./icons-QG1KAFmx.js";import{t as q}from"./detail-card-BpqiAUnN.js";import{t as J}from"./setting-row-Dz9SXznO.js";import{t as ke}from"./settings-divider-C1j4hJMG.js";var Y=e(Te(),1),X=we(),Ae=[{id:`accessibility`,type:`system`,sourceKind:`accessibility`},{id:`screen`,type:`system`,sourceKind:`screen`,availableOnWindows:!0},{id:`microphone`,type:`system`,sourceKind:`microphone`,availableOnWindows:!0},{id:`speechRecognition`,type:`system`,sourceKind:`speechRecognition`,availableOnWindows:!0},{id:`notifications`,type:`system`,sourceKind:`notifications`,availableOnWindows:!0}],je=[{id:`notificationBadges`,type:`local`}];function Me(e,t,n){switch(e){case`accessibility`:return{label:t(`systemPermissionsCard.accessibilityLabel`),description:t(`systemPermissionsCard.accessibilityDescription`)};case`screen`:return{label:t(`systemPermissionsCard.screenLabel`),description:t(`systemPermissionsCard.screenDescription`)};case`microphone`:return{label:t(`systemPermissionsCard.microphoneLabel`),description:t(`systemPermissionsCard.microphoneDescription`)};case`speechRecognition`:return{label:t(`systemPermissionsCard.speechRecognitionLabel`),description:t(n?`systemPermissionsCard.speechRecognitionWindowsDescription`:`systemPermissionsCard.speechRecognitionDescription`)};case`notifications`:return{label:t(`systemPermissionsCard.notificationsLabel`),description:t(n?`systemPermissionsCard.notificationsWindowsDescription`:`systemPermissionsCard.notificationsDescription`)};default:throw Error(`Unsupported system permission row: ${e}`)}}function Ne(){let[e,t]=(0,Y.useState)(null);return{pendingKind:e,run:async(e,n)=>{t(e);try{await n()}catch{}finally{t(t=>t===e?null:t)}}}}function Pe(){let[e,t]=(0,Y.useState)(()=>P(`dockBadgesEnabled`,!0));return(0,Y.useEffect)(()=>h(`dockBadgesEnabled`,()=>{t(P(`dockBadgesEnabled`,!0))}),[]),[e,e=>{t(e),ae(`dockBadgesEnabled`,e),e||te(0)}]}function Fe({row:e,onToggle:t}){return(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,X.jsx)(m,{checked:e.checked,disabled:e.disabled,"aria-label":e.label,onChange:()=>t(e.id)}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`button`,{type:`button`,disabled:e.disabled,onClick:()=>t(e.id),className:u(`block w-full text-left`,e.disabled?`cursor-not-allowed`:`cursor-pointer`),children:[(0,X.jsx)(`span`,{className:`block text-[14px] font-semibold leading-[18px] text-[var(--content-emphasised)]`,children:e.label}),(0,X.jsx)(`span`,{className:`mt-1 block text-[13px] font-medium leading-[18px] text-[var(--content-tertiary)]`,children:e.description})]}),e.error&&(0,X.jsx)(`p`,{className:`mt-1 text-body-small-default text-[var(--system-negative-strong)]`,children:e.error})]})]})}function Ie(){return(0,X.jsx)(`span`,{"aria-hidden":`true`,className:`h-4 w-4 animate-spin rounded-full border-2 border-[var(--border-base)] border-t-[var(--content-tertiary)]`})}function Le({compact:e=!1}){let{t}=H(),{state:n,loading:r,error:i,supported:a,refresh:o}=ve(),{pendingKind:c,run:l}=Ne(),[u,d]=Pe(),f=se.use.pushAvatarSender(),p=L.use.selectedAssistantId(),m=L.use.assistants(),h=R.use.user(),g=s(),_=ee(),v=_===`windows`,y=(0,Y.useMemo)(()=>Ae.filter(e=>!v||e.availableOnWindows),[v]),b=(0,Y.useMemo)(()=>{let e=new Map;if(!n)return e;for(let t of y){let r=n[t.sourceKind];r&&r.status!==`not-applicable`&&e.set(t.id,{meta:t,item:r})}return e},[n,y]),x=(0,Y.useMemo)(()=>{let e=y.map(e=>{let n=b.get(e.id)?.item;if(!n)return null;let r=Me(e.id,t,v);return{id:e.id,label:r.label,description:r.description,checked:n.status===`granted`,disabled:c===e.id||n.status===`restricted`,...n.error?{error:n.error}:{}}}).filter(Boolean),n=pe()===`taskbar icon`?t(`systemPermissionsCard.taskbarIcon`):t(`systemPermissionsCard.dockIcon`),r=ce()?je.map(e=>({id:e.id,label:t(`systemPermissionsCard.notificationBadgesLabel`),description:t(`systemPermissionsCard.notificationBadgesDescription`,{surface:n}),checked:u,disabled:c===e.id})):[];return[...e,...r]},[v,u,c,b,t,y]);if(!a&&x.length===0)return null;let S=async(e,t)=>{if(t.status===`granted`||t.status===`denied`||!t.canRequest)await ne(e.sourceKind);else{let t=(()=>{if(e.sourceKind!==`notifications`||_!==`macos`||!f)return;let t=m.find(e=>e.id===p),n=ue(t,h?.kind===`platform`?h.id:null,g,re()??(globalThis.location===void 0?null:globalThis.location.href));if(!t||!n)return;let r=le(n,t.id,ge(t));if(!r)return;let i=he(r);if(!(!i?.name||!i.avatar))return{presentation:`assistant`,identity:r,sender:{id:r.nativeSenderId,name:i.name,avatarBase64:i.avatar.avatarBase64,avatarHash:i.avatar.avatarHash}}})();t?await k(e.sourceKind,t):await k(e.sourceKind)}await o()},C=e=>{let t=b.get(e);if(t){l(e,()=>S(t.meta,t.item));return}e===`notificationBadges`&&l(e,async()=>{d(!u)})};return(0,X.jsxs)(`section`,{className:`w-full rounded-[20px] border border-[var(--border-hover)] bg-[var(--surface-lift)] px-4 pb-3 pt-5`,children:[(0,X.jsx)(`h2`,{className:`text-[18px] font-semibold leading-[22px] text-[var(--content-emphasised)]`,children:t(`systemPermissionsCard.title`)}),r&&x.length===0?(0,X.jsxs)(`div`,{className:`mt-6 flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,X.jsx)(Ie,{}),t(`systemPermissionsCard.checking`)]}):(0,X.jsx)(`div`,{className:`mt-3 space-y-2`,children:x.map(e=>(0,X.jsx)(Fe,{row:e,onToggle:C},e.id))}),i&&(0,X.jsx)(`div`,{role:`alert`,className:`mt-6 rounded-md border border-[color-mix(in_srgb,var(--system-negative-strong)_25%,transparent)] bg-[var(--system-negative-weak)] p-3 text-body-medium-lighter text-[var(--content-secondary)]`,children:i})]})}function Re(){let{t:e}=H(`settings`),t=z({platformHostedOnly:!0}),n=be(),r=j(),i=V(),{data:a,isLoading:s,isError:c}=B({...d(),enabled:t===`full`&&n}),l=xe({mutationFn:async e=>{let{data:t}=await O({body:{access_consented:e},throwOnError:!0});return t},onSuccess:t=>{y(i,void 0,t),o.success(t?.access_consented?e(`accessConsentSetting.toastEnabled`):e(`accessConsentSetting.toastDisabled`))},onError:()=>{o.error(e(`accessConsentSetting.toastUpdateFailed`))}});if(t===`gated`)return null;let u=t===`full`&&r,f=a?.access_consented??!1,p=t!==`full`||!n||s||c||l.isPending;return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,X.jsxs)(`div`,{className:`flex-1`,children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`accessConsentSetting.title`)}),(0,X.jsx)(`p`,{className:`mt-1 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`accessConsentSetting.description`)}),t===`full`&&c&&(0,X.jsx)(`p`,{className:`mt-1 text-body-small-lighter text-[var(--system-negative-strong)]`,children:e(`accessConsentSetting.loadError`)})]}),(0,X.jsx)(`div`,{className:`flex items-center gap-2`,children:t===`disabled`?null:(0,X.jsxs)(X.Fragment,{children:[(l.isPending||u)&&(0,X.jsx)(Oe,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,X.jsx)(m,{checked:f,disabled:p,onChange:()=>l.mutate(!f)})]})})]}),t===`disabled`&&(0,X.jsx)(_e,{className:`mt-3`,children:e(`accessConsentSetting.loginNotice`)})]})}function ze(){let{t:e}=H(`settings`),n=de(),r=t(),[i,a]=(0,Y.useState)(()=>A()),[o,s]=(0,Y.useState)(null),[c,l]=(0,Y.useState)(!1);if((0,Y.useEffect)(()=>{if(!n)return;let e=!0;return ie().then(t=>{e&&s(t)}),()=>{e=!1}},[n]),!n||!o?.available)return null;let u=async()=>{l(!0);try{if(i)F(!1),await fe(),a(!1);else{let e=v();if(!e||!await me(e)){F(!1),a(!1);return}F(!0),a(!0)}}finally{l(!1)}};return(0,X.jsx)(q,{title:e(`biometricSettingsCard.title`),children:(0,X.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,X.jsxs)(`div`,{className:`flex-1`,children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`biometricSettingsCard.useForSignIn`,{label:o.label})}),(0,X.jsx)(`p`,{className:`mt-1 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(r?`biometricSettingsCard.descriptionWithPasscode`:`biometricSettingsCard.description`,{label:o.label})})]}),(0,X.jsx)(m,{checked:i,onChange:()=>void u(),disabled:c})]})})}var Z=[`youtube.com`,`youtu.be`,`vimeo.com`,`loom.com`];function Be(e){try{let t=JSON.parse(e);if(Array.isArray(t))return t.filter(e=>typeof e==`string`)}catch{}return[...Z]}function Ve(){return P(`mediaEmbedsEnabled`,!0)}function He(){let e=r(`mediaEmbedDomains`,``);return e?Be(e):[...Z]}function Ue(){let{t:e}=H(`settings`),[t,n]=(0,Y.useState)(()=>Ve()),[r,i]=(0,Y.useState)(()=>He()),[a,o]=(0,Y.useState)(!1),[s,c]=(0,Y.useState)(``),l=(0,Y.useMemo)(()=>s.trim().toLowerCase(),[s]),u=e=>{n(e),ae(`mediaEmbedsEnabled`,e)},d=e=>{i(e),p(`mediaEmbedDomains`,JSON.stringify(e))},f=()=>{if(l){if(r.includes(l)){c(``);return}d([...r,l]),c(``)}},h=e=>{d(r.filter(t=>t!==e))},_=()=>{d([...Z])},v=r.length===Z.length&&r.every((e,t)=>e===Z[t]);return(0,X.jsxs)(q,{title:e(`mediaEmbedsCard.title`),subtitle:e(`mediaEmbedsCard.subtitle`),children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,X.jsx)(`div`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e(`mediaEmbedsCard.autoToggle`)}),(0,X.jsx)(m,{checked:t,onChange:u})]}),t&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`mt-4`,children:(0,X.jsx)(ke,{})}),(0,X.jsxs)(T,{type:`button`,variant:`ghost`,onClick:()=>o(e=>!e),className:`mt-4 w-full justify-between px-3`,"aria-expanded":a,children:[(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[a?(0,X.jsx)(U,{className:`h-4 w-4`,"aria-hidden":!0}):(0,X.jsx)(W,{className:`h-4 w-4`,"aria-hidden":!0}),e(`mediaEmbedsCard.allowlist`)]}),(0,X.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`mediaEmbedsCard.domainCount`,{count:r.length})})]}),a&&(0,X.jsxs)(`div`,{className:`mt-3 space-y-3`,children:[(0,X.jsxs)(`div`,{className:`flex items-end gap-2`,children:[(0,X.jsx)(g,{label:e(`mediaEmbedsCard.addDomainLabel`),type:`text`,value:s,onChange:e=>c(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),f())},placeholder:e(`mediaEmbedsCard.addDomainPlaceholder`),fullWidth:!0,wrapperClassName:`flex-1`}),(0,X.jsx)(T,{variant:`primary`,size:`compact`,onClick:f,disabled:!l,children:e(`mediaEmbedsCard.add`)})]}),r.length>0&&(0,X.jsx)(`div`,{className:`flex justify-end`,children:(0,X.jsx)(T,{type:`button`,variant:`ghost`,size:`compact`,onClick:_,disabled:v,tintColor:`var(--content-tertiary)`,children:e(`mediaEmbedsCard.resetDefaults`)})}),r.length>0&&(0,X.jsx)(`ul`,{className:`space-y-2`,children:r.map(t=>(0,X.jsxs)(`li`,{className:`flex items-center justify-between rounded-md border border-[var(--border-base)] px-3 py-2 text-body-medium-lighter`,children:[(0,X.jsx)(`span`,{className:`font-mono text-[var(--content-default)]`,children:t}),(0,X.jsx)(T,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,X.jsx)(K,{}),onClick:()=>h(t),"aria-label":e(`mediaEmbedsCard.removeDomainAria`,{domain:t})})]},t))})]})]})]})}function We(){return(0,X.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`})}function Ge(){let{t:e}=H(`settings`),t=M(),n=(0,Y.useMemo)(()=>i.map(t=>({value:t.id,label:e(t.labelKey,t.label),icon:(0,X.jsx)(t.icon,{className:`h-3.5 w-3.5`})})),[e]),r=V(),{data:a,isError:o}=B({queryKey:[`thresholds`,t],queryFn:()=>c(t),staleTime:3e4}),[s,l]=(0,Y.useState)(`relaxed`),[u,d]=(0,Y.useState)(`conservative`),[f,p]=(0,Y.useState)(`strict`),[m,h]=(0,Y.useState)(!1),g=(0,Y.useRef)(!1),[_,v]=(0,Y.useState)(!1),y=(0,Y.useRef)(null),b=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{!a||g.current||(l(E(a.interactive).id),d(E(a.autonomous).id),p(E(a.headless).id),v(!0))},[a]),(0,Y.useEffect)(()=>()=>{y.current!==null&&(clearTimeout(y.current),y.current=null,b.current?.(),b.current=null)},[]);let x=(0,Y.useCallback)((e,n,a)=>{if(!t||!_)return;let o=i.find(t=>t.id===e)?.riskThreshold,s=i.find(e=>e.id===n)?.riskThreshold,c=i.find(e=>e.id===a)?.riskThreshold;!o||!s||!c||w(t,{interactive:o,autonomous:s,headless:c}).then(()=>{r.invalidateQueries({queryKey:[`thresholds`,t]})}).catch(()=>{})},[t,_,r]),S=(0,Y.useCallback)((e,t,n)=>{y.current!==null&&clearTimeout(y.current),b.current=()=>x(e,t,n),y.current=setTimeout(()=>{b.current?.(),y.current=null,b.current=null},500)},[x]),C=(0,Y.useCallback)(e=>{g.current=!0,l(e),S(e,u,f)},[u,f,S]),T=(0,Y.useCallback)(e=>{g.current=!0,d(e),S(s,e,f)},[s,f,S]),ee=(0,Y.useCallback)(e=>{g.current=!0,p(e),S(s,u,e)},[s,u,S]),O=i.find(e=>e.id===s),k=i.find(e=>e.id===u),A=i.find(e=>e.id===f),j=!t||!_;return(0,X.jsxs)(D,{children:[(0,X.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:e(`riskToleranceSettings.title`)}),(0,X.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`riskToleranceSettings.description`)}),o&&(0,X.jsx)(`p`,{className:`mt-2 text-body-small-lighter text-[var(--system-negative-strong)]`,children:e(`riskToleranceSettings.loadError`)}),(0,X.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`riskToleranceSettings.conversationsTitle`)}),(0,X.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`riskToleranceSettings.conversationsDescription`)}),(0,X.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,X.jsx)(I,{value:s,onChange:C,options:n,disabled:j})}),O&&(0,X.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:e(O.descriptionKey,O.description)})]}),(0,X.jsx)(We,{}),(0,X.jsxs)(`div`,{children:[(0,X.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,X.jsx)(U,{className:`h-4 w-4`}):(0,X.jsx)(W,{className:`h-4 w-4`}),(0,X.jsx)(`span`,{className:`text-body-medium-default`,children:e(`riskToleranceSettings.advanced`)})]}),(0,X.jsxs)(`div`,{className:m?`mt-4 space-y-4`:`hidden`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`riskToleranceSettings.backgroundTitle`)}),(0,X.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`riskToleranceSettings.backgroundDescription`)}),(0,X.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,X.jsx)(I,{value:u,onChange:T,options:n,disabled:j})}),k&&(0,X.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:e(k.descriptionKey,k.description)})]}),(0,X.jsx)(We,{}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`riskToleranceSettings.headlessTitle`)}),(0,X.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`riskToleranceSettings.headlessDescription`)}),(0,X.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,X.jsx)(I,{value:f,onChange:ee,options:n,disabled:j})}),A&&(0,X.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:e(A.descriptionKey,A.description)})]})]})]})]})]})}var Q=e(Ce(),1),Ke=[`bash`,`file_read`,`file_write`,`file_edit`,`web_fetch`,`skill_load`];function qe({assistantId:e,existingRule:t,onClose:r,onSaved:i}){let{t:o}=H(`settings`),s=(0,Y.useRef)(null),[c,l]=(0,Y.useState)(t.tool),[u,d]=(0,Y.useState)(t.pattern),[f,p]=(0,Y.useState)(t.risk),[m,h]=(0,Y.useState)(t.description??``),[_,v]=(0,Y.useState)(!1),[y,b]=(0,Y.useState)(null),x=[{value:`low`,label:o(`trustRuleFormModal.riskLow`),description:o(`trustRuleFormModal.riskLowDescription`)},{value:`medium`,label:o(`trustRuleFormModal.riskMedium`),description:o(`trustRuleFormModal.riskMediumDescription`)},{value:`high`,label:o(`trustRuleFormModal.riskHigh`),description:o(`trustRuleFormModal.riskHighDescription`)}],S=u.trim(),C=S.length>0&&!_,w=o(`trustRuleFormModal.defaultDescription`,{tool:c,pattern:S||o(`trustRuleFormModal.patternFallback`)}),T=(0,Y.useCallback)(async r=>{if(r.preventDefault(),!C)return;let a=m.trim()||w;v(!0),b(null);try{await n(e,t.id,{risk:f,description:a}),i()}catch(e){b(e instanceof Error?e.message:o(`trustRuleFormModal.saveFailed`))}finally{v(!1)}},[e,C,w,m,t,i,f,o]);return(0,Q.createPortal)((0,X.jsx)(`div`,{ref:s,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,Y.useCallback)(e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),r())},[r]),onClick:(0,Y.useCallback)(e=>{e.target===s.current&&r()},[r]),children:(0,X.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,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[var(--border-base)] px-6 py-4`,children:[(0,X.jsx)(`h2`,{id:`trust-rule-form-title`,className:`text-title-medium text-[var(--content-default)]`,children:o(`trustRuleFormModal.title`)}),(0,X.jsx)(`button`,{type:`button`,onClick:r,"aria-label":o(`trustRuleFormModal.closeAriaLabel`),className:`rounded-lg p-1.5 text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-base)] hover:text-[var(--content-default)]`,children:(0,X.jsx)(De,{className:`h-4 w-4`})})]}),(0,X.jsxs)(`form`,{onSubmit:e=>void T(e),className:`min-h-0 flex-1 space-y-4 overflow-y-auto px-6 py-4`,children:[y&&(0,X.jsx)(a,{tone:`error`,children:y}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{htmlFor:`trust-rule-tool`,className:`block text-body-medium-default text-[var(--content-default)]`,children:o(`trustRuleFormModal.toolLabel`)}),(0,X.jsx)(`div`,{className:`mt-1`,children:(0,X.jsx)(I,{value:c,onChange:l,disabled:!0,options:Ke.map(e=>({value:e,label:e}))})})]}),(0,X.jsx)(g,{label:o(`trustRuleFormModal.patternLabel`),type:`text`,value:u,onChange:e=>d(e.target.value),placeholder:o(`trustRuleFormModal.patternPlaceholder`),disabled:!0}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`span`,{className:`block text-body-medium-default text-[var(--content-default)]`,children:o(`trustRuleFormModal.riskLevelLabel`)}),(0,X.jsx)(`div`,{className:`mt-2 flex gap-2`,children:x.map(e=>(0,X.jsxs)(`button`,{type:`button`,onClick:()=>p(e.value),className:`flex-1 rounded-lg border px-3 py-2 text-left text-body-small-default transition-colors ${f===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,X.jsx)(`div`,{children:e.label}),(0,X.jsx)(`div`,{className:`mt-0.5 text-label-medium-default leading-tight opacity-70`,children:e.description})]},e.value))})]}),(0,X.jsx)(g,{label:o(`trustRuleFormModal.descriptionLabel`),type:`text`,value:m,onChange:e=>h(e.target.value),placeholder:w}),(0,X.jsxs)(`div`,{className:`flex justify-end gap-2 pt-2`,children:[(0,X.jsx)(`button`,{type:`button`,onClick:r,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:o(`trustRuleFormModal.cancel`)}),(0,X.jsx)(`button`,{type:`submit`,disabled:!C,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:o(_?`trustRuleFormModal.saving`:`trustRuleFormModal.save`)})]})]})]})}),document.body)}function Je(e){return e.origin===`default`&&!e.userModified}function Ye(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 Xe(e){switch(e){case`low`:return`positive`;case`medium`:return`warning`;case`high`:return`negative`}}function Ze({assistantId:e,onClose:t}){let{t:n}=H(`settings`),r=(0,Y.useRef)(null),[i,o]=(0,Y.useState)([]),[s,c]=(0,Y.useState)(!0),[u,d]=(0,Y.useState)(null),[f,p]=(0,Y.useState)(null),[h,g]=(0,Y.useState)(null),[v,y]=(0,Y.useState)(!1),b=(0,Y.useCallback)(e=>{switch(e){case`low`:return n(`trustRulesModal.riskLow`);case`medium`:return n(`trustRulesModal.riskMedium`);case`high`:return n(`trustRulesModal.riskHigh`)}},[n]),S=(0,Y.useCallback)(async t=>{if(t){let[t,n]=await Promise.all([N(e),N(e,{origin:`default`})]);return Ye(t,n)}return N(e)},[e]),C=(0,Y.useCallback)(async()=>{c(!0);try{o(await S(v)),d(null)}catch(e){d(e instanceof Error?e.message:n(`trustRulesModal.loadErrorFallback`))}finally{c(!1)}},[S,v,n]);(0,Y.useEffect)(()=>{let e=!1;return(async()=>{c(!0);try{let t=await S(v);e||(o(t),d(null))}catch(t){e||d(t instanceof Error?t.message:n(`trustRulesModal.loadErrorFallback`))}finally{e||c(!1)}})(),()=>{e=!0}},[S,v,n]);let w=(0,Y.useCallback)(async()=>{if(h)try{await _(e,h.id),C()}catch(e){d(e instanceof Error?e.message:n(`trustRulesModal.deleteErrorFallback`))}finally{g(null)}},[e,h,C,n]);return(0,Q.createPortal)((0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{ref:r,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,Y.useCallback)(e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),t())},[t]),onClick:(0,Y.useCallback)(e=>{e.target===r.current&&t()},[t]),children:(0,X.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,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[var(--border-base)] px-6 py-4`,children:[(0,X.jsx)(`h2`,{id:`trust-rules-title`,className:`text-title-medium text-[var(--content-default)]`,children:n(`trustRulesModal.title`)}),(0,X.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,X.jsx)(m,{checked:v,onChange:y,label:n(`trustRulesModal.showAllDefaults`)}),(0,X.jsx)(T,{variant:`outlined`,onClick:t,children:n(`trustRulesModal.done`)})]})]}),(0,X.jsxs)(`div`,{className:`flex-1 overflow-y-auto px-6 py-4`,children:[u&&(0,X.jsx)(`div`,{className:`mb-3`,children:(0,X.jsx)(a,{tone:`error`,children:u})}),s?(0,X.jsx)(`div`,{className:`flex h-48 items-center justify-center text-body-medium-lighter text-[var(--content-tertiary)]`,children:n(`trustRulesModal.loading`)}):i.length===0?(0,X.jsxs)(`div`,{className:`flex h-48 flex-col items-center justify-center gap-2 px-6 text-[var(--content-tertiary)]`,children:[(0,X.jsx)(G,{className:`h-8 w-8`}),(0,X.jsx)(`p`,{className:`max-w-xs text-center text-body-medium-lighter`,children:n(`trustRulesModal.empty`)})]}):(0,X.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)]`,children:i.map(e=>{let t=Je(e);return(0,X.jsxs)(`li`,{className:`flex items-start gap-3 py-3`,children:[(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e.tool}),(0,X.jsx)(l,{tone:Xe(e.risk),children:b(e.risk)}),e.origin===`default`&&(0,X.jsx)(l,{tone:`neutral`,children:n(`trustRulesModal.defaultTag`)}),e.userModified&&(0,X.jsx)(l,{tone:`warning`,children:n(`trustRulesModal.modifiedTag`)})]}),(0,X.jsx)(`div`,{className:`mt-1 truncate font-mono text-body-small-default text-[var(--content-secondary)]`,children:e.pattern}),e.description&&(0,X.jsx)(`div`,{className:`mt-0.5 truncate text-body-small-default text-[var(--content-tertiary)]`,children:e.description})]}),(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,X.jsx)(`button`,{type:`button`,"aria-label":n(`trustRulesModal.editRuleAria`,{tool:e.tool}),onClick:()=>p(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,X.jsx)(Ee,{className:`h-4 w-4`})}),(!t||e.userModified)&&(0,X.jsx)(T,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,X.jsx)(K,{className:`h-4 w-4`}),"aria-label":n(`trustRulesModal.deleteRuleAria`,{tool:e.tool}),onClick:()=>g(e)})]})]},e.id)})})]})]})}),f&&(0,X.jsx)(qe,{assistantId:e,existingRule:f,onClose:()=>p(null),onSaved:()=>{p(null),C()}}),(0,X.jsx)(x,{open:h!==null,title:n(`trustRulesModal.deleteTitle`),message:h?n(`trustRulesModal.deleteMessage`,{risk:b(h.risk).toLowerCase(),tool:h.tool,pattern:h.pattern}):``,confirmLabel:n(`trustRulesModal.delete`),cancelLabel:n(`trustRulesModal.cancel`),destructive:!0,onConfirm:()=>void w(),onCancel:()=>g(null)})]}),document.body)}function Qe(){let{t:e}=H(`settings`),t=M(),[n,r]=(0,Y.useState)(!1);return(0,X.jsxs)(D,{children:[(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,X.jsx)(G,{className:`mt-0.5 h-5 w-5 shrink-0 text-[var(--content-secondary)]`}),(0,X.jsxs)(`div`,{className:`flex-1`,children:[(0,X.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:e(`trustRules.title`)}),(0,X.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`trustRules.description`)})]}),(0,X.jsx)(T,{variant:`outlined`,onClick:()=>r(!0),children:e(`trustRules.manage`)})]}),n&&(0,X.jsx)(Ze,{assistantId:t,onClose:()=>r(!1)})]})}var $e=[{value:`dontRetain`,labelKey:`privacyPage.retentionDontRetain`},{value:`oneHour`,labelKey:`privacyPage.retentionOneHour`},{value:`oneDay`,labelKey:`privacyPage.retentionOneDay`},{value:`sevenDays`,labelKey:`privacyPage.retentionSevenDays`},{value:`thirtyDays`,labelKey:`privacyPage.retentionThirtyDays`},{value:`ninetyDays`,labelKey:`privacyPage.retentionNinetyDays`},{value:`keepForever`,labelKey:`privacyPage.retentionKeepForever`}],et=`thirtyDays`;function $(){return(0,X.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`})}function tt(){let{t:e}=H(`settings`),t=z({platformHostedOnly:!0}),n=C(),i=n,a=R.use.user()?.id??null,[o]=f(),[s]=b(),c=o??!0,l=s??!0,[u,d]=(0,Y.useState)(()=>r(`llmLogRetention`,et)),m=(0,Y.useMemo)(()=>$e.map(t=>({value:t.value,label:e(t.labelKey)})),[e]);return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsx)(ze,{}),(0,X.jsx)(Le,{}),(0,X.jsx)(Qe,{}),(0,X.jsx)(Ge,{}),(0,X.jsx)(Ue,{}),(0,X.jsx)(q,{title:e(`privacyPage.title`),subtitle:n?(0,X.jsx)(Se,{ns:`settings`,i18nKey:`privacyPage.subtitleWithPolicy`,components:{policyLink:(0,X.jsx)(`a`,{href:ye(S.docs.legal.privacyPolicy),target:`_blank`,rel:`noreferrer`,className:`underline`})}}):void 0,children:(0,X.jsxs)(`div`,{className:`space-y-4`,children:[i&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(J,{label:e(`privacyPage.shareAnalyticsLabel`),helperText:e(`privacyPage.shareAnalyticsHelper`),checked:c,onChange:()=>{oe(`share_analytics`,!c,{userId:a,hasPlatformSession:n})},variant:`toggle-trailing`}),(0,X.jsx)($,{}),(0,X.jsx)(J,{label:e(`privacyPage.shareDiagnosticsLabel`),helperText:e(`privacyPage.shareDiagnosticsHelper`),checked:l,onChange:()=>{oe(`share_diagnostics`,!l,{userId:a,hasPlatformSession:n})},variant:`toggle-trailing`}),(0,X.jsx)($,{})]}),(0,X.jsx)(Re,{}),t!==`gated`&&(0,X.jsx)($,{}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{htmlFor:`llm-log-retention`,className:`block text-body-medium-default text-[var(--content-default)]`,children:e(`privacyPage.llmLogRetentionLabel`)}),(0,X.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,X.jsx)(I,{value:u,onChange:e=>{d(e),p(`llmLogRetention`,e)},options:m})}),(0,X.jsx)(`p`,{className:`mt-2 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`privacyPage.llmLogRetentionDescription`)})]})]})})]})}export{tt as PrivacyPage};
|