@vellumai/web 0.12.4 → 0.12.5-dev.202609251017.e467a6c
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-BSzXL6i3.js → a2a-invite-CMMHBiy-.js} +1 -1
- package/dist/assets/{about-page-Ne3KY7p6.js → about-page-BB7-HGJd.js} +1 -1
- package/dist/assets/{account-page-DR4ueI-s.js → account-page-B3AhNrvG.js} +1 -1
- package/dist/assets/{account-shell-BCvjHT7j.js → account-shell-CH63d0FT.js} +1 -1
- package/dist/assets/acp-run-detail-panel-C4wpvX9E.js +3 -0
- package/dist/assets/activation-list-route-CeDp6f5H.js +1 -0
- package/dist/assets/{activity-redirect-page-BOS14fri.js → activity-redirect-page-DF57BDED.js} +1 -1
- package/dist/assets/activity-steps-panel-BksJ52Tr.js +1 -0
- package/dist/assets/{add-credits-modal-O1N2pbak.js → add-credits-modal-D7q5Ffk8.js} +1 -1
- package/dist/assets/add-credits-modal-DqSLgand.js +1 -0
- package/dist/assets/ai-page-DiSmAbhk.js +1 -0
- package/dist/assets/all-chats-page-route-BmBKd57L.js +1 -0
- package/dist/assets/android-billing-handoff-iZa2BMO_.js +1 -0
- package/dist/assets/animated-stat-square-C7OzP_a-.js +1 -0
- package/dist/assets/{api-key-screen-BD62ySmK.js → api-key-screen-DXUxlcW_.js} +1 -1
- package/dist/assets/app--CZi-eoZ.js +399 -0
- package/dist/assets/app-DFa5jRlV.css +2 -0
- package/dist/assets/{app-info-YYU2hCWc.js → app-info-BVPfn1o-.js} +1 -1
- package/dist/assets/archive-redirect-page-cT5j1h2R.js +1 -0
- package/dist/assets/assistant-handle-modal-DU_Bi5lj.js +1 -0
- package/dist/assets/assistant-inbox-DPTo53YN.js +1 -0
- package/dist/assets/assistant-inbox-Di7EBVwM.js +1 -0
- package/dist/assets/assistant-inbox-DlwqAvim.js +1 -0
- package/dist/assets/assistant-inbox-page-route-Dw4GCqM1.js +8 -0
- package/dist/assets/assistant-inbox-qd_s59_T.js +1 -0
- package/dist/assets/{assistant-inbox-upgrade-body-BC-REEBi.js → assistant-inbox-upgrade-body-CBD3c6AS.js} +1 -1
- package/dist/assets/{assistant-status-panel-uJMo_YOD.js → assistant-status-panel-Bs62PMa_.js} +1 -1
- package/dist/assets/auth-store-BEWaJpfT.js +1 -0
- package/dist/assets/{auth-welcome-screen-uOY9YbXG.js → auth-welcome-screen-Cf7g-gHo.js} +1 -1
- package/dist/assets/avatar-bundled-components-BFd94a0P.js +1 -0
- package/dist/assets/avatar-random-CxZqXUyu.js +2 -0
- package/dist/assets/{await-org-header-settled-dTqfGHq2.js → await-org-header-settled-nRYfVnwu.js} +1 -1
- package/dist/assets/background-task-detail-panel-CF6XbrmR.js +1 -0
- package/dist/assets/billing-page-CNpzPATR.js +3 -0
- package/dist/assets/{billing-redirect-page-DK5z_EZp.js → billing-redirect-page-Bqnd8dyK.js} +1 -1
- package/dist/assets/bookmarks-page-Keh2H3Nn.js +1 -0
- package/dist/assets/{bundle-confirm-page-Co72y9XS.js → bundle-confirm-page-BxltrwcH.js} +1 -1
- package/dist/assets/channel-transcript-panel-Bwft4mMS.js +1 -0
- package/dist/assets/{channels-CVJ5zeqt.js → channels-BGZqsCyH.js} +1 -1
- package/dist/assets/{channels-DhvDj55h.js → channels-CZ6bOgaK.js} +1 -1
- package/dist/assets/{channels-DBlx6QsN.js → channels-DTkJHg8Z.js} +1 -1
- package/dist/assets/{channels-RsZsrZWR.js → channels-Gl4ycvIi.js} +1 -1
- package/dist/assets/channels-page-route-DCcDWM0Z.js +1 -0
- package/dist/assets/chat-BTYwT-Iz.js +5 -0
- package/dist/assets/chat-CYQ7D6re.js +5 -0
- package/dist/assets/chat-Cap3ZeFn.js +5 -0
- package/dist/assets/chat-DBgqSGT1.js +5 -0
- package/dist/assets/chat-info-panel-B9qlEkS8.js +1 -0
- package/dist/assets/checkout-continuation-BvAhCXvm.js +1 -0
- package/dist/assets/checkout-page-CvFPqG8M.js +1 -0
- package/dist/assets/checkout-return-target-Di4-pUK2.js +1 -0
- package/dist/assets/command-palette-BCXZZBTF.js +1 -0
- package/dist/assets/command-palette-DVQnjo0j.js +1 -0
- package/dist/assets/{command-palette-window-page-DCE-g55A.js → command-palette-window-page-DJT_jivG.js} +1 -1
- package/dist/assets/common-BD7jAX3p.js +1 -0
- package/dist/assets/common-C6oFwvW0.js +1 -0
- package/dist/assets/common-ClKW2YC6.js +1 -0
- package/dist/assets/common-GD9uXbfP.js +1 -0
- package/dist/assets/{community-page-BJxApcxO.js → community-page-nHBkefsX.js} +1 -1
- package/dist/assets/{companion-accent-Cp2MmcWR.js → companion-accent-C7yt1eqa.js} +1 -1
- package/dist/assets/{companion-dock-zones-page-Zvhwz0Yz.js → companion-dock-zones-page-DeHzEbL5.js} +1 -1
- package/dist/assets/{companion-layout-cM6NtktC.js → companion-layout-BPcWtStb.js} +1 -1
- package/dist/assets/{companion-popover-D2taDck6.js → companion-popover-CiXhsUHZ.js} +1 -1
- package/dist/assets/companion-popover-page-Da3nHMcF.js +1 -0
- package/dist/assets/companion-surface-RWTMh6gR.js +1 -0
- package/dist/assets/companion-surface-page-CH4LFjA9.js +1 -0
- package/dist/assets/companion-tour-entry-jyMiJZCC.js +1 -0
- package/dist/assets/{companion-watch-frame-page-CIEEUVOP.js → companion-watch-frame-page-kV8Rrn1y.js} +1 -1
- package/dist/assets/{connect-page-CILP_iqJ.js → connect-page-DLcRu261.js} +1 -1
- package/dist/assets/{consent-controls-ole3UEoz.js → consent-controls-CH9h3kH3.js} +1 -1
- package/dist/assets/contacts-BTmOfEVL.js +1 -0
- package/dist/assets/contacts-Cxz-DyYF.js +1 -0
- package/dist/assets/contacts-DgC-8PHB.js +1 -0
- package/dist/assets/contacts-gateway-Cm56diW2.js +1 -0
- package/dist/assets/contacts-mijLgegD.js +1 -0
- package/dist/assets/contacts-page-route-_NGr_6oJ.js +1 -0
- package/dist/assets/{copy-button-CzMsh4gB.js → copy-button-dNWQd4Mv.js} +1 -1
- package/dist/assets/{credential-entry-page-CueibLp2.js → credential-entry-page-CkpYB_77.js} +1 -1
- package/dist/assets/credentials-page--0UkZN6l.js +1 -0
- package/dist/assets/csv-preview-BdRwzKAU.js +1 -0
- package/dist/assets/danger-zone-redirect-page-BuaT1_Qw.js +1 -0
- package/dist/assets/debug-page-BokSWqVH.js +4 -0
- package/dist/assets/deploy-dialogs-BkY6C0tR.js +1 -0
- package/dist/assets/deploy-dialogs-_Zy57TOa.js +1 -0
- package/dist/assets/desktop-preview-content-BCXkV_8I.js +2 -0
- package/dist/assets/{desktop-status-CG431FNc.js → desktop-status-COfQgYrK.js} +1 -1
- package/dist/assets/{desktop-viewer-DwehmMBT.js → desktop-viewer-DwP16UW2.js} +2 -2
- package/dist/assets/{detail-card-DaoCCbYV.js → detail-card-D4zKx03d.js} +1 -1
- package/dist/assets/{detail-panel-stop-button-CZfhwEjC.js → detail-panel-stop-button-BE40AoTZ.js} +1 -1
- package/dist/assets/detail-primitives-BFWcvOIj.js +1 -0
- package/dist/assets/developer-page-Cw8EPVEc.js +1 -0
- package/dist/assets/devices-redirect-page-D1L2kvRG.js +1 -0
- package/dist/assets/{dictation-overlay-page-DF-XpmHA.js → dictation-overlay-page-BXlKQvCD.js} +1 -1
- package/dist/assets/document-load-BEkIFq0U.js +1 -0
- package/dist/assets/{document-load-CcDODImt.js → document-load-CfYfynz3.js} +1 -1
- package/dist/assets/document-viewer-page-DHxU28bI.js +1 -0
- package/dist/assets/emails-page-BnVS4o6j.js +1 -0
- package/dist/assets/esm-5n5jSt3e.js +2 -0
- package/dist/assets/esm-B5HvNA2f.js +1 -0
- package/dist/assets/esm-BVAuvmyr.js +2 -0
- package/dist/assets/esm-CIgMNIdz.js +1 -0
- package/dist/assets/{esm-DwBaOLRL.js → esm-COgrn4oo.js} +2 -2
- package/dist/assets/esm-CvOYazPQ.js +2 -0
- package/dist/assets/{esm-C8UCMV_0.js → esm-DFoZ6rpj.js} +1 -1
- package/dist/assets/{esm-DWsMY4a8.js → esm-DPwp_tyY.js} +1 -1
- package/dist/assets/esm-DetZupO7.js +2 -0
- package/dist/assets/esm-DpDUzGbk.js +2 -0
- package/dist/assets/{file-diff-view-bwx_MkXN.js → file-diff-view-uNXZX_5q.js} +1 -1
- package/dist/assets/file-view-mode-C3psjEfg.js +3 -0
- package/dist/assets/general-page-qSzUCXnA.js +2 -0
- package/dist/assets/hatching-screen-DELFYI9c.js +1 -0
- package/dist/assets/home-BI-fzzA0.js +1 -0
- package/dist/assets/home-BZGFmZ0D.js +1 -0
- package/dist/assets/home-CM9kRnjx.js +1 -0
- package/dist/assets/home-D4Knhe9B.js +1 -0
- package/dist/assets/{hosting-screen-BA7wRb0n.js → hosting-screen-bqc6aMjj.js} +1 -1
- package/dist/assets/identity-page-route-BNKtl3k8.js +7 -0
- package/dist/assets/inspect-page-Cpa3np9U.js +8 -0
- package/dist/assets/integrations-page-HPwVt_3v.js +1 -0
- package/dist/assets/{intelligence-BuFYEa5r.js → intelligence-BMe5g8FT.js} +1 -1
- package/dist/assets/{intelligence-CRA2olQk.js → intelligence-D-kO_fqT.js} +1 -1
- package/dist/assets/{intelligence--e-W2Pdt.js → intelligence-DqSNtb4m.js} +1 -1
- package/dist/assets/{intelligence-Ctt6Qr1d.js → intelligence-TbEk4Dsd.js} +1 -1
- package/dist/assets/intelligence-layout-0GsEXK7p.js +1 -0
- package/dist/assets/intelligence-layout-slots-store-DMLutIHV.js +1 -0
- package/dist/assets/jszip.min-CDIVkZfG.js +2 -0
- package/dist/assets/keyboard-shortcuts-redirect-page-Bd7lXdXX.js +1 -0
- package/dist/assets/{latest-assistant-text-DFGZImdA.js → latest-assistant-text-DglgIj6y.js} +1 -1
- package/dist/assets/{library-detail-page-Db0s21ez.js → library-detail-page-B7pBRfoi.js} +1 -1
- package/dist/assets/library-page-L4W-xpt-.js +1 -0
- package/dist/assets/list-detail-navigation-ChFNCRwF.js +1 -0
- package/dist/assets/local-mode-DBz3KC1d.js +1 -0
- package/dist/assets/login-page-BGKAlYwF.js +1 -0
- package/dist/assets/logout-page-BZeFNpfr.js +1 -0
- package/dist/assets/{logs-layout-C0DDeC5h.js → logs-layout-BEspUUlK.js} +1 -1
- package/dist/assets/markdown-preview-DW1TFHKg.js +1 -0
- package/dist/assets/{media-preview-CVf1UuE9.js → media-preview-CqU6YsEJ.js} +1 -1
- package/dist/assets/memory-page-route-Z3ZXItT4.js +2 -0
- package/dist/assets/{memory-router-playground-page-BudLOTc4.js → memory-router-playground-page-CzpucJPF.js} +1 -1
- package/dist/assets/{message-files-panel-Qq9UEaxA.js → message-files-panel-EwakPRjB.js} +1 -1
- package/dist/assets/native-attachment-pickers-wJIRbAeJ.js +1 -0
- package/dist/assets/native-file-DZiM21tm.js +1 -0
- package/dist/assets/notifications-page-CR4fvshf.js +1 -0
- package/dist/assets/{oauth-complete-page-Cypawil4.js → oauth-complete-page-DxkshBx-.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-CWQF6Tbc.js → oauth-popup-complete-page-BAU5Za0n.js} +2 -2
- package/dist/assets/paired-platform-identity-DJwJC3jQ.js +1 -0
- package/dist/assets/{pairing-page-OjkCjTgJ.js → pairing-page-GUjtKhMu.js} +1 -1
- package/dist/assets/password-reset-page-oBo5k7hR.js +1 -0
- package/dist/assets/pdf-file-preview-C3aGfZwx.js +1 -0
- package/dist/assets/{peeking-eyes-B3XMFLXD.js → peeking-eyes-C3X1d6Jj.js} +1 -1
- package/dist/assets/permission-guide-page-BDQa9L53.js +1 -0
- package/dist/assets/permission-guide-page-D6FWkh5j.css +1 -0
- package/dist/assets/permission-setup-Bb_0U96E.js +1 -0
- package/dist/assets/personality-page-CcCZDENz.js +1 -0
- package/dist/assets/personality-page-DFFk9Pj1.js +1 -0
- package/dist/assets/personality-sliders-CzqyS7A4.js +1 -0
- package/dist/assets/plans-page-Bl8f11RI.js +1 -0
- package/dist/assets/{platform-loopback-page-Dr-fFIwU.js → platform-loopback-page-Bwg44Rey.js} +1 -1
- package/dist/assets/{plugin-detail-page-B3Rx7z27.js → plugin-detail-page-D69IH1B3.js} +1 -1
- package/dist/assets/{plugins-page-DN9rPLRn.js → plugins-page-CVRW2_Se.js} +1 -1
- package/dist/assets/plugins-surface-4C_D08UG.js +1 -0
- package/dist/assets/{preview-error-DB2rjYvO.js → preview-error-DxF2Tmoi.js} +1 -1
- package/dist/assets/privacy-page-oVABVdz3.js +1 -0
- package/dist/assets/{privacy-screen-grsFP0UO.js → privacy-screen-Y0AB3UYU.js} +1 -1
- package/dist/assets/profile-card-Dz4jh2RX.js +1 -0
- package/dist/assets/{provider-callback-page-g4qnXUAS.js → provider-callback-page-8Z8sN5CU.js} +1 -1
- package/dist/assets/{provider-key-CK86YQ0g.js → provider-key-CmM_Jfh9.js} +1 -1
- package/dist/assets/{provider-signup-page-Ce4IEtKF.js → provider-signup-page-DCuuyMbB.js} +1 -1
- package/dist/assets/{provisioning-targets-Csh2mGBG.js → provisioning-targets-CihW-82c.js} +1 -1
- package/dist/assets/{quick-input-page-BJ-kLGi7.js → quick-input-page-B1jsbN3h.js} +1 -1
- package/dist/assets/referral-modal-C2KWqPrB.js +1 -0
- package/dist/assets/referral-modal-DlLNHhaM.js +1 -0
- package/dist/assets/{rehype-katex-thSVJn2u.js → rehype-katex-DWUGzNKD.js} +3 -3
- package/dist/assets/{research-mock-page-bXHr3HJ1.js → research-mock-page-CH-n637O.js} +1 -1
- package/dist/assets/research-onboarding-route-D8XVAkoR.js +50 -0
- package/dist/assets/review-terms-screen-4Q7Q5PXO.js +1 -0
- package/dist/assets/routes-CyFL2-wp.js +1 -0
- package/dist/assets/schedules-4TEe3Tuj.js +1 -0
- package/dist/assets/schedules-page-BkYY8e4x.js +1 -0
- package/dist/assets/security-redirect-page-FzTFgwya.js +1 -0
- package/dist/assets/select-assistant-screen-CGZpmW1b.js +1 -0
- package/dist/assets/{self-hosted-servers-CJjUOVLQ.js → self-hosted-servers-BCp7q5Jm.js} +1 -1
- package/dist/assets/{service-form-controls-DwwYjgqa.js → service-form-controls-DdbS5OAS.js} +1 -1
- package/dist/assets/{setting-row-D7xTN4Nd.js → setting-row-BiK74hlg.js} +1 -1
- package/dist/assets/settings-B0hc8479.js +3 -0
- package/dist/assets/settings-BOMjAZEC.js +3 -0
- package/dist/assets/settings-C13E9nrT.js +3 -0
- package/dist/assets/settings-layout-ZhB2RisX.js +1 -0
- package/dist/assets/settings-tIlbF60d.js +3 -0
- package/dist/assets/share-feedback-modal-Cpmo1uuR.js +1 -0
- package/dist/assets/share-feedback-modal-D2mtB9LE.js +2 -0
- package/dist/assets/{sidebar-tree-CqElNW5F.js → sidebar-tree-CVZl8Tgn.js} +1 -1
- package/dist/assets/{signup-page-ZDm4OjY3.js → signup-page--rSmkruA.js} +1 -1
- package/dist/assets/{signup-shell-kgxV4p4a.js → signup-shell-DlfJxk7w.js} +1 -1
- package/dist/assets/skill-detail-page-Hn3SvTdx.js +2 -0
- package/dist/assets/skill-detail-panel-BP4SLqhj.js +1 -0
- package/dist/assets/{skill-removal-dialog-DfBhw0Lh.js → skill-removal-dialog-V-dA4mSf.js} +1 -1
- package/dist/assets/{skills-page-CamB2mns.js → skills-page-DRntcABj.js} +1 -1
- package/dist/assets/{sounds-page-Bj48pTCF.js → sounds-page-BQag2JVp.js} +1 -1
- package/dist/assets/{start-screen-DtUnAChR.js → start-screen-DXZfwRNY.js} +1 -1
- package/dist/assets/step-detail-header-C7ftV1QU.js +1 -0
- package/dist/assets/stt-language-picker-modal-BinBfL2G.js +1 -0
- package/dist/assets/subagent-detail-panel-BsXUxHJ9.js +1 -0
- package/dist/assets/superpowers-page-C3wK8jrZ.js +1 -0
- package/dist/assets/system-events-page-BhabIo6N.js +1 -0
- package/dist/assets/system-events-redirect-page-Cy3nFDli.js +1 -0
- package/dist/assets/tabular-grid-CWJbCvkG.js +4 -0
- package/dist/assets/teleport-gateway-client-C5sVee7e.js +1 -0
- package/dist/assets/{text-preview-CUqsudgl.js → text-preview-DarB6e-t.js} +1 -1
- package/dist/assets/{theme-stage-page-HhLVo3o6.js → theme-stage-page-Cegm2fmk.js} +1 -1
- package/dist/assets/{tiptap-document-editor-rY7Mbt4u.js → tiptap-document-editor-Dgqk7iz_.js} +5 -3
- package/dist/assets/tool-detail-panel-DxIHkPt4.js +16 -0
- package/dist/assets/tool-detail-panel-TzZcdTQN.js +1 -0
- package/dist/assets/{trait-cycle-row-C-mybyb7.js → trait-cycle-row-Dqu0P27v.js} +1 -1
- package/dist/assets/upgrade-cancel-page-BfLLWBrR.js +1 -0
- package/dist/assets/{upgrade-success-page-3efxDP6a.js → upgrade-success-page-Bq7QrpOB.js} +1 -1
- package/dist/assets/{usage-redirect-page-D4aGhmzR.js → usage-redirect-page-CJpHAGBB.js} +1 -1
- package/dist/assets/use-app-delete-xNFYxcdj.js +1 -0
- package/dist/assets/use-assistant-identity-details-B1Awc0ji.js +1 -0
- package/dist/assets/use-async-read-DcRLxtMN.js +1 -0
- package/dist/assets/use-checkout-dismiss-refresh-jQ3TBYKS.js +1 -0
- package/dist/assets/{use-edge-swipe-back-DjHkqNOJ.js → use-edge-swipe-back-Dc6KFeSJ.js} +1 -1
- package/dist/assets/{use-hotkey-recorder-OFYAQ-HC.js → use-hotkey-recorder-DmcwEQhK.js} +1 -1
- package/dist/assets/use-invite-link-dialog-BFYX67b2.js +1 -0
- package/dist/assets/use-plugins-list-DBn3mbVB.js +1 -0
- package/dist/assets/use-return-to-short-circuit-DpeEsJ7h.js +1 -0
- package/dist/assets/use-side-list-room-DCJYSksY.js +1 -0
- package/dist/assets/use-skill-actions-6xXlmgbJ.js +1 -0
- package/dist/assets/use-skill-detail-files-CmbXP01U.js +1 -0
- package/dist/assets/use-supports-credentials-settings-BTrxlFxg.js +1 -0
- package/dist/assets/use-transcript-message-by-id-DyxaLSdN.js +1 -0
- package/dist/assets/use-truncated-blob-text-D6z6oSIj.js +1 -0
- package/dist/assets/vendor-DLH51Vjf.js +129 -0
- package/dist/assets/voice-page-DBRy5mEX.js +1 -0
- package/dist/assets/{wake-detail-panel-CeBICW69.js → wake-detail-panel-PnXrTDs3.js} +1 -1
- package/dist/assets/{weather-forecast-display-ULwhP9mt.js → weather-forecast-display-7oemCHYr.js} +1 -1
- package/dist/assets/{web-BWLYaK7a.js → web-BlKAJber.js} +1 -1
- package/dist/assets/{web-oF09CLSz.js → web-BmoVVmPZ.js} +1 -1
- package/dist/assets/{web-BEVUSoB9.js → web-C2Y5uOI1.js} +1 -1
- package/dist/assets/{web-BBVXWl3M.js → web-CAi9YePi.js} +1 -1
- package/dist/assets/{web-BAiOHSei.js → web-D0qh5Vlp.js} +1 -1
- package/dist/assets/{web-BAt0F8Hi.js → web-D5UHHnMG.js} +1 -1
- package/dist/assets/{web-sMUe1qc9.js → web-DZvE04fg.js} +1 -1
- package/dist/assets/{web-Brmr3_xZ.js → web-Xy5dhNHF.js} +1 -1
- package/dist/assets/{web-BdTOO1Z3.js → web-vcW3se1t.js} +1 -1
- package/dist/assets/welcome-screen-CtU9w0--.js +1 -0
- package/dist/assets/workflow-detail-panel-CoJLEQuv.js +1 -0
- package/dist/assets/{workspace-BQkwQJkh.js → workspace-C9KC9iRh.js} +1 -1
- package/dist/assets/{workspace-CkPbNpj-.js → workspace-Ca5KeX1D.js} +1 -1
- package/dist/assets/{workspace-BO5I0IXW.js → workspace-CkvlMlZG.js} +1 -1
- package/dist/assets/{workspace-UoSuwY63.js → workspace-OBnbhjU7.js} +1 -1
- package/dist/assets/workspace-page-BxO4Td2a.js +1 -0
- package/dist/assets/workspace-page-DGL905Oc.css +1 -0
- package/dist/assets/xlsx-preview-5RzKRM0T.js +1 -0
- package/dist/images/integrations/wix-mcp.png +0 -0
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/dist/assets/acp-run-detail-panel-BA9xGUzb.js +0 -3
- package/dist/assets/activation-list-route-Br9gsfSd.js +0 -1
- package/dist/assets/activity-steps-panel-88l6Ei6w.js +0 -1
- package/dist/assets/add-credits-modal-0pYLUDo4.js +0 -1
- package/dist/assets/ai-page-DU0mYnYP.js +0 -1
- package/dist/assets/all-chats-page-route-CkFi0Q7K.js +0 -1
- package/dist/assets/android-billing-handoff-C06TxyLt.js +0 -1
- package/dist/assets/app-BNyW7BqZ.css +0 -2
- package/dist/assets/app-Qc-rYPt9.js +0 -392
- package/dist/assets/archive-redirect-page-AYY4xZby.js +0 -1
- package/dist/assets/assistant-handle-modal-BZJgqpG8.js +0 -1
- package/dist/assets/assistant-inbox-Bt58UfV-.js +0 -1
- package/dist/assets/assistant-inbox-C_kJlDrW.js +0 -1
- package/dist/assets/assistant-inbox-DcUz6DF5.js +0 -1
- package/dist/assets/assistant-inbox-pCy-s4Sf.js +0 -1
- package/dist/assets/assistant-inbox-page-route-B61doUw8.js +0 -8
- package/dist/assets/auth-store-FcZEUxA_.js +0 -1
- package/dist/assets/avatar-bundled-components-DcmDX83d.js +0 -1
- package/dist/assets/avatar-random-DxLJmo42.js +0 -2
- package/dist/assets/background-task-detail-panel-CBjRAdga.js +0 -1
- package/dist/assets/billing-page-CA6R2wjZ.js +0 -3
- package/dist/assets/bookmarks-page-DPEug6V3.js +0 -1
- package/dist/assets/channel-transcript-panel-B0cRZsgw.js +0 -1
- package/dist/assets/channels-page-route-V3Fk_Hzf.js +0 -1
- package/dist/assets/chat-BQddXCk9.js +0 -3
- package/dist/assets/chat-BZsmqRU3.js +0 -3
- package/dist/assets/chat-C6WWTxFu.js +0 -3
- package/dist/assets/chat-D7FyK_n_.js +0 -3
- package/dist/assets/chat-info-panel-Bv1Aet5S.js +0 -1
- package/dist/assets/checkout-continuation-c9cPR68T.js +0 -1
- package/dist/assets/checkout-page-Cq5DAqbf.js +0 -1
- package/dist/assets/checkout-return-target-CA5-Gi7-.js +0 -1
- package/dist/assets/command-palette-BUCV7aZK.js +0 -1
- package/dist/assets/command-palette-Drf-HDLE.js +0 -1
- package/dist/assets/common-C7iok8sT.js +0 -1
- package/dist/assets/common-CMLZe_W6.js +0 -1
- package/dist/assets/common-Dgnh0Njn.js +0 -1
- package/dist/assets/common-QPQ83NEi.js +0 -1
- package/dist/assets/companion-popover-page-DGS-UTTL.js +0 -1
- package/dist/assets/companion-surface-oVNh5kA4.js +0 -1
- package/dist/assets/companion-surface-page-CXiHLf2G.js +0 -1
- package/dist/assets/companion-tour-entry-CpXEfiiz.js +0 -1
- package/dist/assets/contacts-Cj3nM0Gh.js +0 -1
- package/dist/assets/contacts-D4q-Pkbe.js +0 -1
- package/dist/assets/contacts-DFOqWav8.js +0 -1
- package/dist/assets/contacts-DUVw_0SR.js +0 -1
- package/dist/assets/contacts-gateway-zkBOSVyx.js +0 -1
- package/dist/assets/contacts-page-route-GyaYbluM.js +0 -1
- package/dist/assets/credentials-page-DgmnWmph.js +0 -1
- package/dist/assets/csv-preview-CemRbf9W.js +0 -4
- package/dist/assets/danger-zone-redirect-page-BJ31hZvD.js +0 -1
- package/dist/assets/debug-page-CYN-HFc_.js +0 -4
- package/dist/assets/deploy-dialogs-C_aIE0ti.js +0 -1
- package/dist/assets/deploy-dialogs-DP0ls5p1.js +0 -1
- package/dist/assets/desktop-preview-content-BmkyExHH.js +0 -2
- package/dist/assets/detail-primitives-B2TDPtFR.js +0 -1
- package/dist/assets/developer-page-e5ZIJFP5.js +0 -1
- package/dist/assets/devices-redirect-page-Dq7s97Ga.js +0 -1
- package/dist/assets/document-load-88Gh0gTG.js +0 -1
- package/dist/assets/document-viewer-page-DiD-zvuQ.js +0 -1
- package/dist/assets/emails-page-6gtVUatK.js +0 -1
- package/dist/assets/esm-BIibMYYI.js +0 -2
- package/dist/assets/esm-C2UI3fJI.js +0 -1
- package/dist/assets/esm-CKmAcBkR.js +0 -2
- package/dist/assets/esm-Cdr0McT5.js +0 -2
- package/dist/assets/esm-DwZucAaM.js +0 -2
- package/dist/assets/esm-RkUhkAaB.js +0 -1
- package/dist/assets/esm-hIaXWbzt.js +0 -2
- package/dist/assets/file-editor-D0P-Gy-a.js +0 -1
- package/dist/assets/general-page-BZQ7yEvH.js +0 -2
- package/dist/assets/hatching-screen-DBprFgEA.js +0 -1
- package/dist/assets/home-BPS0f4TE.js +0 -1
- package/dist/assets/home-CQg1DdTP.js +0 -1
- package/dist/assets/home-D8aw_BU0.js +0 -1
- package/dist/assets/home-DNL59CrR.js +0 -1
- package/dist/assets/identity-page-route-BfgfhU08.js +0 -7
- package/dist/assets/inspect-page-CH3uVGix.js +0 -9
- package/dist/assets/integrations-page-0clh02lf.js +0 -1
- package/dist/assets/intelligence-layout-CC6J5rMH.js +0 -1
- package/dist/assets/intelligence-layout-slots-store-BrxvOjyS.js +0 -1
- package/dist/assets/keyboard-shortcuts-redirect-page-B1HB0ZJQ.js +0 -1
- package/dist/assets/library-page-CHncUGxN.js +0 -1
- package/dist/assets/local-mode-D_-1ec4p.js +0 -1
- package/dist/assets/login-page-D2uVokBF.js +0 -1
- package/dist/assets/logout-page-H2ViUr-T.js +0 -1
- package/dist/assets/markdown-preview-BJR1Lp-C.js +0 -1
- package/dist/assets/memory-page-route-BBFz1YiU.js +0 -2
- package/dist/assets/metric-card-lmiHO3PF.js +0 -1
- package/dist/assets/native-attachment-pickers-BhYBtKp-.js +0 -1
- package/dist/assets/native-file-D0FCYmrg.js +0 -1
- package/dist/assets/notifications-page-BmNyEMIk.js +0 -1
- package/dist/assets/paired-platform-identity-BqBlEtsv.js +0 -1
- package/dist/assets/password-reset-page-DakZp7KC.js +0 -1
- package/dist/assets/pdf-file-preview-BxCXMhqC.js +0 -1
- package/dist/assets/personality-page-BU6yPK14.js +0 -1
- package/dist/assets/personality-page-Dm9LQmBW.js +0 -1
- package/dist/assets/personality-sliders-Dehyaji_.js +0 -1
- package/dist/assets/plans-page-CAyi2Nxa.js +0 -1
- package/dist/assets/plugins-surface-CrFNy0ps.js +0 -1
- package/dist/assets/privacy-page-BcpCT1Vb.js +0 -1
- package/dist/assets/profile-card-BP9AMkh4.js +0 -1
- package/dist/assets/referral-modal-Bd_Bwh5m.js +0 -1
- package/dist/assets/referral-modal-Ts_6L7Jq.js +0 -1
- package/dist/assets/research-onboarding-route-BXcRnuIA.js +0 -50
- package/dist/assets/review-terms-screen-DZCb5jS5.js +0 -1
- package/dist/assets/routes-CpEsYa-V.js +0 -1
- package/dist/assets/schedules-EEPosYPL.js +0 -1
- package/dist/assets/schedules-page-Dqs-gg7s.js +0 -1
- package/dist/assets/security-redirect-page-BUtDM_HH.js +0 -1
- package/dist/assets/select-assistant-screen-BOubdStJ.js +0 -1
- package/dist/assets/settings-BINiGaSx.js +0 -3
- package/dist/assets/settings-BMnYDo1R.js +0 -3
- package/dist/assets/settings-DJn8gNBn.js +0 -3
- package/dist/assets/settings-divider-y1Y7piXi.js +0 -1
- package/dist/assets/settings-jhraG5hY.js +0 -3
- package/dist/assets/settings-layout-7t6GBbdu.js +0 -1
- package/dist/assets/share-feedback-modal-DnH2sXjE.js +0 -2
- package/dist/assets/share-feedback-modal-DuI0v7AI.js +0 -1
- package/dist/assets/skill-detail-page-nWwa0XFq.js +0 -2
- package/dist/assets/skill-detail-panel-9H7ft8ro.js +0 -1
- package/dist/assets/stt-language-picker-modal-Dgcq9xkd.js +0 -1
- package/dist/assets/subagent-detail-panel-U4m5BxZG.js +0 -1
- package/dist/assets/superpowers-page-WkwbyGXZ.js +0 -1
- package/dist/assets/system-events-page-Bw9HBTD3.js +0 -1
- package/dist/assets/system-events-redirect-page-BfQvezRk.js +0 -1
- package/dist/assets/tool-detail-panel-B9PQpvb8.js +0 -16
- package/dist/assets/tool-detail-panel-Bt4vBf09.js +0 -1
- package/dist/assets/upgrade-cancel-page-CfqBVU8V.js +0 -1
- package/dist/assets/use-app-delete-vuGBgQkn.js +0 -1
- package/dist/assets/use-assistant-identity-details-CrWNdPFJ.js +0 -1
- package/dist/assets/use-checkout-dismiss-refresh-BwT2zWIT.js +0 -1
- package/dist/assets/use-invite-link-dialog-CCACCzhi.js +0 -1
- package/dist/assets/use-plugins-list-D-azzToZ.js +0 -1
- package/dist/assets/use-return-to-short-circuit-CpUBlNYt.js +0 -1
- package/dist/assets/use-side-list-room-DoHREePf.js +0 -1
- package/dist/assets/use-skill-actions-DG-ZngUy.js +0 -1
- package/dist/assets/use-skill-detail-files-CHrwga8E.js +0 -1
- package/dist/assets/use-supports-credentials-settings-Bq6T6gWf.js +0 -1
- package/dist/assets/use-transcript-message-by-id-Bfbshp9w.js +0 -1
- package/dist/assets/use-truncated-blob-text-hsQUTRQS.js +0 -1
- package/dist/assets/vendor-DEhKVoiV.js +0 -127
- package/dist/assets/voice-page-DiAOJ_tF.js +0 -1
- package/dist/assets/welcome-screen-DgJPqZ2G.js +0 -1
- package/dist/assets/workflow-detail-panel-DmsjHIzU.js +0 -1
- package/dist/assets/workspace-page-DHnNp7n8.js +0 -1
- /package/dist/assets/{account-CbGEbks2.js → account-BkxBMG9Z.js} +0 -0
- /package/dist/assets/{account-CumXdfDs.js → account-D5JdUO7K.js} +0 -0
- /package/dist/assets/{account-DmCG0I7Y.js → account-DYG79724.js} +0 -0
- /package/dist/assets/{account-CFZslirV.js → account-OIF2BHH7.js} +0 -0
- /package/dist/assets/{activation-Bly8xYKj.js → activation-C91KPzrh.js} +0 -0
- /package/dist/assets/{activation-CV4BcpUb.js → activation-Dd7eAIHs.js} +0 -0
- /package/dist/assets/{activation-Cn5oNHNz.js → activation-ReimSfhn.js} +0 -0
- /package/dist/assets/{activation-tasks-Xby0ArJP.js → activation-tasks-D4dorV2v.js} +0 -0
- /package/dist/assets/{activation-tasks-CDweZ7KB.js → activation-tasks-efxGWsFw.js} +0 -0
- /package/dist/assets/{activation-DtrycgQA.js → activation-tasks-rViOqW7C.js} +0 -0
- /package/dist/assets/{activation-tasks-CixG0BPC.js → activation-tasks-wtMwJ0EV.js} +0 -0
- /package/dist/assets/{activation-tasks-DLwbX7H6.js → activation-yoBQ36AY.js} +0 -0
- /package/dist/assets/{app-types-oLaS-mTA.js → app-types-BoY_FOAH.js} +0 -0
- /package/dist/assets/{build.umd-BaRFq_Ke.js → build.umd-B0ATW5UM.js} +0 -0
- /package/dist/assets/{credential-requests-eqWotlgu.js → credential-requests-CmFaXPwz.js} +0 -0
- /package/dist/assets/{credential-requests-BeJ7dLjs.js → credential-requests-D3J3i5oa.js} +0 -0
- /package/dist/assets/{credential-requests-CF1Ijjel.js → credential-requests-gl4lfjL4.js} +0 -0
- /package/dist/assets/{credential-requests-LPv1X_JL.js → credential-requests-h908NRpv.js} +0 -0
- /package/dist/assets/{definitions-DgScTjwR.js → definitions-BUCExH-9.js} +0 -0
- /package/dist/assets/{definitions-BSvId-nJ.js → definitions-DpZNNWA7.js} +0 -0
- /package/dist/assets/{diff-rows-BqIfjsWM.js → diff-rows-D2cn4P1P.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-BA5JcZe8.js → emoji-catalog-data-DsyEWO16.js} +0 -0
- /package/dist/assets/{format-countdown-D18PVUfL.js → format-countdown-l7vj-IPm.js} +0 -0
- /package/dist/assets/{is-record-M98oimiB.js → is-record-CNwRuI6a.js} +0 -0
- /package/dist/assets/{library-BIeEceZf.js → library-CFGvGWZt.js} +0 -0
- /package/dist/assets/{library-CGe-F8G4.js → library-CmSFUt9r.js} +0 -0
- /package/dist/assets/{library-BDlOjOSg.js → library-D26ezl8B.js} +0 -0
- /package/dist/assets/{library-Dq184-kl.js → library-Dv9w5D8Z.js} +0 -0
- /package/dist/assets/{link-click-IkiMmOF_.js → link-click-CR9uUEsb.js} +0 -0
- /package/dist/assets/{logs-CN-P4Dk3.js → logs-5jFWrQRx.js} +0 -0
- /package/dist/assets/{logs-kLiH3IW-.js → logs-BJTGRcSn.js} +0 -0
- /package/dist/assets/{logs-CM1ISsDq.js → logs-BPrpYBp7.js} +0 -0
- /package/dist/assets/{logs-vLJHUPMP.js → logs-BpX8Zuzb.js} +0 -0
- /package/dist/assets/{machine-sizes-BWbhowrp.js → machine-sizes-srbag24Q.js} +0 -0
- /package/dist/assets/{onboarding-EqfHzA5u.js → onboarding-B9_JitSg.js} +0 -0
- /package/dist/assets/{onboarding-DcqUEEaz.js → onboarding-BrS1fcVE.js} +0 -0
- /package/dist/assets/{onboarding-BW2dh5pt.js → onboarding-Cx2yoeE5.js} +0 -0
- /package/dist/assets/{onboarding-Cnq4igvs.js → onboarding-cBGAfB74.js} +0 -0
- /package/dist/assets/{onboarding-step-layout-WvEjfCnx.js → onboarding-step-layout-BsqZaEHR.js} +0 -0
- /package/dist/assets/{pdf-DgsCrxEh.js → pdf-_tTrkaWt.js} +0 -0
- /package/dist/assets/{plugin-attribution-LzmgCiDL.js → plugin-attribution-RBBRvghI.js} +0 -0
- /package/dist/assets/{radio-card-nav-CuptkxL2.js → radio-card-nav-Br8358Zh.js} +0 -0
- /package/dist/assets/{remote-web-CobukhvR.js → remote-web-42kFkA33.js} +0 -0
- /package/dist/assets/{remote-web-C3yUczL8.js → remote-web-CFPdQIeJ.js} +0 -0
- /package/dist/assets/{remote-web-DwpqtwUx.js → remote-web-DFX945w2.js} +0 -0
- /package/dist/assets/{remote-web-DCSDDZCE.js → remote-web-DkzrBzGi.js} +0 -0
- /package/dist/assets/{schedules-IzKLt3Kb.js → schedules-Bk7XGnqS.js} +0 -0
- /package/dist/assets/{schedules-C2TWanDm.js → schedules-CGU7CKaM.js} +0 -0
- /package/dist/assets/{schedules-DmPN1i2h.js → schedules-J687h0Fh.js} +0 -0
- /package/dist/assets/{schedules-DQk79n5p.js → schedules-JnprnWDo.js} +0 -0
- /package/dist/assets/{signup-onboarding-handoff-C8_xhSTf.js → signup-onboarding-handoff-BIo7lFvP.js} +0 -0
- /package/dist/assets/{skill-icon-DUIePVIz.js → skill-icon-CWKAcXVy.js} +0 -0
- /package/dist/assets/{status-badge-pill-Cc18wQfL.js → status-badge-pill-qGQ5gRiz.js} +0 -0
- /package/dist/assets/{terminal-giCEJEW0.js → terminal-BV6xg9ZA.js} +0 -0
- /package/dist/assets/{terminal-Dl-IbvuO.js → terminal-BjOF3LBT.js} +0 -0
- /package/dist/assets/{terminal-DXPsXc9Y.js → terminal-CYHsl1AH.js} +0 -0
- /package/dist/assets/{terminal-Cy7FbQYY.js → terminal-Cxm0NKaj.js} +0 -0
- /package/dist/assets/{usage-window-BQhWVCSl.js → usage-window-DJWFtBw1.js} +0 -0
- /package/dist/assets/{use-debounced-value-Dc_Camyk.js → use-debounced-value-CiNn3pzA.js} +0 -0
- /package/dist/assets/{xterm-DDBpEHv9.js → xterm-Pyzkt_-B.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-RknS6doH.js → xterm-addon-fit-HaY_WHvm.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{AC as t,Cp as n,DC as r,EC as i,Ey as a,IS as o,Ir as s,JS as c,KS as l,Lr as u,MS as d,Nm as f,OC as p,Rr as m,Sl as h,Sp as g,Sy as _,Tp as v,_C as y,_f as b,_u as x,_y as S,bc as C,bp as w,cC as T,dm as E,eC as D,eS as O,fm as k,gS as A,gi as j,gm as M,gu as N,hi as P,hu as F,jm as I,kC as L,lC as ee,lS as R,mC as z,mc as te,mi as ne,nC as B,nt as re,pC as V,p_ as ie,pc as H,pd as ae,pm as oe,qS as U,tS as se,um as ce,vC as W,wp as le,wy as G,xp as ue,yi as de,yy as fe,zi as pe,zr as me}from"./app-Qc-rYPt9.js";import{$n as he,Qn as K,Yn as ge,j as q,tr as J}from"./vendor-DEhKVoiV.js";import{_ as _e,d as ve,f as ye,t as be,x as xe}from"./react-B9IgSVeK.js";import{$r as Se,A as Ce,At as we,D as Y,Ji as X,Lt as Te,Pt as Ee,Ya as De,Yn as Oe,Zr as ke,a as Ae,dr as je,ft as Me,gt as Ne,i as Pe,li as Fe,qi as Ie,vt as Le,za as Re}from"./icons-C0wyat6T.js";import{a as ze,n as Be,r as Ve,u as He}from"./use-plugins-list-D-azzToZ.js";var Ue=De(`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`}]]),We=[`productivity`,`communication`,`meetings`,`sales`,`marketing`,`finance`,`commerce`,`engineering`,`knowledge`,`recruiting`],Ge=new Set(We);function Ke(e){return typeof e==`string`&&Ge.has(e)}var Z=e(xe(),1),Q=be(),qe={"mcp-oauth":Ue,"mcp-manual":Ue,"managed-oauth":Me,"own-oauth":je};function Je(e){let{t}=q(`settings`);return(0,Z.useCallback)(n=>{switch(n.kind){case`mcp-oauth`:return t(`connectMethod.mcp`,{name:e});case`mcp-manual`:return t(`connectMethod.mcpManual`);case`managed-oauth`:return t(`connectMethod.managed`);case`own-oauth`:return t(`connectMethod.own`)}},[t,e])}function Ye(e,t,n){return e.map(e=>(0,Q.jsx)(W.Item,{icon:qe[e.kind],label:t(e),onSelect:()=>n(e)},e.id))}var Xe={slack:`slack_channel`,discord:`discord_channel`,telegram:`telegram`};function Ze(e){return Object.entries(Xe).some(([t,n])=>t===e&&n!==e)}function Qe(e){return`plugin:${e}`}function $e(e){let t=e.filter(e=>e.transport.type!==`stdio`&&e.status!==`connected`);return t.length===1?t[0].id:null}function et(e){return async()=>(await e.install(),$e(await e.loadPluginServers()))}function tt(e,t){return e.filter(e=>e.source===`plugin`&&e.pluginName===t)}function nt(e){return Ke(e)?e:null}function rt(e){let{connectedCount:t,needsAttention:n}=at(e,[]);return{connectedCount:t,needsAttention:n}}function it(e,t){return e.filter(e=>e.provider===t)}function at(e,t,n=!0){let r=t.flatMap(e=>e.servers),i=t.filter(e=>st(e,n));return{connectedCount:e.filter(e=>e.connected).length+r.filter(e=>e.status===`connected`).length,needsAttention:e.some(e=>!e.connected)||i.some(e=>e.servers.some(e=>e.status!==`connected`)),configured:e.length>0||i.length>0}}function ot(e){return e.status===`connected`||e.hasOAuth||e.hasStaticAuth}function st(e,t=!0){return t?e.servers.some(ot)?!0:!!e.definition.installed&&$e(e.servers)===null:!!e.definition.installed||e.servers.length>0}function ct(e){if(e.transport.url)try{return new URL(e.transport.url).hostname}catch{return}}function lt(e,t,n,r=[],i=!0){let a=r.map(e=>({definition:e,servers:tt(n,e.pluginName)})),o=new Set,s=new Set(a.flatMap(e=>e.servers));return[...e.filter(e=>e.supports_managed_mode).flatMap(e=>{let n=it(t,e.provider_key);if(Ze(e.provider_key)&&n.length===0)return[];let r=a.filter(t=>t.definition.oauthProvider===e.provider_key);return r.forEach(e=>o.add(e)),[{kind:`oauth`,id:`oauth:${e.provider_key}`,name:e.display_name??e.provider_key,description:[e.description,...r.map(e=>e.definition.description)].filter(Boolean).join(` `),configured:at(n,r,i).configured,category:nt(e.category),provider:e,connections:n,methods:r}]}),...a.filter(e=>!o.has(e)).map(e=>({kind:`plugin`,id:`plugin:${e.definition.pluginName}`,name:e.definition.displayName,description:e.definition.description,configured:st(e,i),category:e.definition.category??null,method:e})),...n.filter(e=>!s.has(e)).map(e=>({kind:`mcp`,id:`mcp:${e.id}`,name:e.id,description:[e.pluginName,ct(e)].filter(Boolean).join(` `),configured:!0,category:null,server:e}))]}function ut(e,t,n=null){let r=t.trim().toLocaleLowerCase();return e.filter(e=>!n||e.category===n).filter(e=>!r||e.name.toLocaleLowerCase().includes(r)||e.description.toLocaleLowerCase().includes(r)).sort((e,t)=>Number(t.configured)-Number(e.configured)||e.name.localeCompare(t.name)||e.id.localeCompare(t.id))}function dt(e){return e.logo?de(`/images/integrations/${e.logo}`):null}function ft(e){return e===`mcp-oauth`||e===`mcp-manual`}function pt(e){switch(e.status){case`connected`:return`connected`;case`connecting`:case`starting`:return`connecting`;case`declared`:return`pending`;default:return`needs-attention`}}function mt(e,t,n){let r=e.servers.length>1;return e.servers.map(e=>{let i=pt(e);return{id:`mcp:${e.id}`,methodId:t,methodKind:n,label:r?e.id:null,detail:ct(e),status:i,pluginName:e.pluginName,serverId:e.id,canReconnect:i!==`connected`&&i!==`connecting`&&e.transport.type!==`stdio`&&!e.hasStaticAuth}})}function ht(e,t,n){return{id:`plugin:${e.pluginName}`,methodId:t,methodKind:n,label:null,status:`pending`,pluginName:e.pluginName,canReconnect:!1}}function gt(e,t){return e.map(e=>({id:`oauth:${e.id}`,methodId:t,methodKind:`managed-oauth`,label:e.account_label,accountId:e.id,status:e.connected?`connected`:`needs-attention`,canReconnect:!e.connected}))}function _t(e,t){let{definition:n}=e,r=n.setup.mode===`manual`?`mcp-manual`:`mcp-oauth`,i=`mcp:${n.pluginName}`,a=t&&e.servers.length===0&&n.installed;return{id:i,kind:r,availability:`available`,instructions:n.setup.instructions,setupGuideUrl:n.documentationUrl,connections:a?[ht(n,i,r)]:mt(e,i,r),plugin:n}}function vt(e,t){let n=[],r,i=null,a;if(e.kind===`oauth`){r=e.provider.provider_key,i=e.provider.logo_url,a=e.provider.description;for(let r of e.methods)n.push(_t(r,t.mcpServersLoaded));if(t.platformGate!==`gated`){let r=`managed:${e.provider.provider_key}`;n.push({id:r,kind:`managed-oauth`,availability:t.platformGate===`full`?`available`:`login-required`,connections:gt(e.connections,r)})}t.ownOAuthAvailable&&n.push({id:`own:${e.provider.provider_key}`,kind:`own-oauth`,availability:`available`,setupGuideUrl:e.provider.dashboard_url??void 0,connections:[]})}else{let{definition:o}=e.method;r=o.pluginName,i=dt(o),a=o.description,n.push(_t(e.method,t.mcpServersLoaded))}let[o,...s]=n;return o?{name:e.name,description:a,iconKey:r,logoUrl:i,primary:o,alternatives:s}:null}function yt(e){return[e.primary,...e.alternatives]}function bt(e){return yt(e).flatMap(e=>e.connections)}function xt(e){return yt(e).filter(e=>!ft(e.kind)||e.connections.length===0)}var $=`pointer-coarse:size-11`,St=[`flex flex-wrap items-start gap-2 [&>*]:shrink-0`,`[&_button]:max-w-full [&_button]:whitespace-normal`,`[&_button]:pointer-coarse:min-h-11`].join(` `);function Ct({icon:e,title:t,subtitle:n,status:r,primaryAction:i,actionMenu:a,layout:o=`row`}){return o===`tile`?(0,Q.jsxs)(z.Root,{bordered:!0,className:`flex h-full flex-col gap-3 transition-colors hover:border-[var(--border-hover)]`,children:[(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[e,(0,Q.jsxs)(`div`,{className:`${St} justify-end`,children:[i,a]})]}),(0,Q.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[(0,Q.jsx)(`p`,{className:`text-title-small text-[var(--content-default)] [overflow-wrap:anywhere]`,children:t}),(0,Q.jsx)(`p`,{className:`line-clamp-2 min-h-9 text-body-small-lighter text-[var(--content-tertiary)] [overflow-wrap:anywhere]`,children:n})]})]}):(0,Q.jsx)(z.Root,{children:(0,Q.jsxs)(z.Body,{padding:`md`,className:`grid grid-cols-[2rem_minmax(6rem,1fr)_minmax(0,auto)] items-start gap-x-3`,children:[e,(0,Q.jsxs)(`div`,{className:`min-w-0 space-y-1`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Q.jsx)(`p`,{className:`text-title-small text-[var(--content-default)] [overflow-wrap:anywhere]`,children:t}),r]}),n?(0,Q.jsx)(`p`,{className:`line-clamp-2 text-body-medium-lighter text-[var(--content-tertiary)] [overflow-wrap:anywhere]`,children:n}):null]}),(0,Q.jsxs)(`div`,{className:`${St} col-start-3 row-start-1 justify-end`,children:[i,a]})]})})}function wt({plan:e,title:t,description:n}){return(0,Q.jsx)(c.Header,{children:(0,Q.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Q.jsx)(me,{providerKey:e.iconKey,displayName:e.name,logoUrl:e.logoUrl,size:40}),(0,Q.jsxs)(`div`,{className:`flex min-w-0 flex-col`,children:[(0,Q.jsx)(c.Title,{className:`[&>span]:whitespace-normal`,children:t}),(0,Q.jsx)(c.Description,{children:n})]})]})})}function Tt({plan:e,attempt:t,focusMethodId:n,callbackUrl:r,callbackCopied:a=!1,toolsByConnectionId:o,ownOAuthContent:s,tenantHost:u,onConnect:d,onLogin:f,onCancelAttempt:p,onRetryAttempt:m,onReconnect:h,onDisconnect:g,onOpenTools:_,onCopyCallbackUrl:v,onOpenSetupGuide:y,onClose:b}){let{t:x}=q(`settings`),S=Je(e.name),C=yt(e),w=bt(e),[T,E]=(0,Z.useState)(()=>n?{kind:`connect`,methodId:n}:w.length>0?{kind:`connections`}:{kind:`connect`,methodId:e.primary.id}),[D,O]=(0,Z.useState)(!1),[k,A]=(0,Z.useState)(null);function j(t){return t.kind===`connect`?t:w.length===0?{kind:`connect`,methodId:e.primary.id}:t.kind===`tools`&&!w.some(e=>e.id===t.connectionId)?{kind:`connections`}:t}let M=j(T);function N(e){switch(e.kind){case`mcp-oauth`:case`mcp-manual`:return x(`integrationConnect.tagMcp`);case`managed-oauth`:return x(`integrationConnect.tagVellum`);case`own-oauth`:return x(`integrationConnect.tagOwnApp`)}}function P(t){return t.label?t.label:ft(t.methodKind)?x(`integrationConnect.connectionMcpLabel`,{name:e.name}):x(`integrationConnect.connectionAccountLabel`,{name:e.name})}function F(e,t){return Ye(e,S,t)}function I(e){O(!1),E({kind:`connect`,methodId:e.id})}function L(){if(w.length>0){E({kind:`connections`});return}E({kind:`connect`,methodId:e.primary.id})}let ee=M.kind===`tools`?w.find(e=>e.id===M.connectionId):void 0,R=M.kind===`connect`?C.find(e=>e.id===M.methodId)??e.primary:e.primary;function z(e){let t=e.setupGuideUrl;return t?(0,Q.jsx)(i,{variant:`ghost`,className:`mr-auto min-h-11`,leftIcon:(0,Q.jsx)(ke,{}),onClick:()=>y(t),children:x(`integrationConnect.setupGuide`)}):null}return(0,Q.jsxs)(c.Root,{open:!0,onOpenChange:e=>{e||b()},children:[(0,Q.jsx)(c.Content,{size:`md`,children:M.kind===`connect`?(0,Q.jsx)(Et,{plan:e,method:R,setupGuide:z(R),methods:C,attempt:t,callbackUrl:r,callbackCopied:a,ownOAuthContent:s,tenantHost:u,acknowledged:D,hasConnections:w.length>0,methodItems:F,onAcknowledge:O,onPickMethod:I,onBack:L,onConnect:d,onLogin:f,onCancelAttempt:p,onRetryAttempt:m,onCopyCallbackUrl:v,onClose:b}):M.kind===`tools`?(0,Q.jsx)(Mt,{plan:e,connection:ee,title:ee?P(ee):e.name,tools:o?.[M.connectionId],onBack:()=>E({kind:`connections`}),onClose:b}):(0,Q.jsx)(At,{plan:e,methods:C,connections:w,connectionTitle:P,methodTag:N,methodItems:F,onPickMethod:I,onOpenTools:e=>{_?.(e),E({kind:`tools`,connectionId:e.id})},onReconnect:e=>{h(e),E({kind:`connect`,methodId:e.methodId})},onRequestDisconnect:A,onClose:b})}),(0,Q.jsx)(l,{open:k!==null,destructive:!0,title:x(`integrationConnect.removeTitle`,{label:k?P(k):``}),message:x(`integrationConnect.removeMessage`),confirmLabel:x(`integrationConnect.remove`),cancelLabel:x(`integrationConnect.cancel`),onConfirm:()=>{k&&g(k),A(null)},onCancel:()=>A(null)})]})}function Et({plan:e,method:t,methods:n,attempt:r,callbackUrl:a,callbackCopied:o,ownOAuthContent:s,tenantHost:l,acknowledged:u,hasConnections:d,setupGuide:f,methodItems:p,onAcknowledge:h,onPickMethod:g,onBack:_,onConnect:v,onLogin:b,onCancelAttempt:x,onRetryAttempt:S,onCopyCallbackUrl:C,onClose:w}){let{t:T}=q(`settings`),E=t.kind===`managed-oauth`?l:null,D=m(E),O=r?.methodId===t.id?r:null,k=O!==null&&O.phase!==`error`,A=t.availability===`login-required`,j=t.kind===`mcp-manual`&&a!==void 0&&(!u||a.status!==`ready`),M=t.id!==e.primary.id||d,N=n.filter(e=>e.id!==t.id);return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(wt,{plan:e,title:T(`integrationConnect.connectTitle`,{name:e.name}),description:e.description??T(`integrationConnect.connectDescription`,{name:e.name})}),(0,Q.jsxs)(c.Body,{className:`space-y-4`,children:[M?(0,Q.jsx)(i,{variant:`ghost`,leftIcon:(0,Q.jsx)(Re,{}),onClick:_,children:T(`integrationConnect.back`)}):null,A?(0,Q.jsx)(V,{tone:`info`,children:T(`integrationConnect.loginRequired`,{name:e.name})}):null,O?(0,Q.jsx)(Dt,{name:e.name,attempt:O,onCancel:x,onRetry:S}):null,E?(0,Q.jsx)(B,{label:E.label,type:`text`,value:D.value,onChange:e=>D.setValue(e.target.value),placeholder:E.placeholder,"aria-invalid":D.showsInvalid||void 0,helperText:D.showsInvalid?T(`integrationConnect.tenantHostInvalid`,{label:E.label,placeholder:E.placeholder}):void 0,disabled:k,autoComplete:`off`,autoCapitalize:`none`,spellCheck:!1,fullWidth:!0}):null,t.kind===`mcp-manual`?(0,Q.jsx)(Ot,{instructions:t.instructions,name:e.name,callbackUrl:a,callbackCopied:o,acknowledged:u,onAcknowledge:h,onCopyCallbackUrl:C}):t.kind===`own-oauth`?s:(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-secondary)]`,children:t.instructions??T(`integrationConnect.browserHint`,{name:e.name})})]}),(0,Q.jsxs)(c.Footer,{children:[f,(0,Q.jsx)(i,{variant:`ghost`,className:`min-h-11`,onClick:w,children:T(`integrationConnect.cancel`)}),t.kind===`own-oauth`?null:(0,Q.jsx)(y,{className:`min-h-11`,disabled:k||j||!D.valid,menuDisabled:k,leftIcon:k?(0,Q.jsx)(Oe,{className:`animate-spin`}):null,menuTitle:T(`integrationConnect.otherWays`),menuTriggerLabel:T(`connectMethod.otherWaysLabel`,{name:e.name}),menuItems:p(N,g),onClick:()=>A?b():v(t,{acknowledged:u,tenantHost:D.normalized}),children:T(A?`integrationConnect.loginToConnect`:`integrationConnect.connect`)})]})]})}function Dt({name:e,attempt:t,onCancel:n,onRetry:r}){let{t:a}=q(`settings`);if(t.phase===`error`)return(0,Q.jsx)(V,{tone:`error`,actions:(0,Q.jsxs)(`div`,{className:`flex gap-2`,children:[(0,Q.jsx)(i,{variant:`outlined`,onClick:r,children:a(`integrationConnect.retry`)}),(0,Q.jsx)(i,{variant:`ghost`,onClick:n,children:t.canCancel?a(`integrationConnect.stopWaiting`):a(`integrationConnect.cancel`)})]}),children:(0,Q.jsx)(`p`,{children:t.error??a(`integrationConnect.attemptFailed`,{name:e})})});let o=t.phase===`starting`?a(`integrationConnect.attemptStarting`,{name:e}):t.phase===`connecting`?a(`integrationConnect.attemptConnecting`,{name:e}):a(`integrationConnect.attemptWaiting`,{name:e});return(0,Q.jsx)(V,{tone:`info`,icon:(0,Q.jsx)(Oe,{className:`h-4 w-4 animate-spin`,"aria-hidden":`true`}),actions:t.canCancel?(0,Q.jsx)(i,{variant:`ghost`,onClick:n,children:a(`integrationConnect.stopWaiting`)}):void 0,children:o})}function Ot({instructions:e,name:t,callbackUrl:n,callbackCopied:r,acknowledged:a,onAcknowledge:o,onCopyCallbackUrl:s}){let{t:c}=q(`settings`),l=n?.status===`ready`?n.url:void 0,u=e?(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-secondary)]`,children:e}):null;return n?(0,Q.jsxs)(Q.Fragment,{children:[u,(0,Q.jsxs)(`ol`,{className:`space-y-4`,children:[(0,Q.jsxs)(kt,{index:1,children:[(0,Q.jsx)(`p`,{className:`text-body-medium-default`,children:c(`integrationConnect.manualStep1`)}),l?(0,Q.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md border border-[var(--border-base)] bg-[var(--surface-base)] px-3 py-2`,children:[(0,Q.jsx)(`code`,{className:`min-w-0 flex-1 font-mono text-body-small-default [overflow-wrap:anywhere]`,children:l}),s?(0,Q.jsx)(i,{variant:`outlined`,size:`compact`,leftIcon:r?(0,Q.jsx)(X,{}):(0,Q.jsx)(Fe,{}),onClick:()=>s(l),children:c(r?`integrationConnect.copied`:`integrationConnect.copy`)}):null]}):(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:n?.status===`error`?c(`integrationConnect.callbackError`):c(`integrationConnect.callbackLoading`)})]}),(0,Q.jsx)(kt,{index:2,children:(0,Q.jsx)(`p`,{className:`text-body-medium-default`,children:c(`integrationConnect.manualStep2`,{name:t})})}),(0,Q.jsx)(kt,{index:3,children:(0,Q.jsx)(D,{checked:a,onCheckedChange:e=>o(e===!0),label:c(`integrationConnect.manualStep3`)})})]})]}):u}function kt({index:e,children:t}){return(0,Q.jsxs)(`li`,{className:`flex gap-3`,children:[(0,Q.jsx)(`span`,{className:`w-3 shrink-0 text-body-medium-default text-[var(--content-tertiary)]`,children:e}),(0,Q.jsx)(`div`,{className:`min-w-0 flex-1 space-y-2`,children:t})]})}function At({plan:e,methods:t,connections:n,connectionTitle:r,methodTag:a,methodItems:o,onPickMethod:s,onOpenTools:l,onReconnect:u,onRequestDisconnect:f,onClose:p}){let{t:m}=q(`settings`),h=xt(e);function g(e){let n=t.find(t=>t.id===e.methodId);if(t.length<2||!n)return e.detail;let r=a(n);return e.detail?m(`integrationConnect.connectionSubtitle`,{method:r,detail:e.detail}):r}return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(wt,{plan:e,title:e.name,description:m(`integrationConnect.connectionsDescription`,{name:e.name})}),(0,Q.jsx)(c.Body,{children:(0,Q.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)]`,children:n.map(e=>(0,Q.jsx)(d,{title:r(e),subtitle:g(e),trailingInteractive:!0,trailing:(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2 touch-mobile:max-w-24`,children:[(0,Q.jsx)(jt,{status:e.status}),e.canReconnect?(0,Q.jsx)(i,{variant:`outlined`,size:`compact`,leftIcon:(0,Q.jsx)(we,{}),onClick:()=>u(e),children:e.status===`pending`?m(`integrationConnect.finishConnecting`):m(`integrationConnect.reconnect`)}):null,ft(e.methodKind)?(0,Q.jsx)(i,{variant:`outlined`,className:$,iconOnly:(0,Q.jsx)(Ae,{}),"aria-label":m(`integrationConnect.toolsAndDetailsLabel`,{label:r(e)}),onClick:()=>l(e)}):null,(0,Q.jsx)(i,{variant:`dangerOutline`,className:$,iconOnly:(0,Q.jsx)(Ce,{}),"aria-label":m(`integrationConnect.removeLabel`,{label:r(e)}),onClick:()=>f(e)})]})},e.id))})}),(0,Q.jsxs)(c.Footer,{children:[h.length>0?(0,Q.jsxs)(W.Root,{children:[(0,Q.jsx)(W.Trigger,{asChild:!0,children:(0,Q.jsx)(i,{variant:`outlined`,className:`min-h-11`,rightIcon:(0,Q.jsx)(Ie,{}),children:m(`integrationConnect.connectAnother`)})}),(0,Q.jsx)(W.Content,{title:m(`integrationConnect.connectAnother`),children:o(h,s)})]}):null,(0,Q.jsx)(i,{className:`min-h-11`,onClick:p,children:m(`integrationConnect.done`)})]})]})}function jt({status:e}){let{t}=q(`settings`);switch(e){case`needs-attention`:return(0,Q.jsx)(T,{tone:`negative`,children:t(`integrationConnect.statusNeedsAttention`)});case`connecting`:return(0,Q.jsx)(T,{children:t(`integrationConnect.statusConnecting`)});case`pending`:return(0,Q.jsx)(T,{children:t(`integrationConnect.statusPending`)});case`connected`:return null}}function Mt({plan:e,connection:t,title:n,tools:r,onBack:a,onClose:s}){let{t:l}=q(`settings`),u=r?.summary;return(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(wt,{plan:e,title:n,description:l(`integrationConnect.toolsAndDetails`)}),(0,Q.jsxs)(c.Body,{className:`space-y-4`,children:[(0,Q.jsx)(i,{variant:`ghost`,leftIcon:(0,Q.jsx)(Re,{}),onClick:a,children:l(`integrationConnect.back`)}),(0,Q.jsxs)(`dl`,{className:`space-y-1`,children:[(0,Q.jsx)(`dt`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:l(`integrationConnect.endpoint`)}),(0,Q.jsx)(`dd`,{className:`font-mono text-body-small-default text-[var(--content-tertiary)] [overflow-wrap:anywhere]`,children:r?.endpointUrl??t?.detail??l(`integrationConnect.endpointUnknown`)})]}),r?.loading?(0,Q.jsx)(`p`,{role:`status`,className:`text-body-small-default text-[var(--content-tertiary)]`,children:l(`integrationConnect.toolsLoading`)}):r?.error?(0,Q.jsx)(`p`,{role:`alert`,className:`text-body-small-default text-[var(--content-tertiary)]`,children:l(`integrationConnect.toolsError`)}):u&&u.tools.length>0?(0,Q.jsxs)(`div`,{className:`space-y-2`,children:[(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:l(`integrationConnect.toolsSummary`,{count:u.toolCount,tokens:u.estimatedTokens})}),(0,Q.jsx)(o.Root,{type:`multiple`,className:`rounded-lg border border-[var(--border-base)]`,children:u.tools.map(e=>(0,Q.jsxs)(o.Item,{value:e.name,className:`border-b border-[var(--border-base)] last:border-b-0`,children:[(0,Q.jsxs)(o.Trigger,{className:`justify-between gap-2 px-3 py-2.5 text-left [&[data-state=open]>svg]:rotate-180`,children:[(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate font-mono text-body-small-default`,children:e.name}),(0,Q.jsx)(Ie,{"aria-hidden":`true`,className:`h-4 w-4 shrink-0 text-[var(--content-tertiary)] transition-transform duration-150`})]}),(0,Q.jsx)(o.Content,{children:(0,Q.jsxs)(`div`,{className:`space-y-1 px-3 pb-3`,children:[e.description?(0,Q.jsx)(`p`,{className:`whitespace-pre-wrap text-body-small-default text-[var(--content-secondary)] [overflow-wrap:anywhere]`,children:e.description}):null,(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:l(`integrationConnect.toolTokens`,{tokens:e.estimatedTokens})})]})})]},e.name))})]}):(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:l(`integrationConnect.toolsEmpty`)})]}),(0,Q.jsx)(c.Footer,{children:(0,Q.jsx)(i,{className:`min-h-11`,onClick:s,children:l(`integrationConnect.done`)})})]})}function Nt({providerKey:e,displayName:t,description:n,logoUrl:r,connections:a,mcpMethods:o=[],disabled:s,onConfigure:c}){let{t:l}=q(`settings`),{connectedCount:u}=rt(a),{needsAttention:d,configured:f}=at(a,o);return(0,Q.jsx)(Ct,{icon:(0,Q.jsx)(me,{providerKey:e,displayName:t,logoUrl:r,size:32}),title:t,subtitle:u>0?l(`integrationRow.connectedAccounts`,{count:u}):n,status:d?(0,Q.jsx)(T,{tone:`negative`,children:l(`integrationRow.needsAttention`)}):void 0,primaryAction:f?(0,Q.jsx)(i,{variant:`outlined`,className:$,iconOnly:(0,Q.jsx)(Ne,{}),"aria-label":l(`integrationRow.configureLabel`,{name:t}),onClick:c,disabled:s}):(0,Q.jsx)(i,{variant:`primary`,onClick:c,disabled:s,children:l(`integrationRow.connect`)})})}function Pt({plan:e,state:t,layout:n=`tile`,showAlternatives:r=!1,disabled:a=!1,onConnect:o,onLogin:s,onCancel:c,onRetry:l,onOpenSetupGuide:u}){let{t:d}=q(`settings`),f=Je(e.name),p=L(),m=t.phase===`waiting`||t.phase===`connecting`,h=m&&!p;function g(e){if(e.availability===`login-required`){s();return}o(e)}function _(e){return Ye(e,f,g)}let v=r&&e.alternatives.length>0?(0,Q.jsx)(y,{variant:`outlined`,className:$,iconOnly:(0,Q.jsx)(Te,{}),"aria-label":d(`integrationTile.connect`,{name:e.name}),menuTitle:d(`integrationTile.connect`,{name:e.name}),menuTriggerLabel:d(`connectMethod.otherWaysLabel`,{name:e.name}),menuItems:_(yt(e)),disabled:a,onClick:()=>g(e.primary)}):(0,Q.jsx)(i,{variant:`outlined`,className:$,iconOnly:(0,Q.jsx)(Te,{}),"aria-label":d(`integrationTile.connect`,{name:e.name}),disabled:a,onClick:()=>g(e.primary)});return m?v=(0,Q.jsx)(zt,{name:e.name,state:t,announce:!h,onCancel:c}):t.phase===`failed`&&(v=(0,Q.jsx)(Rt,{plan:e,state:t,disabled:a,methodItems:_,onRetry:l,onOpenSetupGuide:u})),(0,Q.jsx)(Ct,{layout:n,icon:(0,Q.jsx)(me,{providerKey:e.iconKey,displayName:e.name,logoUrl:e.logoUrl,size:32}),title:e.name,subtitle:t.phase===`failed`?(0,Q.jsx)(Lt,{name:e.name,state:t}):h&&m?(0,Q.jsx)(`span`,{role:`status`,children:It(d,e.name,t)}):e.description??void 0,primaryAction:v})}var Ft=4e3;function It(e,t,n){return n.phase===`waiting`?e(`integrationTile.waiting`,{name:t}):e(`integrationTile.connecting`,{name:t})}function Lt({name:e,state:t}){let{t:n}=q(`settings`),r=t.error||n(`integrationTile.failedGeneric`,{name:e});return(0,Q.jsxs)(`span`,{role:`alert`,title:t.error||void 0,className:`font-medium text-[var(--system-negative-strong)]`,children:[(0,Q.jsx)(Y,{"aria-hidden":`true`,className:`mr-1 inline size-3.5 shrink-0 align-[-0.15em]`}),r]})}function Rt({plan:e,state:t,disabled:n,methodItems:r,onRetry:a,onOpenSetupGuide:o}){let{t:s}=q(`settings`),c=ft(t.methodKind)?t.setupGuideUrl:void 0,l=xt(e).filter(e=>e.id!==t.methodId),u=[...c?[(0,Q.jsx)(W.Item,{icon:ke,label:s(`integrationTile.setupGuide`),onSelect:()=>o(c)},`setup-guide`)]:[],...r(l)],d=s(`integrationTile.retryLabel`,{name:e.name});return u.length===0?(0,Q.jsx)(i,{variant:`dangerOutline`,className:$,iconOnly:(0,Q.jsx)(we,{}),"aria-label":d,disabled:n,onClick:a}):(0,Q.jsx)(y,{variant:`dangerOutline`,className:$,iconOnly:(0,Q.jsx)(we,{}),"aria-label":d,menuTitle:s(`connectMethod.otherWaysLabel`,{name:e.name}),menuTriggerLabel:s(`connectMethod.otherWaysLabel`,{name:e.name}),menuItems:u,disabled:n,onClick:a})}function zt({name:e,state:n,announce:a,onCancel:o}){let{t:s}=q(`settings`),c=L(),[l,u]=(0,Z.useState)(!1),d=(0,Z.useRef)(null),f=n.phase===`waiting`&&n.canCancel,m=It(s,e,n);function h(){d.current&&=(clearTimeout(d.current),null)}function g(e){h(),u(!0),e&&(d.current=setTimeout(()=>u(!1),Ft))}function _(){h(),u(!1)}(0,Z.useEffect)(()=>h,[]);function v(e){return c&&e!==`touch`}let y=a?(0,Q.jsx)(`span`,{role:`status`,className:`sr-only`,children:m}):null;return f?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(i,{variant:`outlined`,className:$,iconOnly:l?(0,Q.jsx)(Pe,{}):(0,Q.jsx)(Oe,{className:`animate-spin`}),"aria-label":s(`integrationTile.cancelLabel`,{name:e}),tooltip:s(`integrationTile.waitingCancel`,{name:e}),onPointerEnter:e=>{v(e.pointerType)&&g(!1)},onPointerLeave:e=>{v(e.pointerType)&&_()},onBlur:_,onClick:e=>{if(l||e.detail===0){_(),o();return}g(!0)}}),y]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(p,{content:m,children:(0,Q.jsx)(`span`,{className:t(r({variant:`outlined`,iconOnly:!0}),$,`cursor-default hover:bg-transparent`),children:(0,Q.jsx)(Oe,{"aria-hidden":`true`,className:`size-3.5 animate-spin text-[var(--content-tertiary)]`})})}),y]})}function Bt({assistantId:e,providerKey:t,providerLabel:n,tenantHost:r,restartToken:i,onReport:a}){let{connect:o,dismiss:s,status:c,errorMessage:l}=ne({assistantId:e,providerKey:t,providerLabel:n}),u=(0,Z.useRef)(o),d=(0,Z.useRef)(r);return(0,Z.useLayoutEffect)(()=>{u.current=o,d.current=r}),(0,Z.useLayoutEffect)(()=>{u.current(void 0,d.current)},[i]),(0,Z.useEffect)(()=>s,[s]),(0,Z.useEffect)(()=>{a({status:c,errorMessage:l})},[l,a,c]),null}function Vt(e){return e.length>16?`${e.slice(0,12)}…${e.slice(-4)}`:e.length>8?`${e.slice(0,8)}…`:e}function Ht(e){try{return new Date(e).toLocaleDateString(void 0,{year:`numeric`,month:`short`,day:`numeric`})}catch{return``}}function Ut({assistantId:e,providerKey:t,displayName:r,logoUrl:a}){let{t:o}=q(`settings`),s=J(),c=K({...g({path:{assistant_id:e},query:{provider_key:t}}),select:e=>e.apps}),u=K({...le({path:{assistant_id:e,providerKey:t}}),select:e=>e.oauth_callback_url}),d=c.data??[],f=u.data??null,p=he({queries:d.map(t=>({...w({path:{assistant_id:e,appId:t.id}}),select:e=>e.connections}))}),m={};d.forEach((e,t)=>{m[e.id]=p[t]?.data??[]});let h=n({path:{assistant_id:e},query:{provider_key:t}}),_=k({onSuccess:()=>{s.invalidateQueries({queryKey:h}),T(``),O(``),S(!1),U.success(o(`yourOwnOauthTab.appAddedToast`,{name:r}))},onError:e=>{U.error(e.message||o(`yourOwnOauthTab.createFailedToast`))}}),v=E({onSuccess:()=>{s.invalidateQueries({queryKey:h}),U.success(o(`yourOwnOauthTab.appDeletedToast`))},onError:e=>{U.error(e.message||o(`yourOwnOauthTab.deleteFailedToast`))}}),y=ce({onSuccess:e=>{`auth_url`in e&&(window.location.href=e.auth_url)},onError:e=>{U.error(e.message||o(`yourOwnOauthTab.connectFailedToast`))}}),b=oe(),[x,S]=(0,Z.useState)(!1),[C,T]=(0,Z.useState)(``),[D,O]=(0,Z.useState)(``),[A,j]=(0,Z.useState)(!1),[M,N]=(0,Z.useState)(null),[P,F]=(0,Z.useState)(null),I=_.isPending,L=v.isPending?v.variables?.path?.id??null:null,ee=y.isPending?y.variables?.path?.appId??null:null,R=b.isPending?b.variables?.path?.id??null:null,te=()=>{let n=C.trim(),r=D.trim();!n||!r||_.mutate({path:{assistant_id:e},body:{provider_key:t,client_id:n,client_secret:r}})},ne=()=>{let t=M;N(null),t&&v.mutate({path:{assistant_id:e,id:t.id}})},re=t=>{y.mutate({path:{assistant_id:e,appId:t.id},body:{callback_transport:`gateway`,scopes:[]}})};return c.isLoading?(0,Q.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,Q.jsx)(Oe,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})}):(0,Q.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[d.length===0||x?(0,Q.jsx)(z.Root,{children:(0,Q.jsxs)(z.Body,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`space-y-1`,children:[(0,Q.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:d.length===0?o(`yourOwnOauthTab.addOwnApp`,{name:r}):o(`yourOwnOauthTab.addAnotherApp`,{name:r})}),(0,Q.jsx)(`p`,{className:`text-body-small-lighter leading-relaxed text-[var(--content-tertiary)]`,children:o(`yourOwnOauthTab.credentialsNote`)})]}),f?(0,Q.jsxs)(`div`,{className:`space-y-1`,children:[(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:o(`yourOwnOauthTab.redirectUrl`)}),(0,Q.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Q.jsx)(B,{type:`text`,value:f,readOnly:!0,fullWidth:!0}),(0,Q.jsx)(i,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{fe(f,{successMessage:o(`yourOwnOauthTab.copiedToast`),errorMessage:o(`yourOwnOauthTab.copyFailedToast`),onCopied:()=>{j(!0),setTimeout(()=>j(!1),2e3)}})},"aria-label":o(A?`yourOwnOauthTab.copiedAria`:`yourOwnOauthTab.copyRedirectAria`),iconOnly:A?(0,Q.jsx)(X,{"aria-hidden":!0}):(0,Q.jsx)(Fe,{"aria-hidden":!0})})]}),(0,Q.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:o(`yourOwnOauthTab.redirectHint`)})]}):null,(0,Q.jsx)(B,{label:o(`yourOwnOauthTab.clientId`),type:`text`,value:C,onChange:e=>T(e.target.value),placeholder:o(`yourOwnOauthTab.clientIdPlaceholder`),fullWidth:!0}),(0,Q.jsx)(B,{label:o(`yourOwnOauthTab.clientSecret`),type:`password`,value:D,onChange:e=>O(e.target.value),placeholder:o(`yourOwnOauthTab.clientSecretPlaceholder`),fullWidth:!0}),(0,Q.jsxs)(`div`,{className:`flex items-center justify-end gap-2 pt-1`,children:[d.length>0?(0,Q.jsx)(i,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>{S(!1),T(``),O(``)},disabled:I,children:o(`yourOwnOauthTab.cancel`)}):null,(0,Q.jsx)(i,{type:`button`,size:`compact`,onClick:te,disabled:I||!C.trim()||!D.trim(),loading:I,leftIcon:(0,Q.jsx)(Te,{"aria-hidden":!0}),children:o(`yourOwnOauthTab.addApp`)})]})]})}):null,d.map(e=>{let n=m[e.id]??[],s=L===e.id,c=ee===e.id;return(0,Q.jsx)(z.Root,{children:(0,Q.jsxs)(z.Body,{className:`flex flex-col gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex items-start justify-between gap-2`,children:[(0,Q.jsxs)(`div`,{className:`min-w-0 space-y-0.5`,children:[(0,Q.jsx)(`p`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:Vt(e.client_id)}),(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:o(`yourOwnOauthTab.addedOn`,{date:Ht(e.created_at)})})]}),(0,Q.jsx)(i,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>N(e),disabled:s,"aria-label":o(`yourOwnOauthTab.deleteAppAria`,{id:Vt(e.client_id)}),loading:s,iconOnly:(0,Q.jsx)(Ce,{"aria-hidden":!0})})]}),n.length>0?(0,Q.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 s=R===n.id,c=n.account_info??o(`yourOwnOauthTab.accountFallback`,{name:r});return(0,Q.jsxs)(`li`,{className:`flex items-center gap-3 px-3 py-2`,children:[(0,Q.jsx)(me,{providerKey:t,displayName:r,logoUrl:a,size:18}),(0,Q.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-lighter text-[var(--content-default)]`,children:c}),(0,Q.jsx)(i,{type:`button`,variant:`dangerOutline`,size:`compact`,onClick:()=>F({appId:e.id,connection:n}),disabled:s,"aria-label":o(`yourOwnOauthTab.disconnectAria`,{account:c}),loading:s,iconOnly:(0,Q.jsx)(Ce,{"aria-hidden":!0})})]},n.id)})}):null,(0,Q.jsx)(i,{type:`button`,size:`compact`,onClick:()=>re(e),disabled:c,className:`w-full`,loading:c,leftIcon:(0,Q.jsx)(ke,{"aria-hidden":!0}),children:o(c?`yourOwnOauthTab.waitingAuthorization`:`yourOwnOauthTab.connectAccount`)})]})},e.id)}),d.length>0&&!x?(0,Q.jsx)(i,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>S(!0),className:`w-full border-dashed`,leftIcon:(0,Q.jsx)(Te,{"aria-hidden":!0}),children:o(`yourOwnOauthTab.addAnotherAppButton`)}):null,(0,Q.jsx)(l,{open:M!==null,title:o(`yourOwnOauthTab.deleteAppTitle`),message:M?o(`yourOwnOauthTab.deleteAppMessage`,{id:Vt(M.client_id)}):``,confirmLabel:o(`yourOwnOauthTab.delete`),destructive:!0,onConfirm:ne,onCancel:()=>N(null)}),(0,Q.jsx)(l,{open:P!==null,title:o(`yourOwnOauthTab.disconnectTitle`,{name:r}),message:P?o(`yourOwnOauthTab.disconnectMessage`,{account:P.connection.account_info??o(`yourOwnOauthTab.accountFallback`,{name:r})}):``,confirmLabel:o(`yourOwnOauthTab.disconnect`),destructive:!0,onConfirm:()=>{let t=P;F(null),t&&b.mutate({path:{assistant_id:e,id:t.connection.id}},{onSuccess:()=>{let n=ue({path:{assistant_id:e,appId:t.appId}});s.invalidateQueries({queryKey:n}),s.invalidateQueries({queryKey:h}),U.success(o(`yourOwnOauthTab.disconnectedToast`,{name:r}))},onError:e=>{U.error(e.message||o(`yourOwnOauthTab.disconnectFailedToast`))}})},onCancel:()=>F(null)})]})}var Wt={phase:`idle`};function Gt({assistantId:e,mcp:t}){let{t:n}=q(`settings`),r=J(),{mutateAsync:i}=M(),[a,o]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(null),[u,d]=(0,Z.useState)(null),[f,p]=(0,Z.useState)(null),[m,h]=(0,Z.useState)(null),g=(0,Z.useRef)(null),_=(0,Z.useRef)(null),v=t.auth.attempt,y=t.auth.connect,b=t.auth.retry,x=t.auth.stopWaiting,S=t.auth.isBusy,C=t.list.refetch;(0,Z.useEffect)(()=>{let e=g.current;if(e&&(g.current=null,v&&v.operationId!==e.priorOperationId)){o({itemId:e.itemId,methodId:e.methodId,methodKind:e.methodKind,setupGuideUrl:e.setupGuideUrl,operationId:v.operationId});return}a&&v?.operationId!==a.operationId&&(o(null),_.current=null)},[v,a]),(0,Z.useEffect)(()=>{v?.phase===`connecting`&&(_.current=null)},[v?.phase]),(0,Z.useEffect)(()=>{!c||u?.status!==`connected`||(U.success(n(`useOauthConnect.accountConnected`,{name:c.providerLabel,ns:`common`})),l(null),d(null))},[c,u,n]);let w=(0,Z.useCallback)(async e=>{let t=await C();return t.isError?[]:tt(t.data?.servers??[],e)},[C]),{remove:T}=ze(e,{onRemoved:()=>{C(),h(null)},onRemoveError:(e,t)=>{R(t,{context:`integrations.connectRollback`,tags:{plugin:e}}),h(null)},announceWarnings:!1}),E=(0,Z.useCallback)((t,n)=>{let a=(async()=>{await i({path:{assistant_id:e},body:{name:t}}),te(r,e,t)})();return _.current={itemId:n,pluginName:t,landed:a.then(()=>!0,()=>!1)},a},[e,i,r]),D=(0,Z.useCallback)(()=>{let e=_.current;_.current=null,e&&(h(e.itemId),e.landed.then(t=>{if(!t){h(null);return}T(e.pluginName)}))},[T]),O=(0,Z.useCallback)(()=>{a&&x(),l(null),d(null),D()},[x,a,D]),k=(0,Z.useCallback)((e,t,n,r)=>{m!==e.itemId&&(O(),g.current={...e,priorOperationId:v?.operationId??null},y(t,r,n))},[v,y,O,m]),A=(0,Z.useCallback)((e,t,n)=>{let r=n.plugin;if(!r||S)return;let i=!!r.installed;k({itemId:e.id,methodId:n.id,methodKind:n.kind,setupGuideUrl:n.setupGuideUrl},Qe(r.pluginName),t.name,et({install:i?()=>Promise.resolve():()=>E(r.pluginName,e.id),loadPluginServers:()=>w(r.pluginName)}))},[S,k,E,w]),j=(0,Z.useCallback)((e,t,n,r)=>{if(e.kind!==`oauth`||S)return;let{provider:i}=e;if(!r?.tenantHost&&s(i.provider_key,i.tenant_host)){p({itemId:e.id,methodId:n.id});return}O(),l({itemId:e.id,methodId:n.id,providerKey:i.provider_key,providerLabel:t.name,tenantHost:r?.tenantHost,restartToken:0})},[S,O]),N=(0,Z.useCallback)((e,t,n,r)=>{if(ft(n.kind)){A(e,t,n);return}n.kind===`managed-oauth`&&j(e,t,n,r)},[j,A]),P=(0,Z.useCallback)((e,t,n)=>{let r=yt(t).find(e=>e.id===n.methodId);if(!ft(n.methodKind)){r&&j(e,t,r);return}!n.serverId||S||k({itemId:e.id,methodId:n.methodId,methodKind:n.methodKind,setupGuideUrl:r?.setupGuideUrl},n.serverId,t.name)},[S,k,j]),F=(0,Z.useCallback)((e,t,n)=>{if(n.kind===`mcp-manual`||n.kind===`own-oauth`){p({itemId:e.id,methodId:n.id});return}N(e,t,n)},[N]),I=(0,Z.useCallback)(()=>{if(a){if(v?.phase!==`error`)return;g.current={itemId:a.itemId,methodId:a.methodId,methodKind:a.methodKind,setupGuideUrl:a.setupGuideUrl,priorOperationId:a.operationId},b();return}d(null),l(e=>e&&{...e,restartToken:e.restartToken+1})},[v,b,a]),L=(0,Z.useCallback)((e,t)=>a?.itemId===e&&v?v.phase===`error`?{phase:`failed`,error:v.error??n(`integrationTile.failedGeneric`,{name:t}),methodId:a.methodId,methodKind:a.methodKind,setupGuideUrl:a.setupGuideUrl}:v.phase===`connecting`?{phase:`connecting`}:{phase:`waiting`,canCancel:!0}:c?.itemId===e?u?.errorMessage?{phase:`failed`,error:u.errorMessage,methodId:c.methodId,methodKind:`managed-oauth`}:{phase:`waiting`,canCancel:!0}:Wt,[v,c,u,a,n]),ee=(0,Z.useCallback)(e=>a?.itemId===e&&v?{methodId:a.methodId,phase:v.phase,error:v.error,canCancel:!0}:c?.itemId===e?{methodId:c.methodId,phase:u?.errorMessage?`error`:`waiting`,error:u?.errorMessage??void 0,canCancel:!0}:null,[v,c,u,a]),z=(0,Z.useCallback)(e=>S&&a?.itemId!==e||c!==null&&c.itemId!==e||m===e,[S,c,a,m]),ne=(0,Z.useCallback)((e,t)=>p({itemId:e,methodId:t}),[]),B=(0,Z.useCallback)(()=>p(null),[]);return{start:F,run:N,reconnect:P,cancel:O,retry:I,stateFor:L,attemptFor:ee,isBusyElsewhere:z,ownsMcpAttempt:a!==null,attemptItemId:a?.itemId??c?.itemId??null,managed:c,onManagedReport:d,modal:f,openModal:ne,closeModal:B}}function Kt({assistantId:e,platformAssistantId:t,onStopAuth:n,onRemoveServer:r,onPluginRemoved:i}){let{t:a}=q(`settings`),o=J(),s=(0,Z.useRef)(``),c=ze(e,{onRemoved:()=>{i(),U.success(a(`integrationConnect.removedToast`,{name:s.current}))},onRemoveError:()=>U.error(a(`integrationConnect.removeFailedToast`,{name:s.current}))}),l={path:{assistant_id:t??``}},u=ae({onSuccess(e,t){U.success(a(`integrationConnect.disconnectedToast`,{name:s.current}));let n=t.path.connection_id;x(o,l,e=>e?.filter(e=>e.id!==n)),o.invalidateQueries({queryKey:N(l)})},onError(e){U.error(A(e,void 0,a(`integrationConnect.disconnectFailedToast`,{name:s.current})))}}),d=u.mutate,f=c.remove,p=c.isRemoving||u.isPending;return(0,Z.useCallback)((e,i)=>{if(!p){if(s.current=i,ft(e.methodKind)){if(n(e),e.pluginName){f(e.pluginName);return}e.serverId&&r(e.serverId);return}!e.accountId||!t||d({path:{assistant_id:t,connection_id:e.accountId}})}},[p,d,r,n,t,f])}var qt=[{value:`none`,labelKey:`mcpAddServerModal.authNone`},{value:`oauth`,labelKey:`mcpAddServerModal.authOAuth`},{value:`bearer`,labelKey:`mcpAddServerModal.authBearer`},{value:`api-key`,labelKey:`mcpAddServerModal.authApiKey`}],Jt=[{value:`sse`,labelKey:`mcpAddServerModal.transportSse`},{value:`streamable-http`,labelKey:`mcpAddServerModal.transportStreamableHttp`},{value:`stdio`,labelKey:`mcpAddServerModal.transportStdio`}];function Yt(e){return qt.map(({value:t,labelKey:n})=>({value:t,label:e(n)}))}function Xt(e){return Jt.map(({value:t,labelKey:n})=>({value:t,label:e(n)}))}function Zt({open:e,onClose:t,onAdd:n,isPending:r}){let{t:a}=q(`settings`),o=(0,Z.useMemo)(()=>Yt(a),[a]),s=(0,Z.useMemo)(()=>Xt(a),[a]),[l,u]=(0,Z.useState)(``),[d,f]=(0,Z.useState)(`sse`),[p,m]=(0,Z.useState)(``),[h,g]=(0,Z.useState)(``),[_,v]=(0,Z.useState)(``),[y,b]=(0,Z.useState)(`none`),[x,S]=(0,Z.useState)(``),[C,w]=(0,Z.useState)(`X-API-Key`),[T,E]=(0,Z.useState)(``),D=(0,Z.useCallback)(()=>{u(``),f(`sse`),m(``),g(``),v(``),b(`none`),S(``),w(`X-API-Key`),E(``)},[]),O=(0,Z.useCallback)(()=>{r||(D(),t())},[r,D,t]),k=(0,Z.useCallback)(()=>{let e=l.trim();if(!e)return;let t={name:e,transportType:d};if(d===`stdio`){let e=h.trim();if(!e)return;t.command=e;let n=_.trim();n&&(t.args=n.split(/\s+/))}else{let e=p.trim();if(!e)return;t.url=e,y===`bearer`&&x.trim()?t.headers={Authorization:`Bearer ${x.trim()}`}:y===`api-key`&&C.trim()&&T.trim()?t.headers={[C.trim()]:T.trim()}:y===`oauth`&&(t.autoAuth=!0)}n(t)},[l,d,p,h,_,y,x,C,T,n]),A=d===`stdio`,j=l.trim()&&(A?h.trim():p.trim());return(0,Q.jsx)(c.Root,{open:e,onOpenChange:e=>{e||O()},children:(0,Q.jsxs)(c.Content,{size:`md`,children:[(0,Q.jsxs)(c.Header,{icon:Ue,children:[(0,Q.jsx)(c.Title,{children:a(`mcpAddServerModal.title`)}),(0,Q.jsx)(c.Description,{children:a(`mcpAddServerModal.description`)})]}),(0,Q.jsx)(c.Body,{children:(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-name`,children:a(`mcpAddServerModal.serverNameLabel`)}),(0,Q.jsx)(B,{id:`mcp-name`,type:`text`,value:l,onChange:e=>u(e.target.value),placeholder:a(`mcpAddServerModal.namePlaceholder`),fullWidth:!0,autoFocus:!0})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-transport`,children:a(`mcpAddServerModal.transportLabel`)}),(0,Q.jsx)(`select`,{id:`mcp-transport`,value:d,onChange:e=>f(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,Q.jsx)(`option`,{value:e.value,children:e.label},e.value))})]}),A?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-command`,children:a(`mcpAddServerModal.commandLabel`)}),(0,Q.jsx)(B,{id:`mcp-command`,type:`text`,value:h,onChange:e=>g(e.target.value),placeholder:a(`mcpAddServerModal.commandPlaceholder`),fullWidth:!0})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-args`,children:a(`mcpAddServerModal.argsLabel`)}),(0,Q.jsx)(B,{id:`mcp-args`,type:`text`,value:_,onChange:e=>v(e.target.value),placeholder:a(`mcpAddServerModal.argsPlaceholder`),fullWidth:!0})]})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-url`,children:a(`mcpAddServerModal.serverUrlLabel`)}),(0,Q.jsx)(B,{id:`mcp-url`,type:`url`,value:p,onChange:e=>m(e.target.value),placeholder:a(`mcpAddServerModal.urlPlaceholder`),fullWidth:!0})]}),(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-auth`,children:a(`mcpAddServerModal.authenticationLabel`)}),(0,Q.jsx)(`select`,{id:`mcp-auth`,value:y,onChange:e=>b(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,Q.jsx)(`option`,{value:e.value,children:e.label},e.value))})]}),y===`oauth`?(0,Q.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:a(`mcpAddServerModal.oauthHint`)}):null,y===`bearer`?(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-bearer`,children:a(`mcpAddServerModal.bearerTokenLabel`)}),(0,Q.jsx)(B,{id:`mcp-bearer`,type:`password`,value:x,onChange:e=>S(e.target.value),placeholder:a(`mcpAddServerModal.bearerPlaceholder`),fullWidth:!0})]}):null,y===`api-key`?(0,Q.jsxs)(`div`,{className:`flex gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-apikey-header`,children:a(`mcpAddServerModal.headerNameLabel`)}),(0,Q.jsx)(B,{id:`mcp-apikey-header`,type:`text`,value:C,onChange:e=>w(e.target.value),placeholder:a(`mcpAddServerModal.apiKeyHeaderPlaceholder`),fullWidth:!0})]}),(0,Q.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-apikey-value`,children:a(`mcpAddServerModal.apiKeyLabel`)}),(0,Q.jsx)(B,{id:`mcp-apikey-value`,type:`password`,value:T,onChange:e=>E(e.target.value),placeholder:a(`mcpAddServerModal.apiKeyPlaceholder`),fullWidth:!0})]})]}):null]})]})}),(0,Q.jsxs)(c.Footer,{children:[(0,Q.jsx)(i,{variant:`ghost`,onClick:O,disabled:r,children:a(`mcpAddServerModal.cancel`)}),(0,Q.jsx)(i,{variant:`primary`,onClick:k,disabled:!j||r,children:a(r?`mcpAddServerModal.adding`:`mcpAddServerModal.addServer`)})]})]})})}var Qt=[`none`,`bearer`,`api-key`];function $t(e,t){switch(e){case`none`:return t(`mcpServerDetailModal.authNone`);case`bearer`:return t(`mcpServerDetailModal.authBearerToken`);case`api-key`:return t(`mcpServerDetailModal.authApiKey`)}}function en({server:e,toolsSummary:t,toolsLoading:n=!1,toolsError:r=!1,readOnly:a=!1,onClose:o,onSave:s,isPending:l}){let{t:u}=q(`settings`),[d,f]=(0,Z.useState)(`none`),[p,m]=(0,Z.useState)(``),[h,g]=(0,Z.useState)(`X-API-Key`),[_,v]=(0,Z.useState)(``);(0,Z.useEffect)(()=>{e&&(f(e.authType),m(``),g(e.authHeaderName??`X-API-Key`),v(``))},[e]);let y=(0,Z.useCallback)(()=>{if(!e||a)return;let t=d!==e.authType,n=d===`bearer`&&p.trim()!==``,r=d===`api-key`&&h.trim()!==``&&_.trim()!==``,i=t||n||r,o;o=i?d===`none`?null:d===`bearer`&&p.trim()?{Authorization:`Bearer ${p.trim()}`}:d===`api-key`&&h.trim()&&_.trim()?{[h.trim()]:_.trim()}:void 0:void 0,s(e.id,{name:e.id,...o===void 0?{}:{headers:o}})},[e,d,p,h,_,s,a]),b=(0,Z.useCallback)(()=>{l||o()},[l,o]);return e?(0,Q.jsx)(c.Root,{open:!!e,onOpenChange:e=>{e||b()},children:(0,Q.jsxs)(c.Content,{size:`lg`,children:[(0,Q.jsxs)(c.Header,{icon:Ue,children:[(0,Q.jsx)(c.Title,{children:e.id}),(0,Q.jsx)(c.Description,{children:u(`mcpServerDetailModal.description`,{transport:e.transport.type,status:e.status})})]}),(0,Q.jsx)(c.Body,{children:(0,Q.jsxs)(`div`,{className:`space-y-5`,children:[!a&&e.transport.type!==`stdio`?(0,Q.jsxs)(Q.Fragment,{children:[e.hasOAuth?(0,Q.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,Q.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:u(`mcpServerDetailModal.authentication`)}),(0,Q.jsx)(`span`,{className:`rounded-full bg-[var(--surface-lift)] px-2 py-0.5 text-label-small-default text-[var(--content-default)]`,children:u(`mcpServerDetailModal.oauthBadge`)}),(0,Q.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:u(`mcpServerDetailModal.oauthManagedHint`)})]}):null,e.hasOAuth?null:(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-auth`,children:u(`mcpServerDetailModal.authentication`)}),(0,Q.jsx)(`select`,{id:`mcp-detail-auth`,value:d,onChange:e=>f(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:Qt.map(e=>(0,Q.jsx)(`option`,{value:e,children:$t(e,u)},e))})]}),d===`bearer`&&!e.hasOAuth?(0,Q.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-bearer`,children:u(`mcpServerDetailModal.bearerToken`)}),(0,Q.jsx)(B,{id:`mcp-detail-bearer`,type:`password`,value:p,onChange:e=>m(e.target.value),placeholder:e.hasStaticAuth&&e.authType===`bearer`?u(`mcpServerDetailModal.savedBearerPlaceholder`):u(`mcpServerDetailModal.bearerTokenPlaceholder`),fullWidth:!0})]}):null,d===`api-key`&&!e.hasOAuth?(0,Q.jsxs)(`div`,{className:`flex gap-3`,children:[(0,Q.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-apikey-header`,children:u(`mcpServerDetailModal.headerName`)}),(0,Q.jsx)(B,{id:`mcp-detail-apikey-header`,type:`text`,value:h,onChange:e=>g(e.target.value),placeholder:u(`mcpServerDetailModal.headerNamePlaceholder`),fullWidth:!0})]}),(0,Q.jsxs)(`div`,{className:`flex-1 space-y-1.5`,children:[(0,Q.jsx)(`label`,{className:`text-body-small-default text-[var(--content-secondary)]`,htmlFor:`mcp-detail-apikey-value`,children:u(`mcpServerDetailModal.apiKey`)}),(0,Q.jsx)(B,{id:`mcp-detail-apikey-value`,type:`password`,value:_,onChange:e=>v(e.target.value),placeholder:e.hasStaticAuth&&e.authType===`api-key`?u(`mcpServerDetailModal.savedApiCredentialPlaceholder`):u(`mcpServerDetailModal.apiKeyPlaceholder`),fullWidth:!0})]})]}):null]}):null,e.transport.url||e.transport.command?(0,Q.jsxs)(`dl`,{className:`space-y-1 text-body-small-default`,children:[(0,Q.jsx)(`dt`,{className:`text-[var(--content-secondary)]`,children:e.transport.type===`stdio`?u(`mcpServerDetailModal.command`):u(`mcpServerDetailModal.endpoint`)}),(0,Q.jsx)(`dd`,{className:`text-[var(--content-tertiary)] [overflow-wrap:anywhere]`,children:e.transport.url??e.transport.command})]}):null,(0,Q.jsxs)(`section`,{className:`space-y-2`,children:[(0,Q.jsx)(`h3`,{className:`text-body-medium-default text-[var(--content-default)]`,children:u(`mcpServerDetailModal.toolsHeading`)}),n?(0,Q.jsx)(`p`,{role:`status`,className:`text-body-small-default text-[var(--content-tertiary)]`,children:u(`mcpServerDetailModal.toolsLoading`)}):r?(0,Q.jsx)(`p`,{role:`alert`,className:`text-body-small-default text-[var(--content-tertiary)]`,children:u(`mcpServerDetailModal.toolsError`)}):t&&t.tools.length>0?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:u(`mcpServerDetailModal.tokenOverhead`,{count:t.estimatedTokens.toLocaleString()})}),(0,Q.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)] rounded-lg border border-[var(--border-base)]`,children:t.tools.map(e=>(0,Q.jsxs)(`li`,{className:`space-y-1 px-3 py-3`,children:[(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-default)] [overflow-wrap:anywhere]`,children:e.name}),e.description?(0,Q.jsx)(`p`,{className:`whitespace-pre-wrap text-body-small-default text-[var(--content-secondary)] [overflow-wrap:anywhere]`,children:e.description}):null,(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:u(`mcpServerDetailModal.toolEstimatedTokens`,{count:e.estimatedTokens.toLocaleString()})})]},e.name))})]}):(0,Q.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:u(`mcpServerDetailModal.toolsEmpty`)})]})]})}),(0,Q.jsxs)(c.Footer,{children:[(0,Q.jsx)(i,{variant:a?`primary`:`ghost`,onClick:b,disabled:l,children:u(a?`mcpServerDetailModal.close`:`mcpServerDetailModal.cancel`)}),a?null:(0,Q.jsx)(i,{variant:`primary`,onClick:y,disabled:l,children:u(l?`mcpServerDetailModal.saving`:`mcpServerDetailModal.save`)})]})]})}):null}function tn({connections:e,allowAdd:t,attemptReportedElsewhere:n=!1}){let{t:r}=q(`settings`),{auth:a,add:o,save:s,remove:c,details:u,configureServer:d}=e;return(0,Q.jsxs)(Q.Fragment,{children:[a.attempt&&!n?(0,Q.jsx)(V,{tone:a.attempt.error?`warning`:`info`,children:(0,Q.jsxs)(`div`,{className:`space-y-2`,children:[(0,Q.jsx)(`p`,{className:`[overflow-wrap:anywhere]`,children:a.attempt.error??(a.attempt.phase===`connecting`?r(`mcpConnect.waitingForRuntime`,{name:a.attempt.displayName}):r(`mcpConnect.waitingForAuthorization`,{name:a.attempt.displayName}))}),(0,Q.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[a.attempt.phase===`error`?(0,Q.jsx)(i,{variant:`outlined`,onClick:a.retry,children:r(`mcpConnect.retry`)}):null,(0,Q.jsx)(i,{variant:`ghost`,onClick:a.stopWaiting,children:r(`mcpConnect.stopWaiting`)})]})]})}):null,t?(0,Q.jsx)(Zt,{open:e.addOpen,onClose:()=>e.setAddOpen(!1),onAdd:e.addCustom,isPending:o.isPending}):null,(0,Q.jsx)(en,{server:d,readOnly:d?.source===`plugin`,toolsSummary:u.data?.servers.find(e=>e.serverId===d?.id),toolsLoading:u.isFetching,toolsError:u.isError,onClose:()=>e.setConfigureServerId(null),onSave:(e,t)=>s.mutate(t),isPending:s.isPending}),(0,Q.jsx)(l,{open:e.removeServerId!==null,title:r(`mcpPage.removeDialogTitle`),message:e.removeServerId?r(`mcpPage.removeDialogMessage`,{serverId:e.removeServerId}):``,confirmLabel:r(`mcpPage.removeDialogConfirm`),destructive:!0,isPending:c.isPending,onConfirm:()=>{e.removeServerId&&c.mutate(e.removeServerId)},onCancel:()=>e.setRemoveServerId(null)})]})}function nn(e,t){let n=new Map(t.map(e=>[e.name,e]));return e.flatMap(e=>{let t=e.integration;if(t?.kind!==`mcp`)return[];let r=n.get(e.name);return[{pluginName:e.name,displayName:t.displayName,description:e.description??t.displayName,documentationUrl:t.documentationUrl,logo:t.logo,oauthProvider:t.oauthProvider,category:nt(t.category)??void 0,setup:t.setup,installed:r?{icon:r.icon,hasIcon:r.hasIcon,iconVersion:r.iconVersion}:void 0}]})}function rn(){return(0,Q.jsx)(`span`,{"aria-hidden":`true`,className:`flex size-8 shrink-0 items-center justify-center rounded-md bg-[var(--surface-base)] text-[var(--content-secondary)]`,children:(0,Q.jsx)(Ee,{size:20})})}function an({server:e,onRemove:t,onConfigure:n,onAuthenticate:r,onManagePlugin:a,isAuthenticating:o,connectDisabled:s=!1}){let{t:c}=q(`settings`),l=e.source===`plugin`,u=!l&&e.status===`needs-auth`&&e.transport.type!==`stdio`,d=!l&&!o&&!u,f=l?c(`mcpServerCard.managePlugin`):o?c(`mcpServerCard.connecting`):e.hasOAuth?c(`mcpServerCard.reconnect`):c(`mcpServerCard.finishConnecting`);return(0,Q.jsx)(Ct,{icon:(0,Q.jsx)(rn,{}),title:e.id,subtitle:l?e.pluginName:ct(e),status:e.status===`connected`?void 0:(0,Q.jsx)(T,{tone:`negative`,children:c(`mcpServerCard.statusNeedsAttention`)}),primaryAction:d?(0,Q.jsx)(i,{variant:`outlined`,className:$,iconOnly:(0,Q.jsx)(Ne,{}),"aria-label":c(`mcpServerCard.configureLabel`,{serverId:e.id}),onClick:()=>n(e.id)}):(0,Q.jsx)(i,{variant:u?`primary`:`outlined`,loading:o,onClick:()=>{l?a(e.pluginName):u&&r(e.id)},disabled:o||u&&s,children:f}),actionMenu:(0,Q.jsxs)(W.Root,{children:[(0,Q.jsx)(W.Trigger,{asChild:!0,children:(0,Q.jsx)(i,{variant:`ghost`,iconOnly:(0,Q.jsx)(Se,{}),className:$,"aria-label":c(`mcpServerCard.moreActions`,{serverId:e.id})})}),(0,Q.jsxs)(W.Content,{title:e.id,showTitle:!0,closeLabel:c(`mcpServerCard.actionsSheetClose`),align:`end`,children:[u||l?(0,Q.jsx)(W.Item,{icon:Ne,label:c(l?`mcpServerCard.viewDetails`:`mcpServerCard.configure`),onSelect:()=>n(e.id)}):null,l?null:(0,Q.jsx)(W.Item,{icon:Ce,label:c(`mcpServerCard.removeServer`),tone:`destructive`,onSelect:()=>t(e.id)})]})]})})}function on({assistantId:e,definition:t}){let n=Ve(e,t.pluginName,t.installed?.hasIcon,t.installed?.iconVersion);return(0,Q.jsx)(He,{external:!0,icon:t.installed?.icon,iconSrc:n,iconUrl:dt(t)??void 0,size:`md`})}function sn({assistantId:e,method:t,disabled:n,onOpen:r}){let{t:a}=q(`settings`),o=at([],[t]);return(0,Q.jsx)(Ct,{icon:(0,Q.jsx)(on,{assistantId:e,definition:t.definition}),title:t.definition.displayName,subtitle:t.definition.description,status:o.needsAttention?(0,Q.jsx)(T,{tone:`negative`,children:a(`integrationRow.needsAttention`)}):void 0,primaryAction:(0,Q.jsx)(i,{variant:`outlined`,className:$,iconOnly:(0,Q.jsx)(Ne,{}),"aria-label":a(`integrationRow.configureLabel`,{name:t.definition.displayName}),disabled:n,onClick:r})})}async function cn(e){let{data:t,response:n}=await S.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 ln(e){let{data:t,response:n}=await S.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 un(e,t){let{response:n}=await S.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 dn(e,t){let{response:n}=await S.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 fn(e,t){let{response:n}=await S.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 pn(e,t){let{data:n,response:r}=await S.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 mn(e,t){let{data:n,response:r}=await S.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}function hn(e,t){return e.some(e=>e.id===t&&e.status===`connected`)}function gn(e,t){return t?null:e}function _n(e){let{t}=q(`settings`),n=J(),[r,i]=(0,Z.useState)(null),o=(0,Z.useRef)(null),s=(0,Z.useRef)(null),c=(0,Z.useRef)(null),l=(0,Z.useCallback)(()=>{o.current=null,c.current=null,s.current?.close(),s.current=null,i(null)},[]);(0,Z.useEffect)(()=>(l(),()=>{o.current=null,c.current=null,s.current?.close(),s.current=null}),[e,l]);let u=r?.phase===`authorizing`||r?.phase===`waiting`,d=K({queryKey:H.auth(e,r?.operationId??``),queryFn:()=>mn(e,r.serverId),enabled:u,refetchInterval:u?P:!1,staleTime:0,gcTime:0,retry:1}),f=K({queryKey:H.list(e),queryFn:()=>cn(e),enabled:r?.phase===`connecting`,refetchInterval:r?.phase===`connecting`?P:!1,staleTime:0,retry:1});(0,Z.useEffect)(()=>{!r||!u||o.current!==r.operationId||!d.data||(d.data.status===`complete`?(s.current?.close(),s.current=null,i({...r,phase:`connecting`}),n.invalidateQueries({queryKey:H.list(e)})):d.data.status===`error`&&i({...r,phase:`error`,error:d.data.error?.replaceAll(r.serverId,r.displayName)??t(`mcpConnect.authorizationFailed`)}))},[e,r,d.data,u,n,t]),(0,Z.useEffect)(()=>{r?.phase!==`connecting`||o.current!==r.operationId||!f.data||f.isFetching||hn(f.data.servers,r.serverId)&&(l(),n.invalidateQueries({queryKey:H.details(e)}))},[e,r,n,f.data,f.isFetching,l]),(0,Z.useEffect)(()=>{if(!r||r.phase===`error`)return;let e=u?gn(d.error,d.isFetching):r.phase===`connecting`?gn(f.error,f.isFetching):null;e&&(R(e,{context:`mcp.connect.poll`}),i({...r,phase:`error`,error:t(`mcpConnect.pollFailed`)}))},[r,d.error,d.isFetching,u,f.error,f.isFetching,t]),(0,Z.useEffect)(()=>{if(!r||r.phase===`error`)return;let e=setTimeout(()=>{o.current===r.operationId&&(s.current?.close(),s.current=null,i(e=>e?.operationId===r.operationId?{...e,phase:`error`,error:t(`mcpConnect.timedOut`)}:e))},Math.max(0,r.startedAt+j-Date.now()));return()=>clearTimeout(e)},[r,t]);let p=(0,Z.useCallback)(t=>{o.current===t&&(i(e=>e?.operationId===t&&e.phase===`authorizing`?{...e,phase:`waiting`}:e),n.invalidateQueries({queryKey:H.auth(e,t)}),n.invalidateQueries({queryKey:H.list(e)}))},[e,n]);(0,Z.useEffect)(()=>{let e=s.current;if(r?.phase!==`authorizing`||!e)return;let t=setInterval(()=>{e.closed&&p(r.operationId)},500);return()=>clearInterval(t)},[r?.operationId,r?.phase,p]),(0,Z.useEffect)(()=>{let e=r?.operationId,t=r?.phase;if(!(!e||t===`connecting`||t===`error`))return G(()=>p(e))},[r?.operationId,r?.phase,p]);let m=(0,Z.useCallback)((n,l,u=n)=>{if(o.current&&r?.phase!==`error`)return;let d=crypto.randomUUID();o.current=d,s.current?.close(),s.current=null,c.current=l?{operationId:d,run:l}:null;let f={operationId:d,serverId:n,displayName:u,startedAt:Date.now(),phase:`starting`};i(f);let p=a()||se(),m=p?null:window.open(``,`_blank`,`width=500,height=600`);if(!p&&!m){i({...f,phase:`error`,error:t(`mcpConnect.popupBlocked`)});return}m&&(m.opener=null,s.current=m);let h=()=>o.current===d&&Date.now()<f.startedAt+3e5;(async()=>{try{let t=await l?.();if(c.current?.operationId===d&&(c.current=null),!h())return;if(t===null){m?.close(),s.current=null,o.current=null,i(null);return}let n=t?{...f,serverId:t}:f;t&&i(n);let r=await pn(e,n.serverId);if(!h())return;if(r.already_authenticated){m?.close(),s.current=null,i({...n,phase:`connecting`});return}let a=new URL(r.auth_url);if(a.protocol!==`https:`&&a.protocol!==`http:`)throw Error(`Unsupported MCP authorization URL protocol`);i({...n,phase:`authorizing`}),m?m.closed||m.location.replace(a.href):await _(a.href)}catch(e){m?.close(),h()&&(s.current=null,R(e,{context:`mcp.connect.start`}),i(e=>e?.operationId===d?{...e,phase:`error`,error:t(`mcpConnect.startFailed`)}:e))}})()},[e,r?.phase,t]);return{attempt:r,isBusy:!!(r&&r.phase!==`error`),connect:m,retry:()=>{r&&m(r.serverId,c.current?.run,r.displayName)},stopWaiting:l}}function vn(e){let{t}=q(`settings`),n=J(),r=_n(e),[i,a]=(0,Z.useState)(!1),[o,s]=(0,Z.useState)(null),[c,l]=(0,Z.useState)(null),[u,d]=(0,Z.useState)(null),f=K({queryKey:H.list(e),queryFn:()=>cn(e)}),p=f.data?.servers.find(e=>e.id===o)??null,m=K({queryKey:H.details(e),queryFn:()=>ln(e),enabled:p!==null||u!==null}),h=()=>{n.invalidateQueries({queryKey:H.list(e)}),n.invalidateQueries({queryKey:H.details(e)})},g=ge({mutationFn:t=>dn(e,t),onSuccess:()=>{h(),a(!1)},onError:e=>{R(e,{context:`mcp.add`}),U.error(t(`mcpConnect.addFailed`))}});return{list:f,details:m,auth:r,add:g,save:ge({mutationFn:t=>un(e,t),onSuccess:()=>{h(),s(null)},onError:e=>{R(e,{context:`mcp.update`}),U.error(t(`mcpConnect.saveFailed`))}}),remove:ge({mutationFn:t=>fn(e,t),onSuccess:(e,n)=>{r.attempt?.serverId===n&&r.stopWaiting(),h(),l(null),s(null),U.success(t(`mcpPage.toastRemoved`,{serverId:n}))},onError:(e,n)=>{R(e,{context:`mcp.remove`}),U.error(t(`mcpPage.toastRemoveFailed`,{serverId:n}))}}),addCustom:e=>{e.autoAuth?r.connect(e.name,async()=>{await g.mutateAsync(e)},e.name):g.mutate(e)},addOpen:i,setAddOpen:a,configureServer:p,configureServerId:o,setConfigureServerId:s,removeServerId:c,setRemoveServerId:l,toolsServerId:u,setToolsServerId:d}}var yn={productivity:`integrationsPage.categories.productivity`,communication:`integrationsPage.categories.communication`,meetings:`integrationsPage.categories.meetings`,sales:`integrationsPage.categories.sales`,marketing:`integrationsPage.categories.marketing`,finance:`integrationsPage.categories.finance`,commerce:`integrationsPage.categories.commerce`,engineering:`integrationsPage.categories.engineering`,knowledge:`integrationsPage.categories.knowledge`,recruiting:`integrationsPage.categories.recruiting`},bn=`grid gap-3 [grid-template-columns:repeat(auto-fill,minmax(min(100%,22rem),1fr))]`,xn=`grid gap-3 [grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr))]`;function Sn({title:e,count:t,gridClassName:n,children:r}){return(0,Q.jsxs)(`section`,{className:`space-y-3`,children:[(0,Q.jsxs)(`h2`,{className:`flex items-center gap-2 text-title-small text-[var(--content-default)]`,children:[e,(0,Q.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:t})]}),(0,Q.jsx)(`div`,{className:n,children:r})]})}function Cn(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 wn({mcpAssistantId:e}){let{t}=q(`settings`),[n,r]=_e(),a=ye(),o=ve(),s=f(),c=I(),l=b.use.mcpAddServer(),d=b.use.hasHydrated(),[p,m]=(0,Z.useState)(null),[g,y]=(0,Z.useState)(!0),[x,S]=(0,Z.useState)(``),[w,T]=(0,Z.useState)(null),E=n.get(`provider`),D=(0,Z.useRef)(null),k=vn(e),A=Be(e),j=Gt({assistantId:e,mcp:k});(0,Z.useEffect)(()=>{let t=!0;return(async()=>{try{let n=await ie(e);t&&n.ok&&m(n.data)}catch(e){R(e,{context:`integrations.getAssistant`})}finally{t&&y(!1)}})(),()=>{t=!1}},[e]);let{login:M}=C(`${o.pathname}${o.search}${o.hash}`),N=(0,Z.useCallback)(()=>void M(),[M]),P=j.closeModal,L=j.cancel,z=j.attemptItemId,te=j.modal?.itemId??null,ne=k.setToolsServerId,re=(0,Z.useCallback)(()=>{if(te!==null&&z===te&&L(),P(),ne(null),!n.has(`provider`))return;let e=new URLSearchParams(n);e.delete(`provider`),r(e,{replace:!0})},[L,z,P,te,n,r,ne]),{platformAssistantId:H,isLoading:ae,error:oe}=pe(p?.id,s===`full`),se=K({...v({path:{assistant_id:p?.id??``}}),select:e=>e.providers,enabled:!!p}),ce=K({...F({path:{assistant_id:H??``}}),enabled:!!H&&s===`full`});(0,Z.useEffect)(()=>{let e=n.get(`oauth_status`);if(!e)return;let r=n.get(`oauth_provider`),i=r?r.charAt(0).toUpperCase()+r.slice(1):null;e===`connected`?U.success(i?t(`integrationsPage.accountConnectedToast`,{providerLabel:i}):t(`integrationsPage.accountConnectedToastGeneric`)):e===`error`&&U.error(Cn(t,n.get(`oauth_code`)??`unknown`)??(i?t(`integrationsPage.connectFailedToast`,{providerLabel:i}):t(`integrationsPage.connectFailedToastGeneric`))),a(O.settings.integrations,{replace:!0})},[n,a,t]);let W=se.isError||ce.isError||!!oe||!g&&!p,le=!W&&!!se.data&&(s!==`full`||!!ce.data),G=(0,Z.useMemo)(()=>lt(le?se.data??[]:[],le?ce.data??[]:[],k.list.data?.servers??[],A.installedLoaded?nn(A.catalogMatches,A.installedPlugins):[],k.list.isSuccess),[le,se.data,ce.data,k.list.data,k.list.isSuccess,A.installedLoaded,A.catalogMatches,A.installedPlugins]),ue=(0,Z.useMemo)(()=>{let e=new Map;for(let t of G)t.category&&e.set(t.category,(e.get(t.category)??0)+1);return We.flatMap(t=>{let n=e.get(t);return n?[{category:t,count:n}]:[]})},[G]),de=ue.some(e=>e.category===w)?w:null,fe=(0,Z.useMemo)(()=>ut(G,x,de),[G,x,de]),me=(0,Z.useMemo)(()=>{let e=new Map;for(let t of G){if(t.kind===`mcp`)continue;let n=vt(t,{platformGate:s,ownOAuthAvailable:!c,mcpServersLoaded:k.list.isSuccess});n&&e.set(t.id,n)}return e},[G,c,k.list.isSuccess,s]),he=e=>me.has(e.id)&&(!e.configured||e.id===z&&j.modal?.itemId!==e.id),ge=e=>!e.configured||he(e),J=fe.filter(e=>!ge(e)),be=fe.filter(ge).sort((e,t)=>e.name.localeCompare(t.name)||e.id.localeCompare(t.id)),xe=g||se.isLoading||ce.isLoading||ae||k.list.isLoading||(A.isLoading||A.catalogLoading)&&G.length===0,Se=k.auth.isBusy||j.managed!==null,Ce=g||!p||s===`full`&&!H,we=j.ownsMcpAttempt&&z!==null&&(j.modal?.itemId===z||fe.some(e=>e.id===z&&he(e))),Y=j.modal?G.find(e=>e.id===j.modal?.itemId):void 0,X=Y?me.get(Y.id):void 0,Ee=Y?.kind===`oauth`?Y.provider:void 0,De=u(Ee?.provider_key??``,Ee?.tenant_host),ke=j.openModal;(0,Z.useEffect)(()=>{if(!E){D.current=null;return}if(E===D.current)return;let e=G.find(e=>e.kind===`oauth`&&e.provider.provider_key===E);e&&(D.current=E,ke(e.id))},[G,ke,E]);let Ae=k.toolsServerId,je=k.list.data?.servers.find(e=>e.id===Ae),Me=X&&Ae?bt(X).find(e=>e.serverId===Ae):void 0,Ne=Me?{[Me.id]:{loading:k.details.isFetching,error:k.details.isError,summary:k.details.data?.servers.find(e=>e.serverId===Ae),endpointUrl:je?.transport.url}}:void 0,Pe=Kt({assistantId:e,platformAssistantId:H,onStopAuth:e=>{let t=k.auth.attempt?.serverId;if(!t)return;let n=e.pluginName!==void 0&&(t===Qe(e.pluginName)||k.list.data?.servers.find(e=>e.id===t)?.pluginName===e.pluginName);(t===e.serverId||n)&&k.auth.stopWaiting()},onRemoveServer:k.setRemoveServerId,onPluginRemoved:()=>void k.list.refetch()}),Fe=()=>{l?k.setAddOpen(!0):h(a,{prompt:t(`mcpPage.setupPrompt`)})},Ie=t=>{let n=t.kind===`mcp`?void 0:me.get(t.id);return t.kind!==`mcp`&&n&&he(t)?(0,Q.jsx)(Pt,{plan:n,state:j.stateFor(t.id,n.name),showAlternatives:!c,disabled:j.isBusyElsewhere(t.id)||n.primary.kind===`managed-oauth`&&Ce,onConnect:e=>j.start(t,n,e),onLogin:N,onCancel:j.cancel,onRetry:j.retry,onOpenSetupGuide:e=>void _(e)},t.id):t.kind===`oauth`?(0,Q.jsx)(Nt,{providerKey:t.provider.provider_key,displayName:t.name,description:t.provider.description,logoUrl:t.provider.logo_url,connections:t.connections,mcpMethods:t.methods,disabled:Ce||!n||j.isBusyElsewhere(t.id),onConfigure:()=>j.openModal(t.id)},t.id):t.kind===`plugin`?(0,Q.jsx)(sn,{assistantId:e,method:t.method,disabled:!n||j.isBusyElsewhere(t.id),onOpen:()=>j.openModal(t.id)},t.id):(0,Q.jsx)(an,{server:t.server,onRemove:k.setRemoveServerId,onConfigure:k.setConfigureServerId,onAuthenticate:e=>k.auth.connect(e),onManagePlugin:e=>a(e?`${O.plugins}/${encodeURIComponent(e)}`:O.plugins),isAuthenticating:k.auth.attempt?.serverId===t.server.id&&Se,connectDisabled:Se},t.id)};return(0,Q.jsxs)(`div`,{className:`space-y-4`,children:[(0,Q.jsxs)(`div`,{className:`space-y-3`,children:[(0,Q.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Q.jsx)(B,{value:x,onChange:e=>S(e.target.value),placeholder:t(`integrationsPage.searchPlaceholder`),"aria-label":t(`integrationsPage.searchAriaLabel`),leftIcon:(0,Q.jsx)(Le,{"aria-hidden":!0,className:`size-4`}),className:`min-h-11`,wrapperClassName:`min-w-0 basis-64 flex-1`,fullWidth:!0}),(0,Q.jsx)(i,{variant:`outlined`,className:`min-h-11 max-w-full whitespace-normal`,leftIcon:(0,Q.jsx)(Te,{}),onClick:Fe,disabled:!d||Se,children:t(`integrationsPage.addCustom`)})]}),ue.length>0?(0,Q.jsx)(`div`,{role:`group`,"aria-label":t(`integrationsPage.categoriesLabel`),className:`flex gap-2 overflow-x-auto pb-1 [scrollbar-width:none]`,children:ue.map(e=>(0,Q.jsx)(ee,{selected:de===e.category,count:e.count,onClick:()=>T(de===e.category?null:e.category),children:t(yn[e.category])},e.category))}):null]}),W?(0,Q.jsx)(V,{tone:`warning`,children:t(`integrationsPage.oauthUnavailable`)}):null,k.list.isError?(0,Q.jsx)(V,{tone:`warning`,actions:(0,Q.jsx)(i,{variant:`ghost`,onClick:()=>void k.list.refetch(),children:t(`mcpConnect.retry`)}),children:t(`integrationsPage.mcpUnavailable`)}):null,A.catalogError||A.isError?(0,Q.jsx)(V,{tone:`warning`,children:t(`integrationsPage.pluginCatalogUnavailable`)}):null,(0,Q.jsx)(tn,{connections:k,allowAdd:l,attemptReportedElsewhere:we}),j.managed&&p?(0,Q.jsx)(Bt,{assistantId:p.id,providerKey:j.managed.providerKey,providerLabel:j.managed.providerLabel,tenantHost:j.managed.tenantHost,restartToken:j.managed.restartToken,onReport:j.onManagedReport},j.managed.providerKey):null,xe?(0,Q.jsxs)(`div`,{role:`status`,className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Q.jsx)(Oe,{className:`size-4 animate-spin`}),t(`integrationsPage.loading`)]}):null,J.length>0?(0,Q.jsx)(Sn,{title:t(`integrationsPage.sectionConfigured`),count:J.length,gridClassName:bn,children:J.map(Ie)}):null,be.length>0?(0,Q.jsx)(Sn,{title:t(`integrationsPage.sectionAvailable`),count:be.length,gridClassName:xn,children:be.map(Ie)}):null,!xe&&fe.length===0?(0,Q.jsx)(`p`,{className:`py-8 text-center text-body-medium-default text-[var(--content-tertiary)]`,children:x.trim()?t(`integrationsPage.emptySearchSubtitle`,{query:x.trim()}):de?t(`integrationsPage.emptyCategory`,{category:t(yn[de])}):t(`integrationsPage.empty`)}):null,j.modal&&X&&Y&&Y.kind!==`mcp`?(0,Q.jsx)(Tt,{plan:X,focusMethodId:j.modal.methodId,attempt:j.attemptFor(Y.id),tenantHost:De,toolsByConnectionId:Ne,ownOAuthContent:p&&Y.kind===`oauth`?(0,Q.jsx)(Ut,{assistantId:p.id,providerKey:Y.provider.provider_key,displayName:Y.name,logoUrl:Y.provider.logo_url}):null,onConnect:(e,t)=>j.run(Y,X,e,t),onLogin:N,onCancelAttempt:j.cancel,onRetryAttempt:j.retry,onReconnect:e=>j.reconnect(Y,X,e),onOpenTools:e=>k.setToolsServerId(e.serverId??null),onDisconnect:e=>Pe(e,X.name),onOpenSetupGuide:e=>void _(e),onClose:re},Y.id):null]})}function Tn(){let e=re();return(0,Q.jsx)(Z.Suspense,{children:(0,Q.jsx)(wn,{mcpAssistantId:e},e)})}export{Tn as IntegrationsPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Cl as t,EC as n,Rx as r,Zx as i,eS as a,gC as o,go as s,o as c}from"./app-Qc-rYPt9.js";import{j as l}from"./vendor-DEhKVoiV.js";import{d as u,i as d,n as f,t as p,x as m}from"./react-B9IgSVeK.js";import{Ki as h,za as g}from"./icons-C0wyat6T.js";import{t as _}from"./intelligence-layout-slots-store-BrxvOjyS.js";var v=e(m(),1),y=p(),b={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 x(){let{t:e}=l(`intelligence`),p=r.use.name(),{pathname:m}=u(),x=t(),S=s.use.setTopBarCenter(),C=s.use.setMobileTopBar(),w=_.use.headerTrailing(),T=i(m),E=T?e(b[T.key]):null,D=x&&T?.key===`library`,O=p||e(`identityOverview.defaultAssistantName`),k=e(`intelligenceLayout.backToAriaLabel`,{name:O}),A=e(`intelligenceLayout.backToTitle`,{name:O});return(0,v.useEffect)(()=>(D&&E?(S(null),C({leading:(0,y.jsx)(n,{shape:`pill`,asChild:!0,variant:`ghost`,iconOnly:(0,y.jsx)(g,{"aria-hidden":!0}),"aria-label":k,tooltip:A,className:`max-md:bg-[var(--surface-active)]`,children:(0,y.jsx)(f,{to:a.identity})}),center:(0,y.jsx)(o,{variant:`body-medium-default`,className:`max-w-[50vw] truncate text-[var(--content-secondary)]`,children:E}),trailing:w})):x&&E?(C(null),S((0,y.jsx)(o,{variant:`body-medium-default`,className:`truncate text-[var(--content-secondary)]`,children:E}))):(C(null),S(null)),()=>{C(null),S(null)}),[k,A,w,x,E,C,S,D]),T?(0,y.jsxs)(c,{children:[D?null:(0,y.jsxs)(`div`,{className:`mb-4 flex shrink-0 items-center gap-1.5`,children:[(0,y.jsx)(f,{to:a.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":k,title:A,children:(0,y.jsx)(h,{className:`h-5 w-5`,"aria-hidden":!0})}),(0,y.jsx)(`h1`,{className:`text-title-large text-[var(--content-default)] max-md:hidden`,children:E}),w?(0,y.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center`,children:w}):null]}),(0,y.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col overflow-y-auto`,children:(0,y.jsx)(d,{})})]}):(0,y.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:(0,y.jsx)(d,{})})}export{x as IntelligenceLayout};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{AS as e}from"./app-Qc-rYPt9.js";import{$ as t}from"./vendor-DEhKVoiV.js";var n=e(t(e=>({headerTrailing:null,setHeaderTrailing:t=>e({headerTrailing:t})})));export{n as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{eS as t}from"./app-Qc-rYPt9.js";import{f as n,x as r}from"./react-B9IgSVeK.js";var i=e(r(),1);function a(){let e=n();return(0,i.useEffect)(()=>{e(t.settings.keyboardShortcuts,{replace:!0})},[e]),null}export{a as KeyboardShortcutsRedirectPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$f as t,Bi as n,Cl as r,EC as i,Fr as a,Ko as o,Mf as s,Or as c,Pr as l,Ro as u,Sl as d,ch as f,cv as p,eS as m,fr as h,ha as g,jf as _,l as v,lS as y,nC as b,no as x,nt as S,pr as C,qS as w,rc as T,sn as E,to as D,u as O,vC as k,zt as A}from"./app-Qc-rYPt9.js";import{Qn as j,j as M,tr as N}from"./vendor-DEhKVoiV.js";import{d as P,f as F,t as I,x as L}from"./react-B9IgSVeK.js";import{$r as R,A as z,At as B,Br as V,Cr as H,Ht as U,Ia as W,Ur as ee,Vt as G,ir as K,ri as te,tr as q,vt as J}from"./icons-C0wyat6T.js";import{t as ne}from"./deploy-dialogs-DP0ls5p1.js";import{n as Y,r as re,t as ie}from"./use-app-delete-vuGBgQkn.js";import{t as ae}from"./intelligence-layout-slots-store-BrxvOjyS.js";import{t as oe}from"./app-types-oLaS-mTA.js";var X=e(L(),1),Z=I();function se(e){return e===1?`1 word`:`${e} words`}function ce({document:e,onOpen:t}){return(0,Z.jsxs)(`div`,{className:`group relative flex flex-col gap-2`,children:[(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>t(e.surfaceId),className:u(`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,Z.jsx)(V,{size:34,className:`text-[var(--content-tertiary)]`}),(0,Z.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:se(e.wordCount)})]}),(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>t(e.surfaceId),className:`flex cursor-pointer flex-col gap-0.5 rounded-sm px-0.5 text-left outline-none keyboard-focus:ring-2 keyboard-focus:ring-inset keyboard-focus:ring-[var(--ring)]`,children:[(0,Z.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)]`,children:e.title}),(0,Z.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:A(new Date(e.updatedAt))})]})]})}function le({onNewConversation:e}){let{t}=M(`library`);return(0,Z.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4 py-24`,children:[(0,Z.jsx)(`div`,{className:`flex h-16 w-16 items-center justify-center rounded-xl bg-[var(--surface-base)]`,children:(0,Z.jsx)(K,{size:32,className:`text-[var(--content-tertiary)]`})}),(0,Z.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:t(`libraryEmptyState.heading`)}),(0,Z.jsx)(`p`,{className:`max-w-md text-center text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:t(`libraryEmptyState.body`)}),e?(0,Z.jsx)(i,{variant:`primary`,size:`regular`,onClick:e,children:t(`libraryEmptyState.newConversation`)}):null]})}function ue({app:e,assistantId:t,isPinned:n,onOpen:r,onPin:i,onDelete:a,onDeploy:o,justImported:s,onAnimationEnd:c}){let{t:l}=M(`library`),d=oe(e.origin),p=d?void 0:a,m=d?void 0:o,_=(0,X.useCallback)(()=>f(t,e.id,e.updatedAt),[t,e.id,e.updatedAt]),v=Y(t,e,{exported:l(`libraryAppCard.exported`),failed:l(`libraryAppCard.shareFailed`)}),[y,b]=(0,X.useState)(!1),[x,S]=(0,X.useState)(!1),w=(0,X.useCallback)(()=>S(!0),[]),{deployedUrl:T}=C(t,e.id,{enabled:x&&m!=null}),D=(0,X.useCallback)(()=>{T!=null&&h(T)},[T]);return(0,Z.jsx)(g,{trailingActions:[{id:`pin`,label:l(n?`libraryAppCard.unpin`:`libraryAppCard.pin`),icon:n?U:G,onSelect:()=>i(e)},...p?[{id:`delete`,label:l(`libraryAppCard.delete`),icon:z,variant:`destructive`,onSelect:()=>p(e)}]:[]],className:`rounded-xl`,children:(0,Z.jsxs)(`div`,{"data-reveal-row":``,className:u(`relative flex flex-col gap-2`,s&&`animate-[card-entrance_400ms_ease-out]`),onAnimationEnd:s?c:void 0,onPointerEnter:w,children:[(0,Z.jsx)(`button`,{type:`button`,onClick:()=>r(e.id),className:u(`relative w-full cursor-pointer overflow-hidden rounded-xl`,`outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`),children:(0,Z.jsx)(E,{name:e.name,icon:e.icon,loadHtml:_})}),(0,Z.jsx)(`div`,{"data-reveal":``,className:`absolute right-2 top-2 z-20`,children:(0,Z.jsx)(de,{appName:e.name,isPinned:n,open:y,onOpenChange:e=>{e&&w(),b(e)},onPin:()=>i(e),onDelete:p?()=>p(e):void 0,onShare:d?void 0:v,onDeploy:m,deployedUrl:T,onCopyDeployedLink:D})}),(0,Z.jsxs)(`button`,{type:`button`,onClick:()=>r(e.id),className:`flex cursor-pointer flex-col gap-0.5 rounded-sm px-0.5 text-left outline-none keyboard-focus:ring-2 keyboard-focus:ring-inset keyboard-focus:ring-[var(--ring)]`,children:[(0,Z.jsx)(`span`,{className:`truncate text-body-large-default text-[color:var(--content-emphasised)] max-md:text-body-medium-lighter max-md:text-[color:var(--content-secondary)]`,children:e.name}),(0,Z.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)] max-md:hidden`,children:A(new Date(e.createdAt))})]})]})})}function de({appName:e,isPinned:t,open:n,onOpenChange:r,onPin:a,onDelete:o,onShare:s,onDeploy:c,deployedUrl:l,onCopyDeployedLink:u}){let{t:d}=M(`library`),f=l!=null&&l!==``&&u!=null,p=d(`libraryAppCard.actionsTitle`,{appName:e});return(0,Z.jsxs)(k.Root,{open:n,onOpenChange:r,children:[(0,Z.jsx)(k.Trigger,{asChild:!0,children:(0,Z.jsx)(i,{variant:`primary`,size:`compact`,iconOnly:(0,Z.jsx)(R,{}),"aria-label":p,onClick:e=>e.stopPropagation()})}),(0,Z.jsxs)(k.Content,{title:p,children:[(0,Z.jsx)(k.Item,{icon:t?U:G,label:d(t?`libraryAppCard.unpin`:`libraryAppCard.pin`),onSelect:a}),s?(0,Z.jsx)(k.Item,{icon:W,label:d(`libraryAppCard.share`),description:d(`libraryAppCard.shareSub`),onSelect:s}):null,c&&f?(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(k.Item,{icon:q,label:d(`libraryAppCard.deployed`),description:(0,Z.jsx)(`span`,{className:`break-all`,children:l}),trailing:d(`libraryAppCard.copyLink`),onSelect:()=>u?.()}),(0,Z.jsx)(k.Item,{icon:B,label:d(`libraryAppCard.redeploy`),description:d(`libraryAppCard.redeploySub`),onSelect:c})]}):c?(0,Z.jsx)(k.Item,{icon:H,label:d(`libraryAppCard.deploy`),description:d(`libraryAppCard.deploySub`),onSelect:c}):null,o?(0,Z.jsx)(k.Item,{icon:z,label:d(`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,Z.jsxs)(`section`,{children:[(0,Z.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)] max-md:sr-only`,children:e}),(0,Z.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)] max-md:[--swipe-item-surface:var(--surface-overlay)]`,children:t.map(e=>(0,Z.jsx)(ue,{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 fe(e){let{pinnedAppIds:r}=n(e),{data:i=[],isLoading:a,error:o}=j({..._({path:{assistant_id:e}}),select:e=>e.apps}),{data:s=[],isLoading:c,error:l}=j({...t({path:{assistant_id:e}}),select:e=>e.documents}),u=a||c,d=o&&l?o instanceof Error?o.message:`Failed to load library`:null,[f,p]=(0,X.useState)(``),m=(0,X.useMemo)(()=>{if(!f.trim())return i;let e=f.toLowerCase();return i.filter(t=>t.name.toLowerCase().includes(e)||t.description?.toLowerCase().includes(e))},[i,f]);return{apps:i,documents:s,filteredApps:m,pinnedApps:(0,X.useMemo)(()=>m.filter(e=>r.has(e.id)).sort($),[m,r]),recentApps:(0,X.useMemo)(()=>m.filter(e=>!r.has(e.id)).sort($),[m,r]),filteredDocuments:(0,X.useMemo)(()=>{if(!f.trim())return s;let e=f.toLowerCase();return s.filter(t=>t.title.toLowerCase().includes(e))},[s,f]),searchText:f,setSearchText:p,loading:u,error:d}}async function pe(e,t){let{data:n,error:r,response:i}=await p({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 me({assistantId:e,assistantName:t,onNewConversation:a,onOpenDocument:l,onNewDocument:u,isCreatingDocument:d=!1,onOpenApp:p}){let{t:m}=M(`library`),h=r(),g=N(),{togglePin:_,pinnedAppIds:v}=n(e),y=c.use.isDeploying(),{apps:x,documents:S,filteredApps:C,pinnedApps:T,recentApps:E,filteredDocuments:D,searchText:O,setSearchText:k,loading:A,error:j}=fe(e),{pendingDelete:P,isDeleting:F,requestDelete:I,confirmDelete:L,cancelDelete:R}=ie(e),[z]=(0,X.useState)(()=>o()?void 0:`.vellum`),B=(0,X.useRef)(null),[V,H]=(0,X.useState)(!1),U=(0,X.useCallback)(async t=>{let n=t.target.files?.[0];if(!(!n||V)){H(!0);try{let t=await pe(e,n);await g.invalidateQueries({queryKey:s({path:{assistant_id:e}})}),w.success(m(`libraryView.imported`,{name:t.name})),p(t.appId)}catch(e){w.error(e instanceof Error?e.message:m(`libraryView.importFailed`))}finally{H(!1),B.current&&(B.current.value=``)}}},[e,V,g,p,m]),W=(0,X.useCallback)(async t=>{if(y)return;let n=x.find(e=>e.id===t)?.name??`this app`;try{let r=await f(e,t);c.getState().deployApp(e,t,n,r)}catch{c.getState().deployApp(e,t,n,``)}},[e,y,x]),G=(0,X.useCallback)(e=>_(e.id),[_]),K=ae.use.setHeaderTrailing(),q=!A&&!j;if((0,X.useEffect)(()=>{if(!q){K(null);return}let e=(0,Z.jsx)(`div`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-current border-t-transparent`}),t=V?e:(0,Z.jsx)(te,{"aria-hidden":!0}),n=d?e:(0,Z.jsx)(ee,{"aria-hidden":!0});return K(h?(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsx)(i,{shape:`pill`,variant:`ghost`,iconOnly:t,"aria-label":m(`libraryView.import`),tooltip:m(`libraryView.import`),className:`max-md:bg-[var(--surface-active)]`,onClick:()=>B.current?.click(),disabled:V}),u?(0,Z.jsx)(i,{shape:`pill`,variant:`ghost`,iconOnly:n,"aria-label":m(`libraryView.newDocument`),tooltip:m(`libraryView.newDocument`),className:`max-md:bg-[var(--surface-active)]`,onClick:u,disabled:d}):null]}):(0,Z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Z.jsxs)(i,{variant:`outlined`,size:`regular`,onClick:()=>B.current?.click(),disabled:V,children:[t,(0,Z.jsx)(`span`,{className:`ml-1.5`,children:m(`libraryView.import`)})]}),u?(0,Z.jsxs)(i,{size:`regular`,onClick:u,disabled:d,children:[n,(0,Z.jsx)(`span`,{className:`ml-1.5`,children:m(`libraryView.newDocument`)})]}):null]})),()=>{K(null)}},[h,q,V,u,d,K,m]),A)return(0,Z.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,Z.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":m(`libraryView.loadingAria`)})});if(j)return(0,Z.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4`,children:[(0,Z.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:j}),(0,Z.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:m(`libraryView.retry`)})]});let Y=x.length===0&&S.length===0;return(0,Z.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden`,children:[(0,Z.jsx)(`input`,{ref:B,type:`file`,accept:z,className:`hidden`,onChange:U}),Y?(0,Z.jsx)(`div`,{className:`min-h-0 flex-1`,children:(0,Z.jsx)(le,{onNewConversation:a?()=>a():void 0})}):(0,Z.jsxs)(Z.Fragment,{children:[(0,Z.jsx)(`div`,{className:`mb-6 shrink-0`,children:(0,Z.jsx)(b,{fullWidth:!0,type:`text`,placeholder:m(`libraryView.searchPlaceholder`),value:O,onChange:e=>k(e.target.value),leftIcon:(0,Z.jsx)(J,{size:16})})}),(0,Z.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:C.length===0&&D.length===0?(0,Z.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-16`,children:[(0,Z.jsx)(J,{size:32,className:`mb-4 text-[var(--content-tertiary)]`}),(0,Z.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:m(`libraryView.noMatches`,{query:O})})]}):(0,Z.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[(0,Z.jsx)(Q,{title:m(`libraryView.pinned`),apps:T,assistantId:e,pinnedAppIds:v,onOpen:p,onPin:G,onDelete:I,onDeploy:W}),(0,Z.jsx)(Q,{title:m(`libraryView.recents`),apps:E,assistantId:e,pinnedAppIds:v,onOpen:p,onPin:G,onDelete:I,onDeploy:W}),D.length>0?(0,Z.jsxs)(`section`,{children:[(0,Z.jsx)(`h2`,{className:`mb-4 text-body-small-emphasised text-[color:var(--content-secondary)]`,children:m(`libraryView.documents`)}),(0,Z.jsx)(`div`,{className:`grid grid-cols-[repeat(auto-fill,minmax(max(220px,calc((100%-6rem)/5)),1fr))] gap-6`,children:D.map(e=>(0,Z.jsx)(ce,{document:e,onOpen:e=>{l&&l(e)}},e.surfaceId))})]}):null]})}),(0,Z.jsx)(ne,{assistantId:e,assistantName:t,onStartConversation:a}),(0,Z.jsx)(re,{app:P,isDeleting:F,onConfirm:L,onCancel:R})]})]})}function he(e,t){let{t:n}=M(`library`),r=N(),{createDocument:i}=a(),[o,s]=(0,X.useState)(!1),c=(0,X.useRef)(!1);return{newDocument:(0,X.useCallback)(async()=>{if(!c.current){c.current=!0,s(!0);try{let a=await v({assistantId:e,fallback:n(`libraryView.newDocumentFailed`)});if(!a.ok){w.error(a.error);return}let o;try{({surfaceId:o}=await i({assistantId:e,conversationId:a.conversationId}))}catch(t){y(t,{context:`new_library_document`}),O(e,a.conversationId),w.error(n(`libraryView.newDocumentFailed`));return}T(r,e),t(o)}finally{c.current=!1,s(!1)}}},[e,i,t,r,n]),isCreating:o}}function ge(){let e=S(),t=F(),n=P(),r=(0,X.useCallback)(e=>{d(t,{prompt:e})},[t]),i=(0,X.useCallback)(e=>{t(x(e,n.pathname),{state:D(n,e)})},[t,n]),{newDocument:a,isCreating:o}=he(e,i),s=l(e),c=(0,X.useCallback)(()=>{a()},[a]),u=(0,X.useCallback)(e=>{t(m.library.app(e))},[t]);return(0,Z.jsx)(me,{assistantId:e,onNewConversation:r,onOpenDocument:i,onNewDocument:s?c:void 0,isCreatingDocument:o,onOpenApp:u})}export{ge as LibraryPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{dx as e}from"./app-Qc-rYPt9.js";export{e as markLockfileAssistantOnboarded};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Cc as t,EC as n,Oy as r,Sc as i,ab as a,eS as o,ky as s,lS as c,wc as l,xc as u}from"./app-Qc-rYPt9.js";import{j as d}from"./vendor-DEhKVoiV.js";import{d as f,t as p,x as m}from"./react-B9IgSVeK.js";import{n as h,r as g,t as _}from"./auth-welcome-screen-uOY9YbXG.js";import{n as v,t as y}from"./use-return-to-short-circuit-CpUBlNYt.js";var b=e(m(),1),x=p();function S({returnTo:e}){let{t:a}=d(`account`),[o,s]=(0,b.useState)(null),[f,p]=(0,b.useState)(!1),m=async()=>{s(null),p(!0);try{await r({returnTo:e??null})}catch(e){if(i(e)){p(!1);return}c(e,{context:`native_login`,tags:{authError:t(e)??`unclassified`}}),s(a(l(e),{community:u})),p(!1)}};return(0,x.jsx)(g,{animateAvatarWaveIn:!0,fillsViewport:!0,children:(0,x.jsx)(h,{error:o,children:(0,x.jsx)(n,{type:`button`,variant:`primary`,size:`large`,fullWidth:!0,onClick:()=>{m()},disabled:f,children:a(`loginPage.signIn`)})})})}function C({returnTo:e}){let{t}=d(`account`),{search:n}=f(),r=a(e?`${o.account.signup}?returnTo=${encodeURIComponent(e)}`:o.account.signup,n);return(0,x.jsx)(_,{returnTo:e,errorContext:`web_login`,fillsViewport:!0,secondary:{label:t(`loginPage.signUp`),href:r}})}function w(){let e=s(),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};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Fc as t,Im as n,eS as r,rb as i}from"./app-Qc-rYPt9.js";import{j as a}from"./vendor-DEhKVoiV.js";import{_ as o,t as s,x as c}from"./react-B9IgSVeK.js";import{r as l,t as u}from"./account-shell-BCvjHT7j.js";var d=e(c(),1),f=s();function p(){let{t:e}=a(`account`),[s]=o(),c=n.use.logout(),p=(0,d.useRef)(!1);return(0,d.useEffect)(()=>{if(p.current)return;p.current=!0;let e=i(s.get(`returnTo`),r.account.login),n=e.startsWith(`http`)||e===r.account.login?e:`${r.account.login}?returnTo=${encodeURIComponent(e)}`,a=!1;return c().then(()=>{a||t(n)},()=>{a||t(n)}),()=>{a=!0}},[c,s]),(0,f.jsx)(u,{children:(0,f.jsx)(l,{title:e(`logoutPage.title`)})})}export{p as LogoutPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{In as e,Nn as t,or as n}from"./app-Qc-rYPt9.js";import{j as r}from"./vendor-DEhKVoiV.js";import{t as i}from"./react-B9IgSVeK.js";import{t as a}from"./preview-error-DB2rjYvO.js";import{t as o}from"./use-truncated-blob-text-hsQUTRQS.js";var s=i(),c=512*1024;function l({blob:i,filename:l}){let{t:u}=r(`chat`),{text:d,truncated:f,decodeFailed:p}=o(i,c);return p?(0,s.jsx)(a,{filename:l}):d===null?(0,s.jsx)(n,{}):(0,s.jsxs)(`div`,{className:`flex min-h-0 flex-col gap-2`,children:[(0,s.jsx)(t,{content:d}),f&&(0,s.jsx)(e,{children:u(`previewTruncationNotice.markdown`)})]})}export{l as MarkdownPreview};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{EC as t,Iv as n,JS as r,Nn as i,Ps as a,Sl as o,Um as s,XS as c,_c as l,_f as u,eS as d,gC as f,gS as p,hc as m,mS as h,nt as g,pS as _,qS as v,qs as y,rC as b,vc as x,zv as ee}from"./app-Qc-rYPt9.js";import{I as S,Qn as C,Zn as w,j as T,tr as E}from"./vendor-DEhKVoiV.js";import{f as te,t as ne,x as D}from"./react-B9IgSVeK.js";import{$ as O,At as k,Cn as re,Et as ie,Ki as ae,Ln as A,Lt as oe,Mn as j,Wi as M,gt as N,i as P,n as se,qi as F,t as ce,vt as I}from"./icons-C0wyat6T.js";var L=e(D(),1),R={x:600,y:450},le=`memory_tab_v1`,ue=crypto.randomUUID();function z(e){typeof window>`u`||s()&&a([{type:`onboarding`,daemon_event_id:crypto.randomUUID(),recorded_at:Date.now(),screen:`memory`,session_id:ue,step_name:e,funnel_version:le}])}var B=Math.PI*(3-Math.sqrt(5)),V=7,H=2.4,U=34,W=10;function de(e){return Math.min(U,V+H*Math.sqrt(e))}function G(e){return e===`concept`||e===`skill`||e===`capability`||e===`pending`?e:`other`}function fe(e){return e===`link`||e===`learned`?e:`other`}function pe(e,t={}){let n=t.center??R,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)=>de(s[t])),u=70+26*Math.sqrt(i),d=r.map((e,t)=>{let r=(t+.5)/i,a=Math.acos(1-2*r),o=t*B,s=u*Math.cbrt(r),c=Math.sin(a);return{x:n.x+s*c*Math.cos(o),y:n.y+s*c*Math.sin(o),z:s*Math.cos(a),vx:0,vy:0,vz:0}}),f=t.iterations??Math.max(90,Math.min(340,Math.round(46e3/i))),p=.011,m=.82,h=.5,g=1,_=1-.001**(1/f);for(let e=0;e<f;e++){for(let e=0;e<i;e++){let t=d[e];for(let n=e+1;n<i;n++){let r=d[n],i=t.x-r.x,a=t.y-r.y,o=t.z-r.z,s=i*i+a*a+o*o;s<.01&&(i=(e-n)*.1+.1,a=.1,o=.05,s=i*i+a*a+o*o);let c=Math.sqrt(s),l=6400/s,u=i/c*l,f=a/c*l,p=o/c*l;t.vx+=u,t.vy+=f,t.vz+=p,r.vx-=u,r.vy-=f,r.vz-=p}}for(let[e,t]of c){let n=d[e],r=d[t],i=r.x-n.x,a=r.y-n.y,o=r.z-n.z,s=Math.sqrt(i*i+a*a+o*o)||.01,c=.05*(s-140),l=i/s*c,u=a/s*c,f=o/s*c;n.vx+=l,n.vy+=u,n.vz+=f,r.vx-=l,r.vy-=u,r.vz-=f}for(let e=0;e<i;e++){let t=d[e];t.vx+=(n.x-t.x)*p,t.vy+=(n.y-t.y)*p,t.vz+=(0-t.z)*p,t.x+=t.vx*g*h,t.y+=t.vy*g*h,t.z+=t.vz*g*h,t.vx*=m,t.vy*=m,t.vz*=m}g*=1-_}for(let e=0;e<10;e++){let e=!1;for(let t=0;t<i;t++){let n=d[t];for(let r=t+1;r<i;r++){let i=d[r],a=i.x-n.x,o=i.y-n.y,s=i.z-n.z,c=Math.sqrt(a*a+o*o+s*s),u=l[t]+l[r]+W;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:G(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:fe(e.kind),directed:e.directed??!1};return e.description&&(n.description=e.description),n})}}var K=ne();function me({title:e,detail:t,action:n}){return(0,K.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 px-6 text-center`,children:[(0,K.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e}),t?(0,K.jsx)(`p`,{className:`max-w-sm text-body-small-default`,style:{color:`var(--content-tertiary)`},children:t}):null,n?(0,K.jsx)(`div`,{className:`mt-2`,children:n}):null]})}function q(){return S(`getMemoryGraphNode.failureMessage`,{ns:`intelligence`})}function he(e,t){return w({queryKey:[`memory-graph-node`,e,t],enabled:!!(e&&t),queryFn:async()=>{let{data:n,error:r,response:i}=await ee({path:{assistant_id:e},query:{id:t??``},throwOnError:!1});if(h(i,r,q()),!i.ok)throw new _(i.status,p(r,i,q()));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`],ve={concept:`conceptGraphConstants.nodeKind.concept`,skill:`conceptGraphConstants.nodeKind.skill`,capability:`conceptGraphConstants.nodeKind.capability`,pending:`conceptGraphConstants.nodeKind.pending`,other:`conceptGraphConstants.nodeKind.other`};function J(e){return S(ve[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 Y=600;function X(e){let t=e.slice(0,Y),n=t.lastIndexOf(`
|
|
2
|
-
`);return n>Y/2?e.slice(0,n):t}function Se({content:e}){let[n,r]=(0,L.useState)(!1),{t:a}=T(`intelligence`);return e.length<=Y?(0,K.jsx)(i,{content:e}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(i,{content:n?e:X(e)}),(0,K.jsx)(t,{variant:`ghost`,size:`compact`,className:`-ml-2 mt-1`,onClick:()=>r(e=>!e),rightIcon:n?(0,K.jsx)(M,{size:16,"aria-hidden":!0}):(0,K.jsx)(F,{size:16,"aria-hidden":!0}),children:a(n?`conceptDetailPanel.showLess`:`conceptDetailPanel.readFullNote`)})]})}function Ce({assistantId:e,node:n,trail:r,neighbors:i,onTravel:a,onCrumb:o,onClose:s,onOpenThread:c}){let{t:l}=T(`intelligence`),u=C(he(e,n.id)),d=u.data,f=xe(n.updatedAtMs),p=d?.title??n.label,m=be(r);return(0,L.useEffect)(()=>{let e=e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),s())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[s]),(0,K.jsxs)(`div`,{"data-graph-panel":!0,className:`absolute inset-0 z-20 flex justify-end`,onPointerDown:e=>e.stopPropagation(),onPointerMove:e=>e.stopPropagation(),onPointerUp:e=>e.stopPropagation(),children:[(0,K.jsx)(`div`,{className:`absolute inset-0`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 16%, transparent)`},onClick:s}),(0,K.jsxs)(`aside`,{className:`relative flex h-full min-h-0 w-full max-w-md flex-col overflow-hidden`,style:{backgroundColor:`var(--surface-lift)`,borderLeft:`1px solid var(--border-base)`},children:[r.length>1?(0,K.jsxs)(`nav`,{"aria-label":l(`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,K.jsx)(`button`,{type:`button`,onClick:()=>o(r.length-2),"aria-label":l(`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,K.jsx)(ae,{size:16,"aria-hidden":!0})}),m.map((e,t)=>(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[t>0?(0,K.jsx)(`span`,{"aria-hidden":!0,children:`›`}):null,e===`ellipsis`?(0,K.jsx)(`span`,{"aria-hidden":!0,children:`…`}):e.index===r.length-1?(0,K.jsx)(`span`,{"aria-current":`page`,className:`max-w-[9rem] truncate`,style:{color:`var(--content-default)`},children:e.node.label}):(0,K.jsx)(`button`,{type:`button`,onClick:()=>o(e.index),className:`max-w-[8rem] truncate rounded hover:underline`,style:{color:`var(--content-tertiary)`},children:e.node.label})]},e===`ellipsis`?`ellipsis`:e.index))]}):null,(0,K.jsxs)(`header`,{className:`flex shrink-0 items-start justify-between gap-3 border-b px-5 py-4`,style:{borderColor:`var(--border-base)`},children:[(0,K.jsxs)(`div`,{className:`min-w-0`,children:[(0,K.jsx)(`h2`,{className:`truncate text-title-small`,style:{color:`var(--content-default)`},title:d?.title??n.label,children:d?.title??n.label}),f?(0,K.jsx)(`p`,{className:`mt-0.5 text-body-small-default`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.updated`,{date:f})}):null]}),(0,K.jsx)(t,{variant:`ghost`,iconOnly:(0,K.jsx)(P,{"aria-hidden":!0}),onClick:s,"aria-label":l(`conceptDetailPanel.closeAriaLabel`),tintColor:`var(--content-tertiary)`})]}),(0,K.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto px-5 py-4`,style:{touchAction:`pan-y`},children:[u.isLoading?(0,K.jsx)(`div`,{className:`flex justify-center py-8`,children:(0,K.jsx)(`div`,{className:`h-5 w-5 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):u.isError?(0,K.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.loadError`)}):d?.found&&d.content?.trim()?(0,K.jsx)(Se,{content:d.content},n.id):(0,K.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.emptyContent`)}),i.length>0?(0,K.jsxs)(`section`,{className:`mt-6 border-t pt-4`,style:{borderColor:`var(--border-base)`},children:[(0,K.jsxs)(`div`,{className:`mb-2 flex items-baseline justify-between gap-2`,children:[(0,K.jsx)(`h3`,{className:`text-body-small-default uppercase tracking-wide`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.wiredTo`)}),(0,K.jsx)(`span`,{className:`text-body-small-default tabular-nums`,style:{color:`var(--content-tertiary)`},children:l(`conceptDetailPanel.connectionCount`,{count:i.length})})]}),(0,K.jsx)(`ul`,{className:`flex list-none flex-col gap-0.5`,children:i.map(e=>(0,K.jsx)(`li`,{children:(0,K.jsxs)(`button`,{type:`button`,onClick:()=>a({id:e.id,label:e.label}),className:`flex w-full items-center gap-2 rounded-lg px-2 py-1.5 text-left text-body-medium-default hover:bg-[color-mix(in_srgb,var(--content-tertiary)_12%,transparent)]`,style:{color:`var(--content-default)`},children:[(0,K.jsx)(`span`,{"aria-hidden":!0,className:`h-1.5 w-1.5 shrink-0 rounded-full`,style:{backgroundColor:e.kind===`learned`?ye:`var(--content-tertiary)`}}),(0,K.jsx)(`span`,{className:`truncate`,children:e.label})]})},e.id))})]}):null]}),c?(0,K.jsxs)(`footer`,{className:`flex shrink-0 gap-2 border-t px-5 py-3`,style:{borderColor:`var(--border-base)`},children:[(0,K.jsx)(t,{variant:`outlined`,size:`regular`,className:`flex-1`,leftIcon:(0,K.jsx)(j,{size:16,"aria-hidden":!0}),onClick:()=>c(l(`conceptDetailPanel.askPrompt`,{title:p})),children:l(`conceptDetailPanel.askAboutThis`)}),(0,K.jsx)(t,{variant:`primary`,size:`regular`,className:`flex-1`,leftIcon:(0,K.jsx)(O,{size:16,"aria-hidden":!0}),onClick:()=>c(l(`conceptDetailPanel.refinePrompt`,{title:p})),children:l(`conceptDetailPanel.refine`)})]}):null]})]})}function we({onDismiss:e}){let{t:n}=T(`intelligence`);return(0,K.jsxs)(`div`,{"data-graph-control":!0,className:`pointer-events-auto absolute left-1/2 top-4 z-10 flex w-[min(30rem,calc(100%-6rem))] -translate-x-1/2 items-start gap-3 rounded-xl px-4 py-3`,style:{backgroundColor:`var(--surface-lift)`,border:`1px solid var(--border-base)`,boxShadow:`0 4px 12px rgba(0, 0, 0, 0.25)`},children:[(0,K.jsx)(`span`,{className:`mt-0.5 shrink-0`,style:{color:`var(--primary-base)`},"aria-hidden":!0,children:(0,K.jsx)(O,{size:18})}),(0,K.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,K.jsx)(`p`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:n(`conceptGraphIntroBanner.title`)}),(0,K.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter`,style:{color:`var(--content-tertiary)`},children:n(`conceptGraphIntroBanner.description`)})]}),(0,K.jsx)(t,{variant:`ghost`,iconOnly:(0,K.jsx)(P,{"aria-hidden":!0}),onClick:e,"aria-label":n(`conceptGraphIntroBanner.dismissAriaLabel`),tintColor:`var(--content-tertiary)`})]})}var Z=8;function Te({nodeKinds:e,coloredByTheme:t,themes:n,hasLinks:r,hasLearned:i,onToggleLink:a,onToggleLearned:o,linkActive:s,learnedActive:c}){let{t:l}=T(`intelligence`);return(0,K.jsxs)(`div`,{"data-graph-control":!0,className:`pointer-events-none absolute bottom-4 left-4 flex flex-col gap-1.5 rounded-lg px-3 py-2`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 78%, transparent)`,border:`1px solid var(--border-base)`},children:[e.map(e=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 rounded-full`,style:{backgroundColor:ge[e]}}),(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:J(e)})]},e)),t&&(n&&n.length>0?(0,K.jsxs)(K.Fragment,{children:[n.slice(0,Z).map((e,t)=>(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{className:`inline-block h-2.5 w-2.5 shrink-0 rounded-full`,style:{backgroundColor:e.color}}),(0,K.jsx)(`span`,{className:`max-w-[9rem] truncate text-[11px]`,style:{color:`var(--content-tertiary)`},title:e.concepts?.join(` · `)??e.name,children:e.name})]},t)),n.length>Z&&(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:l(`conceptGraphLegend.moreThemes`,{count:n.length-Z})})]}):(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:l(`conceptGraphLegend.coloredByTheme`)})),(e.length>0||t)&&(r||i)&&(0,K.jsx)(`div`,{className:`mt-0.5 border-t pt-1.5`,style:{borderColor:`var(--border-base)`}}),r&&(0,K.jsx)(Ee,{swatchStyle:{borderTop:`2px solid var(--content-tertiary)`},label:l(`conceptGraphLegend.link`),onToggle:a,active:s}),i&&(0,K.jsx)(Ee,{swatchStyle:{borderTop:`2px dashed #F1B21E`},label:l(`conceptGraphLegend.learned`),onToggle:o,active:c})]})}function Ee({swatchStyle:e,label:t,onToggle:n,active:r}){let i=(0,K.jsx)(`span`,{className:`inline-block h-0 w-4`,style:e}),a=(0,K.jsx)(`span`,{className:`text-[11px]`,style:{color:`var(--content-tertiary)`},children:t});return n?(0,K.jsxs)(`button`,{type:`button`,onClick:n,"aria-pressed":r,className:`pointer-events-auto flex cursor-pointer items-center gap-2 border-0 bg-transparent p-0 transition-opacity`,style:{opacity:r===!1?.4:1},children:[i,a]}):(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[i,a]})}var De=8;function Oe(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<De;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 S(`memoryUnavailable.prompts.v2`,{ns:`intelligence`})}function $(){return S(`memoryUnavailable.prompts.v1`,{ns:`intelligence`})}function ke(){return S(`memoryUnavailable.prompts.enable`,{ns:`intelligence`})}function Ae(){return{title:S(`memoryUnavailable.statusError.title`,{ns:`intelligence`}),detail:S(`memoryUnavailable.statusError.detail`,{ns:`intelligence`}),action:`retry`}}function je(e){return e===`off`?{title:S(`memoryUnavailable.off.title`,{ns:`intelligence`}),detail:S(`memoryUnavailable.off.detail`,{ns:`intelligence`}),action:`settings`,prompt:ke()}:e===`v1`||e===`v2`?{title:S(`memoryUnavailable.legacy.title`,{ns:`intelligence`}),detail:S(`memoryUnavailable.legacy.detail`,{ns:`intelligence`}),action:`upgrade`,prompt:e===`v1`?$():Q()}:{title:S(`memoryUnavailable.unknown.title`,{ns:`intelligence`}),detail:S(`memoryUnavailable.unknown.detail`,{ns:`intelligence`}),action:`none`}}function Me({assistantId:e,onOpenThread:n}){let{t:r}=T(`intelligence`),i=te(),a=E(),o=C(l(e));(0,L.useEffect)(()=>{m(a,e)},[a,e]);let s=y(`memoryOptOut`),c=u.use.settingsDeveloperNav(),f=s&&c===!0;if(o.isLoading)return null;let p=o.data?.kind===`ready`?o.data.tier:void 0,h=o.isError?Ae():je(p),g=h.prompt,_=null;return h.action===`upgrade`&&n&&g?_=(0,K.jsx)(t,{variant:`primary`,size:`compact`,leftIcon:(0,K.jsx)(O,{}),onClick:()=>{z(`upgrade_v3_clicked`),n(g)},children:r(`memoryUpgradePrompt.upgradeMemory`)}):h.action===`retry`?_=(0,K.jsx)(t,{variant:`outlined`,size:`compact`,leftIcon:(0,K.jsx)(k,{}),onClick:()=>{o.refetch()},children:r(`memoryUpgradePrompt.tryAgain`)}):h.action===`settings`&&f?_=(0,K.jsx)(t,{variant:`outlined`,size:`compact`,leftIcon:(0,K.jsx)(N,{}),onClick:()=>i(`${d.settings.developer}?tab=memory`),children:r(`memoryUpgradePrompt.memorySettings`)}):h.action===`settings`&&n&&g&&(_=(0,K.jsx)(t,{variant:`primary`,size:`compact`,leftIcon:(0,K.jsx)(O,{}),onClick:()=>{z(`enable_memory_clicked`),n(g)},children:r(`memoryUpgradePrompt.turnMemoryOn`)})),(0,K.jsx)(me,{title:h.title,detail:h.detail,action:_})}function Ne({value:e,onChange:t}){let{t:n}=T(`intelligence`),r=[{value:`all`,label:n(`recencyLens.all`)},{value:`month`,label:n(`recencyLens.month`)},{value:`week`,label:n(`recencyLens.week`)}];return(0,K.jsx)(c,{ariaLabel:n(`recencyLens.ariaLabel`),items:r,value:e,onChange:t,className:`!w-auto [&>*]:!flex-none`})}var Pe=`vellum:memoryGraph:introDismissed:`;function Fe(e){return`${Pe}${e}`}function Ie(e){if(!e)return!0;try{return window.localStorage.getItem(Fe(e))===`1`}catch{return!0}}function Le(e){let[t,n]=(0,L.useState)(()=>Ie(e));return(0,L.useEffect)(()=>{n(Ie(e))},[e]),[t,(0,L.useCallback)(()=>{n(!0);try{window.localStorage.setItem(Fe(e),`1`)}catch{}},[e])]}var Re=[`concept`,`skill`,`capability`,`pending`,`other`],ze=.13,Be=2600,Ve=.006,He=1.15,Ue=3,We=.32,Ge=.45,Ke=3,qe=4,Je=1440*60*1e3,Ye=14*Je,Xe=12,Ze=2*Je,Qe=80,$e=340,et=.12,tt=.05,nt=.03,rt=12,it=2600;function at(e){let t=getComputedStyle(e);return{content:t.getPropertyValue(`--content-default`).trim()||`#e5e7eb`,tertiary:t.getPropertyValue(`--content-tertiary`).trim()||`#8792a0`}}function ot(e){return e.kind===`learned`?`Learned association`:e.description??`Linked concepts`}function st(e,t,n){return t==null?!1:e==null||n-e>t}function ct(e,t){let n=t?e.get(t):void 0;return e=>t!=null&&(e===t||(n?.has(e)??!1))}function lt({assistantId:e,className:n,isFullscreen:r,onToggleFullscreen:i,onOpenThread:a,headerAction:o,handleRef:s}){let{t:c}=T(`intelligence`),l=(0,L.useRef)(null),u=(0,L.useRef)(null),d=C(x(e)),f=d.data?.kind===`ready`?d.data.graph:null,p=(0,L.useMemo)(()=>f?pe(f):{nodes:[],edges:[]},[f]),m=d.data?.kind===`ready`&&p.nodes.length>0,h=(0,L.useMemo)(()=>Oe(p.nodes,p.edges),[p.nodes,p.edges]),g=(0,L.useMemo)(()=>{let e=new Map;for(let t of p.nodes){let n=h.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)},[h,p.nodes]),_=(0,L.useMemo)(()=>new Set(g.map(e=>e.hubId)),[g]),v=(0,L.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 p.edges)t(e.fromId,e.toId),t(e.toId,e.fromId);return e},[p.edges]),y=(0,L.useMemo)(()=>{if(p.nodes.length===0)return 1;let e=p.nodes.map(e=>{let t=e.x-R.x,n=e.y-R.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])},[p.nodes]),b=(0,L.useRef)({yaw:.5,pitch:.32,zoom:1,hoveredId:null,dragging:!1,moved:!1,lastX:0,lastY:0,lastInteractAt:-1/0,dirty:!0}),ee=(0,L.useRef)([]),S=(0,L.useRef)([]),w=(0,L.useRef)({content:`#e5e7eb`,tertiary:`#8792a0`}),E=(0,L.useRef)(null),te=(0,L.useRef)(!1),ne=(0,L.useRef)(null),D=(0,L.useRef)(null),[O,k]=(0,L.useState)(null),[ae,oe]=(0,L.useState)(null),[j,M]=(0,L.useState)([]),N=j.at(-1)??null,F=(0,L.useCallback)(e=>{z(`node_opened`),M(t=>[...t,e])},[]),le=(0,L.useRef)(null);(0,L.useEffect)(()=>{le.current=N?.id??null,b.current.dirty=!0},[N?.id]);let[ue,B]=Le(e),[V,H]=(0,L.useState)(``),[U,W]=(0,L.useState)(!1),de=(0,L.useRef)(null);(0,L.useEffect)(()=>{U&&de.current?.focus()},[U]);let G=(0,L.useRef)(!1),fe=V.trim().toLowerCase(),q=(0,L.useMemo)(()=>{if(!fe)return null;let e=new Set;for(let t of p.nodes)t.label.toLowerCase().includes(fe)&&e.add(t.id);return e},[fe,p.nodes]),he=(0,L.useRef)({active:!1,matches:null});(0,L.useEffect)(()=>{he.current={active:!!q,matches:q},b.current.dirty=!0},[q]),(0,L.useEffect)(()=>{V.trim()||(G.current=!1)},[V]);let ve=(0,L.useMemo)(()=>!q||q.size===0?[]:p.nodes.filter(e=>q.has(e.id)).sort((e,t)=>t.degree-e.degree).slice(0,8),[q,p.nodes]),[J,be]=(0,L.useState)(`all`),xe=(0,L.useRef)(null);(0,L.useEffect)(()=>{xe.current=J===`week`?7*Je:J===`month`?30*Je:null,b.current.dirty=!0},[J]);let Y=(0,L.useMemo)(()=>p.nodes.some(e=>e.updatedAtMs!=null),[p.nodes]);(0,L.useEffect)(()=>{!Y&&J!==`all`&&be(`all`)},[Y,J]);let[X,Se]=(0,L.useState)({link:!0,learned:!0}),Z=(0,L.useRef)(X);(0,L.useEffect)(()=>{Z.current=X,b.current.dirty=!0},[X]),(0,L.useEffect)(()=>{H(``),be(`all`),Se({link:!0,learned:!0}),M([]),G.current=!1},[e]);let Ee=(0,L.useCallback)(()=>{let e=b.current;e.yaw=.5,e.pitch=.32,e.zoom=1,e.lastInteractAt=-1/0,e.dirty=!0,k(null)},[]),De=(0,L.useCallback)(e=>{let t=b.current;t.zoom=Math.max(Ge,Math.min(Ke,t.zoom*e)),t.lastInteractAt=performance.now(),t.dirty=!0},[]),Q=(0,L.useCallback)(e=>{E.current=e,b.current.lastInteractAt=performance.now(),b.current.dirty=!0},[]),$=(0,L.useCallback)(e=>{F(e),Q(e.id)},[F,Q]),ke=(0,L.useCallback)(e=>{ne.current={id:e,start:performance.now()},Q(e),window.setTimeout(()=>{b.current.dirty=!0},it+60)},[Q]),Ae=(0,L.useCallback)(e=>{p.nodes.some(t=>t.id===e)?ke(e):D.current=e},[p.nodes,ke]);(0,L.useEffect)(()=>{let e=D.current;e&&p.nodes.some(t=>t.id===e)&&(D.current=null,ke(e))},[p.nodes,ke]),(0,L.useImperativeHandle)(s,()=>({focusNode:Ae}),[Ae]);let je=(0,L.useCallback)(()=>{M([]),H(``),k(null),E.current=null,te.current=!0},[]),Pe=(0,L.useCallback)(e=>{H(``);let t=j.slice(0,e+1);M(t);let n=t.at(-1);n?Q(n.id):k(null)},[j,Q]),Fe=(0,L.useCallback)(e=>{H(``),$(e)},[$]),Ie=(0,L.useMemo)(()=>{let e=N?.id;if(!e)return[];let t=v.get(e);if(!t||t.size===0)return[];let n=new Map(p.nodes.map(e=>[e.id,e.label])),r=new Map;for(let t of p.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},[N?.id,v,p.nodes,p.edges]);(0,L.useEffect)(()=>{if(!m)return;let e=u.current,t=l.current;if(!e||!t)return;let n=e.getContext(`2d`);if(!n)return;let r=p.nodes,i=p.edges,a=h,o=_,s=v,c=new Set(r.map(e=>e.id)),d=y,f=window.matchMedia(`(prefers-reduced-motion: reduce)`).matches;w.current=at(t);let g=Math.min(window.devicePixelRatio||1,2),x=0,C=0,T=()=>{let n=t.getBoundingClientRect();x=n.width,C=n.height,g=Math.min(window.devicePixelRatio||1,2),e.width=Math.max(1,Math.round(x*g)),e.height=Math.max(1,Math.round(C*g)),e.style.width=`${x}px`,e.style.height=`${C}px`,w.current=at(t),b.current.dirty=!0};T();let D=new ResizeObserver(T);D.observe(t);let O=new MutationObserver(()=>{w.current=at(t),b.current.dirty=!0});O.observe(document.documentElement,{attributes:!0,attributeFilter:[`data-theme`,`class`,`style`]});let k=0,re=0,ie=e=>{let t=re?Math.min(.05,(e-re)/1e3):0;re=e;let l=b.current,u=w.current,p=Date.now(),m=E.current;if(!l.dragging&&e-l.lastInteractAt>Be&&!f&&!m&&(l.yaw+=ze*t),m){let e=r.find(e=>e.id===m);if(!e)E.current=null;else{let t=e.x-R.x,n=e.y-R.y,r=e.z,i=-Math.atan2(t,r),a=Math.hypot(t,r),o=Math.max(-He,Math.min(He,Math.atan2(n,a))),s=Math.min(Ke,1.6),c=f?1:.15,u=i-l.yaw;u=Math.atan2(Math.sin(u),Math.cos(u)),l.yaw+=u*c,l.pitch+=(o-l.pitch)*c,l.zoom+=(s-l.zoom)*c,l.dirty=!0,Math.abs(u)<.01&&Math.abs(o-l.pitch)<.01&&Math.abs(s-l.zoom)<.02&&(E.current=null)}}if(te.current&&!l.dragging){let e=f?1:.15;l.pitch+=(.32-l.pitch)*e,l.zoom+=(1-l.zoom)*e,l.dirty=!0,Math.abs(.32-l.pitch)<.01&&Math.abs(1-l.zoom)<.02&&(te.current=!1)}if(f&&!l.dirty){k=requestAnimationFrame(ie);return}l.dirty=!1;let h=Math.cos(l.yaw),_=Math.sin(l.yaw),v=Math.cos(l.pitch),y=Math.sin(l.pitch),T=Ue*d,D=Math.min(x,C)*.88/(2*d)*l.zoom,O=x/2,ae=C/2;n.setTransform(g,0,0,g,0,0),n.clearRect(0,0,x,C);let A=l.hoveredId,oe=A?s.get(A):void 0,j=e=>!A||e===A||(oe?.has(e)??!1),M=he.current,N=M.active,P=e=>!N||(M.matches?.has(e)??!1),se=xe.current,F=e=>st(e.updatedAtMs,se,p),ce=Z.current,I=le.current,L=I!=null&&c.has(I),ue=ct(s,L?I:null),z=r.length<=Qe?1:Math.max(et,1-(r.length-Qe)/($e-Qe)*(1-et)),B=Array(r.length);for(let e=0;e<r.length;e++){let t=r[e],n=t.x-R.x,i=t.y-R.y,a=t.z,o=n*h+a*_,s=-n*_+a*h,c=i*v-s*y,l=i*y+s*v,u=T/(T-l);B[e]={node:t,sx:O+o*D*u,sy:ae+c*D*u,sr:Math.max(1.2,t.radius*D*u),depth:Math.max(0,Math.min(1,(l+d)/(2*d)))}}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=I!=null&&(e.fromId===I||e.toId===I);if(!a&&(i?!ce.learned:!ce.link))continue;let o=N&&(!P(e.fromId)||!P(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&&(!L||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),d=i?l*z:l,f;f=o?.03:L?a?.9:nt:A==null?d:s?.9:j(e.fromId)&&j(e.toId)?l:.05,n.globalAlpha=f,n.strokeStyle=i?ye:u.tertiary,n.lineWidth=(s||L&&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=N&&!P(i.id),c=ue(i.id),l=s||F(i)&&!c,u=L?c&&!l:!l&&j(i.id),d=i.id===A,m=We+(1-We)*r.depth,h=L&&!c?m*tt:l?m*.08:u?m:m*.18,g=(d?16:i.degree>=qe?8:4)*r.depth,_=i.updatedAtMs;if(_){let n=p-_,i=Math.max(0,1-n/Ye);if(i>0){let a=i*Xe;!f&&n<Ze&&(a*=.55+.45*Math.sin(e/420+t*1.7)),g+=a*r.depth}}n.shadowColor=o,n.shadowBlur=u?g:0;let v=i.kind===`pending`;n.globalAlpha=h*(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=h,n.lineWidth=d?2.5:1.4,n.strokeStyle=o,n.setLineDash(v?[3,3]:[]),n.stroke(),n.setLineDash([]);let y=ne.current;if(y&&y.id===i.id){let t=e-y.start;if(t>it)ne.current=null;else if(f)n.globalAlpha=.7,n.lineWidth=1.5,n.beginPath(),n.arc(r.sx,r.sy,r.sr+7,0,Math.PI*2),n.stroke();else for(let e=0;e<3;e++){let i=(t-e*320)/1100;i<=0||i>=1||(n.globalAlpha=(1-i)*.8,n.lineWidth=1.5,n.beginPath(),n.arc(r.sx,r.sy,r.sr+i*46*r.depth,0,Math.PI*2),n.stroke())}}}n.shadowBlur=0,n.textAlign=`center`,n.textBaseline=`top`,n.font=`11px ui-sans-serif, system-ui, sans-serif`;for(let e of V){let t=B[e],r=t.node,i=ue(r.id);if(N&&!P(r.id)||F(r)&&!i||!(L?i:N?t.depth>.3:A==null?o.has(r.id)||r.degree>=qe&&t.depth>.55:j(r.id)))continue;n.globalAlpha=(r.id===A||r.id===I?1:.85)*(.4+.6*t.depth),n.fillStyle=u.content;let a=r.label.length>22?`${r.label.slice(0,21)}…`:r.label;n.fillText(a,t.sx,t.sy+t.sr+3)}n.globalAlpha=1,ee.current=B.map(e=>({id:e.node.id,sx:e.sx,sy:e.sy,sr:e.sr,depth:e.depth,updatedAtMs:e.node.updatedAtMs})),S.current=U,k=requestAnimationFrame(ie)};return k=requestAnimationFrame(ie),()=>{cancelAnimationFrame(k),D.disconnect(),O.disconnect()}},[m,p,v,y,h,_]);let lt=(0,L.useCallback)((e,t)=>{let n=he.current,r=xe.current,i=ct(v,le.current),a=Date.now(),o=null,s=-1;for(let c of ee.current){if(n.active&&!(n.matches?.has(c.id)??!1)||!i(c.id)&&st(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},[v]),ut=(0,L.useCallback)((e,t)=>{let n=null,r=1/0,i=-1;for(let a of S.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=l.current.getBoundingClientRect();return{x:e.clientX-t.left,y:e.clientY-t.top}},ft=(0,L.useCallback)(e=>{if(e.button!==0||e.target.closest(`[data-graph-control]`))return;let t=b.current;E.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,L.useCallback)(e=>{let t=b.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*Ve,t.pitch=Math.max(-He,Math.min(He,t.pitch+r*Ve)),t.lastX=e.clientX,t.lastY=e.clientY,t.lastInteractAt=performance.now(),t.dirty=!0;return}let{x:n,y:r}=dt(e),i=lt(n,r);if(i!==t.hoveredId&&(t.hoveredId=i,t.dirty=!0),i)oe(null);else{let e=ut(n,r);oe(e?ot(e):null)}},[lt,ut]),mt=(0,L.useCallback)(e=>{let t=b.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=lt(t,n);if(r){let e=p.nodes.find(e=>e.id===r);e&&$({id:e.id,label:e.label,updatedAtMs:e.updatedAtMs})}else k(null)}},[lt,p.nodes,$]),ht=(0,L.useCallback)(()=>{let e=b.current;oe(null),!(e.dragging||e.hoveredId==null)&&(e.hoveredId=null,e.dirty=!0,k(null))},[]);(0,L.useEffect)(()=>{let e=l.current;if(!e||!m)return;let t=e=>{if(e.target.closest?.(`[data-graph-panel]`))return;e.preventDefault();let t=b.current;t.zoom=Math.max(Ge,Math.min(Ke,t.zoom*(1-e.deltaY/500))),t.lastInteractAt=performance.now(),t.dirty=!0};return e.addEventListener(`wheel`,t,{passive:!1}),()=>e.removeEventListener(`wheel`,t)},[m]);let gt=(0,L.useMemo)(()=>{let e=new Set(p.nodes.map(e=>e.kind));return Re.filter(t=>e.has(t))},[p.nodes]),_t=(0,L.useMemo)(()=>p.edges.some(e=>e.kind===`learned`),[p.edges]),vt=(0,L.useMemo)(()=>p.edges.some(e=>e.kind!==`learned`),[p.edges]);(0,L.useEffect)(()=>{!(vt&&_t)&&(!X.link||!X.learned)&&Se({link:!0,learned:!0})},[vt,_t,X]);let yt=d.data?.kind===`ready`&&!ue,bt=p.nodes.length,xt=p.edges.length,St=new Set(h.values()).size,Ct=(e,t)=>`${e} ${t}${e===1?``:`s`}`,wt=yt?null:O??ae,Tt=m&&(p.nodes.length>rt||!!V),Et=!!(i||o)||m,Dt;return Dt=d.isLoading?(0,K.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,K.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2`,style:{borderColor:`var(--border-base)`,borderTopColor:`var(--content-tertiary)`}})}):d.isError?(0,K.jsx)(me,{title:c(`conceptGraphView.loadErrorTitle`),detail:c(`conceptGraphView.loadErrorDetail`)}):d.data?.kind===`unsupported`?(0,K.jsx)(Me,{assistantId:e,onOpenThread:a}):m?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`canvas`,{ref:u,className:`absolute inset-0 h-full w-full`}),(p.nodes.length>rt||J!==`all`)&&Y?(0,K.jsx)(`div`,{"data-graph-control":!0,className:`absolute left-4 top-4 z-10`,children:(0,K.jsx)(Ne,{value:J,onChange:be})}):null,(0,K.jsx)(Te,{nodeKinds:gt.filter(e=>e!==`concept`),coloredByTheme:gt.includes(`concept`),themes:g,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,K.jsx)(`div`,{className:`pointer-events-none absolute bottom-4 right-4 text-[11px]`,style:{color:`var(--content-tertiary)`},children:c(`conceptGraphView.dragToRotateHint`)}),f?.truncated?(0,K.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:c(`conceptGraphView.truncatedNotice`,{count:p.nodes.length})}):null,(0,K.jsxs)(`div`,{"data-graph-control":!0,className:`absolute right-4 top-4 flex flex-col gap-1`,children:[(0,K.jsx)(t,{variant:`ghost`,iconOnly:(0,K.jsx)(ce,{}),onClick:()=>De(1.25),"aria-label":c(`conceptGraphView.zoomInAriaLabel`),tooltip:c(`conceptGraphView.zoomInAriaLabel`)}),(0,K.jsx)(t,{variant:`ghost`,iconOnly:(0,K.jsx)(se,{}),onClick:()=>De(.8),"aria-label":c(`conceptGraphView.zoomOutAriaLabel`),tooltip:c(`conceptGraphView.zoomOutAriaLabel`)}),(0,K.jsx)(t,{variant:`ghost`,iconOnly:(0,K.jsx)(ie,{}),onClick:Ee,"aria-label":c(`conceptGraphView.resetViewAriaLabel`),tooltip:c(`conceptGraphView.resetViewAriaLabel`)})]})]}):(0,K.jsx)(me,{title:c(`conceptGraphView.emptyTitle`),detail:c(`conceptGraphView.emptyDetail`)}),(0,K.jsxs)(`div`,{className:`@container flex select-none flex-col overflow-hidden rounded-xl ${n??``}`,style:{backgroundColor:`var(--surface-base)`},children:[Et?(0,K.jsxs)(`div`,{className:`flex h-12 flex-none items-center gap-2 px-3`,style:{borderBottom:`1px solid var(--border-base)`},children:[i?(0,K.jsx)(t,{variant:`ghost`,iconOnly:r?(0,K.jsx)(re,{}):(0,K.jsx)(A,{}),onClick:i,"aria-label":c(r?`conceptGraphView.exitFullscreenAriaLabel`:`conceptGraphView.enterFullscreenAriaLabel`),tooltip:c(r?`conceptGraphView.exitFullscreenAriaLabel`:`conceptGraphView.enterFullscreenAriaLabel`)}):null,Tt?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(t,{variant:`ghost`,iconOnly:(0,K.jsx)(I,{}),onClick:()=>W(!0),"aria-label":c(`conceptGraphView.searchConceptsAriaLabel`),tooltip:c(`conceptGraphView.searchConceptsAriaLabel`),className:U?`hidden`:`@2xl:hidden`}),(0,K.jsxs)(`div`,{className:`relative ${U?``:`hidden @2xl:block`}`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 rounded-full px-2.5 py-1`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`},children:[(0,K.jsx)(I,{size:14,"aria-hidden":!0,style:{color:`var(--content-tertiary)`}}),(0,K.jsx)(`input`,{ref:de,type:`text`,value:V,onChange:e=>{let t=e.target.value;t.trim()&&!G.current&&(z(`search`),G.current=!0),H(t)},onKeyDown:e=>{e.key===`Escape`?(V||U)&&(e.preventDefault(),e.stopPropagation(),H(``),W(!1)):e.key===`Enter`&&ve.length>0&&(e.preventDefault(),Q(ve[0].id))},placeholder:c(`conceptGraphView.searchConceptsPlaceholder`),"aria-label":c(`conceptGraphView.searchConceptsAriaLabel`),className:`w-36 bg-transparent text-[12px] outline-none placeholder:text-[var(--content-tertiary)]`,style:{color:`var(--content-default)`}}),V?(0,K.jsx)(`span`,{className:`text-[11px] tabular-nums`,style:{color:`var(--content-tertiary)`},children:q?.size??0}):null,V||U?(0,K.jsx)(`button`,{type:`button`,onClick:()=>{H(``),W(!1)},"aria-label":c(`conceptGraphView.clearSearchAriaLabel`),className:`flex items-center`,style:{color:`var(--content-tertiary)`},children:(0,K.jsx)(P,{size:13})}):null]}),V&&ve.length>0?(0,K.jsx)(`ul`,{className:`absolute left-0 top-full z-30 mt-1.5 flex max-h-56 w-52 list-none flex-col overflow-y-auto rounded-xl py-1`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 92%, transparent)`,border:`1px solid var(--border-base)`},children:ve.map(e=>(0,K.jsx)(`li`,{children:(0,K.jsx)(`button`,{type:`button`,onClick:()=>{$({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,K.jsx)(`div`,{className:`pointer-events-none mx-auto min-w-0`,children:wt?(0,K.jsx)(`div`,{className:`truncate rounded-full px-3 py-1 text-[12px]`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-default)`},children:wt}):m&&!yt&&!U?(0,K.jsxs)(`div`,{className:`rounded-full px-3 py-1 text-[11px] tabular-nums`,style:{backgroundColor:`color-mix(in srgb, var(--surface-base) 82%, transparent)`,border:`1px solid var(--border-base)`,color:`var(--content-tertiary)`},children:[(0,K.jsxs)(`span`,{className:`@max-md:hidden`,children:[Ct(bt,`neuron`),` · `,Ct(xt,`synapse`),` ·`,` `,Ct(St,`lobe`)]}),(0,K.jsxs)(`span`,{className:`hidden @max-md:inline`,children:[bt,` · `,xt,` · `,St]})]}):null}),o?(0,K.jsx)(`div`,{className:`flex-none`,children:o}):null]}):null,(0,K.jsxs)(`div`,{ref:l,className:`relative min-h-0 flex-1`,style:{backgroundImage:`radial-gradient(circle at center, color-mix(in srgb, var(--content-tertiary) 8%, transparent), transparent 62%)`,touchAction:`none`,cursor:m?`grab`:`default`},onPointerDown:m?ft:void 0,onPointerMove:m?pt:void 0,onPointerUp:m?mt:void 0,onPointerCancel:m?mt:void 0,onPointerLeave:m?ht:void 0,children:[yt?(0,K.jsx)(we,{onDismiss:B}):null,Dt,m&&N?(0,K.jsx)(Ce,{assistantId:e,node:N,trail:j,neighbors:Ie,onTravel:Fe,onCrumb:Pe,onClose:je,onOpenThread:a}):null]})]})}async function ut(e,t){let{data:r}=await n({path:{assistant_id:e},body:{content:t},throwOnError:!0});return r}function dt({open:e,onOpenChange:n,assistantId:i,onCreated:a}){let{t:o}=T(`intelligence`),s=E(),[c,u]=(0,L.useState)(``),[d,p]=(0,L.useState)(!1),m=(0,L.useCallback)(async()=>{let e=c.trim();if(e){p(!0);try{let t=await ut(i,e);if(!t.success){v.error(t.message||o(`createMemoryModal.saveError`));return}v.success(t.pendingNodeId?o(`createMemoryModal.savedFoundToast`):o(`createMemoryModal.savedPendingToast`)),u(``),n(!1),a?.(t.pendingNodeId),await Promise.all([s.invalidateQueries({queryKey:x(i).queryKey}),s.invalidateQueries({queryKey:l(i).queryKey})])}catch(e){let t=e instanceof Error?e.message:o(`createMemoryModal.createError`);v.error(t)}finally{p(!1)}}},[i,c,n,a,s,o]);return(0,K.jsx)(r.Root,{open:e,onOpenChange:n,children:(0,K.jsxs)(r.Content,{size:`sm`,children:[(0,K.jsx)(r.Header,{children:(0,K.jsx)(r.Title,{children:o(`createMemoryModal.title`)})}),(0,K.jsx)(r.Body,{children:(0,K.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,K.jsx)(b,{label:o(`createMemoryModal.contentLabel`),placeholder:o(`createMemoryModal.contentPlaceholder`),value:c,onChange:e=>u(e.target.value),disabled:d,rows:3,fullWidth:!0}),(0,K.jsx)(f,{as:`p`,variant:`body-medium-lighter`,className:`text-(--content-secondary)`,children:o(`createMemoryModal.helperText`)})]})}),(0,K.jsxs)(r.Footer,{children:[(0,K.jsx)(r.Close,{asChild:!0,children:(0,K.jsx)(t,{variant:`outlined`,disabled:d,children:o(`createMemoryModal.cancel`)})}),(0,K.jsx)(t,{variant:`primary`,onClick:m,disabled:d||!c.trim(),loading:d,children:o(d?`createMemoryModal.creating`:`createMemoryModal.create`)})]})]})})}function ft({onOpenThread:e}){let{t:n}=T(`intelligence`),r=g(),[i,a]=(0,L.useState)(!1),o=(0,L.useRef)(null),s=C(x(r)),c=C(l(r)),u=s.data?.kind===`ready`&&c.data?.kind===`ready`,d=(0,L.useRef)(!1);return(0,L.useEffect)(()=>{d.current||(d.current=!0,z(`opened`))},[]),(0,K.jsxs)(`div`,{className:`relative flex h-full min-h-0 flex-col`,children:[(0,K.jsx)(lt,{assistantId:r,className:`h-full w-full`,onOpenThread:e,handleRef:o,headerAction:u?(0,K.jsx)(t,{variant:`primary`,size:`compact`,leftIcon:(0,K.jsx)(oe,{}),onClick:()=>a(!0),children:n(`memoryPage.createMemory`)}):void 0}),u?(0,K.jsx)(dt,{open:i,onOpenChange:a,assistantId:r,onCreated:e=>{e&&o.current?.focusNode(e)}}):null]})}function pt(){let e=te();return(0,K.jsx)(ft,{onOpenThread:t=>{z(`chat_from_node`),o(e,{prompt:t})}},g())}export{pt as MemoryPageRoute};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{AC as t,gC as n}from"./app-Qc-rYPt9.js";import{f as r}from"./vendor-DEhKVoiV.js";import{t as i,x as a}from"./react-B9IgSVeK.js";import{Ya as o}from"./icons-C0wyat6T.js";var s=o(`arrow-up-from-line`,[[`path`,{d:`m18 9-6-6-6 6`,key:`kcunyi`}],[`path`,{d:`M12 3v14`,key:`7cf3v8`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),c=e(a(),1),l=i();function u(e){if(e>=1e6){let t=e/1e6;return`${t%1==0?t.toFixed(0):t.toFixed(1)}M`}if(e>=1e3){let t=e/1e3;return`${t%1==0?t.toFixed(0):t.toFixed(1)}K`}return e.toLocaleString()}function d(e){let t=r(),[n,i]=(0,c.useState)(e),a=(0,c.useRef)(e),o=(0,c.useRef)(e),s=(0,c.useRef)(0);return(0,c.useEffect)(()=>{if(o.current=e,t){cancelAnimationFrame(s.current),s.current=0,a.current=e,i(e);return}if(a.current===e||s.current)return;let n=performance.now(),r=a.current,c=e=>{let t=o.current,l=Math.min((e-n)/300,1),u=1-(1-l)**3;a.current=l>=1?t:r+(t-r)*u,i(a.current),l<1?s.current=requestAnimationFrame(c):s.current=0};s.current=requestAnimationFrame(c)},[e,t]),(0,c.useEffect)(()=>()=>cancelAnimationFrame(s.current),[]),n}function f({icon:e,value:r,label:i,valueTitle:a}){return(0,l.jsxs)(`div`,{className:`flex items-center gap-3 rounded-lg border border-[var(--border-base)] bg-[var(--surface-overlay)] px-3 py-3`,children:[(0,l.jsx)(`div`,{className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:e}),(0,l.jsxs)(`div`,{className:`min-w-0`,children:[(0,l.jsx)(n,{variant:`title-small`,title:a||void 0,className:t(`block text-[var(--content-default)]`,a&&`-mb-1 truncate pb-1`),children:r}),(0,l.jsx)(n,{variant:`body-small-default`,className:`block text-[var(--content-secondary)]`,children:i})]})]})}function p({icon:e,label:t,target:n,format:r}){return(0,l.jsx)(f,{icon:e,label:t,value:r(d(n))})}export{s as i,f as n,u as r,p as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{lt as e}from"./app-Qc-rYPt9.js";export{e as filesFromNativePaths};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Ar as e}from"./app-Qc-rYPt9.js";export{e as saveFile};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{EC as t,Ld as n,cC as r,cc as i,cg as a,eS as o,hg as s,lS as c,mC as l,sc as u}from"./app-Qc-rYPt9.js";import{E as d,j as f,k as p}from"./vendor-DEhKVoiV.js";import{r as m,t as h,x as g}from"./react-B9IgSVeK.js";import{Ta as _,Zr as v}from"./icons-C0wyat6T.js";var y=e(g(),1),b=p(`AndroidNotificationSettings`);function x(){return a()&&d.isPluginAvailable(`AndroidNotificationSettings`)}async function S(){if(x())try{await b.open()}catch(e){c(e,{context:`android_notification_settings_open`,level:`warning`})}}var C=h();function w(){let{t:e}=f(`settings`),a=x(),[o,s]=(0,y.useState)(null);(0,y.useEffect)(()=>{u().then(s)},[]),n(`app.resume`,({signal:e})=>{e!==`online`&&i().then(s)});let c;switch(o){case`granted`:c={description:e(`androidNotificationSettingsCard.grantedDescription`),label:e(`androidNotificationSettingsCard.grantedLabel`),tone:`positive`};break;case`denied`:c={description:e(`androidNotificationSettingsCard.deniedDescription`),label:e(`androidNotificationSettingsCard.deniedLabel`),tone:`negative`};break;case`prompt`:c={description:e(`androidNotificationSettingsCard.promptDescription`),label:e(`androidNotificationSettingsCard.promptLabel`),tone:`warning`};break;case`unsupported`:c={description:e(`androidNotificationSettingsCard.unsupportedDescription`),label:e(`androidNotificationSettingsCard.unsupportedLabel`),tone:`neutral`};break;default:c={description:e(`androidNotificationSettingsCard.checkingDescription`),label:e(`androidNotificationSettingsCard.checkingLabel`),tone:`neutral`};break}return(0,C.jsx)(l,{padding:`lg`,children:(0,C.jsxs)(`div`,{className:`flex flex-col gap-5 sm:flex-row sm:items-center sm:justify-between`,children:[(0,C.jsxs)(`div`,{className:`flex min-w-0 items-start gap-4`,children:[(0,C.jsx)(`span`,{className:`flex size-11 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-base)] text-[var(--content-secondary)]`,children:(0,C.jsx)(_,{className:`size-5`,"aria-hidden":!0})}),(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,C.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`androidNotificationSettingsCard.title`)}),(0,C.jsx)(r,{tone:c.tone,children:c.label})]}),(0,C.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:c.description})]})]}),a&&(0,C.jsx)(t,{variant:`outlined`,onClick:()=>void S(),disabled:o===null,rightIcon:(0,C.jsx)(v,{"aria-hidden":!0}),className:`self-start sm:self-auto`,children:e(`androidNotificationSettingsCard.openSettings`)})]})})}function T(){let{t:e}=f(`settings`);return s()?(0,C.jsxs)(`div`,{className:`mx-auto w-full max-w-2xl space-y-6`,children:[(0,C.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,C.jsx)(`span`,{className:`flex size-10 shrink-0 items-center justify-center rounded-xl bg-[var(--surface-lift)] text-[var(--content-secondary)]`,children:(0,C.jsx)(_,{className:`size-5`,"aria-hidden":!0})}),(0,C.jsxs)(`div`,{className:`min-w-0`,children:[(0,C.jsx)(`h1`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:e(`notificationsPage.title`)}),(0,C.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-secondary)]`,children:e(`notificationsPage.description`)})]})]}),(0,C.jsx)(w,{})]}):(0,C.jsx)(m,{replace:!0,to:o.settings.general})}export{T as NotificationsPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{eg as e}from"./app-Qc-rYPt9.js";export{e as resolvePairedAssistantPlatformId};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{eS as e}from"./app-Qc-rYPt9.js";import{r as t,t as n}from"./react-B9IgSVeK.js";var r=n();function i(){return(0,r.jsx)(t,{to:e.account.login,replace:!0})}export{i as PasswordResetPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Fn as e,ar as t,sr as n}from"./app-Qc-rYPt9.js";import{t as r}from"./react-B9IgSVeK.js";import{t as i}from"./preview-error-DB2rjYvO.js";var a=r();function o({blob:r,filename:o}){let s=t(r,`application/pdf`);return s===null?(0,a.jsx)(n,{}):(0,a.jsx)(`span`,{className:`block w-full [&_[data-slot=skeleton]]:w-full! [&_canvas]:w-full!`,children:(0,a.jsx)(e,{url:s,errorFallback:(0,a.jsx)(i,{filename:o})})})}export{o as PdfFilePreview};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{AC as t,Ca as n,Is as r,Oh as i,Sa as a,Ws as o,ba as s,eS as c,nt as l,qS as u}from"./app-Qc-rYPt9.js";import{Gt as d,Ht as f,I as p,Qn as m,Wt as h,j as g,tr as _}from"./vendor-DEhKVoiV.js";import{f as v,t as y,x as b}from"./react-B9IgSVeK.js";import{$ as x,za as S}from"./icons-C0wyat6T.js";import{i as C,n as w,r as T,t as E}from"./personality-sliders-Dehyaji_.js";import{n as D,t as O}from"./peeking-eyes-B3XMFLXD.js";import{a as k,i as A,n as j,r as M,t as N}from"./use-assistant-identity-details-CrWNdPFJ.js";import{r as P}from"./latest-assistant-text-DFGZImdA.js";var F=e(b(),1),I=y();function L({components:e,traits:t,stage:n,entrance:r=!1,entranceDelay:i=0}){let o=(0,F.useMemo)(()=>{let n=e.eyeStyles.find(e=>e.id===t.eyeStyle);return n?{paths:n.paths,bbox:a(n.paths.map(e=>s(e.svgPath)))}:null},[e,t.eyeStyle]);return o?(0,I.jsx)(D,{art:o,stage:n,entrance:r,entranceDelay:i}):null}var R=`#17191C`,z=24,B=.2,V=96,H=160,U=(0,F.createContext)(null);function W(){let e=(0,F.useContext)(U);if(!e)throw Error(`useAssistantStage must be used inside <AssistantStage>`);return e}function G({components:e,traits:i,customImageUrl:a,accentHex:s,entrance:c=!1,children:l,className:u}){let{ref:d,size:f}=n(),p=s??R,m=o(p),h=r.use.setSurface();(0,F.useLayoutEffect)(()=>(h(p),()=>{h(null)}),[p,h]);let g=!!(e&&i),_=!g&&!!a,v=Math.round(Math.min(H,Math.max(V,Math.min(f.w,f.h)*B))),y=f.h-v-z,b=g?Math.round(O*Math.min(f.w,f.h))+16:_?v+z+16:24;return(0,I.jsxs)(`div`,{ref:d,className:t(`relative flex min-h-0 flex-1 flex-col overflow-hidden rounded-lg border border-[var(--border-base)]`,`native-mobile:rounded-none native-mobile:border-0`,u),style:{backgroundColor:p,color:m.fg},children:[g&&e&&i&&(0,I.jsx)(L,{components:e,traits:i,stage:f,entrance:c}),_&&a&&(0,I.jsx)(`div`,{"aria-hidden":`true`,className:`pointer-events-none absolute z-[2] overflow-hidden rounded-full ring-4 ring-white/25`,style:{left:(f.w-v)/2,top:y,width:v,height:v},children:(0,I.jsx)(`img`,{src:a,alt:``,className:`h-full w-full object-cover`,draggable:!1})}),(0,I.jsx)(U.Provider,{value:{stage:f,tone:m,bottomReserve:b},children:(0,I.jsx)(`div`,{className:`relative z-10 flex min-h-0 flex-1 flex-col`,children:l})})]})}var K=`rgba(36, 41, 46, 0.25)`,q=`#FDFDFC`;function J({axis:e,value:t,onValueChange:n,tone:r,disabled:i}){let{t:a}=g(`intelligence`),o=a(e.leftKey),s=a(e.rightKey);return(0,I.jsxs)(`div`,{className:`flex w-full shrink-0 flex-wrap items-center gap-x-5 gap-y-1.5 sm:flex-nowrap`,style:{opacity:i?.7:1},children:[(0,I.jsx)(`span`,{className:`order-1 flex-1 text-left text-sm sm:w-32 sm:flex-none sm:text-right sm:text-[17px]`,style:{color:r.fg},children:o}),(0,I.jsx)(`span`,{className:`order-2 flex-1 text-right text-sm sm:order-3 sm:w-32 sm:flex-none sm:text-left sm:text-[17px]`,style:{color:r.fg},children:s}),(0,I.jsxs)(f,{"data-owns-horizontal-drag":``,className:`relative order-3 flex h-6 w-full touch-none items-center select-none sm:order-2 sm:w-auto sm:flex-1`,value:[t],onValueChange:e=>n(e[0]??k),disabled:i,min:0,max:100,step:1,"aria-label":a(`personalitySliderRow.rangeAriaLabel`,{left:o,right:s}),children:[(0,I.jsx)(d,{className:`relative h-2 w-full grow rounded-full sm:h-3`,style:{backgroundColor:K}}),(0,I.jsx)(h,{className:`block h-5 w-5 cursor-grab rounded-full shadow-sm transition-transform active:scale-95 active:cursor-grabbing keyboard-focus:outline-none keyboard-focus:ring-2 keyboard-focus:ring-white/70 data-[disabled]:cursor-not-allowed data-[disabled]:active:scale-100 sm:h-6 sm:w-6`,style:{backgroundColor:q}})]})]})}async function Y({assistantId:e,values:t,assistantName:n}){return M({assistantId:e,content:P(t,void 0,n),title:p(`applyPersonalityUpdate.conversationTitle`,{ns:`intelligence`}),context:`identity_personality_update`})}function X(){let{t:e}=g(`intelligence`),t=l(),n=v(),r=_(),{components:a,traits:o,customImageUrl:s,accentHex:d}=i(t),f=j(t),p=m({queryKey:T(t),queryFn:()=>w(t)}),[h,y]=(0,F.useState)(null),[b,x]=(0,F.useState)(!1),S=h??p.data??{},D=f.data?.identity?.name||e(`identityOverview.defaultAssistantName`);return(0,I.jsx)(G,{components:a,traits:o,customImageUrl:s,accentHex:d,entrance:!0,children:(0,I.jsx)(Z,{assistantName:D,values:S,onValueChange:(e,t)=>y({...S,[e]:t}),applying:b,onUpdate:()=>{x(!0);let i=E(S);Y({assistantId:t,values:i,assistantName:f.data?.identity?.name}).then(async a=>{x(!1),a?(await C(t,i),r.invalidateQueries({queryKey:T(t)}),r.invalidateQueries({queryKey:N(t)}),u.success(e(`personalityPage.updateSuccessToast`)),n(c.identity)):u.error(e(`personalityPage.updateErrorToast`))})},onBack:()=>void n(c.identity)})})}function Z({assistantName:e,values:t,onValueChange:n,applying:r,onUpdate:i,onBack:a}){let{t:o}=g(`intelligence`),{tone:s,bottomReserve:c}=W();return(0,I.jsxs)(I.Fragment,{children:[(0,I.jsxs)(`button`,{type:`button`,onClick:a,className:`absolute top-4 left-4 z-20 flex cursor-pointer items-center gap-1.5 rounded-full py-2 pr-4 pl-3 text-body-medium-default backdrop-blur-sm transition-all duration-150 active:scale-[0.97] ${s.isLight?`bg-black/10 hover:bg-black/20`:`bg-white/10 hover:bg-white/20`}`,style:{color:s.fg},children:[(0,I.jsx)(S,{className:`h-4 w-4`,"aria-hidden":!0}),o(`personalityPage.back`)]}),(0,I.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col items-center overflow-y-auto px-6`,style:{paddingBottom:c},children:[(0,I.jsx)(`div`,{className:`w-full min-h-14 shrink-[4]`,style:{flexBasis:`12%`}}),(0,I.jsxs)(`div`,{className:`flex shrink-0 flex-col items-center gap-2 text-center`,children:[(0,I.jsx)(`h1`,{className:`text-[2.6rem] leading-none max-sm:text-[2rem]`,style:{fontFamily:`var(--font-serif)`},children:o(`personalityPage.title`)}),(0,I.jsx)(`p`,{className:`max-w-md text-[15px]`,style:{color:s.fgMuted},children:o(`personalityPage.subtitle`)})]}),(0,I.jsx)(`div`,{className:`w-full min-h-3 shrink-[2] basis-10`}),(0,I.jsx)(`div`,{className:`flex w-full max-w-2xl shrink-0 flex-col`,children:A.map((e,i)=>(0,I.jsxs)(F.Fragment,{children:[i>0&&(0,I.jsx)(`div`,{className:`w-full min-h-2.5 shrink basis-8 sm:basis-11`}),(0,I.jsx)(J,{axis:e,value:t[e.id]??k,onValueChange:t=>n(e.id,t),tone:s,disabled:r})]},e.id))}),(0,I.jsx)(`div`,{className:`w-full min-h-3 shrink-[2] basis-12`}),(0,I.jsx)(`button`,{type:`button`,onClick:i,disabled:r,className:`flex min-h-11 min-w-[240px] max-w-full shrink-0 cursor-pointer items-center justify-center gap-2 rounded-[10px] px-6 py-2 text-body-medium-default transition-transform duration-150 active:scale-[0.97] disabled:cursor-default disabled:opacity-80 disabled:active:scale-100`,style:{backgroundColor:s.isLight?`#1A1A1A`:`#FFFFFF`,color:s.isLight?`#FFFFFF`:`#1A1A1A`},children:r?(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)(`div`,{className:`h-4 w-4 shrink-0 animate-spin rounded-full border-2 border-transparent`,style:{borderTopColor:s.isLight?`#FFFFFF`:`#1A1A1A`,borderRightColor:s.isLight?`#FFFFFF`:`#1A1A1A`}}),(0,I.jsx)(`span`,{className:`min-w-0 text-center`,children:o(`personalityPage.updatingPersonality`,{name:e})})]}):(0,I.jsxs)(I.Fragment,{children:[(0,I.jsx)(x,{className:`h-4 w-4`,"aria-hidden":!0}),o(`personalityPage.updatePersonality`)]})})]})]})}export{X as PersonalityPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{EC as t,YS as n,Y_ as r,_f as i,eS as a,nt as o,qS as s}from"./app-Qc-rYPt9.js";import{Qn as c,j as l,tr as u}from"./vendor-DEhKVoiV.js";import{r as d,t as f,x as p}from"./react-B9IgSVeK.js";import{t as m}from"./detail-card-DaoCCbYV.js";import{i as h,n as g,r as _,t as v}from"./personality-sliders-Dehyaji_.js";var y=e(p(),1),b=f(),x=[{id:r.companionCoworker,leftKey:`personalityPage.axes.companionCoworker.left`,rightKey:`personalityPage.axes.companionCoworker.right`},{id:r.genzBoomer,leftKey:`personalityPage.axes.genzBoomer.left`,rightKey:`personalityPage.axes.genzBoomer.right`},{id:r.executeCollaborate,leftKey:`personalityPage.axes.executeCollaborate.left`,rightKey:`personalityPage.axes.executeCollaborate.right`},{id:r.playfulSerious,leftKey:`personalityPage.axes.playfulSerious.left`,rightKey:`personalityPage.axes.playfulSerious.right`},{id:r.politeUnfiltered,leftKey:`personalityPage.axes.politeUnfiltered.left`,rightKey:`personalityPage.axes.politeUnfiltered.right`}];function S(){let{t:e}=l(`settings`),r=o(),f=u(),p=i.use.vellumHostedInference(),S=i.use.hasHydrated(),C=c({queryKey:_(r),queryFn:()=>g(r)}),[w,T]=(0,y.useState)(null),[E,D]=(0,y.useState)(!1),O=w??C.data??{};if(S&&!p)return(0,b.jsx)(d,{replace:!0,to:a.settings.general});let k=()=>{D(!0),h(r,v(O)).then(t=>{D(!1),t?(f.invalidateQueries({queryKey:_(r)}),s.success(e(`personalityPage.saveSuccessToast`))):s.error(e(`personalityPage.saveErrorToast`))})},A=E||C.isLoading;return(0,b.jsxs)(`div`,{"data-slot":`personality-page`,className:`space-y-6`,children:[(0,b.jsx)(m,{title:e(`personalityPage.title`),subtitle:e(`personalityPage.subtitle`),children:C.isError?(0,b.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:e(`personalityPage.loadError`)}):(0,b.jsx)(`div`,{className:`flex flex-col gap-6`,children:x.map(t=>{let r=e(t.leftKey),i=e(t.rightKey);return(0,b.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,b.jsxs)(`div`,{className:`flex items-center justify-between gap-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,b.jsx)(`span`,{children:r}),(0,b.jsx)(`span`,{children:i})]}),(0,b.jsx)(n,{value:O[t.id]??50,onValueChange:e=>{typeof e==`number`&&T({...O,[t.id]:e})},min:0,max:100,step:1,disabled:A,"aria-label":e(`personalityPage.rangeAriaLabel`,{left:r,right:i})})]},t.id)})})}),(0,b.jsx)(t,{onClick:k,disabled:A||C.isError,children:e(E?`personalityPage.saving`:`personalityPage.save`)})]})}export{S as SettingsPersonalityPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{X_ as e,Y_ as t,fy as n,gy as r,mS as i}from"./app-Qc-rYPt9.js";function a(e){return[`personality-sliders`,e]}function o(e){return typeof e!=`object`||!e||Array.isArray(e)?!1:Object.values(e).every(e=>typeof e==`number`)}function s(e){return Object.fromEntries(Object.values(t).map(t=>[t,e[t]??50]))}async function c(t){let{data:r,error:a,response:s}=await n({path:{assistant_id:t},query:{path:e},throwOnError:!1});if(i(s,a,`Failed to fetch personality sliders`),s.status===404)return null;if(!s.ok||!r)throw Error(`Failed to fetch personality sliders`);let c=JSON.parse(r.content);if(!o(c))throw Error(`Personality sliders sidecar is malformed`);return c}async function l(t,n){try{let{error:a,response:o}=await r({path:{assistant_id:t},body:{path:e,content:JSON.stringify(n,null,2),encoding:`utf-8`},throwOnError:!1});return i(o,a,`Failed to save personality sliders`),o.ok}catch{return!1}}export{l as i,c as n,a as r,s as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Cy as t,EC as n,Ih as r,JS as i,Ju as a,Mm as o,Nm as s,Uy as c,WS as l,Yu as u,Yx as d,bh as f,bi as p,by as m,cC as h,eS as g,gC as _,hg as v,jm as y,nd as b,qS as x,rd as S,tS as C,td as w}from"./app-Qc-rYPt9.js";import{N as T,Qn as E,Yn as ee,j as D,tr as te}from"./vendor-DEhKVoiV.js";import{_ as ne,f as O,t as re,x as ie}from"./react-B9IgSVeK.js";import{D as k,Yn as ae,it as A,pi as oe,xr as se,za as ce,zi as j}from"./icons-C0wyat6T.js";import{A as le,B as ue,E as de,F as M,I as fe,K as pe,L as N,M as P,N as me,O as F,P as I,R as he,S as ge,U as L,W as _e,_ as ve,f as ye,g as be,h as xe,i as Se,j as Ce,k as we,n as Te,o as Ee,q as R,r as De,s as Oe,t as ke,w as Ae,z as je}from"./use-checkout-dismiss-refresh-BwT2zWIT.js";import{t as Me}from"./android-billing-handoff-C06TxyLt.js";import{t as Ne}from"./checkout-return-target-CA5-Gi7-.js";import{i as Pe,r as Fe,s as Ie,t as z}from"./machine-sizes-BWbhowrp.js";var B=e(ie(),1),V=`__none__`,H=`__baseline__`,Le=`${Pe[z]} machine (${Fe[z]})`;function Re(e){let{proPlan:t,seed:n,machineTier:r,storageTier:i,creditChoice:a,noBundleLabel:o}=e,s=t.machine_tiers,c=t.storage_tiers,l=t.credit_tiers??[],u=r===H,d=u?null:s.find(e=>e.tier===r)??null,f=u?Le:d?.description??null,p=c.find(e=>e.tier===i)??null,m=a&&a!==`__none__`?l.find(e=>e.tier===a)??null:null,h=n!=null&&n.machineTier!=null?s.find(e=>e.tier===n.machineTier)??null:null,g=n==null?null:n.machineTier??`__baseline__`,_=n==null?void 0:n.machineTier==null?Le:h?.description,v=n==null?null:c.find(e=>e.tier===n.storageTier)??null,y=n!=null&&n.creditTier!=null?l.find(e=>e.tier===n.creditTier)??null:null,b=n!=null&&n.machineTier!=null&&h==null,x=n!=null&&v==null,S=n!=null&&n.hasPlatformFee===!1,C=[{key:`base`,label:`Platform fee: ${le(t.base_price_cents)}`,changed:S}];if(f!=null){let e=n!=null&&!b&&g!==r;C.push({key:`machine`,label:f,previousLabel:e?_:void 0,changed:e})}if(p!=null){let e=n!=null&&!x&&v?.tier!==p.tier;C.push({key:`storage`,label:P(p.storage_gib),previousLabel:e&&v!=null?P(v.storage_gib):void 0,changed:e})}let w=a===`__none__`?o:m==null?null:m.label;if(w!=null){let e=n!=null&&(n.creditTier??`__none__`)!==a,t=n?.creditTier==null?o:y?.label;C.push({key:`credit`,label:w,previousLabel:e?t:void 0,changed:e})}let T=t.base_price_cents+(d?.price_cents??0)+(p?.price_cents??0)+(m?.price_cents??0),E=b||x||n!=null&&n.creditTier!=null&&y==null;if(n==null||E)return{totalCents:T,previousTotalCents:null,deltaCents:null,rows:C};let ee=(S?0:t.base_price_cents)+(h?.price_cents??0)+(v?.price_cents??0)+(y?.price_cents??0);return{totalCents:T,previousTotalCents:ee,deltaCents:T-ee,rows:C}}var ze=`https://www.vellum.ai/docs/pricing`,Be=`${ze}#machine-sizes`,Ve=`${ze}#storage`,He=`${ze}#credit-bundles`,U=re();function W(e){return(0,U.jsxs)(`span`,{className:`text-[12px] font-medium text-[var(--content-disabled)]`,children:[`+`,le(e)]})}function G({label:e,docsUrl:t,docsLabel:n,learnMore:r}){return(0,U.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,U.jsx)(`span`,{className:`text-[11px] font-medium text-[var(--content-secondary)]`,children:e}),(0,U.jsx)(m,{href:t,"aria-label":n,tone:`quiet`,glyph:!1,className:`text-[11px] font-medium text-[var(--content-tertiary)]`,children:r})]})}function Ue({open:e,proPlan:t,pending:r,currentStorageGib:a,initialSelection:o,onClose:s,onContinue:c}){let{t:u}=D(`settings`),d=u(`customPlanModal.noExtraUsage`),f=e?o??null:null,[p,m]=(0,B.useState)(()=>f?f.machineTier??`__baseline__`:``),[h,g]=(0,B.useState)(()=>f?.storageTier??``),[_,v]=(0,B.useState)(()=>f?f.creditTier??`__none__`:``),[y,b]=(0,B.useState)({open:e,initialSelection:o});(y.open!==e||y.initialSelection!==o)&&(b({open:e,initialSelection:o}),m(f?f.machineTier??`__baseline__`:``),g(f?.storageTier??``),v(f?f.creditTier??`__none__`:``));let x=t.machine_tiers,S=(0,B.useMemo)(()=>t.storage_tiers.filter(e=>!e.legacy||e.tier===o?.storageTier),[t.storage_tiers,o?.storageTier]),C=t.credit_tiers??[],w=(0,B.useMemo)(()=>(t.credit_tiers??[]).filter(e=>!e.legacy),[t.credit_tiers]),T=e=>ge(e)||e.legacy&&e.tier!==o?.storageTier||a!=null&&e.storage_gib<a,E=o!=null&&o.machineTier==null,ee=[...E?[{value:H,label:Le,icon:(0,U.jsx)(R,{className:`h-4 w-4`,"aria-hidden":!0}),disabled:!0}]:[],...x.map(e=>({value:e.tier,label:e.description,icon:(0,U.jsx)(R,{className:`h-4 w-4`,"aria-hidden":!0}),suffix:W(e.price_cents),disabled:ge(e)}))],te=S.map(e=>({value:e.tier,label:e.label,icon:(0,U.jsx)(se,{className:`h-4 w-4`,"aria-hidden":!0}),suffix:W(e.price_cents),disabled:T(e)})),ne=_&&_!==`__none__`?C.find(e=>e.tier===_)??null:null,O=ne?.legacy?ne:null,re=[{value:V,label:d,icon:(0,U.jsx)(oe,{className:`h-4 w-4`,"aria-hidden":!0})},...w.map(e=>({value:e.tier,label:e.label,icon:(0,U.jsx)(oe,{className:`h-4 w-4`,"aria-hidden":!0}),suffix:W(e.price_cents)})),...O?[{value:O.tier,label:O.label,icon:(0,U.jsx)(oe,{className:`h-4 w-4`,"aria-hidden":!0}),suffix:W(O.price_cents),disabled:!0}]:[]],ie=p===H,k=ie?null:x.find(e=>e.tier===p)??null,ae=ie?E?{tier:null}:null:k==null?null:{tier:k.tier},ce=h!==``&&h===o?.storageTier,ue=S.find(e=>e.tier===h&&(ce||!T(e)))??null,de=_===`__none__`||_===o?.creditTier||w.some(e=>e.tier===_),M=_!==``&&de?_:null,fe=ae!=null&&ue!=null&&M!=null,pe=o!=null&&o.hasPlatformFee!==!1&&p===(o.machineTier??`__baseline__`)&&h===o.storageTier&&_===(o.creditTier??`__none__`),N=(0,B.useMemo)(()=>Re({proPlan:t,seed:o??null,machineTier:p,storageTier:h,creditChoice:_,noBundleLabel:d}),[t,o,p,h,_,d]);return(0,U.jsx)(i.Root,{open:e,onOpenChange:e=>{e||s()},children:(0,U.jsx)(i.Content,{size:`lg`,"data-theme":`light`,hideCloseButton:!0,overlayClassName:`backdrop-blur-[2px]`,className:`max-w-[820px] md:min-h-[min(608px,calc(100vh-4rem))]`,children:(0,U.jsx)(i.Body,{className:`p-4`,children:(0,U.jsxs)(`div`,{className:`flex flex-col gap-8 md:flex-row md:gap-12`,children:[(0,U.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-6 md:flex-1`,children:[(0,U.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,U.jsx)(`div`,{className:`flex shrink-0 items-center justify-center rounded-xl bg-[var(--surface-active)] p-[14px]`,children:(0,U.jsx)(A,{className:`h-6 w-6 text-[var(--content-emphasised)]`,"aria-hidden":!0})}),(0,U.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,U.jsx)(i.Title,{className:`text-[16px] font-medium text-[var(--content-emphasised)]`,children:u(`customPlanModal.title`)}),(0,U.jsx)(i.Description,{className:`mt-0 text-[14px] font-medium leading-[18px] text-[var(--content-tertiary)]`,children:u(`customPlanModal.subtitle`)})]})]}),(0,U.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,U.jsx)(G,{label:u(`customPlanModal.machineSizeLabel`),docsUrl:Be,docsLabel:u(`customPlanModal.machineSizeDocsAriaLabel`),learnMore:u(`customPlanModal.learnMore`)}),(0,U.jsx)(l,{"aria-label":u(`customPlanModal.machineSizeAriaLabel`),placeholder:u(`customPlanModal.machineSizePlaceholder`),value:p,onChange:m,options:ee})]}),(0,U.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,U.jsx)(G,{label:u(`customPlanModal.storageLabel`),docsUrl:Ve,docsLabel:u(`customPlanModal.storageDocsAriaLabel`),learnMore:u(`customPlanModal.learnMore`)}),(0,U.jsx)(l,{"aria-label":u(`customPlanModal.storageAriaLabel`),placeholder:u(`customPlanModal.storagePlaceholder`),value:h,onChange:g,options:te})]}),(0,U.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,U.jsx)(G,{label:u(`customPlanModal.usageBundleLabel`),docsUrl:He,docsLabel:u(`customPlanModal.usageBundleDocsAriaLabel`),learnMore:u(`customPlanModal.learnMore`)}),(0,U.jsx)(l,{"aria-label":u(`customPlanModal.usageBundleAriaLabel`),placeholder:u(`customPlanModal.usageBundlePlaceholder`),value:_,onChange:v,options:re})]})]}),(0,U.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-16 md:pt-[5px]`,children:[(0,U.jsx)(`span`,{className:`text-[16px] font-medium text-[var(--content-emphasised)]`,children:u(`customPlanModal.recap`)}),(0,U.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,U.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,U.jsx)(`span`,{className:`text-[24px] font-medium text-[var(--content-default)]`,children:le(N.totalCents)}),N.deltaCents!=null&&N.deltaCents!==0&&N.previousTotalCents!=null&&(0,U.jsx)(`span`,{className:`text-[12px] font-medium ${N.deltaCents>0?`text-[var(--system-positive-strong)]`:`text-[var(--system-negative-strong)]`}`,children:u(`customPlanModal.comparedToPrevious`,{delta:F(N.deltaCents),previous:we(N.previousTotalCents)})}),(0,U.jsx)(`span`,{className:`text-[11px] font-medium text-[var(--content-tertiary)]`,children:u(`customPlanModal.totalBilledMonthly`)})]}),(0,U.jsx)(`div`,{className:`h-px w-full bg-[var(--border-hover)]`}),(0,U.jsx)(`span`,{className:`text-[12px] font-medium text-[var(--content-tertiary)]`,children:u(`customPlanModal.yourSelection`)}),(0,U.jsx)(`ul`,{className:`flex flex-col gap-2`,children:N.rows.map(e=>(0,U.jsxs)(`li`,{className:`flex flex-col gap-2`,children:[e.previousLabel!=null&&(0,U.jsxs)(`div`,{className:`relative flex w-fit items-start gap-2`,children:[(0,U.jsx)(j,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-disabled)]`,"aria-hidden":!0}),(0,U.jsx)(`s`,{className:`text-[14px] font-medium leading-[18px] text-[var(--content-disabled)] no-underline`,children:e.previousLabel}),(0,U.jsx)(`span`,{"aria-hidden":!0,className:`pointer-events-none absolute -left-1 right-0 top-[9px] h-px bg-[var(--content-disabled)]`})]}),(0,U.jsxs)(`div`,{className:`flex items-start gap-2`,children:[(0,U.jsx)(j,{className:`mt-0.5 h-4 w-4 shrink-0 ${e.changed?`text-[var(--system-positive-strong)]`:`text-[var(--content-secondary)]`}`,"aria-hidden":!0}),(0,U.jsx)(`span`,{className:`text-[14px] font-medium leading-[18px] text-[var(--content-secondary)]`,children:e.label})]})]},e.key))}),(0,U.jsx)(n,{variant:`primary`,fullWidth:!0,disabled:!fe||pe||r,onClick:()=>{!fe||pe||r||c({machineTier:ae.tier,storageTier:ue.tier,creditTier:M===`__none__`?null:M})},children:u(`customPlanModal.continue`)}),(0,U.jsx)(n,{variant:`ghost`,fullWidth:!0,disabled:r,onClick:s,children:u(`customPlanModal.cancel`)})]})]})]})})})})}function We({className:e,onConfigure:t,configureDisabled:r,isCurrent:i=!1,currentSummary:a}){let{t:o}=D(`settings`);return(0,U.jsxs)(`div`,{className:`flex w-full flex-col items-center gap-8 ${e??``}`,children:[(0,U.jsx)(`p`,{className:`text-center text-[20px] font-medium text-[var(--content-tertiary)]`,children:o(`customPlanRow.prompt`)}),(0,U.jsxs)(`div`,{className:`flex w-[840px] max-w-full flex-col items-start gap-4 rounded-2xl bg-[var(--surface-lift)] p-4 sm:flex-row sm:items-center sm:justify-between sm:gap-6`,children:[(0,U.jsxs)(`div`,{className:`flex min-w-0 items-center gap-4`,children:[(0,U.jsx)(`div`,{className:`flex shrink-0 items-center justify-center rounded-xl bg-[var(--content-disabled)] p-[14px]`,children:(0,U.jsx)(A,{className:`h-6 w-6 text-[var(--aux-white)]`,"aria-hidden":!0})}),(0,U.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,U.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,U.jsx)(`span`,{className:`text-[16px] font-medium text-[var(--content-emphasised)]`,children:o(`customPlanRow.title`)}),i?(0,U.jsx)(h,{className:`bg-[var(--feed-digest-weak)] text-[var(--content-default)]`,children:o(`customPlanRow.currentPlanTag`)}):null]}),(0,U.jsx)(`span`,{className:`text-[14px] font-medium text-[var(--content-tertiary)]`,children:a??o(`customPlanRow.genericDescriptor`)})]})]}),(0,U.jsx)(`div`,{className:`flex shrink-0 items-center gap-3`,children:(0,U.jsx)(n,{variant:`outlined`,onClick:t,disabled:r,children:o(`customPlanRow.configure`)})})]})]})}function Ge({open:e,pending:t,onCancel:n,...r}){return(0,U.jsx)(i.Root,{open:e,onOpenChange:e=>{!e&&!t&&n()},children:(0,U.jsx)(i.Content,{size:`md`,hideCloseButton:!0,children:(0,U.jsx)(Ke,{pending:t,onCancel:n,...r})})})}function Ke({lostFeatures:e,viaPortal:t,pending:r,onCancel:a,onConfirm:o}){let{t:s}=D(`settings`),c=e.length>0,[l,u]=(0,B.useState)(fe),d=t||N(l);return(0,U.jsxs)(U.Fragment,{children:[(0,U.jsx)(i.Header,{icon:k,children:(0,U.jsx)(i.Title,{children:s(`freeDowngradeConfirmModal.title`)})}),(0,U.jsxs)(i.Body,{children:[(0,U.jsx)(_,{as:`p`,variant:`body-medium-default`,className:`text-(--content-secondary)`,children:s(t?c?`freeDowngradeConfirmModal.bodyWithFeaturesPortal`:`freeDowngradeConfirmModal.bodyCancelOnlyPortal`:c?`freeDowngradeConfirmModal.bodyWithFeatures`:`freeDowngradeConfirmModal.bodyCancelOnly`)}),c?(0,U.jsx)(`ul`,{className:`mt-4 list-disc space-y-2 pl-5`,children:e.map(e=>(0,U.jsx)(`li`,{children:(0,U.jsx)(_,{as:`span`,variant:`body-medium-default`,children:e})},e))}):null,t?null:(0,U.jsx)(M,{value:l,onChange:u,disabled:r})]}),(0,U.jsxs)(i.Footer,{children:[(0,U.jsx)(n,{variant:`outlined`,onClick:a,disabled:r,children:s(`freeDowngradeConfirmModal.cancel`)}),(0,U.jsx)(n,{variant:`danger`,onClick:()=>o(l),disabled:r||!d,"data-testid":`confirm-free-downgrade-button`,children:s(`freeDowngradeConfirmModal.confirm`)})]})]})}function qe({tierKey:e,name:t,tagline:r,priceLabel:i,priceCaption:a,ctaLabel:o,features:s,recommended:c=!1,tone:l=`dark`,isCurrent:u,intent:d=`upgrade`,pending:f,onCta:p}){let{t:m}=D(`settings`),g=d===`downgrade`&&!u;return(0,U.jsxs)(`div`,{"data-theme":l,className:`flex w-full flex-col gap-3 rounded-2xl bg-[var(--surface-lift)] p-3 sm:gap-4 sm:p-4`,children:[(0,U.jsx)(I,{tier:e,size:50}),(0,U.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,U.jsxs)(`div`,{className:`flex h-8 items-center gap-2`,children:[(0,U.jsx)(`span`,{className:`text-[20px] font-medium text-[var(--content-emphasised)]`,children:t}),c&&!g&&!u?(0,U.jsx)(h,{className:`bg-[var(--feed-digest-weak)] text-[12px] font-semibold uppercase text-[var(--credits-accent)]`,children:m(`planColumnCard.recommended`)}):null]}),(0,U.jsx)(`p`,{className:`overflow-hidden text-[14px] font-medium leading-[18px] text-[var(--content-tertiary)] sm:h-9`,children:r})]}),(0,U.jsx)(`div`,{className:`h-px w-full bg-[var(--border-hover)]`}),(0,U.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,U.jsx)(`span`,{className:`text-[24px] font-medium text-[var(--content-default)]`,children:i}),(0,U.jsx)(`span`,{className:`text-[11px] font-medium text-[var(--content-tertiary)]`,children:a})]}),(0,U.jsx)(n,{variant:g?`outlined`:`primary`,fullWidth:!0,disabled:u||f,onClick:p,children:u?m(`planColumnCard.currentPlan`):o}),(0,U.jsx)(`div`,{className:`h-px w-full bg-[var(--border-hover)]`}),(0,U.jsxs)(`div`,{className:`flex flex-col gap-2 sm:gap-4`,children:[(0,U.jsx)(`span`,{className:`text-[12px] font-medium text-[var(--content-tertiary)]`,children:m(`planColumnCard.includes`)}),(0,U.jsx)(`ul`,{className:`flex flex-col gap-2`,children:s.map(e=>(0,U.jsxs)(`li`,{className:`flex items-start gap-2`,children:[(0,U.jsx)(j,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-secondary)]`,"aria-hidden":!0}),(0,U.jsx)(`span`,{className:`text-[14px] font-medium text-[var(--content-secondary)]`,children:e})]},e))})]})]})}function Je(e,t){return t(`plansPage.featureComputer`,{machine:de(e)})}function Ye(e,t,n){return[Je(e,n),n(`plansPage.featureStorage`,{gib:e.storage_gib}),n(`plansPage.featureUsage`,{name:e.name}),...t]}function Xe(e){return[e(`plansPage.freeFeatureSmallComputer`),e(`plansPage.freeFeatureStorage`,{gib:4}),e(`plansPage.freeFeaturePayAsYouGo`)]}var Ze=`#0A0A0B`,Qe=8e3,$e={upgrade:`upgrade`,downgrade:`downgrade`,switch:`change`};p();function et(e,t){return Ae(e,t).join(` · `)}function tt(){let{t:e}=D(`settings`),i=O(),[l,p]=ne(),h=te(),_=C(),re=s({platformHostedOnly:!0}),ie=y(),k=o(),A=re===`full`&&ie,oe=re===`full`&&k,se=E({...w(),enabled:A}),j=E({...a(),enabled:A}),le=ee(S()),{changePackage:de,isPending:M}=De(),{changeTiers:fe,isPending:N,current:P,currentReady:F,currentKnown:I,primaryAssistantId:ge}=Se({enabled:A});ke();let[we,R]=(0,B.useState)(!1),[Ae,Pe]=(0,B.useState)(!1),[Fe,z]=(0,B.useState)(!1),[V,H]=(0,B.useState)(null),[Le,Re]=(0,B.useState)(!1),[Be,Ve]=(0,B.useState)(void 0),He=(0,B.useRef)(!1),[W,G]=(0,B.useState)(!1),Ke=(0,B.useRef)(!1),[Je,tt]=(0,B.useState)(null),K=se.data,q=j.data?.plans.find(e=>e.id===`pro`),nt=q?.packages??[],rt=nt.length>0,J=K?.plan_id===`pro`,it=r(),at=pe(ge,A&&it&&J&&I),ot=I?at:void 0,Y=K?K.plan_id===`base`?`free`:ue(K.package)?K.package.key:null:null,{cancelSubscription:st,isPending:ct}=Ee(),lt=be(K),ut=ye(Oe(K)),dt=v(),ft=new Set(j.data?.plans.find(e=>e.id===`base`)?.included_features??[]),pt=(q?.included_features??[]).filter(e=>!ft.has(e)),X=we||M||ct||ut.isPending,mt=(0,B.useMemo)(()=>!J||P.storageTier==null?null:{machineTier:P.machineTier,storageTier:P.storageTier,creditTier:P.creditTier,hasPlatformFee:P.hasPlatformFee},[J,P.machineTier,P.storageTier,P.creditTier,P.hasPlatformFee]),Z=l.get(d),ht=!A&&!oe,gt=A&&!j.isLoading&&!rt,Q=ht||!(Z!=null&&!W)&&(se.isError||gt);(0,B.useEffect)(()=>{Q&&i(ht?g.settings.usageBilling:`${g.settings.usageBilling}&adjust_plan`,{replace:!0})},[Q,ht,i]);let _t=()=>{(window.history.state?.idx??0)>0?i(-1):i(g.settings.usageBilling)},vt=async n=>{R(!0);try{let e=await le.mutateAsync({body:{...n,return_target:Ne()}});e.status===`redirect`&&e.checkout_url?(c(n.package?{kind:`package`,packageKey:n.package}:{kind:`custom`,machineTier:n.machine_tier??null,storageTier:n.storage_tier??null,creditTier:n.credit_tier??null}),f(h),t(e.checkout_url)):(await h.invalidateQueries({queryKey:b()}),await h.invalidateQueries({queryKey:u()}))}catch(t){x.error(xe(t,e(`plansPage.checkoutFailedToast`)))}finally{R(!1)}},$=(e,t)=>{if(K&&!X){if(dt){Me(g.plans);return}if(J){if(e===`free`){z(!0);return}let n=nt.find(t=>t.key===e);if(!n||L(Y,n.key)===`current`)return;if(!ve(K)){i(`${g.settings.usageBilling}&adjust_plan`,{replace:t?.replaceOnBail===!0});return}H(n);return}e!==`free`&&vt({target_plan_id:`pro`,package:e,confirm:!0})}},yt=(0,B.useRef)($);(0,B.useEffect)(()=>{yt.current=$}),(0,B.useEffect)(()=>{if(Z==null||He.current||Q||!A||Ke.current)return;Ke.current=!0;let e=setTimeout(()=>{G(!0)},Qe),t=()=>{clearTimeout(e),G(!0)};Promise.all([h.refetchQueries({queryKey:b()}),h.refetchQueries({queryKey:u()})]).then(t,t)},[Q,Z,A,h]),(0,B.useEffect)(()=>{Z==null||He.current||Q||!A||!W||(He.current=!0,J&&Z!==`free`&&tt(Z),p(e=>{let t=new URLSearchParams(e);return t.delete(d),t},{replace:!0}))},[W,Q,Z,A,J,p]),(0,B.useEffect)(()=>{Je==null||Z!=null||(tt(null),yt.current(Je,{replaceOnBail:!0}))},[Z,Je]);let bt;if(K&&q&&rt){let t=J&&Y===null&&F&&P.storageGib!=null,n=t?et(P,q):void 0,r=async e=>{if(!lt){z(!1),ut.mutate({});return}await st(he(e))&&(z(!1),i(g.settings.usageBilling,{replace:!0}))},a=()=>({creditTier:P.creditTier,fromSnapshot:{machineSize:ot?.machine_size??null,storageGib:ot?.provisioned_storage_gib??null}}),o=V?Y===null?`switch`:L(Y,V.key)===`downgrade`?`downgrade`:`upgrade`:`upgrade`,s=async()=>{if(!V)return;let t=V,n=a(),r=Y===null||!F||!I||Ie(P.machineTier,t.machine_tier),i=await de(t.key);if(!i)return;if(H(null),i.status===`no_op`){x.success(e(`plansPage.alreadyOnPlanToast`));return}let s=t.credit_tier??null;Ve({fromSnapshot:n.fromSnapshot,credits:s===n.creditTier?null:{fromTier:n.creditTier,toTier:s},direction:$e[o],canLowerResources:r}),Re(!0)},c=e=>vt({target_plan_id:`pro`,confirm:!0,machine_tier:e.machineTier,storage_tier:e.storageTier,credit_tier:e.creditTier}),l=async t=>{let n=a(),r=!I||Ie(P.machineTier,t.machineTier),i=await fe(t,mt??void 0);i&&(Pe(!1),i.needsResize||i.creditChanged?(Ve({fromSnapshot:n.fromSnapshot,credits:i.creditChanged?{fromTier:n.creditTier,toTier:t.creditTier}:null,direction:`change`,canLowerResources:r}),Re(!0)):x.success(e(`plansPage.planUpdatedToast`)))},u=()=>{if(!X){if(dt){Me(g.plans);return}J&&!F||Pe(!0)}},d=[...nt].sort((e,t)=>je.indexOf(e.key)-je.indexOf(t.key)),f=me(`free`),p=J?`downgrade`:L(Y,`free`),h=Xe(e);bt=(0,U.jsxs)(`div`,{className:`my-auto flex w-full flex-col items-center`,children:[(0,U.jsxs)(`header`,{className:`flex flex-col items-center gap-2 text-center`,children:[(0,U.jsx)(`h1`,{className:`text-[40px] text-[var(--content-emphasised)] sm:text-[60px]`,style:{fontFamily:`var(--font-serif)`,fontWeight:400,lineHeight:1.2,letterSpacing:`1.2px`},children:e(`plansPage.heading`)}),(0,U.jsx)(`p`,{className:`text-[20px] font-medium text-[var(--content-tertiary)]`,children:e(`plansPage.subheading`)})]}),(0,U.jsxs)(`div`,{className:`mt-6 grid w-full max-w-[1312px] grid-cols-1 gap-4 sm:mt-10 sm:grid-cols-2 sm:gap-6 lg:grid-cols-4`,children:[(0,U.jsx)(qe,{tierKey:`free`,name:`Base`,tagline:f?.tagline??``,priceLabel:e(`plansPage.freePriceLabel`),priceCaption:f?.priceCaption??e(`plansPage.foreverCaption`),ctaLabel:p===`downgrade`?e(`plansPage.downgradeTo`,{name:`Base`}):f?.cta??e(`plansPage.startFreeCta`),features:h,tone:`dark`,isCurrent:Y===`free`,intent:p,pending:X,onCta:()=>$(`free`)}),d.map(t=>{let n=me(t.key),r=L(Y,t.key);return(0,U.jsx)(qe,{tierKey:t.key,name:t.name,tagline:n?.tagline??``,priceLabel:Ce(t.total_price_cents),priceCaption:n?.priceCaption??e(`plansPage.billedMonthlyCaption`),ctaLabel:r===`downgrade`?e(`plansPage.downgradeTo`,{name:t.name}):n?.cta??t.name,features:Ye(t,n?.extraFeatures??[],e),recommended:n?.recommended,tone:n?.recommended?`light`:`dark`,isCurrent:Y===t.key,intent:r,pending:X,onCta:()=>$(t.key)},t.key)})]}),(0,U.jsx)(We,{className:`mt-6 sm:mt-10`,onConfigure:u,configureDisabled:J&&!F||X,isCurrent:t,currentSummary:n}),(0,U.jsx)(Ue,{open:Ae,proPlan:q,pending:we||N,currentStorageGib:J?P.storageGib:null,initialSelection:mt,onClose:()=>Pe(!1),onContinue:e=>{J?l(e):c(e)}}),(0,U.jsx)(Te,{open:V!==null,relation:o,packageName:V?.name??``,targetPackage:V,pending:M,onCancel:()=>H(null),onConfirm:()=>void s()}),(0,U.jsx)(Ge,{open:Fe,lostFeatures:pt,viaPortal:!lt,pending:ct||ut.isPending,onCancel:()=>z(!1),onConfirm:e=>void r(e)}),(0,U.jsx)(_e,{mode:`resize`,open:Le,onClose:()=>{Re(!1),Ve(void 0)},resizeContext:Be}),(0,U.jsx)(`p`,{className:`mt-6 text-center text-[12px] font-medium text-[var(--content-tertiary)] sm:mt-10`,children:(0,U.jsx)(T,{ns:`settings`,i18nKey:`plansPage.cancelAnytimeFooter`,components:{docsLink:(0,U.jsx)(m,{href:ze,tone:`quiet`,className:`text-[var(--content-default)]`,glyph:!1})}})})]})}else bt=(0,U.jsx)(`div`,{className:`my-auto flex items-center justify-center`,children:(0,U.jsx)(ae,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`,"aria-label":e(`plansPage.loadingPlansAriaLabel`)})});return(0,U.jsxs)(`div`,{"data-theme":`dark`,className:`plans-takeover-canvas-enter relative h-full w-full overflow-y-auto`,style:{backgroundColor:Ze},children:[(0,U.jsx)(`div`,{className:`absolute left-8 z-10 [-webkit-app-region:no-drag]`,style:{top:_?`3rem`:`2rem`},children:(0,U.jsx)(n,{variant:`outlined`,leftIcon:(0,U.jsx)(ce,{className:`h-4 w-4`,"aria-hidden":!0}),onClick:_t,className:`[-webkit-app-region:no-drag]`,children:e(`plansPage.back`)})}),(0,U.jsx)(`div`,{className:`plans-takeover-content-enter flex min-h-full flex-col items-center px-4 pb-8 sm:px-6`,style:{paddingTop:_?`5rem`:`4rem`},children:bt})]})}function K(){return(0,U.jsx)(tt,{})}export{K as PlansPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{xg as e}from"./app-Qc-rYPt9.js";var t=`0.10.3`;function n(){return e(t)}export{n as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$x as t,AC as n,Ad as r,Ay as i,Dd as a,Dg as o,Dh as s,EC as c,Eh as l,Eo as u,FS as d,G as f,H as p,Ib as m,Im as h,Jh as g,Jl as _,KS as v,Lm as y,Mm as b,My as x,Nm as S,Ny as C,Od as w,Og as T,Py as E,Qg as D,To as O,Ty as k,U as A,W as ee,WS as j,Wx as te,Xd as ne,Yd as re,Yl as ie,aS as M,b_ as ae,by as oe,cC as N,cS as se,co as ce,eS as le,gg as ue,iS as P,ig as de,jm as fe,jy as pe,ky as me,mC as F,nC as I,nt as L,nv as he,oS as R,oo as ge,pC as z,qS as B,sS as V,so as _e,tC as H,wo as ve,yn as ye}from"./app-Qc-rYPt9.js";import{N as be,Qn as U,Yn as xe,j as W,tr as G}from"./vendor-DEhKVoiV.js";import{b as Se,t as Ce,x as we}from"./react-B9IgSVeK.js";import{A as K,Gi as Te,Yn as Ee,Zt as De,ft as q,i as Oe,qi as ke}from"./icons-C0wyat6T.js";import{t as J}from"./detail-card-DaoCCbYV.js";import{t as Ae}from"./setting-row-D7xTN4Nd.js";import{n as je,r as Me,t as Ne}from"./settings-divider-y1Y7piXi.js";var Y=e(we(),1),X=Ce(),Pe=[{id:`accessibility`,type:`system`,sourceKind:`accessibility`},{id:`screen`,type:`system`,sourceKind:`screen`,availableOnWindows:!0},{id:`microphone`,type:`system`,sourceKind:`microphone`,availableOnWindows:!0},{id:`speechRecognition`,type:`system`,sourceKind:`speechRecognition`,availableOnWindows:!0},{id:`notifications`,type:`system`,sourceKind:`notifications`,availableOnWindows:!0}],Fe=[{id:`notificationBadges`,type:`local`}];function Ie(e,t,n){switch(e){case`accessibility`:return{label:t(`systemPermissionsCard.accessibilityLabel`),description:t(`systemPermissionsCard.accessibilityDescription`)};case`screen`:return{label:t(`systemPermissionsCard.screenLabel`),description:t(`systemPermissionsCard.screenDescription`)};case`microphone`:return{label:t(`systemPermissionsCard.microphoneLabel`),description:t(`systemPermissionsCard.microphoneDescription`)};case`speechRecognition`:return{label:t(`systemPermissionsCard.speechRecognitionLabel`),description:t(n?`systemPermissionsCard.speechRecognitionWindowsDescription`:`systemPermissionsCard.speechRecognitionDescription`)};case`notifications`:return{label:t(`systemPermissionsCard.notificationsLabel`),description:t(n?`systemPermissionsCard.notificationsWindowsDescription`:`systemPermissionsCard.notificationsDescription`)};default:throw Error(`Unsupported system permission row: ${e}`)}}function Le(){let[e,t]=(0,Y.useState)(null);return{pendingKind:e,run:async(e,n)=>{t(e);try{await n()}catch{}finally{t(t=>t===e?null:t)}}}}function Re(){let[e,t]=(0,Y.useState)(()=>P(`dockBadgesEnabled`,!0));return(0,Y.useEffect)(()=>se(`dockBadgesEnabled`,()=>{t(P(`dockBadgesEnabled`,!0))}),[]),[e,e=>{t(e),R(`dockBadgesEnabled`,e),e||_e(0)}]}function ze({row:e,onToggle:t}){return(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,X.jsx)(H,{checked:e.checked,disabled:e.disabled,"aria-label":e.label,onChange:()=>t(e.id)}),(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`button`,{type:`button`,disabled:e.disabled,onClick:()=>t(e.id),className:n(`block w-full text-left`,e.disabled?`cursor-not-allowed`:`cursor-pointer`),children:[(0,X.jsx)(`span`,{className:`block text-[14px] font-semibold leading-[18px] text-[var(--content-emphasised)]`,children:e.label}),(0,X.jsx)(`span`,{className:`mt-1 block text-[13px] font-medium leading-[18px] text-[var(--content-tertiary)]`,children:e.description})]}),e.error&&(0,X.jsx)(`p`,{className:`mt-1 text-body-small-default text-[var(--system-negative-strong)]`,children:e.error})]})]})}function Be(){return(0,X.jsx)(`span`,{"aria-hidden":`true`,className:`h-4 w-4 animate-spin rounded-full border-2 border-[var(--border-base)] border-t-[var(--content-tertiary)]`})}function Ve({compact:e=!1}){let{t}=W(),{state:n,loading:i,error:c,supported:u,refresh:d}=r(),{pendingKind:f,run:p}=Le(),[g,_]=Re(),v=he.use.pushAvatarSender(),y=m.use.selectedAssistantId(),b=m.use.assistants(),x=h.use.user(),S=D(),C=de(),E=C===`windows`,O=(0,Y.useMemo)(()=>Pe.filter(e=>!E||e.availableOnWindows),[E]),k=(0,Y.useMemo)(()=>{let e=new Map;if(!n)return e;for(let t of O){let r=n[t.sourceKind];r&&r.status!==`not-applicable`&&e.set(t.id,{meta:t,item:r})}return e},[n,O]),A=(0,Y.useMemo)(()=>{let e=O.map(e=>{let n=k.get(e.id)?.item;if(!n)return null;let r=Ie(e.id,t,E);return{id:e.id,label:r.label,description:r.description,checked:n.status===`granted`,disabled:f===e.id||n.status===`restricted`,...n.error?{error:n.error}:{}}}).filter(Boolean),n=ge()===`taskbar icon`?t(`systemPermissionsCard.taskbarIcon`):t(`systemPermissionsCard.dockIcon`),r=ce()?Fe.map(e=>({id:e.id,label:t(`systemPermissionsCard.notificationBadgesLabel`),description:t(`systemPermissionsCard.notificationBadgesDescription`,{surface:n}),checked:g,disabled:f===e.id})):[];return[...e,...r]},[E,g,f,k,t,O]);if(!u&&A.length===0)return null;let ee=async(e,t)=>{if(t.status===`granted`||t.status===`denied`||!t.canRequest)await a(e.sourceKind);else{let t=(()=>{if(e.sourceKind!==`notifications`||C!==`macos`||!v)return;let t=b.find(e=>e.id===y),n=l(t,x?.kind===`platform`?x.id:null,S,te()??(globalThis.location===void 0?null:globalThis.location.href));if(!t||!n)return;let r=o(n,t.id,s(t));if(!r)return;let i=T(r);if(!(!i?.name||!i.avatar))return{presentation:`assistant`,identity:r,sender:{id:r.nativeSenderId,name:i.name,avatarBase64:i.avatar.avatarBase64,avatarHash:i.avatar.avatarHash}}})();t?await w(e.sourceKind,t):await w(e.sourceKind)}await d()},j=e=>{let t=k.get(e);if(t){p(e,()=>ee(t.meta,t.item));return}e===`notificationBadges`&&p(e,async()=>{_(!g)})};return(0,X.jsxs)(`section`,{className:`w-full rounded-[20px] border border-[var(--border-hover)] bg-[var(--surface-lift)] px-4 pb-3 pt-5`,children:[(0,X.jsx)(`h2`,{className:`text-[18px] font-semibold leading-[22px] text-[var(--content-emphasised)]`,children:t(`systemPermissionsCard.title`)}),i&&A.length===0?(0,X.jsxs)(`div`,{className:`mt-6 flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,X.jsx)(Be,{}),t(`systemPermissionsCard.checking`)]}):(0,X.jsx)(`div`,{className:`mt-3 space-y-2`,children:A.map(e=>(0,X.jsx)(ze,{row:e,onToggle:j},e.id))}),c&&(0,X.jsx)(`div`,{role:`alert`,className:`mt-6 rounded-md border border-[color-mix(in_srgb,var(--system-negative-strong)_25%,transparent)] bg-[var(--system-negative-weak)] p-3 text-body-medium-lighter text-[var(--content-secondary)]`,children:c})]})}var He=2**31-1;function Ue(){let{t:e}=W(`settings`),t=S({platformHostedOnly:!0}),n=fe(),r=b(),i=G(),a=m.use.activeAssistantId(),o=t===`full`&&n&&a!==null,{data:s,isLoading:l,isError:u}=U({..._({path:{id:a??``}}),enabled:o,refetchInterval:e=>{let t=e.state.data?.access_consent_expires_at;if(!e.state.data?.access_consented||!t)return!1;let n=new Date(t).getTime()-Date.now()+1e3;return Math.min(Math.max(n,1e3),He)}}),d=s?.access_consented===!0,f=d&&typeof s.access_consent_never_expires==`boolean`,p=d&&s.access_consent_never_expires===!0,h=d&&!p?s.access_consent_expires_at:null;Me(h!==null);let g=xe({mutationFn:async({assistantId:e,next:t,mode:n})=>{let{data:r}=await ae({path:{id:e},body:{access_consented:t,...n===`keepOn`?{never_expires:!0}:{}},throwOnError:!0});return r},onSuccess:(t,n)=>{ie(i,{path:{id:n.assistantId}},t),B.success(n.mode===`extend`?e(`accessConsentSetting.toastExtended`):n.mode===`keepOn`?e(`accessConsentSetting.toastKeptOn`):n.mode===`expireAgain`?e(`accessConsentSetting.toastExpiring`):t?.access_consented?e(`accessConsentSetting.toastEnabled`):e(`accessConsentSetting.toastDisabled`))},onError:()=>{B.error(e(`accessConsentSetting.toastUpdateFailed`))}});if(t===`gated`)return null;let v=t===`full`&&r,y=s?.access_consented??!1,x=t!==`full`||!n||a===null||l||u||g.isPending;return(0,X.jsxs)(`div`,{children:[(0,X.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,X.jsxs)(`div`,{className:`flex-1`,children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`accessConsentSetting.title`)}),(0,X.jsx)(`p`,{className:`mt-1 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`accessConsentSetting.description`)}),t===`full`&&u&&(0,X.jsx)(`p`,{className:`mt-1 text-body-small-lighter text-[var(--system-negative-strong)]`,children:e(`accessConsentSetting.loadError`)}),h!==null&&(0,X.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`accessConsentSetting.expiresAt`,{when:je(h)})}),(0,X.jsx)(c,{variant:`outlined`,size:`compact`,disabled:x,onClick:()=>{a&&g.mutate({assistantId:a,next:!0,mode:`extend`})},children:e(`accessConsentSetting.extend`)}),f&&(0,X.jsx)(c,{variant:`outlined`,size:`compact`,disabled:x,onClick:()=>{a&&g.mutate({assistantId:a,next:!0,mode:`keepOn`})},children:e(`accessConsentSetting.keepOn`)})]}),p&&(0,X.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2`,children:[(0,X.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`accessConsentSetting.staysOn`)}),(0,X.jsx)(c,{variant:`outlined`,size:`compact`,disabled:x,onClick:()=>{a&&g.mutate({assistantId:a,next:!0,mode:`expireAgain`})},children:e(`accessConsentSetting.expireAgain`)})]})]}),(0,X.jsx)(`div`,{className:`flex items-center gap-2`,children:t===`disabled`?null:(0,X.jsxs)(X.Fragment,{children:[(g.isPending||v)&&(0,X.jsx)(Ee,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),(0,X.jsx)(H,{checked:y,disabled:x,onChange:()=>{a&&g.mutate({assistantId:a,next:!y})}})]})})]}),t===`disabled`&&(0,X.jsx)(ye,{className:`mt-3`,children:e(`accessConsentSetting.loginNotice`)})]})}function We(){let{t:e}=W(`settings`),t=me(),n=ue(),[r,a]=(0,Y.useState)(()=>x()),[o,s]=(0,Y.useState)(null),[c,l]=(0,Y.useState)(!1);if((0,Y.useEffect)(()=>{if(!t)return;let e=!0;return pe().then(t=>{e&&s(t)}),()=>{e=!1}},[t]),!t||!o?.available)return null;let u=async()=>{l(!0);try{if(r)C(!1),await i(),a(!1);else{let e=k();if(!e||!await E(e)){C(!1),a(!1);return}C(!0),a(!0)}}finally{l(!1)}};return(0,X.jsx)(J,{title:e(`biometricSettingsCard.title`),children:(0,X.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,X.jsxs)(`div`,{className:`flex-1`,children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`biometricSettingsCard.useForSignIn`,{label:o.label})}),(0,X.jsx)(`p`,{className:`mt-1 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(n?`biometricSettingsCard.descriptionWithPasscode`:`biometricSettingsCard.description`,{label:o.label})})]}),(0,X.jsx)(H,{checked:r,onChange:()=>void u(),disabled:c})]})})}var Z=[`youtube.com`,`youtu.be`,`vimeo.com`,`loom.com`];function Ge(e){try{let t=JSON.parse(e);if(Array.isArray(t))return t.filter(e=>typeof e==`string`)}catch{}return[...Z]}function Ke(){return P(`mediaEmbedsEnabled`,!0)}function qe(){let e=M(`mediaEmbedDomains`,``);return e?Ge(e):[...Z]}function Je(){let{t:e}=W(`settings`),[t,n]=(0,Y.useState)(()=>Ke()),[r,i]=(0,Y.useState)(()=>qe()),[a,o]=(0,Y.useState)(!1),[s,l]=(0,Y.useState)(``),u=(0,Y.useMemo)(()=>s.trim().toLowerCase(),[s]),d=e=>{n(e),R(`mediaEmbedsEnabled`,e)},f=e=>{i(e),V(`mediaEmbedDomains`,JSON.stringify(e))},p=()=>{if(u){if(r.includes(u)){l(``);return}f([...r,u]),l(``)}},m=e=>{f(r.filter(t=>t!==e))},h=()=>{f([...Z])},g=r.length===Z.length&&r.every((e,t)=>e===Z[t]);return(0,X.jsxs)(J,{title:e(`mediaEmbedsCard.title`),subtitle:e(`mediaEmbedsCard.subtitle`),children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,X.jsx)(`div`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e(`mediaEmbedsCard.autoToggle`)}),(0,X.jsx)(H,{checked:t,onChange:d})]}),t&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{className:`mt-4`,children:(0,X.jsx)(Ne,{})}),(0,X.jsxs)(c,{type:`button`,variant:`ghost`,onClick:()=>o(e=>!e),className:`mt-4 w-full justify-between px-3`,"aria-expanded":a,children:[(0,X.jsxs)(`span`,{className:`flex items-center gap-2`,children:[a?(0,X.jsx)(ke,{className:`h-4 w-4`,"aria-hidden":!0}):(0,X.jsx)(Te,{className:`h-4 w-4`,"aria-hidden":!0}),e(`mediaEmbedsCard.allowlist`)]}),(0,X.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:e(`mediaEmbedsCard.domainCount`,{count:r.length})})]}),a&&(0,X.jsxs)(`div`,{className:`mt-3 space-y-3`,children:[(0,X.jsxs)(`div`,{className:`flex items-end gap-2`,children:[(0,X.jsx)(I,{label:e(`mediaEmbedsCard.addDomainLabel`),type:`text`,value:s,onChange:e=>l(e.target.value),onKeyDown:e=>{e.key===`Enter`&&(e.preventDefault(),p())},placeholder:e(`mediaEmbedsCard.addDomainPlaceholder`),fullWidth:!0,wrapperClassName:`flex-1`}),(0,X.jsx)(c,{variant:`primary`,size:`compact`,onClick:p,disabled:!u,children:e(`mediaEmbedsCard.add`)})]}),r.length>0&&(0,X.jsx)(`div`,{className:`flex justify-end`,children:(0,X.jsx)(c,{type:`button`,variant:`ghost`,size:`compact`,onClick:h,disabled:g,tintColor:`var(--content-tertiary)`,children:e(`mediaEmbedsCard.resetDefaults`)})}),r.length>0&&(0,X.jsx)(`ul`,{className:`space-y-2`,children:r.map(t=>(0,X.jsxs)(`li`,{className:`flex items-center justify-between rounded-md border border-[var(--border-base)] px-3 py-2 text-body-medium-lighter`,children:[(0,X.jsx)(`span`,{className:`font-mono text-[var(--content-default)]`,children:t}),(0,X.jsx)(c,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,X.jsx)(K,{}),onClick:()=>m(t),"aria-label":e(`mediaEmbedsCard.removeDomainAria`,{domain:t})})]},t))})]})]})]})}function Ye(){return(0,X.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`})}function Xe(){let{t:e}=W(`settings`),t=L(),n=(0,Y.useMemo)(()=>p.map(t=>({value:t.id,label:e(t.labelKey,t.label),icon:(0,X.jsx)(t.icon,{className:`h-3.5 w-3.5`})})),[e]),r=G(),{data:i,isError:a}=U({queryKey:[`thresholds`,t],queryFn:()=>ee(t),staleTime:3e4}),[o,s]=(0,Y.useState)(`relaxed`),[c,l]=(0,Y.useState)(`conservative`),[u,m]=(0,Y.useState)(`strict`),h=(0,Y.useRef)(!1),[g,_]=(0,Y.useState)(!1),v=(0,Y.useRef)(null),y=(0,Y.useRef)(null);(0,Y.useEffect)(()=>{!i||h.current||(s(A(i.interactive).id),l(A(i.autonomous).id),m(A(i.headless).id),_(!0))},[i]),(0,Y.useEffect)(()=>()=>{v.current!==null&&(clearTimeout(v.current),v.current=null,y.current?.(),y.current=null)},[]);let b=(0,Y.useCallback)((e,n,i)=>{if(!t||!g)return;let a=p.find(t=>t.id===e)?.riskThreshold,o=p.find(e=>e.id===n)?.riskThreshold,s=p.find(e=>e.id===i)?.riskThreshold;!a||!o||!s||f(t,{interactive:a,autonomous:o,headless:s}).then(()=>{r.invalidateQueries({queryKey:[`thresholds`,t]})}).catch(()=>{})},[t,g,r]),x=(0,Y.useCallback)((e,t,n)=>{v.current!==null&&clearTimeout(v.current),y.current=()=>b(e,t,n),v.current=setTimeout(()=>{y.current?.(),v.current=null,y.current=null},500)},[b]),S=(0,Y.useCallback)(e=>{h.current=!0,s(e),x(e,c,u)},[c,u,x]),C=(0,Y.useCallback)(e=>{h.current=!0,l(e),x(o,e,u)},[o,u,x]),w=(0,Y.useCallback)(e=>{h.current=!0,m(e),x(o,c,e)},[o,c,x]),T=p.find(e=>e.id===o),E=p.find(e=>e.id===c),D=p.find(e=>e.id===u),O=!t||!g;return(0,X.jsxs)(F,{children:[(0,X.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:e(`riskToleranceSettings.title`)}),(0,X.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`riskToleranceSettings.description`)}),a&&(0,X.jsx)(`p`,{className:`mt-2 text-body-small-lighter text-[var(--system-negative-strong)]`,children:e(`riskToleranceSettings.loadError`)}),(0,X.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`riskToleranceSettings.conversationsTitle`)}),(0,X.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`riskToleranceSettings.conversationsDescription`)}),(0,X.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,X.jsx)(j,{value:o,onChange:S,options:n,disabled:O})}),T&&(0,X.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:e(T.descriptionKey,T.description)})]}),(0,X.jsx)(Ye,{}),(0,X.jsxs)(d.Root,{children:[(0,X.jsx)(d.Trigger,{size:`medium`,children:e(`riskToleranceSettings.advanced`)}),(0,X.jsxs)(d.Content,{keepMounted:!0,className:`mt-4 space-y-4`,children:[(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`riskToleranceSettings.backgroundTitle`)}),(0,X.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`riskToleranceSettings.backgroundDescription`)}),(0,X.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,X.jsx)(j,{value:c,onChange:C,options:n,disabled:O})}),E&&(0,X.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:e(E.descriptionKey,E.description)})]}),(0,X.jsx)(Ye,{}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`div`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`riskToleranceSettings.headlessTitle`)}),(0,X.jsx)(`p`,{className:`mt-0.5 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`riskToleranceSettings.headlessDescription`)}),(0,X.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,X.jsx)(j,{value:u,onChange:w,options:n,disabled:O})}),D&&(0,X.jsx)(`p`,{className:`mt-2 text-body-small-default text-[var(--content-tertiary)]`,children:e(D.descriptionKey,D.description)})]})]})]})]})]})}var Q=e(Se(),1),Ze=[`bash`,`file_read`,`file_write`,`file_edit`,`web_fetch`,`skill_load`];function Qe({assistantId:e,existingRule:t,onClose:n,onSaved:r}){let{t:i}=W(`settings`),a=(0,Y.useRef)(null),[o,s]=(0,Y.useState)(t.tool),[c,l]=(0,Y.useState)(t.pattern),[d,f]=(0,Y.useState)(t.risk),[p,m]=(0,Y.useState)(t.description??``),[h,g]=(0,Y.useState)(!1),[_,v]=(0,Y.useState)(null),y=[{value:`low`,label:i(`trustRuleFormModal.riskLow`),description:i(`trustRuleFormModal.riskLowDescription`)},{value:`medium`,label:i(`trustRuleFormModal.riskMedium`),description:i(`trustRuleFormModal.riskMediumDescription`)},{value:`high`,label:i(`trustRuleFormModal.riskHigh`),description:i(`trustRuleFormModal.riskHighDescription`)}],b=c.trim(),x=b.length>0&&!h,S=i(`trustRuleFormModal.defaultDescription`,{tool:o,pattern:b||i(`trustRuleFormModal.patternFallback`)}),C=(0,Y.useCallback)(async n=>{if(n.preventDefault(),!x)return;let a=p.trim()||S;g(!0),v(null);try{await u(e,t.id,{risk:d,description:a}),r()}catch(e){v(e instanceof Error?e.message:i(`trustRuleFormModal.saveFailed`))}finally{g(!1)}},[e,x,S,p,t,r,d,i]);return(0,Q.createPortal)((0,X.jsx)(`div`,{ref:a,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`trust-rule-form-title`,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,onKeyDown:(0,Y.useCallback)(e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),n())},[n]),onClick:(0,Y.useCallback)(e=>{e.target===a.current&&n()},[n]),children:(0,X.jsxs)(`div`,{className:`mx-4 flex max-h-[calc(100vh-2rem)] w-full max-w-md flex-col rounded-xl border border-[var(--border-base)] bg-[var(--surface-lift)] shadow-xl`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[var(--border-base)] px-6 py-4`,children:[(0,X.jsx)(`h2`,{id:`trust-rule-form-title`,className:`text-title-medium text-[var(--content-default)]`,children:i(`trustRuleFormModal.title`)}),(0,X.jsx)(`button`,{type:`button`,onClick:n,"aria-label":i(`trustRuleFormModal.closeAriaLabel`),className:`rounded-lg p-1.5 text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-base)] hover:text-[var(--content-default)]`,children:(0,X.jsx)(Oe,{className:`h-4 w-4`})})]}),(0,X.jsxs)(`form`,{onSubmit:e=>void C(e),className:`min-h-0 flex-1 space-y-4 overflow-y-auto px-6 py-4`,children:[_&&(0,X.jsx)(z,{tone:`error`,children:_}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{htmlFor:`trust-rule-tool`,className:`block text-body-medium-default text-[var(--content-default)]`,children:i(`trustRuleFormModal.toolLabel`)}),(0,X.jsx)(`div`,{className:`mt-1`,children:(0,X.jsx)(j,{value:o,onChange:s,disabled:!0,options:Ze.map(e=>({value:e,label:e}))})})]}),(0,X.jsx)(I,{label:i(`trustRuleFormModal.patternLabel`),type:`text`,value:c,onChange:e=>l(e.target.value),placeholder:i(`trustRuleFormModal.patternPlaceholder`),disabled:!0}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`span`,{className:`block text-body-medium-default text-[var(--content-default)]`,children:i(`trustRuleFormModal.riskLevelLabel`)}),(0,X.jsx)(`div`,{className:`mt-2 flex gap-2`,children:y.map(e=>(0,X.jsxs)(`button`,{type:`button`,onClick:()=>f(e.value),className:`flex-1 rounded-lg border px-3 py-2 text-left text-body-small-default transition-colors ${d===e.value?e.value===`low`?`border-[var(--system-positive-strong)] bg-[var(--system-positive-weak)] text-[var(--system-positive-strong)]`:e.value===`medium`?`border-[var(--system-mid-strong)] bg-[var(--system-mid-weak)] text-[var(--system-mid-strong)]`:`border-[var(--system-negative-strong)] bg-[var(--system-negative-weak)] text-[var(--system-negative-strong)]`:`border-[var(--border-element)] text-[var(--content-default)] hover:bg-[var(--surface-base)]`}`,children:[(0,X.jsx)(`div`,{children:e.label}),(0,X.jsx)(`div`,{className:`mt-0.5 text-label-medium-default leading-tight opacity-70`,children:e.description})]},e.value))})]}),(0,X.jsx)(I,{label:i(`trustRuleFormModal.descriptionLabel`),type:`text`,value:p,onChange:e=>m(e.target.value),placeholder:S}),(0,X.jsxs)(`div`,{className:`flex justify-end gap-2 pt-2`,children:[(0,X.jsx)(`button`,{type:`button`,onClick:n,className:`rounded-lg border border-[var(--border-element)] bg-white px-4 py-2 text-body-medium-default text-[var(--content-default)] transition-colors hover:bg-[var(--surface-base)] dark:border-[var(--border-base)] dark:bg-[var(--surface-lift)] dark:hover:bg-[var(--ghost-hover)]`,children:i(`trustRuleFormModal.cancel`)}),(0,X.jsx)(`button`,{type:`submit`,disabled:!x,className:`rounded-lg bg-[var(--system-positive-strong)] px-4 py-2 text-body-medium-default text-white transition-colors hover:bg-[var(--system-positive-strong)] disabled:cursor-not-allowed disabled:opacity-50`,children:i(h?`trustRuleFormModal.saving`:`trustRuleFormModal.save`)})]})]})]})}),document.body)}function $e(e){return e.origin===`default`&&!e.userModified}function et(e,t){let n=new Set,r=[];for(let t of e)n.has(t.id)||(n.add(t.id),r.push(t));for(let e of t)n.has(e.id)||(n.add(e.id),r.push(e));return r.sort((e,t)=>e.tool===t.tool?e.description.localeCompare(t.description):e.tool.localeCompare(t.tool))}function tt(e){switch(e){case`low`:return`positive`;case`medium`:return`warning`;case`high`:return`negative`}}function nt({assistantId:e,onClose:t}){let{t:n}=W(`settings`),r=(0,Y.useRef)(null),[i,a]=(0,Y.useState)([]),[o,s]=(0,Y.useState)(!0),[l,u]=(0,Y.useState)(null),[d,f]=(0,Y.useState)(null),[p,m]=(0,Y.useState)(null),[h,g]=(0,Y.useState)(!1),_=(0,Y.useCallback)(e=>{switch(e){case`low`:return n(`trustRulesModal.riskLow`);case`medium`:return n(`trustRulesModal.riskMedium`);case`high`:return n(`trustRulesModal.riskHigh`)}},[n]),y=(0,Y.useCallback)(async t=>{if(t){let[t,n]=await Promise.all([O(e),O(e,{origin:`default`})]);return et(t,n)}return O(e)},[e]),b=(0,Y.useCallback)(async()=>{s(!0);try{a(await y(h)),u(null)}catch(e){u(e instanceof Error?e.message:n(`trustRulesModal.loadErrorFallback`))}finally{s(!1)}},[y,h,n]);(0,Y.useEffect)(()=>{let e=!1;return(async()=>{s(!0);try{let t=await y(h);e||(a(t),u(null))}catch(t){e||u(t instanceof Error?t.message:n(`trustRulesModal.loadErrorFallback`))}finally{e||s(!1)}})(),()=>{e=!0}},[y,h,n]);let x=(0,Y.useCallback)(async()=>{if(p)try{await ve(e,p.id),b()}catch(e){u(e instanceof Error?e.message:n(`trustRulesModal.deleteErrorFallback`))}finally{m(null)}},[e,p,b,n]);return(0,Q.createPortal)((0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(`div`,{ref:r,role:`dialog`,"aria-modal":`true`,"aria-labelledby":`trust-rules-title`,className:`fixed inset-0 z-50 flex items-center justify-center bg-black/50`,onKeyDown:(0,Y.useCallback)(e=>{e.key===`Escape`&&!e.defaultPrevented&&(e.preventDefault(),t())},[t]),onClick:(0,Y.useCallback)(e=>{e.target===r.current&&t()},[t]),children:(0,X.jsxs)(`div`,{className:`mx-4 flex max-h-[80vh] w-full max-w-2xl flex-col rounded-xl border border-[var(--border-base)] bg-[var(--surface-lift)] shadow-xl`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between gap-3 border-b border-[var(--border-base)] px-6 py-4`,children:[(0,X.jsx)(`h2`,{id:`trust-rules-title`,className:`text-title-medium text-[var(--content-default)]`,children:n(`trustRulesModal.title`)}),(0,X.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,X.jsx)(H,{checked:h,onChange:g,label:n(`trustRulesModal.showAllDefaults`)}),(0,X.jsx)(c,{variant:`outlined`,onClick:t,children:n(`trustRulesModal.done`)})]})]}),(0,X.jsxs)(`div`,{className:`flex-1 overflow-y-auto px-6 py-4`,children:[l&&(0,X.jsx)(`div`,{className:`mb-3`,children:(0,X.jsx)(z,{tone:`error`,children:l})}),o?(0,X.jsx)(`div`,{className:`flex h-48 items-center justify-center text-body-medium-lighter text-[var(--content-tertiary)]`,children:n(`trustRulesModal.loading`)}):i.length===0?(0,X.jsxs)(`div`,{className:`flex h-48 flex-col items-center justify-center gap-2 px-6 text-[var(--content-tertiary)]`,children:[(0,X.jsx)(q,{className:`h-8 w-8`}),(0,X.jsx)(`p`,{className:`max-w-xs text-center text-body-medium-lighter`,children:n(`trustRulesModal.empty`)})]}):(0,X.jsx)(`ul`,{className:`divide-y divide-[var(--border-base)]`,children:i.map(e=>{let t=$e(e);return(0,X.jsxs)(`li`,{className:`flex items-start gap-3 py-3`,children:[(0,X.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e.tool}),(0,X.jsx)(N,{tone:tt(e.risk),children:_(e.risk)}),e.origin===`default`&&(0,X.jsx)(N,{tone:`neutral`,children:n(`trustRulesModal.defaultTag`)}),e.userModified&&(0,X.jsx)(N,{tone:`warning`,children:n(`trustRulesModal.modifiedTag`)})]}),(0,X.jsx)(`div`,{className:`mt-1 truncate font-mono text-body-small-default text-[var(--content-secondary)]`,children:e.pattern}),e.description&&(0,X.jsx)(`div`,{className:`mt-0.5 truncate text-body-small-default text-[var(--content-tertiary)]`,children:e.description})]}),(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,X.jsx)(`button`,{type:`button`,"aria-label":n(`trustRulesModal.editRuleAria`,{tool:e.tool}),onClick:()=>f(e),className:`rounded-lg p-1.5 text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-base)] hover:text-[var(--content-default)]`,children:(0,X.jsx)(De,{className:`h-4 w-4`})}),(!t||e.userModified)&&(0,X.jsx)(c,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,X.jsx)(K,{className:`h-4 w-4`}),"aria-label":n(`trustRulesModal.deleteRuleAria`,{tool:e.tool}),onClick:()=>m(e)})]})]},e.id)})})]})]})}),d&&(0,X.jsx)(Qe,{assistantId:e,existingRule:d,onClose:()=>f(null),onSaved:()=>{f(null),b()}}),(0,X.jsx)(v,{open:p!==null,title:n(`trustRulesModal.deleteTitle`),message:p?n(`trustRulesModal.deleteMessage`,{risk:_(p.risk).toLowerCase(),tool:p.tool,pattern:p.pattern}):``,confirmLabel:n(`trustRulesModal.delete`),cancelLabel:n(`trustRulesModal.cancel`),destructive:!0,onConfirm:()=>void x(),onCancel:()=>m(null)})]}),document.body)}function rt(){let{t:e}=W(`settings`),t=L(),[n,r]=(0,Y.useState)(!1);return(0,X.jsxs)(F,{children:[(0,X.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,X.jsx)(q,{className:`mt-0.5 h-5 w-5 shrink-0 text-[var(--content-secondary)]`}),(0,X.jsxs)(`div`,{className:`flex-1`,children:[(0,X.jsx)(`h2`,{className:`text-title-medium text-[var(--content-default)]`,children:e(`trustRules.title`)}),(0,X.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`trustRules.description`)})]}),(0,X.jsx)(c,{variant:`outlined`,onClick:()=>r(!0),children:e(`trustRules.manage`)})]}),n&&(0,X.jsx)(nt,{assistantId:t,onClose:()=>r(!1)})]})}var it=[{value:`dontRetain`,labelKey:`privacyPage.retentionDontRetain`},{value:`oneHour`,labelKey:`privacyPage.retentionOneHour`},{value:`oneDay`,labelKey:`privacyPage.retentionOneDay`},{value:`sevenDays`,labelKey:`privacyPage.retentionSevenDays`},{value:`thirtyDays`,labelKey:`privacyPage.retentionThirtyDays`},{value:`ninetyDays`,labelKey:`privacyPage.retentionNinetyDays`},{value:`keepForever`,labelKey:`privacyPage.retentionKeepForever`}],at=`thirtyDays`;function $(){return(0,X.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`})}function ot(){let{t:e}=W(`settings`),n=S({platformHostedOnly:!0}),r=y(),i=r,a=h.use.user()?.id??null,[o]=re(),[s]=ne(),c=o??!0,l=s??!0,[u,d]=(0,Y.useState)(()=>M(`llmLogRetention`,at)),f=(0,Y.useMemo)(()=>it.map(t=>({value:t.value,label:e(t.labelKey)})),[e]);return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsx)(We,{}),(0,X.jsx)(Ve,{}),(0,X.jsx)(rt,{}),(0,X.jsx)(Xe,{}),(0,X.jsx)(Je,{}),(0,X.jsx)(J,{title:e(`privacyPage.title`),subtitle:r?(0,X.jsx)(be,{ns:`settings`,i18nKey:`privacyPage.subtitleWithPolicy`,components:{policyLink:(0,X.jsx)(oe,{href:t(le.docs.legal.privacyPolicy),tone:`quiet`,glyph:!1})}}):void 0,children:(0,X.jsxs)(`div`,{className:`space-y-4`,children:[i&&(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(Ae,{label:e(`privacyPage.shareAnalyticsLabel`),helperText:e(`privacyPage.shareAnalyticsHelper`),checked:c,onChange:()=>{g(`share_analytics`,!c,{userId:a,hasPlatformSession:r})},variant:`toggle-trailing`}),(0,X.jsx)($,{}),(0,X.jsx)(Ae,{label:e(`privacyPage.shareDiagnosticsLabel`),helperText:e(`privacyPage.shareDiagnosticsHelper`),checked:l,onChange:()=>{g(`share_diagnostics`,!l,{userId:a,hasPlatformSession:r})},variant:`toggle-trailing`}),(0,X.jsx)($,{})]}),(0,X.jsx)(Ue,{}),n!==`gated`&&(0,X.jsx)($,{}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`label`,{htmlFor:`llm-log-retention`,className:`block text-body-medium-default text-[var(--content-default)]`,children:e(`privacyPage.llmLogRetentionLabel`)}),(0,X.jsx)(`div`,{className:`mt-2`,style:{maxWidth:280},children:(0,X.jsx)(j,{value:u,onChange:e=>{d(e),V(`llmLogRetention`,e)},options:f})}),(0,X.jsx)(`p`,{className:`mt-2 text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`privacyPage.llmLogRetentionDescription`)})]})]})})]})}export{ot as PrivacyPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$h as t,EC as n,Im as r,N_ as i,O_ as a,Qh as o,Xh as s,Yh as c,Zh as l,eS as u,gS as d,mS as f,nC as p,oC as m,pS as h,qS as g,tu as _,zS as v}from"./app-Qc-rYPt9.js";import{N as y,Qn as b,_ as x,f as S,g as C,j as w}from"./vendor-DEhKVoiV.js";import{n as T,t as E,x as D}from"./react-B9IgSVeK.js";import{Ji as O,Ui as k,Yn as A}from"./icons-C0wyat6T.js";import{t as j}from"./detail-card-DaoCCbYV.js";var M=e(D(),1),N=c,P=`Please choose a different handle.`;async function F(e,n){let{data:r,error:a,response:o}=await i({path:{id:e},body:{handle:n},throwOnError:!1});if(!o)return{kind:`error`,message:d(a,void 0,`Failed to save handle.`)??`Failed to save handle.`};if(o.ok&&r)return{kind:`ok`,data:r};if(o.status===409){let{message:e}=t(a,`handle`,N.taken);return{kind:`taken`,message:e}}if(o.status===400){let{code:e,message:n}=t(a,`handle`,P);return{kind:`invalid`,code:e,message:n}}return{kind:`error`,message:d(a,o,`Failed to save handle.`)}}async function I(e,t,n){let{data:r,error:i,response:o}=await a({path:{assistant_id:e},query:{handle:t},signal:n,throwOnError:!1});if(f(o,i,`Failed to check handle availability.`),!o.ok||!r)throw new h(o.status,o.status===429?`Too many checks — try again in a moment.`:d(i,o,`Failed to check handle availability.`));return{available:r.available,code:r.code??null,message:r.message??null}}function L(e){return/\d{2,}$/.test(e)}var R=E(),z=300,B=1400;function V({initialHandle:e,inputLabel:t,helperText:r,idleHelperText:i,checkAvailable:a,save:o,onSaved:s,saveSuccessToast:c,fieldId:l,layout:u=`inline`}){let d=u===`modal`,{t:f}=w(),[m,h]=(0,M.useState)(e),[_,v]=(0,M.useState)(null),[y,b]=(0,M.useState)(!1),[T,E]=(0,M.useState)(`idle`),[D,j]=(0,M.useState)(null),P=S(),F=(0,M.useRef)(null),I=(0,M.useMemo)(()=>m.trim().toLowerCase(),[m]),L=I===e.toLowerCase();(0,M.useEffect)(()=>{if(L||I.length===0){b(!1),F.current?.abort();return}let e=new AbortController;F.current?.abort(),F.current=e,b(!0);let t=window.setTimeout(async()=>{try{let t=await a(I,e.signal);e.signal.aborted||v(t)}catch(t){e.signal.aborted||j(t instanceof Error?t.message:f(`profileCard.checkAvailabilityFailed`))}finally{e.signal.aborted||b(!1)}},z);return()=>{window.clearTimeout(t),e.abort()}},[I,L,a,f]);let V=(()=>{if(D)return D;if(_&&!_.available){let e=_.code;return _.message??(e?N[e]:f(`profileCard.chooseDifferentHandle`))}return null})(),H=V?r:L?i??null:y?f(`profileCard.checkingAvailability`):_?.available?f(`profileCard.availableHelper`):null,U=!L&&!y&&_?.available!==!1&&T!==`saving`,W=(0,M.useCallback)(async()=>{if(!U)return;E(`saving`),j(null);let e=await o(I);if(e.kind===`ok`){E(`saved`),s(e.data),g.success(c),window.setTimeout(()=>E(`idle`),B);return}if(e.kind===`taken`){E(`idle`),v({available:!1,code:`taken`,message:e.message});return}if(e.kind===`invalid`){E(`idle`),v({available:!1,code:e.code,message:e.message});return}E(`error`),j(e.message),g.error(e.message)},[U,I,s,o,c]),G=(()=>{if(L&&m.length>0||m.length===0)return null;let e=y?`checking`:_?.available?`available`:_?.available===!1?`invalid`:null;return e?(0,R.jsx)(x,{mode:`wait`,initial:!1,children:(0,R.jsxs)(C.span,{initial:P?!1:{opacity:0,scale:.85},animate:{opacity:1,scale:1},exit:P?void 0:{opacity:0,scale:.85},transition:{duration:.14,ease:`easeOut`},className:`flex items-center`,"aria-hidden":e!==`available`&&e!==`invalid`,children:[e===`checking`&&(0,R.jsx)(A,{className:`h-4 w-4 animate-spin text-[var(--content-tertiary)]`}),e===`available`&&(0,R.jsx)(O,{className:`h-4 w-4 text-[var(--system-positive-strong)]`,"aria-label":f(`profileCard.available`)}),e===`invalid`&&(0,R.jsx)(k,{className:`h-4 w-4 text-[var(--system-negative-strong)]`,"aria-label":f(`profileCard.notAvailable`)})]},e)}):null})(),K=(()=>{switch(T){case`saving`:return(0,R.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,R.jsx)(A,{className:`h-3.5 w-3.5 animate-spin`,"aria-hidden":!0}),f(`profileCard.saving`)]});case`saved`:return(0,R.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,R.jsx)(O,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),f(`profileCard.saved`)]});default:return f(`profileCard.save`)}})();return(0,R.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,R.jsx)(p,{label:d?void 0:t,"aria-label":d?t:void 0,value:m,onChange:e=>{h(e.target.value.replace(/\s+/g,``)),v(null),j(null)},autoCorrect:`off`,autoCapitalize:`none`,spellCheck:!1,maxLength:30,leftIcon:(0,R.jsx)(`span`,{className:`select-none font-mono text-[var(--content-tertiary)]`,"aria-hidden":!0,children:`@`}),rightIcon:G,errorText:V??void 0,helperText:H??(d?r:void 0),"aria-invalid":!!V,fullWidth:!0,"data-testid":`${l}-input`}),d?(0,R.jsx)(`div`,{className:`flex justify-end`,children:(0,R.jsx)(n,{variant:`primary`,onClick:W,disabled:!U,"aria-live":`polite`,"data-testid":`${l}-save`,children:K})}):null,!d&&(!L||T!==`idle`)&&(0,R.jsx)(`div`,{className:`flex justify-end`,children:(0,R.jsx)(n,{variant:`primary`,size:`compact`,onClick:W,disabled:!U,"aria-live":`polite`,"data-testid":`${l}-save`,children:K})})]})}function H({initial:e,onSaved:t}){let{t:n}=w(),i=r.use.refreshSession(),a=L(e.username)?n(`profileCard.userHandleIdleAutoGenerated`):void 0,c=(0,M.useCallback)(async e=>await o({username:e}),[]),l=(0,M.useCallback)((e,t)=>s(e,t),[]),u=(0,M.useCallback)(e=>{t(e),i()},[t,i]);return(0,R.jsx)(V,{initialHandle:e.username,inputLabel:n(`profileCard.userHandleLabel`),helperText:n(`profileCard.handleHelper`),idleHelperText:a,checkAvailable:l,save:c,onSaved:u,saveSuccessToast:n(`profileCard.profileUpdated`),fieldId:`user-handle`})}function U({assistant:e,onSaved:t,layout:n=`inline`}){let{t:r}=w(),i=e.handle??``,a=b({..._({path:{assistant_id:e.id}})}).data?.results?.[0],o=!!a&&a.subdomain.toLowerCase()===i.toLowerCase(),s=i.length===0?r(`profileCard.assistantHandleIdleEmpty`):void 0,c=(0,M.useCallback)(async t=>await F(e.id,t),[e.id]),l=(0,M.useCallback)((t,n)=>I(e.id,t,n),[e.id]);return o?(0,R.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,R.jsx)(p,{label:n===`modal`?void 0:r(`profileCard.assistantHandleLabel`),"aria-label":n===`modal`?r(`profileCard.assistantHandleLabel`):void 0,value:i,readOnly:!0,disabled:!0,leftIcon:(0,R.jsx)(`span`,{className:`select-none font-mono text-[var(--content-tertiary)]`,"aria-hidden":!0,children:`@`}),fullWidth:!0,"data-testid":`assistant-handle-input`}),(0,R.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:(0,R.jsx)(y,{i18nKey:`profileCard.handleLocked`,components:{releaseLink:(0,R.jsx)(T,{to:`${u.channels}?setup=email&release=1`,className:m()})}})})]}):(0,R.jsx)(V,{initialHandle:i,inputLabel:r(`profileCard.assistantHandleLabel`),helperText:r(n===`modal`?`assistantHandleModal.helper`:`profileCard.handleHelper`),idleHelperText:s,checkAvailable:l,save:c,onSaved:t,saveSuccessToast:r(`profileCard.assistantHandleUpdated`),fieldId:`assistant-handle`,layout:n})}function W(){let{t:e}=w();return(0,R.jsxs)(`div`,{className:`flex flex-col gap-4`,"aria-busy":!0,"aria-live":`polite`,children:[(0,R.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,R.jsx)(v,{className:`h-3 w-16`}),(0,R.jsx)(v,{className:`h-9 w-full rounded-md`}),(0,R.jsx)(v,{className:`h-3 w-72`})]}),(0,R.jsx)(v,{className:`h-9 w-full rounded-md`}),(0,R.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,R.jsx)(v,{className:`h-3 w-60`}),(0,R.jsx)(v,{className:`h-7 w-16 rounded-md`})]}),(0,R.jsx)(`span`,{className:`sr-only`,children:e(`profileCard.loading`)})]})}function G(){return(0,R.jsx)(`div`,{className:`border-t border-[var(--border-subtle)]`})}function K({assistant:e,showHandles:t=!0,children:n}={}){let{t:i}=w(),a=r.use.user?.()?.email??null;return(0,R.jsx)(j,{title:i(`profileCard.title`),subtitle:i(`profileCard.subtitle`),children:(0,R.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[a&&(0,R.jsx)(`div`,{className:`max-w-[420px]`,children:(0,R.jsx)(p,{label:i(`profileCard.emailLabel`),value:a,disabled:!0,readOnly:!0})}),t&&(0,R.jsxs)(R.Fragment,{children:[a&&(0,R.jsx)(G,{}),(0,R.jsx)(q,{assistant:e})]}),n!=null&&(0,R.jsxs)(R.Fragment,{children:[(a||t)&&(0,R.jsx)(G,{}),n]})]})})}function q({assistant:e}){let[t,n]=(0,M.useState)(null),[r,i]=(0,M.useState)(null),a=S(),[o,s]=(0,M.useState)(e??null);return(0,M.useEffect)(()=>{s(e??null)},[e]),(0,M.useEffect)(()=>{let e=!1;return l().then(t=>{e||n(t)}).catch(t=>{e||i(t instanceof Error?t.message:`Failed to load profile.`)}),()=>{e=!0}},[]),r?(0,R.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:r}):t?(0,R.jsxs)(C.div,{initial:a?!1:{opacity:0,y:4},animate:{opacity:1,y:0},transition:{duration:.22,ease:`easeOut`},className:`flex flex-col gap-6`,children:[(0,R.jsx)(H,{initial:t,onSaved:n}),o&&(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(`div`,{className:`border-t border-[var(--border-subtle)]`}),(0,R.jsx)(U,{assistant:o,onSaved:s})]})]}):(0,R.jsx)(W,{})}export{I as i,K as n,N as r,U as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{AC as t,EC as n,JS as r,OC as i,gC as a,kC as o,ld as s,pC as c,vy as l}from"./app-Qc-rYPt9.js";import{Qn as u,j as d}from"./vendor-DEhKVoiV.js";import{t as f,x as p}from"./react-B9IgSVeK.js";import{Ji as m,Yn as h,li as g,pi as _,y as v}from"./icons-C0wyat6T.js";var y=e(p(),1),b=f();function x(e){return e.replace(/\.00$/,``)}function S({icon:e,value:t,label:n}){return(0,b.jsxs)(`div`,{className:`flex h-8 min-w-0 flex-1 items-center gap-1.5 rounded-lg bg-[var(--surface-base)] px-2 py-1.5`,children:[(0,b.jsx)(`span`,{"aria-hidden":`true`,className:`flex h-3.5 w-3.5 shrink-0 items-center justify-center text-[var(--content-default)]`,children:e}),(0,b.jsx)(a,{variant:`body-medium-default`,as:`span`,className:`text-[var(--content-default)]`,children:t}),(0,b.jsx)(a,{variant:`body-small-default`,as:`span`,className:`min-w-0 truncate text-[var(--content-tertiary)]`,children:n})]})}function C(){let{t:e}=d(),{data:r,isLoading:f,isError:p}=u(s()),{copy:C,copied:w}=l({successMessage:e(`referralContent.copySuccess`),errorMessage:e(`referralContent.copyError`)}),T=r?.is_eligible_for_credits===!1,E=o(),D=(0,y.useId)(),O=r?e(`referralContent.subtitleWithAmounts`,{creditAmount:x(r.referrer_credit_amount),earningCap:x(r.earning_cap)}):e(`referralContent.subtitleDefault`),k=r?(0,b.jsx)(n,{variant:`outlined`,className:t(`shrink-0`,T&&`pointer-events-none`),disabled:T,"aria-describedby":T?D:void 0,onClick:()=>C(r.referral_url),leftIcon:w?(0,b.jsx)(m,{className:`h-3.5 w-3.5`}):(0,b.jsx)(g,{className:`h-3.5 w-3.5`}),"data-testid":`referral-copy-button`,children:e(w?`referralContent.copied`:`referralContent.shareLink`)}):null;return(0,b.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,b.jsx)(a,{as:`p`,variant:`body-medium-default`,className:`text-[var(--content-tertiary)]`,children:O}),f?(0,b.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,b.jsx)(h,{className:`h-4 w-4 animate-spin`}),e(`referralContent.loading`)]}):p||!r?(0,b.jsx)(c,{tone:`error`,children:e(`referralContent.loadError`)}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(`div`,{className:`flex flex-wrap items-start gap-2`,children:[(0,b.jsx)(S,{icon:(0,b.jsx)(_,{className:`h-3.5 w-3.5`}),value:x(r.total_earned),label:e(`referralContent.creditsEarned`)}),(0,b.jsx)(S,{icon:(0,b.jsx)(v,{className:`h-3.5 w-3.5`}),value:r.referred_count,label:e(`referralContent.friendsReferred`)}),T?(0,b.jsx)(i,{content:e(`referralContent.gatedTooltip`),children:(0,b.jsx)(`span`,{tabIndex:E?0:void 0,className:`inline-flex shrink-0 rounded-lg focus:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:k})}):k]}),T&&(0,b.jsx)(a,{as:`p`,id:D,variant:`body-small-default`,className:E?`sr-only`:`text-[var(--content-tertiary)]`,children:e(`referralContent.gatedTooltip`)})]})]})}function w({open:e,onOpenChange:t}){let{t:n}=d();return(0,b.jsx)(r.Root,{open:e,onOpenChange:t,children:(0,b.jsxs)(r.Content,{"data-testid":`referral-modal`,children:[(0,b.jsx)(r.Header,{children:(0,b.jsx)(r.Title,{children:n(`referralModal.title`)})}),(0,b.jsx)(r.Body,{children:(0,b.jsx)(C,{})})]})})}export{w as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./referral-modal-Bd_Bwh5m.js";export{e as ReferralModal};
|