@vellumai/web 0.11.10 → 0.11.11-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/{a2a-invite-CXZCA0Zh.js → a2a-invite-_wGU6HWn.js} +1 -1
- package/dist/assets/{about-page-DiyUJjGf.js → about-page-DUO0LASY.js} +1 -1
- package/dist/assets/{account-page-CJWUeKni.js → account-page-D42H7PzM.js} +1 -1
- package/dist/assets/{account-shell-BF0wq3dL.js → account-shell-8ayvWwg5.js} +1 -1
- package/dist/assets/acp-run-detail-panel-B0Su6BSV.js +3 -0
- package/dist/assets/{activity-redirect-page-Bqoawew6.js → activity-redirect-page-CwB5jmpQ.js} +1 -1
- package/dist/assets/activity-steps-panel-GCIpCAXt.js +1 -0
- package/dist/assets/{add-credits-modal-0MXreRar.js → add-credits-modal-CcQltjVO.js} +1 -1
- package/dist/assets/ai-page-DOuG64bJ.js +1 -0
- package/dist/assets/android-billing-handoff-DX4FW2PE.js +1 -0
- package/dist/assets/{api-key-screen-DHqMahec.js → api-key-screen-BsqXUt8S.js} +1 -1
- package/dist/assets/{app-info-DmJ1IJBZ.js → app-info-CFw-pJBd.js} +1 -1
- package/dist/assets/archive-redirect-page-Dp1mnnnG.js +1 -0
- package/dist/assets/{assistant-status-panel-gPe4jn29.js → assistant-status-panel-Gu7yZfSV.js} +1 -1
- package/dist/assets/{auth-welcome-screen-CroiP_sh.js → auth-welcome-screen-CoRWc9Wn.js} +1 -1
- package/dist/assets/avatar-random-nmxBpjvk.js +2 -0
- package/dist/assets/{await-org-header-settled-CYg9juTz.js → await-org-header-settled-BuslhVn1.js} +1 -1
- package/dist/assets/background-task-detail-panel-BRJH3dlZ.js +1 -0
- package/dist/assets/billing-page-eEkbbsbp.js +3 -0
- package/dist/assets/{billing-redirect-page-piXEk2bD.js → billing-redirect-page-CvzCPneC.js} +1 -1
- package/dist/assets/{bookmarks-page-ixMKQPzN.js → bookmarks-page-BHTRMGuj.js} +1 -1
- package/dist/assets/{bundle-confirm-page-BZfmArZf.js → bundle-confirm-page-YP0P2TXv.js} +1 -1
- package/dist/assets/channel-transcript-panel-08PR-PLD.js +1 -0
- package/dist/assets/channels-page-route-B_xVOdyO.js +1 -0
- package/dist/assets/chat-BZAgyepa.js +3 -0
- package/dist/assets/chat-B_LNeTTq.js +3 -0
- package/dist/assets/chat-D6ymn2HV.js +3 -0
- package/dist/assets/chat-Dcr3nKow.js +3 -0
- package/dist/assets/chat-info-panel-BTcARkxm.js +1 -0
- package/dist/assets/checkout-continuation-tAX1_m3V.js +1 -0
- package/dist/assets/checkout-page-D8SAsMWh.js +1 -0
- package/dist/assets/checkout-return-target-Dwmbf6kF.js +1 -0
- package/dist/assets/{command-palette-BYjwAuJQ.js → command-palette-BCJ09PN8.js} +1 -1
- package/dist/assets/{command-palette-window-page-KNdnCkz_.js → command-palette-window-page-ChxjtkGN.js} +1 -1
- package/dist/assets/common-BwTsuJS0.js +1 -0
- package/dist/assets/common-C8F4Ck2i.js +1 -0
- package/dist/assets/common-CqRcxmv_.js +1 -0
- package/dist/assets/common-Pd0MI_So.js +1 -0
- package/dist/assets/{community-page-CGeHYhxR.js → community-page-CODQYbbU.js} +1 -1
- package/dist/assets/{companion-accent-DwBPqfnb.js → companion-accent-tJqpwbpU.js} +1 -1
- package/dist/assets/{companion-layout-Bv3xdQBy.js → companion-layout-B10TRaer.js} +1 -1
- package/dist/assets/companion-surface-page-CE94Tl96.js +1 -0
- package/dist/assets/companion-watch-frame-page-iLlHdxzO.js +1 -0
- package/dist/assets/{connect-page-DvDO8pYQ.js → connect-page-45_SQ9Hv.js} +1 -1
- package/dist/assets/{consent-controls-Cqi-XchY.js → consent-controls-BsInitSK.js} +1 -1
- package/dist/assets/contacts-gateway-7sXdqgaZ.js +1 -0
- package/dist/assets/contacts-page-route-Cw5iPa7X.js +1 -0
- package/dist/assets/{credential-entry-page-DVLlpzsQ.js → credential-entry-page-DFmx4GmU.js} +1 -1
- package/dist/assets/credentials-page-yqSKY71j.js +1 -0
- package/dist/assets/{csv-preview-ClM4J2DW.js → csv-preview-CJJ7UWi0.js} +1 -1
- package/dist/assets/danger-zone-redirect-page-Dnvt2tnF.js +1 -0
- package/dist/assets/debug-page-BGfvW4U3.js +4 -0
- package/dist/assets/deploy-dialogs-BPespFRy.js +1 -0
- package/dist/assets/{detail-card-DozMITtn.js → detail-card-DuMOMNDt.js} +1 -1
- package/dist/assets/{detail-panel-stop-button-DFPBKjBo.js → detail-panel-stop-button-b7hxWMlm.js} +1 -1
- package/dist/assets/{detail-primitives-0Z051SZJ.js → detail-primitives-Brk11nJ4.js} +1 -1
- package/dist/assets/developer-page-DUzrkexY.js +1 -0
- package/dist/assets/devices-redirect-page-DyOzvvCC.js +1 -0
- package/dist/assets/{dictation-overlay-page-Bocg7l5v.js → dictation-overlay-page-BpQMn4ur.js} +1 -1
- package/dist/assets/{document-viewer-page-C7s8-yWd.js → document-viewer-page-CRi_6mfy.js} +1 -1
- package/dist/assets/{ellipsis-vertical-D7YDF4in.js → ellipsis-vertical-DADudCz4.js} +1 -1
- package/dist/assets/{emails-page-aS97qZTB.js → emails-page-C74h6Q18.js} +1 -1
- package/dist/assets/emoji-catalog-data-0ErKKUgg.js +1 -0
- package/dist/assets/environment-store-B4U2yUid.js +1 -0
- package/dist/assets/{esm-a0gpEIyX.js → esm-BGgsNk0r.js} +1 -1
- package/dist/assets/esm-BRd6ii0N.js +2 -0
- package/dist/assets/esm-CAyJeylE.js +2 -0
- package/dist/assets/esm-CVGx4tdT.js +2 -0
- package/dist/assets/{esm-BhPoSi3M.js → esm-Dk9SdDAD.js} +1 -1
- package/dist/assets/{esm-ClRq7QTb.js → esm-Dl792NhE.js} +2 -2
- package/dist/assets/esm-Dm3aeuGe.js +1 -0
- package/dist/assets/esm-OKy-T4ws.js +2 -0
- package/dist/assets/esm-VMeibMx_.js +2 -0
- package/dist/assets/file-diff-view-CiCu8bMj.js +3 -0
- package/dist/assets/{file-editor-d-VpdSmC.js → file-editor-BD8PNNu7.js} +1 -1
- package/dist/assets/{folder-open-DbnJZzcO.js → folder-open-BDPMS2Bk.js} +1 -1
- package/dist/assets/general-page-RrOGJarz.js +2 -0
- package/dist/assets/hatching-screen-DVkz4QAA.js +1 -0
- package/dist/assets/home-BF9986ga.js +1 -0
- package/dist/assets/home-BG3X65Tv.js +1 -0
- package/dist/assets/home-BUeCo3yU.js +1 -0
- package/dist/assets/home-C8krCVKm.js +1 -0
- package/dist/assets/{hosting-screen-Cvd_lgtV.js → hosting-screen-DBzLZkSJ.js} +1 -1
- package/dist/assets/{icons-B-6TfGtd.js → icons-J6Mg9wGk.js} +1 -1
- package/dist/assets/identity-page-route-DHRyQDCH.js +7 -0
- package/dist/assets/index-jpjzZb6b.js +379 -0
- package/dist/assets/index-xoHlTuU-.css +2 -0
- package/dist/assets/inspect-page-BWNt4rrQ.js +9 -0
- package/dist/assets/integrations-page-DzvW1_85.js +1 -0
- package/dist/assets/{intelligence-layout-BHPtC2az.js → intelligence-layout-DJKG-nX6.js} +1 -1
- package/dist/assets/keyboard-shortcuts-redirect-page-BSIIufUC.js +1 -0
- package/dist/assets/latest-assistant-text-D48YOxGw.js +24 -0
- package/dist/assets/library-detail-page-ILf2Qy9p.js +1 -0
- package/dist/assets/library-page-Dz-I6fon.js +1 -0
- package/dist/assets/login-page-DHvA24qu.js +1 -0
- package/dist/assets/logout-page-VSAEudIL.js +1 -0
- package/dist/assets/{logs-layout-BtCoT0Cv.js → logs-layout-CfXGPNn_.js} +1 -1
- package/dist/assets/markdown-preview-DXQeH-xe.js +1 -0
- package/dist/assets/{media-preview-DvwMMiAb.js → media-preview-CeEbSIWW.js} +1 -1
- package/dist/assets/memory-page-route-PKbCFo_e.js +2 -0
- package/dist/assets/{memory-router-playground-page-knM-79pF.js → memory-router-playground-page-D-WxucPv.js} +1 -1
- package/dist/assets/message-files-panel-ClB4OHKu.js +1 -0
- package/dist/assets/{metric-card-tzSXowqX.js → metric-card-B4Gz0bhc.js} +1 -1
- package/dist/assets/{notifications-page-iwCiEsvG.js → notifications-page-hpLH5EtM.js} +1 -1
- package/dist/assets/{oauth-complete-page-BSNj9OfZ.js → oauth-complete-page-BtjuGpWP.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-C5tlMQzH.js → oauth-popup-complete-page-mp-6HzBF.js} +2 -2
- package/dist/assets/onboarding-Bp4I4_8q.js +1 -0
- package/dist/assets/onboarding-DWCktMSZ.js +1 -0
- package/dist/assets/onboarding-DfDEWpm3.js +1 -0
- package/dist/assets/onboarding-SOv21YJD.js +1 -0
- package/dist/assets/{page-shell-yrQdXH7t.js → page-shell-CHCSTsj9.js} +1 -1
- package/dist/assets/{pairing-page-CL8D36Jw.js → pairing-page-BvwfSoA6.js} +1 -1
- package/dist/assets/password-reset-page-C5pZc0DV.js +1 -0
- package/dist/assets/pdf-file-preview-CsGCw8JE.js +1 -0
- package/dist/assets/{peeking-eyes-CR9he4vp.js → peeking-eyes-DzPVjsGl.js} +1 -1
- package/dist/assets/personality-page-4aidsu27.js +1 -0
- package/dist/assets/personality-page-CEMD70q6.js +1 -0
- package/dist/assets/personality-sliders-DGm9A3BW.js +1 -0
- package/dist/assets/plans-page-_r8MVNhb.js +1 -0
- package/dist/assets/{platform-loopback-page-BJQB1fxq.js → platform-loopback-page-CwgM2jU7.js} +1 -1
- package/dist/assets/plugin-detail-page-C8rxUWMn.js +1 -0
- package/dist/assets/plugins-page-DNJlTg8g.js +1 -0
- package/dist/assets/{preview-error-CWZXjhgJ.js → preview-error-BUjzhle1.js} +1 -1
- package/dist/assets/privacy-page-CupfCCzq.js +1 -0
- package/dist/assets/privacy-screen-TaBkMvOR.js +1 -0
- package/dist/assets/{provider-callback-page-BiJRbo2j.js → provider-callback-page-BGXQSfbn.js} +1 -1
- package/dist/assets/{provider-key-e7bkE4FW.js → provider-key-Bq66KgUO.js} +1 -1
- package/dist/assets/{provider-signup-page-BHcqfJkj.js → provider-signup-page-D_eHOfl0.js} +1 -1
- package/dist/assets/{provisioning-targets-BudKfChL.js → provisioning-targets-BLTBrT0f.js} +1 -1
- package/dist/assets/{quick-input-page-CtnR_stl.js → quick-input-page-B5xvXL1F.js} +1 -1
- package/dist/assets/{rehype-katex-Byll-Mky.js → rehype-katex-BgUVZdyw.js} +1 -1
- package/dist/assets/{repeat-AwziNvx5.js → repeat-CCwj4O1J.js} +1 -1
- package/dist/assets/{research-mock-page-CcU6Ca5m.js → research-mock-page-PaQ837TX.js} +1 -1
- package/dist/assets/research-onboarding-route-CNoGqLkQ.js +50 -0
- package/dist/assets/{review-terms-screen-DNEe5COX.js → review-terms-screen-BqpTh6zA.js} +1 -1
- package/dist/assets/{schedules-C0VutBSw.js → schedules-2XQ76whr.js} +1 -1
- package/dist/assets/{schedules-DaEQbLMm.js → schedules-De4Odvkc.js} +1 -1
- package/dist/assets/{schedules-CtfOJ78L.js → schedules-De57J4ta.js} +1 -1
- package/dist/assets/schedules-DxeSUihA.js +1 -0
- package/dist/assets/{schedules-PMAnmP3b.js → schedules-blEdQ6yp.js} +1 -1
- package/dist/assets/schedules-page-d65A8NQF.js +1 -0
- package/dist/assets/security-redirect-page-CuZ3fT0R.js +1 -0
- package/dist/assets/select-assistant-screen-CdalEz_9.js +1 -0
- package/dist/assets/{self-hosted-servers-X73OsSz4.js → self-hosted-servers-CyDwHGSp.js} +1 -1
- package/dist/assets/{service-form-controls-Cn7xIKry.js → service-form-controls-CBEEpO26.js} +1 -1
- package/dist/assets/{setting-row-CwEW1k3A.js → setting-row-BvR6-08v.js} +1 -1
- package/dist/assets/settings-CBz3nIpZ.js +3 -0
- package/dist/assets/settings-CqYNz8kW.js +3 -0
- package/dist/assets/settings-CuRkdN0w.js +3 -0
- package/dist/assets/settings-divider-DU3ByZQg.js +1 -0
- package/dist/assets/settings-hFa4u0Fj.js +3 -0
- package/dist/assets/settings-layout-DCWgW5D0.js +1 -0
- package/dist/assets/share-feedback-modal-DHtKDVtF.js +2 -0
- package/dist/assets/{sidebar-tree-ppFGlSW4.js → sidebar-tree-BgbzXxYi.js} +1 -1
- package/dist/assets/{signup-page-CBFu4Phx.js → signup-page-BDateKEC.js} +1 -1
- package/dist/assets/{signup-shell-C9bkpRpP.js → signup-shell-CotTCquh.js} +1 -1
- package/dist/assets/skill-detail-page-nSrYNnY9.js +2 -0
- package/dist/assets/skill-detail-panel-BHAmYq37.js +1 -0
- package/dist/assets/{skill-removal-dialog-Dmej1bap.js → skill-removal-dialog-B_hpnrPZ.js} +1 -1
- package/dist/assets/skills-page-CY36J7Rw.js +1 -0
- package/dist/assets/{sounds-page-BqQ6POCA.js → sounds-page-CVl-NVDn.js} +1 -1
- package/dist/assets/{start-screen-ClrAUbI0.js → start-screen-CgauyZIw.js} +1 -1
- package/dist/assets/stt-language-picker-modal-N72XuoQE.js +1 -0
- package/dist/assets/subagent-detail-panel-DnC_SVFh.js +1 -0
- package/dist/assets/superpowers-page-INeojqYn.js +1 -0
- package/dist/assets/{system-events-page-Bm5hG4ru.js → system-events-page-OihKZDZU.js} +1 -1
- package/dist/assets/system-events-redirect-page-Bl15Jd-C.js +1 -0
- package/dist/assets/{text-preview-BKJ1Aeao.js → text-preview-BDpY47s1.js} +1 -1
- package/dist/assets/{theme-stage-page-DlRKsOdI.js → theme-stage-page-DT4intWx.js} +1 -1
- package/dist/assets/{tiptap-document-editor-B-vV6rr1.js → tiptap-document-editor-BLnpY6Pv.js} +2 -2
- package/dist/assets/tool-detail-panel-DC4D2Jlb.js +15 -0
- package/dist/assets/{trait-cycle-row-0CXwkqPS.js → trait-cycle-row-DaEuqLmF.js} +1 -1
- package/dist/assets/upgrade-cancel-page-CFVdwqug.js +1 -0
- package/dist/assets/{upgrade-success-page-CbbRpoIM.js → upgrade-success-page-BO2OzxPx.js} +1 -1
- package/dist/assets/usage-redirect-page-Cn2F7Ezg.js +1 -0
- package/dist/assets/use-app-delete-dvAb-5JI.js +1 -0
- package/dist/assets/use-assistant-identity-details--yIMhZJo.js +1 -0
- package/dist/assets/use-checkout-dismiss-refresh-BQT7Bbuc.js +1 -0
- package/dist/assets/{use-edge-swipe-back-DONCpBgK.js → use-edge-swipe-back-HAgGP4y-.js} +2 -2
- package/dist/assets/{use-hotkey-recorder-DKlT-BSf.js → use-hotkey-recorder-C2dwFKcz.js} +1 -1
- package/dist/assets/use-invite-link-dialog-DRWD3T4t.js +1 -0
- package/dist/assets/{use-platform-assistant-id-DxHYaWx7.js → use-platform-assistant-id-BtpswT_x.js} +1 -1
- package/dist/assets/use-return-to-short-circuit-OqzatVUm.js +1 -0
- package/dist/assets/{use-side-list-room-CKAXuhLb.js → use-side-list-room-CnAOR18Q.js} +1 -1
- package/dist/assets/{use-skill-actions-weVkg8kB.js → use-skill-actions-D4ct6gVy.js} +1 -1
- package/dist/assets/{use-skill-detail-files-B6B6qn4A.js → use-skill-detail-files-DYeHOVus.js} +1 -1
- package/dist/assets/use-supports-credentials-settings-DYOcFNFw.js +1 -0
- package/dist/assets/use-transcript-message-by-id-8Nt8lSao.js +1 -0
- package/dist/assets/{vendor-CCI2T82b.js → vendor-CV8wawxx.js} +3 -3
- package/dist/assets/voice-page-Dh62TnVf.js +1 -0
- package/dist/assets/wake-detail-panel-F1IlFslD.js +1 -0
- package/dist/assets/{weather-forecast-display-CuijMBMn.js → weather-forecast-display-DDqsvcr0.js} +1 -1
- package/dist/assets/{web-DFZ_YZd_.js → web-B7Y6zjYj.js} +1 -1
- package/dist/assets/{web-rdfhOXRa.js → web-BBa5psPY.js} +1 -1
- package/dist/assets/{web-B3en8Rn5.js → web-BEBOyL2B.js} +1 -1
- package/dist/assets/{web-EwBZl1wu.js → web-BOqVDQt4.js} +1 -1
- package/dist/assets/{web-WkD7VOGO.js → web-BZzdQ9pk.js} +1 -1
- package/dist/assets/{web-eI0P3yE6.js → web-DU-rNdfR.js} +1 -1
- package/dist/assets/{web-CoxWKp0K.js → web-J5TpUYg8.js} +1 -1
- package/dist/assets/{web-UubwrDv3.js → web-rLK7aHD3.js} +1 -1
- package/dist/assets/{web-BEoX04Jw.js → web-v3Sg2PMW.js} +1 -1
- package/dist/assets/welcome-screen-C2ky-B2i.js +1 -0
- package/dist/assets/workflow-detail-panel-B4xH8ny2.js +1 -0
- package/dist/assets/workspace-page-ND0GVGa5.js +1 -0
- package/dist/images/integrations/ATTRIBUTION.md +7 -1
- package/dist/images/integrations/stripe-link.svg +1 -0
- package/dist/index.html +4 -4
- package/dist/skills/stripe-app-setup/assets/icon.svg +1 -1
- package/dist/skills/stripe-link-wallet/assets/icon.svg +1 -1
- package/package.json +1 -1
- package/dist/assets/acp-run-detail-panel-rEbi1ucP.js +0 -5
- package/dist/assets/activity-steps-panel-BEVnG3V-.js +0 -1
- package/dist/assets/ai-page-CiAqQ6Bt.js +0 -1
- package/dist/assets/android-billing-handoff-Do0Z_tWL.js +0 -1
- package/dist/assets/archive-redirect-page-BHo8cKBO.js +0 -1
- package/dist/assets/avatar-random-B3s-p6ri.js +0 -2
- package/dist/assets/background-task-detail-panel-viJcb3cl.js +0 -1
- package/dist/assets/billing-page-DK2GIN6k.js +0 -3
- package/dist/assets/channel-transcript-panel-CjU1kHAM.js +0 -1
- package/dist/assets/channels-page-route-TMKiofYF.js +0 -1
- package/dist/assets/chat-BY2HhBFw.js +0 -3
- package/dist/assets/chat-BbBv19qz.js +0 -3
- package/dist/assets/chat-CXKEPjVV.js +0 -3
- package/dist/assets/chat-D7KieOMp.js +0 -3
- package/dist/assets/checkout-continuation--Gp9g8Cs.js +0 -1
- package/dist/assets/checkout-page-Dt_x1-Ak.js +0 -1
- package/dist/assets/checkout-return-target-DgcrCyAx.js +0 -1
- package/dist/assets/common-BPztxW3Y.js +0 -1
- package/dist/assets/common-BUtR7wv2.js +0 -1
- package/dist/assets/common-CbFrJQkH.js +0 -1
- package/dist/assets/common-Cl4fl5fm.js +0 -1
- package/dist/assets/companion-surface-page-DVqRvVT7.js +0 -1
- package/dist/assets/companion-watch-frame-page-Dmj0BZLk.js +0 -1
- package/dist/assets/contacts-gateway-BoQ3VEpG.js +0 -1
- package/dist/assets/contacts-page-route-dMHiwIhE.js +0 -1
- package/dist/assets/credentials-page-DGuGRbME.js +0 -1
- package/dist/assets/danger-zone-redirect-page-QSBD8j9D.js +0 -1
- package/dist/assets/debug-page-BNLV56hO.js +0 -4
- package/dist/assets/deploy-dialogs-B5rrR-6M.js +0 -1
- package/dist/assets/developer-page-bqyYnvvf.js +0 -1
- package/dist/assets/devices-redirect-page-D7XxyAb6.js +0 -1
- package/dist/assets/emoji-catalog-data-DyO0VsDK.js +0 -1
- package/dist/assets/environment-store-Cwp_aQVg.js +0 -1
- package/dist/assets/esm-BNAZWYPG.js +0 -2
- package/dist/assets/esm-C2CZjfig.js +0 -2
- package/dist/assets/esm-C66pb4Yp.js +0 -2
- package/dist/assets/esm-CblTp9Ve.js +0 -2
- package/dist/assets/esm-DP3PASER.js +0 -1
- package/dist/assets/esm-Egdl0RD-.js +0 -2
- package/dist/assets/general-page-Bpcb3cOw.js +0 -2
- package/dist/assets/hatching-screen-BqKoH9nP.js +0 -1
- package/dist/assets/home-C32sLT0d.js +0 -1
- package/dist/assets/home-D405qdeA.js +0 -1
- package/dist/assets/home-DFtnBWbS.js +0 -1
- package/dist/assets/home-uCy8kFT4.js +0 -1
- package/dist/assets/identity-page-route-Be9kkJ6U.js +0 -7
- package/dist/assets/index-BHBLeC80.js +0 -373
- package/dist/assets/index-D5tXP3pV.css +0 -2
- package/dist/assets/inspect-page-UYu_6yuD.js +0 -9
- package/dist/assets/integrations-page-4nGzHdaB.js +0 -1
- package/dist/assets/keyboard-shortcuts-redirect-page-HZbAKXV3.js +0 -1
- package/dist/assets/latest-assistant-text-BVDHPDcj.js +0 -24
- package/dist/assets/library-detail-page-0dxGGatK.js +0 -1
- package/dist/assets/library-page-CN0wcNRe.js +0 -1
- package/dist/assets/login-page-Ce0yHHIY.js +0 -1
- package/dist/assets/logout-page-HAgKDdSg.js +0 -1
- package/dist/assets/markdown-preview-oANTtJ4h.js +0 -1
- package/dist/assets/memory-page-route-Bafhl3aE.js +0 -2
- package/dist/assets/message-files-panel-CoABbiHA.js +0 -1
- package/dist/assets/onboarding-BPTfs_sw.js +0 -1
- package/dist/assets/onboarding-C7OPvVK5.js +0 -1
- package/dist/assets/onboarding-N4S8AW6k.js +0 -1
- package/dist/assets/onboarding-USgRFwiW.js +0 -1
- package/dist/assets/password-reset-page-BP0tU3JU.js +0 -1
- package/dist/assets/pdf-file-preview-DotetIoy.js +0 -1
- package/dist/assets/personality-page-BzN3CB4G.js +0 -1
- package/dist/assets/plans-page-BDO6hVar.js +0 -1
- package/dist/assets/plugin-detail-page-DbOSNUlU.js +0 -1
- package/dist/assets/plugins-page-CrmooYb6.js +0 -1
- package/dist/assets/privacy-page-DTg59h01.js +0 -1
- package/dist/assets/privacy-screen-CAuKxlCT.js +0 -1
- package/dist/assets/research-onboarding-route-C_1EYWlc.js +0 -50
- package/dist/assets/schedules-C6GFTq9e.js +0 -1
- package/dist/assets/schedules-page-DF9d_-hO.js +0 -1
- package/dist/assets/security-redirect-page-fOqpqXhg.js +0 -1
- package/dist/assets/select-assistant-screen-7s__H50j.js +0 -1
- package/dist/assets/settings--jCGbMu6.js +0 -3
- package/dist/assets/settings-3vxhzYeD.js +0 -3
- package/dist/assets/settings-B-KoDbyO.js +0 -3
- package/dist/assets/settings-DwOrI3PD.js +0 -3
- package/dist/assets/settings-divider-DvaVqZSv.js +0 -1
- package/dist/assets/settings-layout-DKQW650m.js +0 -1
- package/dist/assets/share-feedback-modal-CXO1WiLR.js +0 -2
- package/dist/assets/skill-detail-page-C34NDUXJ.js +0 -2
- package/dist/assets/skill-detail-panel-BFyWuPsn.js +0 -1
- package/dist/assets/skills-page-Cf_hKy9r.js +0 -1
- package/dist/assets/stt-language-picker-modal-CZO7JoYT.js +0 -1
- package/dist/assets/subagent-detail-panel-Cl9ImrOJ.js +0 -1
- package/dist/assets/superpowers-page-D1k1MEVI.js +0 -1
- package/dist/assets/system-events-redirect-page-B74O6yIF.js +0 -1
- package/dist/assets/tool-detail-panel-uczeeElt.js +0 -15
- package/dist/assets/upgrade-cancel-page-DonPXETN.js +0 -1
- package/dist/assets/usage-redirect-page-D9ARkbO8.js +0 -1
- package/dist/assets/use-assistant-identity-details-BCrYYzla.js +0 -1
- package/dist/assets/use-checkout-dismiss-refresh--5bkiBrA.js +0 -1
- package/dist/assets/use-invite-link-dialog-DBeao10u.js +0 -1
- package/dist/assets/use-return-to-short-circuit-_5KJP58I.js +0 -1
- package/dist/assets/use-supports-credentials-settings-CRJVJGGZ.js +0 -1
- package/dist/assets/use-transcript-message-by-id-DKwkoAvU.js +0 -1
- package/dist/assets/voice-page-ESLvI7Wk.js +0 -1
- package/dist/assets/welcome-screen-BKhi16Mk.js +0 -1
- package/dist/assets/workflow-detail-panel-CjgIzQ49.js +0 -1
- package/dist/assets/workspace-page-BVZIUjC3.js +0 -1
- package/dist/images/integrations/stripe.svg +0 -1
- /package/dist/assets/{account-FKgqRJu9.js → account-BRMQN3Hp.js} +0 -0
- /package/dist/assets/{account-BA5jqDj6.js → account-DFBVUaFj.js} +0 -0
- /package/dist/assets/{account-ip20tetF.js → account-DK-uFjDM.js} +0 -0
- /package/dist/assets/{account-DgnbnECc.js → account-DlHR5tom.js} +0 -0
- /package/dist/assets/{app-types-0Zm-1JhZ.js → app-types-R2BjVd4u.js} +0 -0
- /package/dist/assets/{build.umd-CVBQeTU4.js → build.umd-BDQjXK5l.js} +0 -0
- /package/dist/assets/{channels--lv8FGdf.js → channels-BlN6h5Yf.js} +0 -0
- /package/dist/assets/{channels-ClWUJtCx.js → channels-CYyjWubA.js} +0 -0
- /package/dist/assets/{channels-B9icBql9.js → channels-Fuiz6Bx7.js} +0 -0
- /package/dist/assets/{channels-v0C60cYP.js → channels-oV3BofDQ.js} +0 -0
- /package/dist/assets/{contacts-BQ94fuUV.js → contacts-BD1ZjH4R.js} +0 -0
- /package/dist/assets/{contacts-COqsemVO.js → contacts-DO23uT5c.js} +0 -0
- /package/dist/assets/{contacts-CoAmmYoi.js → contacts-DS4DGhkC.js} +0 -0
- /package/dist/assets/{contacts-Cf8Z8Ypm.js → contacts-Dh9S5trj.js} +0 -0
- /package/dist/assets/{credential-requests-D-BHmCso.js → credential-requests-B2nbIPCm.js} +0 -0
- /package/dist/assets/{credential-requests-WG2Ly11i.js → credential-requests-Cq0W2SLQ.js} +0 -0
- /package/dist/assets/{credential-requests-BfzszdNh.js → credential-requests-SsPu1I49.js} +0 -0
- /package/dist/assets/{credential-requests-72ffRzBF.js → credential-requests-orDT3GcS.js} +0 -0
- /package/dist/assets/{definitions-SYFqlqxu.js → definitions-CIDzXl-8.js} +0 -0
- /package/dist/assets/{definitions-BYsSaA4u.js → definitions-vY30nmPg.js} +0 -0
- /package/dist/assets/{format-countdown-Dz5XCJoT.js → format-countdown-Ck7dI0Xw.js} +0 -0
- /package/dist/assets/{intelligence-DE4NupPM.js → intelligence-D3QpZ2xn.js} +0 -0
- /package/dist/assets/{intelligence-BY-nSeKR.js → intelligence-DPqYLHNd.js} +0 -0
- /package/dist/assets/{intelligence-CP8sCCS_.js → intelligence-u56Yi_NI.js} +0 -0
- /package/dist/assets/{intelligence-C7n9yEoU.js → intelligence-y6vN_Mdd.js} +0 -0
- /package/dist/assets/{library-DBkZoDRF.js → library-6ZRxzyy2.js} +0 -0
- /package/dist/assets/{library-1J6AIi1i.js → library-C-Qksx7x.js} +0 -0
- /package/dist/assets/{library-Bc86UsJ1.js → library-CS5eEGWr.js} +0 -0
- /package/dist/assets/{library-Bqld62NF.js → library-CdIFgs3T.js} +0 -0
- /package/dist/assets/{link-click-x__AmmnM.js → link-click-k5mmNwCu.js} +0 -0
- /package/dist/assets/{logs-CLvjJFut.js → logs-CrmkpO3a.js} +0 -0
- /package/dist/assets/{logs-Dj54XwvB.js → logs-D0cXFJMX.js} +0 -0
- /package/dist/assets/{logs-t63DIvWv.js → logs-DAwJbr-Q.js} +0 -0
- /package/dist/assets/{logs-CCscJ0kU.js → logs-Dz-GMURf.js} +0 -0
- /package/dist/assets/{machine-sizes-Dnm82Ei9.js → machine-sizes-C3GmmuDZ.js} +0 -0
- /package/dist/assets/{onboarding-step-layout-DX3nTIye.js → onboarding-step-layout-DnL_IbCm.js} +0 -0
- /package/dist/assets/{pdf-BRXrngio.js → pdf-D2FMVYiD.js} +0 -0
- /package/dist/assets/{plugin-attribution-COvprnE5.js → plugin-attribution-CeJvw31w.js} +0 -0
- /package/dist/assets/{radio-card-nav-wiR_yhVP.js → radio-card-nav-BsBWpdyn.js} +0 -0
- /package/dist/assets/{remote-web-B_CKO1lH.js → remote-web-BDlWdbTR.js} +0 -0
- /package/dist/assets/{remote-web-CCHcuH5v.js → remote-web-BqT1bCst.js} +0 -0
- /package/dist/assets/{remote-web-CX-BHRlQ.js → remote-web-Cs7J640n.js} +0 -0
- /package/dist/assets/{remote-web-DZcYWPqy.js → remote-web-Csjf67ib.js} +0 -0
- /package/dist/assets/{skill-icon-FPL5xeRb.js → skill-icon-DEUidmqq.js} +0 -0
- /package/dist/assets/{status-badge-pill-DsYKTPMw.js → status-badge-pill-CBQvTIk7.js} +0 -0
- /package/dist/assets/{terminal-CDc9oJxM.js → terminal-C0WX32KF.js} +0 -0
- /package/dist/assets/{terminal-BEPJM1_8.js → terminal-CRBKHZm5.js} +0 -0
- /package/dist/assets/{terminal-rnCKES6C.js → terminal-DFgjzYGN.js} +0 -0
- /package/dist/assets/{terminal-D6cGApBS.js → terminal-DoWOKxv3.js} +0 -0
- /package/dist/assets/{usage-window-zygj9EXK.js → usage-window-5RXvRuB8.js} +0 -0
- /package/dist/assets/{use-truncated-blob-text-CS6VKRFh.js → use-truncated-blob-text-CvqS5q0a.js} +0 -0
- /package/dist/assets/{workspace-DBMxgrue.js → workspace-BLgcfQq4.js} +0 -0
- /package/dist/assets/{workspace-DECIUhvv.js → workspace-Bt8Q3v-7.js} +0 -0
- /package/dist/assets/{workspace-Bz-skFgd.js → workspace-Bu0imBiz.js} +0 -0
- /package/dist/assets/{workspace-BlqPRjdc.js → workspace-DLF1k434.js} +0 -0
- /package/dist/assets/{xterm-CnYdVfXB.js → xterm-CJ0yCq-Z.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-D5lx1Kpc.js → xterm-addon-fit-IkN_XlHG.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{N as t,Qn as n,Zn as r,er as i,j as a}from"./vendor-CV8wawxx.js";import{b as o,f as s,g as c,t as l}from"./react-DPM_L_aA.js";import{$t as u,Ci as d,Hr as f,P as p,Tr as m,Vr as h,Y as g,Yn as _,Zn as v,ct as y,i as b,q as x,rn as S,rr as C,tn as w,tt as T,vt as E,x as D,zr as O}from"./icons-J6Mg9wGk.js";import{$y as k,Ay as A,Bd as j,By as M,Cc as N,Cl as P,Cs as F,Df as I,Dg as ee,Ef as te,Em as L,Ey as ne,Fy as R,Id as re,Iy as z,Jf as B,Jy as V,Ky as H,Ld as ie,Li as U,Ly as W,Of as ae,Oy as G,Pu as oe,Q as se,Rd as ce,Ry as K,Tc as le,Tg as q,Vd as ue,Vy as J,Xf as de,Yy as fe,an as pe,eb as Y,ey as me,hy as he,kf as ge,kr as _e,nb as X,oy as ve,qv as ye,ry as be,ti as xe,wc as Se,ws as Ce,xr as Z,zd as we,zv as Te}from"./index-jpjzZb6b.js";import{t as Ee}from"./use-platform-assistant-id-BtpswT_x.js";var De=d(`cable`,[[`path`,{d:`M17 19a1 1 0 0 1-1-1v-2a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v2a1 1 0 0 1-1 1z`,key:`trhst0`}],[`path`,{d:`M17 21v-2`,key:`ds4u3f`}],[`path`,{d:`M19 14V6.5a1 1 0 0 0-7 0v11a1 1 0 0 1-7 0V10`,key:`1mo9zo`}],[`path`,{d:`M21 21v-2`,key:`eo0ou`}],[`path`,{d:`M3 5V3`,key:`1k5hjh`}],[`path`,{d:`M4 10a2 2 0 0 1-2-2V6a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2a2 2 0 0 1-2 2z`,key:`1dd30t`}],[`path`,{d:`M7 5V3`,key:`1t1388`}]]),Oe=d(`calendar-plus`,[[`path`,{d:`M16 19h6`,key:`xwg31i`}],[`path`,{d:`M16 2v4`,key:`4m81vk`}],[`path`,{d:`M19 16v6`,key:`tddt3s`}],[`path`,{d:`M21 12.598V6a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h8.5`,key:`1glfrc`}],[`path`,{d:`M3 10h18`,key:`8toen8`}],[`path`,{d:`M8 2v4`,key:`1cmpym`}]]),ke={slack:`slack_channel`,discord:`discord_channel`,telegram:`telegram`};function Ae(e){return Object.entries(ke).some(([t,n])=>t===e&&n!==e)}var Q=e(o(),1),$=l();function je({displayName:e,providerKey:t,logoUrl:n,connections:r,connectionsLoading:i,oauthInProgress:o,onCancelConnect:s,disconnectingId:c,onConnect:l,onDisconnect:u,connectPresets:d=[]}){let{t:f}=a(`settings`);return i?(0,$.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,$.jsx)(S,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):r.length===0?o?(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10`,children:[(0,$.jsx)(Z,{providerKey:t,displayName:e,logoUrl:n,size:48}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,$.jsx)(S,{className:`h-3.5 w-3.5 animate-spin`}),f(`managedOauthTab.waitingForAuthorization`),(0,$.jsx)(X,{variant:`ghost`,size:`compact`,onClick:s,children:f(`managedOauthTab.cancel`)})]})]}):(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3 py-10`,children:[(0,$.jsx)(Z,{providerKey:t,displayName:e,logoUrl:n,size:48}),(0,$.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-secondary)]`,children:f(`managedOauthTab.connectToContinue`)}),(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-2`,children:[(0,$.jsx)(X,{variant:`primary`,size:`compact`,leftIcon:(0,$.jsx)(y,{}),onClick:()=>l(),disabled:o,children:f(`managedOauthTab.connectAccount`)}),d.map(e=>(0,$.jsx)(X,{variant:`outlined`,size:`compact`,leftIcon:(0,$.jsx)(Oe,{}),onClick:()=>l(e.scopes),disabled:o,children:e.label},e.id))]})]}):(0,$.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)]`,children:[(0,$.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)]`,children:r.map(r=>{let i=c===r.id,a=r.account_label??f(`managedOauthTab.accountFallback`,{name:e});return(0,$.jsxs)(`li`,{className:`flex items-center gap-3 px-4 py-3`,children:[(0,$.jsx)(Z,{providerKey:t,displayName:e,logoUrl:n,size:20}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:a}),(0,$.jsx)(X,{variant:`dangerOutline`,size:`compact`,iconOnly:i?(0,$.jsx)(S,{className:`animate-spin`}):(0,$.jsx)(D,{}),onClick:()=>u(r),disabled:i,"aria-label":f(`managedOauthTab.disconnectAriaLabel`,{account:a})})]},r.id)})}),(0,$.jsx)(`div`,{className:`border-t border-[var(--border-base)] px-4 py-3 dark:border-[var(--border-base)]`,children:o?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,$.jsx)(S,{className:`h-3.5 w-3.5 animate-spin`}),f(`managedOauthTab.waitingForAuthorization`),(0,$.jsx)(X,{variant:`ghost`,size:`compact`,onClick:s,children:f(`managedOauthTab.cancel`)})]}):(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(X,{variant:`primary`,size:`compact`,leftIcon:(0,$.jsx)(_,{}),onClick:()=>l(),disabled:o,children:f(`managedOauthTab.connectAccountLower`)}),d.map(e=>(0,$.jsx)(X,{variant:`outlined`,size:`compact`,leftIcon:(0,$.jsx)(Oe,{}),onClick:()=>l(e.scopes),disabled:o,children:e.label},e.id))]})})]})}function Me(e){return e.length>16?`${e.slice(0,12)}…${e.slice(-4)}`:e.length>8?`${e.slice(0,8)}…`:e}function Ne(e){try{return new Date(e).toLocaleDateString(void 0,{year:`numeric`,month:`short`,day:`numeric`})}catch{return``}}function Pe({assistantId:e,providerKey:t,displayName:o,logoUrl:s}){let{t:c}=a(`settings`),l=i(),u=r({...ce({path:{assistant_id:e},query:{provider_key:t}}),select:e=>e.apps}),d=r({...j({path:{assistant_id:e,providerKey:t}}),select:e=>e.oauth_callback_url}),p=u.data??[],m=d.data??null,h=n({queries:p.map(t=>({...re({path:{assistant_id:e,appId:t.id}}),select:e=>e.connections}))}),g={};p.forEach((e,t)=>{g[e.id]=h[t]?.data??[]});let v=we({path:{assistant_id:e},query:{provider_key:t}}),b=ae({onSuccess:()=>{l.invalidateQueries({queryKey:v}),A(``),N(``),O(!1),z.success(c(`yourOwnOauthTab.appAddedToast`,{name:o}))},onError:e=>{z.error(e.message||c(`yourOwnOauthTab.createFailedToast`))}}),x=I({onSuccess:()=>{l.invalidateQueries({queryKey:v}),z.success(c(`yourOwnOauthTab.appDeletedToast`))},onError:e=>{z.error(e.message||c(`yourOwnOauthTab.deleteFailedToast`))}}),w=te({onSuccess:e=>{`auth_url`in e&&(window.location.href=e.auth_url)},onError:e=>{z.error(e.message||c(`yourOwnOauthTab.connectFailedToast`))}}),T=ge(),[E,O]=(0,Q.useState)(!1),[k,A]=(0,Q.useState)(``),[M,N]=(0,Q.useState)(``),[P,F]=(0,Q.useState)(!1),[L,ne]=(0,Q.useState)(null),[B,V]=(0,Q.useState)(null),U=b.isPending,W=x.isPending?x.variables?.path?.id??null:null,G=w.isPending?w.variables?.path?.appId??null:null,oe=T.isPending?T.variables?.path?.id??null:null,se=()=>{let n=k.trim(),r=M.trim();!n||!r||b.mutate({path:{assistant_id:e},body:{provider_key:t,client_id:n,client_secret:r}})},K=()=>{let t=L;ne(null),t&&x.mutate({path:{assistant_id:e,id:t.id}})},le=t=>{w.mutate({path:{assistant_id:e,appId:t.id},body:{callback_transport:`gateway`,scopes:[]}})};return u.isLoading?(0,$.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,$.jsx)(S,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[p.length===0||E?(0,$.jsx)(Y.Root,{children:(0,$.jsxs)(Y.Body,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:p.length===0?c(`yourOwnOauthTab.addOwnApp`,{name:o}):c(`yourOwnOauthTab.addAnotherApp`,{name:o})}),(0,$.jsx)(`p`,{className:`text-body-small-lighter leading-relaxed text-[var(--content-tertiary)]`,children:c(`yourOwnOauthTab.credentialsNote`)})]}),m?(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:c(`yourOwnOauthTab.redirectUrl`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(H,{type:`text`,value:m,readOnly:!0,fullWidth:!0}),(0,$.jsx)(X,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{ee(m,{successMessage:c(`yourOwnOauthTab.copiedToast`),errorMessage:c(`yourOwnOauthTab.copyFailedToast`),onCopied:()=>{F(!0),setTimeout(()=>F(!1),2e3)}})},"aria-label":c(P?`yourOwnOauthTab.copiedAria`:`yourOwnOauthTab.copyRedirectAria`),iconOnly:P?(0,$.jsx)(f,{"aria-hidden":!0}):(0,$.jsx)(C,{"aria-hidden":!0})})]}),(0,$.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:c(`yourOwnOauthTab.redirectHint`)})]}):null,(0,$.jsx)(H,{label:c(`yourOwnOauthTab.clientId`),type:`text`,value:k,onChange:e=>A(e.target.value),placeholder:c(`yourOwnOauthTab.clientIdPlaceholder`),fullWidth:!0}),(0,$.jsx)(H,{label:c(`yourOwnOauthTab.clientSecret`),type:`password`,value:M,onChange:e=>N(e.target.value),placeholder:c(`yourOwnOauthTab.clientSecretPlaceholder`),fullWidth:!0}),(0,$.jsxs)(`div`,{className:`flex items-center justify-end gap-2 pt-1`,children:[p.length>0?(0,$.jsx)(X,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{O(!1),A(``),N(``)},disabled:U,children:c(`yourOwnOauthTab.cancel`)}):null,(0,$.jsx)(X,{type:`button`,size:`compact`,onClick:se,disabled:U||!k.trim()||!M.trim(),leftIcon:U?(0,$.jsx)(S,{className:`animate-spin`,"aria-hidden":!0}):(0,$.jsx)(y,{"aria-hidden":!0}),children:c(`yourOwnOauthTab.addApp`)})]})]})}):null,p.map(e=>{let n=g[e.id]??[],r=W===e.id,i=G===e.id;return(0,$.jsx)(Y.Root,{children:(0,$.jsxs)(Y.Body,{className:`flex flex-col gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 space-y-0.5`,children:[(0,$.jsx)(`p`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:Me(e.client_id)}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:c(`yourOwnOauthTab.addedOn`,{date:Ne(e.created_at)})})]}),(0,$.jsx)(X,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>ne(e),disabled:r,"aria-label":c(`yourOwnOauthTab.deleteAppAria`,{id:Me(e.client_id)}),iconOnly:r?(0,$.jsx)(S,{className:`animate-spin`,"aria-hidden":!0}):(0,$.jsx)(D,{"aria-hidden":!0})})]}),n.length>0?(0,$.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)] overflow-hidden rounded-md border border-[var(--border-base)] dark:divide-[var(--border-base)] dark:border-[var(--border-base)]`,children:n.map(n=>{let r=oe===n.id,i=n.account_info??c(`yourOwnOauthTab.accountFallback`,{name:o});return(0,$.jsxs)(`li`,{className:`flex items-center gap-3 px-3 py-2`,children:[(0,$.jsx)(Z,{providerKey:t,displayName:o,logoUrl:s,size:18}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-lighter text-[var(--content-default)]`,children:i}),(0,$.jsx)(X,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>V({appId:e.id,connection:n}),disabled:r,"aria-label":c(`yourOwnOauthTab.disconnectAria`,{account:i}),iconOnly:r?(0,$.jsx)(S,{className:`animate-spin`,"aria-hidden":!0}):(0,$.jsx)(D,{"aria-hidden":!0})})]},n.id)})}):null,(0,$.jsx)(X,{type:`button`,size:`compact`,onClick:()=>le(e),disabled:i,className:`w-full`,leftIcon:i?(0,$.jsx)(S,{className:`animate-spin`,"aria-hidden":!0}):(0,$.jsx)(_,{"aria-hidden":!0}),children:c(i?`yourOwnOauthTab.waitingAuthorization`:`yourOwnOauthTab.connectAccount`)})]})},e.id)}),p.length>0&&!E?(0,$.jsx)(X,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>O(!0),className:`w-full border-dashed`,leftIcon:(0,$.jsx)(y,{"aria-hidden":!0}),children:c(`yourOwnOauthTab.addAnotherAppButton`)}):null,(0,$.jsx)(R,{open:L!==null,title:c(`yourOwnOauthTab.deleteAppTitle`),message:L?c(`yourOwnOauthTab.deleteAppMessage`,{id:Me(L.client_id)}):``,confirmLabel:c(`yourOwnOauthTab.delete`),destructive:!0,onConfirm:K,onCancel:()=>ne(null)}),(0,$.jsx)(R,{open:B!==null,title:c(`yourOwnOauthTab.disconnectTitle`,{name:o}),message:B?c(`yourOwnOauthTab.disconnectMessage`,{account:B.connection.account_info??c(`yourOwnOauthTab.accountFallback`,{name:o})}):``,confirmLabel:c(`yourOwnOauthTab.disconnect`),destructive:!0,onConfirm:()=>{let t=B;V(null),t&&T.mutate({path:{assistant_id:e,id:t.connection.id}},{onSuccess:()=>{let n=ie({path:{assistant_id:e,appId:t.appId}});l.invalidateQueries({queryKey:n}),l.invalidateQueries({queryKey:v}),z.success(c(`yourOwnOauthTab.disconnectedToast`,{name:o}))},onError:e=>{z.error(e.message||c(`yourOwnOauthTab.disconnectFailedToast`))}})},onCancel:()=>V(null)})]})}var Fe={};function Ie(e){return Fe[e]??[]}function Le({assistantId:e,platformAssistantId:t,providerKey:n,displayName:o,description:s,logoUrl:c,platformGate:l,onClose:u}){let{t:d}=a(`settings`),f=i(),p=l===`full`,m=!B(),[h,g]=(0,Q.useState)(l===`gated`&&m?`your-own`:`managed`),_=(0,Q.useMemo)(()=>[{value:`managed`,label:d(`integrationDetailModal.managedTab`)},{value:`your-own`,label:d(`integrationDetailModal.yourOwnTab`)}],[d]);(0,Q.useEffect)(()=>{!m&&h===`your-own`&&g(`managed`)},[m,h]);let[v,y]=(0,Q.useState)(null),[x,S]=(0,Q.useState)(null),C=Se({path:{assistant_id:t}}),{data:w,isLoading:T}=r({...N({path:{assistant_id:t}}),enabled:p}),E=(w??[]).filter(e=>e.provider===n&&e.connected),D=_e({assistantId:e,providerKey:n,providerLabel:o}),O=e=>{p&&D.connect(e)},k=D.status;(0,Q.useEffect)(()=>{k===`connected`&&z.success(d(`useOauthConnect.accountConnected`,{name:o,ns:`common`}))},[k,o,d]);let A=D.dismiss;(0,Q.useEffect)(()=>A,[A]);let j=D.errorMessage;(0,Q.useEffect)(()=>{j&&z.error(j)},[j]);let F={path:{assistant_id:t}},I=P({onSuccess(e,t){z.success(d(`integrationDetailModal.disconnectedToast`,{name:o}));let n=t.path.connection_id;le(f,F,e=>e?.filter(e=>e.id!==n)),f.invalidateQueries({queryKey:C}),y(null)},onError(e){let t=me(e,void 0,d(`integrationDetailModal.disconnectFailedToast`,{name:o}));z.error(t),y(null)}});U(),(0,Q.useEffect)(()=>{let e=e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),u())};return document.addEventListener(`keydown`,e),()=>{document.removeEventListener(`keydown`,e)}},[u]);let ee=e=>{S(e)},te=()=>{let e=x;S(null),e&&(y(e.id),I.mutate({path:{assistant_id:t,connection_id:e.id}}))},L=x?.account_label??d(`integrationDetailModal.accountFallback`,{name:o}),ne=s?d(`integrationDetailModal.subtitleWithDescription`,{name:o,description:s}):d(`integrationDetailModal.subtitle`,{name:o});return(0,$.jsxs)(`div`,{className:`fixed inset-0 z-50 flex items-center justify-center bg-black/40 p-4`,children:[(0,$.jsxs)(`div`,{role:`dialog`,"aria-modal":`true`,"aria-labelledby":`integration-modal-title`,className:`flex w-full max-w-[520px] flex-col overflow-hidden rounded-xl bg-white shadow-xl dark:bg-[var(--surface-lift)]`,children:[(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-3 border-b border-[var(--border-base)] px-5 py-4 dark:border-[var(--border-base)]`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(Z,{providerKey:n,displayName:o,logoUrl:c,size:32}),(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`h2`,{id:`integration-modal-title`,className:`text-title-small text-[var(--content-default)]`,children:d(`integrationDetailModal.title`,{name:o})}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:ne})]})]}),(0,$.jsx)(X,{variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)(b,{}),"aria-label":d(`integrationDetailModal.close`),onClick:u})]}),(0,$.jsxs)(`div`,{className:`space-y-4 px-5 py-4`,children:[l!==`gated`&&m&&(0,$.jsx)(M,{ariaLabel:d(`integrationDetailModal.oauthModeAriaLabel`),items:_,value:h,onChange:g}),h===`managed`&&l!==`gated`?l===`disabled`?(0,$.jsx)(pe,{children:d(`integrationDetailModal.loginNotice`)}):(0,$.jsx)(je,{displayName:o,providerKey:n,logoUrl:c,connections:E,connectionsLoading:T,oauthInProgress:D.status===`attempting`,onCancelConnect:D.dismiss,disconnectingId:I.isPending?v:null,onConnect:O,onDisconnect:ee,connectPresets:Ie(n)}):m?(0,$.jsx)(Pe,{assistantId:e,providerKey:n,displayName:o,logoUrl:c}):null]}),(0,$.jsx)(`div`,{className:`flex justify-end border-t border-[var(--border-base)] px-5 py-3 dark:border-[var(--border-base)]`,children:(0,$.jsx)(X,{variant:`outlined`,size:`compact`,onClick:u,children:d(`integrationDetailModal.confirm`)})})]}),(0,$.jsx)(R,{open:x!==null,title:d(`integrationDetailModal.disconnectTitle`,{name:o}),message:x?d(`integrationDetailModal.disconnectMessage`,{account:L}):``,confirmLabel:d(`integrationDetailModal.disconnect`),destructive:!0,onConfirm:te,onCancel:()=>S(null)})]})}function Re({platformAssistantId:e,providerKey:t,displayName:n,description:r,logoUrl:o,connection:s,platformGate:c,onConfigure:l}){let{t:u}=a(`settings`),d=i(),f=!!s?.connected,[p,m]=(0,Q.useState)(!1),[h,g]=(0,Q.useState)(!1),_=Se({path:{assistant_id:e}}),v={path:{assistant_id:e}},y=P({onSuccess(e,t){z.success(u(`integrationRow.disconnectedToast`,{name:n}));let r=t.path.connection_id;le(d,v,e=>e?.filter(e=>e.id!==r)),d.invalidateQueries({queryKey:_})},onError(e){let t=me(e,void 0,u(`integrationRow.disconnectFailedToast`,{name:n}));z.error(t)}}),b=()=>{s?.id&&g(!0)};return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Y.Root,{children:(0,$.jsxs)(Y.Body,{padding:`sm`,className:`flex items-center gap-4 px-4`,children:[(0,$.jsx)(Z,{providerKey:t,displayName:n,logoUrl:o,size:32}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate text-title-small text-[var(--content-default)]`,children:n}),r&&(0,$.jsx)(`p`,{className:`truncate text-body-medium-lighter text-[var(--content-tertiary)]`,children:r})]}),f&&c===`full`?(0,$.jsx)(`div`,{className:`shrink-0`,children:(0,$.jsx)(ze,{displayName:n,open:p,onOpenChange:m,onEditConnections:()=>{m(!1),l()},onDisable:()=>{m(!1),b()},disablePending:y.isPending})}):(0,$.jsx)(X,{variant:`primary`,onClick:l,className:`shrink-0`,children:u(`integrationRow.enable`)})]})}),(0,$.jsx)(R,{open:h,title:u(`integrationRow.disconnectTitle`,{name:n}),message:u(`integrationRow.disconnectMessage`,{name:n}),confirmLabel:u(`integrationRow.disconnect`),destructive:!0,onConfirm:()=>{g(!1),s?.id&&y.mutate({path:{assistant_id:e,connection_id:s.id}})},onCancel:()=>g(!1)})]})}function ze({displayName:e,open:t,onOpenChange:n,onEditConnections:r,onDisable:i,disablePending:o}){let{t:s}=a(`settings`);return xe()?(0,$.jsxs)(W.Root,{open:t,onOpenChange:n,children:[(0,$.jsx)(W.Trigger,{asChild:!0,children:(0,$.jsx)(X,{variant:`outlined`,rightIcon:(0,$.jsx)(h,{}),"aria-haspopup":`menu`,"aria-expanded":t,children:s(`integrationRow.configure`)})}),(0,$.jsxs)(W.Content,{children:[(0,$.jsx)(W.Header,{children:(0,$.jsx)(W.Title,{children:e})}),(0,$.jsxs)(W.Body,{children:[(0,$.jsx)(A,{icon:E,label:s(`integrationRow.editConnections`),onSelect:r}),(0,$.jsx)(A,{icon:o?S:m,label:s(`integrationRow.disable`),onSelect:()=>{o||i()}})]})]})]}):(0,$.jsxs)(V.Root,{open:t,onOpenChange:n,children:[(0,$.jsx)(V.Trigger,{asChild:!0,children:(0,$.jsx)(X,{variant:`outlined`,rightIcon:(0,$.jsx)(h,{}),"aria-haspopup":`menu`,"aria-expanded":t,children:s(`integrationRow.configure`)})}),(0,$.jsxs)(V.Content,{align:`end`,sideOffset:4,role:`menu`,className:`w-56 overflow-hidden p-0`,children:[(0,$.jsx)(X,{type:`button`,role:`menuitem`,variant:`ghost`,onClick:r,className:`w-full justify-start rounded-none`,leftIcon:(0,$.jsx)(E,{"aria-hidden":!0}),children:s(`integrationRow.editConnections`)}),(0,$.jsx)(X,{type:`button`,role:`menuitem`,variant:`dangerGhost`,onClick:i,disabled:o,className:`w-full justify-start rounded-none`,leftIcon:o?(0,$.jsx)(S,{className:`animate-spin`,"aria-hidden":!0}):(0,$.jsx)(m,{"aria-hidden":!0}),children:s(`integrationRow.disable`)})]})]})}var Be=[{value:`none`,labelKey:`mcpAddServerModal.authNone`},{value:`oauth`,labelKey:`mcpAddServerModal.authOAuth`},{value:`bearer`,labelKey:`mcpAddServerModal.authBearer`},{value:`api-key`,labelKey:`mcpAddServerModal.authApiKey`}],Ve=[{value:`sse`,labelKey:`mcpAddServerModal.transportSse`},{value:`streamable-http`,labelKey:`mcpAddServerModal.transportStreamableHttp`},{value:`stdio`,labelKey:`mcpAddServerModal.transportStdio`}];function He(e){return Be.map(({value:t,labelKey:n})=>({value:t,label:e(n)}))}function Ue(e){return Ve.map(({value:t,labelKey:n})=>({value:t,label:e(n)}))}function We({open:e,onClose:t,onAdd:n,isPending:r}){let{t:i}=a(`settings`),o=(0,Q.useMemo)(()=>He(i),[i]),s=(0,Q.useMemo)(()=>Ue(i),[i]),[c,l]=(0,Q.useState)(``),[u,d]=(0,Q.useState)(`sse`),[f,p]=(0,Q.useState)(``),[m,h]=(0,Q.useState)(``),[g,_]=(0,Q.useState)(``),[v,y]=(0,Q.useState)(`none`),[b,x]=(0,Q.useState)(``),[S,C]=(0,Q.useState)(`X-API-Key`),[w,T]=(0,Q.useState)(``),E=(0,Q.useCallback)(()=>{l(``),d(`sse`),p(``),h(``),_(``),y(`none`),x(``),C(`X-API-Key`),T(``)},[]),D=(0,Q.useCallback)(()=>{r||(E(),t())},[r,E,t]),O=(0,Q.useCallback)(()=>{let e=c.trim();if(!e)return;let t={name:e,transportType:u};if(u===`stdio`){let e=m.trim();if(!e)return;t.command=e;let n=g.trim();n&&(t.args=n.split(/\s+/))}else{let e=f.trim();if(!e)return;t.url=e,v===`bearer`&&b.trim()?t.headers={Authorization:`Bearer ${b.trim()}`}:v===`api-key`&&S.trim()&&w.trim()?t.headers={[S.trim()]:w.trim()}:v===`oauth`&&(t.autoAuth=!0)}n(t)},[c,u,f,m,g,v,b,S,w,n]),k=u===`stdio`,A=c.trim()&&(k?m.trim():f.trim());return(0,$.jsx)(K.Root,{open:e,onOpenChange:e=>{e||D()},children:(0,$.jsxs)(K.Content,{size:`md`,children:[(0,$.jsxs)(K.Header,{icon:De,children:[(0,$.jsx)(K.Title,{children:i(`mcpAddServerModal.title`)}),(0,$.jsx)(K.Description,{children:i(`mcpAddServerModal.description`)})]}),(0,$.jsx)(K.Body,{children:(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-name`,children:i(`mcpAddServerModal.serverNameLabel`)}),(0,$.jsx)(H,{id:`mcp-name`,type:`text`,value:c,onChange:e=>l(e.target.value),placeholder:i(`mcpAddServerModal.namePlaceholder`),fullWidth:!0,autoFocus:!0})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-transport`,children:i(`mcpAddServerModal.transportLabel`)}),(0,$.jsx)(`select`,{id:`mcp-transport`,value:u,onChange:e=>d(e.target.value),className:`w-full rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-default text-[var(--content-default)] outline-none focus:ring-2 focus:ring-[var(--ring)]`,children:s.map(e=>(0,$.jsx)(`option`,{value:e.value,children:e.label},e.value))})]}),k?(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-command`,children:i(`mcpAddServerModal.commandLabel`)}),(0,$.jsx)(H,{id:`mcp-command`,type:`text`,value:m,onChange:e=>h(e.target.value),placeholder:i(`mcpAddServerModal.commandPlaceholder`),fullWidth:!0})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-args`,children:i(`mcpAddServerModal.argsLabel`)}),(0,$.jsx)(H,{id:`mcp-args`,type:`text`,value:g,onChange:e=>_(e.target.value),placeholder:i(`mcpAddServerModal.argsPlaceholder`),fullWidth:!0})]})]}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-url`,children:i(`mcpAddServerModal.serverUrlLabel`)}),(0,$.jsx)(H,{id:`mcp-url`,type:`url`,value:f,onChange:e=>p(e.target.value),placeholder:i(`mcpAddServerModal.urlPlaceholder`),fullWidth:!0})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-auth`,children:i(`mcpAddServerModal.authenticationLabel`)}),(0,$.jsx)(`select`,{id:`mcp-auth`,value:v,onChange:e=>y(e.target.value),className:`w-full rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-default text-[var(--content-default)] outline-none focus:ring-2 focus:ring-[var(--ring)]`,children:o.map(e=>(0,$.jsx)(`option`,{value:e.value,children:e.label},e.value))})]}),v===`oauth`?(0,$.jsx)(`p`,{className:`rounded-md border border-[var(--border-element)] bg-[var(--surface-base)] px-3 py-2 text-body-small-lighter text-[var(--content-tertiary)]`,children:i(`mcpAddServerModal.oauthHint`)}):null,v===`bearer`?(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-bearer`,children:i(`mcpAddServerModal.bearerTokenLabel`)}),(0,$.jsx)(H,{id:`mcp-bearer`,type:`password`,value:b,onChange:e=>x(e.target.value),placeholder:i(`mcpAddServerModal.bearerPlaceholder`),fullWidth:!0})]}):null,v===`api-key`?(0,$.jsxs)(`div`,{className:`flex gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-apikey-header`,children:i(`mcpAddServerModal.headerNameLabel`)}),(0,$.jsx)(H,{id:`mcp-apikey-header`,type:`text`,value:S,onChange:e=>C(e.target.value),placeholder:i(`mcpAddServerModal.apiKeyHeaderPlaceholder`),fullWidth:!0})]}),(0,$.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-apikey-value`,children:i(`mcpAddServerModal.apiKeyLabel`)}),(0,$.jsx)(H,{id:`mcp-apikey-value`,type:`password`,value:w,onChange:e=>T(e.target.value),placeholder:i(`mcpAddServerModal.apiKeyPlaceholder`),fullWidth:!0})]})]}):null]})]})}),(0,$.jsxs)(K.Footer,{children:[(0,$.jsx)(X,{variant:`ghost`,onClick:D,disabled:r,children:i(`mcpAddServerModal.cancel`)}),(0,$.jsx)(X,{variant:`primary`,onClick:O,disabled:!A||r,children:i(r?`mcpAddServerModal.adding`:`mcpAddServerModal.addServer`)})]})]})})}async function Ge(e){let{data:t,response:n}=await q.get({url:`/v1/assistants/{assistant_id}/internal/mcp/list`,path:{assistant_id:e}});if(!n?.ok)throw Error(`Failed to fetch MCP servers: ${n?.status}`);return t}async function Ke(e){let{data:t,response:n}=await q.get({url:`/v1/assistants/{assistant_id}/internal/mcp/tools-summary`,path:{assistant_id:e}});if(!n?.ok)throw Error(`Failed to fetch MCP tools summary: ${n?.status}`);return t}async function qe(e,t){let{response:n}=await q.post({url:`/v1/assistants/{assistant_id}/internal/mcp/update`,path:{assistant_id:e},body:t});if(!n?.ok)throw Error(`Failed to update MCP server: ${n?.status}`)}async function Je(e,t){let{response:n}=await q.post({url:`/v1/assistants/{assistant_id}/internal/mcp/add`,path:{assistant_id:e},body:t});if(!n?.ok)throw Error(`Failed to add MCP server: ${n?.status}`)}async function Ye(e,t){let{response:n}=await q.post({url:`/v1/assistants/{assistant_id}/internal/mcp/remove`,path:{assistant_id:e},body:{name:t}});if(!n?.ok)throw Error(`Failed to remove MCP server: ${n?.status}`)}async function Xe(e,t){let{data:n,response:r}=await q.post({url:`/v1/assistants/{assistant_id}/internal/mcp/auth/start`,path:{assistant_id:e},body:{serverId:t}});if(!r?.ok)throw Error(`Failed to start MCP auth: ${r?.status}`);return n}async function Ze(e,t){let{data:n,response:r}=await q.get({url:`/v1/assistants/{assistant_id}/internal/mcp/auth/status/${encodeURIComponent(t)}`,path:{assistant_id:e}});if(!r?.ok)throw Error(`Failed to poll MCP auth status: ${r?.status}`);return n}async function Qe(e,t){let{response:n}=await q.post({url:`/v1/assistants/{assistant_id}/internal/mcp/auth/revoke`,path:{assistant_id:e},body:{serverId:t}});if(!n?.ok)throw Error(`Failed to revoke OAuth for ${t}: ${n?.status}`)}async function $e(e){let{response:t}=await q.post({url:`/v1/assistants/{assistant_id}/internal/mcp/reload`,path:{assistant_id:e},body:{}});if(!t?.ok)throw Error(`Failed to reload MCP servers: ${t?.status}`)}function et({variant:e,icon:t,label:n,onClick:r,disabled:i}){return Ce()?(0,$.jsx)(X,{variant:e,iconOnly:t,onClick:r,disabled:i,tooltip:n,"aria-label":n}):(0,$.jsx)(X,{variant:e,leftIcon:t,onClick:r,disabled:i,children:n})}var tt={connected:`positive`,"needs-auth":`negative`},nt=`negative`;function rt(e,t){switch(e){case`connected`:return t(`mcpServerCard.statusConnected`);case`needs-auth`:return t(`mcpServerCard.statusNeedsAuth`);default:return t(`mcpServerCard.statusError`)}}function it({server:e,toolsSummary:t,onRemove:n,onConfigure:r,onAuthenticate:i,onRevokeOAuth:o,isAuthenticating:s,isRevoking:c}){let{t:l}=a(`settings`),[d,f]=(0,Q.useState)(!1),p=tt[e.status]??nt,m=e.hasOAuth,g=m&&e.status!==`needs-auth`,_=e.status===`needs-auth`&&e.transport.type!==`stdio`,y=(0,Q.useCallback)(()=>n(e.id),[n,e.id]),b=(0,Q.useCallback)(()=>r(e.id),[r,e.id]),C=(0,Q.useCallback)(()=>i(e.id),[i,e.id]),T=(0,Q.useCallback)(()=>o(e.id),[o,e.id]),E=(0,Q.useCallback)(()=>f(e=>!e),[]);return(0,$.jsx)(Y.Root,{children:(0,$.jsxs)(Y.Body,{children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1`,children:[(0,$.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1`,children:[(0,$.jsx)(`span`,{className:`truncate text-body-large-default text-[var(--content-default)]`,children:e.id}),(0,$.jsx)(fe,{tone:p,children:rt(e.status,l)}),g?(0,$.jsx)(fe,{tone:`positive`,children:l(`mcpServerCard.authenticatedBadge`)}):null]}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(`span`,{children:e.transport.type}),t?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{"aria-hidden":`true`,children:`·`}),(0,$.jsx)(`span`,{children:l(`mcpServerCard.toolCount`,{count:t.toolCount})}),(0,$.jsx)(`span`,{"aria-hidden":`true`,children:`·`}),(0,$.jsx)(`span`,{children:l(`mcpServerCard.estimatedTokens`,{count:t.estimatedTokens.toLocaleString()})})]}):null]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[_?(0,$.jsx)(et,{variant:`primary`,icon:s?(0,$.jsx)(S,{className:`animate-spin`}):(0,$.jsx)(w,{}),label:l(s?`mcpServerCard.authenticating`:m?`mcpServerCard.reAuth`:`mcpServerCard.authenticate`),onClick:C,disabled:s}):null,m?(0,$.jsx)(X,{variant:`dangerOutline`,iconOnly:c?(0,$.jsx)(S,{className:`animate-spin`}):(0,$.jsx)(u,{}),onClick:T,disabled:c,tooltip:l(`mcpServerCard.revokeOAuthTooltip`),"aria-label":l(`mcpServerCard.revoke`)}):null,(0,$.jsxs)(G.Root,{children:[(0,$.jsx)(G.Trigger,{asChild:!0,children:(0,$.jsx)(X,{variant:`outlined`,iconOnly:(0,$.jsx)(v,{}),"aria-label":l(`mcpServerCard.moreActions`,{serverId:e.id})})}),(0,$.jsxs)(G.Content,{title:l(`mcpServerCard.moreActions`,{serverId:e.id}),showTitle:!0,closeLabel:l(`mcpServerCard.actionsSheetClose`),align:`end`,children:[(0,$.jsx)(G.Item,{icon:x,label:l(`mcpServerCard.configure`),onSelect:b}),(0,$.jsx)(G.Item,{icon:D,label:l(`mcpServerCard.removeServer`),tone:`destructive`,onSelect:y})]})]})]})]}),t&&t.tools.length>0?(0,$.jsxs)(`div`,{className:`mt-3 border-t border-[var(--border-base)] pt-2`,children:[(0,$.jsxs)(`button`,{type:`button`,onClick:E,className:`flex w-full cursor-pointer items-center gap-1 text-body-small-default text-[var(--content-secondary)] hover:text-[var(--content-default)]`,children:[d?(0,$.jsx)(h,{className:`h-3.5 w-3.5`}):(0,$.jsx)(O,{className:`h-3.5 w-3.5`}),l(`mcpServerCard.registeredTools`,{count:t.toolCount})]}),d?(0,$.jsx)(`div`,{className:`mt-2 max-h-60 overflow-y-auto`,children:t.tools.map(e=>(0,$.jsx)(he,{title:e.name,subtitle:e.description||void 0,trailing:(0,$.jsx)(`span`,{className:`whitespace-nowrap text-body-small-default text-[var(--content-secondary)]`,children:l(`mcpServerCard.toolTokensAbbrev`,{count:e.estimatedTokens.toLocaleString()})})},e.name))}):null]}):null]})})}var at=[`none`,`bearer`,`api-key`];function ot(e,t){switch(e){case`none`:return t(`mcpServerDetailModal.authNone`);case`bearer`:return t(`mcpServerDetailModal.authBearerToken`);case`api-key`:return t(`mcpServerDetailModal.authApiKey`)}}function st({server:e,toolsSummary:t,onClose:n,onSave:r,isPending:i}){let{t:o}=a(`settings`),[s,c]=(0,Q.useState)(`none`),[l,u]=(0,Q.useState)(``),[d,f]=(0,Q.useState)(`X-API-Key`),[p,m]=(0,Q.useState)(``);(0,Q.useEffect)(()=>{e&&(c(e.authType),u(``),f(e.authHeaderName??`X-API-Key`),m(``))},[e]);let h=(0,Q.useCallback)(()=>{if(!e)return;let t=s!==e.authType,n=s===`bearer`&&l.trim()!==``,i=s===`api-key`&&d.trim()!==``&&p.trim()!==``,a=t||n||i,o;o=a?s===`none`?null:s===`bearer`&&l.trim()?{Authorization:`Bearer ${l.trim()}`}:s===`api-key`&&d.trim()&&p.trim()?{[d.trim()]:p.trim()}:void 0:void 0,r(e.id,{name:e.id,...o===void 0?{}:{headers:o}})},[e,s,l,d,p,r]),g=(0,Q.useCallback)(()=>{i||n()},[i,n]);return e?(0,$.jsx)(K.Root,{open:!!e,onOpenChange:e=>{e||g()},children:(0,$.jsxs)(K.Content,{size:`lg`,children:[(0,$.jsxs)(K.Header,{icon:De,children:[(0,$.jsx)(K.Title,{children:e.id}),(0,$.jsx)(K.Description,{children:o(`mcpServerDetailModal.description`,{transport:e.transport.type,status:e.status})})]}),(0,$.jsx)(K.Body,{children:(0,$.jsxs)(`div`,{className:`space-y-5`,children:[e.transport.type===`stdio`?null:(0,$.jsxs)($.Fragment,{children:[e.hasOAuth?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md border border-[var(--border-element)] bg-[var(--surface-base)] px-3 py-2`,children:[(0,$.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:o(`mcpServerDetailModal.authentication`)}),(0,$.jsx)(`span`,{className:`rounded-full bg-[var(--surface-lift)] px-2 py-0.5 text-label-small-default text-[var(--content-default)]`,children:o(`mcpServerDetailModal.oauthBadge`)}),(0,$.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:o(`mcpServerDetailModal.oauthManagedHint`)})]}):null,e.hasOAuth?null:(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-auth`,children:o(`mcpServerDetailModal.authentication`)}),(0,$.jsx)(`select`,{id:`mcp-detail-auth`,value:s,onChange:e=>c(e.target.value),className:`w-full rounded-md border border-[var(--border-element)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-medium-default text-[var(--content-default)] outline-none focus:ring-2 focus:ring-[var(--ring)]`,children:at.map(e=>(0,$.jsx)(`option`,{value:e,children:ot(e,o)},e))})]}),s===`bearer`&&!e.hasOAuth?(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-bearer`,children:o(`mcpServerDetailModal.bearerToken`)}),(0,$.jsx)(H,{id:`mcp-detail-bearer`,type:`password`,value:l,onChange:e=>u(e.target.value),placeholder:e.hasStaticAuth&&e.authType===`bearer`?o(`mcpServerDetailModal.bearerTokenPlaceholderKeep`):o(`mcpServerDetailModal.bearerTokenPlaceholder`),fullWidth:!0})]}):null,s===`api-key`&&!e.hasOAuth?(0,$.jsxs)(`div`,{className:`flex gap-3`,children:[(0,$.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-apikey-header`,children:o(`mcpServerDetailModal.headerName`)}),(0,$.jsx)(H,{id:`mcp-detail-apikey-header`,type:`text`,value:d,onChange:e=>f(e.target.value),placeholder:o(`mcpServerDetailModal.headerNamePlaceholder`),fullWidth:!0})]}),(0,$.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-apikey-value`,children:o(`mcpServerDetailModal.apiKey`)}),(0,$.jsx)(H,{id:`mcp-detail-apikey-value`,type:`password`,value:p,onChange:e=>m(e.target.value),placeholder:e.hasStaticAuth&&e.authType===`api-key`?o(`mcpServerDetailModal.apiKeyPlaceholderKeep`):o(`mcpServerDetailModal.apiKeyPlaceholder`),fullWidth:!0})]})]}):null]}),t&&t.tools.length>0?(0,$.jsxs)(`div`,{className:`space-y-2`,children:[(0,$.jsx)(`h3`,{className:`text-body-medium-default text-[var(--content-default)]`,children:o(`mcpServerDetailModal.registeredToolsHeading`,{count:t.toolCount})}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:o(`mcpServerDetailModal.tokenOverhead`,{count:t.estimatedTokens.toLocaleString()})}),(0,$.jsx)(`div`,{className:`max-h-64 overflow-y-auto rounded-lg border border-[var(--border-base)]`,children:(0,$.jsxs)(`table`,{className:`w-full text-body-small-default`,children:[(0,$.jsx)(`thead`,{children:(0,$.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] bg-[var(--surface-base)]`,children:[(0,$.jsx)(`th`,{className:`px-3 py-2 text-left font-medium text-[var(--content-secondary)]`,children:o(`mcpServerDetailModal.tableTool`)}),(0,$.jsx)(`th`,{className:`px-3 py-2 text-left font-medium text-[var(--content-secondary)]`,children:o(`mcpServerDetailModal.tableDescription`)}),(0,$.jsx)(`th`,{className:`px-3 py-2 text-right font-medium text-[var(--content-secondary)]`,children:o(`mcpServerDetailModal.tableTokens`)})]})}),(0,$.jsx)(`tbody`,{children:t.tools.map(e=>(0,$.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] last:border-b-0`,children:[(0,$.jsx)(`td`,{className:`px-3 py-2 font-medium text-[var(--content-default)]`,children:e.name}),(0,$.jsx)(`td`,{className:`max-w-xs truncate px-3 py-2 text-[var(--content-tertiary)]`,children:e.description||o(`mcpServerDetailModal.emptyDescription`)}),(0,$.jsx)(`td`,{className:`px-3 py-2 text-right text-[var(--content-tertiary)]`,children:o(`mcpServerDetailModal.toolEstimatedTokens`,{count:e.estimatedTokens.toLocaleString()})})]},e.name))})]})})]}):null]})}),(0,$.jsxs)(K.Footer,{children:[(0,$.jsx)(X,{variant:`ghost`,onClick:g,disabled:i,children:o(`mcpServerDetailModal.cancel`)}),(0,$.jsx)(X,{variant:`primary`,onClick:h,disabled:i,children:o(i?`mcpServerDetailModal.saving`:`mcpServerDetailModal.save`)})]})]})}):null}var ct=`mcp-servers`,lt=`mcp-tools-summary`;function ut(){let{t:e}=a(`settings`),t=se(),n=i(),o=s(),c=oe.use.mcpAddServer(),l=oe.use.hasHydrated(),[u,d]=(0,Q.useState)(!1),[f,p]=(0,Q.useState)(null),[m,h]=(0,Q.useState)(null),[g,_]=(0,Q.useState)(!1),[v,b]=(0,Q.useState)(!1),[x,C]=(0,Q.useState)(!1),[w,E]=(0,Q.useState)(!1),[D,O]=(0,Q.useState)(null),[k,A]=(0,Q.useState)(null),{data:j,isLoading:M,isError:N}=r({queryKey:[ct,t],queryFn:()=>Ge(t)}),{data:P}=r({queryKey:[lt,t],queryFn:()=>Ke(t)}),I=(0,Q.useCallback)(()=>{n.invalidateQueries({queryKey:[ct,t]}),n.invalidateQueries({queryKey:[lt,t]})},[n,t]),ee=(0,Q.useMemo)(()=>{let e=new Map;if(P)for(let t of P.servers)e.set(t.serverId,t);return e},[P]),te=(0,Q.useMemo)(()=>!f||!j?null:j.servers.find(e=>e.id===f)??null,[f,j]),L=(0,Q.useCallback)(async()=>{if(m){b(!0);try{await Ye(t,m),I(),z.success(e(`mcpPage.toastRemoved`,{serverId:m})),h(null)}catch{z.error(e(`mcpPage.toastRemoveFailed`,{serverId:m}))}finally{b(!1)}}},[m,t,I,e]),ne=(0,Q.useCallback)(async n=>{O(n);let r;try{r=await Xe(t,n)}catch{z.error(e(`mcpPage.toastAuthStartFailed`,{serverId:n})),O(null);return}try{if(r.already_authenticated){z.success(e(`mcpPage.toastAlreadyAuthenticated`,{serverId:n})),I();return}window.open(r.auth_url,`_blank`,`noopener,noreferrer`);for(let r=0;r<60;r++){await new Promise(e=>setTimeout(e,3e3));let r=await Ze(t,n);if(r.status===`complete`){z.success(e(`mcpPage.toastAuthenticatedSuccess`,{serverId:n})),I();return}if(r.status===`error`){z.error(r.error??e(`mcpPage.toastAuthFailed`,{serverId:n}));return}}z.error(e(`mcpPage.toastAuthTimedOut`,{serverId:n}))}catch{z.error(e(`mcpPage.toastAuthPollingFailed`,{serverId:n}))}finally{O(null),I()}},[t,I,e]),re=(0,Q.useCallback)(async n=>{A(n);try{await Qe(t,n),I(),z.success(e(`mcpPage.toastOAuthRevoked`,{serverId:n}))}catch{z.error(e(`mcpPage.toastOAuthRevokeFailed`,{serverId:n}))}finally{A(null)}},[t,I,e]),B=(0,Q.useCallback)(async n=>{let r=n.autoAuth?window.open(`about:blank`,`_blank`,`noopener`):null;_(!0);try{await Je(t,n),I(),z.success(e(`mcpPage.toastAdded`,{name:n.name})),d(!1)}catch{z.error(e(`mcpPage.toastAddFailed`,{name:n.name})),r?.close(),_(!1);return}if(_(!1),n.autoAuth){O(n.name);try{let i=await Xe(t,n.name);if(i.already_authenticated){r?.close(),z.success(e(`mcpPage.toastAlreadyAuthenticated`,{serverId:n.name})),I();return}r?r.location.href=i.auth_url:window.open(i.auth_url,`_blank`,`noopener,noreferrer`);for(let r=0;r<60;r++){await new Promise(e=>setTimeout(e,3e3));let r=await Ze(t,n.name);if(r.status===`complete`){z.success(e(`mcpPage.toastAuthenticatedSuccess`,{serverId:n.name})),I();return}if(r.status===`error`){z.error(r.error??e(`mcpPage.toastAuthFailed`,{serverId:n.name}));return}}z.error(e(`mcpPage.toastAuthTimedOut`,{serverId:n.name}))}catch{r?.close(),z.error(e(`mcpPage.toastAuthStartFailed`,{serverId:n.name}))}finally{O(null),I()}}},[t,I,e]),V=(0,Q.useCallback)(async(n,r)=>{C(!0);try{await qe(t,r),I(),z.success(e(`mcpPage.toastUpdated`,{serverId:n})),p(null)}catch{z.error(e(`mcpPage.toastUpdateFailed`,{serverId:n}))}finally{C(!1)}},[t,I,e]),H=(0,Q.useCallback)(async()=>{E(!0);try{await $e(t),I(),z.success(e(`mcpPage.toastReloadSuccess`))}catch{z.error(e(`mcpPage.toastReloadFailed`))}finally{E(!1)}},[t,I,e]),ie=(0,Q.useCallback)(()=>{c?d(!0):F(o,{prompt:e(`mcpPage.setupPrompt`)})},[c,o,e]),U=j?.servers??[];return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`flow-root`,children:[(0,$.jsxs)(`div`,{className:`float-right ml-4 flex shrink-0 items-center gap-2`,children:[(0,$.jsx)(et,{variant:`outlined`,icon:(0,$.jsx)(T,{className:w?`animate-spin`:``}),label:e(`mcpPage.reloadButton`),onClick:H,disabled:w}),c?(0,$.jsx)(X,{variant:`primary`,leftIcon:(0,$.jsx)(y,{}),onClick:()=>d(!0),children:e(`mcpPage.addServerButton`)}):null]}),(0,$.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`mcpPage.title`)}),(0,$.jsx)(`p`,{className:`mt-0.5 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`mcpPage.subtitle`)})]}),P?(0,$.jsxs)(`div`,{className:`flex gap-4 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(`span`,{children:e(`mcpPage.totalTools`,{count:P.totalToolCount})}),(0,$.jsx)(`span`,{children:e(`mcpPage.totalTokens`,{count:P.totalEstimatedTokens.toLocaleString()})})]}):null,M?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,$.jsx)(S,{className:`h-4 w-4 animate-spin`}),(0,$.jsx)(`span`,{children:e(`mcpPage.loading`)})]}):N?(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`mcpPage.loadError`)}):U.length===0?(0,$.jsxs)(`button`,{type:`button`,onClick:ie,disabled:!l,className:`flex w-full flex-col items-center gap-2 rounded-lg border border-dashed border-[var(--border-element)] px-4 py-12 text-center transition-colors hover:border-[var(--border-active)] hover:bg-[var(--surface-hover)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] disabled:pointer-events-none`,children:[(0,$.jsx)(De,{className:`h-6 w-6 text-[var(--content-disabled)]`}),(0,$.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`mcpPage.emptyTitle`)}),(0,$.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:e(c?`mcpPage.emptyAddSubtitle`:`mcpPage.emptyChatSubtitle`)})]}):(0,$.jsx)(`div`,{className:`space-y-2`,children:U.map(e=>(0,$.jsx)(it,{server:e,toolsSummary:ee.get(e.id),onRemove:h,onConfigure:p,onAuthenticate:ne,onRevokeOAuth:re,isAuthenticating:D===e.id,isRevoking:k===e.id},e.id))}),c?(0,$.jsx)(We,{open:u,onClose:()=>d(!1),onAdd:B,isPending:g}):null,(0,$.jsx)(st,{server:te,toolsSummary:f?ee.get(f):void 0,onClose:()=>p(null),onSave:V,isPending:x}),(0,$.jsx)(R,{open:!!m,title:e(`mcpPage.removeDialogTitle`),message:m?e(`mcpPage.removeDialogMessage`,{serverId:m}):``,confirmLabel:e(`mcpPage.removeDialogConfirm`),destructive:!0,isPending:v,onConfirm:L,onCancel:()=>h(null)})]})}function dt(){return(0,$.jsx)(ut,{})}var ft=`vellum:integrations:bannerDismissed`;function pt(e,t){return{denied:e(`integrationsPage.oauthErrorDenied`),state_invalid:e(`integrationsPage.oauthErrorStateInvalid`),state_expired:e(`integrationsPage.oauthErrorStateExpired`),exchange_failed:e(`integrationsPage.oauthErrorExchangeFailed`),identity_failed:e(`integrationsPage.oauthErrorIdentityFailed`)}[t]}function mt(e,t,n){if(t.trim())return e(`integrationsPage.emptySearchTitle`);switch(n){case`enabled`:return e(`integrationsPage.emptyEnabledTitle`);case`not-enabled`:return e(`integrationsPage.emptyAllEnabledTitle`);default:return e(`integrationsPage.emptyDefaultTitle`)}}function ht(e,t,n){if(t.trim())return e(`integrationsPage.emptySearchSubtitle`,{query:t.trim()});switch(n){case`enabled`:return e(`integrationsPage.emptyEnabledSubtitle`);case`not-enabled`:return e(`integrationsPage.emptyNotEnabledSubtitle`);default:return e(`integrationsPage.emptyDefaultSubtitle`)}}var gt=[{value:`all`,labelKey:`integrationsPage.filterAll`},{value:`enabled`,labelKey:`integrationsPage.filterEnabled`},{value:`not-enabled`,labelKey:`integrationsPage.filterNotEnabled`}];function _t(e,t){return e?.find(e=>e.provider===t)??null}function vt(e){return e===`mcp`?`mcp`:`oauth`}function yt(){let{t:e}=a(`settings`),[n]=c(),i=s(),o=de(),[l,u]=(0,Q.useState)(null),[d,f]=(0,Q.useState)(!0),[m,h]=(0,Q.useState)(``),[_,v]=(0,Q.useState)(`all`),[y,b]=(0,Q.useState)(!0),[x,C]=(0,Q.useState)(null);(0,Q.useEffect)(()=>{b(be(ft,`false`)===`true`)},[]);let w=()=>{b(!0),ve(ft,`true`)};(0,Q.useEffect)(()=>{let e=!0;return(async()=>{try{let t=await L();e&&t.ok&&u(t.data)}catch(e){ye(e,{context:`integrations.getAssistant`})}finally{e&&f(!1)}})(),()=>{e=!1}},[]);let{platformAssistantId:T,isLoading:E}=Ee(l?.id,o===`full`),{data:D,isLoading:O,isError:A}=r({...ue({path:{assistant_id:l?.id??``}}),select:e=>e.providers,enabled:!!l}),{data:j,isLoading:M}=r({...N({path:{assistant_id:T??``}}),enabled:!!T&&o===`full`});(0,Q.useEffect)(()=>{let t=n.get(`oauth_status`);if(!t)return;let r=n.get(`oauth_provider`),a=r?r.charAt(0).toUpperCase()+r.slice(1):null;if(t===`connected`)z.success(a?e(`integrationsPage.accountConnectedToast`,{providerLabel:a}):e(`integrationsPage.accountConnectedToastGeneric`));else if(t===`error`){let t=n.get(`oauth_code`)??`unknown`;z.error(pt(e,t)??(a?e(`integrationsPage.connectFailedToast`,{providerLabel:a}):e(`integrationsPage.connectFailedToastGeneric`)))}i(Te.settings.integrations,{replace:!0})},[n,i,e]);let P=(0,Q.useMemo)(()=>D?.filter(e=>e.supports_managed_mode)??[],[D]),F=(0,Q.useMemo)(()=>{let e=m.trim().toLowerCase(),t=e=>!!_t(j,e)?.connected,n=P.filter(n=>{if(Ae(n.provider_key))return t(n.provider_key);if(!e)return!0;let r=(n.display_name??n.provider_key).toLowerCase(),i=(n.description??``).toLowerCase();return r.includes(e)||i.includes(e)});return _!==`all`&&(n=n.filter(e=>{let n=t(e.provider_key);return _===`enabled`?n:!n})),[...n].sort((e,n)=>{let r=t(e.provider_key);if(r!==t(n.provider_key))return r?-1:1;let i=(e.display_name??e.provider_key).toLowerCase(),a=(n.display_name??n.provider_key).toLowerCase();return i.localeCompare(a)})},[P,j,m,_]),I=d||O||M||E,ee=mt(e,m,_),te=ht(e,m,_),R=(0,Q.useMemo)(()=>x?P.find(e=>e.provider_key===x)??null:null,[P,x]),re=gt.map(({value:t,labelKey:n})=>({value:t,label:e(n)}));return(0,$.jsxs)(`div`,{className:`space-y-4`,children:[!y&&(0,$.jsx)(k,{tone:`info`,icon:(0,$.jsx)(p,{className:`h-3.5 w-3.5`}),onDismiss:w,children:(0,$.jsx)(t,{ns:`settings`,i18nKey:`integrationsPage.tipBanner`,components:{tip:(0,$.jsx)(`span`,{className:`text-body-medium-default`})}})}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(H,{type:`text`,value:m,onChange:e=>h(e.target.value),placeholder:e(`integrationsPage.searchPlaceholder`),"aria-label":e(`integrationsPage.searchAriaLabel`),leftIcon:(0,$.jsx)(g,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,wrapperClassName:`flex-1`}),(0,$.jsx)(ne,{options:re,value:_,onChange:v,"aria-label":e(`integrationsPage.filterAriaLabel`),menuAlign:`end`,className:`w-36 shrink-0`})]}),(0,$.jsx)(`div`,{children:I?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 py-6 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,$.jsx)(S,{className:`h-4 w-4 animate-spin`}),(0,$.jsx)(`span`,{children:e(`integrationsPage.loading`)})]}):A?(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`integrationsPage.loadFailed`)}):l?F.length===0?(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-2 rounded-lg border border-dashed border-[var(--border-element)] px-4 py-12 text-center`,children:[(0,$.jsx)(g,{className:`h-6 w-6 text-[var(--content-disabled)]`}),(0,$.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:ee}),(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:te})]}):(0,$.jsx)(`div`,{className:`space-y-2`,children:F.map(e=>(0,$.jsx)(Re,{platformAssistantId:T??l.id,providerKey:e.provider_key,displayName:e.display_name??e.provider_key,description:e.description,logoUrl:e.logo_url,connection:_t(j,e.provider_key),platformGate:o,onConfigure:()=>C(e.provider_key)},e.provider_key))}):(0,$.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`integrationsPage.noAssistant`)})}),R&&l&&(0,$.jsx)(Le,{assistantId:l.id,platformAssistantId:T??l.id,providerKey:R.provider_key,displayName:R.display_name??R.provider_key,description:R.description,logoUrl:R.logo_url,platformGate:o,onClose:()=>C(null)})]})}function bt(){let{t:e}=a(`settings`),[t,n]=c(),r=vt(t.get(`tab`));return(0,$.jsx)(`div`,{className:`space-y-6`,children:(0,$.jsxs)(J.Root,{value:r,onValueChange:e=>{let r=vt(e),i=new URLSearchParams(t);r===`mcp`?i.set(`tab`,`mcp`):i.delete(`tab`),n(i,{replace:!0})},children:[(0,$.jsxs)(J.List,{children:[(0,$.jsx)(J.Trigger,{value:`oauth`,children:e(`integrationsPage.tabOAuth`)}),(0,$.jsx)(J.Trigger,{value:`mcp`,children:e(`integrationsPage.tabMcp`)})]}),(0,$.jsx)(J.Panel,{value:`oauth`,className:`pt-4`,children:(0,$.jsx)(Q.Suspense,{children:(0,$.jsx)(yt,{})})}),(0,$.jsx)(J.Panel,{value:`mcp`,className:`pt-4`,children:(0,$.jsx)(dt,{})})]})})}export{bt as IntegrationsPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-CV8wawxx.js";import{b as n,d as r,i,n as a,t as o}from"./react-DPM_L_aA.js";import{Br as s}from"./icons-J6Mg9wGk.js";import{Iv as c,Yi as l,tb as u,ws as d,wv as f,zv as p}from"./index-jpjzZb6b.js";import{t as m}from"./page-shell-CHCSTsj9.js";var h=e(n(),1),g=o(),_={schedules:`sections.schedules`,superpowers:`sections.superpowers`,plugins:`sections.superpowers`,skills:`sections.superpowers`,memory:`sections.memory`,library:`sections.library`,workspace:`sections.workspace`,contacts:`sections.contacts`,channels:`sections.channels`};function v(){let{t:e}=t(`intelligence`),n=f.use.name(),{pathname:o}=r(),v=d(),y=l.use.setTopBarCenter(),b=c(o),x=b?e(_[b.key]):null;return(0,h.useEffect)(()=>(y(v&&x?(0,g.jsx)(u,{variant:`body-medium-default`,className:`truncate text-[var(--content-secondary)]`,children:x}):null),()=>{y(null)}),[v,x,y]),b?(0,g.jsxs)(m,{children:[(0,g.jsxs)(`div`,{className:`mb-4 flex shrink-0 items-center gap-1.5`,children:[(0,g.jsx)(a,{to:p.identity,className:`-ml-2 flex h-8 w-8 shrink-0 cursor-pointer items-center justify-center rounded-md text-[var(--content-secondary)] transition-colors outline-none hover:bg-[var(--surface-hover)] hover:text-[var(--content-default)] focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,"aria-label":e(`intelligenceLayout.backToAriaLabel`,{name:n||e(`identityOverview.defaultAssistantName`)}),title:e(`intelligenceLayout.backToTitle`,{name:n||e(`identityOverview.defaultAssistantName`)}),children:(0,g.jsx)(s,{className:`h-5 w-5`,"aria-hidden":!0})}),(0,g.jsx)(`h1`,{className:`text-title-large text-[var(--content-default)] max-md:hidden`,children:x})]}),(0,g.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-y-auto`,children:(0,g.jsx)(i,{})})]}):(0,g.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:(0,g.jsx)(i,{})})}export{v as IntelligenceLayout};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{b as t,f as n}from"./react-DPM_L_aA.js";import{zv as r}from"./index-jpjzZb6b.js";var i=e(t(),1);function a(){let e=n();return(0,i.useEffect)(()=>{e(r.settings.keyboardShortcuts,{replace:!0})},[e]),null}export{a as KeyboardShortcutsRedirectPage};
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import{Rp as e,oh as t}from"./index-jpjzZb6b.js";var n=2;function r({processing:e,sawProcessing:t,hasReply:r,stableReads:i}){return e===void 0?r&&i>=n:!e&&(r||t)}var i=e=>Math.max(0,Math.min(100,Math.round(e)));function a(e,n,r){let a=t=>i(e[t]??50),o=a(t.companionCoworker),s=a(t.executeCollaborate),c=a(t.playfulSerious),l=a(t.politeUnfiltered),u=n?.trim()||`The user`,d=r?.trim(),f=d?`Your name is ${d}. Write exactly \`- **Name:** ${d}\` in IDENTITY.md — do not rename yourself or invent a different name, even if the file currently shows a placeholder or a different name. This changes your personality, not who you are.`:"Keep your existing name exactly as it is — this changes your personality, not who you are. Do not rename yourself, and if your name is already set, carry it through verbatim (don't treat it as a placeholder to fill). Whatever the name ends up being, keep it on IDENTITY.md's `- **Name:** …` line.";return`<system-message>
|
|
2
|
+
${u} wants to customize your personality.
|
|
3
|
+
This is what they want you to be:
|
|
4
|
+
Companion (0-100): ${100-o}
|
|
5
|
+
Coworker (0-100): ${o}
|
|
6
|
+
Voice Style (0 = Gen Z, 100 = Boomer): ${a(t.genzBoomer)}
|
|
7
|
+
Execute Independently (0 - 100): ${100-s}
|
|
8
|
+
Collaborative (0 - 100): ${s}
|
|
9
|
+
Playfulness (0 - 100): ${100-c}
|
|
10
|
+
Seriousness (0 - 100): ${c}
|
|
11
|
+
Politeness (0 - 100): ${100-l}
|
|
12
|
+
Unfiltered Rawness/Crassness (0 - 100): ${l}
|
|
13
|
+
|
|
14
|
+
Rewrite your own identity files (IDENTITY.md and SOUL.md) to reflect your new personality — first person, in a voice and style that matches it. Do not touch users/guardian.md or anything else under users/: that is your user's profile (their name, work, preferences), not your identity.
|
|
15
|
+
|
|
16
|
+
Overwrite each file completely with file_write: write the whole file fresh in one pass. This is a from-scratch rewrite, not an edit — do not append to what's already there, do not patch individual lines, and leave none of the current default wording behind. Fill in every IDENTITY.md placeholder (the _(not yet chosen)_ / _(not yet established)_ fields).
|
|
17
|
+
|
|
18
|
+
IDENTITY.md must keep a line reading exactly \`- **Personality:** <one short sentence>\` — a single sentence summarizing this new personality in your own voice. UI surfaces parse that exact line format to display your personality, so do not omit or reformat it.
|
|
19
|
+
|
|
20
|
+
${f}
|
|
21
|
+
|
|
22
|
+
Each rewritten file must still be complete: SOUL.md keeps everything you operate by — how you use memory, your boundaries, your compliance stance — re-expressed in your new voice rather than dropped. When you finish, both files should read top-to-bottom as this new personality, with nothing left in the generic default voice.
|
|
23
|
+
</system-message>`}function o({conversationId:t,content:n,transport:r}){let i={conversationId:t,content:n,sourceChannel:`vellum`,interface:r,hidden:!0,scripted:!0,clientMessageId:crypto.randomUUID()};return r===`web`&&(i.clientOs=e()),i}function s(e){for(let t=e.length-1;t>=0;t--){let n=e[t];if(!(!n||n.role!==`assistant`))return(n.contentBlocks??[]).filter(e=>e.type===`text`).map(e=>e.text).join(`
|
|
24
|
+
`).trim()}return``}export{r as i,o as n,a as r,s as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-CV8wawxx.js";import{b as n,d as r,f as i,m as a,t as o}from"./react-DPM_L_aA.js";import{rn as s}from"./icons-J6Mg9wGk.js";import{Cs as c,Is as l,Q as u,Zn as d,_r as f,gh as p,gr as m,u as h,ws as g,zv as _}from"./index-jpjzZb6b.js";import{t as v}from"./deploy-dialogs-BPespFRy.js";import{t as y}from"./use-edge-swipe-back-HAgGP4y-.js";import{t as b}from"./app-types-R2BjVd4u.js";var x=e(n(),1),S=o();function C({enabled:e}){return e?(0,S.jsx)(`div`,{"aria-hidden":!0,className:`absolute inset-y-0 left-0 z-10`,style:{width:20}}):null}function w(){let{t:e}=t(`library`),{appId:n}=a(),o=u(),w=i(),{pathname:T}=r(),E=g(),D=m.use.isDeploying(),O=(0,x.useRef)(null),[k,A]=(0,x.useState)(null),[j,M]=(0,x.useState)(null),[N,P]=(0,x.useState)(!1),F=(0,x.useRef)(null);(0,x.useEffect)(()=>{if(n)return F.current=n,A(null),M(null),p({path:{assistant_id:o,id:n},throwOnError:!0}).then(({data:e})=>{F.current===n&&(l(o,e.appId,e.html),A({appId:e.appId,dirName:e.dirName,name:e.name,html:e.html,origin:e.origin}))}).catch(e=>{F.current===n&&M(e instanceof Error?e.message:`Failed to open app`)}),()=>{F.current=null}},[o,n]);let I=(0,x.useCallback)(()=>{w(_.library.root)},[w]);y({containerRef:O,onBack:I,enabled:E,navKey:T,prefetchHref:_.library.root});let L=h(),R=(0,x.useCallback)(()=>{k&&L(k)},[k,L]),z=(0,x.useCallback)(async()=>{if(!(!k||N)){P(!0);try{await f(o,{id:k.appId,name:k.name},{exported:e(`libraryAppCard.exported`),failed:e(`libraryAppCard.shareFailed`)})}finally{P(!1)}}},[o,k,N,e]),B=(0,x.useCallback)(()=>{k&&m.getState().deployApp(o,k.appId,k.name,k.html)},[o,k]),V=(0,x.useCallback)(e=>{c(w,{prompt:e})},[w]);return n?j?(0,S.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-4`,children:[(0,S.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:j}),(0,S.jsx)(`button`,{type:`button`,onClick:I,className:`text-body-medium-default text-[var(--primary-base)] underline`,children:e(`libraryDetailPage.backToLibrary`)})]}):k?(0,S.jsxs)(S.Fragment,{children:[(0,S.jsxs)(`div`,{ref:O,className:`relative flex min-h-0 flex-1 flex-col`,children:[(0,S.jsx)(C,{enabled:E}),(0,S.jsx)(d,{appId:k.appId,appName:k.name,html:k.html,assistantId:o,onClose:I,...b(k.origin)?{}:{onEdit:R,onShare:z,isSharing:N,onDeploy:B,isDeploying:D},enableFullscreen:!0})]}),(0,S.jsx)(v,{assistantId:o,onStartConversation:V})]}):(0,S.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,S.jsx)(s,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})}):null}export{w as LibraryDetailPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Zn as t,er as n,j as r}from"./vendor-CV8wawxx.js";import{b as i,f as a,t as o}from"./react-DPM_L_aA.js";import{$n as s,Rn as c,Tn as l,Y as u,Zn as d,cn as f,dt as p,fi as m,ft as h,tt as g,un as _,x as v}from"./icons-J6Mg9wGk.js";import{$n as y,Cs as b,Fs as x,Iy as S,Ju as C,Kr as w,Ky as T,Oy as E,Q as D,Qn as O,Yu as k,_h as A,gd as j,gr as M,ha as N,i as P,nb as F,ni as I,qt as L,sa as R,zv as z}from"./index-jpjzZb6b.js";import{t as B}from"./deploy-dialogs-BPespFRy.js";import{n as V,r as H,t as U}from"./use-app-delete-dvAb-5JI.js";import{t as W}from"./app-types-R2BjVd4u.js";var G=e(i(),1),K=o();function q(e){return e===1?`1 word`:`${e} words`}function J({document:e,onOpen:t}){return(0,K.jsxs)(`div`,{className:`group relative flex flex-col gap-2`,children:[(0,K.jsxs)(`button`,{type:`button`,onClick:()=>t(e.surfaceId),className:R(`relative flex w-full cursor-pointer flex-col items-center justify-center gap-2 overflow-hidden rounded-xl border border-[var(--border-base)] bg-[var(--surface-base)]`,`aspect-[16/10]`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`),children:[(0,K.jsx)(c,{size:34,className:`text-[var(--content-tertiary)]`}),(0,K.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:q(e.wordCount)})]}),(0,K.jsxs)(`button`,{type:`button`,onClick:()=>t(e.surfaceId),className:`flex cursor-pointer flex-col gap-0.5 px-0.5 text-left outline-none`,children:[(0,K.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:e.title}),(0,K.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:P(new Date(e.updatedAt))})]})]})}function Y({onNewConversation:e}){let{t}=r(`library`);return(0,K.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4 py-24`,children:[(0,K.jsx)(`div`,{className:`flex h-16 w-16 items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,K.jsx)(_,{size:32,className:`text-[var(--content-tertiary)]`})}),(0,K.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:t(`libraryEmptyState.heading`)}),(0,K.jsx)(`p`,{className:`max-w-md text-center text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:t(`libraryEmptyState.body`)}),e?(0,K.jsx)(F,{variant:`primary`,size:`regular`,onClick:e,children:t(`libraryEmptyState.newConversation`)}):null]})}function X({app:e,assistantId:t,isPinned:n,onOpen:i,onPin:a,onDelete:o,onDeploy:s,justImported:c,onAnimationEnd:l}){let{t:u}=r(`library`),d=W(e.origin),f=d?void 0:o,m=d?void 0:s,g=(0,G.useCallback)(()=>x(t,e.id),[t,e.id]),_=V(t,e,{exported:u(`libraryAppCard.exported`),failed:u(`libraryAppCard.shareFailed`)}),[b,S]=(0,G.useState)(!1),[C,w]=(0,G.useState)(!1),T=(0,G.useCallback)(()=>w(!0),[]),{deployedUrl:E}=y(t,e.id,{enabled:C&&m!=null}),D=(0,G.useCallback)(()=>{E!=null&&O(E)},[E]);return(0,K.jsx)(I,{trailingActions:[{id:`pin`,label:u(n?`libraryAppCard.unpin`:`libraryAppCard.pin`),icon:n?h:p,onSelect:()=>a(e)},...f?[{id:`delete`,label:u(`libraryAppCard.delete`),icon:v,variant:`destructive`,onSelect:()=>f(e)}]:[]],className:`rounded-xl`,children:(0,K.jsxs)(`div`,{"data-reveal-row":``,className:R(`relative flex flex-col gap-2`,c&&`animate-[card-entrance_400ms_ease-out]`),onAnimationEnd:c?l:void 0,onPointerEnter:T,children:[(0,K.jsx)(`button`,{type:`button`,onClick:()=>i(e.id),className:R(`relative w-full cursor-pointer overflow-hidden rounded-xl`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`),children:(0,K.jsx)(L,{name:e.name,icon:e.icon,loadHtml:g})}),(0,K.jsx)(`div`,{"data-reveal":``,className:`absolute right-2 top-2 z-20`,children:(0,K.jsx)(Z,{appName:e.name,isPinned:n,open:b,onOpenChange:e=>{e&&T(),S(e)},onPin:()=>a(e),onDelete:f?()=>f(e):void 0,onShare:d?void 0:_,onDeploy:m,deployedUrl:E,onCopyDeployedLink:D})}),(0,K.jsxs)(`button`,{type:`button`,onClick:()=>i(e.id),className:`flex cursor-pointer flex-col gap-0.5 px-0.5 text-left outline-none`,children:[(0,K.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:e.name}),(0,K.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:P(new Date(e.createdAt))})]})]})})}function Z({appName:e,isPinned:t,open:n,onOpenChange:i,onPin:a,onDelete:o,onShare:s,onDeploy:c,deployedUrl:u,onCopyDeployedLink:_}){let{t:y}=r(`library`),b=u!=null&&u!==``&&_!=null,x=y(`libraryAppCard.actionsTitle`,{appName:e});return(0,K.jsxs)(E.Root,{open:n,onOpenChange:i,children:[(0,K.jsx)(E.Trigger,{asChild:!0,children:(0,K.jsx)(F,{variant:`primary`,size:`compact`,iconOnly:(0,K.jsx)(d,{}),"aria-label":x,onClick:e=>e.stopPropagation()})}),(0,K.jsxs)(E.Content,{title:x,children:[(0,K.jsx)(E.Item,{icon:t?h:p,label:y(t?`libraryAppCard.unpin`:`libraryAppCard.pin`),onSelect:a}),s?(0,K.jsx)(E.Item,{icon:m,label:y(`libraryAppCard.share`),description:y(`libraryAppCard.shareSub`),onSelect:s}):null,c&&b?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(E.Item,{icon:f,label:y(`libraryAppCard.deployed`),description:(0,K.jsx)(`span`,{className:`break-all`,children:u}),trailing:y(`libraryAppCard.copyLink`),onSelect:()=>_?.()}),(0,K.jsx)(E.Item,{icon:g,label:y(`libraryAppCard.redeploy`),description:y(`libraryAppCard.redeploySub`),onSelect:c})]}):c?(0,K.jsx)(E.Item,{icon:l,label:y(`libraryAppCard.deploy`),description:y(`libraryAppCard.deploySub`),onSelect:c}):null,o?(0,K.jsx)(E.Item,{icon:v,label:y(`libraryAppCard.delete`),tone:`destructive`,onSelect:o}):null]})]})}function Q({title:e,apps:t,assistantId:n,pinnedAppIds:r,lastImportedAppId:i,onOpen:a,onPin:o,onDelete:s,onDeploy:c,onAnimationEnd:l}){return t.length===0?null:(0,K.jsxs)(`section`,{children:[(0,K.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)]`,children:e}),(0,K.jsx)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(max(220px,calc((100%-6rem)/5)),1fr))] gap-6 [--swipe-item-surface:var(--surface-base)]`,children:t.map(e=>(0,K.jsx)(X,{app:e,assistantId:n,isPinned:r.has(e.id),onOpen:a,onPin:o,onDelete:s,justImported:e.id===i,onAnimationEnd:l,onDeploy:c?()=>c(e.id):void 0},e.id))})]})}var $=(e,t)=>t.updatedAt-e.updatedAt||t.createdAt-e.createdAt;function ee(e){let{pinnedAppIds:n}=w(e),{data:r=[],isLoading:i,error:a}=t({...C({path:{assistant_id:e}}),select:e=>e.apps}),{data:o=[],isLoading:s,error:c}=t({...j({path:{assistant_id:e}}),select:e=>e.documents}),l=i||s,u=a&&c?a instanceof Error?a.message:`Failed to load library`:null,[d,f]=(0,G.useState)(``),p=(0,G.useMemo)(()=>{if(!d.trim())return r;let e=d.toLowerCase();return r.filter(t=>t.name.toLowerCase().includes(e)||t.description?.toLowerCase().includes(e))},[r,d]);return{apps:r,documents:o,filteredApps:p,pinnedApps:(0,G.useMemo)(()=>p.filter(e=>n.has(e.id)).sort($),[p,n]),recentApps:(0,G.useMemo)(()=>p.filter(e=>!n.has(e.id)).sort($),[p,n]),filteredDocuments:(0,G.useMemo)(()=>{if(!d.trim())return o;let e=d.toLowerCase();return o.filter(t=>t.title.toLowerCase().includes(e))},[o,d]),searchText:d,setSearchText:f,loading:l,error:u}}async function te(e,t){let{data:n,error:r,response:i}=await A({path:{assistant_id:e},body:t,bodySerializer:e=>e,headers:{"Content-Type":`application/octet-stream`},throwOnError:!1});if(!i||!i.ok){let e=(r&&typeof r==`object`&&`message`in r?r.message:null)??`Failed to import app.`;throw Error(e)}return n}function ne({assistantId:e,assistantName:t,onNewConversation:i,onOpenDocument:a,onOpenApp:o}){let{t:c}=r(`library`),l=n(),{togglePin:d,pinnedAppIds:f}=w(e),p=M.use.isDeploying(),{apps:m,documents:h,filteredApps:g,pinnedApps:_,recentApps:v,filteredDocuments:y,searchText:b,setSearchText:C,loading:E,error:D}=ee(e),{pendingDelete:O,isDeleting:A,requestDelete:j,confirmDelete:P,cancelDelete:I}=U(e),[L]=(0,G.useState)(()=>N()?void 0:`.vellum`),R=(0,G.useRef)(null),[z,V]=(0,G.useState)(!1),W=(0,G.useCallback)(async t=>{let n=t.target.files?.[0];if(!(!n||z)){V(!0);try{let t=await te(e,n);await l.invalidateQueries({queryKey:k({path:{assistant_id:e}})}),S.success(c(`libraryView.imported`,{name:t.name})),o(t.appId)}catch(e){S.error(e instanceof Error?e.message:c(`libraryView.importFailed`))}finally{V(!1),R.current&&(R.current.value=``)}}},[e,z,l,o,c]),q=(0,G.useCallback)(async t=>{if(p)return;let n=m.find(e=>e.id===t)?.name??`this app`;try{let r=await x(e,t);M.getState().deployApp(e,t,n,r)}catch{M.getState().deployApp(e,t,n,``)}},[e,p,m]),X=(0,G.useCallback)(e=>d(e.id),[d]);if(E)return(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 border-[var(--border-base)] border-t-[var(--primary-base)]`,role:`status`,"aria-label":c(`libraryView.loadingAria`)})});if(D)return(0,K.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4`,children:[(0,K.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:D}),(0,K.jsx)(`button`,{type:`button`,className:`rounded-lg bg-[var(--primary-base)] px-4 py-2 text-body-medium-default text-[var(--content-inset)] transition-colors hover:bg-[var(--primary-hover)]`,onClick:()=>window.location.reload(),children:c(`libraryView.retry`)})]});let Z=m.length===0&&h.length===0;return(0,K.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden`,children:[(0,K.jsx)(`div`,{className:`mb-4 flex shrink-0 items-center justify-end gap-4`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`input`,{ref:R,type:`file`,accept:L,className:`hidden`,onChange:W}),(0,K.jsxs)(F,{variant:`outlined`,size:`regular`,onClick:()=>R.current?.click(),disabled:z,children:[z?(0,K.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`}):(0,K.jsx)(s,{size:14}),(0,K.jsx)(`span`,{className:`ml-1.5`,children:c(`libraryView.import`)})]})]})}),Z?(0,K.jsx)(`div`,{className:`min-h-0 flex-1`,children:(0,K.jsx)(Y,{onNewConversation:i?()=>i():void 0})}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{className:`mb-6 shrink-0`,children:(0,K.jsx)(T,{fullWidth:!0,type:`text`,placeholder:c(`libraryView.searchPlaceholder`),value:b,onChange:e=>C(e.target.value),leftIcon:(0,K.jsx)(u,{size:16})})}),(0,K.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:g.length===0&&y.length===0?(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-16`,children:[(0,K.jsx)(u,{size:32,className:`mb-4 text-[var(--content-tertiary)]`}),(0,K.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:c(`libraryView.noMatches`,{query:b})})]}):(0,K.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[(0,K.jsx)(Q,{title:c(`libraryView.pinned`),apps:_,assistantId:e,pinnedAppIds:f,onOpen:o,onPin:X,onDelete:j,onDeploy:q}),(0,K.jsx)(Q,{title:c(`libraryView.recents`),apps:v,assistantId:e,pinnedAppIds:f,onOpen:o,onPin:X,onDelete:j,onDeploy:q}),y.length>0?(0,K.jsxs)(`section`,{children:[(0,K.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)]`,children:c(`libraryView.documents`)}),(0,K.jsx)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(max(220px,calc((100%-6rem)/5)),1fr))] gap-6`,children:y.map(e=>(0,K.jsx)(J,{document:e,onOpen:e=>{a&&a(e)}},e.surfaceId))})]}):null]})}),(0,K.jsx)(B,{assistantId:e,assistantName:t,onStartConversation:i}),(0,K.jsx)(H,{app:O,isDeleting:A,onConfirm:P,onCancel:I})]})]})}function re(){let e=D(),t=a();return(0,K.jsx)(ne,{assistantId:e,onNewConversation:(0,G.useCallback)(e=>{b(t,{prompt:e})},[t]),onOpenDocument:(0,G.useCallback)(e=>{t(z.document(e))},[t]),onOpenApp:(0,G.useCallback)(e=>{t(z.library.app(e))},[t])})}export{re as LibraryPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-CV8wawxx.js";import{b as n,d as r,t as i}from"./react-DPM_L_aA.js";import{Lg as a,Mo as o,No as s,Po as c,Rg as l,jo as u,m_ as d,nb as f,qv as p,zv as m}from"./index-jpjzZb6b.js";import{n as h,r as g,t as _}from"./auth-welcome-screen-CoRWc9Wn.js";import{n as v,t as y}from"./use-return-to-short-circuit-OqzatVUm.js";var b=e(n(),1),x=i();function S({returnTo:e}){let{t:n}=t(`account`),[r,i]=(0,b.useState)(null),[l,d]=(0,b.useState)(!1),m=async()=>{i(null),d(!0);try{await a({returnTo:e??null})}catch(e){if(o(e)){d(!1);return}p(e,{context:`native_login`,tags:{authError:s(e)??`unclassified`}}),i(n(c(e),{community:u})),d(!1)}};return(0,x.jsx)(g,{animateAvatarWaveIn:!0,fillsViewport:!0,children:(0,x.jsx)(h,{error:r,children:(0,x.jsx)(f,{type:`button`,variant:`primary`,size:`regular`,fullWidth:!0,className:`h-11 text-base`,onClick:()=>{m()},disabled:l,children:n(`loginPage.signIn`)})})})}function C({returnTo:e}){let{t:n}=t(`account`),{search:i}=r(),a=d(e?`${m.account.signup}?returnTo=${encodeURIComponent(e)}`:m.account.signup,i);return(0,x.jsx)(_,{returnTo:e,errorContext:`web_login`,fillsViewport:!0,secondary:{label:n(`loginPage.signUp`),href:a}})}function w(){let e=l(),t=y();return t.kind===`wait`?(0,x.jsx)(g,{animateAvatarWaveIn:!0,fillsViewport:!0,children:(0,x.jsx)(v,{})}):t.kind===`redirect`?t.node:e?(0,x.jsx)(S,{returnTo:t.returnTo}):(0,x.jsx)(C,{returnTo:t.returnTo})}export{w as LoginPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-CV8wawxx.js";import{b as n,g as r,t as i}from"./react-DPM_L_aA.js";import{Go as a,Qf as o,f_ as s,zv as c}from"./index-jpjzZb6b.js";import{r as l,t as u}from"./account-shell-8ayvWwg5.js";var d=e(n(),1),f=i();function p(){let{t:e}=t(`account`),[n]=r(),i=o.use.logout(),p=(0,d.useRef)(!1);return(0,d.useEffect)(()=>{if(p.current)return;p.current=!0;let e=s(n.get(`returnTo`),c.account.login),t=e.startsWith(`http`)||e===c.account.login?e:`${c.account.login}?returnTo=${encodeURIComponent(e)}`,r=!1;return i().then(()=>{r||a(t)},()=>{r||a(t)}),()=>{r=!0}},[i,n]),(0,f.jsx)(u,{children:(0,f.jsx)(l,{title:e(`logoutPage.title`)})})}export{p as LogoutPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{b as t,d as n,i as r,t as i}from"./react-DPM_L_aA.js";import{
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{b as t,d as n,i as r,t as i}from"./react-DPM_L_aA.js";import{Ci as a,Xt as o}from"./icons-J6Mg9wGk.js";import{Xf as s,zv as c}from"./index-jpjzZb6b.js";import{n as l,t as u}from"./sidebar-tree-BgbzXxYi.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:c.logs.emails,icon:o},{id:`system-events`,label:`System Events`,href:c.logs.systemEvents,icon:d}],m=i();function h(){let e=s({platformHostedOnly:!0}),t=s(),{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===c.logs.root?p[0]?.label??`Logs & Usage`:`Logs & Usage`},[i]);return(0,m.jsx)(l,{backHref:c.assistant,sidebar:(0,m.jsx)(u,{items:a,indexPath:c.logs.root}),title:o,menuRoute:c.logs.root,children:(0,m.jsx)(r,{})})}export{h as LogsLayout};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as e}from"./vendor-CV8wawxx.js";import{t}from"./react-DPM_L_aA.js";import{t as n}from"./preview-error-BUjzhle1.js";import{Kn as r,gn as i,pn as a}from"./index-jpjzZb6b.js";import{t as o}from"./use-truncated-blob-text-CvqS5q0a.js";var s=t(),c=512*1024;function l({blob:t,filename:l}){let{t:u}=e(`chat`),{text:d,truncated:f,decodeFailed:p}=o(t,c);return p?(0,s.jsx)(n,{filename:l}):d===null?(0,s.jsx)(r,{}):(0,s.jsxs)(`div`,{className:`flex min-h-0 flex-col gap-2`,children:[(0,s.jsx)(a,{content:d}),f&&(0,s.jsx)(i,{children:u(`previewTruncationNotice.markdown`)})]})}export{l as MarkdownPreview};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{b as t,t as n}from"./react-DPM_L_aA.js";import{
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{b as t,t as n}from"./react-DPM_L_aA.js";import{Gn as r,Kn as i,to as a}from"./index-jpjzZb6b.js";var o=e(t(),1),s=n(),c=`nodownload noplaybackrate`;function l({blob:e,filename:t,kind:n}){let l=r(e,(0,o.useMemo)(()=>a({sniffedMime:null,serverMime:e.type.length>0?e.type:null,filename:t}).mime,[e,t]));return l===null?(0,s.jsx)(i,{}):n===`image`?(0,s.jsx)(`div`,{className:`flex justify-center`,children:(0,s.jsx)(`img`,{src:l,alt:t,className:`h-auto max-w-full rounded-lg border border-[var(--border-element)]`})}):n===`audio`?(0,s.jsx)(`audio`,{src:l,controls:!0,controlsList:c,preload:`metadata`,"aria-label":t,className:`w-full`}):(0,s.jsx)(`video`,{src:l,controls:!0,controlsList:c,playsInline:!0,preload:`metadata`,"aria-label":t,className:`max-w-full rounded-lg border border-[var(--border-element)]`})}export{l as MediaPreview};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{I as t,Xn as n,Zn as r,er as i,j as a}from"./vendor-CV8wawxx.js";import{b as o,f as s,t as c}from"./react-DPM_L_aA.js";import{$ as l,Br as u,Ft as d,P as f,Rr as p,Vr as m,Wt as h,Y as g,ct as _,i as v,n as y,q as b,qt as x,rn as S,t as ee,tt as C}from"./icons-J6Mg9wGk.js";import{By as w,Cs as T,Do as E,Iy as D,Oo as te,Pu as ne,Q as re,Qv as O,Ry as k,To as ie,Wh as ae,Zv as A,_u as oe,ey as j,lo as se,nb as M,pi as N,pn as P,qh as F,qy as I,tb as L,zv as ce}from"./index-jpjzZb6b.js";var R=e(o(),1),z={x:600,y:450},le=`memory_tab_v1`,ue=crypto.randomUUID();function B(e){typeof window>`u`||oe()&&N([{type:`onboarding`,daemon_event_id:crypto.randomUUID(),recorded_at:Date.now(),screen:`memory`,session_id:ue,step_name:e,funnel_version:le}])}var V=Math.PI*(3-Math.sqrt(5)),H=7,U=2.4,W=34,de=10;function G(e){return Math.min(W,H+U*Math.sqrt(e))}function fe(e){return e===`concept`||e===`skill`||e===`capability`||e===`pending`?e:`other`}function K(e){return e===`link`||e===`learned`?e:`other`}function pe(e,t={}){let n=t.center??z,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)=>G(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*V,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]+de;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:fe(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:K(e.kind),directed:e.directed??!1};return e.description&&(n.description=e.description),n})}}var q=c();function me({title:e,detail:t,action:n}){return(0,q.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 px-6 text-center`,children:[(0,q.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),t?(0,q.jsx)(`p`,{className:`max-w-sm text-body-small-default`,style:{color:`var(--content-tertiary)`},children:t}):null,n?(0,q.jsx)(`div`,{className:`mt-2`,children:n}):null]})}function J(){return t(`getMemoryGraphNode.failureMessage`,{ns:`intelligence`})}function he(e,t){return n({queryKey:[`memory-graph-node`,e,t],enabled:!!(e&&t),queryFn:async()=>{let{data:n,error:r,response:i}=await F({path:{assistant_id:e},query:{id:t??``},throwOnError:!1});if(O(i,r,J()),!i.ok)throw new A(i.status,j(r,i,J()));return n??{found:!1}}})}var ge={concept:`#467CC8`,skill:`#DB4B77`,capability:`#0E9B8B`,pending:`#F1B21E`,other:`#8D99A5`},_e=[`#467CC8`,`#E86B40`,`#7A5AF5`,`#22B8CF`,`#3DB85E`,`#E9C91A`,`#E83F5B`,`#6ECF87`,`#F39B74`,`#F5C94E`],Y={concept:`conceptGraphConstants.nodeKind.concept`,skill:`conceptGraphConstants.nodeKind.skill`,capability:`conceptGraphConstants.nodeKind.capability`,pending:`conceptGraphConstants.nodeKind.pending`,other:`conceptGraphConstants.nodeKind.other`};function ve(e){return t(Y[e],{ns:`intelligence`})}var ye=`#F1B21E`;function be(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 xe(e){return e?new Date(e).toLocaleDateString(`en-GB`,{day:`numeric`,month:`short`,year:`numeric`}):null}var X=600;function Se(e){let t=e.slice(0,X),n=t.lastIndexOf(`
|
|
2
|
+
`);return n>X/2?e.slice(0,n):t}function Ce({content:e}){let[t,n]=(0,R.useState)(!1),{t:r}=a(`intelligence`);return e.length<=X?(0,q.jsx)(P,{content:e}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(P,{content:t?e:Se(e)}),(0,q.jsx)(M,{variant:`ghost`,size:`compact`,className:`-ml-2 mt-1`,onClick:()=>n(e=>!e),rightIcon:t?(0,q.jsx)(p,{size:16,"aria-hidden":!0}):(0,q.jsx)(m,{size:16,"aria-hidden":!0}),children:r(t?`conceptDetailPanel.showLess`:`conceptDetailPanel.readFullNote`)})]})}function we({assistantId:e,node:t,trail:n,neighbors:i,onTravel:o,onCrumb:s,onClose:c,onOpenThread:l}){let{t:d}=a(`intelligence`),p=r(he(e,t.id)),m=p.data,g=xe(t.updatedAtMs),_=m?.title??t.label,y=be(n);return(0,R.useEffect)(()=>{let e=e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),c())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[c]),(0,q.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,q.jsx)(`div`,{className:`absolute inset-0`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 16%, transparent)`},onClick:c}),(0,q.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:[n.length>1?(0,q.jsxs)(`nav`,{"aria-label":d(`conceptDetailPanel.trailAriaLabel`),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,q.jsx)(`button`,{type:`button`,onClick:()=>s(n.length-2),"aria-label":d(`conceptDetailPanel.backAriaLabel`),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,q.jsx)(u,{size:16,"aria-hidden":!0})}),y.map((e,t)=>(0,q.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[t>0?(0,q.jsx)(`span`,{"aria-hidden":!0,children:`›`}):null,e===`ellipsis`?(0,q.jsx)(`span`,{"aria-hidden":!0,children:`…`}):e.index===n.length-1?(0,q.jsx)(`span`,{"aria-current":`page`,className:`max-w-[9rem] truncate`,style:{color:`var(--content-default)`},children:e.node.label}):(0,q.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,q.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,q.jsxs)(`div`,{className:`min-w-0`,children:[(0,q.jsx)(`h2`,{className:`truncate text-title-small`,style:{color:`var(--content-default)`},title:m?.title??t.label,children:m?.title??t.label}),g?(0,q.jsx)(`p`,{className:`mt-0.5 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:d(`conceptDetailPanel.updated`,{date:g})}):null]}),(0,q.jsx)(M,{variant:`ghost`,iconOnly:(0,q.jsx)(v,{"aria-hidden":!0}),onClick:c,"aria-label":d(`conceptDetailPanel.closeAriaLabel`),tintColor:`var(--content-tertiary)`})]}),(0,q.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-5 py-4`,style:{touchAction:`pan-y`},children:[p.isLoading?(0,q.jsx)(`div`,{className:`flex justify-center py-8`,children:(0,q.jsx)(`div`,{className:`h-5 w-5 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):p.isError?(0,q.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:d(`conceptDetailPanel.loadError`)}):m?.found&&m.content?.trim()?(0,q.jsx)(Ce,{content:m.content},t.id):(0,q.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:d(`conceptDetailPanel.emptyContent`)}),i.length>0?(0,q.jsxs)(`section`,{className:`mt-6 border-t pt-4`,style:{borderColor:`var(--border-base)`},children:[(0,q.jsxs)(`div`,{className:`mb-2 flex items-baseline justify-between gap-2`,children:[(0,q.jsx)(`h3`,{className:`text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:d(`conceptDetailPanel.wiredTo`)}),(0,q.jsx)(`span`,{className:`text-body-small-default tabular-nums`,style:{color:`var(--content-tertiary)`},children:d(`conceptDetailPanel.connectionCount`,{count:i.length})})]}),(0,q.jsx)(`ul`,{className:`flex list-none flex-col gap-0.5`,children:i.map(e=>(0,q.jsx)(`li`,{children:(0,q.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,q.jsx)(`span`,{"aria-hidden":!0,className:`h-1.5 w-1.5 shrink-0 rounded-full`,style:{backgroundColor:e.kind===`learned`?ye:`var(--content-tertiary)`}}),(0,q.jsx)(`span`,{className:`truncate`,children:e.label})]})},e.id))})]}):null]}),l?(0,q.jsxs)(`footer`,{className:`flex shrink-0 gap-2 border-t px-5 py-3`,style:{borderColor:`var(--border-base)`},children:[(0,q.jsx)(M,{variant:`outlined`,size:`regular`,className:`flex-1`,leftIcon:(0,q.jsx)(h,{size:16,"aria-hidden":!0}),onClick:()=>l(d(`conceptDetailPanel.askPrompt`,{title:_})),children:d(`conceptDetailPanel.askAboutThis`)}),(0,q.jsx)(M,{variant:`primary`,size:`regular`,className:`flex-1`,leftIcon:(0,q.jsx)(f,{size:16,"aria-hidden":!0}),onClick:()=>l(d(`conceptDetailPanel.refinePrompt`,{title:_})),children:d(`conceptDetailPanel.refine`)})]}):null]})]})}function Te({onDismiss:e}){let{t}=a(`intelligence`);return(0,q.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,q.jsx)(`span`,{className:`mt-0.5 shrink-0`,style:{color:`var(--primary-base)`},"aria-hidden":!0,children:(0,q.jsx)(f,{size:18})}),(0,q.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,q.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:t(`conceptGraphIntroBanner.title`)}),(0,q.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter`,style:{color:`var(--content-tertiary)`},children:t(`conceptGraphIntroBanner.description`)})]}),(0,q.jsx)(M,{variant:`ghost`,iconOnly:(0,q.jsx)(v,{"aria-hidden":!0}),onClick:e,"aria-label":t(`conceptGraphIntroBanner.dismissAriaLabel`),tintColor:`var(--content-tertiary)`})]})}var Ee=8;function De({nodeKinds:e,coloredByTheme:t,themes:n,hasLinks:r,hasLearned:i,onToggleLink:o,onToggleLearned:s,linkActive:c,learnedActive:l}){let{t:u}=a(`intelligence`);return(0,q.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,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 rounded-full`,style:{backgroundColor:ge[e]}}),(0,q.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:ve(e)})]},e)),t&&(n&&n.length>0?(0,q.jsxs)(q.Fragment,{children:[n.slice(0,Ee).map((e,t)=>(0,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,q.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),(0,q.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>Ee&&(0,q.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:u(`conceptGraphLegend.moreThemes`,{count:n.length-Ee})})]}):(0,q.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:u(`conceptGraphLegend.coloredByTheme`)})),(e.length>0||t)&&(r||i)&&(0,q.jsx)(`div`,{className:`mt-0.5 border-t pt-1.5`,style:{borderColor:`var(--border-base)`}}),r&&(0,q.jsx)(Oe,{swatchStyle:{borderTop:`2px solid var(--content-tertiary)`},label:u(`conceptGraphLegend.link`),onToggle:o,active:c}),i&&(0,q.jsx)(Oe,{swatchStyle:{borderTop:`2px dashed #F1B21E`},label:u(`conceptGraphLegend.learned`),onToggle:s,active:l})]})}function Oe({swatchStyle:e,label:t,onToggle:n,active:r}){let i=(0,q.jsx)(`span`,{className:`inline-block h-0 w-4`,style:e}),a=(0,q.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:t});return n?(0,q.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,q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[i,a]})}var Z=8;function ke(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}function Q(){return t(`memoryUnavailable.prompts.v2`,{ns:`intelligence`})}function Ae(){return t(`memoryUnavailable.prompts.v1`,{ns:`intelligence`})}function je(){return t(`memoryUnavailable.prompts.enable`,{ns:`intelligence`})}function Me(){return{title:t(`memoryUnavailable.statusError.title`,{ns:`intelligence`}),detail:t(`memoryUnavailable.statusError.detail`,{ns:`intelligence`}),action:`retry`}}function Ne(e){return e===`off`?{title:t(`memoryUnavailable.off.title`,{ns:`intelligence`}),detail:t(`memoryUnavailable.off.detail`,{ns:`intelligence`}),action:`settings`,prompt:je()}:e===`v1`||e===`v2`?{title:t(`memoryUnavailable.legacy.title`,{ns:`intelligence`}),detail:t(`memoryUnavailable.legacy.detail`,{ns:`intelligence`}),action:`upgrade`,prompt:e===`v1`?Ae():Q()}:{title:t(`memoryUnavailable.unknown.title`,{ns:`intelligence`}),detail:t(`memoryUnavailable.unknown.detail`,{ns:`intelligence`}),action:`none`}}function Pe({assistantId:e,onOpenThread:t}){let{t:n}=a(`intelligence`),o=s(),c=i(),l=r(E(e));(0,R.useEffect)(()=>{ie(c,e)},[c,e]);let u=se(`memoryOptOut`),d=ne.use.settingsDeveloperNav(),p=u&&d===!0;if(l.isLoading)return null;let m=l.data?.kind===`ready`?l.data.tier:void 0,h=l.isError?Me():Ne(m),g=h.prompt,_=null;return h.action===`upgrade`&&t&&g?_=(0,q.jsx)(M,{variant:`primary`,size:`compact`,leftIcon:(0,q.jsx)(f,{}),onClick:()=>{B(`upgrade_v3_clicked`),t(g)},children:n(`memoryUpgradePrompt.upgradeMemory`)}):h.action===`retry`?_=(0,q.jsx)(M,{variant:`outlined`,size:`compact`,leftIcon:(0,q.jsx)(C,{}),onClick:()=>{l.refetch()},children:n(`memoryUpgradePrompt.tryAgain`)}):h.action===`settings`&&p?_=(0,q.jsx)(M,{variant:`outlined`,size:`compact`,leftIcon:(0,q.jsx)(b,{}),onClick:()=>o(`${ce.settings.developer}?tab=memory`),children:n(`memoryUpgradePrompt.memorySettings`)}):h.action===`settings`&&t&&g&&(_=(0,q.jsx)(M,{variant:`primary`,size:`compact`,leftIcon:(0,q.jsx)(f,{}),onClick:()=>{B(`enable_memory_clicked`),t(g)},children:n(`memoryUpgradePrompt.turnMemoryOn`)})),(0,q.jsx)(me,{title:h.title,detail:h.detail,action:_})}function Fe({value:e,onChange:t}){let{t:n}=a(`intelligence`),r=[{value:`all`,label:n(`recencyLens.all`)},{value:`month`,label:n(`recencyLens.month`)},{value:`week`,label:n(`recencyLens.week`)}];return(0,q.jsx)(w,{ariaLabel:n(`recencyLens.ariaLabel`),items:r,value:e,onChange:t,className:`!w-auto [&>*]:!flex-none`})}var Ie=`vellum:memoryGraph:introDismissed:`;function Le(e){return`${Ie}${e}`}function $(e){if(!e)return!0;try{return window.localStorage.getItem(Le(e))===`1`}catch{return!0}}function Re(e){let[t,n]=(0,R.useState)(()=>$(e));return(0,R.useEffect)(()=>{n($(e))},[e]),[t,(0,R.useCallback)(()=>{n(!0);try{window.localStorage.setItem(Le(e),`1`)}catch{}},[e])]}var ze=[`concept`,`skill`,`capability`,`pending`,`other`],Be=.13,Ve=2600,He=.006,Ue=1.15,We=3,Ge=.32,Ke=.45,qe=3,Je=4,Ye=1440*60*1e3,Xe=14*Ye,Ze=12,Qe=2*Ye,$e=80,et=340,tt=.12,nt=.05,rt=.03,it=12,at=2600;function ot(e){let t=getComputedStyle(e);return{content:t.getPropertyValue(`--content-default`).trim()||`#e5e7eb`,tertiary:t.getPropertyValue(`--content-tertiary`).trim()||`#8792a0`}}function st(e){return e.kind===`learned`?`Learned association`:e.description??`Linked concepts`}function ct(e,t,n){return t==null?!1:e==null||n-e>t}function lt(e,t){let n=t?e.get(t):void 0;return e=>t!=null&&(e===t||(n?.has(e)??!1))}function ut({assistantId:e,className:t,isFullscreen:n,onToggleFullscreen:i,onOpenThread:o,headerAction:s,handleRef:c}){let{t:u}=a(`intelligence`),f=(0,R.useRef)(null),p=(0,R.useRef)(null),m=r(te(e)),h=m.data?.kind===`ready`?m.data.graph:null,_=(0,R.useMemo)(()=>h?pe(h):{nodes:[],edges:[]},[h]),b=m.data?.kind===`ready`&&_.nodes.length>0,S=(0,R.useMemo)(()=>ke(_.nodes,_.edges),[_.nodes,_.edges]),C=(0,R.useMemo)(()=>{let e=new Map;for(let t of _.nodes){let n=S.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:_e[e%_e.length],name:n[0].label,concepts:n.map(e=>e.label),size:t.length}}).sort((e,t)=>t.size-e.size)},[S,_.nodes]),w=(0,R.useMemo)(()=>new Set(C.map(e=>e.hubId)),[C]),T=(0,R.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 _.edges)t(e.fromId,e.toId),t(e.toId,e.fromId);return e},[_.edges]),E=(0,R.useMemo)(()=>{if(_.nodes.length===0)return 1;let e=_.nodes.map(e=>{let t=e.x-z.x,n=e.y-z.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])},[_.nodes]),D=(0,R.useRef)({yaw:.5,pitch:.32,zoom:1,hoveredId:null,dragging:!1,moved:!1,lastX:0,lastY:0,lastInteractAt:-1/0,dirty:!0}),ne=(0,R.useRef)([]),re=(0,R.useRef)([]),O=(0,R.useRef)({content:`#e5e7eb`,tertiary:`#8792a0`}),k=(0,R.useRef)(null),ie=(0,R.useRef)(!1),ae=(0,R.useRef)(null),A=(0,R.useRef)(null),[oe,j]=(0,R.useState)(null),[se,N]=(0,R.useState)(null),[P,F]=(0,R.useState)([]),I=P.at(-1)??null,L=(0,R.useCallback)(e=>{B(`node_opened`),F(t=>[...t,e])},[]),ce=(0,R.useRef)(null);(0,R.useEffect)(()=>{ce.current=I?.id??null,D.current.dirty=!0},[I?.id]);let[le,ue]=Re(e),[V,H]=(0,R.useState)(``),[U,W]=(0,R.useState)(!1),de=(0,R.useRef)(null);(0,R.useEffect)(()=>{U&&de.current?.focus()},[U]);let G=(0,R.useRef)(!1),fe=V.trim().toLowerCase(),K=(0,R.useMemo)(()=>{if(!fe)return null;let e=new Set;for(let t of _.nodes)t.label.toLowerCase().includes(fe)&&e.add(t.id);return e},[fe,_.nodes]),J=(0,R.useRef)({active:!1,matches:null});(0,R.useEffect)(()=>{J.current={active:!!K,matches:K},D.current.dirty=!0},[K]),(0,R.useEffect)(()=>{V.trim()||(G.current=!1)},[V]);let he=(0,R.useMemo)(()=>!K||K.size===0?[]:_.nodes.filter(e=>K.has(e.id)).sort((e,t)=>t.degree-e.degree).slice(0,8),[K,_.nodes]),[Y,ve]=(0,R.useState)(`all`),be=(0,R.useRef)(null);(0,R.useEffect)(()=>{be.current=Y===`week`?7*Ye:Y===`month`?30*Ye:null,D.current.dirty=!0},[Y]);let xe=(0,R.useMemo)(()=>_.nodes.some(e=>e.updatedAtMs!=null),[_.nodes]);(0,R.useEffect)(()=>{!xe&&Y!==`all`&&ve(`all`)},[xe,Y]);let[X,Se]=(0,R.useState)({link:!0,learned:!0}),Ce=(0,R.useRef)(X);(0,R.useEffect)(()=>{Ce.current=X,D.current.dirty=!0},[X]),(0,R.useEffect)(()=>{H(``),ve(`all`),Se({link:!0,learned:!0}),F([]),G.current=!1},[e]);let Ee=(0,R.useCallback)(()=>{let e=D.current;e.yaw=.5,e.pitch=.32,e.zoom=1,e.lastInteractAt=-1/0,e.dirty=!0,j(null)},[]),Oe=(0,R.useCallback)(e=>{let t=D.current;t.zoom=Math.max(Ke,Math.min(qe,t.zoom*e)),t.lastInteractAt=performance.now(),t.dirty=!0},[]),Z=(0,R.useCallback)(e=>{k.current=e,D.current.lastInteractAt=performance.now(),D.current.dirty=!0},[]),Q=(0,R.useCallback)(e=>{L(e),Z(e.id)},[L,Z]),Ae=(0,R.useCallback)(e=>{ae.current={id:e,start:performance.now()},Z(e),window.setTimeout(()=>{D.current.dirty=!0},at+60)},[Z]),je=(0,R.useCallback)(e=>{_.nodes.some(t=>t.id===e)?Ae(e):A.current=e},[_.nodes,Ae]);(0,R.useEffect)(()=>{let e=A.current;e&&_.nodes.some(t=>t.id===e)&&(A.current=null,Ae(e))},[_.nodes,Ae]),(0,R.useImperativeHandle)(c,()=>({focusNode:je}),[je]);let Me=(0,R.useCallback)(()=>{F([]),H(``),j(null),k.current=null,ie.current=!0},[]),Ne=(0,R.useCallback)(e=>{H(``);let t=P.slice(0,e+1);F(t);let n=t.at(-1);n?Z(n.id):j(null)},[P,Z]),Ie=(0,R.useCallback)(e=>{H(``),Q(e)},[Q]),Le=(0,R.useMemo)(()=>{let e=I?.id;if(!e)return[];let t=T.get(e);if(!t||t.size===0)return[];let n=new Map(_.nodes.map(e=>[e.id,e.label])),r=new Map;for(let t of _.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},[I?.id,T,_.nodes,_.edges]);(0,R.useEffect)(()=>{if(!b)return;let e=p.current,t=f.current;if(!e||!t)return;let n=e.getContext(`2d`);if(!n)return;let r=_.nodes,i=_.edges,a=S,o=w,s=T,c=new Set(r.map(e=>e.id)),l=E,u=window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;O.current=ot(t);let d=Math.min(window.devicePixelRatio||1,2),m=0,h=0,g=()=>{let n=t.getBoundingClientRect();m=n.width,h=n.height,d=Math.min(window.devicePixelRatio||1,2),e.width=Math.max(1,Math.round(m*d)),e.height=Math.max(1,Math.round(h*d)),e.style.width=`${m}px`,e.style.height=`${h}px`,O.current=ot(t),D.current.dirty=!0};g();let v=new ResizeObserver(g);v.observe(t);let y=new MutationObserver(()=>{O.current=ot(t),D.current.dirty=!0});y.observe(document.documentElement,{attributes:!0,attributeFilter:[`data-theme`,`class`,`style`]});let x=0,ee=0,C=e=>{let t=ee?Math.min(.05,(e-ee)/1e3):0;ee=e;let f=D.current,p=O.current,g=Date.now(),_=k.current;if(!f.dragging&&e-f.lastInteractAt>Ve&&!u&&!_&&(f.yaw+=Be*t),_){let e=r.find(e=>e.id===_);if(!e)k.current=null;else{let t=e.x-z.x,n=e.y-z.y,r=e.z,i=-Math.atan2(t,r),a=Math.hypot(t,r),o=Math.max(-Ue,Math.min(Ue,Math.atan2(n,a))),s=Math.min(qe,1.6),c=u?1:.15,l=i-f.yaw;l=Math.atan2(Math.sin(l),Math.cos(l)),f.yaw+=l*c,f.pitch+=(o-f.pitch)*c,f.zoom+=(s-f.zoom)*c,f.dirty=!0,Math.abs(l)<.01&&Math.abs(o-f.pitch)<.01&&Math.abs(s-f.zoom)<.02&&(k.current=null)}}if(ie.current&&!f.dragging){let e=u?1:.15;f.pitch+=(.32-f.pitch)*e,f.zoom+=(1-f.zoom)*e,f.dirty=!0,Math.abs(.32-f.pitch)<.01&&Math.abs(1-f.zoom)<.02&&(ie.current=!1)}if(u&&!f.dirty){x=requestAnimationFrame(C);return}f.dirty=!1;let v=Math.cos(f.yaw),y=Math.sin(f.yaw),b=Math.cos(f.pitch),S=Math.sin(f.pitch),w=We*l,T=Math.min(m,h)*.88/(2*l)*f.zoom,E=m/2,te=h/2;n.setTransform(d,0,0,d,0,0),n.clearRect(0,0,m,h);let A=f.hoveredId,oe=A?s.get(A):void 0,j=e=>!A||e===A||(oe?.has(e)??!1),se=J.current,M=se.active,N=e=>!M||(se.matches?.has(e)??!1),P=be.current,F=e=>ct(e.updatedAtMs,P,g),I=Ce.current,L=ce.current,R=L!=null&&c.has(L),le=lt(s,R?L:null),ue=r.length<=$e?1:Math.max(tt,1-(r.length-$e)/(et-$e)*(1-tt)),B=Array(r.length);for(let e=0;e<r.length;e++){let t=r[e],n=t.x-z.x,i=t.y-z.y,a=t.z,o=n*v+a*y,s=-n*y+a*v,c=i*b-s*S,u=i*S+s*b,d=w/(w-u);B[e]={node:t,sx:E+o*T*d,sy:te+c*T*d,sr:Math.max(1.2,t.radius*T*d),depth:Math.max(0,Math.min(1,(u+l)/(2*l)))}}let V=B.map((e,t)=>t).sort((e,t)=>B[e].depth-B[t].depth),H=new Map;for(let e of B)H.set(e.node.id,e);let U=[];n.lineCap=`round`;for(let e of i){let t=H.get(e.fromId),r=H.get(e.toId);if(!t||!r)continue;let i=e.kind===`learned`,a=L!=null&&(e.fromId===L||e.toId===L);if(!a&&(i?!I.learned:!I.link))continue;let o=M&&(!N(e.fromId)||!N(e.toId))||!a&&(F(t.node)||F(r.node)),s=A!=null&&(e.fromId===A||e.toId===A),c=(t.depth+r.depth)/2;!o&&(!R||a)&&U.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),u=i?l*ue:l,d;d=o?.03:R?a?.9:rt:A==null?u:s?.9:j(e.fromId)&&j(e.toId)?l:.05,n.globalAlpha=d,n.strokeStyle=i?ye:p.tertiary,n.lineWidth=(s||R&&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 V){let r=B[t],i=r.node,o=i.kind===`concept`?_e[(a.get(i.id)??0)%_e.length]:ge[i.kind],s=M&&!N(i.id),c=le(i.id),l=s||F(i)&&!c,d=R?c&&!l:!l&&j(i.id),f=i.id===A,p=Ge+(1-Ge)*r.depth,m=R&&!c?p*nt:l?p*.08:d?p:p*.18,h=(f?16:i.degree>=Je?8:4)*r.depth,_=i.updatedAtMs;if(_){let n=g-_,i=Math.max(0,1-n/Xe);if(i>0){let a=i*Ze;!u&&n<Qe&&(a*=.55+.45*Math.sin(e/420+t*1.7)),h+=a*r.depth}}n.shadowColor=o,n.shadowBlur=d?h: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=f?2.5:1.4,n.strokeStyle=o,n.setLineDash(v?[3,3]:[]),n.stroke(),n.setLineDash([]);let y=ae.current;if(y&&y.id===i.id){let t=e-y.start;if(t>at)ae.current=null;else if(u)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 V){let t=B[e],r=t.node,i=le(r.id);if(M&&!N(r.id)||F(r)&&!i||!(R?i:M?t.depth>.3:A==null?o.has(r.id)||r.degree>=Je&&t.depth>.55:j(r.id)))continue;n.globalAlpha=(r.id===A||r.id===L?1:.85)*(.4+.6*t.depth),n.fillStyle=p.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=B.map(e=>({id:e.node.id,sx:e.sx,sy:e.sy,sr:e.sr,depth:e.depth,updatedAtMs:e.node.updatedAtMs})),re.current=U,x=requestAnimationFrame(C)};return x=requestAnimationFrame(C),()=>{cancelAnimationFrame(x),v.disconnect(),y.disconnect()}},[b,_,T,E,S,w]);let $=(0,R.useCallback)((e,t)=>{let n=J.current,r=be.current,i=lt(T,ce.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)&&ct(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},[T]),ut=(0,R.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},[]),dt=e=>{let t=f.current.getBoundingClientRect();return{x:e.clientX-t.left,y:e.clientY-t.top}},ft=(0,R.useCallback)(e=>{if(e.button!==0||e.target.closest(`[data-graph-control]`))return;let t=D.current;k.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)},[]),pt=(0,R.useCallback)(e=>{let t=D.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*He,t.pitch=Math.max(-Ue,Math.min(Ue,t.pitch+r*He)),t.lastX=e.clientX,t.lastY=e.clientY,t.lastInteractAt=performance.now(),t.dirty=!0;return}let{x:n,y:r}=dt(e),i=$(n,r);if(i!==t.hoveredId&&(t.hoveredId=i,t.dirty=!0),i)N(null);else{let e=ut(n,r);N(e?st(e):null)}},[$,ut]),mt=(0,R.useCallback)(e=>{let t=D.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}=dt(e),r=$(t,n);if(r){let e=_.nodes.find(e=>e.id===r);e&&Q({id:e.id,label:e.label,updatedAtMs:e.updatedAtMs})}else j(null)}},[$,_.nodes,Q]),ht=(0,R.useCallback)(()=>{let e=D.current;N(null),!(e.dragging||e.hoveredId==null)&&(e.hoveredId=null,e.dirty=!0,j(null))},[]);(0,R.useEffect)(()=>{let e=f.current;if(!e||!b)return;let t=e=>{if(e.target.closest?.(`[data-graph-panel]`))return;e.preventDefault();let t=D.current;t.zoom=Math.max(Ke,Math.min(qe,t.zoom*(1-e.deltaY/500))),t.lastInteractAt=performance.now(),t.dirty=!0};return e.addEventListener(`wheel`,t,{passive:!1}),()=>e.removeEventListener(`wheel`,t)},[b]);let gt=(0,R.useMemo)(()=>{let e=new Set(_.nodes.map(e=>e.kind));return ze.filter(t=>e.has(t))},[_.nodes]),_t=(0,R.useMemo)(()=>_.edges.some(e=>e.kind===`learned`),[_.edges]),vt=(0,R.useMemo)(()=>_.edges.some(e=>e.kind!==`learned`),[_.edges]);(0,R.useEffect)(()=>{!(vt&&_t)&&(!X.link||!X.learned)&&Se({link:!0,learned:!0})},[vt,_t,X]);let yt=m.data?.kind===`ready`&&!le,bt=_.nodes.length,xt=_.edges.length,St=new Set(S.values()).size,Ct=(e,t)=>`${e} ${t}${e===1?``:`s`}`,wt=yt?null:oe??se,Tt=b&&(_.nodes.length>it||!!V),Et=!!(i||s)||b,Dt;return Dt=m.isLoading?(0,q.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,q.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):m.isError?(0,q.jsx)(me,{title:u(`conceptGraphView.loadErrorTitle`),detail:u(`conceptGraphView.loadErrorDetail`)}):m.data?.kind===`unsupported`?(0,q.jsx)(Pe,{assistantId:e,onOpenThread:o}):b?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(`canvas`,{ref:p,className:`absolute inset-0 h-full w-full`}),(_.nodes.length>it||Y!==`all`)&&xe?(0,q.jsx)(`div`,{"data-graph-control":!0,className:`absolute left-4 top-4 z-10`,children:(0,q.jsx)(Fe,{value:Y,onChange:ve})}):null,(0,q.jsx)(De,{nodeKinds:gt.filter(e=>e!==`concept`),coloredByTheme:gt.includes(`concept`),themes:C,hasLinks:vt,hasLearned:_t,...vt&&_t?{onToggleLink:()=>Se(e=>({...e,link:!e.link})),onToggleLearned:()=>Se(e=>({...e,learned:!e.learned})),linkActive:X.link,learnedActive:X.learned}:{}}),(0,q.jsx)(`div`,{className:`pointer-events-none absolute bottom-4 right-4 text-[11px]`,style:{color:`var(--content-tertiary)`},children:u(`conceptGraphView.dragToRotateHint`)}),h?.truncated?(0,q.jsx)(`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:u(`conceptGraphView.truncatedNotice`,{count:_.nodes.length})}):null,(0,q.jsxs)(`div`,{"data-graph-control":!0,className:`absolute right-4 top-4 flex flex-col gap-1`,children:[(0,q.jsx)(M,{variant:`ghost`,iconOnly:(0,q.jsx)(ee,{}),onClick:()=>Oe(1.25),"aria-label":u(`conceptGraphView.zoomInAriaLabel`),tooltip:u(`conceptGraphView.zoomInAriaLabel`)}),(0,q.jsx)(M,{variant:`ghost`,iconOnly:(0,q.jsx)(y,{}),onClick:()=>Oe(.8),"aria-label":u(`conceptGraphView.zoomOutAriaLabel`),tooltip:u(`conceptGraphView.zoomOutAriaLabel`)}),(0,q.jsx)(M,{variant:`ghost`,iconOnly:(0,q.jsx)(l,{}),onClick:Ee,"aria-label":u(`conceptGraphView.resetViewAriaLabel`),tooltip:u(`conceptGraphView.resetViewAriaLabel`)})]})]}):(0,q.jsx)(me,{title:u(`conceptGraphView.emptyTitle`),detail:u(`conceptGraphView.emptyDetail`)}),(0,q.jsxs)(`div`,{className:`@container flex select-none flex-col overflow-hidden rounded-xl ${t??``}`,style:{backgroundColor:`var(--surface-base)`},children:[Et?(0,q.jsxs)(`div`,{className:`flex h-12 flex-none items-center gap-2 px-3`,style:{borderBottom:`1px solid var(--border-base)`},children:[i?(0,q.jsx)(M,{variant:`ghost`,iconOnly:n?(0,q.jsx)(d,{}):(0,q.jsx)(x,{}),onClick:i,"aria-label":u(n?`conceptGraphView.exitFullscreenAriaLabel`:`conceptGraphView.enterFullscreenAriaLabel`),tooltip:u(n?`conceptGraphView.exitFullscreenAriaLabel`:`conceptGraphView.enterFullscreenAriaLabel`)}):null,Tt?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsx)(M,{variant:`ghost`,iconOnly:(0,q.jsx)(g,{}),onClick:()=>W(!0),"aria-label":u(`conceptGraphView.searchConceptsAriaLabel`),tooltip:u(`conceptGraphView.searchConceptsAriaLabel`),className:U?`hidden`:`@2xl:hidden`}),(0,q.jsxs)(`div`,{className:`relative ${U?``:`hidden @2xl:block`}`,children:[(0,q.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,q.jsx)(g,{size:14,"aria-hidden":!0,style:{color:`var(--content-tertiary)`}}),(0,q.jsx)(`input`,{ref:de,type:`text`,value:V,onChange:e=>{let t=e.target.value;t.trim()&&!G.current&&(B(`search`),G.current=!0),H(t)},onKeyDown:e=>{e.key===`Escape`?(V||U)&&(e.preventDefault(),e.stopPropagation(),H(``),W(!1)):e.key===`Enter`&&he.length>0&&(e.preventDefault(),Z(he[0].id))},placeholder:u(`conceptGraphView.searchConceptsPlaceholder`),"aria-label":u(`conceptGraphView.searchConceptsAriaLabel`),className:`w-36 bg-transparent text-[12px] outline-none placeholder:text-[var(--content-tertiary)]`,style:{color:`var(--content-default)`}}),V?(0,q.jsx)(`span`,{className:`text-[11px] tabular-nums`,style:{color:`var(--content-tertiary)`},children:K?.size??0}):null,V||U?(0,q.jsx)(`button`,{type:`button`,onClick:()=>{H(``),W(!1)},"aria-label":u(`conceptGraphView.clearSearchAriaLabel`),className:`flex items-center`,style:{color:`var(--content-tertiary)`},children:(0,q.jsx)(v,{size:13})}):null]}),V&&he.length>0?(0,q.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:he.map(e=>(0,q.jsx)(`li`,{children:(0,q.jsx)(`button`,{type:`button`,onClick:()=>{Q({id:e.id,label:e.label,updatedAtMs:e.updatedAtMs}),H(``),W(!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,q.jsx)(`div`,{className:`pointer-events-none mx-auto min-w-0`,children:wt?(0,q.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:wt}):b&&!yt&&!U?(0,q.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,q.jsxs)(`span`,{className:`@max-md:hidden`,children:[Ct(bt,`neuron`),` · `,Ct(xt,`synapse`),` ·`,` `,Ct(St,`lobe`)]}),(0,q.jsxs)(`span`,{className:`hidden @max-md:inline`,children:[bt,` · `,xt,` · `,St]})]}):null}),s?(0,q.jsx)(`div`,{className:`flex-none`,children:s}):null]}):null,(0,q.jsxs)(`div`,{ref:f,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:b?`grab`:`default`},onPointerDown:b?ft:void 0,onPointerMove:b?pt:void 0,onPointerUp:b?mt:void 0,onPointerCancel:b?mt:void 0,onPointerLeave:b?ht:void 0,children:[yt?(0,q.jsx)(Te,{onDismiss:ue}):null,Dt,b&&I?(0,q.jsx)(we,{assistantId:e,node:I,trail:P,neighbors:Le,onTravel:Ie,onCrumb:Ne,onClose:Me,onOpenThread:o}):null]})]})}async function dt(e,t){let{data:n}=await ae({path:{assistant_id:e},body:{content:t},throwOnError:!0});return n}function ft({open:e,onOpenChange:t,assistantId:n,onCreated:r}){let{t:o}=a(`intelligence`),s=i(),[c,l]=(0,R.useState)(``),[u,d]=(0,R.useState)(!1),f=(0,R.useCallback)(async()=>{let e=c.trim();if(e){d(!0);try{let i=await dt(n,e);if(!i.success){D.error(i.message||o(`createMemoryModal.saveError`));return}D.success(i.pendingNodeId?o(`createMemoryModal.savedFoundToast`):o(`createMemoryModal.savedPendingToast`)),l(``),t(!1),r?.(i.pendingNodeId),await Promise.all([s.invalidateQueries({queryKey:te(n).queryKey}),s.invalidateQueries({queryKey:E(n).queryKey})])}catch(e){let t=e instanceof Error?e.message:o(`createMemoryModal.createError`);D.error(t)}finally{d(!1)}}},[n,c,t,r,s,o]);return(0,q.jsx)(k.Root,{open:e,onOpenChange:t,children:(0,q.jsxs)(k.Content,{size:`sm`,children:[(0,q.jsx)(k.Header,{children:(0,q.jsx)(k.Title,{children:o(`createMemoryModal.title`)})}),(0,q.jsx)(k.Body,{children:(0,q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,q.jsx)(I,{label:o(`createMemoryModal.contentLabel`),placeholder:o(`createMemoryModal.contentPlaceholder`),value:c,onChange:e=>l(e.target.value),disabled:u,rows:3,fullWidth:!0}),(0,q.jsx)(L,{as:`p`,variant:`body-medium-lighter`,className:`text-(--content-secondary)`,children:o(`createMemoryModal.helperText`)})]})}),(0,q.jsxs)(k.Footer,{children:[(0,q.jsx)(k.Close,{asChild:!0,children:(0,q.jsx)(M,{variant:`outlined`,disabled:u,children:o(`createMemoryModal.cancel`)})}),(0,q.jsx)(M,{variant:`primary`,onClick:f,disabled:u||!c.trim(),leftIcon:u?(0,q.jsx)(S,{className:`animate-spin`}):void 0,children:o(u?`createMemoryModal.creating`:`createMemoryModal.create`)})]})]})})}function pt({onOpenThread:e}){let{t}=a(`intelligence`),n=re(),[i,o]=(0,R.useState)(!1),s=(0,R.useRef)(null),c=r(te(n)),l=r(E(n)),u=c.data?.kind===`ready`&&l.data?.kind===`ready`,d=(0,R.useRef)(!1);return(0,R.useEffect)(()=>{d.current||(d.current=!0,B(`opened`))},[]),(0,q.jsxs)(`div`,{className:`relative flex h-full min-h-0 flex-col`,children:[(0,q.jsx)(ut,{assistantId:n,className:`h-full w-full`,onOpenThread:e,handleRef:s,headerAction:u?(0,q.jsx)(M,{variant:`primary`,size:`compact`,leftIcon:(0,q.jsx)(_,{}),onClick:()=>o(!0),children:t(`memoryPage.createMemory`)}):void 0}),u?(0,q.jsx)(ft,{open:i,onOpenChange:o,assistantId:n,onCreated:e=>{e&&s.current?.focusNode(e)}}):null]})}function mt(){let e=s();return(0,q.jsx)(pt,{onOpenThread:t=>{B(`chat_from_node`),T(e,{prompt:t})}},re())}export{mt as MemoryPageRoute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{I as t,Jn as n,N as r,Zn as i,j as a}from"./vendor-CCI2T82b.js";import{b as o,t as s}from"./react-DPM_L_aA.js";import{Ah as c,Di as l,Ly as u,Wf as d,Xm as f,Y as ee,Yu as p,bd as m,yd as h}from"./index-BHBLeC80.js";var g=e(o(),1),_=class extends Error{status;constructor(e,t){super(t),this.name=`SimulateMemoryRouterError`,this.status=e}};async function v(e,t,n){let{data:r,response:i}=await c({path:{assistant_id:e},body:t,signal:n,throwOnError:!1}),a=i?await i.clone().text().catch(()=>``):``;if(!i||!i.ok)throw new _(i?.status??0,a||i?.statusText||`Failed to simulate memory router`);if(!r)throw new _(i.status,`Empty response from memory router simulator endpoint`);return{response:r,rawRequest:JSON.stringify(t,null,2),rawResponse:y(a)}}function y(e){if(e.length===0)return e;try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function b(e){return n({mutationFn:async t=>{if(!e)throw new _(0,`Missing assistantId`);return v(e,t)}})}function x(e){return i({...p({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4})}function S(e){return i({...m({path:{assistant_id:e}}),enabled:!!e,staleTime:1440*60*1e3})}function C(e){return i({...h({path:{assistant_id:e}}),enabled:!!e,staleTime:1/0})}var w=s();function T(){let{t:e}=a(`chat`),t=l(),n=d(),r=f.use.memoryRouterPlayground();return n?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.loading`)}):!t||!r?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.notAvailable`)}):(0,w.jsx)(D,{})}var E={tier1:``,tier2:``,batch:``,profile:``,customPrompt:``};function D(){let{t:e}=a(`chat`),t=ee(),n=b(t),r=b(t),i=x(t),o=S(t),s=C(t),[c,l]=(0,g.useState)(``),[u,d]=(0,g.useState)([{assistantMessage:``,userMessage:``}]),[f,p]=(0,g.useState)(!1);(0,g.useEffect)(()=>{if(f)return;let e=s.data?.nowText;typeof e==`string`&&c===``&&l(e)},[s.data?.nowText,c,f]);let[m,h]=(0,g.useState)(E),[_,v]=(0,g.useState)(E),[y,T]=(0,g.useState)(null),[D,k]=(0,g.useState)(null),M=u[u.length-1].userMessage,P=t=>{let i=t===`A`?m:_,a=t===`A`?T:k,o=t===`A`?n:r;a(null);let s;try{s=O(i)}catch(t){a(t instanceof Error?t.message:e(`memoryRouterPlaygroundPage.invalidOverrideInput`));return}let l=i.profile.trim().length>0?i.profile:void 0,d=i.customPrompt.trim().length>0?i.customPrompt:void 0,f=u.map((e,t)=>t===u.length-1?{...e,userMessage:e.userMessage.trim()}:e);o.mutate({recentTurnPairs:f,nowText:c,...s?{configOverrides:s}:{},...l===void 0?{}:{profileOverride:l},...d===void 0?{}:{routerPromptOverride:d}})},F=()=>{P(`A`),P(`B`)},I=M.trim().length>0,L=I&&!n.isPending,z=I&&!r.isPending;return(0,w.jsx)(`div`,{className:`flex h-full min-h-0 flex-col overflow-y-auto`,children:(0,w.jsxs)(`div`,{className:`mx-auto flex w-full max-w-[1280px] flex-col gap-6 p-6`,children:[(0,w.jsx)(A,{}),(0,w.jsx)(j,{nowText:c,onNowTextChange:e=>{p(!0),l(e)},onReloadNowText:()=>{let e=s.data?.nowText;typeof e==`string`&&(l(e),p(!1))},nowTextLoading:s.isLoading,pairs:u,onPairsChange:d}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,w.jsx)(N,{paneId:`A`,overrides:m,onChange:h,onRun:()=>P(`A`),canRun:L,isRunning:n.isPending,profiles:i.data?.profiles??[],activeProfile:i.data?.activeProfile??null,defaultPromptTemplate:o.data?.template??``}),(0,w.jsx)(N,{paneId:`B`,overrides:_,onChange:v,onRun:()=>P(`B`),canRun:z,isRunning:r.isPending,profiles:i.data?.profiles??[],activeProfile:i.data?.activeProfile??null,defaultPromptTemplate:o.data?.template??``})]}),(0,w.jsx)(`div`,{className:`flex justify-end`,children:(0,w.jsx)(te,{onClick:F,disabled:!I||n.isPending||r.isPending,isRunning:n.isPending||r.isPending})}),(0,w.jsx)(ne,{visible:n.data!==void 0&&r.data!==void 0}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,w.jsx)(R,{paneId:`A`,userMessage:M,mutation:n,otherResult:r.data?.response,validation:y}),(0,w.jsx)(R,{paneId:`B`,userMessage:M,mutation:r,otherResult:n.data?.response,validation:D})]})]})})}function O(e){let t={...k(`tier1_size`,e.tier1),...k(`tier2_size`,e.tier2),...k(`batch_size`,e.batch)};return Object.keys(t).length===0?void 0:t}function k(e,n){let r=n.trim();if(r===``)return{};if(r===`null`)return{[e]:null};let i=Number(r);if(!Number.isInteger(i)||i<1)throw Error(t(`chat:memoryRouterPlaygroundPage.overrideMustBePositiveInteger`,{fieldName:e,value:r}));return{[e]:i}}function A(){let{t:e}=a(`chat`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`h1`,{className:`text-body-large-default`,style:{color:`var(--content-default)`},children:e(`memoryRouterPlaygroundPage.title`)}),(0,w.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:(0,w.jsx)(r,{ns:`chat`,i18nKey:`memoryRouterPlaygroundPage.description`,components:{code:(0,w.jsx)(`code`,{})}})})]})}function j({nowText:e,onNowTextChange:t,onReloadNowText:n,nowTextLoading:r,pairs:i,onPairsChange:o}){let{t:s}=a(`chat`),c=(e,t)=>{o(i.map((n,r)=>r===e?{...n,...t}:n))},l=()=>{o([{assistantMessage:``,userMessage:``},...i])},d=e=>{e!==i.length-1&&o(i.filter((t,n)=>n!==e))};return(0,w.jsx)(u,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:s(`memoryRouterPlaygroundPage.conversationalContextTitle`)}),(0,w.jsx)(M,{id:`memory-router-playground-now`,label:s(`memoryRouterPlaygroundPage.nowBlockLabel`),value:e,onChange:t,rows:6,monospace:!0,placeholder:s(r?`memoryRouterPlaygroundPage.nowLoadingPlaceholder`:`memoryRouterPlaygroundPage.nowDefaultPlaceholder`),trailing:(0,w.jsx)(`button`,{type:`button`,onClick:n,disabled:r,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r?`not-allowed`:`pointer`},children:s(`memoryRouterPlaygroundPage.reloadNowButton`)})}),(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:s(`memoryRouterPlaygroundPage.recentPairsLabel`)}),(0,w.jsx)(`button`,{type:`button`,onClick:l,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:`pointer`},children:s(`memoryRouterPlaygroundPage.addOlderPairButton`)})]}),i.map((e,t)=>{let n=t===i.length-1;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-md border p-3`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`},children:[(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsxs)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:[s(`memoryRouterPlaygroundPage.pairLabel`,{index:t+1,total:i.length}),n?s(`memoryRouterPlaygroundPage.pairMostRecentSuffix`):``]}),!n&&(0,w.jsx)(`button`,{type:`button`,onClick:()=>d(t),className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`transparent`,color:`var(--system-negative-strong)`,border:`none`,cursor:`pointer`},children:s(`memoryRouterPlaygroundPage.removeButton`)})]}),(0,w.jsx)(M,{id:`memory-router-playground-pair-${t}-assistant`,label:s(`memoryRouterPlaygroundPage.assistantReplyLabel`),value:e.assistantMessage,onChange:e=>c(t,{assistantMessage:e}),rows:3,placeholder:t===0&&i.length===1?s(`memoryRouterPlaygroundPage.firstTurnAssistantPlaceholder`):s(`memoryRouterPlaygroundPage.assistantReplyPlaceholder`)}),(0,w.jsx)(M,{id:`memory-router-playground-pair-${t}-user`,label:s(n?`memoryRouterPlaygroundPage.justArrivedUserLabel`:`memoryRouterPlaygroundPage.userMessageLabel`),value:e.userMessage,onChange:e=>c(t,{userMessage:e}),rows:3,placeholder:s(n?`memoryRouterPlaygroundPage.lastUserPlaceholder`:`memoryRouterPlaygroundPage.userMessagePlaceholder`),required:n})]},t)})]})})}function M({id:e,label:t,value:n,onChange:r,rows:i,placeholder:a,monospace:o,trailing:s,required:c}){return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,w.jsxs)(`label`,{htmlFor:e,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:[t,c?` *`:``]}),s]}),(0,w.jsx)(`textarea`,{id:e,value:n,onChange:e=>r(e.target.value),rows:i,placeholder:a,className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,resize:`vertical`,...o?{fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`}:{}}})]})}function N({paneId:e,overrides:t,onChange:n,onRun:r,canRun:i,isRunning:o,profiles:s,activeProfile:c,defaultPromptTemplate:l}){let{t:d}=a(`chat`);return(0,w.jsx)(u,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,w.jsx)(`div`,{className:`text-body-medium-default`,style:{color:X(e)},children:d(`memoryRouterPlaygroundPage.configTitle`,{paneId:e})}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-3`,children:[(0,w.jsx)(I,{paneId:e,label:`tier1_size`,value:t.tier1,onChange:e=>n({...t,tier1:e})}),(0,w.jsx)(I,{paneId:e,label:`tier2_size`,value:t.tier2,onChange:e=>n({...t,tier2:e})}),(0,w.jsx)(I,{paneId:e,label:`batch_size`,value:t.batch,onChange:e=>n({...t,batch:e})})]}),(0,w.jsx)(F,{paneId:e,value:t.profile,onChange:e=>n({...t,profile:e}),profiles:s,activeProfile:c}),(0,w.jsx)(P,{paneId:e,value:t.customPrompt,onChange:e=>n({...t,customPrompt:e}),defaultTemplate:l}),(0,w.jsx)(`div`,{className:`flex justify-end`,children:(0,w.jsx)(`button`,{type:`button`,onClick: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?d(`memoryRouterPlaygroundPage.running`):d(`memoryRouterPlaygroundPage.runPane`,{paneId:e})})})]})})}function P({paneId:e,value:t,onChange:n,defaultTemplate:r}){let{t:i}=a(`chat`),[o,s]=(0,g.useState)(!1),c=`memory-router-playground-${e}-prompt`,l=t.trim().length>0;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,w.jsxs)(`button`,{type:`button`,onClick:()=>s(e=>!e),className:`text-label-medium-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[o?`▾`:`▸`,` `,i(`memoryRouterPlaygroundPage.systemPrompt`),` `,(0,w.jsxs)(`span`,{style:{color:`var(--content-tertiary)`},children:[`(`,i(l?`memoryRouterPlaygroundPage.promptModeCustom`:`memoryRouterPlaygroundPage.promptModeBundled`),`)`]})]}),o&&(0,w.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,w.jsx)(`button`,{type:`button`,onClick:()=>n(r),disabled:r.length===0,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r.length===0?`not-allowed`:`pointer`},children:i(`memoryRouterPlaygroundPage.loadDefault`)}),(0,w.jsx)(`button`,{type:`button`,onClick:()=>n(``),disabled:!l,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:l?`pointer`:`not-allowed`},children:i(`memoryRouterPlaygroundPage.reset`)})]})]}),o&&(0,w.jsx)(`textarea`,{id:c,value:t,onChange:e=>n(e.target.value),rows:12,placeholder:i(`memoryRouterPlaygroundPage.customPromptPlaceholder`),className:`rounded-md border px-3 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`,resize:`vertical`,minHeight:`120px`}})]})}function F({paneId:e,value:t,onChange:n,profiles:r,activeProfile:i}){let{t:o}=a(`chat`),s=`memory-router-playground-${e}-profile`,c=i!==null&&i.length>0?o(`memoryRouterPlaygroundPage.inheritActiveWithProfile`,{profile:i}):o(`memoryRouterPlaygroundPage.inheritActive`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`label`,{htmlFor:s,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:o(`memoryRouterPlaygroundPage.llmProfilesOverride`)}),(0,w.jsxs)(`select`,{id:s,value:t,onChange:e=>n(e.target.value),className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`},children:[(0,w.jsx)(`option`,{value:``,children:c}),r.map(e=>(0,w.jsx)(`option`,{value:e,children:e},e))]})]})}function I({paneId:e,label:t,value:n,onChange:r}){let{t:i}=a(`chat`),o=`memory-router-playground-${e}-${t}`;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`label`,{htmlFor:o,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:t}),(0,w.jsx)(`input`,{id:o,value:n,onChange:e=>r(e.target.value),placeholder:i(`memoryRouterPlaygroundPage.inheritPlaceholder`),className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`}})]})}function te({onClick:e,disabled:t,isRunning:n}){let{t:r}=a(`chat`);return(0,w.jsx)(`button`,{type:`button`,onClick:e,disabled:t,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:t?`var(--surface-overlay)`:`var(--primary-base)`,color:t?`var(--content-disabled)`:`var(--content-on-primary)`,border:`none`,cursor:t?`not-allowed`:`pointer`},children:r(n?`memoryRouterPlaygroundPage.running`:`memoryRouterPlaygroundPage.runBoth`)})}function ne({visible:e}){let{t}=a(`chat`);return e?(0,w.jsxs)(`div`,{className:`flex flex-wrap items-center gap-4 rounded-md px-4 py-2 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`},children:[(0,w.jsx)(L,{marker:`●`,markerColor:`var(--content-default)`,label:t(`memoryRouterPlaygroundPage.legendInBoth`)}),(0,w.jsx)(L,{marker:`◆`,markerColor:X(`A`),label:t(`memoryRouterPlaygroundPage.legendAOnly`)}),(0,w.jsx)(L,{marker:`◇`,markerColor:X(`B`),label:t(`memoryRouterPlaygroundPage.legendBOnly`)})]}):null}function L({marker:e,markerColor:t,label:n}){return(0,w.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,w.jsx)(`span`,{style:{color:t},children:e}),(0,w.jsx)(`span`,{children:n})]})}function R({paneId:e,userMessage:t,mutation:n,otherResult:r,validation:i}){let{t:o}=a(`chat`),s=n.data;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,w.jsx)(V,{paneId:e}),i!==null&&(0,w.jsx)(Q,{message:i}),n.isError&&(0,w.jsx)(Q,{message:n.error instanceof Error?n.error.message:o(`memoryRouterPlaygroundPage.failedToRunSimulation`)}),s!==void 0&&(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(H,{paneId:e,userMessage:t,result:s.response,otherResult:r}),(0,w.jsx)(z,{paneId:e,rawRequest:s.rawRequest,rawResponse:s.rawResponse})]})]})}function z({paneId:e,rawRequest:t,rawResponse:n}){let{t:r}=a(`chat`),[i,o]=(0,g.useState)(!1);return(0,w.jsx)(u,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,w.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`text-label-medium-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[i?`▾`:`▸`,` `,r(`memoryRouterPlaygroundPage.rawApiExchange`)]}),i&&(0,w.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,w.jsx)(B,{label:r(`memoryRouterPlaygroundPage.requestLabel`,{paneId:e}),body:t}),(0,w.jsx)(B,{label:r(`memoryRouterPlaygroundPage.responseLabel`,{paneId:e}),body:n})]})]})})}function B({label:e,body:t}){let{t:n}=a(`chat`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:e}),(0,w.jsx)(`pre`,{className:`overflow-auto rounded-md border px-3 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`,maxHeight:`320px`,whiteSpace:`pre`},children:t.length===0?n(`memoryRouterPlaygroundPage.empty`):t})]})}function V({paneId:e}){let{t}=a(`chat`);return(0,w.jsx)(`div`,{className:`text-body-medium-default`,style:{color:X(e)},children:t(`memoryRouterPlaygroundPage.paneTitle`,{paneId:e})})}function H({paneId:e,userMessage:t,result:n,otherResult:r}){let{t:i}=a(`chat`),o=(0,g.useMemo)(()=>U(n,r),[n,r]),s=(0,g.useMemo)(()=>q(n),[n]);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,w.jsx)(G,{result:n,userMessage:t,otherResult:r,counts:(0,g.useMemo)(()=>W(o),[o])}),(0,w.jsx)(K,{result:n}),n.failureReason!==null&&(0,w.jsx)(Q,{message:i(`memoryRouterPlaygroundPage.routerFailure`,{reason:n.failureReason})}),s.length===0?(0,w.jsx)(ae,{}):s.map(t=>(0,w.jsx)(ie,{paneId:e,source:t.source,slugs:t.slugs,scores:n.scores,diff:o},t.source))]})}function U(e,t){let n=new Map;if(t===void 0){for(let t of e.selectedSlugs)n.set(t,`both`);return n}let r=new Set(t.selectedSlugs);for(let t of e.selectedSlugs)n.set(t,r.has(t)?`both`:`only-here`);return n}function W(e){let t=0,n=0;for(let r of e.values())r===`both`?t++:n++;return{total:e.size,shared:t,unique:n}}function G({result:e,userMessage:t,otherResult:n,counts:r}){let{t:i}=a(`chat`),o=[{label:i(`memoryRouterPlaygroundPage.summaryUserMessageLabel`),value:t},{label:i(`memoryRouterPlaygroundPage.totalCandidatePagesLabel`),value:e.totalCandidatePages.toLocaleString()},{label:i(`memoryRouterPlaygroundPage.selectedLabel`),value:i(`memoryRouterPlaygroundPage.selectedValue`,{count:e.selectedSlugs.length,maxPageIds:e.effectiveConfig.max_page_ids})}];return n!==void 0&&o.push({label:i(`memoryRouterPlaygroundPage.diffLabel`),value:i(`memoryRouterPlaygroundPage.diffValue`,{shared:r.shared,unique:r.unique})}),(0,w.jsx)(u,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:i(`memoryRouterPlaygroundPage.summary`)}),(0,w.jsx)(Z,{rows:o})]})})}function K({result:e}){let{t}=a(`chat`),n=[`tier1_size`,`tier2_size`,`batch_size`,`max_page_ids`].map(n=>{let r=e.effectiveConfig[n],i=e.overrides[n];return{label:n,value:`${r===null?t(`memoryRouterPlaygroundPage.nullValue`):String(r)}${i===void 0?``:t(`memoryRouterPlaygroundPage.overrideSuffix`)}`}});return n.push({label:t(`memoryRouterPlaygroundPage.llmProfilesOverride`),value:e.profileOverride===null?t(`memoryRouterPlaygroundPage.inheritActive`):`${e.profileOverride}${t(`memoryRouterPlaygroundPage.overrideSuffix`)}`}),n.push({label:t(`memoryRouterPlaygroundPage.systemPromptConfigLabel`),value:e.routerPromptOverridden?t(`memoryRouterPlaygroundPage.promptModeCustom`):t(`memoryRouterPlaygroundPage.promptModeBundled`)}),(0,w.jsx)(u,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:t(`memoryRouterPlaygroundPage.effectiveConfig`)}),(0,w.jsx)(Z,{rows:n})]})})}function q(e){let t=new Map;for(let n of e.selectedSlugs){let r=e.sourceBySlug[n];if(r===void 0)continue;let i=t.get(r)??[];i.push(n),t.set(r,i)}return[...t.keys()].sort((e,t)=>J(e)-J(t)).map(e=>({source:e,slugs:t.get(e)}))}function J(e){return e===`tier1`?0:e===`tier2`?1:e.startsWith(`tier3:`)?2+Number(e.slice(6)):2**53-1}function Y(e,t){return e===`tier1`?t(`memoryRouterPlaygroundPage.tier1Label`):e===`tier2`?t(`memoryRouterPlaygroundPage.tier2Label`):e.startsWith(`tier3:`)?t(`memoryRouterPlaygroundPage.tier3Label`,{batch:e.slice(6)}):e}function X(e){return e===`A`?`var(--system-mid-strong)`:`var(--primary-base)`}function re(e,t){return t===`both`?{color:`var(--content-default)`,marker:`●`}:{color:X(e),marker:e===`A`?`◆`:`◇`}}function ie({paneId:e,source:t,slugs:n,scores:r,diff:i}){let{t:o}=a(`chat`);return(0,w.jsx)(u,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:Y(t,o)}),(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:o(`memoryRouterPlaygroundPage.pageCount`,{count:n.length})})]}),(0,w.jsx)(`ul`,{className:`flex flex-col gap-1`,children:n.map(n=>{let{color:a,marker:s}=re(e,i.get(n)??`only-here`);return(0,w.jsxs)(`li`,{className:`flex items-baseline justify-between gap-3`,children:[(0,w.jsxs)(`span`,{className:`flex items-baseline gap-2`,children:[(0,w.jsx)(`span`,{style:{color:a},children:s}),(0,w.jsx)(`code`,{className:`text-body-medium-default`,style:{color:a},children:n})]}),t===`tier2`&&(0,w.jsx)(`span`,{className:`tabular-nums text-label-medium-default`,style:{color:`var(--content-secondary)`},children:o(`memoryRouterPlaygroundPage.emaScore`,{score:(r[n]??0).toFixed(3)})})]},n)})})]})})}function ae(){let{t:e}=a(`chat`);return(0,w.jsx)(u,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e(`memoryRouterPlaygroundPage.noPagesSelected`)}),(0,w.jsx)(`span`,{className:`text-body-small-lighter`,style:{color:`var(--content-secondary)`},children:e(`memoryRouterPlaygroundPage.emptySelectionHint`)})]})})}function Z({rows:e}){return(0,w.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map(({label:e,value:t})=>(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,w.jsx)(`span`,{className:`shrink-0 text-label-medium-default`,style:{color:`var(--content-secondary)`},children:e}),(0,w.jsx)(`span`,{className:`text-right text-body-medium-lighter`,style:{color:`var(--content-default)`},children:t})]},e))})}function Q({message:e}){return(0,w.jsx)(`div`,{className:`rounded-md px-4 py-3 text-body-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--system-negative-strong)`},children:e})}function $({children:e}){return(0,w.jsx)(`div`,{className:`flex h-full w-full items-center justify-center p-8 text-label-medium-default`,style:{color:`var(--content-tertiary)`},children:e})}export{T as MemoryRouterPlaygroundPage};
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{I as t,Jn as n,N as r,Zn as i,j as a}from"./vendor-CV8wawxx.js";import{b as o,t as s}from"./react-DPM_L_aA.js";import{Ai as c,Kh as l,Md as u,Nd as d,Q as f,dh as p,eb as m,rp as h,sd as g}from"./index-jpjzZb6b.js";var _=e(o(),1),v=class extends Error{status;constructor(e,t){super(t),this.name=`SimulateMemoryRouterError`,this.status=e}};async function y(e,t,n){let{data:r,response:i}=await l({path:{assistant_id:e},body:t,signal:n,throwOnError:!1}),a=i?await i.clone().text().catch(()=>``):``;if(!i||!i.ok)throw new v(i?.status??0,a||i?.statusText||`Failed to simulate memory router`);if(!r)throw new v(i.status,`Empty response from memory router simulator endpoint`);return{response:r,rawRequest:JSON.stringify(t,null,2),rawResponse:b(a)}}function b(e){if(e.length===0)return e;try{return JSON.stringify(JSON.parse(e),null,2)}catch{return e}}function x(e){return n({mutationFn:async t=>{if(!e)throw new v(0,`Missing assistantId`);return y(e,t)}})}function S(e){return i({...g({path:{assistant_id:e}}),enabled:!!e,staleTime:6e4})}function ee(e){return i({...d({path:{assistant_id:e}}),enabled:!!e,staleTime:1440*60*1e3})}function C(e){return i({...u({path:{assistant_id:e}}),enabled:!!e,staleTime:1/0})}var w=s();function T(){let{t:e}=a(`chat`),t=c(),n=h(),r=p.use.memoryRouterPlayground();return n?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.loading`)}):!t||!r?(0,w.jsx)($,{children:e(`memoryRouterPlaygroundPage.notAvailable`)}):(0,w.jsx)(D,{})}var E={tier1:``,tier2:``,batch:``,profile:``,customPrompt:``};function D(){let{t:e}=a(`chat`),t=f(),n=x(t),r=x(t),i=S(t),o=ee(t),s=C(t),[c,l]=(0,_.useState)(``),[u,d]=(0,_.useState)([{assistantMessage:``,userMessage:``}]),[p,m]=(0,_.useState)(!1);(0,_.useEffect)(()=>{if(p)return;let e=s.data?.nowText;typeof e==`string`&&c===``&&l(e)},[s.data?.nowText,c,p]);let[h,g]=(0,_.useState)(E),[v,y]=(0,_.useState)(E),[b,T]=(0,_.useState)(null),[D,k]=(0,_.useState)(null),M=u[u.length-1].userMessage,P=t=>{let i=t===`A`?h:v,a=t===`A`?T:k,o=t===`A`?n:r;a(null);let s;try{s=O(i)}catch(t){a(t instanceof Error?t.message:e(`memoryRouterPlaygroundPage.invalidOverrideInput`));return}let l=i.profile.trim().length>0?i.profile:void 0,d=i.customPrompt.trim().length>0?i.customPrompt:void 0,f=u.map((e,t)=>t===u.length-1?{...e,userMessage:e.userMessage.trim()}:e);o.mutate({recentTurnPairs:f,nowText:c,...s?{configOverrides:s}:{},...l===void 0?{}:{profileOverride:l},...d===void 0?{}:{routerPromptOverride:d}})},F=()=>{P(`A`),P(`B`)},I=M.trim().length>0,L=I&&!n.isPending,z=I&&!r.isPending;return(0,w.jsx)(`div`,{className:`flex h-full min-h-0 flex-col overflow-y-auto`,children:(0,w.jsxs)(`div`,{className:`mx-auto flex w-full max-w-[1280px] flex-col gap-6 p-6`,children:[(0,w.jsx)(A,{}),(0,w.jsx)(j,{nowText:c,onNowTextChange:e=>{m(!0),l(e)},onReloadNowText:()=>{let e=s.data?.nowText;typeof e==`string`&&(l(e),m(!1))},nowTextLoading:s.isLoading,pairs:u,onPairsChange:d}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,w.jsx)(N,{paneId:`A`,overrides:h,onChange:g,onRun:()=>P(`A`),canRun:L,isRunning:n.isPending,profiles:i.data?.profiles??[],activeProfile:i.data?.activeProfile??null,defaultPromptTemplate:o.data?.template??``}),(0,w.jsx)(N,{paneId:`B`,overrides:v,onChange:y,onRun:()=>P(`B`),canRun:z,isRunning:r.isPending,profiles:i.data?.profiles??[],activeProfile:i.data?.activeProfile??null,defaultPromptTemplate:o.data?.template??``})]}),(0,w.jsx)(`div`,{className:`flex justify-end`,children:(0,w.jsx)(te,{onClick:F,disabled:!I||n.isPending||r.isPending,isRunning:n.isPending||r.isPending})}),(0,w.jsx)(ne,{visible:n.data!==void 0&&r.data!==void 0}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 lg:grid-cols-2`,children:[(0,w.jsx)(R,{paneId:`A`,userMessage:M,mutation:n,otherResult:r.data?.response,validation:b}),(0,w.jsx)(R,{paneId:`B`,userMessage:M,mutation:r,otherResult:n.data?.response,validation:D})]})]})})}function O(e){let t={...k(`tier1_size`,e.tier1),...k(`tier2_size`,e.tier2),...k(`batch_size`,e.batch)};return Object.keys(t).length===0?void 0:t}function k(e,n){let r=n.trim();if(r===``)return{};if(r===`null`)return{[e]:null};let i=Number(r);if(!Number.isInteger(i)||i<1)throw Error(t(`chat:memoryRouterPlaygroundPage.overrideMustBePositiveInteger`,{fieldName:e,value:r}));return{[e]:i}}function A(){let{t:e}=a(`chat`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`h1`,{className:`text-body-large-default`,style:{color:`var(--content-default)`},children:e(`memoryRouterPlaygroundPage.title`)}),(0,w.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-secondary)`},children:(0,w.jsx)(r,{ns:`chat`,i18nKey:`memoryRouterPlaygroundPage.description`,components:{code:(0,w.jsx)(`code`,{})}})})]})}function j({nowText:e,onNowTextChange:t,onReloadNowText:n,nowTextLoading:r,pairs:i,onPairsChange:o}){let{t:s}=a(`chat`),c=(e,t)=>{o(i.map((n,r)=>r===e?{...n,...t}:n))},l=()=>{o([{assistantMessage:``,userMessage:``},...i])},u=e=>{e!==i.length-1&&o(i.filter((t,n)=>n!==e))};return(0,w.jsx)(m,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:s(`memoryRouterPlaygroundPage.conversationalContextTitle`)}),(0,w.jsx)(M,{id:`memory-router-playground-now`,label:s(`memoryRouterPlaygroundPage.nowBlockLabel`),value:e,onChange:t,rows:6,monospace:!0,placeholder:s(r?`memoryRouterPlaygroundPage.nowLoadingPlaceholder`:`memoryRouterPlaygroundPage.nowDefaultPlaceholder`),trailing:(0,w.jsx)(`button`,{type:`button`,onClick:n,disabled:r,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r?`not-allowed`:`pointer`},children:s(`memoryRouterPlaygroundPage.reloadNowButton`)})}),(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:s(`memoryRouterPlaygroundPage.recentPairsLabel`)}),(0,w.jsx)(`button`,{type:`button`,onClick:l,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:`pointer`},children:s(`memoryRouterPlaygroundPage.addOlderPairButton`)})]}),i.map((e,t)=>{let n=t===i.length-1;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 rounded-md border p-3`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`},children:[(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsxs)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:[s(`memoryRouterPlaygroundPage.pairLabel`,{index:t+1,total:i.length}),n?s(`memoryRouterPlaygroundPage.pairMostRecentSuffix`):``]}),!n&&(0,w.jsx)(`button`,{type:`button`,onClick:()=>u(t),className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`transparent`,color:`var(--system-negative-strong)`,border:`none`,cursor:`pointer`},children:s(`memoryRouterPlaygroundPage.removeButton`)})]}),(0,w.jsx)(M,{id:`memory-router-playground-pair-${t}-assistant`,label:s(`memoryRouterPlaygroundPage.assistantReplyLabel`),value:e.assistantMessage,onChange:e=>c(t,{assistantMessage:e}),rows:3,placeholder:t===0&&i.length===1?s(`memoryRouterPlaygroundPage.firstTurnAssistantPlaceholder`):s(`memoryRouterPlaygroundPage.assistantReplyPlaceholder`)}),(0,w.jsx)(M,{id:`memory-router-playground-pair-${t}-user`,label:s(n?`memoryRouterPlaygroundPage.justArrivedUserLabel`:`memoryRouterPlaygroundPage.userMessageLabel`),value:e.userMessage,onChange:e=>c(t,{userMessage:e}),rows:3,placeholder:s(n?`memoryRouterPlaygroundPage.lastUserPlaceholder`:`memoryRouterPlaygroundPage.userMessagePlaceholder`),required:n})]},t)})]})})}function M({id:e,label:t,value:n,onChange:r,rows:i,placeholder:a,monospace:o,trailing:s,required:c}){return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,w.jsxs)(`label`,{htmlFor:e,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:[t,c?` *`:``]}),s]}),(0,w.jsx)(`textarea`,{id:e,value:n,onChange:e=>r(e.target.value),rows:i,placeholder:a,className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,resize:`vertical`,...o?{fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`}:{}}})]})}function N({paneId:e,overrides:t,onChange:n,onRun:r,canRun:i,isRunning:o,profiles:s,activeProfile:c,defaultPromptTemplate:l}){let{t:u}=a(`chat`);return(0,w.jsx)(m,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-4 p-4`,children:[(0,w.jsx)(`div`,{className:`text-body-medium-default`,style:{color:X(e)},children:u(`memoryRouterPlaygroundPage.configTitle`,{paneId:e})}),(0,w.jsxs)(`div`,{className:`grid grid-cols-1 gap-3 sm:grid-cols-3`,children:[(0,w.jsx)(I,{paneId:e,label:`tier1_size`,value:t.tier1,onChange:e=>n({...t,tier1:e})}),(0,w.jsx)(I,{paneId:e,label:`tier2_size`,value:t.tier2,onChange:e=>n({...t,tier2:e})}),(0,w.jsx)(I,{paneId:e,label:`batch_size`,value:t.batch,onChange:e=>n({...t,batch:e})})]}),(0,w.jsx)(F,{paneId:e,value:t.profile,onChange:e=>n({...t,profile:e}),profiles:s,activeProfile:c}),(0,w.jsx)(P,{paneId:e,value:t.customPrompt,onChange:e=>n({...t,customPrompt:e}),defaultTemplate:l}),(0,w.jsx)(`div`,{className:`flex justify-end`,children:(0,w.jsx)(`button`,{type:`button`,onClick: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?u(`memoryRouterPlaygroundPage.running`):u(`memoryRouterPlaygroundPage.runPane`,{paneId:e})})})]})})}function P({paneId:e,value:t,onChange:n,defaultTemplate:r}){let{t:i}=a(`chat`),[o,s]=(0,_.useState)(!1),c=`memory-router-playground-${e}-prompt`,l=t.trim().length>0;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,w.jsxs)(`button`,{type:`button`,onClick:()=>s(e=>!e),className:`text-label-medium-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[o?`▾`:`▸`,` `,i(`memoryRouterPlaygroundPage.systemPrompt`),` `,(0,w.jsxs)(`span`,{style:{color:`var(--content-tertiary)`},children:[`(`,i(l?`memoryRouterPlaygroundPage.promptModeCustom`:`memoryRouterPlaygroundPage.promptModeBundled`),`)`]})]}),o&&(0,w.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,w.jsx)(`button`,{type:`button`,onClick:()=>n(r),disabled:r.length===0,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:r.length===0?`not-allowed`:`pointer`},children:i(`memoryRouterPlaygroundPage.loadDefault`)}),(0,w.jsx)(`button`,{type:`button`,onClick:()=>n(``),disabled:!l,className:`rounded px-2 py-1 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`,border:`none`,cursor:l?`pointer`:`not-allowed`},children:i(`memoryRouterPlaygroundPage.reset`)})]})]}),o&&(0,w.jsx)(`textarea`,{id:c,value:t,onChange:e=>n(e.target.value),rows:12,placeholder:i(`memoryRouterPlaygroundPage.customPromptPlaceholder`),className:`rounded-md border px-3 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`,resize:`vertical`,minHeight:`120px`}})]})}function F({paneId:e,value:t,onChange:n,profiles:r,activeProfile:i}){let{t:o}=a(`chat`),s=`memory-router-playground-${e}-profile`,c=i!==null&&i.length>0?o(`memoryRouterPlaygroundPage.inheritActiveWithProfile`,{profile:i}):o(`memoryRouterPlaygroundPage.inheritActive`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`label`,{htmlFor:s,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:o(`memoryRouterPlaygroundPage.llmProfilesOverride`)}),(0,w.jsxs)(`select`,{id:s,value:t,onChange:e=>n(e.target.value),className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`},children:[(0,w.jsx)(`option`,{value:``,children:c}),r.map(e=>(0,w.jsx)(`option`,{value:e,children:e},e))]})]})}function I({paneId:e,label:t,value:n,onChange:r}){let{t:i}=a(`chat`),o=`memory-router-playground-${e}-${t}`;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`label`,{htmlFor:o,className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:t}),(0,w.jsx)(`input`,{id:o,value:n,onChange:e=>r(e.target.value),placeholder:i(`memoryRouterPlaygroundPage.inheritPlaceholder`),className:`rounded-md border px-3 py-2 text-body-medium-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`}})]})}function te({onClick:e,disabled:t,isRunning:n}){let{t:r}=a(`chat`);return(0,w.jsx)(`button`,{type:`button`,onClick:e,disabled:t,className:`rounded-md px-4 py-2 text-body-medium-default transition-colors`,style:{background:t?`var(--surface-overlay)`:`var(--primary-base)`,color:t?`var(--content-disabled)`:`var(--content-on-primary)`,border:`none`,cursor:t?`not-allowed`:`pointer`},children:r(n?`memoryRouterPlaygroundPage.running`:`memoryRouterPlaygroundPage.runBoth`)})}function ne({visible:e}){let{t}=a(`chat`);return e?(0,w.jsxs)(`div`,{className:`flex flex-wrap items-center gap-4 rounded-md px-4 py-2 text-label-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--content-secondary)`},children:[(0,w.jsx)(L,{marker:`●`,markerColor:`var(--content-default)`,label:t(`memoryRouterPlaygroundPage.legendInBoth`)}),(0,w.jsx)(L,{marker:`◆`,markerColor:X(`A`),label:t(`memoryRouterPlaygroundPage.legendAOnly`)}),(0,w.jsx)(L,{marker:`◇`,markerColor:X(`B`),label:t(`memoryRouterPlaygroundPage.legendBOnly`)})]}):null}function L({marker:e,markerColor:t,label:n}){return(0,w.jsxs)(`span`,{className:`flex items-center gap-1`,children:[(0,w.jsx)(`span`,{style:{color:t},children:e}),(0,w.jsx)(`span`,{children:n})]})}function R({paneId:e,userMessage:t,mutation:n,otherResult:r,validation:i}){let{t:o}=a(`chat`),s=n.data;return(0,w.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,w.jsx)(V,{paneId:e}),i!==null&&(0,w.jsx)(Q,{message:i}),n.isError&&(0,w.jsx)(Q,{message:n.error instanceof Error?n.error.message:o(`memoryRouterPlaygroundPage.failedToRunSimulation`)}),s!==void 0&&(0,w.jsxs)(w.Fragment,{children:[(0,w.jsx)(H,{paneId:e,userMessage:t,result:s.response,otherResult:r}),(0,w.jsx)(z,{paneId:e,rawRequest:s.rawRequest,rawResponse:s.rawResponse})]})]})}function z({paneId:e,rawRequest:t,rawResponse:n}){let{t:r}=a(`chat`),[i,o]=(0,_.useState)(!1);return(0,w.jsx)(m,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,w.jsxs)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`text-label-medium-default`,style:{color:`var(--content-secondary)`,background:`transparent`,border:`none`,padding:0,cursor:`pointer`,textAlign:`left`},children:[i?`▾`:`▸`,` `,r(`memoryRouterPlaygroundPage.rawApiExchange`)]}),i&&(0,w.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,w.jsx)(B,{label:r(`memoryRouterPlaygroundPage.requestLabel`,{paneId:e}),body:t}),(0,w.jsx)(B,{label:r(`memoryRouterPlaygroundPage.responseLabel`,{paneId:e}),body:n})]})]})})}function B({label:e,body:t}){let{t:n}=a(`chat`);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:e}),(0,w.jsx)(`pre`,{className:`overflow-auto rounded-md border px-3 py-2 text-body-small-default`,style:{borderColor:`var(--border-base)`,background:`var(--surface-base)`,color:`var(--content-default)`,fontFamily:`ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace`,maxHeight:`320px`,whiteSpace:`pre`},children:t.length===0?n(`memoryRouterPlaygroundPage.empty`):t})]})}function V({paneId:e}){let{t}=a(`chat`);return(0,w.jsx)(`div`,{className:`text-body-medium-default`,style:{color:X(e)},children:t(`memoryRouterPlaygroundPage.paneTitle`,{paneId:e})})}function H({paneId:e,userMessage:t,result:n,otherResult:r}){let{t:i}=a(`chat`),o=(0,_.useMemo)(()=>U(n,r),[n,r]),s=(0,_.useMemo)(()=>q(n),[n]);return(0,w.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,w.jsx)(G,{result:n,userMessage:t,otherResult:r,counts:(0,_.useMemo)(()=>W(o),[o])}),(0,w.jsx)(K,{result:n}),n.failureReason!==null&&(0,w.jsx)(Q,{message:i(`memoryRouterPlaygroundPage.routerFailure`,{reason:n.failureReason})}),s.length===0?(0,w.jsx)(ae,{}):s.map(t=>(0,w.jsx)(ie,{paneId:e,source:t.source,slugs:t.slugs,scores:n.scores,diff:o},t.source))]})}function U(e,t){let n=new Map;if(t===void 0){for(let t of e.selectedSlugs)n.set(t,`both`);return n}let r=new Set(t.selectedSlugs);for(let t of e.selectedSlugs)n.set(t,r.has(t)?`both`:`only-here`);return n}function W(e){let t=0,n=0;for(let r of e.values())r===`both`?t++:n++;return{total:e.size,shared:t,unique:n}}function G({result:e,userMessage:t,otherResult:n,counts:r}){let{t:i}=a(`chat`),o=[{label:i(`memoryRouterPlaygroundPage.summaryUserMessageLabel`),value:t},{label:i(`memoryRouterPlaygroundPage.totalCandidatePagesLabel`),value:e.totalCandidatePages.toLocaleString()},{label:i(`memoryRouterPlaygroundPage.selectedLabel`),value:i(`memoryRouterPlaygroundPage.selectedValue`,{count:e.selectedSlugs.length,maxPageIds:e.effectiveConfig.max_page_ids})}];return n!==void 0&&o.push({label:i(`memoryRouterPlaygroundPage.diffLabel`),value:i(`memoryRouterPlaygroundPage.diffValue`,{shared:r.shared,unique:r.unique})}),(0,w.jsx)(m,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:i(`memoryRouterPlaygroundPage.summary`)}),(0,w.jsx)(Z,{rows:o})]})})}function K({result:e}){let{t}=a(`chat`),n=[`tier1_size`,`tier2_size`,`batch_size`,`max_page_ids`].map(n=>{let r=e.effectiveConfig[n],i=e.overrides[n];return{label:n,value:`${r===null?t(`memoryRouterPlaygroundPage.nullValue`):String(r)}${i===void 0?``:t(`memoryRouterPlaygroundPage.overrideSuffix`)}`}});return n.push({label:t(`memoryRouterPlaygroundPage.llmProfilesOverride`),value:e.profileOverride===null?t(`memoryRouterPlaygroundPage.inheritActive`):`${e.profileOverride}${t(`memoryRouterPlaygroundPage.overrideSuffix`)}`}),n.push({label:t(`memoryRouterPlaygroundPage.systemPromptConfigLabel`),value:e.routerPromptOverridden?t(`memoryRouterPlaygroundPage.promptModeCustom`):t(`memoryRouterPlaygroundPage.promptModeBundled`)}),(0,w.jsx)(m,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:t(`memoryRouterPlaygroundPage.effectiveConfig`)}),(0,w.jsx)(Z,{rows:n})]})})}function q(e){let t=new Map;for(let n of e.selectedSlugs){let r=e.sourceBySlug[n];if(r===void 0)continue;let i=t.get(r)??[];i.push(n),t.set(r,i)}return[...t.keys()].sort((e,t)=>J(e)-J(t)).map(e=>({source:e,slugs:t.get(e)}))}function J(e){return e===`tier1`?0:e===`tier2`?1:e.startsWith(`tier3:`)?2+Number(e.slice(6)):2**53-1}function Y(e,t){return e===`tier1`?t(`memoryRouterPlaygroundPage.tier1Label`):e===`tier2`?t(`memoryRouterPlaygroundPage.tier2Label`):e.startsWith(`tier3:`)?t(`memoryRouterPlaygroundPage.tier3Label`,{batch:e.slice(6)}):e}function X(e){return e===`A`?`var(--system-mid-strong)`:`var(--primary-base)`}function re(e,t){return t===`both`?{color:`var(--content-default)`,marker:`●`}:{color:X(e),marker:e===`A`?`◆`:`◇`}}function ie({paneId:e,source:t,slugs:n,scores:r,diff:i}){let{t:o}=a(`chat`);return(0,w.jsx)(m,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:Y(t,o)}),(0,w.jsx)(`span`,{className:`text-label-medium-default`,style:{color:`var(--content-secondary)`},children:o(`memoryRouterPlaygroundPage.pageCount`,{count:n.length})})]}),(0,w.jsx)(`ul`,{className:`flex flex-col gap-1`,children:n.map(n=>{let{color:a,marker:s}=re(e,i.get(n)??`only-here`);return(0,w.jsxs)(`li`,{className:`flex items-baseline justify-between gap-3`,children:[(0,w.jsxs)(`span`,{className:`flex items-baseline gap-2`,children:[(0,w.jsx)(`span`,{style:{color:a},children:s}),(0,w.jsx)(`code`,{className:`text-body-medium-default`,style:{color:a},children:n})]}),t===`tier2`&&(0,w.jsx)(`span`,{className:`tabular-nums text-label-medium-default`,style:{color:`var(--content-secondary)`},children:o(`memoryRouterPlaygroundPage.emaScore`,{score:(r[n]??0).toFixed(3)})})]},n)})})]})})}function ae(){let{t:e}=a(`chat`);return(0,w.jsx)(m,{children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-2 p-4`,children:[(0,w.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e(`memoryRouterPlaygroundPage.noPagesSelected`)}),(0,w.jsx)(`span`,{className:`text-body-small-lighter`,style:{color:`var(--content-secondary)`},children:e(`memoryRouterPlaygroundPage.emptySelectionHint`)})]})})}function Z({rows:e}){return(0,w.jsx)(`div`,{className:`flex flex-col gap-2`,children:e.map(({label:e,value:t})=>(0,w.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,w.jsx)(`span`,{className:`shrink-0 text-label-medium-default`,style:{color:`var(--content-secondary)`},children:e}),(0,w.jsx)(`span`,{className:`text-right text-body-medium-lighter`,style:{color:`var(--content-default)`},children:t})]},e))})}function Q({message:e}){return(0,w.jsx)(`div`,{className:`rounded-md px-4 py-3 text-body-medium-default`,style:{background:`var(--surface-overlay)`,color:`var(--system-negative-strong)`},children:e})}function $({children:e}){return(0,w.jsx)(`div`,{className:`flex h-full w-full items-center justify-center p-8 text-label-medium-default`,style:{color:`var(--content-tertiary)`},children:e})}export{T as MemoryRouterPlaygroundPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{j as e}from"./vendor-CV8wawxx.js";import{t}from"./react-DPM_L_aA.js";import{xt as n}from"./icons-J6Mg9wGk.js";import{Ct as r,b as i,v as a,x as o}from"./index-jpjzZb6b.js";import{t as s}from"./use-transcript-message-by-id-8Nt8lSao.js";var c=[];function l(e){let t=s(e);return t?t.attachments??c:null}var u=t();function d({payload:t,onClose:s}){let{t:c}=e(`chat`),{displayAttachments:d,renderSquare:f,previewModal:p}=r({attachments:l(t.messageId)??t.attachments,assistantId:t.assistantId});return(0,u.jsxs)(a,{Glyph:n,titleNode:(0,u.jsx)(o,{title:c(`messageFilesPanel.title`),count:d.length}),closeLabel:c(`messageFilesPanel.closeAria`),onClose:s,children:[d.length===0?(0,u.jsx)(i,{children:c(`messageFilesPanel.empty`)}):(0,u.jsx)(`div`,{className:`flex flex-wrap items-start gap-3`,children:d.map((e,t)=>f(e,t))}),p]})}export{d as MessageFilesPanel};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{f as t}from"./vendor-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{f as t}from"./vendor-CV8wawxx.js";import{b as n,t as r}from"./react-DPM_L_aA.js";import{Ci as i}from"./icons-J6Mg9wGk.js";import{tb as a}from"./index-jpjzZb6b.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(n(),1),c=r();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 n=t(),[r,i]=(0,s.useState)(e),a=(0,s.useRef)(e),o=(0,s.useRef)(e),c=(0,s.useRef)(0);return(0,s.useEffect)(()=>{if(o.current=e,n){cancelAnimationFrame(c.current),c.current=0,a.current=e,i(e);return}if(a.current===e||c.current)return;let t=performance.now(),r=a.current,s=e=>{let n=o.current,l=Math.min((e-t)/300,1),u=1-(1-l)**3;a.current=l>=1?n:r+(n-r)*u,i(a.current),l<1?c.current=requestAnimationFrame(s):c.current=0};c.current=requestAnimationFrame(s)},[e,n]),(0,s.useEffect)(()=>()=>cancelAnimationFrame(c.current),[]),r}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)(a,{variant:`title-small`,className:`block text-[var(--content-default)]`,children:t}),(0,c.jsx)(a,{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"./rolldown-runtime-BM3Ffeng.js";import{E as t,j as n,k as r}from"./vendor-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{E as t,j as n,k as r}from"./vendor-CV8wawxx.js";import{b as i,r as a,t as o}from"./react-DPM_L_aA.js";import{Ci as s,Yn as c}from"./icons-J6Mg9wGk.js";import{Up as l,Xp as u,Yy as d,bo as f,eb as p,nb as m,qv as h,tu as g,yo as _,zv as v}from"./index-jpjzZb6b.js";var y=s(`bell-ring`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M22 8c0-2.3-.8-4.3-2-6`,key:`5bb3ad`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}],[`path`,{d:`M4 2C2.8 3.7 2 5.7 2 8`,key:`tap9e0`}]]),b=e(i(),1),x=r(`AndroidNotificationSettings`);function S(){return l()&&t.isPluginAvailable(`AndroidNotificationSettings`)}async function C(){if(S())try{await x.open()}catch(e){h(e,{context:`android_notification_settings_open`,level:`warning`})}}var w=o();function T(){let{t:e}=n(`settings`),t=S(),[r,i]=(0,b.useState)(null);(0,b.useEffect)(()=>{_().then(i)},[]),g(`app.resume`,({signal:e})=>{e!==`online`&&f().then(i)});let a;switch(r){case`granted`:a={description:e(`androidNotificationSettingsCard.grantedDescription`),label:e(`androidNotificationSettingsCard.grantedLabel`),tone:`positive`};break;case`denied`:a={description:e(`androidNotificationSettingsCard.deniedDescription`),label:e(`androidNotificationSettingsCard.deniedLabel`),tone:`negative`};break;case`prompt`:a={description:e(`androidNotificationSettingsCard.promptDescription`),label:e(`androidNotificationSettingsCard.promptLabel`),tone:`warning`};break;case`unsupported`:a={description:e(`androidNotificationSettingsCard.unsupportedDescription`),label:e(`androidNotificationSettingsCard.unsupportedLabel`),tone:`neutral`};break;default:a={description:e(`androidNotificationSettingsCard.checkingDescription`),label:e(`androidNotificationSettingsCard.checkingLabel`),tone:`neutral`};break}return(0,w.jsx)(p,{padding:`lg`,children:(0,w.jsxs)(`div`,{className:`flex flex-col gap-5 sm:flex-row sm:items-center sm:justify-between`,children:[(0,w.jsxs)(`div`,{className:`flex min-w-0 items-start gap-4`,children:[(0,w.jsx)(`span`,{className:`flex size-11 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-base)] text-[var(--content-secondary)]`,children:(0,w.jsx)(y,{className:`size-5`,"aria-hidden":!0})}),(0,w.jsxs)(`div`,{className:`min-w-0`,children:[(0,w.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,w.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`androidNotificationSettingsCard.title`)}),(0,w.jsx)(d,{tone:a.tone,children:a.label})]}),(0,w.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:a.description})]})]}),t&&(0,w.jsx)(m,{variant:`outlined`,onClick:()=>void C(),disabled:r===null,rightIcon:(0,w.jsx)(c,{"aria-hidden":!0}),className:`self-start sm:self-auto`,children:e(`androidNotificationSettingsCard.openSettings`)})]})})}function E(){let{t:e}=n(`settings`);return u()?(0,w.jsxs)(`div`,{className:`mx-auto w-full max-w-2xl space-y-6`,children:[(0,w.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,w.jsx)(`span`,{className:`flex size-10 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-lift)] text-[var(--content-secondary)]`,children:(0,w.jsx)(y,{className:`size-5`,"aria-hidden":!0})}),(0,w.jsxs)(`div`,{className:`min-w-0`,children:[(0,w.jsx)(`h1`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:e(`notificationsPage.title`)}),(0,w.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:e(`notificationsPage.description`)})]})]}),(0,w.jsx)(T,{})]}):(0,w.jsx)(a,{replace:!0,to:v.settings.general})}export{E as NotificationsPage};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-CV8wawxx.js";import{b as n,g as r,t as i}from"./react-DPM_L_aA.js";import{Ar as a}from"./index-jpjzZb6b.js";var o=e(n(),1),s=i();function c(){return(0,s.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,s.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-positive-bg)`}),(0,s.jsx)(`path`,{className:`oauth-check`,d:`M17 28.5L24.5 36L39 21`,stroke:`var(--oauth-positive-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,strokeLinejoin:`round`,fill:`none`})]})}function l(){return(0,s.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,s.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-negative-bg)`}),(0,s.jsx)(`path`,{className:`oauth-cross oauth-cross-1`,d:`M20 20L36 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`}),(0,s.jsx)(`path`,{className:`oauth-cross oauth-cross-2`,d:`M36 20L20 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`})]})}var u=`
|
|
2
2
|
:root {
|
|
3
3
|
--oauth-surface: #F5F3EB;
|
|
4
4
|
--oauth-surface-card: #FFFFFF;
|
package/dist/assets/{oauth-popup-complete-page-C5tlMQzH.js → oauth-popup-complete-page-mp-6HzBF.js}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-CV8wawxx.js";import{b as n,g as r,t as i}from"./react-DPM_L_aA.js";import{Ar as a,Gg as o,Wg as s}from"./index-jpjzZb6b.js";var c=e(n(),1),l=i();function u(){return(0,l.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,l.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-positive-bg)`}),(0,l.jsx)(`path`,{className:`oauth-check`,d:`M17 28.5L24.5 36L39 21`,stroke:`var(--oauth-positive-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,strokeLinejoin:`round`,fill:`none`})]})}function d(){return(0,l.jsxs)(`svg`,{className:`oauth-icon`,viewBox:`0 0 56 56`,fill:`none`,xmlns:`http://www.w3.org/2000/svg`,children:[(0,l.jsx)(`circle`,{cx:`28`,cy:`28`,r:`28`,fill:`var(--oauth-negative-bg)`}),(0,l.jsx)(`path`,{className:`oauth-cross oauth-cross-1`,d:`M20 20L36 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`}),(0,l.jsx)(`path`,{className:`oauth-cross oauth-cross-2`,d:`M36 20L20 36`,stroke:`var(--oauth-negative-fg)`,strokeWidth:`3.5`,strokeLinecap:`round`,fill:`none`})]})}var f=`
|
|
2
2
|
:root {
|
|
3
3
|
--oauth-surface: #F5F3EB;
|
|
4
4
|
--oauth-surface-card: #FFFFFF;
|
|
@@ -102,4 +102,4 @@ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{j as t}from"./vendor-C
|
|
|
102
102
|
color: var(--oauth-text-secondary);
|
|
103
103
|
margin: 0;
|
|
104
104
|
}
|
|
105
|
-
`;function p(e){return e.split(/[-_]/).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function m(){let{t:e}=t(`account`),[n]=r(),i=n.get(`requestId`),m=n.get(`oauth_status`),h=n.get(`oauth_provider`),g=n.get(`oauth_code`),_=n.get(`native`)===`1`,v=h?p(h):``,y=m===`connected`,b=y?v?`Connected to ${v}`:`Authorization Successful`:`Authorization Failed`,x=y?`You can close this popup and return to the app.`:`${v||`Service`} connection failed. Please try again.`;return(0,c.useEffect)(()=>{if(_&&i){let e=
|
|
105
|
+
`;function p(e){return e.split(/[-_]/).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function m(){let{t:e}=t(`account`),[n]=r(),i=n.get(`requestId`),m=n.get(`oauth_status`),h=n.get(`oauth_provider`),g=n.get(`oauth_code`),_=n.get(`native`)===`1`,v=h?p(h):``,y=m===`connected`,b=y?v?`Connected to ${v}`:`Authorization Successful`:`Authorization Failed`,x=y?`You can close this popup and return to the app.`:`${v||`Service`} connection failed. Please try again.`;return(0,c.useEffect)(()=>{if(_&&i){let e=o(window.location.host);if(e){window.location.href=s(e,{requestId:i,oauthStatus:m||null,oauthProvider:h||null,oauthCode:g||null});return}}let e={type:`vellum:oauth-complete`,requestId:i,oauthStatus:m||null,oauthProvider:h||null,oauthCode:g||null};if(window.opener&&i&&window.opener.postMessage(e,window.location.origin),i)try{window.localStorage.setItem(a(i),JSON.stringify(e))}catch{}window.close()},[i,m,h,g,_]),(0,l.jsxs)(`div`,{className:`oauth-page`,children:[(0,l.jsx)(`style`,{dangerouslySetInnerHTML:{__html:f}}),(0,l.jsxs)(`div`,{className:`oauth-card`,children:[y?(0,l.jsx)(u,{}):(0,l.jsx)(d,{}),(0,l.jsx)(`h1`,{children:b}),(0,l.jsx)(`p`,{children:x}),!y&&g&&(0,l.jsx)(`p`,{style:{marginTop:8,fontSize:11,color:`var(--oauth-text-secondary)`,opacity:.7},children:e(`oauthComplete.errorCode`,{code:g})})]})]})}export{m as OAuthPopupCompletePage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={continue:`繼續`,back:`返回`,forward:`前進`,cancel:`取消`,add:`新增`,adding:`正在新增…`,connect:`連線`,connecting:`正在連線…`,tryAgain:`再試一次`,remove:`移除 {value}`,logIn:`登入`,logOut:`登出`,loginToUse:`登入以使用`,downloadMacApp:`下載 macOS 應用程式`,claim:`認領`,skipForNow:`暫時跳過`,starting:`正在啟動…`},t={title:`歡迎使用 Vellum`,body:`您的專屬智慧助理近在咫尺。`,continueWithoutAccount:`不登入繼續`},n={createAssistant:`建立您的助理`},r={title:`開始之前`,body:`選擇您的隱私偏好設定。您可以隨時在「設定」中更新這些內容。`,start:`開始新手導覽`,skipToChat:`跳過並開始聊天`},i={title:`託管`,body:`選擇您希望助理駐留的位置。`,needHelp:`需要協助決定嗎?`,optionsAriaLabel:`託管選項`},a={title:`連線模型供應商`,body:`選擇您的助理應使用的模型供應商。`,providerLabel:`供應商`,modelLabel:`模型`,baseUrlLabel:`基礎 URL`,modelsLabel:`模型`,modelsPlaceholder:`model-1, model-2`,modelsHelp:`您的端點所公開,以逗號分隔的模型識別碼。`,apiKeyLabel:`{provider} API 金鑰`,apiKeyPlaceholder:`輸入您的 API 金鑰`,noKeyPrompt:`沒有金鑰?`,getKeyLink:`在此取得 API 金鑰`},o={title:`選擇助理`,listAriaLabel:`助理列表`,createNew:`建立新助理`,connectRemote:`連線遠端助理`,addRemote:`新增遠端助理`,unnamedAssistant:`該助理`,connectingToAssistant:`正在連線至您的助理…`,rowActionsAriaLabel:`{name} 的動作`,removeFromDevice:`從此裝置移除…`,selfHosted:`自行託管`,selfHostedWithHost:`自行託管 · {host}`,currentWithHost:`目前 · {host}`,remoteWithHost:`遠端 · {host}`},s={apiKeyFailed:`您的 API 金鑰無效`,genericFailure:`發生了一些錯誤`,localFallbackPitch:`立即開始使用本機助理`,updateApiKey:`更新 API 金鑰`,ready:`您的助理已準備就緒!`,waking:`正在喚醒…`,wakingBody:`請稍候,您的助理啟動後會向您提出一些問題。`,progressAriaLabel:`助理啟動進度`,phase:{initializing:`正在準備中…`,provisioning:`正在設定您的助理…`,connecting:`正在連線至您的助理…`,resizing:`正在設定您的機器…`,ready:`就緒`}},c={title:`新增遠端助理`,body:`貼上您的助理配對頁面提供的 HTTPS 連結。`,addressLabel:`助理位址`,addFailed:`新增助理失敗。請再試一次。`},l={title:`連接遠端助理`,instruction:`請從助理的「配對裝置」設定中貼上配對連結,或直接貼上其位址,然後在助理端核准請求。`,linkGuidance:`此連結來自配對 QR 碼。若要連接此裝置,請在此處貼上來自助理裝置的配對連結。`,legacyLinkGuidance:`此連結來自舊版應用程式,已無法使用。請在助理裝置上產生新的配對連結並貼到此處。`,addressLabel:`位址或配對連結`,addressPlaceholder:`https://your-assistant.ts.net`,nameLabel:`名稱(選填)`,approveOnHost:`請在助理裝置上核准此代碼以完成連接。`,waitingForApproval:`等待核准中…`,retrying:`助理尚未準備好配對。正在重試,直到代碼過期。`,expiresIn:`將於 {time} 後過期`,retryExpired:`配對代碼在助理準備好配對之前已過期。請重新開始以取得新的代碼。`,submitError:`無法連接到該助理。請再試一次。`,importedTitle:`配對已匯入`,importedBody:`此配對僅限存取:它現在可用,但其存取權限會過期且無法自動續訂。過期後,請在助理裝置上產生新的配對連結並貼到此處以重新配對。`},u={repairTitle:`修復助理?`,repairBody:`修復會重新配置此助理的驗證憑證。任何連接到此助理的其他裝置或瀏覽器工作階段都將登出,需要重新連接。`,repairConfirm:`修復`,authFailedTitle:`無法驗證助理身分`,authFailedBody:`{name} 的驗證憑證遺失或無法再重新整理,因此無法連接此助理。您可以修復它、停用它或選擇不同的助理。`,wakeAndRepair:`喚醒並修復`,retire:`停用助理`},d={whatsChanged:`更新內容`,privacyPreferences:`隱私權偏好設定`,analyticsLabel:`分享分析資料`,analyticsHelp:`傳送彙總的產品使用資料`,diagnosticsLabel:`分享診斷資料`,diagnosticsHelp:`傳送當機報告、對話追蹤和工作階段重播資料`,agreements:`協議`,agreeTo:`我同意 <link>{policy}</link>`},f={addOption:`新增「{value}」`,enterHint:`↵ 輸入`,freeTextHint:`輸入任何內容並按下 ↵ 以新增您自己的`},p={ariaLabel:`第 {current} 步,共 {total} 步`},m={greetingNamed:`嗨,{name}!`,greeting:`嗨!`,introNamed:`我是 {name},您的新 AI 助理。`,intro:`我是您的新 AI 助理。`},h={setupLine:`您可能用過只會回答問題的 AI。`,helpLine:`我幫助得越多,`,punchLine:`我與眾不同。`,betterLine:`我就越好,`,lessLine:`您需要做的就越少。`},g={title:`建立我的個性`,lockedBody:`個性已鎖定,請與您的助理聊天以進行更多更新`,axisAriaLabel:`從 {left} 到 {right}`,axes:{companionCoworker:{left:`夥伴`,right:`同事`},genzBoomer:{left:`Z 世代`,right:`嬰兒潮世代`},executeCollaborate:{left:`獨立`,right:`協作`},playfulSerious:{left:`活潑`,right:`嚴肅`},politeUnfiltered:{left:`有禮`,right:`直率`}}},_={title:`給我一個形象和名稱`,previousCharacter:`上一個形象`,nextCharacter:`下一個形象`,namePlaceholder:`為您的助理命名`,nameAriaLabel:`助理名稱`,editName:`編輯名稱`,shuffle:`隨機名稱和外觀`,hearVoice:`聽我的聲音`,stopVoice:`停止語音範例`},v={title:`這裡有一些初始用法<br></br>供您開始。`},y={title:`我們從您開始。`,body:`一些細節,以便我更好地了解您。`,firstNameLabel:`我該怎麼稱呼您?`,firstNamePlaceholder:`您的名字`,lastNameLabel:`您的姓氏是?`,lastNamePlaceholder:`您的姓氏(選填)`,roleLabel:`您的角色`,rolePlaceholder:`您的職業是什麼?`,hobbiesLabel:`有什麼嗜好嗎?`,hobbiesPlaceholder:`汽車、書籍、種植番茄?`},b={wakingTitle:`正在喚醒`,missingScopeTitle:`未啟用存取權`,title:`讓我來簡化一切`,wakingBody:`您的助理正在準備中`,missingScopeBody:`請勾選 Google 日曆權限旁的方塊,這樣我才能預訂報到。`,body:`連接您的 Google 日曆,這樣我才能找到時間進行報到並開始提供協助。`,startingAssistant:`正在啟動助理…`,waitingAuthorization:`正在等待授權…`,connectCalendar:`連接日曆 →`},x={titleNamed:`{name} 已啟動並正在執行`,title:`您的助理已啟動並正在執行`,bodyNamed:`你們之間有歷史:個性、記憶和過去的對話。再次執行設定將會覆寫 {name} 現在的身份。`,body:`你們之間有歷史:個性、記憶和過去的對話。再次執行設定將會覆寫您的助理現在的身份。`,keepNamed:`保留 {name} 並開始聊天`,keep:`保留您的助理並開始聊天`,redoNamed:`重新開始並重建 {name} 的個性`,redo:`重新開始並重建其個性`},S={title:`我們明天聊`,body:`在您的日曆中新增一個會議,這樣我們就能從上次中斷的地方繼續。`,permissionBody:`{name} 將新增一個單獨的「第 2 天報到」活動。它將獲得管理您的日曆活動和查看您的電子郵件地址的權限,而不是您的收件匣或檔案,並且您可以隨時中斷連線。`,unnamedAssistant:`您的助理`,waitingAuthorization:`正在等待授權...`,connectGoogleCalendar:`連接 Google 日曆`},C={titleWithTime:`報到已排定在明天 {time}!`,title:`報到已排定!`},w={searching:`正在搜尋網路以了解您…`,readingProfiles:`正在閱讀公開個人資料…`,skimming:`正在瀏覽重點…`,connectingDots:`正在連結點滴資訊…`,piecing:`正在整合資訊…`,almostThere:`快完成了…`},T={updatingPersonality:`正在更新我的個性…`,findingVoice:`正在尋找我的聲音…`,gettingIntoCharacter:`正在進入角色…`,almostThere:`快完成了…`},E={title:`這是我找到關於您的資訊`,bodyLoadingWithClaims:`仍在檢查其餘資訊。您可以在資訊出現時進行檢閱。`,bodyReadyWithClaims:`我搜尋了網路。請隨意移除任何不實的資訊。`,bodyLoadingEmpty:`仍在整理中…`,removeClaim:`移除「{claim}」`,notMe:`這不是我`,stillSearching:`仍在搜尋…`},D={title:`這是我們首先可以做的事情`,pickOne:`選擇一個開始,或自行建立。<skip>跳至聊天</skip>`,loading:`正在整理一些想法…`,alreadySetUp:`已設定 <plugins></plugins> {count, plural, other {# 個}} 外掛程式以協助您完成工作`,listAnd:` 和 `,listCommaAnd:`,和`,listComma:`,`,fallbacks:{brief:{suggestion:`我將為您整理一份關於您領域最新動態的簡報`,prompt:`給我一份關於我領域最新動態的簡報。`},weekly:{suggestion:`我將每週發送一份關於您領域新聞的簡報`,prompt:`設定每週發送一份關於我領域新聞的簡報。`},week:{suggestion:`我將協助您掌握您的一週`,prompt:`協助我掌握我的一週。`},draft:{suggestion:`我將根據一些粗略的筆記起草內容`,prompt:`根據我提供的一些粗略筆記起草內容。`}}},O={title:`您已準備就緒`,setupNote:`我已根據您的資訊設定了外掛程式。`,letsChat:`開始聊天`},k={actions:e,welcome:t,startScreen:n,privacyScreen:r,hostingScreen:i,apiKeyScreen:a,selectAssistantScreen:o,hatchingScreen:s,addRemoteOriginDialog:c,connectAssistantDialog:l,connectRecoveryDialog:u,consentControls:d,onboardingAutocomplete:f,stepIndicator:p,introductionScreen:m,pitchStep:h,createPersonalityStep:g,giveMeAFaceScreen:_,integrationStep:v,researchOnboardingScreen:y,letsChatTomorrowStep:b,existingAssistantStep:x,checkinConnectScreen:S,meetingCreatedStep:C,lookingYouUpStep:w,finishingUpStep:T,researchResultsStep:E,suggestionsStep:D,letsChatReadyStep:O};export{e as actions,c as addRemoteOriginDialog,a as apiKeyScreen,S as checkinConnectScreen,l as connectAssistantDialog,u as connectRecoveryDialog,d as consentControls,g as createPersonalityStep,k as default,x as existingAssistantStep,T as finishingUpStep,_ as giveMeAFaceScreen,s as hatchingScreen,i as hostingScreen,v as integrationStep,m as introductionScreen,O as letsChatReadyStep,b as letsChatTomorrowStep,w as lookingYouUpStep,C as meetingCreatedStep,f as onboardingAutocomplete,h as pitchStep,r as privacyScreen,y as researchOnboardingScreen,E as researchResultsStep,o as selectAssistantScreen,n as startScreen,p as stepIndicator,D as suggestionsStep,t as welcome};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={continue:`Continuar`,back:`Atrás`,forward:`Adelante`,cancel:`Cancelar`,add:`Añadir`,adding:`Añadiendo…`,connect:`Conectar`,connecting:`Conectando…`,tryAgain:`Volver a intentarlo`,remove:`Quitar {value}`,logIn:`Iniciar sesión`,logOut:`Cerrar sesión`,loginToUse:`Inicia sesión para usar`,downloadMacApp:`Descargar la app de macOS`,claim:`Reclamar`,skipForNow:`Omitir por ahora`,starting:`Empezando…`},t={title:`Te damos la bienvenida a Vellum`,body:`Tu propia inteligencia personal está a un paso.`,continueWithoutAccount:`Continuar sin cuenta`},n={createAssistant:`Crear tu asistente`},r={title:`Antes de empezar`,body:`Elige tus preferencias de privacidad. Puedes cambiarlas cuando quieras en los ajustes.`,start:`Comenzar la incorporación`,skipToChat:`Ir al asistente`},i={title:`Alojamiento`,body:`Elige dónde quieres que viva tu asistente.`,needHelp:`¿Necesitas ayuda para decidir?`,optionsAriaLabel:`Opciones de alojamiento`},a={title:`Conectar un proveedor de modelos`,body:`Elige el proveedor de modelos que debe usar tu asistente.`,providerLabel:`Proveedor`,modelLabel:`Modelo`,baseUrlLabel:`URL base`,modelsLabel:`Modelos`,modelsPlaceholder:`modelo-1, modelo-2`,modelsHelp:`Identificadores de modelo separados por comas que expone tu endpoint.`,apiKeyLabel:`Clave de API de {provider}`,apiKeyPlaceholder:`Introduce tu clave de API`,noKeyPrompt:`¿No la tienes?`,getKeyLink:`Consigue una clave de API aquí`},o={title:`Elige un asistente`,listAriaLabel:`Asistentes`,createNew:`Crear un asistente nuevo`,connectRemote:`Conectar un asistente remoto`,addRemote:`Añadir un asistente remoto`,unnamedAssistant:`el asistente`,connectingToAssistant:`Conectando con tu asistente…`,rowActionsAriaLabel:`Acciones de {name}`,removeFromDevice:`Quitar de este dispositivo…`,selfHosted:`Autoalojado`,selfHostedWithHost:`Autoalojado · {host}`,currentWithHost:`Actual · {host}`,remoteWithHost:`Remoto · {host}`},s={apiKeyFailed:`Tu clave de API no ha funcionado`,genericFailure:`Algo ha salido mal`,localFallbackPitch:`Empieza hoy con un asistente local`,updateApiKey:`Actualizar la clave de API`,ready:`¡Tu asistente está listo!`,waking:`Despertando…`,wakingBody:`Un momento, tu asistente te hará algunas preguntas en cuanto esté en marcha.`,progressAriaLabel:`Progreso del arranque del asistente`,phase:{initializing:`Preparándolo todo…`,provisioning:`Configurando tu asistente…`,connecting:`Conectando con tu asistente…`,resizing:`Preparando tu máquina…`,ready:`Listo`}},c={title:`Añadir un asistente remoto`,body:`Pega el enlace https que te dio la página de vinculación de tu asistente.`,addressLabel:`Dirección del asistente`,addFailed:`No se pudo añadir el asistente. Inténtalo de nuevo.`},l={title:`Conectar un asistente remoto`,instruction:`Pega el enlace de vinculación de los ajustes «Vincular un dispositivo» del asistente, o solo su dirección, y aprueba allí la solicitud.`,linkGuidance:`Este enlace proviene de un código QR de vinculación. Para conectar este dispositivo, pega aquí el enlace de vinculación del equipo del asistente.`,legacyLinkGuidance:`Este enlace proviene de una versión anterior de la aplicación y ya no se puede usar. Genera un nuevo enlace de vinculación en el equipo del asistente y pégalo aquí.`,addressLabel:`Dirección o enlace de vinculación`,addressPlaceholder:`https://your-assistant.ts.net`,nameLabel:`Nombre (opcional)`,approveOnHost:`Aprueba este código en la máquina del asistente para terminar de conectar.`,waitingForApproval:`Esperando la aprobación…`,retrying:`El asistente aún no está listo para vincularse. Se seguirá intentando hasta que caduque el código.`,expiresIn:`Caduca en {time}`,retryExpired:`El código de vinculación caducó antes de que el asistente estuviera listo para vincularse. Empieza de nuevo para obtener uno nuevo.`,submitError:`No se pudo conectar con ese asistente. Inténtalo de nuevo.`,importedTitle:`Vinculación importada`,importedBody:`Esta vinculación es solo de acceso: funciona ahora, pero su acceso caduca y no puede renovarse por sí solo. Cuando caduque, genera un nuevo enlace de vinculación en la máquina del asistente y pégalo aquí para volver a vincular.`},u={repairTitle:`¿Reparar el asistente?`,repairBody:`Reparar vuelve a aprovisionar el token de autenticación de este asistente. Se cerrará la sesión en cualquier otro dispositivo o navegador conectado y tendrán que volver a conectarse.`,repairConfirm:`Reparar`,authFailedTitle:`No se puede autenticar el asistente`,authFailedBody:`Falta el token de autenticación de {name} o ya no se puede renovar, así que no es posible conectar este asistente. Puedes repararlo, retirarlo o elegir otro asistente.`,wakeAndRepair:`Despertar y reparar`,retire:`Retirar el asistente`},d={agreeTo:`Acepto <link>{policy}</link>`,whatsChanged:`Qué ha cambiado`,privacyPreferences:`Preferencias de privacidad`,analyticsLabel:`Compartir analíticas`,analyticsHelp:`Enviar datos agregados de uso del producto`,diagnosticsLabel:`Compartir diagnósticos`,diagnosticsHelp:`Enviar informes de fallos, trazas de conversación y datos de repetición de sesión`,agreements:`Acuerdos`},f={addOption:`Añadir «{value}»`,enterHint:`↵ Intro`,freeTextHint:`Escribe lo que quieras y pulsa ↵ para añadirlo`},p={ariaLabel:`Paso {current} de {total}`},m={greetingNamed:`¡Hola, {name}!`,greeting:`¡Hola!`,introNamed:`Soy {name}, tu nuevo asistente de IA.`,intro:`Soy tu nuevo asistente de IA.`},h={setupLine:`Has usado IA que solo responde preguntas.`,helpLine:`Cuanto más ayudo,`,punchLine:`Yo soy distinto.`,betterLine:`mejor me vuelvo,`,lessLine:`y menos tienes que hacer tú.`},g={title:`Crea mi personalidad`,lockedBody:`Personalidad bloqueada, habla con tu asistente para hacer más cambios`,axisAriaLabel:`De {left} a {right}`,axes:{companionCoworker:{left:`Compañero`,right:`Colega`},genzBoomer:{left:`Gen Z`,right:`Baby Boomer`},executeCollaborate:{left:`Independiente`,right:`Colaborativo`},playfulSerious:{left:`Juguetón`,right:`Serio`},politeUnfiltered:{left:`Educado`,right:`Sin filtro`}}},_={title:`Dame una cara y un nombre`,previousCharacter:`Personaje anterior`,nextCharacter:`Personaje siguiente`,namePlaceholder:`Ponle nombre a tu asistente`,nameAriaLabel:`Nombre del asistente`,editName:`Editar nombre`,shuffle:`Cambiar nombre y apariencia`,hearVoice:`Escuchar mi voz`,stopVoice:`Detener la muestra de voz`},v={title:`Aquí tienes algo de uso inicial<br></br> para empezar.`},y={title:`Empecemos por ti.`,body:`Unos detalles para que pueda conocerte.`,firstNameLabel:`¿Cómo debería llamarte?`,firstNamePlaceholder:`Tu nombre`,lastNameLabel:`¿Y tu apellido?`,lastNamePlaceholder:`Tu apellido (opcional)`,roleLabel:`Tu rol`,rolePlaceholder:`¿A qué te dedicas?`,hobbiesLabel:`¿Algún hobby?`,hobbiesPlaceholder:`Coches, libros, cultivar tomates?`},b={wakingTitle:`Despertando`,missingScopeTitle:`Acceso no activado`,title:`Déjame facilitártelo`,wakingBody:`Tu asistente se está preparando`,missingScopeBody:`Marca la casilla junto al permiso de Google Calendar para que pueda reservar el check-in.`,body:`Conecta tu Google Calendar para que pueda encontrar un momento para hacer el check-in y empezar a ayudar.`,startingAssistant:`Arrancando el asistente…`,waitingAuthorization:`Esperando la autorización…`,connectCalendar:`Conectar calendario →`},x={titleNamed:`{name} ya está en marcha`,title:`Tu asistente ya está en marcha`,bodyNamed:`Los dos tenéis historia: una personalidad, recuerdos y conversaciones pasadas. Volver a hacer la configuración sobrescribiría quién es {name} ahora.`,body:`Los dos tenéis historia: una personalidad, recuerdos y conversaciones pasadas. Volver a hacer la configuración sobrescribiría quién es tu asistente ahora.`,keepNamed:`Conservar a {name} y empezar a chatear`,keep:`Conservar a tu asistente y empezar a chatear`,redoNamed:`Empezar de cero y reconstruir la personalidad de {name}`,redo:`Empezar de cero y reconstruir su personalidad`},S={title:`Hablemos mañana`,body:`Añade una reunión en tu calendario para retomar donde lo dejamos.`,permissionBody:`{name} añadirá un único evento de check-in del día 2. Obtiene permiso para gestionar los eventos de tu calendario y ver tu dirección de correo, no tu bandeja de entrada ni tus archivos, y puedes desconectarlo en cualquier momento.`,unnamedAssistant:`tu asistente`,waitingAuthorization:`Esperando la autorización...`,connectGoogleCalendar:`Conectar Google Calendar`},C={titleWithTime:`¡Check-in programado para mañana a las {time}!`,title:`¡Check-in programado!`},w={searching:`Buscando en la web para conocerte…`,readingProfiles:`Leyendo perfiles públicos…`,skimming:`Repasando lo más destacado…`,connectingDots:`Conectando los puntos…`,piecing:`Ensamblando las piezas…`,almostThere:`Casi listo…`},T={updatingPersonality:`Actualizando mi personalidad…`,findingVoice:`Encontrando mi voz…`,gettingIntoCharacter:`Entrando en personaje…`,almostThere:`Casi listo…`},E={title:`Esto es lo que he encontrado sobre ti`,bodyLoadingWithClaims:`Todavía estoy revisando el resto. Puedes ir mirando lo que va llegando.`,bodyReadyWithClaims:`He buscado en la web. Siéntete libre de quitar cualquier cosa que no sea cierta.`,bodyLoadingEmpty:`Todavía lo estoy armando…`,removeClaim:`Quitar «{claim}»`,notMe:`Esto no soy yo`,stillSearching:`Todavía buscando…`},D={title:`Esto es lo que podríamos hacer primero`,pickOne:`Elige una para empezar, o empieza con lo tuyo. <skip>Ir al chat</skip>`,loading:`Preparando algunas ideas…`,alreadySetUp:`Ya he configurado {count, plural, one {el plugin} other {los plugins}} <plugins></plugins> para ayudarte con tu trabajo`,listAnd:` y `,listCommaAnd:` y `,listComma:`, `,fallbacks:{brief:{suggestion:`Prepararé un resumen rápido de lo nuevo en tu campo`,prompt:`Dame un resumen rápido de lo nuevo en mi campo ahora mismo.`},weekly:{suggestion:`Te enviaré un briefing semanal de noticias de tu ámbito`,prompt:`Configura un briefing semanal de noticias de mi ámbito.`},week:{suggestion:`Te ayudaré a ponerte al día con tu semana`,prompt:`Ayúdame a ponerme al día con mi semana.`},draft:{suggestion:`Redactaré algo a partir de unas notas sueltas`,prompt:`Redacta algo a partir de unas notas sueltas que te daré.`}}},O={title:`Ya está todo listo`,setupNote:`Me he configurado con plugins según quién eres.`,letsChat:`Hablemos`},k={actions:e,welcome:t,startScreen:n,privacyScreen:r,hostingScreen:i,apiKeyScreen:a,selectAssistantScreen:o,hatchingScreen:s,addRemoteOriginDialog:c,connectAssistantDialog:l,connectRecoveryDialog:u,consentControls:d,onboardingAutocomplete:f,stepIndicator:p,introductionScreen:m,pitchStep:h,createPersonalityStep:g,giveMeAFaceScreen:_,integrationStep:v,researchOnboardingScreen:y,letsChatTomorrowStep:b,existingAssistantStep:x,checkinConnectScreen:S,meetingCreatedStep:C,lookingYouUpStep:w,finishingUpStep:T,researchResultsStep:E,suggestionsStep:D,letsChatReadyStep:O};export{e as actions,c as addRemoteOriginDialog,a as apiKeyScreen,S as checkinConnectScreen,l as connectAssistantDialog,u as connectRecoveryDialog,d as consentControls,g as createPersonalityStep,k as default,x as existingAssistantStep,T as finishingUpStep,_ as giveMeAFaceScreen,s as hatchingScreen,i as hostingScreen,v as integrationStep,m as introductionScreen,O as letsChatReadyStep,b as letsChatTomorrowStep,w as lookingYouUpStep,C as meetingCreatedStep,f as onboardingAutocomplete,h as pitchStep,r as privacyScreen,y as researchOnboardingScreen,E as researchResultsStep,o as selectAssistantScreen,n as startScreen,p as stepIndicator,D as suggestionsStep,t as welcome};
|