@vellumai/web 0.12.2-staging.4 → 0.12.2-staging.6

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.
Files changed (251) hide show
  1. package/dist/assets/{a2a-invite-C-d__v0P.js → a2a-invite-BOdHy8O9.js} +1 -1
  2. package/dist/assets/{about-page-BMTVVfA2.js → about-page-COxmu2oQ.js} +1 -1
  3. package/dist/assets/{account-page-Bu04CQvW.js → account-page-CYNbvuWs.js} +1 -1
  4. package/dist/assets/{account-shell-0TviHaBf.js → account-shell-CbiWTAQP.js} +1 -1
  5. package/dist/assets/{acp-run-detail-panel-w4reCx6D.js → acp-run-detail-panel-B5vKfWQN.js} +3 -3
  6. package/dist/assets/activation-list-route-BOb-rtBa.js +1 -0
  7. package/dist/assets/{activity-redirect-page-Cgmmb8Rc.js → activity-redirect-page-BWj7yOid.js} +1 -1
  8. package/dist/assets/{activity-steps-panel-C26DS_qd.js → activity-steps-panel-DmC1H7g8.js} +1 -1
  9. package/dist/assets/{add-credits-modal-IIKnKS9l.js → add-credits-modal-B0DI6Rs_.js} +1 -1
  10. package/dist/assets/add-credits-modal-Clg9vuy6.js +1 -0
  11. package/dist/assets/ai-page-CUKc_nmb.js +1 -0
  12. package/dist/assets/{android-billing-handoff-BVx_2Qs0.js → android-billing-handoff-CpzR7JDr.js} +1 -1
  13. package/dist/assets/{api-key-screen-xui6n8NR.js → api-key-screen-fY9JjhTe.js} +1 -1
  14. package/dist/assets/app-Tg6YU_tZ.js +392 -0
  15. package/dist/assets/{app-info-4gR8gnBC.js → app-info-B8Mqmeak.js} +1 -1
  16. package/dist/assets/archive-redirect-page-De-Keegk.js +1 -0
  17. package/dist/assets/{assistant-status-panel-B-woG0mJ.js → assistant-status-panel-BALzwsAc.js} +1 -1
  18. package/dist/assets/auth-store-D-6LI7o_.js +1 -0
  19. package/dist/assets/{auth-welcome-screen-BsYIoTpq.js → auth-welcome-screen-D2mxoZEG.js} +1 -1
  20. package/dist/assets/avatar-bundled-components-Bo-wVBBE.js +1 -0
  21. package/dist/assets/avatar-random-ZUs-wFAP.js +2 -0
  22. package/dist/assets/{await-org-header-settled-euao9G4w.js → await-org-header-settled-CYxBtSPa.js} +1 -1
  23. package/dist/assets/background-task-detail-panel-D4CYPLDN.js +1 -0
  24. package/dist/assets/billing-page-CqDMGSHe.js +3 -0
  25. package/dist/assets/{billing-redirect-page-A8_L7A4l.js → billing-redirect-page-nGTPWHMN.js} +1 -1
  26. package/dist/assets/{bookmarks-page-Db3QFcDm.js → bookmarks-page-CGd4Okx8.js} +1 -1
  27. package/dist/assets/{bundle-confirm-page-Cnb49ExR.js → bundle-confirm-page-BuQ9wfYw.js} +1 -1
  28. package/dist/assets/channel-transcript-panel-Ca2IqSxd.js +1 -0
  29. package/dist/assets/channels-page-route-BrkM9cD0.js +1 -0
  30. package/dist/assets/chat-info-panel-CFHg5G5C.js +1 -0
  31. package/dist/assets/checkout-continuation-ATko7N-k.js +1 -0
  32. package/dist/assets/{checkout-page-B6HAgaEv.js → checkout-page-CVp2T6mP.js} +1 -1
  33. package/dist/assets/checkout-return-target-BM6j8E5w.js +1 -0
  34. package/dist/assets/{command-palette-BIYpDozl.js → command-palette-BuaJlwlj.js} +1 -1
  35. package/dist/assets/command-palette-DkTYuZU8.js +1 -0
  36. package/dist/assets/{command-palette-window-page-BMC7dzK0.js → command-palette-window-page-UeoQHE-2.js} +1 -1
  37. package/dist/assets/common-Bj2G8_g5.js +1 -0
  38. package/dist/assets/{community-page-BxDoLG0_.js → community-page-rNFPZE2f.js} +1 -1
  39. package/dist/assets/{companion-accent-pu5Xu8Z6.js → companion-accent-C3xBrXHO.js} +1 -1
  40. package/dist/assets/{companion-dock-zones-page-BEfMdIVO.js → companion-dock-zones-page-plFxxNVK.js} +1 -1
  41. package/dist/assets/{companion-layout-Ye64fIzN.js → companion-layout-Cu_j-nKV.js} +1 -1
  42. package/dist/assets/{companion-popover-Bs6A6445.js → companion-popover-STvrRaku.js} +1 -1
  43. package/dist/assets/{companion-popover-page-7jpYeiIN.js → companion-popover-page-Dvft1iSc.js} +1 -1
  44. package/dist/assets/companion-surface-page-DHxOTQOL.js +1 -0
  45. package/dist/assets/{companion-watch-frame-page-Bk0N7E-g.js → companion-watch-frame-page-DLTwthiI.js} +1 -1
  46. package/dist/assets/{connect-page-Bf8bYBAk.js → connect-page-BtvEUJj6.js} +1 -1
  47. package/dist/assets/{consent-controls-N6cnmytV.js → consent-controls-CjyXQ2Ju.js} +1 -1
  48. package/dist/assets/contacts-gateway-CZ3fJfK5.js +1 -0
  49. package/dist/assets/contacts-page-route-CNXEHOrf.js +1 -0
  50. package/dist/assets/{credential-entry-page-2ek7NaCu.js → credential-entry-page-CvXfQZPl.js} +1 -1
  51. package/dist/assets/credentials-page-DsxuB0Ui.js +1 -0
  52. package/dist/assets/{csv-preview-BB-EmIxC.js → csv-preview-TFV8b1Dq.js} +1 -1
  53. package/dist/assets/danger-zone-redirect-page-C23hsdDS.js +1 -0
  54. package/dist/assets/debug-page-6PKrAjce.js +4 -0
  55. package/dist/assets/deploy-dialogs-BXYdSkVL.js +1 -0
  56. package/dist/assets/{deploy-dialogs-BSCor8jx.js → deploy-dialogs-C0gFbHA2.js} +1 -1
  57. package/dist/assets/{desktop-preview-content-BIp4Vpgt.js → desktop-preview-content-Cc9hlQ4Q.js} +2 -2
  58. package/dist/assets/{desktop-status-CHoj8auj.js → desktop-status-CPR10G_B.js} +1 -1
  59. package/dist/assets/{desktop-viewer-86gYrlm2.js → desktop-viewer-Cm09cFMg.js} +2 -2
  60. package/dist/assets/{detail-card-CGafPdBQ.js → detail-card-pT0agbKq.js} +1 -1
  61. package/dist/assets/{detail-panel-stop-button-BqhRaB6y.js → detail-panel-stop-button-DWoO-nJN.js} +1 -1
  62. package/dist/assets/{detail-primitives-DIBzx3XJ.js → detail-primitives-ue4wzzCx.js} +1 -1
  63. package/dist/assets/developer-page-DcZbWcLH.js +1 -0
  64. package/dist/assets/devices-redirect-page-Bxu6ZvQb.js +1 -0
  65. package/dist/assets/{dictation-overlay-page-C9yEcxKh.js → dictation-overlay-page-CG8S4p0x.js} +1 -1
  66. package/dist/assets/document-load-B8iTfjYL.js +1 -0
  67. package/dist/assets/{document-load-CZeb0od7.js → document-load-DShQChFM.js} +1 -1
  68. package/dist/assets/document-viewer-page-BStfu3jJ.js +1 -0
  69. package/dist/assets/emails-page-BlP1KP70.js +1 -0
  70. package/dist/assets/{environment-store-7mW8BRRm.js → environment-store-rH-YdiqT.js} +1 -1
  71. package/dist/assets/{file-diff-view-B9dRfPbB.js → file-diff-view-CO2QJdSQ.js} +1 -1
  72. package/dist/assets/{file-editor-DtbuATs6.js → file-editor-EZsnOrB1.js} +1 -1
  73. package/dist/assets/general-page-DjmqGNEh.js +2 -0
  74. package/dist/assets/hatching-screen-Vx631ARz.js +1 -0
  75. package/dist/assets/{hosting-screen-D8bCW4Uz.js → hosting-screen-nVYKldkt.js} +1 -1
  76. package/dist/assets/identity-page-route-B4R5hI3l.js +7 -0
  77. package/dist/assets/{inspect-page-C2T5Wpgw.js → inspect-page-CYYIbGHx.js} +5 -5
  78. package/dist/assets/integrations-page-BjXxWGKz.js +1 -0
  79. package/dist/assets/{intelligence-layout-jyahyAWu.js → intelligence-layout-BUGM35jP.js} +1 -1
  80. package/dist/assets/intelligence-layout-slots-store-nrEU1pdD.js +1 -0
  81. package/dist/assets/keyboard-shortcuts-redirect-page-UFsztRh3.js +1 -0
  82. package/dist/assets/{latest-assistant-text-HB3-JTrf.js → latest-assistant-text-CaZrfk6l.js} +3 -3
  83. package/dist/assets/{library-detail-page-DTptYQAF.js → library-detail-page-BcqVyl-x.js} +1 -1
  84. package/dist/assets/library-page-CK7LA8to.js +1 -0
  85. package/dist/assets/local-mode-B63ogN2h.js +1 -0
  86. package/dist/assets/login-page-Cw14hc03.js +1 -0
  87. package/dist/assets/logout-page-DpNGL-t4.js +1 -0
  88. package/dist/assets/{logs-layout-C4SjgNAl.js → logs-layout-BqrW_P--.js} +1 -1
  89. package/dist/assets/{markdown-preview-CBu26q1U.js → markdown-preview-DsAfiAyB.js} +1 -1
  90. package/dist/assets/{media-preview-CrddXQMc.js → media-preview-DvdWd4rA.js} +1 -1
  91. package/dist/assets/memory-page-route-B98b_k6V.js +2 -0
  92. package/dist/assets/{memory-router-playground-page-CP0Eurny.js → memory-router-playground-page-BmST7_Kw.js} +1 -1
  93. package/dist/assets/{message-files-panel-CDzpeEx4.js → message-files-panel-B4KcGaTu.js} +1 -1
  94. package/dist/assets/{metric-card-Dkx47Ug0.js → metric-card-BLErTI6M.js} +1 -1
  95. package/dist/assets/native-attachment-pickers-DXW2YF-J.js +1 -0
  96. package/dist/assets/native-file-DIYnpRix.js +1 -0
  97. package/dist/assets/{notifications-page-1r0ehmHL.js → notifications-page-wjJIxJdC.js} +1 -1
  98. package/dist/assets/{oauth-complete-page-D8yKCOVn.js → oauth-complete-page-DMvGhbPg.js} +1 -1
  99. package/dist/assets/{oauth-popup-complete-page-DzPqlG80.js → oauth-popup-complete-page-BjtYXKTi.js} +1 -1
  100. package/dist/assets/paired-platform-identity-DyA-oZ1a.js +1 -0
  101. package/dist/assets/{pairing-page-DhmG1Tkg.js → pairing-page-BfrUX_YA.js} +1 -1
  102. package/dist/assets/password-reset-page-DyCdaLlT.js +1 -0
  103. package/dist/assets/{pdf-file-preview-ElX646lL.js → pdf-file-preview-Cv30v3e_.js} +1 -1
  104. package/dist/assets/{personality-page-BqW5uuDF.js → personality-page-CUwdmzId.js} +1 -1
  105. package/dist/assets/{personality-page-DXW5MuRz.js → personality-page-D03UdQms.js} +1 -1
  106. package/dist/assets/personality-sliders-BZ5p3Svp.js +1 -0
  107. package/dist/assets/plans-page-Bt7rWPBi.js +1 -0
  108. package/dist/assets/{platform-loopback-page--ynU4rVO.js → platform-loopback-page-C3a-am1y.js} +1 -1
  109. package/dist/assets/{plugin-detail-page-lbmmlIpx.js → plugin-detail-page-D52frrTx.js} +1 -1
  110. package/dist/assets/{plugins-page-BM44sOv4.js → plugins-page-RrhNT7og.js} +1 -1
  111. package/dist/assets/plugins-surface-f4dAI31U.js +1 -0
  112. package/dist/assets/{preview-error-B6mdXJ98.js → preview-error-BlHGLqgj.js} +1 -1
  113. package/dist/assets/privacy-page-CKEUMx1C.js +1 -0
  114. package/dist/assets/{privacy-screen-CW2gbeYL.js → privacy-screen-Bkjr2dIv.js} +1 -1
  115. package/dist/assets/{provider-callback-page-PVHvQXqC.js → provider-callback-page-DGAy5DvE.js} +1 -1
  116. package/dist/assets/{provider-key-fvCko3IH.js → provider-key-CHOBBf9E.js} +1 -1
  117. package/dist/assets/{provider-signup-page-D6kN0d9F.js → provider-signup-page-BG1mhVYr.js} +1 -1
  118. package/dist/assets/{quick-input-page-DMs0592w.js → quick-input-page-CCDzeBSI.js} +1 -1
  119. package/dist/assets/referral-modal-BTG7IbD5.js +1 -0
  120. package/dist/assets/{referral-modal-C5ePy9XT.js → referral-modal-BWGbrPeD.js} +1 -1
  121. package/dist/assets/{research-mock-page-D3X9Fw83.js → research-mock-page-CHfDwifi.js} +1 -1
  122. package/dist/assets/research-onboarding-route-DvnsATHR.js +50 -0
  123. package/dist/assets/{review-terms-screen-CU9h0Gz5.js → review-terms-screen-C2vdbHvu.js} +1 -1
  124. package/dist/assets/routes-64wTPHX3.js +1 -0
  125. package/dist/assets/schedules-AMG6VEfS.js +1 -0
  126. package/dist/assets/schedules-page-DQ0p71wD.js +1 -0
  127. package/dist/assets/security-redirect-page-C8sxzPnV.js +1 -0
  128. package/dist/assets/select-assistant-screen-B57uDK4U.js +1 -0
  129. package/dist/assets/{self-hosted-servers-sqp6RgAQ.js → self-hosted-servers-CsZVedz3.js} +1 -1
  130. package/dist/assets/{service-form-controls-C5nQsTzh.js → service-form-controls-DTfO4j3O.js} +1 -1
  131. package/dist/assets/{setting-row-Dqextrfj.js → setting-row-B9yebbEq.js} +1 -1
  132. package/dist/assets/{settings-divider-D-IFmB_l.js → settings-divider-BkQcvD1N.js} +1 -1
  133. package/dist/assets/{settings-layout-Bh7MaZ4H.js → settings-layout-D6972VFH.js} +1 -1
  134. package/dist/assets/share-feedback-modal-CYWA8ArT.js +1 -0
  135. package/dist/assets/share-feedback-modal-DwmVNIDD.js +2 -0
  136. package/dist/assets/{sidebar-tree-BgVhUiEU.js → sidebar-tree-C-XVAOgc.js} +1 -1
  137. package/dist/assets/{signup-page-CzQJSqzn.js → signup-page-DdiJpBz3.js} +1 -1
  138. package/dist/assets/{signup-shell-C1cGo11n.js → signup-shell-_mEn5UNl.js} +1 -1
  139. package/dist/assets/{skill-detail-page-BN8Rwzuu.js → skill-detail-page-bMQCOgEU.js} +2 -2
  140. package/dist/assets/{skill-detail-panel-DVrh3t_h.js → skill-detail-panel-jkm8mNzk.js} +1 -1
  141. package/dist/assets/{skill-removal-dialog-CkduZswH.js → skill-removal-dialog-CWQDV20Q.js} +1 -1
  142. package/dist/assets/{skills-page-DS76T-t4.js → skills-page-CkHlkDe4.js} +1 -1
  143. package/dist/assets/{sounds-page-Bqrv7A7h.js → sounds-page-DZ9H_Uhf.js} +1 -1
  144. package/dist/assets/{start-screen-Cz9LflKA.js → start-screen-CPuK_kcL.js} +1 -1
  145. package/dist/assets/{stt-language-picker-modal-Ckz32Oh1.js → stt-language-picker-modal-vTox8Zp8.js} +1 -1
  146. package/dist/assets/subagent-detail-panel-p9ahsacR.js +1 -0
  147. package/dist/assets/superpowers-page-BiVUrsDa.js +1 -0
  148. package/dist/assets/{system-events-page-D0fUUNzD.js → system-events-page-CxJryFCX.js} +1 -1
  149. package/dist/assets/system-events-redirect-page-CORiS4Xr.js +1 -0
  150. package/dist/assets/{text-preview-DozGQuv6.js → text-preview-BZ7GgUAU.js} +1 -1
  151. package/dist/assets/{theme-stage-page-CcBBPfjV.js → theme-stage-page-BBUhsE2D.js} +1 -1
  152. package/dist/assets/{tiptap-document-editor-Db4_RKhj.js → tiptap-document-editor-DR6f403A.js} +1 -1
  153. package/dist/assets/tool-detail-panel-Bia85tXo.js +15 -0
  154. package/dist/assets/tool-detail-panel-CEtClwDC.js +1 -0
  155. package/dist/assets/{trait-cycle-row-C1uqLkCi.js → trait-cycle-row-BRsd1qDW.js} +1 -1
  156. package/dist/assets/upgrade-cancel-page-Cb2Knf6m.js +1 -0
  157. package/dist/assets/{upgrade-success-page-CkXzT8Ty.js → upgrade-success-page-5FOrQc3B.js} +1 -1
  158. package/dist/assets/{usage-redirect-page-CRrl2BDL.js → usage-redirect-page-DmacFGtX.js} +1 -1
  159. package/dist/assets/use-app-delete-C6E5CTp4.js +1 -0
  160. package/dist/assets/use-assistant-identity-details-BqNoC_Po.js +1 -0
  161. package/dist/assets/use-checkout-dismiss-refresh-DFYkYYpp.js +1 -0
  162. package/dist/assets/{use-edge-swipe-back-DYPOVsUT.js → use-edge-swipe-back-DMaMp9xI.js} +1 -1
  163. package/dist/assets/{use-hotkey-recorder-Cj-vFxW2.js → use-hotkey-recorder-CVYKioKK.js} +1 -1
  164. package/dist/assets/use-invite-link-dialog-ChgRhNyN.js +1 -0
  165. package/dist/assets/{use-platform-assistant-id-D8KGJAMf.js → use-platform-assistant-id-CPNM_Svc.js} +1 -1
  166. package/dist/assets/use-return-to-short-circuit-dsa2YMci.js +1 -0
  167. package/dist/assets/{use-side-list-room-CSNBqjJu.js → use-side-list-room-XknEC6_F.js} +1 -1
  168. package/dist/assets/use-skill-actions-B7qsFEjO.js +1 -0
  169. package/dist/assets/{use-skill-detail-files-C5BA-Phb.js → use-skill-detail-files-Caa0kAOC.js} +1 -1
  170. package/dist/assets/use-supports-credentials-settings-CxEHVJ-e.js +1 -0
  171. package/dist/assets/use-transcript-message-by-id-Bnbe06RA.js +1 -0
  172. package/dist/assets/{voice-page-DDLtbhsC.js → voice-page-D237ka3h.js} +1 -1
  173. package/dist/assets/{wake-detail-panel-C5K2zAvp.js → wake-detail-panel-JG7TyKGn.js} +1 -1
  174. package/dist/assets/{weather-forecast-display-CWGsPOa9.js → weather-forecast-display-CZYQX4n1.js} +1 -1
  175. package/dist/assets/welcome-screen-CQo-_cIi.js +1 -0
  176. package/dist/assets/{workflow-detail-panel-D6ip8R9Y.js → workflow-detail-panel-rYCgZeUb.js} +1 -1
  177. package/dist/assets/{workspace-page-D_4QLZh3.js → workspace-page-Bx0l3azH.js} +1 -1
  178. package/dist/index.html +1 -1
  179. package/package.json +1 -1
  180. package/dist/assets/activation-list-route-CSuVtIeq.js +0 -1
  181. package/dist/assets/add-credits-modal-Byhxttdb.js +0 -1
  182. package/dist/assets/ai-page-_iWq21vC.js +0 -1
  183. package/dist/assets/app-DFXcEvsi.js +0 -392
  184. package/dist/assets/archive-redirect-page-D1zUz-Kn.js +0 -1
  185. package/dist/assets/auth-store-BFk7tSVA.js +0 -1
  186. package/dist/assets/avatar-bundled-components-B-TO2nC_.js +0 -1
  187. package/dist/assets/avatar-random-DTCQMspt.js +0 -2
  188. package/dist/assets/background-task-detail-panel-Bm7wkZ5w.js +0 -1
  189. package/dist/assets/billing-page-BkUfkbYS.js +0 -3
  190. package/dist/assets/channel-transcript-panel-DFDoSX5e.js +0 -1
  191. package/dist/assets/channels-page-route-9NljMyj4.js +0 -1
  192. package/dist/assets/chat-info-panel-BENFQ0tW.js +0 -1
  193. package/dist/assets/checkout-continuation-C38t4ayV.js +0 -1
  194. package/dist/assets/checkout-return-target-CrM-Nhda.js +0 -1
  195. package/dist/assets/command-palette-Dj-GW7dm.js +0 -1
  196. package/dist/assets/common-l4KEHlw1.js +0 -1
  197. package/dist/assets/companion-surface-page-BrMY3X-F.js +0 -1
  198. package/dist/assets/contacts-gateway-C_BunUUf.js +0 -1
  199. package/dist/assets/contacts-page-route-DIxMGBde.js +0 -1
  200. package/dist/assets/credentials-page-D3PvFMgc.js +0 -1
  201. package/dist/assets/danger-zone-redirect-page-BVmYzrKj.js +0 -1
  202. package/dist/assets/debug-page-CJOt0BAt.js +0 -4
  203. package/dist/assets/deploy-dialogs-DY0pTVu1.js +0 -1
  204. package/dist/assets/developer-page-p4Ylxemb.js +0 -1
  205. package/dist/assets/devices-redirect-page-BcyaUgzH.js +0 -1
  206. package/dist/assets/document-load-B9O1A5E9.js +0 -1
  207. package/dist/assets/document-viewer-page-L_O7lYHa.js +0 -1
  208. package/dist/assets/emails-page-fgZebuJ7.js +0 -1
  209. package/dist/assets/general-page-iMRa5Ucp.js +0 -2
  210. package/dist/assets/hatching-screen-C9GXGQ2P.js +0 -1
  211. package/dist/assets/identity-page-route-D0fpi7db.js +0 -7
  212. package/dist/assets/integrations-page-3cwkXYyq.js +0 -1
  213. package/dist/assets/intelligence-layout-slots-store-CI7IhmZv.js +0 -1
  214. package/dist/assets/keyboard-shortcuts-redirect-page-Bcl-FjyB.js +0 -1
  215. package/dist/assets/library-page-D0OfVER_.js +0 -1
  216. package/dist/assets/local-mode-Dve-u3Zf.js +0 -1
  217. package/dist/assets/login-page-BA3GjFvS.js +0 -1
  218. package/dist/assets/logout-page-Dp--IQJm.js +0 -1
  219. package/dist/assets/memory-page-route-BzLfpam9.js +0 -2
  220. package/dist/assets/native-attachment-pickers-DVsB4Q0l.js +0 -1
  221. package/dist/assets/native-file-BKR4KkJt.js +0 -1
  222. package/dist/assets/paired-platform-identity-C4IGgtxq.js +0 -1
  223. package/dist/assets/password-reset-page-7yc-z_Pf.js +0 -1
  224. package/dist/assets/personality-sliders-BuInNb35.js +0 -1
  225. package/dist/assets/plans-page-B87o5Bm-.js +0 -1
  226. package/dist/assets/plugins-surface-2i_lZYet.js +0 -1
  227. package/dist/assets/privacy-page-BqqU59zB.js +0 -1
  228. package/dist/assets/referral-modal-VQ2vsPTh.js +0 -1
  229. package/dist/assets/research-onboarding-route-Bk2Zl9y9.js +0 -50
  230. package/dist/assets/routes-NC2Xyogy.js +0 -1
  231. package/dist/assets/schedules-Cslj2E_n.js +0 -1
  232. package/dist/assets/schedules-page-7QBCwWLg.js +0 -1
  233. package/dist/assets/security-redirect-page-D6C5fIZt.js +0 -1
  234. package/dist/assets/select-assistant-screen-BO9WTRBj.js +0 -1
  235. package/dist/assets/share-feedback-modal-D44y3KhU.js +0 -1
  236. package/dist/assets/share-feedback-modal-DsaGXNnY.js +0 -2
  237. package/dist/assets/subagent-detail-panel-C2AI9zu4.js +0 -1
  238. package/dist/assets/superpowers-page-CMOvPhlc.js +0 -1
  239. package/dist/assets/system-events-redirect-page-Dr4-w7Y1.js +0 -1
  240. package/dist/assets/tool-detail-panel-CNNnmtM6.js +0 -15
  241. package/dist/assets/tool-detail-panel-PjXqpW5b.js +0 -1
  242. package/dist/assets/upgrade-cancel-page-CKZWRtvT.js +0 -1
  243. package/dist/assets/use-app-delete-CFfw_T0x.js +0 -1
  244. package/dist/assets/use-assistant-identity-details-CGJTkSlu.js +0 -1
  245. package/dist/assets/use-checkout-dismiss-refresh-DB9VdW8-.js +0 -1
  246. package/dist/assets/use-invite-link-dialog-B4f3yyUN.js +0 -1
  247. package/dist/assets/use-return-to-short-circuit-Db6fiXSQ.js +0 -1
  248. package/dist/assets/use-skill-actions-BNpUjvgz.js +0 -1
  249. package/dist/assets/use-supports-credentials-settings-DIKVOLU1.js +0 -1
  250. package/dist/assets/use-transcript-message-by-id-ZVUnXf5k.js +0 -1
  251. package/dist/assets/welcome-screen-DuUuJIJ2.js +0 -1
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$c as t,$p as n,Ax as r,B as i,C as a,Cd as o,Cx as s,E as c,Eb as l,Fb as u,Gb as d,Gc as f,Go as p,Gx as m,H as h,Hb as g,Hc as _,Hx as v,Jb as y,Jc as ee,Jo as b,Ju as x,Kc as te,Kg as S,Ko as C,Lb as w,Lo as T,Lx as E,Ox as D,Px as O,Qc as ne,Qo as k,Qp as A,Sd as j,So as M,Sp as re,T as ie,Uc as ae,Ur as oe,Ux as N,V as P,Vx as F,Wc as se,Wl as I,Wx as L,Xc as ce,Xo as le,Yc as ue,Yo as de,Zc as fe,Zo as pe,Zp as me,ah as he,bd as ge,bm as _e,cd as R,di as z,do as ve,el as ye,et as be,fo as B,gc as V,id as xe,jx as Se,mi as H,mx as U,nl as Ce,od as we,ox as W,pi as G,qc as Te,qo as Ee,qu as K,qx as De,rl as Oe,rx as ke,sd as Ae,sx as je,tu as Me,ub as Ne,ui as Pe,un as Fe,vx as Ie,w as Le,wx as q}from"./app-Tg6YU_tZ.js";import{Jn as J,N as Y,Zn as X,er as Re,j as Z}from"./vendor-DYOeoIwg.js";import{_ as ze,d as Be,f as Ve,h as He,n as Ue,t as We,x as Ge}from"./react-B9IgSVeK.js";import{Ci as Ke,Gn as qe,Hi as Je,Ki as Ye,Lt as Xe,Ri as Ze,Tn as Qe,Xr as $e,_t as et,k as tt,qi as nt,qn as rt,ur as it,vr as at,zn as ot}from"./icons-QG1KAFmx.js";import{t as st}from"./detail-card-pT0agbKq.js";import{n as ct,r as lt,t as ut}from"./use-side-list-room-XknEC6_F.js";import{a as dt,c as ft,i as pt,n as mt,o as ht,r as gt,s as _t,t as vt,u as yt}from"./use-invite-link-dialog-ChgRhNyN.js";import{t as bt}from"./use-platform-assistant-id-CPNM_Svc.js";import{t as xt}from"./environment-store-rH-YdiqT.js";import{i as St,r as Ct}from"./service-form-controls-DTfO4j3O.js";var Q=e(Ge(),1);function wt(){let{channelId:e}=He(),t=Ve(),{search:n}=Be();return{selected:e,select:(0,Q.useCallback)(e=>{t({pathname:`/assistant/channels/${encodeURIComponent(e)}`,search:n},{replace:!0})},[t,n])}}var $=We();function Tt({channels:e,pluginChannels:t=[],selectedKey:n,onSelect:r}){return(0,$.jsx)(v.Root,{className:`flex h-full flex-col overflow-hidden`,children:(0,$.jsx)(v.Body,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-4`,children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[e.map(e=>(0,$.jsx)(Et,{channel:e,selected:e.key===n,onClick:()=>r(e.key)},e.key)),t.map(e=>(0,$.jsx)(Dt,{channel:e,selected:e.key===n,onClick:()=>r(e.key)},e.key))]})})})}function Et({channel:e,selected:t,onClick:n}){let r=e.status===`ready`,i=G(e.key),a=r?`Connected`:`Not connected`;return(0,$.jsx)(Ie,{asChild:!0,active:t,"aria-label":`${i}, ${a}`,children:(0,$.jsxs)(`button`,{type:`button`,onClick:n,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:[(0,$.jsx)(Pe,{channelId:e.key,className:`h-4 w-4 shrink-0 text-[color:var(--content-secondary)]`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default`,children:i}),(0,$.jsx)(`span`,{className:`flex shrink-0 items-center`,children:(0,$.jsx)(E,{tone:r?`positive`:`neutral`,children:a})})]})})}function Dt({channel:e,selected:t,onClick:n}){let{t:r}=Z(`channels`);return(0,$.jsx)(Ie,{asChild:!0,active:t,"aria-label":r(`channelAdapterList.pluginChannelAria`,{channel:e.label}),children:(0,$.jsxs)(`button`,{type:`button`,onClick:n,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:[(0,$.jsx)(z,{icon:e.icon,className:`h-4 w-4 shrink-0 text-[color:var(--content-secondary)]`}),(0,$.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default`,children:e.label}),(0,$.jsx)(Xe,{"aria-hidden":!0,className:`h-4 w-4 shrink-0 text-[color:var(--content-secondary)]`})]})})}function Ot({icon:e,title:t,description:n,action:r,className:i}){return(0,$.jsxs)(`div`,{className:De(`flex flex-col items-center justify-center gap-3 px-4 py-12 text-center`,i),children:[e?(0,$.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-xl bg-[var(--surface-sunken)] text-[var(--content-tertiary)]`,children:e}):null,(0,$.jsx)(`h3`,{className:`text-title-small text-[var(--content-default)]`,children:t}),n?(0,$.jsx)(`p`,{className:`max-w-md text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:n}):null,r?(0,$.jsx)(`div`,{className:`mt-1`,children:r}):null]})}var kt={no_one:{labelKey:`channelTrustFloor.noOne.label`,descriptionKey:`channelTrustFloor.noOne.description`,confirm:{titleKey:`channelTrustFloor.noOne.confirmTitle`,messageKey:`channelTrustFloor.noOne.confirmMessage`,actionKey:`channelTrustFloor.noOne.confirmAction`,destructive:!0}},guardian_only:{labelKey:`channelTrustFloor.guardianOnly.label`,descriptionKey:`channelTrustFloor.guardianOnly.description`,confirm:void 0},trusted_contacts:{labelKey:`channelTrustFloor.trustedContacts.label`,descriptionKey:`channelTrustFloor.trustedContacts.description`,confirm:void 0},any_contact:{labelKey:`channelTrustFloor.anyContact.label`,descriptionKey:`channelTrustFloor.anyContact.description`,confirm:{titleKey:`channelTrustFloor.anyContact.confirmTitle`,messageKey:`channelTrustFloor.anyContact.confirmMessage`,actionKey:`channelTrustFloor.anyContact.confirmAction`,destructive:!1}},strangers:{labelKey:`channelTrustFloor.strangers.label`,descriptionKey:`channelTrustFloor.strangers.description`,confirm:{titleKey:`channelTrustFloor.strangers.confirmTitle`,messageKey:`channelTrustFloor.strangers.confirmMessage`,actionKey:`channelTrustFloor.strangers.confirmAction`,destructive:!0}}};function At({assistantDisplayName:e,policy:t,saving:n=!1,loading:r=!1,error:i=!1,onChange:a}){let{t:o}=Z(`channels`),c=t??`trusted_contacts`,l=yt.map(t=>({value:t,label:o(kt[t].labelKey),tooltip:o(kt[t].descriptionKey,{assistant:e})})),[u,d]=(0,Q.useState)(null),f=u?kt[u].confirm:void 0;return(0,$.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,$.jsx)(N,{as:`span`,variant:`body-small-emphasised`,className:`text-[color:var(--content-secondary)]`,children:o(`channelTrustFloor.heading`,{assistant:e})}),r?(0,$.jsx)(N,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:o(`channelTrustFloor.loading`)}):i?(0,$.jsx)(N,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-negative)]`,children:o(`channelTrustFloor.loadFailed`)}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{style:{maxWidth:280},children:(0,$.jsx)(U,{value:c,onChange:e=>{if(kt[e].confirm){d(e);return}a(e)},options:l,disabled:n,"aria-label":o(`channelTrustFloor.selectAria`,{assistant:e})})}),(0,$.jsx)(N,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:o(kt[c].descriptionKey,{assistant:e})}),c===`trusted_contacts`?(0,$.jsx)(F,{tone:`info`,className:`max-w-lg`,children:o(`channelTrustFloor.trustedContactsNotice`,{assistant:e})}):null]}),(0,$.jsx)(s,{open:u!==null,title:f?o(f.titleKey):``,message:f?o(f.messageKey):``,confirmLabel:o(f?f.actionKey:`channelTrustFloor.confirmFallback`),destructive:f?.destructive??!1,onConfirm:()=>{u&&a(u),d(null)},onCancel:()=>d(null)})]})}function jt({mode:e,onChange:t}){let{t:n}=Z(`common`);return(0,$.jsx)(`div`,{className:`max-w-[280px]`,children:(0,$.jsx)(D,{ariaLabel:n(`serviceCard.modeToggleAriaLabel`),value:e,onChange:t,items:[{value:`managed`,label:n(`serviceCard.managedLabel`)},{value:`your-own`,label:n(`serviceCard.yourOwnLabel`)}]})})}function Mt({id:e,title:t,subtitle:n,mode:r,onModeChange:i,children:a}){return(0,$.jsxs)(st,{id:e,title:t,subtitle:n,accessory:(0,$.jsx)(jt,{mode:r,onChange:i}),children:[(0,$.jsx)(`div`,{className:`h-px bg-[var(--surface-active)]`}),(0,$.jsx)(`div`,{className:`mt-4`,children:a})]})}function Nt(e,t){return e===`managed`||e===`your-own`?e:t}function Pt({subdomain:e,onSubdomainChange:t,domainSuffix:n,subdomainPlaceholder:r=`my-assistant`,disabled:i,autoFocus:a,prefix:o,error:s,locked:c,lockedMessage:l}){let{t:u}=Z(`settings`);return(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`div`,{className:`flex h-9 w-full items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${s?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[o,(0,$.jsx)(`input`,{value:e,onChange:e=>t(e.target.value.toLowerCase().trim()),disabled:i||c,readOnly:c,autoFocus:a,placeholder:r,"aria-label":u(`domainField.subdomainAriaLabel`),"aria-invalid":!!s,className:`h-full min-w-0 flex-1 bg-transparent ${o?`pl-1.5`:`pl-3`} pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none disabled:cursor-not-allowed disabled:opacity-60`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`.`,n]})]}),s&&(0,$.jsx)(`p`,{className:`mt-1.5 text-body-small-default text-[var(--system-negative-strong)]`,children:s}),c&&l&&(0,$.jsx)(`p`,{className:`mt-1.5 text-body-small-default text-[var(--content-tertiary)]`,children:l})]})}function Ft({status:e,isLoading:t}){let{t:n}=Z(`common`);return t?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,children:[(0,$.jsx)(rt,{className:`h-3 w-3 animate-spin`}),n(`domainVerificationChip.checkingDomain`)]}):!e||e===`unknown`?(0,$.jsx)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--tag-bg-neutral)] px-2.5 py-0.5 text-body-small-default text-[var(--content-quiet)]`,title:n(`domainVerificationChip.unknownStatusTitle`),children:n(`domainVerificationChip.unknownStatus`)}):e===`verified`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-positive-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-positive-strong)]`,title:n(`domainVerificationChip.verifiedTitle`),children:[(0,$.jsx)(nt,{className:`h-3 w-3`}),n(`domainVerificationChip.domainVerified`)]}):e===`pending`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-mid-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-mid-strong)]`,title:n(`domainVerificationChip.verifyingTitle`),children:[(0,$.jsx)(Ke,{className:`h-3 w-3`}),n(`domainVerificationChip.verifyingDomain`)]}):e===`not_started`?(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-negative-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,title:n(`domainVerificationChip.setupRequiredTitle`),children:[(0,$.jsx)(Je,{className:`h-3 w-3`}),n(`domainVerificationChip.setupRequired`)]}):(0,$.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded-full bg-[var(--system-negative-weak)] px-2.5 py-0.5 text-body-small-default text-[var(--system-negative-strong)]`,title:n(`domainVerificationChip.failedTitle`),children:[(0,$.jsx)(Je,{className:`h-3 w-3`}),n(`domainVerificationChip.verificationFailed`)]})}var It=`rounded bg-[var(--surface-active)] px-1 py-0.5 font-mono text-[0.9em]`,Lt=1e4;function Rt(e){return e===`verified`||e===`failed`||e===`not_started`?!1:Lt}function zt({assistantId:e,assistantHandle:n,emailRootDomain:r}){let{t:i}=Z(`channels`),a=Re(),c=Ve(),[d,p]=ze(),[m,h]=(0,Q.useState)(``),[v,y]=(0,Q.useState)(!1),[b,x]=(0,Q.useState)(null),[S,C]=(0,Q.useState)(``),[w,T]=(0,Q.useState)(null),[E,D]=(0,Q.useState)(!1),[O,k]=(0,Q.useState)(!1),[A,M]=(0,Q.useState)(!1),[re,ie]=(0,Q.useState)(!1),[oe,N]=(0,Q.useState)(null);(0,Q.useEffect)(()=>{v||!n||m||(h(n),y(!0))},[n,v,m]);let P=X({...I(),enabled:!0}),le=P.data,de=le?.entitlements,pe=de?.managed_email===!0,me=!!de&&!pe,he=!le&&P.isError&&!P.isFetching,ge=X({...se({path:{assistant_id:e}}),enabled:!me}),_e=X({...fe({path:{assistant_id:e}}),enabled:!me}),R=ge.data?.results?.[0],z=_e.data?.results?.[0],ve=R?`${R.subdomain}.${r}`:null,B=X({...t({path:{assistant_id:e,id:z?.id??``}}),enabled:!!z?.id,refetchOnWindowFocus:!1}),V=X({...te({path:{assistant_id:e,id:R?.id??``}}),enabled:!!R?.id,refetchInterval:e=>Rt(e.state.data?.status),refetchOnWindowFocus:!0});(0,Q.useEffect)(()=>{d.get(`release`)!==`1`||!R||z||(k(!0),p(e=>{let t=new URLSearchParams(e);return t.delete(`release`),t},{replace:!0}))},[z,R,d,p]);let xe=J(_()),Se=J(ae()),H=Me(),U=J(ue()),Ce=J(ce()),we=J(o()),W=(0,Q.useCallback)(()=>{let t={assistant_id:e};a.invalidateQueries({queryKey:f({path:t})}),a.invalidateQueries({queryKey:ne({path:t})}),z?.id&&a.invalidateQueries({queryKey:ye({path:{...t,id:z.id}})}),a.invalidateQueries({queryKey:Oe()})},[z?.id,e,a]),G=be(),Ee=we.mutateAsync,K=(0,Q.useCallback)(()=>{Ee({path:{assistant_id:G},body:{channel:`email`}}).catch(()=>{}).finally(()=>{a.invalidateQueries({queryKey:j({path:{assistant_id:G}})})})},[G,a,Ee]),De=(0,Q.useCallback)(async()=>{let t=m.trim().toLowerCase();if(!t){x(i(`emailManagedContent.enterSubdomainError`));return}D(!1);try{await xe.mutateAsync({path:{assistant_id:e},body:{subdomain:t}}),h(``),x(null),W(),q.success(i(`emailManagedContent.domainRegisteredToast`,{domain:`${t}.${r}`}))}catch(e){x(g(e,void 0,i(`emailManagedContent.registerDomainFailedFallback`)))}},[e,r,W,xe,m,i]),ke=(0,Q.useCallback)(async()=>{let t=S.trim().toLowerCase();if(!t){T(i(`emailManagedContent.enterUsernameError`));return}try{await U.mutateAsync({path:{assistant_id:e},body:{username:t}}),C(``),T(null),W(),K(),q.success(i(`emailManagedContent.emailCreatedToast`))}catch(e){T(g(e,void 0,i(`emailManagedContent.createEmailFailedFallback`)))}},[e,W,K,U,S,i]),Ae=(0,Q.useCallback)(async()=>{if(z?.id){M(!1);try{await Ce.mutateAsync({path:{assistant_id:e,id:z.id}}),W(),K(),q.success(i(`emailManagedContent.emailRemovedToast`))}catch(e){u(e,{context:`email_address_delete`}),q.error(i(`emailManagedContent.emailRemoveFailedToast`))}}},[z?.id,e,Ce,W,K,i]),je=(0,Q.useCallback)(async()=>{if(!(!R?.id||H.isPending)){N(null);try{let t=await H.mutateAsync({path:{assistant_id:e,id:R.id}});ie(!1),ee(a,{path:{assistant_id:e,id:R.id}},t),a.invalidateQueries({queryKey:Te({path:{assistant_id:e,id:R.id}})}),q.success(i(`emailManagedContent.repairStartedToast`))}catch(e){u(e,{context:`email_domain_provision`});let t=g(e,void 0,i(`emailManagedContent.repairFailedFallback`));N(t),q.error(t)}}},[e,R?.id,H,a,i]),Ne=(0,Q.useCallback)(async()=>{if(!R?.id)return;if(z){q.error(i(`emailManagedContent.removeAddressFirstToast`));return}k(!1);let t=R.subdomain;try{await Se.mutateAsync({path:{assistant_id:e,id:R.id}}),h(t),W(),q.success(i(`emailManagedContent.domainReleasedToast`))}catch(e){u(e,{context:`email_domain_release`}),q.error(i(`emailManagedContent.domainReleaseFailedToast`))}},[z,e,Se,R?.id,R?.subdomain,W,i]);if(P.isLoading)return(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(rt,{className:`h-4 w-4 animate-spin`}),i(`emailManagedContent.checkingSubscription`)]});if(me)return(0,$.jsx)(F,{tone:`info`,icon:(0,$.jsx)(ot,{className:`h-4 w-4`,"aria-hidden":!0}),title:i(`emailManagedContent.upgradeNoticeTitle`),actions:(0,$.jsx)(L,{size:`compact`,onClick:()=>c(l.plans),children:i(`emailManagedContent.upgradeButton`)}),children:i(`emailManagedContent.upgradeNoticeBody`)});let Pe=he?(0,$.jsx)(F,{tone:`warning`,title:i(`emailManagedContent.subscriptionWarningTitle`),actions:(0,$.jsx)(L,{size:`compact`,variant:`outlined`,onClick:()=>P.refetch(),children:i(`emailManagedContent.retry`)}),children:i(`emailManagedContent.subscriptionWarningBody`)}):null;return R?z?(0,$.jsxs)(`div`,{className:`space-y-4`,children:[Pe,(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.addressLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsx)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:z.address}),(0,$.jsx)(Ft,{status:V.data?.status,isLoading:V.isLoading}),(0,$.jsx)(L,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(tt,{}),onClick:()=>M(!0),disabled:Ce.isPending,"aria-label":i(`emailManagedContent.removeEmailAriaLabel`)})]}),(0,$.jsx)(s,{open:A,title:i(`emailManagedContent.removeEmailTitle`),message:(0,$.jsx)(Y,{i18nKey:`emailManagedContent.removeEmailConfirmMessage`,ns:`channels`,values:{address:z.address},components:{code:(0,$.jsx)(`code`,{className:It})}}),confirmLabel:i(`emailManagedContent.removeConfirm`),destructive:!0,onConfirm:Ae,onCancel:()=>M(!1)})]}),V.data?.status===`not_started`&&(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(F,{tone:`warning`,title:i(`emailManagedContent.repairNoticeTitle`),actions:(0,$.jsx)(L,{size:`compact`,onClick:()=>{N(null),ie(!0)},disabled:H.isPending,children:H.isPending?i(`emailManagedContent.completingSetup`):i(`emailManagedContent.completeSetup`)}),children:i(`emailManagedContent.repairNoticeBody`)}),(0,$.jsx)(s,{open:re,title:i(`emailManagedContent.repairConfirmTitle`),message:(0,$.jsx)(Y,{i18nKey:`emailManagedContent.repairConfirmMessage`,ns:`channels`,values:{domain:ve},components:{code:(0,$.jsx)(`code`,{className:It})}}),confirmLabel:i(`emailManagedContent.completeSetup`),isPending:H.isPending,error:oe,onConfirm:()=>{je()},onCancel:()=>{H.isPending||ie(!1)}})]}),B.data?.usage&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.usageSummary`,{sent:B.data.usage.sent_today,limit:B.data.usage.daily_limit,received:B.data.usage.received_today})})]}):(0,$.jsxs)(`div`,{className:`space-y-4`,children:[Pe,(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.domainLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`span`,{className:`font-mono text-body-small-default text-[var(--content-default)]`,children:[R.subdomain,`.`,r]}),(0,$.jsx)(Ft,{status:V.data?.status,isLoading:V.isLoading}),(0,$.jsx)(L,{variant:`dangerGhost`,size:`compact`,iconOnly:(0,$.jsx)(tt,{}),onClick:()=>k(!0),disabled:Se.isPending,"aria-label":i(`emailManagedContent.releaseDomainAriaLabel`)})]}),(0,$.jsx)(s,{open:O,title:i(`emailManagedContent.releaseDomainTitle`),message:(0,$.jsx)(Y,{i18nKey:`emailManagedContent.releaseDomainConfirmMessage`,ns:`channels`,values:{domain:`${R.subdomain}.${r}`},components:{code:(0,$.jsx)(`code`,{className:It})}}),confirmLabel:i(`emailManagedContent.releaseConfirm`),destructive:!0,onConfirm:Ne,onCancel:()=>k(!1)})]}),(0,$.jsxs)(`div`,{className:`space-y-1.5`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.emailAddressLabel`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,$.jsxs)(`div`,{className:`flex h-9 min-w-0 flex-1 items-center rounded-md border bg-[var(--field-bg)] text-body-medium-lighter transition-[border-color] duration-150 ${w?`border-[var(--system-negative-strong)]`:`border-[var(--field-border)] focus-within:border-[var(--border-active)]`}`,children:[(0,$.jsx)(`input`,{value:S,onChange:e=>{C(e.target.value.toLowerCase()),w&&T(null)},placeholder:i(`emailManagedContent.emailUsernamePlaceholder`),"aria-label":i(`emailManagedContent.emailUsernameAriaLabel`),"aria-invalid":!!w,className:`h-full min-w-0 flex-1 bg-transparent pl-3 pr-1 text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`}),(0,$.jsxs)(`span`,{className:`shrink-0 pr-3 font-mono text-[var(--content-secondary)]`,children:[`@`,ve]})]}),(0,$.jsx)(L,{onClick:ke,disabled:U.isPending||!S.trim(),children:U.isPending?i(`emailManagedContent.creating`):i(`emailManagedContent.create`)})]}),w&&(0,$.jsx)(`p`,{className:`text-body-small-default text-[var(--system-negative-strong)]`,children:w})]})]}):(0,$.jsxs)(`div`,{className:`space-y-3`,children:[Pe,(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:i(`emailManagedContent.subdomainLabel`)}),(0,$.jsx)(Pt,{subdomain:m,onSubdomainChange:e=>{h(e),b&&x(null)},domainSuffix:r,subdomainPlaceholder:i(`emailManagedContent.subdomainExamplePlaceholder`),error:b}),(0,$.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:i(`emailManagedContent.subdomainHint`)}),(0,$.jsx)(L,{onClick:()=>D(!0),disabled:xe.isPending||!m.trim(),children:xe.isPending?i(`emailManagedContent.registering`):i(`emailManagedContent.register`)}),(0,$.jsx)(s,{open:E,title:i(`emailManagedContent.setSubdomainTitle`),message:(0,$.jsx)(Y,{i18nKey:`emailManagedContent.setSubdomainConfirmMessage`,ns:`channels`,values:{subdomain:m.trim().toLowerCase()||i(`emailManagedContent.subdomainFallback`)},components:{code:(0,$.jsx)(`code`,{className:It})}}),confirmLabel:i(`emailManagedContent.confirm`),onConfirm:De,onCancel:()=>D(!1)})]})}function Bt(){let{t:e}=Z(`channels`),t=be(),n=_e(),{data:r}=X({...Ce(),enabled:n}),i=r?.results?.[0]?.handle,a=xt.use.emailRootDomain(),o=re(),[s,c]=(0,Q.useState)(()=>o===`gated`?`your-own`:Nt(d(B,`managed`),`managed`)),[l,f]=(0,Q.useState)(()=>{let e=d(ve,`resend`);return e===`mailgun`||e===`resend`?e:`resend`}),{platformAssistantId:p,error:m}=bt(t,o===`full`&&s===`managed`),h=p??(m?t:null),g=X({queryKey:[`byoEmailCredential`,t,l],queryFn:async()=>{let{data:e}=await S({path:{assistant_id:t},body:{service:l,field:`api_key`},throwOnError:!0});return e},enabled:s===`your-own`||o===`gated`,staleTime:6e4,retry:w,meta:{errorContext:`byo_email_credential_check`}});(0,Q.useEffect)(()=>{g.error&&u(g.error,{context:`byo_email_credential_check`,bestEffort:!0})},[g.error]);let _=g.data?.hasSecret===!0,v=(0,Q.useCallback)(e=>{c(e),y(B,e)},[]),ee=(0,Q.useCallback)(()=>{y(ve,l),q.success(e(`emailChannelSection.saveSuccessToast`))},[l,e]),b=(0,Q.useMemo)(()=>M.find(e=>e.id===l)??M[0],[l]),x=(0,$.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-[var(--border-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(it,{className:`mt-0.5 h-3.5 w-3.5 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,$.jsx)(`span`,{children:(0,$.jsx)(Y,{i18nKey:`emailChannelSection.setupInstructions`,ns:`channels`,values:{providerName:b.displayName,setupSkill:b.setupSkill},components:{code:(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`})}})}),(0,$.jsxs)(`a`,{href:b.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e(`emailChannelSection.openProvider`,{providerName:b.displayName}),(0,$.jsx)($e,{className:`h-3 w-3`})]})]})]}),te=(0,$.jsxs)(`div`,{className:`space-y-4`,children:[(0,$.jsxs)(`div`,{className:`space-y-1`,children:[(0,$.jsx)(`label`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`emailChannelSection.providerLabel`)}),(0,$.jsx)(U,{value:l,onChange:e=>{(e===`mailgun`||e===`resend`)&&f(e)},options:M.map(e=>({value:e.id,label:e.displayName}))})]}),_?(0,$.jsxs)(`div`,{className:`space-y-3`,children:[(0,$.jsxs)(`div`,{className:`flex items-center gap-2 rounded-lg border border-[var(--system-positive-subtle)] bg-[var(--surface-sunken)] p-3 text-body-small-default text-[var(--content-default)]`,children:[(0,$.jsx)(Ze,{className:`h-4 w-4 shrink-0 text-[var(--system-positive-strong)]`}),(0,$.jsx)(`span`,{children:(0,$.jsx)(Y,{i18nKey:`emailChannelSection.apiKeyConfigured`,ns:`channels`,values:{providerName:b.displayName,setupSkill:b.setupSkill},components:{code:(0,$.jsx)(`code`,{className:`rounded bg-[var(--surface-active)] px-1 py-0.5 text-[12px]`})}})})]}),(0,$.jsxs)(`a`,{href:b.docsUrl,target:`_blank`,rel:`noopener noreferrer`,className:`inline-flex items-center gap-1 text-body-small-default text-[var(--system-positive-strong)] underline hover:opacity-80`,children:[e(`emailChannelSection.openProvider`,{providerName:b.displayName}),(0,$.jsx)($e,{className:`h-3 w-3`})]})]}):x,(0,$.jsx)(`div`,{className:`flex items-center gap-2`,children:(0,$.jsx)(Ct,{onClick:ee,disabled:!1})})]});return o===`gated`?(0,$.jsx)(St,{id:`email`,title:e(`emailChannelSection.title`),subtitle:e(`emailChannelSection.subtitle`),children:te}):(0,$.jsx)(Mt,{id:`email`,title:e(`emailChannelSection.title`),subtitle:e(`emailChannelSection.subtitle`),mode:s,onModeChange:v,children:s===`managed`?(0,$.jsx)(`div`,{className:`space-y-4`,children:o===`disabled`?(0,$.jsx)(Fe,{children:e(`emailChannelSection.platformLoginNotice`)}):h===null?(0,$.jsxs)(`div`,{className:`flex items-center gap-2 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,$.jsx)(rt,{className:`h-4 w-4 animate-spin`}),e(`emailChannelSection.connecting`)]}):(0,$.jsx)(zt,{assistantId:h,assistantHandle:i,emailRootDomain:a})}):te})}function Vt({health:e}){let{Icon:t,label:n,tone:r}=H(e);return(0,$.jsx)(E,{tone:r,leftIcon:(0,$.jsx)(t,{}),children:n})}function Ht({address:e,health:t,pending:n,onDisconnect:r}){let{t:i}=Z(`channels`);return(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(Vt,{health:t}),e?(0,$.jsx)(`span`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e}):null,(0,$.jsx)(`div`,{className:`ml-auto`,children:(0,$.jsx)(L,{type:`button`,variant:`danger`,onClick:r,disabled:!r||n,children:i(n?`connectionCard.disconnecting`:`connectionCard.disconnect`)})})]})}function Ut({children:e}){let{t}=Z(`channels`);return(0,$.jsxs)(v.Root,{children:[(0,$.jsx)(v.Header,{children:(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(`img`,{src:oe(`/images/integrations/slack.svg`),alt:``,className:`size-8 rounded-lg bg-[var(--surface-sunken)] p-1`}),(0,$.jsx)(N,{as:`span`,variant:`body-medium-default`,children:t(`slackChannelCard.setupHeading`)})]})}),(0,$.jsx)(v.Body,{children:e})]})}i.map(e=>e.riskThreshold);var Wt=[`none`,`low`];function Gt(e){if(e!==void 0)return e===`none`?`none`:`low`}var Kt={none:{label:P(`none`).label,sublabel:`asks every time`,tone:`negative`,dotColor:`var(--system-negative-strong)`},low:{label:P(`low`).label,sublabel:`safe lookups`,tone:`warning`,dotColor:`var(--system-mid-strong)`},medium:{label:P(`medium`).label,sublabel:`broader lookups`,tone:`info`,dotColor:`var(--system-info-strong)`},high:{label:P(`high`).label,sublabel:`any lookup`,tone:`positive`,dotColor:`var(--system-positive-strong)`}},qt=[`trusted_contact`,`unverified_contact`,`unknown`];function Jt(e,t){let n={};for(let r of e){if(r.selector.scope!==`channel`||r.selector.adapter!==t)continue;let e=r.selector.channelExternalId;e&&(r.contactType===`trusted_contact`||!(e in n))&&(n[e]=r.threshold)}return n}function Yt(e,t,n){return n===`channels`?e.selector.scope===`adapter`&&e.selector.adapter===t:e.selector.scope===`channel_type`&&e.selector.adapter===t&&e.selector.channelType===`dm`}function Xt(e,t,n){let r;for(let i of e)Yt(i,t,n)&&(i.contactType===`trusted_contact`||r===void 0)&&(r=i.threshold);return r}var Zt=`__default__`;function Qt({color:e}){return(0,$.jsx)(`span`,{"aria-hidden":`true`,className:`h-1.5 w-1.5 shrink-0 rounded-full`,style:{backgroundColor:e}})}function $t({tier:e,defaultTier:t,disabled:n,onTierChange:r,onReset:i,"aria-label":a}){let{t:o}=Z(`channels`),s=Gt(e??t??void 0),c=Gt(t??void 0)??null,l=Wt.map(e=>({value:e,label:Kt[e].label,icon:(0,$.jsx)(Qt,{color:Kt[e].dotColor}),suffix:e===c?(0,$.jsx)(`span`,{className:`text-[color:var(--content-tertiary)]`,children:o(`tierPicker.defaultSuffix`)}):void 0,tooltip:Kt[e].sublabel}));return l.unshift({value:Zt,label:`Default`,icon:(0,$.jsx)(Qt,{color:`transparent`}),tooltip:`follows the default level`}),(0,$.jsx)(U,{value:s??``,onChange:e=>{e===Zt||e===c?i():r(e)},options:l,placeholder:o(`tierPicker.defaultPlaceholder`),disabled:n,size:`compact`,menuAlign:`end`,"aria-label":a})}function en(e){return e.type===`dm`?`dm`:e.isPrivate?`private`:`public`}function tn(e){return e.filter(e=>en(e)!==`dm`)}function nn(e,t,n){let r=t.trim().toLowerCase();return e.filter(e=>(n===null||en(e)===n)&&(r===``||e.name.toLowerCase().includes(r))).sort((e,t)=>e.name.localeCompare(t.name))}function rn(e){let t={public:0,private:0,dm:0};for(let n of e)t[en(n)]+=1;return t}function an(e){return e.memberCount==null?null:e.memberCount===1?`1 member`:`${e.memberCount} members`}var on=[{value:null,labelKey:`slackChannelList.filterAll`},{value:`public`,labelKey:`slackChannelList.filterPublic`},{value:`private`,labelKey:`slackChannelList.filterPrivate`}],sn={public:at,private:qe},cn=100,ln=new Set;function un({assistantDisplayName:e,slackHandle:t,channels:n,loading:r=!1,error:i=!1,tierOverrides:a,defaultTier:o=null,accessControlsSupported:s=!0,tierOverridesLoading:c=!1,tierOverridesError:l=!1,pendingChannelIds:u=ln,onTierChange:d,onTierReset:f}){let{t:p}=Z(`channels`),[m,h]=(0,Q.useState)(``),[g,_]=(0,Q.useState)(null),v=(0,Q.useMemo)(()=>tn(n??[]),[n]),y=(0,Q.useMemo)(()=>nn(v,m,g),[v,m,g]),ee=(0,Q.useMemo)(()=>rn(v),[v]);return(0,$.jsxs)(`div`,{className:`flex flex-col gap-3 p-4`,children:[(0,$.jsx)(N,{as:`p`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:(0,$.jsx)(Y,{i18nKey:`slackChannelList.presenceHint`,ns:`channels`,values:{handle:t??`@${e}`,assistant:e},components:{invite:(0,$.jsx)(`code`,{className:`text-[color:var(--content-secondary)]`}),remove:(0,$.jsx)(`code`,{className:`text-[color:var(--content-secondary)]`})}})}),r?(0,$.jsx)(N,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:p(`slackChannelList.loading`)}):i?(0,$.jsx)(N,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-negative)]`,children:p(`slackChannelList.loadFailed`)}):v.length===0?(0,$.jsx)(Ot,{icon:(0,$.jsx)(at,{className:`h-6 w-6`}),title:p(`slackChannelList.emptyTitle`)}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-3`,children:[(0,$.jsx)(`div`,{className:`min-w-56 flex-1`,children:(0,$.jsx)(O,{type:`search`,value:m,onChange:e=>h(e.target.value),placeholder:p(`slackChannelList.searchPlaceholder`),"aria-label":p(`slackChannelList.searchAria`),leftIcon:(0,$.jsx)(et,{className:`h-4 w-4`}),fullWidth:!0})}),(0,$.jsx)(`div`,{className:`flex items-center gap-2`,role:`group`,"aria-label":p(`slackChannelList.filterGroupAria`),children:on.map(({value:e,labelKey:t})=>{let n=g===e,r=e===null?v.length:ee[e];return(0,$.jsx)(`button`,{type:`button`,"aria-pressed":n,onClick:()=>_(e),className:De(`inline-flex h-6 items-center rounded-full px-2.5 text-body-small-emphasised leading-none transition-colors`,n?`bg-[var(--content-default)] text-[var(--surface-base)]`:`bg-[var(--tag-bg-neutral)] text-[color:var(--content-secondary)] hover:text-[color:var(--content-default)]`),children:p(t,{count:r})},e??`all`)})})]}),y.length===0?(0,$.jsx)(N,{as:`span`,variant:`body-small-lighter`,className:`py-4 text-center text-[color:var(--content-tertiary)]`,children:p(`slackChannelList.noMatches`)}):y.length>cn?(0,$.jsx)(`div`,{className:`h-96`,children:(0,$.jsx)(je,{items:y,computeItemKey:(e,t)=>t.id,itemContent:(e,t)=>(0,$.jsx)(dn,{channel:t,pending:u.has(t.id),overridesLoading:c,overridesError:l,defaultTier:o,accessControls:s,tierOverride:a?.[t.id],onTierChange:e=>d?.(t.id,e),onReset:()=>f?.(t.id)}),className:`h-full`})}):(0,$.jsx)(`div`,{className:`max-h-96 overflow-y-auto`,children:y.map(e=>(0,$.jsx)(dn,{channel:e,pending:u.has(e.id),overridesLoading:c,overridesError:l,defaultTier:o,accessControls:s,tierOverride:a?.[e.id],onTierChange:t=>d?.(e.id,t),onReset:()=>f?.(e.id)},e.id))})]})]})}function dn({channel:e,pending:t,overridesLoading:n,overridesError:r,defaultTier:i,accessControls:a,tierOverride:o,onTierChange:s,onReset:c}){let{t:l}=Z(`channels`),u=en(e);if(u===`dm`)return null;let d=sn[u],f=an(e),p=`[&+&]:border-t [&+&]:border-[var(--border-base)]`;return a?(0,$.jsx)(ke,{className:p,leading:(0,$.jsx)(d,{className:`h-4 w-4 text-[var(--content-tertiary)]`}),title:e.name,subtitle:f??void 0,trailing:(0,$.jsx)(`div`,{className:`w-40 sm:w-48`,children:(0,$.jsx)($t,{tier:o,defaultTier:i,disabled:t||n||r,onTierChange:s,onReset:c,"aria-label":l(`slackChannelList.accessAria`,{channel:e.name})})})}):(0,$.jsx)(ke,{className:p,leading:(0,$.jsx)(d,{className:`h-4 w-4 text-[var(--content-tertiary)]`}),title:e.name,trailing:f==null?void 0:(0,$.jsx)(`span`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:f})})}function fn(e){return e===`none`?`Asks before every action, even a web search.`:`Asks before anything beyond looking things up and saving files in its own workspace.`}function pn({defaultTier:e}){let{t}=Z(`channels`),n=Gt(e??void 0)??null;return(0,$.jsx)(`div`,{className:`flex flex-col gap-2 px-4 py-3`,children:(0,$.jsx)(`ul`,{className:`grid gap-x-6 gap-y-3 sm:grid-cols-2`,children:[...Wt].reverse().map(e=>{let r=Kt[e];return(0,$.jsxs)(`li`,{className:`flex flex-col gap-0.5`,children:[(0,$.jsxs)(`span`,{className:`flex items-center gap-1.5`,children:[(0,$.jsx)(Qt,{color:r.dotColor}),(0,$.jsx)(N,{as:`span`,variant:`body-small-emphasised`,children:r.label}),e===n?(0,$.jsx)(N,{as:`span`,variant:`body-small-default`,className:`text-[color:var(--content-tertiary)]`,children:t(`slackChannelTierLegend.defaultMarker`)}):null]}),(0,$.jsx)(N,{as:`span`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:fn(e)})]},e)})})})}var mn=[{bucket:`channels`,icon:at,title:`Channels`,description:`Public and private channels`},{bucket:`dm`,icon:Qe,title:`Direct messages`,description:`One-on-one DMs`}];function hn({assistantName:e,globalDefaultTier:t,bucketTiers:n,loading:r,error:i,pendingBuckets:a,onBucketChange:o,onBucketReset:s}){let{t:c}=Z(`channels`);return(0,$.jsxs)(v.Root,{children:[(0,$.jsx)(v.Header,{children:(0,$.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[c(`slackChannelTypeDefaults.heading`),(0,$.jsx)(N,{as:`p`,variant:`body-small-lighter`,className:`text-[color:var(--content-tertiary)]`,children:(0,$.jsx)(Y,{i18nKey:`slackChannelTypeDefaults.subtitle`,ns:`channels`,values:{assistant:e},components:{trustRules:(0,$.jsx)(Ue,{to:l.settings.privacy,className:`text-[var(--content-link)] underline hover:text-[var(--content-link-hover)]`})}})})]})}),(0,$.jsx)(v.Body,{className:`py-1`,children:mn.map(({bucket:e,icon:l,title:u,description:d})=>{let f=e===`dm`?n?.channels??t:t;return(0,$.jsx)(ke,{className:`[&+&]:border-t [&+&]:border-[var(--border-base)]`,leading:(0,$.jsx)(l,{className:`h-4 w-4 text-[var(--content-tertiary)]`}),title:u,subtitle:d,trailing:(0,$.jsx)(`div`,{className:`w-40 sm:w-48`,children:(0,$.jsx)($t,{tier:n?.[e],defaultTier:f,disabled:r||i||a.has(e),onTierChange:t=>o(e,t),onReset:()=>s(e),"aria-label":c(`slackChannelTypeDefaults.bucketAria`,{bucket:u})})})},e)})}),(0,$.jsx)(v.Footer,{className:`p-0`,children:(0,$.jsx)(pn,{defaultTier:t})})]})}var gn=`0.11.0`;function _n(){return he(gn)}var vn=new Set([404,501]);function yn(e){let t=K(e);return t!==void 0&&vn.has(t)}function bn(e,t,n){return qt.map(r=>({selector:{scope:`channel`,adapter:e,channelExternalId:t},contactType:r,threshold:n}))}function xn(e,t,n){return e.selector.scope===`channel`&&e.selector.adapter===t&&e.selector.channelExternalId===n}function Sn(e,t){return t===`channels`?{scope:`adapter`,adapter:e}:{scope:`channel_type`,adapter:e,channelType:`dm`}}function Cn(e,t,n){let r=Sn(e,t);return qt.map(e=>({selector:r,contactType:e,threshold:n}))}function wn({assistantId:e,adapter:t}){let n=Re(),r=_n()&&!!e,i=(0,Q.useMemo)(()=>({path:{assistant_id:e}}),[e]),a=(0,Q.useMemo)(()=>k(i),[i]),o=(0,Q.useMemo)(()=>[`channel-permission-resolve`,e,t],[e,t]),s=X({...pe(i),enabled:r}),c=s.data?.cells,l=(0,Q.useMemo)(()=>c?Jt(c,t):void 0,[c,t]),u=(0,Q.useMemo)(()=>c?{channels:Xt(c,t,`channels`),dm:Xt(c,t,`dm`)}:void 0,[c,t]),d=X({queryKey:o,queryFn:async()=>{let{data:e}=await R({...i,body:{adapter:t,contactType:`trusted_contact`},throwOnError:!0});return e.resolved?.threshold??null},enabled:r,retry:!1,staleTime:3e4}),f=(e,t)=>{let r=n.getQueryData(a),i=Date.now();return n.setQueryData(a,n=>({cells:[...(n?.cells??[]).filter(t=>!e(t)),...t.map(e=>({...e,updatedAt:i}))]})),{previous:r}},p=J({mutationFn:async({channelExternalId:e,tier:n})=>{await Promise.all(bn(t,e,n).map(e=>Ae({...i,body:e,throwOnError:!0})))},onMutate:({channelExternalId:e,tier:n})=>f(n=>xn(n,t,e),bn(t,e,n)),onError:(e,t,r)=>{n.setQueryData(a,r?.previous),ft(`Failed to save channel settings`)(e)},onSettled:()=>n.invalidateQueries({queryKey:a})}),m=J({mutationFn:async({channelExternalId:e})=>{await Promise.all(qt.map(n=>we({...i,body:{selector:{scope:`channel`,adapter:t,channelExternalId:e},contactType:n},throwOnError:!0})))},onMutate:({channelExternalId:e})=>f(n=>xn(n,t,e),[]),onError:(e,t,r)=>{n.setQueryData(a,r?.previous),ft(`Failed to reset channel settings`)(e)},onSettled:()=>n.invalidateQueries({queryKey:a})}),h=J({mutationFn:async({bucket:e,tier:n})=>{await Promise.all(Cn(t,e,n).map(e=>Ae({...i,body:e,throwOnError:!0})))},onMutate:({bucket:e,tier:n})=>f(n=>Yt(n,t,e),Cn(t,e,n)),onError:(e,t,r)=>{n.setQueryData(a,r?.previous),ft(`Failed to save the default`)(e)},onSettled:(e,t,{bucket:r})=>{n.invalidateQueries({queryKey:a}),r===`channels`&&n.invalidateQueries({queryKey:o})}}),g=J({mutationFn:async({bucket:e})=>{let n=Sn(t,e);await Promise.all(qt.map(e=>we({...i,body:{selector:n,contactType:e},throwOnError:!0})))},onMutate:({bucket:e})=>f(n=>Yt(n,t,e),[]),onError:(e,t,r)=>{n.setQueryData(a,r?.previous),ft(`Failed to reset the default`)(e)},onSettled:(e,t,{bucket:r})=>{n.invalidateQueries({queryKey:a}),r===`channels`&&n.invalidateQueries({queryKey:o})}}),_=(0,Q.useMemo)(()=>{let e=new Set;return p.isPending&&p.variables&&e.add(p.variables.channelExternalId),m.isPending&&m.variables&&e.add(m.variables.channelExternalId),e},[p.isPending,p.variables,m.isPending,m.variables]),v=(0,Q.useMemo)(()=>{let e=new Set;return h.isPending&&h.variables&&e.add(h.variables.bucket),g.isPending&&g.variables&&e.add(g.variables.bucket),e},[h.isPending,h.variables,g.isPending,g.variables]);return!r||s.isError&&yn(s.error)?{supported:!1,tierOverrides:void 0,defaultCellTier:void 0,bucketTiers:void 0,pendingChannelIds:new Set,pendingBuckets:new Set,isLoading:!1,isError:!1,onTierChange:void 0,onTierReset:void 0,onBucketChange:void 0,onBucketReset:void 0}:{supported:!0,tierOverrides:l,defaultCellTier:d.data,bucketTiers:u,pendingChannelIds:_,pendingBuckets:v,isLoading:s.isPending,isError:s.isError,onTierChange:(e,t)=>p.mutate({channelExternalId:e,tier:t}),onTierReset:e=>{l?.[e]!==void 0&&m.mutate({channelExternalId:e})},onBucketChange:(e,t)=>h.mutate({bucket:e,tier:t}),onBucketReset:e=>{u?.[e]!==void 0&&g.mutate({bucket:e})}}}function Tn({assistantId:e,assistantDisplayName:t,slackHandle:n}){let{t:r}=Z(`channels`),i=X({...a(e),enabled:!!e,select:e=>e.channels}),o=wn({assistantId:e,adapter:`slack`}),s=X({queryKey:[`thresholds`,e],queryFn:()=>h(e),enabled:o.supported&&!!e,staleTime:3e4}).data?.interactive??null,c=o.defaultCellTier===void 0?null:o.defaultCellTier??s,l=(0,$.jsx)(un,{assistantDisplayName:t,slackHandle:n,accessControlsSupported:o.supported,defaultTier:c,channels:i.data,loading:i.isPending,error:i.isError,tierOverrides:o.tierOverrides,tierOverridesLoading:o.isLoading,tierOverridesError:o.isError,pendingChannelIds:o.pendingChannelIds,onTierChange:o.onTierChange,onTierReset:o.onTierReset});return!o.supported||!o.onBucketChange||!o.onBucketReset?(0,$.jsx)(v.Root,{noPadding:!0,clipContents:!0,children:l}):(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[o.isError?(0,$.jsx)(F,{tone:`error`,children:r(`slackChannelSection.overridesLoadFailed`)}):null,(0,$.jsx)(hn,{assistantName:t,globalDefaultTier:s,bucketTiers:o.bucketTiers,loading:o.isLoading,error:o.isError,pendingBuckets:o.pendingBuckets,onBucketChange:o.onBucketChange,onBucketReset:o.onBucketReset}),(0,$.jsx)(v.Root,{noPadding:!0,clipContents:!0,children:(0,$.jsx)(W.Root,{type:`single`,collapsible:!0,children:(0,$.jsxs)(W.Item,{value:`per-channel-overrides`,children:[(0,$.jsxs)(W.Trigger,{className:`group justify-between gap-2 px-4 py-3`,children:[(0,$.jsx)(N,{as:`span`,variant:`body-small-emphasised`,children:r(`slackChannelSection.perChannelOverrides`)}),(0,$.jsx)(Ye,{"aria-hidden":`true`,className:`h-4 w-4 shrink-0 text-[var(--content-tertiary)] transition-transform group-data-[state=open]:rotate-180`})]}),(0,$.jsx)(W.Content,{className:`border-[var(--border-base)] data-[state=open]:border-t`,children:l})]})})})]})}function En({slackHandle:e,health:t,disconnectPending:n=!1,onDisconnect:r,children:i}){let{t:a}=Z(`channels`);return(0,$.jsxs)(v.Root,{children:[(0,$.jsx)(v.Header,{children:(0,$.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,$.jsx)(`img`,{src:oe(`/images/integrations/slack.svg`),alt:``,className:`size-8 rounded-lg bg-[var(--surface-sunken)] p-1`}),e?(0,$.jsx)(N,{as:`span`,variant:`body-medium-default`,children:e}):null,(0,$.jsx)(Vt,{health:t}),(0,$.jsx)(`div`,{className:`ml-auto`,children:(0,$.jsx)(L,{type:`button`,variant:`ghost`,onClick:r,disabled:!r||n,children:a(n?`connectionCard.disconnecting`:`connectionCard.disconnect`)})})]})}),(0,$.jsx)(v.Body,{children:i})]})}function Dn({threadMode:e,threadModePending:t=!1,onThreadModeChange:n}){let{t:i}=Z(`channels`);return(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsx)(N,{as:`span`,variant:`body-small-emphasised`,className:`text-[color:var(--content-secondary)]`,children:i(`slackThreadBehavior.heading`)}),(0,$.jsxs)(Se,{value:e??`mention_then_thread`,onValueChange:e=>n?.(e),disabled:t||!n,"aria-label":i(`slackThreadBehavior.selectAria`),children:[(0,$.jsx)(r,{value:`mention_only`,label:i(`slackThreadBehavior.mentionsOnly`),helperText:i(`slackThreadBehavior.mentionsOnlyHelp`)}),(0,$.jsx)(r,{value:`mention_then_thread`,label:i(`slackThreadBehavior.followThreads`),helperText:i(`slackThreadBehavior.followThreadsHelp`)})]})]})}function On({onSave:e}){let{t}=Z(`channels`),[n,r]=(0,Q.useState)(``),[i,a]=(0,Q.useState)(``),[o,s]=(0,Q.useState)(!1),[c,l]=(0,Q.useState)(null),u=n.trim().length>0&&i.trim().length>0&&!o;return(0,$.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[(0,$.jsx)(O,{label:t(`twilioCredentialEntry.accountSid`),type:`text`,value:n,onChange:e=>r(e.target.value),placeholder:`ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx`,disabled:o,fullWidth:!0}),(0,$.jsx)(O,{label:t(`twilioCredentialEntry.authToken`),type:`password`,value:i,onChange:e=>a(e.target.value),placeholder:t(`twilioCredentialEntry.authTokenPlaceholder`),disabled:o,fullWidth:!0}),c?(0,$.jsx)(`p`,{className:`text-label-small-default`,style:{color:`var(--content-negative)`},children:c}):null,(0,$.jsx)(`div`,{children:(0,$.jsx)(L,{type:`button`,onClick:async()=>{if(!(!e||!u)){s(!0),l(null);try{await e(n.trim(),i.trim()),r(``),a(``)}catch(e){l(e instanceof Error?e.message:`Failed to save`)}finally{s(!1)}}},disabled:!u,children:t(o?`twilioCredentialEntry.saving`:`twilioCredentialEntry.save`)})})]})}function kn({channel:e,assistantId:t,assistantName:r,assistantDisplayName:i,pending:a,initialManualEntry:o=!1,onSetup:s,onDisconnect:l,onSaveTelegramToken:u,telegramSaveStatus:d,telegramSaveError:f,onSaveDiscordToken:p,discordSaveStatus:m,discordSaveError:h=null,discordInviteUrl:g,onSaveSlackConfig:_,slackSaveStatus:v,slackSaveError:y,slackThreadMode:ee,slackThreadModePending:b=!1,onSlackThreadModeChange:x,onSaveTwilioCredentials:te,policy:S,policySaving:C=!1,policyLoading:w=!1,policyError:T=!1,onPolicyChange:E}){let{t:D}=Z(`channels`),O=e.status===`incomplete`,[ne,k]=(0,Q.useState)(o),A=e.key===`discord`&&ne&&m===`success`,j=e.configured&&!A;if(e.key===`email`)return(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,$.jsx)(Bt,{}),j&&E?(0,$.jsx)(st,{children:(0,$.jsx)(At,{assistantDisplayName:i,policy:S,saving:C,loading:w,error:T,onChange:E})}):null]});if(e.key===`slack`)return(0,$.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[j?(0,$.jsx)(En,{slackHandle:e.address,health:e.health,disconnectPending:a,onDisconnect:l,children:(0,$.jsx)(Dn,{threadMode:ee,threadModePending:b,onThreadModeChange:x})}):(0,$.jsx)(Ut,{children:(0,$.jsx)(c,{assistantId:t,assistantName:r,onSave:_,saveStatus:v,saveError:y})}),j?(0,$.jsx)(Tn,{assistantId:t,assistantDisplayName:i,slackHandle:e.address}):null]});let M=n[e.key];return(0,$.jsx)(`div`,{className:`flex flex-col gap-4`,children:j?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(Ht,{health:e.health,address:e.address,pending:a,onDisconnect:l}),M.hasTrustFloorControl&&E?(0,$.jsx)(At,{assistantDisplayName:i,policy:S,saving:C,loading:w,error:T,onChange:E}):null]}):ne&&e.canManualEntry&&M.credentialForm?(e=>{switch(e){case`slack-wizard`:return null;case`telegram-token`:return(0,$.jsx)(Le,{assistantId:t,assistantName:r,saveStatus:d,saveError:f,onSave:u});case`discord-token`:return(0,$.jsx)(ie,{assistantId:t,assistantName:r,saveStatus:m,saveError:h,onSave:p,...g?{inviteUrl:g}:{}});case`twilio-credentials`:return(0,$.jsx)(On,{onSave:te});default:return e}})(M.credentialForm):(0,$.jsx)(Ot,{icon:(0,$.jsx)(Pe,{channelId:e.key,className:`h-6 w-6`}),title:D(O?`channelPanel.incompleteTitle`:`channelPanel.disconnectedTitle`,{channel:G(e.key)}),description:O?e.warning??D(`channelPanel.incompleteDescription`,{channel:G(e.key)}):M.disconnectedPitchKey?D(M.disconnectedPitchKey,{assistant:i}):void 0,action:(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-1`,children:[(0,$.jsx)(L,{type:`button`,variant:`outlined`,onClick:s,disabled:!s||a,children:D(a?`channelPanel.opening`:O?`channelPanel.finishSetup`:`channelPanel.setUp`)}),e.canManualEntry&&M.credentialForm?(0,$.jsx)(L,{type:`button`,variant:`link`,onClick:()=>k(!0),children:D(`channelPanel.connectManually`)}):null]})})})}var An=new Set([404,501]),jn=new Set([401,403]);function Mn(e){let t=K(e);return t!==void 0&&An.has(t)?`unsupported`:t!==void 0&&jn.has(t)?`forbidden`:`unreadable`}function Nn(e,t,n){let r=e===`unreadable`?t:n;return r?r instanceof Error&&r.message?r.message:`Something went wrong`:null}function Pn(e,t){let n=Re(),r={assistant_id:e},i=X({...b({path:r}),enabled:!!e,retry:x}),a=()=>n.invalidateQueries({queryKey:de({path:r})}),o=J({...Ee(),onSuccess:a}),s=J({...le(),onSuccess:a}),c=i.data?.sources?.find(e=>e.source===t),l;l=i.isError?Mn(i.error):i.isPending?`loading`:c?c.state:`none`;let u=Nn(l,i.error,o.error??s.error);return{status:l,paths:c?.routes?.map(e=>({path:e.publicPath,approvalGoverned:e.signer!==`vellum`,deliversInbound:e.deliversInbound===!0}))??[],deciding:o.isPending||s.isPending,approve:()=>{c?.digest&&o.mutate({path:{...r,source:t},body:{digest:c.digest}})},revoke:()=>s.mutate({path:{...r,source:t}}),error:u}}var Fn=`plugin`;function In(e){let t=Re(),n=dt(),r=(0,Q.useMemo)(()=>({path:{assistant_id:e}}),[e]),i=(0,Q.useMemo)(()=>C(r),[r]),a=X({...p(r),enabled:n&&!!e,select:_t}),o=J({mutationFn:t=>ht(e,Fn,t),onSuccess:()=>t.invalidateQueries({queryKey:i}),onError:ft(`Failed to save channel policy`)}),s=(0,Q.useCallback)(e=>{o.mutate(e)},[o]);return n?{policy:a.data?.find(e=>e.channelType===Fn)?.policy,isLoading:a.isPending,isError:a.isError,isSaving:o.isPending,onChange:s}:{policy:void 0,isLoading:!1,isError:!1,isSaving:!1,onChange:void 0}}function Ln({channel:e,assistantId:t,assistantDisplayName:n}){let{t:r}=Z(`channels`),i=Ve(),a=Pn(t,e.plugin),o=In(t);return(0,$.jsxs)(`div`,{className:`relative flex flex-col items-center gap-3 py-10 text-center`,children:[(0,$.jsx)(L,{className:`absolute top-0 right-0`,variant:`ghost`,size:`compact`,iconOnly:(0,$.jsx)(Xe,{}),tooltip:r(`pluginChannelPanel.navigateToPluginPage`),"aria-label":r(`pluginChannelPanel.navigateToPluginPage`),onClick:()=>i(`/assistant/plugins/${e.plugin}`)}),(0,$.jsx)(z,{icon:e.icon,className:`h-8 w-8 text-[color:var(--content-secondary)]`}),(0,$.jsx)(`h3`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:e.label}),e.description?(0,$.jsx)(`p`,{className:`max-w-[420px] text-body-medium-default`,style:{color:`var(--content-secondary)`},children:e.description}):null,(0,$.jsx)(Rn,{channel:e,ingress:a}),o.onChange?(0,$.jsx)(`div`,{className:`w-full max-w-[420px] text-left`,children:(0,$.jsx)(At,{assistantDisplayName:n,policy:o.policy,saving:o.isSaving,loading:o.isLoading,error:o.isError,onChange:o.onChange})}):null]})}function Rn({channel:e,ingress:t}){let{t:n}=Z(`channels`);switch(t.status){case`loading`:return(0,$.jsx)(Bn,{children:n(`pluginChannelPanel.ingressLoading`,{channel:e.label})});case`unsupported`:return(0,$.jsx)(Bn,{children:n(`pluginChannelPanel.ingressUnsupported`)});case`forbidden`:return(0,$.jsx)(Bn,{children:n(`pluginChannelPanel.ingressForbidden`)});case`unreadable`:return(0,$.jsxs)(Bn,{children:[n(`pluginChannelPanel.ingressUnreadable`,{channel:e.label}),t.error?` ${t.error}`:``]});case`none`:return(0,$.jsx)(Bn,{children:n(`pluginChannelPanel.ingressNone`,{channel:e.label})});case`pending`:case`approved`:return(0,$.jsx)(zn,{ingress:t})}}function zn({ingress:e}){let{t}=Z(`channels`),n=e.status===`approved`;return(0,$.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,$.jsx)(E,{tone:n?`positive`:`neutral`,children:t(n?`pluginChannelPanel.ingressApprovedTag`:`pluginChannelPanel.ingressPendingTag`)}),(0,$.jsxs)(`div`,{className:`flex items-center gap-1.5`,children:[(0,$.jsx)(L,{onClick:n?e.revoke:e.approve,disabled:e.deciding,variant:n?`outlined`:`primary`,children:t(n?`pluginChannelPanel.revokeChannel`:`pluginChannelPanel.approveChannel`)}),(0,$.jsx)(m,{content:t(`pluginChannelPanel.approveChannelInfo`),children:(0,$.jsx)(`span`,{tabIndex:0,className:`inline-flex cursor-default p-0.5 text-[color:var(--content-secondary)]`,"aria-label":t(`pluginChannelPanel.approveChannelInfo`),children:(0,$.jsx)(it,{className:`h-4 w-4`,"aria-hidden":`true`})})})]}),e.error?(0,$.jsx)(`p`,{className:`max-w-[420px] text-body-small-default`,style:{color:`var(--system-negative-strong)`},children:e.error}):null]})}function Bn({children:e}){return(0,$.jsx)(`p`,{className:`max-w-[420px] text-body-small-default`,style:{color:`var(--content-secondary)`},children:e})}function Vn({assistantId:e,assistantName:t,channels:r,pluginChannels:i=[],pendingChannelKey:a=null,slackThreadMode:o,slackThreadModePending:c=!1,channelPolicies:l,policySavingKey:u=null,policiesLoading:d=!1,policiesError:f=!1,onChannelPolicyChange:p,onSetup:m,onDisconnect:h,onSaveTelegramToken:g,telegramSaveStatus:_,onSaveDiscordToken:v,discordSaveStatus:y,discordSaveError:ee=null,discordInviteUrl:b,telegramSaveError:x,onSaveSlackConfig:te,slackSaveStatus:S,slackSaveError:C,onSlackThreadModeChange:w,onSaveTwilioCredentials:E,initialChannel:D=null}){let{t:O}=Z(`channels`),{selected:ne,select:k}=wt(),[A,j]=(0,Q.useState)(null),{paneRef:M,hasRoomForList:re,drawerOpen:ie,openDrawer:ae,closeDrawer:oe}=ut(),[N]=(0,Q.useState)(D);(0,Q.useEffect)(()=>{N&&k(N)},[N,k]);let P=T(t),F=A?n[A]:null,se=e=>{k(e),oe()},I=i.find(e=>e.key===ne),L=I?void 0:r.find(e=>e.key===ne)??r[0];if(!L&&!I)return null;let ce=I?I.key:L.key,le=I?(0,$.jsx)(Ln,{channel:I,assistantId:e,assistantDisplayName:P},I.key):(0,$.jsx)(kn,{channel:L,assistantId:e,assistantName:t,assistantDisplayName:P,pending:a===L.key,initialManualEntry:N===L.key,onSetup:m?()=>m(L.key,L.status===`incomplete`):void 0,onDisconnect:h&&L.canDisconnect?()=>j(L.key):void 0,onSaveTelegramToken:g,telegramSaveStatus:_,onSaveDiscordToken:v,discordSaveStatus:y,discordSaveError:ee,...b?{discordInviteUrl:b}:{},telegramSaveError:x,onSaveSlackConfig:te,slackSaveStatus:S,slackSaveError:C,slackThreadMode:o,slackThreadModePending:c,onSlackThreadModeChange:w,onSaveTwilioCredentials:E,policy:l?.[L.key],policySaving:u===L.key,policyLoading:d,policyError:f,onPolicyChange:p?e=>p(L.key,e):void 0},L.key);return(0,$.jsxs)($.Fragment,{children:[(0,$.jsxs)(`div`,{ref:M,className:`flex min-h-0 flex-1 overflow-hidden ${re?`flex-row gap-6`:`flex-col gap-4`}`,children:[re?(0,$.jsx)(`aside`,{className:`min-h-0 w-[320px] shrink-0 overflow-y-auto self-stretch`,children:(0,$.jsx)(Tt,{channels:r,pluginChannels:i,selectedKey:ce,onSelect:se})}):(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`div`,{className:`flex items-center`,children:(0,$.jsx)(lt,{onClick:ae})}),(0,$.jsx)(ct,{open:ie,onClose:oe,title:O(`assistantChannelsList.drawerTitle`),children:(0,$.jsx)(Tt,{channels:r,pluginChannels:i,selectedKey:ce,onSelect:se})})]}),(0,$.jsx)(`section`,{className:`min-h-0 min-w-0 flex-1 overflow-y-auto`,children:ce===`slack`||ce===`email`?le:(0,$.jsx)(st,{children:le})})]}),(0,$.jsx)(s,{open:A!==null,title:O(`assistantChannelsList.disconnectTitle`,{channel:F?O(F.labelKey):``}),message:F?.disconnectMessageKey?O(F.disconnectMessageKey):``,confirmLabel:O(`assistantChannelsList.disconnectConfirm`),destructive:!0,onConfirm:()=>{A&&h&&h(A),j(null)},onCancel:()=>j(null)})]})}var Hn=`plugin:`;function Un(e){let{data:t}=X({...ge({path:{assistant_id:e}}),enabled:!!e,select:e=>e.channels.filter(e=>e.source?.startsWith(Hn)).map(e=>({plugin:e.id,key:A(e.id),label:e.label,description:e.subtitle,icon:e.icon}))});return t??[]}function Wn(){let[e,t]=ze(),n=e.get(`setup`),r=n&&me(n)?n:null;return(0,Q.useEffect)(()=>{r&&t(e=>(e.delete(`setup`),e),{replace:!0})},[r,t]),r}function Gn({assistantId:e,onStartSetupConversation:t}){let n=xe.use.a2aChannel(),r=Ne.use.name(),i=Wn(),a=vt(e),o=T(r),s=mt({assistantId:e,onStartSetupConversation:t});return(0,$.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-6 overflow-hidden`,children:[(0,$.jsx)(Vn,{assistantId:e,assistantName:o,initialChannel:i,pluginChannels:Un(e),...s}),n?(0,$.jsx)(gt,{onClick:a.open}):null,(0,$.jsx)(pt,{open:a.isOpen,assistantId:e,onClose:a.close})]})}function Kn(){let e=Ve(),t=be();return(0,$.jsx)(Gn,{assistantId:t,onStartSetupConversation:t=>{V(e,{prompt:t})}},t)}export{Kn as ChannelsPageRoute};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{At as t,Cn as n,Ei as r,Gi as i,Gp as a,Jn as o,Jp as s,Kp as c,Lt as l,Qn as u,Qt as d,Rx as f,Ux as p,Wi as m,Wx as h,Xn as g,Zn as _,_c as v,ba as y,er as ee,gx as b,jt as x,kn as S,lr as C,qx as w,si as T,wx as E}from"./app-Tg6YU_tZ.js";import{I as D,j as O}from"./vendor-DYOeoIwg.js";import{t as k,x as A}from"./react-B9IgSVeK.js";import{Bt as j,Fa as M,Gi as te,Qr as N,Vt as P,Xr as F,k as I,ni as L,qn as R,rr as ne}from"./icons-QG1KAFmx.js";import{n as z,r as re,t as B}from"./use-app-delete-C6E5CTp4.js";var V=e(A(),1),H=k();function U({children:e}){return(0,H.jsx)(`span`,{"data-reveal":``,className:`absolute right-1 top-1 rounded-md bg-[var(--surface-lift)]`,children:e})}function W({title:e,children:t}){return(0,H.jsxs)(b.Root,{children:[(0,H.jsx)(b.Trigger,{asChild:!0,children:(0,H.jsx)(h,{variant:`ghost`,size:`compact`,expandOnMobile:!1,iconOnly:(0,H.jsx)(N,{}),"aria-label":e})}),(0,H.jsx)(b.Content,{title:e,children:t})]})}var ie=({assistantId:e,app:t,onRequestDelete:n})=>{let{togglePin:r,pinnedAppIds:i}=T(e),a=i.has(t.id),o=z(e,t,{exported:D(`chat:appAssetActions.appExported`),failed:D(`chat:appAssetActions.shareFailed`)});return(0,H.jsxs)(W,{title:D(`chat:conversationAssetActions.optionsFor`,{name:t.name}),children:[(0,H.jsx)(b.Item,{icon:a?P:j,label:D(a?`chat:conversationAssetActions.unpin`:`chat:conversationAssetActions.pin`),onSelect:()=>r(t.id)}),(0,H.jsx)(b.Item,{icon:M,label:D(`chat:conversationAssetActions.share`),description:D(`chat:conversationAssetActions.exportAsVellum`),onSelect:()=>void o()}),(0,H.jsx)(b.Item,{icon:I,label:D(`chat:conversationAssetActions.delete`),tone:`destructive`,onSelect:()=>n(t)})]})},G=({assistantId:e,doc:t,onOpen:n})=>{let r=(0,V.useCallback)(async()=>{try{await y(e,t.surfaceId,t.title)}catch{E.error(D(`chat:documentAssetActions.pdfDownloadFailed`))}},[e,t.surfaceId,t.title]);return(0,H.jsxs)(W,{title:D(`chat:conversationAssetActions.optionsFor`,{name:t.title}),children:[(0,H.jsx)(b.Item,{icon:F,label:D(`chat:conversationAssetActions.open`),onSelect:n}),(0,H.jsx)(b.Item,{icon:L,label:D(`chat:conversationAssetActions.downloadPdf`),onSelect:()=>void r()})]})},K={width:184};function q({app:e,assistantId:t,onOpen:n,onRequestDelete:r,stretch:i=!1}){let{t:a}=O(`chat`),o=(0,V.useCallback)(()=>s(t,e.id,e.updatedAt),[t,e.id,e.updatedAt]);return(0,H.jsxs)(`div`,{"data-slot":`chat-info-app-tile`,"data-reveal-row":``,className:w(`relative flex flex-col gap-1`,i?`min-w-0 flex-1`:`shrink-0`),style:i?void 0:K,children:[(0,H.jsx)(`button`,{type:`button`,"aria-label":a(`chatInfoPanel.openAppAria`,{name:e.name}),onClick:()=>n(e.id),className:`block w-full cursor-pointer rounded-lg outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:(0,H.jsx)(d,{name:e.name,icon:e.icon,loadHtml:o})}),(0,H.jsx)(U,{children:(0,H.jsx)(ie,{assistantId:t,app:e,onRequestDelete:r})}),(0,H.jsx)(p,{variant:`body-small-default`,title:e.name,className:`truncate leading-normal text-[var(--content-tertiary)]`,children:e.name})]})}var J={width:135};function Y({file:e,assistantId:n,onOpen:r}){let{t:i}=O(`chat`),a=(0,V.useRef)(null),o=t(a)||typeof IntersectionObserver>`u`,s=e.kind===`document`?null:e.attachment,c=s?C(s.mimeType,s.filename):`document`,[u,d]=(0,V.useState)(!1),{url:f,isError:m}=S(n,s,o&&c===`image`),h=c===`video`&&s?.thumbnailUrl!=null?s.thumbnailUrl:null,g;g=e.kind===`document`?i(`chatInfoPanel.openDocumentAria`,{name:e.title}):e.kind===`frame`?i(`chatInfoPanel.previewFrameAria`):i(`chatInfoPanel.previewAttachmentAria`,{filename:e.attachment.filename});let _=e.kind===`frame`&&e.capturedAt!==null?x(e.capturedAt):e.title,v=c===`image`&&!u;return(0,H.jsxs)(`div`,{"data-slot":`chat-info-file-tile`,"data-reveal-row":``,className:`relative flex shrink-0 flex-col gap-1`,style:J,children:[(0,H.jsx)(`button`,{ref:a,type:`button`,"aria-label":g,onClick:()=>r(e),className:`block h-[84px] w-full cursor-pointer overflow-hidden rounded-lg outline-none focus-visible:ring-2 focus-visible:ring-[var(--ring)]`,children:(0,H.jsx)(l,{className:`h-full w-full rounded-lg bg-[var(--surface-base)]`,kind:c,imageUrl:v?f:null,posterUrl:h,onImageError:()=>d(!0),glyphClassName:`size-8`,placeholder:v&&!m?(0,H.jsx)(R,{className:`size-8 animate-spin text-[var(--content-tertiary)]`}):null})}),e.kind===`document`?(0,H.jsx)(U,{children:(0,H.jsx)(G,{assistantId:n,doc:e.doc,onOpen:()=>r(e)})}):null,(0,H.jsx)(p,{variant:`body-small-default`,title:_,className:`truncate leading-normal text-[var(--content-tertiary)]`,children:_})]})}function X({items:e,assistantId:t,hasMore:n,onLoadMore:r,onOpen:i}){let{t:a}=O(`chat`);return(0,H.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[e.length>0&&(0,H.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:e.map(e=>(0,H.jsx)(Y,{file:e,assistantId:t,onOpen:i},e.id))}),n&&(0,H.jsx)(h,{variant:`outlined`,onClick:r,className:`self-start`,children:a(`chatInfoPanel.loadMore`)})]})}var Z=8,ae={"--chat-info-strip-bleed":`20px`},Q={gap:Z};function oe(e,t){if(!(e>0))return 1;let n=Z;return Math.max(1,Math.floor((e+n)/(t+n)))}function $({title:e,count:t,items:n,tileWidth:i,renderTile:a,seeAllAriaLabel:o,onSeeAll:s}){let{t:c}=O(`chat`),l=(0,V.useId)(),{ref:d,size:m}=r(),g=v(),_=oe(m.w,i);return(0,H.jsxs)(`section`,{"aria-labelledby":l,className:`flex flex-col gap-3`,style:ae,children:[(0,H.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,H.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[(0,H.jsx)(p,{id:l,variant:`title-small`,className:`truncate text-[var(--content-emphasised)]`,children:e}),(0,H.jsx)(u,{className:`bg-[var(--content-disabled)]`}),(0,H.jsx)(p,{variant:`title-small`,className:`shrink-0 text-[var(--content-disabled)]`,children:t})]}),t>_&&(0,H.jsx)(h,{variant:`ghost`,size:`compact`,"aria-label":o,onClick:s,className:`h-auto shrink-0 px-0 text-title-small hover:bg-transparent [--vbtn-fg:var(--content-emphasised)]`,children:c(`chatInfoPanel.seeAll`)})]}),(0,H.jsx)(`div`,{ref:d,className:`w-full`,children:g?(0,H.jsx)(f,{orientation:`horizontal`,hideScrollBar:!0,className:`-mx-[var(--chat-info-strip-bleed)] px-[var(--chat-info-strip-bleed)]`,children:(0,H.jsx)(`div`,{className:`flex w-max`,style:Q,children:n.map(e=>a(e,`strip`))})}):(0,H.jsx)(`div`,{className:`flex w-full`,style:Q,children:n.slice(0,_).map(e=>a(e,`fitted`))})})]})}function se({category:e,title:t,count:n,items:r,seeAllAriaLabel:i,onSeeAll:a,onOpen:o,assistantId:s}){return(0,H.jsx)($,{title:t,count:n,items:r,tileWidth:135,seeAllAriaLabel:i,onSeeAll:()=>a(e),renderTile:e=>(0,H.jsx)(Y,{file:e,assistantId:s,onOpen:o},e.id)})}function ce({payload:e,onClose:t,onSelectCategory:r}){let{t:s}=O(`chat`),{assistantId:l,conversationId:u}=e,d=i(l,a.getState().closeChatInfo),{apps:f,files:p,frames:v,counts:y,count:b,status:x,hasMoreFiles:S,hasMoreFrames:C,loadMoreFiles:w,loadMoreFrames:T}=ee({assistantId:l,conversationId:u}),{previewable:E,previewIndexById:D}=(0,V.useMemo)(()=>{let e=[],t=new Map;for(let n of[...p,...v])n.kind!==`document`&&(t.set(n.id,e.length),e.push(n.attachment));return{previewable:e,previewIndexById:t}},[p,v]),{openPreview:k,previewModal:A}=n(l,E),j=B(l),M=c.use.changedDocuments()[u],N=c.use.clearConversation();(0,V.useEffect)(()=>{M!==void 0&&N(u)},[N,u,M]);let P=(0,V.useCallback)(e=>{a.getState().closeChatInfo(),m(l,e)},[l]),F=(0,V.useCallback)(e=>{if(e.kind===`document`){d(e.doc.surfaceId);return}k(e.attachment,D.get(e.id))},[d,k,D]),I={apps:s(`chatInfoPanel.appsTitle`),files:s(`chatInfoPanel.filesTitle`),frames:s(`chatInfoPanel.framesTitle`)},L={apps:f,files:p,frames:v},R=x===`ready`&&e.category!==null&&L[e.category].length===0,z=R?null:e.category;(0,V.useEffect)(()=>{R&&r(null)},[R,r]);let U=e=>{let t=L[e];return t.length===0?null:(0,H.jsx)(se,{category:e,title:I[e],count:y[e],items:t,seeAllAriaLabel:s(e===`files`?`chatInfoPanel.seeAllFilesAria`:`chatInfoPanel.seeAllFramesAria`),onSeeAll:r,onOpen:F,assistantId:l})},W;return W=z===`apps`?(0,H.jsx)(`div`,{className:`grid gap-2`,style:{gridTemplateColumns:`repeat(auto-fill, minmax(184px, 1fr))`},children:f.map(e=>(0,H.jsx)(q,{app:e,assistantId:l,stretch:!0,onOpen:P,onRequestDelete:j.requestDelete},e.id))}):z===null?(0,H.jsxs)(`div`,{className:`flex flex-col gap-8`,children:[x===`ready`&&b===0&&(0,H.jsx)(g,{children:s(`chatInfoPanel.empty`)}),f.length>0&&(0,H.jsx)($,{title:I.apps,count:y.apps,items:f,tileWidth:184,seeAllAriaLabel:s(`chatInfoPanel.seeAllAppsAria`),onSeeAll:()=>r(`apps`),renderTile:(e,t)=>(0,H.jsx)(q,{app:e,assistantId:l,stretch:t===`fitted`,onOpen:P,onRequestDelete:j.requestDelete},e.id)}),U(`files`),U(`frames`)]}):(0,H.jsx)(X,{items:L[z],assistantId:l,hasMore:z===`files`?S:C,onLoadMore:z===`files`?w:T,onOpen:F}),(0,H.jsxs)(o,{...z===null?{Glyph:ne,title:s(`chatInfoPanel.title`)}:{icon:(0,H.jsx)(h,{variant:`outlined`,iconOnly:(0,H.jsx)(te,{}),"aria-label":s(`chatInfoPanel.backAria`),tooltip:s(`chatInfoPanel.backTooltip`),onClick:()=>r(null),className:`shrink-0`}),titleNode:(0,H.jsx)(_,{title:I[z],count:y[z]})},closeLabel:s(`chatInfoPanel.closeAria`),closeTooltip:s(`chatInfoPanel.closeAria`),onClose:t,children:[x===`error`&&(0,H.jsx)(g,{children:s(`chatInfoPanel.loadFailed`)}),W,A,(0,H.jsx)(re,{app:j.pendingDelete,isDeleting:j.isDeleting,onConfirm:j.confirmDelete,onCancel:j.cancelDelete})]})}export{ce as ChatInfoPanel};
@@ -0,0 +1 @@
1
+ import{Ag as e,jv as t}from"./app-Tg6YU_tZ.js";function n(){let t=e.use.marketingPricingTakeover(),n=e.use.hydrated();return t?`enabled`:n?`disabled`:`pending`}var r=`continue`;function i(e,n){return t(e.get(r),n)}export{i as n,n as r,r as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Eh as t,Kl as n,Qm as r,Sp as i,Tb as a,Ux as o,X_ as s,bm as c,fv as l,gv as u,im as d,pv as f,rm as p}from"./app-DFXcEvsi.js";import{Jn as m,er as h,j as g}from"./vendor-DYOeoIwg.js";import{_,f as v,n as y,t as b,x}from"./react-B9IgSVeK.js";import{qn as S}from"./icons-QG1KAFmx.js";import{t as C}from"./checkout-return-target-CrM-Nhda.js";import{n as w,r as T}from"./checkout-continuation-C38t4ayV.js";var E=e(x(),1),D=b();function O(){f(),d()}function k(){let{t:e}=g(`settings`),r=v(),[d]=_(),f=d.get(`package`)??``,b=(0,E.useMemo)(()=>f?null:l(d),[f,d]),x=i(),k=c(),A=T(),j=w(d,a.plans),M=j===a.plans?e(`checkoutPage.viewPlans`):e(`checkoutPage.continueSetup`),N=h(),{mutateAsync:P}=m(n()),[F,I]=(0,E.useState)(!1),[L,R]=(0,E.useState)(!1),z=(0,E.useRef)(`idle`),B=(0,E.useCallback)(async()=>{z.current=`running`,I(!1),R(!1);let e=C();try{let t=await P({body:b?{target_plan_id:`pro`,confirm:!0,machine_tier:b.machineTier,storage_tier:b.storageTier,credit_tier:b.creditTier,return_target:e}:{target_plan_id:`pro`,package:f,confirm:!0,return_target:e}});if(z.current!==`running`)return;if(t.status===`redirect`&&t.checkout_url){z.current=`handed_off`,u(b?{kind:`custom`,machineTier:b.machineTier,storageTier:b.storageTier,creditTier:b.creditTier}:{kind:`package`,packageKey:f}),p(N),R(e===`native`),s(t.checkout_url);return}z.current=`settled`,O(),r(j===a.plans&&f?a.plansForPackage(f):j,{replace:!0})}catch{if(z.current!==`running`)return;z.current=`settled`,I(!0)}},[j,b,P,r,f,N]),V=(0,E.useCallback)(()=>{if(k===`ready`){B();return}z.current=`idle`,I(!1),R(!1),k===`unavailable`&&t.getState().fetchOrganizations()},[k,B]);return(0,E.useEffect)(()=>{if(!f&&!b||x===`disabled`||x===`gated`||A===`disabled`){if(z.current===`handed_off`)return;z.current=`settled`,O(),r(j,{replace:!0});return}if(!(A!==`enabled`||x!==`full`||z.current!==`idle`)&&k!==`resolving`){if(k===`unavailable`){z.current=`settled`,I(!0);return}B()}},[j,b,x,r,k,f,B,A]),F?(0,D.jsxs)(`div`,{className:`flex h-full w-full flex-col items-center justify-center gap-4 px-6 text-center`,children:[(0,D.jsx)(`p`,{className:`text-[var(--content-default)]`,children:e(`checkoutPage.checkoutFailedMessage`)}),(0,D.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,D.jsx)(o,{onClick:V,children:e(`checkoutPage.tryAgain`)}),(0,D.jsx)(y,{to:j,onClick:O,className:`text-sm text-[var(--content-tertiary)] underline`,children:M})]})]}):L?(0,D.jsxs)(`div`,{className:`flex h-full w-full flex-col items-center justify-center gap-4 px-6 text-center`,children:[(0,D.jsx)(`p`,{className:`text-[var(--content-default)]`,children:e(`checkoutPage.awaitingReturnMessage`)}),(0,D.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,D.jsx)(o,{onClick:V,children:e(`checkoutPage.reopenCheckout`)}),(0,D.jsx)(y,{to:j,className:`text-sm text-[var(--content-tertiary)] underline`,children:M})]})]}):(0,D.jsxs)(`div`,{className:`flex h-full w-full flex-col items-center justify-center gap-3`,children:[(0,D.jsx)(S,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`,"aria-label":e(`checkoutPage.preparingCheckoutAriaLabel`)}),(0,D.jsx)(`p`,{className:`text-sm text-[var(--content-tertiary)]`,children:e(`checkoutPage.preparingCheckout`)})]})}function A(){let e=v(),[t]=_(),n=w(t,a.settings.usageBilling);return(0,E.useEffect)(()=>{O(),e(n,{replace:!0})},[e,n]),null}function j(){return r()?(0,D.jsx)(A,{}):(0,D.jsx)(k,{})}export{j as CheckoutPage};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$m as t,Cp as n,Dh as r,Eb as i,Kl as a,Wx as o,Z_ as s,_v as c,am as l,im as u,mv as d,pv as f,xm as p}from"./app-Tg6YU_tZ.js";import{Jn as m,er as h,j as g}from"./vendor-DYOeoIwg.js";import{_,f as v,n as y,t as b,x}from"./react-B9IgSVeK.js";import{qn as S}from"./icons-QG1KAFmx.js";import{t as C}from"./checkout-return-target-BM6j8E5w.js";import{n as w,r as T}from"./checkout-continuation-ATko7N-k.js";var E=e(x(),1),D=b();function O(){d(),l()}function k(){let{t:e}=g(`settings`),t=v(),[l]=_(),d=l.get(`package`)??``,b=(0,E.useMemo)(()=>d?null:f(l),[d,l]),x=n(),k=p(),A=T(),j=w(l,i.plans),M=j===i.plans?e(`checkoutPage.viewPlans`):e(`checkoutPage.continueSetup`),N=h(),{mutateAsync:P}=m(a()),[F,I]=(0,E.useState)(!1),[L,R]=(0,E.useState)(!1),z=(0,E.useRef)(`idle`),B=(0,E.useCallback)(async()=>{z.current=`running`,I(!1),R(!1);let e=C();try{let n=await P({body:b?{target_plan_id:`pro`,confirm:!0,machine_tier:b.machineTier,storage_tier:b.storageTier,credit_tier:b.creditTier,return_target:e}:{target_plan_id:`pro`,package:d,confirm:!0,return_target:e}});if(z.current!==`running`)return;if(n.status===`redirect`&&n.checkout_url){z.current=`handed_off`,c(b?{kind:`custom`,machineTier:b.machineTier,storageTier:b.storageTier,creditTier:b.creditTier}:{kind:`package`,packageKey:d}),u(N),R(e===`native`),s(n.checkout_url);return}z.current=`settled`,O(),t(j===i.plans&&d?i.plansForPackage(d):j,{replace:!0})}catch{if(z.current!==`running`)return;z.current=`settled`,I(!0)}},[j,b,P,t,d,N]),V=(0,E.useCallback)(()=>{if(k===`ready`){B();return}z.current=`idle`,I(!1),R(!1),k===`unavailable`&&r.getState().fetchOrganizations()},[k,B]);return(0,E.useEffect)(()=>{if(!d&&!b||x===`disabled`||x===`gated`||A===`disabled`){if(z.current===`handed_off`)return;z.current=`settled`,O(),t(j,{replace:!0});return}if(!(A!==`enabled`||x!==`full`||z.current!==`idle`)&&k!==`resolving`){if(k===`unavailable`){z.current=`settled`,I(!0);return}B()}},[j,b,x,t,k,d,B,A]),F?(0,D.jsxs)(`div`,{className:`flex h-full w-full flex-col items-center justify-center gap-4 px-6 text-center`,children:[(0,D.jsx)(`p`,{className:`text-[var(--content-default)]`,children:e(`checkoutPage.checkoutFailedMessage`)}),(0,D.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,D.jsx)(o,{onClick:V,children:e(`checkoutPage.tryAgain`)}),(0,D.jsx)(y,{to:j,onClick:O,className:`text-sm text-[var(--content-tertiary)] underline`,children:M})]})]}):L?(0,D.jsxs)(`div`,{className:`flex h-full w-full flex-col items-center justify-center gap-4 px-6 text-center`,children:[(0,D.jsx)(`p`,{className:`text-[var(--content-default)]`,children:e(`checkoutPage.awaitingReturnMessage`)}),(0,D.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,D.jsx)(o,{onClick:V,children:e(`checkoutPage.reopenCheckout`)}),(0,D.jsx)(y,{to:j,className:`text-sm text-[var(--content-tertiary)] underline`,children:M})]})]}):(0,D.jsxs)(`div`,{className:`flex h-full w-full flex-col items-center justify-center gap-3`,children:[(0,D.jsx)(S,{className:`h-6 w-6 animate-spin text-[var(--content-tertiary)]`,"aria-label":e(`checkoutPage.preparingCheckoutAriaLabel`)}),(0,D.jsx)(`p`,{className:`text-sm text-[var(--content-tertiary)]`,children:e(`checkoutPage.preparingCheckout`)})]})}function A(){let e=v(),[t]=_(),n=w(t,i.settings.usageBilling);return(0,E.useEffect)(()=>{O(),e(n,{replace:!0})},[e,n]),null}function j(){return t()?(0,D.jsx)(A,{}):(0,D.jsx)(k,{})}export{j as CheckoutPage};
@@ -0,0 +1 @@
1
+ import{Hm as e}from"./app-Tg6YU_tZ.js";import{E as t}from"./vendor-DYOeoIwg.js";function n(){return e()!==null||t.isNativePlatform()?`native`:`web`}export{n as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Hx as t,Ux as n,Za as r,_c as i,_x as a,bx as o,eh as s,gi as c,xx as l,yx as u}from"./app-DFXcEvsi.js";import{_ as d,f,g as p,j as m,v as h}from"./vendor-DYOeoIwg.js";import{b as g,t as _,x as v}from"./react-B9IgSVeK.js";import{_t as y,i as b,qn as x}from"./icons-QG1KAFmx.js";var S=e(v(),1),C=e(g(),1),w=_();function T(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function E(e,t){let n=[...new Set(t??[])].filter(e=>e.length>0).sort((e,t)=>t.length-e.length);if(n.length===0)return e;let r=n.map(T).join(`|`),i=RegExp(`(?<![\\p{L}\\p{N}])(?:${r})(?![\\p{L}\\p{N}])`,`giu`),a=[],o=0;for(let t of e.matchAll(i))a.push(e.slice(o,t.index)),a.push((0,w.jsx)(`span`,{className:`font-medium text-[var(--content-default)]`,children:t[0]},t.index)),o=t.index+t[0].length;return a.length===0?e:(a.push(e.slice(o)),(0,w.jsx)(w.Fragment,{children:a}))}function D({icon:e,title:t,subtitle:n,snippet:r,highlightTokens:i,shortcut:s,isSelected:c,onClick:l,surface:d=`overlay`}){let f=e;return d===`window`?(0,w.jsxs)(`button`,{type:`button`,role:`option`,"aria-current":c?`page`:void 0,"aria-selected":c,"aria-keyshortcuts":s?o(s):void 0,onClick:l,className:[`flex w-full items-center gap-3 rounded-md px-3 text-left text-sm font-medium outline-none transition-colors`,r?`py-1.5`:`h-10`,c?`bg-[var(--surface-active)] text-[var(--content-default)]`:`text-[var(--content-secondary)] hover:bg-[var(--surface-overlay)] hover:text-[var(--content-default)]`].join(` `),children:[f?(0,w.jsx)(f,{size:16,"aria-hidden":!0,className:c?`shrink-0 text-[var(--content-default)]`:`shrink-0 text-[var(--content-tertiary)]`}):null,(0,w.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,w.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,w.jsx)(`span`,{className:`truncate`,children:t}),n?(0,w.jsx)(`span`,{className:`min-w-0 truncate text-xs text-[var(--content-tertiary)]`,children:n}):null,s?(0,w.jsx)(u,{accelerator:s,variant:`inline`,"aria-hidden":!0,className:`ml-auto shrink-0`}):null]}),r?(0,w.jsx)(`span`,{className:`truncate text-xs font-normal text-[var(--content-tertiary)]`,children:E(r,i)}):null]})]}):(0,w.jsx)(a,{icon:e,"aria-keyshortcuts":s?o(s):void 0,label:(0,w.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,w.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,w.jsx)(`span`,{className:`truncate`,children:t}),n?(0,w.jsx)(`span`,{className:`min-w-0 truncate text-[var(--content-tertiary)] text-body-small-default`,children:n}):null,s?(0,w.jsx)(u,{accelerator:s,variant:`inline`,"aria-hidden":!0,className:`ml-auto shrink-0`}):null]}),r?(0,w.jsx)(`span`,{className:`truncate text-[var(--content-tertiary)] text-body-small-default`,children:E(r,i)}):null]}),active:c,onSelect:l,className:r?`h-auto px-3 py-2`:`px-3 py-2`})}var O=`fixed inset-0 z-50 flex flex-col bg-[var(--surface-lift)]`,k={paddingTop:`var(--safe-area-inset-top, env(safe-area-inset-top, 0px))`,paddingBottom:`var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))`,paddingLeft:`var(--safe-area-inset-left, env(safe-area-inset-left, 0px))`,paddingRight:`var(--safe-area-inset-right, env(safe-area-inset-right, 0px))`},A={...k,pointerEvents:`none`},j=({onKeyDown:e,children:t})=>{let{t:n}=m(),r=h(),i=f(),a=(0,S.useRef)(null);return(0,S.useLayoutEffect)(()=>{if(r)return;let e=document.activeElement;e instanceof HTMLElement&&a.current?.contains(e)&&e.blur()},[r]),(0,w.jsx)(p.div,{ref:a,className:O,style:r?k:A,role:`dialog`,"aria-modal":r?!0:void 0,"aria-hidden":r?void 0:!0,"aria-label":n(`commandPalette.searchAriaLabel`),onKeyDown:e,initial:{y:`100%`,opacity:0},animate:{y:0,opacity:1},exit:{y:`100%`,opacity:0},transition:i?{duration:0}:{duration:.28,ease:[.16,1,.3,1]},children:t})},M=({isOpen:e,onClose:a,query:o,onQueryChange:u,highlightTokens:f,selectedIndex:p,sections:h,isSearching:g=!1,onItemSelect:_,onKeyDown:v,surface:T=`overlay`})=>{let{t:E}=m(),A=i(),M=s(),N=r(),P=c(`commandPalette`),F=P?l(P):null,I=(0,S.useRef)(null),L=(0,S.useRef)(null),R=(0,S.useRef)(null);(0,S.useEffect)(()=>{if(e){let e=requestAnimationFrame(()=>{L.current?.focus()});return()=>cancelAnimationFrame(e)}},[e]),(0,S.useEffect)(()=>{if(!e||!R.current)return;let t=R.current.querySelector(`[aria-current='page']`);t&&t.scrollIntoView({block:`nearest`})},[e,p]);let z=(0,S.useCallback)(e=>{e.target===I.current&&a()},[a]),B=T===`window`,V=A&&!B,H=!N,U=M&&V;if(!e&&!U)return null;let W=0,G=(0,w.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-[var(--border-base)] px-4 py-3`,children:[g?(0,w.jsx)(x,{size:16,"aria-hidden":!0,className:`shrink-0 animate-spin text-[var(--content-tertiary)]`}):(0,w.jsx)(y,{size:16,"aria-hidden":!0,className:`shrink-0 text-[var(--content-tertiary)]`}),(0,w.jsx)(`input`,{ref:L,type:`text`,value:o,onChange:e=>u(e.target.value),placeholder:E(`commandPalette.placeholder`),className:B?`min-w-0 flex-1 bg-transparent text-sm font-medium text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`:`min-w-0 flex-1 bg-transparent text-body-medium-lighter text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`,"aria-label":E(`commandPalette.searchAriaLabel`)}),o?V?(0,w.jsx)(`button`,{type:`button`,className:`shrink-0 text-body-medium-lighter text-[var(--content-tertiary)]`,onClick:()=>u(``),"aria-label":E(`commandPalette.clearSearch`),children:E(`commandPalette.clear`)}):B?(0,w.jsx)(`button`,{type:`button`,className:`flex size-7 shrink-0 items-center justify-center rounded-md text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-overlay)] hover:text-[var(--content-default)]`,"aria-label":E(`commandPalette.clearSearch`),onClick:()=>u(``),children:(0,w.jsx)(b,{size:16,"aria-hidden":!0})}):(0,w.jsx)(n,{variant:`ghost`,size:`compact`,iconOnly:(0,w.jsx)(b,{}),"aria-label":E(`commandPalette.clearSearch`),onClick:()=>u(``),tintColor:`var(--content-tertiary)`}):H&&F?(0,w.jsx)(`kbd`,{className:B?`shrink-0 rounded-md border border-[var(--border-base)] bg-[var(--surface-active)] px-1.5 py-0.5 text-xs font-medium text-[var(--content-secondary)]`:`shrink-0 rounded-md border border-[var(--border-base)] bg-[var(--surface-active)] px-1.5 py-0.5 text-label-small-default text-[var(--content-tertiary)]`,children:F}):null,V?(0,w.jsx)(n,{variant:`ghost`,size:`compact`,iconOnly:(0,w.jsx)(b,{}),expandOnMobile:!1,"aria-label":E(`commandPalette.closeSearch`),onClick:a,tintColor:`var(--content-tertiary)`}):null]}),K=(0,w.jsx)(`div`,{ref:R,className:V?`flex-1 overflow-y-auto overscroll-contain p-2`:`max-h-[360px] overflow-y-auto overscroll-contain p-2`,role:`listbox`,children:h.length===0?(0,w.jsx)(`div`,{className:`px-3 py-6 text-center`,children:(0,w.jsx)(t,{variant:`body-medium-lighter`,className:`text-[var(--content-tertiary)]`,children:E(g?`commandPalette.searching`:`commandPalette.noResults`)})}):h.map(e=>(0,w.jsxs)(`div`,{role:`group`,"aria-label":e.label,children:[(0,w.jsx)(t,{variant:`label-small-default`,as:`div`,className:B?`px-3 pb-1 pt-2 text-xs font-semibold text-[var(--content-tertiary)]`:`px-3 pb-1 pt-2 text-[var(--content-tertiary)] max-md:text-body-small-default`,children:e.label}),e.items.map(e=>{let t=W++;return(0,w.jsx)(D,{icon:e.icon,title:e.title,subtitle:e.subtitle,snippet:e.snippet,highlightTokens:f,shortcut:H?e.shortcut:void 0,isSelected:t===p,onClick:()=>_?.(e,t),surface:T},e.id)})]},e.id))});if(U)return(0,w.jsx)(d,{children:e?(0,w.jsxs)(j,{onKeyDown:v,children:[G,K]},`command-palette-sheet`):null});if(V)return(0,w.jsxs)(`div`,{className:O,role:`dialog`,"aria-modal":`true`,"aria-label":E(`commandPalette.searchAriaLabel`),onKeyDown:v,style:k,children:[G,K]});let q=(0,w.jsx)(`div`,{ref:I,role:`dialog`,"aria-modal":`true`,"aria-label":E(`commandPalette.ariaLabel`),className:T===`window`?`flex h-full w-full items-start justify-center bg-transparent p-3`:`fixed inset-0 z-50 flex items-start justify-center bg-black/40 pt-[15vh]`,onClick:z,onKeyDown:v,children:(0,w.jsxs)(`div`,{className:`flex w-full max-w-[560px] flex-col overflow-hidden rounded-xl border border-[var(--border-base)] bg-[var(--surface-base)] shadow-xl`,children:[G,K]})});return T===`window`?q:(0,C.createPortal)(q,document.body)};export{M as t};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Sx as t,Ux as n,Wx as r,Za as i,_c as a,bx as o,gi as s,th as c,vx as l,xx as u}from"./app-Tg6YU_tZ.js";import{_ as d,f,g as p,j as m,v as h}from"./vendor-DYOeoIwg.js";import{b as g,t as _,x as v}from"./react-B9IgSVeK.js";import{_t as y,i as b,qn as x}from"./icons-QG1KAFmx.js";var S=e(v(),1),C=e(g(),1),w=_();function T(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function E(e,t){let n=[...new Set(t??[])].filter(e=>e.length>0).sort((e,t)=>t.length-e.length);if(n.length===0)return e;let r=n.map(T).join(`|`),i=RegExp(`(?<![\\p{L}\\p{N}])(?:${r})(?![\\p{L}\\p{N}])`,`giu`),a=[],o=0;for(let t of e.matchAll(i))a.push(e.slice(o,t.index)),a.push((0,w.jsx)(`span`,{className:`font-medium text-[var(--content-default)]`,children:t[0]},t.index)),o=t.index+t[0].length;return a.length===0?e:(a.push(e.slice(o)),(0,w.jsx)(w.Fragment,{children:a}))}function D({icon:e,title:t,subtitle:n,snippet:r,highlightTokens:i,shortcut:a,isSelected:s,onClick:c,surface:d=`overlay`}){let f=e;return d===`window`?(0,w.jsxs)(`button`,{type:`button`,role:`option`,"aria-current":s?`page`:void 0,"aria-selected":s,"aria-keyshortcuts":a?u(a):void 0,onClick:c,className:[`flex w-full items-center gap-3 rounded-md px-3 text-left text-sm font-medium outline-none transition-colors`,r?`py-1.5`:`h-10`,s?`bg-[var(--surface-active)] text-[var(--content-default)]`:`text-[var(--content-secondary)] hover:bg-[var(--surface-overlay)] hover:text-[var(--content-default)]`].join(` `),children:[f?(0,w.jsx)(f,{size:16,"aria-hidden":!0,className:s?`shrink-0 text-[var(--content-default)]`:`shrink-0 text-[var(--content-tertiary)]`}):null,(0,w.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,w.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,w.jsx)(`span`,{className:`truncate`,children:t}),n?(0,w.jsx)(`span`,{className:`min-w-0 truncate text-xs text-[var(--content-tertiary)]`,children:n}):null,a?(0,w.jsx)(o,{accelerator:a,variant:`inline`,"aria-hidden":!0,className:`ml-auto shrink-0`}):null]}),r?(0,w.jsx)(`span`,{className:`truncate text-xs font-normal text-[var(--content-tertiary)]`,children:E(r,i)}):null]})]}):(0,w.jsx)(l,{icon:e,"aria-keyshortcuts":a?u(a):void 0,label:(0,w.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,w.jsxs)(`span`,{className:`flex min-w-0 items-center gap-2`,children:[(0,w.jsx)(`span`,{className:`truncate`,children:t}),n?(0,w.jsx)(`span`,{className:`min-w-0 truncate text-[var(--content-tertiary)] text-body-small-default`,children:n}):null,a?(0,w.jsx)(o,{accelerator:a,variant:`inline`,"aria-hidden":!0,className:`ml-auto shrink-0`}):null]}),r?(0,w.jsx)(`span`,{className:`truncate text-[var(--content-tertiary)] text-body-small-default`,children:E(r,i)}):null]}),active:s,onSelect:c,className:r?`h-auto px-3 py-2`:`px-3 py-2`})}var O=`fixed inset-0 z-50 flex flex-col bg-[var(--surface-lift)]`,k={paddingTop:`var(--safe-area-inset-top, env(safe-area-inset-top, 0px))`,paddingBottom:`var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px))`,paddingLeft:`var(--safe-area-inset-left, env(safe-area-inset-left, 0px))`,paddingRight:`var(--safe-area-inset-right, env(safe-area-inset-right, 0px))`},A={...k,pointerEvents:`none`},j=({onKeyDown:e,children:t})=>{let{t:n}=m(),r=h(),i=f(),a=(0,S.useRef)(null);return(0,S.useLayoutEffect)(()=>{if(r)return;let e=document.activeElement;e instanceof HTMLElement&&a.current?.contains(e)&&e.blur()},[r]),(0,w.jsx)(p.div,{ref:a,className:O,style:r?k:A,role:`dialog`,"aria-modal":r?!0:void 0,"aria-hidden":r?void 0:!0,"aria-label":n(`commandPalette.searchAriaLabel`),onKeyDown:e,initial:{y:`100%`,opacity:0},animate:{y:0,opacity:1},exit:{y:`100%`,opacity:0},transition:i?{duration:0}:{duration:.28,ease:[.16,1,.3,1]},children:t})},M=({isOpen:e,onClose:o,query:l,onQueryChange:u,highlightTokens:f,selectedIndex:p,sections:h,isSearching:g=!1,onItemSelect:_,onKeyDown:v,surface:T=`overlay`})=>{let{t:E}=m(),A=a(),M=c(),N=i(),P=s(`commandPalette`),F=P?t(P):null,I=(0,S.useRef)(null),L=(0,S.useRef)(null),R=(0,S.useRef)(null);(0,S.useEffect)(()=>{if(e){let e=requestAnimationFrame(()=>{L.current?.focus()});return()=>cancelAnimationFrame(e)}},[e]),(0,S.useEffect)(()=>{if(!e||!R.current)return;let t=R.current.querySelector(`[aria-current='page']`);t&&t.scrollIntoView({block:`nearest`})},[e,p]);let z=(0,S.useCallback)(e=>{e.target===I.current&&o()},[o]),B=T===`window`,V=A&&!B,H=!N,U=M&&V;if(!e&&!U)return null;let W=0,G=(0,w.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-[var(--border-base)] px-4 py-3`,children:[g?(0,w.jsx)(x,{size:16,"aria-hidden":!0,className:`shrink-0 animate-spin text-[var(--content-tertiary)]`}):(0,w.jsx)(y,{size:16,"aria-hidden":!0,className:`shrink-0 text-[var(--content-tertiary)]`}),(0,w.jsx)(`input`,{ref:L,type:`text`,value:l,onChange:e=>u(e.target.value),placeholder:E(`commandPalette.placeholder`),className:B?`min-w-0 flex-1 bg-transparent text-sm font-medium text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`:`min-w-0 flex-1 bg-transparent text-body-medium-lighter text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] outline-none`,"aria-label":E(`commandPalette.searchAriaLabel`)}),l?V?(0,w.jsx)(`button`,{type:`button`,className:`shrink-0 text-body-medium-lighter text-[var(--content-tertiary)]`,onClick:()=>u(``),"aria-label":E(`commandPalette.clearSearch`),children:E(`commandPalette.clear`)}):B?(0,w.jsx)(`button`,{type:`button`,className:`flex size-7 shrink-0 items-center justify-center rounded-md text-[var(--content-tertiary)] transition-colors hover:bg-[var(--surface-overlay)] hover:text-[var(--content-default)]`,"aria-label":E(`commandPalette.clearSearch`),onClick:()=>u(``),children:(0,w.jsx)(b,{size:16,"aria-hidden":!0})}):(0,w.jsx)(r,{variant:`ghost`,size:`compact`,iconOnly:(0,w.jsx)(b,{}),"aria-label":E(`commandPalette.clearSearch`),onClick:()=>u(``),tintColor:`var(--content-tertiary)`}):H&&F?(0,w.jsx)(`kbd`,{className:B?`shrink-0 rounded-md border border-[var(--border-base)] bg-[var(--surface-active)] px-1.5 py-0.5 text-xs font-medium text-[var(--content-secondary)]`:`shrink-0 rounded-md border border-[var(--border-base)] bg-[var(--surface-active)] px-1.5 py-0.5 text-label-small-default text-[var(--content-tertiary)]`,children:F}):null,V?(0,w.jsx)(r,{variant:`ghost`,size:`compact`,iconOnly:(0,w.jsx)(b,{}),expandOnMobile:!1,"aria-label":E(`commandPalette.closeSearch`),onClick:o,tintColor:`var(--content-tertiary)`}):null]}),K=(0,w.jsx)(`div`,{ref:R,className:V?`flex-1 overflow-y-auto overscroll-contain p-2`:`max-h-[360px] overflow-y-auto overscroll-contain p-2`,role:`listbox`,children:h.length===0?(0,w.jsx)(`div`,{className:`px-3 py-6 text-center`,children:(0,w.jsx)(n,{variant:`body-medium-lighter`,className:`text-[var(--content-tertiary)]`,children:E(g?`commandPalette.searching`:`commandPalette.noResults`)})}):h.map(e=>(0,w.jsxs)(`div`,{role:`group`,"aria-label":e.label,children:[(0,w.jsx)(n,{variant:`label-small-default`,as:`div`,className:B?`px-3 pb-1 pt-2 text-xs font-semibold text-[var(--content-tertiary)]`:`px-3 pb-1 pt-2 text-[var(--content-tertiary)] max-md:text-body-small-default`,children:e.label}),e.items.map(e=>{let t=W++;return(0,w.jsx)(D,{icon:e.icon,title:e.title,subtitle:e.subtitle,snippet:e.snippet,highlightTokens:f,shortcut:H?e.shortcut:void 0,isSelected:t===p,onClick:()=>_?.(e,t),surface:T},e.id)})]},e.id))});if(U)return(0,w.jsx)(d,{children:e?(0,w.jsxs)(j,{onKeyDown:v,children:[G,K]},`command-palette-sheet`):null});if(V)return(0,w.jsxs)(`div`,{className:O,role:`dialog`,"aria-modal":`true`,"aria-label":E(`commandPalette.searchAriaLabel`),onKeyDown:v,style:k,children:[G,K]});let q=(0,w.jsx)(`div`,{ref:I,role:`dialog`,"aria-modal":`true`,"aria-label":E(`commandPalette.ariaLabel`),className:T===`window`?`flex h-full w-full items-start justify-center bg-transparent p-3`:`fixed inset-0 z-50 flex items-start justify-center bg-black/40 pt-[15vh]`,onClick:z,onKeyDown:v,children:(0,w.jsxs)(`div`,{className:`flex w-full max-w-[560px] flex-col overflow-hidden rounded-xl border border-[var(--border-base)] bg-[var(--surface-base)] shadow-xl`,children:[G,K]})});return T===`window`?q:(0,C.createPortal)(q,document.body)};export{M as t};
@@ -0,0 +1 @@
1
+ import{t as e}from"./command-palette-BuaJlwlj.js";export{e as CommandPalette};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ep as t,Eu as n,Fi as r,Ho as i,Ii as a,Xr as o,fa as s,kp as c,pc as l,sy as u,wh as d,wp as f}from"./app-DFXcEvsi.js";import{t as p,x as m}from"./react-B9IgSVeK.js";import{t as h}from"./command-palette-BIYpDozl.js";var g=e(m(),1),_=p(),v=()=>void 0,y=e=>void 0,b=e=>{switch(e.id){case`action-new-conversation`:return{kind:`newConversation`};case`action-current-conversation`:return{kind:`currentConversation`};case`action-settings`:return{kind:`openSettings`};case`action-library`:return{kind:`openLibrary`};case`action-intelligence`:return{kind:`openIdentity`};default:return e.id.startsWith(`conv-`)?{kind:`openConversation`,conversationId:e.id.slice(5)}:e.id.startsWith(`search-conv-`)?{kind:`openConversation`,conversationId:e.id.slice(12)}:e.id.startsWith(`search-schedule-`)||e.id.startsWith(`search-contact-`)?{kind:`openIdentity`}:null}};function x(){let e=f.use.sessionStatus(),p=c(),m=t();n(),i(!p),l({sessionStatus:e,hasPlatformSession:m});let x=u.use.assistants(),S=u.use.activeAssistantId(),C=d(),w=(0,g.useMemo)(()=>{let e=C??S;if(!e)return null;let t=x.find(t=>t.id===e);return t?{id:t.id,name:t.name}:null},[C,S,x]),T=w?.id??null,{conversations:E}=s(T,!0),D=(0,g.useCallback)(e=>{let t=b(e);t&&a(t)},[]),{commandPalette:O,mergedSections:k,handleItemSelect:A}=o({assistantId:T,assistantName:w?.name,conversations:E,activeConversationId:void 0,startNewConversation:v,switchConversation:v,navigate:y,navigateToSettings:v,isOpen:!0,onClose:()=>{r()},onItemSelect:D});return(0,_.jsx)(`div`,{className:`h-screen w-screen bg-transparent`,children:(0,_.jsx)(h,{isOpen:!0,surface:`window`,onClose:O.close,query:O.query,onQueryChange:O.setQuery,highlightTokens:O.searchTokens,selectedIndex:O.selectedIndex,sections:k,isSearching:O.isSearching,onItemSelect:A,onKeyDown:O.handleKeyDown})})}export{x as CommandPaletteWindowPage};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ap as t,Dp as n,Du as r,Fi as i,Ho as a,Ii as o,Th as s,Tp as c,Xr as l,cy as u,fa as d,pc as f}from"./app-Tg6YU_tZ.js";import{t as p,x as m}from"./react-B9IgSVeK.js";import{t as h}from"./command-palette-BuaJlwlj.js";var g=e(m(),1),_=p(),v=()=>void 0,y=e=>void 0,b=e=>{switch(e.id){case`action-new-conversation`:return{kind:`newConversation`};case`action-current-conversation`:return{kind:`currentConversation`};case`action-settings`:return{kind:`openSettings`};case`action-library`:return{kind:`openLibrary`};case`action-intelligence`:return{kind:`openIdentity`};default:return e.id.startsWith(`conv-`)?{kind:`openConversation`,conversationId:e.id.slice(5)}:e.id.startsWith(`search-conv-`)?{kind:`openConversation`,conversationId:e.id.slice(12)}:e.id.startsWith(`search-schedule-`)||e.id.startsWith(`search-contact-`)?{kind:`openIdentity`}:null}};function x(){let e=c.use.sessionStatus(),p=t(),m=n();r(),a(!p),f({sessionStatus:e,hasPlatformSession:m});let x=u.use.assistants(),S=u.use.activeAssistantId(),C=s(),w=(0,g.useMemo)(()=>{let e=C??S;if(!e)return null;let t=x.find(t=>t.id===e);return t?{id:t.id,name:t.name}:null},[C,S,x]),T=w?.id??null,{conversations:E}=d(T,!0),D=(0,g.useCallback)(e=>{let t=b(e);t&&o(t)},[]),{commandPalette:O,mergedSections:k,handleItemSelect:A}=l({assistantId:T,assistantName:w?.name,conversations:E,activeConversationId:void 0,startNewConversation:v,switchConversation:v,navigate:y,navigateToSettings:v,isOpen:!0,onClose:()=>{i()},onItemSelect:D});return(0,_.jsx)(`div`,{className:`h-screen w-screen bg-transparent`,children:(0,_.jsx)(h,{isOpen:!0,surface:`window`,onClose:O.close,query:O.query,onQueryChange:O.setQuery,highlightTokens:O.searchTokens,selectedIndex:O.selectedIndex,sections:k,isSearching:O.isSearching,onItemSelect:A,onKeyDown:O.handleKeyDown})})}export{x as CommandPaletteWindowPage};
@@ -0,0 +1 @@
1
+ var e={build:`Compilación`,taglineMacOS:`Asistente de IA para tu Mac`,taglineWindows:`Asistente de IA para tu PC`,version:`Versión`},t={connecting:`Conectando con tu asistente…`,logIn:`Iniciar sesión`,logOut:`Cerrar sesión`},n={cancel:`Cancelar`,credentialSaved:`Credencial guardada.`,description:`Añade una clave API o un token para que las herramientas e integraciones lo usen.`,fieldLabel:`Campo`,fieldPlaceholder:`p. ej. api_token`,labelOptional:`Etiqueta (opcional)`,labelPlaceholder:`p. ej. token de acceso personal de GitHub`,save:`Guardar`,saveFailed:`No se pudo guardar la credencial`,serviceLabel:`Servicio`,servicePlaceholder:`p. ej. github`,title:`Añadir credencial`,valueLabel:`Valor`,valuePlaceholder:`Introduce el valor secreto`},r={amount:`Importe`,cancel:`Cancelar`,configureAutoReload:`Configurar la recarga automática`,continue:`Continuar`,description:`Se te redirigirá a Stripe para completar el pago.`,title:`Añadir créditos`},i={openApp:`Abrir app`,pin:`Fijar`,previewTitle:`Vista previa de {name}`,unpin:`Desfijar`},a={close:`Cerrar`,copyLink:`Copiar enlace`,deploy:`Desplegar`,deployToVercel:`Desplegar en Vercel`,deployToVercelSubtitle:`Publicar como página estática`,deployedCopyLinkAria:`Desplegada en Vercel, copiar enlace`,deployedCopyLinkTooltip:`Desplegada: copiar enlace`,deployedToVercel:`Desplegada en Vercel`,deploying:`Desplegando…`,edit:`Editar`,expandApp:`Expandir app`,fullscreen:`Pantalla completa`,openApp:`Abrir app`,redeploy:`Volver a desplegar`,redeploySubtitle:`Publicar la versión actual`,share:`Compartir`,shareAndDeploy:`Compartir y desplegar`,shareExportSubtitle:`Exportar como archivo .vellum`,sharing:`Compartiendo…`},o={exitFullscreen:`Salir de pantalla completa`},s={failed:`No se pudo conectar con el asistente.`},c={updateFailed:`No se pudo actualizar "{label}". Se revirtió el cambio.`},l={accent:`Acento`,accentAutomatic:`Automático`,accentPickerLabel:`Color de acento`,accentReset:`Restablecer`,body:`Cuerpo`,color:`Color`,eyes:`Ojos`,keepUploadedDescription:`Guardar el personaje la reemplaza`,keepUploadedLabel:`Conservar tu imagen subida`,loadError:`No se pudieron cargar los componentes del avatar. Asegúrate de que tu asistente esté en ejecución.`,name:`Nombre`,next:`Siguiente {label}`,previous:`Anterior {label}`,randomize:`Aleatorio`,save:`Guardar`,saving:`Guardando…`,title:`Actualizar avatar`,uploadImage:`Subir imagen`,uploadedAlt:`Avatar subido`,useCharacterDescription:`Elige entre nuestros avatares integrados`,useCharacterLabel:`Usar un personaje en su lugar`},u={bySigner:`por {name}`,cancel:`Cancelar`,capabilities:`Capacidades`,createdBy:`Creado por`,hideWarnings:`Ocultar advertencias ({count})`,install:`Instalar`,installAnyway:`Instalar de todos modos`,loading:`Cargando...`,showWarnings:`Mostrar advertencias ({count})`,size:`Tamaño`},d={body:`Tu asistente habla a través de un proveedor que configuraste tú. Define su voz en <settingsLink>Modelos y servicios</settingsLink>.`},f={verifyTitle:`Último paso: confirma que eres tú`,verifyAction:`Verificarme`,verifyBody:`Tu asistente aún no sabe cuál cuenta de {channel} es la tuya, así que no te responderá. Di "verifícame en {channel}" en el chat para terminar.`,verifyActionBody:`Tu asistente aún no sabe cuál cuenta de {channel} es la tuya, así que no te responderá. Lo termina contigo en el chat.`,verifiedTitle:`Identidad verificada`,verifiedBody:`Tu asistente conoce tu cuenta de {channel} y te responderá. Todo listo.`},p={alt:`Avatar del asistente`,fallbackLetter:`V`},m={alt:`Avatar del asistente`},h={actionsTitle:`Acciones de {title}`},g={ariaLabel:`Paleta de comandos`,clear:`Borrar`,clearSearch:`Borrar búsqueda`,closeSearch:`Cerrar búsqueda`,noResults:`Sin resultados`,placeholder:`Buscar conversaciones, recuerdos…`,searchAriaLabel:`Buscar`,searching:`Buscando…`},_={ariaLabel:`Te presento a tu compañero`,done:`Entendido`,meet:{body:`Me quedo en tu escritorio, aunque Vellum no esté a la vista.`,title:`Este soy yo`,titleNamed:`Soy {name}`},menu:{body:`Ahí puedes ocultarme o cambiar mi tamaño.`,title:`Haz clic derecho sobre mí`},next:`Siguiente`,skip:`Omitir`,talk:{body:`Inicia una conversación por voz.`,title:`Talk`}},v={allow:`Permitir`,confirm:`Confirmar`,credentialLabel:`Credencial`,defaultSuffix:`(predeterminada)`,deny:`Denegar`,dismiss:`Descartar`,enter:`Introducir`,microphoneFallback:`Micrófono {index}`,microphonePermissionHint:`Permite el acceso al micrófono para ver cada micrófono por su nombre.`,microphoneTitle:`Micrófono`,needsCredentials:`Necesito una credencial`,needsCredentialsFor:`Necesito credenciales para {service}`,needsOkCount:`{count, plural, one {Necesito tu aprobación para # cosa} other {Necesito tu aprobación para # cosas}}`,notNow:`Ahora no`,openApp:`Abrir Vellum`,pendingBadge:`{count, plural, one {# cosa necesita tu aprobación} other {# cosas necesitan tu aprobación}}`,previewVoice:`Escuchar {voice}`,review:`Revisar`,savedMicrophone:`Micrófono guardado`,savedMicrophoneNotConnected:`Micrófono guardado (no conectado)`,stopPreview:`Detener`,surfaceFallback:`Algo para ver`,systemDefault:`Predeterminado del sistema`,voiceTitle:`Voz`},y={calling:`Llamando…`,callingNamed:`Llamando a {name}…`,captureKind:`Tipo de fuente`,captureNothing:`Nada que mostrar`,capturePicker:`Qué enseñar`,captureScreen:`Pantalla {n}`,captureScreenRecordingOff:`La grabación de pantalla está desactivada`,captureScreens:`Pantallas`,captureTabs:`Pestañas de Chrome`,captureTurnOnScreenRecording:`Activar`,captureWindows:`Ventanas`,draw:`Dibujar`,clearMarks:`Borrar marcas`,drawTools:`Herramienta de dibujo`,drawFreehand:`Mano alzada`,drawLine:`Línea`,drawBox:`Recuadro`,drawCircle:`Círculo`,endSession:`Finalizar sesión`,muteAssistant:`Silenciar asistente`,muteMicrophone:`Silenciar micrófono`,notNow:`Ahora no`,offerCopy:`Copiar`,offerDiscard:`Descartar`,offerHeard:`{app} pegó eso`,offerNowhere:`No hay dónde ponerlas`,offerQuit:`Salir de {app}`,offerUse:`Usar la de Vellum`,offerVersion:`Vellum oyó`,openVellum:`Abrir Vellum`,share:`Compartir`,sharePicker:`Qué compartir`,showSummary:`Mostrar resumen`,stopTeaching:`Dejar de enseñar`,summarizing:`Resumiendo`,talk:`Hablar`,teach:`Enseñar`,unmuteAssistant:`Activar sonido del asistente`,unmuteMicrophone:`Activar micrófono`,chooseMicrophone:`Elegir micrófono`,chooseVoice:`Elegir voz`},b={sharingScreen:`Compartiendo tu pantalla`,sharingScreenNamed:`Compartiendo tu pantalla con {name}`,sharingWindow:`Compartiendo una ventana`,sharingWindowNamed:`Compartiendo una ventana con {name}`,teaching:`Enseñando`,teachingNamed:`Enseñando a {name}`},x={copiedAria:`Copiado`,copyFailed:`No se pudo copiar el contenido del archivo.`,copyFileContentsAria:`Copiar contenido del archivo`,downloadFileAria:`Descargar archivo`,editFileAria:`Editar archivo`},S={untitled:`Sin título`},C={cancel:`Cancelar`,create:`Crear`,description:`Provisiona un asistente nuevo. Se iniciará en segundo plano.`,namePlaceholder:`Nombre del asistente (opcional)`,title:`Nuevo asistente`,toastSuccess:`Nuevo asistente creado.`},w={ariaLabel:`Rango de fechas`,lastDays:`{days, plural, one {Último # día} other {Últimos # días}}`},T={delete:`Eliminar`,deleting:`Eliminando…`,message:`"{name}" se eliminará de forma permanente.`,title:`Eliminar app`},E={confirmLabel:`Deja que tu asistente se encargue`,confirmLabelNamed:`Deja que {assistantName} se encargue`,message:`"{appName}" usa servicios de backend que no funcionarán en una página estática de Vercel. Tu asistente puede desplegarla correctamente con funciones serverless.`,messageNamed:`"{appName}" usa servicios de backend que no funcionarán en una página estática de Vercel. {assistantName} puede desplegarla correctamente con funciones serverless.`,title:`Esta app necesita un despliegue completo`},D={appExported:`Aplicación exportada`,deployFailed:`No se pudo desplegar`,deployedToVercel:`Desplegada en Vercel`,open:`Abrir`,shareFailed:`No se pudo compartir la aplicación`},O={tooltip:`Detener`},k={copied:`Copiado`,copy:`Copiar`,showLess:`Mostrar menos`,showMore:`Mostrar más`},A={stopRecording:`Detener grabación`},j={ariaLabel:`Únete a la comunidad de Discord de Vellum`,ctaLong:`Unirse a Discord`,ctaShort:`Unirse`,subtitleLong:`Habla con el equipo: comparte comentarios, solicita funciones y obtén respuestas más rápido`,subtitleShort:`Comparte comentarios, solicita funciones y obtén respuestas más rápido`,title:`¡Únete a nuestra comunidad!`},M={instructions:`Pega el token del bot que copiaste de la página Bot.`,verificationNoticeTitle:`Ignora la página "Verify your App"`,verificationNoticeBody:`Discord la muestra a cada app nueva. Solo importa a partir de 100 servidores.`,botTokenLabel:`Token del bot`,save:`Conectar`,saving:`Conectando...`,saved:`Conectado. Ahora añade el bot a un servidor.`,botTokenPlaceholder:`MTk4NjIyNDgzNzAyNDU0...`},N={inPortal:`En el portal de desarrolladores de Discord:`,stepCreateApp:`Pulsa <strong>New Application</strong> y ponle a la app el nombre de tu asistente:`,copyName:`Copiar nombre`,copied:`¡Copiado!`,stepAppIcon:`Opcional: descarga el avatar y súbelo en <strong>General Information</strong> como icono de la app.`,stepResetToken:`Ve a la página <strong>Bot</strong> en el menú de la app, pulsa <strong>Reset Token</strong> y copia el token de inmediato. Discord solo lo muestra una vez.`,stepIntentsOff:`En la misma página, deja apagados los tres interruptores de <strong>Privileged Gateway Intents</strong>. Tu asistente no los necesita: solo lee mensajes directos y mensajes que lo mencionan.`,openPortal:`Abrir el portal de Discord`,continue:`Ya tengo mi token`},P={connectedTitle:`Bot añadido`,connectedBody:`El token está guardado y el bot ya está en tu servidor. La parte de Discord está lista.`},F={instructions:`Tu bot no puede ver ni responder nada hasta que entre en un servidor. Abre el enlace, elige tu servidor y aprueba.`,openInvite:`Añadir a un servidor`,confirmJoined:`Ya añadí el bot`,noAppId:`Conecta primero un token del bot y vuelve para añadirlo a un servidor.`},I={channelLabel:`Discord`,stepCreate:`Crear app`,stepConnect:`Conectar`,stepInvite:`Añadir al servidor`,stepFinish:`Finalizar`,copyError:`No se pudo copiar el nombre. Escríbelo en Discord en su lugar.`},L={acknowledge:`Reconocer`,acknowledging:`Reconociendo...`,cleanupBody:`Pide a tu asistente que libere espacio antes de que se agote y entre en un estado bloqueado.`,cleanupTitle:`El modo de limpieza está activo`,criticalBody:`Tu asistente entrará en un estado bloqueado si se queda sin almacenamiento.`,criticalModalDescription:`Tu asistente entrará en un estado bloqueado si se queda sin almacenamiento. Debes pedir a tu asistente que libere espacio o aumentar tu almacenamiento.`,criticalTitle:`El almacenamiento está críticamente bajo`,dontShowAgain:`No mostrar de nuevo`,manageStorage:`Gestionar almacenamiento`,review:`Revisar`,upgrade:`Mejorar plan`,warningBody:`Libera espacio para evitar interrupciones.`,warningBodyWithUpgrade:`Libera espacio o añade más almacenamiento para evitar interrupciones.`,warningTitle:`Tu almacenamiento está casi lleno`},R={failed:`No se pudo descargar el archivo`,revealMac:`Mostrar en Finder`,revealWindows:`Mostrar en el Explorador de archivos`,saved:`Guardado en Descargas`,started:`Descarga iniciada`,startedDescription:`Busca {filename} en las descargas de tu navegador.`},z={discard:`Descartar`,save:`Guardar`,saving:`Guardando…`},B={copyAriaLabel:`Copiar enlace de invitación`,createFailed:`No se pudo crear el enlace de invitación. Asegúrate de que A2A esté habilitado para tu asistente.`,creating:`Creando enlace de invitación…`,done:`Listo`,shareHint:`Comparte este enlace con otro propietario de asistente para establecer una conexión.`,title:`Compartir enlace de conexión`,tryAgain:`Reintentar`},V={ariaLabel:`Vellum es de código abierto en GitHub`,ctaAriaLabel:`Dar una estrella a Vellum en GitHub`,ctaLabel:`Danos una estrella`,subtitle:`Danos una estrella en GitHub o contribuye`,title:`Vellum es de código abierto`},H={loadError:`Esta sección no se pudo cargar. Recarga la página para intentarlo de nuevo.`},U={goToConversation:`Ir a la conversación`},W={ariaLabelMacOS:`Descargar la app de macOS`,ariaLabelWindows:`Descargar la app de Windows`,ctaAriaLabelMacOS:`Descargar la app de macOS`,ctaAriaLabelWindows:`Descargar la app de Windows`,ctaLabel:`Descargar`,subtitle:`Uso del ordenador · acceso a terminal · automatización nativa`,titleMacOS:`Consigue la app de macOS`,titleWindows:`Consigue la app de Windows`},G={bannerAria:`Descargar la app de {appName}`,bannerAriaGeneric:`Descargar la app móvil de Vellum`,download:`Descargar`,downloadAppAria:`Descargar la app de {appName}`,downloadAppAriaGeneric:`Descargar la app móvil de Vellum`,subtitle:`Notificaciones push · inicio biométrico · háptica`,title:`Obtén la app de {appName}`,titleGeneric:`Obtén la app de Vellum`},K={backToAssistant:`Volver a tu asistente`,badge:`Error 404`,body:`La página que buscas no existe o puede haberse movido.`,goBack:`Atrás`,title:`Página no encontrada`},q={dismissAria:`Descartar`},J={back:`Atrás`},Y={cancel:`Cancelar`,logIn:`Iniciar sesión`},X={assistantHandleIdleEmpty:`Tu asistente aún no tiene identificador; reclama uno para poder mencionarlo.`,assistantHandleLabel:`Identificador del asistente`,assistantHandleUpdated:`Identificador del asistente actualizado.`,available:`Disponible`,availableHelper:`Disponible.`,checkAvailabilityFailed:`No se pudo comprobar la disponibilidad.`,checkingAvailability:`Comprobando disponibilidad…`,chooseDifferentHandle:`Elige un identificador diferente.`,emailLabel:`Correo electrónico`,handleHelper:`Letras minúsculas, dígitos, guiones y guiones bajos. De 3 a 30 caracteres.`,handleLocked:`El identificador de tu asistente está bloqueado porque se usa como su subdominio de correo. Para cambiarlo, <releaseLink>libera el subdominio</releaseLink> primero.`,loading:`Cargando tu perfil…`,notAvailable:`No disponible`,profileUpdated:`Perfil actualizado.`,save:`Guardar`,saved:`Guardado`,saving:`Guardando…`,subtitle:`Gestiona los detalles y las preferencias de tu cuenta.`,title:`Perfil`,userHandleIdleAutoGenerated:`Tu identificador se generó automáticamente al registrarte; elige uno que te guste.`,userHandleLabel:`Identificador de usuario`},Z={created:`Perfil "{name}" creado`},Q={logoAlt:`Vellum`,placeholder:`Pregunta lo que quieras a Vellum...`},$={copied:`¡Copiado!`,copyError:`No se pudo copiar el enlace de referido.`,copySuccess:`¡Copiado al portapapeles!`,creditsEarned:`Créditos ganados`,friendsReferred:`Amigos referidos`,gatedTooltip:`¡Suscríbete o compra créditos para empezar a ganar!`,loadError:`No se pudo cargar la información de referidos.`,loading:`Cargando...`,shareLink:`Compartir enlace`,subtitleDefault:`Comparte Vellum con amigos y gana créditos por cada registro.`,subtitleWithAmounts:`Comparte Vellum con amigos - cada uno ganará {creditAmount} créditos cuando se registren, hasta {earningCap} en total.`},ee={title:`Gana créditos gratis`},te={confirm:`Eliminar`,messageOrigin:`Esto no afectará a {assistantName} ni cerrará tu sesión allí. Solo olvida la entrada en este dispositivo. Puedes añadirla de nuevo cuando quieras.`,messagePaired:`Esto no afectará a {assistantName} en su máquina anfitriona. Solo olvida el emparejamiento en este dispositivo. Puedes emparejarlo de nuevo cuando quieras con vellum connect import.`,messagePlatform:`Esto no eliminará a {assistantName}. Solo lo quita de este dispositivo. Al iniciar sesión volverá a estar disponible.`,title:`¿Eliminar de este dispositivo?`},ne={body:`Tu asistente está trabajando duro y está alcanzando sus límites de recursos actuales. Mejora tu plan para que siga funcionando sin problemas.`,bodyNoUpgrade:`Tu asistente está trabajando duro y está alcanzando sus límites de recursos actuales.`,dontShowAgain:`No mostrar de nuevo`,title:`Tu asistente necesita más potencia`,titleNamed:`{assistantName} necesita más potencia`,upgrade:`Mejorar plan`},re={confirmLabel:`Retirar`,message:`Esto retirará de forma permanente este asistente y todos sus datos. Tendrás que volver a completar el flujo de incorporación para crear uno nuevo. Esta acción no se puede deshacer.`,title:`Retirar asistente`},ie={loadingAria:`Cargando`},ae={loadingAria:`Cargando`},oe={unnamedAssistant:`el asistente`},se={chunkFailBody:`Esta sección no se pudo cargar. Probablemente un fallo de red o una versión antigua. Recarga la página para intentarlo de nuevo.`,reload:`Recargar`},ce={confirmMessage:`¿Actualizar a la versión {version}? El asistente no estará disponible brevemente durante la actualización.`,confirmTitle:`Actualizar el runtime del asistente`,later:`Más tarde`,title:`Nueva versión del asistente disponible: {version}`,toastComplete:`Actualización completa. Tu asistente está en buen estado.`,toastFailed:`No se pudo iniciar la actualización. Inténtalo de nuevo.`,update:`Actualizar`},le={ariaLabel:`Acciones de {name}`},ue={reset:`Restablecer`,save:`Guardar`},de={label:`Compartir enlace de conexión`},fe={aboutDiagnosticsAria:`Acerca de los diagnósticos`,addFiles:`Añadir archivos`,adminOnlyHint:`Solo para administradores: crea el archivo de diagnósticos en local y lo descarga en lugar de enviar comentarios o notificar a Slack.`,attachments:`Adjuntos`,bugTip:`Consejo: obtén soporte más rápido publicando en nuestra <discordLink>comunidad de Discord</discordLink>`,cancel:`Cancelar`,category:`Categoría`,closeAria:`Cerrar`,diagnosticsTooltip:`Los diagnósticos incluyen el contexto del navegador, los registros del asistente y marcas de tiempo; nunca contraseñas ni credenciales.`,downloadDiagnostics:`Descargar diagnósticos directamente`,downloadDiagnosticsAria:`Descargar diagnósticos directamente`,downloadDiagnosticsButton:`Descargar diagnósticos`,dropFiles:`Suelta archivos para adjuntarlos…`,email:`Correo electrónico`,featureTip:`Consejo: vota funciones en nuestro <roadmapLink>roadmap público</roadmapLink>`,includeConversation:`Incluir la conversación más reciente`,includeConversationAria:`Incluir la conversación más reciente`,includeDiagnostics:`Incluir diagnósticos`,includeDiagnosticsAria:`Incluir diagnósticos del navegador`,messageLabelBug:`¿Qué salió mal?`,messageLabelFeature:`Describe tu idea`,messageLabelOther:`¿Qué tienes en mente?`,messagePlaceholderBug:`¿Qué esperabas que ocurriera y qué ocurrió en su lugar?`,messagePlaceholderFeature:`¿Qué problema te resolvería esto?`,messagePlaceholderOther:`Comparte tus pensamientos...`,preparingDiagnostics:`Preparando diagnósticos…`,reasonBugReport:`Informe de error`,reasonFeatureRequest:`Solicitud de función`,reasonOther:`Otro`,removeAttachmentAria:`Eliminar {name}`,sendingFeedback:`Enviando comentarios…`,submit:`Enviar`,timeRange:`Intervalo de tiempo`,timeRangeAllTime:`Todo el tiempo`,timeRangeAria:`Intervalo de tiempo de diagnósticos`,timeRangePast24Hours:`Últimas 24 horas`,timeRangePastHour:`Última hora`,title:`Compartir comentarios`},pe={loadingAria:`Cargando el formulario de comentarios`},me={close:`Cerrar`,message:`No se pudo cargar el formulario de comentarios.`,retry:`Reintentar`},he={closeAria:`Cerrar`,closeSidebarAria:`Cerrar barra lateral`,openSidebarAria:`Abrir barra lateral`},ge={backFrom:`Volver desde {title}`,backToMenu:`Volver al menú de {title}`,navigationAria:`Navegación de {title}`},_e={ariaLabel:`Navegación de la barra lateral`},ve={label:`Aprendido de esta conversación`},ye={message:`¿Quitar "{name}" de este asistente?`,remove:`Quitar`,title:`Quitar skill`},be={approvalNotice:`Si Slack muestra “Request approval” en lugar de <strong>Install</strong>, un administrador del espacio de trabajo debe aprobar la app primero.`,createdApp:`He creado la app`,inSlack:`En Slack:`,stepManifest:`En <strong>Or start your own way</strong>, elige <strong>From a manifest</strong> y luego <strong>Continue</strong>`,stepPaste:`Elige tu espacio de trabajo y pega el manifiesto`,stepReview:`Revisa los permisos y haz clic en <strong>Create and Install</strong>`},xe={appName:`Nombre de la app`,appNamePlaceholder:`Mi asistente`,copied:`¡Copiado!`,copyManifest:`Copiar manifiesto`,description:`Descripción (opcional)`,descriptionHelper:`Se muestra en el perfil de Slack de la app.`,descriptionPlaceholder:`En qué ayuda este asistente`,intro:`Ponle nombre a tu app de Slack y copia su manifiesto. Todos los permisos y ajustes vienen preconfigurados.`,next:`Siguiente`},Se={body:`Abre Slack en una pestaña nueva para crear la app y vuelve aquí para los pasos siguientes.`,copied:`¡Copiado!`,copyManifest:`Copiar manifiesto`,manifestCopiedNotice:`Copiaste el manifiesto de esta app aquí. Si has copiado algo desde entonces, cópialo de nuevo antes de pegar.`,manifestNotCopiedNotice:`Aún no has copiado el manifiesto de esta app. El modal de crear app de Slack no tiene otra forma de obtenerlo, así que cópialo antes de pegar.`,next:`Siguiente`,openSlack:`Abrir Slack`},Ce={appTokenLabel:`Token de la app`,botTokenLabel:`Token del bot`,connectSlack:`Conectar Slack`,connecting:`Conectando…`,credentialsSaved:`Credenciales guardadas`,instructions:`En la pantalla de confirmación de Slack, expande <credentials>Your app credentials</credentials> y copia ambos tokens.`,skipNotice:`Esa pantalla también ofrece una guía por línea de comandos y un botón <download>Download app files</download>. Omite ambos. Configuran una app local aparte, y este asistente solo necesita los dos tokens.`,savedBody:`Ambos tokens están guardados. La parte de Slack está lista.`},we={channelLabel:`Slack`,copyError:`No se pudo copiar el manifiesto. Cópialo de nuevo antes de continuar.`,stepConnect:`Conectar`,stepCreate:`Crear`,stepName:`Nombre`,stepOpen:`Abrir`},Te={total:`Total: {value}`},Ee={reloadApp:`Recargar app`},De={reconnecting:`Reconectando con tu asistente…`,dismiss:`Descartar`,goToDoctor:`Ir a Doctor`,resumeAssistant:`Reanudar asistente`,retryNow:`Reintentar ahora`,wakeUp:`Despertar`},Oe={allLanguages:`Todos los idiomas`,featured:`Destacados`,languagesAriaLabel:`Idiomas`,noMatch:`Ningún idioma coincide.`,searchAriaLabel:`Buscar idiomas`,searchPlaceholder:`Buscar idiomas`,suggested:`Sugerido`},ke={description:`Se aplica desde tu próximo turno hablado.`},Ae={apiKeyLabel:`Clave de API`,apiKeyPlaceholderReplace:`•••••••• (Introduce una clave nueva para reemplazarla)`,providerAriaLabel:`Proveedor de STT`,providerLabel:`Proveedor`,saveFailed:`No se pudieron guardar los ajustes de voz a texto`,saveSuccess:`Ajustes de voz a texto guardados`,spokenLanguage:`Idioma hablado`,spokenLanguageApplies:`Se aplica a partir de tu próximo turno hablado.`,vellumTranscription:`La transcripción se realiza a través de tu cuenta de Vellum.`,windowsNativeDisplayName:`Dictado nativo de Windows`,windowsNativeSetupWarning:`Requiere Reconocimiento de voz básico para el idioma de visualización de Windows: abre Configuración > Hora e idioma > Idioma y región, selecciona los tres puntos junto al idioma de visualización, elige Opciones de idioma y, en Características de idioma, descarga Reconocimiento de voz básico.`,windowsNativeSubtitle:`Reconocimiento de voz integrado de Windows, ejecutado localmente mediante el asistente nativo de Windows. Funciona sin conexión y no necesita una clave de API.`},je={ariaLabel:`Subagente {subagentId}`},Me={accessibilityDescription:`Permite que tu asistente haga clic, escriba y controle apps en tu nombre.`,accessibilityLabel:`Accesibilidad`,checking:`Comprobando permisos...`,dockIcon:`icono del Dock`,microphoneDescription:`Permite que tu asistente capture audio para entrada de voz y grabaciones.`,microphoneLabel:`Micrófono`,notificationBadgesDescription:`Permite que tu asistente muestre el recuento de conversaciones no vistas en el {surface}.`,notificationBadgesLabel:`Insignias de notificación`,notificationsDescription:`Permite que tu asistente envíe alertas de macOS para aprobaciones, mensajes y actualizaciones de tareas.`,notificationsLabel:`Notificaciones`,notificationsWindowsDescription:`Permite que tu asistente muestre notificaciones de Windows para aprobaciones, mensajes y actualizaciones de tareas.`,screenDescription:`Permite que tu asistente capture el contexto de la pantalla durante tareas de uso del ordenador.`,screenLabel:`Grabación de pantalla`,speechRecognitionDescription:`Permite que tu asistente transcriba tu voz a texto en el dispositivo.`,speechRecognitionLabel:`Reconocimiento de voz`,speechRecognitionWindowsDescription:`Permite que tu asistente transcriba tu voz a texto con el reconocimiento de voz de Windows.`,taskbarIcon:`icono de la barra de tareas`,title:`Permisos del sistema`},Ne={botTokenLabel:`Token del bot`,connectTelegram:`Conectar Telegram`,instructions:`Pega el token de la respuesta de BotFather. Es la línea completa después de <tokenLine>Use this token to access the HTTP API</tokenLine>.`,saving:`Guardando…`,savedTitle:`Token guardado`,savedBody:`El token del bot está guardado. La parte de Telegram está lista.`},Pe={copied:`¡Copiado!`,copyName:`Copiar nombre`,displayNameHint:`Para el nombre visible, <strong>{suggestedName}</strong> mantiene este bot alineado con tu asistente. El nombre de usuario es independiente y no tiene que coincidir.`,dmOnlyNotice:`Los chats privados sí están admitidos. Los mensajes y las pulsaciones de botones en grupos, supergrupos y canales aún no están admitidos.`,inBotFather:`En BotFather:`,intro:`Los bots de Telegram se crean enviando un mensaje a <strong>@BotFather</strong>. Ábrelo, sigue las indicaciones y vuelve con el token que te dé.`,next:`Siguiente`,openBotFather:`Abrir BotFather`,stepDisplayName:`Dale un nombre visible, que es lo que la gente ve en el chat`,stepSendNewBot:`Envía <strong>/newbot</strong>`,stepTokenReply:`BotFather responde con un token después de <strong>Use this token to access the HTTP API</strong>`,stepUsername:`Dale un nombre de usuario, que debe ser único y terminar en <strong>bot</strong>`},Fe={channelLabel:`Telegram`,copyError:`No se pudo copiar el nombre. Escríbelo en BotFather en su lugar.`,stepConnect:`Conectar`,stepCreate:`Crear bot`},Ie={shopifyLabel:`Dominio de la tienda`,shopifyPlaceholder:`tu-tienda.myshopify.com`},Le={recoveryModeBanner:`Modo de recuperación activo: esta sesión está conectada al terminal de depuración.`},Re={accentFill:`Relleno de acento`,activeBorder:`Borde activo`,activeSurface:`Superficie activa`,assistantBubble:`Una respuesta del asistente, a ancho completo sobre la superficie de la página.`,buttonDisabled:`Deshabilitado`,buttonPrimary:`Principal`,buttonSecondary:`Secundario`,chatAssistant1:`Listo. El resumen está preparado. Los ingresos crecieron de forma constante, los dos riesgos señalados del trimestre pasado están resueltos y reuní en una página aparte los tres gráficos que conviene mostrar.`,chatAssistant2:`Programado para las 9:00. Incluiré los gráficos y una versión de un párrafo para quien lo revise en el teléfono.`,chatUser1:`¿Puedes resumir el informe trimestral antes de la reunión de mañana?`,chatUser2:`Perfecto. Envíalo al equipo por la mañana.`,composerPlaceholder:`Escribe a tu asistente`,faintText:`Texto tenue: el último escalón legible de la rampa.`,inputFilled:`Texto que alguien ya ha escrito en un campo.`,inputPlaceholder:`Un marcador de posición en un campo vacío`,newConversation:`Nueva conversación`,overlaySurface:`Superficie de superposición`,primaryText:`Texto principal: la superficie de lectura principal de la app.`,quietText:`Texto discreto: metadatos y marcas de tiempo.`,raisedCard:`Tarjeta elevada`,raisedCardBody:`Las superficies elevadas se sitúan por encima de los paneles y del fondo de la página.`,samplerTitle:`Muestreador de tema`,secondaryText:`Texto secundario: textos de apoyo y descripciones.`,sectionAccent:`Acento`,sectionButtons:`Botones`,sectionInputs:`Campos`,sectionMessages:`Mensajes`,sectionSurfaces:`Superficies y bordes`,sectionText:`Texto`,send:`Enviar`,subtleDivider:`Divisor sutil encima de esta línea.`,tertiaryText:`Texto terciario: pies de foto, etiquetas y marcadores de posición.`,userBubble:`Un mensaje del usuario, en su burbuja.`},ze={dark:`Oscuro`,label:`Tema`,light:`Claro`,system:`Sistema`,velvet:`Velvet`},Be={apiKey:`Clave de API`,apiKeyRequired:`Guarda una clave de API para este proveedor antes de probar.`,chooseFromCatalog:`Elegir del catálogo`,customVoiceIdAriaLabel:`ID de voz personalizado`,noManagedVoices:`No hay voces gestionadas disponibles en este momento.`,provider:`Proveedor`,providerAriaLabel:`Proveedor de TTS`,saveFailed:`No se pudieron guardar los ajustes de texto a voz`,saved:`Ajustes de texto a voz guardados`,test:`Probar`,testing:`Probando…`,voice:`Voz`,voiceId:`ID de voz`,voiceIdPlaceholder:`Introduce un ID de voz`},Ve={available:`Actualización disponible. Iniciando descarga…`,closeAriaLabel:`Cerrar`,downloading:`Descargando actualización…`,ready:`Vellum {version} está listo.`,restartToInstall:`Reiniciar para instalar`,versionFallback:`actualización`},He={deleteFailed:`No se pudo eliminar la app`},Ue={copyFailed:`No se pudo copiar el enlace. Ábrelo en {url}`,linkCopied:`Enlace copiado`,open:`Abrir`},We={setupPrompt:{slack:`Quiero comunicarme contigo por Slack. Vamos a configurarlo.`,telegram:`Quiero comunicarme contigo por Telegram. Vamos a configurarlo.`,discord:`Quiero comunicarme contigo por Discord. Vamos a configurarlo.`,email:`Quiero enviarte correos. Vamos a configurar tu dirección de correo.`,phone:`Quiero poder llamarte. Vamos a conseguirte un número de teléfono.`},finishPrompt:{slack:`Slack está configurado pero no funciona. ¿Puedes terminarlo?`,telegram:`Telegram está configurado pero no funciona. ¿Puedes terminarlo?`,discord:`Discord está configurado pero no funciona. ¿Puedes terminarlo?`,email:`Mi dirección de correo está configurada pero no funciona. ¿Puedes terminarla?`,phone:`Mi número de teléfono está configurado pero no funciona. ¿Puedes terminarlo?`}},Ge={addFailed:`No se pudo marcar el mensaje.`,removeFailed:`No se pudo quitar el marcador.`},Ke={exchangeFailed:`Comprueba la clave pegada e inténtalo de nuevo.`,failed:`No se pudo conectar Claude. Inténtalo de nuevo.`,notStarted:`Primero inicia el flujo de Connect Claude.`,pasteEmpty:`Pega el código que se muestra en la página de Claude.`,popupBlocked:`Tu navegador bloqueó la pestaña de inicio de sesión. Permite las ventanas emergentes para este sitio y vuelve a hacer clic en Conectar.`,startFailed:`No se pudo iniciar Connect Claude. Inténtalo de nuevo.`,timedOut:`Se agotó el tiempo de espera para conectar Claude. Inténtalo de nuevo.`},qe={accountConnected:`Cuenta de {name} conectada.`,authorizationError:`Error de {name}: {code}`,authorizationFailed:`La autorización de {name} falló`,popupBlocked:`Ventana emergente bloqueada. Permite las ventanas emergentes e inténtalo de nuevo.`,startFailed:`No se pudo iniciar la autorización de {name}.`,startFailedWithReason:`No se pudo iniciar la autorización de {name}: {reason}`},Je={blocked:`Tu navegador bloqueó una página que el asistente intentó abrir.`,openPage:`Abrir página`},Ye={playFailed:`No se pudo reproducir la muestra de voz.`},Xe={updated:`Tema actualizado`},Ze={body:`Introduce tu token de API de Vercel para publicar apps como páginas estáticas.`,cancel:`Cancelar`,createToken:`Crear un token en Vercel →`,save:`Guardar`,saveFailed:`No se pudo guardar el token de Vercel.`,saving:`Guardando…`,title:`Conectar Vercel`,tokenLabel:`Token de API`,tokenPlaceholder:`Token de API de Vercel`},Qe={assistantVoiceAriaLabel:`Voz del asistente`,defaultSuffix:`(predeterminada)`,previewVoice:`Vista previa de {description}`,providerAriaLabel:`Proveedor de voz`,stopPreview:`Detener vista previa`},$e={ariaLabel:`Voz`,selectVoice:`Selecciona una voz`},et={done:`Listo`,title:`Voces`},tt={body:`Los proveedores de voz, la transcripción y las claves de API están en <modelsLink>Modelos y servicios</modelsLink>.`},nt={recommendedOff:`Recomendado desactivado`},rt={developer:`Desarrollador`,file:`Archivo`,help:`Ayuda`,view:`Ver`},it={checkingDomain:`Comprobando dominio…`,domainVerified:`Dominio verificado`,failedTitle:`La verificación del dominio falló. Es posible que los registros DNS no se hayan propagado correctamente. Puedes intentar liberar y volver a registrar el dominio.`,unknownStatus:`Estado desconocido`,unknownStatusTitle:`No se pudo obtener el estado de verificación del dominio.`,verificationFailed:`Verificación fallida`,verifiedTitle:`Los registros DNS se han verificado. Tu dominio está listo para enviar y recibir correo.`,verifyingDomain:`Verificando dominio…`,verifyingTitle:`Los registros DNS se han aprovisionado. Esperando a que el proveedor de correo los verifique; esto suele tardar unos minutos.`,setupRequired:`Configuración del dominio requerida`,setupRequiredTitle:`Este dominio no se ha aprovisionado con el proveedor de correo. No puede enviar ni recibir correo hasta completar la configuración.`},at={body:`Los servicios administrados se miden y se deducen del saldo de tu cuenta de Vellum. <link>Ver precios</link>`},ot={managedLabel:`Administrado`,modeToggleAriaLabel:`Modo de servicio`,yourOwnLabel:`Propio`},st={aboutPage:e,activeAssistantGate:t,addCredentialModal:n,addCreditsModal:r,appCard:i,appNavBar:a,appViewerContainer:o,assistantConnect:s,assistantFeatureFlagStore:c,avatarManagementModal:l,bundleConfirmPage:u,byoVoiceNote:d,channelSetupCompleteNotice:f,chatAvatar:p,chooserAvatarChip:m,collapsibleNavSection:h,commandPalette:g,companionIntro:_,companionPopover:v,companionSurface:y,companionWatchFramePage:b,contentActionBar:x,conversationTitle:S,createAssistantDialog:C,dateRangeSelect:w,deleteAppDialog:T,deployDialogs:E,deployStore:D,detailPanelStopButton:O,detailPrimitives:k,dictationOverlayPage:A,discordNudgeBanner:j,discordSetupConnectStep:M,discordSetupCreateStep:N,discordSetupFinishStep:P,discordSetupInviteStep:F,discordSetupWizard:I,diskPressureBanner:L,downloadFeedback:R,editFooter:z,generateInviteLinkDialog:B,githubNudgeBanner:V,lazyBoundary:H,localNotification:U,desktopAppBanner:W,nativeAppBanner:G,notFound:K,nudgeChatBanner:q,onboardingBackButton:J,platformLoginNotice:Y,profileCard:X,profileQuickAddProvider:Z,quickInputPage:Q,referralContent:$,referralModal:ee,removeFromDeviceDialog:te,resourcePressureBanner:ne,retireConfirmDialog:re,rootHydrateFallback:ie,routePendingIndicator:ae,rootLayout:oe,routeErrorBoundary:se,runtimeUpgradeBanner:ce,sectionActionsButton:le,serviceFormControls:ue,shareConnectionLinkButton:de,shareFeedbackModal:fe,shareFeedbackModalFallback:pe,shareFeedbackModalLoadError:me,sideListDrawer:he,sidebarShell:ge,sidebarTree:_e,skillLineageLink:ve,skillRemovalDialog:ye,slackSetupCreateStep:be,slackSetupNameStep:xe,slackSetupOpenStep:Se,slackSetupTokensStep:Ce,slackSetupWizard:we,stackedBarTooltip:Te,startupFailure:Ee,statusBanner:De,sttLanguagePicker:Oe,sttLanguagePickerModal:ke,sttProviderForm:Ae,subagentAvatarChip:je,systemPermissionsCard:Me,telegramSetupConnectStep:Ne,telegramSetupCreateStep:Pe,telegramSetupWizard:Fe,tenantHost:Ie,terminalPanel:Le,themeStagePage:Re,themeToggle:ze,ttsProviderForm:Be,updateToast:Ve,useAppDelete:He,useAppDeployment:Ue,useAssistantChannels:We,useBookmarks:Ge,useConnectClaude:Ke,useOauthConnect:qe,useOpenUrlDirectives:Je,useVoiceSamplePreview:Ye,useWorkspaceTheme:Xe,vercelTokenDialog:Ze,voiceList:Qe,voicePickerField:$e,voicePickerModal:et,voiceProvidersNote:tt,voiceTranscriptToggles:nt,windowsMenuBar:rt,domainVerificationChip:it,managedServicesBanner:at,serviceCard:ot};export{e as aboutPage,t as activeAssistantGate,n as addCredentialModal,r as addCreditsModal,i as appCard,a as appNavBar,o as appViewerContainer,s as assistantConnect,c as assistantFeatureFlagStore,l as avatarManagementModal,u as bundleConfirmPage,d as byoVoiceNote,f as channelSetupCompleteNotice,p as chatAvatar,m as chooserAvatarChip,h as collapsibleNavSection,g as commandPalette,_ as companionIntro,v as companionPopover,y as companionSurface,b as companionWatchFramePage,x as contentActionBar,S as conversationTitle,C as createAssistantDialog,w as dateRangeSelect,st as default,T as deleteAppDialog,E as deployDialogs,D as deployStore,W as desktopAppBanner,O as detailPanelStopButton,k as detailPrimitives,A as dictationOverlayPage,j as discordNudgeBanner,M as discordSetupConnectStep,N as discordSetupCreateStep,P as discordSetupFinishStep,F as discordSetupInviteStep,I as discordSetupWizard,L as diskPressureBanner,it as domainVerificationChip,R as downloadFeedback,z as editFooter,B as generateInviteLinkDialog,V as githubNudgeBanner,H as lazyBoundary,U as localNotification,at as managedServicesBanner,G as nativeAppBanner,K as notFound,q as nudgeChatBanner,J as onboardingBackButton,Y as platformLoginNotice,X as profileCard,Z as profileQuickAddProvider,Q as quickInputPage,$ as referralContent,ee as referralModal,te as removeFromDeviceDialog,ne as resourcePressureBanner,re as retireConfirmDialog,ie as rootHydrateFallback,oe as rootLayout,se as routeErrorBoundary,ae as routePendingIndicator,ce as runtimeUpgradeBanner,le as sectionActionsButton,ot as serviceCard,ue as serviceFormControls,de as shareConnectionLinkButton,fe as shareFeedbackModal,pe as shareFeedbackModalFallback,me as shareFeedbackModalLoadError,he as sideListDrawer,ge as sidebarShell,_e as sidebarTree,ve as skillLineageLink,ye as skillRemovalDialog,be as slackSetupCreateStep,xe as slackSetupNameStep,Se as slackSetupOpenStep,Ce as slackSetupTokensStep,we as slackSetupWizard,Te as stackedBarTooltip,Ee as startupFailure,De as statusBanner,Oe as sttLanguagePicker,ke as sttLanguagePickerModal,Ae as sttProviderForm,je as subagentAvatarChip,Me as systemPermissionsCard,Ne as telegramSetupConnectStep,Pe as telegramSetupCreateStep,Fe as telegramSetupWizard,Ie as tenantHost,Le as terminalPanel,Re as themeStagePage,ze as themeToggle,Be as ttsProviderForm,Ve as updateToast,He as useAppDelete,Ue as useAppDeployment,We as useAssistantChannels,Ge as useBookmarks,Ke as useConnectClaude,qe as useOauthConnect,Je as useOpenUrlDirectives,Ye as useVoiceSamplePreview,Xe as useWorkspaceTheme,Ze as vercelTokenDialog,Qe as voiceList,$e as voicePickerField,et as voicePickerModal,tt as voiceProvidersNote,nt as voiceTranscriptToggles,rt as windowsMenuBar};
@@ -1 +1 @@
1
- import{D as e,Ix as t,O as n,Ux as r,Vx as i,bs as a,hi as o,k as s}from"./app-DFXcEvsi.js";import{j as c}from"./vendor-DYOeoIwg.js";import{t as l}from"./react-B9IgSVeK.js";import{H as u,Ia as d,Ja as f,Q as p,Rt as m,Sr as h,Xr as g,fa as _,hr as v,v as y}from"./icons-QG1KAFmx.js";var b=f(`git-pull-request`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M13 6h3a2 2 0 0 1 2 2v7`,key:`1yeb86`}],[`line`,{x1:`6`,x2:`6`,y1:`9`,y2:`21`,key:`rroup`}]]),x=l();function S({size:e=24,className:t,style:n}){return(0,x.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,width:e,height:e,fill:`currentColor`,className:t,style:n,"aria-hidden":!0,children:(0,x.jsx)(`path`,{d:`M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12`})})}function C({size:e=24,className:t,style:n}){return(0,x.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,width:e,height:e,fill:`currentColor`,className:t,style:n,"aria-hidden":!0,children:(0,x.jsx)(`path`,{d:`M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z`})})}function w({size:e=24,className:t,style:n}){return(0,x.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,width:e,height:e,fill:`currentColor`,className:t,style:n,"aria-hidden":!0,children:(0,x.jsx)(`path`,{d:`M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814ZM9.545 15.568V8.432L15.818 12l-6.273 3.568Z`})})}function T({t:e}){return(0,x.jsx)(i,{padding:`lg`,className:`bg-[var(--surface-lift)]`,children:(0,x.jsxs)(`div`,{className:`relative`,children:[(0,x.jsx)(`div`,{className:`pointer-events-none absolute -right-16 -top-16 h-64 w-64 rounded-full opacity-30 blur-3xl`,style:{background:`radial-gradient(circle, var(--system-mid-weak) 0%, transparent 70%)`},"aria-hidden":!0}),(0,x.jsxs)(`div`,{className:`relative flex flex-col items-start gap-3`,children:[(0,x.jsxs)(t,{tone:`neutral`,children:[(0,x.jsx)(m,{className:`h-3.5 w-3.5`}),e(`communityPage.heroTag`)]}),(0,x.jsx)(`h1`,{className:`text-[28px] font-semibold leading-tight tracking-tight text-[var(--content-emphasised)]`,children:e(`communityPage.heroTitle`)}),(0,x.jsx)(`p`,{className:`max-w-xl text-body-medium-default text-[color:var(--content-tertiary)]`,children:e(`communityPage.heroDescription`)})]})]})})}function E({icon:e,text:t}){return(0,x.jsxs)(`li`,{className:`flex items-center gap-3`,children:[(0,x.jsx)(`span`,{className:`flex size-7 shrink-0 items-center justify-center rounded-md bg-[var(--surface-base)]`,children:(0,x.jsx)(e,{size:14,className:`text-[var(--content-secondary)]`,"aria-hidden":!0})}),(0,x.jsx)(`span`,{className:`text-body-medium-lighter text-[color:var(--content-secondary)]`,children:t})]})}function D({accentColor:e,iconColor:t=`var(--aux-white)`,label:n,icon:a,title:o,subtitle:s,benefits:c,primaryAction:l,secondaryAction:u}){return(0,x.jsx)(i,{padding:`lg`,className:`flex-1`,children:(0,x.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,x.jsxs)(`div`,{className:`flex items-start justify-between`,children:[(0,x.jsx)(`span`,{className:`flex size-10 items-center justify-center rounded-lg`,style:{backgroundColor:e,color:t},children:a}),(0,x.jsx)(`span`,{className:`text-label-medium-default uppercase tracking-wider text-[color:var(--content-tertiary)]`,children:n})]}),(0,x.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,x.jsx)(`h2`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:o}),(0,x.jsx)(`p`,{className:`text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:s})]}),(0,x.jsx)(`ul`,{className:`flex flex-col gap-3`,children:c.map(({icon:e,text:t})=>(0,x.jsx)(E,{icon:e,text:t},t))}),(0,x.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,x.jsxs)(r,{onClick:l.onClick,children:[l.icon,l.label]}),u&&(0,x.jsxs)(r,{variant:`ghost`,onClick:()=>window.open(u.href,`_blank`,`noopener,noreferrer`),children:[u.label,(0,x.jsx)(d,{className:`h-3.5 w-3.5`})]})]})]})})}function O({icon:e,iconBg:t,iconColor:n=`white`,title:r,description:a,href:o}){return(0,x.jsx)(`a`,{href:o,target:`_blank`,rel:`noopener noreferrer`,className:`flex flex-1 cursor-pointer`,children:(0,x.jsx)(i,{className:`flex-1 transition-shadow hover:shadow-md`,padding:`lg`,children:(0,x.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,x.jsxs)(`div`,{className:`flex items-start justify-between`,children:[(0,x.jsx)(`span`,{className:`flex size-10 items-center justify-center rounded-lg`,style:{backgroundColor:t,color:n},children:e}),(0,x.jsx)(g,{size:14,className:`text-[var(--content-tertiary)]`,"aria-hidden":!0})]}),(0,x.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,x.jsx)(`span`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:r}),(0,x.jsx)(`p`,{className:`text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:a})]})]})})})}function k(){let{t}=c(`settings`),{handleStar:r}=s();return(0,x.jsxs)(`div`,{className:`space-y-6`,children:[(0,x.jsx)(T,{t}),(0,x.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-2`,children:[(0,x.jsx)(D,{accentColor:`var(--content-emphasised)`,iconColor:`var(--surface-base)`,label:t(`communityPage.openSourceLabel`),icon:(0,x.jsx)(S,{size:20}),title:t(`communityPage.openSourceTitle`),subtitle:t(`communityPage.openSourceSubtitle`),benefits:[{icon:u,text:t(`communityPage.openSourceBenefitStar`)},{icon:_,text:t(`communityPage.openSourceBenefitIssues`)},{icon:b,text:t(`communityPage.openSourceBenefitContribute`)}],primaryAction:{label:t(`communityPage.starOnGitHub`),icon:(0,x.jsx)(u,{size:16}),onClick:r},secondaryAction:{label:t(`communityPage.viewSource`),href:n}}),(0,x.jsx)(D,{accentColor:`#5865F2`,label:t(`communityPage.discordLabel`),icon:(0,x.jsx)(o,{size:20}),title:t(`communityPage.discordTitle`),subtitle:t(`communityPage.discordSubtitle`),benefits:[{icon:v,text:t(`communityPage.discordBenefitTeam`)},{icon:p,text:t(`communityPage.discordBenefitFeedback`)},{icon:y,text:t(`communityPage.discordBenefitAnswers`)}],primaryAction:{label:t(`communityPage.joinDiscord`),icon:(0,x.jsx)(o,{size:16,style:{color:`currentColor`}}),onClick:e}})]}),(0,x.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,x.jsx)(`h2`,{className:`text-label-medium-default uppercase tracking-wider text-[color:var(--content-tertiary)]`,children:t(`communityPage.moreFromVellum`)}),(0,x.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-3`,children:[(0,x.jsx)(O,{icon:(0,x.jsx)(h,{size:20}),iconBg:`#22c55e`,title:t(`communityPage.communityHubTitle`),description:t(`communityPage.communityHubDescription`),href:a}),(0,x.jsx)(O,{icon:(0,x.jsx)(C,{size:20}),iconBg:`var(--content-default)`,iconColor:`var(--surface-base)`,title:t(`communityPage.followOnXTitle`),description:t(`communityPage.followOnXDescription`),href:`https://x.com/vellum_ai`}),(0,x.jsx)(O,{icon:(0,x.jsx)(w,{size:20}),iconBg:`#ef4444`,title:t(`communityPage.youtubeChannelTitle`),description:t(`communityPage.youtubeChannelDescription`),href:`https://www.youtube.com/@Vellum_AI`})]})]})]})}export{k as CommunityPage};
1
+ import{D as e,Hx as t,Lx as n,O as r,Wx as i,bs as a,hi as o,k as s}from"./app-Tg6YU_tZ.js";import{j as c}from"./vendor-DYOeoIwg.js";import{t as l}from"./react-B9IgSVeK.js";import{H as u,Ia as d,Ja as f,Q as p,Rt as m,Sr as h,Xr as g,fa as _,hr as v,v as y}from"./icons-QG1KAFmx.js";var b=f(`git-pull-request`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M13 6h3a2 2 0 0 1 2 2v7`,key:`1yeb86`}],[`line`,{x1:`6`,x2:`6`,y1:`9`,y2:`21`,key:`rroup`}]]),x=l();function S({size:e=24,className:t,style:n}){return(0,x.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,width:e,height:e,fill:`currentColor`,className:t,style:n,"aria-hidden":!0,children:(0,x.jsx)(`path`,{d:`M12 .297c-6.63 0-12 5.373-12 12 0 5.303 3.438 9.8 8.205 11.385.6.113.82-.258.82-.577 0-.285-.01-1.04-.015-2.04-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729 1.205.084 1.838 1.236 1.838 1.236 1.07 1.835 2.809 1.305 3.495.998.108-.776.417-1.305.76-1.605-2.665-.3-5.466-1.332-5.466-5.93 0-1.31.465-2.38 1.235-3.22-.135-.303-.54-1.523.105-3.176 0 0 1.005-.322 3.3 1.23.96-.267 1.98-.399 3-.405 1.02.006 2.04.138 3 .405 2.28-1.552 3.285-1.23 3.285-1.23.645 1.653.24 2.873.12 3.176.765.84 1.23 1.91 1.23 3.22 0 4.61-2.805 5.625-5.475 5.92.42.36.81 1.096.81 2.22 0 1.606-.015 2.896-.015 3.286 0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12`})})}function C({size:e=24,className:t,style:n}){return(0,x.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,width:e,height:e,fill:`currentColor`,className:t,style:n,"aria-hidden":!0,children:(0,x.jsx)(`path`,{d:`M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z`})})}function w({size:e=24,className:t,style:n}){return(0,x.jsx)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 24 24`,width:e,height:e,fill:`currentColor`,className:t,style:n,"aria-hidden":!0,children:(0,x.jsx)(`path`,{d:`M23.498 6.186a3.016 3.016 0 0 0-2.122-2.136C19.505 3.545 12 3.545 12 3.545s-7.505 0-9.377.505A3.017 3.017 0 0 0 .502 6.186C0 8.07 0 12 0 12s0 3.93.502 5.814a3.016 3.016 0 0 0 2.122 2.136c1.871.505 9.376.505 9.376.505s7.505 0 9.377-.505a3.015 3.015 0 0 0 2.122-2.136C24 15.93 24 12 24 12s0-3.93-.502-5.814ZM9.545 15.568V8.432L15.818 12l-6.273 3.568Z`})})}function T({t:e}){return(0,x.jsx)(t,{padding:`lg`,className:`bg-[var(--surface-lift)]`,children:(0,x.jsxs)(`div`,{className:`relative`,children:[(0,x.jsx)(`div`,{className:`pointer-events-none absolute -right-16 -top-16 h-64 w-64 rounded-full opacity-30 blur-3xl`,style:{background:`radial-gradient(circle, var(--system-mid-weak) 0%, transparent 70%)`},"aria-hidden":!0}),(0,x.jsxs)(`div`,{className:`relative flex flex-col items-start gap-3`,children:[(0,x.jsxs)(n,{tone:`neutral`,children:[(0,x.jsx)(m,{className:`h-3.5 w-3.5`}),e(`communityPage.heroTag`)]}),(0,x.jsx)(`h1`,{className:`text-[28px] font-semibold leading-tight tracking-tight text-[var(--content-emphasised)]`,children:e(`communityPage.heroTitle`)}),(0,x.jsx)(`p`,{className:`max-w-xl text-body-medium-default text-[color:var(--content-tertiary)]`,children:e(`communityPage.heroDescription`)})]})]})})}function E({icon:e,text:t}){return(0,x.jsxs)(`li`,{className:`flex items-center gap-3`,children:[(0,x.jsx)(`span`,{className:`flex size-7 shrink-0 items-center justify-center rounded-md bg-[var(--surface-base)]`,children:(0,x.jsx)(e,{size:14,className:`text-[var(--content-secondary)]`,"aria-hidden":!0})}),(0,x.jsx)(`span`,{className:`text-body-medium-lighter text-[color:var(--content-secondary)]`,children:t})]})}function D({accentColor:e,iconColor:n=`var(--aux-white)`,label:r,icon:a,title:o,subtitle:s,benefits:c,primaryAction:l,secondaryAction:u}){return(0,x.jsx)(t,{padding:`lg`,className:`flex-1`,children:(0,x.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,x.jsxs)(`div`,{className:`flex items-start justify-between`,children:[(0,x.jsx)(`span`,{className:`flex size-10 items-center justify-center rounded-lg`,style:{backgroundColor:e,color:n},children:a}),(0,x.jsx)(`span`,{className:`text-label-medium-default uppercase tracking-wider text-[color:var(--content-tertiary)]`,children:r})]}),(0,x.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,x.jsx)(`h2`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:o}),(0,x.jsx)(`p`,{className:`text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:s})]}),(0,x.jsx)(`ul`,{className:`flex flex-col gap-3`,children:c.map(({icon:e,text:t})=>(0,x.jsx)(E,{icon:e,text:t},t))}),(0,x.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,x.jsxs)(i,{onClick:l.onClick,children:[l.icon,l.label]}),u&&(0,x.jsxs)(i,{variant:`ghost`,onClick:()=>window.open(u.href,`_blank`,`noopener,noreferrer`),children:[u.label,(0,x.jsx)(d,{className:`h-3.5 w-3.5`})]})]})]})})}function O({icon:e,iconBg:n,iconColor:r=`white`,title:i,description:a,href:o}){return(0,x.jsx)(`a`,{href:o,target:`_blank`,rel:`noopener noreferrer`,className:`flex flex-1 cursor-pointer`,children:(0,x.jsx)(t,{className:`flex-1 transition-shadow hover:shadow-md`,padding:`lg`,children:(0,x.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,x.jsxs)(`div`,{className:`flex items-start justify-between`,children:[(0,x.jsx)(`span`,{className:`flex size-10 items-center justify-center rounded-lg`,style:{backgroundColor:n,color:r},children:e}),(0,x.jsx)(g,{size:14,className:`text-[var(--content-tertiary)]`,"aria-hidden":!0})]}),(0,x.jsxs)(`div`,{className:`flex flex-col gap-2`,children:[(0,x.jsx)(`span`,{className:`text-title-medium text-[var(--content-emphasised)]`,children:i}),(0,x.jsx)(`p`,{className:`text-body-medium-lighter text-[color:var(--content-tertiary)]`,children:a})]})]})})})}function k(){let{t}=c(`settings`),{handleStar:n}=s();return(0,x.jsxs)(`div`,{className:`space-y-6`,children:[(0,x.jsx)(T,{t}),(0,x.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-2`,children:[(0,x.jsx)(D,{accentColor:`var(--content-emphasised)`,iconColor:`var(--surface-base)`,label:t(`communityPage.openSourceLabel`),icon:(0,x.jsx)(S,{size:20}),title:t(`communityPage.openSourceTitle`),subtitle:t(`communityPage.openSourceSubtitle`),benefits:[{icon:u,text:t(`communityPage.openSourceBenefitStar`)},{icon:_,text:t(`communityPage.openSourceBenefitIssues`)},{icon:b,text:t(`communityPage.openSourceBenefitContribute`)}],primaryAction:{label:t(`communityPage.starOnGitHub`),icon:(0,x.jsx)(u,{size:16}),onClick:n},secondaryAction:{label:t(`communityPage.viewSource`),href:r}}),(0,x.jsx)(D,{accentColor:`#5865F2`,label:t(`communityPage.discordLabel`),icon:(0,x.jsx)(o,{size:20}),title:t(`communityPage.discordTitle`),subtitle:t(`communityPage.discordSubtitle`),benefits:[{icon:v,text:t(`communityPage.discordBenefitTeam`)},{icon:p,text:t(`communityPage.discordBenefitFeedback`)},{icon:y,text:t(`communityPage.discordBenefitAnswers`)}],primaryAction:{label:t(`communityPage.joinDiscord`),icon:(0,x.jsx)(o,{size:16,style:{color:`currentColor`}}),onClick:e}})]}),(0,x.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,x.jsx)(`h2`,{className:`text-label-medium-default uppercase tracking-wider text-[color:var(--content-tertiary)]`,children:t(`communityPage.moreFromVellum`)}),(0,x.jsxs)(`div`,{className:`grid grid-cols-1 gap-4 md:grid-cols-3`,children:[(0,x.jsx)(O,{icon:(0,x.jsx)(h,{size:20}),iconBg:`#22c55e`,title:t(`communityPage.communityHubTitle`),description:t(`communityPage.communityHubDescription`),href:a}),(0,x.jsx)(O,{icon:(0,x.jsx)(C,{size:20}),iconBg:`var(--content-default)`,iconColor:`var(--surface-base)`,title:t(`communityPage.followOnXTitle`),description:t(`communityPage.followOnXDescription`),href:`https://x.com/vellum_ai`}),(0,x.jsx)(O,{icon:(0,x.jsx)(w,{size:20}),iconBg:`#ef4444`,title:t(`communityPage.youtubeChannelTitle`),description:t(`communityPage.youtubeChannelDescription`),href:`https://www.youtube.com/@Vellum_AI`})]})]})]})}export{k as CommunityPage};
@@ -1 +1 @@
1
- import{gm as e}from"./app-DFXcEvsi.js";var t=`#5eead4`,n=/^#[0-9a-f]{6}$/i;function r(e){return e!==void 0&&n.test(e)?e:void 0}function i(t,n,i){return(t===null?void 0:r(t.accentHex))??r(n)??e(i?.color)??void 0}export{i as n,t};
1
+ import{_m as e}from"./app-Tg6YU_tZ.js";var t=`#5eead4`,n=/^#[0-9a-f]{6}$/i;function r(e){return e!==void 0&&n.test(e)?e:void 0}function i(t,n,i){return(t===null?void 0:r(t.accentHex))??r(n)??e(i?.color)??void 0}export{i as n,t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Js as t,lc as n,mh as r}from"./app-DFXcEvsi.js";import{t as i,x as a}from"./react-B9IgSVeK.js";import{n as o}from"./companion-accent-pu5Xu8Z6.js";var s=e(a(),1),c=i(),l=10,u=e=>{let t=l;switch(e){case`top`:return{top:t,left:`50%`,translate:`-50% 0`,width:360,height:44};case`bottom`:return{bottom:t,left:`50%`,translate:`-50% 0`,width:360,height:44};case`left`:return{left:t,top:`50%`,translate:`0 -50%`,height:360,width:44};case`right`:return{right:t,top:`50%`,translate:`0 -50%`,height:360,width:44}}};function d(){let[e,i]=(0,s.useState)(null);(0,s.useEffect)(()=>{let e=n(i);return t().then(e=>{e&&i(e)}),e},[]);let a=e?.docking;if(a===void 0)return null;let l=o(e?.call??null,e?.accentHex,e?.character)??`#5eead4`;return(0,c.jsx)(`div`,{className:`pointer-events-none relative h-screen w-screen bg-transparent select-none`,"data-testid":`companion-dock-zones`,style:{"--companion-ring-accent":l},"aria-hidden":!0,children:r.map(e=>{let t=e===a;return(0,c.jsx)(`div`,{className:`absolute rounded-2xl transition-[background-color,border-color,box-shadow] duration-150`,"data-testid":`companion-dock-zone`,"data-dock":e,"data-armed":t?`true`:`false`,style:{...u(e),backgroundColor:`color-mix(in srgb, var(--companion-ring-accent) ${t?26:9}%, transparent)`,border:`1.5px ${t?`solid`:`dashed`} color-mix(in srgb, var(--companion-ring-accent) ${t?90:45}%, transparent)`,boxShadow:t?`0 0 24px color-mix(in srgb, var(--companion-ring-accent) 45%, transparent), inset 0 0 24px color-mix(in srgb, var(--companion-ring-accent) 25%, transparent)`:void 0}},e)})})}export{d as CompanionDockZonesPage};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Js as t,hh as n,lc as r}from"./app-Tg6YU_tZ.js";import{t as i,x as a}from"./react-B9IgSVeK.js";import{n as o}from"./companion-accent-C3xBrXHO.js";var s=e(a(),1),c=i(),l=10,u=e=>{let t=l;switch(e){case`top`:return{top:t,left:`50%`,translate:`-50% 0`,width:360,height:44};case`bottom`:return{bottom:t,left:`50%`,translate:`-50% 0`,width:360,height:44};case`left`:return{left:t,top:`50%`,translate:`0 -50%`,height:360,width:44};case`right`:return{right:t,top:`50%`,translate:`0 -50%`,height:360,width:44}}};function d(){let[e,i]=(0,s.useState)(null);(0,s.useEffect)(()=>{let e=r(i);return t().then(e=>{e&&i(e)}),e},[]);let a=e?.docking;if(a===void 0)return null;let l=o(e?.call??null,e?.accentHex,e?.character)??`#5eead4`;return(0,c.jsx)(`div`,{className:`pointer-events-none relative h-screen w-screen bg-transparent select-none`,"data-testid":`companion-dock-zones`,style:{"--companion-ring-accent":l},"aria-hidden":!0,children:n.map(e=>{let t=e===a;return(0,c.jsx)(`div`,{className:`absolute rounded-2xl transition-[background-color,border-color,box-shadow] duration-150`,"data-testid":`companion-dock-zone`,"data-dock":e,"data-armed":t?`true`:`false`,style:{...u(e),backgroundColor:`color-mix(in srgb, var(--companion-ring-accent) ${t?26:9}%, transparent)`,border:`1.5px ${t?`solid`:`dashed`} color-mix(in srgb, var(--companion-ring-accent) ${t?90:45}%, transparent)`,boxShadow:t?`0 0 24px color-mix(in srgb, var(--companion-ring-accent) 45%, transparent), inset 0 0 24px color-mix(in srgb, var(--companion-ring-accent) 25%, transparent)`:void 0}},e)})})}export{d as CompanionDockZonesPage};
@@ -1 +1 @@
1
- import{_h as e,bh as t,vh as n,yh as r}from"./app-DFXcEvsi.js";var i=(e,t,n)=>t>=e.left&&t<=e.right&&n>=e.top&&n<=e.bottom,a=(e,t)=>{if(t.top>=e.bottom)return{left:t.left,right:t.right,top:e.bottom,bottom:t.top};let n={top:t.top,bottom:t.bottom};return t.left>=e.right?{left:e.right,right:t.left,...n}:{left:t.right,right:e.left,...n}},o=(e,{avatar:t,pill:n})=>{let r=t=>i(t,e.x,e.y);return r(t)?!0:n===null?!1:r(n)||r(a(t,n))};function s(i,a){let o=t(a),s=i/2,c=e(i),l=n(i,a),u=r(i,a),d=e=>e/o,f=Math.max(s,a-c),p=Math.max(s,c);return{scale:o,avatarRel:i/a,avatarHalf:s,baseline:c,gap:l,inUnits:d,lineAt:(e,t)=>e===`up`?`calc(100% - ${d(u-t)}px)`:`${d(u+t)}px`,edgeAt:(e,t)=>{let n=d(t),r=n<0?`calc(50% - ${-n}px)`:`calc(50% + ${n}px)`;return e===`left`?{right:r}:{left:r}},introStepOff:e=>(e===`up`?f:p)+l}}export{i as n,o as r,s as t};
1
+ import{bh as e,vh as t,xh as n,yh as r}from"./app-Tg6YU_tZ.js";var i=(e,t,n)=>t>=e.left&&t<=e.right&&n>=e.top&&n<=e.bottom,a=(e,t)=>{if(t.top>=e.bottom)return{left:t.left,right:t.right,top:e.bottom,bottom:t.top};let n={top:t.top,bottom:t.bottom};return t.left>=e.right?{left:e.right,right:t.left,...n}:{left:t.right,right:e.left,...n}},o=(e,{avatar:t,pill:n})=>{let r=t=>i(t,e.x,e.y);return r(t)?!0:n===null?!1:r(n)||r(a(t,n))};function s(i,a){let o=n(a),s=i/2,c=t(i),l=r(i,a),u=e(i,a),d=e=>e/o,f=Math.max(s,a-c),p=Math.max(s,c);return{scale:o,avatarRel:i/a,avatarHalf:s,baseline:c,gap:l,inUnits:d,lineAt:(e,t)=>e===`up`?`calc(100% - ${d(u-t)}px)`:`${d(u+t)}px`,edgeAt:(e,t)=>{let n=d(t),r=n<0?`calc(50% - ${-n}px)`:`calc(50% + ${n}px)`;return e===`left`?{right:r}:{left:r}},introStepOff:e=>(e===`up`?f:p)+l}}export{i as n,o as r,s as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ha as t,Lx as n,Nr as r,Nx as i,Pr as a,Ux as o,gh as s,lx as c}from"./app-DFXcEvsi.js";import{j as l,lt as u}from"./vendor-DYOeoIwg.js";import{t as d,x as f}from"./react-B9IgSVeK.js";import{W as p,i as m,lr as h,m as g,qi as _}from"./icons-QG1KAFmx.js";var v=e(f(),1),y=d();function b({label:e,selected:n,onPick:r,trailing:i}){return(0,y.jsxs)(`div`,{role:`option`,"aria-selected":n,className:t(`flex min-h-9 items-center gap-2 rounded-lg px-3 py-1.5 transition-colors`,n?`bg-[var(--surface-active)]`:`hover:bg-[var(--surface-hover)]`),onClick:r,children:[(0,y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:e}),i,n?(0,y.jsx)(_,{"aria-hidden":!0,className:`size-4 shrink-0 text-[var(--system-positive-strong)]`}):(0,y.jsx)(`span`,{"aria-hidden":!0,className:`size-4 shrink-0`})]})}function x({label:e,children:t}){return(0,y.jsx)(n,{className:`-mx-2 min-h-0 flex-1`,size:20,fadeEdges:`end`,hideScrollBar:!0,children:(0,y.jsx)(`div`,{role:`listbox`,"aria-label":e,className:`flex flex-col`,children:t})})}function S({popover:e,onAnswer:t}){let{t:n}=l();return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsxs)(x,{label:n(`companionPopover.microphoneTitle`),children:[(0,y.jsx)(b,{label:n(`companionPopover.systemDefault`),selected:e.selected===``,onPick:()=>t?.({kind:`pick`,optionId:``})}),e.options.map(n=>(0,y.jsx)(b,{label:n.label,selected:e.selected===n.id,onPick:()=>t?.({kind:`pick`,optionId:n.id})},n.id))]}),e.needsPermission?(0,y.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:n(`companionPopover.microphonePermissionHint`)}):null]})}function C(){let[e,t]=(0,v.useState)(null),n=(0,v.useRef)(null);return(0,v.useEffect)(()=>()=>{n.current?.pause(),n.current=null},[]),{playing:e,play:(e,r)=>{n.current?.pause();let i=new Audio(r);n.current=i,t(e);let a=()=>{n.current===i&&(n.current=null,t(null))};i.onended=a,i.onerror=a,i.play().catch(a)},stop:()=>{n.current?.pause(),n.current=null,t(null)}}}function w({popover:e,onAnswer:t}){let{t:n}=l(),{playing:r,play:i,stop:a}=C();return(0,y.jsx)(x,{label:n(`companionPopover.voiceTitle`),children:e.groups.map(s=>(0,y.jsxs)(`div`,{role:`group`,"aria-label":s.accent,children:[(0,y.jsx)(`div`,{className:`px-3 pt-3 pb-1 text-label-small-default text-[var(--content-tertiary)]`,children:s.accent}),s.voices.map(s=>{let c=r===s.id;return(0,y.jsx)(b,{label:s.isDefault?(0,y.jsxs)(y.Fragment,{children:[s.label,(0,y.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:` ${n(`companionPopover.defaultSuffix`)}`})]}):s.label,selected:e.selected===s.id,onPick:()=>t?.({kind:`pick`,optionId:s.id}),trailing:s.sampleUrl===``?void 0:(0,y.jsx)(o,{variant:`ghost`,size:`compact`,className:`size-7 shrink-0`,iconOnly:c?(0,y.jsx)(p,{}):(0,y.jsx)(g,{}),"aria-label":c?n(`companionPopover.stopPreview`):n(`companionPopover.previewVoice`,{voice:s.label}),onClick:e=>{e.stopPropagation(),c?a():i(s.id,s.sampleUrl)}})},s.id)})]},s.accent))})}var T=e=>/^https?:\/\//i.test(e)||/^data:image\//i.test(e),E=`border border-white/5 bg-[var(--surface-base)] text-[var(--content-default)] shadow-lg shadow-black/40`,D=e=>`radial-gradient(120% 80% at 0% 0%, ${e===void 0?`transparent`:`color-mix(in srgb, ${e} 7%, transparent)`} 0%, transparent 70%), #17181b`;function O({popover:e,view:n,cardRef:r,onAnswer:i,onView:a,onOpenLink:o,accentHex:s,attached:c=!1,className:u,style:d}){let{t:f}=l();return(e.kind===`approvals`||e.kind===`secret`)&&n!==`expanded`?(0,y.jsx)(`div`,{ref:r,role:`group`,"data-companion-popover":e.kind,className:t(`w-max max-w-[640px] rounded-[22px]`,E,u),style:d,children:(0,y.jsx)(k,{popover:e,onAnswer:i,onView:a})}):(0,y.jsx)(`div`,{ref:r,role:`group`,"data-companion-popover":e.kind,className:t(`flex min-h-0 flex-col gap-3 p-4 text-[var(--content-default)]`,!c&&`rounded-[20px] border border-white/10 shadow-2xl shadow-black/50`,e.kind===`approvals`?`w-max max-w-[640px]`:`w-[360px]`,(e.kind===`microphones`||e.kind===`voices`)&&`gap-2 px-4 pb-3`,u),style:c?d:{background:D(s),...d},children:e.kind===`approvals`?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(I,{title:f(`companionPopover.needsOkCount`,{count:e.items.length}),onClose:()=>a?.(`deferred`)}),(0,y.jsx)(L,{items:e.items,onAnswer:i})]}):e.kind===`secret`?(0,y.jsx)(R,{popover:e,onAnswer:i,onView:a}):e.kind===`microphones`?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(I,{title:f(`companionPopover.microphoneTitle`),onClose:()=>i?.({kind:`dismiss`})}),(0,y.jsx)(S,{popover:e,onAnswer:i})]}):e.kind===`voices`?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(I,{title:f(`companionPopover.voiceTitle`),onClose:()=>i?.({kind:`dismiss`})}),(0,y.jsx)(w,{popover:e,onAnswer:i})]}):(0,y.jsx)(z,{popover:e,onAnswer:i,onOpenLink:o})})}function k({popover:e,onAnswer:n,onView:r,className:i}){let{t:a}=l(),o=e.kind===`approvals`?e.items[0]:void 0,s=e.kind===`approvals`&&e.items.length===1;return(0,y.jsxs)(`div`,{"data-companion-prompt-row":e.kind,className:t(`flex min-h-11 min-w-0 items-center gap-1.5 py-1.5 pr-1.5 text-[var(--content-default)]`,e.kind===`secret`?`pl-2`:`pl-4`,i),children:[e.kind===`secret`?(0,y.jsx)(U,{providerKey:e.providerKey}):null,(0,y.jsx)(P,{className:`min-w-0 flex-1 text-body-medium-default`,maxWidth:A,text:e.kind===`secret`?e.service===``?a(`companionPopover.needsCredentials`):a(`companionPopover.needsCredentialsFor`,{service:e.service}):s&&o!==void 0?o.title:a(`companionPopover.needsOkCount`,{count:e.items.length})}),(0,y.jsx)(`span`,{className:`ml-2 flex shrink-0 items-center gap-1`,children:s&&o!==void 0?(0,y.jsx)(F,{item:o,pill:!0,onAnswer:n}):(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(K,{tone:`secondary`,onClick:()=>r?.(`deferred`),children:a(`companionPopover.notNow`)}),(0,y.jsx)(K,{tone:`primary`,onClick:()=>r?.(`expanded`),children:e.kind===`secret`?a(`companionPopover.enter`):a(`companionPopover.review`)})]})})]})}var A=440,j=400;function M(e,t,n){let r=e.trim().split(/\s+/).filter(e=>e!==``),i=r.length;if(i<2||n(r.join(` `))<=t)return[r.join(` `)];let a=r.map(()=>[]);for(let e=0;e<i;e+=1)for(let t=e+1;t<=i;t+=1)a[e][t]=n(r.slice(e,t).join(` `));let o=(e,t)=>r.slice(e,t).join(` `),s=[];for(let e=0;e<i;){let n=e+1;for(;n<i&&a[e][n+1]<=t;)n+=1;s.push(o(e,n)),e=n}if(s.length<2||i>N)return s;let c=e=>{let n=null;for(let r=i-1;r>=e-1;--r){let o=a[r][i];if(o>t&&r!==i-1)continue;let s=new Map;for(let e=1;e<=r;e+=1)a[0][e]<=o&&s.set(`${e}:0`,{cost:(o-a[0][e])**2,breaks:[0]});for(let t=2;t<=e-1;t+=1){let e=new Map;for(let[t,n]of s){let[i,s]=t.split(`:`).map(Number),c=a[s][i];for(let t=i+1;t<=r;t+=1){let r=a[i][t];if(r<c||r>o)continue;let s=n.cost+(o-r)**2,l=`${t}:${i}`,u=e.get(l);(u===void 0||s<u.cost)&&e.set(l,{cost:s,breaks:[...n.breaks,i]})}}s=e}for(let[e,t]of s){let[i,s]=e.split(`:`).map(Number);i!==r||a[s][i]>o||(n===null||t.cost<n.cost)&&(n={cost:t.cost,breaks:[...t.breaks,r]})}}if(n===null)return null;let r=[...n.breaks,i];return n.breaks.map((e,t)=>o(e,r[t+1]))};for(let e=s.length;e<=i;e+=1){let t=c(e);if(t!==null)return t}return s}var N=48;function P({text:e,maxWidth:t,className:n,title:r}){let i=(0,v.useRef)(null),[a,o]=(0,v.useState)(null);return(0,v.useLayoutEffect)(()=>{let n=i.current;if(n===null)return;let r=!1,a=()=>{if(r)return;let i=document.createElement(`span`);i.style.cssText=`position:absolute;visibility:hidden;white-space:pre;left:0;top:0`,n.appendChild(i);let a=new Map,s=M(e,t,e=>{let t=a.get(e);if(t!==void 0)return t;i.textContent=e;let n=i.getBoundingClientRect().width;return a.set(e,n),n});i.remove(),o(s.length>1?s:null)};return a(),document.fonts?.addEventListener(`loadingdone`,a),document.fonts?.ready.then(a),()=>{r=!0,document.fonts?.removeEventListener(`loadingdone`,a)}},[e,t]),(0,y.jsx)(`span`,{ref:i,dir:`auto`,className:n,title:r,children:a===null?e:a.map((e,t)=>(0,y.jsxs)(`span`,{className:`block whitespace-nowrap`,children:[e,t<a.length-1?` `:null]},t))})}function F({item:e,pill:t,onAnswer:n}){let{t:r}=l(),i=()=>n?.({kind:`deny`,itemId:e.id}),a=()=>n?.({kind:e.permission===void 0?`allow`:`settings`,itemId:e.id});return t?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(K,{tone:`negative`,onClick:i,children:r(`companionPopover.deny`)}),(0,y.jsx)(K,{tone:`primary`,onClick:a,children:r(`companionPopover.allow`)})]}):(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(o,{variant:`dangerOutline`,onClick:i,children:r(`companionPopover.deny`)}),(0,y.jsx)(o,{variant:`primary`,onClick:a,children:r(`companionPopover.allow`)})]})}function I({title:e,icon:n,emphasis:r=!1,onClose:i}){let{t:a}=l();return(0,y.jsxs)(`div`,{className:`-mt-0.5 -mr-1.5 flex min-h-7 items-center gap-2`,children:[n,(0,y.jsx)(`p`,{dir:`auto`,className:t(`min-w-0 flex-1`,r?`text-title-small leading-snug`:`text-body-small-default text-[var(--content-tertiary)] select-none`),children:e}),(0,y.jsx)(o,{variant:`ghost`,className:`size-7 rounded-lg px-0`,"aria-label":a(`companionPopover.dismiss`),iconOnly:(0,y.jsx)(m,{className:`size-4`,strokeWidth:2}),onClick:i})]})}function L({items:e,onAnswer:t}){return(0,y.jsx)(n,{className:`min-h-0 flex-1`,size:20,fadeEdges:`end`,hideScrollBar:!0,children:(0,y.jsx)(`ol`,{className:`flex flex-col gap-2`,children:e.map((e,n)=>(0,y.jsxs)(`li`,{className:`flex items-center gap-2`,children:[(0,y.jsx)(`span`,{"aria-hidden":!0,className:`flex size-8 shrink-0 items-center justify-center rounded-full bg-[var(--surface-lift)] text-body-medium-default text-[var(--content-tertiary)]`,children:n+1}),(0,y.jsx)(P,{className:`min-w-0 flex-1 pl-1 text-body-medium-default`,maxWidth:j,title:e.detail===``?void 0:e.detail,text:e.title}),(0,y.jsx)(`span`,{className:`ml-2 flex shrink-0 items-center gap-2`,children:(0,y.jsx)(F,{item:e,pill:!1,onAnswer:t})})]},e.id))})})}function R({popover:e,onAnswer:t,onView:r}){let{t:a}=l(),[c,u]=(0,v.useState)(``),d=(0,v.useRef)(null);return(0,v.useEffect)(()=>{let e=()=>{d.current?.focus()};return e(),window.addEventListener(`focus`,e),()=>{window.removeEventListener(`focus`,e)}},[]),(0,y.jsxs)(`form`,{className:`flex min-h-0 flex-1 flex-col gap-3`,onSubmit:e=>{e.preventDefault(),c!==``&&t?.({kind:`secret`,value:c})},children:[(0,y.jsx)(I,{icon:(0,y.jsx)(U,{providerKey:e.providerKey}),title:e.service===``?a(`companionPopover.needsCredentials`):a(`companionPopover.needsCredentialsFor`,{service:e.service}),onClose:()=>r?.(`deferred`)}),(0,y.jsx)(n,{className:`min-h-0 flex-1`,size:20,fadeEdges:`end`,hideScrollBar:!0,children:(0,y.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[e.detail===``?null:(0,y.jsx)(`p`,{dir:`auto`,className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:e.detail}),(0,y.jsx)(i,{ref:d,type:`password`,fullWidth:!0,autoComplete:`off`,className:`select-text`,maxLength:s,label:e.label===``?a(`companionPopover.credentialLabel`):e.label,placeholder:e.placeholder,value:c,onChange:e=>{u(e.target.value)}})]})}),(0,y.jsxs)(`div`,{className:`flex shrink-0 items-center justify-end gap-2`,children:[(0,y.jsx)(o,{variant:`outlined`,onClick:()=>r?.(`deferred`),children:a(`companionPopover.notNow`)}),(0,y.jsx)(o,{variant:`primary`,type:`submit`,disabled:c===``,children:a(`companionPopover.confirm`)})]})]})}function z({popover:e,onAnswer:t,onOpenLink:r}){let{t:i}=l(),[a,s]=(0,v.useState)(!1);return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(I,{emphasis:!0,title:e.title===``?e.kind===`surface`?i(`companionPopover.surfaceFallback`):``:e.title,onClose:()=>t?.({kind:`dismiss`})}),e.kind===`card`?(0,y.jsxs)(y.Fragment,{children:[e.subtitle===``?null:(0,y.jsx)(`p`,{dir:`auto`,className:`-mt-2.5 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e.subtitle}),(0,y.jsx)(n,{className:`min-h-0 flex-1`,size:20,fadeEdges:`end`,hideScrollBar:!0,children:(0,y.jsx)(`div`,{className:`flex flex-col gap-3`,children:e.body===``?null:(0,y.jsx)(B,{body:e.body,onOpenLink:r})})}),e.actions.length>0?(0,y.jsx)(`div`,{className:`flex shrink-0 flex-wrap items-center justify-end gap-2`,children:W(e.actions).map(e=>(0,y.jsx)(o,{variant:G(e),disabled:a,onClick:()=>{s(!0),t?.({kind:`action`,actionId:e.id})},children:e.label},e.id))}):null]}):(0,y.jsx)(y.Fragment,{children:(0,y.jsx)(`div`,{className:`flex items-center justify-end`,children:(0,y.jsx)(o,{variant:`primary`,onClick:()=>t?.({kind:`open`}),children:i(`companionPopover.openApp`)})})})]})}function B({body:e,onOpenLink:t}){return(0,y.jsx)(c,{content:e,className:`text-body-medium-lighter text-[var(--content-secondary)] [&_li]:mb-1 [&_ol]:mb-2 [&_ol]:pl-4 [&_p]:mb-2 [&_ul]:mb-2 [&_ul]:pl-4`,linkComponent:(0,v.useCallback)(({href:e,children:n})=>(0,y.jsx)(`a`,{href:e,className:`text-[var(--content-default)] underline decoration-[var(--content-tertiary)] underline-offset-2 hover:decoration-[var(--content-default)]`,onClick:n=>{n.preventDefault(),e!==void 0&&t?.(e)},children:n}),[t]),imageComponent:H,urlTransform:V})}var V=e=>/^data:image\//i.test(e)?e:u(e),H=({src:e,alt:t})=>T(e)?(0,y.jsx)(`img`,{src:e,alt:t,draggable:!1,className:`my-1 max-h-60 w-full rounded-xl object-contain`}):null;function U({providerKey:e}){return e!==void 0&&a(e)?(0,y.jsx)(r,{providerKey:e,displayName:null,logoUrl:null,size:24}):(0,y.jsx)(`span`,{"aria-hidden":!0,className:`flex size-6 shrink-0 items-center justify-center text-[var(--content-tertiary)]`,children:(0,y.jsx)(h,{className:`size-4`,strokeWidth:2})})}var W=e=>[...e.filter(e=>e.style!==`primary`),...e.filter(e=>e.style===`primary`)],G=e=>{switch(e.style){case`primary`:return`primary`;case`destructive`:return`danger`;case`secondary`:return`outlined`}};function K({tone:e,onClick:n,type:r=`button`,disabled:i,children:a}){return(0,y.jsx)(o,{type:r,disabled:i,variant:e===`primary`?`primary`:e===`negative`?`dangerGhost`:`ghost`,className:t(`h-8 rounded-full px-3`,e===`secondary`&&`bg-[var(--surface-lift)] hover:bg-[var(--surface-active)]`,e===`negative`&&`bg-[var(--system-negative-weak)]`),onClick:n,children:a})}export{k as n,O as t};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ha as t,Nr as n,Pr as r,Px as i,Rx as a,Wx as o,_h as s,ux as c}from"./app-Tg6YU_tZ.js";import{j as l,lt as u}from"./vendor-DYOeoIwg.js";import{t as d,x as f}from"./react-B9IgSVeK.js";import{W as p,i as m,lr as h,m as g,qi as _}from"./icons-QG1KAFmx.js";var v=e(f(),1),y=d();function b({label:e,selected:n,onPick:r,trailing:i}){return(0,y.jsxs)(`div`,{role:`option`,"aria-selected":n,className:t(`flex min-h-9 items-center gap-2 rounded-lg px-3 py-1.5 transition-colors`,n?`bg-[var(--surface-active)]`:`hover:bg-[var(--surface-hover)]`),onClick:r,children:[(0,y.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-body-medium-default text-[var(--content-default)]`,children:e}),i,n?(0,y.jsx)(_,{"aria-hidden":!0,className:`size-4 shrink-0 text-[var(--system-positive-strong)]`}):(0,y.jsx)(`span`,{"aria-hidden":!0,className:`size-4 shrink-0`})]})}function x({label:e,children:t}){return(0,y.jsx)(a,{className:`-mx-2 min-h-0 flex-1`,size:20,fadeEdges:`end`,hideScrollBar:!0,children:(0,y.jsx)(`div`,{role:`listbox`,"aria-label":e,className:`flex flex-col`,children:t})})}function S({popover:e,onAnswer:t}){let{t:n}=l();return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsxs)(x,{label:n(`companionPopover.microphoneTitle`),children:[(0,y.jsx)(b,{label:n(`companionPopover.systemDefault`),selected:e.selected===``,onPick:()=>t?.({kind:`pick`,optionId:``})}),e.options.map(n=>(0,y.jsx)(b,{label:n.label,selected:e.selected===n.id,onPick:()=>t?.({kind:`pick`,optionId:n.id})},n.id))]}),e.needsPermission?(0,y.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:n(`companionPopover.microphonePermissionHint`)}):null]})}function C(){let[e,t]=(0,v.useState)(null),n=(0,v.useRef)(null);return(0,v.useEffect)(()=>()=>{n.current?.pause(),n.current=null},[]),{playing:e,play:(e,r)=>{n.current?.pause();let i=new Audio(r);n.current=i,t(e);let a=()=>{n.current===i&&(n.current=null,t(null))};i.onended=a,i.onerror=a,i.play().catch(a)},stop:()=>{n.current?.pause(),n.current=null,t(null)}}}function w({popover:e,onAnswer:t}){let{t:n}=l(),{playing:r,play:i,stop:a}=C();return(0,y.jsx)(x,{label:n(`companionPopover.voiceTitle`),children:e.groups.map(s=>(0,y.jsxs)(`div`,{role:`group`,"aria-label":s.accent,children:[(0,y.jsx)(`div`,{className:`px-3 pt-3 pb-1 text-label-small-default text-[var(--content-tertiary)]`,children:s.accent}),s.voices.map(s=>{let c=r===s.id;return(0,y.jsx)(b,{label:s.isDefault?(0,y.jsxs)(y.Fragment,{children:[s.label,(0,y.jsx)(`span`,{className:`text-[var(--content-tertiary)]`,children:` ${n(`companionPopover.defaultSuffix`)}`})]}):s.label,selected:e.selected===s.id,onPick:()=>t?.({kind:`pick`,optionId:s.id}),trailing:s.sampleUrl===``?void 0:(0,y.jsx)(o,{variant:`ghost`,size:`compact`,className:`size-7 shrink-0`,iconOnly:c?(0,y.jsx)(p,{}):(0,y.jsx)(g,{}),"aria-label":c?n(`companionPopover.stopPreview`):n(`companionPopover.previewVoice`,{voice:s.label}),onClick:e=>{e.stopPropagation(),c?a():i(s.id,s.sampleUrl)}})},s.id)})]},s.accent))})}var T=e=>/^https?:\/\//i.test(e)||/^data:image\//i.test(e),E=`border border-white/5 bg-[var(--surface-base)] text-[var(--content-default)] shadow-lg shadow-black/40`,D=e=>`radial-gradient(120% 80% at 0% 0%, ${e===void 0?`transparent`:`color-mix(in srgb, ${e} 7%, transparent)`} 0%, transparent 70%), #17181b`;function O({popover:e,view:n,cardRef:r,onAnswer:i,onView:a,onOpenLink:o,accentHex:s,attached:c=!1,className:u,style:d}){let{t:f}=l();return(e.kind===`approvals`||e.kind===`secret`)&&n!==`expanded`?(0,y.jsx)(`div`,{ref:r,role:`group`,"data-companion-popover":e.kind,className:t(`w-max max-w-[640px] rounded-[22px]`,E,u),style:d,children:(0,y.jsx)(k,{popover:e,onAnswer:i,onView:a})}):(0,y.jsx)(`div`,{ref:r,role:`group`,"data-companion-popover":e.kind,className:t(`flex min-h-0 flex-col gap-3 p-4 text-[var(--content-default)]`,!c&&`rounded-[20px] border border-white/10 shadow-2xl shadow-black/50`,e.kind===`approvals`?`w-max max-w-[640px]`:`w-[360px]`,(e.kind===`microphones`||e.kind===`voices`)&&`gap-2 px-4 pb-3`,u),style:c?d:{background:D(s),...d},children:e.kind===`approvals`?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(I,{title:f(`companionPopover.needsOkCount`,{count:e.items.length}),onClose:()=>a?.(`deferred`)}),(0,y.jsx)(L,{items:e.items,onAnswer:i})]}):e.kind===`secret`?(0,y.jsx)(R,{popover:e,onAnswer:i,onView:a}):e.kind===`microphones`?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(I,{title:f(`companionPopover.microphoneTitle`),onClose:()=>i?.({kind:`dismiss`})}),(0,y.jsx)(S,{popover:e,onAnswer:i})]}):e.kind===`voices`?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(I,{title:f(`companionPopover.voiceTitle`),onClose:()=>i?.({kind:`dismiss`})}),(0,y.jsx)(w,{popover:e,onAnswer:i})]}):(0,y.jsx)(z,{popover:e,onAnswer:i,onOpenLink:o})})}function k({popover:e,onAnswer:n,onView:r,className:i}){let{t:a}=l(),o=e.kind===`approvals`?e.items[0]:void 0,s=e.kind===`approvals`&&e.items.length===1;return(0,y.jsxs)(`div`,{"data-companion-prompt-row":e.kind,className:t(`flex min-h-11 min-w-0 items-center gap-1.5 py-1.5 pr-1.5 text-[var(--content-default)]`,e.kind===`secret`?`pl-2`:`pl-4`,i),children:[e.kind===`secret`?(0,y.jsx)(U,{providerKey:e.providerKey}):null,(0,y.jsx)(P,{className:`min-w-0 flex-1 text-body-medium-default`,maxWidth:A,text:e.kind===`secret`?e.service===``?a(`companionPopover.needsCredentials`):a(`companionPopover.needsCredentialsFor`,{service:e.service}):s&&o!==void 0?o.title:a(`companionPopover.needsOkCount`,{count:e.items.length})}),(0,y.jsx)(`span`,{className:`ml-2 flex shrink-0 items-center gap-1`,children:s&&o!==void 0?(0,y.jsx)(F,{item:o,pill:!0,onAnswer:n}):(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(K,{tone:`secondary`,onClick:()=>r?.(`deferred`),children:a(`companionPopover.notNow`)}),(0,y.jsx)(K,{tone:`primary`,onClick:()=>r?.(`expanded`),children:e.kind===`secret`?a(`companionPopover.enter`):a(`companionPopover.review`)})]})})]})}var A=440,j=400;function M(e,t,n){let r=e.trim().split(/\s+/).filter(e=>e!==``),i=r.length;if(i<2||n(r.join(` `))<=t)return[r.join(` `)];let a=r.map(()=>[]);for(let e=0;e<i;e+=1)for(let t=e+1;t<=i;t+=1)a[e][t]=n(r.slice(e,t).join(` `));let o=(e,t)=>r.slice(e,t).join(` `),s=[];for(let e=0;e<i;){let n=e+1;for(;n<i&&a[e][n+1]<=t;)n+=1;s.push(o(e,n)),e=n}if(s.length<2||i>N)return s;let c=e=>{let n=null;for(let r=i-1;r>=e-1;--r){let o=a[r][i];if(o>t&&r!==i-1)continue;let s=new Map;for(let e=1;e<=r;e+=1)a[0][e]<=o&&s.set(`${e}:0`,{cost:(o-a[0][e])**2,breaks:[0]});for(let t=2;t<=e-1;t+=1){let e=new Map;for(let[t,n]of s){let[i,s]=t.split(`:`).map(Number),c=a[s][i];for(let t=i+1;t<=r;t+=1){let r=a[i][t];if(r<c||r>o)continue;let s=n.cost+(o-r)**2,l=`${t}:${i}`,u=e.get(l);(u===void 0||s<u.cost)&&e.set(l,{cost:s,breaks:[...n.breaks,i]})}}s=e}for(let[e,t]of s){let[i,s]=e.split(`:`).map(Number);i!==r||a[s][i]>o||(n===null||t.cost<n.cost)&&(n={cost:t.cost,breaks:[...t.breaks,r]})}}if(n===null)return null;let r=[...n.breaks,i];return n.breaks.map((e,t)=>o(e,r[t+1]))};for(let e=s.length;e<=i;e+=1){let t=c(e);if(t!==null)return t}return s}var N=48;function P({text:e,maxWidth:t,className:n,title:r}){let i=(0,v.useRef)(null),[a,o]=(0,v.useState)(null);return(0,v.useLayoutEffect)(()=>{let n=i.current;if(n===null)return;let r=!1,a=()=>{if(r)return;let i=document.createElement(`span`);i.style.cssText=`position:absolute;visibility:hidden;white-space:pre;left:0;top:0`,n.appendChild(i);let a=new Map,s=M(e,t,e=>{let t=a.get(e);if(t!==void 0)return t;i.textContent=e;let n=i.getBoundingClientRect().width;return a.set(e,n),n});i.remove(),o(s.length>1?s:null)};return a(),document.fonts?.addEventListener(`loadingdone`,a),document.fonts?.ready.then(a),()=>{r=!0,document.fonts?.removeEventListener(`loadingdone`,a)}},[e,t]),(0,y.jsx)(`span`,{ref:i,dir:`auto`,className:n,title:r,children:a===null?e:a.map((e,t)=>(0,y.jsxs)(`span`,{className:`block whitespace-nowrap`,children:[e,t<a.length-1?` `:null]},t))})}function F({item:e,pill:t,onAnswer:n}){let{t:r}=l(),i=()=>n?.({kind:`deny`,itemId:e.id}),a=()=>n?.({kind:e.permission===void 0?`allow`:`settings`,itemId:e.id});return t?(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(K,{tone:`negative`,onClick:i,children:r(`companionPopover.deny`)}),(0,y.jsx)(K,{tone:`primary`,onClick:a,children:r(`companionPopover.allow`)})]}):(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(o,{variant:`dangerOutline`,onClick:i,children:r(`companionPopover.deny`)}),(0,y.jsx)(o,{variant:`primary`,onClick:a,children:r(`companionPopover.allow`)})]})}function I({title:e,icon:n,emphasis:r=!1,onClose:i}){let{t:a}=l();return(0,y.jsxs)(`div`,{className:`-mt-0.5 -mr-1.5 flex min-h-7 items-center gap-2`,children:[n,(0,y.jsx)(`p`,{dir:`auto`,className:t(`min-w-0 flex-1`,r?`text-title-small leading-snug`:`text-body-small-default text-[var(--content-tertiary)] select-none`),children:e}),(0,y.jsx)(o,{variant:`ghost`,className:`size-7 rounded-lg px-0`,"aria-label":a(`companionPopover.dismiss`),iconOnly:(0,y.jsx)(m,{className:`size-4`,strokeWidth:2}),onClick:i})]})}function L({items:e,onAnswer:t}){return(0,y.jsx)(a,{className:`min-h-0 flex-1`,size:20,fadeEdges:`end`,hideScrollBar:!0,children:(0,y.jsx)(`ol`,{className:`flex flex-col gap-2`,children:e.map((e,n)=>(0,y.jsxs)(`li`,{className:`flex items-center gap-2`,children:[(0,y.jsx)(`span`,{"aria-hidden":!0,className:`flex size-8 shrink-0 items-center justify-center rounded-full bg-[var(--surface-lift)] text-body-medium-default text-[var(--content-tertiary)]`,children:n+1}),(0,y.jsx)(P,{className:`min-w-0 flex-1 pl-1 text-body-medium-default`,maxWidth:j,title:e.detail===``?void 0:e.detail,text:e.title}),(0,y.jsx)(`span`,{className:`ml-2 flex shrink-0 items-center gap-2`,children:(0,y.jsx)(F,{item:e,pill:!1,onAnswer:t})})]},e.id))})})}function R({popover:e,onAnswer:t,onView:n}){let{t:r}=l(),[c,u]=(0,v.useState)(``),d=(0,v.useRef)(null);return(0,v.useEffect)(()=>{let e=()=>{d.current?.focus()};return e(),window.addEventListener(`focus`,e),()=>{window.removeEventListener(`focus`,e)}},[]),(0,y.jsxs)(`form`,{className:`flex min-h-0 flex-1 flex-col gap-3`,onSubmit:e=>{e.preventDefault(),c!==``&&t?.({kind:`secret`,value:c})},children:[(0,y.jsx)(I,{icon:(0,y.jsx)(U,{providerKey:e.providerKey}),title:e.service===``?r(`companionPopover.needsCredentials`):r(`companionPopover.needsCredentialsFor`,{service:e.service}),onClose:()=>n?.(`deferred`)}),(0,y.jsx)(a,{className:`min-h-0 flex-1`,size:20,fadeEdges:`end`,hideScrollBar:!0,children:(0,y.jsxs)(`div`,{className:`flex flex-col gap-3`,children:[e.detail===``?null:(0,y.jsx)(`p`,{dir:`auto`,className:`text-body-medium-lighter text-[var(--content-secondary)]`,children:e.detail}),(0,y.jsx)(i,{ref:d,type:`password`,fullWidth:!0,autoComplete:`off`,className:`select-text`,maxLength:s,label:e.label===``?r(`companionPopover.credentialLabel`):e.label,placeholder:e.placeholder,value:c,onChange:e=>{u(e.target.value)}})]})}),(0,y.jsxs)(`div`,{className:`flex shrink-0 items-center justify-end gap-2`,children:[(0,y.jsx)(o,{variant:`outlined`,onClick:()=>n?.(`deferred`),children:r(`companionPopover.notNow`)}),(0,y.jsx)(o,{variant:`primary`,type:`submit`,disabled:c===``,children:r(`companionPopover.confirm`)})]})]})}function z({popover:e,onAnswer:t,onOpenLink:n}){let{t:r}=l(),[i,s]=(0,v.useState)(!1);return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsx)(I,{emphasis:!0,title:e.title===``?e.kind===`surface`?r(`companionPopover.surfaceFallback`):``:e.title,onClose:()=>t?.({kind:`dismiss`})}),e.kind===`card`?(0,y.jsxs)(y.Fragment,{children:[e.subtitle===``?null:(0,y.jsx)(`p`,{dir:`auto`,className:`-mt-2.5 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e.subtitle}),(0,y.jsx)(a,{className:`min-h-0 flex-1`,size:20,fadeEdges:`end`,hideScrollBar:!0,children:(0,y.jsx)(`div`,{className:`flex flex-col gap-3`,children:e.body===``?null:(0,y.jsx)(B,{body:e.body,onOpenLink:n})})}),e.actions.length>0?(0,y.jsx)(`div`,{className:`flex shrink-0 flex-wrap items-center justify-end gap-2`,children:W(e.actions).map(e=>(0,y.jsx)(o,{variant:G(e),disabled:i,onClick:()=>{s(!0),t?.({kind:`action`,actionId:e.id})},children:e.label},e.id))}):null]}):(0,y.jsx)(y.Fragment,{children:(0,y.jsx)(`div`,{className:`flex items-center justify-end`,children:(0,y.jsx)(o,{variant:`primary`,onClick:()=>t?.({kind:`open`}),children:r(`companionPopover.openApp`)})})})]})}function B({body:e,onOpenLink:t}){return(0,y.jsx)(c,{content:e,className:`text-body-medium-lighter text-[var(--content-secondary)] [&_li]:mb-1 [&_ol]:mb-2 [&_ol]:pl-4 [&_p]:mb-2 [&_ul]:mb-2 [&_ul]:pl-4`,linkComponent:(0,v.useCallback)(({href:e,children:n})=>(0,y.jsx)(`a`,{href:e,className:`text-[var(--content-default)] underline decoration-[var(--content-tertiary)] underline-offset-2 hover:decoration-[var(--content-default)]`,onClick:n=>{n.preventDefault(),e!==void 0&&t?.(e)},children:n}),[t]),imageComponent:H,urlTransform:V})}var V=e=>/^data:image\//i.test(e)?e:u(e),H=({src:e,alt:t})=>T(e)?(0,y.jsx)(`img`,{src:e,alt:t,draggable:!1,className:`my-1 max-h-60 w-full rounded-xl object-contain`}):null;function U({providerKey:e}){return e!==void 0&&r(e)?(0,y.jsx)(n,{providerKey:e,displayName:null,logoUrl:null,size:24}):(0,y.jsx)(`span`,{"aria-hidden":!0,className:`flex size-6 shrink-0 items-center justify-center text-[var(--content-tertiary)]`,children:(0,y.jsx)(h,{className:`size-4`,strokeWidth:2})})}var W=e=>[...e.filter(e=>e.style!==`primary`),...e.filter(e=>e.style===`primary`)],G=e=>{switch(e.style){case`primary`:return`primary`;case`destructive`:return`danger`;case`secondary`:return`outlined`}};function K({tone:e,onClick:n,type:r=`button`,disabled:i,children:a}){return(0,y.jsx)(o,{type:r,disabled:i,variant:e===`primary`?`primary`:e===`negative`?`dangerGhost`:`ghost`,className:t(`h-8 rounded-full px-3`,e===`secondary`&&`bg-[var(--surface-lift)] hover:bg-[var(--surface-active)]`,e===`negative`&&`bg-[var(--system-negative-weak)]`),onClick:n,children:a})}export{k as n,O as t};
@@ -1 +1 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Js as t,Us as n,Zs as r,ac as i,ic as a,lc as o}from"./app-DFXcEvsi.js";import{t as s,x as c}from"./react-B9IgSVeK.js";import{n as l}from"./companion-accent-pu5Xu8Z6.js";import{t as u}from"./companion-popover-Bs6A6445.js";var d=e(c(),1),f=s();function p(){let[e,s]=(0,d.useState)(null),c=(0,d.useRef)(null);(0,d.useEffect)(()=>{let e=o(s);return t().then(e=>{e&&s(e)}),e},[]);let p=e?.popover,m=p?.id,h=e?.popoverView??`row`;return(0,d.useLayoutEffect)(()=>{let e=c.current;if(m===void 0||e===null)return;let t=()=>{let{width:t,height:n}=e.getBoundingClientRect();a(m,Math.ceil(t)+24,Math.ceil(n)+24)};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[m,h]),p===void 0?null:(0,f.jsx)(`div`,{"data-theme":`dark`,className:`h-screen w-screen bg-transparent select-none`,style:{padding:12},children:(0,f.jsx)(u,{popover:p,view:h,accentHex:l(e?.call??null,e?.accentHex,e?.character)??void 0,cardRef:c,style:{maxHeight:536},onAnswer:e=>{n(e,p.id)},onView:e=>{i(p.id,e)},onOpenLink:e=>{r(e)}},p.id)})}export{p as CompanionPopoverPage};
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Js as t,Us as n,Zs as r,ac as i,ic as a,lc as o}from"./app-Tg6YU_tZ.js";import{t as s,x as c}from"./react-B9IgSVeK.js";import{n as l}from"./companion-accent-C3xBrXHO.js";import{t as u}from"./companion-popover-STvrRaku.js";var d=e(c(),1),f=s();function p(){let[e,s]=(0,d.useState)(null),c=(0,d.useRef)(null);(0,d.useEffect)(()=>{let e=o(s);return t().then(e=>{e&&s(e)}),e},[]);let p=e?.popover,m=p?.id,h=e?.popoverView??`row`;return(0,d.useLayoutEffect)(()=>{let e=c.current;if(m===void 0||e===null)return;let t=()=>{let{width:t,height:n}=e.getBoundingClientRect();a(m,Math.ceil(t)+24,Math.ceil(n)+24)};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[m,h]),p===void 0?null:(0,f.jsx)(`div`,{"data-theme":`dark`,className:`h-screen w-screen bg-transparent select-none`,style:{padding:12},children:(0,f.jsx)(u,{popover:p,view:h,accentHex:l(e?.call??null,e?.accentHex,e?.character)??void 0,cardRef:c,style:{maxHeight:536},onAnswer:e=>{n(e,p.id)},onView:e=>{i(p.id,e)},onOpenLink:e=>{r(e)}},p.id)})}export{p as CompanionPopoverPage};
@@ -0,0 +1 @@
1
+ import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$s as t,Bs as n,Gs as r,Hs as i,Js as a,Ks as o,Ls as s,Ox as c,Qs as l,Rx as u,Si as d,Us as f,Ws as p,Wx as m,Xs as h,Ys as g,Zs as _,ac as v,cc as y,dc as b,dn as x,ec as S,fc as ee,gh as C,gu as te,lc as w,li as T,mc as ne,mh as E,oc as D,qs as re,rc as O,sc as k,tc as ie,uc as ae,vu as oe,zs as se}from"./app-Tg6YU_tZ.js";import{f as ce,g as A,j}from"./vendor-DYOeoIwg.js";import{t as le,x as ue}from"./react-B9IgSVeK.js";import{Cn as de,Ga as fe,Gi as pe,Ja as me,Jr as he,Ki as M,Pa as ge,Sn as N,Ui as _e,W as ve,Wi as ye,Xt as be,Yr as xe,_n as Se,i as Ce,ki as we,m as P,p as Te,yt as Ee}from"./icons-QG1KAFmx.js";import{n as De}from"./companion-accent-C3xBrXHO.js";import{n as Oe,t as ke}from"./companion-popover-STvrRaku.js";import{n as F,r as Ae,t as je}from"./companion-layout-Cu_j-nKV.js";var Me=me(`eraser`,[[`path`,{d:`M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21`,key:`g5wo59`}],[`path`,{d:`m5.082 11.09 8.828 8.828`,key:`1wx5vj`}]]),I=me(`screen-share`,[[`path`,{d:`M13 3H4a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-3`,key:`i8wdob`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`m17 8 5-5`,key:`fqif7o`}],[`path`,{d:`M17 3h5v5`,key:`1o3tu8`}]]),Ne=me(`slash`,[[`path`,{d:`M22 2 2 22`,key:`y4kqgn`}]]),L=e(ue(),1),R=le(),z=460,Pe=3,B=88,Fe=3,V=[`screens`,`tabs`,`windows`],H=(e,t)=>t===`screens`?e.displays.length:t===`tabs`?e.tabs.length:e.windows.length,Ie=e=>V.find(t=>H(e,t)>0)??`screens`,Le=e=>e.kind===`display`?`display-${e.displayId}`:`window-${e.windowId}`;function U({sources:e,captureThumbnail:t,cardGrowth:n=`up`,avatarBox:r=E,optionsBox:i=E,cardRef:a,label:o,onPick:s,onAllowScreenRecording:l}){let{t:d}=j(),{inUnits:f,lineAt:p,introStepOff:h}=je(r,i),g=f(h(n)),_={left:`50%`,top:p(n,0),transform:n===`up`?`translate(-50%, calc(-100% - ${g}px))`:`translate(-50%, ${g}px)`},v=e!==null&&e.screenRecordingGranted===!1,y=v?null:e,b=y===null?[]:V.filter(e=>H(y,e)>0),x=y!==null&&b.length===0,[S,ee]=(0,L.useState)(null),C=y===null?`screens`:S!==null&&b.includes(S)?S:Ie(y),te=(0,L.useMemo)(()=>y===null?[]:C===`screens`?y.displays.map(e=>{let t={kind:`display`,displayId:e.displayId};return{key:Le(t),target:t}}):C===`windows`?y.windows.map(e=>{let t={kind:`window`,windowId:e.windowId};return{key:Le(t),target:t}}):[],[C,y]),[w,T]=(0,L.useState)(new Map),ne=(0,L.useRef)(new Set),D=(0,L.useRef)(0),re=(0,L.useRef)(!1);(0,L.useEffect)(()=>(re.current=!0,()=>{re.current=!1}),[]),(0,L.useEffect)(()=>{ne.current=new Set,D.current+=1,T(new Map),ee(null)},[e]);let O=(0,L.useRef)(null);(0,L.useEffect)(()=>{O.current!==null&&(O.current.scrollTop=0)},[C]),(0,L.useEffect)(()=>{if(t!==void 0)for(let{key:e,target:n}of te){if(ne.current.has(e))continue;ne.current.add(e);let r=D.current,i=t=>{!re.current||r!==D.current||T(n=>new Map(n).set(e,t))};t(n).then(i,()=>{i(null)})}},[t,te]);let k=e=>t===void 0?null:w.get(e),ie=e=>d(e===`screens`?`companionSurface.captureScreens`:e===`tabs`?`companionSurface.captureTabs`:`companionSurface.captureWindows`);return(0,R.jsxs)(`div`,{ref:a,role:`group`,"aria-label":o??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:z,..._},onPointerDown:e=>{e.stopPropagation()},children:[b.length>1&&(0,R.jsx)(c,{className:`mx-auto mb-1.5 w-auto shrink-0`,items:b.map(e=>({value:e,label:ie(e)})),value:C,ariaLabel:d(`companionSurface.captureKind`),onChange:ee}),(0,R.jsx)(u,{ref:O,className:`max-h-48 flex-col px-0.5`,size:24,fadeEdges:`end`,hideScrollBar:!0,children:(0,R.jsxs)(`div`,{className:`flex flex-col`,"data-slot":`capture-sources`,children:[e===null&&(0,R.jsx)(G,{}),v&&(0,R.jsxs)(`div`,{className:`flex items-center justify-between gap-3 px-2 py-2`,"data-slot":`capture-needs-grant`,children:[(0,R.jsx)(`span`,{className:`text-[12px] text-white/70`,children:d(`companionSurface.captureScreenRecordingOff`)}),(0,R.jsx)(m,{variant:`primary`,size:`compact`,className:`shrink-0`,onClick:l,children:d(`companionSurface.captureTurnOnScreenRecording`)})]}),y!==null&&C===`screens`&&(0,R.jsx)(W,{children:y.displays.map(e=>{let t=d(`companionSurface.captureScreen`,{n:e.index+1}),n=Le({kind:`display`,displayId:e.displayId});return(0,R.jsx)(Re,{title:t,ariaLabel:t,answer:k(n),fallback:(0,R.jsx)(Se,{className:`size-5 text-white/40`,"aria-hidden":!0}),onClick:()=>{s?.({kind:`display`,displayId:e.displayId})}},n)})}),y!==null&&C===`windows`&&(0,R.jsx)(W,{children:y.windows.map(e=>{let t=Le({kind:`window`,windowId:e.windowId}),n=e.title===``?e.app:e.title;return(0,R.jsx)(Re,{title:n,ariaLabel:e.title===``?n:`${n} (${e.app})`,answer:k(t),fallback:(0,R.jsx)(Be,{icon:e.icon,large:!0}),icon:(0,R.jsx)(Be,{icon:e.icon}),onClick:()=>{s?.({kind:`window`,windowId:e.windowId})}},t)})}),y!==null&&C===`tabs`&&(0,R.jsx)(`div`,{className:`flex flex-col`,children:y.tabs.map(e=>(0,R.jsx)(ze,{icon:(0,R.jsx)(Be,{icon:e.icon}),title:e.title,onClick:()=>{s?.({kind:`tab`,chromeWindowId:e.chromeWindowId,tabIndex:e.tabIndex})}},`tab-${e.chromeWindowId}-${e.tabIndex}`))}),x&&(0,R.jsx)(`span`,{className:`px-2 py-3 text-[12px] text-white/50`,children:d(`companionSurface.captureNothing`)})]})})]})}function W({children:e}){return(0,R.jsx)(`div`,{className:`grid gap-1.5 py-0.5`,style:{gridTemplateColumns:`repeat(${Pe}, minmax(0, 1fr))`},children:e})}function Re({title:e,ariaLabel:t,answer:n,fallback:r,icon:i,onClick:a}){return(0,R.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,R.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:B},children:n==null?r:(0,R.jsx)(`img`,{src:n,alt:``,draggable:!1,className:`max-h-full max-w-full object-contain`})}),(0,R.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[i,(0,R.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[11px] text-white/75 group-hover:text-white/90`,children:e})]})]})}function ze({icon:e,title:t,onClick:n}){return(0,R.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,R.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t})]})}function Be({icon:e,large:t=!1}){return(0,R.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,R.jsx)(fe,{className:t?`size-5 text-white/40`:`size-3 text-white/70`,"aria-hidden":!0}):(0,R.jsx)(`img`,{src:e,alt:``,className:`size-full`,draggable:!1})})}function G(){return(0,R.jsx)(W,{children:Array.from({length:Fe},(e,t)=>(0,R.jsxs)(`div`,{className:`flex flex-col gap-1 p-1`,"aria-hidden":!0,children:[(0,R.jsx)(`span`,{className:`animate-pulse rounded-md bg-white/10`,style:{height:B}}),(0,R.jsx)(`span`,{className:`h-2 animate-pulse rounded-full bg-white/10`,style:{width:t===0?`70%`:`45%`}})]},t))})}var Ve=260;function He({offer:e,growth:t=`right`,cardGrowth:n=`up`,avatarBox:r=E,optionsBox:i=E,cardRef:a,onAnswer:o}){let{t:s}=j(),c=e.reason===`claimed`?s(`companionSurface.offerVersion`):s(`companionSurface.offerNowhere`),{inUnits:l,avatarHalf:d,lineAt:f,edgeAt:p,introStepOff:m}=je(r,i),h=l(m(n)),g=p(t,-d),_={top:f(n,0),transform:n===`up`?`translateY(calc(-100% - ${h}px))`:`translateY(${h}px)`};return(0,R.jsxs)(`div`,{ref:a,role:`group`,"aria-label":c,"data-companion-dictation-offer":!0,className:`absolute flex flex-col gap-2 rounded-2xl border border-white/10 bg-[#17181b]/95 px-3.5 py-3 shadow-lg shadow-black/40`,style:{width:Ve,...g,..._},onPointerDown:e=>{e.stopPropagation()},children:[(0,R.jsx)(`p`,{className:`text-[11px] font-medium tracking-wide text-white/45 uppercase select-none`,children:c}),(0,R.jsx)(u,{className:`max-h-40 flex-col`,size:20,fadeEdges:`end`,hideScrollBar:!0,children:(0,R.jsx)(`p`,{dir:`auto`,className:`text-[13px] leading-[1.45] text-white/90`,children:e.text})}),(0,R.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-1 pt-0.5`,children:[(0,R.jsx)(`button`,{type:`button`,className:`h-7 rounded-full px-2.5 text-[12px] text-white/55 transition-colors hover:bg-white/10 hover:text-white/80`,onClick:()=>o?.(`dismiss`),children:e.reason===`claimed`?s(`companionSurface.notNow`):s(`companionSurface.offerDiscard`)}),e.reason===`claimed`?(0,R.jsx)(`button`,{type:`button`,className:`h-7 rounded-full px-2.5 text-[12px] text-white/70 transition-colors hover:bg-white/10 hover:text-white`,onClick:()=>o?.(`quit`),children:s(`companionSurface.offerQuit`,{app:e.app})}):null,(0,R.jsx)(`button`,{type:`button`,className:`h-7 rounded-full bg-white/15 px-3 text-[12px] text-white transition-colors hover:bg-white/25`,onClick:()=>o?.(e.reason===`claimed`?`use`:`copy`),children:e.reason===`claimed`?s(`companionSurface.offerUse`):s(`companionSurface.offerCopy`)})]})]})}var Ue=244,We={meet:{title:`companionIntro.meet.title`,body:`companionIntro.meet.body`},talk:{title:`companionIntro.talk.title`,body:`companionIntro.talk.body`},menu:{title:`companionIntro.menu.title`,body:`companionIntro.menu.body`}},Ge=e=>e===`talk`?e:void 0,Ke=e=>e===null||e===`meet`?null:`hover`;function qe({beat:e,growth:t=`right`,cardGrowth:n=`up`,avatarBox:r=E,optionsBox:i=E,accentHex:a,assistantName:o,cardRef:s,onAdvance:c}){let{t:l}=j(),u=C.indexOf(e),d=u===C.length-1,f=We[e],{inUnits:p,avatarHalf:m,lineAt:h,edgeAt:g,introStepOff:_}=je(r,i),v=p(_(n)),y=g(t,-m),b={top:h(n,0),transform:n===`up`?`translateY(calc(-100% - ${v}px))`:`translateY(${v}px)`};return(0,R.jsxs)(`div`,{ref:s,role:`group`,"aria-label":l(`companionIntro.ariaLabel`),className:`absolute flex flex-col gap-2 rounded-2xl border border-white/10 bg-[#17181b]/95 px-3.5 py-3 shadow-lg shadow-black/40`,style:{width:Ue,...y,...b},onPointerDown:e=>{e.stopPropagation()},children:[(0,R.jsx)(`p`,{className:`line-clamp-2 text-[13px] leading-tight font-medium text-white`,children:e===`meet`&&o!==void 0?l(`companionIntro.meet.titleNamed`,{name:o}):l(f.title)}),(0,R.jsx)(`p`,{className:`text-[12px] leading-[1.45] text-white/70`,children:l(f.body)}),(0,R.jsxs)(`div`,{className:`flex items-center justify-between pt-0.5`,children:[(0,R.jsx)(`div`,{className:`flex items-center gap-1`,"aria-hidden":!0,children:C.map((e,t)=>(0,R.jsx)(`span`,{className:`size-1.5 rounded-full transition-colors`,style:{backgroundColor:t===u?a??`#5eead4`:`rgba(255,255,255,.2)`}},e))}),(0,R.jsxs)(`div`,{className:`flex items-center gap-1`,children:[!d&&(0,R.jsx)(`button`,{type:`button`,className:`h-7 rounded-full px-2.5 text-[12px] text-white/55 transition-colors hover:bg-white/10 hover:text-white/80`,onClick:()=>c?.(`dismiss`),children:l(`companionIntro.skip`)}),(0,R.jsx)(`button`,{type:`button`,className:`h-7 rounded-full bg-white/15 px-3 text-[12px] text-white transition-colors hover:bg-white/25`,onClick:()=>c?.(`next`),children:l(d?`companionIntro.done`:`companionIntro.next`)})]})]})]})}var Je={min:3,max:10},Ye=(e=Math.random)=>{let t=e();return t<1/3?`top`:t<2/3?`topLeft`:`topRight`},Xe=1600,Ze=.22,Qe=.04,$e=4,K=(e,t)=>{let n=Math.min(.95,Math.max(.25,e.eyeCenterFrac+e.eyeHalfFrac+Qe)),r=Math.min(t,24,14/n),i=r*n;return{size:r,exposed:i,clip:{width:r+2*$e,height:i+$e},rest:i+2}},q=(e,t=Math.random)=>(e.min+t()*(e.max-e.min))*1e3;function J(e,t=Je){let[n,r]=(0,L.useState)(0),{min:i,max:a}=t;return(0,L.useEffect)(()=>{if(!e)return;let t,n=()=>{t=setTimeout(()=>{r(e=>e+1),n()},q({min:i,max:a}))};return n(),()=>{clearTimeout(t)}},[e,i,a]),n}var et=(e,t,n={width:0,height:0})=>{let r=e===`topLeft`?n.width/4:e===`topRight`?n.width*3/4:n.width/2;return{slot:{width:t.width,height:t.height,bottom:`100%`,left:r-t.width/2}}};function tt({character:e,capsule:t,enabled:n,held:r=!1,edge:i,interval:a=Je,className:o,style:s}){let c=ce(),l=(0,L.useMemo)(()=>x(d,e),[e]),u=J(n&&!r&&!c&&l!==null,a),[f,p]=(0,L.useState)(!1),[m,h]=(0,L.useState)(`top`);if((0,L.useEffect)(()=>{if(u===0)return;h(Ye()),p(!0);let e=setTimeout(()=>{p(!1)},Xe);return()=>{clearTimeout(e)}},[u]),l===null||c)return null;let g=K(l,t.width),_=r||f,v=i??m,y=et(v,g.clip,t);return(0,R.jsx)(`div`,{className:`companion-peek ${o??``}`,style:{width:t.width,height:t.height,...s},"data-risen":_,"data-edge":v,"aria-hidden":!0,children:(0,R.jsx)(`div`,{className:`absolute`,style:y.slot,children:(0,R.jsx)(`div`,{className:`absolute inset-0 overflow-hidden`,children:(0,R.jsx)(A.div,{className:`absolute left-1/2`,style:{width:g.size,height:g.size,marginLeft:-g.size/2,top:g.clip.height-g.exposed},initial:{y:g.rest},animate:{y:_?0:g.rest},transition:r?{duration:0}:_?{type:`spring`,stiffness:280,damping:14}:{duration:Ze,ease:`easeIn`},children:(0,R.jsx)(T,{components:d,traits:e,size:g.size})})})})})}var nt=(0,L.createContext)(`above`),Y=`#5eead4`,rt=new Set([`transcribing`,`thinking`,`speaking`]),it=28,X={idle:{width:64,height:14},closing:it,rim:2,bloom:4},at=X.idle,Z=(e,t,n)=>[`inset 0 0 0 ${t}px color-mix(in srgb, ${e} 78%, transparent)`,`0 0 ${n}px color-mix(in srgb, ${e} 85%, transparent)`,`0 0 ${n*4}px color-mix(in srgb, ${e} 42%, transparent)`,`0 8px 24px rgba(0, 0, 0, 0.45)`].join(`, `),ot=244,st=200,ct=120,lt={watching:40,summary:220,dictating:ot+32,offer:st+32,call:4+ct+180},ut=84,dt={width:28,height:ut+140+20};function ft({phase:e,assistantName:t=``,accentHex:n=Y,avatarSrc:r,character:i,hovered:a=!1,growth:o=`right`,avatarBox:s=E,optionsBox:c=E,cardGrowth:l=`up`,dock:u=`bottom`,rootRef:d,restingPillRef:f,avatarRef:p,onSurfacePointerDown:m,onSurfaceContextMenu:h,spotlight:g,onWatch:_,onTeach:v,picking:y=!1,sharing:b=!1,shareEnabled:x=!1,sharePicking:S=!1,onShare:ee,onStopShare:C,annotating:te=!1,annotationTool:w,onAnnotationTool:T,drawToolsRef:ne,onAnnotate:D,marked:re=!1,onClearMarks:O,openPicker:k,voicesPickable:ie=!1,onPicker:ae,shortcuts:oe,onAvatarClick:se,working:A=!1,watching:le=!1,watchRetro:ue,onWatchRetro:de,dictationOffer:fe,offer:pe,watchEnabled:me=!1,dictating:he,dictationText:M=``,call:ge,onControl:N,intro:_e,picker:ve,prompt:ye,promptRef:be,promptsDeferred:xe=0,onReviewPrompts:Se}){let{t:Ce}=j(),we=e!==`resting`,P=e===`call`||e===`dictating`||e===`offer`||e===`summary`||e===`watching`,[Te,Ee]=(0,L.useState)(!1);(0,L.useEffect)(()=>{if(e!==`hover`){Ee(!1);return}let t=setTimeout(()=>{Ee(!0)},500);return()=>{clearTimeout(t)}},[e]);let De=g===`talk`||e===`hover`&&Te,Oe=ue===`pending`,ke=A||ge!==void 0&&rt.has(ge.phase),F=ce(),Ae=(0,L.useRef)(null),[Me,I]=(0,L.useState)(null),Ne=(0,L.useRef)(0);(0,L.useLayoutEffect)(()=>{let e=Ae.current;if(!e)return;let t=()=>{I({width:e.scrollWidth-Ne.current,height:e.scrollHeight})};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[e]);let{scale:z,avatarRel:Pe,avatarHalf:B,baseline:Fe,gap:V,inUnits:H,lineAt:Ie,edgeAt:Le}=je(s,c),U=e===`call`,W=U&&(u===`left`||u===`right`),Re=W?u===`left`?`right`:`left`:`above`,ze=P?W?(Me?.width??dt.width)+16:(Me?.width??lt[e])+16:0,Be=P?(Me?.height??dt.height)+16:0,G=U&&!W&&ye!=null,Ve=(0,L.useRef)(null),[He,Ue]=(0,L.useState)(0);(0,L.useLayoutEffect)(()=>{let e=Ve.current;if(!G||e===null)return;let t=()=>{Ue(Math.ceil(e.getBoundingClientRect().width/z))};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[G,ye,z]);let We=G?Math.max(ze,He):ze,Ge=We-ze;(0,L.useLayoutEffect)(()=>{Ne.current=Ge},[Ge]);let Ke=W?`50%`:Ie(l,0),qe=Le(o,B+V),Je=s/E,Ye=we?{width:X.closing*Je,height:X.closing*Je}:X.idle,Xe=_e!=null,Ze=U?{width:We,...W?{height:Be}:{},left:`50%`,top:Ke,transform:`translate(-50%, -50%)`,transitionTimingFunction:`cubic-bezier(.2,.8,.2,1)`}:{width:ze,...qe,top:Ie(l,Fe),transform:`translateY(-100%)`,transitionTimingFunction:`cubic-bezier(.2,.8,.2,1)`},Qe=U&&!W?`calc(50% - ${We/2+H(B+V)}px)`:`50%`,$e=W?`calc(50% - ${Be/2+H(B+V)}px)`:Ke;return(0,R.jsxs)(`div`,{className:`absolute top-0 left-0 origin-top-left`,style:{width:`${100/z}%`,height:`${100/z}%`,transform:`scale(${z})`},children:[G?(0,R.jsx)(xt,{dock:u,top:Ke,width:We,accentHex:n,lit:P,promptRef:be,children:ye}):null,G?(0,R.jsx)(`div`,{ref:Ve,inert:!0,"aria-hidden":!0,"data-theme":`dark`,className:`pointer-events-none invisible absolute top-0 left-0 w-max max-w-[640px]`,children:ye}):null,(0,R.jsxs)(`div`,{className:`absolute flex cursor-grab items-center rounded-full duration-300 select-none active:cursor-grabbing ${W?`flex-col transition-[width,height] will-change-[width,height]`:`h-11 transition-[width] will-change-[width]`} ${!U&&o===`left`?`justify-end`:``}`,style:Ze,onPointerDown:m,onContextMenu:h,ref:d,children:[(0,R.jsx)(`span`,{className:`absolute inset-0 rounded-full transition-opacity duration-200 ${G?`bg-[#17181b]`:`border border-white/10 bg-[#17181b]/95 shadow-lg shadow-black/40`}`,style:{opacity:+!!P},"aria-hidden":!0}),U&&(0,R.jsx)(`span`,{className:`companion-working-ring pointer-events-none absolute -inset-0.5 rounded-full transition-opacity duration-200`,style:{opacity:P&&!G?1:0,"--companion-ring-accent":n},"aria-hidden":!0}),(0,R.jsx)(`div`,{className:`relative flex shrink-0 items-center ${W?`flex-col`:`h-11`}`,style:W?{paddingBlock:8,paddingInline:8}:{paddingInline:8},children:(0,R.jsx)(`div`,{className:`flex items-center gap-1 overflow-hidden transition-opacity duration-200 ${W?`min-h-0 flex-col`:`min-w-0`}`,ref:Ae,inert:!P,style:{opacity:+!!P,transitionDelay:P?`120ms`:`0ms`},children:e===`call`?(0,R.jsx)(nt.Provider,{value:Re,children:(0,R.jsx)(St,{call:ge,assistantName:t,watching:le,watchEnabled:me,picking:y,sharing:b,shareEnabled:x,sharePicking:S,annotating:te,marked:re,annotationTool:w,vertical:W,drawToolsPlacement:W?u===`left`?`right`:`left`:l===`up`?`above`:`below`,drawToolsRef:ne,onAnnotationTool:T,onControl:N,onWatch:_,onTeach:v,onShare:ee,onStopShare:C,onAnnotate:D,onClearMarks:O,openPicker:k,voicesPickable:ie,onPicker:ae,pickerSide:W?u===`left`?`right`:`left`:u===`top`?`below`:`above`,shortcuts:oe,promptsDeferred:xe,lineExtra:Ge,onReviewPrompts:Se})}):e===`dictating`&&he!==void 0?(0,R.jsx)(Q,{dictating:he,dictationText:M}):e===`summary`&&ue!==void 0?(0,R.jsx)(bt,{retro:ue,onWatchRetro:de}):e===`offer`&&fe!==void 0?(0,R.jsx)(_t,{offer:fe}):(0,R.jsx)(vt,{watching:le,onWatch:_})})})]}),(0,R.jsx)(`div`,{className:`absolute cursor-grab active:cursor-grabbing`,style:{width:H(X.idle.width),height:H(X.idle.height),pointerEvents:we?`none`:void 0,left:`50%`,top:Ke,transform:`translate(-50%, -50%)`},onPointerDown:m,onContextMenu:h,ref:f,"aria-hidden":!0,children:(0,R.jsx)(`div`,{className:`absolute top-1/2 left-1/2 rounded-full transition-[width,height,opacity] duration-300`,style:{width:H(Ye.width),height:H(Ye.height),transform:`translate(-50%, -50%)`,transitionTimingFunction:`cubic-bezier(.2,.8,.2,1)`,transitionProperty:F?`opacity`:void 0,boxShadow:Z(n,H(X.rim),H(X.bloom)),opacity:+!we}})}),(0,R.jsx)(ht,{className:De?`opacity-100`:`opacity-0`,"data-companion-name":De?`shown`:`hidden`,style:{left:`50%`,top:Ke,transform:`translate(-50%, calc(-100% - ${H(B)}px - 4px))`},label:Ce(`companionSurface.talk`)}),(0,R.jsx)(gt,{label:Ce(e===`call`?`companionSurface.openVellum`:`companionSurface.talk`),accentHex:n,avatarSrc:r,character:i,attentive:a,busy:ke||le||Oe,collapsed:!we&&!Xe,restingScale:E/s,style:{left:Qe,top:$e,transform:`translate(-50%, -50%)${Pe===1?``:` scale(${Pe})`}`,transition:F?void 0:`left 300ms cubic-bezier(.2,.8,.2,1), top 300ms cubic-bezier(.2,.8,.2,1)`},elementRef:p,onPointerDown:m,onContextMenu:h,onClick:se}),_e,ve,pe]})}var pt=`rgba(28, 28, 30, 0.55)`,mt=`backdrop-blur-md backdrop-saturate-150`;function ht({className:e,style:t,label:n,shortcut:r,beak:i=`down`,...a}){return(0,R.jsxs)(`span`,{className:`pointer-events-none absolute rounded-md px-2 py-1 text-[11px] font-medium whitespace-nowrap text-white/90 shadow-md shadow-black/30 transition-opacity duration-200 ${mt} ${e}`,style:{...t,backgroundColor:pt},"aria-hidden":!0,...a,children:[n,r===void 0?null:(0,R.jsx)(`span`,{className:`ml-1.5 font-normal text-white/60`,"data-shortcut":!0,children:r}),(0,R.jsx)(`span`,{className:`absolute ${i===`down`?`top-full left-1/2 h-1.5 w-2.5 -translate-x-1/2`:i===`left`?`top-1/2 right-full h-2.5 w-1.5 -translate-y-1/2`:`top-1/2 left-full h-2.5 w-1.5 -translate-y-1/2`} ${mt}`,style:{backgroundColor:pt,clipPath:i===`down`?`polygon(0 0, 100% 0, 50% 100%)`:i===`left`?`polygon(100% 0, 100% 100%, 0 50%)`:`polygon(0 0, 0 100%, 100% 50%)`},"aria-hidden":!0})]})}function gt({accentHex:e,avatarSrc:t,character:n,busy:r=!1,attentive:i=!1,collapsed:a=!1,restingScale:o=1,label:s,style:c,elementRef:l,onPointerDown:u,onContextMenu:f,onClick:p}){let m=ce();return(0,R.jsxs)(`div`,{role:`button`,"aria-label":s,className:`absolute grid size-11 cursor-grab place-items-center active:cursor-grabbing`,style:c,ref:l,onPointerDown:u,onContextMenu:f,onClick:p,children:[n===void 0?null:(0,R.jsx)(tt,{character:n,capsule:at,enabled:a&&!r,className:`absolute top-1/2 left-1/2 transition-opacity duration-200`,style:{transform:`translate(-50%, -50%) scale(${o})`,opacity:+!!a}}),(0,R.jsx)(`div`,{className:`transition-[opacity,transform] duration-300`,style:{opacity:+!a,transform:a?`scale(0.35)`:`scale(1)`,transitionTimingFunction:`cubic-bezier(.2,.8,.2,1)`,transitionProperty:m?`opacity`:void 0},children:(0,R.jsx)(`div`,{className:`companion-avatar-bob relative grid place-items-center`,style:{animation:m?`none`:void 0},children:n===void 0?t===void 0?(0,R.jsx)(`span`,{className:`relative size-7 rounded-full drop-shadow-[0_1px_3px_rgba(0,0,0,0.55)]`,style:{background:e},"aria-hidden":!0}):(0,R.jsx)(`img`,{src:t,alt:``,draggable:!1,className:`relative size-7 rounded-full object-contain drop-shadow-[0_1px_3px_rgba(0,0,0,0.55)] [-webkit-user-drag:none]`}):(0,R.jsx)(`div`,{className:`relative drop-shadow-[0_1px_3px_rgba(0,0,0,0.55)]`,children:(0,R.jsx)(T,{components:d,traits:n,size:it,isAssistantBusy:r,attentive:i})})})})]})}function Q({dictating:e,dictationText:t}){let{t:n}=j(),r=t.trim();return(0,R.jsxs)(`div`,{className:`flex h-7 shrink-0 items-center gap-2 px-1`,children:[(0,R.jsx)(ge,{className:`size-4 shrink-0`,"aria-hidden":!0}),r?(0,R.jsx)(`span`,{dir:`auto`,className:`flex justify-end overflow-hidden text-[12px] whitespace-nowrap text-white/85`,style:{width:ot},children:(0,R.jsx)(`span`,{className:`shrink-0`,children:r})}):(0,R.jsx)(`span`,{className:`truncate text-[12px] text-white/85`,style:{width:ot},children:n(e===`listening`?`companionSurface.dictating`:`companionSurface.dictatingTranscribing`)})]})}function _t({offer:e}){let{t}=j();return(0,R.jsxs)(`div`,{className:`flex h-7 shrink-0 items-center gap-2 px-1`,children:[(0,R.jsx)(ge,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,R.jsx)(`span`,{className:`truncate text-[12px] text-white/85`,style:{width:st},children:e.reason===`claimed`?t(`companionSurface.offerHeard`,{app:e.app}):t(`companionSurface.offerNowhere`)})]})}function vt({watching:e=!1,onWatch:t}){return(0,R.jsx)(R.Fragment,{children:e&&(0,R.jsx)(kt,{onWatch:t})})}function yt({watching:e,watchEnabled:t,picking:n,onWatch:r,onTeach:i}){let{t:a}=j();return t?(0,R.jsx)($,{icon:(0,R.jsx)(he,{className:`size-4`}),label:a(`companionSurface.teach`),pressed:e||n,onClick:e?r:i??r}):e?(0,R.jsx)(kt,{onWatch:r}):null}function bt({retro:e,onWatchRetro:t}){let{t:n}=j();return e===`pending`?(0,R.jsx)(`span`,{className:`ml-1 shrink-0 text-[12px] text-white/85`,children:n(`companionSurface.summarizing`)}):(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)($,{icon:(0,R.jsx)(Ee,{className:`size-4`}),label:n(`companionSurface.showSummary`),showLabel:!0,onClick:()=>{t?.(!0)}}),(0,R.jsx)($,{icon:(0,R.jsx)(Ce,{className:`size-4`}),label:n(`companionSurface.notNow`),showLabel:!0,onClick:()=>{t?.(!1)}})]})}function xt({dock:e,top:t,width:n,accentHex:r,lit:i,promptRef:a,children:o}){let s=e===`top`;return(0,R.jsxs)(`div`,{ref:a,"data-theme":`dark`,className:`absolute`,style:{left:`50%`,top:t,width:n,transform:s?`translate(-50%, 0)`:`translate(-50%, -100%)`,[s?`paddingTop`:`paddingBottom`]:22},onPointerDown:e=>{e.stopPropagation()},children:[(0,R.jsx)(`span`,{"aria-hidden":!0,className:`absolute inset-0 bg-[#17181b] shadow-lg shadow-black/40 ${s?`rounded-b-[22px]`:`rounded-t-[22px]`}`}),(0,R.jsx)(`span`,{"aria-hidden":!0,className:`absolute right-4 left-4 h-px bg-white/10`,style:s?{top:22}:{bottom:22}}),(0,R.jsx)(`span`,{"aria-hidden":!0,className:`companion-working-ring pointer-events-none absolute transition-opacity duration-200`,style:{left:-2,right:-2,top:s?-24:-2,bottom:s?-2:-24,borderRadius:24,opacity:+!!i,"--companion-ring-accent":r}}),(0,R.jsx)(`div`,{className:`relative`,children:o})]})}function St({call:e,assistantName:t,watching:n,watchEnabled:r,picking:i,sharing:a,shareEnabled:o,sharePicking:s,annotating:c,marked:l,annotationTool:u,vertical:d,drawToolsPlacement:f,drawToolsRef:p,onAnnotationTool:m,onControl:h,onWatch:g,onTeach:_,onShare:v,onStopShare:y,onAnnotate:b,onClearMarks:x,openPicker:S,voicesPickable:ee,onPicker:C,pickerSide:te,shortcuts:w,promptsDeferred:T=0,onReviewPrompts:ne,lineExtra:E=0}){let{t:D}=j();if(e===void 0)return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Ct,{vertical:d,extra:E,text:t===``?D(`companionSurface.calling`):D(`companionSurface.callingNamed`,{name:t})}),(0,R.jsx)(yt,{watching:n,watchEnabled:r,picking:i,onWatch:g,onTeach:_}),(0,R.jsx)(Ot,{onControl:h})]});let re=e.detail||e.label,{muted:O,outputMuted:k}=e;return(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)(Ct,{vertical:d,extra:E,text:re}),T>0?(0,R.jsx)(`button`,{type:`button`,"data-theme":`dark`,"aria-label":D(`companionPopover.pendingBadge`,{count:T}),className:`flex size-7 shrink-0 items-center justify-center rounded-full bg-[var(--system-negative-weak)] text-[13px] text-[var(--system-negative-strong)] transition-colors hover:bg-[var(--system-negative-hover)] hover:text-white`,onPointerDown:e=>{e.stopPropagation()},onClick:()=>{ne?.()},children:T}):null,(0,R.jsx)(yt,{watching:n,watchEnabled:r,picking:i,onWatch:g,onTeach:_}),(0,R.jsx)(wt,{sharing:a,shareEnabled:o,sharePicking:s,shortcut:o?w?.share:void 0,onShare:v,onStopShare:y}),(0,R.jsx)(Tt,{sharing:a,annotating:c,shortcut:o?w?.draw:void 0,tool:u,placement:f,toolsRef:p,onAnnotate:b,onTool:m}),(0,R.jsx)(Dt,{sharing:a,marked:l,onClearMarks:x}),(0,R.jsx)($,{icon:O?(0,R.jsx)(de,{className:`size-4`}):(0,R.jsx)(N,{className:`size-4`}),label:D(O?`companionSurface.unmuteMicrophone`:`companionSurface.muteMicrophone`),shortcut:w?.muteMicrophone,onClick:()=>{h?.(O?`unmuteMicrophone`:`muteMicrophone`)}}),(0,R.jsx)(Pt,{picker:`microphones`,label:D(`companionSurface.chooseMicrophone`),side:te,open:S===`microphones`,onPicker:C}),(0,R.jsx)($,{icon:k?(0,R.jsx)(Te,{className:`size-4`}):(0,R.jsx)(P,{className:`size-4`}),label:D(k?`companionSurface.unmuteAssistant`:`companionSurface.muteAssistant`),shortcut:w?.muteAssistant,onClick:()=>{h?.(k?`unmuteAssistantAudio`:`muteAssistantAudio`)}}),ee?(0,R.jsx)(Pt,{picker:`voices`,label:D(`companionSurface.chooseVoice`),side:te,open:S===`voices`,onPicker:C}):null,(0,R.jsx)(Ot,{onControl:h})]})}function Ct({vertical:e,text:t,extra:n=0}){return e?(0,R.jsx)(`span`,{className:`mt-1 shrink-0 truncate text-[12px] text-white/85`,style:{height:ut,writingMode:`vertical-rl`},"data-label":`line`,children:t}):(0,R.jsx)(`span`,{className:`ml-1 shrink-0 truncate text-[12px] text-white/85`,style:{width:ct+n},"data-label":`line`,children:t})}function wt({sharing:e,shareEnabled:t,sharePicking:n,shortcut:r,onShare:i,onStopShare:a}){let{t:o}=j();return!t&&!e?null:(0,R.jsx)($,{icon:(0,R.jsx)(I,{className:`size-4`}),label:o(`companionSurface.share`),shortcut:r,pressed:e||n,onClick:e?a:i})}function Tt({sharing:e,annotating:t,shortcut:n,tool:r,placement:i,toolsRef:a,onAnnotate:o,onTool:s}){let{t:c}=j();return e?(0,R.jsxs)(R.Fragment,{children:[(0,R.jsx)($,{icon:(0,R.jsx)(be,{className:`size-4`}),label:c(`companionSurface.draw`),shortcut:n,pressed:t,className:`companion-draw-anchor`,onClick:()=>{o?.(!t)}}),t&&r!==void 0&&(0,R.jsx)(Et,{tool:r,placement:i,toolsRef:a,onTool:s})]}):null}function Et({tool:e,placement:t,toolsRef:n,onTool:r}){let{t:i}=j(),a=[{tool:`freehand`,icon:(0,R.jsx)(be,{className:`size-4`}),label:i(`companionSurface.drawFreehand`)},{tool:`line`,icon:(0,R.jsx)(Ne,{className:`size-4`}),label:i(`companionSurface.drawLine`)},{tool:`box`,icon:(0,R.jsx)(ve,{className:`size-4`}),label:i(`companionSurface.drawBox`)},{tool:`circle`,icon:(0,R.jsx)(we,{className:`size-4`}),label:i(`companionSurface.drawCircle`)}];return(0,R.jsx)(`div`,{className:`companion-draw-tools absolute flex items-center gap-0.5 rounded-full border border-white/10 bg-[#17181b]/95 p-0.5 shadow-lg shadow-black/40 companion-draw-tools-${t} ${t===`left`||t===`right`?`flex-col`:``}`,role:`group`,"aria-label":i(`companionSurface.drawTools`),"data-testid":`companion-draw-tools`,ref:n,onPointerDown:e=>{e.stopPropagation()},children:a.map(t=>(0,R.jsx)($,{icon:t.icon,label:t.label,pressed:e===t.tool,onClick:()=>{r?.(t.tool)}},t.tool))})}function Dt({sharing:e,marked:t,onClearMarks:n}){let{t:r}=j();return!e||!t?null:(0,R.jsx)($,{icon:(0,R.jsx)(Me,{className:`size-4`}),label:r(`companionSurface.clearMarks`),onClick:()=>{n?.()}})}function Ot({onControl:e}){let{t}=j();return(0,R.jsx)($,{icon:(0,R.jsx)(Ce,{className:`size-4`,strokeWidth:2.5}),label:t(`companionSurface.endSession`),tone:`negative`,onClick:()=>{e?.(`endSession`)}})}function kt({onWatch:e}){let{t}=j();return(0,R.jsx)($,{icon:(0,R.jsx)(xe,{className:`size-4`}),label:t(`companionSurface.stopTeaching`),onClick:e})}var At=`-translate-y-[calc(50%+22px)]`,jt={right:`translate-x-[calc(50%+22px)]`,left:`-translate-x-[calc(50%+22px)]`},Mt=e=>e===`above`?{className:At,beak:`down`}:{className:jt[e],beak:e===`right`?`left`:`right`},Nt={above:_e,below:M,left:pe,right:ye};function Pt({picker:e,label:t,side:n,open:r,onPicker:i}){if(i===void 0)return null;let a=Nt[n];return(0,R.jsx)($,{icon:(0,R.jsx)(a,{className:`size-3.5`,strokeWidth:2.25}),label:t,pressed:r,narrow:!0,onClick:()=>{i(e)}})}function $({icon:e,label:t,shortcut:n,tone:r,showLabel:i=!1,pressed:a,narrow:o=!1,className:s=``,onClick:c}){let l=Mt((0,L.useContext)(nt));return(0,R.jsxs)(`button`,{type:`button`,"aria-label":t,"aria-pressed":a,onClick:c,onPointerDown:e=>{e.stopPropagation()},className:`group flex h-7 shrink-0 items-center justify-center gap-1.5 rounded-full text-[12px] transition-colors hover:bg-white/15 ${o?`-mx-1 px-0.5`:`px-2`} ${s} ${a===!0?`bg-white/15`:``} ${r===`negative`?`text-[#ff6b6b]`:r===`positive`?`text-[#5ee08a]`:`text-white/85`}`,children:[e,i?(0,R.jsx)(`span`,{children:t}):(0,R.jsx)(ht,{label:t,shortcut:n,className:`opacity-0 group-hover:opacity-100 ${l.className}`,beak:l.beak,"data-label":`hover`})]})}var Ft=3,It=440;function Lt(){let{t:e}=j(),[c,u]=(0,L.useState)(`right`),[d,m]=(0,L.useState)(`up`),[x,C]=(0,L.useState)(`bottom`),[T,ce]=(0,L.useState)(E),[A,le]=(0,L.useState)(E),[ue,de]=(0,L.useState)(),[fe,pe]=(0,L.useState)(),[me,he]=(0,L.useState)(),[M,ge]=(0,L.useState)(null),[N,_e]=(0,L.useState)(!1),[ve,ye]=(0,L.useState)(void 0),[be,xe]=(0,L.useState)(``),[Se,Ce]=(0,L.useState)(``),[we,P]=(0,L.useState)(!1),[Te,Ee]=(0,L.useState)(!1),[je,Me]=(0,L.useState)(void 0),[I,Ne]=(0,L.useState)(void 0),[z,Pe]=(0,L.useState)(!1),[B,Fe]=(0,L.useState)(void 0),[V,H]=(0,L.useState)(void 0),[Ie,Le]=(0,L.useState)(!1),[W,Re]=(0,L.useState)(!1),[ze,Be]=(0,L.useState)(void 0),[G,Ve]=(0,L.useState)(!1),[Ue,We]=(0,L.useState)(!1),[Je,Ye]=(0,L.useState)(!1),[Xe,Ze]=(0,L.useState)(!1),[Qe,$e]=(0,L.useState)(void 0),[K,q]=(0,L.useState)(!1),[J,et]=(0,L.useState)(`teach`),[tt,nt]=(0,L.useState)(null),Y=(0,L.useRef)(0),[rt,it]=(0,L.useState)(!1),[X,at]=(0,L.useState)(null),Z=(0,L.useRef)(!1),ot=(0,L.useRef)(null),st=(0,L.useRef)(null),ct=(0,L.useRef)(null),lt=(0,L.useRef)(null),ut=(0,L.useRef)(null),dt=(0,L.useRef)(null),pt=(0,L.useRef)(null),mt=(0,L.useRef)(null),ht=(0,L.useRef)(!1),gt=(0,L.useCallback)(e=>{mt.current=e,e===null&&ht.current&&(ht.current=!1,Z.current=!1,O(!1))},[]),Q=(0,L.useRef)(null),_t=(0,L.useRef)(null),vt=(0,L.useRef)(!1);(0,L.useEffect)(()=>{let e=e=>{u(e.growth),m(e.cardGrowth),C(e.dock??`bottom`),ce(e.avatarBox),le(e.optionsBox??e.avatarBox),de(e.avatarBase64===void 0?void 0:`data:image/png;base64,${e.avatarBase64}`),pe(e.character),he(e.accentHex),ge(e.call),_e(e.dialing===!0),Ce(e.assistantName),P(e.working),Ee(e.watching===!0),ye(e.dictating),xe(e.dictationText??``),Me(e.watchRetro),Ne(e.dictationOffer),Fe(e.popover),Pe(e.voicesPickable===!0),H(e.popoverView),Le(e.watchEnabled===!0),Re(e.watchTargets===!0),Be(e.screenShare),Ve(e.screenShareEnabled===!0),We(e.annotating===!0),Ye((e.coachmarks?.length??0)>0),Ze(e.marksCleared!==void 0),$e(e.annotationTool),at(e.intro)},t=w(e);return a().then(t=>{t&&e(t)}),t},[]),(0,L.useEffect)(()=>()=>{O(!1)},[]);let yt=M!==null||N,bt=ze!==void 0,xt=(0,L.useMemo)(()=>s()?ee():void 0,[]);(0,L.useEffect)(()=>{yt||(Y.current+=1,q(!1))},[yt]),(0,L.useEffect)(()=>{Te&&J===`teach`&&(Y.current+=1,q(!1))},[Te,J]),(0,L.useEffect)(()=>{bt&&J===`share`&&(Y.current+=1,q(!1))},[bt,J]);let St=(e,t)=>{nt(null),et(e),q(!0);let n=++Y.current;g().then(e=>{if(n===Y.current){if(e!==null){nt(e);return}q(!1),t()}})},Ct=K&&tt?.screenRecordingGranted===!1;(0,L.useEffect)(()=>{if(Ct)return oe(e=>{if(e.screen?.status!==`granted`)return;let t=++Y.current;g().then(e=>{t!==Y.current||e===null||nt(e)})})},[Ct]);let wt=()=>{if(!W){b();return}if(K&&J===`teach`){Y.current+=1,q(!1);return}St(`teach`,b)},Tt=()=>{if(K&&J===`share`){Y.current+=1,q(!1);return}St(`share`,()=>void 0)};(0,L.useEffect)(()=>{!K&&Z.current&&(Z.current=!1,O(!1))},[K]),(0,L.useEffect)(()=>{I===void 0&&Z.current&&(Z.current=!1,O(!1))},[I]);let Et=(0,L.useRef)(!1),Dt=B!==void 0&&V!==void 0&&V!==`deferred`&&(M!==null||N)&&x!==`left`&&x!==`right`,Ot=Dt?B?.id:void 0;(0,L.useLayoutEffect)(()=>{let e=pt.current;if(Ot===void 0||e===null)return;let t=()=>{ie(Ot,e.getBoundingClientRect().height)};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[Ot,V]),(0,L.useEffect)(()=>{!Dt&&Et.current&&(Et.current=!1,Z.current=!1,O(!1))},[Dt]);let kt=e=>{if(Y.current+=1,q(!1),J===`share`){D(e);return}b(e)},At=e=>{Z.current!==e&&(Z.current=e,O(e))},jt=X!==null&&M===null&&!N,Mt=(0,L.useRef)(jt);(0,L.useEffect)(()=>{Mt.current&&!jt&&(it(!1),At(!1)),Mt.current=jt},[jt]);let Nt=Ke(X),Pt=M!==null||N?`call`:ve===void 0?I===void 0?Te?`watching`:je===void 0?Nt??(rt?`hover`:`resting`):`summary`:`offer`:`dictating`,$=e=>{if(Q.current!==null&&e.buttons===0&&(Q.current=null,l()),Q.current!==null){let{x:t,y:n}=Q.current;h(e.screenX-t,e.screenY-n),Q.current={x:e.screenX,y:e.screenY};let r=_t.current;r!==null&&Math.abs(e.screenX-r.x)+Math.abs(e.screenY-r.y)>Ft&&(vt.current=!0);return}let t=ct.current;if(!t)return;let n=ot.current?.getBoundingClientRect()??null,r=st.current?.getBoundingClientRect()??null,i=n!==null&&n.width>0?n:r!==null&&r.width>0?r:null,a=Ae({x:e.clientX,y:e.clientY},{avatar:t.getBoundingClientRect(),pill:i}),o=lt.current,s=o!==null&&F(o.getBoundingClientRect(),e.clientX,e.clientY),c=dt.current,u=c!==null&&F(c.getBoundingClientRect(),e.clientX,e.clientY),d=ut.current,f=d!==null&&F(d.getBoundingClientRect(),e.clientX,e.clientY),p=pt.current,m=p!==null&&F(p.getBoundingClientRect(),e.clientX,e.clientY),g=mt.current,_=g!==null&&F(g.getBoundingClientRect(),e.clientX,e.clientY);it(a),ht.current=_,Et.current=m,At(a||s||f||u||_||m)},Lt=De(M,me,fe),Rt=B===void 0||V!==`deferred`?0:B.kind===`approvals`?B.items.length:1;return(0,R.jsx)(`div`,{className:`relative h-screen w-screen bg-transparent`,onMouseMove:$,onMouseUp:()=>{Q.current!==null&&(Q.current=null,l())},onPointerCancel:()=>{Q.current!==null&&(Q.current=null,l()),it(!1),At(!1)},onMouseLeave:()=>{Q.current===null&&(it(!1),At(!1))},children:(0,R.jsx)(ft,{phase:Pt,growth:c,cardGrowth:d,dock:x,avatarBox:T,optionsBox:A,avatarSrc:ue,character:fe,hovered:rt,accentHex:Lt,call:M??void 0,assistantName:Se,dictating:ve,dictationText:be,working:we,watching:Te,watchRetro:je,onWatchRetro:p,dictationOffer:I,offer:I===void 0?null:(0,R.jsx)(He,{offer:I,growth:c,cardGrowth:d,avatarBox:T,optionsBox:A,cardRef:dt,onAnswer:e=>{i(e,I.id)}}),watchEnabled:Ie,spotlight:Ge(X),intro:!jt||X===null?null:(0,R.jsx)(qe,{beat:X,growth:c,cardGrowth:d,avatarBox:T,optionsBox:A,accentHex:Lt,assistantName:Se===``?void 0:Se,cardRef:lt,onAdvance:n}),rootRef:ot,restingPillRef:st,avatarRef:ct,onSurfacePointerDown:e=>{e.button===0&&e.target.closest(`button, a`)===null&&(e.currentTarget.setPointerCapture(e.pointerId),Q.current={x:e.screenX,y:e.screenY},_t.current={x:e.screenX,y:e.screenY},vt.current=!1)},onSurfaceContextMenu:e=>{(window.getSelection()?.toString().trim().length??0)>0||(e.preventDefault(),k())},onAvatarClick:()=>{if(!vt.current){if(M!==null||N){se();return}y()}},onWatch:()=>{b()},onTeach:wt,picking:K&&J===`teach`,sharing:bt,shareEnabled:G,sharePicking:K&&J===`share`,onShare:Tt,onStopShare:()=>{D()},annotating:Ue,onAnnotate:e=>{t(e)},marked:Xe&&(Je||Ue),onClearMarks:()=>{o()},openPicker:B?.kind===`microphones`||B?.kind===`voices`?B.kind:void 0,voicesPickable:z,onPicker:re()?e=>{ae(e)}:void 0,annotationTool:Qe,onAnnotationTool:e=>{S(e)},drawToolsRef:gt,shortcuts:xt,picker:K?(0,R.jsx)(U,{sources:tt,captureThumbnail:r,cardGrowth:d,avatarBox:T,optionsBox:A,cardRef:ut,label:J===`share`?e(`companionSurface.sharePicker`):void 0,onPick:kt,onAllowScreenRecording:()=>{te(`screen`).catch(()=>void 0)}}):null,prompt:!Dt||B===void 0?null:V===`row`&&(B.kind===`approvals`||B.kind===`secret`)?(0,R.jsx)(Oe,{popover:B,onAnswer:e=>{f(e,B.id)},onView:e=>{v(B.id,e)}}):(0,R.jsx)(ke,{attached:!0,popover:B,view:V??`expanded`,style:{maxHeight:It},onAnswer:e=>{f(e,B.id)},onView:e=>{v(B.id,e)},onOpenLink:e=>{_(e)}},B.id),promptRef:pt,promptsDeferred:Rt,onReviewPrompts:()=>{B!==void 0&&v(B.id,`expanded`)},onControl:(e,t)=>{ne(t===void 0?{action:e}:{action:e,requestId:t})}})})}export{Lt as CompanionSurfacePage};