@vellumai/web 0.11.3-staging.1 → 0.11.3-staging.2

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 (184) hide show
  1. package/dist/assets/{access-BEF4g5Xz.js → access-DWtJQvRI.js} +1 -1
  2. package/dist/assets/{account-page-CjBQhkfo.js → account-page-D03pCcnz.js} +1 -1
  3. package/dist/assets/{account-shell-BwGiy59u.js → account-shell-DmVQwtZ0.js} +1 -1
  4. package/dist/assets/{acp-run-detail-panel-BPcNCjiL.js → acp-run-detail-panel-COs66Yrd.js} +1 -1
  5. package/dist/assets/{activity-steps-panel-DhuSLpCc.js → activity-steps-panel-CLjBxqNs.js} +1 -1
  6. package/dist/assets/ai-page-D4GbPprS.js +1 -0
  7. package/dist/assets/{api-key-screen-D1j3oper.js → api-key-screen-vFF5CrFw.js} +1 -1
  8. package/dist/assets/{app-card-BBt0ilaM.js → app-card-B7C46-7O.js} +1 -1
  9. package/dist/assets/{assistant-status-panel-DnkQ1jrJ.js → assistant-status-panel-CDUAp33H.js} +1 -1
  10. package/dist/assets/{auth-store-CPVpJ_c7.js → auth-store-DkOiOQNx.js} +1 -1
  11. package/dist/assets/{avatar-random-BHVo9v-a.js → avatar-random-BiLhcs1I.js} +1 -1
  12. package/dist/assets/{background-task-detail-panel-CyVrsboL.js → background-task-detail-panel-xFGqYCUz.js} +1 -1
  13. package/dist/assets/{billing-page-CvZZTRHS.js → billing-page-n2hU_EAj.js} +2 -2
  14. package/dist/assets/{bookmarks-page-M8X5Jj_q.js → bookmarks-page-DqXq2CVJ.js} +1 -1
  15. package/dist/assets/{build-state-DGpOoR0F.js → build-state-B0f3Jn2o.js} +1 -1
  16. package/dist/assets/channels-page-route-CbV05RLi.js +9 -0
  17. package/dist/assets/chat-markdown-message-WfT4JUja.js +1 -0
  18. package/dist/assets/{checkout-page-CQdvMHxx.js → checkout-page-BxYwG3J8.js} +1 -1
  19. package/dist/assets/{command-palette-DjHOOk8U.js → command-palette-DSxHNf_m.js} +1 -1
  20. package/dist/assets/{command-palette-window-page-msewbnL1.js → command-palette-window-page-9lbssBKp.js} +1 -1
  21. package/dist/assets/{common-BUQt6ee_.js → common-wFfOb0rN.js} +1 -1
  22. package/dist/assets/{composer-settings-veIRzcPS.js → composer-settings-MHDtr31Y.js} +1 -1
  23. package/dist/assets/{contacts-page-route-Caog1niM.js → contacts-page-route-BE3oNfhk.js} +1 -1
  24. package/dist/assets/{conversation-navigation-DqU55C7j.js → conversation-navigation-DbQqV_fs.js} +1 -1
  25. package/dist/assets/{conversation-queries-Bh_7RMKd.js → conversation-queries-CMEwcap1.js} +1 -1
  26. package/dist/assets/{credentials-page-D3H8KP0a.js → credentials-page-DKfIMfUB.js} +1 -1
  27. package/dist/assets/{csv-preview-Crel8fKb.js → csv-preview-DB8q0b_y.js} +1 -1
  28. package/dist/assets/{debug-page-By8-4Cjy.js → debug-page-DpWI-aFX.js} +2 -2
  29. package/dist/assets/{deploy-dialogs-Dak-wWO4.js → deploy-dialogs-BhY-urVH.js} +1 -1
  30. package/dist/assets/{deploy-store-0HlKHhLJ.js → deploy-store-OFWDAEgC.js} +1 -1
  31. package/dist/assets/{detail-card-CmSV969e.js → detail-card-Dsnf52vg.js} +1 -1
  32. package/dist/assets/{detail-drawer-HN4NsyKg.js → detail-drawer-AKY7keIJ.js} +1 -1
  33. package/dist/assets/{detail-panel-stop-button-DV6U5A7y.js → detail-panel-stop-button-Cvnn4hYA.js} +1 -1
  34. package/dist/assets/{detail-shell-rL601Rqo.js → detail-shell-g6Pw4jiP.js} +1 -1
  35. package/dist/assets/{developer-page-Bgg8qW6q.js → developer-page-CSFTdMiT.js} +1 -1
  36. package/dist/assets/{document-viewer-container-BkKmz-ar.js → document-viewer-container-Bousf9D9.js} +2 -2
  37. package/dist/assets/{document-viewer-page-B-jAUGAO.js → document-viewer-page-CJuMnNZk.js} +1 -1
  38. package/dist/assets/{emails-page-B0r-ksKy.js → emails-page-CMoX6WSY.js} +1 -1
  39. package/dist/assets/{file-editor-BQUkusyI.js → file-editor-BwWJX7zO.js} +1 -1
  40. package/dist/assets/file-markdown-CZPyyZhu.js +2 -0
  41. package/dist/assets/{first-run-scope-U5LrdMhR.js → first-run-scope-jh9sT0_v.js} +1 -1
  42. package/dist/assets/{general-page-Ce41M2hE.js → general-page-Biad-auh.js} +1 -1
  43. package/dist/assets/{hatching-screen-TI6k1_Q2.js → hatching-screen-DtMbgBm6.js} +1 -1
  44. package/dist/assets/{home-page-route-D6oL1pWj.js → home-page-route-k81d1Zsb.js} +1 -1
  45. package/dist/assets/{home-tool-permission-card-DG7KNyYY.js → home-tool-permission-card-Bytpm6bE.js} +1 -1
  46. package/dist/assets/{hosting-screen-CGkMm-2o.js → hosting-screen-C-6MdEhq.js} +1 -1
  47. package/dist/assets/identity-page-route-BEobbSBV.js +7 -0
  48. package/dist/assets/{index-3KliM4Ki.js → index-BI5VpYa-.js} +1 -1
  49. package/dist/assets/index-_S2T-6in.css +2 -0
  50. package/dist/assets/{inspect-page-DD024DeO.js → inspect-page-BSPJgPij.js} +3 -3
  51. package/dist/assets/integration-icon-R8opqT3n.js +1 -0
  52. package/dist/assets/integrations-page-DNYDhZHQ.js +1 -0
  53. package/dist/assets/{intelligence-layout-DOTYC75R.js → intelligence-layout-CDcBeu8K.js} +1 -1
  54. package/dist/assets/{library-detail-page-B2C4hPSd.js → library-detail-page-D5EeSRdZ.js} +1 -1
  55. package/dist/assets/{library-page-Y2NwunY9.js → library-page-wPVeE7u1.js} +1 -1
  56. package/dist/assets/{local-runtime-upgrade-12Yco-XF.js → local-runtime-upgrade-DyHUCz7A.js} +1 -1
  57. package/dist/assets/{login-flow-fmfcNxyU.js → login-flow-B8CUFAeg.js} +1 -1
  58. package/dist/assets/{login-page-HFoMsSuP.js → login-page-BgXMUzWB.js} +1 -1
  59. package/dist/assets/{logout-page-B_3PiI2q.js → logout-page-COe8dRLu.js} +1 -1
  60. package/dist/assets/{logs-layout-7JGOJ0Gg.js → logs-layout-BGd_aSZ_.js} +1 -1
  61. package/dist/assets/{memory-page-route-Cf8FoT6z.js → memory-page-route-BGEmbUCl.js} +1 -1
  62. package/dist/assets/{memory-router-playground-page-B4vWmkYZ.js → memory-router-playground-page-B4DX4CON.js} +1 -1
  63. package/dist/assets/{message-files-panel-B8NzbXp3.js → message-files-panel-DTDXhD0C.js} +1 -1
  64. package/dist/assets/{messages-JRZkqLeA.js → messages-D2OJUCHs.js} +1 -1
  65. package/dist/assets/{metric-card-Ba-Ju2sO.js → metric-card-DgbUgyv7.js} +1 -1
  66. package/dist/assets/{mobile-sidebar-drawer-B0rTd7jy.js → mobile-sidebar-drawer-CRXVtqcP.js} +1 -1
  67. package/dist/assets/{multi-activity-group-5OxVs26d.js → multi-activity-group-Chyfm08f.js} +1 -1
  68. package/dist/assets/{not-found-zOjj1km-.js → not-found-ClBCK2Sg.js} +1 -1
  69. package/dist/assets/{notifications-pzRj4j4m.js → notifications-G7qqgf4f.js} +1 -1
  70. package/dist/assets/{notifications-page-DTTyILgl.js → notifications-page-AW-ftrs5.js} +1 -1
  71. package/dist/assets/{open-workspace-file-FgLn-SuR.js → open-workspace-file-C4HWMBzn.js} +2 -2
  72. package/dist/assets/{page-shell-DH240m1W.js → page-shell-CkfnwmIw.js} +1 -1
  73. package/dist/assets/pairing-page-CGoWIhv7.js +1 -0
  74. package/dist/assets/{personality-page-B1BQNH7w.js → personality-page-CEbJMhDR.js} +1 -1
  75. package/dist/assets/{plans-page-B8oZfefa.js → plans-page-DXCrcLo8.js} +1 -1
  76. package/dist/assets/{platform-login-notice-3g7rHtc3.js → platform-login-notice-CIpebDVw.js} +1 -1
  77. package/dist/assets/{platform-loopback-page-DwnkFF3M.js → platform-loopback-page-BJf6yE-E.js} +1 -1
  78. package/dist/assets/{plugin-detail-page-BrrXgSIx.js → plugin-detail-page-CnlqMl6e.js} +1 -1
  79. package/dist/assets/plugins-surface-C5i913ST.js +1 -0
  80. package/dist/assets/{preview-error-Di5TH4XQ.js → preview-error-CihmwI1t.js} +1 -1
  81. package/dist/assets/{privacy-page-4LAU5IqF.js → privacy-page-CxAYEG0r.js} +1 -1
  82. package/dist/assets/{privacy-screen-CNnBXznE.js → privacy-screen-DAzWoGQI.js} +1 -1
  83. package/dist/assets/{profile-pickers-BSDVzs_G.js → profile-pickers-ChG4_Gpc.js} +1 -1
  84. package/dist/assets/{provider-callback-page-CpfaqAgJ.js → provider-callback-page--oWycq5i.js} +1 -1
  85. package/dist/assets/{provider-key-C9asexKh.js → provider-key-BZOH9D9k.js} +1 -1
  86. package/dist/assets/{provider-signup-page-MukjbwOQ.js → provider-signup-page-BaGT8Jl4.js} +1 -1
  87. package/dist/assets/{push-registration-CqXBOPNb.js → push-registration-C0GXHrCj.js} +1 -1
  88. package/dist/assets/{remove-from-device-dialog-DY5o8eIg.js → remove-from-device-dialog-C0eaWxwl.js} +1 -1
  89. package/dist/assets/{research-onboarding-route-BIY3OCwG.js → research-onboarding-route-CXimVFK6.js} +1 -1
  90. package/dist/assets/{retire-confirm-dialog-CgOoh5RG.js → retire-confirm-dialog-B1bvTlHS.js} +1 -1
  91. package/dist/assets/{review-terms-screen-BA2I_7F2.js → review-terms-screen-BxxGJL-B.js} +1 -1
  92. package/dist/assets/{routes-DuLrKyjJ.js → routes-ZeXUrnzY.js} +14 -14
  93. package/dist/assets/{runtime-upgrade-banner-9KhcwQWy.js → runtime-upgrade-banner--bSmfygH.js} +1 -1
  94. package/dist/assets/{sandbox-bridge-B6h4B0qp.js → sandbox-bridge-BlniBIsp.js} +1 -1
  95. package/dist/assets/schedules-page-DCUj-YbP.js +1 -0
  96. package/dist/assets/select-assistant-screen-C5Cl_pCp.js +1 -0
  97. package/dist/assets/self-hosted-servers-DFgP80iG.js +1 -0
  98. package/dist/assets/{settings-divider-D_vHiuYw.js → settings-divider-BuDc875f.js} +1 -1
  99. package/dist/assets/{settings-layout-CINtkHJR.js → settings-layout-Clnlm1aB.js} +1 -1
  100. package/dist/assets/{settings-navigation-CHeVLLWI.js → settings-navigation-Cn3KCxOe.js} +1 -1
  101. package/dist/assets/{share-feedback-modal-BWez_NtT.js → share-feedback-modal-COUhsUqF.js} +1 -1
  102. package/dist/assets/{sidebar-tree-aLYbZLvm.js → sidebar-tree-BXbcoj07.js} +1 -1
  103. package/dist/assets/{signup-page-CiW0Chx7.js → signup-page-C9ZrCSVo.js} +1 -1
  104. package/dist/assets/{site-favicon-B5ilr8wL.js → site-favicon-B3DMFtr3.js} +1 -1
  105. package/dist/assets/{skill-detail-page-T24C6W33.js → skill-detail-page-Ckw6_1PG.js} +2 -2
  106. package/dist/assets/{skill-detail-panel-BOPQ16Vg.js → skill-detail-panel-DdYbYHuj.js} +1 -1
  107. package/dist/assets/{skills-C2mjxWRN.js → skills-Lf85mR9L.js} +1 -1
  108. package/dist/assets/{src-BMRW2yQf.js → src-hNk11eS3.js} +1 -1
  109. package/dist/assets/{stt-language-picker-modal-BVO4V699.js → stt-language-picker-modal-B5MO-3gk.js} +1 -1
  110. package/dist/assets/{subagent-detail-panel-BCDOrwh3.js → subagent-detail-panel-BKhU7VAv.js} +1 -1
  111. package/dist/assets/{subagent-store-BOpi4xxB.js → subagent-store-9SqF-NFa.js} +1 -1
  112. package/dist/assets/{superpowers-page-bOpdIXSO.js → superpowers-page-gPiU1fsq.js} +1 -1
  113. package/dist/assets/{system-events-page-Bgo88uzO.js → system-events-page-DbcoH4sh.js} +1 -1
  114. package/dist/assets/{telegram-setup-wizard-B3MHpy56.js → telegram-setup-wizard-C4E0wi1B.js} +1 -1
  115. package/dist/assets/{text-preview-CPYq3og6.js → text-preview-KOyX3OrO.js} +1 -1
  116. package/dist/assets/{theme-stage-page-B6C95R4X.js → theme-stage-page-D4DYc_C8.js} +1 -1
  117. package/dist/assets/{tiptap-document-editor-By4wlOTs.js → tiptap-document-editor-CDIJTTa_.js} +1 -1
  118. package/dist/assets/{tool-detail-panel-E_gP0j1r.js → tool-detail-panel-CmbBw4_n.js} +1 -1
  119. package/dist/assets/typed-storage-lk6_tW16.js +1 -0
  120. package/dist/assets/{upgrade-cancel-page-DCiT0Rqi.js → upgrade-cancel-page-DfjtkvP9.js} +1 -1
  121. package/dist/assets/{upgrade-success-page-DLs3viaj.js → upgrade-success-page-BDWg5oK4.js} +1 -1
  122. package/dist/assets/{use-assistant-avatar-Dk975wdP.js → use-assistant-avatar-Dd-EU1FC.js} +1 -1
  123. package/dist/assets/{use-assistant-identity-details-DyvMGaA7.js → use-assistant-identity-details-BAgi4MHa.js} +1 -1
  124. package/dist/assets/{use-attachment-preview-DjrcSin2.js → use-attachment-preview-CB3GsEns.js} +1 -1
  125. package/dist/assets/{use-attachment-squares-DHH1eTI4.js → use-attachment-squares-DPuVHGRC.js} +1 -1
  126. package/dist/assets/{use-bookmarks-Wg8ueMhb.js → use-bookmarks-C6IlHWIK.js} +1 -1
  127. package/dist/assets/{use-checkout-dismiss-refresh-wuwzKwo_.js → use-checkout-dismiss-refresh-CDwSKr1-.js} +1 -1
  128. package/dist/assets/{use-command-palette-sections-CzHbFhwD.js → use-command-palette-sections-DXzS2Tio.js} +1 -1
  129. package/dist/assets/{use-edge-swipe-back-9-2nUEK7.js → use-edge-swipe-back-ZgANxgKE.js} +2 -2
  130. package/dist/assets/{use-edit-app-PiQBQ9vN.js → use-edit-app-BHUYCv4X.js} +1 -1
  131. package/dist/assets/{use-invite-link-dialog-C6rYwhqr.js → use-invite-link-dialog-CdY5FNQa.js} +1 -1
  132. package/dist/assets/{use-is-org-ready-BTUeuhPi.js → use-is-org-ready-BmOdacs1.js} +1 -1
  133. package/dist/assets/{use-onboarding-login-BXw1Fcg3.js → use-onboarding-login-BUaNGE_u.js} +1 -1
  134. package/dist/assets/{use-platform-assistant-id-DOBe1pF-.js → use-platform-assistant-id-CEMyKEvV.js} +1 -1
  135. package/dist/assets/{use-platform-gate-DBRG0Q26.js → use-platform-gate-CdwOyQ8A.js} +1 -1
  136. package/dist/assets/{use-return-to-short-circuit-Bl1RwuwD.js → use-return-to-short-circuit-CTYRB2Ne.js} +1 -1
  137. package/dist/assets/{use-skill-actions-kLsl5L01.js → use-skill-actions-GbdM3IIw.js} +1 -1
  138. package/dist/assets/{use-sticky-profiles-CVsR9J8_.js → use-sticky-profiles-LVe9u5gh.js} +1 -1
  139. package/dist/assets/{use-subagent-card-data-BeUTFQdm.js → use-subagent-card-data-CFKl88ab.js} +1 -1
  140. package/dist/assets/{use-supports-bookmarks-FmvOAxKu.js → use-supports-bookmarks-z9pfj1Rm.js} +1 -1
  141. package/dist/assets/use-supports-credentials-settings-CEPArXBW.js +1 -0
  142. package/dist/assets/use-transcript-message-by-id-cDbEJMB-.js +1 -0
  143. package/dist/assets/{use-transcript-messages-BAG92dqc.js → use-transcript-messages-vw2Hogaj.js} +1 -1
  144. package/dist/assets/{use-voice-sample-preview-CVVwbBcE.js → use-voice-sample-preview-BjIqIVEG.js} +1 -1
  145. package/dist/assets/{utils-CAZUrJMu.js → utils-CVoSWh7U.js} +1 -1
  146. package/dist/assets/{viewer-store-BhqBXvNu.js → viewer-store-DhrkeZmJ.js} +1 -1
  147. package/dist/assets/{voice-list-ChEr4jqe.js → voice-list-DnqRx15F.js} +1 -1
  148. package/dist/assets/{voice-page-CkdnjoLc.js → voice-page-CrrYAE9k.js} +1 -1
  149. package/dist/assets/{voice-providers-note-DC4nbaBx.js → voice-providers-note-ValSs0nz.js} +1 -1
  150. package/dist/assets/{welcome-screen-BTnikex6.js → welcome-screen-CiBqE53u.js} +1 -1
  151. package/dist/assets/{workflow-detail-panel-Bf6rP5UH.js → workflow-detail-panel-crM7HRfK.js} +1 -1
  152. package/dist/assets/{workspace-page-C8EUvGJ4.js → workspace-page-iAsgehav.js} +1 -1
  153. package/dist/images/integrations/ATTRIBUTION.md +72 -0
  154. package/dist/images/integrations/airtable.svg +1 -0
  155. package/dist/images/integrations/asana.svg +1 -0
  156. package/dist/images/integrations/discord.svg +1 -0
  157. package/dist/images/integrations/dropbox.svg +1 -0
  158. package/dist/images/integrations/hubspot.svg +1 -0
  159. package/dist/images/integrations/salesforce.svg +5 -0
  160. package/dist/images/integrations/sanity.svg +1 -0
  161. package/dist/images/integrations/spotify.svg +1 -0
  162. package/dist/images/integrations/telegram.svg +1 -0
  163. package/dist/images/integrations/todoist.svg +1 -0
  164. package/dist/images/integrations/x.svg +1 -0
  165. package/dist/index.html +57 -57
  166. package/package.json +1 -1
  167. package/dist/assets/ai-page-CsufGyQ4.js +0 -1
  168. package/dist/assets/channels-page-route-Dj500t-M.js +0 -9
  169. package/dist/assets/chat-markdown-message-Dr9rA1lM.js +0 -1
  170. package/dist/assets/file-markdown-DMq6D4CV.js +0 -2
  171. package/dist/assets/identity-page-route-CLUGVFIg.js +0 -7
  172. package/dist/assets/index-BIhXfUlg.css +0 -2
  173. package/dist/assets/integration-icon-BaoRF0qI.js +0 -1
  174. package/dist/assets/integrations-page-Dygny-c2.js +0 -1
  175. package/dist/assets/pairing-page-Tun2QZT0.js +0 -1
  176. package/dist/assets/plugins-surface-B4NuEVD_.js +0 -1
  177. package/dist/assets/schedules-page-CchXRGaR.js +0 -1
  178. package/dist/assets/select-assistant-screen-BHf9p-NL.js +0 -1
  179. package/dist/assets/typed-storage-UYklH-m5.js +0 -1
  180. package/dist/assets/use-supports-credentials-settings-BGgnzFf0.js +0 -1
  181. package/dist/assets/use-supports-schedule-profile-moves-CuKzMKxy.js +0 -1
  182. package/dist/assets/use-transcript-message-by-id-C7L609Lk.js +0 -1
  183. /package/dist/assets/{profile-metadata-DutSLpwl.js → profile-metadata-DgH7VoVU.js} +0 -0
  184. /package/dist/assets/{start-screen-zLwb2fyf.js → start-screen-CXUDtHbL.js} +0 -0
@@ -1,2 +1,2 @@
1
1
  const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/esm-RwtNn1Lo.js","assets/preload-helper-Cv2QeVDK.js","assets/dist-Br0LBu8Y.js"])))=>i.map(i=>d[i]);
2
- import{i as e,l as t,o as n,t as r}from"./local-settings-Bx7FsNo5.js";import{a as i,n as a,r as o}from"./device-settings-DZvv4pnY.js";import{o as s,t as c}from"./capture-error-Cw5vs0Ef.js";import{t as l}from"./preload-helper-Cv2QeVDK.js";import{t as u}from"./useQuery-Bz-fbQ-m.js";import{n as d,t as f}from"./create-selectors-DBgi9gD3.js";import{C as ee,F as te,J as ne,K as re,L as ie,M as ae,N as oe,P as se,Q as p,T as ce,X as le,Y as ue,Z as m,_ as h,a as de,b as fe,c as pe,f as g,g as me,i as he,l as ge,n as _e,nt as ve,q as ye,r as be,rt as _,s as xe,tt as Se,v as Ce,w as we,x as v}from"./local-mode-BfEgOekp.js";import{t as y}from"./is-electron-BHXrkjI3.js";import{n as b,t as Te}from"./resolved-assistants-store-BFI9c7ip.js";import{i as x,n as Ee,t as De}from"./api-errors-BQX1Pzcm.js";import{t as Oe}from"./client.gen-C854VG5x.js";import{D as ke,E as Ae,It as je,Lt as Me,Mt as Ne}from"./sdk.gen-DKYWIHI7.js";import{a as Pe,c as Fe,r as Ie}from"./api-JA_IDAQk.js";import{n as Le}from"./event-bus-Cy8AzL-G.js";import{o as Re}from"./remote-gateway-session-CgDx1fv1.js";import{t as ze}from"./client-feature-flag-store-C8ieIAKe.js";import{C as Be,G as S,H as Ve,S as He,U as Ue,V as We,_ as Ge,h as Ke,k as qe,q as Je,v as Ye,w as Xe}from"./platform-detection-C_TK32Dw.js";import{a as Ze,c as Qe}from"./push-registration-CqXBOPNb.js";import{i as $e,t as et}from"./typed-storage-UYklH-m5.js";import{t as C}from"./onboarding-store-_SsI8JK5.js";import{s as tt,t as nt}from"./use-assistant-avatar-Dk975wdP.js";var w=f(d(()=>({assistantState:{kind:`loading`},operationalStatusAssistantId:null,expectingFirstMessage:!1}))),rt=new Set;function it(e){return rt.add(e),()=>{rt.delete(e)}}function at(){for(let e of rt)try{e()}catch{}}var ot=new Set([502,503,504]),st=`Connection interrupted. Reconnecting…`;function ct(e){return e.code===`proxy_network_error`?!0:(typeof e.detail==`string`?e.detail:``).includes(`net::ERR_`)}function lt(e){if(e.ok)switch(e.data.status){case`active`:return e.data.is_local?{kind:`self_hosted`}:{kind:`active`};case`initializing`:return{kind:`initializing`};case`to_be_deleted`:return{kind:`cleaning_up`};default:return{kind:`error`,message:`Unexpected assistant status: ${e.data.status}`}}return e.status===404?{kind:`auto_hatch`}:ct(e.error)?{kind:`error`,transient:!0,message:st}:{kind:`error`,message:x(e.error,void 0,`Failed to check assistant status.`)}}function ut(e){return e===void 0||e>=500}var dt=`platform_hosted_disabled`,ft=`We are at capacity for Vellum Managed Assistants, more will be available soon!`;function pt(e,t){return e===503?t?.code===dt:!1}var mt=2e3,ht=3e4;function gt(e){return Math.min(mt*2**e,ht)}var _t=3e5;function vt(){return{kind:`error`,message:`Your assistant is taking longer than expected to start. Please try again, or check the community for help.`}}var yt=[`assistant`,`current`],bt=3e3,xt=new Set([`initializing`,`cleaning_up`]);function St(e){if(!e)return!1;let t=lt(e);return xt.has(t.kind)?bt:!1}function Ct(e){return e?[...yt,e]:yt}function wt(e){let t=e.selectedPlatformAssistantId??null;return u({queryKey:Ct(t),queryFn:()=>Ie(t??void 0),enabled:e.enabled,retry:!1,refetchInterval:e=>St(e.state.data),refetchOnWindowFocus:!1})}var Tt=new Set([`healthy`,`ok`]);function Et(e){if(!e.ok)return`unreachable`;let t=e.data?.status;return t===`MIGRATING`?`migrating`:t!==void 0&&!Tt.has(t)?`unhealthy`:`healthy`}function Dt(){let e=w.use.assistantState();return e.kind===`self_hosted`||e.kind===`active`&&e.isLocal?e.health??null:null}var T=e=>e===`authenticated`,Ot=e=>e!==`initializing`,E=e=>e===`present`,kt=e=>e!==`unknown`,At=(e,t)=>e===`present`&&!t,jt=new Set([401,403,410]),D=e=>!e.ok&&e.status!==void 0&&jt.has(e.status),Mt=4e3,Nt=6e4,Pt=5e3;function Ft(){let e=/\/assistant(?:\/|$)/.exec(window.location.pathname),t=e&&e.index>0?window.location.pathname.slice(0,e.index).replace(/\/+$/,``):``;return`${window.location.origin}${t}`}var O=new class{state={kind:`loading`};generation=0;initializingTimeout=null;ready=!1;inputs={sessionStatus:`initializing`,hasPlatformSession:!1,queryClient:null,selectedPlatformAssistantId:null};probeTimer=null;healthHeartbeatTimer=null;healthHeartbeatId=null;healthHeartbeatToken=0;reachabilityProbeInFlightIds=new Set;probeFailureStreak=0;probeLoopAssistantId=null;errorRetryTimer=null;errorRetryAttempt=0;constructor(){it(()=>this.onUnreachable()),Le(`app.online`,()=>this.onNetworkOnline()),b.subscribe((e,t)=>{e.selectedAssistantId!==t.selectedAssistantId&&(!p()||this.state.kind===`loading`||this.applyGatewayAuthShortCircuit())})}setInputs(e){this.inputs=e,this.ready=!0}resetForLogout(){b.getState().activeAssistantId!==null&&b.getState().setActiveAssistantId(null),this.setOperationalStatusAssistantId(null),this.cancelProbeTimer(),this.probeLoopAssistantId=null,this.reachabilityProbeInFlightIds.clear(),this.state.kind!==`loading`&&this.transition({kind:`loading`}),this.clearExpectingFirstMessage()}async respondToInputs(){if(this.ready){if(p()){this.applyGatewayAuthShortCircuit();return}if(!T(this.inputs.sessionStatus)){this.resetForLogout();return}this.inputs.hasPlatformSession&&_(null),this.inputs.isOrgReady&&await this.checkAssistant()}}async applyServerResult(e){this.ready&&(this.state.kind!==`initializing`&&this.state.kind!==`cleaning_up`||await this.applyServerStateUpdate(e))}async checkAssistant(e){if(!this.ready)return;if(p()){this.applyGatewayAuthShortCircuit();return}let t=this.generation;try{let n=e??this.inputs.selectedPlatformAssistantId??null,r=await this.inputs.queryClient.fetchQuery({queryKey:Ct(n),queryFn:()=>Ie(n??void 0),staleTime:0});if(t!==this.generation||n&&!r.ok&&r.status===404&&(b.getState().setSelectedAssistant(null),r=await this.inputs.queryClient.fetchQuery({queryKey:yt,queryFn:()=>Ie(),staleTime:0}),t!==this.generation))return;await this.applyServerStateUpdate(r)}catch(e){if(console.error(`Error checking assistant status:`,e),c(e,{context:`check_assistant`}),t!==this.generation||this.degradeOnTransportFailure())return;this.transition({kind:`error`,transient:!0,message:st})}}degradeOnTransportFailure(){return this.state.kind===`active`?(this.triggerReachabilityProbe(),!0):this.state.kind===`initializing`||this.state.kind===`cleaning_up`}retryAssistant(){this.ready&&this.checkAssistant()}markExpectingFirstMessage(){w.getState().expectingFirstMessage||w.setState({expectingFirstMessage:!0})}clearExpectingFirstMessage(){w.getState().expectingFirstMessage&&w.setState({expectingFirstMessage:!1})}transition(e){let t=this.state.kind;this.state=e,w.setState({assistantState:e}),e.kind===`initializing`?t!==`initializing`&&this.armInitializingWatchdog():this.initializingTimeout&&=(clearTimeout(this.initializingTimeout),null),e.kind!==`initializing`&&e.kind!==`active`&&this.clearExpectingFirstMessage(),!(e.kind===`self_hosted`||e.kind===`active`&&e.isLocal)&&this.healthHeartbeatId!==null&&this.cancelHealthHeartbeat(),e.kind===`error`&&e.transient?this.armErrorRetry():this.clearErrorRetry(e.kind!==`error`)}clearErrorRetry(e){this.errorRetryTimer&&=(clearTimeout(this.errorRetryTimer),null),e&&(this.errorRetryAttempt=0)}armErrorRetry(){this.errorRetryTimer&&clearTimeout(this.errorRetryTimer);let e=gt(this.errorRetryAttempt);this.errorRetryAttempt+=1,this.errorRetryTimer=setTimeout(()=>{this.errorRetryTimer=null,this.checkAssistant()},e)}onNetworkOnline(){if(this.ready){if(this.state.kind===`error`&&this.state.transient){this.clearErrorRetry(!0),this.checkAssistant();return}this.state.kind===`active`&&this.state.reachable===!1&&this.checkAssistant()}}armInitializingWatchdog(){this.initializingTimeout&&clearTimeout(this.initializingTimeout),this.initializingTimeout=setTimeout(()=>{this.generation++,s(`Assistant stuck in initializing state`,{level:`warning`,extra:{timeoutMs:_t}}),this.transition(vt())},_t)}projectActive(e){let t=e.data.maintenance_mode,n=e.data.is_local??!1;_(null),this.setOperationalStatusAssistantId(e.data.id);let r=b.getState();r.upsertFromApi(e.data),r.setActiveAssistantId(e.data.id),this.transition({kind:`active`,isLocal:n,maintenanceMode:{enabled:t?.enabled}}),n?this.startHealthHeartbeat(e.data.id):this.probeReachability(e.data.id)}projectSelfHosted(e){this.setOperationalStatusAssistantId(null),_({url:e.data.ingress_url,token:e.data.platform_actor_token});let t=b.getState();t.upsertFromApi(e.data),t.setActiveAssistantId(e.data.id),this.transition({kind:`self_hosted`}),this.startHealthHeartbeat(e.data.id)}applyGatewayAuthShortCircuit(){let e=window.location.origin,t=`self`,n=ue();if(v())e=Ft();else{let r=g(),i=be(r);i&&(e=i,t=r?.assistantId??t,pe(r)!=null&&(n=null))}_({url:e,token:n}),this.setOperationalStatusAssistantId(null),b.getState().setActiveAssistantId(t),this.transition({kind:`active`,isLocal:!0}),this.startHealthHeartbeat(t)}async applyServerStateUpdate(e){let t=this.generation,n=lt(e);if(!(n.kind===`error`&&n.transient&&this.degradeOnTransportFailure())&&(e.ok?this.setOperationalStatusAssistantId(e.data.id):this.setOperationalStatusAssistantId(null),n.kind!==`auto_hatch`)){if(n.kind===`active`&&e.ok){this.projectActive(e);return}if(n.kind===`self_hosted`&&e.ok){this.projectSelfHosted(e);return}t===this.generation&&n.kind!==`active`&&this.transition(n)}}async probeReachability(e){if(!this.reachabilityProbeInFlightIds.has(e)){this.reachabilityProbeInFlightIds.add(e);try{let t=this.generation,n=this.state.kind===`self_hosted`||this.state.kind===`active`&&this.state.isLocal,r=n?g()?.assistantId??e:e,i=!v()&&n?await ie(r).catch(()=>null):null,a=i?.ok&&i.state===`upgrading`?`upgrading`:`unreachable`;if(a!==`upgrading`)try{let t=await Pe(e);if(!t.ok&&(t.status===401||t.status===403)){this.probeFailureStreak=0,v()&&Re();return}a=Et(t)}catch{a=`unreachable`}if(a===`unreachable`&&!i&&!v()&&(i=await ie(r).catch(()=>null)),a===`unreachable`&&i?.ok)switch(i.state){case`healthy`:a=`healthy`;break;case`sleeping`:case`starting`:case`upgrading`:case`unhealthy`:case`crashed`:a=i.state;break;case`unknown`:break}if(t!==this.generation||b.getState().activeAssistantId!==e)return;if(a===`unreachable`){this.probeFailureStreak+=1;let e=this.state.kind===`self_hosted`||this.state.kind===`active`&&this.state.isLocal?this.state.health:void 0;if(this.probeFailureStreak<2&&(e===`healthy`||e===`unhealthy`))return}else this.probeFailureStreak=0;if(this.state.kind===`self_hosted`){this.state.health!==a&&this.transition({...this.state,health:a});return}if(this.state.kind!==`active`)return;let o=a===`healthy`||a===`unhealthy`;if(this.state.reachable===o&&this.state.health===a)return;this.transition({...this.state,reachable:o,health:a})}finally{this.reachabilityProbeInFlightIds.delete(e)}}}cancelProbeTimer(){this.probeTimer&&=(clearTimeout(this.probeTimer),null)}startProbeLoop(e){if(this.probeLoopAssistantId===e)return;this.cancelProbeTimer(),this.probeLoopAssistantId=e;let t=Date.now(),n=()=>{this.probeLoopAssistantId=null},r=async()=>{if(this.state.kind!==`active`||this.state.reachable===!0){n();return}if(Date.now()-t>Nt){n();return}await this.probeReachability(e);let i=this.state;if(i.kind!==`active`||i.reachable===!0){n();return}if(Date.now()-t>Nt){n();return}this.probeTimer=setTimeout(()=>void r(),Mt)};this.probeTimer=setTimeout(()=>void r(),Mt)}startHealthHeartbeat(e){if(this.healthHeartbeatId===e)return;this.cancelHealthHeartbeat(),this.healthHeartbeatId=e;let t=this.healthHeartbeatToken,n=async()=>{t===this.healthHeartbeatToken&&(await this.probeReachability(e),t===this.healthHeartbeatToken&&(this.healthHeartbeatTimer=setTimeout(()=>void n(),Pt)))};n()}cancelHealthHeartbeat(){this.healthHeartbeatToken++,this.healthHeartbeatId=null,this.probeFailureStreak=0,this.healthHeartbeatTimer&&=(clearTimeout(this.healthHeartbeatTimer),null)}onUnreachable(){this.triggerReachabilityProbe()}triggerReachabilityProbe(){if(this.state.kind!==`active`)return;let e=b.getState().activeAssistantId;if(e){if(this.transition({...this.state,reachable:!1}),this.reachabilityProbeInFlightIds.has(e)||(this.probeFailureStreak=Math.max(this.probeFailureStreak,1)),this.healthHeartbeatId===e){this.probeReachability(e);return}this.startProbeLoop(e)}}setLocalAssistantUpgradeInProgress(e,t){if(b.getState().activeAssistantId===e){if(!t){this.probeReachability(e);return}if(this.state.kind===`self_hosted`){this.transition({...this.state,health:`upgrading`});return}this.state.kind===`active`&&this.state.isLocal&&this.transition({...this.state,reachable:!1,health:`upgrading`})}}__resetForTesting(){this.initializingTimeout&&=(clearTimeout(this.initializingTimeout),null),this.cancelProbeTimer(),this.cancelHealthHeartbeat(),this.probeLoopAssistantId=null,this.reachabilityProbeInFlightIds.clear(),this.clearErrorRetry(!0),this.state={kind:`loading`},this.generation=0,this.ready=!1,w.setState({expectingFirstMessage:!1,operationalStatusAssistantId:null}),this.inputs={sessionStatus:`initializing`,hasPlatformSession:!1,queryClient:null},w.setState({assistantState:this.state}),b.setState({activeAssistantId:null})}setOperationalStatusAssistantId(e){w.getState().operationalStatusAssistantId!==e&&w.setState({operationalStatusAssistantId:e})}},It=`vellum_active_organization_id`;function Lt(){return globalThis.sessionStorage===void 0?null:globalThis.sessionStorage}function Rt(){let e=Lt();if(!e)return null;try{return e.getItem(It)}catch{return null}}function zt(e){let t=Lt();if(t)try{t.setItem(It,e)}catch{}}function Bt(){let e=Lt();if(e)try{e.removeItem(It)}catch{}}function Vt(e,t){return e.length===0?null:t&&e.some(e=>e.id===t)?t:e[0].id}var k=f(d()((e,t)=>({organizations:[],currentOrganizationId:null,persistedOrganizationId:Rt(),status:`idle`,error:null,fetchOrganizations:async(n,r)=>{e({status:`loading`,error:null});try{let i=await Ne(),a=i.data===void 0?i.response?.status??null:null,o=a!==null&&D({ok:!1,status:a})?a:null,s=i.data?.results??[],c=Vt(s,t().currentOrganizationId??t().persistedOrganizationId),l=c?{ok:!0}:o===null?{ok:!1,kind:`unavailable`}:{ok:!1,kind:`rejected`,status:o},u=null;c||(u=o===null?`No organization available for this user.`:`Platform session was rejected (HTTP ${o}).`);let d=n?.()??!0,f=d||((r??n)?.()??!0);return(c?!f:!d)?(e({status:`error`,error:u??`Organization fetch superseded.`}),l):(c&&zt(c),o!==null&&Bt(),e({organizations:s,currentOrganizationId:c,persistedOrganizationId:o===null?c??t().persistedOrganizationId:null,status:c?`ready`:`error`,error:u}),l)}catch(t){return e({status:`error`,error:t instanceof Error&&t.message?t.message:`Failed to load organizations.`}),{ok:!1,kind:`unavailable`}}},setCurrentOrganizationId:n=>{let{organizations:r}=t();r.some(e=>e.id===n)&&(zt(n),e({currentOrganizationId:n,persistedOrganizationId:n,status:`ready`}))},clearOrganization:()=>{Bt(),e({organizations:[],currentOrganizationId:null,persistedOrganizationId:null,status:`idle`,error:null})}})));function Ht(e){return e.currentOrganizationId??e.persistedOrganizationId}function A(){return Ht(k.getState())}function Ut(){return k(Ht)}function Wt(){k.getState().clearOrganization()}function Gt(){let e=0,t=k.subscribe(t=>{(t.status===`ready`||t.status===`error`)&&(e=Date.now())}),n=$.subscribe((e,t)=>{let n=E(e.platformSession),r=E(t.platformSession);n&&(!r||e.user?.id!==t.user?.id)&&k.getState().fetchOrganizations()}),r=()=>{if(!E($.getState().platformSession))return;let{status:t}=k.getState();(t===`ready`||t===`error`)&&Date.now()-e>1e4&&k.getState().fetchOrganizations()},i=Le(`app.resume`,()=>{r()});return()=>{t(),n(),i()}}function Kt(e){let{assistants:t,selectedAssistantId:n,assistantsHydrated:r}=b.getState(),i=Te(t,e),a=e=>i.some(t=>t.id===e);if(n!==null){let e=t.some(e=>e.id===n);if(a(n)||!e&&!r)return n}let o=_e()?.assistantId??null;return o!==null&&a(o)?o:i[0]?.id??null}function qt(){let e=Ut(),t=ze.use.multiPlatformAssistant(),n=ze.use.assistantSwitcher();return b.use.selectedAssistantId(),b.use.assistants(),b.use.assistantsHydrated(),(t||n)&&!p()&&e?Kt(e):null}async function j(e){b.getState().setSelectedAssistant(e),e!==null&&await ae(e)}var Jt=`vellum:auth:userSnapshot`;function Yt(e){if(e)try{localStorage.setItem(Jt,JSON.stringify(e))}catch{}}function Xt(){try{let e=localStorage.getItem(Jt);if(!e)return null;let t=JSON.parse(e);return!t||typeof t!=`object`?null:{kind:`platform`,id:typeof t.id==`string`?t.id:null,username:typeof t.username==`string`?t.username:null,email:typeof t.email==`string`?t.email:null,isStaff:t.isStaff===!0,firstName:typeof t.firstName==`string`?t.firstName:``,lastName:typeof t.lastName==`string`?t.lastName:``}}catch{return null}}function M(){try{localStorage.removeItem(Jt)}catch{}}function Zt(e,t={}){let n={...e??{}},r=t.includeSelfHostedActorToken===!1?null:Se();if(r)return n.Authorization=`Bearer ${r}`,n;let i=t.organizationId??A();i&&(n[`Vellum-Organization-Id`]=i);let a=Ue();return a&&(n[`X-Session-Token`]=a),n}async function Qt(e,t={}){let n=Zt(e,t);if(n.Authorization||y())return n;await We();let r=Ve();return r&&(n[`X-CSRFToken`]=r),n}var $t;function en(){return y()?($t===void 0&&($t=window.__VELLUM_CONFIG__?.deviceId??null),$t):null}var tn=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,nn=`X-Vellum-Electron-Renderer-Origin`,rn=new Map,an=[2e3,5e3,15e3,3e4,6e4],on=new Set;async function sn(e,t={}){if(!h()||v()||fe()||Cn(e))return e;let n=ln(e);if(!n)return e;let r=rn.get(n.assistantId);if(r)return r;let i=un(n,{allowGatewayRepair:t.allowGatewayRepair??!0});rn.set(n.assistantId,i);try{return await i}catch(e){throw rn.delete(n.assistantId),e}}function cn(e,t={}){if(!h()||v()||fe())return;let n=e;if(!n){let e=g();if(!e||!me(e))return;n=e.assistantId}if(on.has(n))return;on.add(n);let r=n;(async()=>{try{for(let e=0;;e++)try{await sn(r,{allowGatewayRepair:t.allowGatewayRepair??!1});return}catch(n){let r=an[e];if(r===void 0){(t.onError??(e=>{console.warn(`local assistant platform bootstrap failed`,e)}))(n);return}console.warn(`local assistant platform bootstrap attempt ${e+1} failed, retrying in ${r}ms`,n),await new Promise(e=>setTimeout(e,r))}}finally{on.delete(r)}})()}function ln(e){let t=_e();if(t?.assistantId===e&&me(t))return t;let n=g();return n?.assistantId===e&&me(n)?n:null}async function un(e,t){let n=await fn(e,t),r=await pn(n,e.assistantId),i=r?.assistantId&&Cn(r.assistantId)?r.assistantId:null;if(i&&r?.hasAssistantApiKey!==!1){let t=r?.organizationId??e.platformOrganizationId??null;return t&&await dn(e,{platformAssistantId:i,platformBaseUrl:r?.baseUrl??re(),organizationId:t}),i}let a=await mn(r?.organizationId??null,e);if(!a)throw Error(`Sign in to Vellum and select an organization to register this local assistant.`);let o=r?.clientInstallationId??en()??null;if(!o)throw Error(`Unable to identify this local assistant host for platform registration.`);let s=await hn(e,a,o),c=N(s.assistant?.id,s.assistant_id,s.id),l=i??c;if(!l||!Cn(l))throw Error(`The platform registration response did not include an assistant UUID.`);let u=P(s.assistant_api_key);!u&&r?.hasAssistantApiKey!==!0&&(u=await gn(e,a,o));let d=r?.baseUrl??re();return await vn(n,{assistantApiKey:u,platformAssistantId:l,platformBaseUrl:d,organizationId:a,webhookSecret:P(s.webhook_secret)}),await dn(e,{platformAssistantId:l,platformBaseUrl:d,organizationId:a}),l}async function dn(e,t){await se({...e,platformAssistantId:t.platformAssistantId,platformBaseUrl:t.platformBaseUrl,platformOrganizationId:t.organizationId}).catch(e=>{console.warn(`local assistant platform lockfile update failed`,e)})}async function fn(e,t){let n=ve(),r=Se();if(t.allowGatewayRepair&&(!n||!r)&&(await we(e),n=ve(),r=Se()),!n||!r){let t=de(e);t&&(n=`${window.location.origin}${t}`)}if(!n||!r)throw Error(`Unable to reach the local assistant for platform identity setup.`);return{gatewayUrl:n,actorToken:r}}async function pn(e,t){let n=Sn(e.gatewayUrl,`/v1/assistants/${encodeURIComponent(t)}/platform/status`),r=await fetch(n,{headers:{Accept:`application/json`,Authorization:`Bearer ${e.actorToken}`},credentials:`omit`}).catch(()=>null);if(!r?.ok)return null;let i=await r.json().catch(()=>null);return{assistantId:N(i?.assistantId,i?.assistant_id),baseUrl:N(i?.baseUrl,i?.base_url),organizationId:N(i?.organizationId,i?.organization_id),hasAssistantApiKey:wn(i?.hasAssistantApiKey,i?.has_assistant_api_key),clientInstallationId:N(i?.clientInstallationId,i?.client_installation_id)}}async function mn(e,t){return(e??t.platformOrganizationId??A()??t.organizationId??null)||(await k.getState().fetchOrganizations().catch(()=>{}),A()??t.platformOrganizationId??t.organizationId??null)}async function hn(e,t,n){return await _n(`/v1/assistants/self-hosted-local/ensure-registration/`,e,t,n)}async function gn(e,t,n){return P((await _n(`/v1/assistants/self-hosted-local/reprovision-api-key/`,e,t,n)).provisioning?.assistant_api_key)}async function _n(e,t,n,r){let i=new Headers({...await Qt({Accept:`application/json`,"Content-Type":`application/json`},{includeSelfHostedActorToken:!1,organizationId:n})}),a=Ue();if(y()){if(!a)throw Error(`Sign in to Vellum to register this local assistant.`);i.set(nn,`${window.location.protocol}//${window.location.host}`)}let o=await fetch(new URL(e,window.location.origin).toString(),{method:`POST`,headers:i,credentials:y()?`omit`:`same-origin`,body:JSON.stringify({client_installation_id:r,runtime_assistant_id:t.assistantId,client_platform:y()?`macos`:`web`})}).catch(e=>{throw Error(`Unable to reach the platform registration endpoint: ${xn(e)}`)});if(!o.ok){let e=await bn(o);throw Error(`Unable to register the local assistant with the platform (HTTP ${o.status})${e?`: ${e}`:`.`}`)}try{return await o.json()}catch(e){throw Error(`Unable to read the platform registration response: ${xn(e)}`)}}async function vn(e,t){let n=[[`vellum:platform_assistant_id`,t.platformAssistantId],[`vellum:platform_base_url`,t.platformBaseUrl],[`vellum:platform_organization_id`,t.organizationId],[`vellum:webhook_secret`,t.webhookSecret]];await Promise.all(n.filter(e=>!!e[1]).map(([t,n])=>yn(e,t,n))),t.assistantApiKey&&await yn(e,`vellum:assistant_api_key`,t.assistantApiKey)}async function yn(e,t,n){let r=await fetch(Sn(e.gatewayUrl,`/v1/secrets`),{method:`POST`,headers:{Accept:`application/json`,Authorization:`Bearer ${e.actorToken}`,"Content-Type":`application/json`},credentials:`omit`,body:JSON.stringify({type:`credential`,name:t,value:n})}).catch(e=>{throw Error(`Unable to reach the local assistant while storing ${t}: ${xn(e)}`)});if(!r.ok){let e=await bn(r);throw Error(`Unable to store ${t} on the local assistant (HTTP ${r.status})${e?`: ${e}`:`.`}`)}return!0}async function bn(e){if((e.headers.get(`content-type`)??``).includes(`application/json`)){let t=await e.json().catch(()=>null),n=t&&typeof t==`object`&&`detail`in t?P(t.detail):null,r=t&&typeof t==`object`&&`code`in t?P(t.code):null;return n&&r?`${n} (${r})`:n||r||JSON.stringify(t)}return(await e.text().catch(()=>``)).slice(0,300)}function xn(e){return e instanceof Error?e.message:String(e)}function Sn(e,t){let n=new URL(e);return n.pathname=`${n.pathname.replace(/\/$/,``)}${t}`,n.toString()}function Cn(e){return tn.test(e)}function N(...e){for(let t of e){let e=P(t);if(e)return e}return null}function P(e){return typeof e==`string`&&e.trim()?e.trim():null}function wn(...e){for(let t of e)if(typeof t==`boolean`)return t;return null}var Tn={idle:``,connecting:`Connecting…`,listening:`Listening…`,transcribing:`Transcribing…`,thinking:`Thinking…`,speaking:`Speaking…`,ending:`Ending…`,failed:``};function En(e,t){return t&&e===`connecting`?`Reconnecting…`:Tn[e]}function Dn(e,t,n){return En(e===`speaking`&&!n?`thinking`:e,t)}function F(e){return e!==`idle`&&e!==`failed`}function On(e){return e===`listening`||e===`transcribing`||e===`thinking`||e===`speaking`}function kn(e,t){if(!F(e.state))return!1;let n=t??null;return n===e.conversationId||n===e.startedConversationId}var An={state:`idle`,assistantAudioActive:!1,activityLabel:``,pendingApprovalRequestId:null,reconnecting:!1,assistantId:null,conversationId:null,startedConversationId:null,photoRejectedSeq:0,photoRejectedReason:null,controls:null,partialTranscript:``,finalTranscript:``,assistantTranscript:``,inputAmplitude:0,muted:!1,outputMuted:!1,handsFree:!1,roomMinimized:!1,entryOrigin:null,lastTurnLatency:null,outputAmplitudeProvider:null,playbackProgressProvider:null,error:null},I=f(d()(e=>({...An,starter:null,setState:t=>e({state:t}),setAssistantAudioActive:t=>e({assistantAudioActive:t}),setActivityLabel:(t,n=null)=>e({activityLabel:t,pendingApprovalRequestId:n}),setReconnecting:t=>e({reconnecting:t}),setSessionContext:(t,n)=>e({assistantId:t,conversationId:n,startedConversationId:n,muted:!1,outputMuted:!1}),setConversationId:t=>e({conversationId:t}),notePhotoRejected:t=>e(e=>({photoRejectedSeq:e.photoRejectedSeq+1,photoRejectedReason:t})),setControls:t=>e({controls:t}),setStarter:t=>e({starter:t}),setPartialTranscript:t=>e({partialTranscript:t}),setFinalTranscript:t=>e({finalTranscript:t}),appendAssistantTranscript:t=>e(e=>({assistantTranscript:e.assistantTranscript+t})),clearAssistantTranscript:()=>e({assistantTranscript:``}),clearUserTranscripts:()=>e({partialTranscript:``,finalTranscript:``}),setInputAmplitude:t=>e({inputAmplitude:t}),setMuted:t=>e({muted:t}),setOutputMuted:t=>e({outputMuted:t}),setHandsFree:t=>e({handsFree:t}),setRoomMinimized:t=>e({roomMinimized:t}),setEntryOrigin:t=>e({entryOrigin:t}),setLastTurnLatency:t=>e({lastTurnLatency:t}),setOutputAmplitudeProvider:t=>e({outputAmplitudeProvider:t}),setPlaybackProgressProvider:t=>e({playbackProgressProvider:t}),fail:t=>e({state:`failed`,error:t}),reset:()=>e({...An})})));function jn(e){let t=!1,n=!1,r=I.subscribe(()=>{t||(t=!0,queueMicrotask(()=>{t=!1,!n&&e(I.getState())}))});return()=>{n=!0,r()}}function Mn(){return I.getState().inputAmplitude}function Nn(){return I.getState().outputAmplitudeProvider?.()??0}function Pn(){return I.getState().playbackProgressProvider?.()??null}function Fn(){I.getState().controls?.stop()}function In(){let{state:e,setRoomMinimized:t}=I.getState();F(e)&&t(!0)}function Ln(){let{state:e,setRoomMinimized:t}=I.getState();F(e)&&t(!1)}function Rn(e){I.getState().controls?.setMuted(e)}function zn(e){I.getState().controls?.setOutputMuted(e)}function Bn(e){return I.getState().controls?.attachImage(e)??!1}function Vn(e){I.getState().setEntryOrigin(e)}function Hn(){I.getState().reset()}function Un(e){return I(t=>kn(t,e))}function Wn(){let e={},t=Object.keys(Tn).filter(F);for(let n of t)e[n]=Dn(n,!1,!0);return e}function Gn(e){let t=JSON.parse(e);return typeof t.token==`string`&&typeof t.assistantId==`string`?{token:t.token,assistantId:t.assistantId}:null}var Kn=$e({key:`vellum:live_activity_registration`,scope:`user`,parse:Gn,serialize:JSON.stringify,fallback:null}),qn=null,Jn=new Set;function Yn(e){Jn.add(e),e.finally(()=>{Jn.delete(e)})}var Xn=Promise.resolve();async function Zn(e){let t=Xn.then(()=>Qn(e));Xn=t.catch(()=>void 0),Yn(t),await t}async function Qn({token:e,assistantId:t,conversationId:n,accentHex:r,muted:i}){try{let{App:a}=await l(async()=>{let{App:e}=await import(`./esm-RwtNn1Lo.js`);return{App:e}},__vite__mapDeps([0,1,2])),{id:o}=await a.getInfo(),s=await Qe(o),u=await ke({path:{assistant_id:t},body:{token:e,bundle_id:o,apns_environment:s,conversation_id:n,labels:Wn(),accent_hex:r,muted:i},throwOnError:!1});if(u.error){c(u.error,{context:`live_activity_push_registration`,level:`warning`,bestEffort:!0});return}qn={token:e,assistantId:t},Kn.save(qn)}catch(e){c(e,{context:`live_activity_push_registration`,level:`warning`,bestEffort:!0})}}async function $n(){Jn.size>0&&await Promise.allSettled([...Jn]);let e=qn??Kn.load();if(e!==null){qn=null,Kn.remove();try{await Ae({path:{assistant_id:e.assistantId,token:e.token},throwOnError:!1})}catch(e){c(e,{context:`live_activity_push_unregistration`,level:`warning`,bestEffort:!0})}}}function er(e){return e}function tr(e,t,n){if(!e||typeof e!=`object`||Array.isArray(e))return{code:null,message:n};let r=er(e),i=r[t];if(Array.isArray(i)&&i.length>0){let e=i[0];if(typeof e==`string`)return{code:null,message:e};if(e&&typeof e==`object`&&!Array.isArray(e)){let t=er(e),r=t.code,i=t.string??t.message;return{code:typeof r==`string`?r:null,message:typeof i==`string`?i:n}}}return typeof r.detail==`string`?{code:null,message:r.detail}:{code:null,message:n}}var nr={too_short:`Must be at least 3 characters.`,too_long:`Must be at most 30 characters.`,invalid_chars:`Use only lowercase letters, digits, hyphens, and underscores.`,leading_underscore:`Cannot start with an underscore.`,trailing_underscore:`Cannot end with an underscore.`,leading_hyphen:`Cannot start with a hyphen.`,trailing_hyphen:`Cannot end with a hyphen.`,all_digits:`Cannot be all digits.`,reserved:`This handle is reserved.`,taken:`This handle is already taken.`};async function rr(){let{data:e,error:t,response:n}=await Oe.get({url:`/v1/user/me/`,throwOnError:!1});if(Ee(n,t,`Failed to load profile.`),!n.ok||!e)throw new De(n.status,x(t,n,`Failed to load profile.`));return e}var ir=`Please choose a different handle.`;async function ar(e){let{data:t,error:n,response:r}=await Oe.patch({url:`/v1/user/me/`,body:e,throwOnError:!1});if(!r)return{kind:`error`,message:x(n,void 0,`Failed to save profile.`)??`Failed to save profile.`};if(r.ok&&t)return{kind:`ok`,data:t};if(r.status===409){let{message:e}=tr(n,`username`,nr.taken);return{kind:`taken`,message:e}}if(r.status===400){let{code:e,message:t}=tr(n,`username`,ir);return{kind:`invalid`,code:e,message:t}}return{kind:`error`,message:x(n,r,`Failed to save profile.`)}}async function or(){let{data:e,error:t,response:n}=await je({throwOnError:!1});if(Ee(n,t,`Failed to load consent.`),!n.ok||!e)throw new De(n.status,x(t,n,`Failed to load consent.`));return e}async function sr(e){await Me({body:e,throwOnError:!0})}async function cr(e,t){let{data:n,error:r,response:i}=await Oe.get({url:`/v1/user/username-available/`,query:{username:e},signal:t,throwOnError:!1});if(Ee(i,r,`Failed to check handle availability.`),!i.ok||!n)throw new De(i.status,i.status===429?`Too many checks — try again in a moment.`:x(r,i,`Failed to check handle availability.`));return n}function lr(e){i(`diagnosticsReporting`,e)}function ur(e,t){let n=mr(e);return n!==null&&t(n),lr(dr(n,e)),n}function dr(e,t){return e??a(`shareDiagnostics`,!0)?t.hasServerRecord?t.diagnosticsEffective:!0:!1}function fr(e,t){ur({shareDiagnostics:e,diagnosticsEffective:e,hasServerRecord:!0},t)}function pr(){o(`diagnosticsReporting`,``)===``&&lr(!1)}function mr(e){let{shareDiagnostics:t,hasServerRecord:n}=e;return t===!1?!1:n&&t===!0?!0:null}var hr=`2026-06-08`,gr=`2026-06-22`,_r=`2026-06-18`,vr=`2026-06-18`,yr=`2026-06-08`,L={tos:hr,privacyPolicy:gr,aiDataSharing:gr,shareAnalytics:_r,shareDiagnostics:vr};function br(e){return{tos:e?.tos||`2026-06-08`,privacyPolicy:e?.privacy_policy||`2026-06-22`,aiDataSharing:e?.ai_data_sharing||`2026-06-22`,shareAnalytics:e?.share_analytics||`2026-06-18`,shareDiagnostics:e?.share_diagnostics||`2026-06-18`}}function xr(){return{...L}}function R(e,t){return`device:consent:${e}:${t}`}function z(e){switch(e){case`tos`:return L.tos;case`privacy_policy`:return L.privacyPolicy;case`ai_data_sharing`:return L.aiDataSharing;case`share_diagnostics`:return L.shareDiagnostics}}var Sr=/^\d{4}-\d{2}-\d{2}$/;function Cr(t,n){let r=e(R(t,n),``);return Sr.test(r)?r:``}function B(e,t){return H(Cr(e,t),z(e))}function wr(e){return`device:consent:ai:v${yr}:${e}`}function V(e,i,a){let o=`device:consent:${e}:v`,s=`:${i}`,c=[],l=``;for(let e=0;e<localStorage.length;e++){let t=localStorage.key(e);if(!t||!t.startsWith(o)||!t.endsWith(s))continue;let n=t.slice(o.length,t.length-s.length);Sr.test(n)&&(c.push(t),r(t,!1)&&n>l&&(l=n))}if(l)for(let e of a)Cr(e,i)||t(R(e,i),l);for(let e of c)n(e)}function Tr(e){if(typeof window>`u`||!e)return{tos:!1,privacy:!1,diagnosticsCurrent:!1};try{V(`tos`,e,[`tos`]),V(`privacy`,e,[`privacy_policy`,`ai_data_sharing`]),V(`share_diagnostics`,e,[`share_diagnostics`]),V(`share_analytics`,e,[]),r(wr(e),!1)&&n(wr(e));let i=B(`tos`,e),a=B(`privacy_policy`,e)&&B(`ai_data_sharing`,e),o=B(`share_diagnostics`,e);if(i||a)return{tos:i,privacy:a,diagnosticsCurrent:o};let s=r(`vellum:onboarding:tosAccepted`,!1),c=r(`vellum:onboarding:aiDataConsent`,!1);return s||c?(s&&t(R(`tos`,e),hr),{tos:s&&B(`tos`,e),privacy:!1,diagnosticsCurrent:o}):{tos:!1,privacy:!1,diagnosticsCurrent:o}}catch{return{tos:!1,privacy:!1,diagnosticsCurrent:!1}}}function Er(e,r,i){if(!(typeof window>`u`||!e))try{r?t(R(`tos`,e),z(`tos`)):n(R(`tos`,e)),i?(t(R(`privacy_policy`,e),z(`privacy_policy`)),t(R(`ai_data_sharing`,e),z(`ai_data_sharing`))):(n(R(`privacy_policy`,e)),n(R(`ai_data_sharing`,e)))}catch{}}function Dr(e){if(!(typeof window>`u`||!e))try{t(R(`share_diagnostics`,e),z(`share_diagnostics`))}catch{}}function Or(e){if(n(`vellum:onboarding:tosAccepted`),n(`vellum:onboarding:aiDataConsent`),n(`vellum:onboarding:selectedVersion`),!(typeof window>`u`||!e))try{n(R(`tos`,e)),n(R(`privacy_policy`,e)),n(R(`ai_data_sharing`,e)),n(R(`share_diagnostics`,e)),n(wr(e)),V(`tos`,e,[]),V(`privacy`,e,[]),V(`share_diagnostics`,e,[]),V(`share_analytics`,e,[])}catch{}}function H(e,t){return e>=t}function kr(e){if(!e)return{tos:!1,privacy:!1,shareAnalytics:null,shareDiagnostics:null,analyticsEffective:!0,diagnosticsEffective:!0,analyticsCurrent:!1,diagnosticsCurrent:!1,analyticsVersionCurrent:!1,diagnosticsVersionCurrent:!1,hasServerRecord:!1};let t=br(e.required_versions);L=t;let n=H(e.share_analytics_accepted_version,t.shareAnalytics),r=H(e.share_diagnostics_accepted_version,t.shareDiagnostics),i=!!e.tos_accepted_version||!!e.privacy_policy_accepted_version||!!e.ai_data_sharing_accepted_version||!!e.share_analytics_accepted_version||!!e.share_diagnostics_accepted_version||e.share_analytics===!1||e.share_diagnostics===!1||e.share_analytics_effective===!1||e.share_diagnostics_effective===!1;return{tos:H(e.tos_accepted_version,t.tos),privacy:H(e.privacy_policy_accepted_version,t.privacyPolicy)&&H(e.ai_data_sharing_accepted_version,t.aiDataSharing),shareAnalytics:e.share_analytics,shareDiagnostics:e.share_diagnostics,analyticsEffective:e.share_analytics_effective??e.share_analytics!==!1,diagnosticsEffective:e.share_diagnostics_effective??e.share_diagnostics!==!1,analyticsCurrent:e.share_analytics===null||n,diagnosticsCurrent:e.share_diagnostics===null||r,analyticsVersionCurrent:n,diagnosticsVersionCurrent:r,hasServerRecord:i}}function Ar(e,t){let{legal:n,shareAnalytics:r,shareDiagnostics:i}=e,a=C.getState();n&&(a.setTosAccepted(n.tos),a.setPrivacyConsent(n.privacy),Er(t.userId,n.tos,n.privacy)),r!==void 0&&(a.setShareAnalytics(r),a.setPendingAnalyticsOptIn(r===!0)),i!==void 0&&fr(i,a.setShareDiagnostics),n?(a.setAnalyticsConsentCurrent(!0),a.setDiagnosticsConsentCurrent(!0),a.setHasConsentRecord(!0),a.setConsentHydrated(!0)):t.hasPlatformSession&&(r!==void 0&&a.setAnalyticsConsentCurrent(!0),i!==void 0&&a.setDiagnosticsConsentCurrent(!0)),i!==void 0&&(n||t.hasPlatformSession)&&Dr(t.userId),t.hasPlatformSession&&sr({...n?{tos_accepted_version:n.tos?L.tos:``,privacy_policy_accepted_version:n.privacy?L.privacyPolicy:``,ai_data_sharing_accepted_version:n.privacy?L.aiDataSharing:``}:{},...r===void 0?{}:{share_analytics:r,share_analytics_accepted_version:L.shareAnalytics},...i===void 0?{}:{share_diagnostics:i,share_diagnostics_accepted_version:L.shareDiagnostics}}).catch(()=>{})}function jr(e){Ar({legal:{tos:e.tos,privacy:e.privacy},...e.shareAnalytics===null?{}:{shareAnalytics:e.shareAnalytics},...e.shareDiagnostics===null?{}:{shareDiagnostics:e.shareDiagnostics}},{userId:e.userId,hasPlatformSession:e.hasPlatformSession})}function Mr(e,t,n){Ar(e===`share_analytics`?{shareAnalytics:t}:{shareDiagnostics:t},n)}var Nr=`vellum.pro-takeover-avatar`,Pr=1800*1e3,U=null,W=!1,Fr=0;function Ir(){return Fr}function Lr(e){let t={...e,savedAt:Date.now()};U=t,Fr+=1;try{sessionStorage.setItem(Nr,JSON.stringify(t)),W=!1}catch{W=!0}}function Rr(){if(W)return Vr();let e;try{if(typeof sessionStorage>`u`)return Vr();e=sessionStorage.getItem(Nr)}catch{return Vr()}if(!e)return U=null,null;let t;try{t=JSON.parse(e)}catch{return G(),null}return!Ur(t)||Date.now()-t.savedAt>Pr?(G(),null):t}function G(){U=null,W=!1,Fr+=1;try{sessionStorage.removeItem(Nr)}catch{}}function zr(e){let{activeAssistantId:t,assistants:n,assistantsHydrated:r}=b.getState();if(!t||!r||n.length!==1||n[0]?.id!==t){G();return}let i=Br(e,t);if(!i||i.customImageUrl!=null||i.components==null){G();return}Lr({assistantId:t,components:i.components,traits:i.traits})}function Br(e,t){let n=e.getQueryCache().findAll({queryKey:nt(t)}),r,i=-1/0;for(let e of n){let t=e.state.data;t===void 0||e.state.dataUpdatedAt<i||(r=t,i=e.state.dataUpdatedAt)}return r}function Vr(){return U?Date.now()-U.savedAt>Pr?(U=null,null):U:null}function Hr(e){return Date.now()-e.savedAt<=Pr}function Ur(e){if(typeof e!=`object`||!e)return!1;let t=e;if(typeof t.assistantId!=`string`||typeof t.savedAt!=`number`||t.traits!==null&&!tt(t.traits))return!1;let n=t.components;if(typeof n!=`object`||!n)return!1;let r=n;if(!Gr(r.bodyShapes,Jr)||!Gr(r.eyeStyles,Yr)||!Gr(r.colors,Xr)||!Array.isArray(r.faceCenterOverrides)||!r.faceCenterOverrides.every(Zr))return!1;if(t.traits!==null){let e=t.traits;return Wr(r.bodyShapes,e.bodyShape)&&Wr(r.eyeStyles,e.eyeStyle)&&Wr(r.colors,e.color)}return!0}function Wr(e,t){return e.some(e=>e.id===t)}function Gr(e,t){return Array.isArray(e)&&e.length>0&&e.every(t)}function Kr(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.x==`number`&&typeof t.y==`number`}function qr(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.width==`number`&&typeof t.height==`number`}function Jr(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.id==`string`&&typeof t.svgPath==`string`&&qr(t.viewBox)&&Kr(t.faceCenter)}function Yr(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.id!=`string`||!qr(t.sourceViewBox)||!Kr(t.eyeCenter)||!Array.isArray(t.paths)?!1:t.paths.every(e=>{if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.svgPath==`string`&&typeof t.color==`string`})}function Xr(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.id==`string`&&typeof t.hex==`string`}function Zr(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.bodyShape==`string`&&typeof t.eyeStyle==`string`&&Kr(t.faceCenter)}var Qr=`vellum:`,$r=[`onboarding.`,`voice:`,`gw:`,`ff:client:`,`local:`,`integrations.`,`vellumDebug.`,`vellum_`],ei=new Set([`vellum_theme`,`vellum_share_analytics`,`vellum_share_diagnostics`,`vellum_biometric_enabled`,`vellum_llm_log_retention`,`vellum_timezone`,`vellum_media_embeds_enabled`,`vellum_media_embed_domains`,`onboarding.lastUserId`]);function ti(e){return e.startsWith(Qr)?!0:ei.has(e)?!1:$r.some(t=>e.startsWith(t))}function ni(){G(),et();try{sessionStorage.clear()}catch{}try{let e=[];for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);n&&ti(n)&&e.push(n)}e.forEach(e=>localStorage.removeItem(e))}catch{}}function ri(e){return e?.id??e?.email??e?.username??null}function K(e){return e?{kind:`platform`,id:ri(e),username:e.username??null,email:e.email??null,isStaff:e.is_staff??!1,firstName:e.first_name??``,lastName:e.last_name??``}:null}var ii=null,q=null,ai=!1,oi={kind:`local`,id:`gateway-local`,username:`local`,email:null,isStaff:!1,firstName:`Local`,lastName:`User`},J=e=>(Yt(e),{sessionStatus:`authenticated`,user:e,platformSession:`present`,platformSessionRestoredOffline:!1}),Y=()=>({sessionStatus:`authenticated`,user:oi}),X=()=>({sessionStatus:`unauthenticated`,user:null,platformSession:`absent`}),Z=e=>e===null||!e.ok&&!D(e);async function si(e){if(!Ue())return!1;let t=Xt();return t?(await Q(t.id),e({...J(t),platformSessionRestoredOffline:!0}),!0):!1}function ci(e){(!e||ii&&ii!==e)&&Wt(),ii=e}function li(){q?.postMessage(`auth-changed`)}function ui(e){let t=xr();return{...e.tos?{tos_accepted_version:t.tos}:{},...e.privacy?{privacy_policy_accepted_version:t.privacyPolicy,ai_data_sharing_accepted_version:t.aiDataSharing}:{},...e.shareValues&&e.shareValues.analytics!==null?{share_analytics:e.shareValues.analytics,share_analytics_accepted_version:_r}:{},...e.diagnostics?{share_diagnostics_accepted_version:t.shareDiagnostics,...e.shareValues&&e.shareValues.diagnostics!==null?{share_diagnostics:e.shareValues.diagnostics}:{}}:{}}}var di;async function Q(e){if(di!==void 0&&di!==e){let e=C.getState();e.setPendingAnalyticsOptIn(!1),e.setServerAnalyticsEffective(null),e.setServerDiagnosticsEffective(null)}if(di=e,e)try{let t=kr(await or()),n=C.getState(),r=n.shareAnalytics,i=n.shareDiagnostics;t.shareAnalytics===!0&&n.setPendingAnalyticsOptIn(!1),n.setServerAnalyticsEffective(t.analyticsEffective),n.setServerDiagnosticsEffective(t.diagnosticsEffective),t.hasServerRecord&&(t.shareAnalytics!==null||r!==!1)&&!(t.shareAnalytics===!1&&C.getState().pendingAnalyticsOptIn)&&n.setShareAnalytics(t.shareAnalytics),ur({shareDiagnostics:t.shareDiagnostics,diagnosticsEffective:t.diagnosticsEffective,hasServerRecord:t.hasServerRecord},n.setShareDiagnostics);let a=t.tos,o=t.privacy,s=t.analyticsCurrent,c=t.diagnosticsCurrent,l=t.hasServerRecord,u=t.shareDiagnostics!==null&&t.diagnosticsVersionCurrent;if(!t.hasServerRecord){let t=Tr(e);s=!0,c=!0,u=t.diagnosticsCurrent,t.tos&&t.privacy&&(a=!0,o=!0,l=!0,sr(ui({tos:!0,privacy:!0,diagnostics:u,shareValues:{analytics:r,diagnostics:i}})).catch(()=>{}))}else if(!a||!o||!c){let t=Tr(e),n=!a&&t.tos,r=!o&&t.privacy,i=!c&&t.diagnosticsCurrent;n&&(a=!0),r&&(o=!0),i&&(c=!0,u=!0),(n||r||i)&&sr(ui({tos:n,privacy:r,diagnostics:i})).catch(()=>{})}n.setTosAccepted(a),n.setPrivacyConsent(o),n.setAnalyticsConsentCurrent(s),n.setDiagnosticsConsentCurrent(c),n.setHasConsentRecord(l),Er(e,a,o),u&&Dr(e),ci(e),n.setConsentHydrated(!0);return}catch{}let t=Tr(e),n=C.getState();e?pr():(n.setPendingAnalyticsOptIn(!1),n.setServerAnalyticsEffective(null),n.setServerDiagnosticsEffective(null)),n.setTosAccepted(t.tos),n.setPrivacyConsent(t.privacy),n.setAnalyticsConsentCurrent(!0),n.setDiagnosticsConsentCurrent(!0),n.setHasConsentRecord(t.tos&&t.privacy),ci(e),n.setConsentHydrated(!0)}async function fi(e,t){try{let n=await k.getState().fetchOrganizations(e,t);if(!n.ok&&n.kind===`rejected`)return!0;let r=await Fe();if(D(r))return(e?.()??!0)&&k.getState().clearOrganization(),!0;(e?.()??!0)&&r.ok&&await oe(r.data,k.getState().currentOrganizationId??void 0,e)}catch{}return!1}var pi=0,mi=Promise.resolve();function hi(e,t={}){let n=++pi,r=()=>n!==pi;mi=S().then(async n=>{if(!r())if(n.ok&&n.data.user){let i=K(n.data.user),a=!1;if(h()){let e=!1,t=()=>!e&&!r(),n;try{await Promise.race([(async()=>{a=await fi(t,()=>!r())})(),new Promise((t,r)=>{n=setTimeout(()=>{e=!0,r(Error(`sync timeout`))},3e3)})])}catch{}finally{clearTimeout(n)}}if(r())return;if(a){M(),e({...T($.getState().sessionStatus)?Y():{},platformSession:`absent`,platformSessionRestoredOffline:!1});return}let o=t.setUserOnSuccess?{user:i}:{};t.setUserOnSuccess&&Yt(i),e({platformSession:`present`,platformSessionRestoredOffline:!1,...o}),cn()}else t.clearOnFailure&&e({platformSession:`absent`})}).catch(()=>{r()||t.clearOnFailure&&e({platformSession:`absent`})}).finally(()=>{r()||e(e=>e.platformSession===`unknown`?{platformSession:`absent`}:{})})}async function gi(){let e=mi;for(await e;mi!==e;)e=mi,await e}function _i(e,t){!h()||m()||ge().length>0?hi(e,t):e({platformSession:`absent`})}async function vi(e,t){await j(t),e(Y()),await O.checkAssistant()}async function yi(){try{if(await Re())return!0}catch{}return ue()!==null}var $=f(d()((e,t)=>({sessionStatus:`initializing`,user:null,platformSession:`unknown`,platformSessionRestoredOffline:!1,initSession:async()=>{if(v()){await yi()?e({...Y(),platformSession:`absent`}):e(X());return}if(m()){try{await ce(),e(Y())}catch{e({sessionStatus:`unauthenticated`,user:null})}_i(e);return}if(h()&&!m()){if(ge().length>0){let t=null;try{if(t=await S(),t.ok&&t.data.user){let n=K(t.data.user);if(!await fi()){await Q(n?.id??null),e(J(n));return}}}catch{}if(Z(t)){if(await si(e))return}else M();e(X());return}e(Y()),ai?e({platformSession:`absent`}):hi(e,{setUserOnSuccess:!0}),ai=!1;return}let t=null;try{if(t=await S(),t.ok&&t.data.user){let n=K(t.data.user);await Q(n?.id??null),e(J(n));return}}catch(e){console.error(`auth.initSession failed`,e)}if(!(Z(t)&&await si(e))){if(Be()&&Ge())try{let t=await Ye();if(t){He(t),await qe();let n=await S();if(n.ok&&n.data.user){let t=K(n.data.user);await Q(t?.id??null),e(J(t));return}}}catch(e){console.warn(`auth.initSession biometric recovery failed`,e)}await Q(null),Z(t)||M(),e(X())}},connectLocalAssistant:async n=>{await we(he().find(e=>e.assistantId===n)),await vi(e,n),At(t().platformSession,t().platformSessionRestoredOffline)&&cn(n),_i(e)},connectPairedAssistant:async t=>{let n=xe(t);if(!n||!Ce(n))throw Error(`Not a paired assistant`);await ee(n),await vi(e,t),_i(e)},connectPlatformAssistant:async t=>{let n=await S();if(!n.ok||!n.data.user)throw Error(`Platform authentication required`);let r=K(n.data.user),i=await k.getState().fetchOrganizations();if(!i.ok&&i.kind===`rejected`)throw Error(`Platform authentication required`);await j(t),await Q(r?.id??null),e(J(r))},refreshSession:async()=>{if(v())return await yi()?(e({...Y(),platformSession:`absent`}),!0):(e(X()),!1);if(p()){try{let t=g();t&&Ce(t)?await ee(t):await ne(le()),e({sessionStatus:`authenticated`})}catch{return e(X()),!1}return _i(e,{clearOnFailure:!0}),!0}let n=null;try{if(n=await S(),n.ok&&n.data.user){let t=K(n.data.user);if(!(h()&&await fi()))return await Q(t?.id??null),e(J(t)),!0}}catch(e){console.warn(`auth.refreshSession failed`,e)}if(Z(n))return T(t().sessionStatus);if(h()&&(m()||ge().length===0)){let n=T(t().sessionStatus);return n&&(M(),e({...Y(),platformSession:`absent`})),n}return M(),await Q(null),e(X()),!1},logout:async()=>{if(p()){O.resetForLogout(),_(null),await j(null),ye(),Wt(),ni(),e(X()),li();return}ai=!0,await Ze(),await $n();try{await Je()}finally{y()&&await window.vellum?.auth?.signOut?.(),h()&&!y()&&await te(),Ke(),Wt(),ni(),O.resetForLogout(),await j(null),e(X()),li()}}}))),bi=()=>T($.use.sessionStatus()),xi=()=>!Ot($.use.sessionStatus()),Si=()=>E($.use.platformSession()),Ci=()=>kt($.use.platformSession()),wi=()=>At($.use.platformSession(),$.use.platformSessionRestoredOffline());function Ti(){let{refreshSession:e}=$.getState(),t=[],n=()=>e().catch(e=>console.warn(`auth.refreshSession failed`,e)),r=Le(`app.resume`,()=>{Xe()||n()});return t.push(r),typeof BroadcastChannel<`u`&&(q=new BroadcastChannel(`auth`),q.onmessage=()=>{ni(),window.location.reload()},t.push(()=>{q?.close(),q=null})),()=>t.forEach(e=>e())}export{A as $,Bn as A,Ln as B,or as C,Zn as D,tr as E,Pn as F,Un as G,Rn as H,On as I,sn as J,I as K,F as L,Fn as M,Mn as N,$n as O,Nn as P,qt as Q,Dn as R,cr as S,ar as T,zn as U,Vn as V,jn as W,Kt as X,en as Y,j as Z,kr as _,w as _t,bi as a,T as at,ur as b,gi as c,D as ct,Hr as d,ft as dt,Gt as et,Rr as f,pt as ft,Or as g,at as gt,hr as h,ot as ht,Si as i,E as it,Hn as j,Tn as k,zr as l,Dt as lt,gr as m,ut as mt,$ as n,Ut as nt,Ci as o,At as ot,Ir as p,lt as pt,cn as q,wi as r,O as rt,xi as s,Ot as st,Ti as t,k as tt,G as u,wt as ut,jr as v,rr as w,nr as x,Mr as y,In as z};
2
+ import{i as e,l as t,o as n,t as r}from"./local-settings-Bx7FsNo5.js";import{a as i,n as a,r as o}from"./device-settings-DZvv4pnY.js";import{o as s,t as c}from"./capture-error-Cw5vs0Ef.js";import{t as l}from"./preload-helper-Cv2QeVDK.js";import{t as u}from"./useQuery-Bz-fbQ-m.js";import{n as d,t as f}from"./create-selectors-DBgi9gD3.js";import{C as ee,F as te,J as ne,K as re,L as ie,M as ae,N as oe,P as se,Q as p,T as ce,X as le,Y as ue,Z as m,_ as h,a as de,b as fe,c as pe,f as g,g as me,i as he,l as ge,n as _e,nt as ve,q as ye,r as be,rt as _,s as xe,tt as Se,v as Ce,w as we,x as v}from"./local-mode-BfEgOekp.js";import{t as y}from"./is-electron-BHXrkjI3.js";import{n as b,t as Te}from"./resolved-assistants-store-BFI9c7ip.js";import{i as x,n as Ee,t as De}from"./api-errors-BQX1Pzcm.js";import{t as Oe}from"./client.gen-C854VG5x.js";import{D as ke,E as Ae,It as je,Lt as Me,Mt as Ne}from"./sdk.gen-DKYWIHI7.js";import{a as Pe,c as Fe,r as Ie}from"./api-JA_IDAQk.js";import{n as Le}from"./event-bus-Cy8AzL-G.js";import{o as Re}from"./remote-gateway-session-CgDx1fv1.js";import{t as ze}from"./client-feature-flag-store-C8ieIAKe.js";import{C as Be,G as S,H as Ve,S as He,U as Ue,V as We,_ as Ge,h as Ke,k as qe,q as Je,v as Ye,w as Xe}from"./platform-detection-C_TK32Dw.js";import{a as Ze,c as Qe}from"./push-registration-C0GXHrCj.js";import{i as $e,t as et}from"./typed-storage-lk6_tW16.js";import{t as C}from"./onboarding-store-_SsI8JK5.js";import{s as tt,t as nt}from"./use-assistant-avatar-Dd-EU1FC.js";var w=f(d(()=>({assistantState:{kind:`loading`},operationalStatusAssistantId:null,expectingFirstMessage:!1}))),rt=new Set;function it(e){return rt.add(e),()=>{rt.delete(e)}}function at(){for(let e of rt)try{e()}catch{}}var ot=new Set([502,503,504]),st=`Connection interrupted. Reconnecting…`;function ct(e){return e.code===`proxy_network_error`?!0:(typeof e.detail==`string`?e.detail:``).includes(`net::ERR_`)}function lt(e){if(e.ok)switch(e.data.status){case`active`:return e.data.is_local?{kind:`self_hosted`}:{kind:`active`};case`initializing`:return{kind:`initializing`};case`to_be_deleted`:return{kind:`cleaning_up`};default:return{kind:`error`,message:`Unexpected assistant status: ${e.data.status}`}}return e.status===404?{kind:`auto_hatch`}:ct(e.error)?{kind:`error`,transient:!0,message:st}:{kind:`error`,message:x(e.error,void 0,`Failed to check assistant status.`)}}function ut(e){return e===void 0||e>=500}var dt=`platform_hosted_disabled`,ft=`We are at capacity for Vellum Managed Assistants, more will be available soon!`;function pt(e,t){return e===503?t?.code===dt:!1}var mt=2e3,ht=3e4;function gt(e){return Math.min(mt*2**e,ht)}var _t=3e5;function vt(){return{kind:`error`,message:`Your assistant is taking longer than expected to start. Please try again, or check the community for help.`}}var yt=[`assistant`,`current`],bt=3e3,xt=new Set([`initializing`,`cleaning_up`]);function St(e){if(!e)return!1;let t=lt(e);return xt.has(t.kind)?bt:!1}function Ct(e){return e?[...yt,e]:yt}function wt(e){let t=e.selectedPlatformAssistantId??null;return u({queryKey:Ct(t),queryFn:()=>Ie(t??void 0),enabled:e.enabled,retry:!1,refetchInterval:e=>St(e.state.data),refetchOnWindowFocus:!1})}var Tt=new Set([`healthy`,`ok`]);function Et(e){if(!e.ok)return`unreachable`;let t=e.data?.status;return t===`MIGRATING`?`migrating`:t!==void 0&&!Tt.has(t)?`unhealthy`:`healthy`}function Dt(){let e=w.use.assistantState();return e.kind===`self_hosted`||e.kind===`active`&&e.isLocal?e.health??null:null}var T=e=>e===`authenticated`,Ot=e=>e!==`initializing`,E=e=>e===`present`,kt=e=>e!==`unknown`,At=(e,t)=>e===`present`&&!t,jt=new Set([401,403,410]),D=e=>!e.ok&&e.status!==void 0&&jt.has(e.status),Mt=4e3,Nt=6e4,Pt=5e3;function Ft(){let e=/\/assistant(?:\/|$)/.exec(window.location.pathname),t=e&&e.index>0?window.location.pathname.slice(0,e.index).replace(/\/+$/,``):``;return`${window.location.origin}${t}`}var O=new class{state={kind:`loading`};generation=0;initializingTimeout=null;ready=!1;inputs={sessionStatus:`initializing`,hasPlatformSession:!1,queryClient:null,selectedPlatformAssistantId:null};probeTimer=null;healthHeartbeatTimer=null;healthHeartbeatId=null;healthHeartbeatToken=0;reachabilityProbeInFlightIds=new Set;probeFailureStreak=0;probeLoopAssistantId=null;errorRetryTimer=null;errorRetryAttempt=0;constructor(){it(()=>this.onUnreachable()),Le(`app.online`,()=>this.onNetworkOnline()),b.subscribe((e,t)=>{e.selectedAssistantId!==t.selectedAssistantId&&(!p()||this.state.kind===`loading`||this.applyGatewayAuthShortCircuit())})}setInputs(e){this.inputs=e,this.ready=!0}resetForLogout(){b.getState().activeAssistantId!==null&&b.getState().setActiveAssistantId(null),this.setOperationalStatusAssistantId(null),this.cancelProbeTimer(),this.probeLoopAssistantId=null,this.reachabilityProbeInFlightIds.clear(),this.state.kind!==`loading`&&this.transition({kind:`loading`}),this.clearExpectingFirstMessage()}async respondToInputs(){if(this.ready){if(p()){this.applyGatewayAuthShortCircuit();return}if(!T(this.inputs.sessionStatus)){this.resetForLogout();return}this.inputs.hasPlatformSession&&_(null),this.inputs.isOrgReady&&await this.checkAssistant()}}async applyServerResult(e){this.ready&&(this.state.kind!==`initializing`&&this.state.kind!==`cleaning_up`||await this.applyServerStateUpdate(e))}async checkAssistant(e){if(!this.ready)return;if(p()){this.applyGatewayAuthShortCircuit();return}let t=this.generation;try{let n=e??this.inputs.selectedPlatformAssistantId??null,r=await this.inputs.queryClient.fetchQuery({queryKey:Ct(n),queryFn:()=>Ie(n??void 0),staleTime:0});if(t!==this.generation||n&&!r.ok&&r.status===404&&(b.getState().setSelectedAssistant(null),r=await this.inputs.queryClient.fetchQuery({queryKey:yt,queryFn:()=>Ie(),staleTime:0}),t!==this.generation))return;await this.applyServerStateUpdate(r)}catch(e){if(console.error(`Error checking assistant status:`,e),c(e,{context:`check_assistant`}),t!==this.generation||this.degradeOnTransportFailure())return;this.transition({kind:`error`,transient:!0,message:st})}}degradeOnTransportFailure(){return this.state.kind===`active`?(this.triggerReachabilityProbe(),!0):this.state.kind===`initializing`||this.state.kind===`cleaning_up`}retryAssistant(){this.ready&&this.checkAssistant()}markExpectingFirstMessage(){w.getState().expectingFirstMessage||w.setState({expectingFirstMessage:!0})}clearExpectingFirstMessage(){w.getState().expectingFirstMessage&&w.setState({expectingFirstMessage:!1})}transition(e){let t=this.state.kind;this.state=e,w.setState({assistantState:e}),e.kind===`initializing`?t!==`initializing`&&this.armInitializingWatchdog():this.initializingTimeout&&=(clearTimeout(this.initializingTimeout),null),e.kind!==`initializing`&&e.kind!==`active`&&this.clearExpectingFirstMessage(),!(e.kind===`self_hosted`||e.kind===`active`&&e.isLocal)&&this.healthHeartbeatId!==null&&this.cancelHealthHeartbeat(),e.kind===`error`&&e.transient?this.armErrorRetry():this.clearErrorRetry(e.kind!==`error`)}clearErrorRetry(e){this.errorRetryTimer&&=(clearTimeout(this.errorRetryTimer),null),e&&(this.errorRetryAttempt=0)}armErrorRetry(){this.errorRetryTimer&&clearTimeout(this.errorRetryTimer);let e=gt(this.errorRetryAttempt);this.errorRetryAttempt+=1,this.errorRetryTimer=setTimeout(()=>{this.errorRetryTimer=null,this.checkAssistant()},e)}onNetworkOnline(){if(this.ready){if(this.state.kind===`error`&&this.state.transient){this.clearErrorRetry(!0),this.checkAssistant();return}this.state.kind===`active`&&this.state.reachable===!1&&this.checkAssistant()}}armInitializingWatchdog(){this.initializingTimeout&&clearTimeout(this.initializingTimeout),this.initializingTimeout=setTimeout(()=>{this.generation++,s(`Assistant stuck in initializing state`,{level:`warning`,extra:{timeoutMs:_t}}),this.transition(vt())},_t)}projectActive(e){let t=e.data.maintenance_mode,n=e.data.is_local??!1;_(null),this.setOperationalStatusAssistantId(e.data.id);let r=b.getState();r.upsertFromApi(e.data),r.setActiveAssistantId(e.data.id),this.transition({kind:`active`,isLocal:n,maintenanceMode:{enabled:t?.enabled}}),n?this.startHealthHeartbeat(e.data.id):this.probeReachability(e.data.id)}projectSelfHosted(e){this.setOperationalStatusAssistantId(null),_({url:e.data.ingress_url,token:e.data.platform_actor_token});let t=b.getState();t.upsertFromApi(e.data),t.setActiveAssistantId(e.data.id),this.transition({kind:`self_hosted`}),this.startHealthHeartbeat(e.data.id)}applyGatewayAuthShortCircuit(){let e=window.location.origin,t=`self`,n=ue();if(v())e=Ft();else{let r=g(),i=be(r);i&&(e=i,t=r?.assistantId??t,pe(r)!=null&&(n=null))}_({url:e,token:n}),this.setOperationalStatusAssistantId(null),b.getState().setActiveAssistantId(t),this.transition({kind:`active`,isLocal:!0}),this.startHealthHeartbeat(t)}async applyServerStateUpdate(e){let t=this.generation,n=lt(e);if(!(n.kind===`error`&&n.transient&&this.degradeOnTransportFailure())&&(e.ok?this.setOperationalStatusAssistantId(e.data.id):this.setOperationalStatusAssistantId(null),n.kind!==`auto_hatch`)){if(n.kind===`active`&&e.ok){this.projectActive(e);return}if(n.kind===`self_hosted`&&e.ok){this.projectSelfHosted(e);return}t===this.generation&&n.kind!==`active`&&this.transition(n)}}async probeReachability(e){if(!this.reachabilityProbeInFlightIds.has(e)){this.reachabilityProbeInFlightIds.add(e);try{let t=this.generation,n=this.state.kind===`self_hosted`||this.state.kind===`active`&&this.state.isLocal,r=n?g()?.assistantId??e:e,i=!v()&&n?await ie(r).catch(()=>null):null,a=i?.ok&&i.state===`upgrading`?`upgrading`:`unreachable`;if(a!==`upgrading`)try{let t=await Pe(e);if(!t.ok&&(t.status===401||t.status===403)){this.probeFailureStreak=0,v()&&Re();return}a=Et(t)}catch{a=`unreachable`}if(a===`unreachable`&&!i&&!v()&&(i=await ie(r).catch(()=>null)),a===`unreachable`&&i?.ok)switch(i.state){case`healthy`:a=`healthy`;break;case`sleeping`:case`starting`:case`upgrading`:case`unhealthy`:case`crashed`:a=i.state;break;case`unknown`:break}if(t!==this.generation||b.getState().activeAssistantId!==e)return;if(a===`unreachable`){this.probeFailureStreak+=1;let e=this.state.kind===`self_hosted`||this.state.kind===`active`&&this.state.isLocal?this.state.health:void 0;if(this.probeFailureStreak<2&&(e===`healthy`||e===`unhealthy`))return}else this.probeFailureStreak=0;if(this.state.kind===`self_hosted`){this.state.health!==a&&this.transition({...this.state,health:a});return}if(this.state.kind!==`active`)return;let o=a===`healthy`||a===`unhealthy`;if(this.state.reachable===o&&this.state.health===a)return;this.transition({...this.state,reachable:o,health:a})}finally{this.reachabilityProbeInFlightIds.delete(e)}}}cancelProbeTimer(){this.probeTimer&&=(clearTimeout(this.probeTimer),null)}startProbeLoop(e){if(this.probeLoopAssistantId===e)return;this.cancelProbeTimer(),this.probeLoopAssistantId=e;let t=Date.now(),n=()=>{this.probeLoopAssistantId=null},r=async()=>{if(this.state.kind!==`active`||this.state.reachable===!0){n();return}if(Date.now()-t>Nt){n();return}await this.probeReachability(e);let i=this.state;if(i.kind!==`active`||i.reachable===!0){n();return}if(Date.now()-t>Nt){n();return}this.probeTimer=setTimeout(()=>void r(),Mt)};this.probeTimer=setTimeout(()=>void r(),Mt)}startHealthHeartbeat(e){if(this.healthHeartbeatId===e)return;this.cancelHealthHeartbeat(),this.healthHeartbeatId=e;let t=this.healthHeartbeatToken,n=async()=>{t===this.healthHeartbeatToken&&(await this.probeReachability(e),t===this.healthHeartbeatToken&&(this.healthHeartbeatTimer=setTimeout(()=>void n(),Pt)))};n()}cancelHealthHeartbeat(){this.healthHeartbeatToken++,this.healthHeartbeatId=null,this.probeFailureStreak=0,this.healthHeartbeatTimer&&=(clearTimeout(this.healthHeartbeatTimer),null)}onUnreachable(){this.triggerReachabilityProbe()}triggerReachabilityProbe(){if(this.state.kind!==`active`)return;let e=b.getState().activeAssistantId;if(e){if(this.transition({...this.state,reachable:!1}),this.reachabilityProbeInFlightIds.has(e)||(this.probeFailureStreak=Math.max(this.probeFailureStreak,1)),this.healthHeartbeatId===e){this.probeReachability(e);return}this.startProbeLoop(e)}}setLocalAssistantUpgradeInProgress(e,t){if(b.getState().activeAssistantId===e){if(!t){this.probeReachability(e);return}if(this.state.kind===`self_hosted`){this.transition({...this.state,health:`upgrading`});return}this.state.kind===`active`&&this.state.isLocal&&this.transition({...this.state,reachable:!1,health:`upgrading`})}}__resetForTesting(){this.initializingTimeout&&=(clearTimeout(this.initializingTimeout),null),this.cancelProbeTimer(),this.cancelHealthHeartbeat(),this.probeLoopAssistantId=null,this.reachabilityProbeInFlightIds.clear(),this.clearErrorRetry(!0),this.state={kind:`loading`},this.generation=0,this.ready=!1,w.setState({expectingFirstMessage:!1,operationalStatusAssistantId:null}),this.inputs={sessionStatus:`initializing`,hasPlatformSession:!1,queryClient:null},w.setState({assistantState:this.state}),b.setState({activeAssistantId:null})}setOperationalStatusAssistantId(e){w.getState().operationalStatusAssistantId!==e&&w.setState({operationalStatusAssistantId:e})}},It=`vellum_active_organization_id`;function Lt(){return globalThis.sessionStorage===void 0?null:globalThis.sessionStorage}function Rt(){let e=Lt();if(!e)return null;try{return e.getItem(It)}catch{return null}}function zt(e){let t=Lt();if(t)try{t.setItem(It,e)}catch{}}function Bt(){let e=Lt();if(e)try{e.removeItem(It)}catch{}}function Vt(e,t){return e.length===0?null:t&&e.some(e=>e.id===t)?t:e[0].id}var k=f(d()((e,t)=>({organizations:[],currentOrganizationId:null,persistedOrganizationId:Rt(),status:`idle`,error:null,fetchOrganizations:async(n,r)=>{e({status:`loading`,error:null});try{let i=await Ne(),a=i.data===void 0?i.response?.status??null:null,o=a!==null&&D({ok:!1,status:a})?a:null,s=i.data?.results??[],c=Vt(s,t().currentOrganizationId??t().persistedOrganizationId),l=c?{ok:!0}:o===null?{ok:!1,kind:`unavailable`}:{ok:!1,kind:`rejected`,status:o},u=null;c||(u=o===null?`No organization available for this user.`:`Platform session was rejected (HTTP ${o}).`);let d=n?.()??!0,f=d||((r??n)?.()??!0);return(c?!f:!d)?(e({status:`error`,error:u??`Organization fetch superseded.`}),l):(c&&zt(c),o!==null&&Bt(),e({organizations:s,currentOrganizationId:c,persistedOrganizationId:o===null?c??t().persistedOrganizationId:null,status:c?`ready`:`error`,error:u}),l)}catch(t){return e({status:`error`,error:t instanceof Error&&t.message?t.message:`Failed to load organizations.`}),{ok:!1,kind:`unavailable`}}},setCurrentOrganizationId:n=>{let{organizations:r}=t();r.some(e=>e.id===n)&&(zt(n),e({currentOrganizationId:n,persistedOrganizationId:n,status:`ready`}))},clearOrganization:()=>{Bt(),e({organizations:[],currentOrganizationId:null,persistedOrganizationId:null,status:`idle`,error:null})}})));function Ht(e){return e.currentOrganizationId??e.persistedOrganizationId}function A(){return Ht(k.getState())}function Ut(){return k(Ht)}function Wt(){k.getState().clearOrganization()}function Gt(){let e=0,t=k.subscribe(t=>{(t.status===`ready`||t.status===`error`)&&(e=Date.now())}),n=$.subscribe((e,t)=>{let n=E(e.platformSession),r=E(t.platformSession);n&&(!r||e.user?.id!==t.user?.id)&&k.getState().fetchOrganizations()}),r=()=>{if(!E($.getState().platformSession))return;let{status:t}=k.getState();(t===`ready`||t===`error`)&&Date.now()-e>1e4&&k.getState().fetchOrganizations()},i=Le(`app.resume`,()=>{r()});return()=>{t(),n(),i()}}function Kt(e){let{assistants:t,selectedAssistantId:n,assistantsHydrated:r}=b.getState(),i=Te(t,e),a=e=>i.some(t=>t.id===e);if(n!==null){let e=t.some(e=>e.id===n);if(a(n)||!e&&!r)return n}let o=_e()?.assistantId??null;return o!==null&&a(o)?o:i[0]?.id??null}function qt(){let e=Ut(),t=ze.use.multiPlatformAssistant(),n=ze.use.assistantSwitcher();return b.use.selectedAssistantId(),b.use.assistants(),b.use.assistantsHydrated(),(t||n)&&!p()&&e?Kt(e):null}async function j(e){b.getState().setSelectedAssistant(e),e!==null&&await ae(e)}var Jt=`vellum:auth:userSnapshot`;function Yt(e){if(e)try{localStorage.setItem(Jt,JSON.stringify(e))}catch{}}function Xt(){try{let e=localStorage.getItem(Jt);if(!e)return null;let t=JSON.parse(e);return!t||typeof t!=`object`?null:{kind:`platform`,id:typeof t.id==`string`?t.id:null,username:typeof t.username==`string`?t.username:null,email:typeof t.email==`string`?t.email:null,isStaff:t.isStaff===!0,firstName:typeof t.firstName==`string`?t.firstName:``,lastName:typeof t.lastName==`string`?t.lastName:``}}catch{return null}}function M(){try{localStorage.removeItem(Jt)}catch{}}function Zt(e,t={}){let n={...e??{}},r=t.includeSelfHostedActorToken===!1?null:Se();if(r)return n.Authorization=`Bearer ${r}`,n;let i=t.organizationId??A();i&&(n[`Vellum-Organization-Id`]=i);let a=Ue();return a&&(n[`X-Session-Token`]=a),n}async function Qt(e,t={}){let n=Zt(e,t);if(n.Authorization||y())return n;await We();let r=Ve();return r&&(n[`X-CSRFToken`]=r),n}var $t;function en(){return y()?($t===void 0&&($t=window.__VELLUM_CONFIG__?.deviceId??null),$t):null}var tn=/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,nn=`X-Vellum-Electron-Renderer-Origin`,rn=new Map,an=[2e3,5e3,15e3,3e4,6e4],on=new Set;async function sn(e,t={}){if(!h()||v()||fe()||Cn(e))return e;let n=ln(e);if(!n)return e;let r=rn.get(n.assistantId);if(r)return r;let i=un(n,{allowGatewayRepair:t.allowGatewayRepair??!0});rn.set(n.assistantId,i);try{return await i}catch(e){throw rn.delete(n.assistantId),e}}function cn(e,t={}){if(!h()||v()||fe())return;let n=e;if(!n){let e=g();if(!e||!me(e))return;n=e.assistantId}if(on.has(n))return;on.add(n);let r=n;(async()=>{try{for(let e=0;;e++)try{await sn(r,{allowGatewayRepair:t.allowGatewayRepair??!1});return}catch(n){let r=an[e];if(r===void 0){(t.onError??(e=>{console.warn(`local assistant platform bootstrap failed`,e)}))(n);return}console.warn(`local assistant platform bootstrap attempt ${e+1} failed, retrying in ${r}ms`,n),await new Promise(e=>setTimeout(e,r))}}finally{on.delete(r)}})()}function ln(e){let t=_e();if(t?.assistantId===e&&me(t))return t;let n=g();return n?.assistantId===e&&me(n)?n:null}async function un(e,t){let n=await fn(e,t),r=await pn(n,e.assistantId),i=r?.assistantId&&Cn(r.assistantId)?r.assistantId:null;if(i&&r?.hasAssistantApiKey!==!1){let t=r?.organizationId??e.platformOrganizationId??null;return t&&await dn(e,{platformAssistantId:i,platformBaseUrl:r?.baseUrl??re(),organizationId:t}),i}let a=await mn(r?.organizationId??null,e);if(!a)throw Error(`Sign in to Vellum and select an organization to register this local assistant.`);let o=r?.clientInstallationId??en()??null;if(!o)throw Error(`Unable to identify this local assistant host for platform registration.`);let s=await hn(e,a,o),c=N(s.assistant?.id,s.assistant_id,s.id),l=i??c;if(!l||!Cn(l))throw Error(`The platform registration response did not include an assistant UUID.`);let u=P(s.assistant_api_key);!u&&r?.hasAssistantApiKey!==!0&&(u=await gn(e,a,o));let d=r?.baseUrl??re();return await vn(n,{assistantApiKey:u,platformAssistantId:l,platformBaseUrl:d,organizationId:a,webhookSecret:P(s.webhook_secret)}),await dn(e,{platformAssistantId:l,platformBaseUrl:d,organizationId:a}),l}async function dn(e,t){await se({...e,platformAssistantId:t.platformAssistantId,platformBaseUrl:t.platformBaseUrl,platformOrganizationId:t.organizationId}).catch(e=>{console.warn(`local assistant platform lockfile update failed`,e)})}async function fn(e,t){let n=ve(),r=Se();if(t.allowGatewayRepair&&(!n||!r)&&(await we(e),n=ve(),r=Se()),!n||!r){let t=de(e);t&&(n=`${window.location.origin}${t}`)}if(!n||!r)throw Error(`Unable to reach the local assistant for platform identity setup.`);return{gatewayUrl:n,actorToken:r}}async function pn(e,t){let n=Sn(e.gatewayUrl,`/v1/assistants/${encodeURIComponent(t)}/platform/status`),r=await fetch(n,{headers:{Accept:`application/json`,Authorization:`Bearer ${e.actorToken}`},credentials:`omit`}).catch(()=>null);if(!r?.ok)return null;let i=await r.json().catch(()=>null);return{assistantId:N(i?.assistantId,i?.assistant_id),baseUrl:N(i?.baseUrl,i?.base_url),organizationId:N(i?.organizationId,i?.organization_id),hasAssistantApiKey:wn(i?.hasAssistantApiKey,i?.has_assistant_api_key),clientInstallationId:N(i?.clientInstallationId,i?.client_installation_id)}}async function mn(e,t){return(e??t.platformOrganizationId??A()??t.organizationId??null)||(await k.getState().fetchOrganizations().catch(()=>{}),A()??t.platformOrganizationId??t.organizationId??null)}async function hn(e,t,n){return await _n(`/v1/assistants/self-hosted-local/ensure-registration/`,e,t,n)}async function gn(e,t,n){return P((await _n(`/v1/assistants/self-hosted-local/reprovision-api-key/`,e,t,n)).provisioning?.assistant_api_key)}async function _n(e,t,n,r){let i=new Headers({...await Qt({Accept:`application/json`,"Content-Type":`application/json`},{includeSelfHostedActorToken:!1,organizationId:n})}),a=Ue();if(y()){if(!a)throw Error(`Sign in to Vellum to register this local assistant.`);i.set(nn,`${window.location.protocol}//${window.location.host}`)}let o=await fetch(new URL(e,window.location.origin).toString(),{method:`POST`,headers:i,credentials:y()?`omit`:`same-origin`,body:JSON.stringify({client_installation_id:r,runtime_assistant_id:t.assistantId,client_platform:y()?`macos`:`web`})}).catch(e=>{throw Error(`Unable to reach the platform registration endpoint: ${xn(e)}`)});if(!o.ok){let e=await bn(o);throw Error(`Unable to register the local assistant with the platform (HTTP ${o.status})${e?`: ${e}`:`.`}`)}try{return await o.json()}catch(e){throw Error(`Unable to read the platform registration response: ${xn(e)}`)}}async function vn(e,t){let n=[[`vellum:platform_assistant_id`,t.platformAssistantId],[`vellum:platform_base_url`,t.platformBaseUrl],[`vellum:platform_organization_id`,t.organizationId],[`vellum:webhook_secret`,t.webhookSecret]];await Promise.all(n.filter(e=>!!e[1]).map(([t,n])=>yn(e,t,n))),t.assistantApiKey&&await yn(e,`vellum:assistant_api_key`,t.assistantApiKey)}async function yn(e,t,n){let r=await fetch(Sn(e.gatewayUrl,`/v1/secrets`),{method:`POST`,headers:{Accept:`application/json`,Authorization:`Bearer ${e.actorToken}`,"Content-Type":`application/json`},credentials:`omit`,body:JSON.stringify({type:`credential`,name:t,value:n})}).catch(e=>{throw Error(`Unable to reach the local assistant while storing ${t}: ${xn(e)}`)});if(!r.ok){let e=await bn(r);throw Error(`Unable to store ${t} on the local assistant (HTTP ${r.status})${e?`: ${e}`:`.`}`)}return!0}async function bn(e){if((e.headers.get(`content-type`)??``).includes(`application/json`)){let t=await e.json().catch(()=>null),n=t&&typeof t==`object`&&`detail`in t?P(t.detail):null,r=t&&typeof t==`object`&&`code`in t?P(t.code):null;return n&&r?`${n} (${r})`:n||r||JSON.stringify(t)}return(await e.text().catch(()=>``)).slice(0,300)}function xn(e){return e instanceof Error?e.message:String(e)}function Sn(e,t){let n=new URL(e);return n.pathname=`${n.pathname.replace(/\/$/,``)}${t}`,n.toString()}function Cn(e){return tn.test(e)}function N(...e){for(let t of e){let e=P(t);if(e)return e}return null}function P(e){return typeof e==`string`&&e.trim()?e.trim():null}function wn(...e){for(let t of e)if(typeof t==`boolean`)return t;return null}var Tn={idle:``,connecting:`Connecting…`,listening:`Listening…`,transcribing:`Transcribing…`,thinking:`Thinking…`,speaking:`Speaking…`,ending:`Ending…`,failed:``};function En(e,t){return t&&e===`connecting`?`Reconnecting…`:Tn[e]}function Dn(e,t,n){return En(e===`speaking`&&!n?`thinking`:e,t)}function F(e){return e!==`idle`&&e!==`failed`}function On(e){return e===`listening`||e===`transcribing`||e===`thinking`||e===`speaking`}function kn(e,t){if(!F(e.state))return!1;let n=t??null;return n===e.conversationId||n===e.startedConversationId}var An={state:`idle`,assistantAudioActive:!1,activityLabel:``,pendingApprovalRequestId:null,reconnecting:!1,assistantId:null,conversationId:null,startedConversationId:null,photoRejectedSeq:0,photoRejectedReason:null,controls:null,partialTranscript:``,finalTranscript:``,assistantTranscript:``,inputAmplitude:0,muted:!1,outputMuted:!1,handsFree:!1,roomMinimized:!1,entryOrigin:null,lastTurnLatency:null,outputAmplitudeProvider:null,playbackProgressProvider:null,error:null},I=f(d()(e=>({...An,starter:null,setState:t=>e({state:t}),setAssistantAudioActive:t=>e({assistantAudioActive:t}),setActivityLabel:(t,n=null)=>e({activityLabel:t,pendingApprovalRequestId:n}),setReconnecting:t=>e({reconnecting:t}),setSessionContext:(t,n)=>e({assistantId:t,conversationId:n,startedConversationId:n,muted:!1,outputMuted:!1}),setConversationId:t=>e({conversationId:t}),notePhotoRejected:t=>e(e=>({photoRejectedSeq:e.photoRejectedSeq+1,photoRejectedReason:t})),setControls:t=>e({controls:t}),setStarter:t=>e({starter:t}),setPartialTranscript:t=>e({partialTranscript:t}),setFinalTranscript:t=>e({finalTranscript:t}),appendAssistantTranscript:t=>e(e=>({assistantTranscript:e.assistantTranscript+t})),clearAssistantTranscript:()=>e({assistantTranscript:``}),clearUserTranscripts:()=>e({partialTranscript:``,finalTranscript:``}),setInputAmplitude:t=>e({inputAmplitude:t}),setMuted:t=>e({muted:t}),setOutputMuted:t=>e({outputMuted:t}),setHandsFree:t=>e({handsFree:t}),setRoomMinimized:t=>e({roomMinimized:t}),setEntryOrigin:t=>e({entryOrigin:t}),setLastTurnLatency:t=>e({lastTurnLatency:t}),setOutputAmplitudeProvider:t=>e({outputAmplitudeProvider:t}),setPlaybackProgressProvider:t=>e({playbackProgressProvider:t}),fail:t=>e({state:`failed`,error:t}),reset:()=>e({...An})})));function jn(e){let t=!1,n=!1,r=I.subscribe(()=>{t||(t=!0,queueMicrotask(()=>{t=!1,!n&&e(I.getState())}))});return()=>{n=!0,r()}}function Mn(){return I.getState().inputAmplitude}function Nn(){return I.getState().outputAmplitudeProvider?.()??0}function Pn(){return I.getState().playbackProgressProvider?.()??null}function Fn(){I.getState().controls?.stop()}function In(){let{state:e,setRoomMinimized:t}=I.getState();F(e)&&t(!0)}function Ln(){let{state:e,setRoomMinimized:t}=I.getState();F(e)&&t(!1)}function Rn(e){I.getState().controls?.setMuted(e)}function zn(e){I.getState().controls?.setOutputMuted(e)}function Bn(e){return I.getState().controls?.attachImage(e)??!1}function Vn(e){I.getState().setEntryOrigin(e)}function Hn(){I.getState().reset()}function Un(e){return I(t=>kn(t,e))}function Wn(){let e={},t=Object.keys(Tn).filter(F);for(let n of t)e[n]=Dn(n,!1,!0);return e}function Gn(e){let t=JSON.parse(e);return typeof t.token==`string`&&typeof t.assistantId==`string`?{token:t.token,assistantId:t.assistantId}:null}var Kn=$e({key:`vellum:live_activity_registration`,scope:`user`,parse:Gn,serialize:JSON.stringify,fallback:null}),qn=null,Jn=new Set;function Yn(e){Jn.add(e),e.finally(()=>{Jn.delete(e)})}var Xn=Promise.resolve();async function Zn(e){let t=Xn.then(()=>Qn(e));Xn=t.catch(()=>void 0),Yn(t),await t}async function Qn({token:e,assistantId:t,conversationId:n,accentHex:r,muted:i}){try{let{App:a}=await l(async()=>{let{App:e}=await import(`./esm-RwtNn1Lo.js`);return{App:e}},__vite__mapDeps([0,1,2])),{id:o}=await a.getInfo(),s=await Qe(o),u=await ke({path:{assistant_id:t},body:{token:e,bundle_id:o,apns_environment:s,conversation_id:n,labels:Wn(),accent_hex:r,muted:i},throwOnError:!1});if(u.error){c(u.error,{context:`live_activity_push_registration`,level:`warning`,bestEffort:!0});return}qn={token:e,assistantId:t},Kn.save(qn)}catch(e){c(e,{context:`live_activity_push_registration`,level:`warning`,bestEffort:!0})}}async function $n(){Jn.size>0&&await Promise.allSettled([...Jn]);let e=qn??Kn.load();if(e!==null){qn=null,Kn.remove();try{await Ae({path:{assistant_id:e.assistantId,token:e.token},throwOnError:!1})}catch(e){c(e,{context:`live_activity_push_unregistration`,level:`warning`,bestEffort:!0})}}}function er(e){return e}function tr(e,t,n){if(!e||typeof e!=`object`||Array.isArray(e))return{code:null,message:n};let r=er(e),i=r[t];if(Array.isArray(i)&&i.length>0){let e=i[0];if(typeof e==`string`)return{code:null,message:e};if(e&&typeof e==`object`&&!Array.isArray(e)){let t=er(e),r=t.code,i=t.string??t.message;return{code:typeof r==`string`?r:null,message:typeof i==`string`?i:n}}}return typeof r.detail==`string`?{code:null,message:r.detail}:{code:null,message:n}}var nr={too_short:`Must be at least 3 characters.`,too_long:`Must be at most 30 characters.`,invalid_chars:`Use only lowercase letters, digits, hyphens, and underscores.`,leading_underscore:`Cannot start with an underscore.`,trailing_underscore:`Cannot end with an underscore.`,leading_hyphen:`Cannot start with a hyphen.`,trailing_hyphen:`Cannot end with a hyphen.`,all_digits:`Cannot be all digits.`,reserved:`This handle is reserved.`,taken:`This handle is already taken.`};async function rr(){let{data:e,error:t,response:n}=await Oe.get({url:`/v1/user/me/`,throwOnError:!1});if(Ee(n,t,`Failed to load profile.`),!n.ok||!e)throw new De(n.status,x(t,n,`Failed to load profile.`));return e}var ir=`Please choose a different handle.`;async function ar(e){let{data:t,error:n,response:r}=await Oe.patch({url:`/v1/user/me/`,body:e,throwOnError:!1});if(!r)return{kind:`error`,message:x(n,void 0,`Failed to save profile.`)??`Failed to save profile.`};if(r.ok&&t)return{kind:`ok`,data:t};if(r.status===409){let{message:e}=tr(n,`username`,nr.taken);return{kind:`taken`,message:e}}if(r.status===400){let{code:e,message:t}=tr(n,`username`,ir);return{kind:`invalid`,code:e,message:t}}return{kind:`error`,message:x(n,r,`Failed to save profile.`)}}async function or(){let{data:e,error:t,response:n}=await je({throwOnError:!1});if(Ee(n,t,`Failed to load consent.`),!n.ok||!e)throw new De(n.status,x(t,n,`Failed to load consent.`));return e}async function sr(e){await Me({body:e,throwOnError:!0})}async function cr(e,t){let{data:n,error:r,response:i}=await Oe.get({url:`/v1/user/username-available/`,query:{username:e},signal:t,throwOnError:!1});if(Ee(i,r,`Failed to check handle availability.`),!i.ok||!n)throw new De(i.status,i.status===429?`Too many checks — try again in a moment.`:x(r,i,`Failed to check handle availability.`));return n}function lr(e){i(`diagnosticsReporting`,e)}function ur(e,t){let n=mr(e);return n!==null&&t(n),lr(dr(n,e)),n}function dr(e,t){return e??a(`shareDiagnostics`,!0)?t.hasServerRecord?t.diagnosticsEffective:!0:!1}function fr(e,t){ur({shareDiagnostics:e,diagnosticsEffective:e,hasServerRecord:!0},t)}function pr(){o(`diagnosticsReporting`,``)===``&&lr(!1)}function mr(e){let{shareDiagnostics:t,hasServerRecord:n}=e;return t===!1?!1:n&&t===!0?!0:null}var hr=`2026-06-08`,gr=`2026-06-22`,_r=`2026-06-18`,vr=`2026-06-18`,yr=`2026-06-08`,L={tos:hr,privacyPolicy:gr,aiDataSharing:gr,shareAnalytics:_r,shareDiagnostics:vr};function br(e){return{tos:e?.tos||`2026-06-08`,privacyPolicy:e?.privacy_policy||`2026-06-22`,aiDataSharing:e?.ai_data_sharing||`2026-06-22`,shareAnalytics:e?.share_analytics||`2026-06-18`,shareDiagnostics:e?.share_diagnostics||`2026-06-18`}}function xr(){return{...L}}function R(e,t){return`device:consent:${e}:${t}`}function z(e){switch(e){case`tos`:return L.tos;case`privacy_policy`:return L.privacyPolicy;case`ai_data_sharing`:return L.aiDataSharing;case`share_diagnostics`:return L.shareDiagnostics}}var Sr=/^\d{4}-\d{2}-\d{2}$/;function Cr(t,n){let r=e(R(t,n),``);return Sr.test(r)?r:``}function B(e,t){return H(Cr(e,t),z(e))}function wr(e){return`device:consent:ai:v${yr}:${e}`}function V(e,i,a){let o=`device:consent:${e}:v`,s=`:${i}`,c=[],l=``;for(let e=0;e<localStorage.length;e++){let t=localStorage.key(e);if(!t||!t.startsWith(o)||!t.endsWith(s))continue;let n=t.slice(o.length,t.length-s.length);Sr.test(n)&&(c.push(t),r(t,!1)&&n>l&&(l=n))}if(l)for(let e of a)Cr(e,i)||t(R(e,i),l);for(let e of c)n(e)}function Tr(e){if(typeof window>`u`||!e)return{tos:!1,privacy:!1,diagnosticsCurrent:!1};try{V(`tos`,e,[`tos`]),V(`privacy`,e,[`privacy_policy`,`ai_data_sharing`]),V(`share_diagnostics`,e,[`share_diagnostics`]),V(`share_analytics`,e,[]),r(wr(e),!1)&&n(wr(e));let i=B(`tos`,e),a=B(`privacy_policy`,e)&&B(`ai_data_sharing`,e),o=B(`share_diagnostics`,e);if(i||a)return{tos:i,privacy:a,diagnosticsCurrent:o};let s=r(`vellum:onboarding:tosAccepted`,!1),c=r(`vellum:onboarding:aiDataConsent`,!1);return s||c?(s&&t(R(`tos`,e),hr),{tos:s&&B(`tos`,e),privacy:!1,diagnosticsCurrent:o}):{tos:!1,privacy:!1,diagnosticsCurrent:o}}catch{return{tos:!1,privacy:!1,diagnosticsCurrent:!1}}}function Er(e,r,i){if(!(typeof window>`u`||!e))try{r?t(R(`tos`,e),z(`tos`)):n(R(`tos`,e)),i?(t(R(`privacy_policy`,e),z(`privacy_policy`)),t(R(`ai_data_sharing`,e),z(`ai_data_sharing`))):(n(R(`privacy_policy`,e)),n(R(`ai_data_sharing`,e)))}catch{}}function Dr(e){if(!(typeof window>`u`||!e))try{t(R(`share_diagnostics`,e),z(`share_diagnostics`))}catch{}}function Or(e){if(n(`vellum:onboarding:tosAccepted`),n(`vellum:onboarding:aiDataConsent`),n(`vellum:onboarding:selectedVersion`),!(typeof window>`u`||!e))try{n(R(`tos`,e)),n(R(`privacy_policy`,e)),n(R(`ai_data_sharing`,e)),n(R(`share_diagnostics`,e)),n(wr(e)),V(`tos`,e,[]),V(`privacy`,e,[]),V(`share_diagnostics`,e,[]),V(`share_analytics`,e,[])}catch{}}function H(e,t){return e>=t}function kr(e){if(!e)return{tos:!1,privacy:!1,shareAnalytics:null,shareDiagnostics:null,analyticsEffective:!0,diagnosticsEffective:!0,analyticsCurrent:!1,diagnosticsCurrent:!1,analyticsVersionCurrent:!1,diagnosticsVersionCurrent:!1,hasServerRecord:!1};let t=br(e.required_versions);L=t;let n=H(e.share_analytics_accepted_version,t.shareAnalytics),r=H(e.share_diagnostics_accepted_version,t.shareDiagnostics),i=!!e.tos_accepted_version||!!e.privacy_policy_accepted_version||!!e.ai_data_sharing_accepted_version||!!e.share_analytics_accepted_version||!!e.share_diagnostics_accepted_version||e.share_analytics===!1||e.share_diagnostics===!1||e.share_analytics_effective===!1||e.share_diagnostics_effective===!1;return{tos:H(e.tos_accepted_version,t.tos),privacy:H(e.privacy_policy_accepted_version,t.privacyPolicy)&&H(e.ai_data_sharing_accepted_version,t.aiDataSharing),shareAnalytics:e.share_analytics,shareDiagnostics:e.share_diagnostics,analyticsEffective:e.share_analytics_effective??e.share_analytics!==!1,diagnosticsEffective:e.share_diagnostics_effective??e.share_diagnostics!==!1,analyticsCurrent:e.share_analytics===null||n,diagnosticsCurrent:e.share_diagnostics===null||r,analyticsVersionCurrent:n,diagnosticsVersionCurrent:r,hasServerRecord:i}}function Ar(e,t){let{legal:n,shareAnalytics:r,shareDiagnostics:i}=e,a=C.getState();n&&(a.setTosAccepted(n.tos),a.setPrivacyConsent(n.privacy),Er(t.userId,n.tos,n.privacy)),r!==void 0&&(a.setShareAnalytics(r),a.setPendingAnalyticsOptIn(r===!0)),i!==void 0&&fr(i,a.setShareDiagnostics),n?(a.setAnalyticsConsentCurrent(!0),a.setDiagnosticsConsentCurrent(!0),a.setHasConsentRecord(!0),a.setConsentHydrated(!0)):t.hasPlatformSession&&(r!==void 0&&a.setAnalyticsConsentCurrent(!0),i!==void 0&&a.setDiagnosticsConsentCurrent(!0)),i!==void 0&&(n||t.hasPlatformSession)&&Dr(t.userId),t.hasPlatformSession&&sr({...n?{tos_accepted_version:n.tos?L.tos:``,privacy_policy_accepted_version:n.privacy?L.privacyPolicy:``,ai_data_sharing_accepted_version:n.privacy?L.aiDataSharing:``}:{},...r===void 0?{}:{share_analytics:r,share_analytics_accepted_version:L.shareAnalytics},...i===void 0?{}:{share_diagnostics:i,share_diagnostics_accepted_version:L.shareDiagnostics}}).catch(()=>{})}function jr(e){Ar({legal:{tos:e.tos,privacy:e.privacy},...e.shareAnalytics===null?{}:{shareAnalytics:e.shareAnalytics},...e.shareDiagnostics===null?{}:{shareDiagnostics:e.shareDiagnostics}},{userId:e.userId,hasPlatformSession:e.hasPlatformSession})}function Mr(e,t,n){Ar(e===`share_analytics`?{shareAnalytics:t}:{shareDiagnostics:t},n)}var Nr=`vellum.pro-takeover-avatar`,Pr=1800*1e3,U=null,W=!1,Fr=0;function Ir(){return Fr}function Lr(e){let t={...e,savedAt:Date.now()};U=t,Fr+=1;try{sessionStorage.setItem(Nr,JSON.stringify(t)),W=!1}catch{W=!0}}function Rr(){if(W)return Vr();let e;try{if(typeof sessionStorage>`u`)return Vr();e=sessionStorage.getItem(Nr)}catch{return Vr()}if(!e)return U=null,null;let t;try{t=JSON.parse(e)}catch{return G(),null}return!Ur(t)||Date.now()-t.savedAt>Pr?(G(),null):t}function G(){U=null,W=!1,Fr+=1;try{sessionStorage.removeItem(Nr)}catch{}}function zr(e){let{activeAssistantId:t,assistants:n,assistantsHydrated:r}=b.getState();if(!t||!r||n.length!==1||n[0]?.id!==t){G();return}let i=Br(e,t);if(!i||i.customImageUrl!=null||i.components==null){G();return}Lr({assistantId:t,components:i.components,traits:i.traits})}function Br(e,t){let n=e.getQueryCache().findAll({queryKey:nt(t)}),r,i=-1/0;for(let e of n){let t=e.state.data;t===void 0||e.state.dataUpdatedAt<i||(r=t,i=e.state.dataUpdatedAt)}return r}function Vr(){return U?Date.now()-U.savedAt>Pr?(U=null,null):U:null}function Hr(e){return Date.now()-e.savedAt<=Pr}function Ur(e){if(typeof e!=`object`||!e)return!1;let t=e;if(typeof t.assistantId!=`string`||typeof t.savedAt!=`number`||t.traits!==null&&!tt(t.traits))return!1;let n=t.components;if(typeof n!=`object`||!n)return!1;let r=n;if(!Gr(r.bodyShapes,Jr)||!Gr(r.eyeStyles,Yr)||!Gr(r.colors,Xr)||!Array.isArray(r.faceCenterOverrides)||!r.faceCenterOverrides.every(Zr))return!1;if(t.traits!==null){let e=t.traits;return Wr(r.bodyShapes,e.bodyShape)&&Wr(r.eyeStyles,e.eyeStyle)&&Wr(r.colors,e.color)}return!0}function Wr(e,t){return e.some(e=>e.id===t)}function Gr(e,t){return Array.isArray(e)&&e.length>0&&e.every(t)}function Kr(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.x==`number`&&typeof t.y==`number`}function qr(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.width==`number`&&typeof t.height==`number`}function Jr(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.id==`string`&&typeof t.svgPath==`string`&&qr(t.viewBox)&&Kr(t.faceCenter)}function Yr(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.id!=`string`||!qr(t.sourceViewBox)||!Kr(t.eyeCenter)||!Array.isArray(t.paths)?!1:t.paths.every(e=>{if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.svgPath==`string`&&typeof t.color==`string`})}function Xr(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.id==`string`&&typeof t.hex==`string`}function Zr(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.bodyShape==`string`&&typeof t.eyeStyle==`string`&&Kr(t.faceCenter)}var Qr=`vellum:`,$r=[`onboarding.`,`voice:`,`gw:`,`ff:client:`,`local:`,`integrations.`,`vellumDebug.`,`vellum_`],ei=new Set([`vellum_theme`,`vellum_share_analytics`,`vellum_share_diagnostics`,`vellum_biometric_enabled`,`vellum_llm_log_retention`,`vellum_timezone`,`vellum_media_embeds_enabled`,`vellum_media_embed_domains`,`onboarding.lastUserId`]);function ti(e){return e.startsWith(Qr)?!0:ei.has(e)?!1:$r.some(t=>e.startsWith(t))}function ni(){G(),et();try{sessionStorage.clear()}catch{}try{let e=[];for(let t=0;t<localStorage.length;t++){let n=localStorage.key(t);n&&ti(n)&&e.push(n)}e.forEach(e=>localStorage.removeItem(e))}catch{}}function ri(e){return e?.id??e?.email??e?.username??null}function K(e){return e?{kind:`platform`,id:ri(e),username:e.username??null,email:e.email??null,isStaff:e.is_staff??!1,firstName:e.first_name??``,lastName:e.last_name??``}:null}var ii=null,q=null,ai=!1,oi={kind:`local`,id:`gateway-local`,username:`local`,email:null,isStaff:!1,firstName:`Local`,lastName:`User`},J=e=>(Yt(e),{sessionStatus:`authenticated`,user:e,platformSession:`present`,platformSessionRestoredOffline:!1}),Y=()=>({sessionStatus:`authenticated`,user:oi}),X=()=>({sessionStatus:`unauthenticated`,user:null,platformSession:`absent`}),Z=e=>e===null||!e.ok&&!D(e);async function si(e){if(!Ue())return!1;let t=Xt();return t?(await Q(t.id),e({...J(t),platformSessionRestoredOffline:!0}),!0):!1}function ci(e){(!e||ii&&ii!==e)&&Wt(),ii=e}function li(){q?.postMessage(`auth-changed`)}function ui(e){let t=xr();return{...e.tos?{tos_accepted_version:t.tos}:{},...e.privacy?{privacy_policy_accepted_version:t.privacyPolicy,ai_data_sharing_accepted_version:t.aiDataSharing}:{},...e.shareValues&&e.shareValues.analytics!==null?{share_analytics:e.shareValues.analytics,share_analytics_accepted_version:_r}:{},...e.diagnostics?{share_diagnostics_accepted_version:t.shareDiagnostics,...e.shareValues&&e.shareValues.diagnostics!==null?{share_diagnostics:e.shareValues.diagnostics}:{}}:{}}}var di;async function Q(e){if(di!==void 0&&di!==e){let e=C.getState();e.setPendingAnalyticsOptIn(!1),e.setServerAnalyticsEffective(null),e.setServerDiagnosticsEffective(null)}if(di=e,e)try{let t=kr(await or()),n=C.getState(),r=n.shareAnalytics,i=n.shareDiagnostics;t.shareAnalytics===!0&&n.setPendingAnalyticsOptIn(!1),n.setServerAnalyticsEffective(t.analyticsEffective),n.setServerDiagnosticsEffective(t.diagnosticsEffective),t.hasServerRecord&&(t.shareAnalytics!==null||r!==!1)&&!(t.shareAnalytics===!1&&C.getState().pendingAnalyticsOptIn)&&n.setShareAnalytics(t.shareAnalytics),ur({shareDiagnostics:t.shareDiagnostics,diagnosticsEffective:t.diagnosticsEffective,hasServerRecord:t.hasServerRecord},n.setShareDiagnostics);let a=t.tos,o=t.privacy,s=t.analyticsCurrent,c=t.diagnosticsCurrent,l=t.hasServerRecord,u=t.shareDiagnostics!==null&&t.diagnosticsVersionCurrent;if(!t.hasServerRecord){let t=Tr(e);s=!0,c=!0,u=t.diagnosticsCurrent,t.tos&&t.privacy&&(a=!0,o=!0,l=!0,sr(ui({tos:!0,privacy:!0,diagnostics:u,shareValues:{analytics:r,diagnostics:i}})).catch(()=>{}))}else if(!a||!o||!c){let t=Tr(e),n=!a&&t.tos,r=!o&&t.privacy,i=!c&&t.diagnosticsCurrent;n&&(a=!0),r&&(o=!0),i&&(c=!0,u=!0),(n||r||i)&&sr(ui({tos:n,privacy:r,diagnostics:i})).catch(()=>{})}n.setTosAccepted(a),n.setPrivacyConsent(o),n.setAnalyticsConsentCurrent(s),n.setDiagnosticsConsentCurrent(c),n.setHasConsentRecord(l),Er(e,a,o),u&&Dr(e),ci(e),n.setConsentHydrated(!0);return}catch{}let t=Tr(e),n=C.getState();e?pr():(n.setPendingAnalyticsOptIn(!1),n.setServerAnalyticsEffective(null),n.setServerDiagnosticsEffective(null)),n.setTosAccepted(t.tos),n.setPrivacyConsent(t.privacy),n.setAnalyticsConsentCurrent(!0),n.setDiagnosticsConsentCurrent(!0),n.setHasConsentRecord(t.tos&&t.privacy),ci(e),n.setConsentHydrated(!0)}async function fi(e,t){try{let n=await k.getState().fetchOrganizations(e,t);if(!n.ok&&n.kind===`rejected`)return!0;let r=await Fe();if(D(r))return(e?.()??!0)&&k.getState().clearOrganization(),!0;(e?.()??!0)&&r.ok&&await oe(r.data,k.getState().currentOrganizationId??void 0,e)}catch{}return!1}var pi=0,mi=Promise.resolve();function hi(e,t={}){let n=++pi,r=()=>n!==pi;mi=S().then(async n=>{if(!r())if(n.ok&&n.data.user){let i=K(n.data.user),a=!1;if(h()){let e=!1,t=()=>!e&&!r(),n;try{await Promise.race([(async()=>{a=await fi(t,()=>!r())})(),new Promise((t,r)=>{n=setTimeout(()=>{e=!0,r(Error(`sync timeout`))},3e3)})])}catch{}finally{clearTimeout(n)}}if(r())return;if(a){M(),e({...T($.getState().sessionStatus)?Y():{},platformSession:`absent`,platformSessionRestoredOffline:!1});return}let o=t.setUserOnSuccess?{user:i}:{};t.setUserOnSuccess&&Yt(i),e({platformSession:`present`,platformSessionRestoredOffline:!1,...o}),cn()}else t.clearOnFailure&&e({platformSession:`absent`})}).catch(()=>{r()||t.clearOnFailure&&e({platformSession:`absent`})}).finally(()=>{r()||e(e=>e.platformSession===`unknown`?{platformSession:`absent`}:{})})}async function gi(){let e=mi;for(await e;mi!==e;)e=mi,await e}function _i(e,t){!h()||m()||ge().length>0?hi(e,t):e({platformSession:`absent`})}async function vi(e,t){await j(t),e(Y()),await O.checkAssistant()}async function yi(){try{if(await Re())return!0}catch{}return ue()!==null}var $=f(d()((e,t)=>({sessionStatus:`initializing`,user:null,platformSession:`unknown`,platformSessionRestoredOffline:!1,initSession:async()=>{if(v()){await yi()?e({...Y(),platformSession:`absent`}):e(X());return}if(m()){try{await ce(),e(Y())}catch{e({sessionStatus:`unauthenticated`,user:null})}_i(e);return}if(h()&&!m()){if(ge().length>0){let t=null;try{if(t=await S(),t.ok&&t.data.user){let n=K(t.data.user);if(!await fi()){await Q(n?.id??null),e(J(n));return}}}catch{}if(Z(t)){if(await si(e))return}else M();e(X());return}e(Y()),ai?e({platformSession:`absent`}):hi(e,{setUserOnSuccess:!0}),ai=!1;return}let t=null;try{if(t=await S(),t.ok&&t.data.user){let n=K(t.data.user);await Q(n?.id??null),e(J(n));return}}catch(e){console.error(`auth.initSession failed`,e)}if(!(Z(t)&&await si(e))){if(Be()&&Ge())try{let t=await Ye();if(t){He(t),await qe();let n=await S();if(n.ok&&n.data.user){let t=K(n.data.user);await Q(t?.id??null),e(J(t));return}}}catch(e){console.warn(`auth.initSession biometric recovery failed`,e)}await Q(null),Z(t)||M(),e(X())}},connectLocalAssistant:async n=>{await we(he().find(e=>e.assistantId===n)),await vi(e,n),At(t().platformSession,t().platformSessionRestoredOffline)&&cn(n),_i(e)},connectPairedAssistant:async t=>{let n=xe(t);if(!n||!Ce(n))throw Error(`Not a paired assistant`);await ee(n),await vi(e,t),_i(e)},connectPlatformAssistant:async t=>{let n=await S();if(!n.ok||!n.data.user)throw Error(`Platform authentication required`);let r=K(n.data.user),i=await k.getState().fetchOrganizations();if(!i.ok&&i.kind===`rejected`)throw Error(`Platform authentication required`);await j(t),await Q(r?.id??null),e(J(r))},refreshSession:async()=>{if(v())return await yi()?(e({...Y(),platformSession:`absent`}),!0):(e(X()),!1);if(p()){try{let t=g();t&&Ce(t)?await ee(t):await ne(le()),e({sessionStatus:`authenticated`})}catch{return e(X()),!1}return _i(e,{clearOnFailure:!0}),!0}let n=null;try{if(n=await S(),n.ok&&n.data.user){let t=K(n.data.user);if(!(h()&&await fi()))return await Q(t?.id??null),e(J(t)),!0}}catch(e){console.warn(`auth.refreshSession failed`,e)}if(Z(n))return T(t().sessionStatus);if(h()&&(m()||ge().length===0)){let n=T(t().sessionStatus);return n&&(M(),e({...Y(),platformSession:`absent`})),n}return M(),await Q(null),e(X()),!1},logout:async()=>{if(p()){O.resetForLogout(),_(null),await j(null),ye(),Wt(),ni(),e(X()),li();return}ai=!0,await Ze(),await $n();try{await Je()}finally{y()&&await window.vellum?.auth?.signOut?.(),h()&&!y()&&await te(),Ke(),Wt(),ni(),O.resetForLogout(),await j(null),e(X()),li()}}}))),bi=()=>T($.use.sessionStatus()),xi=()=>!Ot($.use.sessionStatus()),Si=()=>E($.use.platformSession()),Ci=()=>kt($.use.platformSession()),wi=()=>At($.use.platformSession(),$.use.platformSessionRestoredOffline());function Ti(){let{refreshSession:e}=$.getState(),t=[],n=()=>e().catch(e=>console.warn(`auth.refreshSession failed`,e)),r=Le(`app.resume`,()=>{Xe()||n()});return t.push(r),typeof BroadcastChannel<`u`&&(q=new BroadcastChannel(`auth`),q.onmessage=()=>{ni(),window.location.reload()},t.push(()=>{q?.close(),q=null})),()=>t.forEach(e=>e())}export{A as $,Bn as A,Ln as B,or as C,Zn as D,tr as E,Pn as F,Un as G,Rn as H,On as I,sn as J,I as K,F as L,Fn as M,Mn as N,$n as O,Nn as P,qt as Q,Dn as R,cr as S,ar as T,zn as U,Vn as V,jn as W,Kt as X,en as Y,j as Z,kr as _,w as _t,bi as a,T as at,ur as b,gi as c,D as ct,Hr as d,ft as dt,Gt as et,Rr as f,pt as ft,Or as g,at as gt,hr as h,ot as ht,Si as i,E as it,Hn as j,Tn as k,zr as l,Dt as lt,gr as m,ut as mt,$ as n,Ut as nt,Ci as o,At as ot,Ir as p,lt as pt,cn as q,wi as r,O as rt,xi as s,Ot as st,Ti as t,k as tt,G as u,wt as ut,jr as v,rr as w,nr as x,Mr as y,In as z};
@@ -1 +1 @@
1
- import{t as e}from"./capture-error-Cw5vs0Ef.js";import{_ as t}from"./local-mode-BfEgOekp.js";import{Ct as n,N as r,Tt as i,wt as a}from"./sdk.gen-DKYWIHI7.js";import{a as o,r as s}from"./api-JA_IDAQk.js";import{a as c,i as l,t as u}from"./use-assistant-avatar-Dk975wdP.js";import{c as d}from"./machine-sizes-B2_svsFw.js";import{a as f,n as p,r as m}from"./provisioning-targets-BQdyCh_j.js";async function h(t,n,r){try{await l(t)||await c(t,n),r.invalidateQueries({queryKey:u(t)})}catch(t){e(t,{context:`onboarding_avatar_sync`})}}var g=3e3,_=3e5,v=9e4;async function y(e){let{assistantId:c,postCheckoutReturn:l,managedHatch:u,hatchStartMs:h,isCancelled:_,onResizeWait:y,registerTimer:b}=e,x=e=>new Promise(t=>{if(_()){t();return}let n=setTimeout(()=>{b?.(null),t()},e);b?.(n)});if(t()&&!u)return`ready`;let S=!1,C=()=>{S||n({throwOnError:!1}).then(e=>{e.data!=null&&!p(e.data)&&(S=!0)}).catch(()=>{})},w=async()=>{for(;!_();){try{if((await o(c)).ok)return`ready`}catch{}if(Date.now()-h>=3e5)return`health_timeout`;await x(g)}return`ready`},T=Date.now()+v,E=null;for(;!_();){C();let e=`unknown`;try{let t=await i({throwOnError:!1});if(_())return`ready`;t.data&&(e=t.data.plan_id===`pro`?`pro`:`non_pro`)}catch{}try{let e=await a({throwOnError:!1});if(_())return`ready`;let t=e.data;t&&(E={machineSize:d(t.max_machine_tier),storageGib:t.selected_storage_gib??null})}catch{}let t=E!=null&&(E.machineSize!=null||E.storageGib!=null);if(e===`non_pro`&&!l)return`ready`;if(e===`pro`&&t)break;if(Date.now()>=T)return w();await x(g)}if(_())return`ready`;for(y?.();!_();){C();let e=null;try{let t=await s(c);if(_())return`ready`;t.ok&&(e={machineSize:t.data.machine_size??null,storageGib:t.data.provisioned_storage_gib??null})}catch{}let t=!0;try{let e=await r({path:{id:c},throwOnError:!1});if(_())return`ready`;e.data&&(t=m(e.data))}catch{t=!0}if(f(E,e)&&!t||Date.now()>=T)break;await x(g)}return _()?`ready`:w()}function b(e){let t=e=>e[Math.floor(Math.random()*e.length)];return{bodyShape:t(e.bodyShapes).id,eyeStyle:t(e.eyeStyles).id,color:t(e.colors).id}}export{h as a,y as i,_ as n,g as r,b as t};
1
+ import{t as e}from"./capture-error-Cw5vs0Ef.js";import{_ as t}from"./local-mode-BfEgOekp.js";import{Ct as n,N as r,Tt as i,wt as a}from"./sdk.gen-DKYWIHI7.js";import{a as o,r as s}from"./api-JA_IDAQk.js";import{a as c,i as l,t as u}from"./use-assistant-avatar-Dd-EU1FC.js";import{c as d}from"./machine-sizes-B2_svsFw.js";import{a as f,n as p,r as m}from"./provisioning-targets-BQdyCh_j.js";async function h(t,n,r){try{await l(t)||await c(t,n),r.invalidateQueries({queryKey:u(t)})}catch(t){e(t,{context:`onboarding_avatar_sync`})}}var g=3e3,_=3e5,v=9e4;async function y(e){let{assistantId:c,postCheckoutReturn:l,managedHatch:u,hatchStartMs:h,isCancelled:_,onResizeWait:y,registerTimer:b}=e,x=e=>new Promise(t=>{if(_()){t();return}let n=setTimeout(()=>{b?.(null),t()},e);b?.(n)});if(t()&&!u)return`ready`;let S=!1,C=()=>{S||n({throwOnError:!1}).then(e=>{e.data!=null&&!p(e.data)&&(S=!0)}).catch(()=>{})},w=async()=>{for(;!_();){try{if((await o(c)).ok)return`ready`}catch{}if(Date.now()-h>=3e5)return`health_timeout`;await x(g)}return`ready`},T=Date.now()+v,E=null;for(;!_();){C();let e=`unknown`;try{let t=await i({throwOnError:!1});if(_())return`ready`;t.data&&(e=t.data.plan_id===`pro`?`pro`:`non_pro`)}catch{}try{let e=await a({throwOnError:!1});if(_())return`ready`;let t=e.data;t&&(E={machineSize:d(t.max_machine_tier),storageGib:t.selected_storage_gib??null})}catch{}let t=E!=null&&(E.machineSize!=null||E.storageGib!=null);if(e===`non_pro`&&!l)return`ready`;if(e===`pro`&&t)break;if(Date.now()>=T)return w();await x(g)}if(_())return`ready`;for(y?.();!_();){C();let e=null;try{let t=await s(c);if(_())return`ready`;t.ok&&(e={machineSize:t.data.machine_size??null,storageGib:t.data.provisioned_storage_gib??null})}catch{}let t=!0;try{let e=await r({path:{id:c},throwOnError:!1});if(_())return`ready`;e.data&&(t=m(e.data))}catch{t=!0}if(f(E,e)&&!t||Date.now()>=T)break;await x(g)}return _()?`ready`:w()}function b(e){let t=e=>e[Math.floor(Math.random()*e.length)];return{bodyShape:t(e.bodyShapes).id,eyeStyle:t(e.eyeStyles).id,color:t(e.colors).id}}export{h as a,y as i,_ as n,g as r,b as t};
@@ -1 +1 @@
1
- import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-Cw5vs0Ef.js";import{t as n}from"./react-BFJW0bSv.js";import{t as r}from"./jsx-runtime-D3ZM-ToX.js";import{t as i}from"./typography-BeUa5Fd-.js";import"./src-BMRW2yQf.js";import{r as a,t as o}from"./background-task-actions-NhVu8iWU.js";import{a as s,i as c,n as l,r as u}from"./background-task-store-B1MUU_bh.js";import{t as d}from"./detail-shell-rL601Rqo.js";import{t as f}from"./status-badge-pill---iRVZ8q.js";import{CodeBlock as p,SectionLabel as m}from"./tool-detail-panel-E_gP0j1r.js";import{t as h}from"./detail-panel-stop-button-DV6U5A7y.js";var g=e(n(),1),_=r();function v({status:e}){return(0,_.jsx)(f,{color:l(e),label:u(e)})}function y({entry:e,onClose:n}){let r=s(e.status),l=!r,u=l&&e.output!==void 0&&e.output!==``,f=l&&e.exitCode!=null,[y,b]=(0,g.useState)(!1),x=(0,g.useCallback)(()=>{b(!0),o(e.id).catch(e=>{b(!1),t(e,{context:`BackgroundTaskDetailPanel.stop`})})},[e.id]);return(0,_.jsxs)(d,{Glyph:a(e.toolName),title:c(e.status),headerTrailing:(0,_.jsx)(v,{status:e.status}),headerActions:r?(0,_.jsx)(h,{onStop:x,ariaLabel:`Stop command`,disabled:y}):void 0,closeVariant:`outlined`,closeLabel:`Close task detail`,onClose:n,children:[(0,_.jsxs)(`div`,{children:[(0,_.jsx)(m,{children:`Command`}),(0,_.jsx)(p,{text:e.command})]}),u&&(0,_.jsxs)(`div`,{className:`mt-5`,children:[(0,_.jsx)(m,{children:`Output`}),(0,_.jsx)(p,{text:e.output})]}),f&&(0,_.jsxs)(i,{variant:`body-small-default`,as:`p`,className:`mt-2 text-[var(--content-tertiary)]`,children:[`Exit code: `,e.exitCode]})]})}export{y as BackgroundTaskDetailPanel};
1
+ import{o as e}from"./chunk-jRWAZmH_.js";import{t}from"./capture-error-Cw5vs0Ef.js";import{t as n}from"./react-BFJW0bSv.js";import{t as r}from"./jsx-runtime-D3ZM-ToX.js";import{t as i}from"./typography-BeUa5Fd-.js";import"./src-hNk11eS3.js";import{r as a,t as o}from"./background-task-actions-NhVu8iWU.js";import{a as s,i as c,n as l,r as u}from"./background-task-store-B1MUU_bh.js";import{t as d}from"./detail-shell-g6Pw4jiP.js";import{t as f}from"./status-badge-pill---iRVZ8q.js";import{CodeBlock as p,SectionLabel as m}from"./tool-detail-panel-CmbBw4_n.js";import{t as h}from"./detail-panel-stop-button-Cvnn4hYA.js";var g=e(n(),1),_=r();function v({status:e}){return(0,_.jsx)(f,{color:l(e),label:u(e)})}function y({entry:e,onClose:n}){let r=s(e.status),l=!r,u=l&&e.output!==void 0&&e.output!==``,f=l&&e.exitCode!=null,[y,b]=(0,g.useState)(!1),x=(0,g.useCallback)(()=>{b(!0),o(e.id).catch(e=>{b(!1),t(e,{context:`BackgroundTaskDetailPanel.stop`})})},[e.id]);return(0,_.jsxs)(d,{Glyph:a(e.toolName),title:c(e.status),headerTrailing:(0,_.jsx)(v,{status:e.status}),headerActions:r?(0,_.jsx)(h,{onStop:x,ariaLabel:`Stop command`,disabled:y}):void 0,closeVariant:`outlined`,closeLabel:`Close task detail`,onClose:n,children:[(0,_.jsxs)(`div`,{children:[(0,_.jsx)(m,{children:`Command`}),(0,_.jsx)(p,{text:e.command})]}),u&&(0,_.jsxs)(`div`,{className:`mt-5`,children:[(0,_.jsx)(m,{children:`Output`}),(0,_.jsx)(p,{text:e.output})]}),f&&(0,_.jsxs)(i,{variant:`body-small-default`,as:`p`,className:`mt-2 text-[var(--content-tertiary)]`,children:[`Exit code: `,e.exitCode]})]})}export{y as BackgroundTaskDetailPanel};