@mycadet/web 0.12.7 → 0.12.8
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-Dy_-_EJu.js → a2a-invite-S74k5mzP.js} +1 -1
- package/dist/assets/{about-page-BIJfjthi.js → about-page-DyXvah3b.js} +1 -1
- package/dist/assets/{account-page-BGhpxkdO.js → account-page-Bto5XueR.js} +1 -1
- package/dist/assets/{account-shell-C16ZEkR-.js → account-shell-CcrYy1Gi.js} +1 -1
- package/dist/assets/{acp-run-detail-panel-LJIVIPVX.js → acp-run-detail-panel-6rMAmeGf.js} +3 -3
- package/dist/assets/activation-list-route-DEc7Nydy.js +1 -0
- package/dist/assets/{activity-redirect-page-DgjUj4JW.js → activity-redirect-page-Fj-SvRGq.js} +1 -1
- package/dist/assets/{activity-steps-panel-BJsU5yRo.js → activity-steps-panel-CPMerTsn.js} +1 -1
- package/dist/assets/add-credits-modal-DD_BJhmr.js +1 -0
- package/dist/assets/{add-credits-modal-VxmEbPrZ.js → add-credits-modal-zPPHPAJC.js} +1 -1
- package/dist/assets/ai-page-DpOLL1Cf.js +1 -0
- package/dist/assets/all-chats-page-route-C-XHiLQy.js +1 -0
- package/dist/assets/{android-billing-handoff-C7UYsPiM.js → android-billing-handoff-DKLezn_S.js} +1 -1
- package/dist/assets/{animated-stat-square-DMsQUXPs.js → animated-stat-square-BU2cZ2yE.js} +1 -1
- package/dist/assets/{api-key-screen-C6g7k9c2.js → api-key-screen-DjKTR4Wr.js} +1 -1
- package/dist/assets/app-CGffgaON.js +401 -0
- package/dist/assets/{app-info-CLuEVQl-.js → app-info-Dzir1MF3.js} +1 -1
- package/dist/assets/archive-redirect-page-B35h0qMl.js +1 -0
- package/dist/assets/assistant-handle-modal-CCjfVewp.js +1 -0
- package/dist/assets/assistant-inbox-page-route-gDwC5zAt.js +8 -0
- package/dist/assets/{assistant-status-panel-C8N9hzMO.js → assistant-status-panel-B4KyLsgX.js} +1 -1
- package/dist/assets/auth-store-BVApYFfc.js +1 -0
- package/dist/assets/{auth-welcome-screen-B8aQmTIq.js → auth-welcome-screen-D3ES6d_K.js} +1 -1
- package/dist/assets/avatar-bundled-components-Drkl7JyC.js +1 -0
- package/dist/assets/avatar-random-GdFF3KT1.js +1 -0
- package/dist/assets/{await-org-header-settled-DJeX3ijn.js → await-org-header-settled-B8OULI5x.js} +1 -1
- package/dist/assets/background-task-detail-panel-D-gfV8cA.js +1 -0
- package/dist/assets/billing-page-DpBwQzdt.js +3 -0
- package/dist/assets/{billing-redirect-page-DYXZdQ52.js → billing-redirect-page-eAiiFN78.js} +1 -1
- package/dist/assets/bookmarks-page-CSlXo0sR.js +1 -0
- package/dist/assets/{bundle-confirm-page-CImMlQsd.js → bundle-confirm-page-Bcm9pKNZ.js} +1 -1
- package/dist/assets/camera-capture-overlay-BF2ncbf2.js +1 -0
- package/dist/assets/channel-transcript-panel-DPuZkTwm.js +1 -0
- package/dist/assets/{channels-sEfiHxRS.js → channels-C72WFU3d.js} +1 -1
- package/dist/assets/{channels-C18A3Iw6.js → channels-CbCJT0ZB.js} +1 -1
- package/dist/assets/{channels-sGi9IEhE.js → channels-D-bIT7yY.js} +1 -1
- package/dist/assets/{channels-D4i2mR2R.js → channels-Di5zRCeZ.js} +1 -1
- package/dist/assets/channels-page-route-Cny62l_j.js +1 -0
- package/dist/assets/{chat-ue8nDBE0.js → chat-DIpP7Ral.js} +1 -1
- package/dist/assets/{chat-DtCHoDDd.js → chat-Fwu9E2dv.js} +1 -1
- package/dist/assets/{chat-NNaM8MVU.js → chat-iVufWu4u.js} +1 -1
- package/dist/assets/chat-info-panel-D17faG13.js +1 -0
- package/dist/assets/{chat-BdJJuvUD.js → chat-tE54oJur.js} +1 -1
- package/dist/assets/{checkout-continuation-C165OlOR.js → checkout-continuation-7dEznmik.js} +1 -1
- package/dist/assets/{checkout-page-Cl3gKX5M.js → checkout-page-p7LdgQze.js} +1 -1
- package/dist/assets/checkout-return-target-CSJF-o8i.js +1 -0
- package/dist/assets/cloud-export-97vA7Pm2.js +1 -0
- package/dist/assets/cloud-loopback-page-D2BotkZe.js +1 -0
- package/dist/assets/command-palette-2v-4uw_p.js +1 -0
- package/dist/assets/{command-palette-C5-1ScXi.js → command-palette-BT_juy2T.js} +1 -1
- package/dist/assets/command-palette-window-page-BEOnIIIB.js +1 -0
- package/dist/assets/{common-B2OzMKuu.js → common-0XkPqpqK.js} +1 -1
- package/dist/assets/{common-BRcIoHdX.js → common-CdtDaW_F.js} +1 -1
- package/dist/assets/{common-BcylES0w.js → common-Clg2Dw3n.js} +1 -1
- package/dist/assets/{community-page-D4gW9H0b.js → community-page-DSFCzNlP.js} +1 -1
- package/dist/assets/{companion-accent-DeN7YIfl.js → companion-accent-BnQ_HHAs.js} +1 -1
- package/dist/assets/{companion-dock-zones-page-CC3en_w0.js → companion-dock-zones-page-Cwk-m5lx.js} +1 -1
- package/dist/assets/{companion-layout-C4onEUYK.js → companion-layout-C8BAml92.js} +1 -1
- package/dist/assets/{companion-popover-BY9dsTkK.js → companion-popover-9C2r1GyG.js} +1 -1
- package/dist/assets/{companion-popover-page-DtttiULS.js → companion-popover-page-Slqq_QRZ.js} +1 -1
- package/dist/assets/companion-surface-2FTY6hzz.js +1 -0
- package/dist/assets/companion-surface-page-BCDuCzpC.js +1 -0
- package/dist/assets/{companion-tour-entry-DMe04oGv.js → companion-tour-entry-BdZ_ZZY5.js} +1 -1
- package/dist/assets/{companion-watch-frame-page-Vyo7Qhrs.js → companion-watch-frame-page-BXLCktNV.js} +1 -1
- package/dist/assets/connect-page-DqXNWB3e.js +1 -0
- package/dist/assets/{consent-controls-ChXAokI4.js → consent-controls-VUQpPjpF.js} +1 -1
- package/dist/assets/contacts-gateway-M0SEA0Ls.js +1 -0
- package/dist/assets/contacts-page-route-ciiisSbk.js +1 -0
- package/dist/assets/{copy-button-VtuhId4f.js → copy-button-06ZBxF-g.js} +1 -1
- package/dist/assets/{credential-entry-page-CSMf6-gH.js → credential-entry-page-CZTFQmW3.js} +1 -1
- package/dist/assets/credentials-page-bcb6LbyX.js +1 -0
- package/dist/assets/csv-preview-B8vxTOAh.js +1 -0
- package/dist/assets/danger-zone-redirect-page-C-53yyHV.js +1 -0
- package/dist/assets/debug-page-2DthUX8Q.js +4 -0
- package/dist/assets/deploy-dialogs-BXmWQL7g.js +1 -0
- package/dist/assets/deploy-dialogs-CaZCOLcW.js +1 -0
- package/dist/assets/{desktop-preview-content-0PPPJXKb.js → desktop-preview-content-Bx5_gQqm.js} +2 -2
- package/dist/assets/{desktop-status-LMVnpw_i.js → desktop-status-L9sA78zU.js} +1 -1
- package/dist/assets/{desktop-viewer-BvmmSS3q.js → desktop-viewer-Gsp9ciNF.js} +2 -2
- package/dist/assets/{detail-card-6rKFaFAS.js → detail-card-DXYh92lS.js} +1 -1
- package/dist/assets/{detail-panel-stop-button-EtbIbCMU.js → detail-panel-stop-button-JQH92FSa.js} +1 -1
- package/dist/assets/{detail-primitives-DYFVgm7V.js → detail-primitives-PCZSBjkS.js} +1 -1
- package/dist/assets/developer-page-f8SdDLWI.js +1 -0
- package/dist/assets/devices-redirect-page-rOcV02dL.js +1 -0
- package/dist/assets/{dictation-overlay-page-Dk4SF30D.js → dictation-overlay-page-BPYJcuF5.js} +1 -1
- package/dist/assets/{document-load-Dg7AFxco.js → document-load-Cx6SmMsX.js} +1 -1
- package/dist/assets/document-load-dMbILFST.js +1 -0
- package/dist/assets/document-viewer-page-buw3L7Qh.js +1 -0
- package/dist/assets/{emails-page-CdWuX5e8.js → emails-page-CRcIGJMH.js} +1 -1
- package/dist/assets/esm-3p9EjCxv.js +1 -0
- package/dist/assets/esm-81hjkY91.js +2 -0
- package/dist/assets/{esm-Dd2zUPvj.js → esm-B7eDjVec.js} +1 -1
- package/dist/assets/esm-Bg5pAsee.js +2 -0
- package/dist/assets/{esm-lj_-qzY6.js → esm-Bo2YRP0H.js} +2 -2
- package/dist/assets/esm-CFXydoBW.js +1 -0
- package/dist/assets/{esm-CAnWEw9F.js → esm-OhpYdKED.js} +1 -1
- package/dist/assets/esm-Qn-Ugt7M.js +2 -0
- package/dist/assets/esm-p-XTJuu2.js +2 -0
- package/dist/assets/esm-zzDLmzCb.js +2 -0
- package/dist/assets/{file-diff-view-DMPBN50t.js → file-diff-view-BPGy665x.js} +1 -1
- package/dist/assets/{file-view-mode-Cjq3b9c7.js → file-view-mode-BjICMrIT.js} +2 -2
- package/dist/assets/general-page-CtS_CU7C.js +2 -0
- package/dist/assets/hatching-screen-SRp857Tl.js +1 -0
- package/dist/assets/hosting-screen-BBK1bOi2.js +1 -0
- package/dist/assets/identity-page-route-BjuOZBNC.js +7 -0
- package/dist/assets/inspect-page-yQXS977E.js +8 -0
- package/dist/assets/integrations-page-8saNghxG.js +1 -0
- package/dist/assets/intelligence-layout-C4fUSmw1.js +1 -0
- package/dist/assets/intelligence-layout-slots-store-CdCFMdty.js +1 -0
- package/dist/assets/keyboard-shortcuts-redirect-page-6vmXYM08.js +1 -0
- package/dist/assets/{latest-assistant-text-NX8b-PTU.js → latest-assistant-text-Dp8nFLYg.js} +1 -1
- package/dist/assets/{library-detail-page-ydt47xy5.js → library-detail-page-BHsng9gW.js} +1 -1
- package/dist/assets/{library-page-CuR1I6_u.js → library-page-EGcuUr9r.js} +1 -1
- package/dist/assets/login-page-CjFFBEfP.js +1 -0
- package/dist/assets/logout-page-CTk1D8H1.js +1 -0
- package/dist/assets/logs-layout-DcUsHX4i.js +1 -0
- package/dist/assets/{markdown-preview-DZxeW7zP.js → markdown-preview-BVK8h-Vm.js} +1 -1
- package/dist/assets/{media-preview-XLlQ1U25.js → media-preview-DMvBX4tR.js} +1 -1
- package/dist/assets/memory-page-route-DmcTly3j.js +2 -0
- package/dist/assets/{memory-router-playground-page-DdqpfMXX.js → memory-router-playground-page-BKIKjicw.js} +1 -1
- package/dist/assets/{message-files-panel-HmSeOj-c.js → message-files-panel-ffUSMnCt.js} +1 -1
- package/dist/assets/mutation-error-oXzAul2s.js +1 -0
- package/dist/assets/native-attachment-pickers-D94Qe9-T.js +1 -0
- package/dist/assets/native-file-BAJbUfaG.js +1 -0
- package/dist/assets/{notifications-page-BTVuLqLX.js → notifications-page-uL-24dgJ.js} +1 -1
- package/dist/assets/{oauth-complete-page-B1U_lIbS.js → oauth-complete-page-CeSrrc5l.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-CKl1xiuA.js → oauth-popup-complete-page-B2YWDBhK.js} +1 -1
- package/dist/assets/paired-cloud-identity-B45tIpgK.js +1 -0
- package/dist/assets/pairing-page-BKpPzHgF.js +1 -0
- package/dist/assets/password-reset-page-B9xxvNOh.js +1 -0
- package/dist/assets/{pdf-file-preview-BjwxYlB0.js → pdf-file-preview-yZHctfTY.js} +1 -1
- package/dist/assets/{peeking-eyes-iuHxzGZA.js → peeking-eyes-CYWm-sDJ.js} +1 -1
- package/dist/assets/{permission-guide-page-CNoNoSR3.js → permission-guide-page-BiIbMRw2.js} +1 -1
- package/dist/assets/{permission-setup-aNFAgq7H.js → permission-setup-C3D0R4tU.js} +1 -1
- package/dist/assets/{personality-page-BJ0W1gTK.js → personality-page-B0t7PCzh.js} +1 -1
- package/dist/assets/{personality-page-BTQWpq-E.js → personality-page-C9zAoDC4.js} +1 -1
- package/dist/assets/{personality-sliders-ZBDf-Baw.js → personality-sliders-Cz11kvVy.js} +1 -1
- package/dist/assets/plans-page-Cyy_VAfs.js +1 -0
- package/dist/assets/plugin-detail-page-MHjzhIjU.js +1 -0
- package/dist/assets/{plugins-page-D0PHx5_k.js → plugins-page-CGd4eA0h.js} +1 -1
- package/dist/assets/plugins-surface-CxIHR2Dv.js +1 -0
- package/dist/assets/{preview-error-BVZTE_Gq.js → preview-error-B_SkKxgl.js} +1 -1
- package/dist/assets/privacy-page-BH7VrzNO.js +1 -0
- package/dist/assets/privacy-screen-DRUImDBf.js +1 -0
- package/dist/assets/profile-card-eeDPrAqN.js +1 -0
- package/dist/assets/provider-callback-page-C25nZdj2.js +1 -0
- package/dist/assets/{provider-key-ac0GCyQW.js → provider-key-DCXewaJg.js} +1 -1
- package/dist/assets/{provider-signup-page-DGmdVrLa.js → provider-signup-page-BFYxSU4D.js} +1 -1
- package/dist/assets/{provisioning-targets-CQDeumSG.js → provisioning-targets-DKc5ORwj.js} +1 -1
- package/dist/assets/{quick-input-page-C4Iw_XJg.js → quick-input-page-BWyYCc6N.js} +1 -1
- package/dist/assets/{rehype-katex-Tw37BDOZ.js → rehype-katex-CzhvmWzz.js} +1 -1
- package/dist/assets/{research-mock-page-BnPVD3II.js → research-mock-page-DT6p-Af5.js} +1 -1
- package/dist/assets/research-onboarding-route-B3KTgEuk.js +50 -0
- package/dist/assets/review-terms-screen-CBbhXbba.js +1 -0
- package/dist/assets/routes-D5cM5I_f.js +1 -0
- package/dist/assets/schedules-BklxG5oV.js +1 -0
- package/dist/assets/schedules-page-D_2A6U2f.js +1 -0
- package/dist/assets/security-redirect-page-424yJDDE.js +1 -0
- package/dist/assets/select-assistant-screen-B2waFR5c.js +1 -0
- package/dist/assets/{self-hosted-servers-BfhtAs6X.js → self-hosted-servers-Du7ejILs.js} +1 -1
- package/dist/assets/service-form-controls-BzzepR1w.js +1 -0
- package/dist/assets/{setting-row-BP3qssay.js → setting-row-Har-4ZuZ.js} +1 -1
- package/dist/assets/settings-BHi3Ex7d.js +5 -0
- package/dist/assets/settings-CsVOMHUb.js +5 -0
- package/dist/assets/settings-DZXnR1wA.js +5 -0
- package/dist/assets/settings-DiShwji2.js +5 -0
- package/dist/assets/settings-divider-fXUzEDBM.js +1 -0
- package/dist/assets/{settings-layout-Br7UDHeY.js → settings-layout-Bh6Tfq82.js} +1 -1
- package/dist/assets/share-feedback-modal-B12QCt5f.js +1 -0
- package/dist/assets/share-feedback-modal-q27kCbAf.js +2 -0
- package/dist/assets/{sidebar-tree-HQg9GmqO.js → sidebar-tree-DpyD-Fdr.js} +1 -1
- package/dist/assets/{signup-page-CugeXM02.js → signup-page-B2QNQ-OW.js} +1 -1
- package/dist/assets/{signup-shell-ys4gi58w.js → signup-shell-BJfIr9N8.js} +1 -1
- package/dist/assets/{skill-detail-page-DBAq5Bn0.js → skill-detail-page-DWc5Pj07.js} +2 -2
- package/dist/assets/skill-detail-panel-DOpFqxJk.js +1 -0
- package/dist/assets/{skill-removal-dialog-1pTs7_fK.js → skill-removal-dialog-B-Hb8zf4.js} +1 -1
- package/dist/assets/{skills-page-ByRkByh4.js → skills-page-COVvjwYi.js} +1 -1
- package/dist/assets/{sounds-page-BqH9NcU1.js → sounds-page-DB5YcVc4.js} +1 -1
- package/dist/assets/{start-screen-QdPolVqs.js → start-screen-FL2Ia1Ar.js} +1 -1
- package/dist/assets/{step-detail-header-BuPH_i5-.js → step-detail-header-CuTbSKtU.js} +1 -1
- package/dist/assets/stt-language-picker-modal-BjXK4fmX.js +1 -0
- package/dist/assets/subagent-detail-panel-DLgSr_E8.js +1 -0
- package/dist/assets/superpowers-page-CscgKzE0.js +1 -0
- package/dist/assets/{system-events-page-BT1OLy4k.js → system-events-page-CNdWB8DB.js} +1 -1
- package/dist/assets/system-events-redirect-page-CRcNF9hG.js +1 -0
- package/dist/assets/{tabular-grid-OOn2S_C5.js → tabular-grid-CejyLbWr.js} +1 -1
- package/dist/assets/{teleport-gateway-client-CbFuQSt0.js → teleport-gateway-client-CnEsY6jD.js} +1 -1
- package/dist/assets/{text-preview-sXXhDNUX.js → text-preview-CNTf9DBr.js} +1 -1
- package/dist/assets/{theme-stage-page-D5R8P8hx.js → theme-stage-page-CYKLJ4g7.js} +1 -1
- package/dist/assets/{tiptap-document-editor-DJxCQreS.js → tiptap-document-editor-B7WZaMjw.js} +2 -2
- package/dist/assets/tool-detail-panel-DlHI8dvX.js +16 -0
- package/dist/assets/tool-detail-panel-uk4Ie38C.js +1 -0
- package/dist/assets/{trait-cycle-row-CptuY2rL.js → trait-cycle-row-BctewJVE.js} +1 -1
- package/dist/assets/upgrade-cancel-page-jDoqH3zX.js +1 -0
- package/dist/assets/upgrade-success-page-CaUf2wkq.js +1 -0
- package/dist/assets/{usage-redirect-page-BWdqE2yR.js → usage-redirect-page-BAgziC1P.js} +1 -1
- package/dist/assets/use-app-delete-DeDK3zNm.js +1 -0
- package/dist/assets/use-assistant-identity-details-Ku8Yexur.js +1 -0
- package/dist/assets/use-channel-trust-floors-Dw7093F3.js +1 -0
- package/dist/assets/use-checkout-dismiss-refresh-D-DceYdb.js +1 -0
- package/dist/assets/{use-edge-swipe-back-CtH4IJQV.js → use-edge-swipe-back-C9BhPjNd.js} +1 -1
- package/dist/assets/{use-hotkey-recorder-TqrRpvTU.js → use-hotkey-recorder-CaKGUrs_.js} +1 -1
- package/dist/assets/{use-invite-link-dialog-BIai7wEJ.js → use-invite-link-dialog-DwZSXJdy.js} +1 -1
- package/dist/assets/{use-plugins-list-BEHmXwlp.js → use-plugins-list-PsghpbJo.js} +1 -1
- package/dist/assets/use-return-to-short-circuit-oXJVLQ5r.js +1 -0
- package/dist/assets/{use-side-list-room-BJ5IwZkh.js → use-side-list-room-BPMo-0-m.js} +1 -1
- package/dist/assets/{use-skill-actions-D98yjthR.js → use-skill-actions-DdykFGoL.js} +1 -1
- package/dist/assets/use-skill-detail-files-Cx9IY9kI.js +1 -0
- package/dist/assets/use-supports-credentials-settings-CaBKQ60M.js +1 -0
- package/dist/assets/{use-truncated-blob-text-CAbJEijr.js → use-truncated-blob-text-D16QRG1n.js} +1 -1
- package/dist/assets/{vendor-D-45vVY0.js → vendor-CezcraPH.js} +2 -2
- package/dist/assets/voice-page-DUXZHnnu.js +1 -0
- package/dist/assets/{wake-detail-panel--GpIl1Pf.js → wake-detail-panel-qrpIcnpA.js} +1 -1
- package/dist/assets/{weather-forecast-display-Dozuotk6.js → weather-forecast-display-Bjrjg54J.js} +1 -1
- package/dist/assets/{web-DyQHXFg3.js → web-BA_SEIKY.js} +1 -1
- package/dist/assets/{web-DPM50-rm.js → web-BGBSTUE5.js} +1 -1
- package/dist/assets/{web-DIwvBx1l.js → web-BOoSclHV.js} +1 -1
- package/dist/assets/{web-BuDXNMls.js → web-Cnoc-36d.js} +1 -1
- package/dist/assets/{web-MgDBcJz1.js → web-D36IPmll.js} +1 -1
- package/dist/assets/{web-CqZ4lPzV.js → web-DaDJItvE.js} +1 -1
- package/dist/assets/{web-GduBYCpB.js → web-GjGo6RCY.js} +1 -1
- package/dist/assets/{web-Bm6v7mdW.js → web-ZoqYnuKe.js} +1 -1
- package/dist/assets/{web-WDOUgeol.js → web-mirSqNWL.js} +1 -1
- package/dist/assets/welcome-screen-C-7GbST1.js +1 -0
- package/dist/assets/{workflow-detail-panel-DnKvBE9t.js → workflow-detail-panel-BAeI7O0P.js} +1 -1
- package/dist/assets/workspace-page-WKaE0JcI.js +1 -0
- package/dist/assets/{xlsx-preview-nQSldHCi.js → xlsx-preview-HzWjwDAj.js} +1 -1
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/dist/assets/activation-list-route-DsNAUaWs.js +0 -1
- package/dist/assets/add-credits-modal-BbRv34X8.js +0 -1
- package/dist/assets/ai-page-CXPC9t0F.js +0 -1
- package/dist/assets/all-chats-page-route-CXfMd547.js +0 -1
- package/dist/assets/app-CPkqAi_4.js +0 -401
- package/dist/assets/archive-redirect-page-BipIW_n7.js +0 -1
- package/dist/assets/assistant-handle-modal-BkIX52b6.js +0 -1
- package/dist/assets/assistant-inbox-page-route-gy60plfi.js +0 -8
- package/dist/assets/auth-store-c6dqzt4x.js +0 -1
- package/dist/assets/avatar-bundled-components-C7heB9xP.js +0 -1
- package/dist/assets/avatar-random-B8fJqzb-.js +0 -2
- package/dist/assets/background-task-detail-panel-Cu72J5mx.js +0 -1
- package/dist/assets/billing-page-CgQpnTUo.js +0 -3
- package/dist/assets/bookmarks-page-pO4mLMfc.js +0 -1
- package/dist/assets/camera-capture-overlay-CzsGEOve.js +0 -1
- package/dist/assets/channel-transcript-panel-DaBGSuMi.js +0 -1
- package/dist/assets/channels-page-route-DNtLd_hv.js +0 -1
- package/dist/assets/chat-info-panel-Cp0StHk_.js +0 -1
- package/dist/assets/checkout-return-target-BskCWo4q.js +0 -1
- package/dist/assets/command-palette-DQxkn194.js +0 -1
- package/dist/assets/command-palette-window-page-Bm2eduH2.js +0 -1
- package/dist/assets/companion-surface-page-DqFzY5ai.js +0 -1
- package/dist/assets/companion-surface-s_z14fFe.js +0 -1
- package/dist/assets/connect-page-Bqqeu7px.js +0 -1
- package/dist/assets/contacts-gateway-CjXsMIf5.js +0 -1
- package/dist/assets/contacts-page-route-jhQ6zm79.js +0 -1
- package/dist/assets/credentials-page-CFEC74Wl.js +0 -1
- package/dist/assets/csv-preview-BYaPBX5Y.js +0 -1
- package/dist/assets/danger-zone-redirect-page-nDGkxOH5.js +0 -1
- package/dist/assets/debug-page-BgsSPZYq.js +0 -4
- package/dist/assets/deploy-dialogs-CGCI-YQR.js +0 -1
- package/dist/assets/deploy-dialogs-TtlGsmui.js +0 -1
- package/dist/assets/developer-page-DvF8-ZqQ.js +0 -1
- package/dist/assets/devices-redirect-page-DPj7rsiz.js +0 -1
- package/dist/assets/document-load-bHqC_QnQ.js +0 -1
- package/dist/assets/document-viewer-page-02YOTCJb.js +0 -1
- package/dist/assets/esm-Ba0eCQsV.js +0 -2
- package/dist/assets/esm-Br-MT6II.js +0 -2
- package/dist/assets/esm-Bz1DsDh-.js +0 -2
- package/dist/assets/esm-DIMIqvli.js +0 -2
- package/dist/assets/esm-Mv3KtaQ6.js +0 -1
- package/dist/assets/esm-dvAliocw.js +0 -1
- package/dist/assets/esm-xz6_eoYC.js +0 -2
- package/dist/assets/general-page-B3LWDnII.js +0 -2
- package/dist/assets/hatching-screen-Bz1rVnuU.js +0 -1
- package/dist/assets/hosting-screen-DjelWQN4.js +0 -1
- package/dist/assets/identity-page-route-Bfit3ZAL.js +0 -7
- package/dist/assets/inspect-page-DrzPnXTu.js +0 -8
- package/dist/assets/integrations-page-D1jUq3jA.js +0 -1
- package/dist/assets/intelligence-layout-D-ux-wB-.js +0 -1
- package/dist/assets/intelligence-layout-slots-store-CG-bJbCv.js +0 -1
- package/dist/assets/keyboard-shortcuts-redirect-page-Hc4YzlJe.js +0 -1
- package/dist/assets/local-mode-jIpWvO_O.js +0 -1
- package/dist/assets/login-page-BDZCTowZ.js +0 -1
- package/dist/assets/logout-page-C92xzZ-e.js +0 -1
- package/dist/assets/logs-layout-P9r4D1NB.js +0 -1
- package/dist/assets/managed-export-gcnDno7p.js +0 -1
- package/dist/assets/memory-page-route-BSnGfHWx.js +0 -2
- package/dist/assets/mutation-error-B0xRAwtR.js +0 -1
- package/dist/assets/native-attachment-pickers-BCXzpwWi.js +0 -1
- package/dist/assets/native-file-sedyTNMI.js +0 -1
- package/dist/assets/paired-platform-identity-DVaKRZrM.js +0 -1
- package/dist/assets/pairing-page-CRV8b0I5.js +0 -1
- package/dist/assets/password-reset-page-BWEjhNyR.js +0 -1
- package/dist/assets/plans-page-hRm6v6LW.js +0 -1
- package/dist/assets/platform-loopback-page-DZ6HYIt6.js +0 -1
- package/dist/assets/plugin-detail-page-C7Nvkx9h.js +0 -1
- package/dist/assets/plugins-surface-DlAulnxS.js +0 -1
- package/dist/assets/privacy-page-CENU2Slx.js +0 -1
- package/dist/assets/privacy-screen-BhfsBIN1.js +0 -1
- package/dist/assets/profile-card-CS9g1deW.js +0 -1
- package/dist/assets/provider-callback-page-C2Tcz390.js +0 -1
- package/dist/assets/research-onboarding-route-BzkZiS-h.js +0 -50
- package/dist/assets/review-terms-screen-FqiYdY0P.js +0 -1
- package/dist/assets/routes-DmeNA6If.js +0 -1
- package/dist/assets/schedules-_0jiWipo.js +0 -1
- package/dist/assets/schedules-page-YYRCjsPX.js +0 -1
- package/dist/assets/security-redirect-page-DrztWSNp.js +0 -1
- package/dist/assets/select-assistant-screen-CHRyv7xW.js +0 -1
- package/dist/assets/service-form-controls-DEbGvmzt.js +0 -1
- package/dist/assets/settings-B6KQ8dfx.js +0 -5
- package/dist/assets/settings-BiE94ezQ.js +0 -5
- package/dist/assets/settings-Chcj3AOF.js +0 -5
- package/dist/assets/settings-divider-B756HDoF.js +0 -1
- package/dist/assets/settings-pGxTqXuM.js +0 -5
- package/dist/assets/share-feedback-modal-D0yLvDE-.js +0 -1
- package/dist/assets/share-feedback-modal-D3cwFoqQ.js +0 -2
- package/dist/assets/skill-detail-panel-Drwq4W_A.js +0 -1
- package/dist/assets/stt-language-picker-modal-DBimk9bU.js +0 -1
- package/dist/assets/subagent-detail-panel-DBV1nIEq.js +0 -1
- package/dist/assets/superpowers-page-Cyjc104e.js +0 -1
- package/dist/assets/system-events-redirect-page-Bn1Mlmrx.js +0 -1
- package/dist/assets/tool-detail-panel-C2W_9tyR.js +0 -16
- package/dist/assets/tool-detail-panel-CCaS1KuN.js +0 -1
- package/dist/assets/upgrade-cancel-page-CZcjnTkF.js +0 -1
- package/dist/assets/upgrade-success-page-DOWiDkOG.js +0 -1
- package/dist/assets/use-app-delete-DsCLfjVk.js +0 -1
- package/dist/assets/use-assistant-identity-details-DWDjVqbF.js +0 -1
- package/dist/assets/use-channel-trust-floors-BpA8XrEX.js +0 -1
- package/dist/assets/use-checkout-dismiss-refresh-AAMt1w79.js +0 -1
- package/dist/assets/use-return-to-short-circuit-CEjprwJ6.js +0 -1
- package/dist/assets/use-skill-detail-files-XJ3Mq-uM.js +0 -1
- package/dist/assets/use-supports-credentials-settings-5kwj4xAE.js +0 -1
- package/dist/assets/voice-page-BLDxl5d8.js +0 -1
- package/dist/assets/welcome-screen-8lsoSWQi.js +0 -1
- package/dist/assets/workspace-page-gxt87pPu.js +0 -1
- /package/dist/assets/{account-MJjOug_m.js → account-9ifOctCs.js} +0 -0
- /package/dist/assets/{account-u8ssGyAD.js → account-C59_ZVEY.js} +0 -0
- /package/dist/assets/{account-hi01tHTN.js → account-CnqVfERR.js} +0 -0
- /package/dist/assets/{account-BrkDQ2EC.js → account-DVdolNcP.js} +0 -0
- /package/dist/assets/{activation-C60mWyf6.js → activation-C91KPzrh.js} +0 -0
- /package/dist/assets/{activation-CaYos65l.js → activation-Dd7eAIHs.js} +0 -0
- /package/dist/assets/{activation-Bu-fuIiq.js → activation-ReimSfhn.js} +0 -0
- /package/dist/assets/{activation-tasks-CpU4QWIJ.js → activation-tasks-CcT0Rqfx.js} +0 -0
- /package/dist/assets/{activation-tasks-LyVhtkqv.js → activation-tasks-CjUCWfbQ.js} +0 -0
- /package/dist/assets/{activation-nBeJqOMa.js → activation-tasks-rViOqW7C.js} +0 -0
- /package/dist/assets/{activation-tasks-6iX4PrEF.js → activation-tasks-wtMwJ0EV.js} +0 -0
- /package/dist/assets/{activation-tasks-D057dozu.js → activation-yoBQ36AY.js} +0 -0
- /package/dist/assets/{app-types-D4ttHTjj.js → app-types-DLSc4FO-.js} +0 -0
- /package/dist/assets/{assistant-inbox-BjveeFJS.js → assistant-inbox-CAvCHzi9.js} +0 -0
- /package/dist/assets/{assistant-inbox-Bc1eriLy.js → assistant-inbox-CQdSXLLi.js} +0 -0
- /package/dist/assets/{assistant-inbox-CjlA9ExA.js → assistant-inbox-DslyrhIn.js} +0 -0
- /package/dist/assets/{assistant-inbox-DZEctkiU.js → assistant-inbox-qWeVmA1L.js} +0 -0
- /package/dist/assets/{build.umd-BQNORWVu.js → build.umd-B0ATW5UM.js} +0 -0
- /package/dist/assets/{common-DVvO5aE9.js → common-DFAGeqca.js} +0 -0
- /package/dist/assets/{contacts-BcjP6yTq.js → contacts-BTmOfEVL.js} +0 -0
- /package/dist/assets/{contacts-DwPTzNNu.js → contacts-Cxz-DyYF.js} +0 -0
- /package/dist/assets/{contacts-B-21ZJz4.js → contacts-DgC-8PHB.js} +0 -0
- /package/dist/assets/{contacts-atF1S3IK.js → contacts-mijLgegD.js} +0 -0
- /package/dist/assets/{credential-requests-AF-aeT3D.js → credential-requests-CmFaXPwz.js} +0 -0
- /package/dist/assets/{credential-requests-CwIA8bBS.js → credential-requests-D3J3i5oa.js} +0 -0
- /package/dist/assets/{credential-requests-Z5RDxt8x.js → credential-requests-gl4lfjL4.js} +0 -0
- /package/dist/assets/{credential-requests-D1YLTxiK.js → credential-requests-h908NRpv.js} +0 -0
- /package/dist/assets/{definitions-DOIX6IPo.js → definitions-BUCExH-9.js} +0 -0
- /package/dist/assets/{definitions-Bqz3c8F6.js → definitions-DpZNNWA7.js} +0 -0
- /package/dist/assets/{diff-rows-K13N_h7I.js → diff-rows-DD2i4Iv8.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-CbgEbTGg.js → emoji-catalog-data-jMbpElmp.js} +0 -0
- /package/dist/assets/{format-countdown-DCe32PhB.js → format-countdown-jXi9FZ2J.js} +0 -0
- /package/dist/assets/{format-file-size-BLcTYLUV.js → format-file-size-zh148z6P.js} +0 -0
- /package/dist/assets/{home-fLFytpjt.js → home-BI-fzzA0.js} +0 -0
- /package/dist/assets/{home-BDUOreXL.js → home-BZGFmZ0D.js} +0 -0
- /package/dist/assets/{home-X7gNxY7e.js → home-CM9kRnjx.js} +0 -0
- /package/dist/assets/{home-BEjkPdJp.js → home-D4Knhe9B.js} +0 -0
- /package/dist/assets/{intelligence-CQpR434Z.js → intelligence-BzXuH7C3.js} +0 -0
- /package/dist/assets/{intelligence-DyBrOJ0A.js → intelligence-CRQIvpoS.js} +0 -0
- /package/dist/assets/{intelligence-BidrWQpj.js → intelligence-D6JLt55y.js} +0 -0
- /package/dist/assets/{intelligence-DC4uazgZ.js → intelligence-EUWmzIF9.js} +0 -0
- /package/dist/assets/{is-record-LnKkvLTP.js → is-record-VoZP3nYK.js} +0 -0
- /package/dist/assets/{jszip.min-c5TAu4nn.js → jszip.min-4SBnqRxq.js} +0 -0
- /package/dist/assets/{library-DqG1EtL5.js → library-B5UBdwOv.js} +0 -0
- /package/dist/assets/{library-teunjgKo.js → library-CGTnSkcA.js} +0 -0
- /package/dist/assets/{library-4geYyJ8S.js → library-DEPrqINm.js} +0 -0
- /package/dist/assets/{library-BFdgofAq.js → library-DNEpT1eD.js} +0 -0
- /package/dist/assets/{link-click-Dizbvw1H.js → link-click-BJkFvMTf.js} +0 -0
- /package/dist/assets/{list-detail-navigation-ChFNCRwF.js → list-detail-navigation-Bc3JpBO4.js} +0 -0
- /package/dist/assets/{logs-BRx5q__N.js → logs-BKfLoluH.js} +0 -0
- /package/dist/assets/{logs-Djz0FHd-.js → logs-BufZKV9C.js} +0 -0
- /package/dist/assets/{logs-BbmigxfM.js → logs-CAOgfUOH.js} +0 -0
- /package/dist/assets/{logs-DqcVH8T6.js → logs-CW8mXm9O.js} +0 -0
- /package/dist/assets/{machine-sizes-DkgYVvyU.js → machine-sizes-DZLd-6DF.js} +0 -0
- /package/dist/assets/{onboarding-CKXWGL__.js → onboarding-BnvKZweH.js} +0 -0
- /package/dist/assets/{onboarding-DdQfkNL9.js → onboarding-ClaQ9TbS.js} +0 -0
- /package/dist/assets/{onboarding-BgGUy9e_.js → onboarding-D5ZYk-vE.js} +0 -0
- /package/dist/assets/{onboarding-DSXxrrNI.js → onboarding-DmjIVIBS.js} +0 -0
- /package/dist/assets/{onboarding-step-layout-NeKjwNyJ.js → onboarding-step-layout-Vb0tyqKa.js} +0 -0
- /package/dist/assets/{pdf--x650muR.js → pdf-C1Mi1b5E.js} +0 -0
- /package/dist/assets/{plugin-attribution-CS85_NdB.js → plugin-attribution-CTeP_GNV.js} +0 -0
- /package/dist/assets/{radio-card-nav-DMoAtJEF.js → radio-card-nav-d-b41vKg.js} +0 -0
- /package/dist/assets/{remote-web-BT_zhr9C.js → remote-web-B4U_dWd7.js} +0 -0
- /package/dist/assets/{remote-web-DenJqlzO.js → remote-web-BDCxnZ9y.js} +0 -0
- /package/dist/assets/{remote-web-CFnafhkO.js → remote-web-CVtBV7uq.js} +0 -0
- /package/dist/assets/{remote-web-ncKDx-rR.js → remote-web-N0Odpq2-.js} +0 -0
- /package/dist/assets/{schedules-BFWqVQQr.js → schedules-Bk7XGnqS.js} +0 -0
- /package/dist/assets/{schedules-B-eoXB0u.js → schedules-CGU7CKaM.js} +0 -0
- /package/dist/assets/{schedules-jmj6ULCh.js → schedules-J687h0Fh.js} +0 -0
- /package/dist/assets/{schedules-CxUabbOG.js → schedules-JnprnWDo.js} +0 -0
- /package/dist/assets/{signup-onboarding-handoff-BIo7lFvP.js → signup-onboarding-handoff-aEYZuuHr.js} +0 -0
- /package/dist/assets/{skill-icon-Bu6SaLo9.js → skill-icon-H-0SEc1H.js} +0 -0
- /package/dist/assets/{status-badge-pill-Ceff-8Fw.js → status-badge-pill-CND5rJPR.js} +0 -0
- /package/dist/assets/{terminal-Dl9KkSzg.js → terminal-BV6xg9ZA.js} +0 -0
- /package/dist/assets/{terminal-BQY82QZm.js → terminal-BjOF3LBT.js} +0 -0
- /package/dist/assets/{terminal-BUWeG_vt.js → terminal-CYHsl1AH.js} +0 -0
- /package/dist/assets/{terminal-CAR3C4xs.js → terminal-Cxm0NKaj.js} +0 -0
- /package/dist/assets/{usage-window-DmMnJ1Wj.js → usage-window-Dk_XVv4Y.js} +0 -0
- /package/dist/assets/{use-async-read-DlWfyJPq.js → use-async-read-deCq0DBg.js} +0 -0
- /package/dist/assets/{use-debounced-value-CwdWFc4Z.js → use-debounced-value-CPLEzsNt.js} +0 -0
- /package/dist/assets/{workspace-CNtNlLWm.js → workspace-Bcvg2VfS.js} +0 -0
- /package/dist/assets/{workspace-Bnpq8Dqv.js → workspace-BscXtFFU.js} +0 -0
- /package/dist/assets/{workspace-C9vNSPtQ.js → workspace-C-huZiu_.js} +0 -0
- /package/dist/assets/{workspace-u8O2g3J6.js → workspace-P8HaFDdu.js} +0 -0
- /package/dist/assets/{xterm-DVw0Odgw.js → xterm-Pyzkt_-B.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-BQeaKmRy.js → xterm-addon-fit-HaY_WHvm.js} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$b as t,Bh as n,Fn as r,Fo as i,Gn as a,Ht as o,IC as s,Ia as c,Jn as l,NC as u,Pt as d,Qn as f,VC as p,Wh as m,XC as h,Xn as g,Yn as _,Zi as v,en as y,fC as b,jt as x,kn as ee,lr as te,no as ne,nu as S,qn as re,ro as ie,tw as C,zC as w,zf as ae,zh as T}from"./app-CPkqAi_4.js";import{t as E,x as D}from"./react-BJ4PZBJN.js";import{k as O,w as k}from"./vendor-D-45vVY0.js";import{$r as A,A as j,Ht as M,Ia as N,Ki as oe,Vt as P,Yn as F,Zr as I,ar as se,ri as L}from"./icons-Dwi7aA1Y.js";import{n as R,r as ce,t as le}from"./use-app-delete-DsCLfjVk.js";var z=e(D(),1),B=E();function V({children:e}){return(0,B.jsx)(`span`,{"data-reveal":``,className:`absolute right-1 top-1 rounded-md bg-[var(--surface-lift)]`,children:e})}function H({title:e,children:t}){return(0,B.jsxs)(p.Root,{children:[(0,B.jsx)(p.Trigger,{asChild:!0,children:(0,B.jsx)(h,{variant:`ghost`,size:`compact`,expandOnMobile:!1,iconOnly:(0,B.jsx)(A,{}),"aria-label":e})}),(0,B.jsx)(p.Content,{title:e,children:t})]})}var U=({assistantId:e,app:t,onRequestDelete:n})=>{let{togglePin:r,pinnedAppIds:i}=v(e),a=i.has(t.id),o=R(e,t,{exported:O(`chat:appAssetActions.appExported`),failed:O(`chat:appAssetActions.shareFailed`)});return(0,B.jsxs)(H,{title:O(`chat:conversationAssetActions.optionsFor`,{name:t.name}),children:[(0,B.jsx)(p.Item,{icon:a?M:P,label:O(a?`chat:conversationAssetActions.unpin`:`chat:conversationAssetActions.pin`),onSelect:()=>r(t.id)}),(0,B.jsx)(p.Item,{icon:N,label:O(`chat:conversationAssetActions.share`),description:O(`chat:conversationAssetActions.exportAsCadet`),onSelect:()=>void o()}),(0,B.jsx)(p.Item,{icon:j,label:O(`chat:conversationAssetActions.delete`),tone:`destructive`,onSelect:()=>n(t)})]})},W=({assistantId:e,doc:t,onOpen:n})=>{let r=(0,z.useCallback)(async()=>{try{await i(e,t.surfaceId,t.title)}catch{b.error(O(`chat:documentAssetActions.pdfDownloadFailed`))}},[e,t.surfaceId,t.title]);return(0,B.jsxs)(H,{title:O(`chat:conversationAssetActions.optionsFor`,{name:t.title}),children:[(0,B.jsx)(p.Item,{icon:I,label:O(`chat:conversationAssetActions.open`),onSelect:n}),(0,B.jsx)(p.Item,{icon:L,label:O(`chat:conversationAssetActions.downloadPdf`),onSelect:()=>void r()})]})},G={width:184};function K({app:e,assistantId:t,onOpen:n,onRequestDelete:r,stretch:i=!1}){let{t:a}=k(`chat`),o=(0,z.useCallback)(()=>m(t,e.id,e.updatedAt),[t,e.id,e.updatedAt]);return(0,B.jsxs)(`div`,{"data-slot":`chat-info-app-tile`,"data-reveal-row":``,className:C(`relative flex flex-col gap-1`,i?`min-w-0 flex-1`:`shrink-0`),style:i?void 0:G,children:[(0,B.jsx)(`button`,{type:`button`,"aria-label":a(`chatInfoPanel.openAppAria`,{name:e.name}),onClick:()=>n(e.id),className:`block w-full cursor-pointer rounded-lg outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:(0,B.jsx)(y,{name:e.name,icon:e.icon,loadHtml:o})}),(0,B.jsx)(V,{children:(0,B.jsx)(U,{assistantId:t,app:e,onRequestDelete:r})}),(0,B.jsx)(w,{variant:`body-small-default`,title:e.name,className:`truncate leading-normal text-[var(--content-tertiary)]`,children:e.name})]})}var q={width:135};function J({file:e,assistantId:t,onOpen:n}){let{t:i}=k(`chat`),a=(0,z.useRef)(null),s=x(a)||typeof IntersectionObserver>`u`,c=e.kind===`document`?null:e.attachment,l=c?te(c.mimeType,c.filename):`document`,[u,f]=(0,z.useState)(!1),{url:p,isError:m}=r(t,c,s&&l===`image`),h=l===`video`&&c?.thumbnailUrl!=null?c.thumbnailUrl:null,g;g=e.kind===`document`?i(`chatInfoPanel.openDocumentAria`,{name:e.title}):e.kind===`frame`?i(`chatInfoPanel.previewFrameAria`):i(`chatInfoPanel.previewAttachmentAria`,{filename:e.attachment.filename});let _=e.kind===`frame`&&e.capturedAt!==null?d(e.capturedAt):e.title,v=l===`image`&&!u;return(0,B.jsxs)(`div`,{"data-slot":`chat-info-file-tile`,"data-reveal-row":``,className:`relative flex shrink-0 flex-col gap-1`,style:q,children:[(0,B.jsx)(`button`,{ref:a,type:`button`,"aria-label":g,onClick:()=>n(e),className:`block h-[84px] w-full cursor-pointer overflow-hidden rounded-lg outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:(0,B.jsx)(o,{className:`h-full w-full rounded-lg bg-[var(--surface-base)]`,kind:l,imageUrl:v?p:null,posterUrl:h,onImageError:()=>f(!0),glyphClassName:`size-8`,placeholder:v&&!m?(0,B.jsx)(F,{className:`size-8 animate-spin text-[var(--content-tertiary)]`}):null})}),e.kind===`document`?(0,B.jsx)(V,{children:(0,B.jsx)(W,{assistantId:t,doc:e.doc,onOpen:()=>n(e)})}):null,(0,B.jsx)(w,{variant:`body-small-default`,title:_,className:`truncate leading-normal text-[var(--content-tertiary)]`,children:_})]})}function ue({items:e,assistantId:t,hasMore:n,loading:r,onLoadMore:i,onOpen:a}){let{t:o}=k(`chat`);return(0,B.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[e.length>0&&(0,B.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:e.map(e=>(0,B.jsx)(J,{file:e,assistantId:t,onOpen:a},e.id))}),n&&(0,B.jsx)(h,{variant:`outlined`,disabled:r,onClick:i,className:`self-start`,children:o(`chatInfoPanel.loadMore`)})]})}var Y=8,X={"--chat-info-strip-bleed":`20px`},Z={gap:Y};function Q(e,t){if(!(e>0))return 1;let n=Y;return Math.max(1,Math.floor((e+n)/(t+n)))}function de({title:e,count:t,notice:n,items:r,tileWidth:i,renderTile:a,seeAllAriaLabel:o,onSeeAll:s}){let{t:l}=k(`chat`),d=(0,z.useId)(),{ref:f,size:p}=c(),m=S(),_=Q(p.w,i),v=(t??r.length)>_;return(0,B.jsxs)(`section`,{"aria-labelledby":d,className:`flex flex-col gap-3`,style:X,children:[(0,B.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,B.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[(0,B.jsx)(w,{id:d,variant:`title-small`,className:`truncate text-[var(--content-emphasised)]`,children:e}),t!==null&&(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(g,{className:`bg-[var(--content-disabled)]`}),(0,B.jsx)(w,{variant:`title-small`,className:`shrink-0 text-[var(--content-disabled)]`,children:t})]})]}),v&&(0,B.jsx)(h,{variant:`ghost`,size:`compact`,"aria-label":o,onClick:s,className:`h-auto shrink-0 px-0 text-title-small hover:bg-transparent [--vbtn-fg:var(--content-emphasised)]`,children:l(`chatInfoPanel.seeAll`)})]}),n,(0,B.jsx)(`div`,{ref:f,className:`w-full`,children:m?(0,B.jsx)(u,{orientation:`horizontal`,hideScrollBar:!0,className:`-mx-[var(--chat-info-strip-bleed)] px-[var(--chat-info-strip-bleed)]`,children:(0,B.jsx)(`div`,{className:`flex w-max`,style:Z,children:r.map(e=>a(e,`strip`))})}):(0,B.jsx)(`div`,{className:`flex w-full`,style:Z,children:r.slice(0,_).map(e=>a(e,`fitted`))})})]})}function fe({category:e,title:t,count:n,notice:r,items:i,seeAllAriaLabel:a,onSeeAll:o,onOpen:s,assistantId:c}){return(0,B.jsx)(de,{title:t,count:n,notice:r,items:i,tileWidth:135,seeAllAriaLabel:a,onSeeAll:()=>o(e),renderTile:e=>(0,B.jsx)(J,{file:e,assistantId:c,onOpen:s},e.id)})}function $({payload:e,onClose:r,onSelectCategory:i}){let{t:o}=k(`chat`),{assistantId:c,conversationId:u}=e,d=t.use.activeAssistantId(),p=ie(c,T.getState().closeChatInfo),m=ne(),{apps:g,files:v,frames:y,counts:b,count:x,status:te,allFailed:S,countsExact:C,sources:w,retrySource:E,retryFailedSources:D,hasMoreFiles:O,hasMoreFrames:A,loadMoreFiles:j,loadMoreFrames:M}=f({assistantId:c,conversationId:u}),{previewable:N,previewIndexById:P}=(0,z.useMemo)(()=>{let e=[],t=new Map;for(let n of[...v,...y])n.kind!==`document`&&(t.set(n.id,e.length),e.push(n.attachment));return{previewable:e,previewIndexById:t}},[v,y]),{openPreview:F,previewModal:I}=ee(c,N),L=le(c),R=n.use.changedDocuments()[u],V=n.use.clearConversation();(0,z.useEffect)(()=>{R!==void 0&&V(u)},[V,u,R]),(0,z.useEffect)(()=>{d!==null&&d!==c&&T.getState().closeChatInfo()},[d,c]);let H=(0,z.useCallback)(e=>{c===d&&(T.getState().closeChatInfo(),m(e,{conversationId:u}))},[d,c,u,m]),U=(0,z.useCallback)(e=>{if(e.kind===`document`){p(e.doc.surfaceId);return}F(e.attachment,P.get(e.id))},[p,F,P]),W={apps:o(`chatInfoPanel.appsTitle`),files:o(`chatInfoPanel.filesTitle`),frames:o(`chatInfoPanel.framesTitle`)},G={apps:g,files:v,frames:y},q={apps:[`apps`],files:[`documents`,`attachments`],frames:[`frames`]},J={apps:o(`chatInfoPanel.appsTitle`),documents:o(`chatInfoPanel.documentsSource`),attachments:o(`chatInfoPanel.attachmentsSource`),frames:o(`chatInfoPanel.framesTitle`)},Y=e=>q[e].map(e=>{let t=w[e],n=J[e];if(!t.supported)return(0,B.jsx)(l,{placement:`section`,children:o(`chatInfoPanel.framesUnsupported`)},e);if(t.failure){let r=t.failure===`page`?`chatInfoPanel.sourcePageFailed`:t.failure===`refresh`?`chatInfoPanel.sourceRefreshFailed`:`chatInfoPanel.sourceLoadFailed`;return(0,B.jsx)(s,{tone:t.hasData?`warning`:`error`,actions:(!S||Z!==null)&&(0,B.jsx)(h,{variant:`outlined`,size:`compact`,disabled:t.fetching,onClick:()=>E(e),"aria-label":o(`chatInfoPanel.retrySourceAria`,{source:n}),children:o(`chatInfoPanel.retry`)}),children:o(r,{source:n})},e)}return t.pending?(0,B.jsx)(re,{placement:`section`,label:o(`chatInfoPanel.sourceLoading`,{source:n})},e):t.scope===`loaded-history`?(0,B.jsxs)(z.Fragment,{children:[(0,B.jsx)(l,{placement:`section`,children:o(`chatInfoPanel.loadedHistory`)}),(0,B.jsx)(l,{placement:`section`,children:o(`chatInfoPanel.framesUnsupported`)})]},e):null}),X=e.category!==null&&ae(q[e.category].map(e=>w[e])).status===`ready`&&G[e.category].length===0,Z=X?null:e.category;(0,z.useEffect)(()=>{X&&i(null)},[X,i]);let Q=e=>{let t=G[e];return t.length===0&&q[e].every(e=>!w[e].pending&&!w[e].failure)?null:(0,B.jsx)(fe,{category:e,title:W[e],count:C[e]?b[e]:null,notice:Y(e),items:t,seeAllAriaLabel:o(e===`files`?`chatInfoPanel.seeAllFilesAria`:`chatInfoPanel.seeAllFramesAria`),onSeeAll:i,onOpen:U,assistantId:c})},$;return $=Z===`apps`?(0,B.jsx)(`div`,{className:`grid gap-2`,style:{gridTemplateColumns:`repeat(auto-fill, minmax(184px, 1fr))`},children:g.map(e=>(0,B.jsx)(K,{app:e,assistantId:c,stretch:!0,onOpen:H,onRequestDelete:L.requestDelete},e.id))}):Z===null?(0,B.jsxs)(`div`,{className:`flex flex-col gap-5`,children:[te===`ready`&&x===0&&(0,B.jsx)(l,{placement:`panel`,children:o(`chatInfoPanel.empty`)}),(g.length>0||w.apps.pending||w.apps.failure)&&(0,B.jsx)(de,{title:W.apps,count:C.apps?b.apps:null,notice:Y(`apps`),items:g,tileWidth:184,seeAllAriaLabel:o(`chatInfoPanel.seeAllAppsAria`),onSeeAll:()=>i(`apps`),renderTile:(e,t)=>(0,B.jsx)(K,{app:e,assistantId:c,stretch:t===`fitted`,onOpen:H,onRequestDelete:L.requestDelete},e.id)}),Q(`files`),Q(`frames`)]}):(0,B.jsx)(ue,{items:G[Z],assistantId:c,hasMore:(Z===`files`?O:A)&&!w[Z===`files`?`attachments`:`frames`].failure,loading:w[Z===`files`?`attachments`:`frames`].fetching,onLoadMore:Z===`files`?j:M,onOpen:U}),(0,B.jsxs)(a,{...Z===null?{Glyph:se,title:o(`chatInfoPanel.title`)}:{icon:(0,B.jsx)(h,{variant:`outlined`,iconOnly:(0,B.jsx)(oe,{}),"aria-label":o(`chatInfoPanel.backAria`),tooltip:o(`chatInfoPanel.backTooltip`),onClick:()=>i(null),className:`shrink-0`}),title:C[Z]?void 0:W[Z],titleNode:C[Z]?(0,B.jsx)(_,{title:W[Z],count:b[Z]}):void 0},closeLabel:o(`chatInfoPanel.closeAria`),closeTooltip:o(`chatInfoPanel.closeAria`),onClose:r,children:[Z===null&&S&&(0,B.jsx)(s,{tone:`error`,actions:(0,B.jsx)(h,{variant:`outlined`,size:`compact`,disabled:Object.values(w).some(e=>e.fetching),onClick:D,children:o(`chatInfoPanel.retry`)}),children:o(`chatInfoPanel.loadFailed`)}),Z!==null&&Y(Z),$,I,(0,B.jsx)(ce,{app:L.pendingDelete,isDeleting:L.isDeleting,onConfirm:L.confirmDelete,onCancel:L.cancelDelete})]})}export{$ as ChatInfoPanel};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{vg as e}from"./app-CPkqAi_4.js";import{y as t}from"./vendor-D-45vVY0.js";function n(){return e()!==null||t.isNativePlatform()?`native`:`web`}export{n as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./command-palette-C5-1ScXi.js";export{e as CommandPalette};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$b as t,Eo as n,Ka as r,Ri as i,Xl as a,_f as o,c_ as s,qa as c,sc as l,wh as u,xh as d,yh as f}from"./app-CPkqAi_4.js";import{t as p,x as m}from"./react-BJ4PZBJN.js";import{t as h}from"./command-palette-C5-1ScXi.js";var g=e(m(),1),_=p(),v=()=>void 0,y=e=>void 0,b=e=>{switch(e.id){case`action-new-conversation`:return{kind:`newConversation`};case`action-current-conversation`:return{kind:`currentConversation`};case`action-settings`:return{kind:`openSettings`};case`action-library`:return{kind:`openLibrary`};case`action-intelligence`:return{kind:`openIdentity`};default:return e.id.startsWith(`conv-`)?{kind:`openConversation`,conversationId:e.id.slice(5)}:e.id.startsWith(`search-conv-`)?{kind:`openConversation`,conversationId:e.id.slice(12)}:e.id.startsWith(`search-schedule-`)||e.id.startsWith(`search-contact-`)?{kind:`openIdentity`}:null}};function x(){let e=f.use.sessionStatus(),p=u(),m=d();o(),l(!p),a({sessionStatus:e,hasPlatformSession:m});let x=t.use.assistants(),S=t.use.activeAssistantId(),C=s(),w=(0,g.useMemo)(()=>{let e=C??S;if(!e)return null;let t=x.find(t=>t.id===e);return t?{id:t.id,name:t.name}:null},[C,S,x]),T=w?.id??null,{conversations:E}=n(T,!0),D=(0,g.useCallback)(e=>{let t=b(e);t&&c(t)},[]),{commandPalette:O,mergedSections:k,handleItemSelect:A}=i({assistantId:T,assistantName:w?.name,conversations:E,activeConversationId:void 0,startNewConversation:v,switchConversation:v,navigate:y,navigateToSettings:v,isOpen:!0,onClose:()=>{r()},onItemSelect:D});return(0,_.jsx)(`div`,{className:`h-screen w-screen bg-transparent`,children:(0,_.jsx)(h,{isOpen:!0,surface:`window`,onClose:O.close,query:O.query,onQueryChange:O.setQuery,highlightTokens:O.searchTokens,selectedIndex:O.selectedIndex,sections:k,isSearching:O.isSearching,onItemSelect:A,onKeyDown:O.handleKeyDown})})}export{x as CommandPaletteWindowPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$l as t,Al as n,Bl as r,Dl as i,El as a,Gg as o,Gl as ee,Hl as s,Il as c,Jl as l,Kl as u,Ll as d,Ml as te,NC as f,Nl as p,Ol as m,Pl as h,Rl as ne,Sl as g,Tl as _,Ul as v,Wl as y,XC as re,Yl as ie,cf as b,hC as x,jl as S,kl as C,of as w,ql as ae,t_ as oe,wl as T,xl as E,yl as D}from"./app-CPkqAi_4.js";import{t as O,x as k}from"./react-BJ4PZBJN.js";import{w as se}from"./vendor-D-45vVY0.js";import{Ka as A,yn as ce}from"./icons-Dwi7aA1Y.js";import{a as le,c as ue,l as de,n as fe,o as pe,r as me,s as he,t as ge,u as _e}from"./companion-surface-s_z14fFe.js";import{n as ve}from"./companion-accent-DeN7YIfl.js";import{n as ye,t as be}from"./companion-popover-BY9dsTkK.js";import{l as xe,t as Se}from"./permission-setup-aNFAgq7H.js";import{n as j,r as Ce,t as M}from"./companion-layout-C4onEUYK.js";var N=e(k(),1),P=O(),we=460,Te=3,Ee=88,De=3,Oe=[`screens`,`tabs`,`windows`],ke=(e,t)=>t===`screens`?e.displays.length:t===`tabs`?e.tabs.length:e.windows.length,Ae=e=>Oe.find(t=>ke(e,t)>0)??`screens`,F=e=>e.kind===`display`?`display-${e.displayId}`:`window-${e.windowId}`;function je({sources:e,captureThumbnail:t,cardGrowth:n=`up`,side:r,avatarBox:i=o,optionsBox:a=o,cardRef:ee,label:s,onPick:c,onAllowScreenRecording:l}){let{t:u}=se(),{inUnits:d,lineAt:te,edgeAt:p,introStepOff:m,gap:h}=M(i,a),ne=d(m(n)),g=r===void 0?{left:`50%`,top:te(n,0),transform:n===`up`?`translate(-50%, calc(-100% - ${ne}px))`:`translate(-50%, ${ne}px)`}:{...p(r,oe(i,a)+h),top:`50%`,transform:`translateY(-50%)`},_=e!==null&&e.screenRecordingGranted===!1,v=_?null:e,y=v===null?[]:Oe.filter(e=>ke(v,e)>0),ie=v!==null&&y.length===0,[b,S]=(0,N.useState)(null),C=v===null?`screens`:b!==null&&y.includes(b)?b:Ae(v),w=(0,N.useMemo)(()=>v===null?[]:C===`screens`?v.displays.map(e=>{let t={kind:`display`,displayId:e.displayId};return{key:F(t),target:t}}):C===`windows`?v.windows.map(e=>{let t={kind:`window`,windowId:e.windowId};return{key:F(t),target:t}}):[],[C,v]),[ae,T]=(0,N.useState)(new Map),E=(0,N.useRef)(new Set),D=(0,N.useRef)(0),O=(0,N.useRef)(!1);(0,N.useEffect)(()=>(O.current=!0,()=>{O.current=!1}),[]),(0,N.useEffect)(()=>{E.current=new Set,D.current+=1,T(new Map),S(null)},[e]);let k=(0,N.useRef)(null);(0,N.useEffect)(()=>{k.current!==null&&(k.current.scrollTop=0)},[C]),(0,N.useEffect)(()=>{if(t!==void 0)for(let{key:e,target:n}of w){if(E.current.has(e))continue;E.current.add(e);let r=D.current,i=t=>{!O.current||r!==D.current||T(n=>new Map(n).set(e,t))};t(n).then(i,()=>{i(null)})}},[t,w]);let A=e=>t===void 0?null:ae.get(e),le=e=>u(e===`screens`?`companionSurface.captureScreens`:e===`tabs`?`companionSurface.captureTabs`:`companionSurface.captureWindows`);return(0,P.jsxs)(`div`,{ref:ee,role:`group`,"aria-label":s??u(`companionSurface.capturePicker`),"data-companion-capture-picker":!0,"data-theme":`dark`,className:`absolute flex flex-col rounded-2xl border border-white/10 bg-[#17181b]/95 p-1.5 shadow-lg shadow-black/40`,style:{width:we,...g},onPointerDown:e=>{e.stopPropagation()},children:[y.length>1&&(0,P.jsx)(x,{className:`mx-auto mb-1.5 w-auto shrink-0`,items:y.map(e=>({value:e,label:le(e)})),value:C,ariaLabel:u(`companionSurface.captureKind`),onChange:S}),(0,P.jsx)(f,{ref:k,className:`max-h-48 flex-col px-0.5`,size:24,fadeEdges:`end`,hideScrollBar:!0,children:(0,P.jsxs)(`div`,{className:`flex flex-col`,"data-slot":`capture-sources`,children:[e===null&&(0,P.jsx)(Ne,{}),_&&(0,P.jsxs)(`div`,{className:`flex items-center justify-between gap-3 px-2 py-2`,"data-slot":`capture-needs-grant`,children:[(0,P.jsx)(`span`,{className:`text-[12px] text-white/70`,children:u(`companionSurface.captureScreenRecordingOff`)}),(0,P.jsx)(re,{variant:`primary`,size:`compact`,className:`shrink-0`,onClick:l,children:u(`companionSurface.captureTurnOnScreenRecording`)})]}),v!==null&&C===`screens`&&(0,P.jsx)(I,{children:v.displays.map(e=>{let t=u(`companionSurface.captureScreen`,{n:e.index+1}),n=F({kind:`display`,displayId:e.displayId});return(0,P.jsx)(L,{title:t,ariaLabel:t,answer:A(n),fallback:(0,P.jsx)(ce,{className:`size-5 text-white/40`,"aria-hidden":!0}),onClick:()=>{c?.({kind:`display`,displayId:e.displayId})}},n)})}),v!==null&&C===`windows`&&(0,P.jsx)(I,{children:v.windows.map(e=>{let t=F({kind:`window`,windowId:e.windowId}),n=e.title===``?e.app:e.title;return(0,P.jsx)(L,{title:n,ariaLabel:e.title===``?n:`${n} (${e.app})`,answer:A(t),fallback:(0,P.jsx)(R,{icon:e.icon,large:!0}),icon:(0,P.jsx)(R,{icon:e.icon}),onClick:()=>{c?.({kind:`window`,windowId:e.windowId})}},t)})}),v!==null&&C===`tabs`&&(0,P.jsx)(`div`,{className:`flex flex-col`,children:v.tabs.map(e=>(0,P.jsx)(Me,{icon:(0,P.jsx)(R,{icon:e.icon}),title:e.title,onClick:()=>{c?.({kind:`tab`,chromeWindowId:e.chromeWindowId,tabIndex:e.tabIndex})}},`tab-${e.chromeWindowId}-${e.tabIndex}`))}),ie&&(0,P.jsx)(`span`,{className:`px-2 py-3 text-[12px] text-white/50`,children:u(`companionSurface.captureNothing`)})]})})]})}function I({children:e}){return(0,P.jsx)(`div`,{className:`grid gap-1.5 py-0.5`,style:{gridTemplateColumns:`repeat(${Te}, minmax(0, 1fr))`},children:e})}function L({title:e,ariaLabel:t,answer:n,fallback:r,icon:i,onClick:a}){return(0,P.jsxs)(`button`,{type:`button`,"aria-label":t,"data-slot":`capture-source`,className:`group flex min-w-0 flex-col gap-1 rounded-lg p-1 text-left transition-colors outline-none hover:bg-white/10 focus-visible:ring-1 focus-visible:ring-white/40 focus-visible:ring-inset active:bg-white/15`,onClick:a,children:[(0,P.jsx)(`span`,{"data-slot":`capture-preview`,className:`flex items-center justify-center overflow-hidden rounded-md bg-black/40 ring-1 ring-white/10 ${n===void 0?`animate-pulse`:``}`,style:{height:Ee},children:n==null?r:(0,P.jsx)(`img`,{src:n,alt:``,draggable:!1,className:`max-h-full max-w-full object-contain`})}),(0,P.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[i,(0,P.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[11px] text-white/75 group-hover:text-white/90`,children:e})]})]})}function Me({icon:e,title:t,onClick:n}){return(0,P.jsxs)(`button`,{type:`button`,"aria-label":t,"data-slot":`capture-source`,className:`flex h-8 w-full shrink-0 items-center gap-2 rounded-lg px-2 text-left text-[12px] text-white/85 transition-colors outline-none hover:bg-white/10 focus-visible:ring-1 focus-visible:ring-white/40 focus-visible:ring-inset active:bg-white/15`,onClick:n,children:[e,(0,P.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t})]})}function R({icon:e,large:t=!1}){return(0,P.jsx)(`span`,{className:`flex shrink-0 items-center justify-center overflow-hidden ring-1 ring-white/10 ${t?`size-7 rounded-lg`:`size-3.5 rounded-[4px]`}`,children:e===void 0?(0,P.jsx)(A,{className:t?`size-5 text-white/40`:`size-3 text-white/70`,"aria-hidden":!0}):(0,P.jsx)(`img`,{src:e,alt:``,className:`size-full`,draggable:!1})})}function Ne(){return(0,P.jsx)(I,{children:Array.from({length:De},(e,t)=>(0,P.jsxs)(`div`,{className:`flex flex-col gap-1 p-1`,"aria-hidden":!0,children:[(0,P.jsx)(`span`,{className:`animate-pulse rounded-md bg-white/10`,style:{height:Ee}}),(0,P.jsx)(`span`,{className:`h-2 animate-pulse rounded-full bg-white/10`,style:{width:t===0?`70%`:`45%`}})]},t))})}var Pe=3,Fe=440;function Ie(){let{t:e}=se(),[f,re]=(0,N.useState)(`right`),[x,oe]=(0,N.useState)(`up`),[O,k]=(0,N.useState)(`bottom`),[A,ce]=(0,N.useState)(o),[M,we]=(0,N.useState)(o),[Te,Ee]=(0,N.useState)(),[De,Oe]=(0,N.useState)(),[ke,Ae]=(0,N.useState)(),[F,I]=(0,N.useState)(null),[L,Me]=(0,N.useState)(!1),[R,Ne]=(0,N.useState)(void 0),[Ie,Le]=(0,N.useState)(``),[Re,ze]=(0,N.useState)(``),[Be,Ve]=(0,N.useState)(!1),[z,He]=(0,N.useState)(!1),[Ue,We]=(0,N.useState)(void 0),[B,Ge]=(0,N.useState)(void 0),[V,Ke]=(0,N.useState)(void 0),[H,qe]=(0,N.useState)(void 0),[Je,Ye]=(0,N.useState)(!1),[Xe,Ze]=(0,N.useState)(!1),[Qe,$e]=(0,N.useState)(void 0),[et,tt]=(0,N.useState)(!1),[nt,rt]=(0,N.useState)(!1),[it,at]=(0,N.useState)(!1),[ot,st]=(0,N.useState)(!1),[ct,lt]=(0,N.useState)(void 0),[U,W]=(0,N.useState)(!1),[G,ut]=(0,N.useState)(`teach`),[dt,ft]=(0,N.useState)(null),K=(0,N.useRef)(0),[pt,q]=(0,N.useState)(!1),[J,mt]=(0,N.useState)(null),[ht,gt]=(0,N.useState)(0),[_t,vt]=(0,N.useState)(0),[yt,bt]=(0,N.useState)(void 0),Y=(0,N.useRef)(!1),xt=(0,N.useRef)(null),St=(0,N.useRef)(null),Ct=(0,N.useRef)(null),wt=(0,N.useRef)(null),Tt=(0,N.useRef)(null),Et=(0,N.useRef)(null),Dt=(0,N.useRef)(null),Ot=(0,N.useRef)(null),kt=(0,N.useRef)(!1),At=(0,N.useCallback)(e=>{Ot.current=e,e===null&&kt.current&&(kt.current=!1,Y.current=!1,r(!1))},[]),X=(0,N.useRef)(null),jt=(0,N.useRef)(null),Mt=(0,N.useRef)(!1);(0,N.useEffect)(()=>{let e=e=>{re(e.growth),oe(e.cardGrowth),k(e.dock??`bottom`),ce(e.avatarBox),we(e.optionsBox??e.avatarBox),Ee(e.avatarBase64===void 0?void 0:`data:image/png;base64,${e.avatarBase64}`),Oe(e.character),Ae(e.accentHex),I(e.call),Me(e.dialing===!0),ze(e.assistantName),Ve(e.working),He(e.watching===!0),Ne(e.dictating),Le(e.dictationText??``),We(e.watchRetro),Ge(e.dictationOffer),Ke(e.popover),qe(e.popoverView),Ye(e.watchEnabled===!0),Ze(e.watchTargets===!0),$e(e.screenShare),tt(e.screenShareEnabled===!0),rt(e.annotating===!0),at((e.coachmarks?.length??0)>0),st(e.marksCleared!==void 0),lt(e.annotationTool),mt(e.intro),gt(e.voiceKeyTaps??0),vt(e.introChordPresses??0),bt(e.introChordControl)},t=u(e);return n().then(t=>{t&&e(t)}),t},[]),(0,N.useEffect)(()=>()=>{r(!1)},[]);let Nt=F!==null||L,Pt=Qe!==void 0,Ft=(0,N.useMemo)(()=>D()?ie():void 0,[]);(0,N.useEffect)(()=>{Nt||(K.current+=1,W(!1))},[Nt]),(0,N.useEffect)(()=>{z&&G===`teach`&&(K.current+=1,W(!1))},[z,G]),(0,N.useEffect)(()=>{Pt&&G===`share`&&(K.current+=1,W(!1))},[Pt,G]);let It=(e,t)=>{ft(null),ut(e),W(!0);let n=++K.current;S().then(e=>{if(n===K.current){if(e!==null){ft(e);return}W(!1),t()}})},Lt=U&&dt?.screenRecordingGranted===!1;(0,N.useEffect)(()=>{if(Lt)return b(e=>{if(e.screen?.status!==`granted`)return;let t=++K.current;S().then(e=>{t!==K.current||e===null||ft(e)})})},[Lt]);let Rt=()=>{if(!Xe){l();return}if(U&&G===`teach`){K.current+=1,W(!1);return}It(`teach`,l)},zt=()=>{if(U&&G===`share`){K.current+=1,W(!1);return}It(`share`,()=>void 0)};(0,N.useEffect)(()=>{!U&&Y.current&&(Y.current=!1,r(!1))},[U]),(0,N.useEffect)(()=>{B===void 0&&Y.current&&(Y.current=!1,r(!1))},[B]);let Bt=(0,N.useRef)(!1),Vt=V!==void 0&&H!==void 0&&H!==`deferred`&&(F!==null||L)&&O!==`left`&&O!==`right`,Ht=Vt?V?.id:void 0;(0,N.useLayoutEffect)(()=>{let e=Dt.current;if(Ht===void 0||e===null)return;let t=()=>{ne(Ht,e.getBoundingClientRect().height)};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[Ht,H]);let[Ut,Wt]=(0,N.useState)(!1),Gt=Vt||Ut;(0,N.useEffect)(()=>{!Gt&&Bt.current&&(Bt.current=!1,Y.current=!1,r(!1))},[Gt]);let Kt=e=>{if(K.current+=1,W(!1),G===`share`){v(e);return}l(e)},Z=e=>{Y.current!==e&&(Y.current=e,r(e))},Q=J!==null&&F===null&&!L,qt=(0,N.useRef)(Q);(0,N.useEffect)(()=>{qt.current&&!Q&&(q(!1),Z(!1)),qt.current=Q},[Q]);let Jt=pe(J),Yt=Q?le(J,e(`companionIntro.call.line`)):null,Xt=_e(Q?J:null),Zt=de(Xt),Qt=Q&&!Zt&&(J===`talk`||J===`try`),$t=Q&&J===`idle`&&pt;(0,N.useEffect)(()=>{$t&&g(`next`)},[$t]);let[en,tn]=(0,N.useState)(!1);(0,N.useEffect)(()=>{tn(!1)},[J]);let nn=()=>{J===`try`&&!Zt&&g(`try`)},$=Yt!==null,rn=F!==null||L?`call`:R===void 0?B===void 0?z?`watching`:Ue===void 0?Jt??(pt?`hover`:`resting`):`summary`:`offer`:`dictating`,an=e=>{if(X.current!==null&&e.buttons===0&&(X.current=null,h()),X.current!==null){let{x:t,y:n}=X.current;te(e.screenX-t,e.screenY-n),X.current={x:e.screenX,y:e.screenY};let r=jt.current;r!==null&&Math.abs(e.screenX-r.x)+Math.abs(e.screenY-r.y)>Pe&&(Mt.current=!0);return}let t=Ct.current;if(!t)return;let n=xt.current?.getBoundingClientRect()??null,r=St.current?.getBoundingClientRect()??null,i=n!==null&&n.width>0?n:r!==null&&r.width>0?r:null,a=Ce({x:e.clientX,y:e.clientY},{avatar:t.getBoundingClientRect(),pill:i}),o=wt.current,ee=o!==null&&j(o.getBoundingClientRect(),e.clientX,e.clientY),s=Et.current,c=s!==null&&j(s.getBoundingClientRect(),e.clientX,e.clientY),l=Tt.current,u=l!==null&&j(l.getBoundingClientRect(),e.clientX,e.clientY),d=Dt.current,f=d!==null&&j(d.getBoundingClientRect(),e.clientX,e.clientY),p=Ot.current,m=p!==null&&j(p.getBoundingClientRect(),e.clientX,e.clientY);q(a),kt.current=m,Bt.current=f,Z(a||ee||u||c||m||f)},on=ve(F,ke,De),sn=V===void 0||H!==`deferred`?0:V.kind===`approvals`?V.items.length:1;return(0,P.jsx)(`div`,{className:`relative h-screen w-screen bg-transparent`,onMouseMove:an,onMouseUp:()=>{X.current!==null&&(X.current=null,h())},onPointerCancel:()=>{X.current!==null&&(X.current=null,h()),q(!1),Z(!1)},onMouseLeave:()=>{X.current===null&&(q(!1),Z(!1))},children:(0,P.jsx)(ge,{phase:rn,growth:f,cardGrowth:x,dock:O,avatarBox:A,optionsBox:M,avatarSrc:Te,character:De,hovered:pt,accentHex:on,call:F??Yt?.call??void 0,assistantName:Re,dictating:R,dictationText:Ie,working:Be,watching:z,watchRetro:Ue,onWatchRetro:a,dictationOffer:B,offer:B===void 0?null:(0,P.jsx)(ue,{offer:B,growth:f,cardGrowth:x,avatarBox:A,optionsBox:M,cardRef:Et,onAnswer:e=>{T(e,B.id)}}),watchEnabled:Je,spotlight:he(J),avatarStaged:Qt,avatarTucked:Q&&J===`idle`,intro:!Q||J===null?null:(0,P.jsx)(fe,{beat:J,growth:f,cardGrowth:x,avatarBox:A,optionsBox:M,accentHex:on,assistantName:Re===``?void 0:Re,cardRef:wt,permission:Xt,greeted:en,voiceKeyTaps:ht,chordPresses:_t,chordControl:yt,onAdvance:e=>{if(e===`try`){nn();return}g(e)}}),rootRef:xt,restingPillRef:St,avatarRef:Ct,onSurfacePointerDown:e=>{e.button===0&&e.target.closest(`button, a`)===null&&(e.currentTarget.setPointerCapture(e.pointerId),X.current={x:e.screenX,y:e.screenY},jt.current={x:e.screenX,y:e.screenY},Mt.current=!1)},onSurfaceContextMenu:e=>{(window.getSelection()?.toString().trim().length??0)>0||(e.preventDefault(),y())},onAvatarClick:()=>{if(!(Mt.current||$)){if(J!==null){Q&&!Zt&&(J===`talk`?tn(!0):J===`try`&&nn());return}if(F!==null||L){E();return}ee()}},onWatch:()=>{$||l()},onTeach:$?void 0:Rt,picking:U&&G===`teach`,sharing:Yt?.sharing??Pt,shareEnabled:$||et,sharePicking:U&&G===`share`,onShare:$?void 0:zt,onStopShare:$?void 0:()=>{v()},annotating:nt,onAnnotate:$?void 0:e=>{c(e)},marked:ot&&(it||nt),onClearMarks:$?void 0:()=>{m()},openPicker:V?.kind===`microphones`?V.kind:void 0,onPicker:!$&&C()?e=>{ae(e)}:void 0,annotationTool:ct,onAnnotationTool:$?void 0:e=>{d(e)},drawToolsRef:At,shortcuts:$?me:Ft,picker:U?(0,P.jsx)(je,{sources:dt,captureThumbnail:i,cardGrowth:x,side:(F!==null||L)&&(O===`left`||O===`right`)?O===`left`?`right`:`left`:void 0,avatarBox:A,optionsBox:M,cardRef:Tt,label:G===`share`?e(`companionSurface.sharePicker`):void 0,onPick:Kt,onAllowScreenRecording:()=>{(xe()?Se(`screen`):w(`screen`)).catch(()=>void 0)}}):null,prompt:!Vt||V===void 0?null:H===`row`&&(V.kind===`approvals`||V.kind===`secret`)?(0,P.jsx)(ye,{popover:V,onAnswer:e=>{_(e,V.id)},onView:e=>{s(V.id,e)}}):(0,P.jsx)(be,{attached:!0,popover:V,view:H??`expanded`,style:{maxHeight:Fe},onAnswer:e=>{_(e,V.id)},onView:e=>{s(V.id,e)},onOpenLink:e=>{p(e)}},V.id),promptRef:Dt,onWorkShelfChange:Wt,promptsDeferred:sn,onReviewPrompts:()=>{V!==void 0&&s(V.id,`expanded`)},onControl:$?void 0:(e,n)=>{t(n===void 0?{action:e}:{action:e,requestId:n})}})})}export{Ie as CompanionSurfacePage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{DS as t,Gg as n,Jg as r,Ma as i,NC as a,Ql as o,XC as s,Yg as c,af as l,as as u,cf as d,e_ as f,ea as p,hn as m,of as h,qg as g,sf as _}from"./app-CPkqAi_4.js";import{t as v,x as y}from"./react-BJ4PZBJN.js";import{d as b,s as x,w as S}from"./vendor-D-45vVY0.js";import{Ai as C,Cr as w,Fa as T,G as ee,Gi as E,Ji as D,Ki as O,Tn as k,Wi as A,Xr as te,Ya as j,Yr as ne,Zt as M,bt as re,h as ie,i as N,m as ae,qi as oe,wn as P}from"./icons-Dwi7aA1Y.js";import{l as F,n as I,t as se}from"./permission-setup-aNFAgq7H.js";import{t as ce}from"./companion-layout-C4onEUYK.js";var le=j(`eraser`,[[`path`,{d:`M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21`,key:`g5wo59`}],[`path`,{d:`m5.082 11.09 8.828 8.828`,key:`1wx5vj`}]]),ue=j(`screen-share`,[[`path`,{d:`M13 3H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-3`,key:`i8wdob`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`m17 8 5-5`,key:`fqif7o`}],[`path`,{d:`M17 3h5v5`,key:`1o3tu8`}]]),de=j(`slash`,[[`path`,{d:`M22 2 2 22`,key:`y4kqgn`}]]),L=e(y(),1);function fe(e,t){return e===`inputMonitoring`||t?.canRequest===!1||e!==`screen`&&t?.status===`denied`}var pe={try:`microphone`,key:`inputMonitoring`,share:`screen`};function R(e){return e!==null&&(e.state.phase!==`known`||e.state.item.status!==`granted`)}function me(e){let n=e===null?null:pe[e]??null,r=e!==null,[i,a]=(0,L.useState)(void 0),[s,c]=(0,L.useState)(null),f=(0,L.useRef)(()=>{});return(0,L.useEffect)(()=>{if(c(null),!r)return;let e=!0,i=!1,s=0,p=!1,m=!1,g=null,v=async()=>{if(!(!e||i||m||g!==`ready`)){m=!0;try{let t=await u();if(!e||i||g!==`ready`||t===null||t===`com.apple.systempreferences`||t===`com.apple.SecurityAgent`)return;g=null,I(),await o()}catch(e){t(e,{context:`companionIntro.resumeAfterPermission`})}finally{m=!1}}},y=(t,r=!1)=>{e&&(a(e=>JSON.stringify(e)===JSON.stringify(t)?e:t),r||c(null),g!==null&&n!==null&&(g=t?t[n].status===`granted`?`ready`:`waiting`:null,v()))},b=r=>{e&&(n!==null&&c({kind:n,phase:`error`}),t(r,{context:`companionIntro.permission`,tags:{kind:n??`tour`}}))},x=async()=>{if(p||i)return;p=!0;let t=s;try{let n=await l();e&&t===s&&!i&&y(n),n===null&&clearInterval(S)}catch(e){t===s&&!i&&b(e)}finally{p=!1}},S=setInterval(()=>{x()},2e3),C=d(e=>{s+=1,y(e,i)});return x(),f.current=t=>{!e||i||n===null||(i=!0,s+=1,c({kind:n,phase:`requesting`}),(async()=>{try{let r=await l();if(!e)return;if(!r){y(null);return}let i=r[n];if(i.status===`granted`||i.status===`restricted`){y(r);return}let a=s;g=`waiting`;let o=n!==`microphone`&&F()?await se(n,t):fe(n,i)?await h(n):await _(n);e&&(a===s?y(o?{...r,[n]:o}:null):c(null))}catch(e){g=null,b(e)}finally{i=!1,v()}})())},()=>{e=!1,I(),clearInterval(S),C()}},[n,r]),n===null||i===null?null:{kind:n,state:s?.kind===n?{phase:s.phase}:i?{phase:`known`,item:i[n]}:{phase:`checking`},enable:e=>f.current(e)}}var z=v();function he(e){return e===`paste-failed`?`companionSurface.offerPasteFailed`:`companionSurface.offerNowhere`}var ge=260;function _e({offer:e,growth:t=`right`,cardGrowth:r=`up`,avatarBox:i=n,optionsBox:o=n,cardRef:s,onAnswer:c}){let{t:l}=S(),u=e.reason===`claimed`?l(`companionSurface.offerVersion`):l(he(e.reason)),{inUnits:d,avatarHalf:f,lineAt:p,edgeAt:m,introStepOff:h}=ce(i,o),g=d(h(r)),_=m(t,-f),v={top:p(r,0),transform:r===`up`?`translateY(calc(-100% - ${g}px))`:`translateY(${g}px)`};return(0,z.jsxs)(`div`,{ref:s,role:`group`,"aria-label":u,"data-companion-dictation-offer":!0,className:`absolute flex flex-col gap-2 rounded-2xl border border-white/10 bg-[#17181b]/95 px-3.5 py-3 shadow-lg shadow-black/40`,style:{width:ge,..._,...v},onPointerDown:e=>{e.stopPropagation()},children:[(0,z.jsx)(`p`,{className:`text-[11px] font-medium tracking-wide text-white/45 uppercase select-none`,children:u}),(0,z.jsx)(a,{className:`max-h-40 flex-col`,size:20,fadeEdges:`end`,hideScrollBar:!0,children:(0,z.jsx)(`p`,{dir:`auto`,className:`text-[13px] leading-[1.45] text-white/90`,children:e.text})}),(0,z.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-1 pt-0.5`,children:[(0,z.jsx)(`button`,{type:`button`,className:`h-7 rounded-full px-2.5 text-[12px] text-white/55 transition-colors hover:bg-white/10 hover:text-white/80`,onClick:()=>c?.(`dismiss`),children:e.reason===`claimed`?l(`companionSurface.notNow`):l(`companionSurface.offerDiscard`)}),e.reason===`claimed`?(0,z.jsx)(`button`,{type:`button`,className:`h-7 rounded-full px-2.5 text-[12px] text-white/70 transition-colors hover:bg-white/10 hover:text-white`,onClick:()=>c?.(`quit`),children:l(`companionSurface.offerQuit`,{app:e.app})}):null,(0,z.jsx)(`button`,{type:`button`,className:`h-7 rounded-full bg-white/15 px-3 text-[12px] text-white transition-colors hover:bg-white/25`,onClick:()=>c?.(e.reason===`claimed`?`use`:`copy`),children:e.reason===`claimed`?l(`companionSurface.offerUse`):l(`companionSurface.offerCopy`)})]})]})}var ve={microphone:{action:`companionIntro.permission.microphoneAction`,body:`companionIntro.permission.microphoneBody`},inputMonitoring:{action:`companionIntro.permission.openSettings`,body:`companionIntro.permission.shortcutBody`},screen:{action:`companionIntro.permission.screenAction`,body:`companionIntro.permission.screenBody`}};function ye({permission:e}){let{t}=S(),n=(0,L.useRef)(null),{state:r}=e,i=r.phase===`known`?r.item:null,a=r.phase===`checking`||r.phase===`requesting`,o=fe(e.kind,i),c=i?.status===`restricted`,l=r.phase===`error`||i?.error!==void 0,u=ve[e.kind];return(0,z.jsxs)(`div`,{ref:n,className:`flex min-h-0 flex-1 flex-col gap-3 overflow-y-auto`,children:[(0,z.jsx)(`p`,{className:`text-[14px] leading-[1.45] text-white/70`,children:t(u.body)}),(0,z.jsx)(s,{size:`compact`,shape:`pill`,className:`self-start bg-white/15 text-white hover:bg-white/25`,loading:a,disabled:c||r.phase===`checking`,onClick:()=>{let t=n.current?.getBoundingClientRect();e.enable(t?{x:t.x,y:t.y,width:t.width,height:t.height}:void 0)},children:t(o?`companionIntro.permission.openSettings`:u.action)}),(0,z.jsx)(`p`,{role:`status`,className:`text-[12px] leading-tight text-white/60`,children:c?t(`companionIntro.permission.restricted`):l?t(`companionIntro.permission.error`):o?t(e.kind===`microphone`?`companionIntro.permission.microphoneSettingsHint`:`companionIntro.permission.settingsHint`):a?t(`companionIntro.permission.waiting`):e.kind===`microphone`?t(`companionIntro.permission.microphonePromptHint`):null})]})}var be=3e3,xe={idle:{title:`companionIntro.idle.title`,titleNamed:`companionIntro.idle.titleNamed`,body:`companionIntro.idle.body`},meet:{title:`companionIntro.idle.title`,titleNamed:`companionIntro.idle.titleNamed`,body:`companionIntro.meet.body`},talk:{title:`companionIntro.talk.title`,body:`companionIntro.talk.body`},key:{title:`companionIntro.key.title`},share:{title:`companionIntro.share.title`,body:`companionIntro.share.body`},draw:{title:`companionIntro.draw.title`,body:`companionIntro.draw.body`},mute:{title:`companionIntro.mute.title`,body:`companionIntro.mute.body`},try:{title:`companionIntro.try.title`,body:`companionIntro.try.body`}},B=e=>f(e),V=e=>({phase:`listening`,label:e,accentHex:``,muted:!1,outputMuted:!1,detail:``,approvalRequestId:``,assistantName:``}),H={share:`⌥S`,draw:`⌥D`,muteMicrophone:`⌥M`,muteAssistant:`⌥A`},Se={share:{icon:(0,z.jsx)(ue,{className:`size-5`}),shortcut:H.share},draw:{icon:(0,z.jsx)(M,{className:`size-5`}),shortcut:H.draw},mute:{icon:(0,z.jsx)(P,{className:`size-5`}),shortcut:H.muteMicrophone}},Ce=e=>B(e)===void 0?null:`call`,we=(e,t)=>B(e)===void 0?null:{call:V(t),sharing:e!==`share`};function Te({beat:e,growth:t=`right`,cardGrowth:i=`up`,avatarBox:a=n,optionsBox:o=n,accentHex:s,assistantName:l,cardRef:u,onAdvance:d,permission:p=null,greeted:m=!1,voiceKeyTaps:h=0,chordPresses:_=0,chordControl:v}){let{t:y}=S(),b=g.indexOf(e),x=b===g.length-1,C=b<=0,w=xe[e],T=R(p),ee=p?.state.phase===`checking`,E=r[e],D=f(e),O=D===void 0?void 0:Se[D],[k,A]=(0,L.useState)(!1);(0,L.useEffect)(()=>{A(!1)},[e]),(0,L.useEffect)(()=>{if(!k)return;let e=setTimeout(()=>{A(!1)},be);return()=>{clearTimeout(e)}},[k]),(0,L.useEffect)(()=>{A(!1)},[h]);let[te,j]=(0,L.useState)(h),[ne,M]=(0,L.useState)(_),[re,ie]=(0,L.useState)(e);re===e?h<te&&j(h):(ie(e),j(h),M(_));let ae=Math.min(Math.max(h-te,0),2);_<ne&&M(_);let oe=D!==void 0&&v===D&&_>ne,{inUnits:P,avatarHalf:F,gap:I,lineAt:se,edgeAt:le,introStepOff:ue}=ce(a,o),de=i===`down`||B(e)===void 0?P(ue(i)):P(F+I)+22+P(F)+6,fe=le(t,-F),pe={top:se(i,0),transform:i===`up`?`translateY(calc(-100% - ${de}px))`:`translateY(${de}px)`};return(0,z.jsxs)(`div`,{ref:u,role:`group`,"aria-label":y(`companionIntro.ariaLabel`),className:`absolute flex flex-col rounded-2xl border border-white/10 bg-[#17181b]/95 p-5 shadow-lg shadow-black/40`,style:{width:320,height:224,...fe,...pe},onPointerDown:e=>{e.stopPropagation()},children:[(0,z.jsx)(`button`,{type:`button`,"aria-label":y(`companionIntro.close`),className:`absolute top-2 right-2 flex size-6 items-center justify-center rounded-full text-white/45 transition-colors hover:bg-white/10 hover:text-white/80`,onClick:()=>d?.(`dismiss`),children:(0,z.jsx)(N,{className:`size-3.5`})}),(0,z.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-2`,children:[(0,z.jsx)(`p`,{className:`pr-6 text-[16px] leading-tight font-medium text-white`,children:(0,z.jsx)(`span`,{className:`line-clamp-2`,children:`titleNamed`in w&&l!==void 0?y(w.titleNamed,{name:l}):y(w.title)})}),ee?null:T&&p!==null?(0,z.jsx)(ye,{permission:p}):(0,z.jsxs)(z.Fragment,{children:[`body`in w?(0,z.jsx)(`p`,{className:`text-[14px] leading-[1.45] text-white/70`,children:y(e===`talk`&&m?`companionIntro.talk.greeted`:w.body)}):null,e===`talk`&&(0,z.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,z.jsx)(`span`,{"data-avatar-stage":!0,className:`block size-11`,"aria-hidden":!0})}),e===`key`&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`p`,{className:`text-[14px] leading-[1.45] text-white/70`,children:y(k?`companionIntro.key.scolded`:`companionIntro.talk.gesture`)}),(0,z.jsx)(`div`,{className:`flex flex-1 items-center justify-center`,children:(0,z.jsx)(U,{label:`fn`,taps:ae,scolded:k,take:()=>{A(!0)}})})]}),e===`try`&&(0,z.jsxs)(z.Fragment,{children:[(0,z.jsxs)(`div`,{className:`flex flex-1 items-center justify-center gap-3`,children:[(0,z.jsx)(`span`,{"data-avatar-stage":!0,className:`block size-11`,"aria-hidden":!0}),(0,z.jsx)(U,{label:`fn`,taps:ae,scolded:k,take:()=>{A(!0)}})]}),(0,z.jsx)(`p`,{className:`text-center text-[11px] leading-tight text-white/45`,children:y(k?`companionIntro.key.scolded`:`companionIntro.try.how`)})]}),O!==void 0&&(0,z.jsxs)(`div`,{className:`flex flex-1 items-center justify-center gap-4`,children:[(0,z.jsxs)(`div`,{className:`flex flex-col items-center gap-1.5`,children:[(0,z.jsx)(`span`,{className:`flex size-10 items-center justify-center rounded-xl bg-white/10 text-white/85`,children:O.icon}),(0,z.jsx)(`span`,{className:`text-[10px] leading-none text-white/40`,children:y(`companionIntro.call.click`)})]}),(0,z.jsxs)(`div`,{className:`flex flex-col items-center gap-1.5`,children:[(0,z.jsx)(`span`,{className:`flex h-10 items-center rounded-xl border px-3 text-[13px] font-medium transition-colors ${oe?`border-emerald-300/90 bg-emerald-400/55 text-emerald-50`:`border-white/15 bg-white/10 text-white/85`}`,children:O.shortcut}),(0,z.jsx)(`span`,{className:`text-[10px] leading-none text-white/40`,children:y(`companionIntro.call.shortcut`)})]})]})]})]}),(0,z.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-2 pt-2`,children:[(0,z.jsx)(`div`,{className:`flex items-center gap-1`,"aria-hidden":!0,children:c.map(e=>(0,z.jsx)(`span`,{className:`size-1.5 rounded-full transition-colors`,style:{backgroundColor:e===E?s??`#5eead4`:`rgba(255,255,255,.2)`}},e))}),(0,z.jsxs)(`div`,{className:`flex items-center gap-1`,children:[C?null:(0,z.jsx)(`button`,{type:`button`,className:`h-8 whitespace-nowrap rounded-full px-3 text-[14px] text-white/60 transition-colors hover:bg-white/10 hover:text-white`,onClick:()=>d?.(`back`),children:y(`companionIntro.back`)}),(0,z.jsx)(`button`,{type:`button`,className:`h-8 whitespace-nowrap rounded-full bg-white/15 px-3 text-[14px] text-white transition-colors hover:bg-white/25`,onClick:()=>d?.(`next`),children:y(x?`companionIntro.done`:T&&!ee?`companionIntro.permission.skip`:`companionIntro.next`)})]})]})]})}function U({label:e,taps:t=0,scolded:n=!1,take:r}){let i=t>=2?`border-emerald-300/90 bg-emerald-400/55 text-emerald-50`:t===1?`border-emerald-400/70 bg-emerald-400/20 text-emerald-100`:`border-white/20 bg-white/10 text-white/85`,a=(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(w,{className:`size-4`,"aria-hidden":!0}),(0,z.jsx)(`span`,{className:`absolute bottom-1 left-1.5 text-[9px] leading-none opacity-70`,"aria-hidden":!0,children:e})]}),o=`relative inline-flex size-11 items-center justify-center rounded-lg border font-medium shadow-[inset_0_-2px_0_rgba(0,0,0,.4)] transition-[color,background-color,border-color,transform] ${i} ${n?`scale-90 opacity-70`:``}`;return r===void 0?(0,z.jsx)(`span`,{className:o,"aria-label":e,children:a}):(0,z.jsx)(`button`,{type:`button`,className:`${o}${t===0?`hover:border-white/40 hover:bg-white/20`:``}`,"aria-label":e,onClick:r,children:a})}var Ee=e=>e.filter(e=>e.state===`running`),W=e=>e.filter(e=>e.state===`waiting`),De=e=>({"--companion-ring-accent":e});function Oe({size:e,still:t=!1}){return(0,z.jsxs)(`svg`,{width:e,height:e,viewBox:`0 0 16 16`,className:`shrink-0 ${t?``:`companion-work-spin`}`,"aria-hidden":!0,children:[(0,z.jsx)(`circle`,{cx:`8`,cy:`8`,r:`6`,fill:`none`,stroke:`var(--companion-ring-accent)`,strokeOpacity:`0.2`,strokeWidth:`2`}),(0,z.jsx)(`circle`,{cx:`8`,cy:`8`,r:`6`,fill:`none`,stroke:`var(--companion-ring-accent)`,strokeWidth:`2`,strokeLinecap:`round`,strokeDasharray:t?void 0:`10 28`,strokeOpacity:t?.6:void 0})]})}function ke({state:e}){return e===`done`?(0,z.jsx)(D,{className:`companion-work-pop size-3.5 shrink-0 text-[var(--companion-ring-accent)]`,"aria-hidden":!0}):(0,z.jsx)(N,{className:`companion-work-pop size-3.5 shrink-0 text-white/50`,"aria-hidden":!0})}function Ae(e){let t=Math.max(0,Math.floor(e/1e3));return`${Math.floor(t/60)}:${(t%60).toString().padStart(2,`0`)}`}function G(){let[e,t]=(0,L.useState)(()=>Date.now());return(0,L.useEffect)(()=>{let e=window.setInterval(()=>{t(Date.now())},1e3);return()=>{window.clearInterval(e)}},[]),e}function je({work:e,accentHex:t}){let{t:n}=S(),r=G(),i=e.slice(0,5),a=e.length-i.length;return(0,z.jsxs)(`div`,{className:`flex w-full min-w-[300px] flex-col gap-1.5 px-4 py-3 text-[12px] text-white/85`,style:De(t),"data-companion-work-shelf":!0,children:[i.map(e=>(0,z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[e.state===`running`||e.state===`waiting`?(0,z.jsx)(Oe,{size:14,still:e.state===`waiting`}):(0,z.jsx)(ke,{state:e.state}),(0,z.jsx)(`span`,{className:`max-w-[55%] shrink-0 truncate font-medium ${e.state===`done`||e.state===`failed`?`text-white/55`:``}`,children:e.title}),(0,z.jsx)(`span`,{className:`companion-work-fade min-w-0 flex-1 truncate text-white/50`,children:e.state===`running`?e.step:e.state===`waiting`?n(`companionSurface.workWaitingStep`):e.state===`done`?n(`companionSurface.workDone`):n(`companionSurface.workStopped`)},e.state===`running`?e.step:e.state),e.kind===`subagent`?(0,z.jsx)(`span`,{className:`shrink-0 text-[11px] text-white/40 tabular-nums`,children:Ae(r-e.startedAt)}):null]},e.id)),a>0?(0,z.jsx)(`div`,{className:`pl-[22px] text-[11px] text-white/40`,children:n(`companionSurface.workMore`,{count:a})}):null]})}var Me={min:3,max:10},Ne=(e=Math.random)=>{let t=e();return t<1/3?`top`:t<2/3?`topLeft`:`topRight`},Pe=1600,Fe=.22,Ie=.04,Le=4,Re=(e,t)=>{let n=Math.min(.95,Math.max(.25,e.eyeCenterFrac+e.eyeHalfFrac+Ie)),r=Math.min(t,24,14/n),i=r*n;return{size:r,exposed:i,clip:{width:r+2*Le,height:i+Le},rest:i+2}},ze=(e,t=Math.random)=>(e.min+t()*(e.max-e.min))*1e3;function Be(e,t=Me){let[n,r]=(0,L.useState)(0),{min:i,max:a}=t;return(0,L.useEffect)(()=>{if(!e)return;let t,n=()=>{t=setTimeout(()=>{r(e=>e+1),n()},ze({min:i,max:a}))};return n(),()=>{clearTimeout(t)}},[e,i,a]),n}var Ve=(e,t,n={width:0,height:0})=>{let r=e===`topLeft`?n.width/4:e===`topRight`?n.width*3/4:n.width/2;return{slot:{width:t.width,height:t.height,bottom:`100%`,left:r-t.width/2}}};function He({character:e,capsule:t,enabled:n,held:r=!1,edge:a,interval:o=Me,className:s,style:c}){let l=x(),u=(0,L.useMemo)(()=>m(i,e),[e]),d=Be(n&&!r&&!l&&u!==null,o),[f,h]=(0,L.useState)(!1),[g,_]=(0,L.useState)(`top`);if((0,L.useEffect)(()=>{if(d===0)return;_(Ne()),h(!0);let e=setTimeout(()=>{h(!1)},Pe);return()=>{clearTimeout(e)}},[d]),u===null||l)return null;let v=Re(u,t.width),y=r||f,S=a??g,C=Ve(S,v.clip,t);return(0,z.jsx)(`div`,{className:`companion-peek ${s??``}`,style:{width:t.width,height:t.height,...c},"data-risen":y,"data-edge":S,"aria-hidden":!0,children:(0,z.jsx)(`div`,{className:`absolute`,style:C.slot,children:(0,z.jsx)(`div`,{className:`absolute inset-0 overflow-hidden`,children:(0,z.jsx)(b.div,{className:`absolute left-1/2`,style:{width:v.size,height:v.size,marginLeft:-v.size/2,top:v.clip.height-v.exposed},initial:{y:v.rest},animate:{y:y?0:v.rest},transition:r?{duration:0}:y?{type:`spring`,stiffness:280,damping:14}:{duration:Fe,ease:`easeIn`},children:(0,z.jsx)(p,{components:i,traits:e,size:v.size})})})})})}var Ue=(0,L.createContext)(`above`),We=`#5eead4`,Ge=new Set([`transcribing`,`thinking`,`speaking`]),K=28,q={idle:{width:64,height:14},closing:K,rim:2,bloom:4},Ke=q.idle,qe=(e,t,n)=>[`inset 0 0 0 ${t}px color-mix(in srgb, ${e} 78%, transparent)`,`0 0 ${n}px color-mix(in srgb, ${e} 85%, transparent)`,`0 0 ${n*4}px color-mix(in srgb, ${e} 42%, transparent)`,`0 8px 24px rgba(0, 0, 0, 0.45)`].join(`, `),Je=244,Ye=200,J=120,Xe=32,Ze={watching:40,summary:220,dictating:Je+32,offer:Ye+32,call:4+J+180},Qe=84,$e={width:28,height:Qe+140+20};function et({phase:e,assistantName:t=``,accentHex:r=We,avatarSrc:i,character:a,hovered:o=!1,growth:s=`right`,avatarBox:c=n,optionsBox:l=n,cardGrowth:u=`up`,dock:d=`bottom`,rootRef:f,restingPillRef:p,avatarRef:m,onSurfacePointerDown:h,onSurfaceContextMenu:g,spotlight:_,avatarStaged:v=!1,avatarTucked:y=!1,onWatch:b,onTeach:C,picking:w=!1,sharing:T=!1,shareEnabled:ee=!1,sharePicking:E=!1,onShare:D,onStopShare:O,annotating:k=!1,annotationTool:A,onAnnotationTool:te,drawToolsRef:j,onAnnotate:ne,marked:M=!1,onClearMarks:re,openPicker:ie,onPicker:N,shortcuts:ae,onAvatarClick:oe,working:P=!1,watching:F=!1,watchRetro:I,onWatchRetro:se,dictationOffer:le,offer:ue,watchEnabled:de=!1,dictating:fe,dictationText:pe=``,call:R,onControl:me,intro:he,picker:ge,prompt:_e,promptRef:ve,promptsDeferred:ye=0,onReviewPrompts:be,onWorkShelfChange:xe}){let{t:B}=S(),V=e===`call`?R?.work:void 0,H=V!==void 0&&V.length>0,[Se,Ce]=(0,L.useState)(!1);(0,L.useEffect)(()=>{H||Ce(!1)},[H]);let we=d===`left`||d===`right`?void 0:_e,Te=we==null?Se&&H:!1;(0,L.useEffect)(()=>{xe?.(Te)},[xe,Te]);let U=(0,L.useMemo)(()=>we??(Se&&H?(0,z.jsx)(je,{work:V,accentHex:r}):void 0),[we,Se,H,V,r]),Ee=e!==`resting`,W=e===`call`||e===`dictating`||e===`offer`||e===`summary`||e===`watching`,De=(0,L.useRef)(null),[Oe,ke]=(0,L.useState)(null),Ae=_===`talk`?void 0:_;(0,L.useEffect)(()=>{if(Ae===void 0){ke(null);return}return nt(De,`[data-control="${Ae}"]`,e=>{ke(e.x)})},[Ae,e,T]);let[G,Me]=(0,L.useState)(null);(0,L.useEffect)(()=>{if(!v){Me(null);return}return nt(De,`[data-avatar-stage]`,Me)},[v,e]);let[Ne,Pe]=(0,L.useState)(!1);(0,L.useEffect)(()=>{if(e!==`hover`){Pe(!1);return}let t=setTimeout(()=>{Pe(!0)},500);return()=>{clearTimeout(t)}},[e]);let Fe=he==null?_===`talk`||e===`hover`&&Ne:!1,Ie=I===`pending`,Le=P||R!==void 0&&Ge.has(R.phase),Re=x(),ze=(0,L.useRef)(null),[Be,Ve]=(0,L.useState)(null),He=(0,L.useRef)({width:0,height:0});(0,L.useLayoutEffect)(()=>{let e=ze.current;if(!e)return;let t=()=>{Ve({width:e.scrollWidth-He.current.width,height:e.scrollHeight-He.current.height})};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[e]);let{scale:K,avatarRel:Ke,avatarHalf:Je,gap:Ye,inUnits:J,lineAt:Xe,edgeAt:Qe}=ce(c,l),et=e===`call`,Y=et&&(d===`left`||d===`right`),tt=Y?d===`left`?`right`:`left`:`above`,X=W?Y?(Be?.width??$e.width)+16:n+(Be?.width??Ze[e])+8:0,dt=W?n+(Be?.height??$e.height)+8:0,Z=et&&U!=null,pt=(0,L.useRef)(null),[mt,ht]=(0,L.useState)({width:0,height:0});(0,L.useLayoutEffect)(()=>{let e=pt.current;if(!Z||e===null)return;let t=()=>{let t=e.getBoundingClientRect();ht({width:Math.ceil(t.width/K),height:Math.ceil(t.height/K)})};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[Z,U,K]);let gt=Z&&!Y?Math.max(X,mt.width):X,_t=Z&&Y?Math.max(dt,mt.height):dt,vt=Y?_t-dt:gt-X;(0,L.useLayoutEffect)(()=>{He.current=Y?{width:0,height:vt}:{width:vt,height:0}},[vt,Y]);let Q=Y?`50%`:Xe(u,0),yt=Qe(s,s===`left`?l/2:-(l/2)),bt=c/n,xt=Ee?{width:q.closing*bt,height:q.closing*bt}:q.idle,St=he!=null,Ct=et?{width:gt,...Y?{height:_t}:{},left:`50%`,top:Q,transform:`translate(-50%, -50%)`,transitionTimingFunction:`cubic-bezier(.2,.8,.2,1)`}:{width:X,...yt,top:Q,transform:`translateY(-50%)`,transitionTimingFunction:`cubic-bezier(.2,.8,.2,1)`},$=G===null?Oe!==null&&!Y?`${Oe}px`:et&&!Y?`calc(50% - ${gt/2-n/2}px)`:`50%`:`${G.x}px`,wt=G===null?Oe!==null&&!Y?`calc(${Q} - ${J(Je+Ye)+22}px)`:Y?`calc(50% - ${_t/2-n/2}px)`:Q:`${G.y}px`;return(0,z.jsxs)(`div`,{ref:De,className:`absolute top-0 left-0 origin-top-left`,style:{width:`${100/K}%`,height:`${100/K}%`,transform:`scale(${K})`},children:[Z?(0,z.jsx)(ut,{dock:d,top:Q,width:Y?mt.width:gt,height:_t,barThickness:Y?X:44,promptRef:ve,children:U}):null,Z?(0,z.jsx)(`div`,{ref:pt,inert:!0,"aria-hidden":!0,"data-theme":`dark`,className:`pointer-events-none invisible absolute top-0 left-0 w-max ${Y?`max-w-[400px]`:`max-w-[640px]`}`,children:U}):null,(0,z.jsxs)(`div`,{className:`absolute flex cursor-grab items-center rounded-full duration-300 select-none active:cursor-grabbing ${Y?`flex-col transition-[width,height] will-change-[width,height]`:`h-11 transition-[width] will-change-[width]`} ${!et&&s===`left`?`justify-end`:``}`,style:Ct,onPointerDown:h,onContextMenu:g,ref:f,children:[(0,z.jsx)(`span`,{className:`absolute inset-0 rounded-full transition-opacity duration-200 ${Z?`bg-[#17181b]`:`border border-white/10 bg-[#17181b]/95 shadow-lg shadow-black/40`}`,style:{opacity:+!!W},"aria-hidden":!0}),(0,z.jsx)(`div`,{className:`relative flex shrink-0 items-center ${Y?`flex-col`:`h-11`}`,style:Y?{paddingTop:n,paddingBottom:8,paddingInline:8}:s===`left`?{paddingLeft:8,paddingRight:n}:{paddingLeft:n,paddingRight:8},children:(0,z.jsx)(`div`,{className:`flex items-center gap-1 overflow-hidden transition-opacity duration-200 ${Y?`min-h-0 flex-col`:`min-w-0`}`,ref:ze,inert:!W,style:{opacity:+!!W,transitionDelay:W?`120ms`:`0ms`},children:e===`call`?(0,z.jsx)(Ue.Provider,{value:tt,children:(0,z.jsx)(ft,{call:R,assistantName:t,spotlight:_,watching:F,watchEnabled:de,picking:w,sharing:T,shareEnabled:ee,sharePicking:E,annotating:k,marked:M,annotationTool:A,vertical:Y,drawToolsPlacement:Y?d===`left`?`right`:`left`:u===`up`?`above`:`below`,drawToolsRef:j,onAnnotationTool:te,onControl:me,onWatch:b,onTeach:C,onShare:D,onStopShare:O,onAnnotate:ne,onClearMarks:re,openPicker:ie,onPicker:N,pickerSide:Y?d===`left`?`right`:`left`:d===`top`?`below`:`above`,shortcuts:ae,promptsDeferred:ye,lineExtra:vt,onReviewPrompts:be,accentHex:r,workShelfOpen:Te,onToggleWorkShelf:()=>{Ce(e=>!e)}})}):e===`dictating`&&fe!==void 0?(0,z.jsx)(ot,{dictating:fe,dictationText:pe}):e===`summary`&&I!==void 0?(0,z.jsx)(lt,{retro:I,onWatchRetro:se}):e===`offer`&&le!==void 0?(0,z.jsx)(st,{offer:le}):(0,z.jsx)(ct,{watching:F,onWatch:b})})})]}),(0,z.jsx)(`div`,{className:`absolute cursor-grab active:cursor-grabbing`,style:{width:J(q.idle.width),height:J(q.idle.height),pointerEvents:Ee?`none`:void 0,left:`50%`,top:Q,transform:`translate(-50%, -50%)`},onPointerDown:h,onContextMenu:g,ref:p,"aria-hidden":!0,children:(0,z.jsx)(`div`,{className:`absolute top-1/2 left-1/2 rounded-full transition-[width,height,opacity] duration-300`,style:{width:J(xt.width),height:J(xt.height),transform:`translate(-50%, -50%)`,transitionTimingFunction:`cubic-bezier(.2,.8,.2,1)`,transitionProperty:Re?`opacity`:void 0,boxShadow:qe(r,J(q.rim),J(q.bloom)),opacity:Ee||G!==null||St&&!y?0:1}})}),(0,z.jsx)(it,{className:Fe?`opacity-100`:`opacity-0`,"data-companion-name":Fe?`shown`:`hidden`,style:{left:`50%`,top:Q,transform:`translate(-50%, calc(-100% - ${J(Je)}px - ${rt}px))`},label:B(`companionSurface.talk`)}),(0,z.jsx)(at,{label:B(e===`call`?`companionSurface.openCadet`:`companionSurface.talk`),accentHex:r,avatarSrc:i,character:a,attentive:o,busy:Le||F||Ie,collapsed:!Ee&&(!St||y),restingScale:n/c,style:{left:$,top:wt,zIndex:G===null?void 0:2,transform:`translate(-50%, -50%)${Ke===1?``:` scale(${Ke})`}`,transition:Re?void 0:Oe===null&&G===null?`left 300ms cubic-bezier(.2,.8,.2,1), top 300ms cubic-bezier(.2,.8,.2,1)`:`left 420ms cubic-bezier(.34,1.56,.64,1), top 420ms cubic-bezier(.34,1.56,.64,1)`},elementRef:m,onPointerDown:h,onContextMenu:g,onClick:oe}),he,ge,ue]})}var Y=`rgba(28, 28, 30, 0.55)`,tt=`backdrop-blur-md backdrop-saturate-150`,nt=(e,t,n)=>{let r=0,i=performance.now(),a=()=>{let o=e.current,s=o?.querySelector(t);if(o&&s){let e=o.getBoundingClientRect(),t=s.getBoundingClientRect(),r=e.width===0?1:o.offsetWidth/e.width;n({x:(t.left+t.width/2-e.left)*r,y:(t.top+t.height/2-e.top)*r})}performance.now()-i<500&&(r=requestAnimationFrame(a))};return a(),()=>{cancelAnimationFrame(r)}},rt=4;function it({className:e,style:t,label:n,shortcut:r,beak:i=`down`,...a}){return(0,z.jsxs)(`span`,{className:`pointer-events-none absolute rounded-md px-2 py-1 text-[11px] leading-4 font-medium whitespace-nowrap text-white/90 shadow-md shadow-black/30 transition-opacity duration-200 ${tt} ${e}`,style:{...t,backgroundColor:Y},"aria-hidden":!0,...a,children:[n,r===void 0?null:(0,z.jsx)(`span`,{className:`ml-1.5 font-normal text-white/60`,"data-shortcut":!0,children:r}),(0,z.jsx)(`span`,{className:`absolute ${i===`down`?`top-full left-1/2 h-1.5 w-2.5 -translate-x-1/2`:i===`left`?`top-1/2 right-full h-2.5 w-1.5 -translate-y-1/2`:`top-1/2 left-full h-2.5 w-1.5 -translate-y-1/2`} ${tt}`,style:{backgroundColor:Y,clipPath:i===`down`?`polygon(0 0, 100% 0, 50% 100%)`:i===`left`?`polygon(100% 0, 100% 100%, 0 50%)`:`polygon(0 0, 0 100%, 100% 50%)`},"aria-hidden":!0})]})}function at({accentHex:e,avatarSrc:t,character:n,busy:r=!1,attentive:a=!1,collapsed:o=!1,restingScale:s=1,label:c,style:l,elementRef:u,onPointerDown:d,onContextMenu:f,onClick:m}){let h=x();return(0,z.jsxs)(`div`,{role:`button`,"aria-label":c,className:`absolute grid size-11 cursor-grab place-items-center active:cursor-grabbing`,style:l,ref:u,onPointerDown:d,onContextMenu:f,onClick:m,children:[n===void 0?null:(0,z.jsx)(He,{character:n,capsule:Ke,enabled:o&&!r,className:`absolute top-1/2 left-1/2 transition-opacity duration-200`,style:{transform:`translate(-50%, -50%) scale(${s})`,opacity:+!!o}}),(0,z.jsx)(`div`,{className:`transition-[opacity,transform] duration-300`,style:{opacity:+!o,transform:o?`scale(0.35)`:`scale(1)`,transitionTimingFunction:`cubic-bezier(.2,.8,.2,1)`,transitionProperty:h?`opacity`:void 0},children:(0,z.jsx)(`div`,{className:`companion-avatar-bob relative grid place-items-center`,style:{animation:h?`none`:void 0},children:n===void 0?t===void 0?(0,z.jsx)(`span`,{className:`relative size-7 rounded-full drop-shadow-[0_1px_3px_rgba(0,0,0,0.55)]`,style:{background:e},"aria-hidden":!0}):(0,z.jsx)(`img`,{src:t,alt:``,draggable:!1,className:`relative size-7 rounded-full object-contain drop-shadow-[0_1px_3px_rgba(0,0,0,0.55)] [-webkit-user-drag:none]`}):(0,z.jsx)(`div`,{className:`relative drop-shadow-[0_1px_3px_rgba(0,0,0,0.55)]`,children:(0,z.jsx)(p,{components:i,traits:n,size:K,isAssistantBusy:r,attentive:a})})})})]})}function ot({dictating:e,dictationText:t}){let{t:n}=S(),r=t.trim();return(0,z.jsxs)(`div`,{className:`flex h-7 shrink-0 items-center gap-2 px-1`,children:[(0,z.jsx)(T,{className:`size-4 shrink-0`,"aria-hidden":!0}),r?(0,z.jsx)(`span`,{dir:`auto`,className:`flex justify-end overflow-hidden text-[12px] whitespace-nowrap text-white/85`,style:{width:Je},children:(0,z.jsx)(`span`,{className:`shrink-0`,children:r})}):(0,z.jsx)(`span`,{className:`truncate text-[12px] text-white/85`,style:{width:Je},children:n(e===`listening`?`companionSurface.dictating`:`companionSurface.dictatingTranscribing`)})]})}function st({offer:e}){let{t}=S();return(0,z.jsxs)(`div`,{className:`flex h-7 shrink-0 items-center gap-2 px-1`,children:[(0,z.jsx)(T,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,z.jsx)(`span`,{className:`truncate text-[12px] text-white/85`,style:{width:Ye},children:e.reason===`claimed`?t(`companionSurface.offerHeard`,{app:e.app}):t(he(e.reason))})]})}function ct({watching:e=!1,onWatch:t}){return(0,z.jsx)(z.Fragment,{children:e&&(0,z.jsx)(vt,{onWatch:t})})}function X({watching:e,watchEnabled:t,picking:n,dimmed:r,onWatch:i,onTeach:a}){let{t:o}=S();return t?(0,z.jsx)($,{icon:(0,z.jsx)(ne,{className:`size-4`}),label:o(`companionSurface.teach`),dimmed:r,pressed:e||n,onClick:e?i:a??i}):e?(0,z.jsx)(vt,{onWatch:i}):null}function lt({retro:e,onWatchRetro:t}){let{t:n}=S();return e===`pending`?(0,z.jsx)(`span`,{className:`ml-1 shrink-0 text-[12px] text-white/85`,children:n(`companionSurface.summarizing`)}):(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)($,{icon:(0,z.jsx)(re,{className:`size-4`}),label:n(`companionSurface.showSummary`),showLabel:!0,onClick:()=>{t?.(!0)}}),(0,z.jsx)($,{icon:(0,z.jsx)(N,{className:`size-4`}),label:n(`companionSurface.notNow`),showLabel:!0,onClick:()=>{t?.(!1)}})]})}function ut({dock:e,top:t,width:n,height:r,barThickness:i,promptRef:a,children:o}){let s=i/2,c=e===`top`?`below`:e===`left`?`right`:e===`right`?`left`:`above`,l=c===`left`||c===`right`,u=l?{left:`50%`,top:t,width:n+s,height:r,transform:c===`right`?`translate(0, -50%)`:`translate(-100%, -50%)`,[c===`right`?`paddingLeft`:`paddingRight`]:s}:{left:`50%`,top:t,width:n,transform:c===`below`?`translate(-50%, 0)`:`translate(-50%, -100%)`,[c===`below`?`paddingTop`:`paddingBottom`]:s},d={above:`rounded-t-[22px]`,below:`rounded-b-[22px]`,left:`rounded-l-[22px]`,right:`rounded-r-[22px]`}[c];return(0,z.jsxs)(`div`,{ref:a,"data-theme":`dark`,"data-shelf-side":c,className:`absolute`,style:u,onPointerDown:e=>{e.stopPropagation()},children:[(0,z.jsx)(`span`,{"aria-hidden":!0,className:`absolute inset-0 bg-[#17181b] shadow-lg shadow-black/40 ${d}`}),(0,z.jsx)(`span`,{"aria-hidden":!0,className:`absolute bg-white/10 ${l?`top-4 bottom-4 w-px`:`right-4 left-4 h-px`}`,style:{[dt[c]]:s}}),(0,z.jsx)(`div`,{className:`relative`,children:o})]})}var dt={above:`bottom`,below:`top`,left:`right`,right:`left`};function ft({call:e,assistantName:t,spotlight:n,watching:r,watchEnabled:i,picking:a,sharing:o,shareEnabled:s,sharePicking:c,annotating:l,marked:u,annotationTool:d,vertical:f,drawToolsPlacement:p,drawToolsRef:m,onAnnotationTool:h,onControl:g,onWatch:_,onTeach:v,onShare:y,onStopShare:b,onAnnotate:x,onClearMarks:C,openPicker:w,onPicker:T,pickerSide:ee,shortcuts:E,promptsDeferred:D=0,onReviewPrompts:O,lineExtra:A=0,accentHex:te,workShelfOpen:j,onToggleWorkShelf:ne}){let{t:M}=S();if(e===void 0)return(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(Z,{vertical:f,extra:A,text:t===``?M(`companionSurface.calling`):M(`companionSurface.callingNamed`,{name:t})}),(0,z.jsx)(X,{watching:r,watchEnabled:i,picking:a,onWatch:_,onTeach:v}),(0,z.jsx)(_t,{onControl:g})]});let re=e.work===void 0&&e.detail||e.label,N=e.work??[],oe=N.length>0,{muted:F,outputMuted:I}=e,se=e.assistantName;return(0,z.jsxs)(z.Fragment,{children:[oe?(0,z.jsx)(xt,{work:N,accentHex:te,open:j,onToggle:ne}):null,(0,z.jsx)(Z,{vertical:f,extra:A-(!f&&oe?Xe:0),text:re}),D>0?(0,z.jsx)(`button`,{type:`button`,"data-theme":`dark`,"aria-label":M(`companionPopover.pendingBadge`,{count:D}),className:`flex size-7 shrink-0 items-center justify-center rounded-full bg-[var(--system-negative-weak)] text-[13px] text-[var(--system-negative-strong)] transition-colors hover:bg-[var(--system-negative-hover)] hover:text-white`,onPointerDown:e=>{e.stopPropagation()},onClick:()=>{O?.()},children:D}):null,(0,z.jsx)(X,{watching:r,watchEnabled:i,picking:a,dimmed:n!==void 0,onWatch:_,onTeach:v}),(0,z.jsx)(pt,{sharing:o,shareEnabled:s,sharePicking:c,shortcut:s?E?.share:void 0,spotlit:n===`share`,dimmed:n!==void 0&&n!==`share`,onShare:y,onStopShare:b}),(0,z.jsx)(mt,{sharing:o,annotating:l,spotlit:n===`draw`,dimmed:n!==void 0&&n!==`draw`,shortcut:s?E?.draw:void 0,tool:d,placement:p,toolsRef:m,onAnnotate:x,onTool:h}),(0,z.jsx)(gt,{sharing:o,marked:u,dimmed:n!==void 0,onClearMarks:C}),(0,z.jsx)($,{icon:I?(0,z.jsx)(ae,{className:`size-4`}):(0,z.jsx)(ie,{className:`size-4`}),label:se===``?M(I?`companionSurface.unmuteAssistant`:`companionSurface.muteAssistant`):M(I?`companionSurface.unmuteAssistantNamed`:`companionSurface.muteAssistantNamed`,{name:se}),shortcut:E?.muteAssistant,spotlit:n===`mute`,dimmed:n!==void 0&&n!==`mute`,onClick:()=>{g?.(I?`unmuteAssistantAudio`:`muteAssistantAudio`)}}),(0,z.jsx)($,{icon:F?(0,z.jsx)(k,{className:`size-4`}):(0,z.jsx)(P,{className:`size-4`}),label:M(F?`companionSurface.unmuteMicrophone`:`companionSurface.muteMicrophone`),shortcut:E?.muteMicrophone,control:`mute`,spotlit:n===`mute`,dimmed:n!==void 0&&n!==`mute`,onClick:()=>{g?.(F?`unmuteMicrophone`:`muteMicrophone`)}}),(0,z.jsx)(Ct,{picker:`microphones`,label:M(`companionSurface.chooseMicrophone`),side:ee,open:w===`microphones`,onPicker:T}),(0,z.jsx)(_t,{dimmed:n!==void 0,onControl:g})]})}function Z({vertical:e,text:t,extra:n=0}){return e?(0,z.jsx)(`span`,{className:`mt-1 shrink-0 truncate text-[12px] text-white/85`,style:{height:Qe+n,writingMode:`vertical-rl`},"data-label":`line`,children:t}):(0,z.jsx)(`span`,{className:`ml-1 shrink-0 truncate text-[12px] text-white/85`,style:{width:J+n},"data-label":`line`,children:t})}function pt({sharing:e,shareEnabled:t,sharePicking:n,shortcut:r,spotlit:i,dimmed:a,onShare:o,onStopShare:s}){let{t:c}=S();return!t&&!e?null:(0,z.jsx)($,{icon:(0,z.jsx)(ue,{className:`size-4`}),label:c(`companionSurface.share`),shortcut:r,control:`share`,spotlit:i,dimmed:a,pressed:e||n,onClick:e?s:o})}function mt({sharing:e,annotating:t,shortcut:n,spotlit:r,dimmed:i,tool:a,placement:o,toolsRef:s,onAnnotate:c,onTool:l}){let{t:u}=S();return e?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)($,{icon:(0,z.jsx)(M,{className:`size-4`}),label:u(`companionSurface.draw`),shortcut:n,control:`draw`,spotlit:r,dimmed:i,pressed:t,className:`companion-draw-anchor`,onClick:()=>{c?.(!t)}}),t&&a!==void 0&&(0,z.jsx)(ht,{tool:a,placement:o,toolsRef:s,onTool:l})]}):null}function ht({tool:e,placement:t,toolsRef:n,onTool:r}){let{t:i}=S(),a=[{tool:`freehand`,icon:(0,z.jsx)(M,{className:`size-4`}),label:i(`companionSurface.drawFreehand`)},{tool:`line`,icon:(0,z.jsx)(de,{className:`size-4`}),label:i(`companionSurface.drawLine`)},{tool:`box`,icon:(0,z.jsx)(ee,{className:`size-4`}),label:i(`companionSurface.drawBox`)},{tool:`circle`,icon:(0,z.jsx)(C,{className:`size-4`}),label:i(`companionSurface.drawCircle`)}];return(0,z.jsx)(`div`,{className:`companion-draw-tools absolute flex items-center gap-0.5 rounded-full border border-white/10 bg-[#17181b]/95 p-0.5 shadow-lg shadow-black/40 companion-draw-tools-${t} ${t===`left`||t===`right`?`flex-col`:``}`,role:`group`,"aria-label":i(`companionSurface.drawTools`),"data-testid":`companion-draw-tools`,ref:n,onPointerDown:e=>{e.stopPropagation()},children:a.map(t=>(0,z.jsx)($,{icon:t.icon,label:t.label,pressed:e===t.tool,onClick:()=>{r?.(t.tool)}},t.tool))})}function gt({sharing:e,marked:t,dimmed:n,onClearMarks:r}){let{t:i}=S();return!e||!t?null:(0,z.jsx)($,{icon:(0,z.jsx)(le,{className:`size-4`}),label:i(`companionSurface.clearMarks`),dimmed:n,onClick:()=>{r?.()}})}function _t({dimmed:e,onControl:t}){let{t:n}=S();return(0,z.jsx)($,{icon:(0,z.jsx)(N,{className:`size-4`,strokeWidth:2.5}),label:n(`companionSurface.endSession`),tone:`negative`,dimmed:e,onClick:()=>{t?.(`endSession`)}})}function vt({onWatch:e}){let{t}=S();return(0,z.jsx)($,{icon:(0,z.jsx)(te,{className:`size-4`}),label:t(`companionSurface.stopTeaching`),onClick:e})}var Q=`-translate-y-[calc(50%+22px)]`,yt={right:`translate-x-[calc(50%+22px)]`,left:`-translate-x-[calc(50%+22px)]`},bt=e=>e===`above`?{className:Q,beak:`down`}:{className:yt[e],beak:e===`right`?`left`:`right`};function xt({work:e,accentHex:t,open:n,onToggle:r}){let{t:i}=S(),a=bt((0,L.useContext)(Ue)),o=Ee(e),s=W(e),c=o.length>0?o:s,l=e.at(-1),u=(c.length>0?c:e).map(e=>e.title).join(` · `);return(0,z.jsxs)(`button`,{type:`button`,"aria-label":o.length===0&&s.length>0?i(`companionSurface.workWaiting`,{count:s.length}):i(`companionSurface.workCount`,{count:o.length}),"aria-expanded":r===void 0?void 0:n,"data-control":`work`,disabled:r===void 0,className:`group flex h-7 shrink-0 items-center justify-center rounded-full px-1.5 transition-colors enabled:hover:bg-white/15 ${n?`bg-white/15`:``}`,style:{...De(t),width:Xe},onPointerDown:e=>{e.stopPropagation()},onClick:r,children:[(0,z.jsx)(`span`,{className:`relative grid size-5 place-items-center`,children:c.length>0?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(`span`,{className:`absolute inset-0 grid place-items-center`,children:(0,z.jsx)(Oe,{size:20,still:o.length===0})}),(0,z.jsx)(`span`,{className:`text-[10px] leading-none font-semibold text-white/90 tabular-nums`,children:c.length})]}):(0,z.jsx)(ke,{state:l?.state===`failed`?`failed`:`done`})}),n?null:(0,z.jsx)(it,{label:u,className:`opacity-0 group-hover:opacity-100 ${a.className}`,beak:a.beak,"data-label":`hover`})]})}var St={above:A,below:oe,left:O,right:E};function Ct({picker:e,label:t,side:n,open:r,onPicker:i}){if(i===void 0)return null;let a=St[n];return(0,z.jsx)($,{icon:(0,z.jsx)(a,{className:`size-3.5`,strokeWidth:2.25}),label:t,pressed:r,narrow:!0,onClick:()=>{i(e)}})}function $({icon:e,label:t,shortcut:n,tone:r,showLabel:i=!1,pressed:a,spotlit:o=!1,dimmed:s=!1,control:c,narrow:l=!1,className:u=``,onClick:d}){let f=bt((0,L.useContext)(Ue));return(0,z.jsxs)(`button`,{type:`button`,"aria-label":t,"aria-pressed":a,"data-control":c,onClick:d,onPointerDown:e=>{e.stopPropagation()},className:`group flex h-7 shrink-0 items-center justify-center gap-1.5 rounded-full text-[12px] transition-[background-color,opacity] duration-200 hover:bg-white/15 ${l?`-mx-1 px-0.5`:`px-2`} ${u} ${a===!0||o?`bg-white/15`:``} ${s?`opacity-35`:``} ${r===`negative`?`text-[#ff6b6b]`:r===`positive`?`text-[#5ee08a]`:`text-white/85`}`,children:[e,i?(0,z.jsx)(`span`,{children:t}):(0,z.jsx)(it,{label:t,shortcut:n,className:`opacity-0 group-hover:opacity-100 ${f.className}`,beak:f.beak,"data-label":`hover`})]})}export{we as a,_e as c,V as i,R as l,Te as n,Ce as o,H as r,B as s,et as t,me as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{G as t,LC as n,XC as r,fC as i,vS as a,zC as o}from"./app-CPkqAi_4.js";import{_ as s,f as c,t as l,x as u}from"./react-BJ4PZBJN.js";import{Jn as d,er as f,w as p}from"./vendor-D-45vVY0.js";import{D as m,tr as h}from"./icons-Dwi7aA1Y.js";import{n as g}from"./a2a-invite-Dy_-_EJu.js";import{r as _}from"./contacts-gateway-CjXsMIf5.js";var v=e(u(),1),y=l();function b(e){let t=e[0];return typeof t==`object`&&!!t&&t._id===`contactsGet`}function x(e){switch(e){case`expired`:case`not_found`:return`connectPage.errorExpired`;case`already_redeemed_by_other`:return`connectPage.errorAlreadyRedeemed`;case`sender_not_found`:return`connectPage.errorSenderNotFound`;case`not_platform_managed`:return`connectPage.errorNotPlatformManaged`;default:return null}}function S(){return(0,y.jsx)(C,{assistantId:t()})}function C({assistantId:e}){let{t}=p(`contacts`),l=c(),u=f(),[S]=s(),C=(0,v.useMemo)(()=>g(S),[S]),w=d({mutationFn:()=>{if(!C)throw Error(`Invalid invite link`);return _(e,{senderAssistantId:C.senderAssistantId,token:C.token})},onSuccess:e=>{e.success&&(u.invalidateQueries({predicate:e=>b(e.queryKey)}),e.alreadyConnected?i(t(`connectPage.alreadyConnected`)):i(t(`connectPage.connected`)),l(a.contacts.root))}}),T=(0,v.useCallback)(()=>{l(a.contacts.root)},[l]),E=(0,v.useCallback)(()=>{w.mutate()},[w]),D=(0,v.useMemo)(()=>{if(w.isError)return w.error instanceof Error?w.error.message:t(`connectPage.errorGeneric`);if(w.data&&!w.data.success){let e=x(w.data.errorCode);return e?t(e):w.data.error||t(`connectPage.errorGeneric`)}return null},[w.isError,w.error,w.data,t]);return C?(0,y.jsx)(`div`,{className:`flex min-h-full items-center justify-center p-6`,children:(0,y.jsx)(n,{className:`w-full max-w-md`,children:(0,y.jsxs)(`div`,{className:`flex flex-col gap-4 p-6`,children:[(0,y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,y.jsx)(h,{className:`h-6 w-6`,style:{color:`var(--content-secondary)`}}),(0,y.jsx)(o,{variant:`title-small`,children:t(`connectPage.title`)})]}),(0,y.jsx)(o,{variant:`body-medium-lighter`,style:{color:`var(--content-secondary)`},children:t(`connectPage.body`)}),D&&(0,y.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md p-3`,style:{backgroundColor:`var(--system-negative-weak)`,color:`var(--system-negative-strong)`},children:[(0,y.jsx)(m,{className:`h-4 w-4 shrink-0`}),(0,y.jsx)(o,{variant:`body-small-default`,children:D})]}),(0,y.jsxs)(`div`,{className:`flex gap-2 pt-2`,children:[(0,y.jsx)(r,{variant:`primary`,onClick:E,loading:w.isPending,disabled:w.isPending,children:w.isPending?t(`actions.connecting`):t(`actions.connect`)}),(0,y.jsx)(r,{variant:`outlined`,onClick:T,disabled:w.isPending,children:t(`actions.cancel`)})]})]})})}):(0,y.jsx)(`div`,{className:`flex min-h-full items-center justify-center p-6`,children:(0,y.jsx)(n,{className:`w-full max-w-md`,children:(0,y.jsxs)(`div`,{className:`flex flex-col gap-4 p-6`,children:[(0,y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,y.jsx)(m,{className:`h-6 w-6`,style:{color:`var(--system-negative-strong)`}}),(0,y.jsx)(o,{variant:`title-small`,children:t(`connectPage.invalidTitle`)})]}),(0,y.jsx)(o,{variant:`body-medium-lighter`,style:{color:`var(--content-secondary)`},children:t(`connectPage.invalidBody`)}),(0,y.jsx)(`div`,{className:`flex gap-2 pt-2`,children:(0,y.jsx)(r,{variant:`primary`,onClick:T,children:t(`connectPage.goToContacts`)})})]})})})}export{S as ConnectPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{$f as e,MS as t,PS as n,Qf as r,cv as i,ep as a,jS as o}from"./app-CPkqAi_4.js";async function s(e,r){let{data:i,error:s,response:c}=await a({path:{assistant_id:e},body:r,throwOnError:!1});if(t(c,s,`Failed to save contact`),!c.ok||!i?.contact)throw new o(c.status,n(s,c,`Failed to save contact`));return i.contact}async function c(r,i){let{error:a,response:s}=await e({path:{assistant_id:r,contact_id:i},throwOnError:!1});if(t(s,a,`Failed to delete contact`),!s.ok&&s.status!==204)throw new o(s.status,n(a,s,`Failed to delete contact`))}async function l(e,i){let{error:a,response:s}=await r({path:{assistant_id:e,channel_id:i},throwOnError:!1});if(t(s,a,`Failed to verify channel`),!s.ok)throw new o(s.status,n(a,s,`Failed to verify channel`))}async function u(e,t,n){let r=(await s(e,{id:t.id,displayName:t.displayName,channels:[{type:n.type,address:n.address}]})).channels.find(e=>e.type===n.type&&e.address.toLowerCase()===n.address.toLowerCase());if(!r)throw new o(409,`That account is already linked to another contact.`);if(r.status===`blocked`)throw new o(409,`That account is blocked for this contact. Unblock it before linking.`);await l(e,r.id)}async function d(e,r){let{data:a,error:s,response:c}=await i.post({url:`/v1/assistants/{assistant_id}/a2a/invites/redeem/`,path:{assistant_id:e},body:{sender_assistant_id:r.senderAssistantId,token:r.token},headers:{"Content-Type":`application/json`},throwOnError:!1});if(t(c,s,`Failed to redeem A2A invite`),!c.ok)throw new o(c.status,n(s,c,`Failed to redeem A2A invite`));return{success:a?.success??!0,alreadyConnected:a?.already_connected,error:a?.error,errorCode:a?.error_code}}export{l as a,s as i,u as n,d as r,c as t};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Dp as t,Ep as n,Fm as r,G as i,Jh as a,LC as o,Pm as s,TC as c,Tp as l,UC as u,XC as d,Z as f,dC as p,fC as m,jC as h,lC as g,lp as _,nu as v,pC as y,qf as b,qh as x,tu as S,tw as C,ua as ee,up as w,vS as T,w as te,wv as ne,zC as E}from"./app-CPkqAi_4.js";import{_ as re,d as ie,f as ae,h as oe,r as se,t as ce,x as le}from"./react-BJ4PZBJN.js";import{E as D,Jn as O,Zn as ue,er as de,k,w as A}from"./vendor-D-45vVY0.js";import{Bi as j,Dn as fe,Kt as pe,Lt as me,Ra as he,Vn as ge,Ya as M,Yn as N,Zt as P,_a as F,_t as _e,br as I,tr as ve,vt as L,x as R,za as ye}from"./icons-Dwi7aA1Y.js";import{t as z}from"./ellipsis-vertical-DXwTXFid.js";import{t as B}from"./detail-card-6rKFaFAS.js";import{t as V}from"./mutation-error-B0xRAwtR.js";import{a as be,i as xe,n as H,r as Se,t as Ce}from"./use-invite-link-dialog-BIai7wEJ.js";import{t as we}from"./use-side-list-room-BJ5IwZkh.js";import{t as Te}from"./intelligence-layout-slots-store-CG-bJbCv.js";import{t as Ee}from"./use-edge-swipe-back-CtH4IJQV.js";import{a as De,i as Oe,n as ke,t as Ae}from"./contacts-gateway-CjXsMIf5.js";import{n as je,t as Me}from"./list-detail-navigation-ChFNCRwF.js";var Ne=M(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Pe=M(`git-merge`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M6 21V9a9 9 0 0 0 9 9`,key:`7kw0sc`}]]),U=e(le(),1),Fe=new Set([`slack`]);function Ie(e){return e.status===`verified`||e.status===`active`&&e.verifiedAt!=null}function Le(e){switch(e){case`slack`:return`channelType.slack`;case`telegram`:return`channelType.telegram`;case`discord`:return`channelType.discord`;case`whatsapp`:return`channelType.whatsapp`;case`a2a`:return`channelType.a2a`;case`phone`:return`channelType.phone`;case`email`:return`channelType.email`;default:return null}}function Re(e){let t=Le(e.toLowerCase());return t?k(t,{ns:`contacts`}):e}var ze=`New Contact`;function W(e){return e===ze}var G=ce(),Be=new Set([`telegram`,`phone`,`cadet`,`whatsapp`,`slack`,`email`,`platform`,`a2a`]);function Ve(e){return Be.has(e)}function He(e){return typeof e.source==`string`&&e.source.startsWith(`plugin:`)}function Ue(e){return e.supportsVerification||He(e)}function We(e){return!!e?.address?.trim()}function K(e,t){return e.id===`a2a`?t&&t.status!==`revoked`?{kind:`connected`}:{kind:`setup`}:t!=null&&Ie(t)?{kind:`verified`}:t?.status===`blocked`?{kind:`none`}:t&&t.status!==`revoked`||He(e)?{kind:`unverified`}:{kind:`setup`}}function q(e,t,n){let r=[],i=new Set;if(e)for(let t of e)t.id===`a2a`&&!n||(r.push(t),i.add(t.id));for(let e of t)e.status===`revoked`||i.has(e.type)||e.type===`a2a`&&!n||Ve(e.type)&&(r.push({id:e.type,source:`default`,label:e.type.charAt(0).toUpperCase()+e.type.slice(1),subtitle:``,icon:`help-circle`,supportsVerification:!1,setupMessages:{guardian:``,contact:``}}),i.add(e.type));return r}function Ge({channelId:e,name:t,className:n,style:r}){let i=ee(e);if(i)return(0,U.createElement)(i,{size:16,className:n,style:r});switch(t){case`bot`:return(0,G.jsx)(F,{className:n,style:r});case`hash`:return(0,G.jsx)(I,{className:n,style:r});case`send`:return(0,G.jsx)(_e,{className:n,style:r});case`phone`:return(0,G.jsx)(pe,{className:n,style:r});case`mail`:return(0,G.jsx)(ge,{className:n,style:r});case`message-square`:return(0,G.jsx)(fe,{className:n,style:r});default:return(0,G.jsx)(Ne,{className:n,style:r})}}function Ke({contactChannels:e,availableChannels:t,channelsLoadFailed:n,a2aEnabled:r,setupLabel:i,verifyLoading:a,actionsDisabled:o,verifySubject:s=`self`,onSetupChannel:c,onVerifyChannel:l,onRevokeChannel:u,onLinkAccount:d}){let{t:f}=A(`contacts`),[m,h]=(0,U.useState)(null),[g,_]=(0,U.useState)(null),v=new Map;for(let t of e)t.status!==`revoked`&&(v.has(t.type)||v.set(t.type,t));let y=e=>{m&&(l?.(m.info.id,e),h(null))},b=q(t,e,r);return(0,G.jsxs)(G.Fragment,{children:[(0,G.jsxs)(`div`,{className:`flex flex-col`,children:[n&&(0,G.jsx)(`div`,{className:`px-1 py-2 text-sm`,style:{color:`var(--content-secondary)`},role:`status`,children:f(`contactChannelsSection.loadFailed`)}),b.map((e,t)=>{let n=v.get(e.id);return(0,G.jsxs)(`div`,{children:[t>0&&(0,G.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,G.jsx)(qe,{info:e,existing:n,setupLabel:i??f(`contactChannelsSection.setupDefault`),verifyLoading:a,actionsDisabled:o,onSetup:c?()=>c(e.id):void 0,onVerify:l&&Ue(e)?()=>h({info:e,existing:n}):void 0,onRevoke:u&&n?()=>_({channelId:n.id,channel:e}):void 0,onLinkAccount:d&&Fe.has(e.id)?()=>d(e.id):void 0})]},e.id)})]}),m?(0,G.jsx)(J,{info:m.info,existing:m.existing,verifySubject:s,onConfirm:y,onCancel:()=>h(null)}):null,g&&(0,G.jsx)(p,{open:!0,title:f(`contactChannelsSection.revokeConfirmTitle`,{channel:g.channel.label}),message:f(`contactChannelsSection.revokeConfirmMessage`),confirmLabel:f(`actions.revoke`),destructive:!0,onConfirm:()=>{u?.(g.channelId,g.channel.id),_(null)},onCancel:()=>_(null)})]})}function qe({info:e,existing:t,setupLabel:n,verifyLoading:r,actionsDisabled:i,onSetup:a,onVerify:o,onRevoke:s,onLinkAccount:c}){let{t:l}=A(`contacts`),u=K(e,t);return(0,G.jsxs)(`div`,{className:`flex items-center gap-3 py-4`,children:[(0,G.jsx)(Ge,{channelId:e.id,name:e.icon,className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),(0,G.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.label}),t?.address?(0,G.jsx)(`span`,{className:`truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t.address}):null,(0,G.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center gap-2`,children:u.kind===`connected`?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,G.jsx)(j,{className:`h-3 w-3`}),l(`channelStatus.connected`)]}),s?(0,G.jsx)(d,{variant:`danger`,onClick:s,disabled:i,children:l(`actions.revoke`)}):null]}):u.kind===`verified`?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,G.jsx)(j,{className:`h-3 w-3`}),l(`channelStatus.verified`)]}),s?(0,G.jsx)(d,{variant:`danger`,onClick:s,disabled:i,children:l(`actions.revoke`)}):null]}):u.kind===`unverified`?(0,G.jsx)(d,{variant:`outlined`,onClick:o,disabled:!o||r||i,children:l(r?`actions.verifying`:`actions.verify`)}):u.kind===`setup`?e.id===`a2a`?null:(0,G.jsxs)(G.Fragment,{children:[c?(0,G.jsxs)(d,{onClick:c,disabled:i,children:[(0,G.jsx)(ve,{className:`h-3.5 w-3.5`}),l(`contactChannelsSection.linkAccount`)]}):null,(0,G.jsx)(d,{variant:`outlined`,onClick:a,disabled:!a||i,children:n})]}):null})]})}function J({info:e,existing:t,verifySubject:n,onConfirm:r,onCancel:i}){let{t:a}=A(`contacts`),[o,s]=(0,U.useState)(t?.address?.trim()??``),l=(0,U.useRef)(null),u=(0,U.useId)(),f=o.trim();return We(t)?(0,G.jsx)(p,{open:!0,title:a(`contactChannelsSection.verifyConfirmTitle`,{channel:e.label}),message:a(n===`contact`?`contactChannelsSection.verifyConfirmMessageContact`:`contactChannelsSection.verifyConfirmMessageGuardian`,{channel:e.label}),confirmLabel:a(`actions.verify`),onConfirm:()=>{r()},onCancel:i}):(0,G.jsx)(y.Root,{open:!0,onOpenChange:e=>{e||i()},children:(0,G.jsx)(y.Content,{size:`sm`,hideCloseButton:!0,onOpenAutoFocus:e=>{e.preventDefault(),l.current?.focus()},onEscapeKeyDown:e=>{e.preventDefault(),e.stopPropagation(),i()},children:(0,G.jsxs)(`form`,{className:`flex flex-col`,onSubmit:e=>{e.preventDefault(),f.length!==0&&r(f)},children:[(0,G.jsx)(y.Header,{children:(0,G.jsx)(y.Title,{children:a(`contactChannelsSection.verifyConfirmTitle`,{channel:e.label})})}),(0,G.jsxs)(y.Body,{className:`flex flex-col gap-3`,children:[(0,G.jsx)(y.Description,{children:a(n===`contact`?`contactChannelsSection.verifyAddressMessageContact`:`contactChannelsSection.verifyAddressMessageGuardian`,{channel:e.label})}),(0,G.jsx)(c,{ref:l,id:u,label:a(`contactChannelsSection.verifyAddressLabel`),type:`text`,value:o,onChange:e=>{s(e.target.value)},placeholder:a(`contactChannelsSection.verifyAddressPlaceholder`),autoComplete:`off`,spellCheck:!1,fullWidth:!0})]}),(0,G.jsxs)(y.Footer,{children:[(0,G.jsx)(d,{variant:`outlined`,type:`button`,onClick:i,children:a(`actions.cancel`)}),(0,G.jsx)(d,{type:`submit`,disabled:f.length===0,children:a(`actions.verify`)})]})]})})})}function Y(e){return e===`none`||e===`low`||e===`medium`||e===`high`}function X(e,t){switch(t){case`none`:return e(`contactPermissions.preset.none`);case`low`:return e(`contactPermissions.preset.low`);case`medium`:return e(`contactPermissions.preset.medium`);case`high`:return e(`contactPermissions.preset.high`)}}function Je(e,t){if(t===null)return e(`contactPermissions.inheritDescription`);switch(t){case`none`:return e(`contactPermissions.description.none`);case`low`:return e(`contactPermissions.description.low`);case`medium`:return e(`contactPermissions.description.medium`);case`high`:return e(`contactPermissions.description.high`)}}function Ye(e){return e.role!==`guardian`&&e.contactType!==`assistant`}function Xe({contact:e,pending:t,onAutoApproveThresholdChange:n}){let{t:r}=A(`contacts`),i=Y(e.autoApproveThreshold)?e.autoApproveThreshold:null,a=i===null?null:f.find(e=>e.riskThreshold===i);return(0,G.jsx)(B,{title:r(`contactPermissions.title`),subtitle:r(`contactPermissions.subtitle`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,"data-testid":`contact-permissions`,children:[(0,G.jsx)(`div`,{style:{maxWidth:280},children:(0,G.jsx)(g,{value:a?.id??null,placeholder:r(`contactPermissions.inheritLabel`),disabled:t,onSelectNone:()=>{n(null)},onChange:e=>{let t=f.find(t=>t.id===e);t&&n(t.riskThreshold)},options:[{value:null,label:r(`contactPermissions.inheritLabel`)},...f.map(e=>{let t=e.icon;return{value:e.id,label:X(r,e.riskThreshold),icon:(0,G.jsx)(t,{className:`h-3.5 w-3.5`})}})]})}),(0,G.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:Je(r,i)})]})})}function Ze({role:e,contactType:t}){let{label:n,tone:r}=Qe(e,t);return(0,G.jsx)(h,{tone:r,children:n})}function Qe(e,t){return e===`guardian`?{label:`Guardian`,tone:`positive`}:t===`assistant`?{label:`Assistant`,tone:`negative`}:{label:`Human`,tone:`warning`}}function $e(e){return(0,G.jsx)(et,{...e},e.contact.id)}function et({contact:e,savePending:t,deletePending:n,verifyPending:r,mergePending:i=!1,canMerge:a=!1,availableChannels:o,channelsLoadFailed:s,a2aEnabled:l,onSave:u,onDelete:f,onMerge:m,onSetupChannel:h,onVerifyChannel:g,onRevokeChannel:_,onLinkAccount:v,pendingAutoApproveThreshold:y,onAutoApproveThresholdChange:b}){let{t:x}=A(`contacts`),S=W(e.displayName),[C,ee]=(0,U.useState)(S?``:e.displayName),[w,T]=(0,U.useState)(e.notes??``),[te,ne]=(0,U.useState)(!1),E=C.trim(),re=w.trim(),ie=S?``:e.displayName,ae=e.notes??``,oe=E!==ie||re!==ae,se=E.length>0&&oe&&!t&&!n,ce=S&&e.channels.length===0&&e.interactionCount===0,le=E||(S?x(`contact.draftName`):e.displayName),D=x(`contact.interactions`,{count:e.interactionCount});return(0,G.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,G.jsx)(B,{title:le,accessory:(0,G.jsx)(Ze,{role:e.role,contactType:e.contactType}),compactAccessory:!0,subtitle:D,children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,G.jsx)(c,{label:x(`contact.nameLabel`),type:`text`,value:C,onChange:e=>ee(e.target.value),placeholder:x(`contactDetailView.namePlaceholder`),autoFocus:S,disabled:t||n,fullWidth:!0}),(0,G.jsx)(c,{label:x(`contact.notesLabel`),type:`text`,value:w,onChange:e=>T(e.target.value),placeholder:x(`contactDetailView.notesPlaceholder`),disabled:t||n,fullWidth:!0}),(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,G.jsx)(d,{type:`button`,onClick:()=>u({displayName:E,notes:re}),disabled:!se,children:x(t?`actions.saving`:`actions.save`)}),m?(0,G.jsx)(d,{type:`button`,variant:`outlined`,onClick:m,disabled:!a||ce||oe||i||t||n,title:a?ce?x(`contactDetailView.mergeBlockedUnsavedDraft`):oe?x(`contact.mergeBlockedUnsaved`):void 0:x(`contact.mergeBlockedNoCandidates`),children:x(i?`actions.merging`:`actions.merge`)}):null,(0,G.jsx)(d,{type:`button`,variant:`danger`,onClick:()=>{ce?f():ne(!0)},disabled:n,children:x(n?`actions.deleting`:`contactDetailView.delete`)})]})]})}),(0,G.jsx)(B,{title:x(`contactDetailView.linkedAccountsTitle`),subtitle:x(`contactDetailView.linkedAccountsSubtitle`),children:(0,G.jsx)(Ke,{contactChannels:e.channels,availableChannels:o,channelsLoadFailed:s,a2aEnabled:l,verifyLoading:r,actionsDisabled:n,verifySubject:`contact`,onSetupChannel:h,onVerifyChannel:g,onRevokeChannel:_,onLinkAccount:v})}),Ye(e)&&b?(0,G.jsx)(Xe,{contact:e,pending:y||n,onAutoApproveThresholdChange:b}):null,(0,G.jsx)(p,{open:te,title:x(`contactDetailView.deleteConfirmTitle`,{name:le}),message:x(`contactDetailView.deleteConfirmMessage`),confirmLabel:x(`actions.delete`),destructive:!0,onConfirm:()=>{ne(!1),f()},onCancel:()=>ne(!1)})]})}function tt(e){return(0,G.jsx)(nt,{...e},`${e.survivor.id}:${e.open?`open`:`closed`}`)}function nt({open:e,survivor:t,candidates:n,pending:r,errorMessage:i,onMerge:a,onClose:o}){let{t:s}=A(`contacts`),[c,l]=(0,U.useState)(``),[u,f]=(0,U.useState)(null);(0,U.useEffect)(()=>{u&&!n.some(e=>e.id===u)&&f(null)},[n,u]);let p=(0,U.useMemo)(()=>{let e=c.trim().toLowerCase();return e?n.filter(t=>t.displayName.toLowerCase().includes(e)):n},[n,c]),m=u?n.find(e=>e.id===u)??null:null,h=ot(t);return(0,G.jsx)(y.Root,{open:e,onOpenChange:e=>{!e&&!r&&o()},children:(0,G.jsxs)(y.Content,{size:`md`,children:[(0,G.jsxs)(y.Header,{icon:Pe,children:[(0,G.jsx)(y.Title,{children:m?s(`contactMergeDialog.titlePicked`,{donor:m.displayName,survivor:h}):s(`contactMergeDialog.titlePicking`,{survivor:h})}),(0,G.jsx)(y.Description,{children:s(m?`contactMergeDialog.descriptionPicked`:`contactMergeDialog.descriptionPicking`)})]}),(0,G.jsxs)(y.Body,{className:`flex flex-col gap-3`,children:[m?(0,G.jsx)(it,{survivor:t,donor:m}):n.length===0?(0,G.jsx)(at,{}):(0,G.jsx)(Z,{search:c,onSearch:l,candidates:p,onPick:f}),i?(0,G.jsx)(E,{as:`p`,variant:`body-small-default`,className:`text-(--system-negative-strong)`,role:`alert`,children:i}):null]}),(0,G.jsx)(y.Footer,{children:m?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(d,{variant:`outlined`,onClick:()=>f(null),disabled:r,leftIcon:(0,G.jsx)(ye,{"aria-hidden":!0}),children:s(`actions.back`)}),(0,G.jsx)(d,{variant:`danger`,onClick:()=>a(m.id),disabled:r,children:s(r?`actions.merging`:`contactMergeDialog.confirm`)})]}):(0,G.jsx)(d,{variant:`outlined`,onClick:o,disabled:r,children:s(`actions.cancel`)})})]})})}function Z({search:e,onSearch:t,candidates:n,onPick:r}){let{t:i}=A(`contacts`);return(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(c,{type:`text`,value:e,onChange:e=>t(e.target.value),placeholder:i(`contactMergeDialog.searchPlaceholder`),leftIcon:(0,G.jsx)(L,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}),(0,G.jsx)(`div`,{className:`flex max-h-[320px] min-h-[120px] flex-col gap-1 overflow-y-auto`,role:`listbox`,"aria-label":i(`contactMergeDialog.listAriaLabel`),children:n.length===0?(0,G.jsx)(E,{as:`p`,variant:`body-small-default`,className:`px-3 py-4 text-center text-(--content-tertiary)`,children:i(`contactsList.noMatches`)}):n.map(e=>(0,G.jsx)(rt,{contact:e,onPick:()=>r(e.id)},e.id))})]})}function rt({contact:e,onPick:t}){let n=ct(e).join(` | `)||void 0;return(0,G.jsx)(u,{asChild:!0,children:(0,G.jsx)(`button`,{type:`button`,onClick:t,role:`option`,"aria-selected":`false`,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:(0,G.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,G.jsx)(`span`,{className:`truncate text-body-medium-default`,children:e.displayName}),n?(0,G.jsx)(`span`,{className:`truncate text-body-small-default text-(--content-tertiary)`,children:n}):null]})})})}function it({survivor:e,donor:t}){let{t:n}=A(`contacts`),r=ot(e),{moved:i,duplicates:a}=st(e,t);return(0,G.jsxs)(`ul`,{className:`flex flex-col gap-2 text-body-medium-lighter text-(--content-secondary)`,children:[(0,G.jsx)(`li`,{children:(0,G.jsx)(D,{i18nKey:`contactMergeDialog.donorDeleted`,ns:`contacts`,values:{donor:t.displayName},components:{donor:(0,G.jsx)(`span`,{className:`text-(--content-default)`})}})}),(0,G.jsx)(`li`,{children:n(`contactMergeDialog.channelsMoved`,{count:i.length,survivor:r,channels:i.map(e=>Re(e.type)).join(`, `)})}),a.length>0?(0,G.jsx)(`li`,{className:`text-(--content-tertiary)`,children:n(`contactMergeDialog.duplicatesSkipped`,{count:a.length,survivor:r})}):null,t.notes?(0,G.jsx)(`li`,{children:n(`contactMergeDialog.notesAppended`)}):null,(0,G.jsx)(`li`,{className:`text-(--content-tertiary)`,children:n(`contactMergeDialog.irreversible`)})]})}function at(){let{t:e}=A(`contacts`);return(0,G.jsx)(E,{as:`p`,variant:`body-medium-lighter`,className:`px-3 py-6 text-center text-(--content-tertiary)`,children:e(`contactMergeDialog.empty`)})}function ot(e){return e.role===`guardian`?!e.displayName||e.displayName.startsWith(`cadet-principal-`)?k(`survivorName.you`,{ns:`contacts`}):k(`survivorName.youNamed`,{ns:`contacts`,name:e.displayName}):e.displayName||k(`survivorName.thisContact`,{ns:`contacts`})}function st(e,t){let n=[],r=[];for(let i of t.channels)i.status!==`revoked`&&(e.channels.some(e=>e.type===i.type&&e.address.toLowerCase()===i.address.toLowerCase())?r.push(i):n.push(i));return{moved:n,duplicates:r}}function ct(e){let t=new Set,n=[];for(let r of e.channels){if(r.status===`revoked`)continue;let e=r.type.toLowerCase();t.has(e)||(t.add(e),n.push(Re(e)))}return n}var lt={pencil:P,more:z};function ut({loading:e,guardian:t,regularContacts:n,selectedContactId:r,onSelect:i,onAddContact:a,addingContact:s=!1,surface:l=`card`,search:u,onSearchChange:f}){let{t:p}=A(`contacts`),m=l===`screen`,h=n.length>0,g=u.trim()?n.filter(e=>e.displayName.toLowerCase().includes(u.trim().toLowerCase())):n,_=h?(0,G.jsx)(c,{type:`text`,value:u,onChange:e=>f(e.target.value),placeholder:p(`contactsList.searchPlaceholder`),leftIcon:(0,G.jsx)(L,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,className:m?`h-10`:void 0}):null,v=t?(0,G.jsx)(Q,{name:t.displayName?p(`contactsList.youNamed`,{name:t.displayName}):p(`contactsList.you`),role:t.role,channelTypes:t.channelTypes,selected:r===t.id,onClick:()=>i(t.id),trailingIcon:`pencil`,surface:l}):null,y=t?(0,G.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}):null,b=(0,G.jsxs)(G.Fragment,{children:[g.map(e=>(0,G.jsx)(Q,{name:e.displayName,role:e.role,contactType:e.contactType,channelTypes:e.channelTypes,verified:e.verified,selected:r===e.id,onClick:()=>i(e.id),trailingIcon:`more`,surface:l},e.id)),g.length===0?(0,G.jsx)(`p`,{className:`px-3 py-4 text-center text-body-small-default`,style:{color:`var(--content-tertiary)`},children:p(`contactsList.noMatches`)}):null]}),x=e?null:(0,G.jsx)(d,{type:`button`,variant:`ghost`,onClick:a,disabled:s,tintColor:`var(--primary-base)`,loading:s,leftIcon:(0,G.jsx)(R,{"aria-hidden":!0}),children:p(`contactsList.add`)});return m?(0,G.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[_,v,y,(0,G.jsx)(`div`,{className:`flex flex-col gap-1 pt-2`,children:h?b:x})]}):(0,G.jsx)(o.Root,{className:`flex h-full flex-col overflow-hidden`,children:(0,G.jsxs)(o.Body,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-4`,children:[(0,G.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,G.jsx)(`h2`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:p(`contactsList.heading`)}),(0,G.jsx)(d,{type:`button`,variant:`ghost`,loading:s,iconOnly:(0,G.jsx)(me,{"aria-hidden":!0}),onClick:a,disabled:s,"aria-label":p(`contactsList.addAriaLabel`),tintColor:`var(--content-secondary)`})]}),v,y,_,h?(0,G.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto flex flex-col gap-1`,children:b}):x]})})}function Q({name:e,role:t,contactType:n,channelTypes:r,selected:i,onClick:a,trailingIcon:o,verified:s,surface:c}){let{t:l}=A(`contacts`),d=c===`screen`,f=r&&r.length>0?r.join(` | `):void 0,p=d||s===void 0?null:(0,G.jsx)(h,{tone:s?`positive`:`neutral`,children:l(s?`contactsList.verified`:`contactsList.unverified`)}),m=d||o===void 0?void 0:lt[o];return(0,G.jsx)(u,{asChild:!0,active:i,className:d?`rounded-md max-md:py-2`:void 0,children:(0,G.jsxs)(`button`,{type:`button`,onClick:a,className:C(`flex h-auto w-full items-center`,!d&&`gap-2 rounded-[6px] px-[8px] py-2`,`text-left`),children:[(0,G.jsxs)(`span`,{className:C(`flex min-w-0 flex-1 flex-col`,d&&`gap-0.5`),children:[(0,G.jsx)(`span`,{className:C(`truncate text-body-medium-default`,d&&`text-[var(--content-default)]`),children:e}),f?(0,G.jsx)(`span`,{className:C(`truncate`,d?`text-label-medium-default`:`text-body-small-default`),style:{color:`var(--content-tertiary)`},children:f}):null]}),(0,G.jsxs)(`span`,{className:`flex shrink-0 items-center gap-1`,children:[p,(0,G.jsx)(Ze,{role:t,contactType:n}),m?(0,G.jsx)(m,{className:`h-3.5 w-3.5 text-[color:var(--content-tertiary)]`,"aria-hidden":!0}):null]})]})})}function dt(e){return(0,G.jsx)(ft,{...e},e.contact.id)}function ft({contact:e,savePending:t,verifyPending:n,mergePending:r=!1,canMerge:i=!1,availableChannels:a,channelsLoadFailed:o,a2aEnabled:s,onSave:l,onMerge:u,onSetupChannel:f,onVerifyChannel:p,onRevokeChannel:m,onGenerateInviteLink:h}){let{t:g}=A(`contacts`),_=e.displayName.startsWith(`cadet-principal-`),v=_?``:e.displayName,[y,b]=(0,U.useState)(v),[x,S]=(0,U.useState)(e.notes??``),C=y.trim(),ee=x.trim(),w=C!==v.trim()||ee!==(e.notes??``).trim(),T=w&&!t,te=g(`contact.interactions`,{count:e.interactionCount});return(0,G.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,G.jsx)(B,{title:_?g(`contactsList.you`):g(`contactsList.youNamed`,{name:e.displayName}),accessory:(0,G.jsx)(Ze,{role:`guardian`}),compactAccessory:!0,subtitle:te,children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,G.jsx)(c,{label:g(`contact.nameLabel`),type:`text`,value:y,onChange:e=>b(e.target.value),placeholder:g(`guardianDetailView.namePlaceholder`),disabled:t,fullWidth:!0}),(0,G.jsx)(c,{label:g(`contact.notesLabel`),type:`text`,value:x,onChange:e=>S(e.target.value),placeholder:g(`guardianDetailView.notesPlaceholder`),disabled:t,fullWidth:!0}),(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,G.jsx)(d,{variant:`primary`,onClick:()=>l({displayName:C||e.displayName,notes:ee}),disabled:!T,children:g(t?`actions.saving`:`actions.save`)}),u?(0,G.jsx)(d,{variant:`outlined`,onClick:u,disabled:!i||w||r||t,title:i?w?g(`contact.mergeBlockedUnsaved`):void 0:g(`contact.mergeBlockedNoCandidates`),children:g(r?`actions.merging`:`actions.merge`)}):null]})]})}),(0,G.jsx)(B,{title:g(`guardianDetailView.channelsTitle`),subtitle:g(`guardianDetailView.channelsSubtitle`),children:(0,G.jsx)(Ke,{contactChannels:e.channels,availableChannels:a,channelsLoadFailed:o,a2aEnabled:s,setupLabel:g(`guardianDetailView.setupLabel`),verifyLoading:n,onSetupChannel:f,onVerifyChannel:p,onRevokeChannel:m})}),h?(0,G.jsx)(H,{onClick:h}):null]})}function pt(e,t){let n=t.trim().toLowerCase().replace(/^@/,``);return n===``?e:e.filter(e=>e.displayName.toLowerCase().includes(n)||e.username.toLowerCase().includes(n))}function mt(e){let t=e.trim().split(/\s+/).filter(Boolean);return`${t[0]?.[0]??`?`}${t.length>1?t[t.length-1]?.[0]??``:``}`.toUpperCase()}function ht({open:e,channelLabel:t,contactName:n,accounts:r,loading:i,errorMessage:a,pendingAccountId:o,onPick:s,onClose:l,onInviteInstead:u}){let{t:f}=A(`contacts`),[p,m]=(0,U.useState)(``);(0,U.useEffect)(()=>{e&&m(``)},[e]);let h=(0,U.useMemo)(()=>pt(r??[],p),[r,p]),g=o!=null;return(0,G.jsx)(y.Root,{open:e,onOpenChange:e=>!e&&l(),children:(0,G.jsxs)(y.Content,{size:`sm`,children:[(0,G.jsxs)(y.Header,{children:[(0,G.jsx)(y.Title,{children:f(`linkAccountDialog.title`,{channel:t})}),(0,G.jsx)(y.Description,{children:(0,G.jsx)(D,{i18nKey:`linkAccountDialog.description`,ns:`contacts`,values:{channel:t,name:n},components:{contact:(0,G.jsx)(`span`,{className:`text-[color:var(--content-default)]`})}})})]}),(0,G.jsxs)(y.Body,{className:`flex flex-col gap-3`,children:[(0,G.jsx)(c,{type:`search`,value:p,onChange:e=>m(e.target.value),placeholder:f(`linkAccountDialog.searchPlaceholder`),"aria-label":f(`linkAccountDialog.searchAriaLabel`,{channel:t}),leftIcon:(0,G.jsx)(L,{className:`h-4 w-4`}),fullWidth:!0}),a?(0,G.jsx)(`p`,{className:`text-body-small-default text-[color:var(--system-negative-strong)]`,children:a}):null,(0,G.jsx)(`div`,{className:`max-h-80 overflow-y-auto`,children:i?(0,G.jsx)(`p`,{className:`py-4 text-center text-body-small-default text-[color:var(--content-tertiary)]`,children:f(`linkAccountDialog.loading`)}):h.length===0?(0,G.jsx)(`p`,{className:`py-4 text-center text-body-small-default text-[color:var(--content-tertiary)]`,children:(r?.length??0)===0?f(`linkAccountDialog.noMembers`):f(`linkAccountDialog.noMatches`)}):(0,G.jsx)(`ul`,{className:`flex flex-col`,children:h.map(e=>(0,G.jsx)(`li`,{children:(0,G.jsxs)(`button`,{type:`button`,onClick:()=>s(e),disabled:g,className:`flex w-full cursor-pointer items-center gap-3 rounded-md px-2 py-2 text-left transition-colors hover:bg-[var(--surface-overlay)] disabled:cursor-not-allowed disabled:opacity-60`,children:[e.imageUrl?(0,G.jsx)(`img`,{src:e.imageUrl,alt:``,className:`h-8 w-8 shrink-0 rounded-full`}):(0,G.jsx)(`span`,{"aria-hidden":`true`,className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-[var(--tag-bg-neutral)] text-body-small-emphasised text-[color:var(--content-secondary)]`,children:mt(e.displayName)}),(0,G.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,G.jsx)(`span`,{className:`truncate text-body-medium-default text-[color:var(--content-default)]`,children:e.displayName}),(0,G.jsxs)(`span`,{className:`truncate text-body-small-default text-[color:var(--content-tertiary)]`,children:[`@`,e.username]})]}),o===e.id?(0,G.jsx)(`span`,{className:`ml-auto shrink-0 text-body-small-default text-[color:var(--content-tertiary)]`,children:f(`linkAccountDialog.linking`)}):null]})},e.id))})})]}),(0,G.jsxs)(y.Footer,{className:`items-center justify-between gap-3 border-t border-[var(--border-base)]`,children:[(0,G.jsx)(`p`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:(0,G.jsx)(D,{i18nKey:`linkAccountDialog.guardianLinkNote`,ns:`contacts`,components:{emphasis:(0,G.jsx)(`span`,{className:`text-[color:var(--content-secondary)]`})}})}),u?(0,G.jsxs)(d,{variant:`link`,className:`shrink-0`,onClick:u,disabled:g,children:[f(`linkAccountDialog.inviteInstead`),(0,G.jsx)(he,{className:`h-3.5 w-3.5`})]}):null]})]})})}function gt(e){return ue({...w((0,U.useMemo)(()=>({path:{assistant_id:e}}),[e])),enabled:!!e,select:e=>e.snapshots.some(e=>e.channel===`slack`&&x(e))}).data??!1}function _t({assistantId:e,channelType:t,contact:n,onLinked:r}){let[i,a]=(0,U.useState)(!1),o=O({mutationFn:n=>ke(e,n.contact,{type:t,address:n.account.id}),onSuccess:(e,t)=>{a(!1),m.success(k(`accountLink.linked`,{ns:`contacts`,username:t.account.username})),r()}}),s=(0,U.useCallback)(()=>{o.reset(),a(!0)},[o]),c=(0,U.useCallback)(()=>{o.isPending||(o.reset(),a(!1))},[o]),l=(0,U.useCallback)(e=>{!n||o.isPending||o.mutate({contact:n,account:e})},[n,o]);return{channelType:t,dialogOpen:i,open:s,close:c,linkErrorMessage:o.error instanceof Error?o.error.message:o.error?k(`accountLink.linkFailed`,{ns:`contacts`}):null,pendingAccountId:o.isPending?o.variables.account.id:null,pick:l}}function vt(){let[e,t]=(0,U.useState)(()=>new Set);return{ids:e,add:(0,U.useCallback)(e=>{t(t=>t.has(e)?t:new Set(t).add(e))},[]),remove:(0,U.useCallback)(e=>{t(t=>{if(!t.has(e))return t;let n=new Set(t);return n.delete(e),n})},[])}}var yt=[{id:`slack`,source:`default`,label:`Slack`,subtitle:`Message your assistant from Slack`,icon:`hash`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian on Slack. Can you help me set that up?`,contact:`I'd like to verify a contact's Slack identity. Can you walk me through it?`}},{id:`telegram`,source:`default`,label:`Telegram`,subtitle:`Message your assistant from Telegram`,icon:`send`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian on Telegram. Can you help me set that up?`,contact:`I'd like to verify a contact's Telegram identity. Can you walk me through it?`}},{id:`phone`,source:`default`,label:`Phone Calling`,subtitle:`Call or text your assistant via phone`,icon:`phone`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian for phone calls. Can you help me set that up?`,contact:`I'd like to verify a contact's phone number. Can you help me set that up?`}}],bt=[];function $({assistantId:e,onStartSetupConversation:i}){let{t:o}=A(`contacts`),c=b.use.a2aChannel(),u=de(),[f]=re(),p=f.get(`setup`),h=p&&a(p)?p:null,{contactId:g}=oe(),y=ae(),{pathname:x,state:S}=ie(),C=Ce(e),ee=v(),{paneRef:w,hasRoomForList:E,drawerOpen:ce,openDrawer:le,closeDrawer:D}=we(),k=ee&&!E,j=k&&!g,fe=k&&!!g,[pe,he]=(0,U.useState)(``),[ge,M]=(0,U.useState)(!1),N=(0,U.useMemo)(()=>({path:{assistant_id:e}}),[e]),P=n(N),F=ue({...l(N),enabled:!!e,select:e=>e.contacts}),_e=ue({..._({path:{assistant_id:e}}),enabled:!!e,queryFn:async({signal:t})=>{let{data:n,error:r,response:i}=await ne({path:{assistant_id:e},signal:t,throwOnError:!1});if(i?.status===404)return{channels:yt};if(!i||!i.ok)throw r??Error(`Failed to fetch channel availability`);return n},select:e=>e.channels}),I=_e.data??bt,ve=_e.isError,L=F.data,R=(0,U.useMemo)(()=>L?.find(e=>e.role===`guardian`)??null,[L]),ye=(0,U.useMemo)(()=>L?.filter(e=>e.role!==`guardian`)??[],[L]),z=g??(j?null:R?.id??null),B=(0,U.useMemo)(()=>L?.find(e=>e.id===z)??null,[L,z]),H=Te.use.setDetailIsScreen(),Ne=(0,U.useCallback)(e=>{e!==g&&(j&&H(!0),y(T.contacts.detail(e),j?{state:Me}:{replace:!0,state:S}))},[y,j,g,S,H]),Pe=(0,U.useCallback)(()=>{je(y,S,T.contacts.root)},[y,S]),Fe=(0,U.useRef)(null);Ee({containerRef:Fe,onBack:Pe,enabled:fe,navKey:x});let Ie=F.isSuccess&&F.fetchStatus===`idle`,Le=!!g&&!B&&!Ie,W=vt(),Be=vt(),Ve=vt(),Ue=(0,U.useMemo)(()=>!L||!B?[]:L.filter(e=>e.id!==B.id&&e.role!==`guardian`&&!W.ids.has(e.id)),[L,B,W.ids]),We=Ue.length>0,K=(0,U.useCallback)(()=>u.invalidateQueries({queryKey:P}),[u,P]),q=(0,U.useRef)(!0);(0,U.useEffect)(()=>(q.current=!0,()=>{q.current=!1}),[]);let Ge=O({mutationFn:()=>Oe(e,{displayName:ze}),onMutate:async()=>{await u.cancelQueries({queryKey:P})},onSuccess:e=>{t(u,N,t=>t?{...t,contacts:[...t.contacts,e]}:void 0),q.current&&Ne(e.id)},onError:V(o(`contactsPage.createFailed`)),onSettled:()=>K()}),Ke=(0,U.useRef)(z);(0,U.useLayoutEffect)(()=>{Ke.current=z},[z]);let qe=O({mutationFn:t=>Ae(e,t),onMutate:e=>{W.add(e)},onSuccess:(e,n)=>{t(u,N,e=>e?{...e,contacts:e.contacts.filter(e=>e.id!==n)}:void 0),q.current&&Ke.current===n&&Pe()},onError:V(o(`contactsPage.deleteFailed`)),onSettled:(e,t,n)=>(W.remove(n),K())}),J=O({mutationFn:({contactId:t,patch:n})=>Oe(e,{id:t,displayName:n.displayName,notes:n.notes}),onMutate:({contactId:e})=>{Be.add(e)},onSuccess:e=>{t(u,N,t=>t?{...t,contacts:t.contacts.map(t=>t.id===e.id?e:t)}:void 0)},onError:V(o(`contactsPage.saveFailed`)),onSettled:(e,t,{contactId:n})=>(Be.remove(n),K())}),Y=O({mutationFn:({contactId:t,displayName:n,autoApproveThreshold:r})=>Oe(e,{id:t,displayName:n,autoApproveThreshold:r}),onMutate:({contactId:e})=>{Ve.add(e)},onSuccess:e=>{t(u,N,t=>t?{...t,contacts:t.contacts.map(t=>t.id===e.id?e:t)}:void 0)},onError:V(o(`contactPermissions.saveFailed`)),onSettled:(e,t,{contactId:n})=>(Ve.remove(n),K())}),X=r({onMutate:async()=>{await u.cancelQueries({queryKey:P})},onSuccess:(e,n)=>{let r=e.contact,i=n.body.mergeId;r&&(t(u,N,e=>e?{...e,contacts:e.contacts.filter(e=>e.id!==i).map(e=>e.id===r.id?r:e)}:void 0),q.current&&Ne(r.id)),M(!1),m.success(o(`contactsPage.mergeSucceeded`))},onSettled:()=>K()}),Je=X.reset,Ye=(0,U.useCallback)(e=>{Ne(e),D(),M(!1),Je()},[Ne,D,Je]),Xe=(0,U.useCallback)(()=>{Je(),M(!0)},[Je]),Ze=(0,U.useCallback)(()=>{X.isPending||(M(!1),X.reset())},[X]),Qe=s({onSuccess:()=>K()}),et=(0,U.useCallback)((t,n)=>{Qe.mutate({path:{assistant_id:e,contactChannelId:t},body:{status:`revoked`}})},[Qe,e]),nt=Ge.mutate,Z=Ge.isPending,rt=(0,U.useCallback)(()=>{Z||nt()},[nt,Z]),it=Te.use.setHeaderTrailing();(0,U.useEffect)(()=>{if(!j){it(null);return}return it((0,G.jsx)(d,{shape:`pill`,variant:`ghost`,iconOnly:(0,G.jsx)(me,{"aria-hidden":!0}),"aria-label":o(`contactsList.addAriaLabel`),tooltip:o(`contactsList.addAriaLabel`),className:`max-md:bg-[var(--surface-active)]`,loading:Z,disabled:Z,onClick:rt})),()=>{it(null)}},[Z,rt,j,it,o]),(0,U.useLayoutEffect)(()=>(H(fe),()=>{H(!1)}),[fe,H]);let at=(0,U.useCallback)(e=>{if(!i)return;let t=I.find(t=>t.id===e);if(!t||He(t))return;let n=t.setupMessages.contact;n&&i(n)},[I,i]),ot=(0,U.useCallback)(e=>{if(!i)return;let t=I.find(t=>t.id===e);if(!t||He(t))return;let n=t.setupMessages.guardian;n&&i(n)},[I,i]),st=O({mutationFn:t=>De(e,t.channelId),onSuccess:()=>K(),onError:V(o(`contactsPage.verifyFailed`))}),ct=O({mutationFn:t=>{if(!B)throw Error(`No contact selected`);return ke(e,{id:B.id,displayName:B.displayName},{type:t.type,address:t.address})},onSuccess:()=>K(),onError:V(o(`contactsPage.verifyFailed`))}),lt=(0,U.useCallback)((e,t)=>{if(!B)return;let n=t?.trim();if(n){ct.mutate({type:e,address:n});return}let r=B.channels.find(t=>t.type===e&&t.status!==`revoked`);r?.address?.trim()&&st.mutate({channelId:r.id})},[B,ct,st]),Q=_t({assistantId:e,channelType:`slack`,contact:B?{id:B.id,displayName:B.displayName}:null,onLinked:K}),ft=ue({...te(e),enabled:!!e&&Q.dialogOpen,select:e=>e.users}),pt=gt(e),mt=(0,U.useCallback)(e=>{e===Q.channelType&&Q.open()},[Q]),$=(0,U.useMemo)(()=>{if(!B)return null;let e=B;return J.isPending&&J.variables?.contactId===B.id&&(e={...e,displayName:J.variables.patch.displayName,notes:J.variables.patch.notes}),Y.isPending&&Y.variables?.contactId===B.id&&(e={...e,autoApproveThreshold:Y.variables.autoApproveThreshold}),e},[B,J.isPending,J.variables,Y.isPending,Y.variables]),Tt=z!==null&&Be.ids.has(z),Et=z!==null&&Ve.ids.has(z);if(h)return(0,G.jsx)(se,{to:`${T.channels}?setup=${h}`,replace:!0});let Dt={loading:F.isLoading,guardian:R?{id:R.id,displayName:R.displayName.startsWith(`cadet-principal-`)?``:R.displayName,role:R.role,channelTypes:wt(R.channels,c)}:null,regularContacts:ye.filter(e=>!W.ids.has(e.id)).map(e=>({id:e.id,displayName:e.displayName,role:e.role,contactType:e.contactType,channelTypes:wt(e.channels,c),verified:Ct(e.channels)})),selectedContactId:z,onSelect:Ye,onAddContact:rt,addingContact:Z,search:pe,onSearchChange:he};return(0,G.jsxs)(`div`,{ref:w,className:`flex min-h-0 flex-1 overflow-hidden ${E?`flex-row gap-6`:`flex-col gap-4`}`,children:[E?(0,G.jsx)(`aside`,{className:`min-h-0 w-[320px] shrink-0 overflow-y-auto self-stretch`,children:(0,G.jsx)(ut,{...Dt})}):k?null:(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{className:`flex items-center`,children:(0,G.jsx)(be,{onClick:le})}),(0,G.jsx)(xe,{open:ce,onClose:D,title:o(`contactsPage.title`),children:(0,G.jsx)(ut,{...Dt})})]}),(0,G.jsx)(`section`,{ref:Fe,className:`min-h-0 min-w-0 flex-1 overflow-y-auto`,children:F.isLoading||Le?(0,G.jsx)(St,{}):j?(0,G.jsx)(ut,{...Dt,surface:`screen`}):$?$.role===`guardian`?(0,G.jsx)(dt,{contact:$,savePending:Tt,verifyPending:st.isPending||ct.isPending,mergePending:X.isPending,canMerge:We,availableChannels:I,channelsLoadFailed:ve,a2aEnabled:c,onSave:e=>{J.mutate({contactId:$.id,patch:e})},onMerge:Xe,onSetupChannel:i?ot:void 0,onVerifyChannel:lt,onRevokeChannel:et,onGenerateInviteLink:c?C.open:void 0}):(0,G.jsx)($e,{contact:$,savePending:Tt,deletePending:W.ids.has($.id),verifyPending:st.isPending||ct.isPending,mergePending:X.isPending,canMerge:We,availableChannels:I,channelsLoadFailed:ve,a2aEnabled:c,onSave:e=>{J.mutate({contactId:$.id,patch:e})},onDelete:()=>{qe.mutate($.id)},onMerge:Xe,onSetupChannel:i?at:void 0,onVerifyChannel:lt,onRevokeChannel:et,onLinkAccount:pt?mt:void 0,pendingAutoApproveThreshold:Et,onAutoApproveThresholdChange:e=>{Y.mutate({contactId:$.id,displayName:$.displayName,autoApproveThreshold:e})}}):g?(0,G.jsx)(xt,{text:o(`contactsPage.notFoundBody`)}):(0,G.jsx)(xt,{text:o(`contactsPage.emptyBody`)})}),B?(0,G.jsx)(tt,{open:ge,survivor:B,candidates:Ue,pending:X.isPending,errorMessage:X.error instanceof Error?X.error.message:X.error?o(`contactsPage.mergeFailed`):null,onMerge:t=>X.mutate({path:{assistant_id:e},body:{keepId:B.id,mergeId:t}}),onClose:Ze}):null,(0,G.jsx)(ht,{open:Q.dialogOpen,channelLabel:Re(`slack`),contactName:B?.displayName??``,accounts:ft.data,loading:ft.isLoading,errorMessage:ft.isError?o(`contactsPage.rosterLoadFailed`):Q.linkErrorMessage,pendingAccountId:Q.pendingAccountId,onPick:Q.pick,onClose:Q.close,onInviteInstead:i?()=>{Q.close(),at(Q.channelType)}:void 0}),(0,G.jsx)(Se,{open:C.isOpen,assistantId:e,onClose:C.close})]})}function xt({text:e}){return(0,G.jsx)(`div`,{className:`flex h-full items-center justify-center py-16`,children:(0,G.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e})})}function St(){return(0,G.jsx)(`div`,{className:`flex h-full items-center justify-center py-16`,children:(0,G.jsx)(N,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})})}function Ct(e){return e.some(e=>e.status!==`revoked`&&(e.type===`a2a`||Ie(e)))}function wt(e,t){let n=new Set,r=[];for(let i of e){if(i.status===`revoked`)continue;let e=i.type.toLowerCase();n.has(e)||e===`a2a`&&!t||(n.add(e),r.push(Re(e)))}return r}function Tt(){let e=ae(),t=i(),{contactId:n}=oe(),{state:r}=ie(),a=(0,U.useRef)(t);return(0,U.useEffect)(()=>{let i=a.current;a.current=t,!(i===t||!n)&&je(e,r,T.contacts.root)},[t,n,r,e]),(0,G.jsx)($,{assistantId:t,onStartSetupConversation:t=>{S(e,{prompt:t})}},t)}export{Tt as ContactsPageRoute};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{DS as t,Fv as n,G as r,Im as i,LC as a,My as o,Pv as s,Py as c,QC as l,TC as u,U as d,W as f,XC as p,bS as m,dC as h,fC as g,hC as _,i as v,jC as y,jS as b,kS as ee,pC as x,qf as te,tS as S,th as ne}from"./app-CPkqAi_4.js";import{t as C,x as w}from"./react-BJ4PZBJN.js";import{Zn as re,er as T,w as E}from"./vendor-D-45vVY0.js";import{A as D,Ji as O,Lt as k,Xr as A,Yn as j,Yr as M,dr as N,li as P,tr as F,vt as ie}from"./icons-Dwi7aA1Y.js";import{t as ae}from"./detail-card-6rKFaFAS.js";import{t as I}from"./use-supports-credentials-settings-5kwj4xAE.js";var L=e(w(),1),R=`CREDENTIAL_IN_USE`;function oe(e){if(!(e instanceof b)||e.code!==R)return null;let t=e.details;if(!t||typeof t!=`object`||!(`connections`in t))return null;let{connections:n}=t;return!Array.isArray(n)||!n.every(e=>typeof e==`string`)?null:n}function se(e){return new Intl.ListFormat(m(),{style:`long`,type:`conjunction`}).format(e)}var z=C(),B=1500;function V(e){if(!e)return``;try{return new Date(e).toLocaleDateString(void 0,{year:`numeric`,month:`short`,day:`numeric`})}catch{return``}}function ce({credential:e,assistantId:t,generatingLink:n,deleting:r,onGenerateLink:i,onDelete:o}){let{t:s}=E(`settings`),c=`${e.service}:${e.field}`,u=n||r,d=[e.alias?c:null,e.createdAt?s(`credentialRow.addedMetadata`,{date:V(e.createdAt)}):null].filter(e=>!!e);return(0,z.jsx)(a.Root,{children:(0,z.jsxs)(a.Body,{padding:`sm`,className:`flex items-center gap-4 px-4`,children:[(0,z.jsx)(N,{className:`h-5 w-5 shrink-0 text-[var(--content-secondary)]`,"aria-hidden":!0}),(0,z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,z.jsx)(`p`,{className:`truncate text-title-small text-[var(--content-default)]`,children:e.alias||c}),(0,z.jsx)(`div`,{className:`mt-0.5 flex min-w-0 items-center`,children:(0,z.jsx)(H,{assistantId:t,credential:e})}),d.length>0&&(0,z.jsx)(`p`,{className:`mt-0.5 truncate font-mono text-body-medium-lighter text-[var(--content-tertiary)]`,children:d.join(` · `)})]}),(0,z.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,z.jsx)(l,{content:s(`credentialRow.generateLinkLabel`),side:`top`,children:(0,z.jsx)(p,{variant:`outlined`,onClick:i,disabled:u,"aria-label":s(`credentialRow.generateLinkAriaLabel`,{name:c}),loading:n,iconOnly:(0,z.jsx)(F,{"aria-hidden":!0})})}),(0,z.jsx)(l,{content:s(`credentialRow.deleteLabel`),side:`top`,children:(0,z.jsx)(p,{variant:`dangerOutline`,onClick:o,disabled:u,"aria-label":s(`credentialRow.deleteAriaLabel`,{name:c}),loading:r,iconOnly:(0,z.jsx)(D,{"aria-hidden":!0})})})]})]})})}function H({assistantId:e,credential:t}){let{t:r}=E(`settings`),[i,a]=(0,L.useState)(null),[o,s]=(0,L.useState)(!1),[l,u]=(0,L.useState)(!1),d=(0,L.useRef)(null),f=(0,L.useRef)(0),m=`${t.service}:${t.field}`,h=(0,L.useCallback)(()=>{f.current++,a(null),s(!1),u(!1),d.current&&=(clearTimeout(d.current),null)},[]);(0,L.useEffect)(()=>{h()},[t.updatedAt,h]);let _=(0,L.useCallback)(async()=>{let i=++f.current;s(!0);try{let{data:r}=await n({path:{assistant_id:e},body:{service:t.service,field:t.field},throwOnError:!0});f.current===i&&a(r.value)}catch{f.current===i&&g.error(r(`credentialRow.revealFailedToast`,{name:m}))}finally{f.current===i&&s(!1)}},[e,t.service,t.field,m,r]),v=(0,L.useCallback)(()=>{i!=null&&c(i,{errorMessage:r(`credentialRow.copyFailedToast`),onCopied:()=>{u(!0),d.current&&clearTimeout(d.current),d.current=setTimeout(()=>u(!1),B)}})},[i,r]),y=i!==null;return t.hasSecret?(0,z.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-1.5 align-middle font-mono text-body-medium-lighter`,children:[(0,z.jsx)(`button`,{type:`button`,onClick:()=>y?h():void _(),disabled:o,"aria-label":r(y?`credentialRow.hideValueAriaLabel`:`credentialRow.revealValueAriaLabel`,{name:m}),title:r(y?`credentialRow.hideValueTitle`:`credentialRow.clickToRevealTitle`),"data-private":!0,className:`min-w-0 truncate rounded-sm text-left transition-[filter,color] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] ${y?`text-[var(--content-secondary)]`:`select-none text-[var(--content-tertiary)] blur-[3px] hover:blur-[2px]`}`,children:y?i:t.scrubbedValue}),o?(0,z.jsx)(j,{className:`h-3.5 w-3.5 shrink-0 animate-spin`,"aria-hidden":!0}):y?(0,z.jsxs)(z.Fragment,{children:[(0,z.jsx)(p,{variant:`ghost`,size:`compact`,iconOnly:l?(0,z.jsx)(O,{"aria-hidden":!0}):(0,z.jsx)(P,{"aria-hidden":!0}),expandOnMobile:!1,onClick:v,"aria-label":r(`credentialRow.copyValueAriaLabel`,{name:m}),tooltip:r(`credentialRow.copyValueTitle`),className:`size-4.5 shrink-0 rounded-sm`}),(0,z.jsx)(p,{variant:`ghost`,size:`compact`,iconOnly:(0,z.jsx)(A,{"aria-hidden":!0}),expandOnMobile:!1,onClick:h,"aria-label":r(`credentialRow.hideValueAriaLabel`,{name:m}),tooltip:r(`credentialRow.hideValueTitle`),className:`size-4.5 shrink-0 rounded-sm`})]}):(0,z.jsx)(p,{variant:`ghost`,size:`compact`,iconOnly:(0,z.jsx)(M,{"aria-hidden":!0}),expandOnMobile:!1,onClick:()=>void _(),"aria-label":r(`credentialRow.revealValueAriaLabel`,{name:m}),tooltip:r(`credentialRow.clickToRevealTitle`),className:`size-4.5 shrink-0 rounded-sm`})]}):(0,z.jsx)(`span`,{className:`min-w-0 truncate font-mono text-body-medium-lighter text-[var(--content-tertiary)]`,children:t.scrubbedValue})}function le(e){return e>0xe8d4a51000?e:e*1e3}async function ue(e,t){let{data:n,response:r}=await o.post({url:`/v1/assistants/{assistant_id}/credential-requests`,path:{assistant_id:e},body:t});if(!r?.ok)throw Error(`Failed to create credential request: ${r?.status}`);return n}var U=6;function W(){let e=r(),t=I(e),n=S.use.assistantId();return S.use.version()!==null&&n===e&&!t?(0,z.jsx)(v,{}):t?(0,z.jsx)(G,{}):null}function G(){let{t:e}=E(`settings`),n=r(),o=T(),l=ne(),m=f(n),v=re({queryKey:m,queryFn:async()=>{let{data:e}=await s({path:{assistant_id:n},body:{},throwOnError:!0});return{credentials:e.credentials,managedCredentials:e.managedCredentials}},enabled:l,retry:ee}),b=(0,L.useMemo)(()=>v.data?.credentials??[],[v.data]),S=te.use.settingsDeveloperNav(),C=(0,L.useMemo)(()=>S?v.data?.managedCredentials??[]:[],[S,v.data]),[w,D]=(0,L.useState)(!1),[O,A]=(0,L.useState)(`own`),[M,I]=(0,L.useState)(``),[R,B]=(0,L.useState)(null),[V,H]=(0,L.useState)(null),[W,G]=(0,L.useState)(null),[de,K]=(0,L.useState)(null),q=i({onSuccess:(t,n)=>{o.invalidateQueries({queryKey:m}),g.success(e(`credentialsPage.deleteSuccessToast`,{name:`${n.body.service}:${n.body.field}`}))},onError:(n,r)=>{let i=oe(n),a=b.find(e=>e.service===r.body.service&&e.field===r.body.field);if(i&&a){H({credential:a,connections:i});return}t(n,{context:`credentials-delete`}),g.error(n.message||e(`credentialsPage.deleteErrorToast`))}}),fe=q.isPending?`${q.variables?.body?.service}:${q.variables?.body?.field}`:null,J=(0,L.useMemo)(()=>{let e=M.trim().toLowerCase();return e?b.filter(t=>[t.service,t.field,`${t.service}:${t.field}`,t.alias??``].join(` `).toLowerCase().includes(e)):b},[b,M]);(0,L.useEffect)(()=>{b.length<=U&&I(``)},[b.length]),(0,L.useEffect)(()=>{b.length===0&&C.length>0&&A(`managed`)},[b.length,C.length]);let Y=(e,t)=>{q.mutate({path:{assistant_id:n},body:{service:e.service,field:e.field,...t?{force:!0}:{}}})},X=()=>{let e=R;B(null),e&&Y(e,!1)},pe=()=>{let e=V;H(null),e&&Y(e.credential,!0)},me=async t=>{let r=`${t.service}:${t.field}`;K(r);try{let i=await ue(n,{service:t.service,field:t.field,label:t.alias??void 0});i.ok&&i.url?G({name:r,url:i.url,expiresAt:i.expiresAt??null}):g.error(i.error||e(`credentialsPage.generateLinkFailedToast`))}catch(t){g.error(t instanceof Error?t.message:e(`credentialsPage.generateLinkFailedToast`))}finally{K(null)}},he=()=>{let t=W?.url;t&&c(t,{successMessage:e(`credentialsPage.linkCopiedToast`),errorMessage:e(`credentialsPage.linkCopyFailedToast`)})};if(v.isLoading)return(0,z.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,z.jsx)(j,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})});let Z=b.length>0,Q=C.length>0,ge=b.length>U,$=O===`managed`&&Q,_e=!$,ve=[{value:`own`,label:e(`credentialsPage.segmentYourOwn`)},{value:`managed`,label:e(`credentialsPage.segmentManaged`)}];return(0,z.jsxs)(`div`,{className:`space-y-4`,children:[(0,z.jsx)(ae,{title:e(`credentialsPage.title`),subtitle:e($?`credentialsPage.subtitleManaged`:`credentialsPage.subtitleOwn`),accessory:(0,z.jsxs)(`div`,{className:`flex items-center gap-2`,children:[Q?(0,z.jsx)(_,{items:ve,value:O,onChange:A,ariaLabel:e(`credentialsPage.credentialSourceAriaLabel`)}):null,_e&&Z?(0,z.jsx)(p,{type:`button`,variant:`primary`,size:`regular`,onClick:()=>D(!0),leftIcon:(0,z.jsx)(k,{"aria-hidden":!0}),children:e(`credentialsPage.addButton`)}):null]}),children:$?(0,z.jsx)(`div`,{className:`space-y-2`,children:C.map(t=>(0,z.jsx)(a.Root,{children:(0,z.jsxs)(a.Body,{padding:`sm`,className:`flex items-center gap-4 px-4`,children:[(0,z.jsx)(N,{className:`h-5 w-5 shrink-0 text-[var(--content-secondary)]`,"aria-hidden":!0}),(0,z.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,z.jsx)(`p`,{className:`truncate text-title-small text-[var(--content-default)]`,children:t.provider}),(0,z.jsxs)(`p`,{className:`truncate text-body-medium-lighter text-[var(--content-tertiary)]`,children:[t.accountInfo??t.handle,` · `,t.status]})]}),(0,z.jsx)(y,{tone:`neutral`,children:e(`credentialsPage.managedTag`)})]})},t.handle))}):(0,z.jsxs)(`div`,{className:`space-y-4`,children:[Z?(0,z.jsxs)(`div`,{className:`space-y-3`,children:[ge?(0,z.jsx)(u,{type:`text`,value:M,onChange:e=>I(e.target.value),placeholder:e(`credentialsPage.searchPlaceholder`),"aria-label":e(`credentialsPage.searchAriaLabel`),leftIcon:(0,z.jsx)(ie,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}):null,J.length===0?(0,z.jsx)(`p`,{className:`px-1 py-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`credentialsPage.noMatch`,{query:M.trim()})}):(0,z.jsx)(`div`,{className:`space-y-2`,children:J.map(e=>{let t=`${e.service}:${e.field}`;return(0,z.jsx)(ce,{credential:e,assistantId:n,generatingLink:de===t,deleting:fe===t,onGenerateLink:()=>void me(e),onDelete:()=>B(e)},e.credentialId??t)})})]}):(0,z.jsxs)(`div`,{className:`flex flex-col items-center justify-center px-6 py-12 text-center`,children:[(0,z.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,z.jsx)(N,{className:`h-6 w-6 text-[var(--content-disabled)] dark:text-[var(--content-default)]`,"aria-hidden":!0})}),(0,z.jsx)(`h3`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:e(`credentialsPage.emptyTitle`)}),(0,z.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`credentialsPage.emptySubtitle`)})]}),Z?null:(0,z.jsx)(p,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>D(!0),className:`w-full border-dashed`,leftIcon:(0,z.jsx)(k,{"aria-hidden":!0}),children:e(`credentialsPage.addCredentialButton`)})]})}),(0,z.jsx)(h,{open:R!==null,title:e(`credentialsPage.deleteConfirmTitle`),message:R?e(`credentialsPage.deleteConfirmMessage`,{name:`${R.service}:${R.field}`}):``,confirmLabel:e(`credentialsPage.deleteConfirmLabel`),destructive:!0,onConfirm:X,onCancel:()=>B(null)}),(0,z.jsx)(h,{open:V!==null,title:e(`credentialsPage.inUseTitle`),message:V?e(`credentialsPage.inUseMessage`,{count:V.connections.length,name:`${V.credential.service}:${V.credential.field}`,connections:se(V.connections)}):``,confirmLabel:e(`credentialsPage.inUseConfirmLabel`),destructive:!0,onConfirm:pe,onCancel:()=>H(null)}),(0,z.jsx)(d,{open:w,onClose:()=>D(!1)}),(0,z.jsx)(x.Root,{open:W!==null,onOpenChange:e=>{e||G(null)},children:(0,z.jsxs)(x.Content,{size:`sm`,children:[(0,z.jsxs)(x.Header,{icon:F,children:[(0,z.jsx)(x.Title,{children:e(`credentialsPage.oneTimeLinkModalTitle`)}),(0,z.jsx)(x.Description,{children:W?e(`credentialsPage.oneTimeLinkModalDescription`,{name:W.name,expiresClause:W.expiresAt===null?``:e(`credentialsPage.oneTimeLinkModalExpiresClause`,{expiresAt:new Date(le(W.expiresAt)).toLocaleString()})}):``})]}),(0,z.jsx)(x.Body,{children:(0,z.jsx)(u,{label:e(`credentialsPage.linkLabel`),type:`text`,readOnly:!0,value:W?.url??``,onFocus:e=>e.currentTarget.select(),fullWidth:!0})}),(0,z.jsx)(x.Footer,{children:(0,z.jsx)(p,{type:`button`,size:`compact`,onClick:he,leftIcon:(0,z.jsx)(P,{"aria-hidden":!0}),children:e(`credentialsPage.copyLinkButton`)})})]})})]})}export{W as CredentialsPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{ar as t}from"./app-CPkqAi_4.js";import{t as n,x as r}from"./react-BJ4PZBJN.js";import{t as i}from"./preview-error-BVZTE_Gq.js";import{a,t as o}from"./tabular-grid-OOn2S_C5.js";import{t as s}from"./use-async-read-DlWfyJPq.js";var c=e(r(),1),l=n();function u({blob:e,filename:n}){let{value:r,failed:u}=s(e,e=>e.text()),d=(0,c.useMemo)(()=>r===null?null:a(r),[r]);return u?(0,l.jsx)(i,{filename:n}):d===null?(0,l.jsx)(t,{}):(0,l.jsx)(o,{...d})}export{u as CsvPreview};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{vS as t}from"./app-CPkqAi_4.js";import{f as n,x as r}from"./react-BJ4PZBJN.js";var i=e(r(),1);function a(){let e=n();return(0,i.useEffect)(()=>{e(t.settings.general,{replace:!0})},[e]),null}export{a as DangerZoneRedirectPage};
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/xterm-DVw0Odgw.js","assets/rolldown-runtime-BM3Ffeng.js","assets/xterm-addon-fit-BQeaKmRy.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$b as t,$x as n,Av as r,B_ as i,Co as a,DS as o,Do as s,E_ as c,Eo as l,Fg as u,Fy as d,G as f,G_ as p,IC as m,Jx as h,LC as g,L_ as _,MC as v,M_ as y,Mf as b,Mu as x,Nu as S,Ny as C,Op as w,Or as ee,Ov as T,PS as te,Py as ne,Q_ as E,R_ as re,Rr as D,TC as O,T_ as k,VC as A,V_ as ie,W_ as ae,Wd as oe,XC as j,X_ as M,YS as N,Y_ as se,Z_ as P,_o as ce,aC as le,ai as ue,bc as de,ci as fe,cv as pe,dC as me,df as F,di as he,eS as ge,eu as _e,fC as I,ff as ve,fi as ye,gC as L,gh as be,hC as xe,hf as Se,hh as Ce,ii as R,jC as z,jS as we,j_ as Te,k_ as Ee,lC as De,li as Oe,mC as B,mf as ke,mi as Ae,mn as je,ni as Me,og as Ne,oi as Pe,os as Fe,pf as Ie,ph as Le,pi as Re,ri as ze,si as V,th as Be,ui as Ve,vS as He,vo as Ue,vx as We,wC as Ge,wo as Ke,yh as qe,zC as Je,z_ as Ye}from"./app-CPkqAi_4.js";import{_ as Xe,f as Ze,t as Qe,v as $e,x as et}from"./react-BJ4PZBJN.js";import{B as H,E as tt,F as nt,G as rt,H as it,I as at,Jn as ot,K as st,L as U,M as ct,U as W,W as lt,Zn as ut,er as dt,w as G}from"./vendor-D-45vVY0.js";import{A as ft,D as pt,Et as mt,Gi as ht,Ia as gt,Ji as _t,Lt as vt,P as yt,Pa as bt,Ua as xt,Wi as St,Ya as K,Yn as q,a as Ct,i as wt,ji as Tt,ki as Et,kn as Dt,li as Ot,oi as kt,qi as At,ri as jt,ut as Mt,vt as Nt,wn as Pt,xr as Ft,zi as It,zt as Lt}from"./icons-Dwi7aA1Y.js";import{t as Rt}from"./ellipsis-vertical-DXwTXFid.js";import{t as zt}from"./share-feedback-modal-D3cwFoqQ.js";import{t as Bt}from"./detail-panel-stop-button-EtbIbCMU.js";import{c as Vt}from"./teleport-gateway-client-CbFuQSt0.js";import{n as Ht,o as Ut,t as Wt}from"./managed-export-gcnDno7p.js";var Gt=K(`clipboard-paste`,[[`path`,{d:`M11 14h10`,key:`1w8e9d`}],[`path`,{d:`M16 4h2a2 2 0 0 1 2 2v1.344`,key:`1e62lh`}],[`path`,{d:`m17 18 4-4-4-4`,key:`z2g111`}],[`path`,{d:`M8 4H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 1.793-1.113`,key:`bjbb7m`}],[`rect`,{x:`8`,y:`2`,width:`8`,height:`4`,rx:`1`,key:`ublpy`}]]),Kt=K(`corner-down-right`,[[`path`,{d:`m15 10 5 5-5 5`,key:`qqa56n`}],[`path`,{d:`M4 4v7a4 4 0 0 0 4 4h12`,key:`z08zvw`}]]),qt=K(`plug-zap`,[[`path`,{d:`M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z`,key:`goz73y`}],[`path`,{d:`m2 22 3-3`,key:`19mgm9`}],[`path`,{d:`M7.5 13.5 10 11`,key:`7xgeeb`}],[`path`,{d:`M10.5 16.5 13 14`,key:`10btkg`}],[`path`,{d:`m18 3-4 4h6l-4 4`,key:`16psg9`}]]),Jt=K(`rotate-cw`,[[`path`,{d:`M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8`,key:`1p45f6`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}]]),Yt=K(`save`,[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]),Xt=K(`thumbs-down`,[[`path`,{d:`M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z`,key:`m61m77`}],[`path`,{d:`M17 14V2`,key:`8ymqnk`}]]),Zt=K(`thumbs-up`,[[`path`,{d:`M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z`,key:`emmmcr`}],[`path`,{d:`M7 10v12`,key:`1qc93n`}]]),Qt=K(`unplug`,[[`path`,{d:`m19 5 3-3`,key:`yk6iyv`}],[`path`,{d:`m2 22 3-3`,key:`19mgm9`}],[`path`,{d:`M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z`,key:`goz73y`}],[`path`,{d:`M7.5 13.5 10 11`,key:`7xgeeb`}],[`path`,{d:`M10.5 16.5 13 14`,key:`10btkg`}],[`path`,{d:`m12 6 6 6 2.3-2.3a2.4 2.4 0 0 0 0-3.4l-2.6-2.6a2.4 2.4 0 0 0-3.4 0Z`,key:`1snsnr`}]]),J=e(et(),1);function $t(e,t){return t||e.archivedAt!=null}function en(e,t){let n=e.lastMessageAt??e.createdAt??0;return(t.lastMessageAt??t.createdAt??0)-n}function tn(e,t){let n=e.archivedAt??0;return(t.archivedAt??0)-n||en(e,t)}function nn(e,t){let n=new Map;for(let t of e)for(let e of t)n.has(e.conversationId)||n.set(e.conversationId,{conversation:e,archived:$t(e,!1)});for(let e of t)n.set(e.conversationId,{conversation:e,archived:$t(e,!0)});return[...n.values()].sort((e,t)=>en(e.conversation,t.conversation))}function rn(e){return{needsActive:e!==`archived`,needsArchived:e!==`active`}}function an(e,{activeLoading:t,archivedLoading:n}){return e===`active`?t:e===`archived`?n:t||n}function on(e,{activeError:t,archivedError:n}){return e===`active`?t:e===`archived`?n:t||n}function sn(e,t){return t===`active`?e.filter(e=>!e.archived):t===`archived`?e.filter(e=>e.archived).sort((e,t)=>tn(e.conversation,t.conversation)):e}function cn(e,t,n=e=>ce(e)){let r=t.trim().toLowerCase();return r?e.filter(e=>{let t=(e.conversation.title??``).toLowerCase(),i=n(e.conversation.title).toLowerCase();return t.includes(r)||i.includes(r)}):e}function ln(e,t=`all`){let[n,r]=(0,J.useState)(``),[i,o]=(0,J.useState)(t),{t:c}=G(),{needsActive:u,needsArchived:d}=rn(i),{conversations:f,isLoading:p,isError:m,refetch:h}=l(e,u),{conversations:g,isLoading:_,isError:v,refetch:y}=Ke(e,u),{conversations:b,isLoading:x,isError:S,refetch:C}=s(e,u),{conversations:w,isLoading:ee,isError:T,refetch:te}=a(e,d),ne=p||_||x,E=m||v||S,re=()=>{h(),y(),C()},D=(0,J.useMemo)(()=>nn([f,g,b],w),[f,g,b,w]),O=(0,J.useMemo)(()=>sn(D,i),[D,i]);return{merged:D,rows:(0,J.useMemo)(()=>cn(O,n,e=>ce(e,c)),[O,n,c]),searchText:n,setSearchText:r,filter:i,setFilter:o,loading:an(i,{activeLoading:ne,archivedLoading:ee}),error:on(i,{activeError:E,archivedError:T}),refetch:()=>{u&&re(),d&&te()}}}var Y=Qe();function un(e){if(e==null)return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:t.toLocaleString(void 0,{month:`short`,day:`numeric`,year:`numeric`,hour:`numeric`,minute:`2-digit`,hour12:!0})}function dn({row:e,isFirst:t,onOpen:n,onArchive:r,onUnarchive:i,isPending:a}){let{t:o}=G(`settings`),s=Ue(),{conversation:c,archived:l}=e,u=[un(c.lastMessageAt??c.createdAt),c.source??`mycadet`].filter(Boolean).join(` · `),d=s(c.title);return(0,Y.jsxs)(`div`,{className:`flex items-center gap-3 py-3 ${t?``:`border-t border-[var(--border-base)]`}`,children:[(0,Y.jsxs)(`button`,{type:`button`,onClick:n,className:`min-w-0 flex-1 text-left`,children:[(0,Y.jsx)(`div`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:d}),(0,Y.jsx)(`p`,{className:`mt-0.5 truncate text-body-small-default text-[var(--content-tertiary)]`,children:u})]}),(0,Y.jsx)(j,{variant:`outlined`,onClick:l?i:r,loading:a,leftIcon:l?void 0:(0,Y.jsx)(xt,{}),disabled:a,className:`shrink-0`,children:o(a?l?`allConversationsView.unarchiving`:`allConversationsView.archiving`:l?`allConversationsView.unarchive`:`allConversationsView.archive`)})]})}function fn({assistantId:e,title:t,initialFilter:n,onOpenConversation:i}){let{t:a}=G(`settings`),s=dt(),{rows:c,searchText:l,setSearchText:u,filter:d,setFilter:f,loading:p,error:m,refetch:h}=ln(e,n),[g,_]=(0,J.useState)(null),v=(0,J.useMemo)(()=>[{value:`all`,label:a(`allConversationsView.filterAll`)},{value:`active`,label:a(`allConversationsView.filterActive`)},{value:`archived`,label:a(`allConversationsView.filterArchived`)}],[a]),y=(0,J.useCallback)(async(t,n,r,i)=>{_(t.conversationId);try{await n({path:{assistant_id:e,id:t.conversationId},throwOnError:!0}),de(s,e)}catch(e){o(e,{context:i}),I.error(r)}finally{_(null)}},[e,s]),b=(0,J.useCallback)(e=>{y(e,T,a(`allConversationsView.archiveFailed`),`all_conversations_archive_conversation`)},[y,a]),x=(0,J.useCallback)(e=>{y(e,r,a(`allConversationsView.unarchiveFailed`),`all_conversations_unarchive_conversation`)},[y,a]);return p?(0,Y.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,Y.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":a(`allConversationsView.loading`)})}):m?(0,Y.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4`,children:[(0,Y.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:a(`allConversationsView.loadError`)}),(0,Y.jsxs)(j,{variant:`outlined`,onClick:h,children:[(0,Y.jsx)(mt,{className:`h-4 w-4`}),a(`allConversationsView.retry`)]})]}):(0,Y.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden`,children:[t?(0,Y.jsx)(`h1`,{className:`mb-4 shrink-0 text-title-large text-[var(--content-default)]`,children:t}):null,(0,Y.jsxs)(`div`,{className:`mb-6 flex shrink-0 items-center gap-2`,children:[(0,Y.jsx)(O,{fullWidth:!0,wrapperClassName:`min-w-0 flex-1`,type:`text`,placeholder:a(`allConversationsView.searchPlaceholder`),value:l,onChange:e=>u(e.target.value),leftIcon:(0,Y.jsx)(Nt,{size:16})}),(0,Y.jsx)(De,{"aria-label":a(`allConversationsView.filterAria`),value:d,onChange:f,options:v,menuAlign:`end`,className:`w-36 shrink-0`})]}),(0,Y.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:(0,Y.jsx)(pn,{rows:c,filter:d,searchText:l,pendingId:g,onOpen:i,onArchive:b,onUnarchive:x})})]})}function pn({rows:e,filter:t,searchText:n,pendingId:r,onOpen:i,onArchive:a,onUnarchive:o}){let{t:s}=G(`settings`);if(e.length===0){if(n.trim())return(0,Y.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-16`,children:[(0,Y.jsx)(Nt,{size:32,className:`mb-4 text-[var(--content-tertiary)]`}),(0,Y.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:s(`allConversationsView.noMatch`,{query:n})})]});let e=s(t===`archived`?`allConversationsView.emptyArchived`:t===`active`?`allConversationsView.emptyActive`:`allConversationsView.emptyAll`);return(0,Y.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-16`,children:[(0,Y.jsx)(xt,{size:32,className:`mb-4 text-[var(--content-tertiary)]`}),(0,Y.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e})]})}return(0,Y.jsx)(`div`,{children:e.map((e,t)=>(0,Y.jsx)(dn,{row:e,isFirst:t===0,onOpen:()=>i(e.conversation.conversationId),onArchive:()=>a(e.conversation),onUnarchive:()=>o(e.conversation),isPending:r===e.conversation.conversationId},e.conversation.conversationId))})}function mn(e,t,n,r){let i=!1,a=new AbortController;return(async()=>{if(i)return;let o=null;try{let{stream:s}=await pe.sse.get({url:`/v1/assistants/{assistant_id}/terminal/sessions/{session_id}/events/`,path:{assistant_id:e,session_id:t},headers:{Accept:`text/event-stream, application/json`,...ve()},signal:a.signal,sseMaxRetryAttempts:0,onSseError:e=>{o=Ie(e,`Terminal stream disconnected`)}});for await(let e of s){if(i)return;let t=ke(e);if(!t)continue;let r=Se(t),a=typeof r.seq==`number`?r.seq:-1,o=typeof r.data==`string`?r.data:``;if(!(a<0||o===``))try{n({seq:a,data:o})}catch{}}if(i)return;if(o){r(o);return}r(Error(`Terminal stream ended unexpectedly`))}catch(e){if(i)return;r(Ie(e,`Terminal stream connection failed`))}})().catch(e=>{i||r(Ie(e,`Terminal stream setup failed`))}),{cancel:()=>{i=!0,a.abort()}}}var X=N(st()((e,t)=>({status:`idle`,errorMessage:null,reconnectAttempts:0,sessionId:null,requestConnect:()=>{let{status:n}=t();(n===`idle`||n===`closed`||n===`error`)&&e({status:`connecting`,errorMessage:null,reconnectAttempts:0})},connectSucceeded:n=>{t().status===`connecting`&&e({status:`connected`,sessionId:n,errorMessage:null,reconnectAttempts:0})},connectFailed:n=>{t().status===`connecting`&&e({status:`error`,errorMessage:n,sessionId:null})},disconnected:()=>{t().status===`connected`&&e({status:`error`,errorMessage:`Connection lost.`,sessionId:null})},requestReconnect:()=>{let{status:n,reconnectAttempts:r}=t();(n===`error`||n===`connected`)&&e({status:`reconnecting`,errorMessage:null,reconnectAttempts:r+1,sessionId:null})},reconnectSucceeded:n=>{t().status===`reconnecting`&&e({status:`connected`,sessionId:n,errorMessage:null,reconnectAttempts:0})},reconnectFailed:n=>{t().status===`reconnecting`&&e({status:`error`,errorMessage:n,sessionId:null})},errorOccurred:t=>{e({status:`error`,errorMessage:t,sessionId:null})},closed:()=>{e({status:`closed`,errorMessage:null,sessionId:null})},reset:()=>{e({status:`idle`,errorMessage:null,reconnectAttempts:0,sessionId:null})}}))),hn=50,gn=150,_n=3,vn=1e3;function yn(){return{highWaterMark:-1}}function bn({assistantId:e,onData:t,service:n}){let r=(0,J.useRef)(null),i=(0,J.useRef)(t);(0,J.useLayoutEffect)(()=>{i.current=t},[t]);let a=(0,J.useRef)(``),o=(0,J.useRef)(null),s=(0,J.useRef)(null),c=(0,J.useRef)(null),l=(0,J.useRef)(null),u=(0,J.useRef)(yn()),d=(0,J.useRef)(null),f=(0,J.useRef)(!1),p=(0,J.useRef)(null),m=(0,J.useMemo)(()=>n?{service:n}:void 0,[n]),h=(0,J.useCallback)(t=>{o.current||=setInterval(()=>{let n=a.current;!n||!e||(a.current=``,P({path:{assistant_id:e,session_id:t},body:{data:n},throwOnError:!1}).catch(()=>{}))},hn)},[e]),g=(0,J.useCallback)(()=>{o.current&&=(clearInterval(o.current),null),a.current=``},[]),_=(0,J.useCallback)(async t=>{if(!e){t?X.getState().reconnectFailed(`No assistant ID`):X.getState().connectFailed(`No assistant ID`);return}let n;try{let{data:t,error:r,response:i}=await se({path:{assistant_id:e},body:m,throwOnError:!1});if(!i||!i.ok){let e=r&&typeof r==`object`&&!Array.isArray(r)?r.detail:void 0;throw Error(e??`Failed to create terminal session (HTTP ${i?.status??`unknown`})`)}let a=t&&typeof t==`object`&&!Array.isArray(t)?t:{},o=typeof a.session_id==`string`?a.session_id:typeof a.id==`string`?a.id:void 0;if(!o)throw Error(`Backend did not return a session ID`);n=o}catch(e){let n=e instanceof Error?e.message:`Failed to create terminal session`;t?X.getState().reconnectFailed(n):X.getState().connectFailed(n);return}let a=t?`reconnecting`:`connecting`;if(X.getState().status!==a){M({path:{assistant_id:e,session_id:n},throwOnError:!1}).catch(()=>{});return}u.current=yn(),r.current=mn(e,n,e=>{if(!(e.seq<=u.current.highWaterMark)){u.current.highWaterMark=e.seq;try{i.current(e.data)}catch{}}},e=>{g(),X.getState().errorOccurred(e.message)}),h(n),f.current=!1,p.current=n,t?X.getState().reconnectSucceeded(n):X.getState().connectSucceeded(n);let o=l.current;o&&e&&E({path:{assistant_id:e,session_id:n},body:{cols:o.cols,rows:o.rows},throwOnError:!1}).catch(()=>{})},[e,m,h,g]),v=X.use.status(),y=X.use.reconnectAttempts();(0,J.useEffect)(()=>{if(v!==`error`||f.current||y>=_n)return;let t=vn*2**y;return d.current=setTimeout(()=>{if(d.current=null,X.getState().status!==`error`||f.current)return;r.current?.cancel(),r.current=null;let t=p.current;t&&e&&(p.current=null,M({path:{assistant_id:e,session_id:t},throwOnError:!1}).catch(()=>{})),X.getState().requestReconnect(),_(!0)},t),()=>{d.current&&=(clearTimeout(d.current),null)}},[v,y,e,_]);let b=(0,J.useCallback)(()=>{let{status:e}=X.getState();e!==`idle`&&e!==`closed`&&e!==`error`||(X.getState().requestConnect(),_(!1))},[_]),x=(0,J.useCallback)(()=>{let{status:t,sessionId:n}=X.getState();t!==`error`&&t!==`connected`||(r.current?.cancel(),r.current=null,g(),s.current&&=(clearTimeout(s.current),null),c.current=null,n&&e&&M({path:{assistant_id:e,session_id:n},throwOnError:!1}).catch(()=>{}),X.getState().requestReconnect(),_(!0))},[e,_,g]),S=(0,J.useCallback)(()=>{let{sessionId:t}=X.getState();f.current=!0,d.current&&=(clearTimeout(d.current),null),r.current?.cancel(),r.current=null,g(),s.current&&=(clearTimeout(s.current),null),t&&e&&M({path:{assistant_id:e,session_id:t},throwOnError:!1}).catch(()=>{}),X.getState().closed()},[e,g]),C=(0,J.useCallback)(e=>{a.current+=e},[]),w=(0,J.useCallback)((t,n)=>{l.current={cols:t,rows:n};let{status:r,sessionId:i}=X.getState();r!==`connected`||!i||!e||(c.current={cols:t,rows:n},s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{s.current=null;let t=c.current,n=X.getState();!t||!n.sessionId||n.status!==`connected`||!e||(c.current=null,E({path:{assistant_id:e,session_id:n.sessionId},body:{cols:t.cols,rows:t.rows},throwOnError:!1}).catch(()=>{}))},gn))},[e]);return(0,J.useEffect)(()=>()=>{f.current=!0,d.current&&=(clearTimeout(d.current),null),r.current?.cancel(),r.current=null,o.current&&=(clearInterval(o.current),null),s.current&&=(clearTimeout(s.current),null);let{sessionId:t}=X.getState();t&&e&&M({path:{assistant_id:e,session_id:t},throwOnError:!1}).catch(()=>{}),X.getState().reset()},[e]),{connect:b,reconnect:x,close:S,sendInput:C,sendResize:w}}function xn({onData:t,onResize:n,className:r,readOnly:i=!1,writeRef:a}){let{t:o}=G(`terminal`),s=(0,J.useRef)(null),c=(0,J.useRef)(null),l=(0,J.useRef)(t),u=(0,J.useRef)(n),d=(0,J.useRef)(i);return(0,J.useLayoutEffect)(()=>{l.current=t,u.current=n,d.current=i}),(0,J.useEffect)(()=>{let e=c.current;e&&(e.options.disableStdin=i,i||e.focus())},[i]),(0,J.useEffect)(()=>{if(!s.current)return;let t=s.current,n=!1,r=null,o=null,f=null,p=null;return Promise.all([$e(()=>import(`./xterm-DVw0Odgw.js`).then(t=>e(t.default,1)),__vite__mapDeps([0,1])),$e(()=>import(`./xterm-addon-fit-BQeaKmRy.js`).then(t=>e(t.default,1)),__vite__mapDeps([2,1]))]).then(([{Terminal:e},{FitAddon:s}])=>{if(n||!t)return;let m=new e({cursorBlink:!0,fontFamily:`"JetBrains Mono", "Fira Code", monospace`,fontSize:14,theme:{background:`#0f1117`,foreground:`#d4d4d4`,cursor:`#d4d4d4`,black:`#1e1e1e`,brightBlack:`#666666`,red:`#f44747`,brightRed:`#f44747`,green:`#6a9955`,brightGreen:`#6a9955`,yellow:`#dcdcaa`,brightYellow:`#dcdcaa`,blue:`#569cd6`,brightBlue:`#569cd6`,magenta:`#c586c0`,brightMagenta:`#c586c0`,cyan:`#4ec9b0`,brightCyan:`#4ec9b0`,white:`#d4d4d4`,brightWhite:`#ffffff`},disableStdin:i,scrollback:2e3});r=m;let h=new s;m.loadAddon(h),m.open(t),c.current=m,m.attachCustomKeyEventHandler(e=>e.key===`k`&&e.metaKey&&!e.ctrlKey&&!e.shiftKey&&!e.altKey?(e.type===`keydown`&&(e.preventDefault(),m.clear()),!1):!0);try{h.fit(),m.cols&&m.rows&&u.current?.({cols:m.cols,rows:m.rows})}catch{}f=m.onData(e=>{d.current||l.current?.(e)}),p=m.onResize(({cols:e,rows:t})=>{u.current?.({cols:e,rows:t})}),o=new ResizeObserver(()=>{try{h.fit()}catch{}}),o.observe(t),a&&(a.current=e=>m.write(e))}),()=>{n=!0,o?.disconnect(),f?.dispose(),p?.dispose(),r?.dispose(),c.current=null,a&&(a.current=null)}},[]),(0,Y.jsx)(`div`,{ref:s,className:r,style:{width:`100%`,height:`100%`,overflow:`hidden`},role:`region`,"aria-label":o(`terminalConsole.consoleAria`)})}function Sn({status:e,onConnect:t,onDisconnect:n,onClear:r,className:i,maintenanceModeActive:a}){let{t:o}=G(`terminal`),s=e===`connecting`||e===`reconnecting`,c=e===`connected`,l=e===`idle`||e===`closed`||e===`error`;return(0,Y.jsxs)(`div`,{className:[`flex items-center justify-between gap-3 border-b px-3 py-1.5`,i].filter(Boolean).join(` `),style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`},children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Y.jsx)(yt,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}),(0,Y.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-secondary)`},children:o(`terminalToolbar.heading`)}),(0,Y.jsx)(Cn,{status:e}),a&&(0,Y.jsx)(z,{tone:`warning`,leftIcon:(0,Y.jsx)(Ct,{}),title:o(`terminalToolbar.recoveryTitle`),children:o(`terminalToolbar.recoveryTag`)})]}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,Y.jsx)(j,{variant:`ghost`,size:`compact`,leftIcon:(0,Y.jsx)(wt,{}),onClick:r,title:o(`terminalToolbar.clearTitle`),children:o(`terminalToolbar.clear`)}),c||s?(0,Y.jsx)(j,{variant:`danger`,size:`compact`,loading:s,leftIcon:(0,Y.jsx)(Qt,{}),onClick:n,disabled:s,title:o(`terminalToolbar.disconnectTitle`),children:o(`terminalToolbar.disconnect`)}):(0,Y.jsx)(j,{variant:`primary`,size:`compact`,leftIcon:(0,Y.jsx)(qt,{}),onClick:t,disabled:!l,title:o(`terminalToolbar.connectTitle`),children:o(`terminalToolbar.connect`)})]})]})}function Cn({status:e}){let{t}=G(`terminal`),n=wn[e],r=t(n.labelKey);return(0,Y.jsx)(z,{tone:n.tone,leftIcon:(0,Y.jsx)(`span`,{className:[`h-1.5 w-1.5 rounded-full bg-current`,n.pulse?`animate-pulse`:``].filter(Boolean).join(` `)}),"aria-label":t(`terminalToolbar.statusAria`,{status:r}),children:r})}var wn={idle:{labelKey:`terminalStatus.idle`,tone:`neutral`},connecting:{labelKey:`terminalStatus.connecting`,tone:`warning`,pulse:!0},connected:{labelKey:`terminalStatus.connected`,tone:`positive`},reconnecting:{labelKey:`terminalStatus.reconnecting`,tone:`warning`,pulse:!0},error:{labelKey:`terminalStatus.error`,tone:`negative`},closed:{labelKey:`terminalStatus.closed`,tone:`neutral`}};function Tn({assistantId:e,className:t,maintenanceMode:n,service:r}){let{t:i}=G(),a=(0,J.useRef)(null),{connect:o,close:s,sendInput:c,sendResize:l,reconnect:u}=bn({assistantId:e,onData:(0,J.useCallback)(e=>{try{let t=atob(e);a.current?.(t)}catch{a.current?.(e)}},[]),service:r}),d=X.use.status(),f=X.use.errorMessage(),p=X.use.reconnectAttempts(),m=(0,J.useCallback)(()=>{d===`error`||d===`reconnecting`||p>0?u():o()},[d,p,o,u]),h=(0,J.useCallback)(e=>{c(e)},[c]),g=(0,J.useCallback)(({cols:e,rows:t})=>{l(e,t)},[l]),_=(0,J.useCallback)(()=>{a.current?.(`\x1B[2J\x1B[H`)},[]),v=d!==`connected`,y=n?.enabled===!0;return(0,Y.jsxs)(`div`,{className:[`flex flex-col overflow-hidden rounded-lg border border-[var(--border-base)]`,t].filter(Boolean).join(` `),children:[(0,Y.jsx)(Sn,{status:d,onConnect:m,onDisconnect:s,onClear:_,maintenanceModeActive:y}),y&&(0,Y.jsx)(`div`,{className:`border-b border-[var(--system-mid-strong)] bg-[var(--system-mid-weak)] px-3 py-2 text-body-small-lighter text-[var(--system-mid-strong)]`,children:i(`terminalPanel.recoveryModeBanner`)}),d===`error`&&f&&(0,Y.jsx)(`div`,{className:`border-b border-[var(--border-base)] bg-[var(--system-negative-weak)] px-3 py-2 text-body-small-default text-[var(--system-negative-strong)]`,children:f}),(0,Y.jsx)(`div`,{className:`relative min-h-0 flex-1`,children:(0,Y.jsx)(`div`,{className:`absolute inset-0`,children:(0,Y.jsx)(xn,{onData:h,onResize:g,readOnly:v,writeRef:a,className:`h-full w-full`})})})]})}function En(){let{t:e}=G(`settings`),t=be({platformHostedOnly:!0}),n=Ce(),[r,i]=(0,J.useState)(null),[a,s]=(0,J.useState)(null),[l,u]=(0,J.useState)(!0),[d,f]=(0,J.useState)(`assistant`),p=(0,J.useRef)(!1),m=(0,J.useMemo)(()=>[{value:`assistant`,label:`assistant`},{value:`gateway`,label:`gateway`},{value:`credential-executor`,label:`credential-executor`}],[]),h=(0,J.useCallback)(async t=>{if(!(!t&&p.current)){t||u(!0);try{let e=await c();e.ok&&(p.current=!0,i(e.data.id),s(e.data.maintenance_mode))}catch(t){o(t,{context:`fetch_assistant_for_terminal`}),I.error(e(`assistantTerminalPanel.loadErrorToast`))}finally{u(!1)}}},[e]);if((0,J.useEffect)(()=>{t===`full`&&h()},[h,t]),t===`gated`)return null;let g=l||t===`full`&&n;return(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4`,children:[(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-3`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,Y.jsx)(`div`,{className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-lg bg-[var(--surface-base)]`,children:(0,Y.jsx)(yt,{className:`h-5 w-5 text-[var(--content-secondary)]`})}),(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`assistantTerminalPanel.title`)}),(0,Y.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`assistantTerminalPanel.subtitle`)})]})]}),r&&(0,Y.jsx)(De,{options:[...m],value:d,onChange:f,"aria-label":e(`assistantTerminalPanel.targetContainer`)})]}),t===`disabled`?(0,Y.jsx)(je,{children:e(`assistantTerminalPanel.loginNotice`)}):g?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(`span`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-[var(--border-element)] border-t-[var(--content-secondary)]`}),e(`assistantTerminalPanel.loading`)]}):r?(0,Y.jsx)(Tn,{assistantId:r,maintenanceMode:a??void 0,service:d,className:`min-h-0 flex-1`},d):(0,Y.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)] px-4 py-3 text-body-medium-lighter text-[var(--content-tertiary)]`,children:(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 px-1 py-0.5`,children:[(0,Y.jsx)(yt,{className:`h-4 w-4 shrink-0`}),(0,Y.jsx)(`span`,{children:e(`assistantTerminalPanel.noAssistant`)})]})})]})}var Dn=`0.11.10`;function On(){return u(Dn)}function kn(e){return e instanceof we&&e.status===404}function An(e){return e===`ready`?`positive`:e===`failed`?`negative`:`warning`}var jn={ready:`Ready`,running:`Migrating`,failed:`Failed`,not_started:`Not started`},Mn={ready:`debugDatabasePanel.statusReady`,running:`debugDatabasePanel.statusRunning`,failed:`debugDatabasePanel.statusFailed`,not_started:`debugDatabasePanel.statusNotStarted`};function Nn(){let{t:e}=G(`settings`),t=f(),n=Be(),r=On(),i=ut({...w({path:{assistant_id:t}}),enabled:n&&r}),a=!r||kn(i.error);return(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[(0,Y.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Y.jsx)(`div`,{className:`flex h-9 w-9 items-center justify-center rounded-lg bg-[var(--surface-base)]`,children:(0,Y.jsx)(kt,{className:`h-5 w-5 text-[var(--content-secondary)]`})}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`debugDatabasePanel.title`,`Database`)}),(0,Y.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`debugDatabasePanel.subtitle`,`Migration status for this assistant, including failed and deferred steps.`)})]})]}),(0,Y.jsx)(j,{type:`button`,variant:`outlined`,size:`compact`,leftIcon:(0,Y.jsx)(Jt,{}),onClick:()=>{i.refetch()},disabled:!r||i.isFetching,children:e(`debugDatabasePanel.refresh`,`Refresh`)})]}),a?(0,Y.jsx)(m,{tone:`info`,children:e(`debugDatabasePanel.unsupported`,`This assistant version does not report database diagnostics yet.`)}):i.isPending?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}),e(`debugDatabasePanel.loading`,`Loading database status…`)]}):i.error?(0,Y.jsx)(m,{tone:`error`,children:e(`debugDatabasePanel.loadError`,`Could not load database diagnostics.`)}):i.data?(0,Y.jsx)(Pn,{data:i.data}):null]})}function Pn({data:e}){let{t}=G(`settings`),n=e.failed.length>0,r=e.deferred.length>0;return(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(z,{tone:An(e.state),children:t(Mn[e.state],jn[e.state])}),e.reason?(0,Y.jsx)(Je,{variant:`body-small-lighter`,children:e.reason}):null]}),e.error?(0,Y.jsx)(m,{tone:`error`,children:e.error}):null,e.state===`running`?(0,Y.jsx)(m,{tone:`info`,children:t(`debugDatabasePanel.migratingHint`,`Migrations are still running. Failed steps will appear here if a step throws.`)}):null,e.validationError?(0,Y.jsx)(m,{tone:`error`,title:t(`debugDatabasePanel.validationHeading`,`Validation error`),children:e.validationError}):null,n?(0,Y.jsxs)(`section`,{className:`space-y-2`,children:[(0,Y.jsx)(Je,{as:`h3`,variant:`title-small`,children:t(`debugDatabasePanel.failedHeading`,`Failed migrations`)}),e.failed.map(e=>(0,Y.jsx)(Fn,{name:e.name,detail:e.error,detailMono:!0},e.name))]}):e.state===`running`?null:(0,Y.jsx)(m,{tone:`success`,children:t(`debugDatabasePanel.noFailures`,`No failed migrations.`)}),r?(0,Y.jsxs)(`section`,{className:`space-y-2`,children:[(0,Y.jsx)(Je,{as:`h3`,variant:`title-small`,children:t(`debugDatabasePanel.deferredHeading`,`Deferred migrations`)}),e.deferred.map(e=>(0,Y.jsx)(Fn,{name:e.name,detail:t(`debugDatabasePanel.missingDeps`,{deps:e.missing.join(`, `)})},e.name))]}):null]})}function Fn({name:e,detail:t,detailMono:n=!1}){return(0,Y.jsxs)(g.Root,{children:[(0,Y.jsx)(g.Header,{className:`font-mono break-all`,children:e}),t?(0,Y.jsx)(g.Body,{children:(0,Y.jsx)(Je,{as:`p`,variant:`body-small-lighter`,className:n?`font-mono break-words whitespace-pre-wrap`:`break-words`,children:t})}):null]})}var In=3,Ln={point_in_time:`neutral`,scheduled:`positive`,preview_channel:`warning`,doctor:`warning`};function Rn({type:e}){let{t}=G(`settings`),n=e;return e===`point_in_time`?n=t(`assistantBackups.typePointInTime`):e===`scheduled`?n=t(`assistantBackups.typeScheduled`):e===`preview_channel`?n=t(`assistantBackups.typePreview`):e===`doctor`&&(n=t(`assistantBackups.typeDoctor`)),(0,Y.jsx)(z,{tone:Ln[e]??`neutral`,children:n})}function zn(e){if(e==null)return`—`;let t=String(e);/Z|[+-]\d{2}:?\d{2}$/.test(t)||(t+=`Z`);let n=new Date(t);return Number.isNaN(n.getTime())?`—`:n.toLocaleString(`en-US`,{year:`numeric`,month:`short`,day:`numeric`,hour:`numeric`,minute:`2-digit`})}function Bn({assistantId:e}){let{t}=G(`settings`),[n,r]=(0,J.useState)(null),[i,a]=(0,J.useState)(null),[s,c]=(0,J.useState)([]),[l,u]=(0,J.useState)(0),[d,f]=(0,J.useState)(null),[p,m]=(0,J.useState)(null),[h,g]=(0,J.useState)(!1),[_,v]=(0,J.useState)(null),[b,x]=(0,J.useState)(null),[S,C]=(0,J.useState)(null),w=Le(),ee=be({platformHostedOnly:!0}),T=w&&ee===`full`,te=T&&S===e;S!==null&&!te&&C(null);let E=(0,J.useCallback)(e=>{ne(e,{errorMessage:t(`assistantBackups.copyFailed`),onCopied:()=>{v(e),setTimeout(()=>v(null),2e3)}})},[t]),re=n!==e;(0,J.useEffect)(()=>{let n=!1;return Ee(e).then(i=>{n||(i.ok?(c(i.data),a(null)):a(typeof i.error?.detail==`string`?i.error.detail:t(`assistantBackups.loadFailed`)),r(e))}).catch(()=>{n||(a(t(`assistantBackups.loadFailed`)),r(e))}),()=>{n=!0}},[e,l,t]);let O=(0,J.useCallback)(async()=>{if(!p)return;let n=p;m(null),f(n.snapshot_name);try{let r=await y(e,n);if(r.ok)I.success(t(`assistantBackups.restoreSuccessToast`)),u(e=>e+1);else{let e=typeof r.error?.detail==`string`?r.error.detail:t(`assistantBackups.restoreFailedToast`);I.error(e)}}catch{I.error(t(`assistantBackups.restoreFailedToast`))}finally{f(null)}},[e,p,t]),A=(0,J.useCallback)(async()=>{g(!0);try{let n=await k(e);if(n.ok)I.success(t(`assistantBackups.createSuccessToast`)),u(e=>e+1);else{let e=typeof n.error?.detail==`string`?n.error.detail:t(`assistantBackups.createFailedToast`);I.error(e)}}catch{I.error(t(`assistantBackups.createFailedToast`))}finally{g(!1)}},[e,t]),ie=(0,J.useCallback)(async()=>{let n=S;if(C(null),!(!T||n!==e)){x(`preparing`);try{let{bundleKey:e,runtimeVersion:t}=await Ht(n,{onStep:x});x(`downloading`);let r=Wt(n,new Date);await D(await Ut(e,t,r),r)}catch(e){o(e,{context:`assistant-backups-export`}),I.error(t(`assistantBackups.exportFailedToast`),{description:e instanceof Vt?e.message:void 0})}finally{x(null)}}},[e,T,S,t]);if(re)return(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}),t(`assistantBackups.loading`)]});if(i)return(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--system-negative-strong)]`,children:[(0,Y.jsx)(pt,{className:`h-4 w-4 shrink-0`}),i]});let ae=s.filter(e=>e.backup_type===`point_in_time`).length,oe=b!==null,M=t(`assistantBackups.export`);b===`preparing`?M=t(`assistantBackups.exportPreparing`):b===`exporting`?M=t(`assistantBackups.exportExporting`):b===`downloading`&&(M=t(`assistantBackups.exportDownloading`));let N=(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-3`,children:[ae>=In&&(0,Y.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:t(`assistantBackups.oldestRemovedNotice`)}),T&&(0,Y.jsx)(j,{variant:`outlined`,loading:oe,leftIcon:(0,Y.jsx)(jt,{}),onClick:()=>C(e),disabled:oe||d!==null,className:`shrink-0`,children:M}),(0,Y.jsx)(j,{variant:`outlined`,loading:h,leftIcon:(0,Y.jsx)(Yt,{}),onClick:A,disabled:h||d!==null,className:`shrink-0`,children:t(h?`assistantBackups.creating`:`assistantBackups.createBackup`)})]}),se=(0,Y.jsx)(me,{open:te,title:t(`assistantBackups.exportTitle`),message:t(`assistantBackups.exportMessage`),confirmLabel:t(`assistantBackups.export`),onConfirm:ie,onCancel:()=>C(null)});return s.length===0?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`space-y-3`,children:[(0,Y.jsx)(`div`,{className:`flex justify-end`,children:N}),(0,Y.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:t(`assistantBackups.empty`)})]}),se]}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[N,(0,Y.jsx)(`div`,{className:`hidden lg:block`,children:(0,Y.jsxs)(`table`,{className:`w-full table-fixed text-body-medium-lighter`,children:[(0,Y.jsx)(`thead`,{children:(0,Y.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] text-left text-body-small-default text-[var(--content-secondary)]`,children:[(0,Y.jsx)(`th`,{className:`w-[35%] pb-2 pr-4`,children:t(`assistantBackups.columnSnapshotName`)}),(0,Y.jsx)(`th`,{className:`w-[13%] pb-2 pr-4`,children:t(`assistantBackups.columnType`)}),(0,Y.jsx)(`th`,{className:`w-[12%] pb-2 pr-4`,children:t(`assistantBackups.columnReady`)}),(0,Y.jsx)(`th`,{className:`w-[20%] pb-2 pr-4`,children:t(`assistantBackups.columnCreated`)}),(0,Y.jsx)(`th`,{className:`w-[20%] pb-2`})]})}),(0,Y.jsx)(`tbody`,{children:s.map(e=>(0,Y.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] last:border-0`,children:[(0,Y.jsx)(`td`,{className:`py-2.5 pr-4`,children:(0,Y.jsxs)(`div`,{"data-reveal-row":``,className:`flex items-center gap-1`,children:[(0,Y.jsx)(`code`,{className:`truncate text-body-small-default text-[var(--content-default)]`,title:e.snapshot_name,children:e.snapshot_name}),(0,Y.jsx)(j,{variant:`ghost`,size:`compact`,iconOnly:_===e.snapshot_name?(0,Y.jsx)(_t,{className:`text-green-500`}):(0,Y.jsx)(Ot,{}),expandOnMobile:!1,onClick:()=>E(e.snapshot_name),"data-reveal":``,className:`shrink-0`,tooltip:t(`assistantBackups.copySnapshotName`),"aria-label":t(`assistantBackups.copySnapshotName`)})]})}),(0,Y.jsx)(`td`,{className:`overflow-hidden whitespace-nowrap py-2.5 pr-4`,children:(0,Y.jsx)(Rn,{type:e.backup_type})}),(0,Y.jsx)(`td`,{className:`overflow-hidden whitespace-nowrap py-2.5 pr-4`,children:(0,Y.jsx)(z,{tone:e.ready_to_use?`positive`:`warning`,children:e.ready_to_use?t(`assistantBackups.ready`):t(`assistantBackups.pending`)})}),(0,Y.jsx)(`td`,{className:`overflow-hidden whitespace-nowrap py-2.5 pr-4 text-body-medium-default text-[var(--content-default)]`,children:zn(e.created_at)}),(0,Y.jsx)(`td`,{className:`py-2.5 text-right`,children:(0,Y.jsx)(j,{variant:`ghost`,loading:d===e.snapshot_name,leftIcon:(0,Y.jsx)(mt,{}),onClick:()=>m(e),disabled:d!==null||oe||!e.ready_to_use,title:e.ready_to_use?void 0:t(`assistantBackups.notReady`),children:t(`assistantBackups.restore`)})})]},e.snapshot_name))})]})}),(0,Y.jsx)(`div`,{className:`flex flex-col gap-3 lg:hidden`,children:s.map(e=>(0,Y.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)] p-3`,children:[(0,Y.jsxs)(`div`,{className:`mb-2 flex items-center gap-1`,children:[(0,Y.jsx)(`code`,{className:`truncate text-body-small-default text-[var(--content-default)]`,title:e.snapshot_name,children:e.snapshot_name}),(0,Y.jsx)(j,{variant:`ghost`,size:`compact`,iconOnly:_===e.snapshot_name?(0,Y.jsx)(_t,{className:`text-green-500`}):(0,Y.jsx)(Ot,{}),expandOnMobile:!1,onClick:()=>E(e.snapshot_name),className:`shrink-0`,tooltip:t(`assistantBackups.copySnapshotName`),"aria-label":t(`assistantBackups.copySnapshotName`)})]}),(0,Y.jsxs)(`div`,{className:`mb-2 flex flex-wrap items-center gap-2 text-body-medium-lighter`,children:[(0,Y.jsx)(Rn,{type:e.backup_type}),(0,Y.jsx)(z,{tone:e.ready_to_use?`positive`:`warning`,children:e.ready_to_use?t(`assistantBackups.ready`):t(`assistantBackups.pending`)}),(0,Y.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:zn(e.created_at)})]}),(0,Y.jsx)(j,{variant:`ghost`,loading:d===e.snapshot_name,leftIcon:(0,Y.jsx)(mt,{}),onClick:()=>m(e),disabled:d!==null||oe||!e.ready_to_use,title:e.ready_to_use?void 0:t(`assistantBackups.notReady`),children:t(`assistantBackups.restore`)})]},e.snapshot_name))})]}),(0,Y.jsx)(me,{open:p!==null,title:t(`assistantBackups.restoreTitle`),message:p?t(`assistantBackups.restoreMessage`,{name:p.snapshot_name}):``,confirmLabel:t(`assistantBackups.restore`),destructive:!0,onConfirm:O,onCancel:()=>m(null)}),se]})}function Vn({assistantId:e,maintenanceMode:t,onMaintenanceModeChange:n}){let{t:r}=G(`settings`),[i,a]=(0,J.useState)(!1),[s,c]=(0,J.useState)(null),l=be({platformHostedOnly:!0}),u=Ce(),d=(0,J.useCallback)(async()=>{a(!0),c(null);try{let{response:t}=await ae({path:{assistant_id:e},throwOnError:!1});t?.ok?await n():(o(Error(`Enter maintenance mode returned non-ok response`),{context:`enter_maintenance_mode`}),c(r(`recoveryModeControls.enterError`)))}catch(e){o(e,{context:`enter_maintenance_mode`}),c(r(`recoveryModeControls.enterError`))}finally{a(!1)}},[e,n,r]),f=(0,J.useCallback)(async()=>{a(!0),c(null);try{let{response:t}=await p({path:{assistant_id:e},throwOnError:!1});t?.ok?await n():(o(Error(`Exit maintenance mode returned non-ok response`),{context:`exit_maintenance_mode`}),c(r(`recoveryModeControls.exitError`)))}catch(e){o(e,{context:`exit_maintenance_mode`}),c(r(`recoveryModeControls.exitError`))}finally{a(!1)}},[e,n,r]);if(l===`gated`)return null;let h=t?.enabled===!0,g=i||l===`full`&&u;return(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between rounded-lg border border-[var(--border-base)] px-4 py-3`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,Y.jsx)(Ct,{className:`h-4 w-4 shrink-0 ${h?`text-[var(--system-mid-strong)]`:`text-[var(--content-disabled)]`}`}),(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:r(`recoveryModeControls.title`)}),h?(0,Y.jsx)(`p`,{className:`text-body-small-lighter text-[var(--system-mid-strong)]`,children:r(`recoveryModeControls.activeDescription`)}):(0,Y.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:r(`recoveryModeControls.inactiveDescription`)})]})]}),(0,Y.jsx)(`div`,{className:`ml-4 flex shrink-0 items-center gap-2`,children:l===`disabled`?null:g?(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}):h?(0,Y.jsx)(j,{variant:`outlined`,onClick:f,children:r(`recoveryModeControls.resumeAssistant`)}):(0,Y.jsx)(j,{variant:`dangerOutline`,onClick:d,children:r(`recoveryModeControls.enter`)})})]}),l===`disabled`&&(0,Y.jsx)(je,{children:r(h?`recoveryModeControls.loginNoticeExit`:`recoveryModeControls.loginNoticeEnter`)}),s&&(0,Y.jsx)(m,{tone:`error`,children:s})]})}async function Hn(e,t,r){let i=await n(e);if(!i.ok)return{ok:!1,error:i.error??t};let a=await ge(e);return a.ok?{ok:!0}:{ok:!1,error:a.error??r}}function Un({assistantId:e,isLocal:t}){let{t:n}=G(`settings`),[r,i]=(0,J.useState)(!1),[a,o]=(0,J.useState)(!1);return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(j,{variant:`outlined`,loading:r,leftIcon:(0,Y.jsx)(mt,{}),onClick:()=>o(!0),disabled:r,className:`shrink-0`,children:n(`restartAssistant.button`)}),(0,Y.jsx)(me,{open:a,title:n(`restartAssistant.confirmTitle`),message:n(`restartAssistant.confirmMessage`),confirmLabel:n(`restartAssistant.confirmLabel`),onConfirm:async()=>{o(!1),i(!0);try{if(t&&h()&&We(e)){let t=await Hn(e,n(`restartAssistant.failStop`),n(`restartAssistant.failStart`));t.ok?I.success(n(`restartAssistant.toastRestarting`)):I.error(t.error??n(`restartAssistant.toastFailed`))}else{let t=await Te(e);if(t.ok)I.success(n(`restartAssistant.toastRestarting`));else{let e=typeof t.error?.detail==`string`?t.error.detail:n(`restartAssistant.toastFailed`);I.error(e)}}}catch{I.error(n(`restartAssistant.toastFailed`))}finally{i(!1)}},onCancel:()=>o(!1)})]})}function Wn(){let{t:e}=G(`settings`),t=Ze(),n=qe.use.user(),r=be(),i=b(n),[a,s]=(0,J.useState)(null),[l,u]=(0,J.useState)(!0),d=(0,J.useRef)(!1),f=(0,J.useCallback)(()=>{Ne(n?.id??null),I.success(e(`debugControlsPanel.onboardingClearedToast`)),t(He.onboarding.privacy)},[t,e,n?.id]),p=(0,J.useCallback)(async t=>{if(!(!t&&d.current)){t||u(!0);try{let e=await c();e.ok?(d.current=!0,s(e.data)):s(null)}catch(t){o(t,{context:`fetch_assistant_for_debug_controls`}),I.error(e(`debugControlsPanel.loadFailedToast`))}finally{u(!1)}}},[e]);return(0,J.useEffect)(()=>{p()},[p]),(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Y.jsx)(`div`,{className:`flex h-9 w-9 items-center justify-center rounded-lg bg-[var(--surface-base)]`,children:(0,Y.jsx)(Ct,{className:`h-5 w-5 text-[var(--content-secondary)]`})}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`debugControlsPanel.title`)}),(0,Y.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`debugControlsPanel.subtitle`)})]})]}),l?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}),e(`debugControlsPanel.loading`)]}):a?(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between rounded-lg border border-[var(--border-base)] px-4 py-3 dark:border-[var(--border-base)]`,children:[(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`debugControlsPanel.restartTitle`)}),(0,Y.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`debugControlsPanel.restartDescription`)})]}),(0,Y.jsx)(`div`,{className:`ml-4 shrink-0`,children:(0,Y.jsx)(Un,{assistantId:a.id,isLocal:a.is_local})})]}),(0,Y.jsx)(Vn,{assistantId:a.id,maintenanceMode:a.maintenance_mode,onMaintenanceModeChange:()=>p(!0)}),i&&(0,Y.jsxs)(`div`,{className:`flex items-center justify-between rounded-lg border border-[var(--border-base)] px-4 py-3 dark:border-[var(--border-base)]`,children:[(0,Y.jsxs)(`div`,{className:`min-w-0`,children:[(0,Y.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`debugControlsPanel.replayTitle`)}),(0,Y.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`debugControlsPanel.replayDescription`)})]}),(0,Y.jsx)(`div`,{className:`ml-4 shrink-0`,children:(0,Y.jsx)(j,{variant:`outlined`,leftIcon:(0,Y.jsx)(Jt,{}),onClick:f,children:e(`debugControlsPanel.replay`)})})]}),r===`disabled`&&(0,Y.jsx)(je,{children:e(`debugControlsPanel.loginNotice`)}),r!==`disabled`&&(0,Y.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)] px-4 py-3 dark:border-[var(--border-base)]`,children:[(0,Y.jsxs)(`div`,{className:`mb-3 flex items-center gap-2`,children:[(0,Y.jsx)(Ft,{className:`h-4 w-4 text-[var(--content-secondary)]`}),(0,Y.jsx)(`h3`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`debugControlsPanel.backups`)})]}),(0,Y.jsx)(Bn,{assistantId:a.id})]})]}):(0,Y.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`debugControlsPanel.noAssistant`)})]})}function Gn({text:e}){let{t}=G(`settings`),{copy:n,copied:r}=C({errorMessage:t(`doctorChatBlocks.copyError`)});return(0,Y.jsx)(j,{variant:`ghost`,size:`compact`,iconOnly:(0,Y.jsxs)(`div`,{className:`relative h-3.5 w-3.5`,children:[(0,Y.jsx)(_t,{className:`absolute inset-0 h-3.5 w-3.5 text-[var(--system-positive-strong)] transition-opacity duration-150 ${r?`opacity-100`:`opacity-0`}`}),(0,Y.jsx)(Ot,{className:`absolute inset-0 h-3.5 w-3.5 transition-opacity duration-150 ${r?`opacity-0`:`opacity-100`}`})]}),expandOnMobile:!1,onClick:()=>n(e),tooltip:t(r?`doctorChatBlocks.copyTitleCopied`:`doctorChatBlocks.copyTitle`),"aria-label":t(r?`doctorChatBlocks.copyAriaCopied`:`doctorChatBlocks.copyAria`),"data-reveal":``,className:`bg-[var(--surface-overlay)]`})}function Kn({entry:e}){let{t}=G(`settings`),[n,r]=(0,J.useState)(!1),{toolName:i,input:a,result:o,isError:s,status:c}=e.meta,l=c===`running`,u=t(l?`doctorChatBlocks.runningStep`:s?`doctorChatBlocks.failedStep`:`doctorChatBlocks.completedStep`),d=!l&&(o!==void 0||Object.keys(a).length>0);return(0,Y.jsxs)(`div`,{className:`my-1 w-full`,children:[(0,Y.jsxs)(`button`,{type:`button`,"aria-expanded":d?n:void 0,onClick:()=>{d&&r(!n)},className:`flex w-full items-center gap-2 rounded-lg px-3 py-2 transition-colors ${s?`bg-[var(--system-negative-weak)]`:`bg-[var(--surface-base)]`} ${d?`cursor-pointer hover:bg-[var(--surface-hover)]`:`cursor-default`} ${n?`rounded-b-none`:``}`,children:[l?(0,Y.jsx)(q,{className:`h-4 w-4 shrink-0 animate-spin text-[var(--content-disabled)]`}):s?(0,Y.jsx)(Tt,{className:`h-4 w-4 shrink-0 text-[var(--system-negative-strong)]`}):(0,Y.jsx)(It,{className:`h-4 w-4 shrink-0 text-[var(--system-positive-strong)]`}),(0,Y.jsx)(`span`,{className:`text-body-medium-default ${s?`text-[var(--system-negative-strong)]`:`text-[var(--content-default)]`}`,children:u}),(0,Y.jsx)(`span`,{className:`ml-auto flex items-center gap-1.5 text-[var(--content-tertiary)]`,children:d&&(n?(0,Y.jsx)(St,{className:`h-4 w-4`}):(0,Y.jsx)(At,{className:`h-4 w-4`}))})]}),n&&d&&(0,Y.jsxs)(`div`,{className:`rounded-b-lg border-t px-3 pb-3 ${s?`border-[var(--system-negative-weak)] bg-[var(--system-negative-weak)]`:`border-[var(--border-base)] bg-[var(--surface-base)] dark:bg-[var(--surface-lift)]`}`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 py-2`,children:[(0,Y.jsx)(Ct,{className:`h-3.5 w-3.5`}),(0,Y.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:i})]}),(0,Y.jsx)(`div`,{className:`border-t border-[var(--border-base)]`}),(0,Y.jsxs)(`div`,{className:`mt-2.5`,children:[(0,Y.jsx)(`div`,{className:`mb-1.5 text-[10px] font-semibold uppercase tracking-wider text-[var(--content-disabled)]`,children:t(`doctorChatBlocks.technicalDetails`)}),Object.entries(a).map(([e,t])=>(0,Y.jsxs)(`div`,{className:`mt-0.5`,children:[(0,Y.jsxs)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:[e,`:`]}),` `,(0,Y.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:typeof t==`string`?t.length>200?t.slice(0,200)+`...`:t:JSON.stringify(t)})]},e))]}),o!==void 0&&(0,Y.jsxs)(`div`,{className:`mt-3`,children:[(0,Y.jsx)(`div`,{className:`mb-1.5 text-[10px] font-semibold uppercase tracking-wider text-[var(--content-disabled)]`,children:t(`doctorChatBlocks.output`)}),(0,Y.jsx)(`div`,{className:`rounded-md border p-3 ${s?`border-[var(--system-negative-weak)] bg-[var(--system-negative-weak)]/50`:`border-[var(--border-element)] bg-[var(--surface-base)]`}`,children:(0,Y.jsx)(`pre`,{className:`max-h-60 overflow-y-auto whitespace-pre-wrap break-words text-body-small-default ${s?`text-[var(--system-negative-strong)]`:`text-[var(--content-default)]`}`,children:o.length>2e3?o.slice(0,2e3)+`...`:o})})]})]})]})}function qn({entry:e,onRespond:t,disabled:n}){let{t:r}=G(`settings`),{toolName:i,description:a,input:o}=e.meta,[s,c]=(0,J.useState)(!1),l=!!i||!!a||!!o,u=i===`exec_command`;return(0,Y.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)] p-4`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-2`,children:[(0,Y.jsx)(Mt,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-disabled)]`}),(0,Y.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:r(`doctorChatBlocks.confirmationRequired`)})]}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 gap-2`,children:[(0,Y.jsx)(`button`,{type:`button`,disabled:n,onClick:()=>t(`approve`),className:`flex items-center gap-1.5 rounded-md bg-[var(--system-positive-strong)] px-3 py-1.5 text-body-small-default text-white transition-colors hover:bg-[var(--system-positive-strong)] disabled:cursor-not-allowed disabled:opacity-50`,children:r(`doctorChatBlocks.allowOnce`)}),u&&(0,Y.jsx)(`button`,{type:`button`,disabled:n,onClick:()=>t(`approve all exec`),className:`flex items-center gap-1.5 rounded-md border border-[var(--system-positive-strong)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-small-default text-[var(--system-positive-strong)] transition-colors hover:bg-[var(--system-positive-weak)] disabled:cursor-not-allowed disabled:opacity-50`,children:r(`doctorChatBlocks.alwaysAllow`)}),(0,Y.jsx)(`button`,{type:`button`,disabled:n,onClick:()=>t(`deny`),className:`flex items-center gap-1.5 rounded-md border border-[var(--system-negative-strong)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-small-default text-[var(--system-negative-strong)] transition-colors hover:bg-[var(--system-negative-weak)] disabled:cursor-not-allowed disabled:opacity-50`,children:r(`doctorChatBlocks.deny`)})]})]}),l&&(0,Y.jsxs)(`div`,{className:`mt-3`,children:[(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>c(!s),"aria-expanded":s,className:`flex items-center gap-1 text-body-small-default text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-default)]`,children:[(0,Y.jsx)(ht,{className:`h-3 w-3 transition-transform ${s?`rotate-90`:``}`}),r(s?`doctorChatBlocks.hideDetails`:`doctorChatBlocks.showDetails`)]}),s&&(0,Y.jsxs)(`div`,{className:`mt-2 space-y-1.5`,children:[i&&(0,Y.jsxs)(`div`,{className:`flex items-center gap-1.5 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(`span`,{children:r(`doctorChatBlocks.toolLabel`)}),(0,Y.jsx)(`code`,{className:`rounded bg-[var(--surface-base)] px-1.5 py-0.5 font-mono text-[var(--content-secondary)] dark:bg-[var(--surface-lift)] dark:text-[var(--content-default)]`,children:i})]}),a&&(0,Y.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:a}),o&&Object.keys(o).length>0&&(0,Y.jsx)(`pre`,{className:`overflow-x-auto whitespace-pre-wrap rounded bg-[var(--surface-base)] p-2 text-label-medium-default text-[var(--content-secondary)] dark:bg-[var(--surface-lift)] dark:text-[var(--content-default)]`,children:JSON.stringify(o,null,2)})]})]})]})}function Jn({entry:e,onRespond:t,disabled:n}){let{t:r}=G(`settings`),{toolName:i}=e.meta;return(0,Y.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)] p-4`,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-2`,children:[(0,Y.jsx)(Ft,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-disabled)]`}),(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Y.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:r(`doctorChatBlocks.backupPromptTitle`)}),(0,Y.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:(0,Y.jsx)(tt,{ns:`settings`,i18nKey:`doctorChatBlocks.backupPromptBody`,values:{toolName:i},components:{toolCode:(0,Y.jsx)(`code`,{className:`rounded bg-[var(--surface-base)] px-1 py-0.5 font-mono text-[var(--content-secondary)]`})}})})]})]}),(0,Y.jsxs)(`div`,{className:`flex shrink-0 gap-2`,children:[(0,Y.jsx)(j,{variant:`primary`,disabled:n,onClick:()=>t(`backup`),children:r(`doctorChatBlocks.backUp`)}),(0,Y.jsx)(j,{variant:`outlined`,disabled:n,onClick:()=>t(`skip_backup`),children:r(`doctorChatBlocks.skip`)})]})]})})}function Yn({onOpenFeedback:e}){let{t}=G(`settings`);return(0,Y.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)] p-4`,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-2`,children:[(0,Y.jsx)(Dt,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-disabled)]`}),(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,Y.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:t(`doctorChatBlocks.feedbackTitle`)}),(0,Y.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:t(`doctorChatBlocks.feedbackBody`)})]})]}),(0,Y.jsx)(`div`,{className:`flex shrink-0`,children:(0,Y.jsx)(j,{variant:`outlined`,onClick:e,leftIcon:(0,Y.jsx)(Dt,{}),children:t(`doctorChatBlocks.shareFeedback`)})})]})})}function Xn({question:e,answer:t,onRespond:n,disabled:r}){let{t:i}=G(`settings`);return(0,Y.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)] p-4`,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-2`,children:[(0,Y.jsx)(It,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-disabled)]`}),(0,Y.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e})]}),t?(0,Y.jsx)(`span`,{className:`flex shrink-0 items-center gap-1.5 text-body-small-default text-[var(--content-tertiary)]`,children:t===`resolved`?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Zt,{className:`h-4 w-4 text-[var(--system-positive-strong)]`}),i(`doctorChatBlocks.gladSolved`)]}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(Xt,{className:`h-4 w-4`}),i(`doctorChatBlocks.notSolved`)]})}):(0,Y.jsxs)(`div`,{className:`flex shrink-0 gap-2`,children:[(0,Y.jsx)(j,{variant:`outlined`,onClick:()=>n(!0),disabled:r,iconOnly:(0,Y.jsx)(Zt,{}),"aria-label":i(`doctorChatBlocks.solvedAria`),title:i(`doctorChatBlocks.solvedAria`)}),(0,Y.jsx)(j,{variant:`outlined`,onClick:()=>n(!1),disabled:r,iconOnly:(0,Y.jsx)(Xt,{}),"aria-label":i(`doctorChatBlocks.notSolvedAria`),title:i(`doctorChatBlocks.notSolvedAria`)})]})]})})}function Zn({entry:e}){return(0,Y.jsxs)(`div`,{"data-reveal-row":``,className:`flex items-start justify-end gap-1.5`,children:[(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center self-center`,children:(0,Y.jsx)(Gn,{text:e.content})}),(0,Y.jsx)(`div`,{className:`max-w-[80%] whitespace-pre-wrap rounded-lg bg-[var(--surface-lift)] px-4 py-3 text-chat text-[var(--content-default)]`,children:e.content})]})}var Qn=({href:e,children:t})=>(0,Y.jsx)(d,{href:e,tone:`default`,children:t});function $n({entry:e}){return(0,Y.jsxs)(`div`,{"data-reveal-row":``,className:`flex items-start justify-start gap-1.5`,children:[(0,Y.jsx)(`div`,{className:`w-full text-chat text-[var(--content-default)]`,children:(0,Y.jsx)(le,{content:e.content,linkComponent:Qn})}),(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center pt-0.5`,children:(0,Y.jsx)(Gn,{text:e.content})})]})}function er({entry:e}){return(0,Y.jsxs)(`div`,{className:`flex items-start gap-2 text-body-small-default text-[var(--system-negative-strong)]`,children:[(0,Y.jsx)(pt,{className:`mt-0.5 h-3.5 w-3.5 shrink-0`}),(0,Y.jsx)(`span`,{children:e.content})]})}function tr({entry:e}){return(0,Y.jsx)(`div`,{className:`text-center text-body-small-default text-[var(--content-disabled)]`,children:e.content})}var nr=`0 0 724 691`,rr=`#DB4B77`,ir=`#F2F2F2`,ar=`#1A1A1A`,or=`M707.996 341.488C683.572 371.035 643.096 379.081 606.995 383.544C585.458 386.205 563.817 387.947 542.142 388.871C531.271 389.34 520.394 389.578 509.517 389.597C509.127 389.597 508.73 389.604 508.34 389.604C539.98 409.658 571.958 431.456 594.664 461.683C615.354 489.223 627.369 524.084 618.659 558.345C614.714 573.858 606.844 588.374 594.889 599.167C581.012 611.696 562.615 618.079 543.959 615.227C524.928 612.31 508.592 601.272 493.122 590.513C477.163 579.416 461.759 567.586 446.956 554.985C432.226 542.449 418.071 529.273 404.782 515.212C401.597 511.845 398.478 508.439 395.411 504.987C395.332 506.221 395.246 507.449 395.16 508.67C393.64 530.804 390.508 552.813 385.876 574.505C381.812 593.503 376.631 612.297 370.221 630.642C364.769 646.24 357.917 662.018 345.916 673.761C335.032 684.415 319.932 690.693 304.614 689.954C288.622 689.175 276.49 679.894 268.619 666.374C260.055 651.654 254.761 634.51 250.294 618.172C245.424 600.355 242.173 582.096 240.561 563.692C238.882 544.456 238.677 524.613 240.752 505.093C240.164 505.898 239.57 506.703 238.955 507.509C233.457 514.704 227.14 521.378 220.716 527.755C208.154 540.218 194.349 551.433 179.54 561.131C166.422 569.719 152.519 577.132 138.073 583.238C122.86 589.674 106.333 595.787 89.7861 597.351C74.8317 598.764 59.4075 595.437 49.4026 583.548C40.8116 573.336 37.4353 559.13 38.4529 546.02C39.6691 530.33 47.6584 515.879 57.1277 503.647C68.289 489.237 81.7962 476.568 94.8805 463.941C112.63 446.817 130.797 429.759 149.769 413.758C133.652 415.052 117.487 415.257 101.562 414.385C83.9244 413.414 65.996 411.269 49.079 406.015C34.3755 401.454 19.6257 393.756 10.2747 381.167C2.05413 370.11 -2.30039 355.053 1.24128 341.481C5.30564 325.922 19.0643 317.597 32.7163 311.115C64.555 296.005 99.8366 290.097 134.834 288.763C152.538 288.09 170.274 288.71 187.945 289.879C189.611 289.984 191.276 290.097 192.948 290.209C176.744 285.403 161.776 275.713 148.831 265.151C134.458 253.42 121.869 239.663 110.318 225.193C99.3547 211.456 88.8807 197.112 79.3448 182.351C69.558 167.188 61.3172 149.748 63.1485 131.237C66.4331 98.0067 102.368 85.2731 131.491 90.3755C149.836 93.5902 166.349 102.892 181.588 113.209C196.325 123.19 210.724 133.792 224.615 144.922C235.558 153.695 246.224 162.923 256.142 172.858C254.979 152.288 253.539 131.614 254.438 111.017C255.224 92.9499 258.066 74.7764 265.348 58.1084C272.082 42.6945 282.748 29.3267 296.143 19.1613C309.34 9.15344 326.309 1.12634 343.035 0.0771651C360.441 -1.01881 374.92 9.70203 384.813 23.1751C403.157 48.167 404.803 82.1373 400.666 111.764C397.904 131.527 392.564 150.843 388.461 170.35C386.386 180.225 384.575 190.166 383.524 200.207C383.445 200.973 383.379 201.738 383.313 202.511C384.529 200.299 385.863 198.121 387.284 195.949C392.887 187.394 399.146 179.149 405.674 171.274C418.838 155.398 433.225 140.565 448.688 126.907C474.956 103.711 506.371 78.8764 542.863 76.8298C551.982 76.3212 561.479 77.3051 569.778 81.319C576.968 84.7978 582.638 90.5806 586.583 97.4655C594.909 112.028 596.74 129.666 594.387 146.05C589.213 182.06 565.7 211.211 538.798 234.164C524.716 246.184 509.576 256.879 494.542 267.665C492.553 269.091 490.564 270.517 488.575 271.942C500.847 267.367 513.29 263.228 525.807 259.459C547.515 252.917 569.593 247.537 592.101 244.567C611.965 241.946 632.332 241.095 652.289 243.26C667.541 244.916 683.03 248.686 696.346 256.528C710.032 264.595 720.156 277.487 722.555 293.423C725.144 310.667 718.966 328.22 707.996 341.488Z`,sr=[{d:`M320.715 343.724C320.838 359.862 316.431 375.655 310.169 390.408C310.138 390.482 310.107 390.555 310.07 390.629C307.833 395.777 305.299 400.893 302.372 405.757C296.079 416.243 287.955 425.559 277.045 431.507C262.264 439.554 242.097 440.564 229.523 427.806C219.821 417.961 217.343 402.876 219.161 389.644C221.017 376.135 227.365 363.661 231.267 350.694C233.246 344.106 234.793 337.265 234.398 330.338C233.998 323.381 230.971 317.932 226.94 312.433C222.909 306.929 220.468 301.067 221.042 294.11C221.578 287.632 224.148 281.58 228.352 276.63C238.627 264.543 255.953 264.131 269.612 270.165C277.057 273.453 283.597 278.464 289.644 283.858C293.749 287.515 297.737 291.333 301.41 295.427C302.884 297.065 304.301 298.746 305.663 300.476C315.513 313.012 320.592 327.789 320.715 343.724Z`,fill:ir},{d:`M305.663 300.476C304.301 298.746 302.884 297.065 301.41 295.427C297.737 291.333 293.749 287.515 289.644 283.858C283.597 278.464 277.057 273.453 269.612 270.165C255.953 264.131 238.627 264.543 228.352 276.63C224.148 281.58 221.578 287.632 221.042 294.11C220.468 301.067 222.909 306.929 226.94 312.433C230.971 317.932 233.998 323.381 234.398 330.338C234.793 337.265 233.246 344.106 231.267 350.694C227.365 363.661 221.017 376.135 219.161 389.644C217.343 402.876 219.821 417.961 229.523 427.806C242.097 440.564 262.264 439.554 277.045 431.507C287.955 425.559 296.079 416.243 302.372 405.757C305.299 400.893 307.833 395.777 310.07 390.629C310.107 390.555 310.138 390.482 310.169 390.408C316.431 375.655 320.838 359.862 320.715 343.724C320.592 327.789 315.513 313.012 305.663 300.476ZM304.524 387.107C298.767 400.413 291.229 413.86 279.185 422.468C278.809 422.733 278.432 422.997 278.05 423.256C277.687 423.502 277.317 423.743 276.941 423.977C265.698 431.107 250.831 434.142 238.867 426.926C227.846 420.282 224.518 406.305 225.233 394.268C225.96 382.034 231.477 370.458 235.428 359.025C239.323 347.739 242.855 335.277 239.921 323.338C238.522 317.673 235.458 313.117 232.087 308.456C228.315 303.235 226.558 297.749 228.037 291.302C231.212 277.479 244.84 270.743 258.221 273.348C267.843 275.226 276.219 280.681 283.665 287.134C283.721 287.183 283.782 287.232 283.837 287.282C287.314 290.311 290.587 293.549 293.681 296.733C305.238 308.622 312.973 322.624 314.027 339.383C315.057 355.743 310.878 372.139 304.524 387.107Z`,fill:ir},{d:`M320.716 343.724C320.839 359.862 316.432 375.655 310.17 390.408C310.139 390.481 310.108 390.555 310.071 390.629C307.833 395.777 305.3 400.893 302.372 405.757C299.642 409.766 296.597 413.571 293.145 417.043C293.022 417.13 292.893 417.21 292.769 417.29C288.011 420.43 282.574 422.85 276.941 423.976C270.58 425.251 263.972 424.882 257.803 422.031C244.686 415.978 243.435 402.371 248.662 390.796C254.745 377.97 263.658 365.853 265.575 351.691C266.647 343.699 265.051 336.243 262.672 328.602C260.465 321.491 257.956 314.225 258.197 306.726C258.548 295.587 266.604 288.944 278.094 287.558C279.912 287.331 281.779 287.189 283.666 287.134C286.643 287.029 289.669 287.14 292.664 287.478C293.028 287.78 293.379 288.082 293.737 288.39C296.363 290.662 298.945 292.995 301.411 295.427C302.884 297.065 304.302 298.746 305.664 300.476C315.513 313.012 320.592 327.789 320.716 343.724Z`,fill:ar},{d:`M449.963 343.724C450.086 359.862 445.679 375.655 439.417 390.408C439.386 390.482 439.355 390.555 439.318 390.629C437.081 395.777 434.548 400.893 431.62 405.757C425.327 416.243 417.203 425.559 406.293 431.507C391.512 439.554 371.345 440.564 358.771 427.806C349.069 417.961 346.591 402.876 348.409 389.644C350.265 376.135 356.613 363.661 360.515 350.694C362.493 344.106 364.041 337.265 363.646 330.338C363.245 323.381 360.219 317.932 356.188 312.433C352.157 306.929 349.716 301.067 350.289 294.11C350.826 287.632 353.396 281.58 357.599 276.63C367.874 264.543 385.201 264.131 398.859 270.165C406.305 273.453 412.845 278.464 418.891 283.858C422.996 287.515 426.985 291.333 430.658 295.427C432.131 297.065 433.549 298.746 434.911 300.476C444.761 313.012 449.84 327.789 449.963 343.724Z`,fill:ir},{d:`M434.911 300.476C433.549 298.746 432.131 297.065 430.658 295.427C426.985 291.333 422.996 287.515 418.891 283.858C412.845 278.464 406.305 273.453 398.859 270.165C385.201 264.131 367.874 264.543 357.599 276.63C353.396 281.58 350.826 287.632 350.289 294.11C349.716 301.067 352.157 306.929 356.188 312.433C360.219 317.932 363.245 323.381 363.646 330.338C364.041 337.265 362.493 344.106 360.515 350.694C356.613 363.661 350.265 376.135 348.409 389.644C346.591 402.876 349.069 417.961 358.771 427.806C371.345 440.564 391.512 439.554 406.293 431.507C417.203 425.559 425.327 416.243 431.62 405.757C434.548 400.893 437.081 395.777 439.318 390.629C439.355 390.555 439.386 390.482 439.417 390.408C445.679 375.655 450.086 359.862 449.963 343.724C449.84 327.789 444.761 313.012 434.911 300.476ZM433.771 387.107C428.014 400.413 420.476 413.86 408.432 422.468C408.056 422.733 407.68 422.997 407.298 423.256C406.935 423.502 406.565 423.743 406.189 423.977C394.946 431.107 380.079 434.142 368.115 426.926C357.094 420.282 353.766 406.305 354.481 394.268C355.208 382.034 360.724 370.458 364.675 359.025C368.571 347.739 372.103 335.277 369.169 323.338C367.77 317.673 364.706 313.117 361.335 308.456C357.562 303.235 355.806 297.749 357.285 291.302C360.46 277.479 374.087 270.743 387.469 273.348C397.09 275.226 405.467 280.681 412.913 287.134C412.968 287.183 413.03 287.232 413.085 287.282C416.562 290.311 419.835 293.549 422.929 296.733C434.486 308.622 442.221 322.624 443.275 339.383C444.305 355.743 440.125 372.139 433.771 387.107Z`,fill:ir},{d:`M449.964 343.724C450.087 359.862 445.68 375.655 439.418 390.408C439.387 390.481 439.356 390.555 439.319 390.629C437.081 395.777 434.548 400.893 431.621 405.757C428.89 409.766 425.845 413.571 422.393 417.043C422.27 417.13 422.141 417.21 422.017 417.29C417.259 420.43 411.823 422.85 406.189 423.976C399.828 425.251 393.221 424.882 387.051 422.031C373.934 415.978 372.683 402.371 377.91 390.796C383.993 377.97 392.906 365.853 394.823 351.691C395.896 343.699 394.299 336.243 391.92 328.602C389.713 321.491 387.205 314.225 387.445 306.726C387.797 295.587 395.852 288.944 407.342 287.558C409.16 287.331 411.028 287.189 412.914 287.134C415.891 287.029 418.917 287.14 421.913 287.478C422.276 287.78 422.628 288.082 422.985 288.39C425.611 290.662 428.193 292.995 430.659 295.427C432.132 297.065 433.55 298.746 434.912 300.476C444.762 313.012 449.841 327.789 449.964 343.724Z`,fill:ar}];function cr({className:e}){return(0,Y.jsxs)(`svg`,{viewBox:nr,xmlns:`http://www.w3.org/2000/svg`,className:e,"aria-hidden":`true`,children:[(0,Y.jsx)(`path`,{d:or,fill:rr}),sr.map((e,t)=>(0,Y.jsx)(`path`,{d:e.d,fill:e.fill},t)),(0,Y.jsxs)(`g`,{transform:`translate(370 510) scale(1.37) translate(-370 -510)`,children:[(0,Y.jsx)(`path`,{d:`M 230 440 Q 210 560 320 585 Q 430 610 500 540`,stroke:`#1F1F23`,strokeWidth:`22`,strokeLinecap:`round`,fill:`none`}),(0,Y.jsx)(`circle`,{cx:`230`,cy:`435`,r:`16`,fill:`#1F1F23`}),(0,Y.jsx)(`circle`,{cx:`510`,cy:`525`,r:`58`,fill:`#E4E4E7`,stroke:`#1F1F23`,strokeWidth:`10`}),(0,Y.jsx)(`circle`,{cx:`510`,cy:`525`,r:`34`,fill:`#52525B`}),(0,Y.jsx)(`circle`,{cx:`500`,cy:`515`,r:`10`,fill:`#A1A1AA`,opacity:`0.55`})]})]})}var lr=`Did the Doctor solve your problem?`;function ur(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:{}}function dr(e){for(let t=e.length-1;t>=0;--t)if(e[t]?.kind===`user`)return t;return-1}function fr(e){return e.slice(dr(e)+1).some(e=>e.kind===`feedback_prompt`)}function pr(e){let t=dr(e)+1,n=[],r=[];return e.forEach((e,i)=>{if(i>=t&&e.kind===`user_outcome_prompt`){r.push(e);return}n.push(e)}),{transcript:n,trailingPrompts:r}}var mr=/^\d+-\d+$/;function hr(e){let t=e.reason??e.classification;return t===`bug_report`||t===`feature_request`||t===`other`?t:void 0}function gr(e){return typeof e==`string`&&mr.test(e)}function _r(e){return e.map(e=>e.source_event_id).filter(gr)}function vr(e){for(let t=e.length-1;t>=0;--t){let n=e[t]?.source_event_id;if(gr(n))return n}return null}function yr(e){let t=[];for(let n of e){let e=Date.parse(n.occurred_at),r=ur(n.metadata);switch(n.kind){case`user`:t.push({id:n.id,kind:`user`,content:n.content,timestamp:e});break;case`assistant`:t.push({id:n.id,kind:`assistant`,content:n.content,timestamp:e});break;case`tool_call`:{let i=typeof r.toolName==`string`?r.toolName:n.content;t.push({id:n.id,kind:`tool_call`,content:i,timestamp:e,meta:{toolName:i,input:r.input??{},toolCallId:typeof r.id==`string`?r.id:n.id,status:`running`}});break}case`tool_result`:{let e=r.toolCallId,i=r.isError===!0,a=t.findIndex(t=>t.kind===`tool_call`&&t.meta.toolCallId===e);if(a===-1)break;let o=t[a];if(o.kind!==`tool_call`)break;t[a]={...o,meta:{...o.meta,result:n.content,isError:i,status:i?`error`:`completed`}};break}case`approval`:{let i=typeof r.toolName==`string`?r.toolName:n.content;t.push({id:n.id,kind:`approval`,content:i,timestamp:e,meta:{toolName:i,input:r.input??{},toolCallId:typeof r.id==`string`?r.id:n.id,description:typeof r.description==`string`?r.description:``}});break}case`status`:if(n.content===`completed`)t.push({id:n.id,kind:`status`,content:`Session completed`,timestamp:e});else if(n.content===`error`)t.push({id:n.id,kind:`status`,content:`Session ended with error`,timestamp:e});else if(n.content===`feedback_prompt`){let i=typeof r.summary==`string`?r.summary.trim():``,a=hr(r);t.push({id:n.id,kind:`feedback_prompt`,content:i||`Share feedback`,...a?{meta:{reason:a}}:{},timestamp:e})}else n.content===`user_outcome_prompt`&&t.push({id:n.id,kind:`user_outcome_prompt`,content:lr,timestamp:e});break;case`error`:t.push({id:n.id,kind:`error`,content:n.content,timestamp:e});break;default:break}}return t}function br(e){switch(e){case`active`:return`active`;case`completed`:return`completed`;case`error`:return`error`}}function xr(e,t){return t!==`resolved`&&t!==`not_resolved`?e:e.map(e=>e.kind===`user_outcome_prompt`?{...e,meta:{...e.meta,answer:t}}:e)}function Sr(e){for(let t=e.length-1;t>=0;--t){let n=e[t];if(n&&!(n.kind===`status`||n.kind===`feedback_prompt`||n.kind===`user_outcome_prompt`))return n.kind===`approval`}return!1}function Cr(e){for(let t=e.length-1;t>=0;--t){let n=e[t];if(n&&!(n.kind===`status`||n.kind===`feedback_prompt`||n.kind===`user_outcome_prompt`))return n.kind===`backup_prompt`}return!1}function wr(e){let t=[];for(let n of e)switch(n.kind){case`user`:t.push(`User: ${n.content}`);break;case`assistant`:t.push(`Doctor: ${n.content}`);break;case`feedback_prompt`:t.push(`Feedback Prompt: ${n.content}`);break;case`user_outcome_prompt`:t.push(`User Outcome Prompt: ${n.content}${n.meta?.answer?` (answered: ${n.meta.answer===`resolved`?`Yes`:`No`})`:``}`);break;case`tool_call`:{let{toolName:e,input:r,result:i,isError:a}=n.meta;t.push(`Tool Call: ${e}`),Object.keys(r).length>0&&t.push(` Input: ${JSON.stringify(r,null,2)}`),i!==void 0&&t.push(` ${a?`Error`:`Output`}: ${i}`);break}case`approval`:{let{toolName:e,description:r,input:i}=n.meta;t.push(`Approval Required: ${e}${r?` — ${r}`:``}`),Object.keys(i).length>0&&t.push(` Input: ${JSON.stringify(i,null,2)}`);break}case`backup_prompt`:t.push(`Backup Prompt: ${n.meta.toolName}`);break;case`error`:t.push(`Error: ${n.content}`);break;case`status`:t.push(`--- ${n.content} ---`);break}return t.join(`
|
|
3
|
-
|
|
4
|
-
`)}function Tr(e){return e[0]??null}var Z=N(st()((e,t)=>({entries:[],inputValue:``,thinking:!1,sessionId:null,sessionStatus:`idle`,pendingApproval:!1,pendingBackup:!1,historyDismissed:!1,streamingEntryId:null,entryCounter:0,lastAssistantId:null,latestReplayableSourceEventId:null,processedSourceEventIds:new Set,nextId:()=>{let n=t().entryCounter+1;return e({entryCounter:n}),`entry-${n}`},appendEntry:n=>{let r=t().nextId();e(e=>({entries:[...e.entries,{...n,id:r,timestamp:Date.now()}]}))},updateEntries:t=>{e(e=>({entries:t(e.entries)}))},teardown:()=>{e({sessionId:null,sessionStatus:`completed`,pendingApproval:!1,pendingBackup:!1,thinking:!1,streamingEntryId:null,latestReplayableSourceEventId:null,processedSourceEventIds:new Set})},reset:()=>{e({entries:[],inputValue:``,thinking:!1,sessionId:null,sessionStatus:`idle`,pendingApproval:!1,pendingBackup:!1,historyDismissed:!1,streamingEntryId:null,entryCounter:0,latestReplayableSourceEventId:null,processedSourceEventIds:new Set})},resetForNewSession:()=>{e({entries:[],inputValue:``,thinking:!1,sessionId:null,sessionStatus:`idle`,pendingApproval:!1,pendingBackup:!1,historyDismissed:!0,streamingEntryId:null,entryCounter:0,latestReplayableSourceEventId:null,processedSourceEventIds:new Set})},setInputValue:t=>e({inputValue:t}),setThinking:t=>e({thinking:t}),setPendingApproval:t=>e({pendingApproval:t}),setPendingBackup:t=>e({pendingBackup:t}),setSessionId:t=>e({sessionId:t}),setSessionStatus:t=>e({sessionStatus:t}),setHistoryDismissed:t=>e({historyDismissed:t}),setStreamingEntryId:t=>e({streamingEntryId:t}),setEntries:t=>e({entries:t}),resetReplayState:()=>{e({latestReplayableSourceEventId:null,processedSourceEventIds:new Set})},seedReplayState:(t,n)=>{e({latestReplayableSourceEventId:n,processedSourceEventIds:new Set(t)})},recordReplayableSourceEventId:n=>{let r=t().processedSourceEventIds;return r.has(n)?!1:(e({latestReplayableSourceEventId:n,processedSourceEventIds:new Set(r).add(n)}),!0)}})));function Er({onShareFeedback:e,onCopySession:t,defaultOpen:n}){let{t:r}=G(`settings`),i=r(`doctorPanel.sessionMenu`);return!e&&!t?null:(0,Y.jsxs)(A.Root,{defaultOpen:n,children:[(0,Y.jsx)(A.Trigger,{asChild:!0,children:(0,Y.jsx)(j,{variant:`ghost`,size:`regular`,expandOnMobile:!1,iconOnly:(0,Y.jsx)(Rt,{}),"aria-label":i})}),(0,Y.jsxs)(A.Content,{title:i,align:`end`,children:[e?(0,Y.jsx)(A.Item,{icon:Dt,label:r(`doctorPanel.shareFeedback`),onSelect:e}):null,t?(0,Y.jsx)(A.Item,{icon:Et,label:r(`doctorPanel.copySession`),onSelect:t}):null]})]})}var Dr=`Hi! I'm the Doctor. State the nature of the issue you're experiencing with your assistant and I'll help diagnose and fix it.`,Or=new Set([`approve`,`approve all exec`,`approve all future exec commands`,`approve_all_exec`,`deny`]);function kr(e,t){Ye({path:{assistant_id:e,session_id:t},throwOnError:!1}).catch(e=>o(e,{context:`doctor_cleanup_destroy`})),p({path:{assistant_id:e},throwOnError:!1}).catch(e=>o(e,{context:`doctor_cleanup_maintenance_exit`}))}var Q={source_event_id:W().nullable().optional()},Ar=at(`type`,[H({...Q,type:U(`message`),content:W()}),H({...Q,type:U(`message_delta`),content:W()}),H({...Q,type:U(`tool_call`),toolName:W(),input:it(W(),rt()),id:W()}),H({...Q,type:U(`tool_result`),toolCallId:W(),content:W(),isError:nt()}),H({...Q,type:U(`approval_required`),toolName:W(),input:it(W(),rt()),id:W(),description:W()}),H({...Q,type:U(`backup_prompt`),toolName:W()}),H({...Q,type:U(`feedback_prompt`),summary:W().optional(),reason:ct([`bug_report`,`feature_request`,`other`]).optional(),classification:ct([`bug_report`,`feature_request`,`other`]).optional()}),H({...Q,type:U(`user_outcome_prompt`)}),H({...Q,type:U(`status`),status:lt([U(`active`),U(`completed`),U(`error`)])}),H({...Q,type:U(`error`),message:W()})]);function jr(e){try{let t=typeof e==`string`?JSON.parse(e):e,n=Ar.safeParse(t);return n.success?n.data:null}catch{return null}}function Mr(e,t){e.setThinking(!1);let n=e.getStreamingEntryId();if(n)e.updateEntries(e=>e.map(e=>e.id===n?{...e,content:e.content+t.content}:e));else{let n=e.nextId();e.setStreamingEntryId(n),e.updateEntries(e=>[...e,{id:n,kind:`assistant`,content:t.content,timestamp:Date.now()}])}}function Nr(e){e.setThinking(!1),e.setStreamingEntryId(null)}function Pr(e,t){e.setThinking(!1),e.setStreamingEntryId(null),e.appendEntry({kind:`tool_call`,content:t.toolName,meta:{toolName:t.toolName,input:t.input,toolCallId:t.id,status:`running`}})}function Fr(e,t){e.updateEntries(e=>{let n=e.findIndex(e=>e.kind===`tool_call`&&e.meta.toolCallId===t.toolCallId);if(n===-1)return e;let r=e[n];if(r.kind!==`tool_call`)return e;let i=[...e];return i[n]={...r,meta:{...r.meta,result:t.content,isError:t.isError,status:t.isError?`error`:`completed`}},i})}function Ir(e,t){e.setThinking(!1),e.setPendingApproval(!0),e.appendEntry({kind:`approval`,content:t.toolName,meta:{toolName:t.toolName,input:t.input,toolCallId:t.id,description:t.description}})}function Lr(e,t){e.setThinking(!1),e.setPendingBackup(!0),e.appendEntry({kind:`backup_prompt`,content:t.toolName,meta:{toolName:t.toolName}})}function Rr(e,t){let n=t.summary?.trim(),r=t.reason??t.classification;if(fr(e.getEntries())){(n||r)&&e.updateEntries(e=>e.map((t,i)=>t.kind===`feedback_prompt`&&!e.slice(i+1).some(e=>e.kind===`feedback_prompt`)?{...t,...n?{content:n}:{},...r?{meta:{...t.meta,reason:r}}:{}}:t));return}e.appendEntry({kind:`feedback_prompt`,content:n||`Share feedback`,...r?{meta:{reason:r}}:{}})}function zr(e){e.setThinking(!0),e.appendEntry({kind:`user_outcome_prompt`,content:lr})}function Br(e,t){return t.status===`completed`||t.status===`error`?(e.setThinking(!1),e.setSessionStatus(t.status),e.appendEntry({kind:`status`,content:t.status===`completed`?`Session completed`:`Session ended with error`}),!0):(e.setSessionStatus(t.status),!1)}function Vr(e,t){e.setThinking(!1),e.setPendingApproval(!1),e.setPendingBackup(!1),e.setStreamingEntryId(null),e.appendEntry({kind:`error`,content:t.message})}function Hr(e){return e}var Ur=new Set([404,410]),Wr=`replay_gap`,Gr=5,Kr=500,qr=5e3,Jr=45e3;function Yr(e){let t=Kr*2**e,n=Math.floor(Math.random()*250);return Math.min(t,qr)+n}function Xr(e,t){return new Promise(n=>{if(t.aborted){n();return}let r=setTimeout(n,e);t.addEventListener(`abort`,()=>{clearTimeout(r),n()},{once:!0})})}async function Zr(e){return e.status===409?(await e.clone().json().catch(()=>null))?.code===Wr:!1}function Qr(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e.id;return typeof t==`string`&&t.length>0?t:null}function $r(e,t){let n=yr(t),r=br(e),i=Z.getState();return i.setEntries(n),i.setSessionStatus(r),i.setPendingApproval(r===`active`&&Sr(n)),i.setPendingBackup(r===`active`&&Cr(n)),i.seedReplayState(_r(t),vr(t)),r}async function ei(e,t){let n=await _({path:{assistant_id:e,doctor_session_id:t},throwOnError:!1});return!n.response?.ok||!n.data?null:$r(n.data.status,n.data.messages??[])===`active`?(Z.getState().setSessionId(t),`active`):`terminal`}function ti(){let e=(0,J.useRef)(null);return{connectSSE:(0,J.useCallback)((t,n)=>{e.current?.abort();let r=new AbortController;e.current=r;let a=!1,s=()=>e.current===r,c={getEntries:()=>Z.getState().entries,updateEntries:e=>Z.getState().updateEntries(e),setThinking:e=>Z.getState().setThinking(e),setPendingApproval:e=>Z.getState().setPendingApproval(e),setPendingBackup:e=>Z.getState().setPendingBackup(e),setSessionStatus:e=>Z.getState().setSessionStatus(e),appendEntry:e=>Z.getState().appendEntry(e),nextId:()=>Z.getState().nextId(),getStreamingEntryId:()=>Z.getState().streamingEntryId,setStreamingEntryId:e=>Z.getState().setStreamingEntryId(e)},l=t=>{if(!s())return;e.current=null;let n=Z.getState();n.setThinking(!1),n.setPendingApproval(!1),n.setPendingBackup(!1),n.setStreamingEntryId(null),n.setSessionStatus(`error`),n.appendEntry({kind:`error`,content:t})};function u(e){if(!s())return;let t=e.source_event_id;if(!(gr(t)&&!Z.getState().recordReplayableSourceEventId(t)))switch(e.type){case`message_delta`:Mr(c,e);break;case`message`:Nr(c);break;case`tool_call`:Pr(c,e);break;case`tool_result`:Fr(c,e);break;case`approval_required`:Ir(c,e);break;case`backup_prompt`:Lr(c,e);break;case`feedback_prompt`:Rr(c,e);break;case`user_outcome_prompt`:zr(c);break;case`status`:Br(c,e)&&(a=!0);break;case`error`:Vr(c,e);break}}(async()=>{let e=0,c=0;for(;!r.signal.aborted&&s();){let d=new AbortController,f=()=>{d.abort()};r.signal.addEventListener(`abort`,f,{once:!0});let p=F({idleTimeoutMs:Jr,assistantId:t});p.resetCounters();let m=null,h=!1,g=!1,_=null,v=!1,y=null;try{let a=Z.getState().latestReplayableSourceEventId,o={Accept:`text/event-stream, application/json`,...ve()};a&&(o[`Last-Event-ID`]=a);let{stream:c}=await i({path:{assistant_id:t,session_id:n},headers:o,signal:d.signal,sseMaxRetryAttempts:0,fetch:(async(e,t)=>{let n=await globalThis.fetch(e,t);return n.ok||(_=n.status,Ur.has(n.status)&&(h=!0),await Zr(n)&&(g=!0)),n}),onSseEvent:t=>{let n=t.data!==void 0;n&&(v=!0,y=Qr(t)),p.recordTraffic(n),!r.signal.aborted&&s()&&p.arm(d,e)},onSseError:e=>{h||g||(m=Ie(e,`Doctor stream disconnected`))}});if(!s())return;p.arm(d,e);for await(let t of c){if(!s())return;v=!0,e=0,p.arm(d,e);let n=y;y=null;let r=jr(t);r&&u(r.source_event_id||!n?r:{...r,source_event_id:n})}}catch(e){if(r.signal.aborted)return;m=p.consumeLastAbortCause()===`watchdog`?Ie(e,`Doctor stream stalled`):Ie(e,`Doctor stream connection failed`)}finally{p.clear(),r.signal.removeEventListener(`abort`,f)}if(!s()||a)return;if(g){if(c>=1){l(`Doctor event history changed while reconnecting. Start a new session to continue.`);return}c+=1;let e=null;try{e=await ei(t,n)}catch(e){o(e,{context:`doctor_replay_gap_refresh`})}if(!s())return;if(e===`active`)continue;if(e===`terminal`){a=!0;return}l(`Doctor event history changed while reconnecting. Start a new session to continue.`);return}if(h){a=!0;let e=Z.getState();e.setThinking(!1),e.setStreamingEntryId(null),e.setSessionStatus(`completed`),e.setPendingApproval(!1),e.setPendingBackup(!1),e.appendEntry({kind:`status`,content:`Previous session expired. Start a new session to continue.`});return}if(m||=Error(`Doctor event stream ended before the session completed.`),Hr(v)&&(e=0),e>=Gr){o(m,{context:`doctor_sse_stream`}),l(_?`Failed to connect to event stream (${_}). Start a new session to continue.`:`Event stream disconnected. Start a new session to continue.`);return}await Xr(Yr(e),r.signal),e+=1}})()},[]),abort:(0,J.useCallback)(()=>{e.current?.abort(),e.current=null},[])}}var ni=64,ri=240;function ii(e){let[t,n]=(0,J.useState)(null),[r,i]=(0,J.useState)(!1),a=(0,J.useRef)(!0),o=(0,J.useCallback)(e=>{n(t=>(e!==t&&(a.current=!0,i(!1)),e))},[]),s=(0,J.useCallback)(()=>{let e=t;if(!e)return;let n=Math.max(0,e.scrollHeight-e.clientHeight),r=Math.max(0,n-e.scrollTop);a.current=r<=ni,i(r>ri)},[t]);return(0,J.useEffect)(()=>{a.current&&t&&t.scrollTo({top:t.scrollHeight,behavior:`auto`})},[e,t]),(0,J.useEffect)(()=>{if(t)return t.addEventListener(`scroll`,s,{passive:!0}),()=>{t.removeEventListener(`scroll`,s)}},[t,s]),(0,J.useEffect)(()=>{s()},[e,s]),(0,J.useEffect)(()=>{if(!t||typeof ResizeObserver>`u`)return;let e=t.firstElementChild;if(!e)return;let n=new ResizeObserver(()=>{a.current&&t.scrollTo({top:t.scrollHeight,behavior:`auto`}),s()});return n.observe(e),()=>{n.disconnect()}},[t,s]),{scrollContainerRef:o,showScrollToLatest:r,scrollToLatest:(0,J.useCallback)(()=>{t&&(a.current=!0,t.scrollTo({top:t.scrollHeight,behavior:`auto`}),i(!1))},[t])}}function ai({entry:e,onRespond:t}){return(0,Y.jsx)(`div`,{className:`max-w-[90%]`,children:(0,Y.jsx)(Xn,{question:e.content,answer:e.meta?.answer,onRespond:n=>t(e.id,n)})})}function oi(){let{t:e}=G(`settings`),n=t.use.activeAssistantId()??``,r=Z.use.entries(),i=Z.use.inputValue(),a=Z.use.pendingApproval(),s=Z.use.pendingBackup(),c=Z.use.thinking(),l=Z.use.streamingEntryId(),u=Z.use.sessionId(),d=Z.use.sessionStatus(),f=Z.use.historyDismissed(),[p,m]=(0,J.useState)(!1),[h,g]=(0,J.useState)(null),_=be(),v=(0,J.useRef)(null),y=(0,J.useRef)(null),b=(0,J.useRef)(!1),{connectSSE:C,abort:w}=ti(),T=!!n&&u===null&&!f&&r.length===0,E=ut({...x({path:{assistant_id:n||`placeholder`},query:{limit:1}}),enabled:T}),D=(E.data?Tr(E.data.results??[]):null)?.id??null,O=ut({...S({path:{assistant_id:n||`placeholder`,doctor_session_id:D??``}}),enabled:!!n&&!!D&&!f&&u===null&&r.length===0}),k=f?void 0:O.data,A=k?br(k.status):null,ae=(0,J.useMemo)(()=>k?xr(yr(k.messages??[]),k.user_outcome):[],[k]);(0,J.useEffect)(()=>{if(f||u!==null||r.length>0||!k||!D||A!==`active`)return;let e=Z.getState(),t=k.messages??[],i=xr(yr(t),k.user_outcome);e.setEntries(i),e.setPendingApproval(Sr(i)),e.setPendingBackup(Cr(i)),e.seedReplayState(_r(t),vr(t)),e.setSessionId(D),e.setSessionStatus(`active`),C(n,D)},[f,u,r.length,k,A,D,n,C]),(0,J.useEffect)(()=>{E.error&&o(E.error,{context:`doctor_history_list`})},[E.error]),(0,J.useEffect)(()=>{O.error&&o(O.error,{context:`doctor_history_detail`})},[O.error]);let M=ot({async mutationFn(e){let{data:t,error:n,response:r}=await re({...e,throwOnError:!1});if(n)throw r?.status===429?new we(429,`You've used all of your available Doctor sessions for this month. Please try again next month.`):n;return t},onSuccess(e){let t=Z.getState();t.resetReplayState(),t.setSessionId(e.session_id),t.setSessionStatus(`active`),t.setEntries([{kind:`assistant`,content:Dr,id:`greeting`,timestamp:Date.now()}]),C(n,e.session_id)},onError(e){e instanceof we&&e.status===429||o(e,{context:`start_doctor_session`});let t=Z.getState();t.setSessionStatus(`error`),t.appendEntry({kind:`error`,content:e instanceof we?e.message:te(e,void 0,`Failed to start doctor session`)})}}),N=oe({onMutate(e){let t=e.body.content,n=Z.getState();n.appendEntry({kind:`user`,content:t}),n.setInputValue(``),n.setThinking(!0),Or.has(t.toLowerCase())&&n.setPendingApproval(!1)},onError(e){o(e,{context:`send_doctor_message`}),Z.getState().setThinking(!1),Z.getState().appendEntry({kind:`error`,content:te(e,void 0,`Failed to send message`)})}}),se=M.isPending,P=N.isPending,ce=e=>{let t=e.trim();!t||!u||(Ce(),N.mutate({path:{assistant_id:n,session_id:u},body:{content:t}}))},le=(0,J.useCallback)(e=>{g({message:e?.message?.trim()||void 0,reason:e?.reason}),m(!0)},[]),ue=(0,J.useCallback)(()=>{m(!1),g(null)},[]),de=O.refetch,fe=(0,J.useCallback)((e,t)=>{let r=Z.getState(),i=r.sessionId===null,a=r.sessionId??D;if(!n||!a)return;let s=r.entries.find(t=>t.id===e),c=s?.kind===`user_outcome_prompt`?s.meta?.answer:void 0,l=t?`resolved`:`not_resolved`,u=t=>{r.updateEntries(n=>n.map(n=>n.id===e&&n.kind===`user_outcome_prompt`?{...n,meta:{...n.meta,answer:t}}:n))};u(l),ie({path:{assistant_id:n,session_id:a},body:{resolved:t},throwOnError:!1}).then(({error:t})=>{if(t){let n=Z.getState(),r=n.entries.find(t=>t.id===e);n.sessionId===a&&r?.kind===`user_outcome_prompt`&&r.meta?.answer===l&&u(c),o(t,{context:`doctor_session_user_outcome`})}else i&&de()}),t||le({message:`The Doctor wasn't able to solve my problem: `})},[n,D,le,de]),pe=()=>{w();let e=Z.getState();e.sessionId&&n&&kr(n,e.sessionId),e.teardown()},me=()=>{w();let e=Z.getState();e.sessionId&&n&&kr(n,e.sessionId),e.resetForNewSession()},F=(0,J.useMemo)(()=>u||r.length>0?r:f?[]:ae,[u,r,f,ae]),he=u??(f?null:D),ge=(0,J.useMemo)(()=>wr(F),[F]),_e=(0,J.useCallback)(()=>{ne(ge,{successMessage:e(`doctorPanel.copiedToast`),errorMessage:e(`doctorPanel.copyFailed`)})},[ge,e]),{transcript:I,trailingPrompts:ve}=(0,J.useMemo)(()=>pr(F),[F]),ye=c||l!==null,L=(0,J.useMemo)(()=>{if(!(u!==null||r.length>0))return null;let e=null;for(let t=F.length-1;t>=0;t--){let n=F[t];if(!(n.kind!==`tool_call`||n.meta.status!==`completed`||n.meta.isError)){if(n.meta.toolName===`list_assistant_backups`)return{entryId:n.id,refreshKey:e??n.id};e===null&&(n.meta.toolName===`create_doctor_backup`||n.meta.toolName===`restore_assistant_backup`)&&(e=n.id)}}return null},[F,u,r]),{scrollContainerRef:xe,showScrollToLatest:Se,scrollToLatest:Ce}=ii(F);(0,J.useEffect)(()=>{if(ee.getState().pendingPrompt!==null)return;let e=Z.getState();e.lastAssistantId===n&&e.sessionStatus===`active`&&e.sessionId&&C(n,e.sessionId),e.historyDismissed&&!e.sessionId&&Z.setState({historyDismissed:!1})},[]),(0,J.useEffect)(()=>{let e=Z.getState();if(e.lastAssistantId===n)return;let t=e.lastAssistantId,r=e.sessionId;w(),e.reset(),Z.setState({lastAssistantId:n}),r&&t&&kr(t,r)},[n,w]),(0,J.useEffect)(()=>()=>{w()},[w]),(0,J.useEffect)(()=>{if(b.current||!n)return;let e=ee.getState().consumePendingPrompt();if(e===null)return;b.current=!0;let t=Z.getState();w(),t.sessionId&&kr(n,t.sessionId),t.resetForNewSession(),y.current=e.length>0?e:null,M.mutate({path:{assistant_id:n}})},[n,w,M]);let R=u!==null&&d===`active`,z=!R&&r.length>0&&(d===`completed`||d===`error`),Te=R||z?d:A??`idle`,Ee=T&&(E.isLoading||!!D&&O.isLoading);return(0,J.useEffect)(()=>{let e=y.current;e&&(!R||!u||(y.current=null,Ce(),N.mutate({path:{assistant_id:n,session_id:u},body:{content:e}})))},[R,u,n,Ce,N]),(0,Y.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-2 rounded-xl bg-[var(--surface-base)] p-5 ring-1 ring-[var(--border-base)]`,children:[(0,Y.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Y.jsx)(cr,{className:`h-10 w-10 shrink-0`}),(0,Y.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`doctorPanel.title`)})]}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(Er,{onShareFeedback:_===`full`?()=>{le()}:void 0,onCopySession:F.length>0?_e:void 0}),R&&(0,Y.jsx)(Bt,{onStop:pe,ariaLabel:e(`doctorPanel.endSession`)})]})]}),Ee?(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,Y.jsx)(`span`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-[var(--border-element)] border-t-[var(--content-secondary)]`}),e(`doctorPanel.loading`)]}):n?Te===`idle`?(0,Y.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-4 py-12`,children:[(0,Y.jsx)(cr,{className:`h-24 w-24 shrink-0`}),(0,Y.jsxs)(`div`,{className:`text-center`,children:[(0,Y.jsx)(`h3`,{className:`text-title-medium text-[var(--content-default)]`,children:e(`doctorPanel.idleTitle`)}),(0,Y.jsx)(`p`,{className:`mt-1 max-w-md text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`doctorPanel.idleDescription`)})]}),(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>M.mutate({path:{assistant_id:n}}),disabled:se,className:`flex cursor-pointer items-center gap-2 rounded-lg bg-[var(--primary-base)] px-5 py-2.5 text-body-medium-default text-[var(--content-inset)] transition-colors hover:bg-[var(--primary-hover)] disabled:cursor-not-allowed disabled:opacity-50`,children:[se?(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}):(0,Y.jsx)(Lt,{className:`h-4 w-4`}),e(`doctorPanel.startSession`)]})]}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`relative min-h-0 flex-1`,children:[(0,Y.jsx)(`div`,{ref:xe,className:`h-full overflow-y-auto`,children:(0,Y.jsxs)(`div`,{className:`mx-auto max-w-3xl space-y-3`,children:[I.map(e=>{switch(e.kind){case`user`:return(0,Y.jsx)(Zn,{entry:e},e.id);case`assistant`:return(0,Y.jsx)($n,{entry:e},e.id);case`tool_call`:return(0,Y.jsx)(`div`,{className:`flex justify-start`,children:(0,Y.jsxs)(`div`,{className:`w-full`,children:[(0,Y.jsx)(Kn,{entry:e}),e.id===L?.entryId&&n&&(0,Y.jsx)(`div`,{className:`mt-2 rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)] p-4`,children:(0,Y.jsx)(Bn,{assistantId:n},L.refreshKey)})]})},e.id);case`approval`:return(0,Y.jsx)(`div`,{className:`max-w-[90%]`,children:(0,Y.jsx)(qn,{entry:e,onRespond:ce,disabled:!a||P})},e.id);case`backup_prompt`:return(0,Y.jsx)(`div`,{className:`max-w-[90%]`,children:(0,Y.jsx)(Jn,{entry:e,onRespond:e=>{Z.getState().setPendingBackup(!1),ce(e)},disabled:!s||P})},e.id);case`feedback_prompt`:return(0,Y.jsx)(`div`,{className:`max-w-[90%]`,children:(0,Y.jsx)(Yn,{onOpenFeedback:()=>le({message:e.content===`Share feedback`?void 0:e.content,reason:e.meta?.reason})})},e.id);case`user_outcome_prompt`:return(0,Y.jsx)(ai,{entry:e,onRespond:fe},e.id);case`error`:return(0,Y.jsx)(er,{entry:e},e.id);case`status`:return(0,Y.jsx)(tr,{entry:e},e.id);default:return null}}),c&&(0,Y.jsx)(`div`,{className:`flex justify-start`,children:(0,Y.jsxs)(`div`,{className:`flex items-center gap-[5px] rounded-[var(--radius-lg)] bg-[var(--surface-overlay)] px-4 py-3`,children:[[-.333,0,-.667].map((e,t)=>(0,Y.jsx)(`span`,{"aria-hidden":!0,className:`typing-dot block h-2 w-2 rounded-full bg-[var(--content-tertiary)]`,style:{animation:`typing-dot-pulse 1s ease-in-out infinite`,animationDelay:`${e}s`}},t)),(0,Y.jsx)(`span`,{className:`sr-only`,children:e(`doctorPanel.thinking`)})]})}),!ye&&ve.map(e=>(0,Y.jsx)(ai,{entry:e,onRespond:fe},e.id)),R&&!F.length&&(0,Y.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-disabled)]`,children:[(0,Y.jsx)(q,{className:`h-4 w-4 animate-spin`}),e(`doctorPanel.connecting`)]})]})}),Se&&(0,Y.jsxs)(`button`,{type:`button`,onClick:Ce,"aria-label":e(`doctorPanel.goToNewestAria`),className:`pointer-events-auto absolute bottom-3 left-1/2 -translate-x-1/2 z-10 inline-flex items-center gap-1 rounded-full bg-[var(--surface-lift)] px-3 py-2 text-body-medium-default text-[var(--content-emphasised)] shadow-md transition-colors hover:text-[var(--content-default)]`,children:[e(`doctorPanel.goToNewest`),(0,Y.jsx)(At,{className:`h-3 w-3`})]})]}),R&&(0,Y.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),i.trim()&&!P&&(ce(i),v.current&&(v.current.style.height=`auto`))},className:`mx-auto w-full max-w-3xl shrink-0 overflow-hidden rounded-[10px] bg-[var(--surface-lift)] shadow-sm ring-1 ring-transparent focus-within:ring-[var(--ring)]`,children:[(0,Y.jsx)(`textarea`,{ref:v,value:i,onChange:e=>{Z.getState().setInputValue(e.target.value),e.target.style.height=`auto`,e.target.style.height=`${Math.min(e.target.scrollHeight,160)}px`},onKeyDown:e=>{e.key!==`Enter`||e.shiftKey||e.nativeEvent.isComposing||e.keyCode===229||Fe()||(e.preventDefault(),i.trim()&&!P&&(ce(i),v.current&&(v.current.style.height=`auto`)))},placeholder:e(a?`doctorPanel.placeholderApproval`:`doctorPanel.placeholderMessage`),disabled:P,rows:1,className:`w-full resize-none border-none bg-transparent px-4 pb-2 pt-3 text-body-medium-lighter text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] focus:outline-none disabled:opacity-50`}),(0,Y.jsx)(`div`,{className:`flex items-center justify-end px-3 pb-2`,children:(0,Y.jsx)(j,{variant:`primary`,iconOnly:(0,Y.jsx)(gt,{className:`h-4 w-4`,strokeWidth:2.5}),type:`submit`,disabled:!i.trim()||P,"aria-label":e(`doctorPanel.sendMessageAria`)})})]}),(z||!R&&A&&A!==`active`)&&(0,Y.jsx)(`div`,{className:`flex shrink-0 items-center justify-center gap-3 py-2`,children:(0,Y.jsxs)(`button`,{type:`button`,onClick:me,className:`flex cursor-pointer items-center gap-2 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)]`,children:[(0,Y.jsx)(Lt,{className:`h-4 w-4`}),e(`doctorPanel.newSession`)]})})]}):(0,Y.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] px-4 py-3 text-body-medium-lighter text-[var(--content-tertiary)]`,children:(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(cr,{className:`h-6 w-6 shrink-0`}),(0,Y.jsx)(`span`,{children:e(`doctorPanel.noAssistant`)})]})}),(0,Y.jsx)(zt,{open:p,onClose:ue,initialReason:h?.reason,initialMessage:h?.message,assistantId:n,doctorSessionId:he,doctorSessionLog:ge})]})}var si=1e3;function ci(e,t){let n=Math.log(e/t.min)/Math.log(t.max/t.min);return Math.round(Math.min(1,Math.max(0,n))*si)}function li(e,t){let n=e/si,r=t.min*(t.max/t.min)**+n;return Math.round(r*100)/100}function ui(e,t,n){return{...e,layers:e.layers.map((e,r)=>{if(r!==t)return e;let i={...e,...n};return n.frequency!==void 0&&n.glideTo===void 0&&e.glideTo===e.frequency&&(i.glideTo=n.frequency),i})}}function di(e){return e.layers.length<V.layers.max}function fi(e){if(!di(e))return e;let t=e.layers.at(-1),n=Oe();return t&&(n.startMs=Math.min(V.startMs.max,t.startMs+t.attackMs+80)),{...e,layers:[...e.layers,n]}}function pi(e,t){let n=e.layers[t];if(!n||!di(e))return e;let r=[...e.layers];return r.splice(t+1,0,{...n}),{...e,layers:r}}function mi(e,t){return e.layers.length<=1?e:{...e,layers:e.layers.filter((e,n)=>n!==t)}}function hi(e,t){return JSON.stringify(e)===JSON.stringify(t)}var gi={sine:`toneLab.waveforms.sine`,triangle:`toneLab.waveforms.triangle`,square:`toneLab.waveforms.square`,sawtooth:`toneLab.waveforms.sawtooth`};function $(e){return Array.isArray(e)?e[0]:e}function _i({index:e,layer:t,canDuplicate:n,canRemove:r,onChange:i,onDuplicate:a,onRemove:o}){let{t:s}=G(`settings`),c=e=>s(`toneLab.hzValue`,{hz:Math.round(e),note:he(e)}),l=e=>s(`toneLab.msValue`,{ms:Math.round(e)}),u=e=>s(`toneLab.percentValue`,{percent:Math.round(e*100)}),d=fe.map(e=>({value:e,label:s(gi[e])}));return(0,Y.jsxs)(`div`,{className:`space-y-3 rounded-lg border border-[var(--border-base)] px-4 py-3`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,Y.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:s(`toneLab.layerTitle`,{number:e+1})}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,Y.jsx)(j,{variant:`ghost`,size:`compact`,iconOnly:(0,Y.jsx)(Ot,{}),"aria-label":s(`toneLab.duplicateLayer`),disabled:!n,onClick:a}),(0,Y.jsx)(j,{variant:`ghost`,size:`compact`,iconOnly:(0,Y.jsx)(ft,{}),"aria-label":s(`toneLab.removeLayer`),disabled:!r,onClick:o})]})]}),(0,Y.jsx)(xe,{items:d,value:t.waveform,onChange:e=>i({waveform:e}),ariaLabel:s(`toneLab.waveform`)}),(0,Y.jsxs)(`div`,{className:`grid gap-x-6 gap-y-3 sm:grid-cols-2`,children:[(0,Y.jsx)(B,{label:s(`toneLab.pitch`),showValue:!0,formatValue:()=>c(t.frequency),value:ci(t.frequency,V.frequency),min:0,max:si,onValueChange:e=>i({frequency:li($(e),V.frequency)})}),(0,Y.jsx)(B,{label:s(`toneLab.glideTo`),showValue:!0,formatValue:()=>c(t.glideTo),value:ci(t.glideTo,V.frequency),min:0,max:si,onValueChange:e=>i({glideTo:li($(e),V.frequency)})}),(0,Y.jsx)(B,{label:s(`toneLab.start`),showValue:!0,formatValue:()=>l(t.startMs),value:t.startMs,min:V.startMs.min,max:1e3,step:5,onValueChange:e=>i({startMs:$(e)})}),(0,Y.jsx)(B,{label:s(`toneLab.level`),showValue:!0,formatValue:()=>u(t.gain),value:t.gain,min:V.gain.min,max:V.gain.max,step:.01,onValueChange:e=>i({gain:$(e)})}),(0,Y.jsx)(B,{label:s(`toneLab.attack`),showValue:!0,formatValue:()=>l(t.attackMs),value:t.attackMs,min:V.attackMs.min,max:300,onValueChange:e=>i({attackMs:$(e)})}),(0,Y.jsx)(B,{label:s(`toneLab.decay`),showValue:!0,formatValue:()=>l(t.decayMs),value:t.decayMs,min:V.decayMs.min,max:1500,step:5,onValueChange:e=>i({decayMs:$(e)})}),(0,Y.jsx)(B,{label:s(`toneLab.detune`),showValue:!0,formatValue:()=>s(`toneLab.centsValue`,{cents:Math.round(t.detuneCents)}),value:t.detuneCents,min:V.detuneCents.min,max:V.detuneCents.max,onValueChange:e=>i({detuneCents:$(e)})})]})]})}var vi=72;function yi({recipe:e,label:t}){let n=(0,J.useRef)(null);return(0,J.useEffect)(()=>{let t=!1;return Re(e).then(e=>{let r=n.current;t||!e||!r||bi(r,e)}),()=>{t=!0}},[e]),(0,Y.jsx)(`canvas`,{ref:n,role:`img`,"aria-label":t,className:`h-[72px] w-full rounded-lg bg-[var(--surface-base)] text-[var(--content-secondary)]`,height:vi})}function bi(e,t){let n=window.devicePixelRatio||1,r=Math.max(1,Math.round(e.clientWidth*n)),i=Math.round(vi*n);e.width=r,e.height=i;let a=e.getContext(`2d`);if(!a)return;let o=0;for(let e of t)o=Math.max(o,Math.abs(e));let s=o>0?(i/2-2*n)/o:0,c=i/2,l=t.length/r;a.clearRect(0,0,r,i),a.fillStyle=getComputedStyle(e).color;for(let e=0;e<r;e+=1){let r=Math.floor(e*l),i=Math.max(r+1,Math.floor((e+1)*l)),o=0,u=0;for(let e=r;e<i&&e<t.length;e+=1){let n=t[e]??0;o=Math.min(o,n),u=Math.max(u,n)}let d=c-u*s,f=c-o*s;a.fillRect(e,d,1,Math.max(n,f-d))}}var xi={rise:`toneLab.presetNames.rise`,glass:`toneLab.presetNames.glass`,bloom:`toneLab.presetNames.bloom`,wood:`toneLab.presetNames.wood`,tuneIn:`toneLab.presetNames.tuneIn`,doubleBlip:`toneLab.presetNames.doubleBlip`,warm:`toneLab.presetNames.warm`},Si=250;function Ci(e){return Array.isArray(e)?e[0]:e}function wi(e){return Pe.find(t=>hi(ue[t],e))??null}function Ti(){let{t:e}=G(`settings`),[t,n]=(0,J.useState)(()=>ze()),[r,i]=(0,J.useState)(()=>t??Me),[a,o]=(0,J.useState)(!0),s=(0,J.useRef)(r);(0,J.useEffect)(()=>{if(!a||s.current===r)return;let e=window.setTimeout(()=>{s.current=r,ye(r)},Si);return()=>window.clearTimeout(e)},[a,r]);let c=wi(r),l=t??Me,u=hi(r,l),d=e=>{let t=ue[e];s.current=t,i(t),ye(t)},f=()=>{hi(r,Me)?(R(null),n(null)):(R(r),n(r)),I.success(e(`toneLab.usedForVoiceToast`))},p=()=>{R(null),n(null),I.success(e(`toneLab.resetVoiceToast`))},m=async()=>{try{await navigator.clipboard.writeText(JSON.stringify(r,null,2)),I.success(e(`toneLab.copiedToast`))}catch{I.error(e(`toneLab.clipboardFailedToast`))}},h=async()=>{let t=null;try{t=Ae(JSON.parse(await navigator.clipboard.readText()))}catch{t=null}if(!t){I.error(e(`toneLab.pasteInvalidToast`));return}i(t)},g=t=>e(`toneLab.msValue`,{ms:Math.round(t)}),_=t=>e(`toneLab.percentValue`,{percent:Math.round(t*100)});return(0,Y.jsxs)(`div`,{className:`space-y-4`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,Y.jsx)(`div`,{className:`flex h-9 w-9 items-center justify-center rounded-lg bg-[var(--surface-base)]`,children:(0,Y.jsx)(bt,{className:`h-5 w-5 text-[var(--content-secondary)]`})}),(0,Y.jsxs)(`div`,{children:[(0,Y.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`toneLab.title`)}),(0,Y.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`toneLab.subtitle`)})]})]}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3 rounded-lg border border-[var(--border-base)] px-4 py-3`,children:[(0,Y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,Y.jsx)(Pt,{className:`h-4 w-4 shrink-0 text-[var(--content-secondary)]`}),(0,Y.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(t?`toneLab.voiceToneOverride`:`toneLab.voiceToneDefault`)})]}),(0,Y.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,Y.jsx)(j,{variant:`ghost`,leftIcon:(0,Y.jsx)(Lt,{}),onClick:()=>void ye(l),children:e(`toneLab.playVoiceTone`)}),t&&(0,Y.jsx)(j,{variant:`outlined`,leftIcon:(0,Y.jsx)(mt,{}),onClick:p,children:e(`toneLab.resetVoiceTone`)})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-2`,children:[(0,Y.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`toneLab.presets`)}),(0,Y.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:Pe.map(t=>(0,Y.jsx)(v,{selected:c===t,onClick:()=>d(t),children:e(xi[t])},t))})]}),(0,Y.jsxs)(`div`,{className:`space-y-3`,children:[(0,Y.jsx)(yi,{recipe:r,label:e(`toneLab.waveformLabel`)}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center justify-between gap-3`,children:[(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Y.jsx)(j,{variant:`outlined`,leftIcon:(0,Y.jsx)(Lt,{}),onClick:()=>void ye(r),children:e(`toneLab.play`)}),(0,Y.jsx)(j,{variant:`ghost`,leftIcon:(0,Y.jsx)(Kt,{}),onClick:()=>void ye(Ve(r)),children:e(`toneLab.playEnd`)}),(0,Y.jsx)(j,{variant:`ghost`,leftIcon:(0,Y.jsx)(Et,{}),onClick:()=>void m(),children:e(`toneLab.copy`)}),(0,Y.jsx)(j,{variant:`ghost`,leftIcon:(0,Y.jsx)(Gt,{}),onClick:()=>void h(),children:e(`toneLab.paste`)})]}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-4`,children:[(0,Y.jsx)(Ge,{size:`sm`,checked:a,onChange:o,label:e(`toneLab.autoPlay`)}),(0,Y.jsx)(j,{variant:`primary`,disabled:u,onClick:f,children:e(`toneLab.useForVoice`)})]})]})]}),(0,Y.jsxs)(`div`,{className:`space-y-3 rounded-lg border border-[var(--border-base)] px-4 py-3`,children:[(0,Y.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`toneLab.mix`)}),(0,Y.jsxs)(`div`,{className:`grid gap-x-6 gap-y-3 sm:grid-cols-2`,children:[(0,Y.jsx)(B,{label:e(`toneLab.volume`),showValue:!0,formatValue:()=>_(r.gain),value:r.gain,min:V.gain.min,max:V.gain.max,step:.01,onValueChange:e=>i(t=>({...t,gain:Ci(e)}))}),(0,Y.jsx)(B,{label:e(`toneLab.brightness`),showValue:!0,formatValue:()=>e(`toneLab.hzPlainValue`,{hz:Math.round(r.filterHz)}),value:ci(r.filterHz,V.filterHz),min:0,max:si,onValueChange:e=>i(t=>({...t,filterHz:li(Ci(e),V.filterHz)}))}),(0,Y.jsx)(B,{label:e(`toneLab.echoTime`),showValue:!0,formatValue:()=>g(r.echoMs),value:r.echoMs,min:V.echoMs.min,max:V.echoMs.max,step:5,onValueChange:e=>i(t=>({...t,echoMs:Ci(e)}))}),(0,Y.jsx)(B,{label:e(`toneLab.echoFeedback`),showValue:!0,formatValue:()=>_(r.echoFeedback),value:r.echoFeedback,min:V.echoFeedback.min,max:V.echoFeedback.max,step:.01,onValueChange:e=>i(t=>({...t,echoFeedback:Ci(e)}))}),(0,Y.jsx)(B,{label:e(`toneLab.echoMix`),showValue:!0,formatValue:()=>_(r.echoMix),value:r.echoMix,min:V.echoMix.min,max:V.echoMix.max,step:.01,onValueChange:e=>i(t=>({...t,echoMix:Ci(e)}))})]})]}),r.layers.map((e,t)=>(0,Y.jsx)(_i,{index:t,layer:e,canDuplicate:di(r),canRemove:r.layers.length>1,onChange:e=>i(n=>ui(n,t,e)),onDuplicate:()=>i(e=>pi(e,t)),onRemove:()=>i(e=>mi(e,t))},t)),(0,Y.jsx)(j,{variant:`outlined`,leftIcon:(0,Y.jsx)(vt,{}),disabled:!di(r),onClick:()=>i(e=>fi(e)),children:e(`toneLab.addLayer`)})]})}function Ei(e){return e===`archive`?{tabId:`conversations`,conversationsFilter:`archived`}:{tabId:e,conversationsFilter:`all`}}var Di=[{id:`general`,labelKey:`debugPage.tabs.general`,defaultLabel:`General`},{id:`terminal`,labelKey:`debugPage.tabs.terminal`,defaultLabel:`Terminal`},{id:`doctor`,labelKey:`debugPage.tabs.doctor`,defaultLabel:`Doctor`},{id:`database`,labelKey:`debugPage.tabs.database`,defaultLabel:`Database`},{id:`conversations`,labelKey:`debugPage.tabs.conversations`,defaultLabel:`Conversations`},{id:`tones`,labelKey:`debugPage.tabs.tones`,defaultLabel:`Tone lab`}],Oi=`general`;function ki(){let{t:e}=G(`settings`),[t,n]=Xe(),r=f(),i=Ze(),a=(0,J.useCallback)(e=>{_e(i,e)},[i]),o=be({platformHostedOnly:!0}),s=(0,J.useMemo)(()=>Di.filter(e=>!(e.id===`terminal`&&o===`gated`||e.id===`doctor`&&o===`gated`)),[o]),{tabId:c,conversationsFilter:l}=Ei(t.get(`tab`)),u=(0,J.useMemo)(()=>s.find(e=>e.id===c)?.id??Oi,[c,s]);return(0,Y.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:(0,Y.jsxs)(L.Root,{value:u,onValueChange:e=>{let r=new URLSearchParams(t);e===Oi?r.delete(`tab`):r.set(`tab`,e),n(r,{replace:!0})},className:`flex min-h-0 flex-1 flex-col`,children:[(0,Y.jsx)(L.List,{children:s.map(t=>(0,Y.jsx)(L.Trigger,{value:t.id,children:e(t.labelKey,t.defaultLabel)},t.id))}),(0,Y.jsx)(L.Panel,{value:`general`,className:`pt-4`,children:(0,Y.jsx)(Wn,{})}),s.some(e=>e.id===`terminal`)&&(0,Y.jsx)(L.Panel,{value:`terminal`,className:`flex min-h-0 flex-1 flex-col pt-4`,children:(0,Y.jsx)(En,{})}),s.some(e=>e.id===`doctor`)&&(0,Y.jsx)(L.Panel,{value:`doctor`,className:`flex min-h-0 flex-1 flex-col pt-4`,children:(0,Y.jsx)(oi,{})}),(0,Y.jsx)(L.Panel,{value:`database`,className:`pt-4`,children:(0,Y.jsx)(Nn,{})}),(0,Y.jsx)(L.Panel,{value:`conversations`,className:`flex min-h-0 flex-1 flex-col pt-4`,children:(0,Y.jsx)(fn,{assistantId:r,initialFilter:l,onOpenConversation:a},l)}),(0,Y.jsx)(L.Panel,{value:`tones`,className:`pt-4`,children:(0,Y.jsx)(Ti,{})})]})})}export{ki as DebugPage};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./deploy-dialogs-TtlGsmui.js";export{e as DeployDialogs};
|