@vellumai/web 0.10.12 → 0.11.0-staging.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/assets/{AnimatePresence-3WpfAWHe.js → AnimatePresence-DPfyu3ET.js} +1 -1
- package/dist/assets/{BundleConfirmPage-CDklssHh.js → BundleConfirmPage-CChUOtcg.js} +1 -1
- package/dist/assets/{a2a-invite-DUYZLVQb.js → a2a-invite-pyBtaaeG.js} +1 -1
- package/dist/assets/{about-page-CT70Pgvf.js → about-page-DGUK5p8j.js} +1 -1
- package/dist/assets/access-DS79PSR3.js +1 -0
- package/dist/assets/{account-page-D5cJIu1-.js → account-page-D3ERiewh.js} +1 -1
- package/dist/assets/{account-shell-C_IH8r44.js → account-shell-Dk4aC-Ls.js} +1 -1
- package/dist/assets/{acp-run-actions-CAjb0Wcm.js → acp-run-actions-BH8wuBAL.js} +1 -1
- package/dist/assets/{acp-run-detail-panel-DqzZdPiN.js → acp-run-detail-panel-dqVK6rPq.js} +1 -1
- package/dist/assets/{acp-run-store-C6n-XeY_.js → acp-run-store-B_eDLRwl.js} +1 -1
- package/dist/assets/{activity-steps-panel-BzHQOJsQ.js → activity-steps-panel-xxl2hu3E.js} +1 -1
- package/dist/assets/add-credential-modal-CY_--m8L.js +1 -0
- package/dist/assets/{add-credits-modal-CCEMf2_U.js → add-credits-modal-fT_gTTP5.js} +1 -1
- package/dist/assets/ai-page-B02NwVRu.js +1 -0
- package/dist/assets/animated-avatar-BcgncPkc.js +1 -0
- package/dist/assets/api-C3QSs67k.js +1 -0
- package/dist/assets/{api-XwdNiVE9.js → api-LG8zI3nK.js} +1 -1
- package/dist/assets/{api-key-screen-BXn2F-lQ.js → api-key-screen-CvBdN6Ae.js} +1 -1
- package/dist/assets/{app-card-Uowaj1kh.js → app-card-CAaFL1oB.js} +1 -1
- package/dist/assets/{archive-redirect-page-CpKvFqvX.js → archive-redirect-page-BH7h0Lk7.js} +1 -1
- package/dist/assets/{assistant-feature-flag-store-CLqMw4mK.js → assistant-feature-flag-store-CAdgpPiS.js} +1 -1
- package/dist/assets/{assistant-status-panel-DKnWIr7_.js → assistant-status-panel-BTnD-jhG.js} +1 -1
- package/dist/assets/auth-store-5qq59BAN.js +2 -0
- package/dist/assets/avatar-random-BMSYTcJK.js +1 -0
- package/dist/assets/{avatar-renderer-DK54o2kQ.js → avatar-renderer-ClUVcQmf.js} +1 -1
- package/dist/assets/{background-task-actions-CmYMPa2o.js → background-task-actions-DmP5s0oO.js} +1 -1
- package/dist/assets/{background-task-detail-panel-KDqjs7i2.js → background-task-detail-panel-BCYAElGc.js} +1 -1
- package/dist/assets/{background-task-store-DFS8MP5D.js → background-task-store-DMP8ByUq.js} +1 -1
- package/dist/assets/billing-page-B5j5TW_S.js +3 -0
- package/dist/assets/{billing-redirect-page-BRcj5q0u.js → billing-redirect-page-B1o1rsQZ.js} +1 -1
- package/dist/assets/{bookmarks-page-fFnFzh4F.js → bookmarks-page-D_Jr-a4Q.js} +1 -1
- package/dist/assets/{browser-CNL8hh8H.js → browser-CTZVDjOL.js} +2 -2
- package/dist/assets/build-state-m0LQ5Iis.js +1 -0
- package/dist/assets/channels-page-route-BYP9SOw5.js +9 -0
- package/dist/assets/chat-avatar-CvEA6z0H.js +1 -0
- package/dist/assets/chat-markdown-message-rxPKNeTx.js +2 -0
- package/dist/assets/{checkbox-BY0BDJjm.js → checkbox-CRmgkYah.js} +1 -1
- package/dist/assets/checkout-continuation-U3Pd2nxi.js +1 -0
- package/dist/assets/checkout-page-C5_9GbP-.js +1 -0
- package/dist/assets/checkout-return-target-DI6Hb-9L.js +1 -0
- package/dist/assets/client-feature-flag-store-CMncoan8.js +1 -0
- package/dist/assets/{client-identity-BS5mQsaQ.js → client-identity-DhkdvP5w.js} +1 -1
- package/dist/assets/{command-palette-CsRPcIM-.js → command-palette-BTaT__fo.js} +1 -1
- package/dist/assets/{command-palette-window-page-BzQ_oDaq.js → command-palette-window-page-gq0zowBe.js} +1 -1
- package/dist/assets/{community-page-mlhk4LsN.js → community-page-CsEKt9wX.js} +1 -1
- package/dist/assets/{connect-page-PuRyFup0.js → connect-page-B4aTS7Yj.js} +1 -1
- package/dist/assets/{consent-controls-BOFoWAYO.js → consent-controls-OcgxuxS0.js} +1 -1
- package/dist/assets/consent-hzYg-zbh.js +1 -0
- package/dist/assets/{contacts-gateway-C5OljhCC.js → contacts-gateway-B6OrAmU3.js} +1 -1
- package/dist/assets/{contacts-page-route-VBlklzVL.js → contacts-page-route-DNoCUXE7.js} +1 -1
- package/dist/assets/{conversation-cache-CqCkWHT6.js → conversation-cache-DKvwwWNo.js} +1 -1
- package/dist/assets/{conversation-list-fetchers-D84gJs6f.js → conversation-list-fetchers-DM-Y61u5.js} +1 -1
- package/dist/assets/conversation-navigation-DsN0hcpL.js +1 -0
- package/dist/assets/{conversation-queries-Ba_1sW5M.js → conversation-queries-CWvK6RLK.js} +1 -1
- package/dist/assets/{credential-entry-page-Bfrl1sD_.js → credential-entry-page-CHinHO85.js} +1 -1
- package/dist/assets/credentials-page-BsJFuOc9.js +1 -0
- package/dist/assets/{danger-zone-redirect-page-DKfrmf_o.js → danger-zone-redirect-page-SU45WI74.js} +1 -1
- package/dist/assets/debug-page-BziypDgA.js +4 -0
- package/dist/assets/{deploy-dialogs-BNMcZzII.js → deploy-dialogs-DZSd5o9b.js} +1 -1
- package/dist/assets/{deploy-store-CxnShfQj.js → deploy-store-D6snB1j5.js} +1 -1
- package/dist/assets/{detail-card-CwtjhGfi.js → detail-card-Du8OuE3q.js} +1 -1
- package/dist/assets/{detail-panel-stop-button-C1rystDS.js → detail-panel-stop-button-BNuh6N0s.js} +1 -1
- package/dist/assets/{detail-shell-DcNnOqM_.js → detail-shell-Cyqr5FXJ.js} +1 -1
- package/dist/assets/{developer-page-Bu7HBiPJ.js → developer-page-QMFEIyBS.js} +1 -1
- package/dist/assets/{devices-redirect-page-Cvt_H5ig.js → devices-redirect-page-B14wK98N.js} +1 -1
- package/dist/assets/{diagnostics-Dva51gYK.js → diagnostics-T_96Uyh5.js} +1 -1
- package/dist/assets/doctor-handoff-store-CYjL1S0n.js +1 -0
- package/dist/assets/document-viewer-container-B7TEDeV0.js +2 -0
- package/dist/assets/{document-viewer-page-kV6TCXu0.js → document-viewer-page-3Eq8L562.js} +1 -1
- package/dist/assets/effective-timezone-CmcoXrio.js +1 -0
- package/dist/assets/{emails-page-D9E3uXkG.js → emails-page-Wr4wPSYl.js} +1 -1
- package/dist/assets/{esm-BWFeAIOX.js → esm-BKewCp71.js} +2 -2
- package/dist/assets/{esm-DKdDWqsF.js → esm-Deuay4YU.js} +2 -2
- package/dist/assets/{esm-C6-ZMSya.js → esm-Dk6A-sQ0.js} +2 -2
- package/dist/assets/{esm-BQjZqfJZ.js → esm-IoT87yZe.js} +2 -2
- package/dist/assets/{esm-BTyZM-kf.js → esm-PYpy75OW.js} +2 -2
- package/dist/assets/esm-xItcektK.js +2 -0
- package/dist/assets/{eye-bbox-DXmmg9ML.js → eye-bbox-C_V87iLg.js} +1 -1
- package/dist/assets/feature-flag-catalog-I9-eJQP_.js +1 -0
- package/dist/assets/file-markdown-DaflJFk7.js +2 -0
- package/dist/assets/{first-run-scope-BoT9LMYw.js → first-run-scope-CL5YbC3b.js} +1 -1
- package/dist/assets/{funnel-events-CK938pi2.js → funnel-events-n2IVlwTo.js} +1 -1
- package/dist/assets/general-page-lbkufqHg.js +1 -0
- package/dist/assets/{get-memory-stats-ERcqnC0Q.js → get-memory-stats-BCYSpBF6.js} +1 -1
- package/dist/assets/{haptics-D9eNTUq-.js → haptics-DvWjk9Fg.js} +2 -2
- package/dist/assets/hatching-screen-D81diZoa.js +1 -0
- package/dist/assets/{home-page-route-BOCisuYY.js → home-page-route-CHe8eoLz.js} +1 -1
- package/dist/assets/{hosting-screen-6xIW6q02.js → hosting-screen-D9atAksQ.js} +1 -1
- package/dist/assets/{identity-page-route-qWwRSRld.js → identity-page-route-CK3YsXCN.js} +1 -1
- package/dist/assets/index-0f48hi7h.js +11 -0
- package/dist/assets/index-UKZ4bO6i.css +2 -0
- package/dist/assets/{ingest-DGkxw0Go.js → ingest-BizI657K.js} +1 -1
- package/dist/assets/{inspect-page-CRBfQ5WU.js → inspect-page-COwvbHtX.js} +3 -3
- package/dist/assets/{installed-plugins-query-C29LGAEV.js → installed-plugins-query-Cgek0q7G.js} +1 -1
- package/dist/assets/{integration-icon-Dvjn3ytY.js → integration-icon-dv-9Zzx3.js} +1 -1
- package/dist/assets/integrations-page-CJOBwxXp.js +1 -0
- package/dist/assets/{intelligence-layout-DP9zklR6.js → intelligence-layout-MNoGhi-l.js} +1 -1
- package/dist/assets/{invalidate-plugin-queries-DamxiwYv.js → invalidate-plugin-queries-C3NTXkCX.js} +1 -1
- package/dist/assets/{keyboard-shortcuts-redirect-page--bCvhp62.js → keyboard-shortcuts-redirect-page-CBI_mZIL.js} +1 -1
- package/dist/assets/{latest-assistant-text-D5WR-o6J.js → latest-assistant-text-DOepZ_Io.js} +2 -2
- package/dist/assets/{library-detail-page-pviljaQw.js → library-detail-page-DVwI94NZ.js} +1 -1
- package/dist/assets/{library-page-CYYuLywk.js → library-page-CNA794WY.js} +1 -1
- package/dist/assets/local-mode-BTovbt13.js +39 -0
- package/dist/assets/{local-runtime-upgrade-BggVMXfW.js → local-runtime-upgrade-Bqn3d7Q7.js} +1 -1
- package/dist/assets/login-flow-CD9tyuFG.js +1 -0
- package/dist/assets/{login-page-DdHXGGAt.js → login-page-BNStrcnU.js} +1 -1
- package/dist/assets/{logout-page-DjihP6Qk.js → logout-page-CpFeuLA_.js} +1 -1
- package/dist/assets/{logs-layout-C84-h0Hn.js → logs-layout-BUiPeZ4I.js} +1 -1
- package/dist/assets/{machine-sizes-DAflIPTM.js → machine-sizes-DO8duvpy.js} +1 -1
- package/dist/assets/{memory-page-route-dGWTWCWF.js → memory-page-route-C0cBV7HD.js} +1 -1
- package/dist/assets/{memory-router-playground-page-CjUiz_bH.js → memory-router-playground-page-D4UIq8mw.js} +1 -1
- package/dist/assets/{messages-Dl5_cjD9.js → messages-CFcAW4iz.js} +2 -2
- package/dist/assets/{metric-card-CkAD9RpC.js → metric-card-05a5slPx.js} +1 -1
- package/dist/assets/{mobile-sidebar-drawer-CbJ5JfXT.js → mobile-sidebar-drawer-DtKU2vlu.js} +1 -1
- package/dist/assets/native-anchor-CeekjwVy.js +1 -0
- package/dist/assets/native-biometric-BAMIyaSS.js +6 -0
- package/dist/assets/{native-file-B6_oAU2Q.js → native-file-ySSv1sQ7.js} +2 -2
- package/dist/assets/navigation-resolver-DPJxzx0h.js +1 -0
- package/dist/assets/{not-found-DV3iLBwm.js → not-found-OqaWNmdx.js} +1 -1
- package/dist/assets/{notifications-page-B9vnqyB1.js → notifications-page-ClfcJeLf.js} +1 -1
- package/dist/assets/{oauth-complete-page-BSxiDbQm.js → oauth-complete-page-rVmA2Cl8.js} +1 -1
- package/dist/assets/{oauth-connection-utils-DbcihBL8.js → oauth-connection-utils-CWPUW4MK.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-CyYbqLoK.js → oauth-popup-complete-page-DBsOvLES.js} +1 -1
- package/dist/assets/{onboarding-layout-Dd5fPfE7.js → onboarding-layout-DLs1hfp_.js} +1 -1
- package/dist/assets/onboarding-store-bZ2qYISk.js +1 -0
- package/dist/assets/open-workspace-file-DtK3a84K.js +2 -0
- package/dist/assets/{page-empty-state-BA3_YQN2.js → page-empty-state-DT-tC1u6.js} +1 -1
- package/dist/assets/{page-shell-_QxBKTK3.js → page-shell-C7SUgga9.js} +1 -1
- package/dist/assets/{pairing-page-DPfIgf3F.js → pairing-page-ZkFipOSH.js} +1 -1
- package/dist/assets/{password-reset-page-D55bGMVy.js → password-reset-page-iASQZawH.js} +1 -1
- package/dist/assets/{personality-page-fJJd-i4s.js → personality-page-BJpW3UXD.js} +1 -1
- package/dist/assets/plans-page-BDKqdYNM.js +1 -0
- package/dist/assets/{platform-detection-CMiRPRCq.js → platform-detection-XEAAu4c-.js} +1 -1
- package/dist/assets/{platform-login-notice-BG9TFAJa.js → platform-login-notice-CdYiKsE8.js} +1 -1
- package/dist/assets/{platform-loopback-page-DunGLusR.js → platform-loopback-page-D0gXCm2S.js} +1 -1
- package/dist/assets/{plugin-detail-page-BngHrN8T.js → plugin-detail-page-Bx2wzKEf.js} +1 -1
- package/dist/assets/{plugins-page-DD0t1_pE.js → plugins-page-B2zQ2iGh.js} +1 -1
- package/dist/assets/{prefs-BZnS5vR_.js → prefs-bw85lYLp.js} +1 -1
- package/dist/assets/{privacy-page-nZvfh3dh.js → privacy-page-B0QN4qZO.js} +1 -1
- package/dist/assets/privacy-screen-vp4uUpm6.js +1 -0
- package/dist/assets/{provider-callback-page-BwANEd-K.js → provider-callback-page-BH6DES7c.js} +1 -1
- package/dist/assets/{provider-key-B3R8SlMJ.js → provider-key-D2Nsf9zh.js} +1 -1
- package/dist/assets/{provider-signup-page-Cz2DP-jP.js → provider-signup-page-BAPcG_iJ.js} +1 -1
- package/dist/assets/provisioning-targets-BTjyR9nk.js +1 -0
- package/dist/assets/{quick-input-page-CF2MJnCE.js → quick-input-page-Dq-0BGrJ.js} +1 -1
- package/dist/assets/{react-query.gen-r3I6j8-1.js → react-query.gen-C5c1Acuq.js} +1 -1
- package/dist/assets/{remote-gateway-session-BHjZ9gQ6.js → remote-gateway-session-yRYdsfDx.js} +1 -1
- package/dist/assets/{research-mock-page-DnbQpZcp.js → research-mock-page-BJEpxdMv.js} +1 -1
- package/dist/assets/research-onboarding-route-CFL3q__m.js +50 -0
- package/dist/assets/{research-results-view-CxhTn2J7.js → research-results-view-C4sIw2gK.js} +1 -1
- package/dist/assets/{resolved-assistants-store-C-PdxK8f.js → resolved-assistants-store-Dw5UuGyB.js} +1 -1
- package/dist/assets/retire-confirm-dialog-CsSY2-T8.js +1 -0
- package/dist/assets/review-terms-screen-BhyRQBjl.js +1 -0
- package/dist/assets/{risk-C_bbPQPd.js → risk-CdT92Vqr.js} +2 -2
- package/dist/assets/routes-CaP5Tqj7.js +23 -0
- package/dist/assets/routes-D9sNqB_o.js +1 -0
- package/dist/assets/{runtime-upgrade-banner-DQI-l3Yc.js → runtime-upgrade-banner-DPqzKtZU.js} +2 -2
- package/dist/assets/{schedules-DF5cTXBf.js → schedules-6hzhR_C_.js} +1 -1
- package/dist/assets/schedules-page-DVnUeaoB.js +1 -0
- package/dist/assets/{sdk.gen-BVAVE6A_.js → sdk.gen-BHZ0fJla.js} +1 -1
- package/dist/assets/{security-redirect-page-BEohiPDW.js → security-redirect-page-4DKqyPsf.js} +1 -1
- package/dist/assets/{select-assistant-screen-C2q8wO2f.js → select-assistant-screen-CVV3iqMy.js} +1 -1
- package/dist/assets/{settings-divider-CXIrJieH.js → settings-divider-Ro7lPCkV.js} +1 -1
- package/dist/assets/settings-layout-B_4PKJr9.js +1 -0
- package/dist/assets/settings-navigation-CSG7jiyJ.js +1 -0
- package/dist/assets/{share-feedback-modal-B05-nKgu.js → share-feedback-modal-BoWCg4KH.js} +1 -1
- package/dist/assets/{sidebar-tree-ByF78JHW.js → sidebar-tree-C_PPNHe5.js} +1 -1
- package/dist/assets/{signup-page-CGauGszD.js → signup-page-D0S_8XYw.js} +1 -1
- package/dist/assets/{signup-shell-Bw6r9tWP.js → signup-shell-CMsBZ8vG.js} +1 -1
- package/dist/assets/{site-favicon-CCyX9r-Z.js → site-favicon-BB1pYWLF.js} +1 -1
- package/dist/assets/skill-detail-page-CTobyK6L.js +1 -0
- package/dist/assets/{skill-detail-panel-crqCBZbU.js → skill-detail-panel-CNzionF7.js} +1 -1
- package/dist/assets/{skills-C1CAcW7T.js → skills-Cum1XWT2.js} +1 -1
- package/dist/assets/{skills-page-BikP-AR7.js → skills-page-DZVxAbua.js} +1 -1
- package/dist/assets/slack-setup-wizard-DK2F8LXc.js +1 -0
- package/dist/assets/{sound-manager-xEbUgFv-.js → sound-manager-Bx-OcMAz.js} +1 -1
- package/dist/assets/{sounds-page-9_otQ97S.js → sounds-page-C45-RF4i.js} +1 -1
- package/dist/assets/{src-D89CNeuT.js → src-te3YTBG-.js} +4 -4
- package/dist/assets/{start-screen-DSF3melT.js → start-screen-CkJiCl9b.js} +1 -1
- package/dist/assets/{subagent-detail-panel-q0g4JWAX.js → subagent-detail-panel-DyyMdaNO.js} +1 -1
- package/dist/assets/subagent-store-MDi6lBXs.js +3 -0
- package/dist/assets/{superpowers-page-UgdWFWsF.js → superpowers-page-CaLzK5D-.js} +1 -1
- package/dist/assets/{system-events-page-Bw94HLwx.js → system-events-page-DXAU01ZO.js} +1 -1
- package/dist/assets/{system-events-redirect-page-BGZQC8-K.js → system-events-redirect-page-Bm9bipNo.js} +1 -1
- package/dist/assets/{theme-stage-page-bEZxHTyN.js → theme-stage-page-BDTCmutO.js} +1 -1
- package/dist/assets/{threshold-presets-BO8En2q0.js → threshold-presets-BdTTHCnm.js} +1 -1
- package/dist/assets/{tiptap-document-editor-CyY1HRzV.js → tiptap-document-editor-CHn2wCDv.js} +1 -1
- package/dist/assets/{tool-detail-panel-DFMOphDJ.js → tool-detail-panel-DFrWEWKG.js} +1 -1
- package/dist/assets/{transcript-message-body-shared-nWAkSzar.js → transcript-message-body-shared-D9_d2c2X.js} +1 -1
- package/dist/assets/{trust-rules-api-C0-hkXT2.js → trust-rules-api-B5lfygCA.js} +1 -1
- package/dist/assets/{upgrade-cancel-page-DwxI6NLL.js → upgrade-cancel-page-eiJEAvFz.js} +1 -1
- package/dist/assets/{upgrade-success-page-SO92J-Rf.js → upgrade-success-page-Cb1Gl4MM.js} +1 -1
- package/dist/assets/{usage-redirect-page-BJBkecYr.js → usage-redirect-page-BOfJ7uot.js} +1 -1
- package/dist/assets/{use-active-assistant-id-Cjbsk2Q3.js → use-active-assistant-id-CldxA_-M.js} +1 -1
- package/dist/assets/{use-app-theme-Q42fO5Nz.js → use-app-theme-Dg8A6vPA.js} +1 -1
- package/dist/assets/{use-assistant-avatar-DSu2_Mzi.js → use-assistant-avatar-bwLHcMz4.js} +1 -1
- package/dist/assets/{use-assistant-capability-gxe56K48.js → use-assistant-capability-CDS7GbSO.js} +1 -1
- package/dist/assets/{use-assistant-identity-details-CpHkzjrI.js → use-assistant-identity-details-9JRWxXTQ.js} +1 -1
- package/dist/assets/{use-avatar-accent-var-PV9tsBJj.js → use-avatar-accent-var-vpakP1ce.js} +1 -1
- package/dist/assets/{use-bookmarks-BbJtKyHe.js → use-bookmarks-CK-nOiT-.js} +1 -1
- package/dist/assets/{use-bundled-avatar-components-Gp_YaD6o.js → use-bundled-avatar-components-Bbs4vCnX.js} +2 -2
- package/dist/assets/use-checkout-dismiss-refresh-CqGR_OsB.js +1 -0
- package/dist/assets/use-command-palette-sections-CkpUaAKs.js +1 -0
- package/dist/assets/{use-edge-swipe-DVeTYbmY.js → use-edge-swipe-Wm9pU2HX.js} +1 -1
- package/dist/assets/{use-edge-swipe-back-DDq-N20h.js → use-edge-swipe-back-BcSHNCwS.js} +1 -1
- package/dist/assets/{use-edit-app-DfFIonqZ.js → use-edit-app-B_Nequzs.js} +1 -1
- package/dist/assets/{use-effective-timezone-LqzBqHBy.js → use-effective-timezone-Dqs8OaXJ.js} +1 -1
- package/dist/assets/use-invite-link-dialog-CPPOduk8.js +1 -0
- package/dist/assets/{use-ios-app-nudge-BO8jWfr0.js → use-ios-app-nudge-B-ojl-b1.js} +1 -1
- package/dist/assets/use-is-org-ready-C5xlYywh.js +1 -0
- package/dist/assets/use-onboarding-login-DI5gvqEG.js +1 -0
- package/dist/assets/use-platform-assistant-id-DOsSt6k1.js +1 -0
- package/dist/assets/use-platform-gate-C65D14xY.js +1 -0
- package/dist/assets/{use-reduced-motion-Se97jRQ-.js → use-reduced-motion-W1fCe3vS.js} +1 -1
- package/dist/assets/{use-save-twilio-credentials-CUQ6gdIj.js → use-save-twilio-credentials-c9xG9RPK.js} +1 -1
- package/dist/assets/{use-skill-actions-DgK7Nmt1.js → use-skill-actions-BAAx1Eia.js} +1 -1
- package/dist/assets/{use-skill-detail-files-_v4zUF6S.js → use-skill-detail-files-BvOKvY0-.js} +1 -1
- package/dist/assets/use-sticky-profiles-CdWX0mgI.js +1 -0
- package/dist/assets/{use-subagent-card-data-YbAN73Fw.js → use-subagent-card-data-DHuNtSy9.js} +1 -1
- package/dist/assets/use-supports-credentials-settings-BbfghcWq.js +1 -0
- package/dist/assets/{use-swipe-engine-DRvffOuu.js → use-swipe-engine-6PcZZMVD.js} +1 -1
- package/dist/assets/{utils-BtC1KiH4.js → utils-B0rBxtYP.js} +1 -1
- package/dist/assets/{viewer-store-BDpZVbcr.js → viewer-store-DLk-jp8U.js} +1 -1
- package/dist/assets/{voice-list-DJeZeHuA.js → voice-list-CW8mzaHU.js} +1 -1
- package/dist/assets/{voice-page-DQcyxaPl.js → voice-page-0zsCIOdT.js} +1 -1
- package/dist/assets/{voice-picker-modal-BXMvQihh.js → voice-picker-modal-PdsZwrsV.js} +1 -1
- package/dist/assets/{weather-forecast-display-D2sn4QD4.js → weather-forecast-display-BAAnrNdd.js} +1 -1
- package/dist/assets/{web-Bj8XUknF.js → web-B3Q8ntoM.js} +1 -1
- package/dist/assets/{web-BE7l06mM.js → web-BlvxItuO.js} +1 -1
- package/dist/assets/{welcome-screen-n-cGiojh.js → welcome-screen-DwOAZpZS.js} +1 -1
- package/dist/assets/{workflow-detail-panel-Cq3AwWXE.js → workflow-detail-panel-DGL2BZSr.js} +1 -1
- package/dist/assets/{workflow-store-QV5aMjTt.js → workflow-store-lM7yKbUo.js} +1 -1
- package/dist/assets/workspace-page-D4NvhCv1.js +1 -0
- package/dist/assets/workspace-tree-query-B1A-efgV.js +1 -0
- package/dist/index.html +144 -141
- package/package.json +1 -1
- package/dist/assets/access-D3fUSyFH.js +0 -1
- package/dist/assets/ai-page-BznkOakE.js +0 -1
- package/dist/assets/animated-avatar-DzfEDnTh.js +0 -1
- package/dist/assets/api-CJFoPWHm.js +0 -1
- package/dist/assets/auth-store-D9BqFncz.js +0 -2
- package/dist/assets/billing-page-Cc5fHBn2.js +0 -3
- package/dist/assets/build-state-WR9nlRgM.js +0 -1
- package/dist/assets/channels-page-route-wxREzs6W.js +0 -9
- package/dist/assets/chat-avatar-DIDq1Jt5.js +0 -1
- package/dist/assets/chat-markdown-message-ERK48E1Z.js +0 -2
- package/dist/assets/client-feature-flag-store-oTfL8Oiz.js +0 -1
- package/dist/assets/consent-DbD2Hcbf.js +0 -1
- package/dist/assets/conversation-navigation-Wm7_pLFs.js +0 -1
- package/dist/assets/credentials-page-B-AJyMvk.js +0 -1
- package/dist/assets/debug-page-DWEIExMH.js +0 -4
- package/dist/assets/document-viewer-container-Cl4jDmfx.js +0 -2
- package/dist/assets/effective-timezone-qiooajmO.js +0 -1
- package/dist/assets/esm-CDPcGg-B.js +0 -2
- package/dist/assets/feature-flag-catalog-BAyJlRMY.js +0 -1
- package/dist/assets/file-Ddp9Dqgl.js +0 -1
- package/dist/assets/file-markdown-CLmQTpqL.js +0 -2
- package/dist/assets/general-page-DpKVqj5t.js +0 -1
- package/dist/assets/hatching-screen-d3SWqFKY.js +0 -1
- package/dist/assets/index-B0l9Wjpj.css +0 -2
- package/dist/assets/index-BOC87TAq.js +0 -11
- package/dist/assets/integrations-page-D5KWY6v-.js +0 -1
- package/dist/assets/local-mode-Ckii2tmN.js +0 -39
- package/dist/assets/login-flow-BCNBNLzu.js +0 -1
- package/dist/assets/native-anchor-CVNubOIm.js +0 -1
- package/dist/assets/native-biometric-CntdlaL-.js +0 -6
- package/dist/assets/onboarding-store-DutUn1E3.js +0 -1
- package/dist/assets/open-workspace-file-CpveqBim.js +0 -2
- package/dist/assets/plans-page-C-JyEPT_.js +0 -1
- package/dist/assets/privacy-screen-D2aDT6E6.js +0 -1
- package/dist/assets/research-onboarding-route-yg2iKw6i.js +0 -50
- package/dist/assets/retire-confirm-dialog--eF_pXhA.js +0 -1
- package/dist/assets/review-terms-screen-Dpk-gyJE.js +0 -1
- package/dist/assets/routes-BBFM42ft.js +0 -23
- package/dist/assets/routes-vE-2hncW.js +0 -1
- package/dist/assets/schedules-page-Dgu-znOf.js +0 -1
- package/dist/assets/settings-layout-b7iBWIT-.js +0 -1
- package/dist/assets/settings-navigation-BGdjm0Ki.js +0 -1
- package/dist/assets/skill-detail-page-GlV5JRzQ.js +0 -1
- package/dist/assets/slack-setup-wizard-DKj1_XdA.js +0 -1
- package/dist/assets/stream-watchdog-BafbDdX9.js +0 -1
- package/dist/assets/subagent-store-D-GPthdC.js +0 -3
- package/dist/assets/use-checkout-dismiss-refresh-kdxxDNpF.js +0 -1
- package/dist/assets/use-command-palette-sections-BWjxkwKB.js +0 -1
- package/dist/assets/use-invite-link-dialog-DX58-LWY.js +0 -1
- package/dist/assets/use-is-org-ready-X_98Cnx9.js +0 -1
- package/dist/assets/use-onboarding-login-B8rpbSEh.js +0 -1
- package/dist/assets/use-platform-gate-Dry0Nv4f.js +0 -1
- package/dist/assets/use-sticky-profiles-B0zVD3uk.js +0 -1
- package/dist/assets/workspace-page-CL9z2Jrs.js +0 -1
- /package/dist/assets/{app-info-qQex8Ndg.js → app-info-DefDjPEl.js} +0 -0
- /package/dist/assets/{app-types-CBg2__YH.js → app-types-DSkgEmV3.js} +0 -0
- /package/dist/assets/{apple-logo-poQac1tY.js → apple-logo--8ZT6Umn.js} +0 -0
- /package/dist/assets/{avatar-bundled-components-CecbESCk.js → avatar-bundled-components-DPqbVXi9.js} +0 -0
- /package/dist/assets/{avatar-subagent-C9WTTUjI.js → avatar-subagent-CRA2B82x.js} +0 -0
- /package/dist/assets/{avatar-svg-compositor-FtVPqzlC.js → avatar-svg-compositor-Dl-ckXRE.js} +0 -0
- /package/dist/assets/{avatar-tone-CMoWR2JX.js → avatar-tone-BKwvoDSj.js} +0 -0
- /package/dist/assets/{browser-timezone-C_0jBUid.js → browser-timezone-CGwaX5Uv.js} +0 -0
- /package/dist/assets/{build.umd-59c0EvgO.js → build.umd-Bixyt_xE.js} +0 -0
- /package/dist/assets/{by-tool-use-id-index-aoRP6d51.js → by-tool-use-id-index-M50wYE1f.js} +0 -0
- /package/dist/assets/{chat-BrL0k2UY.js → chat-CDFCY8f0.js} +0 -0
- /package/dist/assets/{chat-layout-slots-store-C2IFeZFr.js → chat-layout-slots-store-BJfYGnd7.js} +0 -0
- /package/dist/assets/{conversation-selection-3EKkKt0G.js → conversation-selection-oJy8Oht3.js} +0 -0
- /package/dist/assets/{conversation-store-bshB7nDP.js → conversation-store-C--wWMNW.js} +0 -0
- /package/dist/assets/{definitions-PikNVFdS.js → definitions-D_AmTPWg.js} +0 -0
- /package/dist/assets/{definitions-OhJf_HMS.js → definitions-JF3PcEff.js} +0 -0
- /package/dist/assets/{dictation-overlay-page-zpoNqudq.js → dictation-overlay-page-DtgaXzdF.js} +0 -0
- /package/dist/assets/{edge-swipe-arbiter-store-DyemvsR-.js → edge-swipe-arbiter-store-CQnDi2yf.js} +0 -0
- /package/dist/assets/{edit-chat-session-yPtopwB6.js → edit-chat-session-D37Qx6ol.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-COLzb2Wj.js → emoji-catalog-data-BCc1YNMR.js} +0 -0
- /package/dist/assets/{environment-store-BFVmN-OW.js → environment-store-Bft0lpgv.js} +0 -0
- /package/dist/assets/{esm-DEY-lP80.js → esm-DNvorKcw.js} +0 -0
- /package/dist/assets/{external-urls-BYwuIdYk.js → external-urls-_vjsdj2L.js} +0 -0
- /package/dist/assets/{file-editor-DpNdd7HZ.js → file-editor-phorJEVv.js} +0 -0
- /package/dist/assets/{format-date-RZ9mCDCy.js → format-date-BGnM4mqL.js} +0 -0
- /package/dist/assets/{format-file-size-CQaPE33p.js → format-file-size-BgMTiWPt.js} +0 -0
- /package/dist/assets/{hard-navigate-DZlpL1No.js → hard-navigate-DyUrcxe0.js} +0 -0
- /package/dist/assets/{link-click-BoSQACXo.js → link-click-DLYgWZdo.js} +0 -0
- /package/dist/assets/{misc-DckBb5zz.js → misc-CuYswARt.js} +0 -0
- /package/dist/assets/{mutation-error-CwYvaYnb.js → mutation-error-DEknRDAQ.js} +0 -0
- /package/dist/assets/{native-deep-link-PvbVHiPM.js → native-deep-link-DCBJ-Rw0.js} +0 -0
- /package/dist/assets/{oauth-popup-DZEqljdC.js → oauth-popup-OhSYYlQF.js} +0 -0
- /package/dist/assets/{onboarding-step-layout-CURfuoh4.js → onboarding-step-layout-D9rghAjS.js} +0 -0
- /package/dist/assets/{optimistic-lifecycle-C2a6IJ7E.js → optimistic-lifecycle-BINTsVFx.js} +0 -0
- /package/dist/assets/{pdf-IQXtc7_x.js → pdf-BlwLcQAc.js} +0 -0
- /package/dist/assets/{plugin-attribution-DCFEMRUF.js → plugin-attribution-DrwveSW_.js} +0 -0
- /package/dist/assets/{plugins-surface-D4i2vqBz.js → plugins-surface-B43Op43l.js} +0 -0
- /package/dist/assets/{pointer-RLpjGG7A.js → pointer-BbPfN86L.js} +0 -0
- /package/dist/assets/{prechat-DIuViPZk.js → prechat-CeL4a_1i.js} +0 -0
- /package/dist/assets/{profile-metadata-h4CTeMKT.js → profile-metadata-BhqRdqUJ.js} +0 -0
- /package/dist/assets/{proxy-RtD8704m.js → proxy-D7UPVac3.js} +0 -0
- /package/dist/assets/{public-asset-CbDDcomC.js → public-asset-BBVUuTT_.js} +0 -0
- /package/dist/assets/{react-query.gen-Mwd5l-vZ.js → react-query.gen-BC3STDmV.js} +0 -0
- /package/dist/assets/{research-facts-UIXXE8D6.js → research-facts-B7Ev1zv0.js} +0 -0
- /package/dist/assets/{research-onboarding-persistence-CceFfAqE.js → research-onboarding-persistence-51lJoYJ2.js} +0 -0
- /package/dist/assets/{sandbox-bridge-DgDrAWv3.js → sandbox-bridge-BxW8HZq_.js} +0 -0
- /package/dist/assets/{sdk.gen-DPKrJeho.js → sdk.gen-B5ygTzyg.js} +0 -0
- /package/dist/assets/{setting-row-0LXvW7Kh.js → setting-row-BwXKepmJ.js} +0 -0
- /package/dist/assets/{status-badge-pill-z1OKPW3B.js → status-badge-pill-wJPMXQk1.js} +0 -0
- /package/dist/assets/{theme-preferences-ln8xC5zH.js → theme-preferences-Bb2pPRXa.js} +0 -0
- /package/dist/assets/{three-dot-indicator-SJcKW5cG.js → three-dot-indicator-BMvKQ_On.js} +0 -0
- /package/dist/assets/{use-bus-subscription-Cu4Y9DQi.js → use-bus-subscription-nUrbz9Mu.js} +0 -0
- /package/dist/assets/{use-copy-to-clipboard-DBVpNZOl.js → use-copy-to-clipboard-cF7ZSilD.js} +0 -0
- /package/dist/assets/{use-is-mobile-Bz2l7wPL.js → use-is-mobile-BlQuzI5Z.js} +0 -0
- /package/dist/assets/{web-7I6Bn0iP.js → web-9Cwi5jnT.js} +0 -0
- /package/dist/assets/{web-CBluPLFP.js → web-Bi-BvsRt.js} +0 -0
- /package/dist/assets/{web-Cmg3AbZk.js → web-D486_dlv.js} +0 -0
- /package/dist/assets/{web-DHVjLzid.js → web-DUb4LJ2M.js} +0 -0
- /package/dist/assets/{web-BEpNr5_U.js → web-l9DWMZeA.js} +0 -0
- /package/dist/assets/{web-BPyURh2Z.js → web-sr1ba6fP.js} +0 -0
- /package/dist/assets/{workflow-status-DXdUkbSd.js → workflow-status-HyIIhMBP.js} +0 -0
- /package/dist/assets/{workspace-theme-tokens-J8dqkK9n.js → workspace-theme-tokens-DNNwX-XS.js} +0 -0
- /package/dist/assets/{xterm-CdT0HObJ.js → xterm-DgGqTfet.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-CPcVj1i5.js → xterm-addon-fit-BVObYBMM.js} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{l as n,r}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as i}from"./jsx-runtime-D3ZM-ToX.js";import{t as a}from"./createLucideIcon-CAM1RhH8.js";import{t as o}from"./mail-CMdPNysl.js";import{u as s}from"./routes-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{l as n,r}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as i}from"./jsx-runtime-D3ZM-ToX.js";import{t as a}from"./createLucideIcon-CAM1RhH8.js";import{t as o}from"./mail-CMdPNysl.js";import{u as s}from"./routes-D9sNqB_o.js";import{i as c}from"./use-platform-gate-C65D14xY.js";import{n as l,t as u}from"./sidebar-tree-C_PPNHe5.js";var d=a(`monitor-cog`,[[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`m14.305 7.53.923-.382`,key:`1mlnsw`}],[`path`,{d:`m15.228 4.852-.923-.383`,key:`82mpwg`}],[`path`,{d:`m16.852 3.228-.383-.924`,key:`ln4sir`}],[`path`,{d:`m16.852 8.772-.383.923`,key:`1dejw0`}],[`path`,{d:`m19.148 3.228.383-.924`,key:`192kgf`}],[`path`,{d:`m19.53 9.696-.382-.924`,key:`fiavlr`}],[`path`,{d:`m20.772 4.852.924-.383`,key:`1j8mgp`}],[`path`,{d:`m20.772 7.148.924.383`,key:`zix9be`}],[`path`,{d:`M22 13v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7`,key:`1tnzv8`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}]]),f=e(t(),1),p=[{id:`emails`,label:`Emails`,href:s.logs.emails,icon:o},{id:`system-events`,label:`System Events`,href:s.logs.systemEvents,icon:d}],m=i();function h(){let e=c({platformHostedOnly:!0}),t=c(),{pathname:i}=n(),a=(0,f.useMemo)(()=>p.filter(n=>!(n.id===`system-events`&&e===`gated`||n.id===`emails`&&t===`gated`)),[e,t]),o=(0,f.useMemo)(()=>{let e=p.find(e=>i===e.href||i.startsWith(e.href+`/`));return e?e.label:i===s.logs.root?p[0]?.label??`Logs & Usage`:`Logs & Usage`},[i]);return(0,m.jsx)(l,{backHref:s.assistant,sidebar:(0,m.jsx)(u,{items:a,indexPath:s.logs.root}),title:o,menuRoute:s.logs.root,children:(0,m.jsx)(r,{})})}export{h as LogsLayout};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e={medium:[`small`,`medium`],large:[`small`,`medium`,`large`],xl:[`small`,`medium`,`large`,`extra_large`]};function t(t){return t?e[t]??[]:[]}var n={small:`Small`,medium:`Medium`,large:`Large`,extra_large:`Extra Large`},r={medium:`Medium`,large:`Large`,xl:`XL`},i={small:`2 vCPU, 3 GiB`,medium:`2.5 vCPU, 5 GiB`,large:`4 vCPU, 8 GiB`,extra_large:`4 vCPU, 16 GiB`},a=[`small`,`medium`,`large`,`extra_large`];function o(e){return a.indexOf(e)}function s(e,t,r){return e.map(e=>({value:e,label:`${n[e]} — ${i[e]}`,suffix:e===t?r:void 0}))}export{
|
|
1
|
+
var e={medium:[`small`,`medium`],large:[`small`,`medium`,`large`],xl:[`small`,`medium`,`large`,`extra_large`]};function t(t){return t?e[t]??[]:[]}var n={small:`Small`,medium:`Medium`,large:`Large`,extra_large:`Extra Large`},r={medium:`Medium`,large:`Large`,xl:`XL`},i={small:`2 vCPU, 3 GiB`,medium:`2.5 vCPU, 5 GiB`,large:`4 vCPU, 8 GiB`,extra_large:`4 vCPU, 16 GiB`},a=[`small`,`medium`,`large`,`extra_large`];function o(e){return a.indexOf(e)}function s(e,t,r){return e.map(e=>({value:e,label:`${n[e]} — ${i[e]}`,suffix:e===t?r:void 0}))}export{s as a,t as i,i as n,o,n as r,r as t};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-Dy5001j6.js";import{u as r}from"./chunk-5KNZJZUH-Bsoom5--.js";import{n as i}from"./QueryClientProvider-CMu7CkQU.js";import{t as a}from"./useQuery-Bz-fbQ-m.js";import{t as o}from"./jsx-runtime-D3ZM-ToX.js";import{t as s}from"./queryOptions-CMSBCFOf.js";import{t as c}from"./typography-DEI9Ra9z.js";import{t as l}from"./chevron-down-B5A-0g8A.js";import{t as u}from"./chevron-left-CytMddTB.js";import{t as d}from"./chevron-up-2Qqarz0p.js";import{t as f}from"./loader-circle-XREx3i4W.js";import{n as p,t as m}from"./minimize-2-CaXsUqSp.js";import{t as h}from"./message-circle-BsH7vHtN.js";import{t as g}from"./plus-jH3kAliM.js";import{t as _}from"./rotate-ccw-BjzeX7qz.js";import{t as v}from"./search-BVW-n8to.js";import{t as y}from"./sparkles-Ccrj7hxd.js";import{t as b}from"./x-JBAsSOmg.js";import{n as ee,t as x}from"./zoom-in-CaLYwni-.js";import{
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-Dy5001j6.js";import{u as r}from"./chunk-5KNZJZUH-Bsoom5--.js";import{n as i}from"./QueryClientProvider-CMu7CkQU.js";import{t as a}from"./useQuery-Bz-fbQ-m.js";import{t as o}from"./jsx-runtime-D3ZM-ToX.js";import{t as s}from"./queryOptions-CMSBCFOf.js";import{t as c}from"./typography-DEI9Ra9z.js";import{t as l}from"./chevron-down-B5A-0g8A.js";import{t as u}from"./chevron-left-CytMddTB.js";import{t as d}from"./chevron-up-2Qqarz0p.js";import{t as f}from"./loader-circle-XREx3i4W.js";import{n as p,t as m}from"./minimize-2-CaXsUqSp.js";import{t as h}from"./message-circle-BsH7vHtN.js";import{t as g}from"./plus-jH3kAliM.js";import{t as _}from"./rotate-ccw-BjzeX7qz.js";import{t as v}from"./search-BVW-n8to.js";import{t as y}from"./sparkles-Ccrj7hxd.js";import{t as b}from"./x-JBAsSOmg.js";import{n as ee,t as x}from"./zoom-in-CaLYwni-.js";import{M as S}from"./src-te3YTBG-.js";import{n as te}from"./input-hw3el2GJ.js";import{t as C}from"./modal-BR4CUFBd.js";import{n as w}from"./toast-LgLp4obE.js";import{t as T}from"./file-markdown-DaflJFk7.js";import{_n as ne,cn as re,vn as E}from"./sdk.gen-BHZ0fJla.js";import{n as D,r as O,t as k}from"./api-errors-CFiCT7Ap.js";import{t as A}from"./consent-hzYg-zbh.js";import{n as ie}from"./conversation-navigation-DsN0hcpL.js";import{t as j}from"./ingest-BizI657K.js";import{t as ae}from"./use-active-assistant-id-CldxA_-M.js";import{t as M}from"./get-memory-stats-BCYSpBF6.js";var N=e(t(),1),P={x:600,y:450},F=`Failed to load the memory graph.`;function I(e){return s({queryKey:[`memory-graph`,e],staleTime:5*6e4,queryFn:async()=>{let{data:t,error:n,response:r}=await ne({path:{assistant_id:e},throwOnError:!1});if(D(r,n,F),r.status===404)return{kind:`unsupported`};if(!r.ok)throw new k(r.status,O(n,r,F));return!t||t.supported===!1?{kind:`unsupported`}:{kind:`ready`,graph:t}}})}var L=`memory_tab_v1`,R=crypto.randomUUID();function z(e){typeof window>`u`||A()&&j([{type:`onboarding`,daemon_event_id:crypto.randomUUID(),recorded_at:Date.now(),screen:`memory`,session_id:R,step_name:e,funnel_version:L}])}var B=Math.PI*(3-Math.sqrt(5)),oe=7,V=2.4,se=34,H=10;function U(e){return Math.min(se,oe+V*Math.sqrt(e))}function W(e){return e===`concept`||e===`skill`||e===`capability`||e===`pending`?e:`other`}function G(e){return e===`link`||e===`learned`?e:`other`}function ce(e,t={}){let n=t.center??P,r=e.nodes,i=r.length;if(i===0)return{nodes:[],edges:[]};let a=new Map;r.forEach((e,t)=>a.set(e.id,t));let o=e.edges.filter(e=>e.source!==e.target&&a.has(e.source)&&a.has(e.target)),s=Array(i).fill(0),c=[];for(let e of o){let t=a.get(e.source),n=a.get(e.target);s[t]++,s[n]++,c.push([t,n])}let l=r.map((e,t)=>U(s[t])),u=70+26*Math.sqrt(i),d=r.map((e,t)=>{let r=(t+.5)/i,a=Math.acos(1-2*r),o=t*B,s=u*Math.cbrt(r),c=Math.sin(a);return{x:n.x+s*c*Math.cos(o),y:n.y+s*c*Math.sin(o),z:s*Math.cos(a),vx:0,vy:0,vz:0}}),f=t.iterations??Math.max(90,Math.min(340,Math.round(46e3/i))),p=.011,m=.82,h=.5,g=1,_=1-.001**(1/f);for(let e=0;e<f;e++){for(let e=0;e<i;e++){let t=d[e];for(let n=e+1;n<i;n++){let r=d[n],i=t.x-r.x,a=t.y-r.y,o=t.z-r.z,s=i*i+a*a+o*o;s<.01&&(i=(e-n)*.1+.1,a=.1,o=.05,s=i*i+a*a+o*o);let c=Math.sqrt(s),l=6400/s,u=i/c*l,f=a/c*l,p=o/c*l;t.vx+=u,t.vy+=f,t.vz+=p,r.vx-=u,r.vy-=f,r.vz-=p}}for(let[e,t]of c){let n=d[e],r=d[t],i=r.x-n.x,a=r.y-n.y,o=r.z-n.z,s=Math.sqrt(i*i+a*a+o*o)||.01,c=.05*(s-140),l=i/s*c,u=a/s*c,f=o/s*c;n.vx+=l,n.vy+=u,n.vz+=f,r.vx-=l,r.vy-=u,r.vz-=f}for(let e=0;e<i;e++){let t=d[e];t.vx+=(n.x-t.x)*p,t.vy+=(n.y-t.y)*p,t.vz+=(0-t.z)*p,t.x+=t.vx*g*h,t.y+=t.vy*g*h,t.z+=t.vz*g*h,t.vx*=m,t.vy*=m,t.vz*=m}g*=1-_}for(let e=0;e<10;e++){let e=!1;for(let t=0;t<i;t++){let n=d[t];for(let r=t+1;r<i;r++){let i=d[r],a=i.x-n.x,o=i.y-n.y,s=i.z-n.z,c=Math.sqrt(a*a+o*o+s*s),u=l[t]+l[r]+H;if(c>=u)continue;c<.01&&(a=(r-t)*.1+.1,o=.1,s=.05,c=Math.sqrt(a*a+o*o+s*s));let f=(u-c)/2,p=a/c*f,m=o/c*f,h=s/c*f;n.x-=p,n.y-=m,n.z-=h,i.x+=p,i.y+=m,i.z+=h,e=!0}}if(!e)break}return{nodes:r.map((e,t)=>{let n={id:e.id,x:d[t].x,y:d[t].y,z:d[t].z,radius:l[t],label:e.label,kind:W(e.kind),degree:s[t]};return e.summary&&(n.summary=e.summary),e.updatedAtMs!==void 0&&(n.updatedAtMs=e.updatedAtMs),n}),edges:o.map((e,t)=>{let n={id:`${e.source}__${e.target}__${t}`,fromId:e.source,toId:e.target,kind:G(e.kind),directed:e.directed??!1};return e.description&&(n.description=e.description),n})}}var le=`Failed to load this concept.`;function ue(e,t){return s({queryKey:[`memory-graph-node`,e,t],enabled:!!(e&&t),queryFn:async()=>{let{data:n,error:r,response:i}=await E({path:{assistant_id:e},query:{id:t??``},throwOnError:!1});if(D(i,r,le),!i.ok)throw new k(i.status,O(r,i,le));return n??{found:!1}}})}var de={concept:`#467CC8`,skill:`#DB4B77`,capability:`#0E9B8B`,pending:`#F1B21E`,other:`#8D99A5`},fe=[`#467CC8`,`#E86B40`,`#7A5AF5`,`#22B8CF`,`#3DB85E`,`#E9C91A`,`#E83F5B`,`#6ECF87`,`#F39B74`,`#F5C94E`],pe={concept:`Concept`,skill:`Skill`,capability:`Capability`,pending:`Pending`,other:`Other`},me=`#F1B21E`,K=o();function q(e){if(e.length<=4)return e.map((e,t)=>({node:e,index:t}));let t=e.slice(-3).map((t,n)=>({node:t,index:e.length-3+n}));return[{node:e[0],index:0},`ellipsis`,...t]}function he(e){return e?new Date(e).toLocaleDateString(`en-GB`,{day:`numeric`,month:`short`,year:`numeric`}):null}var J=600;function Y(e){let t=e.slice(0,J),n=t.lastIndexOf(`
|
|
2
2
|
`);return n>J/2?e.slice(0,n):t}function ge({content:e}){let[t,r]=(0,N.useState)(!1);return e.length<=J?(0,K.jsx)(T,{content:e}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(T,{content:t?e:Y(e)}),(0,K.jsx)(n,{variant:`ghost`,size:`compact`,className:`-ml-2 mt-1`,onClick:()=>r(e=>!e),rightIcon:t?(0,K.jsx)(d,{size:16,"aria-hidden":!0}):(0,K.jsx)(l,{size:16,"aria-hidden":!0}),children:t?`Show less`:`Read full note`})]})}function _e({assistantId:e,node:t,trail:r,neighbors:i,onTravel:o,onCrumb:s,onClose:c,onOpenThread:l}){let d=a(ue(e,t.id)),f=d.data,p=he(t.updatedAtMs),m=f?.title??t.label,g=q(r);return(0,N.useEffect)(()=>{let e=e=>{e.key===`Escape`&&c()};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[c]),(0,K.jsxs)(`div`,{"data-graph-panel":!0,className:`absolute inset-0 z-20 flex justify-end`,onPointerDown:e=>e.stopPropagation(),onPointerMove:e=>e.stopPropagation(),onPointerUp:e=>e.stopPropagation(),children:[(0,K.jsx)(`div`,{className:`absolute inset-0`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 16%, transparent)`},onClick:c}),(0,K.jsxs)(`aside`,{className:`relative flex h-full min-h-0 w-full max-w-md flex-col overflow-hidden`,style:{backgroundColor:`var(--surface-lift)`,borderLeft:`1px solid var(--border-base)`},children:[r.length>1?(0,K.jsxs)(`nav`,{"aria-label":`Concept trail`,className:`flex shrink-0 items-center gap-1 overflow-hidden border-b px-5 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,color:`var(--content-tertiary)`},children:[(0,K.jsx)(`button`,{type:`button`,onClick:()=>s(r.length-2),"aria-label":`Back`,className:`-ml-1 mr-0.5 flex shrink-0 items-center rounded p-0.5 hover:bg-[color-mix(in_srgb,var(--content-tertiary)_14%,transparent)]`,style:{color:`var(--content-tertiary)`},children:(0,K.jsx)(u,{size:16,"aria-hidden":!0})}),g.map((e,t)=>(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[t>0?(0,K.jsx)(`span`,{"aria-hidden":!0,children:`›`}):null,e===`ellipsis`?(0,K.jsx)(`span`,{"aria-hidden":!0,children:`…`}):e.index===r.length-1?(0,K.jsx)(`span`,{"aria-current":`page`,className:`max-w-[9rem] truncate`,style:{color:`var(--content-default)`},children:e.node.label}):(0,K.jsx)(`button`,{type:`button`,onClick:()=>s(e.index),className:`max-w-[8rem] truncate rounded hover:underline`,style:{color:`var(--content-tertiary)`},children:e.node.label})]},e===`ellipsis`?`ellipsis`:e.index))]}):null,(0,K.jsxs)(`header`,{className:`flex shrink-0 items-start justify-between gap-3 border-b px-5 py-4`,style:{borderColor:`var(--border-base)`},children:[(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`h2`,{className:`truncate text-title-small`,style:{color:`var(--content-default)`},title:f?.title??t.label,children:f?.title??t.label}),p?(0,K.jsxs)(`p`,{className:`mt-0.5 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:[`Updated `,p]}):null]}),(0,K.jsx)(n,{variant:`ghost`,iconOnly:(0,K.jsx)(b,{"aria-hidden":!0}),onClick:c,"aria-label":`Close`,tintColor:`var(--content-tertiary)`})]}),(0,K.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-5 py-4`,style:{touchAction:`pan-y`},children:[d.isLoading?(0,K.jsx)(`div`,{className:`flex justify-center py-8`,children:(0,K.jsx)(`div`,{className:`h-5 w-5 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):d.isError?(0,K.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`Couldn't load this concept. Try again in a moment.`}):f?.found&&f.content?.trim()?(0,K.jsx)(ge,{content:f.content},t.id):(0,K.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:`This concept doesn't have written content yet — it exists as a link in the graph, but its page is empty.`}),i.length>0?(0,K.jsxs)(`section`,{className:`mt-6 border-t pt-4`,style:{borderColor:`var(--border-base)`},children:[(0,K.jsxs)(`div`,{className:`mb-2 flex items-baseline justify-between gap-2`,children:[(0,K.jsx)(`h3`,{className:`text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:`Wired to`}),(0,K.jsxs)(`span`,{className:`text-body-small-default tabular-nums`,style:{color:`var(--content-tertiary)`},children:[i.length,` connection`,i.length===1?``:`s`]})]}),(0,K.jsx)(`ul`,{className:`flex list-none flex-col gap-0.5`,children:i.map(e=>(0,K.jsx)(`li`,{children:(0,K.jsxs)(`button`,{type:`button`,onClick:()=>o({id:e.id,label:e.label}),className:`flex w-full items-center gap-2 rounded-lg px-2 py-1.5 text-left text-body-medium-default hover:bg-[color-mix(in_srgb,var(--content-tertiary)_12%,transparent)]`,style:{color:`var(--content-default)`},children:[(0,K.jsx)(`span`,{"aria-hidden":!0,className:`h-1.5 w-1.5 shrink-0 rounded-full`,style:{backgroundColor:e.kind===`learned`?me:`var(--content-tertiary)`}}),(0,K.jsx)(`span`,{className:`truncate`,children:e.label})]})},e.id))})]}):null]}),l?(0,K.jsxs)(`footer`,{className:`flex shrink-0 gap-2 border-t px-5 py-3`,style:{borderColor:`var(--border-base)`},children:[(0,K.jsx)(n,{variant:`outlined`,size:`regular`,className:`flex-1`,leftIcon:(0,K.jsx)(h,{size:16,"aria-hidden":!0}),onClick:()=>l(`Tell me what you remember about "${m}" and how it connects to the rest of what you know.`),children:`Ask about this`}),(0,K.jsx)(n,{variant:`primary`,size:`regular`,className:`flex-1`,leftIcon:(0,K.jsx)(y,{size:16,"aria-hidden":!0}),onClick:()=>l(`I want to refine what you remember about "${m}". Ask me what's off and we'll correct it together.`),children:`Refine`})]}):null]})]})}function ve({onDismiss:e}){return(0,K.jsxs)(`div`,{"data-graph-control":!0,className:`pointer-events-auto absolute left-1/2 top-4 z-10 flex w-[min(30rem,calc(100%-6rem))] -translate-x-1/2 items-start gap-3 rounded-xl px-4 py-3`,style:{backgroundColor:`var(--surface-lift)`,border:`1px solid var(--border-base)`,boxShadow:`0 4px 12px rgba(0, 0, 0, 0.25)`},children:[(0,K.jsx)(`span`,{className:`mt-0.5 shrink-0`,style:{color:`var(--primary-base)`},"aria-hidden":!0,children:(0,K.jsx)(y,{size:18})}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsx)(`p`,{className:`text-body-medium-emphasised`,style:{color:`var(--content-default)`},children:`This is your assistant's mind`}),(0,K.jsx)(`p`,{className:`mt-0.5 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:`Every idea it learns — and the links it draws between them — shows up here. The map grows and rearranges itself as you talk, so the more you share, the richer it gets.`})]}),(0,K.jsx)(n,{variant:`ghost`,iconOnly:(0,K.jsx)(b,{"aria-hidden":!0}),onClick:e,"aria-label":`Dismiss`,tintColor:`var(--content-tertiary)`})]})}var X=8;function ye({nodeKinds:e,coloredByTheme:t,themes:n,hasLinks:r,hasLearned:i,onToggleLink:a,onToggleLearned:o,linkActive:s,learnedActive:c}){return(0,K.jsxs)(`div`,{"data-graph-control":!0,className:`pointer-events-none absolute bottom-4 left-4 flex flex-col gap-1.5 rounded-lg px-3 py-2`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 78%, transparent)`,border:`1px solid var(--border-base)`},children:[e.map(e=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 rounded-full`,style:{backgroundColor:de[e]}}),(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:pe[e]})]},e)),t&&(n&&n.length>0?(0,K.jsxs)(K.Fragment,{children:[n.slice(0,X).map((e,t)=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),(0,K.jsx)(`span`,{className:`max-w-[9rem] truncate text-[11px]`,style:{color:`var(--content-tertiary)`},title:e.concepts?.join(` · `)??e.name,children:e.name})]},t)),n.length>X&&(0,K.jsxs)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:[`+`,n.length-X,` more`]})]}):(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:`Colored by theme`})),(e.length>0||t)&&(r||i)&&(0,K.jsx)(`div`,{className:`mt-0.5 border-t pt-1.5`,style:{borderColor:`var(--border-base)`}}),r&&(0,K.jsx)(be,{swatchStyle:{borderTop:`2px solid var(--content-tertiary)`},label:`Link`,onToggle:a,active:s}),i&&(0,K.jsx)(be,{swatchStyle:{borderTop:`2px dashed #F1B21E`},label:`Learned`,onToggle:o,active:c})]})}function be({swatchStyle:e,label:t,onToggle:n,active:r}){let i=(0,K.jsx)(`span`,{className:`inline-block h-0 w-4`,style:e}),a=(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:t});return n?(0,K.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":r,className:`pointer-events-auto flex cursor-pointer items-center gap-2 border-0 bg-transparent p-0 transition-opacity`,style:{opacity:r===!1?.4:1},children:[i,a]}):(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[i,a]})}var Z=8;function xe(e,t){let n=e.length;if(n===0)return new Map;let r=new Map;e.forEach((e,t)=>r.set(e.id,t));let i=e.map(()=>[]);for(let e of t){let t=r.get(e.fromId),n=r.get(e.toId);t===void 0||n===void 0||t===n||(i[t].push(n),i[n].push(t))}let a=e.map((e,t)=>t);for(let e=0;e<Z;e++)for(let e=0;e<n;e++){let t=i[e];if(t.length===0)continue;let n=new Map;for(let e of t)n.set(a[e],(n.get(a[e])??0)+1);let r=a[e],o=-1;for(let[e,t]of n)(t>o||t===o&&e<r)&&(r=e,o=t);a[e]=r}let o=new Map,s=new Map;return e.forEach((e,t)=>{let n=a[t],r=o.get(n);r===void 0&&(r=o.size,o.set(n,r)),s.set(e.id,r)}),s}var Se=[{value:`all`,label:`All`},{value:`month`,label:`Month`},{value:`week`,label:`Week`}];function Ce({value:e,onChange:t}){return(0,K.jsx)(S,{ariaLabel:`Recency window`,items:Se,value:e,onChange:t,className:`!w-auto [&>*]:!flex-none`})}var we=`vellum:memoryGraph:introDismissed:`;function Te(e){return`${we}${e}`}function Ee(e){if(!e)return!0;try{return window.localStorage.getItem(Te(e))===`1`}catch{return!0}}function De(e){let[t,n]=(0,N.useState)(()=>Ee(e));return(0,N.useEffect)(()=>{n(Ee(e))},[e]),[t,(0,N.useCallback)(()=>{n(!0);try{window.localStorage.setItem(Te(e),`1`)}catch{}},[e])]}var Oe=[`concept`,`skill`,`capability`,`pending`,`other`],ke=.13,Ae=2600,je=.006,Me=1.15,Ne=3,Pe=.32,Fe=.45,Ie=3,Le=4,Re=1440*60*1e3,ze=14*Re,Be=12,Ve=2*Re,He=80,Ue=340,We=.12,Ge=.05,Ke=.03,qe=12,Je=2600;function Ye(e){let t=getComputedStyle(e);return{content:t.getPropertyValue(`--content-default`).trim()||`#e5e7eb`,tertiary:t.getPropertyValue(`--content-tertiary`).trim()||`#8792a0`}}function Xe(e){return e.kind===`learned`?`Learned association`:e.description??`Linked concepts`}function Ze(e,t,n){return t==null?!1:e==null||n-e>t}function Qe(e,t){let n=t?e.get(t):void 0;return e=>t!=null&&(e===t||(n?.has(e)??!1))}function $e({title:e,detail:t}){return(0,K.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 px-6 text-center`,children:[(0,K.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),t?(0,K.jsx)(`p`,{className:`max-w-sm text-body-small-default`,style:{color:`var(--content-tertiary)`},children:t}):null]})}function Q({assistantId:e,className:t,isFullscreen:r,onToggleFullscreen:i,onOpenThread:o,headerAction:s,handleRef:c}){let l=(0,N.useRef)(null),u=(0,N.useRef)(null),d=a(I(e)),f=d.data?.kind===`ready`?d.data.graph:null,h=(0,N.useMemo)(()=>f?ce(f):{nodes:[],edges:[]},[f]),g=d.data?.kind===`ready`&&h.nodes.length>0,y=(0,N.useMemo)(()=>xe(h.nodes,h.edges),[h.nodes,h.edges]),S=(0,N.useMemo)(()=>{let e=new Map;for(let t of h.nodes){let n=y.get(t.id);if(n==null||t.degree===0)continue;let r=e.get(n);r?r.push(t):e.set(n,[t])}return[...e.entries()].map(([e,t])=>{let n=[...t].sort((e,t)=>t.degree-e.degree||(e.id<t.id?-1:1)).slice(0,3);return{hubId:n[0].id,color:fe[e%fe.length],name:n[0].label,concepts:n.map(e=>e.label),size:t.length}}).sort((e,t)=>t.size-e.size)},[y,h.nodes]),te=(0,N.useMemo)(()=>new Set(S.map(e=>e.hubId)),[S]),C=(0,N.useMemo)(()=>{let e=new Map,t=(t,n)=>{let r=e.get(t);r||(r=new Set,e.set(t,r)),r.add(n)};for(let e of h.edges)t(e.fromId,e.toId),t(e.toId,e.fromId);return e},[h.edges]),w=(0,N.useMemo)(()=>{if(h.nodes.length===0)return 1;let e=h.nodes.map(e=>{let t=e.x-P.x,n=e.y-P.y;return Math.sqrt(t*t+n*n+e.z*e.z)+e.radius}).sort((e,t)=>e-t),t=Math.min(e.length-1,Math.floor(e.length*.92));return Math.max(1,e[t])},[h.nodes]),T=(0,N.useRef)({yaw:.5,pitch:.32,zoom:1,hoveredId:null,dragging:!1,moved:!1,lastX:0,lastY:0,lastInteractAt:-1/0,dirty:!0}),ne=(0,N.useRef)([]),re=(0,N.useRef)([]),E=(0,N.useRef)({content:`#e5e7eb`,tertiary:`#8792a0`}),D=(0,N.useRef)(null),O=(0,N.useRef)(!1),k=(0,N.useRef)(null),A=(0,N.useRef)(null),[ie,j]=(0,N.useState)(null),[ae,M]=(0,N.useState)(null),[F,L]=(0,N.useState)([]),R=F.at(-1)??null,B=(0,N.useCallback)(e=>{z(`node_opened`),L(t=>[...t,e])},[]),oe=(0,N.useRef)(null);(0,N.useEffect)(()=>{oe.current=R?.id??null,T.current.dirty=!0},[R?.id]);let[V,se]=De(e),[H,U]=(0,N.useState)(``),[W,G]=(0,N.useState)(!1),le=(0,N.useRef)(null);(0,N.useEffect)(()=>{W&&le.current?.focus()},[W]);let ue=(0,N.useRef)(!1),pe=H.trim().toLowerCase(),q=(0,N.useMemo)(()=>{if(!pe)return null;let e=new Set;for(let t of h.nodes)t.label.toLowerCase().includes(pe)&&e.add(t.id);return e},[pe,h.nodes]),he=(0,N.useRef)({active:!1,matches:null});(0,N.useEffect)(()=>{he.current={active:!!q,matches:q},T.current.dirty=!0},[q]),(0,N.useEffect)(()=>{H.trim()||(ue.current=!1)},[H]);let J=(0,N.useMemo)(()=>!q||q.size===0?[]:h.nodes.filter(e=>q.has(e.id)).sort((e,t)=>t.degree-e.degree).slice(0,8),[q,h.nodes]),[Y,ge]=(0,N.useState)(`all`),X=(0,N.useRef)(null);(0,N.useEffect)(()=>{X.current=Y===`week`?7*Re:Y===`month`?30*Re:null,T.current.dirty=!0},[Y]);let be=(0,N.useMemo)(()=>h.nodes.some(e=>e.updatedAtMs!=null),[h.nodes]);(0,N.useEffect)(()=>{!be&&Y!==`all`&&ge(`all`)},[be,Y]);let[Z,Se]=(0,N.useState)({link:!0,learned:!0}),we=(0,N.useRef)(Z);(0,N.useEffect)(()=>{we.current=Z,T.current.dirty=!0},[Z]),(0,N.useEffect)(()=>{U(``),ge(`all`),Se({link:!0,learned:!0}),L([]),ue.current=!1},[e]);let Te=(0,N.useCallback)(()=>{let e=T.current;e.yaw=.5,e.pitch=.32,e.zoom=1,e.lastInteractAt=-1/0,e.dirty=!0,j(null)},[]),Ee=(0,N.useCallback)(e=>{let t=T.current;t.zoom=Math.max(Fe,Math.min(Ie,t.zoom*e)),t.lastInteractAt=performance.now(),t.dirty=!0},[]),Q=(0,N.useCallback)(e=>{D.current=e,T.current.lastInteractAt=performance.now(),T.current.dirty=!0},[]),$=(0,N.useCallback)(e=>{B(e),Q(e.id)},[B,Q]),et=(0,N.useCallback)(e=>{k.current={id:e,start:performance.now()},Q(e),window.setTimeout(()=>{T.current.dirty=!0},Je+60)},[Q]),tt=(0,N.useCallback)(e=>{h.nodes.some(t=>t.id===e)?et(e):A.current=e},[h.nodes,et]);(0,N.useEffect)(()=>{let e=A.current;e&&h.nodes.some(t=>t.id===e)&&(A.current=null,et(e))},[h.nodes,et]),(0,N.useImperativeHandle)(c,()=>({focusNode:tt}),[tt]);let nt=(0,N.useCallback)(()=>{L([]),U(``),j(null),D.current=null,O.current=!0},[]),rt=(0,N.useCallback)(e=>{U(``);let t=F.slice(0,e+1);L(t);let n=t.at(-1);n?Q(n.id):j(null)},[F,Q]),it=(0,N.useCallback)(e=>{U(``),$(e)},[$]),at=(0,N.useMemo)(()=>{let e=R?.id;if(!e)return[];let t=C.get(e);if(!t||t.size===0)return[];let n=new Map(h.nodes.map(e=>[e.id,e.label])),r=new Map;for(let t of h.edges)t.fromId===e?r.set(t.toId,t.kind):t.toId===e&&r.set(t.fromId,t.kind);let i=[];for(let e of t){let t=n.get(e);t!=null&&i.push({id:e,label:t,kind:r.get(e)})}return i.sort((e,t)=>e.label.localeCompare(t.label)),i},[R?.id,C,h.nodes,h.edges]);(0,N.useEffect)(()=>{if(!g)return;let e=u.current,t=l.current;if(!e||!t)return;let n=e.getContext(`2d`);if(!n)return;let r=h.nodes,i=h.edges,a=y,o=te,s=C,c=new Set(r.map(e=>e.id)),d=w,f=window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;E.current=Ye(t);let p=Math.min(window.devicePixelRatio||1,2),m=0,_=0,v=()=>{let n=t.getBoundingClientRect();m=n.width,_=n.height,p=Math.min(window.devicePixelRatio||1,2),e.width=Math.max(1,Math.round(m*p)),e.height=Math.max(1,Math.round(_*p)),e.style.width=`${m}px`,e.style.height=`${_}px`,E.current=Ye(t),T.current.dirty=!0};v();let b=new ResizeObserver(v);b.observe(t);let ee=new MutationObserver(()=>{E.current=Ye(t),T.current.dirty=!0});ee.observe(document.documentElement,{attributes:!0,attributeFilter:[`data-theme`,`class`,`style`]});let x=0,S=0,A=e=>{let t=S?Math.min(.05,(e-S)/1e3):0;S=e;let l=T.current,u=E.current,h=Date.now(),g=D.current;if(!l.dragging&&e-l.lastInteractAt>Ae&&!f&&!g&&(l.yaw+=ke*t),g){let e=r.find(e=>e.id===g);if(!e)D.current=null;else{let t=e.x-P.x,n=e.y-P.y,r=e.z,i=-Math.atan2(t,r),a=Math.hypot(t,r),o=Math.max(-Me,Math.min(Me,Math.atan2(n,a))),s=Math.min(Ie,1.6),c=f?1:.15,u=i-l.yaw;u=Math.atan2(Math.sin(u),Math.cos(u)),l.yaw+=u*c,l.pitch+=(o-l.pitch)*c,l.zoom+=(s-l.zoom)*c,l.dirty=!0,Math.abs(u)<.01&&Math.abs(o-l.pitch)<.01&&Math.abs(s-l.zoom)<.02&&(D.current=null)}}if(O.current&&!l.dragging){let e=f?1:.15;l.pitch+=(.32-l.pitch)*e,l.zoom+=(1-l.zoom)*e,l.dirty=!0,Math.abs(.32-l.pitch)<.01&&Math.abs(1-l.zoom)<.02&&(O.current=!1)}if(f&&!l.dirty){x=requestAnimationFrame(A);return}l.dirty=!1;let v=Math.cos(l.yaw),y=Math.sin(l.yaw),b=Math.cos(l.pitch),ee=Math.sin(l.pitch),te=Ne*d,C=Math.min(m,_)*.88/(2*d)*l.zoom,w=m/2,ie=_/2;n.setTransform(p,0,0,p,0,0),n.clearRect(0,0,m,_);let j=l.hoveredId,ae=j?s.get(j):void 0,M=e=>!j||e===j||(ae?.has(e)??!1),N=he.current,F=N.active,I=e=>!F||(N.matches?.has(e)??!1),L=X.current,R=e=>Ze(e.updatedAtMs,L,h),z=we.current,B=oe.current,V=B!=null&&c.has(B),se=Qe(s,V?B:null),H=r.length<=He?1:Math.max(We,1-(r.length-He)/(Ue-He)*(1-We)),U=Array(r.length);for(let e=0;e<r.length;e++){let t=r[e],n=t.x-P.x,i=t.y-P.y,a=t.z,o=n*v+a*y,s=-n*y+a*v,c=i*b-s*ee,l=i*ee+s*b,u=te/(te-l);U[e]={node:t,sx:w+o*C*u,sy:ie+c*C*u,sr:Math.max(1.2,t.radius*C*u),depth:Math.max(0,Math.min(1,(l+d)/(2*d)))}}let W=U.map((e,t)=>t).sort((e,t)=>U[e].depth-U[t].depth),G=new Map;for(let e of U)G.set(e.node.id,e);let ce=[];n.lineCap=`round`;for(let e of i){let t=G.get(e.fromId),r=G.get(e.toId);if(!t||!r)continue;let i=e.kind===`learned`,a=B!=null&&(e.fromId===B||e.toId===B);if(!a&&(i?!z.learned:!z.link))continue;let o=F&&(!I(e.fromId)||!I(e.toId))||!a&&(R(t.node)||R(r.node)),s=j!=null&&(e.fromId===j||e.toId===j),c=(t.depth+r.depth)/2;!o&&(!V||a)&&ce.push({ax:t.sx,ay:t.sy,bx:r.sx,by:r.sy,kind:e.kind,description:e.description,depth:c});let l=(i?.34:.28)*(.4+.6*c),d=i?l*H:l,f;f=o?.03:V?a?.9:Ke:j==null?d:s?.9:M(e.fromId)&&M(e.toId)?l:.05,n.globalAlpha=f,n.strokeStyle=i?me:u.tertiary,n.lineWidth=(s||V&&a?2:1)*(.6+.6*c),n.setLineDash(i?[4,4]:[]),n.beginPath(),n.moveTo(t.sx,t.sy),n.lineTo(r.sx,r.sy),n.stroke()}n.setLineDash([]);for(let t of W){let r=U[t],i=r.node,o=i.kind===`concept`?fe[(a.get(i.id)??0)%fe.length]:de[i.kind],s=F&&!I(i.id),c=se(i.id),l=s||R(i)&&!c,u=V?c&&!l:!l&&M(i.id),d=i.id===j,p=Pe+(1-Pe)*r.depth,m=V&&!c?p*Ge:l?p*.08:u?p:p*.18,g=(d?16:i.degree>=Le?8:4)*r.depth,_=i.updatedAtMs;if(_){let n=h-_,i=Math.max(0,1-n/ze);if(i>0){let a=i*Be;!f&&n<Ve&&(a*=.55+.45*Math.sin(e/420+t*1.7)),g+=a*r.depth}}n.shadowColor=o,n.shadowBlur=u?g:0;let v=i.kind===`pending`;n.globalAlpha=m*(v?.3:.55),n.fillStyle=o,n.beginPath(),n.arc(r.sx,r.sy,r.sr,0,Math.PI*2),n.fill(),n.shadowBlur=0,n.globalAlpha=m,n.lineWidth=d?2.5:1.4,n.strokeStyle=o,n.setLineDash(v?[3,3]:[]),n.stroke(),n.setLineDash([]);let y=k.current;if(y&&y.id===i.id){let t=e-y.start;if(t>Je)k.current=null;else if(f)n.globalAlpha=.7,n.lineWidth=1.5,n.beginPath(),n.arc(r.sx,r.sy,r.sr+7,0,Math.PI*2),n.stroke();else for(let e=0;e<3;e++){let i=(t-e*320)/1100;i<=0||i>=1||(n.globalAlpha=(1-i)*.8,n.lineWidth=1.5,n.beginPath(),n.arc(r.sx,r.sy,r.sr+i*46*r.depth,0,Math.PI*2),n.stroke())}}}n.shadowBlur=0,n.textAlign=`center`,n.textBaseline=`top`,n.font=`11px ui-sans-serif, system-ui, sans-serif`;for(let e of W){let t=U[e],r=t.node,i=se(r.id);if(F&&!I(r.id)||R(r)&&!i||!(V?i:F?t.depth>.3:j==null?o.has(r.id)||r.degree>=Le&&t.depth>.55:M(r.id)))continue;n.globalAlpha=(r.id===j||r.id===B?1:.85)*(.4+.6*t.depth),n.fillStyle=u.content;let a=r.label.length>22?`${r.label.slice(0,21)}…`:r.label;n.fillText(a,t.sx,t.sy+t.sr+3)}n.globalAlpha=1,ne.current=U.map(e=>({id:e.node.id,sx:e.sx,sy:e.sy,sr:e.sr,depth:e.depth,updatedAtMs:e.node.updatedAtMs})),re.current=ce,x=requestAnimationFrame(A)};return x=requestAnimationFrame(A),()=>{cancelAnimationFrame(x),b.disconnect(),ee.disconnect()}},[g,h,C,w,y,te]);let ot=(0,N.useCallback)((e,t)=>{let n=he.current,r=X.current,i=Qe(C,oe.current),a=Date.now(),o=null,s=-1;for(let c of ne.current){if(n.active&&!(n.matches?.has(c.id)??!1)||!i(c.id)&&Ze(c.updatedAtMs,r,a))continue;let l=e-c.sx,u=t-c.sy;l*l+u*u<=(c.sr+5)*(c.sr+5)&&c.depth>s&&(o=c.id,s=c.depth)}return o},[C]),st=(0,N.useCallback)((e,t)=>{let n=null,r=1/0,i=-1;for(let a of re.current){let o=a.bx-a.ax,s=a.by-a.ay,c=o*o+s*s,l=0;c>0&&(l=((e-a.ax)*o+(t-a.ay)*s)/c,l=Math.max(0,Math.min(1,l)));let u=e-(a.ax+l*o),d=t-(a.ay+l*s),f=Math.sqrt(u*u+d*d);f>5||(f<r||f===r&&a.depth>i)&&(n={kind:a.kind,description:a.description},r=f,i=a.depth)}return n},[]),ct=e=>{let t=l.current.getBoundingClientRect();return{x:e.clientX-t.left,y:e.clientY-t.top}},lt=(0,N.useCallback)(e=>{if(e.button!==0||e.target.closest(`[data-graph-control]`))return;let t=T.current;D.current=null,t.dragging=!0,t.moved=!1,t.lastX=e.clientX,t.lastY=e.clientY,t.lastInteractAt=performance.now(),e.currentTarget.setPointerCapture(e.pointerId)},[]),ut=(0,N.useCallback)(e=>{let t=T.current;if(t.dragging){let n=e.clientX-t.lastX,r=e.clientY-t.lastY;(Math.abs(n)>2||Math.abs(r)>2)&&(t.moved=!0),t.yaw+=n*je,t.pitch=Math.max(-Me,Math.min(Me,t.pitch+r*je)),t.lastX=e.clientX,t.lastY=e.clientY,t.lastInteractAt=performance.now(),t.dirty=!0;return}let{x:n,y:r}=ct(e),i=ot(n,r);if(i!==t.hoveredId&&(t.hoveredId=i,t.dirty=!0),i)M(null);else{let e=st(n,r);M(e?Xe(e):null)}},[ot,st]),dt=(0,N.useCallback)(e=>{let t=T.current;if(!t.dragging)return;t.dragging=!1,t.lastInteractAt=performance.now(),t.dirty=!0;let n=e.currentTarget;if(n.hasPointerCapture(e.pointerId)&&n.releasePointerCapture(e.pointerId),!t.moved){let{x:t,y:n}=ct(e),r=ot(t,n);if(r){let e=h.nodes.find(e=>e.id===r);e&&$({id:e.id,label:e.label,updatedAtMs:e.updatedAtMs})}else j(null)}},[ot,h.nodes,$]),ft=(0,N.useCallback)(()=>{let e=T.current;M(null),!(e.dragging||e.hoveredId==null)&&(e.hoveredId=null,e.dirty=!0,j(null))},[]);(0,N.useEffect)(()=>{let e=l.current;if(!e||!g)return;let t=e=>{if(e.target.closest?.(`[data-graph-panel]`))return;e.preventDefault();let t=T.current;t.zoom=Math.max(Fe,Math.min(Ie,t.zoom*(1-e.deltaY/500))),t.lastInteractAt=performance.now(),t.dirty=!0};return e.addEventListener(`wheel`,t,{passive:!1}),()=>e.removeEventListener(`wheel`,t)},[g]);let pt=(0,N.useMemo)(()=>{let e=new Set(h.nodes.map(e=>e.kind));return Oe.filter(t=>e.has(t))},[h.nodes]),mt=(0,N.useMemo)(()=>h.edges.some(e=>e.kind===`learned`),[h.edges]),ht=(0,N.useMemo)(()=>h.edges.some(e=>e.kind!==`learned`),[h.edges]);(0,N.useEffect)(()=>{!(ht&&mt)&&(!Z.link||!Z.learned)&&Se({link:!0,learned:!0})},[ht,mt,Z]);let gt=d.data?.kind===`ready`&&!V,_t=h.nodes.length,vt=h.edges.length,yt=new Set(y.values()).size,bt=(e,t)=>`${e} ${t}${e===1?``:`s`}`,xt=gt?null:ie??ae,St=g&&(h.nodes.length>qe||!!H),Ct=!!(i||s)||g,wt;return wt=d.isLoading?(0,K.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,K.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):d.isError?(0,K.jsx)($e,{title:`Couldn't load the memory graph`,detail:`Something went wrong fetching your assistant's memory. Try again in a moment.`}):d.data?.kind===`unsupported`?(0,K.jsx)($e,{title:`Memory graph isn't available`,detail:`The active memory backend doesn't expose a concept graph.`}):g?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`canvas`,{ref:u,className:`absolute inset-0 h-full w-full`}),(h.nodes.length>qe||Y!==`all`)&&be?(0,K.jsx)(`div`,{"data-graph-control":!0,className:`absolute left-4 top-4 z-10`,children:(0,K.jsx)(Ce,{value:Y,onChange:ge})}):null,(0,K.jsx)(ye,{nodeKinds:pt.filter(e=>e!==`concept`),coloredByTheme:pt.includes(`concept`),themes:S,hasLinks:ht,hasLearned:mt,...ht&&mt?{onToggleLink:()=>Se(e=>({...e,link:!e.link})),onToggleLearned:()=>Se(e=>({...e,learned:!e.learned})),linkActive:Z.link,learnedActive:Z.learned}:{}}),(0,K.jsx)(`div`,{className:`pointer-events-none absolute bottom-4 right-4 text-[11px]`,style:{color:`var(--content-tertiary)`},children:`drag to rotate · scroll to zoom`}),f?.truncated?(0,K.jsxs)(`div`,{className:`pointer-events-none absolute bottom-4 left-1/2 -translate-x-1/2 rounded-full px-3 py-1 text-[11px]`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-tertiary)`},children:[`Showing the `,h.nodes.length,` most-connected concepts`]}):null,(0,K.jsxs)(`div`,{"data-graph-control":!0,className:`absolute right-4 top-4 flex flex-col gap-1`,children:[(0,K.jsx)(n,{variant:`ghost`,iconOnly:(0,K.jsx)(x,{}),onClick:()=>Ee(1.25),"aria-label":`Zoom in`,tooltip:`Zoom in`}),(0,K.jsx)(n,{variant:`ghost`,iconOnly:(0,K.jsx)(ee,{}),onClick:()=>Ee(.8),"aria-label":`Zoom out`,tooltip:`Zoom out`}),(0,K.jsx)(n,{variant:`ghost`,iconOnly:(0,K.jsx)(_,{}),onClick:Te,"aria-label":`Reset view`,tooltip:`Reset view`})]})]}):(0,K.jsx)($e,{title:`No concepts yet`,detail:`As your assistant learns and links ideas, they'll appear here as a living map of its memory.`}),(0,K.jsxs)(`div`,{className:`@container flex select-none flex-col overflow-hidden rounded-xl ${t??``}`,style:{backgroundColor:`var(--surface-base)`},children:[Ct?(0,K.jsxs)(`div`,{className:`flex h-12 flex-none items-center gap-2 px-3`,style:{borderBottom:`1px solid var(--border-base)`},children:[i?(0,K.jsx)(n,{variant:`ghost`,iconOnly:r?(0,K.jsx)(m,{}):(0,K.jsx)(p,{}),onClick:i,"aria-label":r?`Exit fullscreen`:`Enter fullscreen`,tooltip:r?`Exit fullscreen`:`Enter fullscreen`}):null,St?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(n,{variant:`ghost`,iconOnly:(0,K.jsx)(v,{}),onClick:()=>G(!0),"aria-label":`Search concepts`,tooltip:`Search concepts`,className:W?`hidden`:`@2xl:hidden`}),(0,K.jsxs)(`div`,{className:`relative ${W?``:`hidden @2xl:block`}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 rounded-full px-2.5 py-1`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`},children:[(0,K.jsx)(v,{size:14,"aria-hidden":!0,style:{color:`var(--content-tertiary)`}}),(0,K.jsx)(`input`,{ref:le,type:`text`,value:H,onChange:e=>{let t=e.target.value;t.trim()&&!ue.current&&(z(`search`),ue.current=!0),U(t)},onKeyDown:e=>{e.key===`Escape`?(H||W)&&(e.stopPropagation(),U(``),G(!1)):e.key===`Enter`&&J.length>0&&(e.preventDefault(),Q(J[0].id))},placeholder:`Search concepts…`,"aria-label":`Search concepts`,className:`w-36 bg-transparent text-[12px] outline-none placeholder:text-[var(--content-tertiary)]`,style:{color:`var(--content-default)`}}),H?(0,K.jsx)(`span`,{className:`text-[11px] tabular-nums`,style:{color:`var(--content-tertiary)`},children:q?.size??0}):null,H||W?(0,K.jsx)(`button`,{type:`button`,onClick:()=>{U(``),G(!1)},"aria-label":`Clear search`,className:`flex items-center`,style:{color:`var(--content-tertiary)`},children:(0,K.jsx)(b,{size:13})}):null]}),H&&J.length>0?(0,K.jsx)(`ul`,{className:`absolute left-0 top-full z-30 mt-1.5 flex max-h-56 w-52 list-none flex-col overflow-y-auto rounded-xl py-1`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 92%, transparent)`,border:`1px solid var(--border-base)`},children:J.map(e=>(0,K.jsx)(`li`,{children:(0,K.jsx)(`button`,{type:`button`,onClick:()=>{$({id:e.id,label:e.label,updatedAtMs:e.updatedAtMs}),U(``),G(!1)},className:`block w-full truncate px-3 py-1 text-left text-[12px] hover:bg-[color-mix(in_srgb,var(--content-tertiary)_14%,transparent)]`,style:{color:`var(--content-default)`},children:e.label})},e.id))}):null]})]}):null,(0,K.jsx)(`div`,{className:`pointer-events-none mx-auto min-w-0`,children:xt?(0,K.jsx)(`div`,{className:`truncate rounded-full px-3 py-1 text-[12px]`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-default)`},children:xt}):g&&!gt&&!W?(0,K.jsxs)(`div`,{className:`rounded-full px-3 py-1 text-[11px] tabular-nums`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-tertiary)`},children:[(0,K.jsxs)(`span`,{className:`@max-md:hidden`,children:[bt(_t,`neuron`),` · `,bt(vt,`synapse`),` ·`,` `,bt(yt,`lobe`)]}),(0,K.jsxs)(`span`,{className:`hidden @max-md:inline`,children:[_t,` · `,vt,` · `,yt]})]}):null}),s?(0,K.jsx)(`div`,{className:`flex-none`,children:s}):null]}):null,(0,K.jsxs)(`div`,{ref:l,className:`relative min-h-0 flex-1`,style:{backgroundImage:`radial-gradient(circle at center, color-mix(in srgb, var(--content-tertiary) 8%, transparent), transparent 62%)`,touchAction:`none`,cursor:g?`grab`:`default`},onPointerDown:g?lt:void 0,onPointerMove:g?ut:void 0,onPointerUp:g?dt:void 0,onPointerCancel:g?dt:void 0,onPointerLeave:g?ft:void 0,children:[gt?(0,K.jsx)(ve,{onDismiss:se}):null,wt,g&&R?(0,K.jsx)(_e,{assistantId:e,node:R,trail:F,neighbors:at,onTravel:it,onCrumb:rt,onClose:nt,onOpenThread:o}):null]})]})}async function $(e,t){let{data:n}=await re({path:{assistant_id:e},body:{content:t},throwOnError:!0});return n}function et({open:e,onOpenChange:t,assistantId:r,onCreated:a}){let o=i(),[s,l]=(0,N.useState)(``),[u,d]=(0,N.useState)(!1),p=(0,N.useCallback)(async()=>{let e=s.trim();if(e){d(!0);try{let n=await $(r,e);if(!n.success){w.error(n.message||`Couldn't save that memory.`);return}w.success(n.pendingNodeId?`Got it — taking you to it.`:`Got it — it's on your map while I file it away.`),l(``),t(!1),a?.(n.pendingNodeId),await Promise.all([o.invalidateQueries({queryKey:I(r).queryKey}),o.invalidateQueries({queryKey:M(r).queryKey})])}catch(e){let t=e instanceof Error?e.message:`Failed to create memory.`;w.error(t)}finally{d(!1)}}},[r,s,t,a,o]);return(0,K.jsx)(C.Root,{open:e,onOpenChange:t,children:(0,K.jsxs)(C.Content,{size:`sm`,children:[(0,K.jsx)(C.Header,{children:(0,K.jsx)(C.Title,{children:`New memory`})}),(0,K.jsx)(C.Body,{children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,K.jsx)(te,{label:`What should I remember?`,placeholder:`e.g. I prefer concise, bulleted summaries.`,value:s,onChange:e=>l(e.target.value),disabled:u,rows:3,fullWidth:!0}),(0,K.jsx)(c,{as:`p`,variant:`body-medium-lighter`,className:`text-(--content-secondary)`,children:`It lands on the map right away, then settles into a concept as it's filed.`})]})}),(0,K.jsxs)(C.Footer,{children:[(0,K.jsx)(C.Close,{asChild:!0,children:(0,K.jsx)(n,{variant:`outlined`,disabled:u,children:`Cancel`})}),(0,K.jsx)(n,{variant:`primary`,onClick:p,disabled:u||!s.trim(),leftIcon:u?(0,K.jsx)(f,{className:`animate-spin`}):void 0,children:u?`Creating…`:`Create memory`})]})]})})}function tt({onOpenThread:e}){let t=ae(),[r,i]=(0,N.useState)(!1),o=(0,N.useRef)(null),s=a(I(t)),c=a(M(t)),l=s.data?.kind===`ready`&&c.data?.kind===`ready`,u=(0,N.useRef)(!1);return(0,N.useEffect)(()=>{u.current||(u.current=!0,z(`opened`))},[]),(0,K.jsxs)(`div`,{className:`relative flex h-full min-h-0 flex-col`,children:[(0,K.jsx)(Q,{assistantId:t,className:`h-full w-full`,onOpenThread:e,handleRef:o,headerAction:l?(0,K.jsx)(n,{variant:`primary`,size:`compact`,leftIcon:(0,K.jsx)(g,{}),onClick:()=>i(!0),children:`Create memory`}):void 0}),l?(0,K.jsx)(et,{open:r,onOpenChange:i,assistantId:t,onCreated:e=>{e&&o.current?.focusNode(e)}}):null]})}function nt(){let e=r();return(0,K.jsx)(tt,{onOpenThread:t=>{z(`chat_from_node`),ie(e,{prompt:t})}},ae())}export{nt as MemoryPageRoute};
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./useQuery-Bz-fbQ-m.js";import{t as r}from"./useMutation-CXGTrp4W.js";import{t as i}from"./jsx-runtime-D3ZM-ToX.js";import{t as a}from"./card-DRIctGVs.js";import"./src-D89CNeuT.js";import{pn as o}from"./sdk.gen-BVAVE6A_.js";import{J as s,h as c,q as l}from"./react-query.gen-r3I6j8-1.js";import{s as u}from"./auth-store-D9BqFncz.js";import{t as d}from"./client-feature-flag-store-oTfL8Oiz.js";import{t as f}from"./access-D3fUSyFH.js";import{t as p}from"./use-active-assistant-id-Cjbsk2Q3.js";var m=e(t(),1),h=class extends Error{status;constructor(e,t){super(t),this.name=`SimulateMemoryRouterError`,this.status=e}};async function g(e,t,n){let{data:r,response:i}=await o({path:{assistant_id:e},body:t,signal:n,throwOnError:!1}),a=i?await i.clone().text().catch(()=>``):``;if(!i||!i.ok)throw new h(i?.status??0,a||i?.statusText||`Failed to simulate memory router`);if(!r)throw new h(i.status,`Empty response from memory router simulator endpoint`);return{response:r,rawRequest:JSON.stringify(t,null,2),rawResponse:_(a)}}function _(e){if(e.length===0)return e;try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function v(e){return r({mutationFn:async t=>{if(!e)throw new h(0,`Missing assistantId`);return g(e,t)}})}function y(e){return n({...c({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4})}function b(e){return n({...s({path:{assistant_id:e}}),enabled:!!e,staleTime:1440*60*1e3})}function x(e){return n({...l({path:{assistant_id:e}}),enabled:!!e,staleTime:1/0})}var S=i();function C(){let e=f(),t=u(),n=d.use.memoryRouterPlayground();return t?(0,S.jsx)($,{children:`Loading…`}):!e||!n?(0,S.jsx)($,{children:`Memory router playground is not available.`}):(0,S.jsx)(T,{})}var w={tier1:``,tier2:``,batch:``,profile:``,customPrompt:``};function T(){let e=p(),t=v(e),n=v(e),r=y(e),i=b(e),a=x(e),[o,s]=(0,m.useState)(``),[c,l]=(0,m.useState)([{assistantMessage:``,userMessage:``}]),[u,d]=(0,m.useState)(!1);(0,m.useEffect)(()=>{if(u)return;let e=a.data?.nowText;typeof e==`string`&&o===``&&s(e)},[a.data?.nowText,o,u]);let[f,h]=(0,m.useState)(w),[g,_]=(0,m.useState)(w),[C,T]=(0,m.useState)(null),[D,k]=(0,m.useState)(null),j=c[c.length-1].userMessage,M=e=>{let r=e===`A`?f:g,i=e===`A`?T:k,a=e===`A`?t:n;i(null);let s;try{s=E(r)}catch(e){i(e instanceof Error?e.message:`Invalid override input`);return}let l=r.profile.trim().length>0?r.profile:void 0,u=r.customPrompt.trim().length>0?r.customPrompt:void 0,d=c.map((e,t)=>t===c.length-1?{...e,userMessage:e.userMessage.trim()}:e);a.mutate({recentTurnPairs:d,nowText:o,...s?{configOverrides:s}:{},...l===void 0?{}:{profileOverride:l},...u===void 0?{}:{routerPromptOverride:u}})},N=()=>{M(`A`),M(`B`)},P=j.trim().length>0,I=P&&!t.isPending,L=P&&!n.isPending;return(0,S.jsx)(`div`,{className:`flex h-full min-h-0 flex-col overflow-y-auto`,children:(0,S.jsxs)(`div`,{className:`mx-auto flex w-full max-w-[1280px] flex-col gap-6 p-6`,children:[(0,S.jsx)(ee,{}),(0,S.jsx)(O,{nowText:o,onNowTextChange:e=>{d(!0),s(e)},onReloadNowText:()=>{let e=a.data?.nowText;typeof e==`string`&&(s(e),d(!1))},nowTextLoading:a.isLoading,pairs:c,onPairsChange:l}),(0,S.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,S.jsx)(A,{paneId:`A`,overrides:f,onChange:h,onRun:()=>M(`A`),canRun:I,isRunning:t.isPending,profiles:r.data?.profiles??[],activeProfile:r.data?.activeProfile??null,defaultPromptTemplate:i.data?.template??``}),(0,S.jsx)(A,{paneId:`B`,overrides:g,onChange:_,onRun:()=>M(`B`),canRun:L,isRunning:n.isPending,profiles:r.data?.profiles??[],activeProfile:r.data?.activeProfile??null,defaultPromptTemplate:i.data?.template??``})]}),(0,S.jsx)(`div`,{className:`flex justify-end`,children:(0,S.jsx)(te,{onClick:N,disabled:!P||t.isPending||n.isPending,isRunning:t.isPending||n.isPending})}),(0,S.jsx)(ne,{visible:t.data!==void 0&&n.data!==void 0}),(0,S.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,S.jsx)(F,{paneId:`A`,userMessage:j,mutation:t,otherResult:n.data?.response,validation:C}),(0,S.jsx)(F,{paneId:`B`,userMessage:j,mutation:n,otherResult:t.data?.response,validation:D})]})]})})}function E(e){let t={...D(`tier1_size`,e.tier1),...D(`tier2_size`,e.tier2),...D(`batch_size`,e.batch)};return Object.keys(t).length===0?void 0:t}function D(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(`${e} must be a positive integer or 'null' (got "${n}")`);return{[e]:r}}function ee(){return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,S.jsx)(`h1`,{className:`text-body-large-default`,style:{color:`var(--content-default)`},children:`Memory Router Playground`}),(0,S.jsxs)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:[`Dry-run the v4 router with custom tier/batch overrides. Read-only — no rows are written to `,(0,S.jsx)(`code`,{children:`memory_v2_injection_events`}),` or`,` `,(0,S.jsx)(`code`,{children:`memory_v2_activation_logs`}),`, and no activation state is mutated. Leave an override blank to inherit the live config value; enter`,` `,(0,S.jsx)(`code`,{children:`null`}),` to explicitly disable a tier.`]})]})}function O({nowText:e,onNowTextChange:t,onReloadNowText:n,nowTextLoading:r,pairs:i,onPairsChange:o}){let s=(e,t)=>{o(i.map((n,r)=>r===e?{...n,...t}:n))},c=()=>{o([{assistantMessage:``,userMessage:``},...i])},l=e=>{e!==i.length-1&&o(i.filter((t,n)=>n!==e))};return(0,S.jsx)(a,{children:(0,S.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,S.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Conversational context (shared by both panes)`}),(0,S.jsx)(k,{id:`memory-router-playground-now`,label:`<now> block`,value:e,onChange:t,rows:6,monospace:!0,placeholder:r?`Loading current NOW.md…`:`Pre-filled with the live NOW.md. Edit to test alternate states.`,trailing:(0,S.jsx)(`button`,{type:`button`,onClick:n,disabled:r,className:`rounded px-2 py-1 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r?`not-allowed`:`pointer`},children:`Reload live NOW.md`})}),(0,S.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,S.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:`Recent (assistant, user) pairs · oldest first`}),(0,S.jsx)(`button`,{type:`button`,onClick:c,className:`rounded px-2 py-1 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:`pointer`},children:`+ Add older pair`})]}),i.map((e,t)=>{let n=t===i.length-1;return(0,S.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-md border p-3`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`},children:[(0,S.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,S.jsxs)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:[`Pair `,t+1,` of `,i.length,n?` · most recent`:``]}),!n&&(0,S.jsx)(`button`,{type:`button`,onClick:()=>l(t),className:`rounded px-2 py-1 text-label-default`,style:{background:`transparent`,color:`var(--system-negative-strong)`,border:`none`,cursor:`pointer`},children:`Remove`})]}),(0,S.jsx)(k,{id:`memory-router-playground-pair-${t}-assistant`,label:`[assistant]: reply`,value:e.assistantMessage,onChange:e=>s(t,{assistantMessage:e}),rows:3,placeholder:t===0&&i.length===1?`Leave blank for a first-turn scenario.`:`Assistant's reply that came before the user message below.`}),(0,S.jsx)(k,{id:`memory-router-playground-pair-${t}-user`,label:n?`Just-arrived [user]: message`:`[user]: message`,value:e.userMessage,onChange:e=>s(t,{userMessage:e}),rows:3,placeholder:n?`e.g. what should we ship next`:`User's message.`,required:n})]},t)})]})})}function k({id:e,label:t,value:n,onChange:r,rows:i,placeholder:a,monospace:o,trailing:s,required:c}){return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,S.jsxs)(`label`,{htmlFor:e,className:`text-label-default`,style:{color:`var(--content-secondary)`},children:[t,c?` *`:``]}),s]}),(0,S.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 A({paneId:e,overrides:t,onChange:n,onRun:r,canRun:i,isRunning:o,profiles:s,activeProfile:c,defaultPromptTemplate:l}){return(0,S.jsx)(a,{children:(0,S.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,S.jsxs)(`div`,{className:`text-body-medium-default`,style:{color:q(e)},children:[`Config `,e]}),(0,S.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-3`,children:[(0,S.jsx)(N,{paneId:e,label:`tier1_size`,value:t.tier1,onChange:e=>n({...t,tier1:e})}),(0,S.jsx)(N,{paneId:e,label:`tier2_size`,value:t.tier2,onChange:e=>n({...t,tier2:e})}),(0,S.jsx)(N,{paneId:e,label:`batch_size`,value:t.batch,onChange:e=>n({...t,batch:e})})]}),(0,S.jsx)(M,{paneId:e,value:t.profile,onChange:e=>n({...t,profile:e}),profiles:s,activeProfile:c}),(0,S.jsx)(j,{paneId:e,value:t.customPrompt,onChange:e=>n({...t,customPrompt:e}),defaultTemplate:l}),(0,S.jsx)(`div`,{className:`flex justify-end`,children:(0,S.jsx)(`button`,{type:`button`,onClick:r,disabled:!i,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:i?`var(--system-positive-strong)`:`var(--surface-overlay)`,color:i?`var(--content-on-positive)`:`var(--content-disabled)`,border:`none`,cursor:i?`pointer`:`not-allowed`},children:o?`Running…`:`Run ${e}`})})]})})}function j({paneId:e,value:t,onChange:n,defaultTemplate:r}){let[i,a]=(0,m.useState)(!1),o=`memory-router-playground-${e}-prompt`,s=t.trim().length>0;return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,S.jsxs)(`button`,{type:`button`,onClick:()=>a(e=>!e),className:`text-label-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[i?`▾`:`▸`,` System prompt`,` `,(0,S.jsxs)(`span`,{style:{color:`var(--content-tertiary)`},children:[`(`,s?`custom`:`bundled`,`)`]})]}),i&&(0,S.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,S.jsx)(`button`,{type:`button`,onClick:()=>n(r),disabled:r.length===0,className:`rounded px-2 py-1 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r.length===0?`not-allowed`:`pointer`},children:`Load default`}),(0,S.jsx)(`button`,{type:`button`,onClick:()=>n(``),disabled:!s,className:`rounded px-2 py-1 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:s?`pointer`:`not-allowed`},children:`Reset`})]})]}),i&&(0,S.jsx)(`textarea`,{id:o,value:t,onChange:e=>n(e.target.value),rows:12,placeholder:`Custom router system prompt. Available placeholders:
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./useQuery-Bz-fbQ-m.js";import{t as r}from"./useMutation-CXGTrp4W.js";import{t as i}from"./jsx-runtime-D3ZM-ToX.js";import{t as a}from"./card-DRIctGVs.js";import"./src-te3YTBG-.js";import{pn as o}from"./sdk.gen-BHZ0fJla.js";import{J as s,h as c,q as l}from"./react-query.gen-C5c1Acuq.js";import{s as u}from"./auth-store-5qq59BAN.js";import{t as d}from"./client-feature-flag-store-CMncoan8.js";import{t as f}from"./access-DS79PSR3.js";import{t as p}from"./use-active-assistant-id-CldxA_-M.js";var m=e(t(),1),h=class extends Error{status;constructor(e,t){super(t),this.name=`SimulateMemoryRouterError`,this.status=e}};async function g(e,t,n){let{data:r,response:i}=await o({path:{assistant_id:e},body:t,signal:n,throwOnError:!1}),a=i?await i.clone().text().catch(()=>``):``;if(!i||!i.ok)throw new h(i?.status??0,a||i?.statusText||`Failed to simulate memory router`);if(!r)throw new h(i.status,`Empty response from memory router simulator endpoint`);return{response:r,rawRequest:JSON.stringify(t,null,2),rawResponse:_(a)}}function _(e){if(e.length===0)return e;try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function v(e){return r({mutationFn:async t=>{if(!e)throw new h(0,`Missing assistantId`);return g(e,t)}})}function y(e){return n({...c({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4})}function b(e){return n({...s({path:{assistant_id:e}}),enabled:!!e,staleTime:1440*60*1e3})}function x(e){return n({...l({path:{assistant_id:e}}),enabled:!!e,staleTime:1/0})}var S=i();function C(){let e=f(),t=u(),n=d.use.memoryRouterPlayground();return t?(0,S.jsx)($,{children:`Loading…`}):!e||!n?(0,S.jsx)($,{children:`Memory router playground is not available.`}):(0,S.jsx)(T,{})}var w={tier1:``,tier2:``,batch:``,profile:``,customPrompt:``};function T(){let e=p(),t=v(e),n=v(e),r=y(e),i=b(e),a=x(e),[o,s]=(0,m.useState)(``),[c,l]=(0,m.useState)([{assistantMessage:``,userMessage:``}]),[u,d]=(0,m.useState)(!1);(0,m.useEffect)(()=>{if(u)return;let e=a.data?.nowText;typeof e==`string`&&o===``&&s(e)},[a.data?.nowText,o,u]);let[f,h]=(0,m.useState)(w),[g,_]=(0,m.useState)(w),[C,T]=(0,m.useState)(null),[D,k]=(0,m.useState)(null),j=c[c.length-1].userMessage,M=e=>{let r=e===`A`?f:g,i=e===`A`?T:k,a=e===`A`?t:n;i(null);let s;try{s=E(r)}catch(e){i(e instanceof Error?e.message:`Invalid override input`);return}let l=r.profile.trim().length>0?r.profile:void 0,u=r.customPrompt.trim().length>0?r.customPrompt:void 0,d=c.map((e,t)=>t===c.length-1?{...e,userMessage:e.userMessage.trim()}:e);a.mutate({recentTurnPairs:d,nowText:o,...s?{configOverrides:s}:{},...l===void 0?{}:{profileOverride:l},...u===void 0?{}:{routerPromptOverride:u}})},N=()=>{M(`A`),M(`B`)},P=j.trim().length>0,I=P&&!t.isPending,L=P&&!n.isPending;return(0,S.jsx)(`div`,{className:`flex h-full min-h-0 flex-col overflow-y-auto`,children:(0,S.jsxs)(`div`,{className:`mx-auto flex w-full max-w-[1280px] flex-col gap-6 p-6`,children:[(0,S.jsx)(ee,{}),(0,S.jsx)(O,{nowText:o,onNowTextChange:e=>{d(!0),s(e)},onReloadNowText:()=>{let e=a.data?.nowText;typeof e==`string`&&(s(e),d(!1))},nowTextLoading:a.isLoading,pairs:c,onPairsChange:l}),(0,S.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,S.jsx)(A,{paneId:`A`,overrides:f,onChange:h,onRun:()=>M(`A`),canRun:I,isRunning:t.isPending,profiles:r.data?.profiles??[],activeProfile:r.data?.activeProfile??null,defaultPromptTemplate:i.data?.template??``}),(0,S.jsx)(A,{paneId:`B`,overrides:g,onChange:_,onRun:()=>M(`B`),canRun:L,isRunning:n.isPending,profiles:r.data?.profiles??[],activeProfile:r.data?.activeProfile??null,defaultPromptTemplate:i.data?.template??``})]}),(0,S.jsx)(`div`,{className:`flex justify-end`,children:(0,S.jsx)(te,{onClick:N,disabled:!P||t.isPending||n.isPending,isRunning:t.isPending||n.isPending})}),(0,S.jsx)(ne,{visible:t.data!==void 0&&n.data!==void 0}),(0,S.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,S.jsx)(F,{paneId:`A`,userMessage:j,mutation:t,otherResult:n.data?.response,validation:C}),(0,S.jsx)(F,{paneId:`B`,userMessage:j,mutation:n,otherResult:t.data?.response,validation:D})]})]})})}function E(e){let t={...D(`tier1_size`,e.tier1),...D(`tier2_size`,e.tier2),...D(`batch_size`,e.batch)};return Object.keys(t).length===0?void 0:t}function D(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(`${e} must be a positive integer or 'null' (got "${n}")`);return{[e]:r}}function ee(){return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,S.jsx)(`h1`,{className:`text-body-large-default`,style:{color:`var(--content-default)`},children:`Memory Router Playground`}),(0,S.jsxs)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:[`Dry-run the v4 router with custom tier/batch overrides. Read-only — no rows are written to `,(0,S.jsx)(`code`,{children:`memory_v2_injection_events`}),` or`,` `,(0,S.jsx)(`code`,{children:`memory_v2_activation_logs`}),`, and no activation state is mutated. Leave an override blank to inherit the live config value; enter`,` `,(0,S.jsx)(`code`,{children:`null`}),` to explicitly disable a tier.`]})]})}function O({nowText:e,onNowTextChange:t,onReloadNowText:n,nowTextLoading:r,pairs:i,onPairsChange:o}){let s=(e,t)=>{o(i.map((n,r)=>r===e?{...n,...t}:n))},c=()=>{o([{assistantMessage:``,userMessage:``},...i])},l=e=>{e!==i.length-1&&o(i.filter((t,n)=>n!==e))};return(0,S.jsx)(a,{children:(0,S.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,S.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Conversational context (shared by both panes)`}),(0,S.jsx)(k,{id:`memory-router-playground-now`,label:`<now> block`,value:e,onChange:t,rows:6,monospace:!0,placeholder:r?`Loading current NOW.md…`:`Pre-filled with the live NOW.md. Edit to test alternate states.`,trailing:(0,S.jsx)(`button`,{type:`button`,onClick:n,disabled:r,className:`rounded px-2 py-1 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r?`not-allowed`:`pointer`},children:`Reload live NOW.md`})}),(0,S.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,S.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:`Recent (assistant, user) pairs · oldest first`}),(0,S.jsx)(`button`,{type:`button`,onClick:c,className:`rounded px-2 py-1 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:`pointer`},children:`+ Add older pair`})]}),i.map((e,t)=>{let n=t===i.length-1;return(0,S.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-md border p-3`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`},children:[(0,S.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,S.jsxs)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:[`Pair `,t+1,` of `,i.length,n?` · most recent`:``]}),!n&&(0,S.jsx)(`button`,{type:`button`,onClick:()=>l(t),className:`rounded px-2 py-1 text-label-default`,style:{background:`transparent`,color:`var(--system-negative-strong)`,border:`none`,cursor:`pointer`},children:`Remove`})]}),(0,S.jsx)(k,{id:`memory-router-playground-pair-${t}-assistant`,label:`[assistant]: reply`,value:e.assistantMessage,onChange:e=>s(t,{assistantMessage:e}),rows:3,placeholder:t===0&&i.length===1?`Leave blank for a first-turn scenario.`:`Assistant's reply that came before the user message below.`}),(0,S.jsx)(k,{id:`memory-router-playground-pair-${t}-user`,label:n?`Just-arrived [user]: message`:`[user]: message`,value:e.userMessage,onChange:e=>s(t,{userMessage:e}),rows:3,placeholder:n?`e.g. what should we ship next`:`User's message.`,required:n})]},t)})]})})}function k({id:e,label:t,value:n,onChange:r,rows:i,placeholder:a,monospace:o,trailing:s,required:c}){return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,S.jsxs)(`label`,{htmlFor:e,className:`text-label-default`,style:{color:`var(--content-secondary)`},children:[t,c?` *`:``]}),s]}),(0,S.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 A({paneId:e,overrides:t,onChange:n,onRun:r,canRun:i,isRunning:o,profiles:s,activeProfile:c,defaultPromptTemplate:l}){return(0,S.jsx)(a,{children:(0,S.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,S.jsxs)(`div`,{className:`text-body-medium-default`,style:{color:q(e)},children:[`Config `,e]}),(0,S.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-3`,children:[(0,S.jsx)(N,{paneId:e,label:`tier1_size`,value:t.tier1,onChange:e=>n({...t,tier1:e})}),(0,S.jsx)(N,{paneId:e,label:`tier2_size`,value:t.tier2,onChange:e=>n({...t,tier2:e})}),(0,S.jsx)(N,{paneId:e,label:`batch_size`,value:t.batch,onChange:e=>n({...t,batch:e})})]}),(0,S.jsx)(M,{paneId:e,value:t.profile,onChange:e=>n({...t,profile:e}),profiles:s,activeProfile:c}),(0,S.jsx)(j,{paneId:e,value:t.customPrompt,onChange:e=>n({...t,customPrompt:e}),defaultTemplate:l}),(0,S.jsx)(`div`,{className:`flex justify-end`,children:(0,S.jsx)(`button`,{type:`button`,onClick:r,disabled:!i,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:i?`var(--system-positive-strong)`:`var(--surface-overlay)`,color:i?`var(--content-on-positive)`:`var(--content-disabled)`,border:`none`,cursor:i?`pointer`:`not-allowed`},children:o?`Running…`:`Run ${e}`})})]})})}function j({paneId:e,value:t,onChange:n,defaultTemplate:r}){let[i,a]=(0,m.useState)(!1),o=`memory-router-playground-${e}-prompt`,s=t.trim().length>0;return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,S.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,S.jsxs)(`button`,{type:`button`,onClick:()=>a(e=>!e),className:`text-label-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[i?`▾`:`▸`,` System prompt`,` `,(0,S.jsxs)(`span`,{style:{color:`var(--content-tertiary)`},children:[`(`,s?`custom`:`bundled`,`)`]})]}),i&&(0,S.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,S.jsx)(`button`,{type:`button`,onClick:()=>n(r),disabled:r.length===0,className:`rounded px-2 py-1 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r.length===0?`not-allowed`:`pointer`},children:`Load default`}),(0,S.jsx)(`button`,{type:`button`,onClick:()=>n(``),disabled:!s,className:`rounded px-2 py-1 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:s?`pointer`:`not-allowed`},children:`Reset`})]})]}),i&&(0,S.jsx)(`textarea`,{id:o,value:t,onChange:e=>n(e.target.value),rows:12,placeholder:`Custom router system prompt. Available placeholders:
|
|
2
2
|
{{ASSISTANT_NAME}}, {{USER_NAME}}, {{PAGE_INDEX}}
|
|
3
3
|
Leave blank to use the bundled template. "Load default" seeds the textarea with the bundled body for editing.`,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 M({paneId:e,value:t,onChange:n,profiles:r,activeProfile:i}){let a=`memory-router-playground-${e}-profile`,o=i!==null&&i.length>0?`inherit active (${i})`:`inherit active`;return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,S.jsx)(`label`,{htmlFor:a,className:`text-label-default`,style:{color:`var(--content-secondary)`},children:`llm.profiles override`}),(0,S.jsxs)(`select`,{id:a,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,S.jsx)(`option`,{value:``,children:o}),r.map(e=>(0,S.jsx)(`option`,{value:e,children:e},e))]})]})}function N({paneId:e,label:t,value:n,onChange:r}){let i=`memory-router-playground-${e}-${t}`;return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,S.jsx)(`label`,{htmlFor:i,className:`text-label-default`,style:{color:`var(--content-secondary)`},children:t}),(0,S.jsx)(`input`,{id:i,value:n,onChange:e=>r(e.target.value),placeholder:`inherit`,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}){return(0,S.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:n?`Running…`:`Run both`})}function ne({visible:e}){return e?(0,S.jsxs)(`div`,{className:`flex flex-wrap items-center gap-4 rounded-md px-4 py-2 text-label-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`},children:[(0,S.jsx)(P,{marker:`●`,markerColor:`var(--content-default)`,label:`in both`}),(0,S.jsx)(P,{marker:`◆`,markerColor:q(`A`),label:`A only`}),(0,S.jsx)(P,{marker:`◇`,markerColor:q(`B`),label:`B only`})]}):null}function P({marker:e,markerColor:t,label:n}){return(0,S.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,S.jsx)(`span`,{style:{color:t},children:e}),(0,S.jsx)(`span`,{children:n})]})}function F({paneId:e,userMessage:t,mutation:n,otherResult:r,validation:i}){let a=n.data;return(0,S.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,S.jsx)(R,{paneId:e}),i!==null&&(0,S.jsx)(Q,{message:i}),n.isError&&(0,S.jsx)(Q,{message:n.error instanceof Error?n.error.message:`Failed to run simulation`}),a!==void 0&&(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(z,{paneId:e,userMessage:t,result:a.response,otherResult:r}),(0,S.jsx)(I,{paneId:e,rawRequest:a.rawRequest,rawResponse:a.rawResponse})]})]})}function I({paneId:e,rawRequest:t,rawResponse:n}){let[r,i]=(0,m.useState)(!1);return(0,S.jsx)(a,{children:(0,S.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,S.jsxs)(`button`,{type:`button`,onClick:()=>i(e=>!e),className:`text-label-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[r?`▾`:`▸`,` Raw API exchange`]}),r&&(0,S.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,S.jsx)(L,{label:`Request (Pane ${e})`,body:t}),(0,S.jsx)(L,{label:`Response (Pane ${e})`,body:n})]})]})})}function L({label:e,body:t}){return(0,S.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,S.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:e}),(0,S.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?`(empty)`:t})]})}function R({paneId:e}){return(0,S.jsxs)(`div`,{className:`text-body-medium-default`,style:{color:q(e)},children:[`Pane `,e]})}function z({paneId:e,userMessage:t,result:n,otherResult:r}){let i=(0,m.useMemo)(()=>B(n,r),[n,r]),a=(0,m.useMemo)(()=>W(n),[n]);return(0,S.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,S.jsx)(H,{result:n,userMessage:t,otherResult:r,counts:(0,m.useMemo)(()=>V(i),[i])}),(0,S.jsx)(U,{result:n}),n.failureReason!==null&&(0,S.jsx)(Q,{message:`Router failure: ${n.failureReason}`}),a.length===0?(0,S.jsx)(X,{}):a.map(t=>(0,S.jsx)(Y,{paneId:e,source:t.source,slugs:t.slugs,scores:n.scores,diff:i},t.source))]})}function B(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 V(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 H({result:e,userMessage:t,otherResult:n,counts:r}){let i=[{label:`User message`,value:t},{label:`Total candidate pages`,value:e.totalCandidatePages.toLocaleString()},{label:`Selected`,value:`${e.selectedSlugs.length} (live max_page_ids: ${e.effectiveConfig.max_page_ids})`}];return n!==void 0&&i.push({label:`Diff`,value:`${r.shared} shared · ${r.unique} unique to this pane`}),(0,S.jsx)(a,{children:(0,S.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,S.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Summary`}),(0,S.jsx)(Z,{rows:i})]})})}function U({result:e}){let t=[`tier1_size`,`tier2_size`,`batch_size`,`max_page_ids`].map(t=>{let n=e.effectiveConfig[t],r=e.overrides[t];return{label:t,value:`${n===null?`null`:String(n)}${r===void 0?``:` (override)`}`}});return t.push({label:`llm.profiles override`,value:e.profileOverride===null?`inherit active`:`${e.profileOverride} (override)`}),t.push({label:`system prompt`,value:e.routerPromptOverridden?`custom`:`bundled`}),(0,S.jsx)(a,{children:(0,S.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,S.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`Effective config`}),(0,S.jsx)(Z,{rows:t})]})})}function W(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)=>G(e)-G(t)).map(e=>({source:e,slugs:t.get(e)}))}function G(e){return e===`tier1`?0:e===`tier2`?1:e.startsWith(`tier3:`)?2+Number(e.slice(6)):2**53-1}function K(e){return e===`tier1`?`tier 1`:e===`tier2`?`tier 2`:e.startsWith(`tier3:`)?`tier 3 · b${e.slice(6)}`:e}function q(e){return e===`A`?`var(--system-mid-strong)`:`var(--primary-base)`}function J(e,t){return t===`both`?{color:`var(--content-default)`,marker:`●`}:{color:q(e),marker:e===`A`?`◆`:`◇`}}function Y({paneId:e,source:t,slugs:n,scores:r,diff:i}){return(0,S.jsx)(a,{children:(0,S.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,S.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,S.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:K(t)}),(0,S.jsxs)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:[n.length,` `,n.length===1?`page`:`pages`]})]}),(0,S.jsx)(`ul`,{className:`flex flex-col gap-1`,children:n.map(n=>{let{color:a,marker:o}=J(e,i.get(n)??`only-here`);return(0,S.jsxs)(`li`,{className:`flex items-baseline justify-between gap-3`,children:[(0,S.jsxs)(`span`,{className:`flex items-baseline gap-2`,children:[(0,S.jsx)(`span`,{style:{color:a},children:o}),(0,S.jsx)(`code`,{className:`text-body-medium-default`,style:{color:a},children:n})]}),t===`tier2`&&(0,S.jsxs)(`span`,{className:`tabular-nums text-label-default`,style:{color:`var(--content-secondary)`},children:[`EMA `,(r[n]??0).toFixed(3)]})]},n)})})]})})}function X(){return(0,S.jsx)(a,{children:(0,S.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,S.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:`No pages selected`}),(0,S.jsx)(`span`,{className:`text-label-default`,style:{color:`var(--content-secondary)`},children:`The router returned an empty selection. Try a more specific query, or relax the override values.`})]})})}function Z({rows:e}){return(0,S.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map(({label:e,value:t})=>(0,S.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,S.jsx)(`span`,{className:`shrink-0 text-label-default`,style:{color:`var(--content-secondary)`},children:e}),(0,S.jsx)(`span`,{className:`text-right text-body-medium-lighter`,style:{color:`var(--content-default)`},children:t})]},e))})}function Q({message:e}){return(0,S.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,S.jsx)(`div`,{className:`flex h-full w-full items-center justify-center p-8 text-label-default`,style:{color:`var(--content-tertiary)`},children:e})}export{C as MemoryRouterPlaygroundPage};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{t as e}from"./capture-error-Bj8_eutd.js";import{Cn as t,
|
|
1
|
+
import{t as e}from"./capture-error-Bj8_eutd.js";import{Cn as t,Rr as n,Sn as r,Ur as i,bn as a,u as o,xn as s}from"./sdk.gen-BHZ0fJla.js";import{t as c}from"./assistant-identity-store-DIyVo8LV.js";import{r as l,t as u}from"./semver-BpijV4FQ.js";import{n as d}from"./api-errors-CFiCT7Ap.js";import{n as f}from"./platform-detection-XEAAu4c-.js";import{a as p,r as m}from"./prechat-CeL4a_1i.js";import{t as h}from"./effective-timezone-CmcoXrio.js";var g=/^\[File attachment\] (.+?), type=([^,\n]+?)(?:, size=([^\n]+))?$/,_=/^([\d.]+)\s*(B|KB|MB|GB)$/;function v(e){let t=_.exec(e.trim());if(!t)return 0;let n=Number.parseFloat(t[1]);if(!Number.isFinite(n))return 0;switch(t[2]){case`B`:return Math.round(n);case`KB`:return Math.round(n*1024);case`MB`:return Math.round(n*1024*1024);case`GB`:return Math.round(n*1024*1024*1024);default:return 0}}function y(e){let t=e.indexOf(`[File attachment] `);if(t<0||!(t===0||e[t-1]===`
|
|
2
2
|
`))return{cleanedContent:e,attachments:void 0};let n=t>0&&e[t-1]===`
|
|
3
3
|
`?e.slice(0,t-1):e.slice(0,t),r=[];for(let n of e.slice(t).split(`
|
|
4
4
|
`)){let e=g.exec(n);if(!e)continue;let[,t,i,a]=e;r.push({id:`rehydrated:${r.length}`,filename:t,mimeType:i,sizeBytes:a?v(a):0,previewUrl:null,thumbnailUrl:null})}return{cleanedContent:n,attachments:r.length>0?r:void 0}}var b=[`users/guardian.md`,`users/default.md`],x=`## Onboarding Context`;function S(e){let t=[x,``];return e.preferredName&&t.push(`- **Preferred name:** ${e.preferredName}`),e.occupation&&t.push(`- **Role:** ${e.occupation}`),e.commonWork.length>0&&t.push(`- **Common work:** ${e.commonWork.join(`; `)}`),e.dailyTools.length>0&&t.push(`- **Daily tools:** ${e.dailyTools.join(`, `)}`),t.push(``),t.join(`
|
|
@@ -10,4 +10,4 @@ import{t as e}from"./capture-error-Bj8_eutd.js";import{Cn as t,Hr as n,Lr as r,S
|
|
|
10
10
|
`),n.endsWith(`
|
|
11
11
|
|
|
12
12
|
`)||(n+=`
|
|
13
|
-
`),n+t}async function w(e,t){let{data:
|
|
13
|
+
`),n+t}async function w(e,t){let{data:r,error:i,response:a}=await n({path:{assistant_id:e},query:{path:t},throwOnError:!1});if(d(a,i,`Failed to fetch onboarding profile file`),a.status===404)return null;if(!a.ok)throw Error(`Failed to fetch onboarding profile file (${a.status})`);if(r?.isBinary)throw Error(`Onboarding profile file is binary`);return typeof r?.content==`string`?r.content:null}async function T(e,t,n){let{error:r,response:a}=await i({path:{assistant_id:e},body:{path:t,content:n},throwOnError:!1});if(d(a,r,`Failed to write onboarding profile file`),!a.ok)throw Error(`Failed to write onboarding profile file (${a.status})`)}async function E(e,t,n){await T(e,t,C(await w(e,t),n))}async function D(e,t){let n=S(p(t));await Promise.allSettled(b.map(t=>E(e,t,n)))}function O(e,t,n,r){let i=e.toLowerCase().startsWith(`video/`);return{previewUrl:t&&(!i||i&&!r)?`data:${e};base64,${t}`:null,thumbnailUrl:n?`data:image/jpeg;base64,${n}`:null}}function k(e){return e.map(e=>{let{previewUrl:t,thumbnailUrl:n}=O(e.mimeType,e.data,e.thumbnailData,!0);return{id:e.id,filename:e.filename,mimeType:e.mimeType,sizeBytes:e.sizeBytes,previewUrl:t,thumbnailUrl:n}})}function A(e){return e===`inline`||e===`panel`?e:void 0}function j(e){return{surfaceId:e.surfaceId,surfaceType:e.surfaceType,title:e.title,data:e.data,actions:e.actions,display:A(e.display),completed:e.completed,completionSummary:e.completionSummary,toolCallId:e.toolCallId}}function M(e){return e.map(j)}function N(e){if(typeof e==`number`)return e;if(typeof e==`string`){let t=new Date(e).getTime();return Number.isFinite(t)?t:void 0}}function P(e){if(!e||e.length===0)return{segments:void 0,attachments:void 0};let t=[];return{segments:e.map(e=>{let{cleanedContent:n,attachments:r}=y(e);return r&&t.push(...r),n}),attachments:t.length>0?t.map((e,t)=>({...e,id:`rehydrated:${t}`})):void 0}}function F(e){let{segments:t,attachments:n}=P(e.textSegments&&e.textSegments.length>0?e.textSegments:void 0),r=e.attachments&&e.attachments.length>0?k(e.attachments):void 0,i=V(e.contentOrder),a=H(e),o=e.toolCalls&&e.toolCalls.length>0?z(e.toolCalls,e.id):void 0,s=N(e.timestamp),c=e.thinkingSegments&&e.thinkingSegments.length>0?e.thinkingSegments:void 0,l={id:e.id,role:e.role};e.mergedMessageIds?.length&&(l.mergedMessageIds=e.mergedMessageIds),e.clientMessageId&&(l.clientMessageId=e.clientMessageId),e.surfaces&&(l.surfaces=M(e.surfaces)),a&&(l.contentBlocks=a),t&&(l.textSegments=t),i&&(l.contentOrder=i),c&&(l.thinkingSegments=c),e.subagentNotification&&(l.isSubagentNotification=!0),e.acpNotification&&(l.isAcpNotification=!0),e.backgroundEventNotification&&(l.isBackgroundEventNotification=!0),e.systemCard&&(l.isSystemCard=!0),e.slackMessage&&(l.slackMessage=e.slackMessage),o&&(l.toolCalls=o),s!=null&&(l.timestamp=s),e.queueStatus&&(l.queueStatus=e.queueStatus),e.queuePosition!=null&&(l.queuePosition=e.queuePosition);let u=r??n;return u&&(l.attachments=u),l}var I=`0.8.6`;function L(){let e=c.getState().version;if(!e)return`conversationKey`;let t=l(e),n=l(I);return!t||!n?`conversationKey`:u({...t,pre:null},n)>=0?`conversationId`:`conversationKey`}function R(e){return{id:e.id,toolName:e.toolName,conversationId:e.conversationId,command:e.command,startedAt:e.startedAt,status:e.status,exitCode:e.exitCode,output:e.output,completedAt:e.completedAt}}function z(e,t){return e.map((e,n)=>{let{confirmationDecision:r,...i}=e;return{...i,id:e.id??`tool-history-${t}-${n}`,...r===void 0?{}:{confirmationDecision:r}}})}function B(e){if(e&&typeof e==`object`&&!Array.isArray(e)){let t=e;if(typeof t.type==`string`&&typeof t.id==`string`)return{type:t.type,id:t.id}}if(typeof e==`string`){let t=e.indexOf(`:`);if(t>0)return{type:e.slice(0,t),id:e.slice(t+1)}}return null}function V(e){if(!e||e.length===0)return;let t=[];for(let n of e){let e=B(n);e&&t.push(e)}return t.length>0?t:void 0}function H(e){if(e.contentBlocks!==void 0)return e.contentBlocks;let t=V(e.contentOrder);if(!t)return;let n=[];for(let{type:r,id:i}of t){let t=Number.parseInt(i,10);if(!Number.isNaN(t))switch(r){case`text`:{let r=e.textSegments?.[t];if(r==null)break;let{cleanedContent:i}=y(r);i.trim().length>0&&n.push({type:`text`,text:i});break}case`thinking`:{let r=e.thinkingSegments?.[t];r!=null&&n.push({type:`thinking`,thinking:r});break}case`tool`:case`toolCall`:{let r=e.toolCalls?.[t];r&&n.push({type:`tool_use`,toolCall:{...r,id:r.id??`tool-history-${e.id}-${t}`}});break}case`surface`:{let r=e.surfaces?.[t];r&&n.push({type:`surface`,surface:r});break}case`attachment`:{let r=e.attachments[t];r&&n.push({type:`attachment`,attachment:r});break}}}return n.length>0?n:void 0}async function U(e,t,n){let r=n?.latestPageLimit==null?{conversationId:t}:{conversationId:t,page:`latest`,limit:n.latestPageLimit},{data:i,error:o,response:s}=await a({path:{assistant_id:e},query:r,throwOnError:!1});if(d(s,o,`Failed to fetch conversation messages`),!s.ok)throw Error(`Failed to fetch conversation messages (HTTP ${s.status})`);return i}async function W(e,t){let n=t.name||`attachment`,r=t.type||`application/octet-stream`,{data:i,error:a,response:s}=await o({path:{assistant_id:e},body:{file:t,filename:n,mimeType:r},throwOnError:!1});if(d(s,a,`Failed to upload attachment`),!s.ok){let e=a&&typeof a==`object`&&!Array.isArray(a)?a:{},t=(typeof e.detail==`string`?e.detail:void 0)??(typeof e.error==`string`?e.error:void 0)??`HTTP ${s.status}`;return{ok:!1,status:s.status,error:{detail:t}}}let c=i?.id;return c?{ok:!0,id:c,...typeof i.filename==`string`?{filename:i.filename}:{},...typeof i.mimeType==`string`?{mimeType:i.mimeType}:{},...typeof i.sizeBytes==`number`?{sizeBytes:i.sizeBytes}:{}}:{ok:!1,status:422,error:{detail:`Upload response did not include an attachment id.`}}}async function G(t,n,r,i={}){let{attachmentIds:a=[],onboarding:o,clientMessageId:c,inferenceProfile:l,enabledPlugins:u,hidden:p,bypassSecretCheck:g}=i,_={content:r,sourceChannel:`vellum`,interface:`web`,clientOs:f()},v=h();v&&(_.clientTimezone=v);let y=L();(n!==null||y!==`conversationId`)&&(_[y]=n),a.length>0&&(_.attachmentIds=a),c&&(_.clientMessageId=c),l&&(_.inferenceProfile=l),u!=null&&(_.enabledPlugins=u),p&&(_.hidden=!0),g&&(_.bypassSecretCheck=!0);let b=o?m(o):void 0;if(b){let e={tools:b.tools,tasks:b.tasks,tone:b.tone};b.userName!==void 0&&(e.userName=b.userName),b.occupation!==void 0&&(e.occupation=b.occupation),b.assistantName!==void 0&&(e.assistantName=b.assistantName),b.googleConnected!==void 0&&(e.googleConnected=b.googleConnected),b.googleScopes!==void 0&&(e.googleScopes=b.googleScopes),b.priorAssistants!==void 0&&(e.priorAssistants=b.priorAssistants),b.cohort!==void 0&&(e.cohort=b.cohort),b.bootstrapTemplate!==void 0&&(e.bootstrapTemplate=b.bootstrapTemplate),b.initialMessage!==void 0&&b.initialMessage.trim().toLowerCase().replace(/[.!?]+$/,``)!==`wake up, my friend`&&(e.initialMessage=b.initialMessage),b.skills!==void 0&&(e.skills=b.skills),b.researchFindings!==void 0&&(e.researchFindings=b.researchFindings),b.title!==void 0&&(e.title=b.title),_.onboarding=e}b&&D(t,b).catch(t=>e(t,{context:`persistPreChatOnboardingProfile`}));let{data:x,error:S,response:C}=await s({path:{assistant_id:t},body:_,throwOnError:!1});if(d(C,S,`Failed to send chat message`),!C.ok){let e=S&&typeof S==`object`&&!Array.isArray(S)?S:{},t=e.error&&typeof e.error==`object`&&!Array.isArray(e.error)?e.error:{};return{ok:!1,status:C.status,error:{code:typeof e.code==`string`?e.code:typeof t.code==`string`?t.code:typeof e.error==`string`?e.error:void 0,detail:(typeof e.detail==`string`?e.detail:void 0)??(typeof e.message==`string`?e.message:void 0)??(typeof t.message==`string`?t.message:void 0)??`HTTP ${C.status}`}}}let w=x;if(!w?.accepted)return{ok:!1,status:422,error:{detail:`Message was not accepted by the assistant.`}};let T=typeof w.conversationId==`string`?w.conversationId:void 0;return T===void 0?{ok:!1,status:422,error:{detail:`Assistant accepted the message but did not return a conversation id.`}}:w.queued?{ok:!0,queued:!0,assistantId:t,conversationId:T,requestId:typeof w.requestId==`string`?w.requestId:void 0}:typeof w.messageId==`string`?{ok:!0,assistantId:t,conversationId:T,messageId:w.messageId}:{ok:!1,status:422,error:{detail:`Message was not accepted by the assistant.`}}}function K(e){return{"X-Vellum-Conversation-Id":e}}async function q(e,n,r){try{let{response:i}=await t({path:{assistant_id:e,id:r},query:{conversationId:n},headers:K(n),throwOnError:!1});return i?.ok?`steered`:i?.status===404?`not_steerable`:`request_failed`}catch{return`request_failed`}}async function J(e,t,n){try{let{response:i}=await r({path:{assistant_id:e,id:n},query:{conversationId:t},headers:K(t),throwOnError:!1});return i?.ok??!1}catch{return!1}}export{q as a,F as c,G as i,j as l,U as n,R as o,H as r,W as s,J as t,O as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./jsx-runtime-D3ZM-ToX.js";import{t as r}from"./typography-DEI9Ra9z.js";import{t as i}from"./createLucideIcon-CAM1RhH8.js";import"./src-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./jsx-runtime-D3ZM-ToX.js";import{t as r}from"./typography-DEI9Ra9z.js";import{t as i}from"./createLucideIcon-CAM1RhH8.js";import"./src-te3YTBG-.js";import{t as a}from"./use-reduced-motion-W1fCe3vS.js";var o=i(`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`}]]),s=e(t(),1),c=n();function l(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 u(e){let t=a(),[n,r]=(0,s.useState)(e),i=(0,s.useRef)(e),o=(0,s.useRef)(e),c=(0,s.useRef)(0);return(0,s.useEffect)(()=>{if(o.current=e,t){cancelAnimationFrame(c.current),c.current=0,i.current=e,r(e);return}if(i.current===e||c.current)return;let n=performance.now(),a=i.current,s=e=>{let t=o.current,l=Math.min((e-n)/300,1),u=1-(1-l)**3;i.current=l>=1?t:a+(t-a)*u,r(i.current),l<1?c.current=requestAnimationFrame(s):c.current=0};c.current=requestAnimationFrame(s)},[e,t]),(0,s.useEffect)(()=>()=>cancelAnimationFrame(c.current),[]),n}function d({icon:e,value:t,label:n}){return(0,c.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,c.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:e}),(0,c.jsxs)(`div`,{className:`min-w-0`,children:[(0,c.jsx)(r,{variant:`title-small`,className:`block text-[var(--content-default)]`,children:t}),(0,c.jsx)(r,{variant:`body-small-default`,className:`block text-[var(--content-secondary)]`,children:n})]})]})}function f({icon:e,label:t,target:n,format:r}){return(0,c.jsx)(d,{icon:e,label:t,value:r(u(n))})}export{l as n,o as r,f as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-Dy5001j6.js";import{t as r}from"./jsx-runtime-D3ZM-ToX.js";import{n as i,t as a}from"./use-swipe-engine-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./button-Dy5001j6.js";import{t as r}from"./jsx-runtime-D3ZM-ToX.js";import{n as i,t as a}from"./use-swipe-engine-6PcZZMVD.js";import{t as o}from"./x-JBAsSOmg.js";import"./src-te3YTBG-.js";import{t as s}from"./haptics-DvWjk9Fg.js";var c=e(t(),1),l=80;function u({enabled:e,onSwipeLeft:t,onSwipeRight:n,commitThresholdPx:r=l}){return a({enabled:e,axis:`horizontal`,commitThresholdPx:r,touchOnly:!0,onCommit:(0,c.useCallback)(e=>{e<=-r?(s.light(),t?.()):e>=r&&(s.light(),n?.())},[r,t,n])})}var d=r(),f=`(min-width: 640px)`,p=[`a[href]`,`button:not([disabled])`,`input:not([disabled])`,`select:not([disabled])`,`textarea:not([disabled])`,`[tabindex]:not([tabindex="-1"])`].join(`,`);function m({open:e,onClose:t,children:r,title:i}){let a=(0,c.useRef)(null),s=(0,c.useRef)(null),l=(0,c.useRef)(t);(0,c.useEffect)(()=>{l.current=t});let{dragOffset:m,isDragging:h,onTouchStart:g,onTouchMove:_,onTouchEnd:v,onTouchCancel:y}=u({enabled:e,onSwipeLeft:t});return(0,c.useEffect)(()=>{if(!e)return;s.current?.focus();let t=document.body.style.overflow;document.body.style.overflow=`hidden`;let n=window.matchMedia(f),r=e=>{e.matches&&l.current()};n.addEventListener(`change`,r);let i=e=>{if(e.key===`Escape`){l.current();return}if(e.key!==`Tab`||!a.current)return;let t=a.current.querySelectorAll(p),n=t[0],r=t[t.length-1];if(!n||!r){e.preventDefault();return}let i=document.activeElement,o=a.current.contains(i);e.shiftKey?(!o||i===n)&&(e.preventDefault(),r.focus()):(!o||i===r)&&(e.preventDefault(),n.focus())};return document.addEventListener(`keydown`,i),()=>{document.removeEventListener(`keydown`,i),n.removeEventListener(`change`,r),document.body.style.overflow=t}},[e]),e?(0,d.jsxs)(`div`,{ref:a,className:`fixed inset-0 sm:hidden`,style:{zIndex:40},role:`dialog`,"aria-modal":`true`,"aria-label":i,children:[(0,d.jsx)(`button`,{type:`button`,"aria-label":`Close sidebar`,className:`absolute inset-0 h-full w-full cursor-default`,style:{background:`rgba(0, 0, 0, 0.4)`,zIndex:40},onClick:t}),(0,d.jsxs)(`aside`,{className:`relative flex h-full w-[80vw] max-w-xs flex-col shadow-xl`,style:{background:`var(--surface-lift)`,borderRight:`1px solid var(--border-base)`,zIndex:50,paddingTop:`var(--safe-area-inset-top, env(safe-area-inset-top, 0px))`,paddingBottom:`var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))`,paddingLeft:`var(--safe-area-inset-left, env(safe-area-inset-left, 0px))`,transform:`translateX(${m}px)`,transition:h?`none`:`transform 200ms ease-out`,touchAction:`pan-y`},onTouchStart:g,onTouchMove:_,onTouchEnd:v,onTouchCancel:y,children:[(0,d.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between border-b px-4 py-3`,style:{borderColor:`var(--border-base)`},children:[(0,d.jsx)(`span`,{className:`text-title-small`,style:{color:`var(--content-default)`},children:i}),(0,d.jsx)(n,{ref:s,type:`button`,variant:`ghost`,size:`compact`,iconOnly:(0,d.jsx)(o,{"aria-hidden":!0}),onClick:t,"aria-label":`Close`,tintColor:`var(--content-tertiary)`})]}),(0,d.jsx)(`div`,{className:`flex-1 overflow-y-auto p-4`,children:r})]})]}):null}function h({onClick:e}){return(0,d.jsx)(n,{type:`button`,variant:`ghost`,iconOnly:(0,d.jsx)(i,{"aria-hidden":!0}),onClick:e,"aria-label":`Open sidebar`,tintColor:`var(--content-secondary)`,className:`sm:hidden`})}export{h as n,m as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{u as e}from"./native-biometric-BAMIyaSS.js";import{n as t}from"./browser-CTZVDjOL.js";function n(n,r){!r||!e()||(n.preventDefault(),t(r))}export{n as t};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{a as t,n}from"./device-settings-DXp9L4iB.js";import{t as r}from"./react-BFJW0bSv.js";import{f as i,lt as a}from"./local-mode-BTovbt13.js";import{t as o}from"./is-electron-m5eeGBnd.js";import{i as s,t as c}from"./dist-BwAT3VYQ.js";import{n as l}from"./domains-DWRzNRJy.js";import{u}from"./routes-D9sNqB_o.js";var d={bodySerializer:e=>JSON.stringify(e,(e,t)=>typeof t==`bigint`?t.toString():t)};Object.entries({$body_:`body`,$headers_:`headers`,$path_:`path`,$query_:`query`});function f({onRequest:e,onSseError:t,onSseEvent:n,responseTransformer:r,responseValidator:i,sseDefaultRetryDelay:a,sseMaxRetryAttempts:o,sseMaxRetryDelay:s,sseSleepFn:c,url:l,...u}){let d,f=c??(e=>new Promise(t=>setTimeout(t,e)));return{stream:async function*(){let c=a??3e3,p=0,m=u.signal??new AbortController().signal;for(;!m.aborted;){p++;let a=u.headers instanceof Headers?u.headers:new Headers(u.headers);d!==void 0&&a.set(`Last-Event-ID`,d);try{let t={redirect:`follow`,...u,body:u.serializedBody,headers:a,signal:m},o=new Request(l,t);e&&(o=await e(l,t));let s=await(u.fetch??globalThis.fetch)(o);if(!s.ok)throw Error(`SSE failed: ${s.status} ${s.statusText}`);if(!s.body)throw Error(`No body in SSE response`);let f=s.body.pipeThrough(new TextDecoderStream).getReader(),p=``,h=()=>{try{f.cancel()}catch{}};m.addEventListener(`abort`,h);try{for(;;){let{done:e,value:t}=await f.read();if(e)break;p+=t,p=p.replace(/\r\n?/g,`
|
|
2
|
+
`);let a=p.split(`
|
|
3
|
+
|
|
4
|
+
`);p=a.pop()??``;for(let e of a){let t=e.split(`
|
|
5
|
+
`),a=[],o;for(let e of t)if(e.startsWith(`data:`))a.push(e.replace(/^data:\s*/,``));else if(e.startsWith(`event:`))o=e.replace(/^event:\s*/,``);else if(e.startsWith(`id:`))d=e.replace(/^id:\s*/,``);else if(e.startsWith(`retry:`)){let t=Number.parseInt(e.replace(/^retry:\s*/,``),10);Number.isNaN(t)||(c=t)}let s,l=!1;if(a.length){let e=a.join(`
|
|
6
|
+
`);try{s=JSON.parse(e),l=!0}catch{s=e}}l&&(i&&await i(s),r&&(s=await r(s))),n?.({data:s,event:o,id:d,retry:c}),a.length&&(yield s)}}}finally{m.removeEventListener(`abort`,h),f.releaseLock()}break}catch(e){if(t?.(e),o!==void 0&&p>=o)break;await f(Math.min(c*2**(p-1),s??3e4))}}}()}}var p=e=>{switch(e){case`label`:return`.`;case`matrix`:return`;`;case`simple`:return`,`;default:return`&`}},m=e=>{switch(e){case`form`:return`,`;case`pipeDelimited`:return`|`;case`spaceDelimited`:return`%20`;default:return`,`}},h=e=>{switch(e){case`label`:return`.`;case`matrix`:return`;`;case`simple`:return`,`;default:return`&`}},g=({allowReserved:e,explode:t,name:n,style:r,value:i})=>{if(!t){let t=(e?i:i.map(e=>encodeURIComponent(e))).join(m(r));switch(r){case`label`:return`.${t}`;case`matrix`:return`;${n}=${t}`;case`simple`:return t;default:return`${n}=${t}`}}let a=p(r),o=i.map(t=>r===`label`||r===`simple`?e?t:encodeURIComponent(t):_({allowReserved:e,name:n,value:t})).join(a);return r===`label`||r===`matrix`?a+o:o},_=({allowReserved:e,name:t,value:n})=>{if(n==null)return``;if(typeof n==`object`)throw Error("Deeply-nested arrays/objects aren’t supported. Provide your own `querySerializer()` to handle these.");return`${t}=${e?n:encodeURIComponent(n)}`},v=({allowReserved:e,explode:t,name:n,style:r,value:i,valueOnly:a})=>{if(i instanceof Date)return a?i.toISOString():`${n}=${i.toISOString()}`;if(r!==`deepObject`&&!t){let t=[];Object.entries(i).forEach(([n,r])=>{t=[...t,n,e?r:encodeURIComponent(r)]});let a=t.join(`,`);switch(r){case`form`:return`${n}=${a}`;case`label`:return`.${a}`;case`matrix`:return`;${n}=${a}`;default:return a}}let o=h(r),s=Object.entries(i).map(([t,i])=>_({allowReserved:e,name:r===`deepObject`?`${n}[${t}]`:t,value:i})).join(o);return r===`label`||r===`matrix`?o+s:s},ee=/\{[^{}]+\}/g,te=({path:e,url:t})=>{let n=t,r=t.match(ee);if(r)for(let t of r){let r=!1,i=t.substring(1,t.length-1),a=`simple`;i.endsWith(`*`)&&(r=!0,i=i.substring(0,i.length-1)),i.startsWith(`.`)?(i=i.substring(1),a=`label`):i.startsWith(`;`)&&(i=i.substring(1),a=`matrix`);let o=e[i];if(o==null)continue;if(Array.isArray(o)){n=n.replace(t,g({explode:r,name:i,style:a,value:o}));continue}if(typeof o==`object`){n=n.replace(t,v({explode:r,name:i,style:a,value:o,valueOnly:!0}));continue}if(a===`matrix`){n=n.replace(t,`;${_({name:i,value:o})}`);continue}let s=encodeURIComponent(a===`label`?`.${o}`:o);n=n.replace(t,s)}return n},ne=({baseUrl:e,path:t,query:n,querySerializer:r,url:i})=>{let a=i.startsWith(`/`)?i:`/${i}`,o=(e??``)+a;t&&(o=te({path:t,url:o}));let s=n?r(n):``;return s.startsWith(`?`)&&(s=s.substring(1)),s&&(o+=`?${s}`),o};function y(e){let t=e.body!==void 0;if(t&&e.bodySerializer)return`serializedBody`in e?e.serializedBody!==void 0&&e.serializedBody!==``?e.serializedBody:null:e.body===``?null:e.body;if(t)return e.body}var re=async(e,t)=>{let n=typeof t==`function`?await t(e):t;if(n)return e.scheme===`bearer`?`Bearer ${n}`:e.scheme===`basic`?`Basic ${btoa(n)}`:n},b=({parameters:e={},...t}={})=>n=>{let r=[];if(n&&typeof n==`object`)for(let i in n){let a=n[i];if(a==null)continue;let o=e[i]||t;if(Array.isArray(a)){let e=g({allowReserved:o.allowReserved,explode:!0,name:i,style:`form`,value:a,...o.array});e&&r.push(e)}else if(typeof a==`object`){let e=v({allowReserved:o.allowReserved,explode:!0,name:i,style:`deepObject`,value:a,...o.object});e&&r.push(e)}else{let e=_({allowReserved:o.allowReserved,name:i,value:a});e&&r.push(e)}}return r.join(`&`)},ie=e=>{if(!e)return`stream`;let t=e.split(`;`)[0]?.trim();if(t){if(t.startsWith(`application/json`)||t.endsWith(`+json`))return`json`;if(t===`multipart/form-data`)return`formData`;if([`application/`,`audio/`,`image/`,`video/`].some(e=>t.startsWith(e)))return`blob`;if(t.startsWith(`text/`))return`text`}},ae=(e,t)=>t?!!(e.headers.has(t)||e.query?.[t]||e.headers.get(`Cookie`)?.includes(`${t}=`)):!1,oe=async({security:e,...t})=>{for(let n of e){if(ae(t,n.name))continue;let e=await re(n,t.auth);if(!e)continue;let r=n.name??`Authorization`;switch(n.in){case`query`:t.query||={},t.query[r]=e;break;case`cookie`:t.headers.append(`Cookie`,`${r}=${e}`);break;default:t.headers.set(r,e);break}}},x=e=>ne({baseUrl:e.baseUrl,path:e.path,query:e.query,querySerializer:typeof e.querySerializer==`function`?e.querySerializer:b(e.querySerializer),url:e.url}),S=(e,t)=>{let n={...e,...t};return n.baseUrl?.endsWith(`/`)&&(n.baseUrl=n.baseUrl.substring(0,n.baseUrl.length-1)),n.headers=C(e.headers,t.headers),n},se=e=>{let t=[];return e.forEach((e,n)=>{t.push([n,e])}),t},C=(...e)=>{let t=new Headers;for(let n of e){if(!n)continue;let e=n instanceof Headers?se(n):Object.entries(n);for(let[n,r]of e)if(r===null)t.delete(n);else if(Array.isArray(r))for(let e of r)t.append(n,e);else r!==void 0&&t.set(n,typeof r==`object`?JSON.stringify(r):r)}return t},w=class{fns=[];clear(){this.fns=[]}eject(e){let t=this.getInterceptorIndex(e);this.fns[t]&&(this.fns[t]=null)}exists(e){let t=this.getInterceptorIndex(e);return!!this.fns[t]}getInterceptorIndex(e){return typeof e==`number`?this.fns[e]?e:-1:this.fns.indexOf(e)}update(e,t){let n=this.getInterceptorIndex(e);return this.fns[n]?(this.fns[n]=t,e):!1}use(e){return this.fns.push(e),this.fns.length-1}},ce=()=>({error:new w,request:new w,response:new w}),le=b({allowReserved:!1,array:{explode:!0,style:`form`},object:{explode:!0,style:`deepObject`}}),ue={"Content-Type":`application/json`},T=(e={})=>({...d,headers:ue,parseAs:`auto`,querySerializer:le,...e}),E=((e={})=>{let t=S(T(),e),n=()=>({...t}),r=e=>(t=S(t,e),n()),i=ce(),a=async e=>{let n={...t,...e,fetch:e.fetch??t.fetch??globalThis.fetch,headers:C(t.headers,e.headers),serializedBody:void 0};n.security&&await oe({...n,security:n.security}),n.requestValidator&&await n.requestValidator(n),n.body!==void 0&&n.bodySerializer&&(n.serializedBody=n.bodySerializer(n.body)),(n.body===void 0||n.serializedBody===``)&&n.headers.delete(`Content-Type`);let r=n;return{opts:r,url:x(r)}},o=async e=>{let n=e.throwOnError??t.throwOnError,r=e.responseStyle??t.responseStyle,o,s;try{let{opts:t,url:n}=await a(e),r={redirect:`follow`,...t,body:y(t)};o=new Request(n,r);for(let e of i.request.fns)e&&(o=await e(o,t));let c=t.fetch;s=await c(o);for(let e of i.response.fns)e&&(s=await e(s,o,t));let l={request:o,response:s};if(s.ok){let e=(t.parseAs===`auto`?ie(s.headers.get(`Content-Type`)):t.parseAs)??`json`;if(s.status===204||s.headers.get(`Content-Length`)===`0`){let n;switch(e){case`arrayBuffer`:case`blob`:case`text`:n=await s[e]();break;case`formData`:n=new FormData;break;case`stream`:n=s.body;break;default:n={};break}return t.responseStyle===`data`?n:{data:n,...l}}let n;switch(e){case`arrayBuffer`:case`blob`:case`formData`:case`text`:n=await s[e]();break;case`json`:{let e=await s.text();n=e?JSON.parse(e):{};break}case`stream`:return t.responseStyle===`data`?s.body:{data:s.body,...l}}return e===`json`&&(t.responseValidator&&await t.responseValidator(n),t.responseTransformer&&(n=await t.responseTransformer(n))),t.responseStyle===`data`?n:{data:n,...l}}let u=await s.text(),d;try{d=JSON.parse(u)}catch{}throw d??u}catch(t){let a=t;for(let t of i.error.fns)t&&(a=await t(a,s,o,e));if(a||={},n)throw a;return r===`data`?void 0:{error:a,request:o,response:s}}},s=e=>t=>o({...t,method:e}),c=e=>async t=>{let{opts:n,url:r}=await a(t);return f({...n,body:n.body,method:e,onRequest:async(e,t)=>{let r=new Request(e,t);for(let e of i.request.fns)e&&(r=await e(r,n));return r},serializedBody:y(n),url:r})};return{buildUrl:e=>x({...t,...e}),connect:s(`CONNECT`),delete:s(`DELETE`),get:s(`GET`),getConfig:n,head:s(`HEAD`),interceptors:i,options:s(`OPTIONS`),patch:s(`PATCH`),post:s(`POST`),put:s(`PUT`),request:o,setConfig:r,sse:{connect:c(`CONNECT`),delete:c(`DELETE`),get:c(`GET`),head:c(`HEAD`),options:c(`OPTIONS`),patch:c(`PATCH`),post:c(`POST`),put:c(`PUT`),trace:c(`TRACE`)},trace:s(`TRACE`)}})(T()),de=e=>(e.client??E).get({url:`/_allauth/{client}/v1/auth/provider/signup`,...e}),fe=e=>(e.client??E).post({url:`/_allauth/{client}/v1/auth/provider/signup`,...e,headers:{"Content-Type":`application/json`,...e.headers}}),pe=e=>(e.client??E).delete({url:`/_allauth/{client}/v1/auth/session`,...e}),D=e=>(e.client??E).get({url:`/_allauth/{client}/v1/auth/session`,...e}),O=()=>o()?`app`:`browser`;function me(e){return!e.ok&&e.status===409}function k(e,t){let n=e;if(n&&Array.isArray(n.errors))return{ok:!1,status:t,errors:n.errors};let r=n?.data;return r&&Array.isArray(r.flows)?{ok:!1,status:t,errors:[],flows:r.flows}:{ok:!1,status:t,errors:[]}}async function A(){let{data:e,error:t,response:n}=await D({path:{client:O()}});return e?{ok:!0,data:e.data}:k(t,n?.status)}async function he(){let{data:e,error:t,response:n}=await pe({path:{client:O()}});return e?{ok:!0,data:e}:n?.status===401?{ok:!0,data:{}}:k(t,n?.status)}async function ge(){let{data:e,error:t,response:n}=await de({path:{client:O()}});return e?{ok:!0,data:e.data}:k(t,n?.status)}async function _e({email:e,username:t}){let{data:n,error:r,response:i}=await fe({path:{client:O()},body:{email:e,username:t}});return n?{ok:!0,data:n.data}:k(r,i?.status)}var j;function ve(){return o()?(j===void 0&&(j=window.vellum?.auth?.getSessionToken?.()??null),j):null}function ye(e){j=e}var M=`__Secure-csrftoken`;function N(){return document.cookie.split(`; `).findLast(e=>e.startsWith(`${M}=`))?.split(`=`).slice(1).join(`=`)}function be(){document.cookie.split(`; `).filter(e=>e.startsWith(`${M}=`)).length>1&&(document.cookie=`${M}=; path=/; max-age=0; secure`)}var P=null;async function F(){o()||a()||(be(),!N()&&(P||=(async()=>{for(let e=0;e<2;e++)try{if(await D({path:{client:`browser`}}),N())return}catch{console.warn(`CSRF cookie bootstrap failed (attempt ${e+1}/2)`),e===0&&await new Promise(e=>setTimeout(e,500))}})().finally(()=>{P=null}),await P))}var xe=`/_allauth/browser/v1/auth/provider/redirect`;function Se(e,t,n,r={}){let i={provider:e,callback_url:new URL(t,n).href,process:`login`};return r.intent&&(i.intent=r.intent),r.loginHint&&(i.login_hint=r.loginHint),i}function Ce(e){if(!e)throw Error(`Unable to start provider redirect: CSRF token is missing. The session may not be initialized. Please refresh the page and try again.`)}async function we(e,t,n={}){await F();let r=N();Ce(r);let i=window.location.origin,a=document.createElement(`form`);a.method=`POST`,a.action=`${i}${xe}`;let o=Se(e,t,i,n);o.csrfmiddlewaretoken=r;for(let[e,t]of Object.entries(o)){let n=document.createElement(`input`);n.type=`hidden`,n.name=e,n.value=t,a.appendChild(n)}document.body.appendChild(a),a.submit()}function Te(e,t){return e?{kind:`authenticated`}:t.some(e=>e.id===`provider_signup`&&e.is_pending)?{kind:`provider_signup`}:{kind:`error`,message:`Unexpected authentication state.`}}var Ee=/^[a-zA-Z][a-zA-Z0-9+.-]*:\/\//;function I(e,t){if(!e)return t;if(Ee.test(e)){try{let t=new URL(e);if(t.protocol===`https:`&&l(t.hostname))return e}catch{}return t}return e.startsWith(`//`)||e.includes(`\\`)||!e.startsWith(`/`)?t:e}var L=`vellum.pro-checkout-intent`,R=1800*1e3,z=null;function B(e){let t={...e,savedAt:Date.now()};z=t;try{sessionStorage.setItem(L,JSON.stringify(t))}catch{}}function V(){let e=null;if(typeof sessionStorage<`u`)try{e=sessionStorage.getItem(L)}catch{return U()}if(!e)return U();let t;try{t=JSON.parse(e)}catch{return H(),null}return!Oe(t)||Date.now()-t.savedAt>R?(H(),null):t}function De(){let e=V();return e?.kind===`package`&&e.resumeAfterOnboarding===!0?null:e}function H(){z=null;try{sessionStorage.removeItem(L)}catch{}}function U(){return z?Date.now()-z.savedAt>R?(z=null,null):z:null}function Oe(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.savedAt==`number`?t.kind===`package`?typeof t.packageKey==`string`:t.kind===`custom`:!1}function ke(e){let t;try{t=new URL(e,`http://placeholder.invalid`)}catch{return{isCheckout:!1,packageKey:null}}return t.pathname===u.checkout?{isCheckout:!0,packageKey:t.searchParams.get(`package`)||null}:{isCheckout:!1,packageKey:null}}function W(e){let{intent:t,returnTo:n}=e,{isCheckout:r,packageKey:i}=ke(n);return r||H(),t===`signup`?(i&&B({kind:`package`,packageKey:i,resumeAfterOnboarding:!0}),u.onboarding.privacy):n}var Ae=`https://www.vellum.ai`,je=`vellum:loopback:state`,Me=`vellum:loopback:returnTo`;function G(){let e=window.__VELLUM_CONFIG__;return e?.webUrl?{webUrl:e.webUrl}:{webUrl:Ae}}function Ne(){let e=new Uint8Array(32);return crypto.getRandomValues(e),Array.from(e,e=>e.toString(16).padStart(2,`0`)).join(``)}function Pe(){return G().webUrl===window.location.origin}async function Fe(e,t){let{webUrl:n}=G(),r=Ne(),i=window.location.port||`3000`;sessionStorage.setItem(je,r),e&&sessionStorage.setItem(Me,e);let a=`/accounts/cli/callback?port=${i}&state=${r}`,o=`${n}/account/${t?.intent===`signup`?`signup`:`login`}?returnTo=${encodeURIComponent(a)}`;window.location.href=o}async function K(e){o()&&await window.vellum?.menu.setPlatformSession(e)}var Ie=e(r(),1),Le=s(`NativeAuth`),q=u.assistant,J=!1;function Re(){return J}function ze(){return`${window.location.protocol}//${window.location.host}`}function Y(){return typeof window<`u`&&c.isNativePlatform()}var Be=()=>()=>{};function Ve(){return(0,Ie.useSyncExternalStore)(Be,Y,()=>!1)}async function X(e){Ke(e?.intent,e?.returnTo);let t=e?.baseURL??ze(),{sessionToken:n}=await Le.startAuth({baseURL:t,...e?.loginHint?{loginHint:e.loginHint}:{},...e?.intent?{intent:e.intent}:{}});Ue(n),Y()&&await He(),Qe()&&await Ye(n);let r=I(e?.returnTo??null,q);window.location.href=r}async function He(){for(let e=0;e<6;e++){try{let e=await A();if(e.ok&&e.data.user)return}catch{}await new Promise(t=>setTimeout(t,50*(e+1)))}}function Ue(e){let t=`path=/; domain=.vellum.ai; secure; samesite=lax; max-age=1209600`;document.cookie=`sessionid=${e}; ${t}`,document.cookie=`__Secure-sessionid=${e}; ${t}`}function We(){if(typeof document>`u`)return null;let e=document.cookie.split(`; `);for(let t of[`__Secure-sessionid`,`sessionid`]){let n=e.find(e=>e.startsWith(`${t}=`));if(n){let e=n.slice(t.length+1);if(e)return e}}return null}function Ge(e,t){let n=e===`signup`,r=W({intent:n?`signup`:`login`,returnTo:t??``});return n?r:t??null}function Ke(e,t){e!==`signup`&&W({intent:`login`,returnTo:t??``})}async function qe(e,t,n={}){if(Y()){try{await X({returnTo:Ge(n.intent,n.returnTo),loginHint:n.loginHint,intent:n.intent})}catch(e){if(e?.code===`USER_CANCELLED`)return;throw e}return}if(o()&&window.vellum?.auth?.startOAuth){J=!0;try{let e=await window.vellum.auth.startOAuth({loginHint:n.loginHint,intent:n.intent});if(e?.sessionToken){ye(e.sessionToken),await K(!0);let t=I(Ge(n.intent,n.returnTo),q);window.location.href=t}}finally{J=!1}return}if(i()&&!Pe()){await Fe(n.returnTo??void 0,{intent:n.intent});return}await we(e,t,n)}var Z=s(`NativeBiometric`),Q=`vellum.ai`;async function Je(){if(!Y())return!1;try{let{available:e}=await Z.isAvailable();return e}catch{return!1}}async function Ye(e){if(!await Je())return!1;try{return await Z.storeToken({token:e,server:Q}),!0}catch(e){return console.error(`[native-biometric] failed to store token:`,e),!1}}var $=null;async function Xe(){return Y()?$||($=(async()=>{try{let{token:e}=await Z.retrieveToken({server:Q,reason:`Sign in to Vellum`});return e}catch{return null}finally{$=null}})(),$):null}async function Ze(){if(Y())try{await Z.deleteToken({server:Q})}catch{}}function Qe(){return n(`biometricEnabled`,!0)}function $e(e){t(`biometricEnabled`,e)}async function et(){if(!Y())return`Biometrics`;try{let{biometryType:e}=await Z.isAvailable();switch(e){case`faceId`:return`Face ID`;case`touchId`:return`Touch ID`;case`opticId`:return`Optic ID`;default:return`Biometrics`}}catch{return`Biometrics`}}export{he as A,Te as C,ge as D,ve as E,E as M,A as O,I as S,N as T,W as _,Xe as a,De as b,We as c,Re as d,qe as f,K as g,He as h,Qe as i,_e as j,me as k,Ue as l,Ve as m,et as n,$e as o,X as p,Je as r,Ye as s,Ze as t,Y as u,H as v,F as w,B as x,V as y};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-
|
|
2
|
-
import{r as e}from"./chunk-jRWAZmH_.js";import{t}from"./preload-helper-Cv2QeVDK.js";import{t as n}from"./is-electron-m5eeGBnd.js";import{t as r}from"./dist-BwAT3VYQ.js";async function i(e,t){if(!n()||!window.vellum?.share)return!1;let r=await e(),i=new Uint8Array(await r.arrayBuffer());return await window.vellum.share.shareFile(i,t),!0}var a=e({saveFile:()=>o});async function o(e,t){if(!await i(()=>s(e),t)){if(r.isNativePlatform()){await c(e,t);return}l(e,t)}}async function s(e){if(typeof e!=`string`)return e;let t=await fetch(e);if(!t.ok)throw Error(`Failed to fetch file: ${t.statusText}`);return t.blob()}async function c(e,n){let{Filesystem:r,Directory:i}=await t(async()=>{let{Filesystem:e,Directory:t}=await import(`./esm-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-Dk6A-sQ0.js","assets/preload-helper-Cv2QeVDK.js","assets/dist-BwAT3VYQ.js","assets/definitions-D_AmTPWg.js","assets/esm-Deuay4YU.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{r as e}from"./chunk-jRWAZmH_.js";import{t}from"./preload-helper-Cv2QeVDK.js";import{t as n}from"./is-electron-m5eeGBnd.js";import{t as r}from"./dist-BwAT3VYQ.js";async function i(e,t){if(!n()||!window.vellum?.share)return!1;let r=await e(),i=new Uint8Array(await r.arrayBuffer());return await window.vellum.share.shareFile(i,t),!0}var a=e({saveFile:()=>o});async function o(e,t){if(!await i(()=>s(e),t)){if(r.isNativePlatform()){await c(e,t);return}l(e,t)}}async function s(e){if(typeof e!=`string`)return e;let t=await fetch(e);if(!t.ok)throw Error(`Failed to fetch file: ${t.statusText}`);return t.blob()}async function c(e,n){let{Filesystem:r,Directory:i}=await t(async()=>{let{Filesystem:e,Directory:t}=await import(`./esm-Dk6A-sQ0.js`);return{Filesystem:e,Directory:t}},__vite__mapDeps([0,1,2,3])),{Share:a}=await t(async()=>{let{Share:e}=await import(`./esm-Deuay4YU.js`);return{Share:e}},__vite__mapDeps([4,1,2])),o=await u(await s(e)),c=await r.writeFile({path:n,data:o,directory:i.Cache});try{await a.share({files:[c.uri]})}catch{}r.deleteFile({path:n,directory:i.Cache}).catch(()=>{})}function l(e,t){let n=document.createElement(`a`);typeof e==`string`?n.href=e:n.href=URL.createObjectURL(e),n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n),e instanceof Blob&&URL.revokeObjectURL(n.href)}function u(e){return new Promise((t,n)=>{let r=new FileReader;r.onloadend=()=>{let e=r.result.split(`,`)[1];e?t(e):n(Error(`Failed to convert blob to base64`))},r.onerror=()=>n(r.error),r.readAsDataURL(e)})}export{o as n,a as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{S as e,_ as t}from"./native-biometric-BAMIyaSS.js";import{u as n}from"./routes-D9sNqB_o.js";function r({isLocalHatch:e}){return e?n.onboarding.hatching:n.onboarding.research}function i(e){return e.tosAccepted&&e.privacyConsent}function a(e){return i(e)&&e.analyticsConsentCurrent&&e.diagnosticsConsentCurrent}var o=`${n.assistant}/onboarding`,s=new Set([n.onboarding.hosting,n.onboarding.apiKey]),c=new Set([n.welcome,n.selectAssistant]);function l(e){return e.startsWith(`${o}/`)||e===o}function u(e){return e?n.welcome:n.onboarding.privacy}var d=new Set([`${n.settings.root}/billing`,n.settings.usage]);function f(e,t){if(!d.has(e))return!1;let n=t.indexOf(`?`);return n<0?!1:new URLSearchParams(t.slice(n+1)).has(`session_id`)}var p=`post_checkout`;function m(){return`${r({isLocalHatch:!1})}?hosting=vellum-cloud&${p}=1`}var h=new Set([n.onboarding.hatching,n.onboarding.research]);function g(t){let n=e(t,``);if(!n.startsWith(`/`))return null;let r=n.indexOf(`?`);return r<0||!h.has(n.slice(0,r))||new URLSearchParams(n.slice(r+1)).get(`post_checkout`)!==`1`?null:n}function _(e){if(e.startsWith(`http://`)||e.startsWith(`https://`)||e.startsWith(`//`))try{return new URL(e,`http://placeholder.invalid`).pathname}catch{return e}return e}function v(e,t){return t===n.welcome?e.hasAssistants?n.selectAssistant:n.onboarding.hosting:t===n.selectAssistant?`${t}?fromLogin=1`:t}function y(e,t){switch(t.kind){case`route-guard`:return x(e,t.pathname);case`onboarding-intercept`:return P(e,t.intendedDestination);case`hatch-gate`:return F(e);case`post-auth`:return R(t.authIntent,t.returnTo,t.fallback);case`post-retire`:return z(e)}}var b=[S,C,w,E,D,O,A,M,N];function x(e,t){let n=t.indexOf(`?`),r=n>=0?t.slice(0,n):t;for(let n of b){let i=n(e,r,t);if(i)return i}return{action:`allow`}}function S(e){return e.sessionSettled?null:{action:`wait`}}function C(e,t,n){if(e.hasPlatformHostedAssistant||!f(t,n)||!e.isAuthenticated)return null;if(!e.isLocalMode&&!e.assistantsHydrated)return{action:`wait`};if(e.isLocalMode){if(e.platformSession===`unknown`)return{action:`wait`,waitFor:`platform-session`};if(e.platformSession!==`present`)return null}return{action:`redirect`,to:m()}}function w(e,t,n){return!e.isGatewayAuth||g(n)?null:{action:`allow`}}function T(e,t){let r=e.remoteGatewayPublicPathPrefix;return!e.isRemoteGateway||!r?t:t===r?n.assistant:t.startsWith(`${r}/`)?t.slice(r.length):t}function E(e,t,r){if(!e.isRemoteGateway||e.isAuthenticated)return null;let i=T(e,r);return{action:`redirect`,to:`${n.remotePair}?returnTo=${encodeURIComponent(i)}`}}function D(e,t,r){return e.isAuthenticated?null:e.isLocalMode&&(l(t)||c.has(t))?t===n.selectAssistant&&!e.hasAssistants?{action:`redirect`,to:n.onboarding.hosting}:{action:`allow`}:e.isLocalMode&&!e.hasAssistants?{action:`redirect`,to:n.welcome}:e.isLocalMode?{action:`redirect`,to:n.selectAssistant}:{action:`redirect`,to:`${n.account.login}?returnTo=${encodeURIComponent(r)}`}}function O(e,t){return c.has(t)?e.isLocalMode?t===n.selectAssistant&&!e.hasAssistants?{action:`redirect`,to:n.onboarding.hosting}:{action:`allow`}:{action:`redirect`,to:n.assistant}:s.has(t)&&!e.isLocalMode?{action:`redirect`,to:n.assistant}:null}function k(e,t){let r=u(e.isLocalMode);if(r!==n.onboarding.privacy)return r;let i=g(t);return i?`${r}?returnTo=${encodeURIComponent(i)}`:r}function A(e,t,r){return t===n.reviewTerms?{action:`allow`}:l(t)?j(e,t,r):null}function j(e,t,r){if(!h.has(t))return{action:`allow`};if(t===n.onboarding.research){if(!e.isLocalMode&&!e.consentHydrated)return{action:`wait`};if(e.consentHydrationTimedOut)return{action:`allow`}}if(!i(e))return{action:`redirect`,to:k(e,r)};if(t===n.onboarding.research&&g(r)&&!e.isPlatformDisabled&&e.platformSession===`present`&&!a(e)){let e=encodeURIComponent(r);return{action:`redirect`,to:`${n.reviewTerms}?returnTo=${e}`}}return{action:`allow`}}function M(e,t,r){if(e.hasAssistants||t===n.checkout)return null;if(e.isLocalMode)return e.platformSession===`unknown`?{action:`wait`,waitFor:`platform-session`}:e.platformSession===`present`?{action:`redirect`,to:n.onboarding.hosting}:{action:`redirect`,to:n.welcome};if(!e.assistantsHydrated||!e.consentHydrated)return{action:`wait`};if(!i(e))return{action:`redirect`,to:n.onboarding.privacy};if(!a(e)){let e=encodeURIComponent(r);return{action:`redirect`,to:`${n.reviewTerms}?returnTo=${e}`}}return{action:`redirect`,to:n.onboarding.hatching}}function N(e,t,r){if(e.isPlatformDisabled||e.platformSession!==`present`||a(e))return null;if(!e.consentHydrated&&!e.isLocalMode)return{action:`wait`};let i=encodeURIComponent(r);return{action:`redirect`,to:`${n.reviewTerms}?returnTo=${i}`}}function P(e,t){if(e.isLocalMode&&e.hasAssistants||i(e))return{action:`allow`};let r=_(t);return!r.startsWith(n.assistant)||r.startsWith(`${n.assistant}/onboarding`)||r===n.reviewTerms?{action:`allow`}:{action:`redirect`,to:u(e.isLocalMode)}}function F(e){return e.sessionSettled?!e.isAuthenticated&&!e.isLocalMode?{action:`redirect`,to:n.account.login}:i(e)?!e.isLocalMode&&!a(e)?{action:`redirect`,to:n.reviewTerms}:{action:`allow`}:{action:`redirect`,to:u(e.isLocalMode)}:{action:`wait`}}var I=`/import`;function L(e){return e===I||e.startsWith(`${I}?`)||e.startsWith(`${I}/`)}function R(n,r,i){let a=e(r,i),o=t({intent:n,returnTo:a});return n===`signup`&&L(a)?{action:`redirect`,to:a}:{action:`redirect`,to:o}}function z(e){return e.hasAssistants?{action:`redirect`,to:e.isLocalMode?n.selectAssistant:n.assistant}:e.isLocalMode?e.platformSession===`present`?{action:`redirect`,to:n.onboarding.hosting}:{action:`redirect`,to:n.welcome}:{action:`redirect`,to:n.onboarding.privacy}}export{r as a,y as i,g as n,v as r,p as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./button-Dy5001j6.js";import{u as t}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as n}from"./jsx-runtime-D3ZM-ToX.js";import{t as r}from"./arrow-left-C2ylPLHq.js";import{t as i}from"./sparkles-Ccrj7hxd.js";import{u as a}from"./routes-
|
|
1
|
+
import{t as e}from"./button-Dy5001j6.js";import{u as t}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as n}from"./jsx-runtime-D3ZM-ToX.js";import{t as r}from"./arrow-left-C2ylPLHq.js";import{t as i}from"./sparkles-Ccrj7hxd.js";import{u as a}from"./routes-D9sNqB_o.js";import{t as o}from"./proxy-D7UPVac3.js";import{t as s}from"./use-reduced-motion-W1fCe3vS.js";var c=n(),l={hidden:{},show:{transition:{staggerChildren:.07,delayChildren:.05}}},u={hidden:{opacity:0,y:12},show:{opacity:1,y:0,transition:{duration:.45,ease:[.22,1,.36,1]}}};function d(){let n=t(),d=s();return(0,c.jsxs)(`div`,{"data-slot":`not-found`,className:`relative flex min-h-svh flex-col items-center justify-center overflow-hidden p-6 text-center`,children:[(0,c.jsxs)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-0`,children:[(0,c.jsx)(`div`,{className:`absolute left-1/2 top-1/2 size-[min(120vmin,900px)] -translate-x-1/2 -translate-y-1/2 rounded-full opacity-45 blur-3xl dark:opacity-30`,style:{background:`radial-gradient(circle at center, var(--content-tertiary), transparent 60%)`}}),(0,c.jsx)(`div`,{className:`absolute inset-0 opacity-[0.4]`,style:{backgroundImage:`radial-gradient(circle at 1px 1px, var(--border-subtle) 1px, transparent 0)`,backgroundSize:`28px 28px`,maskImage:`radial-gradient(ellipse 70% 60% at center, black, transparent 80%)`,WebkitMaskImage:`radial-gradient(ellipse 70% 60% at center, black, transparent 80%)`}}),(0,c.jsx)(o.p,{initial:d?!1:{opacity:0,scale:.96},animate:{opacity:.05,scale:1},transition:{duration:.8,ease:[.22,1,.36,1]},className:`absolute left-1/2 top-[42%] -translate-x-1/2 -translate-y-1/2 select-none text-[38vmin] font-bold leading-none tracking-tighter text-[var(--content-default)]`,children:`404`})]}),(0,c.jsxs)(o.div,{variants:d?void 0:l,initial:d?!1:`hidden`,animate:`show`,className:`relative flex max-w-md flex-col items-center gap-5`,children:[(0,c.jsx)(o.span,{variants:u,className:`rounded-full border border-[var(--border-subtle)] bg-[var(--surface-base)] px-3 py-1 text-label-medium-default uppercase tracking-[0.18em] text-[var(--content-tertiary)]`,children:`Error 404`}),(0,c.jsx)(o.h1,{variants:u,className:`text-3xl font-semibold tracking-tight text-[var(--content-strong)]`,children:`Page not found`}),(0,c.jsx)(o.p,{variants:u,className:`text-body-medium-default text-[var(--content-secondary)]`,children:`The page you're looking for doesn't exist or may have moved.`}),(0,c.jsxs)(o.div,{variants:u,className:`mt-5 flex flex-col items-center gap-2.5`,children:[(0,c.jsx)(e,{variant:`primary`,leftIcon:(0,c.jsx)(i,{}),onClick:()=>n(a.assistant),children:`Back to your assistant`}),(0,c.jsx)(e,{variant:`ghost`,leftIcon:(0,c.jsx)(r,{}),onClick:()=>n(-1),children:`Go back`})]})]})]})}export{d as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{n}from"./chunk-5KNZJZUH-Bsoom5--.js";import{n as r}from"./QueryClientProvider-CMu7CkQU.js";import{t as i}from"./useQuery-Bz-fbQ-m.js";import{t as a}from"./useMutation-CXGTrp4W.js";import{t as o}from"./jsx-runtime-D3ZM-ToX.js";import{t as s}from"./createLucideIcon-CAM1RhH8.js";import{t as c}from"./bell-Ct4a9v6Y.js";import{t as l}from"./check-sC49_hjU.js";import{t as u}from"./menu-BvjhxZo7.js";import{t as d}from"./loader-circle-XREx3i4W.js";import{t as f}from"./moon-BJzODLTY.js";import{t as p}from"./triangle-alert-CQfiAg_t.js";import{t as m}from"./notice-BMK7xqUw.js";import{t as h}from"./popover-BRpYVASI.js";import{t as g}from"./input-hw3el2GJ.js";import{n as _,t as v}from"./panel-item-CrtoJCrd.js";import{n as y}from"./toast-LgLp4obE.js";import{u as b}from"./routes-vE-2hncW.js";import{i as x,r as S,t as C}from"./use-platform-gate-Dry0Nv4f.js";import{n as w}from"./use-is-mobile-Bz2l7wPL.js";import{Ct as T,St as E,_t as D,bt as O,vt as k,xt as A,yt as j}from"./react-query.gen-Mwd5l-vZ.js";import{t as M}from"./platform-login-notice-BG9TFAJa.js";import{r as N}from"./format-date-RZ9mCDCy.js";import{t as P}from"./mutation-error-CwYvaYnb.js";var F=s(`bell-off`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M17 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 .258-1.742`,key:`178tsu`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M8.668 3.01A6 6 0 0 1 18 8c0 2.687.77 4.653 1.707 6.05`,key:`1hqiys`}]]),I=s(`check-check`,[[`path`,{d:`M18 6 7 17l-5-5`,key:`116fxf`}],[`path`,{d:`m22 10-7.5 7.5L13 16`,key:`ke71qq`}]]),L=e(t(),1);function R(e){e.invalidateQueries({queryKey:j()}),e.invalidateQueries({queryKey:T()})}function z(e){return e.snoozed_until?new Date(e.snoozed_until)>new Date:!1}var B=[{label:`1 hour`,hours:1},{label:`4 hours`,hours:4},{label:`24 hours`,hours:24},{label:`1 week`,hours:168}],V=o();function H({notificationId:e,currentlySnoozed:t,children:n}){let i=r(),o=a(E()),s=w(),[c,l]=(0,L.useState)(!1),d=()=>R(i),f=t=>{let n=new Date(new Date().getTime()+t*60*60*1e3).toISOString();o.mutate({path:{id:e},body:{snoozed_until:n}},{onSuccess:d,onError:P(`Failed to snooze notification`)})},p=()=>{o.mutate({path:{id:e},body:{snoozed_until:null}},{onSuccess:d,onError:P(`Failed to clear snooze`)})};return s?(0,V.jsxs)(_.Root,{open:c,onOpenChange:l,children:[(0,V.jsx)(_.Trigger,{asChild:!0,children:n}),(0,V.jsxs)(_.Content,{children:[(0,V.jsx)(_.Header,{children:(0,V.jsx)(_.Title,{children:`Snooze until…`})}),(0,V.jsxs)(_.Body,{children:[B.map(({label:e,hours:t})=>(0,V.jsx)(v,{label:e,onSelect:()=>{o.isPending||(l(!1),f(t))}},e)),t&&(0,V.jsx)(v,{label:`Clear snooze`,onSelect:()=>{o.isPending||(l(!1),p())}})]})]})]}):(0,V.jsxs)(u.Root,{open:c,onOpenChange:l,children:[(0,V.jsx)(u.Trigger,{children:n}),(0,V.jsxs)(u.Content,{align:`start`,className:`min-w-[12rem]`,children:[(0,V.jsx)(u.Label,{children:`Snooze until…`}),B.map(({label:e,hours:t})=>(0,V.jsx)(u.Item,{disabled:o.isPending,onSelect:()=>f(t),children:e},e)),t&&(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(u.Separator,{}),(0,V.jsx)(u.Item,{disabled:o.isPending,onSelect:()=>p(),children:`Clear snooze`})]})]})]})}function U({existingRules:e,onClose:t,onPauseCreated:n,onPauseDeleted:i,hideTitle:o=!1}){let s=r(),c=a(O()),l=a(A()),[u,f]=(0,L.useState)(``),p=()=>R(s),m=()=>{let e=new Date(new Date().getTime()+365*24*60*60*1e3).toISOString();c.mutate({body:{notification_type:`alert`,dedupe_key_prefix:``,reason:u.trim()||`User requested pause`,expires_at:e}},{onSuccess:e=>{n(e),p(),t()},onError:P(`Failed to pause alerts`)})},h=e=>{l.mutate({path:{rule_id:e}},{onSuccess:()=>{i(e),p(),t()},onError:P(`Failed to resume alerts`)})},_=c.isPending||l.isPending;return(0,V.jsxs)(`div`,{children:[!o&&(0,V.jsx)(`p`,{className:`mb-2 text-body-medium-default text-[var(--content-default)]`,children:`Pause alerts`}),e.length>0?(0,V.jsxs)(`div`,{className:`space-y-2`,children:[(0,V.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Active pause rules:`}),e.map(e=>(0,V.jsxs)(`div`,{className:`flex items-center justify-between rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-2 py-2`,children:[(0,V.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,V.jsx)(`p`,{className:`truncate text-body-small-default text-[var(--content-default)]`,children:e.reason||`All alerts paused`}),e.expires_at&&(0,V.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:[`Expires `,N(e.expires_at)]})]}),(0,V.jsx)(`button`,{type:`button`,onClick:()=>h(e.id),disabled:_,className:`ml-2 shrink-0 cursor-pointer rounded px-2 py-1 text-body-small-default text-[var(--system-negative-strong)] transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,children:`Resume`})]},e.id))]}):(0,V.jsxs)(`div`,{className:`space-y-2`,children:[(0,V.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Temporarily mute all alert notifications.`}),(0,V.jsx)(g,{type:`text`,value:u,onChange:e=>f(e.target.value),placeholder:`Reason (optional)`}),(0,V.jsx)(`button`,{type:`button`,onClick:()=>m(),disabled:_,className:`w-full cursor-pointer rounded-md bg-[var(--primary-base)] px-3 py-1.5 text-body-medium-default text-[var(--content-inset)] transition-opacity hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-50`,children:c.isPending?(0,V.jsxs)(`span`,{className:`flex items-center justify-center gap-2`,children:[(0,V.jsx)(d,{className:`h-3 w-3 animate-spin`}),`Pausing…`]}):`Pause all alerts`})]})]})}function W({notification:e,onAck:t,isAcking:n}){let r=e.notification_type===`alert`,i=z(e),a=!e.is_read;return(0,V.jsxs)(`div`,{className:`relative rounded-lg border border-[var(--border-base)] p-4`,style:{background:e.is_resolved?`var(--surface-base)`:`var(--surface-lift)`,opacity:e.is_resolved?.75:1},children:[(0,V.jsx)(`div`,{className:`flex items-start gap-3`,children:(0,V.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col items-start gap-1`,children:[(0,V.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[a&&!e.is_resolved&&(0,V.jsx)(`span`,{"aria-hidden":!0,className:`h-2 w-2 shrink-0 rounded-full bg-[var(--primary-base)]`}),r&&(0,V.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[color-mix(in_oklab,var(--system-negative-strong)_14%,transparent)] px-2 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,children:[(0,V.jsx)(p,{className:`h-3 w-3`}),`Alert`]}),i&&(0,V.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--surface-base)] px-2 py-0.5 text-body-small-default text-[var(--content-secondary)]`,children:[(0,V.jsx)(f,{className:`h-3 w-3`}),`Snoozed`]}),e.is_resolved&&(0,V.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[color-mix(in_oklab,var(--system-positive-strong)_14%,transparent)] px-2 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,children:[(0,V.jsx)(l,{className:`h-3 w-3`}),`Resolved`]})]}),(0,V.jsx)(`h3`,{className:`text-body-medium-default leading-tight`,style:{color:e.is_resolved?`var(--content-secondary)`:`var(--content-default)`},children:e.title}),e.body&&(0,V.jsx)(`p`,{className:`text-body-small-default leading-relaxed text-[var(--content-secondary)]`,children:e.body})]})}),(0,V.jsxs)(`div`,{className:`mt-3 flex items-center gap-3 text-body-small-default text-[var(--content-secondary)]`,children:[(0,V.jsxs)(`span`,{children:[`Last seen `,N(e.last_seen_at)]}),e.occurrence_count>1&&(0,V.jsxs)(`span`,{children:[`· `,e.occurrence_count,`× occurrences`]})]}),!e.is_resolved&&(0,V.jsxs)(`div`,{className:`mt-3 flex items-center gap-2 border-t border-[var(--border-base)] pt-3`,children:[(0,V.jsxs)(`button`,{type:`button`,onClick:()=>t(e.id,a),disabled:n,className:`flex cursor-pointer items-center gap-1.5 rounded-md px-3 py-1.5 text-body-small-default transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,style:{background:a?`var(--primary-base)`:`var(--surface-base)`,color:a?`var(--content-inset)`:`var(--content-secondary)`},children:[n?(0,V.jsx)(d,{className:`h-3 w-3 animate-spin`}):(0,V.jsx)(l,{className:`h-3 w-3`}),a?`Mark as read`:`Mark as unread`]}),(0,V.jsx)(H,{notificationId:e.id,currentlySnoozed:i,children:(0,V.jsxs)(`button`,{type:`button`,className:`flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80`,children:[(0,V.jsx)(f,{className:`h-3 w-3`}),i?`Change snooze`:`Snooze`]})})]})]})}function G(){let e=x({platformHostedOnly:!0}),t=C(),o=S(),s=r(),l=w(),[u,f]=(0,L.useState)(`open`),[p,g]=(0,L.useState)(!1),[v,T]=(0,L.useState)([]),{data:E,isLoading:O,isError:A,refetch:j}=i({...k({query:{status:u}}),enabled:e===`full`&&t}),N=e===`full`&&o||(t?O:!1);(0,L.useEffect)(()=>{!t&&p&&g(!1)},[t,p]);let P=t?A:!1,z=t?E?.results??[]:[],B=z.filter(e=>!e.is_read&&!e.is_resolved),H=a(D()),[G,K]=(0,L.useState)(new Set),[q,J]=(0,L.useState)(!1),Y=(0,L.useCallback)(()=>R(s),[s]),X=async(e,t)=>{K(t=>new Set(t).add(e));try{await H.mutateAsync({path:{id:e},body:{acknowledged:t}}),Y()}catch(e){y.error(e instanceof Error?e.message:`Failed to update notification`)}finally{K(t=>{let n=new Set(t);return n.delete(e),n})}},Z=async()=>{if(!(B.length===0||q)){J(!0);try{await Promise.allSettled(B.map(e=>H.mutateAsync({path:{id:e.id},body:{acknowledged:!0}})))}finally{Y(),J(!1)}}},Q=(0,V.jsxs)(`button`,{type:`button`,className:`flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80`,title:`Pause alerts`,children:[(0,V.jsx)(F,{className:`h-3.5 w-3.5`}),`Pause alerts`]}),$=(0,V.jsx)(U,{existingRules:v,onClose:()=>g(!1),onPauseCreated:e=>T(t=>[...t,e]),onPauseDeleted:e=>T(t=>t.filter(t=>t.id!==e))});return e===`gated`?(0,V.jsx)(n,{replace:!0,to:b.settings.general}):e===`disabled`?(0,V.jsxs)(`div`,{className:`space-y-4`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,V.jsx)(c,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,V.jsxs)(`div`,{className:`flex-1`,children:[(0,V.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Notifications`}),(0,V.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:`Platform alerts and status notifications`})]})]}),(0,V.jsx)(M,{children:`Log in to the Vellum platform to view notifications.`})]}):(0,V.jsxs)(`div`,{className:`space-y-4`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,V.jsx)(c,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,V.jsxs)(`div`,{className:`flex-1`,children:[(0,V.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Notifications`}),(0,V.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:`Platform alerts and status notifications`})]}),t&&(l?(0,V.jsxs)(_.Root,{open:p,onOpenChange:g,children:[(0,V.jsx)(_.Trigger,{asChild:!0,children:Q}),(0,V.jsxs)(_.Content,{children:[(0,V.jsx)(_.Header,{children:(0,V.jsx)(_.Title,{children:`Pause alerts`})}),(0,V.jsx)(_.Body,{children:(0,V.jsx)(U,{existingRules:v,onClose:()=>g(!1),onPauseCreated:e=>T(t=>[...t,e]),onPauseDeleted:e=>T(t=>t.filter(t=>t.id!==e)),hideTitle:!0})})]})]}):(0,V.jsxs)(h.Root,{open:p,onOpenChange:g,children:[(0,V.jsx)(h.Trigger,{asChild:!0,children:Q}),(0,V.jsx)(h.Content,{align:`end`,className:`w-72`,children:$})]}))]}),(0,V.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,V.jsx)(`div`,{className:`flex gap-1 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] p-1`,children:[`open`,`resolved`].map(e=>{let t=u===e;return(0,V.jsx)(`button`,{type:`button`,onClick:()=>f(e),className:`cursor-pointer rounded px-3 py-1 text-body-small-default capitalize transition-colors`,style:{background:t?`var(--surface-lift)`:`transparent`,color:t?`var(--content-default)`:`var(--content-secondary)`,boxShadow:t?`0 1px 2px rgba(0,0,0,0.08)`:void 0},children:e},e)})}),u===`open`&&B.length>1&&(0,V.jsxs)(`button`,{type:`button`,onClick:()=>void Z(),disabled:q,className:`ml-auto flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-transparent px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,children:[q?(0,V.jsx)(d,{className:`h-3 w-3 animate-spin`}):(0,V.jsx)(I,{className:`h-3 w-3`}),`Mark all as read (`,B.length,`)`]})]}),N?(0,V.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,V.jsx)(d,{className:`h-4 w-4 animate-spin`}),`Loading notifications…`]}):P?(0,V.jsxs)(m,{tone:`error`,children:[`Failed to load notifications.`,` `,(0,V.jsx)(`button`,{type:`button`,onClick:()=>void j(),className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]}):z.length===0?(0,V.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 py-12 text-center`,children:[(0,V.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,V.jsx)(c,{className:`h-5 w-5 text-[var(--content-secondary)]`})}),(0,V.jsxs)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:[`No `,u,` notifications`]}),(0,V.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:u===`open`?`You're all caught up!`:`Nothing to show here.`})]}):(0,V.jsx)(`div`,{className:`space-y-3`,children:z.map(e=>(0,V.jsx)(W,{notification:e,onAck:(e,t)=>void X(e,t),isAcking:G.has(e.id)},e.id))})]})}export{G as NotificationsPage};
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{n}from"./chunk-5KNZJZUH-Bsoom5--.js";import{n as r}from"./QueryClientProvider-CMu7CkQU.js";import{t as i}from"./useQuery-Bz-fbQ-m.js";import{t as a}from"./useMutation-CXGTrp4W.js";import{t as o}from"./jsx-runtime-D3ZM-ToX.js";import{t as s}from"./createLucideIcon-CAM1RhH8.js";import{t as c}from"./bell-Ct4a9v6Y.js";import{t as l}from"./check-sC49_hjU.js";import{t as u}from"./menu-BvjhxZo7.js";import{t as d}from"./loader-circle-XREx3i4W.js";import{t as f}from"./moon-BJzODLTY.js";import{t as p}from"./triangle-alert-CQfiAg_t.js";import{t as m}from"./notice-BMK7xqUw.js";import{t as h}from"./popover-BRpYVASI.js";import{t as g}from"./input-hw3el2GJ.js";import{n as _,t as v}from"./panel-item-CrtoJCrd.js";import{n as y}from"./toast-LgLp4obE.js";import{u as b}from"./routes-D9sNqB_o.js";import{i as x,r as S,t as C}from"./use-platform-gate-C65D14xY.js";import{n as w}from"./use-is-mobile-BlQuzI5Z.js";import{Ct as T,St as E,_t as D,bt as O,vt as k,xt as A,yt as j}from"./react-query.gen-BC3STDmV.js";import{t as M}from"./platform-login-notice-CdYiKsE8.js";import{r as N}from"./format-date-BGnM4mqL.js";import{t as P}from"./mutation-error-DEknRDAQ.js";var F=s(`bell-off`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M17 17H4a1 1 0 0 1-.74-1.673C4.59 13.956 6 12.499 6 8a6 6 0 0 1 .258-1.742`,key:`178tsu`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M8.668 3.01A6 6 0 0 1 18 8c0 2.687.77 4.653 1.707 6.05`,key:`1hqiys`}]]),I=s(`check-check`,[[`path`,{d:`M18 6 7 17l-5-5`,key:`116fxf`}],[`path`,{d:`m22 10-7.5 7.5L13 16`,key:`ke71qq`}]]),L=e(t(),1);function R(e){e.invalidateQueries({queryKey:j()}),e.invalidateQueries({queryKey:T()})}function z(e){return e.snoozed_until?new Date(e.snoozed_until)>new Date:!1}var B=[{label:`1 hour`,hours:1},{label:`4 hours`,hours:4},{label:`24 hours`,hours:24},{label:`1 week`,hours:168}],V=o();function H({notificationId:e,currentlySnoozed:t,children:n}){let i=r(),o=a(E()),s=w(),[c,l]=(0,L.useState)(!1),d=()=>R(i),f=t=>{let n=new Date(new Date().getTime()+t*60*60*1e3).toISOString();o.mutate({path:{id:e},body:{snoozed_until:n}},{onSuccess:d,onError:P(`Failed to snooze notification`)})},p=()=>{o.mutate({path:{id:e},body:{snoozed_until:null}},{onSuccess:d,onError:P(`Failed to clear snooze`)})};return s?(0,V.jsxs)(_.Root,{open:c,onOpenChange:l,children:[(0,V.jsx)(_.Trigger,{asChild:!0,children:n}),(0,V.jsxs)(_.Content,{children:[(0,V.jsx)(_.Header,{children:(0,V.jsx)(_.Title,{children:`Snooze until…`})}),(0,V.jsxs)(_.Body,{children:[B.map(({label:e,hours:t})=>(0,V.jsx)(v,{label:e,onSelect:()=>{o.isPending||(l(!1),f(t))}},e)),t&&(0,V.jsx)(v,{label:`Clear snooze`,onSelect:()=>{o.isPending||(l(!1),p())}})]})]})]}):(0,V.jsxs)(u.Root,{open:c,onOpenChange:l,children:[(0,V.jsx)(u.Trigger,{children:n}),(0,V.jsxs)(u.Content,{align:`start`,className:`min-w-[12rem]`,children:[(0,V.jsx)(u.Label,{children:`Snooze until…`}),B.map(({label:e,hours:t})=>(0,V.jsx)(u.Item,{disabled:o.isPending,onSelect:()=>f(t),children:e},e)),t&&(0,V.jsxs)(V.Fragment,{children:[(0,V.jsx)(u.Separator,{}),(0,V.jsx)(u.Item,{disabled:o.isPending,onSelect:()=>p(),children:`Clear snooze`})]})]})]})}function U({existingRules:e,onClose:t,onPauseCreated:n,onPauseDeleted:i,hideTitle:o=!1}){let s=r(),c=a(O()),l=a(A()),[u,f]=(0,L.useState)(``),p=()=>R(s),m=()=>{let e=new Date(new Date().getTime()+365*24*60*60*1e3).toISOString();c.mutate({body:{notification_type:`alert`,dedupe_key_prefix:``,reason:u.trim()||`User requested pause`,expires_at:e}},{onSuccess:e=>{n(e),p(),t()},onError:P(`Failed to pause alerts`)})},h=e=>{l.mutate({path:{rule_id:e}},{onSuccess:()=>{i(e),p(),t()},onError:P(`Failed to resume alerts`)})},_=c.isPending||l.isPending;return(0,V.jsxs)(`div`,{children:[!o&&(0,V.jsx)(`p`,{className:`mb-2 text-body-medium-default text-[var(--content-default)]`,children:`Pause alerts`}),e.length>0?(0,V.jsxs)(`div`,{className:`space-y-2`,children:[(0,V.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Active pause rules:`}),e.map(e=>(0,V.jsxs)(`div`,{className:`flex items-center justify-between rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-2 py-2`,children:[(0,V.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,V.jsx)(`p`,{className:`truncate text-body-small-default text-[var(--content-default)]`,children:e.reason||`All alerts paused`}),e.expires_at&&(0,V.jsxs)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:[`Expires `,N(e.expires_at)]})]}),(0,V.jsx)(`button`,{type:`button`,onClick:()=>h(e.id),disabled:_,className:`ml-2 shrink-0 cursor-pointer rounded px-2 py-1 text-body-small-default text-[var(--system-negative-strong)] transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,children:`Resume`})]},e.id))]}):(0,V.jsxs)(`div`,{className:`space-y-2`,children:[(0,V.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:`Temporarily mute all alert notifications.`}),(0,V.jsx)(g,{type:`text`,value:u,onChange:e=>f(e.target.value),placeholder:`Reason (optional)`}),(0,V.jsx)(`button`,{type:`button`,onClick:()=>m(),disabled:_,className:`w-full cursor-pointer rounded-md bg-[var(--primary-base)] px-3 py-1.5 text-body-medium-default text-[var(--content-inset)] transition-opacity hover:opacity-90 disabled:cursor-not-allowed disabled:opacity-50`,children:c.isPending?(0,V.jsxs)(`span`,{className:`flex items-center justify-center gap-2`,children:[(0,V.jsx)(d,{className:`h-3 w-3 animate-spin`}),`Pausing…`]}):`Pause all alerts`})]})]})}function W({notification:e,onAck:t,isAcking:n}){let r=e.notification_type===`alert`,i=z(e),a=!e.is_read;return(0,V.jsxs)(`div`,{className:`relative rounded-lg border border-[var(--border-base)] p-4`,style:{background:e.is_resolved?`var(--surface-base)`:`var(--surface-lift)`,opacity:e.is_resolved?.75:1},children:[(0,V.jsx)(`div`,{className:`flex items-start gap-3`,children:(0,V.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col items-start gap-1`,children:[(0,V.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[a&&!e.is_resolved&&(0,V.jsx)(`span`,{"aria-hidden":!0,className:`h-2 w-2 shrink-0 rounded-full bg-[var(--primary-base)]`}),r&&(0,V.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[color-mix(in_oklab,var(--system-negative-strong)_14%,transparent)] px-2 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,children:[(0,V.jsx)(p,{className:`h-3 w-3`}),`Alert`]}),i&&(0,V.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--surface-base)] px-2 py-0.5 text-body-small-default text-[var(--content-secondary)]`,children:[(0,V.jsx)(f,{className:`h-3 w-3`}),`Snoozed`]}),e.is_resolved&&(0,V.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[color-mix(in_oklab,var(--system-positive-strong)_14%,transparent)] px-2 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,children:[(0,V.jsx)(l,{className:`h-3 w-3`}),`Resolved`]})]}),(0,V.jsx)(`h3`,{className:`text-body-medium-default leading-tight`,style:{color:e.is_resolved?`var(--content-secondary)`:`var(--content-default)`},children:e.title}),e.body&&(0,V.jsx)(`p`,{className:`text-body-small-default leading-relaxed text-[var(--content-secondary)]`,children:e.body})]})}),(0,V.jsxs)(`div`,{className:`mt-3 flex items-center gap-3 text-body-small-default text-[var(--content-secondary)]`,children:[(0,V.jsxs)(`span`,{children:[`Last seen `,N(e.last_seen_at)]}),e.occurrence_count>1&&(0,V.jsxs)(`span`,{children:[`· `,e.occurrence_count,`× occurrences`]})]}),!e.is_resolved&&(0,V.jsxs)(`div`,{className:`mt-3 flex items-center gap-2 border-t border-[var(--border-base)] pt-3`,children:[(0,V.jsxs)(`button`,{type:`button`,onClick:()=>t(e.id,a),disabled:n,className:`flex cursor-pointer items-center gap-1.5 rounded-md px-3 py-1.5 text-body-small-default transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,style:{background:a?`var(--primary-base)`:`var(--surface-base)`,color:a?`var(--content-inset)`:`var(--content-secondary)`},children:[n?(0,V.jsx)(d,{className:`h-3 w-3 animate-spin`}):(0,V.jsx)(l,{className:`h-3 w-3`}),a?`Mark as read`:`Mark as unread`]}),(0,V.jsx)(H,{notificationId:e.id,currentlySnoozed:i,children:(0,V.jsxs)(`button`,{type:`button`,className:`flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80`,children:[(0,V.jsx)(f,{className:`h-3 w-3`}),i?`Change snooze`:`Snooze`]})})]})]})}function G(){let e=x({platformHostedOnly:!0}),t=C(),o=S(),s=r(),l=w(),[u,f]=(0,L.useState)(`open`),[p,g]=(0,L.useState)(!1),[v,T]=(0,L.useState)([]),{data:E,isLoading:O,isError:A,refetch:j}=i({...k({query:{status:u}}),enabled:e===`full`&&t}),N=e===`full`&&o||(t?O:!1);(0,L.useEffect)(()=>{!t&&p&&g(!1)},[t,p]);let P=t?A:!1,z=t?E?.results??[]:[],B=z.filter(e=>!e.is_read&&!e.is_resolved),H=a(D()),[G,K]=(0,L.useState)(new Set),[q,J]=(0,L.useState)(!1),Y=(0,L.useCallback)(()=>R(s),[s]),X=async(e,t)=>{K(t=>new Set(t).add(e));try{await H.mutateAsync({path:{id:e},body:{acknowledged:t}}),Y()}catch(e){y.error(e instanceof Error?e.message:`Failed to update notification`)}finally{K(t=>{let n=new Set(t);return n.delete(e),n})}},Z=async()=>{if(!(B.length===0||q)){J(!0);try{await Promise.allSettled(B.map(e=>H.mutateAsync({path:{id:e.id},body:{acknowledged:!0}})))}finally{Y(),J(!1)}}},Q=(0,V.jsxs)(`button`,{type:`button`,className:`flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80`,title:`Pause alerts`,children:[(0,V.jsx)(F,{className:`h-3.5 w-3.5`}),`Pause alerts`]}),$=(0,V.jsx)(U,{existingRules:v,onClose:()=>g(!1),onPauseCreated:e=>T(t=>[...t,e]),onPauseDeleted:e=>T(t=>t.filter(t=>t.id!==e))});return e===`gated`?(0,V.jsx)(n,{replace:!0,to:b.settings.general}):e===`disabled`?(0,V.jsxs)(`div`,{className:`space-y-4`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,V.jsx)(c,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,V.jsxs)(`div`,{className:`flex-1`,children:[(0,V.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Notifications`}),(0,V.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:`Platform alerts and status notifications`})]})]}),(0,V.jsx)(M,{children:`Log in to the Vellum platform to view notifications.`})]}):(0,V.jsxs)(`div`,{className:`space-y-4`,children:[(0,V.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,V.jsx)(c,{className:`h-5 w-5 text-[var(--content-secondary)]`}),(0,V.jsxs)(`div`,{className:`flex-1`,children:[(0,V.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:`Notifications`}),(0,V.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:`Platform alerts and status notifications`})]}),t&&(l?(0,V.jsxs)(_.Root,{open:p,onOpenChange:g,children:[(0,V.jsx)(_.Trigger,{asChild:!0,children:Q}),(0,V.jsxs)(_.Content,{children:[(0,V.jsx)(_.Header,{children:(0,V.jsx)(_.Title,{children:`Pause alerts`})}),(0,V.jsx)(_.Body,{children:(0,V.jsx)(U,{existingRules:v,onClose:()=>g(!1),onPauseCreated:e=>T(t=>[...t,e]),onPauseDeleted:e=>T(t=>t.filter(t=>t.id!==e)),hideTitle:!0})})]})]}):(0,V.jsxs)(h.Root,{open:p,onOpenChange:g,children:[(0,V.jsx)(h.Trigger,{asChild:!0,children:Q}),(0,V.jsx)(h.Content,{align:`end`,className:`w-72`,children:$})]}))]}),(0,V.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,V.jsx)(`div`,{className:`flex gap-1 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] p-1`,children:[`open`,`resolved`].map(e=>{let t=u===e;return(0,V.jsx)(`button`,{type:`button`,onClick:()=>f(e),className:`cursor-pointer rounded px-3 py-1 text-body-small-default capitalize transition-colors`,style:{background:t?`var(--surface-lift)`:`transparent`,color:t?`var(--content-default)`:`var(--content-secondary)`,boxShadow:t?`0 1px 2px rgba(0,0,0,0.08)`:void 0},children:e},e)})}),u===`open`&&B.length>1&&(0,V.jsxs)(`button`,{type:`button`,onClick:()=>void Z(),disabled:q,className:`ml-auto flex cursor-pointer items-center gap-1.5 rounded-md border border-[var(--border-base)] bg-transparent px-3 py-1.5 text-body-small-default text-[var(--content-secondary)] transition-opacity hover:opacity-80 disabled:cursor-not-allowed disabled:opacity-50`,children:[q?(0,V.jsx)(d,{className:`h-3 w-3 animate-spin`}):(0,V.jsx)(I,{className:`h-3 w-3`}),`Mark all as read (`,B.length,`)`]})]}),N?(0,V.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-secondary)]`,children:[(0,V.jsx)(d,{className:`h-4 w-4 animate-spin`}),`Loading notifications…`]}):P?(0,V.jsxs)(m,{tone:`error`,children:[`Failed to load notifications.`,` `,(0,V.jsx)(`button`,{type:`button`,onClick:()=>void j(),className:`cursor-pointer underline hover:no-underline`,children:`Retry`})]}):z.length===0?(0,V.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 py-12 text-center`,children:[(0,V.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,V.jsx)(c,{className:`h-5 w-5 text-[var(--content-secondary)]`})}),(0,V.jsxs)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:[`No `,u,` notifications`]}),(0,V.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:u===`open`?`You're all caught up!`:`Nothing to show here.`})]}):(0,V.jsx)(`div`,{className:`space-y-3`,children:z.map(e=>(0,V.jsx)(W,{notification:e,onAck:(e,t)=>void X(e,t),isAcking:G.has(e.id)},e.id))})]})}export{G as NotificationsPage};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{m as n}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as r}from"./jsx-runtime-D3ZM-ToX.js";import{i}from"./oauth-popup-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{m as n}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as r}from"./jsx-runtime-D3ZM-ToX.js";import{i}from"./oauth-popup-OhSYYlQF.js";var a=e(t(),1),o=r();function s(){return(0,o.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,o.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-positive-bg)`}),(0,o.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 c(){return(0,o.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,o.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-negative-bg)`}),(0,o.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,o.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 l=`
|
|
2
2
|
:root {
|
|
3
3
|
--oauth-surface: #F5F3EB;
|
|
4
4
|
--oauth-surface-card: #FFFFFF;
|
package/dist/assets/{oauth-connection-utils-DbcihBL8.js → oauth-connection-utils-CWPUW4MK.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./native-deep-link-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{t as n}from"./native-deep-link-DCBJ-Rw0.js";var r=e(t(),1);function i(e){(0,r.useEffect)(()=>{let t=t=>{e(t.detail)};return window.addEventListener(n,t),()=>{window.removeEventListener(n,t)}},[e])}function a(e){return new Promise(t=>setTimeout(t,e))}function o(e){return JSON.stringify({status:e.status,connected:e.connected,account_label:e.account_label,scopes_granted:[...e.scopes_granted].sort(),expires_at:e.expires_at})}function s(e,t){return new Map((e??[]).filter(e=>e.provider===t).map(e=>[e.id,o(e)]))}function c(e,t,n){return e.some(e=>e.provider===t&&e.connected&&n.get(e.id)!==o(e))}function l(e,t,n){return e.find(e=>e.provider===t&&e.connected&&n.get(e.id)!==o(e))??null}export{i as a,a as i,s as n,c as r,l as t};
|
package/dist/assets/{oauth-popup-complete-page-CyYbqLoK.js → oauth-popup-complete-page-DBsOvLES.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{m as n}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as r}from"./jsx-runtime-D3ZM-ToX.js";import{n as i,r as a}from"./native-deep-link-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{m as n}from"./chunk-5KNZJZUH-Bsoom5--.js";import{t as r}from"./jsx-runtime-D3ZM-ToX.js";import{n as i,r as a}from"./native-deep-link-DCBJ-Rw0.js";import{i as o}from"./oauth-popup-OhSYYlQF.js";var s=e(t(),1),c=r();function l(){return(0,c.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,c.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-positive-bg)`}),(0,c.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 u(){return(0,c.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,c.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-negative-bg)`}),(0,c.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,c.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 d=`
|
|
2
2
|
:root {
|
|
3
3
|
--oauth-surface: #F5F3EB;
|
|
4
4
|
--oauth-surface-card: #FFFFFF;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{i as n}from"./button-Dy5001j6.js";import{t as r}from"./jsx-runtime-D3ZM-ToX.js";import{t as i}from"./public-asset-
|
|
1
|
+
import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./react-BFJW0bSv.js";import{i as n}from"./button-Dy5001j6.js";import{t as r}from"./jsx-runtime-D3ZM-ToX.js";import{t as i}from"./public-asset-BBVUuTT_.js";var a=e(t(),1),o=r();function s({className:e=``}){return(0,o.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none fixed bottom-0 left-0 right-0 flex justify-center overflow-hidden ${e}`,children:(0,o.jsx)(`img`,{src:i(`/login-background-characters.svg`),alt:``,width:1200,height:180,className:`w-full max-w-[900px] object-cover object-bottom`})})}function c({children:e,showCreatureFooter:t=!0}){let[r,i]=(0,a.useState)(null);return(0,o.jsxs)(`div`,{className:`relative flex h-full flex-col bg-[var(--surface-base)]`,children:[(0,o.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:(0,o.jsx)(n,{container:r,children:e})}),t&&(0,o.jsx)(s,{}),(0,o.jsx)(`div`,{ref:i})]})}export{c as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as e,l as t,n,o as r}from"./local-settings-C-dW2vkq.js";import{t as i}from"./device-settings-DXp9L4iB.js";import{n as a,t as o}from"./create-selectors-Qo7kcikX.js";var s=i(`shareAnalytics`),c=i(`shareDiagnostics`);function l(t,n){n===null?e(t):r(t,n)}var u=a()(e=>({shareAnalytics:n(s),shareDiagnostics:n(c),serverAnalyticsEffective:null,pendingAnalyticsOptIn:!1,serverDiagnosticsEffective:null,tosAccepted:!1,privacyConsent:!1,analyticsConsentCurrent:!1,diagnosticsConsentCurrent:!1,hasConsentRecord:!1,consentHydrated:!1,setShareAnalytics:t=>{e({shareAnalytics:t}),l(s,t)},setShareDiagnostics:t=>{e({shareDiagnostics:t}),l(c,t)},setPendingAnalyticsOptIn:t=>{e({pendingAnalyticsOptIn:t})},setServerAnalyticsEffective:t=>{e({serverAnalyticsEffective:t})},setServerDiagnosticsEffective:t=>{e({serverDiagnosticsEffective:t})},setTosAccepted:t=>{e({tosAccepted:t})},setPrivacyConsent:t=>{e({privacyConsent:t})},setAnalyticsConsentCurrent:t=>{e({analyticsConsentCurrent:t})},setDiagnosticsConsentCurrent:t=>{e({diagnosticsConsentCurrent:t})},setHasConsentRecord:t=>{e({hasConsentRecord:t})},setConsentHydrated:t=>{e({consentHydrated:t})}})),d=o(u),f=new Map([[s,`shareAnalytics`],[c,`shareDiagnostics`]]);for(let[e,r]of f)t(e,()=>{u.setState({[r]:n(e)})});export{d as t};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/routes-CaP5Tqj7.js","assets/chunk-jRWAZmH_.js","assets/preload-helper-Cv2QeVDK.js","assets/api-C3QSs67k.js","assets/local-mode-BTovbt13.js","assets/is-electron-m5eeGBnd.js","assets/create-selectors-Qo7kcikX.js","assets/react-BFJW0bSv.js","assets/local-settings-C-dW2vkq.js","assets/api-LG8zI3nK.js","assets/sdk.gen-BIu1DgTs.js","assets/client.gen-CV05d-kw.js","assets/sdk.gen-BHZ0fJla.js","assets/api-errors-CFiCT7Ap.js","assets/use-assistant-avatar-bwLHcMz4.js","assets/utils-CnB60ZJN.js","assets/assistant-identity-store-DIyVo8LV.js","assets/impersonate-version-flag-4Ki_3iKD.js","assets/semver-BpijV4FQ.js","assets/QueryClientProvider-CMu7CkQU.js","assets/jsx-runtime-D3ZM-ToX.js","assets/useQuery-Bz-fbQ-m.js","assets/use-ios-app-nudge-B-ojl-b1.js","assets/funnel-events-n2IVlwTo.js","assets/prefs-bw85lYLp.js","assets/onboarding-store-bZ2qYISk.js","assets/device-settings-DXp9L4iB.js","assets/consent-hzYg-zbh.js","assets/ingest-BizI657K.js","assets/client-identity-DhkdvP5w.js","assets/platform-detection-XEAAu4c-.js","assets/native-biometric-BAMIyaSS.js","assets/domains-DWRzNRJy.js","assets/routes-D9sNqB_o.js","assets/dist-BwAT3VYQ.js","assets/use-bus-subscription-nUrbz9Mu.js","assets/event-bus-DSxmBYhD.js","assets/client-feature-flag-store-CMncoan8.js","assets/feature-flag-catalog-I9-eJQP_.js","assets/theme-preferences-Bb2pPRXa.js","assets/typed-storage-9Sn8tkE7.js","assets/button-Dy5001j6.js","assets/cn-CJf7MmLX.js","assets/bundle-mjs-BQxDdOEo.js","assets/src-te3YTBG-.js","assets/dist-oCfq2a_n.js","assets/dist-CaYJ736y.js","assets/dist-jXSU-ejH.js","assets/checkbox-CRmgkYah.js","assets/createLucideIcon-CAM1RhH8.js","assets/check-sC49_hjU.js","assets/typography-DEI9Ra9z.js","assets/list-row-B1wPb2Au.js","assets/chevron-right-HU6H84S0.js","assets/menu-BvjhxZo7.js","assets/Combination-CkAMwkbS.js","assets/popover-BRpYVASI.js","assets/toast-LgLp4obE.js","assets/circle-alert-DVCpoZrc.js","assets/circle-check-CjGnAahM.js","assets/info-vgPTIsGI.js","assets/x-JBAsSOmg.js","assets/panel-item-CrtoJCrd.js","assets/dist-DC9QooLF.js","assets/card-DRIctGVs.js","assets/confirm-dialog-UYFm4osC.js","assets/loader-circle-XREx3i4W.js","assets/triangle-alert-CQfiAg_t.js","assets/modal-BR4CUFBd.js","assets/dropdown-BCfnSdIZ.js","assets/chevron-down-B5A-0g8A.js","assets/input-hw3el2GJ.js","assets/notice-BMK7xqUw.js","assets/progress-bar-C_T5_pf2.js","assets/tag-NXcyiTkK.js","assets/toggle-lfnhEAcN.js","assets/src-CfUWwwYf.css","assets/use-sticky-profiles-CdWX0mgI.js","assets/react-query.gen-C5c1Acuq.js","assets/useMutation-CXGTrp4W.js","assets/infiniteQueryOptions-CqLc14_4.js","assets/queryOptions-CMSBCFOf.js","assets/use-is-org-ready-C5xlYywh.js","assets/auth-store-5qq59BAN.js","assets/remote-gateway-session-yRYdsfDx.js","assets/capture-error-Bj8_eutd.js","assets/resolved-assistants-store-Dw5UuGyB.js","assets/use-platform-gate-C65D14xY.js","assets/eye-bbox-C_V87iLg.js","assets/runtime-upgrade-banner-DPqzKtZU.js","assets/react-query.gen-BC3STDmV.js","assets/local-runtime-upgrade-Bqn3d7Q7.js","assets/diagnostics-T_96Uyh5.js","assets/misc-CuYswARt.js","assets/cloud-off-BCBGTmt0.js","assets/moon-BJzODLTY.js","assets/refresh-cw-DzPnoeCh.js","assets/wrench-0WW0zkkG.js","assets/chunk-5KNZJZUH-Bsoom5--.js","assets/retire-confirm-dialog-CsSY2-T8.js","assets/navigation-resolver-DPJxzx0h.js","assets/research-onboarding-persistence-51lJoYJ2.js","assets/build-state-m0LQ5Iis.js","assets/use-command-palette-sections-CkpUaAKs.js","assets/chat-CDFCY8f0.js","assets/haptics-DvWjk9Fg.js","assets/settings-CfuLzwIw.js","assets/chevron-left-CytMddTB.js","assets/globe-CMtjL_s_.js","assets/layout-grid-DA_CfD6d.js","assets/message-square-CQGiY4zk.js","assets/monitor-B1y28fS1.js","assets/search-BVW-n8to.js","assets/zoom-in-CaLYwni-.js","assets/add-credential-modal-CY_--m8L.js","assets/use-active-assistant-id-CldxA_-M.js","assets/key-round-0Zop_GsZ.js","assets/app-card-CAaFL1oB.js","assets/edge-swipe-arbiter-store-CQnDi2yf.js","assets/viewer-store-DLk-jp8U.js","assets/pointer-BbPfN86L.js","assets/sandbox-bridge-BxW8HZq_.js","assets/external-link-CS0aVYGt.js","assets/puzzle-BVC3TGko.js","assets/use-edit-app-B_Nequzs.js","assets/use-is-mobile-BlQuzI5Z.js","assets/conversation-store-C--wWMNW.js","assets/edit-chat-session-D37Qx6ol.js","assets/chevron-up-2Qqarz0p.js","assets/minimize-2-CaXsUqSp.js","assets/pencil-D38YNe2r.js","assets/avatar-renderer-ClUVcQmf.js","assets/avatar-svg-compositor-Dl-ckXRE.js","assets/chat-avatar-CvEA6z0H.js","assets/animated-avatar-BcgncPkc.js","assets/use-reduced-motion-W1fCe3vS.js","assets/proxy-D7UPVac3.js","assets/sound-manager-Bx-OcMAz.js","assets/apple-logo--8ZT6Umn.js","assets/use-discord-nudge-C_QdHIeX.js","assets/middleware-HE0NLvPl.js","assets/integration-icon-dv-9Zzx3.js","assets/public-asset-BBVUuTT_.js","assets/chat-layout-slots-store-BJfYGnd7.js","assets/document-viewer-container-B7TEDeV0.js","assets/circle-check-big-DSsDH5_6.js","assets/download-CywcQLB2.js","assets/file-text-Br730Q4B.js","assets/message-square-text-D0Q7W58R.js","assets/send-Q71Exj3z.js","assets/trash-2-L5LNgw9o.js","assets/user-_zNqL48O.js","assets/not-found-OqaWNmdx.js","assets/arrow-left-C2ylPLHq.js","assets/sparkles-Ccrj7hxd.js","assets/platform-login-notice-CdYiKsE8.js","assets/use-onboarding-login-DI5gvqEG.js","assets/login-flow-CD9tyuFG.js","assets/log-in-CqVJRYe-.js","assets/slack-setup-wizard-DK2F8LXc.js","assets/use-copy-to-clipboard-cF7ZSilD.js","assets/clipboard-copy-JwIceweN.js","assets/voice-list-CW8mzaHU.js","assets/square-D_e8nR-F.js","assets/volume-2-CvT-JEIl.js","assets/voice-picker-modal-PdsZwrsV.js","assets/use-save-twilio-credentials-c9xG9RPK.js","assets/sdk.gen-B5ygTzyg.js","assets/mail-CMdPNysl.js","assets/message-circle-BsH7vHtN.js","assets/acp-run-store-B_eDLRwl.js","assets/by-tool-use-id-index-M50wYE1f.js","assets/optimistic-lifecycle-BINTsVFx.js","assets/messages-CFcAW4iz.js","assets/prechat-CeL4a_1i.js","assets/effective-timezone-CmcoXrio.js","assets/browser-timezone-CGwaX5Uv.js","assets/background-task-store-DMP8ByUq.js","assets/risk-CdT92Vqr.js","assets/chat-markdown-message-rxPKNeTx.js","assets/file-markdown-DaflJFk7.js","assets/workspace-tree-query-B1A-efgV.js","assets/browser-CTZVDjOL.js","assets/native-anchor-CeekjwVy.js","assets/eye-off-Jdx8qkOK.js","assets/eye-BMVGQXHT.js","assets/acp-run-actions-BH8wuBAL.js","assets/code-qafFA0_-.js","assets/background-task-actions-DmP5s0oO.js","assets/transcript-message-body-shared-D9_d2c2X.js","assets/site-favicon-BB1pYWLF.js","assets/three-dot-indicator-BMvKQ_On.js","assets/AnimatePresence-DPfyu3ET.js","assets/brain-BIzJCPA6.js","assets/user-plus-oiIr9ey8.js","assets/subagent-store-MDi6lBXs.js","assets/circle-x-17dBxF06.js","assets/file-plus-C3SBA8ll.js","assets/terminal-CdCI6wMV.js","assets/detail-shell-Cyqr5FXJ.js","assets/surface-parse-helpers-CEJ3tQ9Q.js","assets/conversation-navigation-DsN0hcpL.js","assets/workflow-store-lM7yKbUo.js","assets/workflow-status-HyIIhMBP.js","assets/conversation-selection-oJy8Oht3.js","assets/use-subagent-card-data-DHuNtSy9.js","assets/access-DS79PSR3.js","assets/assistant-feature-flag-store-CAdgpPiS.js","assets/research-results-view-C4sIw2gK.js","assets/research-facts-B7Ev1zv0.js","assets/ban-B__z3LwE.js","assets/utils-B0rBxtYP.js","assets/format-date-BGnM4mqL.js","assets/bell-Ct4a9v6Y.js","assets/clock-BYTc0Ds9.js","assets/list-DNbTcxAh.js","assets/rotate-ccw-BjzeX7qz.js","assets/shield-check-22NwY9JM.js","assets/invalidate-plugin-queries-C3NTXkCX.js","assets/first-run-scope-CL5YbC3b.js","assets/oauth-connection-utils-CWPUW4MK.js","assets/native-deep-link-DCBJ-Rw0.js","assets/oauth-popup-OhSYYlQF.js","assets/onboarding-layout-DLs1hfp_.js","assets/settings-navigation-CSG7jiyJ.js","assets/hard-navigate-DyUrcxe0.js","assets/use-supports-bookmarks-C3J7FtDn.js","assets/bug-VUcJFHwN.js","assets/chart-column-BLKW3sjY.js","assets/sliders-horizontal-slneqAyY.js","assets/mic-xmDFUbCL.js","assets/users-iLvfYFOP.js","assets/workspace-theme-tokens-DNNwX-XS.js","assets/conversation-queries-CWvK6RLK.js","assets/conversation-list-fetchers-DM-Y61u5.js","assets/use-app-theme-Dg8A6vPA.js","assets/use-assistant-capability-CDS7GbSO.js","assets/use-avatar-accent-var-vpakP1ce.js","assets/avatar-bundled-components-DPqbVXi9.js","assets/use-bookmarks-CK-nOiT-.js","assets/use-edge-swipe-Wm9pU2HX.js","assets/use-swipe-engine-6PcZZMVD.js","assets/plugins-surface-B43Op43l.js","assets/installed-plugins-query-Cgek0q7G.js","assets/doctor-handoff-store-CYjL1S0n.js","assets/threshold-presets-BdTTHCnm.js","assets/shield-fzs_emVe.js","assets/trust-rules-api-B5lfygCA.js","assets/dictation-overlay-pePw7mLd.js","assets/native-file-ySSv1sQ7.js","assets/deploy-store-D6snB1j5.js","assets/avatar-subagent-CRA2B82x.js","assets/avatar-tone-BKwvoDSj.js","assets/conversation-cache-DKvwwWNo.js","assets/external-urls-_vjsdj2L.js","assets/use-bundled-avatar-components-Bbs4vCnX.js","assets/use-effective-timezone-Dqs8OaXJ.js","assets/useInfiniteQuery-Dk8q0n49.js","assets/arrow-down-to-line-Bh_5sIPp.js","assets/arrow-right-B-jRJNWP.js","assets/arrow-up-BNd4Gpy7.js","assets/upload-Bdbyo_ok.js","assets/circle-minus-DNfBAj4g.js","assets/cloud-RlApB3rO.js","assets/coins-Hrmb9tmj.js","assets/credit-card-C1RL73Rt.js","assets/dices-DcuIF52A.js","assets/ellipsis-DnoqTkj4.js","assets/file-code-BDHws4Dk.js","assets/folder-DF8nFp7N.js","assets/hard-drive-DWFPKcXI.js","assets/heart-789ajxtB.js","assets/video-BcgduiJ6.js","assets/inbox-B6TknLsk.js","assets/laptop-DSZhU52i.js","assets/paperclip-c8Xlrnx4.js","assets/link-BfUb7cwC.js","assets/log-out-B4hsBWnk.js","assets/play-B0-JEtcm.js","assets/plus-jH3kAliM.js","assets/smartphone-mDNwm_ss.js","assets/sun-Dw0t1n1O.js","assets/workflow-cWWiPi3K.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./preload-helper-Cv2QeVDK.js";import{u as t}from"./routes-D9sNqB_o.js";async function n(n){let{router:r}=await e(async()=>{let{router:e}=await import(`./routes-CaP5Tqj7.js`).then(e=>e.n);return{router:e}},__vite__mapDeps([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282]));await r.navigate(`${t.workspace}?file=${encodeURIComponent(n)}`)}export{n as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./jsx-runtime-D3ZM-ToX.js";import{
|
|
1
|
+
import{t as e}from"./jsx-runtime-D3ZM-ToX.js";import{I as t}from"./src-te3YTBG-.js";import{Qn as n,Xn as r,Yn as i,Zn as a,er as o,tr as s}from"./sdk.gen-BHZ0fJla.js";import{ht as c}from"./react-query.gen-C5c1Acuq.js";import{n as l,r as u,t as d}from"./api-errors-CFiCT7Ap.js";import{t as f}from"./schedules-6hzhR_C_.js";var p=e();function m({storageKey:e,detailKey:n,section:r,detail:i}){return(0,p.jsx)(t,{className:`min-h-0 flex-1`,storageKey:e,defaultRightWidth:480,minLeftWidth:320,minRightWidth:400,hideDivider:!0,left:(0,p.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col pr-[var(--app-spacing-lg)]`,children:r}),right:(0,p.jsx)(`div`,{className:`home-detail-drawer`,children:i},n)})}function h({children:e}){return(0,p.jsx)(`div`,{className:`fixed inset-0 z-30 bg-[var(--surface-overlay)]`,style:{paddingTop:`var(--safe-area-inset-top, env(safe-area-inset-top, 0px))`,paddingBottom:`var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))`},children:e})}async function g(e,t){let{error:n,response:r}=await o({path:{assistant_id:e},body:t,throwOnError:!1});if(l(r,n,`Failed to create schedule.`),!r.ok)throw new d(r.status,u(n,r,`Failed to create schedule.`))}async function _(e){return f(e)}function v(e){return{queryKey:c({path:{assistant_id:e??``}}),queryFn:()=>e?_(e):Promise.resolve([]),staleTime:1e4}}async function y(e,t,n=10,r){let{data:i,error:o,response:s}=await a({path:{assistant_id:e,id:t},query:{limit:n,before:r},throwOnError:!1});if(l(s,o,`Failed to load schedule runs.`),!s.ok)throw new d(s.status,u(o,s,`Failed to load schedule runs.`));return{runs:i?.runs??[],nextCursor:i?.nextCursor??null}}async function b(e,t){let{data:n,error:r,response:i}=await s({path:{assistant_id:e},query:{from:t.from,to:t.to},throwOnError:!1});if(l(i,r,`Failed to load schedule usage.`),!i.ok)throw new d(i.status,u(r,i,`Failed to load schedule usage.`));return n?.summaries??[]}async function x(e,t,r){let{error:i,response:a}=await n({path:{assistant_id:e,id:t},body:{enabled:r},throwOnError:!1});if(l(a,i,`Failed to toggle schedule.`),!a.ok)throw new d(a.status,u(i,a,`Failed to toggle schedule.`))}async function S(e,t){let{error:n,response:r}=await i({path:{assistant_id:e,id:t},throwOnError:!1});if(l(r,n,`Failed to delete schedule.`),!r.ok&&r.status!==204)throw new d(r.status,u(n,r,`Failed to delete schedule.`))}async function C(e,t){let{error:n,response:i}=await r({path:{assistant_id:e,id:t},throwOnError:!1});if(l(i,n,`Failed to run schedule.`),!i.ok)throw new d(i.status,u(n,i,`Failed to run schedule.`))}function w({icon:e,title:t,description:n,actions:r}){return(0,p.jsxs)(`div`,{className:`flex h-full min-h-[400px] flex-col items-center justify-center gap-4 px-4 py-24 text-center`,children:[(0,p.jsx)(`div`,{className:`flex h-16 w-16 items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,p.jsx)(e,{size:32,className:`text-[var(--content-tertiary)]`})}),(0,p.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:t}),(0,p.jsx)(`p`,{className:`max-w-md text-body-medium-lighter text-[var(--content-tertiary)]`,children:n}),r?(0,p.jsx)(`div`,{className:`flex flex-col items-center gap-3`,children:r}):null]})}export{b as a,x as c,y as i,m as l,g as n,C as o,S as r,v as s,w as t,h as u};
|