@vellumai/web 0.12.2-staging.5 → 0.12.2-staging.7

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 (395) hide show
  1. package/dist/assets/{a2a-invite-D7Z1FvN-.js → a2a-invite-K_LszpwN.js} +1 -1
  2. package/dist/assets/{about-page-JRNWZ7kb.js → about-page-C2ZvX_F-.js} +1 -1
  3. package/dist/assets/{account-page-Fw9S3qL2.js → account-page-e0PceRpg.js} +1 -1
  4. package/dist/assets/{account-shell-BZp2-g1N.js → account-shell-C6z7Vrdr.js} +1 -1
  5. package/dist/assets/{acp-run-detail-panel-2Nc7KPDZ.js → acp-run-detail-panel-B2O0UZTM.js} +3 -3
  6. package/dist/assets/activation-list-route-C5G8yEUf.js +1 -0
  7. package/dist/assets/{activity-redirect-page-ClzSvQoo.js → activity-redirect-page-DE1iuEIc.js} +1 -1
  8. package/dist/assets/activity-steps-panel-DIclL9Tz.js +1 -0
  9. package/dist/assets/add-credits-modal-6gK5H4L1.js +1 -0
  10. package/dist/assets/{add-credits-modal-CAUxaNjZ.js → add-credits-modal-NTVA50Mb.js} +1 -1
  11. package/dist/assets/ai-page-BKChlGuu.js +1 -0
  12. package/dist/assets/android-billing-handoff-DzlmB2oT.js +1 -0
  13. package/dist/assets/{api-key-screen-Ccta6gO2.js → api-key-screen-PLpXk-Bj.js} +1 -1
  14. package/dist/assets/app-DKzyKjOQ.css +2 -0
  15. package/dist/assets/app-DVwAB8n7.js +392 -0
  16. package/dist/assets/{app-info-Csu7V_TE.js → app-info-reMTZ2pt.js} +1 -1
  17. package/dist/assets/archive-redirect-page-Cr_Venij.js +1 -0
  18. package/dist/assets/{assistant-status-panel-WAUlzwkS.js → assistant-status-panel-CvQuUFvM.js} +1 -1
  19. package/dist/assets/auth-store-BKA7qeyc.js +1 -0
  20. package/dist/assets/{auth-welcome-screen-pfPKjv5w.js → auth-welcome-screen-B2tyrMPg.js} +1 -1
  21. package/dist/assets/avatar-bundled-components-CfJ4yCfG.js +1 -0
  22. package/dist/assets/avatar-random-Dpf2HGEt.js +2 -0
  23. package/dist/assets/{await-org-header-settled-6bT0rbUs.js → await-org-header-settled-B9PHlwR4.js} +1 -1
  24. package/dist/assets/background-task-detail-panel-GPr2jleb.js +1 -0
  25. package/dist/assets/billing-page-Cryn2tS8.js +3 -0
  26. package/dist/assets/{billing-redirect-page-Dl__amIR.js → billing-redirect-page-_M75fYSt.js} +1 -1
  27. package/dist/assets/{bookmarks-page-5HR6Klms.js → bookmarks-page-DNY0ctx1.js} +1 -1
  28. package/dist/assets/{bundle-confirm-page-BxHGHYtw.js → bundle-confirm-page-DH--yDFi.js} +1 -1
  29. package/dist/assets/channel-transcript-panel-DRxsCwgF.js +1 -0
  30. package/dist/assets/channels-page-route-5Wzd9sdm.js +1 -0
  31. package/dist/assets/{chat-k0ASlCf6.js → chat-CaPTWqrU.js} +2 -2
  32. package/dist/assets/{chat-8C19KXOV.js → chat-DDWpVL31.js} +2 -2
  33. package/dist/assets/chat-IAmPP3KS.js +3 -0
  34. package/dist/assets/chat-info-panel-jVdi1Ymk.js +1 -0
  35. package/dist/assets/{chat-BMyAegHU.js → chat-rQTkjE9-.js} +2 -2
  36. package/dist/assets/checkout-continuation-B5Hqp0Qm.js +1 -0
  37. package/dist/assets/checkout-page-CmxMePoe.js +1 -0
  38. package/dist/assets/checkout-return-target-Tp8s053l.js +1 -0
  39. package/dist/assets/command-palette-B0GwCVSG.js +1 -0
  40. package/dist/assets/{command-palette-DxolRnp8.js → command-palette-tg_jmCvj.js} +1 -1
  41. package/dist/assets/{command-palette-window-page-B4sEAiOF.js → command-palette-window-page-OdXwcHOe.js} +1 -1
  42. package/dist/assets/common-84oKDglL.js +1 -0
  43. package/dist/assets/common-Bd7JWmbm.js +1 -0
  44. package/dist/assets/common-Bvc-Ql-Q.js +1 -0
  45. package/dist/assets/common-W_BUmTCE.js +1 -0
  46. package/dist/assets/{community-page-OsB5Ahr9.js → community-page-N7xnmLtP.js} +1 -1
  47. package/dist/assets/{companion-accent-BhdiAsTr.js → companion-accent-CC2T6DTD.js} +1 -1
  48. package/dist/assets/{companion-dock-zones-page-xJmPXMgY.js → companion-dock-zones-page-BWRTUjFh.js} +1 -1
  49. package/dist/assets/{companion-layout-BPhlz6Wp.js → companion-layout-Ctf-oiUu.js} +1 -1
  50. package/dist/assets/{companion-popover-BsbCOPDj.js → companion-popover-CvuIHsxr.js} +1 -1
  51. package/dist/assets/{companion-popover-page-4ULIStvW.js → companion-popover-page-COtTpxBf.js} +1 -1
  52. package/dist/assets/companion-surface-page-B4KKIFMX.js +1 -0
  53. package/dist/assets/{companion-watch-frame-page-BwKy3_MW.js → companion-watch-frame-page-DdY-sEvj.js} +1 -1
  54. package/dist/assets/{connect-page-BDVFjuF6.js → connect-page-mviArXG0.js} +1 -1
  55. package/dist/assets/{consent-controls-BXRj0Z62.js → consent-controls-CGZ9hRD9.js} +1 -1
  56. package/dist/assets/contacts-gateway-D3D6BcYj.js +1 -0
  57. package/dist/assets/contacts-page-route-CnXN1b9Q.js +1 -0
  58. package/dist/assets/copy-button-BokGIgJY.js +1 -0
  59. package/dist/assets/{credential-entry-page-DZm1DSNe.js → credential-entry-page-BcOtgzDZ.js} +1 -1
  60. package/dist/assets/credentials-page-C-5wNF1Z.js +1 -0
  61. package/dist/assets/{csv-preview-DYuTN03x.js → csv-preview-BujPteS4.js} +1 -1
  62. package/dist/assets/danger-zone-redirect-page-BD_UQW3d.js +1 -0
  63. package/dist/assets/debug-page-DnMnJB9J.js +4 -0
  64. package/dist/assets/{deploy-dialogs-BXow2FID.js → deploy-dialogs-CveUjjv7.js} +1 -1
  65. package/dist/assets/deploy-dialogs-pR2YX6w3.js +1 -0
  66. package/dist/assets/desktop-preview-content-CtoOBBq1.js +2 -0
  67. package/dist/assets/{desktop-status-Dg1h8ABX.js → desktop-status-xKP11IwI.js} +1 -1
  68. package/dist/assets/{desktop-viewer-38EXOmZ4.js → desktop-viewer-0OAUh_Hn.js} +2 -2
  69. package/dist/assets/{detail-card-BpqiAUnN.js → detail-card-CH7nCTwL.js} +1 -1
  70. package/dist/assets/{detail-panel-stop-button-BFDJ5Gir.js → detail-panel-stop-button-CCMYv91a.js} +1 -1
  71. package/dist/assets/detail-primitives-BHSuCinp.js +1 -0
  72. package/dist/assets/developer-page-B0eQkOPk.js +1 -0
  73. package/dist/assets/devices-redirect-page-76YGuivM.js +1 -0
  74. package/dist/assets/{dictation-overlay-page-Du7FXduO.js → dictation-overlay-page-CNKyNY4_.js} +1 -1
  75. package/dist/assets/document-load-Drr0n43P.js +1 -0
  76. package/dist/assets/{document-load-B4r-kmWD.js → document-load-ZTOhaes3.js} +1 -1
  77. package/dist/assets/document-viewer-page-C3QkSuJO.js +1 -0
  78. package/dist/assets/{emails-page-Cp6XS4Jh.js → emails-page-BcIyo_vg.js} +1 -1
  79. package/dist/assets/environment-store-2DxNubrI.js +1 -0
  80. package/dist/assets/esm-BQ7nByB7.js +2 -0
  81. package/dist/assets/esm-BQzpPH7j.js +2 -0
  82. package/dist/assets/{esm-BfMa-HX2.js → esm-Bd00Z0XS.js} +2 -2
  83. package/dist/assets/esm-C9U16T0B.js +2 -0
  84. package/dist/assets/esm-CIA53Y2C.js +1 -0
  85. package/dist/assets/{esm-BRap8C09.js → esm-CJc5XaQ-.js} +1 -1
  86. package/dist/assets/esm-Cw8fKFJk.js +2 -0
  87. package/dist/assets/{esm-C8i-Nf3-.js → esm-Ddi5QueG.js} +1 -1
  88. package/dist/assets/esm-Ijlkodih.js +2 -0
  89. package/dist/assets/esm-xXsIdL3G.js +1 -0
  90. package/dist/assets/{file-diff-view-DIBSfwHd.js → file-diff-view-DrEc_ARh.js} +1 -1
  91. package/dist/assets/file-editor-Dm434b4v.js +1 -0
  92. package/dist/assets/general-page-Dg2tgz5k.js +2 -0
  93. package/dist/assets/hatching-screen-ZSoxM5tf.js +1 -0
  94. package/dist/assets/{hosting-screen-B1uKDCEA.js → hosting-screen-BrJitjCp.js} +1 -1
  95. package/dist/assets/{identity-page-route-Cm6K_bBR.js → identity-page-route-DkzYAjGT.js} +2 -2
  96. package/dist/assets/inspect-page-D_TZU3Hd.js +9 -0
  97. package/dist/assets/integrations-page-B3CDxIc7.js +1 -0
  98. package/dist/assets/intelligence-layout-De5u_8iO.js +1 -0
  99. package/dist/assets/intelligence-layout-slots-store-N3obF-c5.js +1 -0
  100. package/dist/assets/keyboard-shortcuts-redirect-page-P0KU4lAH.js +1 -0
  101. package/dist/assets/{latest-assistant-text-CRS_nZkk.js → latest-assistant-text-B1LKWEQo.js} +3 -3
  102. package/dist/assets/library-detail-page-DZtYl2_5.js +1 -0
  103. package/dist/assets/library-page-BMa93acf.js +1 -0
  104. package/dist/assets/local-mode-BEXEOOD-.js +1 -0
  105. package/dist/assets/login-page-D3ob1Kbr.js +1 -0
  106. package/dist/assets/logout-page-Di8TrFPN.js +1 -0
  107. package/dist/assets/{logs-layout-Dj1ybnfw.js → logs-layout-_xsmgYT_.js} +1 -1
  108. package/dist/assets/markdown-preview-bFFtI7RX.js +1 -0
  109. package/dist/assets/{media-preview-ozDVMMcK.js → media-preview-NpZgZ2UX.js} +1 -1
  110. package/dist/assets/memory-page-route-FjsBP3DB.js +2 -0
  111. package/dist/assets/{memory-router-playground-page-Cica9Nbb.js → memory-router-playground-page-BB2ac5OC.js} +1 -1
  112. package/dist/assets/{message-files-panel-DwXYI7Vj.js → message-files-panel-DHpvQ5fY.js} +1 -1
  113. package/dist/assets/{metric-card-CRZNAmE4.js → metric-card-BPzasLzN.js} +1 -1
  114. package/dist/assets/native-attachment-pickers-CpYVjv9a.js +1 -0
  115. package/dist/assets/native-file-Dsfi4Mv0.js +1 -0
  116. package/dist/assets/{notifications-page-8XrbAs9c.js → notifications-page-DPIJPx5l.js} +1 -1
  117. package/dist/assets/{oauth-complete-page-B-oiboUF.js → oauth-complete-page-BOf0k715.js} +1 -1
  118. package/dist/assets/{oauth-popup-complete-page-DbkS3Ktn.js → oauth-popup-complete-page-Coq4E2NT.js} +1 -1
  119. package/dist/assets/paired-platform-identity-Dcv6Ntac.js +1 -0
  120. package/dist/assets/{pairing-page-CL3aDKN8.js → pairing-page-vg713Xyw.js} +1 -1
  121. package/dist/assets/password-reset-page-B3_GA-20.js +1 -0
  122. package/dist/assets/{pdf-file-preview-DWb95OOo.js → pdf-file-preview-KeniHhVt.js} +1 -1
  123. package/dist/assets/{peeking-eyes-DJkKQl-G.js → peeking-eyes-CKdOXnSg.js} +1 -1
  124. package/dist/assets/personality-page-DKqJb-lv.js +1 -0
  125. package/dist/assets/{personality-page-Cd4rs_nw.js → personality-page-IzKy17q_.js} +1 -1
  126. package/dist/assets/personality-sliders-9gPglDwE.js +1 -0
  127. package/dist/assets/plans-page-Db7a4r_j.js +1 -0
  128. package/dist/assets/{platform-loopback-page-6AkvXRD1.js → platform-loopback-page-CQdKbXKL.js} +1 -1
  129. package/dist/assets/{plugin-detail-page-C2PIC2NZ.js → plugin-detail-page-DmBHeQHu.js} +1 -1
  130. package/dist/assets/{plugins-page-Y18LhhDz.js → plugins-page-Bif90SI6.js} +1 -1
  131. package/dist/assets/plugins-surface-BxUa-wvt.js +1 -0
  132. package/dist/assets/{preview-error-BWXX5254.js → preview-error-Cg-tO0Wq.js} +1 -1
  133. package/dist/assets/privacy-page-BZEfySAp.js +1 -0
  134. package/dist/assets/{privacy-screen-BdvoQ-DB.js → privacy-screen-D5GLfoae.js} +1 -1
  135. package/dist/assets/{provider-callback-page-CFS4DEY_.js → provider-callback-page-CuFRpWdm.js} +1 -1
  136. package/dist/assets/{provider-key-CYTAv7Kh.js → provider-key-m64urt9F.js} +1 -1
  137. package/dist/assets/{provider-signup-page-C89a_7j5.js → provider-signup-page-B2Z1mPXg.js} +1 -1
  138. package/dist/assets/{provisioning-targets-B5flnyHy.js → provisioning-targets-sLxTAFYS.js} +1 -1
  139. package/dist/assets/{quick-input-page-5f0AEU1o.js → quick-input-page-Dnrp-_VP.js} +1 -1
  140. package/dist/assets/referral-modal-DO65gxwh.js +1 -0
  141. package/dist/assets/referral-modal-DOb0dvou.js +1 -0
  142. package/dist/assets/{rehype-katex-Bp74Wkmo.js → rehype-katex-BS9QC2Z6.js} +1 -1
  143. package/dist/assets/{research-mock-page-DWfJd3UP.js → research-mock-page-fY6l0nIr.js} +1 -1
  144. package/dist/assets/research-onboarding-route-BKQuNKPZ.js +50 -0
  145. package/dist/assets/{review-terms-screen-M8IjrJH-.js → review-terms-screen-BsYKQ0lM.js} +1 -1
  146. package/dist/assets/routes-BpedycpL.js +1 -0
  147. package/dist/assets/schedules-CLZyrSz5.js +1 -0
  148. package/dist/assets/schedules-page-Cma0_6MM.js +1 -0
  149. package/dist/assets/security-redirect-page-CJWekLgN.js +1 -0
  150. package/dist/assets/select-assistant-screen-BXsiUnpH.js +1 -0
  151. package/dist/assets/{self-hosted-servers-BmfZpV_S.js → self-hosted-servers-C8mQpYG6.js} +1 -1
  152. package/dist/assets/{service-form-controls-B3_1_Epi.js → service-form-controls-BaN3WJ77.js} +1 -1
  153. package/dist/assets/{setting-row-Dz9SXznO.js → setting-row-C5HG2She.js} +1 -1
  154. package/dist/assets/{settings-C-QPO0as.js → settings-Bc3yDJDa.js} +1 -1
  155. package/dist/assets/{settings-D9OIWncF.js → settings-BoNVVpiz.js} +1 -1
  156. package/dist/assets/settings-DI5uzcZ7.js +3 -0
  157. package/dist/assets/settings-Jd2dLYIY.js +3 -0
  158. package/dist/assets/{settings-divider-C1j4hJMG.js → settings-divider-BUvXsYUP.js} +1 -1
  159. package/dist/assets/{settings-layout-CQfyqDUr.js → settings-layout-eaFhHddb.js} +1 -1
  160. package/dist/assets/share-feedback-modal-BHI_Kl78.js +1 -0
  161. package/dist/assets/share-feedback-modal-DudAfY4T.js +2 -0
  162. package/dist/assets/{sidebar-tree-BSRyDJ-e.js → sidebar-tree-CbUtC4FM.js} +1 -1
  163. package/dist/assets/{signup-page-CcJHavhm.js → signup-page-Vgdjl9WE.js} +1 -1
  164. package/dist/assets/{signup-shell-D9ohM8Rf.js → signup-shell-BLEdn8FZ.js} +1 -1
  165. package/dist/assets/{skill-detail-page-CGtKgK0P.js → skill-detail-page-o9Zz9AGe.js} +2 -2
  166. package/dist/assets/skill-detail-panel-CipMYJDL.js +1 -0
  167. package/dist/assets/{skill-removal-dialog-C91c4ZfS.js → skill-removal-dialog-D0oZz4CN.js} +1 -1
  168. package/dist/assets/{skills-page-DpwPDybh.js → skills-page-EbwJm4TW.js} +1 -1
  169. package/dist/assets/{sounds-page-CzL0Egaq.js → sounds-page-Dwy-_g4j.js} +1 -1
  170. package/dist/assets/{start-screen-Cph32ejI.js → start-screen-XRBqWzDl.js} +1 -1
  171. package/dist/assets/{stt-language-picker-modal-3iCIcD10.js → stt-language-picker-modal-B-sdjfM-.js} +1 -1
  172. package/dist/assets/subagent-detail-panel-t1cMMnPg.js +1 -0
  173. package/dist/assets/superpowers-page-C890W40w.js +1 -0
  174. package/dist/assets/{system-events-page-BP_Rw924.js → system-events-page-BkzUESQ7.js} +1 -1
  175. package/dist/assets/system-events-redirect-page-BEsc07gc.js +1 -0
  176. package/dist/assets/{text-preview-CKO4jBfL.js → text-preview-DZXMfpbF.js} +1 -1
  177. package/dist/assets/{theme-stage-page-BIBA5J8a.js → theme-stage-page-C-tAdsOO.js} +1 -1
  178. package/dist/assets/{tiptap-document-editor-C3jfHfr_.js → tiptap-document-editor-DKMoKoh8.js} +1 -1
  179. package/dist/assets/tool-detail-panel-42l_9PIi.js +15 -0
  180. package/dist/assets/tool-detail-panel-DPUg7OdL.js +1 -0
  181. package/dist/assets/{trait-cycle-row-leO22btH.js → trait-cycle-row-CEjLtk4k.js} +1 -1
  182. package/dist/assets/{upgrade-cancel-page-B0iduvhi.js → upgrade-cancel-page-DiBBCbGz.js} +1 -1
  183. package/dist/assets/{upgrade-success-page-BClAIdZm.js → upgrade-success-page-vRKNt1oK.js} +1 -1
  184. package/dist/assets/{usage-redirect-page-BxTlrAZu.js → usage-redirect-page-Townvqx7.js} +1 -1
  185. package/dist/assets/use-app-delete--tLzs8qO.js +1 -0
  186. package/dist/assets/use-assistant-identity-details-DbPNLHHf.js +1 -0
  187. package/dist/assets/use-checkout-dismiss-refresh-R9LDgMHM.js +1 -0
  188. package/dist/assets/use-debounced-value-DF3v-L7L.js +1 -0
  189. package/dist/assets/{use-edge-swipe-back-D1eHj9sf.js → use-edge-swipe-back-DfMnwl0d.js} +1 -1
  190. package/dist/assets/{use-hotkey-recorder-KK0SXCtP.js → use-hotkey-recorder-D_1QmHir.js} +1 -1
  191. package/dist/assets/use-invite-link-dialog-B5zQpepB.js +1 -0
  192. package/dist/assets/{use-platform-assistant-id-B1MuVrYX.js → use-platform-assistant-id-C38cqSx8.js} +1 -1
  193. package/dist/assets/use-return-to-short-circuit-uUCP2mmo.js +1 -0
  194. package/dist/assets/{use-side-list-room-BSP_B7R_.js → use-side-list-room-DzKpL0NC.js} +1 -1
  195. package/dist/assets/use-skill-actions-CKqj7Lex.js +1 -0
  196. package/dist/assets/{use-skill-detail-files-DmOW_S89.js → use-skill-detail-files-B2V57QXl.js} +1 -1
  197. package/dist/assets/use-supports-credentials-settings-QqPznGxI.js +1 -0
  198. package/dist/assets/{use-transcript-message-by-id-diLlPoiw.js → use-transcript-message-by-id-vZ9vFhLM.js} +1 -1
  199. package/dist/assets/{vendor-DYOeoIwg.js → vendor-Bb38ZAP8.js} +2 -2
  200. package/dist/assets/voice-page-8O_m2iz4.js +1 -0
  201. package/dist/assets/{wake-detail-panel-DaKaOAfd.js → wake-detail-panel-BGhS36s_.js} +1 -1
  202. package/dist/assets/{weather-forecast-display-ChYkwma2.js → weather-forecast-display-I9ZtiVK8.js} +1 -1
  203. package/dist/assets/{web-ZV0_2EZ9.js → web-41u0plob.js} +1 -1
  204. package/dist/assets/{web-Bb3bM_rE.js → web-BX2ShQf7.js} +1 -1
  205. package/dist/assets/{web-B_ZkQa17.js → web-BtCscj_5.js} +1 -1
  206. package/dist/assets/{web-CQyztjRg.js → web-Cn4ht-7M.js} +1 -1
  207. package/dist/assets/{web-ocPGQzbv.js → web-CoanRUCz.js} +1 -1
  208. package/dist/assets/{web-DpFmNxr1.js → web-D2gsz8Ak.js} +1 -1
  209. package/dist/assets/{web-7w3Y8MVH.js → web-DaV6ODqC.js} +1 -1
  210. package/dist/assets/{web-CkN0uo01.js → web-DfaIhdEx.js} +1 -1
  211. package/dist/assets/{web-DZd0e2iR.js → web-Du0h1dfg.js} +1 -1
  212. package/dist/assets/welcome-screen-Byi-1I4U.js +1 -0
  213. package/dist/assets/workflow-detail-panel-CCE4QmaM.js +1 -0
  214. package/dist/assets/workspace-B4454wwE.js +1 -0
  215. package/dist/assets/{workspace-DOerIby3.js → workspace-CeqSeJWC.js} +1 -1
  216. package/dist/assets/workspace-D1tA-3bz.js +1 -0
  217. package/dist/assets/workspace-PUZSBWH4.js +1 -0
  218. package/dist/assets/workspace-page-BWfU9wct.js +1 -0
  219. package/dist/index.html +3 -3
  220. package/package.json +1 -1
  221. package/dist/assets/activation-list-route-L2lNhfTD.js +0 -1
  222. package/dist/assets/activity-steps-panel-DSJiB6_Z.js +0 -1
  223. package/dist/assets/add-credits-modal-CXZ_HMMM.js +0 -1
  224. package/dist/assets/ai-page-yAJ8z8PM.js +0 -1
  225. package/dist/assets/android-billing-handoff-BxVpZpp4.js +0 -1
  226. package/dist/assets/app-BNL3dwNm.css +0 -2
  227. package/dist/assets/app-p4YU9h0P.js +0 -392
  228. package/dist/assets/archive-redirect-page-CzxO3IP6.js +0 -1
  229. package/dist/assets/auth-store-Ck1z7eSl.js +0 -1
  230. package/dist/assets/avatar-bundled-components-D1XVsaGL.js +0 -1
  231. package/dist/assets/avatar-random-Cki-Ly_C.js +0 -2
  232. package/dist/assets/background-task-detail-panel-BYCUOtG5.js +0 -1
  233. package/dist/assets/billing-page-DUNd0r_e.js +0 -3
  234. package/dist/assets/channel-transcript-panel-O29G6BfM.js +0 -1
  235. package/dist/assets/channels-page-route-BsAycszP.js +0 -1
  236. package/dist/assets/chat-B8bCjQZ1.js +0 -3
  237. package/dist/assets/chat-info-panel-C3GOJkgC.js +0 -1
  238. package/dist/assets/checkout-continuation-CI0HG33e.js +0 -1
  239. package/dist/assets/checkout-page-KqQmNMqQ.js +0 -1
  240. package/dist/assets/checkout-return-target-B4WZzAGx.js +0 -1
  241. package/dist/assets/command-palette-BPcXUSG_.js +0 -1
  242. package/dist/assets/common-CaTw6iFT.js +0 -1
  243. package/dist/assets/common-DvY3wB2D.js +0 -1
  244. package/dist/assets/common-HddDknEB.js +0 -1
  245. package/dist/assets/common-l4KEHlw1.js +0 -1
  246. package/dist/assets/companion-surface-page-BU0SxRLT.js +0 -1
  247. package/dist/assets/contacts-gateway-jgC2hJQu.js +0 -1
  248. package/dist/assets/contacts-page-route-C8DyP00R.js +0 -1
  249. package/dist/assets/credentials-page-BFptIyXc.js +0 -1
  250. package/dist/assets/danger-zone-redirect-page-BgNNmPcD.js +0 -1
  251. package/dist/assets/debug-page-CsudFgfJ.js +0 -4
  252. package/dist/assets/deploy-dialogs-Bh91S82o.js +0 -1
  253. package/dist/assets/desktop-preview-content-DZb6VLVc.js +0 -2
  254. package/dist/assets/detail-primitives-CYiljnNr.js +0 -1
  255. package/dist/assets/developer-page-BIPONPKj.js +0 -1
  256. package/dist/assets/devices-redirect-page-DwI95Deo.js +0 -1
  257. package/dist/assets/document-load-Bcy7cK7m.js +0 -1
  258. package/dist/assets/document-viewer-page-BzftukxE.js +0 -1
  259. package/dist/assets/environment-store-DXa_IPIU.js +0 -1
  260. package/dist/assets/esm-BarLUlPV.js +0 -2
  261. package/dist/assets/esm-C19uvbek.js +0 -2
  262. package/dist/assets/esm-CI79f_VT.js +0 -2
  263. package/dist/assets/esm-CtAM062C.js +0 -1
  264. package/dist/assets/esm-DGqMBGum.js +0 -1
  265. package/dist/assets/esm-DYrMpsGJ.js +0 -2
  266. package/dist/assets/esm-Y7e1KRCK.js +0 -2
  267. package/dist/assets/file-editor-gXTdPzcn.js +0 -1
  268. package/dist/assets/general-page-Du-jPHaf.js +0 -2
  269. package/dist/assets/hatching-screen-BZup1IEp.js +0 -1
  270. package/dist/assets/inspect-page-iBkyiBTD.js +0 -9
  271. package/dist/assets/integrations-page-CVmr89JP.js +0 -1
  272. package/dist/assets/intelligence-layout-CzYFqgC5.js +0 -1
  273. package/dist/assets/intelligence-layout-slots-store-C5ni0SPd.js +0 -1
  274. package/dist/assets/keyboard-shortcuts-redirect-page-VOpK_vkw.js +0 -1
  275. package/dist/assets/library-detail-page-CYDXCYR7.js +0 -1
  276. package/dist/assets/library-page-DU9_fODf.js +0 -1
  277. package/dist/assets/local-mode-BwMCd1ly.js +0 -1
  278. package/dist/assets/login-page-OqpqflhY.js +0 -1
  279. package/dist/assets/logout-page-B75MMPkh.js +0 -1
  280. package/dist/assets/markdown-preview-r7bRpgS4.js +0 -1
  281. package/dist/assets/memory-page-route-DSoeQ_G0.js +0 -2
  282. package/dist/assets/native-attachment-pickers-DH76HUOD.js +0 -1
  283. package/dist/assets/native-file-AwxfXJFy.js +0 -1
  284. package/dist/assets/paired-platform-identity-BN-Q3FiP.js +0 -1
  285. package/dist/assets/password-reset-page-9EUcZrPc.js +0 -1
  286. package/dist/assets/personality-page-DRi1SkGz.js +0 -1
  287. package/dist/assets/personality-sliders-r9DH0oqr.js +0 -1
  288. package/dist/assets/plans-page-3TPIVG-V.js +0 -1
  289. package/dist/assets/plugins-surface-rSnCf7eu.js +0 -1
  290. package/dist/assets/privacy-page-zDZFH9JY.js +0 -1
  291. package/dist/assets/referral-modal-BciUQDfu.js +0 -1
  292. package/dist/assets/referral-modal-Dk1Vo23P.js +0 -1
  293. package/dist/assets/research-onboarding-route-Bd2vn3i5.js +0 -50
  294. package/dist/assets/routes-D_UALtH1.js +0 -1
  295. package/dist/assets/schedules-C83Ua4R6.js +0 -1
  296. package/dist/assets/schedules-page-lT5NcWNK.js +0 -1
  297. package/dist/assets/security-redirect-page-BcTO6hEV.js +0 -1
  298. package/dist/assets/select-assistant-screen-DAwfV-mz.js +0 -1
  299. package/dist/assets/settings-DGQfZ51D.js +0 -3
  300. package/dist/assets/settings-gxBTr-j9.js +0 -3
  301. package/dist/assets/share-feedback-modal-Ka1FQwFE.js +0 -2
  302. package/dist/assets/share-feedback-modal-sGkJieen.js +0 -1
  303. package/dist/assets/skill-detail-panel-Bpl_9hRY.js +0 -1
  304. package/dist/assets/subagent-detail-panel-DF4ZXV2K.js +0 -1
  305. package/dist/assets/superpowers-page-DmqxKZ6y.js +0 -1
  306. package/dist/assets/system-events-redirect-page-sLsausvS.js +0 -1
  307. package/dist/assets/tool-detail-panel-BkWuCCm0.js +0 -15
  308. package/dist/assets/tool-detail-panel-msAhgoxJ.js +0 -1
  309. package/dist/assets/use-app-delete-Cj0xy5H5.js +0 -1
  310. package/dist/assets/use-assistant-identity-details-Bj-VqGPz.js +0 -1
  311. package/dist/assets/use-checkout-dismiss-refresh-Clbra-UV.js +0 -1
  312. package/dist/assets/use-invite-link-dialog-BYTs8NpU.js +0 -1
  313. package/dist/assets/use-return-to-short-circuit-CkdO0Q2j.js +0 -1
  314. package/dist/assets/use-skill-actions-Dk64pbQd.js +0 -1
  315. package/dist/assets/use-supports-credentials-settings-BSQpJ09k.js +0 -1
  316. package/dist/assets/voice-page-0iijkFuD.js +0 -1
  317. package/dist/assets/welcome-screen-Dwra_l1I.js +0 -1
  318. package/dist/assets/workflow-detail-panel-CgyFYiiF.js +0 -1
  319. package/dist/assets/workspace-CrT6IjXz.js +0 -1
  320. package/dist/assets/workspace-D-j7Q1o1.js +0 -1
  321. package/dist/assets/workspace-Db-P5zkL.js +0 -1
  322. package/dist/assets/workspace-page-D-ZvFFGb.js +0 -1
  323. /package/dist/assets/{account-n9xXc949.js → account-CmPU5JUK.js} +0 -0
  324. /package/dist/assets/{account-DV-tB0oh.js → account-D_kQgEd7.js} +0 -0
  325. /package/dist/assets/{account-BBvlSFcW.js → account-DzYvyyF-.js} +0 -0
  326. /package/dist/assets/{account-1POZPT9m.js → account-Dz_iEfvV.js} +0 -0
  327. /package/dist/assets/{activation-BtZhlZ_s.js → activation-BRxQYbI8.js} +0 -0
  328. /package/dist/assets/{activation-CaYos65l.js → activation-BaZMLD3R.js} +0 -0
  329. /package/dist/assets/{activation-B2g-Oe-r.js → activation-BtusZYzQ.js} +0 -0
  330. /package/dist/assets/{activation-dc_gRGWQ.js → activation-DbiSlIjg.js} +0 -0
  331. /package/dist/assets/{activation-tasks-CzjUeEj1.js → activation-tasks-BdYlW_us.js} +0 -0
  332. /package/dist/assets/{activation-tasks-D057dozu.js → activation-tasks-DQf05sGO.js} +0 -0
  333. /package/dist/assets/{activation-tasks-C5NV7wu7.js → activation-tasks-YiuCfTtp.js} +0 -0
  334. /package/dist/assets/{activation-tasks-CvYLTc0s.js → activation-tasks-bRtYLLFo.js} +0 -0
  335. /package/dist/assets/{app-types-2kvircdH.js → app-types-CjoGEGYN.js} +0 -0
  336. /package/dist/assets/{build.umd-BWfbInTw.js → build.umd-D1DxkJZ3.js} +0 -0
  337. /package/dist/assets/{channels-BnJWh26Z.js → channels-4CR6ZJMQ.js} +0 -0
  338. /package/dist/assets/{channels-itxMVi8q.js → channels-B2rZPdSw.js} +0 -0
  339. /package/dist/assets/{channels-QZtdATsC.js → channels-BOKJeCXb.js} +0 -0
  340. /package/dist/assets/{channels-LgPH3TQp.js → channels-DOLXdJkc.js} +0 -0
  341. /package/dist/assets/{contacts-D6N3gRLL.js → contacts-BBLvI5Uj.js} +0 -0
  342. /package/dist/assets/{contacts-yIhQlpq2.js → contacts-BbBOEeer.js} +0 -0
  343. /package/dist/assets/{contacts-X4REeAsN.js → contacts-C0C_BJUk.js} +0 -0
  344. /package/dist/assets/{contacts-DP3Crat5.js → contacts-DpvUSU_B.js} +0 -0
  345. /package/dist/assets/{credential-requests-DKbR-6qV.js → credential-requests-BA09bqb0.js} +0 -0
  346. /package/dist/assets/{credential-requests-1WDcifE6.js → credential-requests-C0i6NSn6.js} +0 -0
  347. /package/dist/assets/{credential-requests-DrJdsdeJ.js → credential-requests-DvWfZlaG.js} +0 -0
  348. /package/dist/assets/{credential-requests-D6SU6G2Z.js → credential-requests-S4K-P7h7.js} +0 -0
  349. /package/dist/assets/{definitions-DhwHuMC5.js → definitions-B_hI7hUU.js} +0 -0
  350. /package/dist/assets/{definitions-Qg1-j0J7.js → definitions-yE7PUCf5.js} +0 -0
  351. /package/dist/assets/{emoji-catalog-data-Yyjk_IDu.js → emoji-catalog-data-DMFEL5YE.js} +0 -0
  352. /package/dist/assets/{format-countdown-BEyU91h0.js → format-countdown-BwaE898Q.js} +0 -0
  353. /package/dist/assets/{home-CQRYKQ5-.js → home-BKXSP2ga.js} +0 -0
  354. /package/dist/assets/{home-jvtY7w4T.js → home-BajVD9Qe.js} +0 -0
  355. /package/dist/assets/{home-DQz-gw5J.js → home-BiZNhI7w.js} +0 -0
  356. /package/dist/assets/{home-uZ5Qvj6E.js → home-CQ09sKqx.js} +0 -0
  357. /package/dist/assets/{intelligence-C2fySq4l.js → intelligence-BaO9LsAs.js} +0 -0
  358. /package/dist/assets/{intelligence-DFMbHITq.js → intelligence-CDSWEGS8.js} +0 -0
  359. /package/dist/assets/{intelligence-8J0ZD9Ph.js → intelligence-CIXn9-lA.js} +0 -0
  360. /package/dist/assets/{intelligence-dNqws_vC.js → intelligence-lNYsQVZz.js} +0 -0
  361. /package/dist/assets/{library-BXLScXI1.js → library-B2Pzmtjc.js} +0 -0
  362. /package/dist/assets/{library-IMXA70AZ.js → library-Bjt3XhDx.js} +0 -0
  363. /package/dist/assets/{library-D7tisF9R.js → library-C0kiQgQ3.js} +0 -0
  364. /package/dist/assets/{library-gTJv7Oz7.js → library-D6O09spl.js} +0 -0
  365. /package/dist/assets/{link-click-BYgcUBN3.js → link-click-v-LNbHFB.js} +0 -0
  366. /package/dist/assets/{logs-ji3E1A5W.js → logs-BzQGcqNO.js} +0 -0
  367. /package/dist/assets/{logs-gUmqmCAe.js → logs-C95Xf28N.js} +0 -0
  368. /package/dist/assets/{logs-itULWBC4.js → logs-bmXePsd8.js} +0 -0
  369. /package/dist/assets/{logs-DV_rbeyU.js → logs-eIJmFRmK.js} +0 -0
  370. /package/dist/assets/{machine-sizes-Cyr9sICv.js → machine-sizes-CrcROrDy.js} +0 -0
  371. /package/dist/assets/{onboarding-C9uVVsD1.js → onboarding--Wy4m10C.js} +0 -0
  372. /package/dist/assets/{onboarding-4AB8OdqK.js → onboarding-CS6Mi_F1.js} +0 -0
  373. /package/dist/assets/{onboarding-Bv6Vw7rT.js → onboarding-D69I4hvD.js} +0 -0
  374. /package/dist/assets/{onboarding-CFxxcqra.js → onboarding-f5n3lMje.js} +0 -0
  375. /package/dist/assets/{onboarding-step-layout-XiwLE8P3.js → onboarding-step-layout-ChzVnOKw.js} +0 -0
  376. /package/dist/assets/{pdf-DZqed7HH.js → pdf-CujX6bxw.js} +0 -0
  377. /package/dist/assets/{plugin-attribution-B2jD5Q1N.js → plugin-attribution-D1IJgqV1.js} +0 -0
  378. /package/dist/assets/{radio-card-nav-BtZq6gZp.js → radio-card-nav-3U2u720-.js} +0 -0
  379. /package/dist/assets/{remote-web-Cy9y7nTE.js → remote-web-C7EUNITU.js} +0 -0
  380. /package/dist/assets/{remote-web-BClKYDvU.js → remote-web-CWtk0LM4.js} +0 -0
  381. /package/dist/assets/{remote-web-BqE5HtVx.js → remote-web-DpKl3oDz.js} +0 -0
  382. /package/dist/assets/{remote-web-BTqxQIZY.js → remote-web-NA9EGY-O.js} +0 -0
  383. /package/dist/assets/{schedules-Capmqn71.js → schedules-BCIm7ddC.js} +0 -0
  384. /package/dist/assets/{schedules-DDJ36QQM.js → schedules-DQxwwm_W.js} +0 -0
  385. /package/dist/assets/{schedules-DO26F1mH.js → schedules-Dkqr0Dxl.js} +0 -0
  386. /package/dist/assets/{schedules-BZCt6hXe.js → schedules-Domzk98q.js} +0 -0
  387. /package/dist/assets/{skill-icon-DLqnaRMf.js → skill-icon-B7ALU8Ca.js} +0 -0
  388. /package/dist/assets/{terminal-1uiH9Lk0.js → terminal-BWP7MJfi.js} +0 -0
  389. /package/dist/assets/{terminal-DHtM2WSE.js → terminal-c5W6MjVz.js} +0 -0
  390. /package/dist/assets/{terminal-CWSI_cvE.js → terminal-fRZqMWcv.js} +0 -0
  391. /package/dist/assets/{terminal-BKHabeoN.js → terminal-rCr_x_K0.js} +0 -0
  392. /package/dist/assets/{usage-window-DA_JAjjs.js → usage-window-nB8J9zGt.js} +0 -0
  393. /package/dist/assets/{use-truncated-blob-text-BArL-keL.js → use-truncated-blob-text-BnZS-VRC.js} +0 -0
  394. /package/dist/assets/{xterm-DuUTQzS6.js → xterm-Cf-2wol9.js} +0 -0
  395. /package/dist/assets/{xterm-addon-fit-DuSb5pvT.js → xterm-addon-fit-BdGbxecv.js} +0 -0
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$s as t,Bs as n,Dx as r,Gs as i,Hs as a,Js as o,Ks as s,Ls as c,Lx as l,Qs as u,Si as d,Us as f,Ws as p,Xs as m,Ys as h,Zs as g,ac as _,cc as v,dc as y,dn as b,ec as ee,fc as te,hh as x,lc as S,li as C,mc as w,oc as T,ph as E,qs as ne,rc as D,sc as re,tc as ie,uc as ae,zs as oe}from"./app-p4YU9h0P.js";import{f as O,g as se,j as k}from"./vendor-DYOeoIwg.js";import{t as ce,x as le}from"./react-B9IgSVeK.js";import{Cn as ue,Ga as de,Gi as fe,Ja as pe,Jr as me,Ki as he,Pa as A,Sn as ge,Ui as j,W as _e,Wi as ve,Xt as ye,Yr as be,_n as xe,i as Se,ki as Ce,m as we,p as Te,yt as M}from"./icons-QG1KAFmx.js";import{n as N}from"./companion-accent-BhdiAsTr.js";import{n as Ee,t as De}from"./companion-popover-BsbCOPDj.js";import{n as P,r as Oe,t as ke}from"./companion-layout-BPhlz6Wp.js";var Ae=pe(`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`}]]),je=pe(`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`}]]),F=pe(`slash`,[[`path`,{d:`M22 2 2 22`,key:`y4kqgn`}]]),I=e(le(),1),L=ce(),Me=460,Ne=3,Pe=88,R=3,Fe=[`screens`,`tabs`,`windows`],z=(e,t)=>t===`screens`?e.displays.length:t===`tabs`?e.tabs.length:e.windows.length,Ie=e=>Fe.find(t=>z(e,t)>0)??`screens`,B=e=>e.kind===`display`?`display-${e.displayId}`:`window-${e.windowId}`;function V({sources:e,captureThumbnail:t,cardGrowth:n=`up`,avatarBox:i=E,optionsBox:a=E,cardRef:o,label:s,onPick:c}){let{t:u}=k(),{inUnits:d,lineAt:f,introStepOff:p}=ke(i,a),m=d(p(n)),h={left:`50%`,top:f(n,0),transform:n===`up`?`translate(-50%, calc(-100% - ${m}px))`:`translate(-50%, ${m}px)`},g=e===null?[]:Fe.filter(t=>z(e,t)>0),_=e!==null&&g.length===0,[v,y]=(0,I.useState)(null),b=e===null?`screens`:v!==null&&g.includes(v)?v:Ie(e),ee=(0,I.useMemo)(()=>e===null?[]:b===`screens`?e.displays.map(e=>{let t={kind:`display`,displayId:e.displayId};return{key:B(t),target:t}}):b===`windows`?e.windows.map(e=>{let t={kind:`window`,windowId:e.windowId};return{key:B(t),target:t}}):[],[b,e]),[te,x]=(0,I.useState)(new Map),S=(0,I.useRef)(new Set),C=(0,I.useRef)(0),w=(0,I.useRef)(!1);(0,I.useEffect)(()=>(w.current=!0,()=>{w.current=!1}),[]),(0,I.useEffect)(()=>{S.current=new Set,C.current+=1,x(new Map),y(null)},[e]);let T=(0,I.useRef)(null);(0,I.useEffect)(()=>{T.current!==null&&(T.current.scrollTop=0)},[b]),(0,I.useEffect)(()=>{if(t!==void 0)for(let{key:e,target:n}of ee){if(S.current.has(e))continue;S.current.add(e);let r=C.current,i=t=>{!w.current||r!==C.current||x(n=>new Map(n).set(e,t))};t(n).then(i,()=>{i(null)})}},[t,ee]);let ne=e=>t===void 0?null:te.get(e),D=e=>u(e===`screens`?`companionSurface.captureScreens`:e===`tabs`?`companionSurface.captureTabs`:`companionSurface.captureWindows`);return(0,L.jsxs)(`div`,{ref:o,role:`group`,"aria-label":s??u(`companionSurface.capturePicker`),"data-companion-capture-picker":!0,"data-theme":`dark`,className:`absolute flex flex-col rounded-2xl border border-white/10 bg-[#17181b]/95 p-1.5 shadow-lg shadow-black/40`,style:{width:Me,...h},onPointerDown:e=>{e.stopPropagation()},children:[g.length>1&&(0,L.jsx)(r,{className:`mx-auto mb-1.5 w-auto shrink-0`,items:g.map(e=>({value:e,label:D(e)})),value:b,ariaLabel:u(`companionSurface.captureKind`),onChange:y}),(0,L.jsx)(l,{ref:T,className:`max-h-48 flex-col px-0.5`,size:24,fadeEdges:`end`,hideScrollBar:!0,children:(0,L.jsxs)(`div`,{className:`flex flex-col`,"data-slot":`capture-sources`,children:[e===null&&(0,L.jsx)(ze,{}),e!==null&&b===`screens`&&(0,L.jsx)(Le,{children:e.displays.map(e=>{let t=u(`companionSurface.captureScreen`,{n:e.index+1}),n=B({kind:`display`,displayId:e.displayId});return(0,L.jsx)(Re,{title:t,ariaLabel:t,answer:ne(n),fallback:(0,L.jsx)(xe,{className:`size-5 text-white/40`,"aria-hidden":!0}),onClick:()=>{c?.({kind:`display`,displayId:e.displayId})}},n)})}),e!==null&&b===`windows`&&(0,L.jsx)(Le,{children:e.windows.map(e=>{let t=B({kind:`window`,windowId:e.windowId}),n=e.title===``?e.app:e.title;return(0,L.jsx)(Re,{title:n,ariaLabel:e.title===``?n:`${n} (${e.app})`,answer:ne(t),fallback:(0,L.jsx)(U,{icon:e.icon,large:!0}),icon:(0,L.jsx)(U,{icon:e.icon}),onClick:()=>{c?.({kind:`window`,windowId:e.windowId})}},t)})}),e!==null&&b===`tabs`&&(0,L.jsx)(`div`,{className:`flex flex-col`,children:e.tabs.map(e=>(0,L.jsx)(H,{icon:(0,L.jsx)(U,{icon:e.icon}),title:e.title,onClick:()=>{c?.({kind:`tab`,chromeWindowId:e.chromeWindowId,tabIndex:e.tabIndex})}},`tab-${e.chromeWindowId}-${e.tabIndex}`))}),_&&(0,L.jsx)(`span`,{className:`px-2 py-3 text-[12px] text-white/50`,children:u(`companionSurface.captureNothing`)})]})})]})}function Le({children:e}){return(0,L.jsx)(`div`,{className:`grid gap-1.5 py-0.5`,style:{gridTemplateColumns:`repeat(${Ne}, minmax(0, 1fr))`},children:e})}function Re({title:e,ariaLabel:t,answer:n,fallback:r,icon:i,onClick:a}){return(0,L.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,L.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:Pe},children:n==null?r:(0,L.jsx)(`img`,{src:n,alt:``,draggable:!1,className:`max-h-full max-w-full object-contain`})}),(0,L.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,children:[i,(0,L.jsx)(`span`,{className:`min-w-0 flex-1 truncate text-[11px] text-white/75 group-hover:text-white/90`,children:e})]})]})}function H({icon:e,title:t,onClick:n}){return(0,L.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,L.jsx)(`span`,{className:`min-w-0 flex-1 truncate`,children:t})]})}function U({icon:e,large:t=!1}){return(0,L.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,L.jsx)(de,{className:t?`size-5 text-white/40`:`size-3 text-white/70`,"aria-hidden":!0}):(0,L.jsx)(`img`,{src:e,alt:``,className:`size-full`,draggable:!1})})}function ze(){return(0,L.jsx)(Le,{children:Array.from({length:R},(e,t)=>(0,L.jsxs)(`div`,{className:`flex flex-col gap-1 p-1`,"aria-hidden":!0,children:[(0,L.jsx)(`span`,{className:`animate-pulse rounded-md bg-white/10`,style:{height:Pe}}),(0,L.jsx)(`span`,{className:`h-2 animate-pulse rounded-full bg-white/10`,style:{width:t===0?`70%`:`45%`}})]},t))})}var Be=260;function Ve({offer:e,growth:t=`right`,cardGrowth:n=`up`,avatarBox:r=E,optionsBox:i=E,cardRef:a,onAnswer:o}){let{t:s}=k(),c=e.reason===`claimed`?s(`companionSurface.offerVersion`):s(`companionSurface.offerNowhere`),{inUnits:u,avatarHalf:d,lineAt:f,edgeAt:p,introStepOff:m}=ke(r,i),h=u(m(n)),g=p(t,-d),_={top:f(n,0),transform:n===`up`?`translateY(calc(-100% - ${h}px))`:`translateY(${h}px)`};return(0,L.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:Be,...g,..._},onPointerDown:e=>{e.stopPropagation()},children:[(0,L.jsx)(`p`,{className:`text-[11px] font-medium tracking-wide text-white/45 uppercase select-none`,children:c}),(0,L.jsx)(l,{className:`max-h-40 flex-col`,size:20,fadeEdges:`end`,hideScrollBar:!0,children:(0,L.jsx)(`p`,{dir:`auto`,className:`text-[13px] leading-[1.45] text-white/90`,children:e.text})}),(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-1 pt-0.5`,children:[(0,L.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,L.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,L.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 W=244,He={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`}},Ue=e=>e===`talk`?e:void 0,We=e=>e===null||e===`meet`?null:`hover`;function Ge({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}=k(),u=x.indexOf(e),d=u===x.length-1,f=He[e],{inUnits:p,avatarHalf:m,lineAt:h,edgeAt:g,introStepOff:_}=ke(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,L.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:W,...y,...b},onPointerDown:e=>{e.stopPropagation()},children:[(0,L.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,L.jsx)(`p`,{className:`text-[12px] leading-[1.45] text-white/70`,children:l(f.body)}),(0,L.jsxs)(`div`,{className:`flex items-center justify-between pt-0.5`,children:[(0,L.jsx)(`div`,{className:`flex items-center gap-1`,"aria-hidden":!0,children:x.map((e,t)=>(0,L.jsx)(`span`,{className:`size-1.5 rounded-full transition-colors`,style:{backgroundColor:t===u?a??`#5eead4`:`rgba(255,255,255,.2)`}},e))}),(0,L.jsxs)(`div`,{className:`flex items-center gap-1`,children:[!d&&(0,L.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,L.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 Ke={min:3,max:10},G=(e=Math.random)=>{let t=e();return t<1/3?`top`:t<2/3?`topLeft`:`topRight`},qe=1600,Je=.22,Ye=.04,Xe=4,Ze=(e,t)=>{let n=Math.min(.95,Math.max(.25,e.eyeCenterFrac+e.eyeHalfFrac+Ye)),r=Math.min(t,24,14/n),i=r*n;return{size:r,exposed:i,clip:{width:r+2*Xe,height:i+Xe},rest:i+2}},K=(e,t=Math.random)=>(e.min+t()*(e.max-e.min))*1e3;function q(e,t=Ke){let[n,r]=(0,I.useState)(0),{min:i,max:a}=t;return(0,I.useEffect)(()=>{if(!e)return;let t,n=()=>{t=setTimeout(()=>{r(e=>e+1),n()},K({min:i,max:a}))};return n(),()=>{clearTimeout(t)}},[e,i,a]),n}var J=(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 Qe({character:e,capsule:t,enabled:n,held:r=!1,edge:i,interval:a=Ke,className:o,style:s}){let c=O(),l=(0,I.useMemo)(()=>b(d,e),[e]),u=q(n&&!r&&!c&&l!==null,a),[f,p]=(0,I.useState)(!1),[m,h]=(0,I.useState)(`top`);if((0,I.useEffect)(()=>{if(u===0)return;h(G()),p(!0);let e=setTimeout(()=>{p(!1)},qe);return()=>{clearTimeout(e)}},[u]),l===null||c)return null;let g=Ze(l,t.width),_=r||f,v=i??m,y=J(v,g.clip,t);return(0,L.jsx)(`div`,{className:`companion-peek ${o??``}`,style:{width:t.width,height:t.height,...s},"data-risen":_,"data-edge":v,"aria-hidden":!0,children:(0,L.jsx)(`div`,{className:`absolute`,style:y.slot,children:(0,L.jsx)(`div`,{className:`absolute inset-0 overflow-hidden`,children:(0,L.jsx)(se.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:Je,ease:`easeIn`},children:(0,L.jsx)(C,{components:d,traits:e,size:g.size})})})})})}var $e=(0,I.createContext)(`above`),et=`#5eead4`,Y=new Set([`transcribing`,`thinking`,`speaking`]),tt=28,X={idle:{width:64,height:14},closing:tt,rim:2,bloom:4},nt=X.idle,rt=(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(`, `),Z=244,it=200,at=120,ot={watching:40,summary:220,dictating:Z+32,offer:it+32,call:4+at+180},st=84,ct={width:28,height:st+140+20};function lt({phase:e,assistantName:t=``,accentHex:n=et,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:ee=!1,sharePicking:te=!1,onShare:x,onStopShare:S,annotating:C=!1,annotationTool:w,onAnnotationTool:T,drawToolsRef:ne,onAnnotate:D,marked:re=!1,onClearMarks:ie,openPicker:ae,voicesPickable:oe=!1,onPicker:se,shortcuts:ce,onAvatarClick:le,working:ue=!1,watching:de=!1,watchRetro:fe,onWatchRetro:pe,dictationOffer:me,offer:he,watchEnabled:A=!1,dictating:ge,dictationText:j=``,call:_e,onControl:ve,intro:ye,picker:be,prompt:xe,promptRef:Se,promptsDeferred:Ce=0,onReviewPrompts:we}){let{t:Te}=k(),M=e!==`resting`,N=e===`call`||e===`dictating`||e===`offer`||e===`summary`||e===`watching`,[Ee,De]=(0,I.useState)(!1);(0,I.useEffect)(()=>{if(e!==`hover`){De(!1);return}let t=setTimeout(()=>{De(!0)},500);return()=>{clearTimeout(t)}},[e]);let P=g===`talk`||e===`hover`&&Ee,Oe=fe===`pending`,Ae=ue||_e!==void 0&&Y.has(_e.phase),je=O(),F=(0,I.useRef)(null),[Me,Ne]=(0,I.useState)(null),Pe=(0,I.useRef)(0);(0,I.useLayoutEffect)(()=>{let e=F.current;if(!e)return;let t=()=>{Ne({width:e.scrollWidth-Pe.current,height:e.scrollHeight})};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[e]);let{scale:R,avatarRel:Fe,avatarHalf:z,baseline:Ie,gap:B,inUnits:V,lineAt:Le,edgeAt:Re}=ke(s,c),H=e===`call`,U=H&&(u===`left`||u===`right`),ze=U?u===`left`?`right`:`left`:`above`,Be=N?U?(Me?.width??ct.width)+16:(Me?.width??ot[e])+16:0,Ve=N?(Me?.height??ct.height)+16:0,W=H&&!U&&xe!=null,He=(0,I.useRef)(null),[Ue,We]=(0,I.useState)(0);(0,I.useLayoutEffect)(()=>{let e=He.current;if(!W||e===null)return;let t=()=>{We(Math.ceil(e.getBoundingClientRect().width/R))};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[W,xe,R]);let Ge=W?Math.max(Be,Ue):Be,Ke=Ge-Be;(0,I.useLayoutEffect)(()=>{Pe.current=Ke},[Ke]);let G=U?`50%`:Le(l,0),qe=Re(o,z+B),Je=s/E,Ye=M?{width:X.closing*Je,height:X.closing*Je}:X.idle,Xe=ye!=null,Ze=H?{width:Ge,...U?{height:Ve}:{},left:`50%`,top:G,transform:`translate(-50%, -50%)`,transitionTimingFunction:`cubic-bezier(.2,.8,.2,1)`}:{width:Be,...qe,top:Le(l,Ie),transform:`translateY(-100%)`,transitionTimingFunction:`cubic-bezier(.2,.8,.2,1)`},K=H&&!U?`calc(50% - ${Ge/2+V(z+B)}px)`:`50%`,q=U?`calc(50% - ${Ve/2+V(z+B)}px)`:G;return(0,L.jsxs)(`div`,{className:`absolute top-0 left-0 origin-top-left`,style:{width:`${100/R}%`,height:`${100/R}%`,transform:`scale(${R})`},children:[W?(0,L.jsx)(vt,{dock:u,top:G,width:Ge,accentHex:n,lit:N,promptRef:Se,children:xe}):null,W?(0,L.jsx)(`div`,{ref:He,inert:!0,"aria-hidden":!0,"data-theme":`dark`,className:`pointer-events-none invisible absolute top-0 left-0 w-max max-w-[640px]`,children:xe}):null,(0,L.jsxs)(`div`,{className:`absolute flex cursor-grab items-center rounded-full duration-300 select-none active:cursor-grabbing ${U?`flex-col transition-[width,height] will-change-[width,height]`:`h-11 transition-[width] will-change-[width]`} ${!H&&o===`left`?`justify-end`:``}`,style:Ze,onPointerDown:m,onContextMenu:h,ref:d,children:[(0,L.jsx)(`span`,{className:`absolute inset-0 rounded-full transition-opacity duration-200 ${W?`bg-[#17181b]`:`border border-white/10 bg-[#17181b]/95 shadow-lg shadow-black/40`}`,style:{opacity:+!!N},"aria-hidden":!0}),H&&(0,L.jsx)(`span`,{className:`companion-working-ring pointer-events-none absolute -inset-0.5 rounded-full transition-opacity duration-200`,style:{opacity:N&&!W?1:0,"--companion-ring-accent":n},"aria-hidden":!0}),(0,L.jsx)(`div`,{className:`relative flex shrink-0 items-center ${U?`flex-col`:`h-11`}`,style:U?{paddingBlock:8,paddingInline:8}:{paddingInline:8},children:(0,L.jsx)(`div`,{className:`flex items-center gap-1 overflow-hidden transition-opacity duration-200 ${U?`min-h-0 flex-col`:`min-w-0`}`,ref:F,inert:!N,style:{opacity:+!!N,transitionDelay:N?`120ms`:`0ms`},children:e===`call`?(0,L.jsx)($e.Provider,{value:ze,children:(0,L.jsx)(yt,{call:_e,assistantName:t,watching:de,watchEnabled:A,picking:y,sharing:b,shareEnabled:ee,sharePicking:te,annotating:C,marked:re,annotationTool:w,vertical:U,drawToolsPlacement:U?u===`left`?`right`:`left`:l===`up`?`above`:`below`,drawToolsRef:ne,onAnnotationTool:T,onControl:ve,onWatch:_,onTeach:v,onShare:x,onStopShare:S,onAnnotate:D,onClearMarks:ie,openPicker:ae,voicesPickable:oe,onPicker:se,pickerSide:U?u===`left`?`right`:`left`:u===`top`?`below`:`above`,shortcuts:ce,promptsDeferred:Ce,lineExtra:Ke,onReviewPrompts:we})}):e===`dictating`&&ge!==void 0?(0,L.jsx)(mt,{dictating:ge,dictationText:j}):e===`summary`&&fe!==void 0?(0,L.jsx)(_t,{retro:fe,onWatchRetro:pe}):e===`offer`&&me!==void 0?(0,L.jsx)(Q,{offer:me}):(0,L.jsx)(ht,{watching:de,onWatch:_})})})]}),(0,L.jsx)(`div`,{className:`absolute cursor-grab active:cursor-grabbing`,style:{width:V(X.idle.width),height:V(X.idle.height),pointerEvents:M?`none`:void 0,left:`50%`,top:G,transform:`translate(-50%, -50%)`},onPointerDown:m,onContextMenu:h,ref:f,"aria-hidden":!0,children:(0,L.jsx)(`div`,{className:`absolute top-1/2 left-1/2 rounded-full transition-[width,height,opacity] duration-300`,style:{width:V(Ye.width),height:V(Ye.height),transform:`translate(-50%, -50%)`,transitionTimingFunction:`cubic-bezier(.2,.8,.2,1)`,transitionProperty:je?`opacity`:void 0,boxShadow:rt(n,V(X.rim),V(X.bloom)),opacity:+!M}})}),(0,L.jsx)(ft,{className:P?`opacity-100`:`opacity-0`,"data-companion-name":P?`shown`:`hidden`,style:{left:`50%`,top:G,transform:`translate(-50%, calc(-100% - ${V(z)}px - 4px))`},label:Te(`companionSurface.talk`)}),(0,L.jsx)(pt,{label:Te(e===`call`?`companionSurface.openVellum`:`companionSurface.talk`),accentHex:n,avatarSrc:r,character:i,attentive:a,busy:Ae||de||Oe,collapsed:!M&&!Xe,restingScale:E/s,style:{left:K,top:q,transform:`translate(-50%, -50%)${Fe===1?``:` scale(${Fe})`}`,transition:je?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:le}),ye,be,he]})}var ut=`rgba(28, 28, 30, 0.55)`,dt=`backdrop-blur-md backdrop-saturate-150`;function ft({className:e,style:t,label:n,shortcut:r,beak:i=`down`,...a}){return(0,L.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 ${dt} ${e}`,style:{...t,backgroundColor:ut},"aria-hidden":!0,...a,children:[n,r===void 0?null:(0,L.jsx)(`span`,{className:`ml-1.5 font-normal text-white/60`,"data-shortcut":!0,children:r}),(0,L.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`} ${dt}`,style:{backgroundColor:ut,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 pt({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=O();return(0,L.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,L.jsx)(Qe,{character:n,capsule:nt,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,L.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,L.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,L.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,L.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,L.jsx)(`div`,{className:`relative drop-shadow-[0_1px_3px_rgba(0,0,0,0.55)]`,children:(0,L.jsx)(C,{components:d,traits:n,size:tt,isAssistantBusy:r,attentive:i})})})})]})}function mt({dictating:e,dictationText:t}){let{t:n}=k(),r=t.trim();return(0,L.jsxs)(`div`,{className:`flex h-7 shrink-0 items-center gap-2 px-1`,children:[(0,L.jsx)(A,{className:`size-4 shrink-0`,"aria-hidden":!0}),r?(0,L.jsx)(`span`,{dir:`auto`,className:`flex justify-end overflow-hidden text-[12px] whitespace-nowrap text-white/85`,style:{width:Z},children:(0,L.jsx)(`span`,{className:`shrink-0`,children:r})}):(0,L.jsx)(`span`,{className:`truncate text-[12px] text-white/85`,style:{width:Z},children:n(e===`listening`?`companionSurface.dictating`:`companionSurface.dictatingTranscribing`)})]})}function Q({offer:e}){let{t}=k();return(0,L.jsxs)(`div`,{className:`flex h-7 shrink-0 items-center gap-2 px-1`,children:[(0,L.jsx)(A,{className:`size-4 shrink-0`,"aria-hidden":!0}),(0,L.jsx)(`span`,{className:`truncate text-[12px] text-white/85`,style:{width:it},children:e.reason===`claimed`?t(`companionSurface.offerHeard`,{app:e.app}):t(`companionSurface.offerNowhere`)})]})}function ht({watching:e=!1,onWatch:t}){return(0,L.jsx)(L.Fragment,{children:e&&(0,L.jsx)(Et,{onWatch:t})})}function gt({watching:e,watchEnabled:t,picking:n,onWatch:r,onTeach:i}){let{t:a}=k();return t?(0,L.jsx)($,{icon:(0,L.jsx)(me,{className:`size-4`}),label:a(`companionSurface.teach`),pressed:e||n,onClick:e?r:i??r}):e?(0,L.jsx)(Et,{onWatch:r}):null}function _t({retro:e,onWatchRetro:t}){let{t:n}=k();return e===`pending`?(0,L.jsx)(`span`,{className:`ml-1 shrink-0 text-[12px] text-white/85`,children:n(`companionSurface.summarizing`)}):(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)($,{icon:(0,L.jsx)(M,{className:`size-4`}),label:n(`companionSurface.showSummary`),showLabel:!0,onClick:()=>{t?.(!0)}}),(0,L.jsx)($,{icon:(0,L.jsx)(Se,{className:`size-4`}),label:n(`companionSurface.notNow`),showLabel:!0,onClick:()=>{t?.(!1)}})]})}function vt({dock:e,top:t,width:n,accentHex:r,lit:i,promptRef:a,children:o}){let s=e===`top`;return(0,L.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,L.jsx)(`span`,{"aria-hidden":!0,className:`absolute inset-0 bg-[#17181b] shadow-lg shadow-black/40 ${s?`rounded-b-[22px]`:`rounded-t-[22px]`}`}),(0,L.jsx)(`span`,{"aria-hidden":!0,className:`absolute right-4 left-4 h-px bg-white/10`,style:s?{top:22}:{bottom:22}}),(0,L.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,L.jsx)(`div`,{className:`relative`,children:o})]})}function yt({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:ee,openPicker:te,voicesPickable:x,onPicker:S,pickerSide:C,shortcuts:w,promptsDeferred:T=0,onReviewPrompts:E,lineExtra:ne=0}){let{t:D}=k();if(e===void 0)return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(bt,{vertical:d,extra:ne,text:t===``?D(`companionSurface.calling`):D(`companionSurface.callingNamed`,{name:t})}),(0,L.jsx)(gt,{watching:n,watchEnabled:r,picking:i,onWatch:g,onTeach:_}),(0,L.jsx)(Tt,{onControl:h})]});let re=e.detail||e.label,{muted:ie,outputMuted:ae}=e;return(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(bt,{vertical:d,extra:ne,text:re}),T>0?(0,L.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:()=>{E?.()},children:T}):null,(0,L.jsx)(gt,{watching:n,watchEnabled:r,picking:i,onWatch:g,onTeach:_}),(0,L.jsx)(xt,{sharing:a,shareEnabled:o,sharePicking:s,shortcut:o?w?.share:void 0,onShare:v,onStopShare:y}),(0,L.jsx)(St,{sharing:a,annotating:c,shortcut:o?w?.draw:void 0,tool:u,placement:f,toolsRef:p,onAnnotate:b,onTool:m}),(0,L.jsx)(wt,{sharing:a,marked:l,onClearMarks:ee}),(0,L.jsx)($,{icon:ie?(0,L.jsx)(ue,{className:`size-4`}):(0,L.jsx)(ge,{className:`size-4`}),label:D(ie?`companionSurface.unmuteMicrophone`:`companionSurface.muteMicrophone`),shortcut:w?.muteMicrophone,onClick:()=>{h?.(ie?`unmuteMicrophone`:`muteMicrophone`)}}),(0,L.jsx)(jt,{picker:`microphones`,label:D(`companionSurface.chooseMicrophone`),side:C,open:te===`microphones`,onPicker:S}),(0,L.jsx)($,{icon:ae?(0,L.jsx)(Te,{className:`size-4`}):(0,L.jsx)(we,{className:`size-4`}),label:D(ae?`companionSurface.unmuteAssistant`:`companionSurface.muteAssistant`),shortcut:w?.muteAssistant,onClick:()=>{h?.(ae?`unmuteAssistantAudio`:`muteAssistantAudio`)}}),x?(0,L.jsx)(jt,{picker:`voices`,label:D(`companionSurface.chooseVoice`),side:C,open:te===`voices`,onPicker:S}):null,(0,L.jsx)(Tt,{onControl:h})]})}function bt({vertical:e,text:t,extra:n=0}){return e?(0,L.jsx)(`span`,{className:`mt-1 shrink-0 truncate text-[12px] text-white/85`,style:{height:st,writingMode:`vertical-rl`},"data-label":`line`,children:t}):(0,L.jsx)(`span`,{className:`ml-1 shrink-0 truncate text-[12px] text-white/85`,style:{width:at+n},"data-label":`line`,children:t})}function xt({sharing:e,shareEnabled:t,sharePicking:n,shortcut:r,onShare:i,onStopShare:a}){let{t:o}=k();return!t&&!e?null:(0,L.jsx)($,{icon:(0,L.jsx)(je,{className:`size-4`}),label:o(`companionSurface.share`),shortcut:r,pressed:e||n,onClick:e?a:i})}function St({sharing:e,annotating:t,shortcut:n,tool:r,placement:i,toolsRef:a,onAnnotate:o,onTool:s}){let{t:c}=k();return e?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)($,{icon:(0,L.jsx)(ye,{className:`size-4`}),label:c(`companionSurface.draw`),shortcut:n,pressed:t,className:`companion-draw-anchor`,onClick:()=>{o?.(!t)}}),t&&r!==void 0&&(0,L.jsx)(Ct,{tool:r,placement:i,toolsRef:a,onTool:s})]}):null}function Ct({tool:e,placement:t,toolsRef:n,onTool:r}){let{t:i}=k(),a=[{tool:`freehand`,icon:(0,L.jsx)(ye,{className:`size-4`}),label:i(`companionSurface.drawFreehand`)},{tool:`line`,icon:(0,L.jsx)(F,{className:`size-4`}),label:i(`companionSurface.drawLine`)},{tool:`box`,icon:(0,L.jsx)(_e,{className:`size-4`}),label:i(`companionSurface.drawBox`)},{tool:`circle`,icon:(0,L.jsx)(Ce,{className:`size-4`}),label:i(`companionSurface.drawCircle`)}];return(0,L.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,L.jsx)($,{icon:t.icon,label:t.label,pressed:e===t.tool,onClick:()=>{r?.(t.tool)}},t.tool))})}function wt({sharing:e,marked:t,onClearMarks:n}){let{t:r}=k();return!e||!t?null:(0,L.jsx)($,{icon:(0,L.jsx)(Ae,{className:`size-4`}),label:r(`companionSurface.clearMarks`),onClick:()=>{n?.()}})}function Tt({onControl:e}){let{t}=k();return(0,L.jsx)($,{icon:(0,L.jsx)(Se,{className:`size-4`,strokeWidth:2.5}),label:t(`companionSurface.endSession`),tone:`negative`,onClick:()=>{e?.(`endSession`)}})}function Et({onWatch:e}){let{t}=k();return(0,L.jsx)($,{icon:(0,L.jsx)(be,{className:`size-4`}),label:t(`companionSurface.stopTeaching`),onClick:e})}var Dt=`-translate-y-[calc(50%+22px)]`,Ot={right:`translate-x-[calc(50%+22px)]`,left:`-translate-x-[calc(50%+22px)]`},kt=e=>e===`above`?{className:Dt,beak:`down`}:{className:Ot[e],beak:e===`right`?`left`:`right`},At={above:j,below:he,left:fe,right:ve};function jt({picker:e,label:t,side:n,open:r,onPicker:i}){if(i===void 0)return null;let a=At[n];return(0,L.jsx)($,{icon:(0,L.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=kt((0,I.useContext)($e));return(0,L.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,L.jsx)(`span`,{children:t}):(0,L.jsx)(ft,{label:t,shortcut:n,className:`opacity-0 group-hover:opacity-100 ${l.className}`,beak:l.beak,"data-label":`hover`})]})}var Mt=3,Nt=440;function Pt(){let{t:e}=k(),[r,l]=(0,I.useState)(`right`),[d,b]=(0,I.useState)(`up`),[x,C]=(0,I.useState)(`bottom`),[O,se]=(0,I.useState)(E),[ce,le]=(0,I.useState)(E),[ue,de]=(0,I.useState)(),[fe,pe]=(0,I.useState)(),[me,he]=(0,I.useState)(),[A,ge]=(0,I.useState)(null),[j,_e]=(0,I.useState)(!1),[ve,ye]=(0,I.useState)(void 0),[be,xe]=(0,I.useState)(``),[Se,Ce]=(0,I.useState)(``),[we,Te]=(0,I.useState)(!1),[M,ke]=(0,I.useState)(!1),[Ae,je]=(0,I.useState)(void 0),[F,Me]=(0,I.useState)(void 0),[Ne,Pe]=(0,I.useState)(!1),[R,Fe]=(0,I.useState)(void 0),[z,Ie]=(0,I.useState)(void 0),[B,Le]=(0,I.useState)(!1),[Re,H]=(0,I.useState)(!1),[U,ze]=(0,I.useState)(void 0),[Be,W]=(0,I.useState)(!1),[He,Ke]=(0,I.useState)(!1),[G,qe]=(0,I.useState)(!1),[Je,Ye]=(0,I.useState)(!1),[Xe,Ze]=(0,I.useState)(void 0),[K,q]=(0,I.useState)(!1),[J,Qe]=(0,I.useState)(`teach`),[$e,et]=(0,I.useState)(null),Y=(0,I.useRef)(0),[tt,X]=(0,I.useState)(!1),[nt,rt]=(0,I.useState)(null),Z=(0,I.useRef)(!1),it=(0,I.useRef)(null),at=(0,I.useRef)(null),ot=(0,I.useRef)(null),st=(0,I.useRef)(null),ct=(0,I.useRef)(null),ut=(0,I.useRef)(null),dt=(0,I.useRef)(null),ft=(0,I.useRef)(null),pt=(0,I.useRef)(!1),mt=(0,I.useCallback)(e=>{ft.current=e,e===null&&pt.current&&(pt.current=!1,Z.current=!1,D(!1))},[]),Q=(0,I.useRef)(null),ht=(0,I.useRef)(null),gt=(0,I.useRef)(!1);(0,I.useEffect)(()=>{let e=e=>{l(e.growth),b(e.cardGrowth),C(e.dock??`bottom`),se(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),Te(e.working),ke(e.watching===!0),ye(e.dictating),xe(e.dictationText??``),je(e.watchRetro),Me(e.dictationOffer),Fe(e.popover),Pe(e.voicesPickable===!0),Ie(e.popoverView),Le(e.watchEnabled===!0),H(e.watchTargets===!0),ze(e.screenShare),W(e.screenShareEnabled===!0),Ke(e.annotating===!0),qe((e.coachmarks?.length??0)>0),Ye(e.marksCleared!==void 0),Ze(e.annotationTool),rt(e.intro)},t=S(e);return o().then(t=>{t&&e(t)}),t},[]),(0,I.useEffect)(()=>()=>{D(!1)},[]);let _t=A!==null||j,vt=U!==void 0,yt=(0,I.useMemo)(()=>c()?te():void 0,[]);(0,I.useEffect)(()=>{_t||(Y.current+=1,q(!1))},[_t]),(0,I.useEffect)(()=>{M&&J===`teach`&&(Y.current+=1,q(!1))},[M,J]),(0,I.useEffect)(()=>{vt&&J===`share`&&(Y.current+=1,q(!1))},[vt,J]);let bt=(e,t)=>{et(null),Qe(e),q(!0);let n=++Y.current;h().then(e=>{if(n===Y.current){if(e!==null){et(e);return}q(!1),t()}})},xt=()=>{if(!Re){y();return}if(K&&J===`teach`){Y.current+=1,q(!1);return}bt(`teach`,y)},St=()=>{if(K&&J===`share`){Y.current+=1,q(!1);return}bt(`share`,()=>void 0)};(0,I.useEffect)(()=>{!K&&Z.current&&(Z.current=!1,D(!1))},[K]),(0,I.useEffect)(()=>{F===void 0&&Z.current&&(Z.current=!1,D(!1))},[F]);let Ct=(0,I.useRef)(!1),wt=R!==void 0&&z!==void 0&&z!==`deferred`&&(A!==null||j)&&x!==`left`&&x!==`right`,Tt=wt?R?.id:void 0;(0,I.useLayoutEffect)(()=>{let e=dt.current;if(Tt===void 0||e===null)return;let t=()=>{ie(Tt,e.getBoundingClientRect().height)};t();let n=new ResizeObserver(t);return n.observe(e),()=>{n.disconnect()}},[Tt,z]),(0,I.useEffect)(()=>{!wt&&Ct.current&&(Ct.current=!1,Z.current=!1,D(!1))},[wt]);let Et=e=>{if(Y.current+=1,q(!1),J===`share`){T(e);return}y(e)},Dt=e=>{Z.current!==e&&(Z.current=e,D(e))},Ot=nt!==null&&A===null&&!j,kt=(0,I.useRef)(Ot);(0,I.useEffect)(()=>{kt.current&&!Ot&&(X(!1),Dt(!1)),kt.current=Ot},[Ot]);let At=We(nt),jt=A!==null||j?`call`:ve===void 0?F===void 0?M?`watching`:Ae===void 0?At??(tt?`hover`:`resting`):`summary`:`offer`:`dictating`,$=e=>{if(Q.current!==null&&e.buttons===0&&(Q.current=null,u()),Q.current!==null){let{x:t,y:n}=Q.current;m(e.screenX-t,e.screenY-n),Q.current={x:e.screenX,y:e.screenY};let r=ht.current;r!==null&&Math.abs(e.screenX-r.x)+Math.abs(e.screenY-r.y)>Mt&&(gt.current=!0);return}let t=ot.current;if(!t)return;let n=it.current?.getBoundingClientRect()??null,r=at.current?.getBoundingClientRect()??null,i=n!==null&&n.width>0?n:r!==null&&r.width>0?r:null,a=Oe({x:e.clientX,y:e.clientY},{avatar:t.getBoundingClientRect(),pill:i}),o=st.current,s=o!==null&&P(o.getBoundingClientRect(),e.clientX,e.clientY),c=ut.current,l=c!==null&&P(c.getBoundingClientRect(),e.clientX,e.clientY),d=ct.current,f=d!==null&&P(d.getBoundingClientRect(),e.clientX,e.clientY),p=dt.current,h=p!==null&&P(p.getBoundingClientRect(),e.clientX,e.clientY),g=ft.current,_=g!==null&&P(g.getBoundingClientRect(),e.clientX,e.clientY);X(a),pt.current=_,Ct.current=h,Dt(a||s||f||l||_||h)},Pt=N(A,me,fe),Ft=R===void 0||z!==`deferred`?0:R.kind===`approvals`?R.items.length:1;return(0,L.jsx)(`div`,{className:`relative h-screen w-screen bg-transparent`,onMouseMove:$,onMouseUp:()=>{Q.current!==null&&(Q.current=null,u())},onPointerCancel:()=>{Q.current!==null&&(Q.current=null,u()),X(!1),Dt(!1)},onMouseLeave:()=>{Q.current===null&&(X(!1),Dt(!1))},children:(0,L.jsx)(lt,{phase:jt,growth:r,cardGrowth:d,dock:x,avatarBox:O,optionsBox:ce,avatarSrc:ue,character:fe,hovered:tt,accentHex:Pt,call:A??void 0,assistantName:Se,dictating:ve,dictationText:be,working:we,watching:M,watchRetro:Ae,onWatchRetro:p,dictationOffer:F,offer:F===void 0?null:(0,L.jsx)(Ve,{offer:F,growth:r,cardGrowth:d,avatarBox:O,optionsBox:ce,cardRef:ut,onAnswer:e=>{a(e,F.id)}}),watchEnabled:B,spotlight:Ue(nt),intro:!Ot||nt===null?null:(0,L.jsx)(Ge,{beat:nt,growth:r,cardGrowth:d,avatarBox:O,optionsBox:ce,accentHex:Pt,assistantName:Se===``?void 0:Se,cardRef:st,onAdvance:n}),rootRef:it,restingPillRef:at,avatarRef:ot,onSurfacePointerDown:e=>{e.button===0&&e.target.closest(`button, a`)===null&&(e.currentTarget.setPointerCapture(e.pointerId),Q.current={x:e.screenX,y:e.screenY},ht.current={x:e.screenX,y:e.screenY},gt.current=!1)},onSurfaceContextMenu:e=>{(window.getSelection()?.toString().trim().length??0)>0||(e.preventDefault(),re())},onAvatarClick:()=>{if(!gt.current){if(A!==null||j){oe();return}v()}},onWatch:()=>{y()},onTeach:xt,picking:K&&J===`teach`,sharing:vt,shareEnabled:Be,sharePicking:K&&J===`share`,onShare:St,onStopShare:()=>{T()},annotating:He,onAnnotate:e=>{t(e)},marked:Je&&(G||He),onClearMarks:()=>{s()},openPicker:R?.kind===`microphones`||R?.kind===`voices`?R.kind:void 0,voicesPickable:Ne,onPicker:ne()?e=>{ae(e)}:void 0,annotationTool:Xe,onAnnotationTool:e=>{ee(e)},drawToolsRef:mt,shortcuts:yt,picker:K?(0,L.jsx)(V,{sources:$e,captureThumbnail:i,cardGrowth:d,avatarBox:O,optionsBox:ce,cardRef:ct,label:J===`share`?e(`companionSurface.sharePicker`):void 0,onPick:Et}):null,prompt:!wt||R===void 0?null:z===`row`&&(R.kind===`approvals`||R.kind===`secret`)?(0,L.jsx)(Ee,{popover:R,onAnswer:e=>{f(e,R.id)},onView:e=>{_(R.id,e)}}):(0,L.jsx)(De,{attached:!0,popover:R,view:z??`expanded`,style:{maxHeight:Nt},onAnswer:e=>{f(e,R.id)},onView:e=>{_(R.id,e)},onOpenLink:e=>{g(e)}},R.id),promptRef:dt,promptsDeferred:Ft,onReviewPrompts:()=>{R!==void 0&&_(R.id,`expanded`)},onControl:(e,t)=>{w(t===void 0?{action:e}:{action:e,requestId:t})}})})}export{Pt as CompanionSurfacePage};
@@ -1 +0,0 @@
1
- import{Cg as e,Rb as t,Vb as n,cd as r,ld as i,ud as a,zb as o}from"./app-p4YU9h0P.js";async function s(e,r){let{data:i,error:s,response:c}=await a({path:{assistant_id:e},body:r,throwOnError:!1});if(o(c,s,`Failed to save contact`),!c.ok||!i?.contact)throw new t(c.status,n(s,c,`Failed to save contact`));return i.contact}async function c(e,r){let{error:a,response:s}=await i({path:{assistant_id:e,contact_id:r},throwOnError:!1});if(o(s,a,`Failed to delete contact`),!s.ok&&s.status!==204)throw new t(s.status,n(a,s,`Failed to delete contact`))}async function l(e,i){let{error:a,response:s}=await r({path:{assistant_id:e,channel_id:i},throwOnError:!1});if(o(s,a,`Failed to verify channel`),!s.ok)throw new t(s.status,n(a,s,`Failed to verify channel`))}async function u(e,n,r){let i=(await s(e,{id:n.id,displayName:n.displayName,channels:[{type:r.type,address:r.address}]})).channels.find(e=>e.type===r.type&&e.address.toLowerCase()===r.address.toLowerCase());if(!i)throw new t(409,`That account is already linked to another contact.`);if(i.status===`blocked`)throw new t(409,`That account is blocked for this contact. Unblock it before linking.`);await l(e,i.id)}async function d(r,i){let{data:a,error:s,response:c}=await e.post({url:`/v1/assistants/{assistant_id}/a2a/invites/redeem/`,path:{assistant_id:r},body:{sender_assistant_id:i.senderAssistantId,token:i.token},headers:{"Content-Type":`application/json`},throwOnError:!1});if(o(c,s,`Failed to redeem A2A invite`),!c.ok)throw new t(c.status,n(s,c,`Failed to redeem A2A invite`));return{success:a?.success??!0,alreadyConnected:a?.already_connected,error:a?.error,errorCode:a?.error_code}}export{l as a,s as i,u as n,d as r,c as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{B as t,Cx as n,Fd as r,Hx as i,Id as a,Ig as o,Ix as s,Ld as c,Lo as l,Nx as u,S as d,Sx as f,Tb as p,Tx as m,Uf as h,Ux as g,Vx as _,Wf as v,Xp as y,_x as b,et as x,fi as S,gc as C,lb as ee,mi as w,pi as T,px as E,rd as te,ui as D,yd as ne}from"./app-p4YU9h0P.js";import{I as O,Jn as k,N as A,Zn as re,er as ie,j}from"./vendor-DYOeoIwg.js";import{_ as ae,f as oe,n as M,r as se,t as ce,x as N}from"./react-B9IgSVeK.js";import{$n as P,Gt as le,It as F,Ja as I,La as L,Ra as ue,Tn as R,Xt as z,_t as de,b as B,ga as fe,gt as pe,qn as me,vr as V,zi as H,zn as U}from"./icons-QG1KAFmx.js";import{t as W}from"./ellipsis-vertical-Dbz00Lo-.js";import{t as G}from"./detail-card-BpqiAUnN.js";import{n as he,r as ge,t as _e}from"./use-side-list-room-BSP_B7R_.js";import{c as K,i as ve,n as ye,r as q,t as be}from"./use-invite-link-dialog-BYTs8NpU.js";import{a as xe,i as Se,n as Ce,t as we}from"./contacts-gateway-jgC2hJQu.js";var Te=I(`circle-question-mark`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3`,key:`1u773s`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Ee=I(`git-merge`,[[`circle`,{cx:`18`,cy:`18`,r:`3`,key:`1xkwt0`}],[`circle`,{cx:`6`,cy:`6`,r:`3`,key:`1lh9wr`}],[`path`,{d:`M6 21V9a9 9 0 0 0 9 9`,key:`7kw0sc`}]]),J=e(N(),1),De=new Set([`slack`]);function Oe(e){return e.status===`verified`||e.status===`active`&&e.verifiedAt!=null}function ke(e){switch(e){case`slack`:return`channelType.slack`;case`telegram`:return`channelType.telegram`;case`discord`:return`channelType.discord`;case`whatsapp`:return`channelType.whatsapp`;case`a2a`:return`channelType.a2a`;case`phone`:return`channelType.phone`;case`email`:return`channelType.email`;default:return null}}function Ae(e){let t=ke(e.toLowerCase());return t?O(t,{ns:`contacts`}):e}var je=`New Contact`;function Me(e){return e===je}var Y=ce();function Ne({channels:e,pendingChannelKey:t=null,onConnect:n,onDisconnect:r}){let{t:i}=j(`contacts`),[a,o]=(0,J.useState)(null);return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{className:`flex flex-col`,children:e.map((e,i)=>(0,Y.jsxs)(`div`,{children:[i>0?(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}):null,(0,Y.jsx)(Pe,{channel:e,pending:t===e.key,onConnect:n?()=>n(e.key):void 0,onDisconnect:r&&e.canDisconnect?()=>o(e.key):void 0})]},e.key))}),(0,Y.jsx)(f,{open:a!==null,title:i(`assistantContactChannels.disconnectConfirmTitle`,{channel:a?T(a):``}),message:i(`assistantContactChannels.disconnectConfirmMessage`),confirmLabel:i(`actions.disconnect`),destructive:!0,onConfirm:()=>{a&&r&&r(a),o(null)},onCancel:()=>o(null)})]})}function Pe({channel:e,pending:t,onConnect:n,onDisconnect:r}){let{t:i}=j(`contacts`),a=e.configured,{Icon:o,label:s}=w(e.health);return(0,Y.jsxs)(`div`,{className:`flex items-center gap-3 py-4`,children:[(0,Y.jsx)(D,{channelId:e.key,className:`h-4 w-4 shrink-0 text-[color:var(--content-secondary)]`}),(0,Y.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:T(e.key)}),a&&e.address?(0,Y.jsx)(`span`,{className:`truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e.address}):null,(0,Y.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center gap-2`,children:a?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,Y.jsx)(o,{className:`h-3 w-3`}),s]}),r?(0,Y.jsx)(g,{variant:`danger`,onClick:r,disabled:t,children:i(t?`actions.disconnecting`:`actions.disconnect`)}):(0,Y.jsx)(g,{variant:`outlined`,asChild:!0,children:(0,Y.jsx)(M,{to:`${p.channels}?setup=${e.key}`,children:i(`actions.manage`)})})]}):n?(0,Y.jsx)(g,{variant:`outlined`,onClick:n,disabled:t,children:i(`actions.connect`)}):null})]})}function X({role:e,contactType:t}){let{label:n,tone:r}=Z(e,t);return(0,Y.jsx)(s,{tone:r,children:n})}function Z(e,t){switch(e){case`guardian`:return{label:`Guardian`,tone:`positive`};case`assistant`:return{label:`Assistant`,tone:`negative`};default:return t===`assistant`?{label:`Assistant`,tone:`negative`}:{label:`Human`,tone:`warning`}}}function Fe({assistantName:e,...t}){let{t:n}=j(`contacts`),r=l(e);return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Y.jsx)(G,{title:n(`assistantChannelsDetail.title`,{name:r}),accessory:(0,Y.jsx)(X,{role:`assistant`}),compactAccessory:!0}),(0,Y.jsx)(G,{title:n(`assistantChannelsDetail.channelsTitle`),subtitle:n(`assistantChannelsDetail.channelsSubtitle`,{name:r}),children:(0,Y.jsx)(Ne,{...t})})]})}var Ie=new Set([`telegram`,`phone`,`vellum`,`whatsapp`,`slack`,`email`,`platform`,`a2a`]);function Q(e){return Ie.has(e)}function Le(e){return typeof e.source==`string`&&e.source.startsWith(`plugin:`)}function Re(e){return e.supportsVerification||Le(e)}function ze(e){return!!e?.address?.trim()}function Be(e,t){return e.id===`a2a`?t&&t.status!==`revoked`?{kind:`connected`}:{kind:`setup`}:t!=null&&Oe(t)?{kind:`verified`}:t?.status===`blocked`?{kind:`none`}:t&&t.status!==`revoked`||Le(e)?{kind:`unverified`}:{kind:`setup`}}function Ve(e,t,n){let r=[],i=new Set;if(e)for(let t of e)t.id===`a2a`&&!n||(r.push(t),i.add(t.id));for(let e of t)e.status===`revoked`||i.has(e.type)||e.type===`a2a`&&!n||Q(e.type)&&(r.push({id:e.type,source:`default`,label:e.type.charAt(0).toUpperCase()+e.type.slice(1),subtitle:``,icon:`help-circle`,supportsVerification:!1,setupMessages:{guardian:``,contact:``}}),i.add(e.type));return r}function $({channelId:e,name:t,className:n,style:r}){let i=S(e);if(i)return(0,J.createElement)(i,{size:16,className:n,style:r});switch(t){case`bot`:return(0,Y.jsx)(fe,{className:n,style:r});case`hash`:return(0,Y.jsx)(V,{className:n,style:r});case`send`:return(0,Y.jsx)(pe,{className:n,style:r});case`phone`:return(0,Y.jsx)(le,{className:n,style:r});case`mail`:return(0,Y.jsx)(U,{className:n,style:r});case`message-square`:return(0,Y.jsx)(R,{className:n,style:r});default:return(0,Y.jsx)(Te,{className:n,style:r})}}function He({contactChannels:e,availableChannels:t,channelsLoadFailed:n,a2aEnabled:r,setupLabel:i,verifyLoading:a,verifySubject:o=`self`,onSetupChannel:s,onVerifyChannel:c,onRevokeChannel:l,onLinkAccount:u}){let{t:d}=j(`contacts`),[p,m]=(0,J.useState)(null),[h,g]=(0,J.useState)(null),_=new Map;for(let t of e)t.status!==`revoked`&&(_.has(t.type)||_.set(t.type,t));let v=e=>{p&&(c?.(p.info.id,e),m(null))},y=Ve(t,e,r);return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`div`,{className:`flex flex-col`,children:[n&&(0,Y.jsx)(`div`,{className:`px-1 py-2 text-sm`,style:{color:`var(--content-secondary)`},role:`status`,children:d(`contactChannelsSection.loadFailed`)}),y.map((e,t)=>{let n=_.get(e.id);return(0,Y.jsxs)(`div`,{children:[t>0&&(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),(0,Y.jsx)(Ue,{info:e,existing:n,setupLabel:i??d(`contactChannelsSection.setupDefault`),verifyLoading:a,onSetup:s?()=>s(e.id):void 0,onVerify:c&&Re(e)?()=>m({info:e,existing:n}):void 0,onRevoke:l&&n?()=>g({channelId:n.id,channel:e}):void 0,onLinkAccount:u&&De.has(e.id)?()=>u(e.id):void 0})]},e.id)})]}),p?(0,Y.jsx)(We,{info:p.info,existing:p.existing,verifySubject:o,onConfirm:v,onCancel:()=>m(null)}):null,h&&(0,Y.jsx)(f,{open:!0,title:d(`contactChannelsSection.revokeConfirmTitle`,{channel:h.channel.label}),message:d(`contactChannelsSection.revokeConfirmMessage`),confirmLabel:d(`actions.revoke`),destructive:!0,onConfirm:()=>{l?.(h.channelId,h.channel.id),g(null)},onCancel:()=>g(null)})]})}function Ue({info:e,existing:t,setupLabel:n,verifyLoading:r,onSetup:i,onVerify:a,onRevoke:o,onLinkAccount:s}){let{t:c}=j(`contacts`),l=Be(e,t);return(0,Y.jsxs)(`div`,{className:`flex items-center gap-3 py-4`,children:[(0,Y.jsx)($,{channelId:e.id,name:e.icon,className:`h-4 w-4 shrink-0`,style:{color:`var(--content-secondary)`}}),(0,Y.jsx)(`span`,{className:`text-body-medium-default`,style:{color:`var(--content-default)`},children:e.label}),t?.address?(0,Y.jsx)(`span`,{className:`truncate text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:t.address}):null,(0,Y.jsx)(`div`,{className:`ml-auto flex shrink-0 items-center gap-2`,children:l.kind===`connected`?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,Y.jsx)(H,{className:`h-3 w-3`}),c(`channelStatus.connected`)]}),o?(0,Y.jsx)(g,{variant:`danger`,onClick:o,children:c(`actions.revoke`)}):null]}):l.kind===`verified`?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsxs)(`span`,{className:`inline-flex items-center gap-1 h-8 px-2.5 rounded-md whitespace-nowrap select-none text-body-small-emphasised leading-none bg-[var(--content-default)] text-[var(--surface-base)]`,children:[(0,Y.jsx)(H,{className:`h-3 w-3`}),c(`channelStatus.verified`)]}),o?(0,Y.jsx)(g,{variant:`danger`,onClick:o,children:c(`actions.revoke`)}):null]}):l.kind===`unverified`?(0,Y.jsx)(g,{variant:`outlined`,onClick:a,disabled:!a||r,children:c(r?`actions.verifying`:`actions.verify`)}):l.kind===`setup`?e.id===`a2a`?null:(0,Y.jsxs)(Y.Fragment,{children:[s?(0,Y.jsxs)(g,{onClick:s,children:[(0,Y.jsx)(P,{className:`h-3.5 w-3.5`}),c(`contactChannelsSection.linkAccount`)]}):null,(0,Y.jsx)(g,{variant:`outlined`,onClick:i,disabled:!i,children:n})]}):null})]})}function We({info:e,existing:t,verifySubject:n,onConfirm:r,onCancel:i}){let{t:a}=j(`contacts`),[o,s]=(0,J.useState)(t?.address?.trim()??``),c=(0,J.useRef)(null),l=(0,J.useId)(),d=o.trim();return ze(t)?(0,Y.jsx)(f,{open:!0,title:a(`contactChannelsSection.verifyConfirmTitle`,{channel:e.label}),message:a(n===`contact`?`contactChannelsSection.verifyConfirmMessageContact`:`contactChannelsSection.verifyConfirmMessageGuardian`,{channel:e.label}),confirmLabel:a(`actions.verify`),onConfirm:()=>{r()},onCancel:i}):(0,Y.jsx)(m.Root,{open:!0,onOpenChange:e=>{e||i()},children:(0,Y.jsx)(m.Content,{size:`sm`,hideCloseButton:!0,onOpenAutoFocus:e=>{e.preventDefault(),c.current?.focus()},onEscapeKeyDown:e=>{e.preventDefault(),e.stopPropagation(),i()},children:(0,Y.jsxs)(`form`,{className:`flex flex-col`,onSubmit:e=>{e.preventDefault(),d.length!==0&&r(d)},children:[(0,Y.jsx)(m.Header,{children:(0,Y.jsx)(m.Title,{children:a(`contactChannelsSection.verifyConfirmTitle`,{channel:e.label})})}),(0,Y.jsxs)(m.Body,{className:`flex flex-col gap-3`,children:[(0,Y.jsx)(m.Description,{children:a(n===`contact`?`contactChannelsSection.verifyAddressMessageContact`:`contactChannelsSection.verifyAddressMessageGuardian`,{channel:e.label})}),(0,Y.jsx)(u,{ref:c,id:l,label:a(`contactChannelsSection.verifyAddressLabel`),type:`text`,value:o,onChange:e=>{s(e.target.value)},placeholder:a(`contactChannelsSection.verifyAddressPlaceholder`),autoComplete:`off`,spellCheck:!1,fullWidth:!0})]}),(0,Y.jsxs)(m.Footer,{children:[(0,Y.jsx)(g,{variant:`outlined`,type:`button`,onClick:i,children:a(`actions.cancel`)}),(0,Y.jsx)(g,{type:`submit`,disabled:d.length===0,children:a(`actions.verify`)})]})]})})})}function Ge(e){return e===`none`||e===`low`||e===`medium`||e===`high`}function Ke(e,t){switch(t){case`none`:return e(`contactPermissions.preset.none`);case`low`:return e(`contactPermissions.preset.low`);case`medium`:return e(`contactPermissions.preset.medium`);case`high`:return e(`contactPermissions.preset.high`)}}function qe(e,t){if(t===null)return e(`contactPermissions.inheritDescription`);switch(t){case`none`:return e(`contactPermissions.description.none`);case`low`:return e(`contactPermissions.description.low`);case`medium`:return e(`contactPermissions.description.medium`);case`high`:return e(`contactPermissions.description.high`)}}function Je(e){return e.role!==`guardian`&&e.contactType!==`assistant`}function Ye({contact:e,pending:n,onAutoApproveThresholdChange:r}){let{t:i}=j(`contacts`),a=Ge(e.autoApproveThreshold)?e.autoApproveThreshold:null,o=a===null?null:t.find(e=>e.riskThreshold===a);return(0,Y.jsx)(G,{title:i(`contactPermissions.title`),subtitle:i(`contactPermissions.subtitle`),children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-2`,"data-testid":`contact-permissions`,children:[(0,Y.jsx)(`div`,{style:{maxWidth:280},children:(0,Y.jsx)(E,{value:o?.id??null,placeholder:i(`contactPermissions.inheritLabel`),disabled:n,onSelectNone:()=>{r(null)},onChange:e=>{let n=t.find(t=>t.id===e);n&&r(n.riskThreshold)},options:[{value:null,label:i(`contactPermissions.inheritLabel`)},...t.map(e=>{let t=e.icon;return{value:e.id,label:Ke(i,e.riskThreshold),icon:(0,Y.jsx)(t,{className:`h-3.5 w-3.5`})}})]})}),(0,Y.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:qe(i,a)})]})})}function Xe(e){return(0,Y.jsx)(Ze,{...e},e.contact.id)}function Ze({contact:e,savePending:t,deletePending:n,verifyPending:r,mergePending:i=!1,canMerge:a=!1,availableChannels:o,channelsLoadFailed:s,a2aEnabled:c,onSave:l,onDelete:d,onMerge:p,onSetupChannel:m,onVerifyChannel:h,onRevokeChannel:_,onLinkAccount:v,pendingAutoApproveThreshold:y,onAutoApproveThresholdChange:b}){let{t:x}=j(`contacts`),S=Me(e.displayName),[C,ee]=(0,J.useState)(S?``:e.displayName),[w,T]=(0,J.useState)(e.notes??``),[E,te]=(0,J.useState)(!1),D=C.trim(),ne=w.trim(),O=S?``:e.displayName,k=e.notes??``,A=D!==O||ne!==k,re=D.length>0&&A&&!t&&!n,ie=S&&e.channels.length===0&&e.interactionCount===0,ae=D||(S?x(`contact.draftName`):e.displayName),oe=x(`contact.interactions`,{count:e.interactionCount});return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Y.jsx)(G,{title:ae,accessory:(0,Y.jsx)(X,{role:e.role,contactType:e.contactType}),compactAccessory:!0,subtitle:oe,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsx)(u,{label:x(`contact.nameLabel`),type:`text`,value:C,onChange:e=>ee(e.target.value),placeholder:x(`contactDetailView.namePlaceholder`),autoFocus:S,disabled:t||n,fullWidth:!0}),(0,Y.jsx)(u,{label:x(`contact.notesLabel`),type:`text`,value:w,onChange:e=>T(e.target.value),placeholder:x(`contactDetailView.notesPlaceholder`),disabled:t||n,fullWidth:!0}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Y.jsx)(g,{type:`button`,onClick:()=>l({displayName:D,notes:ne}),disabled:!re,children:x(t?`actions.saving`:`actions.save`)}),p?(0,Y.jsx)(g,{type:`button`,variant:`outlined`,onClick:p,disabled:!a||ie||A||i||t||n,title:a?ie?x(`contactDetailView.mergeBlockedUnsavedDraft`):A?x(`contact.mergeBlockedUnsaved`):void 0:x(`contact.mergeBlockedNoCandidates`),children:x(i?`actions.merging`:`actions.merge`)}):null,(0,Y.jsx)(g,{type:`button`,variant:`danger`,onClick:()=>{ie?d():te(!0)},disabled:n,children:x(n?`actions.deleting`:`contactDetailView.delete`)})]})]})}),(0,Y.jsx)(G,{title:x(`contactDetailView.linkedAccountsTitle`),subtitle:x(`contactDetailView.linkedAccountsSubtitle`),children:(0,Y.jsx)(He,{contactChannels:e.channels,availableChannels:o,channelsLoadFailed:s,a2aEnabled:c,verifyLoading:r,verifySubject:`contact`,onSetupChannel:m,onVerifyChannel:h,onRevokeChannel:_,onLinkAccount:v})}),Je(e)&&b?(0,Y.jsx)(Ye,{contact:e,pending:y,onAutoApproveThresholdChange:b}):null,(0,Y.jsx)(f,{open:E,title:x(`contactDetailView.deleteConfirmTitle`,{name:ae}),message:x(`contactDetailView.deleteConfirmMessage`),confirmLabel:x(`actions.delete`),destructive:!0,onConfirm:()=>{te(!1),d()},onCancel:()=>te(!1)})]})}function Qe(e){return(0,Y.jsx)($e,{...e},`${e.survivor.id}:${e.open?`open`:`closed`}`)}function $e({open:e,survivor:t,candidates:n,pending:r,errorMessage:a,onMerge:o,onClose:s}){let{t:c}=j(`contacts`),[l,u]=(0,J.useState)(``),[d,f]=(0,J.useState)(null);(0,J.useEffect)(()=>{d&&!n.some(e=>e.id===d)&&f(null)},[n,d]);let p=(0,J.useMemo)(()=>{let e=l.trim().toLowerCase();return e?n.filter(t=>t.displayName.toLowerCase().includes(e)):n},[n,l]),h=d?n.find(e=>e.id===d)??null:null,_=it(t);return(0,Y.jsx)(m.Root,{open:e,onOpenChange:e=>{!e&&!r&&s()},children:(0,Y.jsxs)(m.Content,{size:`md`,children:[(0,Y.jsxs)(m.Header,{icon:Ee,children:[(0,Y.jsx)(m.Title,{children:h?c(`contactMergeDialog.titlePicked`,{donor:h.displayName,survivor:_}):c(`contactMergeDialog.titlePicking`,{survivor:_})}),(0,Y.jsx)(m.Description,{children:c(h?`contactMergeDialog.descriptionPicked`:`contactMergeDialog.descriptionPicking`)})]}),(0,Y.jsxs)(m.Body,{className:`flex flex-col gap-3`,children:[h?(0,Y.jsx)(nt,{survivor:t,donor:h}):n.length===0?(0,Y.jsx)(rt,{}):(0,Y.jsx)(et,{search:l,onSearch:u,candidates:p,onPick:f}),a?(0,Y.jsx)(i,{as:`p`,variant:`body-small-default`,className:`text-(--system-negative-strong)`,role:`alert`,children:a}):null]}),(0,Y.jsx)(m.Footer,{children:h?(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(g,{variant:`outlined`,onClick:()=>f(null),disabled:r,leftIcon:(0,Y.jsx)(ue,{"aria-hidden":!0}),children:c(`actions.back`)}),(0,Y.jsx)(g,{variant:`danger`,onClick:()=>o(h.id),disabled:r,children:c(r?`actions.merging`:`contactMergeDialog.confirm`)})]}):(0,Y.jsx)(g,{variant:`outlined`,onClick:s,disabled:r,children:c(`actions.cancel`)})})]})})}function et({search:e,onSearch:t,candidates:n,onPick:r}){let{t:a}=j(`contacts`);return(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(u,{type:`text`,value:e,onChange:e=>t(e.target.value),placeholder:a(`contactMergeDialog.searchPlaceholder`),leftIcon:(0,Y.jsx)(de,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}),(0,Y.jsx)(`div`,{className:`flex max-h-[320px] min-h-[120px] flex-col gap-1 overflow-y-auto`,role:`listbox`,"aria-label":a(`contactMergeDialog.listAriaLabel`),children:n.length===0?(0,Y.jsx)(i,{as:`p`,variant:`body-small-default`,className:`px-3 py-4 text-center text-(--content-tertiary)`,children:a(`contactsList.noMatches`)}):n.map(e=>(0,Y.jsx)(tt,{contact:e,onPick:()=>r(e.id)},e.id))})]})}function tt({contact:e,onPick:t}){let n=ot(e).join(` | `)||void 0;return(0,Y.jsx)(b,{asChild:!0,children:(0,Y.jsx)(`button`,{type:`button`,onClick:t,role:`option`,"aria-selected":`false`,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Y.jsx)(`span`,{className:`truncate text-body-medium-default`,children:e.displayName}),n?(0,Y.jsx)(`span`,{className:`truncate text-body-small-default text-(--content-tertiary)`,children:n}):null]})})})}function nt({survivor:e,donor:t}){let{t:n}=j(`contacts`),r=it(e),{moved:i,duplicates:a}=at(e,t);return(0,Y.jsxs)(`ul`,{className:`flex flex-col gap-2 text-body-medium-lighter text-(--content-secondary)`,children:[(0,Y.jsx)(`li`,{children:(0,Y.jsx)(A,{i18nKey:`contactMergeDialog.donorDeleted`,ns:`contacts`,values:{donor:t.displayName},components:{donor:(0,Y.jsx)(`span`,{className:`text-(--content-default)`})}})}),(0,Y.jsx)(`li`,{children:n(`contactMergeDialog.channelsMoved`,{count:i.length,survivor:r,channels:i.map(e=>Ae(e.type)).join(`, `)})}),a.length>0?(0,Y.jsx)(`li`,{className:`text-(--content-tertiary)`,children:n(`contactMergeDialog.duplicatesSkipped`,{count:a.length,survivor:r})}):null,t.notes?(0,Y.jsx)(`li`,{children:n(`contactMergeDialog.notesAppended`)}):null,(0,Y.jsx)(`li`,{className:`text-(--content-tertiary)`,children:n(`contactMergeDialog.irreversible`)})]})}function rt(){let{t:e}=j(`contacts`);return(0,Y.jsx)(i,{as:`p`,variant:`body-medium-lighter`,className:`px-3 py-6 text-center text-(--content-tertiary)`,children:e(`contactMergeDialog.empty`)})}function it(e){return e.role===`guardian`?!e.displayName||e.displayName.startsWith(`vellum-principal-`)?O(`survivorName.you`,{ns:`contacts`}):O(`survivorName.youNamed`,{ns:`contacts`,name:e.displayName}):e.displayName||O(`survivorName.thisContact`,{ns:`contacts`})}function at(e,t){let n=[],r=[];for(let i of t.channels)i.status!==`revoked`&&(e.channels.some(e=>e.type===i.type&&e.address.toLowerCase()===i.address.toLowerCase())?r.push(i):n.push(i));return{moved:n,duplicates:r}}function ot(e){let t=new Set,n=[];for(let r of e.channels){if(r.status===`revoked`)continue;let e=r.type.toLowerCase();t.has(e)||(t.add(e),n.push(Ae(e)))}return n}function st({loading:e,guardian:t,assistantName:n,regularContacts:r,selection:i,onSelect:a,onAddContact:o,addingContact:s=!1,search:c,onSearchChange:l}){let{t:d}=j(`contacts`),f=c.trim()?r.filter(e=>e.displayName.toLowerCase().includes(c.trim().toLowerCase())):r;return(0,Y.jsx)(_.Root,{className:`flex h-full flex-col overflow-hidden`,children:(0,Y.jsxs)(_.Body,{className:`flex min-h-0 min-w-0 flex-1 flex-col gap-4`,children:[(0,Y.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,Y.jsx)(`h2`,{className:`text-title-medium`,style:{color:`var(--content-default)`},children:d(`contactsList.heading`)}),(0,Y.jsx)(g,{type:`button`,variant:`ghost`,iconOnly:s?(0,Y.jsx)(me,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(F,{"aria-hidden":!0}),onClick:o,disabled:s,"aria-label":d(`contactsList.addAriaLabel`),tintColor:`var(--content-secondary)`})]}),(0,Y.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[t?(0,Y.jsx)(ct,{name:t.displayName?d(`contactsList.youNamed`,{name:t.displayName}):d(`contactsList.you`),role:t.role,channelTypes:t.channelTypes,selected:i?.kind===`contact`&&i.contactId===t.id,onClick:()=>a({kind:`contact`,contactId:t.id}),trailingIcon:`pencil`}):null,(0,Y.jsx)(ct,{name:n?.trim()||d(`contactsList.assistantFallback`),role:`assistant`,selected:i?.kind===`assistant`,onClick:()=>a({kind:`assistant`}),trailingIcon:`more`})]}),(0,Y.jsx)(`div`,{className:`border-t`,style:{borderColor:`var(--border-base)`}}),r.length>0?(0,Y.jsx)(u,{type:`text`,value:c,onChange:e=>l(e.target.value),placeholder:d(`contactsList.searchPlaceholder`),leftIcon:(0,Y.jsx)(de,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}):null,r.length>0?(0,Y.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-y-auto flex flex-col gap-1`,children:[f.map(e=>(0,Y.jsx)(ct,{name:e.displayName,role:e.role,contactType:e.contactType,channelTypes:e.channelTypes,verified:e.verified,selected:i?.kind===`contact`&&i.contactId===e.id,onClick:()=>a({kind:`contact`,contactId:e.id}),trailingIcon:`more`},e.id)),f.length===0?(0,Y.jsx)(`p`,{className:`px-3 py-4 text-center text-body-small-default`,style:{color:`var(--content-tertiary)`},children:d(`contactsList.noMatches`)}):null]}):e?null:(0,Y.jsx)(g,{type:`button`,variant:`ghost`,onClick:o,disabled:s,tintColor:`var(--primary-base)`,leftIcon:s?(0,Y.jsx)(me,{className:`animate-spin`,"aria-hidden":!0}):(0,Y.jsx)(B,{"aria-hidden":!0}),children:d(`contactsList.add`)})]})})}function ct({name:e,role:t,contactType:n,channelTypes:r,selected:i,onClick:a,trailingIcon:o,verified:c}){let{t:l}=j(`contacts`),u=r&&r.length>0?r.join(` | `):void 0,d=o===`pencil`?(0,Y.jsx)(z,{className:`h-3.5 w-3.5 text-[color:var(--content-tertiary)]`,"aria-hidden":!0}):o===`more`?(0,Y.jsx)(W,{className:`h-3.5 w-3.5 text-[color:var(--content-tertiary)]`,"aria-hidden":!0}):void 0;return(0,Y.jsx)(b,{asChild:!0,active:i,children:(0,Y.jsxs)(`button`,{type:`button`,onClick:a,className:`flex h-auto w-full items-center gap-2 rounded-[6px] px-[8px] py-2 text-left`,children:[(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-1 flex-col`,children:[(0,Y.jsx)(`span`,{className:`truncate text-body-medium-default`,children:e}),u?(0,Y.jsx)(`span`,{className:`truncate text-body-small-default`,style:{color:`var(--content-tertiary)`},children:u}):null]}),(0,Y.jsxs)(`span`,{className:`flex shrink-0 items-center gap-1`,children:[c===void 0?null:(0,Y.jsx)(s,{tone:c?`positive`:`neutral`,children:l(c?`contactsList.verified`:`contactsList.unverified`)}),(0,Y.jsx)(X,{role:t,contactType:n}),d]})]})})}function lt(e){return(0,Y.jsx)(ut,{...e},e.contact.id)}function ut({contact:e,savePending:t,verifyPending:n,mergePending:r=!1,canMerge:i=!1,availableChannels:a,channelsLoadFailed:o,a2aEnabled:s,onSave:c,onMerge:l,onSetupChannel:d,onVerifyChannel:f,onRevokeChannel:p,onGenerateInviteLink:m}){let{t:h}=j(`contacts`),_=e.displayName.startsWith(`vellum-principal-`),v=_?``:e.displayName,[y,b]=(0,J.useState)(v),[x,S]=(0,J.useState)(e.notes??``),C=y.trim(),ee=x.trim(),w=C!==v.trim()||ee!==(e.notes??``).trim(),T=w&&!t,E=h(`contact.interactions`,{count:e.interactionCount});return(0,Y.jsxs)(`div`,{className:`flex flex-col gap-6`,children:[(0,Y.jsx)(G,{title:_?h(`contactsList.you`):h(`contactsList.youNamed`,{name:e.displayName}),accessory:(0,Y.jsx)(X,{role:`guardian`}),compactAccessory:!0,subtitle:E,children:(0,Y.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,Y.jsx)(u,{label:h(`contact.nameLabel`),type:`text`,value:y,onChange:e=>b(e.target.value),placeholder:h(`guardianDetailView.namePlaceholder`),disabled:t,fullWidth:!0}),(0,Y.jsx)(u,{label:h(`contact.notesLabel`),type:`text`,value:x,onChange:e=>S(e.target.value),placeholder:h(`guardianDetailView.notesPlaceholder`),disabled:t,fullWidth:!0}),(0,Y.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,Y.jsx)(g,{variant:`primary`,onClick:()=>c({displayName:C||e.displayName,notes:ee}),disabled:!T,children:h(t?`actions.saving`:`actions.save`)}),l?(0,Y.jsx)(g,{variant:`outlined`,onClick:l,disabled:!i||w||r||t,title:i?w?h(`contact.mergeBlockedUnsaved`):void 0:h(`contact.mergeBlockedNoCandidates`),children:h(r?`actions.merging`:`actions.merge`)}):null]})]})}),(0,Y.jsx)(G,{title:h(`guardianDetailView.channelsTitle`),subtitle:h(`guardianDetailView.channelsSubtitle`),children:(0,Y.jsx)(He,{contactChannels:e.channels,availableChannels:a,channelsLoadFailed:o,a2aEnabled:s,setupLabel:h(`guardianDetailView.setupLabel`),verifyLoading:n,onSetupChannel:d,onVerifyChannel:f,onRevokeChannel:p})}),m?(0,Y.jsx)(q,{onClick:m}):null]})}function dt(e,t){let n=t.trim().toLowerCase().replace(/^@/,``);return n===``?e:e.filter(e=>e.displayName.toLowerCase().includes(n)||e.username.toLowerCase().includes(n))}function ft(e){let t=e.trim().split(/\s+/).filter(Boolean);return`${t[0]?.[0]??`?`}${t.length>1?t[t.length-1]?.[0]??``:``}`.toUpperCase()}function pt({open:e,channelLabel:t,contactName:n,accounts:r,loading:i,errorMessage:a,pendingAccountId:o,onPick:s,onClose:c,onInviteInstead:l}){let{t:d}=j(`contacts`),[f,p]=(0,J.useState)(``);(0,J.useEffect)(()=>{e&&p(``)},[e]);let h=(0,J.useMemo)(()=>dt(r??[],f),[r,f]),_=o!=null;return(0,Y.jsx)(m.Root,{open:e,onOpenChange:e=>!e&&c(),children:(0,Y.jsxs)(m.Content,{size:`sm`,children:[(0,Y.jsxs)(m.Header,{children:[(0,Y.jsx)(m.Title,{children:d(`linkAccountDialog.title`,{channel:t})}),(0,Y.jsx)(m.Description,{children:(0,Y.jsx)(A,{i18nKey:`linkAccountDialog.description`,ns:`contacts`,values:{channel:t,name:n},components:{contact:(0,Y.jsx)(`span`,{className:`text-[color:var(--content-default)]`})}})})]}),(0,Y.jsxs)(m.Body,{className:`flex flex-col gap-3`,children:[(0,Y.jsx)(u,{type:`search`,value:f,onChange:e=>p(e.target.value),placeholder:d(`linkAccountDialog.searchPlaceholder`),"aria-label":d(`linkAccountDialog.searchAriaLabel`,{channel:t}),leftIcon:(0,Y.jsx)(de,{className:`h-4 w-4`}),fullWidth:!0}),a?(0,Y.jsx)(`p`,{className:`text-body-small-default text-[color:var(--content-negative)]`,children:a}):null,(0,Y.jsx)(`div`,{className:`max-h-80 overflow-y-auto`,children:i?(0,Y.jsx)(`p`,{className:`py-4 text-center text-body-small-default text-[color:var(--content-tertiary)]`,children:d(`linkAccountDialog.loading`)}):h.length===0?(0,Y.jsx)(`p`,{className:`py-4 text-center text-body-small-default text-[color:var(--content-tertiary)]`,children:(r?.length??0)===0?d(`linkAccountDialog.noMembers`):d(`linkAccountDialog.noMatches`)}):(0,Y.jsx)(`ul`,{className:`flex flex-col`,children:h.map(e=>(0,Y.jsx)(`li`,{children:(0,Y.jsxs)(`button`,{type:`button`,onClick:()=>s(e),disabled:_,className:`flex w-full cursor-pointer items-center gap-3 rounded-md px-2 py-2 text-left transition-colors hover:bg-[var(--surface-overlay)] disabled:cursor-not-allowed disabled:opacity-60`,children:[e.imageUrl?(0,Y.jsx)(`img`,{src:e.imageUrl,alt:``,className:`h-8 w-8 shrink-0 rounded-full`}):(0,Y.jsx)(`span`,{"aria-hidden":`true`,className:`flex h-8 w-8 shrink-0 items-center justify-center rounded-full bg-[var(--tag-bg-neutral)] text-body-small-emphasised text-[color:var(--content-secondary)]`,children:ft(e.displayName)}),(0,Y.jsxs)(`span`,{className:`flex min-w-0 flex-col`,children:[(0,Y.jsx)(`span`,{className:`truncate text-body-medium-default text-[color:var(--content-default)]`,children:e.displayName}),(0,Y.jsxs)(`span`,{className:`truncate text-body-small-default text-[color:var(--content-tertiary)]`,children:[`@`,e.username]})]}),o===e.id?(0,Y.jsx)(`span`,{className:`ml-auto shrink-0 text-body-small-default text-[color:var(--content-tertiary)]`,children:d(`linkAccountDialog.linking`)}):null]})},e.id))})})]}),(0,Y.jsxs)(m.Footer,{className:`items-center justify-between gap-3 border-t border-[var(--border-base)]`,children:[(0,Y.jsx)(`p`,{className:`text-body-small-default text-[color:var(--content-tertiary)]`,children:(0,Y.jsx)(A,{i18nKey:`linkAccountDialog.guardianLinkNote`,ns:`contacts`,components:{emphasis:(0,Y.jsx)(`span`,{className:`text-[color:var(--content-secondary)]`})}})}),l?(0,Y.jsxs)(g,{variant:`link`,className:`shrink-0`,onClick:l,disabled:_,children:[d(`linkAccountDialog.inviteInstead`),(0,Y.jsx)(L,{className:`h-3.5 w-3.5`})]}):null]})]})})}function mt({assistantId:e,channelType:t,contact:r,onLinked:i}){let[a,o]=(0,J.useState)(!1),s=k({mutationFn:n=>Ce(e,n.contact,{type:t,address:n.account.id}),onSuccess:(e,t)=>{o(!1),n.success(O(`accountLink.linked`,{ns:`contacts`,username:t.account.username})),i()}}),c=(0,J.useCallback)(()=>{s.reset(),o(!0)},[s]),l=(0,J.useCallback)(()=>{s.isPending||(s.reset(),o(!1))},[s]),u=(0,J.useCallback)(e=>{!r||s.isPending||s.mutate({contact:r,account:e})},[r,s]);return{channelType:t,dialogOpen:a,open:c,close:l,linkErrorMessage:s.error instanceof Error?s.error.message:s.error?O(`accountLink.linkFailed`,{ns:`contacts`}):null,pendingAccountId:s.isPending?s.variables.account.id:null,pick:u}}var ht=[{id:`slack`,source:`default`,label:`Slack`,subtitle:`Message your assistant from Slack`,icon:`hash`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian on Slack. Can you help me set that up?`,contact:`I'd like to verify a contact's Slack identity. Can you walk me through it?`}},{id:`telegram`,source:`default`,label:`Telegram`,subtitle:`Message your assistant from Telegram`,icon:`send`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian on Telegram. Can you help me set that up?`,contact:`I'd like to verify a contact's Telegram identity. Can you walk me through it?`}},{id:`phone`,source:`default`,label:`Phone Calling`,subtitle:`Call or text your assistant via phone`,icon:`phone`,supportsVerification:!0,setupMessages:{guardian:`I'd like to verify my identity as your guardian for phone calls. Can you help me set that up?`,contact:`I'd like to verify a contact's phone number. Can you help me set that up?`}}],gt=[];function _t({assistantId:e,onStartSetupConversation:t}){let{t:i}=j(`contacts`),s=te.use.a2aChannel(),u=ee.use.name(),f=ie(),[m]=ae(),g=m.get(`setup`),_=g&&y(g)?g:null,[b,x]=(0,J.useState)({kind:`assistant`}),S=be(e),{paneRef:C,hasRoomForList:w,drawerOpen:T,openDrawer:E,closeDrawer:D}=_e(),[O,A]=(0,J.useState)(``),[oe,M]=(0,J.useState)(!1),ce=l(u),N=(0,J.useMemo)(()=>({path:{assistant_id:e}}),[e]),P=a(N),le=re({...r(N),enabled:!!e,select:e=>e.contacts}),F=ye({assistantId:e,onStartSetupConversation:t}),I=re({...ne({path:{assistant_id:e}}),enabled:!!e,queryFn:async({signal:t})=>{let{data:n,error:r,response:i}=await o({path:{assistant_id:e},signal:t,throwOnError:!1});if(i?.status===404)return{channels:ht};if(!i||!i.ok)throw r??Error(`Failed to fetch channel availability`);return n},select:e=>e.channels}),L=I.data??gt,ue=I.isError,R=le.data,z=(0,J.useMemo)(()=>R?.find(e=>e.role===`guardian`)??null,[R]),de=(0,J.useMemo)(()=>R?.filter(e=>e.role!==`guardian`)??[],[R]),B=(0,J.useMemo)(()=>b.kind===`contact`?R?.find(e=>e.id===b.contactId)??null:null,[R,b]),fe=(0,J.useMemo)(()=>!R||!B?[]:R.filter(e=>e.id!==B.id&&e.role!==`guardian`),[R,B]),pe=fe.length>0,me=(0,J.useRef)(!!_);(0,J.useEffect)(()=>{me.current||z&&(me.current=!0,x({kind:`contact`,contactId:z.id}))},[z]);let V=(0,J.useCallback)(()=>f.invalidateQueries({queryKey:P}),[f,P]),H=k({mutationFn:()=>Se(e,{displayName:je}),onMutate:async()=>{await f.cancelQueries({queryKey:P})},onSuccess:e=>{c(f,N,t=>t?{...t,contacts:[...t.contacts,e]}:void 0),x({kind:`contact`,contactId:e.id})},onError:K(i(`contactsPage.createFailed`)),onSettled:()=>V()}),U=k({mutationFn:t=>we(e,t),onSuccess:(e,t)=>{c(f,N,e=>e?{...e,contacts:e.contacts.filter(e=>e.id!==t)}:void 0),x({kind:`assistant`})},onError:K(i(`contactsPage.deleteFailed`)),onSettled:()=>V()}),W=k({mutationFn:({contactId:t,patch:n})=>Se(e,{id:t,displayName:n.displayName,notes:n.notes}),onSuccess:e=>{c(f,N,t=>t?{...t,contacts:t.contacts.map(t=>t.id===e.id?e:t)}:void 0)},onError:K(i(`contactsPage.saveFailed`)),onSettled:()=>V()}),G=k({mutationFn:({contactId:t,displayName:n,autoApproveThreshold:r})=>Se(e,{id:t,displayName:n,autoApproveThreshold:r}),onSuccess:e=>{c(f,N,t=>t?{...t,contacts:t.contacts.map(t=>t.id===e.id?e:t)}:void 0)},onError:K(i(`contactPermissions.saveFailed`)),onSettled:()=>V()}),q=v({onMutate:async()=>{await f.cancelQueries({queryKey:P})},onSuccess:(e,t)=>{let r=e.contact,a=t.body.mergeId;r&&(c(f,N,e=>e?{...e,contacts:e.contacts.filter(e=>e.id!==a).map(e=>e.id===r.id?r:e)}:void 0),x({kind:`contact`,contactId:r.id})),M(!1),n.success(i(`contactsPage.mergeSucceeded`))},onSettled:()=>V()}),Te=(0,J.useCallback)(e=>{x(e),D(),M(!1),q.reset()},[D,q]),Ee=(0,J.useCallback)(()=>{q.reset(),M(!0)},[q]),De=(0,J.useCallback)(()=>{q.isPending||(M(!1),q.reset())},[q]),Oe=h({onSuccess:()=>V()}),ke=(0,J.useCallback)((t,n)=>{Oe.mutate({path:{assistant_id:e,contactChannelId:t},body:{status:`revoked`}})},[Oe,e]),Me=(0,J.useCallback)(()=>{H.isPending||H.mutate()},[H]),Ne=(0,J.useCallback)(e=>{if(!t)return;let n=L.find(t=>t.id===e);if(!n||Le(n))return;let r=n.setupMessages.contact;r&&t(r)},[L,t]),Pe=(0,J.useCallback)(e=>{if(!t)return;let n=L.find(t=>t.id===e);if(!n||Le(n))return;let r=n.setupMessages.guardian;r&&t(r)},[L,t]),X=k({mutationFn:t=>xe(e,t.channelId),onSuccess:()=>V(),onError:K(i(`contactsPage.verifyFailed`))}),Z=k({mutationFn:t=>{if(!B)throw Error(`No contact selected`);return Ce(e,{id:B.id,displayName:B.displayName},{type:t.type,address:t.address})},onSuccess:()=>V(),onError:K(i(`contactsPage.verifyFailed`))}),Ie=(0,J.useCallback)((e,t)=>{if(!B)return;let n=t?.trim();if(n){Z.mutate({type:e,address:n});return}let r=B.channels.find(t=>t.type===e&&t.status!==`revoked`);r?.address?.trim()&&X.mutate({channelId:r.id})},[B,Z,X]),Q=mt({assistantId:e,channelType:`slack`,contact:B?{id:B.id,displayName:B.displayName}:null,onLinked:V}),Re=re({...d(e),enabled:!!e&&Q.dialogOpen,select:e=>e.users}),ze=F.channels.some(e=>e.key===`slack`&&e.configured),Be=(0,J.useCallback)(e=>{e===Q.channelType&&Q.open()},[Q]),Ve=U.isPending?U.variables:null,$=(0,J.useMemo)(()=>{if(!B)return null;let e=B;return W.isPending&&W.variables?.contactId===B.id&&(e={...e,displayName:W.variables.patch.displayName,notes:W.variables.patch.notes}),G.isPending&&G.variables?.contactId===B.id&&(e={...e,autoApproveThreshold:G.variables.autoApproveThreshold}),e},[B,W.isPending,W.variables,G.isPending,G.variables]);if(_)return(0,Y.jsx)(se,{to:`${p.channels}?setup=${_}`,replace:!0});let He={loading:le.isLoading,assistantName:ce,guardian:z?{id:z.id,displayName:z.displayName.startsWith(`vellum-principal-`)?``:z.displayName,role:z.role,channelTypes:bt(z.channels,s)}:null,regularContacts:de.filter(e=>e.id!==Ve).map(e=>({id:e.id,displayName:e.displayName,role:e.role,contactType:e.contactType,channelTypes:bt(e.channels,s),verified:yt(e.channels)})),selection:b,onAddContact:Me,addingContact:H.isPending,search:O,onSearchChange:A};return(0,Y.jsxs)(`div`,{ref:C,className:`flex min-h-0 flex-1 overflow-hidden ${w?`flex-row gap-6`:`flex-col gap-4`}`,children:[w?(0,Y.jsx)(`aside`,{className:`min-h-0 w-[320px] shrink-0 overflow-y-auto self-stretch`,children:(0,Y.jsx)(st,{...He,onSelect:Te})}):(0,Y.jsxs)(Y.Fragment,{children:[(0,Y.jsx)(`div`,{className:`flex items-center`,children:(0,Y.jsx)(ge,{onClick:E})}),(0,Y.jsx)(he,{open:T,onClose:D,title:i(`contactsPage.title`),children:(0,Y.jsx)(st,{...He,onSelect:Te})})]}),(0,Y.jsx)(`section`,{className:`min-h-0 min-w-0 flex-1 overflow-y-auto`,children:b.kind===`assistant`||b.kind===`contact`&&b.contactId===Ve?(0,Y.jsx)(Fe,{assistantName:ce,channels:F.channels,pendingChannelKey:F.pendingChannelKey,onConnect:F.onSetup,onDisconnect:F.onDisconnect}):$?$.role===`guardian`?(0,Y.jsx)(lt,{contact:$,savePending:W.isPending,verifyPending:X.isPending||Z.isPending,mergePending:q.isPending,canMerge:pe,availableChannels:L,channelsLoadFailed:ue,a2aEnabled:s,onSave:e=>{W.mutate({contactId:$.id,patch:e})},onMerge:Ee,onSetupChannel:t?Pe:void 0,onVerifyChannel:Ie,onRevokeChannel:ke,onGenerateInviteLink:s?S.open:void 0}):(0,Y.jsx)(Xe,{contact:$,savePending:W.isPending,deletePending:U.isPending,verifyPending:X.isPending||Z.isPending,mergePending:q.isPending,canMerge:pe,availableChannels:L,channelsLoadFailed:ue,a2aEnabled:s,onSave:e=>{W.mutate({contactId:$.id,patch:e})},onDelete:()=>{U.mutate($.id)},onMerge:Ee,onSetupChannel:t?Ne:void 0,onVerifyChannel:Ie,onRevokeChannel:ke,onLinkAccount:ze?Be:void 0,pendingAutoApproveThreshold:G.isPending,onAutoApproveThresholdChange:e=>{G.mutate({contactId:$.id,displayName:$.displayName,autoApproveThreshold:e})}}):(0,Y.jsx)(vt,{})}),B?(0,Y.jsx)(Qe,{open:oe,survivor:B,candidates:fe,pending:q.isPending,errorMessage:q.error instanceof Error?q.error.message:q.error?i(`contactsPage.mergeFailed`):null,onMerge:t=>q.mutate({path:{assistant_id:e},body:{keepId:B.id,mergeId:t}}),onClose:De}):null,(0,Y.jsx)(pt,{open:Q.dialogOpen,channelLabel:Ae(`slack`),contactName:B?.displayName??``,accounts:Re.data,loading:Re.isLoading,errorMessage:Re.isError?i(`contactsPage.rosterLoadFailed`):Q.linkErrorMessage,pendingAccountId:Q.pendingAccountId,onPick:Q.pick,onClose:Q.close,onInviteInstead:t?()=>{Q.close(),Ne(Q.channelType)}:void 0}),(0,Y.jsx)(ve,{open:S.isOpen,assistantId:e,onClose:S.close})]})}function vt(){let{t:e}=j(`contacts`);return(0,Y.jsx)(`div`,{className:`flex h-full items-center justify-center py-16`,children:(0,Y.jsx)(`p`,{className:`text-body-medium-lighter`,style:{color:`var(--content-tertiary)`},children:e(`contactsPage.emptyBody`)})})}function yt(e){return e.some(e=>e.status!==`revoked`&&(e.type===`a2a`||Oe(e)))}function bt(e,t){let n=new Set,r=[];for(let i of e){if(i.status===`revoked`)continue;let e=i.type.toLowerCase();n.has(e)||e===`a2a`&&!t||(n.add(e),r.push(Ae(e)))}return r}function xt(){let e=oe(),t=x();return(0,Y.jsx)(_t,{assistantId:t,onStartSetupConversation:t=>{C(e,{prompt:t})}},t)}export{xt as ContactsPageRoute};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$ as t,Cx as n,Db as r,Dx as i,G_ as a,Gf as o,Ib as s,Ix as c,Kg as l,Nx as u,Pb as d,Q as f,Rb as p,Sx as m,Tx as h,U_ as g,Ux as _,Vx as v,Wx as y,et as b,i as x,lb as S,qg as C,rd as ee,ym as te}from"./app-p4YU9h0P.js";import{Zn as ne,er as re,j as w}from"./vendor-DYOeoIwg.js";import{t as T,x as E}from"./react-B9IgSVeK.js";import{$n as D,It as O,Jr as k,Yr as A,_t as ie,ci as j,k as M,lr as N,qi as P,qn as F}from"./icons-QG1KAFmx.js";import{t as ae}from"./detail-card-BpqiAUnN.js";import{t as I}from"./use-supports-credentials-settings-BSQpJ09k.js";var L=e(E(),1),R=`CREDENTIAL_IN_USE`;function oe(e){if(!(e instanceof p)||e.code!==R)return null;let t=e.details;if(!t||typeof t!=`object`||!(`connections`in t))return null;let{connections:n}=t;return!Array.isArray(n)||!n.every(e=>typeof e==`string`)?null:n}function z(e){return new Intl.ListFormat(r(),{style:`long`,type:`conjunction`}).format(e)}var B=T(),V=1500;function H(e){if(!e)return``;try{return new Date(e).toLocaleDateString(void 0,{year:`numeric`,month:`short`,day:`numeric`})}catch{return``}}function se({credential:e,assistantId:t,generatingLink:n,deleting:r,onGenerateLink:i,onDelete:a}){let{t:o}=w(`settings`),s=`${e.service}:${e.field}`,c=n||r,l=[e.alias?s:null,e.createdAt?o(`credentialRow.addedMetadata`,{date:H(e.createdAt)}):null].filter(e=>!!e);return(0,B.jsx)(v.Root,{children:(0,B.jsxs)(v.Body,{padding:`sm`,className:`flex items-center gap-4 px-4`,children:[(0,B.jsx)(N,{className:`h-5 w-5 shrink-0 text-[var(--content-secondary)]`,"aria-hidden":!0}),(0,B.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,B.jsx)(`p`,{className:`truncate text-title-small text-[var(--content-default)]`,children:e.alias||s}),(0,B.jsx)(`div`,{className:`mt-0.5 flex min-w-0 items-center`,children:(0,B.jsx)(U,{assistantId:t,credential:e})}),l.length>0&&(0,B.jsx)(`p`,{className:`mt-0.5 truncate font-mono text-body-medium-lighter text-[var(--content-tertiary)]`,children:l.join(` · `)})]}),(0,B.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,B.jsx)(y,{content:o(`credentialRow.generateLinkLabel`),side:`top`,children:(0,B.jsx)(_,{variant:`outlined`,onClick:i,disabled:c,"aria-label":o(`credentialRow.generateLinkAriaLabel`,{name:s}),iconOnly:n?(0,B.jsx)(F,{className:`animate-spin`,"aria-hidden":!0}):(0,B.jsx)(D,{"aria-hidden":!0})})}),(0,B.jsx)(y,{content:o(`credentialRow.deleteLabel`),side:`top`,children:(0,B.jsx)(_,{variant:`dangerOutline`,onClick:a,disabled:c,"aria-label":o(`credentialRow.deleteAriaLabel`,{name:s}),iconOnly:r?(0,B.jsx)(F,{className:`animate-spin`,"aria-hidden":!0}):(0,B.jsx)(M,{"aria-hidden":!0})})})]})]})})}function U({assistantId:e,credential:t}){let{t:r}=w(`settings`),[i,o]=(0,L.useState)(null),[s,c]=(0,L.useState)(!1),[l,u]=(0,L.useState)(!1),d=(0,L.useRef)(null),f=(0,L.useRef)(0),p=`${t.service}:${t.field}`,m=(0,L.useCallback)(()=>{f.current++,o(null),c(!1),u(!1),d.current&&=(clearTimeout(d.current),null)},[]);(0,L.useEffect)(()=>{m()},[t.updatedAt,m]);let h=(0,L.useCallback)(async()=>{let i=++f.current;c(!0);try{let{data:n}=await C({path:{assistant_id:e},body:{service:t.service,field:t.field},throwOnError:!0});f.current===i&&o(n.value)}catch{f.current===i&&n.error(r(`credentialRow.revealFailedToast`,{name:p}))}finally{f.current===i&&c(!1)}},[e,t.service,t.field,p,r]),g=(0,L.useCallback)(()=>{i!=null&&a(i,{errorMessage:r(`credentialRow.copyFailedToast`),onCopied:()=>{u(!0),d.current&&clearTimeout(d.current),d.current=setTimeout(()=>u(!1),V)}})},[i,r]),_=i!==null;return t.hasSecret?(0,B.jsxs)(`span`,{className:`inline-flex min-w-0 items-center gap-1.5 align-middle font-mono text-body-medium-lighter`,children:[(0,B.jsx)(`button`,{type:`button`,onClick:()=>_?m():void h(),disabled:s,"aria-label":r(_?`credentialRow.hideValueAriaLabel`:`credentialRow.revealValueAriaLabel`,{name:p}),title:r(_?`credentialRow.hideValueTitle`:`credentialRow.clickToRevealTitle`),"data-private":!0,className:`min-w-0 truncate rounded-sm text-left transition-[filter,color] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--border-focus)] ${_?`text-[var(--content-secondary)]`:`select-none text-[var(--content-tertiary)] blur-[3px] hover:blur-[2px]`}`,children:_?i:t.scrubbedValue}),s?(0,B.jsx)(F,{className:`h-3.5 w-3.5 shrink-0 animate-spin`,"aria-hidden":!0}):_?(0,B.jsxs)(B.Fragment,{children:[(0,B.jsx)(`button`,{type:`button`,onClick:g,"aria-label":r(`credentialRow.copyValueAriaLabel`,{name:p}),title:r(`credentialRow.copyValueTitle`),className:`shrink-0 rounded-sm p-0.5 text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-secondary)] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--border-focus)]`,children:l?(0,B.jsx)(P,{className:`h-3.5 w-3.5`,"aria-hidden":!0}):(0,B.jsx)(j,{className:`h-3.5 w-3.5`,"aria-hidden":!0})}),(0,B.jsx)(`button`,{type:`button`,onClick:m,"aria-label":r(`credentialRow.hideValueAriaLabel`,{name:p}),title:r(`credentialRow.hideValueTitle`),className:`shrink-0 rounded-sm p-0.5 text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-secondary)] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--border-focus)]`,children:(0,B.jsx)(A,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})]}):(0,B.jsx)(`button`,{type:`button`,onClick:()=>void h(),"aria-label":r(`credentialRow.revealValueAriaLabel`,{name:p}),title:r(`credentialRow.clickToRevealTitle`),className:`shrink-0 rounded-sm p-0.5 text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-secondary)] focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--border-focus)]`,children:(0,B.jsx)(k,{className:`h-3.5 w-3.5`,"aria-hidden":!0})})]}):(0,B.jsx)(`span`,{className:`min-w-0 truncate font-mono text-body-medium-lighter text-[var(--content-tertiary)]`,children:t.scrubbedValue})}function ce(e){return e>0xe8d4a51000?e:e*1e3}async function le(e,t){let{data:n,response:r}=await g.post({url:`/v1/assistants/{assistant_id}/credential-requests`,path:{assistant_id:e},body:t});if(!r?.ok)throw Error(`Failed to create credential request: ${r?.status}`);return n}var W=6;function G(){let e=b(),t=I(e),n=S.use.assistantId();return S.use.version()!==null&&n===e&&!t?(0,B.jsx)(x,{}):t?(0,B.jsx)(K,{}):null}function K(){let{t:e}=w(`settings`),r=b(),p=re(),g=te(),y=t(r),x=ne({queryKey:y,queryFn:async()=>{let{data:e}=await l({path:{assistant_id:r},body:{},throwOnError:!0});return{credentials:e.credentials,managedCredentials:e.managedCredentials}},enabled:g,retry:s}),S=(0,L.useMemo)(()=>x.data?.credentials??[],[x.data]),C=ee.use.settingsDeveloperNav(),T=(0,L.useMemo)(()=>C?x.data?.managedCredentials??[]:[],[C,x.data]),[E,k]=(0,L.useState)(!1),[A,M]=(0,L.useState)(`own`),[P,I]=(0,L.useState)(``),[R,V]=(0,L.useState)(null),[H,U]=(0,L.useState)(null),[G,K]=(0,L.useState)(null),[ue,q]=(0,L.useState)(null),J=o({onSuccess:(t,r)=>{p.invalidateQueries({queryKey:y}),n.success(e(`credentialsPage.deleteSuccessToast`,{name:`${r.body.service}:${r.body.field}`}))},onError:(t,r)=>{let i=oe(t),a=S.find(e=>e.service===r.body.service&&e.field===r.body.field);if(i&&a){U({credential:a,connections:i});return}d(t,{context:`credentials-delete`}),n.error(t.message||e(`credentialsPage.deleteErrorToast`))}}),de=J.isPending?`${J.variables?.body?.service}:${J.variables?.body?.field}`:null,Y=(0,L.useMemo)(()=>{let e=P.trim().toLowerCase();return e?S.filter(t=>[t.service,t.field,`${t.service}:${t.field}`,t.alias??``].join(` `).toLowerCase().includes(e)):S},[S,P]);(0,L.useEffect)(()=>{S.length<=W&&I(``)},[S.length]),(0,L.useEffect)(()=>{S.length===0&&T.length>0&&M(`managed`)},[S.length,T.length]);let X=(e,t)=>{J.mutate({path:{assistant_id:r},body:{service:e.service,field:e.field,...t?{force:!0}:{}}})},fe=()=>{let e=R;V(null),e&&X(e,!1)},pe=()=>{let e=H;U(null),e&&X(e.credential,!0)},me=async t=>{let i=`${t.service}:${t.field}`;q(i);try{let a=await le(r,{service:t.service,field:t.field,label:t.alias??void 0});a.ok&&a.url?K({name:i,url:a.url,expiresAt:a.expiresAt??null}):n.error(a.error||e(`credentialsPage.generateLinkFailedToast`))}catch(t){n.error(t instanceof Error?t.message:e(`credentialsPage.generateLinkFailedToast`))}finally{q(null)}},he=()=>{let t=G?.url;t&&a(t,{successMessage:e(`credentialsPage.linkCopiedToast`),errorMessage:e(`credentialsPage.linkCopyFailedToast`)})};if(x.isLoading)return(0,B.jsx)(`div`,{className:`flex items-center justify-center py-10`,children:(0,B.jsx)(F,{className:`h-5 w-5 animate-spin text-[var(--content-disabled)]`})});let Z=S.length>0,Q=T.length>0,ge=S.length>W,$=A===`managed`&&Q,_e=!$,ve=[{value:`own`,label:e(`credentialsPage.segmentYourOwn`)},{value:`managed`,label:e(`credentialsPage.segmentManaged`)}];return(0,B.jsxs)(`div`,{className:`space-y-4`,children:[(0,B.jsx)(ae,{title:e(`credentialsPage.title`),subtitle:e($?`credentialsPage.subtitleManaged`:`credentialsPage.subtitleOwn`),accessory:(0,B.jsxs)(`div`,{className:`flex items-center gap-2`,children:[Q?(0,B.jsx)(i,{items:ve,value:A,onChange:M,ariaLabel:e(`credentialsPage.credentialSourceAriaLabel`)}):null,_e&&Z?(0,B.jsx)(_,{type:`button`,variant:`primary`,size:`regular`,onClick:()=>k(!0),leftIcon:(0,B.jsx)(O,{"aria-hidden":!0}),children:e(`credentialsPage.addButton`)}):null]}),children:$?(0,B.jsx)(`div`,{className:`space-y-2`,children:T.map(t=>(0,B.jsx)(v.Root,{children:(0,B.jsxs)(v.Body,{padding:`sm`,className:`flex items-center gap-4 px-4`,children:[(0,B.jsx)(N,{className:`h-5 w-5 shrink-0 text-[var(--content-secondary)]`,"aria-hidden":!0}),(0,B.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,B.jsx)(`p`,{className:`truncate text-title-small text-[var(--content-default)]`,children:t.provider}),(0,B.jsxs)(`p`,{className:`truncate text-body-medium-lighter text-[var(--content-tertiary)]`,children:[t.accountInfo??t.handle,` · `,t.status]})]}),(0,B.jsx)(c,{tone:`neutral`,children:e(`credentialsPage.managedTag`)})]})},t.handle))}):(0,B.jsxs)(`div`,{className:`space-y-4`,children:[Z?(0,B.jsxs)(`div`,{className:`space-y-3`,children:[ge?(0,B.jsx)(u,{type:`text`,value:P,onChange:e=>I(e.target.value),placeholder:e(`credentialsPage.searchPlaceholder`),"aria-label":e(`credentialsPage.searchAriaLabel`),leftIcon:(0,B.jsx)(ie,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),fullWidth:!0}):null,Y.length===0?(0,B.jsx)(`p`,{className:`px-1 py-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`credentialsPage.noMatch`,{query:P.trim()})}):(0,B.jsx)(`div`,{className:`space-y-2`,children:Y.map(e=>{let t=`${e.service}:${e.field}`;return(0,B.jsx)(se,{credential:e,assistantId:r,generatingLink:ue===t,deleting:de===t,onGenerateLink:()=>void me(e),onDelete:()=>V(e)},e.credentialId??t)})})]}):(0,B.jsxs)(`div`,{className:`flex flex-col items-center justify-center px-6 py-12 text-center`,children:[(0,B.jsx)(`div`,{className:`flex h-12 w-12 items-center justify-center rounded-full bg-[var(--surface-base)]`,children:(0,B.jsx)(N,{className:`h-6 w-6 text-[var(--content-disabled)] dark:text-[var(--content-default)]`,"aria-hidden":!0})}),(0,B.jsx)(`h3`,{className:`mt-4 text-title-small text-[var(--content-default)]`,children:e(`credentialsPage.emptyTitle`)}),(0,B.jsx)(`p`,{className:`mt-1 text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`credentialsPage.emptySubtitle`)})]}),Z?null:(0,B.jsx)(_,{type:`button`,variant:`outlined`,size:`compact`,onClick:()=>k(!0),className:`w-full border-dashed`,leftIcon:(0,B.jsx)(O,{"aria-hidden":!0}),children:e(`credentialsPage.addCredentialButton`)})]})}),(0,B.jsx)(m,{open:R!==null,title:e(`credentialsPage.deleteConfirmTitle`),message:R?e(`credentialsPage.deleteConfirmMessage`,{name:`${R.service}:${R.field}`}):``,confirmLabel:e(`credentialsPage.deleteConfirmLabel`),destructive:!0,onConfirm:fe,onCancel:()=>V(null)}),(0,B.jsx)(m,{open:H!==null,title:e(`credentialsPage.inUseTitle`),message:H?e(`credentialsPage.inUseMessage`,{count:H.connections.length,name:`${H.credential.service}:${H.credential.field}`,connections:z(H.connections)}):``,confirmLabel:e(`credentialsPage.inUseConfirmLabel`),destructive:!0,onConfirm:pe,onCancel:()=>U(null)}),(0,B.jsx)(f,{open:E,onClose:()=>k(!1)}),(0,B.jsx)(h.Root,{open:G!==null,onOpenChange:e=>{e||K(null)},children:(0,B.jsxs)(h.Content,{size:`sm`,children:[(0,B.jsxs)(h.Header,{icon:D,children:[(0,B.jsx)(h.Title,{children:e(`credentialsPage.oneTimeLinkModalTitle`)}),(0,B.jsx)(h.Description,{children:G?e(`credentialsPage.oneTimeLinkModalDescription`,{name:G.name,expiresClause:G.expiresAt===null?``:e(`credentialsPage.oneTimeLinkModalExpiresClause`,{expiresAt:new Date(ce(G.expiresAt)).toLocaleString()})}):``})]}),(0,B.jsx)(h.Body,{children:(0,B.jsx)(u,{label:e(`credentialsPage.linkLabel`),type:`text`,readOnly:!0,value:G?.url??``,onFocus:e=>e.currentTarget.select(),fullWidth:!0})}),(0,B.jsx)(h.Footer,{children:(0,B.jsx)(_,{type:`button`,size:`compact`,onClick:he,leftIcon:(0,B.jsx)(j,{"aria-hidden":!0}),children:e(`credentialsPage.copyLinkButton`)})})]})})]})}export{G as CredentialsPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Tb as t}from"./app-p4YU9h0P.js";import{f as n,x as r}from"./react-B9IgSVeK.js";var i=e(r(),1);function a(){let e=n();return(0,i.useEffect)(()=>{e(t.settings.general,{replace:!0})},[e]),null}export{a as DangerZoneRedirectPage};
@@ -1,4 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/xterm-DuUTQzS6.js","assets/rolldown-runtime-BM3Ffeng.js","assets/xterm-addon-fit-DuSb5pvT.js"])))=>i.map(i=>d[i]);
2
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$h as t,$o as n,Bc as r,Bg as i,Bx as a,Cg as o,Cu as s,Cx as c,Ey as l,G_ as u,Gh as d,Hg as f,Hh as p,Hx as m,Ix as h,Jh as g,K_ as _,Nx as v,Ox as y,Pb as b,Qh as x,Rb as S,Rd as C,Su as w,Sx as T,Tb as E,Ux as D,Vb as O,Vc as ee,Vh as k,Vx as A,Wu as j,Xa as te,aa as M,ag as N,bp as ne,bu as P,cb as re,da as ie,dg as F,eg as I,et as L,eu as ae,fa as oe,fg as se,hc as ce,hx as R,ih as le,km as z,lx as ue,nb as de,ng as fe,oa as pe,og as me,pa as he,pg as ge,px as _e,q_ as ve,qh as ye,sb as B,sy as be,tg as V,tx as xe,ua as Se,ug as Ce,un as we,wp as Te,wu as Ee,xp as H,xu as De,ym as Oe,yr as ke}from"./app-p4YU9h0P.js";import{H as Ae,J as je,Jn as Me,K as U,N as Ne,Q as Pe,U as Fe,W,X as Ie,Y as G,Z as Le,Zn as Re,er as ze,j as K,z as Be}from"./vendor-DYOeoIwg.js";import{_ as Ve,f as He,t as Ue,v as We,x as Ge}from"./react-B9IgSVeK.js";import{Ai as Ke,Dn as qe,E as Je,Fa as Ye,Ha as Xe,Ja as q,Ki as Ze,N as Qe,Oi as $e,Ri as et,Rt as tt,Tt as nt,Ui as rt,Wi as it,_t as at,a as ot,ai as st,ci as ct,i as lt,lt as ut,qi as dt,qn as J,yr as ft}from"./icons-QG1KAFmx.js";import{t as pt}from"./ellipsis-vertical-Dbz00Lo-.js";import{t as mt}from"./share-feedback-modal-Ka1FQwFE.js";import{t as ht}from"./detail-panel-stop-button-BFDJ5Gir.js";var gt=q(`plug-zap`,[[`path`,{d:`M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z`,key:`goz73y`}],[`path`,{d:`m2 22 3-3`,key:`19mgm9`}],[`path`,{d:`M7.5 13.5 10 11`,key:`7xgeeb`}],[`path`,{d:`M10.5 16.5 13 14`,key:`10btkg`}],[`path`,{d:`m18 3-4 4h6l-4 4`,key:`16psg9`}]]),_t=q(`rotate-cw`,[[`path`,{d:`M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8`,key:`1p45f6`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}]]),vt=q(`save`,[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]),yt=q(`thumbs-down`,[[`path`,{d:`M9 18.12 10 14H4.17a2 2 0 0 1-1.92-2.56l2.33-8A2 2 0 0 1 6.5 2H20a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2.76a2 2 0 0 0-1.79 1.11L12 22a3.13 3.13 0 0 1-3-3.88Z`,key:`m61m77`}],[`path`,{d:`M17 14V2`,key:`8ymqnk`}]]),bt=q(`thumbs-up`,[[`path`,{d:`M15 5.88 14 10h5.83a2 2 0 0 1 1.92 2.56l-2.33 8A2 2 0 0 1 17.5 22H4a2 2 0 0 1-2-2v-8a2 2 0 0 1 2-2h2.76a2 2 0 0 0 1.79-1.11L12 2a3.13 3.13 0 0 1 3 3.88Z`,key:`emmmcr`}],[`path`,{d:`M7 10v12`,key:`1qc93n`}]]),xt=q(`unplug`,[[`path`,{d:`m19 5 3-3`,key:`yk6iyv`}],[`path`,{d:`m2 22 3-3`,key:`19mgm9`}],[`path`,{d:`M6.3 20.3a2.4 2.4 0 0 0 3.4 0L12 18l-6-6-2.3 2.3a2.4 2.4 0 0 0 0 3.4Z`,key:`goz73y`}],[`path`,{d:`M7.5 13.5 10 11`,key:`7xgeeb`}],[`path`,{d:`M10.5 16.5 13 14`,key:`10btkg`}],[`path`,{d:`m12 6 6 6 2.3-2.3a2.4 2.4 0 0 0 0-3.4l-2.6-2.6a2.4 2.4 0 0 0-3.4 0Z`,key:`1snsnr`}]]),Y=e(Ge(),1);function St(e,t){return t||e.archivedAt!=null}function Ct(e,t){let n=e.lastMessageAt??e.createdAt??0;return(t.lastMessageAt??t.createdAt??0)-n}function wt(e,t){let n=e.archivedAt??0;return(t.archivedAt??0)-n||Ct(e,t)}function Tt(e,t){let n=new Map;for(let t of e)for(let e of t)n.has(e.conversationId)||n.set(e.conversationId,{conversation:e,archived:St(e,!1)});for(let e of t)n.set(e.conversationId,{conversation:e,archived:St(e,!0)});return[...n.values()].sort((e,t)=>Ct(e.conversation,t.conversation))}function Et(e){return{needsActive:e!==`archived`,needsArchived:e!==`active`}}function Dt(e,{activeLoading:t,archivedLoading:n}){return e===`active`?t:e===`archived`?n:t||n}function Ot(e,{activeError:t,archivedError:n}){return e===`active`?t:e===`archived`?n:t||n}function kt(e,t){return t===`active`?e.filter(e=>!e.archived):t===`archived`?e.filter(e=>e.archived).sort((e,t)=>wt(e.conversation,t.conversation)):e}function At(e,t,n=e=>M(e)){let r=t.trim().toLowerCase();return r?e.filter(e=>{let t=(e.conversation.title??``).toLowerCase(),i=n(e.conversation.title).toLowerCase();return t.includes(r)||i.includes(r)}):e}function jt(e,t=`all`){let[n,r]=(0,Y.useState)(``),[i,a]=(0,Y.useState)(t),{t:o}=K(),{needsActive:s,needsArchived:c}=Et(i),{conversations:l,isLoading:u,isError:d,refetch:f}=oe(e,s),{conversations:p,isLoading:m,isError:h,refetch:g}=ie(e,s),{conversations:_,isLoading:v,isError:y,refetch:b}=he(e,s),{conversations:x,isLoading:S,isError:C,refetch:w}=Se(e,c),T=u||m||v,E=d||h||y,D=()=>{f(),g(),b()},O=(0,Y.useMemo)(()=>Tt([l,p,_],x),[l,p,_,x]),ee=(0,Y.useMemo)(()=>kt(O,i),[O,i]);return{merged:O,rows:(0,Y.useMemo)(()=>At(ee,n,e=>M(e,o)),[ee,n,o]),searchText:n,setSearchText:r,filter:i,setFilter:a,loading:Dt(i,{activeLoading:T,archivedLoading:S}),error:Ot(i,{activeError:E,archivedError:C}),refetch:()=>{s&&D(),c&&w()}}}var X=Ue();function Mt(e){if(e==null)return``;let t=new Date(e);return Number.isNaN(t.getTime())?``:t.toLocaleString(void 0,{month:`short`,day:`numeric`,year:`numeric`,hour:`numeric`,minute:`2-digit`,hour12:!0})}function Nt({row:e,isFirst:t,onOpen:n,onArchive:r,onUnarchive:i,isPending:a}){let{t:o}=K(`settings`),s=pe(),{conversation:c,archived:l}=e,u=[Mt(c.lastMessageAt??c.createdAt),c.source??`vellum-assistant`].filter(Boolean).join(` · `),d=s(c.title);return(0,X.jsxs)(`div`,{className:`flex items-center gap-3 py-3 ${t?``:`border-t border-[var(--border-base)]`}`,children:[(0,X.jsxs)(`button`,{type:`button`,onClick:n,className:`min-w-0 flex-1 text-left`,children:[(0,X.jsx)(`div`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:d}),(0,X.jsx)(`p`,{className:`mt-0.5 truncate text-body-small-default text-[var(--content-tertiary)]`,children:u})]}),(0,X.jsx)(D,{variant:`outlined`,onClick:l?i:r,disabled:a,className:`shrink-0`,children:a?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(J,{className:`h-4 w-4 animate-spin`}),o(l?`allConversationsView.unarchiving`:`allConversationsView.archiving`)]}):l?o(`allConversationsView.unarchive`):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(Xe,{className:`h-4 w-4`}),o(`allConversationsView.archive`)]})})]})}function Pt({assistantId:e,title:t,initialFilter:r,onOpenConversation:a}){let{t:o}=K(`settings`),s=ze(),{rows:l,searchText:u,setSearchText:d,filter:p,setFilter:m,loading:h,error:g,refetch:_}=jt(e,r),[y,x]=(0,Y.useState)(null),S=(0,Y.useMemo)(()=>[{value:`all`,label:o(`allConversationsView.filterAll`)},{value:`active`,label:o(`allConversationsView.filterActive`)},{value:`archived`,label:o(`allConversationsView.filterArchived`)}],[o]),C=(0,Y.useCallback)(async(t,r,i,a)=>{x(t.conversationId);try{await r({path:{assistant_id:e,id:t.conversationId},throwOnError:!0}),n(s,e)}catch(e){b(e,{context:a}),c.error(i)}finally{x(null)}},[e,s]),w=(0,Y.useCallback)(e=>{C(e,i,o(`allConversationsView.archiveFailed`),`all_conversations_archive_conversation`)},[C,o]),T=(0,Y.useCallback)(e=>{C(e,f,o(`allConversationsView.unarchiveFailed`),`all_conversations_unarchive_conversation`)},[C,o]);return h?(0,X.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,X.jsx)(`div`,{className:`h-6 w-6 animate-spin rounded-full border-2 border-[var(--border-base)] border-t-[var(--primary-base)]`,role:`status`,"aria-label":o(`allConversationsView.loading`)})}):g?(0,X.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-4 px-4`,children:[(0,X.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:o(`allConversationsView.loadError`)}),(0,X.jsxs)(D,{variant:`outlined`,onClick:_,children:[(0,X.jsx)(nt,{className:`h-4 w-4`}),o(`allConversationsView.retry`)]})]}):(0,X.jsxs)(`div`,{className:`flex h-full flex-col overflow-hidden`,children:[t?(0,X.jsx)(`h1`,{className:`mb-4 shrink-0 text-title-large text-[var(--content-default)]`,children:t}):null,(0,X.jsxs)(`div`,{className:`mb-6 flex shrink-0 items-center gap-2`,children:[(0,X.jsx)(v,{fullWidth:!0,wrapperClassName:`min-w-0 flex-1`,type:`text`,placeholder:o(`allConversationsView.searchPlaceholder`),value:u,onChange:e=>d(e.target.value),leftIcon:(0,X.jsx)(at,{size:16})}),(0,X.jsx)(_e,{"aria-label":o(`allConversationsView.filterAria`),value:p,onChange:m,options:S,menuAlign:`end`,className:`w-36 shrink-0`})]}),(0,X.jsx)(`div`,{className:`flex-1 overflow-y-auto`,children:(0,X.jsx)(Ft,{rows:l,filter:p,searchText:u,pendingId:y,onOpen:a,onArchive:w,onUnarchive:T})})]})}function Ft({rows:e,filter:t,searchText:n,pendingId:r,onOpen:i,onArchive:a,onUnarchive:o}){let{t:s}=K(`settings`);if(e.length===0){if(n.trim())return(0,X.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-16`,children:[(0,X.jsx)(at,{size:32,className:`mb-4 text-[var(--content-tertiary)]`}),(0,X.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:s(`allConversationsView.noMatch`,{query:n})})]});let e=s(t===`archived`?`allConversationsView.emptyArchived`:t===`active`?`allConversationsView.emptyActive`:`allConversationsView.emptyAll`);return(0,X.jsxs)(`div`,{className:`flex flex-col items-center justify-center py-16`,children:[(0,X.jsx)(Xe,{size:32,className:`mb-4 text-[var(--content-tertiary)]`}),(0,X.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e})]})}return(0,X.jsx)(`div`,{children:e.map((e,t)=>(0,X.jsx)(Nt,{row:e,isFirst:t===0,onOpen:()=>i(e.conversation.conversationId),onArchive:()=>a(e.conversation),onUnarchive:()=>o(e.conversation),isPending:r===e.conversation.conversationId},e.conversation.conversationId))})}function It(e,t,n,r){let i=!1,a=new AbortController;return(async()=>{if(i)return;let c=null;try{let{stream:l}=await o.sse.get({url:`/v1/assistants/{assistant_id}/terminal/sessions/{session_id}/events/`,path:{assistant_id:e,session_id:t},headers:{Accept:`text/event-stream, application/json`,...De()},signal:a.signal,sseMaxRetryAttempts:0,onSseError:e=>{c=w(e,`Terminal stream disconnected`)}});for await(let e of l){if(i)return;let t=s(e);if(!t)continue;let r=Ee(t),a=typeof r.seq==`number`?r.seq:-1,o=typeof r.data==`string`?r.data:``;if(!(a<0||o===``))try{n({seq:a,data:o})}catch{}}if(i)return;if(c){r(c);return}r(Error(`Terminal stream ended unexpectedly`))}catch(e){if(i)return;r(w(e,`Terminal stream connection failed`))}})().catch(e=>{i||r(w(e,`Terminal stream setup failed`))}),{cancel:()=>{i=!0,a.abort()}}}var Z=xe(Pe()((e,t)=>({status:`idle`,errorMessage:null,reconnectAttempts:0,sessionId:null,requestConnect:()=>{let{status:n}=t();(n===`idle`||n===`closed`||n===`error`)&&e({status:`connecting`,errorMessage:null,reconnectAttempts:0})},connectSucceeded:n=>{t().status===`connecting`&&e({status:`connected`,sessionId:n,errorMessage:null,reconnectAttempts:0})},connectFailed:n=>{t().status===`connecting`&&e({status:`error`,errorMessage:n,sessionId:null})},disconnected:()=>{t().status===`connected`&&e({status:`error`,errorMessage:`Connection lost.`,sessionId:null})},requestReconnect:()=>{let{status:n,reconnectAttempts:r}=t();(n===`error`||n===`connected`)&&e({status:`reconnecting`,errorMessage:null,reconnectAttempts:r+1,sessionId:null})},reconnectSucceeded:n=>{t().status===`reconnecting`&&e({status:`connected`,sessionId:n,errorMessage:null,reconnectAttempts:0})},reconnectFailed:n=>{t().status===`reconnecting`&&e({status:`error`,errorMessage:n,sessionId:null})},errorOccurred:t=>{e({status:`error`,errorMessage:t,sessionId:null})},closed:()=>{e({status:`closed`,errorMessage:null,sessionId:null})},reset:()=>{e({status:`idle`,errorMessage:null,reconnectAttempts:0,sessionId:null})}}))),Lt=50,Rt=150,zt=3,Bt=1e3;function Vt(){return{highWaterMark:-1}}function Ht({assistantId:e,onData:t,service:n}){let r=(0,Y.useRef)(null),i=(0,Y.useRef)(t);(0,Y.useLayoutEffect)(()=>{i.current=t},[t]);let a=(0,Y.useRef)(``),o=(0,Y.useRef)(null),s=(0,Y.useRef)(null),c=(0,Y.useRef)(null),l=(0,Y.useRef)(null),u=(0,Y.useRef)(Vt()),d=(0,Y.useRef)(null),f=(0,Y.useRef)(!1),p=(0,Y.useRef)(null),m=(0,Y.useMemo)(()=>n?{service:n}:void 0,[n]),h=(0,Y.useCallback)(t=>{o.current||=setInterval(()=>{let n=a.current;!n||!e||(a.current=``,se({path:{assistant_id:e,session_id:t},body:{data:n},throwOnError:!1}).catch(()=>{}))},Lt)},[e]),g=(0,Y.useCallback)(()=>{o.current&&=(clearInterval(o.current),null),a.current=``},[]),_=(0,Y.useCallback)(async t=>{if(!e){t?Z.getState().reconnectFailed(`No assistant ID`):Z.getState().connectFailed(`No assistant ID`);return}let n;try{let{data:t,error:r,response:i}=await Ce({path:{assistant_id:e},body:m,throwOnError:!1});if(!i||!i.ok){let e=r&&typeof r==`object`&&!Array.isArray(r)?r.detail:void 0;throw Error(e??`Failed to create terminal session (HTTP ${i?.status??`unknown`})`)}let a=t&&typeof t==`object`&&!Array.isArray(t)?t:{},o=typeof a.session_id==`string`?a.session_id:typeof a.id==`string`?a.id:void 0;if(!o)throw Error(`Backend did not return a session ID`);n=o}catch(e){let n=e instanceof Error?e.message:`Failed to create terminal session`;t?Z.getState().reconnectFailed(n):Z.getState().connectFailed(n);return}let a=t?`reconnecting`:`connecting`;if(Z.getState().status!==a){F({path:{assistant_id:e,session_id:n},throwOnError:!1}).catch(()=>{});return}u.current=Vt(),r.current=It(e,n,e=>{if(!(e.seq<=u.current.highWaterMark)){u.current.highWaterMark=e.seq;try{i.current(e.data)}catch{}}},e=>{g(),Z.getState().errorOccurred(e.message)}),h(n),f.current=!1,p.current=n,t?Z.getState().reconnectSucceeded(n):Z.getState().connectSucceeded(n);let o=l.current;o&&e&&ge({path:{assistant_id:e,session_id:n},body:{cols:o.cols,rows:o.rows},throwOnError:!1}).catch(()=>{})},[e,m,h,g]),v=Z.use.status(),y=Z.use.reconnectAttempts();(0,Y.useEffect)(()=>{if(v!==`error`||f.current||y>=zt)return;let t=Bt*2**y;return d.current=setTimeout(()=>{if(d.current=null,Z.getState().status!==`error`||f.current)return;r.current?.cancel(),r.current=null;let t=p.current;t&&e&&(p.current=null,F({path:{assistant_id:e,session_id:t},throwOnError:!1}).catch(()=>{})),Z.getState().requestReconnect(),_(!0)},t),()=>{d.current&&=(clearTimeout(d.current),null)}},[v,y,e,_]);let b=(0,Y.useCallback)(()=>{let{status:e}=Z.getState();e!==`idle`&&e!==`closed`&&e!==`error`||(Z.getState().requestConnect(),_(!1))},[_]),x=(0,Y.useCallback)(()=>{let{status:t,sessionId:n}=Z.getState();t!==`error`&&t!==`connected`||(r.current?.cancel(),r.current=null,g(),s.current&&=(clearTimeout(s.current),null),c.current=null,n&&e&&F({path:{assistant_id:e,session_id:n},throwOnError:!1}).catch(()=>{}),Z.getState().requestReconnect(),_(!0))},[e,_,g]),S=(0,Y.useCallback)(()=>{let{sessionId:t}=Z.getState();f.current=!0,d.current&&=(clearTimeout(d.current),null),r.current?.cancel(),r.current=null,g(),s.current&&=(clearTimeout(s.current),null),t&&e&&F({path:{assistant_id:e,session_id:t},throwOnError:!1}).catch(()=>{}),Z.getState().closed()},[e,g]),C=(0,Y.useCallback)(e=>{a.current+=e},[]),w=(0,Y.useCallback)((t,n)=>{l.current={cols:t,rows:n};let{status:r,sessionId:i}=Z.getState();r!==`connected`||!i||!e||(c.current={cols:t,rows:n},s.current&&clearTimeout(s.current),s.current=setTimeout(()=>{s.current=null;let t=c.current,n=Z.getState();!t||!n.sessionId||n.status!==`connected`||!e||(c.current=null,ge({path:{assistant_id:e,session_id:n.sessionId},body:{cols:t.cols,rows:t.rows},throwOnError:!1}).catch(()=>{}))},Rt))},[e]);return(0,Y.useEffect)(()=>()=>{f.current=!0,d.current&&=(clearTimeout(d.current),null),r.current?.cancel(),r.current=null,o.current&&=(clearInterval(o.current),null),s.current&&=(clearTimeout(s.current),null);let{sessionId:t}=Z.getState();t&&e&&F({path:{assistant_id:e,session_id:t},throwOnError:!1}).catch(()=>{}),Z.getState().reset()},[e]),{connect:b,reconnect:x,close:S,sendInput:C,sendResize:w}}function Ut({onData:t,onResize:n,className:r,readOnly:i=!1,writeRef:a}){let{t:o}=K(`terminal`),s=(0,Y.useRef)(null),c=(0,Y.useRef)(null),l=(0,Y.useRef)(t),u=(0,Y.useRef)(n),d=(0,Y.useRef)(i);return(0,Y.useLayoutEffect)(()=>{l.current=t,u.current=n,d.current=i}),(0,Y.useEffect)(()=>{let e=c.current;e&&(e.options.disableStdin=i,i||e.focus())},[i]),(0,Y.useEffect)(()=>{if(!s.current)return;let t=s.current,n=!1,r=null,o=null,f=null,p=null;return Promise.all([We(()=>import(`./xterm-DuUTQzS6.js`).then(t=>e(t.default,1)),__vite__mapDeps([0,1])),We(()=>import(`./xterm-addon-fit-DuSb5pvT.js`).then(t=>e(t.default,1)),__vite__mapDeps([2,1]))]).then(([{Terminal:e},{FitAddon:s}])=>{if(n||!t)return;let m=new e({cursorBlink:!0,fontFamily:`"JetBrains Mono", "Fira Code", monospace`,fontSize:14,theme:{background:`#0f1117`,foreground:`#d4d4d4`,cursor:`#d4d4d4`,black:`#1e1e1e`,brightBlack:`#666666`,red:`#f44747`,brightRed:`#f44747`,green:`#6a9955`,brightGreen:`#6a9955`,yellow:`#dcdcaa`,brightYellow:`#dcdcaa`,blue:`#569cd6`,brightBlue:`#569cd6`,magenta:`#c586c0`,brightMagenta:`#c586c0`,cyan:`#4ec9b0`,brightCyan:`#4ec9b0`,white:`#d4d4d4`,brightWhite:`#ffffff`},disableStdin:i,scrollback:2e3});r=m;let h=new s;m.loadAddon(h),m.open(t),c.current=m,m.attachCustomKeyEventHandler(e=>e.key===`k`&&e.metaKey&&!e.ctrlKey&&!e.shiftKey&&!e.altKey?(e.type===`keydown`&&(e.preventDefault(),m.clear()),!1):!0);try{h.fit(),m.cols&&m.rows&&u.current?.({cols:m.cols,rows:m.rows})}catch{}f=m.onData(e=>{d.current||l.current?.(e)}),p=m.onResize(({cols:e,rows:t})=>{u.current?.({cols:e,rows:t})}),o=new ResizeObserver(()=>{try{h.fit()}catch{}}),o.observe(t),a&&(a.current=e=>m.write(e))}),()=>{n=!0,o?.disconnect(),f?.dispose(),p?.dispose(),r?.dispose(),c.current=null,a&&(a.current=null)}},[]),(0,X.jsx)(`div`,{ref:s,className:r,style:{width:`100%`,height:`100%`,overflow:`hidden`},role:`region`,"aria-label":o(`terminalConsole.consoleAria`)})}function Wt({status:e,onConnect:t,onDisconnect:n,onClear:r,className:i,maintenanceModeActive:a}){let{t:o}=K(`terminal`),s=e===`connecting`||e===`reconnecting`,c=e===`connected`,l=e===`idle`||e===`closed`||e===`error`;return(0,X.jsxs)(`div`,{className:[`flex items-center justify-between gap-3 border-b px-3 py-1.5`,i].filter(Boolean).join(` `),style:{background:`var(--surface-lift)`,borderColor:`var(--border-base)`},children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,X.jsx)(Qe,{className:`h-4 w-4 shrink-0`,style:{color:`var(--content-tertiary)`}}),(0,X.jsx)(`span`,{className:`truncate text-body-medium-default`,style:{color:`var(--content-secondary)`},children:o(`terminalToolbar.heading`)}),(0,X.jsx)(Gt,{status:e}),a&&(0,X.jsx)(h,{tone:`warning`,leftIcon:(0,X.jsx)(ot,{}),title:o(`terminalToolbar.recoveryTitle`),children:o(`terminalToolbar.recoveryTag`)})]}),(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,X.jsx)(D,{variant:`ghost`,size:`compact`,leftIcon:(0,X.jsx)(lt,{}),onClick:r,title:o(`terminalToolbar.clearTitle`),children:o(`terminalToolbar.clear`)}),c||s?(0,X.jsx)(D,{variant:`danger`,size:`compact`,leftIcon:s?(0,X.jsx)(J,{className:`animate-spin`}):(0,X.jsx)(xt,{}),onClick:n,disabled:s,title:o(`terminalToolbar.disconnectTitle`),children:o(`terminalToolbar.disconnect`)}):(0,X.jsx)(D,{variant:`primary`,size:`compact`,leftIcon:(0,X.jsx)(gt,{}),onClick:t,disabled:!l,title:o(`terminalToolbar.connectTitle`),children:o(`terminalToolbar.connect`)})]})]})}function Gt({status:e}){let{t}=K(`terminal`),n=Kt[e],r=t(n.labelKey);return(0,X.jsx)(h,{tone:n.tone,leftIcon:(0,X.jsx)(`span`,{className:[`h-1.5 w-1.5 rounded-full bg-current`,n.pulse?`animate-pulse`:``].filter(Boolean).join(` `)}),"aria-label":t(`terminalToolbar.statusAria`,{status:r}),children:r})}var Kt={idle:{labelKey:`terminalStatus.idle`,tone:`neutral`},connecting:{labelKey:`terminalStatus.connecting`,tone:`warning`,pulse:!0},connected:{labelKey:`terminalStatus.connected`,tone:`positive`},reconnecting:{labelKey:`terminalStatus.reconnecting`,tone:`warning`,pulse:!0},error:{labelKey:`terminalStatus.error`,tone:`negative`},closed:{labelKey:`terminalStatus.closed`,tone:`neutral`}};function qt({assistantId:e,className:t,maintenanceMode:n,service:r}){let{t:i}=K(),a=(0,Y.useRef)(null),{connect:o,close:s,sendInput:c,sendResize:l,reconnect:u}=Ht({assistantId:e,onData:(0,Y.useCallback)(e=>{try{let t=atob(e);a.current?.(t)}catch{a.current?.(e)}},[]),service:r}),d=Z.use.status(),f=Z.use.errorMessage(),p=Z.use.reconnectAttempts(),m=(0,Y.useCallback)(()=>{d===`error`||d===`reconnecting`||p>0?u():o()},[d,p,o,u]),h=(0,Y.useCallback)(e=>{c(e)},[c]),g=(0,Y.useCallback)(({cols:e,rows:t})=>{l(e,t)},[l]),_=(0,Y.useCallback)(()=>{a.current?.(`\x1B[2J\x1B[H`)},[]),v=d!==`connected`,y=n?.enabled===!0;return(0,X.jsxs)(`div`,{className:[`flex flex-col overflow-hidden rounded-lg border border-[var(--border-base)]`,t].filter(Boolean).join(` `),children:[(0,X.jsx)(Wt,{status:d,onConnect:m,onDisconnect:s,onClear:_,maintenanceModeActive:y}),y&&(0,X.jsx)(`div`,{className:`border-b border-[var(--system-mid-strong)] bg-[var(--system-mid-weak)] px-3 py-2 text-body-small-lighter text-[var(--system-mid-strong)]`,children:i(`terminalPanel.recoveryModeBanner`)}),d===`error`&&f&&(0,X.jsx)(`div`,{className:`border-b border-[var(--border-base)] bg-[var(--system-negative-weak)] px-3 py-2 text-body-small-default text-[var(--system-negative-strong)]`,children:f}),(0,X.jsx)(`div`,{className:`relative min-h-0 flex-1`,children:(0,X.jsx)(`div`,{className:`absolute inset-0`,children:(0,X.jsx)(Ut,{onData:h,onResize:g,readOnly:v,writeRef:a,className:`h-full w-full`})})})]})}function Jt(){let{t:e}=K(`settings`),t=H({platformHostedOnly:!0}),n=ne(),[r,i]=(0,Y.useState)(null),[a,o]=(0,Y.useState)(null),[s,l]=(0,Y.useState)(!0),[u,d]=(0,Y.useState)(`assistant`),f=(0,Y.useRef)(!1),m=(0,Y.useMemo)(()=>[{value:`assistant`,label:`assistant`},{value:`gateway`,label:`gateway`},{value:`credential-executor`,label:`credential-executor`}],[]),h=(0,Y.useCallback)(async t=>{if(!(!t&&f.current)){t||l(!0);try{let e=await p();e.ok&&(f.current=!0,i(e.data.id),o(e.data.maintenance_mode))}catch(t){b(t,{context:`fetch_assistant_for_terminal`}),c.error(e(`assistantTerminalPanel.loadErrorToast`))}finally{l(!1)}}},[e]);if((0,Y.useEffect)(()=>{t===`full`&&h()},[h,t]),t===`gated`)return null;let g=s||t===`full`&&n;return(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-4`,children:[(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-3`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,X.jsx)(`div`,{className:`flex h-9 w-9 shrink-0 items-center justify-center rounded-lg bg-[var(--surface-base)]`,children:(0,X.jsx)(Qe,{className:`h-5 w-5 text-[var(--content-secondary)]`})}),(0,X.jsxs)(`div`,{className:`min-w-0`,children:[(0,X.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`assistantTerminalPanel.title`)}),(0,X.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`assistantTerminalPanel.subtitle`)})]})]}),r&&(0,X.jsx)(_e,{options:[...m],value:u,onChange:d,"aria-label":e(`assistantTerminalPanel.targetContainer`)})]}),t===`disabled`?(0,X.jsx)(we,{children:e(`assistantTerminalPanel.loginNotice`)}):g?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,X.jsx)(`span`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-[var(--border-element)] border-t-[var(--content-secondary)]`}),e(`assistantTerminalPanel.loading`)]}):r?(0,X.jsx)(qt,{assistantId:r,maintenanceMode:a??void 0,service:u,className:`min-h-0 flex-1`},u):(0,X.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)] px-4 py-3 text-body-medium-lighter text-[var(--content-tertiary)]`,children:(0,X.jsxs)(`div`,{className:`flex items-center gap-2 px-1 py-0.5`,children:[(0,X.jsx)(Qe,{className:`h-4 w-4 shrink-0`}),(0,X.jsx)(`span`,{children:e(`assistantTerminalPanel.noAssistant`)})]})})]})}var Yt=`0.11.10`;function Xt(){return le(Yt)}function Zt(e){return e instanceof S&&e.status===404}function Qt(e){return e===`ready`?`positive`:e===`failed`?`negative`:`warning`}var $t={ready:`Ready`,running:`Migrating`,failed:`Failed`,not_started:`Not started`},en={ready:`debugDatabasePanel.statusReady`,running:`debugDatabasePanel.statusRunning`,failed:`debugDatabasePanel.statusFailed`,not_started:`debugDatabasePanel.statusNotStarted`};function tn(){let{t:e}=K(`settings`),t=L(),n=Oe(),r=Xt(),i=Re({...C({path:{assistant_id:t}}),enabled:n&&r}),o=!r||Zt(i.error);return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,X.jsx)(`div`,{className:`flex h-9 w-9 items-center justify-center rounded-lg bg-[var(--surface-base)]`,children:(0,X.jsx)(st,{className:`h-5 w-5 text-[var(--content-secondary)]`})}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`debugDatabasePanel.title`,`Database`)}),(0,X.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`debugDatabasePanel.subtitle`,`Migration status for this assistant, including failed and deferred steps.`)})]})]}),(0,X.jsx)(D,{type:`button`,variant:`outlined`,size:`compact`,leftIcon:(0,X.jsx)(_t,{}),onClick:()=>{i.refetch()},disabled:!r||i.isFetching,children:e(`debugDatabasePanel.refresh`,`Refresh`)})]}),o?(0,X.jsx)(a,{tone:`info`,children:e(`debugDatabasePanel.unsupported`,`This assistant version does not report database diagnostics yet.`)}):i.isPending?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,X.jsx)(J,{className:`h-4 w-4 animate-spin`}),e(`debugDatabasePanel.loading`,`Loading database status…`)]}):i.error?(0,X.jsx)(a,{tone:`error`,children:e(`debugDatabasePanel.loadError`,`Could not load database diagnostics.`)}):i.data?(0,X.jsx)(nn,{data:i.data}):null]})}function nn({data:e}){let{t}=K(`settings`),n=e.failed.length>0,r=e.deferred.length>0;return(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(h,{tone:Qt(e.state),children:t(en[e.state],$t[e.state])}),e.reason?(0,X.jsx)(m,{variant:`body-small-lighter`,children:e.reason}):null]}),e.error?(0,X.jsx)(a,{tone:`error`,children:e.error}):null,e.state===`running`?(0,X.jsx)(a,{tone:`info`,children:t(`debugDatabasePanel.migratingHint`,`Migrations are still running. Failed steps will appear here if a step throws.`)}):null,e.validationError?(0,X.jsx)(a,{tone:`error`,title:t(`debugDatabasePanel.validationHeading`,`Validation error`),children:e.validationError}):null,n?(0,X.jsxs)(`section`,{className:`space-y-2`,children:[(0,X.jsx)(m,{as:`h3`,variant:`title-small`,children:t(`debugDatabasePanel.failedHeading`,`Failed migrations`)}),e.failed.map(e=>(0,X.jsx)(rn,{name:e.name,detail:e.error,detailMono:!0},e.name))]}):e.state===`running`?null:(0,X.jsx)(a,{tone:`success`,children:t(`debugDatabasePanel.noFailures`,`No failed migrations.`)}),r?(0,X.jsxs)(`section`,{className:`space-y-2`,children:[(0,X.jsx)(m,{as:`h3`,variant:`title-small`,children:t(`debugDatabasePanel.deferredHeading`,`Deferred migrations`)}),e.deferred.map(e=>(0,X.jsx)(rn,{name:e.name,detail:t(`debugDatabasePanel.missingDeps`,{deps:e.missing.join(`, `)})},e.name))]}):null]})}function rn({name:e,detail:t,detailMono:n=!1}){return(0,X.jsxs)(A.Root,{children:[(0,X.jsx)(A.Header,{className:`font-mono break-all`,children:e}),t?(0,X.jsx)(A.Body,{children:(0,X.jsx)(m,{as:`p`,variant:`body-small-lighter`,className:n?`font-mono break-words whitespace-pre-wrap`:`break-words`,children:t})}):null]})}var an=3,on={point_in_time:`neutral`,scheduled:`positive`,preview_channel:`warning`,doctor:`warning`};function sn({type:e}){let{t}=K(`settings`),n=e;return e===`point_in_time`?n=t(`assistantBackups.typePointInTime`):e===`scheduled`?n=t(`assistantBackups.typeScheduled`):e===`preview_channel`?n=t(`assistantBackups.typePreview`):e===`doctor`&&(n=t(`assistantBackups.typeDoctor`)),(0,X.jsx)(h,{tone:on[e]??`neutral`,children:n})}function cn(e){if(e==null)return`—`;let t=String(e);/Z|[+-]\d{2}:?\d{2}$/.test(t)||(t+=`Z`);let n=new Date(t);return Number.isNaN(n.getTime())?`—`:n.toLocaleString(`en-US`,{year:`numeric`,month:`short`,day:`numeric`,hour:`numeric`,minute:`2-digit`})}function ln({assistantId:e}){let{t}=K(`settings`),[n,r]=(0,Y.useState)(null),[i,a]=(0,Y.useState)(null),[o,s]=(0,Y.useState)([]),[l,f]=(0,Y.useState)(0),[p,m]=(0,Y.useState)(null),[_,v]=(0,Y.useState)(null),[y,b]=(0,Y.useState)(!1),[x,S]=(0,Y.useState)(null),C=(0,Y.useCallback)(e=>{u(e,{errorMessage:t(`assistantBackups.copyFailed`),onCopied:()=>{S(e),setTimeout(()=>S(null),2e3)}})},[t]),w=n!==e;(0,Y.useEffect)(()=>{let n=!1;return d(e).then(i=>{n||(i.ok?(s(i.data),a(null)):a(typeof i.error?.detail==`string`?i.error.detail:t(`assistantBackups.loadFailed`)),r(e))}).catch(()=>{n||(a(t(`assistantBackups.loadFailed`)),r(e))}),()=>{n=!0}},[e,l,t]);let E=(0,Y.useCallback)(async()=>{if(!_)return;let n=_;v(null),m(n.snapshot_name);try{let r=await g(e,n);if(r.ok)c.success(t(`assistantBackups.restoreSuccessToast`)),f(e=>e+1);else{let e=typeof r.error?.detail==`string`?r.error.detail:t(`assistantBackups.restoreFailedToast`);c.error(e)}}catch{c.error(t(`assistantBackups.restoreFailedToast`))}finally{m(null)}},[e,_,t]),O=(0,Y.useCallback)(async()=>{b(!0);try{let n=await k(e);if(n.ok)c.success(t(`assistantBackups.createSuccessToast`)),f(e=>e+1);else{let e=typeof n.error?.detail==`string`?n.error.detail:t(`assistantBackups.createFailedToast`);c.error(e)}}catch{c.error(t(`assistantBackups.createFailedToast`))}finally{b(!1)}},[e,t]);if(w)return(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,X.jsx)(J,{className:`h-4 w-4 animate-spin`}),t(`assistantBackups.loading`)]});if(i)return(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--system-negative-strong)]`,children:[(0,X.jsx)(Je,{className:`h-4 w-4 shrink-0`}),i]});let ee=o.filter(e=>e.backup_type===`point_in_time`).length,A=(0,X.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-3`,children:[ee>=an&&(0,X.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:t(`assistantBackups.oldestRemovedNotice`)}),(0,X.jsx)(D,{variant:`outlined`,leftIcon:y?(0,X.jsx)(J,{className:`animate-spin`}):(0,X.jsx)(vt,{}),onClick:O,disabled:y||p!==null,className:`shrink-0`,children:t(y?`assistantBackups.creating`:`assistantBackups.createBackup`)})]});return o.length===0?(0,X.jsxs)(`div`,{className:`space-y-3`,children:[(0,X.jsx)(`div`,{className:`flex justify-end`,children:A}),(0,X.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:t(`assistantBackups.empty`)})]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`space-y-2`,children:[A,(0,X.jsx)(`div`,{className:`hidden lg:block`,children:(0,X.jsxs)(`table`,{className:`w-full table-fixed text-body-medium-lighter`,children:[(0,X.jsx)(`thead`,{children:(0,X.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] text-left text-body-small-default text-[var(--content-secondary)]`,children:[(0,X.jsx)(`th`,{className:`w-[35%] pb-2 pr-4`,children:t(`assistantBackups.columnSnapshotName`)}),(0,X.jsx)(`th`,{className:`w-[13%] pb-2 pr-4`,children:t(`assistantBackups.columnType`)}),(0,X.jsx)(`th`,{className:`w-[12%] pb-2 pr-4`,children:t(`assistantBackups.columnReady`)}),(0,X.jsx)(`th`,{className:`w-[20%] pb-2 pr-4`,children:t(`assistantBackups.columnCreated`)}),(0,X.jsx)(`th`,{className:`w-[20%] pb-2`})]})}),(0,X.jsx)(`tbody`,{children:o.map(e=>(0,X.jsxs)(`tr`,{className:`border-b border-[var(--border-base)] last:border-0`,children:[(0,X.jsx)(`td`,{className:`py-2.5 pr-4`,children:(0,X.jsxs)(`div`,{"data-reveal-row":``,className:`flex items-center gap-1`,children:[(0,X.jsx)(`code`,{className:`truncate text-body-small-default text-[var(--content-default)]`,title:e.snapshot_name,children:e.snapshot_name}),(0,X.jsx)(`button`,{type:`button`,onClick:()=>C(e.snapshot_name),"data-reveal":``,className:`shrink-0 text-[var(--content-secondary)] hover:text-[var(--content-default)]`,title:t(`assistantBackups.copySnapshotName`),children:x===e.snapshot_name?(0,X.jsx)(dt,{className:`h-3.5 w-3.5 text-green-500`}):(0,X.jsx)(ct,{className:`h-3.5 w-3.5`})})]})}),(0,X.jsx)(`td`,{className:`overflow-hidden whitespace-nowrap py-2.5 pr-4`,children:(0,X.jsx)(sn,{type:e.backup_type})}),(0,X.jsx)(`td`,{className:`overflow-hidden whitespace-nowrap py-2.5 pr-4`,children:(0,X.jsx)(h,{tone:e.ready_to_use?`positive`:`warning`,children:e.ready_to_use?t(`assistantBackups.ready`):t(`assistantBackups.pending`)})}),(0,X.jsx)(`td`,{className:`overflow-hidden whitespace-nowrap py-2.5 pr-4 text-body-medium-default text-[var(--content-default)]`,children:cn(e.created_at)}),(0,X.jsx)(`td`,{className:`py-2.5 text-right`,children:(0,X.jsx)(D,{variant:`ghost`,leftIcon:p===e.snapshot_name?(0,X.jsx)(J,{className:`animate-spin`}):(0,X.jsx)(nt,{}),onClick:()=>v(e),disabled:p!==null||!e.ready_to_use,title:e.ready_to_use?void 0:t(`assistantBackups.notReady`),children:t(`assistantBackups.restore`)})})]},e.snapshot_name))})]})}),(0,X.jsx)(`div`,{className:`flex flex-col gap-3 lg:hidden`,children:o.map(e=>(0,X.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)] p-3`,children:[(0,X.jsxs)(`div`,{className:`mb-2 flex items-center gap-1`,children:[(0,X.jsx)(`code`,{className:`truncate text-body-small-default text-[var(--content-default)]`,title:e.snapshot_name,children:e.snapshot_name}),(0,X.jsx)(`button`,{type:`button`,onClick:()=>C(e.snapshot_name),className:`shrink-0 text-[var(--content-secondary)] hover:text-[var(--content-default)]`,title:t(`assistantBackups.copySnapshotName`),children:x===e.snapshot_name?(0,X.jsx)(dt,{className:`h-3.5 w-3.5 text-green-500`}):(0,X.jsx)(ct,{className:`h-3.5 w-3.5`})})]}),(0,X.jsxs)(`div`,{className:`mb-2 flex flex-wrap items-center gap-2 text-body-medium-lighter`,children:[(0,X.jsx)(sn,{type:e.backup_type}),(0,X.jsx)(h,{tone:e.ready_to_use?`positive`:`warning`,children:e.ready_to_use?t(`assistantBackups.ready`):t(`assistantBackups.pending`)}),(0,X.jsx)(`span`,{className:`text-body-small-default text-[var(--content-secondary)]`,children:cn(e.created_at)})]}),(0,X.jsx)(D,{variant:`ghost`,leftIcon:p===e.snapshot_name?(0,X.jsx)(J,{className:`animate-spin`}):(0,X.jsx)(nt,{}),onClick:()=>v(e),disabled:p!==null||!e.ready_to_use,title:e.ready_to_use?void 0:t(`assistantBackups.notReady`),children:t(`assistantBackups.restore`)})]},e.snapshot_name))})]}),(0,X.jsx)(T,{open:_!==null,title:t(`assistantBackups.restoreTitle`),message:_?t(`assistantBackups.restoreMessage`,{name:_.snapshot_name}):``,confirmLabel:t(`assistantBackups.restore`),destructive:!0,onConfirm:E,onCancel:()=>v(null)})]})}function un({assistantId:e,maintenanceMode:t,onMaintenanceModeChange:n}){let{t:r}=K(`settings`),[i,o]=(0,Y.useState)(!1),[s,c]=(0,Y.useState)(null),l=H({platformHostedOnly:!0}),u=ne(),d=(0,Y.useCallback)(async()=>{o(!0),c(null);try{let{response:t}=await N({path:{assistant_id:e},throwOnError:!1});t?.ok?await n():(b(Error(`Enter maintenance mode returned non-ok response`),{context:`enter_maintenance_mode`}),c(r(`recoveryModeControls.enterError`)))}catch(e){b(e,{context:`enter_maintenance_mode`}),c(r(`recoveryModeControls.enterError`))}finally{o(!1)}},[e,n,r]),f=(0,Y.useCallback)(async()=>{o(!0),c(null);try{let{response:t}=await me({path:{assistant_id:e},throwOnError:!1});t?.ok?await n():(b(Error(`Exit maintenance mode returned non-ok response`),{context:`exit_maintenance_mode`}),c(r(`recoveryModeControls.exitError`)))}catch(e){b(e,{context:`exit_maintenance_mode`}),c(r(`recoveryModeControls.exitError`))}finally{o(!1)}},[e,n,r]);if(l===`gated`)return null;let p=t?.enabled===!0,m=i||l===`full`&&u;return(0,X.jsxs)(`div`,{className:`space-y-2`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between rounded-lg border border-[var(--border-base)] px-4 py-3`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,X.jsx)(ot,{className:`h-4 w-4 shrink-0 ${p?`text-[var(--system-mid-strong)]`:`text-[var(--content-disabled)]`}`}),(0,X.jsxs)(`div`,{className:`min-w-0`,children:[(0,X.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:r(`recoveryModeControls.title`)}),p?(0,X.jsx)(`p`,{className:`text-body-small-lighter text-[var(--system-mid-strong)]`,children:r(`recoveryModeControls.activeDescription`)}):(0,X.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:r(`recoveryModeControls.inactiveDescription`)})]})]}),(0,X.jsx)(`div`,{className:`ml-4 flex shrink-0 items-center gap-2`,children:l===`disabled`?null:m?(0,X.jsx)(J,{className:`h-4 w-4 animate-spin text-[var(--content-disabled)]`}):p?(0,X.jsx)(D,{variant:`outlined`,onClick:f,children:r(`recoveryModeControls.resumeAssistant`)}):(0,X.jsx)(D,{variant:`dangerOutline`,onClick:d,children:r(`recoveryModeControls.enter`)})})]}),l===`disabled`&&(0,X.jsx)(we,{children:r(p?`recoveryModeControls.loginNoticeExit`:`recoveryModeControls.loginNoticeEnter`)}),s&&(0,X.jsx)(a,{tone:`error`,children:s})]})}async function dn(e,t,n){let r=await B(e);if(!r.ok)return{ok:!1,error:r.error??t};let i=await re(e);return i.ok?{ok:!0}:{ok:!1,error:i.error??n}}function fn({assistantId:e,isLocal:t}){let{t:n}=K(`settings`),[r,i]=(0,Y.useState)(!1),[a,o]=(0,Y.useState)(!1);return(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(D,{variant:`outlined`,leftIcon:r?(0,X.jsx)(J,{className:`animate-spin`}):(0,X.jsx)(nt,{}),onClick:()=>o(!0),disabled:r,className:`shrink-0`,children:n(`restartAssistant.button`)}),(0,X.jsx)(T,{open:a,title:n(`restartAssistant.confirmTitle`),message:n(`restartAssistant.confirmMessage`),confirmLabel:n(`restartAssistant.confirmLabel`),onConfirm:async()=>{o(!1),i(!0);try{if(t&&de()&&l(e)){let t=await dn(e,n(`restartAssistant.failStop`),n(`restartAssistant.failStart`));t.ok?c.success(n(`restartAssistant.toastRestarting`)):c.error(t.error??n(`restartAssistant.toastFailed`))}else{let t=await ye(e);if(t.ok)c.success(n(`restartAssistant.toastRestarting`));else{let e=typeof t.error?.detail==`string`?t.error.detail:n(`restartAssistant.toastFailed`);c.error(e)}}}catch{c.error(n(`restartAssistant.toastFailed`))}finally{i(!1)}},onCancel:()=>o(!1)})]})}function pn(){let{t:e}=K(`settings`),t=He(),n=Te.use.user(),r=H(),i=j(n),[a,o]=(0,Y.useState)(null),[s,l]=(0,Y.useState)(!0),u=(0,Y.useRef)(!1),d=(0,Y.useCallback)(()=>{z(n?.id??null),c.success(e(`debugControlsPanel.onboardingClearedToast`)),t(E.onboarding.privacy)},[t,e,n?.id]),f=(0,Y.useCallback)(async t=>{if(!(!t&&u.current)){t||l(!0);try{let e=await p();e.ok?(u.current=!0,o(e.data)):o(null)}catch(t){b(t,{context:`fetch_assistant_for_debug_controls`}),c.error(e(`debugControlsPanel.loadFailedToast`))}finally{l(!1)}}},[e]);return(0,Y.useEffect)(()=>{f()},[f]),(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,X.jsx)(`div`,{className:`flex h-9 w-9 items-center justify-center rounded-lg bg-[var(--surface-base)]`,children:(0,X.jsx)(ot,{className:`h-5 w-5 text-[var(--content-secondary)]`})}),(0,X.jsxs)(`div`,{children:[(0,X.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`debugControlsPanel.title`)}),(0,X.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`debugControlsPanel.subtitle`)})]})]}),s?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,X.jsx)(J,{className:`h-4 w-4 animate-spin`}),e(`debugControlsPanel.loading`)]}):a?(0,X.jsxs)(`div`,{className:`space-y-4`,children:[(0,X.jsxs)(`div`,{className:`flex items-center justify-between rounded-lg border border-[var(--border-base)] px-4 py-3 dark:border-[var(--border-base)]`,children:[(0,X.jsxs)(`div`,{className:`min-w-0`,children:[(0,X.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`debugControlsPanel.restartTitle`)}),(0,X.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`debugControlsPanel.restartDescription`)})]}),(0,X.jsx)(`div`,{className:`ml-4 shrink-0`,children:(0,X.jsx)(fn,{assistantId:a.id,isLocal:a.is_local})})]}),(0,X.jsx)(un,{assistantId:a.id,maintenanceMode:a.maintenance_mode,onMaintenanceModeChange:()=>f(!0)}),i&&(0,X.jsxs)(`div`,{className:`flex items-center justify-between rounded-lg border border-[var(--border-base)] px-4 py-3 dark:border-[var(--border-base)]`,children:[(0,X.jsxs)(`div`,{className:`min-w-0`,children:[(0,X.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`debugControlsPanel.replayTitle`)}),(0,X.jsx)(`p`,{className:`text-body-small-lighter text-[var(--content-tertiary)]`,children:e(`debugControlsPanel.replayDescription`)})]}),(0,X.jsx)(`div`,{className:`ml-4 shrink-0`,children:(0,X.jsx)(D,{variant:`outlined`,leftIcon:(0,X.jsx)(_t,{}),onClick:d,children:e(`debugControlsPanel.replay`)})})]}),r===`disabled`&&(0,X.jsx)(we,{children:e(`debugControlsPanel.loginNotice`)}),r!==`disabled`&&(0,X.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)] px-4 py-3 dark:border-[var(--border-base)]`,children:[(0,X.jsxs)(`div`,{className:`mb-3 flex items-center gap-2`,children:[(0,X.jsx)(ft,{className:`h-4 w-4 text-[var(--content-secondary)]`}),(0,X.jsx)(`h3`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`debugControlsPanel.backups`)})]}),(0,X.jsx)(ln,{assistantId:a.id})]})]}):(0,X.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`debugControlsPanel.noAssistant`)})]})}function mn({text:e}){let{t}=K(`settings`),[n,r]=(0,Y.useState)(!1),i=(0,Y.useRef)(null);return(0,Y.useEffect)(()=>()=>{i.current&&clearTimeout(i.current)},[]),(0,X.jsx)(`button`,{type:`button`,onClick:()=>{u(e,{errorMessage:t(`doctorChatBlocks.copyError`),onCopied:()=>{r(!0),i.current&&clearTimeout(i.current),i.current=setTimeout(()=>{r(!1),i.current=null},1500)}})},title:t(n?`doctorChatBlocks.copyTitleCopied`:`doctorChatBlocks.copyTitle`),"aria-label":t(n?`doctorChatBlocks.copyAriaCopied`:`doctorChatBlocks.copyAria`),"data-reveal":``,className:`flex h-6 w-6 cursor-pointer items-center justify-center rounded-md bg-[var(--surface-overlay)] text-[var(--content-tertiary)] hover:text-[var(--content-secondary)]`,children:(0,X.jsxs)(`div`,{className:`relative h-3.5 w-3.5`,children:[(0,X.jsx)(dt,{className:`absolute inset-0 h-3.5 w-3.5 text-[var(--system-positive-strong)] transition-opacity duration-150 ${n?`opacity-100`:`opacity-0`}`}),(0,X.jsx)(ct,{className:`absolute inset-0 h-3.5 w-3.5 transition-opacity duration-150 ${n?`opacity-0`:`opacity-100`}`})]})})}function hn({entry:e}){let{t}=K(`settings`),[n,r]=(0,Y.useState)(!1),{toolName:i,input:a,result:o,isError:s,status:c}=e.meta,l=c===`running`,u=t(l?`doctorChatBlocks.runningStep`:s?`doctorChatBlocks.failedStep`:`doctorChatBlocks.completedStep`),d=!l&&(o!==void 0||Object.keys(a).length>0);return(0,X.jsxs)(`div`,{className:`my-1 w-full`,children:[(0,X.jsxs)(`button`,{type:`button`,onClick:()=>{d&&r(!n)},className:`flex w-full items-center gap-2 rounded-lg px-3 py-2 transition-colors ${s?`bg-[var(--system-negative-weak)]`:`bg-[var(--surface-base)]`} ${d?`cursor-pointer hover:bg-[var(--surface-hover)]`:`cursor-default`} ${n?`rounded-b-none`:``}`,children:[l?(0,X.jsx)(J,{className:`h-4 w-4 shrink-0 animate-spin text-[var(--content-disabled)]`}):s?(0,X.jsx)(Ke,{className:`h-4 w-4 shrink-0 text-[var(--system-negative-strong)]`}):(0,X.jsx)(et,{className:`h-4 w-4 shrink-0 text-[var(--system-positive-strong)]`}),(0,X.jsx)(`span`,{className:`text-body-medium-default ${s?`text-[var(--system-negative-strong)]`:`text-[var(--content-default)]`}`,children:u}),(0,X.jsx)(`span`,{className:`ml-auto flex items-center gap-1.5 text-[var(--content-tertiary)]`,children:d&&(n?(0,X.jsx)(rt,{className:`h-4 w-4`}):(0,X.jsx)(Ze,{className:`h-4 w-4`}))})]}),n&&d&&(0,X.jsxs)(`div`,{className:`rounded-b-lg border-t px-3 pb-3 ${s?`border-[var(--system-negative-weak)] bg-[var(--system-negative-weak)]`:`border-[var(--border-base)] bg-[var(--surface-base)] dark:bg-[var(--surface-lift)]`}`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-2 py-2`,children:[(0,X.jsx)(ot,{className:`h-3.5 w-3.5`}),(0,X.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:i})]}),(0,X.jsx)(`div`,{className:`border-t border-[var(--border-base)]`}),(0,X.jsxs)(`div`,{className:`mt-2.5`,children:[(0,X.jsx)(`div`,{className:`mb-1.5 text-[10px] font-semibold uppercase tracking-wider text-[var(--content-disabled)]`,children:t(`doctorChatBlocks.technicalDetails`)}),Object.entries(a).map(([e,t])=>(0,X.jsxs)(`div`,{className:`mt-0.5`,children:[(0,X.jsxs)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:[e,`:`]}),` `,(0,X.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:typeof t==`string`?t.length>200?t.slice(0,200)+`...`:t:JSON.stringify(t)})]},e))]}),o!==void 0&&(0,X.jsxs)(`div`,{className:`mt-3`,children:[(0,X.jsx)(`div`,{className:`mb-1.5 text-[10px] font-semibold uppercase tracking-wider text-[var(--content-disabled)]`,children:t(`doctorChatBlocks.output`)}),(0,X.jsx)(`div`,{className:`rounded-md border p-3 ${s?`border-[var(--system-negative-weak)] bg-[var(--system-negative-weak)]/50`:`border-[var(--border-element)] bg-[var(--surface-base)]`}`,children:(0,X.jsx)(`pre`,{className:`max-h-60 overflow-y-auto whitespace-pre-wrap break-words text-body-small-default ${s?`text-[var(--system-negative-strong)]`:`text-[var(--content-default)]`}`,children:o.length>2e3?o.slice(0,2e3)+`...`:o})})]})]})]})}function gn({entry:e,onRespond:t,disabled:n}){let{t:r}=K(`settings`),{toolName:i,description:a,input:o}=e.meta,[s,c]=(0,Y.useState)(!1),l=!!i||!!a||!!o,u=i===`exec_command`;return(0,X.jsxs)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)] p-4`,children:[(0,X.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-2`,children:[(0,X.jsx)(ut,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-disabled)]`}),(0,X.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:r(`doctorChatBlocks.confirmationRequired`)})]}),(0,X.jsxs)(`div`,{className:`flex shrink-0 gap-2`,children:[(0,X.jsx)(`button`,{type:`button`,disabled:n,onClick:()=>t(`approve`),className:`flex items-center gap-1.5 rounded-md bg-[var(--system-positive-strong)] px-3 py-1.5 text-body-small-default text-white transition-colors hover:bg-[var(--system-positive-strong)] disabled:cursor-not-allowed disabled:opacity-50`,children:r(`doctorChatBlocks.allowOnce`)}),u&&(0,X.jsx)(`button`,{type:`button`,disabled:n,onClick:()=>t(`approve all exec`),className:`flex items-center gap-1.5 rounded-md border border-[var(--system-positive-strong)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-small-default text-[var(--system-positive-strong)] transition-colors hover:bg-[var(--system-positive-weak)] disabled:cursor-not-allowed disabled:opacity-50`,children:r(`doctorChatBlocks.alwaysAllow`)}),(0,X.jsx)(`button`,{type:`button`,disabled:n,onClick:()=>t(`deny`),className:`flex items-center gap-1.5 rounded-md border border-[var(--system-negative-strong)] bg-[var(--surface-lift)] px-3 py-1.5 text-body-small-default text-[var(--system-negative-strong)] transition-colors hover:bg-[var(--system-negative-weak)] disabled:cursor-not-allowed disabled:opacity-50`,children:r(`doctorChatBlocks.deny`)})]})]}),l&&(0,X.jsxs)(`div`,{className:`mt-3`,children:[(0,X.jsxs)(`button`,{type:`button`,onClick:()=>c(!s),className:`flex items-center gap-1 text-body-small-default text-[var(--content-tertiary)] transition-colors hover:text-[var(--content-default)]`,children:[(0,X.jsx)(it,{className:`h-3 w-3 transition-transform ${s?`rotate-90`:``}`}),r(s?`doctorChatBlocks.hideDetails`:`doctorChatBlocks.showDetails`)]}),s&&(0,X.jsxs)(`div`,{className:`mt-2 space-y-1.5`,children:[i&&(0,X.jsxs)(`div`,{className:`flex items-center gap-1.5 text-body-small-default text-[var(--content-tertiary)]`,children:[(0,X.jsx)(`span`,{children:r(`doctorChatBlocks.toolLabel`)}),(0,X.jsx)(`code`,{className:`rounded bg-[var(--surface-base)] px-1.5 py-0.5 font-mono text-[var(--content-secondary)] dark:bg-[var(--surface-lift)] dark:text-[var(--content-default)]`,children:i})]}),a&&(0,X.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:a}),o&&Object.keys(o).length>0&&(0,X.jsx)(`pre`,{className:`overflow-x-auto whitespace-pre-wrap rounded bg-[var(--surface-base)] p-2 text-label-medium-default text-[var(--content-secondary)] dark:bg-[var(--surface-lift)] dark:text-[var(--content-default)]`,children:JSON.stringify(o,null,2)})]})]})]})}function _n({entry:e,onRespond:t,disabled:n}){let{t:r}=K(`settings`),{toolName:i}=e.meta;return(0,X.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)] p-4`,children:(0,X.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-2`,children:[(0,X.jsx)(ft,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-disabled)]`}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,X.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:r(`doctorChatBlocks.backupPromptTitle`)}),(0,X.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:(0,X.jsx)(Ne,{ns:`settings`,i18nKey:`doctorChatBlocks.backupPromptBody`,values:{toolName:i},components:{toolCode:(0,X.jsx)(`code`,{className:`rounded bg-[var(--surface-base)] px-1 py-0.5 font-mono text-[var(--content-secondary)]`})}})})]})]}),(0,X.jsxs)(`div`,{className:`flex shrink-0 gap-2`,children:[(0,X.jsx)(D,{variant:`primary`,disabled:n,onClick:()=>t(`backup`),children:r(`doctorChatBlocks.backUp`)}),(0,X.jsx)(D,{variant:`outlined`,disabled:n,onClick:()=>t(`skip_backup`),children:r(`doctorChatBlocks.skip`)})]})]})})}function vn({onOpenFeedback:e}){let{t}=K(`settings`);return(0,X.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)] p-4`,children:(0,X.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-2`,children:[(0,X.jsx)(qe,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-disabled)]`}),(0,X.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,X.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:t(`doctorChatBlocks.feedbackTitle`)}),(0,X.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:t(`doctorChatBlocks.feedbackBody`)})]})]}),(0,X.jsx)(`div`,{className:`flex shrink-0`,children:(0,X.jsx)(D,{variant:`outlined`,onClick:e,leftIcon:(0,X.jsx)(qe,{}),children:t(`doctorChatBlocks.shareFeedback`)})})]})})}function yn({question:e,answer:t,onRespond:n,disabled:r}){let{t:i}=K(`settings`);return(0,X.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)] p-4`,children:(0,X.jsxs)(`div`,{className:`flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between`,children:[(0,X.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-start gap-2`,children:[(0,X.jsx)(et,{className:`mt-0.5 h-4 w-4 shrink-0 text-[var(--content-disabled)]`}),(0,X.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e})]}),t?(0,X.jsx)(`span`,{className:`flex shrink-0 items-center gap-1.5 text-body-small-default text-[var(--content-tertiary)]`,children:t===`resolved`?(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(bt,{className:`h-4 w-4 text-[var(--system-positive-strong)]`}),i(`doctorChatBlocks.gladSolved`)]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsx)(yt,{className:`h-4 w-4`}),i(`doctorChatBlocks.notSolved`)]})}):(0,X.jsxs)(`div`,{className:`flex shrink-0 gap-2`,children:[(0,X.jsx)(D,{variant:`outlined`,onClick:()=>n(!0),disabled:r,iconOnly:(0,X.jsx)(bt,{}),"aria-label":i(`doctorChatBlocks.solvedAria`),title:i(`doctorChatBlocks.solvedAria`)}),(0,X.jsx)(D,{variant:`outlined`,onClick:()=>n(!1),disabled:r,iconOnly:(0,X.jsx)(yt,{}),"aria-label":i(`doctorChatBlocks.notSolvedAria`),title:i(`doctorChatBlocks.notSolvedAria`)})]})]})})}function bn({entry:e}){return(0,X.jsxs)(`div`,{"data-reveal-row":``,className:`flex items-start justify-end gap-1.5`,children:[(0,X.jsx)(`div`,{className:`flex shrink-0 items-center self-center`,children:(0,X.jsx)(mn,{text:e.content})}),(0,X.jsx)(`div`,{className:`max-w-[80%] whitespace-pre-wrap rounded-lg bg-[var(--surface-lift)] px-4 py-3 text-chat text-[var(--content-default)]`,children:e.content})]})}var xn=({href:e,children:t})=>(0,X.jsx)(ve,{href:e,className:_,children:t});function Sn({entry:e}){return(0,X.jsxs)(`div`,{"data-reveal-row":``,className:`flex items-start justify-start gap-1.5`,children:[(0,X.jsx)(`div`,{className:`w-full text-chat text-[var(--content-default)]`,children:(0,X.jsx)(ue,{content:e.content,linkComponent:xn})}),(0,X.jsx)(`div`,{className:`flex shrink-0 items-center pt-0.5`,children:(0,X.jsx)(mn,{text:e.content})})]})}function Cn({entry:e}){return(0,X.jsxs)(`div`,{className:`flex items-start gap-2 text-body-small-default text-[var(--system-negative-strong)]`,children:[(0,X.jsx)(Je,{className:`mt-0.5 h-3.5 w-3.5 shrink-0`}),(0,X.jsx)(`span`,{children:e.content})]})}function wn({entry:e}){return(0,X.jsx)(`div`,{className:`text-center text-body-small-default text-[var(--content-disabled)]`,children:e.content})}var Tn=`0 0 724 691`,En=`#DB4B77`,Dn=`#F2F2F2`,On=`#1A1A1A`,kn=`M707.996 341.488C683.572 371.035 643.096 379.081 606.995 383.544C585.458 386.205 563.817 387.947 542.142 388.871C531.271 389.34 520.394 389.578 509.517 389.597C509.127 389.597 508.73 389.604 508.34 389.604C539.98 409.658 571.958 431.456 594.664 461.683C615.354 489.223 627.369 524.084 618.659 558.345C614.714 573.858 606.844 588.374 594.889 599.167C581.012 611.696 562.615 618.079 543.959 615.227C524.928 612.31 508.592 601.272 493.122 590.513C477.163 579.416 461.759 567.586 446.956 554.985C432.226 542.449 418.071 529.273 404.782 515.212C401.597 511.845 398.478 508.439 395.411 504.987C395.332 506.221 395.246 507.449 395.16 508.67C393.64 530.804 390.508 552.813 385.876 574.505C381.812 593.503 376.631 612.297 370.221 630.642C364.769 646.24 357.917 662.018 345.916 673.761C335.032 684.415 319.932 690.693 304.614 689.954C288.622 689.175 276.49 679.894 268.619 666.374C260.055 651.654 254.761 634.51 250.294 618.172C245.424 600.355 242.173 582.096 240.561 563.692C238.882 544.456 238.677 524.613 240.752 505.093C240.164 505.898 239.57 506.703 238.955 507.509C233.457 514.704 227.14 521.378 220.716 527.755C208.154 540.218 194.349 551.433 179.54 561.131C166.422 569.719 152.519 577.132 138.073 583.238C122.86 589.674 106.333 595.787 89.7861 597.351C74.8317 598.764 59.4075 595.437 49.4026 583.548C40.8116 573.336 37.4353 559.13 38.4529 546.02C39.6691 530.33 47.6584 515.879 57.1277 503.647C68.289 489.237 81.7962 476.568 94.8805 463.941C112.63 446.817 130.797 429.759 149.769 413.758C133.652 415.052 117.487 415.257 101.562 414.385C83.9244 413.414 65.996 411.269 49.079 406.015C34.3755 401.454 19.6257 393.756 10.2747 381.167C2.05413 370.11 -2.30039 355.053 1.24128 341.481C5.30564 325.922 19.0643 317.597 32.7163 311.115C64.555 296.005 99.8366 290.097 134.834 288.763C152.538 288.09 170.274 288.71 187.945 289.879C189.611 289.984 191.276 290.097 192.948 290.209C176.744 285.403 161.776 275.713 148.831 265.151C134.458 253.42 121.869 239.663 110.318 225.193C99.3547 211.456 88.8807 197.112 79.3448 182.351C69.558 167.188 61.3172 149.748 63.1485 131.237C66.4331 98.0067 102.368 85.2731 131.491 90.3755C149.836 93.5902 166.349 102.892 181.588 113.209C196.325 123.19 210.724 133.792 224.615 144.922C235.558 153.695 246.224 162.923 256.142 172.858C254.979 152.288 253.539 131.614 254.438 111.017C255.224 92.9499 258.066 74.7764 265.348 58.1084C272.082 42.6945 282.748 29.3267 296.143 19.1613C309.34 9.15344 326.309 1.12634 343.035 0.0771651C360.441 -1.01881 374.92 9.70203 384.813 23.1751C403.157 48.167 404.803 82.1373 400.666 111.764C397.904 131.527 392.564 150.843 388.461 170.35C386.386 180.225 384.575 190.166 383.524 200.207C383.445 200.973 383.379 201.738 383.313 202.511C384.529 200.299 385.863 198.121 387.284 195.949C392.887 187.394 399.146 179.149 405.674 171.274C418.838 155.398 433.225 140.565 448.688 126.907C474.956 103.711 506.371 78.8764 542.863 76.8298C551.982 76.3212 561.479 77.3051 569.778 81.319C576.968 84.7978 582.638 90.5806 586.583 97.4655C594.909 112.028 596.74 129.666 594.387 146.05C589.213 182.06 565.7 211.211 538.798 234.164C524.716 246.184 509.576 256.879 494.542 267.665C492.553 269.091 490.564 270.517 488.575 271.942C500.847 267.367 513.29 263.228 525.807 259.459C547.515 252.917 569.593 247.537 592.101 244.567C611.965 241.946 632.332 241.095 652.289 243.26C667.541 244.916 683.03 248.686 696.346 256.528C710.032 264.595 720.156 277.487 722.555 293.423C725.144 310.667 718.966 328.22 707.996 341.488Z`,An=[{d:`M320.715 343.724C320.838 359.862 316.431 375.655 310.169 390.408C310.138 390.482 310.107 390.555 310.07 390.629C307.833 395.777 305.299 400.893 302.372 405.757C296.079 416.243 287.955 425.559 277.045 431.507C262.264 439.554 242.097 440.564 229.523 427.806C219.821 417.961 217.343 402.876 219.161 389.644C221.017 376.135 227.365 363.661 231.267 350.694C233.246 344.106 234.793 337.265 234.398 330.338C233.998 323.381 230.971 317.932 226.94 312.433C222.909 306.929 220.468 301.067 221.042 294.11C221.578 287.632 224.148 281.58 228.352 276.63C238.627 264.543 255.953 264.131 269.612 270.165C277.057 273.453 283.597 278.464 289.644 283.858C293.749 287.515 297.737 291.333 301.41 295.427C302.884 297.065 304.301 298.746 305.663 300.476C315.513 313.012 320.592 327.789 320.715 343.724Z`,fill:Dn},{d:`M305.663 300.476C304.301 298.746 302.884 297.065 301.41 295.427C297.737 291.333 293.749 287.515 289.644 283.858C283.597 278.464 277.057 273.453 269.612 270.165C255.953 264.131 238.627 264.543 228.352 276.63C224.148 281.58 221.578 287.632 221.042 294.11C220.468 301.067 222.909 306.929 226.94 312.433C230.971 317.932 233.998 323.381 234.398 330.338C234.793 337.265 233.246 344.106 231.267 350.694C227.365 363.661 221.017 376.135 219.161 389.644C217.343 402.876 219.821 417.961 229.523 427.806C242.097 440.564 262.264 439.554 277.045 431.507C287.955 425.559 296.079 416.243 302.372 405.757C305.299 400.893 307.833 395.777 310.07 390.629C310.107 390.555 310.138 390.482 310.169 390.408C316.431 375.655 320.838 359.862 320.715 343.724C320.592 327.789 315.513 313.012 305.663 300.476ZM304.524 387.107C298.767 400.413 291.229 413.86 279.185 422.468C278.809 422.733 278.432 422.997 278.05 423.256C277.687 423.502 277.317 423.743 276.941 423.977C265.698 431.107 250.831 434.142 238.867 426.926C227.846 420.282 224.518 406.305 225.233 394.268C225.96 382.034 231.477 370.458 235.428 359.025C239.323 347.739 242.855 335.277 239.921 323.338C238.522 317.673 235.458 313.117 232.087 308.456C228.315 303.235 226.558 297.749 228.037 291.302C231.212 277.479 244.84 270.743 258.221 273.348C267.843 275.226 276.219 280.681 283.665 287.134C283.721 287.183 283.782 287.232 283.837 287.282C287.314 290.311 290.587 293.549 293.681 296.733C305.238 308.622 312.973 322.624 314.027 339.383C315.057 355.743 310.878 372.139 304.524 387.107Z`,fill:Dn},{d:`M320.716 343.724C320.839 359.862 316.432 375.655 310.17 390.408C310.139 390.481 310.108 390.555 310.071 390.629C307.833 395.777 305.3 400.893 302.372 405.757C299.642 409.766 296.597 413.571 293.145 417.043C293.022 417.13 292.893 417.21 292.769 417.29C288.011 420.43 282.574 422.85 276.941 423.976C270.58 425.251 263.972 424.882 257.803 422.031C244.686 415.978 243.435 402.371 248.662 390.796C254.745 377.97 263.658 365.853 265.575 351.691C266.647 343.699 265.051 336.243 262.672 328.602C260.465 321.491 257.956 314.225 258.197 306.726C258.548 295.587 266.604 288.944 278.094 287.558C279.912 287.331 281.779 287.189 283.666 287.134C286.643 287.029 289.669 287.14 292.664 287.478C293.028 287.78 293.379 288.082 293.737 288.39C296.363 290.662 298.945 292.995 301.411 295.427C302.884 297.065 304.302 298.746 305.664 300.476C315.513 313.012 320.592 327.789 320.716 343.724Z`,fill:On},{d:`M449.963 343.724C450.086 359.862 445.679 375.655 439.417 390.408C439.386 390.482 439.355 390.555 439.318 390.629C437.081 395.777 434.548 400.893 431.62 405.757C425.327 416.243 417.203 425.559 406.293 431.507C391.512 439.554 371.345 440.564 358.771 427.806C349.069 417.961 346.591 402.876 348.409 389.644C350.265 376.135 356.613 363.661 360.515 350.694C362.493 344.106 364.041 337.265 363.646 330.338C363.245 323.381 360.219 317.932 356.188 312.433C352.157 306.929 349.716 301.067 350.289 294.11C350.826 287.632 353.396 281.58 357.599 276.63C367.874 264.543 385.201 264.131 398.859 270.165C406.305 273.453 412.845 278.464 418.891 283.858C422.996 287.515 426.985 291.333 430.658 295.427C432.131 297.065 433.549 298.746 434.911 300.476C444.761 313.012 449.84 327.789 449.963 343.724Z`,fill:Dn},{d:`M434.911 300.476C433.549 298.746 432.131 297.065 430.658 295.427C426.985 291.333 422.996 287.515 418.891 283.858C412.845 278.464 406.305 273.453 398.859 270.165C385.201 264.131 367.874 264.543 357.599 276.63C353.396 281.58 350.826 287.632 350.289 294.11C349.716 301.067 352.157 306.929 356.188 312.433C360.219 317.932 363.245 323.381 363.646 330.338C364.041 337.265 362.493 344.106 360.515 350.694C356.613 363.661 350.265 376.135 348.409 389.644C346.591 402.876 349.069 417.961 358.771 427.806C371.345 440.564 391.512 439.554 406.293 431.507C417.203 425.559 425.327 416.243 431.62 405.757C434.548 400.893 437.081 395.777 439.318 390.629C439.355 390.555 439.386 390.482 439.417 390.408C445.679 375.655 450.086 359.862 449.963 343.724C449.84 327.789 444.761 313.012 434.911 300.476ZM433.771 387.107C428.014 400.413 420.476 413.86 408.432 422.468C408.056 422.733 407.68 422.997 407.298 423.256C406.935 423.502 406.565 423.743 406.189 423.977C394.946 431.107 380.079 434.142 368.115 426.926C357.094 420.282 353.766 406.305 354.481 394.268C355.208 382.034 360.724 370.458 364.675 359.025C368.571 347.739 372.103 335.277 369.169 323.338C367.77 317.673 364.706 313.117 361.335 308.456C357.562 303.235 355.806 297.749 357.285 291.302C360.46 277.479 374.087 270.743 387.469 273.348C397.09 275.226 405.467 280.681 412.913 287.134C412.968 287.183 413.03 287.232 413.085 287.282C416.562 290.311 419.835 293.549 422.929 296.733C434.486 308.622 442.221 322.624 443.275 339.383C444.305 355.743 440.125 372.139 433.771 387.107Z`,fill:Dn},{d:`M449.964 343.724C450.087 359.862 445.68 375.655 439.418 390.408C439.387 390.481 439.356 390.555 439.319 390.629C437.081 395.777 434.548 400.893 431.621 405.757C428.89 409.766 425.845 413.571 422.393 417.043C422.27 417.13 422.141 417.21 422.017 417.29C417.259 420.43 411.823 422.85 406.189 423.976C399.828 425.251 393.221 424.882 387.051 422.031C373.934 415.978 372.683 402.371 377.91 390.796C383.993 377.97 392.906 365.853 394.823 351.691C395.896 343.699 394.299 336.243 391.92 328.602C389.713 321.491 387.205 314.225 387.445 306.726C387.797 295.587 395.852 288.944 407.342 287.558C409.16 287.331 411.028 287.189 412.914 287.134C415.891 287.029 418.917 287.14 421.913 287.478C422.276 287.78 422.628 288.082 422.985 288.39C425.611 290.662 428.193 292.995 430.659 295.427C432.132 297.065 433.55 298.746 434.912 300.476C444.762 313.012 449.841 327.789 449.964 343.724Z`,fill:On}];function jn({className:e}){return(0,X.jsxs)(`svg`,{viewBox:Tn,xmlns:`http://www.w3.org/2000/svg`,className:e,"aria-hidden":`true`,children:[(0,X.jsx)(`path`,{d:kn,fill:En}),An.map((e,t)=>(0,X.jsx)(`path`,{d:e.d,fill:e.fill},t)),(0,X.jsxs)(`g`,{transform:`translate(370 510) scale(1.37) translate(-370 -510)`,children:[(0,X.jsx)(`path`,{d:`M 230 440 Q 210 560 320 585 Q 430 610 500 540`,stroke:`#1F1F23`,strokeWidth:`22`,strokeLinecap:`round`,fill:`none`}),(0,X.jsx)(`circle`,{cx:`230`,cy:`435`,r:`16`,fill:`#1F1F23`}),(0,X.jsx)(`circle`,{cx:`510`,cy:`525`,r:`58`,fill:`#E4E4E7`,stroke:`#1F1F23`,strokeWidth:`10`}),(0,X.jsx)(`circle`,{cx:`510`,cy:`525`,r:`34`,fill:`#52525B`}),(0,X.jsx)(`circle`,{cx:`500`,cy:`515`,r:`10`,fill:`#A1A1AA`,opacity:`0.55`})]})]})}var Mn=`Did the Doctor solve your problem?`;function Nn(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:{}}function Pn(e){for(let t=e.length-1;t>=0;--t)if(e[t]?.kind===`user`)return t;return-1}function Fn(e){return e.slice(Pn(e)+1).some(e=>e.kind===`feedback_prompt`)}function In(e){let t=Pn(e)+1,n=[],r=[];return e.forEach((e,i)=>{if(i>=t&&e.kind===`user_outcome_prompt`){r.push(e);return}n.push(e)}),{transcript:n,trailingPrompts:r}}var Ln=/^\d+-\d+$/;function Rn(e){let t=e.reason??e.classification;return t===`bug_report`||t===`feature_request`||t===`other`?t:void 0}function zn(e){return typeof e==`string`&&Ln.test(e)}function Bn(e){return e.map(e=>e.source_event_id).filter(zn)}function Vn(e){for(let t=e.length-1;t>=0;--t){let n=e[t]?.source_event_id;if(zn(n))return n}return null}function Hn(e){let t=[];for(let n of e){let e=Date.parse(n.occurred_at),r=Nn(n.metadata);switch(n.kind){case`user`:t.push({id:n.id,kind:`user`,content:n.content,timestamp:e});break;case`assistant`:t.push({id:n.id,kind:`assistant`,content:n.content,timestamp:e});break;case`tool_call`:{let i=typeof r.toolName==`string`?r.toolName:n.content;t.push({id:n.id,kind:`tool_call`,content:i,timestamp:e,meta:{toolName:i,input:r.input??{},toolCallId:typeof r.id==`string`?r.id:n.id,status:`running`}});break}case`tool_result`:{let e=r.toolCallId,i=r.isError===!0,a=t.findIndex(t=>t.kind===`tool_call`&&t.meta.toolCallId===e);if(a===-1)break;let o=t[a];if(o.kind!==`tool_call`)break;t[a]={...o,meta:{...o.meta,result:n.content,isError:i,status:i?`error`:`completed`}};break}case`approval`:{let i=typeof r.toolName==`string`?r.toolName:n.content;t.push({id:n.id,kind:`approval`,content:i,timestamp:e,meta:{toolName:i,input:r.input??{},toolCallId:typeof r.id==`string`?r.id:n.id,description:typeof r.description==`string`?r.description:``}});break}case`status`:if(n.content===`completed`)t.push({id:n.id,kind:`status`,content:`Session completed`,timestamp:e});else if(n.content===`error`)t.push({id:n.id,kind:`status`,content:`Session ended with error`,timestamp:e});else if(n.content===`feedback_prompt`){let i=typeof r.summary==`string`?r.summary.trim():``,a=Rn(r);t.push({id:n.id,kind:`feedback_prompt`,content:i||`Share feedback`,...a?{meta:{reason:a}}:{},timestamp:e})}else n.content===`user_outcome_prompt`&&t.push({id:n.id,kind:`user_outcome_prompt`,content:Mn,timestamp:e});break;case`error`:t.push({id:n.id,kind:`error`,content:n.content,timestamp:e});break;default:break}}return t}function Un(e){switch(e){case`active`:return`active`;case`completed`:return`completed`;case`error`:return`error`}}function Wn(e,t){return t!==`resolved`&&t!==`not_resolved`?e:e.map(e=>e.kind===`user_outcome_prompt`?{...e,meta:{...e.meta,answer:t}}:e)}function Gn(e){for(let t=e.length-1;t>=0;--t){let n=e[t];if(n&&!(n.kind===`status`||n.kind===`feedback_prompt`||n.kind===`user_outcome_prompt`))return n.kind===`approval`}return!1}function Kn(e){for(let t=e.length-1;t>=0;--t){let n=e[t];if(n&&!(n.kind===`status`||n.kind===`feedback_prompt`||n.kind===`user_outcome_prompt`))return n.kind===`backup_prompt`}return!1}function qn(e){let t=[];for(let n of e)switch(n.kind){case`user`:t.push(`User: ${n.content}`);break;case`assistant`:t.push(`Doctor: ${n.content}`);break;case`feedback_prompt`:t.push(`Feedback Prompt: ${n.content}`);break;case`user_outcome_prompt`:t.push(`User Outcome Prompt: ${n.content}${n.meta?.answer?` (answered: ${n.meta.answer===`resolved`?`Yes`:`No`})`:``}`);break;case`tool_call`:{let{toolName:e,input:r,result:i,isError:a}=n.meta;t.push(`Tool Call: ${e}`),Object.keys(r).length>0&&t.push(` Input: ${JSON.stringify(r,null,2)}`),i!==void 0&&t.push(` ${a?`Error`:`Output`}: ${i}`);break}case`approval`:{let{toolName:e,description:r,input:i}=n.meta;t.push(`Approval Required: ${e}${r?` — ${r}`:``}`),Object.keys(i).length>0&&t.push(` Input: ${JSON.stringify(i,null,2)}`);break}case`backup_prompt`:t.push(`Backup Prompt: ${n.meta.toolName}`);break;case`error`:t.push(`Error: ${n.content}`);break;case`status`:t.push(`--- ${n.content} ---`);break}return t.join(`
3
-
4
- `)}function Jn(e){return e[0]??null}var Q=xe(Pe()((e,t)=>({entries:[],inputValue:``,thinking:!1,sessionId:null,sessionStatus:`idle`,pendingApproval:!1,pendingBackup:!1,historyDismissed:!1,streamingEntryId:null,entryCounter:0,lastAssistantId:null,latestReplayableSourceEventId:null,processedSourceEventIds:new Set,nextId:()=>{let n=t().entryCounter+1;return e({entryCounter:n}),`entry-${n}`},appendEntry:n=>{let r=t().nextId();e(e=>({entries:[...e.entries,{...n,id:r,timestamp:Date.now()}]}))},updateEntries:t=>{e(e=>({entries:t(e.entries)}))},teardown:()=>{e({sessionId:null,sessionStatus:`completed`,pendingApproval:!1,pendingBackup:!1,thinking:!1,streamingEntryId:null,latestReplayableSourceEventId:null,processedSourceEventIds:new Set})},reset:()=>{e({entries:[],inputValue:``,thinking:!1,sessionId:null,sessionStatus:`idle`,pendingApproval:!1,pendingBackup:!1,historyDismissed:!1,streamingEntryId:null,entryCounter:0,latestReplayableSourceEventId:null,processedSourceEventIds:new Set})},resetForNewSession:()=>{e({entries:[],inputValue:``,thinking:!1,sessionId:null,sessionStatus:`idle`,pendingApproval:!1,pendingBackup:!1,historyDismissed:!0,streamingEntryId:null,entryCounter:0,latestReplayableSourceEventId:null,processedSourceEventIds:new Set})},setInputValue:t=>e({inputValue:t}),setThinking:t=>e({thinking:t}),setPendingApproval:t=>e({pendingApproval:t}),setPendingBackup:t=>e({pendingBackup:t}),setSessionId:t=>e({sessionId:t}),setSessionStatus:t=>e({sessionStatus:t}),setHistoryDismissed:t=>e({historyDismissed:t}),setStreamingEntryId:t=>e({streamingEntryId:t}),setEntries:t=>e({entries:t}),resetReplayState:()=>{e({latestReplayableSourceEventId:null,processedSourceEventIds:new Set})},seedReplayState:(t,n)=>{e({latestReplayableSourceEventId:n,processedSourceEventIds:new Set(t)})},recordReplayableSourceEventId:n=>{let r=t().processedSourceEventIds;return r.has(n)?!1:(e({latestReplayableSourceEventId:n,processedSourceEventIds:new Set(r).add(n)}),!0)}})));function Yn({onShareFeedback:e,onCopySession:t,defaultOpen:n}){let{t:r}=K(`settings`),i=r(`doctorPanel.sessionMenu`);return!e&&!t?null:(0,X.jsxs)(R.Root,{defaultOpen:n,children:[(0,X.jsx)(R.Trigger,{asChild:!0,children:(0,X.jsx)(D,{variant:`ghost`,size:`regular`,expandOnMobile:!1,iconOnly:(0,X.jsx)(pt,{}),"aria-label":i})}),(0,X.jsxs)(R.Content,{title:i,align:`end`,children:[e?(0,X.jsx)(R.Item,{icon:qe,label:r(`doctorPanel.shareFeedback`),onSelect:e}):null,t?(0,X.jsx)(R.Item,{icon:$e,label:r(`doctorPanel.copySession`),onSelect:t}):null]})]})}var Xn=`Hi! I'm the Doctor. State the nature of the issue you're experiencing with your assistant and I'll help diagnose and fix it.`,Zn=new Set([`approve`,`approve all exec`,`approve all future exec commands`,`approve_all_exec`,`deny`]);function Qn(e,t){I({path:{assistant_id:e,session_id:t},throwOnError:!1}).catch(e=>b(e,{context:`doctor_cleanup_destroy`})),me({path:{assistant_id:e},throwOnError:!1}).catch(e=>b(e,{context:`doctor_cleanup_maintenance_exit`}))}var $={source_event_id:G().nullable().optional()},$n=Fe(`type`,[U({...$,type:W(`message`),content:G()}),U({...$,type:W(`message_delta`),content:G()}),U({...$,type:W(`tool_call`),toolName:G(),input:je(G(),Le()),id:G()}),U({...$,type:W(`tool_result`),toolCallId:G(),content:G(),isError:Ae()}),U({...$,type:W(`approval_required`),toolName:G(),input:je(G(),Le()),id:G(),description:G()}),U({...$,type:W(`backup_prompt`),toolName:G()}),U({...$,type:W(`feedback_prompt`),summary:G().optional(),reason:Be([`bug_report`,`feature_request`,`other`]).optional(),classification:Be([`bug_report`,`feature_request`,`other`]).optional()}),U({...$,type:W(`user_outcome_prompt`)}),U({...$,type:W(`status`),status:Ie([W(`active`),W(`completed`),W(`error`)])}),U({...$,type:W(`error`),message:G()})]);function er(e){try{let t=typeof e==`string`?JSON.parse(e):e,n=$n.safeParse(t);return n.success?n.data:null}catch{return null}}function tr(e,t){e.setThinking(!1);let n=e.getStreamingEntryId();if(n)e.updateEntries(e=>e.map(e=>e.id===n?{...e,content:e.content+t.content}:e));else{let n=e.nextId();e.setStreamingEntryId(n),e.updateEntries(e=>[...e,{id:n,kind:`assistant`,content:t.content,timestamp:Date.now()}])}}function nr(e){e.setThinking(!1),e.setStreamingEntryId(null)}function rr(e,t){e.setThinking(!1),e.setStreamingEntryId(null),e.appendEntry({kind:`tool_call`,content:t.toolName,meta:{toolName:t.toolName,input:t.input,toolCallId:t.id,status:`running`}})}function ir(e,t){e.updateEntries(e=>{let n=e.findIndex(e=>e.kind===`tool_call`&&e.meta.toolCallId===t.toolCallId);if(n===-1)return e;let r=e[n];if(r.kind!==`tool_call`)return e;let i=[...e];return i[n]={...r,meta:{...r.meta,result:t.content,isError:t.isError,status:t.isError?`error`:`completed`}},i})}function ar(e,t){e.setThinking(!1),e.setPendingApproval(!0),e.appendEntry({kind:`approval`,content:t.toolName,meta:{toolName:t.toolName,input:t.input,toolCallId:t.id,description:t.description}})}function or(e,t){e.setThinking(!1),e.setPendingBackup(!0),e.appendEntry({kind:`backup_prompt`,content:t.toolName,meta:{toolName:t.toolName}})}function sr(e,t){let n=t.summary?.trim(),r=t.reason??t.classification;if(Fn(e.getEntries())){(n||r)&&e.updateEntries(e=>e.map((t,i)=>t.kind===`feedback_prompt`&&!e.slice(i+1).some(e=>e.kind===`feedback_prompt`)?{...t,...n?{content:n}:{},...r?{meta:{...t.meta,reason:r}}:{}}:t));return}e.appendEntry({kind:`feedback_prompt`,content:n||`Share feedback`,...r?{meta:{reason:r}}:{}})}function cr(e){e.setThinking(!0),e.appendEntry({kind:`user_outcome_prompt`,content:Mn})}function lr(e,t){return t.status===`completed`||t.status===`error`?(e.setThinking(!1),e.setSessionStatus(t.status),e.appendEntry({kind:`status`,content:t.status===`completed`?`Session completed`:`Session ended with error`}),!0):(e.setSessionStatus(t.status),!1)}function ur(e,t){e.setThinking(!1),e.setPendingApproval(!1),e.setPendingBackup(!1),e.setStreamingEntryId(null),e.appendEntry({kind:`error`,content:t.message})}function dr(e){return e}var fr=new Set([404,410]),pr=`replay_gap`,mr=5,hr=500,gr=5e3,_r=45e3;function vr(e){let t=hr*2**e,n=Math.floor(Math.random()*250);return Math.min(t,gr)+n}function yr(e,t){return new Promise(n=>{if(t.aborted){n();return}let r=setTimeout(n,e);t.addEventListener(`abort`,()=>{clearTimeout(r),n()},{once:!0})})}async function br(e){return e.status===409?(await e.clone().json().catch(()=>null))?.code===pr:!1}function xr(e){if(!e||typeof e!=`object`||Array.isArray(e))return null;let t=e.id;return typeof t==`string`&&t.length>0?t:null}function Sr(e,t){let n=Hn(t),r=Un(e),i=Q.getState();return i.setEntries(n),i.setSessionStatus(r),i.setPendingApproval(r===`active`&&Gn(n)),i.setPendingBackup(r===`active`&&Kn(n)),i.seedReplayState(Bn(t),Vn(t)),r}async function Cr(e,t){let n=await x({path:{assistant_id:e,doctor_session_id:t},throwOnError:!1});return!n.response?.ok||!n.data?null:Sr(n.data.status,n.data.messages??[])===`active`?(Q.getState().setSessionId(t),`active`):`terminal`}function wr(){let e=(0,Y.useRef)(null);return{connectSSE:(0,Y.useCallback)((t,n)=>{e.current?.abort();let r=new AbortController;e.current=r;let i=!1,a=()=>e.current===r,o={getEntries:()=>Q.getState().entries,updateEntries:e=>Q.getState().updateEntries(e),setThinking:e=>Q.getState().setThinking(e),setPendingApproval:e=>Q.getState().setPendingApproval(e),setPendingBackup:e=>Q.getState().setPendingBackup(e),setSessionStatus:e=>Q.getState().setSessionStatus(e),appendEntry:e=>Q.getState().appendEntry(e),nextId:()=>Q.getState().nextId(),getStreamingEntryId:()=>Q.getState().streamingEntryId,setStreamingEntryId:e=>Q.getState().setStreamingEntryId(e)},s=t=>{if(!a())return;e.current=null;let n=Q.getState();n.setThinking(!1),n.setPendingApproval(!1),n.setPendingBackup(!1),n.setStreamingEntryId(null),n.setSessionStatus(`error`),n.appendEntry({kind:`error`,content:t})};function c(e){if(!a())return;let t=e.source_event_id;if(!(zn(t)&&!Q.getState().recordReplayableSourceEventId(t)))switch(e.type){case`message_delta`:tr(o,e);break;case`message`:nr(o);break;case`tool_call`:rr(o,e);break;case`tool_result`:ir(o,e);break;case`approval_required`:ar(o,e);break;case`backup_prompt`:or(o,e);break;case`feedback_prompt`:sr(o,e);break;case`user_outcome_prompt`:cr(o);break;case`status`:lr(o,e)&&(i=!0);break;case`error`:ur(o,e);break}}(async()=>{let e=0,o=0;for(;!r.signal.aborted&&a();){let l=new AbortController,u=()=>{l.abort()};r.signal.addEventListener(`abort`,u,{once:!0});let d=P({idleTimeoutMs:_r,assistantId:t});d.resetCounters();let f=null,p=!1,m=!1,h=null,g=!1,_=null;try{let i=Q.getState().latestReplayableSourceEventId,o={Accept:`text/event-stream, application/json`,...De()};i&&(o[`Last-Event-ID`]=i);let{stream:s}=await V({path:{assistant_id:t,session_id:n},headers:o,signal:l.signal,sseMaxRetryAttempts:0,fetch:(async(e,t)=>{let n=await globalThis.fetch(e,t);return n.ok||(h=n.status,fr.has(n.status)&&(p=!0),await br(n)&&(m=!0)),n}),onSseEvent:t=>{let n=t.data!==void 0;n&&(g=!0,_=xr(t)),d.recordTraffic(n),!r.signal.aborted&&a()&&d.arm(l,e)},onSseError:e=>{p||m||(f=w(e,`Doctor stream disconnected`))}});if(!a())return;d.arm(l,e);for await(let t of s){if(!a())return;g=!0,e=0,d.arm(l,e);let n=_;_=null;let r=er(t);r&&c(r.source_event_id||!n?r:{...r,source_event_id:n})}}catch(e){if(r.signal.aborted)return;f=d.consumeLastAbortCause()===`watchdog`?w(e,`Doctor stream stalled`):w(e,`Doctor stream connection failed`)}finally{d.clear(),r.signal.removeEventListener(`abort`,u)}if(!a()||i)return;if(m){if(o>=1){s(`Doctor event history changed while reconnecting. Start a new session to continue.`);return}o+=1;let e=null;try{e=await Cr(t,n)}catch(e){b(e,{context:`doctor_replay_gap_refresh`})}if(!a())return;if(e===`active`)continue;if(e===`terminal`){i=!0;return}s(`Doctor event history changed while reconnecting. Start a new session to continue.`);return}if(p){i=!0;let e=Q.getState();e.setThinking(!1),e.setStreamingEntryId(null),e.setSessionStatus(`completed`),e.setPendingApproval(!1),e.setPendingBackup(!1),e.appendEntry({kind:`status`,content:`Previous session expired. Start a new session to continue.`});return}if(f||=Error(`Doctor event stream ended before the session completed.`),dr(g)&&(e=0),e>=mr){b(f,{context:`doctor_sse_stream`}),s(h?`Failed to connect to event stream (${h}). Start a new session to continue.`:`Event stream disconnected. Start a new session to continue.`);return}await yr(vr(e),r.signal),e+=1}})()},[]),abort:(0,Y.useCallback)(()=>{e.current?.abort(),e.current=null},[])}}var Tr=64,Er=240;function Dr(e){let[t,n]=(0,Y.useState)(null),[r,i]=(0,Y.useState)(!1),a=(0,Y.useRef)(!0),o=(0,Y.useCallback)(e=>{n(t=>(e!==t&&(a.current=!0,i(!1)),e))},[]),s=(0,Y.useCallback)(()=>{let e=t;if(!e)return;let n=Math.max(0,e.scrollHeight-e.clientHeight),r=Math.max(0,n-e.scrollTop);a.current=r<=Tr,i(r>Er)},[t]);return(0,Y.useEffect)(()=>{a.current&&t&&t.scrollTo({top:t.scrollHeight,behavior:`auto`})},[e,t]),(0,Y.useEffect)(()=>{if(t)return t.addEventListener(`scroll`,s,{passive:!0}),()=>{t.removeEventListener(`scroll`,s)}},[t,s]),(0,Y.useEffect)(()=>{s()},[e,s]),(0,Y.useEffect)(()=>{if(!t||typeof ResizeObserver>`u`)return;let e=t.firstElementChild;if(!e)return;let n=new ResizeObserver(()=>{a.current&&t.scrollTo({top:t.scrollHeight,behavior:`auto`}),s()});return n.observe(e),()=>{n.disconnect()}},[t,s]),{scrollContainerRef:o,showScrollToLatest:r,scrollToLatest:(0,Y.useCallback)(()=>{t&&(a.current=!0,t.scrollTo({top:t.scrollHeight,behavior:`auto`}),i(!1))},[t])}}function Or({entry:e,onRespond:t}){return(0,X.jsx)(`div`,{className:`max-w-[90%]`,children:(0,X.jsx)(yn,{question:e.content,answer:e.meta?.answer,onRespond:n=>t(e.id,n)})})}function kr(){let{t:e}=K(`settings`),n=be.use.activeAssistantId()??``,i=Q.use.entries(),a=Q.use.inputValue(),o=Q.use.pendingApproval(),s=Q.use.pendingBackup(),c=Q.use.thinking(),l=Q.use.streamingEntryId(),d=Q.use.sessionId(),f=Q.use.sessionStatus(),p=Q.use.historyDismissed(),[m,h]=(0,Y.useState)(!1),[g,_]=(0,Y.useState)(null),v=H(),y=(0,Y.useRef)(null),x=(0,Y.useRef)(null),C=(0,Y.useRef)(!1),{connectSSE:w,abort:T}=wr(),E=!!n&&d===null&&!p&&i.length===0,k=Re({...r({path:{assistant_id:n||`placeholder`},query:{limit:1}}),enabled:E}),A=(k.data?Jn(k.data.results??[]):null)?.id??null,j=Re({...ee({path:{assistant_id:n||`placeholder`,doctor_session_id:A??``}}),enabled:!!n&&!!A&&!p&&d===null&&i.length===0}),M=p?void 0:j.data,N=M?Un(M.status):null,ne=(0,Y.useMemo)(()=>M?Wn(Hn(M.messages??[]),M.user_outcome):[],[M]);(0,Y.useEffect)(()=>{if(p||d!==null||i.length>0||!M||!A||N!==`active`)return;let e=Q.getState(),t=M.messages??[],r=Wn(Hn(t),M.user_outcome);e.setEntries(r),e.setPendingApproval(Gn(r)),e.setPendingBackup(Kn(r)),e.seedReplayState(Bn(t),Vn(t)),e.setSessionId(A),e.setSessionStatus(`active`),w(n,A)},[p,d,i.length,M,N,A,n,w]),(0,Y.useEffect)(()=>{k.error&&b(k.error,{context:`doctor_history_list`})},[k.error]),(0,Y.useEffect)(()=>{j.error&&b(j.error,{context:`doctor_history_detail`})},[j.error]);let P=Me({async mutationFn(e){let{data:n,error:r,response:i}=await t({...e,throwOnError:!1});if(r)throw i?.status===429?new S(429,`You've used all of your available Doctor sessions for this month. Please try again next month.`):r;return n},onSuccess(e){let t=Q.getState();t.resetReplayState(),t.setSessionId(e.session_id),t.setSessionStatus(`active`),t.setEntries([{kind:`assistant`,content:Xn,id:`greeting`,timestamp:Date.now()}]),w(n,e.session_id)},onError(e){e instanceof S&&e.status===429||b(e,{context:`start_doctor_session`});let t=Q.getState();t.setSessionStatus(`error`),t.appendEntry({kind:`error`,content:e instanceof S?e.message:O(e,void 0,`Failed to start doctor session`)})}}),re=ae({onMutate(e){let t=e.body.content,n=Q.getState();n.appendEntry({kind:`user`,content:t}),n.setInputValue(``),n.setThinking(!0),Zn.has(t.toLowerCase())&&n.setPendingApproval(!1)},onError(e){b(e,{context:`send_doctor_message`}),Q.getState().setThinking(!1),Q.getState().appendEntry({kind:`error`,content:O(e,void 0,`Failed to send message`)})}}),ie=P.isPending,F=re.isPending,I=e=>{let t=e.trim();!t||!d||(B(),re.mutate({path:{assistant_id:n,session_id:d},body:{content:t}}))},L=(0,Y.useCallback)(e=>{_({message:e?.message?.trim()||void 0,reason:e?.reason}),h(!0)},[]),oe=(0,Y.useCallback)(()=>{h(!1),_(null)},[]),se=j.refetch,ce=(0,Y.useCallback)((e,t)=>{let r=Q.getState(),i=r.sessionId===null,a=r.sessionId??A;if(!n||!a)return;let o=r.entries.find(t=>t.id===e),s=o?.kind===`user_outcome_prompt`?o.meta?.answer:void 0,c=t?`resolved`:`not_resolved`,l=t=>{r.updateEntries(n=>n.map(n=>n.id===e&&n.kind===`user_outcome_prompt`?{...n,meta:{...n.meta,answer:t}}:n))};l(c),fe({path:{assistant_id:n,session_id:a},body:{resolved:t},throwOnError:!1}).then(({error:t})=>{if(t){let n=Q.getState(),r=n.entries.find(t=>t.id===e);n.sessionId===a&&r?.kind===`user_outcome_prompt`&&r.meta?.answer===c&&l(s),b(t,{context:`doctor_session_user_outcome`})}else i&&se()}),t||L({message:`The Doctor wasn't able to solve my problem: `})},[n,A,L,se]),R=()=>{T();let e=Q.getState();e.sessionId&&n&&Qn(n,e.sessionId),e.teardown()},le=()=>{T();let e=Q.getState();e.sessionId&&n&&Qn(n,e.sessionId),e.resetForNewSession()},z=(0,Y.useMemo)(()=>d||i.length>0?i:p?[]:ne,[d,i,p,ne]),ue=d??(p?null:A),de=(0,Y.useMemo)(()=>qn(z),[z]),pe=(0,Y.useCallback)(()=>{u(de,{successMessage:e(`doctorPanel.copiedToast`),errorMessage:e(`doctorPanel.copyFailed`)})},[de,e]),{transcript:me,trailingPrompts:he}=(0,Y.useMemo)(()=>In(z),[z]),ge=c||l!==null,_e=(0,Y.useMemo)(()=>{if(!(d!==null||i.length>0))return null;let e=null;for(let t=z.length-1;t>=0;t--){let n=z[t];if(!(n.kind!==`tool_call`||n.meta.status!==`completed`||n.meta.isError)){if(n.meta.toolName===`list_assistant_backups`)return{entryId:n.id,refreshKey:e??n.id};e===null&&(n.meta.toolName===`create_doctor_backup`||n.meta.toolName===`restore_assistant_backup`)&&(e=n.id)}}return null},[z,d,i]),{scrollContainerRef:ve,showScrollToLatest:ye,scrollToLatest:B}=Dr(z);(0,Y.useEffect)(()=>{if(ke.getState().pendingPrompt!==null)return;let e=Q.getState();e.lastAssistantId===n&&e.sessionStatus===`active`&&e.sessionId&&w(n,e.sessionId),e.historyDismissed&&!e.sessionId&&Q.setState({historyDismissed:!1})},[]),(0,Y.useEffect)(()=>{let e=Q.getState();if(e.lastAssistantId===n)return;let t=e.lastAssistantId,r=e.sessionId;T(),e.reset(),Q.setState({lastAssistantId:n}),r&&t&&Qn(t,r)},[n,T]),(0,Y.useEffect)(()=>()=>{T()},[T]),(0,Y.useEffect)(()=>{if(C.current||!n)return;let e=ke.getState().consumePendingPrompt();if(e===null)return;C.current=!0;let t=Q.getState();T(),t.sessionId&&Qn(n,t.sessionId),t.resetForNewSession(),x.current=e.length>0?e:null,P.mutate({path:{assistant_id:n}})},[n,T,P]);let V=d!==null&&f===`active`,xe=!V&&i.length>0&&(f===`completed`||f===`error`),Se=V||xe?f:N??`idle`,Ce=E&&(k.isLoading||!!A&&j.isLoading);return(0,Y.useEffect)(()=>{let e=x.current;e&&(!V||!d||(x.current=null,B(),re.mutate({path:{assistant_id:n,session_id:d},body:{content:e}})))},[V,d,n,B,re]),(0,X.jsxs)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-2 rounded-xl bg-[var(--surface-base)] p-5 ring-1 ring-[var(--border-base)]`,children:[(0,X.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between`,children:[(0,X.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,X.jsx)(jn,{className:`h-10 w-10 shrink-0`}),(0,X.jsx)(`h2`,{className:`text-title-small text-[var(--content-default)]`,children:e(`doctorPanel.title`)})]}),(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(Yn,{onShareFeedback:v===`full`?()=>{L()}:void 0,onCopySession:z.length>0?pe:void 0}),V&&(0,X.jsx)(ht,{onStop:R,ariaLabel:e(`doctorPanel.endSession`)})]})]}),Ce?(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,X.jsx)(`span`,{className:`h-4 w-4 animate-spin rounded-full border-2 border-[var(--border-element)] border-t-[var(--content-secondary)]`}),e(`doctorPanel.loading`)]}):n?Se===`idle`?(0,X.jsxs)(`div`,{className:`flex flex-1 flex-col items-center justify-center gap-4 py-12`,children:[(0,X.jsx)(jn,{className:`h-24 w-24 shrink-0`}),(0,X.jsxs)(`div`,{className:`text-center`,children:[(0,X.jsx)(`h3`,{className:`text-title-medium text-[var(--content-default)]`,children:e(`doctorPanel.idleTitle`)}),(0,X.jsx)(`p`,{className:`mt-1 max-w-md text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`doctorPanel.idleDescription`)})]}),(0,X.jsxs)(`button`,{type:`button`,onClick:()=>P.mutate({path:{assistant_id:n}}),disabled:ie,className:`flex cursor-pointer items-center gap-2 rounded-lg bg-[var(--primary-base)] px-5 py-2.5 text-body-medium-default text-[var(--content-inset)] transition-colors hover:bg-[var(--primary-hover)] disabled:cursor-not-allowed disabled:opacity-50`,children:[ie?(0,X.jsx)(J,{className:`h-4 w-4 animate-spin`}):(0,X.jsx)(tt,{className:`h-4 w-4`}),e(`doctorPanel.startSession`)]})]}):(0,X.jsxs)(X.Fragment,{children:[(0,X.jsxs)(`div`,{className:`relative min-h-0 flex-1`,children:[(0,X.jsx)(`div`,{ref:ve,className:`h-full overflow-y-auto`,children:(0,X.jsxs)(`div`,{className:`mx-auto max-w-3xl space-y-3`,children:[me.map(e=>{switch(e.kind){case`user`:return(0,X.jsx)(bn,{entry:e},e.id);case`assistant`:return(0,X.jsx)(Sn,{entry:e},e.id);case`tool_call`:return(0,X.jsx)(`div`,{className:`flex justify-start`,children:(0,X.jsxs)(`div`,{className:`w-full`,children:[(0,X.jsx)(hn,{entry:e}),e.id===_e?.entryId&&n&&(0,X.jsx)(`div`,{className:`mt-2 rounded-lg border border-[var(--border-base)] bg-[var(--surface-lift)] p-4`,children:(0,X.jsx)(ln,{assistantId:n},_e.refreshKey)})]})},e.id);case`approval`:return(0,X.jsx)(`div`,{className:`max-w-[90%]`,children:(0,X.jsx)(gn,{entry:e,onRespond:I,disabled:!o||F})},e.id);case`backup_prompt`:return(0,X.jsx)(`div`,{className:`max-w-[90%]`,children:(0,X.jsx)(_n,{entry:e,onRespond:e=>{Q.getState().setPendingBackup(!1),I(e)},disabled:!s||F})},e.id);case`feedback_prompt`:return(0,X.jsx)(`div`,{className:`max-w-[90%]`,children:(0,X.jsx)(vn,{onOpenFeedback:()=>L({message:e.content===`Share feedback`?void 0:e.content,reason:e.meta?.reason})})},e.id);case`user_outcome_prompt`:return(0,X.jsx)(Or,{entry:e,onRespond:ce},e.id);case`error`:return(0,X.jsx)(Cn,{entry:e},e.id);case`status`:return(0,X.jsx)(wn,{entry:e},e.id);default:return null}}),c&&(0,X.jsx)(`div`,{className:`flex justify-start`,children:(0,X.jsxs)(`div`,{className:`flex items-center gap-[5px] rounded-[var(--radius-lg)] bg-[var(--surface-overlay)] px-4 py-3`,children:[[-.333,0,-.667].map((e,t)=>(0,X.jsx)(`span`,{"aria-hidden":!0,className:`typing-dot block h-2 w-2 rounded-full bg-[var(--content-tertiary)]`,style:{animation:`typing-dot-pulse 1s ease-in-out infinite`,animationDelay:`${e}s`}},t)),(0,X.jsx)(`span`,{className:`sr-only`,children:e(`doctorPanel.thinking`)})]})}),!ge&&he.map(e=>(0,X.jsx)(Or,{entry:e,onRespond:ce},e.id)),V&&!z.length&&(0,X.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-disabled)]`,children:[(0,X.jsx)(J,{className:`h-4 w-4 animate-spin`}),e(`doctorPanel.connecting`)]})]})}),ye&&(0,X.jsxs)(`button`,{type:`button`,onClick:B,"aria-label":e(`doctorPanel.goToNewestAria`),className:`pointer-events-auto absolute bottom-3 left-1/2 -translate-x-1/2 z-10 inline-flex items-center gap-1 rounded-full bg-[var(--surface-lift)] px-3 py-2 text-body-medium-default text-[var(--content-emphasised)] shadow-md transition-colors hover:text-[var(--content-default)]`,children:[e(`doctorPanel.goToNewest`),(0,X.jsx)(Ze,{className:`h-3 w-3`})]})]}),V&&(0,X.jsxs)(`form`,{onSubmit:e=>{e.preventDefault(),a.trim()&&!F&&(I(a),y.current&&(y.current.style.height=`auto`))},className:`mx-auto w-full max-w-3xl shrink-0 overflow-hidden rounded-[10px] bg-[var(--surface-lift)] shadow-sm ring-1 ring-transparent focus-within:ring-[var(--ring)]`,children:[(0,X.jsx)(`textarea`,{ref:y,value:a,onChange:e=>{Q.getState().setInputValue(e.target.value),e.target.style.height=`auto`,e.target.style.height=`${Math.min(e.target.scrollHeight,160)}px`},onKeyDown:e=>{e.key!==`Enter`||e.shiftKey||e.nativeEvent.isComposing||e.keyCode===229||te()||(e.preventDefault(),a.trim()&&!F&&(I(a),y.current&&(y.current.style.height=`auto`)))},placeholder:e(o?`doctorPanel.placeholderApproval`:`doctorPanel.placeholderMessage`),disabled:F,rows:1,className:`w-full resize-none border-none bg-transparent px-4 pb-2 pt-3 text-body-medium-lighter text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] focus:outline-none disabled:opacity-50`}),(0,X.jsx)(`div`,{className:`flex items-center justify-end px-3 pb-2`,children:(0,X.jsx)(D,{variant:`primary`,iconOnly:(0,X.jsx)(Ye,{className:`h-4 w-4`,strokeWidth:2.5}),type:`submit`,disabled:!a.trim()||F,"aria-label":e(`doctorPanel.sendMessageAria`)})})]}),(xe||!V&&N&&N!==`active`)&&(0,X.jsx)(`div`,{className:`flex shrink-0 items-center justify-center gap-3 py-2`,children:(0,X.jsxs)(`button`,{type:`button`,onClick:le,className:`flex cursor-pointer items-center gap-2 rounded-lg bg-[var(--primary-base)] px-4 py-2 text-body-medium-default text-[var(--content-inset)] transition-colors hover:bg-[var(--primary-hover)]`,children:[(0,X.jsx)(tt,{className:`h-4 w-4`}),e(`doctorPanel.newSession`)]})})]}):(0,X.jsx)(`div`,{className:`rounded-lg border border-[var(--border-base)] bg-[var(--surface-base)] px-4 py-3 text-body-medium-lighter text-[var(--content-tertiary)]`,children:(0,X.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,X.jsx)(jn,{className:`h-6 w-6 shrink-0`}),(0,X.jsx)(`span`,{children:e(`doctorPanel.noAssistant`)})]})}),(0,X.jsx)(mt,{open:m,onClose:oe,initialReason:g?.reason,initialMessage:g?.message,assistantId:n,doctorSessionId:ue,doctorSessionLog:de})]})}function Ar(e){return e===`archive`?{tabId:`conversations`,conversationsFilter:`archived`}:{tabId:e,conversationsFilter:`all`}}var jr=[{id:`general`,labelKey:`debugPage.tabs.general`,defaultLabel:`General`},{id:`terminal`,labelKey:`debugPage.tabs.terminal`,defaultLabel:`Terminal`},{id:`doctor`,labelKey:`debugPage.tabs.doctor`,defaultLabel:`Doctor`},{id:`database`,labelKey:`debugPage.tabs.database`,defaultLabel:`Database`},{id:`conversations`,labelKey:`debugPage.tabs.conversations`,defaultLabel:`Conversations`}],Mr=`general`;function Nr(){let{t:e}=K(`settings`),[t,n]=Ve(),r=L(),i=He(),a=(0,Y.useCallback)(e=>{ce(i,e)},[i]),o=H({platformHostedOnly:!0}),s=(0,Y.useMemo)(()=>jr.filter(e=>!(e.id===`terminal`&&o===`gated`||e.id===`doctor`&&o===`gated`)),[o]),{tabId:c,conversationsFilter:l}=Ar(t.get(`tab`)),u=(0,Y.useMemo)(()=>s.find(e=>e.id===c)?.id??Mr,[c,s]);return(0,X.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col`,children:(0,X.jsxs)(y.Root,{value:u,onValueChange:e=>{let r=new URLSearchParams(t);e===Mr?r.delete(`tab`):r.set(`tab`,e),n(r,{replace:!0})},className:`flex min-h-0 flex-1 flex-col`,children:[(0,X.jsx)(y.List,{children:s.map(t=>(0,X.jsx)(y.Trigger,{value:t.id,children:e(t.labelKey,t.defaultLabel)},t.id))}),(0,X.jsx)(y.Panel,{value:`general`,className:`pt-4`,children:(0,X.jsx)(pn,{})}),s.some(e=>e.id===`terminal`)&&(0,X.jsx)(y.Panel,{value:`terminal`,className:`flex min-h-0 flex-1 flex-col pt-4`,children:(0,X.jsx)(Jt,{})}),s.some(e=>e.id===`doctor`)&&(0,X.jsx)(y.Panel,{value:`doctor`,className:`flex min-h-0 flex-1 flex-col pt-4`,children:(0,X.jsx)(kr,{})}),(0,X.jsx)(y.Panel,{value:`database`,className:`pt-4`,children:(0,X.jsx)(tn,{})}),(0,X.jsx)(y.Panel,{value:`conversations`,className:`flex min-h-0 flex-1 flex-col pt-4`,children:(0,X.jsx)(Pt,{assistantId:r,initialFilter:l,onOpenConversation:a},l)})]})})}export{Nr as DebugPage};
@@ -1 +0,0 @@
1
- import{t as e}from"./deploy-dialogs-BXow2FID.js";export{e as DeployDialogs};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/desktop-viewer-38EXOmZ4.js","assets/rolldown-runtime-BM3Ffeng.js","assets/app-p4YU9h0P.js","assets/react-B9IgSVeK.js","assets/vendor-DYOeoIwg.js","assets/icons-QG1KAFmx.js","assets/app-BNL3dwNm.css","assets/desktop-status-Dg1h8ABX.js"])))=>i.map(i=>d[i]);
2
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Fr as t,Ha as n,Hb as r,Kf as i,Li as a,On as o,Tu as s,Tx as c,Ux as l,Yg as u,as as d,ym as f,zd as p}from"./app-p4YU9h0P.js";import{Zn as m,er as h,j as g}from"./vendor-DYOeoIwg.js";import{b as _,t as v,v as y,x as b}from"./react-B9IgSVeK.js";import{t as x}from"./desktop-status-Dg1h8ABX.js";var S=e(_(),1),C=e(b(),1);async function w(e,t){let{data:n,error:i,response:a}=await u({path:{assistant_id:e},throwOnError:!1,signal:t});if(a?.status===404)return{state:`ready`};if(!a?.ok||!n)throw a?r(i,a):i;return n}function T(e){let t=h(),n=f(),r=p({path:{assistant_id:e}}),a=m({...r,queryFn:({signal:t})=>w(e,t),enabled:n,retry:!1,staleTime:0}),o=()=>t.invalidateQueries({queryKey:r.queryKey});s(`sse.event`,({message:e})=>{e.type===`sync_changed`&&e.tags.includes(d.assistantDesktop)&&o()}),s(`sse.opened`,()=>{o()});let c=i({onSettled:o}),{mutate:l}=c,u=(0,C.useRef)(null);return(0,C.useEffect)(()=>{n&&a.data?.state===`required`&&u.current!==e&&(u.current=e,l({path:{assistant_id:e}}))},[e,n,a.data?.state,l]),{query:a,install:c}}var E=v(),D=(0,C.lazy)(()=>y(()=>import(`./desktop-viewer-38EXOmZ4.js`).then(e=>({default:e.DesktopViewer})),__vite__mapDeps([0,1,2,3,4,5,6,7]))),O={packages:`assistantDesktop.installingPackages`,chrome:`assistantDesktop.installingChrome`,checking:`assistantDesktop.checkingInstall`};function k({assistantId:e,viewOnly:t}){let{t:n}=g(`chat`),{query:r,install:i}=T(e),a=r.data;if(a?.state===`ready`)return(0,E.jsx)(C.Suspense,{fallback:(0,E.jsx)(x,{loading:!0,message:n(`assistantDesktop.connecting`)}),children:(0,E.jsx)(D,{assistantId:e,viewOnly:t},e)});let o=!i.isError&&(r.isPending||i.isPending||a?.state===`installing`||a?.state===`required`),s=r.isError||i.isError||a?.state===`failed`;return(0,E.jsx)(x,{loading:o,message:r.isError||i.isError?n(`assistantDesktop.setupRequestFailed`):s?n(`assistantDesktop.installFailed`):a?.state===`unsupported`?n(`assistantDesktop.setupUnsupported`):a?.state===`installing`?n(O[a.stage??`packages`]):n(`assistantDesktop.checkingSetup`),children:r.isError?(0,E.jsx)(l,{variant:`outlined`,onClick:()=>{r.refetch()},children:n(`assistantDesktop.reconnectButton`)}):i.isError||a?.state===`failed`?(0,E.jsx)(l,{variant:`outlined`,disabled:o,onClick:()=>i.mutate({path:{assistant_id:e}}),children:n(`assistantDesktop.installButton`)}):null})}function A({assistantId:e,fullscreen:r,fullscreenOnly:i}){let{t:s}=g(`chat`),u=(0,C.useRef)(null),[d]=(0,C.useState)(()=>{let e=document.createElement(`div`);return e.className=`h-full w-full`,e}),f=(0,C.useCallback)(e=>{u.current=e,e?.appendChild(d)},[d]),p=(0,C.useCallback)(e=>{(e??u.current)?.appendChild(d)},[d]),m=e=>{let n=t.getState();!e&&i?n.close():n.setFullscreen(e)};return(0,C.useEffect)(()=>{if(!r)return;let{registerBackOwner:e,unregisterBackOwner:t}=a.getState();return e(),()=>t()},[r]),(0,E.jsxs)(E.Fragment,{children:[(0,E.jsxs)(`div`,{className:`relative aspect-video w-full overflow-hidden bg-black`,children:[(0,E.jsx)(`div`,{ref:f,inert:!r,className:`h-full w-full`}),(0,E.jsx)(l,{variant:`ghost`,"aria-label":s(`assistantDesktop.expandAria`),onClick:()=>m(!0),className:`absolute inset-0 h-full w-full cursor-zoom-in rounded-none bg-transparent hover:bg-transparent active:scale-100`})]}),(0,S.createPortal)((0,E.jsx)(k,{assistantId:e,viewOnly:!r}),d),(0,E.jsx)(c.Root,{open:r,onOpenChange:m,children:(0,E.jsxs)(c.Content,{id:`assistant-desktop-modal`,hideCloseButton:!0,"aria-describedby":void 0,className:`h-dvh max-h-none max-w-none rounded-none border-0 bg-transparent shadow-none`,overlayClassName:`bg-black/80 p-0 [-webkit-app-region:no-drag]`,onEscapeKeyDown:e=>e.preventDefault(),onInteractOutside:e=>{e.target instanceof Node&&d.contains(e.target)&&e.preventDefault()},onCloseAutoFocus:e=>{i||(e.preventDefault(),u.current?.parentElement?.querySelector(`button`)?.focus())},onClick:e=>{e.target===e.currentTarget&&m(!1)},children:[(0,E.jsx)(c.Title,{className:`sr-only`,children:s(`assistantDesktop.title`)}),(0,E.jsx)(o,{title:s(`assistantDesktop.title`),onClose:()=>m(!1)}),(0,E.jsx)(`div`,{ref:p,className:n(`pointer-events-auto mx-auto min-h-0 flex-1 overflow-hidden`,i?`w-full`:`w-[90vw] rounded-lg`),style:{marginTop:`calc(4rem + var(--safe-area-inset-top, env(safe-area-inset-top, 0px)))`,marginBottom:`calc(1rem + var(--safe-area-inset-bottom, env(safe-area-inset-bottom, 0px)))`}})]})})]})}export{A as DesktopPreviewContent};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{G_ as t,Hx as n}from"./app-p4YU9h0P.js";import{j as r}from"./vendor-DYOeoIwg.js";import{t as i,x as a}from"./react-B9IgSVeK.js";import{ci as o,qi as s}from"./icons-QG1KAFmx.js";var c=e(a(),1),l=i(),u=1500,d=700,f=260;function p({text:e}){let{t:n}=r(),[i,a]=(0,c.useState)(!1),d=(0,c.useRef)(null);return(0,c.useEffect)(()=>()=>{d.current&&clearTimeout(d.current)},[]),(0,l.jsxs)(`button`,{type:`button`,onClick:()=>{t(e,{errorMessage:`Couldn't copy.`,onCopied:()=>{a(!0),d.current&&clearTimeout(d.current),d.current=setTimeout(()=>a(!1),u)}})},"aria-label":n(i?`detailPrimitives.copied`:`detailPrimitives.copy`),className:`absolute right-2 top-2 flex items-center gap-1 rounded p-1 text-label-small-default text-[var(--content-tertiary)] transition-colors hover:bg-[var(--ghost-hover)] hover:text-[var(--content-default)]`,children:[i?(0,l.jsx)(s,{className:`h-3.5 w-3.5`}):(0,l.jsx)(o,{className:`h-3.5 w-3.5`}),i?n(`detailPrimitives.copied`):null]})}function m({length:e,children:t}){let{t:i}=r(),[a,o]=(0,c.useState)(!1),s=e>d,u=s&&!a;return(0,l.jsxs)(l.Fragment,{children:[(0,l.jsxs)(`div`,{className:`relative overflow-hidden`,style:u?{maxHeight:f}:void 0,children:[t,u&&(0,l.jsx)(`div`,{"aria-hidden":!0,className:`pointer-events-none absolute inset-x-0 bottom-0 h-12 bg-gradient-to-t from-[var(--surface-overlay)] to-transparent`})]}),s&&(0,l.jsx)(`button`,{type:`button`,onClick:()=>o(e=>!e),className:`mt-2 w-full border-t border-[var(--border-base)] pt-2 text-left`,children:(0,l.jsx)(n,{variant:`body-medium-default`,as:`span`,className:`text-[var(--content-default)]`,children:i(a?`detailPrimitives.showLess`:`detailPrimitives.showMore`)})})]})}var h={outlined:`rounded-lg border border-[var(--border-base)]`,filled:`rounded-xl`};function g({variant:e=`outlined`,length:t,copyText:n,children:r}){return(0,l.jsxs)(`div`,{className:`relative ${h[e]} bg-[var(--surface-overlay)] p-3`,children:[(0,l.jsx)(m,{length:t,children:r}),n!==void 0&&(0,l.jsx)(p,{text:n})]})}function _({text:e,tone:t=`default`}){return(0,l.jsx)(g,{length:e.length,copyText:e,children:(0,l.jsx)(`pre`,{className:`font-mono text-xs whitespace-pre-wrap break-words ${t===`error`?`text-[var(--system-negative-strong)]`:`text-[var(--content-default)]`}`,children:e})})}function v({children:e,className:t=`mb-2`}){return(0,l.jsx)(n,{variant:`label-small-default`,as:`div`,className:`uppercase leading-4 tracking-wider text-[var(--content-tertiary)] ${t}`,children:e})}export{g as n,v as r,_ as t};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Ag as t,Cd as n,Cg as r,Cx as i,Eh as a,Ix as o,Kh as s,Kx as c,Mg as l,Mx as u,Ox as d,Oy as f,Pb as p,Sx as m,Tb as h,Td as g,Ux as _,Vf as v,Wh as y,Xf as b,Zf as ee,Zy as te,af as x,et as S,fl as ne,jg as re,kg as C,nl as w,of as T,px as E,rd as D,ym as O}from"./app-p4YU9h0P.js";import{Zn as k,dr as A,er as j,j as M,pr as ie,ur as ae}from"./vendor-DYOeoIwg.js";import{_ as oe,r as se,t as ce,x as le}from"./react-B9IgSVeK.js";import{A as N,Ai as P,E as F,Nr as I,_t as L,fa as R,qn as z,ur as B}from"./icons-QG1KAFmx.js";import{t as V}from"./detail-card-BpqiAUnN.js";import{t as H}from"./environment-store-DXa_IPIU.js";import{n as U}from"./assistant-status-panel-WAUlzwkS.js";var W=e(le(),1),G=ce();function ue({memoryEnabled:e,retrospectiveEnabled:t}){let{t:n}=M(`settings`),r=S(),a=j(),o=v({onSuccess:e=>{g(a,{path:{assistant_id:r}},e)}}),s=async e=>{try{await o.mutateAsync({path:{assistant_id:r},body:{memory:{retrospective:{enabled:e}}}}),i.success(n(e?`memoryRetrospectiveToggle.toastEnabled`:`memoryRetrospectiveToggle.toastPaused`))}catch(e){p(e,{context:`settings-memory-retrospective-toggle`}),i.error(n(`memoryRetrospectiveToggle.toastFailed`))}};return(0,G.jsxs)(`div`,{className:`flex flex-row items-start justify-between gap-4 border-t border-[var(--border-subtle)] pt-4`,children:[(0,G.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-2`,children:[(0,G.jsx)(`h3`,{className:`text-body-medium-default text-[var(--content-emphasised)]`,children:n(`memoryRetrospectiveToggle.title`)}),(0,G.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:n(`memoryRetrospectiveToggle.description`)})]}),(0,G.jsx)(u,{checked:t,onChange:e=>void s(e),"aria-label":n(`memoryRetrospectiveToggle.ariaLabel`),disabled:!e||o.isPending})]})}function de({memoryEnabled:e}){let{t}=M(`settings`),n=S(),r=j(),{data:a}=k({...x({path:{assistant_id:n}}),staleTime:3e4}),o=e=>{T(r,{path:{assistant_id:n}},t=>t&&{...t,status:e?`running`:`not_running`})},s=b({onSuccess:()=>o(!0)}),c=ee({onSuccess:()=>o(!1)}),l=async e=>{try{e?(await s.mutateAsync({path:{assistant_id:n}}),i.success(t(`memoryWorkerToggle.toastStarted`))):(await c.mutateAsync({path:{assistant_id:n}}),i.success(t(`memoryWorkerToggle.toastStopped`)))}catch(e){p(e,{context:`settings-memory-worker-toggle`}),i.error(t(`memoryWorkerToggle.toastFailed`))}};if(!a)return null;let d=s.isPending||c.isPending;return(0,G.jsxs)(`div`,{className:`flex flex-row items-start justify-between gap-4 border-t border-[var(--border-subtle)] pt-4`,children:[(0,G.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-2`,children:[(0,G.jsx)(`h3`,{className:`text-body-medium-default text-[var(--content-emphasised)]`,children:t(`memoryWorkerToggle.title`)}),(0,G.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:t(`memoryWorkerToggle.description`)})]}),(0,G.jsx)(u,{checked:a.status===`running`,onChange:e=>void l(e),"aria-label":t(`memoryWorkerToggle.ariaLabel`),disabled:!e||d})]})}function fe(){let{t:e}=M(`settings`),{healthz:t}=U(),r=S(),a=j(),o=t?.capabilities?.memoryOptOut===!0,{data:s}=k({...n({path:{assistant_id:r}}),staleTime:3e4,enabled:o}),c=v({onSuccess:e=>{g(a,{path:{assistant_id:r}},e)}}),l=s?.memory?.enabled!==!1,d=s?.memory?.retrospective?.enabled!==!1,f=async t=>{try{await c.mutateAsync({path:{assistant_id:r},body:{memory:{enabled:t}}}),i.success(e(t?`memoryCard.enabledToast`:`memoryCard.disabledToast`))}catch(t){p(t,{context:`settings-memory-toggle`}),i.error(e(`memoryCard.updateFailedToast`))}};return o?(0,G.jsxs)(V,{title:e(`memoryCard.title`),subtitle:e(`memoryCard.subtitle`),accessory:(0,G.jsx)(u,{checked:l,onChange:e=>void f(e),"aria-label":e(`memoryCard.enableAriaLabel`),disabled:c.isPending}),compactAccessory:!0,children:[(0,G.jsx)(ue,{memoryEnabled:l,retrospectiveEnabled:d}),(0,G.jsx)(de,{memoryEnabled:l})]}):null}function pe(){let{t:e}=M(`settings`),t=j(),[n,r]=(0,W.useState)(!1),[o,c]=(0,W.useState)(!1),l=O(),u=S(),{data:d,isLoading:p}=k({...ne({path:{id:u}}),enabled:l}),{data:h,isLoading:g}=k({...w({query:{hosting:`all`}}),enabled:l}),v=p||g,b=h?.results??[];return(0,G.jsxs)(`div`,{className:`space-y-6`,children:[(0,G.jsx)(me,{assistant:d??null,loading:v}),(0,G.jsx)(he,{assistants:b,activeAssistantId:u,loading:v}),(0,G.jsxs)(V,{title:e(`assistantLifecyclePanel.hatchTitle`),subtitle:e(`assistantLifecyclePanel.hatchSubtitle`),children:[(0,G.jsxs)(`div`,{className:`flex items-center justify-between gap-4`,children:[(0,G.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`assistantLifecyclePanel.hatchDescription`)}),(0,G.jsx)(_,{variant:`outlined`,leftIcon:n?(0,G.jsx)(z,{className:`animate-spin`}):void 0,onClick:()=>c(!0),disabled:n,className:`shrink-0`,children:e(`assistantLifecyclePanel.hatch`)})]}),(0,G.jsx)(m,{open:o,title:e(`assistantLifecyclePanel.hatchConfirmTitle`),message:e(`assistantLifecyclePanel.hatchConfirmMessage`),confirmLabel:e(`assistantLifecyclePanel.hatch`),onConfirm:async()=>{c(!1),r(!0);try{let n=await y(void 0,`create`);if(n.ok){if(f())try{let e=await s();e.ok&&await te(e.data,a.getState().currentOrganizationId??void 0)}catch{}i.success(n.status===201?e(`assistantLifecyclePanel.hatchSuccessToast`):e(`assistantLifecyclePanel.hatchExistingToast`)),t.invalidateQueries({queryKey:[{_id:`assistantsRetrieve`}]}),t.invalidateQueries({queryKey:w({query:{hosting:`all`}}).queryKey})}else{let t=typeof n.error?.detail==`string`?n.error.detail:e(`assistantLifecyclePanel.hatchFailedToast`);i.error(t)}}catch{i.error(e(`assistantLifecyclePanel.hatchFailedToast`))}finally{r(!1)}},onCancel:()=>c(!1)})]})]})}function me({assistant:e,loading:t}){let{t:n}=M(`settings`);return t?(0,G.jsx)(V,{title:n(`assistantLifecyclePanel.infoTitle`),children:(0,G.jsxs)(`div`,{className:`flex items-center gap-2 text-body-medium-lighter text-[var(--content-tertiary)]`,children:[(0,G.jsx)(z,{className:`h-4 w-4 animate-spin`}),n(`assistantLifecyclePanel.infoLoading`)]})}):e?(0,G.jsx)(V,{title:n(`assistantLifecyclePanel.infoTitle`),subtitle:n(`assistantLifecyclePanel.infoSubtitle`),children:(0,G.jsxs)(`div`,{className:`grid grid-cols-[140px_minmax(0,1fr)] gap-y-3`,children:[(0,G.jsx)(K,{children:n(`assistantLifecyclePanel.name`)}),(0,G.jsx)(q,{children:e.name??n(`assistantLifecyclePanel.unnamed`)}),(0,G.jsx)(K,{children:n(`assistantLifecyclePanel.status`)}),(0,G.jsx)(`div`,{children:(0,G.jsx)(o,{tone:e.status===`active`?`positive`:`neutral`,children:e.status})}),(0,G.jsx)(K,{children:n(`assistantLifecyclePanel.assistantId`)}),(0,G.jsx)(`span`,{className:`break-all font-mono text-body-small-default text-[var(--content-tertiary)]`,children:e.id}),e.machine_id&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(K,{children:n(`assistantLifecyclePanel.machineId`)}),(0,G.jsx)(`span`,{className:`break-all font-mono text-body-small-default text-[var(--content-tertiary)]`,children:e.machine_id})]}),(0,G.jsx)(K,{children:n(`assistantLifecyclePanel.created`)}),(0,G.jsx)(q,{children:new Date(e.created).toLocaleDateString()}),(0,G.jsx)(K,{children:n(`assistantLifecyclePanel.lastModified`)}),(0,G.jsx)(q,{children:new Date(e.modified).toLocaleDateString()}),e.current_release_version&&(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(K,{children:n(`assistantLifecyclePanel.version`)}),(0,G.jsx)(q,{children:e.current_release_version})]})]})}):(0,G.jsx)(V,{title:n(`assistantLifecyclePanel.infoTitle`),children:(0,G.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:n(`assistantLifecyclePanel.infoEmpty`)})})}function he({assistants:e,activeAssistantId:t,loading:n}){let{t:r}=M(`settings`);return n||e.length===0?null:(0,G.jsx)(V,{title:r(`assistantLifecyclePanel.allAssistantsTitle`),subtitle:r(`assistantLifecyclePanel.allAssistantsSubtitle`,{count:e.length}),children:(0,G.jsx)(`div`,{className:`max-h-[300px] space-y-2 overflow-y-auto`,children:e.map(e=>{let n=e.id===t;return(0,G.jsx)(`div`,{className:`flex items-center justify-between gap-4 rounded-lg border px-4 py-3 ${n?`border-[var(--border-focus)] bg-[var(--surface-lift)]`:`border-[var(--border-base)] bg-[var(--surface-default)]`}`,children:(0,G.jsxs)(`div`,{className:`min-w-0`,children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,G.jsx)(`span`,{className:`truncate text-body-medium-default text-[var(--content-default)]`,children:e.name||r(`assistantLifecyclePanel.unnamed`)}),(0,G.jsx)(o,{tone:e.status===`active`?`positive`:`neutral`,children:e.status}),n&&(0,G.jsx)(o,{tone:`warning`,children:r(`assistantLifecyclePanel.current`)})]}),(0,G.jsx)(`span`,{className:`font-mono text-body-small-default text-[var(--content-tertiary)]`,children:e.id})]})},e.id)})})})}function K({children:e}){return(0,G.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-tertiary)]`,children:e})}function q({children:e}){return(0,G.jsx)(`span`,{className:`text-body-medium-lighter text-[var(--content-default)]`,children:e})}function ge(){let{t:e}=M(`settings`),t=H.use.emailRootDomain(),n=H.use.isNonProduction(),r=H.use.setEnvironment();return(0,G.jsx)(V,{title:e(`environmentConfigPanel.title`),subtitle:e(`environmentConfigPanel.subtitle`),children:(0,G.jsxs)(`div`,{className:`space-y-2`,children:[(0,G.jsxs)(`div`,{className:`flex items-start gap-3 py-3`,children:[(0,G.jsx)(`div`,{className:`shrink-0 pt-0.5`,children:(0,G.jsx)(u,{checked:n,onChange:e=>r({isNonProduction:e}),"aria-label":e(n?`environmentConfigPanel.nonProductionOnAriaLabel`:`environmentConfigPanel.nonProductionOffAriaLabel`)})}),(0,G.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,G.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`environmentConfigPanel.nonProduction`)}),(0,G.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`environmentConfigPanel.nonProductionDescription`)})]})]}),(0,G.jsxs)(`div`,{className:`flex items-start gap-3 py-3`,children:[(0,G.jsx)(`div`,{className:`shrink-0 pt-0.5`,children:(0,G.jsx)(o,{tone:`neutral`,children:t})}),(0,G.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,G.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e(`environmentConfigPanel.emailRootDomain`)}),(0,G.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e(`environmentConfigPanel.emailRootDomainDescription`)})]})]})]})})}async function _e(){let{data:e,response:t}=await r.get({url:`/v1/feature-flags/`,throwOnError:!1});return t?.ok?e?.flags??[]:[]}var J={client:`warning`,assistant:`positive`};function ve(){let{t:e}=M(`settings`),n=S(),{data:r}=k({queryKey:[`feature-flag-definitions`],queryFn:_e,enabled:O(),staleTime:300*1e3}),i=(0,W.useMemo)(()=>{let e=new Map;if(!r)return e;for(let t of r)t.type===`string`&&t.values?.length&&e.set(t.key,t.values);return e},[r]),[a,o]=(0,W.useState)(``),s=C(),c=D(),l=(0,W.useMemo)(()=>{let e=[];for(let n of re){let r=t(n.key);if(typeof n.defaultEnabled==`boolean`){let t=s[r],i=c[r],a=n.scope===`both`?t===!0||i===!0:n.scope===`assistant`?i:t;if(typeof a!=`boolean`)continue;e.push({kind:`boolean`,storeKey:r,scope:n.scope,label:n.label,description:n.description,value:a,defaultValue:n.defaultEnabled})}else if(typeof n.defaultEnabled==`string`){let t=s.stringFlags?.[r],a=c.stringFlags?.[r],o=n.scope===`assistant`?a??n.defaultEnabled:t??n.defaultEnabled;e.push({kind:`string`,storeKey:r,scope:n.scope,label:n.label,description:n.description,value:o,defaultValue:n.defaultEnabled,values:i.get(n.key)??n.values})}}return e.sort((e,t)=>e.label.localeCompare(t.label,void 0,{sensitivity:`base`}))},[s,c,i]),u=(0,W.useMemo)(()=>{if(!a.trim())return l;let e=a.trim().toLowerCase();return l.filter(t=>t.label.toLowerCase().includes(e)||t.description.toLowerCase().includes(e)||t.storeKey.toLowerCase().includes(e)||t.scope.includes(e)||t.scope===`both`&&(`client`.includes(e)||`assistant`.includes(e)))},[l,a]);return(0,G.jsx)(V,{title:e(`featureFlagsPanel.title`),subtitle:e(`featureFlagsPanel.subtitle`),children:(0,G.jsxs)(`div`,{className:`space-y-4`,children:[(0,G.jsxs)(`div`,{className:`relative`,children:[(0,G.jsx)(L,{className:`absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-[var(--content-tertiary)]`}),(0,G.jsx)(`input`,{type:`text`,placeholder:e(`featureFlagsPanel.searchPlaceholder`),value:a,onChange:e=>o(e.target.value),className:`w-full rounded-lg border border-[var(--border-base)] bg-[var(--surface-default)] py-2 pl-9 pr-3 text-body-medium-default text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] focus:border-[var(--border-focus)] focus:outline-none`})]}),u.length===0&&(0,G.jsx)(`p`,{className:`text-body-medium-lighter text-[var(--content-tertiary)]`,children:e(`featureFlagsPanel.noMatching`)}),u.length>0&&(0,G.jsx)(`div`,{className:`max-h-[500px] space-y-2 overflow-y-auto`,children:u.map(e=>(0,G.jsx)(be,{flag:e,assistantId:n},e.storeKey))})]})})}function Y({scope:e}){let{t}=M(`settings`);return e===`both`?(0,G.jsxs)(G.Fragment,{children:[(0,G.jsx)(o,{tone:J.client,children:t(`featureFlagsPanel.scopeClient`)}),(0,G.jsx)(o,{tone:J.assistant,children:t(`featureFlagsPanel.scopeAssistant`)})]}):(0,G.jsx)(o,{tone:J[e],children:t(e===`client`?`featureFlagsPanel.scopeClient`:`featureFlagsPanel.scopeAssistant`)})}function ye({flag:e,assistantId:t}){let{t:n}=M(`settings`),r=C.use.setFlag(),i=D.use.setFlag();return(0,G.jsxs)(`div`,{className:`flex items-start gap-3 py-3`,children:[(0,G.jsx)(`div`,{className:`shrink-0 pt-0.5`,children:(0,G.jsx)(u,{checked:e.value,onChange:n=>{l(e.scope,`client`)&&r(e.storeKey,n),l(e.scope,`assistant`)&&i(e.storeKey,n,t)},"aria-label":e.value?n(`featureFlagsPanel.flagOnAriaLabel`,{label:e.label}):n(`featureFlagsPanel.flagOffAriaLabel`,{label:e.label})})}),(0,G.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-0.5`,children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,G.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e.label}),(0,G.jsx)(Y,{scope:e.scope})]}),(0,G.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e.description}),(0,G.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,G.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:n(`featureFlagsPanel.defaultLabel`)}),(0,G.jsx)(o,{tone:`neutral`,children:e.defaultValue?n(`featureFlagsPanel.on`):n(`featureFlagsPanel.off`)})]})]})]})}function X({flag:e,assistantId:t}){let{t:n}=M(`settings`),r=C.use.setStringFlag(),i=D.use.setStringFlag(),[a,s]=(0,W.useState)(e.value);(0,W.useEffect)(()=>{s(e.value)},[e.value]);let u=n=>{n!==e.value&&(l(e.scope,`client`)&&r(e.storeKey,n),l(e.scope,`assistant`)&&i(e.storeKey,n,t))},d=a!==e.value,f=e.values&&e.values.length>0?e.values:null,p=d&&f!=null&&!f.includes(a),m=()=>{p||u(a)},h=e=>{e.key===`Enter`&&e.currentTarget.blur()},g=f!=null&&f.includes(e.value);return(0,G.jsx)(`div`,{className:`flex items-start gap-3 py-3`,children:(0,G.jsxs)(`div`,{className:`min-w-0 flex-1 space-y-1.5`,children:[(0,G.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,G.jsx)(`span`,{className:`text-body-medium-default text-[var(--content-default)]`,children:e.label}),(0,G.jsx)(Y,{scope:e.scope})]}),(0,G.jsx)(`span`,{className:`block text-body-small-default text-[var(--content-tertiary)]`,children:e.description}),g?(0,G.jsx)(E,{value:e.value,onChange:e=>{s(e),u(e)},options:f.map(e=>({value:e,label:e})),className:`w-48`,"aria-label":n(`featureFlagsPanel.valueAriaLabel`,{label:e.label})}):(0,G.jsxs)(`div`,{className:`space-y-1`,children:[(0,G.jsx)(`input`,{type:`text`,value:a,onChange:e=>s(e.target.value),onBlur:m,onKeyDown:h,className:c(`w-full rounded-lg border bg-[var(--surface-default)] px-3 py-1.5 text-body-small-default text-[var(--content-default)] placeholder:text-[var(--content-tertiary)] focus:outline-none`,p?`border-[var(--system-negative-strong)]`:`border-[var(--border-base)] focus:border-[var(--border-focus)]`),placeholder:e.defaultValue||n(`featureFlagsPanel.enterValue`)}),p&&(0,G.jsx)(`span`,{className:`block text-body-small-default text-[var(--system-negative-strong)]`,children:n(`featureFlagsPanel.expectedOneOf`,{values:f.join(`, `)})})]}),(0,G.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,G.jsx)(`span`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:n(`featureFlagsPanel.defaultLabel`)}),(0,G.jsx)(o,{tone:`neutral`,children:e.defaultValue||n(`featureFlagsPanel.empty`)})]})]})})}function be({flag:e,assistantId:t}){return e.kind===`string`?(0,G.jsx)(X,{flag:e,assistantId:t}):(0,G.jsx)(ye,{flag:e,assistantId:t})}function xe(){let{t:e}=M(`settings`),t=(0,W.useCallback)(()=>{ae(Error(`[Dev Settings] Test error event`)),i.success(e(`sentryTestingPanel.errorSentToast`))},[e]),n=(0,W.useCallback)(()=>{A(`[Dev Settings] Test warning event`,`warning`),i.success(e(`sentryTestingPanel.warningSentToast`))},[e]),r=(0,W.useCallback)(()=>{A(`[Dev Settings] Test info event`,`info`),i.success(e(`sentryTestingPanel.infoSentToast`))},[e]),a=(0,W.useCallback)(()=>{A(`[Dev Settings] Test fatal event`,`fatal`),i.success(e(`sentryTestingPanel.fatalSentToast`))},[e]),o=(0,W.useCallback)(()=>{ie({name:`[Dev Settings] Test transaction`,op:`test.transaction`,forceTransaction:!0}).end(),i.success(e(`sentryTestingPanel.transactionSentToast`))},[e]);return(0,G.jsx)(V,{title:e(`sentryTestingPanel.title`),subtitle:e(`sentryTestingPanel.subtitle`),children:(0,G.jsxs)(`div`,{className:`space-y-3`,children:[(0,G.jsx)(Z,{icon:(0,G.jsx)(I,{className:`h-4 w-4 text-[var(--system-negative-strong)]`}),label:e(`sentryTestingPanel.fatalLabel`),description:e(`sentryTestingPanel.fatalDescription`),onClick:a}),(0,G.jsx)(Z,{icon:(0,G.jsx)(P,{className:`h-4 w-4 text-[var(--system-negative-default)]`}),label:e(`sentryTestingPanel.errorLabel`),description:e(`sentryTestingPanel.errorDescription`),onClick:t}),(0,G.jsx)(Z,{icon:(0,G.jsx)(F,{className:`h-4 w-4 text-[var(--system-warning-default)]`}),label:e(`sentryTestingPanel.warningLabel`),description:e(`sentryTestingPanel.warningDescription`),onClick:n}),(0,G.jsx)(Z,{icon:(0,G.jsx)(B,{className:`h-4 w-4 text-[var(--content-tertiary)]`}),label:e(`sentryTestingPanel.infoLabel`),description:e(`sentryTestingPanel.infoDescription`),onClick:r}),(0,G.jsx)(Z,{icon:(0,G.jsx)(N,{className:`h-4 w-4 text-[var(--system-positive-default)]`}),label:e(`sentryTestingPanel.performanceLabel`),description:e(`sentryTestingPanel.performanceDescription`),onClick:o})]})})}function Z({icon:e,label:t,description:n,onClick:r}){let{t:i}=M(`settings`);return(0,G.jsxs)(`div`,{className:`flex items-center justify-between gap-4 rounded-lg border border-[var(--border-base)] px-4 py-3`,children:[(0,G.jsxs)(`div`,{className:`flex min-w-0 items-center gap-3`,children:[(0,G.jsx)(`div`,{className:`shrink-0`,children:e}),(0,G.jsxs)(`div`,{className:`min-w-0`,children:[(0,G.jsx)(`p`,{className:`text-body-medium-default text-[var(--content-default)]`,children:t}),(0,G.jsx)(`p`,{className:`text-body-small-default text-[var(--content-tertiary)]`,children:n})]})]}),(0,G.jsxs)(_,{variant:`outlined`,size:`compact`,onClick:r,children:[(0,G.jsx)(R,{className:`h-4 w-4`}),i(`sentryTestingPanel.send`)]})]})}var Q=[{id:`feature-flags`,labelKey:`developerPage.tabFeatureFlags`},{id:`lifecycle`,labelKey:`developerPage.tabLifecycle`},{id:`sentry`,labelKey:`developerPage.tabSentry`},{id:`memory`,labelKey:`developerPage.tabMemory`}],$=`flex min-h-0 flex-1 flex-col pt-6`;function Se(){let{t:e}=M(`settings`),[t,n]=oe(),r=D.use.settingsDeveloperNav(),i=D.use.hasHydrated(),a=(0,W.useMemo)(()=>{let e=t.get(`tab`);return Q.find(t=>t.id===e)?.id??`feature-flags`},[t]);return i&&!r?(0,G.jsx)(se,{replace:!0,to:h.settings.general}):(0,G.jsx)(`div`,{"data-slot":`developer-page`,className:`flex min-h-0 flex-1 flex-col`,children:(0,G.jsxs)(d.Root,{value:a,onValueChange:e=>{let r=new URLSearchParams(t.toString());e===`feature-flags`?r.delete(`tab`):r.set(`tab`,e),n(r,{replace:!0})},className:`flex min-h-0 flex-1 flex-col`,children:[(0,G.jsx)(d.List,{className:`shrink-0`,"aria-label":e(`developerPage.sectionsAriaLabel`),children:Q.map(t=>(0,G.jsx)(d.Trigger,{value:t.id,children:e(t.labelKey)},t.id))}),(0,G.jsx)(d.Panel,{value:`feature-flags`,className:$,children:(0,G.jsxs)(`div`,{className:`space-y-6`,children:[(0,G.jsx)(ve,{}),(0,G.jsx)(ge,{})]})}),(0,G.jsx)(d.Panel,{value:`lifecycle`,className:$,children:(0,G.jsx)(pe,{})}),(0,G.jsx)(d.Panel,{value:`sentry`,className:$,children:(0,G.jsx)(xe,{})}),(0,G.jsx)(d.Panel,{value:`memory`,className:$,children:(0,G.jsx)(`div`,{className:`space-y-4`,children:(0,G.jsx)(fe,{})})})]})})}export{Se as DeveloperPage};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{Tb as t}from"./app-p4YU9h0P.js";import{f as n,x as r}from"./react-B9IgSVeK.js";var i=e(r(),1);function a(){let e=n();return(0,i.useEffect)(()=>{e(t.settings.general,{replace:!0})},[e]),null}export{a as DevicesRedirectPage};
@@ -1 +0,0 @@
1
- import{t as e}from"./document-load-B4r-kmWD.js";export{e as loadDocumentContent};
@@ -1 +0,0 @@
1
- import{o as e}from"./rolldown-runtime-BM3Ffeng.js";import{$i as t,Cx as n,Gp as r,Hx as i,Ji as a,Ki as o,Pb as s,Qi as c,Tb as l,Tu as ee,Ux as u,Wp as d,Xi as f,Yi as p,Zi as m,_c as h,bm as g,ea as _,hc as v,hn as y,ia as b,jc as x,mn as S,pn as te,qi as C,sy as w,ta as ne}from"./app-p4YU9h0P.js";import{j as re}from"./vendor-DYOeoIwg.js";import{d as T,f as E,h as D,t as O,x as k}from"./react-B9IgSVeK.js";import{qn as ie}from"./icons-QG1KAFmx.js";import{t as A}from"./document-load-B4r-kmWD.js";import{t as j}from"./use-edge-swipe-back-D1eHj9sf.js";var M=e(k(),1),N=O();function P(){let{t:e}=re(`chat`),{surfaceId:O}=D(),k=E(),{pathname:P,search:F,state:I}=T(),L=h(),[R]=(0,M.useState)(L?`conversation`:`standalone`),z=w.use.activeAssistantId(),B=w.use.assistantsHydrated(),V=g(),H=b(new URLSearchParams(F).get(ne)),U=(0,M.useRef)(null),W=(0,M.useRef)(null),G=(0,M.useRef)(null),[K,q]=(0,M.useState)({kind:`loading`}),[J,ae]=(0,M.useState)(0),[oe,Y]=(0,M.useState)(!1),X=(0,M.useRef)(!1),Z=K.kind===`ready`?K.doc:null,se=te(z,Z?.surfaceId??null,W);(0,M.useEffect)(()=>{if(q({kind:`loading`}),X.current=!1,Y(!1),!O||!z&&B||V===`unavailable`){q({kind:`error`});return}if(!z||V!==`ready`)return;let e=f(z);return G.current=e,(async()=>{try{let t=(e,t)=>{if(R===`conversation`&&t){C(k,e,t,z,H,!0,I);return}r.getState().clearDocumentEverywhere(O),q({kind:`ready`,doc:e,needsConversation:R===`conversation`})},n={assistantId:z,surfaceId:O,isCurrent:e.isCurrent};if(R===`conversation`)await c({...n,onReady:t});else{let r=await A(n);r&&e.isCurrent()&&t(r,null)}}catch(t){e.isCurrent()&&(s(t,{context:`document_viewer_page`}),q({kind:`error`}))}})(),e.dispose},[O,z,B,V,R,k,H,J,I]);let ce=(0,M.useCallback)(()=>{W.current?.refreshComments()},[]);ee(`sse.event`,S({surfaceId:O??``,enabled:!!O,onCommentsChanged:ce}));let Q=(0,M.useCallback)(()=>{G.current?.dispose(),a(k,O??``,H,I)},[k,O,H,I]);j({containerRef:U,onBack:Q,enabled:L,navKey:P});let $=(0,M.useCallback)(async r=>{if(!Z||!z||X.current||!W.current)return;let i=G.current;if(!i?.isCurrent())return;X.current=!0,Y(!0);let a=W.current.beginSendPreparation();try{let e=await a.flush();if(!i.isCurrent()||!a.isCurrent())return;let n={...Z,...e},s={assistantId:z,document:n,isCurrent:i.isCurrent},c=await t(s)??await _(s);if(!c||!i.isCurrent()||!a.isCurrent())return;r?(p(n,c,z),v(k,c,{silent:!0,...L?{replace:!0}:{},state:x(L?I:void 0),destination:L?o(c,Z.surfaceId,H,`chat`,m(n.title)):l.conversationWithPrompt(c,m(n.title))}),L||d.getState().setMainView(`document`)):C(k,n,c,z,H,!0,I)}catch(t){i.isCurrent()&&(s(t,{context:`document_prepare_conversation`}),n.error(e(`documentConversation.prepareFailed`)))}finally{a.release(),i.isCurrent()&&(X.current=!1,Y(!1))}},[Z,z,k,H,L,e,I]),le=(0,M.useCallback)(()=>$(!0),[$]),ue=(0,M.useCallback)(()=>$(!1),[$]);return K.kind===`loading`?(0,N.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,N.jsx)(ie,{size:24,className:`animate-spin text-[var(--content-tertiary)]`})}):K.kind===`error`||!Z||!z?(0,N.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-3`,children:[(0,N.jsx)(i,{variant:`body-small-default`,className:`text-[var(--content-tertiary)]`,children:e(`documentViewerPage.notFound`)}),(0,N.jsx)(u,{onClick:()=>ae(e=>e+1),children:e(`documentConversation.retry`)}),(0,N.jsx)(u,{variant:`ghost`,onClick:Q,children:e(`documentConversation.back`)})]}):(0,N.jsxs)(`div`,{ref:U,className:`flex min-h-0 flex-1 flex-col`,children:[K.needsConversation&&(0,N.jsxs)(`div`,{role:`status`,className:`flex shrink-0 flex-col gap-2 border-b border-[var(--border-default)] p-3`,children:[(0,N.jsx)(i,{variant:`body-small-default`,children:e(`documentConversation.missing`)}),(0,N.jsx)(u,{disabled:oe,onClick:ue,children:e(`documentConversation.start`)})]}),(0,N.jsx)(y,{source:`document`,surfaceId:Z.surfaceId,assistantId:z,conversationId:Z.conversationId,documentName:Z.title,content:Z.content,onClose:Q,onRenamed:e=>q(t=>t.kind===`ready`?{...t,doc:{...t.doc,title:e}}:t),onExport:se,onSubmitFeedback:le,handleRef:W},z+`:`+Z.surfaceId)]})}export{P as DocumentViewerPage};
@@ -1 +0,0 @@
1
- import{tx as e}from"./app-p4YU9h0P.js";import{Q as t}from"./vendor-DYOeoIwg.js";function n(){return{emailRootDomain:`local.vellum.me`,isNonProduction:!0}}var r=e(t()(e=>({...n(),setEnvironment:t=>e(t)})));export{r as t};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/web-CQyztjRg.js","assets/vendor-DYOeoIwg.js","assets/rolldown-runtime-BM3Ffeng.js","assets/react-B9IgSVeK.js"])))=>i.map(i=>d[i]);
2
- import{k as e}from"./vendor-DYOeoIwg.js";import{v as t}from"./react-B9IgSVeK.js";var n=e(`Browser`,{web:()=>t(()=>import(`./web-CQyztjRg.js`).then(e=>new e.BrowserWeb),__vite__mapDeps([0,1,2,3]))});export{n as Browser};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/web-7w3Y8MVH.js","assets/vendor-DYOeoIwg.js","assets/rolldown-runtime-BM3Ffeng.js","assets/react-B9IgSVeK.js"])))=>i.map(i=>d[i]);
2
- import{k as e}from"./vendor-DYOeoIwg.js";import{v as t}from"./react-B9IgSVeK.js";var n=e(`Share`,{web:()=>t(()=>import(`./web-7w3Y8MVH.js`).then(e=>new e.ShareWeb),__vite__mapDeps([0,1,2,3]))});export{n as Share};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/web-DZd0e2iR.js","assets/vendor-DYOeoIwg.js","assets/rolldown-runtime-BM3Ffeng.js","assets/react-B9IgSVeK.js"])))=>i.map(i=>d[i]);
2
- import{k as e}from"./vendor-DYOeoIwg.js";import{v as t}from"./react-B9IgSVeK.js";var n=e(`App`,{web:()=>t(()=>import(`./web-DZd0e2iR.js`).then(e=>new e.AppWeb),__vite__mapDeps([0,1,2,3]))});export{n as App};
@@ -1 +0,0 @@
1
- import{b as e}from"./vendor-DYOeoIwg.js";export{e as LocalNotifications};
@@ -1 +0,0 @@
1
- import{k as e}from"./vendor-DYOeoIwg.js";var t=e(`PushNotifications`,{});export{t as PushNotifications};
@@ -1,2 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/web-CkN0uo01.js","assets/vendor-DYOeoIwg.js","assets/rolldown-runtime-BM3Ffeng.js","assets/react-B9IgSVeK.js"])))=>i.map(i=>d[i]);
2
- import{k as e}from"./vendor-DYOeoIwg.js";import{v as t}from"./react-B9IgSVeK.js";var n;(function(e){e.Light=`light`,e.Dark=`dark`})(n||={});var r=e(`SafeArea`,{web:()=>t(()=>import(`./web-CkN0uo01.js`).then(e=>new e.SafeAreaWeb),__vite__mapDeps([0,1,2,3]))});export{r as SafeArea};