@vellumai/web 0.12.2-dev.202609182015.188de8a → 0.12.2-dev.202609182114.335fa56
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-BkJsiMCk.js → a2a-invite-Ci3O-UuB.js} +1 -1
- package/dist/assets/{about-page-DKz6hc6m.js → about-page-B-7lyYEB.js} +1 -1
- package/dist/assets/{account-page-D2086vlm.js → account-page-CGtIVDfJ.js} +1 -1
- package/dist/assets/{account-shell-BzbAvUcW.js → account-shell-DLy0Ad5J.js} +1 -1
- package/dist/assets/{acp-run-detail-panel-D1q28OPn.js → acp-run-detail-panel-D1WXDwZ3.js} +1 -1
- package/dist/assets/{activation-list-route-CymK18w2.js → activation-list-route-B5Ewg5yz.js} +1 -1
- package/dist/assets/{activity-redirect-page-DCcfRUi_.js → activity-redirect-page-2lUB6VgV.js} +1 -1
- package/dist/assets/{activity-steps-panel-BYjkiE5D.js → activity-steps-panel-Ba9xwFXj.js} +1 -1
- package/dist/assets/add-credits-modal-DqL2PtAm.js +1 -0
- package/dist/assets/{add-credits-modal-4Etl1PAt.js → add-credits-modal-xD_fI3hc.js} +1 -1
- package/dist/assets/{ai-page-CkrearYq.js → ai-page-BBz-BfyC.js} +1 -1
- package/dist/assets/{android-billing-handoff-B_bu7Rr8.js → android-billing-handoff-BBh13NBZ.js} +1 -1
- package/dist/assets/{api-key-screen-STe5cIxn.js → api-key-screen-DLdU9-qN.js} +1 -1
- package/dist/assets/{app-BfK0IQIk.js → app-BBUxTj9g.js} +65 -65
- package/dist/assets/{app-info-mmyV2q32.js → app-info-CtXHTQ8I.js} +1 -1
- package/dist/assets/{archive-redirect-page-BB3zYu05.js → archive-redirect-page-CR1hXS8u.js} +1 -1
- package/dist/assets/{assistant-handle-modal-CgnaRG-5.js → assistant-handle-modal-BAfB5jfI.js} +1 -1
- package/dist/assets/{assistant-inbox-page-route-CZEp6qpH.js → assistant-inbox-page-route-BCzsw_dR.js} +1 -1
- package/dist/assets/{assistant-inbox-upgrade-body-gHf4cLXK.js → assistant-inbox-upgrade-body-DqRg_E8P.js} +1 -1
- package/dist/assets/{assistant-status-panel-BTvZ573v.js → assistant-status-panel-CXtpB-3s.js} +1 -1
- package/dist/assets/auth-store-VfQBlZjf.js +1 -0
- package/dist/assets/{auth-welcome-screen-BTwCPZYQ.js → auth-welcome-screen-eEmmCa7a.js} +1 -1
- package/dist/assets/avatar-bundled-components-CBxBRJHT.js +1 -0
- package/dist/assets/{avatar-random-Bu1JUc-m.js → avatar-random-CmFgdVYy.js} +2 -2
- package/dist/assets/{await-org-header-settled-DIoy1_Jd.js → await-org-header-settled-rFkQnSY1.js} +1 -1
- package/dist/assets/{background-task-detail-panel-DJsB3oAn.js → background-task-detail-panel-CujUAl64.js} +1 -1
- package/dist/assets/{billing-page-KdEbDnk2.js → billing-page-C3fvhOOQ.js} +3 -3
- package/dist/assets/{billing-redirect-page-B0JXbuDV.js → billing-redirect-page-CKl8d4sb.js} +1 -1
- package/dist/assets/{bookmarks-page-VALGfihg.js → bookmarks-page-B2YSfE6-.js} +1 -1
- package/dist/assets/{bundle-confirm-page-CaLFi7ku.js → bundle-confirm-page-gJCzHRKr.js} +1 -1
- package/dist/assets/{channel-transcript-panel-D4KVRmwh.js → channel-transcript-panel-D5L38TzO.js} +1 -1
- package/dist/assets/{channels-page-route-COc0hysG.js → channels-page-route-afqHw3N0.js} +1 -1
- package/dist/assets/{chat-info-panel-pW2_d9mO.js → chat-info-panel-DTA_-olk.js} +1 -1
- package/dist/assets/{checkout-continuation-9qrV5c78.js → checkout-continuation-5Jtm_JrA.js} +1 -1
- package/dist/assets/{checkout-page-DxpEqYIc.js → checkout-page-DULnZwd9.js} +1 -1
- package/dist/assets/checkout-return-target-DWik-led.js +1 -0
- package/dist/assets/{command-palette-E9QrPenm.js → command-palette-BD0yvfbb.js} +1 -1
- package/dist/assets/command-palette-CVX6w4zo.js +1 -0
- package/dist/assets/{command-palette-window-page-CZXCfB57.js → command-palette-window-page-Bk5U7P1e.js} +1 -1
- package/dist/assets/common-2tBLDaGA.js +1 -0
- package/dist/assets/common-BbH8TVsn.js +1 -0
- package/dist/assets/common-CLiCbaO-.js +1 -0
- package/dist/assets/{common-c9S--s7Z.js → common-WxNH1jIH.js} +1 -1
- package/dist/assets/{community-page-Cj2Wd0lm.js → community-page-CUQ3qu-V.js} +1 -1
- package/dist/assets/{companion-accent-DDGqoGt7.js → companion-accent-BYoVCdU1.js} +1 -1
- package/dist/assets/{companion-dock-zones-page-DTi3NZqD.js → companion-dock-zones-page-sX6B3NE_.js} +1 -1
- package/dist/assets/{companion-layout-oDK2JvY4.js → companion-layout-33AE1gia.js} +1 -1
- package/dist/assets/{companion-popover-DbIXR8Bk.js → companion-popover-TujVt-Ar.js} +1 -1
- package/dist/assets/{companion-popover-page-BSLD45sw.js → companion-popover-page-ByBb4sHd.js} +1 -1
- package/dist/assets/{companion-surface-page-BO8ktCPi.js → companion-surface-page-BbWzCHgm.js} +1 -1
- package/dist/assets/{companion-watch-frame-page-DFn5w5vu.js → companion-watch-frame-page-BIETd4hp.js} +1 -1
- package/dist/assets/{connect-page-Do1DxTJR.js → connect-page-BO1XQJwf.js} +1 -1
- package/dist/assets/{consent-controls-D99GwSSN.js → consent-controls-DZjKfsjW.js} +1 -1
- package/dist/assets/{contacts-gateway-BC6WaVFg.js → contacts-gateway-B5O7Ne74.js} +1 -1
- package/dist/assets/{contacts-page-route-CXW0fKwC.js → contacts-page-route-CWQ8xq2e.js} +1 -1
- package/dist/assets/{copy-button-CmwoARVB.js → copy-button-BIeybJYd.js} +1 -1
- package/dist/assets/{credential-entry-page-DfXFeMIN.js → credential-entry-page-BRvUcU5-.js} +1 -1
- package/dist/assets/{credentials-page-DRVB3E60.js → credentials-page-BCpKSirx.js} +1 -1
- package/dist/assets/{csv-preview-CiaeYC20.js → csv-preview-sSdnMx-6.js} +1 -1
- package/dist/assets/{danger-zone-redirect-page-B4c2l_0r.js → danger-zone-redirect-page-521j5Kuo.js} +1 -1
- package/dist/assets/{debug-page-CvyE149B.js → debug-page-Ci2myxA0.js} +1 -1
- package/dist/assets/deploy-dialogs-pkluahDA.js +1 -0
- package/dist/assets/{deploy-dialogs-mEenw05v.js → deploy-dialogs-u3yfw8HJ.js} +1 -1
- package/dist/assets/{desktop-preview-content-DWlmtZ40.js → desktop-preview-content-DYVVZr2w.js} +2 -2
- package/dist/assets/{desktop-status-u4hV53HS.js → desktop-status-B4ofrNCE.js} +1 -1
- package/dist/assets/{desktop-viewer-CFOGac24.js → desktop-viewer-CxxkXSPF.js} +1 -1
- package/dist/assets/{detail-card-CZVSMSNs.js → detail-card-BhMBZjzu.js} +1 -1
- package/dist/assets/{detail-panel-stop-button-CoA_583J.js → detail-panel-stop-button-BXvuwM0g.js} +1 -1
- package/dist/assets/detail-primitives-Bh6NmCv7.js +1 -0
- package/dist/assets/{developer-page-Co9T6jqJ.js → developer-page-CC5VjRqN.js} +1 -1
- package/dist/assets/{devices-redirect-page-CbXvqz4V.js → devices-redirect-page-sytJWmif.js} +1 -1
- package/dist/assets/{dictation-overlay-page-DohFzjtT.js → dictation-overlay-page-wEGaipQM.js} +1 -1
- package/dist/assets/document-load-C91qCZur.js +1 -0
- package/dist/assets/{document-load-DGt33NFw.js → document-load-Cxy5V3Q3.js} +1 -1
- package/dist/assets/{document-viewer-page-DMRNTqY7.js → document-viewer-page-CF5Qsyn0.js} +1 -1
- package/dist/assets/{emails-page-CgbmlG_-.js → emails-page-CF5E8gMK.js} +1 -1
- package/dist/assets/{file-diff-view-D0X_TuVO.js → file-diff-view-DeCwZxAs.js} +1 -1
- package/dist/assets/{file-editor-vMWOc28f.js → file-editor-kOM9p3-b.js} +1 -1
- package/dist/assets/{general-page-DRoY1Iej.js → general-page-CHuT-gI-.js} +1 -1
- package/dist/assets/{hatching-screen-BNJtdwkK.js → hatching-screen-CRUvQYM3.js} +1 -1
- package/dist/assets/{hosting-screen-BZRT7l7I.js → hosting-screen-cKl8LkVn.js} +1 -1
- package/dist/assets/{identity-page-route-CFrCh_KE.js → identity-page-route-A6PcJJKj.js} +1 -1
- package/dist/assets/{inspect-page-BHkl8Ibk.js → inspect-page-C98uAPdc.js} +3 -3
- package/dist/assets/{integrations-page-BYqa4ZWD.js → integrations-page-C8x-gkb9.js} +1 -1
- package/dist/assets/{intelligence-layout-eis9JaHj.js → intelligence-layout-ChW1oIoj.js} +1 -1
- package/dist/assets/intelligence-layout-slots-store-D8qMofvo.js +1 -0
- package/dist/assets/{keyboard-shortcuts-redirect-page-Lb1SQwRg.js → keyboard-shortcuts-redirect-page-BYcDZHs7.js} +1 -1
- package/dist/assets/{latest-assistant-text-T4hNgVuv.js → latest-assistant-text-Dnh6k0g4.js} +1 -1
- package/dist/assets/{library-detail-page-CWDBsQis.js → library-detail-page-DRUffaFd.js} +1 -1
- package/dist/assets/{library-page-Mg60THux.js → library-page-dNnf_D2k.js} +1 -1
- package/dist/assets/local-mode-DI-seN56.js +1 -0
- package/dist/assets/{login-page-DQCXCIr1.js → login-page-BPkEvkFD.js} +1 -1
- package/dist/assets/{logout-page-7dYOYnPb.js → logout-page-D3opSUZI.js} +1 -1
- package/dist/assets/{logs-layout-CY2j2fvO.js → logs-layout-ZkvUiVsu.js} +1 -1
- package/dist/assets/{markdown-preview-CfEjiWNm.js → markdown-preview-MnyvCMa3.js} +1 -1
- package/dist/assets/{media-preview-BaQUTRiQ.js → media-preview-BQxdPaMe.js} +1 -1
- package/dist/assets/{memory-page-route-C03izhfJ.js → memory-page-route-6Xr4vUpi.js} +1 -1
- package/dist/assets/{memory-router-playground-page-DdjGQ-b9.js → memory-router-playground-page-CaTWoBrm.js} +1 -1
- package/dist/assets/{message-files-panel-DCFWS80s.js → message-files-panel-CL8oaeEs.js} +1 -1
- package/dist/assets/{metric-card-BPdD5GIY.js → metric-card-Bk5HVUSj.js} +1 -1
- package/dist/assets/native-attachment-pickers-DSMoNnpj.js +1 -0
- package/dist/assets/native-file-BsIX0824.js +1 -0
- package/dist/assets/{notifications-page-BrufA0ep.js → notifications-page-BwawEEVb.js} +1 -1
- package/dist/assets/{oauth-complete-page-CU0ZFKgo.js → oauth-complete-page-E8VFzbV8.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-CWV5_KjG.js → oauth-popup-complete-page-BPruZqf-.js} +1 -1
- package/dist/assets/paired-platform-identity-DC-PSt-z.js +1 -0
- package/dist/assets/{pairing-page-BWvSec2z.js → pairing-page-pUxc_Q6w.js} +1 -1
- package/dist/assets/password-reset-page-D_XJ_720.js +1 -0
- package/dist/assets/{pdf-file-preview-BDNFrYwL.js → pdf-file-preview-CcYLZEEX.js} +1 -1
- package/dist/assets/{personality-page-BeDOP0Yx.js → personality-page-D7ltEpyD.js} +1 -1
- package/dist/assets/{personality-page-BgCVuORF.js → personality-page-DJ8ZQNex.js} +1 -1
- package/dist/assets/{personality-sliders-DPrI9-Un.js → personality-sliders-B_qi0jNr.js} +1 -1
- package/dist/assets/{plans-page-Dulw9Q1k.js → plans-page-DjMkYu8P.js} +1 -1
- package/dist/assets/{platform-loopback-page-SyOClPdC.js → platform-loopback-page-B7YadjAM.js} +1 -1
- package/dist/assets/{plugin-detail-page-ycy32YsM.js → plugin-detail-page-DJHgAPt-.js} +1 -1
- package/dist/assets/{plugins-page-6VvPNQ_q.js → plugins-page-t9j6WJsi.js} +1 -1
- package/dist/assets/plugins-surface-DY7rojgP.js +1 -0
- package/dist/assets/{preview-error-CYKkv16g.js → preview-error-CTmJUZ1U.js} +1 -1
- package/dist/assets/{privacy-page-CFrLoQuJ.js → privacy-page-CcVYTYFw.js} +1 -1
- package/dist/assets/{privacy-screen-BuIFw79d.js → privacy-screen-D6KWda_d.js} +1 -1
- package/dist/assets/{profile-card-DOKegb-a.js → profile-card-B0q-4VDK.js} +1 -1
- package/dist/assets/{provider-callback-page-CPnDutdc.js → provider-callback-page-DUPzWdsn.js} +1 -1
- package/dist/assets/{provider-key-AVs0qMXM.js → provider-key-Bt_1m-Ip.js} +1 -1
- package/dist/assets/{provider-signup-page-DTPzoL0u.js → provider-signup-page-Dyube2uE.js} +1 -1
- package/dist/assets/{quick-input-page-B0ICyEgU.js → quick-input-page-phOYFcWE.js} +1 -1
- package/dist/assets/{referral-modal-1zPoMtxP.js → referral-modal-BpEe6RfT.js} +1 -1
- package/dist/assets/referral-modal-YlLIteDB.js +1 -0
- package/dist/assets/{research-mock-page-D-e9x0aU.js → research-mock-page-3sH3Ojod.js} +1 -1
- package/dist/assets/{research-onboarding-route-DtHB29VX.js → research-onboarding-route-W8ZOplPi.js} +1 -1
- package/dist/assets/{review-terms-screen-BbXyCCa7.js → review-terms-screen-p7rIoNoi.js} +1 -1
- package/dist/assets/routes-vi064rNI.js +1 -0
- package/dist/assets/{schedules-DfRCZ1RP.js → schedules-G-fQS88Z.js} +1 -1
- package/dist/assets/{schedules-page-Dcpdy1n1.js → schedules-page-Bz8dQuZ9.js} +1 -1
- package/dist/assets/{security-redirect-page-BqN7nDmC.js → security-redirect-page-nqyQ-l9I.js} +1 -1
- package/dist/assets/{select-assistant-screen-D7lOSn8K.js → select-assistant-screen-DTbgqPJ8.js} +1 -1
- package/dist/assets/{self-hosted-servers-mfRYC3V6.js → self-hosted-servers-TGCgx_Zl.js} +1 -1
- package/dist/assets/{service-form-controls-yfiFapqu.js → service-form-controls-BYas0Fj1.js} +1 -1
- package/dist/assets/{setting-row-hz10CsiO.js → setting-row-DeKbamTb.js} +1 -1
- package/dist/assets/{settings-divider-BTsvGg8f.js → settings-divider-fX1al4v0.js} +1 -1
- package/dist/assets/{settings-layout-CJfkUjGu.js → settings-layout-_uQXbZvN.js} +1 -1
- package/dist/assets/share-feedback-modal-BbfX56Tb.js +1 -0
- package/dist/assets/{share-feedback-modal-CxxySevk.js → share-feedback-modal-Bgjk4m6g.js} +1 -1
- package/dist/assets/{sidebar-tree-Bu-uVPbk.js → sidebar-tree-BxII4vqO.js} +1 -1
- package/dist/assets/{signup-page-NLKt0-kE.js → signup-page--iXCz-aP.js} +1 -1
- package/dist/assets/{signup-shell-DU-HQ4Is.js → signup-shell-D2m_KGDx.js} +1 -1
- package/dist/assets/{skill-detail-page-D2ynj5TG.js → skill-detail-page-DApsFagl.js} +1 -1
- package/dist/assets/{skill-detail-panel-CkzKPc65.js → skill-detail-panel-D2ghwCqP.js} +1 -1
- package/dist/assets/{skill-removal-dialog-Cf4V-l2v.js → skill-removal-dialog-C3KKFPCH.js} +1 -1
- package/dist/assets/{skills-page-q_IVfLb3.js → skills-page-CMueiEEK.js} +1 -1
- package/dist/assets/{sounds-page-CtaSO0c4.js → sounds-page-CaRGElXh.js} +1 -1
- package/dist/assets/{start-screen-DeowChgG.js → start-screen-C380uTIT.js} +1 -1
- package/dist/assets/{stt-language-picker-modal-MgMG4vnJ.js → stt-language-picker-modal-wNybXxLn.js} +1 -1
- package/dist/assets/{subagent-detail-panel-CkE-6d0V.js → subagent-detail-panel--lLPuYen.js} +1 -1
- package/dist/assets/{superpowers-page-11wxZ3sf.js → superpowers-page-CwGBMECu.js} +1 -1
- package/dist/assets/{system-events-page-NUG1UJD3.js → system-events-page-CbQnTv1L.js} +1 -1
- package/dist/assets/{system-events-redirect-page-DbsB8RE5.js → system-events-redirect-page-DRZUqIqZ.js} +1 -1
- package/dist/assets/{text-preview-qkNRFUQt.js → text-preview-CYUN4rc9.js} +1 -1
- package/dist/assets/{theme-stage-page-Vy0XYtTa.js → theme-stage-page-ic-Boi69.js} +1 -1
- package/dist/assets/{tiptap-document-editor-D3VgM1Ce.js → tiptap-document-editor-SsIwSFSZ.js} +1 -1
- package/dist/assets/tool-detail-panel-CKZ_M0Qj.js +1 -0
- package/dist/assets/{tool-detail-panel-kkHVCqRn.js → tool-detail-panel-XwRKFU13.js} +3 -3
- package/dist/assets/{trait-cycle-row-BlgCseYI.js → trait-cycle-row-DNn4F74m.js} +1 -1
- package/dist/assets/{upgrade-cancel-page-s6e4nG1l.js → upgrade-cancel-page-DqQHOlQ0.js} +1 -1
- package/dist/assets/{upgrade-success-page-D6SM1pxp.js → upgrade-success-page-tVasRCy_.js} +1 -1
- package/dist/assets/{usage-redirect-page-BNYnnsnf.js → usage-redirect-page-D3aVssCL.js} +1 -1
- package/dist/assets/{use-app-delete-CQbN9rtt.js → use-app-delete-DtftSu08.js} +1 -1
- package/dist/assets/{use-assistant-identity-details-CrhYb7qF.js → use-assistant-identity-details-BHojBIzM.js} +1 -1
- package/dist/assets/{use-checkout-dismiss-refresh-q4n835g5.js → use-checkout-dismiss-refresh-DbSG9nq4.js} +1 -1
- package/dist/assets/{use-edge-swipe-back-CeKk6gy9.js → use-edge-swipe-back-Dx2dMUF5.js} +1 -1
- package/dist/assets/{use-hotkey-recorder-BA2YaGIX.js → use-hotkey-recorder-DHnuMF6T.js} +1 -1
- package/dist/assets/{use-invite-link-dialog-6IXyqacJ.js → use-invite-link-dialog-DNFvVMTr.js} +1 -1
- package/dist/assets/{use-plugins-list-CHpcMGs_.js → use-plugins-list-D0KJteNK.js} +1 -1
- package/dist/assets/{use-return-to-short-circuit-2kdbf5Q4.js → use-return-to-short-circuit-CFPNKSTK.js} +1 -1
- package/dist/assets/{use-side-list-room-BhFIS5Le.js → use-side-list-room-BEt4nE6h.js} +1 -1
- package/dist/assets/{use-skill-actions-Kdf5x1HU.js → use-skill-actions-C7qa2xLE.js} +1 -1
- package/dist/assets/{use-skill-detail-files-DAyyrFN5.js → use-skill-detail-files-_1GQxDTx.js} +1 -1
- package/dist/assets/use-supports-credentials-settings-ChozdHJ0.js +1 -0
- package/dist/assets/{use-transcript-message-by-id-D3l5WRCF.js → use-transcript-message-by-id-BaIMdiwS.js} +1 -1
- package/dist/assets/{voice-page-faAl_Nti.js → voice-page-BJ51XPpw.js} +1 -1
- package/dist/assets/{wake-detail-panel-WzSOhew8.js → wake-detail-panel-DkAaJeZE.js} +1 -1
- package/dist/assets/{weather-forecast-display-DIwophHB.js → weather-forecast-display-ty6o7LuP.js} +1 -1
- package/dist/assets/{welcome-screen-DCDAeMA9.js → welcome-screen-B9BqQr5N.js} +1 -1
- package/dist/assets/{workflow-detail-panel-CtBcOGfQ.js → workflow-detail-panel--kczknYa.js} +1 -1
- package/dist/assets/{workspace-page-DBInjaOS.js → workspace-page-G1xUhgr7.js} +1 -1
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/add-credits-modal-DNsSoNjD.js +0 -1
- package/dist/assets/auth-store-EAev0DJN.js +0 -1
- package/dist/assets/avatar-bundled-components-DhB1DyLm.js +0 -1
- package/dist/assets/checkout-return-target-CI8LVYVE.js +0 -1
- package/dist/assets/command-palette-Cmcx1U8W.js +0 -1
- package/dist/assets/common-B1Nsu-f_.js +0 -1
- package/dist/assets/common-BOcNovqr.js +0 -1
- package/dist/assets/common-B_WI9sIg.js +0 -1
- package/dist/assets/deploy-dialogs-DCxRLpl7.js +0 -1
- package/dist/assets/detail-primitives-f9ovBHes.js +0 -1
- package/dist/assets/document-load-D5E61ZgQ.js +0 -1
- package/dist/assets/intelligence-layout-slots-store-Cg1S2hhY.js +0 -1
- package/dist/assets/local-mode-C2LpbCQF.js +0 -1
- package/dist/assets/native-attachment-pickers-CenfaGLR.js +0 -1
- package/dist/assets/native-file-L8dxZeiL.js +0 -1
- package/dist/assets/paired-platform-identity-6K-FDEvo.js +0 -1
- package/dist/assets/password-reset-page-GkXM4m0d.js +0 -1
- package/dist/assets/plugins-surface-BKEqqJBL.js +0 -1
- package/dist/assets/referral-modal-C-PDjzho.js +0 -1
- package/dist/assets/routes-PhQIek7i.js +0 -1
- package/dist/assets/share-feedback-modal-yqSXIF2c.js +0 -1
- package/dist/assets/tool-detail-panel-DSA9JyHJ.js +0 -1
- package/dist/assets/use-supports-credentials-settings-CRzbQVNd.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{fx as e}from"./app-
|
|
1
|
+
import{fx as e}from"./app-BBUxTj9g.js";import{_ as t,d as n,r,t as i}from"./react-B9IgSVeK.js";var a=i();function o(){let[i]=t(),{hash:o}=n(),s=i.toString();return(0,a.jsx)(r,{replace:!0,to:`${e.settings.usage}${s?`?${s}`:``}${o}`})}export{o as BillingRedirectPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Hc as e,NS as t,Na as n,SS as r,an as i,fx as a,m_ as o,oa as s,on as c}from"./app-
|
|
1
|
+
import{Hc as e,NS as t,Na as n,SS as r,an as i,fx as a,m_ as o,oa as s,on as c}from"./app-BBUxTj9g.js";import{j as l}from"./vendor-ajttH1pP.js";import{f as u,r as d,t as f}from"./react-B9IgSVeK.js";import{D as p,Et as m,Yn as h,i as g,va as _}from"./icons-C0wyat6T.js";var v=f();function y(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 b({t:e}){return(0,v.jsx)(r,{children:(0,v.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center px-6 py-16 text-center`,children:[(0,v.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,v.jsx)(_,{className:`h-6 w-6 text-[var(--content-disabled)] dark:text-[var(--content-default)]`})}),(0,v.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:e(`bookmarksPage.emptyTitle`)}),(0,v.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`bookmarksPage.emptyDescription`)})]})})}function x({bookmark:e,isFirst:r,onOpen:i,onRemove:a,t:o}){let s=n()(e.conversationTitle),c=e.messageRole!==`user`,l=y(e.createdAt);return(0,v.jsxs)(`div`,{className:`flex items-start gap-3 py-3 ${r?``:`border-t border-[var(--border-base)]`}`,children:[(0,v.jsx)(`span`,{"aria-hidden":!0,className:`mt-1 h-8 w-1 shrink-0 rounded-full`,style:{backgroundColor:c?`var(--content-default)`:`var(--content-tertiary)`}}),(0,v.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,v.jsxs)(`div`,{className:`flex items-baseline justify-between gap-3`,children:[(0,v.jsx)(`div`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:s}),l?(0,v.jsx)(`span`,{className:`shrink-0 text-body-small-default text-[var(--content-tertiary)]`,children:l}):null]}),e.messagePreview?(0,v.jsx)(`p`,{className:`mt-0.5 line-clamp-2 text-body-small-default text-[var(--content-tertiary)]`,children:e.messagePreview}):null]}),(0,v.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,v.jsx)(t,{variant:`outlined`,onClick:i,children:o(`bookmarksPage.open`)}),(0,v.jsx)(`button`,{type:`button`,onClick:a,title:o(`bookmarksPage.removeBookmark`),"aria-label":o(`bookmarksPage.removeBookmark`),className:`flex h-8 w-8 cursor-pointer items-center justify-center rounded-md text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-active)] hover:text-[var(--content-default)]`,children:(0,v.jsx)(g,{className:`h-4 w-4`})})]})]})}function S(){let{t:n}=l(`settings`),f=u(),{bookmarks:g,isLoading:_,isError:y,refetch:S}=c(),C=i(),w=s();return o.use.hydrated()&&!w?(0,v.jsx)(d,{replace:!0,to:a.settings.general}):_?(0,v.jsx)(`div`,{className:`w-full`,children:(0,v.jsx)(`div`,{className:`flex min-h-[400px] items-center justify-center`,children:(0,v.jsx)(h,{className:`h-6 w-6 animate-spin text-[var(--content-disabled)]`})})}):y?(0,v.jsx)(`div`,{className:`w-full`,children:(0,v.jsx)(r,{children:(0,v.jsxs)(`div`,{className:`flex min-h-[400px] flex-col items-center justify-center px-6 py-16 text-center`,children:[(0,v.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--system-error-lighter)]`,children:(0,v.jsx)(p,{className:`h-6 w-6 text-[var(--system-error-default)]`})}),(0,v.jsx)(`h2`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:n(`bookmarksPage.errorTitle`)}),(0,v.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:n(`bookmarksPage.errorDescription`)}),(0,v.jsxs)(t,{variant:`outlined`,onClick:S,className:`mt-4`,children:[(0,v.jsx)(m,{className:`h-4 w-4`}),n(`bookmarksPage.retry`)]})]})})}):g.length===0?(0,v.jsx)(`div`,{className:`w-full`,children:(0,v.jsx)(b,{t:n})}):(0,v.jsx)(`div`,{className:`w-full`,children:(0,v.jsx)(r,{noPadding:!0,className:`px-4`,children:g.map((t,r)=>(0,v.jsx)(x,{bookmark:t,isFirst:r===0,onOpen:()=>e(f,t.conversationId,{messageId:t.messageId}),onRemove:()=>{C(t.messageId,t.conversationId,!0)},t:n},t.id))})})}export{S as BookmarksPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{lo as t}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{lo as t}from"./app-BBUxTj9g.js";import{j as n}from"./vendor-ajttH1pP.js";import{t as r,x as i}from"./react-B9IgSVeK.js";import{t as a}from"./format-file-size-BW7P6CE0.js";var o=e(i(),1),s=r(),c={verified:{label:`Verified`,className:`bg-[var(--system-positive-weak)] text-[var(--system-positive-strong)]`},signed:{label:`Signed`,className:`bg-[var(--system-info-weak)] text-[var(--system-info-strong)]`},unsigned:{label:`Unsigned`,className:`bg-[var(--surface-active)] text-[var(--content-secondary)]`},tampered:{label:`Tampered — signature invalid`,className:`bg-[var(--system-negative-weak)] text-[var(--system-negative-strong)]`}};function l(){let{t:e}=n(),[r,i]=(0,o.useState)(null),[l,u]=(0,o.useState)(!1);if((0,o.useEffect)(()=>{window.vellum?.bundleConfirm?.getData().then(e=>{e&&i(e)})},[]),!r)return(0,s.jsx)(`div`,{className:`flex h-svh w-screen items-center justify-center bg-background text-muted-foreground select-none`,children:e(`bundleConfirmPage.loading`)});let{manifest:d,scanResult:f,signatureResult:p,bundleSizeBytes:m}=r,h=c[p.trustTier],g=p.trustTier===`tampered`,_=f.warnings;return(0,s.jsxs)(`div`,{className:`flex h-svh w-screen flex-col bg-background px-6 pt-14 pb-6 text-foreground select-none`,children:[(0,s.jsxs)(`div`,{className:`flex items-start gap-3`,children:[d.icon?(0,s.jsx)(`span`,{className:`text-5xl leading-none`,children:d.icon}):(0,s.jsx)(`span`,{className:`text-5xl leading-none`,children:`📦`}),(0,s.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,s.jsx)(`h1`,{className:`truncate text-lg font-semibold`,children:d.name}),d.description&&(0,s.jsx)(`p`,{className:`text-muted-foreground mt-0.5 text-sm leading-snug`,children:d.description})]})]}),(0,s.jsxs)(`div`,{className:`mt-4 flex items-center gap-2`,children:[(0,s.jsx)(`span`,{className:t(`inline-block rounded-full px-2.5 py-0.5 text-xs font-medium`,h.className),children:h.label}),p.trustTier===`signed`&&p.signerDisplayName&&(0,s.jsx)(`span`,{className:`text-muted-foreground text-xs`,children:e(`bundleConfirmPage.bySigner`,{name:p.signerDisplayName})})]}),(0,s.jsxs)(`dl`,{className:`mt-4 grid grid-cols-[auto_1fr] gap-x-3 gap-y-1.5 text-sm`,children:[(0,s.jsx)(`dt`,{className:`text-muted-foreground`,children:e(`bundleConfirmPage.size`)}),(0,s.jsx)(`dd`,{children:a(m)}),(0,s.jsx)(`dt`,{className:`text-muted-foreground`,children:e(`bundleConfirmPage.createdBy`)}),(0,s.jsx)(`dd`,{className:`truncate`,children:d.created_by}),d.capabilities.length>0&&(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)(`dt`,{className:`text-muted-foreground`,children:e(`bundleConfirmPage.capabilities`)}),(0,s.jsx)(`dd`,{className:`truncate`,children:d.capabilities.join(`, `)})]})]}),_.length>0&&(0,s.jsxs)(`div`,{className:`mt-4`,children:[(0,s.jsx)(`button`,{type:`button`,className:`text-muted-foreground text-xs font-medium hover:underline`,onClick:()=>u(e=>!e),children:e(l?`bundleConfirmPage.hideWarnings`:`bundleConfirmPage.showWarnings`,{count:_.length})}),l&&(0,s.jsx)(`ul`,{className:`mt-1.5 space-y-1 text-xs`,children:_.map((e,t)=>(0,s.jsx)(`li`,{className:`rounded bg-[var(--system-mid-weak)] px-2 py-1 text-[var(--system-mid-strong)]`,children:e},t))})]}),(0,s.jsxs)(`div`,{className:`mt-auto flex items-center justify-end gap-3 pt-4`,children:[(0,s.jsx)(`button`,{type:`button`,className:`rounded-md border border-border px-4 py-1.5 text-sm font-medium text-foreground hover:bg-muted`,onClick:()=>window.vellum?.bundleConfirm?.respond(!1),children:e(`bundleConfirmPage.cancel`)}),(0,s.jsx)(`button`,{type:`button`,className:t(`rounded-md px-4 py-1.5 text-sm font-medium text-white`,g?`bg-red-600 hover:bg-red-700`:`bg-primary hover:bg-primary/90`),onClick:()=>window.vellum?.bundleConfirm?.respond(!0),children:e(g?`bundleConfirmPage.installAnyway`:`bundleConfirmPage.install`)})]})]})}export{l as BundleConfirmPage};
|
package/dist/assets/{channel-transcript-panel-D4KVRmwh.js → channel-transcript-panel-D5L38TzO.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$x as t,CS as n,Er as r,Fi as i,Ft as a,Gt as o,Jy as s,Lt as c,NS as l,Nm as u,Pv as d,Qx as f,Ri as p,Xb as m,cr as h,eS as g,er as _,gS as v,ha as y,hn as b,lr as x,mn as S,nr as C,sr as w,ur as T,ym as E}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$x as t,CS as n,Er as r,Fi as i,Ft as a,Gt as o,Jy as s,Lt as c,NS as l,Nm as u,Pv as d,Qx as f,Ri as p,Xb as m,cr as h,eS as g,er as _,gS as v,ha as y,hn as b,lr as x,mn as S,nr as C,sr as w,ur as T,ym as E}from"./app-BBUxTj9g.js";import{j as D}from"./vendor-ajttH1pP.js";import{t as O,x as k}from"./react-B9IgSVeK.js";import{Ji as A,Ya as j,Zr as M}from"./icons-C0wyat6T.js";var N=j(`corner-up-left`,[[`path`,{d:`M20 20v-7a4 4 0 0 0-4-4H4`,key:`1nkjon`}],[`path`,{d:`M9 14 4 9l5-5`,key:`102s5s`}]]),P=e(k(),1),F=O();function I({entry:e,channelLabel:r,assistantName:i,isReferenced:s,onToggleReference:u}){let{t:d}=D(`chat`),p=h(e.timestamp),m=e.role===`user`?d(`channelTranscriptPanel.unknownSender`):i??d(`channelTranscriptPanel.assistantSender`),_=e.provenance.senderName??m,v=e.provenance.reaction;return(0,F.jsxs)(`article`,{"data-reveal-row":``,"data-testid":`channel-transcript-entry`,className:`group flex flex-col gap-1 rounded-lg px-2 py-2 hover:bg-[var(--surface-active)]`,children:[(0,F.jsxs)(`header`,{className:`flex min-w-0 items-baseline gap-2`,children:[(0,F.jsx)(n,{as:`span`,variant:`body-small-emphasised`,className:`min-w-0 truncate text-[var(--content-default)]`,children:_}),p?(0,F.jsx)(n,{as:`span`,variant:`body-small-lighter`,title:c(p),className:`shrink-0 text-[var(--content-tertiary)]`,children:a(p)}):null,(0,F.jsx)(`span`,{className:`flex-1`}),x(e)?(0,F.jsx)(l,{variant:`ghost`,size:`compact`,"data-reveal":``,active:s,leftIcon:s?(0,F.jsx)(A,{}):(0,F.jsx)(N,{}),onClick:()=>u(e),"aria-pressed":s,"aria-label":s?d(`channelTranscriptPanel.removeReferenceAria`):d(`channelTranscriptPanel.referenceAria`,{channel:r}),className:`shrink-0`,children:d(s?`channelTranscriptPanel.referenced`:`channelTranscriptPanel.reference`)}):null]}),v?(0,F.jsx)(n,{as:`p`,variant:`body-small-default`,className:`text-[var(--content-secondary)]`,children:d(v.op===`added`?`channelTranscriptPanel.reactionAdded`:`channelTranscriptPanel.reactionRemoved`,{emoji:o(v)})}):(0,F.jsxs)(n,{as:`div`,variant:`body-small-default`,className:`${t} mb-0`,children:[(0,F.jsx)(`span`,{"aria-hidden":`true`,className:f}),(0,F.jsx)(`span`,{className:`${g} whitespace-pre-wrap break-words`,children:e.text||d(`channelTranscriptPanel.noText`)})]})]})}function L({sidecarRef:e,threadName:t,sourceHref:r,entries:a,assistantName:o,referencedEntryId:s,onToggleReference:c,onClose:u}){let{t:f}=D(`chat`),m=p(e.channelId),h=t?f(`channelTranscriptPanel.namedTitle`,{channel:m,thread:t}):f(`channelTranscriptPanel.title`,{channel:m});return(0,F.jsxs)(_,{icon:(0,F.jsx)(i,{channelId:e.channelId,className:`h-5 w-5 shrink-0 text-[var(--content-secondary)]`}),title:h,headerTrailing:(0,F.jsx)(v,{tone:`neutral`,children:f(`channelTranscriptPanel.readOnly`)}),headerActions:r?(0,F.jsx)(l,{asChild:!0,variant:`outlined`,leftIcon:(0,F.jsx)(M,{}),className:`shrink-0`,children:(0,F.jsx)(`a`,{href:r,target:`_blank`,rel:`noreferrer noopener`,onClick:e=>d(e,r),children:f(`channelTranscriptPanel.openInChannel`,{channel:m})})}):void 0,closeLabel:f(`channelTranscriptPanel.closeAria`),closeTooltip:f(`channelTranscriptPanel.closeTooltip`),onClose:u,children:[(0,F.jsx)(n,{as:`p`,variant:`body-small-lighter`,className:`mb-3 text-[var(--content-tertiary)]`,children:f(`channelTranscriptPanel.readOnlyNote`,{channel:m})}),a.length===0?(0,F.jsx)(C,{children:T(e.channelId)?f(`channelTranscriptPanel.emptyThread`,{channel:m}):f(`channelTranscriptPanel.emptyNoMessageDetail`,{channel:m})}):(0,F.jsx)(`div`,{className:`flex flex-col gap-1`,children:a.map(e=>(0,F.jsx)(I,{entry:e,channelLabel:m,assistantName:o,isReferenced:s===e.id,onToggleReference:c},e.id))})]})}function R({sidecarRef:e,onClose:t}){let n=s.use.activeAssistantId(),i=u.use.activeConversationId(),{target:a,entries:o}=w({conversationId:i,conversation:y(n,i,!0),messages:r()}),c=m.use.name(),l=S.use.reference(),d=S.use.toggleReference(),f=E(a,e),h=f?o:[],g=p(e.channelId),_=(0,P.useCallback)(e=>{a&&d(b({entry:e,target:a,channelLabel:g}))},[a,d,g]);return(0,F.jsx)(L,{sidecarRef:e,threadName:f?a?.threadName:void 0,sourceHref:f?a?.sourceHref:void 0,entries:h,assistantName:c,referencedEntryId:l?.messageId??null,onToggleReference:_,onClose:t})}export{R as ChannelTranscriptPanel};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$d as t,$m as n,A_ as r,Ai as i,Al as a,Am as o,B as s,C as c,CS as l,Cl as u,Cs as d,Cx as f,DS as p,Dl as m,E as h,El as g,Es as _,Fi as v,H as y,IS as b,Id as x,Ii as S,Jx as C,Ld as w,Mo as T,NS as E,No as ee,Oi as D,Ol as O,Om as k,Ox as A,PS as j,Pd as te,Px as M,Qd as ne,Rd as N,Rh as P,Ri as F,SS as I,Sd as L,Sl as re,Ss as R,T as z,Tl as ie,Ts as ae,Uc as B,V,Wo as oe,Wx as H,Xb as se,Xd as ce,Xp as le,_l as ue,bl as de,bs as fe,ds as U,et as pe,fx as me,gS as W,gl as he,gn as ge,iS as G,ji as _e,jl as ve,jx as K,km as ye,ku as be,lS as xe,m_ as Se,pS as Ce,qx as we,rS as Te,sS as Ee,tS as q,uS as De,ui as Oe,vl as ke,vu as Ae,w as je,wl as Me,ws as Ne,xS as Pe,xd as Fe,xl as Ie,xs as Le,xx as Re,yl as ze,ys as Be,zi as Ve}from"./app-BfK0IQIk.js";import{Jn as J,N as Y,Zn as X,er as He,j as Z}from"./vendor-ajttH1pP.js";import{_ as Ue,d as We,f as Ge,h as Ke,n as qe,t as Je,x as Ye}from"./react-B9IgSVeK.js";import{A as Xe,Dn as Ze,Ji as Qe,Rt as $e,Ui as et,Vn as tt,Yn as nt,Zr as rt,br as it,fr as at,on as ot,qi as st,qn as ct,vt as lt,wi as ut,zi as dt}from"./icons-C0wyat6T.js";import{n as ft,t as pt}from"./assistant-inbox-upgrade-body-gHf4cLXK.js";import{t as mt}from"./detail-card-CZVSMSNs.js";import{t as ht}from"./assistant-handle-modal-CgnaRG-5.js";import{n as gt,r as _t,t as vt}from"./use-side-list-room-BhFIS5Le.js";import{a as yt,c as bt,i as xt,n as St,o as Ct,r as wt,s as Tt,t as Et,u as Dt}from"./use-invite-link-dialog-6IXyqacJ.js";import{i as Ot,r as kt}from"./service-form-controls-yfiFapqu.js";var Q=e(Ye(),1);function At(){let{channelId:e}=Ke(),t=Ge(),{search:n}=We();return{selected:e,select:(0,Q.useCallback)(e=>{t({pathname:`/assistant/channels/${encodeURIComponent(e)}`,search:n},{replace:!0})},[t,n])}}var $=Je();function jt({channels:e,pluginChannels:t=[],selectedKey:n,onSelect:r}){return(0,$.jsx)(I.Root,{className:`flex h-full flex-col overflow-hidden`,children:(0,$.jsx)(I.Body,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-4`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[e.map(e=>(0,$.jsx)(Mt,{channel:e,selected:e.key===n,onClick:()=>r(e.key)},e.key)),t.map(e=>(0,$.jsx)(Nt,{channel:e,selected:e.key===n,onClick:()=>r(e.key)},e.key))]})})})}function Mt({channel:e,selected:t,onClick:n}){let r=e.status===`ready`,i=F(e.key),a=r?`Connected`:`Not connected`;return(0,$.jsx)(p,{asChild:!0,active:t,"aria-label":`${i}, ${a}`,children:(0,$.jsxs)(`button`,{type:`button`,onClick:n,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:[(0,$.jsx)(v,{channelId:e.key,className:`h-4 w-4 shrink-0 text-[color:var(--content-secondary)]`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default`,children:i}),(0,$.jsx)(`span`,{className:`flex shrink-0 items-center`,children:(0,$.jsx)(W,{tone:r?`positive`:`neutral`,children:a})})]})})}function Nt({channel:e,selected:t,onClick:n}){let{t:r}=Z(`channels`);return(0,$.jsx)(p,{asChild:!0,active:t,"aria-label":r(`channelAdapterList.pluginChannelAria`,{channel:e.label}),children:(0,$.jsxs)(`button`,{type:`button`,onClick:n,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:[(0,$.jsx)(S,{icon:e.icon,className:`h-4 w-4 shrink-0 text-[color:var(--content-secondary)]`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default`,children:e.label}),(0,$.jsx)($e,{"aria-hidden":!0,className:`h-4 w-4 shrink-0 text-[color:var(--content-secondary)]`})]})})}function Pt({icon:e,title:t,description:n,action:r,className:i}){return(0,$.jsxs)(`div`,{className:b(`flex flex-col items-center justify-center gap-3 px-4 py-12 text-center`,i),children:[e?(0,$.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-xl bg-[var(--surface-sunken)] text-[var(--content-tertiary)]`,children:e}):null,(0,$.jsx)(`h3`,{className:`text-title-small text-[var(--content-default)]`,children:t}),n?(0,$.jsx)(`p`,{className:`max-w-md text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:n}):null,r?(0,$.jsx)(`div`,{className:`mt-1`,children:r}):null]})}var Ft={no_one:{labelKey:`channelTrustFloor.noOne.label`,descriptionKey:`channelTrustFloor.noOne.description`,confirm:{titleKey:`channelTrustFloor.noOne.confirmTitle`,messageKey:`channelTrustFloor.noOne.confirmMessage`,actionKey:`channelTrustFloor.noOne.confirmAction`,destructive:!0}},guardian_only:{labelKey:`channelTrustFloor.guardianOnly.label`,descriptionKey:`channelTrustFloor.guardianOnly.description`,confirm:void 0},trusted_contacts:{labelKey:`channelTrustFloor.trustedContacts.label`,descriptionKey:`channelTrustFloor.trustedContacts.description`,confirm:void 0},any_contact:{labelKey:`channelTrustFloor.anyContact.label`,descriptionKey:`channelTrustFloor.anyContact.description`,confirm:{titleKey:`channelTrustFloor.anyContact.confirmTitle`,messageKey:`channelTrustFloor.anyContact.confirmMessage`,actionKey:`channelTrustFloor.anyContact.confirmAction`,destructive:!1}},strangers:{labelKey:`channelTrustFloor.strangers.label`,descriptionKey:`channelTrustFloor.strangers.description`,confirm:{titleKey:`channelTrustFloor.strangers.confirmTitle`,messageKey:`channelTrustFloor.strangers.confirmMessage`,actionKey:`channelTrustFloor.strangers.confirmAction`,destructive:!0}}};function It({assistantDisplayName:e,policy:t,saving:n=!1,loading:r=!1,error:i=!1,onChange:a}){let{t:o}=Z(`channels`),s=t??`trusted_contacts`,c=Dt.map(t=>({value:t,label:o(Ft[t].labelKey),tooltip:o(Ft[t].descriptionKey,{assistant:e})})),[u,d]=(0,Q.useState)(null),f=u?Ft[u].confirm:void 0;return(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(l,{as:`span`,variant:`body-small-emphasised`,className:`text-[color:var(--content-secondary)]`,children:o(`channelTrustFloor.heading`,{assistant:e})}),r?(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:o(`channelTrustFloor.loading`)}):i?(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-negative)]`,children:o(`channelTrustFloor.loadFailed`)}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{style:{maxWidth:280},children:(0,$.jsx)(q,{value:s,onChange:e=>{if(Ft[e].confirm){d(e);return}a(e)},options:c,disabled:n,"aria-label":o(`channelTrustFloor.selectAria`,{assistant:e})})}),(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:o(Ft[s].descriptionKey,{assistant:e})}),s===`trusted_contacts`?(0,$.jsx)(Pe,{tone:`info`,className:`max-w-lg`,children:o(`channelTrustFloor.trustedContactsNotice`,{assistant:e})}):null]}),(0,$.jsx)(Te,{open:u!==null,title:f?o(f.titleKey):``,message:f?o(f.messageKey):``,confirmLabel:o(f?f.actionKey:`channelTrustFloor.confirmFallback`),destructive:f?.destructive??!1,onConfirm:()=>{u&&a(u),d(null)},onCancel:()=>d(null)})]})}function Lt({mode:e,onChange:t}){let{t:n}=Z(`common`);return(0,$.jsx)(`div`,{className:`max-w-[280px]`,children:(0,$.jsx)(Ee,{ariaLabel:n(`serviceCard.modeToggleAriaLabel`),value:e,onChange:t,items:[{value:`managed`,label:n(`serviceCard.managedLabel`)},{value:`your-own`,label:n(`serviceCard.yourOwnLabel`)}]})})}function Rt({id:e,title:t,subtitle:n,mode:r,onModeChange:i,children:a}){return(0,$.jsxs)(mt,{id:e,title:t,subtitle:n,accessory:(0,$.jsx)(Lt,{mode:r,onChange:i}),children:[(0,$.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,$.jsx)(`div`,{className:`mt-4`,children:a})]})}function zt(e,t){return e===`managed`||e===`your-own`?e:t}function Bt({align:e=`center`}){let{t}=Z(`assistant-inbox`),{hidden:n,restore:r}=D();return n?(0,$.jsxs)(`div`,{className:b(`flex flex-wrap items-center gap-x-2 gap-y-1 text-body-small-lighter text-[var(--content-tertiary)]`,e===`center`?`justify-center`:`justify-start`),children:[(0,$.jsx)(`span`,{children:t(`inboxRailRestore.hiddenNote`)}),(0,$.jsx)(E,{variant:`ghost`,size:`compact`,leftIcon:(0,$.jsx)(ot,{}),onClick:()=>{r(),G.success(t(`inboxRailRestore.restoredToast`))},children:t(`inboxRailRestore.restoreButton`)})]}):null}function Vt({subdomain:e,onSubdomainChange:t,domainSuffix:n,subdomainPlaceholder:r=`my-assistant`,disabled:i,autoFocus:a,prefix:o,error:s,locked:c,lockedMessage:l}){let{t:u}=Z(`settings`);return(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`flex h-9 w-full items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${s?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[o,(0,$.jsx)(`input`,{value:e,onChange:e=>t(e.target.value.toLowerCase().trim()),disabled:i||c,readOnly:c,autoFocus:a,placeholder:r,"aria-label":u(`domainField.subdomainAriaLabel`),"aria-invalid":!!s,className:`h-full min-w-0 flex-1 bg-transparent ${o?`pl-1.5`:`pl-3`} pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none disabled:cursor-not-allowed disabled:opacity-60`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`.`,n]})]}),s&&(0,$.jsx)(`p`,{className:`mt-1.5 text-body-small-default text-[var(--system-negative-strong)]`,children:s}),c&&l&&(0,$.jsx)(`p`,{className:`mt-1.5 text-body-small-default text-[var(--content-tertiary)]`,children:l})]})}function Ht({status:e,isLoading:t}){let{t:n}=Z(`common`);return t?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,children:[(0,$.jsx)(nt,{className:`h-3 w-3 animate-spin`}),n(`domainVerificationChip.checkingDomain`)]}):!e||e===`unknown`?(0,$.jsx)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,title:n(`domainVerificationChip.unknownStatusTitle`),children:n(`domainVerificationChip.unknownStatus`)}):e===`verified`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-positive-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,title:n(`domainVerificationChip.verifiedTitle`),children:[(0,$.jsx)(Qe,{className:`h-3 w-3`}),n(`domainVerificationChip.domainVerified`)]}):e===`pending`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-mid-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-mid-strong)]`,title:n(`domainVerificationChip.verifyingTitle`),children:[(0,$.jsx)(ut,{className:`h-3 w-3`}),n(`domainVerificationChip.verifyingDomain`)]}):e===`not_started`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-negative-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,title:n(`domainVerificationChip.setupRequiredTitle`),children:[(0,$.jsx)(et,{className:`h-3 w-3`}),n(`domainVerificationChip.setupRequired`)]}):(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-negative-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,title:n(`domainVerificationChip.failedTitle`),children:[(0,$.jsx)(et,{className:`h-3 w-3`}),n(`domainVerificationChip.verificationFailed`)]})}var Ut=`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`,Wt=1e4;function Gt(e){return e===`verified`||e===`failed`||e===`not_started`?!1:Wt}function Kt({assistantId:e,assistantHandle:n,emailRootDomain:r}){let{t:i}=Z(`channels`),a=He(),o=Ge(),[s,c]=Ue(),[l,d]=(0,Q.useState)(``),[f,p]=(0,Q.useState)(!1),[h,_]=(0,Q.useState)(null),[v,y]=(0,Q.useState)(``),[b,x]=(0,Q.useState)(null),[S,C]=(0,Q.useState)(!1),[w,T]=(0,Q.useState)(!1),[ee,D]=(0,Q.useState)(!1),[k,j]=(0,Q.useState)(!1),[te,M]=(0,Q.useState)(null);(0,Q.useEffect)(()=>{f||!n||l||(d(n),p(!0))},[n,f,l]);let N=X({...Ae(),enabled:!0}),P=N.data,F=P?.entitlements,I=F?.managed_email===!0,L=!!F&&!I,R=!P&&N.isError&&!N.isFetching,z=X({...ke({path:{assistant_id:e}}),enabled:!L}),ae=X({...ie({path:{assistant_id:e}}),enabled:!L}),B=z.data?.results?.[0],V=ae.data?.results?.[0],oe=B?`${B.subdomain}.${r}`:null,H=X({...m({path:{assistant_id:e,id:V?.id??``}}),enabled:!!V?.id,refetchOnWindowFocus:!1}),ce=X({...de({path:{assistant_id:e,id:B?.id??``}}),enabled:!!B?.id,refetchInterval:e=>Gt(e.state.data?.status),refetchOnWindowFocus:!0});(0,Q.useEffect)(()=>{s.get(`release`)!==`1`||!B||V||(T(!0),c(e=>{let t=new URLSearchParams(e);return t.delete(`release`),t},{replace:!0}))},[V,B,s,c]);let le=J(he()),fe=J(ue()),U=be(),W=J(u()),ge=J(Me()),_e=J(t()),K=(0,Q.useCallback)(()=>{let t={assistant_id:e};a.invalidateQueries({queryKey:ze({path:t})}),a.invalidateQueries({queryKey:g({path:t})}),V?.id&&a.invalidateQueries({queryKey:O({path:{...t,id:V.id}})}),a.invalidateQueries({queryKey:ve()})},[V?.id,e,a]),ye=pe(),xe=se.use.name(),Ce=Se.use.assistantInbox(),we=ht(ye),Ee=_e.mutateAsync,q=(0,Q.useCallback)(()=>{Ee({path:{assistant_id:ye},body:{channel:`email`}}).catch(()=>{}).finally(()=>{a.invalidateQueries({queryKey:ne({path:{assistant_id:ye}})})})},[ye,a,Ee]),De=(0,Q.useCallback)(async()=>{let t=l.trim().toLowerCase();if(!t){_(i(`emailManagedContent.enterSubdomainError`));return}C(!1);try{await le.mutateAsync({path:{assistant_id:e},body:{subdomain:t}}),d(``),_(null),K(),G.success(i(`emailManagedContent.domainRegisteredToast`,{domain:`${t}.${r}`}))}catch(e){_(A(e,void 0,i(`emailManagedContent.registerDomainFailedFallback`)))}},[e,r,K,le,l,i]),Oe=(0,Q.useCallback)(async()=>{let t=v.trim().toLowerCase();if(!t){x(i(`emailManagedContent.enterUsernameError`));return}try{await W.mutateAsync({path:{assistant_id:e},body:{username:t}}),y(``),x(null),K(),q(),G.success(i(`emailManagedContent.emailCreatedToast`))}catch(e){x(A(e,void 0,i(`emailManagedContent.createEmailFailedFallback`)))}},[e,K,q,W,v,i]),je=(0,Q.useCallback)(async()=>{if(V?.id){D(!1);try{await ge.mutateAsync({path:{assistant_id:e,id:V.id}}),K(),q(),G.success(i(`emailManagedContent.emailRemovedToast`))}catch(e){Re(e,{context:`email_address_delete`}),G.error(i(`emailManagedContent.emailRemoveFailedToast`))}}},[V?.id,e,ge,K,q,i]),Ne=(0,Q.useCallback)(async()=>{if(!(!B?.id||U.isPending)){M(null);try{let t=await U.mutateAsync({path:{assistant_id:e,id:B.id}});j(!1),re(a,{path:{assistant_id:e,id:B.id}},t),a.invalidateQueries({queryKey:Ie({path:{assistant_id:e,id:B.id}})}),G.success(i(`emailManagedContent.repairStartedToast`))}catch(e){Re(e,{context:`email_domain_provision`});let t=A(e,void 0,i(`emailManagedContent.repairFailedFallback`));M(t),G.error(t)}}},[e,B?.id,U,a,i]),Fe=(0,Q.useCallback)(async()=>{if(!B?.id)return;if(V){G.error(i(`emailManagedContent.removeAddressFirstToast`));return}T(!1);let t=B.subdomain;try{await fe.mutateAsync({path:{assistant_id:e,id:B.id}}),d(t),K(),G.success(i(`emailManagedContent.domainReleasedToast`))}catch(e){Re(e,{context:`email_domain_release`}),G.error(i(`emailManagedContent.domainReleaseFailedToast`))}},[V,e,fe,B?.id,B?.subdomain,K,i]);if(N.isLoading)return(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(nt,{className:`h-4 w-4 animate-spin`}),i(`emailManagedContent.checkingSubscription`)]});if(L&&Ce)return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(pt,{assistantId:ye,assistantName:xe??``,handle:n??``,rootDomain:r,onEditHandle:we.openModal??void 0,onUpgrade:()=>o(me.plans),onSeePlans:()=>o(me.plans),footnote:(0,$.jsx)(Bt,{align:`start`}),align:`start`}),we.modal]});if(L)return(0,$.jsx)(Pe,{tone:`info`,icon:(0,$.jsx)(tt,{className:`h-4 w-4`,"aria-hidden":!0}),title:i(`emailManagedContent.upgradeNoticeTitle`),actions:(0,$.jsx)(E,{size:`compact`,onClick:()=>o(me.plans),children:i(`emailManagedContent.upgradeButton`)}),children:i(`emailManagedContent.upgradeNoticeBody`)});let Le=R?(0,$.jsx)(Pe,{tone:`warning`,title:i(`emailManagedContent.subscriptionWarningTitle`),actions:(0,$.jsx)(E,{size:`compact`,variant:`outlined`,onClick:()=>N.refetch(),children:i(`emailManagedContent.retry`)}),children:i(`emailManagedContent.subscriptionWarningBody`)}):null;return B?V?(0,$.jsxs)(`div`,{className:`space-y-4`,children:[Le,(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.addressLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:V.address}),(0,$.jsx)(Ht,{status:ce.data?.status,isLoading:ce.isLoading}),(0,$.jsx)(E,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(Xe,{}),onClick:()=>D(!0),disabled:ge.isPending,"aria-label":i(`emailManagedContent.removeEmailAriaLabel`)})]}),(0,$.jsx)(Te,{open:ee,title:i(`emailManagedContent.removeEmailTitle`),message:(0,$.jsx)(Y,{i18nKey:`emailManagedContent.removeEmailConfirmMessage`,ns:`channels`,values:{address:V.address},components:{code:(0,$.jsx)(`code`,{className:Ut})}}),confirmLabel:i(`emailManagedContent.removeConfirm`),destructive:!0,onConfirm:je,onCancel:()=>D(!1)})]}),ce.data?.status===`not_started`&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Pe,{tone:`warning`,title:i(`emailManagedContent.repairNoticeTitle`),actions:(0,$.jsx)(E,{size:`compact`,onClick:()=>{M(null),j(!0)},disabled:U.isPending,children:U.isPending?i(`emailManagedContent.completingSetup`):i(`emailManagedContent.completeSetup`)}),children:i(`emailManagedContent.repairNoticeBody`)}),(0,$.jsx)(Te,{open:k,title:i(`emailManagedContent.repairConfirmTitle`),message:(0,$.jsx)(Y,{i18nKey:`emailManagedContent.repairConfirmMessage`,ns:`channels`,values:{domain:oe},components:{code:(0,$.jsx)(`code`,{className:Ut})}}),confirmLabel:i(`emailManagedContent.completeSetup`),isPending:U.isPending,error:te,onConfirm:()=>{Ne()},onCancel:()=>{U.isPending||j(!1)}})]}),H.data?.usage&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.usageSummary`,{sent:H.data.usage.sent_today,limit:H.data.usage.daily_limit,received:H.data.usage.received_today})})]}):(0,$.jsxs)(`div`,{className:`space-y-4`,children:[Le,(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.domainLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:[B.subdomain,`.`,r]}),(0,$.jsx)(Ht,{status:ce.data?.status,isLoading:ce.isLoading}),(0,$.jsx)(E,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(Xe,{}),onClick:()=>T(!0),disabled:fe.isPending,"aria-label":i(`emailManagedContent.releaseDomainAriaLabel`)})]}),(0,$.jsx)(Te,{open:w,title:i(`emailManagedContent.releaseDomainTitle`),message:(0,$.jsx)(Y,{i18nKey:`emailManagedContent.releaseDomainConfirmMessage`,ns:`channels`,values:{domain:`${B.subdomain}.${r}`},components:{code:(0,$.jsx)(`code`,{className:Ut})}}),confirmLabel:i(`emailManagedContent.releaseConfirm`),destructive:!0,onConfirm:Fe,onCancel:()=>T(!1)})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.emailAddressLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex h-9 min-w-0 flex-1 items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${b?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[(0,$.jsx)(`input`,{value:v,onChange:e=>{y(e.target.value.toLowerCase()),b&&x(null)},placeholder:i(`emailManagedContent.emailUsernamePlaceholder`),"aria-label":i(`emailManagedContent.emailUsernameAriaLabel`),"aria-invalid":!!b,className:`h-full min-w-0 flex-1 bg-transparent pl-3 pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`@`,oe]})]}),(0,$.jsx)(E,{onClick:Oe,disabled:W.isPending||!v.trim(),children:W.isPending?i(`emailManagedContent.creating`):i(`emailManagedContent.create`)})]}),b&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:b})]})]}):(0,$.jsxs)(`div`,{className:`space-y-3`,children:[Le,(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.subdomainLabel`)}),(0,$.jsx)(Vt,{subdomain:l,onSubdomainChange:e=>{d(e),h&&_(null)},domainSuffix:r,subdomainPlaceholder:i(`emailManagedContent.subdomainExamplePlaceholder`),error:h}),(0,$.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:i(`emailManagedContent.subdomainHint`)}),(0,$.jsx)(E,{onClick:()=>C(!0),disabled:le.isPending||!l.trim(),children:le.isPending?i(`emailManagedContent.registering`):i(`emailManagedContent.register`)}),(0,$.jsx)(Te,{open:S,title:i(`emailManagedContent.setSubdomainTitle`),message:(0,$.jsx)(Y,{i18nKey:`emailManagedContent.setSubdomainConfirmMessage`,ns:`channels`,values:{subdomain:l.trim().toLowerCase()||i(`emailManagedContent.subdomainFallback`)},components:{code:(0,$.jsx)(`code`,{className:Ut})}}),confirmLabel:i(`emailManagedContent.confirm`),onConfirm:De,onCancel:()=>C(!1)})]})}function qt(){let{t:e}=Z(`channels`),t=pe(),o=n(),{data:s}=X({...a(),enabled:o}),c=s?.results?.[0]?.handle,l=i.use.emailRootDomain(),u=le(),[d,p]=(0,Q.useState)(()=>u===`gated`?`your-own`:zt(K(ee,`managed`),`managed`)),[m,h]=(0,Q.useState)(()=>{let e=K(T,`resend`);return e===`mailgun`||e===`resend`?e:`resend`}),{platformAssistantId:g,error:_}=_e(t,u===`full`&&d===`managed`),v=g??(_?t:null),y=X({queryKey:[`byoEmailCredential`,t,m],queryFn:async()=>{let{data:e}=await r({path:{assistant_id:t},body:{service:m,field:`api_key`},throwOnError:!0});return e},enabled:d===`your-own`||u===`gated`,staleTime:6e4,retry:f,meta:{errorContext:`byo_email_credential_check`}});(0,Q.useEffect)(()=>{y.error&&Re(y.error,{context:`byo_email_credential_check`,bestEffort:!0})},[y.error]);let b=y.data?.hasSecret===!0,x=Se.use.assistantInbox(),S=ft(se.use.name()??``),{data:C}=X({...Ae(),enabled:x&&o&&u===`full`}),w=x&&u===`full`&&d===`managed`&&v!==null&&!!C?.entitlements&&C.entitlements.managed_email!==!0,E=(0,Q.useCallback)(e=>{p(e),M(ee,e)},[]),D=(0,Q.useCallback)(()=>{M(T,m),G.success(e(`emailChannelSection.saveSuccessToast`))},[m,e]),O=(0,Q.useMemo)(()=>oe.find(e=>e.id===m)??oe[0],[m]),k=(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(at,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`span`,{children:(0,$.jsx)(Y,{i18nKey:`emailChannelSection.setupInstructions`,ns:`channels`,values:{providerName:O.displayName,setupSkill:O.setupSkill},components:{code:(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`})}})}),(0,$.jsxs)(`a`,{href:O.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e(`emailChannelSection.openProvider`,{providerName:O.displayName}),(0,$.jsx)(rt,{className:`h-3 w-3`})]})]})]}),A=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`emailChannelSection.providerLabel`)}),(0,$.jsx)(q,{value:m,onChange:e=>{(e===`mailgun`||e===`resend`)&&h(e)},options:oe.map(e=>({value:e.id,label:e.displayName}))})]}),b?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-[var(--system-positive-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-default)]`,children:[(0,$.jsx)(dt,{className:`h-4 w-4 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsx)(`span`,{children:(0,$.jsx)(Y,{i18nKey:`emailChannelSection.apiKeyConfigured`,ns:`channels`,values:{providerName:O.displayName,setupSkill:O.setupSkill},components:{code:(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`})}})})]}),(0,$.jsxs)(`a`,{href:O.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-body-small-default text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e(`emailChannelSection.openProvider`,{providerName:O.displayName}),(0,$.jsx)(rt,{className:`h-3 w-3`})]})]}):k,(0,$.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,$.jsx)(kt,{onClick:D,disabled:!1})})]});return u===`gated`?(0,$.jsx)(Ot,{id:`email`,title:e(`emailChannelSection.title`),subtitle:e(`emailChannelSection.subtitle`),children:A}):(0,$.jsx)(Rt,{id:`email`,title:w?S.title:e(`emailChannelSection.title`),subtitle:w?S.subtitle:e(`emailChannelSection.subtitle`),mode:d,onModeChange:E,children:d===`managed`?(0,$.jsx)(`div`,{className:`space-y-4`,children:u===`disabled`?(0,$.jsx)(ge,{children:e(`emailChannelSection.platformLoginNotice`)}):v===null?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(nt,{className:`h-4 w-4 animate-spin`}),e(`emailChannelSection.connecting`)]}):(0,$.jsx)(Kt,{assistantId:v,assistantHandle:c,emailRootDomain:l})}):A})}function Jt({health:e}){let{Icon:t,label:n,tone:r}=Ve(e);return(0,$.jsx)(W,{tone:r,leftIcon:(0,$.jsx)(t,{}),children:n})}function Yt({address:e,health:t,pending:n,onDisconnect:r}){let{t:i}=Z(`channels`);return(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(Jt,{health:t}),e?(0,$.jsx)(`span`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e}):null,(0,$.jsx)(`div`,{className:`ml-auto`,children:(0,$.jsx)(E,{type:`button`,variant:`danger`,onClick:r,disabled:!r||n,children:i(n?`connectionCard.disconnecting`:`connectionCard.disconnect`)})})]})}function Xt({children:e}){let{t}=Z(`channels`);return(0,$.jsxs)(I.Root,{children:[(0,$.jsx)(I.Header,{children:(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(`img`,{src:Oe(`/images/integrations/slack.svg`),alt:``,className:`size-8 rounded-lg bg-[var(--surface-sunken)] p-1`}),(0,$.jsx)(l,{as:`span`,variant:`body-medium-default`,children:t(`slackChannelCard.setupHeading`)})]})}),(0,$.jsx)(I.Body,{children:e})]})}s.map(e=>e.riskThreshold);var Zt=[`none`,`low`];function Qt(e){if(e!==void 0)return e===`none`?`none`:`low`}var $t={none:{label:V(`none`).label,sublabel:`asks every time`,tone:`negative`,dotColor:`var(--system-negative-strong)`},low:{label:V(`low`).label,sublabel:`safe lookups`,tone:`warning`,dotColor:`var(--system-mid-strong)`},medium:{label:V(`medium`).label,sublabel:`broader lookups`,tone:`info`,dotColor:`var(--system-info-strong)`},high:{label:V(`high`).label,sublabel:`any lookup`,tone:`positive`,dotColor:`var(--system-positive-strong)`}},en=[`trusted_contact`,`unverified_contact`,`unknown`];function tn(e,t){let n={};for(let r of e){if(r.selector.scope!==`channel`||r.selector.adapter!==t)continue;let e=r.selector.channelExternalId;e&&(r.contactType===`trusted_contact`||!(e in n))&&(n[e]=r.threshold)}return n}function nn(e,t,n){return n===`channels`?e.selector.scope===`adapter`&&e.selector.adapter===t:e.selector.scope===`channel_type`&&e.selector.adapter===t&&e.selector.channelType===`dm`}function rn(e,t,n){let r;for(let i of e)nn(i,t,n)&&(i.contactType===`trusted_contact`||r===void 0)&&(r=i.threshold);return r}var an=`__default__`;function on({color:e}){return(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`h-1.5 w-1.5 shrink-0 rounded-full`,style:{backgroundColor:e}})}function sn({tier:e,defaultTier:t,disabled:n,onTierChange:r,onReset:i,"aria-label":a}){let{t:o}=Z(`channels`),s=Qt(e??t??void 0),c=Qt(t??void 0)??null,l=Zt.map(e=>({value:e,label:$t[e].label,icon:(0,$.jsx)(on,{color:$t[e].dotColor}),suffix:e===c?(0,$.jsx)(`span`,{className:`text-[color:var(--content-tertiary)]`,children:o(`tierPicker.defaultSuffix`)}):void 0,tooltip:$t[e].sublabel}));return l.unshift({value:an,label:`Default`,icon:(0,$.jsx)(on,{color:`transparent`}),tooltip:`follows the default level`}),(0,$.jsx)(q,{value:s??``,onChange:e=>{e===an||e===c?i():r(e)},options:l,placeholder:o(`tierPicker.defaultPlaceholder`),disabled:n,size:`compact`,menuAlign:`end`,"aria-label":a})}function cn(e){return e.type===`dm`?`dm`:e.isPrivate?`private`:`public`}function ln(e){return e.filter(e=>cn(e)!==`dm`)}function un(e,t,n){let r=t.trim().toLowerCase();return e.filter(e=>(n===null||cn(e)===n)&&(r===``||e.name.toLowerCase().includes(r))).sort((e,t)=>e.name.localeCompare(t.name))}function dn(e){let t={public:0,private:0,dm:0};for(let n of e)t[cn(n)]+=1;return t}function fn(e){return e.memberCount==null?null:e.memberCount===1?`1 member`:`${e.memberCount} members`}var pn=[{value:null,labelKey:`slackChannelList.filterAll`},{value:`public`,labelKey:`slackChannelList.filterPublic`},{value:`private`,labelKey:`slackChannelList.filterPrivate`}],mn={public:it,private:ct},hn=100,gn=new Set;function _n({assistantDisplayName:e,slackHandle:t,channels:n,loading:r=!1,error:i=!1,tierOverrides:a,defaultTier:o=null,accessControlsSupported:s=!0,tierOverridesLoading:c=!1,tierOverridesError:u=!1,pendingChannelIds:d=gn,onTierChange:f,onTierReset:p}){let{t:m}=Z(`channels`),[h,g]=(0,Q.useState)(``),[_,v]=(0,Q.useState)(null),y=(0,Q.useMemo)(()=>ln(n??[]),[n]),x=(0,Q.useMemo)(()=>un(y,h,_),[y,h,_]),S=(0,Q.useMemo)(()=>dn(y),[y]);return(0,$.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,$.jsx)(l,{as:`p`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:(0,$.jsx)(Y,{i18nKey:`slackChannelList.presenceHint`,ns:`channels`,values:{handle:t??`@${e}`,assistant:e},components:{invite:(0,$.jsx)(`code`,{className:`text-[color:var(--content-secondary)]`}),remove:(0,$.jsx)(`code`,{className:`text-[color:var(--content-secondary)]`})}})}),r?(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:m(`slackChannelList.loading`)}):i?(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-negative)]`,children:m(`slackChannelList.loadFailed`)}):y.length===0?(0,$.jsx)(Pt,{icon:(0,$.jsx)(it,{className:`h-6 w-6`}),title:m(`slackChannelList.emptyTitle`)}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,$.jsx)(`div`,{className:`min-w-56 flex-1`,children:(0,$.jsx)(Ce,{type:`search`,value:h,onChange:e=>g(e.target.value),placeholder:m(`slackChannelList.searchPlaceholder`),"aria-label":m(`slackChannelList.searchAria`),leftIcon:(0,$.jsx)(lt,{className:`h-4 w-4`}),fullWidth:!0})}),(0,$.jsx)(`div`,{className:`flex items-center gap-2`,role:`group`,"aria-label":m(`slackChannelList.filterGroupAria`),children:pn.map(({value:e,labelKey:t})=>{let n=_===e,r=e===null?y.length:S[e];return(0,$.jsx)(`button`,{type:`button`,"aria-pressed":n,onClick:()=>v(e),className:b(`inline-flex h-6 items-center rounded-full px-2.5 text-body-small-emphasised leading-none transition-colors`,n?`bg-[var(--content-default)] text-[var(--surface-base)]`:`bg-[var(--tag-bg-neutral)] text-[color:var(--content-secondary)] hover:text-[color:var(--content-default)]`),children:m(t,{count:r})},e??`all`)})})]}),x.length===0?(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`py-4 text-center text-[color:var(--content-tertiary)]`,children:m(`slackChannelList.noMatches`)}):x.length>hn?(0,$.jsx)(`div`,{className:`h-96`,children:(0,$.jsx)(C,{items:x,computeItemKey:(e,t)=>t.id,itemContent:(e,t)=>(0,$.jsx)(vn,{channel:t,pending:d.has(t.id),overridesLoading:c,overridesError:u,defaultTier:o,accessControls:s,tierOverride:a?.[t.id],onTierChange:e=>f?.(t.id,e),onReset:()=>p?.(t.id)}),className:`h-full`})}):(0,$.jsx)(`div`,{className:`max-h-96 overflow-y-auto`,children:x.map(e=>(0,$.jsx)(vn,{channel:e,pending:d.has(e.id),overridesLoading:c,overridesError:u,defaultTier:o,accessControls:s,tierOverride:a?.[e.id],onTierChange:t=>f?.(e.id,t),onReset:()=>p?.(e.id)},e.id))})]})]})}function vn({channel:e,pending:t,overridesLoading:n,overridesError:r,defaultTier:i,accessControls:a,tierOverride:o,onTierChange:s,onReset:c}){let{t:l}=Z(`channels`),u=cn(e);if(u===`dm`)return null;let d=mn[u],f=fn(e),p=`[&+&]:border-t [&+&]:border-[var(--border-base)]`;return a?(0,$.jsx)(H,{className:p,leading:(0,$.jsx)(d,{className:`h-4 w-4 text-[var(--content-tertiary)]`}),title:e.name,subtitle:f??void 0,trailing:(0,$.jsx)(`div`,{className:`w-40 sm:w-48`,children:(0,$.jsx)(sn,{tier:o,defaultTier:i,disabled:t||n||r,onTierChange:s,onReset:c,"aria-label":l(`slackChannelList.accessAria`,{channel:e.name})})})}):(0,$.jsx)(H,{className:p,leading:(0,$.jsx)(d,{className:`h-4 w-4 text-[var(--content-tertiary)]`}),title:e.name,trailing:f==null?void 0:(0,$.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:f})})}function yn(e){return e===`none`?`Asks before every action, even a web search.`:`Asks before anything beyond looking things up and saving files in its own workspace.`}function bn({defaultTier:e}){let{t}=Z(`channels`),n=Qt(e??void 0)??null;return(0,$.jsx)(`div`,{className:`flex flex-col gap-2 px-4 py-3`,children:(0,$.jsx)(`ul`,{className:`grid gap-x-6 gap-y-3 sm:grid-cols-2`,children:[...Zt].reverse().map(e=>{let r=$t[e];return(0,$.jsxs)(`li`,{className:`flex flex-col gap-0.5`,children:[(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,$.jsx)(on,{color:r.dotColor}),(0,$.jsx)(l,{as:`span`,variant:`body-small-emphasised`,children:r.label}),e===n?(0,$.jsx)(l,{as:`span`,variant:`body-small-default`,className:`text-[color:var(--content-tertiary)]`,children:t(`slackChannelTierLegend.defaultMarker`)}):null]}),(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:yn(e)})]},e)})})})}var xn=[{bucket:`channels`,icon:it,title:`Channels`,description:`Public and private channels`},{bucket:`dm`,icon:Ze,title:`Direct messages`,description:`One-on-one DMs`}];function Sn({assistantName:e,globalDefaultTier:t,bucketTiers:n,loading:r,error:i,pendingBuckets:a,onBucketChange:o,onBucketReset:s}){let{t:c}=Z(`channels`);return(0,$.jsxs)(I.Root,{children:[(0,$.jsx)(I.Header,{children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[c(`slackChannelTypeDefaults.heading`),(0,$.jsx)(l,{as:`p`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:(0,$.jsx)(Y,{i18nKey:`slackChannelTypeDefaults.subtitle`,ns:`channels`,values:{assistant:e},components:{trustRules:(0,$.jsx)(qe,{to:me.settings.privacy,className:`text-[var(--content-link)] underline hover:text-[var(--content-link-hover)]`})}})})]})}),(0,$.jsx)(I.Body,{className:`py-1`,children:xn.map(({bucket:e,icon:l,title:u,description:d})=>{let f=e===`dm`?n?.channels??t:t;return(0,$.jsx)(H,{className:`[&+&]:border-t [&+&]:border-[var(--border-base)]`,leading:(0,$.jsx)(l,{className:`h-4 w-4 text-[var(--content-tertiary)]`}),title:u,subtitle:d,trailing:(0,$.jsx)(`div`,{className:`w-40 sm:w-48`,children:(0,$.jsx)(sn,{tier:n?.[e],defaultTier:f,disabled:r||i||a.has(e),onTierChange:t=>o(e,t),onReset:()=>s(e),"aria-label":c(`slackChannelTypeDefaults.bucketAria`,{bucket:u})})})},e)})}),(0,$.jsx)(I.Footer,{className:`p-0`,children:(0,$.jsx)(bn,{defaultTier:t})})]})}var Cn=`0.11.0`;function wn(){return P(Cn)}var Tn=new Set([404,501]);function En(e){let t=Fe(e);return t!==void 0&&Tn.has(t)}function Dn(e,t,n){return en.map(r=>({selector:{scope:`channel`,adapter:e,channelExternalId:t},contactType:r,threshold:n}))}function On(e,t,n){return e.selector.scope===`channel`&&e.selector.adapter===t&&e.selector.channelExternalId===n}function kn(e,t){return t===`channels`?{scope:`adapter`,adapter:e}:{scope:`channel_type`,adapter:e,channelType:`dm`}}function An(e,t,n){let r=kn(e,t);return en.map(e=>({selector:r,contactType:e,threshold:n}))}function jn({assistantId:e,adapter:t}){let n=He(),r=wn()&&!!e,i=(0,Q.useMemo)(()=>({path:{assistant_id:e}}),[e]),a=(0,Q.useMemo)(()=>_(i),[i]),o=(0,Q.useMemo)(()=>[`channel-permission-resolve`,e,t],[e,t]),s=X({...ae(i),enabled:r}),c=s.data?.cells,l=(0,Q.useMemo)(()=>c?tn(c,t):void 0,[c,t]),u=(0,Q.useMemo)(()=>c?{channels:rn(c,t,`channels`),dm:rn(c,t,`dm`)}:void 0,[c,t]),d=X({queryKey:o,queryFn:async()=>{let{data:e}=await N({...i,body:{adapter:t,contactType:`trusted_contact`},throwOnError:!0});return e.resolved?.threshold??null},enabled:r,retry:!1,staleTime:3e4}),f=(e,t)=>{let r=n.getQueryData(a),i=Date.now();return n.setQueryData(a,n=>({cells:[...(n?.cells??[]).filter(t=>!e(t)),...t.map(e=>({...e,updatedAt:i}))]})),{previous:r}},p=J({mutationFn:async({channelExternalId:e,tier:n})=>{await Promise.all(Dn(t,e,n).map(e=>w({...i,body:e,throwOnError:!0})))},onMutate:({channelExternalId:e,tier:n})=>f(n=>On(n,t,e),Dn(t,e,n)),onError:(e,t,r)=>{n.setQueryData(a,r?.previous),bt(`Failed to save channel settings`)(e)},onSettled:()=>n.invalidateQueries({queryKey:a})}),m=J({mutationFn:async({channelExternalId:e})=>{await Promise.all(en.map(n=>x({...i,body:{selector:{scope:`channel`,adapter:t,channelExternalId:e},contactType:n},throwOnError:!0})))},onMutate:({channelExternalId:e})=>f(n=>On(n,t,e),[]),onError:(e,t,r)=>{n.setQueryData(a,r?.previous),bt(`Failed to reset channel settings`)(e)},onSettled:()=>n.invalidateQueries({queryKey:a})}),h=J({mutationFn:async({bucket:e,tier:n})=>{await Promise.all(An(t,e,n).map(e=>w({...i,body:e,throwOnError:!0})))},onMutate:({bucket:e,tier:n})=>f(n=>nn(n,t,e),An(t,e,n)),onError:(e,t,r)=>{n.setQueryData(a,r?.previous),bt(`Failed to save the default`)(e)},onSettled:(e,t,{bucket:r})=>{n.invalidateQueries({queryKey:a}),r===`channels`&&n.invalidateQueries({queryKey:o})}}),g=J({mutationFn:async({bucket:e})=>{let n=kn(t,e);await Promise.all(en.map(e=>x({...i,body:{selector:n,contactType:e},throwOnError:!0})))},onMutate:({bucket:e})=>f(n=>nn(n,t,e),[]),onError:(e,t,r)=>{n.setQueryData(a,r?.previous),bt(`Failed to reset the default`)(e)},onSettled:(e,t,{bucket:r})=>{n.invalidateQueries({queryKey:a}),r===`channels`&&n.invalidateQueries({queryKey:o})}}),v=(0,Q.useMemo)(()=>{let e=new Set;return p.isPending&&p.variables&&e.add(p.variables.channelExternalId),m.isPending&&m.variables&&e.add(m.variables.channelExternalId),e},[p.isPending,p.variables,m.isPending,m.variables]),y=(0,Q.useMemo)(()=>{let e=new Set;return h.isPending&&h.variables&&e.add(h.variables.bucket),g.isPending&&g.variables&&e.add(g.variables.bucket),e},[h.isPending,h.variables,g.isPending,g.variables]);return!r||s.isError&&En(s.error)?{supported:!1,tierOverrides:void 0,defaultCellTier:void 0,bucketTiers:void 0,pendingChannelIds:new Set,pendingBuckets:new Set,isLoading:!1,isError:!1,onTierChange:void 0,onTierReset:void 0,onBucketChange:void 0,onBucketReset:void 0}:{supported:!0,tierOverrides:l,defaultCellTier:d.data,bucketTiers:u,pendingChannelIds:v,pendingBuckets:y,isLoading:s.isPending,isError:s.isError,onTierChange:(e,t)=>p.mutate({channelExternalId:e,tier:t}),onTierReset:e=>{l?.[e]!==void 0&&m.mutate({channelExternalId:e})},onBucketChange:(e,t)=>h.mutate({bucket:e,tier:t}),onBucketReset:e=>{u?.[e]!==void 0&&g.mutate({bucket:e})}}}function Mn({assistantId:e,assistantDisplayName:t,slackHandle:n}){let{t:r}=Z(`channels`),i=X({...c(e),enabled:!!e,select:e=>e.channels}),a=jn({assistantId:e,adapter:`slack`}),o=X({queryKey:[`thresholds`,e],queryFn:()=>y(e),enabled:a.supported&&!!e,staleTime:3e4}).data?.interactive??null,s=a.defaultCellTier===void 0?null:a.defaultCellTier??o,u=(0,$.jsx)(_n,{assistantDisplayName:t,slackHandle:n,accessControlsSupported:a.supported,defaultTier:s,channels:i.data,loading:i.isPending,error:i.isError,tierOverrides:a.tierOverrides,tierOverridesLoading:a.isLoading,tierOverridesError:a.isError,pendingChannelIds:a.pendingChannelIds,onTierChange:a.onTierChange,onTierReset:a.onTierReset});return!a.supported||!a.onBucketChange||!a.onBucketReset?(0,$.jsx)(I.Root,{noPadding:!0,clipContents:!0,children:u}):(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[a.isError?(0,$.jsx)(Pe,{tone:`error`,children:r(`slackChannelSection.overridesLoadFailed`)}):null,(0,$.jsx)(Sn,{assistantName:t,globalDefaultTier:o,bucketTiers:a.bucketTiers,loading:a.isLoading,error:a.isError,pendingBuckets:a.pendingBuckets,onBucketChange:a.onBucketChange,onBucketReset:a.onBucketReset}),(0,$.jsx)(I.Root,{noPadding:!0,clipContents:!0,children:(0,$.jsx)(we.Root,{type:`single`,collapsible:!0,children:(0,$.jsxs)(we.Item,{value:`per-channel-overrides`,children:[(0,$.jsxs)(we.Trigger,{className:`group justify-between gap-2 px-4 py-3`,children:[(0,$.jsx)(l,{as:`span`,variant:`body-small-emphasised`,children:r(`slackChannelSection.perChannelOverrides`)}),(0,$.jsx)(st,{"aria-hidden":`true`,className:`h-4 w-4 shrink-0 text-[var(--content-tertiary)] transition-transform group-data-[state=open]:rotate-180`})]}),(0,$.jsx)(we.Content,{className:`border-[var(--border-base)] data-[state=open]:border-t`,children:u})]})})})]})}function Nn({slackHandle:e,health:t,disconnectPending:n=!1,onDisconnect:r,children:i}){let{t:a}=Z(`channels`);return(0,$.jsxs)(I.Root,{children:[(0,$.jsx)(I.Header,{children:(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(`img`,{src:Oe(`/images/integrations/slack.svg`),alt:``,className:`size-8 rounded-lg bg-[var(--surface-sunken)] p-1`}),e?(0,$.jsx)(l,{as:`span`,variant:`body-medium-default`,children:e}):null,(0,$.jsx)(Jt,{health:t}),(0,$.jsx)(`div`,{className:`ml-auto`,children:(0,$.jsx)(E,{type:`button`,variant:`ghost`,onClick:r,disabled:!r||n,children:a(n?`connectionCard.disconnecting`:`connectionCard.disconnect`)})})]})}),(0,$.jsx)(I.Body,{children:i})]})}function Pn({threadMode:e,threadModePending:t=!1,onThreadModeChange:n}){let{t:r}=Z(`channels`);return(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsx)(l,{as:`span`,variant:`body-small-emphasised`,className:`text-[color:var(--content-secondary)]`,children:r(`slackThreadBehavior.heading`)}),(0,$.jsxs)(De,{value:e??`mention_then_thread`,onValueChange:e=>n?.(e),disabled:t||!n,"aria-label":r(`slackThreadBehavior.selectAria`),children:[(0,$.jsx)(xe,{value:`mention_only`,label:r(`slackThreadBehavior.mentionsOnly`),helperText:r(`slackThreadBehavior.mentionsOnlyHelp`)}),(0,$.jsx)(xe,{value:`mention_then_thread`,label:r(`slackThreadBehavior.followThreads`),helperText:r(`slackThreadBehavior.followThreadsHelp`)})]})]})}function Fn({onSave:e}){let{t}=Z(`channels`),[n,r]=(0,Q.useState)(``),[i,a]=(0,Q.useState)(``),[o,s]=(0,Q.useState)(!1),[c,l]=(0,Q.useState)(null),u=n.trim().length>0&&i.trim().length>0&&!o;return(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsx)(Ce,{label:t(`twilioCredentialEntry.accountSid`),type:`text`,value:n,onChange:e=>r(e.target.value),placeholder:`ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,disabled:o,fullWidth:!0}),(0,$.jsx)(Ce,{label:t(`twilioCredentialEntry.authToken`),type:`password`,value:i,onChange:e=>a(e.target.value),placeholder:t(`twilioCredentialEntry.authTokenPlaceholder`),disabled:o,fullWidth:!0}),c?(0,$.jsx)(`p`,{className:`text-label-small-default`,style:{color:`var(--content-negative)`},children:c}):null,(0,$.jsx)(`div`,{children:(0,$.jsx)(E,{type:`button`,onClick:async()=>{if(!(!e||!u)){s(!0),l(null);try{await e(n.trim(),i.trim()),r(``),a(``)}catch(e){l(e instanceof Error?e.message:`Failed to save`)}finally{s(!1)}}},disabled:!u,children:t(o?`twilioCredentialEntry.saving`:`twilioCredentialEntry.save`)})})]})}function In({channel:e,assistantId:t,assistantName:n,assistantDisplayName:r,pending:i,initialManualEntry:a=!1,onSetup:s,onDisconnect:c,onSaveTelegramToken:l,telegramSaveStatus:u,telegramSaveError:d,onSaveDiscordToken:f,discordSaveStatus:p,discordSaveError:m=null,discordInviteUrl:g,onSaveSlackConfig:_,slackSaveStatus:y,slackSaveError:b,slackThreadMode:x,slackThreadModePending:S=!1,onSlackThreadModeChange:C,onSaveTwilioCredentials:w,policy:T,policySaving:ee=!1,policyLoading:D=!1,policyError:O=!1,onPolicyChange:k}){let{t:A}=Z(`channels`),j=e.status===`incomplete`,[te,M]=(0,Q.useState)(a),ne=e.key===`discord`&&te&&p===`success`,N=e.configured&&!ne;if(e.key===`email`)return(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,$.jsx)(qt,{}),N&&k?(0,$.jsx)(mt,{children:(0,$.jsx)(It,{assistantDisplayName:r,policy:T,saving:ee,loading:D,error:O,onChange:k})}):null]});if(e.key===`slack`)return(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[N?(0,$.jsx)(Nn,{slackHandle:e.address,health:e.health,disconnectPending:i,onDisconnect:c,children:(0,$.jsx)(Pn,{threadMode:x,threadModePending:S,onThreadModeChange:C})}):(0,$.jsx)(Xt,{children:(0,$.jsx)(h,{assistantId:t,assistantName:n,onSave:_,saveStatus:y,saveError:b})}),N?(0,$.jsx)(Mn,{assistantId:t,assistantDisplayName:r,slackHandle:e.address}):null]});let P=o[e.key];return(0,$.jsx)(`div`,{className:`flex flex-col gap-4`,children:N?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Yt,{health:e.health,address:e.address,pending:i,onDisconnect:c}),P.hasTrustFloorControl&&k?(0,$.jsx)(It,{assistantDisplayName:r,policy:T,saving:ee,loading:D,error:O,onChange:k}):null]}):te&&e.canManualEntry&&P.credentialForm?(e=>{switch(e){case`slack-wizard`:return null;case`telegram-token`:return(0,$.jsx)(je,{assistantId:t,assistantName:n,saveStatus:u,saveError:d,onSave:l});case`discord-token`:return(0,$.jsx)(z,{assistantId:t,assistantName:n,saveStatus:p,saveError:m,onSave:f,...g?{inviteUrl:g}:{}});case`twilio-credentials`:return(0,$.jsx)(Fn,{onSave:w});default:return e}})(P.credentialForm):(0,$.jsx)(Pt,{icon:(0,$.jsx)(v,{channelId:e.key,className:`h-6 w-6`}),title:A(j?`channelPanel.incompleteTitle`:`channelPanel.disconnectedTitle`,{channel:F(e.key)}),description:j?e.warning??A(`channelPanel.incompleteDescription`,{channel:F(e.key)}):P.disconnectedPitchKey?A(P.disconnectedPitchKey,{assistant:r}):void 0,action:(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-1`,children:[(0,$.jsx)(E,{type:`button`,variant:`outlined`,onClick:s,disabled:!s||i,children:A(i?`channelPanel.opening`:j?`channelPanel.finishSetup`:`channelPanel.setUp`)}),e.canManualEntry&&P.credentialForm?(0,$.jsx)(E,{type:`button`,variant:`link`,onClick:()=>M(!0),children:A(`channelPanel.connectManually`)}):null]})})})}var Ln=new Set([404,501]),Rn=new Set([401,403]);function zn(e){let t=Fe(e);return t!==void 0&&Ln.has(t)?`unsupported`:t!==void 0&&Rn.has(t)?`forbidden`:`unreadable`}function Bn(e,t,n){let r=e===`unreadable`?t:n;return r?r instanceof Error&&r.message?r.message:`Something went wrong`:null}function Vn(e,t){let n=He(),r={assistant_id:e},i=X({...R({path:r}),enabled:!!e,retry:L}),a=()=>n.invalidateQueries({queryKey:d({path:r})}),o=J({...Le(),onSuccess:a}),s=J({...Ne(),onSuccess:a}),c=i.data?.sources?.find(e=>e.source===t),l;l=i.isError?zn(i.error):i.isPending?`loading`:c?c.state:`none`;let u=Bn(l,i.error,o.error??s.error);return{status:l,paths:c?.routes?.map(e=>({path:e.publicPath,approvalGoverned:e.signer!==`vellum`,deliversInbound:e.deliversInbound===!0}))??[],deciding:o.isPending||s.isPending,approve:()=>{c?.digest&&o.mutate({path:{...r,source:t},body:{digest:c.digest}})},revoke:()=>s.mutate({path:{...r,source:t}}),error:u}}var Hn=`plugin`;function Un(e){let t=He(),n=yt(),r=(0,Q.useMemo)(()=>({path:{assistant_id:e}}),[e]),i=(0,Q.useMemo)(()=>fe(r),[r]),a=X({...Be(r),enabled:n&&!!e,select:Tt}),o=J({mutationFn:t=>Ct(e,Hn,t),onSuccess:()=>t.invalidateQueries({queryKey:i}),onError:bt(`Failed to save channel policy`)}),s=(0,Q.useCallback)(e=>{o.mutate(e)},[o]);return n?{policy:a.data?.find(e=>e.channelType===Hn)?.policy,isLoading:a.isPending,isError:a.isError,isSaving:o.isPending,onChange:s}:{policy:void 0,isLoading:!1,isError:!1,isSaving:!1,onChange:void 0}}function Wn({channel:e,assistantId:t,assistantDisplayName:n}){let{t:r}=Z(`channels`),i=Ge(),a=Vn(t,e.plugin),o=Un(t);return(0,$.jsxs)(`div`,{className:`relative flex flex-col items-center gap-3 py-10 text-center`,children:[(0,$.jsx)(E,{className:`absolute top-0 right-0`,variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)($e,{}),tooltip:r(`pluginChannelPanel.navigateToPluginPage`),"aria-label":r(`pluginChannelPanel.navigateToPluginPage`),onClick:()=>i(`/assistant/plugins/${e.plugin}`)}),(0,$.jsx)(S,{icon:e.icon,className:`h-8 w-8 text-[color:var(--content-secondary)]`}),(0,$.jsx)(`h3`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:e.label}),e.description?(0,$.jsx)(`p`,{className:`max-w-[420px] text-body-medium-default`,style:{color:`var(--content-secondary)`},children:e.description}):null,(0,$.jsx)(Gn,{channel:e,ingress:a}),o.onChange?(0,$.jsx)(`div`,{className:`w-full max-w-[420px] text-left`,children:(0,$.jsx)(It,{assistantDisplayName:n,policy:o.policy,saving:o.isSaving,loading:o.isLoading,error:o.isError,onChange:o.onChange})}):null]})}function Gn({channel:e,ingress:t}){let{t:n}=Z(`channels`);switch(t.status){case`loading`:return(0,$.jsx)(qn,{children:n(`pluginChannelPanel.ingressLoading`,{channel:e.label})});case`unsupported`:return(0,$.jsx)(qn,{children:n(`pluginChannelPanel.ingressUnsupported`)});case`forbidden`:return(0,$.jsx)(qn,{children:n(`pluginChannelPanel.ingressForbidden`)});case`unreadable`:return(0,$.jsxs)(qn,{children:[n(`pluginChannelPanel.ingressUnreadable`,{channel:e.label}),t.error?` ${t.error}`:``]});case`none`:return(0,$.jsx)(qn,{children:n(`pluginChannelPanel.ingressNone`,{channel:e.label})});case`pending`:case`approved`:return(0,$.jsx)(Kn,{ingress:t})}}function Kn({ingress:e}){let{t}=Z(`channels`),n=e.status===`approved`;return(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,$.jsx)(W,{tone:n?`positive`:`neutral`,children:t(n?`pluginChannelPanel.ingressApprovedTag`:`pluginChannelPanel.ingressPendingTag`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,$.jsx)(E,{onClick:n?e.revoke:e.approve,disabled:e.deciding,variant:n?`outlined`:`primary`,children:t(n?`pluginChannelPanel.revokeChannel`:`pluginChannelPanel.approveChannel`)}),(0,$.jsx)(j,{content:t(`pluginChannelPanel.approveChannelInfo`),children:(0,$.jsx)(`span`,{tabIndex:0,className:`inline-flex cursor-default p-0.5 text-[color:var(--content-secondary)]`,"aria-label":t(`pluginChannelPanel.approveChannelInfo`),children:(0,$.jsx)(at,{className:`h-4 w-4`,"aria-hidden":`true`})})})]}),e.error?(0,$.jsx)(`p`,{className:`max-w-[420px] text-body-small-default`,style:{color:`var(--system-negative-strong)`},children:e.error}):null]})}function qn({children:e}){return(0,$.jsx)(`p`,{className:`max-w-[420px] text-body-small-default`,style:{color:`var(--content-secondary)`},children:e})}function Jn({assistantId:e,assistantName:t,channels:n,pluginChannels:r=[],pendingChannelKey:i=null,slackThreadMode:a,slackThreadModePending:s=!1,channelPolicies:c,policySavingKey:l=null,policiesLoading:u=!1,policiesError:d=!1,onChannelPolicyChange:f,onSetup:p,onDisconnect:m,onSaveTelegramToken:h,telegramSaveStatus:g,onSaveDiscordToken:_,discordSaveStatus:v,discordSaveError:y=null,discordInviteUrl:b,telegramSaveError:x,onSaveSlackConfig:S,slackSaveStatus:C,slackSaveError:w,onSlackThreadModeChange:T,onSaveTwilioCredentials:E,initialChannel:ee=null}){let{t:D}=Z(`channels`),{selected:O,select:k}=At(),[A,j]=(0,Q.useState)(null),{paneRef:te,hasRoomForList:M,drawerOpen:ne,openDrawer:N,closeDrawer:P}=vt(),[F]=(0,Q.useState)(ee);(0,Q.useEffect)(()=>{F&&k(F)},[F,k]);let I=U(t),L=A?o[A]:null,re=e=>{k(e),P()},R=r.find(e=>e.key===O),z=R?void 0:n.find(e=>e.key===O)??n[0];if(!z&&!R)return null;let ie=R?R.key:z.key,ae=R?(0,$.jsx)(Wn,{channel:R,assistantId:e,assistantDisplayName:I},R.key):(0,$.jsx)(In,{channel:z,assistantId:e,assistantName:t,assistantDisplayName:I,pending:i===z.key,initialManualEntry:F===z.key,onSetup:p?()=>p(z.key,z.status===`incomplete`):void 0,onDisconnect:m&&z.canDisconnect?()=>j(z.key):void 0,onSaveTelegramToken:h,telegramSaveStatus:g,onSaveDiscordToken:_,discordSaveStatus:v,discordSaveError:y,...b?{discordInviteUrl:b}:{},telegramSaveError:x,onSaveSlackConfig:S,slackSaveStatus:C,slackSaveError:w,slackThreadMode:a,slackThreadModePending:s,onSlackThreadModeChange:T,onSaveTwilioCredentials:E,policy:c?.[z.key],policySaving:l===z.key,policyLoading:u,policyError:d,onPolicyChange:f?e=>f(z.key,e):void 0},z.key);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{ref:te,className:`flex min-h-0 flex-1 overflow-hidden ${M?`flex-row gap-6`:`flex-col gap-4`}`,children:[M?(0,$.jsx)(`aside`,{className:`min-h-0 w-[320px] shrink-0 overflow-y-auto self-stretch`,children:(0,$.jsx)(jt,{channels:n,pluginChannels:r,selectedKey:ie,onSelect:re})}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`flex items-center`,children:(0,$.jsx)(_t,{onClick:N})}),(0,$.jsx)(gt,{open:ne,onClose:P,title:D(`assistantChannelsList.drawerTitle`),children:(0,$.jsx)(jt,{channels:n,pluginChannels:r,selectedKey:ie,onSelect:re})})]}),(0,$.jsx)(`section`,{className:`min-h-0 min-w-0 flex-1 overflow-y-auto`,children:ie===`slack`||ie===`email`?ae:(0,$.jsx)(mt,{children:ae})})]}),(0,$.jsx)(Te,{open:A!==null,title:D(`assistantChannelsList.disconnectTitle`,{channel:L?D(L.labelKey):``}),message:L?.disconnectMessageKey?D(L.disconnectMessageKey):``,confirmLabel:D(`assistantChannelsList.disconnectConfirm`),destructive:!0,onConfirm:()=>{A&&m&&m(A),j(null)},onCancel:()=>j(null)})]})}var Yn=`plugin:`;function Xn(e){let{data:t}=X({...ce({path:{assistant_id:e}}),enabled:!!e,select:e=>e.channels.filter(e=>e.source?.startsWith(Yn)).map(e=>({plugin:e.id,key:ye(e.id),label:e.label,description:e.subtitle,icon:e.icon}))});return t??[]}function Zn(){let[e,t]=Ue(),n=e.get(`setup`),r=n&&k(n)?n:null;return(0,Q.useEffect)(()=>{r&&t(e=>(e.delete(`setup`),e),{replace:!0})},[r,t]),r}function Qn({assistantId:e,onStartSetupConversation:t}){let n=te.use.a2aChannel(),r=se.use.name(),i=Zn(),a=Et(e),o=U(r),s=St({assistantId:e,onStartSetupConversation:t});return(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-6 overflow-hidden`,children:[(0,$.jsx)(Jn,{assistantId:e,assistantName:o,initialChannel:i,pluginChannels:Xn(e),...s}),n?(0,$.jsx)(wt,{onClick:a.open}):null,(0,$.jsx)(xt,{open:a.isOpen,assistantId:e,onClose:a.close})]})}function $n(){let e=Ge(),t=pe();return(0,$.jsx)(Qn,{assistantId:t,onStartSetupConversation:t=>{B(e,{prompt:t})}},t)}export{$n as ChannelsPageRoute};
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$d as t,$m as n,A_ as r,Ai as i,Al as a,Am as o,B as s,C as c,CS as l,Cl as u,Cs as d,Cx as f,DS as p,Dl as m,E as h,El as g,Es as _,Fi as v,H as y,IS as b,Id as x,Ii as S,Jx as C,Ld as w,Mo as T,NS as E,No as ee,Oi as D,Ol as O,Om as k,Ox as A,PS as j,Pd as te,Px as M,Qd as ne,Rd as N,Rh as P,Ri as F,SS as I,Sd as L,Sl as re,Ss as R,T as z,Tl as ie,Ts as ae,Uc as B,V,Wo as oe,Wx as H,Xb as se,Xd as ce,Xp as le,_l as ue,bl as de,bs as fe,ds as U,et as pe,fx as me,gS as W,gl as he,gn as ge,iS as G,ji as _e,jl as ve,jx as K,km as ye,ku as be,lS as xe,m_ as Se,pS as Ce,qx as we,rS as Te,sS as Ee,tS as q,uS as De,ui as Oe,vl as ke,vu as Ae,w as je,wl as Me,ws as Ne,xS as Pe,xd as Fe,xl as Ie,xs as Le,xx as Re,yl as ze,ys as Be,zi as Ve}from"./app-BBUxTj9g.js";import{Jn as J,N as Y,Zn as X,er as He,j as Z}from"./vendor-ajttH1pP.js";import{_ as Ue,d as We,f as Ge,h as Ke,n as qe,t as Je,x as Ye}from"./react-B9IgSVeK.js";import{A as Xe,Dn as Ze,Ji as Qe,Rt as $e,Ui as et,Vn as tt,Yn as nt,Zr as rt,br as it,fr as at,on as ot,qi as st,qn as ct,vt as lt,wi as ut,zi as dt}from"./icons-C0wyat6T.js";import{n as ft,t as pt}from"./assistant-inbox-upgrade-body-DqRg_E8P.js";import{t as mt}from"./detail-card-BhMBZjzu.js";import{t as ht}from"./assistant-handle-modal-BAfB5jfI.js";import{n as gt,r as _t,t as vt}from"./use-side-list-room-BEt4nE6h.js";import{a as yt,c as bt,i as xt,n as St,o as Ct,r as wt,s as Tt,t as Et,u as Dt}from"./use-invite-link-dialog-DNFvVMTr.js";import{i as Ot,r as kt}from"./service-form-controls-BYas0Fj1.js";var Q=e(Ye(),1);function At(){let{channelId:e}=Ke(),t=Ge(),{search:n}=We();return{selected:e,select:(0,Q.useCallback)(e=>{t({pathname:`/assistant/channels/${encodeURIComponent(e)}`,search:n},{replace:!0})},[t,n])}}var $=Je();function jt({channels:e,pluginChannels:t=[],selectedKey:n,onSelect:r}){return(0,$.jsx)(I.Root,{className:`flex h-full flex-col overflow-hidden`,children:(0,$.jsx)(I.Body,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-4`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[e.map(e=>(0,$.jsx)(Mt,{channel:e,selected:e.key===n,onClick:()=>r(e.key)},e.key)),t.map(e=>(0,$.jsx)(Nt,{channel:e,selected:e.key===n,onClick:()=>r(e.key)},e.key))]})})})}function Mt({channel:e,selected:t,onClick:n}){let r=e.status===`ready`,i=F(e.key),a=r?`Connected`:`Not connected`;return(0,$.jsx)(p,{asChild:!0,active:t,"aria-label":`${i}, ${a}`,children:(0,$.jsxs)(`button`,{type:`button`,onClick:n,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:[(0,$.jsx)(v,{channelId:e.key,className:`h-4 w-4 shrink-0 text-[color:var(--content-secondary)]`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default`,children:i}),(0,$.jsx)(`span`,{className:`flex shrink-0 items-center`,children:(0,$.jsx)(W,{tone:r?`positive`:`neutral`,children:a})})]})})}function Nt({channel:e,selected:t,onClick:n}){let{t:r}=Z(`channels`);return(0,$.jsx)(p,{asChild:!0,active:t,"aria-label":r(`channelAdapterList.pluginChannelAria`,{channel:e.label}),children:(0,$.jsxs)(`button`,{type:`button`,onClick:n,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:[(0,$.jsx)(S,{icon:e.icon,className:`h-4 w-4 shrink-0 text-[color:var(--content-secondary)]`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default`,children:e.label}),(0,$.jsx)($e,{"aria-hidden":!0,className:`h-4 w-4 shrink-0 text-[color:var(--content-secondary)]`})]})})}function Pt({icon:e,title:t,description:n,action:r,className:i}){return(0,$.jsxs)(`div`,{className:b(`flex flex-col items-center justify-center gap-3 px-4 py-12 text-center`,i),children:[e?(0,$.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-xl bg-[var(--surface-sunken)] text-[var(--content-tertiary)]`,children:e}):null,(0,$.jsx)(`h3`,{className:`text-title-small text-[var(--content-default)]`,children:t}),n?(0,$.jsx)(`p`,{className:`max-w-md text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:n}):null,r?(0,$.jsx)(`div`,{className:`mt-1`,children:r}):null]})}var Ft={no_one:{labelKey:`channelTrustFloor.noOne.label`,descriptionKey:`channelTrustFloor.noOne.description`,confirm:{titleKey:`channelTrustFloor.noOne.confirmTitle`,messageKey:`channelTrustFloor.noOne.confirmMessage`,actionKey:`channelTrustFloor.noOne.confirmAction`,destructive:!0}},guardian_only:{labelKey:`channelTrustFloor.guardianOnly.label`,descriptionKey:`channelTrustFloor.guardianOnly.description`,confirm:void 0},trusted_contacts:{labelKey:`channelTrustFloor.trustedContacts.label`,descriptionKey:`channelTrustFloor.trustedContacts.description`,confirm:void 0},any_contact:{labelKey:`channelTrustFloor.anyContact.label`,descriptionKey:`channelTrustFloor.anyContact.description`,confirm:{titleKey:`channelTrustFloor.anyContact.confirmTitle`,messageKey:`channelTrustFloor.anyContact.confirmMessage`,actionKey:`channelTrustFloor.anyContact.confirmAction`,destructive:!1}},strangers:{labelKey:`channelTrustFloor.strangers.label`,descriptionKey:`channelTrustFloor.strangers.description`,confirm:{titleKey:`channelTrustFloor.strangers.confirmTitle`,messageKey:`channelTrustFloor.strangers.confirmMessage`,actionKey:`channelTrustFloor.strangers.confirmAction`,destructive:!0}}};function It({assistantDisplayName:e,policy:t,saving:n=!1,loading:r=!1,error:i=!1,onChange:a}){let{t:o}=Z(`channels`),s=t??`trusted_contacts`,c=Dt.map(t=>({value:t,label:o(Ft[t].labelKey),tooltip:o(Ft[t].descriptionKey,{assistant:e})})),[u,d]=(0,Q.useState)(null),f=u?Ft[u].confirm:void 0;return(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(l,{as:`span`,variant:`body-small-emphasised`,className:`text-[color:var(--content-secondary)]`,children:o(`channelTrustFloor.heading`,{assistant:e})}),r?(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:o(`channelTrustFloor.loading`)}):i?(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-negative)]`,children:o(`channelTrustFloor.loadFailed`)}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{style:{maxWidth:280},children:(0,$.jsx)(q,{value:s,onChange:e=>{if(Ft[e].confirm){d(e);return}a(e)},options:c,disabled:n,"aria-label":o(`channelTrustFloor.selectAria`,{assistant:e})})}),(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:o(Ft[s].descriptionKey,{assistant:e})}),s===`trusted_contacts`?(0,$.jsx)(Pe,{tone:`info`,className:`max-w-lg`,children:o(`channelTrustFloor.trustedContactsNotice`,{assistant:e})}):null]}),(0,$.jsx)(Te,{open:u!==null,title:f?o(f.titleKey):``,message:f?o(f.messageKey):``,confirmLabel:o(f?f.actionKey:`channelTrustFloor.confirmFallback`),destructive:f?.destructive??!1,onConfirm:()=>{u&&a(u),d(null)},onCancel:()=>d(null)})]})}function Lt({mode:e,onChange:t}){let{t:n}=Z(`common`);return(0,$.jsx)(`div`,{className:`max-w-[280px]`,children:(0,$.jsx)(Ee,{ariaLabel:n(`serviceCard.modeToggleAriaLabel`),value:e,onChange:t,items:[{value:`managed`,label:n(`serviceCard.managedLabel`)},{value:`your-own`,label:n(`serviceCard.yourOwnLabel`)}]})})}function Rt({id:e,title:t,subtitle:n,mode:r,onModeChange:i,children:a}){return(0,$.jsxs)(mt,{id:e,title:t,subtitle:n,accessory:(0,$.jsx)(Lt,{mode:r,onChange:i}),children:[(0,$.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,$.jsx)(`div`,{className:`mt-4`,children:a})]})}function zt(e,t){return e===`managed`||e===`your-own`?e:t}function Bt({align:e=`center`}){let{t}=Z(`assistant-inbox`),{hidden:n,restore:r}=D();return n?(0,$.jsxs)(`div`,{className:b(`flex flex-wrap items-center gap-x-2 gap-y-1 text-body-small-lighter text-[var(--content-tertiary)]`,e===`center`?`justify-center`:`justify-start`),children:[(0,$.jsx)(`span`,{children:t(`inboxRailRestore.hiddenNote`)}),(0,$.jsx)(E,{variant:`ghost`,size:`compact`,leftIcon:(0,$.jsx)(ot,{}),onClick:()=>{r(),G.success(t(`inboxRailRestore.restoredToast`))},children:t(`inboxRailRestore.restoreButton`)})]}):null}function Vt({subdomain:e,onSubdomainChange:t,domainSuffix:n,subdomainPlaceholder:r=`my-assistant`,disabled:i,autoFocus:a,prefix:o,error:s,locked:c,lockedMessage:l}){let{t:u}=Z(`settings`);return(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`flex h-9 w-full items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${s?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[o,(0,$.jsx)(`input`,{value:e,onChange:e=>t(e.target.value.toLowerCase().trim()),disabled:i||c,readOnly:c,autoFocus:a,placeholder:r,"aria-label":u(`domainField.subdomainAriaLabel`),"aria-invalid":!!s,className:`h-full min-w-0 flex-1 bg-transparent ${o?`pl-1.5`:`pl-3`} pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none disabled:cursor-not-allowed disabled:opacity-60`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`.`,n]})]}),s&&(0,$.jsx)(`p`,{className:`mt-1.5 text-body-small-default text-[var(--system-negative-strong)]`,children:s}),c&&l&&(0,$.jsx)(`p`,{className:`mt-1.5 text-body-small-default text-[var(--content-tertiary)]`,children:l})]})}function Ht({status:e,isLoading:t}){let{t:n}=Z(`common`);return t?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,children:[(0,$.jsx)(nt,{className:`h-3 w-3 animate-spin`}),n(`domainVerificationChip.checkingDomain`)]}):!e||e===`unknown`?(0,$.jsx)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,title:n(`domainVerificationChip.unknownStatusTitle`),children:n(`domainVerificationChip.unknownStatus`)}):e===`verified`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-positive-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,title:n(`domainVerificationChip.verifiedTitle`),children:[(0,$.jsx)(Qe,{className:`h-3 w-3`}),n(`domainVerificationChip.domainVerified`)]}):e===`pending`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-mid-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-mid-strong)]`,title:n(`domainVerificationChip.verifyingTitle`),children:[(0,$.jsx)(ut,{className:`h-3 w-3`}),n(`domainVerificationChip.verifyingDomain`)]}):e===`not_started`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-negative-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,title:n(`domainVerificationChip.setupRequiredTitle`),children:[(0,$.jsx)(et,{className:`h-3 w-3`}),n(`domainVerificationChip.setupRequired`)]}):(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-negative-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,title:n(`domainVerificationChip.failedTitle`),children:[(0,$.jsx)(et,{className:`h-3 w-3`}),n(`domainVerificationChip.verificationFailed`)]})}var Ut=`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`,Wt=1e4;function Gt(e){return e===`verified`||e===`failed`||e===`not_started`?!1:Wt}function Kt({assistantId:e,assistantHandle:n,emailRootDomain:r}){let{t:i}=Z(`channels`),a=He(),o=Ge(),[s,c]=Ue(),[l,d]=(0,Q.useState)(``),[f,p]=(0,Q.useState)(!1),[h,_]=(0,Q.useState)(null),[v,y]=(0,Q.useState)(``),[b,x]=(0,Q.useState)(null),[S,C]=(0,Q.useState)(!1),[w,T]=(0,Q.useState)(!1),[ee,D]=(0,Q.useState)(!1),[k,j]=(0,Q.useState)(!1),[te,M]=(0,Q.useState)(null);(0,Q.useEffect)(()=>{f||!n||l||(d(n),p(!0))},[n,f,l]);let N=X({...Ae(),enabled:!0}),P=N.data,F=P?.entitlements,I=F?.managed_email===!0,L=!!F&&!I,R=!P&&N.isError&&!N.isFetching,z=X({...ke({path:{assistant_id:e}}),enabled:!L}),ae=X({...ie({path:{assistant_id:e}}),enabled:!L}),B=z.data?.results?.[0],V=ae.data?.results?.[0],oe=B?`${B.subdomain}.${r}`:null,H=X({...m({path:{assistant_id:e,id:V?.id??``}}),enabled:!!V?.id,refetchOnWindowFocus:!1}),ce=X({...de({path:{assistant_id:e,id:B?.id??``}}),enabled:!!B?.id,refetchInterval:e=>Gt(e.state.data?.status),refetchOnWindowFocus:!0});(0,Q.useEffect)(()=>{s.get(`release`)!==`1`||!B||V||(T(!0),c(e=>{let t=new URLSearchParams(e);return t.delete(`release`),t},{replace:!0}))},[V,B,s,c]);let le=J(he()),fe=J(ue()),U=be(),W=J(u()),ge=J(Me()),_e=J(t()),K=(0,Q.useCallback)(()=>{let t={assistant_id:e};a.invalidateQueries({queryKey:ze({path:t})}),a.invalidateQueries({queryKey:g({path:t})}),V?.id&&a.invalidateQueries({queryKey:O({path:{...t,id:V.id}})}),a.invalidateQueries({queryKey:ve()})},[V?.id,e,a]),ye=pe(),xe=se.use.name(),Ce=Se.use.assistantInbox(),we=ht(ye),Ee=_e.mutateAsync,q=(0,Q.useCallback)(()=>{Ee({path:{assistant_id:ye},body:{channel:`email`}}).catch(()=>{}).finally(()=>{a.invalidateQueries({queryKey:ne({path:{assistant_id:ye}})})})},[ye,a,Ee]),De=(0,Q.useCallback)(async()=>{let t=l.trim().toLowerCase();if(!t){_(i(`emailManagedContent.enterSubdomainError`));return}C(!1);try{await le.mutateAsync({path:{assistant_id:e},body:{subdomain:t}}),d(``),_(null),K(),G.success(i(`emailManagedContent.domainRegisteredToast`,{domain:`${t}.${r}`}))}catch(e){_(A(e,void 0,i(`emailManagedContent.registerDomainFailedFallback`)))}},[e,r,K,le,l,i]),Oe=(0,Q.useCallback)(async()=>{let t=v.trim().toLowerCase();if(!t){x(i(`emailManagedContent.enterUsernameError`));return}try{await W.mutateAsync({path:{assistant_id:e},body:{username:t}}),y(``),x(null),K(),q(),G.success(i(`emailManagedContent.emailCreatedToast`))}catch(e){x(A(e,void 0,i(`emailManagedContent.createEmailFailedFallback`)))}},[e,K,q,W,v,i]),je=(0,Q.useCallback)(async()=>{if(V?.id){D(!1);try{await ge.mutateAsync({path:{assistant_id:e,id:V.id}}),K(),q(),G.success(i(`emailManagedContent.emailRemovedToast`))}catch(e){Re(e,{context:`email_address_delete`}),G.error(i(`emailManagedContent.emailRemoveFailedToast`))}}},[V?.id,e,ge,K,q,i]),Ne=(0,Q.useCallback)(async()=>{if(!(!B?.id||U.isPending)){M(null);try{let t=await U.mutateAsync({path:{assistant_id:e,id:B.id}});j(!1),re(a,{path:{assistant_id:e,id:B.id}},t),a.invalidateQueries({queryKey:Ie({path:{assistant_id:e,id:B.id}})}),G.success(i(`emailManagedContent.repairStartedToast`))}catch(e){Re(e,{context:`email_domain_provision`});let t=A(e,void 0,i(`emailManagedContent.repairFailedFallback`));M(t),G.error(t)}}},[e,B?.id,U,a,i]),Fe=(0,Q.useCallback)(async()=>{if(!B?.id)return;if(V){G.error(i(`emailManagedContent.removeAddressFirstToast`));return}T(!1);let t=B.subdomain;try{await fe.mutateAsync({path:{assistant_id:e,id:B.id}}),d(t),K(),G.success(i(`emailManagedContent.domainReleasedToast`))}catch(e){Re(e,{context:`email_domain_release`}),G.error(i(`emailManagedContent.domainReleaseFailedToast`))}},[V,e,fe,B?.id,B?.subdomain,K,i]);if(N.isLoading)return(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(nt,{className:`h-4 w-4 animate-spin`}),i(`emailManagedContent.checkingSubscription`)]});if(L&&Ce)return(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(pt,{assistantId:ye,assistantName:xe??``,handle:n??``,rootDomain:r,onEditHandle:we.openModal??void 0,onUpgrade:()=>o(me.plans),onSeePlans:()=>o(me.plans),footnote:(0,$.jsx)(Bt,{align:`start`}),align:`start`}),we.modal]});if(L)return(0,$.jsx)(Pe,{tone:`info`,icon:(0,$.jsx)(tt,{className:`h-4 w-4`,"aria-hidden":!0}),title:i(`emailManagedContent.upgradeNoticeTitle`),actions:(0,$.jsx)(E,{size:`compact`,onClick:()=>o(me.plans),children:i(`emailManagedContent.upgradeButton`)}),children:i(`emailManagedContent.upgradeNoticeBody`)});let Le=R?(0,$.jsx)(Pe,{tone:`warning`,title:i(`emailManagedContent.subscriptionWarningTitle`),actions:(0,$.jsx)(E,{size:`compact`,variant:`outlined`,onClick:()=>N.refetch(),children:i(`emailManagedContent.retry`)}),children:i(`emailManagedContent.subscriptionWarningBody`)}):null;return B?V?(0,$.jsxs)(`div`,{className:`space-y-4`,children:[Le,(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.addressLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:V.address}),(0,$.jsx)(Ht,{status:ce.data?.status,isLoading:ce.isLoading}),(0,$.jsx)(E,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(Xe,{}),onClick:()=>D(!0),disabled:ge.isPending,"aria-label":i(`emailManagedContent.removeEmailAriaLabel`)})]}),(0,$.jsx)(Te,{open:ee,title:i(`emailManagedContent.removeEmailTitle`),message:(0,$.jsx)(Y,{i18nKey:`emailManagedContent.removeEmailConfirmMessage`,ns:`channels`,values:{address:V.address},components:{code:(0,$.jsx)(`code`,{className:Ut})}}),confirmLabel:i(`emailManagedContent.removeConfirm`),destructive:!0,onConfirm:je,onCancel:()=>D(!1)})]}),ce.data?.status===`not_started`&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Pe,{tone:`warning`,title:i(`emailManagedContent.repairNoticeTitle`),actions:(0,$.jsx)(E,{size:`compact`,onClick:()=>{M(null),j(!0)},disabled:U.isPending,children:U.isPending?i(`emailManagedContent.completingSetup`):i(`emailManagedContent.completeSetup`)}),children:i(`emailManagedContent.repairNoticeBody`)}),(0,$.jsx)(Te,{open:k,title:i(`emailManagedContent.repairConfirmTitle`),message:(0,$.jsx)(Y,{i18nKey:`emailManagedContent.repairConfirmMessage`,ns:`channels`,values:{domain:oe},components:{code:(0,$.jsx)(`code`,{className:Ut})}}),confirmLabel:i(`emailManagedContent.completeSetup`),isPending:U.isPending,error:te,onConfirm:()=>{Ne()},onCancel:()=>{U.isPending||j(!1)}})]}),H.data?.usage&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.usageSummary`,{sent:H.data.usage.sent_today,limit:H.data.usage.daily_limit,received:H.data.usage.received_today})})]}):(0,$.jsxs)(`div`,{className:`space-y-4`,children:[Le,(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.domainLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:[B.subdomain,`.`,r]}),(0,$.jsx)(Ht,{status:ce.data?.status,isLoading:ce.isLoading}),(0,$.jsx)(E,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(Xe,{}),onClick:()=>T(!0),disabled:fe.isPending,"aria-label":i(`emailManagedContent.releaseDomainAriaLabel`)})]}),(0,$.jsx)(Te,{open:w,title:i(`emailManagedContent.releaseDomainTitle`),message:(0,$.jsx)(Y,{i18nKey:`emailManagedContent.releaseDomainConfirmMessage`,ns:`channels`,values:{domain:`${B.subdomain}.${r}`},components:{code:(0,$.jsx)(`code`,{className:Ut})}}),confirmLabel:i(`emailManagedContent.releaseConfirm`),destructive:!0,onConfirm:Fe,onCancel:()=>T(!1)})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.emailAddressLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex h-9 min-w-0 flex-1 items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${b?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[(0,$.jsx)(`input`,{value:v,onChange:e=>{y(e.target.value.toLowerCase()),b&&x(null)},placeholder:i(`emailManagedContent.emailUsernamePlaceholder`),"aria-label":i(`emailManagedContent.emailUsernameAriaLabel`),"aria-invalid":!!b,className:`h-full min-w-0 flex-1 bg-transparent pl-3 pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`@`,oe]})]}),(0,$.jsx)(E,{onClick:Oe,disabled:W.isPending||!v.trim(),children:W.isPending?i(`emailManagedContent.creating`):i(`emailManagedContent.create`)})]}),b&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:b})]})]}):(0,$.jsxs)(`div`,{className:`space-y-3`,children:[Le,(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.subdomainLabel`)}),(0,$.jsx)(Vt,{subdomain:l,onSubdomainChange:e=>{d(e),h&&_(null)},domainSuffix:r,subdomainPlaceholder:i(`emailManagedContent.subdomainExamplePlaceholder`),error:h}),(0,$.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:i(`emailManagedContent.subdomainHint`)}),(0,$.jsx)(E,{onClick:()=>C(!0),disabled:le.isPending||!l.trim(),children:le.isPending?i(`emailManagedContent.registering`):i(`emailManagedContent.register`)}),(0,$.jsx)(Te,{open:S,title:i(`emailManagedContent.setSubdomainTitle`),message:(0,$.jsx)(Y,{i18nKey:`emailManagedContent.setSubdomainConfirmMessage`,ns:`channels`,values:{subdomain:l.trim().toLowerCase()||i(`emailManagedContent.subdomainFallback`)},components:{code:(0,$.jsx)(`code`,{className:Ut})}}),confirmLabel:i(`emailManagedContent.confirm`),onConfirm:De,onCancel:()=>C(!1)})]})}function qt(){let{t:e}=Z(`channels`),t=pe(),o=n(),{data:s}=X({...a(),enabled:o}),c=s?.results?.[0]?.handle,l=i.use.emailRootDomain(),u=le(),[d,p]=(0,Q.useState)(()=>u===`gated`?`your-own`:zt(K(ee,`managed`),`managed`)),[m,h]=(0,Q.useState)(()=>{let e=K(T,`resend`);return e===`mailgun`||e===`resend`?e:`resend`}),{platformAssistantId:g,error:_}=_e(t,u===`full`&&d===`managed`),v=g??(_?t:null),y=X({queryKey:[`byoEmailCredential`,t,m],queryFn:async()=>{let{data:e}=await r({path:{assistant_id:t},body:{service:m,field:`api_key`},throwOnError:!0});return e},enabled:d===`your-own`||u===`gated`,staleTime:6e4,retry:f,meta:{errorContext:`byo_email_credential_check`}});(0,Q.useEffect)(()=>{y.error&&Re(y.error,{context:`byo_email_credential_check`,bestEffort:!0})},[y.error]);let b=y.data?.hasSecret===!0,x=Se.use.assistantInbox(),S=ft(se.use.name()??``),{data:C}=X({...Ae(),enabled:x&&o&&u===`full`}),w=x&&u===`full`&&d===`managed`&&v!==null&&!!C?.entitlements&&C.entitlements.managed_email!==!0,E=(0,Q.useCallback)(e=>{p(e),M(ee,e)},[]),D=(0,Q.useCallback)(()=>{M(T,m),G.success(e(`emailChannelSection.saveSuccessToast`))},[m,e]),O=(0,Q.useMemo)(()=>oe.find(e=>e.id===m)??oe[0],[m]),k=(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(at,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`span`,{children:(0,$.jsx)(Y,{i18nKey:`emailChannelSection.setupInstructions`,ns:`channels`,values:{providerName:O.displayName,setupSkill:O.setupSkill},components:{code:(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`})}})}),(0,$.jsxs)(`a`,{href:O.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e(`emailChannelSection.openProvider`,{providerName:O.displayName}),(0,$.jsx)(rt,{className:`h-3 w-3`})]})]})]}),A=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`emailChannelSection.providerLabel`)}),(0,$.jsx)(q,{value:m,onChange:e=>{(e===`mailgun`||e===`resend`)&&h(e)},options:oe.map(e=>({value:e.id,label:e.displayName}))})]}),b?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-[var(--system-positive-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-default)]`,children:[(0,$.jsx)(dt,{className:`h-4 w-4 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsx)(`span`,{children:(0,$.jsx)(Y,{i18nKey:`emailChannelSection.apiKeyConfigured`,ns:`channels`,values:{providerName:O.displayName,setupSkill:O.setupSkill},components:{code:(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`})}})})]}),(0,$.jsxs)(`a`,{href:O.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-body-small-default text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e(`emailChannelSection.openProvider`,{providerName:O.displayName}),(0,$.jsx)(rt,{className:`h-3 w-3`})]})]}):k,(0,$.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,$.jsx)(kt,{onClick:D,disabled:!1})})]});return u===`gated`?(0,$.jsx)(Ot,{id:`email`,title:e(`emailChannelSection.title`),subtitle:e(`emailChannelSection.subtitle`),children:A}):(0,$.jsx)(Rt,{id:`email`,title:w?S.title:e(`emailChannelSection.title`),subtitle:w?S.subtitle:e(`emailChannelSection.subtitle`),mode:d,onModeChange:E,children:d===`managed`?(0,$.jsx)(`div`,{className:`space-y-4`,children:u===`disabled`?(0,$.jsx)(ge,{children:e(`emailChannelSection.platformLoginNotice`)}):v===null?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(nt,{className:`h-4 w-4 animate-spin`}),e(`emailChannelSection.connecting`)]}):(0,$.jsx)(Kt,{assistantId:v,assistantHandle:c,emailRootDomain:l})}):A})}function Jt({health:e}){let{Icon:t,label:n,tone:r}=Ve(e);return(0,$.jsx)(W,{tone:r,leftIcon:(0,$.jsx)(t,{}),children:n})}function Yt({address:e,health:t,pending:n,onDisconnect:r}){let{t:i}=Z(`channels`);return(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(Jt,{health:t}),e?(0,$.jsx)(`span`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e}):null,(0,$.jsx)(`div`,{className:`ml-auto`,children:(0,$.jsx)(E,{type:`button`,variant:`danger`,onClick:r,disabled:!r||n,children:i(n?`connectionCard.disconnecting`:`connectionCard.disconnect`)})})]})}function Xt({children:e}){let{t}=Z(`channels`);return(0,$.jsxs)(I.Root,{children:[(0,$.jsx)(I.Header,{children:(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(`img`,{src:Oe(`/images/integrations/slack.svg`),alt:``,className:`size-8 rounded-lg bg-[var(--surface-sunken)] p-1`}),(0,$.jsx)(l,{as:`span`,variant:`body-medium-default`,children:t(`slackChannelCard.setupHeading`)})]})}),(0,$.jsx)(I.Body,{children:e})]})}s.map(e=>e.riskThreshold);var Zt=[`none`,`low`];function Qt(e){if(e!==void 0)return e===`none`?`none`:`low`}var $t={none:{label:V(`none`).label,sublabel:`asks every time`,tone:`negative`,dotColor:`var(--system-negative-strong)`},low:{label:V(`low`).label,sublabel:`safe lookups`,tone:`warning`,dotColor:`var(--system-mid-strong)`},medium:{label:V(`medium`).label,sublabel:`broader lookups`,tone:`info`,dotColor:`var(--system-info-strong)`},high:{label:V(`high`).label,sublabel:`any lookup`,tone:`positive`,dotColor:`var(--system-positive-strong)`}},en=[`trusted_contact`,`unverified_contact`,`unknown`];function tn(e,t){let n={};for(let r of e){if(r.selector.scope!==`channel`||r.selector.adapter!==t)continue;let e=r.selector.channelExternalId;e&&(r.contactType===`trusted_contact`||!(e in n))&&(n[e]=r.threshold)}return n}function nn(e,t,n){return n===`channels`?e.selector.scope===`adapter`&&e.selector.adapter===t:e.selector.scope===`channel_type`&&e.selector.adapter===t&&e.selector.channelType===`dm`}function rn(e,t,n){let r;for(let i of e)nn(i,t,n)&&(i.contactType===`trusted_contact`||r===void 0)&&(r=i.threshold);return r}var an=`__default__`;function on({color:e}){return(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`h-1.5 w-1.5 shrink-0 rounded-full`,style:{backgroundColor:e}})}function sn({tier:e,defaultTier:t,disabled:n,onTierChange:r,onReset:i,"aria-label":a}){let{t:o}=Z(`channels`),s=Qt(e??t??void 0),c=Qt(t??void 0)??null,l=Zt.map(e=>({value:e,label:$t[e].label,icon:(0,$.jsx)(on,{color:$t[e].dotColor}),suffix:e===c?(0,$.jsx)(`span`,{className:`text-[color:var(--content-tertiary)]`,children:o(`tierPicker.defaultSuffix`)}):void 0,tooltip:$t[e].sublabel}));return l.unshift({value:an,label:`Default`,icon:(0,$.jsx)(on,{color:`transparent`}),tooltip:`follows the default level`}),(0,$.jsx)(q,{value:s??``,onChange:e=>{e===an||e===c?i():r(e)},options:l,placeholder:o(`tierPicker.defaultPlaceholder`),disabled:n,size:`compact`,menuAlign:`end`,"aria-label":a})}function cn(e){return e.type===`dm`?`dm`:e.isPrivate?`private`:`public`}function ln(e){return e.filter(e=>cn(e)!==`dm`)}function un(e,t,n){let r=t.trim().toLowerCase();return e.filter(e=>(n===null||cn(e)===n)&&(r===``||e.name.toLowerCase().includes(r))).sort((e,t)=>e.name.localeCompare(t.name))}function dn(e){let t={public:0,private:0,dm:0};for(let n of e)t[cn(n)]+=1;return t}function fn(e){return e.memberCount==null?null:e.memberCount===1?`1 member`:`${e.memberCount} members`}var pn=[{value:null,labelKey:`slackChannelList.filterAll`},{value:`public`,labelKey:`slackChannelList.filterPublic`},{value:`private`,labelKey:`slackChannelList.filterPrivate`}],mn={public:it,private:ct},hn=100,gn=new Set;function _n({assistantDisplayName:e,slackHandle:t,channels:n,loading:r=!1,error:i=!1,tierOverrides:a,defaultTier:o=null,accessControlsSupported:s=!0,tierOverridesLoading:c=!1,tierOverridesError:u=!1,pendingChannelIds:d=gn,onTierChange:f,onTierReset:p}){let{t:m}=Z(`channels`),[h,g]=(0,Q.useState)(``),[_,v]=(0,Q.useState)(null),y=(0,Q.useMemo)(()=>ln(n??[]),[n]),x=(0,Q.useMemo)(()=>un(y,h,_),[y,h,_]),S=(0,Q.useMemo)(()=>dn(y),[y]);return(0,$.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,$.jsx)(l,{as:`p`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:(0,$.jsx)(Y,{i18nKey:`slackChannelList.presenceHint`,ns:`channels`,values:{handle:t??`@${e}`,assistant:e},components:{invite:(0,$.jsx)(`code`,{className:`text-[color:var(--content-secondary)]`}),remove:(0,$.jsx)(`code`,{className:`text-[color:var(--content-secondary)]`})}})}),r?(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:m(`slackChannelList.loading`)}):i?(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-negative)]`,children:m(`slackChannelList.loadFailed`)}):y.length===0?(0,$.jsx)(Pt,{icon:(0,$.jsx)(it,{className:`h-6 w-6`}),title:m(`slackChannelList.emptyTitle`)}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,$.jsx)(`div`,{className:`min-w-56 flex-1`,children:(0,$.jsx)(Ce,{type:`search`,value:h,onChange:e=>g(e.target.value),placeholder:m(`slackChannelList.searchPlaceholder`),"aria-label":m(`slackChannelList.searchAria`),leftIcon:(0,$.jsx)(lt,{className:`h-4 w-4`}),fullWidth:!0})}),(0,$.jsx)(`div`,{className:`flex items-center gap-2`,role:`group`,"aria-label":m(`slackChannelList.filterGroupAria`),children:pn.map(({value:e,labelKey:t})=>{let n=_===e,r=e===null?y.length:S[e];return(0,$.jsx)(`button`,{type:`button`,"aria-pressed":n,onClick:()=>v(e),className:b(`inline-flex h-6 items-center rounded-full px-2.5 text-body-small-emphasised leading-none transition-colors`,n?`bg-[var(--content-default)] text-[var(--surface-base)]`:`bg-[var(--tag-bg-neutral)] text-[color:var(--content-secondary)] hover:text-[color:var(--content-default)]`),children:m(t,{count:r})},e??`all`)})})]}),x.length===0?(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`py-4 text-center text-[color:var(--content-tertiary)]`,children:m(`slackChannelList.noMatches`)}):x.length>hn?(0,$.jsx)(`div`,{className:`h-96`,children:(0,$.jsx)(C,{items:x,computeItemKey:(e,t)=>t.id,itemContent:(e,t)=>(0,$.jsx)(vn,{channel:t,pending:d.has(t.id),overridesLoading:c,overridesError:u,defaultTier:o,accessControls:s,tierOverride:a?.[t.id],onTierChange:e=>f?.(t.id,e),onReset:()=>p?.(t.id)}),className:`h-full`})}):(0,$.jsx)(`div`,{className:`max-h-96 overflow-y-auto`,children:x.map(e=>(0,$.jsx)(vn,{channel:e,pending:d.has(e.id),overridesLoading:c,overridesError:u,defaultTier:o,accessControls:s,tierOverride:a?.[e.id],onTierChange:t=>f?.(e.id,t),onReset:()=>p?.(e.id)},e.id))})]})]})}function vn({channel:e,pending:t,overridesLoading:n,overridesError:r,defaultTier:i,accessControls:a,tierOverride:o,onTierChange:s,onReset:c}){let{t:l}=Z(`channels`),u=cn(e);if(u===`dm`)return null;let d=mn[u],f=fn(e),p=`[&+&]:border-t [&+&]:border-[var(--border-base)]`;return a?(0,$.jsx)(H,{className:p,leading:(0,$.jsx)(d,{className:`h-4 w-4 text-[var(--content-tertiary)]`}),title:e.name,subtitle:f??void 0,trailing:(0,$.jsx)(`div`,{className:`w-40 sm:w-48`,children:(0,$.jsx)(sn,{tier:o,defaultTier:i,disabled:t||n||r,onTierChange:s,onReset:c,"aria-label":l(`slackChannelList.accessAria`,{channel:e.name})})})}):(0,$.jsx)(H,{className:p,leading:(0,$.jsx)(d,{className:`h-4 w-4 text-[var(--content-tertiary)]`}),title:e.name,trailing:f==null?void 0:(0,$.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:f})})}function yn(e){return e===`none`?`Asks before every action, even a web search.`:`Asks before anything beyond looking things up and saving files in its own workspace.`}function bn({defaultTier:e}){let{t}=Z(`channels`),n=Qt(e??void 0)??null;return(0,$.jsx)(`div`,{className:`flex flex-col gap-2 px-4 py-3`,children:(0,$.jsx)(`ul`,{className:`grid gap-x-6 gap-y-3 sm:grid-cols-2`,children:[...Zt].reverse().map(e=>{let r=$t[e];return(0,$.jsxs)(`li`,{className:`flex flex-col gap-0.5`,children:[(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,$.jsx)(on,{color:r.dotColor}),(0,$.jsx)(l,{as:`span`,variant:`body-small-emphasised`,children:r.label}),e===n?(0,$.jsx)(l,{as:`span`,variant:`body-small-default`,className:`text-[color:var(--content-tertiary)]`,children:t(`slackChannelTierLegend.defaultMarker`)}):null]}),(0,$.jsx)(l,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:yn(e)})]},e)})})})}var xn=[{bucket:`channels`,icon:it,title:`Channels`,description:`Public and private channels`},{bucket:`dm`,icon:Ze,title:`Direct messages`,description:`One-on-one DMs`}];function Sn({assistantName:e,globalDefaultTier:t,bucketTiers:n,loading:r,error:i,pendingBuckets:a,onBucketChange:o,onBucketReset:s}){let{t:c}=Z(`channels`);return(0,$.jsxs)(I.Root,{children:[(0,$.jsx)(I.Header,{children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[c(`slackChannelTypeDefaults.heading`),(0,$.jsx)(l,{as:`p`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:(0,$.jsx)(Y,{i18nKey:`slackChannelTypeDefaults.subtitle`,ns:`channels`,values:{assistant:e},components:{trustRules:(0,$.jsx)(qe,{to:me.settings.privacy,className:`text-[var(--content-link)] underline hover:text-[var(--content-link-hover)]`})}})})]})}),(0,$.jsx)(I.Body,{className:`py-1`,children:xn.map(({bucket:e,icon:l,title:u,description:d})=>{let f=e===`dm`?n?.channels??t:t;return(0,$.jsx)(H,{className:`[&+&]:border-t [&+&]:border-[var(--border-base)]`,leading:(0,$.jsx)(l,{className:`h-4 w-4 text-[var(--content-tertiary)]`}),title:u,subtitle:d,trailing:(0,$.jsx)(`div`,{className:`w-40 sm:w-48`,children:(0,$.jsx)(sn,{tier:n?.[e],defaultTier:f,disabled:r||i||a.has(e),onTierChange:t=>o(e,t),onReset:()=>s(e),"aria-label":c(`slackChannelTypeDefaults.bucketAria`,{bucket:u})})})},e)})}),(0,$.jsx)(I.Footer,{className:`p-0`,children:(0,$.jsx)(bn,{defaultTier:t})})]})}var Cn=`0.11.0`;function wn(){return P(Cn)}var Tn=new Set([404,501]);function En(e){let t=Fe(e);return t!==void 0&&Tn.has(t)}function Dn(e,t,n){return en.map(r=>({selector:{scope:`channel`,adapter:e,channelExternalId:t},contactType:r,threshold:n}))}function On(e,t,n){return e.selector.scope===`channel`&&e.selector.adapter===t&&e.selector.channelExternalId===n}function kn(e,t){return t===`channels`?{scope:`adapter`,adapter:e}:{scope:`channel_type`,adapter:e,channelType:`dm`}}function An(e,t,n){let r=kn(e,t);return en.map(e=>({selector:r,contactType:e,threshold:n}))}function jn({assistantId:e,adapter:t}){let n=He(),r=wn()&&!!e,i=(0,Q.useMemo)(()=>({path:{assistant_id:e}}),[e]),a=(0,Q.useMemo)(()=>_(i),[i]),o=(0,Q.useMemo)(()=>[`channel-permission-resolve`,e,t],[e,t]),s=X({...ae(i),enabled:r}),c=s.data?.cells,l=(0,Q.useMemo)(()=>c?tn(c,t):void 0,[c,t]),u=(0,Q.useMemo)(()=>c?{channels:rn(c,t,`channels`),dm:rn(c,t,`dm`)}:void 0,[c,t]),d=X({queryKey:o,queryFn:async()=>{let{data:e}=await N({...i,body:{adapter:t,contactType:`trusted_contact`},throwOnError:!0});return e.resolved?.threshold??null},enabled:r,retry:!1,staleTime:3e4}),f=(e,t)=>{let r=n.getQueryData(a),i=Date.now();return n.setQueryData(a,n=>({cells:[...(n?.cells??[]).filter(t=>!e(t)),...t.map(e=>({...e,updatedAt:i}))]})),{previous:r}},p=J({mutationFn:async({channelExternalId:e,tier:n})=>{await Promise.all(Dn(t,e,n).map(e=>w({...i,body:e,throwOnError:!0})))},onMutate:({channelExternalId:e,tier:n})=>f(n=>On(n,t,e),Dn(t,e,n)),onError:(e,t,r)=>{n.setQueryData(a,r?.previous),bt(`Failed to save channel settings`)(e)},onSettled:()=>n.invalidateQueries({queryKey:a})}),m=J({mutationFn:async({channelExternalId:e})=>{await Promise.all(en.map(n=>x({...i,body:{selector:{scope:`channel`,adapter:t,channelExternalId:e},contactType:n},throwOnError:!0})))},onMutate:({channelExternalId:e})=>f(n=>On(n,t,e),[]),onError:(e,t,r)=>{n.setQueryData(a,r?.previous),bt(`Failed to reset channel settings`)(e)},onSettled:()=>n.invalidateQueries({queryKey:a})}),h=J({mutationFn:async({bucket:e,tier:n})=>{await Promise.all(An(t,e,n).map(e=>w({...i,body:e,throwOnError:!0})))},onMutate:({bucket:e,tier:n})=>f(n=>nn(n,t,e),An(t,e,n)),onError:(e,t,r)=>{n.setQueryData(a,r?.previous),bt(`Failed to save the default`)(e)},onSettled:(e,t,{bucket:r})=>{n.invalidateQueries({queryKey:a}),r===`channels`&&n.invalidateQueries({queryKey:o})}}),g=J({mutationFn:async({bucket:e})=>{let n=kn(t,e);await Promise.all(en.map(e=>x({...i,body:{selector:n,contactType:e},throwOnError:!0})))},onMutate:({bucket:e})=>f(n=>nn(n,t,e),[]),onError:(e,t,r)=>{n.setQueryData(a,r?.previous),bt(`Failed to reset the default`)(e)},onSettled:(e,t,{bucket:r})=>{n.invalidateQueries({queryKey:a}),r===`channels`&&n.invalidateQueries({queryKey:o})}}),v=(0,Q.useMemo)(()=>{let e=new Set;return p.isPending&&p.variables&&e.add(p.variables.channelExternalId),m.isPending&&m.variables&&e.add(m.variables.channelExternalId),e},[p.isPending,p.variables,m.isPending,m.variables]),y=(0,Q.useMemo)(()=>{let e=new Set;return h.isPending&&h.variables&&e.add(h.variables.bucket),g.isPending&&g.variables&&e.add(g.variables.bucket),e},[h.isPending,h.variables,g.isPending,g.variables]);return!r||s.isError&&En(s.error)?{supported:!1,tierOverrides:void 0,defaultCellTier:void 0,bucketTiers:void 0,pendingChannelIds:new Set,pendingBuckets:new Set,isLoading:!1,isError:!1,onTierChange:void 0,onTierReset:void 0,onBucketChange:void 0,onBucketReset:void 0}:{supported:!0,tierOverrides:l,defaultCellTier:d.data,bucketTiers:u,pendingChannelIds:v,pendingBuckets:y,isLoading:s.isPending,isError:s.isError,onTierChange:(e,t)=>p.mutate({channelExternalId:e,tier:t}),onTierReset:e=>{l?.[e]!==void 0&&m.mutate({channelExternalId:e})},onBucketChange:(e,t)=>h.mutate({bucket:e,tier:t}),onBucketReset:e=>{u?.[e]!==void 0&&g.mutate({bucket:e})}}}function Mn({assistantId:e,assistantDisplayName:t,slackHandle:n}){let{t:r}=Z(`channels`),i=X({...c(e),enabled:!!e,select:e=>e.channels}),a=jn({assistantId:e,adapter:`slack`}),o=X({queryKey:[`thresholds`,e],queryFn:()=>y(e),enabled:a.supported&&!!e,staleTime:3e4}).data?.interactive??null,s=a.defaultCellTier===void 0?null:a.defaultCellTier??o,u=(0,$.jsx)(_n,{assistantDisplayName:t,slackHandle:n,accessControlsSupported:a.supported,defaultTier:s,channels:i.data,loading:i.isPending,error:i.isError,tierOverrides:a.tierOverrides,tierOverridesLoading:a.isLoading,tierOverridesError:a.isError,pendingChannelIds:a.pendingChannelIds,onTierChange:a.onTierChange,onTierReset:a.onTierReset});return!a.supported||!a.onBucketChange||!a.onBucketReset?(0,$.jsx)(I.Root,{noPadding:!0,clipContents:!0,children:u}):(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[a.isError?(0,$.jsx)(Pe,{tone:`error`,children:r(`slackChannelSection.overridesLoadFailed`)}):null,(0,$.jsx)(Sn,{assistantName:t,globalDefaultTier:o,bucketTiers:a.bucketTiers,loading:a.isLoading,error:a.isError,pendingBuckets:a.pendingBuckets,onBucketChange:a.onBucketChange,onBucketReset:a.onBucketReset}),(0,$.jsx)(I.Root,{noPadding:!0,clipContents:!0,children:(0,$.jsx)(we.Root,{type:`single`,collapsible:!0,children:(0,$.jsxs)(we.Item,{value:`per-channel-overrides`,children:[(0,$.jsxs)(we.Trigger,{className:`group justify-between gap-2 px-4 py-3`,children:[(0,$.jsx)(l,{as:`span`,variant:`body-small-emphasised`,children:r(`slackChannelSection.perChannelOverrides`)}),(0,$.jsx)(st,{"aria-hidden":`true`,className:`h-4 w-4 shrink-0 text-[var(--content-tertiary)] transition-transform group-data-[state=open]:rotate-180`})]}),(0,$.jsx)(we.Content,{className:`border-[var(--border-base)] data-[state=open]:border-t`,children:u})]})})})]})}function Nn({slackHandle:e,health:t,disconnectPending:n=!1,onDisconnect:r,children:i}){let{t:a}=Z(`channels`);return(0,$.jsxs)(I.Root,{children:[(0,$.jsx)(I.Header,{children:(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(`img`,{src:Oe(`/images/integrations/slack.svg`),alt:``,className:`size-8 rounded-lg bg-[var(--surface-sunken)] p-1`}),e?(0,$.jsx)(l,{as:`span`,variant:`body-medium-default`,children:e}):null,(0,$.jsx)(Jt,{health:t}),(0,$.jsx)(`div`,{className:`ml-auto`,children:(0,$.jsx)(E,{type:`button`,variant:`ghost`,onClick:r,disabled:!r||n,children:a(n?`connectionCard.disconnecting`:`connectionCard.disconnect`)})})]})}),(0,$.jsx)(I.Body,{children:i})]})}function Pn({threadMode:e,threadModePending:t=!1,onThreadModeChange:n}){let{t:r}=Z(`channels`);return(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsx)(l,{as:`span`,variant:`body-small-emphasised`,className:`text-[color:var(--content-secondary)]`,children:r(`slackThreadBehavior.heading`)}),(0,$.jsxs)(De,{value:e??`mention_then_thread`,onValueChange:e=>n?.(e),disabled:t||!n,"aria-label":r(`slackThreadBehavior.selectAria`),children:[(0,$.jsx)(xe,{value:`mention_only`,label:r(`slackThreadBehavior.mentionsOnly`),helperText:r(`slackThreadBehavior.mentionsOnlyHelp`)}),(0,$.jsx)(xe,{value:`mention_then_thread`,label:r(`slackThreadBehavior.followThreads`),helperText:r(`slackThreadBehavior.followThreadsHelp`)})]})]})}function Fn({onSave:e}){let{t}=Z(`channels`),[n,r]=(0,Q.useState)(``),[i,a]=(0,Q.useState)(``),[o,s]=(0,Q.useState)(!1),[c,l]=(0,Q.useState)(null),u=n.trim().length>0&&i.trim().length>0&&!o;return(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsx)(Ce,{label:t(`twilioCredentialEntry.accountSid`),type:`text`,value:n,onChange:e=>r(e.target.value),placeholder:`ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,disabled:o,fullWidth:!0}),(0,$.jsx)(Ce,{label:t(`twilioCredentialEntry.authToken`),type:`password`,value:i,onChange:e=>a(e.target.value),placeholder:t(`twilioCredentialEntry.authTokenPlaceholder`),disabled:o,fullWidth:!0}),c?(0,$.jsx)(`p`,{className:`text-label-small-default`,style:{color:`var(--content-negative)`},children:c}):null,(0,$.jsx)(`div`,{children:(0,$.jsx)(E,{type:`button`,onClick:async()=>{if(!(!e||!u)){s(!0),l(null);try{await e(n.trim(),i.trim()),r(``),a(``)}catch(e){l(e instanceof Error?e.message:`Failed to save`)}finally{s(!1)}}},disabled:!u,children:t(o?`twilioCredentialEntry.saving`:`twilioCredentialEntry.save`)})})]})}function In({channel:e,assistantId:t,assistantName:n,assistantDisplayName:r,pending:i,initialManualEntry:a=!1,onSetup:s,onDisconnect:c,onSaveTelegramToken:l,telegramSaveStatus:u,telegramSaveError:d,onSaveDiscordToken:f,discordSaveStatus:p,discordSaveError:m=null,discordInviteUrl:g,onSaveSlackConfig:_,slackSaveStatus:y,slackSaveError:b,slackThreadMode:x,slackThreadModePending:S=!1,onSlackThreadModeChange:C,onSaveTwilioCredentials:w,policy:T,policySaving:ee=!1,policyLoading:D=!1,policyError:O=!1,onPolicyChange:k}){let{t:A}=Z(`channels`),j=e.status===`incomplete`,[te,M]=(0,Q.useState)(a),ne=e.key===`discord`&&te&&p===`success`,N=e.configured&&!ne;if(e.key===`email`)return(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,$.jsx)(qt,{}),N&&k?(0,$.jsx)(mt,{children:(0,$.jsx)(It,{assistantDisplayName:r,policy:T,saving:ee,loading:D,error:O,onChange:k})}):null]});if(e.key===`slack`)return(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[N?(0,$.jsx)(Nn,{slackHandle:e.address,health:e.health,disconnectPending:i,onDisconnect:c,children:(0,$.jsx)(Pn,{threadMode:x,threadModePending:S,onThreadModeChange:C})}):(0,$.jsx)(Xt,{children:(0,$.jsx)(h,{assistantId:t,assistantName:n,onSave:_,saveStatus:y,saveError:b})}),N?(0,$.jsx)(Mn,{assistantId:t,assistantDisplayName:r,slackHandle:e.address}):null]});let P=o[e.key];return(0,$.jsx)(`div`,{className:`flex flex-col gap-4`,children:N?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Yt,{health:e.health,address:e.address,pending:i,onDisconnect:c}),P.hasTrustFloorControl&&k?(0,$.jsx)(It,{assistantDisplayName:r,policy:T,saving:ee,loading:D,error:O,onChange:k}):null]}):te&&e.canManualEntry&&P.credentialForm?(e=>{switch(e){case`slack-wizard`:return null;case`telegram-token`:return(0,$.jsx)(je,{assistantId:t,assistantName:n,saveStatus:u,saveError:d,onSave:l});case`discord-token`:return(0,$.jsx)(z,{assistantId:t,assistantName:n,saveStatus:p,saveError:m,onSave:f,...g?{inviteUrl:g}:{}});case`twilio-credentials`:return(0,$.jsx)(Fn,{onSave:w});default:return e}})(P.credentialForm):(0,$.jsx)(Pt,{icon:(0,$.jsx)(v,{channelId:e.key,className:`h-6 w-6`}),title:A(j?`channelPanel.incompleteTitle`:`channelPanel.disconnectedTitle`,{channel:F(e.key)}),description:j?e.warning??A(`channelPanel.incompleteDescription`,{channel:F(e.key)}):P.disconnectedPitchKey?A(P.disconnectedPitchKey,{assistant:r}):void 0,action:(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-1`,children:[(0,$.jsx)(E,{type:`button`,variant:`outlined`,onClick:s,disabled:!s||i,children:A(i?`channelPanel.opening`:j?`channelPanel.finishSetup`:`channelPanel.setUp`)}),e.canManualEntry&&P.credentialForm?(0,$.jsx)(E,{type:`button`,variant:`link`,onClick:()=>M(!0),children:A(`channelPanel.connectManually`)}):null]})})})}var Ln=new Set([404,501]),Rn=new Set([401,403]);function zn(e){let t=Fe(e);return t!==void 0&&Ln.has(t)?`unsupported`:t!==void 0&&Rn.has(t)?`forbidden`:`unreadable`}function Bn(e,t,n){let r=e===`unreadable`?t:n;return r?r instanceof Error&&r.message?r.message:`Something went wrong`:null}function Vn(e,t){let n=He(),r={assistant_id:e},i=X({...R({path:r}),enabled:!!e,retry:L}),a=()=>n.invalidateQueries({queryKey:d({path:r})}),o=J({...Le(),onSuccess:a}),s=J({...Ne(),onSuccess:a}),c=i.data?.sources?.find(e=>e.source===t),l;l=i.isError?zn(i.error):i.isPending?`loading`:c?c.state:`none`;let u=Bn(l,i.error,o.error??s.error);return{status:l,paths:c?.routes?.map(e=>({path:e.publicPath,approvalGoverned:e.signer!==`vellum`,deliversInbound:e.deliversInbound===!0}))??[],deciding:o.isPending||s.isPending,approve:()=>{c?.digest&&o.mutate({path:{...r,source:t},body:{digest:c.digest}})},revoke:()=>s.mutate({path:{...r,source:t}}),error:u}}var Hn=`plugin`;function Un(e){let t=He(),n=yt(),r=(0,Q.useMemo)(()=>({path:{assistant_id:e}}),[e]),i=(0,Q.useMemo)(()=>fe(r),[r]),a=X({...Be(r),enabled:n&&!!e,select:Tt}),o=J({mutationFn:t=>Ct(e,Hn,t),onSuccess:()=>t.invalidateQueries({queryKey:i}),onError:bt(`Failed to save channel policy`)}),s=(0,Q.useCallback)(e=>{o.mutate(e)},[o]);return n?{policy:a.data?.find(e=>e.channelType===Hn)?.policy,isLoading:a.isPending,isError:a.isError,isSaving:o.isPending,onChange:s}:{policy:void 0,isLoading:!1,isError:!1,isSaving:!1,onChange:void 0}}function Wn({channel:e,assistantId:t,assistantDisplayName:n}){let{t:r}=Z(`channels`),i=Ge(),a=Vn(t,e.plugin),o=Un(t);return(0,$.jsxs)(`div`,{className:`relative flex flex-col items-center gap-3 py-10 text-center`,children:[(0,$.jsx)(E,{className:`absolute top-0 right-0`,variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)($e,{}),tooltip:r(`pluginChannelPanel.navigateToPluginPage`),"aria-label":r(`pluginChannelPanel.navigateToPluginPage`),onClick:()=>i(`/assistant/plugins/${e.plugin}`)}),(0,$.jsx)(S,{icon:e.icon,className:`h-8 w-8 text-[color:var(--content-secondary)]`}),(0,$.jsx)(`h3`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:e.label}),e.description?(0,$.jsx)(`p`,{className:`max-w-[420px] text-body-medium-default`,style:{color:`var(--content-secondary)`},children:e.description}):null,(0,$.jsx)(Gn,{channel:e,ingress:a}),o.onChange?(0,$.jsx)(`div`,{className:`w-full max-w-[420px] text-left`,children:(0,$.jsx)(It,{assistantDisplayName:n,policy:o.policy,saving:o.isSaving,loading:o.isLoading,error:o.isError,onChange:o.onChange})}):null]})}function Gn({channel:e,ingress:t}){let{t:n}=Z(`channels`);switch(t.status){case`loading`:return(0,$.jsx)(qn,{children:n(`pluginChannelPanel.ingressLoading`,{channel:e.label})});case`unsupported`:return(0,$.jsx)(qn,{children:n(`pluginChannelPanel.ingressUnsupported`)});case`forbidden`:return(0,$.jsx)(qn,{children:n(`pluginChannelPanel.ingressForbidden`)});case`unreadable`:return(0,$.jsxs)(qn,{children:[n(`pluginChannelPanel.ingressUnreadable`,{channel:e.label}),t.error?` ${t.error}`:``]});case`none`:return(0,$.jsx)(qn,{children:n(`pluginChannelPanel.ingressNone`,{channel:e.label})});case`pending`:case`approved`:return(0,$.jsx)(Kn,{ingress:t})}}function Kn({ingress:e}){let{t}=Z(`channels`),n=e.status===`approved`;return(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,$.jsx)(W,{tone:n?`positive`:`neutral`,children:t(n?`pluginChannelPanel.ingressApprovedTag`:`pluginChannelPanel.ingressPendingTag`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,$.jsx)(E,{onClick:n?e.revoke:e.approve,disabled:e.deciding,variant:n?`outlined`:`primary`,children:t(n?`pluginChannelPanel.revokeChannel`:`pluginChannelPanel.approveChannel`)}),(0,$.jsx)(j,{content:t(`pluginChannelPanel.approveChannelInfo`),children:(0,$.jsx)(`span`,{tabIndex:0,className:`inline-flex cursor-default p-0.5 text-[color:var(--content-secondary)]`,"aria-label":t(`pluginChannelPanel.approveChannelInfo`),children:(0,$.jsx)(at,{className:`h-4 w-4`,"aria-hidden":`true`})})})]}),e.error?(0,$.jsx)(`p`,{className:`max-w-[420px] text-body-small-default`,style:{color:`var(--system-negative-strong)`},children:e.error}):null]})}function qn({children:e}){return(0,$.jsx)(`p`,{className:`max-w-[420px] text-body-small-default`,style:{color:`var(--content-secondary)`},children:e})}function Jn({assistantId:e,assistantName:t,channels:n,pluginChannels:r=[],pendingChannelKey:i=null,slackThreadMode:a,slackThreadModePending:s=!1,channelPolicies:c,policySavingKey:l=null,policiesLoading:u=!1,policiesError:d=!1,onChannelPolicyChange:f,onSetup:p,onDisconnect:m,onSaveTelegramToken:h,telegramSaveStatus:g,onSaveDiscordToken:_,discordSaveStatus:v,discordSaveError:y=null,discordInviteUrl:b,telegramSaveError:x,onSaveSlackConfig:S,slackSaveStatus:C,slackSaveError:w,onSlackThreadModeChange:T,onSaveTwilioCredentials:E,initialChannel:ee=null}){let{t:D}=Z(`channels`),{selected:O,select:k}=At(),[A,j]=(0,Q.useState)(null),{paneRef:te,hasRoomForList:M,drawerOpen:ne,openDrawer:N,closeDrawer:P}=vt(),[F]=(0,Q.useState)(ee);(0,Q.useEffect)(()=>{F&&k(F)},[F,k]);let I=U(t),L=A?o[A]:null,re=e=>{k(e),P()},R=r.find(e=>e.key===O),z=R?void 0:n.find(e=>e.key===O)??n[0];if(!z&&!R)return null;let ie=R?R.key:z.key,ae=R?(0,$.jsx)(Wn,{channel:R,assistantId:e,assistantDisplayName:I},R.key):(0,$.jsx)(In,{channel:z,assistantId:e,assistantName:t,assistantDisplayName:I,pending:i===z.key,initialManualEntry:F===z.key,onSetup:p?()=>p(z.key,z.status===`incomplete`):void 0,onDisconnect:m&&z.canDisconnect?()=>j(z.key):void 0,onSaveTelegramToken:h,telegramSaveStatus:g,onSaveDiscordToken:_,discordSaveStatus:v,discordSaveError:y,...b?{discordInviteUrl:b}:{},telegramSaveError:x,onSaveSlackConfig:S,slackSaveStatus:C,slackSaveError:w,slackThreadMode:a,slackThreadModePending:s,onSlackThreadModeChange:T,onSaveTwilioCredentials:E,policy:c?.[z.key],policySaving:l===z.key,policyLoading:u,policyError:d,onPolicyChange:f?e=>f(z.key,e):void 0},z.key);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{ref:te,className:`flex min-h-0 flex-1 overflow-hidden ${M?`flex-row gap-6`:`flex-col gap-4`}`,children:[M?(0,$.jsx)(`aside`,{className:`min-h-0 w-[320px] shrink-0 overflow-y-auto self-stretch`,children:(0,$.jsx)(jt,{channels:n,pluginChannels:r,selectedKey:ie,onSelect:re})}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`flex items-center`,children:(0,$.jsx)(_t,{onClick:N})}),(0,$.jsx)(gt,{open:ne,onClose:P,title:D(`assistantChannelsList.drawerTitle`),children:(0,$.jsx)(jt,{channels:n,pluginChannels:r,selectedKey:ie,onSelect:re})})]}),(0,$.jsx)(`section`,{className:`min-h-0 min-w-0 flex-1 overflow-y-auto`,children:ie===`slack`||ie===`email`?ae:(0,$.jsx)(mt,{children:ae})})]}),(0,$.jsx)(Te,{open:A!==null,title:D(`assistantChannelsList.disconnectTitle`,{channel:L?D(L.labelKey):``}),message:L?.disconnectMessageKey?D(L.disconnectMessageKey):``,confirmLabel:D(`assistantChannelsList.disconnectConfirm`),destructive:!0,onConfirm:()=>{A&&m&&m(A),j(null)},onCancel:()=>j(null)})]})}var Yn=`plugin:`;function Xn(e){let{data:t}=X({...ce({path:{assistant_id:e}}),enabled:!!e,select:e=>e.channels.filter(e=>e.source?.startsWith(Yn)).map(e=>({plugin:e.id,key:ye(e.id),label:e.label,description:e.subtitle,icon:e.icon}))});return t??[]}function Zn(){let[e,t]=Ue(),n=e.get(`setup`),r=n&&k(n)?n:null;return(0,Q.useEffect)(()=>{r&&t(e=>(e.delete(`setup`),e),{replace:!0})},[r,t]),r}function Qn({assistantId:e,onStartSetupConversation:t}){let n=te.use.a2aChannel(),r=se.use.name(),i=Zn(),a=Et(e),o=U(r),s=St({assistantId:e,onStartSetupConversation:t});return(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-6 overflow-hidden`,children:[(0,$.jsx)(Jn,{assistantId:e,assistantName:o,initialChannel:i,pluginChannels:Xn(e),...s}),n?(0,$.jsx)(wt,{onClick:a.open}):null,(0,$.jsx)(xt,{open:a.isOpen,assistantId:e,onClose:a.close})]})}function $n(){let e=Ge(),t=pe();return(0,$.jsx)(Qn,{assistantId:t,onStartSetupConversation:t=>{B(e,{prompt:t})}},t)}export{$n as ChannelsPageRoute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{CS as t,Ed as n,Fn as r,Ht as i,IS as a,Jy as o,Mi as s,Mt as c,NS as l,Pt as u,Qi as d,TS as f,Tm as p,Wc as m,_a as h,bm as g,er as _,hr as v,iS as y,in as b,ir as x,kn as ee,nr as S,or as te,qa as C,rr as ne,vS as w,va as re,xm as T}from"./app-BfK0IQIk.js";import{I as E,j as D}from"./vendor-ajttH1pP.js";import{t as O,x as k}from"./react-B9IgSVeK.js";import{$r as A,A as j,Ht as M,Ia as N,Ki as ie,Vt as P,Yn as F,Zr as I,ar as ae,ri as L}from"./icons-C0wyat6T.js";import{n as R,r as oe,t as se}from"./use-app-delete-CQbN9rtt.js";var z=e(k(),1),B=O();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)(f.Root,{children:[(0,B.jsx)(f.Trigger,{asChild:!0,children:(0,B.jsx)(l,{variant:`ghost`,size:`compact`,expandOnMobile:!1,iconOnly:(0,B.jsx)(A,{}),"aria-label":e})}),(0,B.jsx)(f.Content,{title:e,children:t})]})}var U=({assistantId:e,app:t,onRequestDelete:n})=>{let{togglePin:r,pinnedAppIds:i}=s(e),a=i.has(t.id),o=R(e,t,{exported:E(`chat:appAssetActions.appExported`),failed:E(`chat:appAssetActions.shareFailed`)});return(0,B.jsxs)(H,{title:E(`chat:conversationAssetActions.optionsFor`,{name:t.name}),children:[(0,B.jsx)(f.Item,{icon:a?M:P,label:E(a?`chat:conversationAssetActions.unpin`:`chat:conversationAssetActions.pin`),onSelect:()=>r(t.id)}),(0,B.jsx)(f.Item,{icon:N,label:E(`chat:conversationAssetActions.share`),description:E(`chat:conversationAssetActions.exportAsVellum`),onSelect:()=>void o()}),(0,B.jsx)(f.Item,{icon:j,label:E(`chat:conversationAssetActions.delete`),tone:`destructive`,onSelect:()=>n(t)})]})},W=({assistantId:e,doc:t,onOpen:n})=>{let r=(0,z.useCallback)(async()=>{try{await C(e,t.surfaceId,t.title)}catch{y.error(E(`chat:documentAssetActions.pdfDownloadFailed`))}},[e,t.surfaceId,t.title]);return(0,B.jsxs)(H,{title:E(`chat:conversationAssetActions.optionsFor`,{name:t.title}),children:[(0,B.jsx)(f.Item,{icon:I,label:E(`chat:conversationAssetActions.open`),onSelect:n}),(0,B.jsx)(f.Item,{icon:L,label:E(`chat:conversationAssetActions.downloadPdf`),onSelect:()=>void r()})]})},G={width:184};function K({app:e,assistantId:n,onOpen:r,onRequestDelete:i,stretch:o=!1}){let{t:s}=D(`chat`),c=(0,z.useCallback)(()=>p(n,e.id,e.updatedAt),[n,e.id,e.updatedAt]);return(0,B.jsxs)(`div`,{"data-slot":`chat-info-app-tile`,"data-reveal-row":``,className:a(`relative flex flex-col gap-1`,o?`min-w-0 flex-1`:`shrink-0`),style:o?void 0:G,children:[(0,B.jsx)(`button`,{type:`button`,"aria-label":s(`chatInfoPanel.openAppAria`,{name:e.name}),onClick:()=>r(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)(b,{name:e.name,icon:e.icon,loadHtml:c})}),(0,B.jsx)(V,{children:(0,B.jsx)(U,{assistantId:n,app:e,onRequestDelete:i})}),(0,B.jsx)(t,{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:n,onOpen:a}){let{t:o}=D(`chat`),s=(0,z.useRef)(null),l=c(s)||typeof IntersectionObserver>`u`,d=e.kind===`document`?null:e.attachment,f=d?v(d.mimeType,d.filename):`document`,[p,m]=(0,z.useState)(!1),{url:h,isError:g}=r(n,d,l&&f===`image`),_=f===`video`&&d?.thumbnailUrl!=null?d.thumbnailUrl:null,y;y=e.kind===`document`?o(`chatInfoPanel.openDocumentAria`,{name:e.title}):e.kind===`frame`?o(`chatInfoPanel.previewFrameAria`):o(`chatInfoPanel.previewAttachmentAria`,{filename:e.attachment.filename});let b=e.kind===`frame`&&e.capturedAt!==null?u(e.capturedAt):e.title,x=f===`image`&&!p;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:s,type:`button`,"aria-label":y,onClick:()=>a(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)(i,{className:`h-full w-full rounded-lg bg-[var(--surface-base)]`,kind:f,imageUrl:x?h:null,posterUrl:_,onImageError:()=>m(!0),glyphClassName:`size-8`,placeholder:x&&!g?(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:n,doc:e.doc,onOpen:()=>a(e)})}):null,(0,B.jsx)(t,{variant:`body-small-default`,title:b,className:`truncate leading-normal text-[var(--content-tertiary)]`,children:b})]})}function ce({items:e,assistantId:t,hasMore:n,loading:r,onLoadMore:i,onOpen:a}){let{t:o}=D(`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)(l,{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 le({title:e,count:n,notice:r,items:i,tileWidth:a,renderTile:o,seeAllAriaLabel:s,onSeeAll:c}){let{t:u}=D(`chat`),f=(0,z.useId)(),{ref:p,size:h}=d(),g=m(),_=Q(h.w,a),v=(n??i.length)>_;return(0,B.jsxs)(`section`,{"aria-labelledby":f,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)(t,{id:f,variant:`title-small`,className:`truncate text-[var(--content-emphasised)]`,children:e}),n!==null&&(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(x,{className:`bg-[var(--content-disabled)]`}),(0,B.jsx)(t,{variant:`title-small`,className:`shrink-0 text-[var(--content-disabled)]`,children:n})]})]}),v&&(0,B.jsx)(l,{variant:`ghost`,size:`compact`,"aria-label":s,onClick:c,className:`h-auto shrink-0 px-0 text-title-small hover:bg-transparent [--vbtn-fg:var(--content-emphasised)]`,children:u(`chatInfoPanel.seeAll`)})]}),r,(0,B.jsx)(`div`,{ref:p,className:`w-full`,children:g?(0,B.jsx)(w,{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:i.map(e=>o(e,`strip`))})}):(0,B.jsx)(`div`,{className:`flex w-full`,style:Z,children:i.slice(0,_).map(e=>o(e,`fitted`))})})]})}function ue({category:e,title:t,count:n,notice:r,items:i,seeAllAriaLabel:a,onSeeAll:o,onOpen:s,assistantId:c}){return(0,B.jsx)(le,{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:t,onSelectCategory:r}){let{t:i}=D(`chat`),{assistantId:a,conversationId:s}=e,c=o.use.activeAssistantId(),u=re(a,g.getState().closeChatInfo),d=h(),{apps:f,files:p,frames:m,counts:v,count:y,status:b,allFailed:x,countsExact:C,sources:w,retrySource:E,retryFailedSources:O,hasMoreFiles:k,hasMoreFrames:A,loadMoreFiles:j,loadMoreFrames:M}=te({assistantId:a,conversationId:s}),{previewable:N,previewIndexById:P}=(0,z.useMemo)(()=>{let e=[],t=new Map;for(let n of[...p,...m])n.kind!==`document`&&(t.set(n.id,e.length),e.push(n.attachment));return{previewable:e,previewIndexById:t}},[p,m]),{openPreview:F,previewModal:I}=ee(a,N),L=se(a),R=T.use.changedDocuments()[s],V=T.use.clearConversation();(0,z.useEffect)(()=>{R!==void 0&&V(s)},[V,s,R]),(0,z.useEffect)(()=>{c!==null&&c!==a&&g.getState().closeChatInfo()},[c,a]);let H=(0,z.useCallback)(e=>{a===c&&(g.getState().closeChatInfo(),d(e,{conversationId:s}))},[c,a,s,d]),U=(0,z.useCallback)(e=>{if(e.kind===`document`){u(e.doc.surfaceId);return}F(e.attachment,P.get(e.id))},[u,F,P]),W={apps:i(`chatInfoPanel.appsTitle`),files:i(`chatInfoPanel.filesTitle`),frames:i(`chatInfoPanel.framesTitle`)},G={apps:f,files:p,frames:m},q={apps:[`apps`],files:[`documents`,`attachments`],frames:[`frames`]},J={apps:i(`chatInfoPanel.appsTitle`),documents:i(`chatInfoPanel.documentsSource`),attachments:i(`chatInfoPanel.attachmentsSource`),frames:i(`chatInfoPanel.framesTitle`)},Y=e=>q[e].map(e=>{let t=w[e],n=J[e];return t.supported?t.failure?(0,B.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,role:`status`,children:[(0,B.jsx)(S,{children:i(t.failure===`page`?`chatInfoPanel.sourcePageFailed`:t.failure===`refresh`?`chatInfoPanel.sourceRefreshFailed`:`chatInfoPanel.sourceLoadFailed`,{source:n})}),(!x||Z!==null)&&(0,B.jsx)(l,{variant:`outlined`,size:`compact`,disabled:t.fetching,onClick:()=>E(e),"aria-label":i(`chatInfoPanel.retrySourceAria`,{source:n}),children:i(`chatInfoPanel.retry`)})]},e):t.pending?(0,B.jsx)(S,{children:i(`chatInfoPanel.sourceLoading`,{source:n})},e):t.scope===`loaded-history`?(0,B.jsxs)(z.Fragment,{children:[(0,B.jsx)(S,{children:i(`chatInfoPanel.loadedHistory`)}),(0,B.jsx)(S,{children:i(`chatInfoPanel.framesUnsupported`)})]},e):null:(0,B.jsx)(S,{children:i(`chatInfoPanel.framesUnsupported`)},e)}),X=e.category!==null&&n(q[e.category].map(e=>w[e])).status===`ready`&&G[e.category].length===0,Z=X?null:e.category;(0,z.useEffect)(()=>{X&&r(null)},[X,r]);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)(ue,{category:e,title:W[e],count:C[e]?v[e]:null,notice:Y(e),items:t,seeAllAriaLabel:i(e===`files`?`chatInfoPanel.seeAllFilesAria`:`chatInfoPanel.seeAllFramesAria`),onSeeAll:r,onOpen:U,assistantId:a})},$;return $=Z===`apps`?(0,B.jsx)(`div`,{className:`grid gap-2`,style:{gridTemplateColumns:`repeat(auto-fill, minmax(184px, 1fr))`},children:f.map(e=>(0,B.jsx)(K,{app:e,assistantId:a,stretch:!0,onOpen:H,onRequestDelete:L.requestDelete},e.id))}):Z===null?(0,B.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[b===`ready`&&y===0&&(0,B.jsx)(S,{children:i(`chatInfoPanel.empty`)}),(f.length>0||w.apps.pending||w.apps.failure)&&(0,B.jsx)(le,{title:W.apps,count:C.apps?v.apps:null,notice:Y(`apps`),items:f,tileWidth:184,seeAllAriaLabel:i(`chatInfoPanel.seeAllAppsAria`),onSeeAll:()=>r(`apps`),renderTile:(e,t)=>(0,B.jsx)(K,{app:e,assistantId:a,stretch:t===`fitted`,onOpen:H,onRequestDelete:L.requestDelete},e.id)}),Q(`files`),Q(`frames`)]}):(0,B.jsx)(ce,{items:G[Z],assistantId:a,hasMore:(Z===`files`?k:A)&&!w[Z===`files`?`attachments`:`frames`].failure,loading:w[Z===`files`?`attachments`:`frames`].fetching,onLoadMore:Z===`files`?j:M,onOpen:U}),(0,B.jsxs)(_,{...Z===null?{Glyph:ae,title:i(`chatInfoPanel.title`)}:{icon:(0,B.jsx)(l,{variant:`outlined`,iconOnly:(0,B.jsx)(ie,{}),"aria-label":i(`chatInfoPanel.backAria`),tooltip:i(`chatInfoPanel.backTooltip`),onClick:()=>r(null),className:`shrink-0`}),title:C[Z]?void 0:W[Z],titleNode:C[Z]?(0,B.jsx)(ne,{title:W[Z],count:v[Z]}):void 0},closeLabel:i(`chatInfoPanel.closeAria`),closeTooltip:i(`chatInfoPanel.closeAria`),onClose:t,children:[Z===null&&x&&(0,B.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,role:`status`,children:[(0,B.jsx)(S,{children:i(`chatInfoPanel.loadFailed`)}),(0,B.jsx)(l,{variant:`outlined`,size:`compact`,disabled:Object.values(w).some(e=>e.fetching),onClick:O,children:i(`chatInfoPanel.retry`)})]}),Z!==null&&Y(Z),$,I,(0,B.jsx)(oe,{app:L.pendingDelete,isDeleting:L.isDeleting,onConfirm:L.confirmDelete,onCancel:L.cancelDelete})]})}export{$ as ChatInfoPanel};
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{CS as t,Ed as n,Fn as r,Ht as i,IS as a,Jy as o,Mi as s,Mt as c,NS as l,Pt as u,Qi as d,TS as f,Tm as p,Wc as m,_a as h,bm as g,er as _,hr as v,iS as y,in as b,ir as x,kn as ee,nr as S,or as te,qa as C,rr as ne,vS as w,va as re,xm as T}from"./app-BBUxTj9g.js";import{I as E,j as D}from"./vendor-ajttH1pP.js";import{t as O,x as k}from"./react-B9IgSVeK.js";import{$r as A,A as j,Ht as M,Ia as N,Ki as ie,Vt as P,Yn as F,Zr as I,ar as ae,ri as L}from"./icons-C0wyat6T.js";import{n as R,r as oe,t as se}from"./use-app-delete-DtftSu08.js";var z=e(k(),1),B=O();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)(f.Root,{children:[(0,B.jsx)(f.Trigger,{asChild:!0,children:(0,B.jsx)(l,{variant:`ghost`,size:`compact`,expandOnMobile:!1,iconOnly:(0,B.jsx)(A,{}),"aria-label":e})}),(0,B.jsx)(f.Content,{title:e,children:t})]})}var U=({assistantId:e,app:t,onRequestDelete:n})=>{let{togglePin:r,pinnedAppIds:i}=s(e),a=i.has(t.id),o=R(e,t,{exported:E(`chat:appAssetActions.appExported`),failed:E(`chat:appAssetActions.shareFailed`)});return(0,B.jsxs)(H,{title:E(`chat:conversationAssetActions.optionsFor`,{name:t.name}),children:[(0,B.jsx)(f.Item,{icon:a?M:P,label:E(a?`chat:conversationAssetActions.unpin`:`chat:conversationAssetActions.pin`),onSelect:()=>r(t.id)}),(0,B.jsx)(f.Item,{icon:N,label:E(`chat:conversationAssetActions.share`),description:E(`chat:conversationAssetActions.exportAsVellum`),onSelect:()=>void o()}),(0,B.jsx)(f.Item,{icon:j,label:E(`chat:conversationAssetActions.delete`),tone:`destructive`,onSelect:()=>n(t)})]})},W=({assistantId:e,doc:t,onOpen:n})=>{let r=(0,z.useCallback)(async()=>{try{await C(e,t.surfaceId,t.title)}catch{y.error(E(`chat:documentAssetActions.pdfDownloadFailed`))}},[e,t.surfaceId,t.title]);return(0,B.jsxs)(H,{title:E(`chat:conversationAssetActions.optionsFor`,{name:t.title}),children:[(0,B.jsx)(f.Item,{icon:I,label:E(`chat:conversationAssetActions.open`),onSelect:n}),(0,B.jsx)(f.Item,{icon:L,label:E(`chat:conversationAssetActions.downloadPdf`),onSelect:()=>void r()})]})},G={width:184};function K({app:e,assistantId:n,onOpen:r,onRequestDelete:i,stretch:o=!1}){let{t:s}=D(`chat`),c=(0,z.useCallback)(()=>p(n,e.id,e.updatedAt),[n,e.id,e.updatedAt]);return(0,B.jsxs)(`div`,{"data-slot":`chat-info-app-tile`,"data-reveal-row":``,className:a(`relative flex flex-col gap-1`,o?`min-w-0 flex-1`:`shrink-0`),style:o?void 0:G,children:[(0,B.jsx)(`button`,{type:`button`,"aria-label":s(`chatInfoPanel.openAppAria`,{name:e.name}),onClick:()=>r(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)(b,{name:e.name,icon:e.icon,loadHtml:c})}),(0,B.jsx)(V,{children:(0,B.jsx)(U,{assistantId:n,app:e,onRequestDelete:i})}),(0,B.jsx)(t,{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:n,onOpen:a}){let{t:o}=D(`chat`),s=(0,z.useRef)(null),l=c(s)||typeof IntersectionObserver>`u`,d=e.kind===`document`?null:e.attachment,f=d?v(d.mimeType,d.filename):`document`,[p,m]=(0,z.useState)(!1),{url:h,isError:g}=r(n,d,l&&f===`image`),_=f===`video`&&d?.thumbnailUrl!=null?d.thumbnailUrl:null,y;y=e.kind===`document`?o(`chatInfoPanel.openDocumentAria`,{name:e.title}):e.kind===`frame`?o(`chatInfoPanel.previewFrameAria`):o(`chatInfoPanel.previewAttachmentAria`,{filename:e.attachment.filename});let b=e.kind===`frame`&&e.capturedAt!==null?u(e.capturedAt):e.title,x=f===`image`&&!p;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:s,type:`button`,"aria-label":y,onClick:()=>a(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)(i,{className:`h-full w-full rounded-lg bg-[var(--surface-base)]`,kind:f,imageUrl:x?h:null,posterUrl:_,onImageError:()=>m(!0),glyphClassName:`size-8`,placeholder:x&&!g?(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:n,doc:e.doc,onOpen:()=>a(e)})}):null,(0,B.jsx)(t,{variant:`body-small-default`,title:b,className:`truncate leading-normal text-[var(--content-tertiary)]`,children:b})]})}function ce({items:e,assistantId:t,hasMore:n,loading:r,onLoadMore:i,onOpen:a}){let{t:o}=D(`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)(l,{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 le({title:e,count:n,notice:r,items:i,tileWidth:a,renderTile:o,seeAllAriaLabel:s,onSeeAll:c}){let{t:u}=D(`chat`),f=(0,z.useId)(),{ref:p,size:h}=d(),g=m(),_=Q(h.w,a),v=(n??i.length)>_;return(0,B.jsxs)(`section`,{"aria-labelledby":f,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)(t,{id:f,variant:`title-small`,className:`truncate text-[var(--content-emphasised)]`,children:e}),n!==null&&(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(x,{className:`bg-[var(--content-disabled)]`}),(0,B.jsx)(t,{variant:`title-small`,className:`shrink-0 text-[var(--content-disabled)]`,children:n})]})]}),v&&(0,B.jsx)(l,{variant:`ghost`,size:`compact`,"aria-label":s,onClick:c,className:`h-auto shrink-0 px-0 text-title-small hover:bg-transparent [--vbtn-fg:var(--content-emphasised)]`,children:u(`chatInfoPanel.seeAll`)})]}),r,(0,B.jsx)(`div`,{ref:p,className:`w-full`,children:g?(0,B.jsx)(w,{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:i.map(e=>o(e,`strip`))})}):(0,B.jsx)(`div`,{className:`flex w-full`,style:Z,children:i.slice(0,_).map(e=>o(e,`fitted`))})})]})}function ue({category:e,title:t,count:n,notice:r,items:i,seeAllAriaLabel:a,onSeeAll:o,onOpen:s,assistantId:c}){return(0,B.jsx)(le,{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:t,onSelectCategory:r}){let{t:i}=D(`chat`),{assistantId:a,conversationId:s}=e,c=o.use.activeAssistantId(),u=re(a,g.getState().closeChatInfo),d=h(),{apps:f,files:p,frames:m,counts:v,count:y,status:b,allFailed:x,countsExact:C,sources:w,retrySource:E,retryFailedSources:O,hasMoreFiles:k,hasMoreFrames:A,loadMoreFiles:j,loadMoreFrames:M}=te({assistantId:a,conversationId:s}),{previewable:N,previewIndexById:P}=(0,z.useMemo)(()=>{let e=[],t=new Map;for(let n of[...p,...m])n.kind!==`document`&&(t.set(n.id,e.length),e.push(n.attachment));return{previewable:e,previewIndexById:t}},[p,m]),{openPreview:F,previewModal:I}=ee(a,N),L=se(a),R=T.use.changedDocuments()[s],V=T.use.clearConversation();(0,z.useEffect)(()=>{R!==void 0&&V(s)},[V,s,R]),(0,z.useEffect)(()=>{c!==null&&c!==a&&g.getState().closeChatInfo()},[c,a]);let H=(0,z.useCallback)(e=>{a===c&&(g.getState().closeChatInfo(),d(e,{conversationId:s}))},[c,a,s,d]),U=(0,z.useCallback)(e=>{if(e.kind===`document`){u(e.doc.surfaceId);return}F(e.attachment,P.get(e.id))},[u,F,P]),W={apps:i(`chatInfoPanel.appsTitle`),files:i(`chatInfoPanel.filesTitle`),frames:i(`chatInfoPanel.framesTitle`)},G={apps:f,files:p,frames:m},q={apps:[`apps`],files:[`documents`,`attachments`],frames:[`frames`]},J={apps:i(`chatInfoPanel.appsTitle`),documents:i(`chatInfoPanel.documentsSource`),attachments:i(`chatInfoPanel.attachmentsSource`),frames:i(`chatInfoPanel.framesTitle`)},Y=e=>q[e].map(e=>{let t=w[e],n=J[e];return t.supported?t.failure?(0,B.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,role:`status`,children:[(0,B.jsx)(S,{children:i(t.failure===`page`?`chatInfoPanel.sourcePageFailed`:t.failure===`refresh`?`chatInfoPanel.sourceRefreshFailed`:`chatInfoPanel.sourceLoadFailed`,{source:n})}),(!x||Z!==null)&&(0,B.jsx)(l,{variant:`outlined`,size:`compact`,disabled:t.fetching,onClick:()=>E(e),"aria-label":i(`chatInfoPanel.retrySourceAria`,{source:n}),children:i(`chatInfoPanel.retry`)})]},e):t.pending?(0,B.jsx)(S,{children:i(`chatInfoPanel.sourceLoading`,{source:n})},e):t.scope===`loaded-history`?(0,B.jsxs)(z.Fragment,{children:[(0,B.jsx)(S,{children:i(`chatInfoPanel.loadedHistory`)}),(0,B.jsx)(S,{children:i(`chatInfoPanel.framesUnsupported`)})]},e):null:(0,B.jsx)(S,{children:i(`chatInfoPanel.framesUnsupported`)},e)}),X=e.category!==null&&n(q[e.category].map(e=>w[e])).status===`ready`&&G[e.category].length===0,Z=X?null:e.category;(0,z.useEffect)(()=>{X&&r(null)},[X,r]);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)(ue,{category:e,title:W[e],count:C[e]?v[e]:null,notice:Y(e),items:t,seeAllAriaLabel:i(e===`files`?`chatInfoPanel.seeAllFilesAria`:`chatInfoPanel.seeAllFramesAria`),onSeeAll:r,onOpen:U,assistantId:a})},$;return $=Z===`apps`?(0,B.jsx)(`div`,{className:`grid gap-2`,style:{gridTemplateColumns:`repeat(auto-fill, minmax(184px, 1fr))`},children:f.map(e=>(0,B.jsx)(K,{app:e,assistantId:a,stretch:!0,onOpen:H,onRequestDelete:L.requestDelete},e.id))}):Z===null?(0,B.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[b===`ready`&&y===0&&(0,B.jsx)(S,{children:i(`chatInfoPanel.empty`)}),(f.length>0||w.apps.pending||w.apps.failure)&&(0,B.jsx)(le,{title:W.apps,count:C.apps?v.apps:null,notice:Y(`apps`),items:f,tileWidth:184,seeAllAriaLabel:i(`chatInfoPanel.seeAllAppsAria`),onSeeAll:()=>r(`apps`),renderTile:(e,t)=>(0,B.jsx)(K,{app:e,assistantId:a,stretch:t===`fitted`,onOpen:H,onRequestDelete:L.requestDelete},e.id)}),Q(`files`),Q(`frames`)]}):(0,B.jsx)(ce,{items:G[Z],assistantId:a,hasMore:(Z===`files`?k:A)&&!w[Z===`files`?`attachments`:`frames`].failure,loading:w[Z===`files`?`attachments`:`frames`].fetching,onLoadMore:Z===`files`?j:M,onOpen:U}),(0,B.jsxs)(_,{...Z===null?{Glyph:ae,title:i(`chatInfoPanel.title`)}:{icon:(0,B.jsx)(l,{variant:`outlined`,iconOnly:(0,B.jsx)(ie,{}),"aria-label":i(`chatInfoPanel.backAria`),tooltip:i(`chatInfoPanel.backTooltip`),onClick:()=>r(null),className:`shrink-0`}),title:C[Z]?void 0:W[Z],titleNode:C[Z]?(0,B.jsx)(ne,{title:W[Z],count:v[Z]}):void 0},closeLabel:i(`chatInfoPanel.closeAria`),closeTooltip:i(`chatInfoPanel.closeAria`),onClose:t,children:[Z===null&&x&&(0,B.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,role:`status`,children:[(0,B.jsx)(S,{children:i(`chatInfoPanel.loadFailed`)}),(0,B.jsx)(l,{variant:`outlined`,size:`compact`,disabled:Object.values(w).some(e=>e.fetching),onClick:O,children:i(`chatInfoPanel.retry`)})]}),Z!==null&&Y(Z),$,I,(0,B.jsx)(oe,{app:L.pendingDelete,isDeleting:L.isDeleting,onConfirm:L.confirmDelete,onCancel:L.cancelDelete})]})}export{$ as ChatInfoPanel};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{gy as e,m_ as t}from"./app-
|
|
1
|
+
import{gy as e,m_ as t}from"./app-BBUxTj9g.js";function n(){let e=t.use.marketingPricingTakeover(),n=t.use.hydrated();return e?`enabled`:n?`disabled`:`pending`}var r=`continue`;function i(t,n){return e(t.get(r),n)}export{i as n,n as r,r as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$v as t,Iv as n,Lm as r,Mh as i,NS as a,Qv as o,Rm as s,Zp as c,bu as l,eh as u,fx as d,ny as f,ug as p}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$v as t,Iv as n,Lm as r,Mh as i,NS as a,Qv as o,Rm as s,Zp as c,bu as l,eh as u,fx as d,ny as f,ug as p}from"./app-BBUxTj9g.js";import{Jn as m,er as h,j as g}from"./vendor-ajttH1pP.js";import{_,f as v,n as y,t as b,x}from"./react-B9IgSVeK.js";import{Yn as S}from"./icons-C0wyat6T.js";import{t as C}from"./checkout-return-target-DWik-led.js";import{n as w,r as T}from"./checkout-continuation-5Jtm_JrA.js";var E=e(x(),1),D=b();function O(){t(),s()}function k(){let{t:e}=g(`settings`),t=v(),[i]=_(),s=i.get(`package`)??``,b=(0,E.useMemo)(()=>s?null:o(i),[s,i]),x=c(),k=u(),A=T(),j=w(i,d.plans),M=j===d.plans?e(`checkoutPage.viewPlans`):e(`checkoutPage.continueSetup`),N=h(),{mutateAsync:P}=m(l()),[F,I]=(0,E.useState)(!1),[L,R]=(0,E.useState)(!1),z=(0,E.useRef)(`idle`),B=(0,E.useCallback)(async()=>{z.current=`running`,I(!1),R(!1);let e=C();try{let i=await P({body:b?{target_plan_id:`pro`,confirm:!0,machine_tier:b.machineTier,storage_tier:b.storageTier,credit_tier:b.creditTier,return_target:e}:{target_plan_id:`pro`,package:s,confirm:!0,return_target:e}});if(z.current!==`running`)return;if(i.status===`redirect`&&i.checkout_url){z.current=`handed_off`,f(b?{kind:`custom`,machineTier:b.machineTier,storageTier:b.storageTier,creditTier:b.creditTier}:{kind:`package`,packageKey:s}),r(N),R(e===`native`),n(i.checkout_url);return}z.current=`settled`,O(),t(j===d.plans&&s?d.plansForPackage(s):j,{replace:!0})}catch{if(z.current!==`running`)return;z.current=`settled`,I(!0)}},[j,b,P,t,s,N]),V=(0,E.useCallback)(()=>{if(k===`ready`){B();return}z.current=`idle`,I(!1),R(!1),k===`unavailable`&&p.getState().fetchOrganizations()},[k,B]);return(0,E.useEffect)(()=>{if(!s&&!b||x===`disabled`||x===`gated`||A===`disabled`){if(z.current===`handed_off`)return;z.current=`settled`,O(),t(j,{replace:!0});return}if(!(A!==`enabled`||x!==`full`||z.current!==`idle`)&&k!==`resolving`){if(k===`unavailable`){z.current=`settled`,I(!0);return}B()}},[j,b,x,t,k,s,B,A]),F?(0,D.jsxs)(`div`,{className:`flex h-full w-full flex-col items-center justify-center gap-4 px-6 text-center`,children:[(0,D.jsx)(`p`,{className:`text-[var(--content-default)]`,children:e(`checkoutPage.checkoutFailedMessage`)}),(0,D.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,D.jsx)(a,{onClick:V,children:e(`checkoutPage.tryAgain`)}),(0,D.jsx)(y,{to:j,onClick:O,className:`text-sm text-[var(--content-tertiary)] underline`,children:M})]})]}):L?(0,D.jsxs)(`div`,{className:`flex h-full w-full flex-col items-center justify-center gap-4 px-6 text-center`,children:[(0,D.jsx)(`p`,{className:`text-[var(--content-default)]`,children:e(`checkoutPage.awaitingReturnMessage`)}),(0,D.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,D.jsx)(a,{onClick:V,children:e(`checkoutPage.reopenCheckout`)}),(0,D.jsx)(y,{to:j,className:`text-sm text-[var(--content-tertiary)] underline`,children:M})]})]}):(0,D.jsxs)(`div`,{className:`flex h-full w-full flex-col items-center justify-center gap-3`,children:[(0,D.jsx)(S,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`,"aria-label":e(`checkoutPage.preparingCheckoutAriaLabel`)}),(0,D.jsx)(`p`,{className:`text-sm text-[var(--content-tertiary)]`,children:e(`checkoutPage.preparingCheckout`)})]})}function A(){let e=v(),[t]=_(),n=w(t,d.settings.usageBilling);return(0,E.useEffect)(()=>{O(),e(n,{replace:!0})},[e,n]),null}function j(){return i()?(0,D.jsx)(A,{}):(0,D.jsx)(k,{})}export{j as CheckoutPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{xh as e}from"./app-BBUxTj9g.js";import{E as t}from"./vendor-ajttH1pP.js";function n(){return e()!==null||t.isNativePlatform()?`native`:`web`}export{n as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{AS as t,CS as n,DS as r,Hi as i,NS as a,Ph as o,Wc as s,jS as c,kS as l,vo as u}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{AS as t,CS as n,DS as r,Hi as i,NS as a,Ph as o,Wc as s,jS as c,kS as l,vo as u}from"./app-BBUxTj9g.js";import{_ as d,f,g as p,j as m,v as h}from"./vendor-ajttH1pP.js";import{b as g,t as _,x as v}from"./react-B9IgSVeK.js";import{Yn as y,i as b,vt as x}from"./icons-C0wyat6T.js";var S=e(v(),1),C=e(g(),1),w=_();function T(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function E(e,t){let n=[...new Set(t??[])].filter(e=>e.length>0).sort((e,t)=>t.length-e.length);if(n.length===0)return e;let r=n.map(T).join(`|`),i=RegExp(`(?<![\\p{L}\\p{N}])(?:${r})(?![\\p{L}\\p{N}])`,`giu`),a=[],o=0;for(let t of e.matchAll(i))a.push(e.slice(o,t.index)),a.push((0,w.jsx)(`span`,{className:`font-medium text-[var(--content-default)]`,children:t[0]},t.index)),o=t.index+t[0].length;return a.length===0?e:(a.push(e.slice(o)),(0,w.jsx)(w.Fragment,{children:a}))}function D({icon:e,title:n,subtitle:i,snippet:a,highlightTokens:o,shortcut:s,isSelected:c,onClick:u,surface:d=`overlay`}){let f=e;return d===`window`?(0,w.jsxs)(`button`,{type:`button`,role:`option`,"aria-current":c?`page`:void 0,"aria-selected":c,"aria-keyshortcuts":s?t(s):void 0,onClick:u,className:[`flex w-full items-center gap-3 rounded-md px-3 text-left text-sm font-medium outline-none transition-colors`,a?`py-1.5`:`h-10`,c?`bg-[var(--surface-active)] text-[var(--content-default)]`:`text-[var(--content-secondary)] hover:bg-[var(--surface-overlay)] hover:text-[var(--content-default)]`].join(` `),children:[f?(0,w.jsx)(f,{size:16,"aria-hidden":!0,className:c?`shrink-0 text-[var(--content-default)]`:`shrink-0 text-[var(--content-tertiary)]`}):null,(0,w.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,w.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,w.jsx)(`span`,{className:`truncate`,children:n}),i?(0,w.jsx)(`span`,{className:`min-w-0 truncate text-xs text-[var(--content-tertiary)]`,children:i}):null,s?(0,w.jsx)(l,{accelerator:s,variant:`inline`,"aria-hidden":!0,className:`ml-auto shrink-0`}):null]}),a?(0,w.jsx)(`span`,{className:`truncate text-xs font-normal text-[var(--content-tertiary)]`,children:E(a,o)}):null]})]}):(0,w.jsx)(r,{icon:e,"aria-keyshortcuts":s?t(s):void 0,label:(0,w.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,w.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,w.jsx)(`span`,{className:`truncate`,children:n}),i?(0,w.jsx)(`span`,{className:`min-w-0 truncate text-[var(--content-tertiary)] text-body-small-default`,children:i}):null,s?(0,w.jsx)(l,{accelerator:s,variant:`inline`,"aria-hidden":!0,className:`ml-auto shrink-0`}):null]}),a?(0,w.jsx)(`span`,{className:`truncate text-[var(--content-tertiary)] text-body-small-default`,children:E(a,o)}):null]}),active:c,onSelect:u,className:a?`h-auto px-3 py-2`:`px-3 py-2`})}var O=`fixed inset-0 z-50 flex flex-col bg-[var(--surface-lift)]`,k={paddingTop:`var(--safe-area-inset-top, env(safe-area-inset-top, 0px))`,paddingBottom:`var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))`,paddingLeft:`var(--safe-area-inset-left, env(safe-area-inset-left, 0px))`,paddingRight:`var(--safe-area-inset-right, env(safe-area-inset-right, 0px))`},A={...k,pointerEvents:`none`},j=({onKeyDown:e,children:t})=>{let{t:n}=m(),r=h(),i=f(),a=(0,S.useRef)(null);return(0,S.useLayoutEffect)(()=>{if(r)return;let e=document.activeElement;e instanceof HTMLElement&&a.current?.contains(e)&&e.blur()},[r]),(0,w.jsx)(p.div,{ref:a,className:O,style:r?k:A,role:`dialog`,"aria-modal":r?!0:void 0,"aria-hidden":r?void 0:!0,"aria-label":n(`commandPalette.searchAriaLabel`),onKeyDown:e,initial:{y:`100%`,opacity:0},animate:{y:0,opacity:1},exit:{y:`100%`,opacity:0},transition:i?{duration:0}:{duration:.28,ease:[.16,1,.3,1]},children:t})},M=({isOpen:e,onClose:t,query:r,onQueryChange:l,highlightTokens:f,selectedIndex:p,sections:h,isSearching:g=!1,onItemSelect:_,onKeyDown:v,surface:T=`overlay`})=>{let{t:E}=m(),A=s(),M=o(),N=u(),P=i(`commandPalette`),F=P?c(P):null,I=(0,S.useRef)(null),L=(0,S.useRef)(null),R=(0,S.useRef)(null);(0,S.useEffect)(()=>{if(e){let e=requestAnimationFrame(()=>{L.current?.focus()});return()=>cancelAnimationFrame(e)}},[e]),(0,S.useEffect)(()=>{if(!e||!R.current)return;let t=R.current.querySelector(`[aria-current='page']`);t&&t.scrollIntoView({block:`nearest`})},[e,p]);let z=(0,S.useCallback)(e=>{e.target===I.current&&t()},[t]),B=T===`window`,V=A&&!B,H=!N,U=M&&V;if(!e&&!U)return null;let W=0,G=(0,w.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-[var(--border-base)] px-4 py-3`,children:[g?(0,w.jsx)(y,{size:16,"aria-hidden":!0,className:`shrink-0 animate-spin text-[var(--content-tertiary)]`}):(0,w.jsx)(x,{size:16,"aria-hidden":!0,className:`shrink-0 text-[var(--content-tertiary)]`}),(0,w.jsx)(`input`,{ref:L,type:`text`,value:r,onChange:e=>l(e.target.value),placeholder:E(`commandPalette.placeholder`),className:B?`min-w-0 flex-1 bg-transparent text-sm font-medium text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`:`min-w-0 flex-1 bg-transparent text-body-medium-lighter text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`,"aria-label":E(`commandPalette.searchAriaLabel`)}),r?V?(0,w.jsx)(`button`,{type:`button`,className:`shrink-0 text-body-medium-lighter text-[var(--content-tertiary)]`,onClick:()=>l(``),"aria-label":E(`commandPalette.clearSearch`),children:E(`commandPalette.clear`)}):B?(0,w.jsx)(`button`,{type:`button`,className:`flex size-7 shrink-0 items-center justify-center rounded-md text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-overlay)] hover:text-[var(--content-default)]`,"aria-label":E(`commandPalette.clearSearch`),onClick:()=>l(``),children:(0,w.jsx)(b,{size:16,"aria-hidden":!0})}):(0,w.jsx)(a,{variant:`ghost`,size:`compact`,iconOnly:(0,w.jsx)(b,{}),"aria-label":E(`commandPalette.clearSearch`),onClick:()=>l(``),tintColor:`var(--content-tertiary)`}):H&&F?(0,w.jsx)(`kbd`,{className:B?`shrink-0 rounded-md border border-[var(--border-base)] bg-[var(--surface-active)] px-1.5 py-0.5 text-xs font-medium text-[var(--content-secondary)]`:`shrink-0 rounded-md border border-[var(--border-base)] bg-[var(--surface-active)] px-1.5 py-0.5 text-label-small-default text-[var(--content-tertiary)]`,children:F}):null,V?(0,w.jsx)(a,{variant:`ghost`,size:`compact`,iconOnly:(0,w.jsx)(b,{}),expandOnMobile:!1,"aria-label":E(`commandPalette.closeSearch`),onClick:t,tintColor:`var(--content-tertiary)`}):null]}),K=(0,w.jsx)(`div`,{ref:R,className:V?`flex-1 overflow-y-auto overscroll-contain p-2`:`max-h-[360px] overflow-y-auto overscroll-contain p-2`,role:`listbox`,children:h.length===0?(0,w.jsx)(`div`,{className:`px-3 py-6 text-center`,children:(0,w.jsx)(n,{variant:`body-medium-lighter`,className:`text-[var(--content-tertiary)]`,children:E(g?`commandPalette.searching`:`commandPalette.noResults`)})}):h.map(e=>(0,w.jsxs)(`div`,{role:`group`,"aria-label":e.label,children:[(0,w.jsx)(n,{variant:`label-small-default`,as:`div`,className:B?`px-3 pb-1 pt-2 text-xs font-semibold text-[var(--content-tertiary)]`:`px-3 pb-1 pt-2 text-[var(--content-tertiary)] max-md:text-body-small-default`,children:e.label}),e.items.map(e=>{let t=W++;return(0,w.jsx)(D,{icon:e.icon,title:e.title,subtitle:e.subtitle,snippet:e.snippet,highlightTokens:f,shortcut:H?e.shortcut:void 0,isSelected:t===p,onClick:()=>_?.(e,t),surface:T},e.id)})]},e.id))});if(U)return(0,w.jsx)(d,{children:e?(0,w.jsxs)(j,{onKeyDown:v,children:[G,K]},`command-palette-sheet`):null});if(V)return(0,w.jsxs)(`div`,{className:O,role:`dialog`,"aria-modal":`true`,"aria-label":E(`commandPalette.searchAriaLabel`),onKeyDown:v,style:k,children:[G,K]});let q=(0,w.jsx)(`div`,{ref:I,role:`dialog`,"aria-modal":`true`,"aria-label":E(`commandPalette.ariaLabel`),className:T===`window`?`flex h-full w-full items-start justify-center bg-transparent p-3`:`fixed inset-0 z-50 flex items-start justify-center bg-black/40 pt-[15vh]`,onClick:z,onKeyDown:v,children:(0,w.jsxs)(`div`,{className:`flex w-full max-w-[560px] flex-col overflow-hidden rounded-xl border border-[var(--border-base)] bg-[var(--surface-base)] shadow-xl`,children:[G,K]})});return T===`window`?q:(0,C.createPortal)(q,document.body)};export{M as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./command-palette-BD0yvfbb.js";export{e as CommandPalette};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$p as t,Bc as n,Jy as r,_i as i,ca as a,cg as o,gs as s,im as c,sa as l,td as u,tm as d,za as f}from"./app-
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$p as t,Bc as n,Jy as r,_i as i,ca as a,cg as o,gs as s,im as c,sa as l,td as u,tm as d,za as f}from"./app-BBUxTj9g.js";import{t as p,x as m}from"./react-B9IgSVeK.js";import{t as h}from"./command-palette-BD0yvfbb.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=t.use.sessionStatus(),p=c(),m=d();u(),s(!p),n({sessionStatus:e,hasPlatformSession:m});let x=r.use.assistants(),S=r.use.activeAssistantId(),C=o(),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}=f(T,!0),D=(0,g.useCallback)(e=>{let t=b(e);t&&a(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:()=>{l()},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};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var e={build:`建置`,taglineMacOS:`您 Mac 的 AI 助理`,taglineWindows:`您 Windows PC 的 AI 助理`,version:`版本`},t={connecting:`正在連線至您的助理…`,logIn:`登入`,logOut:`登出`},n={cancel:`取消`,credentialSaved:`憑證已儲存。`,description:`新增 API 金鑰或權杖,讓工具和整合功能可以使用它。`,fieldLabel:`欄位`,fieldPlaceholder:`例如 api_token`,labelOptional:`標籤 (選填)`,labelPlaceholder:`例如 GitHub 個人存取權杖`,save:`儲存`,saveFailed:`儲存憑證失敗`,serviceLabel:`服務`,servicePlaceholder:`例如 github`,title:`新增憑證`,valueLabel:`值`,valuePlaceholder:`輸入密碼值`},r={amount:`金額`,cancel:`取消`,configureAutoReload:`設定自動儲值`,continue:`繼續`,description:`您將被重新導向至 Stripe 以完成付款。`,title:`新增點數`},i={openApp:`開啟應用程式`,pin:`釘選`,previewTitle:`{name} 預覽`,unpin:`取消釘選`},a={close:`關閉`,copyLink:`複製連結`,deploy:`部署`,deployToVercel:`部署至 Vercel`,deployToVercelSubtitle:`發佈為靜態頁面`,deployedCopyLinkAria:`已部署至 Vercel,複製連結`,deployedCopyLinkTooltip:`已部署:複製連結`,deployedToVercel:`已部署至 Vercel`,deploying:`正在部署…`,edit:`編輯`,expandApp:`展開應用程式`,fullscreen:`全螢幕`,openApp:`開啟應用程式`,redeploy:`重新部署`,redeploySubtitle:`發佈目前版本`,share:`分享`,shareAndDeploy:`分享並部署`,shareExportSubtitle:`匯出為 .vellum 檔案`,sharing:`正在分享…`},o={exitFullscreen:`結束全螢幕`},s={failed:`連線至助理失敗。`},c={updateFailed:`無法更新「{label}」。您的變更已還原。`},l={accent:`強調色`,accentAutomatic:`自動`,accentPickerLabel:`強調色`,accentReset:`重設`,body:`身體`,color:`顏色`,eyes:`眼睛`,keepUploadedDescription:`儲存角色將會取代它`,keepUploadedLabel:`保留您上傳的圖片`,loadError:`無法載入虛擬替身元件。請確認您的助理正在執行。`,name:`名稱`,next:`下一個 {label}`,previous:`上一個 {label}`,randomize:`隨機化`,save:`儲存`,saving:`正在儲存…`,title:`更新虛擬替身`,uploadImage:`上傳圖片`,uploadedAlt:`已上傳的虛擬替身`,useCharacterDescription:`從我們內建的虛擬替身中選擇`,useCharacterLabel:`改用角色`},u={bySigner:`由 {name}`,cancel:`取消`,capabilities:`功能`,createdBy:`建立者`,hideWarnings:`隱藏警告 ({count})`,install:`安裝`,installAnyway:`仍要安裝`,loading:`正在載入...`,showWarnings:`顯示警告 ({count})`,size:`大小`},d={body:`您的助理透過您自行設定的供應商發聲。請在<settingsLink>模型與服務</settingsLink>中設定其語音。`},f={verifyTitle:`最後一步:確認您的身分`,verifyAction:`驗證我`,verifyBody:`您的助理還不知道哪個 {channel} 帳號是您的,所以暫時不會回覆您。在聊天中說「在 {channel} 上驗證我」即可完成。`,verifyActionBody:`您的助理還不知道哪個 {channel} 帳號是您的,所以暫時不會回覆您。它會在聊天中陪您完成。`,verifiedTitle:`身分已驗證`,verifiedBody:`您的助理已識別您的 {channel} 帳號,會回覆您。一切就緒。`},p={alt:`助理頭像`,fallbackLetter:`V`},m={alt:`助理頭像`},h={actionsTitle:`{title} 動作`},g={ariaLabel:`指令面板`,clear:`清除`,clearSearch:`清除搜尋`,closeSearch:`關閉搜尋`,noResults:`沒有結果`,placeholder:`搜尋對話、記憶…`,searchAriaLabel:`搜尋`,searching:`正在搜尋…`},_={ariaLabel:`介紹您的助理`,back:`上一步`,call:{click:`點擊`,line:`正在聆聽`,shortcut:`快速鍵`},close:`關閉`,done:`知道了`,draw:{body:`指出螢幕上的任何內容`,title:`標註`},idle:{body:`把游標移到我上面,我就出來。`,title:`嘿,是我`,titleNamed:`嘿,我是 {name}`},key:{scolded:`不是這個,是鍵盤上的那個鍵`},meet:{body:`我會留在您的桌面上,即使 Vellum 沒有顯示。`},mute:{body:`點擊麥克風把自己靜音,點擊喇叭把我靜音`,title:`靜音`},next:`下一步`,share:{body:`把分頁、視窗或整個螢幕分享給我`,title:`分享您的螢幕`},talk:{body:`點擊我就能開始對話。`,gesture:`或者連按兩次這個鍵:`,greeted:`成功了!就這麼簡單。`,prompt:`我會請求使用您的麥克風`,title:`和我說話`},try:{body:`跟我打個招呼,我會說出聲來回答。`,how:`點擊我,或連按兩次這個鍵`,title:`試試看`}},v={allow:`允許`,confirm:`確認`,credentialLabel:`憑證`,defaultSuffix:`(預設)`,deny:`拒絕`,dismiss:`關閉`,enter:`輸入`,microphoneFallback:`麥克風 {index}`,microphonePermissionHint:`允許存取麥克風後即可依名稱查看每個麥克風。`,microphoneTitle:`麥克風`,needsCredentials:`需要憑證`,needsCredentialsFor:`需要 {service} 的憑證`,needsOkCount:`{count, plural, other {有 # 項需要你的同意}}`,notNow:`暫不`,openApp:`開啟 Vellum`,pendingBadge:`{count, plural, other {有 # 項需要你的同意}}`,previewVoice:`試聽 {voice}`,review:`檢視`,savedMicrophone:`已儲存的麥克風`,savedMicrophoneNotConnected:`已儲存的麥克風(未連接)`,stopPreview:`停止試聽`,surfaceFallback:`有內容要給你看`,systemDefault:`系統預設`,voiceTitle:`聲音`},y={calling:`正在呼叫…`,callingNamed:`正在呼叫 {name}…`,captureKind:`來源類型`,captureNothing:`沒有可顯示的內容`,capturePicker:`教學來源`,captureScreen:`螢幕 {n}`,captureScreens:`螢幕`,captureTabs:`Chrome 分頁`,captureWindows:`視窗`,endSession:`結束會話`,muteAssistant:`將助理靜音`,muteAssistantNamed:`將 {name} 靜音`,muteMicrophone:`將麥克風靜音`,notNow:`暫不`,offerCopy:`複製`,offerDiscard:`捨棄`,offerHeard:`{app} 已貼上那段`,offerNowhere:`沒有地方可以放`,offerQuit:`結束 {app}`,offerUse:`使用 Vellum 的版本`,offerVersion:`Vellum 聽到的是`,openVellum:`開啟 Vellum`,share:`共享`,sharePicker:`共享來源`,showSummary:`顯示摘要`,stopTeaching:`停止教學`,summarizing:`正在摘要`,talk:`交談`,teach:`教學`,unmuteAssistant:`解除助理靜音`,unmuteAssistantNamed:`解除 {name} 靜音`,unmuteMicrophone:`解除麥克風靜音`,dictating:`正在聆聽`,dictatingTranscribing:`正在思考`,draw:`繪製`,clearMarks:`清除標記`,drawTools:`繪圖工具`,drawFreehand:`自由繪製`,drawLine:`直線`,drawBox:`方框`,drawCircle:`圓形`,chooseMicrophone:`選擇麥克風`,chooseVoice:`選擇聲音`},b={sharingScreen:`正在分享你的螢幕`,sharingScreenNamed:`正在與 {name} 分享你的螢幕`,sharingWindow:`正在分享一個視窗`,sharingWindowNamed:`正在與 {name} 分享一個視窗`,teaching:`正在教學`,teachingNamed:`正在教 {name}`},x={copiedAria:`已複製`,copyFailed:`無法複製檔案內容。`,copyFileContentsAria:`複製檔案內容`,downloadFileAria:`下載檔案`,editFileAria:`編輯檔案`},S={untitled:`未命名`},C={copied:`已複製`,copyFailed:`無法複製到剪貼簿。`},w={cancel:`取消`,create:`建立`,description:`佈建一個新助理。它將在背景啟動。`,namePlaceholder:`助理名稱(選填)`,title:`新助理`,toastSuccess:`新助理已建立。`},T={ariaLabel:`日期範圍`,lastDays:`{days, plural, other {過去 # 天}}`},E={delete:`刪除`,deleting:`正在刪除…`,message:`"{name}" 將會被永久移除。`,title:`刪除應用程式`},D={confirmLabel:`讓您的助理處理`,confirmLabelNamed:`讓 {assistantName} 處理`,message:`"{appName}" 使用後端服務,這些服務無法在靜態 Vercel 頁面上運作。您的助理可以使用無伺服器函式正確部署它。`,messageNamed:`"{appName}" 使用後端服務,這些服務無法在靜態 Vercel 頁面上運作。{assistantName} 可以使用無伺服器函式正確部署它。`,title:`此應用程式需要完整部署`},O={appExported:`應用程式已匯出`,deployFailed:`部署失敗`,deployedToVercel:`已部署至 Vercel`,open:`開啟`,shareFailed:`分享應用程式失敗`},k={tooltip:`停止`},A={copy:`複製`,expandedValue:`展開的值`,showLess:`顯示較少`,showMore:`顯示更多`},j={stopRecording:`停止錄音`},M={ariaLabel:`加入 Vellum Discord 社群`,ctaLong:`加入 Discord`,ctaShort:`加入`,subtitleLong:`與團隊交流 - 分享意見回饋、提出功能需求、更快獲得解答`,subtitleShort:`分享意見回饋、提出功能需求、更快獲得解答`,title:`加入我們的社群!`},N={instructions:`貼上您從「機器人」頁面複製的機器人金鑰。`,verificationNoticeTitle:`請忽略「驗證您的應用程式」頁面`,verificationNoticeBody:`Discord 對每個新應用程式都會顯示它。只有超過 100 個伺服器時才有意義。`,botTokenLabel:`機器人金鑰`,save:`連線`,saving:`正在連線...`,saved:`已連線。接下來,將機器人新增至伺服器。`,botTokenPlaceholder:`MTk4NjIyNDgzNzAyNDU0...`},P={inPortal:`在 Discord 開發者入口網站中:`,stepCreateApp:`點擊<strong>New Application</strong>,並用您助理的名字命名應用程式:`,copyName:`複製名稱`,copied:`已複製!`,stepAppIcon:`可選:下載頭像,然後在<strong>一般資訊</strong>頁面上傳為應用程式圖示。`,stepResetToken:`前往應用程式選單中的<strong>機器人</strong>頁面,點擊<strong>重設金鑰</strong>並立即複製金鑰。Discord 只會顯示一次。`,stepIntentsOff:`在同一頁面,保持三個<strong>特權閘道意圖</strong>開關全部關閉。您的助理不需要它們:它只會讀取私訊和提及它的訊息。`,openPortal:`開啟 Discord 入口網站`,continue:`我已擁有金鑰`},F={connectedTitle:`機器人已新增`,connectedBody:`金鑰已儲存,機器人已加入您的伺服器。Discord 這邊已完成。`},I={instructions:`機器人加入伺服器前什麼都看不到、也無法回覆。開啟連結,選擇您的伺服器並核准。`,openInvite:`新增至伺服器`,confirmJoined:`我已新增機器人`,noAppId:`請先連線機器人金鑰,然後再回來將其新增至伺服器。`},L={channelLabel:`Discord`,stepCreate:`建立應用程式`,stepConnect:`連線`,stepInvite:`新增至伺服器`,stepFinish:`完成`,copyError:`無法複製名稱。請改為在 Discord 中輸入。`},R={acknowledge:`確認`,acknowledging:`正在確認...`,cleanupBody:`提示您的助理釋出空間,以免空間用盡並進入鎖定狀態。`,cleanupTitle:`清理模式已啟用`,criticalBody:`如果儲存空間用盡,您的助理將進入鎖定狀態。`,criticalModalDescription:`如果儲存空間用盡,您的助理將進入鎖定狀態。您應該提示您的助理釋出空間或增加儲存空間。`,criticalTitle:`儲存空間嚴重不足`,dontShowAgain:`不再顯示`,manageStorage:`管理儲存空間`,review:`檢閱`,upgrade:`升級`,warningBody:`釋出空間以避免中斷。`,warningBodyWithUpgrade:`釋出空間或增加更多儲存空間以避免中斷。`,warningTitle:`您的儲存空間即將用盡`},z={failed:`下載失敗`,revealMac:`在 Finder 中顯示`,revealWindows:`在檔案總管中顯示`,saved:`已儲存至「下載」`,started:`下載已開始`,startedDescription:`請在瀏覽器的下載內容中尋找 {filename}。`},B={discard:`捨棄`,save:`儲存`,saving:`正在儲存…`},V={copyAriaLabel:`複製邀請連結`,createFailed:`建立邀請連結失敗。請確認您的助理已啟用 A2A。`,creating:`正在建立邀請連結…`,done:`完成`,shareHint:`與另一位助理擁有者分享此連結以建立連線。`,title:`分享連線連結`,tryAgain:`再試一次`},H={ariaLabel:`Vellum 在 GitHub 上是開放原始碼`,ctaAriaLabel:`在 GitHub 上為 Vellum 加星`,ctaLabel:`為我們加星`,subtitle:`在 GitHub 上為我們加星或貢獻`,title:`Vellum 是開放原始碼`},U={loadError:`此區段無法載入。請重新載入頁面再試一次。`},W={goToConversation:`前往對話`},G={ariaLabelMacOS:`下載 macOS 應用程式`,ariaLabelWindows:`下載 Windows 應用程式`,ctaAriaLabelMacOS:`下載 macOS 應用程式`,ctaAriaLabelWindows:`下載 Windows 應用程式`,ctaLabel:`下載`,subtitle:`電腦使用 · 終端機存取 · 原生自動化`,titleMacOS:`取得 macOS 應用程式`,titleWindows:`取得 Windows 應用程式`},K={bannerAria:`下載 {appName} 應用程式`,bannerAriaGeneric:`下載 Vellum 行動應用程式`,download:`下載`,downloadAppAria:`下載 {appName} 應用程式`,downloadAppAriaGeneric:`下載 Vellum 行動應用程式`,subtitle:`推播通知 · 生物辨識登入 · 觸覺回饋`,title:`取得 {appName} 應用程式`,titleGeneric:`取得 Vellum 應用程式`},q={backToAssistant:`返回您的助理`,badge:`錯誤 404`,body:`您要尋找的頁面不存在或可能已移動。`,goBack:`返回`,title:`找不到頁面`},J={dismissAria:`關閉`},Y={back:`返回`},X={cancel:`取消`,logIn:`登入`},Z={assistantHandleIdleEmpty:`您的助理尚未設定識別名稱,請設定一個以便提及。`,assistantHandleLabel:`助理識別名稱`,assistantHandleUpdated:`助理識別名稱已更新。`,available:`可用`,availableHelper:`可用。`,checkAvailabilityFailed:`無法檢查可用性。`,checkingAvailability:`正在檢查可用性…`,chooseDifferentHandle:`請選擇不同的識別名稱。`,emailLabel:`電子郵件`,handleHelper:`小寫字母、數字、連字號和底線。3–30 個字元。`,handleLocked:`您的助理識別名稱已鎖定,因為它被用作電子郵件子網域。若要變更,請先<releaseLink>釋放子網域</releaseLink>。`,loading:`正在載入您的個人資料…`,notAvailable:`不可用`,profileUpdated:`個人資料已更新。`,save:`儲存`,saved:`已儲存`,saving:`正在儲存…`,subtitle:`管理您的帳號詳細資料和偏好設定。`,title:`個人資料`,userHandleIdleAutoGenerated:`您的識別名稱是在註冊時自動產生的 - 請選擇一個您喜歡的。`,userHandleLabel:`使用者識別名稱`},Q={created:`已建立個人資料「{name}」`},$={logoAlt:`Vellum`,placeholder:`詢問 Vellum 任何問題…`},ee={copied:`已複製!`,copyError:`無法複製推薦連結。`,copySuccess:`已複製到剪貼簿!`,creditsEarned:`已賺取點數`,friendsReferred:`已推薦好友`,gatedTooltip:`訂閱或購買點數以開始賺取!`,loadError:`載入推薦資訊失敗。`,loading:`載入中...`,shareLink:`分享連結`,subtitleDefault:`與好友分享 Vellum,每次註冊均可賺取點數。`,subtitleWithAmounts:`與好友分享 Vellum - 他們註冊後,您和好友將各獲得 {creditAmount} 點數,總計最高可達 {earningCap}。`},te={title:`賺取免費點數`},ne={confirm:`移除`,messageOrigin:`這不會影響 {assistantName} 或讓您在那裡登出。它只會忘記此裝置上的項目。您可以隨時再次新增。`,messagePaired:`這不會影響 {assistantName} 在其主機上的狀態。它只會忘記此裝置上的配對。您可以隨時使用 vellum connect import 再次配對。`,messagePlatform:`這不會刪除 {assistantName}。它只會將其從此裝置移除。登入後它將再次可用。`,title:`從此裝置移除?`},re={body:`您的助理正在努力工作並達到其目前的資源限制。請升級以確保其順暢執行。`,bodyNoUpgrade:`您的助理正在努力工作並達到其目前的資源限制。`,dontShowAgain:`不再顯示`,title:`您的助理需要更多資源`,titleNamed:`{assistantName} 需要更多資源`,upgrade:`升級`},ie={confirmLabel:`停用`,message:`這將永久停用此助理及其所有資料。您需要再次完成引導流程才能建立新的助理。此動作無法復原。`,title:`停用助理`},ae={loadingAria:`正在載入`},oe={loadingAria:`正在載入`},se={unnamedAssistant:`該助理`},ce={chunkFailBody:`此區段無法載入。可能是網路瞬斷或版本過舊。請重新載入頁面再試一次。`,reload:`重新載入`},le={confirmMessage:`更新至版本 {version}?更新期間助理將暫時無法使用。`,confirmTitle:`更新助理執行環境`,later:`稍後`,title:`有新的助理版本可用:{version}`,toastComplete:`更新完成。您的助理運作正常。`,toastFailed:`無法觸發更新。請再試一次。`,update:`更新`},ue={ariaLabel:`{name} 動作`},de={reset:`重設`,save:`儲存`},fe={label:`分享連線連結`},pe={aboutDiagnosticsAria:`關於診斷資訊`,addFiles:`新增檔案`,adminOnlyHint:`僅限管理員 - 在本機建立診斷封存檔並下載,而非提交意見回饋或通知 Slack。`,attachments:`附件`,bugTip:`提示:在我們的 <discordLink>Discord 社群</discordLink> 發文可獲得更快的支援`,cancel:`取消`,category:`類別`,closeAria:`關閉`,diagnosticsTooltip:`診斷資訊包含瀏覽器內容、助理日誌和時間戳記 - 絕不包含密碼或憑證。`,downloadDiagnostics:`直接下載診斷資訊`,downloadDiagnosticsAria:`直接下載診斷資訊`,downloadDiagnosticsButton:`下載診斷資訊`,dropFiles:`拖曳檔案以附加…`,email:`電子郵件`,featureTip:`提示:在我們的 <roadmapLink>公開藍圖</roadmapLink> 上為功能投票`,includeConversation:`包含最近的對話`,includeConversationAria:`包含最近的對話`,includeDiagnostics:`包含診斷資訊`,includeDiagnosticsAria:`包含瀏覽器診斷資訊`,messageLabelBug:`哪裡出錯了?`,messageLabelFeature:`描述您的想法`,messageLabelOther:`您有什麼想法?`,messagePlaceholderBug:`您預期會發生什麼,而實際發生了什麼?`,messagePlaceholderFeature:`這將為您解決什麼問題?`,messagePlaceholderOther:`分享您的想法...`,preparingDiagnostics:`正在準備診斷資訊…`,reasonBugReport:`錯誤報告`,reasonFeatureRequest:`功能請求`,reasonOther:`其他`,removeAttachmentAria:`移除 {name}`,sendingFeedback:`正在傳送意見回饋…`,submit:`提交`,timeRange:`時間範圍`,timeRangeAllTime:`所有時間`,timeRangeAria:`診斷資訊時間範圍`,timeRangePast24Hours:`過去 24 小時`,timeRangePastHour:`過去一小時`,title:`分享意見回饋`},me={loadingAria:`正在載入意見回饋表單`},he={close:`關閉`,message:`無法載入意見回饋表單。`,retry:`再試一次`},ge={closeAria:`關閉`,closeSidebarAria:`關閉側邊欄`,openSidebarAria:`開啟側邊欄`},_e={backFrom:`從 {title} 返回`,backToMenu:`返回 {title} 選單`,navigationAria:`{title} 導覽`},ve={ariaLabel:`側邊欄導覽`},ye={label:`從此對話中學習`},be={message:`從此助理中移除「{name}」?`,remove:`移除`,title:`移除技能`},xe={approvalNotice:`如果 Slack 顯示「請求核准」而非 <strong>安裝</strong>,則工作區管理員需要先核准此應用程式。`,createdApp:`我已建立應用程式`,inSlack:`在 Slack 中:`,stepManifest:`在<strong>或以您自己的方式開始</strong>下方,選擇<strong>從資訊清單</strong>,然後<strong>繼續</strong>`,stepPaste:`選擇您的工作區並貼上資訊清單`,stepReview:`檢閱權限,然後點擊<strong>建立並安裝</strong>`},Se={appName:`應用程式名稱`,appNamePlaceholder:`我的助理`,copied:`已複製!`,copyManifest:`複製資訊清單`,description:`描述 (選填)`,descriptionHelper:`顯示在應用程式的 Slack 個人資料中。`,descriptionPlaceholder:`此助理提供哪些協助`,intro:`為您的 Slack 應用程式命名並複製其資訊清單。所有權限和設定皆已預先配置。`,next:`下一步`},Ce={body:`在新分頁中開啟 Slack 以建立應用程式,然後返回此處查看後續步驟。`,copied:`已複製!`,copyManifest:`複製資訊清單`,manifestCopiedNotice:`您已在此處複製此應用程式的資訊清單。如果您之後有複製任何其他內容,請在貼上前再次複製。`,manifestNotCopiedNotice:`您尚未複製此應用程式的資訊清單。Slack 的建立應用程式彈出視窗沒有其他方式可以取得,因此請在貼上前複製它。`,next:`下一步`,openSlack:`開啟 Slack`},we={appTokenLabel:`應用程式權杖`,botTokenLabel:`機器人權杖`,connectSlack:`連接 Slack`,connecting:`正在連接…`,credentialsSaved:`憑證已儲存`,instructions:`在 Slack 的確認畫面中,展開 <credentials>您的應用程式憑證</credentials> 並複製兩個權杖。`,skipNotice:`該畫面也提供命令列逐步說明和一個 <download>下載應用程式檔案</download> 按鈕。請跳過這兩項。它們會設定一個獨立的本機應用程式,而此助理只需要這兩個權杖。`,savedBody:`兩個金鑰都已儲存。Slack 這邊已完成。`},Te={channelLabel:`Slack`,copyError:`無法複製清單。請在繼續之前重新複製。`,stepConnect:`連接`,stepCreate:`建立`,stepName:`名稱`,stepOpen:`開啟`},Ee={total:`總計:{value}`},De={reloadApp:`重新載入應用程式`},Oe={reconnecting:`正在重新連線至你的助理…`,dismiss:`關閉`,goToDoctor:`前往診斷`,resumeAssistant:`恢復助理`,retryNow:`立即重試`,wakeUp:`喚醒`},ke={allLanguages:`所有語言`,featured:`精選`,languagesAriaLabel:`語言`,noMatch:`無符合的語言。`,searchAriaLabel:`搜尋語言`,searchPlaceholder:`搜尋語言`,suggested:`建議`},Ae={description:`從您下次語音輸入開始生效。`},je={apiKeyLabel:`API 金鑰`,apiKeyPlaceholderReplace:`•••••••• (輸入新金鑰以取代)`,providerAriaLabel:`語音轉文字提供者`,providerLabel:`提供者`,saveFailed:`儲存語音轉文字設定失敗`,saveSuccess:`語音轉文字設定已儲存`,spokenLanguage:`口說語言`,spokenLanguageApplies:`從您下次語音輸入開始生效。`,vellumTranscription:`轉錄會透過您的 Vellum 帳戶執行。`,windowsNativeDisplayName:`Windows 原生聽寫`,windowsNativeSetupWarning:`需要為您的 Windows 顯示語言啟用基本語音辨識:開啟「設定」>「時間與語言」>「語言與區域」,選取顯示語言旁邊的三個點,選擇「語言選項」,然後在「語言功能」下下載「基本語音辨識」。`,windowsNativeSubtitle:`Windows 裝置上的語音辨識,透過 Windows 輔助程式在本機執行。可離線運作且不需要 API 金鑰。`},Me={ariaLabel:`子助理 {subagentId}`},Ne={accessibilityDescription:`允許您的助理代表您點擊、輸入和控制應用程式。`,accessibilityLabel:`輔助使用`,checking:`正在檢查權限...`,dockIcon:`Dock 圖示`,microphoneDescription:`允許您的助理擷取音訊以進行語音輸入和錄音。`,microphoneLabel:`麥克風`,notificationBadgesDescription:`允許您的助理在 {surface} 上顯示未讀對話計數。`,notificationBadgesLabel:`通知標記`,notificationsDescription:`允許您的助理傳送 macOS 警示以進行核准、訊息和任務更新。`,notificationsLabel:`通知`,notificationsWindowsDescription:`允許您的助理顯示 Windows 通知以進行核准、訊息和任務更新。`,screenDescription:`允許您的助理在電腦使用任務期間擷取螢幕內容。`,screenLabel:`螢幕錄影`,speechRecognitionDescription:`允許您的助理在裝置上將您的語音轉錄為文字。`,speechRecognitionLabel:`語音辨識`,speechRecognitionWindowsDescription:`允許您的助理使用 Windows 語音辨識將您的語音轉錄為文字。`,taskbarIcon:`工作列圖示`,title:`系統權限`},Pe={botTokenLabel:`機器人權杖`,connectTelegram:`連接 Telegram`,instructions:`貼上 BotFather 回覆中的權杖。它是 <tokenLine>Use this token to access the HTTP API</tokenLine> 之後的整行內容。`,saving:`正在儲存…`,savedTitle:`權杖已儲存`,savedBody:`機器人金鑰已儲存。Telegram 這邊已完成。`},Fe={copied:`已複製!`,copyName:`複製名稱`,displayNameHint:`對於顯示名稱,<strong>{suggestedName}</strong> 可讓此機器人與您的助理相符。使用者名稱是獨立的,不一定要相符。`,chatScopeNotice:`支援私人聊天與群組。在群組中,助理會在被提及或有人回覆它時回應。不支援廣播頻道。`,inBotFather:`在 BotFather 中:`,intro:`Telegram 機器人是透過傳送訊息給 <strong>@BotFather</strong> 來建立的。開啟它,按照提示操作,然後帶著它給您的權杖回來。`,next:`下一步`,openBotFather:`開啟 BotFather`,stepDisplayName:`給它一個顯示名稱,這是人們在聊天中看到的名稱`,stepSendNewBot:`傳送 <strong>/newbot</strong>`,stepTokenReply:`BotFather 會在 <strong>Use this token to access the HTTP API</strong> 之後回覆一個權杖`,stepUsername:`給它一個使用者名稱,該名稱必須是唯一的並以 <strong>bot</strong> 結尾`},Ie={channelLabel:`Telegram`,copyError:`無法複製名稱。請改為在 BotFather 中輸入。`,stepConnect:`連接`,stepCreate:`建立機器人`},Le={shopifyLabel:`商店網域`,shopifyPlaceholder:`your-store.myshopify.com`},Re={recoveryModeBanner:`復原模式已啟用:此工作階段已連接到偵錯終端機。`},ze={accentFill:`強調色填充`,activeBorder:`啟用邊框`,activeSurface:`啟用表面`,assistantBubble:`助理的回覆,以全寬顯示在頁面表面上。`,buttonDisabled:`已停用`,buttonPrimary:`主要`,buttonSecondary:`次要`,chatAssistant1:`完成。摘要已備妥。營收穩定成長,上季標記的兩個風險已解決,我已將值得展示的三張圖表匯出到獨立頁面。`,chatAssistant2:`已排定上午 9 點。我會附上圖表和一段式版本,供手機快速瀏覽者參考。`,chatUser1:`你能在明天的會議前總結季度報告嗎?`,chatUser2:`太好了。早上發送給團隊。`,composerPlaceholder:`傳訊息給你的助理`,faintText:`淡色文字 - 漸層中最後一個清晰可辨的步驟。`,inputFilled:`已輸入到欄位中的文字。`,inputPlaceholder:`空白欄位中的預留位置`,newConversation:`新對話`,overlaySurface:`疊加表面`,primaryText:`主要文字 - 應用程式的主要閱讀表面。`,quietText:`靜態文字 - 中繼資料和時間戳記。`,raisedCard:`凸起卡片`,raisedCardBody:`凸起表面位於面板和頁面背景上方。`,samplerTitle:`主題範例`,secondaryText:`次要文字 - 輔助文案和說明。`,sectionAccent:`強調`,sectionButtons:`按鈕`,sectionInputs:`輸入`,sectionMessages:`訊息`,sectionSurfaces:`表面和邊框`,sectionText:`文字`,send:`傳送`,subtleDivider:`此行上方的細分隔線。`,tertiaryText:`第三層文字 - 標題、標籤和預留位置。`,userBubble:`使用者在其對話框中的訊息。`},Be={dark:`深色`,label:`主題`,light:`淺色`,system:`系統`,velvet:`絲絨`},Ve={apiKey:`API 金鑰`,apiKeyRequired:`測試前請為此供應商儲存 API 金鑰。`,chooseFromCatalog:`從目錄中選擇`,customVoiceIdAriaLabel:`自訂語音 ID`,noManagedVoices:`目前沒有可用的受管理語音。`,provider:`供應商`,providerAriaLabel:`TTS 供應商`,saveFailed:`儲存語音轉文字設定失敗`,saved:`語音轉文字設定已儲存`,test:`測試`,testing:`正在測試…`,voice:`語音`,voiceId:`語音 ID`,voiceIdPlaceholder:`輸入語音 ID`},He={available:`有可用的更新。正在開始下載…`,closeAriaLabel:`關閉`,downloading:`正在下載更新…`,ready:`Vellum {version} 已備妥。`,restartToInstall:`重新啟動以安裝`,versionFallback:`更新`},Ue={deleteFailed:`刪除應用程式失敗`},We={copyFailed:`無法複製連結。請在 {url} 開啟。`,linkCopied:`連結已複製`,open:`開啟`},Ge={setupPrompt:{slack:`我想在 Slack 上聯絡你。我們來設定吧。`,telegram:`我想在 Telegram 上聯絡你。我們來設定吧。`,discord:`我想在 Discord 上聯絡你。我們來設定吧。`,email:`我想寄電子郵件給你。我們來設定你的電子郵件地址。`,phone:`我希望能打電話給你。我們來設定你的電話號碼。`},finishPrompt:{slack:`Slack 已設定但無法運作。你能完成它嗎?`,telegram:`Telegram 已設定但無法運作。你能完成它嗎?`,discord:`Discord 已設定但無法運作。你能完成它嗎?`,email:`我的電子郵件地址已設定但無法運作。你能完成它嗎?`,phone:`我的電話號碼已設定但無法運作。你能完成它嗎?`}},Ke={addFailed:`加入書籤失敗。`,removeFailed:`移除書籤失敗。`},qe={exchangeFailed:`檢查貼上的金鑰,然後再試一次。`,failed:`連線 Claude 失敗。請再試一次。`,notStarted:`請先啟動連線 Claude 流程。`,pasteEmpty:`請貼上 Claude 頁面上顯示的程式碼。`,popupBlocked:`您的瀏覽器阻擋了登入分頁。請允許此網站的彈出視窗,然後再按一下「連線」。`,startFailed:`無法啟動連線 Claude。請再試一次。`,timedOut:`等待 Claude 連線逾時。請再試一次。`},Je={accountConnected:`{name} 帳號已連線。`,authorizationError:`{name} 錯誤:{code}`,authorizationFailed:`{name} 授權失敗`,popupBlocked:`彈出視窗已阻擋。請啟用彈出視窗,然後再試一次。`,startFailed:`無法啟動 {name} 授權。`,startFailedWithReason:`無法啟動 {name} 授權:{reason}`},Ye={blocked:`您的瀏覽器阻擋了助理嘗試開啟的頁面。`,openPage:`開啟頁面`},Xe={playFailed:`無法播放語音樣本。`},Ze={updated:`主題已更新`},Qe={body:`輸入您的 Vercel API 金鑰,以將應用程式部署為靜態頁面。`,cancel:`取消`,createToken:`在 Vercel 上建立金鑰 →`,save:`儲存`,saveFailed:`無法儲存 Vercel 金鑰。`,saving:`正在儲存…`,title:`連線 Vercel`,tokenLabel:`API 金鑰`,tokenPlaceholder:`Vercel API 金鑰`},$e={assistantVoiceAriaLabel:`助理語音`,defaultSuffix:`(預設)`,previewVoice:`預覽 {description}`,providerAriaLabel:`語音提供者`,stopPreview:`停止預覽`},et={ariaLabel:`語音`,selectVoice:`選取語音`},tt={done:`完成`,title:`語音`},nt={body:`語音提供者、轉錄和 API 金鑰位於<modelsLink>模型與服務</modelsLink>中。`},rt={recommendedOff:`建議關閉`,userTranscriptLabel:`顯示你說的話`,userTranscriptDescription:`在你說話時即時轉錄文字。`,assistantTranscriptLabel:`顯示助手說的話`,assistantTranscriptDescription:`在語音回覆旁同步顯示文字。`},it={developer:`開發人員`,file:`檔案`,help:`說明`,view:`檢視`},at={checkingDomain:`正在檢查網域…`,domainVerified:`網域已驗證`,failedTitle:`網域驗證失敗。DNS 記錄可能未正確傳播。您可以嘗試釋放並重新註冊網域。`,unknownStatus:`未知狀態`,unknownStatusTitle:`無法擷取網域驗證狀態。`,verificationFailed:`驗證失敗`,verifiedTitle:`DNS 記錄已驗證。您的網域已準備好傳送和接收電子郵件。`,verifyingDomain:`正在驗證網域…`,verifyingTitle:`DNS 記錄已佈建。正在等待電子郵件提供者驗證它們 - 這通常需要幾分鐘。`,setupRequired:`需要設定網域`,setupRequiredTitle:`此網域尚未在電子郵件提供者完成佈建。在完成設定前,它無法傳送或接收電子郵件。`},ot={body:`受管服務按用量計費,並從您的 Vellum 帳戶餘額中扣除。<link>檢視定價</link>`},st={managedLabel:`受管`,modeToggleAriaLabel:`服務模式`,yourOwnLabel:`自有`},ct={previewAlt:`您的助理頭像`,download:`下載頭像`,prompt:{slack:`下載您的助理頭像,以上傳為應用程式圖示。`,discord:`下載您的助理頭像,以上傳為機器人圖示。`,telegram:`下載您的助理頭像,然後透過 /setuserpic 傳送給 BotFather。`}},lt={strict:{label:`嚴格`,description:`執行任何操作前均需確認。不自動批准任何操作。`},conservative:{label:`保守`,description:`自動批准低風險操作,例如網路搜尋以及在其自身工作區中讀寫檔案。`},relaxed:{label:`寬鬆`,description:`自動批准低風險與中等風險操作,例如修改其工作區之外的檔案。`},fullAccess:{label:`完全存取`,description:`自動批准所有操作,包括高風險和無法識別的指令。助手將絕不請求權限確認。`}},ut={everyHours:`每 {count} 小時`,everyMinutes:`每 {count} 分鐘`,retrospectiveSubtitle:`在對話活動後觸發`},dt={title:`助理使用者名稱`,description:`你的助理的公開名稱,它的電子郵件地址也以這個名稱為基礎。`,helper:`小寫字母、數字、連字號和底線。`},ft={aboutPage:e,activeAssistantGate:t,addCredentialModal:n,addCreditsModal:r,appCard:i,appNavBar:a,appViewerContainer:o,assistantConnect:s,assistantFeatureFlagStore:c,avatarManagementModal:l,bundleConfirmPage:u,byoVoiceNote:d,channelSetupCompleteNotice:f,chatAvatar:p,chooserAvatarChip:m,collapsibleNavSection:h,commandPalette:g,companionIntro:_,companionPopover:v,companionSurface:y,companionWatchFramePage:b,contentActionBar:x,conversationTitle:S,copyButton:C,createAssistantDialog:w,dateRangeSelect:T,deleteAppDialog:E,deployDialogs:D,deployStore:O,detailPanelStopButton:k,detailPrimitives:A,dictationOverlayPage:j,discordNudgeBanner:M,discordSetupConnectStep:N,discordSetupCreateStep:P,discordSetupFinishStep:F,discordSetupInviteStep:I,discordSetupWizard:L,diskPressureBanner:R,downloadFeedback:z,editFooter:B,generateInviteLinkDialog:V,githubNudgeBanner:H,lazyBoundary:U,localNotification:W,desktopAppBanner:G,nativeAppBanner:K,notFound:q,nudgeChatBanner:J,onboardingBackButton:Y,platformLoginNotice:X,profileCard:Z,profileQuickAddProvider:Q,quickInputPage:$,referralContent:ee,referralModal:te,removeFromDeviceDialog:ne,resourcePressureBanner:re,retireConfirmDialog:ie,rootHydrateFallback:ae,routePendingIndicator:oe,rootLayout:se,routeErrorBoundary:ce,runtimeUpgradeBanner:le,sectionActionsButton:ue,serviceFormControls:de,shareConnectionLinkButton:fe,shareFeedbackModal:pe,shareFeedbackModalFallback:me,shareFeedbackModalLoadError:he,sideListDrawer:ge,sidebarShell:_e,sidebarTree:ve,skillLineageLink:ye,skillRemovalDialog:be,slackSetupCreateStep:xe,slackSetupNameStep:Se,slackSetupOpenStep:Ce,slackSetupTokensStep:we,slackSetupWizard:Te,stackedBarTooltip:Ee,startupFailure:De,statusBanner:Oe,sttLanguagePicker:ke,sttLanguagePickerModal:Ae,sttProviderForm:je,subagentAvatarChip:Me,systemPermissionsCard:Ne,telegramSetupConnectStep:Pe,telegramSetupCreateStep:Fe,telegramSetupWizard:Ie,tenantHost:Le,terminalPanel:Re,themeStagePage:ze,themeToggle:Be,ttsProviderForm:Ve,updateToast:He,useAppDelete:Ue,useAppDeployment:We,useAssistantChannels:Ge,useBookmarks:Ke,useConnectClaude:qe,useOauthConnect:Je,useOpenUrlDirectives:Ye,useVoiceSamplePreview:Xe,useWorkspaceTheme:Ze,vercelTokenDialog:Qe,voiceList:$e,voicePickerField:et,voicePickerModal:tt,voiceProvidersNote:nt,voiceTranscriptToggles:rt,windowsMenuBar:it,domainVerificationChip:at,managedServicesBanner:ot,serviceCard:st,channelAvatarDownload:ct,thresholdPresets:lt,scheduleFormatters:ut,assistantHandleModal:dt};export{e as aboutPage,t as activeAssistantGate,n as addCredentialModal,r as addCreditsModal,i as appCard,a as appNavBar,o as appViewerContainer,s as assistantConnect,c as assistantFeatureFlagStore,dt as assistantHandleModal,l as avatarManagementModal,u as bundleConfirmPage,d as byoVoiceNote,ct as channelAvatarDownload,f as channelSetupCompleteNotice,p as chatAvatar,m as chooserAvatarChip,h as collapsibleNavSection,g as commandPalette,_ as companionIntro,v as companionPopover,y as companionSurface,b as companionWatchFramePage,x as contentActionBar,S as conversationTitle,C as copyButton,w as createAssistantDialog,T as dateRangeSelect,ft as default,E as deleteAppDialog,D as deployDialogs,O as deployStore,G as desktopAppBanner,k as detailPanelStopButton,A as detailPrimitives,j as dictationOverlayPage,M as discordNudgeBanner,N as discordSetupConnectStep,P as discordSetupCreateStep,F as discordSetupFinishStep,I as discordSetupInviteStep,L as discordSetupWizard,R as diskPressureBanner,at as domainVerificationChip,z as downloadFeedback,B as editFooter,V as generateInviteLinkDialog,H as githubNudgeBanner,U as lazyBoundary,W as localNotification,ot as managedServicesBanner,K as nativeAppBanner,q as notFound,J as nudgeChatBanner,Y as onboardingBackButton,X as platformLoginNotice,Z as profileCard,Q as profileQuickAddProvider,$ as quickInputPage,ee as referralContent,te as referralModal,ne as removeFromDeviceDialog,re as resourcePressureBanner,ie as retireConfirmDialog,ae as rootHydrateFallback,se as rootLayout,ce as routeErrorBoundary,oe as routePendingIndicator,le as runtimeUpgradeBanner,ut as scheduleFormatters,ue as sectionActionsButton,st as serviceCard,de as serviceFormControls,fe as shareConnectionLinkButton,pe as shareFeedbackModal,me as shareFeedbackModalFallback,he as shareFeedbackModalLoadError,ge as sideListDrawer,_e as sidebarShell,ve as sidebarTree,ye as skillLineageLink,be as skillRemovalDialog,xe as slackSetupCreateStep,Se as slackSetupNameStep,Ce as slackSetupOpenStep,we as slackSetupTokensStep,Te as slackSetupWizard,Ee as stackedBarTooltip,De as startupFailure,Oe as statusBanner,ke as sttLanguagePicker,Ae as sttLanguagePickerModal,je as sttProviderForm,Me as subagentAvatarChip,Ne as systemPermissionsCard,Pe as telegramSetupConnectStep,Fe as telegramSetupCreateStep,Ie as telegramSetupWizard,Le as tenantHost,Re as terminalPanel,ze as themeStagePage,Be as themeToggle,lt as thresholdPresets,Ve as ttsProviderForm,He as updateToast,Ue as useAppDelete,We as useAppDeployment,Ge as useAssistantChannels,Ke as useBookmarks,qe as useConnectClaude,Je as useOauthConnect,Ye as useOpenUrlDirectives,Xe as useVoiceSamplePreview,Ze as useWorkspaceTheme,Qe as vercelTokenDialog,$e as voiceList,et as voicePickerField,tt as voicePickerModal,nt as voiceProvidersNote,rt as voiceTranscriptToggles,it as windowsMenuBar};
|