@vellumai/web 0.12.6 → 0.12.7-staging.1
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-BfDyIsBX.js → a2a-invite-CYkZ2bwB.js} +1 -1
- package/dist/assets/{about-page-BigOjgfp.js → about-page-CDf8_c83.js} +1 -1
- package/dist/assets/{account-page-DbP0iNWg.js → account-page-DYgu7ene.js} +1 -1
- package/dist/assets/{account-shell-CkJWoTHP.js → account-shell-Cxi1v479.js} +1 -1
- package/dist/assets/{acp-run-detail-panel-DNMcOAkY.js → acp-run-detail-panel--S5Mrgwf.js} +3 -3
- package/dist/assets/activation-list-route-fUUXXrqq.js +1 -0
- package/dist/assets/{activity-redirect-page-CTGWJZqK.js → activity-redirect-page-Dday27zi.js} +1 -1
- package/dist/assets/activity-steps-panel-BnCTZLXH.js +1 -0
- package/dist/assets/{add-credits-modal-DRBFth5G.js → add-credits-modal-BPRQXrJL.js} +1 -1
- package/dist/assets/add-credits-modal-htqAQMX6.js +1 -0
- package/dist/assets/ai-page-BmPw_Cbb.js +1 -0
- package/dist/assets/all-chats-page-route-XyYPy--V.js +1 -0
- package/dist/assets/android-billing-handoff-CvgyuFs9.js +1 -0
- package/dist/assets/{animated-stat-square-B-JargN6.js → animated-stat-square-gKVZj83m.js} +1 -1
- package/dist/assets/{api-key-screen-jvDwbC50.js → api-key-screen-B3eNGHTQ.js} +1 -1
- package/dist/assets/app-CjOgiHzq.css +1 -0
- package/dist/assets/app-KRIEMzuO.js +399 -0
- package/dist/assets/{app-info-VAqkCXW3.js → app-info-BS5SWiPy.js} +1 -1
- package/dist/assets/archive-redirect-page-B_JVRF8z.js +1 -0
- package/dist/assets/assistant-handle-modal-cqAXFvU4.js +1 -0
- package/dist/assets/assistant-inbox-page-route-BmMCSNYC.js +8 -0
- package/dist/assets/assistant-status-panel-5KKU97Nr.js +1 -0
- package/dist/assets/auth-store-CUfwxB8-.js +1 -0
- package/dist/assets/{auth-welcome-screen-Bng5AnvV.js → auth-welcome-screen-CK9ayr5r.js} +1 -1
- package/dist/assets/avatar-bundled-components-BQa_U1xg.js +1 -0
- package/dist/assets/avatar-random-B0PlMwfP.js +2 -0
- package/dist/assets/{await-org-header-settled-P4ncwaMI.js → await-org-header-settled-DCrUbt__.js} +1 -1
- package/dist/assets/{background-task-detail-panel-BcllAg3N.js → background-task-detail-panel-ByZEhdsg.js} +1 -1
- package/dist/assets/billing-page-CYKuyCF5.js +3 -0
- package/dist/assets/{billing-redirect-page-DBSdrzJ7.js → billing-redirect-page-t6TNZq6q.js} +1 -1
- package/dist/assets/{bookmarks-page-BQyOw7IR.js → bookmarks-page-DkomjdJQ.js} +1 -1
- package/dist/assets/{bundle-confirm-page-BE0p_xZi.js → bundle-confirm-page-BRqor1bF.js} +1 -1
- package/dist/assets/channel-transcript-panel-BZPmdLEj.js +1 -0
- package/dist/assets/{channels-BchiOW8d.js → channels-BMnoL5SH.js} +1 -1
- package/dist/assets/{channels--GWixc4A.js → channels-CsbKXJZc.js} +1 -1
- package/dist/assets/{channels-BJA5o10X.js → channels-Cz7YAOIH.js} +1 -1
- package/dist/assets/channels-page-route-CtttpYll.js +1 -0
- package/dist/assets/{channels-BWlMRtuu.js → channels-vNXfvsPT.js} +1 -1
- package/dist/assets/chat-BE3uio8d.js +5 -0
- package/dist/assets/chat-BgW0N2Gb.js +5 -0
- package/dist/assets/{chat-CEpFDraT.js → chat-DSN9cMJf.js} +3 -3
- package/dist/assets/chat-bnp2gG3L.js +5 -0
- package/dist/assets/chat-info-panel-DQumRkcF.js +1 -0
- package/dist/assets/checkout-continuation-DDjhky4Y.js +1 -0
- package/dist/assets/{checkout-page-_P1Km-Pk.js → checkout-page-CDYYh4ze.js} +1 -1
- package/dist/assets/checkout-return-target-B6Qnd5vl.js +1 -0
- package/dist/assets/{command-palette-BMTSC06x.js → command-palette-BUFKVA4Z.js} +1 -1
- package/dist/assets/command-palette-CYJg3gK4.js +1 -0
- package/dist/assets/{command-palette-window-page-BlD7b2cA.js → command-palette-window-page-C0dY_FbH.js} +1 -1
- package/dist/assets/{community-page-dezChmB7.js → community-page-DDVVXFKB.js} +1 -1
- package/dist/assets/{companion-accent-C8bpme2H.js → companion-accent-obJ7TDkU.js} +1 -1
- package/dist/assets/{companion-dock-zones-page-B4iVErZw.js → companion-dock-zones-page-CUZsYl_W.js} +1 -1
- package/dist/assets/{companion-layout-DdDcoKuc.js → companion-layout-Cl8T5Bfs.js} +1 -1
- package/dist/assets/{companion-popover-BYFhyUGI.js → companion-popover-Duq3If7x.js} +1 -1
- package/dist/assets/{companion-popover-page-CvizjjZk.js → companion-popover-page-8OaaN-qP.js} +1 -1
- package/dist/assets/companion-surface-DzxGavvE.js +1 -0
- package/dist/assets/companion-surface-page-BI1DVG0L.js +1 -0
- package/dist/assets/{companion-tour-entry-2hR1vArn.js → companion-tour-entry-D35urSvp.js} +1 -1
- package/dist/assets/{companion-watch-frame-page-LUmlRewI.js → companion-watch-frame-page-chC7gmAI.js} +1 -1
- package/dist/assets/connect-page-Cx7ACmXt.js +1 -0
- package/dist/assets/{consent-controls-DZEtlgAi.js → consent-controls-B8KluMR-.js} +1 -1
- package/dist/assets/contacts-gateway-DJQtU5it.js +1 -0
- package/dist/assets/contacts-page-route-g0cBfSRU.js +1 -0
- package/dist/assets/{copy-button-ZsDy0Kvk.js → copy-button-Bwu12tAq.js} +1 -1
- package/dist/assets/{credential-entry-page-BeKm3_yM.js → credential-entry-page-CrMmjA4m.js} +1 -1
- package/dist/assets/credentials-page-DXegpKuT.js +1 -0
- package/dist/assets/csv-preview-BUNDraKQ.js +1 -0
- package/dist/assets/danger-zone-redirect-page-Dju7UyCP.js +1 -0
- package/dist/assets/debug-page-Cu82bP9V.js +4 -0
- package/dist/assets/deploy-dialogs-B1_w7Ez-.js +1 -0
- package/dist/assets/deploy-dialogs-CKv9kQor.js +1 -0
- package/dist/assets/{desktop-preview-content-CoZvaRAg.js → desktop-preview-content-BwMNHlWb.js} +2 -2
- package/dist/assets/{desktop-status-ZiDkY3z1.js → desktop-status-CCzewHXe.js} +1 -1
- package/dist/assets/{desktop-viewer-zD3tun-C.js → desktop-viewer-DBH1IT5s.js} +2 -2
- package/dist/assets/{detail-card-WMdjzPA_.js → detail-card-C53pHjsM.js} +1 -1
- package/dist/assets/{detail-panel-stop-button-CPVsXUuy.js → detail-panel-stop-button-t_VDZYtt.js} +1 -1
- package/dist/assets/{detail-primitives-CAZf545a.js → detail-primitives-BHVQRcGw.js} +1 -1
- package/dist/assets/developer-page-CKcDBScK.js +1 -0
- package/dist/assets/devices-redirect-page-BEyGhbmn.js +1 -0
- package/dist/assets/{dictation-overlay-page-Cs5bufLA.js → dictation-overlay-page-DpanSK5-.js} +1 -1
- package/dist/assets/document-load-B5HpKq-W.js +1 -0
- package/dist/assets/document-load-DHdbQvKt.js +1 -0
- package/dist/assets/document-viewer-page-4Z_VnjKZ.js +1 -0
- package/dist/assets/emails-page-DyrcXFet.js +1 -0
- package/dist/assets/esm-5n5jSt3e.js +2 -0
- package/dist/assets/esm-B5HvNA2f.js +1 -0
- package/dist/assets/esm-BVAuvmyr.js +2 -0
- package/dist/assets/esm-CIgMNIdz.js +1 -0
- package/dist/assets/{esm-DkYJty3x.js → esm-COgrn4oo.js} +2 -2
- package/dist/assets/esm-CvOYazPQ.js +2 -0
- package/dist/assets/{esm-C36uAXi_.js → esm-DFoZ6rpj.js} +1 -1
- package/dist/assets/{esm-QFyB0c3C.js → esm-DPwp_tyY.js} +1 -1
- package/dist/assets/esm-DetZupO7.js +2 -0
- package/dist/assets/esm-DpDUzGbk.js +2 -0
- package/dist/assets/{file-diff-view-5WOLjbDI.js → file-diff-view-DqA1_0h3.js} +1 -1
- package/dist/assets/{file-view-mode-D6Wxo-FH.js → file-view-mode-DPofWJnz.js} +1 -1
- package/dist/assets/general-page-B5G4H9NJ.js +2 -0
- package/dist/assets/hatching-screen-C5fid3Mi.js +1 -0
- package/dist/assets/{hosting-screen-CQosTH53.js → hosting-screen-BTxmBl_3.js} +1 -1
- package/dist/assets/identity-page-route-DSyT39Yq.js +7 -0
- package/dist/assets/inspect-page-WDA56TDM.js +8 -0
- package/dist/assets/integrations-page-7jff5YRS.js +1 -0
- package/dist/assets/{intelligence-layout-CAtJ8qJB.js → intelligence-layout-DOOxr8TM.js} +1 -1
- package/dist/assets/intelligence-layout-slots-store-BvTIV21o.js +1 -0
- package/dist/assets/keyboard-shortcuts-redirect-page-0f4iR9cK.js +1 -0
- package/dist/assets/{latest-assistant-text-CU1nEv57.js → latest-assistant-text-C5TlzsjF.js} +3 -3
- package/dist/assets/library-detail-page-CXu1dzI8.js +1 -0
- package/dist/assets/library-page-BdtUHlv5.js +1 -0
- package/dist/assets/local-mode-C-1-fXwg.js +1 -0
- package/dist/assets/login-page-BYz-IJwG.js +1 -0
- package/dist/assets/logout-page-CA2Gb3fM.js +1 -0
- package/dist/assets/{logs-layout-C1WQAyKd.js → logs-layout-BgviygkY.js} +1 -1
- package/dist/assets/markdown-preview-CBXcCZg7.js +1 -0
- package/dist/assets/{media-preview-DxyJX5PI.js → media-preview-CTjI28Y4.js} +1 -1
- package/dist/assets/memory-page-route-Od3Muhow.js +2 -0
- package/dist/assets/memory-router-playground-page-D8do5kDw.js +1 -0
- package/dist/assets/message-files-panel-CnyA6dJL.js +1 -0
- package/dist/assets/mutation-error--JEZBa3Q.js +1 -0
- package/dist/assets/native-attachment-pickers-BAxJDXTk.js +1 -0
- package/dist/assets/native-file-BlJDG-CS.js +1 -0
- package/dist/assets/{notifications-page-DRBXLm8k.js → notifications-page-CICwZV_j.js} +1 -1
- package/dist/assets/{oauth-complete-page-DgpDdc3q.js → oauth-complete-page-HYAqM-h3.js} +1 -1
- package/dist/assets/{oauth-popup-complete-page-v6Kq8SKs.js → oauth-popup-complete-page-0Nnhyx6m.js} +1 -1
- package/dist/assets/paired-platform-identity-BN7Zkoo1.js +1 -0
- package/dist/assets/{pairing-page-Oj52Prdb.js → pairing-page-CbPjyGMx.js} +1 -1
- package/dist/assets/password-reset-page-j1R5YVAm.js +1 -0
- package/dist/assets/{pdf-file-preview-BhDsUdwQ.js → pdf-file-preview-CfJUarVV.js} +1 -1
- package/dist/assets/{peeking-eyes-iRqQZ7E9.js → peeking-eyes-C3X1d6Jj.js} +1 -1
- package/dist/assets/{permission-guide-page-C72w2Kmj.js → permission-guide-page-DgNjuyxd.js} +1 -1
- package/dist/assets/{permission-setup-CJJV_COn.js → permission-setup-C4VdQwwz.js} +1 -1
- package/dist/assets/personality-page-BEzNdxON.js +1 -0
- package/dist/assets/personality-page-ILl8FXFu.js +1 -0
- package/dist/assets/personality-sliders-PxNPuK2H.js +1 -0
- package/dist/assets/plans-page-CI3FmLNs.js +1 -0
- package/dist/assets/{platform-loopback-page-BmFqgelr.js → platform-loopback-page-DM2A9sb6.js} +1 -1
- package/dist/assets/plugin-detail-page-Cj6u283V.js +1 -0
- package/dist/assets/{plugins-page-BuHZ0XlZ.js → plugins-page-D7_NjR08.js} +1 -1
- package/dist/assets/plugins-surface-ClVSBf-s.js +1 -0
- package/dist/assets/{preview-error-DycCFOOO.js → preview-error-B2MuMDf7.js} +1 -1
- package/dist/assets/privacy-page-B2g1Pqqs.js +1 -0
- package/dist/assets/{privacy-screen-BNyV1Jpv.js → privacy-screen-BnqXrWj-.js} +1 -1
- package/dist/assets/profile-card-BJ45rF7O.js +1 -0
- package/dist/assets/{provider-callback-page-BiI5YuU7.js → provider-callback-page-CNNhqRdO.js} +1 -1
- package/dist/assets/{provider-key-mKVB6Qhq.js → provider-key-CqD-hAxF.js} +1 -1
- package/dist/assets/{provider-signup-page-Dj_CGQAF.js → provider-signup-page-BEBgiI0J.js} +1 -1
- package/dist/assets/{provisioning-targets-CHlEOzsV.js → provisioning-targets-CihW-82c.js} +1 -1
- package/dist/assets/{quick-input-page-jYydiJfm.js → quick-input-page-ZC5y6AKn.js} +1 -1
- package/dist/assets/{referral-modal-DgZAlouF.js → referral-modal-B5zxNJBt.js} +1 -1
- package/dist/assets/referral-modal-BUgtMC2a.js +1 -0
- package/dist/assets/{rehype-katex-BK-AtgSM.js → rehype-katex-DWUGzNKD.js} +1 -1
- package/dist/assets/{research-mock-page-CDpXk7ca.js → research-mock-page-B3giO94y.js} +1 -1
- package/dist/assets/research-onboarding-route-Dim74aoQ.js +50 -0
- package/dist/assets/review-terms-screen-CIYiUq4M.js +1 -0
- package/dist/assets/routes-zhZ8T_Wu.js +1 -0
- package/dist/assets/schedules-J3G9N-px.js +1 -0
- package/dist/assets/schedules-page-Cnl8mEzJ.js +1 -0
- package/dist/assets/security-redirect-page-BEtWQiAG.js +1 -0
- package/dist/assets/select-assistant-screen-BHvcUbOb.js +1 -0
- package/dist/assets/{self-hosted-servers-B-57ZNA3.js → self-hosted-servers-Bn0mvFIm.js} +1 -1
- package/dist/assets/service-form-controls-DaeZPEiA.js +1 -0
- package/dist/assets/{setting-row-BuBlxds2.js → setting-row-DPTW9jvI.js} +1 -1
- package/dist/assets/settings-Bh67VJVe.js +3 -0
- package/dist/assets/settings-ClEDqshB.js +3 -0
- package/dist/assets/settings-DDU54LDK.js +3 -0
- package/dist/assets/settings-k5uhZfPH.js +3 -0
- package/dist/assets/{settings-layout-B_sC3oOX.js → settings-layout-DEmxtBd4.js} +1 -1
- package/dist/assets/share-feedback-modal-C2fAj8NH.js +1 -0
- package/dist/assets/share-feedback-modal-Du_F68zS.js +2 -0
- package/dist/assets/{sidebar-tree-BLMAqL8a.js → sidebar-tree-D43H3cb8.js} +1 -1
- package/dist/assets/{signup-page-CF6CvKYm.js → signup-page-BiV-Kq2O.js} +1 -1
- package/dist/assets/{signup-shell-BUn2lHTO.js → signup-shell-BbFj5txC.js} +1 -1
- package/dist/assets/{skill-detail-page-B7oLoGRE.js → skill-detail-page-CNTwONYG.js} +2 -2
- package/dist/assets/skill-detail-panel-Duoeqpk6.js +1 -0
- package/dist/assets/{skill-removal-dialog-DwT8ZoB9.js → skill-removal-dialog-DcbMCW1X.js} +1 -1
- package/dist/assets/{skills-page-hxGLH0Yi.js → skills-page-DeEyocII.js} +1 -1
- package/dist/assets/sounds-page-CYqyUiLI.js +1 -0
- package/dist/assets/{start-screen-DfzPyvUq.js → start-screen-C4ocEh6e.js} +1 -1
- package/dist/assets/step-detail-header-C0_Bji0I.js +1 -0
- package/dist/assets/stt-language-picker-modal-Dw_dzvcQ.js +1 -0
- package/dist/assets/subagent-detail-panel-DqFckc_d.js +1 -0
- package/dist/assets/superpowers-page-kjcwHwaR.js +1 -0
- package/dist/assets/system-events-page-C0Nrrv_n.js +1 -0
- package/dist/assets/system-events-redirect-page-DR4dTzmZ.js +1 -0
- package/dist/assets/{tabular-grid-DkyI1XY2.js → tabular-grid-9asraGxC.js} +1 -1
- package/dist/assets/{teleport-gateway-client-C3wmILxC.js → teleport-gateway-client-B8e53i-5.js} +1 -1
- package/dist/assets/{text-preview-BGQO4VRv.js → text-preview-C6jKP_-h.js} +1 -1
- package/dist/assets/{theme-stage-page-9l6G0GQD.js → theme-stage-page-BCd5ZTdW.js} +1 -1
- package/dist/assets/{tiptap-document-editor-6J6u0gMB.js → tiptap-document-editor-BCrbYYDo.js} +2 -2
- package/dist/assets/tool-detail-panel-BM_9qtZ-.js +1 -0
- package/dist/assets/tool-detail-panel-nu-dK5jf.js +16 -0
- package/dist/assets/{trait-cycle-row-C76P92r3.js → trait-cycle-row-CPRGog-6.js} +1 -1
- package/dist/assets/upgrade-cancel-page-BiU2HQZG.js +1 -0
- package/dist/assets/{upgrade-success-page-Ba_xpT9b.js → upgrade-success-page-BCvxSNPT.js} +1 -1
- package/dist/assets/{usage-redirect-page-C7pPUdxP.js → usage-redirect-page-A2FxznAL.js} +1 -1
- package/dist/assets/use-app-delete-Bd9ibG9z.js +1 -0
- package/dist/assets/use-assistant-identity-details-BPVOfzxy.js +1 -0
- package/dist/assets/use-channel-trust-floors-BkkxL6wd.js +1 -0
- package/dist/assets/use-checkout-dismiss-refresh-DYmiO0wT.js +1 -0
- package/dist/assets/use-edge-swipe-back-B2Kt4500.js +1 -0
- package/dist/assets/{use-hotkey-recorder-BKycBMhe.js → use-hotkey-recorder-Dngc9P3v.js} +1 -1
- package/dist/assets/use-invite-link-dialog-Dqkj_T4s.js +1 -0
- package/dist/assets/use-plugins-list-DJlgCfb-.js +1 -0
- package/dist/assets/use-return-to-short-circuit-CrgMpIk2.js +1 -0
- package/dist/assets/use-side-list-room-CttXRA29.js +1 -0
- package/dist/assets/use-skill-actions-BhUkfXmL.js +1 -0
- package/dist/assets/use-skill-detail-files-JWSwpirW.js +1 -0
- package/dist/assets/use-supports-credentials-settings-fg3eXgQy.js +1 -0
- package/dist/assets/{use-truncated-blob-text-_V8QhH9C.js → use-truncated-blob-text-D6z6oSIj.js} +1 -1
- package/dist/assets/{vendor-CtXGFqsu.js → vendor-DLH51Vjf.js} +2 -2
- package/dist/assets/voice-page-CN-XVbya.js +1 -0
- package/dist/assets/{wake-detail-panel-PQ5V9JtN.js → wake-detail-panel-BN6Np2AU.js} +1 -1
- package/dist/assets/{weather-forecast-display-BWS4MRRa.js → weather-forecast-display-Dg7Tug8o.js} +1 -1
- package/dist/assets/{web-BU0sfQyP.js → web-BlKAJber.js} +1 -1
- package/dist/assets/{web-Dquk8c_k.js → web-BmoVVmPZ.js} +1 -1
- package/dist/assets/{web-CDVPrpFB.js → web-C2Y5uOI1.js} +1 -1
- package/dist/assets/{web-p-hu75zv.js → web-CAi9YePi.js} +1 -1
- package/dist/assets/{web-pSzr3FCR.js → web-D0qh5Vlp.js} +1 -1
- package/dist/assets/{web-DWItvNqs.js → web-D5UHHnMG.js} +1 -1
- package/dist/assets/{web-TuWeBEQx.js → web-DZvE04fg.js} +1 -1
- package/dist/assets/{web-C16o07pr.js → web-Xy5dhNHF.js} +1 -1
- package/dist/assets/{web-BoNmnum3.js → web-vcW3se1t.js} +1 -1
- package/dist/assets/welcome-screen-B1WHzW0q.js +1 -0
- package/dist/assets/{workflow-detail-panel-N8CV0RrQ.js → workflow-detail-panel-Bo3bUe-w.js} +1 -1
- package/dist/assets/workspace-page-yTSdnWq3.js +1 -0
- package/dist/assets/{xlsx-preview-DaCmEr4c.js → xlsx-preview-C7vk2tgm.js} +1 -1
- package/dist/index.html +3 -3
- package/package.json +1 -1
- package/dist/assets/activation-list-route-BbPqJODX.js +0 -1
- package/dist/assets/activity-steps-panel-Dz34WmYH.js +0 -1
- package/dist/assets/add-credits-modal-BtnHnN8V.js +0 -1
- package/dist/assets/ai-page-beQly0My.js +0 -1
- package/dist/assets/all-chats-page-route-DlZUO9J_.js +0 -1
- package/dist/assets/android-billing-handoff-CRfjXp7l.js +0 -1
- package/dist/assets/app-CgzFhQCl.css +0 -2
- package/dist/assets/app-DbJUeBix.js +0 -399
- package/dist/assets/archive-redirect-page-DZMdx89H.js +0 -1
- package/dist/assets/assistant-handle-modal-C2RftL0v.js +0 -1
- package/dist/assets/assistant-inbox-page-route-DLSz1vYi.js +0 -8
- package/dist/assets/assistant-status-panel-BJpCnYoq.js +0 -1
- package/dist/assets/auth-store-Cd-d1a4K.js +0 -1
- package/dist/assets/avatar-bundled-components-DqGPWIMe.js +0 -1
- package/dist/assets/avatar-random-CVuabfEZ.js +0 -2
- package/dist/assets/billing-page-D54LLGz1.js +0 -3
- package/dist/assets/channel-transcript-panel-BdL4iejZ.js +0 -1
- package/dist/assets/channels-page-route-BseMMdHV.js +0 -1
- package/dist/assets/chat-CNEHL_2K.js +0 -5
- package/dist/assets/chat-CuQXJv8T.js +0 -5
- package/dist/assets/chat-DwF2xsIA.js +0 -5
- package/dist/assets/chat-info-panel-C6px8Mlo.js +0 -1
- package/dist/assets/checkout-continuation-BniC3jRe.js +0 -1
- package/dist/assets/checkout-return-target-B3XAFuN6.js +0 -1
- package/dist/assets/command-palette-BgqisOfz.js +0 -1
- package/dist/assets/companion-surface-CjiszIMu.js +0 -1
- package/dist/assets/companion-surface-page-BIpW__dy.js +0 -1
- package/dist/assets/connect-page-uRvPpjMP.js +0 -1
- package/dist/assets/contacts-gateway-DI64mVLV.js +0 -1
- package/dist/assets/contacts-page-route-C_UApZGi.js +0 -1
- package/dist/assets/credentials-page-CLjmeZw3.js +0 -1
- package/dist/assets/csv-preview-C2fmutVQ.js +0 -1
- package/dist/assets/danger-zone-redirect-page-D5Xk_8UY.js +0 -1
- package/dist/assets/debug-page-tQ4hqmdO.js +0 -4
- package/dist/assets/deploy-dialogs-BW3wFOZ-.js +0 -1
- package/dist/assets/deploy-dialogs-Hu5UmFuB.js +0 -1
- package/dist/assets/developer-page-DpSngWHa.js +0 -1
- package/dist/assets/devices-redirect-page-BUydOv62.js +0 -1
- package/dist/assets/document-load-CXdi-UrD.js +0 -1
- package/dist/assets/document-load-Dyyzd-te.js +0 -1
- package/dist/assets/document-viewer-page-R3nFa-RR.js +0 -1
- package/dist/assets/emails-page-BUZyXttB.js +0 -1
- package/dist/assets/esm-0cCjd2Tc.js +0 -1
- package/dist/assets/esm-847YkHgO.js +0 -2
- package/dist/assets/esm-DDfhkiLX.js +0 -2
- package/dist/assets/esm-DOZyWh-f.js +0 -1
- package/dist/assets/esm-Dt_lJd5g.js +0 -2
- package/dist/assets/esm-Du04ea0U.js +0 -2
- package/dist/assets/esm-UvF3iiaC.js +0 -2
- package/dist/assets/general-page-BgczK5kM.js +0 -2
- package/dist/assets/hatching-screen-DUME_h4W.js +0 -1
- package/dist/assets/identity-page-route-CnUbEnOj.js +0 -7
- package/dist/assets/inspect-page-B4pwuqL9.js +0 -8
- package/dist/assets/integrations-page-DfV4AIUY.js +0 -1
- package/dist/assets/intelligence-layout-slots-store-DSIw2NvD.js +0 -1
- package/dist/assets/keyboard-shortcuts-redirect-page-eiKQBBin.js +0 -1
- package/dist/assets/library-detail-page-D5TQdRPW.js +0 -1
- package/dist/assets/library-page-CQHRf1us.js +0 -1
- package/dist/assets/local-mode-glOMwWKw.js +0 -1
- package/dist/assets/login-page-nEJ8VtCM.js +0 -1
- package/dist/assets/logout-page-CRexidth.js +0 -1
- package/dist/assets/markdown-preview-FMAKqNG5.js +0 -1
- package/dist/assets/memory-page-route-Bt8cmhxi.js +0 -2
- package/dist/assets/memory-router-playground-page-B5SPYr3X.js +0 -1
- package/dist/assets/message-files-panel-DM2OHYKS.js +0 -1
- package/dist/assets/mutation-error-DsmwzTdH.js +0 -1
- package/dist/assets/native-attachment-pickers-Caaw_YOU.js +0 -1
- package/dist/assets/native-file-DICtaDdr.js +0 -1
- package/dist/assets/paired-platform-identity-u4Q-YPGw.js +0 -1
- package/dist/assets/password-reset-page-D3ksp7Ej.js +0 -1
- package/dist/assets/personality-page-CvTaj6nv.js +0 -1
- package/dist/assets/personality-page-smzeVdLh.js +0 -1
- package/dist/assets/personality-sliders-B9dseUZv.js +0 -1
- package/dist/assets/plans-page-CdJnxa9Q.js +0 -1
- package/dist/assets/plugin-detail-page-CFGniBM4.js +0 -1
- package/dist/assets/plugins-surface-CYlZGgus.js +0 -1
- package/dist/assets/privacy-page-BTNM3CXN.js +0 -1
- package/dist/assets/profile-card-CCv7LkYu.js +0 -1
- package/dist/assets/referral-modal-CfWPpnvV.js +0 -1
- package/dist/assets/research-onboarding-route-Se5ksePw.js +0 -50
- package/dist/assets/review-terms-screen-Cy9FX3yC.js +0 -1
- package/dist/assets/routes-Df2libs9.js +0 -1
- package/dist/assets/schedules-page-O2ueZz6n.js +0 -1
- package/dist/assets/schedules-rvMiqGp0.js +0 -1
- package/dist/assets/security-redirect-page-B00kAvrV.js +0 -1
- package/dist/assets/select-assistant-screen-GuXyFlAh.js +0 -1
- package/dist/assets/service-form-controls-DZJcQaNO.js +0 -1
- package/dist/assets/settings-38aC28YN.js +0 -3
- package/dist/assets/settings-CQGJaYP0.js +0 -3
- package/dist/assets/settings-DR1qapnv.js +0 -3
- package/dist/assets/settings-ZA3mMzpB.js +0 -3
- package/dist/assets/share-feedback-modal-Dg6x94HR.js +0 -2
- package/dist/assets/share-feedback-modal-n7ZgtNxB.js +0 -1
- package/dist/assets/skill-detail-panel-BgTf3-Jj.js +0 -1
- package/dist/assets/sounds-page-C1u9YUVJ.js +0 -1
- package/dist/assets/step-detail-header-CdUCWAlu.js +0 -1
- package/dist/assets/stt-language-picker-modal-0IKnLGpu.js +0 -1
- package/dist/assets/subagent-detail-panel-CtkJH9-r.js +0 -1
- package/dist/assets/superpowers-page-C0V-BVj9.js +0 -1
- package/dist/assets/system-events-page-B13dkMsH.js +0 -1
- package/dist/assets/system-events-redirect-page-ayoYsUNU.js +0 -1
- package/dist/assets/tool-detail-panel-B267q93W.js +0 -1
- package/dist/assets/tool-detail-panel-D29OCtjo.js +0 -16
- package/dist/assets/upgrade-cancel-page-CsIYnmSq.js +0 -1
- package/dist/assets/use-app-delete-2je5dBpX.js +0 -1
- package/dist/assets/use-assistant-identity-details-S74x7sbE.js +0 -1
- package/dist/assets/use-channel-trust-floors-fBDQnvgz.js +0 -1
- package/dist/assets/use-checkout-dismiss-refresh-DB31reZx.js +0 -1
- package/dist/assets/use-edge-swipe-back-DeHKMrh8.js +0 -1
- package/dist/assets/use-invite-link-dialog-BdHG4b3u.js +0 -1
- package/dist/assets/use-plugins-list-B9d39t5k.js +0 -1
- package/dist/assets/use-return-to-short-circuit-D82kSfEB.js +0 -1
- package/dist/assets/use-side-list-room-CMVDwjej.js +0 -1
- package/dist/assets/use-skill-actions-BkSsu_a-.js +0 -1
- package/dist/assets/use-skill-detail-files-DRDxliP2.js +0 -1
- package/dist/assets/use-supports-credentials-settings-DXa8eid1.js +0 -1
- package/dist/assets/use-transcript-message-by-id-DVnOyFfP.js +0 -1
- package/dist/assets/voice-page-DoYjxDlf.js +0 -1
- package/dist/assets/welcome-screen-BKY6SHne.js +0 -1
- package/dist/assets/workspace-page-B7cCk3SZ.js +0 -1
- /package/dist/assets/{account-CVApvI7o.js → account-BkxBMG9Z.js} +0 -0
- /package/dist/assets/{account-B3E3GZS-.js → account-D5JdUO7K.js} +0 -0
- /package/dist/assets/{account-D0m_JAIR.js → account-DYG79724.js} +0 -0
- /package/dist/assets/{account-CLm397yy.js → account-OIF2BHH7.js} +0 -0
- /package/dist/assets/{activation-C60mWyf6.js → activation-C91KPzrh.js} +0 -0
- /package/dist/assets/{activation-CaYos65l.js → activation-Dd7eAIHs.js} +0 -0
- /package/dist/assets/{activation-Bu-fuIiq.js → activation-ReimSfhn.js} +0 -0
- /package/dist/assets/{activation-tasks-B4NxNrfp.js → activation-tasks-D4dorV2v.js} +0 -0
- /package/dist/assets/{activation-tasks-U9EJp50S.js → activation-tasks-efxGWsFw.js} +0 -0
- /package/dist/assets/{activation-nBeJqOMa.js → activation-tasks-rViOqW7C.js} +0 -0
- /package/dist/assets/{activation-tasks-6iX4PrEF.js → activation-tasks-wtMwJ0EV.js} +0 -0
- /package/dist/assets/{activation-tasks-D057dozu.js → activation-yoBQ36AY.js} +0 -0
- /package/dist/assets/{app-types-BwhjauA5.js → app-types-BoY_FOAH.js} +0 -0
- /package/dist/assets/{assistant-inbox-BjveeFJS.js → assistant-inbox-CAvCHzi9.js} +0 -0
- /package/dist/assets/{assistant-inbox-Bc1eriLy.js → assistant-inbox-CQdSXLLi.js} +0 -0
- /package/dist/assets/{assistant-inbox-CjlA9ExA.js → assistant-inbox-DslyrhIn.js} +0 -0
- /package/dist/assets/{assistant-inbox-DZEctkiU.js → assistant-inbox-qWeVmA1L.js} +0 -0
- /package/dist/assets/{build.umd-BQNORWVu.js → build.umd-B0ATW5UM.js} +0 -0
- /package/dist/assets/{common-ChZ93He5.js → common-BdQfnACd.js} +0 -0
- /package/dist/assets/{common-CEc9vBVX.js → common-IoqtSg0p.js} +0 -0
- /package/dist/assets/{common-BdBfuvvS.js → common-LOT1T5DR.js} +0 -0
- /package/dist/assets/{common-rEaGXFG5.js → common-kmi6H4cg.js} +0 -0
- /package/dist/assets/{contacts-BcjP6yTq.js → contacts-BTmOfEVL.js} +0 -0
- /package/dist/assets/{contacts-DwPTzNNu.js → contacts-Cxz-DyYF.js} +0 -0
- /package/dist/assets/{contacts-B-21ZJz4.js → contacts-DgC-8PHB.js} +0 -0
- /package/dist/assets/{contacts-atF1S3IK.js → contacts-mijLgegD.js} +0 -0
- /package/dist/assets/{credential-requests-AF-aeT3D.js → credential-requests-CmFaXPwz.js} +0 -0
- /package/dist/assets/{credential-requests-CwIA8bBS.js → credential-requests-D3J3i5oa.js} +0 -0
- /package/dist/assets/{credential-requests-Z5RDxt8x.js → credential-requests-gl4lfjL4.js} +0 -0
- /package/dist/assets/{credential-requests-D1YLTxiK.js → credential-requests-h908NRpv.js} +0 -0
- /package/dist/assets/{definitions-DOIX6IPo.js → definitions-BUCExH-9.js} +0 -0
- /package/dist/assets/{definitions-Bqz3c8F6.js → definitions-DpZNNWA7.js} +0 -0
- /package/dist/assets/{emoji-catalog-data-D-oHOciZ.js → emoji-catalog-data-DsyEWO16.js} +0 -0
- /package/dist/assets/{format-countdown-CKjTHR6g.js → format-countdown-l7vj-IPm.js} +0 -0
- /package/dist/assets/{home-fLFytpjt.js → home-BI-fzzA0.js} +0 -0
- /package/dist/assets/{home-BDUOreXL.js → home-BZGFmZ0D.js} +0 -0
- /package/dist/assets/{home-X7gNxY7e.js → home-CM9kRnjx.js} +0 -0
- /package/dist/assets/{home-BEjkPdJp.js → home-D4Knhe9B.js} +0 -0
- /package/dist/assets/{intelligence-BKIKiC6a.js → intelligence-B6UWzaf0.js} +0 -0
- /package/dist/assets/{intelligence-D0sceUjd.js → intelligence-DFW_P1Fv.js} +0 -0
- /package/dist/assets/{intelligence-o-AgAY1a.js → intelligence-DXMdwG0t.js} +0 -0
- /package/dist/assets/{intelligence-o7hrm5QU.js → intelligence-DaVJutXG.js} +0 -0
- /package/dist/assets/{is-record-CK45KBF3.js → is-record-CNwRuI6a.js} +0 -0
- /package/dist/assets/{jszip.min-CIl5Kasi.js → jszip.min-CDIVkZfG.js} +0 -0
- /package/dist/assets/{library-Brgq-pg5.js → library-CFGvGWZt.js} +0 -0
- /package/dist/assets/{library-krizTG8k.js → library-CmSFUt9r.js} +0 -0
- /package/dist/assets/{library-DJAyleXO.js → library-D26ezl8B.js} +0 -0
- /package/dist/assets/{library-DK6yQdzq.js → library-Dv9w5D8Z.js} +0 -0
- /package/dist/assets/{link-click-CwW3QboU.js → link-click-CR9uUEsb.js} +0 -0
- /package/dist/assets/{logs-C624PZU8.js → logs-5jFWrQRx.js} +0 -0
- /package/dist/assets/{logs-B3TILfBZ.js → logs-BJTGRcSn.js} +0 -0
- /package/dist/assets/{logs-DnaZo1ZU.js → logs-BPrpYBp7.js} +0 -0
- /package/dist/assets/{logs-bAA3pNiA.js → logs-BpX8Zuzb.js} +0 -0
- /package/dist/assets/{machine-sizes-qp9khCYo.js → machine-sizes-srbag24Q.js} +0 -0
- /package/dist/assets/{onboarding-CA1t3Q0f.js → onboarding-B9_JitSg.js} +0 -0
- /package/dist/assets/{onboarding-DL5ANbiB.js → onboarding-BrS1fcVE.js} +0 -0
- /package/dist/assets/{onboarding-GlX-XQi6.js → onboarding-Cx2yoeE5.js} +0 -0
- /package/dist/assets/{onboarding-BLyQ4pX7.js → onboarding-cBGAfB74.js} +0 -0
- /package/dist/assets/{onboarding-step-layout-DT_fRQ60.js → onboarding-step-layout-BsqZaEHR.js} +0 -0
- /package/dist/assets/{pdf-DnNSb9Ol.js → pdf-_tTrkaWt.js} +0 -0
- /package/dist/assets/{plugin-attribution-DdvqPkqM.js → plugin-attribution-RBBRvghI.js} +0 -0
- /package/dist/assets/{radio-card-nav-DU8rXs6_.js → radio-card-nav-Br8358Zh.js} +0 -0
- /package/dist/assets/{remote-web-BY-kioTR.js → remote-web-42kFkA33.js} +0 -0
- /package/dist/assets/{remote-web-D9gnRZew.js → remote-web-CFPdQIeJ.js} +0 -0
- /package/dist/assets/{remote-web-0oU_5nC3.js → remote-web-DFX945w2.js} +0 -0
- /package/dist/assets/{remote-web-DHdTNXdY.js → remote-web-DkzrBzGi.js} +0 -0
- /package/dist/assets/{schedules-BFWqVQQr.js → schedules-Bk7XGnqS.js} +0 -0
- /package/dist/assets/{schedules-B-eoXB0u.js → schedules-CGU7CKaM.js} +0 -0
- /package/dist/assets/{schedules-jmj6ULCh.js → schedules-J687h0Fh.js} +0 -0
- /package/dist/assets/{schedules-CxUabbOG.js → schedules-JnprnWDo.js} +0 -0
- /package/dist/assets/{skill-icon-CyV-a6U0.js → skill-icon-CWKAcXVy.js} +0 -0
- /package/dist/assets/{terminal-Dl9KkSzg.js → terminal-BV6xg9ZA.js} +0 -0
- /package/dist/assets/{terminal-BQY82QZm.js → terminal-BjOF3LBT.js} +0 -0
- /package/dist/assets/{terminal-BUWeG_vt.js → terminal-CYHsl1AH.js} +0 -0
- /package/dist/assets/{terminal-CAR3C4xs.js → terminal-Cxm0NKaj.js} +0 -0
- /package/dist/assets/{usage-window-DN8fvMZe.js → usage-window-DJWFtBw1.js} +0 -0
- /package/dist/assets/{use-async-read-D7JsXrwa.js → use-async-read-DcRLxtMN.js} +0 -0
- /package/dist/assets/{use-debounced-value-B3D7seCE.js → use-debounced-value-CiNn3pzA.js} +0 -0
- /package/dist/assets/{workspace-CNtNlLWm.js → workspace-Bcvg2VfS.js} +0 -0
- /package/dist/assets/{workspace-Bnpq8Dqv.js → workspace-BscXtFFU.js} +0 -0
- /package/dist/assets/{workspace-C9vNSPtQ.js → workspace-C-huZiu_.js} +0 -0
- /package/dist/assets/{workspace-u8O2g3J6.js → workspace-P8HaFDdu.js} +0 -0
- /package/dist/assets/{xterm-DVw0Odgw.js → xterm-Pyzkt_-B.js} +0 -0
- /package/dist/assets/{xterm-addon-fit-BQeaKmRy.js → xterm-addon-fit-HaY_WHvm.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$C as t,$l as n,Al as r,Bl as i,Dl as a,El as o,Gl as s,Hl as c,IC as ee,Il as l,Jl as u,Kl as d,Ll as f,Ml as te,Nl as p,Ol as m,Pl as h,Rl as g,Sl as _,Tl as v,Ul as y,Wl as b,Yg as x,Yl as ne,a_ as S,jl as C,kl as re,lf as w,ql as ie,sf as ae,vC as oe,wl as se,xl as T,yl as E}from"./app-KRIEMzuO.js";import{E as ce}from"./vendor-DLH51Vjf.js";import{t as D,x as O}from"./react-B9IgSVeK.js";import{Ka as k,yn as le}from"./icons-C0wyat6T.js";import{a as ue,c as de,l as fe,n as pe,o as me,r as he,s as ge,t as _e,u as ve}from"./companion-surface-DzxGavvE.js";import{n as ye}from"./companion-accent-obJ7TDkU.js";import{n as be,t as xe}from"./companion-popover-Duq3If7x.js";import{l as Se,t as Ce}from"./permission-setup-C4VdQwwz.js";import{n as A,r as we,t as j}from"./companion-layout-Cl8T5Bfs.js";var M=e(O(),1),N=D(),Te=460,Ee=3,De=88,Oe=3,ke=[`screens`,`tabs`,`windows`],Ae=(e,t)=>t===`screens`?e.displays.length:t===`tabs`?e.tabs.length:e.windows.length,je=e=>ke.find(t=>Ae(e,t)>0)??`screens`,P=e=>e.kind===`display`?`display-${e.displayId}`:`window-${e.windowId}`;function Me({sources:e,captureThumbnail:n,cardGrowth:r=`up`,side:i,avatarBox:a=x,optionsBox:o=x,cardRef:s,label:c,onPick:l,onAllowScreenRecording:u}){let{t:d}=ce(),{inUnits:f,lineAt:te,edgeAt:p,introStepOff:m,gap:h}=j(a,o),g=f(m(r)),_=i===void 0?{left:`50%`,top:te(r,0),transform:r===`up`?`translate(-50%, calc(-100% - ${g}px))`:`translate(-50%, ${g}px)`}:{...p(i,S(a,o)+h),top:`50%`,transform:`translateY(-50%)`},v=e!==null&&e.screenRecordingGranted===!1,y=v?null:e,b=y===null?[]:ke.filter(e=>Ae(y,e)>0),ne=y!==null&&b.length===0,[C,re]=(0,M.useState)(null),w=y===null?`screens`:C!==null&&b.includes(C)?C:je(y),ie=(0,M.useMemo)(()=>y===null?[]:w===`screens`?y.displays.map(e=>{let t={kind:`display`,displayId:e.displayId};return{key:P(t),target:t}}):w===`windows`?y.windows.map(e=>{let t={kind:`window`,windowId:e.windowId};return{key:P(t),target:t}}):[],[w,y]),[ae,se]=(0,M.useState)(new Map),T=(0,M.useRef)(new Set),E=(0,M.useRef)(0),D=(0,M.useRef)(!1);(0,M.useEffect)(()=>(D.current=!0,()=>{D.current=!1}),[]),(0,M.useEffect)(()=>{T.current=new Set,E.current+=1,se(new Map),re(null)},[e]);let O=(0,M.useRef)(null);(0,M.useEffect)(()=>{O.current!==null&&(O.current.scrollTop=0)},[w]),(0,M.useEffect)(()=>{if(n!==void 0)for(let{key:e,target:t}of ie){if(T.current.has(e))continue;T.current.add(e);let r=E.current,i=t=>{!D.current||r!==E.current||se(n=>new Map(n).set(e,t))};n(t).then(i,()=>{i(null)})}},[n,ie]);let k=e=>n===void 0?null:ae.get(e),ue=e=>d(e===`screens`?`companionSurface.captureScreens`:e===`tabs`?`companionSurface.captureTabs`:`companionSurface.captureWindows`);return(0,N.jsxs)(`div`,{ref:s,role:`group`,"aria-label":c??d(`companionSurface.capturePicker`),"data-companion-capture-picker":!0,"data-theme":`dark`,className:`absolute flex flex-col rounded-2xl border border-white/10 bg-[#17181b]/95 p-1.5 shadow-lg shadow-black/40`,style:{width:Te,..._},onPointerDown:e=>{e.stopPropagation()},children:[b.length>1&&(0,N.jsx)(oe,{className:`mx-auto mb-1.5 w-auto shrink-0`,items:b.map(e=>({value:e,label:ue(e)})),value:w,ariaLabel:d(`companionSurface.captureKind`),onChange:re}),(0,N.jsx)(ee,{ref:O,className:`max-h-48 flex-col px-0.5`,size:24,fadeEdges:`end`,hideScrollBar:!0,children:(0,N.jsxs)(`div`,{className:`flex flex-col`,"data-slot":`capture-sources`,children:[e===null&&(0,N.jsx)(Pe,{}),v&&(0,N.jsxs)(`div`,{className:`flex items-center justify-between gap-3 px-2 py-2`,"data-slot":`capture-needs-grant`,children:[(0,N.jsx)(`span`,{className:`text-[12px] text-white/70`,children:d(`companionSurface.captureScreenRecordingOff`)}),(0,N.jsx)(t,{variant:`primary`,size:`compact`,className:`shrink-0`,onClick:u,children:d(`companionSurface.captureTurnOnScreenRecording`)})]}),y!==null&&w===`screens`&&(0,N.jsx)(F,{children:y.displays.map(e=>{let t=d(`companionSurface.captureScreen`,{n:e.index+1}),n=P({kind:`display`,displayId:e.displayId});return(0,N.jsx)(I,{title:t,ariaLabel:t,answer:k(n),fallback:(0,N.jsx)(le,{className:`size-5 text-white/40`,"aria-hidden":!0}),onClick:()=>{l?.({kind:`display`,displayId:e.displayId})}},n)})}),y!==null&&w===`windows`&&(0,N.jsx)(F,{children:y.windows.map(e=>{let t=P({kind:`window`,windowId:e.windowId}),n=e.title===``?e.app:e.title;return(0,N.jsx)(I,{title:n,ariaLabel:e.title===``?n:`${n} (${e.app})`,answer:k(t),fallback:(0,N.jsx)(L,{icon:e.icon,large:!0}),icon:(0,N.jsx)(L,{icon:e.icon}),onClick:()=>{l?.({kind:`window`,windowId:e.windowId})}},t)})}),y!==null&&w===`tabs`&&(0,N.jsx)(`div`,{className:`flex flex-col`,children:y.tabs.map(e=>(0,N.jsx)(Ne,{icon:(0,N.jsx)(L,{icon:e.icon}),title:e.title,onClick:()=>{l?.({kind:`tab`,chromeWindowId:e.chromeWindowId,tabIndex:e.tabIndex})}},`tab-${e.chromeWindowId}-${e.tabIndex}`))}),ne&&(0,N.jsx)(`span`,{className:`px-2 py-3 text-[12px] text-white/50`,children:d(`companionSurface.captureNothing`)})]})})]})}function F({children:e}){return(0,N.jsx)(`div`,{className:`grid gap-1.5 py-0.5`,style:{gridTemplateColumns:`repeat(${Ee}, minmax(0, 1fr))`},children:e})}function I({title:e,ariaLabel:t,answer:n,fallback:r,icon:i,onClick:a}){return(0,N.jsxs)(`button`,{type:`button`,"aria-label":t,"data-slot":`capture-source`,className:`group flex min-w-0 flex-col gap-1 rounded-lg p-1 text-left transition-colors outline-none hover:bg-white/10 focus-visible:ring-1 focus-visible:ring-white/40 focus-visible:ring-inset active:bg-white/15`,onClick:a,children:[(0,N.jsx)(`span`,{"data-slot":`capture-preview`,className:`flex items-center justify-center overflow-hidden rounded-md bg-black/40 ring-1 ring-white/10 ${n===void 0?`animate-pulse`:``}`,style:{height:De},children:n==null?r:(0,N.jsx)(`img`,{src:n,alt:``,draggable:!1,className:`max-h-full max-w-full object-contain`})}),(0,N.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[i,(0,N.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[11px] text-white/75 group-hover:text-white/90`,children:e})]})]})}function Ne({icon:e,title:t,onClick:n}){return(0,N.jsxs)(`button`,{type:`button`,"aria-label":t,"data-slot":`capture-source`,className:`flex h-8 w-full shrink-0 items-center gap-2 rounded-lg px-2 text-left text-[12px] text-white/85 transition-colors outline-none hover:bg-white/10 focus-visible:ring-1 focus-visible:ring-white/40 focus-visible:ring-inset active:bg-white/15`,onClick:n,children:[e,(0,N.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t})]})}function L({icon:e,large:t=!1}){return(0,N.jsx)(`span`,{className:`flex shrink-0 items-center justify-center overflow-hidden ring-1 ring-white/10 ${t?`size-7 rounded-lg`:`size-3.5 rounded-[4px]`}`,children:e===void 0?(0,N.jsx)(k,{className:t?`size-5 text-white/40`:`size-3 text-white/70`,"aria-hidden":!0}):(0,N.jsx)(`img`,{src:e,alt:``,className:`size-full`,draggable:!1})})}function Pe(){return(0,N.jsx)(F,{children:Array.from({length:Oe},(e,t)=>(0,N.jsxs)(`div`,{className:`flex flex-col gap-1 p-1`,"aria-hidden":!0,children:[(0,N.jsx)(`span`,{className:`animate-pulse rounded-md bg-white/10`,style:{height:De}}),(0,N.jsx)(`span`,{className:`h-2 animate-pulse rounded-full bg-white/10`,style:{width:t===0?`70%`:`45%`}})]},t))})}var Fe=3,Ie=440;function Le(){let{t:e}=ce(),[t,ee]=(0,M.useState)(`right`),[S,oe]=(0,M.useState)(`up`),[D,O]=(0,M.useState)(`bottom`),[k,le]=(0,M.useState)(x),[j,Te]=(0,M.useState)(x),[Ee,De]=(0,M.useState)(),[Oe,ke]=(0,M.useState)(),[Ae,je]=(0,M.useState)(),[P,F]=(0,M.useState)(null),[I,Ne]=(0,M.useState)(!1),[L,Pe]=(0,M.useState)(void 0),[Le,Re]=(0,M.useState)(``),[R,ze]=(0,M.useState)(``),[Be,Ve]=(0,M.useState)(!1),[z,He]=(0,M.useState)(!1),[Ue,We]=(0,M.useState)(void 0),[B,Ge]=(0,M.useState)(void 0),[V,Ke]=(0,M.useState)(void 0),[H,qe]=(0,M.useState)(void 0),[Je,Ye]=(0,M.useState)(!1),[Xe,Ze]=(0,M.useState)(!1),[Qe,$e]=(0,M.useState)(void 0),[et,tt]=(0,M.useState)(!1),[nt,rt]=(0,M.useState)(!1),[it,at]=(0,M.useState)(!1),[ot,st]=(0,M.useState)(!1),[ct,lt]=(0,M.useState)(void 0),[U,W]=(0,M.useState)(!1),[G,ut]=(0,M.useState)(`teach`),[dt,ft]=(0,M.useState)(null),K=(0,M.useRef)(0),[pt,q]=(0,M.useState)(!1),[J,mt]=(0,M.useState)(null),[ht,gt]=(0,M.useState)(0),[_t,vt]=(0,M.useState)(0),[yt,bt]=(0,M.useState)(void 0),Y=(0,M.useRef)(!1),xt=(0,M.useRef)(null),St=(0,M.useRef)(null),Ct=(0,M.useRef)(null),wt=(0,M.useRef)(null),Tt=(0,M.useRef)(null),Et=(0,M.useRef)(null),Dt=(0,M.useRef)(null),Ot=(0,M.useRef)(null),kt=(0,M.useRef)(!1),At=(0,M.useCallback)(e=>{Ot.current=e,e===null&&kt.current&&(kt.current=!1,Y.current=!1,i(!1))},[]),X=(0,M.useRef)(null),jt=(0,M.useRef)(null),Mt=(0,M.useRef)(!1);(0,M.useEffect)(()=>{let e=e=>{ee(e.growth),oe(e.cardGrowth),O(e.dock??`bottom`),le(e.avatarBox),Te(e.optionsBox??e.avatarBox),De(e.avatarBase64===void 0?void 0:`data:image/png;base64,${e.avatarBase64}`),ke(e.character),je(e.accentHex),F(e.call),Ne(e.dialing===!0),ze(e.assistantName),Ve(e.working),He(e.watching===!0),Pe(e.dictating),Re(e.dictationText??``),We(e.watchRetro),Ge(e.dictationOffer),Ke(e.popover),qe(e.popoverView),Ye(e.watchEnabled===!0),Ze(e.watchTargets===!0),$e(e.screenShare),tt(e.screenShareEnabled===!0),rt(e.annotating===!0),at((e.coachmarks?.length??0)>0),st(e.marksCleared!==void 0),lt(e.annotationTool),mt(e.intro),gt(e.voiceKeyTaps??0),vt(e.introChordPresses??0),bt(e.introChordControl)},t=d(e);return r().then(t=>{t&&e(t)}),t},[]),(0,M.useEffect)(()=>()=>{i(!1)},[]);let Nt=P!==null||I,Pt=Qe!==void 0,Ft=(0,M.useMemo)(()=>E()?ne():void 0,[]);(0,M.useEffect)(()=>{Nt||(K.current+=1,W(!1))},[Nt]),(0,M.useEffect)(()=>{z&&G===`teach`&&(K.current+=1,W(!1))},[z,G]),(0,M.useEffect)(()=>{Pt&&G===`share`&&(K.current+=1,W(!1))},[Pt,G]);let It=(e,t)=>{ft(null),ut(e),W(!0);let n=++K.current;C().then(e=>{if(n===K.current){if(e!==null){ft(e);return}W(!1),t()}})},Lt=U&&dt?.screenRecordingGranted===!1;(0,M.useEffect)(()=>{if(Lt)return w(e=>{if(e.screen?.status!==`granted`)return;let t=++K.current;C().then(e=>{t!==K.current||e===null||ft(e)})})},[Lt]);let Rt=()=>{if(!Xe){u();return}if(U&&G===`teach`){K.current+=1,W(!1);return}It(`teach`,u)},zt=()=>{if(U&&G===`share`){K.current+=1,W(!1);return}It(`share`,()=>void 0)};(0,M.useEffect)(()=>{!U&&Y.current&&(Y.current=!1,i(!1))},[U]),(0,M.useEffect)(()=>{B===void 0&&Y.current&&(Y.current=!1,i(!1))},[B]);let Bt=(0,M.useRef)(!1),Vt=V!==void 0&&H!==void 0&&H!==`deferred`&&(P!==null||I)&&D!==`left`&&D!==`right`,Ht=Vt?V?.id:void 0;(0,M.useLayoutEffect)(()=>{let e=Dt.current;if(Ht===void 0||e===null)return;let t=()=>{g(Ht,e.getBoundingClientRect().height)};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[Ht,H]);let[Ut,Wt]=(0,M.useState)(!1),Gt=Vt||Ut;(0,M.useEffect)(()=>{!Gt&&Bt.current&&(Bt.current=!1,Y.current=!1,i(!1))},[Gt]);let Kt=e=>{if(K.current+=1,W(!1),G===`share`){y(e);return}u(e)},Z=e=>{Y.current!==e&&(Y.current=e,i(e))},Q=J!==null&&P===null&&!I,qt=(0,M.useRef)(Q);(0,M.useEffect)(()=>{qt.current&&!Q&&(q(!1),Z(!1)),qt.current=Q},[Q]);let Jt=me(J),Yt=Q?ue(J,e(`companionIntro.call.line`)):null,Xt=ve(Q?J:null),Zt=fe(Xt),Qt=Q&&!Zt&&(J===`talk`||J===`try`),$t=Q&&J===`idle`&&pt;(0,M.useEffect)(()=>{$t&&_(`next`)},[$t]);let[en,tn]=(0,M.useState)(!1);(0,M.useEffect)(()=>{tn(!1)},[J]);let nn=()=>{J===`try`&&!Zt&&_(`try`)},$=Yt!==null,rn=P!==null||I?`call`:L===void 0?B===void 0?z?`watching`:Ue===void 0?Jt??(pt?`hover`:`resting`):`summary`:`offer`:`dictating`,an=e=>{if(X.current!==null&&e.buttons===0&&(X.current=null,h()),X.current!==null){let{x:t,y:n}=X.current;te(e.screenX-t,e.screenY-n),X.current={x:e.screenX,y:e.screenY};let r=jt.current;r!==null&&Math.abs(e.screenX-r.x)+Math.abs(e.screenY-r.y)>Fe&&(Mt.current=!0);return}let t=Ct.current;if(!t)return;let n=xt.current?.getBoundingClientRect()??null,r=St.current?.getBoundingClientRect()??null,i=n!==null&&n.width>0?n:r!==null&&r.width>0?r:null,a=we({x:e.clientX,y:e.clientY},{avatar:t.getBoundingClientRect(),pill:i}),o=wt.current,s=o!==null&&A(o.getBoundingClientRect(),e.clientX,e.clientY),c=Et.current,ee=c!==null&&A(c.getBoundingClientRect(),e.clientX,e.clientY),l=Tt.current,u=l!==null&&A(l.getBoundingClientRect(),e.clientX,e.clientY),d=Dt.current,f=d!==null&&A(d.getBoundingClientRect(),e.clientX,e.clientY),p=Ot.current,m=p!==null&&A(p.getBoundingClientRect(),e.clientX,e.clientY);q(a),kt.current=m,Bt.current=f,Z(a||s||u||ee||m||f)},on=ye(P,Ae,Oe),sn=V===void 0||H!==`deferred`?0:V.kind===`approvals`?V.items.length:1;return(0,N.jsx)(`div`,{className:`relative h-screen w-screen bg-transparent`,onMouseMove:an,onMouseUp:()=>{X.current!==null&&(X.current=null,h())},onPointerCancel:()=>{X.current!==null&&(X.current=null,h()),q(!1),Z(!1)},onMouseLeave:()=>{X.current===null&&(q(!1),Z(!1))},children:(0,N.jsx)(_e,{phase:rn,growth:t,cardGrowth:S,dock:D,avatarBox:k,optionsBox:j,avatarSrc:Ee,character:Oe,hovered:pt,accentHex:on,call:P??Yt?.call??void 0,assistantName:R,dictating:L,dictationText:Le,working:Be,watching:z,watchRetro:Ue,onWatchRetro:o,dictationOffer:B,offer:B===void 0?null:(0,N.jsx)(de,{offer:B,growth:t,cardGrowth:S,avatarBox:k,optionsBox:j,cardRef:Et,onAnswer:e=>{se(e,B.id)}}),watchEnabled:Je,spotlight:ge(J),avatarStaged:Qt,avatarTucked:Q&&J===`idle`,intro:!Q||J===null?null:(0,N.jsx)(pe,{beat:J,growth:t,cardGrowth:S,avatarBox:k,optionsBox:j,accentHex:on,assistantName:R===``?void 0:R,cardRef:wt,permission:Xt,greeted:en,voiceKeyTaps:ht,chordPresses:_t,chordControl:yt,onAdvance:e=>{if(e===`try`){nn();return}_(e)}}),rootRef:xt,restingPillRef:St,avatarRef:Ct,onSurfacePointerDown:e=>{e.button===0&&e.target.closest(`button, a`)===null&&(e.currentTarget.setPointerCapture(e.pointerId),X.current={x:e.screenX,y:e.screenY},jt.current={x:e.screenX,y:e.screenY},Mt.current=!1)},onSurfaceContextMenu:e=>{(window.getSelection()?.toString().trim().length??0)>0||(e.preventDefault(),b())},onAvatarClick:()=>{if(!(Mt.current||$)){if(J!==null){Q&&!Zt&&(J===`talk`?tn(!0):J===`try`&&nn());return}if(P!==null||I){T();return}s()}},onWatch:()=>{$||u()},onTeach:$?void 0:Rt,picking:U&&G===`teach`,sharing:Yt?.sharing??Pt,shareEnabled:$||et,sharePicking:U&&G===`share`,onShare:$?void 0:zt,onStopShare:$?void 0:()=>{y()},annotating:nt,onAnnotate:$?void 0:e=>{l(e)},marked:ot&&(it||nt),onClearMarks:$?void 0:()=>{m()},openPicker:V?.kind===`microphones`?V.kind:void 0,onPicker:!$&&re()?e=>{ie(e)}:void 0,annotationTool:ct,onAnnotationTool:$?void 0:e=>{f(e)},drawToolsRef:At,shortcuts:$?he:Ft,picker:U?(0,N.jsx)(Me,{sources:dt,captureThumbnail:a,cardGrowth:S,side:(P!==null||I)&&(D===`left`||D===`right`)?D===`left`?`right`:`left`:void 0,avatarBox:k,optionsBox:j,cardRef:Tt,label:G===`share`?e(`companionSurface.sharePicker`):void 0,onPick:Kt,onAllowScreenRecording:()=>{(Se()?Ce(`screen`):ae(`screen`)).catch(()=>void 0)}}):null,prompt:!Vt||V===void 0?null:H===`row`&&(V.kind===`approvals`||V.kind===`secret`)?(0,N.jsx)(be,{popover:V,onAnswer:e=>{v(e,V.id)},onView:e=>{c(V.id,e)}}):(0,N.jsx)(xe,{attached:!0,popover:V,view:H??`expanded`,style:{maxHeight:Ie},onAnswer:e=>{v(e,V.id)},onView:e=>{c(V.id,e)},onOpenLink:e=>{p(e)}},V.id),promptRef:Dt,onWorkShelfChange:Wt,promptsDeferred:sn,onReviewPrompts:()=>{V!==void 0&&c(V.id,`expanded`)},onControl:$?void 0:(e,t)=>{n(t===void 0?{action:e}:{action:e,requestId:t})}})})}export{Le as CompanionSurfacePage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$C as t,Fc as n,gC as r,n_ as i,nc as a}from"./app-KRIEMzuO.js";import{E as o}from"./vendor-DLH51Vjf.js";import{t as s,x as c}from"./react-B9IgSVeK.js";import{Mn as l,Ra as u,Ya as d,i as f}from"./icons-C0wyat6T.js";import{i as p,t as m}from"./companion-surface-DzxGavvE.js";var h=d(`monitor-up`,[[`path`,{d:`m9 10 3-3 3 3`,key:`11gsxs`}],[`path`,{d:`M12 13V7`,key:`h0r20n`}],[`rect`,{width:`20`,height:`14`,x:`2`,y:`3`,rx:`2`,key:`48i651`}],[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}]]),g=d(`mouse-pointer-2`,[[`path`,{d:`M4.037 4.688a.495.495 0 0 1 .651-.651l16 6.5a.5.5 0 0 1-.063.947l-6.124 1.58a2 2 0 0 0-1.438 1.435l-1.579 6.126a.5.5 0 0 1-.947.063z`,key:`edeuup`}]]),_=e(c(),1),v=s(),y=i(`avatar`,`small`),b=i(`options`,`small`);function x({avatar:e,assistantName:i,open:s,onStart:c,onDismiss:d}){let{t:x}=o(),C=(0,_.useRef)(null),w=e?n(e.customImageUrl,e.components,e.traits,y):null;return(0,v.jsx)(r.Root,{open:s,onOpenChange:e=>{e||d()},children:(0,v.jsx)(r.Content,{ref:C,size:`lg`,hideCloseButton:!0,dismissOnOverlayClick:!1,onOpenAutoFocus:e=>{e.preventDefault(),C.current?.focus()},onEscapeKeyDown:e=>{e.preventDefault(),d()},className:`max-w-[820px] overflow-hidden`,style:a(e?.accentHex),children:(0,v.jsxs)(`div`,{className:`relative grid min-h-[500px] md:grid-cols-[1.18fr_0.82fr]`,children:[(0,v.jsx)(`button`,{type:`button`,"aria-label":x(`companionIntro.announcement.close`),className:`absolute top-4 right-4 z-10 flex size-8 items-center justify-center rounded-full text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-active)] hover:text-[var(--content-default)] md:text-white/60 md:hover:bg-white/10 md:hover:text-white`,onClick:d,children:(0,v.jsx)(f,{className:`size-4`})}),(0,v.jsxs)(`div`,{className:`relative flex min-w-0 flex-col p-8 sm:p-10`,children:[(0,v.jsx)(r.Title,{className:`[&>span]:whitespace-normal pr-8 text-[32px] leading-[1.08] tracking-[0.01em]`,children:x(`companionIntro.announcement.title`)}),(0,v.jsx)(r.Description,{className:`mt-3 max-w-[420px] text-body-medium-lighter leading-6 text-[var(--content-secondary)]`,children:x(`companionIntro.announcement.body`)}),(0,v.jsxs)(`div`,{className:`mt-6 flex flex-col gap-2`,children:[(0,v.jsx)(S,{icon:l,title:x(`companionIntro.announcement.cards.flow.title`),body:x(`companionIntro.announcement.cards.flow.body`)}),(0,v.jsx)(S,{icon:h,title:x(`companionIntro.announcement.cards.context.title`),body:x(`companionIntro.announcement.cards.context.body`)}),(0,v.jsx)(S,{icon:g,title:x(`companionIntro.announcement.cards.together.title`),body:x(`companionIntro.announcement.cards.together.body`)})]}),(0,v.jsx)(`div`,{className:`mt-auto flex justify-end pt-8`,children:(0,v.jsx)(t,{variant:`primary`,rightIcon:(0,v.jsx)(u,{className:`size-4`}),onClick:c,children:x(`companionIntro.announcement.start`)})})]}),(0,v.jsxs)(`div`,{className:`relative hidden min-h-[500px] overflow-hidden bg-[#17191d] md:block`,"aria-label":x(`companionIntro.announcement.previewLabel`),children:[(0,v.jsx)(`div`,{className:`absolute inset-0 opacity-80`,style:{background:`radial-gradient(circle at 68% 22%, color-mix(in srgb, ${e?.accentHex??`var(--content-tertiary)`} 20%, transparent), transparent 34%), linear-gradient(145deg, #252a32 0%, #15171b 72%)`}}),(0,v.jsxs)(`div`,{className:`absolute top-20 right-8 left-8 h-60 overflow-hidden rounded-xl border border-white/10 bg-white/8 shadow-2xl shadow-black/30`,children:[(0,v.jsxs)(`div`,{className:`flex h-8 items-center gap-1.5 border-b border-white/8 px-3`,children:[(0,v.jsx)(`span`,{className:`size-2 rounded-full bg-white/20`}),(0,v.jsx)(`span`,{className:`size-2 rounded-full bg-white/15`}),(0,v.jsx)(`span`,{className:`size-2 rounded-full bg-white/10`})]}),(0,v.jsxs)(`div`,{className:`flex flex-col gap-3 p-5`,children:[(0,v.jsx)(`span`,{className:`h-2.5 w-2/3 rounded-full bg-white/13`}),(0,v.jsx)(`span`,{className:`h-2.5 w-full rounded-full bg-white/8`}),(0,v.jsx)(`span`,{className:`h-2.5 w-5/6 rounded-full bg-white/8`}),(0,v.jsx)(`span`,{className:`mt-3 h-20 rounded-lg bg-white/6`})]})]}),(0,v.jsx)(`div`,{className:`absolute inset-x-0 bottom-16 h-48`,inert:!0,children:(0,v.jsx)(m,{phase:`call`,call:p(x(`companionIntro.call.line`)),shareEnabled:!0,sharing:!0,assistantName:i??x(`companionIntro.announcement.previewAssistantName`),accentHex:e?.accentHex??void 0,character:w?.kind===`character`?w.traits:void 0,avatarSrc:w?.kind===`image`?w.url:void 0,avatarBox:y,optionsBox:b})})]})]})})})}function S({icon:e,title:t,body:n}){return(0,v.jsxs)(`div`,{className:`flex items-center gap-3 rounded-xl border border-[var(--border-base)] bg-[var(--surface-base)] p-3`,children:[(0,v.jsx)(`span`,{className:`flex size-9 shrink-0 items-center justify-center rounded-full bg-[color-mix(in_srgb,var(--avatar-accent,var(--surface-lift))_28%,var(--surface-base))] text-[var(--content-default)]`,children:(0,v.jsx)(e,{className:`size-4`})}),(0,v.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,v.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-emphasised)]`,children:t}),(0,v.jsx)(`span`,{className:`text-body-small-default leading-5 text-[var(--content-tertiary)]`,children:n})]})]})}export{x as CompanionTourEntryModal};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$g as t,El as n,Hl as r,Nl as i,Rl as a,Yl as o,e_ as s}from"./app-DbJUeBix.js";import{E as c}from"./vendor-CtXGFqsu.js";import{t as l,x as u}from"./react-B9IgSVeK.js";import{n as d}from"./companion-accent-C8bpme2H.js";var f=e(u(),1);function p(e){let t=e>>>0;return()=>{t=t+1831565813>>>0;let e=Math.imul(t^t>>>15,1|t);return e=e+Math.imul(e^e>>>7,61|e)^e,((e^e>>>14)>>>0)/4294967296}}function m(e,t){return Math.round(e*1e3)*73856093^Math.round(t*1e3)*19349663}function h(e,t){if(e.length<2)return``;let n=n=>t?e[(n+e.length)%e.length]:e[Math.min(Math.max(n,0),e.length-1)],r=n(0),i=`M ${g(r.x)} ${g(r.y)}`,a=t?e.length:e.length-1;for(let e=0;e<a;e+=1){let t=n(e-1),r=n(e),a=n(e+1),o=n(e+2),s={x:r.x+(a.x-t.x)/6,y:r.y+(a.y-t.y)/6},c={x:a.x-(o.x-r.x)/6,y:a.y-(o.y-r.y)/6};i+=` C ${g(s.x)} ${g(s.y)}, ${g(c.x)} ${g(c.y)}, ${g(a.x)} ${g(a.y)}`}return t?`${i} Z`:i}function g(e){return Math.round(e*100)/100}var _=.09,v=.05,y=.028;function b(e){return Math.min(Math.max(e,0),_)}var x=1.5;x-Math.SQRT2*(x-1);function S(e,t){let n=Math.min(t*x,Math.min(e.width,e.height)/2+t),r=n-t,i=r,a=e.width-r,o=r,s=e.height-r,c={x:Math.max(a-i,0),y:Math.max(s-o,0)},l=Math.PI*n/2,u=[l,c.x,l,c.y,l,c.x,l,c.y],d=u.reduce((e,t)=>e+t,0),f=[{centre:{x:i,y:o},from:Math.PI},{centre:{x:a,y:o},from:-Math.PI/2},{centre:{x:a,y:s},from:0},{centre:{x:i,y:s},from:Math.PI/2}];return{at:e=>{let t=e%1*d;t<0&&(t+=d);for(let e=0;e<u.length;e+=1){let r=u[e];if(t>r&&e<u.length-1){t-=r;continue}let c=r===0?0:Math.min(t/r,1),l=f[e/2];if(e%2==0){let e=l.from+Math.PI/2*c;return{x:l.centre.x+Math.cos(e)*n,y:l.centre.y+Math.sin(e)*n}}let[d,p]=[[{x:i,y:o-n},{x:a,y:o-n}],[{x:a+n,y:o},{x:a+n,y:s}],[{x:a,y:s+n},{x:i,y:s+n}],[{x:i-n,y:s},{x:i-n,y:o}]][(e-1)/2];return{x:d.x+(p.x-d.x)*c,y:d.y+(p.y-d.y)*c}}return{x:0,y:0}},length:d}}function C(e,t){let n=t.padding??8,r={x:e.width/2,y:e.height/2},i=S(e,n),a=b(t.strength),o=p(t.seed),s=[];for(let e=0;e<=13;e+=1){let t=i.at(.18+1.055*e/13),n={x:t.x-r.x,y:t.y-r.y},c=Math.hypot(n.x,n.y)||1,l=o()*a*c;s.push({x:t.x+n.x/c*l,y:t.y+n.y/c*l})}return s}function w(e,t){return h(C(e,t),!1)}function T(e){let t=e.gap??10,n=b(e.strength),r=p(e.seed),i=e.length+t,a=Math.max(28,e.length*.55),o=a/2,s={x:o,y:i},c={x:o,y:t},l=r()<.5?-1:1,u=a*.17*l,d=e=>({x:(1-e)*(1-e)*s.x+2*(1-e)*e*(o+u)+e*e*c.x,y:(1-e)*(1-e)*s.y+2*(1-e)*e*((s.y+c.y)/2)+e*e*c.y}),f=[];for(let e=0;e<=9;e+=1){let t=e/9,i=d(t),o=(1-t)*(1-t),s=(r()-.5)*2*n*a*o;f.push({x:i.x+s,y:i.y})}let m=d(1-1/9),_=Math.atan2(c.y-m.y,c.x-m.x),v=Math.max(11,e.length*.3),y=.42,x=`M ${g(c.x+Math.cos(_-Math.PI+y)*v)} ${g(c.y+Math.sin(_-Math.PI+y)*v)} L ${g(c.x)} ${g(c.y)} L ${g(c.x+Math.cos(_-Math.PI-y)*v)} ${g(c.y+Math.sin(_-Math.PI-y)*v)}`;return{shaft:h(f,!1),head:x,width:a,height:i}}function E(){let[e,t]=(0,f.useState)(()=>({width:typeof window>`u`?0:window.innerWidth,height:typeof window>`u`?0:window.innerHeight}));return(0,f.useEffect)(()=>{let e=()=>{t({width:window.innerWidth,height:window.innerHeight})};return e(),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`resize`,e)}},[]),e}var D=l(),O=.6,k=10,A=52,j=10,M=A+j,N=10,P=8;function F(e,t){let n=e.kind===`point`?M:0,r=e.kind===`point`?e.y:e.y+e.height,i=e.kind===`point`?0:e.width,a=(1-r)*t-n,o=e.y*t-n;return{above:a<58&&o>a,trailing:e.x+i>O}}function I(e,t,n){let r=n?1-e.y:e.kind===`point`?e.y:e.y+e.height,i=Math.max(t-58,0),a=e.kind===`point`?A:0;return Math.round(Math.min(r*t+a+k,i))}function L(e){let t=Math.min(Math.max(e,0),1)*100;return`${Number(t.toFixed(4))}%`}function R(e){let t=e.kind===`region`?`${e.width},${e.height}`:`point`;return`${e.kind},${e.x},${e.y},${t},${e.caption??``}`}function z({mark:e,box:t}){let n=Math.max(e.width*t.width,1),r=Math.max(e.height*t.height,1),i=N+P,a=w({width:n,height:r},{strength:v,seed:m(e.x,e.y),padding:N});return(0,D.jsxs)(`svg`,{className:`companion-coachmark`,"data-testid":`companion-coachmark`,"aria-hidden":`true`,viewBox:`${-i} ${-i} ${n+i*2} ${r+i*2}`,width:n+i*2,height:r+i*2,style:{left:Math.round(e.x*t.width-i),top:Math.round(e.y*t.height-i)},children:[(0,D.jsx)(`path`,{className:`companion-coachmark-halo`,d:a}),(0,D.jsx)(`path`,{className:`companion-coachmark-ink`,d:a})]})}function B({mark:e,above:t,box:n}){let r=T({length:A,approach:t?`above`:`below`,strength:y,seed:m(e.x,e.y),gap:j});return(0,D.jsxs)(`svg`,{className:`companion-coachmark-pointer`,"data-testid":`companion-coachmark-pointer`,"data-above":t?``:void 0,"aria-hidden":`true`,viewBox:`0 0 ${r.width} ${r.height}`,width:r.width,height:r.height,style:{left:Math.round(e.x*n.width-r.width/2),top:Math.round(e.y*n.height-(t?r.height:0)),...t?{"--companion-coachmark-turn":`rotate(180deg)`}:{}},children:[(0,D.jsx)(`path`,{className:`companion-coachmark-halo`,d:r.shaft}),(0,D.jsx)(`path`,{className:`companion-coachmark-halo`,d:r.head}),(0,D.jsx)(`path`,{className:`companion-coachmark-ink`,d:r.shaft}),(0,D.jsx)(`path`,{className:`companion-coachmark-ink`,d:r.head})]})}function V({marks:e,ink:t}){let n=E();return(0,D.jsx)(`div`,{className:`pointer-events-none fixed inset-0`,"data-testid":`companion-coachmarks`,style:{"--companion-ring-accent":t},role:`presentation`,children:e.map(e=>{let{above:t,trailing:r}=F(e,n.height),i=`${I(e,n.height,t)}px`;return(0,D.jsxs)(f.Fragment,{children:[e.kind===`region`?(0,D.jsx)(z,{mark:e,box:n}):(0,D.jsx)(B,{mark:e,above:t,box:n}),e.caption!==void 0&&e.caption!==``&&(0,D.jsx)(`div`,{className:`companion-coachmark-caption`,"data-testid":`companion-coachmark-caption`,"data-above":t?``:void 0,"data-trailing":r?``:void 0,style:{...r?{right:L(1-(e.kind===`region`?e.x+e.width:e.x))}:{left:L(e.x)},...t?{bottom:i}:{top:i},maxWidth:L(.4)},children:e.caption})]},R(e))})})}var H=4500,U=e=>Math.min(Math.max(e,0),1);function W(e,t,n){switch(e){case`line`:return[t,n];case`box`:return[t,{x:n.x,y:t.y},n,{x:t.x,y:n.y},t];case`circle`:{let e=(t.x+n.x)/2,r=(t.y+n.y)/2,i=Math.abs(n.x-t.x)/2,a=Math.abs(n.y-t.y)/2;return Array.from({length:49},(t,n)=>{let o=n/48*Math.PI*2;return{x:e+i*Math.cos(o),y:r+a*Math.sin(o)}})}}}function G(e,n,r){let i=(n.x-e.x)*r,a=n.y-e.y;return i*i+a*a>=t**2}var K=`<path d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"/><path d="m15 5 4 4"/>`;function q(e){let t=`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke-linecap="round" stroke-linejoin="round"><g stroke="#ffffff" stroke-width="4">${K}</g><g stroke="${e}" stroke-width="2">${K}</g></svg>`;return`url("data:image/svg+xml,${encodeURIComponent(t)}") 2 22, crosshair`}function J({ink:e,cleared:t=0,tool:i=`freehand`}){let[a,o]=(0,f.useState)([]),c=(0,f.useRef)([]),l=(0,f.useRef)(null),u=(0,f.useRef)({x:0,y:0}),d=(0,f.useRef)(!1),p=(0,f.useRef)(0),m=(0,f.useRef)(new Set),h=E(),g=h.height===0?1:h.width/h.height,_=(0,f.useRef)(e);(0,f.useEffect)(()=>{_.current=e},[e]),(0,f.useEffect)(()=>{let e=m.current;return()=>{for(let t of e)clearTimeout(t);e.clear(),l.current!==null&&(l.current=null,n(`released`,[],_.current))}},[]);let v=(0,f.useCallback)(e=>{c.current=e,o(e)},[]),y=(0,f.useRef)(t);(0,f.useEffect)(()=>{t!==y.current&&(y.current=t,v(c.current.filter(e=>e.id===l.current)))},[t,v]);let b=e=>({x:h.width===0?0:U(e.clientX/h.width),y:h.height===0?0:U(e.clientY/h.height)}),x=()=>{l.current===null&&(d.current=!0,r(!0))},S=()=>{d.current&&(d.current=!1,r(!1))},C=t=>{if(S(),l.current!==null)return;t.currentTarget.setPointerCapture(t.pointerId);let r=p.current++;l.current=r;let i=b(t);u.current=i,v([...c.current,{id:r,points:[i],spent:!1}]),n(`drawing`,[],e)},w=e=>{S();let t=l.current;if(t===null)return;let n=b(e),r=c.current.find(e=>e.id===t);if(r===void 0)return;let a=r.points[r.points.length-1];a!==void 0&&!G(a,n,g)||v(c.current.map(e=>e.id===t?{...e,points:i===`freehand`?[...e.points,n].slice(-512):W(i,u.current,n)}:e))},T=t=>{if(l.current===null)return;l.current=null,t.currentTarget.hasPointerCapture(t.pointerId)&&t.currentTarget.releasePointerCapture(t.pointerId);let r=c.current.map(e=>({...e,spent:!0}));v(r),n(`released`,r.slice(-24).map(e=>({points:e.points})),e);let i=new Set(r.map(e=>e.id)),a=setTimeout(()=>{m.current.delete(a),v(c.current.filter(e=>!i.has(e.id)))},H+900);m.current.add(a)},O=s*Math.min(h.width,h.height),k=(0,f.useMemo)(()=>q(e),[e]);return(0,D.jsx)(`svg`,{className:`companion-share-annotation fixed inset-0 h-full w-full`,style:{cursor:i===`freehand`?k:`crosshair`,"--companion-ink-hold":`${H}ms`,"--companion-ink-fade":`900ms`},"data-testid":`companion-share-annotation`,"data-cleared":t,"data-tool":i,role:`presentation`,onPointerDown:C,onPointerMove:w,onPointerUp:T,onPointerCancel:T,onWheel:x,children:a.map(t=>(0,D.jsx)(Y,{stroke:t,box:h,width:O,ink:e},t.id))})}function Y({stroke:e,box:t,width:n,ink:r}){let i=e.spent?`companion-share-ink companion-share-ink-spent`:`companion-share-ink`,a=e.points[0];return e.points.length===1&&a!==void 0?(0,D.jsx)(`circle`,{className:i,cx:a.x*t.width,cy:a.y*t.height,r:n/2,fill:r}):(0,D.jsx)(`polyline`,{className:i,points:e.points.map(e=>`${e.x*t.width},${e.y*t.height}`).join(` `),fill:`none`,stroke:r,strokeWidth:n,strokeLinecap:`round`,strokeLinejoin:`round`})}function X(e,t){return e?{kind:`teaching`}:t===void 0?null:{kind:`sharing`,target:t}}function Z({read:e,assistantName:t,style:n}){let{t:r}=c(),i=t!==``,a=e.kind===`teaching`?i?r(`companionWatchFramePage.teachingNamed`,{name:t}):r(`companionWatchFramePage.teaching`):e.target.kind===`display`?i?r(`companionWatchFramePage.sharingScreenNamed`,{name:t}):r(`companionWatchFramePage.sharingScreen`):i?r(`companionWatchFramePage.sharingWindowNamed`,{name:t}):r(`companionWatchFramePage.sharingWindow`);return(0,D.jsxs)(`div`,{className:`companion-watch-frame-label`,"data-testid":`companion-watch-frame-label`,"data-read":e.kind,style:n,children:[(0,D.jsx)(`span`,{className:`companion-watch-frame-label-dot`}),a]})}function Q(e,t){let n=(0,f.useRef)({captureCount:e,watching:t}),[r,i]=(0,f.useState)(0);return(0,f.useEffect)(()=>{let r=n.current;if(n.current={captureCount:e,watching:t},!t){i(0);return}r.watching&&e>r.captureCount&&i(e=>e+1)},[e,t]),r}function $(e){let t=(0,f.useRef)(!1);(0,f.useEffect)(()=>{if(!e||t.current)return;let n=0,r=requestAnimationFrame(()=>{n=requestAnimationFrame(()=>{t.current=!0,a()})});return()=>{cancelAnimationFrame(r),cancelAnimationFrame(n)}},[e])}function ee(){let[e,t]=(0,f.useState)(null);(0,f.useEffect)(()=>{let e=o(t);return i().then(e=>{e&&t(e)}),e},[]);let n=e?.watching===!0,r=e?.screenShare!==void 0,a=X(n,e?.screenShare),s=a!==null;$(s);let c=Q(e?.captureCount??0,n),l=d(e?.call??null,e?.accentHex,e?.character),u=l===void 0?void 0:{"--companion-ring-accent":l},p=e?.frameInsetTop??0,m=p>0?{...u,"--companion-frame-inset":`${p}px`}:u,h=e?.annotating===!0,g=r&&!n?e?.coachmarks??[]:[];return(0,D.jsxs)(`div`,{className:`pointer-events-none h-screen w-screen bg-transparent`,role:`presentation`,"aria-hidden":!0,children:[s&&(0,D.jsx)(`div`,{className:`companion-watch-frame fixed inset-0`,style:u}),a!==null&&(0,D.jsx)(Z,{read:a,assistantName:e?.assistantName??``,style:m}),n&&c>0&&(0,D.jsx)(`div`,{className:`companion-watch-frame-flash fixed inset-0`,style:u},c),h&&(0,D.jsx)(J,{ink:l??`#5eead4`,cleared:e?.marksCleared??0,tool:e?.annotationTool}),g.length>0&&(0,D.jsx)(V,{marks:g,ink:l??`#5eead4`})]})}export{ee as CompanionWatchFramePage};
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Al as t,Cl as n,Fl as r,Jg as i,Kl as a,qg as o,zl as s}from"./app-KRIEMzuO.js";import{E as c}from"./vendor-DLH51Vjf.js";import{t as l,x as u}from"./react-B9IgSVeK.js";import{n as d}from"./companion-accent-obJ7TDkU.js";var f=e(u(),1);function p(e){let t=e>>>0;return()=>{t=t+1831565813>>>0;let e=Math.imul(t^t>>>15,1|t);return e=e+Math.imul(e^e>>>7,61|e)^e,((e^e>>>14)>>>0)/4294967296}}function m(e,t){return Math.round(e*1e3)*73856093^Math.round(t*1e3)*19349663}function h(e,t){if(e.length<2)return``;let n=n=>t?e[(n+e.length)%e.length]:e[Math.min(Math.max(n,0),e.length-1)],r=n(0),i=`M ${g(r.x)} ${g(r.y)}`,a=t?e.length:e.length-1;for(let e=0;e<a;e+=1){let t=n(e-1),r=n(e),a=n(e+1),o=n(e+2),s={x:r.x+(a.x-t.x)/6,y:r.y+(a.y-t.y)/6},c={x:a.x-(o.x-r.x)/6,y:a.y-(o.y-r.y)/6};i+=` C ${g(s.x)} ${g(s.y)}, ${g(c.x)} ${g(c.y)}, ${g(a.x)} ${g(a.y)}`}return t?`${i} Z`:i}function g(e){return Math.round(e*100)/100}var _=.09,v=.05,y=.028;function b(e){return Math.min(Math.max(e,0),_)}var x=1.5;x-Math.SQRT2*(x-1);function S(e,t){let n=Math.min(t*x,Math.min(e.width,e.height)/2+t),r=n-t,i=r,a=e.width-r,o=r,s=e.height-r,c={x:Math.max(a-i,0),y:Math.max(s-o,0)},l=Math.PI*n/2,u=[l,c.x,l,c.y,l,c.x,l,c.y],d=u.reduce((e,t)=>e+t,0),f=[{centre:{x:i,y:o},from:Math.PI},{centre:{x:a,y:o},from:-Math.PI/2},{centre:{x:a,y:s},from:0},{centre:{x:i,y:s},from:Math.PI/2}];return{at:e=>{let t=e%1*d;t<0&&(t+=d);for(let e=0;e<u.length;e+=1){let r=u[e];if(t>r&&e<u.length-1){t-=r;continue}let c=r===0?0:Math.min(t/r,1),l=f[e/2];if(e%2==0){let e=l.from+Math.PI/2*c;return{x:l.centre.x+Math.cos(e)*n,y:l.centre.y+Math.sin(e)*n}}let[d,p]=[[{x:i,y:o-n},{x:a,y:o-n}],[{x:a+n,y:o},{x:a+n,y:s}],[{x:a,y:s+n},{x:i,y:s+n}],[{x:i-n,y:s},{x:i-n,y:o}]][(e-1)/2];return{x:d.x+(p.x-d.x)*c,y:d.y+(p.y-d.y)*c}}return{x:0,y:0}},length:d}}function C(e,t){let n=t.padding??8,r={x:e.width/2,y:e.height/2},i=S(e,n),a=b(t.strength),o=p(t.seed),s=[];for(let e=0;e<=13;e+=1){let t=i.at(.18+1.055*e/13),n={x:t.x-r.x,y:t.y-r.y},c=Math.hypot(n.x,n.y)||1,l=o()*a*c;s.push({x:t.x+n.x/c*l,y:t.y+n.y/c*l})}return s}function w(e,t){return h(C(e,t),!1)}function T(e){let t=e.gap??10,n=b(e.strength),r=p(e.seed),i=e.length+t,a=Math.max(28,e.length*.55),o=a/2,s={x:o,y:i},c={x:o,y:t},l=r()<.5?-1:1,u=a*.17*l,d=e=>({x:(1-e)*(1-e)*s.x+2*(1-e)*e*(o+u)+e*e*c.x,y:(1-e)*(1-e)*s.y+2*(1-e)*e*((s.y+c.y)/2)+e*e*c.y}),f=[];for(let e=0;e<=9;e+=1){let t=e/9,i=d(t),o=(1-t)*(1-t),s=(r()-.5)*2*n*a*o;f.push({x:i.x+s,y:i.y})}let m=d(1-1/9),_=Math.atan2(c.y-m.y,c.x-m.x),v=Math.max(11,e.length*.3),y=.42,x=`M ${g(c.x+Math.cos(_-Math.PI+y)*v)} ${g(c.y+Math.sin(_-Math.PI+y)*v)} L ${g(c.x)} ${g(c.y)} L ${g(c.x+Math.cos(_-Math.PI-y)*v)} ${g(c.y+Math.sin(_-Math.PI-y)*v)}`;return{shaft:h(f,!1),head:x,width:a,height:i}}function E(){let[e,t]=(0,f.useState)(()=>({width:typeof window>`u`?0:window.innerWidth,height:typeof window>`u`?0:window.innerHeight}));return(0,f.useEffect)(()=>{let e=()=>{t({width:window.innerWidth,height:window.innerHeight})};return e(),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`resize`,e)}},[]),e}var D=l(),O=.6,k=10,A=52,j=10,M=A+j,N=10,P=8;function F(e,t){let n=e.kind===`point`?M:0,r=e.kind===`point`?e.y:e.y+e.height,i=e.kind===`point`?0:e.width,a=(1-r)*t-n,o=e.y*t-n;return{above:a<58&&o>a,trailing:e.x+i>O}}function I(e,t,n){let r=n?1-e.y:e.kind===`point`?e.y:e.y+e.height,i=Math.max(t-58,0),a=e.kind===`point`?A:0;return Math.round(Math.min(r*t+a+k,i))}function L(e){let t=Math.min(Math.max(e,0),1)*100;return`${Number(t.toFixed(4))}%`}function R(e){let t=e.kind===`region`?`${e.width},${e.height}`:`point`;return`${e.kind},${e.x},${e.y},${t},${e.caption??``}`}function z({mark:e,box:t}){let n=Math.max(e.width*t.width,1),r=Math.max(e.height*t.height,1),i=N+P,a=w({width:n,height:r},{strength:v,seed:m(e.x,e.y),padding:N});return(0,D.jsxs)(`svg`,{className:`companion-coachmark`,"data-testid":`companion-coachmark`,"aria-hidden":`true`,viewBox:`${-i} ${-i} ${n+i*2} ${r+i*2}`,width:n+i*2,height:r+i*2,style:{left:Math.round(e.x*t.width-i),top:Math.round(e.y*t.height-i)},children:[(0,D.jsx)(`path`,{className:`companion-coachmark-halo`,d:a}),(0,D.jsx)(`path`,{className:`companion-coachmark-ink`,d:a})]})}function B({mark:e,above:t,box:n}){let r=T({length:A,approach:t?`above`:`below`,strength:y,seed:m(e.x,e.y),gap:j});return(0,D.jsxs)(`svg`,{className:`companion-coachmark-pointer`,"data-testid":`companion-coachmark-pointer`,"data-above":t?``:void 0,"aria-hidden":`true`,viewBox:`0 0 ${r.width} ${r.height}`,width:r.width,height:r.height,style:{left:Math.round(e.x*n.width-r.width/2),top:Math.round(e.y*n.height-(t?r.height:0)),...t?{"--companion-coachmark-turn":`rotate(180deg)`}:{}},children:[(0,D.jsx)(`path`,{className:`companion-coachmark-halo`,d:r.shaft}),(0,D.jsx)(`path`,{className:`companion-coachmark-halo`,d:r.head}),(0,D.jsx)(`path`,{className:`companion-coachmark-ink`,d:r.shaft}),(0,D.jsx)(`path`,{className:`companion-coachmark-ink`,d:r.head})]})}function V({marks:e,ink:t}){let n=E();return(0,D.jsx)(`div`,{className:`pointer-events-none fixed inset-0`,"data-testid":`companion-coachmarks`,style:{"--companion-ring-accent":t},role:`presentation`,children:e.map(e=>{let{above:t,trailing:r}=F(e,n.height),i=`${I(e,n.height,t)}px`;return(0,D.jsxs)(f.Fragment,{children:[e.kind===`region`?(0,D.jsx)(z,{mark:e,box:n}):(0,D.jsx)(B,{mark:e,above:t,box:n}),e.caption!==void 0&&e.caption!==``&&(0,D.jsx)(`div`,{className:`companion-coachmark-caption`,"data-testid":`companion-coachmark-caption`,"data-above":t?``:void 0,"data-trailing":r?``:void 0,style:{...r?{right:L(1-(e.kind===`region`?e.x+e.width:e.x))}:{left:L(e.x)},...t?{bottom:i}:{top:i},maxWidth:L(.4)},children:e.caption})]},R(e))})})}var H=4500,U=e=>Math.min(Math.max(e,0),1);function W(e,t,n){switch(e){case`line`:return[t,n];case`box`:return[t,{x:n.x,y:t.y},n,{x:t.x,y:n.y},t];case`circle`:{let e=(t.x+n.x)/2,r=(t.y+n.y)/2,i=Math.abs(n.x-t.x)/2,a=Math.abs(n.y-t.y)/2;return Array.from({length:49},(t,n)=>{let o=n/48*Math.PI*2;return{x:e+i*Math.cos(o),y:r+a*Math.sin(o)}})}}}function G(e,t,n){let r=(t.x-e.x)*n,i=t.y-e.y;return r*r+i*i>=o**2}var K=`<path d="M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z"/><path d="m15 5 4 4"/>`;function q(e){let t=`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke-linecap="round" stroke-linejoin="round"><g stroke="#ffffff" stroke-width="4">${K}</g><g stroke="${e}" stroke-width="2">${K}</g></svg>`;return`url("data:image/svg+xml,${encodeURIComponent(t)}") 2 22, crosshair`}function J({ink:e,cleared:t=0,tool:r=`freehand`}){let[a,o]=(0,f.useState)([]),c=(0,f.useRef)([]),l=(0,f.useRef)(null),u=(0,f.useRef)({x:0,y:0}),d=(0,f.useRef)(!1),p=(0,f.useRef)(0),m=(0,f.useRef)(new Set),h=E(),g=h.height===0?1:h.width/h.height,_=(0,f.useRef)(e);(0,f.useEffect)(()=>{_.current=e},[e]),(0,f.useEffect)(()=>{let e=m.current;return()=>{for(let t of e)clearTimeout(t);e.clear(),l.current!==null&&(l.current=null,n(`released`,[],_.current))}},[]);let v=(0,f.useCallback)(e=>{c.current=e,o(e)},[]),y=(0,f.useRef)(t);(0,f.useEffect)(()=>{t!==y.current&&(y.current=t,v(c.current.filter(e=>e.id===l.current)))},[t,v]);let b=e=>({x:h.width===0?0:U(e.clientX/h.width),y:h.height===0?0:U(e.clientY/h.height)}),x=()=>{l.current===null&&(d.current=!0,s(!0))},S=()=>{d.current&&(d.current=!1,s(!1))},C=t=>{if(S(),l.current!==null)return;t.currentTarget.setPointerCapture(t.pointerId);let r=p.current++;l.current=r;let i=b(t);u.current=i,v([...c.current,{id:r,points:[i],spent:!1}]),n(`drawing`,[],e)},w=e=>{S();let t=l.current;if(t===null)return;let n=b(e),i=c.current.find(e=>e.id===t);if(i===void 0)return;let a=i.points[i.points.length-1];a!==void 0&&!G(a,n,g)||v(c.current.map(e=>e.id===t?{...e,points:r===`freehand`?[...e.points,n].slice(-512):W(r,u.current,n)}:e))},T=t=>{if(l.current===null)return;l.current=null,t.currentTarget.hasPointerCapture(t.pointerId)&&t.currentTarget.releasePointerCapture(t.pointerId);let r=c.current.map(e=>({...e,spent:!0}));v(r),n(`released`,r.slice(-24).map(e=>({points:e.points})),e);let i=new Set(r.map(e=>e.id)),a=setTimeout(()=>{m.current.delete(a),v(c.current.filter(e=>!i.has(e.id)))},H+900);m.current.add(a)},O=i*Math.min(h.width,h.height),k=(0,f.useMemo)(()=>q(e),[e]);return(0,D.jsx)(`svg`,{className:`companion-share-annotation fixed inset-0 h-full w-full`,style:{cursor:r===`freehand`?k:`crosshair`,"--companion-ink-hold":`${H}ms`,"--companion-ink-fade":`900ms`},"data-testid":`companion-share-annotation`,"data-cleared":t,"data-tool":r,role:`presentation`,onPointerDown:C,onPointerMove:w,onPointerUp:T,onPointerCancel:T,onWheel:x,children:a.map(t=>(0,D.jsx)(Y,{stroke:t,box:h,width:O,ink:e},t.id))})}function Y({stroke:e,box:t,width:n,ink:r}){let i=e.spent?`companion-share-ink companion-share-ink-spent`:`companion-share-ink`,a=e.points[0];return e.points.length===1&&a!==void 0?(0,D.jsx)(`circle`,{className:i,cx:a.x*t.width,cy:a.y*t.height,r:n/2,fill:r}):(0,D.jsx)(`polyline`,{className:i,points:e.points.map(e=>`${e.x*t.width},${e.y*t.height}`).join(` `),fill:`none`,stroke:r,strokeWidth:n,strokeLinecap:`round`,strokeLinejoin:`round`})}function X(e,t){return e?{kind:`teaching`}:t===void 0?null:{kind:`sharing`,target:t}}function Z({read:e,assistantName:t,style:n}){let{t:r}=c(),i=t!==``,a=e.kind===`teaching`?i?r(`companionWatchFramePage.teachingNamed`,{name:t}):r(`companionWatchFramePage.teaching`):e.target.kind===`display`?i?r(`companionWatchFramePage.sharingScreenNamed`,{name:t}):r(`companionWatchFramePage.sharingScreen`):i?r(`companionWatchFramePage.sharingWindowNamed`,{name:t}):r(`companionWatchFramePage.sharingWindow`);return(0,D.jsxs)(`div`,{className:`companion-watch-frame-label`,"data-testid":`companion-watch-frame-label`,"data-read":e.kind,style:n,children:[(0,D.jsx)(`span`,{className:`companion-watch-frame-label-dot`}),a]})}function Q(e,t){let n=(0,f.useRef)({captureCount:e,watching:t}),[r,i]=(0,f.useState)(0);return(0,f.useEffect)(()=>{let r=n.current;if(n.current={captureCount:e,watching:t},!t){i(0);return}r.watching&&e>r.captureCount&&i(e=>e+1)},[e,t]),r}function $(e){let t=(0,f.useRef)(!1);(0,f.useEffect)(()=>{if(!e||t.current)return;let n=0,i=requestAnimationFrame(()=>{n=requestAnimationFrame(()=>{t.current=!0,r()})});return()=>{cancelAnimationFrame(i),cancelAnimationFrame(n)}},[e])}function ee(){let[e,n]=(0,f.useState)(null);(0,f.useEffect)(()=>{let e=a(n);return t().then(e=>{e&&n(e)}),e},[]);let r=e?.watching===!0,i=e?.screenShare!==void 0,o=X(r,e?.screenShare),s=o!==null;$(s);let c=Q(e?.captureCount??0,r),l=d(e?.call??null,e?.accentHex,e?.character),u=l===void 0?void 0:{"--companion-ring-accent":l},p=e?.frameInsetTop??0,m=p>0?{...u,"--companion-frame-inset":`${p}px`}:u,h=e?.annotating===!0,g=i&&!r?e?.coachmarks??[]:[];return(0,D.jsxs)(`div`,{className:`pointer-events-none h-screen w-screen bg-transparent`,role:`presentation`,"aria-hidden":!0,children:[s&&(0,D.jsx)(`div`,{className:`companion-watch-frame fixed inset-0`,style:u}),o!==null&&(0,D.jsx)(Z,{read:o,assistantName:e?.assistantName??``,style:m}),r&&c>0&&(0,D.jsx)(`div`,{className:`companion-watch-frame-flash fixed inset-0`,style:u},c),h&&(0,D.jsx)(J,{ink:l??`#5eead4`,cleared:e?.marksCleared??0,tool:e?.annotationTool}),g.length>0&&(0,D.jsx)(V,{marks:g,ink:l??`#5eead4`})]})}export{ee as CompanionWatchFramePage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$C as t,BC as n,HC as r,W as i,hC as a,xS as o}from"./app-KRIEMzuO.js";import{E as s,Xn as c,nr as l}from"./vendor-DLH51Vjf.js";import{_ as u,f as d,t as f,x as p}from"./react-B9IgSVeK.js";import{D as m,tr as h}from"./icons-C0wyat6T.js";import{n as g}from"./a2a-invite-CYkZ2bwB.js";import{r as _}from"./contacts-gateway-DJQtU5it.js";var v=e(p(),1),y=f();function b(e){let t=e[0];return typeof t==`object`&&!!t&&t._id===`contactsGet`}function x(e){switch(e){case`expired`:case`not_found`:return`connectPage.errorExpired`;case`already_redeemed_by_other`:return`connectPage.errorAlreadyRedeemed`;case`sender_not_found`:return`connectPage.errorSenderNotFound`;case`not_platform_managed`:return`connectPage.errorNotPlatformManaged`;default:return null}}function S(){return(0,y.jsx)(C,{assistantId:i()})}function C({assistantId:e}){let{t:i}=s(`contacts`),f=d(),p=l(),[S]=u(),C=(0,v.useMemo)(()=>g(S),[S]),w=c({mutationFn:()=>{if(!C)throw Error(`Invalid invite link`);return _(e,{senderAssistantId:C.senderAssistantId,token:C.token})},onSuccess:e=>{e.success&&(p.invalidateQueries({predicate:e=>b(e.queryKey)}),e.alreadyConnected?a(i(`connectPage.alreadyConnected`)):a(i(`connectPage.connected`)),f(o.contacts.root))}}),T=(0,v.useCallback)(()=>{f(o.contacts.root)},[f]),E=(0,v.useCallback)(()=>{w.mutate()},[w]),D=(0,v.useMemo)(()=>{if(w.isError)return w.error instanceof Error?w.error.message:i(`connectPage.errorGeneric`);if(w.data&&!w.data.success){let e=x(w.data.errorCode);return e?i(e):w.data.error||i(`connectPage.errorGeneric`)}return null},[w.isError,w.error,w.data,i]);return C?(0,y.jsx)(`div`,{className:`flex min-h-full items-center justify-center p-6`,children:(0,y.jsx)(n,{className:`w-full max-w-md`,children:(0,y.jsxs)(`div`,{className:`flex flex-col gap-4 p-6`,children:[(0,y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,y.jsx)(h,{className:`h-6 w-6`,style:{color:`var(--content-secondary)`}}),(0,y.jsx)(r,{variant:`title-small`,children:i(`connectPage.title`)})]}),(0,y.jsx)(r,{variant:`body-medium-lighter`,style:{color:`var(--content-secondary)`},children:i(`connectPage.body`)}),D&&(0,y.jsxs)(`div`,{className:`flex items-center gap-2 rounded-md p-3`,style:{backgroundColor:`var(--system-negative-weak)`,color:`var(--system-negative-strong)`},children:[(0,y.jsx)(m,{className:`h-4 w-4 shrink-0`}),(0,y.jsx)(r,{variant:`body-small-default`,children:D})]}),(0,y.jsxs)(`div`,{className:`flex gap-2 pt-2`,children:[(0,y.jsx)(t,{variant:`primary`,onClick:E,loading:w.isPending,disabled:w.isPending,children:w.isPending?i(`actions.connecting`):i(`actions.connect`)}),(0,y.jsx)(t,{variant:`outlined`,onClick:T,disabled:w.isPending,children:i(`actions.cancel`)})]})]})})}):(0,y.jsx)(`div`,{className:`flex min-h-full items-center justify-center p-6`,children:(0,y.jsx)(n,{className:`w-full max-w-md`,children:(0,y.jsxs)(`div`,{className:`flex flex-col gap-4 p-6`,children:[(0,y.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,y.jsx)(m,{className:`h-6 w-6`,style:{color:`var(--system-negative-strong)`}}),(0,y.jsx)(r,{variant:`title-small`,children:i(`connectPage.invalidTitle`)})]}),(0,y.jsx)(r,{variant:`body-medium-lighter`,style:{color:`var(--content-secondary)`},children:i(`connectPage.invalidBody`)}),(0,y.jsx)(`div`,{className:`flex gap-2 pt-2`,children:(0,y.jsx)(t,{variant:`primary`,onClick:T,children:i(`connectPage.goToContacts`)})})]})})})}export{S as ConnectPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{BC as e,EC as t,bS as n,xS as r,zy as i}from"./app-KRIEMzuO.js";import{E as a,O as o}from"./vendor-DLH51Vjf.js";import{t as s}from"./react-B9IgSVeK.js";import{t as c}from"./setting-row-DPTW9jvI.js";var l=s(),u=[`[&_button[data-state=checked]]:bg-[var(--primary-base)]`,`[&_svg]:text-[var(--content-inset)]`,`[&_button[data-state=unchecked]]:bg-[var(--surface-base)]`,`[&_button[data-state=unchecked]]:border-[var(--border-element)]`].join(` `),d=`mb-2.5 ml-1 text-body-small-default font-medium uppercase tracking-wider text-[var(--content-tertiary)]`,f={privacy:{href:r.docs.legal.privacyPolicy,text:`Privacy and AI Data Sharing Policy`,aria:`I agree to the Privacy and AI Data Sharing Policy`},tos:{href:r.docs.legal.termsOfUse,text:`Terms of Service`,aria:`I agree to the Terms of Service`}};function p({kind:e,checked:r,onChange:a}){let s=f[e];return(0,l.jsx)(t,{checked:r,onCheckedChange:e=>a(e===!0),label:(0,l.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:(0,l.jsx)(o,{i18nKey:`consentControls.agreeTo`,ns:`onboarding`,values:{policy:s.text},components:{link:(0,l.jsx)(i,{href:n(s.href),tone:`quiet`,glyph:!1})}})}),"aria-label":s.aria,className:u})}function m(){return(0,l.jsx)(`div`,{className:`h-px bg-[var(--surface-active)] dark:bg-[var(--surface-lift)]`})}function h({notes:e}){let{t}=a(`onboarding`);return!e||e.length===0?null:(0,l.jsxs)(`div`,{className:`rounded-r-md border-l-2 border-[var(--content-secondary)] bg-[var(--surface-base)] py-3 pl-3.5 pr-3.5`,children:[(0,l.jsx)(`p`,{className:`text-body-small-default font-medium text-[var(--content-secondary)]`,children:t(`consentControls.whatsChanged`)}),e.length===1?(0,l.jsx)(`p`,{className:`mt-1.5 text-body-medium-lighter text-[var(--content-default)]`,children:e[0]}):(0,l.jsx)(`ul`,{className:`mt-2 flex flex-col gap-1.5`,children:e.map(e=>(0,l.jsxs)(`li`,{className:`flex gap-2.5 text-body-medium-lighter text-[var(--content-default)]`,children:[(0,l.jsx)(`span`,{"aria-hidden":!0,className:`mt-[0.5em] h-1 w-1 flex-none rounded-full bg-[var(--content-tertiary)]`}),(0,l.jsx)(`span`,{children:e})]},e))})]})}function g({electron:t,showAnalytics:n=!0,showDiagnostics:r=!0,shareAnalytics:i,shareDiagnostics:o,onShareAnalyticsChange:s,onShareDiagnosticsChange:u,className:f,style:p}){let{t:h}=a(`onboarding`);return(0,l.jsxs)(`section`,{className:f,style:p,children:[(0,l.jsx)(`p`,{className:d,children:h(`consentControls.privacyPreferences`)}),(0,l.jsx)(e,{padding:t?`sm`:`md`,className:`w-full`,children:(0,l.jsxs)(`div`,{className:`flex flex-col ${t?`gap-3`:`gap-4`}`,children:[n&&(0,l.jsx)(c,{label:h(`consentControls.analyticsLabel`),helperText:h(`consentControls.analyticsHelp`),checked:i,onChange:s}),n&&r&&(0,l.jsx)(m,{}),r&&(0,l.jsx)(c,{label:h(`consentControls.diagnosticsLabel`),helperText:h(`consentControls.diagnosticsHelp`),checked:o,onChange:u})]})})]})}function _({electron:e,showPrivacy:t=!0,showTos:n=!0,privacyConsent:r,tosAccepted:i,onPrivacyChange:o,onTosChange:s,privacyNotes:c,tosNotes:u,className:f,style:m}){let{t:g}=a(`onboarding`);return(0,l.jsxs)(`section`,{className:f,style:m,children:[(0,l.jsx)(`p`,{className:d,children:g(`consentControls.agreements`)}),(0,l.jsxs)(`div`,{className:`flex flex-col pl-2 ${e?`gap-3.5`:`gap-4`}`,children:[t&&(0,l.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,l.jsx)(h,{notes:c}),(0,l.jsx)(p,{kind:`privacy`,checked:r,onChange:o})]}),n&&(0,l.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,l.jsx)(h,{notes:u}),(0,l.jsx)(p,{kind:`tos`,checked:i,onChange:s})]})]})]})}export{g as n,_ as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{FS as e,LS as t,PS as n,fv as r,ip as i,np as a,rp as o}from"./app-KRIEMzuO.js";async function s(r,a){let{data:o,error:s,response:c}=await i({path:{assistant_id:r},body:a,throwOnError:!1});if(e(c,s,`Failed to save contact`),!c.ok||!o?.contact)throw new n(c.status,t(s,c,`Failed to save contact`));return o.contact}async function c(r,i){let{error:a,response:s}=await o({path:{assistant_id:r,contact_id:i},throwOnError:!1});if(e(s,a,`Failed to delete contact`),!s.ok&&s.status!==204)throw new n(s.status,t(a,s,`Failed to delete contact`))}async function l(r,i){let{error:o,response:s}=await a({path:{assistant_id:r,channel_id:i},throwOnError:!1});if(e(s,o,`Failed to verify channel`),!s.ok)throw new n(s.status,t(o,s,`Failed to verify channel`))}async function u(e,t,r){let i=(await s(e,{id:t.id,displayName:t.displayName,channels:[{type:r.type,address:r.address}]})).channels.find(e=>e.type===r.type&&e.address.toLowerCase()===r.address.toLowerCase());if(!i)throw new n(409,`That account is already linked to another contact.`);if(i.status===`blocked`)throw new n(409,`That account is blocked for this contact. Unblock it before linking.`);await l(e,i.id)}async function d(i,a){let{data:o,error:s,response:c}=await r.post({url:`/v1/assistants/{assistant_id}/a2a/invites/redeem/`,path:{assistant_id:i},body:{sender_assistant_id:a.senderAssistantId,token:a.token},headers:{"Content-Type":`application/json`},throwOnError:!1});if(e(c,s,`Failed to redeem A2A invite`),!c.ok)throw new n(c.status,t(s,c,`Failed to redeem A2A invite`));return{success:o?.success??!0,alreadyConnected:o?.already_connected,error:o?.error,errorCode:o?.error_code}}export{l as a,s as i,u as n,d as r,c as t};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$C as t,Ap as n,BC as r,HC as i,KC as a,OC as o,Ov as s,PC as c,Qh as l,Rm as u,W as d,X as f,Zf as p,Zh as m,ca as h,fC as g,gC as _,hC as v,iw as y,jp as b,kp as x,mC as ee,mp as S,nu as te,pp as C,tu as w,w as ne,xS as T,zm as re}from"./app-KRIEMzuO.js";import{$n as E,E as D,O,Xn as k,j as A,nr as ie}from"./vendor-DLH51Vjf.js";import{_ as ae,d as oe,f as se,h as ce,r as le,t as ue,x as de}from"./react-B9IgSVeK.js";import{Bi as j,Dn as fe,Kt as pe,Lt as me,Ra as he,Vn as ge,Ya as M,Yn as N,Zt as _e,_a as P,_t as ve,br as F,tr as ye,vt as I,x as L,za as be}from"./icons-C0wyat6T.js";import{t as R}from"./ellipsis-vertical-Bg7ccW1x.js";import{t as z}from"./detail-card-C53pHjsM.js";import{t as B}from"./mutation-error--JEZBa3Q.js";import{a as xe,i as Se,n as V,r as Ce,t as we}from"./use-invite-link-dialog-Dqkj_T4s.js";import{t as Te}from"./use-side-list-room-CttXRA29.js";import{t as Ee}from"./intelligence-layout-slots-store-BvTIV21o.js";import{t as De}from"./use-edge-swipe-back-B2Kt4500.js";import{a as Oe,i as ke,n as Ae,t as je}from"./contacts-gateway-DJQtU5it.js";import{n as Me,t as Ne}from"./list-detail-navigation-BwyoNgJy.js";var H=M(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Pe=M(`git-merge`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M6 21V9a9 9 0 0 0 9 9`,key:`7kw0sc`}]]),U=e(de(),1),Fe=new Set([`slack`]);function Ie(e){return e.status===`verified`||e.status===`active`&&e.verifiedAt!=null}function Le(e){switch(e){case`slack`:return`channelType.slack`;case`telegram`:return`channelType.telegram`;case`discord`:return`channelType.discord`;case`whatsapp`:return`channelType.whatsapp`;case`a2a`:return`channelType.a2a`;case`phone`:return`channelType.phone`;case`email`:return`channelType.email`;default:return null}}function Re(e){let t=Le(e.toLowerCase());return t?A(t,{ns:`contacts`}):e}var ze=`New Contact`;function W(e){return e===ze}var G=ue(),Be=new Set([`telegram`,`phone`,`vellum`,`whatsapp`,`slack`,`email`,`platform`,`a2a`]);function Ve(e){return Be.has(e)}function He(e){return typeof e.source==`string`&&e.source.startsWith(`plugin:`)}function Ue(e){return e.supportsVerification||He(e)}function We(e){return!!e?.address?.trim()}function K(e,t){return e.id===`a2a`?t&&t.status!==`revoked`?{kind:`connected`}:{kind:`setup`}:t!=null&&Ie(t)?{kind:`verified`}:t?.status===`blocked`?{kind:`none`}:t&&t.status!==`revoked`||He(e)?{kind:`unverified`}:{kind:`setup`}}function q(e,t,n){let r=[],i=new Set;if(e)for(let t of e)t.id===`a2a`&&!n||(r.push(t),i.add(t.id));for(let e of t)e.status===`revoked`||i.has(e.type)||e.type===`a2a`&&!n||Ve(e.type)&&(r.push({id:e.type,source:`default`,label:e.type.charAt(0).toUpperCase()+e.type.slice(1),subtitle:``,icon:`help-circle`,supportsVerification:!1,setupMessages:{guardian:``,contact:``}}),i.add(e.type));return r}function Ge({channelId:e,name:t,className:n,style:r}){let i=h(e);if(i)return(0,U.createElement)(i,{size:16,className:n,style:r});switch(t){case`bot`:return(0,G.jsx)(P,{className:n,style:r});case`hash`:return(0,G.jsx)(F,{className:n,style:r});case`send`:return(0,G.jsx)(ve,{className:n,style:r});case`phone`:return(0,G.jsx)(pe,{className:n,style:r});case`mail`:return(0,G.jsx)(ge,{className:n,style:r});case`message-square`:return(0,G.jsx)(fe,{className:n,style:r});default:return(0,G.jsx)(H,{className:n,style:r})}}function Ke({contactChannels:e,availableChannels:t,channelsLoadFailed:n,a2aEnabled:r,setupLabel:i,verifyLoading:a,actionsDisabled:o,verifySubject:s=`self`,onSetupChannel:c,onVerifyChannel:l,onRevokeChannel:u,onLinkAccount:d}){let{t:f}=D(`contacts`),[p,m]=(0,U.useState)(null),[h,g]=(0,U.useState)(null),_=new Map;for(let t of e)t.status!==`revoked`&&(_.has(t.type)||_.set(t.type,t));let v=e=>{p&&(l?.(p.info.id,e),m(null))},y=q(t,e,r);return(0,G.jsxs)(G.Fragment,{children:[(0,G.jsxs)(`div`,{className:`flex flex-col`,children:[n&&(0,G.jsx)(`div`,{className:`px-1 py-2 text-sm`,style:{color:`var(--content-secondary)`},role:`status`,children:f(`contactChannelsSection.loadFailed`)}),y.map((e,t)=>{let n=_.get(e.id);return(0,G.jsxs)(`div`,{children:[t>0&&(0,G.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,G.jsx)(qe,{info:e,existing:n,setupLabel:i??f(`contactChannelsSection.setupDefault`),verifyLoading:a,actionsDisabled:o,onSetup:c?()=>c(e.id):void 0,onVerify:l&&Ue(e)?()=>m({info:e,existing:n}):void 0,onRevoke:u&&n?()=>g({channelId:n.id,channel:e}):void 0,onLinkAccount:d&&Fe.has(e.id)?()=>d(e.id):void 0})]},e.id)})]}),p?(0,G.jsx)(J,{info:p.info,existing:p.existing,verifySubject:s,onConfirm:v,onCancel:()=>m(null)}):null,h&&(0,G.jsx)(ee,{open:!0,title:f(`contactChannelsSection.revokeConfirmTitle`,{channel:h.channel.label}),message:f(`contactChannelsSection.revokeConfirmMessage`),confirmLabel:f(`actions.revoke`),destructive:!0,onConfirm:()=>{u?.(h.channelId,h.channel.id),g(null)},onCancel:()=>g(null)})]})}function qe({info:e,existing:n,setupLabel:r,verifyLoading:i,actionsDisabled:a,onSetup:o,onVerify:s,onRevoke:c,onLinkAccount:l}){let{t:u}=D(`contacts`),d=K(e,n);return(0,G.jsxs)(`div`,{className:`flex items-center gap-3 py-4`,children:[(0,G.jsx)(Ge,{channelId:e.id,name:e.icon,className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),(0,G.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.label}),n?.address?(0,G.jsx)(`span`,{className:`truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:n.address}):null,(0,G.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center gap-2`,children:d.kind===`connected`?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,G.jsx)(j,{className:`h-3 w-3`}),u(`channelStatus.connected`)]}),c?(0,G.jsx)(t,{variant:`danger`,onClick:c,disabled:a,children:u(`actions.revoke`)}):null]}):d.kind===`verified`?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,G.jsx)(j,{className:`h-3 w-3`}),u(`channelStatus.verified`)]}),c?(0,G.jsx)(t,{variant:`danger`,onClick:c,disabled:a,children:u(`actions.revoke`)}):null]}):d.kind===`unverified`?(0,G.jsx)(t,{variant:`outlined`,onClick:s,disabled:!s||i||a,children:u(i?`actions.verifying`:`actions.verify`)}):d.kind===`setup`?e.id===`a2a`?null:(0,G.jsxs)(G.Fragment,{children:[l?(0,G.jsxs)(t,{onClick:l,disabled:a,children:[(0,G.jsx)(ye,{className:`h-3.5 w-3.5`}),u(`contactChannelsSection.linkAccount`)]}):null,(0,G.jsx)(t,{variant:`outlined`,onClick:o,disabled:!o||a,children:r})]}):null})]})}function J({info:e,existing:n,verifySubject:r,onConfirm:i,onCancel:a}){let{t:s}=D(`contacts`),[c,l]=(0,U.useState)(n?.address?.trim()??``),u=(0,U.useRef)(null),d=(0,U.useId)(),f=c.trim();return We(n)?(0,G.jsx)(ee,{open:!0,title:s(`contactChannelsSection.verifyConfirmTitle`,{channel:e.label}),message:s(r===`contact`?`contactChannelsSection.verifyConfirmMessageContact`:`contactChannelsSection.verifyConfirmMessageGuardian`,{channel:e.label}),confirmLabel:s(`actions.verify`),onConfirm:()=>{i()},onCancel:a}):(0,G.jsx)(_.Root,{open:!0,onOpenChange:e=>{e||a()},children:(0,G.jsx)(_.Content,{size:`sm`,hideCloseButton:!0,onOpenAutoFocus:e=>{e.preventDefault(),u.current?.focus()},onEscapeKeyDown:e=>{e.preventDefault(),e.stopPropagation(),a()},children:(0,G.jsxs)(`form`,{className:`flex flex-col`,onSubmit:e=>{e.preventDefault(),f.length!==0&&i(f)},children:[(0,G.jsx)(_.Header,{children:(0,G.jsx)(_.Title,{children:s(`contactChannelsSection.verifyConfirmTitle`,{channel:e.label})})}),(0,G.jsxs)(_.Body,{className:`flex flex-col gap-3`,children:[(0,G.jsx)(_.Description,{children:s(r===`contact`?`contactChannelsSection.verifyAddressMessageContact`:`contactChannelsSection.verifyAddressMessageGuardian`,{channel:e.label})}),(0,G.jsx)(o,{ref:u,id:d,label:s(`contactChannelsSection.verifyAddressLabel`),type:`text`,value:c,onChange:e=>{l(e.target.value)},placeholder:s(`contactChannelsSection.verifyAddressPlaceholder`),autoComplete:`off`,spellCheck:!1,fullWidth:!0})]}),(0,G.jsxs)(_.Footer,{children:[(0,G.jsx)(t,{variant:`outlined`,type:`button`,onClick:a,children:s(`actions.cancel`)}),(0,G.jsx)(t,{type:`submit`,disabled:f.length===0,children:s(`actions.verify`)})]})]})})})}function Y(e){return e===`none`||e===`low`||e===`medium`||e===`high`}function X(e,t){switch(t){case`none`:return e(`contactPermissions.preset.none`);case`low`:return e(`contactPermissions.preset.low`);case`medium`:return e(`contactPermissions.preset.medium`);case`high`:return e(`contactPermissions.preset.high`)}}function Je(e,t){if(t===null)return e(`contactPermissions.inheritDescription`);switch(t){case`none`:return e(`contactPermissions.description.none`);case`low`:return e(`contactPermissions.description.low`);case`medium`:return e(`contactPermissions.description.medium`);case`high`:return e(`contactPermissions.description.high`)}}function Ye(e){return e.role!==`guardian`&&e.contactType!==`assistant`}function Xe({contact:e,pending:t,onAutoApproveThresholdChange:n}){let{t:r}=D(`contacts`),i=Y(e.autoApproveThreshold)?e.autoApproveThreshold:null,a=i===null?null:f.find(e=>e.riskThreshold===i);return(0,G.jsx)(z,{title:r(`contactPermissions.title`),subtitle:r(`contactPermissions.subtitle`),children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-2`,"data-testid":`contact-permissions`,children:[(0,G.jsx)(`div`,{style:{maxWidth:280},children:(0,G.jsx)(g,{value:a?.id??null,placeholder:r(`contactPermissions.inheritLabel`),disabled:t,onSelectNone:()=>{n(null)},onChange:e=>{let t=f.find(t=>t.id===e);t&&n(t.riskThreshold)},options:[{value:null,label:r(`contactPermissions.inheritLabel`)},...f.map(e=>{let t=e.icon;return{value:e.id,label:X(r,e.riskThreshold),icon:(0,G.jsx)(t,{className:`h-3.5 w-3.5`})}})]})}),(0,G.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:Je(r,i)})]})})}function Ze({role:e,contactType:t}){let{label:n,tone:r}=Qe(e,t);return(0,G.jsx)(c,{tone:r,children:n})}function Qe(e,t){return e===`guardian`?{label:`Guardian`,tone:`positive`}:t===`assistant`?{label:`Assistant`,tone:`negative`}:{label:`Human`,tone:`warning`}}function $e(e){return(0,G.jsx)(et,{...e},e.contact.id)}function et({contact:e,savePending:n,deletePending:r,verifyPending:i,mergePending:a=!1,canMerge:s=!1,availableChannels:c,channelsLoadFailed:l,a2aEnabled:u,onSave:d,onDelete:f,onMerge:p,onSetupChannel:m,onVerifyChannel:h,onRevokeChannel:g,onLinkAccount:_,pendingAutoApproveThreshold:v,onAutoApproveThresholdChange:y}){let{t:b}=D(`contacts`),x=W(e.displayName),[S,te]=(0,U.useState)(x?``:e.displayName),[C,w]=(0,U.useState)(e.notes??``),[ne,T]=(0,U.useState)(!1),re=S.trim(),E=C.trim(),O=x?``:e.displayName,k=e.notes??``,A=re!==O||E!==k,ie=re.length>0&&A&&!n&&!r,ae=x&&e.channels.length===0&&e.interactionCount===0,oe=re||(x?b(`contact.draftName`):e.displayName),se=b(`contact.interactions`,{count:e.interactionCount});return(0,G.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,G.jsx)(z,{title:oe,accessory:(0,G.jsx)(Ze,{role:e.role,contactType:e.contactType}),compactAccessory:!0,subtitle:se,children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,G.jsx)(o,{label:b(`contact.nameLabel`),type:`text`,value:S,onChange:e=>te(e.target.value),placeholder:b(`contactDetailView.namePlaceholder`),autoFocus:x,disabled:n||r,fullWidth:!0}),(0,G.jsx)(o,{label:b(`contact.notesLabel`),type:`text`,value:C,onChange:e=>w(e.target.value),placeholder:b(`contactDetailView.notesPlaceholder`),disabled:n||r,fullWidth:!0}),(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,G.jsx)(t,{type:`button`,onClick:()=>d({displayName:re,notes:E}),disabled:!ie,children:b(n?`actions.saving`:`actions.save`)}),p?(0,G.jsx)(t,{type:`button`,variant:`outlined`,onClick:p,disabled:!s||ae||A||a||n||r,title:s?ae?b(`contactDetailView.mergeBlockedUnsavedDraft`):A?b(`contact.mergeBlockedUnsaved`):void 0:b(`contact.mergeBlockedNoCandidates`),children:b(a?`actions.merging`:`actions.merge`)}):null,(0,G.jsx)(t,{type:`button`,variant:`danger`,onClick:()=>{ae?f():T(!0)},disabled:r,children:b(r?`actions.deleting`:`contactDetailView.delete`)})]})]})}),(0,G.jsx)(z,{title:b(`contactDetailView.linkedAccountsTitle`),subtitle:b(`contactDetailView.linkedAccountsSubtitle`),children:(0,G.jsx)(Ke,{contactChannels:e.channels,availableChannels:c,channelsLoadFailed:l,a2aEnabled:u,verifyLoading:i,actionsDisabled:r,verifySubject:`contact`,onSetupChannel:m,onVerifyChannel:h,onRevokeChannel:g,onLinkAccount:_})}),Ye(e)&&y?(0,G.jsx)(Xe,{contact:e,pending:v||r,onAutoApproveThresholdChange:y}):null,(0,G.jsx)(ee,{open:ne,title:b(`contactDetailView.deleteConfirmTitle`,{name:oe}),message:b(`contactDetailView.deleteConfirmMessage`),confirmLabel:b(`actions.delete`),destructive:!0,onConfirm:()=>{T(!1),f()},onCancel:()=>T(!1)})]})}function tt(e){return(0,G.jsx)(nt,{...e},`${e.survivor.id}:${e.open?`open`:`closed`}`)}function nt({open:e,survivor:n,candidates:r,pending:a,errorMessage:o,onMerge:s,onClose:c}){let{t:l}=D(`contacts`),[u,d]=(0,U.useState)(``),[f,p]=(0,U.useState)(null);(0,U.useEffect)(()=>{f&&!r.some(e=>e.id===f)&&p(null)},[r,f]);let m=(0,U.useMemo)(()=>{let e=u.trim().toLowerCase();return e?r.filter(t=>t.displayName.toLowerCase().includes(e)):r},[r,u]),h=f?r.find(e=>e.id===f)??null:null,g=ot(n);return(0,G.jsx)(_.Root,{open:e,onOpenChange:e=>{!e&&!a&&c()},children:(0,G.jsxs)(_.Content,{size:`md`,children:[(0,G.jsxs)(_.Header,{icon:Pe,children:[(0,G.jsx)(_.Title,{children:h?l(`contactMergeDialog.titlePicked`,{donor:h.displayName,survivor:g}):l(`contactMergeDialog.titlePicking`,{survivor:g})}),(0,G.jsx)(_.Description,{children:l(h?`contactMergeDialog.descriptionPicked`:`contactMergeDialog.descriptionPicking`)})]}),(0,G.jsxs)(_.Body,{className:`flex flex-col gap-3`,children:[h?(0,G.jsx)(it,{survivor:n,donor:h}):r.length===0?(0,G.jsx)(at,{}):(0,G.jsx)(Z,{search:u,onSearch:d,candidates:m,onPick:p}),o?(0,G.jsx)(i,{as:`p`,variant:`body-small-default`,className:`text-(--system-negative-strong)`,role:`alert`,children:o}):null]}),(0,G.jsx)(_.Footer,{children:h?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(t,{variant:`outlined`,onClick:()=>p(null),disabled:a,leftIcon:(0,G.jsx)(be,{"aria-hidden":!0}),children:l(`actions.back`)}),(0,G.jsx)(t,{variant:`danger`,onClick:()=>s(h.id),disabled:a,children:l(a?`actions.merging`:`contactMergeDialog.confirm`)})]}):(0,G.jsx)(t,{variant:`outlined`,onClick:c,disabled:a,children:l(`actions.cancel`)})})]})})}function Z({search:e,onSearch:t,candidates:n,onPick:r}){let{t:a}=D(`contacts`);return(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(o,{type:`text`,value:e,onChange:e=>t(e.target.value),placeholder:a(`contactMergeDialog.searchPlaceholder`),leftIcon:(0,G.jsx)(I,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}),(0,G.jsx)(`div`,{className:`flex max-h-[320px] min-h-[120px] flex-col gap-1 overflow-y-auto`,role:`listbox`,"aria-label":a(`contactMergeDialog.listAriaLabel`),children:n.length===0?(0,G.jsx)(i,{as:`p`,variant:`body-small-default`,className:`px-3 py-4 text-center text-(--content-tertiary)`,children:a(`contactsList.noMatches`)}):n.map(e=>(0,G.jsx)(rt,{contact:e,onPick:()=>r(e.id)},e.id))})]})}function rt({contact:e,onPick:t}){let n=ct(e).join(` | `)||void 0;return(0,G.jsx)(a,{asChild:!0,children:(0,G.jsx)(`button`,{type:`button`,onClick:t,role:`option`,"aria-selected":`false`,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:(0,G.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,G.jsx)(`span`,{className:`truncate text-body-medium-default`,children:e.displayName}),n?(0,G.jsx)(`span`,{className:`truncate text-body-small-default text-(--content-tertiary)`,children:n}):null]})})})}function it({survivor:e,donor:t}){let{t:n}=D(`contacts`),r=ot(e),{moved:i,duplicates:a}=st(e,t);return(0,G.jsxs)(`ul`,{className:`flex flex-col gap-2 text-body-medium-lighter text-(--content-secondary)`,children:[(0,G.jsx)(`li`,{children:(0,G.jsx)(O,{i18nKey:`contactMergeDialog.donorDeleted`,ns:`contacts`,values:{donor:t.displayName},components:{donor:(0,G.jsx)(`span`,{className:`text-(--content-default)`})}})}),(0,G.jsx)(`li`,{children:n(`contactMergeDialog.channelsMoved`,{count:i.length,survivor:r,channels:i.map(e=>Re(e.type)).join(`, `)})}),a.length>0?(0,G.jsx)(`li`,{className:`text-(--content-tertiary)`,children:n(`contactMergeDialog.duplicatesSkipped`,{count:a.length,survivor:r})}):null,t.notes?(0,G.jsx)(`li`,{children:n(`contactMergeDialog.notesAppended`)}):null,(0,G.jsx)(`li`,{className:`text-(--content-tertiary)`,children:n(`contactMergeDialog.irreversible`)})]})}function at(){let{t:e}=D(`contacts`);return(0,G.jsx)(i,{as:`p`,variant:`body-medium-lighter`,className:`px-3 py-6 text-center text-(--content-tertiary)`,children:e(`contactMergeDialog.empty`)})}function ot(e){return e.role===`guardian`?!e.displayName||e.displayName.startsWith(`vellum-principal-`)?A(`survivorName.you`,{ns:`contacts`}):A(`survivorName.youNamed`,{ns:`contacts`,name:e.displayName}):e.displayName||A(`survivorName.thisContact`,{ns:`contacts`})}function st(e,t){let n=[],r=[];for(let i of t.channels)i.status!==`revoked`&&(e.channels.some(e=>e.type===i.type&&e.address.toLowerCase()===i.address.toLowerCase())?r.push(i):n.push(i));return{moved:n,duplicates:r}}function ct(e){let t=new Set,n=[];for(let r of e.channels){if(r.status===`revoked`)continue;let e=r.type.toLowerCase();t.has(e)||(t.add(e),n.push(Re(e)))}return n}var lt={pencil:_e,more:R};function ut({loading:e,guardian:n,regularContacts:i,selectedContactId:a,onSelect:s,onAddContact:c,addingContact:l=!1,surface:u=`card`,search:d,onSearchChange:f}){let{t:p}=D(`contacts`),m=u===`screen`,h=i.length>0,g=d.trim()?i.filter(e=>e.displayName.toLowerCase().includes(d.trim().toLowerCase())):i,_=h?(0,G.jsx)(o,{type:`text`,value:d,onChange:e=>f(e.target.value),placeholder:p(`contactsList.searchPlaceholder`),leftIcon:(0,G.jsx)(I,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0,className:m?`h-10`:void 0}):null,v=n?(0,G.jsx)(Q,{name:n.displayName?p(`contactsList.youNamed`,{name:n.displayName}):p(`contactsList.you`),role:n.role,channelTypes:n.channelTypes,selected:a===n.id,onClick:()=>s(n.id),trailingIcon:`pencil`,surface:u}):null,y=n?(0,G.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}):null,b=(0,G.jsxs)(G.Fragment,{children:[g.map(e=>(0,G.jsx)(Q,{name:e.displayName,role:e.role,contactType:e.contactType,channelTypes:e.channelTypes,verified:e.verified,selected:a===e.id,onClick:()=>s(e.id),trailingIcon:`more`,surface:u},e.id)),g.length===0?(0,G.jsx)(`p`,{className:`px-3 py-4 text-center text-body-small-default`,style:{color:`var(--content-tertiary)`},children:p(`contactsList.noMatches`)}):null]}),x=e?null:(0,G.jsx)(t,{type:`button`,variant:`ghost`,onClick:c,disabled:l,tintColor:`var(--primary-base)`,loading:l,leftIcon:(0,G.jsx)(L,{"aria-hidden":!0}),children:p(`contactsList.add`)});return m?(0,G.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[_,v,y,(0,G.jsx)(`div`,{className:`flex flex-col gap-1 pt-2`,children:h?b:x})]}):(0,G.jsx)(r.Root,{className:`flex h-full flex-col overflow-hidden`,children:(0,G.jsxs)(r.Body,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-4`,children:[(0,G.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,G.jsx)(`h2`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:p(`contactsList.heading`)}),(0,G.jsx)(t,{type:`button`,variant:`ghost`,loading:l,iconOnly:(0,G.jsx)(me,{"aria-hidden":!0}),onClick:c,disabled:l,"aria-label":p(`contactsList.addAriaLabel`),tintColor:`var(--content-secondary)`})]}),v,y,_,h?(0,G.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto flex flex-col gap-1`,children:b}):x]})})}function Q({name:e,role:t,contactType:n,channelTypes:r,selected:i,onClick:o,trailingIcon:s,verified:l,surface:u}){let{t:d}=D(`contacts`),f=u===`screen`,p=r&&r.length>0?r.join(` | `):void 0,m=f||l===void 0?null:(0,G.jsx)(c,{tone:l?`positive`:`neutral`,children:d(l?`contactsList.verified`:`contactsList.unverified`)}),h=f||s===void 0?void 0:lt[s];return(0,G.jsx)(a,{asChild:!0,active:i,className:f?`rounded-md max-md:py-2`:void 0,children:(0,G.jsxs)(`button`,{type:`button`,onClick:o,className:y(`flex h-auto w-full items-center`,!f&&`gap-2 rounded-[6px] px-[8px] py-2`,`text-left`),children:[(0,G.jsxs)(`span`,{className:y(`flex min-w-0 flex-1 flex-col`,f&&`gap-0.5`),children:[(0,G.jsx)(`span`,{className:y(`truncate text-body-medium-default`,f&&`text-[var(--content-default)]`),children:e}),p?(0,G.jsx)(`span`,{className:y(`truncate`,f?`text-label-medium-default`:`text-body-small-default`),style:{color:`var(--content-tertiary)`},children:p}):null]}),(0,G.jsxs)(`span`,{className:`flex shrink-0 items-center gap-1`,children:[m,(0,G.jsx)(Ze,{role:t,contactType:n}),h?(0,G.jsx)(h,{className:`h-3.5 w-3.5 text-[color:var(--content-tertiary)]`,"aria-hidden":!0}):null]})]})})}function dt(e){return(0,G.jsx)(ft,{...e},e.contact.id)}function ft({contact:e,savePending:n,verifyPending:r,mergePending:i=!1,canMerge:a=!1,availableChannels:s,channelsLoadFailed:c,a2aEnabled:l,onSave:u,onMerge:d,onSetupChannel:f,onVerifyChannel:p,onRevokeChannel:m,onGenerateInviteLink:h}){let{t:g}=D(`contacts`),_=e.displayName.startsWith(`vellum-principal-`),v=_?``:e.displayName,[y,b]=(0,U.useState)(v),[x,ee]=(0,U.useState)(e.notes??``),S=y.trim(),te=x.trim(),C=S!==v.trim()||te!==(e.notes??``).trim(),w=C&&!n,ne=g(`contact.interactions`,{count:e.interactionCount});return(0,G.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,G.jsx)(z,{title:_?g(`contactsList.you`):g(`contactsList.youNamed`,{name:e.displayName}),accessory:(0,G.jsx)(Ze,{role:`guardian`}),compactAccessory:!0,subtitle:ne,children:(0,G.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,G.jsx)(o,{label:g(`contact.nameLabel`),type:`text`,value:y,onChange:e=>b(e.target.value),placeholder:g(`guardianDetailView.namePlaceholder`),disabled:n,fullWidth:!0}),(0,G.jsx)(o,{label:g(`contact.notesLabel`),type:`text`,value:x,onChange:e=>ee(e.target.value),placeholder:g(`guardianDetailView.notesPlaceholder`),disabled:n,fullWidth:!0}),(0,G.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,G.jsx)(t,{variant:`primary`,onClick:()=>u({displayName:S||e.displayName,notes:te}),disabled:!w,children:g(n?`actions.saving`:`actions.save`)}),d?(0,G.jsx)(t,{variant:`outlined`,onClick:d,disabled:!a||C||i||n,title:a?C?g(`contact.mergeBlockedUnsaved`):void 0:g(`contact.mergeBlockedNoCandidates`),children:g(i?`actions.merging`:`actions.merge`)}):null]})]})}),(0,G.jsx)(z,{title:g(`guardianDetailView.channelsTitle`),subtitle:g(`guardianDetailView.channelsSubtitle`),children:(0,G.jsx)(Ke,{contactChannels:e.channels,availableChannels:s,channelsLoadFailed:c,a2aEnabled:l,setupLabel:g(`guardianDetailView.setupLabel`),verifyLoading:r,onSetupChannel:f,onVerifyChannel:p,onRevokeChannel:m})}),h?(0,G.jsx)(V,{onClick:h}):null]})}function pt(e,t){let n=t.trim().toLowerCase().replace(/^@/,``);return n===``?e:e.filter(e=>e.displayName.toLowerCase().includes(n)||e.username.toLowerCase().includes(n))}function mt(e){let t=e.trim().split(/\s+/).filter(Boolean);return`${t[0]?.[0]??`?`}${t.length>1?t[t.length-1]?.[0]??``:``}`.toUpperCase()}function ht({open:e,channelLabel:n,contactName:r,accounts:i,loading:a,errorMessage:s,pendingAccountId:c,onPick:l,onClose:u,onInviteInstead:d}){let{t:f}=D(`contacts`),[p,m]=(0,U.useState)(``);(0,U.useEffect)(()=>{e&&m(``)},[e]);let h=(0,U.useMemo)(()=>pt(i??[],p),[i,p]),g=c!=null;return(0,G.jsx)(_.Root,{open:e,onOpenChange:e=>!e&&u(),children:(0,G.jsxs)(_.Content,{size:`sm`,children:[(0,G.jsxs)(_.Header,{children:[(0,G.jsx)(_.Title,{children:f(`linkAccountDialog.title`,{channel:n})}),(0,G.jsx)(_.Description,{children:(0,G.jsx)(O,{i18nKey:`linkAccountDialog.description`,ns:`contacts`,values:{channel:n,name:r},components:{contact:(0,G.jsx)(`span`,{className:`text-[color:var(--content-default)]`})}})})]}),(0,G.jsxs)(_.Body,{className:`flex flex-col gap-3`,children:[(0,G.jsx)(o,{type:`search`,value:p,onChange:e=>m(e.target.value),placeholder:f(`linkAccountDialog.searchPlaceholder`),"aria-label":f(`linkAccountDialog.searchAriaLabel`,{channel:n}),leftIcon:(0,G.jsx)(I,{className:`h-4 w-4`}),fullWidth:!0}),s?(0,G.jsx)(`p`,{className:`text-body-small-default text-[color:var(--system-negative-strong)]`,children:s}):null,(0,G.jsx)(`div`,{className:`max-h-80 overflow-y-auto`,children:a?(0,G.jsx)(`p`,{className:`py-4 text-center text-body-small-default text-[color:var(--content-tertiary)]`,children:f(`linkAccountDialog.loading`)}):h.length===0?(0,G.jsx)(`p`,{className:`py-4 text-center text-body-small-default text-[color:var(--content-tertiary)]`,children:(i?.length??0)===0?f(`linkAccountDialog.noMembers`):f(`linkAccountDialog.noMatches`)}):(0,G.jsx)(`ul`,{className:`flex flex-col`,children:h.map(e=>(0,G.jsx)(`li`,{children:(0,G.jsxs)(`button`,{type:`button`,onClick:()=>l(e),disabled:g,className:`flex w-full cursor-pointer items-center gap-3 rounded-md px-2 py-2 text-left transition-colors hover:bg-[var(--surface-overlay)] disabled:cursor-not-allowed disabled:opacity-60`,children:[e.imageUrl?(0,G.jsx)(`img`,{src:e.imageUrl,alt:``,className:`h-8 w-8 shrink-0 rounded-full`}):(0,G.jsx)(`span`,{"aria-hidden":`true`,className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-[var(--tag-bg-neutral)] text-body-small-emphasised text-[color:var(--content-secondary)]`,children:mt(e.displayName)}),(0,G.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,G.jsx)(`span`,{className:`truncate text-body-medium-default text-[color:var(--content-default)]`,children:e.displayName}),(0,G.jsxs)(`span`,{className:`truncate text-body-small-default text-[color:var(--content-tertiary)]`,children:[`@`,e.username]})]}),c===e.id?(0,G.jsx)(`span`,{className:`ml-auto shrink-0 text-body-small-default text-[color:var(--content-tertiary)]`,children:f(`linkAccountDialog.linking`)}):null]})},e.id))})})]}),(0,G.jsxs)(_.Footer,{className:`items-center justify-between gap-3 border-t border-[var(--border-base)]`,children:[(0,G.jsx)(`p`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:(0,G.jsx)(O,{i18nKey:`linkAccountDialog.guardianLinkNote`,ns:`contacts`,components:{emphasis:(0,G.jsx)(`span`,{className:`text-[color:var(--content-secondary)]`})}})}),d?(0,G.jsxs)(t,{variant:`link`,className:`shrink-0`,onClick:d,disabled:g,children:[f(`linkAccountDialog.inviteInstead`),(0,G.jsx)(he,{className:`h-3.5 w-3.5`})]}):null]})]})})}function gt(e){return E({...S((0,U.useMemo)(()=>({path:{assistant_id:e}}),[e])),enabled:!!e,select:e=>e.snapshots.some(e=>e.channel===`slack`&&m(e))}).data??!1}function _t({assistantId:e,channelType:t,contact:n,onLinked:r}){let[i,a]=(0,U.useState)(!1),o=k({mutationFn:n=>Ae(e,n.contact,{type:t,address:n.account.id}),onSuccess:(e,t)=>{a(!1),v.success(A(`accountLink.linked`,{ns:`contacts`,username:t.account.username})),r()}}),s=(0,U.useCallback)(()=>{o.reset(),a(!0)},[o]),c=(0,U.useCallback)(()=>{o.isPending||(o.reset(),a(!1))},[o]),l=(0,U.useCallback)(e=>{!n||o.isPending||o.mutate({contact:n,account:e})},[n,o]);return{channelType:t,dialogOpen:i,open:s,close:c,linkErrorMessage:o.error instanceof Error?o.error.message:o.error?A(`accountLink.linkFailed`,{ns:`contacts`}):null,pendingAccountId:o.isPending?o.variables.account.id:null,pick:l}}function vt(){let[e,t]=(0,U.useState)(()=>new Set);return{ids:e,add:(0,U.useCallback)(e=>{t(t=>t.has(e)?t:new Set(t).add(e))},[]),remove:(0,U.useCallback)(e=>{t(t=>{if(!t.has(e))return t;let n=new Set(t);return n.delete(e),n})},[])}}var yt=[{id:`slack`,source:`default`,label:`Slack`,subtitle:`Message your assistant from Slack`,icon:`hash`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian on Slack. Can you help me set that up?`,contact:`I'd like to verify a contact's Slack identity. Can you walk me through it?`}},{id:`telegram`,source:`default`,label:`Telegram`,subtitle:`Message your assistant from Telegram`,icon:`send`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian on Telegram. Can you help me set that up?`,contact:`I'd like to verify a contact's Telegram identity. Can you walk me through it?`}},{id:`phone`,source:`default`,label:`Phone Calling`,subtitle:`Call or text your assistant via phone`,icon:`phone`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian for phone calls. Can you help me set that up?`,contact:`I'd like to verify a contact's phone number. Can you help me set that up?`}}],bt=[];function $({assistantId:e,onStartSetupConversation:r}){let{t:i}=D(`contacts`),a=p.use.a2aChannel(),o=ie(),[c]=ae(),d=c.get(`setup`),f=d&&l(d)?d:null,{contactId:m}=ce(),h=se(),{pathname:g,state:_}=oe(),y=we(e),ee=te(),{paneRef:S,hasRoomForList:w,drawerOpen:O,openDrawer:A,closeDrawer:ue}=Te(),de=ee&&!w,j=de&&!m,fe=de&&!!m,[pe,he]=(0,U.useState)(``),[ge,M]=(0,U.useState)(!1),N=(0,U.useMemo)(()=>({path:{assistant_id:e}}),[e]),_e=n(N),P=E({...x(N),enabled:!!e,select:e=>e.contacts}),ve=E({...C({path:{assistant_id:e}}),enabled:!!e,queryFn:async({signal:t})=>{let{data:n,error:r,response:i}=await s({path:{assistant_id:e},signal:t,throwOnError:!1});if(i?.status===404)return{channels:yt};if(!i||!i.ok)throw r??Error(`Failed to fetch channel availability`);return n},select:e=>e.channels}),F=ve.data??bt,ye=ve.isError,I=P.data,L=(0,U.useMemo)(()=>I?.find(e=>e.role===`guardian`)??null,[I]),be=(0,U.useMemo)(()=>I?.filter(e=>e.role!==`guardian`)??[],[I]),R=m??(j?null:L?.id??null),z=(0,U.useMemo)(()=>I?.find(e=>e.id===R)??null,[I,R]),V=Ee.use.setDetailIsScreen(),H=(0,U.useCallback)(e=>{e!==m&&(j&&V(!0),h(T.contacts.detail(e),j?{state:Ne}:{replace:!0,state:_}))},[h,j,m,_,V]),Pe=(0,U.useCallback)(()=>{Me(h,_,T.contacts.root)},[h,_]),Fe=(0,U.useRef)(null);De({containerRef:Fe,onBack:Pe,enabled:fe,navKey:g});let Ie=P.isSuccess&&P.fetchStatus===`idle`,Le=!!m&&!z&&!Ie,W=vt(),Be=vt(),Ve=vt(),Ue=(0,U.useMemo)(()=>!I||!z?[]:I.filter(e=>e.id!==z.id&&e.role!==`guardian`&&!W.ids.has(e.id)),[I,z,W.ids]),We=Ue.length>0,K=(0,U.useCallback)(()=>o.invalidateQueries({queryKey:_e}),[o,_e]),q=(0,U.useRef)(!0);(0,U.useEffect)(()=>(q.current=!0,()=>{q.current=!1}),[]);let Ge=k({mutationFn:()=>ke(e,{displayName:ze}),onMutate:async()=>{await o.cancelQueries({queryKey:_e})},onSuccess:e=>{b(o,N,t=>t?{...t,contacts:[...t.contacts,e]}:void 0),q.current&&H(e.id)},onError:B(i(`contactsPage.createFailed`)),onSettled:()=>K()}),Ke=(0,U.useRef)(R);(0,U.useLayoutEffect)(()=>{Ke.current=R},[R]);let qe=k({mutationFn:t=>je(e,t),onMutate:e=>{W.add(e)},onSuccess:(e,t)=>{b(o,N,e=>e?{...e,contacts:e.contacts.filter(e=>e.id!==t)}:void 0),q.current&&Ke.current===t&&Pe()},onError:B(i(`contactsPage.deleteFailed`)),onSettled:(e,t,n)=>(W.remove(n),K())}),J=k({mutationFn:({contactId:t,patch:n})=>ke(e,{id:t,displayName:n.displayName,notes:n.notes}),onMutate:({contactId:e})=>{Be.add(e)},onSuccess:e=>{b(o,N,t=>t?{...t,contacts:t.contacts.map(t=>t.id===e.id?e:t)}:void 0)},onError:B(i(`contactsPage.saveFailed`)),onSettled:(e,t,{contactId:n})=>(Be.remove(n),K())}),Y=k({mutationFn:({contactId:t,displayName:n,autoApproveThreshold:r})=>ke(e,{id:t,displayName:n,autoApproveThreshold:r}),onMutate:({contactId:e})=>{Ve.add(e)},onSuccess:e=>{b(o,N,t=>t?{...t,contacts:t.contacts.map(t=>t.id===e.id?e:t)}:void 0)},onError:B(i(`contactPermissions.saveFailed`)),onSettled:(e,t,{contactId:n})=>(Ve.remove(n),K())}),X=re({onMutate:async()=>{await o.cancelQueries({queryKey:_e})},onSuccess:(e,t)=>{let n=e.contact,r=t.body.mergeId;n&&(b(o,N,e=>e?{...e,contacts:e.contacts.filter(e=>e.id!==r).map(e=>e.id===n.id?n:e)}:void 0),q.current&&H(n.id)),M(!1),v.success(i(`contactsPage.mergeSucceeded`))},onSettled:()=>K()}),Je=X.reset,Ye=(0,U.useCallback)(e=>{H(e),ue(),M(!1),Je()},[H,ue,Je]),Xe=(0,U.useCallback)(()=>{Je(),M(!0)},[Je]),Ze=(0,U.useCallback)(()=>{X.isPending||(M(!1),X.reset())},[X]),Qe=u({onSuccess:()=>K()}),et=(0,U.useCallback)((t,n)=>{Qe.mutate({path:{assistant_id:e,contactChannelId:t},body:{status:`revoked`}})},[Qe,e]),nt=Ge.mutate,Z=Ge.isPending,rt=(0,U.useCallback)(()=>{Z||nt()},[nt,Z]),it=Ee.use.setHeaderTrailing();(0,U.useEffect)(()=>{if(!j){it(null);return}return it((0,G.jsx)(t,{shape:`pill`,variant:`ghost`,iconOnly:(0,G.jsx)(me,{"aria-hidden":!0}),"aria-label":i(`contactsList.addAriaLabel`),tooltip:i(`contactsList.addAriaLabel`),className:`max-md:bg-[var(--surface-active)]`,loading:Z,disabled:Z,onClick:rt})),()=>{it(null)}},[Z,rt,j,it,i]),(0,U.useLayoutEffect)(()=>(V(fe),()=>{V(!1)}),[fe,V]);let at=(0,U.useCallback)(e=>{if(!r)return;let t=F.find(t=>t.id===e);if(!t||He(t))return;let n=t.setupMessages.contact;n&&r(n)},[F,r]),ot=(0,U.useCallback)(e=>{if(!r)return;let t=F.find(t=>t.id===e);if(!t||He(t))return;let n=t.setupMessages.guardian;n&&r(n)},[F,r]),st=k({mutationFn:t=>Oe(e,t.channelId),onSuccess:()=>K(),onError:B(i(`contactsPage.verifyFailed`))}),ct=k({mutationFn:t=>{if(!z)throw Error(`No contact selected`);return Ae(e,{id:z.id,displayName:z.displayName},{type:t.type,address:t.address})},onSuccess:()=>K(),onError:B(i(`contactsPage.verifyFailed`))}),lt=(0,U.useCallback)((e,t)=>{if(!z)return;let n=t?.trim();if(n){ct.mutate({type:e,address:n});return}let r=z.channels.find(t=>t.type===e&&t.status!==`revoked`);r?.address?.trim()&&st.mutate({channelId:r.id})},[z,ct,st]),Q=_t({assistantId:e,channelType:`slack`,contact:z?{id:z.id,displayName:z.displayName}:null,onLinked:K}),ft=E({...ne(e),enabled:!!e&&Q.dialogOpen,select:e=>e.users}),pt=gt(e),mt=(0,U.useCallback)(e=>{e===Q.channelType&&Q.open()},[Q]),$=(0,U.useMemo)(()=>{if(!z)return null;let e=z;return J.isPending&&J.variables?.contactId===z.id&&(e={...e,displayName:J.variables.patch.displayName,notes:J.variables.patch.notes}),Y.isPending&&Y.variables?.contactId===z.id&&(e={...e,autoApproveThreshold:Y.variables.autoApproveThreshold}),e},[z,J.isPending,J.variables,Y.isPending,Y.variables]),Tt=R!==null&&Be.ids.has(R),Et=R!==null&&Ve.ids.has(R);if(f)return(0,G.jsx)(le,{to:`${T.channels}?setup=${f}`,replace:!0});let Dt={loading:P.isLoading,guardian:L?{id:L.id,displayName:L.displayName.startsWith(`vellum-principal-`)?``:L.displayName,role:L.role,channelTypes:wt(L.channels,a)}:null,regularContacts:be.filter(e=>!W.ids.has(e.id)).map(e=>({id:e.id,displayName:e.displayName,role:e.role,contactType:e.contactType,channelTypes:wt(e.channels,a),verified:Ct(e.channels)})),selectedContactId:R,onSelect:Ye,onAddContact:rt,addingContact:Z,search:pe,onSearchChange:he};return(0,G.jsxs)(`div`,{ref:S,className:`flex min-h-0 flex-1 overflow-hidden ${w?`flex-row gap-6`:`flex-col gap-4`}`,children:[w?(0,G.jsx)(`aside`,{className:`min-h-0 w-[320px] shrink-0 overflow-y-auto self-stretch`,children:(0,G.jsx)(ut,{...Dt})}):de?null:(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(`div`,{className:`flex items-center`,children:(0,G.jsx)(xe,{onClick:A})}),(0,G.jsx)(Se,{open:O,onClose:ue,title:i(`contactsPage.title`),children:(0,G.jsx)(ut,{...Dt})})]}),(0,G.jsx)(`section`,{ref:Fe,className:`min-h-0 min-w-0 flex-1 overflow-y-auto`,children:P.isLoading||Le?(0,G.jsx)(St,{}):j?(0,G.jsx)(ut,{...Dt,surface:`screen`}):$?$.role===`guardian`?(0,G.jsx)(dt,{contact:$,savePending:Tt,verifyPending:st.isPending||ct.isPending,mergePending:X.isPending,canMerge:We,availableChannels:F,channelsLoadFailed:ye,a2aEnabled:a,onSave:e=>{J.mutate({contactId:$.id,patch:e})},onMerge:Xe,onSetupChannel:r?ot:void 0,onVerifyChannel:lt,onRevokeChannel:et,onGenerateInviteLink:a?y.open:void 0}):(0,G.jsx)($e,{contact:$,savePending:Tt,deletePending:W.ids.has($.id),verifyPending:st.isPending||ct.isPending,mergePending:X.isPending,canMerge:We,availableChannels:F,channelsLoadFailed:ye,a2aEnabled:a,onSave:e=>{J.mutate({contactId:$.id,patch:e})},onDelete:()=>{qe.mutate($.id)},onMerge:Xe,onSetupChannel:r?at:void 0,onVerifyChannel:lt,onRevokeChannel:et,onLinkAccount:pt?mt:void 0,pendingAutoApproveThreshold:Et,onAutoApproveThresholdChange:e=>{Y.mutate({contactId:$.id,displayName:$.displayName,autoApproveThreshold:e})}}):m?(0,G.jsx)(xt,{text:i(`contactsPage.notFoundBody`)}):(0,G.jsx)(xt,{text:i(`contactsPage.emptyBody`)})}),z?(0,G.jsx)(tt,{open:ge,survivor:z,candidates:Ue,pending:X.isPending,errorMessage:X.error instanceof Error?X.error.message:X.error?i(`contactsPage.mergeFailed`):null,onMerge:t=>X.mutate({path:{assistant_id:e},body:{keepId:z.id,mergeId:t}}),onClose:Ze}):null,(0,G.jsx)(ht,{open:Q.dialogOpen,channelLabel:Re(`slack`),contactName:z?.displayName??``,accounts:ft.data,loading:ft.isLoading,errorMessage:ft.isError?i(`contactsPage.rosterLoadFailed`):Q.linkErrorMessage,pendingAccountId:Q.pendingAccountId,onPick:Q.pick,onClose:Q.close,onInviteInstead:r?()=>{Q.close(),at(Q.channelType)}:void 0}),(0,G.jsx)(Ce,{open:y.isOpen,assistantId:e,onClose:y.close})]})}function xt({text:e}){return(0,G.jsx)(`div`,{className:`flex h-full items-center justify-center py-16`,children:(0,G.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e})})}function St(){return(0,G.jsx)(`div`,{className:`flex h-full items-center justify-center py-16`,children:(0,G.jsx)(N,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`})})}function Ct(e){return e.some(e=>e.status!==`revoked`&&(e.type===`a2a`||Ie(e)))}function wt(e,t){let n=new Set,r=[];for(let i of e){if(i.status===`revoked`)continue;let e=i.type.toLowerCase();n.has(e)||e===`a2a`&&!t||(n.add(e),r.push(Re(e)))}return r}function Tt(){let e=se(),t=d(),{contactId:n}=ce(),{state:r}=oe(),i=(0,U.useRef)(t);return(0,U.useEffect)(()=>{let a=i.current;i.current=t,!(a===t||!n)&&Me(e,r,T.contacts.root)},[t,n,r,e]),(0,G.jsx)($,{assistantId:t,onStartSetupConversation:t=>{w(e,{prompt:t})}},t)}export{Tt as ContactsPageRoute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{$C as e,Ly as t}from"./app-KRIEMzuO.js";import{E as n}from"./vendor-DLH51Vjf.js";import{t as r}from"./react-B9IgSVeK.js";import{Ji as i,li as a}from"./icons-C0wyat6T.js";var o=r();function s({text:r,ariaLabel:s,className:c}){let{t:l}=n(),{copy:u,copied:d}=t({errorMessage:l(`copyButton.copyFailed`)});return(0,o.jsx)(e,{variant:`ghost`,size:`compact`,iconOnly:d?(0,o.jsx)(i,{"aria-hidden":!0}):(0,o.jsx)(a,{"aria-hidden":!0}),tintColor:d?`var(--system-positive-strong)`:void 0,"aria-label":d?l(`copyButton.copied`):s,className:c,onClick:()=>u(typeof r==`function`?r():r)})}export{s as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$C as t,BC as n,C_ as r,OC as i}from"./app-KRIEMzuO.js";import{E as a}from"./vendor-DLH51Vjf.js";import{t as o,x as s}from"./react-B9IgSVeK.js";import{Ui as c,Yn as l,dr as u,zi as d}from"./icons-C0wyat6T.js";var f=e(s(),1),p=`/v1/credential-requests/peek`,m=`/v1/credential-requests/submit`;function h(e){return e>0xe8d4a51000?e:e*1e3}function g(e){let t=e?.error?.code;return t===`INVALID`?`invalid`:t===`EXPIRED`?`expired`:t===`USED`?`used`:null}function _(e){let t=e;return typeof t?.service==`string`&&typeof t.field==`string`&&(t.label===null||typeof t.label==`string`)&&typeof t.expiresAt==`number`}async function v(e,t){let n=await fetch(r(p),{method:`POST`,credentials:`include`,headers:{"Content-Type":`application/json`},body:JSON.stringify({token:e}),signal:t}),i=await n.json().catch(()=>null);return n.ok&&_(i)?{status:`ok`,request:i}:n.status===404?{status:g(i)??`invalid`}:{status:`error`}}async function y(e,t,n){let i=await fetch(r(m),{method:`POST`,credentials:`include`,headers:{"Content-Type":`application/json`},body:JSON.stringify({token:e,value:t}),signal:n});if(i.ok)return{status:`ok`};let a=await i.json().catch(()=>null);return i.status===404?{status:g(a)??`invalid`}:i.status===502?{status:`store-failed`}:{status:`error`}}var b=o();function x(e){let[t,n]=(0,f.useState)(()=>Date.now());return(0,f.useEffect)(()=>{let t=setInterval(()=>n(Date.now()),e);return()=>clearInterval(t)},[e]),t}function S(e){let t=Math.max(0,Math.ceil(e/1e3)),n=Math.floor(t/3600),r=Math.floor(t%3600/60),i=t%60;return n>0?`${n}h ${r}m`:r>0?`${r}m ${i}s`:`${i}s`}function C({icon:e,title:t,children:n}){return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(`div`,{className:`flex items-center gap-3`,children:[e,(0,b.jsx)(`h1`,{className:`text-xl font-semibold`,children:t})]}),(0,b.jsx)(`p`,{className:`text-sm leading-6 text-[var(--content-secondary)]`,children:n})]})}function w(){let{t:e}=a(`credential-requests`),[r]=(0,f.useState)(()=>new URLSearchParams(window.location.hash.replace(/^#/,``)).get(`token`)?.trim()||new URLSearchParams(window.location.search).get(`token`)?.trim()||null),[o,s]=(0,f.useState)({kind:`loading`}),[p,m]=(0,f.useState)(``),[g,_]=(0,f.useState)(!1),[w,T]=(0,f.useState)(null),E=x(1e3);(0,f.useEffect)(()=>{let e=new URL(window.location.href),t=new URLSearchParams(e.hash.replace(/^#/,``));if(!t.has(`token`)&&!e.searchParams.has(`token`))return;e.searchParams.delete(`token`),t.delete(`token`);let n=t.toString();window.history.replaceState(window.history.state,``,`${e.pathname}${e.search}${n?`#${n}`:``}`)},[]),(0,f.useEffect)(()=>{if(!r){s({kind:`invalid`});return}let e=new AbortController;return(async()=>{let t=await v(r,e.signal).catch(()=>({status:`error`}));e.signal.aborted||(t.status===`ok`?s({kind:`form`,request:t.request}):s({kind:t.status}))})(),()=>{e.abort()}},[r]);let D=async e=>{if(e.preventDefault(),!r||o.kind!==`form`||!p.trim()||g)return;_(!0),T(null);let t=await y(r,p).catch(()=>({status:`error`}));switch(_(!1),t.status){case`ok`:m(``),s({kind:`success`});break;case`invalid`:case`expired`:case`used`:s({kind:t.status});break;case`store-failed`:m(``),s({kind:`store-failed`});break;case`error`:T(`Something went wrong while submitting. Check your connection and try again.`);break}},O=o.kind===`form`?h(o.request.expiresAt):null,k=o.kind===`form`&&O!==null&&O>E,A;if(o.kind===`loading`)A=(0,b.jsx)(C,{icon:(0,b.jsx)(l,{className:`h-5 w-5 animate-spin text-blue-600`,"aria-hidden":!0}),title:e(`credentialEntry.checkingTitle`),children:e(`credentialEntry.checkingBody`)});else if(o.kind===`success`)A=(0,b.jsx)(C,{icon:(0,b.jsx)(d,{className:`h-5 w-5 text-green-600`,"aria-hidden":!0}),title:e(`credentialEntry.savedTitle`),children:e(`credentialEntry.savedBody`)});else if(o.kind===`invalid`)A=(0,b.jsx)(C,{icon:(0,b.jsx)(c,{className:`h-5 w-5 text-red-600`,"aria-hidden":!0}),title:e(`credentialEntry.invalidTitle`),children:e(`credentialEntry.invalidBody`)});else if(o.kind===`expired`||o.kind===`form`&&!k)A=(0,b.jsx)(C,{icon:(0,b.jsx)(c,{className:`h-5 w-5 text-red-600`,"aria-hidden":!0}),title:e(`credentialEntry.expiredTitle`),children:e(`credentialEntry.expiredBody`)});else if(o.kind===`used`)A=(0,b.jsx)(C,{icon:(0,b.jsx)(c,{className:`h-5 w-5 text-red-600`,"aria-hidden":!0}),title:e(`credentialEntry.usedTitle`),children:e(`credentialEntry.usedBody`)});else if(o.kind===`store-failed`)A=(0,b.jsx)(C,{icon:(0,b.jsx)(c,{className:`h-5 w-5 text-red-600`,"aria-hidden":!0}),title:e(`credentialEntry.storeFailedTitle`),children:e(`credentialEntry.storeFailedBody`)});else if(o.kind===`error`)A=(0,b.jsx)(C,{icon:(0,b.jsx)(c,{className:`h-5 w-5 text-red-600`,"aria-hidden":!0}),title:e(`credentialEntry.errorTitle`),children:e(`credentialEntry.errorBody`)});else{let{request:n}=o,r=`${n.service}:${n.field}`,a=(O??0)-E;A=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,b.jsx)(u,{className:`h-5 w-5 text-blue-600`,"aria-hidden":!0}),(0,b.jsx)(`h1`,{className:`text-xl font-semibold`,children:e(`credentialEntry.heading`)})]}),(0,b.jsxs)(`div`,{className:`rounded-md border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-4`,children:[(0,b.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:n.label||r}),(0,b.jsxs)(`p`,{className:`mt-1 font-mono text-body-small-default text-[var(--content-tertiary)]`,children:[n.label?`${r} · `:``,e(`credentialEntry.oneTimeEntry`)]})]}),(0,b.jsx)(`p`,{className:`text-sm leading-6 text-[var(--content-secondary)]`,children:e(`credentialEntry.instructions`)}),(0,b.jsxs)(`form`,{className:`flex flex-col gap-3`,onSubmit:e=>void D(e),children:[(0,b.jsx)(i,{label:e(`credentialEntry.valueLabel`),type:`password`,value:p,onChange:e=>m(e.target.value),placeholder:e(`credentialEntry.valuePlaceholder`),autoComplete:`off`,autoFocus:!0,fullWidth:!0,errorText:w??void 0}),(0,b.jsx)(t,{type:`submit`,disabled:g||!p.trim(),loading:g,children:e(`credentialEntry.submit`)})]}),(0,b.jsx)(`p`,{className:`text-xs text-[var(--content-tertiary)]`,children:e(`credentialEntry.expiresIn`,{remaining:S(a),time:new Date(O??0).toLocaleTimeString()})})]})}return(0,b.jsx)(`main`,{className:`flex min-h-svh items-center justify-center bg-[var(--background)] px-6 py-10 text-[var(--content-default)]`,children:(0,b.jsx)(`div`,{className:`w-full max-w-md`,children:(0,b.jsx)(n.Root,{bordered:!0,elevated:!0,padding:`lg`,children:(0,b.jsx)(`div`,{className:`flex flex-col gap-4`,children:A})})})})}export{w as CredentialEntryPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$C as t,AS as n,BC as r,Bm as i,CS as a,H as o,Iy as s,MS as c,OC as l,PC as u,PS as d,Rv as f,Ry as p,U as m,W as h,Zf as g,ah as _,gC as v,hC as y,i as b,iS as x,mC as S,tw as C,vC as ee,zv as w}from"./app-KRIEMzuO.js";import{$n as te,E as T,nr as ne}from"./vendor-DLH51Vjf.js";import{t as E,x as D}from"./react-B9IgSVeK.js";import{A as O,Ji as k,Lt as A,Xr as j,Yn as M,Yr as N,dr as P,li as F,tr as I,vt as re}from"./icons-C0wyat6T.js";import{t as ie}from"./detail-card-C53pHjsM.js";import{t as L}from"./use-supports-credentials-settings-fg3eXgQy.js";var R=e(D(),1),z=`CREDENTIAL_IN_USE`;function ae(e){if(!(e instanceof d)||e.code!==z)return null;let t=e.details;if(!t||typeof t!=`object`||!(`connections`in t))return null;let{connections:n}=t;return!Array.isArray(n)||!n.every(e=>typeof e==`string`)?null:n}function oe(e){return new Intl.ListFormat(a(),{style:`long`,type:`conjunction`}).format(e)}var B=E(),V=1500;function H(e){if(!e)return``;try{return new Date(e).toLocaleDateString(void 0,{year:`numeric`,month:`short`,day:`numeric`})}catch{return``}}function se({credential:e,assistantId:n,generatingLink:i,deleting:a,onGenerateLink:o,onDelete:s}){let{t:c}=T(`settings`),l=`${e.service}:${e.field}`,u=i||a,d=[e.alias?l:null,e.createdAt?c(`credentialRow.addedMetadata`,{date:H(e.createdAt)}):null].filter(e=>!!e);return(0,B.jsx)(r.Root,{children:(0,B.jsxs)(r.Body,{padding:`sm`,className:`flex items-center gap-4 px-4`,children:[(0,B.jsx)(P,{className:`h-5 w-5 shrink-0 text-[var(--content-secondary)]`,"aria-hidden":!0}),(0,B.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,B.jsx)(`p`,{className:`truncate text-title-small text-[var(--content-default)]`,children:e.alias||l}),(0,B.jsx)(`div`,{className:`mt-0.5 flex min-w-0 items-center`,children:(0,B.jsx)(U,{assistantId:n,credential:e})}),d.length>0&&(0,B.jsx)(`p`,{className:`mt-0.5 truncate font-mono text-body-medium-lighter text-[var(--content-tertiary)]`,children:d.join(` · `)})]}),(0,B.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,B.jsx)(C,{content:c(`credentialRow.generateLinkLabel`),side:`top`,children:(0,B.jsx)(t,{variant:`outlined`,onClick:o,disabled:u,"aria-label":c(`credentialRow.generateLinkAriaLabel`,{name:l}),loading:i,iconOnly:(0,B.jsx)(I,{"aria-hidden":!0})})}),(0,B.jsx)(C,{content:c(`credentialRow.deleteLabel`),side:`top`,children:(0,B.jsx)(t,{variant:`dangerOutline`,onClick:s,disabled:u,"aria-label":c(`credentialRow.deleteAriaLabel`,{name:l}),loading:a,iconOnly:(0,B.jsx)(O,{"aria-hidden":!0})})})]})]})})}function U({assistantId:e,credential:n}){let{t:r}=T(`settings`),[i,a]=(0,R.useState)(null),[o,s]=(0,R.useState)(!1),[c,l]=(0,R.useState)(!1),u=(0,R.useRef)(null),d=(0,R.useRef)(0),f=`${n.service}:${n.field}`,m=(0,R.useCallback)(()=>{d.current++,a(null),s(!1),l(!1),u.current&&=(clearTimeout(u.current),null)},[]);(0,R.useEffect)(()=>{m()},[n.updatedAt,m]);let h=(0,R.useCallback)(async()=>{let t=++d.current;s(!0);try{let{data:r}=await w({path:{assistant_id:e},body:{service:n.service,field:n.field},throwOnError:!0});d.current===t&&a(r.value)}catch{d.current===t&&y.error(r(`credentialRow.revealFailedToast`,{name:f}))}finally{d.current===t&&s(!1)}},[e,n.service,n.field,f,r]),g=(0,R.useCallback)(()=>{i!=null&&p(i,{errorMessage:r(`credentialRow.copyFailedToast`),onCopied:()=>{l(!0),u.current&&clearTimeout(u.current),u.current=setTimeout(()=>l(!1),V)}})},[i,r]),_=i!==null;return n.hasSecret?(0,B.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-1.5 align-middle font-mono text-body-medium-lighter`,children:[(0,B.jsx)(`button`,{type:`button`,onClick:()=>_?m():void h(),disabled:o,"aria-label":r(_?`credentialRow.hideValueAriaLabel`:`credentialRow.revealValueAriaLabel`,{name:f}),title:r(_?`credentialRow.hideValueTitle`:`credentialRow.clickToRevealTitle`),"data-private":!0,className:`min-w-0 truncate rounded-sm text-left transition-[filter,color] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)] ${_?`text-[var(--content-secondary)]`:`select-none text-[var(--content-tertiary)] blur-[3px] hover:blur-[2px]`}`,children:_?i:n.scrubbedValue}),o?(0,B.jsx)(M,{className:`h-3.5 w-3.5 shrink-0 animate-spin`,"aria-hidden":!0}):_?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(t,{variant:`ghost`,size:`compact`,iconOnly:c?(0,B.jsx)(k,{"aria-hidden":!0}):(0,B.jsx)(F,{"aria-hidden":!0}),expandOnMobile:!1,onClick:g,"aria-label":r(`credentialRow.copyValueAriaLabel`,{name:f}),tooltip:r(`credentialRow.copyValueTitle`),className:`size-4.5 shrink-0 rounded-sm`}),(0,B.jsx)(t,{variant:`ghost`,size:`compact`,iconOnly:(0,B.jsx)(j,{"aria-hidden":!0}),expandOnMobile:!1,onClick:m,"aria-label":r(`credentialRow.hideValueAriaLabel`,{name:f}),tooltip:r(`credentialRow.hideValueTitle`),className:`size-4.5 shrink-0 rounded-sm`})]}):(0,B.jsx)(t,{variant:`ghost`,size:`compact`,iconOnly:(0,B.jsx)(N,{"aria-hidden":!0}),expandOnMobile:!1,onClick:()=>void h(),"aria-label":r(`credentialRow.revealValueAriaLabel`,{name:f}),tooltip:r(`credentialRow.clickToRevealTitle`),className:`size-4.5 shrink-0 rounded-sm`})]}):(0,B.jsx)(`span`,{className:`min-w-0 truncate font-mono text-body-medium-lighter text-[var(--content-tertiary)]`,children:n.scrubbedValue})}function ce(e){return e>0xe8d4a51000?e:e*1e3}async function le(e,t){let{data:n,response:r}=await s.post({url:`/v1/assistants/{assistant_id}/credential-requests`,path:{assistant_id:e},body:t});if(!r?.ok)throw Error(`Failed to create credential request: ${r?.status}`);return n}var W=6;function G(){let e=h(),t=L(e),n=x.use.assistantId();return x.use.version()!==null&&n===e&&!t?(0,B.jsx)(b,{}):t?(0,B.jsx)(K,{}):null}function K(){let{t:e}=T(`settings`),a=h(),s=ne(),d=_(),b=m(a),x=te({queryKey:b,queryFn:async()=>{let{data:e}=await f({path:{assistant_id:a},body:{},throwOnError:!0});return{credentials:e.credentials,managedCredentials:e.managedCredentials}},enabled:d,retry:c}),C=(0,R.useMemo)(()=>x.data?.credentials??[],[x.data]),w=g.use.settingsDeveloperNav(),E=(0,R.useMemo)(()=>w?x.data?.managedCredentials??[]:[],[w,x.data]),[D,O]=(0,R.useState)(!1),[k,j]=(0,R.useState)(`own`),[N,L]=(0,R.useState)(``),[z,V]=(0,R.useState)(null),[H,U]=(0,R.useState)(null),[G,K]=(0,R.useState)(null),[ue,q]=(0,R.useState)(null),J=i({onSuccess:(t,n)=>{s.invalidateQueries({queryKey:b}),y.success(e(`credentialsPage.deleteSuccessToast`,{name:`${n.body.service}:${n.body.field}`}))},onError:(t,r)=>{let i=ae(t),a=C.find(e=>e.service===r.body.service&&e.field===r.body.field);if(i&&a){U({credential:a,connections:i});return}n(t,{context:`credentials-delete`}),y.error(t.message||e(`credentialsPage.deleteErrorToast`))}}),de=J.isPending?`${J.variables?.body?.service}:${J.variables?.body?.field}`:null,Y=(0,R.useMemo)(()=>{let e=N.trim().toLowerCase();return e?C.filter(t=>[t.service,t.field,`${t.service}:${t.field}`,t.alias??``].join(` `).toLowerCase().includes(e)):C},[C,N]);(0,R.useEffect)(()=>{C.length<=W&&L(``)},[C.length]),(0,R.useEffect)(()=>{C.length===0&&E.length>0&&j(`managed`)},[C.length,E.length]);let X=(e,t)=>{J.mutate({path:{assistant_id:a},body:{service:e.service,field:e.field,...t?{force:!0}:{}}})},fe=()=>{let e=z;V(null),e&&X(e,!1)},pe=()=>{let e=H;U(null),e&&X(e.credential,!0)},me=async t=>{let n=`${t.service}:${t.field}`;q(n);try{let r=await le(a,{service:t.service,field:t.field,label:t.alias??void 0});r.ok&&r.url?K({name:n,url:r.url,expiresAt:r.expiresAt??null}):y.error(r.error||e(`credentialsPage.generateLinkFailedToast`))}catch(t){y.error(t instanceof Error?t.message:e(`credentialsPage.generateLinkFailedToast`))}finally{q(null)}},he=()=>{let t=G?.url;t&&p(t,{successMessage:e(`credentialsPage.linkCopiedToast`),errorMessage:e(`credentialsPage.linkCopyFailedToast`)})};if(x.isLoading)return(0,B.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,B.jsx)(M,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})});let Z=C.length>0,Q=E.length>0,ge=C.length>W,$=k===`managed`&&Q,_e=!$,ve=[{value:`own`,label:e(`credentialsPage.segmentYourOwn`)},{value:`managed`,label:e(`credentialsPage.segmentManaged`)}];return(0,B.jsxs)(`div`,{className:`space-y-4`,children:[(0,B.jsx)(ie,{title:e(`credentialsPage.title`),subtitle:e($?`credentialsPage.subtitleManaged`:`credentialsPage.subtitleOwn`),accessory:(0,B.jsxs)(`div`,{className:`flex items-center gap-2`,children:[Q?(0,B.jsx)(ee,{items:ve,value:k,onChange:j,ariaLabel:e(`credentialsPage.credentialSourceAriaLabel`)}):null,_e&&Z?(0,B.jsx)(t,{type:`button`,variant:`primary`,size:`regular`,onClick:()=>O(!0),leftIcon:(0,B.jsx)(A,{"aria-hidden":!0}),children:e(`credentialsPage.addButton`)}):null]}),children:$?(0,B.jsx)(`div`,{className:`space-y-2`,children:E.map(t=>(0,B.jsx)(r.Root,{children:(0,B.jsxs)(r.Body,{padding:`sm`,className:`flex items-center gap-4 px-4`,children:[(0,B.jsx)(P,{className:`h-5 w-5 shrink-0 text-[var(--content-secondary)]`,"aria-hidden":!0}),(0,B.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,B.jsx)(`p`,{className:`truncate text-title-small text-[var(--content-default)]`,children:t.provider}),(0,B.jsxs)(`p`,{className:`truncate text-body-medium-lighter text-[var(--content-tertiary)]`,children:[t.accountInfo??t.handle,` · `,t.status]})]}),(0,B.jsx)(u,{tone:`neutral`,children:e(`credentialsPage.managedTag`)})]})},t.handle))}):(0,B.jsxs)(`div`,{className:`space-y-4`,children:[Z?(0,B.jsxs)(`div`,{className:`space-y-3`,children:[ge?(0,B.jsx)(l,{type:`text`,value:N,onChange:e=>L(e.target.value),placeholder:e(`credentialsPage.searchPlaceholder`),"aria-label":e(`credentialsPage.searchAriaLabel`),leftIcon:(0,B.jsx)(re,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}):null,Y.length===0?(0,B.jsx)(`p`,{className:`px-1 py-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`credentialsPage.noMatch`,{query:N.trim()})}):(0,B.jsx)(`div`,{className:`space-y-2`,children:Y.map(e=>{let t=`${e.service}:${e.field}`;return(0,B.jsx)(se,{credential:e,assistantId:a,generatingLink:ue===t,deleting:de===t,onGenerateLink:()=>void me(e),onDelete:()=>V(e)},e.credentialId??t)})})]}):(0,B.jsxs)(`div`,{className:`flex flex-col items-center justify-center px-6 py-12 text-center`,children:[(0,B.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,B.jsx)(P,{className:`h-6 w-6 text-[var(--content-disabled)] dark:text-[var(--content-default)]`,"aria-hidden":!0})}),(0,B.jsx)(`h3`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:e(`credentialsPage.emptyTitle`)}),(0,B.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`credentialsPage.emptySubtitle`)})]}),Z?null:(0,B.jsx)(t,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>O(!0),className:`w-full border-dashed`,leftIcon:(0,B.jsx)(A,{"aria-hidden":!0}),children:e(`credentialsPage.addCredentialButton`)})]})}),(0,B.jsx)(S,{open:z!==null,title:e(`credentialsPage.deleteConfirmTitle`),message:z?e(`credentialsPage.deleteConfirmMessage`,{name:`${z.service}:${z.field}`}):``,confirmLabel:e(`credentialsPage.deleteConfirmLabel`),destructive:!0,onConfirm:fe,onCancel:()=>V(null)}),(0,B.jsx)(S,{open:H!==null,title:e(`credentialsPage.inUseTitle`),message:H?e(`credentialsPage.inUseMessage`,{count:H.connections.length,name:`${H.credential.service}:${H.credential.field}`,connections:oe(H.connections)}):``,confirmLabel:e(`credentialsPage.inUseConfirmLabel`),destructive:!0,onConfirm:pe,onCancel:()=>U(null)}),(0,B.jsx)(o,{open:D,onClose:()=>O(!1)}),(0,B.jsx)(v.Root,{open:G!==null,onOpenChange:e=>{e||K(null)},children:(0,B.jsxs)(v.Content,{size:`sm`,children:[(0,B.jsxs)(v.Header,{icon:I,children:[(0,B.jsx)(v.Title,{children:e(`credentialsPage.oneTimeLinkModalTitle`)}),(0,B.jsx)(v.Description,{children:G?e(`credentialsPage.oneTimeLinkModalDescription`,{name:G.name,expiresClause:G.expiresAt===null?``:e(`credentialsPage.oneTimeLinkModalExpiresClause`,{expiresAt:new Date(ce(G.expiresAt)).toLocaleString()})}):``})]}),(0,B.jsx)(v.Body,{children:(0,B.jsx)(l,{label:e(`credentialsPage.linkLabel`),type:`text`,readOnly:!0,value:G?.url??``,onFocus:e=>e.currentTarget.select(),fullWidth:!0})}),(0,B.jsx)(v.Footer,{children:(0,B.jsx)(t,{type:`button`,size:`compact`,onClick:he,leftIcon:(0,B.jsx)(F,{"aria-hidden":!0}),children:e(`credentialsPage.copyLinkButton`)})})]})})]})}export{G as CredentialsPage};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{rr as t}from"./app-KRIEMzuO.js";import{t as n,x as r}from"./react-B9IgSVeK.js";import{t as i}from"./preview-error-B2MuMDf7.js";import{a,t as o}from"./tabular-grid-9asraGxC.js";import{t as s}from"./use-async-read-DcRLxtMN.js";var c=e(r(),1),l=n();function u({blob:e,filename:n}){let{value:r,failed:u}=s(e,e=>e.text()),d=(0,c.useMemo)(()=>r===null?null:a(r),[r]);return u?(0,l.jsx)(i,{filename:n}):d===null?(0,l.jsx)(t,{}):(0,l.jsx)(o,{...d})}export{u as CsvPreview};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{xS as t}from"./app-KRIEMzuO.js";import{f as n,x as r}from"./react-B9IgSVeK.js";var i=e(r(),1);function a(){let e=n();return(0,i.useEffect)(()=>{e(t.settings.general,{replace:!0})},[e]),null}export{a as DangerZoneRedirectPage};
|